From xen-devel-bounces@lists.xenproject.org Thu Apr 01 01:07:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 01:07:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104091.198680 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRlnE-0006bo-MZ; Thu, 01 Apr 2021 01:06:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104091.198680; Thu, 01 Apr 2021 01:06: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 1lRlnE-0006bh-JU; Thu, 01 Apr 2021 01:06:40 +0000
Received: by outflank-mailman (input) for mailman id 104091;
 Thu, 01 Apr 2021 01:06:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=0cfn=I6=zededa.com=roman@srs-us1.protection.inumbo.net>)
 id 1lRlnD-0006bc-ON
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 01:06:39 +0000
Received: from mail-qt1-x82d.google.com (unknown [2607:f8b0:4864:20::82d])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 57233a77-0717-43da-8c2d-705c60856b16;
 Thu, 01 Apr 2021 01:06:37 +0000 (UTC)
Received: by mail-qt1-x82d.google.com with SMTP id g24so393038qts.6
 for <xen-devel@lists.xenproject.org>; Wed, 31 Mar 2021 18:06: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: 57233a77-0717-43da-8c2d-705c60856b16
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=zededa.com; s=google;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=I4XnTBqWaNHfJM0uifctrfC1GtW1564zJxX4MuGrMVI=;
        b=j4JCaWgTgHeE9hNCyf3zLgLl3NZvmOoLiw4Ep/EC6ix7jX0/TAzMjB+byX+ZGjleg1
         tlNWElFHsnba0WSpmSvZVrmBUBLfaeYKGv3Mc8ilJN6xtyu/5Jt9XvWQbvt0PXJpvx95
         jYOogg0fpdsx6ZmBvcrEa70SERHP4L6GMG4AQZm3ejWOFjLPGEy9gTUj76prrx6RccTT
         a14OEn6o3qJwbyRWZT5BJw5TUimbm3lXCtkhpPKCKJeEGZCB9w/T8Qp+ybP9yht/6RBD
         B4DlodB28DAGjJVdFlWDy4P57Yb3RaWiE+gTVk08iOh92euQ/XYTWh8wKOGJHUsDQkId
         rBlQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=I4XnTBqWaNHfJM0uifctrfC1GtW1564zJxX4MuGrMVI=;
        b=FQJKh2Jo0ko1zJ1u6uFXxvNEzUni9WXk/R8JfpQOrzFcNu715evzZZGE6ZnPRHuuUB
         uBbQf/kHnmggYuhCc7ZETLYxrQrb54XtKYWHsDD0UW4sohuzNxAKC94bu7zjC7oFpk1f
         VFbdslzAot2qQmdnBflRNYPD8HRAp+WzRQrOKzOaHj2jbMzUEstPaaPBDfjDv78zhYCX
         xYA9yoSBMME2yhCcHkCPIesDEjlJDM4bo3BdVAk8OydmhfaLJ59Z4KiykwPYMljYhhlM
         LAnp0iAgl1K92eUUhaG6mBzhzOmZEhYhiBMO3+QfxaO6DaJqYkLnDtm9rZZ6YJ/4MwXN
         BJpA==
X-Gm-Message-State: AOAM532RuWtGjI4URlBunrU3fRDkwVG8NVMTQwT/M1vvGgoZdLo7/Trb
	eGCSHjVTlICmvhKbHCh+Sfp28hadt1WS4KrxWjJQhA==
X-Google-Smtp-Source: ABdhPJwGa4irE89lKL5j7+qT7fRWuH62QG8dMMrr/BtnompBjfBQ5fQ3cVmy8GlUz5hnj8n23BMFDOCaDyC0diXaLjY=
X-Received: by 2002:ac8:1093:: with SMTP id a19mr5064689qtj.365.1617239197376;
 Wed, 31 Mar 2021 18:06:37 -0700 (PDT)
MIME-Version: 1.0
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
In-Reply-To: <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
From: Roman Shaposhnik <roman@zededa.com>
Date: Wed, 31 Mar 2021 18:06:31 -0700
Message-ID: <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
Subject: Re: multiboot2 and module2 boot issues via GRUB2
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, grub-devel@gnu.org
Content-Type: multipart/alternative; boundary="000000000000e0809d05beded750"

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

Hi Andrew!

first of all -- thanks for pointing me in the right direction. So after
reading relevant sources: comments inline.

On Tue, Mar 30, 2021 at 12:08 PM Andrew Cooper <andrew.cooper3@citrix.com>
wrote:

> On 30/03/2021 19:28, Roman Shaposhnik wrote:
> > Hi!
> >
> > seems like I've run into an issue with multiboot2 and module2
> > commands that I can't quite explain. Since it may be something
> > super simply and silly -- I wanted to reach out here before I do
> > a GRUB/Xen/LK source deepdive.
> >
> > So here's the deal: whenever I boot straight up Linux kernel
> > I can do the following sequence of commands:
> >    linux /kernel
> >    initrd foo.cpio.gz bar.cpio.gz
> > and have linux kernel effectively stack content of bar.cpio.gz
> > on top of foo.cpio.gz and present a unified initramfs that way.
> >
> > I'm trying to replicate it with Xen, but:
> >      multiboot2 /boot/xen.gz
> >      module2 /kernel
> >      module2 foo.cpio.gz
> >      module2 bar.cpio.gz
> > only seems to be picking up foo.cpio.gz
> >
> > Has anyone run into this issue before?
>
> I can explain why that happens.  Not sure if it counts as a feature, bug
> or mis-expectation, but CC'ing grub-devel for their input.
>
> The initrd command is presumably concatenating those two files together
> in memory, and presenting Linux a single initrd pointer.
>

It is indeed what seems to be happening.


> For the module2 example, you're putting 3 distinct files in memory, and
> giving Xen a list 3 modules.
>

And that is also correct -- nothing like that is possible with modules.
Kernel actually needs to be aware of them. So the question then
becomes...


> Xen is capable of taking various things via modules, such as an
> XSM/Flask policy, or microcode, so has logic to identify these if
> present and separate them from "other stuff".  However, there is a
> hardcoded expectation that the first module is the dom0 kernel, and the
> next unrecognised module, if present, is *the* initrd.

I expect that Xen isn't handing bar.cpio.gz on to dom0, but I'm not sure
> whether passing two distinct initrd-like-things to Linux is even possible.
>
> What you presumably want is some `initrd` side effect in Grub so you can
> write `module2 foo.cpio.gz bar.cpio.gz` and have it concatenate things
> together in memory and present one MB2 module, but I suspect that exact
> syntax might be ambiguous with command line handling.  I have no idea
> whether such a command currently exists.
>

...I guess there's no mechanism out-of-the box to achieve what I want?

And the obvious next question: is my EVE usecase esoteric enough that
I should just go ahead and do a custom GRUB patch or is there a more
general interest in this?

Thanks,
Roman.

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

<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr">Hi Andrew!<div><br></div=
><div>first of all -- thanks for pointing me in the right direction. So aft=
er reading relevant sources: comments inline.</div></div><br><div class=3D"=
gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Mar 30, 2021 at =
12:08 PM Andrew Cooper &lt;<a href=3D"mailto:andrew.cooper3@citrix.com">and=
rew.cooper3@citrix.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_q=
uote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,2=
04);padding-left:1ex">On 30/03/2021 19:28, Roman Shaposhnik wrote:<br>
&gt; Hi!<br>
&gt;<br>
&gt; seems like I&#39;ve run into an issue with multiboot2=C2=A0and module2=
<br>
&gt; commands that I can&#39;t quite explain. Since it may be something<br>
&gt; super simply and silly -- I wanted to reach out here before I do<br>
&gt; a GRUB/Xen/LK source deepdive.<br>
&gt;<br>
&gt; So here&#39;s the deal: whenever I boot straight up Linux kernel<br>
&gt; I can do the following sequence of commands:<br>
&gt; =C2=A0 =C2=A0linux /kernel<br>
&gt; =C2=A0 =C2=A0initrd foo.cpio.gz bar.cpio.gz<br>
&gt; and have linux kernel effectively stack content of bar.cpio.gz<br>
&gt; on top of foo.cpio.gz and present a unified initramfs that way.<br>
&gt;<br>
&gt; I&#39;m trying to replicate it with Xen, but:<br>
&gt; =C2=A0 =C2=A0 =C2=A0multiboot2 /boot/xen.gz<br>
&gt; =C2=A0 =C2=A0 =C2=A0module2 /kernel<br>
&gt; =C2=A0 =C2=A0 =C2=A0module2 foo.cpio.gz<br>
&gt; =C2=A0 =C2=A0 =C2=A0module2 bar.cpio.gz<br>
&gt; only seems to be picking up foo.cpio.gz<br>
&gt;<br>
&gt; Has anyone run into this=C2=A0issue before?<br>
<br>
I can explain why that happens.=C2=A0 Not sure if it counts as a feature, b=
ug<br>
or mis-expectation, but CC&#39;ing grub-devel for their input.<br>
<br>
The initrd command is presumably concatenating those two files together<br>
in memory, and presenting Linux a single initrd pointer.<br></blockquote><d=
iv><br></div><div>It is indeed what seems to be happening.</div><div>=C2=A0=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;b=
order-left:1px solid rgb(204,204,204);padding-left:1ex">
For the module2 example, you&#39;re putting 3 distinct files in memory, and=
<br>
giving Xen a list 3 modules.<br></blockquote><div><br></div><div>And that i=
s also correct -- nothing like that is possible with modules.</div><div>Ker=
nel actually needs to be aware of them. So the question then</div><div>beco=
mes...</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"mar=
gin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1=
ex">
Xen is capable of taking various things via modules, such as an<br>
XSM/Flask policy, or microcode, so has logic to identify these if<br>
present and separate them from &quot;other stuff&quot;.=C2=A0 However, ther=
e is a<br>
hardcoded expectation that the first module is the dom0 kernel, and the<br>
next unrecognised module, if present, is *the* initrd.=C2=A0</blockquote><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">I expect that Xen isn&#39;t=
 handing bar.cpio.gz on to dom0, but I&#39;m not sure<br>
whether passing two distinct initrd-like-things to Linux is even possible.<=
br>
<br>
What you presumably want is some `initrd` side effect in Grub so you can<br=
>
write `module2 foo.cpio.gz bar.cpio.gz` and have it concatenate things<br>
together in memory and present one MB2 module, but I suspect that exact<br>
syntax might be ambiguous with command line handling.=C2=A0 I have no idea<=
br>
whether such a command currently exists.<br></blockquote><div><br></div><di=
v><div>...I guess there&#39;s no mechanism out-of-the box to achieve=C2=A0w=
hat I want?</div><div></div></div><div>=C2=A0</div><div>And the obvious nex=
t question: is my EVE usecase esoteric enough that</div><div>I should just =
go ahead and do a custom=C2=A0GRUB patch or is there a more</div><div>gener=
al interest in this?</div><div><br></div><div>Thanks,<br>Roman.</div></div>=
</div></div>

--000000000000e0809d05beded750--


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 04:00:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 04:00:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104099.198705 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRoUo-0003r6-A7; Thu, 01 Apr 2021 03:59:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104099.198705; Thu, 01 Apr 2021 03:59: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 1lRoUo-0003qy-40; Thu, 01 Apr 2021 03:59:50 +0000
Received: by outflank-mailman (input) for mailman id 104099;
 Thu, 01 Apr 2021 03:59: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 1lRoUm-0003qq-6v; Thu, 01 Apr 2021 03:59: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 1lRoUl-0004BX-Uf; Thu, 01 Apr 2021 03:59: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 1lRoUl-0006lk-B8; Thu, 01 Apr 2021 03:59:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lRoUl-0001Se-Ad; Thu, 01 Apr 2021 03:59: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=B987X/bvncCJUt2TB/PBhd/FvG5R7pr/ew2B3UB/fQs=; b=2QMr1IKrMuyCMSLmwnRKGCsOZH
	QMUiReBADUvpEr4DdktV9ku08635lu3u1pDeW7MUO2i0UCigWUZukRrLhQpuUfZeSglYcm1sasJAf
	ZN2Emsn72fXLxAfSu76f+lPu7rsihSShlIu+q5AbT3WCWe1alWcOeh+E5pyFoiRp2QVw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160619-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160619: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=b307a3174ffc293d4af9a0f03d9f78ae63327157
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 03:59:47 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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
 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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                b307a3174ffc293d4af9a0f03d9f78ae63327157
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  223 days
Failing since        152659  2020-08-21 14:07:39 Z  222 days  420 attempts
Testing same since   160619  2021-03-31 13:54:40 Z    0 days    1 attempts

------------------------------------------------------------
469 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 138842 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 06:14:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 06:14:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104112.198732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRqaX-00087B-51; Thu, 01 Apr 2021 06:13:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104112.198732; Thu, 01 Apr 2021 06: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 1lRqaX-000874-1l; Thu, 01 Apr 2021 06:13:53 +0000
Received: by outflank-mailman (input) for mailman id 104112;
 Thu, 01 Apr 2021 06:13:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRqaV-00086z-KI
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 06:13:51 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 39cabee8-158e-4335-898e-90d3ae046903;
 Thu, 01 Apr 2021 06:13:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7B9F1AF2A;
 Thu,  1 Apr 2021 06:13: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: 39cabee8-158e-4335-898e-90d3ae046903
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617257629; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=LrC8NH6cwvyNTaMUZ7lEQO8HaDcFzcZL/32U3WaYC68=;
	b=DdWrNAzbSDiulrJgKuOuWMsjXkucx4Ir2CcCGVIXshS/bz8LsaTlCMA1QLpxff/+DlK5xy
	jS0u7s1hcf22sxQ8TPcZXo1F5k5hCnAS/l6acr0l8DgozPkCaPZFEb+8aUU072rStlaeF4
	bDf/snoaCKb3Qh15fhw5uGaff2UF+u0=
Subject: Re: [PATCH] fix for_each_cpu() again for NR_CPUS=1
To: Dario Faggioli <dfaggioli@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <4d993e67-2bdf-9ac3-f78e-daf279642de1@suse.com>
 <800b163affc6334837006a6ef6f8e21415d874e9.camel@suse.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0ab32afb-d8d4-de24-e10c-0e9c5e170e45@suse.com>
Date: Thu, 1 Apr 2021 08:13:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <800b163affc6334837006a6ef6f8e21415d874e9.camel@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 31.03.2021 18:55, Dario Faggioli wrote:
> On Wed, 2021-03-31 at 16:52 +0200, Jan Beulich wrote:
>> Unfortunately aa50f45332f1 ("xen: fix for_each_cpu when NR_CPUS=1")
>> has
>> caused quite a bit of fallout with gcc10, e.g. (there are at least
>> two
>> more similar ones, and I didn't bother trying to find them all):
>>
> Oh, wow... Sorry about that. I was sure I had checked (and with gcc10),
> but clearly I'm wrong.

Perhaps you did try a debug build, while I was seeing the issues in
a non-debug one?

>> Re-instate a special form of for_each_cpu(), experimentally "proven"
>> to
>> avoid the diagnostics.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
> Reviewed-by: Dario Faggioli <dfaggioli@suse.com>

Thanks.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 07:31:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 07:31:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104116.198743 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRrnL-0006Yn-RM; Thu, 01 Apr 2021 07:31:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104116.198743; Thu, 01 Apr 2021 07: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 1lRrnL-0006Yg-OM; Thu, 01 Apr 2021 07:31:11 +0000
Received: by outflank-mailman (input) for mailman id 104116;
 Thu, 01 Apr 2021 07:31:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRrnK-0006Yb-2N
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 07:31:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 95d809e2-e143-4727-86d0-885f1def281a;
 Thu, 01 Apr 2021 07:31:08 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id EE0E9B119;
 Thu,  1 Apr 2021 07:31: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: 95d809e2-e143-4727-86d0-885f1def281a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617262268; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=VlvKU9J+T+KwoivZaZ0SLwGW3IXl34XrRCMhiAm7cto=;
	b=dVFKMh8eIHxMCyRVhQpwn1AiYwKxzIgHq2lzRqT1eGMFV4b+BIOsFmAe4a0w5oabvmxiTe
	elIc8fxTF17E3H9VNRD/gwM0MMtbwWiHV5riaVnFmfLBv2aRNNTRgKRiJpLbl/NFmtD8nt
	tcwYKlrvljpGxMNWvz9TJifoCHR96sE=
Subject: Re: multiboot2 and module2 boot issues via GRUB2
To: Roman Shaposhnik <roman@zededa.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, grub-devel@gnu.org,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
 <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
Date: Thu, 1 Apr 2021 09:31:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 03:06, Roman Shaposhnik wrote:
> And the obvious next question: is my EVE usecase esoteric enough that
> I should just go ahead and do a custom GRUB patch or is there a more
> general interest in this?

Not sure if it ought to be a grub patch - the issue could as well
be dealt with in Xen, by concatenating modules to form a monolithic
initrd.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 07:51:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 07:51:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104119.198756 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRs6q-0008Kk-Aa; Thu, 01 Apr 2021 07:51:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104119.198756; Thu, 01 Apr 2021 07:51:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRs6q-0008Kd-7U; Thu, 01 Apr 2021 07:51:20 +0000
Received: by outflank-mailman (input) for mailman id 104119;
 Thu, 01 Apr 2021 07:51:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRs6o-0008KY-S3
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 07:51:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4f27c75c-d8f4-4639-abcf-ca1f1e361d2b;
 Thu, 01 Apr 2021 07:51:18 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 21A85AF4F;
 Thu,  1 Apr 2021 07:51: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: 4f27c75c-d8f4-4639-abcf-ca1f1e361d2b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617263477; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mM301/30alX098xW5XnviSToFopYKP7Lp25WeUemPCc=;
	b=OeHmsI0nhC9iydjwRHN0rVFTlD1/Q2lL3t6yScXSWn1j0eSLxuHwXTIrXC2ZJK3QC9iIIf
	iP6DDl0xivWpCf98eD/3t4klDm7r+TMz9AAlGzzyVlOqG5UNlQg31AwMETcbXTgs33FIXX
	xf89n6KqaU9oGG0FzaluS3oGEgh7EQs=
Subject: Ping: [PATCH 5/5] x86: don't build unused entry code when !PV32
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <46d83c92-0b06-fc09-4832-7a7d7935d5c2@suse.com>
 <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
 <20201228153004.qip3v6er5rk22fnu@Air-de-Roger>
 <0341c1f1-dc50-552c-f246-56605ae7c83a@suse.com>
 <20210104155358.snzakj4kcs47tt22@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <f3322a34-7887-98d7-b32f-fe6325e4ff14@suse.com>
Date: Thu, 1 Apr 2021 09:51:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210104155358.snzakj4kcs47tt22@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 04.01.2021 16:53, Roger Pau Monné wrote:
> On Mon, Jan 04, 2021 at 02:56:12PM +0100, Jan Beulich wrote:
>> On 28.12.2020 16:30, Roger Pau Monné wrote:
>>> I would like to have Andrew's opinion on this one (as you and him tend
>>> to modify more asm code than myself). There are quite a lot of
>>> addition to the assembly code, and IMO it makes the code more complex
>>> which I think we should try to avoid, as assembly is already hard
>>> enough.
>>
>> Well, while I can see your point (and I indeed asked myself the same
>> question when making this change), this merely follows the route
>> started with the addition on CONFIG_PV conditionals. If we think that
>> prior step didn't set a good precedent, we ought to undo it.
>> Otherwise I see no good argument against doing the same kind of
>> transformation a 2nd time (and further ones, if need be down the
>> road).
> 
> I think we need to apply some common sense and reach consensus about
> where it's fine to make code conditional at build time as to not make
> the existing code much harder to read and reason about. This is mostly
> a subjective decision, so I understand your concern.
> 
> I still think I would like Andrew opinion on this one, as said you and
> him are the ones mostly doing assembly coding. I find it already hard
> to follow myself without the conditionals.

Seeing no feedback for about 3 months, I intend to commit this once
the tree is fully open again (if need be without any acks), unless
I hear otherwise by then.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 07:56:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 07:56:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104122.198768 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsBV-0008VI-UP; Thu, 01 Apr 2021 07:56:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104122.198768; Thu, 01 Apr 2021 07:56: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 1lRsBV-0008VB-Qa; Thu, 01 Apr 2021 07:56:09 +0000
Received: by outflank-mailman (input) for mailman id 104122;
 Thu, 01 Apr 2021 07:56:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsBU-0008V6-JH
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 07:56:08 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d9a6458f-1a25-436d-bbf6-fc1c94ea109f;
 Thu, 01 Apr 2021 07:56:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0758EB21F;
 Thu,  1 Apr 2021 07:56: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: d9a6458f-1a25-436d-bbf6-fc1c94ea109f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617263767; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=crDx6RJ3pOXnjuMYs8hePdC2YuFryi75VhhC9or0s44=;
	b=r4SmKVGNDkmjpjPnOau9hDW5sVVc6W6lthXxMZuNi+ylG+hMgvdiarN3uM4jfDcKvH2ITJ
	V91ln7HPpKHz753bshK81wr+ZZO5Gtmo8vvCA43Qpe8HUwO5A+xtTGg02GU5s8/rI8x36X
	2QhY+Um393XpTxT1bycZaRI4VhkIhUE=
Subject: Ping: [PATCH 4/5] x86/PV: restrict TLB flushing after
 mod_l[234]_entry()
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <10a01f61-197b-7df4-192d-917fe135df70@suse.com>
 <eac90675-bcf3-3818-1f5f-f9825349e22c@suse.com>
 <20210111130020.ogpsylc7sh3wzb7i@Air-de-Roger>
 <2bee9e95-17f7-4089-4adf-29db50c5c4fd@suse.com>
Message-ID: <efc19a1c-5e63-e48e-89fc-5d353374e4d9@suse.com>
Date: Thu, 1 Apr 2021 09:56:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <2bee9e95-17f7-4089-4adf-29db50c5c4fd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 11.01.2021 14:22, Jan Beulich wrote:
> On 11.01.2021 14:00, Roger Pau Monné wrote:
>> On Tue, Nov 03, 2020 at 11:57:33AM +0100, Jan Beulich wrote:
>>> Just like we avoid to invoke remote root pt flushes when all uses of an
>>> L4 table can be accounted for locally, the same can be done for all of
>>> L[234] for the linear pt flush when the table is a "free floating" one,
>>> i.e. it is pinned but not hooked up anywhere. While this situation
>>> doesn't occur very often, it can be observed.
>>>
>>> Since this breaks one of the implications of the XSA-286 fix, drop the
>>> flush_root_pt_local variable again and set ->root_pgt_changed directly,
>>> just like it was before that change.
>>>
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
>> LGTM, so:
>>
>> Acked-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Thanks.
> 
>> It would be good however if Andrew can give is opinion also, since he
>> was the one to introduce such logic, and it's not trivial.
> 
> I can certainly wait some, also to hopefully get a comment on
> 
>>> ---
>>> While adjusting the big comment that was added for XSA-286 I wondered
>>> why it talks about the "construction of 32bit PV guests". How are 64-bit
>>> PV guests different in this regard?
> 
> ... this, but his email troubles make it hard to judge for how
> long to wait.

About like for the other one just pinged, I intend to commit this
one together with the other two still pending ones in this series
once the tree is fully open again, unless I hear otherwise by then.
All three have been acked by Roger.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:00:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:00:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104129.198783 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsFm-0001UN-Pq; Thu, 01 Apr 2021 08:00:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104129.198783; Thu, 01 Apr 2021 08: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 1lRsFm-0001UG-MN; Thu, 01 Apr 2021 08:00:34 +0000
Received: by outflank-mailman (input) for mailman id 104129;
 Thu, 01 Apr 2021 08:00:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsFl-0001UB-JI
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:00:33 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id df1147cc-8342-4dfe-b6d1-d69926d99a1d;
 Thu, 01 Apr 2021 08:00:31 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DD4E9B1F1;
 Thu,  1 Apr 2021 08:00: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: df1147cc-8342-4dfe-b6d1-d69926d99a1d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617264031; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=2sZt9qo8NcRMWOTASDKrGZPc39F8TkStruAYUradwBg=;
	b=BNI9vvGASYaxegAmu077BgRMLih4wIpzx5xfZ6xgZMVG7uo1OBWbtayuuxFSFbMn3YbVcr
	JmYaYTKewcCCx7v43l9n+CWJkPQKaHVPwYlZ3kDm70JCVxgS2K/ncgILy+/31+Pv/0ZijS
	WppXTO+lpU3Ems6Hg3beCRlhcMEm9ys=
Subject: =?UTF-8?Q?Ping=c2=b2=3a_=5bPATCH_v2=5d_x86/PV=3a_make_post-migratio?=
 =?UTF-8?Q?n_page_state_consistent?=
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <07ebce3c-4dcf-bc9e-6d82-7f3def486ab8@suse.com>
 <b733914b-1bfd-d95d-470e-af3ca7a4f69f@suse.com>
 <e2ac69e3-64ef-5362-427b-7e52735ea834@citrix.com>
 <8df7e434-6cea-54ca-4f24-09cbd692ad3b@suse.com>
Message-ID: <e0bd5b60-2c0b-77cf-8d3b-0c5ac9ba09c2@suse.com>
Date: Thu, 1 Apr 2021 10:00:30 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <8df7e434-6cea-54ca-4f24-09cbd692ad3b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.11.2020 13:50, Jan Beulich wrote:
> On 23.11.2020 13:26, Andrew Cooper wrote:
>> On 20/11/2020 12:48, Jan Beulich wrote:
>>> On 04.11.2020 08:56, Jan Beulich wrote:
>>>> When a page table page gets de-validated, its type reference count drops
>>>> to zero (and PGT_validated gets cleared), but its type remains intact.
>>>> XEN_DOMCTL_getpageframeinfo3, therefore, so far reported prior usage for
>>>> such pages. An intermediate write to such a page via e.g.
>>>> MMU_NORMAL_PT_UPDATE, however, would transition the page's type to
>>>> PGT_writable_page, thus altering what XEN_DOMCTL_getpageframeinfo3 would
>>>> return. In libxc the decision which pages to normalize / localize
>>>> depends solely on the type returned from the domctl. As a result without
>>>> further precautions the guest won't be able to tell whether such a page
>>>> has had its (apparent) PTE entries transitioned to the new MFNs.
>>>>
>>>> Add a check of PGT_validated, thus consistently avoiding normalization /
>>>> localization in the tool stack.
>>>>
>>>> Also use XEN_DOMCTL_PFINFO_NOTAB in the variable's initializer instead
>>>> open coding it.
>>>>
>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>> ---
>>>> v2: Don't change type's type.
>>> Ping?
>>
>> Ping what?  There is still nothing addressing my concerns from v1.
> 
> I did reply to your concerns on Sep 11th, and then replied to this
> reply of mine another time on Sep 28th. Neither of these got any
> response from you, hence I had to conclude - after two further
> pings on v1 - that they were satisfactory to you. Now you say they
> weren't, but without saying in which way, so I still wouldn't know
> what to change in the description.
> 
> On the code change itself you did say "... so this is probably a
> good change", so I was further understanding that your concern is
> merely with the description. Maybe I misunderstood this aspect,
> too?
> 
>> To re-iterate - this is a very subtle change, in a very complicated
>> piece of migration.  As the problems described do not manifest in
>> practice, it is vital to understand why.
> 
> Until now it has been my understanding that they just don't happen
> to manifest, because guests know to behave themselves (read: pin,
> first and foremost, all their page tables, which means we wouldn't
> in practice run into ones with an in-flight state change).

Another example where I think I have waited long enough for a reply.
Roger has acked the change, so unless I hear otherwise by then I'm
intending to commit this, too, once the tree is fully open again.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:05:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:05:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104132.198795 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsKV-0001g7-D0; Thu, 01 Apr 2021 08:05:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104132.198795; Thu, 01 Apr 2021 08:05:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsKV-0001g0-9t; Thu, 01 Apr 2021 08:05:27 +0000
Received: by outflank-mailman (input) for mailman id 104132;
 Thu, 01 Apr 2021 08:05:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsKU-0001fu-4l
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:05:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cef6a366-a162-45c2-8f87-fee1d92a60c0;
 Thu, 01 Apr 2021 08:05:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5EC53AD6D;
 Thu,  1 Apr 2021 08:05: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: cef6a366-a162-45c2-8f87-fee1d92a60c0
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617264324; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=VqrCyBIF8QFz2KGAE0AiTc4J1eYaPJ7bzhliUAFzRms=;
	b=PBhTZPGW1iG5KOP1Mjy/xCpSbtoJovXsgHbmssSYzjSbS7sOrZVI5ZtAAVX/LaPUXUo9Zo
	UHc7aIDkr3ZqhZVmAGbv+22O2l8cFkwuYpJ7yrE7n8FG4gtORwgMYLTmdbQMUfFwZv1/sx
	gVaYrsOV6MqEZvKrrdY3nvBi1y97s34=
Subject: =?UTF-8?Q?Ping=c2=b2=3a_=5bPATCH=5d_x86emul=3a_de-duplicate_scatter?=
 =?UTF-8?Q?s_to_the_same_linear_address?=
From: Jan Beulich <jbeulich@suse.com>
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: <6064996d-943f-1be3-9bfd-e872149da2a1@suse.com>
 <fcf7e123-3cdd-fd4d-6c58-36facb26a68e@citrix.com>
 <2e559806-5bc0-0f61-8e23-95e0dba34c41@suse.com>
 <ca22a3b6-8194-7880-8e84-e709ee20bcf3@suse.com>
Message-ID: <6f200e53-02fc-c540-3b23-46f8f4b3385e@suse.com>
Date: Thu, 1 Apr 2021 10:05:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <ca22a3b6-8194-7880-8e84-e709ee20bcf3@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 17.02.2021 09:32, Jan Beulich wrote:
> On 05.02.2021 12:28, Jan Beulich wrote:
>> On 05.02.2021 11:41, Andrew Cooper wrote:
>>> On 10/11/2020 13:26, Jan Beulich wrote:
>>>> The SDM specifically allows for earlier writes to fully overlapping
>>>> ranges to be dropped. If a guest did so, hvmemul_phys_mmio_access()
>>>> would crash it if varying data was written to the same address. Detect
>>>> overlaps early, as doing so in hvmemul_{linear,phys}_mmio_access() would
>>>> be quite a bit more difficult.
>>>
>>> Are you saying that there is currently a bug if a guest does encode such
>>> an instruction, and we emulate it?
>>
>> That is my take on it, yes.
>>
>>>> Note that due to cache slot use being linear address based, there's no
>>>> similar issue with multiple writes to the same physical address (mapped
>>>> through different linear addresses).
>>>>
>>>> Since this requires an adjustment to the EVEX Disp8 scaling test,
>>>> correct a comment there at the same time.
>>>>
>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>> ---
>>>> TBD: The SDM isn't entirely unambiguous about the faulting behavior in
>>>>      this case: If a fault would need delivering on the earlier slot
>>>>      despite the write getting squashed, we'd have to call ops->write()
>>>>      with size set to zero for the earlier write(s). However,
>>>>      hvm/emulate.c's handling of zero-byte accesses extends only to the
>>>>      virtual-to-linear address conversions (and raising of involved
>>>>      faults), so in order to also observe #PF changes to that logic
>>>>      would then also be needed. Can we live with a possible misbehavior
>>>>      here?
>>>
>>> Do you have a chapter/section reference?
>>
>> The instruction pages. They say in particular
>>
>> "If two or more destination indices completely overlap, the “earlier”
>>  write(s) may be skipped."
>>
>> and
>>
>> "Faults are delivered in a right-to-left manner. That is, if a fault
>>  is triggered by an element and delivered ..."
>>
>> To me this may or may not mean the skipping of indices includes the
>> skipping of faults (which a later element then would raise anyway).
> 
> Does the above address your concerns / questions? If not, what else
> do I need to provide?

I have to admit that I find it quite disappointing that this bug fix
has missed 4.15. It doesn't feel well here even more than elsewhere,
but again I'm intending to commit this - if need be without any acks -
once the tree is fully open again. As a bug fix it'll want backporting
as well.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:08:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:08:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104135.198806 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsNl-0001oO-SN; Thu, 01 Apr 2021 08:08:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104135.198806; Thu, 01 Apr 2021 08:08:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsNl-0001oH-PE; Thu, 01 Apr 2021 08:08:49 +0000
Received: by outflank-mailman (input) for mailman id 104135;
 Thu, 01 Apr 2021 08:08:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsNj-0001oC-V8
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:08:47 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fccfb449-61ac-41b7-8c55-206b68946616;
 Thu, 01 Apr 2021 08:08:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 49277B06A;
 Thu,  1 Apr 2021 08:08: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: fccfb449-61ac-41b7-8c55-206b68946616
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617264526; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=lxipyp9rt3pRxcGI+J9L6VZB7lZCIV/pDMRlARWLStQ=;
	b=A7KGEJUKSoKxX/JVRTQeIWWzA9m2aWowhXYJqxAefA8kAFHgjlDD7+nbWsxi7c9xslJGE7
	Hm4CiHGogrTY0N2SdLgM78xm6yuqVO4Yq/iM3A/6Ea+483GljePWKq9yiKfm3b36pG9bh0
	If+51CXjfonExerjZjB92G2IeL/1qpc=
Subject: Ping: [PATCH] libxg: don't use max policy in xc_cpuid_xend_policy()
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Ian Jackson <iwj@xenproject.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <4fa05759-24ac-5ff3-3db9-94537f6be95d@suse.com>
 <20201106155839.vnhdqcptbpkbzfly@liuwe-devbox-debian-v2>
 <bab94d0a-89e8-18d8-9098-e30781c3a2e9@suse.com>
Message-ID: <44e9cf2e-e90a-12bd-59bf-3c8389ac0862@suse.com>
Date: Thu, 1 Apr 2021 10:08:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <bab94d0a-89e8-18d8-9098-e30781c3a2e9@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 23.11.2020 14:58, Jan Beulich wrote:
> On 06.11.2020 16:58, Wei Liu wrote:
>> On Thu, Nov 05, 2020 at 04:56:53PM +0100, Jan Beulich wrote:
>>> Using max undermines the separation between default and max. For example,
>>> turning off AVX512F on an MPX-capable system silently turns on MPX,
>>> despite this not being part of the default policy anymore. Since the
>>> information is used only for determining what to convert 'x' to (but not
>>> to e.g. validate '1' settings), the effect of this change is identical
>>> for guests with (suitable) "cpuid=" settings to that of the changes
>>> separating default from max and then converting (e.g.) MPX from being
>>> part of default to only being part of max for guests without (affected)
>>> "cpuid=" settings.
>>>
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
>> I will defer this to Andrew.
> 
> Andrew?

Yet another one (here having been pending for nearly 5 months), and hence
same thing (despite again not feeling well, albeit iirc at the time we
discussed this on irc and you looked to be basically agreeing): I intend
to commit this once the tree is fully open again, unless I hear otherwise.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:14:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:14:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104142.198822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsTK-0002kT-Mu; Thu, 01 Apr 2021 08:14:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104142.198822; Thu, 01 Apr 2021 08:14: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 1lRsTK-0002kM-J5; Thu, 01 Apr 2021 08:14:34 +0000
Received: by outflank-mailman (input) for mailman id 104142;
 Thu, 01 Apr 2021 08:14:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsTK-0002kH-29
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:14:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8c259dab-e72e-4d58-ad03-c299b6bc02f0;
 Thu, 01 Apr 2021 08:14:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CA2C4AD9F;
 Thu,  1 Apr 2021 08:14: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: 8c259dab-e72e-4d58-ad03-c299b6bc02f0
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617264871; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=A+Mwczd/JLppQkoJwt/WdnAEqqg2B2/Bm6sAPhNxIaQ=;
	b=GObWplHcaORdQh3kcmXAJzUYEdVO3cN6NN/+sGUlggjxtkRM4h1vw6+FNaVUq16GkYJGix
	ym7//FSMQwtUFLeFc8nFxHGFAM91uKlWHaJ9KyTEbuhIwJ6Fiw7jXXobEy6wt6H6w99NE/
	E7SODNZ74QVDiufIDVQZz0nvbP3qM0A=
Subject: =?UTF-8?Q?Ping=c2=b2=3a_=5bPATCH=5d_x86/CPUID=3a_move_some_static_m?=
 =?UTF-8?Q?asks_into_=2einit?=
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2e3dfe1a-bc8b-6774-ef7e-efb565343c52@suse.com>
 <ed96af1b-62ba-a7ca-913f-74e454ca9e2f@suse.com>
Message-ID: <fe3120a6-df1d-3e89-0150-922ffa1cc39e@suse.com>
Date: Thu, 1 Apr 2021 10:14:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <ed96af1b-62ba-a7ca-913f-74e454ca9e2f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 31.07.2020 16:55, Jan Beulich wrote:
> On 15.07.2020 09:45, Jan Beulich wrote:
>> Except for hvm_shadow_max_featuremask and deep_features they're
>> referenced by __init functions only.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
>> --- a/xen/arch/x86/cpuid.c
>> +++ b/xen/arch/x86/cpuid.c
>> @@ -16,12 +16,15 @@
>>  const uint32_t known_features[] = INIT_KNOWN_FEATURES;
>>  const uint32_t special_features[] = INIT_SPECIAL_FEATURES;
>>  
>> -static const uint32_t pv_max_featuremask[] = INIT_PV_MAX_FEATURES;
>> +static const uint32_t __initconst pv_max_featuremask[] = INIT_PV_MAX_FEATURES;
>>  static const uint32_t hvm_shadow_max_featuremask[] = INIT_HVM_SHADOW_MAX_FEATURES;
>> -static const uint32_t hvm_hap_max_featuremask[] = INIT_HVM_HAP_MAX_FEATURES;
>> -static const uint32_t pv_def_featuremask[] = INIT_PV_DEF_FEATURES;
>> -static const uint32_t hvm_shadow_def_featuremask[] = INIT_HVM_SHADOW_DEF_FEATURES;
>> -static const uint32_t hvm_hap_def_featuremask[] = INIT_HVM_HAP_DEF_FEATURES;
>> +static const uint32_t __initconst hvm_hap_max_featuremask[] =
>> +    INIT_HVM_HAP_MAX_FEATURES;
>> +static const uint32_t __initconst pv_def_featuremask[] = INIT_PV_DEF_FEATURES;
>> +static const uint32_t __initconst hvm_shadow_def_featuremask[] =
>> +    INIT_HVM_SHADOW_DEF_FEATURES;
>> +static const uint32_t __initconst hvm_hap_def_featuremask[] =
>> +    INIT_HVM_HAP_DEF_FEATURES;
>>  static const uint32_t deep_features[] = INIT_DEEP_FEATURES;
>>  
>>  static int __init parse_xen_cpuid(const char *s)

While I seem to recall that you, Andrew, said on irc that this change
may need almost immediate reverting with some further work you were
meaning to do, this work hasn't surfaced in the 8.5 months this patch
has been pending. Therefore I think I should have gone in right at
the time. Even if it's going to get (partly) reverted over time, I
think until such time it is benefitial to have that data moved to
.init. I therefore intend to commit this, again if need be without
any acks, once the tree is fully open again.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:23:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:23:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104145.198834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRscI-0003hi-Jm; Thu, 01 Apr 2021 08:23:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104145.198834; Thu, 01 Apr 2021 08: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 1lRscI-0003hb-Ff; Thu, 01 Apr 2021 08:23:50 +0000
Received: by outflank-mailman (input) for mailman id 104145;
 Thu, 01 Apr 2021 08:23:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRscH-0003hU-Fq
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:23:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2d2afe57-061e-45bc-99f1-8c13340dbd1d;
 Thu, 01 Apr 2021 08:23:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9E4B3AE8D;
 Thu,  1 Apr 2021 08:23: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: 2d2afe57-061e-45bc-99f1-8c13340dbd1d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617265427; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=rfHY6YVcp6pTaCljzpBFGILhRmitcEpxa1sbLFaLekA=;
	b=j5LO0Ho9gjBvocpKFIcMSyDpES8J39upuUXfH134CVFIV1ZCpD9KUmNtbmFRVelnUC+gjX
	LmcGSVx9Qo/9K8e1cL4KPXCv1Nqk1B7cv9jV7DrLuxNcTMWamrCO7UN5iKmg6060pI5q6o
	3TKzoI2myTrPXSlf7qQKV1dQYMnCjLQ=
Subject: Ping: [PATCH v2] x86: refine guest_mode()
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <369ec8ad-7d07-9c50-7458-fd68a2d717fb@suse.com>
Message-ID: <9ea89aba-5c2c-0795-9704-0afd5b31349d@suse.com>
Date: Thu, 1 Apr 2021 10:23:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <369ec8ad-7d07-9c50-7458-fd68a2d717fb@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.05.2020 18:23, Jan Beulich wrote:
> The 2nd of the assertions as well as the macro's return value have been
> assuming we're on the primary stack. While for most IST exceptions we
> switch back to the main one when user mode was interrupted, for #DF we
> intentionally never do, and hence a #DF actually triggering on a user
> mode insn (which then is still a Xen bug) would in turn trigger this
> assertion, rather than cleanly logging state.
> 
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

In a prior discussion, as so often, my most recent reply remained
unanswered. Quoting it partially (fully reply at [1]):

"> I'd certainly prefer to go for something which is more robust, even if
 > it is a larger change.
 
 ... what's your suggestion? Basing on _just_ CS.RPL obviously won't
 work. Not even if we put in place the guest's CS (albeit that
 somewhat depends on the meaning we assign to the macro's returned
 value). Using current inside the macro to determine whether the
 guest is HVM would also seem fragile to me - there are quite a few
 uses of guest_mode(). Which would leave passing in a const struct
 vcpu * (or domain *), requiring to touch all call sites, including
 Arm's.

 Compared to this it would seem to me that the change as presented
 is a clear improvement without becoming overly large of a change."

Lacking a clear route to take to address your request for further
change, based on the last sentence I intend to finally commit this
one (in its re-based form) as well once the tree is fully open
again. Of course, as always, unless I hear otherwise by then
(including a clear path forward). I definitely don't want to
celebrate the 1st anniversary of this patch's submission without it
having got committed.

Jan

[1] https://lists.xen.org/archives/html/xen-devel/2020-04/msg01550.html

> ---
> v2: Correct description.
> ---
> While we could go further and also assert we're on the correct IST
> stack in an "else" ti the "if()" added, I'm not fully convinced this
> would be generally helpful. I'll be happy to adjust accordingly if
> others think differently; at such a point though I think this should
> then no longer be a macro.
> 
> --- unstable.orig/xen/include/asm-x86/regs.h	2020-01-22 20:03:18.000000000 +0100
> +++ unstable/xen/include/asm-x86/regs.h	2020-04-27 10:02:40.009916762 +0200
> @@ -10,9 +10,10 @@
>      /* Frame pointer must point into current CPU stack. */                    \
>      ASSERT(diff < STACK_SIZE);                                                \
>      /* If not a guest frame, it must be a hypervisor frame. */                \
> -    ASSERT((diff == 0) || (r->cs == __HYPERVISOR_CS));                        \
> +    if ( diff < PRIMARY_STACK_SIZE )                                          \
> +        ASSERT(!diff || ((r)->cs == __HYPERVISOR_CS));                        \
>      /* Return TRUE if it's a guest frame. */                                  \
> -    (diff == 0);                                                              \
> +    !diff || ((r)->cs != __HYPERVISOR_CS);                                    \
>  })
>  
>  #endif /* __X86_REGS_H__ */
> 



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:28:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:28:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104148.198846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsgS-0003t3-6K; Thu, 01 Apr 2021 08:28:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104148.198846; Thu, 01 Apr 2021 08:28: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 1lRsgS-0003sw-1V; Thu, 01 Apr 2021 08:28:08 +0000
Received: by outflank-mailman (input) for mailman id 104148;
 Thu, 01 Apr 2021 08:28:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsgQ-0003sr-HL
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:28:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d7c79b19-9747-4feb-9a33-9e1ea16f3f9e;
 Thu, 01 Apr 2021 08:28:05 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C85F7AE86;
 Thu,  1 Apr 2021 08:28: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: d7c79b19-9747-4feb-9a33-9e1ea16f3f9e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617265684; 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=cWIQ6va35/HadgSZsBXIRMGX3zL3qfKRBRXkkpIfliA=;
	b=sDhUkmNTd5oIFSOkfnM/qYhVwfDqGgi6ca3UIvXBfw03d9pzwOogDm0nwsIJrXhHzEJ2qN
	JFk5Jw1KWP2e8S7DknCSqrPrPLbiiQP0grYWl+uy+QCVSXp1aePFXYaDiWeQu5WOj/pFhe
	7CGcpg3a1U1Ek0TqY689BwOfYExedaw=
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/ucode: log blob date also for AMD
Message-ID: <a236ef77-e6ef-5cbe-60a0-49c8dcd9a208@suse.com>
Date: Thu, 1 Apr 2021 10:28:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Like Intel, AMD also records the date in their blobs. The field was
merely misnamed as "data_code" so far; this was perhaps meant to be
"date_code". Split it into individual fields, just like we did for Intel
some time ago, and extend the message logged after a successful update.

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

--- a/xen/arch/x86/cpu/microcode/amd.c
+++ b/xen/arch/x86/cpu/microcode/amd.c
@@ -33,7 +33,9 @@ struct equiv_cpu_entry {
 };
 
 struct microcode_patch {
-    uint32_t data_code;
+    uint16_t year;
+    uint8_t  day;
+    uint8_t  month;
     uint32_t patch_id;
     uint8_t  mc_patch_data_id[2];
     uint8_t  mc_patch_data_len;
@@ -251,8 +253,9 @@ static int apply_microcode(const struct
         return -EIO;
     }
 
-    printk(XENLOG_WARNING "microcode: CPU%u updated from revision %#x to %#x\n",
-           cpu, old_rev, rev);
+    printk(XENLOG_WARNING
+           "microcode: CPU%u updated from revision %#x to %#x, date = %04x-%02x-%02x\n",
+           cpu, old_rev, rev, patch->year, patch->month, patch->day);
 
     return 0;
 }


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:28:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:28:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104151.198858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsh2-0003yv-FT; Thu, 01 Apr 2021 08:28:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104151.198858; Thu, 01 Apr 2021 08: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 1lRsh2-0003yo-Aw; Thu, 01 Apr 2021 08:28:44 +0000
Received: by outflank-mailman (input) for mailman id 104151;
 Thu, 01 Apr 2021 08:28: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 1lRsh0-0003yd-W8; Thu, 01 Apr 2021 08:28: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 1lRsh0-0001Oo-QS; Thu, 01 Apr 2021 08:28: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 1lRsh0-0003KV-Fs; Thu, 01 Apr 2021 08:28:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lRsh0-0003YN-FN; Thu, 01 Apr 2021 08:28: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=kIAAqHJurFVRyMxC/z6STXn8yZSzmfcvsw75wY1IomY=; b=NmI4kMn7VrYholHifGyJ24JR6i
	esN54g1rORd27gvx8ttIev4Qrz62XlgJ1OnIw8OdfxfFrsVRdTnrjFwVNH7m3z/YhL8Hz6tq+rprU
	P6dbeSIQEjN3Aug8FGk0qEec/yStQ9Xq6RbpuvSAwKi8tCtTgTYTxf8Y9KCnE5uSYp1g=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160622-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160622: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 08:28:42 +0000

flight 160622 xen-4.12-testing real [real]
flight 160636 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/160622/
http://logs.test-lab.xenproject.org/osstest/logs/160636/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160549 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160549 pass in 160622
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160549

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   43 days
Failing since        160128  2021-03-18 14:36:18 Z   13 days   15 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   12 days   13 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:34:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:34:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104158.198872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRslz-0004ve-Bf; Thu, 01 Apr 2021 08:33:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104158.198872; Thu, 01 Apr 2021 08:33: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 1lRslz-0004vX-8e; Thu, 01 Apr 2021 08:33:51 +0000
Received: by outflank-mailman (input) for mailman id 104158;
 Thu, 01 Apr 2021 08:33:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsly-0004vR-42
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:33:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f079bd8c-45a0-4c0c-bd77-ebbedea5e2eb;
 Thu, 01 Apr 2021 08:33:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E1A48AE92;
 Thu,  1 Apr 2021 08:33: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: f079bd8c-45a0-4c0c-bd77-ebbedea5e2eb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617266028; 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=RF79SsoAyFEuhqGnkFY5BlU6Era99vx8Fr7JdyqLln8=;
	b=aaybsiO9FjCfGOPDQXFbzYpZXZcfKQAOxhR8gOBWlxfEOAAuEAHR7rIIaOoR50dK/Kb1pw
	/KqC+eto5/tezWUDsCBVWzWue53QSjcyzEpiLVRjTZhY/5ceBiN2xkb4GjEf/owCIhncxS
	fdqQWsTpNAItkaah+lJEu0xNhau+VD0=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 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>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] build: centralize / unify asm-offsets generation
Message-ID: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
Date: Thu, 1 Apr 2021 10:33:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Except for an additional prereq Arm and x86 have the same needs here,
and Arm can also benefit from the recent x86 side improvement. Recurse
into arch/*/ only for a phony include target (doing nothing on Arm),
and handle asm-offsets itself entirely locally to xen/Makefile.

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

--- a/.gitignore
+++ b/.gitignore
@@ -318,7 +318,6 @@
 xen/arch/x86/efi/check.efi
 xen/arch/x86/efi/mkreloc
 xen/arch/*/xen.lds
-xen/arch/*/asm-offsets.s
 xen/arch/*/efi/boot.c
 xen/arch/*/efi/compat.c
 xen/arch/*/efi/ebmalloc.c
@@ -325,6 +324,7 @@
 xen/arch/*/efi/efi.h
 xen/arch/*/efi/pe.c
 xen/arch/*/efi/runtime.c
+xen/asm-offsets.s
 xen/common/config_data.S
 xen/common/config.gz
 xen/include/headers*.chk
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -341,7 +341,7 @@ _clean: delete-unfresh-files
 	find . \( -name "*.o" -o -name ".*.d" -o -name ".*.d2" \
 		-o -name "*.gcno" -o -name ".*.cmd" \) -exec rm -f {} \;
 	rm -f include/asm $(TARGET) $(TARGET).gz $(TARGET).efi $(TARGET).efi.map $(TARGET)-syms $(TARGET)-syms.map *~ core
-	rm -f include/asm-*/asm-offsets.h
+	rm -f asm-offsets.s include/asm-*/asm-offsets.h
 	rm -f .banner
 
 .PHONY: _distclean
@@ -362,7 +362,7 @@ $(TARGET): delete-unfresh-files
 		done; \
 		true
 	$(MAKE) -f $(BASEDIR)/Rules.mk -C include
-	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) asm-offsets.s
+	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) include
 	$(MAKE) -f $(BASEDIR)/Rules.mk include/asm-$(TARGET_ARCH)/asm-offsets.h
 	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) $@
 
@@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
 	@sed -rf tools/process-banner.sed < .banner >> $@.new
 	@mv -f $@.new $@
 
-include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
+asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
+	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
+	$(call move-if-changed,$@.new,$@)
+
+include/asm-$(TARGET_ARCH)/asm-offsets.h: asm-offsets.s
 	@(set -e; \
 	  echo "/*"; \
 	  echo " * DO NOT MODIFY."; \
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -131,8 +131,8 @@ $(TARGET)-syms: prelink.o xen.lds
 		>$(@D)/$(@F).map
 	rm -f $(@D)/.$(@F).[0-9]*
 
-asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c
-	$(CC) $(filter-out -flto,$(c_flags)) -S -o $@ $<
+.PHONY: include
+include:
 
 xen.lds: xen.lds.S
 	$(CPP) -P $(a_flags) -MQ $@ -o $@ $<
@@ -141,6 +141,6 @@ dtb.o: $(CONFIG_DTB_FILE)
 
 .PHONY: clean
 clean::
-	rm -f asm-offsets.s xen.lds
+	rm -f xen.lds
 	rm -f $(BASEDIR)/.xen-syms.[0-9]*
 	rm -f $(TARGET).efi
--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -244,9 +244,8 @@ endif
 efi/buildid.o efi/relocs-dummy.o: $(BASEDIR)/arch/x86/efi/built_in.o
 efi/buildid.o efi/relocs-dummy.o: ;
 
-asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c $(BASEDIR)/include/asm-x86/asm-macros.h
-	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
-	$(call move-if-changed,$@.new,$@)
+.PHONY: include
+include: $(BASEDIR)/include/asm-x86/asm-macros.h
 
 asm-macros.i: CFLAGS-y += -D__ASSEMBLY__ -P
 
@@ -276,7 +275,7 @@ hweight.o: CFLAGS-y += $(foreach reg,cx
 
 .PHONY: clean
 clean::
-	rm -f asm-offsets.s *.lds *.new boot/*.o boot/*~ boot/core boot/mkelf32
+	rm -f *.lds *.new boot/*.o boot/*~ boot/core boot/mkelf32
 	rm -f asm-macros.i $(BASEDIR)/include/asm-x86/asm-macros.*
 	rm -f $(BASEDIR)/.xen-syms.[0-9]* boot/.*.d $(BASEDIR)/.xen.elf32
 	rm -f $(BASEDIR)/.xen.efi.[0-9]* efi/*.efi efi/mkreloc


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:35:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:35:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104161.198884 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsnx-00054h-P9; Thu, 01 Apr 2021 08:35:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104161.198884; Thu, 01 Apr 2021 08:35: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 1lRsnx-00054a-Lb; Thu, 01 Apr 2021 08:35:53 +0000
Received: by outflank-mailman (input) for mailman id 104161;
 Thu, 01 Apr 2021 08:35: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 1lRsnw-00054S-B1; Thu, 01 Apr 2021 08:35: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 1lRsnw-0001VY-3g; Thu, 01 Apr 2021 08:35: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 1lRsnv-0003fV-Rr; Thu, 01 Apr 2021 08:35:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lRsnv-0001Nk-Pd; Thu, 01 Apr 2021 08:35: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=rcSXw7MHTY/qB3auMy//cyDEJ3Y9EG8Dn5+Sf5serrU=; b=f6MSf6Tcey7fQFl+paiQyBVcmm
	DNaWwlOjBqDp6JAPlJbJkr5v81Tn49rP5vqC5ixgW+3YEOd5RYwQ+4eARPzL6Eqdv6bWWZBroo0BW
	VGOFZR7s7YBl6Iz3SBG7s4DOVJMIzjoZRM/knz2vexgI5TV9BISTqcqVzjShbLStV+XI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160634-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160634: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=af35fa91be9182482c5b84a31c443c6840df8a72
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 08:35:51 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              af35fa91be9182482c5b84a31c443c6840df8a72
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  265 days
Failing since        151818  2020-07-11 04:18:52 Z  264 days  257 attempts
Testing same since   160634  2021-04-01 04:21:41 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:43:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:43:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104166.198900 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsun-00061Z-J2; Thu, 01 Apr 2021 08:42:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104166.198900; Thu, 01 Apr 2021 08:42: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 1lRsun-00061S-EZ; Thu, 01 Apr 2021 08:42:57 +0000
Received: by outflank-mailman (input) for mailman id 104166;
 Thu, 01 Apr 2021 08:42:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsul-00061K-Ez
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:42:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d2611743-2902-4a0b-9f3c-89f79843af36;
 Thu, 01 Apr 2021 08:42:53 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 87D8DAEFB;
 Thu,  1 Apr 2021 08:42: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: d2611743-2902-4a0b-9f3c-89f79843af36
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617266572; 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=UR99GWV6w+2q0MVEXspBRN36LxCrMHtPwkQFye7fZwA=;
	b=P7Iuk6XST4U71Ju1Ih12WwbfoK+xfwNqrWPPabqhrHcp2bcZfCXc6Jch8toeN6tQVrEWNz
	wT1kumXvux1m3Ho+AOPkbE2Au0kR6yul+N/aEUIIdNSSsMGCBz2qBH+9r9dnyZS2Mtz2/6
	2CPl0Q0vtAMhz/p+YflX54VmdPyWJKs=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Kevin Tian <kevin.tian@intel.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 0/6] VT-d: assorted cleanup
Message-ID: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Date: Thu, 1 Apr 2021 10:42:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This is effectively the other "half" of what was submitted as 4.15
candidates in "[PATCH 0/4][4.15?] VT-d: mostly S3 related corrections".

1: improve save/restore of registers across S3
2: don't open-code dmar_readl()
3: bring print_qi_regs() in line with print_iommu_regs()
4: qinval indexes are only up to 19 bits wide
5: avoid pointless use of 64-bit constants
6: drop unused #define-s

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:44:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:44:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104170.198911 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsvy-00068V-SM; Thu, 01 Apr 2021 08:44:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104170.198911; Thu, 01 Apr 2021 08:44:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsvy-00068O-PL; Thu, 01 Apr 2021 08:44:10 +0000
Received: by outflank-mailman (input) for mailman id 104170;
 Thu, 01 Apr 2021 08:44:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsvw-00068H-JW
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:44:08 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ff23fd63-710c-46c3-8f90-b409ab186394;
 Thu, 01 Apr 2021 08:44:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BF2A1AE86;
 Thu,  1 Apr 2021 08:44: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: ff23fd63-710c-46c3-8f90-b409ab186394
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617266646; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=EVCTE1tfqI4iUXHiO5xFd7e8mHxtUGLrwEPBx00R958=;
	b=tyd7dgVvsLyTX3ldvHPf2mSEZI6d5TO41Hsq1IcgrXwSWoDsT1AxGciCXL8jP58OwmhL1V
	pSMqGtdvjSA2di/unGO4Oshs9ePmDFdgWkrB1Xb2x1phKR2Rpvk6dZtiNIsmrCyuFJKDzj
	JGwOHG9Qk22r6g95AxemrduZPxjqrPc=
Subject: [PATCH 1/6] VT-d: improve save/restore of registers across S3
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Kevin Tian <kevin.tian@intel.com>
References: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Message-ID: <2ff7ac44-5a67-55e5-758b-680e68ebacaa@suse.com>
Date: Thu, 1 Apr 2021 10:44:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The static allocation of the save space is not only very inefficient
(most of the array slots won't ever get used), but is also the sole
reason for a build-time upper bound on the number of IOMMUs. Introduce
a structure containing just the one needed field we can't (easily)
restore from other in-memory state, and allocate the respective
array dynamically.

Take the opportunity and make the FEUADDR write dependent upon
x2apic_enabled, like is already the case in dma_msi_set_affinity().

Also alter properties of nr_iommus: static, unsigned, and __initdata.

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

--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -57,7 +57,7 @@ bool __read_mostly iommu_qinval = true;
 bool __read_mostly iommu_snoop = true;
 #endif
 
-int nr_iommus;
+static unsigned int __initdata nr_iommus;
 
 static struct iommu_ops vtd_ops;
 static struct tasklet vtd_fault_tasklet;
@@ -1165,13 +1165,6 @@ int __init iommu_alloc(struct acpi_drhd_
     unsigned long sagaw, nr_dom;
     int agaw;
 
-    if ( nr_iommus >= MAX_IOMMUS )
-    {
-        dprintk(XENLOG_ERR VTDPREFIX,
-                "IOMMU: nr_iommus %d > MAX_IOMMUS\n", nr_iommus + 1);
-        return -ENOMEM;
-    }
-
     iommu = xzalloc(struct vtd_iommu);
     if ( iommu == NULL )
         return -ENOMEM;
@@ -2226,6 +2219,10 @@ static void __hwdom_init setup_hwdom_rmr
     pcidevs_unlock();
 }
 
+static struct iommu_state {
+    uint32_t fectl;
+} *__read_mostly iommu_state;
+
 static int __init vtd_setup(void)
 {
     struct acpi_drhd_unit *drhd;
@@ -2251,6 +2248,13 @@ static int __init vtd_setup(void)
         goto error;
     }
 
+    iommu_state = xmalloc_array(struct iommu_state, nr_iommus);
+    if ( !iommu_state )
+    {
+        ret = -ENOMEM;
+        goto error;
+    }
+
     /* We enable the following features only if they are supported by all VT-d
      * engines: Snoop Control, DMA passthrough, Queued Invalidation, Interrupt
      * Remapping, and Posted Interrupt
@@ -2508,8 +2512,6 @@ static int intel_iommu_group_id(u16 seg,
         return PCI_BDF2(bus, devfn);
 }
 
-static u32 iommu_state[MAX_IOMMUS][MAX_IOMMU_REGS];
-
 static int __must_check vtd_suspend(void)
 {
     struct acpi_drhd_unit *drhd;
@@ -2534,14 +2536,7 @@ static int __must_check vtd_suspend(void
         iommu = drhd->iommu;
         i = iommu->index;
 
-        iommu_state[i][DMAR_FECTL_REG] =
-            (u32) dmar_readl(iommu->reg, DMAR_FECTL_REG);
-        iommu_state[i][DMAR_FEDATA_REG] =
-            (u32) dmar_readl(iommu->reg, DMAR_FEDATA_REG);
-        iommu_state[i][DMAR_FEADDR_REG] =
-            (u32) dmar_readl(iommu->reg, DMAR_FEADDR_REG);
-        iommu_state[i][DMAR_FEUADDR_REG] =
-            (u32) dmar_readl(iommu->reg, DMAR_FEUADDR_REG);
+        iommu_state[i].fectl = dmar_readl(iommu->reg, DMAR_FECTL_REG);
 
         /* don't disable VT-d engine when force_iommu is set. */
         if ( force_iommu )
@@ -2594,15 +2589,13 @@ static void vtd_resume(void)
     for_each_drhd_unit ( drhd )
     {
         iommu = drhd->iommu;
-        i = iommu->index;
 
         spin_lock_irqsave(&iommu->register_lock, flags);
-        dmar_writel(iommu->reg, DMAR_FEDATA_REG,
-                    iommu_state[i][DMAR_FEDATA_REG]);
-        dmar_writel(iommu->reg, DMAR_FEADDR_REG,
-                    iommu_state[i][DMAR_FEADDR_REG]);
-        dmar_writel(iommu->reg, DMAR_FEUADDR_REG,
-                    iommu_state[i][DMAR_FEUADDR_REG]);
+        dmar_writel(iommu->reg, DMAR_FEDATA_REG, iommu->msi.msg.data);
+        dmar_writel(iommu->reg, DMAR_FEADDR_REG, iommu->msi.msg.address_lo);
+        if ( x2apic_enabled )
+            dmar_writel(iommu->reg, DMAR_FEUADDR_REG,
+                        iommu->msi.msg.address_hi);
         spin_unlock_irqrestore(&iommu->register_lock, flags);
     }
 
@@ -2615,8 +2608,7 @@ static void vtd_resume(void)
         i = iommu->index;
 
         spin_lock_irqsave(&iommu->register_lock, flags);
-        dmar_writel(iommu->reg, DMAR_FECTL_REG,
-                    (u32) iommu_state[i][DMAR_FECTL_REG]);
+        dmar_writel(iommu->reg, DMAR_FECTL_REG, iommu_state[i].fectl);
         spin_unlock_irqrestore(&iommu->register_lock, flags);
 
         iommu_enable_translation(drhd);
--- a/xen/drivers/passthrough/vtd/iommu.h
+++ b/xen/drivers/passthrough/vtd/iommu.h
@@ -499,8 +499,6 @@ struct qinval_entry {
 #define VTD_PAGE_TABLE_LEVEL_3  3
 #define VTD_PAGE_TABLE_LEVEL_4  4
 
-#define MAX_IOMMU_REGS 0xc0
-
 extern struct list_head acpi_drhd_units;
 extern struct list_head acpi_rmrr_units;
 extern struct list_head acpi_ioapic_units;
--- a/xen/include/asm-x86/iommu.h
+++ b/xen/include/asm-x86/iommu.h
@@ -22,7 +22,6 @@
 #include <asm/hvm/vmx/vmcs.h>
 
 #define DEFAULT_DOMAIN_ADDRESS_WIDTH 48
-#define MAX_IOMMUS 32
 
 struct g2m_ioport {
     struct list_head list;



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:44:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:44:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104175.198924 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRswQ-0006Gi-8X; Thu, 01 Apr 2021 08:44:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104175.198924; Thu, 01 Apr 2021 08: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 1lRswQ-0006Gb-5V; Thu, 01 Apr 2021 08:44:38 +0000
Received: by outflank-mailman (input) for mailman id 104175;
 Thu, 01 Apr 2021 08:44:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRswP-0006GT-5t
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:44:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e703b07c-674a-4a5d-8e3e-639abbca8c6f;
 Thu, 01 Apr 2021 08:44:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BED10AE8D;
 Thu,  1 Apr 2021 08:44: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: e703b07c-674a-4a5d-8e3e-639abbca8c6f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617266675; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5qi6++u9QBggB8E7CGEoTNUFM2DKPu+n9nR4wGp6C/U=;
	b=RGHEfTZYySo1EMvwvxwxQK9e2SYicqFszHLrDPzRlPxPscjsrTilBG+cu32oDWIgVrNRgj
	rsUB10uiziJIfDY2WELwdwmhKZIh4X6Zcz+sygR227WN06vDZTw6efxHRbT+ARQn9HZfWR
	Xrfptbo+SHJFAOofp2QXx4c+OU8GfQs=
Subject: [PATCH 2/6] VT-d: don't open-code dmar_readl()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Kevin Tian <kevin.tian@intel.com>
References: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Message-ID: <e6cd8e78-81b2-c167-a3ca-5cb374fce7a3@suse.com>
Date: Thu, 1 Apr 2021 10:44:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While at it also drop the unnecessary use of a local variable there.

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

--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -990,8 +990,7 @@ static void __do_iommu_page_fault(struct
     }
 clear_overflow:
     /* clear primary fault overflow */
-    fault_status = readl(iommu->reg + DMAR_FSTS_REG);
-    if ( fault_status & DMA_FSTS_PFO )
+    if ( dmar_readl(iommu->reg, DMAR_FSTS_REG) & DMA_FSTS_PFO )
     {
         spin_lock_irqsave(&iommu->register_lock, flags);
         dmar_writel(iommu->reg, DMAR_FSTS_REG, DMA_FSTS_PFO);



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:44:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:44:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104177.198936 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRswZ-0006Kh-JY; Thu, 01 Apr 2021 08:44:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104177.198936; Thu, 01 Apr 2021 08: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 1lRswZ-0006KW-EZ; Thu, 01 Apr 2021 08:44:47 +0000
Received: by outflank-mailman (input) for mailman id 104177;
 Thu, 01 Apr 2021 08:44:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRswY-0006K7-Bo
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:44:46 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 37dcbb4c-1df8-41ec-904b-e7ff9b163d65;
 Thu, 01 Apr 2021 08:44: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: 37dcbb4c-1df8-41ec-904b-e7ff9b163d65
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617266684;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=5D2x9xvQ/eqIpLFUni7fwPs6RISj+bxDXQyNeALKiBI=;
  b=gBkXEO0pRcgWHx75pR8tF5/VszA6iYJ6UMw0F9UDLQqdf+XbVIyub5Kq
   v6LtKG3LNewYzfkfokcjGAs+zYISbvDd8mEv+KNnS5kSscCJWIs/hnhkQ
   rrDSWMhG/h1Oqgv5+wKLqNJJhZ9Q3jp4IvSwQaGZVeOqBTMZXt3uim3hx
   c=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: EjYvMt54dSf9UVCTBP3+3sEKziGZjVJRq96QRgRkySvFy9GvuIqxvOcYgMWFEheGAUqT3vqs5w
 PMzN/0O5Wn3LJ8cSExYB4Gmy5z8fsCTX1jzvzximR2jPhCvjGOjJn+vFzLZ3lGtFMKTHAcLIyz
 llpuGQ8BlmTgDN45t/LaPoRP+0B9R237gdmysMasUrdmIzO/XZxcr9kKPP71y61nHBUUg0QXlc
 nkMqpNCsUBNuuYEqcLVEEWNbpX0QhLd4SiqZJaamb2AMOIB9Cjk+XSE01SdP6jsRrzZxhcJgOx
 aA8=
X-SBRS: 5.2
X-MesageID: 40530448
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23: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
 vecHzy+dZSx9A4aZM=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40530448"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NgI8oVoJ8Qx9zfyla7K0DFuPHxOady6KSYceNYbCofeLVtFMlcyWNytp2Oy/6Fo0biqTtEmsHPztrv2OUwB3lQnkd5QK9Mf1WmWIf684YUvQFqeNZXrWXk0JguBnOCitket03vkHsU8L3aTJz7s8COgX2fXh++3iuX66Hrg6O6ecQ20YMaAYhdu0uUdSe5CptBvtV3JqRwY+i6f1Fb8bfPT+NVphGa7CT8jMK9ELJX/z/apPpBqbCVMB4i6yZr4aoXKO2DczvAZixkjOqZXB36g2h1JG0OVnzLWedoo3SLExsCFUofPj+s+IpfoMBc1VXwnTIUzqw3+yW+GN7DSz5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BPEZlh9KDUoP9LgRoP8WHL37awvqHitPtHVi0D9l44I=;
 b=PhZccKvPxSb6mAQGWhRRx7K+kc4CqMvznJGw9xnMGmvrJsp/xRhITbWSmxbij0axGxCZlx19Cv6ciKJ+gEv+lRvJqbyxL1KuXSORMeBtFPNkrLBBjZ9fo0e8w6k7XPDwrHui+z8h6VmhCXS+5qASZLPW3+Zch8Ge3It+7DlF/V/J0RwLAUgD3k6CFnjIriLo7U/eu8P7XiC1nKiCTquYZOPnlgZHQJajdUqYSVOeYSHPhOAQF0/5grF0dRslUhuBQV2Mcl5z/ZNTmKtxN25/V0DpA/CAkew008nLp+ZGPbtHCkMfmEtK3XcS08by9dBZ2rSFpGfqbpWg3JCdVqY22g==
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=BPEZlh9KDUoP9LgRoP8WHL37awvqHitPtHVi0D9l44I=;
 b=pIAdggDbe7WYg/+eZLag0EkhAzH1WgEC50Qu6a9KV7Dg6dO1lfCGutGp9yfcyLCJqZq7PGRg1MGuHdydQWfIM50Ek8ZDcyxt5700f81LOYLIr4hc728WNhvrfj9d1vI4ASOrLXW8iKm/imEvPHkc84rhrLq1QOms6M6KgQUW+Ro=
Date: Thu, 1 Apr 2021 10:44:35 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Roman Shaposhnik <roman@zededa.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, <grub-devel@gnu.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>
Subject: Re: multiboot2 and module2 boot issues via GRUB2
Message-ID: <YGWH89ubVe104Tnl@Air-de-Roger>
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
 <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
 <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
X-ClientProxiedBy: MR2P264CA0169.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::8)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 39967864-c3f9-4760-5dab-08d8f4ea63d9
X-MS-TrafficTypeDiagnostic: DM6PR03MB3739:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB37399BE3AEAAAA93992C0BCC8F7B9@DM6PR03MB3739.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 9Xk8bu+m2JPu6yluVb/mwwC6okgToCPLrEDtexn/UJWF+Hc90MaXgKh2Nm5L45jMkojwoAmBOS5RMybaTO4NNZM4Ap9RCjBXlPltgAzKh47mnB0TVB4qGmUKetqsK4fLxEyKlRRqtjVEQP5NI62p8TE2mqzLNVmIe2ccji/jAry4UAX1rVP03/QKwkgfV8dIhI6ocISEqC84B+lEYFDDXZbLrYe3RvOYyStjSEmSGmJTA0LafvJsdZiJjgZ31F4iD6BoKeHvQDrY/cILUzHymn4qskomVxNSu2K8AT68CnzxEUfAUcyzg/xl9ZT1RV7YDmKdjk14VDDcdR+ZcE9BEIJAyO88YNOpCb4RNS2pKwAPnknADrwHr86vSy4rwapFNKujjS/XX8HZQWx8nAgTV2b2qy+QJY8o/p4DcElc9JyDCGk45GUBVZT/zdi0VkzAPvYNr0BuD2f7aaFJUoSTQSbqRHf28G52pm9ye2GwkuYDvMmjxbVMQEATzu9DZTzcSPMPWAr5gnmknpOrliZMNZdVnCjJE1S5D1/BNfE6uiXqNZWNILrKfJ9rdNq1gsEcb0+WKIzUCjOmg117/d42zw==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(346002)(136003)(396003)(376002)(39850400004)(366004)(8936002)(9686003)(107886003)(66556008)(33716001)(38100700001)(54906003)(478600001)(956004)(86362001)(4326008)(26005)(6666004)(66476007)(2906002)(66946007)(5660300002)(6486002)(316002)(8676002)(6496006)(53546011)(186003)(4744005)(16526019)(85182001)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?dGc4d1JISVB5UitQUnJhZz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 39967864-c3f9-4760-5dab-08d8f4ea63d9
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 08:44:40.8535
 (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: e52TnFDO9K3G5XbPdCr/iHkdvYW9tV6i4PWyJebbBC14oXn4WCM0I7INbYaP9kVWDF8dhMJ6V9CUEMZJ5Rs68w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3739
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
> On 01.04.2021 03:06, Roman Shaposhnik wrote:
> > And the obvious next question: is my EVE usecase esoteric enough that
> > I should just go ahead and do a custom GRUB patch or is there a more
> > general interest in this?
> 
> Not sure if it ought to be a grub patch - the issue could as well
> be dealt with in Xen, by concatenating modules to form a monolithic
> initrd.

I would rather have it done in the loader than Xen, mostly because
it's a Linux boot specific format, and hence I don't think Xen should
have any knowledge about it.

If it turns out to be impossible to implement on the loader side we
should consider doing it in Xen, but that's not my first option.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:44:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:44:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104179.198948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRswk-0006QM-RW; Thu, 01 Apr 2021 08:44:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104179.198948; Thu, 01 Apr 2021 08: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 1lRswk-0006QE-OK; Thu, 01 Apr 2021 08:44:58 +0000
Received: by outflank-mailman (input) for mailman id 104179;
 Thu, 01 Apr 2021 08:44:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRswi-0006Pc-VZ
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:44:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9ede36b3-4053-4dfe-8ccb-620126c57cad;
 Thu, 01 Apr 2021 08:44:56 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 777A5AE8D;
 Thu,  1 Apr 2021 08:44: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: 9ede36b3-4053-4dfe-8ccb-620126c57cad
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617266695; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=QXGl+Z7RFWWbp6so6Tz4DSduWEpNaC1fGMoL4+RAnfw=;
	b=YFqKBl8t+X/fp14wXCvuISzEcX96Oj9LnuDL2GWTfM3/HrsQUMIjDGkExvaym5vw4XqXoX
	4ubzo1mMMNqI4gqSKFqmZNSyI4D5z7MTk/X3mBXtFZUfXTLc0YBDGnqWl2FjrixmG9td7/
	oF04HydMdM6Y2Fme5BTCtNDRK/IaF2k=
Subject: [PATCH 3/6] VT-d: bring print_qi_regs() in line with
 print_iommu_regs()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Kevin Tian <kevin.tian@intel.com>
References: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Message-ID: <c3401f8c-35b5-17d7-ae14-8c58e43b5cb9@suse.com>
Date: Thu, 1 Apr 2021 10:44:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Shorten the names printed. There's also no need to go through a local
variable.

While at it also constify the function's parameter.

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

--- a/xen/drivers/passthrough/vtd/qinval.c
+++ b/xen/drivers/passthrough/vtd/qinval.c
@@ -33,18 +33,11 @@
 
 static int __must_check invalidate_sync(struct vtd_iommu *iommu);
 
-static void print_qi_regs(struct vtd_iommu *iommu)
+static void print_qi_regs(const struct vtd_iommu *iommu)
 {
-    u64 val;
-
-    val = dmar_readq(iommu->reg, DMAR_IQA_REG);
-    printk("DMAR_IQA_REG = %"PRIx64"\n", val);
-
-    val = dmar_readq(iommu->reg, DMAR_IQH_REG);
-    printk("DMAR_IQH_REG = %"PRIx64"\n", val);
-
-    val = dmar_readq(iommu->reg, DMAR_IQT_REG);
-    printk("DMAR_IQT_REG = %"PRIx64"\n", val);
+    printk(" IQA = %"PRIx64"\n", dmar_readq(iommu->reg, DMAR_IQA_REG));
+    printk(" IQH = %"PRIx64"\n", dmar_readq(iommu->reg, DMAR_IQH_REG));
+    printk(" IQT = %"PRIx64"\n", dmar_readq(iommu->reg, DMAR_IQT_REG));
 }
 
 static unsigned int qinval_next_index(struct vtd_iommu *iommu)



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:45:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:45:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104184.198960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsx3-0006Y1-62; Thu, 01 Apr 2021 08:45:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104184.198960; Thu, 01 Apr 2021 08:45:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsx3-0006Xu-2S; Thu, 01 Apr 2021 08:45:17 +0000
Received: by outflank-mailman (input) for mailman id 104184;
 Thu, 01 Apr 2021 08:45:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsx2-0006Xi-Cq
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:45:16 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f0586108-a1c4-4fbc-976c-8edaee73635d;
 Thu, 01 Apr 2021 08:45:15 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DE21BAF28;
 Thu,  1 Apr 2021 08:45: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: f0586108-a1c4-4fbc-976c-8edaee73635d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617266715; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Oa+4GqEAwgAdkWZtpOQ4w42vy8M9iwn2JbhahcRbFHk=;
	b=p4bdMQfAUysFNQynw9wXfroabi+6rKY/aIIN+h8kgvJbfnyKUolIWMUHub1Stm3KeUKcQn
	zYBbTrL+x61AgBP/SOdhOY0NZhTcNBYA6CtEUfgt5F8LNTHgez5osoN0kGfcAWSN7CF+S6
	ZLISuj2XfJnjNEY3S3KdqcpJVh0RKN8=
Subject: [PATCH 4/6] VT-d: qinval indexes are only up to 19 bits wide
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Kevin Tian <kevin.tian@intel.com>
References: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Message-ID: <f205b254-9c1c-45fe-48ed-359a7f8d178f@suse.com>
Date: Thu, 1 Apr 2021 10:45:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There's no need for 64-bit accesses to these registers (outside of
initial setup and dumping).

Also remove some stray blanks.

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

--- a/xen/drivers/passthrough/vtd/qinval.c
+++ b/xen/drivers/passthrough/vtd/qinval.c
@@ -42,14 +42,13 @@ static void print_qi_regs(const struct v
 
 static unsigned int qinval_next_index(struct vtd_iommu *iommu)
 {
-    u64 tail;
+    unsigned int tail = dmar_readl(iommu->reg, DMAR_IQT_REG);
 
-    tail = dmar_readq(iommu->reg, DMAR_IQT_REG);
     tail >>= QINVAL_INDEX_SHIFT;
 
     /* (tail+1 == head) indicates a full queue, wait for HW */
-    while ( ( tail + 1 ) % QINVAL_ENTRY_NR ==
-            ( dmar_readq(iommu->reg, DMAR_IQH_REG) >> QINVAL_INDEX_SHIFT ) )
+    while ( (tail + 1) % QINVAL_ENTRY_NR ==
+            (dmar_readl(iommu->reg, DMAR_IQH_REG) >> QINVAL_INDEX_SHIFT) )
         cpu_relax();
 
     return tail;
@@ -57,12 +56,12 @@ static unsigned int qinval_next_index(st
 
 static void qinval_update_qtail(struct vtd_iommu *iommu, unsigned int index)
 {
-    u64 val;
+    unsigned int val;
 
     /* Need hold register lock when update tail */
     ASSERT( spin_is_locked(&iommu->register_lock) );
     val = (index + 1) % QINVAL_ENTRY_NR;
-    dmar_writeq(iommu->reg, DMAR_IQT_REG, (val << QINVAL_INDEX_SHIFT));
+    dmar_writel(iommu->reg, DMAR_IQT_REG, val << QINVAL_INDEX_SHIFT);
 }
 
 static int __must_check queue_invalidate_context_sync(struct vtd_iommu *iommu,



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:45:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:45:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104188.198972 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsxQ-0006fh-Ga; Thu, 01 Apr 2021 08:45:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104188.198972; Thu, 01 Apr 2021 08: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 1lRsxQ-0006fa-Cy; Thu, 01 Apr 2021 08:45:40 +0000
Received: by outflank-mailman (input) for mailman id 104188;
 Thu, 01 Apr 2021 08:45:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsxP-0006ea-Os
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:45:39 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c655badc-64b4-4a19-a25d-c955f41f23d5;
 Thu, 01 Apr 2021 08:45:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C5355AEFB;
 Thu,  1 Apr 2021 08:45: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: c655badc-64b4-4a19-a25d-c955f41f23d5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617266734; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=U0UO+wcl/jJCDP3esQE6oeXB/el7db31934Dib0PPcY=;
	b=ssFYZXkOpDDuCBuV8ar2q5Oy2a+BYqVUl/Y8nlVS6h0oQX3+2zYyEY439LwNm3qooOBYm0
	c/WZh7B6lp9mTmcPNRLO0l37Ih8O/u7vclO6KIOiE/NDIUzqtzukR5o6OjMVvdtTnLPrQ1
	ZmUB5IdTwQKyUQvVzuFczKqXD1oHwFs=
Subject: [PATCH 5/6] VT-d: avoid pointless use of 64-bit constants
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Kevin Tian <kevin.tian@intel.com>
References: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Message-ID: <b6092c34-2462-a665-4477-2baf0fd2395a@suse.com>
Date: Thu, 1 Apr 2021 10:45:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

When the respective registers are just 32 bits wide there's no point in
making corresponding constants 64-bit ones.

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

--- a/xen/drivers/passthrough/vtd/iommu.h
+++ b/xen/drivers/passthrough/vtd/iommu.h
@@ -121,30 +121,30 @@
 #define DMA_TLB_IVA_HINT(x) ((((u64)x) & 1) << 6)
 
 /* GCMD_REG */
-#define DMA_GCMD_TE     (((u64)1) << 31)
-#define DMA_GCMD_SRTP   (((u64)1) << 30)
-#define DMA_GCMD_SFL    (((u64)1) << 29)
-#define DMA_GCMD_EAFL   (((u64)1) << 28)
-#define DMA_GCMD_WBF    (((u64)1) << 27)
-#define DMA_GCMD_QIE    (((u64)1) << 26)
-#define DMA_GCMD_IRE    (((u64)1) << 25)
-#define DMA_GCMD_SIRTP  (((u64)1) << 24)
-#define DMA_GCMD_CFI    (((u64)1) << 23)
+#define DMA_GCMD_TE     (1u << 31)
+#define DMA_GCMD_SRTP   (1u << 30)
+#define DMA_GCMD_SFL    (1u << 29)
+#define DMA_GCMD_EAFL   (1u << 28)
+#define DMA_GCMD_WBF    (1u << 27)
+#define DMA_GCMD_QIE    (1u << 26)
+#define DMA_GCMD_IRE    (1u << 25)
+#define DMA_GCMD_SIRTP  (1u << 24)
+#define DMA_GCMD_CFI    (1u << 23)
 
 /* GSTS_REG */
-#define DMA_GSTS_TES    (((u64)1) << 31)
-#define DMA_GSTS_RTPS   (((u64)1) << 30)
-#define DMA_GSTS_FLS    (((u64)1) << 29)
-#define DMA_GSTS_AFLS   (((u64)1) << 28)
-#define DMA_GSTS_WBFS   (((u64)1) << 27)
-#define DMA_GSTS_QIES   (((u64)1) <<26)
-#define DMA_GSTS_IRES   (((u64)1) <<25)
-#define DMA_GSTS_SIRTPS (((u64)1) << 24)
-#define DMA_GSTS_CFIS   (((u64)1) <<23)
+#define DMA_GSTS_TES    (1u << 31)
+#define DMA_GSTS_RTPS   (1u << 30)
+#define DMA_GSTS_FLS    (1u << 29)
+#define DMA_GSTS_AFLS   (1u << 28)
+#define DMA_GSTS_WBFS   (1u << 27)
+#define DMA_GSTS_QIES   (1u << 26)
+#define DMA_GSTS_IRES   (1u << 25)
+#define DMA_GSTS_SIRTPS (1u << 24)
+#define DMA_GSTS_CFIS   (1u << 23)
 
 /* PMEN_REG */
-#define DMA_PMEN_EPM    (((u32)1) << 31)
-#define DMA_PMEN_PRS    (((u32)1) << 0)
+#define DMA_PMEN_EPM    (1u << 31)
+#define DMA_PMEN_PRS    (1u <<  0)
 
 /* CCMD_REG */
 #define DMA_CCMD_INVL_GRANU_OFFSET  61
@@ -164,21 +164,23 @@
 #define DMA_CCMD_CAIG_MASK(x) (((u64)x) & ((u64) 0x3 << 59))
 
 /* FECTL_REG */
-#define DMA_FECTL_IM (((u64)1) << 31)
+#define DMA_FECTL_IM (1u << 31)
 
 /* FSTS_REG */
-#define DMA_FSTS_PFO ((u64)1 << 0)
-#define DMA_FSTS_PPF ((u64)1 << 1)
-#define DMA_FSTS_AFO ((u64)1 << 2)
-#define DMA_FSTS_APF ((u64)1 << 3)
-#define DMA_FSTS_IQE ((u64)1 << 4)
-#define DMA_FSTS_ICE ((u64)1 << 5)
-#define DMA_FSTS_ITE ((u64)1 << 6)
-#define DMA_FSTS_FAULTS    DMA_FSTS_PFO | DMA_FSTS_PPF | DMA_FSTS_AFO | DMA_FSTS_APF | DMA_FSTS_IQE | DMA_FSTS_ICE | DMA_FSTS_ITE
+#define DMA_FSTS_PFO (1u << 0)
+#define DMA_FSTS_PPF (1u << 1)
+#define DMA_FSTS_AFO (1u << 2)
+#define DMA_FSTS_APF (1u << 3)
+#define DMA_FSTS_IQE (1u << 4)
+#define DMA_FSTS_ICE (1u << 5)
+#define DMA_FSTS_ITE (1u << 6)
+#define DMA_FSTS_FAULTS (DMA_FSTS_PFO | DMA_FSTS_PPF | DMA_FSTS_AFO | \
+                         DMA_FSTS_APF | DMA_FSTS_IQE | DMA_FSTS_ICE | \
+                         DMA_FSTS_ITE)
 #define dma_fsts_fault_record_index(s) (((s) >> 8) & 0xff)
 
 /* FRCD_REG, 32 bits access */
-#define DMA_FRCD_F (((u64)1) << 31)
+#define DMA_FRCD_F (1u << 31)
 #define dma_frcd_type(d) ((d >> 30) & 1)
 #define dma_frcd_fault_reason(c) (c & 0xff)
 #define dma_frcd_source_id(c) (c & 0xffff)



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:45:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:45:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104190.198984 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRsxg-0006lq-PK; Thu, 01 Apr 2021 08:45:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104190.198984; Thu, 01 Apr 2021 08:45: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 1lRsxg-0006lh-LU; Thu, 01 Apr 2021 08:45:56 +0000
Received: by outflank-mailman (input) for mailman id 104190;
 Thu, 01 Apr 2021 08:45:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRsxf-0006lL-IS
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:45:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4b40a4a9-cb32-4a9a-8f79-f2e4d4d12201;
 Thu, 01 Apr 2021 08:45:55 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3AB96B06A;
 Thu,  1 Apr 2021 08:45: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: 4b40a4a9-cb32-4a9a-8f79-f2e4d4d12201
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617266754; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=sz7pYz3SSChzPfaCLOKsspYeFrYrOKDDv1mzKeQ9WSc=;
	b=C5WivcIWPbxFb6n70fdiFuFmF4fq79Pu1zMvQzJiACePVHeSlekCBdlwsPuqPU1cSV2Xsl
	aR5QJ1ZXPtr7eXm/7eRGmZXZeT0PMQLhouqcMw5zxFu2JADtp5XulLevIiYMy5KbO/+Nek
	ucvVtRFVaVzMChaOiI2ODEpPqTA22A0=
Subject: [PATCH 6/6] VT-d: drop unused #define-s
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Kevin Tian <kevin.tian@intel.com>
References: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Message-ID: <38aab031-d9a3-dfa2-9958-ec625a0ce042@suse.com>
Date: Thu, 1 Apr 2021 10:45:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/drivers/passthrough/vtd/iommu.h
+++ b/xen/drivers/passthrough/vtd/iommu.h
@@ -471,26 +471,12 @@ struct qinval_entry {
 /* Queue invalidation head/tail shift */
 #define QINVAL_INDEX_SHIFT 4
 
-#define qinval_present(v) ((v).lo & 1)
-#define qinval_fault_disable(v) (((v).lo >> 1) & 1)
-
-#define qinval_set_present(v) do {(v).lo |= 1;} while(0)
-#define qinval_clear_present(v) do {(v).lo &= ~1;} while(0)
-
-#define RESERVED_VAL        0
-
 #define TYPE_INVAL_CONTEXT      0x1
 #define TYPE_INVAL_IOTLB        0x2
 #define TYPE_INVAL_DEVICE_IOTLB 0x3
 #define TYPE_INVAL_IEC          0x4
 #define TYPE_INVAL_WAIT         0x5
 
-#define NOTIFY_TYPE_POLL        1
-#define NOTIFY_TYPE_INTR        1
-#define INTERRUTP_FLAG          1
-#define STATUS_WRITE            1
-#define FENCE_FLAG              1
-
 #define IEC_GLOBAL_INVL         0
 #define IEC_INDEX_INVL          1
 #define IRTA_EIME               (((u64)1) << 11)



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 08:48:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 08:48:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104197.198995 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRszt-00070e-C9; Thu, 01 Apr 2021 08:48:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104197.198995; Thu, 01 Apr 2021 08: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 1lRszt-00070X-90; Thu, 01 Apr 2021 08:48:13 +0000
Received: by outflank-mailman (input) for mailman id 104197;
 Thu, 01 Apr 2021 08:48:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRszr-00070O-BJ
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 08:48:11 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 54ea3bfb-de98-450b-b3c4-23f6b2c46a20;
 Thu, 01 Apr 2021 08:48: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: 54ea3bfb-de98-450b-b3c4-23f6b2c46a20
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617266889;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ycESowqVYSX6sOd3+5kZmSuk1kAnamQnVGJeMtY0Z+I=;
  b=aPGdwughSMSVU8RGFBJGTkZduqCMZLbDRkzrV6gJS2+XMI8kbyvoFPbY
   z1sDSm8Ukh0qiKIzSI68gkvfi3HxdueW7xfQp37zhZMj6px16zgP3zAKv
   aVx3c6qmVK3vxaD83YkcKo7s8h0K3EKxDBoJj3gc2NcQ/TvVrPaMVeuMf
   w=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 6pGHwN491dY/sBdxrtQZ5zgn3uRge0bE9xgLF62jz4w/Sko483q7nMj/aeeyKF2Mf6idf58P91
 rq3Ako9dpDFarf/BPCkf1PsrcmM2F9ZT0wi1LhrtZnZxSrrhTK4YOba0h7BF0oWW0ThMeiNNTH
 iiOsWVJgbQWym5lWuC6ciS3/Ul0XT0xs5nBkvWGwqV7HmWo1SyYlNWxLRMbwnHadS6Rm2ptvxx
 W5O9pZsenWHn5E8JtgUOFMV9RrFar44P+HoZ0/VJnREuWIcIF8wLyWGrSowDrzFS1L90PTGGil
 HqM=
X-SBRS: 5.2
X-MesageID: 40807053
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fBIx+6tR+1S6RWoAoNJB2xrJ7skCIIMji2hD6mlwRA09T+Wzna
 mV7Y0m/DXzjyscX2xlpMCYNMC7MAvh3LNWwa1UB7etWwH6pHClRbsJ0aLOyyDtcheOk9J1+r
 xnd8FFeb/NJHh8yf33+QypV+snqeP3k5yAocf74zNTQRpxa6dmhj0ZNi++HldtTAdLQboVfa
 DsgvZvnDardXQJYsnTPBBsNNTrnNHFmInrZhQLHXcciDWmty+i67LxDnGjr3Ajeg5IqI1Sl1
 TtokjW4uGGv+ugwhHRk1XP54lb8eGM9vJzQOKLjMYRJnHAqCaNIL5gVbqLoSwvrIiUhWoCoZ
 3jpREvOsg20XfNZyWOpwf30QWI6lkTwk6n8lOTjXv9rcGRflwHN/Y=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40807053"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=e/iPIqtm/rwsVrPnt4dnursB8qN8NAtYroNr9M9GhXZRO2uO+s1H3oQ/fh240Hi3OnDvn15MzERZ9nNrSNmeVkBqVSobZ3meE7FF+yy5bhc0/DIxiUjVln6jsgWKMTvOQSgCud/DGQEEErgbrcGs5CKP4Qg/MKzpUzWQlfKBih/U6u+TWhu75yy4vTjD95QLDb/qmyQvDU53DGvAgOiIgCEekJSdVHFFhKDm1uimyKJ6gLJuQXoOuQATnVLUcziuTBjCqSwhpVDAMpIIFWBXlkSd5IixR4CGRqjApb1IlUQHGmwJbVmFstDVU1JDATAb8BJTHFaCMMN+iiM41k6GWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UUcEZb4vYsSnIknMdrcaUmgBNIX+6bgQlq5dQ+9sTIM=;
 b=QvNEo4lGPx0WbEIX/gk/fkTNMJc8L+F6lDJyEq6FY0182ypkhOryZtNT5L1aHxi5paHACQNV95fi9QbYnCyGk+FVNzOVkRaB/IytMBavvHD2gZ70RNJFeBTW284skQWhXq99WfUHI7nhVe9PseuA9ff7owFPL1hP4je+aa1q3pBOrAllLG6PusoWiux0U4E6i4u5PXaphvrzt9RTBVgIx5h6xYowioD1cU5b06zKCBJMQXJs4YK77jJUh2XfgAslgt7qI5ysA+MHCuHK5G+kwU8O3pJvD3hVv4YICkuSKjl9QhPNUfIkrPMMZIgpRGzyBe/CkqIZSTEHEgmL3QBeZg==
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=UUcEZb4vYsSnIknMdrcaUmgBNIX+6bgQlq5dQ+9sTIM=;
 b=uxPLG38u5tacv8P/QNTZOvibr5B2fry4bn63WmZ9W2G23Zp+PjPpkKCSqSW6tkHTynyjCl4dPsPFM+5xWo/R0SHqOqYskPlDe4JHMomEZO3KNBEPC5gx52cUxQpBRmkDTQ+govbWMe1kTH4kGLQa4BMu3PgVVMJGMYC9rgFGFYY=
Date: Thu, 1 Apr 2021 10:48:00 +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>, Ian Jackson <iwj@xenproject.org>, Wei
 Liu <wl@xen.org>
Subject: Re: [PATCH 03/21] libs/guest: introduce xc_cpu_policy_t
Message-ID: <YGWIwFwC9wFoQ/AT@Air-de-Roger>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-4-roger.pau@citrix.com>
 <7f52bd98-24fd-95ba-f8c6-05a331941b49@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <7f52bd98-24fd-95ba-f8c6-05a331941b49@citrix.com>
X-ClientProxiedBy: MRXP264CA0009.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::21) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 1125c19e-7626-47b7-8b23-08d8f4eade4e
X-MS-TrafficTypeDiagnostic: DS7PR03MB5591:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB55915B25EDCD5D68DDBA4C608F7B9@DS7PR03MB5591.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ec+SsOJojLakCyvyrDxvvpKBhc736buEVp2Jm0GkkGI1JS6dF9vG9s0xEl9PiqaV+LsShkF0L2uM5SMMk4utPevU84bnfXyR/xoSAXg52rGlYtEIe+zDcF+oavaIINAFfPUybPb0y/ooO1faZqnwsI55TOu/8vWSfh2gaW3JRZQfypicFSm8d0TUUYNujCMZBHkMcFYX5h8xxs8VDAH16krcCRzB6EkrB8di/u3mm+gssT+4fenzhQLkgou2g7AuoNY5ucXeSrTiTTE0ixsuhxLMzVPQLrzW2CEFmySHIUGOJwBC3bCFcG2uWAjFzsFmz9elHB+63J66pUgJqqh2xd76jlCT6PDrRbRarHVwrtDc0tK+NWOFrn8dkqm+rkFJGgmN3IWKGsxxAYS44yNObtu/LeP3Q/nKZF6TfjOeXX3WwBGz76RneZq3DP0aPdNmlf2Osg0TR5KanKtDFZ7eRZwD6FYeE3/JNRXoIf1dxvb5he9TdSVjNE3pMeEUBJodk2gMtXqTJLNMWdIblUoZ7jYQlnVkKmheYQCDdBNGLtJin5YYWC8DBnvoxUkAkdSTygvOovxnM6FQ4Zvl5871jYNrJZ8HUA4uYO0RRnwU/QvN2cYyrzUCZMFgYNTYz9ZL2dnnUQScinBaG/AFbAZmrmQccaLDkhjtgUQt8F1AmaE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(366004)(346002)(136003)(396003)(39850400004)(54906003)(86362001)(316002)(38100700001)(85182001)(66556008)(6862004)(478600001)(6636002)(186003)(6496006)(8936002)(26005)(4326008)(53546011)(9686003)(33716001)(6486002)(66946007)(6666004)(16526019)(8676002)(5660300002)(2906002)(956004)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?YVkzQXJaZ1RuVTRIc1I0dz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 1125c19e-7626-47b7-8b23-08d8f4eade4e
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 08:48:06.4229
 (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: 7fEMHS8be/3w1ZtBodqoG4pUgM1KLddxNPDK3ukQCGbF9kOrJ7svJFjhyg45ZoUcw2rwX2R2aH+FwYVisBZsdw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5591
X-OriginatorOrg: citrix.com

On Wed, Mar 31, 2021 at 09:10:13PM +0100, Andrew Cooper wrote:
> On 23/03/2021 09:58, Roger Pau Monne wrote:
> > Introduce an opaque type that is used to store the CPUID and MSRs
> > policies of a domain. Such type uses the existing cpu_policy structure
> > to store the data, but doesn't expose the type to the users of the
> > xenguest library.
> >
> > Introduce an allocation (init) and freeing function (destroy) to
> > manage the type.
> >
> > Note the type is not yet used anywhere.
> >
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> >  tools/include/xenctrl.h         |  6 ++++++
> >  tools/libs/guest/xg_cpuid_x86.c | 28 ++++++++++++++++++++++++++++
> >  2 files changed, 34 insertions(+)
> >
> > diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
> > index e91ff92b9b1..ffb3024bfeb 100644
> > --- a/tools/include/xenctrl.h
> > +++ b/tools/include/xenctrl.h
> > @@ -2590,6 +2590,12 @@ int xc_psr_get_domain_data(xc_interface *xch, uint32_t domid,
> >  int xc_psr_get_hw_info(xc_interface *xch, uint32_t socket,
> >                         xc_psr_feat_type type, xc_psr_hw_info *hw_info);
> >  
> > +typedef struct cpu_policy *xc_cpu_policy_t;
> > +
> > +/* Create and free a xc_cpu_policy object. */
> > +xc_cpu_policy_t xc_cpu_policy_init(void);
> > +void xc_cpu_policy_destroy(xc_cpu_policy_t policy);
> > +
> >  int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
> >  int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
> >                            uint32_t *nr_features, uint32_t *featureset);
> > diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
> > index 9846f81e1f1..ade5281c178 100644
> > --- a/tools/libs/guest/xg_cpuid_x86.c
> > +++ b/tools/libs/guest/xg_cpuid_x86.c
> > @@ -659,3 +659,31 @@ out:
> >  
> >      return rc;
> >  }
> > +
> > +xc_cpu_policy_t xc_cpu_policy_init(void)
> > +{
> > +    xc_cpu_policy_t policy = calloc(1, sizeof(*policy));
> > +
> > +    if ( !policy )
> > +        return NULL;
> > +
> > +    policy->cpuid = calloc(1, sizeof(*policy->cpuid));
> > +    policy->msr = calloc(1, sizeof(*policy->msr));
> > +    if ( !policy->cpuid || !policy->msr )
> > +    {
> > +        xc_cpu_policy_destroy(policy);
> > +        return NULL;
> > +    }
> > +
> > +    return policy;
> > +}
> > +
> > +void xc_cpu_policy_destroy(xc_cpu_policy_t policy)
> > +{
> > +    if ( !policy )
> > +        return;
> > +
> > +    free(policy->cpuid);
> > +    free(policy->msr);
> > +    free(policy);
> > +}
> 
> Looking at the series as a whole, we have a fair quantity of complexity
> from short-lived dynamic allocations.
> 
> I suspect that the code would be rather better if we had
> 
> struct xc_cpu_policy {
>     struct cpuid_policy cpuid;
>     struct msr_policy msr;
>     xen_cpuid_leaf_t leaves[CPUID_MAX_SERIALISED_LEAVES];
>     xen_msr_entry_t msrs[MSR_MAX_SERIALISED_ENTRIES];
>     /* Names perhaps subject to improvement */
> };
> 
> and just made one memory allocation.
> 
> This is userspace after all, and we're taking about <4k at the moment.
> 
> All operations with Xen need to bounce through the leaves/msrs encoding
> (so we're using the space a minimum of twice for any logical operation
> at the higher level), and several userspace-only operations use them too.

We would still need to do some allocations for the system policies,
but yes, it would prevent some of the short-lived allocations. I
didn't care much because it's all user-space, but removing them will
likely make the code simpler.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:01:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:01:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104200.199008 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtCK-0000KX-Hj; Thu, 01 Apr 2021 09:01:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104200.199008; Thu, 01 Apr 2021 09:01:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtCK-0000KQ-Dx; Thu, 01 Apr 2021 09:01:04 +0000
Received: by outflank-mailman (input) for mailman id 104200;
 Thu, 01 Apr 2021 09:01:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRtCJ-0000KL-WD
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:01:04 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 585d9682-affb-4431-863e-9da158275984;
 Thu, 01 Apr 2021 09:01: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: 585d9682-affb-4431-863e-9da158275984
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617267661;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=HlDFjEgLUu+h8qOLdpW3m//3hH3Zngbb3AnmDpjWIG0=;
  b=LMJwGS2D2qfKP7H7qEC3HVTJn2mWwbFRaFYb2v5h2tkR/aqJpbJFYbVC
   oJy7P39hm/jatGugTve/PQLvj1C2waEQCh2cTO9Mm3l5ShoKQQTvGv24O
   Ed3XTUB20mgAUHFMIHCIYTNRcW9X5GD5h/Fvq2PNseO0ZTyEFpePi24KL
   s=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: WunBr5vtlhzG6tTeZRB7xEZxbL5R2UzpuFrkMdE4jq0Qf6eGfEAYbMAEqqouDnPKGLeCiVe025
 KGUgPg6U+FBFJZ1JIHzpX2DW35XHI9BfqaVAnV6HEl+uulq4I9W1swA1HYUtMnctR4sFJCeojw
 VNHXA8LqKO80XUK538ZV+QmHWTPVYuwEevKRvXGx2uVveKVOM3spyP/075+Rc83E0KJuJ2yxIZ
 11Ay2DMKB4/YYFlhBdqhHmJ63nIDjtZTFLXI89lYJemfPArsHOE5xAVlM/uYQi9U7/XD2aO0Fz
 l14=
X-SBRS: 5.2
X-MesageID: 40531267
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:U1sb5axfQz+ruIVTxDlfKrPxnO4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmqJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheTysd07o
 0lSaR3DbTLYGRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRCp1IxS0RMHf9LmRdQg5aCZ0lUL
 ed/NNAvTq8eXIRB/7LfEUtde7FutHNidbaehYAHREq802jijmv5b78HXGjr2ojehlIxqov9n
 WArhzh6syYwoqG4zL/90uW1ZRZn9P91sBObfbjtuE5Iijh4zzYBrhJdKaFuFkO0YSSwXYs1O
 LBuhIxe/l0gkmhAl2dhTvI903e3C0163nkoGXo8UfLhcDiXjo1B45gqOtiA2LkwnEttt19z6
 5Htljx3/E8bWKi7VbAzuPFWB1wmk2/rWBKq59qs1VlXZYDc7gUlIQD/SpuYeY9NRjn44MqGv
 QGNrC72N9qdzqhHhTkl1gq6tmtUnMvJwyBU0gPt+eEugIm4kxR/g82wtcSkWwH8494Y55Y5/
 7cOqAtr71WSNQKBJgNSNspcI+SMCjgUBjMOGWdLRDOE7wGAWvEr9rS7K8u7O+nVZQUxPIJ6d
 v8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwbz4Rlu5XnLYCbcRGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJgwxD+YZ9PMnMTOfdl++oTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8tRz72CMJc7l26e3PxjRTLMkmdOHDXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHljv8UNDQ
 5DCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PgQcLNkjzYIsSotn3QxEX4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dkWXkmUUv3DPa5sHgKWM6YPEd/oDf9gbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgqocVCuHZf9xVmxyqPsZQlHLauSyn1IISb0peewTrfd+cgA4oSTYRrE
 Z26bUjjL2JnivqFXEym90iMFpHaH2eBZVPCAjtXvQSppnbPCVLCUuajz2TjB8+Pk7n7V8biG
 DaISqIQv3TGVZGtndE0qHlzUNsegymDjFNQ0E/lbc4OXXNu3513+POXKa13meLQnYpw+0WMl
 j+EHAvCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N5vJ3Gm2FYGOnaYaPvNd8Zp/LuryuusTXe
 /3QX7SEBrIT8cSnyCFrHcsPyd57EQ+mfTzwRv/8SyW2mU8Dfe6GiURe5grZ/Wnq07qSPaD3M
 8n0ZYbve6sPn7wbdDD46fNdDJHIg7Sp2nzb+xAk+EhgYsC8J9IW7/cWn/08VsC+jMUBsL9jl
 kfT6R2+6qpAP4mQ+UiPwZiumM0n9GOJnYxugP4AuUCbUgg5kWrSu+h0v7tk/4TGUWPqwv7BE
 mH/wBc9/nDWTGf1bRyMdNGHU1mLGw94m9l5uWMasn5DxirbfhK+DOBQzWAWY4YbKiOArMLqB
 lmp/mOgu+MbiL9nCTdpyFyLK4L02GpR6qJcU+xMN8N19yxIlKXhKS2pOa1kTfsUDO+L30iur
 ctTz1YUu1zzh84jIM21SCuSqv45mId+mEung1PpxrKwYip4GDSAEdcFxbW668mBAVuDg==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40531267"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y9WRa342OOHmO8WJh0qcthcu29jAAm7Tu1UMPyAMy9Tfz43lRp9Q/uqgZI28pbQgHrylJRnqawtAsUBpyOYvQ5EpYgRJHrycrxEAykbDojBGqhMxhIaB1Us83GQ2tEyf8E9zGHMwWBzEUG7PbxldHki8mkfMdLQ1gHUqwLQW7z7fZP3joErKD6mx+ef40vkhTnaHuOFyIPmvKkyGgJlO6T05JqyjYwoya28KQqOTpDe5qQ1FgbbL5GPXYCi7fulVPKlyX/L1fBS+V0XScjb6mDV4ISutkYFuMctDm1cv3sF132Fa+ffDh+iCwR+urkPNoeqo1yTiU58kroSnBdrNyA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qEoRPbqbDx09jsw9MPEd1Mx3j080F815Z6eTMvjOSQY=;
 b=GWjjqmateYPbqJBjXZAcvSwofWXudVVqh/p/a/jP1j6fOofDzIbO5b29+DDMwpcM5Z9FS0nujkDbX6JRzOt3gNkCOayPbAZPxRGsOGrY9O72qhKE8migtMPSJZcNUgbxt1cjX8S9KWFBfIuGytacUuDJlCnbirPrg7WDZyy2TCqk1U9eCjBljJWjZsAyE6gLPKVjw7GbL6BFU5f/2h1W6IVEZ4DZYHQWRZ3lahgkSWDMvR9Zx+yHQKP+4VCAnyVAShsk4OErNQuHwYMcAviB9HIg4uk3G1SoPGwtcF/ZNBBRou+a3VhyYrbtiqGAvv2p16kgDC69JeodKz4prpR52A==
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=qEoRPbqbDx09jsw9MPEd1Mx3j080F815Z6eTMvjOSQY=;
 b=TdJuzfE7pG48OdXd/WkY2ViiAcVq0gFZNCzaX/KO4yTCet86Urj/YPWeiUhq034GJ20CVND4ZhKFhyjQil7uzJLaqJKRyMwmit9bnJcF0DEewcFx6nRF3qq2enEchVwoldKzaozSnjZA4xricGBBMvEn31ocrB5S38GEjEI6ef0=
Date: Thu, 1 Apr 2021 11:00:53 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>, Ian Jackson <iwj@xenproject.org>
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>, Dario Faggioli <dfaggioli@suse.com>
Subject: Revert NR_CPUS=1 fix from 4.15 (was: Re: [PATCH] fix for_each_cpu()
 again for NR_CPUS=1)
Message-ID: <YGWLxey5nZeafUbB@Air-de-Roger>
References: <4d993e67-2bdf-9ac3-f78e-daf279642de1@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <4d993e67-2bdf-9ac3-f78e-daf279642de1@suse.com>
X-ClientProxiedBy: MR2P264CA0111.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::27) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d1f64f75-558e-43fa-ff53-08d8f4ecaad4
X-MS-TrafficTypeDiagnostic: DM6PR03MB4538:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4538FE1E52DF1B40AAAEE4048F7B9@DM6PR03MB4538.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: xAZhdw78ToqYaOWGPihY51+AJ6h4QRs5UKrqP2S/0awhnLwergxEYz0uSI0hg2IXARXZG91KDPWqUGSdPqN4/08PATKrmfffc1oVbCkAGTnZT7kMh5nEx31e45rmw71yk/aJF+sz1GXWsae/Btlcq+n7zonp08lg1spUxc8JNtSLvAvrJdP1q9P5t8RvJzSk0j8NcH/RFMbLEDVm7WR8N91iQP79TmyawCVgproBdmhNtMGdMGzz8/emkhrdHZHIX3D1J4ajafi7OguMOGl2U13mpePxCaWwPSd99ezfPtEENRtBPypaxtCP+q+wUnmkZzqmKbI9NeL0hllia+Tg0oHvQ5hGAxQ7AEQ4WKg0BjVDVSnyxiiH7Km+Q12selPYeRMGmjnkZqghLIQsSBak4tf5V5WpHxeJu6WZkPh2wO6yYKSuH3yXfXztoPGjiQqu2x+II4xB9iNo6uKplHCVwTrxvCf+FVJOzRE9Gg1OstWKByHgmn3v8ttuugcwpSBFq8bxSAgIeWdAGbeQVJiEycICXJSI6i7XXLW7hYgDBtBde/RDJmdDTv/xQcjJywX8VLQ9LhCVJDQqBJpIOVPZt6zb9svMD4Ad4MZxwc/3EPgqFzpXISI7oHCCp5ToNeraHvfXF0xUXdjzBRpy06fEK3XCgILUpwlp9o/ed4mO+hY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(346002)(39850400004)(136003)(376002)(396003)(38100700001)(33716001)(6666004)(316002)(85182001)(86362001)(9686003)(6496006)(478600001)(66946007)(83380400001)(5660300002)(8676002)(110136005)(66556008)(66476007)(6486002)(2906002)(4326008)(26005)(8936002)(16526019)(54906003)(186003)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?aVdYb3JQWFhia2ZnQ0hZZz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d1f64f75-558e-43fa-ff53-08d8f4ecaad4
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 09:00:59.0381
 (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: irR5BWMV1MAGTGMAjC4dBq2L/iwzkzt7dOxaWrcodD4xVTADuFkxbmwiXiLaZxXoOgJ3M85smjdz3QGGzPAXHA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4538
X-OriginatorOrg: citrix.com

On Wed, Mar 31, 2021 at 04:52:47PM +0200, Jan Beulich wrote:
> Unfortunately aa50f45332f1 ("xen: fix for_each_cpu when NR_CPUS=1") has
> caused quite a bit of fallout with gcc10, e.g. (there are at least two
> more similar ones, and I didn't bother trying to find them all):
> 
> In file included from .../xen/include/xen/config.h:13,
>                  from <command-line>:
> core_parking.c: In function ‘core_parking_power’:
> .../xen/include/asm/percpu.h:12:51: error: array subscript 1 is above array bounds of ‘long unsigned int[1]’ [-Werror=array-bounds]
>    12 |     (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]))
> .../xen/include/xen/compiler.h:141:29: note: in definition of macro ‘RELOC_HIDE’
>   141 |     (typeof(ptr)) (__ptr + (off)); })
>       |                             ^~~
> core_parking.c:133:39: note: in expansion of macro ‘per_cpu’
>   133 |             core_tmp = cpumask_weight(per_cpu(cpu_core_mask, cpu));
>       |                                       ^~~~~~~
> In file included from .../xen/include/xen/percpu.h:4,
>                  from .../xen/include/asm/msr.h:7,
>                  from .../xen/include/asm/time.h:5,
>                  from .../xen/include/xen/time.h:76,
>                  from .../xen/include/xen/spinlock.h:4,
>                  from .../xen/include/xen/cpu.h:5,
>                  from core_parking.c:19:
> .../xen/include/asm/percpu.h:6:22: note: while referencing ‘__per_cpu_offset’
>     6 | extern unsigned long __per_cpu_offset[NR_CPUS];
>       |                      ^~~~~~~~~~~~~~~~

At this point, should be consider reverting the original fix from the
4.15 branch, so that we don't release something that's build broken
with gcc 10?

Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:13:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:13:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104203.199020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtNy-0001Ht-Hi; Thu, 01 Apr 2021 09:13:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104203.199020; Thu, 01 Apr 2021 09:13:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtNy-0001Hm-EM; Thu, 01 Apr 2021 09:13:06 +0000
Received: by outflank-mailman (input) for mailman id 104203;
 Thu, 01 Apr 2021 09:13:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRtNx-0001Hh-7W
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:13:05 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8268550a-75d6-4898-9536-6747e970796d;
 Thu, 01 Apr 2021 09:13: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: 8268550a-75d6-4898-9536-6747e970796d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617268383;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=LiR6CcfMz38H6AH3iC600Pju/Q4fqaW6qXchljKs1/k=;
  b=b73Bv9hQeBMKvdEWj0f5RzSYzB1g3tlhNJu6o/UiwHLKs0Qg0EYu47iz
   sE0yqlaCdI96Cqe5vOpFGf1qWtpvhVnQGH9A/whD9Z2OdsLc/tYnEd0/Z
   L0hBkHKC322et1AYNsgnTMIMt4+KbYGRxyOaD9vG+ET/SM9PGHLBnKDFE
   E=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: yOin2xhUPiG9rcEqeJg85pwO1j5MmEAv+Mw+8mo80L1iH7ZjAX3Bcs2B0dv4XLpD2reC82osrq
 mZgw5WxOS5SBJ+1BLotH/rgaKtaL18pxaWhGq+eQLjSbMR7wifs+UVMDBQrZSxe0gpsgz2w9TQ
 S4Hfa4tLuoP29OHLxApRvjyTMwagj0cr3NracDC0tYJcQwdy43X3LC+ypboyUKFlV8AqJMK0qU
 3HtXFF2sxAlyQgjV1e+Q1W2Ia6dW4iAfyqouoM5VLoLI9rGOa2BAeCFIszTrVguse8aRzKf8nA
 xl0=
X-SBRS: 5.2
X-MesageID: 40667943
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:bdQNVK9yEsJqE4OWDStuk+AOI+orLtY04lQ7vn1ZYxpTb8Ceio
 SSjO0WvCWVtB89UGwt8OrqBICuWnXZnKQe3aA0HZOPGDbro3GpKoYK1+rf6hntATf3+OIY9Y
 oIScdDIeb9B1R7ksr2iTPQe+oI+9Wf9bDtuOG29RpQZDt3YKJt5RoRMGimO3BxLTMrObMJUK
 OG5sxdpyexEE5nDfiGOg==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40667943"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ji8WuRR92PjjWwgnmBN0sCIzNklx+i8y3br/G6jNgp0lhFYtledXcWslHxU3BhyZUPOzaQ7buQEVMNkPdyHTiQxgtV41SNkmEIQuv5L7QxBZglmYkVIbuMhu6ROf4vwy3SA15YpnhDy1iEXTwRwLF6EEULarX/B74RLD0omCuT3tDUkeLUZ53UoaKI8sfK1lYwZKohmQZtgCe8k5VDQDv7irGIIRf/bjq2PheCIW7brWJ7X2HRkgPrh+nraH7MBwpwnnTrkK+1g2NKbphl9bQc1Ac1q77qlyzcn4Txq8XF6E8Z10PtdTHmzIzH/GqMi6od4a0jx8YTIELvc0UKnlsw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=F6xTik7cg0w5yMM+5ODaWnDwMfxiWiQ9Cpu9dj2GIqM=;
 b=JG99yIG3H4oqFfVSTSJ0zq/BKerlbYEWUgmZvnh4ov9sQUwAcquolhFWUNYkXPH8EbVaNBcEjS9UL0v3UzQZEcRUWemRzd2s+I2dWHMgtWFc4j6zSawt+720RVv+8h7XE48ZxtjGTU+Tgmy6jQLRMdXx0Dc6e9T+y6FSUuiPAnpm1z6XC/PlEqDXkhBpeyqQLvI6JJZJ8DX9cRzHDCZmcRHffYPv6270t7Yv2Rbv2zUmkpTH7I7wddARVfRa35wjuARzSAXQ6NcYn+iF3SIqjgOH59uAAoQWLMMSDdWgZPpEuqFLi589j6jXl13EPEIPUo9qn1ByyQ2jNCmDBBXsbg==
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=F6xTik7cg0w5yMM+5ODaWnDwMfxiWiQ9Cpu9dj2GIqM=;
 b=o9A2RWYmKa/5VCgcbXB6iJj0FGNAdhYfPuEKpj20yAcQxtVN3dmJbx+tQBa7df8x/xKlmaySMIxRzcN/EVXcOrSsSoyeSGMaWSiuiaXH/xwakL4Xl6yQeYfob5km6OSXkg/pGFFggm/Ypwq7NDvDPcPIgiOaMGpJPPQWVUsCEME=
Date: Thu, 1 Apr 2021 11:12:52 +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>, Wei Liu <wl@xen.org>, Paul Durrant
	<paul@xen.org>, Paul Durrant <pdurrant@amazon.com>,
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3 01/11] x86/hvm: drop vcpu parameter from vlapic EOI
 callbacks
Message-ID: <YGWOlHRvYTTy5wBh@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-2-roger.pau@citrix.com>
 <b4b66347-e06d-1c34-12cc-324f3097259a@suse.com>
 <1bc56db3-203d-1fa8-ad5c-68d97d584600@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <1bc56db3-203d-1fa8-ad5c-68d97d584600@citrix.com>
X-ClientProxiedBy: AM6PR10CA0037.EURPRD10.PROD.OUTLOOK.COM
 (2603:10a6:209:80::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4ca16840-e7cc-49a4-017c-08d8f4ee57de
X-MS-TrafficTypeDiagnostic: DM5PR03MB2489:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2489C831F182721277C57C238F7B9@DM5PR03MB2489.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: +gpL9/+jKQNnz7KMuMr3KaOxKOfPVqTlxSNuxVo+aAG66e4xs7weJ8woZwkDpEirW274k7OJZnIDrZqtDdKtaLLEMmTQZr2AYToMqE3bmmu5g2+dMbPN8s3CU9JJPqBdrSD3tysFwmgetV3kowOPwpxe13CE/HMl/MiAJCiKt5WUqJZ9JvBfwuP7YTVYDKNSBbLEABxF2YBlLqAcb4AoNgdhUFlSxWDkAOirQVN3sxGO09gH29QNLpFYwLY2ms8rz3neH80YZiGoZ+I8HEpwmoAofuDG+kLANKBkutyM8SlQMh1SaR21B7/Al9xb8jQC8MKoeA7KqENLV7BmjTcmRPTSMxag6wNMCUX+qmrkKkQMglSjc5MuWawgrgb9ufffiSlec4mk+lwuc9QaBZwFJQuD/P0HCE3+A+xTOdr0euvGUk1ovLgl2n2Q3uDQnGHJEEDRaBkHnci9AZ0KOKjUkhNZXgaWmTBkdg6XK57CS2o4XVxyUIuq9gkmJvPTZ06xqFmuNhfFzlQtGYwVCmkx5ci+sMcnCA4enkW67urewP5rCK0N1/GyTHcOpJUxtochBlQRFkkoCkVHmDpXWk+JpoOMyAi9XZ+jSQ52C5khx7hfJgHww7Rvxr4IZWIhVNnozwLHuca7uq0Iqx3cEx+IigPy/q94qfNWxoN4bXjDI84=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(366004)(376002)(346002)(396003)(39850400004)(6666004)(16526019)(956004)(86362001)(53546011)(5660300002)(9686003)(83380400001)(85182001)(2906002)(186003)(6496006)(478600001)(66476007)(8676002)(66556008)(66946007)(33716001)(6636002)(316002)(6486002)(38100700001)(4326008)(8936002)(54906003)(26005)(6862004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?TUpYVkpmMWJOQzJtRlU0QT09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ca16840-e7cc-49a4-017c-08d8f4ee57de
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 09:12:58.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: mcWL9cQzj3LyBnIq9w2boWASGM5lbWzcvrezDy1n1n2bnOiSzIPzkJjT+XUJ/0amRywt3C6DT0ylUHTXbAN1Qg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2489
X-OriginatorOrg: citrix.com

On Wed, Mar 31, 2021 at 05:24:24PM +0100, Andrew Cooper wrote:
> On 31/03/2021 17:02, Jan Beulich wrote:
> > On 31.03.2021 12:32, Roger Pau Monne wrote:
> >> EOIs are always executed in guest vCPU context, so there's no reason to
> >> pass a vCPU parameter around as can be fetched from current.
> >>
> >> While there make the vector parameter of both callbacks unsigned int.
> >>
> >> No functional change intended.
> >>
> >> Suggested-by: Paul Durrant <pdurrant@amazon.com>
> >> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> >> Reviewed-by: Paul Durrant <paul@xen.org>
> >> ---
> >> Changes since v1:
> >>  - New in this version.
> > I'm afraid the situation with viridian_synic_wrmsr() hasn't changed
> > since v2, and hence my previous comment still applies.
> 
> Only just spotted that line of reasoning.
> 
> Longterm, I do want to remove all the Viridian special cases, and handle
> all of the state via architectural mechanisms (cpu policy for static
> settings, and the existing MSR records for dynamic content).
> 
> A consequence of this cleanup is that guest_{rd,wr}msr() will be
> eventually be used to save/restore dynamic state in the migrate stream,
> which is why I've been engineering guest_{rd,wr}msr() to work for MSRs
> in "current || !scheduled" context.
> 
> As such, it is important to retain a vcpu pointer because it will not be
> current on the save/restore hypercalls, which execute in control domain
> context.

But you are never going to restore an HV_X64_MSR_EOI MSR, as such
should never be part of the migrate stream in the first place. It
doesn't have a value itself - it's only used as an alternative way to
EOI an interrupt.

I still think the EOIs will always be performed on the affected vCPU
context, but I don't want this discussion the block the current
series, so I'm just going to drop this patch.

Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:16:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:16:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104209.199032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtQp-0001Ru-4W; Thu, 01 Apr 2021 09:16:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104209.199032; Thu, 01 Apr 2021 09: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 1lRtQp-0001Rn-1W; Thu, 01 Apr 2021 09:16:03 +0000
Received: by outflank-mailman (input) for mailman id 104209;
 Thu, 01 Apr 2021 09:16:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRtQn-0001Rg-Ud
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:16:01 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 343f3375-e764-4e0b-8be3-543d6c93c60e;
 Thu, 01 Apr 2021 09:16: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: 343f3375-e764-4e0b-8be3-543d6c93c60e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617268560;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=VBigh4Jjc9bf+9Suh37vdMLsfns5kgMGZiGdO285b38=;
  b=XeQSH/G03LuwrZZL5hy//FBDrPtxAAD0zofIfGDbZbIIPsGtcC5nfMHW
   v3t/YMWLehaMrXU8HYiwPARo+Op3KHu5izIh2dP0O2HKqnLxvkRTukueP
   1GMh/NCBtQuvDF3B8bLE0OcWn1SdAQ9dZq0vKR54rphei0fn1DzGT59TB
   0=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: gzGQLHkO/6MaMEO8/Rl5ZRpIcQEyiGWPyUJDMgC7Wwomf7pk4e6+Tap+bQ1JKFU/YoOGacdU3o
 gR4tZqPonMXeMdnSw0rvA01S2Yw/MXBoyguVAFuwsxhAM/NBcvuEoV7jWllKr+whNKKGU189UZ
 KeJaQI5hACPqAPdJmXHOJIXsNxXp2M4oXj/Yi7izNhYjkiUV16xLwqJTn4T8zrKZDgXyCZS/Gp
 gCalMzbiGhLNCtPT0veTFq/vnQZLLVUyejPkcrivAw4pqk+r1vlJ768evqjON/tzyeECoLU7Ml
 YgU=
X-SBRS: 5.2
X-MesageID: 40668093
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:SgtE7K7A+HWNx6rT2QPXwRKBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3Xa6JJz/M0tLa6vNTOW3VeAAaNDyc/ZwzPmEzDj7eI178
 1dWoV3FdGYNzdHpOng5g3QKbgd6f2m1IztuuvE1XdqSmhRGsNdxiN0EBySHEEzZCQuP/oEPa
 GR7MZGuDasEE5/BqiGL0IIQvTZoJnznI/mCCRsOzcc9AKMgTm0gYSKcCSw4xF2aVJy6IZny0
 fpuUjT5qKvs/a0oyWsrVP73tBtt/bKjvdGDMyIoMAJJjvrkRbAXvUdZ5Sy+AobjcvqxFE2kM
 TdgxpIBbUO11rhOlubjDGo+w783C0g43XvoGXo/kfLkIjCax8RT+9i7LgpFifx2g4bk/xXlJ
 9v5Sa/saFaCBvR9R6Nn+TgZlVRuWef5UY5nfV7tQ05baIuLIV/gKY4501vHJIJDEvBmfsaOd
 grNs3a6fpMGGnqCUzxjy1qyNyoaHw5Ag2LdEgEotCUyDhbhhlCvjIl+PA=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40668093"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RLq87aEgwqtFtwpITzKBXImTeWcY2bUUeiyK8yhkh58g41RckDHo9XpE4bgJGOLH5Ha8psecVMlnTUbOzAy2rsLbk1Iv0fZ8K1rx93MkqEnaX3KJMct9wnxrxW4hm4jJjF3u/tB8Izgn14XPUxvvOranWs9GZUmQ52+OkmNzW4NAr3Ifbvw/n0SjL+e+UyR9mU5iEVFccxYL5jX6oE6T6VC7fDAa5gcicjO545EwyurIhjbc5TpH069i3YGc7p+YPOWTA3K/HluyfdSkO1yqCe1N/0fTSJISkfYwYnLUQXsG38M66Mk95u/AR3zspSMfuDkmxc5bD8cNWQxAaR7Hbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R+bvJqg/PbAj/zaIBp4Zsin11W4wJLOT6sVFvy9DVdI=;
 b=hHWq4I8ziMggBgY31mVBw+CMVxsvV8xQ8IMm5d3XsQQeEhnqznpSZQ+vZdMlCsEgTCiVjjiRiRlOyPNgwX4+RJYEaD+IuViwOLlGxwWZIN1QWJmH9BLCIr/zfJcgSMj/Im4W6WNIkAQC6ztgxJ1RBi2gpuQtw+vVsnArVUZmg0l6R2JWZAMGdk7drWvlrCsXP8eRapsejR6tKOOz67QSp16/6SZ+JHapiY4MrC/GEcDuoHE+0VIs+S4jiNzufNCTDurHTivhN2F1vqaemKbCoP+wmfzljU94L4TvWWJzFtQ0B47Gd96R/TeJFmt4RGkg2QjqB+1eXndWgl4zvm7c/Q==
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=R+bvJqg/PbAj/zaIBp4Zsin11W4wJLOT6sVFvy9DVdI=;
 b=q63sK+Y+Dv3sE98B2wdoWoYLtCnM/1/VIXnTyWmxwon+n6+FS7/MzFct9i3V1YVlFSivwSvejZTcziHeJEim/5mG0SWTvbVg5XQfGRVGcjpeDRV46rW9d7+mzZ72w9JQh4bu4Z+0L0sXU8YmDMD712qj8MvKn5k0aLDMaZDWYV0=
Date: Thu, 1 Apr 2021 11:15:52 +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>, "Paul
 Durrant" <paul@xen.org>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3 02/11] x86/hvm: drop domain parameter from
 vioapic/vpic EOI callbacks
Message-ID: <YGWPSF+zDWc4+slD@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-3-roger.pau@citrix.com>
 <b9a244b9-834d-4e41-3e39-504277b0c916@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <b9a244b9-834d-4e41-3e39-504277b0c916@suse.com>
X-ClientProxiedBy: MR2P264CA0032.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::20)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 9adb56d8-3bc8-42c7-2ac7-08d8f4eec273
X-MS-TrafficTypeDiagnostic: DM4PR03MB5965:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB59650DFF96AD89BDE924593E8F7B9@DM4PR03MB5965.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 4M66Opk2kC2KPa1R2GK3bQku/tAgD7h7qpGfwW0SOc2P9Fb2FlMAohYfC+viOxPw/RNx2kqyUSB5qjZxqwPIwDeB7Z0KjeEmB/8PFReyRz/xi+9wmua+KjagVC61EcYnpqxH5OUuBEThn7CuYXoTfLKF0JYxUjVP7thAEn2zJgNCWBT3g+qtaPltdQIXK8DAExzur1yWspB/9v8EJ6wLVWNXoIhAUB10fgBXXvEZdJqfn4uXRlS+DkIAWmZMmtPYu8cr08jrj4vtJDh/Xo6Epw9fRUOqYYL6nstS0U+cURnGB0baZ9SVFFCYziL7hDvOLO8IT5V9ctKh2U/wsCQ/gJt/Eedz6AaH2oGDuUXo+AiQNpamEouiaNy1TwA8qwLFGIsPzwKG1VReHWhXNWtT/3NJCIuaq45SbnucZCuVARqhM4VPfJX7TcbgeCc73Zy5ztrgJ2KGa+MULS8rsUz9bwdPzICshx5G4BFXuCq5oZusXk8uaIfkWxKoFSmOArIAf6NRSuGYaX7Wock+96nZvRY4enVkLLvC3aSuozaExExS9yKC7cnVEQ7LC0TwwEq0lgAsib228jiFyjXsu5GvR4H9KFrRpicofAZQVUVIKNP3sWVxl2Onj9rbbtdw9/dmuXip6xbAfsmBaMn+GqHxze0P+MCKoYH9l1TMseUkoGQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(396003)(346002)(136003)(376002)(39850400004)(366004)(38100700001)(26005)(4744005)(86362001)(16526019)(316002)(186003)(8676002)(4326008)(85182001)(6666004)(6916009)(5660300002)(6486002)(66946007)(83380400001)(2906002)(54906003)(6496006)(8936002)(956004)(33716001)(9686003)(66556008)(66476007)(478600001)(53546011);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?MmZmK3NsSXVhUzBPNk12dz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 9adb56d8-3bc8-42c7-2ac7-08d8f4eec273
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 09:15:57.5313
 (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: f6tFQVcA42ecJy4ojDI9lpPRYWh/gDQPj1ZMVjGrZEMwd3AmVTMb+9RAIFH1NoLIQGO6lhWcI17GvR1am+HXmg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5965
X-OriginatorOrg: citrix.com

On Wed, Mar 31, 2021 at 06:04:43PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:32, Roger Pau Monne wrote:
> > EOIs are always executed in guest vCPU context, so there's no reason to
> > pass a domain parameter around as can be fetched from current->domain.
> > 
> > No functional change intended.
> > 
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > Reviewed-by: Paul Durrant <paul@xen.org>
> > ---
> > Changes since v1:
> >  - New in this version.
> 
> Just to make it explicit - possibly same thing as with patch 1,
> depending on how exactly the issue there gets taken care of.

I don't think we have any scenario ATM where we allow EOI'ing of
interrupts from a different vCPU context, neither I can see us
allowing such in the future, but I don't want this discussion to block
the series, hence I'm going to drop this patch together with patch 1.

Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:26:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:26:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104214.199047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtaa-0002RZ-5c; Thu, 01 Apr 2021 09:26:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104214.199047; Thu, 01 Apr 2021 09: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 1lRtaa-0002RS-1m; Thu, 01 Apr 2021 09:26:08 +0000
Received: by outflank-mailman (input) for mailman id 104214;
 Thu, 01 Apr 2021 09:26:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtaZ-0002RN-Ni
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:26:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 104cbf2f-9beb-464f-8526-1937eb753ffe;
 Thu, 01 Apr 2021 09:26:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C586DAE6D;
 Thu,  1 Apr 2021 09:26: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: 104cbf2f-9beb-464f-8526-1937eb753ffe
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617269163; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=v6lOjNU+svs0+TiXpKu5imyHz2geYNGSrUhOwv1fq+E=;
	b=OTbD65dcOzWEIPi7d81zK/m578CscN/JdVT+gZc7eVdyFDEZ7Ha86zeHjFxYdqlmhAB0sL
	BQW2z1U4GzCv1HexBvwEMr8+t3+Cx2a9UVmhEF5rzijiVS4jgSetevcQbkItlONkVlUdpA
	mxs24bGG/ml4GqGE7+F6qjXnkbvh5RU=
Subject: Re: Revert NR_CPUS=1 fix from 4.15 (was: Re: [PATCH] fix
 for_each_cpu() again for NR_CPUS=1)
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Ian Jackson <iwj@xenproject.org>
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>,
 Dario Faggioli <dfaggioli@suse.com>
References: <4d993e67-2bdf-9ac3-f78e-daf279642de1@suse.com>
 <YGWLxey5nZeafUbB@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <59387a2d-e28d-4e12-6b91-5df464e8ab9a@suse.com>
Date: Thu, 1 Apr 2021 11:26:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGWLxey5nZeafUbB@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 11:00, Roger Pau Monné wrote:
> On Wed, Mar 31, 2021 at 04:52:47PM +0200, Jan Beulich wrote:
>> Unfortunately aa50f45332f1 ("xen: fix for_each_cpu when NR_CPUS=1") has
>> caused quite a bit of fallout with gcc10, e.g. (there are at least two
>> more similar ones, and I didn't bother trying to find them all):
>>
>> In file included from .../xen/include/xen/config.h:13,
>>                  from <command-line>:
>> core_parking.c: In function ‘core_parking_power’:
>> .../xen/include/asm/percpu.h:12:51: error: array subscript 1 is above array bounds of ‘long unsigned int[1]’ [-Werror=array-bounds]
>>    12 |     (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]))
>> .../xen/include/xen/compiler.h:141:29: note: in definition of macro ‘RELOC_HIDE’
>>   141 |     (typeof(ptr)) (__ptr + (off)); })
>>       |                             ^~~
>> core_parking.c:133:39: note: in expansion of macro ‘per_cpu’
>>   133 |             core_tmp = cpumask_weight(per_cpu(cpu_core_mask, cpu));
>>       |                                       ^~~~~~~
>> In file included from .../xen/include/xen/percpu.h:4,
>>                  from .../xen/include/asm/msr.h:7,
>>                  from .../xen/include/asm/time.h:5,
>>                  from .../xen/include/xen/time.h:76,
>>                  from .../xen/include/xen/spinlock.h:4,
>>                  from .../xen/include/xen/cpu.h:5,
>>                  from core_parking.c:19:
>> .../xen/include/asm/percpu.h:6:22: note: while referencing ‘__per_cpu_offset’
>>     6 | extern unsigned long __per_cpu_offset[NR_CPUS];
>>       |                      ^~~~~~~~~~~~~~~~
> 
> At this point, should be consider reverting the original fix from the
> 4.15 branch, so that we don't release something that's build broken
> with gcc 10?

Well, I didn't propose reverting (or taking this fix) because I think
build breakage is better than runtime breakage. But in the end, Ian,
it's up to you.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:28:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:28:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104217.199059 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtcs-0002Z8-Iv; Thu, 01 Apr 2021 09:28:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104217.199059; Thu, 01 Apr 2021 09: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 1lRtcs-0002Z1-Ff; Thu, 01 Apr 2021 09:28:30 +0000
Received: by outflank-mailman (input) for mailman id 104217;
 Thu, 01 Apr 2021 09:28:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtcr-0002Yw-NN
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:28:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e08efd25-6b68-486d-8a30-af0fe2fcb1fd;
 Thu, 01 Apr 2021 09:28:28 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 00FA9AE6D;
 Thu,  1 Apr 2021 09:28: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: e08efd25-6b68-486d-8a30-af0fe2fcb1fd
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617269308; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mkdbBrVK/p16/Dm78k97AvAwNFvaoVHKkhdL9CZCm9Q=;
	b=eK/Hclm3fC6Au6C5zJJvnkeIc7uy4wGD2fJWEloBmb5hrwcV2Ms+KAhbgu67osbZM1QSLQ
	5gAi8UcdUwrlcQMQ3z47Dp0pYXIbgrnq4zC/uwnj2y+tAZrgW20UYhi2LWC+rc4+gIpnQb
	tiSW/xKhtVldVZoQic7sGluKgw8QoHE=
Subject: Re: [PATCH v3 02/11] x86/hvm: drop domain parameter from vioapic/vpic
 EOI callbacks
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>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-3-roger.pau@citrix.com>
 <b9a244b9-834d-4e41-3e39-504277b0c916@suse.com>
 <YGWPSF+zDWc4+slD@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <74913386-ba01-182b-464a-6a5c5c5816ff@suse.com>
Date: Thu, 1 Apr 2021 11:28:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGWPSF+zDWc4+slD@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 11:15, Roger Pau Monné wrote:
> On Wed, Mar 31, 2021 at 06:04:43PM +0200, Jan Beulich wrote:
>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>> EOIs are always executed in guest vCPU context, so there's no reason to
>>> pass a domain parameter around as can be fetched from current->domain.
>>>
>>> No functional change intended.
>>>
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>> Reviewed-by: Paul Durrant <paul@xen.org>
>>> ---
>>> Changes since v1:
>>>  - New in this version.
>>
>> Just to make it explicit - possibly same thing as with patch 1,
>> depending on how exactly the issue there gets taken care of.
> 
> I don't think we have any scenario ATM where we allow EOI'ing of
> interrupts from a different vCPU context, neither I can see us
> allowing such in the future, but I don't want this discussion to block
> the series, hence I'm going to drop this patch together with patch 1.

Well, having seen also your reply to Andrew wrt patch 1, I just wanted
to clarify that dropping the two patches isn't the only option. Making
Viridian code resilient in this regard might be another one.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:43:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:43:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104222.199074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtrG-0004J7-Va; Thu, 01 Apr 2021 09:43:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104222.199074; Thu, 01 Apr 2021 09: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 1lRtrG-0004J0-SI; Thu, 01 Apr 2021 09:43:22 +0000
Received: by outflank-mailman (input) for mailman id 104222;
 Thu, 01 Apr 2021 09:43:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtrF-0004Iv-Gv
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:43:21 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2edd54c0-d6de-4dd1-8293-7e1c83934915;
 Thu, 01 Apr 2021 09:43:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CE97EAF5B;
 Thu,  1 Apr 2021 09:43:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2edd54c0-d6de-4dd1-8293-7e1c83934915
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270199; 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=GzLeFqJW3FBoJkiPqpRmFDkCHlruQu4pViPhOQvIlrs=;
	b=DHoLZMWZihyCUJtmQAs9jYGKlq3IHGJ+ZnNBVYMMVxiY76QVdKk4PdH+mG1WsoH09ZX1/W
	6VEey810g7YeCNRSOR0SdjdjaHE+e3aVdPUaatOuO99lKTCoFsmqvTiEVKoaM0aimW+qEH
	Ga5PxBWn5CV6IhmZ8/FZ7g+TPp2MKXU=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 0/8] x86/EFI: build adjustments
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>
Message-ID: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Date: Thu, 1 Apr 2021 11:43:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

So far we've taken care of just the immediate breakage caused by
binutils 2.36. But we can also take advantage, in particular to
avoid "manually" creating base relocations for xen.efi. Since it
was requested and is possible with up-to-date binutils, inclusion
of debug info in xen.efi is another part here. The other changes
here are cleanup related to both the work here as well as the one
to make binutils fit for our purposes.

1: EFI: drop stale section special casing when generating base relocs
2: EFI: sections may not live at VA 0 in PE binaries
3: EFI: program headers are an ELF concept
4: EFI: redo .reloc section bounds determination
5: drop use of prelink-efi.o
6: EFI: avoid use of GNU ld's --disable-reloc-section when possible
7: EFI: keep debug info in xen.efi
8: EFI: don't have an overly large image size

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:44:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:44:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104225.199085 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtsH-0004PQ-Au; Thu, 01 Apr 2021 09:44:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104225.199085; Thu, 01 Apr 2021 09:44:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtsH-0004PJ-6I; Thu, 01 Apr 2021 09:44:25 +0000
Received: by outflank-mailman (input) for mailman id 104225;
 Thu, 01 Apr 2021 09:44:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtsF-0004OP-5T
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:44:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f93c7e43-ff02-4be7-8954-a579a24e35d6;
 Thu, 01 Apr 2021 09:44:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 97E67AEA6;
 Thu,  1 Apr 2021 09:44: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: f93c7e43-ff02-4be7-8954-a579a24e35d6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270261; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=T3WVBUNZlwkjFctAwYGueyDD3YPIMV4/P6HSt5pzgHA=;
	b=NUcZU/GoXoDLtUTyg8NorkhNCs9ED7+rX+WfQPPsdOcH6v1cFfA9JS/pISL1iVJFY84d5g
	sUE62iTiyq9PFQdB1700hkojGl0u5V+cOIAp5qAEfX+tC6Ejt8VnYof4AVjN0OR4o5UYZY
	ysql3Jogls1tBttB2PzqOMxx/2nPu6s=
Subject: [PATCH 1/8] x86/EFI: drop stale section special casing when
 generating base relocs
From: Jan Beulich <jbeulich@suse.com>
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>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <63ad859f-82f0-62ea-5e55-9c6d3db6816e@suse.com>
Date: Thu, 1 Apr 2021 11:44:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

As of commit a6066af5b142 ("xen/init: Annotate all command line
parameter infrastructure as const") .init.setup has been part of .init.
As of commit 544ad7f5caf5 ("xen/init: Move initcall infrastructure into
.init.data") .initcall* have been part of .init. Hence neither can be
encountered as a stand-alone section in the final binaries anymore.

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

--- a/xen/arch/x86/efi/mkreloc.c
+++ b/xen/arch/x86/efi/mkreloc.c
@@ -346,9 +346,7 @@ int main(int argc, char *argv[])
          * Don't generate relocations for sections that definitely
          * aren't used by the boot loader code.
          */
-        if ( memcmp(sec1[i].name, ".initcal", sizeof(sec1[i].name)) == 0 ||
-             memcmp(sec1[i].name, ".init.se", sizeof(sec1[i].name)) == 0 ||
-             memcmp(sec1[i].name, ".buildid", sizeof(sec1[i].name)) == 0 ||
+        if ( memcmp(sec1[i].name, ".buildid", sizeof(sec1[i].name)) == 0 ||
              memcmp(sec1[i].name, ".lockpro", sizeof(sec1[i].name)) == 0 )
             continue;
 



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:44:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:44:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104227.199098 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtsf-0004Vf-Hw; Thu, 01 Apr 2021 09:44:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104227.199098; Thu, 01 Apr 2021 09: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 1lRtsf-0004VY-Ep; Thu, 01 Apr 2021 09:44:49 +0000
Received: by outflank-mailman (input) for mailman id 104227;
 Thu, 01 Apr 2021 09:44:48 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtsd-0004VQ-Um
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:44:47 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fe3208f1-ecda-432e-992b-d7c37b5347b1;
 Thu, 01 Apr 2021 09:44:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 103B1AEB6;
 Thu,  1 Apr 2021 09:44: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: fe3208f1-ecda-432e-992b-d7c37b5347b1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270286; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=DTY3+YpVaKr0M5lxEi40/UGmLAUNw4TGq/wK3vHEKos=;
	b=RMb8FYQPGQ4y2QUArjxQ8e8E9Ki9Di/g32LAqqoALfhUEAYYcyRsoG6ubbRT+syvdahlPu
	lXOaLpqN4iKXypG7Dci1xCZ5NpTMPOqT1r5+HjsoJ3UbWNQVFfiwMyVHhWGHGcLdoHIwBu
	gVDLQzqmktH+1xJiyWBW2AilaEM3PEc=
Subject: [PATCH 2/8] x86/EFI: sections may not live at VA 0 in PE binaries
From: Jan Beulich <jbeulich@suse.com>
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>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
Date: Thu, 1 Apr 2021 11:44:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
least 2.36 would silently truncate the (negative) difference when a
section is placed below the image base. Such sections would also be
wrongly placed ahead of all "normal" ones. Since, for the time being,
we build xen.efi with --strip-debug anyway, .stab* can't appear. And
.comment has an entry in /DISCARD/ already anyway in the EFI case.

Because of their unclear origin, keep the directives for the ELF case
though.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
It's certainly odd that we have stabs section entries in the script, but
no Dwarf ones.

--- a/xen/arch/x86/xen.lds.S
+++ b/xen/arch/x86/xen.lds.S
@@ -347,6 +347,7 @@ SECTIONS
 #endif
   }
 
+#ifndef EFI
   /* Stabs debugging sections.  */
   .stab 0 : { *(.stab) }
   .stabstr 0 : { *(.stabstr) }
@@ -355,6 +356,7 @@ SECTIONS
   .stab.index 0 : { *(.stab.index) }
   .stab.indexstr 0 : { *(.stab.indexstr) }
   .comment 0 : { *(.comment) }
+#endif
 }
 
 ASSERT(__2M_rwdata_end <= XEN_VIRT_END - XEN_VIRT_START + __XEN_VIRT_START -



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:45:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:45:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104230.199110 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtt2-0004cl-Vj; Thu, 01 Apr 2021 09:45:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104230.199110; Thu, 01 Apr 2021 09:45: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 1lRtt2-0004cc-Ru; Thu, 01 Apr 2021 09:45:12 +0000
Received: by outflank-mailman (input) for mailman id 104230;
 Thu, 01 Apr 2021 09:45:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtt1-0004cP-P5
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:45:11 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fdc01e63-a97f-4d35-a452-27dddd54c2a6;
 Thu, 01 Apr 2021 09:45:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 25BD5AEC2;
 Thu,  1 Apr 2021 09:45: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: fdc01e63-a97f-4d35-a452-27dddd54c2a6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270310; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=zGF5/no4yyDySevuLNlCcruxFje6e6BtvrRRyJsweIc=;
	b=QUl1VmTsvmGOtkCxbMHlKH6XDNRr9b7AwnLSaHzocfueemup8rnq/nu2jKjyszFeQrYutJ
	SNbJT0+x7uqF1oj9w54L+o8q/r+E8kMivj2Flaicqsdws1y3n5zm31BM/OcOUyyxXZN7j3
	lkLiPaFKQGTkXhj/dR9EGEPor/nN7T8=
Subject: [PATCH 3/8] x86/EFI: program headers are an ELF concept
From: Jan Beulich <jbeulich@suse.com>
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>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <017478f9-76d2-4dc4-de93-b662c4552968@suse.com>
Date: Thu, 1 Apr 2021 11:45:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While they apparently do no harm when building xen.efi, their use is
potentially misleading. Conditionalize their use to be for just the ELF
binary we produce.

No change to the resulting binaries.

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

--- a/xen/arch/x86/xen.lds.S
+++ b/xen/arch/x86/xen.lds.S
@@ -34,13 +34,19 @@ OUTPUT_FORMAT(FORMAT, FORMAT, FORMAT)
 
 OUTPUT_ARCH(i386:x86-64)
 
+#ifndef EFI
 PHDRS
 {
   text PT_LOAD ;
-#if (defined(BUILD_ID) || defined (CONFIG_PVH_GUEST)) && !defined(EFI)
+#if defined(BUILD_ID) || defined(CONFIG_PVH_GUEST)
   note PT_NOTE ;
 #endif
 }
+#define PHDR(x) :x
+#else
+#define PHDR(x)
+#endif
+
 SECTIONS
 {
 #if !defined(EFI)
@@ -83,7 +89,7 @@ SECTIONS
        *(.text.kexec)
        *(.gnu.warning)
        _etext = .;             /* End of text section */
-  } :text = 0x9090
+  } PHDR(text) = 0x9090
 
   . = ALIGN(SECTION_ALIGN);
   __2M_text_end = .;
@@ -134,7 +140,7 @@ SECTIONS
        *(SORT(.data.vpci.*))
        __end_vpci_array = .;
 #endif
-  } :text
+  } PHDR(text)
 
 #if defined(CONFIG_PVH_GUEST) && !defined(EFI)
   DECL_SECTION(.note.Xen) {
@@ -160,7 +166,7 @@ SECTIONS
        __note_gnu_build_id_start = .;
        *(.buildid)
        __note_gnu_build_id_end = .;
-  } :text
+  }
 #endif
 #endif
 
@@ -260,7 +266,7 @@ SECTIONS
        *(SORT(.data.vpci.*))
        __end_vpci_array = .;
 #endif
-  } :text
+  } PHDR(text)
 
   . = ALIGN(SECTION_ALIGN);
   __init_end = .;
@@ -281,7 +287,7 @@ SECTIONS
        *(.data.paramhypfs)
        __paramhypfs_end = .;
 #endif
-  } :text
+  } PHDR(text)
 
   DECL_SECTION(.data) {
        *(.data.page_aligned)
@@ -289,7 +295,7 @@ SECTIONS
        *(.data.rel)
        *(.data.rel.*)
        CONSTRUCTORS
-  } :text
+  } PHDR(text)
 
   DECL_SECTION(.bss) {
        __bss_start = .;
@@ -306,7 +312,7 @@ SECTIONS
        *(.bss)
        . = ALIGN(POINTER_ALIGN);
        __bss_end = .;
-  } :text
+  } PHDR(text)
   _end = . ;
 
   . = ALIGN(SECTION_ALIGN);
@@ -316,12 +322,12 @@ SECTIONS
   . = ALIGN(4);
   DECL_SECTION(.reloc) {
     *(.reloc)
-  } :text
+  }
   /* Trick the linker into setting the image size to exactly 16Mb. */
   . = ALIGN(__section_alignment__);
   DECL_SECTION(.pad) {
     . = ALIGN(MB(16));
-  } :text
+  }
 #endif
 
 #ifndef XEN_BUILD_EFI



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:45:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:45:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104236.199121 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRttV-0004ju-87; Thu, 01 Apr 2021 09:45:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104236.199121; Thu, 01 Apr 2021 09:45: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 1lRttV-0004jn-55; Thu, 01 Apr 2021 09:45:41 +0000
Received: by outflank-mailman (input) for mailman id 104236;
 Thu, 01 Apr 2021 09:45:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRttU-0004je-7R
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:45:40 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 36a9c5e2-07e6-440f-9656-22fac216e603;
 Thu, 01 Apr 2021 09:45:39 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 888FEAEF5;
 Thu,  1 Apr 2021 09:45:38 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36a9c5e2-07e6-440f-9656-22fac216e603
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270338; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=UKBqIqEP4Yay9/oLsxxVgXNUOGzjbOD2XiVhg/zRm+8=;
	b=OMjhq7Xrj0Yd6y7h4Txz18Q+XpBGF/zE1K7PXE6yQA8Dnb68sum0FQamoFRoYm+rhaf9Mp
	9DPcAVdioNm+lB6A6aoQEkGQZW/m8ihhqdi6JCJ7kxAz0FBFAxX2dHElsiH/qotTclg+lu
	yri3lBTmdwAEgOrFbmvbDdk17nOY8Dw=
Subject: [PATCH 4/8] x86/EFI: redo .reloc section bounds determination
From: Jan Beulich <jbeulich@suse.com>
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>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <b886eb2c-cabc-f195-4996-aae1fc3c61d9@suse.com>
Date: Thu, 1 Apr 2021 11:45:38 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There's no need to link relocs-dummy.o into the ELF binary. The two
symbols needed can as well be provided by the linker script. Then our
mkreloc tool also doesn't need to put them in the generated assembler
source.

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

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -133,7 +133,6 @@ XEN_NO_PE_FIXUPS := $(if $(XEN_BUILD_EFI
 endif
 
 ALL_OBJS := $(BASEDIR)/arch/x86/boot/built_in.o $(BASEDIR)/arch/x86/efi/built_in.o $(ALL_OBJS)
-EFI_OBJS-$(XEN_BUILD_EFI) := efi/relocs-dummy.o
 
 ifeq ($(CONFIG_LTO),y)
 # Gather all LTO objects together
@@ -141,13 +140,13 @@ prelink_lto.o: $(ALL_OBJS) $(ALL_LIBS)
 	$(LD_LTO) -r -o $@ $(filter-out %.a,$^) --start-group $(filter %.a,$^) --end-group
 
 # Link it with all the binary objects
-prelink.o: $(patsubst %/built_in.o,%/built_in_bin.o,$(ALL_OBJS)) prelink_lto.o $(EFI_OBJS-y) FORCE
+prelink.o: $(patsubst %/built_in.o,%/built_in_bin.o,$(ALL_OBJS)) prelink_lto.o FORCE
 	$(call if_changed,ld)
 
 prelink-efi.o: $(patsubst %/built_in.o,%/built_in_bin.o,$(ALL_OBJS)) prelink_lto.o FORCE
 	$(call if_changed,ld)
 else
-prelink.o: $(ALL_OBJS) $(ALL_LIBS) $(EFI_OBJS-y) FORCE
+prelink.o: $(ALL_OBJS) $(ALL_LIBS) FORCE
 	$(call if_changed,ld)
 
 prelink-efi.o: $(ALL_OBJS) $(ALL_LIBS) FORCE
--- a/xen/arch/x86/efi/mkreloc.c
+++ b/xen/arch/x86/efi/mkreloc.c
@@ -320,9 +320,7 @@ int main(int argc, char *argv[])
     }
 
     puts("\t.section .reloc, \"a\", @progbits\n"
-         "\t.balign 4\n"
-         "\t.globl __base_relocs_start, __base_relocs_end\n"
-         "__base_relocs_start:");
+         "\t.balign 4");
 
     for ( i = 0; i < nsec; ++i )
     {
@@ -373,8 +371,6 @@ int main(int argc, char *argv[])
 
     diff_sections(NULL, NULL, NULL, 0, 0, 0, 0);
 
-    puts("__base_relocs_end:");
-
     close(in1);
     close(in2);
 
--- a/xen/arch/x86/efi/relocs-dummy.S
+++ b/xen/arch/x86/efi/relocs-dummy.S
@@ -1,10 +1,8 @@
 
 	.section .reloc, "a", @progbits
 	.balign 4
-GLOBAL(__base_relocs_start)
 	.long 0
 	.long 8
-GLOBAL(__base_relocs_end)
 
 	.globl VIRT_START, ALT_START
 	.equ VIRT_START, XEN_VIRT_START
--- a/xen/arch/x86/xen.lds.S
+++ b/xen/arch/x86/xen.lds.S
@@ -170,18 +170,6 @@ SECTIONS
 #endif
 #endif
 
-/*
- * ELF builds are linked to a fixed virtual address, and in principle
- * shouldn't have a .reloc section.  However, due to the way EFI support is
- * currently implemented, retaining the .reloc section is necessary.
- */
-#if defined(XEN_BUILD_EFI) && !defined(EFI)
-  . = ALIGN(4);
-  DECL_SECTION(.reloc) {
-    *(.reloc)
-  } :text
-#endif
-
   _erodata = .;
 
   . = ALIGN(SECTION_ALIGN);
@@ -319,18 +307,27 @@ SECTIONS
   __2M_rwdata_end = .;
 
 #ifdef EFI
-  . = ALIGN(4);
-  DECL_SECTION(.reloc) {
+  .reloc ALIGN(4) : {
+    __base_relocs_start = .;
     *(.reloc)
+    __base_relocs_end = .;
   }
   /* Trick the linker into setting the image size to exactly 16Mb. */
   . = ALIGN(__section_alignment__);
   DECL_SECTION(.pad) {
     . = ALIGN(MB(16));
   }
-#endif
-
-#ifndef XEN_BUILD_EFI
+#elif defined(XEN_BUILD_EFI)
+  /*
+   * Due to the way EFI support is currently implemented, these two symbols
+   * need to be defined.  Their precise values shouldn't matter (the consuming
+   * function doesn't get called), but to be on the safe side both values would
+   * better match.  Of course the need to be reachable by the relocations
+   * referencing them.
+   */
+  PROVIDE(__base_relocs_start = .);
+  PROVIDE(__base_relocs_end = .);
+#else
   efi = .;
 #endif
 



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:46:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:46:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104237.199134 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRttr-0004qH-Gi; Thu, 01 Apr 2021 09:46:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104237.199134; Thu, 01 Apr 2021 09: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 1lRttr-0004qA-Dg; Thu, 01 Apr 2021 09:46:03 +0000
Received: by outflank-mailman (input) for mailman id 104237;
 Thu, 01 Apr 2021 09:46:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRttq-0004pv-8H
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:46:02 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 07af8a97-5e05-44aa-8f35-8a8b086b82e3;
 Thu, 01 Apr 2021 09:46:01 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CBB9FAEB6;
 Thu,  1 Apr 2021 09:46: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: 07af8a97-5e05-44aa-8f35-8a8b086b82e3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270360; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Qw1kb41OPZcRbU+DKLj0F67252xeEtyBQIm85C/nQy0=;
	b=G9I0SyuKAvHYvcionj9PHoTEsg5cT12638o2mJHraetOulmhy92uf9M3s2SS6EGY1EOu3/
	JgN00BRJrlCtxgFlWgatXv5m4KFUTSniFS151jC/nnIHGPXhlOx+aXJJcDCKvlhfemE9nY
	LY1tGzynz+Rv5PCBEZUAzhusjvm5mRY=
Subject: [PATCH 5/8] x86: drop use of prelink-efi.o
From: Jan Beulich <jbeulich@suse.com>
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>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <ea4fd135-fe9a-ecea-c03f-0b518b800d4b@suse.com>
Date: Thu, 1 Apr 2021 11:46:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Now that its contents matches prelink.o, use that one uniformly.

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

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -142,18 +142,12 @@ prelink_lto.o: $(ALL_OBJS) $(ALL_LIBS)
 # Link it with all the binary objects
 prelink.o: $(patsubst %/built_in.o,%/built_in_bin.o,$(ALL_OBJS)) prelink_lto.o FORCE
 	$(call if_changed,ld)
-
-prelink-efi.o: $(patsubst %/built_in.o,%/built_in_bin.o,$(ALL_OBJS)) prelink_lto.o FORCE
-	$(call if_changed,ld)
 else
 prelink.o: $(ALL_OBJS) $(ALL_LIBS) FORCE
 	$(call if_changed,ld)
-
-prelink-efi.o: $(ALL_OBJS) $(ALL_LIBS) FORCE
-	$(call if_changed,ld)
 endif
 
-targets += prelink.o prelink-efi.o
+targets += prelink.o
 
 $(TARGET)-syms: prelink.o xen.lds
 	$(LD) $(XEN_LDFLAGS) -T xen.lds -N prelink.o $(build_id_linker) \
@@ -214,7 +208,7 @@ endif
 note_file_option ?= $(note_file)
 
 ifeq ($(XEN_BUILD_PE),y)
-$(TARGET).efi: prelink-efi.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc
+$(TARGET).efi: prelink.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc
 	$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
 	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< efi/relocs-dummy.o \
 	                $(BASEDIR)/common/symbols-dummy.o $(note_file_option) -o $(@D)/.$(@F).$(base).0 &&) :



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:46:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:46:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104243.199146 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtuZ-0004ym-RC; Thu, 01 Apr 2021 09:46:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104243.199146; Thu, 01 Apr 2021 09:46: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 1lRtuZ-0004yf-O0; Thu, 01 Apr 2021 09:46:47 +0000
Received: by outflank-mailman (input) for mailman id 104243;
 Thu, 01 Apr 2021 09:46:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtuZ-0004ya-6A
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:46:47 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cc901f13-5f8e-4bce-96b6-4acdf0a0893d;
 Thu, 01 Apr 2021 09:46:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4E513AEB6;
 Thu,  1 Apr 2021 09:46: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: cc901f13-5f8e-4bce-96b6-4acdf0a0893d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270405; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=BW+wzkzMZPCZQCOdltyTqhUeMxSr4FMBEpHB0pwsBlk=;
	b=QA0d1jBVxRK9qyx0STCHg7XtbyTxZB614ga8ZOiQZDa7LJYDb9fpTIVSEgX0wpCAj5Uj/A
	PTMiFHE9C3KtfcDB069FojpWeBMvgco0MXy3CsEtMM9gTspbvzWklIQSyMY3PLvggsg57L
	8s29XUIpgzcdhotAk7necnZHqSNmYUw=
Subject: [PATCH 6/8] x86/EFI: avoid use of GNU ld's --disable-reloc-section
 when possible
From: Jan Beulich <jbeulich@suse.com>
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>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <ff15338a-ca10-ff38-3c2a-459303ce9d68@suse.com>
Date: Thu, 1 Apr 2021 11:46:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

As of commit 6fa7408d72b3 ("ld: don't generate base relocations in PE
output for absolute symbols") I'm feeling sufficiently confident in GNU
ld to use its logic for generating base relocations, which was enabled
for executables at some point last year (prior to that this would have
got done only for DLLs).

GNU ld, seeing the original relocations coming from the ELF object files,
generates different relocation types for our page tables (64-bit ones,
while mkreloc produces 32-bit ones). This requires also permitting and
handling that type in efi_arch_relocate_image().

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

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -120,18 +120,37 @@ $(TARGET): $(TARGET)-syms $(efi-y) boot/
 	mv $(TMP) $(TARGET)
 
 ifneq ($(efi-y),)
+
 # Check if the compiler supports the MS ABI.
 export XEN_BUILD_EFI := $(shell $(CC) $(XEN_CFLAGS) -c efi/check.c -o efi/check.o 2>/dev/null && echo y)
+CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
+
 # Check if the linker supports PE.
 EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10 --strip-debug
 XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(LD) $(EFI_LDFLAGS) -o efi/check.efi efi/check.o 2>/dev/null && echo y))
-CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
-# Check if the linker produces fixups in PE by default (we need to disable it doing so for now).
-XEN_NO_PE_FIXUPS := $(if $(XEN_BUILD_EFI), \
-                         $(shell $(LD) $(EFI_LDFLAGS) --disable-reloc-section -o efi/check.efi efi/check.o 2>/dev/null && \
-                                 echo --disable-reloc-section))
+
+ifeq ($(XEN_BUILD_PE),y)
+
+# Check if the linker produces fixups in PE by default
+nr-fixups := $(shell $(OBJDUMP) -p efi/check.efi | grep '^[[:blank:]]*reloc[[:blank:]]*[0-9][[:blank:]].*DIR64$$' | wc -l)
+ifeq ($(nr-fixups),2)
+MKRELOC := :
+relocs-dummy :=
+else
+MKRELOC := efi/mkreloc
+relocs-dummy := efi/relocs-dummy.o
+# If the linker produced fixups but not precisely two of them, we need to
+# disable it doing so.  But if it didn't produce any fixups, it also wouldn't
+# recognize the option.
+ifneq ($(nr-fixups),0)
+EFI_LDFLAGS += --disable-reloc-section
+endif
 endif
 
+endif # $(XEN_BUILD_PE)
+
+endif # $(efi-y)
+
 ALL_OBJS := $(BASEDIR)/arch/x86/boot/built_in.o $(BASEDIR)/arch/x86/efi/built_in.o $(ALL_OBJS)
 
 ifeq ($(CONFIG_LTO),y)
@@ -175,7 +194,7 @@ note.o: $(TARGET)-syms
 		--rename-section=.data=.note.gnu.build-id -S $@.bin $@
 	rm -f $@.bin
 
-EFI_LDFLAGS += --image-base=$(1) --stack=0,0 --heap=0,0 $(XEN_NO_PE_FIXUPS)
+EFI_LDFLAGS += --image-base=$(1) --stack=0,0 --heap=0,0
 EFI_LDFLAGS += --section-alignment=0x200000 --file-alignment=0x20
 EFI_LDFLAGS += --major-image-version=$(XEN_VERSION)
 EFI_LDFLAGS += --minor-image-version=$(XEN_SUBVERSION)
@@ -189,7 +208,11 @@ EFI_LDFLAGS += --no-insert-timestamp
 endif
 
 $(TARGET).efi: VIRT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A VIRT_START$$,,p')
+ifeq ($(MKRELOC),:)
+$(TARGET).efi: ALT_BASE :=
+else
 $(TARGET).efi: ALT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A ALT_START$$,,p')
+endif
 
 ifneq ($(build_id_linker),)
 ifeq ($(call ld-ver-build-id,$(LD) $(filter -m%,$(EFI_LDFLAGS))),y)
@@ -210,16 +233,16 @@ note_file_option ?= $(note_file)
 ifeq ($(XEN_BUILD_PE),y)
 $(TARGET).efi: prelink.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc
 	$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
-	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< efi/relocs-dummy.o \
+	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< $(relocs-dummy) \
 	                $(BASEDIR)/common/symbols-dummy.o $(note_file_option) -o $(@D)/.$(@F).$(base).0 &&) :
-	efi/mkreloc $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).0) >$(@D)/.$(@F).0r.S
+	$(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).0) >$(@D)/.$(@F).0r.S
 	$(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).0 \
 		| $(BASEDIR)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).0s.S
 	$(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o
 	$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
 	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< \
 	                $(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o $(note_file_option) -o $(@D)/.$(@F).$(base).1 &&) :
-	efi/mkreloc $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).1) >$(@D)/.$(@F).1r.S
+	$(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).1) >$(@D)/.$(@F).1r.S
 	$(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).1 \
 		| $(BASEDIR)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).1s.S
 	$(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).1r.o $(@D)/.$(@F).1s.o
--- a/xen/arch/x86/efi/check.c
+++ b/xen/arch/x86/efi/check.c
@@ -2,3 +2,17 @@ int __attribute__((__ms_abi__)) test(int
 {
     return i;
 }
+
+/*
+ * Populate an array with "addresses" of relocatable and absolute values.
+ * This is to probe ld for (a) emitting base relocations at all and (b) not
+ * emitting base relocations for absolute symbols.
+ */
+extern const unsigned char __image_base__[], __file_alignment__[],
+                           __section_alignment__[];
+const void *const data[] = {
+    __image_base__,
+    __file_alignment__,
+    __section_alignment__,
+    data,
+};
--- a/xen/arch/x86/efi/efi-boot.h
+++ b/xen/arch/x86/efi/efi-boot.h
@@ -86,10 +86,12 @@ static void __init efi_arch_relocate_ima
                 }
                 break;
             case PE_BASE_RELOC_DIR64:
-                if ( in_page_tables(addr) )
-                    blexit(L"Unexpected relocation type");
                 if ( delta )
+                {
                     *(u64 *)addr += delta;
+                    if ( in_page_tables(addr) )
+                        *(u64 *)addr += xen_phys_start;
+                }
                 break;
             default:
                 blexit(L"Unsupported relocation type");



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:47:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:47:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104245.199158 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtus-00054u-41; Thu, 01 Apr 2021 09:47:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104245.199158; Thu, 01 Apr 2021 09:47:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtus-00054m-0K; Thu, 01 Apr 2021 09:47:06 +0000
Received: by outflank-mailman (input) for mailman id 104245;
 Thu, 01 Apr 2021 09:47:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtur-00054Z-HI
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:47:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1cedc735-e67c-4fd3-b3fd-a3ade7a64f7d;
 Thu, 01 Apr 2021 09:47:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C87BFB0B6;
 Thu,  1 Apr 2021 09: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: 1cedc735-e67c-4fd3-b3fd-a3ade7a64f7d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270423; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=o2EMpahlSBM5Magli3m1RMCkPQybjV8l/PK9GMnPLmI=;
	b=pyG33BoBKNqh7bKndDihnYJWbrqGNE5DK7MQa6a7s730/1pOyToVOEbh1ElA+RW8aP8mGI
	j6ExHf/YppHC+gqjtAicxfELVry+5DFPYeW1Ma1D2PcIFRKeQBxiJwmv/434TONklvlSWY
	ZyYuUyaFNeCaKtIWlLKyLb2shXC5okQ=
Subject: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
From: Jan Beulich <jbeulich@suse.com>
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>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
Date: Thu, 1 Apr 2021 11:47:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

... provided the linker supports it (which it does as of commit
2dfa8341e079 ["ELF DWARF in PE output"]).

Without mentioning debugging sections, the linker would put them at
VA 0, thus making them unreachable by 32-bit (relative or absolute)
relocations. If relocations were resolvable (or absent) the resulting
binary would have invalid section RVAs (0 - __image_base__, truncated to
32 bits). Mentioning debugging sections without specifying an address
will result in the linker putting them all on the same RVA. A loader is,
afaict, free to reject loading such an image, as sections shouldn't
overlap. (The above describes GNU ld 2.36 behavior, which - if deemed
buggy - could change.)

Make sure our up-to-16Mb padding doesn't unnecessarily further extend
the image.

Take the opportunity and also switch to using $(call ld-option,...).

Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
This way we could also avoid discarding .comment for xen.efi.

I'd like to point out that the linking of the debug info takes far
longer than the linking of the "normal" parts of the image. The change
therefore has the downside of slowing down debug builds.

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -126,8 +126,14 @@ export XEN_BUILD_EFI := $(shell $(CC) $(
 CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
 
 # Check if the linker supports PE.
-EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10 --strip-debug
-XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(LD) $(EFI_LDFLAGS) -o efi/check.efi efi/check.o 2>/dev/null && echo y))
+EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10
+XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(call ld-option,$(EFI_LDFLAGS) --image-base=0x100000000 -o efi/check.efi efi/check.o))
+# If the above failed, it may be merely because of the linker not dealing well
+# with debug info. Try again with stripping it.
+ifeq ($(CONFIG_DEBUG_INFO)-$(XEN_BUILD_PE),y-n)
+EFI_LDFLAGS += --strip-debug
+XEN_BUILD_PE := $(call ld-option,$(EFI_LDFLAGS) --image-base=0x100000000 -o efi/check.efi efi/check.o)
+endif
 
 ifeq ($(XEN_BUILD_PE),y)
 
@@ -232,6 +238,9 @@ note_file_option ?= $(note_file)
 
 ifeq ($(XEN_BUILD_PE),y)
 $(TARGET).efi: prelink.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc
+ifeq ($(CONFIG_DEBUG_INFO),y)
+	$(if $(filter --strip-debug,$(EFI_LDFLAGS)),echo,:) "Will strip debug info from $(@F)"
+endif
 	$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
 	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< $(relocs-dummy) \
 	                $(BASEDIR)/common/symbols-dummy.o $(note_file_option) -o $(@D)/.$(@F).$(base).0 &&) :
--- a/xen/arch/x86/xen.lds.S
+++ b/xen/arch/x86/xen.lds.S
@@ -312,10 +312,60 @@ SECTIONS
     *(.reloc)
     __base_relocs_end = .;
   }
-  /* Trick the linker into setting the image size to exactly 16Mb. */
-  . = ALIGN(__section_alignment__);
-  DECL_SECTION(.pad) {
-    . = ALIGN(MB(16));
+  .debug_abbrev ALIGN(1) (NOLOAD) : {
+     *(.debug_abbrev)
+  }
+  .debug_info ALIGN(1) (NOLOAD) : {
+    *(.debug_info)
+    *(.gnu.linkonce.wi.*)
+  }
+  .debug_types ALIGN(1) (NOLOAD) : {
+    *(.debug_types)
+  }
+  .debug_str ALIGN(1) (NOLOAD) : {
+    *(.debug_str)
+  }
+  .debug_line ALIGN(1) (NOLOAD) : {
+    *(.debug_line)
+    *(.debug_line.*)
+  }
+  .debug_line_str ALIGN(1) (NOLOAD) : {
+    *(.debug_line_str)
+  }
+  .debug_names ALIGN(4) (NOLOAD) : {
+    *(.debug_names)
+  }
+  .debug_frame ALIGN(4) (NOLOAD) : {
+    *(.debug_frame)
+  }
+  .debug_loc ALIGN(1) (NOLOAD) : {
+    *(.debug_loc)
+  }
+  .debug_loclists ALIGN(4) (NOLOAD) : {
+    *(.debug_loclists)
+  }
+  .debug_ranges ALIGN(8) (NOLOAD) : {
+    *(.debug_ranges)
+  }
+  .debug_rnglists ALIGN(4) (NOLOAD) : {
+    *(.debug_rnglists)
+  }
+  .debug_addr ALIGN(8) (NOLOAD) : {
+    *(.debug_addr)
+  }
+  .debug_aranges ALIGN(1) (NOLOAD) : {
+    *(.debug_aranges)
+  }
+  .debug_pubnames ALIGN(1) (NOLOAD) : {
+    *(.debug_pubnames)
+  }
+  .debug_pubtypes ALIGN(1) (NOLOAD) : {
+    *(.debug_pubtypes)
+  }
+  /* Trick the linker into setting the image size to no less than 16Mb. */
+  __image_end__ = .;
+  .pad ALIGN(__section_alignment__) : {
+    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
   }
 #elif defined(XEN_BUILD_EFI)
   /*



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:47:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:47:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104251.199170 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtvO-0005DI-KV; Thu, 01 Apr 2021 09:47:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104251.199170; Thu, 01 Apr 2021 09: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 1lRtvO-0005DB-HK; Thu, 01 Apr 2021 09:47:38 +0000
Received: by outflank-mailman (input) for mailman id 104251;
 Thu, 01 Apr 2021 09:47:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRtvN-0005Cz-4u
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:47:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 44e4df5d-2e9a-4bf3-98ab-d0a39461290f;
 Thu, 01 Apr 2021 09:47:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9BECEAEB6;
 Thu,  1 Apr 2021 09:47: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: 44e4df5d-2e9a-4bf3-98ab-d0a39461290f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270455; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=JPanjNLWZj0sfyOALMrDaazSMh9LoXOd8c9exdMQnew=;
	b=IGPv4OtotCts8m+MoUtRP6JYnk/FVJHi1tVHu/JVgErsRzCK/DksCt6VfCJYbaS2WHPC8/
	dSl1Uso+7FMg0+S8GuLdj8/bLIO6JZupV0hAEY3eCi+vaSuCR79TyOkSdqOjFJ1QX3ntow
	VjABFEfXljVhN/pf9XhU83uNOl4knKM=
Subject: [PATCH 8/8] x86/EFI: don't have an overly large image size
From: Jan Beulich <jbeulich@suse.com>
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>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <26ec4a83-cda9-5193-d797-357c05b26ab7@suse.com>
Date: Thu, 1 Apr 2021 11:47:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While without debug info the difference is benign (so far), since we pad
the image to 16Mb anyway, forcing the .reloc section to a 2Mb boundary
causes subsequent .debug_* sections to go farther beyond 16Mb than
needed. There's no reason to advance . for establishing __2M_rwdata_end,
as all data past _end is of no interest at runtime anymore anyway.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
This makes more explicit a possible latent problem with the ELF image:
It ends at _end, not __2M_rwdata_end (advancing . as was done here does
not have the effect of increasing the image size). Interestingly the
conversion xen-syms => xen rounds up the program header specified size
suitably, as per the comment "Do not use p_memsz: it does not include
BSS alignment padding" in mkelf32.c. I do think this would instead want
taking care of in the linker script. Commit 7a95e0a2c572 ("x86: properly
calculate xen ELF end of image address") clearly only hacked an existing
hack rather than addressing the root cause. Thoughts?

--- a/xen/arch/x86/xen.lds.S
+++ b/xen/arch/x86/xen.lds.S
@@ -303,8 +303,7 @@ SECTIONS
   } PHDR(text)
   _end = . ;
 
-  . = ALIGN(SECTION_ALIGN);
-  __2M_rwdata_end = .;
+  __2M_rwdata_end = ALIGN(SECTION_ALIGN);
 
 #ifdef EFI
   .reloc ALIGN(4) : {



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:51:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:51:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104254.199182 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRtyc-00066M-3i; Thu, 01 Apr 2021 09:50:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104254.199182; Thu, 01 Apr 2021 09:50: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 1lRtyc-00066F-0f; Thu, 01 Apr 2021 09:50:58 +0000
Received: by outflank-mailman (input) for mailman id 104254;
 Thu, 01 Apr 2021 09:50:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRtyZ-00066A-VM
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:50:56 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 33041b3f-6611-48bd-8cfd-77b002683ab6;
 Thu, 01 Apr 2021 09: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: 33041b3f-6611-48bd-8cfd-77b002683ab6
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617270654;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=GLBfyHpN38hVaa44ERXEym7AISBLwU7MwNIppvSFeNs=;
  b=Xoz6NRpq8SIwnRwCPbBSVePt9NtNwFgRYOP92koxZQ+3XrquF8/npFDz
   jAUfrK7qTjrhSSziVHT1ir7WLdoHtWTOt+SIrTmOzYQ67UgEx2HOXYPU8
   xYF1AEnDh1xi9zfbQjVFcrjfCuZ+NyVZ+DPjy7KeiIEYS+ppariChKnR7
   s=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Abfrjz3cXdMX1fnzbRU4GUuJebJ3HGdEd+dP9pxL33nMgW4880sgBtAOhvghAr2he+MUEaBQAP
 gOEezJt9x3PNmk91nhzr8XTzM5HlWNpOC5NbYNZsmHg4UsVmscBOR9jCVPj+sUGKzZ7VQwXIhj
 6HraLTV/maObd+S2W7UWFC22vpHXtr88qOZCy4Yz3YR6R1NB1uj/3Fs62p1S982lKJOlDM/RW3
 7UXmKKm2Y12qQpql8FzDtgd/QxjRg5H9YqZ8bZzPgihJQ05vCLTAzgvqcFC//+JVix4kNI1ja4
 k50=
X-SBRS: 5.2
X-MesageID: 42127952
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:jWblPKDxeIg985/lHeh+sceALOonbusQ8zAX/mhsVB1YddGZnc
 iynPIdkST5kioVRWtIo729EYOLKEm9ybde544NMbC+GDT3oWfAFvAH0aLO4R3FXxf/+OlUyL
 t6f8FFYuHYIFBmga/BjzWQPM0nxLC8npyAocf74zNTQRpxa6dmhj0JbzqzNkFtXgFJCd4YOf
 Onl6l6jgGtc3gWcci3b0NtN4T+jubGiY78Zlo+DwMngTPksRqT9LX4HxKEty1uMQ9n/LFKyw
 n4uj283IqPmbWRyhjQ12jchq4m5efJ+594K+GnzuQQIjXooA60aIpmQK3qhkFInMifrGwEvf
 OJjxA8P9liy365RBDLnTLdnzPO/Rxry3j+xUSWiXHuyPaJOg4SOo56qq9yNj76gnBQ2+1U4e
 Zw8E+y86dzN1fmmh/w4tDZPisa7XackD4ZvsM4y0BEXZB2Us42kaUvuHl7Pb0nByzA5IUuAI
 BVfbvhzccTS1+cYnzD11MfueCEbzA2FheCdEAIptaY5ThQhGx41EsV3qUk7w89yK4=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="42127952"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fKm2IHCG+C/ERQ6eTcA4Ls4K80FVxXZk1Gha6HPjUHD+znQ7o2YG2gpnwkqnnphzgN76K92Os85tQUi1hsfMg1XyEuHkqpMzVYGdpn8xhZZIgE9ViOo4kaCEGLwi9/UtAWDQIEZEAoSgUKbxgW7cXnvUeKmijg9s4DXVHI78uk+LZJJaDvGOse2XkZUhzV+t6kegE9dnZPGhIVUy6BvshWJt7VDtKRNTyrrLy2q1NwjWctCywef09I2GhGMZJHH7HafeFNBmXjgNbOtUwtak1/zSE3PNxpmvygOzglx9J5az49EwlQ9evFasYG6LTNtBw80Kj5hTC5FRPDORjdLj5w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AXDgp5zLeEO6xJnCs7W1qeqPsJCujqLjiz1imtJdVcM=;
 b=R6w9HnhXrGFVGc3cUk7O6+31G4jvM1P0hdahG3KpZRtPp8pELSW/qoMH7MhOMbiZV3iNv8PVjk9xGrUg549R91e72ho7H11d8QKEVdD9qd22JO3i8cBG3GrTJYrna1Q8uBcOJvAufDLF+sP/WgxdvAf9TSUNkmJVC9IE147lE+3H2dILj7kfrW2uM63/Zd9NdtINFujaFqHmYS1Inc9C9/aKeJhLrFV2WHici0j4HpBOG0qwLEDt1Vtgoy0REB8PP2QAzBB/byPepn5F5sqmGAUJZYT86YsO9BNdHO71/dEVIRNbiGwM2/+Se/7IgerOlzkD/NBgYAEnqTXEN5W2zw==
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=AXDgp5zLeEO6xJnCs7W1qeqPsJCujqLjiz1imtJdVcM=;
 b=MjNcclqKzkW7XFpCmoxKWEiobqpB1ZjlGR/GrXYa7jrqCXCvsGp+croPKImtg1LafWmIzElv0+9XbAHJmtCDXIxilc0L2Jj+RyODVe3bdfRWwdYDwx0Vmbb7ZY6SzM6PjUQarMvtwBMzHwwogXP4bZLqrghdEobHwCIdBYo1Hwk=
Date: Thu, 1 Apr 2021 11:50:40 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Ian Jackson <iwj@xenproject.org>, "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>, Dario
 Faggioli <dfaggioli@suse.com>
Subject: Re: Revert NR_CPUS=1 fix from 4.15 (was: Re: [PATCH] fix
 for_each_cpu() again for NR_CPUS=1)
Message-ID: <YGWXcFOLKHJnH39S@Air-de-Roger>
References: <4d993e67-2bdf-9ac3-f78e-daf279642de1@suse.com>
 <YGWLxey5nZeafUbB@Air-de-Roger>
 <59387a2d-e28d-4e12-6b91-5df464e8ab9a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <59387a2d-e28d-4e12-6b91-5df464e8ab9a@suse.com>
X-ClientProxiedBy: MR2P264CA0120.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::36) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d0a8680f-1ca2-44d2-1a8d-08d8f4f39f91
X-MS-TrafficTypeDiagnostic: DM6PR03MB4059:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB405941808A9ADB5BC09B85DE8F7B9@DM6PR03MB4059.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 1iaRul7NL4gdfzmp10NqgcWIMtFW+x0FOiDCaiSDsz+UX7oM2zZtVQUhhbH1t0m5YNxnrA6GeV9Q0jYFTUQ+VTV+2k5/rQtcxLwJ4XZuL1XNcDPn3nagTg/hDmB7NrlzkQLtd9LJan0g5bjz4cYDcJxQoNFvGwpB1De2aGLEkjj6rCBwZqEIJXRxOg53Z5HbZHE19m01xBV3uzvhCqVCWQJTykfbmfC+sBS0Og+CnhH3Yp/qjeSoB3+UkhoDRQc1ZUO0N6Ua92BXg3JzZ6NjbDDy/tbqcsjKVZTCLNoI1nhX/qYdjSk3M9GcZis31sDimegPg4LyTX1A87qSHt4obYEOOKSRFSPzFKpfm+yoQxNv0WR3O3opleXp8x3DGtw09bnFojv9NkJwu+60CNpcPq76El5ARrQoGdHY209ndiJnvHn/NLX+8twvgA7kccVZfMUJ4QxEaIVmK8mJiIU+hxtAA3iKmkjr6dhqZhs2mQh0N1HwBEJz2Q3Tj3gsg3haUjW08wD7HgPuMnXL2rROJgDClP6ojWB35SZZ3EF5QEeAK3QswUBq+dQbDHx33JXuYf9qhK0FwP7kp+f1QDiI8RLDUEI5pJq73byctRAYexVmVlL5rJo3/gbX2/WfRfbzk+/z9bUI6FI/R4NdgmrAhYTMVRsdKFPJkyLisWTizyY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(346002)(376002)(396003)(39850400004)(136003)(85182001)(6496006)(26005)(9686003)(956004)(66476007)(86362001)(53546011)(66556008)(66946007)(6916009)(6666004)(54906003)(4326008)(16526019)(186003)(33716001)(5660300002)(6486002)(8936002)(8676002)(478600001)(38100700001)(83380400001)(316002)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?YU9kVWJLdDJiYkFjMEVBWEJROWZFdk91YU5lajYxL0VrdFVxcjZYSzZzQ1k2?=
 =?utf-8?B?NGNSYTE0bHNwemhZVUpTaTYwVFlXRWdHWmhuRnBnSE1PMHdUMGVnY3ZjUzIy?=
 =?utf-8?B?OUhLWjN3VkJlMG8zU3JGYmg0TTR2TXByN25oVnlZSkk1dE0yREVRS0FwbFU3?=
 =?utf-8?B?bHBFMThCQkw0WktEQ3c3TXBuN1BFSHdDOGhzQ2tEVDBKWjEzNWV5bTM0bDY5?=
 =?utf-8?B?YmI4VHE2YzRhcTFNS00zdDRybVlQUHI5UktJQ3Ztc0xXRTlIYk9vTkdmdkQ1?=
 =?utf-8?B?cnIwbmI1cnZlcEJlMTdpTzJZemd1SjkwaWJNZjEvOEI5N2FGOGNtNVJJVVcx?=
 =?utf-8?B?dmxYM1UraWdBVGhLVU9IY1JjU21LaVRxRVA0b1R6blFpS2lUWktkTkpOUDVh?=
 =?utf-8?B?ZWoydWFEeExOS0gxdFhrZXdjdnZLRktZRllJYlJYa2hpVzJzZHBnS2RId0NV?=
 =?utf-8?B?MFVDWnY1ZjJKcTk5QXhzVVdkYlppMS94K3NzeGpZZmZGc3JNVTZOVUpZRTRF?=
 =?utf-8?B?ZXRacjZxNjJHZHQzOVpCbmRhMENFOWRqT2Rna1F4VmxycmVlNjhmK3gvWW1J?=
 =?utf-8?B?Z1pPYUdwekdHNDVMZkxkWHVFK01hOFVMSzZSWnB0N0srTFB4bWpUaTJ3bitU?=
 =?utf-8?B?cnU5ZVVnR1VqLytFL2hSV08vcEp1Y1RiSGNkOURPQkk0NUJkWHpCalc3Wml2?=
 =?utf-8?B?dVFvcGQ3aGQ5enQ5V1VPM1NBN0pwaHd4ZUtWbU13a1pNc1U5QmQzMWxZMTFo?=
 =?utf-8?B?OGRKYTUxY1dTdVRXRTdRWStxZnBLK1JkWGlJTDNpV3hqTFlEZXhNOGQ3RXdt?=
 =?utf-8?B?N2s5Z09FdGgyRzlpNjRncVdzVDNDaGY0ZmNVV2JzTWFIUmxTeHVKZGQyR3dW?=
 =?utf-8?B?VWJqVmhVOU42WUd1RlVFZWxhandJQTI3dm1YQlNLcE1zbDJDMUw4WjFGWWxj?=
 =?utf-8?B?aWNNWUs0OWhFa1F4NlRpT3dZQ3RqdzhCTjdyNlZZa3pHVHBPUVljUVhzWVZO?=
 =?utf-8?B?K2lwbEVMeEpTZ2RLUFBkSFBoYWNkK2MwaUw1R3FFOU1hTjd4QlVZZDMwZE8v?=
 =?utf-8?B?eUxsQXdPWkkrWlNza294b1lSYmlQTklZVXE4OGxUZ1I1bWNMMUd3UWpnSlhG?=
 =?utf-8?B?VndTU29OWFFKNW5EN3daZGU0OUQrUGFqaG9zL3FxTXdKV3dzVTBUL1JZMWRN?=
 =?utf-8?B?TWtWOFZBZnc4R1lqb29DbW41VXFRSGtFeitzK2hndUlpUlladm03aDZEa0hp?=
 =?utf-8?B?RzQ3Nys5NityT29qVTFsQVNxcUg2SFZuYVZxRzJDNm5SN3Zoa1liME1LWVB3?=
 =?utf-8?B?ZndBN0tTR3JjUENqd0ZwRE5sQUVkMjhFcWNzT29QU2NxSTNnY1I2bG5vUDZr?=
 =?utf-8?B?QmpjbkJkelRwNFF1R3VqcndyVWV2Tjhhd2RtUWtCWlZSbytMZ0NiU2VTTkxq?=
 =?utf-8?B?alhDNW95eTBuQVIwTzdRODdtWnR1RC8xTldzU2lNc1Y2TzZHbC94ZG9qdmY2?=
 =?utf-8?B?YndqbDFZRjY5eUlrL0cyTkpaMWNjK2dnTVV1Ym5oN0pucTFCQk8yMytKclZ3?=
 =?utf-8?B?ampwblk0dDRNRVdnQlA5OW83SzNkL1pDSlhwTlNUcXI5aWFUUlB1R3l6WS8v?=
 =?utf-8?B?Y2xxS1ZyZkh2ZDExM09iMmVxS0U4bUh0UjlSSkgzTlFKa05EUm9IUUxJSk01?=
 =?utf-8?B?d0h5K1FHdmhsMnpUNjNGVEY2cm5sbTc0RElKUTJWQS9JR3djVW5IMkdnVSth?=
 =?utf-8?B?MlNQZzFKYTJEaGZlSitFQVl4d21SQVVudU03aDVJL2lFd3hTaEZTeG8wRDNU?=
 =?utf-8?B?YzFUMU1KQWUwRmQxUlR3Zz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d0a8680f-1ca2-44d2-1a8d-08d8f4f39f91
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 09:50:46.6353
 (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: rsAQ0voMslsi3NFsfoHXdcxsmhGxhVDiEknUbp7ZQb18ljDovJjeA/gO0K3MN0a2XIBhRJIILGZKFD2UenlL0w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4059
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:26:03AM +0200, Jan Beulich wrote:
> On 01.04.2021 11:00, Roger Pau Monné wrote:
> > On Wed, Mar 31, 2021 at 04:52:47PM +0200, Jan Beulich wrote:
> >> Unfortunately aa50f45332f1 ("xen: fix for_each_cpu when NR_CPUS=1") has
> >> caused quite a bit of fallout with gcc10, e.g. (there are at least two
> >> more similar ones, and I didn't bother trying to find them all):
> >>
> >> In file included from .../xen/include/xen/config.h:13,
> >>                  from <command-line>:
> >> core_parking.c: In function ‘core_parking_power’:
> >> .../xen/include/asm/percpu.h:12:51: error: array subscript 1 is above array bounds of ‘long unsigned int[1]’ [-Werror=array-bounds]
> >>    12 |     (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]))
> >> .../xen/include/xen/compiler.h:141:29: note: in definition of macro ‘RELOC_HIDE’
> >>   141 |     (typeof(ptr)) (__ptr + (off)); })
> >>       |                             ^~~
> >> core_parking.c:133:39: note: in expansion of macro ‘per_cpu’
> >>   133 |             core_tmp = cpumask_weight(per_cpu(cpu_core_mask, cpu));
> >>       |                                       ^~~~~~~
> >> In file included from .../xen/include/xen/percpu.h:4,
> >>                  from .../xen/include/asm/msr.h:7,
> >>                  from .../xen/include/asm/time.h:5,
> >>                  from .../xen/include/xen/time.h:76,
> >>                  from .../xen/include/xen/spinlock.h:4,
> >>                  from .../xen/include/xen/cpu.h:5,
> >>                  from core_parking.c:19:
> >> .../xen/include/asm/percpu.h:6:22: note: while referencing ‘__per_cpu_offset’
> >>     6 | extern unsigned long __per_cpu_offset[NR_CPUS];
> >>       |                      ^~~~~~~~~~~~~~~~
> > 
> > At this point, should be consider reverting the original fix from the
> > 4.15 branch, so that we don't release something that's build broken
> > with gcc 10?
> 
> Well, I didn't propose reverting (or taking this fix) because I think
> build breakage is better than runtime breakage. But in the end, Ian,
> it's up to you.

Oh, right, sorry. The build issue only happens with NR_CPUS=1, in
which case I agree, there's no need to do anything in 4.15 IMO.

Sorry for bothering.

Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:53:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:53:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104258.199194 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRu0e-0006Gp-Gq; Thu, 01 Apr 2021 09:53:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104258.199194; Thu, 01 Apr 2021 09:53: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 1lRu0e-0006Gi-DP; Thu, 01 Apr 2021 09:53:04 +0000
Received: by outflank-mailman (input) for mailman id 104258;
 Thu, 01 Apr 2021 09:53:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRu0d-0006GN-CK
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:53:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cc26323c-72f3-498e-ab02-fd8648a1f5f6;
 Thu, 01 Apr 2021 09:53:02 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4C8AFAEF5;
 Thu,  1 Apr 2021 09:53: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: cc26323c-72f3-498e-ab02-fd8648a1f5f6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270781; 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=vNiUNwZ+aiEw9xOsPoj4ZZ2Cw6r47zSUiseZb9FdFBQ=;
	b=sHYTkEGMb4g8QbEC7jeXduHsoZrBIi8HGDBqX1gLcCZXyW91j8M+GbGCUuQMQuAIDCagNE
	R/VPViDCkifgc4dSkXkVsu1aLDVq1zdozq+K1oFt875CDBy4F4jK9gchS++ZD3VzhToGyG
	3em4PsP8ck/IZtLg2qG87an1aLyu4fk=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v4 0/3] x86/time: calibration rendezvous adjustments
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>
Message-ID: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Date: Thu, 1 Apr 2021 11:53:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The first patch was, under a different title and with a different
approach, already part of the prior series of the same subject.
The other two patches are new, resulting from me spotting further
room for improvement (or so I hope).

1: latch to-be-written TSC value early in rendezvous loop
2: yield to hyperthreads after updating TSC during rendezvous
3: avoid reading the platform timer in rendezvous functions

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:54:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:54:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104261.199206 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRu1g-0006Om-Qz; Thu, 01 Apr 2021 09:54:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104261.199206; Thu, 01 Apr 2021 09: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 1lRu1g-0006Of-Nl; Thu, 01 Apr 2021 09:54:08 +0000
Received: by outflank-mailman (input) for mailman id 104261;
 Thu, 01 Apr 2021 09:54:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRu1f-0006OW-C9
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:54:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ad03d872-721a-4051-970f-b25f37750982;
 Thu, 01 Apr 2021 09:54:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A7811AEA6;
 Thu,  1 Apr 2021 09:54: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: ad03d872-721a-4051-970f-b25f37750982
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270845; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=SRJupnLGMfszPfCGs6C2rPqjAEwXFCBQV3qorCClVzA=;
	b=KCAosS6xkauPgkpAGntfN1NQ3BkhEk3qijzYbYAZnEbC7f6X0J7Ha8TA8wzqnBu3ZlsSDI
	XPrD3il53j+BooEb/LRJjyocRLj/IWdCkcrRRX3pxADC3B/dQYoQLega5hbh/TzrZOrJJ4
	chJ5IgF8SfqgmfG34j4jFu9H7XkVVOM=
Subject: [PATCH v4 1/3] x86/time: latch to-be-written TSC value early in
 rendezvous loop
From: Jan Beulich <jbeulich@suse.com>
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>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Message-ID: <35bbad56-d0f0-a37d-674c-e635eaf9c94c@suse.com>
Date: Thu, 1 Apr 2021 11:54:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

To reduce latency on time_calibration_tsc_rendezvous()'s last loop
iteration, read the value to be written on the last iteration at the end
of the loop body (i.e. in particular at the end of the second to last
iteration).

On my single-socket 18-core Skylake system this reduces the average loop
exit time on CPU0 (from the TSC write on the last iteration to until
after the main loop) from around 32k cycles to around 29k (albeit the
values measured on separate runs vary quite significantly).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v4: Different approach.
v3: New.
---
Of course it would also be nice to avoid the pretty likely branch
misprediction on the last iteration. But with the static prediction
hints having been rather short-lived in the architecture, I don't see
any good means to do so.

--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -1683,7 +1683,7 @@ static void time_calibration_tsc_rendezv
     int i;
     struct calibration_rendezvous *r = _r;
     unsigned int total_cpus = cpumask_weight(&r->cpu_calibration_map);
-    uint64_t tsc = 0;
+    uint64_t tsc = 0, master_tsc = 0;
 
     /* Loop to get rid of cache effects on TSC skew. */
     for ( i = 4; i >= 0; i-- )
@@ -1708,7 +1708,7 @@ static void time_calibration_tsc_rendezv
             atomic_inc(&r->semaphore);
 
             if ( i == 0 )
-                write_tsc(r->master_tsc_stamp);
+                write_tsc(master_tsc);
 
             while ( atomic_read(&r->semaphore) != (2*total_cpus - 1) )
                 cpu_relax();
@@ -1730,7 +1730,7 @@ static void time_calibration_tsc_rendezv
             }
 
             if ( i == 0 )
-                write_tsc(r->master_tsc_stamp);
+                write_tsc(master_tsc);
 
             atomic_inc(&r->semaphore);
             while ( atomic_read(&r->semaphore) > total_cpus )
@@ -1739,9 +1739,17 @@ static void time_calibration_tsc_rendezv
 
         /* Just in case a read above ended up reading zero. */
         tsc += !tsc;
+
+        /*
+         * To reduce latency of the TSC write on the last iteration,
+         * fetch the value to be written into a local variable. To avoid
+         * introducing yet another conditional branch (which the CPU may
+         * have difficulty predicting well) do this on all iterations.
+         */
+        master_tsc = r->master_tsc_stamp;
     }
 
-    time_calibration_rendezvous_tail(r, tsc, r->master_tsc_stamp);
+    time_calibration_rendezvous_tail(r, tsc, master_tsc);
 }
 
 /* Ordinary rendezvous function which does not modify TSC values. */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:54:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:54:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104263.199218 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRu23-0006Vh-3B; Thu, 01 Apr 2021 09:54:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104263.199218; Thu, 01 Apr 2021 09: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 1lRu23-0006Va-05; Thu, 01 Apr 2021 09:54:31 +0000
Received: by outflank-mailman (input) for mailman id 104263;
 Thu, 01 Apr 2021 09:54:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRu21-0006VT-IZ
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:54:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 162e1716-1d1c-432e-86aa-435eef0c2cd3;
 Thu, 01 Apr 2021 09:54:28 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 262E0B032;
 Thu,  1 Apr 2021 09: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: 162e1716-1d1c-432e-86aa-435eef0c2cd3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270868; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=QdS547I0MHs8GHpeGea/kzNdcUxE2McJtcRJ1hPnylM=;
	b=Yw2aNBfYvGgfmOIZZAydVv7NE5hING06Tbr1dHmF+WBYBdMmxtdW4AzLiCWY3VRhuyLZzc
	AZcIoARXZo0GVFdu7M7vh+nGvIdi9FjUUtTruyszBKAdP8hw88mvwJ6fS9zcFqMXoJgSoe
	Uj3Isdgek2k9ntlCRjq6CB31hRlAAnI=
Subject: [PATCH v4 2/3] x86/time: yield to hyperthreads after updating TSC
 during rendezvous
From: Jan Beulich <jbeulich@suse.com>
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>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Message-ID: <81da85eb-2e8e-9b76-2fb3-2beddc33e9af@suse.com>
Date: Thu, 1 Apr 2021 11:54:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Since we'd like the updates to be done as synchronously as possible,
make an attempt at yielding immediately after the TSC write.

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

--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -1708,7 +1708,14 @@ static void time_calibration_tsc_rendezv
             atomic_inc(&r->semaphore);
 
             if ( i == 0 )
+            {
                 write_tsc(master_tsc);
+                /*
+                 * Try to give our hyperthread(s), if any, a chance to do
+                 * the same as instantly as possible.
+                 */
+                cpu_relax();
+            }
 
             while ( atomic_read(&r->semaphore) != (2*total_cpus - 1) )
                 cpu_relax();
@@ -1730,7 +1737,14 @@ static void time_calibration_tsc_rendezv
             }
 
             if ( i == 0 )
+            {
                 write_tsc(master_tsc);
+                /*
+                 * Try to give our hyperthread(s), if any, a chance to do
+                 * the same as instantly as possible.
+                 */
+                cpu_relax();
+            }
 
             atomic_inc(&r->semaphore);
             while ( atomic_read(&r->semaphore) > total_cpus )



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 09:55:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 09:55:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104267.199229 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRu2k-0006df-Cj; Thu, 01 Apr 2021 09:55:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104267.199229; Thu, 01 Apr 2021 09: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 1lRu2k-0006dY-9h; Thu, 01 Apr 2021 09:55:14 +0000
Received: by outflank-mailman (input) for mailman id 104267;
 Thu, 01 Apr 2021 09:55:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRu2i-0006dG-Gy
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 09:55:12 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4a3658ca-cfbc-451f-9886-16fc96a54119;
 Thu, 01 Apr 2021 09:55:11 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 04D25B032;
 Thu,  1 Apr 2021 09:55: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: 4a3658ca-cfbc-451f-9886-16fc96a54119
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617270911; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=/4bBVDd6Hj6a8b8XlnvfpgQxmTCGoW9DQonxX1lum1U=;
	b=tMyzVyeb/17TZQ3RGutErR3hQvhLIo/di2rDhns5u9ADhQOQwn82UKhNTJ7TvTs6QzDZs0
	HkEPXkeflxHNeOkL6+gRVOGiOLffJAxyv6z119bgPAg8CZNZTSZi/A2Fv1UJBDTFkKdWXP
	73AhBd+cg2PvrtSrjiwQC+Qb0u/wEwM=
Subject: [PATCH v4 3/3] x86/time: avoid reading the platform timer in
 rendezvous functions
From: Jan Beulich <jbeulich@suse.com>
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>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Message-ID: <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
Date: Thu, 1 Apr 2021 11:55:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Reading the platform timer isn't cheap, so we'd better avoid it when the
resulting value is of no interest to anyone.

The consumer of master_stime, obtained by
time_calibration_{std,tsc}_rendezvous() and propagated through
this_cpu(cpu_calibration), is local_time_calibration(). With
CONSTANT_TSC the latter function uses an early exit path, which doesn't
explicitly use the field. While this_cpu(cpu_calibration) (including the
master_stime field) gets propagated to this_cpu(cpu_time).stamp on that
path, both structures' fields get consumed only by the !CONSTANT_TSC
logic of the function.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v4: New.
---
I realize there's some risk associated with potential new uses of the
field down the road. What would people think about compiling time.c a
2nd time into a dummy object file, with a conditional enabled to force
assuming CONSTANT_TSC, and with that conditional used to suppress
presence of the field as well as all audited used of it (i.e. in
particular that large part of local_time_calibration())? Unexpected new
users of the field would then cause build time errors.

--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -52,6 +52,7 @@ unsigned long pit0_ticks;
 struct cpu_time_stamp {
     u64 local_tsc;
     s_time_t local_stime;
+    /* Next field unconditionally valid only when !CONSTANT_TSC. */
     s_time_t master_stime;
 };
 
@@ -1702,7 +1703,7 @@ static void time_calibration_tsc_rendezv
                  * iteration.
                  */
                 r->master_tsc_stamp = r->max_tsc_stamp;
-            else if ( i == 0 )
+            else if ( !boot_cpu_has(X86_FEATURE_CONSTANT_TSC) && i == 0 )
                 r->master_stime = read_platform_stime(NULL);
 
             atomic_inc(&r->semaphore);
@@ -1776,8 +1777,11 @@ static void time_calibration_std_rendezv
     {
         while ( atomic_read(&r->semaphore) != (total_cpus - 1) )
             cpu_relax();
-        r->master_stime = read_platform_stime(NULL);
-        smp_wmb(); /* write r->master_stime /then/ signal */
+        if ( !boot_cpu_has(X86_FEATURE_CONSTANT_TSC) )
+        {
+            r->master_stime = read_platform_stime(NULL);
+            smp_wmb(); /* write r->master_stime /then/ signal */
+        }
         atomic_inc(&r->semaphore);
     }
     else



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:14:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:14:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104273.199241 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuKz-0000FG-2O; Thu, 01 Apr 2021 10:14:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104273.199241; Thu, 01 Apr 2021 10: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 1lRuKy-0000F9-VV; Thu, 01 Apr 2021 10:14:04 +0000
Received: by outflank-mailman (input) for mailman id 104273;
 Thu, 01 Apr 2021 10:14: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 1lRuKx-0000Ei-9G; Thu, 01 Apr 2021 10:14: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 1lRuKw-0003Gv-VN; Thu, 01 Apr 2021 10:14: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 1lRuKw-0007LQ-JA; Thu, 01 Apr 2021 10:14:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lRuKw-0000XC-Ig; Thu, 01 Apr 2021 10: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=4rj7ajJhNlIsJWFUUXxgfis2ZrvQA6MFGEgtnghDNu0=; b=vamu/s2E0Y6S8xJdfWjCwLB2ND
	1Boiw5LL3kI3p2RlahnMqrAz7sMe6MNdhNkMYJ6uid6MOpodHi35Gq0Hu3J33TkxaXBcJ7xu3h7VC
	ErToAOAA3pAMRbTJlr4k39iKdmC9PDO0y5ul/tsiRoZN+ujumOFK+daE558p/A4iHuQE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160625-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160625: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-localmigrate/x10:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-libvirt-vhd:guest-saverestore.2:fail:regression
    linux-linus:test-amd64-amd64-qemuu-freebsd12-amd64:guest-start/freebsd.repeat:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-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-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-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-vhd: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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: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
X-Osstest-Versions-This:
    linux=d19cc4bfbff1ae72c3505a00fb8ce0d3fa519e6c
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 10:14:02 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 19 guest-localmigrate/x10  fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-libvirt-vhd 17 guest-saverestore.2      fail REGR. vs. 152332
 test-amd64-amd64-qemuu-freebsd12-amd64 21 guest-start/freebsd.repeat fail REGR. vs. 152332

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

version targeted for testing:
 linux                d19cc4bfbff1ae72c3505a00fb8ce0d3fa519e6c
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  243 days
Failing since        152366  2020-08-01 20:49:34 Z  242 days  413 attempts
Testing same since   160625  2021-03-31 18:28:28 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1311742 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:15:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:15:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104277.199257 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuLt-0000Nu-Ee; Thu, 01 Apr 2021 10:15:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104277.199257; Thu, 01 Apr 2021 10:15:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuLt-0000Nn-B8; Thu, 01 Apr 2021 10:15:01 +0000
Received: by outflank-mailman (input) for mailman id 104277;
 Thu, 01 Apr 2021 10:15:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuLr-0000Ne-UC
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:14:59 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ef0fa20b-faed-45ce-be13-d0a8d0402ad1;
 Thu, 01 Apr 2021 10:14:59 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 315A3AEA6;
 Thu,  1 Apr 2021 10:14: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: ef0fa20b-faed-45ce-be13-d0a8d0402ad1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272098; 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=xH4wjHy3MHm3MpA5OfQg5m/IJ+YbG9hbx8Zy+5IXfxo=;
	b=tydK5NWUI55HS5wCoTczdxtLYmoHEXm0erkuM8nnRMZy2oSA6OmJQuJIsQqkYdOoaHKAYI
	PULWKNdS1+FWh/9rm5Al6DVOy8nO1xYpRytglkQEWucX1SkzjquWeJ70U/AHaAJu9diu41
	jNzOel7cbwWZCMN7e8r2OEuzFPkEXHA=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 00/23] further population of xen/lib/
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Message-ID: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Date: Thu, 1 Apr 2021 12:14:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This is to dissolve / move xen/common/lib.c and xen/common/string.c.
One benefit of moving these functions into an archive is that we can
drop some of the related __HAVE_ARCH_* #define-s: By living in an
archive, the per-arch functions will preempt any loading of the
respective functions (objects) from the archive. (Down the road we
may want to move the per-arch functions into archives as well, at
which point the per-arch archive(s) would need to be specified ahead
of the common one(s) to the linker.)

01: lib: move muldiv64()
02: lib: move 64-bit div/mod compiler helpers
03: string: drop redundant declarations
04: lib: move memset()
05: lib: move memcpy()
06: lib: move memmove()
07: lib: move memcmp()
08: lib: move memchr()
09: lib: move memchr_inv()
10: lib: move strlen()
11: lib: move strnlen()
12: lib: move strcmp()
13: lib: move strncmp()
14: lib: move strlcpy()
15: lib: move strlcat()
16: lib: move strchr()
17: lib: move strrchr()
18: lib: move strstr()
19: lib: move strcasecmp()
20: lib: move/rename strnicmp() to strncasecmp()
21: lib: move strspn()
22: lib: move strpbrk()
23: lib: move strsep()

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:19:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:19:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104280.199268 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuQ5-0000cb-12; Thu, 01 Apr 2021 10:19:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104280.199268; Thu, 01 Apr 2021 10:19:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuQ4-0000cU-U2; Thu, 01 Apr 2021 10:19:20 +0000
Received: by outflank-mailman (input) for mailman id 104280;
 Thu, 01 Apr 2021 10:19:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuQ3-0000cP-CY
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:19:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 18698b2d-322e-4a69-a3c1-ecbb84983cfa;
 Thu, 01 Apr 2021 10:19:18 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A60E8AED7;
 Thu,  1 Apr 2021 10:19: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: 18698b2d-322e-4a69-a3c1-ecbb84983cfa
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272357; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=9n+mI1T3eTMXqMQfpWtBTAwMJf+lLEmiOgcGI7/pMvs=;
	b=VFOQcT58NhjmucUyXOze1BHcqSKPdeJjv3E34UTJrUjtwxeQfDuqavnRIX+nBI4z/KGdQe
	hriJ50IRFM26dH19iKmqiAfkJQvnV8lW02MQB4ItZMfR/wAXt4eQ2mCRw8gsKACHjnSiQO
	bSmgHjUlLNKDEbVFv/j+z0liIoNsclg=
Subject: [PATCH 01/23] lib: move muldiv64()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <d798d6c4-fbbd-966d-df22-42a22ed6b260@suse.com>
Date: Thu, 1 Apr 2021 12:19:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Make this a separate archive member under lib/. While doing so, don't
move latently broken x86 assembly though: Fix the constraints, such
that properly extending inputs to 64-bit won't just be a side effect of
needing to copy registers, and such that we won't fail to clobber %rdx.

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

--- a/xen/common/lib.c
+++ b/xen/common/lib.c
@@ -393,35 +393,6 @@ s64 __ldivmod_helper(s64 a, s64 b, s64 *
 }
 #endif /* BITS_PER_LONG == 32 */
 
-/* Compute with 96 bit intermediate result: (a*b)/c */
-uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c)
-{
-#ifdef CONFIG_X86
-    asm ( "mul %%rdx; div %%rcx" : "=a" (a) : "0" (a), "d" (b), "c" (c) );
-    return a;
-#else
-    union {
-        uint64_t ll;
-        struct {
-#ifdef WORDS_BIGENDIAN
-            uint32_t high, low;
-#else
-            uint32_t low, high;
-#endif            
-        } l;
-    } u, res;
-    uint64_t rl, rh;
-
-    u.ll = a;
-    rl = (uint64_t)u.l.low * (uint64_t)b;
-    rh = (uint64_t)u.l.high * (uint64_t)b;
-    rh += (rl >> 32);
-    res.l.high = rh / c;
-    res.l.low = (((rh % c) << 32) + (rl & 0xffffffff)) / c;
-    return res.ll;
-#endif
-}
-
 /*
  * Local variables:
  * mode: C
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
--- /dev/null
+++ b/xen/lib/muldiv64.c
@@ -0,0 +1,44 @@
+#include <xen/lib.h>
+
+/* Compute with 96 bit intermediate result: (a*b)/c */
+uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c)
+{
+#ifdef CONFIG_X86
+    asm ( "mulq %1; divq %2" : "+a" (a)
+                             : "rm" ((uint64_t)b), "rm" ((uint64_t)c)
+                             : "rdx" );
+
+    return a;
+#else
+    union {
+        uint64_t ll;
+        struct {
+#ifdef WORDS_BIGENDIAN
+            uint32_t high, low;
+#else
+            uint32_t low, high;
+#endif
+        } l;
+    } u, res;
+    uint64_t rl, rh;
+
+    u.ll = a;
+    rl = (uint64_t)u.l.low * (uint64_t)b;
+    rh = (uint64_t)u.l.high * (uint64_t)b;
+    rh += (rl >> 32);
+    res.l.high = rh / c;
+    res.l.low = (((rh % c) << 32) + (rl & 0xffffffff)) / c;
+
+    return res.ll;
+#endif
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:19:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:19:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104284.199281 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuQY-0000kK-E2; Thu, 01 Apr 2021 10:19:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104284.199281; Thu, 01 Apr 2021 10:19:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuQY-0000kD-AD; Thu, 01 Apr 2021 10:19:50 +0000
Received: by outflank-mailman (input) for mailman id 104284;
 Thu, 01 Apr 2021 10:19:48 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuQW-0000k1-GV
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:19:48 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ac7ed814-87d3-4e11-827f-e838f7f435b3;
 Thu, 01 Apr 2021 10:19:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B0B5DAEAE;
 Thu,  1 Apr 2021 10:19: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: ac7ed814-87d3-4e11-827f-e838f7f435b3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272386; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=MQq09dPyj92+Q29K/+2WpJlVyL1zFTQmPSHsHxroQCM=;
	b=asLWaYr+GzD+ctulBCqcr5J1Pe6NlJBNsZZSHGyEMskY7CGokeFC6ereCgztYhN+LJS5L3
	iqA17xOzmzD6PcwQkMoN6dtghYvW8jzyEIXEpbYh67YB99mimu85p+6KWTfPEUHTI6Li/s
	7EL87fAUJW/u9aIMMBtOnW+gEv4oo4k=
Subject: [PATCH 02/23] lib: move 64-bit div/mod compiler helpers
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <0fec827f-bb0b-4ea1-7757-9c27e9138be7@suse.com>
Date: Thu, 1 Apr 2021 12:19:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

These were built for 32-bit architectures only (the same code could,
with some tweaking, sensibly be used to provide TI-mode helpers on
64-bit arch-es) - retain this property, while still avoiding to have
a CU without any contents at all. For this, Arm's CONFIG_64BIT gets
generalized.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/Kconfig                   |  2 ++
 xen/arch/arm/Kconfig               | 12 +++---------
 xen/arch/x86/Kconfig               |  1 +
 xen/common/Makefile                |  1 -
 xen/lib/Makefile                   |  4 ++++
 xen/{common/lib.c => lib/divmod.c} |  2 --
 6 files changed, 10 insertions(+), 12 deletions(-)
 rename xen/{common/lib.c => lib/divmod.c} (99%)

diff --git a/xen/arch/Kconfig b/xen/arch/Kconfig
index d144d4c8d3ee..f16eb0df43af 100644
--- a/xen/arch/Kconfig
+++ b/xen/arch/Kconfig
@@ -1,3 +1,5 @@
+config 64BIT
+	bool
 
 config NR_CPUS
 	int "Maximum number of CPUs"
diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 330bbf6232d4..ecfa6822e4d3 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -1,17 +1,11 @@
-config 64BIT
-	bool
-	default "$(ARCH)" != "arm32"
-	help
-	  Say yes to build a 64-bit Xen
-	  Say no to build a 32-bit Xen
-
 config ARM_32
 	def_bool y
-	depends on !64BIT
+	depends on "$(ARCH)" = "arm32"
 
 config ARM_64
 	def_bool y
-	depends on 64BIT
+	depends on !ARM_32
+	select 64BIT
 	select HAS_FAST_MULTIPLY
 
 config ARM
diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index f79e6634db3f..4d6911ffa467 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -1,5 +1,6 @@
 config X86_64
 	def_bool y
+	select 64BIT
 
 config X86
 	def_bool y
diff --git a/xen/common/Makefile b/xen/common/Makefile
index 71c1d466bd8f..e2a7e62d14bf 100644
--- a/xen/common/Makefile
+++ b/xen/common/Makefile
@@ -21,7 +21,6 @@ obj-y += kernel.o
 obj-y += keyhandler.o
 obj-$(CONFIG_KEXEC) += kexec.o
 obj-$(CONFIG_KEXEC) += kimage.o
-obj-y += lib.o
 obj-$(CONFIG_LIVEPATCH) += livepatch.o livepatch_elf.o
 obj-$(CONFIG_MEM_ACCESS) += mem_access.o
 obj-y += memory.o
diff --git a/xen/lib/Makefile b/xen/lib/Makefile
index 0b274583ef0b..a5dc1442a422 100644
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -10,3 +10,7 @@ lib-y += rbtree.o
 lib-y += sort.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
+
+lib32-y := divmod.o
+lib32-$(CONFIG_64BIT) :=
+lib-y += $(lib32-y)
diff --git a/xen/common/lib.c b/xen/lib/divmod.c
similarity index 99%
rename from xen/common/lib.c
rename to xen/lib/divmod.c
index 5b8f49153dad..0be6ccc70096 100644
--- a/xen/common/lib.c
+++ b/xen/lib/divmod.c
@@ -40,7 +40,6 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  */
-#if BITS_PER_LONG == 32
 
 /*
  * Depending on the desired operation, we view a `long long' (aka quad_t) in
@@ -391,7 +390,6 @@ s64 __ldivmod_helper(s64 a, s64 b, s64 *r)
     else
         return quot;
 }
-#endif /* BITS_PER_LONG == 32 */
 
 /*
  * Local variables:



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:20:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:20:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104288.199293 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuR3-0001Xp-Mf; Thu, 01 Apr 2021 10:20:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104288.199293; Thu, 01 Apr 2021 10:20:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuR3-0001Xh-Je; Thu, 01 Apr 2021 10:20:21 +0000
Received: by outflank-mailman (input) for mailman id 104288;
 Thu, 01 Apr 2021 10:20:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuR2-0001Xa-CN
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:20:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4a2154c3-18a5-4c48-9603-4d3dc9c13d9b;
 Thu, 01 Apr 2021 10:20:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 811A6AE86;
 Thu,  1 Apr 2021 10:20: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: 4a2154c3-18a5-4c48-9603-4d3dc9c13d9b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272418; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=pPkeQToxrrrMgDYsF5+OEyCjKJhGCfAdjAB1QD105BY=;
	b=pfFcnH7t3pM/LgBQSszXHdKaTOpO8A45FuPaoYHiidjH6Asav228TrSkkL1WHsKLfaAb7a
	OtU+tsrVNsMAgMIqSHAhk7SubEazHg82ELaucIDsPkQGfd7ZjSFHUiODCMWpdZz+fWfwg3
	rBZzvFL6dFw8K76vw6y1FLMMFB3FuT4=
Subject: [PATCH 03/23] string: drop redundant declarations
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <e0915251-b0cc-79ee-feec-08722e1243fb@suse.com>
Date: Thu, 1 Apr 2021 12:20:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

These standard functions shouldn't need custom declarations. The only
case where redundancy might be needed is if there were inline functions
there. But we don't have any here (anymore). Prune the per-arch headers
of duplicate declarations while moving the asm/string.h inclusion past
the declarations.

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

--- a/xen/include/asm-arm/string.h
+++ b/xen/include/asm-arm/string.h
@@ -8,41 +8,21 @@
  */
 
 #define __HAVE_ARCH_STRRCHR
-char *strrchr(const char *s, int c);
-
 #define __HAVE_ARCH_STRCHR
-char *strchr(const char *s, int c);
-
 #if defined(CONFIG_ARM_64)
 #define __HAVE_ARCH_STRCMP
-int strcmp(const char *, const char *);
-
 #define __HAVE_ARCH_STRNCMP
-int strncmp(const char *, const char *, size_t);
-
 #define __HAVE_ARCH_STRLEN
-size_t strlen(const char *);
-
 #define __HAVE_ARCH_STRNLEN
-size_t strnlen(const char *, size_t);
 #endif
 
 #define __HAVE_ARCH_MEMCPY
-void *memcpy(void *, const void *, size_t);
-
 #if defined(CONFIG_ARM_64)
 #define __HAVE_ARCH_MEMCMP
-int memcmp(const void *, const void *, size_t);
 #endif
-
 #define __HAVE_ARCH_MEMMOVE
-void *memmove(void *dest, const void *src, size_t n);
-
 #define __HAVE_ARCH_MEMSET
-void *memset(void *, int, size_t);
-
 #define __HAVE_ARCH_MEMCHR
-void *memchr(const void *, int, size_t);
 
 #if defined(CONFIG_ARM_32)
 
--- a/xen/include/asm-x86/string.h
+++ b/xen/include/asm-x86/string.h
@@ -2,15 +2,12 @@
 #define __X86_STRING_H__
 
 #define __HAVE_ARCH_MEMCPY
-void *memcpy(void *dest, const void *src, size_t n);
 #define memcpy(d, s, n) __builtin_memcpy(d, s, n)
 
 #define __HAVE_ARCH_MEMMOVE
-void *memmove(void *dest, const void *src, size_t n);
 #define memmove(d, s, n) __builtin_memmove(d, s, n)
 
 #define __HAVE_ARCH_MEMSET
-void *memset(void *dest, int c, size_t n);
 #define memset(s, c, n) __builtin_memset(s, c, n)
 
 #endif /* __X86_STRING_H__ */
--- a/xen/include/xen/string.h
+++ b/xen/include/xen/string.h
@@ -4,11 +4,6 @@
 #include <xen/types.h>	/* for size_t */
 
 /*
- * Include machine specific inline routines
- */
-#include <asm/string.h>
-
-/*
  * These string functions are considered too dangerous for normal use.
  * Use safe_strcpy(), safe_strcat(), strlcpy(), strlcat() as appropriate.
  */
@@ -17,97 +12,78 @@
 #define strncpy __xen_has_no_strncpy__
 #define strncat __xen_has_no_strncat__
 
-#ifndef __HAVE_ARCH_STRLCPY
 size_t strlcpy(char *, const char *, size_t);
-#endif
-
-#ifndef __HAVE_ARCH_STRLCAT
 size_t strlcat(char *, const char *, size_t);
-#endif
+int strcmp(const char *, const char *);
+int strncmp(const char *, const char *, size_t);
+int strnicmp(const char *, const char *, size_t);
+int strcasecmp(const char *, const char *);
+char *strchr(const char *, int);
+char *strrchr(const char *, int);
+char *strstr(const char *, const char *);
+size_t strlen(const char *);
+size_t strnlen(const char *, size_t);
+char *strpbrk(const char *, const char *);
+char *strsep(char **, const char *);
+size_t strspn(const char *, const char *);
+
+void *memset(void *, int, size_t);
+void *memcpy(void *, const void *, size_t);
+void *memmove(void *, const void *, size_t);
+int memcmp(const void *, const void *, size_t);
+void *memchr(const void *, int, size_t);
+void *memchr_inv(const void *, int, size_t);
+
+#include <asm/string.h>
 
 #ifndef __HAVE_ARCH_STRCMP
-int strcmp(const char *, const char *);
 #define strcmp(s1, s2) __builtin_strcmp(s1, s2)
 #endif
 
 #ifndef __HAVE_ARCH_STRNCMP
-int strncmp(const char *, const char *, size_t);
 #define strncmp(s1, s2, n) __builtin_strncmp(s1, s2, n)
 #endif
 
-#ifndef __HAVE_ARCH_STRNICMP
-int strnicmp(const char *, const char *, size_t);
-#endif
-
 #ifndef __HAVE_ARCH_STRCASECMP
-int strcasecmp(const char *, const char *);
 #define strcasecmp(s1, s2) __builtin_strcasecmp(s1, s2)
 #endif
 
 #ifndef __HAVE_ARCH_STRCHR
-char *strchr(const char *, int);
 #define strchr(s1, c) __builtin_strchr(s1, c)
 #endif
 
 #ifndef __HAVE_ARCH_STRRCHR
-char *strrchr(const char *, int);
 #define strrchr(s1, c) __builtin_strrchr(s1, c)
 #endif
 
 #ifndef __HAVE_ARCH_STRSTR
-char *strstr(const char *, const char *);
 #define strstr(s1, s2) __builtin_strstr(s1, s2)
 #endif
 
 #ifndef __HAVE_ARCH_STRLEN
-size_t strlen(const char *);
 #define strlen(s1) __builtin_strlen(s1)
 #endif
 
-#ifndef __HAVE_ARCH_STRNLEN
-size_t strnlen(const char *, size_t);
-#endif
-
-#ifndef __HAVE_ARCH_STRPBRK
-char *strpbrk(const char *, const char *);
-#endif
-
-#ifndef __HAVE_ARCH_STRSEP
-char *strsep(char **, const char *);
-#endif
-
-#ifndef __HAVE_ARCH_STRSPN
-size_t strspn(const char *, const char *);
-#endif
-
-
 #ifndef __HAVE_ARCH_MEMSET
-void *memset(void *, int, size_t);
 #define memset(s, c, n) __builtin_memset(s, c, n)
 #endif
 
 #ifndef __HAVE_ARCH_MEMCPY
-void *memcpy(void *, const void *, size_t);
 #define memcpy(d, s, n) __builtin_memcpy(d, s, n)
 #endif
 
 #ifndef __HAVE_ARCH_MEMMOVE
-void *memmove(void *, const void *, size_t);
 #define memmove(d, s, n) __builtin_memmove(d, s, n)
 #endif
 
 #ifndef __HAVE_ARCH_MEMCMP
-int memcmp(const void *, const void *, size_t);
 #define memcmp(s1, s2, n) __builtin_memcmp(s1, s2, n)
 #endif
 
 #ifndef __HAVE_ARCH_MEMCHR
-void *memchr(const void *, int, size_t);
 #define memchr(s, c, n) __builtin_memchr(s, c, n)
 #endif
 
-void *memchr_inv(const void *, int, size_t);
-
 #define is_char_array(x) __builtin_types_compatible_p(typeof(x), char[])
 
 /* safe_xxx always NUL-terminates and returns !=0 if result is truncated. */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:20:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:20:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104291.199305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuRb-0001ec-Vg; Thu, 01 Apr 2021 10:20:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104291.199305; Thu, 01 Apr 2021 10:20: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 1lRuRb-0001eV-So; Thu, 01 Apr 2021 10:20:55 +0000
Received: by outflank-mailman (input) for mailman id 104291;
 Thu, 01 Apr 2021 10:20:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuRa-0001eO-T3
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:20:54 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d9035512-b6ab-4b7c-a279-ff6205c89325;
 Thu, 01 Apr 2021 10:20:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2A61DAE86;
 Thu,  1 Apr 2021 10:20: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: d9035512-b6ab-4b7c-a279-ff6205c89325
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272453; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Y/o0dWVTmD5cz4sBu9wV/IeNaEozXqujf7L4dzcBth8=;
	b=aK2cPZfJgJb2HHd8yK6Jibspp8y4aisZQvoNWVYGymyoY6ijt9wLNdxwTyIKvZFxtLdv+o
	QAQaUex2GZ995R2gecrbyNVqqtRv070ZYy3hKGAbZLLDGUvPh2lPDnCSlqPCCFXnDMV7CQ
	QMxhhTKl3tEQLQYc0kf41ZKztgCB/7g=
Subject: [PATCH 04/23] lib: move memset()
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <ab7672d5-974e-476c-aef9-ecfee8f0112f@suse.com>
Date: Thu, 1 Apr 2021 12:20:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

By moving the function into an archive, x86 doesn't need to announce
anymore that is has its own implementation - symbol resolution by the
linker will now guarantee that the generic function remains unused, and
the forwarding to the compiler built-in gets done by the common header
anyway.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,26 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMSET
-/**
- * memset - Fill a region of memory with the given value
- * @s: Pointer to the start of the area.
- * @c: The byte to fill the area with
- * @count: The size of the area.
- *
- * Do not use memset() to access IO space, use memset_io() instead.
- */
-void *(memset)(void *s, int c, size_t count)
-{
-	char *xs = (char *) s;
-
-	while (count--)
-		*xs++ = c;
-
-	return s;
-}
-#endif
-
 #ifndef __HAVE_ARCH_MEMCPY
 /**
  * memcpy - Copy one area of memory to another
--- a/xen/include/asm-x86/string.h
+++ b/xen/include/asm-x86/string.h
@@ -7,9 +7,6 @@
 #define __HAVE_ARCH_MEMMOVE
 #define memmove(d, s, n) __builtin_memmove(d, s, n)
 
-#define __HAVE_ARCH_MEMSET
-#define memset(s, c, n) __builtin_memset(s, c, n)
-
 #endif /* __X86_STRING_H__ */
 /*
  * Local variables:
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += memset.o
 lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
--- /dev/null
+++ b/xen/lib/memset.c
@@ -0,0 +1,33 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memset - Fill a region of memory with the given value
+ * @s: Pointer to the start of the area.
+ * @c: The byte to fill the area with
+ * @count: The size of the area.
+ *
+ * Do not use memset() to access IO space, use memset_io() instead.
+ */
+void *(memset)(void *s, int c, size_t count)
+{
+	char *xs = (char *) s;
+
+	while (count--)
+		*xs++ = c;
+
+	return s;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:21:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:21:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104295.199317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuS2-0001n9-8D; Thu, 01 Apr 2021 10:21:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104295.199317; Thu, 01 Apr 2021 10:21:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuS2-0001n2-4v; Thu, 01 Apr 2021 10:21:22 +0000
Received: by outflank-mailman (input) for mailman id 104295;
 Thu, 01 Apr 2021 10:21:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuS1-0001mn-Ch
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:21:21 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4101fc9f-d401-4964-a52b-166a26fb6c06;
 Thu, 01 Apr 2021 10:21:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CDE0CB0B6;
 Thu,  1 Apr 2021 10:21:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4101fc9f-d401-4964-a52b-166a26fb6c06
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272479; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=oN+5vP1FCboLBZxZsCScrYUIPf9aJGtajya1l3gxAwM=;
	b=FvApu/I4xypS6JzaAEaRD3XXPxi2osemKQLvUHQR6rGAud2b9yn/Nk+wJ6oTuoJKlfCBDp
	wkdLc2NQ1C1INi03PVMetko0NXakIvXDidyMENaJ7iD0BxN62VKLlZLJK7nAmcowcyZD0Q
	dFA/ionmnepy6LUwJRmF3OcwbJp0VuE=
Subject: [PATCH 05/23] lib: move memcpy()
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <a4cb13d3-c94f-23f5-4e6e-66817fd93b9f@suse.com>
Date: Thu, 1 Apr 2021 12:21:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

By moving the function into an archive, x86 doesn't need to announce
anymore that is has its own implementation - symbol resolution by the
linker will now guarantee that the generic function remains unused, and
the forwarding to the compiler built-in gets done by the common header
anyway.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,27 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMCPY
-/**
- * memcpy - Copy one area of memory to another
- * @dest: Where to copy to
- * @src: Where to copy from
- * @count: The size of the area.
- *
- * You should not use this function to access IO space, use memcpy_toio()
- * or memcpy_fromio() instead.
- */
-void *(memcpy)(void *dest, const void *src, size_t count)
-{
-	char *tmp = (char *) dest, *s = (char *) src;
-
-	while (count--)
-		*tmp++ = *s++;
-
-	return dest;
-}
-#endif
-
 #ifndef __HAVE_ARCH_MEMMOVE
 /**
  * memmove - Copy one area of memory to another
--- a/xen/include/asm-x86/string.h
+++ b/xen/include/asm-x86/string.h
@@ -1,9 +1,6 @@
 #ifndef __X86_STRING_H__
 #define __X86_STRING_H__
 
-#define __HAVE_ARCH_MEMCPY
-#define memcpy(d, s, n) __builtin_memcpy(d, s, n)
-
 #define __HAVE_ARCH_MEMMOVE
 #define memmove(d, s, n) __builtin_memmove(d, s, n)
 
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += memcpy.o
 lib-y += memset.o
 lib-y += muldiv64.o
 lib-y += parse-size.o
--- /dev/null
+++ b/xen/lib/memcpy.c
@@ -0,0 +1,34 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memcpy - Copy one area of memory to another
+ * @dest: Where to copy to
+ * @src: Where to copy from
+ * @count: The size of the area.
+ *
+ * You should not use this function to access IO space, use memcpy_toio()
+ * or memcpy_fromio() instead.
+ */
+void *(memcpy)(void *dest, const void *src, size_t count)
+{
+	char *tmp = (char *) dest, *s = (char *) src;
+
+	while (count--)
+		*tmp++ = *s++;
+
+	return dest;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:21:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:21:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104298.199329 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuSU-0001u2-IN; Thu, 01 Apr 2021 10:21:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104298.199329; Thu, 01 Apr 2021 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 1lRuSU-0001tv-Eh; Thu, 01 Apr 2021 10:21:50 +0000
Received: by outflank-mailman (input) for mailman id 104298;
 Thu, 01 Apr 2021 10:21:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuST-0001tl-ED
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:21:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 74a238bc-faa6-4588-a8a9-7155f24fd142;
 Thu, 01 Apr 2021 10:21:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B82A5AEA6;
 Thu,  1 Apr 2021 10:21: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: 74a238bc-faa6-4588-a8a9-7155f24fd142
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272507; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=UlwL2DZgk5QMsxjKNY14U9Y4Ed0W95Lps/NjFQlhkyk=;
	b=kaDKC3HL34Id+gFUhxYyLvm99yhF4rXxMW7FIMhuxPTmBQiRmF3wmZ6EAe/0VgSE1bg0k7
	sjlZn/fYs59zGaFD57At7atwibjezKifjFh5+D1MSUMYqwwwNMrJkAm95y3awCiDl9JBV6
	rbnSbyOADKk+T2dJVYMBvg5oGLClW34=
Subject: [PATCH 06/23] lib: move memmove()
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <36449347-69e8-b963-597f-c9359207cf57@suse.com>
Date: Thu, 1 Apr 2021 12:21:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

By moving the function into an archive, x86 doesn't need to announce
anymore that is has its own implementation - symbol resolution by the
linker will now guarantee that the generic function remains unused, and
the forwarding to the compiler built-in gets done by the common header
anyway.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,36 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMMOVE
-/**
- * memmove - Copy one area of memory to another
- * @dest: Where to copy to
- * @src: Where to copy from
- * @count: The size of the area.
- *
- * Unlike memcpy(), memmove() copes with overlapping areas.
- */
-void *(memmove)(void *dest, const void *src, size_t count)
-{
-	char *tmp, *s;
-
-	if (dest <= src) {
-		tmp = (char *) dest;
-		s = (char *) src;
-		while (count--)
-			*tmp++ = *s++;
-		}
-	else {
-		tmp = (char *) dest + count;
-		s = (char *) src + count;
-		while (count--)
-			*--tmp = *--s;
-		}
-
-	return dest;
-}
-#endif
-
 #ifndef __HAVE_ARCH_MEMCMP
 /**
  * memcmp - Compare two areas of memory
--- a/xen/include/asm-x86/string.h
+++ b/xen/include/asm-x86/string.h
@@ -1,9 +1,6 @@
 #ifndef __X86_STRING_H__
 #define __X86_STRING_H__
 
-#define __HAVE_ARCH_MEMMOVE
-#define memmove(d, s, n) __builtin_memmove(d, s, n)
-
 #endif /* __X86_STRING_H__ */
 /*
  * Local variables:
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -5,6 +5,7 @@ lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
 lib-y += memcpy.o
+lib-y += memmove.o
 lib-y += memset.o
 lib-y += muldiv64.o
 lib-y += parse-size.o
--- /dev/null
+++ b/xen/lib/memmove.c
@@ -0,0 +1,42 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memmove - Copy one area of memory to another
+ * @dest: Where to copy to
+ * @src: Where to copy from
+ * @count: The size of the area.
+ *
+ * Unlike memcpy(), memmove() copes with overlapping areas.
+ */
+void *(memmove)(void *dest, const void *src, size_t count)
+{
+	char *tmp, *s;
+
+	if (dest <= src) {
+		tmp = (char *) dest;
+		s = (char *) src;
+		while (count--)
+			*tmp++ = *s++;
+	} else {
+		tmp = (char *) dest + count;
+		s = (char *) src + count;
+		while (count--)
+			*--tmp = *--s;
+	}
+
+	return dest;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:22:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:22:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104301.199341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuT5-00022C-Qt; Thu, 01 Apr 2021 10:22:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104301.199341; Thu, 01 Apr 2021 10: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 1lRuT5-000225-ND; Thu, 01 Apr 2021 10:22:27 +0000
Received: by outflank-mailman (input) for mailman id 104301;
 Thu, 01 Apr 2021 10:22:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuT3-00021n-UA
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:22:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4fb8832f-be95-4d20-ae58-4b50e73d5c12;
 Thu, 01 Apr 2021 10:22:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7CFFAAEA6;
 Thu,  1 Apr 2021 10:22:24 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4fb8832f-be95-4d20-ae58-4b50e73d5c12
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272544; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=e1kdSAKEAN16LJljjXzIk1aT1zZrsyx9ENiy36Xyzo4=;
	b=nRlQ+tI8dRA9xfib5Ur7UyMrq1n3GB4VeMrC6gyOVKmf3Zt4PdU4K/t8wvc1PHLd/VBtoS
	F6J1I3Ut7Ddqt8uy5ZlE1jQxTJ8fm5S4cum06Pnu8hG2N6ISsYnOEbti+Bebgk0uBLbC3e
	Uc68mOTctRb8XUG6lKVk5Xz1W7OecHI=
Subject: [PATCH 07/23] lib: move memcmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <b82ffb74-1c76-f5b5-dce5-d90897750b70@suse.com>
Date: Thu, 1 Apr 2021 12:22:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,25 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMCMP
-/**
- * memcmp - Compare two areas of memory
- * @cs: One area of memory
- * @ct: Another area of memory
- * @count: The size of the area.
- */
-int (memcmp)(const void *cs, const void *ct, size_t count)
-{
-	const unsigned char *su1, *su2;
-	int res = 0;
-
-	for( su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
-		if ((res = *su1 - *su2) != 0)
-			break;
-	return res;
-}
-#endif
-
 #ifndef __HAVE_ARCH_MEMCHR
 /**
  * memchr - Find a character in an area of memory.
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += memcmp.o
 lib-y += memcpy.o
 lib-y += memmove.o
 lib-y += memset.o
--- /dev/null
+++ b/xen/lib/memcmp.c
@@ -0,0 +1,32 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memcmp - Compare two areas of memory
+ * @cs: One area of memory
+ * @ct: Another area of memory
+ * @count: The size of the area.
+ */
+int (memcmp)(const void *cs, const void *ct, size_t count)
+{
+	const unsigned char *su1, *su2;
+	int res = 0;
+
+	for( su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
+		if ((res = *su1 - *su2) != 0)
+			break;
+	return res;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:22:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:22:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104304.199353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuTO-00028j-72; Thu, 01 Apr 2021 10:22:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104304.199353; Thu, 01 Apr 2021 10: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 1lRuTO-00028a-3b; Thu, 01 Apr 2021 10:22:46 +0000
Received: by outflank-mailman (input) for mailman id 104304;
 Thu, 01 Apr 2021 10:22:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuTN-00028Q-FU
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:22:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1ac8f106-5911-401b-9a4a-e6bb748213bf;
 Thu, 01 Apr 2021 10:22:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C0F65AEA6;
 Thu,  1 Apr 2021 10:22: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: 1ac8f106-5911-401b-9a4a-e6bb748213bf
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272563; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=KxBFJAZ2KdhCH/22RG50f65pG/J6rh981un4Qrrk7qs=;
	b=uOPVgUllDCy67MY+92BXsz4sL3+4fgw2GNxlRoKLLRqhOEXjpirWugQoKc3gsNO2LlXkmC
	FBABYsIsKCE0VhREqQFbix1lgQ1FJlnQ9Dt5FUr+do9hQGAZuFY3gpG/fBhtVAh0dMPYHl
	ReMYzkvJ2zFymUS/MLAa3ZD4XX6NxtE=
Subject: [PATCH 08/23] lib: move memchr()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <b8f92c94-ddc0-74df-d412-fe536b094bc5@suse.com>
Date: Thu, 1 Apr 2021 12:22:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,28 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMCHR
-/**
- * memchr - Find a character in an area of memory.
- * @s: The memory area
- * @c: The byte to search for
- * @n: The size of the area.
- *
- * returns the address of the first occurrence of @c, or %NULL
- * if @c is not found
- */
-void *(memchr)(const void *s, int c, size_t n)
-{
-	const unsigned char *p = s;
-
-	while (n--)
-		if ((unsigned char)c == *p++)
-			return (void *)(p - 1);
-
-	return NULL;
-}
-#endif
-
 /**
  * memchr_inv - Find an unmatching character in an area of memory.
  * @s: The memory area
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += memchr.o
 lib-y += memcmp.o
 lib-y += memcpy.o
 lib-y += memmove.o
--- /dev/null
+++ b/xen/lib/memchr.c
@@ -0,0 +1,35 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memchr - Find a character in an area of memory.
+ * @s: The memory area
+ * @c: The byte to search for
+ * @n: The size of the area.
+ *
+ * returns the address of the first occurrence of @c, or %NULL
+ * if @c is not found
+ */
+void *(memchr)(const void *s, int c, size_t n)
+{
+	const unsigned char *p = s;
+
+	while (n--)
+		if ((unsigned char)c == *p++)
+			return (void *)(p - 1);
+
+	return NULL;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:23:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:23:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104309.199365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuTm-0002Fy-Gj; Thu, 01 Apr 2021 10:23:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104309.199365; Thu, 01 Apr 2021 10: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 1lRuTm-0002Fr-Dc; Thu, 01 Apr 2021 10:23:10 +0000
Received: by outflank-mailman (input) for mailman id 104309;
 Thu, 01 Apr 2021 10:23:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuTl-0002Ep-1a
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:23:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5993ffe6-787f-475b-b7ec-368f2c9a3671;
 Thu, 01 Apr 2021 10:23:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1529BAED7;
 Thu,  1 Apr 2021 10:23: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: 5993ffe6-787f-475b-b7ec-368f2c9a3671
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272587; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5742tdH/lAsOCplYSlX/aqstUJg8Rlv97TdWNCdRmSk=;
	b=ANROaimZWyzPlbs+4BeRDilkJtvIDsazHfGxSUcZuaQRhSHX2z0Sjb4Bb/sOszH8YVl/lX
	PH6jFzbeGidL4IhDn7Gyi6zXcWSZFqKKxFmhYaCw6iNB74mjlsJniiTasoOgEV94SxvN6a
	0W8/f1ceznKvCPDD+VZsPlyDN7H/Zbw=
Subject: [PATCH 09/23] lib: move memchr_inv()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <adf1c065-396a-562d-e91b-c5167f298846@suse.com>
Date: Thu, 1 Apr 2021 12:23:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,26 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-/**
- * memchr_inv - Find an unmatching character in an area of memory.
- * @s: The memory area
- * @c: The byte that is expected
- * @n: The size of the area.
- *
- * returns the address of the first occurrence of a character other than @c,
- * or %NULL if the whole buffer contains just @c.
- */
-void *memchr_inv(const void *s, int c, size_t n)
-{
-	const unsigned char *p = s;
-
-	while (n--)
-		if ((unsigned char)c != *p++)
-			return (void *)(p - 1);
-
-	return NULL;
-}
-
 /*
  * Local variables:
  * mode: C
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -5,6 +5,7 @@ lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
 lib-y += memchr.o
+lib-y += memchr_inv.o
 lib-y += memcmp.o
 lib-y += memcpy.o
 lib-y += memmove.o
--- /dev/null
+++ b/xen/lib/memchr_inv.c
@@ -0,0 +1,35 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memchr_inv - Find an unmatching character in an area of memory.
+ * @s: The memory area
+ * @c: The byte that is expected
+ * @n: The size of the area.
+ *
+ * returns the address of the first occurrence of a character other than @c,
+ * or %NULL if the whole buffer contains just @c.
+ */
+void *memchr_inv(const void *s, int c, size_t n)
+{
+	const unsigned char *p = s;
+
+	while (n--)
+		if ((unsigned char)c != *p++)
+			return (void *)(p - 1);
+
+	return NULL;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:23:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:23:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104310.199377 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuTp-0002IO-Om; Thu, 01 Apr 2021 10:23:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104310.199377; Thu, 01 Apr 2021 10: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 1lRuTp-0002IE-LS; Thu, 01 Apr 2021 10:23:13 +0000
Received: by outflank-mailman (input) for mailman id 104310;
 Thu, 01 Apr 2021 10:23:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRuTo-0002Hh-Cv
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:23:12 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5d23c387-a08c-4507-be66-d0669f50a43e;
 Thu, 01 Apr 2021 10:23: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: 5d23c387-a08c-4507-be66-d0669f50a43e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617272590;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=FVzsZ0mkSIkxtRKP3p3PSvTjfw2kuq7GTDLAG4vG22o=;
  b=TZF+njdXjdpaQU9mnB+lorHIu1rD65SY5llUBc0YluDzpyRTTHNW5pBM
   rQbEWclV8d82QThPUoNroL/vL9hjQedc/PhWepfKQpuOZKY5ZMVBGj4SI
   mD/CKQWnXBTEsdHKwgWs3Q3ZTZYTy14NeLv2wjiB1NDlsw+bYEpJuQxtk
   I=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: qRYtQFagYKcNt4XqlQBWb8oK+bqim6YGuEFIfIlZW4pzcQSdcw7ez+KZM3VBE4Ch3Fwb1ynoxk
 6U2Tk9D7INfcp2Wjupzl4NmO8hb0IA2pZZiOTQ/Qym/tOY44dBJYxcre83bH/iodYwFtWEgihZ
 yVJgHeHCYoodEYMRXQGnbJg+v5X6NzF8Uw/Q01uN5CTUN9tPQlAbNhHYYH0sq6My6vhyw5X2MY
 Jxit2drsjXkd00xL4ncqUzvBEBzRpeH4wJ6togB6B8RDNrCFHeV8ealK1CmeHMOeMhmfJXumqe
 /ms=
X-SBRS: 5.2
X-MesageID: 40673825
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:C124Hq59MPwxKqZ6eAPXwSyEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+LpL+jvfMk4/rZgNDOg4/5GC1/EiVwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLrCP0+HTU6/1t6bnc4/9iIODJtcQPMDXrjW+TFfpccpmPpio8ru3qyHtCqq
 i0nz4aM85+62zccwiOyHOHsWmQs0df11bYxUKFmnymmMTlRVsBerV8rLhEeRjU4VdIhqAa7I
 t32Quixv9qJCKFtiH869/Ubgpth0q5rFEz+NRj80B3YM8wbqRcopcY+14QOJAcHDji4IRiK+
 V2CtrAjcwmO2+yXjT8hC1C0dasVnM8ElOvRVUDgNWc13xzkGpix0UV6cQDlh47hd8AYqgBw9
 6BHrVjlblIQMNTR7l6Hv09Tcy+DXGIaQ7QMUqJSG6XWp0vCjbokdra8b817OaldNgj150pgq
 nMV1teqCobZ1/uM8uTx5dGmyq9D1mVbHDI8IVz9pJ5srrzSP7AKiuYUm0jlMOmvrExGcved/
 GvOI9HIvPqIGf0cLw5nzHWat13Ez0zQccVstE0VxalucTQMLDnseTdbbLyKdPWYHUZc1K6Jk
 FGcCn4Jc1G4EzucGT/mgLtV3TkfVG62ZpxFaPd7tUC0YRlDPwPjiElzXCCou2bIzxLtaI7OG
 FkJqn8r6+9rW6quUHF8ntuIRgYKkpO+r3vXzdrqGYxQg/JWIdGn+/aVXFZ3XOBKBM6ZdjRCh
 Rjq1N+/r/yCYeRyyAkA9eOKXmbkHMXmXKPQ/4n6+y+zPagXql9IoctWaR3GwmOPQdygxxWpG
 BKbxJBelXSDQr0iaKujIUdAcbWc9UUunbvHedk7Vbk8WmMr8AmQXUWGxqjS9SejwoVSz1IvV
 Fp6KMEjL2cmTGgFHsnjI0DQSxxQVXSJIgDIBWOZY1SlLyuQg12QGuQrRGxih04eAPRhgwvr1
 2kCRfRVeDAA1JbtHwd773j90lscH6BO2hqbGphjIF7HWPam3p63OORfJCv22+JZlZq+JBYDB
 j1JR8pZi9+zdG+0xCY3AuYHXI935M0I6jzCq8gf7y74ALYFKS40YU9W9la85ZuOIqw7qslUe
 eDdxSUKz29IeUzwACRrmskPi4xiHRMq4Kb5DTVqEyDmFg4Cr7uBX4jYZcxCdSV9XLlSPaFy4
 8Rt6NCgcKAdkHKLuebwqTWZQNZIhzdoWSKX/glwKokzp4ahf9WJd3nSjPG23FM4QUmIOr1nE
 0YRr5n4LqpAP4bQ+UiPwZQ/l8kj720XTMWmz2zJu81Zlc2iXDHe/uP/rrTsLIqa3fx7DfYCB
 268ydH+e3CUDbG/bkGC7goKWATTEQn8nxt8KejcILXYT/aPN1rzR6fMnWndqVaR7XAMbIMrg
 xi69XNptSpTUPDqXftlAo+BLlP/WahSd6zBwzJOdcgya3GBX28xo2w4MCyiz/rTyCccEpwv/
 wDSXAt
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40673825"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IGU3gj+fEVCLHlOzWdAXzgS9WAOQikTT8B6jnwO1zAzOsLXbDcohJiMxDv3FiIL3BBGiHnLRM1HaRy9adC4QsjLGZeazW7CCuhUiXT60/tUVxoL/n1Ikl5vGBHFBt83nVASD8BLl8xlg0LoguPbAUCilf2Fe+AgtB//G8EFY8+2ZBFpcHVDiMwQkn/5pTf9j6dFr4OTWKUzlX5GWRwXlL1nR7ROW8Xa94qsFTqfNRo0dqd/fHvLODosXaGI/lUVaNCwycTXqGlcCoVBbHnn0b/lIpfCLbAwUvfEb1jlRYWVq5223M+ON44UxwUD1hjgFgoLKNoH4pB5ben47dvFp1w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fzignekplPfrIkofHKCad40QtmcSARFz8dyYlMrVaZk=;
 b=K7Ga2K26AnJQwOQmfuFWqXEzby63OKCrz8vrLsozqKD+UD2J2amq3NMx7igAorRerty2hdCfg/Lmo4d6vd2ki7cJNEBUlcOywGdr6blhHiQAX2/5yUQlbfen0ofw5y5mR3tVd+QdVUiiafcvIXFVKNVqrOm/Jhp59vKGxmH2i6ZVmbEL+tOPeO0eWkCIzpkLcts44sVSnPznCV1K4Cb46j4gg8zCYJSo4BLbwCAIc3mZ05bJ1+t6l5ERzGryUw1BjbHmcwFhAnttuiO7BINAZXX72Irun+5ktnG0/7f37644JLC8pxcb4aHgC1QCt/7UVuNQMpDIYMXh0lJeeYOOIA==
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=fzignekplPfrIkofHKCad40QtmcSARFz8dyYlMrVaZk=;
 b=aKvkySR9SH9CwxOCFjFMs8p9b+3mTNklgGE1n8tnjVY7zAzSiT9neB2mzSrpXvDcRCvMCIu5OTjim3ZC9GOCoc2zYdagQdQGCUCOhdpYRuaYqLopyMfBZ2nImNQhZeI9NI8WyraTqC/PT/79/LFIj6FiOD5i1mgPKqY+mr5dpps=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Roger Pau Monne <roger.pau@citrix.com>, Paul Durrant <paul@xen.org>, Wei
 Liu <wl@xen.org>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>
Subject: [PATCH] x86/viridian: EOI MSR should always happen in affected vCPU context
Date: Thu,  1 Apr 2021 12:22:52 +0200
Message-ID: <20210401102252.95196-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0059.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::23) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3dba7f02-7c34-4e2c-72ab-08d8f4f82374
X-MS-TrafficTypeDiagnostic: DS7PR03MB5542:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5542BF9107538CCC41143F688F7B9@DS7PR03MB5542.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Xi6Kmv7EzL+yS2ii24RDitySm7GjLu0/kwzHqo3oH+r+odlJad8B0JCNT+F2IQpAHvsM5nI+v5jRb57hKD7Y71FVqyyr3/o9t1JT+9Sbvy3XArnO8XEcJBZNqiUMlmuqibo8HC55vpkzfTvYFBdzYyjC4NXz4gLzI3STrNkCF+Ad2Y9OHho1eWrSv8E04733HA7JRtygtRgvcm7YvVWZ1I0HI2R4C6B35mqcO0hBBcC53W0sQ+aTRrNIGvtY5Y3oGGxzwGmEAKTBMu5fC8PRYR97LryJD2Z0EBoFG3OopO+c/wAaoN+sAz/UuNLwT0lDrgYsKifoxbQobJm+dlzgONn/+k6vx7E2YIbu1mLoiDSH+bzT7lPqdkJGs0ci71Ah0hW9U2wb8sU66ODGmH330ebFLXjBlMKviMM+YlkmRlq1oZVJruOgELjvnM03QKPwg+r73uEBEHt/qC9A4oSLt30+RvhvO51gfMiR2VPtSCQUvf1gh44kqi/XAUQU7wR87mx6MRgkb8788b8AN7HGOupmzfQBqr4+Bi8P9R16B6fRxFp1nIl8VuuBz8lgY3P89idB6syvRxBb34A60ih0UPwi6O+cr+Q1tax5K60hyhX796GAWxFmug3dj3XrKnyJmyfKww2NhUnSfyCp5o4H3Q==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(376002)(39850400004)(366004)(136003)(1076003)(6486002)(36756003)(186003)(16526019)(478600001)(66946007)(6666004)(26005)(8936002)(6496006)(38100700001)(4326008)(66556008)(2906002)(6916009)(54906003)(5660300002)(66476007)(2616005)(8676002)(107886003)(956004)(316002)(86362001)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?MUIrNjgxMzd6a3ZSMXM4UT09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3dba7f02-7c34-4e2c-72ab-08d8f4f82374
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 10:23:05.8906
 (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: +b5TrogTHvmc/6j5HtK3X6uVkxdU0wj2wl7R12rk0JwFiFyLlyABjnH6MZPrliC44qz4k99P7+I1JSiDw7zmGA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5542
X-OriginatorOrg: citrix.com

The HV_X64_MSR_EOI wrmsr should always happen with the target vCPU
as current, as there's no support for EOI'ing interrupts on a remote
vCPU.

While there also turn the unconditional assert at the top of the
function into an error on non-debug builds.

No functional change intended.

Requested-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/hvm/viridian/synic.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/hvm/viridian/synic.c b/xen/arch/x86/hvm/viridian/synic.c
index 22e2df27e5d..e18538c60a6 100644
--- a/xen/arch/x86/hvm/viridian/synic.c
+++ b/xen/arch/x86/hvm/viridian/synic.c
@@ -79,11 +79,20 @@ int viridian_synic_wrmsr(struct vcpu *v, uint32_t idx, uint64_t val)
     struct viridian_vcpu *vv = v->arch.hvm.viridian;
     struct domain *d = v->domain;
 
-    ASSERT(v == current || !v->is_running);
+    if ( v != current && v->is_running )
+    {
+        ASSERT_UNREACHABLE();
+        return X86EMUL_EXCEPTION;
+    }
 
     switch ( idx )
     {
     case HV_X64_MSR_EOI:
+        if ( v != current )
+        {
+            ASSERT_UNREACHABLE();
+            return X86EMUL_EXCEPTION;
+        }
         vlapic_EOI_set(vcpu_vlapic(v));
         break;
 
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:23:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:23:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104313.199389 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuU7-0002RT-3d; Thu, 01 Apr 2021 10:23:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104313.199389; Thu, 01 Apr 2021 10:23: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 1lRuU6-0002RM-W1; Thu, 01 Apr 2021 10:23:30 +0000
Received: by outflank-mailman (input) for mailman id 104313;
 Thu, 01 Apr 2021 10:23:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuU5-0002Qp-2l
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:23:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8f259c5c-d47e-4d74-96f7-75188448331c;
 Thu, 01 Apr 2021 10:23:28 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A5E6EAE86;
 Thu,  1 Apr 2021 10:23: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: 8f259c5c-d47e-4d74-96f7-75188448331c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272607; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nBbweA3vL9rMSj+WwvAqtgbZp6SBSyR96p37O2EqfpE=;
	b=IQTMtGb9knfLlR5xxb9YeGf2M90KdEeJ9v8Ftz46dP/kUuwkZXjOhWzJkGswOBSTUCJpBJ
	qoLEbyC1jamnFozUKQzTW3yJed1Db/gbrVZZ5GxQNAj0SUeG63ki/MPWA8wZZBH0u96CV8
	NDJGkjmZiVUdEszQX1pKTw9IDzrSbKY=
Subject: [PATCH 10/23] lib: move strlen()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <7e82929a-5eb0-a8a2-ec61-005311d74b44@suse.com>
Date: Thu, 1 Apr 2021 12:23:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -184,21 +184,6 @@ char *(strrchr)(const char *s, int c)
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRLEN
-/**
- * strlen - Find the length of a string
- * @s: The string to be sized
- */
-size_t (strlen)(const char * s)
-{
-	const char *sc;
-
-	for (sc = s; *sc != '\0'; ++sc)
-		/* nothing */;
-	return sc - s;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRNLEN
 /**
  * strnlen - Find the length of a length-limited string
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -14,6 +14,7 @@ lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
+lib-y += strlen.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
 
--- /dev/null
+++ b/xen/lib/strlen.c
@@ -0,0 +1,28 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strlen - Find the length of a string
+ * @s: The string to be sized
+ */
+size_t (strlen)(const char * s)
+{
+	const char *sc;
+
+	for (sc = s; *sc != '\0'; ++sc)
+		/* nothing */;
+	return sc - s;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:23:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:23:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104317.199401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuUQ-0002YZ-Bq; Thu, 01 Apr 2021 10:23:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104317.199401; Thu, 01 Apr 2021 10: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 1lRuUQ-0002YR-8V; Thu, 01 Apr 2021 10:23:50 +0000
Received: by outflank-mailman (input) for mailman id 104317;
 Thu, 01 Apr 2021 10:23:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuUP-0002YB-I4
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:23:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 59e2009a-f191-4924-ab52-1b2717c39cc9;
 Thu, 01 Apr 2021 10:23:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1AD7AAED7;
 Thu,  1 Apr 2021 10:23: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: 59e2009a-f191-4924-ab52-1b2717c39cc9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272628; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=j90++h3cFk0QIuXtJzchPhaTge5uMVq3pz3OcoqtqAs=;
	b=ebPsdQB4HSGKgTai3XRPrGo+eMQXtcbAZIZt9BxS4EYl3absZHxQG6icjnL5RDhQ8fwJji
	9yXRzYmkqNx8BXROayS9GwPh9ZtYsedsECPgeRzSaTok0HZogjEl8YTJRU3QfKxNsIH543
	2yS9bsH6KoCa2lY3k5pImfBgf90tt4I=
Subject: [PATCH 11/23] lib: move strnlen()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <4545723a-44ec-6586-79bd-7b7f8442619b@suse.com>
Date: Thu, 1 Apr 2021 12:23:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -184,22 +184,6 @@ char *(strrchr)(const char *s, int c)
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRNLEN
-/**
- * strnlen - Find the length of a length-limited string
- * @s: The string to be sized
- * @count: The maximum number of bytes to search
- */
-size_t strnlen(const char * s, size_t count)
-{
-	const char *sc;
-
-	for (sc = s; count-- && *sc != '\0'; ++sc)
-		/* nothing */;
-	return sc - s;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSPN
 /**
  * strspn - Calculate the length of the initial substring of @s which only
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -15,6 +15,7 @@ lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
 lib-y += strlen.o
+lib-y += strnlen.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
 
--- /dev/null
+++ b/xen/lib/strnlen.c
@@ -0,0 +1,29 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strnlen - Find the length of a length-limited string
+ * @s: The string to be sized
+ * @count: The maximum number of bytes to search
+ */
+size_t strnlen(const char * s, size_t count)
+{
+	const char *sc;
+
+	for (sc = s; count-- && *sc != '\0'; ++sc)
+		/* nothing */;
+	return sc - s;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:24:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:24:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104320.199413 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuUm-0002g2-NE; Thu, 01 Apr 2021 10:24:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104320.199413; Thu, 01 Apr 2021 10: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 1lRuUm-0002fv-J0; Thu, 01 Apr 2021 10:24:12 +0000
Received: by outflank-mailman (input) for mailman id 104320;
 Thu, 01 Apr 2021 10:24:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuUl-0002fc-07
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:24:11 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9ce87208-548f-49a6-90ca-36c4304d5841;
 Thu, 01 Apr 2021 10:24:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 68116AED7;
 Thu,  1 Apr 2021 10:24: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: 9ce87208-548f-49a6-90ca-36c4304d5841
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272649; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=NE7O51HBJ2kdFYFTIPJPJoUwkO79zqoySamP2nD1/Go=;
	b=E84cAT4Yqg1Gf6SKjQef8xh6xzWV+j2HJbYS/kPrH9y6E0819qvAtThuQ6tkhcHT9dv5yn
	VDu7pyMoUSo9Zy6Qed+wTfOlp7hjnAeA34eKcwKOHJbt9YuivQUy2NEd5CNTWn9CbUm0VK
	MtkniYyrLZfDRYCigd2gVp4nPIYvjw0=
Subject: [PATCH 12/23] lib: move strcmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <0b66b9ff-72c0-b645-87a7-13883e046d1f@suse.com>
Date: Thu, 1 Apr 2021 12:24:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -111,25 +111,6 @@ size_t strlcat(char *dest, const char *s
 EXPORT_SYMBOL(strlcat);
 #endif
 
-#ifndef __HAVE_ARCH_STRCMP
-/**
- * strcmp - Compare two strings
- * @cs: One string
- * @ct: Another string
- */
-int (strcmp)(const char *cs, const char *ct)
-{
-	register signed char __res;
-
-	while (1) {
-		if ((__res = *cs - *ct++) != 0 || !*cs++)
-			break;
-	}
-
-	return __res;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRNCMP
 /**
  * strncmp - Compare two length-limited strings
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -14,6 +14,7 @@ lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
+lib-y += strcmp.o
 lib-y += strlen.o
 lib-y += strnlen.o
 lib-$(CONFIG_X86) += xxhash32.o
--- /dev/null
+++ b/xen/lib/strcmp.c
@@ -0,0 +1,32 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strcmp - Compare two strings
+ * @cs: One string
+ * @ct: Another string
+ */
+int (strcmp)(const char *cs, const char *ct)
+{
+	register signed char __res;
+
+	while (1) {
+		if ((__res = *cs - *ct++) != 0 || !*cs++)
+			break;
+	}
+
+	return __res;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:25:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:25:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104326.199425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuVc-0002sP-4b; Thu, 01 Apr 2021 10:25:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104326.199425; Thu, 01 Apr 2021 10: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 1lRuVc-0002sI-1Q; Thu, 01 Apr 2021 10:25:04 +0000
Received: by outflank-mailman (input) for mailman id 104326;
 Thu, 01 Apr 2021 10:25:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuVa-0002s8-Va
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:25:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ce857047-d00c-4769-9c5d-97dcbe6962e9;
 Thu, 01 Apr 2021 10:25:01 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2B45EAE86;
 Thu,  1 Apr 2021 10:25: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: ce857047-d00c-4769-9c5d-97dcbe6962e9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272701; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=vdu1McyqjuuA+MC/um/kTIQJPhtl9yF8EaqHekvmKgo=;
	b=r6/NqASRM1dJYwp/MXnaampOR5t9AvcCQ/kvOT3tlATyaTFwO99W525Cl83vqSo0mRRjaq
	BKmsSK3P+FtfMGcv9DvdS4TeC1+6etDbjKx9/X/NngjkOVjohiG1Woy+lqlSadpj4miVuB
	7LGHkVDYoSHPBpggcEBLaAYTZ5b/6e4=
Subject: [PATCH 13/23] lib: move strncmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <e8355aad-7ea1-619f-dfe5-01b07d899f91@suse.com>
Date: Thu, 1 Apr 2021 12:25:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -111,27 +111,6 @@ size_t strlcat(char *dest, const char *s
 EXPORT_SYMBOL(strlcat);
 #endif
 
-#ifndef __HAVE_ARCH_STRNCMP
-/**
- * strncmp - Compare two length-limited strings
- * @cs: One string
- * @ct: Another string
- * @count: The maximum number of bytes to compare
- */
-int (strncmp)(const char *cs, const char *ct, size_t count)
-{
-	register signed char __res = 0;
-
-	while (count) {
-		if ((__res = *cs - *ct++) != 0 || !*cs++)
-			break;
-		count--;
-	}
-
-	return __res;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRCHR
 /**
  * strchr - Find the first occurrence of a character in a string
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -16,6 +16,7 @@ lib-y += rbtree.o
 lib-y += sort.o
 lib-y += strcmp.o
 lib-y += strlen.o
+lib-y += strncmp.o
 lib-y += strnlen.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
--- /dev/null
+++ b/xen/lib/strncmp.c
@@ -0,0 +1,34 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strncmp - Compare two length-limited strings
+ * @cs: One string
+ * @ct: Another string
+ * @count: The maximum number of bytes to compare
+ */
+int (strncmp)(const char *cs, const char *ct, size_t count)
+{
+	register signed char __res = 0;
+
+	while (count) {
+		if ((__res = *cs - *ct++) != 0 || !*cs++)
+			break;
+		count--;
+	}
+
+	return __res;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:25:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:25:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104329.199437 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuVz-0002yS-Cf; Thu, 01 Apr 2021 10:25:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104329.199437; Thu, 01 Apr 2021 10: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 1lRuVz-0002yK-9a; Thu, 01 Apr 2021 10:25:27 +0000
Received: by outflank-mailman (input) for mailman id 104329;
 Thu, 01 Apr 2021 10:25:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuVx-0002xc-Dv
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:25:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 036094cf-81b8-4011-b6db-fe890cd78cbc;
 Thu, 01 Apr 2021 10:25:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D8D0EB032;
 Thu,  1 Apr 2021 10:25:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 036094cf-81b8-4011-b6db-fe890cd78cbc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272720; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=4XwCcLrzETyMlxHJ7JOlZs5KVV79sUmD+2c2kdGaHMA=;
	b=C2+qIz97TYYRdaJ9CP7uqEwCvbZdml6YmzF5BZWsFZ44auIKOPBkDrUPwA4Yo3E3l0Z1zS
	yi2W7ZvuhJYTywOlHaCsP8f9vtCkja3IZfjAQgn9gpfHI83sWBkrGslU3hTiuPTO0T8ezt
	YR/UJJGm5GWHNuW2LQlTWsgVoYkKrLI=
Subject: [PATCH 14/23] lib: move strlcpy()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <eedc922b-ca4c-bfa0-9f4a-eacc01d56cca@suse.com>
Date: Thu, 1 Apr 2021 12:25:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -56,32 +56,6 @@ int (strcasecmp)(const char *s1, const c
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRLCPY
-/**
- * strlcpy - Copy a %NUL terminated string into a sized buffer
- * @dest: Where to copy the string to
- * @src: Where to copy the string from
- * @size: size of destination buffer
- *
- * Compatible with *BSD: the result is always a valid
- * NUL-terminated string that fits in the buffer (unless,
- * of course, the buffer size is zero). It does not pad
- * out the result like strncpy() does.
- */
-size_t strlcpy(char *dest, const char *src, size_t size)
-{
-	size_t ret = strlen(src);
-
-	if (size) {
-		size_t len = (ret >= size) ? size-1 : ret;
-		memcpy(dest, src, len);
-		dest[len] = '\0';
-	}
-	return ret;
-}
-EXPORT_SYMBOL(strlcpy);
-#endif
-
 #ifndef __HAVE_ARCH_STRLCAT
 /**
  * strlcat - Append a %NUL terminated string into a sized buffer
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -15,6 +15,7 @@ lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
 lib-y += strcmp.o
+lib-y += strlcpy.o
 lib-y += strlen.o
 lib-y += strncmp.o
 lib-y += strnlen.o
--- /dev/null
+++ b/xen/lib/strlcpy.c
@@ -0,0 +1,38 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strlcpy - Copy a %NUL terminated string into a sized buffer
+ * @dest: Where to copy the string to
+ * @src: Where to copy the string from
+ * @size: size of destination buffer
+ *
+ * Compatible with *BSD: the result is always a valid
+ * NUL-terminated string that fits in the buffer (unless,
+ * of course, the buffer size is zero). It does not pad
+ * out the result like strncpy() does.
+ */
+size_t strlcpy(char *dest, const char *src, size_t size)
+{
+	size_t ret = strlen(src);
+
+	if (size) {
+		size_t len = (ret >= size) ? size-1 : ret;
+		memcpy(dest, src, len);
+		dest[len] = '\0';
+	}
+	return ret;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:25:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:25:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104331.199449 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuWC-00033W-M4; Thu, 01 Apr 2021 10:25:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104331.199449; Thu, 01 Apr 2021 10:25: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 1lRuWC-00033O-Ir; Thu, 01 Apr 2021 10:25:40 +0000
Received: by outflank-mailman (input) for mailman id 104331;
 Thu, 01 Apr 2021 10:25:39 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuWB-000337-PI
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:25:39 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 677c0a98-d866-4d9b-8b1c-3e8a1ba29d84;
 Thu, 01 Apr 2021 10:25:38 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2C59AAE86;
 Thu,  1 Apr 2021 10:25: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: 677c0a98-d866-4d9b-8b1c-3e8a1ba29d84
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272738; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7zV0Im6IiPxLCpobC1iQxqhPYJiA+5gcc1UKfDC95jE=;
	b=qIHew1rsKfuK2G8m4BneQjMHSn9siyKtHP3DEuIQq+5oQ1nJmQe+9C7nowdbf14CV0WPRy
	etbSo5fCeiotdcA1wIInQqazlEfXO1VD0T9Ry7knf37V9+41Dm7TpLxn7KbayQHofmtlsE
	p46FEbFxVz1EMvN4NvzMZGJH7SMAMQ4=
Subject: [PATCH 15/23] lib: move strlcat()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <e4ae348e-dd54-ebbe-6ef8-b47a47fde49e@suse.com>
Date: Thu, 1 Apr 2021 12:25:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -56,35 +56,6 @@ int (strcasecmp)(const char *s1, const c
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRLCAT
-/**
- * strlcat - Append a %NUL terminated string into a sized buffer
- * @dest: Where to copy the string to
- * @src: Where to copy the string from
- * @size: size of destination buffer
- *
- * Compatible with *BSD: the result is always a valid
- * NUL-terminated string that fits in the buffer (unless,
- * of course, the buffer size is zero).
- */
-size_t strlcat(char *dest, const char *src, size_t size)
-{
-	size_t slen = strlen(src);
-	size_t dlen = strnlen(dest, size);
-	char *p = dest + dlen;
-
-	while ((p - dest) < size)
-		if ((*p++ = *src++) == '\0')
-			break;
-
-	if (dlen < size)
-		*(p-1) = '\0';
-
-	return slen + dlen;
-}
-EXPORT_SYMBOL(strlcat);
-#endif
-
 #ifndef __HAVE_ARCH_STRCHR
 /**
  * strchr - Find the first occurrence of a character in a string
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -15,6 +15,7 @@ lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
 lib-y += strcmp.o
+lib-y += strlcat.o
 lib-y += strlcpy.o
 lib-y += strlen.o
 lib-y += strncmp.o
--- /dev/null
+++ b/xen/lib/strlcat.c
@@ -0,0 +1,41 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strlcat - Append a %NUL terminated string into a sized buffer
+ * @dest: Where to copy the string to
+ * @src: Where to copy the string from
+ * @size: size of destination buffer
+ *
+ * Compatible with *BSD: the result is always a valid
+ * NUL-terminated string that fits in the buffer (unless,
+ * of course, the buffer size is zero).
+ */
+size_t strlcat(char *dest, const char *src, size_t size)
+{
+	size_t slen = strlen(src);
+	size_t dlen = strnlen(dest, size);
+	char *p = dest + dlen;
+
+	while ((p - dest) < size)
+		if ((*p++ = *src++) == '\0')
+			break;
+
+	if (dlen < size)
+		*(p-1) = '\0';
+
+	return slen + dlen;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:26:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:26:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104335.199460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuWa-0003BU-0L; Thu, 01 Apr 2021 10:26:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104335.199460; Thu, 01 Apr 2021 10:26:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuWZ-0003BN-TY; Thu, 01 Apr 2021 10:26:03 +0000
Received: by outflank-mailman (input) for mailman id 104335;
 Thu, 01 Apr 2021 10:26:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuWY-00039I-FF
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:26:02 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 02ab72af-98ca-4dc6-a62f-7c7dc437c736;
 Thu, 01 Apr 2021 10:25:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 525B3AEA6;
 Thu,  1 Apr 2021 10:25:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 02ab72af-98ca-4dc6-a62f-7c7dc437c736
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272757; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=JFsPHBSFCRbpswM140dIBX+K0lYDWe8o/0ZUhNbUxao=;
	b=sGJ4tbmKIwfb/xiCiCgT6875Pw/IKeNIwYR5si/L2whCsOoKqVFH1PA4xmzr4ohBkZ064U
	j+3tXw6o3Hyon76EnJ5IIg2TECUlaApHLOhDcMbl+OeKrqdikZDTzZSZfiWgWES9/c4t/T
	94hpE5DenHFl9dCJp3cKyAp22WQT8jM=
Subject: [PATCH 16/23] lib: move strchr()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <d855bf46-4431-0c90-6999-81743e7553e1@suse.com>
Date: Thu, 1 Apr 2021 12:25:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -56,21 +56,6 @@ int (strcasecmp)(const char *s1, const c
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRCHR
-/**
- * strchr - Find the first occurrence of a character in a string
- * @s: The string to be searched
- * @c: The character to search for
- */
-char *(strchr)(const char *s, int c)
-{
-	for(; *s != (char) c; ++s)
-		if (*s == '\0')
-			return NULL;
-	return (char *) s;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRRCHR
 /**
  * strrchr - Find the last occurrence of a character in a string
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -14,6 +14,7 @@ lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
+lib-y += strchr.o
 lib-y += strcmp.o
 lib-y += strlcat.o
 lib-y += strlcpy.o
--- /dev/null
+++ b/xen/lib/strchr.c
@@ -0,0 +1,28 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strchr - Find the first occurrence of a character in a string
+ * @s: The string to be searched
+ * @c: The character to search for
+ */
+char *(strchr)(const char *s, int c)
+{
+	for(; *s != (char) c; ++s)
+		if (*s == '\0')
+			return NULL;
+	return (char *) s;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:26:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:26:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104337.199473 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuWn-0003Gx-An; Thu, 01 Apr 2021 10:26:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104337.199473; Thu, 01 Apr 2021 10: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 1lRuWn-0003Gp-6y; Thu, 01 Apr 2021 10:26:17 +0000
Received: by outflank-mailman (input) for mailman id 104337;
 Thu, 01 Apr 2021 10:26:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuWl-0003GV-JZ
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:26:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8cbf186b-7f8d-4fe7-ba1e-bd29d2d9e1e1;
 Thu, 01 Apr 2021 10:26:14 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2342DAEA6;
 Thu,  1 Apr 2021 10:26: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: 8cbf186b-7f8d-4fe7-ba1e-bd29d2d9e1e1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272774; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7CQlp/3jZ9dRZw9Vi/DgDQTsQjZRZ6m3Z3hDPiBuKzw=;
	b=IAa1jhudL+MvVkyP8zM15xMr+PfcQASoedZ1A6T5vVEAsPmx1hxXIgiJxAucDrI8Yv++mO
	KjPCT+RKtcPfoP+55OZhFppOEYBoA5IFNRTEnsf4kSjpZ4Flo+QGICfOavJ8BbuQPJwUGr
	8q0Jf0PyY7n1Jj9XX3hzXpVzYjrsHqo=
Subject: [PATCH 17/23] lib: move strrchr()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <078a3947-5c1d-c84e-9f57-ad86ea415ec4@suse.com>
Date: Thu, 1 Apr 2021 12:26:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -56,24 +56,6 @@ int (strcasecmp)(const char *s1, const c
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRRCHR
-/**
- * strrchr - Find the last occurrence of a character in a string
- * @s: The string to be searched
- * @c: The character to search for
- */
-char *(strrchr)(const char *s, int c)
-{
-	const char *p = s + strlen(s);
-
-	for (; *p != (char)c; --p)
-		if (p == s)
-			return NULL;
-
-	return (char *)p;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSPN
 /**
  * strspn - Calculate the length of the initial substring of @s which only
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -21,6 +21,7 @@ lib-y += strlcpy.o
 lib-y += strlen.o
 lib-y += strncmp.o
 lib-y += strnlen.o
+lib-y += strrchr.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
 
--- /dev/null
+++ b/xen/lib/strrchr.c
@@ -0,0 +1,31 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strrchr - Find the last occurrence of a character in a string
+ * @s: The string to be searched
+ * @c: The character to search for
+ */
+char *(strrchr)(const char *s, int c)
+{
+	const char *p = s + strlen(s);
+
+	for (; *p != (char)c; --p)
+		if (p == s)
+			return NULL;
+
+	return (char *)p;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:26:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:26:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104341.199484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuX8-0003P6-J7; Thu, 01 Apr 2021 10:26:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104341.199484; Thu, 01 Apr 2021 10: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 1lRuX8-0003Oz-G1; Thu, 01 Apr 2021 10:26:38 +0000
Received: by outflank-mailman (input) for mailman id 104341;
 Thu, 01 Apr 2021 10:26:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuX6-0003Ob-9q
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:26:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a7d08cfe-1552-42ff-bcc2-153e05ca75a5;
 Thu, 01 Apr 2021 10:26:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B7342AEAE;
 Thu,  1 Apr 2021 10:26: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: a7d08cfe-1552-42ff-bcc2-153e05ca75a5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272794; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=4Z8DfS5OHynFArmQHJ/930SfzIBU1VIyvdrzD+YeXk8=;
	b=Y0eyErH7fv+/zGHrXkC8sVM7VlNzapc1eFJpkUCvGBbk2xhxC6bGEZpbwoavXDaWa4tSZ8
	6mKoZjZWNgY/UJPeSXOpB/iM0CKMoIacWLNSYFKRqcGSL/Wpb1w3gSBKEx4KHw24kUW7Mr
	k7X1xmXHsbDAGXV4viWVgG3YicHtknI=
Subject: [PATCH 18/23] lib: move strstr()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <168ae189-b247-af8f-a351-6e4df7e3c19f@suse.com>
Date: Thu, 1 Apr 2021 12:26:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -131,27 +131,6 @@ char * strsep(char **s, const char *ct)
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRSTR
-/**
- * strstr - Find the first substring in a %NUL terminated string
- * @s1: The string to be searched
- * @s2: The string to search for
- */
-char *(strstr)(const char *s1, const char *s2)
-{
-	size_t l1, l2 = strlen(s2);
-
-	if (!l2)
-		return (char *)s1;
-
-	for (l1 = strlen(s1); l1 >= l2; --l1, ++s1)
-		if (!memcmp(s1, s2, l2))
-			return (char *)s1;
-
-	return NULL;
-}
-#endif
-
 /*
  * Local variables:
  * mode: C
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -22,6 +22,7 @@ lib-y += strlen.o
 lib-y += strncmp.o
 lib-y += strnlen.o
 lib-y += strrchr.o
+lib-y += strstr.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
 
--- /dev/null
+++ b/xen/lib/strstr.c
@@ -0,0 +1,34 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strstr - Find the first substring in a %NUL terminated string
+ * @s1: The string to be searched
+ * @s2: The string to search for
+ */
+char *(strstr)(const char *s1, const char *s2)
+{
+	size_t l1, l2 = strlen(s2);
+
+	if (!l2)
+		return (char *)s1;
+
+	for (l1 = strlen(s1); l1 >= l2; --l1, ++s1)
+		if (!memcmp(s1, s2, l2))
+			return (char *)s1;
+
+	return NULL;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:26:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:26:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104343.199497 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuXS-0003X1-T7; Thu, 01 Apr 2021 10:26:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104343.199497; Thu, 01 Apr 2021 10: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 1lRuXS-0003Wu-PF; Thu, 01 Apr 2021 10:26:58 +0000
Received: by outflank-mailman (input) for mailman id 104343;
 Thu, 01 Apr 2021 10:26:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuXR-0003Wf-Km
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:26:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 811f562e-6d16-4cd2-afd5-0cf9757c47c1;
 Thu, 01 Apr 2021 10:26:56 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 27128AED7;
 Thu,  1 Apr 2021 10:26: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: 811f562e-6d16-4cd2-afd5-0cf9757c47c1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272816; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=NxQjcpTUPkL0effw4pmC6gwxzyQLMUQ+vwEPhHr3nYI=;
	b=fLUGBvAiPxFNk7QC/qrTxuN05bRy5jsHomCamd/VgNaoU6RfxsFxtSV/vhg8yfRNX3YXR0
	YoTqU/4KtcwEhBJjnASAVDlMlWJAlK7qaR93dn3xh37UDqFKBu9NRRAclWrOVeWwPLwY6u
	ZkFEPSvk0EVfDHTC88Maw77ashJn/vo=
Subject: [PATCH 19/23] lib: move strcasecmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <e48fe298-98d0-8227-b494-401e3431d475@suse.com>
Date: Thu, 1 Apr 2021 12:26:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -41,21 +41,6 @@ int strnicmp(const char *s1, const char
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRCASECMP
-int (strcasecmp)(const char *s1, const char *s2)
-{
-    int c1, c2;
-
-    do
-    {
-        c1 = tolower(*s1++);
-        c2 = tolower(*s2++);
-    } while ( c1 == c2 && c1 != 0 );
-
-    return c1 - c2;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSPN
 /**
  * strspn - Calculate the length of the initial substring of @s which only
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -14,6 +14,7 @@ lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
+lib-y += strcasecmp.o
 lib-y += strchr.o
 lib-y += strcmp.o
 lib-y += strlcat.o
--- /dev/null
+++ b/xen/lib/strcasecmp.c
@@ -0,0 +1,29 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+#include <xen/ctype.h>
+
+int (strcasecmp)(const char *s1, const char *s2)
+{
+    int c1, c2;
+
+    do
+    {
+        c1 = tolower(*s1++);
+        c2 = tolower(*s2++);
+    } while ( c1 == c2 && c1 != 0 );
+
+    return c1 - c2;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:27:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:27:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104348.199508 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuXq-0003fA-8n; Thu, 01 Apr 2021 10:27:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104348.199508; Thu, 01 Apr 2021 10:27:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuXq-0003f3-5d; Thu, 01 Apr 2021 10:27:22 +0000
Received: by outflank-mailman (input) for mailman id 104348;
 Thu, 01 Apr 2021 10:27:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuXo-0003es-OI
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:27:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1a81a439-b431-45db-9751-ccc66b09c34a;
 Thu, 01 Apr 2021 10:27:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E6FD4AED7;
 Thu,  1 Apr 2021 10:27:18 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1a81a439-b431-45db-9751-ccc66b09c34a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272839; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=SjGtm5W7+Y86JR8RySHNQ6b5vRhziaOW7hdEkR5iKDg=;
	b=Jc31pHl8aesvIsWE6/VcRkjFdPLqtXGbS6KUplq9842osHVXpo22OVq/8laWFTKEJxRqGT
	TsqCP1bXFaz4fE3GfJODgxgMi/mCMui0kaDFWwUb1qOvnBIaj/AZo5WAyNwNkWUYgYTScm
	bAMHYSLcWkRl5Ebb4eis+/PhYSFrmW4=
Subject: [PATCH 20/23] lib: move/rename strnicmp() to strncasecmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <1db40fc3-df7d-530e-6288-261dbd200e26@suse.com>
Date: Thu, 1 Apr 2021 12:27:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While moving the implementation, also rename it to match strcasecmp(),
allowing the similar use of a compiler builting in this case as well.

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

--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1223,8 +1223,8 @@ static int __init map_range_to_domain(co
      * They are not MMIO and therefore a domain should not be able to
      * manage them via the IOMEM interface.
      */
-    if ( strnicmp(dt_node_full_name(dev), "/reserved-memory/",
-         strlen("/reserved-memory/")) != 0 )
+    if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/",
+                     strlen("/reserved-memory/")) != 0 )
     {
         res = iomem_permit_access(d, paddr_to_pfn(addr),
                 paddr_to_pfn(PAGE_ALIGN(addr + len - 1)));
--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -8,39 +8,6 @@
 #include <xen/string.h>
 #include <xen/ctype.h>
 
-#ifndef __HAVE_ARCH_STRNICMP
-/**
- * strnicmp - Case insensitive, length-limited string comparison
- * @s1: One string
- * @s2: The other string
- * @len: the maximum number of characters to compare
- */
-int strnicmp(const char *s1, const char *s2, size_t len)
-{
-	/* Yes, Virginia, it had better be unsigned */
-	unsigned char c1, c2;
-
-	c1 = 0;	c2 = 0;
-	if (len) {
-		do {
-			c1 = *s1; c2 = *s2;
-			s1++; s2++;
-			if (!c1)
-				break;
-			if (!c2)
-				break;
-			if (c1 == c2)
-				continue;
-			c1 = tolower(c1);
-			c2 = tolower(c2);
-			if (c1 != c2)
-				break;
-		} while (--len);
-	}
-	return (int)c1 - (int)c2;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSPN
 /**
  * strspn - Calculate the length of the initial substring of @s which only
--- a/xen/drivers/acpi/pmstat.c
+++ b/xen/drivers/acpi/pmstat.c
@@ -275,14 +275,14 @@ static int get_cpufreq_para(struct xen_s
         strlcpy(op->u.get_para.scaling_governor, "Unknown", CPUFREQ_NAME_LEN);
 
     /* governor specific para */
-    if ( !strnicmp(op->u.get_para.scaling_governor, 
-                   "userspace", CPUFREQ_NAME_LEN) )
+    if ( !strncasecmp(op->u.get_para.scaling_governor,
+                      "userspace", CPUFREQ_NAME_LEN) )
     {
         op->u.get_para.u.userspace.scaling_setspeed = policy->cur;
     }
 
-    if ( !strnicmp(op->u.get_para.scaling_governor, 
-                   "ondemand", CPUFREQ_NAME_LEN) )
+    if ( !strncasecmp(op->u.get_para.scaling_governor,
+                      "ondemand", CPUFREQ_NAME_LEN) )
     {
         ret = get_cpufreq_ondemand_para(
             &op->u.get_para.u.ondemand.sampling_rate_max,
@@ -350,8 +350,8 @@ static int set_cpufreq_para(struct xen_s
     {
         unsigned int freq =op->u.set_para.ctrl_value;
 
-        if ( !strnicmp(policy->governor->name,
-                       "userspace", CPUFREQ_NAME_LEN) )
+        if ( !strncasecmp(policy->governor->name,
+                          "userspace", CPUFREQ_NAME_LEN) )
             ret = write_userspace_scaling_setspeed(op->cpuid, freq);
         else
             ret = -EINVAL;
@@ -363,8 +363,8 @@ static int set_cpufreq_para(struct xen_s
     {
         unsigned int sampling_rate = op->u.set_para.ctrl_value;
 
-        if ( !strnicmp(policy->governor->name,
-                       "ondemand", CPUFREQ_NAME_LEN) )
+        if ( !strncasecmp(policy->governor->name,
+                          "ondemand", CPUFREQ_NAME_LEN) )
             ret = write_ondemand_sampling_rate(sampling_rate);
         else
             ret = -EINVAL;
@@ -376,8 +376,8 @@ static int set_cpufreq_para(struct xen_s
     {
         unsigned int up_threshold = op->u.set_para.ctrl_value;
 
-        if ( !strnicmp(policy->governor->name,
-                       "ondemand", CPUFREQ_NAME_LEN) )
+        if ( !strncasecmp(policy->governor->name,
+                          "ondemand", CPUFREQ_NAME_LEN) )
             ret = write_ondemand_up_threshold(up_threshold);
         else
             ret = -EINVAL;
--- a/xen/drivers/cpufreq/cpufreq.c
+++ b/xen/drivers/cpufreq/cpufreq.c
@@ -111,7 +111,7 @@ struct cpufreq_governor *__find_governor
         return NULL;
 
     list_for_each_entry(t, &cpufreq_governor_list, governor_list)
-        if (!strnicmp(governor, t->name, CPUFREQ_NAME_LEN))
+        if (!strncasecmp(governor, t->name, CPUFREQ_NAME_LEN))
             return t;
 
     return NULL;
--- a/xen/include/xen/string.h
+++ b/xen/include/xen/string.h
@@ -16,8 +16,8 @@ size_t strlcpy(char *, const char *, siz
 size_t strlcat(char *, const char *, size_t);
 int strcmp(const char *, const char *);
 int strncmp(const char *, const char *, size_t);
-int strnicmp(const char *, const char *, size_t);
 int strcasecmp(const char *, const char *);
+int strncasecmp(const char *, const char *, size_t);
 char *strchr(const char *, int);
 char *strrchr(const char *, int);
 char *strstr(const char *, const char *);
@@ -48,6 +48,10 @@ void *memchr_inv(const void *, int, size
 #define strcasecmp(s1, s2) __builtin_strcasecmp(s1, s2)
 #endif
 
+#ifndef __HAVE_ARCH_STRCASECMP
+#define strncasecmp(s1, s2, n) __builtin_strncasecmp(s1, s2, n)
+#endif
+
 #ifndef __HAVE_ARCH_STRCHR
 #define strchr(s1, c) __builtin_strchr(s1, c)
 #endif
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -20,6 +20,7 @@ lib-y += strcmp.o
 lib-y += strlcat.o
 lib-y += strlcpy.o
 lib-y += strlen.o
+lib-y += strncasecmp.o
 lib-y += strncmp.o
 lib-y += strnlen.o
 lib-y += strrchr.o
--- /dev/null
+++ b/xen/lib/strncasecmp.c
@@ -0,0 +1,47 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+#include <xen/ctype.h>
+
+/**
+ * strncasecmp - Case insensitive, length-limited string comparison
+ * @s1: One string
+ * @s2: The other string
+ * @len: the maximum number of characters to compare
+ */
+int (strncasecmp)(const char *s1, const char *s2, size_t len)
+{
+	/* Yes, Virginia, it had better be unsigned */
+	unsigned char c1, c2;
+
+	c1 = 0;	c2 = 0;
+	if (len) {
+		do {
+			c1 = *s1; c2 = *s2;
+			s1++; s2++;
+			if (!c1)
+				break;
+			if (!c2)
+				break;
+			if (c1 == c2)
+				continue;
+			c1 = tolower(c1);
+			c2 = tolower(c2);
+			if (c1 != c2)
+				break;
+		} while (--len);
+	}
+	return (int)c1 - (int)c2;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:27:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:27:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104351.199521 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuYF-0003mZ-Hn; Thu, 01 Apr 2021 10:27:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104351.199521; Thu, 01 Apr 2021 10:27:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuYF-0003mS-EK; Thu, 01 Apr 2021 10:27:47 +0000
Received: by outflank-mailman (input) for mailman id 104351;
 Thu, 01 Apr 2021 10:27:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuYD-0003m8-SO
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:27:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id bd0f8501-bf0b-47ff-b6d4-a846ea0fdb10;
 Thu, 01 Apr 2021 10:27:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4BCDEAED7;
 Thu,  1 Apr 2021 10:27: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: bd0f8501-bf0b-47ff-b6d4-a846ea0fdb10
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272864; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nM+SAR2VDtnfWZt6Cj4esRpAm2vc6rPFnc2zt/YNybg=;
	b=iG6kGnwhMHT1Ry4Y660ojHxK6QtEzq9Fc/RoUKRR02U4ZgSxTLIftFVWB6qAaEjjoJ061S
	1eANE+OCSlJHbbXROPO2rS9FgoDRb72jy4CLIZL28RhWMM2MYjO8h2bUNWfG1D3ulx9GhV
	SrnuhvFkygUCWSrEEfPYu1eo5kVbkWc=
Subject: [PATCH 21/23] lib: move strspn()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <8d5d06fe-7e8b-6275-caa0-bc14c7dbd21f@suse.com>
Date: Thu, 1 Apr 2021 12:27:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

In fact the function is unused at present, and hence will now get
omitted from the final binaries.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -8,33 +8,6 @@
 #include <xen/string.h>
 #include <xen/ctype.h>
 
-#ifndef __HAVE_ARCH_STRSPN
-/**
- * strspn - Calculate the length of the initial substring of @s which only
- * 	contain letters in @accept
- * @s: The string to be searched
- * @accept: The string to search for
- */
-size_t strspn(const char *s, const char *accept)
-{
-	const char *p;
-	const char *a;
-	size_t count = 0;
-
-	for (p = s; *p != '\0'; ++p) {
-		for (a = accept; *a != '\0'; ++a) {
-			if (*p == *a)
-				break;
-		}
-		if (*a == '\0')
-			return count;
-		++count;
-	}
-
-	return count;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRPBRK
 /**
  * strpbrk - Find the first occurrence of a set of characters
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -24,6 +24,7 @@ lib-y += strncasecmp.o
 lib-y += strncmp.o
 lib-y += strnlen.o
 lib-y += strrchr.o
+lib-y += strspn.o
 lib-y += strstr.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
--- /dev/null
+++ b/xen/lib/strspn.c
@@ -0,0 +1,40 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strspn - Calculate the length of the initial substring of @s which only
+ * 	contain letters in @accept
+ * @s: The string to be searched
+ * @accept: The string to search for
+ */
+size_t strspn(const char *s, const char *accept)
+{
+	const char *p;
+	const char *a;
+	size_t count = 0;
+
+	for (p = s; *p != '\0'; ++p) {
+		for (a = accept; *a != '\0'; ++a) {
+			if (*p == *a)
+				break;
+		}
+		if (*a == '\0')
+			return count;
+		++count;
+	}
+
+	return count;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:28:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:28:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104355.199533 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuYf-0003uB-Qe; Thu, 01 Apr 2021 10:28:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104355.199533; Thu, 01 Apr 2021 10: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 1lRuYf-0003u4-N3; Thu, 01 Apr 2021 10:28:13 +0000
Received: by outflank-mailman (input) for mailman id 104355;
 Thu, 01 Apr 2021 10:28:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuYd-0003tJ-KD
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:28:11 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1478dab0-275f-40ce-b15b-7c79bc5c64d5;
 Thu, 01 Apr 2021 10:28:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2140FAEAE;
 Thu,  1 Apr 2021 10:28: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: 1478dab0-275f-40ce-b15b-7c79bc5c64d5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272886; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=TDElynrA860OZeILtOTuJZZOjvaOuLrkyPrL9SlIZ48=;
	b=ih/DV0qn6PP0h4TaCI//rSw68v1Ey73GM+SKB8rNMyrkhGldQClNBDWKqERbdB7Vmyq9G1
	KHw3dSAn+zrM2oiT/Vmj7HD/WYP7+tbgZowuwOMR1uvw39ZoIN42weLROytxkY1Pwc5Jt4
	U8CZ/H72u8RQlA+qtMu9j2q/vO+vKyE=
Subject: [PATCH 22/23] lib: move strpbrk()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <8a492d52-7c2b-f926-9ba2-8e57ec0bbc97@suse.com>
Date: Thu, 1 Apr 2021 12:28:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -8,26 +8,6 @@
 #include <xen/string.h>
 #include <xen/ctype.h>
 
-#ifndef __HAVE_ARCH_STRPBRK
-/**
- * strpbrk - Find the first occurrence of a set of characters
- * @cs: The string to be searched
- * @ct: The characters to search for
- */
-char * strpbrk(const char * cs,const char * ct)
-{
-	const char *sc1,*sc2;
-
-	for( sc1 = cs; *sc1 != '\0'; ++sc1) {
-		for( sc2 = ct; *sc2 != '\0'; ++sc2) {
-			if (*sc1 == *sc2)
-				return (char *) sc1;
-		}
-	}
-	return NULL;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSEP
 /**
  * strsep - Split a string into tokens
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -23,6 +23,7 @@ lib-y += strlen.o
 lib-y += strncasecmp.o
 lib-y += strncmp.o
 lib-y += strnlen.o
+lib-y += strpbrk.o
 lib-y += strrchr.o
 lib-y += strspn.o
 lib-y += strstr.o
--- /dev/null
+++ b/xen/lib/strpbrk.c
@@ -0,0 +1,33 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strpbrk - Find the first occurrence of a set of characters
+ * @cs: The string to be searched
+ * @ct: The characters to search for
+ */
+char *strpbrk(const char * cs,const char * ct)
+{
+	const char *sc1,*sc2;
+
+	for( sc1 = cs; *sc1 != '\0'; ++sc1) {
+		for( sc2 = ct; *sc2 != '\0'; ++sc2) {
+			if (*sc1 == *sc2)
+				return (char *) sc1;
+		}
+	}
+	return NULL;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:28:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:28:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104357.199545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuYu-0003zX-2w; Thu, 01 Apr 2021 10:28:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104357.199545; Thu, 01 Apr 2021 10: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 1lRuYt-0003zP-Vy; Thu, 01 Apr 2021 10:28:27 +0000
Received: by outflank-mailman (input) for mailman id 104357;
 Thu, 01 Apr 2021 10:28:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuYt-0003zD-FY
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:28:27 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d0afee1c-02a0-4d9d-9fb5-3fadceb45989;
 Thu, 01 Apr 2021 10:28:26 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id EF251AEAE;
 Thu,  1 Apr 2021 10:28: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: d0afee1c-02a0-4d9d-9fb5-3fadceb45989
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617272906; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=VvuuIHZDWbgJZbFTLmgAhc0Yr8Pw5QBP9Pn9CAur/LY=;
	b=ibt83e9cmBXcUUMeBS1l43oM1LDzCCnKqbQOTfC44+CqoRMy3pfwOBKX2++V1GWDfjjoSU
	0f/Crb8UOD60/rmt1mdnAl6aai7z3jWlVTyq7sbrbV5q/bTaStnMTION02VMAuVM5zVgww
	RiDOucE/r7K9rehJxWeAjg/Jgg4T7hg=
Subject: [PATCH 23/23] lib: move strsep()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Message-ID: <692a24a5-c7a1-b6cc-b618-a620432a030d@suse.com>
Date: Thu, 1 Apr 2021 12:28:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/common/Makefile
+++ b/xen/common/Makefile
@@ -40,7 +40,6 @@ obj-y += softirq.o
 obj-y += smp.o
 obj-y += spinlock.o
 obj-y += stop_machine.o
-obj-y += string.o
 obj-y += symbols.o
 obj-y += tasklet.o
 obj-y += time.o
--- a/xen/common/string.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- *  linux/lib/string.c
- *
- *  Copyright (C) 1991, 1992  Linus Torvalds
- */
-
-#include <xen/types.h>
-#include <xen/string.h>
-#include <xen/ctype.h>
-
-#ifndef __HAVE_ARCH_STRSEP
-/**
- * strsep - Split a string into tokens
- * @s: The string to be searched
- * @ct: The characters to search for
- *
- * strsep() updates @s to point after the token, ready for the next call.
- *
- * It returns empty tokens, too, behaving exactly like the libc function
- * of that name. In fact, it was stolen from glibc2 and de-fancy-fied.
- * Same semantics, slimmer shape. ;)
- */
-char * strsep(char **s, const char *ct)
-{
-	char *sbegin = *s, *end;
-
-	if (sbegin == NULL)
-		return NULL;
-
-	end = strpbrk(sbegin, ct);
-	if (end)
-		*end++ = '\0';
-	*s = end;
-
-	return sbegin;
-}
-#endif
-
-/*
- * Local variables:
- * mode: C
- * c-file-style: "BSD"
- * c-basic-offset: 8
- * tab-width: 8
- * indent-tabs-mode: t
- * End:
- */
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -25,6 +25,7 @@ lib-y += strncmp.o
 lib-y += strnlen.o
 lib-y += strpbrk.o
 lib-y += strrchr.o
+lib-y += strsep.o
 lib-y += strspn.o
 lib-y += strstr.o
 lib-$(CONFIG_X86) += xxhash32.o
--- /dev/null
+++ b/xen/lib/strsep.c
@@ -0,0 +1,41 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strsep - Split a string into tokens
+ * @s: The string to be searched
+ * @ct: The characters to search for
+ *
+ * strsep() updates @s to point after the token, ready for the next call.
+ *
+ * It returns empty tokens, too, behaving exactly like the libc function
+ * of that name. In fact, it was stolen from glibc2 and de-fancy-fied.
+ * Same semantics, slimmer shape. ;)
+ */
+char *strsep(char **s, const char *ct)
+{
+	char *sbegin = *s, *end;
+
+	if (sbegin == NULL)
+		return NULL;
+
+	end = strpbrk(sbegin, ct);
+	if (end)
+		*end++ = '\0';
+	*s = end;
+
+	return sbegin;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:50:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:50:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104368.199584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuuM-0006ph-6k; Thu, 01 Apr 2021 10:50:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104368.199584; Thu, 01 Apr 2021 10:50: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 1lRuuM-0006pa-3f; Thu, 01 Apr 2021 10:50:38 +0000
Received: by outflank-mailman (input) for mailman id 104368;
 Thu, 01 Apr 2021 10:50:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SiKL=I6=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lRuuK-0006pU-Sb
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:50:36 +0000
Received: from mail-wr1-x436.google.com (unknown [2a00:1450:4864:20::436])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a00ff4ec-30ad-4c64-abcc-476bd3997a1d;
 Thu, 01 Apr 2021 10:50:35 +0000 (UTC)
Received: by mail-wr1-x436.google.com with SMTP id j7so1365592wrd.1
 for <xen-devel@lists.xenproject.org>; Thu, 01 Apr 2021 03:50:35 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:ac48:6475:41e4:208d?
 ([2a00:23c5:5785:9a01:ac48:6475:41e4:208d])
 by smtp.gmail.com with ESMTPSA id m15sm8657504wrp.96.2021.04.01.03.50.34
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 01 Apr 2021 03:50: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: a00ff4ec-30ad-4c64-abcc-476bd3997a1d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:cc:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=eeBlpa+LPXFDtgiKt0qcvo3MEbkWu2S5Fp2G4dTK3bE=;
        b=M1fvt9nISqei9ClE+PVnLbB1A3UW3N+v56I1RKzh0fgFdwhqjVuWJK3ZJ7yaFuDSkV
         lMtKg3/ojc9nUKwAauLZ0ahGUjWn2VPmwSfUR27NDQjLHghvMq4DYjHOm0uTw5Y8lwtD
         c1lmahjAhWQV8ImclMeuhsTvN2R/XqMrd7Bz/5u74nDkDagAWMUuZ5StcSAFdQ0gaYd9
         R4aWrL35UjXHmady3jIa20q2cSD7qdzaVwrWcVJWOZp78v4mPIIgIMGVuT7SeCYuVOyf
         GRZBjgKBOPTVnFwZx7wJgwPGUJAIQY4jo94h8OyuNVrxGRMb06yJtT96H26CRkCEexe4
         eLxA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:cc:references
         :message-id:date:user-agent:mime-version:in-reply-to
         :content-language:content-transfer-encoding;
        bh=eeBlpa+LPXFDtgiKt0qcvo3MEbkWu2S5Fp2G4dTK3bE=;
        b=ja1AAooFriorlzkhnyM20IKG4oEU7cQOXPsrrC/e2BoMnt6nKdVTRvZzUi+m/21oEF
         uaWsnMnXm68dNaLXwTfL/xahPi6VgOpPFmiIiD/RgEH0+Eghx1Nt8jYYb8maU0sChqsD
         9eGB4EsDFtg+/alFBVf9mXEpop0k19YDLjjypUHsswMa+Yr/ocPSRe3lxRd4TdKrD6XQ
         AnB1BJPDAn1PD4FHFMmG1Mu5C6TJpUD81fS0ulMtXRMYh3OL9KrXZORIWDSP+IqG8i3V
         EHNEyyHrDRjDVPs3llURD3sAPVV/EjxMPaD5uPIHvyLZAqqtjcf53bcfS6MSHxBas5gY
         Hnlg==
X-Gm-Message-State: AOAM530fe3boThEUJNcwcsTL2oo4ytH3MWpKF6Leum0sAbjel0/tBe5S
	ujWixP3dpMsXo2V1yd76Qqs=
X-Google-Smtp-Source: ABdhPJxKjBpsWIoE8kgY6W/qb93RgeBkNXANnBUQIcKVN3959hT1QD7XJx/JlM8K0ctLox3n2LLqtw==
X-Received: by 2002:adf:f010:: with SMTP id j16mr9177774wro.251.1617274235115;
        Thu, 01 Apr 2021 03:50:35 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH] x86/viridian: EOI MSR should always happen in affected
 vCPU context
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Wei Liu <wl@xen.org>, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <20210401102252.95196-1-roger.pau@citrix.com>
Message-ID: <5b4ec824-8cfa-8795-3a96-fb18527d3c18@xen.org>
Date: Thu, 1 Apr 2021 11:50:33 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210401102252.95196-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01/04/2021 11:22, Roger Pau Monne wrote:
> The HV_X64_MSR_EOI wrmsr should always happen with the target vCPU
> as current, as there's no support for EOI'ing interrupts on a remote
> vCPU.
> 
> While there also turn the unconditional assert at the top of the
> function into an error on non-debug builds.
> 
> No functional change intended.
> 
> Requested-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Reviewed-by: Paul Durrant <paul@xen.org>

> ---
>   xen/arch/x86/hvm/viridian/synic.c | 11 ++++++++++-
>   1 file changed, 10 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/arch/x86/hvm/viridian/synic.c b/xen/arch/x86/hvm/viridian/synic.c
> index 22e2df27e5d..e18538c60a6 100644
> --- a/xen/arch/x86/hvm/viridian/synic.c
> +++ b/xen/arch/x86/hvm/viridian/synic.c
> @@ -79,11 +79,20 @@ int viridian_synic_wrmsr(struct vcpu *v, uint32_t idx, uint64_t val)
>       struct viridian_vcpu *vv = v->arch.hvm.viridian;
>       struct domain *d = v->domain;
>   
> -    ASSERT(v == current || !v->is_running);
> +    if ( v != current && v->is_running )
> +    {
> +        ASSERT_UNREACHABLE();
> +        return X86EMUL_EXCEPTION;
> +    }
>   
>       switch ( idx )
>       {
>       case HV_X64_MSR_EOI:
> +        if ( v != current )
> +        {
> +            ASSERT_UNREACHABLE();
> +            return X86EMUL_EXCEPTION;
> +        }
>           vlapic_EOI_set(vcpu_vlapic(v));
>           break;
>   
> 



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 10:55:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 10:55:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104371.199597 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuyp-000739-Pl; Thu, 01 Apr 2021 10:55:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104371.199597; Thu, 01 Apr 2021 10:55:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRuyp-000732-M6; Thu, 01 Apr 2021 10:55:15 +0000
Received: by outflank-mailman (input) for mailman id 104371;
 Thu, 01 Apr 2021 10:55:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRuyo-00072x-2G
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 10:55:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 382cc294-1cbb-469d-825a-63f79450266c;
 Thu, 01 Apr 2021 10:55:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BBA78AF1F;
 Thu,  1 Apr 2021 10:55: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: 382cc294-1cbb-469d-825a-63f79450266c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617274511; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=6FuAGQnGmOZNlSaQzzz/Ce4FNkqpr4tvjcpEDuNr6/A=;
	b=kSlqY0Md4l4/o8If/01DMSOVN1z9snbhCVeJI7MMiSyNt/+dq0Rc2k8r1t+mGVEJRsnfqn
	FXMpzviQ6GTMwu6IY8xeMY9mBY0b/q3kHWJflAg5A09DBI2pXgl0OonJf7wo5dzhHuLD7p
	ezT6OsjlMDnhbf+jbc7Bdf4lO02/wEo=
Subject: Re: [PATCH] x86/viridian: EOI MSR should always happen in affected
 vCPU context
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Paul Durrant <paul@xen.org>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <20210401102252.95196-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e59eee89-d799-0b91-2397-dbb3f1811850@suse.com>
Date: Thu, 1 Apr 2021 12:55:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210401102252.95196-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 12:22, Roger Pau Monne wrote:
> The HV_X64_MSR_EOI wrmsr should always happen with the target vCPU
> as current, as there's no support for EOI'ing interrupts on a remote
> vCPU.
> 
> While there also turn the unconditional assert at the top of the
> function into an error on non-debug builds.
> 
> No functional change intended.
> 
> Requested-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

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

> --- a/xen/arch/x86/hvm/viridian/synic.c
> +++ b/xen/arch/x86/hvm/viridian/synic.c
> @@ -79,11 +79,20 @@ int viridian_synic_wrmsr(struct vcpu *v, uint32_t idx, uint64_t val)
>      struct viridian_vcpu *vv = v->arch.hvm.viridian;
>      struct domain *d = v->domain;
>  
> -    ASSERT(v == current || !v->is_running);
> +    if ( v != current && v->is_running )
> +    {
> +        ASSERT_UNREACHABLE();
> +        return X86EMUL_EXCEPTION;
> +    }
>  
>      switch ( idx )
>      {
>      case HV_X64_MSR_EOI:
> +        if ( v != current )
> +        {
> +            ASSERT_UNREACHABLE();
> +            return X86EMUL_EXCEPTION;
> +        }
>          vlapic_EOI_set(vcpu_vlapic(v));

I suppose this function then also wants to lose its parameter. But
I'll reply to patch 1 of the other series again as well.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 11:06:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 11:06:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104377.199611 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRv9r-00084G-1b; Thu, 01 Apr 2021 11:06:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104377.199611; Thu, 01 Apr 2021 11:06: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 1lRv9q-000849-Uk; Thu, 01 Apr 2021 11:06:38 +0000
Received: by outflank-mailman (input) for mailman id 104377;
 Thu, 01 Apr 2021 11:06:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRv9q-000844-56
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 11:06:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d67fbdd7-89df-4ba2-b74e-6009903a086d;
 Thu, 01 Apr 2021 11:06:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 69583B1AC;
 Thu,  1 Apr 2021 11:06: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: d67fbdd7-89df-4ba2-b74e-6009903a086d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617275196; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=u4iJHiMsZFzlQ/O/sp9kJ/RKkMMBzbfE+6qQl6oYlL8=;
	b=qdhFoe1p0uU+/cHTU0qFJopNBaVx3lIuzWUwhqEmGC+WglDOHkqHcEpsh35IE4Qp2aVIT1
	1OhMDnO2iLvGG5RCsvlldkE/BjtmTdxCaAYu1XJLa3QbB/6AhkPDzMKFG1rl0TEyqOYc5p
	hm4rR1sVpOLnstsSvgi2GJdCb9rlxi8=
Subject: Re: [PATCH v3 01/11] x86/hvm: drop vcpu parameter from vlapic EOI
 callbacks
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, Paul Durrant <pdurrant@amazon.com>,
 xen-devel@lists.xenproject.org
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-2-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <008d8d8c-f932-c3f3-e06d-99aa6721a59f@suse.com>
Date: Thu, 1 Apr 2021 13:06:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210331103303.79705-2-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 31.03.2021 12:32, Roger Pau Monne wrote:
> EOIs are always executed in guest vCPU context, so there's no reason to
> pass a vCPU parameter around as can be fetched from current.

While not overly problematic, I'd like to point out that there's not a
single vcpu parameter being dropped here - in both cases it's struct
domain *.

> --- a/xen/arch/x86/hvm/vlapic.c
> +++ b/xen/arch/x86/hvm/vlapic.c
> @@ -459,13 +459,10 @@ void vlapic_EOI_set(struct vlapic *vlapic)
>  
>  void vlapic_handle_EOI(struct vlapic *vlapic, u8 vector)
>  {
> -    struct vcpu *v = vlapic_vcpu(vlapic);
> -    struct domain *d = v->domain;
> -
>      if ( vlapic_test_vector(vector, &vlapic->regs->data[APIC_TMR]) )
> -        vioapic_update_EOI(d, vector);
> +        vioapic_update_EOI(vector);
>  
> -    hvm_dpci_msi_eoi(d, vector);
> +    hvm_dpci_msi_eoi(vector);
>  }

The Viridian path pointed out before was only an example. I'm afraid
the call from vlapic_has_pending_irq() to vlapic_EOI_set() is also
far from obvious that it always has "v == current". What we end up
with here is a mix of passed in value (vlapic) and assumption of the
call being for the vCPU / domain we're running on. At the very least
I think this would want documenting here in some way (maybe ASSERT(),
definitely mentioning in the description), but even better would
perhaps be if the parameter of the function here as well as further
ones involved would also be dropped then.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 11:22:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 11:22:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104381.199626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRvOz-0001Pk-AN; Thu, 01 Apr 2021 11:22:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104381.199626; Thu, 01 Apr 2021 11:22: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 1lRvOz-0001Pd-7U; Thu, 01 Apr 2021 11:22:17 +0000
Received: by outflank-mailman (input) for mailman id 104381;
 Thu, 01 Apr 2021 11:22:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRvOy-0001PY-9L
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 11:22:16 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3b080904-f558-4b1e-b573-df4b48063e9a;
 Thu, 01 Apr 2021 11:22: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: 3b080904-f558-4b1e-b573-df4b48063e9a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617276134;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=LGh3DD7gLPUnzQejmmgzvkBX3QsisjgN8KoXuZurEcA=;
  b=Ro+oGmZFS5D39AgXiD9kBLQcimK45712P+G45N/C++QcZC8Qz0gdgiie
   a5LpOhNvKuJZodUJOnaSMYKakRXLfwGYslUO9GdW+zQova1LJhFtq9n+v
   y4x/vrAyNxVmF3qxIDFgL+RKBH3DiwPD8EM+1GdiZzceXu9psdRiSIqLz
   E=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: WKkRGSlnfElOu1aBUu5IHveLyYJt2jwzLc4+qdwKPtR028rKFpTleEoyzCy4WX8eppJHVKCFKE
 m0sCYspzl1YAtNe01cjzHt2TNnqDJx8/wcvvLaD+46tcfjA36dbQ7zqTLG/0kUftgk8HchwU+f
 GuypLwt45RxREaOvmjplzhR3skhxcJCIwajjHe5xoB4FmZ2r4RPQfTK0OY6FfiouWmAnAdeH2F
 yWk48Dn5gPilb1pAoAYmAJYqkaVNaCh6H1sxjMD28OhfimAvsEK7dESnCvZ8ujpW0R7BUhq5M9
 18o=
X-SBRS: 5.2
X-MesageID: 41060203
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:tXhx66x48NM+CQH10lH0KrPx/uskLtp033Aq2lEZdDV8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr3//dOgbU5F7GkQQXgpS+UPJhvhLGSpwHINg/f0qpm1a
 lme7VjE9GYNzJHpOvz/QXQKbkd6fad9qTAv4nj5lNMaS0vVK169Qd+DW+gYyhLbS1LH4AwGp
 bZxucvnUvCRV0tYs62BmYIUoH4zrWmqLvcbQMbHBli0QGSjFqTg4LSKQSS3RsVTlp0sNUf2F
 XC+jaZ2oyT98uV5zWZ/G/V4pRQlrLau6Z+Lf3JsOc5AHHBjg6pYa5oRrGNuiskydvflGoCoZ
 33jDoLe+h19nPNbkG5yCGdpDXI4XIVxFLJjX+enHf5rsTySFsBerR8rLMcSDT1wQ4EnrhHoc
 V29lPcjbV7J1f8uR64wN7yWxRjhiOP0AEfuN9WtVNze88jcrNLxLZvmn99IdM7Mw/RzpsoK+
 VqBNG03octTXqqK0rUuWRi27WXLw0ONybDRkADv/qc2CRNkEZ4yFMFxNcekm1ozuNEd6V5
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="41060203"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=C9h7pw2zNbAsz/CdRPAjpmCfRK5K9FCdODfDVCLVphBM6N9jCCiqOcRxVoOdg/fa4Z+aRsoGYjowE/85mVgTs8T6/2DCFCFJpdWOikQhhOa5aEvjoBjl8p5uS9Wg0sTabwWh6uEWP+u6xFrsZCV+4pixssU+kslON0lAeiD1UaqzNDSUgr7pqB8PRTK6AbPfqP58hX32VKWqcEKQ/6CB0EgIBzV7frAqC2att3n5hN0sq1jZbpCjB/R6EbfEQWD9CGvjXwx4UCCRmqpOjQtGVJxI/n5GoUNETO84hOMrWe3m+NkRRY5OeMfGVO9QpQUyd/sGI81nIs/SWvEhTecRnA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LGh3DD7gLPUnzQejmmgzvkBX3QsisjgN8KoXuZurEcA=;
 b=Q1LSSeRxrd/6+iKa5iVBGgpPJUAuM8ud+l7W3hWPH+ZvAXG1qme3p+uBx4k4/mB6rMXMgp0nt3VEI+ZubfJggsA0o1R2ZkBAl7zNIaqVjpYXJrmPuo78JS6z20N3UgL/oGyBXze28xDczeoRImjGsNHml+9qP+p7/GKYhSh4z3cxJbBDKawA+CGjz6S5CcHEGL4GcM4WlwHyXAkv56ocQ/JdcsonO3x1n6f5Onh8x0F3IxocdGUfMK+TqRzho6GTM2IJuPyzk5P3G5d1gh+m0v9PwA44A7R8AOCmz5XhqjL4cgaKJptSRcnl29g7X3SmXsWaFxUL0oyahTkSDNZv4A==
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=LGh3DD7gLPUnzQejmmgzvkBX3QsisjgN8KoXuZurEcA=;
 b=JnIC6n+Oe5pqsIErywgNLHBbNMMtWf5mks+oCL1CLSDKwqy7kWKJuhFMBPeShU0TbYkOf/GA/GyQx5TS255LY0iGzvOfsVZE2DwanO+jqC6PprNef6aV0mC7Q147eES08Htdq7d961lfZxlzGz9TEHVhLRVDsalvgmmskXCailU=
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: <a236ef77-e6ef-5cbe-60a0-49c8dcd9a208@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/ucode: log blob date also for AMD
Message-ID: <b715a61f-c3fd-3886-2b30-7d74ef931f0c@citrix.com>
Date: Thu, 1 Apr 2021 12:22:05 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <a236ef77-e6ef-5cbe-60a0-49c8dcd9a208@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0268.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:194::21) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3621977b-01dd-4342-1d50-08d8f50063cf
X-MS-TrafficTypeDiagnostic: BN6PR03MB2769:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN6PR03MB2769FD70C2527D28878B5F6CBA7B9@BN6PR03MB2769.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /FlB4fnuzrBtZv0d4/xOt5SHzNV+lPkr8Cb17QyyyX0saf95rt9dA7JGsBHU/HRq1rgRXWN+GnFnBjlMsmYOEsdyWz62NptIKm6xoA19i8tW21nC0iQ+WqeL5XmvYmhbw1D+YA8cMtRmhkwtioWAcjUkpXoIP7v3nU4NIbwr0u2tgMSGHVM+QZgWwhLw/VtKX24GdYgQwDp89sOzqOFJixC7KV+9UDlPRO9JXNEOwp74Nz1fpRtMx6Xjsb4OldbYUyHbOZfnsM4uehPlBU9nqA5JSwQVGXVPlJPLsgGtHywpqu4aR5eot6pPiGrwSPNEopkU2G4wFS2Hd7/wklleKZHtOvGPjGSNZ+h8LEs8A7m+SqNY9CeBEkI/oBts+HbVDVd3oIlB4sLocmIxnl6Htzr6Z03bG4yxtWyRCEQ8pU2tWcs7uyKm47sLkRxkpfa3mtJLGEQHIus3LVf6a+3Yhu4vEWMeCO3lyg8W7Fayx2dU9obsDieE2cmo7GmpViZWxRwW2tn1aq/+9c+qhtwFItjJI7D///KezCku+lBngc3gVtltgtzxCSk1G4CdPjY2c21oM+YmH8+HWv+ImCihtR8N6zhIkwbTT2zWMQZFTgUFZyOis8ZyCFHpLSC788YAOpLhfuF/Pd6ARy/R2sX4ezbTRwguKAMaDM8XiM5/q9zAZozqcnLCCT3+BIXn/8OFhqwqyKA9NdP/t8UNiyzahLvHhO3qn8Ew1zLUQDk0hTM=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(346002)(396003)(136003)(39860400002)(366004)(53546011)(36756003)(956004)(107886003)(4326008)(66476007)(66556008)(38100700001)(6666004)(83380400001)(26005)(16526019)(186003)(66946007)(31696002)(86362001)(4744005)(2906002)(2616005)(54906003)(110136005)(16576012)(5660300002)(316002)(478600001)(8676002)(8936002)(31686004)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?ttY7r+4f4NVOBMenkkOWFvaEdUL/zr0PE1cEf1V?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3621977b-01dd-4342-1d50-08d8f50063cf
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 11:22:09.8017
 (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: 0WbkVD42CzCAkWpqx2iD3JQOnqhZXA25c8Oy+4P/6xszB3XMGQK5v1H4U0NMIkkqi2l1fCjGn2GlK7XDGDd6TwQ9mnmVXf9LSvstXsJ6lEk=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2769
X-OriginatorOrg: citrix.com

On 01/04/2021 09:28, Jan Beulich wrote:
> Like Intel, AMD also records the date in their blobs. The field was
> merely misnamed as "data_code" so far; this was perhaps meant to be
> "date_code". Split it into individual fields, just like we did for Intel
> some time ago, and extend the message logged after a successful update.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

This was on my todo list, but I'd not got around to it yet.=C2=A0 There are
several legitimate microcode blobs with incorrect dates.

One has a date with a year earlier than its predecessor or successor,
and two have day/month transpositions.=C2=A0 One transposition is obvious,
having a 13 in it, while the other is ambiguous and guessed based on
when the ucode was available.

I wasn't going to bother doing anything about this, but it is something
to be aware of if we get queries of wonky looking dates.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 11:33:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 11:33:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104384.199639 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRvZx-0002NZ-DB; Thu, 01 Apr 2021 11:33:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104384.199639; Thu, 01 Apr 2021 11:33: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 1lRvZx-0002NS-A7; Thu, 01 Apr 2021 11:33:37 +0000
Received: by outflank-mailman (input) for mailman id 104384;
 Thu, 01 Apr 2021 11:33:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRvZw-0002NN-1H
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 11:33:36 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 81af3c79-b175-4bf5-8366-e0d5e750fdd1;
 Thu, 01 Apr 2021 11:33: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: 81af3c79-b175-4bf5-8366-e0d5e750fdd1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617276814;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=E9Bof/P9ivmijchbbNvr/d9Cs/Off1vuyFeRE3O+sMA=;
  b=H5zGFaPIB/enyJPrfTznVuNR31zuV6BcJatqolZDKBXuRjZ1k8XHPXpk
   NySOsFSBHKEcPeblKkbrUdWIhoJvy7oi6l9z5UF2m2Z7ORoyWSvRlqLkb
   EXdGWXgKDuwG428NSN7c4h4rqtFggbOclUobLliqjaQlo9SFJLuOpFBVA
   U=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: mscDtZEnalcGFKjeO3s1M7QK4wXEs7csF7O+08OM4S+MKx+ncWMFBEEGK7HKRfJJk63XeezxWt
 E+1oJbpKq17Okm3ud59Bi/21n89uvusUKl1gmZHehHD2MMvqBoBIzvjtsQJ/rDIcUEjsUk6zLv
 go1ScoVfRL88Iss57AhIU48ybLwHiMV8j+vwxZ0G8KmExkuR/vD5TBTQt1pXS0V2w0gxmN3LCR
 Xro8b+GqkbNxfPaOIeJSODhZL1rvKpzFhO9vne1Z3yCLIpTW4X1LUL3mqt1LUT3hyTkO7dJnrw
 hrw=
X-SBRS: 5.2
X-MesageID: 40821259
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:KUE5rawHTCXz65q03Me9KrPxg+4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnm6JdybI6eZOvRhPvtmftFoFt6oP+3ybtcheQysd07o
 0lSaR3DbTLYWRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRC51IxS0RMHf9LmRdQg5aCZ0lUL
 +V4cRarzStEE5nEPiTLH8DQuTFupn3j5rgexELHFoK7wOJgDOu5tfBYmel9z0ZVC5CxqpnzH
 jdn2XCl9memtyY6juZ7W/c6JxKhMDso+EjOOWggtUYQw+c8TqAS59mX9S5zUkIicGprG0nid
 zd5yonVv4Dlk/5WkGQjV/T1xL70DAogkWSu2OwpXf4u8T2SHYbJqN69PpkWyDU4UYho91wuZ
 gjtwny2us1fHGw6BjV3NTGWwpnkUC5uxMZ4IgupkdSTJcEb/tppZEflXklY6soJj7w64wsDY
 BVfaThzctRGGnqC0zxgnNi25iFUHg1A369MzI/k/3Q+T1XkHdl9lAf1cwSk1wRnahNO6Vs1q
 DqNL9lm6pJSdJTRaVhBP0ZSc/yMWDVRwnQWVjib2jPJeUiATbgupT36LI66KWDf4EJ9oI7nN
 DkXElDvWA/VkryAaS1rdx22yGIZF/4cSXmy8lY6ZQ8kKb7XqDXPSqKT01ru9e8ot0Ea/erGc
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5ISR0+OmMTWMYfn39arM8r7Ff7IK3IJS2n/Cn
 wMUHzYP8Nb9H2mXXf+nVz/QHXoVkvj/Y9hMaTT8uQJobJ9crFkg0wwsxCU98uLITpNvugdZ0
 1lOo7qlau9uC2X8A/zniJUEysYKnwQzKTrUntMqwNPGVjza6w/t9KWfn0X+HOGIxR4Xv7HCQ
 I3nSUwxYuHa7irgQwyAdOuNWyXy1EJomiRcpsakqqfoeDoZ40/FZRjfKBqDw3EG1hUlG9R2S
 d+QT5BYnWaOiLliK2jgpBRLvrYbcNAjACiJtMRj2neu0WarcQGXWAaQDaqbM6SjW8VNn9pr2
 w015VarKuLmD6pJ2d6qv8/KkdwZGOeB68DMB6If7xOmrfgeBh5SECDgTDysWBrRkPas2Epwk
 DxJyydfv/GRn5QoGpR3KrR/FRoTWmFZE5rZndmsYpyKHTeth9IoJq2T5v291HURkoJw+kbPj
 2AWzcULw907/2c1RKeml+5ZDgb76RrGtaYIKUocrnV1H/oFZaBkrseGeRIuLx/Msr1j+MNWe
 WDWgOcIT/iEdk10wiNqntNAlgtlFAU1dfTnDH15mmx23AyRcfIKFN9XrcBPpWy6XPnS/vg6u
 QwsfsF+c+LdkP/Zd6NxfuJM3ptKhbPrXW3SO9tg5ZOpq42vKZyGZ6ecTag7gAw4DwOaOPP0G
 UZS+BHxZqEHKlFVckbYThY8Vokj87nFjpgjiXGRssFOWgwhHraNe6T67XGqbATElSMzTGATm
 W3wml4xbP5RCON2r4RNrIoLUlXYEY67m5+/OnqTfyYNCyaM8VC9kG9KHmzbft0T7WEA6wZqn
 9Bkp21tt7SUyrzwwbLuzRnZopI7ma8WMu3RCaBA/RB/dD/GVOChMKRkYGOpQaybTuwcEIDg4
 JZMWQWc8RYkzEnyLQN7RLacN29nmsV131E4T9mkVbx2o+ppEfjdHs2QDHxs9FxRjlcMn+BkM
 Lf1/OXvU6NuwR45Q==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40821259"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fMkVWnh2LgXamTSc5M5KLVBR5JIwjmm44a7564tUZ+9ek0s/YRgfnBlJJCDIH4fgP8mckdY1OTyCx5AiADRRIh+Q/hoPwZOEt4XPpE76+RFgwrn7/uQHelEkCRff3nnFir/2qlDCQ/c0YCiuiMP6GCsshJvMauz5U/JhYiOfB4AMGX5BuOqZhmFioxq8+1+z25vr93qamRDPc//F0H41PgFz1+InFm4AUIysddXg5bNgw5FOfMvahVP2PR9SWwIuL99yjdA9fvRzM7QDXWLjtVj+9LNp7QsUzizNcYtp0cVARFFn9cSWFna+SVSVGx1XZ7MOsg5Jagp0bsMaDeLFPw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E9Bof/P9ivmijchbbNvr/d9Cs/Off1vuyFeRE3O+sMA=;
 b=mFqlwAtaWkMkvLbGE7cHKJ6131nyPSTEjfTRhnueAnczyfRLdpSaAkOHrg2arV024yYVhz1KuLVCZdhcMCA5YThubTTu36sTf+sXf1jpyvPQlXa2g3ghvTHnqR82R4Taz/68PxdDbcqA8G1SS6nl6lvH3UfdLH9j8kSpGq01LnNFwRoykyFTgaYLHCs+ZtyBxQHBqud6WHI8XbMyCTOQcmrKUwU/ToHHbG5+X5CiDUI1SzKuRd5rSKWTQLQJHJ1mHYY7wfLiuVtx6jgf+5h80P5WDYL9+q26M6QbQ/JjeaOGbxR1P3ImsLbtzatktQiIHQP5a30VyE9F/MTrN6lyWA==
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=E9Bof/P9ivmijchbbNvr/d9Cs/Off1vuyFeRE3O+sMA=;
 b=BiL9k/CVrAgc/PRQnKOVDKfte72dddbYjgylMbvEaDVHDcFcXrNJ/WE+Sh1LIbYjE9Pb1TAtGLAClBANF3Q6MpnJB1mKxPNmn5YySJ7xMZWAPN0zBfg7k0I0isJjtAOAfKbM2xB6UAKsBFp6vYiFr4G9e2QfFe6R9PDqPuDxdK0=
Subject: Re: [PATCH] libxg: don't use max policy in xc_cpuid_xend_policy()
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <4fa05759-24ac-5ff3-3db9-94537f6be95d@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <9abb7b1a-990d-3783-39cc-52503dffda16@citrix.com>
Date: Thu, 1 Apr 2021 12:33:23 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <4fa05759-24ac-5ff3-3db9-94537f6be95d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0460.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1aa::15) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d24397bc-0135-423f-208e-08d8f501f8cd
X-MS-TrafficTypeDiagnostic: BN3PR03MB2129:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN3PR03MB2129D9255E9720EA9890B5E9BA7B9@BN3PR03MB2129.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: z+567NJHXeSn+mRaGnVD683U4M32DmKLvdbYABTnmG3lqSBxYDkdMhpVezhBgZubf5mMzsv/ubHXf7uumJe20BwzNhQjMfWuhhpMIj6JtynGyn2sy+hCPo+rxMT5H5xQ2FM/jPvQH7C/YNYmjTpLrBdZSaDy80biple2AGsRrkz3Av5qeMwBY1wr0yEi10pZVsZxr+6l4lrWTXgo9cX7bQ5xjs1KrHGGiMNuRaDDvZbTQ1vTsI7NQsy8x1bWXQhcE6488hR7v8l0uRN0gvrl/sRyDZCinHBKembHeo6w6+uxcGDDUsm1kOggUHcq+hQFOtv97rdf5MhhOeBjSmqKi82iNmBbI4xZuiyqbWsCQcqGgFKliKCkLPhhcJxunF26GjfV+cCEchXkSC/uNZ84qGjpSAsVmA4VCnJeaSaNbZQPlwrAsRAYZa54gxwubabjmbk1nxVi7wyeg5IOB+6/BtX9BVb8GJW5ncc9nARdcYHEXkFpgSSPmAomuxXlQb720tnx7V6Bmugq6fwbR9JvlluJnx8pno3MWXDfK/mbFuRY4Fu/4qTdUjPvu3g4AtU15U9mtaiRtM5Hy38+J9USagq+3sChhUo879SnU8IWiijc2JHT50X3MM1WvQcMHW6ycwvUBa7+tivrPsC8rKW3sFoKiBvcfav9iXtrCRUft2bim4cC8wv0OY4z5wwNODf/AucfTbGyUsQfLHFPR7GmVE5Yb7ZV791uKz1bF11lG4s=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(498600001)(66946007)(31696002)(107886003)(66476007)(16576012)(66556008)(110136005)(5660300002)(53546011)(54906003)(31686004)(4326008)(6486002)(186003)(956004)(2616005)(86362001)(36756003)(16526019)(8676002)(8936002)(38100700001)(2906002)(83380400001)(6666004)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?NHbomT+ebv7BaD/ZPLldkqz93emkxoaetWiwfOH?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d24397bc-0135-423f-208e-08d8f501f8cd
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 11:33:29.3319
 (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: muVuPaAk8WiTXviEQQo3R4vcgclBFZYGd+/7f9B73oe0fal+RpstumTU5J9DnzVP9iFIiIJ3Y1MQk+OaTyY5PTy6cehl+hd5uzL3GJeSp1I=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2129
X-OriginatorOrg: citrix.com

On 05/11/2020 15:56, Jan Beulich wrote:
> Using max undermines the separation between default and max. For example,
> turning off AVX512F on an MPX-capable system silently turns on MPX,
> despite this not being part of the default policy anymore. Since the
> information is used only for determining what to convert 'x' to (but not
> to e.g. validate '1' settings), the effect of this change is identical
> for guests with (suitable) "cpuid=" settings to that of the changes
> separating default from max and then converting (e.g.) MPX from being
> part of default to only being part of max for guests without (affected)
> "cpuid=" settings.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

This is a semantic change for how the xend string works.  However, I do
agree with your reasoning.

I'm pretty sure it won't be safe to backport across my change to
effectively eliminate the s/k options, but that's fine because it was
the same time period where I introduces a distinction between max and
default.

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 11:52:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 11:52:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104387.199651 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRvrd-0004AR-W8; Thu, 01 Apr 2021 11:51:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104387.199651; Thu, 01 Apr 2021 11:51: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 1lRvrd-0004AK-SZ; Thu, 01 Apr 2021 11:51:53 +0000
Received: by outflank-mailman (input) for mailman id 104387;
 Thu, 01 Apr 2021 11:51:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRvrc-0004AF-8K
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 11:51:52 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bad752b4-6f0c-428d-b3f3-ee11ccb00475;
 Thu, 01 Apr 2021 11:51: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: bad752b4-6f0c-428d-b3f3-ee11ccb00475
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617277911;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=d4jgKVieTHjDdONydkGo/SyR7h6s4QTs1b98ndlh0K4=;
  b=dvt6XEWm8BonrHVpX0MXWQY49EUe3Hnd/LgMOD7oL6XHThDmaS1xeUYk
   JSijEv4vtd5Rrt8JzAj1I/C/6oS8McAsiYalPb07J5XkKooXHypcslS/t
   gpfUC7+6wAomCIDvtyUL52XRrKLngeseJsGp3P6p7hLJeE2WoXvjX4Oep
   s=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: GHZsvZD3DZTaWFfnmKSwpRF0eKfEwnEUOtLE/xfH6ULO/58hG3Bt9HuOtP7diodbOjORx//4WE
 KjW49zG4qyik/Lt0rVkkaiBOkMpP7blP885jmRuWV8S1wndBkEJ6CSE+sg6D1tbDDtTTqAswtU
 48G2Bv7QjJQzbOrXcVmtPfwT/BylrOuq/A/UdsKwIav+9wUV5mzbL+TK4em9ISyDpPIJPp4vun
 vUqhCF7lk3hZwKlOVOVubT64DCeJsglZmuSpoddRdZ8ibRKAWy+4WGBaj2y7yJ7Hdzl4fJSP5h
 D7o=
X-SBRS: 5.2
X-MesageID: 40681546
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:GII2+64lif+rJXD/NAPXwUGEI+orLtY04lQ7vn1ZYRZeftWE0+
 Wnm/oG3RH54QxhIE0IscycOaWGXHPX/YN0545UBru5QAz6ogKTXcNfxKHJqgeBJwTV8OlB2a
 B8N413D9PtBVZ35PyKpzWQOdAm3dWB7eSUlf7Tpk0dCz1CRoNBy0NCCgidGlBrXwUuP/EEPb
 eV+8YvnUvFRV05dcK+b0NqY8HioJnxmIvicVo6AXccmXCzpBeJzJK/LBSCxBcZVFp0sP4f2E
 zIiRbw6Knmk9zT8G6660bp455bmMTsx7J4baTn5qcoAw7hhQqyaINqV6fqhkFSnMiU9F0onN
 PQyi1QXPhb1nLLcmm55Tvr1gXwuQxejkPK9F6CjXPv5fH+XTIxYvAx575xTx2x0SsdleA59I
 gO42WYr4ZaZCmsoA3No/zzEz16nEu9pnQv1cQJiWZEbIcYYLhN6aQC4UJ8Cv47bWnHwbFiNN
 MrINDX5f5Qf1/fRWvepHNTzNulWWl2NguaQ3IFptee31Ft7TpE5npd4PZasmYL9Zo7RZUBzf
 /DKL5UmLZHSdJTSq5hGuEbQ4+SBnbWSRzBdEKeSG6XWZ0vCjbokdra8b817OaldNgj150pgq
 nMV1teqCo8YETrBcqS3IBa8xzETWmnNA6dhf121txcgPnRVbDrOSqMRBQFiM27ucgSBcXdRr
 KyNfttcrHeBFqrPbwM8xz1WpFUJ3VbetYSoMwHV1WHpd+OLoXrs+fcYevCPbaFK0dkZkrPRl
 84GBTjLsRJ6U6mHlXihgLKZn/rckvjuZRqEKbb+OAXwJMXNpJFtxUUjVjR3LDGFRRy9ogNOG
 duKrLula224UOs+3zT0mlvMh1BSlpO7K74SHNMrw8SO0byebIO0u/vOVx67T+iHFtSXsnWGA
 lQqxBL4qqxNYWX3j1nIcmgKHimg3wao2+qQ58QlraY39rsfoo1A/8dKe9MPDSOMyYwuA5x7E
 9fdQcPRybkZ0jToJTgqKZROcbyWJ1XhhyxLctdtHTF3H/s3/0Hdz8+XzqjW8aMnEIJXDpbhl
 p47qkF6YDw3QqHGC8agOA1OlVXdSCsGbpDSD6OYp5Z84qbPT1YfCOtnjyVixY6Z2zw0V4d71
 aRZRG8aLXFBEFQtWtf1buv+FRodn+Fd0Y1cXxit5ZhfF62zkpbwKuOZqCp1XGWZUZHyuYBMC
 vdaT96GHId+/mnkBqUki2FD3Mo29EnOfHcFq0qd/XW1mm2IIOF0aEAEPk8xucRCPn+9usKW/
 mYYQmbMXfxDP4owRWcojI9IzZvwUNU4M/AyVng9iy1zXQ/Cf3dLBBvQKwaOciV6yzhS+yT2J
 t0gNoptYKLQxLMQ8/DzbuSYy9IKxvVr2LzVe0upJxOta85tbd4HfDgIEj1/WAC2A97INb/lU
 sYTqg+/avIPZV3edcOPy1e5Vgkmb20XT0Wmx2zBvV7e14jj3XWZYzUp7XJrKciGU2Hqk/7P0
 KF/yhU4vfCWG+C2Nchet0NCHUTbFJ57nJouP6GfcnXDg6hculY5lq0MnOnatZmOdi4MKRVqg
 w/+s2Cmu+cajHx1w/RtyZqO64myRfafeqiRAaXXfNS+9O0OV6QkrKn7c66gjDwUya6YS0j9P
 N4XF1VaN9ChDkkhJA21Sb3SrWfmDNZr2dj
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40681546"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Sbejz3DKoyaZiLEfnI0RSj9mvO9wey+04AZXo2EKNO30olK2ilY6QqbMSItR2HQu5gUhPqqogrUPiyfrKZXPS7Fq9DtBfVjq4zU13KSD/GGjUIbBx69NBJl/JtZv1l9knUNrzyyfN7wdhfK/RBCkICTzS4LxXz75Lz2OOU5R1J521HFN1yjjQJ3EdAYk9V1cNrmTotPAWXFab43NZNbZNPIVF6NpdSuBdrRnmonzPhbFhojWKkXFKG/HOkxS8vP0GSnUPvgPIdjSj9Q+VAPnn7jOBUR+x4ewqiW1mXT/9R2WfoR8JYr2njh1Dinw2iuYvUBC0pXHVtamUz+fH2O1Fw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=d4jgKVieTHjDdONydkGo/SyR7h6s4QTs1b98ndlh0K4=;
 b=TIHOSzftfJL4Fr52q8nKehU0mzldOOO6Ak0kG+XTR0LvGHbrJm5S+tVjyWubMc2ekrEijbAwjTPOwsjlXSJIPLiXV0YwP2olVgvBVv9PVV8pJjT3kUGC1qV5CltUuj/1SK6nsqt+565SkHW/pfDf7QQs1Gbs6ECRxkprov+NizNfgZGdHpYIbsBbw/FSSi/QQKZjjOKTwikM2Lt8TV6pvxVMgHnfzkWgQWYXB5cca2gNKmrEOENvptfjDo+OKZGyUdU2mStHm0nkKBJ63RqND9khdrTcZbBE+Yf9PXAUS4rW7mrfgeyXGKEUr4Z7bmHhjP7DGa1RxFPb2KTWhIOZww==
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=d4jgKVieTHjDdONydkGo/SyR7h6s4QTs1b98ndlh0K4=;
 b=eOmpsxyUZVeUSKd+QXXS0wFi+kR2bjBMlVzJKBm+MhAumRAzQsjPorcbHIsWWPeYIfnPqy1MzGH0xefzY9Sudl+SZ/T/Mrs20B9MP50V3Jp7LPTBKXqMdEknI7CQr6PL/qqdiIfl9SzXxVQ4laUo+zx0GkjVYS9pl1uag6tRHgc=
Subject: Re: [PATCH 1/8] x86/EFI: drop stale section special casing when
 generating base relocs
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <63ad859f-82f0-62ea-5e55-9c6d3db6816e@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <5b42bfd1-7d54-8e2a-9fb9-3c153532bb1a@citrix.com>
Date: Thu, 1 Apr 2021 12:51:40 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <63ad859f-82f0-62ea-5e55-9c6d3db6816e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0333.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18c::14) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c45788be-d1a1-4eec-d10f-08d8f5048668
X-MS-TrafficTypeDiagnostic: BN6PR03MB2516:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN6PR03MB2516028F47A8E9A12292BD3DBA7B9@BN6PR03MB2516.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:454;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: dZT/+TusCsGa7PrSTxjtU3Rc3ndZVlr0fqvu2ZdgkYNJuzQOZpLWuFUc4IVSc9A6lhX6mDWue+Ap7IKH3vj99P3QcR2WzwwVQMFkKCt7n9QpU41PvaXuwF0qtw7AK6E3b/rNruoJiY92+Mo70GgPX8vORraJIIhTcOmv2YNTHFrWowQkDbSX7XL5mvxT9kDLsrohd+p/uZEiM1SsUAizaTtSoJP5QMLnTUxNO0mK/pR5gMGwN08OnlZWomYwRrDUXqwPNM7OEdurlVd6si+JF2l0MJByybDxbzIKqe6WVlYvcEXvgGtQ2CvW47R4lhAGQ/rDwtJ2CPT5qJSjHDsP8eagqYVcUnKKdXX74zza0HGWUn56NYCQ8oXxoA8JFw/XzK3RgDdvExw9kzHKnGYHI+DSKWuAxexTwPRuxF0FWymV7QwBFVKvQPH0J2scv/XTzXa/mryCk1jZ4fKghs8gddCO25qtEhk+g1Yip+H0jwWU61vvhbMeqJXK1hC5sTLY1ntEcTZ8hQxPyrruneEhpo3WIEF9BFbLcIwNssXIaNl7hXVLzIULYGT8E9H4sqlOacGk95SiyLX93LBnwQLGc/Es0V6TpeRcUqV7350OXMpjbio0+WU00boFZB60oLjPNNvK77BGoDGHxI2pbNooHzdZ8ViYR6XEMFWkbfUjcJP02WjiDbci0a3RGQbsPhDaEjB4TRzX7loM8p03K/IOLED130Kk9FhLZKqYI+ZmaLM=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(136003)(376002)(396003)(39850400004)(366004)(107886003)(31686004)(54906003)(110136005)(4744005)(5660300002)(6486002)(31696002)(8936002)(86362001)(53546011)(16576012)(16526019)(186003)(4326008)(66556008)(66476007)(26005)(38100700001)(36756003)(478600001)(66946007)(956004)(2906002)(316002)(6666004)(2616005)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: c45788be-d1a1-4eec-d10f-08d8f5048668
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 11:51:45.8144
 (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: AX3aD1zAyXazi4oj5LVVtMVKKWQOFhBsIJUFDsjiSoMfO4/hbingB9+kQOHZGis0v+PbBocuNf9526br/ZZ64pZUFNkwggn0m1gBDS0VL8E=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2516
X-OriginatorOrg: citrix.com

On 01/04/2021 10:44, Jan Beulich wrote:
> As of commit a6066af5b142 ("xen/init: Annotate all command line
> parameter infrastructure as const") .init.setup has been part of .init.
> As of commit 544ad7f5caf5 ("xen/init: Move initcall infrastructure into
> .init.data") .initcall* have been part of .init. Hence neither can be
> encountered as a stand-alone section in the final binaries anymore.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 11:54:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 11:54:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104392.199663 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRvtw-0004Ix-Ie; Thu, 01 Apr 2021 11:54:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104392.199663; Thu, 01 Apr 2021 11:54:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRvtw-0004Iq-FA; Thu, 01 Apr 2021 11:54:16 +0000
Received: by outflank-mailman (input) for mailman id 104392;
 Thu, 01 Apr 2021 11:54: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 1lRvtv-0004Ik-OZ
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 11:54: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 1lRvtt-00051I-QW; Thu, 01 Apr 2021 11:54:13 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRvtt-0006da-DH; Thu, 01 Apr 2021 11:54: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=iZ8kWEzj82J/Y8VRVzECs94V676ffQnEAzBnIRCm5cQ=; b=ADKL9IjxNp9azuHp+xvyBKxSSw
	QZWb6PGyYalr67zu+7gvlh9kin+FT3Uxhk0NApePaCtngYkM98/xYGizWZbf6XlOwL3nhduZ31Xo1
	asZA8tQidKbElGj5JweFBdZmKEwVw3nROnNVaMbX2VOvBCN/m5bVArstrq4LVurAkIbY=;
Subject: Re: [PATCH 00/23] further population of xen/lib/
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <27916fa0-9ebd-a49a-bbb9-1ef47c2b5bf6@xen.org>
Date: Thu, 1 Apr 2021 12:54:11 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 01/04/2021 11:14, Jan Beulich wrote:
> This is to dissolve / move xen/common/lib.c and xen/common/string.c.
> One benefit of moving these functions into an archive is that we can
> drop some of the related __HAVE_ARCH_* #define-s: By living in an
> archive, the per-arch functions will preempt any loading of the
> respective functions (objects) from the archive. (Down the road we
> may want to move the per-arch functions into archives as well, at
> which point the per-arch archive(s) would need to be specified ahead
> of the common one(s) to the linker.)

While I think it is a good idea to move code in xen/lib, I am not 
convinced that having a single function per file is that beneficial.

Do you have numbers showing how much Xen will shrink after this series?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 12:01:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 12:01:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104414.199693 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRw0p-0005TM-5M; Thu, 01 Apr 2021 12:01:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104414.199693; Thu, 01 Apr 2021 12:01: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 1lRw0p-0005TF-2A; Thu, 01 Apr 2021 12:01:23 +0000
Received: by outflank-mailman (input) for mailman id 104414;
 Thu, 01 Apr 2021 12:01:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRw0o-0005T8-8y
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 12:01:22 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 66b440e2-bae8-4cf6-a00c-55bb3e31f0d0;
 Thu, 01 Apr 2021 12:01: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: 66b440e2-bae8-4cf6-a00c-55bb3e31f0d0
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617278481;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=R6GBDxKhS3qtdNf++KnrNQw6MnOkE9dFm6CLdC2q+Nw=;
  b=ReVRMk5fwWI4snclHedcMrqWg8VRSglO0dU3ijn6WKL8QDsrlSRkCzHc
   J7sohT46wJtwhcvWabaxwUj71M4r4BWYYoL1/MjAGF3tAINFljwswdCef
   jBHGyJwuN/O2/qhc4Pos97fi6aXwPJ2zDukEDJnuOVG1RPcP7s6lKijEt
   A=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Jaub2kREXajW/MpPqJOqLmWOhr0a6/H/Si9cJazw9ZSempVLcCvpwqLkDNxhdflWFXPZ4kYPjz
 I70z47dbB9ZlkbmQDTHmro9l/LdxzKIsky1t0u0MSME5uoKfQj1L5uMDxlkGJihfQhFEQOMEvf
 JU5Vhy7/KedMSFZla1HSU9HG9+koPSulFSkB5CLZm3SaAU4UL8sNksZ6Ea40ZwwO4mT0h3QdS9
 KPrhLQ7+Pk8RVtf57LY2DS60W8PvJbz36G3Uvb97/raGmDpXSdplEl1bjC4uTFRdvgZJZQrBmi
 XWs=
X-SBRS: 5.2
X-MesageID: 40664374
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:1KHQDqjCJ4/RgekKHXb8tERD13BQX3dw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+YsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmuZ
 tIW5NVTOf9BV0St6vHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WZEIyywe3cGITVuL5w/CZ
 aa+45jrz2vZXwYYq2AdwY4dsLEoMDGk4+jXAUPAAQp5BLLoTSj7rP7FBbw5GZjbxpkx7A+/W
 /Z1zHo/6nLiYDH9jbw9U/2q65Xltzo18dZCKW35PQ9Bz3whm+TFfxccpKYujRdmpDJ1H8Ll5
 32rw4kL4BP7RrqDxuIiD/M/yWl7zo08X/lzjaj8AjeiOj0XigzBcYEpa8xSGqh12MasNtx0L
 1G0gui3vI9Z3Ow/1WJ2/HyWx5njUayq3Y5+NRj60B3aocCdKRX6bUW4UI9KuZxIAvB9IslHO
 NyZfusgsp+TFXyVQG6gkBS2tC2Glw8EhCaK3JywfC94nx9mXB0yFYg38oPnnsM34JVceg028
 30dotvj71AVckQcOZUA/oAW9K+Dij3TQvLK3/6GyWpKIg3f1b277Ln6rQ84++nPLQO0ZsJgZ
 zEFHdVr3Q7dU7CAdCHtac7vCzlcSGYZ3DA28te7592tvnXX7zwKxCOT1gojo+Jv+gfKtezYY
 fxBLtmR9vYaUf+E4dA2APzH7NIL2MFbcETstEnH3qTv8PwLJHwvOCzSoeSGJPdVRIfHk/vCH
 oKWzb+YO9a6FqwZ3P+iB/NH1z3fEjS+o9xDbj68+AfxJNlDPwIjiElzXCCou2bIzxLtaI7OG
 FkJqn8r6+9rW6quUbEhl8ZfiZ1PwJw2vHNQnlKrQgFPwffarAYoeiSfmhUwT+iLh97RMXGLR
 5Hqz1MiOWKBq3V4RpnJ8OsM2qcgXdWjmmNVY0glqqK4tqgXZ8kEJA8WuhUGR/QHxJ43SZmwV
 0zKTMsdwv6LHfDmK+lhJsbCKX0bN9nmjqmJsZStDb4rkWTpcYmQ1MBRD6wWcurgQIjLgAkxG
 FZwus6uv6tiDyvIWwwjKATK1tXclmaB7pAEUC4folOo6vqfwtxVG+OojSfh3gICyzX3nRXol
 akATyfePnNDFYYnnxDyK7l/Gl5cXinc1tqZmp3tpB8Emr6qm9+uNX7FJab4i+0UB8v0+sdOD
 bKbX8pLgRiy8ue+TSVlDyBfE9WjKkGD6j4NvAOYrvT0nSiJMm0jqkABeZT54sgHsvpqPU3Xe
 WWfBK1IDv0B/gy4RGcom8oNUBP2SAZuMKt/CegwHmz3XY5D/aXHU9vQKsDJcqAq0fjXPSF3f
 xC/JsIlNr1Fl+0TNGIyavaNWEebjzSpHO7VOEup9R/u7kouL56ApncVn/p2Rh8rWIDBfaxsH
 lbZqJxpI3lEMtIWec5fipC5FonlNiVNiIQw0fLK957WWtotmPROtOC3qHBprUuCHCQvQeYAy
 jqzwRtu9P+GxaZ3bEUC6gMMX1bRUg15nNl5v6DfeTreXOXXtAG2FqxKXmmdrBBDICDBLULtx
 5/iuv40tO/Rm7d2ArKuyF8Lb8L22G7QdmqCAbJPeJT6dS1NRCthaStifTDwAvfeH+ea04Cg5
 dCelFVRsNfiiM6hIly6xOMcMXM0woYumobxypmmF7r0pWn52mePXguC3ymvrxmGR9JMnaJis
 zZ9/O/z3qV2kkc5aX+
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40664374"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Sra4nDGMYlsgletTqRFWnEVZad0SW8Hbfw58z3jT6cjblMGwsVxon3DEoAOX62XMk6fTncAy+z8BSayWmpEcDlbGV6RjNod28FAddvWA+r+7RCrPI+bBrUSLG4uLMbtbnUX0zAPqrPTTl2vQQENfGt8hVPCdWhTw7kWRoT/t2/1jH0dKHuEqR6NT2UuKr7Wfljt8P5+uXalxAl9zyp+TE4TsndiI8mIt5chiTwVhxUUI0I80fJNUo8JAqnQ0v6DVb4nWDZuMgpfNPob+XVU3SgjyKh2DvcSZZqx2nLg8G03lcI/iPNISaLRFMYlQFLlULetJCH+8qYqUekiRZZZuqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R6GBDxKhS3qtdNf++KnrNQw6MnOkE9dFm6CLdC2q+Nw=;
 b=nt4fG60JcxFXRFnzRLaL5afL9Wx+63vpBssTIUDK20AYJq+AKRoQhYDffb4Qgyy9vpuhDvAMg4WPLZqJU4mQydoYBgd3ZXZ5v4OwJXcw8Uloh0ZGnYdDb3keX5ibagSc4/IiXHwt59DLxXYRZbFEqryvpH2Rokr/P39Z6Mi04ij6+qtQyOTeeexEm9Ce1VJNhFKIDPZdAEK5nBBYaZUrIr4NHi5T40bBw8JsOhcD4qfgmHJPuz7H6Lts/2jaJRmqtMUGpPuWyS3RmV5wEfpoEjqEwtoUfJ43BsllyTFGPWQuGWtg/byadOQCJe0g8ffcPc+Vp1p92sehVzcY4eleQg==
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=R6GBDxKhS3qtdNf++KnrNQw6MnOkE9dFm6CLdC2q+Nw=;
 b=f4jtNwupFuQ73JHuAh3PWBQ12jS4hFpcut3RBs4AbIwNgsByebP/pM9xS/5mtOxif5lttY9QZhOSYJ2C6UexTu+WW/DBV4W7xohpin2XwjMldVUFrOpMcPbOnSmgNKNT/KdHWyj6OBUgdS4hfxjW+lPoUVnLXgd1yv+wgy/IbfY=
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/8] x86/EFI: sections may not live at VA 0 in PE binaries
Message-ID: <dae6b91d-e8d1-6d7a-514a-00ec8d201843@citrix.com>
Date: Thu, 1 Apr 2021 13:01:11 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0266.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a1::14) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 08c670dc-f1db-40d8-b902-08d8f505dac9
X-MS-TrafficTypeDiagnostic: BN6PR03MB2964:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN6PR03MB2964FB44D0E0676BC8BB7C2EBA7B9@BN6PR03MB2964.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: U0ReailU+1j4g8lLtu7Kg3qMtCeM/os4sNGLy6zX/+PipGyeVI8lUyBrZ6Jo7syuzhiYFz4YxawWqBb/uJGp3k72TzJGr52H4rvXF5lax5ijslwqdQX9duYbiFH7KA26ULvZo4jGsQIQCazepucMQcKoLOvL9rDoGdzvFcJO6J36vx5hmatnrvSO8ym0Gq8cWF0uCTJmvfwFzasCecvVrBYoiQbr5fjdUCnTPPCT/psbVkWZLJfM/0T6cWO8Ycs4av63bd+KSrOFyaWv7jm673Z9eA+nyOSwlOPz9BYv8AW5a5Qu6emQGZmWB5UTf8q+7PfXSuxiErZjpqkxJsQq7AU4bdSlfMBMBBx31b1QXv+/WHF7y0Qcs/3pSWXn/giG6FE/Ka+e/7en2Je86JfT7Qvc344mBhMIDGaC/DOOs+aWmmKLQjkclxEh7IXR/kmNfSMBF9OLNMA4pv/ItwRXUXNdI6+x9R2j0R+WHMsiTCOgBXVSmgBXC4kh+/YQ7ulrDHgyWqE7F3LHoEooN3GNLpnJjask8fOCV8cSEqNEa3xf38G9SouwBXj2qjpwFBGvPruKuBBDusftJ00KBojAwM8vfxuPoe8IUjucRSJOs5CMhWOvlFNbeageotlvPGL6nSNZfzAJqoS3wgyE47X+JRywZqsDCGARfPFgYGIX9XPxd647lXy0ugpBRdZmByfUxuzLklyptEuQj2CMpyTf0mnyQ5kx4q5+E4L8Ze9qvwo=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39850400004)(376002)(366004)(346002)(136003)(66946007)(86362001)(8676002)(36756003)(53546011)(5660300002)(107886003)(6486002)(31686004)(16526019)(478600001)(26005)(316002)(38100700001)(16576012)(31696002)(6666004)(66556008)(4744005)(956004)(186003)(54906003)(2616005)(110136005)(2906002)(8936002)(66476007)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?XFv6vDyYHxYWPEm4CNaHr/Q0ldoa9UiRetRySoh?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 08c670dc-f1db-40d8-b902-08d8f505dac9
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 12:01:16.8749
 (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: mH4H1YaiTJugoyxqgeKlDdfDeDEKgskewVaYFReFj7/hNVmyOJ3oePjPTT/+jKRFocgozcSQfeG+XExQoUti1Ace7hhv8b+i8pmKAKJ2b24=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2964
X-OriginatorOrg: citrix.com

On 01/04/2021 10:44, Jan Beulich wrote:
> PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
> least 2.36 would silently truncate the (negative) difference when a
> section is placed below the image base. Such sections would also be
> wrongly placed ahead of all "normal" ones. Since, for the time being,
> we build xen.efi with --strip-debug anyway, .stab* can't appear. And
> .comment has an entry in /DISCARD/ already anyway in the EFI case.
>
> Because of their unclear origin, keep the directives for the ELF case
> though.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> It's certainly odd that we have stabs section entries in the script, but
> no Dwarf ones.

Its not odd in the slightest, given the heritage and lack of anyone
touching the linker file unless something is broken.

We've got dwarf symbols in xen-syms, have we not?

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 12:42:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 12:42:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104428.199705 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRweg-0000cU-BD; Thu, 01 Apr 2021 12:42:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104428.199705; Thu, 01 Apr 2021 12: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 1lRweg-0000cN-84; Thu, 01 Apr 2021 12:42:34 +0000
Received: by outflank-mailman (input) for mailman id 104428;
 Thu, 01 Apr 2021 12:42:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRwef-0000cI-5Z
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 12:42:33 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id af79d1b0-af77-4612-8a82-dbc6cadffa7b;
 Thu, 01 Apr 2021 12:42: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: af79d1b0-af77-4612-8a82-dbc6cadffa7b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617280951;
  h=from:to:subject:date:message-id:content-id:
   content-transfer-encoding:mime-version;
  bh=c2FAstd0dm59Kju/X4V60meqn2OKdaSyzGFeglxU81Y=;
  b=bzl2YjhGVSKqIdD7fTxoha7BaPm1HJlNzImuhPOqjJ1cuYRvyT+aaTNq
   uA+VDRp2ounrxoa6b5PLngA35J6nFecJq5GWBPRAC8l/F6L2VumeR0D1F
   IwBMVHKATpXYozZp/aY7WJ3ket+2H9xxB5LdX5QojmYqfYM9vA4BhhAkX
   g=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: v7T7UkFmw1OXSdFKt3kxpk18i+95BlV/TQ9nwClFkiLDJejp/YXrfofgAz23YGWcWYT1beVqRq
 PR+Is3xOwTf3HXHDTS5jc6upLUXca4r85uVOz+/RFvmYJ2gaI6KF0pCftZviS4jLNXY3ktm2pV
 2YutuuEMrpVwq0V591dlj8zITtHwkh6MK3ZIUeetaKH/Qz6IxQ/OZUKid9G3uV1JaeQkISOS11
 xPa1gSo+BssvADN3l5M8sBaYzZnBvf036v0ahcf4Pvrdnr0MPa7/oWD4BoPp8VXk17gZzKSs10
 NnU=
X-SBRS: 5.2
X-MesageID: 40547795
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:43yJG6gPa/oWHC/CAZZWV/zAEnBQX35w3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+csFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmup
 tIW5NVTOf9BV0St6rHySGzGdo43Z2j+Kenme/Rwx5WPHpXQotn6Bp0DRveMmAefngLObMSEp
 2A6s1b4x+pfnoKZsq2b0N1JdTrjdvNiZ7gfFo6HBYh8gaDlneF77T9Hhie0H4lInxy6J0l9n
 XIlBG827W7v5iAu1Lh/kLwz7ATotvuzdNfGNeB4/J1FhzAghulDb4RIoGqkysypIiUmTQXuf
 3thztlAMhp8XPWeQiO0FXQ8i3tyiwn5XOn6XLwuwqaneXDSDg3C9VMiOtiG3OzgSdBzbJB+Z
 lGwn6DsN5vBQ7A9R6Nv+TgbQ1glUa/vBMZ4IoupkFfSocXZftwqoES7SpuYfE9NR/684wuHa
 1SCtjd7p9tADSnRk3e11MfpeCEbzAWJFOrU0ICssua33x9h3Zi1XYVw8QZgzMp6I89Y4Ms3Z
 WEDo1Y0JV1CuMGZ6N0A+kMBeGtDHbWfB7KOGWOZXz6CaA8PW7XoZKf2sR02MiaPLgziLcikp
 XIV11V8UQofVj1NMGI1JpXtjfAXXu6Rjao7s1F/ZB2tvndSdPQQG6+YWFrt/Hlj+QUA8XdVf
 r2EolRGeXfIWznHpsM0Bb5X5VUNHkCQMwYsts2QDu104f2A7yvktaeXOfYJbLrHzphcHj4GG
 E/UD/6I9gF7k3DYA69vDHhH1fWPmDv95N5F6bXu8IJzpIWC4FKug8JzVCw5sSBLyxeorU7FX
 EOZ4/Po+eeny2b7GzI52JmNl52FUBO+ojtVHtMuEsNKEP7cbEKvt2FYmBM1H6bJhtyJvmmUj
 J3lhBSw+aaPpaQzSctB5aMKWSBlUYeo3qMUtMBgKGZ/NzkfZk5F54iX6R0GWzwZlpIsDcvjF
 0GRB4PR0fZGD+rtL6si4YMAvrDM/Nmhh2wHMJSoXXDlEmVqM01XEEHVzq2XcP/u3d2exNkwn
 lKt44Wmv6phCumI2pXupVEDHR8LECsRI9gICvAToNOgbzvcBx3Vg6x9ECnoiB2XHHr+UUUjn
 HmNguOd5jwcwFgk3hFz6fn9051fG2Bf0R2Lmt3q5F5CH6ugAcM7cabIqW0yGefcV0E36UUNy
 zEeyIbJkd0y8mwzwP9okfLKVw2gpEnPunQF90YAs7u82LoLI2DjqcdGfBIuJ5jKdD1q+cOON
 jvDTO9PXf9C+kz3RaSqWtgMC5oqGM8mfet3BH+9mC30Do+BvXVSW4WDo0zMpWZ72L+QeyP34
 g8hdUpvfGoOmG0c8WY08jsHkt+AwKWpXTzQ/AjqJhSs653vLxvH4PDWT+N0H1cxh0xIMr9iU
 t2etUx3JnRfot0O8ACcSNQ+VQk0M6CK0YmqQT6CO4zd1NFtQ6tA/qZp77T7bY/CEyIowX9fU
 SF+ypG5vHfQm+N06UZB69YGxUdVGEsrHB5uOWMeI3bBF/0K6VN/F+mPmS8d7EYQq6fArkUpg
 t75dbNn+L/TVuK5CnA+T9gZqRJ+CK7RMn3BgSGE+tB6ca7NlSBmbHC2r/GsB7nDT+gL10Fjo
 hEf1EKZstNijM+nJQ6uxLCOpDfswYgiR9C+jlpmV7mx5i+7GraFU9ANxfFgp8+Z0ggDlGYyc
 Lf8eaZ03zh4D9KnZnbfX0gD+1zJw==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40547795"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BRQVCnnwJ8L4T+RAQ0JB0TX5KlRs5wsCtR79MReFXVguIdtQYiQeHYMjkmcnBjpFiQIrQExmI7J8VXOx/14Iq9ixBgYFKrktrOFPbiB67GaB5PMd9ihQVKjPCgBOwgu8r/w7rJpNEDfho49i1s3bYIwLB6EGJDlAYf9Xxmm5C1KOtB7O4o/Iocqq1h3Ppn6byw1oBOKDEeIf9s8rjXPnz7wI/GgVKA7zo8PZxHoCIVDMq9i0S37MTqDOze4+7t8BeaxmaaeN8rAb65P1htomVTrqCH5E4HtkjntRkyzyEjvFbwPiJKBLcBaZG045RZFUupql7LELRCCmiX9ms9ug+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-SenderADCheck;
 bh=c2FAstd0dm59Kju/X4V60meqn2OKdaSyzGFeglxU81Y=;
 b=e8H+rnxjPxts/iveJFd0xrvBZptFGjaTtSaZ7jVgyH0Y77OXt8RoKRDcorFTPWGGeSW+BHPYwdX1uQlOkGhS5WMfU5AvWDsKzhjlS3Xr2haLtpE9S+DoBF9a/T8iOjj549w2c1b9Cbo+DG4U01dIb0it+/1xxSlgdEWQjoyalnngsf9SNhGY2VNIeWJfFQ8n2EG/32l1WdOIhAOVgeMt5H/odSqgF6Nf89u5YQ3fNja35ZSGSmGDg8vV/sG5lj/3DZmHZvN+6D9hEglSbx7PRGE0dw1x30icfBZ4+zG//W39dyEHAkpJmHpIvKCG6vnwE3PewYarYRqi6B2KpAEpGQ==
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=c2FAstd0dm59Kju/X4V60meqn2OKdaSyzGFeglxU81Y=;
 b=oFpVmHcvAkPF9pwGvB24RDIg147MtPuVJuNZiAe0nPBOvjUJp6f1/a+MYU6wFgkT/LaTvnCDAysdggPaCReoCtrJdPGKaezd7nK5g0e3fy6OUHCIc8RptY8vx1uBMH6GyOk1pPOVxnrG3fBVW/wrM2GD+clOv6IWBEkY9k/YqXk=
From: George Dunlap <George.Dunlap@citrix.com>
To: xen-devel <xen-devel@lists.xenproject.org>,
	"xen-announce@lists.xenproject.org" <xen-announce@lists.xenproject.org>
Subject: [ANNOUNCEMENT] XenSummit CFP Extended to 9 April
Thread-Topic: [ANNOUNCEMENT] XenSummit CFP Extended to 9 April
Thread-Index: AQHXJvR5JYhNZD80kE+cotELBxeaNw==
Date: Thu, 1 Apr 2021 12:42:27 +0000
Message-ID: <D7FEFC6C-D06A-40F3-902B-B7F892020C4A@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.20.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 26a618c5-eb11-4aa7-fa4f-08d8f50b9baf
x-ms-traffictypediagnostic: PH0PR03MB5864:
x-microsoft-antispam-prvs: <PH0PR03MB5864BBCD1F89D01F3B1EB19E997B9@PH0PR03MB5864.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:5797;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: xl1+bnPN/FAmKn/T+/e+8X8OFTeEJwihqspvQEg1PlsYjcNz9zViYxebgMLng89enWIJjpRA1H67Xop4gZyPDrHopfhxsAV5AXiJD/yT6yohLw7yj+RZk98yAALWE+wrTKjEcfUaShDTDTji+w2Ca3XOwXpgh+/SUDC3fz1u5UNH0eNsL6Ypo72XZyR+QW4pfOvGZuFMBndVZzy5sGq6zrCVyP9b43M0hBDi7K2SJG0XxmjtdcFsfCrE5QN6eBpBIIY5VlFmq87Dp2WjWsSPcoc+zMK5I8Xw/cBBpTSlJWBeNAbJe299uzyZzwoTwq2m0dQryeGn+6aH9tunYWMYvXFThSd315ivG93B4kPVhwViprNywyBMEBnHJQmVFkEFoNNwNPtHdBJS40PjHvr49/xDUmxQHA4v/2aw1i9T80Q4pYJfuQzy3+yHSUh02xwbJWgp+oHD49Y7pspHMDmK1Ecc9ZfCF0S/UxHlKCDF6XDJP7SUfhwkOn72jLZSQGjaQn5l/xcpW462SQJdysI2AzKLdHxxm//b14MGs9mRztXd1duFf10yqr3LMGShvM8neNE7PgcPWxT8/8ryo2HFNBuFyNoKK5cjMB7O1G6IflWJr85aXlC2z5VHNzFQvYCUTisjz3Af6LPe3erqDvU8ANsFBoiaUV4G8csbvfNs9I7TvjRrqVnnFtuvXDXYIbFB
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR03MB5669.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(39860400002)(366004)(346002)(136003)(76116006)(26005)(33656002)(8936002)(2906002)(86362001)(110136005)(6506007)(8676002)(186003)(450100002)(6512007)(36756003)(66476007)(66946007)(38100700001)(2616005)(66446008)(71200400001)(316002)(478600001)(64756008)(66556008)(91956017)(558084003)(6486002)(5660300002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: =?us-ascii?Q?TtnFQZxff4Ctb0NIobWudCF8hiJ/8sUMRhzrYJss6/M6UL8ZkLJNKlM0fuQI?=
 =?us-ascii?Q?7RZHc+45LyN7FpkJ2r6fRNJkxfWuzlMnVYdJr1UGgy3e7EQngUmMvU69nuYz?=
 =?us-ascii?Q?w7BqYVP+jXPkHb/X8RQsF867JlAfxsOOtc/LHaeR0IRbYa1nSxsmwMKE1Vzs?=
 =?us-ascii?Q?tqvuFFAdwWFaU2FWTiVhFonKhBFViJU+CC83ZCoFqTOMX2yUT4e+7k82k4O4?=
 =?us-ascii?Q?htZuBRB+D1Ks0zEYG5YYpU176ld2jJv3S1X35RwWIxyhUsGmtx2u5Xm1eLXr?=
 =?us-ascii?Q?HeZhYt5IENvBjS+Gj5Fkq+5gVx4xZ+bCn60kshCUUeVTBKQKX2rhdTDCM/rm?=
 =?us-ascii?Q?iSHj1cL1Be38tNSM2X80x+OSUge8D4BBBTGwir81E5UZ3kcHE0quI9F+K7Ds?=
 =?us-ascii?Q?9g4kh5ZEhIV5HczMQAeoST7IwkX4eBYet4KdTrEcYbs4za7km7IzSGSbjVM5?=
 =?us-ascii?Q?oVc6lb8CjsdoHT/B53smpZClyQfzyBTW8AgQPybU3an+HGdmEmVljU7tvvE7?=
 =?us-ascii?Q?k5DEvVPBIOmIMT5OSMjEZZYEs7nOQuANIijTS88vfJ8NYGMR6K4ef3429yw5?=
 =?us-ascii?Q?XUzBejtp0+pLVTl/hPdY7eqeR+rcA1EmBasDcQpcI3rOC5pVm1kIE6HNueVC?=
 =?us-ascii?Q?Dn7vcWT8I7abAA11lPc1SL9ZxjfOq1HfjIR0enhoHY8mhYf0QBPRx7IxKS3I?=
 =?us-ascii?Q?UCrfu2L3jJrlpL6MflgA1Et8bL58EaWSDVNYCMggAmu180rteOTFMc+pJ7Kv?=
 =?us-ascii?Q?Rb7H94vduNK3B7Po/VjC7TMrQdrb+kHUx9vtLrQ1AxOZ13begyhz+Cw8SS2k?=
 =?us-ascii?Q?p9XoWfROA/ZZxhtBaL95LcTOD5zqhMshsEkF6Ce7SidRdcgV23lr+3ntMnSp?=
 =?us-ascii?Q?/6ETxXkp1D6FDfmwdsoYOdOsZRWWYnCe+Gj/zk3cfbTZ6oQkJNxSq84artYe?=
 =?us-ascii?Q?eO/+bqlVCGF+PFlND/WQXXPAPREdogMLnh9yrBDqEQhhcprSEGAbvS2pqdT+?=
 =?us-ascii?Q?bV+bTxG2zH+fdrfflilLIjc6JkqQTfXDdR83buw05EKgAq3iY8UNEqcZnAqA?=
 =?us-ascii?Q?pKrRnObUciYfKpQ26feBwPy5r0kVXNCkT4ntSr2vtDXaVOFuCP1iIEFt+9Vs?=
 =?us-ascii?Q?CVOi0EAPAJLxLPzuRuXgNp/wXrO1ZVrpoQgOxpwM/qwDgGJSofI1pNWsaUVL?=
 =?us-ascii?Q?5nkyaRaQFtU/fK9cOXoLQCyzKwhAx+d5euQqPydnjOgIyoCbXgNZb8LQzviv?=
 =?us-ascii?Q?vwDYXVn1QCgba3i82LNyar4xWPCEn5FRc/NanVb+Am1qMOWTsq5v8ySQyrny?=
 =?us-ascii?Q?3v/wotg0c2yson5v9cqwV4gmAzl45GYDWLViXK+3krtO9w=3D=3D?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-ID: <FE24DBE060C5D847B335827CCF99BBB5@namprd03.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR03MB5669.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 26a618c5-eb11-4aa7-fa4f-08d8f50b9baf
X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Apr 2021 12:42:27.7276
 (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: +JQdQKB6XT6DT+VnNpO2GnEn5fP70gEbKwrlhGPDd8q2eJhuORZX/7M0A/QxjMwIt8GqylNdSu/1MOSG0tdyot7pgUw3IKgOBH4Eijp5GbI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5864
X-OriginatorOrg: citrix.com

FYI, The CFP for the XenSummit has been extended from 2 April (tomorrow) to=
 9 April.

 -George Dunlap=


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 12:45:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 12:45:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104433.199717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRwhC-0000lm-RX; Thu, 01 Apr 2021 12:45:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104433.199717; Thu, 01 Apr 2021 12: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 1lRwhC-0000lf-Ny; Thu, 01 Apr 2021 12:45:10 +0000
Received: by outflank-mailman (input) for mailman id 104433;
 Thu, 01 Apr 2021 12:45:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRwhB-0000la-5g
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 12:45:09 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a93e7ecb-6451-41a4-a496-3a6fdeecb0fa;
 Thu, 01 Apr 2021 12:45: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: a93e7ecb-6451-41a4-a496-3a6fdeecb0fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617281108;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Q5SvqruWEh86fsHbQhTT1l2XUOs2dVrfGE4EFDi2lHo=;
  b=LzA0y8AuqThiyI2943WupIeeeWn6IM9qjERCF8GqzfM6bdp0JxGcIezO
   unutXpKHPItRrAi5h0lAPdyXfCGuMYYZOv4VGFkLZ92tAjwjEQrNwIYR3
   K3aLnDZUliaQSOqSnRDPJH2Ig0amdqW/NvznXOMqwQjq6tn5iswIqXWUj
   M=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 6OLotxVhkGUcDYlTwbbbwcs0wWb1nZNCXZrpc8tJjev88GUED73isIiTb9aNVQeZSZxgN9mxmS
 AY2EbKXDybnr3/OP6+Trf1q1x4o7oKsk1DrAiUZE8iqFYJnjdtnx2sYNjZO2ipKjoeB3XmITdB
 jKwfHvH/V0X2nHNH3S3pMtLiTYJWvtvNrBe6c9MBrrpDPsGJXFLTjYzbslVF4W2tQC5ON+rT4A
 vJQGEVTPdfRpVxgEVffQGJq4+7Yub0zrwpuszPS4s3msb1PR1YFOoq5zSe/h1mM8CuNgrpcRcJ
 ZSU=
X-SBRS: 5.2
X-MesageID: 41066815
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:A2XP86jwXyJdBhGzcQ+oA2MjxXBQX3Vw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+csFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmup
 tIW5NVTOf9BV0St6rHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WdEIyywe3cGIDVuL5w/CZ
 aa+45jrz2vZXwYYq2Adwc4dsLEoMDGk4+jXAUPAAQp5BLLoTSj7rP7FBbw5GZgbxpkx7A+/W
 /Z1zHo/6nLiYDG9jbw9U/2q65Xltzo18dZCKW36/Q9Bz3whm+TFf9ccpKYujRdmpDI1H8Ll5
 32rw4kL4BP7RrqDxyIiD/M/yWl7zo08X/lzjaj8AneiOj0XigzBcYEpa8xSGqg12MasNtx0L
 1G0gui3vI9Z36w/1Welqz1fipnmUaurX0pnfR7tQ05baIkZKJMtotaxUtJEf47bVHHwbo6G+
 pjBty03ocuTXqmaRnizwxS6eC3Um92NhmLRVVqgL3u7xFm2Fp9z0ce2fUFmGYB+J8XW/B/lp
 T5G5Utu7dUQsAMa6VhQM8HXMusE2TIBSnBKWSIPD3cZe86EkOIj6SyzKQ+5emsdpBN5JwumK
 7ZWFcdkWIpYUrhBeCHwZUjyGGNfEyNGRDWju1O7ZlwvbPxAJDxNzeYdVwom8y8590CH8zyQZ
 +ISdBrKs6mCVGrNZdC3gX4VZUXA2IZStcpttEyXE/Lit7XK7ftqvfQfJ/oVfnQOAdhflm6Lm
 oIXTD1KskFxFusQGXEjB/YXG6oVVf4+b52DajG78kewIUALeR3w0wooGX8wvvOBSxJs6Qwck
 c7CqjgiLmHqW6/+nuNz2gBAGsbMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYjt2T8bcFh
 9jt016kJjHaaC49GQHMZaKI2iah3wcqDahVJEHgJCO4s/jZ9ceAos5XrdyUSHGDQZ8lwoviG
 orUn5FembvUhfVzYm1hp0dA+/SM/Nmhh2wHMJSoXXD8WOGpc8uQXMfdyW0UdGehDsvQzY8vC
 w1z4YvxJ673Rq/I2o2h+o1dHdWbn6MPb5ABAOZILlPlqvTYwF2R2eSjTm8gxU+E1Carnk6ty
 jEF2m5aPvLCl1StjR93rzx+F15TGmbYnl9c2t3q4F7CGTAtEtiyOPjXNvH70KhLn85hs0NOj
 DMZjUfZjljwN26zza5sjePH3dO/ORiAsXtSJAYN53D0HKkL4OF0ZwcF/hP5ZB/KZTFqekQS9
 +SfAeTMRL1A+4kwBauu34gISV4wUNUyc/A6VnA1iyVzXQ/Cf3dLBBaXLkdOcib9HWhaPCS0p
 l15OhF9deYAyHUUJqhxq7WZTIYdU+Wjm6yUu0yqZdb+Yg1r6B+GpHHUT3OkFFLtS9OWvvcpQ
 c7euBc5ruEB6pEO+o1UAhd9kAylNuOIFAw2zaGSNMWTBUItTvjI9iN47D0srIhDU2KmRvoNT
 Ckglpg1saAexHG6KUTBK0xK1lHcUQQ6Hxt++WZao3bYT/aPt1rzR6fMnWndqVaR7XAMbIMrg
 xi69XgpZ7aSwPInCTRtyB8OKRA7iKORt6zGhuFHapt/8ahMVqBxous78jbtka5dRKLL2AZj5
 ZCb0oec4BqjSQjlpQ+1myKcZPMy3hV2Gd20HVAjV7i2o+v/WfdEwVnCGTi8+RrdAgWFGOJg8
 TD+fWfz1Ln7lF+qML+KHs=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="41066815"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fFNBtywWSXAM+eXbihiPCOYpRZDUvU1ttuFzCge3N0swjvYFQ4+kj128VGamAFwfCm9MRkfynSyqCUhuO5gDma/4gIBjgGptJ2F3EuQswui+QOW7hbI4EwVkwZOqOSkjgeJLs5kk+KmPH4sw+pzYUmjsnSsFsYomg652bF0G2YATDZYfOr5DhKMz6ZZstVV62awZmlM0iyc3w9auANt029Cf4EMzf9agBbLut99ln8Z3B5FTnEm/85ULT5Exc4Pwkj/HvMMq3jOkN/lWSWayjhJDMUMKmV2iSCVzmT7W0h1XQxXMbXII9XJX2gmgboShfXR3u54SaLjlntYoJFnk5g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=q94WzQ6SuSuvqMAlhYZcl9EGVF426lyxhYZHeF9slu8=;
 b=ES4t/n7FS3L1eIKZRG6VS3qluRtcL5+RRyRWb5vUxcONKTtyCcwWnw3DsEkX842a/oIG+N0Nl3oRuBhMOEli0laWkQSnq0pgKTNf9d+2wdXYKJO/wFZwlE/3Ys98QI2mATsdvwbJA82qAG7QqPeqV6eCaY32BkSa4YMaigSWMlYuEhUzvUkERJEJgAHsg7O8JtyWnMFJHbsrDZzhg4RzEC7zX9EwKU5RbOS8cnZFyIP45MCm5OduXyOuBo1mJMLcjVjKBcAgNS0lgMlJoAR6vC7qy69MKiNCSAPGqJBNDggH2t6Kc9HfPgdoyiKvJGrwz0rT7HRXC1zWl4g9R10UVw==
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=q94WzQ6SuSuvqMAlhYZcl9EGVF426lyxhYZHeF9slu8=;
 b=wPn4yO4ryIR/6L6wzZ/TjCRAChKm2zIKq5/iudQ05SBRdS2qLjWCgJf3tIf83GzxgdD/ANXW6XT8waRpk7byN8r5hvRd8kX7eqvKZYEs3oBnYVRjpYDDBMFRAVAU0x3rRU1G5nvmxemXOwiLwFDy6AdyTjU13C26npuxVS2REXs=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Paul Durrant <paul@xen.org>, Wei Liu <wl@xen.org>, Jan Beulich
	<jbeulich@suse.com>
References: <20210401102252.95196-1-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/viridian: EOI MSR should always happen in affected
 vCPU context
Message-ID: <b8fcbe35-2c9d-fd8a-0200-90d9c1039a27@citrix.com>
Date: Thu, 1 Apr 2021 13:44:59 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210401102252.95196-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LNXP265CA0051.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:5d::15) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f146cac8-73c5-47e7-aae6-08d8f50bf937
X-MS-TrafficTypeDiagnostic: BN8PR03MB5138:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB51384249EA9518F87E6461D6BA7B9@BN8PR03MB5138.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: O/00PG380JJ7dXQokDD0BdVaCjQcM6t9QUvMTz0xg9tCZ4WizDUNLeOTtxvxlR6+n042hkueSXjq1zf/2VOK0e7VICBlrXRBJ4KDQO/2bAdF6a9/RscJXp76nCzZAyc16yWxQYgu4EZXJdd6nYf5D6lSELi8K3oR/29YQ/ZOauQ2sgVDras9X/LQ/HE8FPShIYbKpfyytmIZde1xAQUHc0KJGyf2n7qhOnQzMH30TE0e4i59n33plIZMGffLjvPfv5JdlNNSXektv1KTFZFtKiQxMNZNvGyWrOx4cGnPSvvijK/l4nOfOoNZNivMyvkxrUJwq6kSaJ0M311gTTZO+snNSn+yf3VepLHX1sGVuK3K1u8DxmZKAqnEijdbVf1o0dLzWt+GI0v9OoDBdsEzIWCS0YfuPfMU1ch/cerRMGbINR85S9RJZfKlqe8pf7J+m5uvk3Hf2GHWuJL0Onjo9JZ4G0ka8ZSPaPewcZQan2DmpDQvozeGxOLg6DnKQVM0rh8PzYTug+wVIR2t2BEEjB9u2q3nYVjLloXhwOa/AP3n57Hg2HrT/d+0o7A2t6m+aYmjsr/EjUoxIvBeWQZmM0HvcQY6jvknUdseVIqslWcDexGmBDg6fFR1gJbH05+iX0RL788ucqTGPqZvVkFpGFBwhAtEQbTGxgfHAIqC/73gQSq8OLwos0Oqx+RHNkyh2PHz+p5dKQM6Ayv44mHfdBvqz7npMwWRzcZhMsFkHlE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(376002)(366004)(39860400002)(136003)(478600001)(86362001)(6486002)(54906003)(16576012)(316002)(8936002)(31696002)(38100700001)(4326008)(8676002)(31686004)(5660300002)(16526019)(2906002)(36756003)(6666004)(66476007)(26005)(83380400001)(956004)(186003)(53546011)(66556008)(2616005)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f146cac8-73c5-47e7-aae6-08d8f50bf937
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 12:45:04.9124
 (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: m7YfYevSUkkX20NeuDE2W5gabYv0rxySK220iyniflL3iPMnV49TJ7lPnOYXSqlwatnaCvJWotdgMnFksP6md6RucpMh+t5TT1WYHdk5Zto=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5138
X-OriginatorOrg: citrix.com

On 01/04/2021 11:22, Roger Pau Monne wrote:
> The HV_X64_MSR_EOI wrmsr should always happen with the target vCPU
> as current, as there's no support for EOI'ing interrupts on a remote
> vCPU.
>
> While there also turn the unconditional assert at the top of the
> function into an error on non-debug builds.
>
> No functional change intended.
>
> Requested-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---
>  xen/arch/x86/hvm/viridian/synic.c | 11 ++++++++++-
>  1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/xen/arch/x86/hvm/viridian/synic.c b/xen/arch/x86/hvm/viridia=
n/synic.c
> index 22e2df27e5d..e18538c60a6 100644
> --- a/xen/arch/x86/hvm/viridian/synic.c
> +++ b/xen/arch/x86/hvm/viridian/synic.c
> @@ -79,11 +79,20 @@ int viridian_synic_wrmsr(struct vcpu *v, uint32_t idx=
, uint64_t val)
>      struct viridian_vcpu *vv =3D v->arch.hvm.viridian;
>      struct domain *d =3D v->domain;
> =20
> -    ASSERT(v =3D=3D current || !v->is_running);
> +    if ( v !=3D current && v->is_running )
> +    {
> +        ASSERT_UNREACHABLE();
> +        return X86EMUL_EXCEPTION;
> +    }

The original ASSERT() was correct - both of these are easily reachable
in control domain context.

If you want EOI to not be used, you need to raise #GP from it, but that
in principle breaks introspection which really does write MSRs on the
guests behalf.

It's perhaps fine in principle to leave that problem to whomever first
wants to poke this MSR from introspection context, but the
ASSERT_UNREACHABLE()s need dropping whatever the introspection angle.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:21:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:21:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104451.199749 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxFr-0004Tb-2k; Thu, 01 Apr 2021 13:20:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104451.199749; Thu, 01 Apr 2021 13:20: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 1lRxFq-0004TU-Vk; Thu, 01 Apr 2021 13:20:58 +0000
Received: by outflank-mailman (input) for mailman id 104451;
 Thu, 01 Apr 2021 13:20:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRxFp-0004TN-6P
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:20:57 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b4392d44-e5ca-496f-b9c7-2de643c40e69;
 Thu, 01 Apr 2021 13:20: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: b4392d44-e5ca-496f-b9c7-2de643c40e69
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617283255;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Ot1NR4kkHo35XY5Tw4cWLBaToELK32ub+ZiUd8PP1KI=;
  b=d54GNFsppOz9iFHg08pv6V/dB+JoP5Y6mo/ZLuy8JXUkUq54zBckJKot
   osvIlYn0YR+YvpvPkS4I7E6nOGA8eZB7nyT6yr+B8uxsfc/Vn7DQn/wKv
   dE9Q5hmJP+zv1+1dfVifR5UNomDDWLbVXN0i790tzkFxCvwLtmOlMSsHb
   w=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: mJryrkgdok5c80cSLcrSnpJOC0vh7kSpkZiFqGFwkqi6UvK+L7hed/H4KxM1CzmKEufEEf/X5j
 TzdBC9jX1y/NT9z9G+mQp1mdnA7f4rqHuO5d8/ACH6bC6LhX62nOPGs+ek2xBULTZk33UNQtq1
 7DDpYICwWd6xqi79VcmEX1xJNyJNKKonPIM66fKbxrKi38eTVxa12AIXrtw3EBTFrpN0ZKJyNM
 Yi48d4COgGHn08inHlZudWHDcMJrvLG5X/CQkmd+xvf0xcQ6KEhIbDVbZjmTFo4YzPSCoAR5xI
 z0E=
X-SBRS: 5.2
X-MesageID: 40555887
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:/rmui6vkQ73CWQaucu7UOrth7skC2YYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOj7U5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qz6Y
 5JSII7MtH5CDFB4frSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjztRICzzKDwTeCBtA50lGJ
 2Aou9OoDS9cXoaB/7LeEUtde7FutHNidbaehYAHREq802jijmv5b78HXGjr2gjehlIxqov9n
 WArhzh6syYwo2G4zL/90uW1ZRZn9P91sBObfbstuE5Iijh4zzYH7hJdKaFuFkO0YeSwXYs1O
 LBuhIxe/l0gkmhA12dhTvI903e3C0163nkoGXo80fLhcDiXjo1B45gqOtiA2PkwnEttt19z6
 5Htljx3/E8YGKi7UaNk+TgbB1kmlG5pnAvi4co/htieLATdaNLqsgn9F5Vea1wbx7S0pwtE+
 VlEajnlY9rWG6dBkqp21VH/MahRTAaEBuAXyE5y7ao+gkTtnV4w0wE/dcYj3cN+bksIqM0l9
 jsA+BGkqpDQdQRar84LOAdQdGvAmiIeh7UNnmOSG6XWp0vCjbokdra8b817OaldNghy4Yzoo
 3IVBd9uXQpc0zjJMWS1PRwg1HwaVT4eQ6o5tBV5pB/tLG5bqHsKze/RFcnlNbli+kDA+XAMs
 zDeq5+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49Rhanvt/LEIv3rebWGcyjZ4bFIHIBYCfSE3
 EDVD/8KIFr9UawQEL1hxDXRjfDYUr60ZVsELXL3uQaxYQXX7c89jQ9uBCc3IWmODdCuqs5cA
 9VO7X8iJ62omGw4CLp4gxSS11gJ3cQxI+lf2JBpAcMPU+xW60Eoc+jdWdb22bCAhd+SsjRAT
 NOvlgfw9PwE7WggQQZT/63OGOTiHUe4FiQSY0Hp6GF7cD5PrQ1E4ghQ640MQnQDRR6lUJLpQ
 54GU85b36aMgmrpbSujZQSCu2aXcJ7mh2XLcldrm+ak16dq8EpTn4yRCWvTsaTvAYrS1Nv9x
 hM2p5apIDFtSekKGM5juh9GkZLcn6rDLVPCxnAWJ9ZgYnxeAZ7TX6DgBuTjx1bQBuyy2wiwk
 jaaQGEc/DCBVRQ/lRVyLzj/l9PemKBRE5ocXxhvYphFWPJh2Zr3YawF9+O+lrUTmFH7vAWMT
 nDbzdXGA9oytyt/DO+mTqJFxwdt9gTF92YKI5mX6DY23urJoHNqLoPGOVM+o15cPr0tPUQbO
 6ZcwiJDT/xBu8zwTaJrnI9NCQckgh9rdrYnDneqESo1n82BvTfZGl8T7YAOteG8izKQe2L3J
 gRt6N8gcKAdkHKLviIxqHcY2Qddlf9oWuqQ/oprp4Rl6Qor7d3F4TaVzyN9Hwv5mRJEO7E0G
 clBIJ86/T9H6UqWeo4USdQ5EAom9SCN1FDiH29PsYOOXUWy0bGNNaI6YfSobUhAke9tBL9UG
 PvhBF1zrPgZW+/zrYUBKI7HHROZGU94Hpk+vmed4e4MnTiS8hzuH67OGS6arlTVeysHqgRtA
 9z57iz7qOqXhu9/ADbpj1gJK1St06hXMOpGQqJXcpF6cazN1jJoqyk5qeI/XjKYAr+T0QTno
 tec0MMKuxFlzk5lYUylhGIdZafmDNvr3JupRd9llDs3YC64GDUWWF+WDep86l+bH10KXiHjc
 PM7O6C8m/yiQI1gqX+KA==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40555887"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mLLnjO1dPcifTSOHaIGs8xIisJ7GBNJ4ftASX4+aUadtB9ZIWhr/XmwRd6BSMqG7BQMzfSCjrsiI8lNuSqdxLqbqLG0sHmJGf/DPeczg1h04Wi8CpRvoq9qKFwMxS9C7uPvKJkGgzamTAAyc8v+bUtWdYW8sCnHPoy52Z/ZIP7yHztBbq2VvUNaEQmLbGI8fnqzalRXOCrCpojgEHLY9N9hXZwL1iKvaVxXrCRvNdesfu4gYxSGppnAUIaUTtNq4jZMCxRxhorefWIndERRzN75UmVEw8Qpr3u/94BVcprJ537JwbgFPkjfk9P3EEd308+dlwM0zH4LWgxiJI4v9Fg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/OyQ2vrdQax1SqwU6XUja7IVbjW+nUkz7HxDGveAYrc=;
 b=ZPg2PrUgUKNdBUlRz9V2R1cw6lUe+cjYllO8p22jeIH8HoXcALQ5BLi1/xOS3EcoX5iAV9k9fwkHMH4DUG7kIZwxsiR0zdT6MkpYNCQ0MxRdon9SvwvSt27HEFc9iYOWq8on3zD46AQZYUXzDoMd//shEdMu7R3XwFps2ywYOgg7uhR3H/CX8+aYhdVDkPEvPmdbHfpi55Z+IfSjkAg+8/xy0UPE5VdV5pqYP9LtOHQPMJOXd4IS53NhSmR+KQBM3mhdI8dUaKcwpPpdQqb+vuoEwkeNFW99hrySUN/Cxt+G0YHKgQ7HIGNVML5ZbCu1XRDRV2fZkhbkXXDl+P0fhQ==
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=/OyQ2vrdQax1SqwU6XUja7IVbjW+nUkz7HxDGveAYrc=;
 b=lKaGnBY74GKP9LpFkktQ7jDV2UcqY+FJ9vDfhFkKX4uHSs6J7rauxiv+m3JQmttTvOSPWzOBqOh/fA25aYG5yGNsXdgKJGyMbU/ud9SacYSk8TCo/9YOz87sWYGWpSv3V3CCv84mEpsS9fgPyzn4A3dVnbTFWk8FiFhLrQv+a1w=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210331133125.7072-1-andrew.cooper3@citrix.com>
 <95d8688b-2e54-ae02-09ce-45203959e08a@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/hvm: Fix double free from vlapic_init() early error
 path
Message-ID: <ac94721d-1741-5523-e70d-1eac15c23603@citrix.com>
Date: Thu, 1 Apr 2021 14:20:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <95d8688b-2e54-ae02-09ce-45203959e08a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0053.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:60::17) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: be416b3d-b446-40e0-1cd2-08d8f510f8cc
X-MS-TrafficTypeDiagnostic: BN8PR03MB4801:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB4801F7551206D9C3F5926C98BA7B9@BN8PR03MB4801.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 7rKxCIc/bbBMVgebxX/S4RSdj/vHo2dOVL5DBrcrSYn2zYSdiquQ2g22u5QzDZpoTItgMz+yDMoJO11XnJuldXEZfSe05sffKBDpdBStng00v4Xrn+nN8kS++xbUU5f/NKSLPdL/8dnJThMk3pD+jE41W2DMMeqa5fgTwKzA+wtRtsPdETzSwHBzDUoZmWtERj4gKdn68QpJWK98hu9aH/2qZ38X94doUbvXx7L1hHuemstiA4uye+8PyTJ6kOdWkcFtpOOExXl2w2R0OCh7ojrvdYJQc4uWxKKIOCCKhthjkfuSc6vbLAGYSVgd3GkSw1mk/NMeoVUJjQWIuPsA1hqic4I+tLeD94QBZH5kSrxDmFyKylwbe4NJ8F+1WqaOifWnGfQRbg6bW1NJV3aJVB6Y1/cVMmvMsDhHZ6WLGGkcQH9VaJxZS0t6pSt5ewoI96YlHfmnwrlzL8E/uw3+kUumqMv1kc+FLxwISxmkhV5YogivetPlJ0mJhIBOw7cKPFjC3gFmDN8VEa5ycQLp+YeiQaLrM3k1lNNv8TouPKl/16hzhc4Vu4KaG80m86gCoy2d4UW1aPKRG8cPUVpx8qtSMTSrIWKBsiRpOa1DBj3hKHOL9EBa+pxCPI4VE4WgWw4rJ4CGLM0AM9j4e7HPBBLPSMq9i9LlVyvd0sfOjSycidcYk8XYdvEnbf35Vv49YLn5FtZsoJ8F0TI32hXKs9ZifNiwoWgGZOtEUUw6IpA=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(136003)(376002)(396003)(366004)(39860400002)(2906002)(6916009)(86362001)(38100700001)(66946007)(6486002)(186003)(16576012)(316002)(54906003)(83380400001)(26005)(53546011)(16526019)(66556008)(5660300002)(478600001)(4326008)(8936002)(8676002)(6666004)(36756003)(31696002)(31686004)(66476007)(956004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Xsjy9LQvKFfenZCqH/dH5qrVX961SuImBUrwlpO?=
X-MS-Exchange-CrossTenant-Network-Message-Id: be416b3d-b446-40e0-1cd2-08d8f510f8cc
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 13:20:51.7871
 (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: BwZbrG6EGFslqxZX/eMZYk6zbW9ARDlZglLfX9oGdFywGrrTVgC4OSnNPNYaoHSqzsVCRrBCOSXxrMGPwUtM91J8MMtB34Xr8B495yAjdM4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB4801
X-OriginatorOrg: citrix.com

On 31/03/2021 15:03, Jan Beulich wrote:
> On 31.03.2021 15:31, Andrew Cooper wrote:
>> vlapic_init()'s caller calls vlapic_destroy() on error.  Therefore, the =
error
>> path from __map_domain_page_global() failing would doubly free
>> vlapic->regs_page.
> I'm having difficulty seeing this. What I find at present is
>
>     rc =3D vlapic_init(v);
>     if ( rc !=3D 0 ) /* teardown: vlapic_destroy */
>         goto fail2;
>
> and then
>
>  fail3:
>     vlapic_destroy(v);
>  fail2:
>
> Am I missing some important aspect?

No - I'm blind.=C2=A0 (although I do blame the code comment for being
actively misleading.)

I retract the patch at this point.=C2=A0 It needs to be part of a bigger
series making changes like this consistently across the callers.

>> Rework vlapic_destroy() to be properly idempotent, introducing the neces=
sary
>> UNMAP_DOMAIN_PAGE_GLOBAL() and FREE_DOMHEAP_PAGE() wrappers.
>>
>> Rearrange vlapic_init() to group all trivial initialisation, and leave a=
ll
>> cleanup to the caller, in line with our longer term plans.
> Cleanup functions becoming idempotent is what I understand is the
> longer term plan. I didn't think this necessarily included leaving
> cleanup after failure in a function to it caller(s).

That's literally the point of the exercise.

>  At least in the
> general case I think it would be quite a bit better if functions
> cleaned up after themselves - perhaps (using the example here) by
> vlapic_init() calling vlapic_destroy() in such a case.

That pattern is the cause of code duplication (not a problem per say),
and many bugs (the problem needing solving) caused by the duplicated
logic not being equivalent.

We've got the start of the top-level pattern in progress, with
{domain,vcpu}_create() calling {d,v}_teardown() then {d,v}_destroy() for
errors.

This top-level pattern is also necessary so we can remove the need to
put partially constructed objects into full view of the system, and wait
for a subsequent hypercall to clean them up.=C2=A0 This series of bugs is
still active, and there are still a load of NULL pointer deferences
reachable from out-of-order toolstack hypercalls in failure cases.

We've also got some subsystems (vmtrace) moved into the new pattern, and
some minor parts of existing mess moved over too, but the end goal is to
have exactly one create() path and exactly one cleanup path, so its
impossible to introduce mismatched duplicate cleanup logic.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:33:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:33:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104455.199761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxRa-0005TB-7d; Thu, 01 Apr 2021 13:33:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104455.199761; Thu, 01 Apr 2021 13:33:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxRa-0005T4-38; Thu, 01 Apr 2021 13:33:06 +0000
Received: by outflank-mailman (input) for mailman id 104455;
 Thu, 01 Apr 2021 13:33:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRxRY-0005Sz-F8
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:33:04 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2b51ede2-3768-4e82-96cd-66e5c45d1d2d;
 Thu, 01 Apr 2021 13:33: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: 2b51ede2-3768-4e82-96cd-66e5c45d1d2d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617283982;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=WgvTekEWeEc0gEBpw9NIx3wGqTvh7izwE7TdeeV+6tQ=;
  b=NBPbPwx/jtpyGmn6T10z7fxqGQVx+ZPgQZaOZQRSN2cRNK7Urk9aSXOK
   C8r5q3H+KHNEDshnwK0/gnifYWF74yhukpH59Ou1KEwWOiPWverFo+0Tg
   CPeqEnwMk0HSfW1WntmhS7cf1ivbcNzgrInSM5p6tfH63ZmfK+PdpXG1E
   Y=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: t6PBrsHe+O5PWQWBtko7Y1XG1ug77vd2m5wkV+9Kh4jLt8tlA5XkpH5rg9u0Hu+nnypskeO63z
 EuVq+dG9b7ss+OopeI6KA5gyGATvfWF6AcjwUGFOum+A8HlUN1V6N3+QlasUhQyTbY/+gk4wZF
 zlVV6Ov3cFwHjjgh/b/QWu1BJe/b4tLCdggg4UqqU0yhPKw9xUj1FTAb4CBzMYbz8OQMUXRONY
 Ntgq3YLGR/6XNZmmcbd6PTvY93wfU04/L3vnOhdqbXsJmMMXU4TXW1urSTGTCvXvBAvQ34XcNy
 ay4=
X-SBRS: 5.2
X-MesageID: 40697609
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:FFlMn6+N9qxkUzy3SCluk+F1cL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmyybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUHD38Zn/+
 Nbf6B6YeecMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsKV4hLxW5Ce2OmO2dxQxRLAod8MZ
 Ka6NZOqTbIQwVpUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbySw9BEYTj9J3PMe4X
 HI+jaJm5mLntOa7lvn12HV54lLg9eJ8LV+LeGFl8R9EESVti+Gf4JkMofy2wwdgObq01oylc
 mJnhFIBbUI11r0XkWY5STgwBPh1jFG0Q6Q9Xa9jWH4qcL0ABIWYvAx/L5xSRfS50o+sNwU6s
 sitAj4xvkneC/opyjz68PFUBtnjCOP0B4fuNUekmBFVs8mYKJRxLZvjH99KosKHy7x9ekcYY
 9TJfzbjcwmE2+yU2rUpS1GztCqQx0Ib2y7a3lHkMmU3z9KpWt+3ksVyecO901wha4Vet1q4f
 /JPb9vk6wLZsgKbbhlDONEesevDHfRKCi8f166EBDCLuUqKnjNo5n47PEc4/yrQoUByN8XlI
 7aWF1VmGYucyvVeIOz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykuO7ys9vQfHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYk8pss7YVSTucjGQ7ea9tDzQbL2Hv7AADwkUmTwDj
 8oRz7oPvhN6UitRzvWmx7Ud3TxelHu3J55HaTAltJjjbQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eaqACNjCL1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXWhT2XCANyJuVs++Kn
 8Zm31HvYaMa7CAzyErDNyqdkiAiWEImX6MR5AA3oqO+NniYZF9Kpo9QqR+GUHqGnVO6EdXgV
 YGTDVBal7UFzvoh6ngpocTHvvje951hxruB9VVp3LZvUC1vtouWXMfYj6rXaes8EQTbgsRom
 c0374UgbKGlzrqA3A4mv4EPFpFb3nSPKhLFz2fZIJfmqnifSZ5SWviv03dtzgDPk7Rs2kCjG
 3oKiOZPdXGGEBUtHxj3qH2y19sbWmGc0Vsand1jJ1lGQ39ywRO+N7OQpD2/3qaa1MEzO1YCj
 3DbDcICi5Fxty81neu6Xy/PERj4q9rEv3WDbwlfb2W52ikL5eQk7oaW9VO+ox+CdzouugXcO
 6WdgOPNgnkA+cx1wH9nAd9BABE7F0f1d/40hzs62a1mEMlCf3JOVJ8WvU1Jcqf42WMfYfA7L
 xJyfYO+c2+PWX6ZoTYleX5bztfJgjSpmDzZecyspxQtb8zsrw2P5Sza0q+6Fh3mDEFaOHznw
 ciZY4+xpbrEIpmZdYTdCJU5UBBrqXFEGIb9ijNRtYjdlQshULBN9yH47D0uaMia3fx0DfYCB
 26yWlh5P/LUCuI6K4CB48xKWpQblIg6H4KxpL1S6TgTCGrffpE5ly0LzuUd6JcUrGMHdwr31
 tHyuDNu++cbCzj3g/M+RN9P6JV6m6iBee/GhiFF+IN09u0Pz238+eXyf/2qDf8Uj2gbUsEwa
 VDaEwLd8xGzgAYs7df6Fn7doXH5mQ/k1Vf5jl7llninqieiV2rY31uAEn+mZVZXT5aL36Sq9
 /KmNLojEjA3A==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40697609"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IdJWk2NxmslbdkFUGevaTWX8KS670H95SOb0WzGHt4WFGHoryjb26DIZsuqAIQ+82Lpp3SwN9XJb5Y/6+9jc21dQ6BqjMU2aJ8QK1ALfEPWYdeDXqRDUoB9Bkw6IZh1a/lJhpiHT66uKL6/AS4NGQL5ddReyB8GIdOoVkfQgCd92U89gU4U6cmGDXSs0cV0wGNusI+uIeMV/u1+lZ8/2IH8nIs0SD3eCvHBxpkpbfuO4pNGM4h3IfIHq87NylWH+qAc8NFpt9+3g7rGdIQPMVCZivdYAR+0yW2d1Ual28vp8tsURdNVDFlsRJbznfbX2NQUd9hNK9Rvjw3mB2mjaag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yqhfqYHbcZHVO7ustC/BjskR5c/CovCVK45ufO95EOQ=;
 b=Np4CGdeAKD/5c8ss8INDHHBjvpgkQ6xmouRfsK1dfo9oOvIdlZshTbof17OLpUFXZyRFpLsNfG1Uzx5GwjEGXMmndODgXqM5iE5mGJi5wBMoch0ow8oNpLExMBjcLKfgU6XqKexF0QMjIcZEmv8Lw8d/jb7ll3BuFmR3tsnqTlHc87PCqydvtBvM1AIDHC3cvEAag4i00FIW3ah/JGRX6Haj+4go0wssvsF/Cgkv725OcY2LmbwZricjzAY45R+n+NKUDrSAFAG+3wBLJ5xXzBafu4S52dRhLcDcO9VuHm+3SqVTvWaB9Qk5dH8K32xeeU/HhHiObt2GG7GXbGhorg==
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=yqhfqYHbcZHVO7ustC/BjskR5c/CovCVK45ufO95EOQ=;
 b=HkFwt6o4w0Gx1sjwVlMvhY772pamacqJyM/M73VeBAkmZPDmfoxuJ6w7Nwkv2x0DS0kLTdWEYr2LAvPts9FdK5QB2AWPCK2DlLQcDOquQvtQAf2h5lIbgxb7yBGT2Ph97A80vZGQDYLJRzY/NT/nPN4QcYeLDMRAip1EdMa6tOk=
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Jan Beulich
	<jbeulich@suse.com>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
	<xen-devel@lists.xenproject.org>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-6-roger.pau@citrix.com>
 <87d48996-6b8b-d801-c43b-30b919244fcb@suse.com>
 <YGRXzRw+wBP5Gm+w@Air-de-Roger>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 05/21] libs/guest: introduce helper to fetch a domain cpu
 policy
Message-ID: <da79b1c1-b195-d11d-af1a-b694a0558220@citrix.com>
Date: Thu, 1 Apr 2021 14:32:32 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <YGRXzRw+wBP5Gm+w@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0166.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18a::9) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 662a7b76-68df-464c-b82b-08d8f5129db6
X-MS-TrafficTypeDiagnostic: BN6PR03MB2515:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN6PR03MB251549C6FE5A1716D421F352BA7B9@BN6PR03MB2515.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6430;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: aamXuZBm0H6zp58xvnaj3Uue5NTr7/kqYT44iO3a8TPRruaQAlO1RhXVplWzlSmiNxyE8u5u3MxVbifksIRLsrnLPiMJFVq31ysSRC8M+uFNC7kIGly4mSJqc0tpjhla6Av78tPoP7FNWy69JoO0r0gacrhR19hWDG+Sp6Oz8sI2yB7Wqr2+WoJJ3zAth2z2ttxhpOaNZMspxnTJQYSpGvy6N2wjByg7TlzHty0wNvlvJnqdnuFjXeZKDK7Qg0UrUnP64MERPX4FnF4K8AHIOPrR3l/jfb1t0ULUYowILpT+5CLmtQ8cDkQY7NtaV08QrpCGMe8J4AhGZ4UNQK7z2sXjfsyUpVDPwpANdpMEjw5FGfVQ4JSh8uSLa/I6ODzlHAkL5ewSamI7EuOpLxhbpy4pApWwbY0L8W5kLaQJugAT3D/IeBTHs+YvTL/Lmzv1wElqm8AYTtwf1GNe9rzOLbrDQJefVg8U54DBCqPFst7ZBsgiJbBiVKE/2yuYFpuSulkf2jOE0E4AZ+fgB3h62xqycVQctlh4R0IQ7hnsLVD/VM/b22OE1BX2KVUyucyVlBABQp4jlqzlnW/glp6/rSYtSYypXm/ZoOHoP77lvclbMdIFN9PWgKBzAkx94hurSbw5csBZ0+VETf4ZbLCudCugKhbB6cQGy5PihInXw2Ym76YTxqRxxzJfkt0dIVJtWqq6B1o9GLMYbnLKijjp+r/hZWmMwrMwut7HTWinUgE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(366004)(376002)(396003)(346002)(136003)(86362001)(31686004)(2906002)(5660300002)(2616005)(478600001)(36756003)(31696002)(66476007)(66946007)(110136005)(66556008)(54906003)(186003)(4326008)(53546011)(8676002)(6486002)(8936002)(316002)(16526019)(6666004)(956004)(26005)(38100700001)(16576012)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?2nhLSkER4Ddu+l5HM/iQnNv5MhGA2jTRUHMkLV0?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 662a7b76-68df-464c-b82b-08d8f5129db6
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 13:32:38.0257
 (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: 6J++VQbTp+l+Mzdk1aLsWOc+bjaCS4qvbnUxhSpKawjsCv2tCQx7PZS59H0zMSTslaMXiq+e6hW58p5tfbCgda8x0ps7rM2w4JCn6BRZQBI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2515
X-OriginatorOrg: citrix.com

On 31/03/2021 12:06, Roger Pau Monn=C3=A9 wrote:
> On Tue, Mar 30, 2021 at 05:37:02PM +0200, Jan Beulich wrote:
>> On 23.03.2021 10:58, Roger Pau Monne wrote:
>>> Such helper is based on the existing functions to fetch a CPUID and
>>> MSR policies, but uses the xc_cpu_policy_t type to return the data to
>>> the caller.
>>>
>>> No user of the interface introduced on the patch.
>>>
>>> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
>> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>> with again a minor remark (plus of course the same that I made for
>> patch 4):
>>
>>> --- a/tools/include/xenctrl.h
>>> +++ b/tools/include/xenctrl.h
>>> @@ -2599,6 +2599,8 @@ void xc_cpu_policy_destroy(xc_cpu_policy_t policy=
);
>>>  /* Retrieve a system policy, or get/set a domains policy. */
>>>  int xc_cpu_policy_get_system(xc_interface *xch, unsigned int idx,
>>>                               xc_cpu_policy_t policy);
>>> +int xc_cpu_policy_get_domain(xc_interface *xch, uint32_t domid,
>>> +                             xc_cpu_policy_t policy);
>> Generally I'd expect domid_t to be used for domain IDs.
> Me too, but xenctrl.h seems to consistently use uint32_t for domain
> ids. I'm fine to use domid_t here, but I assumed there was a reason
> for using uint32_t uniformly there.

There was a tools-wide change making everything uint32_t a while ago,
but libxc itself has never used domid_t.=C2=A0 IIRC, it was to do with
problems concerning the INVALID_DOMID constant.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:38:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:38:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104458.199773 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxWm-0005dm-Rm; Thu, 01 Apr 2021 13:38:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104458.199773; Thu, 01 Apr 2021 13:38:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxWm-0005df-Of; Thu, 01 Apr 2021 13:38:28 +0000
Received: by outflank-mailman (input) for mailman id 104458;
 Thu, 01 Apr 2021 13:38:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRxWk-0005dV-T7
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:38:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b03c95cd-c0d9-455d-8b49-73c7e0a9183d;
 Thu, 01 Apr 2021 13:38:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id EA57AB0E6;
 Thu,  1 Apr 2021 13:38: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: b03c95cd-c0d9-455d-8b49-73c7e0a9183d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617284305; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=YTyVyHfq5aXmFcqzWsVtaDBe2hBWqpTVqk6/vpdoImU=;
	b=Puh5c+7J9AL9Fr1Jhn9hilua2VmUG+8UqNSZZSAtb3OyOISHAWiO8mpSKfjibifkt2jNZ7
	G3ok/41FItJOvRbZBXvhtVEEEJ7rj6D1Q6z4pl4npdybwI7avPUq7gtmTUWdASt6uzyxvz
	InZ66TA3bpDKnCMNy68uvtC1+ELaiIk=
Subject: Re: [PATCH] x86/viridian: EOI MSR should always happen in affected
 vCPU context
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Paul Durrant <paul@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, Roger Pau Monne <roger.pau@citrix.com>
References: <20210401102252.95196-1-roger.pau@citrix.com>
 <b8fcbe35-2c9d-fd8a-0200-90d9c1039a27@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <28f68328-9e5f-3f86-a56f-fcc9cf6ba303@suse.com>
Date: Thu, 1 Apr 2021 15:38:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b8fcbe35-2c9d-fd8a-0200-90d9c1039a27@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 14:44, Andrew Cooper wrote:
> On 01/04/2021 11:22, Roger Pau Monne wrote:
>> The HV_X64_MSR_EOI wrmsr should always happen with the target vCPU
>> as current, as there's no support for EOI'ing interrupts on a remote
>> vCPU.
>>
>> While there also turn the unconditional assert at the top of the
>> function into an error on non-debug builds.
>>
>> No functional change intended.
>>
>> Requested-by: Jan Beulich <jbeulich@suse.com>
>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>> ---
>>  xen/arch/x86/hvm/viridian/synic.c | 11 ++++++++++-
>>  1 file changed, 10 insertions(+), 1 deletion(-)
>>
>> diff --git a/xen/arch/x86/hvm/viridian/synic.c b/xen/arch/x86/hvm/viridian/synic.c
>> index 22e2df27e5d..e18538c60a6 100644
>> --- a/xen/arch/x86/hvm/viridian/synic.c
>> +++ b/xen/arch/x86/hvm/viridian/synic.c
>> @@ -79,11 +79,20 @@ int viridian_synic_wrmsr(struct vcpu *v, uint32_t idx, uint64_t val)
>>      struct viridian_vcpu *vv = v->arch.hvm.viridian;
>>      struct domain *d = v->domain;
>>  
>> -    ASSERT(v == current || !v->is_running);
>> +    if ( v != current && v->is_running )
>> +    {
>> +        ASSERT_UNREACHABLE();
>> +        return X86EMUL_EXCEPTION;
>> +    }
> 
> The original ASSERT() was correct - both of these are easily reachable
> in control domain context.
> 
> If you want EOI to not be used, you need to raise #GP from it, but that
> in principle breaks introspection which really does write MSRs on the
> guests behalf.
> 
> It's perhaps fine in principle to leave that problem to whomever first
> wants to poke this MSR from introspection context, but the
> ASSERT_UNREACHABLE()s need dropping whatever the introspection angle.

But if the original ASSERT() was correct, how can the ASSERT_UNREACHABLE()
above need dropping? Are you perhaps only talking about the other one?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:38:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:38:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104459.199785 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxWy-0005hS-80; Thu, 01 Apr 2021 13:38:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104459.199785; Thu, 01 Apr 2021 13:38:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxWy-0005hL-4b; Thu, 01 Apr 2021 13:38:40 +0000
Received: by outflank-mailman (input) for mailman id 104459;
 Thu, 01 Apr 2021 13:38:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRxWx-0005gw-5G
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:38:39 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2b86e546-3146-44dc-87e6-bd7edd66feb3;
 Thu, 01 Apr 2021 13:38: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: 2b86e546-3146-44dc-87e6-bd7edd66feb3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617284318;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=RENu4VPkq7CZTY2uubkOwUponbB37CjwAPN2tWb3QPQ=;
  b=LOWTcd7HNSrnLbdC1+oJgrFjBT9DhyPnupmV+3nqZPIalpafGIyhC1A0
   Z+EU6A2ZNT2uxWEfFES5n/S/lkhZLjtqHty4a5uXRAbjslks/2aFPMQDr
   Lin1UKqlORPLnStGlwg90wPNWO9b4lfmzp0sQe40V6uxa+6wsHezcFAOk
   E=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: QD5jksNdSs0WP/dMFevs60ZrIP/RL8woQd2p9lshtz/hgXw5o3AXyMLBbZJuhOOLezLCzEabp6
 mhjSvGnpmi3w9yArycdmjLmq8/trrFIcjV7gjYZNGhUHs5GcsQKBfeYjI3IhyCRZFaSGIQygO9
 bHW8rgYRBGeNHezsbcwEAu1B6BwtnMuFZ7vU3G/e3goxgSUqP2csU0jBK2DgNtxe4cxieBnWvQ
 J3f0BWcMgdXhBri3Awzc0T/aHQ4EL/Zuzt9BC++lbsT+KXI9U6p6Gj0uKpbd/GnlW1iwYCEHAJ
 ec8=
X-SBRS: 5.1
X-MesageID: 40698206
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:q3kK/ah1vk8FH5Cauu/9cbBHOnBQXyl13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy4N5B9efdSPhv3alK5wn0Jv6z1TbakvD38N+9Y
 MlSahxD9XsEUN35PyR3CCUG8stqePpzImGnuHbpk0CcShLbOVa4x59GkKnFCRNNWt7LL4YML
 bZ2cZdvTqnfh0sH6OGL10IRfLKqdGOtL+OW29kOzcd5AODjSyl5dfBenD14j4kXzxC2rsk+2
 Te+jaJg5mLiP2n1gTak1ba8pU+orDc4+FeD8+BgNV9EESJti+UYu1aOoGqjXQOj8yErH0rl9
 TNpBlIBbUN11rhOlubjDGo9w3p0DMF42Lvx1mCkRLY0LLEbQN/MeVtr8Z0dQbY9loBsbhHod
 N29lPcjbV7J1fhmznw/NfBXR0CrDvFnVMS1dQ9olYadKl2Us4pkaUvuHl7Pb1FIQfBrKcgK+
 VqBNG03ocqTXqqK0r3k0Mq/MahRR0Ib2+7a3lHgOO5+R5Mkkt0ykMJrfZv4ksoxdYGR55I6/
 +sCNUSqJh+CssfbadKDOwcW8eACmvUXRLWMG6JSG6Xbp06Bw==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40698206"
From: George Dunlap <george.dunlap@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Paul Durrant <paul@xen.org>,
	"Ian Jackson" <ian.jackson@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH for-4.15 2/7] CHANGELOG.md: xl PCI configuration doc, xenstore MTU entries
Date: Thu, 1 Apr 2021 14:38:22 +0100
Message-ID: <20210401133827.362216-2-george.dunlap@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210401133827.362216-1-george.dunlap@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
---
CC: Paul Durrant <paul@xen.org>
CC: Ian Jackson <ian.jackson@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 CHANGELOG.md | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index f7ce6682b9..086a0e50d0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -15,6 +15,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - Switched MSR accesses to deny by default policy.
  - Intel Processor Trace support (Tech Preview)
  - Named PCI devices for xl/libxl
+ - Improved documentation for xl PCI configuration format
  - Support for zstd-compressed dom0 (x86) and domU kernels
  - Library improvements from NetBSD ports upstreamed
  - CI loop: Add Alpine Linux, Ubuntu Focal targets; drop CentOS 6
@@ -23,7 +24,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - x86: Allow domains to use AVX-VNNI instructions
  - Factored out HVM-specific shadow code, improving code clarity and reducing the size of PV-only hypervisor builds
  - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
-
+ - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
 
 ### Removed / support downgraded
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:38:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:38:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104460.199792 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxWy-0005iD-LB; Thu, 01 Apr 2021 13:38:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104460.199792; Thu, 01 Apr 2021 13:38:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxWy-0005hs-Ej; Thu, 01 Apr 2021 13:38:40 +0000
Received: by outflank-mailman (input) for mailman id 104460;
 Thu, 01 Apr 2021 13:38:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRxWx-0005gw-9M
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:38:39 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1ebeda8f-f861-421f-9bee-65818108e557;
 Thu, 01 Apr 2021 13:38: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: 1ebeda8f-f861-421f-9bee-65818108e557
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617284317;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=ELcf/BsHGsdjVKKgU0twdyS5n3PZCQDzd1s9Mf5xBZo=;
  b=YAb2Dp8zFe9QChW0VLhQ5V6kH9vTBhGrUPj/P/BU26ZEhbMf1yxDcM8l
   muP+dZiK7VkKYNl12pZT47JwR8ElKd6EtuHArE1z/9SqFeA9+xRvaL+oy
   eNkQlYPWh191tm9oCGajRSirulpxqtHN63CFIorRad7kwGZcTW83CZUEy
   Y=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: EByghpkyZ0qje9sG3P+qAgA3a8me0upou0kNG0fCwc2NpYHBoNrV7B1kQsPwVplUs0C739mSDe
 KkBtUjXcIOq2qLg0Nwh6H8ipZLnmyH/bVu/5X3uehQkO+ADxKnMBOqyE9oeZZ6tPhKSSaMzHOU
 TWwIJLVibcxGU6QSYRMyN6e1krwwSczqpymV97ziYvQuu7OJRPRxRoXVVpGjz7/ceVctALKT2R
 2TZegb90QAV3RPyIRz4YGGsEMnOJ95N6qW/6WmfrojzRkyGrHTn2Jxc/tQkE2DCOztalXtH0EB
 cP4=
X-SBRS: 5.1
X-MesageID: 40837413
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:gQR/Ca7JVoBHbaA1sgPXwADXdLJzesId70hD6mlaTxtJfsuE0/
 2/hfhz73DJoRsYRX1Io729EYaaR3e0z/5IyK0wGZvnYwX8omuvK+hZh7fK5zH7ASXx+qp8+M
 5bH5RWM9H7AVhkgcuS2mDReOoI+9Wf9bDtuOG29QYPcShRd6pi4w1lYzz7LmRKQmB9dPgEPa
 vZ39FGoSGhZGR/VKqGOkU=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40837413"
From: George Dunlap <george.dunlap@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Igor Druzhinin
	<igor.druzhinin@citrix.com>, Jan Beulich <jbeulich@suse.com>, Ian Jackson
	<ian.jackson@citrix.com>
Subject: [PATCH for-4.15 7/7] CHANGELOG.md: irq-max-guests
Date: Thu, 1 Apr 2021 14:38:27 +0100
Message-ID: <20210401133827.362216-7-george.dunlap@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210401133827.362216-1-george.dunlap@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
---
CC: Igor Druzhinin <igor.druzhinin@citrix.com>
CC: Jan Beulich <jbeulich@suse.com>
CC: Ian Jackson <ian.jackson@citrix.com>
---
 CHANGELOG.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9c272a0113..7237b0a020 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/)
  - Some additional affordances in various xl subcommands.
  - Added the following ARM errata: Cortex A53 #843419, Cortex A55 #1530923, Cortex A72 #853709, Cortex A73 #858921, Cortex A76 #1286807, Neoverse-N1 #1165522
  - On detecting a host crash, some debug key handlers can automatically triggered to aid in debugging
+ - Increase the maximum number of guests which can share a single IRQ from 7 to 16, and make this configurable with irq-max-guests
 
 ### Removed / support downgraded
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:38:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:38:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104462.199809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxX3-0005nt-Rt; Thu, 01 Apr 2021 13:38:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104462.199809; Thu, 01 Apr 2021 13: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 1lRxX3-0005nk-OS; Thu, 01 Apr 2021 13:38:45 +0000
Received: by outflank-mailman (input) for mailman id 104462;
 Thu, 01 Apr 2021 13:38:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRxX2-0005gw-3m
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:38:44 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3f4b8ddc-efa6-402f-9079-fdde9fc8c75e;
 Thu, 01 Apr 2021 13:38: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: 3f4b8ddc-efa6-402f-9079-fdde9fc8c75e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617284318;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=tb+mtbd8sswEGjjqgjwZtym2//EwdV/CLbEWHhvGtLk=;
  b=UlT7er/6/zqdZLP1tr6mNVVbAIwfZhgRKEBzzIrbfqsN7zxUolvuj51O
   6CZR+PoDFskzV6ONLnTcPBkzAEO1IidBiNHZ5kfJ6GoaackdFgrTD1X0l
   q842sIXiEOJpgfIRMqrtr9VURP+KDV3DY/VYDnY9XB/VfeDmXX94Hrf2+
   M=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: jSaamM3dsoXodOIIsnmIh+wSfAkf0Ja+qwWjNEiFEpVZT7CsQvjIHVVv8ejC69oBL7hanJigQE
 2KhDGmhnFusHJgdzuGAhYUhxtg2K/gUgIS5OwH+5oqv7WPpQyjD0dUoqreq5y5hussoB0PBtbk
 hm5R/jwU6Lh9q5RA/UF+Z82XJzffLCTkXkRhmNPoASChPlqkWPsmNMaKc/lWGEghP71n6D8T7W
 W/zuVoA6ahNd23Lj5Sj+7qQITyNaw06qxYTjdbncbdl+pU/0okQzWNeXfODxA/2PAdxLB7//tM
 Fyk=
X-SBRS: 5.1
X-MesageID: 40557943
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:cKqkoqHiA1fUPFGSpLqFRZTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76
 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYdNi+wFEpqSA5aQb8wE5
 SB7sRKzgDQBkg/RMK9G3UDQqz/vNXNjp3relorABQg5QmIg1qTmcLHOjKf2QoTVC4K/Kc6/Q
 H+4nHEz4iAk9X+8B/T0GfP849b8eGO9vJvDNGB4/JlUgnEpR2vYO1aKtq/lRAz5Nqi8VM71O
 TLyi1QRfhbz1P0UiWLrQD22w/muQxemEPK7VODm3PsrYjYaVsBerN8rLlUeBfY9EYs1esUuM
 kgvxP7xu9qJCjNkyjn69/DWwsCrDvRnVMYnfMOlHsaaIMCadZq3Pwi1XlIG5QNFj+S0vFALM
 BSCqjnlZRrWG+BY2uclmdix8HEZAVJIj62BmIGusCTzgFMmmF4w0Yy1KUk7wY93aN4ZJ9e6+
 veNKN00JlIU88NdKp4QNwMWM2tFwX2MF3xGVPXBW6iOLAMOnrLpZKyyLIp5NuycJhN6Jcpgp
 zOXH5RqGZaQTOhNeS+mLlwtjzdSmS0WjrgjutE4YJih7H6TL33dQWeVVEHiaKb0rYiK/yef8
 z2FINdAvflI2erM51OxRfCV55bLmRbeNEJu+w8R0mFrqvwW83Xn92eVMyWCKvmED4iVG+6KG
 AERiLPKMJJ6V3udWT/hDTXRnPxam3y9Z99C8Hhjq0u4blIErcJnhkeiFy/6M3OAyZFqLYKcE
 x3J66isq7TnxjzwU/4q0FSfjZNBEdc57vtF1lQoxURDk/yebEf//GWeWVY2mq7NgZyJvmmVz
 J3lhBSw+aaPpaQzSctB5aMKWSBlUYeo3qMUtM6lrCc49zmPrc1FIwvVqA0NQijLW01pS9a7E
 N4LCMUTE7WET3jzY+/ioYPOe3Zf95gxCGxIcBVrnrbnV6Gpd4mQ0YaWzLGa7/UvS8eAx5vwn
 Fh+a4Wh7SN3Ry1L3Ekveg+OFpQLFiMDKl+FwSDboVMkrXNcAV9JF36wwCyulUWQC7H5k8Sjm
 vuIWmxdevQClRQgHxez53n6Uh5bGmbYkJ2ZE1rqIEVLxW1hl9DlcuwIoaj2WqYbVUPhtsQNz
 zIehM+CAJjzdLf7m/epB+yUVEdgrk+NO3UC7ouN4zJ0nS2MYuSiOUtBPlP5qtoM9jor84GWe
 +SYBWuMTv9Eu8lsjbl/0oNCW1Rkj0JgPno0Brq4CyEx3Y5G+PVO0kjaLcBId2QhlKUDsqg4d
 Fct5YSsuSxOGmqNYLD5qHTcjJZKhTc5USxVPolrJhIvaQ08Jt/dqOrJgfg5TVi5lEZKsyxqW
 Y1BIJcy5rFMpV0f8MTdzlCl2BZ3+inHQ8OiEjOHuQ6fVsRlHfVMNOC3qrQpdMUczm8jTq1HW
 PazjZU8PjEVRaSzLI2C6o/JmJNdUg3gU4Sit+qRsn1CA+wcftE80f/GnihcKVFQKztI8Rckj
 9Kp/WJlfSQbSz2xUT5uiZ6OLtH9yKCTdmpCAyBXc5O/NrSAyXBvoKapOqyhizwUz21dgAxgp
 BEb1UZaoB7sQYZ5bdHmhSae+jQuUIqk1xX/DFhmBrM4+GdkRnmNHADFxbYjJVQVSRUKV6Sg6
 3+gLCl6Eg=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40557943"
From: George Dunlap <george.dunlap@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
	<ian.jackson@citrix.com>, Andrew Cooper <andrew.cooper3@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Roger Pau Monne <roger.pau@citrix.com>
Subject: [PATCH for-4.15 5/7] CHANGELOG.md: Various new entries, mostly x86
Date: Thu, 1 Apr 2021 14:38:25 +0100
Message-ID: <20210401133827.362216-5-george.dunlap@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210401133827.362216-1-george.dunlap@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

...Grouped mostly by submitter / maintainer

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
---
CC: Ian Jackson <ian.jackson@citrix.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Jan Beulich <jbeulich@suse.com>
CC: Roger Pau Monne <roger.pau@citrix.com>
---
 CHANGELOG.md | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index b3325a8371..2f26cd5c87 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,6 +17,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - Named PCI devices for xl/libxl
  - Improved documentation for xl PCI configuration format
  - Support for zstd-compressed dom0 (x86) and domU kernels
+ - EFI: Enable booting unified hypervisor/kernel/initrd/DT images
+ - Reduce ACPI verbosity by default
+ - Add ucode=allow-same option to test late microcode loading path
  - Library improvements from NetBSD ports upstreamed
  - CI loop: Add Alpine Linux, Ubuntu Focal targets; drop CentOS 6
  - CI loop: Add qemu-based dom0 / domU test for ARM
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:38:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:38:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104463.199821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxX8-0005sj-5w; Thu, 01 Apr 2021 13:38:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104463.199821; Thu, 01 Apr 2021 13: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 1lRxX8-0005sU-2B; Thu, 01 Apr 2021 13:38:50 +0000
Received: by outflank-mailman (input) for mailman id 104463;
 Thu, 01 Apr 2021 13:38:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRxX7-0005gw-3r
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:38:49 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1b028f1f-acda-4ee9-a953-5abbd8b840bb;
 Thu, 01 Apr 2021 13:38: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: 1b028f1f-acda-4ee9-a953-5abbd8b840bb
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617284319;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=YXv7m3eiV3hYcI7MMqbRpxWTnC+nXWuF664tG7aNhFw=;
  b=InjMt0I14wi8kYvcymGeiiHOJ/vtU9Isv3EuCCCl2pmhGt5XT4lb/6JZ
   QYrOF6CzXXp8DxnphFTEcPCOXLCEdebPG+qimTBpFMrN1ZFx7rA7ykPZX
   Dy6Saa0zostevP5s2Oy8UYLLyAkJPoVHQzlhqUk0Dnt8k5AxRf678GoWX
   Q=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: zQrNxEe9R7nv3DSPOkmYPcD4gnfVkNg4qTi3BIeO4ow5uzrHXZeFdzo+wBS4d3XMrtlGZXy5w1
 ghORQpqqy0qx/LdcS4Veq/CT0x9dDPBSUoVgE0Trx1Bi1soFUFp6BQKnz7vYeW4FcRM7K8bWL8
 w4Fki3Y3mRidef77b9XQl8NVxkktOekR8HiCzDZE+eIGlHZOHLRaoQFWHdLfk63QA+xmQBFOxS
 HSnu2dyfDiJU/J2sulHR20z5AVMlRyZJUZgufWaKvaWQxD84nxn4lKFb7jinNp1dSs3qBAcjZ/
 3vo=
X-SBRS: 5.1
X-MesageID: 40698208
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:5sYPEa9lZyM6dJaWQxRuk+Erdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qF/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v273Aodg1ybrEl0gERMHf4LmRTZC1rQaU0D4
 Cd4M0vnUvGRV0yYt6gDncIG8jvzue7967OWhINCx455ATmt1rBhILSKBSW0gwTVDlC294ZgA
 34ujf0+7m5tLWDwgLcvlW5071thNDjxtFfbfb87vQ9FzOEsGeVTbUkYZKulnQfoOaj6FEl+e
 O83CsIDoBIxF76Ok2wqRvp8QH83Dgp8G+K8y7nvVLT5fbXaRh/J81dhZ9IUhax0TtQgPhMlJ
 hl8kjcl51LAQjOlC7wjuK4Jy1Cpw6PjlcJ1csw5kYvKLc2WftqgqE0uH5xKtMmGhn37Yg2ed
 Mecf301bJtXn6xK0zCsnIH+q3VYl0DWi2ob2IlocKv3z1fjBlCvjcl7f1apHsG+Z4nIqM0nN
 jsA+BtnLFKeMcccbhwMucHWde2EWzAW3v3QRivHWg=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40698208"
From: George Dunlap <george.dunlap@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Olaf Hering <olaf@aepfle.de>,
	Ian Jackson <iwj@xenproject.org>
Subject: [PATCH for-4.15 1/7] CHANGELOG.md: Mention XEN_SCRIPT_DIR
Date: Thu, 1 Apr 2021 14:38:21 +0100
Message-ID: <20210401133827.362216-1-george.dunlap@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
---

CC: Olaf Hering <olaf@aepfle.de>
CC: Ian Jackson <iwj@xenproject.org>
---
 CHANGELOG.md | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8964bacf73..f7ce6682b9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -22,6 +22,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - CI loop: Add dom0less aarch64 smoke test
  - x86: Allow domains to use AVX-VNNI instructions
  - Factored out HVM-specific shadow code, improving code clarity and reducing the size of PV-only hypervisor builds
+ - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
+
 
 ### Removed / support downgraded
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:38:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:38:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104466.199833 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxXD-0005yq-GZ; Thu, 01 Apr 2021 13:38:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104466.199833; Thu, 01 Apr 2021 13:38:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxXD-0005yf-C7; Thu, 01 Apr 2021 13:38:55 +0000
Received: by outflank-mailman (input) for mailman id 104466;
 Thu, 01 Apr 2021 13:38:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRxXC-0005gw-3w
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:38:54 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c74d724e-f2a8-4655-b977-c97b4aea5a0b;
 Thu, 01 Apr 2021 13:38: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: c74d724e-f2a8-4655-b977-c97b4aea5a0b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617284319;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/nfKp65BUMpoLSwVcKTcwd3UvwPRuboxyMAbRkTKwjk=;
  b=LhpytAPG2jmsMhwYHhSbXlivxEN6+RqkmUngXvaKgU/8nfBuclkvQirJ
   owSwD1tfo2IRz99hZlNQ2HGRTB7Ff6tPblVnjDHIsSObGe8BiPscJau3N
   RHYTIl8eqTnz/T6JRq6mZpjK7nBn00BJQMCwUqSuOc18UAHZz+kNd+Dnm
   A=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: TR3DXpggjJQChW4s+fKNp6wATEYaDhKr4u8Bk4o3QNx/qyF3yZ9F/lYE/CrPPGu7IMWPyhPew2
 zMVzLo8YXcuFDL7MJ+JCV4UFhBxbgkKwaCLMl4DORwxfG7X11uFe7ccRcUmsRlJ8c3ADitW94i
 vqrxSBMfQGuBiBtz43PuLVFtIRoPbvF8MSzhoqF4gHWM2iMoJbrFWQtagBlv0qMu5z7dCCh8aM
 zCbjA+QcW1pRpDb9kqCi3Ty/NaaC9dStwpp4k/GZ+PzG3vjjdkfce7kGXcjEFG1Bk9b00MZlSP
 72M=
X-SBRS: 5.1
X-MesageID: 40698209
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:F17nQal7291yDsMUj+YNNieQD07pDfPfimdD5ilNYBxZY6Wkvu
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKMaVI3DYCDNvmy0IIZ+qbbz2jGIIVyZysdx94
 dFN5J/Btr5EERgga/BijWQPt48zLC8n5yAqvzZyx5WIz1CS6Yl1AthDxbeL0sefnglObMcNL
 6xovVKvCChf3N/VLXdOlAgU/LYr9PG0LLKCCR2ZCIP0wWFgTO25LOSKXHxsis2aD9Bzawv9m
 LIiWXCl8Cemsq21wPG0Cvr54lW8eGL9vJ4GMeOhsIJQw+c7jqAWYIJYdy/lQFwms6DwhIAkN
 7AoxAvVv4DlE/5TyWOjjbGnyXl2DYqwXf+xVGfmmuLm72GeBsKT/BvqKgcXhzF61cxnNwU6t
 M740up86B5IDmFvCPh68PGXxtn/3DE0UYKoKoooFF0Fa49AYUh1LA3zQduP7orWB/e0sQBFt
 JjCcnNjcwmDG+yXjTikUREhOC3Um9bJGb/fmEy/va7/hJxh35Dw04R1KUk7ws93aN4cZVC6u
 jeW54Y741mf4sTZaJ5Mu8LXdG6PGzLWQ7NK2KfOz3cZds6B04=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40698209"
From: George Dunlap <george.dunlap@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
	<ian.jackson@citrix.com>
Subject: [PATCH for-4.15 3/7] CHANGELOG.md: Some additional affordances in various xl subcommands
Date: Thu, 1 Apr 2021 14:38:23 +0100
Message-ID: <20210401133827.362216-3-george.dunlap@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210401133827.362216-1-george.dunlap@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@citrix.com>
---
CC: Ian Jackson <ian.jackson@citrix.com>
---
 CHANGELOG.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 086a0e50d0..a12dab1c33 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -25,6 +25,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - Factored out HVM-specific shadow code, improving code clarity and reducing the size of PV-only hypervisor builds
  - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
  - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
+ - Some additional affordances in various xl subcommands.
 
 ### Removed / support downgraded
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:39:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:39:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104469.199845 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxXI-00064n-RU; Thu, 01 Apr 2021 13:39:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104469.199845; Thu, 01 Apr 2021 13:39: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 1lRxXI-00064a-N6; Thu, 01 Apr 2021 13:39:00 +0000
Received: by outflank-mailman (input) for mailman id 104469;
 Thu, 01 Apr 2021 13:38:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRxXH-0005gw-47
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:38:59 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8e757902-a110-488d-a85f-50f8eca96c28;
 Thu, 01 Apr 2021 13:38: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: 8e757902-a110-488d-a85f-50f8eca96c28
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617284319;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=E7PWP01YlYArqfPdyR9XpVrgVVm/Kk33xKnYE1YhnsI=;
  b=Q69Sa4a3vVt1DgZj+aqqLbZDxa5iZ7emWaz0KePVvS65Yy6UKuyM8Yu5
   yINm6dyaOFimPuyUZPlpP/tG9h6eks+lar3jPG4nyqDvsXoilc0z2P/KA
   A5zO9mCzFX6tCYpjArsWK35KoXp3BWaLLlq42KmFI6zi/PnOh6EyicbRb
   c=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 2FbHTM9kD8m0dsEYumiLjx7uy99rlr8rMY73D0FWcKTP7Fp5VQNNdSZY8cNLMVkRCOxXfV6Gkh
 dv9vfn2x6dK7twJhhZ9N7bsXhkqmkfRK3Ld6GzDriSnRZ2Wm9sW+aj8zSjjWNm4iMDrGTB9Ohp
 StVbBnYllX4U8kGDAkm9Dzk8Ujt6pArz+XS2RBxndnrpiM+uCi6JFvVPI+erSDyHmrJjOAb8/v
 Qob6fMrOExVQxXgrVcfdIPj+VU4zwiixUcsAN7E8tTeGGOqNPb49Fsj8rUsPTRuPQd+lIOvZFz
 8mc=
X-SBRS: 5.1
X-MesageID: 40557944
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:DnbioK6q07ExB0gFygPXwWWEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbzqzOEtwWQVAGN4dHJ
 2T+sJIq1ObCAsqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+HLzGz2BACXzRThYoz6G
 StqX2F2oyPkdGejiXd2Wja8ohMlLLapOdrKcSQhqEuW03RoymyYoAJYczkgBkUp6WV5E8ugJ
 3wpX4bTr5OwlfwWk3wnhf3wQnn118Vmgzf4HuVm2Hqr8C8ZB9SMbs5uatjfhHU61UtsbhHuc
 ohtQLp1OsjMTr6kCvw/NTOXR1x/3DExUYKquIPk2dZFbIXdb45l/1uwGpuDJwCECjmgbpXdt
 VGMce03oc1TXqndXzD+kFgzNuwN05DZSuucwwpv8yY1CVuh3Zpz0cU79x3pAZwyLsND7ZD/O
 jKKaJuifVnSdIXd7t0AKM7TdKwEXGle2OCDEuiZXDcUI0XMXPErJD6pJ0z+eGRYZQNiL8/go
 7IXl90vXM7EnieR/Gm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uu9HImYRdPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFOUIp9cAXU6UqM6jEPyrisXrNNLoYJb9GzctXW3yRl
 EZWiLoGclG5ke3HlDihhz8XG7sZ1zf8Zp8HLOyxZlX9KE9cql39iQFg1Ww4c+GbRdYtLYtQU
 d4KLT71oO3zFPGuVrg3iFMAF5wH0xV6LLvXzdhvgkRKX75dr4FppG6cWBW132XGw9nQ6rtYU
 lijmUy3ZjyA42bxCgkBd7iGHmdlWEvqHWDSIpZvaGf+8H/eNcdAow9UKJ8USXHfiYF2DpCmS
 NmUkspV0XfHjThheGOl5oPHtzScNF6nUOMOs5bqXXWsG2GvsExTn4nXzqjOPTnwzoGdn5xvB
 lc4qUfiL2PlXKEMm0kmtk1N1VKdSCqGr5cNR+EY49Vg7jvXwl1QQ6x9HqnoiB2XlCv21QZh2
 TnIyHRXf3QGFJStkpV1bvQ/Epuen+QeF9xbX5GoZRwfF62yEpb4KuuXO6ewmGRYlwNzqUmPD
 bJbSA7Dyluy9q0vSTl0gqqJDED/NEDL+bdBLMsf/XvwXurMpSPjrxDNeRT5oxZONfntfIrXe
 qTdxSOFi7xD/ok1mWu1y8YERgxjENhveLj2RXj4mT94WU2BuDKJk96A54cONOR4gHfNr+1+a
 Q8qehwm+S+Mm/8MIHbjY7WaiNOMRPVryqdSfoypZVdoKI1s/9SEvDgIEz1/UAC+C97CsH+0H
 46auBcxpvqP4d0Zcwcey5D5DMS5Z+yBXpuljazO/M0eFEmsmTSMNyI6YfZsLZHODz0mCLAfX
 2ktxBH9/jLXyG/xacXJqI5L2NRclU94h1ZjZW/XryVLAWhbOdY+lWmdle7bb9GUaCAcI9g4y
 pS0pWtn+WNcTD/1x2VlTxnIrhW+2LiZc+pGgqDFapp9NO9UG78zpeC0YqWjD3tTyG8ZFldrY
 pZdVYIZsAGswIctuQMo2CPY52yhFkknVtY6SxmkVCo+rHO2hakIWh2dSvDgptXWjFPNGOvls
 qty5nB6EjA
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40557944"
From: George Dunlap <george.dunlap@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Juergen Gross <jgross@suse.com>,
	Jan Beulich <jbeulich@suse.com>, Ian Jackson <ian.jackson@citrix.com>
Subject: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly xenstore
Date: Thu, 1 Apr 2021 14:38:26 +0100
Message-ID: <20210401133827.362216-6-george.dunlap@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210401133827.362216-1-george.dunlap@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

...grouped by submitters / maintainers

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
---
CC: Juergen Gross <jgross@suse.com>
CC: Jan Beulich <jbeulich@suse.com>
CC: Ian Jackson <ian.jackson@citrix.com>
---
 CHANGELOG.md | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2f26cd5c87..9c272a0113 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -28,8 +28,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - Factored out HVM-specific shadow code, improving code clarity and reducing the size of PV-only hypervisor builds
  - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
  - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
+ - Fix permissions for watches on @introduceDomain and @releaseDomain: By default, only privileged domains can set watches; but specific domains can be given permission in order to allow disaggregation.
+ - xenstore can now be live-updated on a running system.
  - Some additional affordances in various xl subcommands.
  - Added the following ARM errata: Cortex A53 #843419, Cortex A55 #1530923, Cortex A72 #853709, Cortex A73 #858921, Cortex A76 #1286807, Neoverse-N1 #1165522
+ - On detecting a host crash, some debug key handlers can automatically triggered to aid in debugging
 
 ### Removed / support downgraded
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:39:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:39:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104472.199857 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxXO-0006AT-4Y; Thu, 01 Apr 2021 13:39:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104472.199857; Thu, 01 Apr 2021 13:39: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 1lRxXO-0006AK-19; Thu, 01 Apr 2021 13:39:06 +0000
Received: by outflank-mailman (input) for mailman id 104472;
 Thu, 01 Apr 2021 13:39:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRxXM-0005gw-4G
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:39:04 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 74176d82-3484-4845-a7aa-d68fb9f381eb;
 Thu, 01 Apr 2021 13:38: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: 74176d82-3484-4845-a7aa-d68fb9f381eb
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617284320;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=9Cwda7hvpLKLiOQOMp9r6kfCTOsPTlqzOoOijVd/CF0=;
  b=B11ehphShE4o05dLLS8u2gojF28Y3e4T1PuLZs91UmV/nT/Vnwd3dYrX
   /HoxOL4BFDSCgdj2IGSMbJoD6apXUSo1r+nOQ/L7+5pz/NVzmqID4//T1
   H9n1BN0f+Kw659Y9jiZBnX92yetVun9frBSVnQME3oMjI7IRwS4s+mhms
   s=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 2gFl06xf/DpDln0vux+wr1cKad4T7roFUaDLtEu+RG8dauZt8CqKby0tz5+BoqGPsWyX0kcQ3C
 mjwsweqFqrH3yuAvq90tMZR0WgF8GoGRlG+63AzjL09qHO6y3Ki9kyWTeH8/fDiJ3DsIEs3B0A
 vzg1OB3GOnbf5mVYIo9yCFyXGf/yqwVyAo+wqxaq/I3PO8dvcQL20BAxgxr74ZmrBFZNrFXVUz
 cBLi6bsip/2xbeSzpoLBFLMHE+QAUBiiy7pGUyChKb/LsIWKDg9q4NwLkBcaiWtUw5djHVfRi0
 cgU=
X-SBRS: 5.1
X-MesageID: 40698211
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:bH7E96h9uW3o+1PC2DFnize3nHBQXyl13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy4N5B9efdSPhv3alK5wn0Jv6z1TbakvD38N+9Y
 MlSahxD9XsEUN35PyR3CCUG8stqePpzImGnuHbpk0CcShLbOVa4x59GkKnFCRNNWt7LL4YML
 bZ2cZdvTqnfh0sH6OGL10IRfLKqdGOtL+OW29kOzcd5AODjSyl5dfBenD14j4kXzxC2rsk+2
 Te+jaJg5mLiP2n1gTak1ba8pU+orDc4+FeD8+BgNV9EESJti+UYu1aOoGqjXQOj8yErH0rl9
 TNpBlIBbUN11rhOlubjDGo9w3p0DMF42Lvx1mCkRLY0LLEbQN/MeVtr8Z0dQbY9loBsbhHod
 N29lPcjbV7J1fhmznw/NfBXR0CrDvFnVMS1dQ9olYadKl2Us4pkaUvuHl7Pb1FIQfBrKcgK+
 VqBNG03ocqTXqqK0r3k0Mq/MahRR0Ib2+7a3lHgOO5+R5Mkkt0ykMJrfZv4ksoxdYGR55I6/
 +sCNUSqJh+CssfbadKDOwcW8eACmvUXRLWMG6JSG6Xbp06Bw==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40698211"
From: George Dunlap <george.dunlap@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
	<ian.jackson@citrix.com>, Stefano Stabellini <sstabellini@kernel.org>,
	"Julien Grall" <julien@xen.org>
Subject: [PATCH for-4.15 4/7] CHANGELOG.md: Mention various ARM errata
Date: Thu, 1 Apr 2021 14:38:24 +0100
Message-ID: <20210401133827.362216-4-george.dunlap@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210401133827.362216-1-george.dunlap@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
---
CC: Ian Jackson <ian.jackson@citrix.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>
---
 CHANGELOG.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index a12dab1c33..b3325a8371 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -26,6 +26,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
  - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
  - Some additional affordances in various xl subcommands.
+ - Added the following ARM errata: Cortex A53 #843419, Cortex A55 #1530923, Cortex A72 #853709, Cortex A73 #858921, Cortex A76 #1286807, Neoverse-N1 #1165522
 
 ### Removed / support downgraded
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:43:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:43:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104486.199869 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxbT-0007L4-SD; Thu, 01 Apr 2021 13:43:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104486.199869; Thu, 01 Apr 2021 13: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 1lRxbT-0007Kx-Oy; Thu, 01 Apr 2021 13:43:19 +0000
Received: by outflank-mailman (input) for mailman id 104486;
 Thu, 01 Apr 2021 13:43:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRxbS-0007Ks-AG
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:43:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8411d6d6-b774-4778-a803-b2d8168943f2;
 Thu, 01 Apr 2021 13:43:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D5F38AF23;
 Thu,  1 Apr 2021 13:43: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: 8411d6d6-b774-4778-a803-b2d8168943f2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617284597; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=KrgYsx1UP6iZuNfaU2C4DpL8Uvgwht3nbDd3oOYHCZk=;
	b=R0nfvDDx3MsC+2xnyhgScJVGsQ+wFaKMUepGsMk98XDnQW/nkyCLoVwv1mNkbxNJXpkNtL
	3vMPn/RPOl3XtJDUQjfJnGYldwsq8QDCxfd8uXba4oQrj6YiOGTAySV9jxUFpqnGBCWQIV
	tqcmP3IpFKIsBKvk+UlzupZb7bIO9TU=
Subject: Re: [PATCH 00/23] further population of xen/lib/
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <27916fa0-9ebd-a49a-bbb9-1ef47c2b5bf6@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <4f745d03-baa8-e9e6-692c-f9c9f401b766@suse.com>
Date: Thu, 1 Apr 2021 15:43:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <27916fa0-9ebd-a49a-bbb9-1ef47c2b5bf6@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 13:54, Julien Grall wrote:
> On 01/04/2021 11:14, Jan Beulich wrote:
>> This is to dissolve / move xen/common/lib.c and xen/common/string.c.
>> One benefit of moving these functions into an archive is that we can
>> drop some of the related __HAVE_ARCH_* #define-s: By living in an
>> archive, the per-arch functions will preempt any loading of the
>> respective functions (objects) from the archive. (Down the road we
>> may want to move the per-arch functions into archives as well, at
>> which point the per-arch archive(s) would need to be specified ahead
>> of the common one(s) to the linker.)
> 
> While I think it is a good idea to move code in xen/lib, I am not 
> convinced that having a single function per file is that beneficial.
> 
> Do you have numbers showing how much Xen will shrink after this series?

In the default build, from all I was able to tell, there's one function
that's unused (strspn(), as mentioned in the respective patch description).
I don't think I've been claiming any space savings here, though, so I
wonder why you make this a criteria at all. The functions being one per
CU is such that they can be individually overridden by an arch, without
pulling in dead code.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:45:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:45:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104490.199880 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxdL-0007Tw-8O; Thu, 01 Apr 2021 13:45:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104490.199880; Thu, 01 Apr 2021 13:45:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxdL-0007Tp-5L; Thu, 01 Apr 2021 13:45:15 +0000
Received: by outflank-mailman (input) for mailman id 104490;
 Thu, 01 Apr 2021 13:45:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRxdJ-0007Te-FQ
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:45:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ba5cc7f9-de0e-4828-9aea-da80d81bc17d;
 Thu, 01 Apr 2021 13:45:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9C5C0AF23;
 Thu,  1 Apr 2021 13:45: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: ba5cc7f9-de0e-4828-9aea-da80d81bc17d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617284711; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=zi1iTupuL2Ht8KEZSjEM8o0HXNdVSkE57LdTRo3luNs=;
	b=Xx2nRWuP2giTPbGgg7FP823UWZakdk6IncdGxCOUL0u5RdTMWClKYBfGR/Az7Ctb69IoQG
	1kxfr+EqDa8MZ5VN0huNZlwR7YJYjMP0T49wYhGR0/Xt92P2xnhxT4Iea6vYDOMsnL1TMA
	lUMCLrw/UnCmpsAmODuJXptAzqORBV8=
Subject: Re: [PATCH] x86/hvm: Fix double free from vlapic_init() early error
 path
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210331133125.7072-1-andrew.cooper3@citrix.com>
 <95d8688b-2e54-ae02-09ce-45203959e08a@suse.com>
 <ac94721d-1741-5523-e70d-1eac15c23603@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d4d0df58-58a3-b21d-db5f-4895a36bb917@suse.com>
Date: Thu, 1 Apr 2021 15:45:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <ac94721d-1741-5523-e70d-1eac15c23603@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 15:20, Andrew Cooper wrote:
> On 31/03/2021 15:03, Jan Beulich wrote:
>> On 31.03.2021 15:31, Andrew Cooper wrote:
>>> vlapic_init()'s caller calls vlapic_destroy() on error.  Therefore, the error
>>> path from __map_domain_page_global() failing would doubly free
>>> vlapic->regs_page.
>> I'm having difficulty seeing this. What I find at present is
>>
>>     rc = vlapic_init(v);
>>     if ( rc != 0 ) /* teardown: vlapic_destroy */
>>         goto fail2;
>>
>> and then
>>
>>  fail3:
>>     vlapic_destroy(v);
>>  fail2:
>>
>> Am I missing some important aspect?
> 
> No - I'm blind.  (although I do blame the code comment for being
> actively misleading.)
> 
> I retract the patch at this point.  It needs to be part of a bigger
> series making changes like this consistently across the callers.
> 
>>> Rework vlapic_destroy() to be properly idempotent, introducing the necessary
>>> UNMAP_DOMAIN_PAGE_GLOBAL() and FREE_DOMHEAP_PAGE() wrappers.
>>>
>>> Rearrange vlapic_init() to group all trivial initialisation, and leave all
>>> cleanup to the caller, in line with our longer term plans.
>> Cleanup functions becoming idempotent is what I understand is the
>> longer term plan. I didn't think this necessarily included leaving
>> cleanup after failure in a function to it caller(s).
> 
> That's literally the point of the exercise.
> 
>>  At least in the
>> general case I think it would be quite a bit better if functions
>> cleaned up after themselves - perhaps (using the example here) by
>> vlapic_init() calling vlapic_destroy() in such a case.
> 
> That pattern is the cause of code duplication (not a problem per say),
> and many bugs (the problem needing solving) caused by the duplicated
> logic not being equivalent.
> 
> We've got the start of the top-level pattern in progress, with
> {domain,vcpu}_create() calling {d,v}_teardown() then {d,v}_destroy() for
> errors.

Hmm, in which case you mean to shift the responsibility not to "the
caller" (many instances) but "the top level caller" (a single
instance)?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:50:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:50:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104493.199893 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxii-0008Lg-TU; Thu, 01 Apr 2021 13:50:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104493.199893; Thu, 01 Apr 2021 13: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 1lRxii-0008LT-QG; Thu, 01 Apr 2021 13:50:48 +0000
Received: by outflank-mailman (input) for mailman id 104493;
 Thu, 01 Apr 2021 13:50:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRxih-0008LM-OJ
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:50:47 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e40da771-d78a-4ad9-ae9c-2453c5c395c6;
 Thu, 01 Apr 2021 13:50: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: e40da771-d78a-4ad9-ae9c-2453c5c395c6
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617285046;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=KOhBR+TwmHONKP8NUKnlbDgNAxDW7eUvuXoXcKdhAdU=;
  b=IOAS6hji6Qch0kWYXEFeskyJeYlPcx9QFv/N5bXiS5zdlJyauwRig3e5
   HnJNvzmerqqnMkoZDCeVmceOBjLPphdAw9aRXVFfwLRCll1nhUNzmplLG
   2KRU5sVdJ/GTFiiC5zRYEW+W62yPw42xJ+coCOP2bOFqJCXgW0hw0xBE9
   w=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: FIuuEByxvXXqzSTHx6zWX5n3C1J+XpSEZUJbsuwMN3BN43c+JZnDNk5et+/i2M5lB0U6qT5X6T
 VMl8/pTotN7LkmYBVsvnFXTJOp3hykT0R69DcpFuhK3uxmxaVRXpLYB51h7A6XR9eeu11I2UGa
 MCeT9LB48wnJZu0MJjzW7kn39ERik03MxDNY1Y7U5QLqA5lOA2vaJXozYJrXYkL/nYrEp8apMs
 Sq9Q4ktRlDr21IHpSX+zkxdtcJlFiyBObo8nG+8NFIgkZo5D5/+wt5tppsT0aOKLKhxT8SteZu
 4Xc=
X-SBRS: 5.2
X-MesageID: 41077323
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:c3prV6EocDe/9joJpLqFOpHXdLJzesId70hD6mlYVQFVfsuEl8
 qngfQc0lvOhCwMXWw78OrsBICrSxrnlaJdy48XILukQU3aqHKlRbsSibfK7h/BP2nF9uBb3b
 p9aKQWMrfNJHVzkMqS2maFOvk6xt3vys6VrMP/61socg1wcaFn6G5Ce2OmO2l7XhNPC5Z8NL
 f03LslmxOadX4abtu2CxA+NoCum/TxmI/7ehlDPhY76WC15g+A0qLwEBSTw34lIlFy6IolmF
 KlryXJop+Nntv+4R/a2m/V4f1t6abc4+oGPuOgoIw4Lj3tjyyheYhuXaaT1QpF3N2H2RIRv/
 Tn5zsmIsRv+1PdF1vF3ifF6k3b/xsFr1/k1FOCjnPoraXCNUwHIvsEv611WF/9ySMbzbZB+Z
 MO5U21nd5rKCmFuyLH693BR3hR5zGJiEtnq8E/pThiS4cEAYUhy7A3zQduP7orOjn104wjGP
 kGNrCn2N9mNWmXaH3UpQBUsaWRd0V2Gh+HR34LsdCO3w5Xm2hkz1AZyNZ3pAZ5yK4A
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="41077323"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fu4BJv4d/hweqghaY+7fAQSPqlyP3yToD9n+CpB68TeHDi8VjUONzQhrpaKAa2XNxg2dVwI2CH4MnLZ7Bl/Du+zu+lc9kvuOhicFMvICXNYrtoWMQOiS2fwACIPmxqlGuUBt9HU/50UklLpocSrJuH43ZR8xK3gRHMoMESbwoix8zi/9KGWpORbYAjUhqaTFNRdCiO/pjJGVpYRXpc+Nr5BIHMZG4dMHYw1fFSx3M/P4vttqaHPBj0NOb7tuY8Qy7EMKO6nnaZ9PsnshbMOFvvzLJafbUVm3CRyLb6CPwglakpmcrEZ8rhckJEPKQ6tcVk9r1aPPvU2LmmTtI9Ln0g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7zwZqYz71LYljQ/uFikr8FzWhvV4VF3i5ow+RwmBpf0=;
 b=EYDHclIJbNKRwpNDaYlvpZ2Y/2T38/amvEDFYPa+vjdl+Uhp45hoV0ERaIGmFQH9Yt55uo3LRB7+xuzpDKTXSMIbNhyN3mHBGE68y/7zQuzJOfeJLiA6B/GJD+J+QtERYOYgA2s+qd97LsOrGPLjaiu5hAGKsfRrM+ySj6CM0GdVK//HUEUXwDNQ2ZwKeEqG1v0kBYJ8iHndpALNDxd0tmBUiM6PsRRUrKZDH8ueWsw5FOB3B2tzfym0IgWQijteWdGupoUxGLVmfw9Y9pVtB4mJJW7jb2MYA4eq0R4+lIwtG1uawsC49GEJwT6fxc7hhe2soQXMeOLHmN2hFCVUGQ==
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=7zwZqYz71LYljQ/uFikr8FzWhvV4VF3i5ow+RwmBpf0=;
 b=ufu+aboN958pMtMo3Srb7LNFIY7vKjqaIRifl5ExtQHSHTKFUyh1MaFYsCYKkv7zT92CohiKlnKfpJtHbcOgbgVWijDFNEQUH45OiEU0jWgKxNyoFoYGbzF1WamAnIAni8j0NqCkNYy44TG0iH/7YmUKXMA8bnbST8y+uNqedmg=
Subject: Re: [PATCH] x86/hvm: Fix double free from vlapic_init() early error
 path
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210331133125.7072-1-andrew.cooper3@citrix.com>
 <95d8688b-2e54-ae02-09ce-45203959e08a@suse.com>
 <ac94721d-1741-5523-e70d-1eac15c23603@citrix.com>
 <d4d0df58-58a3-b21d-db5f-4895a36bb917@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <defcd279-6ed5-f086-51c3-321c8b90ce3c@citrix.com>
Date: Thu, 1 Apr 2021 14:50:36 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <d4d0df58-58a3-b21d-db5f-4895a36bb917@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0028.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:151::15) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 27df3d95-37f7-409a-570d-08d8f51523f3
X-MS-TrafficTypeDiagnostic: BN3PR03MB2132:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN3PR03MB21324E1B5FBE5A20B6916CDDBA7B9@BN3PR03MB2132.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: TYla9HZ0Pc7n5EUT7IKFyXAqKfwvzeVN8vphDEr0jfBV5aTIBCBAWbUSEw8ndgnN/pN0UQ5a+f6aZ2oE2itYD9RIuKzluv1YLEX4QogKH9yeAbhBxopzsgsWfktg1rvIGQ1i+aWHEVNrv65Z38XBBZgsrMu9lqsHQ3sMsrtKinFRMzUHuFyCMoQgQYCKU7jo4oJMrbLoT96aG+MJ+RKc+PI495YIRquKC8QpTZ3BlPW8RFBLxBfjrxcG9ja7CSj6jdp5qRyhGgdzx1JIqBnPjEPU8tzikm9B+SNMnCxCGsbmP5PPObPi0Fg3JE4qNYoVsE2r4Bg0qRKO3adxdqnnhAJ11jjfcn1X2ny+xuJ7XbO3U2i1+OXg7kfiCxtHiHKTSTdQbAMLEGQgRp3mtDZCX1375Dy3c2dRNoouLuembTOBMMnznykFhib6YeotCwUI2XWh6tMxst4Z+C1NaH6xMvawUyvHz1zdAocmhP0X8rGqVX8rd25MDnncAoTAKL4ghsL2EgoTRGQX7UXWvRIwYXRRg19CrvKrbHWY/jcYdaC1zgvlpRan1pZfVdn9+yLp9A5o/72ezYLRTvq2FJtin22peVwy+gaxDJacYCpbfOBm45P2skTtuMb14rTVVr8G2CWCs/3hx3U6jlKvGobIip+eLgObktFU3pwTe/o2Ut6O4vwJZqlenNlSY9lLbKL5JMYuN+0/Rz0EnNqBHzahBxr/qGIP4TP+BUcaLPrReOI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(136003)(366004)(39860400002)(346002)(26005)(16576012)(36756003)(4326008)(54906003)(2906002)(5660300002)(16526019)(186003)(2616005)(316002)(956004)(6666004)(6486002)(478600001)(83380400001)(86362001)(8676002)(38100700001)(31696002)(6916009)(66556008)(66476007)(66946007)(8936002)(31686004)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?8JyVZNot22ys2mI0zDo0vOY94yrb/ljNzXtoYP/?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 27df3d95-37f7-409a-570d-08d8f51523f3
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 13:50:42.0752
 (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: kKOfuio1+nMOxbZQ1o64EpnBZvqhu42eJG9zYxXhSwPOV8rVPbAmvZPeK6Lv1U10nzj51m0O0IV5yQy8xyfaUMRS1HfBVU+ulNXJz5HF/kQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2132
X-OriginatorOrg: citrix.com

On 01/04/2021 14:45, Jan Beulich wrote:
> On 01.04.2021 15:20, Andrew Cooper wrote:
>> On 31/03/2021 15:03, Jan Beulich wrote:
>>> On 31.03.2021 15:31, Andrew Cooper wrote:
>>>> vlapic_init()'s caller calls vlapic_destroy() on error.  Therefore, the error
>>>> path from __map_domain_page_global() failing would doubly free
>>>> vlapic->regs_page.
>>> I'm having difficulty seeing this. What I find at present is
>>>
>>>     rc = vlapic_init(v);
>>>     if ( rc != 0 ) /* teardown: vlapic_destroy */
>>>         goto fail2;
>>>
>>> and then
>>>
>>>  fail3:
>>>     vlapic_destroy(v);
>>>  fail2:
>>>
>>> Am I missing some important aspect?
>> No - I'm blind.  (although I do blame the code comment for being
>> actively misleading.)
>>
>> I retract the patch at this point.  It needs to be part of a bigger
>> series making changes like this consistently across the callers.
>>
>>>> Rework vlapic_destroy() to be properly idempotent, introducing the necessary
>>>> UNMAP_DOMAIN_PAGE_GLOBAL() and FREE_DOMHEAP_PAGE() wrappers.
>>>>
>>>> Rearrange vlapic_init() to group all trivial initialisation, and leave all
>>>> cleanup to the caller, in line with our longer term plans.
>>> Cleanup functions becoming idempotent is what I understand is the
>>> longer term plan. I didn't think this necessarily included leaving
>>> cleanup after failure in a function to it caller(s).
>> That's literally the point of the exercise.
>>
>>>  At least in the
>>> general case I think it would be quite a bit better if functions
>>> cleaned up after themselves - perhaps (using the example here) by
>>> vlapic_init() calling vlapic_destroy() in such a case.
>> That pattern is the cause of code duplication (not a problem per say),
>> and many bugs (the problem needing solving) caused by the duplicated
>> logic not being equivalent.
>>
>> We've got the start of the top-level pattern in progress, with
>> {domain,vcpu}_create() calling {d,v}_teardown() then {d,v}_destroy() for
>> errors.
> Hmm, in which case you mean to shift the responsibility not to "the
> caller" (many instances) but "the top level caller" (a single
> instance)?

Yes, but the route to managing that needs to move the responsibility up
one level at a time for us not to break things.

i.e. we'd next want to make {pv,hvm}_*_create/initialise() call the
appropriate {pv,hvm}_*_destroy() covering the entire sub-call-tree.

Moving the responsibility across the arch_{d,v}_*() boundaries in
particular needs careful coordination.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:51:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:51:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104495.199905 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxj7-0008Sk-6E; Thu, 01 Apr 2021 13:51:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104495.199905; Thu, 01 Apr 2021 13: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 1lRxj7-0008Sc-37; Thu, 01 Apr 2021 13:51:13 +0000
Received: by outflank-mailman (input) for mailman id 104495;
 Thu, 01 Apr 2021 13:51:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRxj4-0008SP-V6
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:51:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1052f36f-ff96-451d-9cef-c8c195c899cb;
 Thu, 01 Apr 2021 13:51:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5612EAF23;
 Thu,  1 Apr 2021 13:51: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: 1052f36f-ff96-451d-9cef-c8c195c899cb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617285069; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Fi8NRkLY2Xl21wSHVt+bFfZAgzXGbvhBo/c7Ah+W9Qc=;
	b=iqIRxM9FnyjkHG49s9M2j24tBxnPIIXOZJEumTejx5BnR1qcPgFnBFYcoM+6mKtOgRM1SD
	+a8VBpXolZKFTXMEC2/hNkLQpDo1NN11ZaDjpqLw3bxoK1M0AVV90mWFrdC86XFSbj10Un
	1rfE6Lx227RcAjWdAgICAbsmjG6assQ=
Subject: Re: [PATCH 2/8] x86/EFI: sections may not live at VA 0 in PE binaries
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
 <dae6b91d-e8d1-6d7a-514a-00ec8d201843@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a558450d-9426-079f-dce9-1bbb7e22a1e3@suse.com>
Date: Thu, 1 Apr 2021 15:51:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <dae6b91d-e8d1-6d7a-514a-00ec8d201843@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 14:01, Andrew Cooper wrote:
> On 01/04/2021 10:44, Jan Beulich wrote:
>> PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
>> least 2.36 would silently truncate the (negative) difference when a
>> section is placed below the image base. Such sections would also be
>> wrongly placed ahead of all "normal" ones. Since, for the time being,
>> we build xen.efi with --strip-debug anyway, .stab* can't appear. And
>> .comment has an entry in /DISCARD/ already anyway in the EFI case.
>>
>> Because of their unclear origin, keep the directives for the ELF case
>> though.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> It's certainly odd that we have stabs section entries in the script, but
>> no Dwarf ones.
> 
> Its not odd in the slightest, given the heritage and lack of anyone
> touching the linker file unless something is broken.

Heritage? Was stabs debug info ever used in any build of Xen?

> We've got dwarf symbols in xen-syms, have we not?

Yes, and that's why I mention the oddity: We have Dwarf debug info (and
hence .debug_* sections) in xen-syms without mentioning them in the
script, and we don't have stabs debug info in xen-syms yet we mention
the sections.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:54:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:54:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104499.199917 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxm7-0000Be-L2; Thu, 01 Apr 2021 13:54:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104499.199917; Thu, 01 Apr 2021 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 1lRxm7-0000BX-Hj; Thu, 01 Apr 2021 13:54:19 +0000
Received: by outflank-mailman (input) for mailman id 104499;
 Thu, 01 Apr 2021 13:54:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=w5Bd=I6=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lRxm6-0000BS-JQ
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:54:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 50fd7d08-69a2-40f9-a7ff-da202a5de55d;
 Thu, 01 Apr 2021 13:54:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B3899B032;
 Thu,  1 Apr 2021 13:54: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: 50fd7d08-69a2-40f9-a7ff-da202a5de55d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617285256; 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=VMkDfyaXT3Qf+q9KsREN8LbjROKtMTKr0L1BcKRLbCQ=;
	b=DmwuQYiqYKz/GZs4tUCs7WtDBGLEO9fH3Iscn3zpv2+JtDdWIx0nbb9X/Dw1uq3YJtQKDY
	0nFouf7R0brZQadDb0wZiJ7RjPZqVA7OdnSZOrDbDbrnMNQpa8BhNJ0e1lk6JyMZHgCJ/9
	kUGH0S7J3QxHa0h3MlWB4A2ewlPLY5o=
Subject: Re: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly
 xenstore
To: George Dunlap <george.dunlap@citrix.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, Ian Jackson <ian.jackson@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-6-george.dunlap@citrix.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <0129aa3f-11fb-e0b2-67ce-adc123e2e570@suse.com>
Date: Thu, 1 Apr 2021 15:54:15 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210401133827.362216-6-george.dunlap@citrix.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="txtaXjZtXwK228Hfcsao6lMM05R6M98RA"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--txtaXjZtXwK228Hfcsao6lMM05R6M98RA
Content-Type: multipart/mixed; boundary="2AoFY3WGoMHVLNb07D1AI89dJZ1BS3HzO";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: George Dunlap <george.dunlap@citrix.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, Ian Jackson <ian.jackson@citrix.com>
Message-ID: <0129aa3f-11fb-e0b2-67ce-adc123e2e570@suse.com>
Subject: Re: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly
 xenstore
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-6-george.dunlap@citrix.com>
In-Reply-To: <20210401133827.362216-6-george.dunlap@citrix.com>

--2AoFY3WGoMHVLNb07D1AI89dJZ1BS3HzO
Content-Type: multipart/mixed;
 boundary="------------11319C3BF0F1F4AAADE159BD"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------11319C3BF0F1F4AAADE159BD
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 01.04.21 15:38, George Dunlap wrote:
> ...grouped by submitters / maintainers
>=20
> Signed-off-by: George Dunlap <george.dunlap@citrix.com>

Reviewed-by: Juergen Gross <jgross@suse.com>


Juergen

--------------11319C3BF0F1F4AAADE159BD
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------11319C3BF0F1F4AAADE159BD--

--2AoFY3WGoMHVLNb07D1AI89dJZ1BS3HzO--

--txtaXjZtXwK228Hfcsao6lMM05R6M98RA
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmBl0IcFAwAAAAAACgkQsN6d1ii/Ey8c
TAf/RjgETuP1fgwTCPi5deAALSBPtaRKKskwhoJsP0f3msXrcFDU2oe8EAMS0z+VQ7H6LUYEp3L9
6oM68ek/Qp2DTiT/OmuJJHgn05uxfgRKyLjSBmBLmx9vZl55959GnUG2e0rdh0FkJdipqXdGSLAG
JYSNYgM91QvdkQFDxc5GiuxFEhwHJF6WPVb3J5Psro5Dm20uUCYMk7RVLuQmFz5qw590gP0UOMsu
DHxKG1oRvDyktIQdggwBQsHNyImCrYqv+2LIf0rP8zru6MHFBNsFt5VCm7XNgQEC1tYG4qWEqxJL
F39xK1b0a1eYr/Yi5LS49gwpMI6vRXlbc9ca6nvmzw==
=23e7
-----END PGP SIGNATURE-----

--txtaXjZtXwK228Hfcsao6lMM05R6M98RA--


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 13:56:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 13:56:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104504.199929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxoW-0000MF-6n; Thu, 01 Apr 2021 13:56:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104504.199929; Thu, 01 Apr 2021 13:56:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxoW-0000M8-3P; Thu, 01 Apr 2021 13:56:48 +0000
Received: by outflank-mailman (input) for mailman id 104504;
 Thu, 01 Apr 2021 13:56:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRxoV-0000M3-0V
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 13:56:47 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 79ab37f0-2baf-4b84-b319-adb9cf9b024c;
 Thu, 01 Apr 2021 13:56: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: 79ab37f0-2baf-4b84-b319-adb9cf9b024c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617285405;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Ppq0oYnJWuRofMlk4/okEP9xt7+iPhYUXOxpxccoH7I=;
  b=ib5oMsaW7SQRtOeSmsH84fUnqbyC9MoQGWVRe3klgcoNIftDnMLteR/W
   mhWmiwXH/M0XPBKFdmWZT6aUcEtflZB5rwFU+hP8jSIMazQ4T7SZLknVs
   pFJlCnnR2tLW7KNr+KOS7GKfcCay2DzPJp+25eW1E6+hvNfLZqynrNybe
   8=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 7JS8cJrRJ22H9cNL9IYCiec/zuCz66QRiHfo5/O79ZfNRu/0g6D4Ufz2m56NlLLqr91MIL04WN
 knCbw827tcywRaztZD5IlpWTeh8lROIeg6ztWp2nPB+JTaDb5TGUTsJeyBpf3ApZ1CfPYwrkmj
 Byfgmw0Xhk94nG7tCc+8NJLr6mSBHFw1JXPWrO9WWJEggVuM/bs1lquqczV42KAH/AWt5Ki6XA
 lk2/2/lWq4Ojn0x9bAf1tEXkPAgZGnXbb+mLkp8EgnY9KydbR/3Q3107q8ZM5eKsCLN3K1cQ58
 jlg=
X-SBRS: 5.2
X-MesageID: 42152682
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:hVKiUq+jb9UX0jyIBNZuk+FZcL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUfD38Zn/+
 Nbf6B6YeeaMXFTh8z3+RT9Nt4mzsWO/qzAv5an815GSwZ2Z6Z8qyJwDQiGGkN7LTM2fqYRPp
 ya+8ZBun6caW0aB/7LTEUtcsrig5nwlJzgaQMbHBJP0mWzpB6h9bKSKWn94j4wSDVKqI1CzU
 HklEjD6ryno7WHzHbnphbuxrB3vPek9ddZHsyLjaEuW3jRoyKlfp5oVbHHnB1dmpDJ1H8QnN
 PBowgtMq1Ighu/EF2dmhfj1xLt1zwj8RbZuDmlqEH+qs/0Ti9SMbsjuatlcwDU40dlnNZw3L
 Mj5RP9i7NrDAjNlCm42t7QVxsCrDvXnVMel4co70B3YM87Uvt8vIYf9ERaHNMrByTh8r0qF+
 FoEYX1+OtWWUnyVQGXgkBfhPiXGlgjFBaPRUYP/uaP1SJNoXx/x0wEgOQCg3Y78o4nQZUs3Z
 WLDo1Y0JV1CuMGZ6N0A+kMBeGtDHbWfB7KOGWOZXPqCb8AIHCIj5Ls+r066KWLdfUzvdoPsa
 WEdGkdmX85ekroB8HL9oZM6ArxTGK0WimoxdpZ45R/p73gVLvmOSCOUzkV4oidisRaJveed+
 e4OZpQDfOmB3DpA5x10wr3XIQXKXR2arxWhv8LH3a15u7bIIzjseLWNNzJIqD2LDoiUmTjRn
 8KXD35ItRc/lmmM0WIxST5ajfIQAjS7JhwGK/V86w4044WLLBBtQATlBC+/cGEKTpLt6QsZ0
 tgKLb7kqe2zFPGvVrg3iFMAF5wH0xV6LLvXzdhvgkRKX75dr4FppGCY2xIxWCGIRV+VsvSFw
 Zaqz1MiOaKBq3V4RpnJ8OsM2qcgXdWmWmDSI0EnLafoe3/fIkjM5ogUKttNAnCGhBvgzx2oG
 NbZAJsfD6ZKhrezYGeyL0dHqX2asR1igbDG78vlVvv8WGn4fwJalRedTi0SsKTiRspXFNv9y
 BM2p5apqGBlzapIXY4m8IiPjR3GSiqKbpbEQWIY5hVkLj3eAd2CXyHnyCelgtbQBuUy2wPnG
 D7aSWbdfbXa2Atxkxww+Lk9kh5eX6aeF81YndmsZdlHWCDoXpr1/SXD5DDmle5ex8HwusHNi
 vCbiZXKgRyx8qv3Br9okf0KVw2gpEvNPfaFrItbvXa3W6sMpSBkeUDE+VP9JhocNDovelja5
 PoRyaFaDf5AfguwQqbuzIsPzR1smAtlbfwwwL+hVLIrkIXEL7XOhBrVrsbK9aT4yztQOuJyo
 xwiZYwsfGrOmv8Z9aawcjsHnZ+AwKWpXTzQ/AjqJhSs653rrd1EpXBWTbD1X1M3nwFXbPJvV
 JbRL4+7KHKO4dpccBXZjlQ+UAxks+TaEQsqQ77D4YFDBoQpm6eO8nM5bXGqbAiWBLc4ATxPE
 SS6C1b8bPOWTCZ2bsTFqI3JiBXZSEHmQRf1fLHc5eVDgOgM/xH9h69NHS2dbdGUqiLGbkKtH
 9BkqS1tv7SczC9wRzauDtwP7lH/GmmS96jGQ7kI584z/WqfVCXxraw6MG9jD3rWSK2ZkQRi4
 pCb1ERZK14+0ofpZxy1DOzRKzxql8klFUb4SgPrC+S5rSb
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="42152682"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=E6w0BnwO74mTKtkEQNBNIrliss3g77WX6uc9gOcmuUIlsed62w5icEkl5j4pt61Be1a6BNmU/puYLQtlMyG4FhtKHxaWTFFWisRWLuI8r4+r8G3ItDhKmMAzAG2QnDvvaycKeq5bu36GhjpKAo2HcOPARv8AnBWapn6dTSEZOKU+GktFNDeR3LCQ7KReCAgWfa14bgQGw1C3OqDv22PmZaVt/mBgN5jHYjfeyghqplP709IhK/GkKOp889kzB3STFECWZ0vzoEWpatFTFh9+BPAKxY1BJs7B1obJrYVvwy6kle4pOsg1Vii4stxnprU2zto5ewm2JdvGlat2NoZZ8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=J5+D+aArvR5hMHffV4e5iFgHgIfMNVyNOY3VbxMJd5w=;
 b=ZW6a39PvHk0MwAgW+JjqA04zbvfTPhKzidL9/5DTFKFEWH1gvFZExlugfqIRevdY44eM+pOfEHYh6iG3d35zVUraatucjG2s3JzL231siwjxcqBA/TfR+zi4zhIj4IwRd5mzarOQQitazvXTvjVrdlTeWiZEMvJMp3VkVSEWX+Iv4986uFDKUhl++DugL7uBaJUUBmIPWbTSMSyVRGluJtRg+61mNaQYb6ehp7znguD4pw13ijVzcuDsMvgMkHrmC9XcWWepTnH4XJPijbG7Sj3JDRhh5ChcdKXaGF+12MqQ7G0OpQ/WleD4c1PytBjcaodq9HUGt9h5WspJ5psRfw==
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=J5+D+aArvR5hMHffV4e5iFgHgIfMNVyNOY3VbxMJd5w=;
 b=dWxsXcLIrV/lxs+XvN81Uj/7tRm2R8dOntL9PIgFhiomiTemF/BWXZH7SyeujS6oZdEUIA/fAjdIg43oiJAMtFmXW7roLi6WPRpiNhJ7Jb6bxg4XbKVwgWm11lC3YwuYtFdFbI2d4UvLnq84esfDxfXfjKManMtpZqSpQHEKBwc=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-5-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 04/21] libs/guest: introduce helper to fetch a system cpu
 policy
Message-ID: <c9f3c0a5-a570-50c9-534f-9b06cd5d5837@citrix.com>
Date: Thu, 1 Apr 2021 14:56:37 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-5-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0011.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:a6::23) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 936b6b9e-56b8-4ee3-1d0c-08d8f515faa8
X-MS-TrafficTypeDiagnostic: BN8PR03MB4882:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB4882C1FB42FF91310491920ABA7B9@BN8PR03MB4882.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:324;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: SAEp0h+coLl3+USDXgFk3HLZvWdZqyOBCpbfFh9vSVyz9piAldQopDlYdZ+TNyco34bEYgeBGooo9U9Ts6fcHIxNQESXdHGJlf2V22LTdg7VoVpXWsyS/YslGZKd+79yEIUTGh3e7LowWogm/KM/8hque5hLpzigOhDmUx9NfBLJBalcN7qdZgPYr83RhHVZZyOs01mcZel6ML2ZpBcm99hodHYnt8XFbQLPxOligs8Ih0LY3jloASy7rMsCFN++vsw/rNEYmofDVXYdJloVpfsSSklSmklrfmxwfU1MdWezDe86F1VA1rg7aQ9B/ovWiGLJyEV+tcybd/EJytjOve8kMx/CFOsedqdk/T9fa4MqodcWhLJtpPVy+x3VVWMGBEh2WwE6t+wtTSCSPq6vMRq5BJ0M3hKkkJwZqEsTzH9llVr6IjyD4f0hDmiUk2nbVO3ciPAS03xrFcI1/KQSDAxanZ7s92hIw3xXGylxo5hVVea6u1X4PQc2ljTxf8vIQ6IcSwAHSc9sEqoRiqvj4/D77aFmsRAMdwh36R0PdnNhblPssrUMyLZ6pDg11kkb1pl2Gcep7w9kdACiOIiQhzp+jeZAU2krjFpw1+ViONo0U3htkYtv7XfGB6To0Z/8DPj33aj88+GycE87pDpr6u2NVXZbNRiZ8RIL/VfI48KwIIfHYL2A8yWFNIDprrhlrECHfUPVTmjdYa3ZEQrIKn5Y4Im9d5OpgG21KbazAYQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(376002)(366004)(39860400002)(396003)(136003)(6486002)(2906002)(186003)(956004)(54906003)(16526019)(86362001)(316002)(2616005)(478600001)(31696002)(66946007)(6666004)(8936002)(16576012)(26005)(38100700001)(53546011)(31686004)(4326008)(8676002)(5660300002)(66556008)(66476007)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 936b6b9e-56b8-4ee3-1d0c-08d8f515faa8
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 13:56:42.3163
 (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: PAD8fNg9nzPwzg/eLF40hYpW+tCN5UivrBHzbh9eTRfFkZ9eQfVUeDRdBeUpN3GL/wbj/lxviq4RXvKtmVZzx/x2tO40/lunwJMxtHoIoGc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB4882
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> Such helper is based on the existing functions to fetch a CPUID and
> MSR policies, but uses the xc_cpu_policy_t type to return the data to
> the caller.
>
> Note some helper functions are introduced, those are split from
> xc_cpu_policy_get_system because they will be used by other functions
> also.
>
> No user of the interface introduced on the patch.
>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---
>  tools/include/xenctrl.h         |  4 ++
>  tools/libs/guest/xg_cpuid_x86.c | 90 +++++++++++++++++++++++++++++++++
>  2 files changed, 94 insertions(+)
>
> diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
> index ffb3024bfeb..fc8e4b28781 100644
> --- a/tools/include/xenctrl.h
> +++ b/tools/include/xenctrl.h
> @@ -2596,6 +2596,10 @@ typedef struct cpu_policy *xc_cpu_policy_t;
>  xc_cpu_policy_t xc_cpu_policy_init(void);
>  void xc_cpu_policy_destroy(xc_cpu_policy_t policy);
> =20
> +/* Retrieve a system policy, or get/set a domains policy. */
> +int xc_cpu_policy_get_system(xc_interface *xch, unsigned int idx,
> +                             xc_cpu_policy_t policy);

I'd recommend "policy_idx" as the parameter name.

> +static int deserialize_policy(xc_interface *xch, xc_cpu_policy_t policy,
> +                              unsigned int nr_leaves,
> +                              const xen_cpuid_leaf_t *leaves,
> +                              unsigned int nr_msrs, const xen_msr_entry_=
t *msrs)
> +{
> +    uint32_t err_leaf =3D -1, err_subleaf =3D -1, err_msr =3D -1;
> +    int rc;
> +
> +    rc =3D x86_cpuid_copy_from_buffer(policy->cpuid, leaves, nr_leaves,
> +                                    &err_leaf, &err_subleaf);
> +    if ( rc )
> +    {
> +        ERROR("Failed to deserialise CPUID (err leaf %#x, subleaf %#x) (=
%d =3D %s)",
> +              err_leaf, err_subleaf, -rc, strerror(-rc));
> +        return rc;
> +    }
> +
> +    rc =3D x86_msr_copy_from_buffer(policy->msr, msrs, nr_msrs, &err_msr=
);
> +    if ( rc )
> +    {
> +        ERROR("Failed to deserialise MSR (err MSR %#x) (%d =3D %s)",
> +              err_msr, -rc, strerror(-rc));

We possibly want to split out helpers to render the error information.=C2=
=A0
For MSRs, it ought to be something like

if ( msr =3D=3D -1 )
=C2=A0=C2=A0=C2=A0 // general -ENOMEM etc
else
=C2=A0=C2=A0=C2=A0 // MSR-specific error.=C2=A0 render index and value.

I think we can probably even depend on MSR-specific errors always being
-EINVAL.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:00:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:00:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104507.199941 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxsN-0001ID-Nw; Thu, 01 Apr 2021 14:00:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104507.199941; Thu, 01 Apr 2021 14: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 1lRxsN-0001I6-Kp; Thu, 01 Apr 2021 14:00:47 +0000
Received: by outflank-mailman (input) for mailman id 104507;
 Thu, 01 Apr 2021 14:00:46 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRxsM-0001I1-7y
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:00:46 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 58d20fec-1f3e-489c-ac47-f51429ad5397;
 Thu, 01 Apr 2021 14:00: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: 58d20fec-1f3e-489c-ac47-f51429ad5397
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617285644;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=C73Pd4ceP/D/YEBjUB7YwX9APTcL/8vrdofjkKqfH3E=;
  b=fomrScFzysX2zkT6//obF7n3xOlelH/97n7w6E3eS0/EcXarGFh6kL9M
   S/EIU3craOFoV3//QEmZ5Dk+AbikjsBiUNCxyDh5kCTSPQt0eJC9lORN7
   eX5o8DND6lvTTft6GUypwfPhG44dfartIxZb5BfajuOPJt76OuNVF4TSE
   w=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: szbrlNACxLrexQmE1Oc9RstcF2x+WnndYYhbsUgOlnOECH7bgMn/jClUCRck1hhNSABb1rt9Mv
 SVmcQKwLD3WOJdIUZk7YwN/UiUoxL3IALrqEHMG5aouh8qLikRx4C6fNUAVc1ryzhavj8sg3nl
 EyF4Ypi/NhjBTxd5DRjGh5DJyzS9p9Bqdi+qgtjs4ii5IoQgP4r3UTcUQUNsO3P+UX0ICrMP23
 f7XRFSOCP3XN8oqGDIJA9Ov5qi7vt8hfqghkqe0wf0CPQZdph0hiaoJ4skWUQ8MnDDqVvKPtUS
 UCc=
X-SBRS: 5.2
X-MesageID: 40700716
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:YsI9paoKu1xG8O5v6X8f0wkaV5uGKtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQb3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIJg/I
 9aWexFBNX0ZGIWse/T/BS4H9E8wNOO7aCvgqPkw21wSBxxApsA0y5SIG+gYylLbSNBAoc0E4
 fZw8JBqSapd3h/VLXFOlAuWe/fq9rX0K/8aRkdCBI9rCWIhzWk6Ln1eiLoois2eTVJ3Lsk7C
 z5gxX0j5/Tzs2T5z398yvo75pQkMb80dcrPqKxo+UcNzmEsHfRWK1PQLuH1QpFxt2HyFFvq9
 XUpgdlAsIb0QKqQkiQgT/Anzbtyywv7XiK8y7qvVLGrdbiTDw3T+pt7LgpCyfx0EYrsNFi3K
 8j5Qvw3PA2fHCw6RjV3NTGWwpnkUC5uxMZ4IkupkdSTJcEb/tppZEflXklYKsoJj7w64wsDY
 BVfaPhzctRGGnqCkzxgnNi25iFUHg1A369MzM/k/3Q+T1XkHdl9lAf1cwSk1wRnahNOqVs1q
 DqNL9lm6pJSdJTRaVhBP0ZSc/yMWDVRwnQWVjibmjPJeUiATbgupT36LI66KWDf4EJ9oI7nN
 DkXElDvWA/VkryAaS1rdN22yGIZF/4cSXmy8lY6ZQ8kKb7XqDXPSqKT01ru9e8ot0Ea/erGM
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5ISR0+OmMTWMYfn39arMMr7Ff7IK3IJS2n/Cn
 wMUHzYP8Nb9H2mXXf+nVz/QHXoVkvj/Y9hMaTT8uQJobJ9c7Fkg0wwsxCU98uLITpNvugdZ0
 1lOo7qlau9uC2X8A/zniFUEysYKnwQzKTrUntMqwNPGVjza6w/t9KWfn0X+HOGIxR4Xv7HCQ
 I3nSUxxYuHa7irgQwyAdOuNWyXy1EJomiRcpsakqqfoeDoZ40/FZRjfKBqDw3EG1hUlG9R2S
 Z+QT5BYnWaOiLliK2jgpBRLvrYbcNAjACiJtMRj2neu0WarcQGXWAaQDaqbM6SjW8VNnhpr2
 w015VarKuLmD6pJ2d6qv8/KkdwZGOeB68DMB6If7xOmrfgeBh5SECDgTDysWB0RkPas2Epwk
 DxJyydfv/GRn5QoGpR3KrR/FRoTWmFZE5rZndmsYpyKHTeth9IoJ22T5v291HURkoJw+kbPj
 2AWzcULw907/2c1RKeml+5ZD8b76RrGtaYIKUocrnV1H/oFZaBkrseGeRIuLx/Msr1j+MNWe
 WDWgOcIT/iEdk10wiNqntNAlgslFAU1dfTnDH15mmx23AyRcfIKFN9XrcBPpWy6XPnS/vg6u
 QxsfsF+c+LdkP/Zd6NxfuJM3ptKhbPrXW3SO9tg5ZOpq42vKZyGZ6ecTag7gAx4DwOaOPP0G
 UZS+BHxZqEHKlFVckbYThY8Vokj87nFjphjiXGRssFOWgwhHraNe6T67XGqbATElSMzTGATW
 W3wml4xbP5RCON2r4RNrIoLUlXYEY67m5+/OnqTfynNCyaM8VC9kG9KHmzbft0T7WEA6wZqn
 9Bkpy1tt7SUyrzwwbLuzRnZopI7ma8WMu3RCaBA/RB/dD/GVOChMKRkYKOpQaybTuwcEIDg4
 JZMWQWc8RYkzEnyLQN7RLacN2+nmsV131E4T9mkVbx2o+ppEfjdHs2TzHxs9FxRjlcMn+BkM
 Lf1/OXvU6NuAR45Q==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40700716"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=chzLzPIBjaRAaMYlcGfOnEGgIpdxbUdjRWwD1hh5xE16qVlGz+yPxPGr1KEcGunUkbOBEH7Gm1DWuj+ECOhEpwgovo23ddQP1eLlj+WEKIn91uUSmBfNQ1uwvMZZiZlFMdxanoMEOQ1Vy4hfUT58FfwOU84I/HC7Nr0mUMBBkRZNRjSiXTu1YT/jqnsOU6Q++nZEWerlnAOt/op987FXBSUSRcLzuJPjueZaEvrtlwpC6lq2CCcGbPrWZ+/WC60qruCDsSdxqQSJoD1knOg6k66b5OyJS4tNEsrgstUJ+ZEqOQnraaxd+KrWpXi1uFRwHIouMDxUgT3sbnksYEu5Vg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6ioUgUKguW/HD9IrIpUOvi0JBwfDa+xZmXShjaADYv8=;
 b=jBxTHCLb8P4eZ/TAUkCQTMa3xYjrwFoF6BFpbrYwFc2sfvXYFRpVRBdNF9IFlwOuGb4UhSngSCGWo/bQ0s92jNXJURknZ5a/qtCba6SnT07eJtNQ0cWIz1Op5Eac15KxzQ9QmmwVzJuKbXMNlCpIQsiLyvaRw7KYtD4Ver5cEE7rXLyBfzG5Ez8irBN2vgz6pM8bIYP+AyaKRFISMhaDSjg+EMPICiAIszuEN/Qvts5eNQ+3WmgCucOStXqODUVe71F7otgUZ6uh6JHSNj2AZnyw3eG9vGT2eHOfbTRbwuRpx+yDzggihgcXhn+Ea98w9qI9FNdYyBVD6uDgrSabRw==
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=6ioUgUKguW/HD9IrIpUOvi0JBwfDa+xZmXShjaADYv8=;
 b=pWi0P7bmnvaZnNU9e8h1AmzDS5MQAz0gMQr6RwyEkL+zo7rTuD2Tf0LLsxucN26OvDlzkhbJqNCCdIrzV7LM3pAnsBGMeL8Bx9jPjVUH+d5eZSxzSd3I3wxtlIhTGa0Zv6ku8n+ljBJVhVaMrVEuBH2jKMMq8aFC5ds6ofds6Xs=
Subject: Re: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly
 xenstore
To: George Dunlap <george.dunlap@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Juergen Gross <jgross@suse.com>, Jan Beulich <jbeulich@suse.com>, Ian
 Jackson <ian.jackson@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-6-george.dunlap@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <97d317fb-16d7-a14e-e74e-62fa83159838@citrix.com>
Date: Thu, 1 Apr 2021 15:00:35 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210401133827.362216-6-george.dunlap@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0308.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:197::7) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5ee72e24-1ec9-476f-8ce4-08d8f516889d
X-MS-TrafficTypeDiagnostic: BN3PR03MB2372:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN3PR03MB23726C07F0476151EEE6BE9BBA7B9@BN3PR03MB2372.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: eQ5vFuq045yHjtTWrMpB8ReU5LCzGRRk9mxZHMuABR3ae20PfJ5CSZcnXjP8ZmAJDqy4Ms11kVmMkKaRXZTcrNbRF1oZPfNZqHk0wRSFhSLFOeOXxyu40OpYFXIkH+IYsbe1bpE1ltPHNHwCuB39rQkXAoMKFQH6qb7irdgz8Bp1MLEf3wS9beqT6R6pSQpKSfx3KYYVjH02BGQeq0scV3z7SlWjV3kjdcDLGV413ev+UDIJ5WHcu4cT8KZ/FLWs4i/A3bn5UbNBcTBwZofqTnfWh8ksBAEI7vZn8uIRcGxJ9nk8qXT++pEt00HR34qFBxVu3JA0CYSt7aUgi4pLDEzoEhacMuqUqFRULzKEICbxg9/Yn63fO+YepWthCzFr+g9wVJE8zmYckvxIAPXxFETOFG0do1GU1HZ7eW7q3lIc3uBa4OLyJyuh9L5fSB/VtiAyKat+6+sCQY6zA6737NEUSrguTxbm244attXCD/oWc+pk3t0Czuyu6/Y90SOiqzoqaIjH3LyncBlJ4bmNtjvtv9NSFdgZngorH+N8PIckVO7GroGx1qGCcRaDDeJHeincp/OmeIyS/FbvDFXDsHfX3s5BlPyjfNWCLt5Vgs9v6NwpF/rkU6USuTBi46e/rKWoHh+5uVNuq/Y9dge7xfP7OA1RTgEoxjHnsXeI2gciLxPcLt0r0LIs2Ooz85YFsY7HU7KkmwHDaXfgfxX838iF9TJ7xbkyYmx+1qVC1aiXr5wC0bxRgLwC/oJOuqQX2S5lXZ6a2tdoh7qAqls8hpOSAIHgilgMiL3yo3EJzvzoCQIROeFZ/20Q2dwmg1USBOeAvKO/ClUvVKZA87iw7j/1jWYtuxLy4idgaNW+5zNtBbCvURsN8uJlt2EeDr+H
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(396003)(346002)(39860400002)(366004)(8676002)(31686004)(8936002)(31696002)(186003)(6666004)(2616005)(956004)(54906003)(107886003)(26005)(83380400001)(16526019)(6486002)(36756003)(86362001)(16576012)(316002)(478600001)(66946007)(4326008)(38100700001)(53546011)(66556008)(66476007)(5660300002)(2906002)(59356011)(207903002)(219803003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?8l00K5ZHJKKH7NA2guUi02urs/O/Sh7PuQvWK1r?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 5ee72e24-1ec9-476f-8ce4-08d8f516889d
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 14:00:40.5216
 (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: VFqxlft8K+uWws3tExxmtOwS1j0BHGwOdoJ6uhYEdVuoK6N5WmYVxN3UIphzcpsR4aMKpPv9mPkTD7MJCBo6touDqtj1C5AOSb5bTqi1BzE=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2372
X-OriginatorOrg: citrix.com

On 01/04/2021 14:38, George Dunlap wrote:
> ...grouped by submitters / maintainers
>
> Signed-off-by: George Dunlap <george.dunlap@citrix.com>
> ---
> CC: Juergen Gross <jgross@suse.com>
> CC: Jan Beulich <jbeulich@suse.com>
> CC: Ian Jackson <ian.jackson@citrix.com>
> ---
>  CHANGELOG.md | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index 2f26cd5c87..9c272a0113 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -28,8 +28,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>   - Factored out HVM-specific shadow code, improving code clarity and reducing the size of PV-only hypervisor builds
>   - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
>   - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
> + - Fix permissions for watches on @introduceDomain and @releaseDomain: By default, only privileged domains can set watches; but specific domains can be given permission in order to allow disaggregation.

This is XSA-115, and isn't something new in 4.15 vs 4.14.  (I think?)

> + - xenstore can now be live-updated on a running system.

This needs to be very clear that it is tech preview.  It does not
currently work cleanly if a malicious VM deliberately holds a
transaction open.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:02:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:02:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104510.199953 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxth-0001Ql-47; Thu, 01 Apr 2021 14:02:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104510.199953; Thu, 01 Apr 2021 14:02:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxth-0001Qe-01; Thu, 01 Apr 2021 14:02:09 +0000
Received: by outflank-mailman (input) for mailman id 104510;
 Thu, 01 Apr 2021 14:02:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRxtf-0001QY-K9
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:02:07 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e11e5d9c-195f-406b-83a4-be3862b1d3bf;
 Thu, 01 Apr 2021 14:02: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: e11e5d9c-195f-406b-83a4-be3862b1d3bf
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617285726;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Ojivi11zgSPs6SiMidM26NiZuuczTbM1QnwxkLx85+4=;
  b=hql9pQwb9wv/zmPh7Gstm2NGo7BkHjqTyqkPVPEXbq1bErmVljC6/+lF
   yWR6sgw3NSnmDlrpwSXz7G1BC3hgYvCwUkhaqUceKENbl0EsmgxWcd5hn
   F3Ij1hnMwL4cPhxq5JKpyViJNwfk7ZbVNtXW4z4NfIOctVVx7yntQmTMw
   4=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: pUB+Xd9Nf3TBudUyYBo7wbkgT5b+Vrd+gPQ14L5qkn4KqsleEDh+Na53IUGLE6eLt8vigSMn36
 TqYZL5AAkfmHJ4oMZujWi56tAD93egz27HQegAdu8HqleWI+tm6ziqncJjsmfoJL/BaNooYCgT
 DFZqdqHORfTuVRzEakOPQ893T/D3AWC606c3xSJn2AAuhji6u16V3xw7Yv6MKhWskLOSLiUrkc
 hDyuakApo8HdVqIuEGVDoNOmpo5dxWuPkljJS/3SgKukcX79JTfq2DCazAqsgkboNnbRVbrcnl
 wTY=
X-SBRS: 5.2
X-MesageID: 40840366
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:UcL8naivYaaT8xME4+DKJiZHTXBQX0tw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+YsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmuZ
 tIW5NVTOf9BV0St6vHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WZEIyywe3cGIzVuL5w/CZ
 aa+45rpyC4f24Wc8S8ARA+LpL+jvfMk4/rZgNDOg4/5GC1/EiVwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLqCP0+HTU6/1t6b7c4/tFQPeBk80Ebgjr4zzYGbhJf52nkHQLrPq06FAs+e
 O80isIG8ho8XveciWUjHLWqnDd+Q0j4XPj1lOU6EGLyaeSJENYerl8rLlUfRfD500rsMsU6t
 My40uju4dKFhSFpSzh5rHzJm9Xv3Cpqnkvm/N7tQ04baIibtZq3Ogi1XIQOpIBECXm0ZsgAe
 ljAerNjcwmDm+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoifA3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QS6vCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSPGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erFc
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdUgoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYern1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQtBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtG8fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3PToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5avJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjUvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMVAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCV5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3jml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NBgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso7I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfDfA6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu9lZMfRmmArhD3I1
 +R7ml0+OrERTKK0dcheukNCFUTTEg383J5+uyeM6XWFQWxbulGuH63KGW0frMYaK+LH9wr31
 xHyuDNu++cbCzj3g/M+RN9P6JV6m6iBfqIPzjkI58/z/WKfXKWgqWr58avjDD4DRuDAn5o+b
 FtRAg3dcRMij4rkYst9DO9I5aH5H4Yrw==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40840366"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Rx2kTgjFNjhdZkQRbGQJJjzImCwDyPZfMXGoWfwl3cQH5lHA1/p+yDMTTHMzDFRXuL5z0bPrLowze32M8BtKccfQmJ6rYG42E2Xo+GLNrBgFlE+SzM5N3Lm7EwWr5DM0m8hhNlBe1oXQCw1F82gPnlUakz6rQ73NpwyoREyHBl7Fk5MbbtZsmq+U7KMV31MIQqbgTYtEThMeSWOWAGNtWMAYNLVvmVyMayMsF0CnKE4paEZMufzdSLrdexyg3TcEmBFfPPULT/Z8oXtbTFsvaHmoeXlzanPpUkk7k0kn5cD338yzv+lEvWlBb5buwSCFkRXFD1aPhkKuLO+EGoX4BA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zbbjIKru2b5o3Z6Na/+GtpQrrUZlqjlPIiTbirVMMf0=;
 b=M8fMHbJDpssX0QJ8BAXJDAzAKRmz/3+EpYfiWJ/x0luB1eT+gkw9lM4ZycxbS0iPADzsFfJX8cMTZX2eRr2I2smPLWVYApe3Lb9taWvMqq5QlSXiqvYH1AEGZtRSrxxxViiM+/NoxreT1QsgavNX8RWhaV69UyJfpeRw8sXLl42zJGsJ5J5aRaa73z+ZqzA9n3wFVtEubZkRCDS3X3SZwpp1/l4MV7ltLEgvw6pDqbcxPssyFgC0kWshWm4Hif80WdxMrPcYw0CtZNbBY2VuZQYmGmY4KooVkLOod++bApaox+THT8pgqleURP3a34H3xN51pEnVLE1V7qqhIHFMBA==
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=zbbjIKru2b5o3Z6Na/+GtpQrrUZlqjlPIiTbirVMMf0=;
 b=BaPnM4iAkmvGeoeTobmqbw4d9h5F10AkhzAlmCLXC+lZY4FvZjMAcsdUt9ezSrNd9+rvXA9WRjzF04NKQyop+KAwtqrqqiFjdIsIUrnTJCACPHlRhu428WQHV7buxvhvZlgVp8s1vjyKrxumvi+T6b+gjqtYvzuCFsHVJxrPFwc=
Date: Thu, 1 Apr 2021 16:01:55 +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/5] x86: don't build unused entry code when !PV32
Message-ID: <YGXSU9lGZpidz9wb@Air-de-Roger>
References: <46d83c92-0b06-fc09-4832-7a7d7935d5c2@suse.com>
 <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
X-ClientProxiedBy: MR2P264CA0017.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::29) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 492eb4b6-0fda-4339-c6f7-08d8f516b858
X-MS-TrafficTypeDiagnostic: DS7PR03MB5607:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5607545BE4F124DA3EBCD2408F7B9@DS7PR03MB5607.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ChL8GmfosG4MLd+gK+HNQMmjDO6qZAs36rUQMnuZs30o3cruMZ9p2b7f7wyhWGWvDi19IwSUF3jsGp58gVvFd1yopw8ZD65YJRRYgAxFTAWf+yN4o3LiqT6HEuvzYFtIbaonk48tOgNiI/2xthQBXEu8t/UE3Q1AgXkvthtByqtvSxF3avnIn4/6Ip0rg8tmqf5iTA8DTV8vDCaEnAPa3wytedPaxtVI0/iXHGLaerSMPq2Q7ffk2ZAe3A4SUUDvEZxr+OblxsnV0SqUIVdfJCO8luzPC4QaDycExSbwPdE1vFwsaM2Pnsbi3sm4KHfyKdqnRxIuOZIRjSmjPLw5uj+tkXRqPZRwHnvqysoyfSmsfsLOWx4m/OWOTGSXzQBefGnrQnORL7ipDqSXnHCBXQpznsxjqrSU8031I6qpZyDaPckp/+jPd5lT8JepC6wzb0xyUsXMEPF8mBS27/mcpV2wLp9/iNbGUq4d4cnD5TGF4kW8PMAsuinxI02CnKg+8+rAIqvKT9s1l+jS4ZWE36rDTtWHuk3mS4nF3pdWIuP0nyQ8UMzD1CAcVwOt4ovRBCwDKflMzgGkEzlMCrFNyqO76LKjpZScHUgBXJDzbD8H3NQN2QOITFuiX4GZcPMnD2ZZZKCg4W48xdVz2id5K19iDlrGBAZU82BpNdt6R+g=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(39860400002)(136003)(396003)(366004)(376002)(8936002)(5660300002)(956004)(54906003)(66946007)(316002)(6496006)(478600001)(26005)(38100700001)(4326008)(2906002)(186003)(33716001)(83380400001)(85182001)(6486002)(16526019)(8676002)(86362001)(6666004)(9686003)(6916009)(66556008)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 492eb4b6-0fda-4339-c6f7-08d8f516b858
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 14:02:00.7689
 (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: e2WWikv0hpmL6FUV+IRY24s2TjkHl3aurhCMJBbyCHn8zmg08aPUVInUGj9TqMhXHafkPJXt6NZYzVDdGHUv4w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5607
X-OriginatorOrg: citrix.com

On Wed, Nov 25, 2020 at 09:51:33AM +0100, Jan Beulich wrote:
> Except for the initial part of cstar_enter compat/entry.S is all dead
> code in this case. Further, along the lines of the PV conditionals we
> already have in entry.S, make code PV32-conditional there too (to a
> fair part because this code actually references compat/entry.S).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> TBD: I'm on the fence of whether (in a separate patch) to also make
>      conditional struct pv_domain's is_32bit field.
> 
> --- a/xen/arch/x86/x86_64/asm-offsets.c
> +++ b/xen/arch/x86/x86_64/asm-offsets.c
> @@ -9,7 +9,7 @@
>  #include <xen/perfc.h>
>  #endif
>  #include <xen/sched.h>
> -#ifdef CONFIG_PV
> +#ifdef CONFIG_PV32
>  #include <compat/xen.h>
>  #endif
>  #include <asm/hardirq.h>
> @@ -102,19 +102,21 @@ void __dummy__(void)
>      BLANK();
>  #endif
>  
> -#ifdef CONFIG_PV
> +#ifdef CONFIG_PV32
>      OFFSET(DOMAIN_is_32bit_pv, struct domain, arch.pv.is_32bit);
>      BLANK();
>  
> -    OFFSET(VCPUINFO_upcall_pending, struct vcpu_info, evtchn_upcall_pending);
> -    OFFSET(VCPUINFO_upcall_mask, struct vcpu_info, evtchn_upcall_mask);
> -    BLANK();
> -
>      OFFSET(COMPAT_VCPUINFO_upcall_pending, struct compat_vcpu_info, evtchn_upcall_pending);
>      OFFSET(COMPAT_VCPUINFO_upcall_mask, struct compat_vcpu_info, evtchn_upcall_mask);
>      BLANK();
>  #endif
>  
> +#ifdef CONFIG_PV
> +    OFFSET(VCPUINFO_upcall_pending, struct vcpu_info, evtchn_upcall_pending);
> +    OFFSET(VCPUINFO_upcall_mask, struct vcpu_info, evtchn_upcall_mask);
> +    BLANK();
> +#endif
> +
>      OFFSET(CPUINFO_guest_cpu_user_regs, struct cpu_info, guest_cpu_user_regs);
>      OFFSET(CPUINFO_verw_sel, struct cpu_info, verw_sel);
>      OFFSET(CPUINFO_current_vcpu, struct cpu_info, current_vcpu);
> --- a/xen/arch/x86/x86_64/compat/entry.S
> +++ b/xen/arch/x86/x86_64/compat/entry.S
> @@ -29,8 +29,6 @@ ENTRY(entry_int82)
>          mov   %rsp, %rdi
>          call  do_entry_int82
>  
> -#endif /* CONFIG_PV32 */
> -
>  /* %rbx: struct vcpu */
>  ENTRY(compat_test_all_events)
>          ASSERT_NOT_IN_ATOMIC
> @@ -197,6 +195,8 @@ ENTRY(cr4_pv32_restore)
>          xor   %eax, %eax
>          ret
>  
> +#endif /* CONFIG_PV32 */
> +
>          .section .text.entry, "ax", @progbits
>  
>  /* See lstar_enter for entry register state. */
> @@ -230,6 +230,13 @@ ENTRY(cstar_enter)
>          sti
>  
>          movq  STACK_CPUINFO_FIELD(current_vcpu)(%rbx), %rbx
> +
> +#ifndef CONFIG_PV32
> +
> +        jmp   switch_to_kernel
> +
> +#else
> +
>          movq  VCPU_domain(%rbx),%rcx
>          cmpb  $0,DOMAIN_is_32bit_pv(%rcx)
>          je    switch_to_kernel
> @@ -393,3 +400,5 @@ compat_crash_page_fault:
>          jmp   .Lft14
>  .previous
>          _ASM_EXTABLE(.Lft14, .Lfx14)
> +
> +#endif /* CONFIG_PV32 */

Seeing this chunk, would it make sense to move the cstar_enter part
relevant to !is_32bit_pv into the common entry.S and leave the rest
here as compat_cstar_enter or some such?

AFAICT we only need a tiny part of the compat stuff when !CONFIG_PV32,
so I think we could make the hole compat/entry.S depend on
CONFIG_PV32.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:04:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:04:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104515.199965 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRxva-0001ZX-KW; Thu, 01 Apr 2021 14:04:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104515.199965; Thu, 01 Apr 2021 14: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 1lRxva-0001ZQ-Gc; Thu, 01 Apr 2021 14:04:06 +0000
Received: by outflank-mailman (input) for mailman id 104515;
 Thu, 01 Apr 2021 14:04: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 1lRxva-0001ZL-0B
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:04: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 1lRxvY-0007IN-NU; Thu, 01 Apr 2021 14:04:04 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRxvY-0007p5-HG; Thu, 01 Apr 2021 14:04: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=oxS3dMoshd19B3V90o3bmPWkqypn36Zp+eVdVJW1c4E=; b=DkDO9Rlno7NY5lYiCLZ7bBxP7X
	vlz9rOT7z1KvqT4SMU23FIwKKlETSMy1V9pkwtE+4xTDmBZcPVpnQegio9UEzJKaTICvhPVf84HLm
	JSY4fwB4lLmsxWimFO7ov096OovcG1wvF18i05MfPgsBGQNoa71vf6q/QR6g2OJaTj4Y=;
Subject: Re: [PATCH 00/23] further population of xen/lib/
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <27916fa0-9ebd-a49a-bbb9-1ef47c2b5bf6@xen.org>
 <4f745d03-baa8-e9e6-692c-f9c9f401b766@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <6a38f0db-938b-fd13-48e6-6b538c85fe42@xen.org>
Date: Thu, 1 Apr 2021 15:04:02 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <4f745d03-baa8-e9e6-692c-f9c9f401b766@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 01/04/2021 14:43, Jan Beulich wrote:
> On 01.04.2021 13:54, Julien Grall wrote:
>> On 01/04/2021 11:14, Jan Beulich wrote:
>>> This is to dissolve / move xen/common/lib.c and xen/common/string.c.
>>> One benefit of moving these functions into an archive is that we can
>>> drop some of the related __HAVE_ARCH_* #define-s: By living in an
>>> archive, the per-arch functions will preempt any loading of the
>>> respective functions (objects) from the archive. (Down the road we
>>> may want to move the per-arch functions into archives as well, at
>>> which point the per-arch archive(s) would need to be specified ahead
>>> of the common one(s) to the linker.)
>>
>> While I think it is a good idea to move code in xen/lib, I am not
>> convinced that having a single function per file is that beneficial.
>>
>> Do you have numbers showing how much Xen will shrink after this series?
> 
> In the default build, from all I was able to tell, there's one function
> that's unused (strspn(), as mentioned in the respective patch description).
> I don't think I've been claiming any space savings here, though, so I

You didn't. I was trying to guess why you wrote this series given that 
your cover letter doesn't provide a lot of benefits (other than dropping 
__HAVE_ARCH_*).

> wonder why you make this a criteria at all.

Because this is the main reason I would be willing to ack this series. 
This outweight the increase number of files with just a single function 
implemented.

> The functions being one per
> CU is such that they can be individually overridden by an arch, without
> pulling in dead code.

I would agree with functions like memcpy/memset() because you can gain a 
lot to outweight the implementation in assembly. I am not convinced this 
would be true for functions such as strlen().

So overall, the number of functions requiring overriding will likely be 
pretty limited and #ifdef would be IMHO tolerable.

Although, I would be OK with creating a file per function that are 
already overrided. For all the others, I think this is just pointless.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:13:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:13:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104518.199977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRy4X-0002W9-Ic; Thu, 01 Apr 2021 14:13:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104518.199977; Thu, 01 Apr 2021 14:13: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 1lRy4X-0002W2-Dc; Thu, 01 Apr 2021 14:13:21 +0000
Received: by outflank-mailman (input) for mailman id 104518;
 Thu, 01 Apr 2021 14:13:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRy4V-0002Vx-U5
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:13:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id da409f7a-6212-4446-9525-314178b2430f;
 Thu, 01 Apr 2021 14:13:18 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F09F8B21D;
 Thu,  1 Apr 2021 14:13: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: da409f7a-6212-4446-9525-314178b2430f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617286398; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5R1iFocCrCea+Q5CcekCM394fJXvvNmfhZ4ckV/HZw4=;
	b=peDM+GzJLIOurWE/aJeXyz5Jit3ZlwNVPChscDbWL9L0PtWNknTu2s3kBn0GuooNVretBQ
	Y85W8cprQk+U6clKIYpmE3zz/nkmCX2GuZpr3+aXBkZ8jyzEU7C6M5vspYINSoL8nkTjMZ
	+uiWilsKU9NQywT9ycbQLdvOLjDvQRo=
Subject: Re: [PATCH for-4.15 4/7] CHANGELOG.md: Mention various ARM errata
To: George Dunlap <george.dunlap@citrix.com>
Cc: Ian Jackson <ian.jackson@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-4-george.dunlap@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <330feed2-d601-8b79-3c1f-bd8be167b8eb@suse.com>
Date: Thu, 1 Apr 2021 16:13:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210401133827.362216-4-george.dunlap@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 15:38, George Dunlap wrote:
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -26,6 +26,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>   - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
>   - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
>   - Some additional affordances in various xl subcommands.
> + - Added the following ARM errata: Cortex A53 #843419, Cortex A55 #1530923, Cortex A72 #853709, Cortex A73 #858921, Cortex A76 #1286807, Neoverse-N1 #1165522

May I suggest "Added workarounds for ..."?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:13:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:13:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104519.199989 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRy4k-0002ZP-Px; Thu, 01 Apr 2021 14:13:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104519.199989; Thu, 01 Apr 2021 14:13: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 1lRy4k-0002ZI-M5; Thu, 01 Apr 2021 14:13:34 +0000
Received: by outflank-mailman (input) for mailman id 104519;
 Thu, 01 Apr 2021 14:13:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRy4i-0002Yr-QP
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:13:32 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6c1ce797-8b02-4a33-8acd-43dd9906a2c0;
 Thu, 01 Apr 2021 14:13: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: 6c1ce797-8b02-4a33-8acd-43dd9906a2c0
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617286411;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=o/T2z5izFqeFlrvyG41eLfX0wa1j+CcD9qVBIetCGhU=;
  b=PMM/9qULSJLXaegPolR3YnsaFrDLdnVyET/O8umQ03sZpoq11ne48Zua
   NzS5rbYmhpFhtnmaH5SNkc+cYGp8PLsXAGDm0x3JWE9C35IqEIViKmVYV
   pqTiloKitU/M3hY5A2usfqqoPAHGnnepTlbpP2MMjlMcvntfDMTcUX2fi
   8=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: /CoToxVt0p7OtTS0rPh6usII05wPspnEpsBlHbkGudq8QpttU5WUCRQg73LK9KP97zHpok/J8n
 DLtetwJioIKjXuDV0FTAvsg7JJfkzDkeN5fD7TH1qsBvKchmKr7e+ABT4i7gaNlbj7L5yTJ3df
 hAHkGeJoQvqnC2Zb+0UlrF5lRmBpQwEKa5Lb5j4vsZ6ode5mzVW9/1GSFucKNG314HaSztwUJ8
 e4xHT1MC7y3rUF+axKQyoNiaij7gUoZ5AHsoccaJNGI37OtQyJS1PVGnvSJxoNbWTPCVpqJdHj
 BFw=
X-SBRS: 5.2
X-MesageID: 40704382
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:1iQtd6myeJ146F07dg4LkW06YbPpDfOej2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN+AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 hdWoBEIpnLAVB+5PyX3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0YNi+wOCRNNW97LLA+E4
 eR4dcCijq7YHIMbtm6AH5tZZm/m/TgkpX6bRkaQyM94A6Vgj+yrJL8GR6U3hAROgk/vYsK22
 7DjgD/++Gfo+i2oyWsrVP7wrZ3vJ/aytVFDNGRkcR9EFTRoyuheYgJYczmgBkbu+eqgWxa9O
 XkgxBlBMhr7mOUQ2fdm2qT5yDF8BIDr0Dv0kWZh3yLm72LeBsfB9BajYxUNjv1gnBQxO1U66
 5A02KHu5c/N3qp906Rlru4NWAeqmOOrXUviuIVhXBEOLFuE4N5loAD4FhTVK4JASOS0vFWLM
 BVEMre6PxKGGnqFkzxg28H+q3KYl0DWj2CQkQEp/WP1SlXkH1T3yIjtb0it0ZF25QnR5Ze4e
 PYdoxuibFVV8cTKZlwHeEbXKKMeyPwaCOJFFjXDUXsFakBNX6Ig5nr4I8t7OXvXJAT1pM9lL
 nITVswjx99R2veTem1mLFb+BHER2uwGR73zNtF2pR/srrgAJL2LCyqUjkV4oidisRaJveed+
 e4OZpQDfOmB3DpA5x10wr3XIQXAWUCUfcSps0wVzu104L2A7yvktaeXOfYJbLrHzphcHj4GG
 E/UD/6I9gFwVusXlP+nRjNS1LgckHy5vtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7AL6PqNL+mUCGuULzq0l5MBtUCUhYpJ/6VWlRmAMMO0ToNZIKu9CVf3FuzGKKTyUPCP/+IU
 p6nRBa6Ki3J5ufyWQJENS8KF+XiHMVuTasQ4oDnLaAoePoYIkxAJpjeKEZL3SLKzVF3SJR7E
 tTYg4NQUHSUhn0j7++sZASDObDM/9mgAmqJsZQgWnFtVqVoPwuQndzZU/tbeenxSIVAxZEjF
 x49KESxJCanyy0FGc5iOMkdGFXZH+vG7JABgSdbIBykrTmETsAC1uitHi/sVUea2Dq/0Idii
 jEITePcf/GOFZbp0tVy73n6l9ya2WbcX9hc3wSi/wOKU32/lJIlcObbKu61GWcLmEPxewQKx
 npSzofKAEG/aH86Del3BK5UVk2zJQnOeLQSIk5e7bIw3W3NcmjjqcdBcJZ+55jKfHjuuIGSv
 ikZgeQNT/0YtlZgjC9lzIAAm1ZuXMkmfTn1FnZ92C+xmc4GueXD1J8Rb0XSuvsplTMdrKt6t
 Fegt00t+frbTm0Rd6C1K3NbzlMbjnUunW7Suk0qZZS+YI+3YEDaKXzYH/t7jVg2h57EeLf0G
 U5a45/6KraOoBuc9cJEhgptWYBpZCqFg8TrgfyAuUCZlkjgH/QAsOR79Pz2M4SK3zEgDG1BE
 KW/CJc9crURiev1bYVDKQrPGRdAXJMnkhKzaend4fKDh+tePwG1F2mMmWleLs1ctnJJZwg6j
 J76cqPhemZam7R3x3RpyJyJuZr/3y8Sc2/RCKKFuggya33BX28xo+r6tW0ljH5VH+SbFkZn5
 RMcQgoVft44wNSxLEf42yVUaz4okUsjltY73VGrzfWq/abyVaeO1pHPw3fiohRRh9JPBGz/J
 z4zdQ=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40704382"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I91Rn0jFh8q/Wkya5RImjHk7qrqSHqASu+s7FyDUKeIrzOJRx4NowxvwTx2RQmdpjUheIbuXMT18ymp5vxQTBVIcdtKX6z5gbGHcXnITTHFf4LmpjpmKmA7mBnLeJeGwg6aqyOxQrvLMVqZt6xfgqmT8Vhk4jn9KW0G67PCHYr1pYk8uPg390j6whX7olPFCLUMetaHwBm9h1NGiP1SUUuA01o9nJzWgxM1/gL/HYWx54ZED8HoWutVZ4joGqAj3iWCKd0jmBZ+Vri+hF0xXecj27Uv/2/g414GSkVgl2H64aU/j9q80zuSVZ7tDkO4VZNO7zyVNz6ISQVvP3Z48hw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mqXtbKToHbLI33LPAXGUP0ffz669ImFGlV5VdiPlG8I=;
 b=mLv4CCVsp41RiNePwSuUK6JvHZhWAk64yTaWFXfnxTNySHUAwkF7KkzD1LKEzKIJaQlwxCtVZIhMrPgzuQaN9KRhvzb38dxLYJMpQ+2RKZQ9tSrk5aGUZjkzTlikkvP77wQYADdupUvIhYLHb6TYmzr2QtLxnYTxzR4emnZKQ0dYPvv4+1NXYA3rtBa2K1pt4UAESMSqDGSv981Ahr8PSFimv9c22mf4m9Hw6IrTQu2sxmOQD81qJgKUaOpFAwVVGjRm22ANujgC9YkNQHihwEVAMgyBPEN6clAd6ra8d0UFHB0P5bvzhio3fpOSEZdaws4xbuy0MjA+KIyVwpoElA==
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=mqXtbKToHbLI33LPAXGUP0ffz669ImFGlV5VdiPlG8I=;
 b=iLr5GOsmDPmk3uB21vRzwoqiF386lyLAMLAwSsqBpKahGGSTZzJ76qmg/z3YaX33iwVrsD8bVEAwvxVYPxbhEljMKT8KkL/d1nt8G/rF1pJNcVsbdMjsKoNsf8gOuwO49W3gF0KFWwy1wxthftvJi8g2Z25Td6FUDKfm5ehB/YM=
Date: Thu, 1 Apr 2021 16:13: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] x86/CPUID: move some static masks into .init
Message-ID: <YGXU+/sr6+GZ6gQ/@Air-de-Roger>
References: <2e3dfe1a-bc8b-6774-ef7e-efb565343c52@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <2e3dfe1a-bc8b-6774-ef7e-efb565343c52@suse.com>
X-ClientProxiedBy: MR2P264CA0081.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::21) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 446e2ad0-de9c-481d-7888-08d8f5184e53
X-MS-TrafficTypeDiagnostic: DM6PR03MB3915:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB391564BAA2A3A936E655569D8F7B9@DM6PR03MB3915.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:843;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: E6YDHzyLQc4kLA5mYBFiaEHTEvfX3XoQJrh9iD3yvoYrip95SzkaXVR9j2crP3WM/lxS4oNr70qVcUXQAvg4duabNhJjQ97XiyQO6COjfJBvVbfV1/1daewTx8v9Il8CU/aoKHzTarRPsV92wjPFh3G/NzJPJaWU4rcDN7KhMdkIPqsUa5iyqvPvalcrES48kckVh7T7Qtw2Ifj8AYx7avqHc8SfRegrxd/OUHE1YRCZFU1rgCydOjB2WHS9TM/NpphDQ13qegV2RzEGN2DogC5lsAVlbdLrlLo/kuYa3rbbLH/W7VLErT4bHtX8HU80KNxejX+hClI982HbEkG0uN0+Qd+cIx40YBTAqMg/hGh5XQC6g7ZodX2a7z2g9INm4pcRchKEmyu5nRhyVkgiwjziUzJCGtMjADGWMZiAqu5+Sl9vMGR18cbgbIRGdrKMdPSTby0GRv/Ptlt5MS1iZJPE/QRENgPHUpFU9fCfFXSlTJbdB09/lLsDNnHdRwwTWJUZ7GTZco9fyQM5IcpEqOgD7U9kh1S8Z6c4AuFRTwnRqYRSk8o29kOKiuBqm3G99sgfc2y4c2rMUbCb+nP17wsSEOA50VI+ISusu5Bq4oQMqJxUHKdnSGp2/tyJEa0kunjOl+FXxtYnXPBjcxNw9U84EKHfP90npZse/GsEMNKLbksbuaLCFj4oWgI+t4Az
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(366004)(39860400002)(376002)(346002)(396003)(54906003)(16526019)(33716001)(8676002)(38100700001)(2906002)(316002)(8936002)(85182001)(5660300002)(66556008)(66476007)(6666004)(9686003)(956004)(86362001)(4744005)(26005)(186003)(6486002)(4326008)(478600001)(66946007)(6916009)(6496006)(142923001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?UFVNWTcxZXRVNUtoM2IrZz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 446e2ad0-de9c-481d-7888-08d8f5184e53
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 14:13:21.5785
 (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: y0RVUtY4ikaS+HQq1RpMMjPBW3mtoYz0N+XRNaOlDeeiWrZit1Pn2ts4OVSxaq3zdDJbY7bnC9Pym5b5JvQf5w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3915
X-OriginatorOrg: citrix.com

On Wed, Jul 15, 2020 at 09:45:47AM +0200, Jan Beulich wrote:
> Except for hvm_shadow_max_featuremask and deep_features they're
> referenced by __init functions only.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

AFAICT those are still only used by __init functions:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

And making those non-init when required is trivial.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:13:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:13:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104523.200001 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRy59-0002gO-3m; Thu, 01 Apr 2021 14:13:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104523.200001; Thu, 01 Apr 2021 14:13: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 1lRy58-0002gG-Vt; Thu, 01 Apr 2021 14:13:58 +0000
Received: by outflank-mailman (input) for mailman id 104523;
 Thu, 01 Apr 2021 14:13:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRy57-0002g3-96
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:13:57 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6a16ad22-58cc-4f9e-ab27-ca9120ad9a3e;
 Thu, 01 Apr 2021 14:13: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: 6a16ad22-58cc-4f9e-ab27-ca9120ad9a3e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617286436;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-id:content-transfer-encoding:
   mime-version;
  bh=cOZ/xI/emguW5oKlhPWLjfpXpQISZ5k4MxVTlymcgYc=;
  b=Lw2FM0rPiyuo1PLQZMsi5GdmfHJVn8TITFFNybNPHEGfNwCG+LSnI1ZW
   LwyMukDOUpfQPCvy5pk+33PdwrFNdZLQ4Q/cvhSwSUQg9S1ieRKLYvyj3
   XU6ImBiaCd1dhjNMi18Yw9Y9sca6YElyQdXxipnCKnJJWxZJolYbLyKas
   I=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: hedOiDKEWSy1774H3QXvtOwJ3AtPi3v9m9j4g3Aa4HTdwLVR3cbaiduS7KcI8KHcvho2iKw7SX
 /cQy3EMBIOZRZyG/oGlmRWjmOZDicKM4t/R+GUIv63ddRCgG9cC78ntj3EkSTSHpyfc7Y5wXvg
 3WNdjCXhagvdh0cWaJ0wdr2yOuVek3jGv3qIADTb9gtUrEuC0tIMjkz2hxcP80CD/VxEFhvfjT
 Y5wY29BgFrza/TXhdX8c+PPqDExVHlllUg6kctlCG8iq/42wcUHL6ynHlOtGLOcuvw0CFUsvMx
 TXU=
X-SBRS: 5.2
X-MesageID: 40685686
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:tIatg6vs00lmrAMUoe0kr8897skCC4cji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOj7U5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qz6Y
 5JSII7MtH5CDFB4frSyAOzH888hPyO9661jenTpk0dMT1CQYsI1XYcNi+wFEpqSA5aQboVfa
 Dsp/ZvjTymZHgRc4CfDn4KQ+DMq7Tw5e3bSDQBAAMq7xTLsCih76T0HwPd8hAVVT5OxrlKyx
 mEryXS4KK/v/anjiLNzmO71eUZpPLN6PtmQPaNhM8cNyn2hm+TBbhJdrWesFkO0ZmSwXkwlt
 2kmWZDA+1S7DfrcnixsV/R3WDboUsTwlvD7XPdvnf5u8z+Q1sBeol8rKZUaAHQ5UZlnPwU6t
 Mx40uju5BaDQzNkU3GjrCiPXwL5ymJiEEvnuIJg3tUXZF2Us4qkaUl8F5IC5BFJSrm6ekcYb
 RTJfvB7/Vbe07yVQG/gkBTwcehVnl2PhCKTllqgL3t7xFqnWt0x0Zd+coHnn1ozuNad7B44Y
 3/Q8FVvYALavVTQbN2Be8HT8fyIHfKWwjwPGWbJkmiPL0bOlrWwqSHookd1aWPQtgl3ZEykJ
 POXBdzrmgpYX/jDsWIwdli7g3NemOgRj7go/suoqRRi/nZfv7GICeDQFchn4+LuPMEGPDWXP
 61JdZwD+L8K3DtXaJExRf3VZUXCXR2arxQhv8LH3a15u7bIIzjseLWNNzJIqD2LDoiUmTjRn
 QZWjz+I9hB81CrVnf0jAO5YQKqRmXPubZLVITK9ekaz4YAcqdWtBIOtFi/7saXbT1O25ZGJX
 dWEffCqOeWtGO29WHH4yFCIRxGFHtY573mTjdPrQ8OOEXkbKYbt7ykCDhv9UrCAiU6Y9LdEQ
 ZZqVgy07mwNYasyScrDM/iNHmbgXsVrHeDVIwdhaWH+MfgdvoDf9EbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgkIYZH/jFd953gB6iJMldrX63jzTGmegfAl8gGxK+W8+ehggjAwdOjl
 pq6qkFnf6rgjC0M1Yyh+w+LXxBYGmaG6h9EQyAfYlY84qbIj1YfCOvv3i6gwt2Unf2/08S71
 aRUxG8SLXuOB5hnVx2lozt60h5c22BeVkYUAEKjaRNUULcunhy1ueXYLGUyGX5UCpf/sgULC
 zFbTwOIgln2tCw01qPlCyfEGg9r69eTdD1HfAtdare1WiqL5DNnaYaH+VM9JIgL9z2tPQXON
 jvNzO9PXf9A+Mt1xf9nAdUBABk7H0lm+jvwhvr8Syx22M+G+PbJD1dNvsmCsDZ62jvXPCT1p
 plydozoOurK230LtqL07veYTIGKhTdpweNPqwVgIERuaI5r71oGZbHFTPOyXFcxR07aN7ui1
 l2etUz3JnRfot0O8ACcSNQ+VQk0NyJMUswqwTzRuszZ0skgXPXN86AioC45oYHEwmEvk/9KF
 Of+ypS87PeUyyP2aUTBqgwLW5VAXJMo0hK7aeHbcndGQ+qf+ZM8B6mKXe7aqZaU7XAFrMKrB
 p2iuv46dO/Zm79wkTXsjR6KK4VrDriTsO2HQ6WGelHt9a9Ik+Bh6O24Mi1yDf7IAHLH3gwlM
 lAbwgXaM8GlzwpyIsw2SK2Qrbsok0kn0BFiAsX3mLFy8yj+iPDAUpCMQfFmZ1YUjlYL2iQga
 3+gJ2l/WW45CIAxILKG0hRdMxfAtQcToD4KCF1NMgb1YTYiJYHk2BEexchD2k1lTD70adnxN
 6CqYfvZ9E=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40685686"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Pab5V570b3uVVy8Xwyh+s3KstQBUM2HEM4mcBBjI9ZqtDSI3NgBiIA9eGO7nTW2IkAaSRhGURIONmn1Z23Zg0CuNAX/qtGUfri8sN9sn2xFBD3ADBC1SeASaGGnyw+W1VAL+Mz0YpqxPoMExPGTvmBEWooV5seP2PaPeXreWFRf7FUIjE1o5qXYvuTlFaVnTpehPX09riYnFZDqPdvIOLDfsSCivTP28C//bshMsx2NU+x3hgnJ9VUWLpCe+vI87mqZW+xra3+cVAeFrcujtoa4bF8iLPstjBy7cE+153WMZuj6RnxgzK5YjICPbKI7vEWiNGEz22BZh95d7w+id1A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cOZ/xI/emguW5oKlhPWLjfpXpQISZ5k4MxVTlymcgYc=;
 b=Wk4KbsAzDUhSa+hn9VC/USL3Bqjtjacbn6wsUsxXWeHucLX81c8YTDhz65pQ1ZoOSd+6zP9621qQ59RPhlv4voYpATfLXrWTEx8OrUuw8UiNdQu0nQRG8GczIjC8kSscKJ4VaYeQtQ+ToEFcYx2fWS76cOs9lD5mC35rDFVayXQoArJ+RKZ37YB81mEpoZpJqajYbqm7HVmAIhWwkV1DKoNyiUw0oQZ4FUw30ZcHLCV2pmc65ljWXf1P92tLwzJgk56DHNroMhRswOjS+xhOR2b4MdPetj2HOKZmMrHy1z1hlmZ5C07bPlZ2a9CWn3R7oxOesYzKvl0QDwctHpwehw==
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=cOZ/xI/emguW5oKlhPWLjfpXpQISZ5k4MxVTlymcgYc=;
 b=CxbUi0yilRfoRa9bz3nyj3bOOZYsxxAu8L9zlSBhVrJyrzKl5vDhQSJ/unXskFkBWSylVrLdTf+oclYwBxV740Ttn0EB3YT0Elj/5YrCtuUO6tWaTbsMs0tBtA16jnHIeY7ZKcpCFW40tWqAibImqmP95oEicEgFyLokdMEOrgo=
From: George Dunlap <George.Dunlap@citrix.com>
To: Andrew Cooper <Andrew.Cooper3@citrix.com>
CC: xen-devel <xen-devel@lists.xenproject.org>, Juergen Gross
	<jgross@suse.com>, Jan Beulich <jbeulich@suse.com>, Ian Jackson
	<Ian.Jackson@citrix.com>
Subject: Re: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly
 xenstore
Thread-Topic: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly
 xenstore
Thread-Index: AQHXJvxUtSxo6M4mo0iX7TVVNapv+6qfsM2AgAADtYA=
Date: Thu, 1 Apr 2021 14:13:52 +0000
Message-ID: <07553207-90AA-4AD4-A5C2-C8F36411DDCB@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-6-george.dunlap@citrix.com>
 <97d317fb-16d7-a14e-e74e-62fa83159838@citrix.com>
In-Reply-To: <97d317fb-16d7-a14e-e74e-62fa83159838@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.20.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 45068017-cc19-4586-4270-08d8f51860bb
x-ms-traffictypediagnostic: PH0PR03MB5832:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <PH0PR03MB583223D59B9EBB9ABE6D0925997B9@PH0PR03MB5832.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: N9YaA++I14yxmpydoj15OG2o7wnXZiO4amTjwTVhvIazTlzqXHzbF9s0y9ejZ/oc4Hf2lzxdcaBe5bBaJKpHu/k4oxlhq20T5lpoWh7UoP/GL7Scb4l7Yxg6kAtqMNuYus7m4bPNW7bzMhANRWVEebvzvkM/La16YDePL692DcQH0iQd/5QcL1uBbMV7Q26Bl75AXXcOY7xxR62yqj+V78qVgfANAGojDBlfWGCYvANWUe3WQmAbz/ehJmEHJi4GEb5MLW9zcQCdhUkGES4Uk1EuEDOJwYr7SY8HQGhqTebKOp9SP+xNVHCtdpfLAd6C+aVaVsXUSbJ8vAsriP6byam3Zvw75Dib0Mr5K6nhZM+DNKKrrk/c4WKAeR2P/9uR8f4gYWaOOOaQGQyNZcvkDyAJzZ9gbzVkABBHeYHhRNktPgwtN/ay0FmYOQKQQkNtS79RBE7cp/mZHKh4mfCBIlFaHK6YSSyQ2qhXKUYDWcSPjWymsjFSXN1iceGYJ4UZVZ5X5XV8vDed88cHZDtOodktrBit8uZ/ZaTF+sCPZChwhxYP8J8qMN7nyZjOfNbTqT4KqKsqH3SXRW8CY4fzhBwGanzAT4IiCDTHhmg1FWKHbvz4pSdX9pf7X+aGB9+J3Om4Cq0rMa3xkm6beak6pO9/9CGGwQiJv4EohVgNaw3rK7ElhnzEi/jSSFtBTAfVDaQ23E/T8yqC2PDeyIqfgFuKwkM19dt+hPLtO8JZ+BcsUkvqqIwwiGHnkM+49NdICYbKt5Wi6VrC/vWspzpAtlw2YIBqmyxs6WpVIVSDYv26Lgn9tM/sse5v/jyKcSzP
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR03MB5669.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(346002)(136003)(376002)(396003)(39860400002)(66476007)(6862004)(26005)(316002)(5660300002)(71200400001)(86362001)(6636002)(38100700001)(2906002)(8676002)(4326008)(6512007)(6486002)(37006003)(83380400001)(107886003)(76116006)(91956017)(8936002)(66946007)(66556008)(66446008)(64756008)(54906003)(33656002)(2616005)(186003)(478600001)(6506007)(53546011)(36756003)(207903002)(219803003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: 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
 =?utf-8?B?Wml1UDA0cDYvWjU2TitkUT09?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <E83E753CBD717C44AF2138D2BC2F523E@namprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR03MB5669.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 45068017-cc19-4586-4270-08d8f51860bb
X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Apr 2021 14:13:52.2376
 (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: qQUKlA+p0H/rbpN+8gAO2XkPzKlUTLCzHvdIn2kszGCgSvx1ZiuaIgYfQGyX/hTjG6iF6vy0Wiz5QPG8ORgDH6ZD276nH5QEJLzTAYQyo0Q=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5832
X-OriginatorOrg: citrix.com

DQoNCj4gT24gQXByIDEsIDIwMjEsIGF0IDM6MDAgUE0sIEFuZHJldyBDb29wZXIgPGFuZHJldy5j
b29wZXIzQGNpdHJpeC5jb20+IHdyb3RlOg0KPiANCj4gT24gMDEvMDQvMjAyMSAxNDozOCwgR2Vv
cmdlIER1bmxhcCB3cm90ZToNCj4+IC4uLmdyb3VwZWQgYnkgc3VibWl0dGVycyAvIG1haW50YWlu
ZXJzDQo+PiANCj4+IFNpZ25lZC1vZmYtYnk6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBA
Y2l0cml4LmNvbT4NCj4+IC0tLQ0KPj4gQ0M6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNv
bT4NCj4+IENDOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQo+PiBDQzogSWFuIEph
Y2tzb24gPGlhbi5qYWNrc29uQGNpdHJpeC5jb20+DQo+PiAtLS0NCj4+IENIQU5HRUxPRy5tZCB8
IDMgKysrDQo+PiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspDQo+PiANCj4+IGRpZmYg
LS1naXQgYS9DSEFOR0VMT0cubWQgYi9DSEFOR0VMT0cubWQNCj4+IGluZGV4IDJmMjZjZDVjODcu
LjljMjcyYTAxMTMgMTAwNjQ0DQo+PiAtLS0gYS9DSEFOR0VMT0cubWQNCj4+ICsrKyBiL0NIQU5H
RUxPRy5tZA0KPj4gQEAgLTI4LDggKzI4LDExIEBAIFRoZSBmb3JtYXQgaXMgYmFzZWQgb24gW0tl
ZXAgYSBDaGFuZ2Vsb2ddKGh0dHBzOi8va2VlcGFjaGFuZ2Vsb2cuY29tL2VuLzEuMC4wLykNCj4+
ICAtIEZhY3RvcmVkIG91dCBIVk0tc3BlY2lmaWMgc2hhZG93IGNvZGUsIGltcHJvdmluZyBjb2Rl
IGNsYXJpdHkgYW5kIHJlZHVjaW5nIHRoZSBzaXplIG9mIFBWLW9ubHkgaHlwZXJ2aXNvciBidWls
ZHMNCj4+ICAtIEFkZGVkIFhFTl9TQ1JJUFRfRElSIGNvbmZpZ3VyYXRpb24gb3B0aW9uIHRvIHNw
ZWNpZnkgbG9jYXRpb24gZm9yIFhlbiBzY3JpcHRzLCByYXRoZXIgdGhhbiBoYXJkLWNvZGluZyAv
ZXRjL3hlbi9zY3JpcHRzDQo+PiAgLSB4ZW5uZXQ6IERvY3VtZW50ZWQgYSB3YXkgZm9yIHRoZSBi
YWNrZW5kIChvciB0b29sc3RhY2spIHRvIHNwZWNpZnkgTVRVIHRvIHRoZSBmcm9udGVuZA0KPj4g
KyAtIEZpeCBwZXJtaXNzaW9ucyBmb3Igd2F0Y2hlcyBvbiBAaW50cm9kdWNlRG9tYWluIGFuZCBA
cmVsZWFzZURvbWFpbjogQnkgZGVmYXVsdCwgb25seSBwcml2aWxlZ2VkIGRvbWFpbnMgY2FuIHNl
dCB3YXRjaGVzOyBidXQgc3BlY2lmaWMgZG9tYWlucyBjYW4gYmUgZ2l2ZW4gcGVybWlzc2lvbiBp
biBvcmRlciB0byBhbGxvdyBkaXNhZ2dyZWdhdGlvbi4NCj4gDQo+IFRoaXMgaXMgWFNBLTExNSwg
YW5kIGlzbid0IHNvbWV0aGluZyBuZXcgaW4gNC4xNSB2cyA0LjE0LiAgKEkgdGhpbms/KQ0KDQpY
U0EtMTE1IHdlbnQgcHVibGljIGR1cmluZyB0aGUgNC4xNSBkZXZlbG9wbWVudCB3aW5kb3cuDQoN
ClNvIG9uIHRoZSBvbmUgaGFuZCwgaXTigJlzIGNlcnRhaW5seSBlZmZvcnQgdGhhdCBoYXBwZW5l
ZCBkdXJpbmcgdGhlIHdpbmRvdywgd2hpY2ggaXQgd291bGQgYmUgZ29vZCB0byBoaWdobGlnaHQu
ICAgT24gdGhlIG90aGVyIGhhbmQsIGl0IHdhcyBiYWNrcG9ydGVkIHRvIGFsbCBzZWN1cml0eSBz
dXBwb3J0ZWQgdHJlZXMgKD8pLCBzbyBpdOKAmXMgbm90IHNvbWV0aGluZyB5b3UgbmVlZCB0byB1
cGRhdGUgdG8gNC4xNSB0byBnZXQuDQoNCkhvbmVzdGx5IG5vdCBzdXJlIHRoZSBiZXN0IHRoaW5n
IHRvIHN1Z2dlc3QgaGVyZS4NCg0KPiANCj4+ICsgLSB4ZW5zdG9yZSBjYW4gbm93IGJlIGxpdmUt
dXBkYXRlZCBvbiBhIHJ1bm5pbmcgc3lzdGVtLg0KPiANCj4gVGhpcyBuZWVkcyB0byBiZSB2ZXJ5
IGNsZWFyIHRoYXQgaXQgaXMgdGVjaCBwcmV2aWV3LiAgSXQgZG9lcyBub3QNCj4gY3VycmVudGx5
IHdvcmsgY2xlYW5seSBpZiBhIG1hbGljaW91cyBWTSBkZWxpYmVyYXRlbHkgaG9sZHMgYQ0KPiB0
cmFuc2FjdGlvbiBvcGVuLg0KDQpPSywgSeKAmWxsIGFkZCAodGVjaCBwcmV2aWV3KSBhdCB0aGUg
ZW5kLg0KDQpUaGFua3MsDQogLUdlb3JnZQ==


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:14:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:14:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104525.200013 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRy5C-0002iw-GX; Thu, 01 Apr 2021 14:14:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104525.200013; Thu, 01 Apr 2021 14:14: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 1lRy5C-0002io-Co; Thu, 01 Apr 2021 14:14:02 +0000
Received: by outflank-mailman (input) for mailman id 104525;
 Thu, 01 Apr 2021 14:14:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRy5B-0002iT-I3
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:14:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1ed5b708-1ae2-452b-9cec-5750334e0ebf;
 Thu, 01 Apr 2021 14:14:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 15963AEB9;
 Thu,  1 Apr 2021 14:14:00 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1ed5b708-1ae2-452b-9cec-5750334e0ebf
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617286440; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=xpCVOHY80H//GRsONMEcUeWejoev2F5CSJsOZBHVfLU=;
	b=QKdfwdwPg8c+FXt3I9Whhyv7IWON66MZT9G4F2k7uVMUdwszRkSo3w1bfDAcv+L35sFNQP
	UMSgyzUbQHwk4dq8MggyfiMAkb5jhd06sAGb54CsCUMaO7yA/u19EtSoNTdiw5A4lqBoDN
	F+eD6nPqI/zE+Q1S+3+On5OjCIb3nS0=
Subject: Re: [PATCH for-4.15 5/7] CHANGELOG.md: Various new entries, mostly
 x86
To: George Dunlap <george.dunlap@citrix.com>
Cc: Ian Jackson <ian.jackson@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-5-george.dunlap@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <64e450c6-26de-453d-3b57-5d8c0daa85fa@suse.com>
Date: Thu, 1 Apr 2021 16:13:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210401133827.362216-5-george.dunlap@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 15:38, George Dunlap wrote:
> ...Grouped mostly by submitter / maintainer
> 
> Signed-off-by: George Dunlap <george.dunlap@citrix.com>

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



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:15:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:15:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104532.200026 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRy69-0002xz-Sl; Thu, 01 Apr 2021 14:15:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104532.200026; Thu, 01 Apr 2021 14:15:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRy69-0002xr-N0; Thu, 01 Apr 2021 14:15:01 +0000
Received: by outflank-mailman (input) for mailman id 104532;
 Thu, 01 Apr 2021 14:15: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 1lRy68-0002xg-5m; Thu, 01 Apr 2021 14:15: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 1lRy67-0007Sj-V2; Thu, 01 Apr 2021 14:14: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 1lRy67-0002d9-LY; Thu, 01 Apr 2021 14:14:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lRy67-0007ZZ-K2; Thu, 01 Apr 2021 14:14: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=7+GDFXYJ7Fg7fPny0vfQE89LDGIi9OPq4nL94pXaCrw=; b=LtTgmVBOQ/cn2fiOMi21K6gLXc
	NV7b6GYrCJItP3b14bfsUgBVFTQXSjMPX1Cl/Z5iTSfCfuc4NtHfKJQ1UZljRRhVfwrc5/qulM1GG
	OxW4RiJbrM8Hkmro3HqS8Hm3ENXO+ICsJQ7z3NADWP432mjONRGUuaAXO1StXpgOT6MA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160641-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160641: 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=b0976d5c0441378b6348f5bfedbf431055bd0147
X-Osstest-Versions-That:
    xen=90629587e16e2efdb61da77f25c25fba3c4a5fd7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 14:14:59 +0000

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

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                  b0976d5c0441378b6348f5bfedbf431055bd0147
baseline version:
 xen                  90629587e16e2efdb61da77f25c25fba3c4a5fd7

Last test of basis   160565  2021-03-30 17:00:31 Z    1 days
Testing same since   160641  2021-04-01 11:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@citrix.com>
  Jan Beulich <jbeulich@suse.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
   90629587e1..b0976d5c04  b0976d5c0441378b6348f5bfedbf431055bd0147 -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:16:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:16:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104536.200040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRy7P-00036v-6X; Thu, 01 Apr 2021 14:16:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104536.200040; Thu, 01 Apr 2021 14:16: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 1lRy7P-00036o-2z; Thu, 01 Apr 2021 14:16:19 +0000
Received: by outflank-mailman (input) for mailman id 104536;
 Thu, 01 Apr 2021 14:16:17 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRy7N-00036d-Eu
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:16:17 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 50b111d6-1cab-49a9-808a-7b11de934d13;
 Thu, 01 Apr 2021 14:16: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: 50b111d6-1cab-49a9-808a-7b11de934d13
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617286576;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=/AFZAxvtPkioA0oxc3Q9LLCMrNqNrN7KaPiE+TBdwfE=;
  b=VjPrQXOwikqVXTFQxM6nHeBjmZuk5+iCzA70hKgPRNCfCfiA4yFQC1aX
   Z4jj5VQt4856GOyx9ojntD3VFPPX+OolgWnf7gI1HXjINaMLaLrsQc+bX
   4WZEQaS9bRrt18mzhw1z5s/rNCaDc8F2DUOINNc+FGIJfjtHy2PvgksnQ
   s=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: H4ExOqUTVgzKHJLmVWNYKa/9p/bIuv+Gi3OiRFppPL79J+YqAm9E6kvHdWnEMJY835w2HitBKp
 BSWWf8saC2ZGtFSUPyZLGgftc4ktqrS8VSrJnki2/I2x31EhMhIgswAqARQbOg5ftB9wbgAMfI
 ZjUU/IsEyo7yk+o/7z3plmqYVmu48ZUllZQFR/d37nB4+d+AbDrh7E4IVQqNAKYub0ntlbVuBx
 RWvqCy2pFylPQhMUbvSs7tvpXfdidrib12G0aR0vEv4HaimssTSVAALa7sWe9ul19IpRyvrk6l
 shY=
X-SBRS: 5.2
X-MesageID: 40686574
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:CdjIK6scf2I5RdIYMK4iOAD/7skCWIYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyAOzH888hPyO9661jenTpk0dNz1CQYsI1XYaNi+wFEpqSA5aQb8wE5
 SB7sRKzgDQBEg/RMK9G3UDQqz/t8TG/aiWLCIuKhY75GC1/FWVwZHgFRzw5HcjehNJhYwv6G
 3U1zH+j5/TyM2T7j/5+yvt449NmN3no+EzSPCkrsQOMD3jhkKJSe1aKsS/lQs4qu2u91om+e
 Oky3xLUaVOwkjccW2vrRzm1xOI6kdX11bYxUKFmnymmMTlRVsBeo58rLhEeRjU4VdIhqAY7I
 t33nmUv5cSLRTMkDWV3amuazhWl1G5qXdnrOgLj3Y3a/p7VJZtq+UkjSBoOaZFOBi/xJEsEe
 FoAs2Zzu1Ra0mmY3fQuXQq6MCwX1wody32DXQqi4iw6Xx7jXp5x0wXyIg0hXEb7q8wTJFC+q
 DtLrlorrdTVcUbBJgNStspcI+SMCjgUBjMOGWdLRDMD6ccIU/ArJbx/fET6Py1focLiL8/go
 7IXl8dlWNaQTOuNeS+mLlwtjzdSmS0WjrgjutE4YJih7H6TL33dSKZTlQjlNahvuUfDsXXV+
 3bAuMUP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5sLHQ7ea9NDzQbL2Hv7AADwkUmTwDj
 8oRz7oPvhN6UitRzv/mxjeW3Tkf0Tl5pJuGK3G/+weobJ9drFkg0wwsxCU98uLITpNvugKZ0
 N4Oqrgib7+j3Kx53z042JgPQd9Ak5Z7K77aW5DoRYHPirPAPM+kuTaXVoX/XOcYjdjUsvdEW
 dk1ihK0JPyC6bV+AcPJJaMNHmAg34auXSQJq1s5ZGr1IPCYZM3DpEvRaprMx7EfiYF3jpCoH
 tfaQMCW0/UHi7vj6Lgl5APGOTDbbBH8XmWCN8RpnTFuUqGo8YzAnMdQj61SMaSxR0jXjxOmz
 RKguQiqavFnTakMm0khuskdFVKdWSMGbpDZT71Lbl8i/TueAtqS32NiiHfgxYvenDy/0FXgm
 D6NyWbdbXKBVVa00oomprC4Rdxdm+HeVh3ZW0/uYphFX7esnI2yPSVfMOIoh+sQ0pHxvtYPC
 DOYDMULA8rz9er1ASNkDLHEXk93J0hMuHUEbxLScCY5lq9bImT0a0WFf5d+5hocMrjteIGSu
 qTcQ6YJjGQMZJe5yWF4nI+fCVkongtlv3lnAD/5G+jxXglHL7cJk9lS7xzGaDo00H0A/KTlJ
 N3gtI+sbHubiH/atuaxbrWaDAGIBXJumKyR/wpr5cRva9ajsoBI7DLFT/TkHdA11EiKc2xkk
 UUSqFy+qrANY9iZNZ6QVMvwnM50NCUaFI2uQn3CPIkdV4jj3XHL8qEioC42YYHEwmEvk/sIl
 GR/C1W4ufdUyaC3bAcDbgsIW4+UjlP1F1yuOWYd4PRDw22d+ZMuFqiW0XNAYNgdA==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40686574"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fC4lZ+sheUYHanELUSClfLLk+/hQQrPWoPFDngBIvA+5qNXAA48Rf7UIVz21XtOaF+l8cTrwldtKqDmf6JE4zYf7Vjd6nAKJ9QoMaI4LJTWq3ZGACNdxVv8GRiglSGRTXOxZ/0Jt8LVdZfR07M0m6LCJ1euRWnIjYFyrQPSqwbclYwRNeC41bqLjiaknuUzhHW8ypQ5fpDWI/8LWmxlW7P6+WGXJQpwKOYrimSDjQSIYNY9+cnppq6leE6lf0Lv8W2IRShkFKBoQCfyTCZ9YCivVzhqOyXGtEohhHzP7S3TTHUZABGNien0aPdRqOIzmB609iEtnB/FXsKwqsbVmjg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lN5z1D6OE0t0qCn/asYOcJEbcsKHwmaA4C8+DhC2aGw=;
 b=BhEQb/F1A2OaNh/XWsSG+azyKENMKeRMDobkLFjKwAohDxqVAqYHVO5G+CEG6El55tlwHWTbVPS46aLHvHJ37ExbPNvoqzUMVBMdfCkPcIsgwkKJNAEzAhRcycrF1ebh8mS7Hi2fFNXnrvICMy5ymThGPayM0u/KTWyF291fkE5C7xVvim8T7XOMp/3/BmEIo+fPjFXI7Y2ipiSyeZu+QVsh4N8co7VBWTnkYBL2p0en3PU3VFs/lAzdS/J4FijOAJuiRjwM19kIP9DTmcigUB0GoopLVhfECcUa6KPFdCcIS3U18f1xg1saV+xYcLlFfQDyyXP6ILUUBh2vKDhpVg==
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=lN5z1D6OE0t0qCn/asYOcJEbcsKHwmaA4C8+DhC2aGw=;
 b=LLGxGEtyOmMPa8w14rzdVJ7Q8l+wJeXzyuvutwi67p2AiE0cbd5uHeowsQKJwAmNQcTQlExi7Pehgdb8AtJ6upp39//ulwmSbt3oba6URetT67BXZpVIdrLxpp7mBDFzbaLsDReURzIGDKwJu/LoLqzq3JrPVANNF84+uXAJPAU=
Subject: Re: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly
 xenstore
To: George Dunlap <George.Dunlap@citrix.com>
CC: xen-devel <xen-devel@lists.xenproject.org>, Juergen Gross
	<jgross@suse.com>, Jan Beulich <jbeulich@suse.com>, Ian Jackson
	<Ian.Jackson@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-6-george.dunlap@citrix.com>
 <97d317fb-16d7-a14e-e74e-62fa83159838@citrix.com>
 <07553207-90AA-4AD4-A5C2-C8F36411DDCB@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <d3941c9c-cef2-5521-7028-2fde1f727ae3@citrix.com>
Date: Thu, 1 Apr 2021 15:16:00 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <07553207-90AA-4AD4-A5C2-C8F36411DDCB@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0083.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:8::23) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 190249cf-1351-4dc1-5744-08d8f518b04b
X-MS-TrafficTypeDiagnostic: BN8PR03MB5139:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB51395ADDE712F555492C91B2BA7B9@BN8PR03MB5139.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: KLR7ydKTB8B3dscs4uTG5IQ9ONnVaclDZjf4n2ymakR+dCf+C/MZGKfzyPX9j6icBt+RuCBkcHt2SkM+Cu0/26eIkJqhAT/fWmj+o9MRfynzIzcIpIlZ6khesQx9y7EkT69cl/SyC9CpEX1MQ1KbWRuCzquzxINkq6ZbE2JNKAToKcfusGLLXf1fp+H9I/MDAojPDecm9S7psEv7fnNlxjQSeHrsHiWzK2FeVgZxL2bY21vVh/ON53I/YSndi7gJYyIuroe2BfIoNyKWdb+3PYyYTB2C03fCJgr5AloTvPf6VHN9Kh6i6t94RfQelXozXQmZtldafTcQektColJjrTToBI2q82nGu0ivnjYbc1su4X6VKvUYJtDD7QWsBuXbaPI2aIbVoVERMPGe2fwTkiEGszV5bO9kNQclCPcN6jjYpqVZRfDVYDvEpDp5i1SAWHpAhR3AVWbkQwBW499fmG5XRZj5ecWkjnSJxq9x7HRnv/gRqyD0QtcX0HWhCXLQi8f8RzMENLPS8ZtUNIWD7d7Z9FoaIix24z9sqSY+1+v5Rmmk7KPFtSzgeKAHeSS2vkxY/NWL1hYlFn2B3nQZwU9Ph+5yZQD++SlbB8q+9jaNmzjuk/STSfJAj6PjOaRSJAw1Knos8pA9BOyLeKQusQplAQPdswPTEMWNDIWAxB7Kv/vUc589Wva3YtuiTpuUW6I3+S9l3HhH+ITPdSD0yc+V7gZjz3G0TtAydUBWdj9AKIUDIKKWO7Ar3qTNFehiFyYGzj7FtjV5H8X+DJvjpcMpgvTCChcFj6kLfOw4AEHa09QtC4j4le+NJmzgtnfpJ3+zzD4nIYF2g7Ob63k7mbLvwAsiC4iX9RszbprYTcebPHJO0lr6p8lhCDKJ83GB
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(396003)(346002)(39860400002)(136003)(366004)(8936002)(6862004)(66476007)(83380400001)(38100700001)(66556008)(31686004)(6666004)(66946007)(53546011)(54906003)(26005)(8676002)(36756003)(186003)(6486002)(31696002)(478600001)(16576012)(6636002)(2906002)(956004)(4326008)(107886003)(5660300002)(2616005)(316002)(37006003)(86362001)(16526019)(59356011)(207903002)(219803003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 190249cf-1351-4dc1-5744-08d8f518b04b
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 14:16:06.2051
 (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: wA1bIG64Dda4b7kgDcp9Goh5W2EeDZ9zobsF2ACgq23LU6asI9KeHFLuz7X3HlzjfyO6TTy9tnckdl7stWVnuU349tee9M+if0LWnjBMCNU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5139
X-OriginatorOrg: citrix.com

On 01/04/2021 15:13, George Dunlap wrote:
>
>> On Apr 1, 2021, at 3:00 PM, Andrew Cooper <andrew.cooper3@citrix.com> wrote:
>>
>> On 01/04/2021 14:38, George Dunlap wrote:
>>> ...grouped by submitters / maintainers
>>>
>>> Signed-off-by: George Dunlap <george.dunlap@citrix.com>
>>> ---
>>> CC: Juergen Gross <jgross@suse.com>
>>> CC: Jan Beulich <jbeulich@suse.com>
>>> CC: Ian Jackson <ian.jackson@citrix.com>
>>> ---
>>> CHANGELOG.md | 3 +++
>>> 1 file changed, 3 insertions(+)
>>>
>>> diff --git a/CHANGELOG.md b/CHANGELOG.md
>>> index 2f26cd5c87..9c272a0113 100644
>>> --- a/CHANGELOG.md
>>> +++ b/CHANGELOG.md
>>> @@ -28,8 +28,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>>>  - Factored out HVM-specific shadow code, improving code clarity and reducing the size of PV-only hypervisor builds
>>>  - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
>>>  - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
>>> + - Fix permissions for watches on @introduceDomain and @releaseDomain: By default, only privileged domains can set watches; but specific domains can be given permission in order to allow disaggregation.
>> This is XSA-115, and isn't something new in 4.15 vs 4.14.  (I think?)
> XSA-115 went public during the 4.15 development window.
>
> So on the one hand, it’s certainly effort that happened during the window, which it would be good to highlight.   On the other hand, it was backported to all security supported trees (?), so it’s not something you need to update to 4.15 to get.
>
> Honestly not sure the best thing to suggest here.

We either want all XSAs discussed, or none of them.  Possibly as simple
as "the following XSAs {...} where developed and released" ?

I recall Lars making this part of the release notes in the past.

>
>>> + - xenstore can now be live-updated on a running system.
>> This needs to be very clear that it is tech preview.  It does not
>> currently work cleanly if a malicious VM deliberately holds a
>> transaction open.
> OK, I’ll add (tech preview) at the end.

SGTM.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:17:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:17:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104539.200051 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRy89-0003DW-Fp; Thu, 01 Apr 2021 14:17:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104539.200051; Thu, 01 Apr 2021 14:17: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 1lRy89-0003DP-Ce; Thu, 01 Apr 2021 14:17:05 +0000
Received: by outflank-mailman (input) for mailman id 104539;
 Thu, 01 Apr 2021 14:17:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRy87-0003DG-Sh
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:17:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1741e65f-18c6-4991-8feb-2be4e4e6d6a0;
 Thu, 01 Apr 2021 14:17:02 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 24A23B15F;
 Thu,  1 Apr 2021 14:17: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: 1741e65f-18c6-4991-8feb-2be4e4e6d6a0
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617286622; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=OvO5C0SRpjkQLKwcYLbhj9/Kcb0lIHrpUuAKPqxabU8=;
	b=cK1OAgb51tVnFKwGYSe8xiYno1mYAr6AEEfVrmgo4VT7isz68yxAbpfA+nwcqTM7Ld8HGB
	5nI9S2ONaSIV9WkIKrrcQXso7CiwvUBJUAudc72S67O0L1zDL24amv6Xvuo2QBOM2bfv0K
	hIh/9a8ab76EtWpC+puTqyXEJL1J1AE=
Subject: Re: [PATCH for-4.15 7/7] CHANGELOG.md: irq-max-guests
To: George Dunlap <george.dunlap@citrix.com>
Cc: Igor Druzhinin <igor.druzhinin@citrix.com>,
 Ian Jackson <ian.jackson@citrix.com>, xen-devel@lists.xenproject.org
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-7-george.dunlap@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <37b76a6d-e81b-1581-d89c-0d99a9d2eba9@suse.com>
Date: Thu, 1 Apr 2021 16:17:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210401133827.362216-7-george.dunlap@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 15:38, George Dunlap wrote:
> --- 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/)
>   - Some additional affordances in various xl subcommands.
>   - Added the following ARM errata: Cortex A53 #843419, Cortex A55 #1530923, Cortex A72 #853709, Cortex A73 #858921, Cortex A76 #1286807, Neoverse-N1 #1165522
>   - On detecting a host crash, some debug key handlers can automatically triggered to aid in debugging
> + - Increase the maximum number of guests which can share a single IRQ from 7 to 16, and make this configurable with irq-max-guests

Acked-by: Jan Beulich <jbeulich@suse.com>
albeit I again wonder if this isn't too small / niche a change to warrant an
entry here.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:20:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:20:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104542.200064 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyBl-00046V-24; Thu, 01 Apr 2021 14:20:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104542.200064; Thu, 01 Apr 2021 14:20:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyBk-00046O-TI; Thu, 01 Apr 2021 14:20:48 +0000
Received: by outflank-mailman (input) for mailman id 104542;
 Thu, 01 Apr 2021 14:20:48 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRyBk-00046J-05
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:20:48 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 158914c4-a5a2-4f2d-a51d-9047524db5f4;
 Thu, 01 Apr 2021 14:20:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 49237B1D8;
 Thu,  1 Apr 2021 14:20: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: 158914c4-a5a2-4f2d-a51d-9047524db5f4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617286846; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=VOqeogxbK6VN2FJQOF4re0MvTB3ZQ8p0SRm2kVH04DU=;
	b=a2R+AwBvkbxtxfqzk+A+eT+VW0c/cGJG0VL0NepV/MmCyFZLhRJ+UhhnRbCVlXVuv0Zzxf
	la1si4LPrenGY/N1mOfxd16YsnFUhdTWocZo8op5MBjKWgnIpSX/qoUy2YQFdrtwScvcIg
	tporoK5CwvqI8U5sIutZRbSh8pymBIk=
Subject: Re: [PATCH 5/5] x86: don't build unused entry code when !PV32
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: <46d83c92-0b06-fc09-4832-7a7d7935d5c2@suse.com>
 <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
 <YGXSU9lGZpidz9wb@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6b4e302f-2c50-5e6d-aadc-720c7efdd2e5@suse.com>
Date: Thu, 1 Apr 2021 16:20:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGXSU9lGZpidz9wb@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 16:01, Roger Pau Monné wrote:
> On Wed, Nov 25, 2020 at 09:51:33AM +0100, Jan Beulich wrote:
>> @@ -230,6 +230,13 @@ ENTRY(cstar_enter)
>>          sti
>>  
>>          movq  STACK_CPUINFO_FIELD(current_vcpu)(%rbx), %rbx
>> +
>> +#ifndef CONFIG_PV32
>> +
>> +        jmp   switch_to_kernel
>> +
>> +#else
>> +
>>          movq  VCPU_domain(%rbx),%rcx
>>          cmpb  $0,DOMAIN_is_32bit_pv(%rcx)
>>          je    switch_to_kernel
>> @@ -393,3 +400,5 @@ compat_crash_page_fault:
>>          jmp   .Lft14
>>  .previous
>>          _ASM_EXTABLE(.Lft14, .Lfx14)
>> +
>> +#endif /* CONFIG_PV32 */
> 
> Seeing this chunk, would it make sense to move the cstar_enter part
> relevant to !is_32bit_pv into the common entry.S and leave the rest
> here as compat_cstar_enter or some such?
> 
> AFAICT we only need a tiny part of the compat stuff when !CONFIG_PV32,
> so I think we could make the hole compat/entry.S depend on
> CONFIG_PV32.

To be honest I was meaning to see whether this would work out reasonably
well in a separate, follow-on change, as the code movement might make it
harder to judge on the change here compared to the #ifdef insertions.
But maybe I was wrong and should give this a try right away.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:25:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:25:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104545.200076 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyG6-0004Ia-K5; Thu, 01 Apr 2021 14:25:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104545.200076; Thu, 01 Apr 2021 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 1lRyG6-0004IT-Fh; Thu, 01 Apr 2021 14:25:18 +0000
Received: by outflank-mailman (input) for mailman id 104545;
 Thu, 01 Apr 2021 14:25:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rEwQ=I6=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lRyG5-0004IO-2k
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:25:17 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 32a6c0d1-7127-439c-9264-39585dc02db7;
 Thu, 01 Apr 2021 14:25:15 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.0 DYNA|AUTH)
 with ESMTPSA id 005bafx31EP99L9
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Thu, 1 Apr 2021 16:25: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: 32a6c0d1-7127-439c-9264-39585dc02db7
ARC-Seal: i=1; a=rsa-sha256; t=1617287110; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=j4iAYUbgEisykYQRzKU0rugcUpNY7CL/gaqgVLpkf/lr8b/YHG4MoGK2zQzm2odIK/
    tU41KXALKj1wrbTmWP0vrAfGdMaqd/k++X9rw8NYSik8eiLtDN06nRhvMmvINCP5+SgM
    K4AqBlwfQOmgGjCQLWzjclkyEcXP7/L/bnoc34boIM4vhZZGnwmX1OMGspSWRvqKhFy7
    5lfTZEoNooxAsMj10en9SdfpcltIvSfHBPufE9Gb45jE8+QHYYx7RE3Qio3PTsPy/kgs
    tZMDIwB9+Sl8L/LfApEkmPI17K7405oAcwwV5wqcKuSUlZQJxdA9kOUYA6p1cNDrYaq1
    sglw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1617287110;
    s=strato-dkim-0002; d=strato.com;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=FM41hKIuLgnoLVd8uBVj7PEK15Ao/d5Jsy/Z+nsM4dU=;
    b=AwbgkmDOZE8QubP0r0NyehAL9JfvSvj95Yl6uybNBIaxSGPAX3DIKfz/vOzi8BnFkT
    s3fPO40PaEedLoerldGvruCkDXrhylA/ijRBHdSbb6DU78NRY4UjIaOmY8NwtHMcOEp0
    tWYUlA8+wZcdyx5UiHphp8XJl3ZJ5By7P5+EGr9FJUQez4qbLm3v0ObGD1Stg9Y/Lt13
    8g55h1JS7DBJj9teeEdc35YeVVug4GCSc9Jj5aciyM4/if9gq/ILXJedKX23Yidr+4eR
    Z7tt8AZtvR36hJ/gkFg9Ih/h8LrEndNeZagRk+3U/g5D0QFG5Ruy457EDYrr9lmE1etS
    9uwQ==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1617287110;
    s=strato-dkim-0002; d=aepfle.de;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=FM41hKIuLgnoLVd8uBVj7PEK15Ao/d5Jsy/Z+nsM4dU=;
    b=MXVE+hGinVIwP1D8PSNVFCa9IOVjfgh8F7JhvBCPey7XbMJgAzzCOCd7yh+5tz8FG2
    +98mLaIC2XC9d3XHZAgQZPGblkdwhnrdfONTd9SncK4aGbeEc5bWuGFxFRiE2vUT4SaE
    6qXIcV5xB+RSO1y8bGWY8SBLWZ5fOBlsi/0wMpilIAXFKjKrUlbzW2IHlFv5wYdlE9Gj
    Tvvrj6IS3RahCR7v0ItY2uXPanYJL8IOgWGHMTbFRO7OaZzr4tGGDxiB+Y8tZ476KObN
    ISV+ggVJa42vpSc+NOjeE9KLBvBKcotOHTlupcKNjk1fse0FnmdkmvOz/GZK46MVMk1Z
    8Zrg==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDXdoX8l8pYAcz5OTW+P6/A=="
X-RZG-CLASS-ID: mo00
Date: Thu, 1 Apr 2021 16:24:54 +0200
From: Olaf Hering <olaf@aepfle.de>
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH for-4.15] libxl: Replace deprecated QMP command by
 "query-cpus-fast"
Message-ID: <20210401162454.78fb0290.olaf@aepfle.de>
In-Reply-To: <20210322141744.522041-1-anthony.perard@citrix.com>
References: <20210322141744.522041-1-anthony.perard@citrix.com>
X-Mailer: Claws Mail 2021.03.05 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 boundary="Sig_/4cFygLJ1LDJGH5ZoXulrxJK"; protocol="application/pgp-signature"

--Sig_/4cFygLJ1LDJGH5ZoXulrxJK
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Am Mon, 22 Mar 2021 14:17:44 +0000
schrieb Anthony PERARD <anthony.perard@citrix.com>:

> We use the deprecated QMP command "query-cpus"

There is also the already removed "cpu-add" command used, which apparently =
has to be replaced by "device_add".

Do you happen to have a fix for this as well?


Another thread suggests that more deprecated commands are used. I think the=
y have to be adjusted as well, ideally before they finally disappear from u=
pstream qemu.

Olaf

--Sig_/4cFygLJ1LDJGH5ZoXulrxJK
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

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

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmBl17cACgkQ86SN7mm1
DoBz+A//ZMJcUonxTlK57+9aisiRzk8Z7AQ7iM4r8iPX7athCtqpCplQNkhKvvx7
Ky3t3VR7+r4E+INxdtscZONRDS1RmhtJTy0Fa7VK8cpfeQo4YyHVBMk37gEN0CN/
1m6K21Pc+EBMopoyBo6EvHPPibYt7bRjnhTRg/g/4OM0mWyTQPuzzhYAgsUo5g+d
svnYW2hCNRXq0ZI0U5w+wM8oxO4ldRJQDM2DrPmeFeuBzid/QKXKd+M0PtTTEovr
OjWdFBNtD9uGR0SbKy1ow6pS27muzJd3Ilo+E4FVehUm/Q45Xoxch5z1JbsqloDC
IxQMrRYyOwNYyn2q22NrlEU7XsnU/SpJdsGuITiF0anShLLO8CpSmMvskwNlXQKA
k1xaxPGm3N0LnqCnnvvmC0Jvt9wcrOw1BwVJfU9l7aLlGdQft57a3MDEtizCNlFx
KUxyAURACD3oBhjiUwbNu7VQMj9BbUQSUI0zSV+0qPL32M5x5EDrWpDxr6/hz1o2
3mVf2rJuSQ5COKA3X/uEsaXDS0k4KB4fGDAHlMnSjLd+e0rcaJBbZ8ZjTzGP4TGr
Bzqnpm1RVti7Ce1+1pkSCR+rP0NJUKhtYtRKPCR8SjzEbe3T5sRnwe10cmxkR1bk
JX4ScbsAmsG4rr61YWqNJKYIEFmHyDgKM2vWUrVNI/zY0gLdHl8=
=QY7s
-----END PGP SIGNATURE-----

--Sig_/4cFygLJ1LDJGH5ZoXulrxJK--


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:27:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:27:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104551.200088 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyId-0004R3-4m; Thu, 01 Apr 2021 14:27:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104551.200088; Thu, 01 Apr 2021 14:27: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 1lRyId-0004Qw-1K; Thu, 01 Apr 2021 14:27:55 +0000
Received: by outflank-mailman (input) for mailman id 104551;
 Thu, 01 Apr 2021 14:27:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRyIb-0004Qq-HA
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:27:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6abfc8e0-307b-48a0-8f78-f7d7717b2082;
 Thu, 01 Apr 2021 14:27:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9CFFEB1BC;
 Thu,  1 Apr 2021 14:27: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: 6abfc8e0-307b-48a0-8f78-f7d7717b2082
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617287271; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=uqjRHjMJw8JbA2dlMGmgldrt6ty/trqzJ0kd0jTS3x0=;
	b=T6OHUx5p4RbTA9CYGUOWblyujMjReWbQ0qY2dzRovS2e9vKkFK2OgTk2yLQNg8i9iKwK5N
	v4Pn3LeN8YcI6VX8SeV2py/tn7eJWdebUY9nQTBDVsc0PiVHIBGyXuiSt3bYVJZImsd3ax
	bUvpux0c5QaMfyh8VyHOoj7Xn9jp/1A=
Subject: Re: [PATCH 00/23] further population of xen/lib/
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <27916fa0-9ebd-a49a-bbb9-1ef47c2b5bf6@xen.org>
 <4f745d03-baa8-e9e6-692c-f9c9f401b766@suse.com>
 <6a38f0db-938b-fd13-48e6-6b538c85fe42@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d9a21b2c-8eca-027d-5672-e5d9dfaaf4b7@suse.com>
Date: Thu, 1 Apr 2021 16:27:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <6a38f0db-938b-fd13-48e6-6b538c85fe42@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 16:04, Julien Grall wrote:
> Hi Jan,
> 
> On 01/04/2021 14:43, Jan Beulich wrote:
>> On 01.04.2021 13:54, Julien Grall wrote:
>>> On 01/04/2021 11:14, Jan Beulich wrote:
>>>> This is to dissolve / move xen/common/lib.c and xen/common/string.c.
>>>> One benefit of moving these functions into an archive is that we can
>>>> drop some of the related __HAVE_ARCH_* #define-s: By living in an
>>>> archive, the per-arch functions will preempt any loading of the
>>>> respective functions (objects) from the archive. (Down the road we
>>>> may want to move the per-arch functions into archives as well, at
>>>> which point the per-arch archive(s) would need to be specified ahead
>>>> of the common one(s) to the linker.)
>>>
>>> While I think it is a good idea to move code in xen/lib, I am not
>>> convinced that having a single function per file is that beneficial.
>>>
>>> Do you have numbers showing how much Xen will shrink after this series?
>>
>> In the default build, from all I was able to tell, there's one function
>> that's unused (strspn(), as mentioned in the respective patch description).
>> I don't think I've been claiming any space savings here, though, so I
> 
> You didn't. I was trying to guess why you wrote this series given that 
> your cover letter doesn't provide a lot of benefits (other than dropping 
> __HAVE_ARCH_*).
> 
>> wonder why you make this a criteria at all.
> 
> Because this is the main reason I would be willing to ack this series. 
> This outweight the increase number of files with just a single function 
> implemented.
> 
>> The functions being one per
>> CU is such that they can be individually overridden by an arch, without
>> pulling in dead code.
> 
> I would agree with functions like memcpy/memset() because you can gain a 
> lot to outweight the implementation in assembly. I am not convinced this 
> would be true for functions such as strlen().

strlen() is actually a pretty good candidate for overriding, and
we may even want to on x86 with newer hardware's "Fast Short REP
CMPSB/SCASB".

> So overall, the number of functions requiring overriding will likely be 
> pretty limited and #ifdef would be IMHO tolerable.
> 
> Although, I would be OK with creating a file per function that are 
> already overrided. For all the others, I think this is just pointless.

Well, I don't see a reason to special case individual functions.
Plus any reasonable static library should imo have one (global)
function per object file in the normal case; there may be very
few exceptions. Drawing an ad hoc boundary at what currently has
an override somewhere doesn't look very attractive to me. Plus
to be honest while I would find it unfair to ask to further
split things if I did just a partial conversion (i.e. invest yet
more time), I find it rather odd to be asked to undo some of the
splitting when I've already taken the extra time to make things
consistent.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:31:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:31:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104554.200100 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyMR-0005K3-Mp; Thu, 01 Apr 2021 14:31:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104554.200100; Thu, 01 Apr 2021 14:31: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 1lRyMR-0005Jw-IX; Thu, 01 Apr 2021 14:31:51 +0000
Received: by outflank-mailman (input) for mailman id 104554;
 Thu, 01 Apr 2021 14:31:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRyMP-0005Jr-Ku
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:31:49 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2663b5a0-b1de-4a6a-b546-eb394d5d2eee;
 Thu, 01 Apr 2021 14:31: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: 2663b5a0-b1de-4a6a-b546-eb394d5d2eee
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617287507;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=90w5jA4jbGiIkJMuDTVp0iNzjgY4wW+DiB2ka72dg18=;
  b=fzFuVhVnivcV0fmZV76AQQCB9xwImubEZDZkgUfDqGe8t/P+OdVEYTjM
   H/8L/lekTegA8nZWX2Fz6gFCYQtblve8iARXIBLaEkb98n/KcRPbV7QKz
   QkB7EvXs1CuCJ50FM7jeOZVcMwhi8awkvX4rHjj+PeIgUya+vOUQhj8zq
   g=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: D2Qlt4VVMjKNS4+eJIO14HGPMG9+zWq6igtFUyICVMFCsYSNPC9Ewf/P3V68zhDoRx11Htna8i
 QnvXC+mqaTo98/nd0fH0QDisGZqq1tOf/tTtXpe9FcBMCmOUUVCES7Pj8iJBYw0CuV71ZVTwtN
 EPNHDb4LvTn6K1HmlX5SiUD55lQHnoFTTzvyUloArHAolVEPKIavQSkMe2pcVRx9+2DXapXy1d
 2LBFhI0pVKOdbIiqT+UNwPlZs/+OXt/zKXfC9KraQu5ToIL4eglpoMxBKeRWNnkit1qlMT2QRg
 970=
X-SBRS: 5.2
X-MesageID: 40706608
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:PjZ3dKvKpLCOqbtp0uTmAO/V7skC54Yji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjLU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Q26Y
 5JSII7MtH5CDFB5vrSyAOzH888hPyO9661jenTpk0dNT1CQadm8gt/F0K/Gkp5WAFJCfMCZe
 Ghz+BAoCetfmlSU9SjChA+LqP+jvDotLajWx4JABY79BKD5AnF1JfWGwWVty1uNw9n7qwl9Q
 H+8jDRxqLmiP2jzw+Z6mm71eUupPLE6v9uQPOBkdIULDKEsHfjWK1EV6eZtD445MGDgWxa9+
 XkmBsrM8Rt5365RAjcznXQ8jLt3zo053jpxUXwuwqEneXCWDk4B8Bd7LgpESfx1ks6sNlwlI
 JN0m6J3qAnaC/ooSXn69DEEyxtj0q/yEBS89I7sno3a+sjQY4UibZa0FJeEZ8GEi6/wpsgCv
 NSAMbV4+sTWU+GbljC11MfjOCEbzAWJFOrU0ICssua33x9h3Zi1XYVw8QZgzMp6I89cZ9Z/O
 7JW54Y241mf4szV+ZQFe0BScy4BijmWhTXKl+fJlzhCeUhN2/SrYX0pJE4/vujdpBN7JZaou
 WObHpo8UoJP27+A8yH25NGtjrXRn+mYDjrwsZCo5djvLnxQ6fqLD2DRFgin9DImYRePuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFM0Z0+xLGG6mk4buEMnHp+bbePHcKP7GCjA/QF7yBX
 MFQXz2LMVE5Ua7R2/gjHHqKjHQU3262ag1PLnR/uAVxoRIHJZLqBIphVOw4dzOLyZDvKwwdE
 53O6jmjau/uGmz8Q/zniRUEysYKnwQzKTrUntMqwNPGVjza6w/t9KWfn0XwGGKPQZlT8TdEB
 dWolN+/a7fFe3U+QkST/acdk6KhXoao3yHC6oGkqqY/MH/Z9cTFZA9QpF8Eg3NCj14kQtns3
 14dQcBX0PTfwmezZmNvdgxPqX/f8M5qBq3KcRUwEivz3m0lIUKfD8neBKAFeSQmh0jQjJIgE
 YZyd5jvJOw3RC1KWU+h+wkNkZrc2r/OsMKMC2MeJhUlrf3eAt5UGeNgniAhwsuf3fxnn9i+l
 DJPGmaf+rGDUFavW0d2qH28ElsfmHYZE5obGtm2LcNY1juqzJ20eWRYLC03HbUYlwewvsFOD
 WtW0pnHip+g9S23gWSgjCMCDEvwYgvJPXUCPAmf6vI0n2gbI2OmqduJY4iwL91cNTvuPQMS+
 SRZkucKy75Efog30iNvWk+URME20UMgLftwlno/WK41HkwDb7bJ0lnXagSJ5WZ43L/T/iF3Z
 1lhbsOzKKNG3S0bsTDxbDcbjZFJB+Wu2KwQu0yoZ1fvK45ttJIbuzmeCqN0GsC0AQ1Lc/ymk
 9bXb9y56rZPJRzO8MVYCBU8zMS5ZyyBVputhazBOAwfVsg1SCGe9yI5qfFsropDAmKohDqNV
 yW7i1a+LPEUkK4pM8nIrN1JX4Tbk42rGlm9qeFcYbbDQ2xbeFN/FagKBaGAc1gYbnAHa9Vtw
 pw5tGDgvSeeCX50h3BpDcTGNMxz0+3BcepRB+WEeFG89amKU2Bj6uj7sm0lir2Q1KAGjQlrJ
 wAc1cRYMRFgiQji4Ny0jHacN2Jnn4Y
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40706608"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jPBM5Tc+T0dH8I+EGBmklATit0fKTH31R+ewPuNlWOHRYmBThTs4VlNtg1/tE0fjbqy1ZkX4aNcOMw0orRTE7QF/LYpmnIl/75YWCNVhARo5eZ0PKQncjk9Mfp+SzSPAPeaNR7c0/CFPRa97ht3Y5TOQ3Zv4GeRIpKr207VKpS5/DvppVu1yudmcc2nrnJnUYRLkx6D3uJpiSskyfXDcN6zC5r6mUTQxz9J2oMwZC74ZwuOFlkrSDCR/zc45N4KvJVf7QeHXd3VfRFYVUtFrjZ+vDh2zLixGYwLI4M2eKkqNzYv0pUvmpxRbPNZXfoGBjc/oXrlQw3cXAIC8GwXqqA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=udhhZcGEPQ7SLgOVIOZqqyiA5alT0Gfr+eK9vE2UNaM=;
 b=KSXejOBa0XbQQKU0Q4R/IpPjyUTR9Tzq4GuAYG498djAjnGYk3DHML+3hI23FAwvHiPJTM5jwsa7drtm55Tqi4LsYVuBFtZoz8mC7HECFIhkmnI83LOszwXdush7WWPMFAzcjBt8TRYIBSF0siaAmnWUSUdCfDtFihNk2YBLCFuEIGYd79ZDC68pKiMXlSDeWW8K8dAJazpsI3SJPQCsJP8CAeHAYPXI/L+ylBDTXT75v8Dh90KQMT1BJaK4r1Dc7N7Aq+v5rRPkL9abWlw75ChmQ8Y4yR6z8ItC4Ue1ID5HcXwtTTPLFv3Dw9+l6+rxxZBZ2pnnAEmlVy98xmdDIQ==
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=udhhZcGEPQ7SLgOVIOZqqyiA5alT0Gfr+eK9vE2UNaM=;
 b=VAy61kT7OJriddVvmdS5ToGf4dhI7gIkehXRPILs3qBJWk2sHJjxMewWEI3orbDZKyMbdMWac+RvqvLRIgNCBp7hCFMMWBiZ+sgff8MxJOwwTHu9oqTl5EvUxKtNPoibkkwCv954qu896qrGK3n3CagrFblbcOd3UCV4F6lY+YM=
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: <46d83c92-0b06-fc09-4832-7a7d7935d5c2@suse.com>
 <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 5/5] x86: don't build unused entry code when !PV32
Message-ID: <eea7162f-bbf8-bce9-b989-2a44fe10fa99@citrix.com>
Date: Thu, 1 Apr 2021 15:31:38 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0146.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:188::7) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6782c09e-7f39-4750-d70a-08d8f51adf53
X-MS-TrafficTypeDiagnostic: BN9PR03MB6028:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN9PR03MB6028BDD8C12FBFC90F3D07D5BA7B9@BN9PR03MB6028.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: S3+8g7kzoaJ07koB5UR2YlUJyntasq+eyz+Jfrsgx8ZrCAjP+i7vzs1pRPJBmPyMikBm68dt1nXyGfi4tE8d4KKhfqnJWW/gxF9+mJeFqBhGxlJ+lhZT4NF5SDbqt7upYtGyUonbc4ride88t1CG8gu/3KD10fV8tGec02+Vv6jXuHZifTej58cKOMpRAwX2PjXjUHodKdJvQe2vGCC7hdw2dn4f0EMjmdnkh1stZoAuZGRi53HwAxnc8laE38CjCMNP/yf2ooG86o7m2+/0zlibLbMfkl9Mp1Ue+cyInXKN4mcFUe7CurS2cHkplyaSCivLzXn2NhQV13Gtq6PP2E4kyxLQAYI4axW3IhEYuA8JOx0GvA3ooHrGGgr6rl0jNUY/3ELic0HRuyqQC5rjVoxECg7W9qiEefXxm3Xw3eYNf0Q9UIkJ/LMYeIs9tpIuvodU5AdvXXJohhN2WkDDevDayBdMQn3000BbIkDfheMjdZXEDBAW0GPvDTHJBJv4MGJHgQwSNz1DEnDV6ZszU+fkt51oJtqxrDHSbBMSQRQ+Q+9IITUyiNumNdSk+x1U5oJnV/7401JF2o8Bznh8mSJRKSqyH5772VPxaDtNJI/DivOBkyrTl7zYxF4jc2amwlbjM49GxdQwi1QLi8znZEPGLFAhrxj/FoiroWtpUdX2NmUwMHMIDNOCEEYp//DZzg+N2N/rvM3MK030tRbPJPysptcUPG1zwm68HC0DOic=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(39860400002)(366004)(376002)(396003)(31696002)(6666004)(38100700001)(54906003)(110136005)(16576012)(86362001)(316002)(16526019)(186003)(36756003)(5660300002)(66476007)(53546011)(66946007)(26005)(66556008)(4326008)(8676002)(8936002)(31686004)(107886003)(2906002)(956004)(2616005)(478600001)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?b29nODBFdDNwa1pONDlxeTdTOS81MXRGcExxd2dhUzRHbUVIajQwQXJldTQz?=
 =?utf-8?B?VGJrUHFWMkIyY3VLM0M2QS9wZStrdUVOaEY5TFdJYWZXY3NJOEF6U0ZQWUxY?=
 =?utf-8?B?MTVXWHZVUzVlQ3AyaUphL3l1QVR3VkJWdXlHbTZ6a0NaUEZXUWszRENpbG54?=
 =?utf-8?B?WVJnUngzYUpTbmdmbFZrajFvQnBNNXQwYjZ0aWsydHZwd2pSdDY4R1VvWEpH?=
 =?utf-8?B?R1BuS0I4SitsMzNhc1RRUlZOZFYwUXJEQlhmUGNER1JrZ2hRU3V1VHhyR2xl?=
 =?utf-8?B?N3NjcUZoZmJzYVh2QU5vcGczUVJvanBHTmtTSUl4Yk1JRm5QRzBlUElzWlE1?=
 =?utf-8?B?eWl4WDlydVJEVHBOM1I3RUc0ZVcvK0dMekRXQ0o1Q0kxd1BJdGljaCtJZ2ZP?=
 =?utf-8?B?TDE0TWFFTFZUVVFtWDlOdWw3ZndNdzQzZnVzbEltOVR6YWZlcVZXSGUyeW5R?=
 =?utf-8?B?TjM1VHZXOWZwQVBDSVdjK2FVVDBtU2dtT0s1bnRXMHRrTC9PbGxiRVdDMmJL?=
 =?utf-8?B?cFNGSVBMc2FONUJ1N1VPZTVEYm5sZThPTi83RktPMXVvSy9OSjNscEJsRTVW?=
 =?utf-8?B?c3REOXJQcEZ3U3NBb3BvSXVtbUZHRGdKaVdMMjQ1RTc4aUpaWkM4R0YrZWtx?=
 =?utf-8?B?ZUlWN3hnZjR5KzZ4ZGtsc0FVVFJvVGFzSWwzZjEwdllObGJSUVVaL2JIcGRo?=
 =?utf-8?B?bXI2S2dtdTNranhzUUxwSWNoQ0RTN0YydWdJeGo2NVNvQ1h1Q0hqcDR5cUY5?=
 =?utf-8?B?dGtpcDUxSkpQVW9IWlEwa0dDam53L2NFYTJSKzlIdnorUU9kUHJVSFVRZVF0?=
 =?utf-8?B?VGttVGRpVy8wQm1mREd4aTRGTTJHK05hWXRWSWtLdGdGM1p5OGE4ajZRalF0?=
 =?utf-8?B?REp3ZTk3M0NSZFBtRmNaSFM0NmJVYzBpYkZSczB3Q1dkT2Y4dVk5TEZmOVEv?=
 =?utf-8?B?Y3c0eEc5S1ZISFplT3lkSjM4US9nNXdFeTRJTE15dlpXcXY4SXhOSWp6WjRa?=
 =?utf-8?B?aGN3REpxVXZYM0RYR25vbmVoUE5qNkNpaG54RVgzQ2R0bUtkS2pJZ0JZM3Bu?=
 =?utf-8?B?MFlSa2d2bkpvUEZtd0VYV0t2M0dDaXhiQWZGNmxzczByaUh1Y3N1ZXBKUU9m?=
 =?utf-8?B?TjF1d2NnSU01ZlZiS1g0SkUrcml4UU9manB3UmNVbW1DRmk1V2RQeXZoSlE1?=
 =?utf-8?B?VFhoNlZVcER1emJES0s5Um92ZUgzMlVMejR2MWd3RmNMSHNiN1ZxM255NGJz?=
 =?utf-8?B?NHhrelF5ME1sRVZxZHY4Z0FWRlhST0tUSmlyQVJhNFJVTGRUVUpGS29uRGs2?=
 =?utf-8?B?MU1sQ1o4QW9ZL1FEZDhUdWlZUjVSOTlqOHRJMnB6WmQ4aGZmVVdhYmluWmQy?=
 =?utf-8?B?ZEtBclRHcjlGNUNidmEvcmpWUHIrbUdNMUhKUFdYOHd4b09Kb0tCUDV5YWk5?=
 =?utf-8?B?MXVlcVgvc0g5bHU0V1FHYzRZS1BzU1FoendoR1dNRGRTNHBQczFINFY3RVRJ?=
 =?utf-8?B?NC9JZThTanJpNXVaV1FsWlMzK2pnTDNPOWI0VG54eUJqWUhqN0RVcXhidmF0?=
 =?utf-8?B?aUcwQWVDbHRLYW1TQnpkMldncVdsMHJCSE5yWklGVFlPdEVLOE1jZEZDNUVi?=
 =?utf-8?B?YXUzcGdNZ1pIQ21Qd1o1V0hGbDg0dlQ4cEwvWkdKNnNsVTVINDJ0TWZVUmRK?=
 =?utf-8?B?SVlKbEZReDV4ejNGOHFxNnN4eXVET2Yvc2VhNjFLdkh6Vnc0S0drTTNWVm8z?=
 =?utf-8?Q?3e2t2Jt3/I1QWc5256afKE/5h4znDSyHzNtPL5c?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 6782c09e-7f39-4750-d70a-08d8f51adf53
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 14:31:43.9052
 (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: MlFm3YKNS0TxFTRcjkM6dZlzCF2z/veoUOzf0EcamD53ZzNrNTZxvpdwtC3Vm1JOt73wWghzyCbUOMkSVeKJ1w5H9BCZ5WjeBSsAQKUN50Y=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6028
X-OriginatorOrg: citrix.com

On 25/11/2020 08:51, Jan Beulich wrote:
> Except for the initial part of cstar_enter compat/entry.S is all dead
> code in this case. Further, along the lines of the PV conditionals we
> already have in entry.S, make code PV32-conditional there too (to a
> fair part because this code actually references compat/entry.S).
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> TBD: I'm on the fence of whether (in a separate patch) to also make
>      conditional struct pv_domain's is_32bit field.
>
> --- a/xen/arch/x86/x86_64/asm-offsets.c
> +++ b/xen/arch/x86/x86_64/asm-offsets.c
> @@ -9,7 +9,7 @@
>  #include <xen/perfc.h>
>  #endif
>  #include <xen/sched.h>
> -#ifdef CONFIG_PV
> +#ifdef CONFIG_PV32
>  #include <compat/xen.h>
>  #endif
>  #include <asm/hardirq.h>
> @@ -102,19 +102,21 @@ void __dummy__(void)
>      BLANK();
>  #endif
> =20
> -#ifdef CONFIG_PV
> +#ifdef CONFIG_PV32
>      OFFSET(DOMAIN_is_32bit_pv, struct domain, arch.pv.is_32bit);

Even if PV32 is compiled out, the is_32bit field still exists, and is
still necessary for crash analysis.=C2=A0 XCA parses this offset informatio=
n
as part of dissecting /proc/vmcore.

It's one single bool in a fixed size allocation which we've got plenty
of room in.=C2=A0 It can and should stay to avoid impacting the existing
diagnostic tools.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:37:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:37:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104557.200112 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRySF-0005Uo-CC; Thu, 01 Apr 2021 14:37:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104557.200112; Thu, 01 Apr 2021 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 1lRySF-0005Uh-8x; Thu, 01 Apr 2021 14:37:51 +0000
Received: by outflank-mailman (input) for mailman id 104557;
 Thu, 01 Apr 2021 14:37:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRySE-0005Uc-BS
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:37:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e281673a-7101-4cf3-854e-da29a638444f;
 Thu, 01 Apr 2021 14:37:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 63CB9B270;
 Thu,  1 Apr 2021 14:37: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: e281673a-7101-4cf3-854e-da29a638444f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617287868; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=sSntaQihOmKqz4Namw9j0NVOsW9jyy3UTXyERn521pU=;
	b=QBirR6L3b4FkkZWtnd9p6sYpq54TR10QYxuBVXvWiJQ/PBLNP7KJ0//RxNDk6WpkYHConO
	YOciCzF0wpBUtPiuhNtqkwbvu2pUtZAj6IFJToCYjZO3uTxMQOUYp6tMBeaRr45wAieA8r
	WkPniQ6z8s4YkzjD3ClKq09kcRlQ6es=
Subject: Re: [PATCH 5/5] x86: don't build unused entry code when !PV32
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: <46d83c92-0b06-fc09-4832-7a7d7935d5c2@suse.com>
 <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
 <eea7162f-bbf8-bce9-b989-2a44fe10fa99@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ba34f9cf-0815-9671-a59d-04f16397ad90@suse.com>
Date: Thu, 1 Apr 2021 16:37:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <eea7162f-bbf8-bce9-b989-2a44fe10fa99@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 16:31, Andrew Cooper wrote:
> On 25/11/2020 08:51, Jan Beulich wrote:
>> @@ -102,19 +102,21 @@ void __dummy__(void)
>>      BLANK();
>>  #endif
>>  
>> -#ifdef CONFIG_PV
>> +#ifdef CONFIG_PV32
>>      OFFSET(DOMAIN_is_32bit_pv, struct domain, arch.pv.is_32bit);
> 
> Even if PV32 is compiled out, the is_32bit field still exists, and is
> still necessary for crash analysis.  XCA parses this offset information
> as part of dissecting /proc/vmcore.
> 
> It's one single bool in a fixed size allocation which we've got plenty
> of room in.  It can and should stay to avoid impacting the existing
> diagnostic tools.

I'm afraid I don't understand at all: I'm not removing the field.
All I'm removing is the entry for it in asm-offsets.h. I'm also
unaware that the offset information gets added anywhere in the
binary, except encoded in instructions. If a tool needs to know
the offset, it ought to parse debug info?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:41:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:41:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104561.200127 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyW4-0006Nk-Ug; Thu, 01 Apr 2021 14:41:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104561.200127; Thu, 01 Apr 2021 14:41: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 1lRyW4-0006Nd-RZ; Thu, 01 Apr 2021 14:41:48 +0000
Received: by outflank-mailman (input) for mailman id 104561;
 Thu, 01 Apr 2021 14:41:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m73y=I6=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lRyW3-0006NY-D2
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:41:47 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f39dbf3d-bdac-4c02-a137-b50b724c5aea;
 Thu, 01 Apr 2021 14:41: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: f39dbf3d-bdac-4c02-a137-b50b724c5aea
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617288106;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=/X2Hzn0CPcdcMW36/7RyKPJCS9nBRAhgqyqiVCc7d1U=;
  b=bmNIAMO/fG4bV7y/OUnnSgr5eEFmcqZMNlv6LK4MdmvwGY1oM/Lh630C
   d+qKqXnsgAJQJ2mycdbMpaycSV4IbqrruGbXHUkpUk+EuncdrJrEKj7lh
   FCV0rVDbWWyu4c/iKf6B5yhm760z2/PSaGOFBXwuAOz2lm/lP1MpK7+4g
   Y=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: OmOanxswyiBeYzkZgXhdPixdxdUIhuiYcDszPZBaca1CgrtMsmGNnE5qxpxibWyVLl7xEiw+zN
 tjgjFSMk344gEVQlZzx/yvZGFL+SjSrc5RM8yM8ykIA/7LSMQOnKW8imxg8pXjacw/hp58Lv9l
 PjOyPIZmcI88aL7L46ZIen2P9Q5JULXMtz7VMUJ4MDOs7Ye71tkI4ErZ/shEPfCwza9h0Nndjp
 sU6CcGNpopRdRdq6FcY/MgCKnlMly50pn7NgW7P6GT+5qwLbrF/1fa1JshOt1HgV3LHNZ/pHx7
 N4M=
X-SBRS: 5.2
X-MesageID: 41083627
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Hmhh/qkRISdQzE4Hz/+EPcz1h+rpDfOcj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN9AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 1dWoBEIpnLAVB+5PyQ3CCRGdwt2cTC1aiui/vXwXsFd3ATV4hL6QBlBgGHVmh/QwdbDZQ0fa
 DsnfZvjTymZHgRc4CHHXEDRefOvJnmk5jhbB4ACXccmUOzpBmv76P3FAXd4wcGX1p0sPwf2E
 Xmsyi83KWstPmn1gTRvlW+0716kMbso+EzYPCkpdMSLlzX6zqARIMkYLGauSBwnefH0idSrP
 DpgzMNe/t+8GnQeGbdm2qh5yDF3Cw143HvjX+06EGTxvDRfz4xB8pfiY8xSHKwhCQdlepx36
 5R02WSu4A/N2KnoA3G+9PKWxt2/3DEwkYKrO8Jg3RTFasYZbNBxLZvmX99LZYaECr2rL0gCe
 llZfushsp+TFXyVRDkl1gq5ObpcmU4Hx+ATERHkNeSySJqkHdwyFZd7NADn18bnahNBKVs1q
 DhCOBFhbtORsgZYeZWH+EaW/a6DWTLXFblLH+SG1L6D6sKUki95aLf0fEQ3qWHaZYIxJw9lN
 DqS1VDr1M/fEroFImo0IBU9AvOBEGwRy7kxM0bx5URgMy8eJPbdQm4DHw+mcqppPsSRufBXe
 yoBZ5QC/j/aWT0H4JE2BD/RolSJXESXNZ9gKd5Z3u+5ubwbqH6vO3Sd/jeYJD3Fyw/Z2/5Cn
 wfGDj/Tf8wrHyDazvdulz8Snntckvw8dZbC67B5dUez4ALK8lJuggRglKp+9GTJVR5w+kLVX
 o7BImivrKwpGGw82qNxX5uIABhAkFc56ilVWhLqw8MO0b9aq0CpN2bZGBX0BK8V19CZvKTND
 Qai0V8+KqxIZDV7zslEcibPmWTiGZWuGiHVI4GmqqI5d7sf5QxCppOYt00KSz7UzhO3Sp6om
 ZKbwEJAnLFHjT1kKO/kdg/H+fEbeRxhw+tPO9ZoX/Srl+nuMkqX3cXNgTeFvK/sEILfX50jk
 c027IDiLCA8AzfU1cXsaAdChlwT0i5RJhBFx+IYY1InKuDQnAMcU66wRqAix8yfWL28V41nW
 KJF1zZRdjCHkddtndE0qzj7VNzcSGHc1htb21h2LcNaVjuqzJ91/SGabG01HbUYlwewvsFOD
 WAejcKJBhyrurHoiK9iXKHFX88wI8pMfGYBLM/c6vL0nfFEvz9qYgWW/tV9o1iLtbgr6sCVv
 +eYRacKHf9B/ky0wKY4nYjNy8ckghSrdr4nBnk5nO/xngxHL7bJ0lnXagSJ5WE9Hf/Lsz4o6
 lRnJYwp6+9I2/xYtmJxeXeaCNCMArapSqzQ/szoZ5ZsKouvNJIbtDmeCqN0GsC0AQ1Lc/ymk
 9bWqh97bzbMoJkfsAZeUtijy8UvcXKKFFuvh39A+c4c11okmTSOMmR5aHU7bUoGU+MqWLLSB
 Gi2jwY++2AWSSN1bQXUf1tZWtXbVUx83Rk8qeJcZbKBACjauFE+x67PxaGAc5gYbnAHa9VqB
 Bwp8yMlauQcSHz3QjLpzt1Iq5U6Q+cMLGPKRPJHfQN6sCwPFSHn7Cj78GyhirmUDfTUTVnua
 RVMUgLKtlZgjYsjIcrwjG/R6z+rEUiiUZf61hc5y7Q85nj5nzaE0FAORDYhZsTXSA7CAn2sf
 j4
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="41083627"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Onzlnr8I7O9M67fvOGY/bKshC+JpdakDZUfirwu0JVtKy3YgMeWvFADVND25oUF7aWu6HRVNejNnGAig8rVmP0aHp8O2p4Ml1ZK+mU70nXt/2VXILA6Tg5IDxHDRWfG3wVWCYJcFv+sACRwzYaarQNJ9FuxHpJGi7tvuq+720RIcFjfFdCEaAVmbe1fYwJtYbopPPtY+TDitXHl2+hwV/sOugz+Cvu9pYgTwuJxoid0FXdPfxLt7gL8jmSm3vxzgE7w0m1j8DwqP3airddzKTc0DcKH3PQWmrx6ZVgCC/pFn2JOUwW5qr5R26gUc5o79issRUDlz3JOXx4Ik/bTuTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WIBgrf8rWSxNvI4UbkFBbnOvBhTRTt+1mPDmdjgQG8U=;
 b=Re0IFBc9MLO39ckJWRsSDgVMVKJpYryrLKgBRZW2wgcw210P+TnVgnNoG3BRCe+fd/0V8P+YcjI6LIpV7Wg91KDVItjzst/BlrBqg4ZWkahJxEQOMTlkFt8yyoXGBTaDYWAzO+rMuDAdPFvldOui/K2MnToGArxu0Om4laspWKGKWXiB+/47ozk446cNiYe2jHq5bfL0Rmowle6GK7uEB/HbPmGitizOce0K2qVjcIetBBrch6EqeIX4EapUIWM/m+DCSqlwHEGmxMg4uq5ZoGukL4QZ+Vo7BXFh6SuBtq/r3VYhxu8JSyV1JmcZmwTzu9tBRJlaNlD8SkU8A5lu+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=WIBgrf8rWSxNvI4UbkFBbnOvBhTRTt+1mPDmdjgQG8U=;
 b=rddeDgrEBwWuNC/JbI6Q84qToonkpSAWgMOCvkEzcSp/WHIIVGt7tW7/NOt4rWIbxxZ/yUKa79MD0xs4wLOPtyGLrYQ8rBLaT5itdWCjYdUf9O6ppzPpuZAN7wFuCK3Q1zfxOyxKMcmIJDsuvJvELcbE0LUokMckbokeWOFvJug=
Date: Thu, 1 Apr 2021 16:41:36 +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>, Paul Durrant <paul@xen.org>, Wei Liu
	<wl@xen.org>, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH] x86/viridian: EOI MSR should always happen in affected
 vCPU context
Message-ID: <YGXboI1bAGcE67LT@Air-de-Roger>
References: <20210401102252.95196-1-roger.pau@citrix.com>
 <b8fcbe35-2c9d-fd8a-0200-90d9c1039a27@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <b8fcbe35-2c9d-fd8a-0200-90d9c1039a27@citrix.com>
X-ClientProxiedBy: MR2P264CA0019.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::31) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3c3f9391-b398-4d43-2f60-08d8f51c43e3
X-MS-TrafficTypeDiagnostic: DM6PR03MB4140:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4140E167F09B081EBA0297138F7B9@DM6PR03MB4140.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 9zIppC7hW8avchGJWVOpPbHjSG7FEC6OwmJTsAaS78cFo/G/rOuUNMW1q6oQtSlCwEFmuiMQxjTomqlX+xxCJheiDl86+kFLQSP0WMNXqN17ZwSLrZFTrH4hosOdlJglbClOT8RI7Yt9AWJL3LLS2f8mKRPyz2ZmdozrrHej7UdHuQuk+fEnPg+mv5ReW70AlZbHw/mjkk+U35ZeWxtYlewHkEGmpjKwhxiMV2z8J+WP4x0lh7OU4LvieZK7TZj98m9IuDtiPyp5UVbOUMqBbmoVoSJGZaWBBCg5dEvPCpOyqR7SoVqPCCYsRhYBoPi/HAI5nF3raR46ujXFQKcrI6qpP2RH11SWksgVVmSaZfVT8av99BGeQ4um5sAK4DUqT8sJt3daalLNHNi3qs7mXJL07PkdvbhBWZedx5iqRd0iAJVfXeBTOZyfQ6Oha3tD6Zm/zBbNcTLT9ClqQR+Tws8ogE+3PKt2ZCr5hCwfGP/QOe4Plkv4iF3EprkphdTTZZLTX9h6jipDPpxqdwjzq8Bp5Db6ZR3To4ULIDJVGP0RxGyIFZ7KK3iSrdzsBnEIs7aqo8A+0Ye99MDlU/cTZdeKUyMqIey7LJb1NuJx/0ynMe/XQVlTu/YwWdZaLTzYQzGGyzVbGybiBCnnsCJyx+OWGvn1W7chQ8EEP10+rkQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(396003)(376002)(346002)(136003)(366004)(39860400002)(6636002)(8936002)(16526019)(86362001)(83380400001)(54906003)(66476007)(66946007)(478600001)(2906002)(8676002)(6486002)(53546011)(6666004)(6496006)(4326008)(33716001)(5660300002)(85182001)(26005)(956004)(9686003)(186003)(38100700001)(66556008)(6862004)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?ekNWSHU3dnlLbWZkUVc4UT09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3c3f9391-b398-4d43-2f60-08d8f51c43e3
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 14:41:42.1728
 (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: KZ1P7iL0e1pcEaPOlSW8onqgI87V1Fvi2LbHHFUSCHgNgu+TyI3GaapdPYMDd8v367e0P3HHqqJ3dx4hQJ+65A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4140
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 01:44:59PM +0100, Andrew Cooper wrote:
> On 01/04/2021 11:22, Roger Pau Monne wrote:
> > The HV_X64_MSR_EOI wrmsr should always happen with the target vCPU
> > as current, as there's no support for EOI'ing interrupts on a remote
> > vCPU.
> >
> > While there also turn the unconditional assert at the top of the
> > function into an error on non-debug builds.
> >
> > No functional change intended.
> >
> > Requested-by: Jan Beulich <jbeulich@suse.com>
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> >  xen/arch/x86/hvm/viridian/synic.c | 11 ++++++++++-
> >  1 file changed, 10 insertions(+), 1 deletion(-)
> >
> > diff --git a/xen/arch/x86/hvm/viridian/synic.c b/xen/arch/x86/hvm/viridian/synic.c
> > index 22e2df27e5d..e18538c60a6 100644
> > --- a/xen/arch/x86/hvm/viridian/synic.c
> > +++ b/xen/arch/x86/hvm/viridian/synic.c
> > @@ -79,11 +79,20 @@ int viridian_synic_wrmsr(struct vcpu *v, uint32_t idx, uint64_t val)
> >      struct viridian_vcpu *vv = v->arch.hvm.viridian;
> >      struct domain *d = v->domain;
> >  
> > -    ASSERT(v == current || !v->is_running);
> > +    if ( v != current && v->is_running )
> > +    {
> > +        ASSERT_UNREACHABLE();
> > +        return X86EMUL_EXCEPTION;
> > +    }
> 
> The original ASSERT() was correct - both of these are easily reachable
> in control domain context.

I'm confused, if it's reachable from control domain context then it
shouldn't be an assert?

> If you want EOI to not be used, you need to raise #GP from it, but that
> in principle breaks introspection which really does write MSRs on the
> guests behalf.

Looking at hvm_msr_write_intercept I see that indeed introspection can
monitor an MSR and defer a write, but AFAICT the postponed write will
be performed in guest vcpu context as part of
hvm_vm_event_do_resume?

Also AFAICT there's no way for a control domain to write to this MSR
ATM, as the allowed list in hvm_load_cpu_msrs doesn't contain
HV_X64_MSR_EOI.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:45:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:45:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104566.200139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyZg-0006YV-Ix; Thu, 01 Apr 2021 14:45:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104566.200139; Thu, 01 Apr 2021 14:45: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 1lRyZg-0006YO-FP; Thu, 01 Apr 2021 14:45:32 +0000
Received: by outflank-mailman (input) for mailman id 104566;
 Thu, 01 Apr 2021 14:45:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRyZf-0006YJ-78
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:45:31 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9de1d262-dbe7-48b7-a6b9-abc347d03faf;
 Thu, 01 Apr 2021 14:45: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: 9de1d262-dbe7-48b7-a6b9-abc347d03faf
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617288330;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-id:content-transfer-encoding:
   mime-version;
  bh=+SMCs+kCKLmK4bYTHtUZXrRzZSCtcl8QipRQvnQOyGU=;
  b=YmXiZRu2fK7s4gSFEGHQDwxqZr4iaaUnw3zTQubYugKmsDKPlLHcze/S
   a+sQxSBBDLnjtA2PtvaL6hfoKEj/T/jy9OjJVT0M92lXDv3TF5IIU4LWI
   yCjo5tqWjDRpc6mo8Op6Jn6P3NJs/I7+Qk45xIC+BbWDIhTgk7MK0KXtX
   Q=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: uuWrwnbwGXfdGk8aKpRbwoiGe2/X46ihQTz+w1ZsoXp75cdAfpNd36WwGhbmoyWA3pptt8jZ9y
 cn61V0LhG2qa0w1pIHZDgQFDmf+0n6vOCX1UiuKc3+pORo9ZVTqd9LUg3sFusaO81ookd/fbd6
 vBh2XlDJwuOKKfbHIogTTMPWbzpChlnR+HEKISeWUreuRPc1MUSGuBnZ2WZG6mHcGHtOLLS9Cy
 QPEr8jbBOjRGMuC2g8a2jnp8S/ndDKs8+rkqlt0JZScyvhjkm0tHbFVHPa+cjo4MY+5yIWG5Wp
 wVA=
X-SBRS: 5.2
X-MesageID: 41083903
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:IP1c4qMh5oL3w8BcT8P155DYdL4zR+YMi2QD/UZ3VBBTb4ikh9
 mj9c5rtyPcpT4NVBgb9eyoF7KHRRrnm6Jdxak0EfOcUBL9uG2uRbsSjrfK5zH7ASXx+qp8+M
 5bAs1DIeb9B1R7ksr2iTPQe71LreWvy6ywgPeb8nEFd2FXQppt8htjDUKjGlB2LTM2YaYRLo
 aW5cZMulObGEg/U8LTPBY4dtmGmvmOvKijWAUBCgIs9U2wgSjA0s+cLzGomio7Fxt0hYwv63
 TBjmXCl8OemsD+9zuZ/1WW045bg5/I08JZAtOBh4wuJjLghh3AXvUYZ5Sy+A0Q5MmUrGoxnM
 KJiBInNcZ+5jfqcma5rQCF4Xia7B8er0LHjWW+vEGmm+jFfVsBerZ8rLMcTz/w0WZlmNlg2q
 NG0lm4mvNsfGr9tRW42vzhbT0vrUavvX8++NRj9UB3YM8iTJdqgcgh8FhOEJEGdRiKlbwaLA
 ==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="41083903"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kkDRfJfiVW1EGZ0UDGaH71Bg2DFnQxPf7Vbz9DlcWM2EkfFke50+mRi9NIJnCNzC2/JbGl1B6K167qLZoqGalb6gzp+NQPDF4Py0lX03V2oKaR2xxqHpUfJpDgCo8RF7lWfzTXvXxM5E5b/GQquQDb3ba7K/DeeyWKWysEbsplR7xZlRTD8M36UQcVi2AkN6VNbfk0SiYlbpA/1TQq3YL62+PSNzvWJQSVIBS1UtsluK4s97mPM20nhD8QNHPXkUbF252eXWy+T9XAk7G/uFLd4sYjKzcTAub9oQgmREvVj4Km05RIikURTc3M35tGoTg4Afc1thVjOhbSh2x1cjDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+SMCs+kCKLmK4bYTHtUZXrRzZSCtcl8QipRQvnQOyGU=;
 b=mYGxnGVDi7Hu/uKgAHWG/H/Ld7lbioOEdsXwWcGYs1WRDKBjon4Vj5APPIuVFUHH4hWWnXjHqFBN2QLaPirGqDu9EruQlrB9f70xjJiu9aoM0h7SOL4SmqBkTBHvzlybLHGf9lzHNQOh0uKqWpnpFZJifyuD0FQxL/QFVW8/GL8DImodFcreu9yai6QKkgdonpytb823UZXuasr5Km7X9sA/wQhlO/oqr7dfChGSGmN3xf2WhliWxndkXgi9WFMxxF+Wgg9xSH7q8JeOzST5EW45obMOc7B4s94td96XaPE7A/2zZyc+/OHTcZvEyt4ynqDsWzTkgmT5aXr0nEKsDA==
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=+SMCs+kCKLmK4bYTHtUZXrRzZSCtcl8QipRQvnQOyGU=;
 b=eqL62Frk9qa1UobjV+7HBVZu9VGITn75zZQrSkIGH726eHzT5ytHJC9heVCLMzIArS1d8MvsnElRUdCziRtpPCTEuXnT03QWPbaX6XFTVxayPbN/1F84Eap/8H7TQ1pE445GrJBRnZNykivm7Ed1UExskm4w22U1wjGZq/ulqMQ=
From: George Dunlap <George.Dunlap@citrix.com>
To: Andrew Cooper <Andrew.Cooper3@citrix.com>
CC: xen-devel <xen-devel@lists.xenproject.org>, Juergen Gross
	<jgross@suse.com>, Jan Beulich <jbeulich@suse.com>, Ian Jackson
	<Ian.Jackson@citrix.com>
Subject: Re: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly
 xenstore
Thread-Topic: [PATCH for-4.15 6/7] CHANGELOG.md: Various entries, mostly
 xenstore
Thread-Index: AQHXJvxUtSxo6M4mo0iX7TVVNapv+6qfsM2AgAADtYCAAACaAIAACDkA
Date: Thu, 1 Apr 2021 14:45:26 +0000
Message-ID: <D6FF9EC7-DEEF-44B8-82D4-69879562F496@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-6-george.dunlap@citrix.com>
 <97d317fb-16d7-a14e-e74e-62fa83159838@citrix.com>
 <07553207-90AA-4AD4-A5C2-C8F36411DDCB@citrix.com>
 <d3941c9c-cef2-5521-7028-2fde1f727ae3@citrix.com>
In-Reply-To: <d3941c9c-cef2-5521-7028-2fde1f727ae3@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.20.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: e1dd0628-3755-4797-f32c-08d8f51cc9d5
x-ms-traffictypediagnostic: PH0PR03MB5734:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <PH0PR03MB573496E988B1AA523D8C1AD8997B9@PH0PR03MB5734.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: PY3Dpr8cgLQ9YSvNbUlZUxgMv1lyNMW0FohnV9QeTKBtr6HKS9oBaMSiVk+fAvEHWCicTy4nCuB312Dtf9f3SXZpkM0PCVDpo/8QtquFlTbCuZpHtKiazGW47Gk/y/Nm/kywQ5GnrOFQY6P9C74N1Kl0COkp2lIJq/zeDLKHDcvb0fOxa5llcQJXMbk/+fZdgBVYXuMcjF4vU5C+Jp7wa6nwWu9zHfN5YTPGh1BamjjdRNsgxH6jiGQKaRE3mxSxLPww5uBCMOa6iLki54hmJHh9hbmUE2ptCTu1RvsWllkLevKHmgBBrMQLK0LGMlP9302tohESNMOkmmB6PQOcLK+MoQVXHlaZXpqzigPfwx3GWx+gO9hewtydf5iGsytbwRssBAMy0S4Y4E8Xhk0G/bdYAWaSjF3VtwBnOVMWLkRmwYsIQ/HmuDGpPHI+W9aAHwVwu9v5b7K2zO1Wzhzi7NqjmDXLJVYhXhCV0j50kOcU/ezupnLS02i9GmowRtIWPYxC85mQH+S/ezYcfzV5eQmrUKCgJZ0FadKvUmv67VQOgovGHWeK549kSKjMZvhEoa1NxTEyI4XkYgVZGz9cC97pRYOCAqGK/4R/KbGJA6XF4mc1pp+F7m03S8ycIB/OXR83zOOp2poUCPwaRtWyHzLMpgjCPHvYjX3ZVAJKK7tHbjxRgpx05nbQK7IJyycDYNenvR/sbbMW1V7lu+23C75V9C8tQNktekNHab3ctXdcRmIUSsOXIsCs9AHuOA02TQYWznXIM882J6wdIo8OvsjEgqeZ4Nwf/QenzXmg8+4Nmupba3skAIwrxontJiAv
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR03MB5669.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(366004)(136003)(396003)(39860400002)(376002)(64756008)(6862004)(66946007)(83380400001)(107886003)(66556008)(66446008)(66476007)(4326008)(54906003)(76116006)(6512007)(91956017)(38100700001)(2616005)(86362001)(2906002)(6486002)(33656002)(36756003)(71200400001)(186003)(316002)(37006003)(478600001)(8936002)(53546011)(8676002)(6506007)(966005)(5660300002)(26005)(6636002)(207903002)(219803003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: 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
 =?utf-8?B?d0RKbTVoRTJCV0w5b3NrZz09?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <94467862BD31964D849F4B0CAEF668BF@namprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR03MB5669.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e1dd0628-3755-4797-f32c-08d8f51cc9d5
X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Apr 2021 14:45:26.6339
 (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: NibM+MqUfHMPYtXG6cMMLYVWsGhf2L38BRlXKSzP1XZJaQB4rkXzw3QbH82kmCPnvWvsBk0q0Es7VEMvOy2pZLH9oun9RPRXpNaxBBa6l8Q=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5734
X-OriginatorOrg: citrix.com

DQoNCj4gT24gQXByIDEsIDIwMjEsIGF0IDM6MTYgUE0sIEFuZHJldyBDb29wZXIgPGFuZHJldy5j
b29wZXIzQGNpdHJpeC5jb20+IHdyb3RlOg0KPiANCj4gT24gMDEvMDQvMjAyMSAxNToxMywgR2Vv
cmdlIER1bmxhcCB3cm90ZToNCj4+IA0KPj4+IE9uIEFwciAxLCAyMDIxLCBhdCAzOjAwIFBNLCBB
bmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPiB3cm90ZToNCj4+PiANCj4+
PiBPbiAwMS8wNC8yMDIxIDE0OjM4LCBHZW9yZ2UgRHVubGFwIHdyb3RlOg0KPj4+PiAuLi5ncm91
cGVkIGJ5IHN1Ym1pdHRlcnMgLyBtYWludGFpbmVycw0KPj4+PiANCj4+Pj4gU2lnbmVkLW9mZi1i
eTogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBjaXRyaXguY29tPg0KPj4+PiAtLS0NCj4+
Pj4gQ0M6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCj4+Pj4gQ0M6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4NCj4+Pj4gQ0M6IElhbiBKYWNrc29uIDxpYW4uamFja3Nv
bkBjaXRyaXguY29tPg0KPj4+PiAtLS0NCj4+Pj4gQ0hBTkdFTE9HLm1kIHwgMyArKysNCj4+Pj4g
MSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKQ0KPj4+PiANCj4+Pj4gZGlmZiAtLWdpdCBh
L0NIQU5HRUxPRy5tZCBiL0NIQU5HRUxPRy5tZA0KPj4+PiBpbmRleCAyZjI2Y2Q1Yzg3Li45YzI3
MmEwMTEzIDEwMDY0NA0KPj4+PiAtLS0gYS9DSEFOR0VMT0cubWQNCj4+Pj4gKysrIGIvQ0hBTkdF
TE9HLm1kDQo+Pj4+IEBAIC0yOCw4ICsyOCwxMSBAQCBUaGUgZm9ybWF0IGlzIGJhc2VkIG9uIFtL
ZWVwIGEgQ2hhbmdlbG9nXShodHRwczovL2tlZXBhY2hhbmdlbG9nLmNvbS9lbi8xLjAuMC8pDQo+
Pj4+IC0gRmFjdG9yZWQgb3V0IEhWTS1zcGVjaWZpYyBzaGFkb3cgY29kZSwgaW1wcm92aW5nIGNv
ZGUgY2xhcml0eSBhbmQgcmVkdWNpbmcgdGhlIHNpemUgb2YgUFYtb25seSBoeXBlcnZpc29yIGJ1
aWxkcw0KPj4+PiAtIEFkZGVkIFhFTl9TQ1JJUFRfRElSIGNvbmZpZ3VyYXRpb24gb3B0aW9uIHRv
IHNwZWNpZnkgbG9jYXRpb24gZm9yIFhlbiBzY3JpcHRzLCByYXRoZXIgdGhhbiBoYXJkLWNvZGlu
ZyAvZXRjL3hlbi9zY3JpcHRzDQo+Pj4+IC0geGVubmV0OiBEb2N1bWVudGVkIGEgd2F5IGZvciB0
aGUgYmFja2VuZCAob3IgdG9vbHN0YWNrKSB0byBzcGVjaWZ5IE1UVSB0byB0aGUgZnJvbnRlbmQN
Cj4+Pj4gKyAtIEZpeCBwZXJtaXNzaW9ucyBmb3Igd2F0Y2hlcyBvbiBAaW50cm9kdWNlRG9tYWlu
IGFuZCBAcmVsZWFzZURvbWFpbjogQnkgZGVmYXVsdCwgb25seSBwcml2aWxlZ2VkIGRvbWFpbnMg
Y2FuIHNldCB3YXRjaGVzOyBidXQgc3BlY2lmaWMgZG9tYWlucyBjYW4gYmUgZ2l2ZW4gcGVybWlz
c2lvbiBpbiBvcmRlciB0byBhbGxvdyBkaXNhZ2dyZWdhdGlvbi4NCj4+PiBUaGlzIGlzIFhTQS0x
MTUsIGFuZCBpc24ndCBzb21ldGhpbmcgbmV3IGluIDQuMTUgdnMgNC4xNC4gIChJIHRoaW5rPykN
Cj4+IFhTQS0xMTUgd2VudCBwdWJsaWMgZHVyaW5nIHRoZSA0LjE1IGRldmVsb3BtZW50IHdpbmRv
dy4NCj4+IA0KPj4gU28gb24gdGhlIG9uZSBoYW5kLCBpdOKAmXMgY2VydGFpbmx5IGVmZm9ydCB0
aGF0IGhhcHBlbmVkIGR1cmluZyB0aGUgd2luZG93LCB3aGljaCBpdCB3b3VsZCBiZSBnb29kIHRv
IGhpZ2hsaWdodC4gICBPbiB0aGUgb3RoZXIgaGFuZCwgaXQgd2FzIGJhY2twb3J0ZWQgdG8gYWxs
IHNlY3VyaXR5IHN1cHBvcnRlZCB0cmVlcyAoPyksIHNvIGl04oCZcyBub3Qgc29tZXRoaW5nIHlv
dSBuZWVkIHRvIHVwZGF0ZSB0byA0LjE1IHRvIGdldC4NCj4+IA0KPj4gSG9uZXN0bHkgbm90IHN1
cmUgdGhlIGJlc3QgdGhpbmcgdG8gc3VnZ2VzdCBoZXJlLg0KPiANCj4gV2UgZWl0aGVyIHdhbnQg
YWxsIFhTQXMgZGlzY3Vzc2VkLCBvciBub25lIG9mIHRoZW0uICBQb3NzaWJseSBhcyBzaW1wbGUN
Cj4gYXMgInRoZSBmb2xsb3dpbmcgWFNBcyB7Li4ufSB3aGVyZSBkZXZlbG9wZWQgYW5kIHJlbGVh
c2VkIiA/DQoNCkkgZG9u4oCZdCB0aGluayB0aGF04oCZcyB0cnVlLiAgVGhlIHZhc3QgbWFqb3Jp
dHkgb2Ygb3VyIFhTQXMgYXJlLCDigJxNYWtlIGl0IHdvcmsgdGhlIHdheSBldmVyeW9uZSBhbHJl
YWR5IHRob3VnaHQgaXQgd29ya2Vk4oCdLiAgVGhpcyBpcyBhIHVzZXItdmlzaWJsZSBjaGFuZ2Ug
aW4gYmVoYXZpb3IuDQoNCkxpa2UgSSBzYWlkLCBJIGRvIHNlZSB5b3VyIHBvaW50OyBub3Qgc3Vy
ZSB3aGF0IEkgdGhpbmsgdGhlIGJlc3QgdGhpbmcgaXMgdG8gZG8uDQoNCj4gSSByZWNhbGwgTGFy
cyBtYWtpbmcgdGhpcyBwYXJ0IG9mIHRoZSByZWxlYXNlIG5vdGVzIGluIHRoZSBwYXN0Lg0KDQpM
YXJzIGluY2x1ZGVkIGFuIFhTQSByZXBvcnQgb24gdGhlIHhlbnByb2plY3Qub3JnIGRvd25sb2Fk
IHBhZ2UgZm9yIHBvaW50IHJlbGVhc2VzLCBub3QgZnVsbCByZWxlYXNlczsgc29tZXRoaW5nIEni
gJl2ZSBjYXJyaWVkIG9uIGRvaW5nLiAgZS5nLjoNCg0KaHR0cHM6Ly94ZW5wcm9qZWN0Lm9yZy9k
b3dubG9hZHMveGVuLXByb2plY3QtYXJjaGl2ZXMveGVuLXByb2plY3QtNC0xMy1zZXJpZXMveGVu
LXByb2plY3QtNC0xMy0zLw0KDQogLUdlb3JnZQ0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:46:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:46:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104569.200151 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyau-0006f6-Tg; Thu, 01 Apr 2021 14:46:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104569.200151; Thu, 01 Apr 2021 14:46:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyau-0006ez-QV; Thu, 01 Apr 2021 14:46:48 +0000
Received: by outflank-mailman (input) for mailman id 104569;
 Thu, 01 Apr 2021 14:46:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=j8z4=I6=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lRyau-0006eu-Fs
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:46:48 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ffebad7c-9cee-42be-83ee-ac9693c9af7e;
 Thu, 01 Apr 2021 14:46: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: ffebad7c-9cee-42be-83ee-ac9693c9af7e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617288407;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-id:content-transfer-encoding:
   mime-version;
  bh=T/X1/IcRwJR11b65tL6mpaHsmu4HvqDNJBrv71R5WXQ=;
  b=Ik0UuVo2xKYtP9/oeoi1dHvulmhGYhwqWqiEbhWmucnUokrffmG/Kxlz
   abgoCUbBV0zgJHsKmtCllQHfgWNXgDFVwOsUJZEsOViw8FjAD3amKOcnV
   K1V7RxWaSvZdbBd2W4KC1mTOJaCww7jb408K455q0YPlcpja8QZk4C6N3
   8=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ZUb06BzMYwzHpagEqqn7nzPo1bjRxfa7LkP/OPmqxqMJy0y6OkH1BrW6zHlxQPdUjRYQ6DBefm
 JS/ZC38YuIdRkevtAnBlXwCwptCyFUa66QUyQx6U0RZ3RDVnUqt8mIuk3p5W/LFlTPJYclGXX8
 RAK4eIjSg2HHLWNJVPHSyZZ0/Qus735k1lLXhPT66SJtZ9t1nQP5sG3oTlDQjO5H13hxjz5wpH
 k85WrzP9l2HmZk3yRxQl+4dYsGNDCvS5tJ1jt+eksFyiW35jqIJb/DjZ9bnMEwR/C/RgpPuJ1r
 PsI=
X-SBRS: 5.2
X-MesageID: 40845423
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9xzeuqtAftW/m4XEB6zo9t3F7skCdIMji2hD6mlwRA09T+Wzkc
 eykPMHkSLlkTp5YgBDpfmsMLSNKEmxybdb+o8UVI3NYCDDmE+FaL5v9pHjxTqIIVycysd42b
 17e6ZzTP3cZGIK6PrS2wWzH9Y+zNTvysnB7o2y815XQRhue+Vc6W5CajqzKUFqWBJAQaMwCZ
 v03LsimxObZX8VYs6nb0NlY8H/obTw+67OUFo6I1oO0k22ljWk9LTmVyeVxX4lIlRy6IZnzE
 yAuza83am4r/SnoyWssVP73tBqvJ/I8J9+HsCWzuANMy7rlQqkIL5sXLCPp1kO0ZmSwWdvrf
 2Jiy1lA95+8Df7e2e+oxfhnzPt1zsj8BbZuCSlqEqmnOi8fhUGMY56ob9hGyGpl3YIjZVA9I
 pw8ya8v4dcDB/MpwTRjuK4Li1Cpw6IhVIZvaopg2ZCVJZ2Us4qkaUvuH5wOK0tWB3385omFu
 4GNrCg2Mpr
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40845423"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UB38Yb5agjSFBCQ9Gmsp+da3qJ4QX9Ss1E3QAqaj1x95GcBheDQudcgWqaF8MRP31DlH4In7LKgSqKhYVk5GXUG+rOVPrzf9JauTv/i23v7ogBm/W8evwi6+alE5Cq0j4DRSVyJ8DdFyoJNTH7OnQZ5Gsk5LqUxc3+HxYuv6LlEPUcc8ORZGLPvq3Fa07lgY3jIbNS1ppsU6yZ7qzEOrYTkQvmNeFdSSaqGpETeRQo0Zkt9qhTXbzbK6Ww5ziqgPgG/M3NOt1LCy9N9ZRXDmh72ZPCGXpw/I/Y12eqG+hUWZTouxnh47ETlILkqHk21JXaooXmpMpIXzsMcYbARZpw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=T/X1/IcRwJR11b65tL6mpaHsmu4HvqDNJBrv71R5WXQ=;
 b=Id1bXDq3sVNWL5NjWb+fjk9Jgye5bmv/C2NZNBE+ZUFPDvgCorN0EuBLet5bBT69t6xvdugvNkYIwJKLAn4sPViN4BG2cc5dOhjddA8p/dIxlIO+XxtwV6bjfs0stJ6jZ7jHpegdwP/cMa98eIsCFYoEZ5ez8PAxP/ANLOR7WNjv8peZPaZtnP4pzb6bvhQH8Nfe3LvjSesEX3u0abI6f882mCRN5PWTOjqwzw29CLZx/tMQeD7sX2anWYm5Z9lRR+yAUaUE5chh5GJ4YuU/dsTdoSL9kR2B470o2dWnoPyyODzMIkABs2gv0gc1jVtu+KeMS7voEV8p9Wdz3R+v6A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=T/X1/IcRwJR11b65tL6mpaHsmu4HvqDNJBrv71R5WXQ=;
 b=EYJnVnGDx36NhFh28hca3vMly03akcHcz6Aq65eXzeXgXTwJMB6bYayk3uMCYJyE2HlhDCM6jSnOh/UUc46pOMqrhNDJzPSbw/OY13zwKwkASWp81D6PWqmQ99ZvWzLKo4NO6djpROUiFQkLkJS/5x1Smz57FAqfqtYd1W3NGZ8=
From: George Dunlap <George.Dunlap@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Igor Druzhinin <igor.druzhinin@citrix.com>, Ian Jackson
	<Ian.Jackson@citrix.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH for-4.15 7/7] CHANGELOG.md: irq-max-guests
Thread-Topic: [PATCH for-4.15 7/7] CHANGELOG.md: irq-max-guests
Thread-Index: AQHXJvxUWijs3ZDWcU2QBjbhopWf8qqftWSAgAAITYA=
Date: Thu, 1 Apr 2021 14:46:43 +0000
Message-ID: <75E92685-8930-4518-8D8F-CF8CA8A2312A@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-7-george.dunlap@citrix.com>
 <37b76a6d-e81b-1581-d89c-0d99a9d2eba9@suse.com>
In-Reply-To: <37b76a6d-e81b-1581-d89c-0d99a9d2eba9@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.20.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 66bbd925-85ac-475e-dfcb-08d8f51cf7c0
x-ms-traffictypediagnostic: PH0PR03MB5685:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <PH0PR03MB568553EAD8A4080621D418D2997B9@PH0PR03MB5685.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 8c9S3cq8CsONJZaRg3SmoIr3bE2ua+ngV7EBRhAururpgVqxJ7Yc6O3iIVhfG6fx+TaUTlLT9IVrR14qqVZuxWSEl6lDR6DxNUBV4bBBQPhzxvhBGVp/621JIHP2/GT3pXUnsJU+7JcjWKYVSvycpIZbw/aFO9o9WaYiXJjjAP2TGc0+B2iScfxK0AzNg8kk3TcudgZayv3dkyryQoHDjH+MzzteokVzfZJuegA/u1KkQvhL08GBupKTCCi8tNC2ZuWTZDhcGh90cNNkQtEQB+xp58D7PEATKZL2+BoxiLGqthZT09PAYQPvghT0nQXttma2lYvLE0l31I9sqR5j2XmW/8pI5uLIrJgE11KW1pk0scjP3vCe01t8bEIGHreJC9zyXI4vp4k4I6vGREMywg+CDmCqzV7E1tXOiwhPDoRZaWkMp57O7Jq82i+F7FG1ruf6wRSpYud49kMnRIBLBSnhqU5fWzN0ACR9VTBIm5TkloYxL5bMghG2uiWnZ6oBGc0RJ62JC+ClRxRRDOp13gPNhBoaXY5tO0503WJmlVzWoGdM01sZEKWpfrbP7UjWksPAFwX53sRwnUtcI7j4r4VYLMSv31L57eEv8nKAmuUvFfzRvAH5LzUvC2NaNF1imEuLJhq7ZcGcDkCny5HE/H07AhPPK8PCiGZzmIMA8smFPhAeTKUkqxzFhMCztBUVBCBRYbofGVIOSG8e25IRk3XOfB8YZnw1xWnQkIS4GqX/Stq+nSPBB4oi6yUvTe8RNddR8kdJCYWlK+y/lTTFiqtPL7hX3Z1qUGBWYrtSbLX4qQKrBG7Qt9csu9vZV7Y3
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR03MB5669.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(346002)(376002)(39860400002)(396003)(6512007)(33656002)(4326008)(2616005)(76116006)(186003)(6916009)(6506007)(6486002)(53546011)(71200400001)(478600001)(83380400001)(36756003)(8936002)(66476007)(54906003)(66946007)(316002)(2906002)(8676002)(66556008)(5660300002)(38100700001)(91956017)(66446008)(86362001)(26005)(64756008)(219803003)(207903002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: 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
 =?utf-8?B?MW54bFZHaDVSdDd5S3Nrdz09?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <CEC5E0C62F6133408AD26A791E8DBA50@namprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR03MB5669.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 66bbd925-85ac-475e-dfcb-08d8f51cf7c0
X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Apr 2021 14:46:43.5903
 (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: YzzM5pWsivAToVgLu8UbcLxiPf0TzO1p0Oguu33kfb10YOUvEyWV5Y+aD0fsX4ycKD0j2++IKUhYg4bauND+rNhIqSKjDKVMRm7p3T/Bcf4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5685
X-OriginatorOrg: citrix.com

DQoNCj4gT24gQXByIDEsIDIwMjEsIGF0IDM6MTcgUE0sIEphbiBCZXVsaWNoIDxqYmV1bGljaEBz
dXNlLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAwMS4wNC4yMDIxIDE1OjM4LCBHZW9yZ2UgRHVubGFw
IHdyb3RlOg0KPj4gLS0tIGEvQ0hBTkdFTE9HLm1kDQo+PiArKysgYi9DSEFOR0VMT0cubWQNCj4+
IEBAIC0zMyw2ICszMyw3IEBAIFRoZSBmb3JtYXQgaXMgYmFzZWQgb24gW0tlZXAgYSBDaGFuZ2Vs
b2ddKGh0dHBzOi8va2VlcGFjaGFuZ2Vsb2cuY29tL2VuLzEuMC4wLykNCj4+ICAtIFNvbWUgYWRk
aXRpb25hbCBhZmZvcmRhbmNlcyBpbiB2YXJpb3VzIHhsIHN1YmNvbW1hbmRzLg0KPj4gIC0gQWRk
ZWQgdGhlIGZvbGxvd2luZyBBUk0gZXJyYXRhOiBDb3J0ZXggQTUzICM4NDM0MTksIENvcnRleCBB
NTUgIzE1MzA5MjMsIENvcnRleCBBNzIgIzg1MzcwOSwgQ29ydGV4IEE3MyAjODU4OTIxLCBDb3J0
ZXggQTc2ICMxMjg2ODA3LCBOZW92ZXJzZS1OMSAjMTE2NTUyMg0KPj4gIC0gT24gZGV0ZWN0aW5n
IGEgaG9zdCBjcmFzaCwgc29tZSBkZWJ1ZyBrZXkgaGFuZGxlcnMgY2FuIGF1dG9tYXRpY2FsbHkg
dHJpZ2dlcmVkIHRvIGFpZCBpbiBkZWJ1Z2dpbmcNCj4+ICsgLSBJbmNyZWFzZSB0aGUgbWF4aW11
bSBudW1iZXIgb2YgZ3Vlc3RzIHdoaWNoIGNhbiBzaGFyZSBhIHNpbmdsZSBJUlEgZnJvbSA3IHRv
IDE2LCBhbmQgbWFrZSB0aGlzIGNvbmZpZ3VyYWJsZSB3aXRoIGlycS1tYXgtZ3Vlc3RzDQo+IA0K
PiBBY2tlZC1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPg0KPiBhbGJlaXQgSSBh
Z2FpbiB3b25kZXIgaWYgdGhpcyBpc24ndCB0b28gc21hbGwgLyBuaWNoZSBhIGNoYW5nZSB0byB3
YXJyYW50IGFuDQo+IGVudHJ5IGhlcmUuDQoNCkF0IGxlYXN0IGl04oCZcyBhIHVzZXItdmlzaWJs
ZSBjaGFuZ2UgdGhpcyB0aW1lLiA6LSkNCg0KSXQgd2FzIGluIGEgbGlzdCBvZiBwb3RlbnRpYWwg
aXRlbXMgcGFzc2VkIHRvIG15IGJ5IElhbjsgYXQgYW55IHJhdGUgSeKAmWxsIGxldCBoaW0gaGF2
ZSB0aGUgZmluYWwgc2F5ICh3aGVuIGhlIGNvbWVzIGJhY2sgVHVlc2RheSkuDQoNCiAtR2Vvcmdl


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:47:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:47:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104572.200163 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRybc-0006lM-8D; Thu, 01 Apr 2021 14:47:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104572.200163; Thu, 01 Apr 2021 14: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 1lRybc-0006lF-4K; Thu, 01 Apr 2021 14:47:32 +0000
Received: by outflank-mailman (input) for mailman id 104572;
 Thu, 01 Apr 2021 14:47:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRyba-0006l7-U6
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:47:30 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c26569a4-d98c-45c6-98cb-1e7ba1857eb4;
 Thu, 01 Apr 2021 14: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: c26569a4-d98c-45c6-98cb-1e7ba1857eb4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617288449;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=bTrgLIOdK867y1sJMrIi4ZWeW4jmhLnYojvITth1ttI=;
  b=ifdzTrYMohL4WBUqPnPokW1xdDj5DNs2b/OoQS1AZu7JETnalECi0hie
   KffjExDxQ0GRCA9MBFeHUpqzN/+jxya3p7MKWLqDdlUkUoRXvj8utQCsK
   Aa3mR9nmM62omvZ9ZMYuG5ibdzrteuPt55/K93EWesBVnRxA68/GKmNjb
   0=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: K5MO/ez6rLT1bri1vxUdscuqCOLn8iP0U2I/M5ELx5ImDbV59ijZD9lsRnAZy/MS2Z8KJiTsDY
 5iBu/E37T7VY1CZxeJe5VgRA2cLklCsGffQ++vbUzpHuUQ/o3tpzV6aS4MCwd9cX27wQufvroE
 o5AfjmjYbT4kFsyEE/rmVjWTPEHysjuYQxnxcAUnlbTVTZ1bBpYKvtoq8jQVLxA3KHctJjdUku
 i6VMogeX9Ay6jtpz2MmgsqS2mdd0bAdNBhw4lzmEeda2D/LeQ+MNxRTY+AL+jfxi+9MZcdEgVI
 Grs=
X-SBRS: 5.2
X-MesageID: 41084059
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:YFw1iq1a9f/Zr+2Dvr1TRwqjBbByeYIsi2QD101hICF9WMqeis
 yogbAnxQb54QxhOk0ItNicNMC7LU/02oVy5eAqU4uKeCnDlC+WIJp57Y3kqgeQeBHW0uJGz6
 9vf+xfJbTLfD1HpP336gW5DNosqePvmMvD6Nv29Ht1SBEvVqcI1WdEIz2WD1FsQ01+DYc5fa
 DsgvZvnSaqengcc62AZ0UtYu6rnbL2vaOjXDpDLyRi0RKJgC+j9frEHwPw5GZ4bxp/hYoHtU
 D+1zf0/LmnrpiAu3nh/l6W0rATsOGk9sFOH4ilk9EPLCrhh0KTaINtV6bqhkFMnMifrGsP1P
 H35ys7M982wHbWdGO4rF/W1w7s3C1G0Q6Y9XaoxUbG5fbfeQh/Me59vOtiA2fkwntlgfVV6o
 4O+2qFvZtaACjhsU3GlqH1fiAvq26dm1ZnquIIk3lDOLFuEoN5nMgj2GtuPNM+EDnh6IYhed
 Mecf3h2A==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="41084059"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hpQIobgfWkvCqnFmU/olJ2NRUfSGJxdEOgcbcPbAcKmY6kjpp6JzmhDIR2A/xWCyahghu+gZwG0dkviqNVmEe493XOKeLTG3FTQUkuICposiCg4d37GMzcPpB0QStDrZadm2XsEMqgAL7L1n5aeKIAKPPdV2r1OtvmyV4wRP5zf3byAlIpeJtfXHVHGXMwMt/mrRxhbhdXmWeI2aa8EThTkz2ovEC8tBI5zatkMjbKmwcdO670S6B8q99EiS4Nz+tIprdhcS6r8xRxALOSWHz5FQ5/1gtvJ0CEp3TLl3ikXEVlGaVqEjqdnbBw9J96eEW0yIZQTlcNzRooqxkZUheA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=n+qothyvfianGc+oCmDzsXnEORNndPWHYlCGJwKnB6I=;
 b=bJY97WrTUlG37036KM4rirDx8ExYMLVJS1cEYpd4SAm8TAJ04xI4hQyozuJGUldhn+SGsvpRtaG+DaoD6W+MfAcQXR50HeRb8Wz5d6zEGL1eWWuNbjyoOGhUJcltvfbCunofT9l8rLutWNv3HvSGPAFEsL+9/3enW5Ozf1Z3/Z5bYmy4MWXGtCpwoRn0IdlTL7/495y/TlgdJsF2F3VrUb/F8zI0Mro4ojl9l1Aig2ijkmLvW/dTEPRF7xZlVR6DN3P7aVHktdLaRjANY8GKHbp8MZzAprohbNl/FiKtE1mfpwYUv7Emcl8TbJlK38ItbpED75dypYIhtwvgyf8Aeg==
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=n+qothyvfianGc+oCmDzsXnEORNndPWHYlCGJwKnB6I=;
 b=Xw0cfTq2CKw2a16q43znuzdfY2CWfV5h2m8FWJc4fuAsUtKXcPrRTO+NsMGkhryQiXNdnHIpSavwVAvihC1UwofcF/0gqLHE73LLJKJq4+rUcXLH3GyUn7YmwqOwDqGc5qwRc0PZsDsANYvB3iUE2A+gNKXvL8WmomBD4Lw292Q=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-10-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 09/21] libs/guest: allow fetching a specific CPUID leaf
 from a cpu policy
Message-ID: <bb7b8cd2-97ae-09d9-61c8-1f84616256f5@citrix.com>
Date: Thu, 1 Apr 2021 15:47:20 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-10-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0391.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:f::19) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7566726c-8c43-4556-de52-08d8f51d1008
X-MS-TrafficTypeDiagnostic: BN7PR03MB4386:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN7PR03MB43865445F069B538E05F9C15BA7B9@BN7PR03MB4386.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: jlevTzxGPaXetsM0z/VNqz0QL6QB5m8jdMqhjKQ7FFZrKLLrF+/6YwN/ExKmKg04OODqtzqd0RuAaBrwmJ6fE/sFkgNawNGjuJzwZ2axK/tDdwj3k9XfhEOwV8Gho2hYyfzKZpPRPQFJsVcWR9NoDCc3ABEgepJCveiuyPfRDhqVTFzsfmqgiGjaSmRTFH264XzFted+gk7DvTrV5upPWa5Oiw2w98zkNSabz2mxml/o7GgIv/oThScUtlA4G69e2Qkug0z4bBlHYpTC8uRdv+gN75SY3dqVhkV7i3MNxFsmJswHNY9zbisLs57Lejla646fbxcxzZlk90EkuuIrC72sT717KmDu9ivHd7hV4yasJ1WksR/AJG4/CyWx+knMTfSgj/sGWNyKScXCwh/smzbICkoTTLe8UVoiCdwZYR3tWZwhUFRKrdlVPHuKtqDdLaFxHmdaMnPzZNkrbmJFVyjq9AZNYu5ZzMWEk7OrpWkB3lJ57w2gqSPAUhF/Fe5526AZCmFc3sLZEUn0B0RFa4mgC7nfzsCyMh9e9ZrKQ9uNaVpcTh/54k5mXfuQ2Evb4vTU8xj8jTQS97jN+YJLaXHPe+qOGdT/yeygkQCQf1NotT6zT7omtxOyS+xs3LafG/xP1tl4sT3tSAcD11kfCdATJSmyPkkGyslegTTW2iDxD0U0GQSB9Z/Zn1iis4LJFcFrlVxJtCZnCQ/s+VjdiIGZ6wJ4d3+t79oP6S+yXEs=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(31696002)(38100700001)(54906003)(16576012)(36756003)(6486002)(8676002)(16526019)(186003)(2616005)(66946007)(956004)(2906002)(26005)(66476007)(8936002)(31686004)(498600001)(66556008)(4326008)(5660300002)(53546011)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?VldUS21OdnNMdjNoaDZBOXlCdy9YMzY1YjJhOXpsNlFZdG9nZjN3TXhOVFAz?=
 =?utf-8?B?d0duZnp6MDFnVjhTTy82T05PNlBpWFVzMVJ5ZGplWG03UlFtQVE2Q0xtZEIr?=
 =?utf-8?B?bHRKMi80U0hXNGt1VFoyLzNpbURMTzRpeEV2WlFmWEtZNVhMSkFldW5ac2Zu?=
 =?utf-8?B?OXI2RGdqVHRIbGdOcXJLNmkzY1FYclJnU0U1RUEwTzBOdHRLNUJ3eklLYWhI?=
 =?utf-8?B?VXhiLzc1Q2taL0NacitRNVM0NE4zd09qS2R4M1BCaVkvTVBBbnNIM09xSDFy?=
 =?utf-8?B?OTd2bUNIWVlnUyt5bVcwdlBtSExad09rcnZzWjhoTFJZcUY3T3NKaFJkMHNs?=
 =?utf-8?B?VkJrR2d4b2N2NVlEUnYwVkQ3MkNXeDM1R2J1UDFGTU5JSzZtbW5JSnpVTmha?=
 =?utf-8?B?VnIwSUY5MGtyOTNsTVdlY3hvUmgxcEJsRmdZRXZuOG96VG4zbGRYTEpXMWJP?=
 =?utf-8?B?MUFKTy94SndxUUR2WHcrNVdIRTJ4VWxESmdJbHRaemdXbDdzT2s1OXdzRVpW?=
 =?utf-8?B?SXM2UnJpYTVjNlh0T1h4a1FOdFV1MVo1bVFSZTRjS3R3dk9jS3p3WFJVU2FP?=
 =?utf-8?B?dHlUVjUyMW44dE5aREg0TDRqTHFCY0NjdWh4MVdZRFlhRzhXeTFJRW0wK2d5?=
 =?utf-8?B?OHk3ZXovZWFPUFpHRi9aSjlmcjBTUjlocUxNTG5hckNUdUo3czNSdjRuaUl6?=
 =?utf-8?B?T0M1ZHIyVHRoa0VUTkd6YjhCSEdHdGN2c2oybnp1Vy94ZGFOa3dIRXRSU2hF?=
 =?utf-8?B?Z0U3N2wzUDNSdWhGRzg1SVRSdWF4ZXVHOFZEQ1BpRk9UNXYyRUlnUVFOZFhE?=
 =?utf-8?B?emYrYzBaK1kvaHVoZjRBR0xVL1NwQlZxdVhvUTBUS1pPc2Q1aE1JSlgwRHFP?=
 =?utf-8?B?NGtWZkZSM1hqbTJPVGpmWWE0TkxDakIyQmZFUlh1cmthME1reVMzMkhYMENY?=
 =?utf-8?B?TmlWL0tFTk5Lb3lFWnlBYjEwMTZaTEVrOTB6ZWQ2bXpvNzdhRmtvK1RVSGRJ?=
 =?utf-8?B?enJ1YUVNOFZTM2JtcVJ6bCs5VnBWUFV4UnpUUjRRc3Vlc0FBdzkxb2FIeEd1?=
 =?utf-8?B?b05RbTk4bUZsRW5VaDFQaHVHUEhUL2ZhelMvTGV6R0o1N2hNOTFnNXBIcXpu?=
 =?utf-8?B?akNKcGlxY3hJUUxlTnVIUTNDc2g4MXEveGtkd0hDSVBNMnFlSjRZcU5hOGpL?=
 =?utf-8?B?OE9XY1N5UjJzOVY3QnhoV015VVFub3VmSXZCTVh2TUhoYm1ieTl4ak01d1Zp?=
 =?utf-8?B?TXdWNkxldytnTEg3S2lxL2dxY1BUTkJtUVNnVGVtWTUrMDA0UzhVemx1RE1P?=
 =?utf-8?B?Uk5LVUpqV04rV2p2c29nMnBIQy8ycitiTEFONEIwRVNlbFRMSStWV2Jxd2Ft?=
 =?utf-8?B?MEZJd1hIRGVVTlVPWFJhWUZabDdzeUdZbGFVMnpvTHRmQzJndHlaU1lUWFpa?=
 =?utf-8?B?cEdMRmc4d2M3dUsvZFhVWTNBdW9EN0FQU2ZHSGZEc1ByTDFkakRnSGRmK3lT?=
 =?utf-8?B?WmNHdHhFZEthcjQ5alFrZlJ1bFpxcXB5WkZ1ZVlvb3lZT2tEdGNyTWpZajZD?=
 =?utf-8?B?ZmRPeVdDYzc3Wm10R3Vubm1hL3Fxb0ZpQWI2RktISXc1ZTRFQ1l1V1JTcUw0?=
 =?utf-8?B?RXNMa1VzekdyRTNENGthL1FuWDRWd1E4akNlcXRUdS9rZ3ZrbFZPbW1wVkxp?=
 =?utf-8?B?cExodDZoMktyUnp1SUUwdFI2blE0bTROczVwNTlCTXRuQUt6SndBam9kZXZ6?=
 =?utf-8?Q?6c7MeUpp7971+Ya69mc1QGivPCoFSw+NxeSsWUG?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 7566726c-8c43-4556-de52-08d8f51d1008
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 14:47:24.7656
 (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: G4ubR7XIL4rlfPMrk+l4zl84Y2Iz7dvikiBZz0tSqhyyDKOoSIWRK0jwN2N3zMJF7Tt8TFAoJoHJrUJTrtzKKf0zGcg0AYpdPDhzNJS5JXA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR03MB4386
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_=
x86.c
> index 48351f1c4c6..a1e1bf10d5c 100644
> --- a/tools/libs/guest/xg_cpuid_x86.c
> +++ b/tools/libs/guest/xg_cpuid_x86.c
> @@ -883,3 +883,45 @@ int xc_cpu_policy_serialise(xc_interface *xch, const=
 xc_cpu_policy_t p,
>      errno =3D 0;
>      return 0;
>  }
> +
> +int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t pol=
icy,
> +                            uint32_t leaf, uint32_t subleaf,
> +                            xen_cpuid_leaf_t *out)
> +{
> +    unsigned int nr_leaves, nr_msrs, i;
> +    xen_cpuid_leaf_t *leaves;
> +    int rc =3D xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
> +
> +    if ( rc )
> +    {
> +        PERROR("Failed to obtain policy info size");
> +        return -1;
> +    }
> +
> +    leaves =3D calloc(nr_leaves, sizeof(*leaves));
> +    if ( !leaves )
> +    {
> +        PERROR("Failed to allocate resources");
> +        errno =3D ENOMEM;
> +        return -1;
> +    }
> +
> +    rc =3D xc_cpu_policy_serialise(xch, policy, leaves, &nr_leaves, NULL=
, 0);
> +    if ( rc )
> +        goto out;
> +
> +    for ( i =3D 0; i < nr_leaves; i++ )
> +        if ( leaves[i].leaf =3D=3D leaf && leaves[i].subleaf =3D=3D subl=
eaf )
> +        {
> +            *out =3D leaves[i];
> +            goto out;
> +        }

Please adapt find_leaf(), probably by dropping xc_xend_cpuid and passing
in leaf/subleaf parameters.

Serialised leaves are sorted and there are plenty of them, so a log
search is better.

How frequent is this call going to be for the same policy?=C2=A0 With the
arrays embedded in a policy, they're still around, and serialise is an
expensive operation.

I wonder if it makes sense to try and keep both forms in sync, so we can
avoid redundant calls like this?

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:54:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:54:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104578.200178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyhm-0007hr-3C; Thu, 01 Apr 2021 14:53:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104578.200178; Thu, 01 Apr 2021 14:53:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyhl-0007hk-VY; Thu, 01 Apr 2021 14:53:53 +0000
Received: by outflank-mailman (input) for mailman id 104578;
 Thu, 01 Apr 2021 14:53: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 1lRyhl-0007hc-0X; Thu, 01 Apr 2021 14:53: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 1lRyhj-000888-R9; Thu, 01 Apr 2021 14:53: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 1lRyhj-0003xr-Gy; Thu, 01 Apr 2021 14:53:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lRyhj-0002Rd-GW; Thu, 01 Apr 2021 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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=vqiHAqlrTdpANp6bzNSTSj5Y6nK47cX/8uKZstN/qqw=; b=h7Uc9fkXo1Ee/xwI7kYP4wbp65
	m7+Ll1+ooWOpeozxUFDz+wMH5l9vJlmoOpO4P3oiX9LFYD7Y9U16S9cVmN5comMYzIMAOdDJ4VCHO
	xLr/+L2y5bRg6FDuumOtaN4GjCoF/oUb/p9XLZvWCFLXUHltVqdGBf8nXZf4TUC0H1Ds=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160630-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160630: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-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-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-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-libvirt-xsm: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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=90629587e16e2efdb61da77f25c25fba3c4a5fd7
X-Osstest-Versions-That:
    xen=90629587e16e2efdb61da77f25c25fba3c4a5fd7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 14:53:51 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-examine      4 memdisk-try-append         fail pass in 160581

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

version targeted for testing:
 xen                  90629587e16e2efdb61da77f25c25fba3c4a5fd7
baseline version:
 xen                  90629587e16e2efdb61da77f25c25fba3c4a5fd7

Last test of basis   160630  2021-04-01 01:51:44 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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:55:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:55:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104584.200201 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyjD-0007so-I4; Thu, 01 Apr 2021 14:55:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104584.200201; Thu, 01 Apr 2021 14:55:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyjD-0007sh-Dy; Thu, 01 Apr 2021 14:55:23 +0000
Received: by outflank-mailman (input) for mailman id 104584;
 Thu, 01 Apr 2021 14:55: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 1lRyjC-0007sT-78
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:55: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 1lRyjB-00089W-GM; Thu, 01 Apr 2021 14:55:21 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRyjB-0003b8-9v; Thu, 01 Apr 2021 14:55:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=VvvUZolMET6kbgJUdtBpnHkZ4F0PIjOStve1wWcTpYc=; b=fybt1DEhszLUodsDMEWLhxqKTN
	4dvMHw/PPvumAhLC5i8YqNc1pF8aw1EYVuMx7rkDw021N5qv/0yZvfotQ7xOy2fHedxHWA5vzZrE8
	v28N/Z8ti/dvzeVZLhsNV865xvx4tVWbK5kZYk20F8f/zriDiEpjos5HuPIXe9NmTTi4=;
Subject: Re: [PATCH 00/23] further population of xen/lib/
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <27916fa0-9ebd-a49a-bbb9-1ef47c2b5bf6@xen.org>
 <4f745d03-baa8-e9e6-692c-f9c9f401b766@suse.com>
 <6a38f0db-938b-fd13-48e6-6b538c85fe42@xen.org>
 <d9a21b2c-8eca-027d-5672-e5d9dfaaf4b7@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <3bdbd0ba-ce7d-3814-3280-c4f628b74d93@xen.org>
Date: Thu, 1 Apr 2021 15:55:19 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <d9a21b2c-8eca-027d-5672-e5d9dfaaf4b7@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 01/04/2021 15:27, Jan Beulich wrote:
> On 01.04.2021 16:04, Julien Grall wrote: >> So overall, the number of functions requiring overriding will likely be
>> pretty limited and #ifdef would be IMHO tolerable.
>>
>> Although, I would be OK with creating a file per function that are
>> already overrided. For all the others, I think this is just pointless.
> 
> Well, I don't see a reason to special case individual functions.
> Plus any reasonable static library should imo have one (global)
> function per object file in the normal case; there may be very
> few exceptions. Drawing an ad hoc boundary at what currently has
> an override somewhere doesn't look very attractive to me. Plus
> to be honest while I would find it unfair to ask to further
> split things if I did just a partial conversion (i.e. invest yet
> more time), I find it rather odd to be asked to undo some of the
> splitting when I've already taken the extra time to make things
> consistent.

I am sure each of us spent time working on a solution that some 
reviewers were not necessary convinced of the usefulness and they had to 
undo the series...

In this case, you sent a large series with close to 0 commit message + a 
small cover letter. So I think it is fair for a reviewer to be 
unconvinced and ask for more input.

You provided that now, I think we want a short summary (or a link to the 
conversation) in each commit message.

This will be helpful to understand why the move was made without having 
to spend ages finding the original discussion.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:55:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:55:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104589.200221 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyji-00081H-Tn; Thu, 01 Apr 2021 14:55:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104589.200221; Thu, 01 Apr 2021 14:55:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRyji-00081A-QZ; Thu, 01 Apr 2021 14:55:54 +0000
Received: by outflank-mailman (input) for mailman id 104589;
 Thu, 01 Apr 2021 14:55:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRyjh-00080h-Q8
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:55:53 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c087b886-7b28-4698-af1b-be56ee064a42;
 Thu, 01 Apr 2021 14:55: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: c087b886-7b28-4698-af1b-be56ee064a42
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617288949;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=GNiFq6gfJoTHlrSodqaQhCyBrF/F4z/pUy32GVXeWdU=;
  b=HZUMuhdMs9AugCRHYGjriwDjAE7v5c0pM+Wum7tlm1OSwT5/ktjgJUZE
   PmjMKnqC3blDgdyrl/t5LphGrExwPm0tvPAo+lJc4U23vqtxUy4PuZyjO
   Xev2wondilASp0Y22xCRcs/vB0XLTzGFn1mP/duaVxHDQctcDn8qT2CKE
   s=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: JXuiZUcm8xyHmhfQEOQxQF1GX2B7x/aVj84rkPowYORxD1l7PeAPKZcGqKHgAwaDjDyLRVSL3A
 nJ1T9oHfht/fAmzV1ghqSAUQR/+ocCePkyzCYbMRbZoszsjK88u8uK9f3qEV04YC9Jfv/7yQhV
 NmFQuxHicOijo99ClOApve1FD60AMPlHwynF+xNkHfZmo6Z59YCVoRuJo1xUyGXlxvmoQsxwLH
 RgTAaVGjJOSD4LMkoPsx0YCANfBxAvjAFqkG/2manbitkukbL08SCfZDaRQHrnJCFVYwSxkcFd
 0oA=
X-SBRS: 5.2
X-MesageID: 40709139
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:U6ZuO6C0sqyK7LTlHegBtMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmJEIyycFVB7QxQDIJI/Go
 aV6MYvnUveRV08aMOnCn4ZG9XZr9rQm578JTIADRgr6A6B5AnYlILSOR6ewxsYTndz0a4vmF
 K17jDRy4eCl7WAyhHa33LO9Jg+orXc4/ZKGcDksLlsFhzCkQCtDb4RPIGqnDdwm+237UZvrd
 +kmWZbA+1Wy1f8Ol64ugHs3Q6I6kdc11bHxUWDiXXu5ezVLQhKcvZpvo5SfhvH50dIhrgVu8
 gqrgHpwqZ/Nh/OkD/w4NLFTXhR5y6JiEEvjPIJiDhnWZYeAYUh3bA3xl9fE5sLAUvBmeYaOd
 RpZfushsp+TUmXdDTwsGVp3bWXLw8ONybDaE0DtsuJ6iNRjXB0wmAJrfZv70soxdYTTYJJ6P
 /DNbktvLZSTtUOZaY4P+sZR9CrY1a9Di7kASa3GxDKBasHM3XCp9re56g03vijfNgtwIEpkJ
 rMfVtEvQcJCgzTIPzL+KcO3gHGQW27Uzio4NpZ/YJFtrr1Q6euGTGfSXg1+vHQ4Mk3M4n+Yb
 KeKZhWC/jsIS/FAoBSxTDzXJFUND03TNAVgNAmQFiDy/i7arHCh6j+SrL+NbDtGTErVifUGX
 0YRgX+I81G8wSFQXn9rB/NW278W0D28J5qeZKqutQ7+cwoDMlhowIVgVO26oWgMjtZqJE7e0
 N4PffGn8qA1C2L1FeNy18sFgtWD05T7rmleWhNvxU2P0T9dqtGn92efGtVzUaWPxMXdbKQLC
 dv43BMvY6nJZ2Zwi4vT/i9NHiBsncVrHWWC7ARh7OE/sWgXp8jFJ4pVOhQGGzwZl1IsDcvjF
 0GRB4PR0fZGD+ro76iloYoCObWcMQ5phyqL85SoXf2rl6duskre3seU1eVIIyqqDdrYwARqk
 x68qcZjrbFsy2oM3EDjOMxN0AJVH6aG4tcDAOOZJxdn5fifA0YdxbNuRWqzzUIPkb6/UQbgW
 LsaQmZY+vCDFZmtndE6ary619vemKBf0V/V2BiveRGZBb7k0c29dXOSru40mOXZFdH+O0bPT
 3fSRY5Iw9lxbmMpVSosQfHMU9j6oQlP+TbArhmTqra3Wm1LpaU0YscGeVPwZpjPNfyk+MCXO
 6FYTWJJDfgB+5B4X3Nml8VfA1P7FU0m/Lh3xPoqFWi1HkkGPzIPRBIQaoYL9z01Rmse9+4lL
 FCyfQ7suu7Pj+vNpqoyaTLYyVCLR2Wi2isVO0soY1Vu6V3lLYbJeitbRL4kFV8mDM5J4PIsW
 lbZoJRyrXIIJVucMwfYDgxxCtjqP2/aG8Q9jXrCeo/d2w3h3DVP9m186PFwIBfdnGplU/VAx
 2j6CVT8PfOYjub2ZMbA6w2J35KaEJU0gUVwMqyM6nRAh6tbedN4R6TNWK8aqZUTMG+aPgthy
 c/x9GDhOmMcSXknCjWoDtgO6pLt0KqW9m7Dg7JOelG9bWBSBixq5rvxM64lzHsTzSnL2wemI
 1ebEQVKv15tQNKtvx+7gGCDortokwklFNC4TZo0n7Vs7LWnlvzLAVhKg3WgpJfQD9JFGOH5P
 61qdSl6A==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40709139"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lPOlaiP07uarOc2BD7xHcdyKQSFAw2aV6ieXKmk7ZgIJw8y+VLtN4XcYT5G+nHh3jKYUtFq7Re2SdeShIBd6WnWLVqFZHDjZl7DFkphnRvreT/3GujE66aA40hMo5StLKR8gUn3FfVmsLwDgiHn1eMzzmDbBt6u7ZUS9oeXIRC6WH3H4CDOPQxUGJBpA8YPtwjE5qfDbDATLUmZ1nCb9L0+OXAtQfAjFwZq7q1emk/Tcu7nl4z965hCieM1dWWYYMz29hIYqC8BPOx2JKTeQRDiz9d4JBzYBCOzw9gb9mWmdHLSuCH5/mTop7jXeqsfjB36lv6lLCoWQjANKJynqzQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6gX4/P1sEkNtez5H5Jn1w49A21JyqnDvXYw72qVzBVU=;
 b=aivdR7Sgl8Thuo+AZcPjxIAZhnmvrF+CmMxUDL4Q1ZzyjfVRZOL9RBwP+g2+s877KPezxHsTFAy8MbR/z0S3rc48qdyOOfj40Zgdz8uaGOisjr6XNYm6NVEjf08B+BQ+eWDdeFr+0mmuzvbnwhgOJbjTQugaRtGKccDKjJy5dweHXmuiOl/eJ6K6LrsLaZum7/7PxB+dqYvD+7M5KoJ9H8wdB6nIJS8crwXZWlIlGCA8akIgh6prj6gvWWdLY7tiERS3OGcrXhUP/XGCOI4BDDERrl3Gn3UX+iog13+Vwi5wXZ6dAHjvAP3N65ZCiCXYF2tCkjvOWuj8JbX6Kr+hBw==
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=6gX4/P1sEkNtez5H5Jn1w49A21JyqnDvXYw72qVzBVU=;
 b=sbSV7pOmSvcf1qPkyvAlGd5Ngkm3SYJMd9YU/r4M3AJ5f84/uF2TboN696ljAotWs+VrV+dRnKlZ97DLtYZWFDCVJn52vNYwJRM5NadsW8YRobrL/sVj//0zPcl8h3rpb+DiY4vxVEIzQyLnASXtIUZnWICCRKirv9DhCHa1OZg=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-12-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 11/21] libs/guest: allow updating a cpu policy CPUID data
Message-ID: <d8121f7e-c8bc-24b0-a089-96a7bf19b480@citrix.com>
Date: Thu, 1 Apr 2021 15:55:42 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-12-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0134.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:193::13) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 63cd3859-1663-4876-c1e1-08d8f51e3ba7
X-MS-TrafficTypeDiagnostic: BN7PR03MB3731:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN7PR03MB37311574C088F1A4BDFAB298BA7B9@BN7PR03MB3731.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5236;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /B35zz3iZ+E7rg4NplHJ/nklrKp57j5mpFTwAKxsjkX9Vg9XeNw123I2MjQqXPoHDnOB4JrnWg+/JioVRitFPtP0FBhAT/s1rEEL1IiMW37RfdGk94lDZZRo3EC58E2lcs3BPzuHR9jL75SHRz7kRt4b6oeiKEQBqrOBy4SEjgQm19fzvsETn9oHIQFl1HzQKex3QoS8Eyu5zlvjJdeB3DzvDG8qDR+5xVq+Yy7Nj7cgSPxXtLbfZhB9/V3myMm1ZLfFhlkUyVlNbBJDBR76wLp4tRy41q0gbhEIYbckFJNxbcLgfWRuKgB20sL4JbXpGOr9JrwrnhVWeiipsVW6dyieu/JKgxCpeiiq1gKxy53JnRQO3xt8UUsedZSiae4ykg372RL1iYu1HT/FKD51Zw+R3cB31i+nbW7txwpunUOjcVl4BZwOThxJhArDZEumCyQQxGJqKEcFQvmVSoCTwgYzQsGlSVhMatxPmD/lIDAXMoQWoIok4AEA4595asem+Z0+/Z0pv8IxjVWn8CbD+zhbDUSVtvxMRlSP+50+QGFCUjTg7m7fzkQgEYYkkGjYE2Zhmh3lShV2gJ2VvzfPYS+bxe3nGsAikX+TWcF7Uv9aOK/Y2BrbMdIMQrSIpLtiCUiSep43dEo7ODtoTHQAJXs6fow4WkxJk6dvRXi95o/92pA0xrbYIZLlVz2DSr4NFXyRw5v762AlWVRGWr6Oo/s7LFQbrBysOTcPQqkOzqs=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(366004)(136003)(396003)(346002)(376002)(2906002)(186003)(66946007)(53546011)(6486002)(66556008)(16526019)(316002)(5660300002)(478600001)(31696002)(36756003)(86362001)(66476007)(54906003)(6666004)(8676002)(956004)(16576012)(26005)(83380400001)(4326008)(8936002)(31686004)(2616005)(38100700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 63cd3859-1663-4876-c1e1-08d8f51e3ba7
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 14:55:47.2998
 (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: rf/XOa30StKwdqSe+SplVLFbekEALShaPcnmVxyjVrZQMLoX6ts+4pLhdrYtHpmnnY3eOEMnDecXKUYHOgeDy3DsqO0xBir43V55NFOf/o0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR03MB3731
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_=
x86.c
> index 091aeb70c9c..13c2972ccd3 100644
> --- a/tools/libs/guest/xg_cpuid_x86.c
> +++ b/tools/libs/guest/xg_cpuid_x86.c
> @@ -966,3 +966,70 @@ int xc_cpu_policy_get_msr(xc_interface *xch, const x=
c_cpu_policy_t policy,
>      free(msrs);
>      return rc;
>  }
> +
> +int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy=
,
> +                               const xen_cpuid_leaf_t *leaves,
> +                               uint32_t nr)
> +{
> +    unsigned int err_leaf =3D -1, err_subleaf =3D -1;
> +    unsigned int nr_leaves, nr_msrs, i, j;
> +    xen_cpuid_leaf_t *current;
> +    int rc =3D xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
> +
> +    if ( rc )
> +    {
> +        PERROR("Failed to obtain policy info size");
> +        return -1;
> +    }
> +
> +    current =3D calloc(nr_leaves, sizeof(*current));
> +    if ( !current )
> +    {
> +        PERROR("Failed to allocate resources");
> +        errno =3D ENOMEM;
> +        return -1;
> +    }
> +
> +    rc =3D xc_cpu_policy_serialise(xch, policy, current, &nr_leaves, NUL=
L, 0);
> +    if ( rc )
> +        goto out;
> +
> +    for ( i =3D 0; i < nr; i++ )
> +    {
> +        const xen_cpuid_leaf_t *update =3D &leaves[i];
> +
> +        for ( j =3D 0; j < nr_leaves; j++ )
> +            if ( current[j].leaf =3D=3D update->leaf &&
> +                 current[j].subleaf =3D=3D update->subleaf )
> +            {
> +                /*
> +                 * NB: cannot use an assignation because of the const vs
> +                 * non-const difference.
> +                 */
> +                memcpy(&current[j], update, sizeof(*update));
> +                break;
> +            }
> +
> +        if ( j =3D=3D nr_leaves )
> +        {
> +            /* Failed to find a matching leaf, append to the end. */
> +            current =3D realloc(current, (nr_leaves + 1) * sizeof(*curre=
nt));
> +            memcpy(&current[nr_leaves], update, sizeof(*update));
> +            nr_leaves++;
> +        }
> +    }
> +
> +    rc =3D x86_cpuid_copy_from_buffer(policy->cpuid, current, nr_leaves,
> +                                    &err_leaf, &err_subleaf);

Why do you need any earlier logic?=C2=A0 x86_cpuid_copy_from_buffer() alrea=
dy
does exactly this operation.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:56:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:56:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104594.200233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRykk-0008AH-BF; Thu, 01 Apr 2021 14:56:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104594.200233; Thu, 01 Apr 2021 14: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 1lRykk-0008AA-7z; Thu, 01 Apr 2021 14:56:58 +0000
Received: by outflank-mailman (input) for mailman id 104594;
 Thu, 01 Apr 2021 14:56: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 1lRykj-0008A4-1E
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:56: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 1lRykh-0008B8-HE; Thu, 01 Apr 2021 14:56:55 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRykh-0003kS-BF; Thu, 01 Apr 2021 14: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=rfgmK8b3v2wrnOQZH/HmOldZxQezvqRdiK53LCZCLKg=; b=Yht5N5XR3g4reB06REhcxUGQLI
	ticfeF3lexnbto1XPZ16QqDvXCkQdwHagsATzPoMkZihka5nXyJjhBvBfvI52JttLNemcyW2FItwX
	ceheQrAnkPcB8VCKeI5q5fJo156XcZq9uRd59EiHDsvK5WB9W2luiWjSF9So8XRpl6PE=;
Subject: Re: [PATCH 02/23] lib: move 64-bit div/mod compiler helpers
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <0fec827f-bb0b-4ea1-7757-9c27e9138be7@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <008a8b14-8f58-2127-9e97-87c696e07b5e@xen.org>
Date: Thu, 1 Apr 2021 15:56:53 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <0fec827f-bb0b-4ea1-7757-9c27e9138be7@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 01/04/2021 11:19, Jan Beulich wrote:
> These were built for 32-bit architectures only (the same code could,
> with some tweaking, sensibly be used to provide TI-mode helpers on
> 64-bit arch-es) - retain this property, while still avoiding to have
> a CU without any contents at all. For this, Arm's CONFIG_64BIT gets
> generalized.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
>   xen/arch/Kconfig                   |  2 ++
>   xen/arch/arm/Kconfig               | 12 +++---------
>   xen/arch/x86/Kconfig               |  1 +
>   xen/common/Makefile                |  1 -
>   xen/lib/Makefile                   |  4 ++++
>   xen/{common/lib.c => lib/divmod.c} |  2 --
>   6 files changed, 10 insertions(+), 12 deletions(-)
>   rename xen/{common/lib.c => lib/divmod.c} (99%)
> 
> diff --git a/xen/arch/Kconfig b/xen/arch/Kconfig
> index d144d4c8d3ee..f16eb0df43af 100644
> --- a/xen/arch/Kconfig
> +++ b/xen/arch/Kconfig
> @@ -1,3 +1,5 @@
> +config 64BIT
> +	bool
>   
>   config NR_CPUS
>   	int "Maximum number of CPUs"
> diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
> index 330bbf6232d4..ecfa6822e4d3 100644
> --- a/xen/arch/arm/Kconfig
> +++ b/xen/arch/arm/Kconfig
> @@ -1,17 +1,11 @@
> -config 64BIT
> -	bool
> -	default "$(ARCH)" != "arm32"
> -	help
> -	  Say yes to build a 64-bit Xen
> -	  Say no to build a 32-bit Xen
> -
>   config ARM_32
>   	def_bool y
> -	depends on !64BIT
> +	depends on "$(ARCH)" = "arm32"
>   
>   config ARM_64
>   	def_bool y
> -	depends on 64BIT
> +	depends on !ARM_32
> +	select 64BIT
>   	select HAS_FAST_MULTIPLY
>   
>   config ARM
> diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
> index f79e6634db3f..4d6911ffa467 100644
> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -1,5 +1,6 @@
>   config X86_64
>   	def_bool y
> +	select 64BIT
>   
>   config X86
>   	def_bool y
> diff --git a/xen/common/Makefile b/xen/common/Makefile
> index 71c1d466bd8f..e2a7e62d14bf 100644
> --- a/xen/common/Makefile
> +++ b/xen/common/Makefile
> @@ -21,7 +21,6 @@ obj-y += kernel.o
>   obj-y += keyhandler.o
>   obj-$(CONFIG_KEXEC) += kexec.o
>   obj-$(CONFIG_KEXEC) += kimage.o
> -obj-y += lib.o
>   obj-$(CONFIG_LIVEPATCH) += livepatch.o livepatch_elf.o
>   obj-$(CONFIG_MEM_ACCESS) += mem_access.o
>   obj-y += memory.o
> diff --git a/xen/lib/Makefile b/xen/lib/Makefile
> index 0b274583ef0b..a5dc1442a422 100644
> --- a/xen/lib/Makefile
> +++ b/xen/lib/Makefile
> @@ -10,3 +10,7 @@ lib-y += rbtree.o
>   lib-y += sort.o
>   lib-$(CONFIG_X86) += xxhash32.o
>   lib-$(CONFIG_X86) += xxhash64.o
> +
> +lib32-y := divmod.o
> +lib32-$(CONFIG_64BIT) :=
> +lib-y += $(lib32-y)
> diff --git a/xen/common/lib.c b/xen/lib/divmod.c
> similarity index 99%
> rename from xen/common/lib.c
> rename to xen/lib/divmod.c
> index 5b8f49153dad..0be6ccc70096 100644
> --- a/xen/common/lib.c
> +++ b/xen/lib/divmod.c
> @@ -40,7 +40,6 @@
>    * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
>    * SUCH DAMAGE.
>    */
> -#if BITS_PER_LONG == 32

In theory BITS_PER_LONG == 32 is not quite the same as 32-bit arch. Can 
you clarify whether this code is necessary on 64-bit arch where long is 
only 32-bit.

Cheers?

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 14:59:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 14:59:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104597.200245 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRymq-0008Ig-Ns; Thu, 01 Apr 2021 14:59:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104597.200245; Thu, 01 Apr 2021 14:59: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 1lRymq-0008IZ-Kl; Thu, 01 Apr 2021 14:59:08 +0000
Received: by outflank-mailman (input) for mailman id 104597;
 Thu, 01 Apr 2021 14:59: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 1lRymp-0008IE-FK
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 14:59: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 1lRymn-0008Eg-K8; Thu, 01 Apr 2021 14:59:05 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRymn-0003sq-AV; Thu, 01 Apr 2021 14:59: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=2B2XnEBGxheZeGJhpPXhoq9u+sbeaGLw7S4APvBqSFM=; b=QmZ/vYV2/VcLujh3+TKxC+AKnP
	+d3x793PJDQidsVwEb1carpRDFIu/dd3Ddw6+D/fXtNPid5ihyn4OWtMSXmtSE902wC4uB6e1TODh
	mC+zJ36qbJvySLlfP7u38FcWNXdsDlCxZu815jsvk0WcqyNXSBlWyNkMtvstk2+ep14o=;
Subject: Re: [PATCH 03/23] string: drop redundant declarations
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <e0915251-b0cc-79ee-feec-08722e1243fb@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <69ccb1f4-12c8-b3ce-3271-16e19908cce1@xen.org>
Date: Thu, 1 Apr 2021 15:59:03 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <e0915251-b0cc-79ee-feec-08722e1243fb@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 01/04/2021 11:20, Jan Beulich wrote:
> These standard functions shouldn't need custom declarations. The only
> case where redundancy might be needed is if there were inline functions
> there. But we don't have any here (anymore). Prune the per-arch headers
> of duplicate declarations while moving the asm/string.h inclusion past
> the declarations.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

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

Cheers,

> 
> --- a/xen/include/asm-arm/string.h
> +++ b/xen/include/asm-arm/string.h
> @@ -8,41 +8,21 @@
>    */
>   
>   #define __HAVE_ARCH_STRRCHR
> -char *strrchr(const char *s, int c);
> -
>   #define __HAVE_ARCH_STRCHR
> -char *strchr(const char *s, int c);
> -
>   #if defined(CONFIG_ARM_64)
>   #define __HAVE_ARCH_STRCMP
> -int strcmp(const char *, const char *);
> -
>   #define __HAVE_ARCH_STRNCMP
> -int strncmp(const char *, const char *, size_t);
> -
>   #define __HAVE_ARCH_STRLEN
> -size_t strlen(const char *);
> -
>   #define __HAVE_ARCH_STRNLEN
> -size_t strnlen(const char *, size_t);
>   #endif
>   
>   #define __HAVE_ARCH_MEMCPY
> -void *memcpy(void *, const void *, size_t);
> -
>   #if defined(CONFIG_ARM_64)
>   #define __HAVE_ARCH_MEMCMP
> -int memcmp(const void *, const void *, size_t);
>   #endif
> -
>   #define __HAVE_ARCH_MEMMOVE
> -void *memmove(void *dest, const void *src, size_t n);
> -
>   #define __HAVE_ARCH_MEMSET
> -void *memset(void *, int, size_t);
> -
>   #define __HAVE_ARCH_MEMCHR
> -void *memchr(const void *, int, size_t);
>   
>   #if defined(CONFIG_ARM_32)
>   
> --- a/xen/include/asm-x86/string.h
> +++ b/xen/include/asm-x86/string.h
> @@ -2,15 +2,12 @@
>   #define __X86_STRING_H__
>   
>   #define __HAVE_ARCH_MEMCPY
> -void *memcpy(void *dest, const void *src, size_t n);
>   #define memcpy(d, s, n) __builtin_memcpy(d, s, n)
>   
>   #define __HAVE_ARCH_MEMMOVE
> -void *memmove(void *dest, const void *src, size_t n);
>   #define memmove(d, s, n) __builtin_memmove(d, s, n)
>   
>   #define __HAVE_ARCH_MEMSET
> -void *memset(void *dest, int c, size_t n);
>   #define memset(s, c, n) __builtin_memset(s, c, n)
>   
>   #endif /* __X86_STRING_H__ */
> --- a/xen/include/xen/string.h
> +++ b/xen/include/xen/string.h
> @@ -4,11 +4,6 @@
>   #include <xen/types.h>	/* for size_t */
>   
>   /*
> - * Include machine specific inline routines
> - */
> -#include <asm/string.h>
> -
> -/*
>    * These string functions are considered too dangerous for normal use.
>    * Use safe_strcpy(), safe_strcat(), strlcpy(), strlcat() as appropriate.
>    */
> @@ -17,97 +12,78 @@
>   #define strncpy __xen_has_no_strncpy__
>   #define strncat __xen_has_no_strncat__
>   
> -#ifndef __HAVE_ARCH_STRLCPY
>   size_t strlcpy(char *, const char *, size_t);
> -#endif
> -
> -#ifndef __HAVE_ARCH_STRLCAT
>   size_t strlcat(char *, const char *, size_t);
> -#endif
> +int strcmp(const char *, const char *);
> +int strncmp(const char *, const char *, size_t);
> +int strnicmp(const char *, const char *, size_t);
> +int strcasecmp(const char *, const char *);
> +char *strchr(const char *, int);
> +char *strrchr(const char *, int);
> +char *strstr(const char *, const char *);
> +size_t strlen(const char *);
> +size_t strnlen(const char *, size_t);
> +char *strpbrk(const char *, const char *);
> +char *strsep(char **, const char *);
> +size_t strspn(const char *, const char *);
> +
> +void *memset(void *, int, size_t);
> +void *memcpy(void *, const void *, size_t);
> +void *memmove(void *, const void *, size_t);
> +int memcmp(const void *, const void *, size_t);
> +void *memchr(const void *, int, size_t);
> +void *memchr_inv(const void *, int, size_t);
> +
> +#include <asm/string.h>
>   
>   #ifndef __HAVE_ARCH_STRCMP
> -int strcmp(const char *, const char *);
>   #define strcmp(s1, s2) __builtin_strcmp(s1, s2)
>   #endif
>   
>   #ifndef __HAVE_ARCH_STRNCMP
> -int strncmp(const char *, const char *, size_t);
>   #define strncmp(s1, s2, n) __builtin_strncmp(s1, s2, n)
>   #endif
>   
> -#ifndef __HAVE_ARCH_STRNICMP
> -int strnicmp(const char *, const char *, size_t);
> -#endif
> -
>   #ifndef __HAVE_ARCH_STRCASECMP
> -int strcasecmp(const char *, const char *);
>   #define strcasecmp(s1, s2) __builtin_strcasecmp(s1, s2)
>   #endif
>   
>   #ifndef __HAVE_ARCH_STRCHR
> -char *strchr(const char *, int);
>   #define strchr(s1, c) __builtin_strchr(s1, c)
>   #endif
>   
>   #ifndef __HAVE_ARCH_STRRCHR
> -char *strrchr(const char *, int);
>   #define strrchr(s1, c) __builtin_strrchr(s1, c)
>   #endif
>   
>   #ifndef __HAVE_ARCH_STRSTR
> -char *strstr(const char *, const char *);
>   #define strstr(s1, s2) __builtin_strstr(s1, s2)
>   #endif
>   
>   #ifndef __HAVE_ARCH_STRLEN
> -size_t strlen(const char *);
>   #define strlen(s1) __builtin_strlen(s1)
>   #endif
>   
> -#ifndef __HAVE_ARCH_STRNLEN
> -size_t strnlen(const char *, size_t);
> -#endif
> -
> -#ifndef __HAVE_ARCH_STRPBRK
> -char *strpbrk(const char *, const char *);
> -#endif
> -
> -#ifndef __HAVE_ARCH_STRSEP
> -char *strsep(char **, const char *);
> -#endif
> -
> -#ifndef __HAVE_ARCH_STRSPN
> -size_t strspn(const char *, const char *);
> -#endif
> -
> -
>   #ifndef __HAVE_ARCH_MEMSET
> -void *memset(void *, int, size_t);
>   #define memset(s, c, n) __builtin_memset(s, c, n)
>   #endif
>   
>   #ifndef __HAVE_ARCH_MEMCPY
> -void *memcpy(void *, const void *, size_t);
>   #define memcpy(d, s, n) __builtin_memcpy(d, s, n)
>   #endif
>   
>   #ifndef __HAVE_ARCH_MEMMOVE
> -void *memmove(void *, const void *, size_t);
>   #define memmove(d, s, n) __builtin_memmove(d, s, n)
>   #endif
>   
>   #ifndef __HAVE_ARCH_MEMCMP
> -int memcmp(const void *, const void *, size_t);
>   #define memcmp(s1, s2, n) __builtin_memcmp(s1, s2, n)
>   #endif
>   
>   #ifndef __HAVE_ARCH_MEMCHR
> -void *memchr(const void *, int, size_t);
>   #define memchr(s, c, n) __builtin_memchr(s, c, n)
>   #endif
>   
> -void *memchr_inv(const void *, int, size_t);
> -
>   #define is_char_array(x) __builtin_types_compatible_p(typeof(x), char[])
>   
>   /* safe_xxx always NUL-terminates and returns !=0 if result is truncated. */
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 15:05:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 15:05:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104600.200257 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRysi-0000p2-E9; Thu, 01 Apr 2021 15:05:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104600.200257; Thu, 01 Apr 2021 15:05: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 1lRysi-0000ov-B7; Thu, 01 Apr 2021 15:05:12 +0000
Received: by outflank-mailman (input) for mailman id 104600;
 Thu, 01 Apr 2021 15:05:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRysg-0000oq-8u
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 15:05:10 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b57ca2b0-371c-4283-9e96-969093e2fbb4;
 Thu, 01 Apr 2021 15:05: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: b57ca2b0-371c-4283-9e96-969093e2fbb4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617289508;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=eoJCUGWPEZDvA6Yg8CLrgwQ24zajYTDTqaaCkalI14M=;
  b=J7+YD4kYfauGj2H8e3ahlzEbsqRA2hBdm8RfO+vM50zHJHNA/C/nibnW
   9T2X3i2Fj3qbyIsenhvIIHBRfIFt6o9xGAiTntxAFr3cP5cchlpuVFO2N
   YXzD4aUKXRSp3b4pEgZ87HSGW7+brLsD1jHU6MoV28KyY0Cl0qg6hz3Uw
   s=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: TEVvGx3fX4bQ2WFKIFxySNFf/+g79IiNpFxBCyAuLGqRKvk7pe6zHM3Atvw2fp4XGvzKUNQSrB
 7ccIdHdSMXgTnesm5tuHaqdwweySV7oTX2Pbgeh/3KtyPnOrzgvvAWFxH2eUITiujrJtUJc/Gx
 3Csw7hYbISvoe29j9TdP3lKerLQphD9Kp71iJAq8ttXil20brlIoam7rEzjN71QdVWhhH1twEv
 0IwcWYqajEkqH6lXQ59qExyPNXOhQuEKzZ7S0K9czMC9jSOsGxc0nxUmlSzkyUgL4gihMxcJIS
 CTE=
X-SBRS: 5.2
X-MesageID: 40847832
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:L3WlXq7Jrncyz3aAkgPXwWWEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbzqzOEtwWQVAGN4dHJ
 2T+sJIq1ObCAsqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+HLzGz2BACXzRThYoz6G
 StqX2F2oyPkdGejiXd2Wja8ohMlLLapOdrKcSQhqEuW03RoymyYoAJYczkgBkUp6WV5E8ugJ
 3wpX4bTr5OwlfwWk3wnhf3wQnn118Vmgzf4HuVm2Hqr8C8ZB9SMbs5uatjfhHU61UtsbhHuc
 ohtQLp1OsjMTr6kCvw/NTOXR1x/3DExUYKquIPk2dZFbIXdb45l/1uwGpuDJwCECjmgbpXdt
 VGMce03oc1TXqndXzD+kFgzNuwN05DZSuucwwpv8yY1CVuh3Zpz0cU79x3pAZwyLsND7ZD/O
 jKKaJuifVnSdIXd7t0AKM7TdKwEXGle2OCDEuiZXDcUI0XMXPErJD6pJ0z+eGRYZQNiL8/go
 7IXl90vXM7EnieR/Gm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uu9HImYRdPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFOUIp9cAXU6UqM6jEPyrisXrNNLoYJb9GzctXW3yRl
 EZWiLoGclG5ke3HlDihhz8XG7sZ1zf8Zp8HLOyxZlX9KE9cql39iQFg1Ww4c+GbRdYtLYtQU
 d4KLT71oO3zFPGuVrg3iFMAF5wH0xV6LLvXzdhvgkRKX75dr4FppG6cWBW132XGw9nQ6rtYU
 lijmUy3ZjyA42bxCgkBd7iGHmdlWEvqHWDSIpZvaGf+8H/eNcdAow9UKJ8USXHfiYF2DpCmS
 NmUkspV0XfHjThheGOl5oPHtzScNF6nUOMOs5bqXXWsG2GvsExTn4nXzqjOPTnwzoGdn5xvB
 lc4qUfiL2PlXKEMm0kmtk1N1VKdSCqGr5cNR+EY49Vg7jvXwl1QQ6x9HqnoiB2XlCv21QZh2
 TnIyHRXf3QGFJStkpV1bvQ/Epuen+QeF9xbX5GoZRwfF62yEpb4KuuXO6ewmGRYlwNzqUmPD
 bJbSA7Dyluy9q0vSTl0gqqJDED/NEDL+bdBLMsf/XvwXurMpSPjrxDNeRT5oxZONfntfIrXe
 qTdxSOFi7xD/ok1mWu1y8YERgxjENhveLj2RXj4mT94WU2BuDKJk96A54cONOR4gHfNr+1+a
 Q8qehwm+S+Mm/8MIHbjY7WaiNOMRPVryqdSfoypZVdoKI1s/9SEvDgIEz1/UAC+C97CsH+0H
 46auBcxpvqP4d0Zcwcey5D5DMS5Z+yBXpuljazO/M0eFEmsmTSMNyI6YfZsLZHODz0mCLAfX
 2ktxBH9/jLXyG/xacXJqI5L2NRclU94h1ZjZW/XryVLAWhbOdY+lWmdle7bb9GUaCAcI9g4y
 pS0pWtn+WNcTD/1x2VlTxnIrhW+2LiZc+pGgqDFapp9NO9UG78zpeC0YqWjD3tTyG8ZFldrY
 pZdVYIZsAGswIctuQMo2CPY52yhFkknVtY6SxmkVCo+rHO2hakIWh2dSvDgptXWjFPNGOvls
 qty5nB6EjA
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40847832"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AP4xvwbSJzC4xHVWIkcJkPAfal38RfL1MwHrImyvfkJ/th8cqd6ps22RDBhBQiGB4Epwkdotcvq1iyRswfbE2fY8Kw5G34sOagykNdNZYNstQDkm5+/+56fwUuIVS3/n+zjRYHn6adMi/EGer0gElcMa0UCE4cBLoH/hry/ESivknJRrg4+2ULNlLD8FIMMBYq5p91aKN21hg+tfx0wCdhausAuVg0EYJxpMlrbI/pTHR+7eE6ptOP51qksEt55oXkKxdPV7uUnXjpf81kBlTqxv+1ZbCrQP/8n69894vyWecCghDwAhoEri/o3RXOAxuTR9T8YUol2I9qsFGciMMA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mnfgfRZjGRorKcqd+4krhtohz7Ns1X3vDqoDDV02YgA=;
 b=lCbo92phgdio8S7R4uB+pceP/cf065JyoXPEw3GQhlT5Nji+gcjTZM4/IevKk2qG/cFAx7KWPfkQgbUJO3mr2jSrx695nyBkkcib3BbyV0upPEAf9lE1CwMN3mSUAM5ItXGIcClad5Dww0T33ppMsES8YrutsXMfsfPeF+h6Ig1It/xCzmCBTo+sBFK/LhBx/tL3pyuYFAnL2+95980epCBL0u5TuV2ORdtt1rJj+QvFklC9SqNuTrxyVH5ykilgAHqXvBVeG5OuThRiQrhFewmd3q7HSxRm2vt0Gqbrw2Qh398cYhyDFDbzstAZ9WlUOuiOLuuh+L2gswi7He5k/A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mnfgfRZjGRorKcqd+4krhtohz7Ns1X3vDqoDDV02YgA=;
 b=YMRhrkkgeU1Bf7tXODY1TrDxpePioel1wXx2xDzkim43f9yyai3ziWuUKXPlcKlTrhOr2WdGcs+Vhcy0sEz+woCs7YJYRnQXECbULlpV2qRcaE29T5sbBPvE38wLcThQuPXo/MR/YFYhG0DvX8Uhrrkt6IsbhSwA3OlUz0WRSO8=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-14-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 13/21] libs/guest: switch users of
 xc_set_domain_cpu_policy
Message-ID: <1cfae8d7-3708-79e2-715d-dea7f7ff5b2e@citrix.com>
Date: Thu, 1 Apr 2021 16:04:29 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-14-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0446.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:e::26) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 347cbfd8-3d57-427f-b132-08d8f51f7657
X-MS-TrafficTypeDiagnostic: BN3PR03MB2372:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN3PR03MB23721CB21F5538D11A4C76A9BA7B9@BN3PR03MB2372.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:1443;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: x4/uLrhNxjHwZKfDRzuVA9gNKPJW79/eez13klzvnwVKiswKWKAPN89vg1Zw4dijfJTWKBxf5U4UbQTe6lJoj4mKyZPCt0fBQee0OUgiEQnQ/5yJsTGpoOpT9BE8dMj8yjvyTXHZ49VMGVGgnRanZcsXy11GJmDD6v1vKr+lYIwo7A9rCGUNrTBYRI1O2RUiH3IDWRT3CsBTyLokVHoxajzPga7oTChEBS3p4JIeJ2j+TRCuC1UUO6lcuO4O5no8UBqLBgQ2nXfxnddlFG6RDhvzRekdNA40utMgHSLd2Aq8IMedTQjVDY4RgazCFFclcybPGtrL/HV4t/+XBYz06yMae4RWAhb2J6whsVWqL6keaWKjVqloBut8gl/jmSSXEL0Yzl9HbHScV0QuDKCIW6qa0DGlA45pKkK9C2Jvs+CX7cIcdI1HU+2hoHsL0LECRkcCvCooQP2GJDRMtBLEaOhjdfMOL5X01ERk6Fpq28MJcvj6aMf7dYWWaUJqg8yuPoEcb3sdKgARwMu+dMW0MIuBWz4gNrItzC0roBkXt5PAVmeGDAKIBEjeeREuD4M21GJPrWlS5ABjF89l9X9L/5ojOEj1QQ88jqnZAnr1loElK2G4uc6D14tbLef2ToRVFwK7HHRqYWBpqxe7mrGbWT7T5OQuufT4+UDpLVip3J7n3aTgpTBdQP/ibtq6utpAxIZ5FQ18z9Iq55lpmJeMtjcVPdOyADmkgczvgUsgVpQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(376002)(366004)(346002)(396003)(39860400002)(8676002)(31686004)(8936002)(31696002)(6666004)(2616005)(186003)(956004)(54906003)(83380400001)(16526019)(26005)(6486002)(36756003)(86362001)(16576012)(66946007)(316002)(478600001)(4326008)(38100700001)(53546011)(66556008)(66476007)(5660300002)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 347cbfd8-3d57-427f-b132-08d8f51f7657
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 15:04:35.3403
 (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: C28o7fiYjatAfz0usAIXjYxok8YPgYyWnsLWNOclD5CxGw01FpBSmGrkuFNg9A4OqMPwSgGbpPBIG98SGHMrqZhmV1Crz9fzdEEbuHV2yms=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2372
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> To use the new cpu policy interface xc_cpu_policy_set_domain. Note
> that xc_set_domain_cpu_policy is removed from the interface and the
> function is made static to xg_cpuid_x86.c for it's internal callers.
>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---
>  tools/include/xenctrl.h             |  5 -----
>  tools/libs/guest/xg_cpuid_x86.c     | 22 +++++++++++-----------
>  tools/libs/guest/xg_sr_common_x86.c | 28 +++++++++++++++++++++-------
>  3 files changed, 32 insertions(+), 23 deletions(-)
>
> diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
> index 46f5026081c..164a287b367 100644
> --- a/tools/include/xenctrl.h
> +++ b/tools/include/xenctrl.h
> @@ -2625,11 +2625,6 @@ int xc_get_cpu_featureset(xc_interface *xch, uint3=
2_t index,
> =20
>  int xc_cpu_policy_get_size(xc_interface *xch, uint32_t *nr_leaves,
>                             uint32_t *nr_msrs);
> -int xc_set_domain_cpu_policy(xc_interface *xch, uint32_t domid,
> -                             uint32_t nr_leaves, xen_cpuid_leaf_t *leave=
s,
> -                             uint32_t nr_msrs, xen_msr_entry_t *msrs,
> -                             uint32_t *err_leaf_p, uint32_t *err_subleaf=
_p,
> -                             uint32_t *err_msr_p);
> =20
>  uint32_t xc_get_cpu_featureset_size(void);
> =20
> diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_=
x86.c
> index 07756743e76..f7b662f31aa 100644
> --- a/tools/libs/guest/xg_cpuid_x86.c
> +++ b/tools/libs/guest/xg_cpuid_x86.c
> @@ -204,11 +204,11 @@ static int get_domain_cpu_policy(xc_interface *xch,=
 uint32_t domid,
>      return ret;
>  }
> =20
> -int xc_set_domain_cpu_policy(xc_interface *xch, uint32_t domid,
> -                             uint32_t nr_leaves, xen_cpuid_leaf_t *leave=
s,
> -                             uint32_t nr_msrs, xen_msr_entry_t *msrs,
> -                             uint32_t *err_leaf_p, uint32_t *err_subleaf=
_p,
> -                             uint32_t *err_msr_p)
> +static int set_domain_cpu_policy(xc_interface *xch, uint32_t domid,
> +                                 uint32_t nr_leaves, xen_cpuid_leaf_t *l=
eaves,
> +                                 uint32_t nr_msrs, xen_msr_entry_t *msrs=
,
> +                                 uint32_t *err_leaf_p, uint32_t *err_sub=
leaf_p,
> +                                 uint32_t *err_msr_p)
>  {
>      DECLARE_DOMCTL;
>      DECLARE_HYPERCALL_BOUNCE(leaves,
> @@ -405,8 +405,8 @@ static int xc_cpuid_xend_policy(
>      }
> =20
>      /* Feed the transformed currrent policy back up to Xen. */
> -    rc =3D xc_set_domain_cpu_policy(xch, domid, nr_cur, cur, 0, NULL,
> -                                  &err_leaf, &err_subleaf, &err_msr);
> +    rc =3D set_domain_cpu_policy(xch, domid, nr_cur, cur, 0, NULL,
> +                               &err_leaf, &err_subleaf, &err_msr);
>      if ( rc )
>      {
>          PERROR("Failed to set d%d's policy (err leaf %#x, subleaf %#x, m=
sr %#x)",
> @@ -638,8 +638,8 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t=
 domid, bool restore,
>          goto out;
>      }
> =20
> -    rc =3D xc_set_domain_cpu_policy(xch, domid, nr_leaves, leaves, 0, NU=
LL,
> -                                  &err_leaf, &err_subleaf, &err_msr);
> +    rc =3D set_domain_cpu_policy(xch, domid, nr_leaves, leaves, 0, NULL,
> +                               &err_leaf, &err_subleaf, &err_msr);
>      if ( rc )
>      {
>          PERROR("Failed to set d%d's policy (err leaf %#x, subleaf %#x, m=
sr %#x)",
> @@ -833,8 +833,8 @@ int xc_cpu_policy_set_domain(xc_interface *xch, uint3=
2_t domid,
>      if ( rc )
>          goto out;
> =20
> -    rc =3D xc_set_domain_cpu_policy(xch, domid, nr_leaves, leaves, nr_ms=
rs, msrs,
> -                                  &err_leaf, &err_subleaf, &err_msr);
> +    rc =3D set_domain_cpu_policy(xch, domid, nr_leaves, leaves, nr_msrs,=
 msrs,
> +                               &err_leaf, &err_subleaf, &err_msr);
>      if ( rc )
>      {
>          ERROR("Failed to set domain %u policy (%d =3D %s)", domid, -rc,
> diff --git a/tools/libs/guest/xg_sr_common_x86.c b/tools/libs/guest/xg_sr=
_common_x86.c
> index 15265e7a331..02f0c3ae9ed 100644
> --- a/tools/libs/guest/xg_sr_common_x86.c
> +++ b/tools/libs/guest/xg_sr_common_x86.c
> @@ -151,7 +151,10 @@ int x86_static_data_complete(struct xc_sr_context *c=
tx, unsigned int *missing)
>  {
>      xc_interface *xch =3D ctx->xch;
>      uint32_t nr_leaves =3D 0, nr_msrs =3D 0;
> -    uint32_t err_l =3D ~0, err_s =3D ~0, err_m =3D ~0;
> +    xc_cpu_policy_t policy =3D xc_cpu_policy_init();
> +
> +    if ( !policy )
> +        return -1;
> =20
>      if ( ctx->x86.restore.cpuid.ptr )
>          nr_leaves =3D ctx->x86.restore.cpuid.size / sizeof(xen_cpuid_lea=
f_t);
> @@ -163,14 +166,25 @@ int x86_static_data_complete(struct xc_sr_context *=
ctx, unsigned int *missing)
>      else
>          *missing |=3D XGR_SDD_MISSING_MSR;
> =20
> +    if ( nr_leaves &&
> +         xc_cpu_policy_update_cpuid(xch, policy,
> +                                    ctx->x86.restore.cpuid.ptr, nr_leave=
s) )
> +    {
> +        PERROR("Failed to update CPUID policy");
> +        return -1;
> +    }
> +    if ( nr_msrs &&
> +         xc_cpu_policy_update_msrs(xch, policy,
> +                                   ctx->x86.restore.msr.ptr, nr_msrs) )
> +    {
> +        PERROR("Failed to update MSR policy");
> +        return -1;
> +    }
> +
>      if ( (nr_leaves || nr_msrs) &&
> -         xc_set_domain_cpu_policy(xch, ctx->domid,
> -                                  nr_leaves, ctx->x86.restore.cpuid.ptr,
> -                                  nr_msrs,   ctx->x86.restore.msr.ptr,
> -                                  &err_l, &err_s, &err_m) )
> +         xc_cpu_policy_set_domain(xch, ctx->domid, policy) )
>      {
> -        PERROR("Failed to set CPUID policy: leaf %08x, subleaf %08x, msr=
 %08x",
> -               err_l, err_s, err_m);
> +        PERROR("Failed to set CPUID policy");
>          return -1;
>      }

I don't think this is a good move.

All it does is waste time shuffling data in userspace during the VM
downtime window.=C2=A0 The format of CPUID/MSR data in the migration stream
is (deliberately) already in the form to hand it straight back to Xen,
and there will never be additional policy changes here (because that
would break the VM).

I'd just drop the patch entirely.=C2=A0 I'm not even certain if we want to
remove the thin hypercall wrappers - I'm pretty sure some of my low
level unit testing plans will want the raw accessors without being
forced through the xc_cpuid_policy_t interface.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 15:05:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 15:05:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104601.200269 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRysv-0000sh-Tu; Thu, 01 Apr 2021 15:05:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104601.200269; Thu, 01 Apr 2021 15: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 1lRysv-0000sa-PG; Thu, 01 Apr 2021 15:05:25 +0000
Received: by outflank-mailman (input) for mailman id 104601;
 Thu, 01 Apr 2021 15:05: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 1lRysu-0000sI-Pa
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 15:05: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 1lRyss-0008Md-Hy; Thu, 01 Apr 2021 15:05:22 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRyss-0004QZ-9J; Thu, 01 Apr 2021 15:05: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=MagXW9LQlin9AFJg5UltlAylA3WVoqBWMoQH4QialPc=; b=s3ezXpeV0xGH4lwDtMkEwdEfST
	RFDJcHngZzSLDCln4WNncpkB1AMUi+9IxYF8nmIvWFnVHL6HkuW+aTTCCg0ehiOFiffdLdJEOC6dc
	uDIMNbBjzXYTTSHXi69zjx08N2wdBBvKBe0lfqSFulPF7oPtNBT3vrB3qebELuYdvFp8=;
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <089e3ff0-5633-02b4-baac-328ea8618469@xen.org>
Date: Thu, 1 Apr 2021 16:05:20 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 01/04/2021 09:33, Jan Beulich wrote:
> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -341,7 +341,7 @@ _clean: delete-unfresh-files
>   	find . \( -name "*.o" -o -name ".*.d" -o -name ".*.d2" \
>   		-o -name "*.gcno" -o -name ".*.cmd" \) -exec rm -f {} \;
>   	rm -f include/asm $(TARGET) $(TARGET).gz $(TARGET).efi $(TARGET).efi.map $(TARGET)-syms $(TARGET)-syms.map *~ core
> -	rm -f include/asm-*/asm-offsets.h
> +	rm -f asm-offsets.s include/asm-*/asm-offsets.h
>   	rm -f .banner
>   
>   .PHONY: _distclean
> @@ -362,7 +362,7 @@ $(TARGET): delete-unfresh-files
>   		done; \
>   		true
>   	$(MAKE) -f $(BASEDIR)/Rules.mk -C include
> -	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) asm-offsets.s
> +	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) include
>   	$(MAKE) -f $(BASEDIR)/Rules.mk include/asm-$(TARGET_ARCH)/asm-offsets.h
>   	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) $@
>   
> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
>   	@sed -rf tools/process-banner.sed < .banner >> $@.new
>   	@mv -f $@.new $@
>   
> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
> +	$(call move-if-changed,$@.new,$@)
> +
> +include/asm-$(TARGET_ARCH)/asm-offsets.h: asm-offsets.s
>   	@(set -e; \
>   	  echo "/*"; \
>   	  echo " * DO NOT MODIFY."; \
> --- a/xen/arch/arm/Makefile
> +++ b/xen/arch/arm/Makefile
> @@ -131,8 +131,8 @@ $(TARGET)-syms: prelink.o xen.lds
>   		>$(@D)/$(@F).map
>   	rm -f $(@D)/.$(@F).[0-9]*
>   
> -asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c
> -	$(CC) $(filter-out -flto,$(c_flags)) -S -o $@ $<
> +.PHONY: include
> +include:

 From a generic PoV, this target is meant to generate arch-specific 
include. Is that correct?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 15:09:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 15:09:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104608.200280 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRywc-00015A-Ey; Thu, 01 Apr 2021 15:09:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104608.200280; Thu, 01 Apr 2021 15:09:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRywc-000153-Bz; Thu, 01 Apr 2021 15:09:14 +0000
Received: by outflank-mailman (input) for mailman id 104608;
 Thu, 01 Apr 2021 15:09: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 1lRywb-00014y-5C
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 15:09: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 1lRywW-0008R0-Tb; Thu, 01 Apr 2021 15:09:08 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRywW-0004gx-Io; Thu, 01 Apr 2021 15:09:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:References:Cc:To:From:Subject;
	bh=deMjVamMcrwEXOZ4vgqdc5eJf3mrR+dGWb86V9OmEgw=; b=sBdhLoBtFGLPEY7RMDDYHg1RLA
	hz7sXNkCl4sveLv0fEK3uCgxf45ED3H5zTb7hWBtGv+x6ox5EAnCibQy+e5964DSu7YX+FapiTC7d
	TrRxxJ1tYF9exKd/0Pq0hSN6EvQo/KPI1OQcTBaubHtclLbTqQ3AGylvGyUGEhO7VXco=;
Subject: Re: [PATCH] xen/arm: Ensure the vCPU context is seen before clearing
 the _VPF_down
From: Julien Grall <julien@xen.org>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 ash.j.wilding@gmail.com, Julien Grall <jgrall@amazon.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Dario Faggioli <dfaggioli@suse.com>, George Dunlap <george.dunlap@citrix.com>
References: <20210226205158.20991-1-julien@xen.org>
 <alpine.DEB.2.21.2102261756280.2682@sstabellini-ThinkPad-T480s>
 <ca41bfbb-d942-d8fd-e96e-c464f6b3643f@xen.org>
 <alpine.DEB.2.21.2103191652450.439@sstabellini-ThinkPad-T480s>
 <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
Message-ID: <c481a95a-c9d4-4c77-e9e2-8aee7bc347d5@xen.org>
Date: Thu, 1 Apr 2021 16:09:06 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi,

On 20/03/2021 11:47, Julien Grall wrote:
> 
> 
> On 20/03/2021 00:01, Stefano Stabellini wrote:
>> On Sat, 27 Feb 2021, Julien Grall wrote:
>>> (+ Dario and George)
>>>
>>> Hi Stefano,
>>>
>>> I have added Dario and George to get some inputs from the scheduling 
>>> part.
>>>
>>> On 27/02/2021 01:58, Stefano Stabellini wrote:
>>>> On Fri, 26 Feb 2021, Julien Grall wrote:
>>>>> From: Julien Grall <jgrall@amazon.com>
>>>>>
>>>>> A vCPU can get scheduled as soon as _VPF_down is cleared. As there is
>>>>> currently not ordering guarantee in arch_set_info_guest(), it may be
>>>>> possible that flag can be observed cleared before the new values of 
>>>>> vCPU
>>>>> registers are observed.
>>>>>
>>>>> Add an smp_mb() before the flag is cleared to prevent re-ordering.
>>>>>
>>>>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>>>>
>>>>> ---
>>>>>
>>>>> Barriers should work in pair. However, I am not entirely sure 
>>>>> whether to
>>>>> put the other half. Maybe at the beginning of context_switch_to()?
>>>>
>>>> It should be right after VGCF_online is set or cleared, right?
>>>
>>> vcpu_guest_context_t is variable allocated on the heap just for the 
>>> purpose of
>>> this call. So an ordering with VGFC_online is not going to do anything.
>>>
>>>> So it
>>>> would be:
>>>>
>>>> xen/arch/arm/domctl.c:arch_get_info_guest
>>>> xen/arch/arm/vpsci.c:do_common_cpu_on
>>>>
>>>> But I think it is impossible that either of them get called at the same
>>>> time as arch_set_info_guest, which makes me wonder if we actually need
>>>> the barrier...
>>> arch_get_info_guest() is called without the domain lock held and I 
>>> can't see
>>> any other lock that could prevent it to be called in // of
>>> arch_set_info_guest().
>>>
>>> So you could technically get corrupted information from
>>> XEN_DOMCTL_getvcpucontext. For this case, we would want a smp_wmb() 
>>> before
>>> writing to v->is_initialised. The corresponding read barrier would be in
>>> vcpu_pause() -> vcpu_sleep_sync() -> sync_vcpu_execstate().
>>>
>>> But this is not the issue I was originally trying to solve. Currently,
>>> do_common_cpu_on() will roughly do:
>>>
>>>   1) domain_lock(d)
>>>
>>>   2) v->arch.sctlr = ...
>>>      v->arch.ttbr0 = ...
>>>
>>>   3) clear_bit(_VFP_down, &v->pause_flags);
>>>
>>>   4) domain_unlock(d)
>>>
>>>   5) vcpu_wake(v);
>>>
>>> If we had only one pCPU on the system, then we would only wake the 
>>> vCPU in
>>> step 5. We would be fine in this situation. But that's not the 
>>> interesting
>>> case.
>>>
>>> If you add a second pCPU in the story, it may be possible to have 
>>> vcpu_wake()
>>> happening in // (see more below). As there is no memory barrier, step 
>>> 3 may be
>>> observed before 2. So, assuming the vcpu is runnable, we could start to
>>> schedule a vCPU before any update to the registers (step 2) are 
>>> observed.
>>>
>>> This means that when context_switch_to() is called, we may end up to 
>>> restore
>>> some old values.
>>>
>>> Now the question is can vcpu_wake() be called in // from another 
>>> pCPU? AFAICT,
>>> it would be only called if a given flag in v->pause_flags is cleared 
>>> (e.g.
>>> _VFP_blocked). But can we rely on that?
>>>
>>> Even if we can rely on it, v->pause_flags has other flags in it. I 
>>> couldn't
>>> rule out that _VPF_down cannot be set at the same time as the other 
>>> _VPF_*.
>>>
>>> Therefore, I think a barrier is necessary to ensure the ordering.
>>>
>>> Do you agree with this analysis?
>> Yes, I think this makes sense. The corresponding barrier in the
>> scheduling code would have to be after reading _VPF_down and before
>> reading v->arch.sctlr, etc.
>>
>>
>>>>> The issues described here is also quite theoritical because there are
>>>>> hundreds of instructions executed between the time a vCPU is seen
>>>>> runnable and scheduled. But better be safe than sorry :).
>>>>> ---
>>>>>    xen/arch/arm/domain.c | 7 +++++++
>>>>>    1 file changed, 7 insertions(+)
>>>>>
>>>>> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
>>>>> index bdd3d3e5b5d5..2b705e66be81 100644
>>>>> --- a/xen/arch/arm/domain.c
>>>>> +++ b/xen/arch/arm/domain.c
>>>>> @@ -914,7 +914,14 @@ int arch_set_info_guest(
>>>>>        v->is_initialised = 1;
>>>>>          if ( ctxt->flags & VGCF_online )
>>>>> +    {
>>>>> +        /*
>>>>> +         * The vCPU can be scheduled as soon as _VPF_down is cleared.
>>>>> +         * So clear the bit *after* the context was loaded.
>>>>> +         */
>>>>> +        smp_mb();
>>>
>>>  From the discussion above, I would move this barrier before 
>>> v->is_initialised.
>>> So we also take care of the issue with arch_get_info_guest().
>>>
>>> This barrier also can be reduced to a smp_wmb() as we only expect an 
>>> ordering
>>> between writes.
>>>
>>> The barrier would be paired with the barrier in:
>>>     - sync_vcpu_execstate() in the case of arch_get_vcpu_info_guest().
>>>     - context_switch_to() in the case of scheduling (The exact 
>>> barrier is TDB).
>>
>> OK, this makes sense, but why before:
>>
>>    v->is_initialised = 1;
>>
>> instead of right after it? It is just v->pause_flags we care about,
>> right?
> 
> The issue I originally tried to address was a race with v->pause_flags. 
> But I also discovered one with v->initialised while answering to your 
> previous e-mail. This was only briefly mentioned so let me expand it.
> 
> A toolstack can take a snapshot of the vCPU context using 
> XEN_DOMCTL_get_vcpucontext. The helper will bail out if 
> v->is_initialized is 0.
> 
> If v->is_initialized is 1, it will temporarily pause the vCPU and then 
> call arch_get_info_guest().
> 
> AFAICT, arch_get_info_guest() and arch_set_info_guest() (called from 
> PSCI CPU on) can run concurrently.
> 
> If you put the barrier right after v->is_initialised, then a 
> processor/compiler is allowed to re-order the write with what comes 
> before. Therefore, the new value of v->is_initialised may be observed 
> before v->arch.{sctlr, ttbr0,...}.
> 
> Hence, we need a barrier before setting v->is_initialized so the new 
> value is observed *after* the changes to v->arch.{sctlr, ttbr0, ...) 
> have been observed.
> 
> A single smp_wmb() barrier before v->is_initialized should be sufficient 
> to cover the two problems discussed as I don't think we need to observe 
> v->is_initialized *before* v->pause_flags.

Gentle ping. Does this makes sense to you?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 15:23:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 15:23:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104611.200293 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzAK-0002nA-Ox; Thu, 01 Apr 2021 15:23:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104611.200293; Thu, 01 Apr 2021 15: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 1lRzAK-0002n3-LO; Thu, 01 Apr 2021 15:23:24 +0000
Received: by outflank-mailman (input) for mailman id 104611;
 Thu, 01 Apr 2021 15:23:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRzAI-0002my-M7
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 15:23:22 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3e0f563c-c0bd-4f67-a4f7-83bf3d90e85b;
 Thu, 01 Apr 2021 15:23:21 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 63F60B178;
 Thu,  1 Apr 2021 15:23: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: 3e0f563c-c0bd-4f67-a4f7-83bf3d90e85b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617290600; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=8IK3GLOdH0ou+vGzI9xfv152WM2AtTmLOx2bfWp3KnU=;
	b=gfZBD9Z3rJ5Bgg+vGhW3bQPhhLEGeysJGf+k/VQyfhxUEIbMu6+QRtOdPK81ddz0gRlamA
	HClKqd28r5Oc6ZmsrCRJ9M/ScA+O/yIbleX9WI1gzFnKB2/yoCjhQSqYNzfF0OtfArYtlN
	2IrgyznNwJyTj5792AzQLGihHuYpnrY=
Subject: Re: [PATCH 02/23] lib: move 64-bit div/mod compiler helpers
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <0fec827f-bb0b-4ea1-7757-9c27e9138be7@suse.com>
 <008a8b14-8f58-2127-9e97-87c696e07b5e@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0ddcecbb-dc42-ba4e-fccc-6988c7e54456@suse.com>
Date: Thu, 1 Apr 2021 17:23:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <008a8b14-8f58-2127-9e97-87c696e07b5e@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 16:56, Julien Grall wrote:
> On 01/04/2021 11:19, Jan Beulich wrote:
>> --- a/xen/common/lib.c
>> +++ b/xen/lib/divmod.c
>> @@ -40,7 +40,6 @@
>>    * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
>>    * SUCH DAMAGE.
>>    */
>> -#if BITS_PER_LONG == 32
> 
> In theory BITS_PER_LONG == 32 is not quite the same as 32-bit arch. Can 
> you clarify whether this code is necessary on 64-bit arch where long is 
> only 32-bit.

Likely the compiler can get away without invoking these helpers, so
the code would remain unused. I'm uncertain whether CONFIG_64BIT
ought to be set for such an architecture, as we assume sizeof(long)
== sizeof(void*), and hence pointers would then need to be 32-bit
as well there.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 15:26:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 15:26:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104614.200305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzCk-0002vw-6P; Thu, 01 Apr 2021 15:25:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104614.200305; Thu, 01 Apr 2021 15: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 1lRzCk-0002vp-3D; Thu, 01 Apr 2021 15:25:54 +0000
Received: by outflank-mailman (input) for mailman id 104614;
 Thu, 01 Apr 2021 15:25:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRzCi-0002vk-RM
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 15:25:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 76727bc8-721c-4e13-8dbc-ad572b8c1aea;
 Thu, 01 Apr 2021 15:25:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E7607B134;
 Thu,  1 Apr 2021 15:25: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: 76727bc8-721c-4e13-8dbc-ad572b8c1aea
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617290751; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=cp8sJcc8VSQACwUA1v0L+jPn8fTDIgBPDFPOf0zdSG4=;
	b=EjMIx5tcO/hGjiPHTWLu79UfAk7NBf62yDZaC/TXWshu7k6hnnhrCmMT9G3dP4L97ZH8mO
	xG91bJQx/6LACsBHla2mqSsXU5pETSmC5i7PALkKQNFIsLUp2EiHIzudKEV3Y6euBTZruS
	pgxmZ0B7NZkd6Sm9aroRxW1NBm8MpxA=
Subject: Re: [PATCH 00/23] further population of xen/lib/
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <27916fa0-9ebd-a49a-bbb9-1ef47c2b5bf6@xen.org>
 <4f745d03-baa8-e9e6-692c-f9c9f401b766@suse.com>
 <6a38f0db-938b-fd13-48e6-6b538c85fe42@xen.org>
 <d9a21b2c-8eca-027d-5672-e5d9dfaaf4b7@suse.com>
 <3bdbd0ba-ce7d-3814-3280-c4f628b74d93@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0d763d3a-6fcd-dd5c-803d-a52876a54f6c@suse.com>
Date: Thu, 1 Apr 2021 17:25:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3bdbd0ba-ce7d-3814-3280-c4f628b74d93@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 16:55, Julien Grall wrote:
> 
> 
> On 01/04/2021 15:27, Jan Beulich wrote:
>> On 01.04.2021 16:04, Julien Grall wrote: >> So overall, the number of functions requiring overriding will likely be
>>> pretty limited and #ifdef would be IMHO tolerable.
>>>
>>> Although, I would be OK with creating a file per function that are
>>> already overrided. For all the others, I think this is just pointless.
>>
>> Well, I don't see a reason to special case individual functions.
>> Plus any reasonable static library should imo have one (global)
>> function per object file in the normal case; there may be very
>> few exceptions. Drawing an ad hoc boundary at what currently has
>> an override somewhere doesn't look very attractive to me. Plus
>> to be honest while I would find it unfair to ask to further
>> split things if I did just a partial conversion (i.e. invest yet
>> more time), I find it rather odd to be asked to undo some of the
>> splitting when I've already taken the extra time to make things
>> consistent.
> 
> I am sure each of us spent time working on a solution that some 
> reviewers were not necessary convinced of the usefulness and they had to 
> undo the series...
> 
> In this case, you sent a large series with close to 0 commit message + a 
> small cover letter. So I think it is fair for a reviewer to be 
> unconvinced and ask for more input.
> 
> You provided that now, I think we want a short summary (or a link to the 
> conversation) in each commit message.
> 
> This will be helpful to understand why the move was made without having 
> to spend ages finding the original discussion.

I'll add "Allow the function to be individually linkable, discardable,
and overridable." to all the str*() and mem*() patch descriptions. Is
that going to be good enough?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 15:29:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 15:29:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104617.200317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzGZ-00035x-NV; Thu, 01 Apr 2021 15:29:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104617.200317; Thu, 01 Apr 2021 15: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 1lRzGZ-00035q-KT; Thu, 01 Apr 2021 15:29:51 +0000
Received: by outflank-mailman (input) for mailman id 104617;
 Thu, 01 Apr 2021 15:29:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=evtz=I6=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lRzGY-00035l-4P
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 15:29:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3c554a93-b1e4-4b28-8bb5-04480519cf49;
 Thu, 01 Apr 2021 15:29:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2AA1DB134;
 Thu,  1 Apr 2021 15:29: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: 3c554a93-b1e4-4b28-8bb5-04480519cf49
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617290988; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=OCvwoiBCyqyqKnKXHA4+IbDKdMQAdVKqAzcU+8F6908=;
	b=HJS5m5NDhHCQw4nP8ANEVkz0pIjRo05BddJ4ImBMmq36CQbVw/MbR+OJfdThgcxQRGgnP9
	HeD7imCmVvlSenUvoKnt4M4lZ4aQ+RM3lPX1VkX0wt+WTIHKmGgrc9sBubkOeLYKaNQO4x
	o02sVmnZ3tiGWfX/qR0mU0lAahYCC+U=
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <089e3ff0-5633-02b4-baac-328ea8618469@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7977e181-a2d4-42ac-2294-34a49f6812c3@suse.com>
Date: Thu, 1 Apr 2021 17:29:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <089e3ff0-5633-02b4-baac-328ea8618469@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 17:05, Julien Grall wrote:
> On 01/04/2021 09:33, Jan Beulich wrote:
>> --- a/xen/arch/arm/Makefile
>> +++ b/xen/arch/arm/Makefile
>> @@ -131,8 +131,8 @@ $(TARGET)-syms: prelink.o xen.lds
>>   		>$(@D)/$(@F).map
>>   	rm -f $(@D)/.$(@F).[0-9]*
>>   
>> -asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c
>> -	$(CC) $(filter-out -flto,$(c_flags)) -S -o $@ $<
>> +.PHONY: include
>> +include:
> 
>  From a generic PoV, this target is meant to generate arch-specific 
> include. Is that correct?

Yes, like is happening on x86 already.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 15:30:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 15:30:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104620.200329 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzH3-0003tQ-1X; Thu, 01 Apr 2021 15:30:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104620.200329; Thu, 01 Apr 2021 15: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 1lRzH2-0003tJ-UH; Thu, 01 Apr 2021 15:30:20 +0000
Received: by outflank-mailman (input) for mailman id 104620;
 Thu, 01 Apr 2021 15:30:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SiKL=I6=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lRzH1-0003tB-QP
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 15:30:19 +0000
Received: from mail-wm1-x333.google.com (unknown [2a00:1450:4864:20::333])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 842243dd-051f-4d1c-a6f8-2d0b98ec9554;
 Thu, 01 Apr 2021 15:30:18 +0000 (UTC)
Received: by mail-wm1-x333.google.com with SMTP id
 y124-20020a1c32820000b029010c93864955so3044134wmy.5
 for <xen-devel@lists.xenproject.org>; Thu, 01 Apr 2021 08:30:18 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:ac48:6475:41e4:208d?
 ([2a00:23c5:5785:9a01:ac48:6475:41e4:208d])
 by smtp.gmail.com with ESMTPSA id u3sm10203825wrt.82.2021.04.01.08.30.16
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 01 Apr 2021 08:30: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: 842243dd-051f-4d1c-a6f8-2d0b98ec9554
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:cc:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=ctKzUn0Maxydea/rVCUEByI/2Y+D8SuD1VtC232Yjgo=;
        b=dQnXePUxnurTtxoXoogjlFshU8fZTtwvOA4oSh6RzkOic1OiH4fE7NZLB/1bKfAJiW
         ky3O554V+zfe2satPFK8sQHRPuz4uReUiv3vrvJgGP+RZZ6tjahkfcvlz/lPNCT+qJAT
         0+WANOqWC+DemD5d0JmfcUcboKusItZH0XqoiOscK6fG2dE0VNe+k3CEadSAstFscDug
         WicZgXDngr9/PirWCXGxvpA70n2yiDm3VBN06CJ6gRZyGqbHNTQW+PtDS9VjNQ4CIpDj
         nuMrFAmdaooz3vlyB1HOjhQzxjMc/hJRF7AEnbtllC4bX/nP0+OWVByHVDwxQzMzk+I8
         OJEw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:cc:references
         :message-id:date:user-agent:mime-version:in-reply-to
         :content-language:content-transfer-encoding;
        bh=ctKzUn0Maxydea/rVCUEByI/2Y+D8SuD1VtC232Yjgo=;
        b=Cvt5Kt0re47UAEMRUOaT5pdawipMM2F2mX/x0kldpnSp2+wtRCxk30AQcDB0foNnFz
         93hnPI+yKcrz4pdvaTLwLOErSKkt4zxgpRr88GEvfCoM8oz4UnhW5r71fH77uJ6bg33+
         G98c3G92xMHcI9nwpfG3N4ycSfLAgAkXD8dVc6phKX3HTXZUBjAmZxgDKqXiwi6HfjML
         PK2V2Z/W2zYn7ZK6hFOy96K5FpXqNQkT6koJOq8G2pA7BUPJvlISSmXOCkSt+tyVoWgg
         oROq+C9zQKynUsw1ufEP3de01QKBv+FN0JYmL7+7I6MonM9ZNPZ7hmjXXAjv3mHqB/ms
         QXfg==
X-Gm-Message-State: AOAM532AFaiIOkQvKvViWOD43dl5QmjkOzN3t8h6tTw9Gz+rXDdSqvig
	GH0dT9j7HMaWo2bkQvhDMDc=
X-Google-Smtp-Source: ABdhPJywF4MI+2gExSCuT4k3JR5O617RLPZWeG6qw6CwDa/R4+Vl0UcXrU4xWkhePqvztFnAHz1+Iw==
X-Received: by 2002:a05:600c:4f89:: with SMTP id n9mr8779799wmq.133.1617291017536;
        Thu, 01 Apr 2021 08:30:17 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH for-4.15 2/7] CHANGELOG.md: xl PCI configuration doc,
 xenstore MTU entries
To: George Dunlap <george.dunlap@citrix.com>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <ian.jackson@citrix.com>, Wei Liu <wl@xen.org>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-2-george.dunlap@citrix.com>
Message-ID: <054f2098-0ec6-7809-74db-e71f45941c4b@xen.org>
Date: Thu, 1 Apr 2021 16:30:16 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210401133827.362216-2-george.dunlap@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01/04/2021 14:38, George Dunlap wrote:
> Signed-off-by: George Dunlap <george.dunlap@citrix.com>
> ---
> CC: Paul Durrant <paul@xen.org>
> CC: Ian Jackson <ian.jackson@citrix.com>
> CC: Wei Liu <wl@xen.org>

Reviewed-by: Paul Durrant <paul@xen.org>

> ---
>   CHANGELOG.md | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index f7ce6682b9..086a0e50d0 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -15,6 +15,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>    - Switched MSR accesses to deny by default policy.
>    - Intel Processor Trace support (Tech Preview)
>    - Named PCI devices for xl/libxl
> + - Improved documentation for xl PCI configuration format
>    - Support for zstd-compressed dom0 (x86) and domU kernels
>    - Library improvements from NetBSD ports upstreamed
>    - CI loop: Add Alpine Linux, Ubuntu Focal targets; drop CentOS 6
> @@ -23,7 +24,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>    - x86: Allow domains to use AVX-VNNI instructions
>    - Factored out HVM-specific shadow code, improving code clarity and reducing the size of PV-only hypervisor builds
>    - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
> -
> + - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
>   
>   ### Removed / support downgraded
>   
> 



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 15:33:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 15:33:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104625.200341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzJg-00045F-Lu; Thu, 01 Apr 2021 15:33:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104625.200341; Thu, 01 Apr 2021 15:33:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzJg-000458-HS; Thu, 01 Apr 2021 15:33:04 +0000
Received: by outflank-mailman (input) for mailman id 104625;
 Thu, 01 Apr 2021 15:33: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 1lRzJe-000453-Gx
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 15:33: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 1lRzJc-0000Ol-OI; Thu, 01 Apr 2021 15:33:00 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRzJc-0006CF-G6; Thu, 01 Apr 2021 15:33: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=4t09i6lJcaCeOqAFZogMPxgcn8hcZFRDYFfERFzoBiQ=; b=ZnqWjMdJOa/dPvy8ApezXvsCP6
	fj9M7DibZQYRIX/WoivaGhYcBCKs7XkbdLjAVtQuq8vp3iJGrHPAAs7UBJKXAs5WPceDWEuhvDuzp
	9ipmx6Ip+wrvmGyoUym+nhmlbCEXm8Ocj9ggX2GII3uPBmuBmoFtp8AIs9cNYWfDFS8o=;
Subject: Re: [PATCH 00/23] further population of xen/lib/
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <27916fa0-9ebd-a49a-bbb9-1ef47c2b5bf6@xen.org>
 <4f745d03-baa8-e9e6-692c-f9c9f401b766@suse.com>
 <6a38f0db-938b-fd13-48e6-6b538c85fe42@xen.org>
 <d9a21b2c-8eca-027d-5672-e5d9dfaaf4b7@suse.com>
 <3bdbd0ba-ce7d-3814-3280-c4f628b74d93@xen.org>
 <0d763d3a-6fcd-dd5c-803d-a52876a54f6c@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <6eb1614d-fc16-9101-201d-9f63c2adcae7@xen.org>
Date: Thu, 1 Apr 2021 16:32:58 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <0d763d3a-6fcd-dd5c-803d-a52876a54f6c@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 01/04/2021 16:25, Jan Beulich wrote:
> On 01.04.2021 16:55, Julien Grall wrote:
>>
>>
>> On 01/04/2021 15:27, Jan Beulich wrote:
>>> On 01.04.2021 16:04, Julien Grall wrote: >> So overall, the number of functions requiring overriding will likely be
>>>> pretty limited and #ifdef would be IMHO tolerable.
>>>>
>>>> Although, I would be OK with creating a file per function that are
>>>> already overrided. For all the others, I think this is just pointless.
>>>
>>> Well, I don't see a reason to special case individual functions.
>>> Plus any reasonable static library should imo have one (global)
>>> function per object file in the normal case; there may be very
>>> few exceptions. Drawing an ad hoc boundary at what currently has
>>> an override somewhere doesn't look very attractive to me. Plus
>>> to be honest while I would find it unfair to ask to further
>>> split things if I did just a partial conversion (i.e. invest yet
>>> more time), I find it rather odd to be asked to undo some of the
>>> splitting when I've already taken the extra time to make things
>>> consistent.
>>
>> I am sure each of us spent time working on a solution that some
>> reviewers were not necessary convinced of the usefulness and they had to
>> undo the series...
>>
>> In this case, you sent a large series with close to 0 commit message + a
>> small cover letter. So I think it is fair for a reviewer to be
>> unconvinced and ask for more input.
>>
>> You provided that now, I think we want a short summary (or a link to the
>> conversation) in each commit message.
>>
>> This will be helpful to understand why the move was made without having
>> to spend ages finding the original discussion.
> 
> I'll add "Allow the function to be individually linkable, discardable,
> and overridable." to all the str*() and mem*() patch descriptions. Is
> that going to be good enough?
It will be good for me.

Cheers,

> 
> Jan
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 16:02:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 16:02:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104628.200352 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzm6-0007HT-UD; Thu, 01 Apr 2021 16:02:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104628.200352; Thu, 01 Apr 2021 16: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 1lRzm6-0007HM-R3; Thu, 01 Apr 2021 16:02:26 +0000
Received: by outflank-mailman (input) for mailman id 104628;
 Thu, 01 Apr 2021 16:02:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lRzm6-0007HH-9R
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 16:02:26 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRzm4-0001OQ-KH; Thu, 01 Apr 2021 16:02:24 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRzm4-0000Gr-CV; Thu, 01 Apr 2021 16:02: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=Sv8RS+0wdbIiWMwwTW7Y/bRZsDmFGVjABoKk8ZFtJ9Y=; b=pe0YJGhRcxIzxEGjv0rYVUehP0
	/d9RRrQ9nap11zTZFzUV2qvQiPPFCdgegruEUrkR5W2rpiZ2SbgJZYa0AbeW4ImDtbWe7gxZjbA4x
	TDe4HZIyn012wPMu1tMUOAZ9wzFKVxKz2uMYhqAKv1BWEN0fD2+TOzU3i1AXclGKVz9E=;
Subject: Re: [PATCH v2 1/2] common: map_vcpu_info() cosmetics
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@eu.citrix.com>,
 Ian Jackson <ian.jackson@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <2a08aa31-fdbf-89ee-cd49-813f818b709a@suse.com>
 <29514f9a-b630-f66e-286e-8b73fcf4d58a@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <c70fc937-2986-83dc-417c-576180f8ce3c@xen.org>
Date: Thu, 1 Apr 2021 17:02:22 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <29514f9a-b630-f66e-286e-8b73fcf4d58a@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Jan,

On 22/12/2020 08:14, Jan Beulich wrote:
> Use ENXIO instead of EINVAL to cover the two cases of the address not
> satisfying the requirements. This will make an issue here better stand
> out at the call site.
> 
> Also add a missing compat-mode related size check: If the sizes
> differed, other code in the function would need changing. Accompany this
> by a change to the initial sizeof() expression, tying it to the type of
> the variable we're actually after (matching e.g. the alignof() added by
> XSA-327).
> 
> 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 Thu Apr 01 16:14:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 16:14:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104631.200365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzxa-0008H4-28; Thu, 01 Apr 2021 16:14:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104631.200365; Thu, 01 Apr 2021 16: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 1lRzxZ-0008Gx-Uv; Thu, 01 Apr 2021 16:14:17 +0000
Received: by outflank-mailman (input) for mailman id 104631;
 Thu, 01 Apr 2021 16:14:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lRzxY-0008Gs-9o
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 16:14:16 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 189a4ce1-de21-4498-8edc-ab7bd97b2d60;
 Thu, 01 Apr 2021 16:14: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: 189a4ce1-de21-4498-8edc-ab7bd97b2d60
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617293654;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=KGniY3TxAH1d6q4BTl85KomLpNVYpIDqhes70pRiAAk=;
  b=ZsoJqP3Ny4fXr+fc6A3K8V9/0MSaJWG2NynPAbnwlci/SOs9MZpVgaYj
   eKEAVuq1EtUs48+Mep7tU4OV4OkYlmhH+xBQw1Fglcza0clfWZk7xlrBW
   ssXtmy2dOVbFU4zlSTrgDt0YB2sytqh9B3c24eMG287yPCZSjJV8v5YzV
   4=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: W+sSr3EsJ1r1kpe2A76NjLmxxPp4KwP8kQSEmwE204321Rf2jmgpCCx2I3uyy3Wt14XB9/o5KL
 U8vUy9Iu17P58+1T0fbBLf+6O0+b0NiFRiKt0bEFKdNvSS/u/a3ZUha2G5FvaYt1sRPM+PiodD
 9HQbB4OxaxPomW2AKkh1xUKmo+JvqrNtA/CIb2hzQatmlhAbpVMgMO3wS278S7ApS3pjMOslr2
 erUULXzNWtbWdA1oFuzGRB49rewuLCOAFZAwr2bDge7YVkou+5AlCVS3LRsU9myjhG9shMZMj6
 hos=
X-SBRS: 5.2
X-MesageID: 42172572
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:3sq7s62vahDeQfjxD/BxzAqjBR93eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/FIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmtJ1/Z
 xLN5JzANiYNzVHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcBdxi1SYzzrd3Febg9AGJY/Cd
 647s1IuzKvdR0sH7uGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnl4j41VTRTzbA+tV
 XUigCR3NTfj9iX6D/5k1XS4ZNfhcf7xrJ4avCkp8AJJlzX+36VTat7XbnqhkFTnMiO7xIQnM
 DIs1McOa1ImgnsV0WUhTeo5AX6yjYp7BbZuCylqF/uu9bwSj5/K+cpv/MhTjLj50AtvM5x3c
 twtgrz3fonbmK0oA3H69fFTB1snEavyEBS9dI7tHBDTZAYLIZYsI13xjIkLL47ACn45Io7ed
 Meav302fA+SyL5U1nkpGV1hPSjUnMvdy32OXQqi4i+1jhbm21B1E0IxMATtWdozuNNd7B0o8
 vDKahmj7dIU4s/ar98Hv4IRY+NBnXKWg+kChPcHX3XUIU8f17doZ/+57s4oMmsZZwz1ZM33L
 DMSklRu2Iec1/nYPf+kqFjw1ToeiGQTD7twsZR69xSobvnXofmNiWFVRQHj9agi+93OLyZZ9
 +DfLZtR9PzJ2rnHohEmyfkXYNJFHUYWMoJ/v4mRlO1pN7RIIGCjJ2aTN/jYJ7WVRo0UGL2BX
 UOGBLpIt9b00ytUnjkxDfLXXfAfVH+4IJQHKDW8/N78vlJCqR89iwuzXip7MCCLjNP9oYsel
 FlHb/hmqSn4Um6lFy4q1lBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCR31HuDLRlvctPOHG
 dk1hNK0JPyC6bV6TEpCtqhPG7fpWAUvmi2Q5AVnbDGwsv5ZJUiDNIDVLZqHQvGUzx58Dwa6V
 trWUshfAvyBznugaKqgNg/H+fEbeRxhw+tPIpzsnLQtUKVoOk1XXsFVzuSUcqa6DxeBQZ8tx
 lUyesykbCAkTGgJS8Um+IjKmBBb2yRHfZ7FgifXZ5VnbrqYQl0am+PiVWh+lcOU1uv039Xqn
 3qLCWSd/2OJlZGoHhX3pzn905OenyHc1h9bW17toNBBX3L00wDo9OjV+6W6S+8e1ECyuYSPH
 X+bTweLhhH6vq32BSW8QzyX0kO99ELBKjwHb4je7bc1jeRM4WOj7gBBOIR1o1iLsrSvugCVv
 +/dweZICjjMf4g3xWYqx8eSXBJgUhhtcmt9Azu7WC+0nJ6POHbJ05+QaoHZ/6b9GrpSp+zod
 xEpONwmdH1FGr/atSLk/6KKxFCLw7eum6wQaUDr4tOsac7qbt0GN36XFLzpQZ69SR7CP2xsk
 UUBJlfyvTmHKREesQJYSJX/lYzjr20XQAWmz2zJtV7RE0nin/QAsiA7LXJo4c+G0HpnnqFBX
 Cvtwlmu8rfVySN1bQmG7s9DGRfZk878mlj9oq5BvvtITTvU+FI51yhNHChNJdbVaieAL0Vxy
 wKru2grquydyDi3hrXsiY+CqVS83y/Scf3JA6XA+ZH/5ibPluL65HarPKbvXPSSTGhbV4fip
 AAXUsMbt5bgj1ntbYJ6EGJO+TKi3NgtUBf7zFhnkPs3YbjwF6zJzA5DSTpxrNMXTdSNXCUi9
 /i6ubw7gWk3AR4
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="42172572"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cmJT6q65j9OPctGFC89x7pQMIqKdHfcr1aC3jBSz4ZFiDKqBb9ilokiT12vUxkjrLJ8BSrJF2GOFQMOGXmHpOVmEPE52GqyRuZDcUff2aCBRZFEcCp5FPYwYSxXLyTxGgYptL7unvM8mrdb+p0qsIVnGqLQMx3i/ez7Oha0F4LUdxmigZ5Ij8/roXpGu0tRwxLALpL1CverLg7XEV8MnDeGkToAyAUrpfBJvwlXNWDL22EBlZDvgqKpIvt0UPEQGscpCSamgesWvqx6qWMyzpBoOrGVUjgID6UN4bdM6oBs6c0WORQoQARvfe4beAsvp6Xl4d060grYBAivGf+2E6A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lfXPlgZ/bDUFcYMUMBa1Z1Lg5gOrCCz5BHQH0RgHPAI=;
 b=N89+M21xJKub4uvtScW0Z4nLriaQ5wBWaUl0pV9OMmdYW3bYPEFaFd3Oe2DmCmaHUMssbmCjDK+RU0xppWAnLj/POkZ/NisvkAoyW1wN09emZkeCMrwKDCkY0Zd8B8hwS3tgydUPznqrhTyoKfCRZw6W9m+DZhhSEHuQm2xun5o6lwVHwzm/0djF1Z1CPR7VbNJndcSHzEj4lU5WhLZK5LZDCD0HZ6K1/WppGtufpvf73o88zth/Psnoz4yk9e4LAlgFJhVHuBpfCCZPLL8CRApS+KWqnnMDYvLCMpZkEjhzo3MeJfVkUW/jPeHQKA4dydEt/8nkyt4aB3HXkHU6/Q==
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=lfXPlgZ/bDUFcYMUMBa1Z1Lg5gOrCCz5BHQH0RgHPAI=;
 b=EwI8CQxYvfb9iy76rIEJ4WCk8MGDeyuytcJLxtm6+9SYm7n/I+PVg57tSPX+sh3r7uqYiSmToZFIvxCz7PIeIxlz4a6WcxEpqrvfZ75xlY5N85TXgDnXZsnFxW615pRgVupnjqUlpVBabqvQy7FbVoKjnqV9nFTzujRWhjgKzUA=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-15-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 14/21] libs/guest: introduce helper to check cpu policy
 compatibility
Message-ID: <cc57be9c-d55f-6a1b-7759-5de1c40bcae7@citrix.com>
Date: Thu, 1 Apr 2021 17:14:03 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-15-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0047.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::35)
 To BN7PR03MB3618.namprd03.prod.outlook.com (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 609ab3b8-7e87-48f8-addb-08d8f5292e51
X-MS-TrafficTypeDiagnostic: BN9PR03MB6025:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN9PR03MB6025952324AF9A61A29FB15DBA7B9@BN9PR03MB6025.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: W9eLXzk9pWQWXnr6jiLwjM/0cTSzHez54un0KxHzrtB6ql/wTCyFSWQhHD/SiKTReofppt8idnRlRTGUxZJTaNpb3agIoxktRR+BRHrjhFSgZBG6UyBgbhvIBeVBuVlbOv0nDD4f2nB5WLKroGEeucA4F5YuQIfxMK/KKYE1PN0YZTWGH/Ccy6u6SWoDka4O+rAD4u+LB30y1s0O/uYiJhWybzJupjtZ4c8oaNPfPvmxi9ikbLjQ5IVDRW9qUxtKfIOmAWAFHh1lR+/tD3wO8wFB+NWuBxsANYclYB0XCZ1zK1P+XT4acpnnxsp88FUD0GBFJVle/0m3xoUdOhlv8jESqkUwxnSDYIggq9VqCBYbqiFoLe5GHzZYXTEsG36vRJouxqZbkPZJ8/6IJ2OdxSfyI8JInj/jbDEnL39Es/hjumOtNpjJFSQmGJekd8HqlmFOuREt4gbomv4iRT1LP/fKKItJjfiTi7Ft6lpLbShlfIAWSnI11PdmiduiK5XKJ/2YrLBfA8VVIC1xKTLWQbGqGp5yYiMES2rgwvbkGpLDFQA2QR6EZ4RqnkncrWvzo/7o4adMPIyln1zXzO+0Ds8C751HOzRjK7HbNypxg5YZgHmV7yKlOUXnud9zpAvuJ4ZnaLJEg+PJCYCfcN1H/H4qJHhE7WEU44T5jHBe3G44XN9hc89nQlEcpWdziZLTxFhqLxio2FhujLuVGrq2EQikiTeqWFG7gZHijjMWI9g=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(39860400002)(366004)(136003)(346002)(8676002)(31686004)(8936002)(31696002)(6666004)(2616005)(186003)(956004)(54906003)(16526019)(26005)(83380400001)(6486002)(36756003)(86362001)(66946007)(316002)(478600001)(4326008)(16576012)(38100700001)(53546011)(66556008)(66476007)(5660300002)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 609ab3b8-7e87-48f8-addb-08d8f5292e51
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 16:14:09.4273
 (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: VCeH0RWGcSCKRFX3fj1+KAbee3OzW8BX5cUMFlMhKraAF8V9qBftAs50Ae58d88phXXnGnO7Ey+B59EakAynZHwuOw9B3+xT4Y/bGe4xUCA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6025
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> Such helpers is just a wrapper to the existing
> x86_cpu_policies_are_compatible function. This requires building
> policy.c from libx86 on user land also.
>
> No user of the interface introduced.
>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---
>  tools/include/xenctrl.h         |  4 ++++
>  tools/libs/guest/Makefile       |  2 +-
>  tools/libs/guest/xg_cpuid_x86.c | 17 +++++++++++++++++
>  3 files changed, 22 insertions(+), 1 deletion(-)
>
> diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
> index 164a287b367..165beff330f 100644
> --- a/tools/include/xenctrl.h
> +++ b/tools/include/xenctrl.h
> @@ -2619,6 +2619,10 @@ int xc_cpu_policy_update_cpuid(xc_interface *xch, =
xc_cpu_policy_t policy,
>  int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
>                                const xen_msr_entry_t *msrs, uint32_t nr);
> =20
> +/* Compatibility calculations. */
> +bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_=
t p1,
> +                                 const xc_cpu_policy_t p2);

Exposing this in the interface is useful and necessary.

However, the operation is not commutative.=C2=A0 p1 and p2 are not
interchangeable, is why the libx86 function has specifically named
parameters.

This distinction needs making clear at this level as well.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 16:14:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 16:14:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104634.200377 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzyF-0008OA-AT; Thu, 01 Apr 2021 16:14:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104634.200377; Thu, 01 Apr 2021 16:14:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lRzyF-0008O3-7N; Thu, 01 Apr 2021 16:14:59 +0000
Received: by outflank-mailman (input) for mailman id 104634;
 Thu, 01 Apr 2021 16:14: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 1lRzyE-0008Nv-1k
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 16:14: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 1lRzyD-0001aq-Su; Thu, 01 Apr 2021 16:14:57 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lRzyD-00015H-Ka; Thu, 01 Apr 2021 16:14: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=5qL28haLDRzebOuDwjl4n0DxnOE5PrUJOFsKvXYE9os=; b=dfhl3Byoj7EatGlpdlXjy4v0Fj
	mQR0yHNKMqX6GaZUNGXN+/lEeBgSUyN9HVRT2JvUn2uWhSoDTwrCufHMsgPxdquSZmcIuuloMYWsC
	TWx04UvNoOTvpjY8fcEG0aB4D0P1T5xkZSClnA0LPwR16dbbG5IDLyEuRCNTkG1soIAc=;
Subject: Re: [PATCH for-4.15 4/7] CHANGELOG.md: Mention various ARM errata
To: Jan Beulich <jbeulich@suse.com>, George Dunlap <george.dunlap@citrix.com>
Cc: Ian Jackson <ian.jackson@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
References: <20210401133827.362216-1-george.dunlap@citrix.com>
 <20210401133827.362216-4-george.dunlap@citrix.com>
 <330feed2-d601-8b79-3c1f-bd8be167b8eb@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <19cf79e4-f54b-874b-72a1-7fd6f2942c80@xen.org>
Date: Thu, 1 Apr 2021 17:14:55 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <330feed2-d601-8b79-3c1f-bd8be167b8eb@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

On 01/04/2021 15:13, Jan Beulich wrote:
> On 01.04.2021 15:38, George Dunlap wrote:
>> --- a/CHANGELOG.md
>> +++ b/CHANGELOG.md
>> @@ -26,6 +26,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>>    - Added XEN_SCRIPT_DIR configuration option to specify location for Xen scripts, rather than hard-coding /etc/xen/scripts
>>    - xennet: Documented a way for the backend (or toolstack) to specify MTU to the frontend
>>    - Some additional affordances in various xl subcommands.
>> + - Added the following ARM errata: Cortex A53 #843419, Cortex A55 #1530923, Cortex A72 #853709, Cortex A73 #858921, Cortex A76 #1286807, Neoverse-N1 #1165522
> 
> May I suggest "Added workarounds for ..."?

+1

With that:

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

> 
> Jan
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 16:26:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 16:26:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104648.200432 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS098-0001Ay-Tt; Thu, 01 Apr 2021 16:26:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104648.200432; Thu, 01 Apr 2021 16: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 1lS098-0001Ar-Qn; Thu, 01 Apr 2021 16:26:14 +0000
Received: by outflank-mailman (input) for mailman id 104648;
 Thu, 01 Apr 2021 16:26:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lS098-0001Am-4o
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 16:26:14 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2301e438-3160-4975-af43-1ebefbb07aec;
 Thu, 01 Apr 2021 16:26: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: 2301e438-3160-4975-af43-1ebefbb07aec
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617294372;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=gmd06rszaos66SwKUdTiuscoqRXiPX4bsyvnbVAgmlA=;
  b=fWHMXDrva/CH8SH4R4JKZVL3ztCE+piAc/RHxyGDxiXIKtcZMdPblIRX
   Te2FQrW16ffAwvuxljffl/DArqZ2/TTzuEg+9+xcoiCs6WrGsMu+CJpXf
   xNuaGsZys7ymNHxN12mYeHu+yxsG+weyYK50QEXYXNgdwkKEVXC0Bw0wP
   8=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Lvmv5ILm1I3SOHhi9i8pbEIFJUjJqrGIAT1jPjGtKUjwr2vmLn8tMVIoPeCF6LSCn/n7A9doc+
 XmBwKws5/Km+B4YNgrgrz4HcrwPa1vjfzoD3RdJpqt9KYk7K+WdsMn9dxUQKNyOBc3c+Bv1RxT
 C57SZInRTRS5y1TDm+jR2nSJneF+0IgJGnWPjzTRz+ODKEjNS2bIWXE9GlSeQDZiF9uoacssTk
 fp4GY90bsqK9xXUBHSFhazn/AbtXKtS2F6nq96woFCk7sVo7GQabbWb7xlh1FrVmQ/vucJanei
 wZE=
X-SBRS: 5.2
X-MesageID: 41095869
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:DcgKqKPX6EE/pMBcT3Hw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZqQHIMxbVstRQ3a
 IIScNDIfX7B1RikILe6A63D94vzLC8gdiVrM3ZyGpgShwvTqlm4RtwBArzKDwMeCBtA50lGJ
 2Aovddrz27dngNKui9DH8JX+/Mzue73q7OSxgAGhIh9U2ynSqlgYSKWCSw8zU/d3d0wbkk+X
 XYiACR3Mmemtyy1xO07R620714g93ko+EjOOWtjYwvJizomkKUYu1aKsS/lRQUhM3q11owit
 nLpH4bTolOwlfcZHu8rxeo+ySI6kdI11bYxVWVgWTurKXCLVpUZfZpvo5XfgDU7EAtprhHoc
 R29liEvJlaBw6oplWf2/H0VgpnnkfxgX0unf97tQ07baIiaaRcpYFawUVNEJ1oJlOZ1KkbFo
 BVbP301bJzSxe3fnrZtm5gzJiHRXIoBCqLRUAEp4i8zyVWtGoR9TpW+OUv2lM7sL4tQZhN4O
 rJdo5ykqtVc8MQZaVhQM8cXMqMDHDXSx6kChPdHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ
 PdFHRVqHA1YECrLcGVxpVE/lTsTQyGLHXQ4/Abw6I8lqz3RbLtPyHGYkspidGcr/IWBdCeVO
 20PJ5QHv//PWrjEYtExGTFKtpvAEhbdPdQlscwWlqIrM6OAJbtrPbnfPHaI6eoETtMYBK8Pl
 IzGBzIYOlQ5EGiXXH1xDLLXWn2R0D59ZVsVKzT/+0ZzpkRJpRB2zJlzGiR14WuE3lvo6Y2dE
 xxLPfMiaWgv1S7+m7O8iFuIRpSDkFc5b36SHNUrQoWM0f5GIxz++m3SCR35j+qNxV/R8TZHE
 p0vFJs45+6KJSW2GQ/Ed69K3mbiHESvXqOSJ8ZlsS4lIPYU6J9KqxjdL16FA3NGRAwpB1jr3
 1bbhQYAmXFECn1tKmjhJsIJe3WetVmmj23KcpMpX+3jzTamegfAl8gGx+nS4q+nBsnTTs8vC
 wKz4YvxJ673QuJBUR6quIiK1FIYHmQG9t9fXm4TbQRvKvqdgF2RXqNnhqAhXgICybX3k0Pm2
 3sKjCVc/nXAlxb/mtVyLru7UkcTBTgQ2tgLn99qoFzDmLApzJ61vKKfLO61y+LZkIF2fx1Ck
 CyXRICZgdvzcuwzhibhXKLEmgn3IwnOoXmfcAeWqCW3nOmM4uTk64aW/dS4ZZ+Ldjr9usGS/
 iWdQPQLDT2DYoSqnuoj2dgPCl/s38/l/z0nBXj8WijxXY6RePIP04OfcBpH/iMq2z/A/qY2p
 Rwitw4+eO2L2Xqc9aDjaXadSRKJB/fqXO/JttY4Kx8rOY3rv9+DpPbWTzH2DVc0BIyINz9mU
 keTK54iYqxT7NHbogXYWZU71ApnNOAIA83qQTwGPY5ZkxogHnBPd+FioC44YYHEwmEvk/3Nl
 ae+SEGoKuAUCuHyLIAC6U/ZW5Rc1Mx7Xx+/OWEM43cYT/aBt1r7R6/KDu6drQYVa2OXbMXpR
 x+68uTn+CWezHjsTqgzwdTM+ZL6SK/Xci2AAiQAuZG/NyxJESUjsKRkbCOpSayTSH+dl8Rio
 JEf1EBd8hPijEti4sszyi5I5aH0n4Ngh9Z+jFollnkx4ig7iPaBCh9QHLkvqk=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="41095869"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NmR8a8zhWxHJ0XXCL6gN5fIyHVyxa9DHR6UNOtAnK/zhv+jg5uuAdct4Zrzkmsd3i1x3vxlD5O9YnX6Sb/0zsFBZT2IxjzlbG+iHldD3W7d0Yd5Xk+l9mRixqbXyTkI3hdm0sFJJQ/OkdafYmvl37Nad35UcYxTVuwHlQHugKMdrz0gVxUf3KXJ0YiJoUWKq3R7RLVEdRQk3bEkCdFeCPp1W7VHgIo6pQWalIIlQCDy7F2QXSe5jZhObKTCMZsBnbDN0oOrcMs/yy6NyYqvsRNDBSFNb5oA21Q/YdujGT2eFMYnwnTKGugD/YbA6EvrUEjH6Lp6DM3+MHSgpXq98qw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gmd06rszaos66SwKUdTiuscoqRXiPX4bsyvnbVAgmlA=;
 b=N+7RHLs8EYm9Gmk5HBC9bPO357Tusl1U1DhQE+aFRjqs7hshpXAMTgRRi9uFJntNFctGq5LoTO4RrUWcR/Q/c0HKzGHRr2+rfKuYtz8kHvlya9hDuPhoRvdASTQQlMcynlV1sWknpnyVF3umEMSR9Xa7CmV2mOyC4GEfLfTZZPPduHsISDKNoa/FZPYEYNlnMKR1DR691QJ8vtpng0zENERBgcb6xK4kHU2RGnKfPK1cZHreeSwaaIYFW6yfIA3QNu+5XvtfX8nkB5yZ0XAsUxOL/oSkXsCdPwdJABEu3+6Ri6f7k4lVH6eIXfR5dOuTuyBTY3dMRIiPxIv3hnXCeg==
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=gmd06rszaos66SwKUdTiuscoqRXiPX4bsyvnbVAgmlA=;
 b=n8/lQMkQcS792jeJAtPip3mtrN6A8V9MHbaQWjRCnPimfsZ2Q9bqR4oAaX1KhxKG27iVHDvMjCGjXGj1d/4b9ul0gVG0ytPYsNF+r3hW1Zm5W/A/aAfRHGaEe/fA3JtF3FfqgecSmER4wXbunF7OeUDriIThM75SHlxXLHmmSUs=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-16-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 15/21] libs/guest: obtain a compatible cpu policy from two
 input ones
Message-ID: <d24e9172-3939-44c3-e5f8-08b76ab23c17@citrix.com>
Date: Thu, 1 Apr 2021 17:26:03 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-16-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0498.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1ab::17) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 743c7773-c844-4f44-e715-08d8f52adb0e
X-MS-TrafficTypeDiagnostic: BN8PR03MB5140:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB5140F8F74747B2B8B3E26278BA7B9@BN8PR03MB5140.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: wMb4XbMwZCN3LDdaYBxHZ7rPG+U1FPpk23XKbcb+3JD/5dwO7cajk5j3TvAncurVXQRjvnS2+UnGwfeF2U+rIUG8dGjcGxKY9P9tJqGoxbnpEt8Ko5thAMvu2eXbVL45kGg8Z1hSQPWMDBX+EYYXO1P3vyEjcVaru7o/agsFVwVm2MjT2DVpG3UvhumngMY2xHRBVuSP/2l5Am272mGZ3KenHewfENDy7bq6CeWmV5nXKxprXk+5WTEUHFmpCW5ydgjjErSe5ei8OVN//M/pydl8HNKtkpGMBYvrik9OBaIlGkhRXRqCI+5r2mSF3yqJCuQVYN2yXxytTowZMehV47WruTBzDKE7kshgX1w7ORoG8eQ/oExu4ntmETeVJMkc/7ryBh7oVLfQEejYgO9xbxcRW9xy3K708pMKwApgI3SB0KY69aBfgcW1yxcTD2fGqom6jQDcwdzmRwb5uab5TUevUqcRMAlsNjj3szLgckAhm1dghTxQOI+KzD25po799N4r5Qey2ujsivBsaDxLpur/uz6WbxjJUrg5CU1xRCx/2lnYDwFlKMngYAa/bXVt33OtuRcQM29fN4kT68mHNwQ5q9hjbg7rEQpcQbzJZa8Js06JjKs6nzbX3Q7K5M4eXMQGG6uh0kE5Mhz5l9asPABZSHDp/+n9p+qtE5sVYn49+ATizVZMRo9PDiya0ygR4Q+8ajnlZ5Qd77tx7T9GNA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(39860400002)(366004)(136003)(346002)(8676002)(31686004)(8936002)(31696002)(6666004)(2616005)(186003)(956004)(54906003)(107886003)(4744005)(16526019)(26005)(83380400001)(6486002)(36756003)(86362001)(66946007)(316002)(478600001)(4326008)(16576012)(38100700001)(53546011)(66556008)(66476007)(5660300002)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 743c7773-c844-4f44-e715-08d8f52adb0e
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 16:26:08.7202
 (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: VP0kBBxXqOEA1vSMJBTq/QlxcOyqyzzR8H8K1QfT0K4e3jNoxwDn4sQxVJ0ERTilNUFhwmF1jZfuvY9tQ+RRBIiNP6ilA+O30TBIQe7//ag=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5140
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> Introduce a helper to obtain a compatible cpu policy based on two
> input cpu policies. Currently this is done by and'ing all CPUID leaves
> and MSR entries, except for MSR_ARCH_CAPABILITIES which has the RSBA
> bit or'ed.
>
> The _AC macro is pulled from libxl_internal.h into xen-tools/libs.h
> since it's required in order to use the msr-index.h header.
>
> Note there's no need to place this helper in libx86, since the
> calculation of a compatible policy shouldn't be done from the
> hypervisor.
>
> No callers of the interface introduced.
>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>

I think this wants to be in libx86, because we'll want it to replace the
opencoded derivation logic in init_cpuid()

Also, we absolutely want to unit test it.=C2=A0 (I could have sworn I alrea=
dy
started some work there - maybe its hidden in one of my WIP branches).

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 16:31:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 16:31:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104653.200445 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS0ED-00024j-Ns; Thu, 01 Apr 2021 16:31:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104653.200445; Thu, 01 Apr 2021 16: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 1lS0ED-00024c-KH; Thu, 01 Apr 2021 16:31:29 +0000
Received: by outflank-mailman (input) for mailman id 104653;
 Thu, 01 Apr 2021 16:31:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lS0EC-00024X-NR
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 16:31:28 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c896356e-41e1-481f-ac42-eed24845bd7e;
 Thu, 01 Apr 2021 16:31: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: c896356e-41e1-481f-ac42-eed24845bd7e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617294687;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=H7Xc8co0G+8ePjlc3Al49an8ffCJ804pzv/RQcupsy4=;
  b=e/3Ao0kiLhe7NOPvWvaFI5a1MNXDi/gDQI6T6JTjxayEfXH/O+oZInQD
   NFtuHiJViJFxvFB1XqoJ2pqWwkB31TnMJJ5AcGgH/tvRzjxah6HO3KVQU
   0U2bCp5Pd4UCBolXffvJETPJMkdK3D8E9xDHt0I1fdORM71q4SCoc1z8O
   U=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: l5AZFHmbPInJWg4it8rKdckWfHHSNur9aOoMkdY9MtQlM43e3y3p3tQTeBGKsiJNFiu2TY2YRO
 vgMfEM5U10oLARZVaIkBI4xH4SyuK9lV6Zjis2xOejdv2z1iQIgEJIOVeFhvMxpfQO2cZHm+6f
 fO8Da1L90M0EcHjNOS0nNC3nJX3dd/YR8Yb1uiQljptRkpdM/MKSvpUitxm21ce4ucFAyf1/pV
 nlB2OyMyOE1K3YgbjHw5Mil76ero9dyKcZ09CkGX/XB/llQ4gYlHUg1DSXai/y79gLzbasKMso
 RWg=
X-SBRS: 5.2
X-MesageID: 41096457
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:YQ9mTK6q0XL0VAv8ZQPXwWeEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbTqzOEtwWQVAGN4dHJ
 2T+sJIq1ObCAoqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+ELzGz2BACXzRThYoz6G
 StqX2E2oyPkdGejiXd2Wja8ohMlLLaq+drKcSQhqEuW07RoymyYoAJYcz6gBkUp6WV5E8ugJ
 3wpX4bTrlOwlfwWk3wnhf3wQnn118Vmg3f4HuVm2Hqr8C8ZB9SMbs4uatjfhHU61UtsbhHuc
 ohtQ/p1Os0fGf9tR/w6NTSWxZhmlDcmwtFrccpg2FCSoxbUbdNrOUkjTBoOa0dFyH34p1PKp
 gKMOjg4p9tADenRkzCsnIq6NKhWWlbJGb9fmEy/uaR0zRQgUljyVoZyME1jh47heIAYqgByO
 LePqtykrZSCucQcKJmHe8EBfC6E2rXXHv3QSyvCGWiMJtCF2PGqpbx7rlwzOa2eKYQxJ93vJ
 jaSltXuUM7ZkqGM7zO4LR7tjT2BEmtVzXkzc9To7JjvKfnebbtOSqfDHgzjsqJuZwkc4/mcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQksonWmiJvtnAJuTRx6/mWceWAICoPScvW2v5DH
 dGdiP0Pt984keiXWK9rwPWX1/rZ0zj7bN9GKXX5IEoucwwH7wJljJQpUWy58mNJzEHmLcxZl
 FCLLTulb7+hWTexxeO00xZfj5mSmpF6rTpVH1H4SUQNVnvTLoFs9KDPURb3H6NIA5DX9rbeT
 Qv4WhfyOaSFdi91CoiA9WoPiaxlH0Ivk+HSJ8ah+ml6dr6fIg7SrIrQrZ4GwmONxEdo3crlE
 5zLCs/AmPPHDLnjquoyLYOAvvEStV6iAC3ZehOqXzesk2Yjdo1RmQSWgOvVcL/u3dqexNkwn
 lKt4MPiruJnjiibUElhv4jDVFKYGOLRI5dAB+9f4VSkLDzcARWRWOH7Abq0i0bSy7PzQE/l2
 bhJSqbdbXuDkBGsn5V6Krs7Wh5b36QZU52d3B8v7BsDGiugAcH7ca7Io6Il0eBYFoLxe8QdA
 vIZjYfOStC7dG63hz9okfOKVwWgrEVesDNBrUqdL/enk63IIqTjKccArt/55B+Lu3jtecNTM
 OScwKYNynDFusswgCZz0xVYBVcmT0Bq7fFyRfl5G+30DoDGvLUOk1hXKxeDNeG7WToLsz4mK
 lRvJYQh6+XPWrwYNLdlv2SQD5HNx/JoWm5C8svsotZuKoutL11W7nXOAG4ok1v7VEbFoPTkk
 hbfYFQpJbmEaVrd9YJey1Y8kEy/e7/ZncDg0jTOKsGYVopj3XnJNuH7LrDlKo3DiS61XzNEG
 ja1xcYwuzMUCSC34MLEq4cIWxZb04n9XRpldnyPrH4OUGPd+tZ+kC9PWL4WLhBSLKdEbF4lG
 c33/i428uWfTH/wgbeoH9SJb9P6X+uRYeXDBiXEeBFt/y8NlLkuNrk3OeDyBP2QyC8cUIWmM
 lsclERdN1Kjn0at7IMuxLCAZDfkwYCiFtR4TZui17r1MyH2Q7gbDB7GDycpI5XUzlVOmWPlu
 Lf/4GjpS/A3AQ=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="41096457"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZueQAU9hR5QDzxjOvyJeqGIr/rFSqqz36pqOOVkKhUh6n23QLezPTLaXiS/X5cqz1zSGtZ7M/ydwtTaiwzBJl2HU+mgsWumX/x5lClciZm+FfffZUGInLVbtY7vPY6a9H4bLWvgIUaNFIdx4KIbDEiO44ZjNNuFdJpb6a+KegSw2ZUgNaZ6ex1w+/jxxw/FKmIBozu3XyKmC8FUU2jlsYjlbPIqZ7H9t46Mb7DhXM1q9758OH6KbCCs0Qy6R8BxZivtra0CPlYKYC01hdhqQGYvABHPOGdI09IMWnSTnhWPL0m4Rkcr3R9NfxwRdU3i0H9LnvmRlAHoIAX1Bh2k7Hg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xIJ+tZBCWziwfYboF2SRp6cUSYM25wcSDaFaNBRHWm0=;
 b=ZAN1lJtXJgNH2dp7bMD6lZcNiPJuFERjCNrLPwb65OZKc91yKoCiQlB1Ea05/eIM1WmpSXFo0xFP8EE+5EAvp4QDEEXYTFumgFbu6eh9b4cD0thXtuI3TVIl+/sCbVJJfw6i8d5nlvcEGsQhxkE8Gb/yRFmJZJuaen+O0pOK/6urqHGQJDo3CvV5tCdBklkhu/xaxqprmQUnBSsxNMJEHPa+chaL9Ro4XgxxlYTGXsnU3m2puiyG8674LP2mzkGNOUQerhD6OaBGthHha6ZG/JiAGunzTTmnrPPWZ14zCQJlvY19wWKjK7UkoF69Nap97aeoCsNcbetru1swblg1RA==
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=xIJ+tZBCWziwfYboF2SRp6cUSYM25wcSDaFaNBRHWm0=;
 b=fmfBP4mOkSPxtunJfMy6lWbPKiGthS5O7v/wbxE3MZtaFYo25tzZbAuzItD4x/4RLNn0Ud2lP7KxH9xmXVpmxpQLap/dZP8nZhgs/m/8iAzQnJkLs5TdSr+Qvtt3GXVsSUW4fKGO4jdweIYsMZNIentqN3J6p0onEMKrHNkB3W4=
Subject: Re: [PATCH 16/21] libs/guest: make a cpu policy compatible with older
 Xen versions
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-17-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <ab195203-1ed7-2e9f-b684-11e9dc397661@citrix.com>
Date: Thu, 1 Apr 2021 17:31:18 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-17-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0224.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a6::13) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 916233a7-f5e3-44d8-cec4-08d8f52b9681
X-MS-TrafficTypeDiagnostic: BN8PR03MB5124:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB5124BEA827F1F071D8088741BA7B9@BN8PR03MB5124.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3513;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /HNMQYfefAvm1u68ki0GOVmWTQ1c77NfEQmg8u7Gyhq0eCUIGKgQEDvqqD7vKlekxOhmZSxgFz8lpbmw5C4p0wzLjeu3AIdcjM8GanUVyhpC131FZ9NSzq5ZdZzsnLM+Yo4n2ujyrdjT5emy8bVgSvZTkJacaJUA8eJt7+djtTT/gSQJFkZTkwv91ovejLu2cZl7J2p+DewjyHHNzFPSXcYMKvjac7af1Li2G00Yw2Vcrq26BL/cuq8MMZufunlXq/YbLB2sa8OLxWHUVTymBLtR09yGIBAIdIEeospsbQCtmTEN9LFg1NqXmEkMLYOwMu/VOyxBkeXHpgFp6z0p7e9UyFOnNLewNzHe2u/OTXWcBJyxSdqHmomBtRCfBm3fCqm5ZGkSfjgGEWBD0OU0YWIVXe7MFsgMxTbxaym+jIU0q7gIYsziltuZbFJ71EXtYOCmgRe3Wf4bvVsmiweqH0pdxBVGQZVRJldTia2WdQh3FjJwUkZ2QK4BnJ2LVsiXXBWeJW84u3HoLtnLptuysLN3Q62cTJer6u2wyxlr+abNl2JA+txO9TQq+elFUf1LFwpu0DXiOGXUwE9R26Oidt/R2zlr/2eweDsYHtYgTXvP3eBBC2MPy+OvYKM7pRJ7O/V0VssUkiZy9ejRbAmPm4Fp0RFVoTiV5i4WPOgg+8kN1BIov8brVzVdZZQ0lWxVRFSReUdF5FFaYPIbtmiHWZTNukbTuEDcMKD3qVCtG0I=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(396003)(376002)(366004)(346002)(136003)(86362001)(8676002)(8936002)(2616005)(31696002)(956004)(83380400001)(6486002)(186003)(31686004)(16526019)(26005)(66946007)(66476007)(316002)(16576012)(5660300002)(478600001)(54906003)(6666004)(4326008)(36756003)(53546011)(38100700001)(2906002)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 916233a7-f5e3-44d8-cec4-08d8f52b9681
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 16:31:23.3711
 (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: M0cdBZu9H+3DFhBI6gBEelKIZHKh26vOVezGWHWk1i2EuRSOgaiN/8pLcJLGrku2YIpYR1mldk4PHbxnjy7pIvnh5HJsPu39S1Q5j5Febig=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5124
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> Older Xen versions used to expose some CPUID bits which are no longer
> exposed by default. In order to keep a compatible behavior with
> guests migrated from versions of Xen that don't encode the CPUID data
> on the migration stream introduce a function that sets the same bits
> as older Xen versions.
>
> This is pulled out from xc_cpuid_apply_policy which already has this
> logic present.
>
> No functional change intended.
>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
>  tools/include/xenctrl.h         |  4 ++++
>  tools/libs/guest/xg_cpuid_x86.c | 39 ++++++++++++++++++++++++++++-----
>  2 files changed, 37 insertions(+), 6 deletions(-)
>
> diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
> index 5f3e5e17e9d..6f7158156fa 100644
> --- a/tools/include/xenctrl.h
> +++ b/tools/include/xenctrl.h
> @@ -2627,6 +2627,10 @@ int xc_cpu_policy_calc_compatible(xc_interface *xch,
>                                    const xc_cpu_policy_t p2,
>                                    xc_cpu_policy_t out);
>  
> +/* Make a policy compatible with previous Xen versions. */
> +int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
> +                                  bool hvm);

I think this probably wants  "pre-4.14(?)" somewhere obvious, because
"compatible" on its own is very ambiguous.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 16:44:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 16:44:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104673.200481 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS0RF-0003EZ-Bx; Thu, 01 Apr 2021 16:44:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104673.200481; Thu, 01 Apr 2021 16:44: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 1lS0RF-0003ES-93; Thu, 01 Apr 2021 16:44:57 +0000
Received: by outflank-mailman (input) for mailman id 104673;
 Thu, 01 Apr 2021 16:44:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lS0RE-0003EL-RR
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 16:44:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lS0RE-00026i-Db; Thu, 01 Apr 2021 16:44:56 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lS0RD-0003Vh-VV; Thu, 01 Apr 2021 16: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=xen.org;
	s=20200302mail; h=Message-Id:Date:Subject:Cc:To:From;
	bh=OiaaY8Ipo2EWvkLByzV6dgLZ0290eAYdoAl27NRpKL8=; b=2g2s2cZnVUu0gTEVl5aqFGGDN1
	fZLcfEjRqub3Kb/XKr+ilVRemxHLPr6PLVpsavnsxxVKWMQGAXvDebKZx4JHg/vh4BCBuo1WYrEBi
	Cu7+nJzwl4zJB46dBg6RJTNKQqHPG6N403TiAO1NCkEnzEdBLl+XlO6pFEqz8kSszSgE=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v3 0/2] xen/arm: Mitigate straight-line speculation
Date: Thu,  1 Apr 2021 17:44:42 +0100
Message-Id: <20210401164444.20377-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

Hi all,

Last year, Arm released a whitepaper about a new category of speculation.
(see [1] and [2]). In short, a processor may be able to speculate past
some of the unconditional control flow instructions (e.g eret, smc, br).

In some of the cases, the registers will contain values controlled by
the guest. While there is no known gadget afterwards, we still want to
prevent any leakage in the future.

The mitigation is planned in two parts:
   1) Arm provided patches for both GCC and LLVM to add speculation barrier
   and remove problematic code sequence.
   2) Inspection of assembly code and call to higher level (e.g smc in our case).

I still haven't looked at 1) and how to mitigate properly Arm32 (see
patch #1) and SMC call. So this issue is not fully addressed.

Note that the ERET instruction was already addressed as part of XSA-312.

Cheers,

[1] https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability
[2] https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability/downloads/straight-line-speculation

Julien Grall (2):
  xen/arm: Include asm/asm-offsets.h and asm/macros.h on every assembly
    files
  xen/arm64: Place a speculation barrier following an ret instruction

 xen/arch/arm/Makefile                |  2 +-
 xen/arch/arm/arm32/entry.S           |  2 +-
 xen/arch/arm/arm32/head.S            |  1 -
 xen/arch/arm/arm32/lib/lib1funcs.S   |  1 +
 xen/arch/arm/arm32/proc-v7.S         |  1 -
 xen/arch/arm/arm64/debug-cadence.inc |  1 -
 xen/arch/arm/arm64/debug-pl011.inc   |  2 --
 xen/arch/arm/arm64/entry.S           |  2 --
 xen/arch/arm/arm64/head.S            |  2 --
 xen/arch/arm/arm64/smc.S             |  3 ---
 xen/include/asm-arm/arm64/macros.h   |  6 ++++++
 xen/include/asm-arm/config.h         |  6 ++++++
 xen/include/asm-arm/macros.h         | 18 +++++++++---------
 13 files changed, 24 insertions(+), 23 deletions(-)

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 16:44:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 16:44:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104674.200493 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS0RG-0003Fn-Jk; Thu, 01 Apr 2021 16:44:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104674.200493; Thu, 01 Apr 2021 16: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 1lS0RG-0003Fg-GY; Thu, 01 Apr 2021 16:44:58 +0000
Received: by outflank-mailman (input) for mailman id 104674;
 Thu, 01 Apr 2021 16:44: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 1lS0RF-0003FE-N5
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 16:44: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 1lS0RF-00026n-Br; Thu, 01 Apr 2021 16:44:57 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lS0RF-0003Vh-2c; Thu, 01 Apr 2021 16:44: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=4YIJNP3sWTEa4vKgS74NPmWXjoR7OyE6WG88MKH7VTw=; b=guT/9ZpPHn6MZTCpv+qMsJpHb
	xMtlyzFUHnsvz7WGxXHsFoIUtMw0Iz9Q5VRQjmNEo8aTq5qTK67iue4Xm2V0fg1BFvM1BojDTnQSc
	n9DCGx96NfxHisxpm9EvL10/UtlVFCzifxQNFPsvqaE5NYnBGyeDWwDxgo2nfgXchqgso=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v3 1/2] xen/arm: Include asm/asm-offsets.h and asm/macros.h on every assembly files
Date: Thu,  1 Apr 2021 17:44:43 +0100
Message-Id: <20210401164444.20377-2-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210401164444.20377-1-julien@xen.org>
References: <20210401164444.20377-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

In a follow-up patch we may want to automatically replace some
mnemonics (such as ret) with a different sequence.

To ensure all the assembly files will include asm/macros.h it is best to
automatically include it on single assembly. This can be done via
config.h.

It was necessary to include a few more headers as dependency:
  - <asm/asm_defns.h> to define sizeof_*
  - <xen/page-size.h> which is already a latent issue given STACK_ORDER
  rely on PAGE_SIZE.

Unfortunately the build system will use -D__ASSEMBLY__ when generating
the linker script. A new option -D__LINKER__ is introduceed and used for
the linker script to avoid including headers (such as asm/macros.h) that
may not be compatible with the syntax.

Lastly, take the opportunity to remove both asm/asm-offsets.h and
asm/macros.h from the various assembly files as they are now
automagically included.

Signed-off-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

---
    Changes in v3:
        - Include <asm/asm_defns.h> rather than <asm/asm-offsets.h>
        - Add Bertrand's reviewed-by tag

    Changes in v2:
        - Patch added
---
 xen/arch/arm/Makefile                | 2 +-
 xen/arch/arm/arm32/entry.S           | 1 -
 xen/arch/arm/arm32/head.S            | 1 -
 xen/arch/arm/arm32/proc-v7.S         | 1 -
 xen/arch/arm/arm64/debug-cadence.inc | 1 -
 xen/arch/arm/arm64/debug-pl011.inc   | 2 --
 xen/arch/arm/arm64/entry.S           | 2 --
 xen/arch/arm/arm64/head.S            | 2 --
 xen/arch/arm/arm64/smc.S             | 3 ---
 xen/include/asm-arm/config.h         | 6 ++++++
 10 files changed, 7 insertions(+), 14 deletions(-)

diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
index 46e6a95fec98..ca75f1040dcc 100644
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -134,7 +134,7 @@ asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c
 	$(CC) $(filter-out -flto,$(c_flags)) -S -o $@ $<
 
 xen.lds: xen.lds.S
-	$(CPP) -P $(a_flags) -MQ $@ -o $@ $<
+	$(CPP) -P $(a_flags) -D__LINKER__ -MQ $@ -o $@ $<
 
 dtb.o: $(patsubst "%",%,$(CONFIG_DTB_FILE))
 
diff --git a/xen/arch/arm/arm32/entry.S b/xen/arch/arm/arm32/entry.S
index b228d44b190c..f2f1bc7a3158 100644
--- a/xen/arch/arm/arm32/entry.S
+++ b/xen/arch/arm/arm32/entry.S
@@ -1,4 +1,3 @@
-#include <asm/asm_defns.h>
 #include <asm/sysregs.h>
 #include <asm/regs.h>
 #include <asm/alternative.h>
diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index 50f019ed98ea..7178865f48c3 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -18,7 +18,6 @@
  */
 
 #include <asm/page.h>
-#include <asm/asm_defns.h>
 #include <asm/early_printk.h>
 
 #define ZIMAGE_MAGIC_NUMBER 0x016f2818
diff --git a/xen/arch/arm/arm32/proc-v7.S b/xen/arch/arm/arm32/proc-v7.S
index 46bfc7a9074c..1efde2d72da0 100644
--- a/xen/arch/arm/arm32/proc-v7.S
+++ b/xen/arch/arm/arm32/proc-v7.S
@@ -17,7 +17,6 @@
  * GNU General Public License for more details.
  */
 
-#include <asm/asm_defns.h>
 #include <asm/arm32/processor.h>
 #include <asm/sysregs.h>
 
diff --git a/xen/arch/arm/arm64/debug-cadence.inc b/xen/arch/arm/arm64/debug-cadence.inc
index 7df0abe4756f..0b6f2e094e18 100644
--- a/xen/arch/arm/arm64/debug-cadence.inc
+++ b/xen/arch/arm/arm64/debug-cadence.inc
@@ -17,7 +17,6 @@
  * GNU General Public License for more details.
  */
 
-#include <asm/asm_defns.h>
 #include <asm/cadence-uart.h>
 
 /*
diff --git a/xen/arch/arm/arm64/debug-pl011.inc b/xen/arch/arm/arm64/debug-pl011.inc
index 385deff49b1b..1928a2e3ffbb 100644
--- a/xen/arch/arm/arm64/debug-pl011.inc
+++ b/xen/arch/arm/arm64/debug-pl011.inc
@@ -16,8 +16,6 @@
  * GNU General Public License for more details.
  */
 
-#include <asm/asm_defns.h>
-
 /*
  * PL011 UART initialization
  * xb: register which containts the UART base address
diff --git a/xen/arch/arm/arm64/entry.S b/xen/arch/arm/arm64/entry.S
index 175ea2981e72..ab9a65fc1475 100644
--- a/xen/arch/arm/arm64/entry.S
+++ b/xen/arch/arm/arm64/entry.S
@@ -1,6 +1,4 @@
-#include <asm/asm_defns.h>
 #include <asm/current.h>
-#include <asm/macros.h>
 #include <asm/regs.h>
 #include <asm/alternative.h>
 #include <asm/smccc.h>
diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S
index f38a8dfca7dc..aa1f88c76498 100644
--- a/xen/arch/arm/arm64/head.S
+++ b/xen/arch/arm/arm64/head.S
@@ -21,11 +21,9 @@
  */
 
 #include <asm/page.h>
-#include <asm/asm_defns.h>
 #include <asm/early_printk.h>
 #include <efi/efierr.h>
 #include <asm/arm64/efibind.h>
-#include <asm/arm64/macros.h>
 
 #define PT_PT     0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */
 #define PT_MEM    0xf7d /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=0 P=1 */
diff --git a/xen/arch/arm/arm64/smc.S b/xen/arch/arm/arm64/smc.S
index b0752be57e8f..91bae62dd4d2 100644
--- a/xen/arch/arm/arm64/smc.S
+++ b/xen/arch/arm/arm64/smc.S
@@ -13,9 +13,6 @@
  * GNU General Public License for more details.
  */
 
-#include <asm/asm_defns.h>
-#include <asm/macros.h>
-
 /*
  * void __arm_smccc_1_0_smc(register_t a0, register_t a1, register_t a2,
  *                          register_t a3, register_t a4, register_t a5,
diff --git a/xen/include/asm-arm/config.h b/xen/include/asm-arm/config.h
index 5c10c755db46..c7b77912013e 100644
--- a/xen/include/asm-arm/config.h
+++ b/xen/include/asm-arm/config.h
@@ -69,6 +69,7 @@
 #endif
 
 #include <xen/const.h>
+#include <xen/page-size.h>
 
 /*
  * Common ARM32 and ARM64 layout:
@@ -190,6 +191,11 @@ extern unsigned long frametable_virt_end;
 #define watchdog_disable() ((void)0)
 #define watchdog_enable()  ((void)0)
 
+#if defined(__ASSEMBLY__) && !defined(__LINKER__)
+#include <asm/asm_defns.h>
+#include <asm/macros.h>
+#endif
+
 #endif /* __ARM_CONFIG_H__ */
 /*
  * Local variables:
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 16:44:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 16:44:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104675.200504 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS0RH-0003Hv-SJ; Thu, 01 Apr 2021 16:44:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104675.200504; Thu, 01 Apr 2021 16: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 1lS0RH-0003Hl-Op; Thu, 01 Apr 2021 16:44:59 +0000
Received: by outflank-mailman (input) for mailman id 104675;
 Thu, 01 Apr 2021 16:44: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 1lS0RG-0003GQ-SR
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 16:44: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 1lS0RG-00026v-GQ; Thu, 01 Apr 2021 16:44:58 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lS0RG-0003Vh-6A; Thu, 01 Apr 2021 16:44: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=xddeRGQJBt2UK1F3Jl0he+BipTAo3K2Gn54LJ/oQfD4=; b=cTAVbPP1IOE+LNC4PHMIXqXYx
	1akX7cUB6Gl/Fg5qOEg9Eg3bqxL/CyqJZqmul0c3F2g7XDzdBDZwTYLW3GOTGWExZ2FcbdG0v540T
	MzhljtzYt4BRlyCaScynEQy8AKAU90l18XlWAhs6nl9OS+VTMtVqBrkE6GRKRNoZR1/Fs=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v3 2/2] xen/arm64: Place a speculation barrier following an ret instruction
Date: Thu,  1 Apr 2021 17:44:44 +0100
Message-Id: <20210401164444.20377-3-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210401164444.20377-1-julien@xen.org>
References: <20210401164444.20377-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Some CPUs can speculate past a RET instruction and potentially perform
speculative accesses to memory before processing the return.

There is no known gadget available after the RET instruction today.
However some of the registers (such as in check_pending_guest_serror())
may contain a value provided by the guest.

In order to harden the code, it would be better to add a speculation
barrier after each RET instruction. The performance impact is meant to
be negligeable as the speculation barrier is not meant to be
architecturally executed.

Rather than manually inserting a speculation barrier, use a macro
which overrides the mnemonic RET and replace with RET + SB. We need to
use the opcode for RET to prevent any macro recursion.

This patch is only covering the assembly code. C code would need to be
covered separately using the compiler support.

This is part of the work to mitigate straight-line speculation.

Signed-off-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

---

It is not clear to me whether Armv7 (we don't officially support 32-bit
hypervisor on Armv8) is also affected by straight-line speculation.
The LLVM website suggests it is: https://reviews.llvm.org/D92395

For now only focus on arm64.

    Changes in v3:
        -  Add Bertrand's reviewed-by

    Changes in v2:
        - Use a macro rather than inserting the speculation barrier
        manually
        - Remove mitigation for arm32
---
 xen/arch/arm/arm32/entry.S         |  1 +
 xen/arch/arm/arm32/lib/lib1funcs.S |  1 +
 xen/include/asm-arm/arm64/macros.h |  6 ++++++
 xen/include/asm-arm/macros.h       | 18 +++++++++---------
 4 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/xen/arch/arm/arm32/entry.S b/xen/arch/arm/arm32/entry.S
index f2f1bc7a3158..d0a066484f13 100644
--- a/xen/arch/arm/arm32/entry.S
+++ b/xen/arch/arm/arm32/entry.S
@@ -441,6 +441,7 @@ ENTRY(__context_switch)
 
         add     r4, r1, #VCPU_arch_saved_context
         ldmia   r4, {r4 - sl, fp, sp, pc}       /* Load registers and return */
+        sb
 
 /*
  * Local variables:
diff --git a/xen/arch/arm/arm32/lib/lib1funcs.S b/xen/arch/arm/arm32/lib/lib1funcs.S
index f1278bd6c139..8c33ffbbcc4c 100644
--- a/xen/arch/arm/arm32/lib/lib1funcs.S
+++ b/xen/arch/arm/arm32/lib/lib1funcs.S
@@ -382,5 +382,6 @@ UNWIND(.save {lr})
 	bl	__div0
 	mov	r0, #0			@ About as wrong as it could be.
 	ldr	pc, [sp], #8
+	sb
 UNWIND(.fnend)
 ENDPROC(Ldiv0)
diff --git a/xen/include/asm-arm/arm64/macros.h b/xen/include/asm-arm/arm64/macros.h
index f981b4f43e84..4614394b3dd5 100644
--- a/xen/include/asm-arm/arm64/macros.h
+++ b/xen/include/asm-arm/arm64/macros.h
@@ -21,6 +21,12 @@
     ldr     \dst, [\dst, \tmp]
     .endm
 
+    .macro  ret
+        // ret opcode
+        .inst 0xd65f03c0
+        sb
+    .endm
+
 /*
  * Register aliases.
  */
diff --git a/xen/include/asm-arm/macros.h b/xen/include/asm-arm/macros.h
index 4833671f4ced..1aa373760f98 100644
--- a/xen/include/asm-arm/macros.h
+++ b/xen/include/asm-arm/macros.h
@@ -5,6 +5,15 @@
 # error "This file should only be included in assembly file"
 #endif
 
+    /*
+     * Speculative barrier
+     * XXX: Add support for the 'sb' instruction
+     */
+    .macro sb
+    dsb nsh
+    isb
+    .endm
+
 #if defined (CONFIG_ARM_32)
 # include <asm/arm32/macros.h>
 #elif defined(CONFIG_ARM_64)
@@ -20,13 +29,4 @@
     .endr
     .endm
 
-    /*
-     * Speculative barrier
-     * XXX: Add support for the 'sb' instruction
-     */
-    .macro sb
-    dsb nsh
-    isb
-    .endm
-
 #endif /* __ASM_ARM_MACROS_H */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 17:22:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 17:22:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104692.200517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS11S-00070S-WE; Thu, 01 Apr 2021 17:22:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104692.200517; Thu, 01 Apr 2021 17:22:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS11S-00070L-SH; Thu, 01 Apr 2021 17:22:22 +0000
Received: by outflank-mailman (input) for mailman id 104692;
 Thu, 01 Apr 2021 17:22:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lS11Q-00070G-C0
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 17:22:20 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4893c945-cb8e-4d37-a463-e7ca09be095f;
 Thu, 01 Apr 2021 17:22:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4893c945-cb8e-4d37-a463-e7ca09be095f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617297738;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=3Kiz4JFIKM6c/kx/VCnk1VOA6QYDvbWSCcgOD8hCqQs=;
  b=H6bsYjMp0QE4tLjU37ps5nZJPb72AJIF/xf52Q2MNMWwq66omR9uFqGz
   TJcEu2jCXVkCnMj1yxMSqZSYmMtllQdoUMHKDkUuYUwoKBzSDG0F7qV/m
   nRh3ZS2S8Mz8F8CebLNa639wVZAA8cIuvYVdih1/AiQjJHaUJsEnR7NtM
   M=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: dwTyhiCEtVrUGv2P9u7V1L5Cp+o/kLzRHnJ52XNjxw0zwYl3tiQa10x73TrqHBs8GcapBSvBUB
 C3g9hp7BAJH6wbuYNlYXUUPijUSXxk34q6RIlYkNMVevOh0p4OpA7jITA9Vktwd2ThBnzk5c7e
 y4jntoV6Ss1X9TU2kDzrOvSvlC2VjhYBEwLuy22uXBLt0LkyoFfOU20PTv8vsd05rpnHiShoo2
 5PAVmt0ODuDQrboUAA/DL5acCQEsB1KyizuQstKmi0W1pytfbvhUwrq+qGPV0Cku2PquodpNbx
 gs4=
X-SBRS: 5.2
X-MesageID: 40709502
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:aYU4X6p/Edtu6DJJ8kP2AfgaV5vYL9V00zAX/kB9WHVpW+SFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex7h3LR+iLNwAZ6JWg76tGy0aLxz9IeK+UyHJwTS1M54kZ
 1hfa93FcHqATFB5/rSzQGkH78br+Wv37uvgY7loUtFbQYvUK146hc8NwDzKDwVeCBjJb4UUK
 WR/dBGoT3IQwVxUu2eCmMeV+bO4/3n/aiWAiIuPBIs5AmQgT7A0teTfySw5RsQXyhCxr0v6w
 H+4mnEz56uru2hzVvk33LThq48pPLa1tBBCMaQ4/JlTgnEtwDAXuVccozHhh8ZiqWF6FEmkN
 7Dyi1QQPhb2jfqUUye5Tfo0wnk+j4y53Hl0k/wuwqcneXJAAgUJuAEqYVFcgbIy0dIhqAM7I
 t7m1i3mrASLRTckD/z79LFPisa5nackD4ZvsM4y1l8OLFuEYN5nMgk025+VKokJmbc7rsqFe
 F/Zfusmcp+QBehQF3y+lV0zMfEZAVKIj62BnIsl+ayyDZskHVw3yIjtbAit0ZFzp47RpVejt
 60SZhApfVLRs8SW6p3GP0Md8uxEnDMWhLBKgupUC7aKJ0=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40709502"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U1go8m33G9lXdSVZdnODiF9LjE7z67ilqa2z2S78LHsBBj1IHJjp0tHhWB3LKtxqcVWOmoSBuhhWqymVfBoGNSSGtFj5XSnCojRRrBipaeoVaooHUQcpS6XMO5FNbEDNmBJZU/JGerluqB6WZxON+vERN1UJmkPxq7t5rZwfJUm3Okb2RJtmiQon6srRVRZv7Uo1owTqpXznmVaKbBf4Yj1Mpwwz9BE0tGZ9NsBuNuDnizE1ulsyhrmupSpSizyxXXGdNUwBpqCEmfwALfZsDR9jKC3cz4RJ5FqtmHK5lOJ4osqVla/oZFZO6Qa8Uqo3DNbiXlXgL85KEq5334sULw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Z3YUm9V+BOHV9ZbU3NeP5q+b1SrtN2hvM18XgsGk8dE=;
 b=aPL/0MIr/vlotLlKfae4MMqbgF9VduEyQaIe1rdtfZOhqDvoTewSNuAhaAq+4+MU1tPD44zUlipfZG36HrhVYVFk9bZaG8cR0RwyUtIHMT/keljis7/RQu5V2AKVgfXoQB7D1ITV6/8zK3wIkixxyGVRHoQMLUYIcNTrTRuXHD6uj6hV1LE/V+u6d1PQ0zzIEJ610i7TTuntz+fqUl69EQSgv3ev2+ECUTtH80Oj0y8o9Ck4iFY3IG0nlAOvomvqdq4ovOL+epftzlXHY2RMZUHbKWwp3twxPOYKz5JJWZ1xvR8wl2QPau8i3xLWGDjvQJcaQqCJ4OsTuIxPXIvKjA==
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=Z3YUm9V+BOHV9ZbU3NeP5q+b1SrtN2hvM18XgsGk8dE=;
 b=YXnobHSbjpLEb2PyH8uLVdfKDEc/1sOGPJ8Q6A4Zks5c8sae84JICruCp8VdU5fPg/CQejyIsRMBpmGoO4o9X5KqaqFiYFyS2PGHcbHdnLbohfg/cuRdrQ7P23FznyLisAOtyN1i9F1MhXbjGKMVPK8StzzizoZyLJrr8DjKb+w=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, Jan Beulich
	<jbeulich@suse.com>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-18-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 17/21] libs/guest: introduce helper set cpu topology in
 cpu policy
Message-ID: <e8f10adf-0b48-8a0e-45d0-f2130face900@citrix.com>
Date: Thu, 1 Apr 2021 18:22:07 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-18-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0434.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a9::7) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2596c444-303a-4b20-e340-08d8f532b08f
X-MS-TrafficTypeDiagnostic: BN8PR03MB5137:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB5137B7417B3E6D91DEE529A2BA7B9@BN8PR03MB5137.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: J/Anlcn1MXOw5EQ/X10KtgUcsIXU9zlGcJHU4bWvOmelhYwbXl4ECmvTV4kVtRIxsIeC+vx8dnRd+jGTUBmfb0PSa9RV0zQz0wiWMSSoAdOr5VVEo6ZQYupOyqH6/+DiAh8rG4GiqlaHb0w2eTsPbMjMQtcrfwe7/6X8FJoqxBRiwGJicwJEjZNa/oTYiLCagQTrDQiBg0asF53/6/xknQsK8D020nzvA5tp1X8Lt2AYxBIzqRfx//mbF8lKjRo83zEZu34h/+XeGypuH/izKYa108csBSnOO3269ji34zdpxVb0fpQKprLhcYgRMYIsmucBBahIFWYHOmL3GosuITmXn4aKL1yxsl0rqO6DdMRn3SMri16CG5LbBoFRFv4GftI74t6JNrXk1Jzu60CgfncKQbP8hL6ArWbgD2oNF/++/q1GkZDXUTfEr0iug6z8lVUuHmpjCwJWTlxlwCiFEW3eltM4ZEdTEyIULuQf9n2+YvTlJAkjVjNPLIQHFj/1U7zwM5zRPWuQ96y6b/9A6aIA/bmKIjYoOXjfxN+oBr+QubFTNRIzJTWQM5jdj+17M/gGPnqxNPb5AchUYs28GLPjXtHGQAaVZwZ6pxGGYwtWl6mh2u5gI3z4aflOCcCj9hhFWseduW9UcjikVkVMnH1z0JHgrJE2br3szI/qnp5Itm+jxRZlEYhHJIhAM0pJ6tb+PYSyoHB05QUkRXg1kShyOXqWEVoWyL7ECZiBqBw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(396003)(366004)(39860400002)(346002)(36756003)(8936002)(16526019)(31686004)(186003)(8676002)(5660300002)(6486002)(6666004)(16576012)(2616005)(86362001)(66946007)(66476007)(66556008)(956004)(83380400001)(31696002)(53546011)(4326008)(54906003)(2906002)(26005)(316002)(38100700001)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?Uis0b2l4U0huV0Zrcm9LS01mQlgvWUloazl0dGw3bjRRQXova1ZNMXA3VWlE?=
 =?utf-8?B?WlIyNXpZcWY5L3MrQ3c3YzRYcitoWldXcUVlWjJtdUVKam9xajZhQVRJMy9T?=
 =?utf-8?B?clE4cFFqYWpLcVdaOFpxZzE1TkJtMWFBbnViZ3dZL1Z2cG1DS3lFVVkzZlBs?=
 =?utf-8?B?SGVzTG0wb0p3eUphZDNDWmc3aCs2b3FDaUtLK0NsdUNheUc1dzZHdTF6cDV2?=
 =?utf-8?B?QUNKaGNzb2dIR3NTNS9MOU9QckxZcTlzSTJFOVkySXRqUWNBekZZcjIrUWRN?=
 =?utf-8?B?U2RBTnRaZUNQajFqNU5oWFhhTEdENGpoaC8xL2NwSXZmQytDYzNqSndKN3kv?=
 =?utf-8?B?eTBGV2hJVFUvNktiTE91TDF2K0d4VU5NUVhQSGN3RlA3djkxTVZXQjVRZDFm?=
 =?utf-8?B?RDRGRTRSWUY4UWdheFlpMG1YZThjNWY5RUxoL1cvS0FtU3hJbkdzUGdwTm92?=
 =?utf-8?B?emJHenN1RkFZYjcvbmZaaDl5dDBBTUs3Mm1sMlNGYXhiUDRRSXUvZjlaK2RR?=
 =?utf-8?B?N3RFcGxjKzlwdXJmcndJWkNVYmJRT0Uxcm1mUm1RR0sydm5MK2xGUnhPc0hs?=
 =?utf-8?B?bWFPTm5CaTNhb1dHcUhxemp2elBVcnJQdjFaSDNmRmtDVmhDdExvSHl0OTZZ?=
 =?utf-8?B?RTJPclovMGtsMFUvSXFWOUdhOXlFNTlGYjZhS2svWHQrWGFKSFgvb3p5NFMw?=
 =?utf-8?B?bjE4UDd0WTJXSmNFZWpMRmY5YkZuckVzMWd5d2VpYVoxS2orSTV1dHNBTC96?=
 =?utf-8?B?MmUveWZQbVlwdFV4c1ExaGtSUm1ZNkIxd25JVTk5NHNmeE0wVDVBZXJ0Q29V?=
 =?utf-8?B?ZG9iN0Q1bm81YVJUdGptakFPem9nNytZSDBmRHFzUVQyc1BVSEJmWVVReUxn?=
 =?utf-8?B?dzl6dGUyODk3N3h6VXNMdkNYMUswYk1WMThQTEExSnhoVGtsbmMxaUtWeUN5?=
 =?utf-8?B?dWtPaWRnTEd3Qzc1L0FURm5uS00yMGtqV09wdUt6SGxFaXVKWmZPNE9SdFBi?=
 =?utf-8?B?YXhyYlNuYm8wM1AxcC83TnhCOTVyZ0RONmtMZkF3VUxWQnVvcWpkTnlLeXl1?=
 =?utf-8?B?azI1eXhpMFN5RmVROWdmZGIzMmFXa1YyeStrTzNFTjNlZ29hYmpXczkrZVov?=
 =?utf-8?B?SXRRR3d0dGsxWklyWVVsRlNyL0I4L01GekpJUHJjM3ZRZ3lkd3YxaldaNStF?=
 =?utf-8?B?V3Q2NFJuRENPK3VXelBYNk5MOUdOcGhtWTlvT2cxdjNoazVpZnB1R1d2bk9N?=
 =?utf-8?B?aVlIT2xTcVJBK1d0Withbkg4aDArdmZVM0dmblV0NVAwT3Z4bUlDYks4Y2Z1?=
 =?utf-8?B?T25mV0E1aG9vWHVlTzRuV3AvK1pHRGdlQ05HYXVTQnZXVU5hQS9kN0lBMjF2?=
 =?utf-8?B?RVIwM0l4cHFJcG1oYVVPejhpdjVDU3lLKzQ2RHpHeDYwQ1I4enlMVG5IbE5u?=
 =?utf-8?B?N2NyOE9ia2txRzNWY3NZaFFWK1orZlRsbDl1WGNXYXNDRzcyN1FtaTF6SVV4?=
 =?utf-8?B?TnlmSDFXZDl2MlFXVjF1cEJ4Qi9SWmJGZlR5K2MySjlVVjJOaVR3b2NvdlRF?=
 =?utf-8?B?SnFWdmtTazVKbGU3bjFmS0Jid291VXExUjZnTHl6KzNtWHhDeTkyRHpKWUky?=
 =?utf-8?B?UDE3RU9sODY0QzNwc2R6UmFVQ2pzc3g5cVJlMUU1bGRXMU9zbHY1L0FlZUY2?=
 =?utf-8?B?NkQzZVhGSVowYldVS1VqSFgvYmdmYTFnQTdCMi8weERsMXBnZEtmaTdmNmFj?=
 =?utf-8?Q?/cPKQwsyIZcNqCwhtebYgG2cS5VHwrM3M4HdgaO?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 2596c444-303a-4b20-e340-08d8f532b08f
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 17:22:13.4333
 (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: CbJq5xtprhw648Htfry3/IOxPfHk1xZ1rUFWcrhA7/ShZF32ksDOJwjGFmjOg4Xf/o02vRz7dx+82nVxWpoHJiHoz4QLtB2wGADyEEuG0wc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5137
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> This logic is pulled out from xc_cpuid_apply_policy and placed into a
> separate helper.
>
> No functional change intended.
>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---
>  tools/include/xenctrl.h         |   4 +
>  tools/libs/guest/xg_cpuid_x86.c | 181 +++++++++++++++++---------------
>  2 files changed, 102 insertions(+), 83 deletions(-)
>
> diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
> index 6f7158156fa..9f94e61523e 100644
> --- a/tools/include/xenctrl.h
> +++ b/tools/include/xenctrl.h
> @@ -2631,6 +2631,10 @@ int xc_cpu_policy_calc_compatible(xc_interface *xc=
h,
>  int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t pol=
icy,
>                                    bool hvm);
> =20
> +/* Setup the policy topology. */
> +int xc_cpu_policy_topology(xc_interface *xch, xc_cpu_policy_t policy,
> +                           bool hvm);

I'm not sure how I feel about this.=C2=A0 It's repeating the mistake we've
currently got with topology handling.

One part of it needs to be part of "compatible".=C2=A0 We need to run the
below logic, *in this form* as part of magic-ing a policy out of thin
air for the incoming VM with no data.

However, for any non-broken logic, the caller needs to specify the
topology which wishes to be expressed.

Do we want SMT at all?=C2=A0 Do we want 1, 2, 4 or other threads/core.
How many cores per socket?=C2=A0 Its very common these days for
non-power-of-2 numbers.=C2=A0 Our default case ought to be to match the hos=
t
topology.

Do we want to support 3 threads/core?=C2=A0 Sure - its weird to think about=
,
but its semantically equivalent to using non-power-of-2 numbers at other
levels, and would certainly be useful to express for testing purposes.

What about Intel's leaf 0x1f with the SMT > Core > Module > Tile > Die
topology layout?

The answers to these questions also need to fix Xen so that APIC_ID
isn't vcpu_id * 2 (which is horribly broken on non-Intel or Intel
Knight* hardware).=C2=A0 It also needs to change how the MADT is written fo=
r
guests, and how the IO-APIC IDs are assigned (matters for the AMD
topology algorithms).

There are further implications.=C2=A0 Should we prohibit creating a 4-vcpu =
VM
with cores/socket=3D128?=C2=A0 A regular kernel will demand an IOMMU for th=
is
configuration as we end up with APIC IDs above 255.=C2=A0 OTOH, there are
also virtualisation schemes now to support 32k vcpus without an IOMMU,
which KVM and HyperV now speak.

Fixing our topology problems is a monumental can of worms.=C2=A0 While we
should keep it in mind, we should try not to conflate it with "make
libxl/libxc's CPUID logic more sane, and include MSRs", which is large
enough task on its own.

What I suspect we want in the short term is
xc_cpu_policy_legacy_adjust() or equivalent, which is very clear that it
is a transitional API only, which for now can be used everywhere where
xc_cpuid_apply_policy() is used.=C2=A0 As we pull various logical areas out
of this, we'll adjust the callers appropriately, and eventually delete
this function.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 17:44:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 17:44:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104695.200529 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS1Mc-0000N3-RZ; Thu, 01 Apr 2021 17:44:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104695.200529; Thu, 01 Apr 2021 17:44:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS1Mc-0000Mw-Mo; Thu, 01 Apr 2021 17:44:14 +0000
Received: by outflank-mailman (input) for mailman id 104695;
 Thu, 01 Apr 2021 17:44:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lS1Mb-0000Mr-IP
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 17:44:13 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f2f63e19-1bb4-40ff-a719-d6786882b7c7;
 Thu, 01 Apr 2021 17:44: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: f2f63e19-1bb4-40ff-a719-d6786882b7c7
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617299052;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=+791JNpeEdaqd7sL8/wPJrh4NVafG8GswQ+wOJdn8Cg=;
  b=DlY3T4FP+egsAd8OU51wzWYnG53JYh/IsVqJDlV5PocYqSISUFfFYn0x
   qzRSOUte0ma80bjxO2Dre6k33V70ClQIcmvZwEYPfHHL8p5nsPsrS8tQo
   uAc50t7zT+bilTWJ12K+oqtfwVqYEFobNEX+OAommtEemKZr+TV/2I2yL
   0=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: lPQNur7rz93qhrVQe/y/aFmx6nG6P5Xq6ZfvKzbP4Pmmz5Vkp1FnJ8mZNMDCEWM4sG0Bda9MAg
 zn5Aqh+H/OfhhVQq5KfSOu85P6mX+LY2wdbcwL16ZtsWZ1bws+zSIFWFo2P5EYV90Zisdnf/cU
 vo7EGGuw5NvYsV2kAgGDKWXxsrB0w7gzxBZymSM9KgFIf92oUk9G4q5pFkctRiEThpxRHD1wSa
 loBgKCub0dPOGV6pYQgtPqgD1r+1rEXP5SDV+JBNw7hQ1oL/UZhGZ+SrZ9kH4ReFKoichBCLE3
 ncY=
X-SBRS: 5.2
X-MesageID: 40730594
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:UBRIVa//5mftcagWf5xuk+F1cL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmyybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUHD38Zn/+
 Nbf6B6YeecMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsKV4hLxW5Ce2OmO2dxQxRLAod8MZ
 Ka6NZOqTbIQwVpUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbySw9BEYTj9J3PMe4X
 HI+jaJm5mLntOa7lvn12HV54lLg9eJ8LV+LeGFl8R9EESVti+Gf4JkMofy2wwdgObq01oylc
 mJnhFIBbUI11r0XkWY5STgwBPh1jFG0Q6Q9Xa9jWH4qcL0ABIWYvAx/L5xSRfS50o+sNwU6s
 sitAj4xvkneC/opyjz68PFUBtnjCOP0B4fuNUekmBFVs8mYKJRxLZvjH99KosKHy7x9ekcYY
 9TJfzbjcwmE2+yU2rUpS1GztCqQx0Ib2y7a3lHkMmU3z9KpWt+3ksVyecO901wha4Vet1q4f
 /JPb9vk6wLZsgKbbhlDONEesevDHfRKCi8f166EBDCLuUqKnjNo5n47PEc4/yrQoUByN8XlI
 7aWF1VmGYucyvVeIOz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykuO7ys9vQfHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYk8pss7YVSTucjGQ7ea9tDzQbL2Hv7AADwkUmTwDj
 8oRz7oPvhN6UitRzvWmx7Ud3TxelHu3J55HaTAltJjjbQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eaqACNjCL1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXWhT2XCANyJuVs++Kn
 8Zm31HvYaMa7CAzyErDNyqdkiAiWEImX6MR5AA3oqO+NniYZF9Kpo9QqR+GUHqGnVO6EdXgV
 YGTDVBal7UFzvoh6ngpocTHvvje951hxruB9VVp3LZvUC1vtouWXMfYj6rXaes8EQTbgsRom
 c0374UgbKGlzrqA3A4mv4EPFpFb3nSPKhLFz2fZIJfmqnifSZ5SWviv03dtzgDPk7Rs2kCjG
 3oKiOZPdXGGEBUtHxj3qH2y19sbWmGc0Vsand1jJ1lGQ39ywRO+N7OQpD2/3qaa1MEzO1YCj
 3DbDcICi5Fxty81neu6Xy/PERj4q9rEv3WDbwlfb2W52ikL5eQk7oaW9VO+ox+CdzouugXcO
 6WdgOPNgnkA+cx1wH9nAd9BABE7F0f1d/40hzs62a1mEMlCf3JOVJ8WvU1Jcqf42WMfYfA7L
 xJyfYO+c2+PWX6ZoTYleX5bztfJgjSpmDzZecyspxQtb8zsrw2P5Sza0q+6Fh3mDEFaOHznw
 ciZY4+xpbrEIpmZdYTdCJU5UBBrqXFEGIb9ijNRtYjdlQshULBN9yH47D0uaMia3fx0DfYCB
 26yWlh5P/LUCuI6K4CB48xKWpQblIg6H4KxpL1S6TgTCGrffpE5ly0LzuUd6JcUrGMHdwr31
 tHyuDNu++cbCzj3g/M+RN9P6JV6m6iBee/GhiFF+IN09u0Pz238+eXyf/2qDf8Uj2gbUsEwa
 VDaEwLd8xGzgAYs7df6Fn7doXH5mQ/k1Vf5jl7llninqieiV2rY31uAEn+mZVZXT5aL36Sq9
 /KmNLojEjA3A==
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40730594"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SeVm0ZCRELaqX9eG9DkrJd405agACnmMP2L5JXfCHOlAs3lz8jKOfL7VyrhSOZgYLHLKbcKO76Rtk+2PtAS60hKRJ6w34ddQKiOR0x2JT+sjTPZnnbu8k7ZCRn0zZHLFPZ1qGAtALACGPQPAeDduMLrtLZVckqTEREghwvgBfsz3b66yEpgex0DYBdiDB0RDD99dsodqbw+pJLCBJvDIxglYkUYZxiQMY3R58TyNU3j4hlk/08C0nIcNvCYaVSWwapuf/rDU/p0m0Mmi++MFxEXT/KIM8Xal4BVtYRlfrvFcBIzHf9rW9jOyIcIEqqvkqyxzgKkDvgaGBMgdmUcmaQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+791JNpeEdaqd7sL8/wPJrh4NVafG8GswQ+wOJdn8Cg=;
 b=j9XlgDMaSoTjBmIMTaSdDB6gXQQznmi5VLhRdMbqKFBCddd/mT9akQNm/FWpHzmkEN6MhZvlZpUarUeuiRw6QbW80k16Jdm2Q245AiteUdC9qKTBIo7XdvUsqy5EVuyitPF+YATbgXZUdOtgsgQjbLvBAewe75c5h+rG9g+R8HTze7ZNfA6WUquPGhrUFwW30PmuxxZRR61klPy1M7bTBJ6MA7m5+sb1GUROMJ6gYVyYIdw33BkxPEVio99dF6xJUPzVuaipVqRqwlurpchKd/8ddP1jaG5FicagdPTq8TrNCAec1IeZZ/zXa9+3zLpqIQ5ItdmcCgMmxdmyovVrsw==
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=+791JNpeEdaqd7sL8/wPJrh4NVafG8GswQ+wOJdn8Cg=;
 b=tvmlld+60Wcs8ZKk3CppQaspm/TrK2jvEyxzQoZXunzKITRiKEGJOcZuS8a464nAscxTv27PM9ssLyGCuJxfjHNmiOj9Ef1d5wETWrowsmjnqapwfgLnA3ySzUf+FMGQ/ex4FsHbRI7JPYy74eshnmsqKhCDpGABwq3KRp2vXz0=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-21-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 20/21] libs/{light,guest}: implement xc_cpuid_apply_policy
 in libxl
Message-ID: <f344e7aa-90c5-45ce-56be-9fae24f1e83e@citrix.com>
Date: Thu, 1 Apr 2021 18:44:02 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-21-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0099.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:c::15) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f630900c-c3ce-4dde-675a-08d8f535c045
X-MS-TrafficTypeDiagnostic: BN3PR03MB2276:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN3PR03MB22769482D83C12F262D92A9ABA7B9@BN3PR03MB2276.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: oANtb03pswGLSbkAgG891PHakjXodvWU1e7OdC3IzBoCwlZuKOv5wJ5OUT0XGTcyTDYJkdp6l99J/4XWuBBxsJklFKcIkgWdc4WKhDG5cP5XSvivUjpaiSFCGp7DNnL8Nges787R2l8SGWKw33WFfK3z6lSQsfadzFsTQnm+FtCECIaV7Ka4us5nyoKwED/27KG31Env0kza+oJAo4blQ+Eb7Dta3WPbCfCpvyZSMt2cs4JyUSEmxdiNET9FcJw3w8lTUp4VzQMqlHOqf4O99jez2g3vLTrF4rJGgSb+F5SvZ+tlq8RMjpVOcvCz1G87Pp4AJlM0rysLyjHdreiOVBt7svVC0HFFLm4G7xvxtM0kCa/aaBwJSh3IvYJAPxesTPrL8Ts+JTWHLvX9uzPfU98GaoVRYJyXvcjE/n+puUzlwr3rVxu0CXj95kY1tgJ8bgp+R5tKuv+TkgDmwW15xDK4eGgN/VuI/1XOfBx5WnoLoXwWb+SecT2yEKgB6sd+ldTdmuAMAXizwpPDMwuOR16OvhahXYXSONroflh+hFMeNuPeUzXy2y9EMp13PDJYLz3J9FzdZp01RN1bS8DYQ/sb7AF62z8npjFXA6E7XG2ES5s06PXE2qOZFKpGysHEo15+4xGrxAWOB7EXzw9fWAi0gOha190/qwxSSOQHNzCW5/1Owoi/2XGU8rpQjhRtR6lRzxF418xZ5jpm+dzDA9MBlyhlUckYX+avklzWOJY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(376002)(39860400002)(366004)(136003)(8936002)(478600001)(54906003)(2616005)(4326008)(38100700001)(956004)(6666004)(2906002)(6486002)(8676002)(66946007)(31686004)(86362001)(107886003)(316002)(66556008)(16576012)(5660300002)(186003)(26005)(36756003)(53546011)(16526019)(31696002)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f630900c-c3ce-4dde-675a-08d8f535c045
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 17:44:08.2639
 (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: Ve9tOgWQoDNu8uikKDz/PYRleluodQKnG2osYU0HtAbRLI1bMkjDlFj3xmxX4PK3uTEo8dMlAEmTm5CKpgkBCCjK5LiKj0SDQk4n9x1ZdYU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2276
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> With the addition of the xc_cpu_policy_* now libxl can have better
> control over the cpu policy, this allows removing the
> xc_cpuid_apply_policy function and instead coding the required bits by
> libxl in libxl__cpuid_legacy directly.
>
> Remove xc_cpuid_apply_policy.
>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---
> I'm unsure why this is called libxl__cpuid_legacy, mostly because I
> don't seem to be able to spot a libxl__cpuid (ie: non-legacy version).
> Should this be renamed to libxl__cpuid?
>
> 1b3cec69bf300e012a mentions the process of switching to a new cpuid
> interface, but I'm not sure we need to keep libxl__cpuid_legacy, since
> that's an internal interface that's not exposed to libxl clients
> anyway.

"legacy" was referring to the pre-4.14 migrate-in problem.=C2=A0 It was the
best I could come up with without having a firm plan of how this series
was going to look like.

That said, the resulting function is still very definitely doing thing's
I'd consider "legacy", so perhaps it wants to stay named like this until
we've got a better plan for how to enable non-trivial features.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 17:53:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 17:53:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104698.200541 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS1Vt-0001J4-No; Thu, 01 Apr 2021 17:53:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104698.200541; Thu, 01 Apr 2021 17: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 1lS1Vt-0001Ix-KN; Thu, 01 Apr 2021 17:53:49 +0000
Received: by outflank-mailman (input) for mailman id 104698;
 Thu, 01 Apr 2021 17:53:48 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lS1Vs-0001Is-DY
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 17:53:48 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1e794911-75cd-40ff-96b3-4fdbb5303e00;
 Thu, 01 Apr 2021 17:53: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: 1e794911-75cd-40ff-96b3-4fdbb5303e00
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617299626;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=J0mB+ca1/dHzwyG5wpDRMwjhv25AphJTBpchIQNnlvQ=;
  b=JvqB90gp/uUjFZq+sNIzONL1SzKRxsSh+ibcDL071ueEve7xwNGJ6UqQ
   88QyXnKtFfcSuAIluKoJYGt8RXssFz79wfwxVLO+/6+gcgVfF6o2NjGRp
   WnncO4YkUEMTX8tR1MKGIOhI4lFuhOjwuQp0tDmFu1Ek61nEXhUd4VTpN
   Q=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: J+cM7BNsWdteVoJ+raiVGyBmkNbp7nusQdg5h2H8jyko8zw+NAaixsSgiB16B9PPz5orL9g+8q
 ky9ZVOc2vu+NtpMBSsn0lKRlzIaSKZ5+9vWyx0WWutdSl9/Kr6e0MRCj1V8ZVDXWytQxPORTHu
 M3TE7Ou3C6yGjXrspRJpfghqy0Yb9QGxe+i3Y3Ou5PTC233kLGbllQdmrVxjVtdBsxTcAXrvR9
 K9xC2WoAjL45g1TtBb6DHbcHTsigxSyM5OVzNm1DXgV6Q7T39TI356cU9lxoX7VUA60oorjD3r
 DXs=
X-SBRS: 5.2
X-MesageID: 42185845
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:lt96rq+WKHEw3K50DY1uk+F3cL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmzybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIULD38Zn/+
 Nbf6B6YeedMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsLV4hLxW5Ce2KmO2dxQxRLAod8MZ
 Ka6NZOqTbIQwVoUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbCSw9BEYTj9J3PMe4X
 HI+jaJmpmLntOa7lvn12HV54lLg9eJ8Lp+LeGFl8R9EESWti+Gf4JkMofy2gwdgObq01oylc
 mJnhFIBbUP11r0XkWY5STgwBPh1jFG0Q6R9Xa9jWH4qcL0ABIWYvAx/b5xSRfS50o+sNwU6s
 sitAj1xvknb2K1oA3H69fFTB1snEavyEBS9tI7tHBDTZAYLIZYsI13xjInLL47ACn45Io7ed
 Medf302fA+SyL+U1nkpGV1hPSjUnMvdy32OHQqi4i+1jhbm21B1E0IxMATtWdozuNMd7B0o8
 vDKahmj7dIU4s/ar98Hv4IRY+NBnXKWg+kChPdHX3XUIU8f17doZ/+57s4oMmsZZwz1ZM33L
 DMSklRu2Iec1/nYPf+naFjw1ToeiGQTD7twsZR69xSobvnXofmNiWFVRQHj9agi+93OLyYZ9
 +DfLZtR9PzJ2rnHohEmyfkXYNJFHUYWMoJ/v4mRlO1pN7RIIGCjJ2ZTN/jYJ7WVRo0UGL2BX
 UOGBLpIt9b00ytUnjkxDfLXXfAfVH+4IJQHKDW8/N78vlICqR89iwuzXip7MCCLjNP9oYsel
 FlHb/hmqSn4Um6lFy4qFlBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCR31HuDLRlvctPOHG
 dk1hJK0JPyC6bV6TEpCtqhPG7fpWAUvmi2Q5AVnbDGwsv5ZJUiDNIDVLZqHQvGUzx58Dwa6F
 trWUshfAvyBznugaKqgNg/H+fEbeRxhw+tPIpzsnLQtUKVoOk1XXsFVzuSUcqa6DxeAgZ8tx
 lUyesykbCAkTGgJS8Um+IjKmBBb2yRHfZ7FgifXZ5VnbrqYQl0am+PiVWh+kgOU1uv039Xqn
 3qLCWSd/2OJlZGoHhX3pzn905OenyHc1h9bW17toNBBX3L00wDpNOjV+6W6S+8e1ECyuYSPH
 X+bTweLhhH6vq32BSW8QzyWEkO99ELBKjwHb4je7bc1jeRM4WOj7gBBOIR1o1iLsrSvugCVv
 +/dweZICjjMf4g3xWYqx8eSXFJgUhhtcmt9Azu7WC+0nJ6POHbJ05+QaoHZ/6b9GrpSp+zod
 1EpONwmdH1FGr/atSLk/6KKxFCLw7eum6wQaUDr4tOsac7qbt0GN36XFLzpQd69SR7CP2xsk
 UUBJlfyvTmHKREesQJYSJX/lYzjr20XQEWmz2zJtV7RE0nin/QAsiA7LXJo4c+G0HpnnqGBX
 Cvtwlmu8rfVySN1bQmG7s9DGRfZk878mlj9oq5BsTtITTvU+FI51yhNHChNJdbVaieAL0Vxy
 wKr+2grquydyDi3hrXsiY+CqVS83y/Scf3JA6XA+ZH/5ibPluL65Har/KbvXPSSTGhbV4fip
 AAXUsMbt5bgj1ntbYJ6EGJO+fKi3NgtUBf7zFhnkPs3YbjwF6zJzA2DSTpxrNMXTdSNXCUi9
 /i6ubw7gWn3AR4
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="42185845"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KDx5vURnzyPsw6rBUZ/bSSh6v0L56pyM6d1D2WbqO8hptLRPWoWotwwvot/4COvkP26IKYZPKifFSF2NXMzg4afhFfPeAzz7rzAXItGzhFTa3GqkM+CAwpTJ56FVl4rLi+f9lb0ZgYm14Lv6Z1bCoffHz5eokN5EEKEV88dqvR5YiwAY/xgwUOyRQidyn5hiDYGd4X6+3i5EK2KnXik4YVj4Ibkd2i5dgr1j5mu377bFFu0+h1gfNOMGzJW89S1+0IKbZftQTY0hw3xMAOVnntbJtK7LtNWbemikJ40J12AUXEbePHn3UmsvPD2RbwJgo5TnPEFgK1ybRfTm0/ZQIw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=J0mB+ca1/dHzwyG5wpDRMwjhv25AphJTBpchIQNnlvQ=;
 b=TOE+U+iOdRLDihPztCs8N4LDR6Ml813QTflspwT0NHUMWhor2g6tSTSQBWce0LbxNrq7+C4eETmh05wrzkCN2ErmAP0rBGb8SDWcQOHhboWcuXipEowXMBlu2LB8Y8VvpBcDYC5XOua/EVSVx+rKEM9s5n1y261cZS5sX5IoNHB/uyv0Jb5Oi+WrIVDzA5fjjVDVHdQXNDFfxMGyXKUwbMXK6mndMObsfm6b2jkUPD2Wg6u9zaOSsQCiVGPyRNmIBH3f95OJh0zOiX67azIfGXN0LAKv3vBp2vRx9UUkMV7pulQwJ1jd36qDrMUWa+EhPYrjGoXeDleE0BHjd+OpSg==
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=J0mB+ca1/dHzwyG5wpDRMwjhv25AphJTBpchIQNnlvQ=;
 b=nx6RbP8XZJNPegAJrucSeTFyIeUEj3ajU/Ov3ecw3iRJsf8NdsqCDZxKRxSFG3zU2YDQ0FO4g6eZqf40F04Lvon6YdzoIP7xoZTV1N+ilpBnGcXRoX2nZe1gnhE/n/vYzrYVOv4yV6MX0DRP3j+QGXF05mT56oLkVaFwvjoi+D0=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-22-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 21/21] libs/guest: (re)move xc_cpu_policy_apply_cpuid
Message-ID: <67f7251e-dbe6-37d9-472f-79937e9b1a01@citrix.com>
Date: Thu, 1 Apr 2021 18:53:38 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210323095849.37858-22-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0445.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a9::18) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 87b978fe-e29c-4530-c935-08d8f53717a9
X-MS-TrafficTypeDiagnostic: BN3PR03MB2371:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN3PR03MB23715F5E7F105016E91A37B9BA7B9@BN3PR03MB2371.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 6Ty1iysBRvDGwxyLtsXABzTrmJ0WYHbutxjKG4jvYrF0mv5+CTAOT+7IvvncNPQQXPQ0B1wHOJdnedxQY2ogsEbJ86Y4r1PAiWY2WyTloCsAQZUaWcomtax6LAAyVD/ylLaJlBrSloi9hkTzpgmy50w1B1Uj6eB/RQXAwcx08G8Vod7roNCIRU2PFgsEQRXItb6BkTxXlN04aXvc5em5zjmTI/TdKDb/pY0nwCItfy+c3apxFDobAIbES87UZAl0ogJRFQis4YuRA5J+vIs42mLBzFRs4PAEuxAcMFqW6iQg4ERIYNag4TdA+oWrhTtOv5g10/ZBXypbrtfHR9AicIatWvPbXcKXg8aBnayRXKjChq0AX3qYEzd/HKdkGfD/ark6RkOqdrbCVkC8HlBFvbTmQwfyhiss2hQO6JCgu+WDIfr/HpW4k39mWflhRfKy0Oj2n4EMQs0PO2BiqjBrnV8BoyQjId9HahlLr8R/kkCu4jQmAaous9FGIr9viDfFZByrvNmW6PtDTy64TkzH35xL6KebF3HXQLT251uU8FUkLL1IFkgGgVZYTf7dLTT1NdfyGTE0/tZxx1sbDFWBwFEkH+uqv2DjiOy3WCLmqjibFcF0xKP5mUzqn2B7tNUTCWhdS1j4tJqMfjHbpgt2PnzKt8eRrWRNhShdWXapd8y+VvjD89XCwUWgp8VcEcY7RRGB9IJ3L+FTJVjgvASxf8Mo1wnT7S8+so9qFsSTiaQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(346002)(366004)(39860400002)(136003)(107886003)(6666004)(36756003)(16526019)(66556008)(8676002)(186003)(5660300002)(26005)(31696002)(8936002)(53546011)(31686004)(956004)(478600001)(54906003)(6486002)(2616005)(66946007)(4326008)(16576012)(66476007)(38100700001)(86362001)(316002)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 87b978fe-e29c-4530-c935-08d8f53717a9
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 17:53:44.3153
 (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: tWuDEf4nVCi+iorOf1zsZM2J7pKQmmYmM52sdB2sUjuGl+Bgzr/mcwtYA52Xa9Q0XZMo8EYuUjMnCPIuEx/3IhT020zuwp8OfBPBRAyJOlI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2371
X-OriginatorOrg: citrix.com

On 23/03/2021 09:58, Roger Pau Monne wrote:
> Move the logic from xc_cpu_policy_apply_cpuid into libxl, now that the
> xc_cpu_policy_* helpers allow modifying a cpu policy. Having xenguest
> parsing CPUID data in xend format was a layering violation, and by
> moving such parsing into libxl directly we can get rid of
> xc_xend_cpuid, as libxl will now implement it's own private type for
> storing CPUID information, which currently matches xc_xend_cpuid.
>
> Note the function logic is moved as-is, but requires adapting to the
> libxl coding style.
>
> No functional change intended.
>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>

Its not a layering violation IMO.

It was only in 4.14 that I dropped the Python and Ocaml bindings for
xend-format strings, in an effort to simplify this work.=C2=A0 Before then,
libxc was absolutely the correct place for the logic to live.

I do intend to re-add python bindings in due course, but I really don't
expect that to extend to the xend format.=C2=A0 So moving this logic probab=
ly
fine, unless we're expecting to re-introduce it elsewhere?

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 17:56:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 17:56:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104703.200553 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS1YD-0001TK-99; Thu, 01 Apr 2021 17:56:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104703.200553; Thu, 01 Apr 2021 17:56:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS1YD-0001TD-61; Thu, 01 Apr 2021 17:56:13 +0000
Received: by outflank-mailman (input) for mailman id 104703;
 Thu, 01 Apr 2021 17:56: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 1lS1YC-0001T5-1r; Thu, 01 Apr 2021 17:56: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 1lS1YB-0003HT-PI; Thu, 01 Apr 2021 17:56: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 1lS1YB-0007iC-IF; Thu, 01 Apr 2021 17:56:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lS1YB-0006ck-Ho; Thu, 01 Apr 2021 17:56: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=1ZO7oKU/bkLPRw0PZdX3qiwwwvg+v0HUEr5CUYObJw0=; b=lViUSi291l1jo6W3w4/k2ntXAK
	X+urEP/8+xPwn15xdlKN8XrFjDOnHfKdFIpMjP+tbRQj48U1zm1S1ejPNLItaFLKcJ1Pgwy7vsEFY
	qaB939LKq5PTAC9QxZMXtMunlIH2rtfREbIM83X/3BK8V+0bfhe/ExhBNAjwCQBan8h4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160645-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160645: 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=5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 17:56:11 +0000

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

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                  5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160641  2021-04-01 11:00:28 Z    0 days
Testing same since   160645  2021-04-01 15:01:28 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>

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
   b0976d5c04..5c3c410bd2  5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7 -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 18:18:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 18:18:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104707.200567 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS1te-0003MD-4y; Thu, 01 Apr 2021 18:18:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104707.200567; Thu, 01 Apr 2021 18: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 1lS1te-0003M6-1t; Thu, 01 Apr 2021 18:18:22 +0000
Received: by outflank-mailman (input) for mailman id 104707;
 Thu, 01 Apr 2021 18:18: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 1lS1td-0003Ly-5F; Thu, 01 Apr 2021 18:18: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 1lS1tc-0003ly-RX; Thu, 01 Apr 2021 18:18: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 1lS1tc-0000KY-FV; Thu, 01 Apr 2021 18:18:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lS1tc-0000Pl-Ez; Thu, 01 Apr 2021 18:18: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=viqhVoenmfIYSSUcoFKsOXAcQhk8+Rqbg68wdci3RK4=; b=1/zLukLa4tW9l9KmxeRe/BUOze
	TvYHVM5KbLZ8Bvj03DHhRFweTr35m0ca1zKyNqlsK/1DfifrWQ0g7BvVnWgNWcdArTfl5jpCZ5dZV
	t/k4y+r1eLUsZV5M0Ql2XEL50fUUlUHikr7+/pCURjwgbVC3dqXYbbcYWve5bR6xEdi4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160632-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160632: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-amd64-xl-credit2:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 18:18:20 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-amd64-xl-credit2  14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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
 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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  224 days
Failing since        152659  2020-08-21 14:07:39 Z  223 days  421 attempts
Testing same since   160632  2021-04-01 04:02:58 Z    0 days    1 attempts

------------------------------------------------------------
469 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 139001 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 19:44:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 19:44:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104715.200588 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS3EU-0002Z2-Bm; Thu, 01 Apr 2021 19:43:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104715.200588; Thu, 01 Apr 2021 19: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 1lS3EU-0002Yv-8Z; Thu, 01 Apr 2021 19:43:58 +0000
Received: by outflank-mailman (input) for mailman id 104715;
 Thu, 01 Apr 2021 19:43:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Onq8=I6=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lS3ET-0002Yq-AC
 for xen-devel@lists.xenproject.org; Thu, 01 Apr 2021 19:43:57 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 38150d97-88d7-4de6-9fe3-6380c3cdb12d;
 Thu, 01 Apr 2021 19:43: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: 38150d97-88d7-4de6-9fe3-6380c3cdb12d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617306235;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=5WTsbL6fVOVHN7q/idb6GJ+u9Mko5Q++oDqeEXsO4sI=;
  b=Dhbo/n0jHDzvsfEIJDSjNBAZU2AoO/cd3XVxZl8kIaoD0v7SG7hWW30y
   m/E7wj3VzjAgguBhamAAxOyyLVXrhUpfS8fDTzAq6aGiF3ycut8pW6Gn9
   2PtbpwuX+bG7H0E+h8UL3STw4u5EY8I+sysuZDiYJkkO1JlMrGPY+GNFK
   4=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: fVaHt3/uAjG1dlHl5keeAZrfvAdrskLPEnNBoLTHy4C6VGPtRsEiav9rv3Tzdimu1ypjb9GuSX
 SLvKP6EIrG5kFEvrpb1UY/ueWXnLklDHzD+1J2MmdAgx+ZcZwOL9Pmffsu+zVyRZuGam2KpzM+
 XM1IYsqmT/TQWpQEVmjTvgvJK22PF2HRnLx4KMOZv/FiV0moJOTc7FK/hSjMSQGPWBBSCKVzcP
 l8WnQCx6uSmrhDFlVquqp0pzDO41uzehPsH9wUDl4Wq5gYVVajEzGsVDd1KaiGKOtGwe7ZqsHy
 x4E=
X-SBRS: 5.2
X-MesageID: 40740297
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:uvAQM66ScUeRPzZZ0wPXwWeEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbjqzOEtwWQVAGN4dHJ
 2T+sJIq1ObCAoqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+ELzGz2BACXzRThYoz6G
 StqX2E2oyPkdGejiXd2Wja8ohMlLLaq+drKcSQhqEuW07RoymyYoAJYczlgBkUp6WV5E8ugJ
 3wpX4bTrlOwlfwWk3wnhf3wQnn118Vmg3f4HuVm2Hqr8C8ZB9SMbs4uatjfhHU61UtsbhHuc
 ohtQ/p1Os0fGf9tR/w6NTSWxZhmlDcmwtErccpg2FCSoxbUbdNrOUkjTBoOa0dFyH34p1PKp
 gWMOjg4p9tADanRkzCsnIq6NKhWWlbJGb9fmEy/uaR0zRQgUljyVoZyME1jh47heIAYqgByO
 LePqtykrZSCucQcKJmHe8EBfC6E2rXXHv3QSyvCGWiMJtCF2PGqpbx7rlwzOa2eKYQxJ93vJ
 jaSltXuUM7ZkqGM7zO4LR7tjT2BEmtVzXkzc9To7JjvKfnebbtOSqfDHgzjsqJuZwkc4/mcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQksonWmiJvtnAJuTRx6/mWceWAICoPScvW2v5DH
 dGdiP0Pt984keiXWK9rwPWX1/rZ0zj7bN9GKXX5IEoucwwH7wJljJQpUWy58mNJzEHmLcxZl
 FCLLTulb7+hWTexxeO00xZfj5mSmpF6rTpVH1H4SUQNVnvTLoFs9KDPURb3H6NIA5DX9rbeT
 Qv4WhfyOaSFdi91CoiA9WoPiaxlH0Ivk+HSJ8ah+ml6dr6fIg7SrIrQrZ4GwmONxEdo3crlE
 5zLCs/AmPPHDLnjquoyLYOAvvEStV6iAC3ZehOqXzesk2Yjdo1RmQSWgOvVcL/u3dqexNkwn
 lKt4MPiruJnjiibUElhv4jDVFKYGOLRI5dAB+9f4VSkLDzcARWRWOH7Abq0i0bSy7PzQE/l2
 bhJSqbdbXuDkBGsn5V6Krs7Wh5b36QZU52d3B8v7BsDGiugAcH7ca7Io6Il0eBYFoLxe8QdA
 vIZjYfOStC7dG63hz9okfOKVwWgrEVesDNBrUqdL/enk63IIqTjKccArt/55B+Lu3jtecNTM
 OScwKYNynDFusswgCZz0xVYBVcmT0Bq7fFyRfl5G+30DoDGvLUOk1hXKxeDNeG7WToLsz4mK
 lRvJYQh6+XPWrwYNLdlv2SQD5HNx/JoWm5C8svsotZuKoutL11W7nXOAG4ok1v7VEbFoPTkk
 hbfYFQpJbmEaVrd9YJey1Y8kEy/e7/ZncDg0jTOKsGYVopj3XnJNuH7LrDlKo3DiS61XzNEG
 ja1xcYwuzMUCSC34MLEq4cIWxZb04n9XRpldnyPrH4OUGPd+tZ+kC9PWL4WLhBSLKdEbF4lG
 c33/i428uWfTH/wgbeoH9SJb9P6X+uRYeXDBiXEeBFt/y8NlLkuNrk3OeDyBP2QyC8cUIWmM
 lsclERdN1Kjn0at7IMuxLCAZDfkwYCiFtR4TZui17r1MyH2Q7gbDB7GDycpI5XUzlVOmWPlu
 Lf/4GjpS/A3AQ=
X-IronPort-AV: E=Sophos;i="5.81,296,1610427600"; 
   d="scan'208";a="40740297"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QTqaZzQIS1lpKDX5TZpGN0IWAQMz3UJ2jBtzEeaV/3p2RtqKvlV8+I4Vh5UbqtCO3HjrnSnqByfKfVHvDCqKd4rXYZqN6sGHA8ZF4nQgzxa8cBSGCh6Z346PipLI9sJ1AObkYcmJkJxOWZynELlFig3KUFDkJRb01l4v/LRPiBBzpb+Ky9kD69EKEYsfhhkvUUSxXUOjZpPiE9gNpgZDetKfZ1VpmzKPfSm7Fd2priKOg+2kH5h8tr/2ZOHSwcfRqcSGGdff73d72gtqA3oUHityhGxNMpzWfo4IE8/8hOu6Y2dsBayWo3tIxwCJ96YXkSRfLw0u27QzMNOGhT9DsQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5WTsbL6fVOVHN7q/idb6GJ+u9Mko5Q++oDqeEXsO4sI=;
 b=i1qgxVGETMoIe3s4cRcEODpvbOwDSnzVbfeJ+GqKwAG6FBfk9RKuiJIa6m8YmeOjO400kbxQFi/MgHk+flGvPFmFanTxBouCvdDrERSnHuTMiYh83X/UfaJZ47tMB8aWOQNC2Bs/KY0qegHLYICn1BMqGK4i+vD1T3BdUBNPA32q/aA3Mj7XHKA3WN2LqN/bREF56+P97rBAqQkqEpGWoPEEM/XtQpU3ctRaoHI6NOSch66UypAkSLmVZl8k61IpD5FwJMKrZijPpvjxn+lR0u7IV9faScPIHjlrddEj/1R1ljri0vIMUpICOFKigcM2L1qDSs1/vCOeK2I+BCrt9A==
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=5WTsbL6fVOVHN7q/idb6GJ+u9Mko5Q++oDqeEXsO4sI=;
 b=GLy0jvrT6w6bERK4CWuolM8dSdtHDt7EnUvVW2I7ul8HmIicYd2KPf1hUiISMIpNadhPDGVotjIgxMOoaGKluwsntaXU+/BqJvqzYf1yeJUoI1S26LwNa+jgHb7VK1nSPlWd4DXg/HHnIuEanScyTyFQsfIOvDaZeHIUlBLxlF8=
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Jan Beulich
	<jbeulich@suse.com>
CC: Roman Shaposhnik <roman@zededa.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, <grub-devel@gnu.org>
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
 <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
 <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
 <YGWH89ubVe104Tnl@Air-de-Roger>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: multiboot2 and module2 boot issues via GRUB2
Message-ID: <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
Date: Thu, 1 Apr 2021 20:43:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <YGWH89ubVe104Tnl@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0286.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:195::21) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b3f42fc8-3f6b-49c8-ee31-08d8f5467a9b
X-MS-TrafficTypeDiagnostic: BN8PR03MB5122:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB51220438841EA6EE588C4B60BA7B9@BN8PR03MB5122.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: bPaCSVpcFVU3JQI+36AwWs0qG6d98Yiq6YWsuECcGUg0WqIAv4aai1Eudkbv8i0ET33Hudq58itTfO4BF/VJg5i5+Nvrw5naVvIPiSDYqvxKMCAkyAXCdOzfrfTZfseCQFA7zqVM8VUn4UVaqTU6ret+BVqc6ts+QT3cGfa3dE3HQig7uYMowUi7tAu2sBEJsEROG0m5ZLktz6wlqeNVJVfwZWXP9BDprCz1o8TukzUFgDZZxON/cJBpOYX08xD5zmO8AtMELbtJKCmSz5fL4nJr6k/cO68FbrdeSAbAp+85ATueFBXcr9IaN4HS2zYKddiacU34uvM6OIXF9Cpc/uklcPS4zFVQtj5JKMvzF+X6U/Sxk7gCfNAPld+RTa3ET8rlknUMk4zCqnVJElS3//xJ+qTVpY3wQVgGp/zfHhI6j5R18bJIVhk3itUqtouz6MkcFAgK+mpzrK7muzKse2v7PnwBXbagdzxA6uRAgxIgWJPZW11WrpKrDsglnGe3bYjQ7EmEGUVl3nv97dCIzXdG9zKFWs4SbIBFWGOqUroeicZXzsvLxquyaUBxQs08v6YWX8WhuwNILz+pZe5l6DmDHFcBuYoLUir1ogc/ZbVWVbUUvfPmNpCxUVpCayL+jtBA2pCJXx1c9opGDctO0QqnNORzpsR1l2knPw0bd9boYF9z5zEQG2fTapZy78Yg2ugmYMBsJGHFMy254UL2UI0aWy8WRwSH8RM4YQGKGxo=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39860400002)(136003)(366004)(376002)(396003)(54906003)(6666004)(26005)(31686004)(110136005)(53546011)(6486002)(16526019)(316002)(31696002)(8676002)(86362001)(186003)(4326008)(956004)(2616005)(66946007)(66476007)(5660300002)(66556008)(38100700001)(2906002)(16576012)(8936002)(36756003)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: b3f42fc8-3f6b-49c8-ee31-08d8f5467a9b
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2021 19:43:52.9468
 (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: RUsx0PUKubj8xWxev1iZX6eth3cgYbdNJY9UYbSqGte7wlWoAaVfrMkJUNH+39veDF0eGl7rnuFBgFHLrkIaGjhc0++sTlz1GDC5YIKWR88=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5122
X-OriginatorOrg: citrix.com

On 01/04/2021 09:44, Roger Pau Monn=C3=A9 wrote:
> On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
>> On 01.04.2021 03:06, Roman Shaposhnik wrote:
>>> And the obvious next question: is my EVE usecase esoteric enough that
>>> I should just go ahead and do a custom GRUB patch or is there a more
>>> general interest in this?
>> Not sure if it ought to be a grub patch - the issue could as well
>> be dealt with in Xen, by concatenating modules to form a monolithic
>> initrd.
> I would rather have it done in the loader than Xen, mostly because
> it's a Linux boot specific format, and hence I don't think Xen should
> have any knowledge about it.
>
> If it turns out to be impossible to implement on the loader side we
> should consider doing it in Xen, but that's not my first option.

Concatenating random things which may or may not be initrds is
absolutely not something Xen should do.=C2=A0 We don't have enough context =
to
do it safely/sensibly.

Honestly, I like the idea of supporting something like this generally in
grub.=C2=A0 Linux already commonly has initrd preparation prepending an
uncompressed microcode CPIO archive, and I can see a usability advantage
from maintaining the initrd fragments separately.

Looking at the grub manual, this behaviour of the `initrd` command isn't
even documented.=C2=A0 Perhaps that should be fixed first, and then maybe
`module2_multi` added too?

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 01 21:07:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 21:07:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104746.200625 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS4Wy-0001OV-4H; Thu, 01 Apr 2021 21:07:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104746.200625; Thu, 01 Apr 2021 21: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 1lS4Wy-0001OO-11; Thu, 01 Apr 2021 21:07:08 +0000
Received: by outflank-mailman (input) for mailman id 104746;
 Thu, 01 Apr 2021 21:07: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 1lS4Wx-0001OD-IZ; Thu, 01 Apr 2021 21:07: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 1lS4Wx-0006ZZ-88; Thu, 01 Apr 2021 21:07: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 1lS4Ww-0000sd-VI; Thu, 01 Apr 2021 21:07:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lS4Ww-0003Vp-Uo; Thu, 01 Apr 2021 21:07: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=qusF9awHk26VGwGrc2yanEbfLHbxEZusDsZwlHtOd0w=; b=hdaeztjZTNgCB656+gSNKbi0YE
	uIVX6d5CrxNpA9ugp3jiqhUtFNzJQHCLFr5AfF36aiVXZkdad1ARKUJhw2V7syWTZUWPbx8Ll60F2
	G3Y4umlQizuQZZQIlhumK8D0Ihsk2zYJE4f+jraPP1hfWKvTr9vlasirzvtmShieLqX4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160648-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160648: 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=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 21:07:06 +0000

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

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                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7

Last test of basis   160645  2021-04-01 15:01:28 Z    0 days
Testing same since   160648  2021-04-01 18:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.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
   5c3c410bd2..0435784cc7  0435784cc75dcfef3b5f59c29deb1dbb84265ddb -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Apr 01 22:42:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 01 Apr 2021 22:42:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104753.200646 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS60j-0001Rn-9Y; Thu, 01 Apr 2021 22:41:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104753.200646; Thu, 01 Apr 2021 22:41: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 1lS60j-0001Rg-6R; Thu, 01 Apr 2021 22:41:57 +0000
Received: by outflank-mailman (input) for mailman id 104753;
 Thu, 01 Apr 2021 22:41: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 1lS60h-0001RY-Q3; Thu, 01 Apr 2021 22:41: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 1lS60h-00082p-G7; Thu, 01 Apr 2021 22:41: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 1lS60h-0005Je-5F; Thu, 01 Apr 2021 22:41:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lS60h-0003gW-4h; Thu, 01 Apr 2021 22:41: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=pvNAPrW7QEp9jkH7VC/vmnF7VGsz9dkudnCnq3Qetwk=; b=Ifs6Y9cRH8FmX/KR8yEwNz/i/a
	IKJu4rxRSpS098KL4GVXzt3YsmoeTRru+8fBpwgaFDETcG/5Uz7yohSDdfnCwzy4jazT0tpB3NyBR
	GXGHbtYQLNhfB1Zxca1UiY8o91hgladRPvo8fF0yi2jUSWs8RJlagI9pw0J3zlrqkkSU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160638-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160638: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 01 Apr 2021 22:41:55 +0000

flight 160638 xen-4.12-testing real [real]
flight 160653 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/160638/
http://logs.test-lab.xenproject.org/osstest/logs/160653/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160549 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160549 pass in 160638
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160549

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   44 days
Failing since        160128  2021-03-18 14:36:18 Z   14 days   16 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   12 days   14 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 00:43:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 00:43:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104764.200673 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lS7u5-00042k-Lk; Fri, 02 Apr 2021 00:43:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104764.200673; Fri, 02 Apr 2021 00:43: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 1lS7u5-00042d-Ia; Fri, 02 Apr 2021 00:43:13 +0000
Received: by outflank-mailman (input) for mailman id 104764;
 Fri, 02 Apr 2021 00:43: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 1lS7u3-00042T-HA; Fri, 02 Apr 2021 00:43: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 1lS7u3-0002BH-7W; Fri, 02 Apr 2021 00:43: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 1lS7u2-0002Cx-TC; Fri, 02 Apr 2021 00:43:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lS7u2-00020k-Sf; Fri, 02 Apr 2021 00: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=j612omWyOiNfrRFGPKmEoH4bodVc68VwDW7ml7KE0to=; b=d5696UQnH25tD1JXohzrfgTMdD
	0Jd8lAwS9u+1pw4plWs/SyRqtYOmpg8U2aZ6UpTFB7+ugvFE2Cx45ibEoXTmmuuLmA6bab+pTQt7c
	N/PE1U+oMCaQvQn8T1Z+yqJV497unhRl6w4RYRzy8b1mPxrJg3g8dyOwsScEL4cDCspo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160640-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160640: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-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-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2: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-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-vhd: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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: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
X-Osstest-Versions-This:
    linux=d19cc4bfbff1ae72c3505a00fb8ce0d3fa519e6c
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 00:43:10 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                d19cc4bfbff1ae72c3505a00fb8ce0d3fa519e6c
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  244 days
Failing since        152366  2020-08-01 20:49:34 Z  243 days  414 attempts
Testing same since   160625  2021-03-31 18:28:28 Z    1 days    2 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1311742 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 04:43:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 04:43:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104778.200700 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSBdf-0007iE-Fz; Fri, 02 Apr 2021 04:42:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104778.200700; Fri, 02 Apr 2021 04:42: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 1lSBdf-0007i4-82; Fri, 02 Apr 2021 04:42:31 +0000
Received: by outflank-mailman (input) for mailman id 104778;
 Fri, 02 Apr 2021 04:42: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 1lSBdd-0007ht-A0; Fri, 02 Apr 2021 04:42: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 1lSBdd-0005kC-4A; Fri, 02 Apr 2021 04:42: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 1lSBdc-0005Qm-T0; Fri, 02 Apr 2021 04:42:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSBdc-0005fe-SP; Fri, 02 Apr 2021 04: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>
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=tJk++8356KwP48sI6ZA/W3V/4IQCoS7FawzzhKK+gHQ=; b=s1K79wRKOzGIQYllMrDI7Yn/an
	z5ZNGMF2xtRwzR2Mfr08cxRrpVQF/cZo37T4NVM8nno9NyShMSan9lqOOTfz6BdyI/70MJ0uyCcsP
	A8YqKoX3wbMdkvQ8u6tTLL/9AZNaIHBpM1ix9CkbH+mlk+0Pxz6AP0wLj3CQuOwfmgM4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-i386-libvirt-xsm
Message-Id: <E1lSBdc-0005fe-SP@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 04:42:28 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-i386-libvirt-xsm
testid guest-start

Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160660/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-libvirt-xsm.guest-start.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-libvirt-xsm.guest-start --summary-out=tmp/160660.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-libvirt-xsm guest-start
Searching for failure / basis pass:
 160632 fail [host=albana0] / 160125 [host=pinot1] 160119 [host=albana1] 160113 [host=chardonnay0] 160104 [host=chardonnay0] 160097 [host=chardonnay1] 160091 [host=elbling1] 160082 [host=pinot0] 160079 ok.
Failure / basis pass flights: 160632 / 160079
(tree with no url: minios)
Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
Basis pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f8a81fc296535f73c48cf9563862e088cc71c57 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/libvirt.git#2c846fa6bcc11929c9fb857a22430fb9945654ad-2c846fa6bcc11929c9fb857a22430fb9945654ad https://gitlab.com/keycodemap/keycodemapdb.git#27acf0ef828bf719b2053ba398b195829413dbdd-27acf0ef828bf719b2053ba398b195829413dbdd git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\
 dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-62bad17dcae18f55cb3bdc19909543dfdf928a2b git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#6f8a81fc296535f73c48cf9563862e088cc71c57-6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ec\
 ef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#14b95b3b8546db201e7efd0636ae0e215fae98f3-90629587e16e2efdb61da77f25c25fba3c4a5fd7
Loaded 25205 nodes in revision graph
Searching for test results:
 160079 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f8a81fc296535f73c48cf9563862e088cc71c57 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160082 [host=pinot0]
 160088 []
 160091 [host=elbling1]
 160097 [host=chardonnay1]
 160104 [host=chardonnay0]
 160113 [host=chardonnay0]
 160119 [host=albana1]
 160125 [host=pinot1]
 160134 fail irrelevant
 160147 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160577 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f8a81fc296535f73c48cf9563862e088cc71c57 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160579 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160580 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160563 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160618 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160620 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160623 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160624 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160626 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160627 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5d1428d6c43942cfb40a909e4c30a5cbb81bda8f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160628 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160629 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160619 fail irrelevant
 160631 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160633 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f8a81fc296535f73c48cf9563862e088cc71c57 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160635 fail irrelevant
 160637 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2e8319d456724c3d8514d943dc4607e2f08e88a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160639 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ab5b8a3fb41d035ea320ce85593ba505ea5305bc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160642 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f3bdfc41866edf7c256e689deb9d091a950c8fca 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e31b3a5c34c6e5be7ef60773e607f189eaa15f3 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160643 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160644 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b50101833987b47e0740f1621de48637c468c3d1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160632 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160647 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160649 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160651 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160652 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160654 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160657 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160659 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160660 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160079 (pass), for basis pass
 Result found: flight 160632 (fail), for basis failure
 Repro found: flight 160633 (pass), for basis pass
 Repro found: flight 160649 (fail), for basis failure
 0 revisions at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 160647 (pass), for last pass
 Result found: flight 160652 (fail), for first failure
 Repro found: flight 160654 (pass), for last pass
 Repro found: flight 160657 (fail), for first failure
 Repro found: flight 160659 (pass), for last pass
 Repro found: flight 160660 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160660/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-libvirt-xsm.guest-start.{dot,ps,png,html,svg}.
----------------------------------------
160660: tolerable FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-i386-libvirt-xsm  14 guest-start             fail baseline untested


jobs:
 build-i386-libvirt                                           pass    
 test-amd64-i386-libvirt-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 Fri Apr 02 07:37:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 07:37:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104799.200757 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSEMJ-0005pr-Rh; Fri, 02 Apr 2021 07:36:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104799.200757; Fri, 02 Apr 2021 07:36: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 1lSEMJ-0005pk-Op; Fri, 02 Apr 2021 07:36:47 +0000
Received: by outflank-mailman (input) for mailman id 104799;
 Fri, 02 Apr 2021 07:36: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 1lSEMJ-0005pc-4q; Fri, 02 Apr 2021 07:36: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 1lSEMI-0000T4-Se; Fri, 02 Apr 2021 07:36: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 1lSEMI-0004TP-EX; Fri, 02 Apr 2021 07:36:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSEMI-0006yN-Dx; Fri, 02 Apr 2021 07: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=8xB5PhpdUZm/7D908c0RS9RpKsBhiYJWPXWRSIyOrBI=; b=wraGLAFi88j+bNhWtwP4H8zAKA
	Y9nQJe/O9vwpPXlGiMkbwR7ZR+twTz2pkJTVxqHeAlo44MeN/VTOpjb8SAXL2FFbGUZKrSTE3nYCw
	eeAyXXLo7DreqVzvME/PHhU9US9LjjNSY2BeVXygCGA2mkQzATUtnHtbPwfjfkyZZCP0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160646-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160646: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-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-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-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-libvirt-xsm: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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
X-Osstest-Versions-That:
    xen=90629587e16e2efdb61da77f25c25fba3c4a5fd7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 07:36:46 +0000

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

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 160630
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160630
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160630
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160630
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160630
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160630
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160630
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160630
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160630
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160630
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160630
 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-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-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-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-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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
 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-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147
baseline version:
 xen                  90629587e16e2efdb61da77f25c25fba3c4a5fd7

Last test of basis   160630  2021-04-01 01:51:44 Z    1 days
Testing same since   160646  2021-04-01 15:07:43 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@citrix.com>
  Jan Beulich <jbeulich@suse.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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   90629587e1..b0976d5c04  b0976d5c0441378b6348f5bfedbf431055bd0147 -> master


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 10:21:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 10:21:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104829.200791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSGvP-0003qq-E6; Fri, 02 Apr 2021 10:21:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104829.200791; Fri, 02 Apr 2021 10:21: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 1lSGvP-0003qj-AI; Fri, 02 Apr 2021 10:21:11 +0000
Received: by outflank-mailman (input) for mailman id 104829;
 Fri, 02 Apr 2021 10:21:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fh9/=I7=verge.net.au=horms@srs-us1.protection.inumbo.net>)
 id 1lSGvN-0003qe-HW
 for xen-devel@lists.xenproject.org; Fri, 02 Apr 2021 10:21:09 +0000
Received: from kirsty.vergenet.net (unknown [202.4.237.240])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 73c10569-e52c-45ac-bf19-7d7f8e5753b4;
 Fri, 02 Apr 2021 10:21:08 +0000 (UTC)
Received: from madeliefje.horms.nl (tulip.horms.nl [83.161.246.101])
 by kirsty.vergenet.net (Postfix) with ESMTPA id 893C625BE8B;
 Fri,  2 Apr 2021 21:01:20 +1100 (AEDT)
Received: by madeliefje.horms.nl (Postfix, from userid 7100)
 id 9A2A53602; Fri,  2 Apr 2021 12:01: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: 73c10569-e52c-45ac-bf19-7d7f8e5753b4
Date: Fri, 2 Apr 2021 12:01:18 +0200
From: Simon Horman <horms@verge.net.au>
To: Raphael Ning <raphning@gmail.com>
Cc: kexec@lists.infradead.org, Julien Grall <julien@xen.org>,
	Hongyan Xia <hx242@xen.org>, xen-devel@lists.xenproject.org,
	Raphael Ning <raphning@amazon.com>
Subject: Re: [PATCH] kexec-xen: Use correct image type for Live Update
Message-ID: <20210402100118.GF18086@vergenet.net>
References: <20210323175923.7342-1-raphning@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210323175923.7342-1-raphning@gmail.com>
Organisation: Horms Solutions BV
User-Agent: Mutt/1.10.1 (2018-07-13)

On Tue, Mar 23, 2021 at 05:59:23PM +0000, Raphael Ning wrote:
> From: Raphael Ning <raphning@amazon.com>
> 
> Unlike xen_kexec_load(), xen_kexec_unload() and xen_kexec_status()
> fail to distinguish between normal kexec and Xen Live Update image
> types.
> 
> Fix that by introducing a new helper function that maps internal
> flags to KEXEC_TYPE_*, and using it throughout kexec-xen.c.
> 
> Signed-off-by: Raphael Ning <raphning@amazon.com>

Thanks, applied.


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 10:54:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 10:54:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104835.200803 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSHRp-0006U0-4V; Fri, 02 Apr 2021 10:54:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104835.200803; Fri, 02 Apr 2021 10: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 1lSHRp-0006Tt-19; Fri, 02 Apr 2021 10:54:41 +0000
Received: by outflank-mailman (input) for mailman id 104835;
 Fri, 02 Apr 2021 10:54:39 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lSHRn-0006Tl-NE; Fri, 02 Apr 2021 10:54:39 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lSHRn-0004Hb-EK; Fri, 02 Apr 2021 10:54: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 1lSHRn-0000eK-37; Fri, 02 Apr 2021 10:54:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSHRn-0000ff-2Y; Fri, 02 Apr 2021 10:54: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=fHmKJHJKYxZnUmjD6w31Zk6G1nNCnYH7ywHQUZ1hYzs=; b=BgwC24BIxJPAmeR3xKxpMVxMx6
	a58lXM8CybI/EDzoxf+idEnEa+mz30PNlkTR3cdr8NQjJfKQuev8EipjEFMs7bqcagkMhLyg/rQdB
	3ojpEJ4b7GludyO5mrBwkk3Iw8WZIxHXlN62I02RGS3Awdn7zlnDHYXpGQytJgm4gdeg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160650-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160650: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=00084bab87c43be20638de7f191d1a1faed134cc
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 10:54:39 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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
 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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                00084bab87c43be20638de7f191d1a1faed134cc
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  225 days
Failing since        152659  2020-08-21 14:07:39 Z  223 days  422 attempts
Testing same since   160650  2021-04-01 18:40:40 Z    0 days    1 attempts

------------------------------------------------------------
469 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 139464 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 11:37:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 11:37:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104844.200824 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSI6t-0001dK-Hj; Fri, 02 Apr 2021 11:37:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104844.200824; Fri, 02 Apr 2021 11: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 1lSI6t-0001dD-Dl; Fri, 02 Apr 2021 11:37:07 +0000
Received: by outflank-mailman (input) for mailman id 104844;
 Fri, 02 Apr 2021 11:37: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 1lSI6s-0001d5-6B; Fri, 02 Apr 2021 11:37: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 1lSI6r-0004x4-UM; Fri, 02 Apr 2021 11:37: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 1lSI6r-0002fM-Nn; Fri, 02 Apr 2021 11:37:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSI6r-0008Lg-ND; Fri, 02 Apr 2021 11:37: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=VhKPHJVGp/BmuK1ZkvQk1wEdqg8lH487cHQvIkL5A4o=; b=qQp8IdU1ORTwOTddc8B2xhq2Ae
	pjFuaO31LIKnxoir5N0XFS91gEPOp71iPLfUTMnsssN/15u5wmr+d7jWYOuPxQq8xXSmFtVkdhC/z
	fpiuhjcukC0aAr9FFiiqRO5FlrCmiNA9aP3Ktb+YjwKgY9bVh78pRsLGP4ERAQi30dek=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160661-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160661: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=2fc3a704e7083afab0537cf0777521afa9cc1db6
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 11:37:05 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              2fc3a704e7083afab0537cf0777521afa9cc1db6
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  266 days
Failing since        151818  2020-07-11 04:18:52 Z  265 days  258 attempts
Testing same since   160661  2021-04-02 04:19:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 12:53:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 12:53:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104863.200839 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSJIL-00007C-IK; Fri, 02 Apr 2021 12:53:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104863.200839; Fri, 02 Apr 2021 12:53: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 1lSJIL-000073-EM; Fri, 02 Apr 2021 12:53:01 +0000
Received: by outflank-mailman (input) for mailman id 104863;
 Fri, 02 Apr 2021 12:52: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 1lSJIJ-00006v-Kk; Fri, 02 Apr 2021 12:52: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 1lSJIJ-0006B5-Bu; Fri, 02 Apr 2021 12:52: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 1lSJIJ-00064d-34; Fri, 02 Apr 2021 12:52:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSJIJ-0003XY-2e; Fri, 02 Apr 2021 12:52: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=lyw8dqIWc1dXiZUuFs+af52G0kpRC3Gc5/fidQGG9aI=; b=qnBxOssgwc/7p7++WynYigxMdx
	Z0pznoxokR3znAhxjDoCGFUENh1b3dGRHcbrcaCJpJNZ8M4hdLez078uaKF1uE5llxK1UKeHoWCuH
	f4ksiXsJfk5BGZ+75m+93zaj5yb49wyscfIDpaaK2dLM9zV8AoGgGZ5tOEnRUEdFEGLk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160656-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 160656: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=8c8922988544d31e8c87dd595f209828edcee962
X-Osstest-Versions-That:
    ovmf=62bad17dcae18f55cb3bdc19909543dfdf928a2b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 12:52:59 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 8c8922988544d31e8c87dd595f209828edcee962
baseline version:
 ovmf                 62bad17dcae18f55cb3bdc19909543dfdf928a2b

Last test of basis   160578  2021-03-31 06:11:04 Z    2 days
Testing same since   160656  2021-04-01 23:40:07 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   62bad17dca..8c89229885  8c8922988544d31e8c87dd595f209828edcee962 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 13:56:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 13:56:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104873.200859 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSKHb-0005GV-AP; Fri, 02 Apr 2021 13:56:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104873.200859; Fri, 02 Apr 2021 13:56: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 1lSKHb-0005GO-7X; Fri, 02 Apr 2021 13:56:19 +0000
Received: by outflank-mailman (input) for mailman id 104873;
 Fri, 02 Apr 2021 13:56: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 1lSKHa-0005GG-OD; Fri, 02 Apr 2021 13:56: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 1lSKHa-0007AO-IA; Fri, 02 Apr 2021 13:56: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 1lSKHa-0000k2-89; Fri, 02 Apr 2021 13:56:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSKHa-000633-7e; Fri, 02 Apr 2021 13:56:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=wXfvjr+kx+UKflE5VNxq75Yc++Flb4EJI6lAeJCmwv8=; b=KiURYaydvzO4I9JMcN2M9ordcH
	Zi7o5e3UMItFU1N/CUBqHvYhu7TuTNsj/PQIWGS81JMu0OR7MrEmoTNEIvL0zWB4DnL5jm0mWCi4R
	Ew7CICeSFgoCeWwp86T5fGhCPbEw5NTsYe3gF/bF9oa6a8DjANHKkigHyfJq0IokljDo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160655-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160655: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl:debian-install:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 13:56:18 +0000

flight 160655 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160655/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt-raw    <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-vhd         <job status>                 broken
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-vhd       5 host-install(5)          broken pass in 160638
 test-armhf-armhf-libvirt-raw  5 host-install(5)          broken pass in 160638
 test-armhf-armhf-xl-credit1   5 host-install(5)          broken pass in 160638
 test-amd64-amd64-xl-qcow2 18 guest-saverestore.2 fail in 160638 pass in 160655
 test-armhf-armhf-xl          12 debian-install             fail pass in 160638
 test-armhf-armhf-libvirt     18 guest-start/debian.repeat  fail pass in 160638

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160638 like 159418
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 160638 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   44 days
Failing since        160128  2021-03-18 14:36:18 Z   14 days   17 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   13 days   15 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          fail    
 test-amd64-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-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                                  broken  
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     fail    
 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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 broken  
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      broken  


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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-libvirt-raw broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-vhd broken
broken-step test-armhf-armhf-xl-vhd host-install(5)
broken-step test-armhf-armhf-libvirt-raw host-install(5)
broken-step test-armhf-armhf-xl-credit1 host-install(5)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 15:21:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 15:21:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104889.200893 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSLbk-0004TO-2z; Fri, 02 Apr 2021 15:21:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104889.200893; Fri, 02 Apr 2021 15:21:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSLbj-0004TC-US; Fri, 02 Apr 2021 15:21:11 +0000
Received: by outflank-mailman (input) for mailman id 104889;
 Fri, 02 Apr 2021 15:21: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 1lSLbi-0004Sg-Ki
 for xen-devel@lists.xenproject.org; Fri, 02 Apr 2021 15:21: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 1lSLbh-00009b-4a; Fri, 02 Apr 2021 15:21:09 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lSLbg-00050B-Lx; Fri, 02 Apr 2021 15:21: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=Message-Id:Date:Subject:Cc:To:From;
	bh=te5kaNXq8bksPb82UmeoTorpvM3eU7KlnC/ugaiKlh0=; b=i5VnM/fHHX4xETLMqpi8WbN7dy
	w4RtyLji/syt7qaC2kl3m9Ao9qoVrd8kfXS6KEQNVAj0W1DCzzxBqyOz2gzaGdJf1ESA7TxhswHjW
	CGVQ8JKhNMZBUoQ0/ZeT0HnVFqftOrR6iukqSDh9PO47Z8vQKOWO9FuO/kYg1a9Ymmnk=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 0/2] xen/arm: Couple of bug fixes when decompressing kernels
Date: Fri,  2 Apr 2021 16:21:03 +0100
Message-Id: <20210402152105.29387-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

Hi all,

The main goal of this series is to address the bug report [1]. It is not
possible

While testing the series, I also noticed that it is not possible to
re-use the same compressed kernel for multiple domains as the module
will be overwritten during the first decompression.

I am still a bit undecided how to fix it. We can either create a new
module for the uncompressed kernel and link with the compressed kernel.
Or we could decompress everytime.

One inconvenience to kernel to only decompress once is we have to keep
it until all the domains have booted. This may means a lot of memory to be
wasted just for keeping the uncompressed kernel (one my setup, it takes
~3 times more space).

Any opinions on how to approach it?

Cheers,

[1] https://lists.xenproject.org/archives/html/xen-users/2021-02/msg00027.html

Julien Grall (2):
  xen/arm: kernel: Propagate the error if we fail to decompress the
    kernel
  xen/gunzip: Allow perform_gunzip() to be called multiple times

 xen/arch/arm/kernel.c | 8 +++++++-
 xen/common/gunzip.c   | 5 +++++
 xen/common/inflate.c  | 6 ++++++
 3 files changed, 18 insertions(+), 1 deletion(-)

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 02 15:21:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 15:21:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104890.200910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSLbl-0004Uz-GG; Fri, 02 Apr 2021 15:21:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104890.200910; Fri, 02 Apr 2021 15:21: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 1lSLbl-0004Us-Cn; Fri, 02 Apr 2021 15:21:13 +0000
Received: by outflank-mailman (input) for mailman id 104890;
 Fri, 02 Apr 2021 15:21: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 1lSLbk-0004Ui-Nm
 for xen-devel@lists.xenproject.org; Fri, 02 Apr 2021 15:21: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 1lSLbj-00009o-PF; Fri, 02 Apr 2021 15:21:11 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lSLbj-00050B-EP; Fri, 02 Apr 2021 15:21: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=jQfOL7sF0Ax2+OqBBQai2IFHdDIfjtAQ7KE5lYnqt0Y=; b=gv+DsuaLbFWMDN4dwFQLxy6t+
	yuFXCq5ZQAMJkrwLTwuX0Mz/MJBvTbulaBmBt1Q993VWbR+PTA8mZvm0SPlKUUtkOsmBexrEYRcY1
	V4KrLOu6zWgicNymonlWP8bQMNSCMfRcu2B0/nM/rq54VdUONKLKDjvhiUF7BpzaFui2k=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	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>
Subject: [PATCH 2/2] xen/gunzip: Allow perform_gunzip() to be called multiple times
Date: Fri,  2 Apr 2021 16:21:05 +0100
Message-Id: <20210402152105.29387-3-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210402152105.29387-1-julien@xen.org>
References: <20210402152105.29387-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Currently perform_gunzip() can only be called once because the
the internal state (e.g allocate) is not fully re-initialized.

This works fine if you are only booting dom0. But this will break when
booting multiple using the dom0less that uses compressed kernel images.

This can be resolved by re-initializing bytes_out, malloc_ptr,
malloc_count every time perform_gunzip() is called.

Note the latter is only re-initialized for hardening purpose as there is
no guarantee that every malloc() are followed by free() (It should in
theory!).

Take the opportunity to check the return of alloc_heap_pages() to return
an error rather than dereferencing a NULL pointer later on failure.

Reported-by: Charles Chiou <cchiou@ambarella.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/common/gunzip.c  | 5 +++++
 xen/common/inflate.c | 6 ++++++
 2 files changed, 11 insertions(+)

diff --git a/xen/common/gunzip.c b/xen/common/gunzip.c
index db4efcd34b77..425d64e904d8 100644
--- a/xen/common/gunzip.c
+++ b/xen/common/gunzip.c
@@ -114,11 +114,16 @@ __init int perform_gunzip(char *output, char *image, unsigned long image_len)
     window = (unsigned char *)output;
 
     free_mem_ptr = (unsigned long)alloc_xenheap_pages(HEAPORDER, 0);
+    if ( !free_mem_ptr )
+        return -ENOMEM;
+
     free_mem_end_ptr = free_mem_ptr + (PAGE_SIZE << HEAPORDER);
+    init_allocator();
 
     inbuf = (unsigned char *)image;
     insize = image_len;
     inptr = 0;
+    bytes_out = 0;
 
     makecrc();
 
diff --git a/xen/common/inflate.c b/xen/common/inflate.c
index f99c985d6135..d8c28a3e9593 100644
--- a/xen/common/inflate.c
+++ b/xen/common/inflate.c
@@ -238,6 +238,12 @@ STATIC const ush mask_bits[] = {
 static unsigned long INITDATA malloc_ptr;
 static int INITDATA malloc_count;
 
+static void init_allocator(void)
+{
+    malloc_ptr = free_mem_ptr;
+    malloc_count = 0;
+}
+
 static void *INIT malloc(int size)
 {
     void *p;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 02 15:21:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 15:21:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104888.200887 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSLbj-0004Ss-QA; Fri, 02 Apr 2021 15:21:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104888.200887; Fri, 02 Apr 2021 15:21: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 1lSLbj-0004Sl-Ml; Fri, 02 Apr 2021 15:21:11 +0000
Received: by outflank-mailman (input) for mailman id 104888;
 Fri, 02 Apr 2021 15:21: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 1lSLbi-0004Sb-Hy
 for xen-devel@lists.xenproject.org; Fri, 02 Apr 2021 15:21: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 1lSLbi-00009f-3w; Fri, 02 Apr 2021 15:21:10 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lSLbh-00050B-Qp; Fri, 02 Apr 2021 15: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=8l2SWhRF4hXjT/n8ib3kpA3rAz6cYAQdMNmVVhQCfJc=; b=sZgkbqyKP4h660FFtsmJw+U7d
	uaIGvr6cJxJHac3CJ7UWPOxUrkgFZx9cJLjwUMP05gOTM4RpUSF92RdZB2tKqWCZev1SdMqOuhUj5
	ugMJhLkS52TzXfkeCIviCGmyFyEb/7PQ0l93y2sgniwl8KgThtDnO6trrZGAwSlv/VIKU=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH 1/2] xen/arm: kernel: Propagate the error if we fail to decompress the kernel
Date: Fri,  2 Apr 2021 16:21:04 +0100
Message-Id: <20210402152105.29387-2-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210402152105.29387-1-julien@xen.org>
References: <20210402152105.29387-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Currently, we are ignoring any error from perform_gunzip() and replacing
the compressed kernel with the "uncompressed" kernel.

If there is a gzip failure, then it means that the output buffer may
contain garbagge. So it can result to various sort of behavior that may
be difficult to root cause.

In case of failure, free the output buffer and propagate the error.
We also need to adjust the return check for kernel_compress() as
perform_gunzip() may return a positive value.

Take the opportunity to adjust the code style for the check.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/arch/arm/kernel.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c
index ab78689ed2a6..f6b60ab77355 100644
--- a/xen/arch/arm/kernel.c
+++ b/xen/arch/arm/kernel.c
@@ -292,6 +292,12 @@ static __init int kernel_decompress(struct bootmodule *mod)
     iounmap(input);
     vunmap(output);
 
+    if ( rc )
+    {
+        free_domheap_pages(pages);
+        return rc;
+    }
+
     mod->start = page_to_maddr(pages);
     mod->size = output_size;
 
@@ -503,7 +509,7 @@ int __init kernel_probe(struct kernel_info *info,
 
     /* if it is a gzip'ed image, 32bit or 64bit, uncompress it */
     rc = kernel_decompress(mod);
-    if (rc < 0 && rc != -EINVAL)
+    if ( rc && rc != -EINVAL )
         return rc;
 
 #ifdef CONFIG_ARM_64
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 02 15:51:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 15:51:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104905.200925 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSM4l-0007GX-Tl; Fri, 02 Apr 2021 15:51:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104905.200925; Fri, 02 Apr 2021 15: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 1lSM4l-0007GQ-Qc; Fri, 02 Apr 2021 15:51:11 +0000
Received: by outflank-mailman (input) for mailman id 104905;
 Fri, 02 Apr 2021 15:51:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lSM4k-0007GL-Rs
 for xen-devel@lists.xenproject.org; Fri, 02 Apr 2021 15:51: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 1lSM4k-0000dr-G1; Fri, 02 Apr 2021 15:51:10 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lSM4k-0007En-4r; Fri, 02 Apr 2021 15: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Message-Id:Date:Subject:Cc:To:From;
	bh=96ZKz1XmVWDUX9O90srYP7TKBuT4+NLELAxUsP7ryl8=; b=R4hgIoOsFE7yXyA2OwciAkNIAM
	JOsokbamE5Wb/jU0E4TABqEXBTjR3KJMCyLKaSuKiOUaZlExQin/Uf04QYirrtLJbNs9xv3ohN1mv
	j9fF0TE7/Cz4Lg2kYmRaPBXDiJY2zMj8SlRnE3SoZM4qyefXe14SJ8Wcnaboog22DjBY=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2] xen/iommu: smmu: Silence clang in arm_smmu_device_dt_probe()
Date: Fri,  2 Apr 2021 16:51:06 +0100
Message-Id: <20210402155106.15486-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

Clang 11 will throw the following error:

smmu.c:2284:18: error: cast to smaller integer type 'enum arm_smmu_arch_version' from 'const void *' [-Werror,-Wvoid-pointer-to-enum-cast]
        smmu->version = (enum arm_smmu_arch_version)of_id->data;
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The error can be prevented by initially casting to (uintptr_t) and then
enum.

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

---

Changes in v2:
    - Cast to (uintptr_t) rather than introduce separate pointer
    (requested by Andrew).

Only build tested
---
 xen/drivers/passthrough/arm/smmu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index 20ac672e91b6..fab7be8b48bb 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -2382,7 +2382,7 @@ static int arm_smmu_device_dt_probe(struct platform_device *pdev)
 	smmu->dev = dev;
 
 	of_id = of_match_node(arm_smmu_of_match, dev->of_node);
-	smmu->version = (enum arm_smmu_arch_version)of_id->data;
+	smmu->version = (enum arm_smmu_arch_version)(uintptr_t)of_id->data;
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	smmu->base = devm_ioremap_resource(dev, res);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 02 16:12:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 16:12:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104911.200941 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSMP7-0001EX-NY; Fri, 02 Apr 2021 16:12:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104911.200941; Fri, 02 Apr 2021 16: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 1lSMP7-0001EQ-KH; Fri, 02 Apr 2021 16:12:13 +0000
Received: by outflank-mailman (input) for mailman id 104911;
 Fri, 02 Apr 2021 16:12: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 1lSMP6-0001EH-2v; Fri, 02 Apr 2021 16:12: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 1lSMP5-0001Y1-NQ; Fri, 02 Apr 2021 16:12: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 1lSMP5-0006Hg-Cv; Fri, 02 Apr 2021 16:12:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSMP5-0005Hc-CR; Fri, 02 Apr 2021 16: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=JRsA7CEVOFkO+dsUkLWfUnIIxcAxAGtmwio7aTcW1OQ=; b=cJkzlL4J0NGFV6zoIciaopvj8D
	zR/poBsv7wyfCyw174GOpiL9oX1GjO0/kVsnGOBn3vwXeXJtt1VDUozszPUHuCO3PzpDoAFZXSYwZ
	bVOiUbIVFu77j8hRG92qRPSwH0fBZwHSgkM4PH/wtBKOJxV04fM36iGFB1eNBkMspG0M=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160658-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160658: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:<job status>:broken:regression
    linux-linus:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    linux-linus:test-armhf-armhf-examine:host-install:broken:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-armhf-armhf-libvirt:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:host-install(5):broken:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-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-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2: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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=1678e493d530e7977cce34e59a86bb86f3c5631e
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 16:12:11 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken
 test-armhf-armhf-libvirt-raw    <job status>                 broken
 test-armhf-armhf-xl             <job status>                 broken
 test-armhf-armhf-xl-arndale     <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-credit2     <job status>                 broken
 test-armhf-armhf-xl-multivcpu    <job status>                 broken
 test-armhf-armhf-xl-rtds        <job status>                 broken
 test-armhf-armhf-xl-vhd         <job status>                 broken
 test-armhf-armhf-examine      5 host-install           broken REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt      5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-libvirt-raw  5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl-rtds      5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl-credit2   5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl-vhd       5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl           5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl-arndale   5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl-multivcpu  5 host-install(5)      broken blocked in 152332
 test-armhf-armhf-xl-credit1   5 host-install(5)       broken blocked in 152332
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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          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-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-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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 linux                1678e493d530e7977cce34e59a86bb86f3c5631e
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  244 days
Failing since        152366  2020-08-01 20:49:34 Z  243 days  415 attempts
Testing same since   160658  2021-04-02 01:11:10 Z    0 days    1 attempts

------------------------------------------------------------
5283 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                                          broken  
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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                                  broken  
 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                                  broken  
 test-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     fail    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     broken  
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                broken  
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         fail    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 broken  
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     broken  
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-armhf-armhf-xl-vhd                                      broken  


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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-libvirt broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-vhd broken
broken-step test-armhf-armhf-libvirt host-install(5)
broken-step test-armhf-armhf-libvirt-raw host-install(5)
broken-step test-armhf-armhf-xl-rtds host-install(5)
broken-step test-armhf-armhf-xl-credit2 host-install(5)
broken-step test-armhf-armhf-xl-vhd host-install(5)
broken-step test-armhf-armhf-xl host-install(5)
broken-step test-armhf-armhf-xl-arndale host-install(5)
broken-step test-armhf-armhf-xl-multivcpu host-install(5)
broken-step test-armhf-armhf-examine host-install
broken-step test-armhf-armhf-xl-credit1 host-install(5)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Fri Apr 02 21:18:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 02 Apr 2021 21:18:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.104992.201008 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSRAh-0001QA-0m; Fri, 02 Apr 2021 21:17:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 104992.201008; Fri, 02 Apr 2021 21: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 1lSRAg-0001Q3-Ty; Fri, 02 Apr 2021 21:17:38 +0000
Received: by outflank-mailman (input) for mailman id 104992;
 Fri, 02 Apr 2021 21:17: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 1lSRAf-0001Pv-O9; Fri, 02 Apr 2021 21:17: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 1lSRAf-0006fD-Gy; Fri, 02 Apr 2021 21:17: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 1lSRAf-0004n2-3M; Fri, 02 Apr 2021 21:17:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSRAf-0004a0-2s; Fri, 02 Apr 2021 21:17: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=g6s8RGwPsuKMFnc08nsXkAcVpCtR1SXQEApPEufzGFE=; b=XoTBuNa0hXJGI2ditxXwAJrmfF
	emblDLeWNif59JbzDlAkiTELCri3AoLLZSO33dbKcWYvsJNWJktXa0ZbKFV4B2TBiSLSdGC/3LqE3
	qRIDJcoMwdQKjo5i/2eLosYOVNuxeVTnOw7OrqifWxatfKxUHddtzmwEgHNn18qNwtJM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160665-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160665: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-libvirt:host-install(5):broken:regression
    xen-unstable:test-arm64-arm64-xl-seattle:xen-boot:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:regression
    xen-unstable:test-armhf-armhf-examine:reboot:fail:regression
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:regression
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-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-libvirt-xsm: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-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 02 Apr 2021 21:17:37 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken
 test-armhf-armhf-libvirt      5 host-install(5)        broken REGR. vs. 160646
 test-arm64-arm64-xl-seattle   8 xen-boot                 fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale   8 xen-boot                 fail REGR. vs. 160646
 test-armhf-armhf-xl-vhd       8 xen-boot                 fail REGR. vs. 160646
 test-armhf-armhf-examine      8 reboot                   fail REGR. vs. 160646
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 160646
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-credit1  14 guest-start              fail REGR. vs. 160646

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160646

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

version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    1 days
Testing same since   160665  2021-04-02 07:40:09 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                     broken  
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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

broken-job test-armhf-armhf-libvirt broken
broken-step test-armhf-armhf-libvirt host-install(5)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 00:49:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 00:49:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105009.201041 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSUTq-0002vI-Ao; Sat, 03 Apr 2021 00:49:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105009.201041; Sat, 03 Apr 2021 00:49: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 1lSUTq-0002vB-6G; Sat, 03 Apr 2021 00:49:38 +0000
Received: by outflank-mailman (input) for mailman id 105009;
 Sat, 03 Apr 2021 00:49: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 1lSUTo-0002v3-6n; Sat, 03 Apr 2021 00:49: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 1lSUTn-0002Co-Oj; Sat, 03 Apr 2021 00:49: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 1lSUTn-0008EL-F1; Sat, 03 Apr 2021 00:49:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSUTn-0001GA-EW; Sat, 03 Apr 2021 00:49: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=ul9LNMX8nqzR2ehAV0f5ci26bEj3GVmzMLKiRplabpQ=; b=zUEKF1yPzY6GmmhoF+K6rMRM3D
	8tac7/ma7NcST6RnqutVDmqK+Unju6CRhLtfG+dvu7HmTSckYhtKVBQpjPVeBQBG1R1+Wa3pZ0D/G
	64nQUgDKUbtoJ64XckqqdcJvgvoARrY8Qzq+nk3VvPFQd7fBPs29dceIeO5etEKxefN8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160669-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160669: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    qemu-mainline:test-armhf-armhf-libvirt:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-multivcpu:guest-start/debian.repeat:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-xl:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:host-install(5):broken:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=415fa2fe91e2a49fe8d56d6aacc8f8db82c74775
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 00:49:35 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken
 test-armhf-armhf-libvirt-raw    <job status>                 broken
 test-armhf-armhf-xl             <job status>                 broken
 test-armhf-armhf-xl-arndale     <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-multivcpu    <job status>                 broken
 test-armhf-armhf-xl-vhd         <job status>                 broken
 test-armhf-armhf-xl-cubietruck    <job status>                 broken
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-multivcpu 22 guest-start/debian.repeat fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl           5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-vhd       5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-credit1   5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-arndale   5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-libvirt      5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-libvirt-raw  5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-cubietruck  5 host-install(5)     broken blocked in 152631
 test-armhf-armhf-xl-multivcpu  5 host-install(5)      broken blocked in 152631
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                415fa2fe91e2a49fe8d56d6aacc8f8db82c74775
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  225 days
Failing since        152659  2020-08-21 14:07:39 Z  224 days  423 attempts
Testing same since   160669  2021-04-02 10:56:34 Z    0 days    1 attempts

------------------------------------------------------------
471 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                                          broken  
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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                                  broken  
 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-armhf-armhf-xl-cubietruck                               broken  
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     broken  
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                broken  
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 broken  
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-armhf-armhf-xl-vhd                                      broken  


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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-libvirt broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-vhd broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-step test-armhf-armhf-xl host-install(5)
broken-step test-armhf-armhf-xl-vhd host-install(5)
broken-step test-armhf-armhf-xl-credit1 host-install(5)
broken-step test-armhf-armhf-xl-arndale host-install(5)
broken-step test-armhf-armhf-libvirt host-install(5)
broken-step test-armhf-armhf-libvirt-raw host-install(5)
broken-step test-armhf-armhf-xl-cubietruck host-install(5)
broken-step test-armhf-armhf-xl-multivcpu host-install(5)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 04:21:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 04:21:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105023.201074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSXmp-0001vW-De; Sat, 03 Apr 2021 04:21:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105023.201074; Sat, 03 Apr 2021 04:21: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 1lSXmp-0001vO-85; Sat, 03 Apr 2021 04:21:27 +0000
Received: by outflank-mailman (input) for mailman id 105023;
 Sat, 03 Apr 2021 04:21: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 1lSXmn-0001vG-VZ; Sat, 03 Apr 2021 04:21: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 1lSXmn-0003Af-Ku; Sat, 03 Apr 2021 04:21: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 1lSXmn-0002Rb-CF; Sat, 03 Apr 2021 04:21:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSXmn-0006RZ-Bi; Sat, 03 Apr 2021 04:21:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=IIbu19qVM/+CbYss0vn1YZuQ49QdA+kLbGJTVsQdweo=; b=2tc/yjcSu4oGtSmwr4uf34o2ko
	Yzr73XTQYeexz7Hcc09lt95N92v4oUKVC9yelkLQGfHDgoZ1ad2ZHTqidiKszHvroMl1KQcN0zH30
	teXFox3OnMD0kWGpjta2tP0TeJxNIRt1fzg8obc9qmMEt3d5wtBi2wvcnICt58KJY0yc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160672-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160672: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl:debian-install:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 04:21:25 +0000

flight 160672 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160672/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken
 build-armhf                   4 host-install(4)        broken REGR. vs. 159418
 test-armhf-armhf-xl-credit1     <job status>                 broken  in 160655
 test-armhf-armhf-libvirt-raw    <job status>                 broken  in 160655
 test-armhf-armhf-xl-vhd         <job status>                 broken  in 160655
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160655 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-vhd      5 host-install(5) broken in 160655 pass in 160638
 test-armhf-armhf-libvirt-raw 5 host-install(5) broken in 160655 pass in 160638
 test-armhf-armhf-xl-credit1  5 host-install(5) broken in 160655 pass in 160638
 test-armhf-armhf-xl          12 debian-install   fail in 160655 pass in 160638
 test-armhf-armhf-libvirt 18 guest-start/debian.repeat fail in 160655 pass in 160638
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160655

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-cubietruck  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160638 like 159418
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 160655 like 159418
 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 160655 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-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-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   45 days
Failing since        160128  2021-03-18 14:36:18 Z   15 days   18 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   14 days   16 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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                                                  broken  
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          blocked 
 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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          blocked 
 test-amd64-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-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                                  blocked 
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  blocked 
 test-armhf-armhf-xl-cubietruck                               blocked 
 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-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     blocked 
 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                                blocked 
 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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     blocked 
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      blocked 


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

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

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

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

broken-job build-armhf broken
broken-step build-armhf host-install(4)
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl-vhd broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 06:34:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 06:34:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105034.201107 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSZre-0004vv-Cn; Sat, 03 Apr 2021 06:34:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105034.201107; Sat, 03 Apr 2021 06: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 1lSZre-0004vo-9U; Sat, 03 Apr 2021 06:34:34 +0000
Received: by outflank-mailman (input) for mailman id 105034;
 Sat, 03 Apr 2021 06:34: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 1lSZrd-0004vg-Pj; Sat, 03 Apr 2021 06:34: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 1lSZrd-0005ea-Ho; Sat, 03 Apr 2021 06:34: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 1lSZrd-0000G1-B2; Sat, 03 Apr 2021 06:34:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSZrd-0003vI-AT; Sat, 03 Apr 2021 06:34: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:Message-Id:Subject:To;
	bh=UvkN3pl99g1uachxWczFoE10spa+CYfiH7MpvOpIqG4=; b=DrFyXQJRsU3l/KQAcjzOsw4gl2
	l4eSTC0PfCSDWU4IbZdVHhNHT4GOpIxArhojPoMnxjZj36F377I+wxql6N0RfFMZ4ELg+v9NtQPhK
	x27YZSTdRB9W2Wy0NxEipCcEysCmL+Vo+CIsyiUPFemMgmVdBfs0BLmDQXJk3o6XZL50=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-i386-freebsd10-amd64
Message-Id: <E1lSZrd-0003vI-AT@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 06:34:33 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-i386-freebsd10-amd64
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160694/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-freebsd10-amd64.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-freebsd10-amd64.guest-saverestore --summary-out=tmp/160694.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-freebsd10-amd64 guest-saverestore
Searching for failure / basis pass:
 160650 fail [host=fiano0] / 160125 [host=albana1] 160119 [host=huxelrebe1] 160113 [host=elbling0] 160104 [host=chardonnay0] 160097 [host=albana0] 160091 [host=chardonnay1] 160088 [host=albana1] 160082 [host=pinot0] 160079 [host=fiano1] 160070 [host=pinot1] 160066 ok.
Failure / basis pass flights: 160650 / 160066
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 00084bab87c43be20638de7f191d1a1faed134cc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 3f8d1885e48e4d72eab0688f604de62e0aea7a38 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 9dc46386d89d83c73c41c2b19be83a73957c4393
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-62bad17dcae18f55cb3bdc19909543dfdf928a2b git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#3f8d1885e48e4d72eab0688f604de62e0aea7a38-00084bab87c43be20638de7f191d1a1faed134cc git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#9dc46386d89d83c73c41c2b19be83a73957c4393-90629587e16e2efdb61da77f25c25fba3c4a5fd7
Loaded 44459 nodes in revision graph
Searching for test results:
 160048 []
 160050 []
 160057 []
 160062 []
 160064 []
 160066 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 3f8d1885e48e4d72eab0688f604de62e0aea7a38 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 9dc46386d89d83c73c41c2b19be83a73957c4393
 160070 [host=pinot1]
 160079 [host=fiano1]
 160082 [host=pinot0]
 160088 [host=albana1]
 160091 [host=chardonnay1]
 160097 [host=albana0]
 160104 [host=chardonnay0]
 160113 [host=elbling0]
 160119 [host=huxelrebe1]
 160125 [host=albana1]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160662 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 3f8d1885e48e4d72eab0688f604de62e0aea7a38 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 9dc46386d89d83c73c41c2b19be83a73957c4393
 160663 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160664 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160666 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160667 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160650 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 00084bab87c43be20638de7f191d1a1faed134cc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160668 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160670 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 00084bab87c43be20638de7f191d1a1faed134cc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160671 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5e8892db93f3fb6a7221f2d47f3c952a7e489737 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160673 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9e7118023fda7c29016038e2292d4d14129b63da b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160674 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160675 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 773b0bc2838ede154c6de9d78401b91fafa91062 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 affc55e761ea4c96b9b2de582d813787a317aeda b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160677 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160678 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160679 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2e8319d456724c3d8514d943dc4607e2f08e88a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160680 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ee2e67da8f882fcdef2c49fcc58e9962aa695f5a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160682 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 81cbfd5088690c53541ffd0d74851c8ab055a829 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160683 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 283d845c9164f57f5dba020a4783bb290493802f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160684 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 445a5b4087567bf4d4ce76d394adf78d9d5c88a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160686 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160688 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160689 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160692 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160693 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160694 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160066 (pass), for basis pass
 Result found: flight 160650 (fail), for basis failure
 Repro found: flight 160662 (pass), for basis pass
 Repro found: flight 160670 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 160686 (pass), for last pass
 Result found: flight 160688 (fail), for first failure
 Repro found: flight 160689 (pass), for last pass
 Repro found: flight 160692 (fail), for first failure
 Repro found: flight 160693 (pass), for last pass
 Repro found: flight 160694 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160694/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-freebsd10-amd64.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
160694: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore    fail baseline untested


jobs:
 test-amd64-i386-freebsd10-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 Sat Apr 03 08:03:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 08:03:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105045.201125 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSbFW-0004im-Dw; Sat, 03 Apr 2021 08:03:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105045.201125; Sat, 03 Apr 2021 08: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 1lSbFW-0004if-AQ; Sat, 03 Apr 2021 08:03:18 +0000
Received: by outflank-mailman (input) for mailman id 105045;
 Sat, 03 Apr 2021 08:03: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 1lSbFV-0004iX-1x; Sat, 03 Apr 2021 08:03: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 1lSbFU-0007bN-RT; Sat, 03 Apr 2021 08:03: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 1lSbFU-0004T1-JO; Sat, 03 Apr 2021 08:03:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSbFU-0000FJ-GG; Sat, 03 Apr 2021 08:03: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=2704Jfrbg5X5ZtYdZpEICdfxA9IZS/faGhhEnkdaOoY=; b=mo53i6Z/jJNHJ5J+T092TQX7Wf
	VeVwgBIseFK5dDKbhN8M/orDDfhn9fsHCW263zi91OJcYc4RkX+PkSmHvU40TZVB9YShLobCbUFCT
	iRQzEoeNY/WOZW2piHJWOL3XYC7s32U0k5oaKJYBDZjXNSpRLp8gSCy0lkx+emtXB7SA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160676-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160676: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    linux-linus:build-armhf:<job status>:broken:regression
    linux-linus:build-armhf:host-install(4):broken:regression
    linux-linus:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    linux-linus:test-armhf-armhf-libvirt:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    linux-linus:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    linux-linus:test-armhf-armhf-examine:host-install:broken:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-localmigrate/x10:fail:heisenbug
    linux-linus:test-amd64-amd64-qemuu-freebsd11-amd64:guest-start/freebsd.repeat:fail:heisenbug
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:guest-start/debianhvm.repeat:fail:heisenbug
    linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    linux-linus:build-armhf-libvirt:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=1678e493d530e7977cce34e59a86bb86f3c5631e
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 08:03:16 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken
 build-armhf                   4 host-install(4)        broken REGR. vs. 152332
 test-armhf-armhf-xl-rtds        <job status>                 broken  in 160658
 test-armhf-armhf-xl-arndale     <job status>                 broken  in 160658
 test-armhf-armhf-xl-multivcpu    <job status>                 broken in 160658
 test-armhf-armhf-libvirt        <job status>                 broken  in 160658
 test-armhf-armhf-xl-credit2     <job status>                 broken  in 160658
 test-armhf-armhf-xl             <job status>                 broken  in 160658
 test-armhf-armhf-xl-credit1     <job status>                 broken  in 160658
 test-armhf-armhf-xl-vhd         <job status>                 broken  in 160658
 test-armhf-armhf-libvirt-raw    <job status>                 broken  in 160658
 test-armhf-armhf-examine      5 host-install broken in 160658 REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop     fail in 160658 REGR. vs. 152332

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-i386-pvgrub 19 guest-localmigrate/x10     fail pass in 160658
 test-amd64-amd64-qemuu-freebsd11-amd64 21 guest-start/freebsd.repeat fail pass in 160658
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 18 guest-start/debianhvm.repeat fail pass in 160658

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-examine      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-cubietruck  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt  5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-libvirt-raw 5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-xl-rtds  5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-xl-credit2 5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-xl-vhd   5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-xl       5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-xl-arndale 5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-xl-credit1 5 host-install(5) broken in 160658 blocked in 152332
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check fail in 160658 never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check fail in 160658 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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

version targeted for testing:
 linux                1678e493d530e7977cce34e59a86bb86f3c5631e
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  245 days
Failing since        152366  2020-08-01 20:49:34 Z  244 days  416 attempts
Testing same since   160658  2021-04-02 01:11:10 Z    1 days    2 attempts

------------------------------------------------------------
5283 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                                                  broken  
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          blocked 
 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                                          blocked 
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 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                                  blocked 
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  blocked 
 test-armhf-armhf-xl-cubietruck                               blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     blocked 
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         fail    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     blocked 
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-armhf-armhf-xl-vhd                                      blocked 


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

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

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

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

broken-job build-armhf broken
broken-step build-armhf host-install(4)
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-libvirt broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-vhd broken
broken-job test-armhf-armhf-libvirt-raw broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 11:49:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 11:49:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105054.201152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSem1-0006Gf-Tp; Sat, 03 Apr 2021 11:49:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105054.201152; Sat, 03 Apr 2021 11:49:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSem1-0006GY-Qe; Sat, 03 Apr 2021 11:49:05 +0000
Received: by outflank-mailman (input) for mailman id 105054;
 Sat, 03 Apr 2021 11:49: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 1lSem0-0006GQ-8I; Sat, 03 Apr 2021 11:49: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 1lSelz-0002vL-Sd; Sat, 03 Apr 2021 11:49: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 1lSelz-00084h-Ja; Sat, 03 Apr 2021 11:49:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSelz-0004bU-J8; Sat, 03 Apr 2021 11:49:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=X5vTFt2/BMlrMOcZfgU7DLDFcK7kWHvOCyOJV/DPt8U=; b=uI2v0LDbt51KrsbMh0kNhf2QMk
	QeSLmY/cTRLwXPXuMENp9iDfgBUigTHZpom9VZSE4ACV/NplL120b2jmM0tm9XG8IiE5rVnhGnbP8
	O+pxo1L0BWStlUh08LGmYtjEh/j4PlZaYZZVlFt9u36Xgpnk/NGI2ueqUj+SUiut8Pho=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160690-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160690: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=2fc3a704e7083afab0537cf0777521afa9cc1db6
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 11:49:03 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              2fc3a704e7083afab0537cf0777521afa9cc1db6
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  267 days
Failing since        151818  2020-07-11 04:18:52 Z  266 days  259 attempts
Testing same since   160661  2021-04-02 04:19:00 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 13:19:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 13:19:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105069.201173 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSgBY-0005UQ-NY; Sat, 03 Apr 2021 13:19:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105069.201173; Sat, 03 Apr 2021 13:19:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSgBY-0005UJ-KO; Sat, 03 Apr 2021 13:19:32 +0000
Received: by outflank-mailman (input) for mailman id 105069;
 Sat, 03 Apr 2021 13:19:31 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lSgBX-0005UB-ED; Sat, 03 Apr 2021 13:19:31 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lSgBX-0004f9-7n; Sat, 03 Apr 2021 13:19:31 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lSgBW-0003Fe-T0; Sat, 03 Apr 2021 13:19:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSgBW-0007DZ-SU; Sat, 03 Apr 2021 13:19:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=15rcOwrBxuXqq9EClIDRm+XhHRTs8qa5il5WXudFkEs=; b=QfBpL4zCt4Xw/ZCS/SEAxHmSqj
	p6hlgeA/HiSO9baws2VuAldZlRoSfBSdxDDzM9TKrnRh9LKQjsxs7zh+0vOQ5BWfwMij4oTYH9c1V
	rBV/6cFaCbw7ziV6BRiYwOha1eJ0E0R0Eb/AhaaKFz+j6h9EHXKVEM+Kj6KKLcnII9qY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160681-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160681: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-unstable:test-arm64-arm64-xl-seattle:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:debian-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    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-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-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-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-libvirt-xsm: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-qemuu-debianhvm-amd64-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 13:19:30 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-arndale     <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-credit2     <job status>                 broken
 test-armhf-armhf-libvirt        <job status>                 broken  in 160665
 test-armhf-armhf-libvirt      8 xen-boot                 fail REGR. vs. 160646
 test-armhf-armhf-xl-vhd      12 debian-di-install        fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale   8 xen-boot       fail in 160665 REGR. vs. 160646
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 160665 REGR. vs. 160646
 test-armhf-armhf-xl-credit1  14 guest-start    fail in 160665 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     5 host-install(5) broken in 160665 pass in 160681
 test-armhf-armhf-xl-arndale   5 host-install(5)          broken pass in 160665
 test-armhf-armhf-xl-credit2   5 host-install(5)          broken pass in 160665
 test-armhf-armhf-xl-credit1   5 host-install(5)          broken pass in 160665
 test-arm64-arm64-xl-seattle   8 xen-boot         fail in 160665 pass in 160681
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 160665 pass in 160681
 test-armhf-armhf-examine      8 reboot           fail in 160665 pass in 160681
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160665 pass in 160681
 test-armhf-armhf-xl-rtds      8 xen-boot                   fail pass in 160665
 test-armhf-armhf-xl-multivcpu 12 debian-install            fail pass in 160665
 test-armhf-armhf-xl           8 xen-boot                   fail pass in 160665
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat  fail pass in 160665

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160665 REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 160665 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    1 days
Testing same since   160665  2021-04-02 07:40:09 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.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                                  broken  
 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                                  broken  
 test-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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

broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-step test-armhf-armhf-xl-arndale host-install(5)
broken-step test-armhf-armhf-xl-credit2 host-install(5)
broken-step test-armhf-armhf-xl-credit1 host-install(5)
broken-job test-armhf-armhf-libvirt broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 13:22:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 13:22:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105074.201188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSgEm-0006KT-8R; Sat, 03 Apr 2021 13:22:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105074.201188; Sat, 03 Apr 2021 13:22:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSgEm-0006KM-4I; Sat, 03 Apr 2021 13:22:52 +0000
Received: by outflank-mailman (input) for mailman id 105074;
 Sat, 03 Apr 2021 13:22: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 1lSgEl-0006KE-9R; Sat, 03 Apr 2021 13:22: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 1lSgEl-0004j1-54; Sat, 03 Apr 2021 13:22: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 1lSgEk-0003Ki-Os; Sat, 03 Apr 2021 13:22:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSgEk-0001kM-OP; Sat, 03 Apr 2021 13:22: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=L23KO64JtxPOP3a+tBCezKJ7BJhQaWC0biCI+3Eo+gU=; b=4N1DYlJe/LumMoerVmD5rHJ3D1
	2nK1iHdrGqhelx8AvRaGd13svH6Mg4yLAYsUFYxNneuOT6qdQWpEfSgSHKFSZ8CaeC8G8neKoTl0t
	tBHurOPw4EPsgj5bJ9YpiiwyHqasgbCkltF4qCm7OaxIoB9KobV+eAFxCEMKNafdANgs=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160687-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 160687: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=f95cdd316c3d56e8f76b5044be54b9645e1dc60f
X-Osstest-Versions-That:
    ovmf=8c8922988544d31e8c87dd595f209828edcee962
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 13:22:50 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 f95cdd316c3d56e8f76b5044be54b9645e1dc60f
baseline version:
 ovmf                 8c8922988544d31e8c87dd595f209828edcee962

Last test of basis   160656  2021-04-01 23:40:07 Z    1 days
Testing same since   160687  2021-04-03 01:55:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   8c89229885..f95cdd316c  f95cdd316c3d56e8f76b5044be54b9645e1dc60f -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 13:37:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 13:37:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105081.201208 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSgSV-0007Ku-IB; Sat, 03 Apr 2021 13:37:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105081.201208; Sat, 03 Apr 2021 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 1lSgSV-0007Kn-F6; Sat, 03 Apr 2021 13:37:03 +0000
Received: by outflank-mailman (input) for mailman id 105081;
 Sat, 03 Apr 2021 13:37:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6QKX=JA=yahoo.com=hack3rcon@srs-us1.protection.inumbo.net>)
 id 1lSgST-0007Ki-Mm
 for xen-devel@lists.xenproject.org; Sat, 03 Apr 2021 13:37:01 +0000
Received: from sonic309-13.consmr.mail.bf2.yahoo.com (unknown [74.6.129.123])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 45434e47-8e29-4436-ae62-84019e2fa3ee;
 Sat, 03 Apr 2021 13:37:00 +0000 (UTC)
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic309.consmr.mail.bf2.yahoo.com with HTTP; Sat, 3 Apr 2021 13:37:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 45434e47-8e29-4436-ae62-84019e2fa3ee
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1617457020; bh=frNwGYHqCnadvbec+VrFdhIQ0kNGbh7FuDVaI9wxMLg=; h=Date:From:To:Subject:References:From:Subject:Reply-To; b=I2JxQ7lq2ocdLqgw9b/8iR/HU7KoGc5t6uEXT5vXVji2fX44nzl4eAHyvO05LcydQiWYaWM3z6acWTU3htkPzP2/YO+X37cQZFyGRvtJBPTQ9LS+Y/VPDOZC65clDb1eV68Wyho/YZ4Qm5HXIcvey6nir9ToSWCiGFCTMpKMycwn0hbq/qgnVeKuYGWmZau78BawFMQYl+m+RmH1cG1ciq2YFRdNBQ5iYmp7oj0swsXIaZf9tJeoRMbJ3dVmZblH7CQZL2SDHqilKX40Hy0pvEF0ZIWNxNa+hoEpDtduNE8zkV3XzAQfmG/oMZ4lznV4DK+wzlkHcmwFLm8BTGhFFA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1617457020; bh=bslqVk2NQewVuNnogv67oKmfj6UO44c/KMqMs0U3zgx=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=TjwqL39BvawqmoE9nsBa6erTqSkLBv+AeDm8zILVKzQZ4pIFYawCzDEwZIoARsYSmIhBu70321rd1bsrM0bhVXwAzb0ncEdxpv3Gkd8gUMQQxeU8CZ5j2YHsCwwCxdXayXAZTCuplSgUApxYI3OUy7zHgikAow3h+9Fk6ZnYfRZ/jxuV8+UwzjU9f0vS65Tcq0PprbYi5eDtoCrLbaFdlEDUfzRzoEFoIFvOipZ6+wZ70oEK2b3E904q6vhGUsfSS7rdN3e7uVvYTSW1FFhnyZTtCu+DJ1Pus7WLjLehjwZwwULWo7Mm5fKKW2X9Nx5FrQ/8oatcP+dr0FgLmh5kQQ==
X-YMail-OSG: JdcGbCQVM1nFhTFHDSoKvNF3R5muJ7c6dgN.bI7Si5qCasxJhk5NS1b0vm_GJQq
 5SiFC7Ky.oIuXm7qpcAnflkKVBaYHaKICHwwAiNWh01kpEKf_yZeFXafmdT6Wz4Bl3m44M8PzYMq
 IyArndK1YSv_Sv_ZnH_.qfPCgdSVk0LQpLFggBDmF6zJz0GWNNlEk5o0lVCRu81G.idVn4BYayd8
 Uhwl4PTDEcXeQj.fETcdH0jP9nRBHs_61CvbKWRBF.aqvTBCg9q27hbu7Xi9FlqMlC9WSzuVpNUu
 Rf6hig9.A3E.V3fHMSG7xcY07WdcO7pc8Hld8Ys7E.KYDg_YBOVQesUz_rl1J3Dl_s8RqKn57J6U
 GCze1y1ooEkG48TwaYzQF.M..UsEv6r5NmZz1y51Llbz7OEcyVdd7dfC6QuOwxLnvs10eihkXNBm
 KONOk4bxE8nVYpraa_FrkoK_l7cpIXi0nZZ9V1qTFf.f0WqI6vaoSiGfzlTi7bcTldTBi3_CHg4Q
 EJrk6wz10geloYl_f2XXZzLarQXIamRhFNLoB2cXP1bqp35FUHPwLbi3sTZ5am2IuSG59a2Q6GHB
 fg492iUf6OxRU8FDqkNZUBVZJXElq9arDq2DYHKJMyO1507U.5tPgc6F0eGMxm3z5dfL1qByvBca
 8eTjoopxCfi0lagWTd_T.044ZJurwSKzbFYSQEzGNL6quS.ciIsbMCI7oVL2EJbk797W.pMiZRSR
 jg5H.VNh2vyLdbHzyhT6IZW.7Chx67F00RCKWwqIocdJRuqwAwnZ9baZcvb0n2b09ZXiLMNuSaEO
 CGcMB7EYAqgOEoAvSzwbyLZ6iOtfvhen_wJ3xB2iqOgLp7YQRe.1j4_uRioHXC_YZnlBGKcMViKE
 EYEN71qTPK1OPQOCmdBWxVC8cbF5sB4zm1xEg_.SnCCFo8B_0Zi5hiGixL0r.G8QnacJR3E5CppO
 IGqSyKalEMimqWQXvOdEpyUe9eo1RoW.7NNXYIxsG1m2sjxMawF9A_uC7HyCVZyUyAbUJyifs.VA
 UDWym9Aj7ayJ9XPDnjmdBKB8lRcycCdyzaDZ8nmifwz77Dz97L_xswLNWmCRSU0FmcUZnL4TZo.Z
 9FY67sWhKoVC9jawX_ULPfulBpSq9N2Spu5kWUWl5_p9HNZq1q6ikBCapZV.Gm89_7F_UJkrlVGu
 FPO7aDA1pUYk_oR1Kt.z6clmYeveWdpOtA2C51R9UZB3KG6h4qeMOr.Z.xFXsMGpQOXeSeQgJdO4
 BacA7kG7IlzWwnl7y3rf6OSOPlIjiV70kxw13PmvIcGYVorwFcpawUOMSDO7kv53DvEYHsVfrPNQ
 7fcAouWXmF10k5toxTK_ojLpvxT6sxKczZCHN.QePAYQjQZCs1jcOO9nLQaWW80ek0WCAL70LGl3
 G9H1pQvsx_Miqkt6Zg_imGPpGHUHcHsPOsu9oY44W6ImOuNVjcku3h4Xy5t4ctbg1FNu1KWWVY4t
 nRK2Fw1WXU.sff_694.cWbwrNBRCpbbCNxeIdFBFZzcSMDkvnTSADhbE46BZwYF7mhsWTEy3v3y7
 CC1Cv6vA3cEpZS3MhSapnA8hF5924CpsjvWWg6gjyehw3rjJbpeLQuK3yRplDo51ie5tRmc1__V2
 54ELkx3GwG5oKzgrQJnNaupioU98raH7RzCoYZWzoSD6raw5SJyslEpOPsxc2w4QCghWlBNgYO_2
 X_96wNci4KYE13yRtBpKEJTQ6Hv0k3WBAdWgsMuNN07A6fJX.yKkNhEAfD1X5j8oFB_Gk.V7ykbj
 _mpoQtc9ln_T3U8NELxfl9Hc1y5EQTDOBjBItucD_DF7QEWetE6Bjx8agKrPdt_WPX23gGpRrb.Q
 n6V8d0KeQKIzDpisfmCu0jMWBi5k5_6IOgZJFOcWs3TUQpk65MTWkEZ04p3OSNE58kn78hgIqn8_
 3O8RzQt2w20JFp3hTO.SzgAnmAAwh60wvFTaYkoLBc3Uvt9MPpbf6DnG8PEOhFMFqGEVgrvLWbRQ
 6S9ea0R6pObzJGK5gQmvdvFFwg0dEjtdqRtLzbqJ59pW.iRDiu4mim8_5g4p4FrTwBFYmZGnQgw4
 WCzL9JIXgiifIMnfLqHCVJGddJOw5QX8hVc4g7n7aWRHfloLTVJ613MXmWWMb64ODQJ5nz2NB8Nc
 bN2qZe.CMKmTTNvXslZocLi85uX2aZFZDIe1c20ukYH__gYXhws7EB2O0FDpqmui5lnhk1bW1uc9
 0QzTsMc4WfvmfnUUwaqB1PXWCRHL.dYpudAS3ivKKW3KZXynhpKuO_1U1TFbCDVd0QYR.HBilg2x
 KAL.cPRl6RV8FbajEygjDL7nSQRQB1Q4ivRzAOsWnemvbUZVDHu0qnLEPloyKABmmSoIENyvwZjJ
 dpyU2Ga6p.2LR3BMU01PQA7PkP28t1l8Vr5g-
X-Sonic-MF: <hack3rcon@yahoo.com>
Date: Sat, 3 Apr 2021 13:36:59 +0000 (UTC)
From: Jason Long <hack3rcon@yahoo.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Message-ID: <2007893190.1974412.1617457019974@mail.yahoo.com>
Subject: Xen for AlmaLinux and Rocky Linux.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
References: <2007893190.1974412.1617457019974.ref@mail.yahoo.com>
X-Mailer: WebService/1.1.17936 YMailNorrin Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36
Content-Length: 146

Hello,
As CentOS there will be no soon, the Xen Project team has any plan to build=
 Xen Hypervisor for=C2=A0AlmaLinux and Rocky Linux?

Thanks.


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 17:10:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 17:10:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105094.201245 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSjme-0000Z5-9K; Sat, 03 Apr 2021 17:10:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105094.201245; Sat, 03 Apr 2021 17:10: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 1lSjme-0000Yb-5X; Sat, 03 Apr 2021 17:10:04 +0000
Received: by outflank-mailman (input) for mailman id 105094;
 Sat, 03 Apr 2021 17:10: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 1lSjmd-0000Rf-I1; Sat, 03 Apr 2021 17:10: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 1lSjmd-0000gK-C9; Sat, 03 Apr 2021 17:10: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 1lSjmd-0000MX-3r; Sat, 03 Apr 2021 17:10:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSjmd-0003Jb-2w; Sat, 03 Apr 2021 17:10: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=9bN49VPkAx6dpDIsEa9sbI0oXTkw4lwv6mRkmyGGONg=; b=qoslU31+SZDPvtnHPeSHUj+ygC
	2y0tjpm2mwsXyHo8oW/6RlQZl/FAgpYZVOaKoxhh8JUxgCFEGwWOU0w3NE3Fy9cCAB51blLxquHAv
	XY7gCK4dzh2cnKeRyp9DNGOjcwV4OjXPpIHSNilWjQmYazWVXVkR/nr2G3/MP5V2eSBg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160685-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160685: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    qemu-mainline:test-armhf-armhf-libvirt:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-xl-credit2:debian-install:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:host-install(5):broken:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=50a9b4499ca99a439b400f715f9475b1702f4e87
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 17:10:03 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken
 test-armhf-armhf-libvirt-raw    <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-multivcpu    <job status>                 broken
 test-armhf-armhf-xl-rtds        <job status>                 broken
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-xl-credit2  12 debian-install           fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt      5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-credit1   5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-libvirt-raw  5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-rtds      5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-multivcpu  5 host-install(5)      broken blocked in 152631
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                50a9b4499ca99a439b400f715f9475b1702f4e87
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  226 days
Failing since        152659  2020-08-21 14:07:39 Z  225 days  424 attempts
Testing same since   160685  2021-04-03 01:07:58 Z    0 days    1 attempts

------------------------------------------------------------
473 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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                                  broken  
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     broken  
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                broken  
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 broken  
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     broken  
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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-libvirt broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-rtds broken
broken-step test-armhf-armhf-libvirt host-install(5)
broken-step test-armhf-armhf-xl-credit1 host-install(5)
broken-step test-armhf-armhf-libvirt-raw host-install(5)
broken-step test-armhf-armhf-xl-rtds host-install(5)
broken-step test-armhf-armhf-xl-multivcpu host-install(5)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 21:26:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 21:26:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105107.201284 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSnmp-0004xv-CM; Sat, 03 Apr 2021 21:26:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105107.201284; Sat, 03 Apr 2021 21: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 1lSnmp-0004xn-6q; Sat, 03 Apr 2021 21:26:31 +0000
Received: by outflank-mailman (input) for mailman id 105107;
 Sat, 03 Apr 2021 21:26: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 1lSnmn-0004xZ-WB; Sat, 03 Apr 2021 21:26: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 1lSnmn-0004uh-Fe; Sat, 03 Apr 2021 21:26: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 1lSnmn-00033T-2Q; Sat, 03 Apr 2021 21:26:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSnmn-0008Ok-1m; Sat, 03 Apr 2021 21:26: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=WJo+I7qrRAJ3BvbeJMrDGaS4Cf0+LFqlBaVkzXxSdUA=; b=AdmLNykJKR7O51Dr1mxU1YfU9L
	NOi8Woo94ZEJkO0siYYLDzJHFeo2slcgxG3WdwShMOr21BCDl9OmtgBDbG41HSe3t6aukZ/8uy74P
	RoGIKjfPjwMRsUN545Ou1XBjziHs/gMrW36Z0OUjj7ZdoAvBNktrz0r+JPSQ1m3cQG5E=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160691-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160691: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    xen-4.12-testing:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl:debian-install:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-start/debianhvm.repeat:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 21:26:29 +0000

flight 160691 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160691/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken
 test-armhf-armhf-xl             <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-credit2     <job status>                 broken
 test-armhf-armhf-xl-cubietruck    <job status>                 broken
 test-armhf-armhf-xl-rtds        <job status>                 broken
 test-armhf-armhf-libvirt-raw    <job status>                 broken  in 160655
 test-armhf-armhf-xl-vhd         <job status>                 broken  in 160655
 build-armhf                     <job status>                 broken  in 160672
 build-armhf                4 host-install(4) broken in 160672 REGR. vs. 159418
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-vhd      5 host-install(5) broken in 160655 pass in 160691
 test-armhf-armhf-libvirt-raw 5 host-install(5) broken in 160655 pass in 160691
 test-armhf-armhf-xl-credit1   5 host-install(5)          broken pass in 160638
 test-armhf-armhf-xl-credit2   5 host-install(5)          broken pass in 160655
 test-armhf-armhf-xl-rtds      5 host-install(5)          broken pass in 160655
 test-armhf-armhf-libvirt      5 host-install(5)          broken pass in 160655
 test-armhf-armhf-xl           5 host-install(5)          broken pass in 160655
 test-armhf-armhf-xl-cubietruck  5 host-install(5)        broken pass in 160655
 test-armhf-armhf-xl          12 debian-install   fail in 160655 pass in 160638
 test-armhf-armhf-libvirt 18 guest-start/debian.repeat fail in 160655 pass in 160638
 test-amd64-amd64-xl-qcow2 18 guest-saverestore.2 fail in 160672 pass in 160691
 test-armhf-armhf-libvirt-raw 12 debian-di-install          fail pass in 160638
 test-amd64-i386-xl-qemuu-ovmf-amd64 20 guest-start/debianhvm.repeat fail pass in 160672

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-rtds      1 build-check(1)           blocked in 160672 n/a
 build-armhf-libvirt           1 build-check(1)           blocked in 160672 n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)           blocked in 160672 n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)           blocked in 160672 n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)          blocked in 160672 n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)           blocked in 160672 n/a
 test-armhf-armhf-libvirt      1 build-check(1)           blocked in 160672 n/a
 test-armhf-armhf-xl           1 build-check(1)           blocked in 160672 n/a
 test-armhf-armhf-xl-cubietruck  1 build-check(1)         blocked in 160672 n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)           blocked in 160672 n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)           blocked in 160672 n/a
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160638 like 159418
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 160655 like 159418
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 160655 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-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-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-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-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                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   46 days
Failing since        160128  2021-03-18 14:36:18 Z   16 days   19 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   14 days   17 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          broken  
 test-amd64-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-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                                  broken  
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  broken  
 test-armhf-armhf-xl-cubietruck                               broken  
 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-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     broken  
 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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     broken  
 test-arm64-arm64-xl-seattle                                  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-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-libvirt broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-rtds broken
broken-step test-armhf-armhf-xl-credit2 host-install(5)
broken-step test-armhf-armhf-xl-rtds host-install(5)
broken-step test-armhf-armhf-libvirt host-install(5)
broken-step test-armhf-armhf-xl host-install(5)
broken-step test-armhf-armhf-xl-cubietruck host-install(5)
broken-step test-armhf-armhf-xl-credit1 host-install(5)
broken-job build-armhf broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-vhd broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 03 23:45:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 03 Apr 2021 23:45:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105116.201305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSpwn-0008Lj-P8; Sat, 03 Apr 2021 23:44:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105116.201305; Sat, 03 Apr 2021 23:44: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 1lSpwn-0008Lc-Ku; Sat, 03 Apr 2021 23:44:57 +0000
Received: by outflank-mailman (input) for mailman id 105116;
 Sat, 03 Apr 2021 23:44: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 1lSpwm-0008LM-N0; Sat, 03 Apr 2021 23:44: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 1lSpwm-00074i-E2; Sat, 03 Apr 2021 23:44: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 1lSpwm-0000le-4S; Sat, 03 Apr 2021 23:44:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSpwm-0005rs-3x; Sat, 03 Apr 2021 23: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=OqFNG9TuK7v/H0ZbZZ6QzgNMdrQ4F4VixC4lCT9A9mY=; b=bqzd5cfs26cn6UPd6oI41mA6Ax
	2LkIQ9ssAobKF1+CeqaqOenZfQnOFDRQF4VvF3ptADEe582h53CHbqT1ZYb86DjTvPCKPkps6Id3F
	awKt92GtJ57RniQASNHf6UNcO+MFh/bhY8lDGqhAcfOAbSFU7UswPp6Z8jqquankryxk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160696-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160696: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    linux-linus:build-armhf:<job status>:broken:regression
    linux-linus:build-armhf:host-install(4):broken:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-qemuu-freebsd12-amd64:guest-start.2:fail:regression
    linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    linux-linus:build-armhf-libvirt:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=d93a0d43e3d0ba9e19387be4dae4a8d5b175a8d7
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 03 Apr 2021 23:44:56 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken
 build-armhf                   4 host-install(4)        broken REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-qemuu-freebsd12-amd64 22 guest-start.2  fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-examine      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-cubietruck  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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

version targeted for testing:
 linux                d93a0d43e3d0ba9e19387be4dae4a8d5b175a8d7
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  246 days
Failing since        152366  2020-08-01 20:49:34 Z  245 days  417 attempts
Testing same since   160696  2021-04-03 08:07:18 Z    0 days    1 attempts

------------------------------------------------------------
5283 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                                                  broken  
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          blocked 
 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                                          blocked 
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 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                                  blocked 
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  blocked 
 test-armhf-armhf-xl-cubietruck                               blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     blocked 
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         fail    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     blocked 
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-armhf-armhf-xl-vhd                                      blocked 


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

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

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

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

broken-job build-armhf broken
broken-step build-armhf host-install(4)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 04 03:46:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 04 Apr 2021 03:46:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105126.201335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lStiO-0001JM-GI; Sun, 04 Apr 2021 03:46:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105126.201335; Sun, 04 Apr 2021 03: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 1lStiO-0001JC-6y; Sun, 04 Apr 2021 03:46:20 +0000
Received: by outflank-mailman (input) for mailman id 105126;
 Sun, 04 Apr 2021 03:46: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 1lStiM-0001J4-C8; Sun, 04 Apr 2021 03:46: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 1lStiM-0000PO-03; Sun, 04 Apr 2021 03: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 1lStiL-00030F-Gm; Sun, 04 Apr 2021 03:46:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lStiL-0000cF-GH; Sun, 04 Apr 2021 03:46: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=aro+o9k/5Y3yHapwrthie5OaHjm+uudSVAcCx+KCJ7A=; b=yJKn1eOSLbHxc2NN8uYln+hPAj
	Iqbipbe+biDFslDLnlHg1NftuBf6zzm2LV+rms7XpDzDfLBDGBjZQo8qjxHQCU8AEx6TyBYAGJf21
	0z/5K3XLWK2vSaAiERyTi62NGEm1MF3ZDTFFaDKYrPCHBWa0YNZ89PC5mBSO3JqsPCF8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160700-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160700: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-cubietruck:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-examine:host-install:broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-arm64-arm64-xl-seattle:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:debian-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    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-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-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-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-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-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-libvirt-xsm: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-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 04 Apr 2021 03:46:17 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt-raw    <job status>                 broken
 test-armhf-armhf-xl             <job status>                 broken
 test-armhf-armhf-xl-arndale     <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-credit2     <job status>                 broken
 test-armhf-armhf-xl-cubietruck    <job status>                 broken
 test-armhf-armhf-xl-multivcpu    <job status>                 broken
 test-armhf-armhf-xl-rtds        <job status>                 broken
 test-armhf-armhf-xl-vhd         <job status>                 broken
 test-armhf-armhf-libvirt        <job status>                 broken  in 160665
 test-armhf-armhf-xl-arndale   8 xen-boot       fail in 160665 REGR. vs. 160646
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 160665 REGR. vs. 160646
 test-armhf-armhf-xl-credit1  14 guest-start    fail in 160665 REGR. vs. 160646
 test-armhf-armhf-xl-vhd   12 debian-di-install fail in 160681 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     5 host-install(5) broken in 160665 pass in 160700
 test-armhf-armhf-xl-arndale   5 host-install(5)          broken pass in 160665
 test-armhf-armhf-xl-credit1   5 host-install(5)          broken pass in 160665
 test-armhf-armhf-xl-credit2   5 host-install(5)          broken pass in 160665
 test-armhf-armhf-xl           5 host-install(5)          broken pass in 160681
 test-armhf-armhf-xl-multivcpu  5 host-install(5)         broken pass in 160681
 test-armhf-armhf-xl-rtds      5 host-install(5)          broken pass in 160681
 test-armhf-armhf-xl-vhd       5 host-install(5)          broken pass in 160681
 test-armhf-armhf-libvirt-raw  5 host-install(5)          broken pass in 160681
 test-armhf-armhf-xl-cubietruck  5 host-install(5)        broken pass in 160681
 test-armhf-armhf-examine      5 host-install             broken pass in 160681
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 160665 pass in 160681
 test-armhf-armhf-examine      8 reboot           fail in 160665 pass in 160681
 test-arm64-arm64-xl-seattle   8 xen-boot         fail in 160665 pass in 160700
 test-armhf-armhf-xl-rtds      8 xen-boot         fail in 160681 pass in 160665
 test-armhf-armhf-xl-multivcpu 12 debian-install  fail in 160681 pass in 160665
 test-armhf-armhf-xl           8 xen-boot         fail in 160681 pass in 160665
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 160681 pass in 160665
 test-armhf-armhf-libvirt      8 xen-boot         fail in 160681 pass in 160700
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 160681

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160665 REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160681 like 160646
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160681 never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check fail in 160681 never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check fail in 160681 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-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

version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    2 days
Testing same since   160665  2021-04-02 07:40:09 Z    1 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.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                                          broken  
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  broken  
 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                                  broken  
 test-armhf-armhf-xl-cubietruck                               broken  
 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                                     fail    
 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                                broken  
 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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 broken  
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     broken  
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      broken  


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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-libvirt-raw broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-vhd broken
broken-step test-armhf-armhf-xl host-install(5)
broken-step test-armhf-armhf-xl-arndale host-install(5)
broken-step test-armhf-armhf-xl-multivcpu host-install(5)
broken-step test-armhf-armhf-xl-rtds host-install(5)
broken-step test-armhf-armhf-xl-vhd host-install(5)
broken-step test-armhf-armhf-xl-credit1 host-install(5)
broken-step test-armhf-armhf-libvirt-raw host-install(5)
broken-step test-armhf-armhf-xl-cubietruck host-install(5)
broken-step test-armhf-armhf-examine host-install
broken-step test-armhf-armhf-xl-credit2 host-install(5)
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-libvirt broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 04 07:04:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 04 Apr 2021 07:04:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105138.201365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSwnO-0001kE-DT; Sun, 04 Apr 2021 07:03:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105138.201365; Sun, 04 Apr 2021 07: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 1lSwnO-0001k7-AG; Sun, 04 Apr 2021 07:03:42 +0000
Received: by outflank-mailman (input) for mailman id 105138;
 Sun, 04 Apr 2021 07:03: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 1lSwnM-0001jz-R0; Sun, 04 Apr 2021 07:03: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 1lSwnM-0004Ae-Jk; Sun, 04 Apr 2021 07:03: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 1lSwnM-0005mL-CO; Sun, 04 Apr 2021 07:03:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSwnM-0000NA-Bq; Sun, 04 Apr 2021 07:03:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=dKWSiOQMfQMVJ/zEc74orytaN9e5XaTfahZkGSASn8g=; b=4TVsyH1vSQZXrGEh62k5sVkFfW
	zaqY3qnZZv8r2nB+JRnqACOYuUGx1xcwsSZtbw7f52eH1Jtzk3DTKiLQXC6wI9BtaaRuQecJHRTqa
	GeS/c7ke/ELW1izXN0ks2rFofIWOm1Ur6a9rxEk6mNjBeoRbJl0NAxpH6pHkeLyMUi1E=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160704-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160704: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    qemu-mainline:build-armhf:<job status>:broken:regression
    qemu-mainline:build-armhf:host-install(4):broken:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=50a9b4499ca99a439b400f715f9475b1702f4e87
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 04 Apr 2021 07:03:40 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken
 build-armhf                   4 host-install(4)        broken REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-cubietruck  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass

version targeted for testing:
 qemuu                50a9b4499ca99a439b400f715f9475b1702f4e87
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  226 days
Failing since        152659  2020-08-21 14:07:39 Z  225 days  425 attempts
Testing same since   160685  2021-04-03 01:07:58 Z    1 days    2 attempts

------------------------------------------------------------
473 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                                                  broken  
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          blocked 
 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                                          blocked 
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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                                  blocked 
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  blocked 
 test-armhf-armhf-xl-cubietruck                               blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     blocked 
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-armhf-armhf-xl-vhd                                      blocked 


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

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

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

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

broken-job build-armhf broken
broken-step build-armhf host-install(4)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 04 09:47:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 04 Apr 2021 09:47:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105148.201386 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lSzLw-0007UX-Hp; Sun, 04 Apr 2021 09:47:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105148.201386; Sun, 04 Apr 2021 09: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 1lSzLw-0007UQ-EI; Sun, 04 Apr 2021 09:47:32 +0000
Received: by outflank-mailman (input) for mailman id 105148;
 Sun, 04 Apr 2021 09:47: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 1lSzLv-0007UI-7k; Sun, 04 Apr 2021 09:47: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 1lSzLu-0007Ed-VD; Sun, 04 Apr 2021 09:47: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 1lSzLu-0006VO-LY; Sun, 04 Apr 2021 09:47:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lSzLu-0003QY-L3; Sun, 04 Apr 2021 09:47:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=GUHguF6xzWVNRVhlyZffUcog/ErQ8tJ2oMuP0u9Ev8o=; b=k26gNmjBLX7KKLP6PIvb7kKdwx
	xqdGQPx6CxhLDgFk9sE7A2kcaOIjIhzUzdyMwlZnv3Y2Vj0BuUv5h0w39NlAATXmm7lqLYJlAntOW
	eAAdkaoykwxfjhuf42/oo0WqbrkrMpUT8lc/PzNi0oZXSfc4vHNpWsCYYnHWdLqKGd4k=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160721-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-coverity test] 160721: all pass - PUSHED
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=90629587e16e2efdb61da77f25c25fba3c4a5fd7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 04 Apr 2021 09:47:30 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  90629587e16e2efdb61da77f25c25fba3c4a5fd7

Last test of basis   160582  2021-03-31 09:18:34 Z    4 days
Testing same since   160721  2021-04-04 09:18:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  George Dunlap <george.dunlap@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>

jobs:
 coverity-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/xen.git
   90629587e1..0435784cc7  0435784cc75dcfef3b5f59c29deb1dbb84265ddb -> coverity-tested/smoke


From xen-devel-bounces@lists.xenproject.org Sun Apr 04 11:17:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 04 Apr 2021 11:17:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105156.201412 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lT0kf-0006is-EN; Sun, 04 Apr 2021 11:17:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105156.201412; Sun, 04 Apr 2021 11:17: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 1lT0kf-0006il-BO; Sun, 04 Apr 2021 11:17:09 +0000
Received: by outflank-mailman (input) for mailman id 105156;
 Sun, 04 Apr 2021 11:17: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 1lT0ke-0006id-Er; Sun, 04 Apr 2021 11:17: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 1lT0ke-0000JA-47; Sun, 04 Apr 2021 11:17: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 1lT0kd-0001so-SH; Sun, 04 Apr 2021 11:17:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lT0kd-000280-Rn; Sun, 04 Apr 2021 11:17: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=xHnuxZRwsdR+uikOVCSV3smscIvn5zcX5N9F9XfUfVk=; b=JI70xkZmy9+LFlleYInPVyfxcf
	BqbeUZegCCXLONIjlffd2u1K+9CngA7o+I6yIzDDd0E8GJ4vm+Euk0MDsn2MeURRFMi80b7y01tsR
	FNUh7MJU8fKfisrt/8o9PZhnwZzzi0xHFHMeDZhDG2d2CCnoy4wwBNUfyGv4dtHhdHUM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160709-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160709: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl:host-install(5):broken:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:host-install(5):broken:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl:debian-install:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-start/debianhvm.repeat:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:guests-nbd-mirror/debian:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 04 Apr 2021 11:17:07 +0000

flight 160709 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160709/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken
 build-armhf                   4 host-install(4)        broken REGR. vs. 159418
 test-armhf-armhf-libvirt-raw    <job status>                 broken  in 160655
 test-armhf-armhf-xl-vhd         <job status>                 broken  in 160655
 test-armhf-armhf-xl-rtds        <job status>                 broken  in 160691
 test-armhf-armhf-xl-credit1     <job status>                 broken  in 160691
 test-armhf-armhf-xl-credit2     <job status>                 broken  in 160691
 test-armhf-armhf-xl             <job status>                 broken  in 160691
 test-armhf-armhf-libvirt        <job status>                 broken  in 160691
 test-armhf-armhf-xl-cubietruck    <job status>                broken in 160691
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-vhd      5 host-install(5) broken in 160655 pass in 160691
 test-armhf-armhf-libvirt-raw 5 host-install(5) broken in 160655 pass in 160691
 test-armhf-armhf-xl-credit1  5 host-install(5) broken in 160691 pass in 160638
 test-armhf-armhf-xl-credit2  5 host-install(5) broken in 160691 pass in 160655
 test-armhf-armhf-xl-rtds     5 host-install(5) broken in 160691 pass in 160655
 test-armhf-armhf-libvirt     5 host-install(5) broken in 160691 pass in 160655
 test-armhf-armhf-xl          5 host-install(5) broken in 160691 pass in 160655
 test-armhf-armhf-xl-cubietruck 5 host-install(5) broken in 160691 pass in 160655
 test-amd64-amd64-xl-qcow2 18 guest-saverestore.2 fail in 160638 pass in 160709
 test-armhf-armhf-xl          12 debian-install   fail in 160655 pass in 160638
 test-armhf-armhf-libvirt 18 guest-start/debian.repeat fail in 160655 pass in 160638
 test-armhf-armhf-libvirt-raw 12 debian-di-install fail in 160691 pass in 160638
 test-amd64-i386-xl-qemuu-ovmf-amd64 20 guest-start/debianhvm.repeat fail in 160691 pass in 160709
 test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian  fail pass in 160691

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-cubietruck  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160638 like 159418
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160638 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160638 never pass
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 160655 like 159418
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check fail in 160655 never pass
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 160655 never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 160691 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 160691 never pass
 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 160691 never pass
 test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 160691 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 160691 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 160691 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-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-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   46 days
Failing since        160128  2021-03-18 14:36:18 Z   16 days   20 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   15 days   18 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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                                                  broken  
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          blocked 
 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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          blocked 
 test-amd64-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-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                                  blocked 
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  blocked 
 test-armhf-armhf-xl-cubietruck                               blocked 
 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-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     blocked 
 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                                blocked 
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     blocked 
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      blocked 


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

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

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

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

broken-job build-armhf broken
broken-step build-armhf host-install(4)
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-libvirt broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl-vhd broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 04 12:19:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 04 Apr 2021 12:19:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105166.201433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lT1j7-0003Sp-EQ; Sun, 04 Apr 2021 12:19:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105166.201433; Sun, 04 Apr 2021 12: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 1lT1j7-0003Si-BP; Sun, 04 Apr 2021 12:19:37 +0000
Received: by outflank-mailman (input) for mailman id 105166;
 Sun, 04 Apr 2021 12:19: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 1lT1j6-0003Sa-BK; Sun, 04 Apr 2021 12:19: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 1lT1j6-0001J7-3p; Sun, 04 Apr 2021 12:19: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 1lT1j5-0004d0-RN; Sun, 04 Apr 2021 12:19:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lT1j5-0005Ab-Qv; Sun, 04 Apr 2021 12:19: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=1nce9yFvFPqbJGarR37f6qI/vt1ee541Sk3kU957mDk=; b=IZWpzV1W7tlTg/IUsG3s7mnvKW
	RIrZDafe9l6EXY1mG6JJUCO4Agu5JTQZ4kefXA/ueBF0ImU/r6jICcK3DlCOZI56+JpF3gh4xdaW1
	gRZZ5OE0xLTA37azxUWjo/HPssW5CkAJmu2mmvXFghN2Smyd7UmbAvMcZsQzlQcKOj1M=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160716-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160716: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    libvirt:build-armhf:<job status>:broken:regression
    libvirt:build-armhf:host-install(4):broken:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:build-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=2fc3a704e7083afab0537cf0777521afa9cc1db6
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 04 Apr 2021 12:19:35 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken
 build-armhf                   4 host-install(4)        broken REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              2fc3a704e7083afab0537cf0777521afa9cc1db6
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  268 days
Failing since        151818  2020-07-11 04:18:52 Z  267 days  260 attempts
Testing same since   160661  2021-04-02 04:19:00 Z    2 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  broken  
 build-i386                                                   pass    
 build-amd64-libvirt                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-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

broken-job build-armhf broken
broken-step build-armhf host-install(4)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 04 15:20:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 04 Apr 2021 15:20:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105173.201455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lT4XV-0001ul-69; Sun, 04 Apr 2021 15:19:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105173.201455; Sun, 04 Apr 2021 15:19:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lT4XV-0001ue-2L; Sun, 04 Apr 2021 15:19:49 +0000
Received: by outflank-mailman (input) for mailman id 105173;
 Sun, 04 Apr 2021 15:19: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 1lT4XT-0001uW-PR; Sun, 04 Apr 2021 15:19: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 1lT4XT-0004CA-EH; Sun, 04 Apr 2021 15:19: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 1lT4XS-0005JR-Sw; Sun, 04 Apr 2021 15:19:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lT4XS-0003Di-SQ; Sun, 04 Apr 2021 15:19:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=9Kz8wvx7ZbHXkYTiamXm0aaiuYB5HbF7/08uVB9XisQ=; b=CiiLqOwd8Ze4T4W1Au4eU2swPh
	sVyXlTvedoQgw9FqJ8FQ4d9WWTnqstBL7/eRQKqsdClOmSfY1hzkVvn2H//dsrb8kXvw501Ise5GM
	WbXNcqkvzi3AT2l6AQES4w9qII8Fm+AkP21WQ8SV2bT6nFfbAl6KDHd9z09SdDxnKrzw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160711-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160711: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-armhf-armhf-xl-credit1:debian-install:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:regression
    linux-linus:test-armhf-armhf-xl-vhd:debian-di-install:fail:regression
    linux-linus:test-armhf-armhf-libvirt-raw:debian-di-install:fail:regression
    linux-linus:test-armhf-armhf-libvirt:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:host-install(5):broken:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-vhd: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
X-Osstest-Versions-This:
    linux=2023a53bdf41b7646b1d384b6816af06309f73a5
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 04 Apr 2021 15:19:46 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken
 test-armhf-armhf-xl-credit2     <job status>                 broken
 test-armhf-armhf-xl-cubietruck    <job status>                 broken
 test-armhf-armhf-xl-multivcpu    <job status>                 broken
 test-armhf-armhf-xl-rtds        <job status>                 broken
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-armhf-armhf-xl-credit1  12 debian-install           fail REGR. vs. 152332
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 152332
 test-armhf-armhf-xl-vhd      12 debian-di-install        fail REGR. vs. 152332
 test-armhf-armhf-libvirt-raw 12 debian-di-install        fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt      5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl-rtds      5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl-multivcpu  5 host-install(5)      broken blocked in 152332
 test-armhf-armhf-xl-credit2   5 host-install(5)       broken blocked in 152332
 test-armhf-armhf-xl-cubietruck  5 host-install(5)     broken blocked in 152332
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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-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

version targeted for testing:
 linux                2023a53bdf41b7646b1d384b6816af06309f73a5
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  246 days
Failing since        152366  2020-08-01 20:49:34 Z  245 days  418 attempts
Testing same since   160711  2021-04-04 00:11:23 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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                                  broken  
 test-armhf-armhf-xl-cubietruck                               broken  
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     broken  
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                broken  
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         fail    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     broken  
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-armhf-armhf-xl-vhd                                      fail    


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

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

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

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

broken-job test-armhf-armhf-libvirt broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-rtds broken
broken-step test-armhf-armhf-libvirt host-install(5)
broken-step test-armhf-armhf-xl-rtds host-install(5)
broken-step test-armhf-armhf-xl-multivcpu host-install(5)
broken-step test-armhf-armhf-xl-credit2 host-install(5)
broken-step test-armhf-armhf-xl-cubietruck host-install(5)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 04 21:07:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 04 Apr 2021 21:07:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105215.201518 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lT9x5-00070X-5C; Sun, 04 Apr 2021 21:06:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105215.201518; Sun, 04 Apr 2021 21:06: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 1lT9x5-00070Q-1Q; Sun, 04 Apr 2021 21:06:35 +0000
Received: by outflank-mailman (input) for mailman id 105215;
 Sun, 04 Apr 2021 21:06: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 1lT9x3-00070I-U7; Sun, 04 Apr 2021 21:06: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 1lT9x3-00024a-Ki; Sun, 04 Apr 2021 21:06: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 1lT9x3-0005Wl-Ar; Sun, 04 Apr 2021 21:06:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lT9x3-0008CD-AI; Sun, 04 Apr 2021 21: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=5hBpJuucFSIA09DtXI6aKIqXTS+LZjzSU6pIoI+ZVxQ=; b=r3H+Gyj1yru6TUqVJfQtAs8qTb
	A5JG8f7KQiwbrqZn5cZJHdM+d9xT+lcltX9yP9WgQ9/LeR0bUTRVI/X7XVkrXs0nKePnHsIG2eWe2
	lz6cC2JYjfyGu9lhvlQ0HZPlKpJwVYteaqdOO4K6LXhCt+n7DvukHnxk1794oGniBDJo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160715-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160715: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-examine:host-install:broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-cubietruck:host-install(5):broken:heisenbug
    xen-unstable:test-arm64-arm64-xl-seattle:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:debian-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    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-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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-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-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 04 Apr 2021 21:06:33 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-arndale     <job status>                 broken
 test-armhf-armhf-xl-cubietruck    <job status>                 broken
 test-armhf-armhf-libvirt        <job status>                 broken  in 160665
 test-armhf-armhf-xl-credit1     <job status>                 broken  in 160700
 test-armhf-armhf-libvirt-raw    <job status>                 broken  in 160700
 test-armhf-armhf-xl             <job status>                 broken  in 160700
 test-armhf-armhf-xl-credit2     <job status>                 broken  in 160700
 test-armhf-armhf-xl-rtds        <job status>                 broken  in 160700
 test-armhf-armhf-xl-multivcpu    <job status>                 broken in 160700
 test-armhf-armhf-xl-vhd         <job status>                 broken  in 160700
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-vhd      12 debian-di-install        fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale   8 xen-boot       fail in 160665 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     5 host-install(5) broken in 160665 pass in 160715
 test-armhf-armhf-xl          5 host-install(5) broken in 160700 pass in 160715
 test-armhf-armhf-xl-rtds     5 host-install(5) broken in 160700 pass in 160715
 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken in 160700 pass in 160715
 test-armhf-armhf-xl-vhd      5 host-install(5) broken in 160700 pass in 160715
 test-armhf-armhf-xl-credit1  5 host-install(5) broken in 160700 pass in 160715
 test-armhf-armhf-libvirt-raw 5 host-install(5) broken in 160700 pass in 160715
 test-armhf-armhf-examine      5 host-install   broken in 160700 pass in 160715
 test-armhf-armhf-xl-credit2  5 host-install(5) broken in 160700 pass in 160715
 test-armhf-armhf-xl-arndale   5 host-install(5)          broken pass in 160665
 test-armhf-armhf-xl-cubietruck  5 host-install(5)        broken pass in 160681
 test-arm64-arm64-xl-seattle   8 xen-boot         fail in 160665 pass in 160715
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 160665 pass in 160715
 test-armhf-armhf-examine      8 reboot           fail in 160665 pass in 160715
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160665 pass in 160715
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 160665 pass in 160715
 test-armhf-armhf-libvirt      8 xen-boot         fail in 160681 pass in 160715
 test-armhf-armhf-xl-multivcpu 12 debian-install  fail in 160681 pass in 160715
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 160681 pass in 160715
 test-armhf-armhf-xl-credit2  14 guest-start                fail pass in 160665
 test-armhf-armhf-xl           8 xen-boot                   fail pass in 160665
 test-armhf-armhf-xl-rtds      8 xen-boot                   fail pass in 160665
 test-armhf-armhf-libvirt     14 guest-start                fail pass in 160700

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160665 REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 160700 like 160646
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 160700 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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

version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    3 days
Testing same since   160665  2021-04-02 07:40:09 Z    2 days    4 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.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                                  broken  
 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-armhf-armhf-xl-cubietruck                               broken  
 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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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

broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-step test-armhf-armhf-xl-arndale host-install(5)
broken-step test-armhf-armhf-xl-cubietruck host-install(5)
broken-job test-armhf-armhf-libvirt broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-vhd broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-credit2 broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 04 23:56:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 04 Apr 2021 23:56:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105224.201545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTCaq-0004Rp-Id; Sun, 04 Apr 2021 23:55:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105224.201545; Sun, 04 Apr 2021 23:55: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 1lTCaq-0004Ri-Fe; Sun, 04 Apr 2021 23:55:48 +0000
Received: by outflank-mailman (input) for mailman id 105224;
 Sun, 04 Apr 2021 23:55: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 1lTCap-0004Ra-Ca; Sun, 04 Apr 2021 23:55: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 1lTCap-0004ja-0U; Sun, 04 Apr 2021 23:55: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 1lTCao-0008U7-Mv; Sun, 04 Apr 2021 23:55:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTCao-0002Lg-MR; Sun, 04 Apr 2021 23:55: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=VrL8lM+tVh+yHDAX+w46+3m4CEhWfW+jlRIreSgr+do=; b=wWYUgE8jMqF1+YiVPkhuuM/bc+
	Wj6Twp6cXKgH58Aiei/APly0gsLwc/oaIr0cQW/d89CWE4oDi17/RHIQVfK+nIjwSfljMN+bQx0ZK
	XN0ugRqEXlN15QMcF5AreUL1y+2fvMNF+0sdnxPeBf6J1a86f6A3ol275HBJzh65NtRY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160719-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160719: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    qemu-mainline:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    qemu-mainline:build-armhf:<job status>:broken:regression
    qemu-mainline:build-armhf:host-install(4):broken:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt-raw:debian-di-install:fail:regression
    qemu-mainline:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:heisenbug
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:host-install(5):broken:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=50a9b4499ca99a439b400f715f9475b1702f4e87
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 04 Apr 2021 23:55:46 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-rtds        <job status>                 broken
 build-armhf                     <job status>                 broken  in 160704
 build-armhf                4 host-install(4) broken in 160704 REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-armhf-armhf-libvirt-raw 12 debian-di-install        fail REGR. vs. 152631

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

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit2   1 build-check(1)           blocked in 160704 n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)           blocked in 160704 n/a
 test-armhf-armhf-xl-cubietruck  1 build-check(1)         blocked in 160704 n/a
 test-armhf-armhf-xl           1 build-check(1)           blocked in 160704 n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)           blocked in 160704 n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)          blocked in 160704 n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)           blocked in 160704 n/a
 build-armhf-libvirt           1 build-check(1)           blocked in 160704 n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)           blocked in 160704 n/a
 test-armhf-armhf-libvirt      1 build-check(1)           blocked in 160704 n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)           blocked in 160704 n/a
 test-armhf-armhf-xl-rtds      5 host-install(5)       broken blocked in 152631
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                50a9b4499ca99a439b400f715f9475b1702f4e87
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  227 days
Failing since        152659  2020-08-21 14:07:39 Z  226 days  426 attempts
Testing same since   160685  2021-04-03 01:07:58 Z    1 days    3 attempts

------------------------------------------------------------
473 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     broken  
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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-rtds broken
broken-step test-armhf-armhf-xl-rtds host-install(5)
broken-job build-armhf broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 05 01:01:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 01:01:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105231.201559 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTDce-00083t-NZ; Mon, 05 Apr 2021 01:01:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105231.201559; Mon, 05 Apr 2021 01:01: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 1lTDce-000830-KH; Mon, 05 Apr 2021 01:01:44 +0000
Received: by outflank-mailman (input) for mailman id 105231;
 Mon, 05 Apr 2021 01:01: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 1lTDcc-0007GT-IR; Mon, 05 Apr 2021 01:01: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 1lTDcc-00043F-7g; Mon, 05 Apr 2021 01:01: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 1lTDcb-0002R8-V2; Mon, 05 Apr 2021 01:01:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTDcb-0000CI-UZ; Mon, 05 Apr 2021 01: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>
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=wG6NxV5BnQrGLjEo7xQQKZ3H3Rzbswl5ZpgWf8FwGHk=; b=RLFRzzbt9o4U40oTNs6IEjzU/A
	HUXmO+KQiL0rNZPqAfBFQjM+HYFkP+MQC2wWO0P2+JvXxWMy6dSGv3FsZ7bev337MTpc6cKPLWVjC
	PYgSGyAM0ToDk4wX2NZPXXhhHPFet+RFAXmD6I1UhCnZ5VcLcqb/HBbXb/PuNVzuu6pQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-amd64-libvirt-pair
Message-Id: <E1lTDcb-0000CI-UZ@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 05 Apr 2021 01:01:41 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-amd64-libvirt-pair
testid guest-start/debian

Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160735/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.guest-start--debian.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.guest-start--debian --summary-out=tmp/160735.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-libvirt-pair guest-start/debian
Searching for failure / basis pass:
 160650 fail [dst_host=fiano0,src_host=fiano1] / 160125 [dst_host=albana0,src_host=albana1] 160119 [dst_host=elbling1,src_host=elbling0] 160113 [dst_host=godello1,src_host=godello0] 160104 [dst_host=godello0,src_host=godello1] 160097 [dst_host=chardonnay1,src_host=chardonnay0] 160091 [dst_host=chardonnay0,src_host=chardonnay1] 160088 [dst_host=albana1,src_host=albana0] 160082 [dst_host=pinot0,src_host=pinot1] 160079 [dst_host=elbling0,src_host=elbling1] 160070 [dst_host=godello1,src_host=godello\
 0] 160066 [dst_host=fiano1,src_host=fiano0] 160002 ok.
Failure / basis pass flights: 160650 / 160002
(tree with no url: minios)
Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 00084bab87c43be20638de7f191d1a1faed134cc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
Basis pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/libvirt.git#2c846fa6bcc11929c9fb857a22430fb9945654ad-2c846fa6bcc11929c9fb857a22430fb9945654ad https://gitlab.com/keycodemap/keycodemapdb.git#27acf0ef828bf719b2053ba398b195829413dbdd-27acf0ef828bf719b2053ba398b195829413dbdd git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\
 dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-62bad17dcae18f55cb3bdc19909543dfdf928a2b git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#6f34661b6c97a37a5efc27d31c037ddeda4547e2-00084bab87c43be20638de7f191d1a1faed134cc git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ec\
 ef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#e4bdcc8aef6707027168ea29caed844a7da67b4d-90629587e16e2efdb61da77f25c25fba3c4a5fd7
Loaded 35153 nodes in revision graph
Searching for test results:
 159947 [dst_host=albana0,src_host=albana1]
 160002 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
 160048 []
 160050 []
 160057 []
 160062 []
 160064 []
 160066 [dst_host=fiano1,src_host=fiano0]
 160070 [dst_host=godello1,src_host=godello0]
 160079 [dst_host=elbling0,src_host=elbling1]
 160082 [dst_host=pinot0,src_host=pinot1]
 160088 [dst_host=albana1,src_host=albana0]
 160091 [dst_host=chardonnay0,src_host=chardonnay1]
 160097 [dst_host=chardonnay1,src_host=chardonnay0]
 160104 [dst_host=godello0,src_host=godello1]
 160113 [dst_host=godello1,src_host=godello0]
 160119 [dst_host=elbling1,src_host=elbling0]
 160125 [dst_host=albana0,src_host=albana1]
 160134 fail irrelevant
 160147 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 00084bab87c43be20638de7f191d1a1faed134cc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160695 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
 160697 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 00084bab87c43be20638de7f191d1a1faed134cc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160698 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160699 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160701 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160702 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 69259911f948ad2755bd1f2c999dd60ac322c890 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160703 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160705 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 81cbfd5088690c53541ffd0d74851c8ab055a829 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160706 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160707 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160708 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e31b3a5c34c6e5be7ef60773e607f189eaa15f3 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160710 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2e51b27fed31eb7b2a2cb4245806c8c7859207f7 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0693602a23276b076a679b1e7ed9125a444336b6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160712 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 51204c2f188ec1e2a38f14718d38a3772f850a4b b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160713 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 757acb9a8295e8be4a37b2cfc1cd947e357fd29c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160714 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 dbcbda2cd846ab70bb25418f246604d0b546505f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160717 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160718 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 549d039667b92f6ff86fac1948d61ac558026996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160720 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 773b0bc2838ede154c6de9d78401b91fafa91062 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 56b89f455894e4628ad7994fe5dd348145d1a9c5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160722 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 313d86c956d4599054a9dcd524668f67797d317a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5e8892db93f3fb6a7221f2d47f3c952a7e489737 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160723 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 146f720c55637410062041f68dc908645cd18aaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160725 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160726 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 516990f4df4f7bf9f86d38af71ead7175df15c19 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160728 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160729 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160730 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160731 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160732 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160734 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160735 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160002 (pass), for basis pass
 Result found: flight 160650 (fail), for basis failure
 Repro found: flight 160695 (pass), for basis pass
 Repro found: flight 160697 (fail), for basis failure
 0 revisions at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 160729 (pass), for last pass
 Result found: flight 160730 (fail), for first failure
 Repro found: flight 160731 (pass), for last pass
 Repro found: flight 160732 (fail), for first failure
 Repro found: flight 160734 (pass), for last pass
 Repro found: flight 160735 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160735/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-libvirt-pair.guest-start--debian.{dot,ps,png,html,svg}.
----------------------------------------
160735: tolerable FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-amd64-libvirt-pair 25 guest-start/debian     fail baseline untested


jobs:
 build-amd64-libvirt                                          pass    
 test-amd64-amd64-libvirt-pair                                fail    


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

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

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

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



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 02:53:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 02:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105237.201578 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTFMt-00011s-B9; Mon, 05 Apr 2021 02:53:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105237.201578; Mon, 05 Apr 2021 02:53:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTFMt-00011j-2s; Mon, 05 Apr 2021 02:53:35 +0000
Received: by outflank-mailman (input) for mailman id 105237;
 Mon, 05 Apr 2021 02:53: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 1lTFMr-00011b-Gc; Mon, 05 Apr 2021 02:53: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 1lTFMr-0005YO-6I; Mon, 05 Apr 2021 02:53: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 1lTFMq-0008Aq-RY; Mon, 05 Apr 2021 02:53:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTFMq-0000Ox-Qm; Mon, 05 Apr 2021 02: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=MNFpkNxPxem0eAcZcw1pM7ToFXeBz7WFcdoXI8SiwjI=; b=DwymG0407FeL707uhWmhe60rR9
	m4jhLN0MBti6j8yrkR5SLifC44Sf8L+eEPK680jmbIWu2NYqSi1Qz85DQQ5x7YGuuJ3xaU7XSt9eb
	c9vBm7liurvykHKgP4JpbizVjJzi96s1DbMKvgOn4jsfPnLSIVTH2nGpwPhXlBgIIWv4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160724-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160724: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:guests-nbd-mirror/debian:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 05 Apr 2021 02:53:32 +0000

flight 160724 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160724/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken  in 160709
 build-armhf                4 host-install(4) broken in 160709 REGR. vs. 159418
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160709 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian fail in 160709 pass in 160724
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160709

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   47 days
Failing since        160128  2021-03-18 14:36:18 Z   17 days   21 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   15 days   19 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      pass    


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

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

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

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

broken-job build-armhf broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 05 05:14:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 05:14:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105248.201605 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTHYb-0005U0-PN; Mon, 05 Apr 2021 05:13:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105248.201605; Mon, 05 Apr 2021 05:13: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 1lTHYb-0005Tt-M7; Mon, 05 Apr 2021 05:13:49 +0000
Received: by outflank-mailman (input) for mailman id 105248;
 Mon, 05 Apr 2021 05:13: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 1lTHYb-0005Tl-1J; Mon, 05 Apr 2021 05:13: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 1lTHYa-0000Jp-Mg; Mon, 05 Apr 2021 05:13: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 1lTHYa-0006CK-Aw; Mon, 05 Apr 2021 05:13:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTHYa-00029l-AU; Mon, 05 Apr 2021 05: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=uL5kZ5fO7VICHVwJ1LB2BS7lEz0p5X7JJTk4txpF3yc=; b=N03LhDTbSB5w6nkHsOpWrAEX9F
	+LEdS7E6gnag3y6fKo6qS3hWCN9LMzDv9Dz1PEn90ijaZ2MjZXqPsQ0fp6tV1hwVXfIhrSEn0UDjT
	6ZsfUodft70HB84yHPg/kSgPHvtJhAwT9Jp+KDmvAt935yZytJ859RNFoT5m+kIut1RI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160727-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160727: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    linux-linus:test-armhf-armhf-libvirt:<job status>:broken:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-armhf-armhf-xl-credit1:debian-install:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-linus:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-localmigrate/x10:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:host-install(5):broken:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:host-install(5):broken:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-vhd: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-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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: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
X-Osstest-Versions-This:
    linux=2023a53bdf41b7646b1d384b6816af06309f73a5
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 05 Apr 2021 05:13:48 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-cubietruck    <job status>                broken in 160711
 test-armhf-armhf-xl-multivcpu    <job status>                 broken in 160711
 test-armhf-armhf-xl-rtds        <job status>                 broken  in 160711
 test-armhf-armhf-xl-credit2     <job status>                 broken  in 160711
 test-armhf-armhf-libvirt        <job status>                 broken  in 160711
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop     fail in 160711 REGR. vs. 152332

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1  12 debian-install   fail in 160711 pass in 160727
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160711 pass in 160727
 test-armhf-armhf-xl-vhd     12 debian-di-install fail in 160711 pass in 160727
 test-armhf-armhf-libvirt-raw 12 debian-di-install fail in 160711 pass in 160727
 test-amd64-amd64-i386-pvgrub 19 guest-localmigrate/x10     fail pass in 160711

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt  5 host-install(5) broken in 160711 blocked in 152332
 test-armhf-armhf-xl-rtds  5 host-install(5) broken in 160711 blocked in 152332
 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken in 160711 blocked in 152332
 test-armhf-armhf-xl-credit2 5 host-install(5) broken in 160711 blocked in 152332
 test-armhf-armhf-xl-cubietruck 5 host-install(5) broken in 160711 blocked in 152332
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                2023a53bdf41b7646b1d384b6816af06309f73a5
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  247 days
Failing since        152366  2020-08-01 20:49:34 Z  246 days  419 attempts
Testing same since   160711  2021-04-04 00:11:23 Z    1 days    2 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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-cubietruck broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-libvirt broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 05 09:08:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 09:08:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105279.201631 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTLDG-0000EA-H5; Mon, 05 Apr 2021 09:08:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105279.201631; Mon, 05 Apr 2021 09:08: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 1lTLDG-0000E3-Dx; Mon, 05 Apr 2021 09:08:02 +0000
Received: by outflank-mailman (input) for mailman id 105279;
 Mon, 05 Apr 2021 09:08: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 1lTLDF-0000Dv-Jx; Mon, 05 Apr 2021 09:08: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 1lTLDF-0004cd-8N; Mon, 05 Apr 2021 09:08: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 1lTLDF-0001Fp-1p; Mon, 05 Apr 2021 09:08:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTLDF-0001wo-1J; Mon, 05 Apr 2021 09:08: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=2O96qeXtOV6pU5R+WsFNT1foxV9bzQKMn1WXKTqBrxY=; b=UuP12rfXo8dBOuxIZ7p6fRsiFH
	l9EiUf1SFczHgfCvW36EUjmP3co3vX7pzFYl0xJnBn9X+A0Ouma34uOMM8bVleb3GMdM6URmtQp45
	Wha8EUVRLMzTzkBNwrV6UnpK1fZ2h8IvVFUQC5+Svsf+QG20bHb026mtJNRcoJ1/LdkE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160740-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160740: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=2fc3a704e7083afab0537cf0777521afa9cc1db6
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 05 Apr 2021 09:08:01 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              2fc3a704e7083afab0537cf0777521afa9cc1db6
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  269 days
Failing since        151818  2020-07-11 04:18:52 Z  268 days  261 attempts
Testing same since   160661  2021-04-02 04:19:00 Z    3 days    4 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 05 10:19:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 10:19:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105295.201647 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTMKI-0006H0-5f; Mon, 05 Apr 2021 10:19:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105295.201647; Mon, 05 Apr 2021 10: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 1lTMKI-0006Gt-2P; Mon, 05 Apr 2021 10:19:22 +0000
Received: by outflank-mailman (input) for mailman id 105295;
 Mon, 05 Apr 2021 10:19: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 1lTMKH-0006Gl-0j; Mon, 05 Apr 2021 10:19: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 1lTMKG-0005pH-NE; Mon, 05 Apr 2021 10: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 1lTMKG-0003dV-DS; Mon, 05 Apr 2021 10:19:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTMKG-0008W1-Cx; Mon, 05 Apr 2021 10: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=sN7dOpD1lbgDwIwMt30mLdh0we54FItkjRp2vOjTWfE=; b=oh4SxP4xWKAJVB87giD4qa8S/I
	8YsAS4dw4F7ir0VPNw7za7QLnsEytKBrbvKQk6jFYXmY9SyQY6uuGOrvdaXQec+RapLgUv5H0AWav
	iSMLrgUphBcVPmYoGzhvZdTDfbNjtp+j3/Nkh+aFMZxadbKict717yjHAreteEYZHaws=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160733-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160733: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start.2:fail:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-examine:host-install:broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-cubietruck:host-install(5):broken:heisenbug
    xen-unstable:test-arm64-arm64-xl-seattle:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-armhf-armhf-libvirt-raw: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-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-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-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-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-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 05 Apr 2021 10:19:20 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken  in 160665
 test-armhf-armhf-libvirt-raw    <job status>                 broken  in 160700
 test-armhf-armhf-xl             <job status>                 broken  in 160700
 test-armhf-armhf-xl-rtds        <job status>                 broken  in 160700
 test-armhf-armhf-xl-credit1     <job status>                 broken  in 160700
 test-armhf-armhf-xl-credit2     <job status>                 broken  in 160700
 test-armhf-armhf-xl-multivcpu    <job status>                 broken in 160700
 test-armhf-armhf-xl-vhd         <job status>                 broken  in 160700
 test-armhf-armhf-xl-cubietruck    <job status>                broken in 160715
 test-armhf-armhf-xl-arndale     <job status>                 broken  in 160715
 test-armhf-armhf-xl-arndale  19 guest-start.2            fail REGR. vs. 160646
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-vhd     17 guest-start/debian.repeat fail REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     5 host-install(5) broken in 160665 pass in 160733
 test-armhf-armhf-xl          5 host-install(5) broken in 160700 pass in 160733
 test-armhf-armhf-xl-rtds     5 host-install(5) broken in 160700 pass in 160733
 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken in 160700 pass in 160733
 test-armhf-armhf-xl-vhd      5 host-install(5) broken in 160700 pass in 160733
 test-armhf-armhf-xl-credit1  5 host-install(5) broken in 160700 pass in 160733
 test-armhf-armhf-libvirt-raw 5 host-install(5) broken in 160700 pass in 160733
 test-armhf-armhf-examine      5 host-install   broken in 160700 pass in 160733
 test-armhf-armhf-xl-credit2  5 host-install(5) broken in 160700 pass in 160733
 test-armhf-armhf-xl-arndale  5 host-install(5) broken in 160715 pass in 160733
 test-armhf-armhf-xl-cubietruck 5 host-install(5) broken in 160715 pass in 160733
 test-arm64-arm64-xl-seattle   8 xen-boot         fail in 160665 pass in 160733
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 160665 pass in 160733
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 160665 pass in 160733
 test-armhf-armhf-examine      8 reboot           fail in 160665 pass in 160733
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 160665 pass in 160733
 test-armhf-armhf-xl           8 xen-boot         fail in 160715 pass in 160733
 test-armhf-armhf-libvirt     14 guest-start      fail in 160715 pass in 160733
 test-armhf-armhf-xl-vhd     12 debian-di-install fail in 160715 pass in 160733
 test-armhf-armhf-xl-credit2  14 guest-start                fail pass in 160665
 test-armhf-armhf-xl-rtds      8 xen-boot                   fail pass in 160665
 test-armhf-armhf-libvirt     18 guest-start/debian.repeat  fail pass in 160700
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 160715
 test-armhf-armhf-xl-credit1  18 guest-start/debian.repeat  fail pass in 160715
 test-armhf-armhf-libvirt-raw 12 debian-di-install          fail pass in 160715

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160665 REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160665 like 160646
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160665 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-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-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-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-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-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-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    3 days
Testing same since   160665  2021-04-02 07:40:09 Z    3 days    5 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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

broken-job test-armhf-armhf-libvirt broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-vhd broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 05 13:29:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 13:29:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105338.201674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTPHz-0005sQ-JJ; Mon, 05 Apr 2021 13:29:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105338.201674; Mon, 05 Apr 2021 13:29: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 1lTPHz-0005sJ-Fn; Mon, 05 Apr 2021 13:29:11 +0000
Received: by outflank-mailman (input) for mailman id 105338;
 Mon, 05 Apr 2021 13:29: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 1lTPHy-0005sB-4G; Mon, 05 Apr 2021 13:29: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 1lTPHx-0000Od-SJ; Mon, 05 Apr 2021 13:29: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 1lTPHx-00067Q-HR; Mon, 05 Apr 2021 13:29:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTPHx-0005ir-Gv; Mon, 05 Apr 2021 13:29: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=nAnIy3DgSys8KBVaeOz8EjKmpkCDFAC74rDL8PxDl2g=; b=CDG2B5U/QfB1fuk7zpOmpgl1tQ
	QGKZJiT2CM2CeJdF0hjDqqbxLTnek/Q3JDqwWk1fPfU+qvEmledsNl26GE/W+DHXtxjeK4hjaKCkv
	unTfFG3mEbfljzyTMhxNyI1R33zVnDAuH2F6i2w3D+++Cf9IC0CGgqXtkqgxR90sDySY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160736-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160736: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=11577d85b1a6939380bd16ed9a861653194de044
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 05 Apr 2021 13:29:09 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                11577d85b1a6939380bd16ed9a861653194de044
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  228 days
Failing since        152659  2020-08-21 14:07:39 Z  226 days  427 attempts
Testing same since   160736  2021-04-05 00:08:23 Z    0 days    1 attempts

------------------------------------------------------------
473 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 140239 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:23:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105384.201713 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTR4K-0007tD-In; Mon, 05 Apr 2021 15:23:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105384.201713; Mon, 05 Apr 2021 15:23:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTR4K-0007t6-FB; Mon, 05 Apr 2021 15:23:12 +0000
Received: by outflank-mailman (input) for mailman id 105384;
 Mon, 05 Apr 2021 15:23: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 1lTR4I-0007t0-Ra
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:23: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 1lTR4H-0002IC-6z; Mon, 05 Apr 2021 15:23:09 +0000
Received: from 54-240-197-232.amazon.com ([54.240.197.232]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTR4G-0002lq-Ta; Mon, 05 Apr 2021 15:23:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=W5ihRJJDL5BZpDAbRofYPevwvtdzt1aQrYD3bamf+Q4=; b=bkwMAbUFUcf5YP7p3q06OV9/QJ
	5OuvBmw2ujcxYRBdpPNXL1wSSgGhW2U419DDr0q0DAe2o/1JTtXIFxdnwj9WngvUCYiGsA+DWTriD
	WpPCnFf0vnGVT2fNY6AzxMqlr3tA/U2D9U5ykeFaEB1gzDfxofcBVGx/OzyAan7Qf0Ik=;
Subject: Re: [PATCH v3 0/3] Generic SMMU Bindings
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel <xen-devel@lists.xenproject.org>
Cc: Bertrand.Marquis@arm.com, Volodymyr_Babchuk@epam.com,
 rahul.singh@arm.com, brian.woods@xilinx.com
References: <alpine.DEB.2.21.2101261435550.2568@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <80de3eb5-b338-af4e-42eb-d358f51d0bd7@xen.org>
Date: Mon, 5 Apr 2021 16:23:06 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2101261435550.2568@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

On 26/01/2021 22:58, Stefano Stabellini wrote:
> Hi all,

Hi Stefano,

> This series introduces support for the generic SMMU bindings to
> xen/drivers/passthrough/arm/smmu.c.
> 
> The last version of the series was
> https://marc.info/?l=xen-devel&m=159539053406643
Some changes in the SMMU drivers went in recently. I believe this 
touched similar area to this series. Would you be able to check that 
this series still work as intented?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105395.201745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbO-00029S-UG; Mon, 05 Apr 2021 15:57:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105395.201745; Mon, 05 Apr 2021 15:57:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbO-00029F-Oe; Mon, 05 Apr 2021 15:57:22 +0000
Received: by outflank-mailman (input) for mailman id 105395;
 Mon, 05 Apr 2021 15:57: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 1lTRbN-00027f-5b
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbM-0002nH-LS; Mon, 05 Apr 2021 15:57:20 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbM-00053b-Cu; Mon, 05 Apr 2021 15:57:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=FL2yQM6+D2+NHIgkPxbbHrXWAKmxpnXf59OkWXn01Qw=; b=olnT+4wdfgOmsFVK0XVuv2Zrh
	FMugV25jq7TYAhXZfOZEa1zDLyx93/ejxZ9Kv3epsIjZOdLbwoUjxytoUG0qNy0SpfHXWj414Viu6
	dMzKuBnjkGhNhdaD4dSgcQkaO8bEOSxwtvGYoAOt7gg6LdiOOvfVpuZRzaIu/bgntk344=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Dario Faggioli <dfaggioli@suse.com>
Subject: [PATCH 02/14] xen/sched: Constify name and opt_name in struct scheduler
Date: Mon,  5 Apr 2021 16:57:01 +0100
Message-Id: <20210405155713.29754-3-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Both name and opt_name are pointing to literal string. So mark both of
the fields as const.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/common/sched/private.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/common/sched/private.h b/xen/common/sched/private.h
index 92d0d4961063..a870320146ef 100644
--- a/xen/common/sched/private.h
+++ b/xen/common/sched/private.h
@@ -272,8 +272,8 @@ static inline spinlock_t *pcpu_schedule_trylock(unsigned int cpu)
 }
 
 struct scheduler {
-    char *name;             /* full name for this scheduler      */
-    char *opt_name;         /* option name for this scheduler    */
+    const char *name;       /* full name for this scheduler      */
+    const char *opt_name;   /* option name for this scheduler    */
     unsigned int sched_id;  /* ID for this scheduler             */
     void *sched_data;       /* global data pointer               */
     struct cpupool *cpupool;/* points to this scheduler's pool   */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105394.201732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbO-00028K-Ff; Mon, 05 Apr 2021 15:57:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105394.201732; Mon, 05 Apr 2021 15:57:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbO-00028B-91; Mon, 05 Apr 2021 15:57:22 +0000
Received: by outflank-mailman (input) for mailman id 105394;
 Mon, 05 Apr 2021 15:57: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 1lTRbM-00027a-OL
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbL-0002nA-Ls; Mon, 05 Apr 2021 15:57:19 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbL-00053b-CT; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=wM0arhOfbdXKBnD+kuNFkMVWLt0+0LE5S6yLwtX1v4g=; b=yK+fPDTfexuES8exRK8gSibPD
	5zO9GPsi3gdF5Mf4ClqCwHiYojBQ0lPqt3biOe2NYHQS8U7TkQpf07ciBZ/Uupf5iWlihZ4qUJVet
	fFfEDFAbtETs+5V43M++oc3DKQHkyR0VSuHoR/nXgt89UcadmAND2MN1cuB/X065weMpE=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 01/14] xen: Constify the second parameter of rangeset_new()
Date: Mon,  5 Apr 2021 16:57:00 +0100
Message-Id: <20210405155713.29754-2-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

The string 'name' will never get modified by the function, so mark it
as const.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/common/rangeset.c      | 2 +-
 xen/include/xen/rangeset.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/common/rangeset.c b/xen/common/rangeset.c
index 4ebba30ba303..d997d7bce9e2 100644
--- a/xen/common/rangeset.c
+++ b/xen/common/rangeset.c
@@ -421,7 +421,7 @@ bool_t rangeset_is_empty(
 }
 
 struct rangeset *rangeset_new(
-    struct domain *d, char *name, unsigned int flags)
+    struct domain *d, const char *name, unsigned int flags)
 {
     struct rangeset *r;
 
diff --git a/xen/include/xen/rangeset.h b/xen/include/xen/rangeset.h
index 5f62a9797170..135f33f6066f 100644
--- a/xen/include/xen/rangeset.h
+++ b/xen/include/xen/rangeset.h
@@ -36,7 +36,7 @@ void rangeset_domain_destroy(
  * rangeset_destroy(r).
  */
 struct rangeset *rangeset_new(
-    struct domain *d, char *name, unsigned int flags);
+    struct domain *d, const char *name, unsigned int flags);
 void rangeset_destroy(
     struct rangeset *r);
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105397.201767 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbR-0002D7-M5; Mon, 05 Apr 2021 15:57:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105397.201767; Mon, 05 Apr 2021 15:57:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbR-0002Cs-Cc; Mon, 05 Apr 2021 15:57:25 +0000
Received: by outflank-mailman (input) for mailman id 105397;
 Mon, 05 Apr 2021 15:57: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 1lTRbQ-0002BR-Dp
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbP-0002nu-J8; Mon, 05 Apr 2021 15:57:23 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbP-00053b-Ac; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=lOO8LxgjP7mfnbj4AR6O+AWqc4xBBvOnf0MxiUn+xT8=; b=nzCnexDfy6V5fekkYmcoVJHtI
	x8Fw26jDm+t15L03/PZnBhfbg0aMQoaEkyJzu7NnS9z0XgKqddyUx8/jOSxhsR52zgpVzT3wS5nnG
	Q0TQ/MaTBPAaO7eKnps6yl0ItuhcZXqeY9CDzSPWD1TnNwkO8TDdQUCPnCHTVTfs7e6Ds=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 04/14] xen/char: console: Use const whenever we point to literal strings
Date: Mon,  5 Apr 2021 16:57:03 +0100
Message-Id: <20210405155713.29754-5-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

literal strings are not meant to be modified. So we should use const
char * rather than char * when we want to store a pointer to them.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/drivers/char/console.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
index 23583751709c..72a7cd1c32c1 100644
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -168,7 +168,7 @@ static int parse_guest_loglvl(const char *s);
 static char xenlog_val[LOGLVL_VAL_SZ];
 static char xenlog_guest_val[LOGLVL_VAL_SZ];
 
-static char *lvl2opt[] = { "none", "error", "warning", "info", "all" };
+static const char *lvl2opt[] = { "none", "error", "warning", "info", "all" };
 
 static void xenlog_update_val(int lower, int upper, char *val)
 {
@@ -262,7 +262,7 @@ static int parse_guest_loglvl(const char *s)
     return ret;
 }
 
-static char *loglvl_str(int lvl)
+static const char *loglvl_str(int lvl)
 {
     switch ( lvl )
     {
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105393.201724 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbO-00027r-4H; Mon, 05 Apr 2021 15:57:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105393.201724; Mon, 05 Apr 2021 15:57:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbO-00027k-1O; Mon, 05 Apr 2021 15:57:22 +0000
Received: by outflank-mailman (input) for mailman id 105393;
 Mon, 05 Apr 2021 15:57: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 1lTRbM-00027V-9M
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbK-0002n6-Cy; Mon, 05 Apr 2021 15:57:18 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbJ-00053b-TX; Mon, 05 Apr 2021 15:57: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=Message-Id:Date:Subject:Cc:To:From;
	bh=1GqICW/O9fKSb94+mzq/HGQFUX5If7mWeUd6pvOkBFY=; b=bvu0XCkxaPx45nkPtYZpTbXk0g
	swkcbZyG1lETz8WlL3dplJSKeAnjacM5cZurrefJ2FyB1+5Is9apqGs8Dqk4un0JHN/MKM/oMu5dU
	ZMRORl0p7ZC0GsS+PE9efyXL9D/F0pj5Dpy3n/zTjzVhKQiEGll+aOI0POhkL8F2zbik=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Dario Faggioli <dfaggioli@suse.com>,
	Tim Deegan <tim@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH 00/14] Use const whether we point to literal strings (take 1)
Date: Mon,  5 Apr 2021 16:56:59 +0100
Message-Id: <20210405155713.29754-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

Hi all,

By default, both Clang and GCC will happily compile C code where
non-const char * point to literal strings. This means the following
code will be accepted:

    char *str = "test";

    str[0] = 'a';

Literal strings will reside in rodata, so they are not modifiable.
This will result to an permission fault at runtime if the permissions
are enforced in the page-tables (this is the case in Xen).

I am not aware of code trying to modify literal strings in Xen.
However, there is a frequent use of non-const char * to point to
literal strings. Given the size of the codebase, there is a risk
to involuntarily introduce code that will modify literal strings.

Therefore it would be better to enforce using const when pointing
to such strings. Both GCC and Clang provide an option to warn
for such case (see -Wwrite-strings) and therefore could be used
by Xen.

This series doesn't yet make use of -Wwrite-strings because
the tree is not fully converted. Instead, it contains some easy
and likely non-controversial use const in the code.

The major blockers to enable -Wwrite-strings are the following:
    - xen/common/efi: union string is used in both const and
    non-const situation. It doesn't feel right to specific one member
    const and the other non-const.
    - libxl: the major block is the flexarray framework as we would use
    it with string (now const char*). I thought it would be possible to
    make the interface const, but it looks like there are a couple of
    places where we need to modify the content (such as in
    libxl_json.c).

Ideally, I would like to have -Wwrite-strings unconditionally used
tree-wide. But, some of the area may required some heavy refactoring.

One solution would be to enable it tree-wide but turned it off at a
directroy/file level.

Any opinions?

Cheers,

Julien Grall (14):
  xen: Constify the second parameter of rangeset_new()
  xen/sched: Constify name and opt_name in struct scheduler
  xen/x86: shadow: The return type of sh_audit_flags() should be const
  xen/char: console: Use const whenever we point to literal strings
  tools/libs: guest: Use const whenever we point to literal strings
  tools/libs: stat: Use const whenever we point to literal strings
  tools/xl: Use const whenever we point to literal strings
  tools/firmware: hvmloader: Use const in __bug() and __assert_failed()
  tools/console: Use const whenever we point to literal strings
  tools/kdd: Use const whenever we point to literal strings
  tools/misc: Use const whenever we point to literal strings
  tools/top: The string parameter in set_prompt() and set_delay() should
    be const
  tools/xenmon: xenbaked: Mark const the field text in stat_map_t
  tools/xentrace: Use const whenever we point to literal strings

 tools/console/client/main.c         |  4 +-
 tools/console/daemon/io.c           | 10 ++--
 tools/debugger/kdd/kdd.c            | 10 ++--
 tools/firmware/hvmloader/util.c     |  4 +-
 tools/firmware/hvmloader/util.h     |  4 +-
 tools/include/xenguest.h            | 10 ++--
 tools/libs/guest/xg_dom_core.c      |  8 ++--
 tools/libs/guest/xg_dom_elfloader.c |  4 +-
 tools/libs/guest/xg_dom_hvmloader.c |  2 +-
 tools/libs/guest/xg_dom_x86.c       |  9 ++--
 tools/libs/guest/xg_private.h       |  2 +-
 tools/libs/stat/xenstat_linux.c     |  4 +-
 tools/libs/stat/xenstat_qmp.c       | 12 ++---
 tools/misc/xen-detect.c             |  2 +-
 tools/misc/xenhypfs.c               |  6 +--
 tools/xenmon/xenbaked.c             |  2 +-
 tools/xentop/xentop.c               | 12 ++---
 tools/xentrace/xenalyze.c           | 71 +++++++++++++++--------------
 tools/xentrace/xenctx.c             |  4 +-
 tools/xl/xl.h                       |  8 ++--
 tools/xl/xl_console.c               |  2 +-
 tools/xl/xl_utils.c                 |  4 +-
 tools/xl/xl_utils.h                 |  4 +-
 xen/arch/x86/mm/shadow/multi.c      | 12 ++---
 xen/common/rangeset.c               |  2 +-
 xen/common/sched/private.h          |  4 +-
 xen/drivers/char/console.c          |  4 +-
 xen/include/xen/rangeset.h          |  2 +-
 28 files changed, 113 insertions(+), 109 deletions(-)

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105396.201761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbR-0002CF-5O; Mon, 05 Apr 2021 15:57:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105396.201761; Mon, 05 Apr 2021 15:57:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbR-0002C7-1f; Mon, 05 Apr 2021 15:57:25 +0000
Received: by outflank-mailman (input) for mailman id 105396;
 Mon, 05 Apr 2021 15:57: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 1lTRbP-0002AY-BS
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbO-0002nT-3j; Mon, 05 Apr 2021 15:57:22 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbN-00053b-Rj; Mon, 05 Apr 2021 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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=+qpe2Q4MYVn+N9AOgWxQnBcvE9Q4UEVlLyVO20fEAig=; b=0s6PRARc2L7Ols9se5qmubITO
	gCphmgCs7lKIQzI5hW9F5lftz96cYZXIWqh44Nvg3k88t04xh2WXceIGv1LD5/oFrnBHoWEiz1uBO
	WH5HjSuPJUx+pmj180WxZlco8v+Pv8RpV0pKgXiRbET7wZNbUDGLZDTU9xIQ3kSC7NJFE=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Tim Deegan <tim@xen.org>,
	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 03/14] xen/x86: shadow: The return type of sh_audit_flags() should be const
Date: Mon,  5 Apr 2021 16:57:02 +0100
Message-Id: <20210405155713.29754-4-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

The function sh_audit_flags() is returning pointer to literal strings.
They should not be modified, so the return is now const and this is
propagated to the callers.

Take the opportunity to fix the coding style in the declaration of
sh_audit_flags.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/arch/x86/mm/shadow/multi.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/mm/shadow/multi.c b/xen/arch/x86/mm/shadow/multi.c
index 9b43cb116c47..0342de81d2c1 100644
--- a/xen/arch/x86/mm/shadow/multi.c
+++ b/xen/arch/x86/mm/shadow/multi.c
@@ -4290,8 +4290,8 @@ static void sh_pagetable_dying(paddr_t gpa)
     done = 1;                                                           \
 } while (0)
 
-static char * sh_audit_flags(struct vcpu *v, int level,
-                              int gflags, int sflags)
+static const char *sh_audit_flags(struct vcpu *v, int level,
+                                  int gflags, int sflags)
 /* Common code for auditing flag bits */
 {
     if ( (sflags & _PAGE_PRESENT) && !(gflags & _PAGE_PRESENT) )
@@ -4324,7 +4324,7 @@ int sh_audit_l1_table(struct vcpu *v, mfn_t sl1mfn, mfn_t x)
     mfn_t mfn, gmfn, gl1mfn;
     gfn_t gfn;
     p2m_type_t p2mt;
-    char *s;
+    const char *s;
     int done = 0;
 
     /* Follow the backpointer */
@@ -4419,7 +4419,7 @@ int sh_audit_l2_table(struct vcpu *v, mfn_t sl2mfn, mfn_t x)
     mfn_t mfn, gmfn, gl2mfn;
     gfn_t gfn;
     p2m_type_t p2mt;
-    char *s;
+    const char *s;
     int done = 0;
 
     /* Follow the backpointer */
@@ -4471,7 +4471,7 @@ int sh_audit_l3_table(struct vcpu *v, mfn_t sl3mfn, mfn_t x)
     mfn_t mfn, gmfn, gl3mfn;
     gfn_t gfn;
     p2m_type_t p2mt;
-    char *s;
+    const char *s;
     int done = 0;
 
     /* Follow the backpointer */
@@ -4521,7 +4521,7 @@ int sh_audit_l4_table(struct vcpu *v, mfn_t sl4mfn, mfn_t x)
     mfn_t mfn, gmfn, gl4mfn;
     gfn_t gfn;
     p2m_type_t p2mt;
-    char *s;
+    const char *s;
     int done = 0;
 
     /* Follow the backpointer */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105398.201784 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbS-0002Gm-Vj; Mon, 05 Apr 2021 15:57:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105398.201784; Mon, 05 Apr 2021 15:57: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 1lTRbS-0002GD-Pd; Mon, 05 Apr 2021 15:57:26 +0000
Received: by outflank-mailman (input) for mailman id 105398;
 Mon, 05 Apr 2021 15:57: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 1lTRbR-0002D6-ES
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbQ-0002o2-JW; Mon, 05 Apr 2021 15:57:24 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbQ-00053b-B0; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=UP5LznC0lJpah31eRGW2Mg+D4mlUlr8pP6zrBCltxpg=; b=fKxVMUNl5gG7H5iOYrMWGq7B/
	4p1nXE90RFkkuduYWN53HB64IKH3pa5RMwTXxDTvi1CUAIJI2YKX22vcUSR5YKlWhBSGMgi5rFup0
	9yKFSloAfysJdwIXEO4F1qE29cF1ODgxDWlpwNnia2kgV1mV3qiiwtwcwRx5t4TsEmLBc=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 05/14] tools/libs: guest: Use const whenever we point to literal strings
Date: Mon,  5 Apr 2021 16:57:04 +0100
Message-Id: <20210405155713.29754-6-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

literal strings are not meant to be modified. So we should use const
*char rather than char * when we want to store a pointer to them.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/include/xenguest.h            | 10 +++++-----
 tools/libs/guest/xg_dom_core.c      |  8 ++++----
 tools/libs/guest/xg_dom_elfloader.c |  4 ++--
 tools/libs/guest/xg_dom_hvmloader.c |  2 +-
 tools/libs/guest/xg_dom_x86.c       |  9 +++++----
 tools/libs/guest/xg_private.h       |  2 +-
 6 files changed, 18 insertions(+), 17 deletions(-)

diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h
index 217022b6e767..a4492038cf3a 100644
--- a/tools/include/xenguest.h
+++ b/tools/include/xenguest.h
@@ -108,7 +108,7 @@ struct xc_dom_image {
 
     /* info from (elf) kernel image */
     struct elf_dom_parms *parms;
-    char *guest_type;
+    const char *guest_type;
 
     /* memory layout */
     struct xc_dom_seg kernel_seg;
@@ -266,8 +266,8 @@ struct xc_dom_arch {
     /* arch-specific memory initialization. */
     int (*meminit) (struct xc_dom_image * dom);
 
-    char *guest_type;
-    char *native_protocol;
+    const char *guest_type;
+    const char *native_protocol;
     int page_shift;
     int sizeof_pfn;
     int p2m_base_supported;
@@ -374,9 +374,9 @@ char *xc_dom_strdup(struct xc_dom_image *dom, const char *str);
 
 /* --- alloc memory pool ------------------------------------------- */
 
-xen_pfn_t xc_dom_alloc_page(struct xc_dom_image *dom, char *name);
+xen_pfn_t xc_dom_alloc_page(struct xc_dom_image *dom, const char *name);
 int xc_dom_alloc_segment(struct xc_dom_image *dom,
-                         struct xc_dom_seg *seg, char *name,
+                         struct xc_dom_seg *seg, const char *name,
                          xen_vaddr_t start, xen_vaddr_t size);
 
 /* --- misc bits --------------------------------------------------- */
diff --git a/tools/libs/guest/xg_dom_core.c b/tools/libs/guest/xg_dom_core.c
index 98ef8e8fc9ca..4918ee517bdd 100644
--- a/tools/libs/guest/xg_dom_core.c
+++ b/tools/libs/guest/xg_dom_core.c
@@ -422,7 +422,7 @@ void *xc_dom_pfn_to_ptr_retcount(struct xc_dom_image *dom, xen_pfn_t pfn,
     struct xc_dom_phys *phys;
     xen_pfn_t offset;
     unsigned int page_shift = XC_DOM_PAGE_SHIFT(dom);
-    char *mode = "unset";
+    const char *mode = "unset";
 
     *count_out = 0;
 
@@ -525,7 +525,7 @@ void *xc_dom_pfn_to_ptr_retcount(struct xc_dom_image *dom, xen_pfn_t pfn,
     return phys->ptr;
 }
 
-static int xc_dom_chk_alloc_pages(struct xc_dom_image *dom, char *name,
+static int xc_dom_chk_alloc_pages(struct xc_dom_image *dom, const char *name,
                                   xen_pfn_t pages)
 {
     unsigned int page_size = XC_DOM_PAGE_SIZE(dom);
@@ -576,7 +576,7 @@ static int xc_dom_alloc_pad(struct xc_dom_image *dom, xen_vaddr_t boundary)
 }
 
 int xc_dom_alloc_segment(struct xc_dom_image *dom,
-                         struct xc_dom_seg *seg, char *name,
+                         struct xc_dom_seg *seg, const char *name,
                          xen_vaddr_t start, xen_vaddr_t size)
 {
     unsigned int page_size = XC_DOM_PAGE_SIZE(dom);
@@ -611,7 +611,7 @@ int xc_dom_alloc_segment(struct xc_dom_image *dom,
     return 0;
 }
 
-xen_pfn_t xc_dom_alloc_page(struct xc_dom_image *dom, char *name)
+xen_pfn_t xc_dom_alloc_page(struct xc_dom_image *dom, const char *name)
 {
     xen_vaddr_t start;
     xen_pfn_t pfn;
diff --git a/tools/libs/guest/xg_dom_elfloader.c b/tools/libs/guest/xg_dom_elfloader.c
index 06e713fe1119..0d6247db5d08 100644
--- a/tools/libs/guest/xg_dom_elfloader.c
+++ b/tools/libs/guest/xg_dom_elfloader.c
@@ -50,8 +50,8 @@ void xc_elf_set_logfile(xc_interface *xch, struct elf_binary *elf,
 
 /* ------------------------------------------------------------------------ */
 
-static char *xc_dom_guest_type(struct xc_dom_image *dom,
-                               struct elf_binary *elf)
+static const char *xc_dom_guest_type(struct xc_dom_image *dom,
+                                     struct elf_binary *elf)
 {
     uint64_t machine = elf_uval(elf, elf->ehdr, e_machine);
 
diff --git a/tools/libs/guest/xg_dom_hvmloader.c b/tools/libs/guest/xg_dom_hvmloader.c
index ec6ebad7fd52..4e6f30858a59 100644
--- a/tools/libs/guest/xg_dom_hvmloader.c
+++ b/tools/libs/guest/xg_dom_hvmloader.c
@@ -130,7 +130,7 @@ static elf_errorstatus xc_dom_parse_hvm_kernel(struct xc_dom_image *dom)
 
 static int module_init_one(struct xc_dom_image *dom,
                            struct xc_hvm_firmware_module *module,
-                           char *name)
+                           const char *name)
 {
     struct xc_dom_seg seg;
     void *dest;
diff --git a/tools/libs/guest/xg_dom_x86.c b/tools/libs/guest/xg_dom_x86.c
index 2953aeb90b35..e379b07f9945 100644
--- a/tools/libs/guest/xg_dom_x86.c
+++ b/tools/libs/guest/xg_dom_x86.c
@@ -1148,11 +1148,12 @@ static int vcpu_hvm(struct xc_dom_image *dom)
 
 /* ------------------------------------------------------------------------ */
 
-static int x86_compat(xc_interface *xch, uint32_t domid, char *guest_type)
+static int x86_compat(xc_interface *xch, uint32_t domid,
+                      const char *guest_type)
 {
     static const struct {
-        char           *guest;
-        uint32_t        size;
+        const char      *guest;
+        uint32_t       size;
     } types[] = {
         { "xen-3.0-x86_32p", 32 },
         { "xen-3.0-x86_64",  64 },
@@ -1664,7 +1665,7 @@ static int bootearly(struct xc_dom_image *dom)
 static int bootlate_pv(struct xc_dom_image *dom)
 {
     static const struct {
-        char *guest;
+        const char *guest;
         unsigned long pgd_type;
     } types[] = {
         { "xen-3.0-x86_32",  MMUEXT_PIN_L2_TABLE},
diff --git a/tools/libs/guest/xg_private.h b/tools/libs/guest/xg_private.h
index 8f9b257a2f3d..25e46d7ce195 100644
--- a/tools/libs/guest/xg_private.h
+++ b/tools/libs/guest/xg_private.h
@@ -43,7 +43,7 @@
 #endif
 
 struct xc_dom_loader {
-    char *name;
+    const char *name;
     /* Sadly the error returns from these functions are not consistent: */
     elf_negerrnoval (*probe) (struct xc_dom_image * dom);
     elf_negerrnoval (*parser) (struct xc_dom_image * dom);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105399.201797 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbU-0002Jr-Cr; Mon, 05 Apr 2021 15:57:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105399.201797; Mon, 05 Apr 2021 15:57: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 1lTRbU-0002Jg-8S; Mon, 05 Apr 2021 15:57:28 +0000
Received: by outflank-mailman (input) for mailman id 105399;
 Mon, 05 Apr 2021 15:57: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 1lTRbS-0002FR-Em
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbR-0002oD-LU; Mon, 05 Apr 2021 15:57:25 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbR-00053b-BX; Mon, 05 Apr 2021 15:57:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=KksYVhRFyICjFP1ckAs027N7azKI8dI/+aHOnCC8ZNM=; b=MD7lFwzB7Qwcvo0bxHk/cU5DD
	RDZ8pugfP5wNpM9iE+LoFxmAAi2+x82jDVBUktTbN6r6/v2vcj9yuZjWSYgpW2W0xRNfbj9t7DzP0
	nQzHyJ7I6AWMzbE+8yGh9lZhyWHM+s2kJjj+joi1uiclMGvy7Yvo8TBfIv8mrZULTD6KY=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 06/14] tools/libs: stat: Use const whenever we point to literal strings
Date: Mon,  5 Apr 2021 16:57:05 +0100
Message-Id: <20210405155713.29754-7-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

literal strings are not meant to be modified. So we should use const
char * rather than char * when we want to store a pointer to them.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/libs/stat/xenstat_linux.c |  4 ++--
 tools/libs/stat/xenstat_qmp.c   | 12 ++++++------
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/tools/libs/stat/xenstat_linux.c b/tools/libs/stat/xenstat_linux.c
index c00b26d4d898..875a0617ade8 100644
--- a/tools/libs/stat/xenstat_linux.c
+++ b/tools/libs/stat/xenstat_linux.c
@@ -66,7 +66,7 @@ static const char PROCNETDEV_HEADER[] =
 
 /* We need to get the name of the bridge interface for use with bonding interfaces */
 /* Use excludeName parameter to avoid adding bridges we don't care about, eg. virbr0 */
-static void getBridge(char *excludeName, char *result, size_t resultLen)
+static void getBridge(const char *excludeName, char *result, size_t resultLen)
 {
 	struct dirent *de;
 	DIR *d;
@@ -113,7 +113,7 @@ static int parseNetDevLine(char *line, char *iface, unsigned long long *rxBytes,
 	int num = 19;
 
 	/* Regular exception to parse all the information from /proc/net/dev line */
-	char *regex = "([^:]*):([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)"
+	const char *regex = "([^:]*):([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)"
 			"[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*"
 			"([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)";
 
diff --git a/tools/libs/stat/xenstat_qmp.c b/tools/libs/stat/xenstat_qmp.c
index 0c5748ba68b3..2205a041313b 100644
--- a/tools/libs/stat/xenstat_qmp.c
+++ b/tools/libs/stat/xenstat_qmp.c
@@ -38,7 +38,7 @@
 
 #include <yajl/yajl_tree.h>
 
-static unsigned char *qmp_query(int, char *);
+static unsigned char *qmp_query(int, const char *);
 
 enum query_blockstats {
     QMP_STATS_RETURN  = 0,
@@ -80,7 +80,7 @@ enum query_block {
 static char *qmp_get_block_image(xenstat_node *node, char *qmp_devname, int qfd)
 {
 	char *tmp, *file = NULL;
-	char *query_block_cmd = "{ \"execute\": \"query-block\" }";
+	const char *query_block_cmd = "{ \"execute\": \"query-block\" }";
 	static const char *const qblock[] = {
 		[ QMP_BLOCK_RETURN  ] = "return",
 		[ QMP_BLOCK_DEVICE  ] = "device",
@@ -264,7 +264,7 @@ done:
 }
 
 /* Write a command via the QMP. Returns number of bytes written */
-static size_t qmp_write(int qfd, char *cmd, size_t cmd_len)
+static size_t qmp_write(int qfd, const char *cmd, size_t cmd_len)
 {
 	size_t pos = 0;
 	ssize_t res;
@@ -317,7 +317,7 @@ static int qmp_read(int qfd, unsigned char **qstats)
 }
 
 /* With the given cmd, query QMP for requested data. Returns allocated buffer containing data or NULL */
-static unsigned char *qmp_query(int qfd, char *cmd)
+static unsigned char *qmp_query(int qfd, const char *cmd)
 {
 	unsigned char *qstats = NULL;
 	int n;
@@ -385,8 +385,8 @@ static int qmp_connect(char *path)
 */
 static void read_attributes_qdisk_dom(xenstat_node *node, domid_t domain)
 {
-	char *cmd_mode = "{ \"execute\": \"qmp_capabilities\" }";
-	char *query_blockstats_cmd = "{ \"execute\": \"query-blockstats\" }";
+	const char *cmd_mode = "{ \"execute\": \"qmp_capabilities\" }";
+	const char *query_blockstats_cmd = "{ \"execute\": \"query-blockstats\" }";
 	unsigned char *qmp_stats, *val;
 	char path[80];
 	int qfd;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105400.201803 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbV-0002LF-09; Mon, 05 Apr 2021 15:57:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105400.201803; Mon, 05 Apr 2021 15:57: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 1lTRbU-0002Kq-MN; Mon, 05 Apr 2021 15:57:28 +0000
Received: by outflank-mailman (input) for mailman id 105400;
 Mon, 05 Apr 2021 15:57: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 1lTRbT-0002Hp-Ab
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbS-0002oL-Nz; Mon, 05 Apr 2021 15:57:26 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbS-00053b-Fh; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=fSnIgvoSjbUt91Rc+3WKbTs8Y6JmyyNkB+9IjjcALAg=; b=49TpKmuxcFkNIHf0NZn/D91QM
	liDzLY1pqQul9K2C/SIHFl+oM8o+pki3Cl4fUQm2psyk8/+nCbY6jUqjIBBEBzoI4Zap7OFnIWMr5
	UKWnKZ9aH40D6z1jqY5HMTS537E5FENgqwyZiQgXenW3kkRonsxeLecm88Ks4xK7sd1Fk=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH 07/14] tools/xl: Use const whenever we point to literal strings
Date: Mon,  5 Apr 2021 16:57:06 +0100
Message-Id: <20210405155713.29754-8-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

literal strings are not meant to be modified. So we should use const
char * rather than char * when we want to store a pointer to them.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/xl/xl.h         | 8 ++++----
 tools/xl/xl_console.c | 2 +-
 tools/xl/xl_utils.c   | 4 ++--
 tools/xl/xl_utils.h   | 4 ++--
 4 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/tools/xl/xl.h b/tools/xl/xl.h
index 137a29077c1e..3052e3db0072 100644
--- a/tools/xl/xl.h
+++ b/tools/xl/xl.h
@@ -21,13 +21,13 @@
 #include <xentoollog.h>
 
 struct cmd_spec {
-    char *cmd_name;
+    const char *cmd_name;
     int (*cmd_impl)(int argc, char **argv);
     int can_dryrun;
     int modifies;
-    char *cmd_desc;
-    char *cmd_usage;
-    char *cmd_option;
+    const char *cmd_desc;
+    const char *cmd_usage;
+    const char *cmd_option;
 };
 
 struct domain_create {
diff --git a/tools/xl/xl_console.c b/tools/xl/xl_console.c
index 4e65d7386733..b27f9e013697 100644
--- a/tools/xl/xl_console.c
+++ b/tools/xl/xl_console.c
@@ -27,7 +27,7 @@ int main_console(int argc, char **argv)
     uint32_t domid;
     int opt = 0, num = 0;
     libxl_console_type type = 0;
-    char *console_names = "pv, serial, vuart";
+    const char *console_names = "pv, serial, vuart";
 
     SWITCH_FOREACH_OPT(opt, "n:t:", NULL, "console", 1) {
     case 't':
diff --git a/tools/xl/xl_utils.c b/tools/xl/xl_utils.c
index 4503ac7ea03c..17489d182954 100644
--- a/tools/xl/xl_utils.c
+++ b/tools/xl/xl_utils.c
@@ -27,7 +27,7 @@
 #include "xl.h"
 #include "xl_utils.h"
 
-void dolog(const char *file, int line, const char *func, char *fmt, ...)
+void dolog(const char *file, int line, const char *func, const char *fmt, ...)
 {
     va_list ap;
     char *s = NULL;
@@ -248,7 +248,7 @@ void print_bitmap(uint8_t *map, int maplen, FILE *stream)
     }
 }
 
-int do_daemonize(char *name, const char *pidfile)
+int do_daemonize(const char *name, const char *pidfile)
 {
     char *fullname;
     pid_t child1;
diff --git a/tools/xl/xl_utils.h b/tools/xl/xl_utils.h
index d98b419f1075..0c337ede954b 100644
--- a/tools/xl/xl_utils.h
+++ b/tools/xl/xl_utils.h
@@ -123,7 +123,7 @@ int def_getopt(int argc, char * const argv[],
                const struct option *longopts,
                const char* helpstr, int reqargs);
 
-void dolog(const char *file, int line, const char *func, char *fmt, ...)
+void dolog(const char *file, int line, const char *func, const char *fmt, ...)
 	__attribute__((format(printf,4,5)));
 
 void xvasprintf(char **strp, const char *fmt, va_list ap)
@@ -143,7 +143,7 @@ uint32_t find_domain(const char *p) __attribute__((warn_unused_result));
 
 void print_bitmap(uint8_t *map, int maplen, FILE *stream);
 
-int do_daemonize(char *name, const char *pidfile);
+int do_daemonize(const char *name, const char *pidfile);
 #endif /* XL_UTILS_H */
 
 /*
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105401.201821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbX-0002S9-MZ; Mon, 05 Apr 2021 15:57:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105401.201821; Mon, 05 Apr 2021 15: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 1lTRbX-0002Rn-GV; Mon, 05 Apr 2021 15:57:31 +0000
Received: by outflank-mailman (input) for mailman id 105401;
 Mon, 05 Apr 2021 15:57: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 1lTRbU-0002LQ-RY
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57:28 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbU-0002oS-3D; Mon, 05 Apr 2021 15:57:28 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbT-00053b-RA; Mon, 05 Apr 2021 15:57:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=lyhRqrnLbAOU2YP7TBUMqJqT/uwbvMLMSBzL3B6aYDM=; b=3Gr5r9LZKz7autrB/fEbv7nk4
	Ly3bxyt5lzdn97NLfjISrWngoQbegaXsde6Lwr3CrIngHV7M9hPpwSlT3WDkIRs7LsBNZ5GJCJlKG
	/dNxd9cj8TTaG/oNE7j4QlTNDneyiXVGPBsqpVmSar+7k68jy6uvQS9gzHYz79qx6eaRg=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.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>,
	Ian Jackson <iwj@xenproject.org>
Subject: [PATCH 08/14] tools/firmware: hvmloader: Use const in __bug() and __assert_failed()
Date: Mon,  5 Apr 2021 16:57:07 +0100
Message-Id: <20210405155713.29754-9-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

__bug() and __assert_failed() are not meant to modify the string
parameters. So mark them as const.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/firmware/hvmloader/util.c | 4 ++--
 tools/firmware/hvmloader/util.h | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/tools/firmware/hvmloader/util.c b/tools/firmware/hvmloader/util.c
index 7da144b0bb15..581b35e5cfb5 100644
--- a/tools/firmware/hvmloader/util.c
+++ b/tools/firmware/hvmloader/util.c
@@ -722,14 +722,14 @@ static void __attribute__((noreturn)) crash(void)
         asm volatile ( "hlt" );
 }
 
-void __assert_failed(char *assertion, char *file, int line)
+void __assert_failed(const char *assertion, const char *file, int line)
 {
     printf("*** HVMLoader assertion '%s' failed at %s:%d\n",
            assertion, file, line);
     crash();
 }
 
-void __bug(char *file, int line)
+void __bug(const char *file, int line)
 {
     printf("*** HVMLoader bug at %s:%d\n", file, line);
     crash();
diff --git a/tools/firmware/hvmloader/util.h b/tools/firmware/hvmloader/util.h
index 4f0baade0e6c..8d95eab28a65 100644
--- a/tools/firmware/hvmloader/util.h
+++ b/tools/firmware/hvmloader/util.h
@@ -34,11 +34,11 @@ enum {
 #undef NULL
 #define NULL ((void*)0)
 
-void __assert_failed(char *assertion, char *file, int line)
+void __assert_failed(const char *assertion, const char *file, int line)
     __attribute__((noreturn));
 #define ASSERT(p) \
     do { if (!(p)) __assert_failed(#p, __FILE__, __LINE__); } while (0)
-void __bug(char *file, int line) __attribute__((noreturn));
+void __bug(const char *file, int line) __attribute__((noreturn));
 #define BUG() __bug(__FILE__, __LINE__)
 #define BUG_ON(p) do { if (p) BUG(); } while (0)
 #define BUILD_BUG_ON(p) ((void)sizeof(char[1 - 2 * !!(p)]))
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 15:57:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 15:57:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105402.201829 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbY-0002TX-IF; Mon, 05 Apr 2021 15:57:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105402.201829; Mon, 05 Apr 2021 15:57:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRbY-0002T5-0E; Mon, 05 Apr 2021 15:57:32 +0000
Received: by outflank-mailman (input) for mailman id 105402;
 Mon, 05 Apr 2021 15:57: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 1lTRbV-0002OA-Qm
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 15:57: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 1lTRbV-0002oY-3V; Mon, 05 Apr 2021 15:57:29 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbU-00053b-RZ; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=UgMhryuGQDNF+IkibD7yNt0PjYxYcwu1lo/PGDlCLKY=; b=bK51hyrcTT4viBqIAN1cWJGfC
	wDeFEzPJc59SCRpH4goiKY8qLNzgak/3/yWAPp2fjlQ9lW7KuFNoY4jzspPaP1t6GwB6rUSdOvqpg
	Owg7mfSgH7KOQZAOK0O0XUR62ee/usQYpI9yOoglRBSfzkeKH1Y0WXik9zTTeH6PVtzaY=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 09/14] tools/console: Use const whenever we point to literal strings
Date: Mon,  5 Apr 2021 16:57:08 +0100
Message-Id: <20210405155713.29754-10-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

literal strings are not meant to be modified. So we should use const
char * rather than char * when we want to store a pointer to them.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/console/client/main.c |  4 ++--
 tools/console/daemon/io.c   | 10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/tools/console/client/main.c b/tools/console/client/main.c
index 088be28dff02..80157be42144 100644
--- a/tools/console/client/main.c
+++ b/tools/console/client/main.c
@@ -325,7 +325,7 @@ int main(int argc, char **argv)
 {
 	struct termios attr;
 	int domid;
-	char *sopt = "hn:";
+	const char *sopt = "hn:";
 	int ch;
 	unsigned int num = 0;
 	int opt_ind=0;
@@ -345,7 +345,7 @@ int main(int argc, char **argv)
 	char *end;
 	console_type type = CONSOLE_INVAL;
 	bool interactive = 0;
-	char *console_names = "serial, pv, vuart";
+	const char *console_names = "serial, pv, vuart";
 
 	while((ch = getopt_long(argc, argv, sopt, lopt, &opt_ind)) != -1) {
 		switch(ch) {
diff --git a/tools/console/daemon/io.c b/tools/console/daemon/io.c
index 4af27ffc5d02..6a8a94e31b65 100644
--- a/tools/console/daemon/io.c
+++ b/tools/console/daemon/io.c
@@ -87,14 +87,14 @@ struct buffer {
 };
 
 struct console {
-	char *ttyname;
+	const char *ttyname;
 	int master_fd;
 	int master_pollfd_idx;
 	int slave_fd;
 	int log_fd;
 	struct buffer buffer;
 	char *xspath;
-	char *log_suffix;
+	const char *log_suffix;
 	int ring_ref;
 	xenevtchn_handle *xce_handle;
 	int xce_pollfd_idx;
@@ -109,9 +109,9 @@ struct console {
 };
 
 struct console_type {
-	char *xsname;
-	char *ttyname;
-	char *log_suffix;
+	const char *xsname;
+	const char *ttyname;
+	const char *log_suffix;
 	bool optional;
 	bool use_gnttab;
 };
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 16:14:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 16:14:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105452.201851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRsA-0005V5-Ct; Mon, 05 Apr 2021 16:14:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105452.201851; Mon, 05 Apr 2021 16: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 1lTRsA-0005Uu-6H; Mon, 05 Apr 2021 16:14:42 +0000
Received: by outflank-mailman (input) for mailman id 105452;
 Mon, 05 Apr 2021 16:14: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 1lTRs7-0005U6-PK
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 16:14: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 1lTRs6-0003eu-H5; Mon, 05 Apr 2021 16:14:38 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbW-00053b-W8; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=fOozlpcQqX3U35FdV5utWkSVhrMD0HRaxwSjYqjDLQU=; b=s3UuLNW5J0CRb7QQWuy3WCObx
	9Gdg6FRWFWbkIYxzFKoZOv2val092fE4cOQzcRm4YVQZ31kwcWJ3NT60CRP2B9jujZTo3yvvEONJz
	7FInxspUOxEYrqmX/FCyAO/5RTJMMjSXJx9QixNpURGdf4BHNYESij6Ke2nVKGjrv2FC4=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 11/14] tools/misc: Use const whenever we point to literal strings
Date: Mon,  5 Apr 2021 16:57:10 +0100
Message-Id: <20210405155713.29754-12-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

literal strings are not meant to be modified. So we should use const
char * rather than char * when we we to store a pointer to them.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/misc/xen-detect.c | 2 +-
 tools/misc/xenhypfs.c   | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/tools/misc/xen-detect.c b/tools/misc/xen-detect.c
index eac9e46a35bb..18b28dabf311 100644
--- a/tools/misc/xen-detect.c
+++ b/tools/misc/xen-detect.c
@@ -44,7 +44,7 @@ enum guest_type {
     XEN_NONE = 3
 };
 
-static char *type;
+static const char *type;
 static char *ver;
 
 static void cpuid(uint32_t idx, uint32_t *regs, int pv_context)
diff --git a/tools/misc/xenhypfs.c b/tools/misc/xenhypfs.c
index 5da24aed905c..df398b07bdc0 100644
--- a/tools/misc/xenhypfs.c
+++ b/tools/misc/xenhypfs.c
@@ -81,9 +81,9 @@ static int xenhypfs_wr(char *path, char *val)
     return ret;
 }
 
-static char *xenhypfs_type(struct xenhypfs_dirent *ent)
+static const char *xenhypfs_type(struct xenhypfs_dirent *ent)
 {
-    char *res;
+    const char *res;
 
     switch (ent->type) {
     case xenhypfs_type_dir:
@@ -134,7 +134,7 @@ static int xenhypfs_ls(char *path)
     return ret;
 }
 
-static int xenhypfs_tree_sub(char *path, unsigned int depth)
+static int xenhypfs_tree_sub(const char *path, unsigned int depth)
 {
     struct xenhypfs_dirent *ent;
     unsigned int n, i;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 16:14:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 16:14:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105453.201861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRsA-0005Vl-Nb; Mon, 05 Apr 2021 16:14:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105453.201861; Mon, 05 Apr 2021 16: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 1lTRsA-0005VW-G5; Mon, 05 Apr 2021 16:14:42 +0000
Received: by outflank-mailman (input) for mailman id 105453;
 Mon, 05 Apr 2021 16:14: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 1lTRs7-0005U5-PK
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 16:14: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 1lTRs6-0003f0-O5; Mon, 05 Apr 2021 16:14:38 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbY-00053b-0I; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=1rVbgSKi2I81qCiY+TmphdtF7pMSqnTa8m6g9BTXjUI=; b=QZuh8HPVEcn1Kzdt/lFtkO/nW
	RtCGPYMVw2cVNrH0epDwZ5Eo55VeWcPPnYZT8x4dAa7KnvS6EKNMGh53IcV1wAp0/Y2tMhN95jMbC
	tD7vY3/eGnfiQp7Tuz+9FF1nTVSjCvFIfTP0BR/89L2N12L2cY/ZBBtCMBXG2pWY291NI=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 12/14] tools/top: The string parameter in set_prompt() and set_delay() should be const
Date: Mon,  5 Apr 2021 16:57:11 +0100
Message-Id: <20210405155713.29754-13-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Neither string parameter in set_prompt() and set_delay() are meant to
be modified. In particular, new_prompt can point to a literal string.

So mark the two parameters as const and propagate it.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/xentop/xentop.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/tools/xentop/xentop.c b/tools/xentop/xentop.c
index ebed070c0fa2..950e8935c4c1 100644
--- a/tools/xentop/xentop.c
+++ b/tools/xentop/xentop.c
@@ -81,8 +81,8 @@ static int current_row(void);
 static int lines(void);
 static void print(const char *, ...) __attribute__((format(printf,1,2)));
 static void attr_addstr(int attr, const char *str);
-static void set_delay(char *value);
-static void set_prompt(char *new_prompt, void (*func)(char *));
+static void set_delay(const char *value);
+static void set_prompt(const char *new_prompt, void (*func)(const char *));
 static int handle_key(int);
 static int compare(unsigned long long, unsigned long long);
 static int compare_domains(xenstat_domain **, xenstat_domain **);
@@ -212,10 +212,10 @@ int show_vbds = 0;
 int repeat_header = 0;
 int show_full_name = 0;
 #define PROMPT_VAL_LEN 80
-char *prompt = NULL;
+const char *prompt = NULL;
 char prompt_val[PROMPT_VAL_LEN];
 int prompt_val_len = 0;
-void (*prompt_complete_func)(char *);
+void (*prompt_complete_func)(const char *);
 
 static WINDOW *cwin;
 
@@ -331,7 +331,7 @@ static void attr_addstr(int attr, const char *str)
 }
 
 /* Handle setting the delay from the user-supplied value in prompt_val */
-static void set_delay(char *value)
+static void set_delay(const char *value)
 {
 	int new_delay;
 	new_delay = atoi(value);
@@ -341,7 +341,7 @@ static void set_delay(char *value)
 
 /* Enable prompting mode with the given prompt string; call the given function
  * when a value is available. */
-static void set_prompt(char *new_prompt, void (*func)(char *))
+static void set_prompt(const char *new_prompt, void (*func)(const char *))
 {
 	prompt = new_prompt;
 	prompt_val[0] = '\0';
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 16:14:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 16:14:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105451.201845 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRsA-0005Ua-1o; Mon, 05 Apr 2021 16:14:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105451.201845; Mon, 05 Apr 2021 16: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 1lTRs9-0005UT-Uf; Mon, 05 Apr 2021 16:14:41 +0000
Received: by outflank-mailman (input) for mailman id 105451;
 Mon, 05 Apr 2021 16:14: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 1lTRs7-0005U4-PK
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 16:14: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 1lTRs6-0003ey-MJ; Mon, 05 Apr 2021 16:14:38 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbZ-00053b-0i; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=Gq4ESA+bbIOEoTSTMGcB7GGXPzKwaa55TZ5zrqKmigw=; b=kW8nFemdtlQUkKpZjaUYbvq/a
	mF1OLiI2f3BLuq+h3OaS05P4bbOnfGec/wzj6vAAaKTQ8WQg+62jP5LCSAxuheympoBsBRDPSVO8d
	RXGq2eHcME2KHZkSmUjGjf73rw1dIaZOBLGWbmwZ6X62LwsvgixCuTfLRmZxxrZzcLEXc=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 13/14] tools/xenmon: xenbaked: Mark const the field text in stat_map_t
Date: Mon,  5 Apr 2021 16:57:12 +0100
Message-Id: <20210405155713.29754-14-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

The field text in stat_map_t will point to string literals. So mark it
as const to allow the compiler to catch any modified of the string.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/xenmon/xenbaked.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/xenmon/xenbaked.c b/tools/xenmon/xenbaked.c
index d3f940a26bb2..1ed34334c824 100644
--- a/tools/xenmon/xenbaked.c
+++ b/tools/xenmon/xenbaked.c
@@ -182,7 +182,7 @@ typedef struct
 {
     int event_count;
     int event_id;
-    char *text;
+    const char *text;
 } stat_map_t;
 
 stat_map_t stat_map[] = {
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 16:14:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 16:14:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105454.201873 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRsB-0005WT-4d; Mon, 05 Apr 2021 16:14:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105454.201873; Mon, 05 Apr 2021 16: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 1lTRsA-0005WD-PM; Mon, 05 Apr 2021 16:14:42 +0000
Received: by outflank-mailman (input) for mailman id 105454;
 Mon, 05 Apr 2021 16:14: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 1lTRs7-0005U7-PX
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 16:14: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 1lTRs6-0003es-Eb; Mon, 05 Apr 2021 16:14:38 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRba-00053b-4i; Mon, 05 Apr 2021 15:57: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=YW9oGuy3t6k1yVdYEyjW8Earg8hRQJeA+vjl3JWhoBo=; b=ajbC8nh8c9j/DoiYvRFOnAVoe
	O5EupfUULfhonKEdYyMbDWJW/YSBR5etebR61NKpX1W+xrnE1gbqV/zuTC1wffKx5CGN53f9JBpV4
	XKdytp7Mle026VbMKzLKx2n3NAbieCtndaGdNZIp3fN007vIWM4Vl7HxngnhmUC7On9v8=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 14/14] tools/xentrace: Use const whenever we point to literal strings
Date: Mon,  5 Apr 2021 16:57:13 +0100
Message-Id: <20210405155713.29754-15-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

literal strings are not meant to be modified. So we should use const
char * rather than char * when we want to store a pointer to them.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/xentrace/xenalyze.c | 71 ++++++++++++++++++++-------------------
 tools/xentrace/xenctx.c   |  4 +--
 2 files changed, 39 insertions(+), 36 deletions(-)

diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c
index b7f4e2bea83d..5de167031e01 100644
--- a/tools/xentrace/xenalyze.c
+++ b/tools/xentrace/xenalyze.c
@@ -356,7 +356,7 @@ void parse_symbol_file(char *fn) {
 char * find_symbol(unsigned long long addr) {
     struct symbol_struct * p=G.symbols;
     int i;
-    char * lastname="ZERO";
+    const char * lastname="ZERO";
     unsigned long long offset=addr;
     static char name[144];
 
@@ -495,7 +495,7 @@ struct {
 
 #define HVM_VMX_EXIT_REASON_MAX (EXIT_REASON_XSETBV+1)
 
-char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = {
+const char * hvm_vmx_exit_reason_name[HVM_VMX_EXIT_REASON_MAX] = {
     [EXIT_REASON_EXCEPTION_NMI]="EXCEPTION_NMI",
     [EXIT_REASON_EXTERNAL_INTERRUPT]="EXTERNAL_INTERRUPT",
     [EXIT_REASON_TRIPLE_FAULT]="TRIPLE_FAULT",
@@ -698,7 +698,7 @@ enum VMEXIT_EXITCODE
 };
 
 #define HVM_SVM_EXIT_REASON_MAX 1025
-char * hvm_svm_exit_reason_name[HVM_SVM_EXIT_REASON_MAX] = {
+const char * hvm_svm_exit_reason_name[HVM_SVM_EXIT_REASON_MAX] = {
     /* 0-15 */
     "VMEXIT_CR0_READ",
     "VMEXIT_CR1_READ",
@@ -875,7 +875,7 @@ char * hvm_svm_exit_reason_name[HVM_SVM_EXIT_REASON_MAX] = {
 #define EXTERNAL_INTERRUPT_MAX 256
 
 /* Stringify numbers */
-char * hvm_extint_vector_name[EXTERNAL_INTERRUPT_MAX] = {
+const char * hvm_extint_vector_name[EXTERNAL_INTERRUPT_MAX] = {
     [SPURIOUS_APIC_VECTOR] = "SPURIOS_APIC",
     [ERROR_APIC_VECTOR] =    "ERROR_APIC",
     [INVALIDATE_TLB_VECTOR]= "INVALIDATE_TLB",
@@ -887,7 +887,7 @@ char * hvm_extint_vector_name[EXTERNAL_INTERRUPT_MAX] = {
 
 #define HVM_TRAP_MAX 20
 
-char * hvm_trap_name[HVM_TRAP_MAX] = {
+const char * hvm_trap_name[HVM_TRAP_MAX] = {
     [0] =  "Divide",
     [1] =  "RESERVED",
     [2] =  "NMI",
@@ -947,7 +947,7 @@ enum {
     HVM_EVENT_VLAPIC,
     HVM_EVENT_HANDLER_MAX
 };
-char * hvm_event_handler_name[HVM_EVENT_HANDLER_MAX] = {
+const char * hvm_event_handler_name[HVM_EVENT_HANDLER_MAX] = {
     "(no handler)",
     "pf_xen",
     "pf_inject",
@@ -1001,7 +1001,7 @@ enum {
     GUEST_INTERRUPT_CASE_MAX,
 };
 
-char *guest_interrupt_case_name[] = {
+const char *guest_interrupt_case_name[] = {
     [GUEST_INTERRUPT_CASE_WAKE_TO_HALT_ALONE]="wake to halt alone",
     /* This interrupt woke, maybe another interrupt before halt */
     [GUEST_INTERRUPT_CASE_WAKE_TO_HALT_ANY]  ="wake to halt any  ",
@@ -1009,7 +1009,7 @@ char *guest_interrupt_case_name[] = {
     [GUEST_INTERRUPT_CASE_INTERRUPT_TO_HALT] ="intr to halt      ",
 };
 
-char *hvm_vol_name[HVM_VOL_MAX] = {
+const char *hvm_vol_name[HVM_VOL_MAX] = {
     [HVM_VOL_VMENTRY]="vmentry",
     [HVM_VOL_VMEXIT] ="vmexit",
     [HVM_VOL_HANDLER]="handler",
@@ -1056,7 +1056,7 @@ enum {
     HYPERCALL_MAX
 };
 
-char *hypercall_name[HYPERCALL_MAX] = {
+const char *hypercall_name[HYPERCALL_MAX] = {
     [HYPERCALL_set_trap_table]="set_trap_table",
     [HYPERCALL_mmu_update]="mmu_update",
     [HYPERCALL_set_gdt]="set_gdt",
@@ -1114,7 +1114,7 @@ enum {
     PF_XEN_EMUL_MAX,
 };
 
-char * pf_xen_emul_name[PF_XEN_EMUL_MAX] = {
+const char * pf_xen_emul_name[PF_XEN_EMUL_MAX] = {
     [PF_XEN_EMUL_LVL_0]="non-linmap",
     [PF_XEN_EMUL_LVL_1]="linmap l1",
     [PF_XEN_EMUL_LVL_2]="linmap l2",
@@ -1140,7 +1140,7 @@ enum {
     PF_XEN_NON_EMUL_MAX,
 };
 
-char * pf_xen_non_emul_name[PF_XEN_NON_EMUL_MAX] = {
+const char * pf_xen_non_emul_name[PF_XEN_NON_EMUL_MAX] = {
     [PF_XEN_NON_EMUL_VA_USER]="va user",
     [PF_XEN_NON_EMUL_VA_KERNEL]="va kernel",
     [PF_XEN_NON_EMUL_EIP_USER]="eip user",
@@ -1160,7 +1160,7 @@ enum {
     PF_XEN_FIXUP_MAX,
 };
 
-char * pf_xen_fixup_name[PF_XEN_FIXUP_MAX] = {
+const char * pf_xen_fixup_name[PF_XEN_FIXUP_MAX] = {
     [PF_XEN_FIXUP_PREALLOC_UNPIN] = "unpin",
     [PF_XEN_FIXUP_PREALLOC_UNHOOK] = "unhook",
     [PF_XEN_FIXUP_UNSYNC] = "unsync",
@@ -1195,7 +1195,7 @@ enum {
 #define SHADOW_RESYNC_FULL    14
 #define SHADOW_RESYNC_ONLY    15
 
-char * pf_xen_name[PF_XEN_MAX] = {
+const char * pf_xen_name[PF_XEN_MAX] = {
     [PF_XEN_NOT_SHADOW]="propagate",
     [PF_XEN_FAST_PROPAGATE]="fast propagate",
     [PF_XEN_FAST_MMIO]="fast mmio",
@@ -1304,7 +1304,7 @@ struct hvm_data {
     struct vcpu_data *v; /* up-pointer */
 
     /* SVM / VMX compatibility. FIXME - should be global */
-    char ** exit_reason_name;
+    const char ** exit_reason_name;
     int exit_reason_max;
     struct hvm_summary_handler_node *exit_reason_summary_handler_list[HVM_EXIT_REASON_MAX];
 
@@ -1408,7 +1408,7 @@ enum {
     HVM_SHORT_SUMMARY_MAX,
 };
 
-char *hvm_short_summary_name[HVM_SHORT_SUMMARY_MAX] = {
+const char *hvm_short_summary_name[HVM_SHORT_SUMMARY_MAX] = {
     [HVM_SHORT_SUMMARY_EMULATE]  ="emulate",
     [HVM_SHORT_SUMMARY_UNSYNC]   ="unsync",
     [HVM_SHORT_SUMMARY_FIXUP]    ="fixup",
@@ -1478,7 +1478,7 @@ enum {
     PV_MAX
 };
 
-char *pv_name[PV_MAX] = {
+const char *pv_name[PV_MAX] = {
     [PV_HYPERCALL]="hypercall",
     [PV_TRAP]="trap",
     [PV_PAGE_FAULT]="page_fault",
@@ -1527,7 +1527,7 @@ int runstate_graph[RUNSTATE_MAX] =
     [RUNSTATE_INIT]=-2,
 };
 
-char * runstate_name[RUNSTATE_MAX]={
+const char * runstate_name[RUNSTATE_MAX]={
     [RUNSTATE_RUNNING]= "running",
     [RUNSTATE_RUNNABLE]="runnable",
     [RUNSTATE_BLOCKED]= "blocked", /* to be blocked */
@@ -1545,7 +1545,7 @@ enum {
     RUNNABLE_STATE_MAX
 };
 
-char * runnable_state_name[RUNNABLE_STATE_MAX]={
+const char * runnable_state_name[RUNNABLE_STATE_MAX]={
     [RUNNABLE_STATE_INVALID]="invalid", /* Should never show up */
     [RUNNABLE_STATE_WAKE]="wake",
     [RUNNABLE_STATE_PREEMPT]="preempt",
@@ -1565,7 +1565,7 @@ enum {
     MEM_MAX
 };
 
-char *mem_name[MEM_MAX] = {
+const char *mem_name[MEM_MAX] = {
     [MEM_PAGE_GRANT_MAP]         = "grant-map",
     [MEM_PAGE_GRANT_UNMAP]       = "grant-unmap",
     [MEM_PAGE_GRANT_TRANSFER]    = "grant-transfer",
@@ -1681,7 +1681,7 @@ enum {
     DOMAIN_RUNSTATE_MAX
 };
 
-char * domain_runstate_name[] = {
+const char * domain_runstate_name[] = {
     [DOMAIN_RUNSTATE_BLOCKED]="blocked",
     [DOMAIN_RUNSTATE_PARTIAL_RUN]="partial run",
     [DOMAIN_RUNSTATE_FULL_RUN]="full run",
@@ -1698,7 +1698,7 @@ enum {
     POD_RECLAIM_CONTEXT_MAX
 };
 
-char * pod_reclaim_context_name[] = {
+const char * pod_reclaim_context_name[] = {
     [POD_RECLAIM_CONTEXT_UNKNOWN]="unknown",
     [POD_RECLAIM_CONTEXT_FAULT]="fault",
     [POD_RECLAIM_CONTEXT_BALLOON]="balloon",
@@ -1756,7 +1756,7 @@ enum {
     TOPLEVEL_MAX=TOPLEVEL_HW+1,
 };
 
-char * toplevel_name[TOPLEVEL_MAX] = {
+const char * toplevel_name[TOPLEVEL_MAX] = {
     [TOPLEVEL_GEN]="gen",
     [TOPLEVEL_SCHED]="sched",
     [TOPLEVEL_DOM0OP]="dom0op",
@@ -2263,7 +2263,7 @@ static inline void clear_interval_cycles(struct interval_element *e) {
     e->instructions = 0;
 }
 
-static inline void print_cpu_affinity(struct cycle_summary *s, char *p) {
+static inline void print_cpu_affinity(struct cycle_summary *s, const char *p) {
     if(s->count) {
         long long avg;
 
@@ -2326,7 +2326,8 @@ static inline void print_cycle_percent_summary(struct cycle_summary *s,
     }
 }
 
-static inline void print_cycle_summary(struct cycle_summary *s, char *p) {
+static inline void print_cycle_summary(struct cycle_summary *s,
+                                       const char *p) {
     if(s->count) {
         long long avg;
 
@@ -2938,7 +2939,7 @@ void hvm_update_short_summary(struct hvm_data *h, int element) {
 }
 
 void hvm_short_summary(struct hvm_short_summary_struct *hss,
-                       tsc_t total, char *prefix) {
+                       tsc_t total, const char *prefix) {
     char desc[80];
     int i;
 
@@ -3352,7 +3353,7 @@ void hvm_pf_xen_process(struct record_info *ri, struct hvm_data *h) {
          fprintf(warn, "%s: Strange, postprocess already set\n", __func__);
 }
 
-char * hvm_vlapic_icr_dest_shorthand_name[4] = {
+const char * hvm_vlapic_icr_dest_shorthand_name[4] = {
     "dest_field", "self", "all-inc", "all-exc"
 };
 
@@ -3800,7 +3801,7 @@ void update_io_address(struct io_address ** list, unsigned int pa, int dir,
     update_cycles(&p->summary[dir], arc_cycles);
 }
 
-void hvm_io_address_summary(struct io_address *list, char * s) {
+void hvm_io_address_summary(struct io_address *list, const char * s) {
     if(!list)
         return;
 
@@ -4484,7 +4485,7 @@ void hvm_intr_window_process(struct record_info *ri, struct hvm_data *h)
         int32_t intr;
     } *r = (typeof(r))h->d;
 
-    char *intsrc_name[] = {
+    const char *intsrc_name[] = {
         "none",
         "pic",
         "lapic",
@@ -4687,14 +4688,15 @@ void hvm_generic_postprocess(struct hvm_data *h)
     }
 }
 
-void hvm_generic_dump(struct record_info *ri, char * prefix)
+void hvm_generic_dump(struct record_info *ri, const char * prefix)
 {
     struct {
         unsigned vcpu:16, domain:16;
         unsigned d[4];
     } *cr = (typeof(cr))ri->d;
 
-    char *evt_string, evt_number[256];
+    const char *evt_string;
+    char evt_number[256];
     int i, evt, is_64 = 0;
 
     evt = ri->event - TRC_HVM_HANDLER;
@@ -6042,10 +6044,11 @@ void shadow_propagate_process(struct record_info *ri, struct hvm_data *h)
         fprintf(warn, "%s: Strange, postprocess already set\n", __func__);
 }
 
-void shadow_fault_generic_dump(unsigned int event, uint32_t *d, char *prefix,
-                         char * dump_header)
+void shadow_fault_generic_dump(unsigned int event, uint32_t *d,
+                               const char *prefix, const char * dump_header)
 {
-    char *evt_string, evt_number[10];
+    const char *evt_string;
+    char evt_number[10];
     union shadow_event sevt = { .event = event };
     int i;
 
@@ -8643,7 +8646,7 @@ void dump_generic(FILE * f, struct record_info *ri)
     fprintf(f, " ]\n");
 }
 
-void dump_raw(char * s, struct record_info *ri)
+void dump_raw(const char * s, struct record_info *ri)
 {
     int i;
 
diff --git a/tools/xentrace/xenctx.c b/tools/xentrace/xenctx.c
index 2fa864f86723..972f473dbf02 100644
--- a/tools/xentrace/xenctx.c
+++ b/tools/xentrace/xenctx.c
@@ -302,7 +302,7 @@ static void read_symbol_table(const char *symtab)
 
 #if defined(__i386__) || defined(__x86_64__)
 #define CR0_PE  0x1
-char *flag_values[22][2] =
+const char *flag_values[22][2] =
 {/*  clear,     set,       bit# */
     { NULL,     "c"    }, // 0        Carry
     { NULL,     NULL   }, // 1
@@ -334,7 +334,7 @@ static void print_flags(uint64_t flags)
 
     printf("\nflags: %08" PRIx64, flags);
     for (i = 21; i >= 0; i--) {
-        char *s = flag_values[i][(flags >> i) & 1];
+        const char *s = flag_values[i][(flags >> i) & 1];
         if (s != NULL)
             printf(" %s", s);
     }
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 16:14:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 16:14:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105455.201885 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRsB-0005Y0-Nf; Mon, 05 Apr 2021 16:14:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105455.201885; Mon, 05 Apr 2021 16: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 1lTRsB-0005Xf-E2; Mon, 05 Apr 2021 16:14:43 +0000
Received: by outflank-mailman (input) for mailman id 105455;
 Mon, 05 Apr 2021 16:14:40 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lTRs8-0005UO-TX
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 16:14:40 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRs6-0003ew-KW; Mon, 05 Apr 2021 16:14:38 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRbV-00053b-Vi; Mon, 05 Apr 2021 15: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=sR7NYKPgQAvYGz7bA4ItKG/zjd8QeLXKq9gu3Bw4Bo0=; b=6Lhk6beOV2W/H6rvRwFqdqbM7
	xp78Qoz4oBW2SFdz8d8l3y2Paat0sOf9+y7S1K12LJJE49qqmdANkIOT+xghkfXeTTbEOYkhjGGB5
	uAfW2i7iNvKAEdJnXHGnCjneTV67dMcXpnMTecvO+Ok96QJlUL0Mmz6CdHJXKkzFiL3sQ=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Tim Deegan <tim@xen.org>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 10/14] tools/kdd: Use const whenever we point to literal strings
Date: Mon,  5 Apr 2021 16:57:09 +0100
Message-Id: <20210405155713.29754-11-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
References: <20210405155713.29754-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

literal strings are not meant to be modified. So we should use const
char * rather than char * when we want to shore a pointer to them.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/debugger/kdd/kdd.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/tools/debugger/kdd/kdd.c b/tools/debugger/kdd/kdd.c
index a7d0976ea4a8..17513c26505e 100644
--- a/tools/debugger/kdd/kdd.c
+++ b/tools/debugger/kdd/kdd.c
@@ -67,7 +67,7 @@ typedef struct {
     uint32_t build;             
     int w64;
     int mp;
-    char *name;
+    const char *name;
     uint64_t base;              /* KernBase: start looking here */
     uint32_t range;             /* |         and search an area this size */
     uint32_t version;           /* +-> NtBuildNumber */
@@ -237,7 +237,7 @@ static size_t blocking_write(int fd, const void *buf, size_t count)
 }
 
 /* Dump the contents of a complete serial packet into a log file. */
-static void kdd_log_pkt(kdd_state *s, char *name, kdd_pkt *p)
+static void kdd_log_pkt(kdd_state *s, const char *name, kdd_pkt *p)
 {
     uint32_t sum = 0;
     unsigned int i, j;
@@ -504,8 +504,8 @@ static int check_os(kdd_state *s)
  * @return -1 on failure to find the section name
  * @return 0 on success
  */
-static int get_pe64_sections(kdd_state *s, uint64_t filebase, char *sectname,
-        uint64_t *vaddr, uint32_t *vsize)
+static int get_pe64_sections(kdd_state *s, uint64_t filebase,
+        const char *sectname, uint64_t *vaddr, uint32_t *vsize)
 {
     uint64_t pe_hdr = 0;
     uint64_t sect_start = 0;
@@ -781,7 +781,7 @@ static void kdd_send_cmd(kdd_state *s, uint32_t subtype, size_t extra)
 }
 
 /* Cause the client to print a string */
-static void kdd_send_string(kdd_state *s, char *fmt, ...)
+static void kdd_send_string(kdd_state *s, const char *fmt, ...)
 {
     uint32_t len = 0xffff - sizeof (kdd_msg);
     char *buf = (char *) s->txb + sizeof (kdd_hdr) + sizeof (kdd_msg);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 16:20:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 16:20:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105478.201905 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTRy7-0006oT-Dn; Mon, 05 Apr 2021 16:20:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105478.201905; Mon, 05 Apr 2021 16: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 1lTRy7-0006oM-Ai; Mon, 05 Apr 2021 16:20:51 +0000
Received: by outflank-mailman (input) for mailman id 105478;
 Mon, 05 Apr 2021 16:20: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 1lTRy6-0006oH-5V
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 16:20: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 1lTRy5-0003nA-Lv; Mon, 05 Apr 2021 16:20:49 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTRy5-0006s9-6E; Mon, 05 Apr 2021 16:20: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=Message-Id:Date:Subject:Cc:To:From;
	bh=G7kWW3Yee948/4gVKI8EIYkzCzCA2WmxX7OBr0mGBPM=; b=VZEUs7kUQXqyd06zeIoAcyROov
	arwrzalmW4XJFwB0cnHPwCAjE2FHcv+RC2OLjHzuf4q1QfR2mXc6/+sPOH9pEYgjK3R1wzQ7iavyd
	GDNO/4fPAmkLB13rMe4Fl105D5zQhRNC3WXgS9uk14L9m2RIGu8egO88Qx9yR7ez9jhs=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <julien@amazon.com>
Subject: [PATCH] xen/arm: guest_walk: Only generate necessary offsets/masks
Date: Mon,  5 Apr 2021 17:20:46 +0100
Message-Id: <20210405162046.9353-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

At the moment, we are computing offsets/masks for each level and
granularity. This is a bit of waste given that we only need to
know the offsets/masks for the granularity used by the guest.

All the LPAE information can easily be inferred with just the
page shift for a given granularity and the level.

So rather than providing a set of helpers per granularity, we can
provide a single set that takes the granularity and the level in
parameters.

With the new helpers in place, we can rework guest_walk_ld() to
only compute necessary information.

Signed-off-by: Julien Grall <julien@amazon.com>
---
 xen/arch/arm/guest_walk.c  | 37 ++---------------
 xen/include/asm-arm/lpae.h | 82 +++++++++++++-------------------------
 2 files changed, 30 insertions(+), 89 deletions(-)

diff --git a/xen/arch/arm/guest_walk.c b/xen/arch/arm/guest_walk.c
index b4496c4c86c6..87de40d0cb68 100644
--- a/xen/arch/arm/guest_walk.c
+++ b/xen/arch/arm/guest_walk.c
@@ -372,38 +372,6 @@ static bool guest_walk_ld(const struct vcpu *v,
     register_t tcr = READ_SYSREG(TCR_EL1);
     struct domain *d = v->domain;
 
-#define OFFSETS(gva, gran)              \
-{                                       \
-    zeroeth_table_offset_##gran(gva),   \
-    first_table_offset_##gran(gva),     \
-    second_table_offset_##gran(gva),    \
-    third_table_offset_##gran(gva)      \
-}
-
-    const paddr_t offsets[3][4] = {
-        OFFSETS(gva, 4K),
-        OFFSETS(gva, 16K),
-        OFFSETS(gva, 64K)
-    };
-
-#undef OFFSETS
-
-#define MASKS(gran)                     \
-{                                       \
-    zeroeth_size(gran) - 1,             \
-    first_size(gran) - 1,               \
-    second_size(gran) - 1,              \
-    third_size(gran) - 1                \
-}
-
-    static const paddr_t masks[3][4] = {
-        MASKS(4K),
-        MASKS(16K),
-        MASKS(64K)
-    };
-
-#undef MASKS
-
     static const unsigned int grainsizes[3] = {
         PAGE_SHIFT_4K,
         PAGE_SHIFT_16K,
@@ -519,7 +487,7 @@ static bool guest_walk_ld(const struct vcpu *v,
          * Add offset given by the GVA to the translation table base address.
          * Shift the offset by 3 as it is 8-byte aligned.
          */
-        paddr |= offsets[gran][level] << 3;
+        paddr |= LPAE_TABLE_INDEX_GS(grainsizes[gran], level, gva) << 3;
 
         /* Access the guest's memory to read only one PTE. */
         ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(lpae_t), false);
@@ -572,7 +540,8 @@ static bool guest_walk_ld(const struct vcpu *v,
 
     /* Make sure that the lower bits of the PTE's base address are zero. */
     mask = GENMASK_ULL(47, grainsizes[gran]);
-    *ipa = (pfn_to_paddr(pte.walk.base) & mask) | (gva & masks[gran][level]);
+    *ipa = (pfn_to_paddr(pte.walk.base) & mask) |
+        (gva & (LEVEL_SIZE_GS(grainsizes[gran], level) - 1));
 
     /*
      * Set permissions so that the caller can check the flags by herself. Note
diff --git a/xen/include/asm-arm/lpae.h b/xen/include/asm-arm/lpae.h
index 4797f9cee494..e94de2e7d8e8 100644
--- a/xen/include/asm-arm/lpae.h
+++ b/xen/include/asm-arm/lpae.h
@@ -160,63 +160,35 @@ static inline bool lpae_is_superpage(lpae_t pte, unsigned int level)
 #define lpae_set_mfn(pte, mfn)  ((pte).walk.base = mfn_x(mfn))
 
 /*
- * AArch64 supports pages with different sizes (4K, 16K, and 64K). To enable
- * page table walks for various configurations, the following helpers enable
- * walking the translation table with varying page size granularities.
+ * AArch64 supports pages with different sizes (4K, 16K, and 64K).
+ * Provide a set of generic helpers that will compute various
+ * information based on the page granularity.
+ *
+ * Note the parameter 'gs' is the page shift of the granularity used.
+ * Some macro will evaluate 'gs' twice rather than storing in a
+ * variable. This is to allow using the macros in assembly.
+ */
+
+/*
+ * Granularity | PAGE_SHIFT | LPAE_SHIFT
+ * -------------------------------------
+ * 4K          | 12         | 9
+ * 16K         | 14         | 11
+ * 64K         | 16         | 13
+ *
+ * This is equivalent to LPAE_SHIFT = PAGE_SHIFT - 3
  */
+#define LPAE_SHIFT_GS(gs)         ((gs) - 3)
+#define LPAE_ENTRIES_GS(gs)       (_AC(1, U) << LPAE_SHIFT_GS(gs))
+#define LPAE_ENTRIES_MASK_GS(gs)  (LPAE_ENTRIES_GS(gs) - 1)
+
+#define LEVEL_ORDER_GS(gs, lvl)   ((3 - (lvl)) * LPAE_SHIFT_GS(gs))
+#define LEVEL_SHIFT_GS(gs, lvl)   (LEVEL_ORDER_GS(gs, lvl) + (gs))
+#define LEVEL_SIZE_GS(gs, lvl)    (_AT(paddr_t, 1) << LEVEL_SHIFT_GS(gs, lvl))
 
-#define LPAE_SHIFT_4K           (9)
-#define LPAE_SHIFT_16K          (11)
-#define LPAE_SHIFT_64K          (13)
-
-#define lpae_entries(gran)      (_AC(1,U) << LPAE_SHIFT_##gran)
-#define lpae_entry_mask(gran)   (lpae_entries(gran) - 1)
-
-#define third_shift(gran)       (PAGE_SHIFT_##gran)
-#define third_size(gran)        ((paddr_t)1 << third_shift(gran))
-
-#define second_shift(gran)      (third_shift(gran) + LPAE_SHIFT_##gran)
-#define second_size(gran)       ((paddr_t)1 << second_shift(gran))
-
-#define first_shift(gran)       (second_shift(gran) + LPAE_SHIFT_##gran)
-#define first_size(gran)        ((paddr_t)1 << first_shift(gran))
-
-/* Note that there is no zeroeth lookup level with a 64K granule size. */
-#define zeroeth_shift(gran)     (first_shift(gran) + LPAE_SHIFT_##gran)
-#define zeroeth_size(gran)      ((paddr_t)1 << zeroeth_shift(gran))
-
-#define TABLE_OFFSET(offs, gran)      (offs & lpae_entry_mask(gran))
-#define TABLE_OFFSET_HELPERS(gran)                                          \
-static inline paddr_t third_table_offset_##gran##K(paddr_t va)              \
-{                                                                           \
-    return TABLE_OFFSET((va >> third_shift(gran##K)), gran##K);             \
-}                                                                           \
-                                                                            \
-static inline paddr_t second_table_offset_##gran##K(paddr_t va)             \
-{                                                                           \
-    return TABLE_OFFSET((va >> second_shift(gran##K)), gran##K);            \
-}                                                                           \
-                                                                            \
-static inline paddr_t first_table_offset_##gran##K(paddr_t va)              \
-{                                                                           \
-    return TABLE_OFFSET((va >> first_shift(gran##K)), gran##K);             \
-}                                                                           \
-                                                                            \
-static inline paddr_t zeroeth_table_offset_##gran##K(paddr_t va)            \
-{                                                                           \
-    /* Note that there is no zeroeth lookup level with 64K granule sizes. */\
-    if ( gran == 64 )                                                       \
-        return 0;                                                           \
-    else                                                                    \
-        return TABLE_OFFSET((va >> zeroeth_shift(gran##K)), gran##K);       \
-}                                                                           \
-
-TABLE_OFFSET_HELPERS(4);
-TABLE_OFFSET_HELPERS(16);
-TABLE_OFFSET_HELPERS(64);
-
-#undef TABLE_OFFSET
-#undef TABLE_OFFSET_HELPERS
+/* Offset in the table at level 'lvl' */
+#define LPAE_TABLE_INDEX_GS(gs, lvl, addr)   \
+    (((addr) >> LEVEL_SHIFT_GS(gs, lvl)) & LPAE_ENTRIES_MASK_GS(gs))
 
 /* Generate an array @var containing the offset for each level from @addr */
 #define DECLARE_OFFSETS(var, addr)          \
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 05 17:01:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 17:01:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105489.201921 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTSbI-0001wE-KU; Mon, 05 Apr 2021 17:01:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105489.201921; Mon, 05 Apr 2021 17:01: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 1lTSbI-0001w6-GT; Mon, 05 Apr 2021 17:01:20 +0000
Received: by outflank-mailman (input) for mailman id 105489;
 Mon, 05 Apr 2021 17:01:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z0X+=JC=m5p.com=ehem@srs-us1.protection.inumbo.net>)
 id 1lTSbH-0001w1-6L
 for xen-devel@lists.xenproject.org; Mon, 05 Apr 2021 17:01:19 +0000
Received: from mailhost.m5p.com (unknown [74.104.188.4])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id efbfb9b8-6b8b-4728-bcf3-c18cd5d75080;
 Mon, 05 Apr 2021 17:01:18 +0000 (UTC)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.16.1/8.15.2) with ESMTPS id 135H12mh072531
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Mon, 5 Apr 2021 13:01:07 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.16.1/8.15.2/Submit) id 135H11Rr072530;
 Mon, 5 Apr 2021 10:01: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: efbfb9b8-6b8b-4728-bcf3-c18cd5d75080
Date: Mon, 5 Apr 2021 10:01:01 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
        Andrew Cooper <andrew.cooper3@citrix.com>,
        George Dunlap <george.dunlap@citrix.com>,
        Ian Jackson <iwj@xenproject.org>, Jan Beulich <jbeulich@suse.com>,
        Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
        Dario Faggioli <dfaggioli@suse.com>, Tim Deegan <tim@xen.org>,
        Roger Pau Monn?? <roger.pau@citrix.com>,
        Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH 00/14] Use const whether we point to literal strings
 (take 1)
Message-ID: <YGtCTfw7WmOJPaa/@mattapan.m5p.com>
References: <20210405155713.29754-1-julien@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.5
X-Spam-Checker-Version: SpamAssassin 3.4.5 (2021-03-20) on mattapan.m5p.com

On Mon, Apr 05, 2021 at 04:56:59PM +0100, Julien Grall wrote:
> I am not aware of code trying to modify literal strings in Xen.
> However, there is a frequent use of non-const char * to point to
> literal strings. Given the size of the codebase, there is a risk
> to involuntarily introduce code that will modify literal strings.
> 
> Therefore it would be better to enforce using const when pointing
> to such strings. Both GCC and Clang provide an option to warn
> for such case (see -Wwrite-strings) and therefore could be used
> by Xen.
> 
> This series doesn't yet make use of -Wwrite-strings because
> the tree is not fully converted. Instead, it contains some easy
> and likely non-controversial use const in the code.
> 
> The major blockers to enable -Wwrite-strings are the following:
>     - xen/common/efi: union string is used in both const and
>     non-const situation. It doesn't feel right to specific one member
>     const and the other non-const.
>     - libxl: the major block is the flexarray framework as we would use
>     it with string (now const char*). I thought it would be possible to
>     make the interface const, but it looks like there are a couple of
>     places where we need to modify the content (such as in
>     libxl_json.c).
> 
> Ideally, I would like to have -Wwrite-strings unconditionally used
> tree-wide. But, some of the area may required some heavy refactoring.
> 
> One solution would be to enable it tree-wide but turned it off at a
> directroy/file level.
> 
> Any opinions?

I think doing such is a Good Idea(tm).  Adding consts adds opportunities
for greater optimization.  Both by compilers which can avoid extra
copies, and developers who then know they don't need to generate extra
copies to sacrific them to an API.  In particular the consts also
function as documentation.

So you're certainly not the only person who thinks additional consts
would be a good thing:

https://lists.xenproject.org/archives/html/xen-devel/2021-01/msg00132.html


Alas merely getting the two const patches into the latest release
apparently wasn't even worthy of response:

https://lists.xenproject.org/archives/html/xen-devel/2021-02/msg01040.html


I agree this should be done, though I'm aware many developers hate
bothering with constants.


-- 
(\___(\___(\______          --=> 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 Apr 05 19:49:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 19:49:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105518.201944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTVDn-0007Y6-EY; Mon, 05 Apr 2021 19:49:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105518.201944; Mon, 05 Apr 2021 19: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 1lTVDn-0007Xz-BZ; Mon, 05 Apr 2021 19:49:15 +0000
Received: by outflank-mailman (input) for mailman id 105518;
 Mon, 05 Apr 2021 19:49: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 1lTVDm-0007Xr-6A; Mon, 05 Apr 2021 19:49: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 1lTVDl-0007DR-Pm; Mon, 05 Apr 2021 19:49: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 1lTVDl-0000rf-G6; Mon, 05 Apr 2021 19:49:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTVDl-0000Rp-Fa; Mon, 05 Apr 2021 19:49: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=Wjq23yCLfuunPu3sCwPKL/+8ZcLFeDUOd9xBKbh6/+4=; b=IVmOGCcYIz7nQWVAIiR5reRbTH
	buIgPv10dHYLVXxP5ol0ZN4LlVyIObc/j9jpCwWPWNsiDhcgyyhPMzsQOxnqJI4GiqXEz8+qpN39T
	Fx63qcfySnn7tF/Y1x2Q9nYZuLdrZv3R394CHxICX7/3b7KGVkmu0iMvlRFoTPCPeq9I=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160738-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160738: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:guests-nbd-mirror/debian:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 05 Apr 2021 19:49:13 +0000

flight 160738 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160738/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken  in 160709
 build-armhf                4 host-install(4) broken in 160709 REGR. vs. 159418
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160709 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian fail in 160709 pass in 160738
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160709

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   48 days
Failing since        160128  2021-03-18 14:36:18 Z   18 days   22 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   16 days   20 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      pass    


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

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

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

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

broken-job build-armhf broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 05 21:32:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 05 Apr 2021 21:32:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105542.201966 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTWpE-000066-D2; Mon, 05 Apr 2021 21:32:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105542.201966; Mon, 05 Apr 2021 21: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 1lTWpE-00005z-94; Mon, 05 Apr 2021 21:32:00 +0000
Received: by outflank-mailman (input) for mailman id 105542;
 Mon, 05 Apr 2021 21:31: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 1lTWpD-00005r-C8; Mon, 05 Apr 2021 21:31: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 1lTWpD-0000Uh-39; Mon, 05 Apr 2021 21:31: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 1lTWpC-0006Dp-QY; Mon, 05 Apr 2021 21:31:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTWpC-0003b3-Q4; Mon, 05 Apr 2021 21: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=0zA02NYBuF6mzGavhELoQnvjZUDzYBGKXyeEgtl5OUU=; b=aW3xxyKkvJigN18AD7YVjESCXw
	QXVtnE1cxPQlAvPpR6S7MIkwTpOK6SJ0bqpaXzoY/u13Y77aPqX/JNPVG83Q3hOV+8zfWfMtCWsdX
	6qj0rDagl5vFCugKhUcu/Aj9wjV2+Wfp73GMOLlu5kJUdMUJiMFKmmRYk3aIi/9odJ2E=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160742-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160742: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-qemuu-freebsd12-amd64:guest-localmigrate/x10:fail:regression
    linux-linus:test-amd64-amd64-examine:memdisk-try-append:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=e49d033bddf5b565044e2abe4241353959bc9120
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 05 Apr 2021 21:31:58 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-qemuu-freebsd12-amd64 19 guest-localmigrate/x10 fail REGR. vs. 152332
 test-amd64-amd64-examine      4 memdisk-try-append       fail REGR. vs. 152332

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

version targeted for testing:
 linux                e49d033bddf5b565044e2abe4241353959bc9120
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  248 days
Failing since        152366  2020-08-01 20:49:34 Z  247 days  420 attempts
Testing same since   160742  2021-04-05 05:16:49 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1315206 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 02:07:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 02:07:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105580.201993 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTb7m-0004cF-H6; Tue, 06 Apr 2021 02:07:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105580.201993; Tue, 06 Apr 2021 02: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 1lTb7m-0004c8-DF; Tue, 06 Apr 2021 02:07:26 +0000
Received: by outflank-mailman (input) for mailman id 105580;
 Tue, 06 Apr 2021 02:07: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 1lTb7l-0004bz-JH; Tue, 06 Apr 2021 02:07: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 1lTb7l-0002me-A1; Tue, 06 Apr 2021 02:07: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 1lTb7k-00030d-UR; Tue, 06 Apr 2021 02:07:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTb7k-0002pc-Tu; Tue, 06 Apr 2021 02: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Xdqjw0XgQhNOopiuhp4cuEexlBgKOR3pAugXag/sWAQ=; b=l/SmVvEw2rl4XB8pmRi/WMrovH
	PdwEb62TH2VxOwA5snCraib+ILWHdl3+RAq+OPP+9nIFO2jz8XPI7VskERJYwJe7a6Lgtw+lMZrN3
	Zx1lSUbdjYLNNNhSWJpDFGsPbzR+UYgEIeaf8DK0tV4jxuOgz8ABbGRncQofB9xX4PWk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160745-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160745: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start.2:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-examine:host-install:broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-cubietruck:host-install(5):broken:heisenbug
    xen-unstable:test-arm64-arm64-xl-seattle:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:guest-start/debianhvm.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-armhf-armhf-libvirt-raw: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-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-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-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-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-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-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl: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-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 06 Apr 2021 02:07:24 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken  in 160665
 test-armhf-armhf-xl             <job status>                 broken  in 160700
 test-armhf-armhf-xl-credit1     <job status>                 broken  in 160700
 test-armhf-armhf-xl-credit2     <job status>                 broken  in 160700
 test-armhf-armhf-xl-vhd         <job status>                 broken  in 160700
 test-armhf-armhf-xl-rtds        <job status>                 broken  in 160700
 test-armhf-armhf-xl-multivcpu    <job status>                 broken in 160700
 test-armhf-armhf-xl-cubietruck    <job status>                broken in 160700
 test-armhf-armhf-xl-arndale     <job status>                 broken  in 160700
 test-armhf-armhf-libvirt-raw    <job status>                 broken  in 160700
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 160665 REGR. vs. 160646
 test-armhf-armhf-xl-arndale  19 guest-start.2  fail in 160733 REGR. vs. 160646
 test-armhf-armhf-xl-vhd 17 guest-start/debian.repeat fail in 160733 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     5 host-install(5) broken in 160665 pass in 160745
 test-armhf-armhf-xl          5 host-install(5) broken in 160700 pass in 160745
 test-armhf-armhf-xl-vhd      5 host-install(5) broken in 160700 pass in 160745
 test-armhf-armhf-xl-rtds     5 host-install(5) broken in 160700 pass in 160745
 test-armhf-armhf-xl-multivcpu 5 host-install(5) broken in 160700 pass in 160745
 test-armhf-armhf-xl-arndale  5 host-install(5) broken in 160700 pass in 160745
 test-armhf-armhf-xl-credit1  5 host-install(5) broken in 160700 pass in 160745
 test-armhf-armhf-libvirt-raw 5 host-install(5) broken in 160700 pass in 160745
 test-armhf-armhf-examine      5 host-install   broken in 160700 pass in 160745
 test-armhf-armhf-xl-credit2  5 host-install(5) broken in 160700 pass in 160745
 test-armhf-armhf-xl-cubietruck 5 host-install(5) broken in 160700 pass in 160745
 test-arm64-arm64-xl-seattle   8 xen-boot         fail in 160665 pass in 160745
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 160665 pass in 160745
 test-armhf-armhf-examine      8 reboot           fail in 160665 pass in 160745
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160665 pass in 160745
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 160665 pass in 160745
 test-armhf-armhf-libvirt     14 guest-start      fail in 160715 pass in 160733
 test-armhf-armhf-xl           8 xen-boot         fail in 160715 pass in 160745
 test-armhf-armhf-xl-vhd     12 debian-di-install fail in 160715 pass in 160745
 test-armhf-armhf-libvirt 18 guest-start/debian.repeat fail in 160733 pass in 160700
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 160733 pass in 160715
 test-armhf-armhf-libvirt-raw 12 debian-di-install fail in 160733 pass in 160745
 test-armhf-armhf-xl-credit2  14 guest-start                fail pass in 160665
 test-armhf-armhf-xl-rtds      8 xen-boot                   fail pass in 160665
 test-armhf-armhf-libvirt-raw 13 guest-start                fail pass in 160715
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 14 guest-start/debianhvm.repeat fail pass in 160733
 test-armhf-armhf-xl-multivcpu 14 guest-start               fail pass in 160733
 test-armhf-armhf-libvirt      8 xen-boot                   fail pass in 160733
 test-armhf-armhf-xl-vhd      13 guest-start                fail pass in 160733
 test-armhf-armhf-xl-credit1  14 guest-start                fail pass in 160733
 test-armhf-armhf-xl-arndale  18 guest-start/debian.repeat  fail pass in 160733

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160665 REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160665 like 160646
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 160665 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160665 never pass
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 160733 like 160646
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 160733 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 160733 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 160733 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 160733 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 160733 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    4 days
Testing same since   160665  2021-04-02 07:40:09 Z    3 days    6 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.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                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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

broken-job test-armhf-armhf-libvirt broken
broken-job test-armhf-armhf-xl broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-job test-armhf-armhf-xl-vhd broken
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-multivcpu broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-cubietruck broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 05:35:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 05:35:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105617.202023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTeMq-0006Ko-Ta; Tue, 06 Apr 2021 05:35:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105617.202023; Tue, 06 Apr 2021 05: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 1lTeMq-0006Kh-QZ; Tue, 06 Apr 2021 05:35:12 +0000
Received: by outflank-mailman (input) for mailman id 105617;
 Tue, 06 Apr 2021 05:35:12 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTeMq-0006KZ-8i; Tue, 06 Apr 2021 05:35:12 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTeMp-0006bD-T6; Tue, 06 Apr 2021 05:35:11 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTeMp-0007Pe-JP; Tue, 06 Apr 2021 05:35:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTeMp-0004Bt-Ig; Tue, 06 Apr 2021 05:35:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=bhvSV6s0s6Zlh/ycQbx0A8eHW7J2NeVcwq1A/Ye4gfk=; b=XQQPiZJHggBbeJsYrs9tHqXQIg
	rjsxxkdZDy9BdAKNcjjr0UbsEhiLLjWqVKBgtX12cMDfmKe7Jn5oqDXKKRmUc1neyllH+BEx0bUW6
	flUS9v2UMfNyaaY5Zw4kbHy8U4Xsz3TSVD60oAh3ML55fVjm9y2jDpID8cVStmtbnGEk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160748-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160748: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=11577d85b1a6939380bd16ed9a861653194de044
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 06 Apr 2021 05:35:11 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail in 160736 REGR. vs. 152631

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

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                11577d85b1a6939380bd16ed9a861653194de044
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  228 days
Failing since        152659  2020-08-21 14:07:39 Z  227 days  428 attempts
Testing same since   160736  2021-04-05 00:08:23 Z    1 days    2 attempts

------------------------------------------------------------
473 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 140239 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 07:24:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 07:24:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105638.202047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTg4d-0007Rk-Us; Tue, 06 Apr 2021 07:24:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105638.202047; Tue, 06 Apr 2021 07: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 1lTg4d-0007Rd-Qs; Tue, 06 Apr 2021 07:24:31 +0000
Received: by outflank-mailman (input) for mailman id 105638;
 Tue, 06 Apr 2021 07:24:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WgwS=JD=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lTg4c-0007RY-TQ
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 07:24:31 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9facefb6-ad17-4bbb-a395-e5931d064ab2;
 Tue, 06 Apr 2021 07:24: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: 9facefb6-ad17-4bbb-a395-e5931d064ab2
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617693869;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Dic6IK8QayCg/s6bayaGiGRZd2WYKi2gNIf366dtmlU=;
  b=hUP/6W5pkznEm9r89v6Q4iRlV4dutSzF4Qcpigz9U/lr3n35cr6hlifT
   57lMWXyVFVbExU6f+y3pOKBA2V7T79CoMStors/RV+ski3N8jmDVMD/WR
   +no5Sg2LlAvJ+5JV2GSObSxfs94nYZGgK69sVoF6J8PPr4Y9m/pjpbgIH
   w=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: IUXWMJwBvs8i2u+9Fn5+w1/8ZuIbJ37i+TBlzbuDT5meXP8k0oEqWkyzvL4Pdadal7YLEVetS9
 skecLr5rAk0bzbxPEbznn6CVCL+rn1/etWD965joPzemRuEzdEkiuLo2XATz4fDXjt0I0lAL0J
 EpOETdhwpJtRPuvgw86Otn5LKDnra+daDt6urBGJWGJvtUkzYrUK4UNKMe0gjy632R3CPzNkgG
 9z5olP3DMv8pg90ccfxbGtcp2eCw/4oBFQc18lWAlbrxUks9RGBQ7KQJx0An89YcaSkrMUhEx+
 lBw=
X-SBRS: 5.2
X-MesageID: 41322658
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:3oZioK2rNy3iIrFc+YeymwqjBQ93eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFnNJ1/Z
 xLN5JzANiYNzNHpO7x6gWgDpIEyN6I7KiniY7lvgxQZCtBApsQjDtRIACdD0FwWU1iDZ02CJ
 KT6qN81kCdUF4Qadm2AWRAYvjbq7Tw5d/bSDMlJzpi0gmBiju09KX3eiL14j4yWy5CqI1Sll
 TtvBf+4syY0s2T6hiZ7GPL6oQTpd2J8Ko6OOWpquw4bgrhkRypYoMJYczPgBkQrPu04Fgn1P
 ngyi1QWfhb0H/acmGrrRaF4WCJv1gTwkTvxlOCjXzordaRfkNCN+N6mYlbfhHFgnBQ3u1U7a
 NR02qV87pRAB/Q9R6Ng+TgahBwmkK45UcliO4Y5kYvNLc2Vbk5l+wi1XIQNK1FMDPx6YghHu
 UrJtrb/uxqfVSTaG2clnVzwfS3N05DUCuucwwngIi4wjJWlHd2ww8z38oEhEoN85o7Vt1t+/
 nECKJ1j7tDJ/VmLJ5VNaMke4+aG2bNSRXDPCa5OlL8DpwKPHrLttrR7Kgq4vqpPLgF1oE7lp
 iEcF4wjx9zR2veTem1mLFb+BHER2uwGR73zNtF2pR/srrgALXxNymOT00vjtugr/0TDtazYY
 fwBLtmR9vYaUf+E4dA2APzH7NIL2MFbcETstEnH1KCy/i7b7HCh6j+SrL+NbDtGTErVifUGX
 0YRgX+I81G8wSuUn/8ix7BRmP1diXEjNZNOZmf29JW5JkGN4VKvARQo0++/Nu3JTpLtbFzel
 B/LrPhmqayvnK34m7M8mVsNnNmfwVoyYSld0kPiR4BMkvyf7pGkc6YY3pu0HyOIQI6U9nbCx
 dFp1N8+bu+KpuZwSxKMaPhDkuqy18o4F6aRZYVnaOOofr/cpQjF5A8RehaDgPQDSF4ng5stU
 ZOYAIJXVXkCzvrkKmp5aZkQt33Rp1ZukOLKdQRgW/DvU+czPtfO0czbnqLa4qrpioAAxBTnU
 Z89qcDhqHoo0fSFUIPxMIiMFNNb2yLBqlhFwrtXvQappniZBxwQWCWhTaTlhE0fS7w+18Pg3
 H6RBfkBs3jEx5TvGtV3b3t904xfmKBf1hoYnQ/qoFlE3/a00wDmtOjd+633i+JcV0JzvsGPD
 ytW0phHip+g9S23gWSgjCMCDEvwYgvJPXUCN0YAvju82LoLI2DjqcdGfBIuJ5jKdD1q+cOFe
 aSYRWcIj+9C+Qn3WWu1z4YETgxrHkvivXz3hL5qGC+wX4kGPLXZE18WKtzGaDp00H0A/KTlJ
 lph9M8uuW9dm33d96d0KnSKzpOMAnar2K6R/whwKok954apf92Bd3WQDHI3HZI0FElIMD4mF
 gXTa577LrCU7UfCfA6amZc5B4khd6PJEwkvkjqGec4Z0gqlGKeMNWT4bbEwIBfd3GptU/1Ix
 2Y/CJc9fueAHfG2r4eFq4qIWNZLEI7829v+eued4vWTAWmHtszjGaSIzu4avtaTqPABLAb6h
 B96NuMl/WMdyX51BvL1AELVZ5m4iKiW4eqHAmIGeRU6NS0NlSHn7uy7KeI/UbKYCr+b15dmJ
 ZMekMRZNlSkzUujIU41S6pV6z8y3hV4Gd28HVgjV7i2o+v/WfdEwVHKGTi8+trYQU=
X-IronPort-AV: E=Sophos;i="5.81,308,1610427600"; 
   d="scan'208";a="41322658"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DECKNk2CxHQZ3LUFQ8v+gMV/JTTiJ+PmmZFMb5hByvUOtZFfOWLea2CBcUMFA/8fUsSmXhbnFx/x/d/1LuTOuT1q78viHnI8xhmfpeLw+CRdRmu50JeacL3HG0Cn9HyufYqjgtYKO9KMQfWZtuTNQI/Fbpuf51Qu3RrrQ8SIPaiidhrrt3TL3MULcOwORPWHODeUeghkQwttbs98fEBRsWEcxNAaetUPs+rrsIfU4fDwhAbUd/eJ16Ual1jkQ6CyLfzTBKEjXTauCSg5M7ZpMJ50WQLz7aAyDtYmxunH2FD8xw4qibjyWzIJ3UjkpqoXolEcWIkW0bTtpUvIpEeTPw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LaSM8NYnKk7QGM96Sa85FsEJn1s/VgUk15oZYdXJ8w0=;
 b=KVahHK7Z2oDdD2kVgsJOwF5Uw0uo7foWCVWmb+700f2sWWPWYg5yeV7JY2CA+xHXiT4JLoMQCQj/usM1Yx9YARvDblRxwyxlcy0DEnp1De6KWi3GygOcTCKZN9qgpA8RJq2jUQaVyivdaagWp6EZxdJpXD8+XN5UQWbdhgijEtqAJZZGqlZbdZoJQUzUEKz8W7Mf5ryveBD79xAe7yjq/I+/RV6yTG/kbtArT6xNtoHKF4R9CLUByEv7s22U6pyjQ4sAPOBd4Tff620bACDGbRfc31zxfMcLv4navBnr6/d2WSzMXFbtOsydrDBZ3CcOjKM3wf/sQ510N3HkOGhrAg==
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=LaSM8NYnKk7QGM96Sa85FsEJn1s/VgUk15oZYdXJ8w0=;
 b=CWgZfduCy8GQ6AdBFt+1AwWQbhp2mqHnm7OLUAVw/TWkJ+KktxR5IFbRg25pfv7sjlccXJstoDe2MBcWSAtJ/3iAMxvdXT7rXYRtIPa5C6tG/UsaUapMrbgTzEPUlmoyNvFYe9iBCbhiltuvcz1OWCuppP+CpZkH/DVZd1FTIJs=
Date: Tue, 6 Apr 2021 09:24:18 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
CC: <xen-devel@lists.xenproject.org>, Julien Grall <jgrall@amazon.com>, "Tim
 Deegan" <tim@xen.org>, 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 03/14] xen/x86: shadow: The return type of
 sh_audit_flags() should be const
Message-ID: <YGwMojJV0gCFa4fd@Air-de-Roger>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-4-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210405155713.29754-4-julien@xen.org>
X-ClientProxiedBy: MRXP264CA0005.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8fbbd864-2399-4ee4-a4de-08d8f8cd0176
X-MS-TrafficTypeDiagnostic: DM4PR03MB5967:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB5967FFEE2174396EA0991A7C8F769@DM4PR03MB5967.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 6FjElxC0VJ8bVo+oQQodvDvcd/6JI/dJM5hzXZoKDuEW6e4YjrKKvc9s79KtDCR+nHBaZK8q1XEM4Ue+CJlYEamRC7aMEqeQVTv+Mwj9Y+H2+NhwliDOIWoVRZYH2EthxJ3QxBZJPMvmsJ605yB+P2z3HWUO4uuw5NIt1AJLO1+Skpw1i0iSoGj+aRyhKYyaY3lzM+2IMAH3+rWmzDGVrlKf8KqHjcTnB83xBF9mPBEFnxKLIZhgI2xwF9s/BMIauxQKAC6RYu2ud0ikX1OZON5EN9urZRD9xh0N1BhFGZmWD2JRgE6jYOtOzghKDrU19PrbUaN7PzeOTD9VzuZVHaPG59tladNpgi8yrvEbd0/vxKDy3UUqWQMU2bhGxMGECyTV9AIY/hYc68caNPgvm3MyJBgHMi0UGBO5jisIuAJNFEbyKilZUioL5vBOhuMvx6oIYwsSTH+KXjFx2AJR4oiYsuXvCoVTA8nugEpKnxbRdfa4bYre0rOcstM6zrCrFMXRj46UiRqSGxJYEeTNATVbZ0Q/jtwFIwWzn1d1JoMW2YUbI9aIGEZmj3OEXPf9ZLIAcijpNYuejt8SxXSrxSkCEoiMSEUHkb3esaLFwO5mgATP9LhAq8PbNYKrM99qsqlLVnbyXaYhSCficrG8aA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(366004)(346002)(396003)(39860400002)(136003)(6916009)(26005)(6666004)(6496006)(478600001)(66556008)(66476007)(2906002)(186003)(66946007)(54906003)(316002)(4744005)(33716001)(86362001)(85182001)(16526019)(8936002)(956004)(8676002)(38100700001)(5660300002)(4326008)(9686003)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?Wit2eEZWVHR1ZGZIbU4zSVlmdWlIQk1ZM1JSNk5MVnhwbHFNNFdHUCtyL2Rx?=
 =?utf-8?B?SDFTbGxheWtHZktkckJxdVFRQ1NvTjZQRlhndXBVU0dORUVsMEo1Y014d2lZ?=
 =?utf-8?B?eGtveEJZSUFzdi9Nb3ZUVFI1SW9lbmNORjhCTVFZRDg4UG5yQW5tN3pUNzNY?=
 =?utf-8?B?bDNQY3BuM0pka2x1bGhBZFpVNVNFVnd1QlF2eDFNTFhNMW9EdFpEZ29LNWMx?=
 =?utf-8?B?UURwL0IwYVdzOTJUeFp4SWo1TDhyY0ZXWHpCckgvMkx0T21za2RHVDBZWjBV?=
 =?utf-8?B?Z25HWXB1OWxmQzJSZHBRZ0JuaHFPVmI4NTVMVXRmUFQ2Z1RFWERNVlFZK1lI?=
 =?utf-8?B?Z2d1WVRTYmdtS1hLNnFhdU9zbTFVNUFkRGQ5b2FoN0UzbHVRWDNCc3dJNEQx?=
 =?utf-8?B?Z0pDS2RuQmdseFloVGdoWmp3NG9pdXJhaVZSOGVDWkJpalFaZGYycjZlWGpU?=
 =?utf-8?B?TTZ6K1ZMSWZoTzZHeUZpRU92T3hydTl0VkoxKzJhSE83SXJxUzRUWUpTd25m?=
 =?utf-8?B?eWVZVmp4TEFNZnNyMFFoMklyaEJnOXNhUzRncVVIeDFaV3pVbitzZ2Nza0ZM?=
 =?utf-8?B?aW1jTFhCTytKbTVxTU8xckZMRG1SVXdoZ0x4S3hlckNOTjVjV3hFRnVrdlFG?=
 =?utf-8?B?RWEySlVpd0xWSWc1NlZnMndPUC9QbkRKL3ZVYXUyOFZjWjQ1YlRyQ1FmV3l6?=
 =?utf-8?B?MzluWjEyMERhNG10bm9hQUtza055YUZKWXpaTXlqb1Y4S0cyNEV4eE5aU1lr?=
 =?utf-8?B?NndIaVA5QVVrUUdnK2hHWCtKYURyOEtwSFFraXk0VzVrNmJQd1daNzcxRGx4?=
 =?utf-8?B?dFY5ZFZZNVpNRlMrbTQ2dGpieXIxeVBmM2tzOU9uTnd0RDVvTGVublN0TnA5?=
 =?utf-8?B?dmgwck9UN3g5VGl5blZzR1NGZVZqdytrZWlyZ2FZSU4rb0pNdVdKQ1d3aGdn?=
 =?utf-8?B?MS9uM2pCS3ZSdUtINGQ5SlluZkhKZlZaVWgzVWh6c3VYUDE0bmhMN3gvZ1Vj?=
 =?utf-8?B?dTE5ZTJycDVtaHRZaWZpdVZrN0UyVnpyRzdoQTdTT1hDc1lKSkxZQ0lJL0ZD?=
 =?utf-8?B?ZkYycUVzejhlaDlZaDBJUUl3c0RGbzNxUmJsTFJJbTdUak13TmpOdlpmQjJU?=
 =?utf-8?B?ZzhhZm1lMlJZTDdPM2l0aEVQaFpJZG9OSXczNVlxaGZFOVQ1ZjE4RHU2cWw4?=
 =?utf-8?B?Q2lOcDFaUmg5bHpNcVQ5eFcwOUlReDVLRkZ1SEwzMndCV0NqTHA0K3N6Tjdi?=
 =?utf-8?B?cTR3WnFVL09DZUFUa1FwVFhHYmZoWjc0SFIvVW5uNWlSbkQrcjlXY0hobzJK?=
 =?utf-8?B?ZGhxMnR3cDNBa0U1c2pMcVpWVklPdzFlaHBzaVhHZ0RhS0p2cTVHajYxL09y?=
 =?utf-8?B?QSt6b1JtM0Z1Unk0eWhMS3o2WXptYUlyOXpPOUk0bzZ4bmxZd2xXQzUwcHBp?=
 =?utf-8?B?SUtXWGQwMHlROWVQR0hlQ3YyeG11ZVpzT0lwTVh5UVNYMXg2V0QwRkZMZG5x?=
 =?utf-8?B?Z2c4bWx2bGZObUNyVlRJbmVTb2lKVjdoeVNDL3dBZ1JrOHFoK3AzY05BdVYw?=
 =?utf-8?B?bnBwZ0xiWnV3OHZrZ3Bmb21vTjZMbFJ6T0JTbzQwam5mZ1FlNnF1REJZWE4r?=
 =?utf-8?B?dldDY2oyK1lyWTNPclVFV2VIV2s0Yy9EYkVzSGlkSUpkUDdPRGhZSHc2VVAw?=
 =?utf-8?B?QmhKWEZsaWRQSnBoNU5aZHJOeGRVdld3RjdHaDU2a1RvZndyNnpDb3RKU2Fl?=
 =?utf-8?Q?DsSXOO7cnCf4bufh3rb7KswbvEJNmmS8Ft7NB2+?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 8fbbd864-2399-4ee4-a4de-08d8f8cd0176
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 07:24:25.0671
 (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: H+cTUxA/aScMAFU57zJRaVJ1GOuo9zMhOZTAgAU2m8EDGmF+CuDMIOaZPC5S1YEL9R1sebkBAvwWIVxdz78Y+w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5967
X-OriginatorOrg: citrix.com

On Mon, Apr 05, 2021 at 04:57:02PM +0100, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> The function sh_audit_flags() is returning pointer to literal strings.
> They should not be modified, so the return is now const and this is
> propagated to the callers.
> 
> Take the opportunity to fix the coding style in the declaration of
> sh_audit_flags.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

While doing the cleanup I think you could narrow the scope of the 's'
variables also, but doesn't need to be part of this patch:

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 07:29:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 07:29:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105649.202059 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTg9U-0007dT-KW; Tue, 06 Apr 2021 07:29:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105649.202059; Tue, 06 Apr 2021 07: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 1lTg9U-0007dM-HY; Tue, 06 Apr 2021 07:29:32 +0000
Received: by outflank-mailman (input) for mailman id 105649;
 Tue, 06 Apr 2021 07:29:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WgwS=JD=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lTg9T-0007dH-8L
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 07:29:31 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2e98721e-934c-4694-adfe-7ec3994501b0;
 Tue, 06 Apr 2021 07:29:30 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2e98721e-934c-4694-adfe-7ec3994501b0
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617694170;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=4Ww9wXXPGkM2/E52FDo0SFlPVEKaXXM1ywRi2WExDMc=;
  b=UVwETZ0CK8t7TtOvB3OS6puxpMY7BjadO5vzFnZwUpoWlsvi9Bp5dTru
   Bf0N+YjR85Prw2ofC8Sq/gWFNIbtYPDbAu0QPvspYEKydA1ikQni3NTMb
   echKAzmMKUjUF98hlmKuFx/fwP2FofUNq5OgbNth/lrxPcHUKeaFSkc+W
   k=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: N/DowTvzGPe2tJNuA73e7yFPMSJNXsXjwiWLTQQaQZfb9p0B/8tlpEfJu3iGf5auscHR259JCj
 DFjGbn+MpGNzxmcf1hoKMdQMzt6VMSCBaH5IMxbSDYrIqCT2/z6m4HEDSPZbE9SVgmxWRNMrb1
 3Q5DrzKlfhTwEt7HD+Qq9TtQuBw0VJDWAWzFhQH1ZEgZR+l72K4CzuvDp7qdCnmyR1bX2ekOnp
 ENMLlvkRhfhYd037IzVJE09xszbYAZUVQbSuGX6Amd+C9YhKXdt2c0ld6OSnvyTpdJwnxXR3uI
 wY0=
X-SBRS: 5.2
X-MesageID: 40946663
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:vr2Yba2rJPzdM5SwsIN/MwqjBE0kLtp033Aq2lEZdDV+dMuEm8
 ey2MkKzBOcsloscVwDufTFAqmPRnvA6YV4iLN7AZ6OVBTr0VHGEKhM9o3nqgePJwTb+vRG3a
 ltN4hSYeeAbmRSqcb/7E2GH807wN+BmZrIuc7kw31gTR5nZshbhm8SZzqzKFF8RwVNGPMCZf
 ihz/dAzgDBRV0nKui9G3kZT6ziirTw5fbbSC9DPTBixCmi5AnYjYLHLw==
X-IronPort-AV: E=Sophos;i="5.81,308,1610427600"; 
   d="scan'208";a="40946663"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AlG9DxylwRe43blyWG4UQnRgTrRB5NdYCRXzYTYFDB7PHyz2OZGzO0YjMSyXeSB5BuUf9YACwvH7W1QDSiSLia+Njgt0fkOpEZS3vbZ6UvQsLsHRLkfXYe7D4BxSMsEzWxpSI8xjOMQS1E98L+6PcGRCGCQ/H6frqnDeRnncYp/2F4P+bBtgrxE/0Oy/cev9kXBDGhpMYpxyjbHX0QODSAz9pJoh8kLZlbWv+MDpFUM10E5s9iHhKlCZ+VhbUcLEZ3fBmxQV2TODA1poV4CzpsjV3vIpgDo3mh6McLMkAq85hztDe5p7jp/4IT25bLYOLUta2ionzsOzUYksl1a63w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GC/Nd7vUo+zO40AkbW/KhsU7bPjZbbPFHxSbzenE5pk=;
 b=VxXRH+0OapZcWHOFHNG7XGXzFeLyLJYKIa+EppdYa0uuiS16qwJsm056KFLzzW56ZUrYsSQw1RhHepTLFXWSGTSkskjGixg4YUyUEhwl1qJSYYDv14kGNfeTMZpK7E+Ag1lWIzwZzV3qzgMdfj2YUqkc4RHougAOD77Bs3tD74EFABSoEA8xni0wV3XosS0Tyr1BKCtmO3SWlvH7Rj8aPDhBDDxhdVQomIOecWvBE/GF/HQ/Ih+CVQadzMqPwh7YQc/jA4LMulab0ENNHk/YNd4FMvomufPpuXS11rvkIiAQSWallZqShb0PUysG8NSUaniRMeTf4PLGY8Hid9Di6Q==
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=GC/Nd7vUo+zO40AkbW/KhsU7bPjZbbPFHxSbzenE5pk=;
 b=UMZDrV8M69Z3oIQS80mSLX7X61istfN65I4YiIFaa2w0P2/2BfJzvrPDj79iPYJ+F08NKPJLjexrz4ds3qkQUKn8bCAPpb+3GjUF05++6tNn9LuqNrDwXmkjjOUVcsj4DKj1YfDSWhwwlS+mIwHfO465Lf20fdbPizGNLLXG/dY=
Date: Tue, 6 Apr 2021 09:29:19 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
CC: <xen-devel@lists.xenproject.org>, Julien Grall <jgrall@amazon.com>, Jan
 Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Wei
 Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>
Subject: Re: [PATCH 08/14] tools/firmware: hvmloader: Use const in __bug()
 and __assert_failed()
Message-ID: <YGwNz6ZP8qtVVx+D@Air-de-Roger>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-9-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210405155713.29754-9-julien@xen.org>
X-ClientProxiedBy: MR2P264CA0148.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::11) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 9d176ede-b133-4449-8d59-08d8f8cdb4fe
X-MS-TrafficTypeDiagnostic: DM6PR03MB4682:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB468225A09BA02180DF0D35408F769@DM6PR03MB4682.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: w3S72kco+yECnIixrukGcpzWr/cEE7f8CgERzXdqRhVk+vH5KWITPVobzMXsDw+dxSJnJ3RJOGtjJ8pWPlnBPy3yVcs4a20oHrm1Fzc9oTLxYdVzWLvgSiC8850Ay6CRTd85BB0pee9MY6KkYKYPCY/nWEdW8TRegrOx8T2fb9KClLt3jvA2J5z56ACDORSq3iEuWTgWw++chUY0ojRtQZI7+2U0T5oA2bw5/cdPioEICMAmh9CPhcun2LSD5IydQIe9Dt8fPar0xiXNL66qxAE9fnVjlVZEAerxCqqlmbVc5jWG0SjoTJqSY0jOyTQfJ9lL8xCHMCGztqO0s7bzh1cSs5VvY7chWnXUQOuZdfOUeEZoVcOtyrRjQHs+bHhYDsUajrwhJAfjsYhBrF6D5BEBxqmLcanqUtCYOaRV1dtwRFLTVItoCXrnItYGfTOTRT+a/sAgkF0KAeHqNfwTqBzYw5LSdKrXKD5QOpgIoNPx6tb9e9/L4VLLfSvQ+Izo/wM8Rpql3CPmlJY4lljiFdnQgQKPtLaZmma/JzTTGlgiI6EECUJEPqKERm/HTtzSx2blATTGUV7Su7yRAHCvOtnXKfGNt3Ge2A85SvCgedZBZR+8KkqpXVtwQaWEWLPmAPNfk0wsXcZgJGXq80U0nH1TVO5WaY6pFXFUA4h8FeBD+RSyNwcxgaVAYfI/7AYs
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(376002)(136003)(39860400002)(396003)(346002)(2906002)(956004)(4326008)(5660300002)(66946007)(4744005)(86362001)(66556008)(6486002)(6916009)(9686003)(316002)(54906003)(8936002)(478600001)(33716001)(85182001)(66476007)(186003)(26005)(6666004)(16526019)(8676002)(38100700001)(6496006)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?QbNR6/HGlxGlbdym0vJ8CbbQxY9zmfUyMHCS6PM?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 9d176ede-b133-4449-8d59-08d8f8cdb4fe
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 07:29:26.2784
 (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: 3FO2IU6tWCVwiQlWlh2tOH8AQESGcfYWKfJDlvceyo5yrWUpUgMHs9++uaktJq/QXDaG3/QZiSpGOfltSVqgUg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4682
X-OriginatorOrg: citrix.com

On Mon, Apr 05, 2021 at 04:57:07PM +0100, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> __bug() and __assert_failed() are not meant to modify the string
> parameters. So mark them as const.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

While looking at this I think we should also make the line parameter
unsigned, but again doesn't need to be part of this patch.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 07:40:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 07:40:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105653.202070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTgKH-0000uA-M0; Tue, 06 Apr 2021 07:40:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105653.202070; Tue, 06 Apr 2021 07:40: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 1lTgKH-0000u3-It; Tue, 06 Apr 2021 07:40:41 +0000
Received: by outflank-mailman (input) for mailman id 105653;
 Tue, 06 Apr 2021 07:40:39 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTgKF-0000ty-Is
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 07:40:39 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 91e4aaed-fa06-48fd-96ba-223fd7648f79;
 Tue, 06 Apr 2021 07:40:38 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9119EB013;
 Tue,  6 Apr 2021 07:40: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: 91e4aaed-fa06-48fd-96ba-223fd7648f79
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617694837; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=qiGvOmOcRxUSbOGwO40D2AIMHnVfU1thnCDMr4W8rEI=;
	b=g2sHFeMS1lvRDaPKK26/pmdN5tJylETBoEESgLHKuNscAuMmpiPnf5Xzy+oTTqBXEv0Cyz
	BYpl4qZawqIg79cC7/slo0ufeKv+GJkns/MS4uI8CyggyMvDTWY+WWqbLvX3MCZYV0EAJa
	2qjJMlsMoQvjkqh0PZ38f78Oup9koA0=
Subject: Re: [PATCH 2/2] xen/gunzip: Allow perform_gunzip() to be called
 multiple times
To: Julien Grall <julien@xen.org>
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210402152105.29387-1-julien@xen.org>
 <20210402152105.29387-3-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <43460d2d-b259-5010-62a7-47ded0ec623b@suse.com>
Date: Tue, 6 Apr 2021 09:40:40 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210402152105.29387-3-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 02.04.2021 17:21, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Currently perform_gunzip() can only be called once because the
> the internal state (e.g allocate) is not fully re-initialized.
> 
> This works fine if you are only booting dom0. But this will break when
> booting multiple using the dom0less that uses compressed kernel images.
> 
> This can be resolved by re-initializing bytes_out, malloc_ptr,
> malloc_count every time perform_gunzip() is called.
> 
> Note the latter is only re-initialized for hardening purpose as there is
> no guarantee that every malloc() are followed by free() (It should in
> theory!).
> 
> Take the opportunity to check the return of alloc_heap_pages() to return
> an error rather than dereferencing a NULL pointer later on failure.
> 
> Reported-by: Charles Chiou <cchiou@ambarella.com>
> Signed-off-by: Julien Grall <jgrall@amazon.com>

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 07:45:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 07:45:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105658.202083 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTgPI-00016x-9v; Tue, 06 Apr 2021 07:45:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105658.202083; Tue, 06 Apr 2021 07: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 1lTgPI-00016q-6P; Tue, 06 Apr 2021 07:45:52 +0000
Received: by outflank-mailman (input) for mailman id 105658;
 Tue, 06 Apr 2021 07:45:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTgPG-00016l-TF
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 07:45:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5ca01984-3766-4172-a421-be673badd0cc;
 Tue, 06 Apr 2021 07:45:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 35B3CAF5A;
 Tue,  6 Apr 2021 07: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: 5ca01984-3766-4172-a421-be673badd0cc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617695149; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=g1SCRcNKBxEFCPFDNOXIJ+kQKt2OChDK6vWjs45jKWk=;
	b=boORjMmZjvdjw3TfEW5NA94l+9J3/NFoSyI8Mg+ObLFWgcMGy8zsxi8idG7mRGbZ5BisSi
	JZ1HIGlWrq9jn1+zgqhpUdW8El34qVqaN85M3Z5OLp4co7CN1M2s4wNzvrtTzT2xzeRwjB
	uMan7Mf8N9T4paVWDuNksDGJiaD1Mjs=
Subject: Re: [PATCH 0/2] xen/arm: Couple of bug fixes when decompressing
 kernels
To: Julien Grall <julien@xen.org>
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210402152105.29387-1-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7a65f71b-e5a6-22aa-d360-4045b266229e@suse.com>
Date: Tue, 6 Apr 2021 09:45:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210402152105.29387-1-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 02.04.2021 17:21, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Hi all,
> 
> The main goal of this series is to address the bug report [1]. It is not
> possible

...?

> While testing the series, I also noticed that it is not possible to
> re-use the same compressed kernel for multiple domains as the module
> will be overwritten during the first decompression.
> 
> I am still a bit undecided how to fix it. We can either create a new
> module for the uncompressed kernel and link with the compressed kernel.
> Or we could decompress everytime.
> 
> One inconvenience to kernel to only decompress once is we have to keep
> it until all the domains have booted. This may means a lot of memory to be
> wasted just for keeping the uncompressed kernel (one my setup, it takes
> ~3 times more space).
> 
> Any opinions on how to approach it?

Well, it's not "until all the domains have booted", but until all the
domains have had their kernel image placed in the designated piece of
memory. So while for the time being multiple decompression may indeed
be a reasonable approach, longer term one could populate all the
domains' memory in two steps - first just the kernel space for all of
them, then load the kernel(s), then populate the rest of the memory.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 07:50:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 07:50:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105663.202095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTgTz-0001yF-Tf; Tue, 06 Apr 2021 07:50:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105663.202095; Tue, 06 Apr 2021 07:50:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTgTz-0001y8-Pk; Tue, 06 Apr 2021 07:50:43 +0000
Received: by outflank-mailman (input) for mailman id 105663;
 Tue, 06 Apr 2021 07:50:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTgTy-0001y3-Uy
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 07:50:42 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 825afaef-827f-4d03-bf4e-d7c001191e12;
 Tue, 06 Apr 2021 07:50:42 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8B9D1AFCB;
 Tue,  6 Apr 2021 07:50: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: 825afaef-827f-4d03-bf4e-d7c001191e12
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617695441; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=XEbKX/Z1ETdz+l1++th0T2qOpGnkM3VaHCw6qeEZGt4=;
	b=WaWbsrn2ZuLWhNWodEyEB/p0zQfyLi/1M3nqb/OAP80ypUdgjgyt4LYSawdVXj7rUPa4w8
	CA1WeSp+2lhtsXM4s6hKqEZ+T3NGaGQhFedvbnCQMLFHRUEknu3/eWlYK2n/OW6GSikzUf
	kVXyDqAfGQHNcqbK7+RZHIpAc+8mcDY=
Subject: Re: [PATCH 00/14] Use const whether we point to literal strings (take
 1)
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Dario Faggioli <dfaggioli@suse.com>, Tim Deegan <tim@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <bdcf123c-0345-a496-03fa-4279726469ea@suse.com>
Date: Tue, 6 Apr 2021 09:50:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 05.04.2021 17:56, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Hi all,
> 
> By default, both Clang and GCC will happily compile C code where
> non-const char * point to literal strings. This means the following
> code will be accepted:
> 
>     char *str = "test";
> 
>     str[0] = 'a';
> 
> Literal strings will reside in rodata, so they are not modifiable.
> This will result to an permission fault at runtime if the permissions
> are enforced in the page-tables (this is the case in Xen).
> 
> I am not aware of code trying to modify literal strings in Xen.
> However, there is a frequent use of non-const char * to point to
> literal strings. Given the size of the codebase, there is a risk
> to involuntarily introduce code that will modify literal strings.
> 
> Therefore it would be better to enforce using const when pointing
> to such strings. Both GCC and Clang provide an option to warn
> for such case (see -Wwrite-strings) and therefore could be used
> by Xen.
> 
> This series doesn't yet make use of -Wwrite-strings because
> the tree is not fully converted. Instead, it contains some easy
> and likely non-controversial use const in the code.
> 
> The major blockers to enable -Wwrite-strings are the following:
>     - xen/common/efi: union string is used in both const and
>     non-const situation. It doesn't feel right to specific one member
>     const and the other non-const.

I'd be happy to see a suggestion of how to avoid this in a not overly
intrusive way.

>     - libxl: the major block is the flexarray framework as we would use
>     it with string (now const char*). I thought it would be possible to
>     make the interface const, but it looks like there are a couple of
>     places where we need to modify the content (such as in
>     libxl_json.c).
> 
> Ideally, I would like to have -Wwrite-strings unconditionally used
> tree-wide. But, some of the area may required some heavy refactoring.
> 
> One solution would be to enable it tree-wide but turned it off at a
> directroy/file level.

At least as a transient approach I think this would make sense. EFI in
particular has other reasons already to specify a custom option
(-fshort-wchar).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 07:57:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 07:57:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105669.202107 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTgaU-0002CC-JM; Tue, 06 Apr 2021 07:57:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105669.202107; Tue, 06 Apr 2021 07:57: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 1lTgaU-0002C4-GF; Tue, 06 Apr 2021 07:57:26 +0000
Received: by outflank-mailman (input) for mailman id 105669;
 Tue, 06 Apr 2021 07:57:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTgaT-0002Bw-Dn
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 07:57:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b37bdff3-65e0-4534-aad8-72b7a68e097e;
 Tue, 06 Apr 2021 07:57:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BC57CB12A;
 Tue,  6 Apr 2021 07:57: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: b37bdff3-65e0-4534-aad8-72b7a68e097e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617695843; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=EOsNinbCvHtgx2zCpCcQBiUJ0C9jVc1IKprXgBnJ0Z0=;
	b=HykimJKD4vBf8e7D8flZmBDMyTYStHylthGMsgfZbAFOtX0yCbJRsNbQ8lDMvS0kGttj3n
	EgU8ikQ1lUvtrX5PL9iuDKgec7rcMyMnVPlU4RTadLqVoBeDdySxbgK3AgUBVrKhH9b+iv
	ds8iZFPvjetPcn32d+ZYD/+HuSzQgoY=
Subject: Re: [PATCH 01/14] xen: Constify the second parameter of
 rangeset_new()
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-2-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b318ba40-a38a-4120-496d-5adef66c827a@suse.com>
Date: Tue, 6 Apr 2021 09:57:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210405155713.29754-2-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 05.04.2021 17:57, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> The string 'name' will never get modified by the function, so mark it
> as const.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

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

> --- a/xen/common/rangeset.c
> +++ b/xen/common/rangeset.c
> @@ -421,7 +421,7 @@ bool_t rangeset_is_empty(
>  }
>  
>  struct rangeset *rangeset_new(
> -    struct domain *d, char *name, unsigned int flags)
> +    struct domain *d, const char *name, unsigned int flags)
>  {
>      struct rangeset *r;

Remotely along these lines the function also has no need anymore to
use snprintf() - safe_strcpy() very well fits both purposes. But
quite likely for another patch.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 08:07:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 08:07:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105679.202119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTgjk-0003he-Ni; Tue, 06 Apr 2021 08:07:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105679.202119; Tue, 06 Apr 2021 08:07: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 1lTgjk-0003hX-JL; Tue, 06 Apr 2021 08:07:00 +0000
Received: by outflank-mailman (input) for mailman id 105679;
 Tue, 06 Apr 2021 08:06:58 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTgji-0003hS-Ig
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 08:06:58 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3ba5ffdd-a4ec-465a-8274-13cf2507fe51;
 Tue, 06 Apr 2021 08:06:57 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E3DDCAFCB;
 Tue,  6 Apr 2021 08:06: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: 3ba5ffdd-a4ec-465a-8274-13cf2507fe51
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617696417; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=MIS3ZmqM+YwG/nmancgSNx2znAgMGmwMb0QdegUPzk8=;
	b=E+yPFAvWfithZm8M4A1hGR4ZBZ8OC4FPaUWBbn7yvtpEYu9x1zXFkDtaD8lwXyOPInTLdJ
	IZi44/27k5hsZiqAjlMYN0UwWXOY85MdUyD75OCRz0/+esgI5YKPLBc/LaLVTEDCIZTKHz
	5M10x5tea4NfY8Z/2yz+MfBSSkc/rLw=
Subject: Re: [PATCH 02/14] xen/sched: Constify name and opt_name in struct
 scheduler
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>, George Dunlap
 <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>,
 xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-3-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5618bed6-a213-d2c9-4cbf-d95cb4dc02b4@suse.com>
Date: Tue, 6 Apr 2021 10:07:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210405155713.29754-3-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 05.04.2021 17:57, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Both name and opt_name are pointing to literal string. So mark both of
> the fields as const.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>
albeit ...

> --- a/xen/common/sched/private.h
> +++ b/xen/common/sched/private.h
> @@ -272,8 +272,8 @@ static inline spinlock_t *pcpu_schedule_trylock(unsigned int cpu)
>  }
>  
>  struct scheduler {
> -    char *name;             /* full name for this scheduler      */
> -    char *opt_name;         /* option name for this scheduler    */
> +    const char *name;       /* full name for this scheduler      */
> +    const char *opt_name;   /* option name for this scheduler    */

... I'd like to suggest considering at least the latter to become
an array instead of a pointer - there's little point wasting 8
bytes of storage for the pointer when the strings pointed to are
all at most 9 bytes long (right now; I don't expect much longer
ones to appear).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 08:10:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 08:10:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105686.202130 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTgmx-0004Zy-BO; Tue, 06 Apr 2021 08:10:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105686.202130; Tue, 06 Apr 2021 08:10: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 1lTgmx-0004Zr-8W; Tue, 06 Apr 2021 08:10:19 +0000
Received: by outflank-mailman (input) for mailman id 105686;
 Tue, 06 Apr 2021 08:10:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTgmv-0004Zm-Ua
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 08:10:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id bd38c486-1bed-4ecc-8e17-37e36dcf9d49;
 Tue, 06 Apr 2021 08:10:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 947A3B0C6;
 Tue,  6 Apr 2021 08:10: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: bd38c486-1bed-4ecc-8e17-37e36dcf9d49
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617696616; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=zG0LLFY+tU19ClXuT00E9c31o4nZ1CrujqJZ8DUtc0Q=;
	b=tRl8/dkbVx72x0a8/dlPu1xHnnwq4ckascB1ByFNVO1rVtDG+xg1rqcaaLAGSRAgaDZU/Q
	hXNfTS+h/xfLzeAmEFq1Ir0mMifuWbcHxjj7G6urT520cjJ4McSG59A0DgZ3TSUBgXuqcZ
	1Do3ByDFQ1P7Q2oGbZTCTF1to3b5R6c=
Subject: Re: [PATCH 04/14] xen/char: console: Use const whenever we point to
 literal strings
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-5-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <507452bf-9a9c-a48c-d8f5-cba99ac2e646@suse.com>
Date: Tue, 6 Apr 2021 10:10:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210405155713.29754-5-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 05.04.2021 17:57, Julien Grall wrote:
> --- a/xen/drivers/char/console.c
> +++ b/xen/drivers/char/console.c
> @@ -168,7 +168,7 @@ static int parse_guest_loglvl(const char *s);
>  static char xenlog_val[LOGLVL_VAL_SZ];
>  static char xenlog_guest_val[LOGLVL_VAL_SZ];
>  
> -static char *lvl2opt[] = { "none", "error", "warning", "info", "all" };
> +static const char *lvl2opt[] = { "none", "error", "warning", "info", "all" };

If you add any const here, then I think you should go to full way
and also add the second missing one. Then
Reviewed-by: Jan Beulich <jbeulich@suse.com>

Arguably the array should also be local to xenlog_update_val().

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 08:19:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 08:19:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105691.202142 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTgva-0004og-7o; Tue, 06 Apr 2021 08:19:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105691.202142; Tue, 06 Apr 2021 08:19: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 1lTgva-0004oZ-4e; Tue, 06 Apr 2021 08:19:14 +0000
Received: by outflank-mailman (input) for mailman id 105691;
 Tue, 06 Apr 2021 08:19:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTgvZ-0004oU-AQ
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 08:19:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3ff048b1-9b51-45e9-b074-3db47ea43af8;
 Tue, 06 Apr 2021 08:19:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7178FB0B7;
 Tue,  6 Apr 2021 08:19: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: 3ff048b1-9b51-45e9-b074-3db47ea43af8
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617697151; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=O1MsyF6f/jXjbaMOsUf7g78jDGOjiDV17R4ULgvuVgo=;
	b=qqSlZHT3ojYZSOToLD/KiNxLV0dEkyVaJfnl7/76QrrjPgDj3UgNVo/z/6MWv/Ytas6f46
	mZfqkoQMxGQzv/RBklgw+6XU8jX6KQndTGCrjqL7VTlD2k1TWMRqwNfihF9NO7ACbZuxx4
	+0rSe/zoB/QhTCWL9C2QxQYVlN/HBv4=
Subject: Re: multiboot2 and module2 boot issues via GRUB2
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Roman Shaposhnik <roman@zededa.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, grub-devel@gnu.org,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
 <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
 <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
 <YGWH89ubVe104Tnl@Air-de-Roger>
 <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <f800ac60-7d49-fa08-ca8d-1c75408dd2de@suse.com>
Date: Tue, 6 Apr 2021 10:19:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 21:43, Andrew Cooper wrote:
> On 01/04/2021 09:44, Roger Pau Monné wrote:
>> On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
>>> On 01.04.2021 03:06, Roman Shaposhnik wrote:
>>>> And the obvious next question: is my EVE usecase esoteric enough that
>>>> I should just go ahead and do a custom GRUB patch or is there a more
>>>> general interest in this?
>>> Not sure if it ought to be a grub patch - the issue could as well
>>> be dealt with in Xen, by concatenating modules to form a monolithic
>>> initrd.
>> I would rather have it done in the loader than Xen, mostly because
>> it's a Linux boot specific format, and hence I don't think Xen should
>> have any knowledge about it.
>>
>> If it turns out to be impossible to implement on the loader side we
>> should consider doing it in Xen, but that's not my first option.
> 
> Concatenating random things which may or may not be initrds is
> absolutely not something Xen should do.  We don't have enough context to
> do it safely/sensibly.

Well, I wasn't suggesting anywhere to concatenate random things.
Instead I was envisioning a command line option giving us the
context we need (e.g. "initrd=3+5").

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 08:47:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 08:47:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105701.202158 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lThMV-0007T4-I5; Tue, 06 Apr 2021 08:47:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105701.202158; Tue, 06 Apr 2021 08:47: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 1lThMV-0007Sx-EG; Tue, 06 Apr 2021 08:47:03 +0000
Received: by outflank-mailman (input) for mailman id 105701;
 Tue, 06 Apr 2021 08:47: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 1lThMU-0007Sp-8l; Tue, 06 Apr 2021 08:47: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 1lThMU-0002dP-1k; Tue, 06 Apr 2021 08:47: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 1lThMT-00077y-Ni; Tue, 06 Apr 2021 08:47:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lThMT-0000Gh-NE; Tue, 06 Apr 2021 08:47:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=k1RWlb033urEHx9GIrgBmqR8yhu4EQpVsMsY7ARRZDE=; b=HwlXLkKngxzc4PRsyUaAt/wEAw
	1ynJtxE3V8pZfLdFGLKDpltK74KHJWYatIJZ0xIOFEV6sCDJW9GolCmQz+WST3gG05uXDfwjELyT+
	XdCNh4h0dSQUd9T+nlEA8i6KCZXkujIWk30EyohxNRTVUotQsrwDjLGAfmYFKD+YKubc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160761-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160761: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=2fc3a704e7083afab0537cf0777521afa9cc1db6
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 06 Apr 2021 08:47:01 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              2fc3a704e7083afab0537cf0777521afa9cc1db6
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  270 days
Failing since        151818  2020-07-11 04:18:52 Z  269 days  262 attempts
Testing same since   160661  2021-04-02 04:19:00 Z    4 days    5 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 08:50:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 08:50:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105706.202173 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lThPr-0008Jq-2G; Tue, 06 Apr 2021 08:50:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105706.202173; Tue, 06 Apr 2021 08:50:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lThPq-0008Jj-VP; Tue, 06 Apr 2021 08:50:30 +0000
Received: by outflank-mailman (input) for mailman id 105706;
 Tue, 06 Apr 2021 08:50:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lThPq-0008Je-CB
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 08:50:30 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e3d3f93f-2b6e-4e6c-a03b-ae529ff7086c;
 Tue, 06 Apr 2021 08:50:29 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C48E1AE06;
 Tue,  6 Apr 2021 08:50: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: e3d3f93f-2b6e-4e6c-a03b-ae529ff7086c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617699028; 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=5u7mnATsOHEwtJcO87Og7ZVqkhZiBkCd9r/JcsIFqzw=;
	b=bbGRrpgfrWtcCoeepinsT0AQkm/Siwr6fgDqubRVJErNzhkwlV7OXM0SPYQPlwFfF5xbOj
	2Nrztxp//upBl0e/SYOoViKWAebj5k8KuAq/JvCOqFzh2y86NSVI30jiHDH0kyDPEz2gPb
	kXOSAviWRvTZJjbcKKsEVB/QAvtEL9Q=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] rangeset: no need to use snprintf()
Message-ID: <2338703b-3613-41c6-8ae6-387ba2869408@suse.com>
Date: Tue, 6 Apr 2021 10:50:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

As of the conversion to safe_strcpy() years ago there has been no need
anymore to use snprintf() to prevent storing a not-nul-terminated string.

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

--- a/xen/common/rangeset.c
+++ b/xen/common/rangeset.c
@@ -436,14 +436,7 @@ struct rangeset *rangeset_new(
     BUG_ON(flags & ~RANGESETF_prettyprint_hex);
     r->flags = flags;
 
-    if ( name != NULL )
-    {
-        safe_strcpy(r->name, name);
-    }
-    else
-    {
-        snprintf(r->name, sizeof(r->name), "(no name)");
-    }
+    safe_strcpy(r->name, name ?: "(no name)");
 
     if ( (r->domain = d) != NULL )
     {


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 08:52:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 08:52:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105712.202188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lThRl-0008Ub-Go; Tue, 06 Apr 2021 08:52:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105712.202188; Tue, 06 Apr 2021 08: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 1lThRl-0008UU-Cs; Tue, 06 Apr 2021 08:52:29 +0000
Received: by outflank-mailman (input) for mailman id 105712;
 Tue, 06 Apr 2021 08:52:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ww1H=JD=linaro.org=lee.jones@srs-us1.protection.inumbo.net>)
 id 1lThRk-0008UP-A7
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 08:52:28 +0000
Received: from mail-wr1-x431.google.com (unknown [2a00:1450:4864:20::431])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b3ae95d4-c32e-4159-bc3e-52f3b204efb9;
 Tue, 06 Apr 2021 08:52:27 +0000 (UTC)
Received: by mail-wr1-x431.google.com with SMTP id e12so242108wro.11
 for <xen-devel@lists.xenproject.org>; Tue, 06 Apr 2021 01:52:26 -0700 (PDT)
Received: from dell ([91.110.221.193])
 by smtp.gmail.com with ESMTPSA id i8sm32058595wrx.43.2021.04.06.01.52.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 06 Apr 2021 01: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: b3ae95d4-c32e-4159-bc3e-52f3b204efb9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google;
        h=date:from:to:subject:message-id:references:mime-version
         :content-disposition:content-transfer-encoding:in-reply-to;
        bh=3BgNDMl40dnCwKRmhOLm+B9cf4ULCtKCWabOrS4ebcw=;
        b=Asdziv4oEb1GmkAaeVVDLWI3Znln2RaErCLNpsXLzuYFdOjFmI+wtm1ABBb8Qzrhny
         TcmAdlweTBezZn6bLWI5bxAO6sixQ1qoRcBGyyLqdiQLPIYhlFyN1h+5meYfiH4JkWto
         p6pFe2LqKb8alZFUYIMjJAMVfORnDXryC0wNScdPtyGiNK6QyfD0bVL+lTSMwej9pLcV
         iQzMPvscomIPMUzjFxPNO4iPBn4L4vhotDqv492YkhoERqcLIfLNP5vCfCnxSMMP6sSJ
         KcvhK8JYrWbX7nPWHQ5J91FkPJXnbjYB6Ap1ZgdEBSg2YwCnF2NloEpC1gpS/cLHXxVn
         QScw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:subject:message-id:references
         :mime-version:content-disposition:content-transfer-encoding
         :in-reply-to;
        bh=3BgNDMl40dnCwKRmhOLm+B9cf4ULCtKCWabOrS4ebcw=;
        b=FxJSYKCOF0TmpCyGgJTRhJhnZkl/aOrLXM4ARyaknun7i9ouY/RywVyvwOvUYoFaly
         riEItBMEOQ1wVMs88dgK21Yknp36/Gjkcg6Wrhf7foJ6w91nFtlALjARMgNzFqcw2xsD
         QxqXccsuqI5gteQP887WsCFtlHXWyF4ve/MAy6VBl+Uue4nZv7G/Oul/FwbbDuLGNzv2
         UnF2VDBrZ+Y3drAOucOk9Byh2pwSkj2AWmI2GMo2UDfdvIcbThc8VcLDlGsTiJfqL/dC
         4W2nFo9bYxCl2QkTqMUKlhA+j+ZOVmWQ+yNR2Do6e3q7W6fHGlhlg4g1lfBD6XBjXM6O
         wtaw==
X-Gm-Message-State: AOAM531u1fw3EZ6S4TaPcb802a/gOICN9I3x2H/+FrFMDGjnZLesfnVY
	eN/64e+p1aJ++cpbi2fhd8kfLQ==
X-Google-Smtp-Source: ABdhPJyxLFG0M7WFSnkeNEm7vMCed81i1TOhAivLtyeLJw56m312VuEzXAMWCWyLobQLxSOjXKutyg==
X-Received: by 2002:adf:90f0:: with SMTP id i103mr32839523wri.318.1617699146143;
        Tue, 06 Apr 2021 01:52:26 -0700 (PDT)
Date: Tue, 6 Apr 2021 09:52:23 +0100
From: Lee Jones <lee.jones@linaro.org>
To: linux-kernel@vger.kernel.org,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	drbd-dev@lists.linbit.com, Jens Axboe <axboe@kernel.dk>,
	Joshua Morris <josh.h.morris@us.ibm.com>,
	Juergen Gross <jgross@suse.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	Lars Ellenberg <lars.ellenberg@linbit.com>,
	linux-block@vger.kernel.org,
	Philip Kelleher <pjk1939@linux.ibm.com>,
	Philipp Reisner <philipp.reisner@linbit.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH 00/11] Rid W=1 warnings from Block
Message-ID: <20210406085223.GR2916463@dell>
References: <20210312105530.2219008-1-lee.jones@linaro.org>
 <20210330132130.GK2916463@dell>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210330132130.GK2916463@dell>

On Tue, 30 Mar 2021, Lee Jones wrote:

> On Fri, 12 Mar 2021, Lee Jones wrote:
> 
> > This set is part of a larger effort attempting to clean-up W=1
> > kernel builds, which are currently overwhelmingly riddled with
> > niggly little warnings.
> > 
> > Lee Jones (11):
> >   block: rsxx: core: Remove superfluous const qualifier
> >   block: drbd: drbd_interval: Demote some kernel-doc abuses and fix
> >     another header
> >   block: mtip32xx: mtip32xx: Mark debugging variable 'start' as
> >     __maybe_unused
> >   block: drbd: drbd_state: Fix some function documentation issues
> >   block: drbd: drbd_receiver: Demote non-conformant kernel-doc headers
> >   block: drbd: drbd_main: Remove duplicate field initialisation
> >   block: drbd: drbd_nl: Make conversion to 'enum drbd_ret_code' explicit
> >   block: drbd: drbd_main: Fix a bunch of function documentation
> >     discrepancies
> >   block: drbd: drbd_receiver: Demote less than half complete kernel-doc
> >     header
> >   block: xen-blkfront: Demote kernel-doc abuses
> >   block: drbd: drbd_nl: Demote half-complete kernel-doc headers
> 
> Would you like me to resubmit these?

It's been 3.5 weeks since these were submitted.

We are now at -rc6, so these should be merged soon.

Is there anything you'd like me to do to help?

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 09:06:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 09:06:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105724.202200 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lThfI-00018K-U3; Tue, 06 Apr 2021 09:06:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105724.202200; Tue, 06 Apr 2021 09:06:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lThfI-00018D-Qg; Tue, 06 Apr 2021 09:06:28 +0000
Received: by outflank-mailman (input) for mailman id 105724;
 Tue, 06 Apr 2021 09:06: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 1lThfH-000185-Ho; Tue, 06 Apr 2021 09:06: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 1lThfH-0002yk-88; Tue, 06 Apr 2021 09:06: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 1lThfG-0007ii-W1; Tue, 06 Apr 2021 09:06:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lThfG-0005cH-VS; Tue, 06 Apr 2021 09:06: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=shW1A4LbaSfzfW1PBgHyPHuJiNLAHQgnqblrNZ4X2so=; b=QkSu93q+MqdAVeUN+FHqGQeLky
	ztuUWOnQKbnn3amSxgGp4trQ1EwaPNp0xE55ySw3VuS0EKE7jpN2fLe6hT5iL2Y4boE5jzywsWhwY
	wMN62Sg9o3vkImUwxjRSUjDAZ+fQ4JYYKwqgssh+sI8ttXZEYgt7akxb//gewoOJ6bSo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160757-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 160757: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=4ac02962017c77bf38b462f970c884c2dc7931cf
X-Osstest-Versions-That:
    ovmf=f95cdd316c3d56e8f76b5044be54b9645e1dc60f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 06 Apr 2021 09:06:26 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 4ac02962017c77bf38b462f970c884c2dc7931cf
baseline version:
 ovmf                 f95cdd316c3d56e8f76b5044be54b9645e1dc60f

Last test of basis   160687  2021-04-03 01:55:05 Z    3 days
Testing same since   160757  2021-04-06 01:11:18 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jiaxin Wu <Jiaxin.wu@intel.com>
  Zhang Hongbin1 <hongbin1.zhang@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
   f95cdd316c..4ac0296201  4ac02962017c77bf38b462f970c884c2dc7931cf -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 09:09:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 09:09:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105729.202215 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lThiI-0001IB-EY; Tue, 06 Apr 2021 09:09:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105729.202215; Tue, 06 Apr 2021 09: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 1lThiI-0001I4-B7; Tue, 06 Apr 2021 09:09:34 +0000
Received: by outflank-mailman (input) for mailman id 105729;
 Tue, 06 Apr 2021 09:09:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WgwS=JD=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lThiF-0001Hw-VE
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 09:09:32 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5a879349-f200-47de-9be9-8e3efacf9c5f;
 Tue, 06 Apr 2021 09:09: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: 5a879349-f200-47de-9be9-8e3efacf9c5f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617700170;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=VNu3Oxb0+wnZs4qKmrS/q4mFGlDFsROdeBbj4/ByVT4=;
  b=O7KKIONIYP8J2FbrzOX0MU/5NxHxzsakt9c7uqYPit1V00rrygr5AwZx
   0PGnBMxucsgxq9M2XBGspIfTo2VGCiprPmLhTcQ+3JAJxNWa5d/Mc/snX
   Dz7hLRQOAxR8rOXjWr4WB0Q0NVTwF6lUIzsy40903cPYOEy4UAP/RHnpf
   0=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: KjS5IpdQ5jlXtWB7FqaBEtSmtknOZjyadZOVxQ9cRTSSopydjPIGRZyozBe7FhbmLpUqNcOGeD
 Nos5Wkq4OLFtBs6qv23wWY0YGSp3Bp5C8qQdKv6yTHqtJ9MycX3vjAE/v4kqi/4pmFczo2xWkB
 DuZtA8ndGyTciy5wYY8ZOdhm5oENGbkeDhF/7R5HRaRDuBA+PhiHwELzh4U2TZBfHJos9t4vJs
 f2DSSVI9hgz+dtcoEiMZ6Js3MjXG/4uhWVtsbpyxxj7hxdxzSLtKox7kN5H/LiVpGmL846O7UU
 mZg=
X-SBRS: 5.2
X-MesageID: 40938035
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:n45OhagzEBTRt9P8W5/WrFvOGHBQX7N13DAbvn1ZSRFFG/Gwv8
 qlkO0HkTr9jzgMUH8t8OrwX5Woa1m0z/FIyKMWOqqvWxSjnWOuIp1r44eK+UyHJwTV8OlB2a
 B8N5VvEdGYNykBse/W6BS1euxQo+Wv37uvgY7loktFbQYvUK146hc8NwDzKDwTeCBjJb4UUK
 WR/dBGoT3IQwVrUu2eCmMeV+bO4/3n/aiWAyIuPBIs5AmQgT7A0teTeHKl9ywTXD9VzbAp/X
 KtqX2d2oyYr/q5xhXAvlW8071qmcDswtYGJMuAhtl9EFXRozuof4hoVvm+uik0qoiUiWoCrd
 +kmXsdFvU2z0mUX2mu5TPxxgHr0V8Vmgbf4G7dpUGmnOvUa3YRDdFbiYdQbx3DgnBQxO1Uwe
 ZMxGKWt51eEBPGkmD8/rHzJmpXqnY=
X-IronPort-AV: E=Sophos;i="5.81,309,1610427600"; 
   d="scan'208";a="40938035"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ck3cJktkKirISMHpSGmISpWGVlSipjdm9xI14M54jIIITBmN3JmI6yxHsLV3OsC4yZ/RfEs8Nd767H18jefqtUUJdo/eTK9kngDOxRpYw6g4lMEfngfAMQA4oARWC68WGy+RUG733jXjWbjQGHFGbqtfcwQnfwNcScODNxLdsYtfPXXHW1gYPJB8X4i9oYPNqtLHLAJHjD+QVvb4np/CaZX/Kbs1H7Om0PsOuDE3feymmf7Tx++bdKz/rT295uLZXCxLBcI2lh5XtBfKxOra6U3wajqAAF13EW5GmWlTTjavz/lNeHNLwEqxCWPDOph8UVN4COsIBVtoOdApMdIdsQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7z7WMDrE7g3ZUqn8Gbw2JUMn4tnRJm1w3CiFvtFGwbU=;
 b=Fzz172QEK0KAy/z+4RPY2j4y4w9Pq8NIYfRy8VdgRjo8UlxTTGHgMJh/D8xv8FDhaO4pg2SIY+XJ29GF4Hedxa+j/8cjUuTraRcOkHsT2TkjgkkS0FyhAz4XycToFZ0PMoUfPKsmx7hnJjMfglMHoZQ7O1sZX6NR5bhmJhI49AVTgCknB+fww84C3o+aO/GVQ64hyXfZhA6ho3bgDJDuDMuJ7D7KaAS5BdWoYZQlSFMl/iwLkOisfoO39UAWboRkc2JawD8cinMgHRAtgukohFxnuJyiLgQtoOmzVqtpUpZw7mDkQghJOlU/6RPYrnEI/5eBf3ytCkkCdc7fPr2xfg==
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=7z7WMDrE7g3ZUqn8Gbw2JUMn4tnRJm1w3CiFvtFGwbU=;
 b=pFN4WGflltsAi/Xr2sRwQN+cw92vNGzoCY5Hlo0CGBLMwX1BTp8FtoIZUpQtKpIYC8WUG7nrolVUrEfbEYzjMiMupuI77M23bxoLzJMmtPpfgiw5BvVcyPC1dz37xRrV9tU8znbx3JNTJgaqVzvKjnoa8vV0G+X+OOubswIxkSM=
Date: Tue, 6 Apr 2021 11:09:19 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Lee Jones <lee.jones@linaro.org>
CC: <linux-kernel@vger.kernel.org>, Konrad Rzeszutek Wilk
	<konrad.wilk@oracle.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Jens Axboe <axboe@kernel.dk>, <xen-devel@lists.xenproject.org>,
	<linux-block@vger.kernel.org>
Subject: Re: [PATCH 10/11] block: xen-blkfront: Demote kernel-doc abuses
Message-ID: <YGwlP4hf5Nxgdjn+@Air-de-Roger>
References: <20210312105530.2219008-1-lee.jones@linaro.org>
 <20210312105530.2219008-11-lee.jones@linaro.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210312105530.2219008-11-lee.jones@linaro.org>
X-ClientProxiedBy: MR2P264CA0034.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::22)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: db911e2a-8520-4476-3013-08d8f8dbad98
X-MS-TrafficTypeDiagnostic: DM6PR03MB4476:
X-Microsoft-Antispam-PRVS: <DM6PR03MB4476D08BCA996628A7BE5D7B8F769@DM6PR03MB4476.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6108;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: NB6ewCwzTzxrBmCk7Aa0YxsSwzzU+++x4rrM///D2KnhYVwWDdSzJkt95tBWOCtm+3we6jD4Q8b+NAvIhYRnkpouRiMzt/f9aspu+Fb+UCKUofLtIChFohLyZrqFIzTz0ka8nQdALooSFjIX1M2x4M/5yv7e4dawyFhr8cqy+PLedjhI4u7VyXigfEIY5EJNjE9k0oz1kL81EbyILQ7PCwp3phfs7f+pqh1Vxo4pyuImd1h9DSjrRxag0LKF/4OvnYQZgap8+I4kHt3v3p7Is6s15O+oiz31mhpEASZ/0uYWjaboE5jr0/9sWPLpldrRGrYJBJkGuTuvMmrwyzwxyA1XSoOwuimDUIKvq8eIZTtWbY5Nya2hHx67s3Od7DjXSRmP9/D1goIWdzvnZcJplwmmwDeHZajoaUQwe7tDqHWZ+MhgBvWlKgFKaWKLVFTdGnguLlZ4CdwNo0UWeSX3ppA3L6xC/TK5J5jOx3iQUH3ulODeqHccFsaBVq80XrXpkaBqrdQzNU3WWbqmpCsVSUTF8PPE/5B7q+cDTgGADDssBikYBMFwgj8csFKpYqftVWikqVRMa/M7f+b1DwVYHdc10KQzj6Ur892foVQwr3ysEl5AVBCRVBhfYvgtHW8Yb4lg/mFuEGN23wEoV6C5ccBLiNpJEYRzozHdhlZQz8c=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(39860400002)(136003)(396003)(346002)(376002)(4326008)(66946007)(85182001)(26005)(66556008)(8676002)(66476007)(478600001)(186003)(86362001)(38100700001)(83380400001)(9686003)(6666004)(2906002)(8936002)(6496006)(6486002)(54906003)(5660300002)(316002)(33716001)(6916009)(16526019)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: db911e2a-8520-4476-3013-08d8f8dbad98
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 09:09:26.9163
 (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: 7TSWjgtC1ggF6EDuoJF4clzV9NqlRstH6nuTAL9A/bEK2bfHePB5410dK04WEPFKJePKalo00/uxHCClAty5zA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4476
X-OriginatorOrg: citrix.com

On Fri, Mar 12, 2021 at 10:55:29AM +0000, Lee Jones wrote:
> Fixes the following W=1 kernel build warning(s):
> 
>  drivers/block/xen-blkfront.c:1960: warning: Function parameter or member 'dev' not described in 'blkfront_probe'
>  drivers/block/xen-blkfront.c:1960: warning: Function parameter or member 'id' not described in 'blkfront_probe'
>  drivers/block/xen-blkfront.c:1960: warning: expecting prototype for Allocate the basic(). Prototype was for blkfront_probe() instead
>  drivers/block/xen-blkfront.c:2085: warning: Function parameter or member 'dev' not described in 'blkfront_resume'
>  drivers/block/xen-blkfront.c:2085: warning: expecting prototype for or a backend(). Prototype was for blkfront_resume() instead
>  drivers/block/xen-blkfront.c:2444: warning: wrong kernel-doc identifier on line:
> 
> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> Cc: "Roger Pau Monné" <roger.pau@citrix.com>
> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> Cc: Juergen Gross <jgross@suse.com>
> Cc: Stefano Stabellini <sstabellini@kernel.org>
> Cc: Jens Axboe <axboe@kernel.dk>
> Cc: xen-devel@lists.xenproject.org
> Cc: linux-block@vger.kernel.org
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 09:50:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 09:50:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105739.202227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTiLv-0005SS-KZ; Tue, 06 Apr 2021 09:50:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105739.202227; Tue, 06 Apr 2021 09:50:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTiLv-0005SL-Ga; Tue, 06 Apr 2021 09:50:31 +0000
Received: by outflank-mailman (input) for mailman id 105739;
 Tue, 06 Apr 2021 09:50:30 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lTiLu-0005SG-Aq
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 09:50:30 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lTiLu-0003hG-7T
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 09:50:30 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lTiLu-0004f9-6Q
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 09:50:30 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lTiLp-00073N-G3; Tue, 06 Apr 2021 10:50: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
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=References:In-Reply-To:Subject:Cc:To:Date
	:Message-ID:Content-Transfer-Encoding:Content-Type:MIME-Version:From;
	bh=3mDWDMDObA83DoZTUHamCtYJHXFJGuO9l2nxbUqTg9I=; b=eQE1yYuPd1vd1L1a9EIQcBtsSd
	/NIerKE306ReqAaxfUx/mHaJHozINYml87sJejKsvFKz7bhVsegBkIdu89ONTdyeg/I18iX+XAUrb
	GND4GOBvzKWZKlRmE0XmOeNVDL8VbYdnWTxTMfCoUYNUg1yqDwpKR7gvUidSEKYDdwoM=;
From: Ian Jackson <iwj@xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Message-ID: <24684.12001.296614.926923@mariner.uk.xensource.com>
Date: Tue, 6 Apr 2021 10:50:25 +0100
To: Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>,
    "xen-devel\@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
    Andrew  Cooper <andrew.cooper3@citrix.com>,
    George Dunlap <george.dunlap@citrix.com>,
    Julien Grall <julien@xen.org>,
    Stefano Stabellini <sstabellini@kernel.org>,
    Wei Liu <wl@xen.org>,
    Dario Faggioli <dfaggioli@suse.com>
Subject: Revert NR_CPUS=1 fix from 4.15 (was: Re: [PATCH] fix for_each_cpu()
 again for NR_CPUS=1)
In-Reply-To: <YGWLxey5nZeafUbB@Air-de-Roger>
References: <4d993e67-2bdf-9ac3-f78e-daf279642de1@suse.com>
	<YGWLxey5nZeafUbB@Air-de-Roger>
X-Mailer: VM 8.2.0b under 24.5.1 (i686-pc-linux-gnu)

Roger Pau Monn writes ("Revert NR_CPUS=1 fix from 4.15 (was: Re: [PATCH] fix for_each_cpu() again for NR_CPUS=1)"):
> At this point, should be consider reverting the original fix from the
> 4.15 branch, so that we don't release something that's build broken
> with gcc 10?

Yes.  I think so.

Release-Acked-by: Ian Jackson <iwj@xenproject.org>

But please leave it to me to commit it.  I will do so at or after
around 14:00 UK time (13:00 UTC) today unless someone objects.

Thanks,
Ian.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 09:52:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 09:52:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105743.202239 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTiNS-0005ZL-WA; Tue, 06 Apr 2021 09:52:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105743.202239; Tue, 06 Apr 2021 09:52: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 1lTiNS-0005ZE-Sw; Tue, 06 Apr 2021 09:52:06 +0000
Received: by outflank-mailman (input) for mailman id 105743;
 Tue, 06 Apr 2021 09:52:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lTiNS-0005Z9-0M
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 09:52:06 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lTiNR-0003j7-Vn
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 09:52:05 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lTiNR-0004ni-UB
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 09:52:05 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lTiNN-00074A-8N; Tue, 06 Apr 2021 10:52:01 +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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=References:In-Reply-To:Subject:Cc:To:Date
	:Message-ID:Content-Transfer-Encoding:Content-Type:MIME-Version:From;
	bh=xi0zxzD5z7v5EphnH1i0hhgeVLrYw7TsuSAgVsIt8kI=; b=dLCdCFOKjk342+r83iDPigZbdn
	fKZIT8ToW8nzvBvGaEYRcUbe+xTJRjk0TxwuwvtQ8iDlJWw7q1XNC2NSpy++mmRNs9fEnea0G87L7
	SItmEahEj51dFJBEfZsRLtlGz9Xnt9SbZ5b9oAzcDZPqSNEpFl9CCNniD28yccHvsarw=;
From: Ian Jackson <iwj@xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Message-ID: <24684.12097.5068.371887@mariner.uk.xensource.com>
Date: Tue, 6 Apr 2021 10:52:01 +0100
To: Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>,
    "xen-devel\@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
    Andrew Cooper <andrew.cooper3@citrix.com>,
    George Dunlap <george.dunlap@citrix.com>,
    Julien Grall <julien@xen.org>,
    Stefano Stabellini <sstabellini@kernel.org>,
    Wei Liu <wl@xen.org>,
    Dario  Faggioli <dfaggioli@suse.com>
Subject: Re: Revert NR_CPUS=1 fix from 4.15 (was: Re: [PATCH] fix
 for_each_cpu() again for NR_CPUS=1)
In-Reply-To: <YGWXcFOLKHJnH39S@Air-de-Roger>
References: <4d993e67-2bdf-9ac3-f78e-daf279642de1@suse.com>
	<YGWLxey5nZeafUbB@Air-de-Roger>
	<59387a2d-e28d-4e12-6b91-5df464e8ab9a@suse.com>
	<YGWXcFOLKHJnH39S@Air-de-Roger>
X-Mailer: VM 8.2.0b under 24.5.1 (i686-pc-linux-gnu)

Roger Pau Monn writes ("Re: Revert NR_CPUS=1 fix from 4.15 (was: Re: [PATCH] fix for_each_cpu() again for NR_CPUS=1)"):
> On Thu, Apr 01, 2021 at 11:26:03AM +0200, Jan Beulich wrote:
> > Well, I didn't propose reverting (or taking this fix) because I think
> > build breakage is better than runtime breakage. But in the end, Ian,
> > it's up to you.
> 
> Oh, right, sorry. The build issue only happens with NR_CPUS=1, in
> which case I agree, there's no need to do anything in 4.15 IMO.

Oh.  Right.  I had the impression that the build breakage broke other
configurations too.

Since you're saying that's not the case, please disregard my earlier
mail.

Ian.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 09:52:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 09:52:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105745.202250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTiNh-0005dg-7w; Tue, 06 Apr 2021 09:52:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105745.202250; Tue, 06 Apr 2021 09:52:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTiNh-0005dZ-4x; Tue, 06 Apr 2021 09:52:21 +0000
Received: by outflank-mailman (input) for mailman id 105745;
 Tue, 06 Apr 2021 09:52:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTiNg-0005dJ-12
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 09:52:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6e6ae3ea-f623-42b8-8477-93b2dc0387b8;
 Tue, 06 Apr 2021 09:52:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4D190B12A;
 Tue,  6 Apr 2021 09:52: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: 6e6ae3ea-f623-42b8-8477-93b2dc0387b8
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617702738; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=NDzO4YMW0UmO2XNf+QEIEAJwv6NwHHygQyBCqYoj37Q=;
	b=Olx1hCPB1eNN62PkjcMr1C5XEy96HgbJQ28VInhfx78+WvyxCSFmkIubjDM0qVLJmdHgcK
	NKV610l8ViRGDv2zSqUq2w73tcPsA564nESyL+g/dCSzgawyF0tb9Gjko8oosG9AHPLUZ0
	BDxi2nNwsXdOvIsGiI8bxGciuwa+Dm0=
Subject: Re: [PATCH 5/5] x86: don't build unused entry code when !PV32
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: <46d83c92-0b06-fc09-4832-7a7d7935d5c2@suse.com>
 <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
 <YGXSU9lGZpidz9wb@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <47137b21-c146-89d1-1996-28d64575ddc4@suse.com>
Date: Tue, 6 Apr 2021 11:52:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGXSU9lGZpidz9wb@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 16:01, Roger Pau Monné wrote:
> On Wed, Nov 25, 2020 at 09:51:33AM +0100, Jan Beulich wrote:
>> Except for the initial part of cstar_enter compat/entry.S is all dead
>> code in this case. Further, along the lines of the PV conditionals we
>> already have in entry.S, make code PV32-conditional there too (to a
>> fair part because this code actually references compat/entry.S).
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> TBD: I'm on the fence of whether (in a separate patch) to also make
>>      conditional struct pv_domain's is_32bit field.
>>
>> --- a/xen/arch/x86/x86_64/asm-offsets.c
>> +++ b/xen/arch/x86/x86_64/asm-offsets.c
>> @@ -9,7 +9,7 @@
>>  #include <xen/perfc.h>
>>  #endif
>>  #include <xen/sched.h>
>> -#ifdef CONFIG_PV
>> +#ifdef CONFIG_PV32
>>  #include <compat/xen.h>
>>  #endif
>>  #include <asm/hardirq.h>
>> @@ -102,19 +102,21 @@ void __dummy__(void)
>>      BLANK();
>>  #endif
>>  
>> -#ifdef CONFIG_PV
>> +#ifdef CONFIG_PV32
>>      OFFSET(DOMAIN_is_32bit_pv, struct domain, arch.pv.is_32bit);
>>      BLANK();
>>  
>> -    OFFSET(VCPUINFO_upcall_pending, struct vcpu_info, evtchn_upcall_pending);
>> -    OFFSET(VCPUINFO_upcall_mask, struct vcpu_info, evtchn_upcall_mask);
>> -    BLANK();
>> -
>>      OFFSET(COMPAT_VCPUINFO_upcall_pending, struct compat_vcpu_info, evtchn_upcall_pending);
>>      OFFSET(COMPAT_VCPUINFO_upcall_mask, struct compat_vcpu_info, evtchn_upcall_mask);
>>      BLANK();
>>  #endif
>>  
>> +#ifdef CONFIG_PV
>> +    OFFSET(VCPUINFO_upcall_pending, struct vcpu_info, evtchn_upcall_pending);
>> +    OFFSET(VCPUINFO_upcall_mask, struct vcpu_info, evtchn_upcall_mask);
>> +    BLANK();
>> +#endif
>> +
>>      OFFSET(CPUINFO_guest_cpu_user_regs, struct cpu_info, guest_cpu_user_regs);
>>      OFFSET(CPUINFO_verw_sel, struct cpu_info, verw_sel);
>>      OFFSET(CPUINFO_current_vcpu, struct cpu_info, current_vcpu);
>> --- a/xen/arch/x86/x86_64/compat/entry.S
>> +++ b/xen/arch/x86/x86_64/compat/entry.S
>> @@ -29,8 +29,6 @@ ENTRY(entry_int82)
>>          mov   %rsp, %rdi
>>          call  do_entry_int82
>>  
>> -#endif /* CONFIG_PV32 */
>> -
>>  /* %rbx: struct vcpu */
>>  ENTRY(compat_test_all_events)
>>          ASSERT_NOT_IN_ATOMIC
>> @@ -197,6 +195,8 @@ ENTRY(cr4_pv32_restore)
>>          xor   %eax, %eax
>>          ret
>>  
>> +#endif /* CONFIG_PV32 */
>> +
>>          .section .text.entry, "ax", @progbits
>>  
>>  /* See lstar_enter for entry register state. */
>> @@ -230,6 +230,13 @@ ENTRY(cstar_enter)
>>          sti
>>  
>>          movq  STACK_CPUINFO_FIELD(current_vcpu)(%rbx), %rbx
>> +
>> +#ifndef CONFIG_PV32
>> +
>> +        jmp   switch_to_kernel
>> +
>> +#else
>> +
>>          movq  VCPU_domain(%rbx),%rcx
>>          cmpb  $0,DOMAIN_is_32bit_pv(%rcx)
>>          je    switch_to_kernel
>> @@ -393,3 +400,5 @@ compat_crash_page_fault:
>>          jmp   .Lft14
>>  .previous
>>          _ASM_EXTABLE(.Lft14, .Lfx14)
>> +
>> +#endif /* CONFIG_PV32 */
> 
> Seeing this chunk, would it make sense to move the cstar_enter part
> relevant to !is_32bit_pv into the common entry.S and leave the rest
> here as compat_cstar_enter or some such?
> 
> AFAICT we only need a tiny part of the compat stuff when !CONFIG_PV32,
> so I think we could make the hole compat/entry.S depend on
> CONFIG_PV32.

While it grows the patch, doing things this way looks to work out
nicely. v2 in the works (making in fact compat/ as a whole build
only when PV32, as it's really only the one object file that gets
built there) ...

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 10:14:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 10:14:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105759.202265 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTiix-0007Xh-1N; Tue, 06 Apr 2021 10:14:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105759.202265; Tue, 06 Apr 2021 10: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 1lTiiw-0007Xa-Ub; Tue, 06 Apr 2021 10:14:18 +0000
Received: by outflank-mailman (input) for mailman id 105759;
 Tue, 06 Apr 2021 10:14: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 1lTiiv-0007XS-2i; Tue, 06 Apr 2021 10:14: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 1lTiiu-0004Bw-Sd; Tue, 06 Apr 2021 10: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 1lTiiu-0002n7-GU; Tue, 06 Apr 2021 10:14:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTiiu-0003bf-G1; Tue, 06 Apr 2021 10:14:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=NKwhZ4k8SK2SMHYjTQCeTdDl8js4cXqTfS8AfsHLmJ4=; b=bfKbYeUfjQ9BpECnTs9xV5vruj
	331OO3p97WDXN8P9GRSPMD+6Frowc9/kqdOjuyv3U3KXflcjP3+ewOQcqCyXz2JrYppAzBSaz6+Td
	d0RrYPD4FaZGxqoTG7LBNTyEtRvpqqlVdboFMshQkDxPGp1Q2/gtn5NRWAR9sMNN2/bM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160752-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160752: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:guests-nbd-mirror/debian:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 06 Apr 2021 10:14:16 +0000

flight 160752 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160752/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken  in 160709
 build-armhf                4 host-install(4) broken in 160709 REGR. vs. 159418
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160709 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian fail in 160709 pass in 160752
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160709
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 160738

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   48 days
Failing since        160128  2021-03-18 14:36:18 Z   18 days   23 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   17 days   21 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      pass    


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

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

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

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

broken-job build-armhf broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 10:37:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 10:37:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105768.202283 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTj4u-0000xU-4t; Tue, 06 Apr 2021 10:37:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105768.202283; Tue, 06 Apr 2021 10:37: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 1lTj4u-0000xN-14; Tue, 06 Apr 2021 10:37:00 +0000
Received: by outflank-mailman (input) for mailman id 105768;
 Tue, 06 Apr 2021 10:36:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xZnD=JD=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lTj4t-0000xI-Ca
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 10:36:59 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 2ea966c9-eb16-48ed-b71a-9ef8607421c6;
 Tue, 06 Apr 2021 10:36:57 +0000 (UTC)
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 CA40031B;
 Tue,  6 Apr 2021 03:36:56 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7816B3F73D;
 Tue,  6 Apr 2021 03:36:55 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2ea966c9-eb16-48ed-b71a-9ef8607421c6
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH 0/3] Use Doxygen and sphinx for html documentation
Date: Tue,  6 Apr 2021 11:36:00 +0100
Message-Id: <20210406103603.8530-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1

This serie introduce doxygen in the sphinx html docs generation.
One benefit is to keep most of the documentation in the source
files of xen so that it's more maintainable, on the other hand
there are some limitation of doxygen that must be addressed
modifying the current codebase (for example doxygen can't parse
anonymous structure/union).

To reproduce the documentation xen must be compiled because
most of the headers are generated on compilation time from
the makefiles.

Here follows the steps to generate the sphinx html docs, some
package may be required on your machine, everything is suggested
by the autoconf script.
Here I'm building the arm64 docs (the only introduced for now by
this serie):

./configure
make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-" menuconfig
make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-"
make -C docs XEN_TARGET_ARCH="arm64" sphinx-html

now in docs/sphinx/html/ we have the generated docs starting
from the index.html page.


Luca Fancellu (3):
  docs: add doxygen support for html documentation
  docs: hypercalls sphinx skeleton for generated html
  docs/doxygen: doxygen documentation for grant_table.h

 .gitignore                                    |    7 +
 config/Docs.mk.in                             |    2 +
 docs/Makefile                                 |   51 +-
 docs/conf.py                                  |   48 +-
 docs/configure                                |  258 ++
 docs/configure.ac                             |   15 +
 docs/hypercall-interfaces/arm32.rst           |    4 +
 docs/hypercall-interfaces/arm64.rst           |   33 +
 .../arm64/grant_tables.rst                    |    8 +
 docs/hypercall-interfaces/index.rst.in        |    7 +
 docs/hypercall-interfaces/x86_64.rst          |    4 +
 docs/index.rst                                |    8 +
 docs/xen-doxygen/customdoxygen.css            |   36 +
 docs/xen-doxygen/doxy_input.list              |    1 +
 docs/xen-doxygen/doxy_input_template.in       |   21 +
 docs/xen-doxygen/footer.html                  |   21 +
 docs/xen-doxygen/header.html                  |   56 +
 docs/xen-doxygen/mainpage.md                  |    5 +
 docs/xen-doxygen/xen_project_logo_165x67.png  |  Bin 0 -> 18223 bytes
 docs/xen.doxyfile.in                          | 2314 +++++++++++++++++
 m4/ax_python_module.m4                        |   56 +
 m4/docs_tool.m4                               |    9 +
 xen/include/public/grant_table.h              |   79 +-
 23 files changed, 3007 insertions(+), 36 deletions(-)
 create mode 100644 docs/hypercall-interfaces/arm32.rst
 create mode 100644 docs/hypercall-interfaces/arm64.rst
 create mode 100644 docs/hypercall-interfaces/arm64/grant_tables.rst
 create mode 100644 docs/hypercall-interfaces/index.rst.in
 create mode 100644 docs/hypercall-interfaces/x86_64.rst
 create mode 100644 docs/xen-doxygen/customdoxygen.css
 create mode 100644 docs/xen-doxygen/doxy_input.list
 create mode 100644 docs/xen-doxygen/doxy_input_template.in
 create mode 100644 docs/xen-doxygen/footer.html
 create mode 100644 docs/xen-doxygen/header.html
 create mode 100644 docs/xen-doxygen/mainpage.md
 create mode 100644 docs/xen-doxygen/xen_project_logo_165x67.png
 create mode 100644 docs/xen.doxyfile.in
 create mode 100644 m4/ax_python_module.m4

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 10:37:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 10:37:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105769.202296 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTj4z-0000zB-Ct; Tue, 06 Apr 2021 10:37:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105769.202296; Tue, 06 Apr 2021 10: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 1lTj4z-0000z4-94; Tue, 06 Apr 2021 10:37:05 +0000
Received: by outflank-mailman (input) for mailman id 105769;
 Tue, 06 Apr 2021 10:37:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xZnD=JD=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lTj4y-0000yp-Iz
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 10:37:04 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id e4c3ca21-fac3-43c6-aaee-2b4d764a7891;
 Tue, 06 Apr 2021 10:37:02 +0000 (UTC)
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 4F0FCED1;
 Tue,  6 Apr 2021 03:37:02 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 680363F73D;
 Tue,  6 Apr 2021 03:37: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: e4c3ca21-fac3-43c6-aaee-2b4d764a7891
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH 1/3] docs: add doxygen support for html documentation
Date: Tue,  6 Apr 2021 11:36:01 +0100
Message-Id: <20210406103603.8530-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210406103603.8530-1-luca.fancellu@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>

Add doxygen support to build html documentation with sphinx,
to do that the following modification are applied:

1) Modify docs/configure.ac and consequently configure script
   to check, through the ./configure script, the presence in
   the system of the sphinx-build binary, if it is found then
   it checks also the presence of the doxygen binary, breathe
   and sphinx-rtd-theme python packages.
   Doxygen and the packages are required only if sphinx-build
   is found, otherwise the Makefile will simply skip the
   sphinx html generation.
   The ax_python_module.m4 support is needed to check for
   python packages.
2) Add doxygen templates and configuration file
3) Modify docs/Makefile to call in sequence doxygen and
   sphinx-build, the doxygen configuration file will be
   modified to include the xen absolute path and
   a list of folder to check.
   A doxygen_input.h file is generated to include every
   header listed in the doxy_input.list file.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 .gitignore                                   |    6 +
 config/Docs.mk.in                            |    2 +
 docs/Makefile                                |   47 +-
 docs/conf.py                                 |   48 +-
 docs/configure                               |  258 ++
 docs/configure.ac                            |   15 +
 docs/xen-doxygen/customdoxygen.css           |   36 +
 docs/xen-doxygen/doxy_input.list             |    0
 docs/xen-doxygen/doxy_input_template.in      |   21 +
 docs/xen-doxygen/footer.html                 |   21 +
 docs/xen-doxygen/header.html                 |   56 +
 docs/xen-doxygen/mainpage.md                 |    5 +
 docs/xen-doxygen/xen_project_logo_165x67.png |  Bin 0 -> 18223 bytes
 docs/xen.doxyfile.in                         | 2314 ++++++++++++++++++
 m4/ax_python_module.m4                       |   56 +
 m4/docs_tool.m4                              |    9 +
 16 files changed, 2888 insertions(+), 6 deletions(-)
 create mode 100644 docs/xen-doxygen/customdoxygen.css
 create mode 100644 docs/xen-doxygen/doxy_input.list
 create mode 100644 docs/xen-doxygen/doxy_input_template.in
 create mode 100644 docs/xen-doxygen/footer.html
 create mode 100644 docs/xen-doxygen/header.html
 create mode 100644 docs/xen-doxygen/mainpage.md
 create mode 100644 docs/xen-doxygen/xen_project_logo_165x67.png
 create mode 100644 docs/xen.doxyfile.in
 create mode 100644 m4/ax_python_module.m4

diff --git a/.gitignore b/.gitignore
index 1c2fa1530b..a5eebf1213 100644
--- a/.gitignore
+++ b/.gitignore
@@ -58,6 +58,12 @@ docs/man7/
 docs/man8/
 docs/pdf/
 docs/txt/
+docs/doxygen-output
+docs/sphinx
+docs/xen.doxyfile
+docs/xen.doxyfile.tmp
+docs/doxygen_input.h
+docs/doxygen_input.h.tmp
 extras/mini-os*
 install/*
 stubdom/*-minios-config.mk
diff --git a/config/Docs.mk.in b/config/Docs.mk.in
index e76e5cd5ff..dfd4a02838 100644
--- a/config/Docs.mk.in
+++ b/config/Docs.mk.in
@@ -7,3 +7,5 @@ POD2HTML            := @POD2HTML@
 POD2TEXT            := @POD2TEXT@
 PANDOC              := @PANDOC@
 PERL                := @PERL@
+SPHINXBUILD         := @SPHINXBUILD@
+DOXYGEN             := @DOXYGEN@
diff --git a/docs/Makefile b/docs/Makefile
index 8de1efb6f5..dd651e9a93 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -17,6 +17,22 @@ TXTSRC-y := $(sort $(shell find misc -name '*.txt' -print))
 
 PANDOCSRC-y := $(sort $(shell find designs/ features/ misc/ process/ specs/ \( -name '*.pandoc' -o -name '*.md' \) -print))
 
+# Directory in which the doxygen documentation is created
+# This must be kept in sync with breathe_projects value in conf.py
+DOXYGEN_OUTPUT = doxygen-output
+
+# Doxygen input headers from xen-doxygen/doxy_input.list file
+DOXY_LIST_SOURCES != cat "xen-doxygen/doxy_input.list"
+DOXY_LIST_SOURCES := $(realpath $(addprefix $(XEN_ROOT)/,$(DOXY_LIST_SOURCES)))
+
+# Get folder path for all input headers and delete duplicates
+DOXY_LIST_DIRS := $(foreach inc,$(DOXY_LIST_SOURCES),$(dir $(realpath $(inc))))
+DOXY_LIST_DIRS := $(sort $(DOXY_LIST_DIRS))
+
+DOXY_DEPS := xen.doxyfile \
+			 xen-doxygen/mainpage.md \
+			 doxygen_input.h
+
 # Documentation targets
 $(foreach i,$(MAN_SECTIONS), \
   $(eval DOC_MAN$(i) := $(patsubst man/%.$(i),man$(i)/%.$(i), \
@@ -46,8 +62,29 @@ all: build
 build: html txt pdf man-pages figs
 
 .PHONY: sphinx-html
-sphinx-html:
-	sphinx-build -b html . sphinx/html
+sphinx-html: $(DOXY_DEPS) $(DOXY_LIST_SOURCES)
+ifneq ($(SPHINXBUILD),)
+	$(DOXYGEN) xen.doxyfile
+	XEN_ROOT=$(realpath $(XEN_ROOT)) $(SPHINXBUILD) -b html . sphinx/html
+else
+	@echo "Sphinx is not installed; skipping sphinx-html documentation."
+endif
+
+xen.doxyfile: xen.doxyfile.in xen-doxygen/doxy_input.list
+	@echo "Generating $@"
+	@sed -e "s,@XEN_BASE@,$(realpath $(XEN_ROOT)),g" $< \
+		| sed -e "s,@DOXY_OUT@,$(DOXYGEN_OUTPUT),g" > $@.tmp
+	@$(foreach dir,\
+		$(DOXY_LIST_DIRS),\
+		echo "INCLUDE_PATH += \"$(dir)\"" >> $@.tmp; \
+	)
+	mv $@.tmp $@
+
+doxygen_input.h: xen-doxygen/doxy_input_template.in xen-doxygen/doxy_input.list
+	@echo "Generating $@"
+	@sed -e "s,@XEN_BASE@,$(realpath $(XEN_ROOT)),g" $< > $@.tmp
+	@$(foreach inc,$(DOXY_LIST_SOURCES),cat "$(inc)" >> $@.tmp;)
+	@mv $@.tmp $@
 
 .PHONY: html
 html: $(DOC_HTML) html/index.html
@@ -71,7 +108,11 @@ clean: clean-man-pages
 	$(MAKE) -C figs 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
+	rm -rf html txt pdf sphinx $(DOXYGEN_OUTPUT)
+	rm -f xen.doxyfile
+	rm -f xen.doxyfile.tmp
+	rm -f doxygen_input.h
+	rm -f doxygen_input.h.tmp
 
 .PHONY: distclean
 distclean: clean
diff --git a/docs/conf.py b/docs/conf.py
index 50e41501db..a48de42331 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -13,13 +13,17 @@
 # add these directories to sys.path here. If the directory is relative to the
 # documentation root, use os.path.abspath to make it absolute, like shown here.
 #
-# import os
-# import sys
+import os
+import sys
 # sys.path.insert(0, os.path.abspath('.'))
 
 
 # -- Project information -----------------------------------------------------
 
+if "XEN_ROOT" not in os.environ:
+    sys.exit("$XEN_ROOT environment variable undefined.")
+XEN_ROOT = os.path.abspath(os.environ["XEN_ROOT"])
+
 project = u'Xen'
 copyright = u'2019, The Xen development community'
 author = u'The Xen development community'
@@ -35,6 +39,7 @@ try:
             xen_subver = line.split(u"=")[1].strip()
         elif line.startswith(u"export XEN_EXTRAVERSION"):
             xen_extra = line.split(u"=")[1].split(u"$", 1)[0].strip()
+
 except:
     pass
 finally:
@@ -44,6 +49,15 @@ finally:
     else:
         version = release = u"unknown version"
 
+try:
+    xen_doxygen_output = None
+
+    for line in open(u"Makefile"):
+        if line.startswith(u"DOXYGEN_OUTPUT"):
+                xen_doxygen_output = line.split(u"=")[1].strip()
+except:
+    sys.exit("DOXYGEN_OUTPUT variable undefined.")
+
 # -- General configuration ---------------------------------------------------
 
 # If your documentation needs a minimal Sphinx version, state it here.
@@ -53,7 +67,8 @@ needs_sphinx = '1.4'
 # Add any Sphinx extension module names here, as strings. They can be
 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
 # ones.
-extensions = []
+# breathe -> extension that integrates doxygen xml output with sphinx
+extensions = ['breathe']
 
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']
@@ -175,6 +190,33 @@ texinfo_documents = [
      'Miscellaneous'),
 ]
 
+# -- Options for Breathe extension -------------------------------------------
+
+breathe_projects = {
+    "Xen": "{}/docs/{}/xml".format(XEN_ROOT, xen_doxygen_output)
+}
+breathe_default_project = "Xen"
+
+breathe_domain_by_extension = {
+    "h": "c",
+    "c": "c",
+}
+breathe_separate_member_pages = True
+breathe_show_enumvalue_initializer = True
+breathe_show_define_initializer = True
+
+# Qualifiers to a function are causing Sphihx/Breathe to warn about
+# Error when parsing function declaration and more.  This is a list
+# of strings that the parser additionally should accept as
+# attributes.
+cpp_id_attributes = [
+    '__syscall', '__deprecated', '__may_alias',
+    '__used', '__unused', '__weak',
+    '__DEPRECATED_MACRO', 'FUNC_NORETURN',
+    '__subsystem',
+]
+c_id_attributes = cpp_id_attributes
+
 
 # -- Options for Epub output -------------------------------------------------
 
diff --git a/docs/configure b/docs/configure
index 569bd4c2ff..0ebf046a79 100755
--- a/docs/configure
+++ b/docs/configure
@@ -588,6 +588,8 @@ ac_unique_file="misc/xen-command-line.pandoc"
 ac_subst_vars='LTLIBOBJS
 LIBOBJS
 PERL
+DOXYGEN
+SPHINXBUILD
 PANDOC
 POD2TEXT
 POD2HTML
@@ -673,6 +675,7 @@ POD2MAN
 POD2HTML
 POD2TEXT
 PANDOC
+DOXYGEN
 PERL'
 
 
@@ -1318,6 +1321,7 @@ Some influential environment variables:
   POD2HTML    Path to pod2html tool
   POD2TEXT    Path to pod2text tool
   PANDOC      Path to pandoc tool
+  DOXYGEN     Path to doxygen tool
   PERL        Path to Perl parser
 
 Use these variables to override the choices made by `configure' or to help
@@ -1800,6 +1804,7 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
 
+
 case "$host_os" in
 *freebsd*) XENSTORED_KVA=/dev/xen/xenstored ;;
 *) XENSTORED_KVA=/proc/xen/xsd_kva ;;
@@ -1812,6 +1817,53 @@ case "$host_os" in
 esac
 
 
+# ===========================================================================
+#     https://www.gnu.org/software/autoconf-archive/ax_python_module.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_PYTHON_MODULE(modname[, fatal, python])
+#
+# DESCRIPTION
+#
+#   Checks for Python module.
+#
+#   If fatal is non-empty then absence of a module will trigger an error.
+#   The third parameter can either be "python" for Python 2 or "python3" for
+#   Python 3; defaults to Python 3.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Andrew Collier
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved. This file is offered as-is, without any
+#   warranty.
+
+#serial 9
+
+# This is what autoupdate's m4 run will expand.  It fires
+# the warning (with _au_warn_XXX), outputs it into the
+# updated configure.ac (with AC_DIAGNOSE), and then outputs
+# the replacement expansion.
+
+
+# This is an auxiliary macro that is also run when
+# autoupdate runs m4.  It simply calls m4_warning, but
+# we need a wrapper so that each warning is emitted only
+# once.  We break the quoting in m4_warning's argument in
+# order to expand this macro's arguments, not AU_DEFUN's.
+
+
+# Finally, this is the expansion that is picked up by
+# autoconf.  It tells the user to run autoupdate, and
+# then outputs the replacement expansion.  We do not care
+# about autoupdate's warning because that contains
+# information on what to do *after* running autoupdate.
+
+
 
 
 test "x$prefix" = "xNONE" && prefix=$ac_default_prefix
@@ -2232,6 +2284,212 @@ $as_echo "$as_me: WARNING: pandoc is not available so some documentation won't b
 fi
 
 
+# If sphinx is installed, make sure to have also the dependencies to build
+# Sphinx documentation.
+for ac_prog in sphinx-build
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_SPHINXBUILD+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$SPHINXBUILD"; then
+  ac_cv_prog_SPHINXBUILD="$SPHINXBUILD" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_SPHINXBUILD="$ac_prog"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+SPHINXBUILD=$ac_cv_prog_SPHINXBUILD
+if test -n "$SPHINXBUILD"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SPHINXBUILD" >&5
+$as_echo "$SPHINXBUILD" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+  test -n "$SPHINXBUILD" && break
+done
+test -n "$SPHINXBUILD" || SPHINXBUILD="no"
+
+    if test "x$SPHINXBUILD" = xno; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: sphinx-build is not available so sphinx documentation \
+won't be built" >&5
+$as_echo "$as_me: WARNING: sphinx-build is not available so sphinx documentation \
+won't be built" >&2;}
+else
+
+            # Extract the first word of "sphinx-build", so it can be a program name with args.
+set dummy sphinx-build; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_SPHINXBUILD+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $SPHINXBUILD in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SPHINXBUILD="$SPHINXBUILD" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SPHINXBUILD="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+SPHINXBUILD=$ac_cv_path_SPHINXBUILD
+if test -n "$SPHINXBUILD"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SPHINXBUILD" >&5
+$as_echo "$SPHINXBUILD" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+
+
+    # Extract the first word of "doxygen", so it can be a program name with args.
+set dummy doxygen; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_DOXYGEN+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $DOXYGEN in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_DOXYGEN="$DOXYGEN" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_DOXYGEN="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+DOXYGEN=$ac_cv_path_DOXYGEN
+if test -n "$DOXYGEN"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DOXYGEN" >&5
+$as_echo "$DOXYGEN" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+    if ! test -x "$ac_cv_path_DOXYGEN"; then :
+
+        as_fn_error $? "doxygen is needed" "$LINENO" 5
+
+fi
+
+
+    if test -z $PYTHON;
+    then
+        if test -z "";
+        then
+            PYTHON="python3"
+        else
+            PYTHON=""
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking $PYTHON_NAME module: breathe" >&5
+$as_echo_n "checking $PYTHON_NAME module: breathe... " >&6; }
+    $PYTHON -c "import breathe" 2>/dev/null
+    if test $? -eq 0;
+    then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        eval HAVE_PYMOD_BREATHE=yes
+    else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+        eval HAVE_PYMOD_BREATHE=no
+        #
+        if test -n "yes"
+        then
+            as_fn_error $? "failed to find required module breathe" "$LINENO" 5
+            exit 1
+        fi
+    fi
+
+
+    if test -z $PYTHON;
+    then
+        if test -z "";
+        then
+            PYTHON="python3"
+        else
+            PYTHON=""
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking $PYTHON_NAME module: sphinx_rtd_theme" >&5
+$as_echo_n "checking $PYTHON_NAME module: sphinx_rtd_theme... " >&6; }
+    $PYTHON -c "import sphinx_rtd_theme" 2>/dev/null
+    if test $? -eq 0;
+    then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        eval HAVE_PYMOD_SPHINX_RTD_THEME=yes
+    else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+        eval HAVE_PYMOD_SPHINX_RTD_THEME=no
+        #
+        if test -n "yes"
+        then
+            as_fn_error $? "failed to find required module sphinx_rtd_theme" "$LINENO" 5
+            exit 1
+        fi
+    fi
+
+
+
+fi
+
 
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
diff --git a/docs/configure.ac b/docs/configure.ac
index c2e5edd3b3..a2ff55f30a 100644
--- a/docs/configure.ac
+++ b/docs/configure.ac
@@ -20,6 +20,7 @@ m4_include([../m4/docs_tool.m4])
 m4_include([../m4/path_or_fail.m4])
 m4_include([../m4/features.m4])
 m4_include([../m4/paths.m4])
+m4_include([../m4/ax_python_module.m4])
 
 AX_XEN_EXPAND_CONFIG()
 
@@ -29,6 +30,20 @@ AX_DOCS_TOOL_PROG([POD2HTML], [pod2html])
 AX_DOCS_TOOL_PROG([POD2TEXT], [pod2text])
 AX_DOCS_TOOL_PROG([PANDOC], [pandoc])
 
+# If sphinx is installed, make sure to have also the dependencies to build
+# Sphinx documentation.
+AC_CHECK_PROGS([SPHINXBUILD], [sphinx-build], [no])
+    AS_IF([test "x$SPHINXBUILD" = xno],
+        [AC_MSG_WARN(sphinx-build is not available so sphinx documentation \
+won't be built)],
+        [
+            AC_PATH_PROG([SPHINXBUILD], [sphinx-build])
+            AX_DOCS_TOOL_REQ_PROG([DOXYGEN], [doxygen])
+            AX_PYTHON_MODULE([breathe],[yes])
+            AX_PYTHON_MODULE([sphinx_rtd_theme], [yes])
+        ]
+    )
+
 AC_ARG_VAR([PERL], [Path to Perl parser])
 AX_PATH_PROG_OR_FAIL([PERL], [perl])
 
diff --git a/docs/xen-doxygen/customdoxygen.css b/docs/xen-doxygen/customdoxygen.css
new file mode 100644
index 0000000000..4735e41cf5
--- /dev/null
+++ b/docs/xen-doxygen/customdoxygen.css
@@ -0,0 +1,36 @@
+/* Custom CSS for Doxygen-generated HTML
+ * Copyright (c) 2015 Intel Corporation
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+code {
+  font-family: Monaco,Menlo,Consolas,"Courier New",monospace;
+  background-color: #D8D8D8;
+  padding: 0 0.25em 0 0.25em;
+}
+
+pre.fragment {
+  display: block;
+  font-family: Monaco,Menlo,Consolas,"Courier New",monospace;
+  padding: 1rem;
+  word-break: break-all;
+  word-wrap: break-word;
+  white-space: pre;
+  background-color: #D8D8D8;
+}
+
+#projectlogo
+{
+  vertical-align: middle;
+}
+
+#projectname
+{
+  font: 200% Tahoma, Arial,sans-serif;
+  color: #3D578C;
+}
+
+#projectbrief
+{
+  color: #3D578C;
+}
diff --git a/docs/xen-doxygen/doxy_input.list b/docs/xen-doxygen/doxy_input.list
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/docs/xen-doxygen/doxy_input_template.in b/docs/xen-doxygen/doxy_input_template.in
new file mode 100644
index 0000000000..fc7565ab5b
--- /dev/null
+++ b/docs/xen-doxygen/doxy_input_template.in
@@ -0,0 +1,21 @@
+#define __XEN__
+
+#include "@XEN_BASE@/xen/include/xen/config.h"
+
+#if defined(CONFIG_X86_64)
+
+#define __x86_64__ 1
+
+#elif defined(CONFIG_ARM_64)
+
+#define __aarch64__ 1
+
+#elif defined(CONFIG_ARM_32)
+
+#define __arm__ 1
+
+#else
+
+#error Architecture not supported/recognized.
+
+#endif
diff --git a/docs/xen-doxygen/footer.html b/docs/xen-doxygen/footer.html
new file mode 100644
index 0000000000..a24bf2b9b4
--- /dev/null
+++ b/docs/xen-doxygen/footer.html
@@ -0,0 +1,21 @@
+<!-- HTML footer for doxygen 1.8.13-->
+<!-- start footer part -->
+<!--BEGIN GENERATE_TREEVIEW-->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    $navpath
+    <li class="footer">$generatedby
+    <a href="http://www.doxygen.org/index.html">
+    <img class="footer" src="$relpath^doxygen.png" alt="doxygen"/></a> $doxygenversion </li>
+  </ul>
+</div>
+<!--END GENERATE_TREEVIEW-->
+<!--BEGIN !GENERATE_TREEVIEW-->
+<hr class="footer"/><address class="footer"><small>
+$generatedby &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="$relpath^doxygen.png" alt="doxygen"/>
+</a> $doxygenversion
+</small></address>
+<!--END !GENERATE_TREEVIEW-->
+</body>
+</html>
diff --git a/docs/xen-doxygen/header.html b/docs/xen-doxygen/header.html
new file mode 100644
index 0000000000..83ac2f1835
--- /dev/null
+++ b/docs/xen-doxygen/header.html
@@ -0,0 +1,56 @@
+<!-- HTML header for doxygen 1.8.13-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen $doxygenversion"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<!--BEGIN PROJECT_NAME--><title>$projectname: $title</title><!--END PROJECT_NAME-->
+<!--BEGIN !PROJECT_NAME--><title>$title</title><!--END !PROJECT_NAME-->
+<link href="$relpath^tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="$relpath^jquery.js"></script>
+<script type="text/javascript" src="$relpath^dynsections.js"></script>
+$treeview
+$search
+$mathjax
+<link href="$relpath^$stylesheet" rel="stylesheet" type="text/css" />
+$extrastylesheet
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+
+<!--BEGIN TITLEAREA-->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <!--BEGIN PROJECT_LOGO-->
+  <td id="projectlogo"><img alt="Logo" src="$relpath^$projectlogo"/></td>
+  <!--END PROJECT_LOGO-->
+  <!--BEGIN PROJECT_NAME-->
+  <td id="projectalign" style="padding-left: 1em;">
+   <div id="projectname">$projectname
+   <!--BEGIN PROJECT_NUMBER-->&#160;<span id="projectnumber">$projectnumber</span><!--END PROJECT_NUMBER-->
+   </div>
+   <!--BEGIN PROJECT_BRIEF--><div id="projectbrief">$projectbrief</div><!--END PROJECT_BRIEF-->
+  </td>
+  <!--END PROJECT_NAME-->
+  <!--BEGIN !PROJECT_NAME-->
+   <!--BEGIN PROJECT_BRIEF-->
+    <td style="padding-left: 0.5em;">
+    <div id="projectbrief">$projectbrief</div>
+    </td>
+   <!--END PROJECT_BRIEF-->
+  <!--END !PROJECT_NAME-->
+  <!--BEGIN DISABLE_INDEX-->
+   <!--BEGIN SEARCHENGINE-->
+   <td>$searchbox</td>
+   <!--END SEARCHENGINE-->
+  <!--END DISABLE_INDEX-->
+ </tr>
+ </tbody>
+</table>
+</div>
+<!--END TITLEAREA-->
+<!-- end header part -->
diff --git a/docs/xen-doxygen/mainpage.md b/docs/xen-doxygen/mainpage.md
new file mode 100644
index 0000000000..ff548b87fc
--- /dev/null
+++ b/docs/xen-doxygen/mainpage.md
@@ -0,0 +1,5 @@
+# API Documentation   {#index}
+
+## Introduction
+
+## Licensing
diff --git a/docs/xen-doxygen/xen_project_logo_165x67.png b/docs/xen-doxygen/xen_project_logo_165x67.png
new file mode 100644
index 0000000000000000000000000000000000000000..7244959d59cdeb9f23c5202160ea45508dfc7265
GIT binary patch
literal 18223
zcmV+NKn=f%P)<h;3K|Lk000e1NJLTq005-`002V>1^@s6{Wir#00004XF*Lt006O$
zeEU(80000WV@Og>004&%004{+008|`004nN004b?008NW002DY000@xb3BE2000U(
zX+uL$P-t&-Z*ypGa3D!TLm+T+Z)Rz1WdHz3$DNjUR8-d%htIutdZEoQ0#b(FyTAa_
zdy`&8VVD_UC<6{NG_fI~0ue<-nj%P0#DLLIBvwSR5EN9f2P6n6F&ITuEN@2Ei>|D^
z_ww@l<E(G(v-i3C?7h!g7XXr{FPE1FO97C|6YzsPoaqsfQFQD8fB_z0fGGe>Rz|vC
zuzLs)$;-`!o*{AqUjza0dRV*yaMRE;fKCVhpQKsoe1Yhg01=zBIT<Vw7l=3|OOP(M
z&x)8Dmn>!&C1$=TK@rP|Ibo3vKKm@PqnO#LJhq6%Ij6Hz*<$V$@wQAMN5qJ)hzm2h
zoGcOF60t^#FqJFfH{#e-4l@G)6iI9sa9D{VHW4w29}?su;^hF~NC{tY+*d5%WDCTX
za!E_i;d2ub1#}&jF5T4HnnCyEWTkKf0>c0%E1Ah>(_PY1)0w;+02c53Su*0<(nUqK
zG_|(0G&D0Z{i;y^b@OjZ+}lNZ8Th$p5Uu}<?XUdO8USF-iE6X+i!H7SfX*!d$ld#5
z(>MTtq^NHl*T1?CO*}7&0ztZsv2j*bmJyf3G7=Z`5B*PvzoD<bXCyxEkMhu6Iq^(k
zihwSz8!Ig(O~|Kbq%&C@y5XOP_#X%Ubsh#moOlkO!xKe>iKdLpOAxi2$L0#SX*@cY
z_n(^h55xYX#km%V()bZjV~l{*bt*u9?FT3d5g^g~#a;iSZ@&02Abxq_DwB(I|L-^b
zXThc7C4-yrInE_0gw7K3GZ**7&k~>k0Z0NWkO#^@9q0f<U<Ry!EpP;Gz#I635D*Dg
z0~SaGseli%Kpxlx3PCa03HE?$PzM@8GiU|JK_@r`&Vx(f8n^*&gZp3<On_%#7Q6-v
z5CmZ%GDLyoAr(jy(ud3-24oMpLB3EB6bZ#b2@nqwLV3_;s2D1Ps-b$Q8TuYN37v<o
zK!ea-XbhT$euv({2uy;huoA2V8^a9P3HE_Q;8kz}yavvN3*a4aCENfXg*)K$@HO~0
zJPJR9=MaDp5gMY37$OYB1@T9ska&cTtVfEF3ZwyPMY@qb<R&tT%ph-37!(CXM;W4Q
zQJ$z!6brQmwH{T1szx0~b)b4tH&J7#S=2`~8Lf!cN86yi&=KeabQZc0U4d>wx1%qj
zZ=)yBuQ3=54Wo^*!gyjLF-e%Um=erBOdIALW)L%unZshS@>qSW9o8Sq#0s#5*edK%
z>{;v(b^`kbN5rY%%y90wC>#%$kE_5P!JWYk;U;klcqzOl-UjcFXXA75rT9jCH~u<)
z0>40zCTJ7v2qA<d!X`o`p_Oov@PP1=NF=Het%-p|E^#BVl6Z`GnK(v#OOhe!kz7d8
zBq3=B=@980=`QIdnM~FqJCdWw0`d-WGx-Af5&4Y-MZ!qJOM)%2L83;YLt;qcxg=gv
zQ_@LtwPdbjh2#mz>yk54cquI@7b&LHdZ`+zlTss6bJ7%PQ)z$cROu4wBhpu-r)01)
zS~6}jY?%U?gEALn#wiFzo#H}aQ8rT=DHkadR18&{>P1bW7E`~Y4p3)hWn`DhhRJ5j
z*2tcg9i<^OEt(fCg;q*CP8+7ZTcWhYX$fb^_9d-LhL+6BEtPYW<H!}swaML<dnZqq
zcau++-zDEE|4;#?pr;V1kfpF+;iAIKQtDFMrL3hzOOG$TrwA+RDF!L7RXnKJuQ;cq
ztmL7Tu2iLTL1{*rrtGMkq+G6iMtNF=qGGSYRVi0FtMZgCOLwBD&@1V^^jTF!RZmr+
zYQ5@!>VlfKTBusSTASKKb%HuWJzl+By+?gkLq)?+BTu76<DMp7lcAZYxmUAKb6!hZ
zD_m=<R;SjKww$(?cCL1d_5&TVj)Tq`od%s-x)@!CZnEw^-5Ywao`qhbUX9*$eOTX8
zpR2!5f6xGJU~RxNXfPNtBpEsxW*W8_jv3L6e2wyrI*pziYZylv?=tQ){%B%hl48<m
za^F<O)Y~-QwA=J|Gd(kwS&i8(bF#U+`3CbY^B2qXmvNTuUv|fWV&P}8)uPAZgQb-v
z-?G(m+DgMJ)~eQOgh6ElFiIGgt<l!b)*Gx(S--Whv=P`GxB1Q1&^Foji0#yJ?d6>1
zjmyXF)a;mc^>(B7bo*HQ1NNg1st!zt28YLv>W*y3CdWx9U8f|cqfXDAO`Q48?auQq
zHZJR2&bcD49<D{M18y>Ip>EY~kKEPV6Wm+eXFV)D)_R=tM0@&p?(!V*Qu1PXHG9o^
zTY0bZ?)4%01p8F`JoeS|<@<K~!G7L;yZs)l&|JY=(diHTz5I9kKMc?gSQGGLASN&%
zuqN<HkZDj}P+u@5I41Z=@aqugkkXL*p*o?$(4H{Ku;{Snu=#M;@UrmH2;+!#5!WIW
zBDs-WQP`-ksHUj7m2NBdtel9ph%SsCUZuS%d)1ZI3ae9ApN^4?VaA+@MaPE69*KR=
z^k+6O=i<ELYU5^EF08$*XKY7yIeVI8$0_4X#@of0#ZM*JCG1X^PIO4DNSxuiaI3j5
zl01{@lID~BlMf|-N(oPCOU0$erk>=<@RE7GY07EYX@lwd>4oW|Yi!o+Su@M`;WuSK
z8LKk71XR(_RKHM1xJ5XYX`fk>`6eqY>qNG6HZQwBM=xi4&Sb88?zd}EYguc1@>KIS
z<&CX#T35dwS|7K*XM_5Nf(;WJJvJWRMA($P>8E^?{IdL4o5MGE7bq2MEEwP7v8AO@
zqL5!WvekBL-8R%V?zVyL=G&{be=K4bT`e{#t|)$A!YaA?jp;X)-+bB;zhj`(vULAW
z%ue3U;av{94wp%n<(7@__S@Z2PA@Mif3+uO&y|X06?J<Fdxd*PD}5`wsx+#0R=uxI
ztiE02T+>#oSi8M;ejj_^(0<4Lt#wLu#dYrva1Y$6_o(k^&}yhSh&h;f@JVA>W8b%o
zZ=0JGnu?n~9O4}sJsfnnx7n(>`H13?(iXTy*fM=I`sj`CT)*pTHEgYKqqP+u1IL8N
zo_-(u{qS+0<2@%BCt82d{Gqm;(q7a7b>wu+b|!X?c13m#p7cK1({0<`{-e>4hfb-U
zsyQuty7Ua;Ou?B?XLHZaol8GAb3Wnxcu!2v{R<HnZuJKC4qWuPc=?k1r3-ydeP=J*
zT|RZi=E}*djH{j3EU$I+TlBa8Wbsq`faO5Pb*t-LH>_`T4=x`(GvqLI{-*2AOSimk
zUAw*F_TX^n@STz9k<mNsJ5zU4?!LH}d2iwV#s}yJMGvJORy<OC)bO+J&uycYqo>DQ
z$NC=!KfXWC8h`dn#xL(D3Z9UkR7|Q&Hcy#Notk!^zVUSB(}`#4&lYA1f0h2V_PNgU
zAAWQEt$#LRcH#y9#i!p(Udq2b^lI6wp1FXzN3T;~FU%Lck$-deE#qz9yYP3D3t8{6
z?<+s(e(3(_^YOu_)K8!O1p}D#{JO;G(*OVf32;bRa{vGf4*&oQ4*`<-1El}}02*{f
zSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv002BXNkl<ZcwX&&2Ur%z_P#e7
z6Qi+fqA~V@E%vU7y^D&10wPTTDJm);MHEC76-DVCL_kmw?7jDbz4s2N*c<Kq-*@37
z#Au5Dn|t;CJm2#^yWj4#-8pmSoS8GTMLrU$3Dg1V0S)qxwSgKyRp2vyrhkMg0%Wkd
zKntJ?&<p4b^aln21A#&LNB-{z@P1FA6VMc>1$+-w06x=a`rA|vr~**(wFP<rWHvJ1
z+fW~4G{)LwjHRuWrIk&K7A;2c+FM}=GH^GbB|rwP43q&r(`WiaDhp7WH3WVE3K+3O
zi4q#qr%!j?xN+0UGiS~ozkBEIovf@Z$;`}>#~E32=hh>6`k4PSh1Z`vdHU@7wd+^*
z?%lU7ARy4EXV0EvkdBI3DMdQ~?D{JKrGd}%nSMu<T$GGI14?&XzI^%No}LTlpE-Rt
z<;|PSY>>im&!4}Ld-qc1+`03zf8TytnYc<qg2QFa>h*H?@DaIi{(_{Yrpb#JFO=|E
zS&WyBYw34aC9jU}(WB>Bq)!HAH&01S-IQv=XXgA&3Y7=gowf(q#gZ8{6ILWFefi?m
zi=3QX0Yl2ehmXK)mt@z@J(7@+D3Oto;^X5hvuDqiY15{Ot*xy<lFGb!^CU1ZP-3EE
zWYwxwvTxr3xpe7@JbLs*NhdoyM{=@r1&n@V`0(LY$dAm~2WSQS2vBwS2KY?>M~Pi0
zyJ{LP>{f?_hJ^ZOJbd&pCtJWoSqd}Vx^-JFT(}^|jvWJ&?UVKE*GpVnoP>mg$btn6
z#MRYRoSd9w)~s2wXwf1G4GmT9uUofHcJACMM~)m(q$;H=r7RgUH%EZnoC60AZ12*g
zi>hm<?n*13#!yM%GyNYTc9XQIX-!i)4t92);db|K>g{Yuu}m=I^Jg!?kdGxJ;}N9f
zLon1mxpL)-!eC@hV)N$Bl9-q$HOYuPMn^}>#*G_g|Ni}Q>eMMoNlB3tCr-%Kt5+pG
zJzbtXd!}^hxw%q6Z$O(iZAz|MwdzQeh5BY=fDPs|WBwl@TD;W(4%JY19GaB4CNc9(
zj=X-IDNmm~lSdhk!IaMxqa_#IL*0-Jb?Ve<*}8SBczJor`0?XKPft$<4<0PNdi4@W
zJL%rNy9^jGKr}Tq#n8}Drc9Y4OO`B=-Me?o_3Jla{5+9YuU<(`4#ec!1SY+E_wLO;
zefn6SOl&C4fbW1(z-Rg&CQ3*e6|}6?t5m6?bNJBllxI(0%Hzk+APv*xe)@fMvCkDg
zfdG@+w{I)bjuJ6EJY2lJy~V}FMXar@MPFZEh7KJny?ghTK7IO1zkdBiU0q#9j2Iy%
zCMF6~y1BW@;>C-VxLdYtQKT&;<=e#WoV@zv@zZCMCQX`w@=={=18_9pGh_ab(zgI5
zq{5KhyY;lVaQ^C@jEtv}mYObCuUu2QXi7yg<;|Nnm9Co1xMIZ$S+;DM!dQO3{^IB`
zJ=Z|rI9o?&RF<xe?kgiBqvvL3X3xNg&kPI<UXB_yI!jN_AZv`VY4)sH9=V~RVM@22
zl$0bJHf&JzQb@&ob|f?AD2z&7Q&AsYXJ>~5hlZe>LjW=+M+QE3<^N;E3jG1-45({q
zYTI49c;i`m+5@?M?WUYPdrofL$m?Ej-MXbPV@ynp0vap{2?^rk?U!w3W&Og`)HD@F
z&FO^;7j6#-2uO&ChzO63ja{^S`SN+d0x)kdbj!G)prDN~dX6|dJ6{LGKD4#5e-#(E
zJcs%w^hZVSgps4D1srN(xBl|QOQ;ZU6f6Dps~lOgYQt)jmyF2)cMchSw#xs9h(-e?
z&Y*T}J6N1Je(uT58@J`mnR9aZ@L@TB{=6a?j~+cLU@Qp^4i+$*BHe-lgR;#`&F+B_
zkDwcl0mIEmPEOX}yLayZ#Os!kk<kgdXFCYIHbC2#FJE?q6#V(@*|WV49z3WC2AqI2
zef|CYx7yp=UqaXXaMh|+xog+16{I68SFThHB1&ka1tz@@!zx3bK79e*_N4^+M?|CC
zg8>>p94`7A_)MQT(Xin#OaH1>f6(8yWpC=GOIM*M9#@8Is4tQ!XpH#!`YQULpP!!u
z2ZiRKJ5B{7?E^zCTC--2{^`@FyMcLHg83Q(wSj5?8U8nvf4vsa0B8mY+#Y!hg>;+_
zD}4iW%?m&V8Ip{z=$o6j$b$zD6dm^Z_3M%f{WedMr-`$Zn=g{3Rn8e8>cw9HpXn1N
zcH7h=y92`m1D700NjWLowr&@6xys-+CDzKsmCE3^gM)+2m@z}_Y#m>Y9z8k*U2iCu
z)Er%MA9UgEAw8QQ9Zp4l`>%if>r2qTaQ>Hw3<@dQ77}#mx^?T^U@&b4)1M0q4a??O
zCk-M>=rd=|$e}}rWbfX6N@F>C<hX3#y8m^H=B*r&3`Yytz-atXY8D2|#Rm8d%2pJ|
z&-9TJ2ccU7LoCfFM{U@!4NSORJUl$a#>Pe_PoAs{?a+EAIK0!P%P%i*epy>vdn*i>
zXhTE85HP48ENu@0hRkepb92YirAt#CC=15?f*Ji40%MlUXU+~MPMk1>L{8|^rOR18
zJ-y6f!-mPAL4#!M*s;ni5od>-ojF4^UuHPFilxQGr~Uf%OGda59UUDn#F?)u6Jcy@
z>}G9kJsD~SJ(EiQod)xn{&Per$?3zs)vMPu3k!*UwPVLlRQ3#6jBfh;wQJyy52wiJ
z=mSW*Go(_fzsmrShV{I>yn3svt1m<so{^vA2h$}OX%~TA2M*jEpsqd?S^TZW@|pf~
zL@7yWHr(EB=CKXyH^Ycop)e(-ViYXvOV_W-g{xQO<oR=wa_XcUIe9{k0z7{o&R)8x
zFhWjFPOi4D?oy=Rv}n<y#hKxs5t$c63%XI)u3cwdzI^#H(>j0U@;mb)SRR&(;D46&
z+~rG3*)QF=ro=sa`68wNm69b(+9K^1#flaC_A^s{e8h^U_jm7>E!xfSobMx>Hg1uH
z3l}PL)n;a9^1}~5$lm??<=*}KayLC)uEW5%1nGJ4>Q%W6L*tK-@${*}nAdLKe$}v1
zqp8T}M=-%3>T&r@LY=R}gb5R(pFMl_hG|@d)z5t2m5-`CJTlzPyLXlHrote)hce&7
z|C1+A=4feYokO~AKriI;1MoHQx%>Xeh)VxYfaVw@t204?q2li!AfBF{io*mQCu-HI
zC2DGFas?Hhp7Btgym+qQ;giSm;PE3c-V+6no;@vq>KgB>Xz$*=cae_<Q2u?4kk61D
z0Pi0X5^^v<s-!)9pybUwRe7oMC|nMf>*>oE%6(o-y`QdF>6<of%4*oK;Sr=uhU|}g
zY6Fy#pADUlj5v-*ukmgT)tXGRpX!pEup&`mM7otxTEb9~jvYJ7_uqdn0|yR#miFMj
zJVNEa%zPu9m8P%6`#@rtOwJ4D)BO4KRr=*Og&C9QUwrWeyY`yZt5+X;@ZiB4`BCH<
znCx|SmXa2!aQcPw%go7^7jIt4Q#P9C&*Wi7hB9Qdc=6&_Ft#=!Z5yZ$oskzMWC`GN
zxBU?k4IDb_4$&B*y~AUUrvwHD%gmWG6{hs_^^+bwdMM5l9ou(G{pzc)b~-ydKL$zm
zyBsC{0%c`o<!ESVa9U6e4Duxlk<Xkg%TF+9Jnr4Qm)GZi0OjQ7%Inv!mD!(j=g!d)
zBp2!K0<57wwgtXJe#P_i{7fGqad5c_D$3AgjMcM{kZ_qc%~|nz<X9jbDY|v*CPRm6
z<o4^=FQ8AKJ~I$DCN?(q1>MT%74#u=^XAPLwQJWNkG!jbIf~)PvBNHoj*f}1UcLIg
z2gY9{&Wm%lhjZn-cI}ep&6~>)RjZ3ygGO7?0Qvw`07Zv{RHl?<PeJvC9!4Ca<p>19
zbE*)fAkm9`3=GV2;6VMK<t0?(tsHCRz5f}aCwcpynzr(?w3s9zAz?COhKtgD)8&j3
z5|*zF)6lwUV`DSU-rl}<<;s=E0Lgpy?8zbnd?;gX+qUgG^5&3?T8R=RhQ-Cj9nZh@
zLBu(6N^nkr(pR%$#fs9qcOMxzKwZ=aX<b4-oPMP4Ot1B>fO>}x9V`tD4CYLlG$|PR
z^J=Io>j-rBt4vKzeKa*Soe^#rK!;+E;gVs?fU)1JhmwIooJFGl0P~_#3-ja3&UX3N
z=$l#?%>g=4Q<b7x@vr<mC^R@T)e#tkUc}bW(9pf`IPkDx!)QG6*|-{j2J0t1?yAx!
z`}gWGaNFcbcCfa+6jw8L-|p`2ij?G#P{)p)=c1y!g@uLHXbnOfGf1KRmoHz=Wmoy3
zj5%k{oWu3%)mwDp#EE<Pm;N>}Z@SIhhoyZDh8P%3%9k&%lsiw-_mukenq)R<(j;ug
zj2WxfuU~)W%9ShksYc`{@u!rUn)+nt&Yc&1eSJ4}?%a7Yo}Ua>jm-Bp1K>ZIsj8)=
zr6bCdcJ=Djbmm9w-o5)W^M4x~Hf%V(Wy_XhXc!)dOU7rtv_YB8{QdnmpE`Bw_RE(q
zl@W+{5uQIA@9-A%^_Aaz^9>j9{gAJpe{xg;;5wI)n#1(&I63Ccim1A7yi`R>jvA$x
zHDJI1&Ev<9*FSpnXc@fpvUp&&cKgAD2VWpF(82dZ2=Q`J;ji-l{%s;dqO!;|oR`m~
zWJkFaAI-jf`zn&2&vEkP$^01q9)hlV50aE~?37>?@J<R0CY)1BwuMf<H$V7aB0dXx
zr|pQV3kf}Y>(;I3$ZYwy|1#aUaU-LD|Nc%$rw)XzqO*TWL`hk_SkYoeqxDR(X1cnI
zOMchQp&(W&nR0}d_7z=S-A>RUE8&@GF;mB)YZzBDdZ0^BfAr{)(tZ9XiTWe;TDs4z
zS+gb!68B8Sij{KMZMSOG3JuIzVc7Q(nSg1qK`E|q2uq2}=lH9Vf8)lD=c-n%s*U$h
z1@A=Z(s86OD(CEfbprj1q@$yA7}EIU-;v_)A{dG<)YR0>Q4Sh)pVSBgC1sszKh$tC
zG%yp-`FV@FIG0R)l3h2^s#UvS3k!?-cvj9uE8P`9>y_(vxa>6$UHkK=PoFB4{C6l9
zznntDMSn&N`})mm1$15GaL<AT3!bCP+K6(@uT`_w6EY+nHB|H_^NkXo$IPru1!Ov^
z9jY#$R{GhqX9enrB6Z2245Run-|U=hB`(wAxr)x8Kc8NuN)>LZP#N!psvr#{i`%zv
zE8Q*Qs=#=Kk(HgLluJeErr+6$ScbxRzD=t8ET8fpWe*7nIfHU^LYY1(FDY7bYCkn?
z9WYAQ2s-2(MUSKd1_#c`kQ@#wS+dkHbVZf%tX~2uX+XxL70cxkTF~JVH*MaOdHe1i
zx&QD%0Ukce_#GZ(Je2eY_Y2Nd;Z$*W?d|{f(o*Hto!fHl#&x;M>CTH6<jmPKTw=k&
z_=u7vOLF<G6%2s~D(T3w+_-g9iFfDTT_ugQ`{@NB^KII+DO*EBBdtuCGDi`Accn^|
zQlP4&K~2diTozTCQ`6JrZt6WHO+rP>;^NLD{x48#xD=yq%T}$t8D5o!3aV#PL6s)&
zJ>moajw~C?e)IM%B@gDOdLM<;QlW79_>4^NHl7y^_6^FSU#wU$TIinyQKVB+Hfhtk
z)AG@JW5A4a6^7*aB$<=?*zn<+)X}=c$H$kzyZ=o$0EYYmD2azw!(Wp+b?ffhzI%7h
zNl2ZPQ>WxOq}2&XpLgNd>C;LWLUqogDh`jTG*X}s9yoeb_8vSaJNE36&D*z2d_qEY
z^A;^mBHy{lUlT|5zWw^epc~G8imvz|!XHdYkt4^C7o?-YiTq<+Lc*JGOPA*O<$S;b
z5>6jSOTY(Ab>Y<c^95!7UD;5kLrDMdv14-M?p^-RZP~gt*9y`4Z9i)C=xu2aA1dKh
z&si9S(<F|bIH8o8&$xZpF4?$kn?%LN<|M9KmCI|#5J#1_DsEw@(p05&6y-Z};eyny
zTh|rFSTza}l<T7>)fio~4(+<G)gL`Z=Fjs~7?Shd)GK@T>?wwZMjUwNFa}-8e)nK_
z*rEW3NI0xv)4fNJbK7?A0`u&ZUHkUS?)?Ye3*Ik`x9{!PvrjqSzI%^s*s@htt=}L?
zYu3t4_t~$?SE#TV`Po4-(f6}W^%^zo($dmiK6vs>wjlp)yLQXYy?OC@WLiA#IdD)x
z%E{BxxJi>kh&vhO{~1sNIPKU7X>t)-`1(zovsn(tD_lm^k!fy4UfcPs_^&-`)EdO&
z4jzM?oSm<vXFO5DsN((+Ht*Oe>o#qcgjK6^hiVLa`0cmfayoP?u(y4Oj;VYeRaoZz
zHh7)oRAJA-LvrZoF=^De@nWRG=lUe{N-`LS44QZ9(0$9OQAP?=a$1qz<Qx*>Qdl#y
zaoGq%@1gfT6dss{PX)9{F2i-#H!@D!unjMH%QjiNdFuyZ&897~X5(h%xN5^DiBC+D
z*cFMQJ6iuC^5Bw(v5=6h(HJ;<GGK<=tSdC(lh<uj!YgSY{^|`#14mVwYd39`Qx~tu
z`YqdEB3>de0pPlx-T=oUx%<XwAoA#$bJ^=QZ&T8E8_Xkl{YK?{!?qo=X~!-Zp`$~o
zOC8(9CouTQ-Xkf>{ld>x7zNJ=EKgo7A(2rzU?Qpk{(u#pPZ#fW9L}R$X1PCSS>BaS
zVJK+=49hZ=D_?#N8d;rBg(*p#1!&x{efKSTU`mfUbCo5r1SKWM`NoYKmxC}Il;zOE
zd%FNUGz}jP7LNc{dk2NQiC?uwmL;wFV8pIWmS`~JQZS=mXhcrycI`O;&XzwMc~P>_
z-L8JK7A+R<ICM0Z`Nbq8DRFs>AtNIVRa*SNeDzv6ef0)6Ovr|D^YqfCOBt#$L=|xD
zA@AMFcp^*USG*UI%i<*h;CURFYRE9neSH3srAoOjO<0-ByqIU<XDSR;nON4y_~p`f
zz`$FGKO0Qc56{*Js0naT-CBRl*gJpaeX5=r`AcwAOeW$^MH<zCPon!KvGp`)+xq9V
zx;h3j8-@<o+xYwY(`iB(5*j<!gxxm>ifO^Ux3%F#@_zk_6)R3&vu4fRhgpIbogiVc
z@gI!vWy^6~E-tg@Wqx0!%6_Cj9g?GWer3^Fn1)(cQ_Jxe_oSSX;H9w=8WSfWOP49f
z!fC0l^E@Pa8PZ-Mu}N!W1te?I#;uYJ$-*O%uzr(7tw@rfs2K4JUm^h!OWz6qh$!(1
zi4ecAB}(2s`t;q2@));l(>8(WheRV!pl~?~gZEgjV3cQ3U`P(6eiY)9AvyI*Ba*5S
zhu(Db$C}<qgw%akIw~m7sH7P$K}%x9YO?JE#5F}49IpEKnUY3JzK&SCWs45Wb#?Nr
z@1UR{W$g>4W&i&Dl??<ChFub!C4M)x#)k!wIT}N<&b)f{YR2OnkuX$BU}TI0E{Xjh
z1Vw>?mL;IF<8n)U^9}VY2UHq|H~4~CVKlPnZ>j6-KIchf{7NN1e=y5C^ToA*$Y|y0
z8y+RzA>lxT_=2GrCm=trUsx0vF-kf235^8PMJi$52JbQcqQFq`3JAfqNNLr!{aTb~
z!cff-CpYXl@cy#omq)pebLM9?#qJ5>+Toe%0R^)}IC6e_l=W1{^yTX|y+1ty_xOwi
z%h;n&KN^BVkOrrcKYjv376mBXsx)fYJV0}}t~feQld!NbWw|U@3=SMPP(jtI)l3nN
zFNfWIfwaWK@|=v(aq{HJu`gb{$UJiXI$AB6DPBQn%<>OHSnLW}w_~4VWQ$C&wZDTr
z%m7Nr!WG7qkrRTJEXxgxS)s%WiGF{cED!JdM?`~}!o<@zP!{+FgQ>#sKU}<k1^&Sb
zc+P9@!s4JjFrKGRpv+zD4`z<eEmyt*RSP?7JIB;DJNBddq~v;cd3ZhV{j5;RGkExj
z%ZRIuXX03=>iOt2!bNXZUjAXPmnJ~({FCS7F=#2IFY>PTWA!-1?SOPBP(FSFLly%#
zrdIZcsx|C}Ym5>r%LxiIMny$Qe0;pJFpG=B3=PN7AgBhAi4|!HsYM2*XU(9<$jBo|
zOSbG!k?^=giNecMVQJ!;LiqK1-o3Z){}!>y>*e;7Ou6$kQ-*43(-*QGDv2WoN`;{e
zKb9?9&Lw8$x`Mp^DBb9lNHb}@jJ2Hbs!qN7x9T=fyHHQ9;aQ@7A-w&+@b$vsmGcH_
zJU`l`S&Nk@78|d#PgvBOgbmvY%JgpJzXM>&@+4{6yybet{RPj(*&u~*&PHGVr{*m~
zmaW==@~>6my*s^MpFINUc?E`1pLE4LYJhY;ovB9fQMts##LC5r7E>QOSSL$=w2?$c
zL@GO7aFYRUNX5N>X3UtGhTvQ-OE)g|*JRE*jT<+%IC}J`GJ>42Zkt5L!6?CtSq5f`
zNnEQi0MB_O<M0}fh5xI<ybUD`?yuUso5{<LLnpGDwQTK)eCy&JE3RZ<(3+LM``&|j
zM#j^y$xE+rK84d?zGjmoZrCAOx}#H(PB1V9PzK%eL07to0I$>Y#{MsW;W(W~3%*bF
z8a4gnR&A6xFp(<%cR^LY=!7*A616-Bmi9b6PZK;B->pJ8=jcdBjS)Hr_MSMe#8JJQ
zcY)8nEO`SA!_{JK>qvca9MYgO^LuT9kB(5+<sLnH#KGRyy?PG5J3>oWSq8xc|6J$I
zHQgE-8ZvdNJ%@!jRKn>q>L)FAbaWP_r>DQTl=?(MqtRucy9kR-1al<Ah)9%(xRuIz
z1Q?a)s{g#laCz5M_h@}4{|3Cqusl!Nv{PYBbe&JimMd?9{5hXn6ct$=aPkXZn&Tf4
z14CwcK^#?{zamNES8rA@+Sv3a(y&GvtpQr`1l`8C-OFHgb@jPinu})-`y(Js=!g*`
zd^Jaov_?Ey$vt}aAGB@Nmc74uhPR<A504?yE5vS^>tn>7h%(ShF3{U?&Yo<@1RMKX
zTMry7c&<NAGf7FapZd_#h^v7#J`H_RMX2X*ftnpUbZF7G^)I_dXz9r;H+O|8xj_{r
zrk0i#odl$BpZ;?Zg)VCY=FFM1iQX$~p*ML2P|u2h;vWU&Iy&zd3WFgW1_l1}TmjA(
z2S+O5RdEXL<%chfg1AbWOJ&9SZF2vW$aouvD=Y(04lkTTP!q;k+dQ4?9Uz{5AxhfJ
zM^&DJw1BYKm2&*@J#qC|_z3ZA0M0~FC#Hp49~kWB=C)C30e^wwAbFX-fyp@PZtO|a
z4NT0htlN1IMo`{+Q04s_;5y5<I5<icLN6UMeB@Qcr9N2+D6o>z;5g(p)_tMxOETM^
zrOEq?f+CP^gw(22kLm;s!%st>R1w~5DWI08r)T?mbs8<y($tr6<18R0mnj=naqk{l
z-*f|;GQ~E%RH;%ft5>hS$c_Je!eV9Sd>?UJ;3u;e1<IVoK{y5|$2s0Wq5r(ka18G<
zcM-5yT<3W!*BJIU@d_h9uIjjQ%RbqB;H2~$q(S$t_UP`Y=jt?Q)a2MScTbr<XQ9mS
zK>G8L{(Ntl>6uqP_l5rA?iHZqvwVG?)J3Dai0AS{eEnX%dO2{#<e@`{ZqemEC^}II
zTR3mVpS92r@JE`yO8J?Wwf*!bUw>VKT|XtI@gzr=CthGS-e>;r1>S`#%IW6mD-E0c
z#M!CtV4%YKB$=~jC8#I!eM4myo<sFa?*s2MUq?5OEW~w#KFJ>7)AOlB9sF?k@ZnCi
zYSq#lqOS8?M_W%B7UIrn1n0tk`Q;aB)~p#lSe|W8xg^u(ERv}+=ZT~H0_EIkwwD5)
zzx|&_`<e5_&SkFHx_HPG=h<R2eU8`?xaR1-uppc&eqpH6BAoHUHy%1Gi^F1b8a8RB
z@@1qh7uKR}hnLn)Zb;u9>CYD18BE_p0rR$V1(f_2NND^zd7-f8uf+e6Nn6BazHdRk
z3`;o70^B^s-fg~2MLJVZ_Q}Y{*lNnlij}{MLH^vdwMB_<zM1AQ%QM#=@8<0?{0_Kh
zH^T$rJaWG%TGSJIdQ&h^VSSQ@WUDqEx@>Us3KAQHC*GMB!Sr~X?jc%wV>s(&i8MIp
z{pskFDneaUc>MTrYdbr;kzG3V-mjx=Aof!olzk@IjdQxOXRlsz<>5nF9JN}k>}LUP
zGQn}SSWlZP6P)JAL}Hpp9`gSy_YlT%s+*YGx{A4ti<nHBCdT8ZN~312o^|fg@0GcY
ztBiMWD~O|tR~Q9p;>h&u+!o84gO|j@&h>fevgPRjVF1jmU%!4%UA4wyU@=9;T04sA
zWM>&?GadQPz%d_FW}qxCO8HfJsnS-Rk9Tla?pxZ;MA>IDAH;PLvnkWX#M((rCOV0}
zxlL}Hj$PBf_@XGMI}Opzvg>YNuVK?TzMpXjtDtb+Z@~;@F`eWr!*s_yMO@Cm*8mFZ
zlXRBp(`(T1OP2OCmHhua&FNx>=SJB$RmoW|cK@Fqfho%Zjgyj+hBs^0%3W7`Ozvn{
z;XXb-Vr69|4({%<>w2b4a`O>`@s46J!AXoK%@E_sGsI}pbmcf^vWs$5uIJw~oH$MN
z5q`9ly^J!q6J0YK89LfLr^=5tFCyEd;$MBWXYeS~tkG5uO4zs4D-6{=p7UrubFqZ3
zKPm%98q<oNYi@3Ng0oLGYu1#KrAkYiF1=)!frX41V=W_1CX0^g6wxsQ#@UGOI9t)P
zn5sO7k+pLHl=7l1dMqo#X(P@^lSxQpqG%e8ml4Jjr1ub=%=%4Q+$;8F@eRm#HZTko
z&n}YVr5)P-+<UJ!;%Ffb<NYxvDCxKPxfiESM=%YbK%d09;wU^o%kaU7vDSYv&51G!
z&sXKgS}PEj`sAm(qcNEB$IF*5_Z>HG+$31xm-_S`C@osH5zm;l;=S^)j2b^fG{@S=
z2(zi8ZSEl2;~Zq<IQzVFb4TS^@E`ZIOzo8L!^cb(4a12tM1Q<=9XRq$snTWXu)wK8
zx`;V^|6}bF!;B}1<`^)5Szi3#rdt@l-s5rNtN@wrzfyi`_sdPrJZWodi@m+QvYSVn
zHf`j~;$KOPdX43$wq2!5f32K;BgW<q(j6xQfkC?FGFZ=2hKwFBLks{M)kj$Z7Pyxe
zroXnCbm}woO`}$w9{*6Y?zQ4ym)MOmQ!=^$x~TB>0Ig+CchZ<>UZ+uup!!YQoUYTT
z`K{Uwo2C5`5aw=!W^K<^`0fX9#N_~Yfj&vXe=Zp7-l$c_O?4Z$yofk=-%jIg)NRz_
zR>Kw@jw7BK^li=zeUfW*6arIL;+~MuB_~w*{)gn6YOQiZc3cvB?|2z*YAYIGn&BpP
zq6KF76<|IbHNi{-|7)5~m0@7Up~hfFFq^vm1R11nB`rJmc~Z1!u>@o_4qY89vpyJ;
z^XYEQI`()l)MygYw=GC3FTM9e6ODuUIf5z8oEJ%@s?}xW$dMAYBuZJu$Tc}_+qRS1
zHS0;SqF;0Rj?-=XzA05YrF`Wo=YFi)=vFPYW~uo|%SURB`c3ZO{sk}!!_$+U`l1)W
zu}C`0_C?uS0i0RlrdV`B;dEzlJP+48@l!7RFaXsG?!r+RGvC5AfU{KHVUSSwE6^uN
z_|K_ZuE*zUPYyY;F}$6|+u*n<8$5@)*maZ9IpoKoE_!-#*o&hUAHSZ-LZUKTjvhVQ
zX_&G3`Gix?#d204m<)^v1{g_6W$6S=%LmU@$h*cc3`^!34#v~~W2!?6)oap<Q-nc)
z4)WpPFt=;rIv=jq8-V&;+GoVrOy)HLjP`4qh4WBBm49A-de*KoKW?wm7zPg=rc94=
zeAURvNQP^S5cPqYS)Dp{-mIaaF}G#QmS*35_Z=CA1LUkcGEU(NWu<em6&b(;l12+<
z>;rTJXoS=PI0Z<_NGjaba>k@O(jQo@S~aUGRjSwnj)h=fwrp7r%Ig7r!N8P^Edb88
zd=Kz_e35eMWDy0YPbq1FxJZw>W@Dfwzy|S0_z9q!8W*y$>sAX33yVofNx6FT=+SFS
zVq%UpP*dxSM)39N^XH44ICEOb@5qT`MGhZJDRTHkN|B={Pbk-U|J>z^Mb2Njtbpfd
zE}SoN^4uAvd<Ag;p7R>-F&>Y|pYMkajg5mtcLc{wf4BPccZ34c%BxzdPMxuSF)>%R
zTz(}J-Mqzc5_CD6nKH(9mU1+j;;J0q2Co}J*E4`#rVqVL4|=37bT$n`tL*Qq)!+aw
z$2SL|Ae@O&_U&Pz0IqH3dgd`zs@FQAHy#GWMCf+ZA>WZtVW`T&vQ2XLm#7`*(Cv;D
zOX$E*LBz;#tQZ?v$iM-^PFq`ByDnO^sE?_sDJzW5uG9f}PNpbaq5R(rpvxG`%1yY)
zgk%hs^}QPs;5w&1JD}n(K7aoFH8<mW8xJ2oe1ZEn%+1Z&K=~n5I+l<bNnhMbO)Wy)
zPD?9tJ3U>gRDgN15*dzbx&I6dM`x8{s8=q57_xHh+WRNYof9yN>^X2C1NR0);+IK#
z^r*-k<fG*G7I>ZaAH4-$yL<osJL9m-yq}&Q4*9U5)|oM5hU>zG3zvI)d&j!FyK|Sj
zf(3TJBiulP{TD5~1|2(gv^#U=Oxor%sp2><Ky2K+WU`B=SUcxgzZ0gxLghKYYbq$$
zc;CrG#yiax3s~CYU}+B@ZThBknQ}Xjwml?HSLDU+Ns$Ih<{+K}WpJMZ@~*%18Fb&u
z(H-gKS;KGV^}9R~j{m2itiJIZW%c1Jf;6OkyAEP#XeI{wmd{L0&B9l$S~cwD%a=c7
zWMq)J*dW;DlF8mx(Y#J3ATzLhf83(;2@FvFn{U1uee~F|XK5J^l#RF^a?>r~!IQ_5
zn(<KXrl&zm%A@%B_+yCHjuH!hsXo0InVFdiLqNTH=Y17;U&TBuH|V<#9Xd?8$#qJ%
zZz&rz%$qllyUh*6{j!fAKQ8j-&6{_oMHEi2Fwp4U8J@_=$tm*m=~E?t)N7dv6)Frz
zV^qFp!_CIR!^5{Be@gw|>$>?boBBpu6BCnARM@NS$FGWqUxaW>%*E4BrqA<{X&#Hk
z*~43$=Xxvu-v!=d7>+mE&+?T1L$#h4EA}Ow3#Q<ub3mBV=A9xN*I4;<>gbP?CF3SL
zX8u`zDk$NA8S{K)j&HaexR5Gq_nZ{9#y?5FzQeP%N9yi`O5$++`gQKP{=0qF|6PRg
zv!T_fSFheIyvM9JS((ZzOEmJ_Lx&FK9653%hhI<QO3xRs@)oqEr>AE%Y0|_F@i_R;
zvQc+z#B>18F0rel{>MdmR2NhYghGTXNV&@gzv@fpYlf=~CRFxDBID$jsalO1HOxni
z8nu7u(4iN#w6sn)Yu3z%@o=9#78#e!!Tgv8m%K1N4sU%|I6Z>QhN80pQp#}_jJ+HM
z3RfFYU*-4Rxh#e~FI9)OFgOFisLEPpeqyG3_wK5%cW|`;pCym-3(Ps}K2}rgcgL;U
zni~)mC*Gk;Wl>P1EbtGN`M$w2&nHOc;mGqp0>gML4wPA5zS6d17cMd2a0y-Tbtnb#
zaD36s?{~z92H4&30gda_Z;&!)ae&PA4SHu@Z$ni^mf1TrT0&x1icfg7RH#_#KDzPH
zy?gie!u$9U_{UcBq3o=Lmiqeo>-h4yZX69E7fg4%Ql&~qDp#(2pjNF~7kqqtUh*E7
zzCsG|V^&Fs*LBR8G2_>*TXz5w{V4QdR+{d#Y12ZFA3uH(|Ci%`9lS$Ua*fiZOZRtj
za*Eixb?aGfh5*LDla!QnOixdbIx*KsmCk>sEK@z`((ZwQfz125gM$NoQVqd0RAI;v
zbVY2Vt*z~nkdSbMJ8+yofBxQ<En7}Q#h8bCG>#PJef|2iQdjuTay0JRwW~#NaPU?%
zx@(s&UrvY4dSmI*rMrIm=_eXloUU!@>+8F2|Ni|2-2<LIH!d#jHu5@+uADA@+^Z>%
zP^jXKnl^1UXQB78$hZ{}xP*?ak>aiR2L{OkKl&KvVWIz@!z&<I+~&>~=%j+~g3Bl}
z&CJX~@glh_f*<wd+80{dd`PxPG9X(Dr38=l5SA@Y7YNZ9F*4&_`Me8-%ego(L;@nB
zWXbYGnYY-79|myRxpQYDypMm>AtAql`#^8Kz?aYEz5Dj<%fx$LhU;AaLwB}$sK|3%
z6VHtfC`k<r4Csny6c7+lu>U3)Edv#%Y~=wxlnya$;Cy$TEG#ViE?&Htt^@=X-YkI|
z7l28qE^&s7j6@x`y=sRJ=6L}6B(9BsK1l<!8XAmNVq)TP+(S~iiX>B|$qV!6&*$hv
zD+m^<G?b1N%atqFZ^42E8|gQjAMQ8hK#%am(9n?E&X_@6DA@Hx6^75x=R!Bm2Esbe
zBV<5}s6nO5l}%f=ZnL~`lcsyr8a6s!Urp@{eFO8*;9}kS^{>{cSMM&E?QyNzbzaq|
zRVx>ew}Eidu3bB2NQR$G=4X=Wi;0SPk(`{&Zk!u0DIccK2c0S2#t<+jEmNoB#fz^%
z{+IqJ&-VdwGEx4tZasQ#)*C%qFDfdE7V}@y3qO=l$&|vQQR&Lgu-xzq@8CYJ*&^@O
zxZf1#hLC2;=3U$X0Tq^`rl!WF4-R|w?77eDB(58xH035;+{O^yUj)J!LF(+{ebx4c
z+&qCgBAHvYT@EYW%F2pESPhXcrQpyF8#X9AbWnAG6;976EucZurcK8{!rdp6a5IK0
zSFZ5;NZCxAd61wx=5*=Og`0b+RE$B8eAn{t$(=iQlyY!)5`H>{arp&0dwcu!RjO2(
z&yU8kY%CYkWEhs29|eOXW@DqOkVhymsUnzw4g{2B#sG&(3i}mWRjXEQT8kDf=JxH|
zH?CK&UdI|YYI3`GuR+;^25QKlL4(D}$XFa59hJ2_bPC?FV}~3(cu-caUafq-jz@mp
zWc&8*a^%R-H@J5d*H@#^9G_#pDkfF;_xJZh7q)NBnl<T=968*e3X(+ePNFjiEoujQ
z2W1-;y3_G<DRe&W-o1x(@77Ct^yn{5o3?z4#&M!&&z`~k`}a41w5CN()!-jv%KWse
zHE7Vl?Z&NJS(FE?1S2CO8WbFQqLk~^xN&1IRA>gm$kprD`A(?j%tPgQU$}fZD-{*`
z01TFnisOzS=$_xKSh0fskPFSmjoV5_xPAAo!T`{dU!Xp2v~Jz{s*R1!<LjtoZkv4{
zOt5R$uKQ@z9M`N@v0}w3r_Y{!{qWHvg?Xn;nZl6}e)U%)A~NzU)4Y?K%6fYZ=DSp;
zOqs)|>$|t^+{w*Aqj(O9k9WNn;eSTM>gg8{ph$3*0}?wIb@8Ze+qPGJ{`uz{kkT)>
zZ8uaH8gO>it5<i$`@e+e&3TLlaTob`dV0Rn)YQBKwI!u)-MSo-qYj-%c#*U~X?b#5
zi(_E*0hLeTZ!mW3*lsZ6wa`*srca-~Y4~u>%T^Xs-#9zDiSsm9Wlawm@AT=@%F9ek
zOH*3;rAwEUk3aFdJ76^BJKpQpuU9^0$ImMh{1_;~uiWy;dt_vKC(-+z>xAfN%&<(0
zpI+X!ZJPuI1<O>ssWRTm8kj6r7Ph%)DEH7^ZvwMULqiz=iQOFKXE#RO>K~*0^qUMA
zI53f$C0xKeAX7#}MBGDnej+F+=n$U$0=lfst$2oHyoYso);|6E9Y#C{95?Mda)e*0
zke&PX$-2#(bARd9?KaX)#{C7QN|o|WTD$humYq9=m}Fx^M+@qr+&p0pkZ5af|717f
z?}0$redthD{RRy<*4h>6MDIO(SoWu+$N`{DyLMbZWH4mdu;pYfUfZ~Rdls1S1g=xU
z1_GO0-QAxaI&ne{9X~Gf7B0MoYsQ^AclNywX50+Hvu)3w+-^O3(AAC~Rd5G9P~Na6
zO`B5xr8^*dKHb`N>TG1*e7?Ph4oTBy&A5dOXRqiF+X;+L1NT=#B2<QH(b4)P(b9S+
zz;JaS-aA2=wSYuSw6wH5Gu~?IGvCD#;^Q5Ht|~+l6IaTmi<cAyUa>OKg;8XaL9boA
zu6#O=l9UXrVo-hvl#IylE)pt9O9p4Rz^;HyPO(o3!TY|xe&XilE^e-K08g>Ab<5Nq
zIqEW)Fg`judJN*Xg7VL)zrQu4^Pz<FsS0%&I$Uet=AC<GdGZ?BxO0zOyZb=s0(a)h
z4M|wDUZSA8hb)Pf!0;ux>KemXp{{_1p^53a9S06ed{W-h;QoWuInh81nFfO)(%pOF
z{1u5!TqWU4<FYD$_uV>NAA@|m0NnF(QqMkpFRom-QC6&8CvhuRW&c>C26eiT+Ipi?
z4jezFTt~i{rM~@^3}NLm+vDz`6K7=4(c^OA!iCJx(9qOn%a+}MFt`R|<<5cQr(eh8
zIpUMn%H*jIHxS2loaMv|2Tq)pWr@k+;pO!L*Mia0a&m!|d<W>A+z_HC^k@$7)6h{L
zrZqC<$mt7`xOSr~iCvyuu3Y&gxIP&7Dex!|OW^;96W(tP=m#yJ$ZA2F`MJ2b92sM5
zmNwJHD=R2qse}YAk?^o3vSssDxpDo5qU@6?sUK0vrtU%sLQv6VcS4<mM>3r%Jddh#
z>MhiFjzR)OL`2F0&xJC7-Xigw?<;d>`{$aOT0b*08+Qg0DHzgLGc`4}3Cc+&{y#=|
zv7GZBq(9c|O7dnjn$SpD96~2!7>z-pvM3-FhFA~`FMqL|Z2OXHc@UlqNwvjf!j!4^
zLSvT;R~}BZwO1+|P)E8P^3k<%bWTm)x>LAZ*W7wCrKAfa3<vo+E5>Kl9jT{(jmwaI
zLL<b*!}B?q#R1nXr#LvLEd?_NM#YNNBwNOH`l4u2huK~}&$&`GXz4NuiCM1P=Sogx
zHD@?SV8WC#^Voa9K$drr`$F&MT;CKPmmnG=w8^Me$e%qd$9`$?a|WrR>KylnTTgYo
z8<V_Nf{~A{({y^)+o0@>!(Lhu8o2iVN2qXqKd~{SS1(w#PUxC8TU%RSH5qI1c)|RT
zoUo8(5*iHaH!@lh(drK#JOriorov!k%s(PBEv-Lp$45rx=j_(6-yk6&q5K-IEb{Ub
z??re~USVQA!SNOJ+1t=}wn1{c9y@ldKcur7lKE|S@E;(&WLowHGv_aQ#Fd1;s8oAb
z_iP=5F)v0LnLO3eH-6lIutsV<wT9HS!h!LSDqRqd#*ew{yoHZLVpf15Vx{lE!Stx-
z8f^~Qa0R2D^Xz#_x``XN%VfvtG@d3Reho+@O6b}pOO<k5wQbKUzldn@$9o^5Ir0M2
z{klYn>GOSqUPUfX2IH*|^<kRy%(6iEnG5_w-ULT4m&oNwVq!J%*+@NuG;IUp+bHkt
zk$Q%A)HO6yhiU7kqwLqdt5VgkM2QmKi-N;5BjS@}DHwCaD1FtcOWGx>X+$;<G9;I%
zR6zO0dMx&P9u}7<kt>q9CW>)%aIZ4T|Nqa7ZxbrN9;8`2FwO|*iwhPnUcAS`!s5nw
zt0^zMy&`fWLYGTK*fLof6)(|C`I+S;=!ARa*s<es?dml}_hffW>y4Hex8CEYnqh^?
z+BNGSaU=QhQ3-&Q3Gk1QK>sKS^otgUsqSw^k2bhBb?VgpFowL){p%o|wkS^>;2#?t
ze;?(y^y<}X)SMl$JSm&2I74DrNT*-A(VcD;zz+>@JdR_C<4_meWPr079J8(WeU++i
zp)o76!sAy$0<DxzKX=`O>vZ^_qX!4HN7*{NJfJi?b0bZjym*nLuCC5ir5w%ZQm0NG
z8yHNtqgJez;AoCBM`o4!wlpQ}i0U<K`G6U6maST^FjD(YU6hSji+}aiG*7>v*UWSG
z@w3vi-++6#PD_|00nuQxHKwMfbVi8<_-#v_ufP7<ZJtlSYc89<55xSx$urOJEc6>-
zm)(P7q)@-Mlq^}2Lw|g>>XpCy-Wd%ob0r$n@yoXa<z}OtsHUdYwN|ZK%K9q&|MwD@
zfCJKvAk{iUQt890_FuSg;Snn<t29%SaWCxcre*mo3dxO*N|vQd5+!D70vL2T7&T5|
z)R<^8EEzXeqL##>dyWP(E(M|`EF=a@9S>%Vkr~tHW}BOhe`RE7lnx_?pK1<(@nir-
z?g-U@U&iIk$A5+JVmY_lvUArS>-;0)WUhCR%=Zq;tx>Z!H>Dbj+dTm~b0~Tiz{=oM
zCdUw)x9|LOvUl(jna6lO!MQbS*QHyWYQ%uUO#M6m(*5XcFMpZm6D%C`gN~jF<L?|S
z^V3jQo^!%uu6Ll!oVzHyO@~hGYR3Wto40I}5EQjSn7&s)L~fmW4OHIo=Hn*VJn~o+
zAiGj7P*uwD_xHc)<m7b1%ggH`1cs8Pp^3%mFN+t~f@I@Z;@IIMN8RyQ8~~Lh5~UFC
z<Czf|8F>PR=VgwOhD0ZbowM873Kc7Hw4rhBy7hhL`G(~BghmVJur6J?^Z`8v!ucXR
zF8Pk@yv1j}EnSAsND2GT5b~=5G=c8-%Yg$2j8?8(xiBOoWFsv03lk<xxNmGc=J`}x
zhio^O**WNbbC*UYNL+NX#Kk6qQS(5?jm6Q|I~=;ASMD@Nmu!o1Rxgc>jqigI&(EDZ
zcOxwEg<wYGbLY<e0-cn)Bi+RQtArOzMZNc6P2I~jGiJ*q$C+X>-tINJF3x7rb&Se9
zbuKa@r&(2wC}heW1BQ+`&v=ua+{9#p?JLA_MqK(pQs1K68i(xMwDgRhO>}S(+v&5#
z(cMd?&&!)$wRfE-Q=DgsrHxZ|{f13a5Y`Toj#GZ>y#@?94pFHrL$R`Re)IL$CESrd
zcY_;Pvv$3W7B)_~)($h3r4tUbJjHR=0%f_#B$Q>6(=5>%J?32T;$P82O8KI3`3jX{
z%qBVHaJdPWT;xsf`iS$K#WEFn*dxA?x%IWuWy(@lZeF!o^+jBk!t^FP&lX!(4<!$6
zLlauyT-*N7FJ=Ri@LSzY(em2EqU(niWCH0qFFZUvY5x5A$DEy=Z$kfkXkudW%+S#A
zrGbILYfB5uH(<Qi`uh50z-Q*><_~OaY;HhTJhouLf~2spFpq?U1QUL|{`T$L9UvLW
zjK5Az{g(+ZmQ!wh`VJd)edwsMZ-$IA$?VcwokJ*kxJOTzcj`|071FcM5S=TGH&o9I
z@dnc(r{gf)*i@q;oa0t6Rl00+o6bER4AC8%r8{nlj5fEE(UwzXu=beO?Ys85U#46I
zcE22op*7wN7^i7um2Ny~x)_XiklsUeXykDHcU>?h=d~@X)vUX}TYrt`T85Un+GDLn
z*L1RsFdm=Xd+^A|4V$&$Yzy7&=t)%$(o&fM{=Qm`9l!J)@(gL`j><2Gj@gu)K0|e$
zG-=hIT|RwITO*H##fp7t*12c@JHzzNb4HGxDB30ybMbzj)UMw+3}M<J-T&+gOE3;~
zye44KwpXrP>A7pyu9553t+ND!%|O?)AU;0cFE%z7{2IO#T|h*1bhLj=OpIq-T-<cr
zw_3Y)t<I4nM|z{HYK?R_O-P2P;{Q=m{)=q}&3-&2lphd)|C4~WxJL>3&fzFrrxa{f
z?91X-h~o=z+duknva(cj*914CrIQ0c88{o^lgd@9a;S3E>c`8JuSETmdLNf$=z$U1
z7cE+>ZS#&j9CXIdI5;gZDR-#RWEld~ZQ7ci=p2fnV+^-zr1J!wivvo2TV`9uDnA~r
zROQD*B}#tF;U=!`<e)$I>tq8_R0*U{W;X(SN|gF`3&J0(_<gmMZ@w+VRhZOc`P|(Q
zmKz_it~vuwNOM)$3Y8C_VKLkSKoe=vkW+R!`L7U|sV2|>XbR9<hlWXeFl@)WckliT
zowQSCW@dX_YXh_ZC=I!{dUb%3=%XdPSdQbei>3oGE0N$iuf2B}0`KLAp~JH(9?z9{
z=F=AzF?050ICl5+5aI+!J1`TyYseU!OCOD{o-SzZ0L7P}e5LOVM@^XadeWRA(Kfdi
zP17kdP}l6u*WZ-n_$1W{su9ea!#8SRc=~km0|L}T#{irc?}2-K1~Me)yeYLw^j5Er
z`;^9<s$_V^8;NVwohemS{-Hz_TqpCh%$z>f#D6{~9gr0(9oIfS0@GCm{-fiH|4zb-
zWra~!q*UY>oobwp760C058eab8_y#srie#CbP;#IC56M%BIovilrnTc=5h=&4%47+
zTcbgvpXN+)oiF2^+{I$5ix^qiX4bCXkZYoJ!4RBKASoV102zn*@;VuXpi?uik$D;B
zU$gzASO&&X%>t648BP_4@!6Odhs3a|GLw;6W;QDN(=u(<809}YsqvZqCau`8waD^y
zn~N-4y|GA4^7<mN$s3Bqt=WWYTZ$xX++HMc^UflPo3`hN+fpQM^(GZ#u(Da91exTE
z*i{>Nk5Z?4!zMr3>KU6{8m>Jmwa)<cTUD!7<FukBx=TtiMJ-sdev6WKemoVk6;AVC
z%#Zmpf0joThvnt{{BZA%ql877@jSc^u*^zX`Jd^0rvC%PN(XVAmU<i=Yq-{k4i6)6
mojw4Z{rN|I06vV06#0L0BQaiPgq42)0000<MNUMnLSTY`z}`*(

literal 0
HcmV?d00001

diff --git a/docs/xen.doxyfile.in b/docs/xen.doxyfile.in
new file mode 100644
index 0000000000..c0a7d93f41
--- /dev/null
+++ b/docs/xen.doxyfile.in
@@ -0,0 +1,2314 @@
+# Doxyfile 1.8.13
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project.
+#
+# All text after a double hash (##) is considered a comment and is placed in
+# front of the TAG it is preceding.
+#
+# All text after a single hash (#) is considered a comment and will be ignored.
+# The format is:
+# TAG = value [value, ...]
+# For lists, items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (\" \").
+#
+# This file is base on doc/zephyr.doxyfile.in zephry 2.3
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all text
+# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
+# built into libc) for the transcoding. See
+# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
+# The default value is: UTF-8.
+
+DOXYFILE_ENCODING      = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
+# double-quotes, unless you are using Doxywizard) that should identify the
+# project for which the documentation is generated. This name is used in the
+# title of most generated pages and in a few other places.
+# The default value is: My Project.
+
+PROJECT_NAME           = "Xen Project"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
+# could be handy for archiving the generated documentation or if some version
+# control system is used.
+
+PROJECT_NUMBER         =
+
+# Using the PROJECT_BRIEF tag one can provide an optional one line description
+# for a project that appears at the top of each page and should give viewer a
+# quick idea about the purpose of the project. Keep the description short.
+
+PROJECT_BRIEF          = "An Open Source Type 1 Hypervisor"
+
+# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
+# in the documentation. The maximum height of the logo should not exceed 55
+# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
+# the logo to the output directory.
+
+PROJECT_LOGO           = "xen-doxygen/xen_project_logo_165x67.png"
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
+# into which the generated documentation will be written. If a relative path is
+# entered, it will be relative to the location where doxygen was started. If
+# left blank the current directory will be used.
+
+OUTPUT_DIRECTORY       = @DOXY_OUT@
+
+# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
+# directories (in 2 levels) under the output directory of each output format and
+# will distribute the generated files over these directories. Enabling this
+# option can be useful when feeding doxygen a huge amount of source files, where
+# putting all generated files in the same directory would otherwise causes
+# performance problems for the file system.
+# The default value is: NO.
+
+CREATE_SUBDIRS         = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
+# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
+# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
+# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
+# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
+# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
+# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
+# Ukrainian and Vietnamese.
+# The default value is: English.
+
+OUTPUT_LANGUAGE        = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
+# descriptions after the members that are listed in the file and class
+# documentation (similar to Javadoc). Set to NO to disable this.
+# The default value is: YES.
+
+BRIEF_MEMBER_DESC      = YES
+
+# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
+# description of a member or function before the detailed description
+#
+# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+# The default value is: YES.
+
+REPEAT_BRIEF           = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator that is
+# used to form the text in various listings. Each string in this list, if found
+# as the leading text of the brief description, will be stripped from the text
+# and the result, after processing the whole list, is used as the annotated
+# text. Otherwise, the brief description is used as-is. If left blank, the
+# following values are used ($name is automatically replaced with the name of
+# the entity):The $name class, The $name widget, The $name file, is, provides,
+# specifies, contains, represents, a, an and the.
+
+ABBREVIATE_BRIEF       = YES
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# doxygen will generate a detailed section even if there is only a brief
+# description.
+# The default value is: NO.
+
+ALWAYS_DETAILED_SEC    = YES
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+# The default value is: NO.
+
+INLINE_INHERITED_MEMB  = YES
+
+# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
+# before files name in the file list and in the header files. If set to NO the
+# shortest path that makes the file name unique will be used
+# The default value is: YES.
+
+FULL_PATH_NAMES        = YES
+
+# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
+# Stripping is only done if one of the specified strings matches the left-hand
+# part of the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the path to
+# strip.
+#
+# Note that you can specify absolute paths here, but also relative paths, which
+# will be relative from the directory where doxygen is started.
+# This tag requires that the tag FULL_PATH_NAMES is set to YES.
+
+STRIP_FROM_PATH        = @XEN_BASE@
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
+# path mentioned in the documentation of a class, which tells the reader which
+# header file to include in order to use a class. If left blank only the name of
+# the header file containing the class definition is used. Otherwise one should
+# specify the list of include paths that are normally passed to the compiler
+# using the -I flag.
+
+STRIP_FROM_INC_PATH    =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
+# less readable) file names. This can be useful is your file systems doesn't
+# support long names like on DOS, Mac, or CD-ROM.
+# The default value is: NO.
+
+SHORT_NAMES            = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
+# first line (until the first dot) of a Javadoc-style comment as the brief
+# description. If set to NO, the Javadoc-style will behave just like regular Qt-
+# style comments (thus requiring an explicit @brief command for a brief
+# description.)
+# The default value is: NO.
+
+JAVADOC_AUTOBRIEF      = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
+# line (until the first dot) of a Qt-style comment as the brief description. If
+# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
+# requiring an explicit \brief command for a brief description.)
+# The default value is: NO.
+
+QT_AUTOBRIEF           = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
+# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
+# a brief description. This used to be the default behavior. The new default is
+# to treat a multi-line C++ comment block as a detailed description. Set this
+# tag to YES if you prefer the old behavior instead.
+#
+# Note that setting this tag to YES also means that rational rose comments are
+# not recognized any more.
+# The default value is: NO.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
+# documentation from any documented member that it re-implements.
+# The default value is: YES.
+
+INHERIT_DOCS           = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
+# page for each member. If set to NO, the documentation of a member will be part
+# of the file/class/namespace that contains it.
+# The default value is: NO.
+
+SEPARATE_MEMBER_PAGES  = YES
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
+# uses this value to replace tabs by spaces in code fragments.
+# Minimum value: 1, maximum value: 16, default value: 4.
+
+TAB_SIZE               = 8
+
+# This tag can be used to specify a number of aliases that act as commands in
+# the documentation. An alias has the form:
+# name=value
+# For example adding
+# "sideeffect=@par Side Effects:\n"
+# will allow you to put the command \sideeffect (or @sideeffect) in the
+# documentation, which will result in a user-defined paragraph with heading
+# "Side Effects:". You can put \n's in the value part of an alias to insert
+# newlines.
+
+ALIASES                = "rst=\verbatim embed:rst:leading-asterisk" \
+                         "endrst=\endverbatim"
+
+ALIASES += req{1}="\ref XEN_\1 \"XEN-\1\" "
+ALIASES += satisfy{1}="\xrefitem satisfy \"Satisfies requirement\" \"Requirement Implementation\" \1"
+ALIASES += verify{1}="\xrefitem verify \"Verifies requirement\" \"Requirement Verification\" \1"
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C. For
+# instance, some of the names that are used will be different. The list of all
+# members will be omitted, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_FOR_C  = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
+# Python sources only. Doxygen will then generate output that is more tailored
+# for that language. For instance, namespaces will be presented as packages,
+# qualified scopes will look different, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_JAVA   = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources. Doxygen will then generate output that is tailored for Fortran.
+# The default value is: NO.
+
+OPTIMIZE_FOR_FORTRAN   = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for VHDL.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_VHDL   = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension, and
+# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
+# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
+# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
+# Fortran. In the later case the parser tries to guess whether the code is fixed
+# or free formatted code, this is the default for Fortran type files), VHDL. For
+# instance to make doxygen treat .inc files as Fortran files (default is PHP),
+# and .f files as C (default is Fortran), use: inc=Fortran f=C.
+#
+# Note: For files without extension you can use no_extension as a placeholder.
+#
+# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
+# the files are not read by doxygen.
+
+EXTENSION_MAPPING      =
+
+# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
+# according to the Markdown format, which allows for more readable
+# documentation. See http://daringfireball.net/projects/markdown/ for details.
+# The output of markdown processing is further processed by doxygen, so you can
+# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
+# case of backward compatibilities issues.
+# The default value is: YES.
+
+MARKDOWN_SUPPORT       = YES
+
+# When enabled doxygen tries to link words that correspond to documented
+# classes, or namespaces to their corresponding documentation. Such a link can
+# be prevented in individual cases by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
+# The default value is: YES.
+
+AUTOLINK_SUPPORT       = YES
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should set this
+# tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string);
+# versus func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+# The default value is: NO.
+
+BUILTIN_STL_SUPPORT    = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+# The default value is: NO.
+
+CPP_CLI_SUPPORT        = YES
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
+# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen
+# will parse them like normal C++ but will assume all classes use public instead
+# of private inheritance when no explicit protection keyword is present.
+# The default value is: NO.
+
+SIP_SUPPORT            = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES will make
+# doxygen to replace the get and set methods by a property in the documentation.
+# This will only work if the methods are indeed getting or setting a simple
+# type. If this is not the case, or you want to show the methods anyway, you
+# should set this option to NO.
+# The default value is: YES.
+
+IDL_PROPERTY_SUPPORT   = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+# The default value is: NO.
+
+DISTRIBUTE_GROUP_DOC   = NO
+
+# Set the SUBGROUPING tag to YES to allow class member groups of the same type
+# (for instance a group of public functions) to be put as a subgroup of that
+# type (e.g. under the Public Functions section). Set it to NO to prevent
+# subgrouping. Alternatively, this can be done per class using the
+# \nosubgrouping command.
+# The default value is: YES.
+
+SUBGROUPING            = YES
+
+# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
+# are shown inside the group in which they are included (e.g. using \ingroup)
+# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
+# and RTF).
+#
+# Note that this feature does not work in combination with
+# SEPARATE_MEMBER_PAGES.
+# The default value is: NO.
+
+INLINE_GROUPED_CLASSES = NO
+
+# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
+# with only public data fields or simple typedef fields will be shown inline in
+# the documentation of the scope in which they are defined (i.e. file,
+# namespace, or group documentation), provided this scope is documented. If set
+# to NO, structs, classes, and unions are shown on a separate page (for HTML and
+# Man pages) or section (for LaTeX and RTF).
+# The default value is: NO.
+
+INLINE_SIMPLE_STRUCTS  = YES
+
+# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
+# enum is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically be
+# useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+# The default value is: NO.
+
+TYPEDEF_HIDES_STRUCT   = NO
+
+# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
+# cache is used to resolve symbols given their name and scope. Since this can be
+# an expensive process and often the same symbol appears multiple times in the
+# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
+# doxygen will become slower. If the cache is too large, memory is wasted. The
+# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
+# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
+# symbols. At the end of a run doxygen will report the cache usage and suggest
+# the optimal cache size from a speed point of view.
+# Minimum value: 0, maximum value: 9, default value: 0.
+
+LOOKUP_CACHE_SIZE      = 9
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
+# documentation are documented, even if no documentation was available. Private
+# class members and static file members will be hidden unless the
+# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
+# Note: This will also disable the warnings about undocumented members that are
+# normally produced when WARNINGS is set to YES.
+# The default value is: NO.
+
+EXTRACT_ALL            = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
+# be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIVATE        = NO
+
+# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
+# scope will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PACKAGE        = YES
+
+# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
+# included in the documentation.
+# The default value is: NO.
+
+EXTRACT_STATIC         = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
+# locally in source files will be included in the documentation. If set to NO,
+# only classes defined in header files are included. Does not have any effect
+# for Java sources.
+# The default value is: YES.
+
+EXTRACT_LOCAL_CLASSES  = YES
+
+# This flag is only useful for Objective-C code. If set to YES, local methods,
+# which are defined in the implementation section but not in the interface are
+# included in the documentation. If set to NO, only methods in the interface are
+# included.
+# The default value is: NO.
+
+EXTRACT_LOCAL_METHODS  = YES
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base name of
+# the file that contains the anonymous namespace. By default anonymous namespace
+# are hidden.
+# The default value is: NO.
+
+EXTRACT_ANON_NSPACES   = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
+# undocumented members inside documented classes or files. If set to NO these
+# members will be included in the various overviews, but no documentation
+# section is generated. This option has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_MEMBERS     = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy. If set
+# to NO, these classes will be included in the various overviews. This option
+# has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_CLASSES     = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
+# (class|struct|union) declarations. If set to NO, these declarations will be
+# included in the documentation.
+# The default value is: NO.
+
+HIDE_FRIEND_COMPOUNDS  = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
+# documentation blocks found inside the body of a function. If set to NO, these
+# blocks will be appended to the function's detailed documentation block.
+# The default value is: NO.
+
+HIDE_IN_BODY_DOCS      = NO
+
+# The INTERNAL_DOCS tag determines if documentation that is typed after a
+# \internal command is included. If the tag is set to NO then the documentation
+# will be excluded. Set it to YES to include the internal documentation.
+# The default value is: NO.
+
+INTERNAL_DOCS          = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
+# names in lower-case letters. If set to YES, upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+# The default value is: system dependent.
+
+CASE_SENSE_NAMES       = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
+# their full class and namespace scopes in the documentation. If set to YES, the
+# scope will be hidden.
+# The default value is: NO.
+
+HIDE_SCOPE_NAMES       = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
+# the files that are included by a file in the documentation of that file.
+# The default value is: YES.
+
+SHOW_INCLUDE_FILES     = YES
+
+# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
+# grouped member an include statement to the documentation, telling the reader
+# which file to include in order to use the member.
+# The default value is: NO.
+
+SHOW_GROUPED_MEMB_INC  = YES
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
+# files with double quotes in the documentation rather than with sharp brackets.
+# The default value is: NO.
+
+FORCE_LOCAL_INCLUDES   = NO
+
+# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
+# documentation for inline members.
+# The default value is: YES.
+
+INLINE_INFO            = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
+# (detailed) documentation of file and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order.
+# The default value is: YES.
+
+SORT_MEMBER_DOCS       = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
+# descriptions of file, namespace and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order. Note that
+# this will also influence the order of the classes in the class list.
+# The default value is: NO.
+
+SORT_BRIEF_DOCS        = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
+# (brief and detailed) documentation of class members so that constructors and
+# destructors are listed first. If set to NO the constructors will appear in the
+# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
+# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
+# member documentation.
+# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
+# detailed member documentation.
+# The default value is: NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
+# of group names into alphabetical order. If set to NO the group names will
+# appear in their defined order.
+# The default value is: NO.
+
+SORT_GROUP_NAMES       = YES
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
+# fully-qualified names, including namespaces. If set to NO, the class list will
+# be sorted only by class name, not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the alphabetical
+# list.
+# The default value is: NO.
+
+SORT_BY_SCOPE_NAME     = YES
+
+# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
+# type resolution of all parameters of a function it will reject a match between
+# the prototype and the implementation of a member function even if there is
+# only one candidate or it is obvious which candidate to choose by doing a
+# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
+# accept a match between prototype and implementation in such cases.
+# The default value is: NO.
+
+STRICT_PROTO_MATCHING  = YES
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
+# list. This list is created by putting \todo commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TODOLIST      = NO
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
+# list. This list is created by putting \test commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TESTLIST      = NO
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
+# list. This list is created by putting \bug commands in the documentation.
+# The default value is: YES.
+
+GENERATE_BUGLIST       = NO
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
+# the deprecated list. This list is created by putting \deprecated commands in
+# the documentation.
+# The default value is: YES.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional documentation
+# sections, marked by \if <section_label> ... \endif and \cond <section_label>
+# ... \endcond blocks.
+
+ENABLED_SECTIONS       = YES
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
+# initial value of a variable or macro / define can have for it to appear in the
+# documentation. If the initializer consists of more lines than specified here
+# it will be hidden. Use a value of 0 to hide initializers completely. The
+# appearance of the value of individual variables and macros / defines can be
+# controlled using \showinitializer or \hideinitializer command in the
+# documentation regardless of this setting.
+# Minimum value: 0, maximum value: 10000, default value: 30.
+
+MAX_INITIALIZER_LINES  = 300
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
+# the bottom of the documentation of classes and structs. If set to YES, the
+# list will mention the files that were used to generate the documentation.
+# The default value is: YES.
+
+SHOW_USED_FILES        = YES
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
+# will remove the Files entry from the Quick Index and from the Folder Tree View
+# (if specified).
+# The default value is: YES.
+
+SHOW_FILES             = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
+# page. This will remove the Namespaces entry from the Quick Index and from the
+# Folder Tree View (if specified).
+# The default value is: YES.
+
+SHOW_NAMESPACES        = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command command input-file, where command is the value of the
+# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
+# by doxygen. Whatever the program writes to standard output is used as the file
+# version. For an example see the documentation.
+
+FILE_VERSION_FILTER    =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. To create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option. You can
+# optionally specify a file name after the option, if omitted DoxygenLayout.xml
+# will be used as the name of the layout file.
+#
+# Note that if you run doxygen from a directory containing a file called
+# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
+# tag is left empty.
+
+LAYOUT_FILE            =
+
+# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
+# the reference definitions. This must be a list of .bib files. The .bib
+# extension is automatically appended if omitted. This requires the bibtex tool
+# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
+# For LaTeX the style of the bibliography can be controlled using
+# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
+# search path. See also \cite for info how to create references.
+
+CITE_BIB_FILES         =
+
+#---------------------------------------------------------------------------
+# Configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated to
+# standard output by doxygen. If QUIET is set to YES this implies that the
+# messages are off.
+# The default value is: NO.
+
+QUIET                  = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
+# this implies that the warnings are on.
+#
+# Tip: Turn warnings on while writing the documentation.
+# The default value is: YES.
+
+WARNINGS               = YES
+
+# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
+# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
+# will automatically be disabled.
+# The default value is: YES.
+
+WARN_IF_UNDOCUMENTED   = YES
+
+# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some parameters
+# in a documented function, or documenting parameters that don't exist or using
+# markup commands wrongly.
+# The default value is: YES.
+
+WARN_IF_DOC_ERROR      = YES
+
+# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
+# are documented, but have no documentation for their parameters or return
+# value. If set to NO, doxygen will only warn about wrong or incomplete
+# parameter documentation, but not about the absence of documentation.
+# The default value is: NO.
+
+WARN_NO_PARAMDOC       = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that doxygen
+# can produce. The string should contain the $file, $line, and $text tags, which
+# will be replaced by the file and line number from which the warning originated
+# and the warning text. Optionally the format may contain $version, which will
+# be replaced by the version of the file (if it could be obtained via
+# FILE_VERSION_FILTER)
+# The default value is: $file:$line: $text.
+
+WARN_FORMAT            = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning and error
+# messages should be written. If left blank the output is written to standard
+# error (stderr).
+
+WARN_LOGFILE           =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag is used to specify the files and/or directories that contain
+# documented source files. You may enter file names like myfile.cpp or
+# directories like /usr/src/myproject. Separate the files or directories with
+# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
+# Note: If this tag is empty the current directory is searched.
+
+INPUT                  = "@XEN_BASE@/docs/xen-doxygen/mainpage.md" \
+                         "@XEN_BASE@/docs/doxygen_input.h"
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
+# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
+# documentation (see: https://www.gnu.org/software/libiconv/) for the list of
+# possible encodings.
+# The default value is: UTF-8.
+
+INPUT_ENCODING         = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
+# *.h) to filter out the source-files in the directories.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# read by doxygen.
+#
+# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
+# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
+# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
+# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08,
+# *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf and *.qsf.
+
+# This MUST be kept in sync with DOXY_SOURCES in doc/CMakeLists.txt
+# for incremental (and faster) builds to work correctly.
+FILE_PATTERNS          = "*.c" \
+                         "*.h" \
+                         "*.S" \
+                         "*.md"
+
+# The RECURSIVE tag can be used to specify whether or not subdirectories should
+# be searched for input files as well.
+# The default value is: NO.
+
+RECURSIVE              = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should be
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+#
+# Note that relative paths are relative to the directory from which doxygen is
+# run.
+
+EXCLUDE                = @XEN_BASE@/include/nothing.h
+
+# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+# directories that are symbolic links (a Unix file system feature) are excluded
+# from the input.
+# The default value is: NO.
+
+EXCLUDE_SYMLINKS       = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories for example use the pattern */test/*
+
+EXCLUDE_PATTERNS       =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories use the pattern */test/*
+
+# Hide internal names (starting with an underscore, and doxygen-generated names
+# for nested unnamed unions that don't generate meaningful sphinx output anyway.
+EXCLUDE_SYMBOLS        =
+# _*  *.__unnamed__ z_* Z_*
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or directories
+# that contain example code fragments that are included (see the \include
+# command).
+
+EXAMPLE_PATH           =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
+# *.h) to filter out the source-files in the directories. If left blank all
+# files are included.
+
+EXAMPLE_PATTERNS       =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude commands
+# irrespective of the value of the RECURSIVE tag.
+# The default value is: NO.
+
+EXAMPLE_RECURSIVE      = YES
+
+# The IMAGE_PATH tag can be used to specify one or more files or directories
+# that contain images that are to be included in the documentation (see the
+# \image command).
+
+IMAGE_PATH             =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command:
+#
+# <filter> <input-file>
+#
+# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
+# name of an input file. Doxygen will then use the output that the filter
+# program writes to standard output. If FILTER_PATTERNS is specified, this tag
+# will be ignored.
+#
+# Note that the filter must not add or remove lines; it is applied before the
+# code is scanned, but not when the output code is generated. If lines are added
+# or removed, the anchors will not be placed correctly.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+INPUT_FILTER           =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form: pattern=filter
+# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
+# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
+# patterns match the file name, INPUT_FILTER is applied.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+FILTER_PATTERNS        =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will also be used to filter the input files that are used for
+# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
+# The default value is: NO.
+
+FILTER_SOURCE_FILES    = NO
+
+# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
+# it is also possible to disable source filtering for a specific pattern using
+# *.ext= (so without naming a filter).
+# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
+
+FILTER_SOURCE_PATTERNS =
+
+# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+# is part of the input, its contents will be placed on the main page
+# (index.html). This can be useful if you have a project on for instance GitHub
+# and want to reuse the introduction page also for the doxygen output.
+
+USE_MDFILE_AS_MAINPAGE = "mainpage.md"
+
+#---------------------------------------------------------------------------
+# Configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
+# generated. Documented entities will be cross-referenced with these sources.
+#
+# Note: To get rid of all source code in the generated output, make sure that
+# also VERBATIM_HEADERS is set to NO.
+# The default value is: NO.
+
+SOURCE_BROWSER         = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body of functions,
+# classes and enums directly into the documentation.
+# The default value is: NO.
+
+INLINE_SOURCES         = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
+# special comment blocks from generated source code fragments. Normal C, C++ and
+# Fortran comments will always remain visible.
+# The default value is: YES.
+
+STRIP_CODE_COMMENTS    = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
+# function all documented functions referencing it will be listed.
+# The default value is: NO.
+
+REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES then for each documented function
+# all documented entities called/used by that function will be listed.
+# The default value is: NO.
+
+REFERENCES_RELATION    = NO
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
+# to YES then the hyperlinks from functions in REFERENCES_RELATION and
+# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
+# link to the documentation.
+# The default value is: YES.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
+# source code will show a tooltip with additional information such as prototype,
+# brief description and links to the definition and documentation. Since this
+# will make the HTML file larger and loading of large files a bit slower, you
+# can opt to disable this feature.
+# The default value is: YES.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+SOURCE_TOOLTIPS        = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code will
+# point to the HTML generated by the htags(1) tool instead of doxygen built-in
+# source browser. The htags tool is part of GNU's global source tagging system
+# (see https://www.gnu.org/software/global/global.html). You will need version
+# 4.8.6 or higher.
+#
+# To use it do the following:
+# - Install the latest version of global
+# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
+# - Make sure the INPUT points to the root of the source tree
+# - Run doxygen as normal
+#
+# Doxygen will invoke htags (and that will in turn invoke gtags), so these
+# tools must be available from the command line (i.e. in the search path).
+#
+# The result: instead of the source browser generated by doxygen, the links to
+# source code will now point to the output of htags.
+# The default value is: NO.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+USE_HTAGS              = NO
+
+# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
+# verbatim copy of the header file for each class for which an include is
+# specified. Set to NO to disable this.
+# See also: Section \class.
+# The default value is: YES.
+
+VERBATIM_HEADERS       = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
+# compounds will be generated. Enable this if the project contains a lot of
+# classes, structs, unions or interfaces.
+# The default value is: YES.
+
+ALPHABETICAL_INDEX     = YES
+
+# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
+# which the alphabetical index list will be split.
+# Minimum value: 1, maximum value: 20, default value: 5.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+COLS_IN_ALPHA_INDEX    = 2
+
+# In case all classes in a project start with a common prefix, all classes will
+# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
+# can be used to specify a prefix (or a list of prefixes) that should be ignored
+# while generating the index headers.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+IGNORE_PREFIX          =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
+# The default value is: YES.
+
+GENERATE_HTML          = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_OUTPUT            = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
+# generated HTML page (for example: .htm, .php, .asp).
+# The default value is: .html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FILE_EXTENSION    = .html
+
+# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
+# each generated HTML page. If the tag is left blank doxygen will generate a
+# standard header.
+#
+# To get valid HTML the header file that includes any scripts and style sheets
+# that doxygen needs, which is dependent on the configuration options used (e.g.
+# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
+# default header using
+# doxygen -w html new_header.html new_footer.html new_stylesheet.css
+# YourConfigFile
+# and then modify the file new_header.html. See also section "Doxygen usage"
+# for information on how to generate the default header that doxygen normally
+# uses.
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. For a description
+# of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_HEADER            = xen-doxygen/header.html
+
+# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+# generated HTML page. If the tag is left blank doxygen will generate a standard
+# footer. See HTML_HEADER for more information on how to generate a default
+# footer and what special commands can be used inside the footer. See also
+# section "Doxygen usage" for information on how to generate the default footer
+# that doxygen normally uses.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FOOTER            =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
+# sheet that is used by each HTML page. It can be used to fine-tune the look of
+# the HTML output. If left blank doxygen will generate a default style sheet.
+# See also section "Doxygen usage" for information on how to generate the style
+# sheet that doxygen normally uses.
+# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
+# it is more robust and this tag (HTML_STYLESHEET) will in the future become
+# obsolete.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_STYLESHEET        =
+
+# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# cascading style sheets that are included after the standard style sheets
+# created by doxygen. Using this option one can overrule certain style aspects.
+# This is preferred over using HTML_STYLESHEET since it does not replace the
+# standard style sheet and is therefore more robust against future updates.
+# Doxygen will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list). For an example see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_STYLESHEET  = xen-doxygen/customdoxygen.css
+
+# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the HTML output directory. Note
+# that these files will be copied to the base HTML output directory. Use the
+# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
+# files will be copied as-is; there are no commands or markers available.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_FILES       =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
+# will adjust the colors in the style sheet and background images according to
+# this color. Hue is specified as an angle on a colorwheel, see
+# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
+# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
+# purple, and 360 is red again.
+# Minimum value: 0, maximum value: 359, default value: 220.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_HUE    =
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
+# in the HTML output. For a value of 0 the output will use grayscales only. A
+# value of 255 will produce the most vivid colors.
+# Minimum value: 0, maximum value: 255, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_SAT    =
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
+# luminance component of the colors in the HTML output. Values below 100
+# gradually make the output lighter, whereas values above 100 make the output
+# darker. The value divided by 100 is the actual gamma applied, so 80 represents
+# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
+# change the gamma.
+# Minimum value: 40, maximum value: 240, default value: 80.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_GAMMA  =
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting this
+# to YES can help to show when doxygen was last run and thus if the
+# documentation is up to date.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_TIMESTAMP         = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_SECTIONS  = YES
+
+# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
+# shown in the various tree structured indices initially; the user can expand
+# and collapse entries dynamically later on. Doxygen will expand the tree to
+# such a level that at most the specified number of entries are visible (unless
+# a fully collapsed tree already exceeds this amount). So setting the number of
+# entries 1 will produce a full collapsed tree by default. 0 is a special value
+# representing an infinite number of entries and will result in a full expanded
+# tree by default.
+# Minimum value: 0, maximum value: 9999, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_INDEX_NUM_ENTRIES = 100
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files will be
+# generated that can be used as input for Apple's Xcode 3 integrated development
+# environment (see: https://developer.apple.com/tools/xcode/), introduced with
+# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
+# Makefile in the HTML output directory. Running make will produce the docset in
+# that directory and running make install will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
+# startup. See https://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+# for more information.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_DOCSET        = YES
+
+# This tag determines the name of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# The default value is: Doxygen generated docs.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDNAME        = "Doxygen generated docs"
+
+# This tag specifies a string that should uniquely identify the documentation
+# set bundle. This should be a reverse domain-name style string, e.g.
+# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+
+# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+# The default value is: org.doxygen.Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
+
+# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+# The default value is: Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_NAME  = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
+# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
+# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
+# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
+# Windows.
+#
+# The HTML Help Workshop contains a compiler that can convert all HTML output
+# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
+# files are now used as the Windows 98 help format, and will replace the old
+# Windows help format (.hlp) on all Windows platforms in the future. Compressed
+# HTML files also contain an index, a table of contents, and you can search for
+# words in the documentation. The HTML workshop also contains a viewer for
+# compressed HTML files.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_HTMLHELP      = NO
+
+# The CHM_FILE tag can be used to specify the file name of the resulting .chm
+# file. You can add a path in front of the file if the result should not be
+# written to the html output directory.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_FILE               = NO
+
+# The HHC_LOCATION tag can be used to specify the location (absolute path
+# including file name) of the HTML help compiler (hhc.exe). If non-empty,
+# doxygen will try to run the HTML help compiler on the generated index.hhp.
+# The file has to be specified with full path.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+HHC_LOCATION           =
+
+# The GENERATE_CHI flag controls if a separate .chi index file is generated
+# (YES) or that it should be included in the master .chm file (NO).
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+GENERATE_CHI           = NO
+
+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
+# and project file content.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_INDEX_ENCODING     =
+
+# The BINARY_TOC flag controls whether a binary table of contents is generated
+# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
+# enables the Previous and Next buttons.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+BINARY_TOC             = YES
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members to
+# the table of contents of the HTML help documentation and to the tree view.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+TOC_EXPAND             = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
+# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
+# (.qch) of the generated HTML documentation.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_QHP           = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
+# the file name of the resulting .qch file. The path specified is relative to
+# the HTML output folder.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QCH_FILE               =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
+# Project output. For more information please see Qt Help Project / Namespace
+# (see: http://doc.qt.io/qt-4.8/qthelpproject.html#namespace).
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_NAMESPACE          = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
+# Help Project output. For more information please see Qt Help Project / Virtual
+# Folders (see: http://doc.qt.io/qt-4.8/qthelpproject.html#virtual-folders).
+# The default value is: doc.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_VIRTUAL_FOLDER     = doc
+
+# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
+# filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_NAME   =
+
+# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_ATTRS  =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's filter section matches. Qt Help Project / Filter Attributes (see:
+# http://doc.qt.io/qt-4.8/qthelpproject.html#filter-attributes).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_SECT_FILTER_ATTRS  =
+
+# The QHG_LOCATION tag can be used to specify the location of Qt's
+# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
+# generated .qhp file.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHG_LOCATION           =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
+# generated, together with the HTML files, they form an Eclipse help plugin. To
+# install this plugin and make it available under the help contents menu in
+# Eclipse, the contents of the directory containing the HTML and XML files needs
+# to be copied into the plugins directory of eclipse. The name of the directory
+# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
+# After copying Eclipse needs to be restarted before the help appears.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_ECLIPSEHELP   = NO
+
+# A unique identifier for the Eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have this
+# name. Each documentation set should have its own identifier.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
+
+ECLIPSE_DOC_ID         = org.doxygen.Project
+
+# If you want full control over the layout of the generated HTML pages it might
+# be necessary to disable the index and replace it with your own. The
+# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
+# of each HTML page. A value of NO enables the index and the value YES disables
+# it. Since the tabs in the index contain the same information as the navigation
+# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+DISABLE_INDEX          = NO
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information. If the tag
+# value is set to YES, a side panel will be generated containing a tree-like
+# index structure (just like the one that is generated for HTML Help). For this
+# to work a browser that supports JavaScript, DHTML, CSS and frames is required
+# (i.e. any modern browser). Windows users are probably better off using the
+# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
+# further fine-tune the look of the index. As an example, the default style
+# sheet generated by doxygen has an example that shows how to put an image at
+# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
+# the same information as the tab index, you could consider setting
+# DISABLE_INDEX to YES when enabling this option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_TREEVIEW      = YES
+
+# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
+# doxygen will group on one line in the generated HTML documentation.
+#
+# Note that a value of 0 will completely suppress the enum values from appearing
+# in the overview section.
+# Minimum value: 0, maximum value: 20, default value: 4.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+ENUM_VALUES_PER_LINE   = 4
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
+# to set the initial width (in pixels) of the frame in which the tree is shown.
+# Minimum value: 0, maximum value: 1500, default value: 250.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+TREEVIEW_WIDTH         = 250
+
+# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
+# external symbols imported via tag files in a separate window.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+EXT_LINKS_IN_WINDOW    = NO
+
+# Use this tag to change the font size of LaTeX formulas included as images in
+# the HTML documentation. When you change the font size after a successful
+# doxygen run you need to manually remove any form_*.png images from the HTML
+# output directory to force them to be regenerated.
+# Minimum value: 8, maximum value: 50, default value: 10.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_FONTSIZE       = 10
+
+# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are not
+# supported properly for IE 6.0, but are supported on all modern browsers.
+#
+# Note that when changing this option you need to delete any form_*.png files in
+# the HTML output directory before the changes have effect.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_TRANSPARENT    = YES
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# https://www.mathjax.org) which uses client side Javascript for the rendering
+# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX            = NO
+
+# When MathJax is enabled you can set the default output format to be used for
+# the MathJax output. See the MathJax site (see:
+# http://docs.mathjax.org/en/latest/output.html) for more details.
+# Possible values are: HTML-CSS (which is slower, but has the best
+# compatibility), NativeMML (i.e. MathML) and SVG.
+# The default value is: HTML-CSS.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_FORMAT         = HTML-CSS
+
+# When MathJax is enabled you need to specify the location relative to the HTML
+# output directory using the MATHJAX_RELPATH option. The destination directory
+# should contain the MathJax.js script. For instance, if the mathjax directory
+# is located at the same level as the HTML output directory, then
+# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
+# Content Delivery Network so you can quickly see the result without installing
+# MathJax. However, it is strongly recommended to install a local copy of
+# MathJax from https://www.mathjax.org before deployment.
+# The default value is: http://cdn.mathjax.org/mathjax/latest.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_RELPATH        = http://cdn.mathjax.org/mathjax/latest
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+# extension names that should be enabled during MathJax rendering. For example
+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_EXTENSIONS     =
+
+# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
+# of code that will be used on startup of the MathJax code. See the MathJax site
+# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
+# example see the documentation.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_CODEFILE       =
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
+# the HTML output. The underlying search engine uses javascript and DHTML and
+# should work on any modern browser. Note that when using HTML help
+# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
+# there is already a search function so this one should typically be disabled.
+# For large projects the javascript based search engine can be slow, then
+# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
+# search using the keyboard; to jump to the search box use <access key> + S
+# (what the <access key> is depends on the OS and browser, but it is typically
+# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
+# key> to jump into the search results window, the results can be navigated
+# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
+# the search. The filter options can be selected when the cursor is inside the
+# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
+# to select a filter and <Enter> or <escape> to activate or cancel the filter
+# option.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+SEARCHENGINE           = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a web server instead of a web client using Javascript. There
+# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
+# setting. When disabled, doxygen will generate a PHP script for searching and
+# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
+# and searching needs to be provided by external tools. See the section
+# "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SERVER_BASED_SEARCH    = NO
+
+# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+# script for searching. Instead the search results are written to an XML file
+# which needs to be processed by an external indexer. Doxygen will invoke an
+# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
+# search results.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: https://xapian.org/).
+#
+# See the section "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH        = NO
+
+# The SEARCHENGINE_URL should point to a search engine hosted by a web server
+# which will return the search results when EXTERNAL_SEARCH is enabled.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: https://xapian.org/). See the section "External Indexing and
+# Searching" for details.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHENGINE_URL       =
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+# search data is written to a file for indexing by an external tool. With the
+# SEARCHDATA_FILE tag the name of this file can be specified.
+# The default file is: searchdata.xml.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHDATA_FILE        = searchdata.xml
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
+# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
+# projects and redirect the results back to the right project.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH_ID     =
+
+# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+# projects other than the one defined by this configuration file, but that are
+# all added to the same external search index. Each project needs to have a
+# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
+# to a relative location where the documentation can be found. The format is:
+# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTRA_SEARCH_MAPPINGS  =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
+# The default value is: YES.
+
+GENERATE_LATEX         = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_OUTPUT           = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked.
+#
+# Note that when enabling USE_PDFLATEX this option is only used for generating
+# bitmaps for formulas in the HTML output, but not in the Makefile that is
+# written to the output directory.
+# The default file is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_CMD_NAME         = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+# index for LaTeX.
+# The default file is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+MAKEINDEX_CMD_NAME     = makeindex
+
+# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+COMPACT_LATEX          = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used by the
+# printer.
+# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
+# 14 inches) and executive (7.25 x 10.5 inches).
+# The default value is: a4.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PAPER_TYPE             = a4
+
+# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
+# that should be included in the LaTeX output. The package can be specified just
+# by its name or with the correct syntax as to be used with the LaTeX
+# \usepackage command. To get the times font for instance you can specify :
+# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}
+# To use the option intlimits with the amsmath package you can specify:
+# EXTRA_PACKAGES=[intlimits]{amsmath}
+# If left blank no extra packages will be included.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+EXTRA_PACKAGES         =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
+# generated LaTeX document. The header should contain everything until the first
+# chapter. If it is left blank doxygen will generate a standard header. See
+# section "Doxygen usage" for information on how to let doxygen write the
+# default header to a separate file.
+#
+# Note: Only use a user-defined header if you know what you are doing! The
+# following commands have a special meaning inside the header: $title,
+# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
+# $projectbrief, $projectlogo. Doxygen will replace $title with the empty
+# string, for the replacement values of the other commands the user is referred
+# to HTML_HEADER.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HEADER           =
+
+# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
+# generated LaTeX document. The footer should contain everything after the last
+# chapter. If it is left blank doxygen will generate a standard footer. See
+# LATEX_HEADER for more information on how to generate a default footer and what
+# special commands can be used inside the footer.
+#
+# Note: Only use a user-defined footer if you know what you are doing!
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_FOOTER           =
+
+# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the LATEX_OUTPUT output
+# directory. Note that the files will be copied as-is; there are no commands or
+# markers available.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_FILES      =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
+# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
+# contain links (just like the HTML output) instead of page references. This
+# makes the output suitable for online browsing using a PDF viewer.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PDF_HYPERLINKS         = YES
+
+# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
+# the PDF file directly from the LaTeX files. Set this option to YES, to get a
+# higher quality PDF documentation.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+USE_PDFLATEX           = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
+# command to the generated LaTeX files. This will instruct LaTeX to keep running
+# if errors occur, instead of asking the user for help. This option is also used
+# when generating formulas in HTML.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BATCHMODE        = NO
+
+# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
+# index chapters (such as File Index, Compound Index, etc.) in the output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HIDE_INDICES     = NO
+
+# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
+# code with syntax highlighting in the LaTeX output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_SOURCE_CODE      = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. See
+# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+# The default value is: plain.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BIB_STYLE        = plain
+
+#---------------------------------------------------------------------------
+# Configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
+# RTF output is optimized for Word 97 and may not look too pretty with other RTF
+# readers/editors.
+# The default value is: NO.
+
+GENERATE_RTF           = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: rtf.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_OUTPUT             = rtf
+
+# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+COMPACT_RTF            = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
+# contain hyperlink fields. The RTF file will contain links (just like the HTML
+# output) instead of page references. This makes the output suitable for online
+# browsing using Word or some other Word compatible readers that support those
+# fields.
+#
+# Note: WordPad (write) and others do not support links.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_HYPERLINKS         = YES
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's config
+# file, i.e. a series of assignments. You only have to provide replacements,
+# missing definitions are set to their default value.
+#
+# See also section "Doxygen usage" for information on how to generate the
+# default style sheet that doxygen normally uses.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_STYLESHEET_FILE    =
+
+# Set optional variables used in the generation of an RTF document. Syntax is
+# similar to doxygen's config file. A template extensions file can be generated
+# using doxygen -e rtf extensionFile.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_EXTENSIONS_FILE    =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
+# classes and files.
+# The default value is: NO.
+
+GENERATE_MAN           = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it. A directory man3 will be created inside the directory specified by
+# MAN_OUTPUT.
+# The default directory is: man.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_OUTPUT             = man
+
+# The MAN_EXTENSION tag determines the extension that is added to the generated
+# man pages. In case the manual section does not start with a number, the number
+# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
+# optional.
+# The default value is: .3.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_EXTENSION          = .3
+
+# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
+# will generate one additional man file for each entity documented in the real
+# man page(s). These additional files only source the real man page, but without
+# them the man command would be unable to find the correct page.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_LINKS              = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
+# captures the structure of the code including all documentation.
+# The default value is: NO.
+
+GENERATE_XML           = YES
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: xml.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_OUTPUT             = xml
+
+# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
+# listings (including syntax highlighting and cross-referencing information) to
+# the XML output. Note that enabling this will significantly increase the size
+# of the XML output.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_PROGRAMLISTING     = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the DOCBOOK output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
+# that can be used to generate PDF.
+# The default value is: NO.
+
+GENERATE_DOCBOOK       = NO
+
+# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
+# front of it.
+# The default directory is: docbook.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_OUTPUT         = docbook
+
+#---------------------------------------------------------------------------
+# Configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
+# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
+# the structure of the code including all documentation. Note that this feature
+# is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_AUTOGEN_DEF   = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
+# file that captures the structure of the code including all documentation.
+#
+# Note that this feature is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_PERLMOD       = NO
+
+# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
+# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
+# output from the Perl module output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_LATEX          = NO
+
+# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
+# formatted so it can be parsed by a human reader. This is useful if you want to
+# understand what is going on. On the other hand, if this tag is set to NO, the
+# size of the Perl module output will be much smaller and Perl will parse it
+# just the same.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_PRETTY         = YES
+
+# The names of the make variables in the generated doxyrules.make file are
+# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
+# so different doxyrules.make files included by the same Makefile don't
+# overwrite each other's variables.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
+# C-preprocessor directives found in the sources and include files.
+# The default value is: YES.
+
+ENABLE_PREPROCESSING   = YES
+
+# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
+# in the source code. If set to NO, only conditional compilation will be
+# performed. Macro expansion can be done in a controlled way by setting
+# EXPAND_ONLY_PREDEF to YES.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+MACRO_EXPANSION        = YES
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
+# the macro expansion is limited to the macros specified with the PREDEFINED and
+# EXPAND_AS_DEFINED tags.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_ONLY_PREDEF     = NO
+
+# If the SEARCH_INCLUDES tag is set to YES, the include files in the
+# INCLUDE_PATH will be searched if a #include is found.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SEARCH_INCLUDES        = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by the
+# preprocessor.
+# This tag requires that the tag SEARCH_INCLUDES is set to YES.
+
+INCLUDE_PATH           = "@XEN_BASE@/xen/include/generated" \
+                         "@XEN_BASE@/xen/include/"
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will be
+# used.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+INCLUDE_FILE_PATTERNS  =
+
+# The PREDEFINED tag can be used to specify one or more macro names that are
+# defined before the preprocessor is started (similar to the -D option of e.g.
+# gcc). The argument of the tag is a list of macros of the form: name or
+# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
+# is assumed. To prevent a macro definition from being undefined via #undef or
+# recursively expanded use the := operator instead of the = operator.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+PREDEFINED             = __attribute__(x)= \
+                         DOXYGEN
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
+# tag can be used to specify a list of macro names that should be expanded. The
+# macro definition that is found in the sources will be used. Use the PREDEFINED
+# tag if you want to use a different macro definition that overrules the
+# definition found in the source code.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_AS_DEFINED      =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
+# remove all references to function-like macros that are alone on a line, have
+# an all uppercase name, and do not end with a semicolon. Such function macros
+# are typically used for boiler-plate code, and will confuse the parser if not
+# removed.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SKIP_FUNCTION_MACROS   = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tag files. For each tag
+# file the location of the external documentation should be added. The format of
+# a tag file without this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where loc1 and loc2 can be relative or absolute paths or URLs. See the
+# section "Linking to external documentation" for more information about the use
+# of tag files.
+# Note: Each tag file must have a unique name (where the name does NOT include
+# the path). If a tag file is not located in the directory in which doxygen is
+# run, you must also specify the path to the tagfile here.
+
+TAGFILES               =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
+# tag file that is based on the input files it reads. See section "Linking to
+# external documentation" for more information about the usage of tag files.
+
+GENERATE_TAGFILE       =
+
+# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
+# the class index. If set to NO, only the inherited external classes will be
+# listed.
+# The default value is: NO.
+
+ALLEXTERNALS           = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will be
+# listed.
+# The default value is: YES.
+
+EXTERNAL_GROUPS        = YES
+
+# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
+# the related pages index. If set to NO, only the current project's pages will
+# be listed.
+# The default value is: YES.
+
+EXTERNAL_PAGES         = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram
+# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
+# NO turns the diagrams off. Note that this option also works with HAVE_DOT
+# disabled, but it is recommended to install and use dot, since it yields more
+# powerful graphs.
+# The default value is: YES.
+
+CLASS_DIAGRAMS         = NO
+
+# You can include diagrams made with dia in doxygen documentation. Doxygen will
+# then run dia to produce the diagram and insert it in the documentation. The
+# DIA_PATH tag allows you to specify the directory where the dia binary resides.
+# If left empty dia is assumed to be found in the default search path.
+
+DIA_PATH               =
+
+# If set to YES the inheritance and collaboration graphs will hide inheritance
+# and usage relations if the target is undocumented or is not a class.
+# The default value is: YES.
+
+HIDE_UNDOC_RELATIONS   = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz (see:
+# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
+# Bell Labs. The other options in this section have no effect if this option is
+# set to NO
+# The default value is: NO.
+
+HAVE_DOT               = NO
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
+# to run in parallel. When set to 0 doxygen will base this on the number of
+# processors available in the system. You can set it explicitly to a value
+# larger than 0 to get control over the balance between CPU load and processing
+# speed.
+# Minimum value: 0, maximum value: 32, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_NUM_THREADS        = 0
+
+# When you want a differently looking font in the dot files that doxygen
+# generates you can specify the font name using DOT_FONTNAME. You need to make
+# sure dot is able to find the font, which can be done by putting it in a
+# standard location or by setting the DOTFONTPATH environment variable or by
+# setting DOT_FONTPATH to the directory containing the font.
+# The default value is: Helvetica.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTNAME           = Helvetica
+
+# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
+# dot graphs.
+# Minimum value: 4, maximum value: 24, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTSIZE           = 10
+
+# By default doxygen will tell dot to use the default font as specified with
+# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
+# the path where dot can find it using this tag.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTPATH           =
+
+# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
+# each documented class showing the direct and indirect inheritance relations.
+# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CLASS_GRAPH            = YES
+
+# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
+# graph for each documented class showing the direct and indirect implementation
+# dependencies (inheritance, containment, and class references variables) of the
+# class with other documented classes.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+COLLABORATION_GRAPH    = YES
+
+# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
+# groups, showing the direct groups dependencies.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GROUP_GRAPHS           = YES
+
+# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LOOK               = NO
+
+# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
+# class node. If there are many fields or methods and many nodes the graph may
+# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
+# number of items for each type to make the size more manageable. Set this to 0
+# for no limit. Note that the threshold may be exceeded by 50% before the limit
+# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
+# but if the number exceeds 15, the total amount of fields shown is limited to
+# 10.
+# Minimum value: 0, maximum value: 100, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LIMIT_NUM_FIELDS   = 10
+
+# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
+# collaboration graphs will show the relations between templates and their
+# instances.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+TEMPLATE_RELATIONS     = NO
+
+# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
+# YES then doxygen will generate a graph for each documented file showing the
+# direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDE_GRAPH          = YES
+
+# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
+# set to YES then doxygen will generate a graph for each documented file showing
+# the direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDED_BY_GRAPH      = YES
+
+# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command. Disabling a call graph can be
+# accomplished by means of the command \hidecallgraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALL_GRAPH             = NO
+
+# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable caller graphs for selected
+# functions only using the \callergraph command. Disabling a caller graph can be
+# accomplished by means of the command \hidecallergraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALLER_GRAPH           = NO
+
+# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
+# hierarchy of all classes instead of a textual one.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GRAPHICAL_HIERARCHY    = YES
+
+# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
+# dependencies a directory has on other directories in a graphical way. The
+# dependency relations are determined by the #include relations between the
+# files in the directories.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DIRECTORY_GRAPH        = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. For an explanation of the image formats see the section
+# output formats in the documentation of the dot tool (Graphviz (see:
+# http://www.graphviz.org/)).
+# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
+# to make the SVG files visible in IE 9+ (other browsers do not have this
+# requirement).
+# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,
+# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
+# png:gdiplus:gdiplus.
+# The default value is: png.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_IMAGE_FORMAT       = png
+
+# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+# enable generation of interactive SVG images that allow zooming and panning.
+#
+# Note that this requires a modern browser other than Internet Explorer. Tested
+# and working are Firefox, Chrome, Safari, and Opera.
+# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
+# the SVG files visible. Older versions of IE do not have SVG support.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INTERACTIVE_SVG        = NO
+
+# The DOT_PATH tag can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_PATH               =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the \dotfile
+# command).
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOTFILE_DIRS           =
+
+# The MSCFILE_DIRS tag can be used to specify one or more directories that
+# contain msc files that are included in the documentation (see the \mscfile
+# command).
+
+MSCFILE_DIRS           =
+
+# The DIAFILE_DIRS tag can be used to specify one or more directories that
+# contain dia files that are included in the documentation (see the \diafile
+# command).
+
+DIAFILE_DIRS           =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
+# that will be shown in the graph. If the number of nodes in a graph becomes
+# larger than this value, doxygen will truncate the graph, which is visualized
+# by representing a node as a red box. Note that doxygen if the number of direct
+# children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
+# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+# Minimum value: 0, maximum value: 10000, default value: 50.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_GRAPH_MAX_NODES    = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
+# generated by dot. A depth value of 3 means that only nodes reachable from the
+# root by following a path via at most 3 edges will be shown. Nodes that lay
+# further from the root node will be omitted. Note that setting this option to 1
+# or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+# Minimum value: 0, maximum value: 1000, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+MAX_DOT_GRAPH_DEPTH    = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not seem
+# to support this out of the box.
+#
+# Warning: Depending on the platform used, enabling this option may lead to
+# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+# read).
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_TRANSPARENT        = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10) support
+# this, this feature is disabled by default.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_MULTI_TARGETS      = NO
+
+# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
+# explaining the meaning of the various boxes and arrows in the dot generated
+# graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GENERATE_LEGEND        = YES
+
+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
+# files that are used to generate the various graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_CLEANUP            = YES
diff --git a/m4/ax_python_module.m4 b/m4/ax_python_module.m4
new file mode 100644
index 0000000000..107d88264a
--- /dev/null
+++ b/m4/ax_python_module.m4
@@ -0,0 +1,56 @@
+# ===========================================================================
+#     https://www.gnu.org/software/autoconf-archive/ax_python_module.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_PYTHON_MODULE(modname[, fatal, python])
+#
+# DESCRIPTION
+#
+#   Checks for Python module.
+#
+#   If fatal is non-empty then absence of a module will trigger an error.
+#   The third parameter can either be "python" for Python 2 or "python3" for
+#   Python 3; defaults to Python 3.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Andrew Collier
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved. This file is offered as-is, without any
+#   warranty.
+
+#serial 9
+
+AU_ALIAS([AC_PYTHON_MODULE], [AX_PYTHON_MODULE])
+AC_DEFUN([AX_PYTHON_MODULE],[
+    if test -z $PYTHON;
+    then
+        if test -z "$3";
+        then
+            PYTHON="python3"
+        else
+            PYTHON="$3"
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    AC_MSG_CHECKING($PYTHON_NAME module: $1)
+    $PYTHON -c "import $1" 2>/dev/null
+    if test $? -eq 0;
+    then
+        AC_MSG_RESULT(yes)
+        eval AS_TR_CPP(HAVE_PYMOD_$1)=yes
+    else
+        AC_MSG_RESULT(no)
+        eval AS_TR_CPP(HAVE_PYMOD_$1)=no
+        #
+        if test -n "$2"
+        then
+            AC_MSG_ERROR(failed to find required module $1)
+            exit 1
+        fi
+    fi
+])
\ No newline at end of file
diff --git a/m4/docs_tool.m4 b/m4/docs_tool.m4
index 3e8814ac8d..39aa348026 100644
--- a/m4/docs_tool.m4
+++ b/m4/docs_tool.m4
@@ -15,3 +15,12 @@ dnl
         AC_MSG_WARN([$2 is not available so some documentation won't be built])
     ])
 ])
+
+AC_DEFUN([AX_DOCS_TOOL_REQ_PROG], [
+dnl
+    AC_ARG_VAR([$1], [Path to $2 tool])
+    AC_PATH_PROG([$1], [$2])
+    AS_IF([! test -x "$ac_cv_path_$1"], [
+        AC_MSG_ERROR([$2 is needed])
+    ])
+])
\ No newline at end of file
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 10:37:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 10:37:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105770.202307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTj54-00012s-Ug; Tue, 06 Apr 2021 10:37:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105770.202307; Tue, 06 Apr 2021 10:37:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTj54-00012j-RZ; Tue, 06 Apr 2021 10:37:10 +0000
Received: by outflank-mailman (input) for mailman id 105770;
 Tue, 06 Apr 2021 10:37:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xZnD=JD=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lTj53-0000yp-D5
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 10:37:09 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id f83f6325-47c0-461d-9c28-eef4abc65980;
 Tue, 06 Apr 2021 10:37:07 +0000 (UTC)
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 10F38101E;
 Tue,  6 Apr 2021 03:37:07 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B3E9C3F73D;
 Tue,  6 Apr 2021 03:37: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: f83f6325-47c0-461d-9c28-eef4abc65980
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH 2/3] docs: hypercalls sphinx skeleton for generated html
Date: Tue,  6 Apr 2021 11:36:02 +0100
Message-Id: <20210406103603.8530-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210406103603.8530-1-luca.fancellu@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>

Create a skeleton for the documentation about hypercalls

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 .gitignore                             |  1 +
 docs/Makefile                          |  4 ++++
 docs/hypercall-interfaces/arm32.rst    |  4 ++++
 docs/hypercall-interfaces/arm64.rst    | 32 ++++++++++++++++++++++++++
 docs/hypercall-interfaces/index.rst.in |  7 ++++++
 docs/hypercall-interfaces/x86_64.rst   |  4 ++++
 docs/index.rst                         |  8 +++++++
 7 files changed, 60 insertions(+)
 create mode 100644 docs/hypercall-interfaces/arm32.rst
 create mode 100644 docs/hypercall-interfaces/arm64.rst
 create mode 100644 docs/hypercall-interfaces/index.rst.in
 create mode 100644 docs/hypercall-interfaces/x86_64.rst

diff --git a/.gitignore b/.gitignore
index a5eebf1213..dd3ca96b6f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -64,6 +64,7 @@ docs/xen.doxyfile
 docs/xen.doxyfile.tmp
 docs/doxygen_input.h
 docs/doxygen_input.h.tmp
+docs/hypercall-interfaces/index.rst
 extras/mini-os*
 install/*
 stubdom/*-minios-config.mk
diff --git a/docs/Makefile b/docs/Makefile
index dd651e9a93..2f29ca7e78 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -65,6 +65,9 @@ build: html txt pdf man-pages figs
 sphinx-html: $(DOXY_DEPS) $(DOXY_LIST_SOURCES)
 ifneq ($(SPHINXBUILD),)
 	$(DOXYGEN) xen.doxyfile
+	@echo "Generating hypercall-interfaces/index.rst"
+	@sed -e "s,@XEN_TARGET_ARCH@,$(XEN_TARGET_ARCH),g" \
+		hypercall-interfaces/index.rst.in > hypercall-interfaces/index.rst
 	XEN_ROOT=$(realpath $(XEN_ROOT)) $(SPHINXBUILD) -b html . sphinx/html
 else
 	@echo "Sphinx is not installed; skipping sphinx-html documentation."
@@ -113,6 +116,7 @@ clean: clean-man-pages
 	rm -f xen.doxyfile.tmp
 	rm -f doxygen_input.h
 	rm -f doxygen_input.h.tmp
+	rm -f hypercall-interfaces/index.rst
 
 .PHONY: distclean
 distclean: clean
diff --git a/docs/hypercall-interfaces/arm32.rst b/docs/hypercall-interfaces/arm32.rst
new file mode 100644
index 0000000000..4e973fbbaf
--- /dev/null
+++ b/docs/hypercall-interfaces/arm32.rst
@@ -0,0 +1,4 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - arm32
+============================
diff --git a/docs/hypercall-interfaces/arm64.rst b/docs/hypercall-interfaces/arm64.rst
new file mode 100644
index 0000000000..5e701a2adc
--- /dev/null
+++ b/docs/hypercall-interfaces/arm64.rst
@@ -0,0 +1,32 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - arm64
+============================
+
+Starting points
+---------------
+.. toctree::
+   :maxdepth: 2
+
+
+
+Functions
+---------
+
+
+Structs
+-------
+
+
+Enums and sets of #defines
+--------------------------
+
+
+Typedefs
+--------
+
+
+Enum values and individual #defines
+-----------------------------------
+
+
diff --git a/docs/hypercall-interfaces/index.rst.in b/docs/hypercall-interfaces/index.rst.in
new file mode 100644
index 0000000000..e4dcc5db8d
--- /dev/null
+++ b/docs/hypercall-interfaces/index.rst.in
@@ -0,0 +1,7 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces
+====================
+
+.. toctree::
+   @XEN_TARGET_ARCH@
diff --git a/docs/hypercall-interfaces/x86_64.rst b/docs/hypercall-interfaces/x86_64.rst
new file mode 100644
index 0000000000..3ed70dff95
--- /dev/null
+++ b/docs/hypercall-interfaces/x86_64.rst
@@ -0,0 +1,4 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - x86_64
+=============================
diff --git a/docs/index.rst b/docs/index.rst
index b75487a05d..52226a42d8 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -53,6 +53,14 @@ kind of development environment.
    hypervisor-guide/index
 
 
+Hypercall Interfaces documentation
+----------------------------------
+
+.. toctree::
+   :maxdepth: 2
+
+   hypercall-interfaces/index
+
 Miscellanea
 -----------
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 10:37:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 10:37:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105771.202320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTj57-00015I-7A; Tue, 06 Apr 2021 10:37:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105771.202320; Tue, 06 Apr 2021 10:37: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 1lTj57-000159-3i; Tue, 06 Apr 2021 10:37:13 +0000
Received: by outflank-mailman (input) for mailman id 105771;
 Tue, 06 Apr 2021 10:37:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xZnD=JD=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lTj56-00014T-14
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 10:37:12 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 4a834dd7-fed1-4812-baa5-2a2f380abfc6;
 Tue, 06 Apr 2021 10:37:10 +0000 (UTC)
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 F0CC2ED1;
 Tue,  6 Apr 2021 03:37:09 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A022A3F73D;
 Tue,  6 Apr 2021 03:37: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: 4a834dd7-fed1-4812-baa5-2a2f380abfc6
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
Date: Tue,  6 Apr 2021 11:36:03 +0100
Message-Id: <20210406103603.8530-4-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210406103603.8530-1-luca.fancellu@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>

Modification to include/public/grant_table.h:

1) Change anonymous structure to be named structure,
   because doxygen can't deal with them.
2) Add doxygen tags to:
 - Create Grant tables section
 - include variables in the generated documentation
3) Add .rst file for grant table for Arm64

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 docs/hypercall-interfaces/arm64.rst           |  1 +
 .../arm64/grant_tables.rst                    |  8 ++
 docs/xen-doxygen/doxy_input.list              |  1 +
 xen/include/public/grant_table.h              | 79 ++++++++++++-------
 4 files changed, 59 insertions(+), 30 deletions(-)
 create mode 100644 docs/hypercall-interfaces/arm64/grant_tables.rst

diff --git a/docs/hypercall-interfaces/arm64.rst b/docs/hypercall-interfaces/arm64.rst
index 5e701a2adc..c30a7142b1 100644
--- a/docs/hypercall-interfaces/arm64.rst
+++ b/docs/hypercall-interfaces/arm64.rst
@@ -8,6 +8,7 @@ Starting points
 .. toctree::
    :maxdepth: 2
 
+   arm64/grant_tables
 
 
 Functions
diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hypercall-interfaces/arm64/grant_tables.rst
new file mode 100644
index 0000000000..8955ec5812
--- /dev/null
+++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
@@ -0,0 +1,8 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Grant Tables
+============
+
+.. doxygengroup:: grant_table
+   :project: Xen
+   :members:
diff --git a/docs/xen-doxygen/doxy_input.list b/docs/xen-doxygen/doxy_input.list
index e69de29bb2..233d692fa7 100644
--- a/docs/xen-doxygen/doxy_input.list
+++ b/docs/xen-doxygen/doxy_input.list
@@ -0,0 +1 @@
+xen/include/public/grant_table.h
diff --git a/xen/include/public/grant_table.h b/xen/include/public/grant_table.h
index 84b1d26b36..b506e09ed3 100644
--- a/xen/include/public/grant_table.h
+++ b/xen/include/public/grant_table.h
@@ -25,15 +25,19 @@
  * Copyright (c) 2004, K A Fraser
  */
 
-#ifndef __XEN_PUBLIC_GRANT_TABLE_H__
+/**
+ * @file
+ * @brief Interface for granting foreign access to page frames, and receiving
+ * page-ownership transfers.
+ */
+
+#if !defined(__XEN_PUBLIC_GRANT_TABLE_H__) || defined(DOXYGEN)
 #define __XEN_PUBLIC_GRANT_TABLE_H__
 
 #include "xen.h"
 
-/*
- * `incontents 150 gnttab Grant Tables
- *
- * Xen's grant tables provide a generic mechanism to memory sharing
+/**
+ * @brief Xen's grant tables provide a generic mechanism to memory sharing
  * between domains. This shared memory interface underpins the split
  * device drivers for block and network IO.
  *
@@ -51,13 +55,10 @@
  * know the real machine address of a page it is sharing. This makes
  * it possible to share memory correctly with domains running in
  * fully virtualised memory.
- */
-
-/***********************************
+ *
  * GRANT TABLE REPRESENTATION
- */
-
-/* Some rough guidelines on accessing and updating grant-table entries
+ *
+ * Some rough guidelines on accessing and updating grant-table entries
  * in a concurrency-safe manner. For more information, Linux contains a
  * reference implementation for guest OSes (drivers/xen/grant_table.c, see
  * http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=drivers/xen/grant-table.c;hb=HEAD
@@ -66,6 +67,7 @@
  *     compiler barrier will still be required.
  *
  * Introducing a valid entry into the grant table:
+ * @code
  *  1. Write ent->domid.
  *  2. Write ent->frame:
  *      GTF_permit_access:   Frame to which access is permitted.
@@ -73,20 +75,25 @@
  *                           frame, or zero if none.
  *  3. Write memory barrier (WMB).
  *  4. Write ent->flags, inc. valid type.
+ * @endcode
  *
  * Invalidating an unused GTF_permit_access entry:
+ * @code
  *  1. flags = ent->flags.
  *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
  *  NB. No need for WMB as reuse of entry is control-dependent on success of
  *      step 3, and all architectures guarantee ordering of ctrl-dep writes.
+ * @endcode
  *
  * Invalidating an in-use GTF_permit_access entry:
+ *
  *  This cannot be done directly. Request assistance from the domain controller
  *  which can set a timeout on the use of a grant entry and take necessary
  *  action. (NB. This is not yet implemented!).
  *
  * Invalidating an unused GTF_accept_transfer entry:
+ * @code
  *  1. flags = ent->flags.
  *  2. Observe that !(flags & GTF_transfer_committed). [*]
  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
@@ -97,47 +104,55 @@
  *      transferred frame is written. It is safe for the guest to spin waiting
  *      for this to occur (detect by observing GTF_transfer_completed in
  *      ent->flags).
+ * @endcode
  *
  * Invalidating a committed GTF_accept_transfer entry:
  *  1. Wait for (ent->flags & GTF_transfer_completed).
  *
  * Changing a GTF_permit_access from writable to read-only:
+ *
  *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writing.
  *
  * Changing a GTF_permit_access from read-only to writable:
+ *
  *  Use SMP-safe bit-setting instruction.
- */
-
-/*
- * Reference to a grant entry in a specified domain's grant table.
- */
-typedef uint32_t grant_ref_t;
-
-/*
+ *
  * A grant table comprises a packed array of grant entries in one or more
  * page frames shared between Xen and a guest.
+ *
  * [XEN]: This field is written by Xen and read by the sharing guest.
+ *
  * [GST]: This field is written by the guest and read by Xen.
+ *
+ * @addtogroup grant_table Grant Tables
+ * @{
  */
 
-/*
- * Version 1 of the grant table entry structure is maintained purely
- * for backwards compatibility.  New guests should use version 2.
+/**
+ * Reference to a grant entry in a specified domain's grant table.
  */
+typedef uint32_t grant_ref_t;
+
 #if __XEN_INTERFACE_VERSION__ < 0x0003020a
 #define grant_entry_v1 grant_entry
 #define grant_entry_v1_t grant_entry_t
 #endif
+/**
+ * Version 1 of the grant table entry structure is maintained purely
+ * for backwards compatibility.  New guests should use version 2.
+ */
 struct grant_entry_v1 {
-    /* GTF_xxx: various type and flag information.  [XEN,GST] */
+    /** GTF_xxx: various type and flag information.  [XEN,GST] */
     uint16_t flags;
-    /* The domain being granted foreign privileges. [GST] */
+    /** The domain being granted foreign privileges. [GST] */
     domid_t  domid;
-    /*
+    /**
+     * @code
      * GTF_permit_access: GFN that @domid is allowed to map and access. [GST]
      * GTF_accept_transfer: GFN that @domid is allowed to transfer into. [GST]
      * GTF_transfer_completed: MFN whose ownership transferred by @domid
      *                         (non-translated guests only). [XEN]
+     * @endcode
      */
     uint32_t frame;
 };
@@ -243,7 +258,7 @@ union grant_entry_v2 {
      * In that case, the frame field has the same semantics as the
      * field of the same name in the V1 entry structure.
      */
-    struct {
+    struct full_page {
         grant_entry_header_t hdr;
         uint32_t pad0;
         uint64_t frame;
@@ -254,7 +269,7 @@ union grant_entry_v2 {
      * @domid is allowed to access bytes [@page_off,@page_off+@length)
      * in frame @frame.
      */
-    struct {
+    struct sub_page {
         grant_entry_header_t hdr;
         uint16_t page_off;
         uint16_t length;
@@ -270,7 +285,7 @@ union grant_entry_v2 {
      * The current version of Xen does not allow transitive grants
      * to be mapped.
      */
-    struct {
+    struct transitive {
         grant_entry_header_t hdr;
         domid_t trans_domid;
         uint16_t pad0;
@@ -459,7 +474,7 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
 struct gnttab_copy {
     /* IN parameters. */
     struct gnttab_copy_ptr {
-        union {
+        union gnttab_copy_ptr_u {
             grant_ref_t ref;
             xen_pfn_t   gmfn;
         } u;
@@ -584,7 +599,7 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
  * page granted to the calling domain by a foreign domain.
  */
 struct gnttab_cache_flush {
-    union {
+    union a {
         uint64_t dev_bus_addr;
         grant_ref_t ref;
     } a;
@@ -673,6 +688,10 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_cache_flush_t);
     "operation not done; try again"             \
 }
 
+/**
+ * @}
+*/
+
 #endif /* __XEN_PUBLIC_GRANT_TABLE_H__ */
 
 /*
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 10:51:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 10:51:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105793.202332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjIt-00034v-JN; Tue, 06 Apr 2021 10:51:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105793.202332; Tue, 06 Apr 2021 10: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 1lTjIt-00034o-Et; Tue, 06 Apr 2021 10:51:27 +0000
Received: by outflank-mailman (input) for mailman id 105793;
 Tue, 06 Apr 2021 10:51:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xZnD=JD=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lTjIs-00034Q-PM
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 10:51:26 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id dd21e63e-4c1f-4a54-b146-49ebbd0fb2cf;
 Tue, 06 Apr 2021 10:51:26 +0000 (UTC)
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 D4F9531B;
 Tue,  6 Apr 2021 03:51:25 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4D44A3F73D;
 Tue,  6 Apr 2021 03:51: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: dd21e63e-4c1f-4a54-b146-49ebbd0fb2cf
From: Luca Fancellu <luca.fancellu@arm.com>
To: sstabellini@kernel.org,
	jgross@suse.com,
	jgrall@amazon.com
Cc: boris.ostrovsky@oracle.com,
	tglx@linutronix.de,
	wei.liu@kernel.org,
	jbeulich@suse.com,
	yyankovskyi@gmail.com,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org,
	stable@vger.kernel.org,
	bertrand.marquis@arm.com
Subject: [PATCH] xen/evtchn: Change irq_info lock to raw_spinlock_t
Date: Tue,  6 Apr 2021 11:51:04 +0100
Message-Id: <20210406105105.10141-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1

Unmask operation must be called with interrupt disabled,
on preempt_rt spin_lock_irqsave/spin_unlock_irqrestore
don't disable/enable interrupts, so use raw_* implementation
and change lock variable in struct irq_info from spinlock_t
to raw_spinlock_t

Cc: stable@vger.kernel.org
Fixes: 25da4618af24 ("xen/events: don't unmask an event channel
when an eoi is pending")

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 drivers/xen/events/events_base.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 8236e2364eeb..7bbfd58958bc 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -110,7 +110,7 @@ struct irq_info {
 	unsigned short eoi_cpu; /* EOI must happen on this cpu-1 */
 	unsigned int irq_epoch; /* If eoi_cpu valid: irq_epoch of event */
 	u64 eoi_time;           /* Time in jiffies when to EOI. */
-	spinlock_t lock;
+	raw_spinlock_t lock;
 
 	union {
 		unsigned short virq;
@@ -312,7 +312,7 @@ static int xen_irq_info_common_setup(struct irq_info *info,
 	info->evtchn = evtchn;
 	info->cpu = cpu;
 	info->mask_reason = EVT_MASK_REASON_EXPLICIT;
-	spin_lock_init(&info->lock);
+	raw_spin_lock_init(&info->lock);
 
 	ret = set_evtchn_to_irq(evtchn, irq);
 	if (ret < 0)
@@ -472,28 +472,28 @@ static void do_mask(struct irq_info *info, u8 reason)
 {
 	unsigned long flags;
 
-	spin_lock_irqsave(&info->lock, flags);
+	raw_spin_lock_irqsave(&info->lock, flags);
 
 	if (!info->mask_reason)
 		mask_evtchn(info->evtchn);
 
 	info->mask_reason |= reason;
 
-	spin_unlock_irqrestore(&info->lock, flags);
+	raw_spin_unlock_irqrestore(&info->lock, flags);
 }
 
 static void do_unmask(struct irq_info *info, u8 reason)
 {
 	unsigned long flags;
 
-	spin_lock_irqsave(&info->lock, flags);
+	raw_spin_lock_irqsave(&info->lock, flags);
 
 	info->mask_reason &= ~reason;
 
 	if (!info->mask_reason)
 		unmask_evtchn(info->evtchn);
 
-	spin_unlock_irqrestore(&info->lock, flags);
+	raw_spin_unlock_irqrestore(&info->lock, flags);
 }
 
 #ifdef CONFIG_X86
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105800.202368 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXH-0004Cf-JR; Tue, 06 Apr 2021 11:06:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105800.202368; Tue, 06 Apr 2021 11: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 1lTjXH-0004CU-EN; Tue, 06 Apr 2021 11:06:19 +0000
Received: by outflank-mailman (input) for mailman id 105800;
 Tue, 06 Apr 2021 11:06:18 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXG-0004Bv-Jw
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:18 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXG-00052s-6l; Tue, 06 Apr 2021 11:06:18 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXF-0002qD-Bi; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=/MFVGtrkdYKM0RBkkP2MlsOy4fUYar3Tz/PcBBeLT3s=; b=m
	prUc60fPcyPWGdBWk0CGC1KuqIhsOR1mgmaXY+1wcc4F972G/mod4zJTN7lnH5uZruOKbSwgfO8lh
	x5EdYy2XFTdYvl7k4NtaCtqKnvF2ZNjkgFzYSvnjh5J1IfIMSb1cyYsYnqWXQOoPNCIlaB4Wdg3Sm
	FSjNe6G4ykbdEUdU=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 02/13] x86/mm: switch to new APIs in map_pages_to_xen
Date: Tue,  6 Apr 2021 12:05:50 +0100
Message-Id: <d179b2d13d1f8fb25ee597cfcfb7a03e6cb87ab4.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Page tables allocated in that function should be mapped and unmapped
now.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/x86/mm.c | 60 ++++++++++++++++++++++++++++-------------------
 1 file changed, 36 insertions(+), 24 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 9705fed195f1..c49e8554f9f7 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5199,7 +5199,7 @@ int map_pages_to_xen(
                 }
                 else
                 {
-                    l2_pgentry_t *l2t = l3e_to_l2e(ol3e);
+                    l2_pgentry_t *l2t = map_l2t_from_l3e(ol3e);
 
                     for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
                     {
@@ -5211,10 +5211,11 @@ int map_pages_to_xen(
                         else
                         {
                             unsigned int j;
-                            const l1_pgentry_t *l1t = l2e_to_l1e(ol2e);
+                            const l1_pgentry_t *l1t = map_l1t_from_l2e(ol2e);
 
                             for ( j = 0; j < L1_PAGETABLE_ENTRIES; j++ )
                                 flush_flags(l1e_get_flags(l1t[j]));
+                            unmap_domain_page(l1t);
                         }
                     }
                     flush_area(virt, flush_flags);
@@ -5223,9 +5224,10 @@ int map_pages_to_xen(
                         ol2e = l2t[i];
                         if ( (l2e_get_flags(ol2e) & _PAGE_PRESENT) &&
                              !(l2e_get_flags(ol2e) & _PAGE_PSE) )
-                            free_xen_pagetable(l2e_to_l1e(ol2e));
+                            free_xen_pagetable_new(l2e_get_mfn(ol2e));
                     }
-                    free_xen_pagetable(l2t);
+                    unmap_domain_page(l2t);
+                    free_xen_pagetable_new(l3e_get_mfn(ol3e));
                 }
             }
 
@@ -5242,6 +5244,7 @@ int map_pages_to_xen(
             unsigned int flush_flags =
                 FLUSH_TLB | FLUSH_ORDER(2 * PAGETABLE_ORDER);
             l2_pgentry_t *l2t;
+            mfn_t l2mfn;
 
             /* Skip this PTE if there is no change. */
             if ( ((l3e_get_pfn(ol3e) & ~(L2_PAGETABLE_ENTRIES *
@@ -5263,15 +5266,17 @@ int map_pages_to_xen(
                 continue;
             }
 
-            l2t = alloc_xen_pagetable();
-            if ( l2t == NULL )
+            l2mfn = alloc_xen_pagetable_new();
+            if ( mfn_eq(l2mfn, INVALID_MFN) )
                 goto out;
 
+            l2t = map_domain_page(l2mfn);
             for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
                 l2e_write(l2t + i,
                           l2e_from_pfn(l3e_get_pfn(ol3e) +
                                        (i << PAGETABLE_ORDER),
                                        l3e_get_flags(ol3e)));
+            UNMAP_DOMAIN_PAGE(l2t);
 
             if ( l3e_get_flags(ol3e) & _PAGE_GLOBAL )
                 flush_flags |= FLUSH_TLB_GLOBAL;
@@ -5281,15 +5286,15 @@ int map_pages_to_xen(
             if ( (l3e_get_flags(*pl3e) & _PAGE_PRESENT) &&
                  (l3e_get_flags(*pl3e) & _PAGE_PSE) )
             {
-                l3e_write_atomic(pl3e, l3e_from_mfn(virt_to_mfn(l2t),
-                                                    __PAGE_HYPERVISOR));
-                l2t = NULL;
+                l3e_write_atomic(pl3e,
+                                 l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR));
+                l2mfn = INVALID_MFN;
             }
             if ( locking )
                 spin_unlock(&map_pgdir_lock);
             flush_area(virt, flush_flags);
-            if ( l2t )
-                free_xen_pagetable(l2t);
+
+            free_xen_pagetable_new(l2mfn);
         }
 
         pl2e = virt_to_xen_l2e(virt);
@@ -5317,12 +5322,13 @@ int map_pages_to_xen(
                 }
                 else
                 {
-                    l1_pgentry_t *l1t = l2e_to_l1e(ol2e);
+                    l1_pgentry_t *l1t = map_l1t_from_l2e(ol2e);
 
                     for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                         flush_flags(l1e_get_flags(l1t[i]));
                     flush_area(virt, flush_flags);
-                    free_xen_pagetable(l1t);
+                    unmap_domain_page(l1t);
+                    free_xen_pagetable_new(l2e_get_mfn(ol2e));
                 }
             }
 
@@ -5347,6 +5353,7 @@ int map_pages_to_xen(
                 unsigned int flush_flags =
                     FLUSH_TLB | FLUSH_ORDER(PAGETABLE_ORDER);
                 l1_pgentry_t *l1t;
+                mfn_t l1mfn;
 
                 /* Skip this PTE if there is no change. */
                 if ( (((l2e_get_pfn(*pl2e) & ~(L1_PAGETABLE_ENTRIES - 1)) +
@@ -5366,14 +5373,16 @@ int map_pages_to_xen(
                     goto check_l3;
                 }
 
-                l1t = alloc_xen_pagetable();
-                if ( l1t == NULL )
+                l1mfn = alloc_xen_pagetable_new();
+                if ( mfn_eq(l1mfn, INVALID_MFN) )
                     goto out;
 
+                l1t = map_domain_page(l1mfn);
                 for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                     l1e_write(&l1t[i],
                               l1e_from_pfn(l2e_get_pfn(*pl2e) + i,
                                            lNf_to_l1f(l2e_get_flags(*pl2e))));
+                UNMAP_DOMAIN_PAGE(l1t);
 
                 if ( l2e_get_flags(*pl2e) & _PAGE_GLOBAL )
                     flush_flags |= FLUSH_TLB_GLOBAL;
@@ -5383,20 +5392,21 @@ int map_pages_to_xen(
                 if ( (l2e_get_flags(*pl2e) & _PAGE_PRESENT) &&
                      (l2e_get_flags(*pl2e) & _PAGE_PSE) )
                 {
-                    l2e_write_atomic(pl2e, l2e_from_mfn(virt_to_mfn(l1t),
+                    l2e_write_atomic(pl2e, l2e_from_mfn(l1mfn,
                                                         __PAGE_HYPERVISOR));
-                    l1t = NULL;
+                    l1mfn = INVALID_MFN;
                 }
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(virt, flush_flags);
-                if ( l1t )
-                    free_xen_pagetable(l1t);
+
+                free_xen_pagetable_new(l1mfn);
             }
 
-            pl1e  = l2e_to_l1e(*pl2e) + l1_table_offset(virt);
+            pl1e  = map_l1t_from_l2e(*pl2e) + l1_table_offset(virt);
             ol1e  = *pl1e;
             l1e_write_atomic(pl1e, l1e_from_mfn(mfn, flags));
+            UNMAP_DOMAIN_PAGE(pl1e);
             if ( (l1e_get_flags(ol1e) & _PAGE_PRESENT) )
             {
                 unsigned int flush_flags = FLUSH_TLB | FLUSH_ORDER(0);
@@ -5440,12 +5450,13 @@ int map_pages_to_xen(
                     goto check_l3;
                 }
 
-                l1t = l2e_to_l1e(ol2e);
+                l1t = map_l1t_from_l2e(ol2e);
                 base_mfn = l1e_get_pfn(l1t[0]) & ~(L1_PAGETABLE_ENTRIES - 1);
                 for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                     if ( (l1e_get_pfn(l1t[i]) != (base_mfn + i)) ||
                          (l1e_get_flags(l1t[i]) != flags) )
                         break;
+                UNMAP_DOMAIN_PAGE(l1t);
                 if ( i == L1_PAGETABLE_ENTRIES )
                 {
                     l2e_write_atomic(pl2e, l2e_from_pfn(base_mfn,
@@ -5455,7 +5466,7 @@ int map_pages_to_xen(
                     flush_area(virt - PAGE_SIZE,
                                FLUSH_TLB_GLOBAL |
                                FLUSH_ORDER(PAGETABLE_ORDER));
-                    free_xen_pagetable(l2e_to_l1e(ol2e));
+                    free_xen_pagetable_new(l2e_get_mfn(ol2e));
                 }
                 else if ( locking )
                     spin_unlock(&map_pgdir_lock);
@@ -5488,7 +5499,7 @@ int map_pages_to_xen(
                 continue;
             }
 
-            l2t = l3e_to_l2e(ol3e);
+            l2t = map_l2t_from_l3e(ol3e);
             base_mfn = l2e_get_pfn(l2t[0]) & ~(L2_PAGETABLE_ENTRIES *
                                               L1_PAGETABLE_ENTRIES - 1);
             for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
@@ -5496,6 +5507,7 @@ int map_pages_to_xen(
                       (base_mfn + (i << PAGETABLE_ORDER))) ||
                      (l2e_get_flags(l2t[i]) != l1f_to_lNf(flags)) )
                     break;
+            UNMAP_DOMAIN_PAGE(l2t);
             if ( i == L2_PAGETABLE_ENTRIES )
             {
                 l3e_write_atomic(pl3e, l3e_from_pfn(base_mfn,
@@ -5505,7 +5517,7 @@ int map_pages_to_xen(
                 flush_area(virt - PAGE_SIZE,
                            FLUSH_TLB_GLOBAL |
                            FLUSH_ORDER(2*PAGETABLE_ORDER));
-                free_xen_pagetable(l3e_to_l2e(ol3e));
+                free_xen_pagetable_new(l3e_get_mfn(ol3e));
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105798.202344 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXC-00049M-SE; Tue, 06 Apr 2021 11:06:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105798.202344; Tue, 06 Apr 2021 11:06: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 1lTjXC-00049F-OO; Tue, 06 Apr 2021 11:06:14 +0000
Received: by outflank-mailman (input) for mailman id 105798;
 Tue, 06 Apr 2021 11:06:13 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXB-00049A-3M
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:13 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXA-00052Y-0H; Tue, 06 Apr 2021 11:06:12 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjX9-0002qD-8n; Tue, 06 Apr 2021 11:06: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=Message-Id:Date:Subject:Cc:To:From;
	bh=9NxIVhwDU06jniRfYOl1JCju4Dh8jTlcYhCu5BPYz38=; b=cYil8rl4xjVrb/GVPOfx6e4Qux
	b4ULGXLRpo2LH3NY3rxMraFzGEKZHeIDlMShNfUZz7yvXNOanvDnzOIkqCUguJAV++yyBLenQtIVH
	g86ZXiCAUunK+49uMRGNy/+D/L0xUqKK4FrTDOVtfuyrhbBjMMS6Pq0F0I1opHeArJ7o=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v9 00/13] switch to domheap for Xen page tables
Date: Tue,  6 Apr 2021 12:05:48 +0100
Message-Id: <cover.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1

From: Hongyan Xia <hongyxia@amazon.com>

This series rewrites all the remaining functions and finally makes the
switch from xenheap to domheap for Xen page tables, so that they no
longer need to rely on the direct map, which is a big step towards
removing the direct map.

---
Changed in v9:
- drop first 2 patches which have been merged in XSA-345.
- adjust code around L3 page locking in mm.c.

Hongyan Xia (2):
  x86/mm: drop old page table APIs
  x86: switch to use domheap page for page tables

Wei Liu (11):
  x86/mm: rewrite virt_to_xen_l*e
  x86/mm: switch to new APIs in map_pages_to_xen
  x86/mm: switch to new APIs in modify_xen_mappings
  x86_64/mm: introduce pl2e in paging_init
  x86_64/mm: switch to new APIs in paging_init
  x86_64/mm: switch to new APIs in setup_m2p_table
  efi: use new page table APIs in copy_mapping
  efi: switch to new APIs in EFI code
  x86/smpboot: add exit path for clone_mapping()
  x86/smpboot: switch clone_mapping() to new APIs
  x86/mm: drop _new suffix for page table APIs

 xen/arch/x86/efi/runtime.h |  13 +-
 xen/arch/x86/mm.c          | 247 ++++++++++++++++++++++---------------
 xen/arch/x86/setup.c       |   4 +-
 xen/arch/x86/smpboot.c     |  70 +++++++----
 xen/arch/x86/x86_64/mm.c   |  80 +++++++-----
 xen/common/efi/boot.c      |  83 ++++++++-----
 xen/common/efi/efi.h       |   3 +-
 xen/common/efi/runtime.c   |   8 +-
 xen/common/vmap.c          |   1 +
 xen/include/asm-x86/mm.h   |   7 +-
 xen/include/asm-x86/page.h |   5 -
 11 files changed, 315 insertions(+), 206 deletions(-)

-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105799.202356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXG-0004Ag-2u; Tue, 06 Apr 2021 11:06:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105799.202356; Tue, 06 Apr 2021 11:06: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 1lTjXF-0004AZ-W1; Tue, 06 Apr 2021 11:06:17 +0000
Received: by outflank-mailman (input) for mailman id 105799;
 Tue, 06 Apr 2021 11:06:16 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXE-0004A9-BL
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:16 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXD-00052k-KV; Tue, 06 Apr 2021 11:06:15 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXC-0002qD-JB; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=3wDZcWq9SJYWjnqWjE3dFEtmqXMHubwG3MqOcCsU4aU=; b=5
	UxuyJklDF3sz1uf8PFlyA8V4VTqD3XH44FIRo4FRiRYCjyg0JjvkJSFuBAnHXj3OI3nIOzteEKAuI
	dJw1uuBnOeLrQmFbweQso4czFmliZdxNZJivLmu3KVHSOpEgg4zP3Ez29fdkaGv97AXMZOY3VukZR
	gfG3YECzKlx9smew=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v9 01/13] x86/mm: rewrite virt_to_xen_l*e
Date: Tue,  6 Apr 2021 12:05:49 +0100
Message-Id: <b70cc7c0854a6a25b00624b5fa83684a20916ca3.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Rewrite those functions to use the new APIs. Modify its callers to unmap
the pointer returned. Since alloc_xen_pagetable_new() is almost never
useful unless accompanied by page clearing and a mapping, introduce a
helper alloc_map_clear_xen_pt() for this sequence.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>

---
Changed in v9:
- use domain_page_map_to_mfn() around the L3 table locking logic.
- remove vmap_to_mfn() changes since we now use xen_map_to_mfn().

Changed in v8:
- s/virtual address/linear address/.
- BUG_ON() on NULL return in vmap_to_mfn().

Changed in v7:
- remove a comment.
- use l1e_get_mfn() instead of converting things back and forth.
- add alloc_map_clear_xen_pt().
- unmap before the next mapping to reduce mapcache pressure.
- use normal unmap calls instead of the macro in error paths because
  unmap can handle NULL now.
---
 xen/arch/x86/mm.c        | 102 +++++++++++++++++++++++++++------------
 xen/common/vmap.c        |   1 +
 xen/include/asm-x86/mm.h |   1 +
 3 files changed, 73 insertions(+), 31 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index afb4febf6f4e..9705fed195f1 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -4915,8 +4915,28 @@ void free_xen_pagetable_new(mfn_t mfn)
         free_xenheap_page(mfn_to_virt(mfn_x(mfn)));
 }
 
+void *alloc_map_clear_xen_pt(mfn_t *pmfn)
+{
+    mfn_t mfn = alloc_xen_pagetable_new();
+    void *ret;
+
+    if ( mfn_eq(mfn, INVALID_MFN) )
+        return NULL;
+
+    if ( pmfn )
+        *pmfn = mfn;
+    ret = map_domain_page(mfn);
+    clear_page(ret);
+
+    return ret;
+}
+
 static DEFINE_SPINLOCK(map_pgdir_lock);
 
+/*
+ * For virt_to_xen_lXe() functions, they take a linear address and return a
+ * pointer to Xen's LX entry. Caller needs to unmap the pointer.
+ */
 static l3_pgentry_t *virt_to_xen_l3e(unsigned long v)
 {
     l4_pgentry_t *pl4e;
@@ -4925,33 +4945,33 @@ static l3_pgentry_t *virt_to_xen_l3e(unsigned long v)
     if ( !(l4e_get_flags(*pl4e) & _PAGE_PRESENT) )
     {
         bool locking = system_state > SYS_STATE_boot;
-        l3_pgentry_t *l3t = alloc_xen_pagetable();
+        mfn_t l3mfn;
+        l3_pgentry_t *l3t = alloc_map_clear_xen_pt(&l3mfn);
 
         if ( !l3t )
             return NULL;
-        clear_page(l3t);
+        UNMAP_DOMAIN_PAGE(l3t);
         if ( locking )
             spin_lock(&map_pgdir_lock);
         if ( !(l4e_get_flags(*pl4e) & _PAGE_PRESENT) )
         {
-            l4_pgentry_t l4e = l4e_from_paddr(__pa(l3t), __PAGE_HYPERVISOR);
+            l4_pgentry_t l4e = l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR);
 
             l4e_write(pl4e, l4e);
             efi_update_l4_pgtable(l4_table_offset(v), l4e);
-            l3t = NULL;
+            l3mfn = INVALID_MFN;
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        if ( l3t )
-            free_xen_pagetable(l3t);
+        free_xen_pagetable_new(l3mfn);
     }
 
-    return l4e_to_l3e(*pl4e) + l3_table_offset(v);
+    return map_l3t_from_l4e(*pl4e) + l3_table_offset(v);
 }
 
 static l2_pgentry_t *virt_to_xen_l2e(unsigned long v)
 {
-    l3_pgentry_t *pl3e;
+    l3_pgentry_t *pl3e, l3e;
 
     pl3e = virt_to_xen_l3e(v);
     if ( !pl3e )
@@ -4960,31 +4980,37 @@ static l2_pgentry_t *virt_to_xen_l2e(unsigned long v)
     if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
     {
         bool locking = system_state > SYS_STATE_boot;
-        l2_pgentry_t *l2t = alloc_xen_pagetable();
+        mfn_t l2mfn;
+        l2_pgentry_t *l2t = alloc_map_clear_xen_pt(&l2mfn);
 
         if ( !l2t )
+        {
+            unmap_domain_page(pl3e);
             return NULL;
-        clear_page(l2t);
+        }
+        UNMAP_DOMAIN_PAGE(l2t);
         if ( locking )
             spin_lock(&map_pgdir_lock);
         if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
         {
-            l3e_write(pl3e, l3e_from_paddr(__pa(l2t), __PAGE_HYPERVISOR));
-            l2t = NULL;
+            l3e_write(pl3e, l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR));
+            l2mfn = INVALID_MFN;
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        if ( l2t )
-            free_xen_pagetable(l2t);
+        free_xen_pagetable_new(l2mfn);
     }
 
     BUG_ON(l3e_get_flags(*pl3e) & _PAGE_PSE);
-    return l3e_to_l2e(*pl3e) + l2_table_offset(v);
+    l3e = *pl3e;
+    unmap_domain_page(pl3e);
+
+    return map_l2t_from_l3e(l3e) + l2_table_offset(v);
 }
 
 l1_pgentry_t *virt_to_xen_l1e(unsigned long v)
 {
-    l2_pgentry_t *pl2e;
+    l2_pgentry_t *pl2e, l2e;
 
     pl2e = virt_to_xen_l2e(v);
     if ( !pl2e )
@@ -4993,26 +5019,32 @@ l1_pgentry_t *virt_to_xen_l1e(unsigned long v)
     if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
     {
         bool locking = system_state > SYS_STATE_boot;
-        l1_pgentry_t *l1t = alloc_xen_pagetable();
+        mfn_t l1mfn;
+        l1_pgentry_t *l1t = alloc_map_clear_xen_pt(&l1mfn);
 
         if ( !l1t )
+        {
+            unmap_domain_page(pl2e);
             return NULL;
-        clear_page(l1t);
+        }
+        UNMAP_DOMAIN_PAGE(l1t);
         if ( locking )
             spin_lock(&map_pgdir_lock);
         if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
         {
-            l2e_write(pl2e, l2e_from_paddr(__pa(l1t), __PAGE_HYPERVISOR));
-            l1t = NULL;
+            l2e_write(pl2e, l2e_from_mfn(l1mfn, __PAGE_HYPERVISOR));
+            l1mfn = INVALID_MFN;
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        if ( l1t )
-            free_xen_pagetable(l1t);
+        free_xen_pagetable_new(l1mfn);
     }
 
     BUG_ON(l2e_get_flags(*pl2e) & _PAGE_PSE);
-    return l2e_to_l1e(*pl2e) + l1_table_offset(v);
+    l2e = *pl2e;
+    unmap_domain_page(pl2e);
+
+    return map_l1t_from_l2e(l2e) + l1_table_offset(v);
 }
 
 /* Convert to from superpage-mapping flags for map_pages_to_xen(). */
@@ -5069,7 +5101,7 @@ mfn_t xen_map_to_mfn(unsigned long va)
 
     L3T_INIT(l3page);
     CHECK_MAPPED(pl3e);
-    l3page = virt_to_page(pl3e);
+    l3page = mfn_to_page(domain_page_map_to_mfn(pl3e));
     L3T_LOCK(l3page);
 
     CHECK_MAPPED(l3e_get_flags(*pl3e) & _PAGE_PRESENT);
@@ -5108,7 +5140,8 @@ int map_pages_to_xen(
     unsigned int flags)
 {
     bool locking = system_state > SYS_STATE_boot;
-    l2_pgentry_t *pl2e, ol2e;
+    l3_pgentry_t *pl3e = NULL, ol3e;
+    l2_pgentry_t *pl2e = NULL, ol2e;
     l1_pgentry_t *pl1e, ol1e;
     unsigned int  i;
     int rc = -ENOMEM;
@@ -5132,15 +5165,16 @@ int map_pages_to_xen(
 
     while ( nr_mfns != 0 )
     {
-        l3_pgentry_t *pl3e, ol3e;
-
+        /* Clean up the previous iteration. */
         L3T_UNLOCK(current_l3page);
+        UNMAP_DOMAIN_PAGE(pl3e);
+        UNMAP_DOMAIN_PAGE(pl2e);
 
         pl3e = virt_to_xen_l3e(virt);
         if ( !pl3e )
             goto out;
 
-        current_l3page = virt_to_page(pl3e);
+        current_l3page = mfn_to_page(domain_page_map_to_mfn(pl3e));
         L3T_LOCK(current_l3page);
         ol3e = *pl3e;
 
@@ -5305,6 +5339,8 @@ int map_pages_to_xen(
                 pl1e = virt_to_xen_l1e(virt);
                 if ( pl1e == NULL )
                     goto out;
+
+                UNMAP_DOMAIN_PAGE(pl1e);
             }
             else if ( l2e_get_flags(*pl2e) & _PAGE_PSE )
             {
@@ -5482,6 +5518,7 @@ int map_pages_to_xen(
 
  out:
     L3T_UNLOCK(current_l3page);
+    unmap_domain_page(pl3e);
     return rc;
 }
 
@@ -5505,6 +5542,7 @@ int populate_pt_range(unsigned long virt, unsigned long nr_mfns)
 int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 {
     bool locking = system_state > SYS_STATE_boot;
+    l3_pgentry_t *pl3e = NULL;
     l2_pgentry_t *pl2e;
     l1_pgentry_t *pl1e;
     unsigned int  i;
@@ -5523,15 +5561,15 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 
     while ( v < e )
     {
-        l3_pgentry_t *pl3e;
-
+        /* Clean up the previous iteration. */
         L3T_UNLOCK(current_l3page);
+        UNMAP_DOMAIN_PAGE(pl3e);
 
         pl3e = virt_to_xen_l3e(v);
         if ( !pl3e )
             goto out;
 
-        current_l3page = virt_to_page(pl3e);
+        current_l3page = mfn_to_page(domain_page_map_to_mfn(pl3e));
         L3T_LOCK(current_l3page);
 
         if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
@@ -5761,6 +5799,8 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 
  out:
     L3T_UNLOCK(current_l3page);
+    unmap_domain_page(pl2e);
+    unmap_domain_page(pl3e);
     return rc;
 }
 
diff --git a/xen/common/vmap.c b/xen/common/vmap.c
index 4fd6b3067ec1..c5140ac4f6a9 100644
--- a/xen/common/vmap.c
+++ b/xen/common/vmap.c
@@ -1,6 +1,7 @@
 #ifdef VMAP_VIRT_START
 #include <xen/bitmap.h>
 #include <xen/cache.h>
+#include <xen/domain_page.h>
 #include <xen/init.h>
 #include <xen/mm.h>
 #include <xen/pfn.h>
diff --git a/xen/include/asm-x86/mm.h b/xen/include/asm-x86/mm.h
index 041c158f03f6..681aac5b7ac2 100644
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -577,6 +577,7 @@ void *alloc_xen_pagetable(void);
 void free_xen_pagetable(void *v);
 mfn_t alloc_xen_pagetable_new(void);
 void free_xen_pagetable_new(mfn_t mfn);
+void *alloc_map_clear_xen_pt(mfn_t *pmfn);
 
 l1_pgentry_t *virt_to_xen_l1e(unsigned long v);
 
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105801.202379 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXJ-0004Fh-TJ; Tue, 06 Apr 2021 11:06:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105801.202379; Tue, 06 Apr 2021 11:06: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 1lTjXJ-0004Fa-P3; Tue, 06 Apr 2021 11:06:21 +0000
Received: by outflank-mailman (input) for mailman id 105801;
 Tue, 06 Apr 2021 11:06:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXI-0004ES-Lx
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:20 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXI-000530-Dl; Tue, 06 Apr 2021 11:06:20 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXI-0002qD-0j; Tue, 06 Apr 2021 11: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=e8oDiNP5pPlJ0YBPEORyPfE5UKBo6Kl37Wzeoi7OFlc=; b=4
	zOw9QBWIZ5jZZKSSqPbTPJabxVY7pIhoFudwK+X782axj8X/1zKvoLHC+IEpmyqpBSjZ6a22NNNw0
	QQCrIsad3bFSgukiNkZdhn9SbbJ90nDKLVWyZyof53dAc8Hzcc0+tF9w9VHkzWbDpOLYfJ9PhzqIL
	Pzb5jU5BTc7o+jAI=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 03/13] x86/mm: switch to new APIs in modify_xen_mappings
Date: Tue,  6 Apr 2021 12:05:51 +0100
Message-Id: <4d45d83f7c4578647180baa0e7850ec3fa37de9e.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Page tables allocated in that function should be mapped and unmapped
now.

Note that pl2e now maybe mapped and unmapped in different iterations, so
we need to add clean-ups for that.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v7:
- use normal unmap in the error path.
---
 xen/arch/x86/mm.c | 57 ++++++++++++++++++++++++++++++-----------------
 1 file changed, 36 insertions(+), 21 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index c49e8554f9f7..ababfffb3afc 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5530,6 +5530,7 @@ int map_pages_to_xen(
 
  out:
     L3T_UNLOCK(current_l3page);
+    unmap_domain_page(pl2e);
     unmap_domain_page(pl3e);
     return rc;
 }
@@ -5555,7 +5556,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 {
     bool locking = system_state > SYS_STATE_boot;
     l3_pgentry_t *pl3e = NULL;
-    l2_pgentry_t *pl2e;
+    l2_pgentry_t *pl2e = NULL;
     l1_pgentry_t *pl1e;
     unsigned int  i;
     unsigned long v = s;
@@ -5575,6 +5576,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
     {
         /* Clean up the previous iteration. */
         L3T_UNLOCK(current_l3page);
+        UNMAP_DOMAIN_PAGE(pl2e);
         UNMAP_DOMAIN_PAGE(pl3e);
 
         pl3e = virt_to_xen_l3e(v);
@@ -5597,6 +5599,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
         if ( l3e_get_flags(*pl3e) & _PAGE_PSE )
         {
             l2_pgentry_t *l2t;
+            mfn_t l2mfn;
 
             if ( l2_table_offset(v) == 0 &&
                  l1_table_offset(v) == 0 &&
@@ -5613,35 +5616,38 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             }
 
             /* PAGE1GB: shatter the superpage and fall through. */
-            l2t = alloc_xen_pagetable();
-            if ( !l2t )
+            l2mfn = alloc_xen_pagetable_new();
+            if ( mfn_eq(l2mfn, INVALID_MFN) )
                 goto out;
 
+            l2t = map_domain_page(l2mfn);
             for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
                 l2e_write(l2t + i,
                           l2e_from_pfn(l3e_get_pfn(*pl3e) +
                                        (i << PAGETABLE_ORDER),
                                        l3e_get_flags(*pl3e)));
+            UNMAP_DOMAIN_PAGE(l2t);
+
             if ( locking )
                 spin_lock(&map_pgdir_lock);
             if ( (l3e_get_flags(*pl3e) & _PAGE_PRESENT) &&
                  (l3e_get_flags(*pl3e) & _PAGE_PSE) )
             {
-                l3e_write_atomic(pl3e, l3e_from_mfn(virt_to_mfn(l2t),
-                                                    __PAGE_HYPERVISOR));
-                l2t = NULL;
+                l3e_write_atomic(pl3e,
+                                 l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR));
+                l2mfn = INVALID_MFN;
             }
             if ( locking )
                 spin_unlock(&map_pgdir_lock);
-            if ( l2t )
-                free_xen_pagetable(l2t);
+
+            free_xen_pagetable_new(l2mfn);
         }
 
         /*
          * The L3 entry has been verified to be present, and we've dealt with
          * 1G pages as well, so the L2 table cannot require allocation.
          */
-        pl2e = l3e_to_l2e(*pl3e) + l2_table_offset(v);
+        pl2e = map_l2t_from_l3e(*pl3e) + l2_table_offset(v);
 
         if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
         {
@@ -5669,41 +5675,45 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             else
             {
                 l1_pgentry_t *l1t;
-
                 /* PSE: shatter the superpage and try again. */
-                l1t = alloc_xen_pagetable();
-                if ( !l1t )
+                mfn_t l1mfn = alloc_xen_pagetable_new();
+
+                if ( mfn_eq(l1mfn, INVALID_MFN) )
                     goto out;
 
+                l1t = map_domain_page(l1mfn);
                 for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                     l1e_write(&l1t[i],
                               l1e_from_pfn(l2e_get_pfn(*pl2e) + i,
                                            l2e_get_flags(*pl2e) & ~_PAGE_PSE));
+                UNMAP_DOMAIN_PAGE(l1t);
+
                 if ( locking )
                     spin_lock(&map_pgdir_lock);
                 if ( (l2e_get_flags(*pl2e) & _PAGE_PRESENT) &&
                      (l2e_get_flags(*pl2e) & _PAGE_PSE) )
                 {
-                    l2e_write_atomic(pl2e, l2e_from_mfn(virt_to_mfn(l1t),
+                    l2e_write_atomic(pl2e, l2e_from_mfn(l1mfn,
                                                         __PAGE_HYPERVISOR));
-                    l1t = NULL;
+                    l1mfn = INVALID_MFN;
                 }
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
-                if ( l1t )
-                    free_xen_pagetable(l1t);
+
+                free_xen_pagetable_new(l1mfn);
             }
         }
         else
         {
             l1_pgentry_t nl1e, *l1t;
+            mfn_t l1mfn;
 
             /*
              * Ordinary 4kB mapping: The L2 entry has been verified to be
              * present, and we've dealt with 2M pages as well, so the L1 table
              * cannot require allocation.
              */
-            pl1e = l2e_to_l1e(*pl2e) + l1_table_offset(v);
+            pl1e = map_l1t_from_l2e(*pl2e) + l1_table_offset(v);
 
             /* Confirm the caller isn't trying to create new mappings. */
             if ( !(l1e_get_flags(*pl1e) & _PAGE_PRESENT) )
@@ -5714,6 +5724,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                                (l1e_get_flags(*pl1e) & ~FLAGS_MASK) | nf);
 
             l1e_write_atomic(pl1e, nl1e);
+            UNMAP_DOMAIN_PAGE(pl1e);
             v += PAGE_SIZE;
 
             /*
@@ -5743,10 +5754,12 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 continue;
             }
 
-            l1t = l2e_to_l1e(*pl2e);
+            l1mfn = l2e_get_mfn(*pl2e);
+            l1t = map_domain_page(l1mfn);
             for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                 if ( l1e_get_intpte(l1t[i]) != 0 )
                     break;
+            UNMAP_DOMAIN_PAGE(l1t);
             if ( i == L1_PAGETABLE_ENTRIES )
             {
                 /* Empty: zap the L2E and free the L1 page. */
@@ -5754,7 +5767,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(NULL, FLUSH_TLB_GLOBAL); /* flush before free */
-                free_xen_pagetable(l1t);
+                free_xen_pagetable_new(l1mfn);
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
@@ -5785,11 +5798,13 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 
         {
             l2_pgentry_t *l2t;
+            mfn_t l2mfn = l3e_get_mfn(*pl3e);
 
-            l2t = l3e_to_l2e(*pl3e);
+            l2t = map_domain_page(l2mfn);
             for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
                 if ( l2e_get_intpte(l2t[i]) != 0 )
                     break;
+            UNMAP_DOMAIN_PAGE(l2t);
             if ( i == L2_PAGETABLE_ENTRIES )
             {
                 /* Empty: zap the L3E and free the L2 page. */
@@ -5797,7 +5812,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(NULL, FLUSH_TLB_GLOBAL); /* flush before free */
-                free_xen_pagetable(l2t);
+                free_xen_pagetable_new(l2mfn);
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105802.202392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXM-0004JB-7B; Tue, 06 Apr 2021 11:06:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105802.202392; Tue, 06 Apr 2021 11: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 1lTjXM-0004J2-2L; Tue, 06 Apr 2021 11:06:24 +0000
Received: by outflank-mailman (input) for mailman id 105802;
 Tue, 06 Apr 2021 11:06:22 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXK-0004Hr-ST
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:22 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXK-00053A-KC; Tue, 06 Apr 2021 11:06:22 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXK-0002qD-2L; Tue, 06 Apr 2021 11: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=s1xYw5JRA0hX+hVyYpDhdvIQg52C43B8RF1tdty6+gI=; b=q
	rvO47LJf+Qx69S/KtsguvWew2ZpWZu6weBHn63fYk6YFjXcT+Ge+BULkx4s/rtdrm2wSly1NafdKP
	J79mwlq8crEPjt9GOzE4fq8gmJxmwhtonCmBaNt9Z6rnzC5p6pQp/f6IjABwCySb+QiO56TlbrfzV
	qJfq8CmpFC2ba8M8=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 04/13] x86_64/mm: introduce pl2e in paging_init
Date: Tue,  6 Apr 2021 12:05:52 +0100
Message-Id: <836cc0def0609a5f4495491b1c4994fc044cfbef.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

We will soon map and unmap pages in paging_init(). Introduce pl2e so
that we can use l2_ro_mpt to point to the page table itself.

No functional change.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v7:
- reword commit message.
---
 xen/arch/x86/x86_64/mm.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index bce1561e1a80..c5a47df01bde 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -496,7 +496,7 @@ void __init paging_init(void)
     unsigned long i, mpt_size, va;
     unsigned int n, memflags;
     l3_pgentry_t *l3_ro_mpt;
-    l2_pgentry_t *l2_ro_mpt = NULL;
+    l2_pgentry_t *pl2e = NULL, *l2_ro_mpt = NULL;
     struct page_info *l1_pg;
 
     /*
@@ -546,7 +546,7 @@ void __init paging_init(void)
             (L2_PAGETABLE_SHIFT - 3 + PAGE_SHIFT)));
 
         if ( cpu_has_page1gb &&
-             !((unsigned long)l2_ro_mpt & ~PAGE_MASK) &&
+             !((unsigned long)pl2e & ~PAGE_MASK) &&
              (mpt_size >> L3_PAGETABLE_SHIFT) > (i >> PAGETABLE_ORDER) )
         {
             unsigned int k, holes;
@@ -606,7 +606,7 @@ void __init paging_init(void)
             memset((void *)(RDWR_MPT_VIRT_START + (i << L2_PAGETABLE_SHIFT)),
                    0xFF, 1UL << L2_PAGETABLE_SHIFT);
         }
-        if ( !((unsigned long)l2_ro_mpt & ~PAGE_MASK) )
+        if ( !((unsigned long)pl2e & ~PAGE_MASK) )
         {
             if ( (l2_ro_mpt = alloc_xen_pagetable()) == NULL )
                 goto nomem;
@@ -614,13 +614,14 @@ void __init paging_init(void)
             l3e_write(&l3_ro_mpt[l3_table_offset(va)],
                       l3e_from_paddr(__pa(l2_ro_mpt),
                                      __PAGE_HYPERVISOR_RO | _PAGE_USER));
+            pl2e = l2_ro_mpt;
             ASSERT(!l2_table_offset(va));
         }
         /* NB. Cannot be GLOBAL: guest user mode should not see it. */
         if ( l1_pg )
-            l2e_write(l2_ro_mpt, l2e_from_page(
+            l2e_write(pl2e, l2e_from_page(
                 l1_pg, /*_PAGE_GLOBAL|*/_PAGE_PSE|_PAGE_USER|_PAGE_PRESENT));
-        l2_ro_mpt++;
+        pl2e++;
     }
 #undef CNT
 #undef MFN
@@ -632,6 +633,7 @@ void __init paging_init(void)
             goto nomem;
         compat_idle_pg_table_l2 = l2_ro_mpt;
         clear_page(l2_ro_mpt);
+        pl2e = l2_ro_mpt;
 
         /* Allocate and map the compatibility mode machine-to-phys table. */
         mpt_size = (mpt_size >> 1) + (1UL << (L2_PAGETABLE_SHIFT - 1));
@@ -649,7 +651,7 @@ void __init paging_init(void)
              sizeof(*compat_machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));
-    for ( i = 0; i < (mpt_size >> L2_PAGETABLE_SHIFT); i++, l2_ro_mpt++ )
+    for ( i = 0; i < (mpt_size >> L2_PAGETABLE_SHIFT); i++, pl2e++ )
     {
         memflags = MEMF_node(phys_to_nid(i <<
             (L2_PAGETABLE_SHIFT - 2 + PAGE_SHIFT)));
@@ -671,7 +673,7 @@ void __init paging_init(void)
                         (i << L2_PAGETABLE_SHIFT)),
                0xFF, 1UL << L2_PAGETABLE_SHIFT);
         /* NB. Cannot be GLOBAL as the ptes get copied into per-VM space. */
-        l2e_write(l2_ro_mpt, l2e_from_page(l1_pg, _PAGE_PSE|_PAGE_PRESENT));
+        l2e_write(pl2e, l2e_from_page(l1_pg, _PAGE_PSE|_PAGE_PRESENT));
     }
 #undef CNT
 #undef MFN
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105803.202404 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXO-0004Mo-HO; Tue, 06 Apr 2021 11:06:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105803.202404; Tue, 06 Apr 2021 11: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 1lTjXO-0004Ma-CS; Tue, 06 Apr 2021 11:06:26 +0000
Received: by outflank-mailman (input) for mailman id 105803;
 Tue, 06 Apr 2021 11:06:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXN-0004LF-1q
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:25 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXM-00053H-Sy; Tue, 06 Apr 2021 11:06:24 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXM-0002qD-DN; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=DhjC1F6SkPBikln4izzyHzb4RHHtmb3wCYV7VN5lv1s=; b=L
	oYPM4nf88I0nCVJj3cm+4fIRf+TGjHZNssBs4sXOnAfcyRegK8KSave6kScWHyYtRwb1ZWi7seoIy
	kRtATa7odCnpyvQDSvy9dvf3Ijv47kh8ih2u1l40KTanMGUmB+AQhPnuwrBzvpF1QOaH6qh8W8/oI
	yDJcV7DTeA3N9wZ0=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 05/13] x86_64/mm: switch to new APIs in paging_init
Date: Tue,  6 Apr 2021 12:05:53 +0100
Message-Id: <fd5ce586f12ed2aec08004a4b7216fc631c3d7dc.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Map and unmap pages instead of relying on the direct map.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v9:
- remove an unnecessary l3mfn variable.

Changed in v8:
- replace l3/2_ro_mpt_mfn with just mfn since their lifetimes do not
  overlap

Changed in v7:
- use the new alloc_map_clear_xen_pt() helper.
- move the unmap of pl3t up a bit.
- remove the unmaps in the nomem path.
---
 xen/arch/x86/x86_64/mm.c | 34 ++++++++++++++++++++--------------
 1 file changed, 20 insertions(+), 14 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index c5a47df01bde..da239f097703 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -498,6 +498,7 @@ void __init paging_init(void)
     l3_pgentry_t *l3_ro_mpt;
     l2_pgentry_t *pl2e = NULL, *l2_ro_mpt = NULL;
     struct page_info *l1_pg;
+    mfn_t mfn;
 
     /*
      * We setup the L3s for 1:1 mapping if host support memory hotplug
@@ -510,22 +511,22 @@ void __init paging_init(void)
         if ( !(l4e_get_flags(idle_pg_table[l4_table_offset(va)]) &
               _PAGE_PRESENT) )
         {
-            l3_pgentry_t *pl3t = alloc_xen_pagetable();
+            l3_pgentry_t *pl3t = alloc_map_clear_xen_pt(&mfn);
 
             if ( !pl3t )
                 goto nomem;
-            clear_page(pl3t);
+            UNMAP_DOMAIN_PAGE(pl3t);
             l4e_write(&idle_pg_table[l4_table_offset(va)],
-                      l4e_from_paddr(__pa(pl3t), __PAGE_HYPERVISOR_RW));
+                      l4e_from_mfn(mfn, __PAGE_HYPERVISOR_RW));
         }
     }
 
     /* Create user-accessible L2 directory to map the MPT for guests. */
-    if ( (l3_ro_mpt = alloc_xen_pagetable()) == NULL )
+    l3_ro_mpt = alloc_map_clear_xen_pt(&mfn);
+    if ( !l3_ro_mpt )
         goto nomem;
-    clear_page(l3_ro_mpt);
     l4e_write(&idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)],
-              l4e_from_paddr(__pa(l3_ro_mpt), __PAGE_HYPERVISOR_RO | _PAGE_USER));
+              l4e_from_mfn(mfn, __PAGE_HYPERVISOR_RO | _PAGE_USER));
 
     /*
      * Allocate and map the machine-to-phys table.
@@ -608,12 +609,14 @@ void __init paging_init(void)
         }
         if ( !((unsigned long)pl2e & ~PAGE_MASK) )
         {
-            if ( (l2_ro_mpt = alloc_xen_pagetable()) == NULL )
+            UNMAP_DOMAIN_PAGE(l2_ro_mpt);
+
+            l2_ro_mpt = alloc_map_clear_xen_pt(&mfn);
+            if ( !l2_ro_mpt )
                 goto nomem;
-            clear_page(l2_ro_mpt);
+
             l3e_write(&l3_ro_mpt[l3_table_offset(va)],
-                      l3e_from_paddr(__pa(l2_ro_mpt),
-                                     __PAGE_HYPERVISOR_RO | _PAGE_USER));
+                      l3e_from_mfn(mfn, __PAGE_HYPERVISOR_RO | _PAGE_USER));
             pl2e = l2_ro_mpt;
             ASSERT(!l2_table_offset(va));
         }
@@ -625,15 +628,18 @@ void __init paging_init(void)
     }
 #undef CNT
 #undef MFN
+    UNMAP_DOMAIN_PAGE(l2_ro_mpt);
+    UNMAP_DOMAIN_PAGE(l3_ro_mpt);
 
     /* Create user-accessible L2 directory to map the MPT for compat guests. */
     if ( opt_pv32 )
     {
-        if ( (l2_ro_mpt = alloc_xen_pagetable()) == NULL )
+        mfn = alloc_xen_pagetable_new();
+        if ( mfn_eq(mfn, INVALID_MFN) )
             goto nomem;
-        compat_idle_pg_table_l2 = l2_ro_mpt;
-        clear_page(l2_ro_mpt);
-        pl2e = l2_ro_mpt;
+        compat_idle_pg_table_l2 = map_domain_page_global(mfn);
+        clear_page(compat_idle_pg_table_l2);
+        pl2e = compat_idle_pg_table_l2;
 
         /* Allocate and map the compatibility mode machine-to-phys table. */
         mpt_size = (mpt_size >> 1) + (1UL << (L2_PAGETABLE_SHIFT - 1));
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105804.202416 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXR-0004Rt-5d; Tue, 06 Apr 2021 11:06:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105804.202416; Tue, 06 Apr 2021 11:06: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 1lTjXQ-0004Rc-Un; Tue, 06 Apr 2021 11:06:28 +0000
Received: by outflank-mailman (input) for mailman id 105804;
 Tue, 06 Apr 2021 11:06:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXP-0004PN-Bj
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:27 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXP-00053O-5g; Tue, 06 Apr 2021 11:06:27 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXO-0002qD-Oe; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=sENfbFuCu1+L3yhspWdtG93S3uUvA4Qf23dnlgpUlWw=; b=g
	6/uFwrP0ztAxMAycJ3CwgsiAbXrnNZIGYO1Ks0rZSQPbqqK+pIA3CBbFDGdyu+B3BzMPK1ZGVl4fg
	a/oSn/Xi7pVhWL5i9yi1BDuXHVds0AIrw0j2Ds3eKEjQjezcYTVSoWyxJYAm3Y6CMv3sUM3CpRdd4
	Yef6mOmhATHukP1c=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 06/13] x86_64/mm: switch to new APIs in setup_m2p_table
Date: Tue,  6 Apr 2021 12:05:54 +0100
Message-Id: <a556247b09ed587b38feae9c95bd9c8d70bf2b23.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

While doing so, avoid repetitive mapping of l2_ro_mpt by keeping it
across loops, and only unmap and map it when crossing 1G boundaries.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v8:
- re-structure if condition around l2_ro_mpt.
- reword the commit message.

Changed in v7:
- avoid repetitive mapping of l2_ro_mpt.
- edit commit message.
- switch to alloc_map_clear_xen_pt().
---
 xen/arch/x86/x86_64/mm.c | 32 +++++++++++++++++++-------------
 1 file changed, 19 insertions(+), 13 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index da239f097703..442f345b2a54 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -402,7 +402,8 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
 
     ASSERT(l4e_get_flags(idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)])
             & _PAGE_PRESENT);
-    l3_ro_mpt = l4e_to_l3e(idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)]);
+    l3_ro_mpt = map_l3t_from_l4e(
+                    idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)]);
 
     smap = (info->spfn & (~((1UL << (L2_PAGETABLE_SHIFT - 3)) -1)));
     emap = ((info->epfn + ((1UL << (L2_PAGETABLE_SHIFT - 3)) - 1 )) &
@@ -420,6 +421,10 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
     i = smap;
     while ( i < emap )
     {
+        if ( (RO_MPT_VIRT_START + i * sizeof(*machine_to_phys_mapping)) &
+             ((1UL << L3_PAGETABLE_SHIFT) - 1) )
+            UNMAP_DOMAIN_PAGE(l2_ro_mpt);
+
         switch ( m2p_mapped(i) )
         {
         case M2P_1G_MAPPED:
@@ -455,32 +460,31 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
 
             ASSERT(!(l3e_get_flags(l3_ro_mpt[l3_table_offset(va)]) &
                   _PAGE_PSE));
-            if ( l3e_get_flags(l3_ro_mpt[l3_table_offset(va)]) &
-              _PAGE_PRESENT )
-                l2_ro_mpt = l3e_to_l2e(l3_ro_mpt[l3_table_offset(va)]) +
-                  l2_table_offset(va);
+            if ( l2_ro_mpt )
+                /* nothing */;
+            else if ( l3e_get_flags(l3_ro_mpt[l3_table_offset(va)]) &
+                      _PAGE_PRESENT )
+                l2_ro_mpt = map_l2t_from_l3e(l3_ro_mpt[l3_table_offset(va)]);
             else
             {
-                l2_ro_mpt = alloc_xen_pagetable();
+                mfn_t l2_ro_mpt_mfn;
+
+                l2_ro_mpt = alloc_map_clear_xen_pt(&l2_ro_mpt_mfn);
                 if ( !l2_ro_mpt )
                 {
                     ret = -ENOMEM;
                     goto error;
                 }
 
-                clear_page(l2_ro_mpt);
                 l3e_write(&l3_ro_mpt[l3_table_offset(va)],
-                          l3e_from_paddr(__pa(l2_ro_mpt),
-                                         __PAGE_HYPERVISOR_RO | _PAGE_USER));
-                l2_ro_mpt += l2_table_offset(va);
+                          l3e_from_mfn(l2_ro_mpt_mfn,
+                                       __PAGE_HYPERVISOR_RO | _PAGE_USER));
             }
 
             /* NB. Cannot be GLOBAL: guest user mode should not see it. */
-            l2e_write(l2_ro_mpt, l2e_from_mfn(mfn,
+            l2e_write(&l2_ro_mpt[l2_table_offset(va)], l2e_from_mfn(mfn,
                    /*_PAGE_GLOBAL|*/_PAGE_PSE|_PAGE_USER|_PAGE_PRESENT));
         }
-        if ( !((unsigned long)l2_ro_mpt & ~PAGE_MASK) )
-            l2_ro_mpt = NULL;
         i += ( 1UL << (L2_PAGETABLE_SHIFT - 3));
     }
 #undef CNT
@@ -488,6 +492,8 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
 
     ret = setup_compat_m2p_table(info);
 error:
+    unmap_domain_page(l2_ro_mpt);
+    unmap_domain_page(l3_ro_mpt);
     return ret;
 }
 
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105805.202428 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXS-0004Uz-F3; Tue, 06 Apr 2021 11:06:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105805.202428; Tue, 06 Apr 2021 11: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 1lTjXS-0004Ul-9u; Tue, 06 Apr 2021 11:06:30 +0000
Received: by outflank-mailman (input) for mailman id 105805;
 Tue, 06 Apr 2021 11:06:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXQ-0004RG-LP
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:28 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXQ-00053V-FM; Tue, 06 Apr 2021 11:06:28 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXQ-0002qD-35; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=LFpwvb91UZUoU14PzilixiyXhwhbK+Ssko2aEV8OspU=; b=d
	tCkrh5Em0heROtY5F1o8msjHHMg4VJGceKwrKAfMdczs1c89z/qDBPzgak9d8od/844cCrLIfAx6C
	yGHve5ntFf3TfLz2dVb8jxEjowz0XkqOTXHh3rSPHzH5vzMV+ywXpvmBr2652xRGQB9gOdFd62I9M
	FSbtyBrcttub7geE=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.com,
	Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v9 07/13] efi: use new page table APIs in copy_mapping
Date: Tue,  6 Apr 2021 12:05:55 +0100
Message-Id: <7acd46b563df7c684342a467de1b703be1366a74.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v8:
- remove redundant commit message.
- unmap l3src based on va instead of mfn.
- re-structure if condition around l3dst.

Changed in v7:
- hoist l3 variables out of the loop to avoid repetitive mappings.
---
 xen/common/efi/boot.c | 28 +++++++++++++++++++++-------
 1 file changed, 21 insertions(+), 7 deletions(-)

diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 63e289ab8506..64b319d0013b 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -6,6 +6,7 @@
 #include <xen/compile.h>
 #include <xen/ctype.h>
 #include <xen/dmi.h>
+#include <xen/domain_page.h>
 #include <xen/init.h>
 #include <xen/keyhandler.h>
 #include <xen/lib.h>
@@ -1439,29 +1440,42 @@ static __init void copy_mapping(unsigned long mfn, unsigned long end,
                                                  unsigned long emfn))
 {
     unsigned long next;
+    l3_pgentry_t *l3src = NULL, *l3dst = NULL;
 
     for ( ; mfn < end; mfn = next )
     {
         l4_pgentry_t l4e = efi_l4_pgtable[l4_table_offset(mfn << PAGE_SHIFT)];
-        l3_pgentry_t *l3src, *l3dst;
         unsigned long va = (unsigned long)mfn_to_virt(mfn);
 
+        if ( !(mfn & ((1UL << (L4_PAGETABLE_SHIFT - PAGE_SHIFT)) - 1)) )
+            UNMAP_DOMAIN_PAGE(l3dst);
+        if ( !(va & ((1UL << L4_PAGETABLE_SHIFT) - 1)) )
+            UNMAP_DOMAIN_PAGE(l3src);
         next = mfn + (1UL << (L3_PAGETABLE_SHIFT - PAGE_SHIFT));
         if ( !is_valid(mfn, min(next, end)) )
             continue;
-        if ( !(l4e_get_flags(l4e) & _PAGE_PRESENT) )
+
+        if ( l3dst )
+            /* nothing */;
+        else if ( !(l4e_get_flags(l4e) & _PAGE_PRESENT) )
         {
-            l3dst = alloc_xen_pagetable();
+            mfn_t l3mfn;
+
+            l3dst = alloc_map_clear_xen_pt(&l3mfn);
             BUG_ON(!l3dst);
-            clear_page(l3dst);
             efi_l4_pgtable[l4_table_offset(mfn << PAGE_SHIFT)] =
-                l4e_from_paddr(virt_to_maddr(l3dst), __PAGE_HYPERVISOR);
+                l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR);
         }
         else
-            l3dst = l4e_to_l3e(l4e);
-        l3src = l4e_to_l3e(idle_pg_table[l4_table_offset(va)]);
+            l3dst = map_l3t_from_l4e(l4e);
+
+        if ( !l3src )
+            l3src = map_l3t_from_l4e(idle_pg_table[l4_table_offset(va)]);
         l3dst[l3_table_offset(mfn << PAGE_SHIFT)] = l3src[l3_table_offset(va)];
     }
+
+    unmap_domain_page(l3src);
+    unmap_domain_page(l3dst);
 }
 
 static bool __init ram_range_valid(unsigned long smfn, unsigned long emfn)
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105807.202440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXT-0004YK-Rj; Tue, 06 Apr 2021 11:06:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105807.202440; Tue, 06 Apr 2021 11: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 1lTjXT-0004Y6-NM; Tue, 06 Apr 2021 11:06:31 +0000
Received: by outflank-mailman (input) for mailman id 105807;
 Tue, 06 Apr 2021 11:06:30 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXS-0004WA-Qk
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:30 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXS-00053d-Jv; Tue, 06 Apr 2021 11:06:30 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXS-0002qD-6v; Tue, 06 Apr 2021 11: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=Bokmzti3DdezOdGif8N/czvpGiQImoEVzNR/uUs1QN8=; b=A
	vngtYDbyG7tFo8wyRVUrNeuWuFv7P8+SOiyYGBDp/Mf3zYscyUoh9KJ+nAXZyA4H9ZNENxy1/uQNE
	I/vxLqgkNrZxoYTqZkO7f/ziaKzsgKuFnSYJcEHdXurd5MIZVY5UkeUlXzPXlfScLaFbEuIisImIu
	zI30WG7B2NnaeYoE=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 08/13] efi: switch to new APIs in EFI code
Date: Tue,  6 Apr 2021 12:05:56 +0100
Message-Id: <e428f2ee146ae58f153f9dad1105649c70f60e69.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v7:
- add blank line after declaration.
- rename efi_l4_pgtable into efi_l4t.
- pass the mapped efi_l4t to copy_mapping() instead of map it again.
- use the alloc_map_clear_xen_pt() API.
- unmap pl3e, pl2e, l1t earlier.
---
 xen/arch/x86/efi/runtime.h | 13 ++++++---
 xen/common/efi/boot.c      | 55 ++++++++++++++++++++++----------------
 xen/common/efi/efi.h       |  3 ++-
 xen/common/efi/runtime.c   |  8 +++---
 4 files changed, 48 insertions(+), 31 deletions(-)

diff --git a/xen/arch/x86/efi/runtime.h b/xen/arch/x86/efi/runtime.h
index d9eb8f5c270f..77866c5f2178 100644
--- a/xen/arch/x86/efi/runtime.h
+++ b/xen/arch/x86/efi/runtime.h
@@ -1,12 +1,19 @@
+#include <xen/domain_page.h>
+#include <xen/mm.h>
 #include <asm/atomic.h>
 #include <asm/mc146818rtc.h>
 
 #ifndef COMPAT
-l4_pgentry_t *__read_mostly efi_l4_pgtable;
+mfn_t __read_mostly efi_l4_mfn = INVALID_MFN_INITIALIZER;
 
 void efi_update_l4_pgtable(unsigned int l4idx, l4_pgentry_t l4e)
 {
-    if ( efi_l4_pgtable )
-        l4e_write(efi_l4_pgtable + l4idx, l4e);
+    if ( !mfn_eq(efi_l4_mfn, INVALID_MFN) )
+    {
+        l4_pgentry_t *efi_l4t = map_domain_page(efi_l4_mfn);
+
+        l4e_write(efi_l4t + l4idx, l4e);
+        unmap_domain_page(efi_l4t);
+    }
 }
 #endif
diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 64b319d0013b..f21ad5030f41 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -1437,14 +1437,15 @@ custom_param("efi", parse_efi_param);
 
 static __init void copy_mapping(unsigned long mfn, unsigned long end,
                                 bool (*is_valid)(unsigned long smfn,
-                                                 unsigned long emfn))
+                                                 unsigned long emfn),
+                                l4_pgentry_t *efi_l4t)
 {
     unsigned long next;
     l3_pgentry_t *l3src = NULL, *l3dst = NULL;
 
     for ( ; mfn < end; mfn = next )
     {
-        l4_pgentry_t l4e = efi_l4_pgtable[l4_table_offset(mfn << PAGE_SHIFT)];
+        l4_pgentry_t l4e = efi_l4t[l4_table_offset(mfn << PAGE_SHIFT)];
         unsigned long va = (unsigned long)mfn_to_virt(mfn);
 
         if ( !(mfn & ((1UL << (L4_PAGETABLE_SHIFT - PAGE_SHIFT)) - 1)) )
@@ -1463,7 +1464,7 @@ static __init void copy_mapping(unsigned long mfn, unsigned long end,
 
             l3dst = alloc_map_clear_xen_pt(&l3mfn);
             BUG_ON(!l3dst);
-            efi_l4_pgtable[l4_table_offset(mfn << PAGE_SHIFT)] =
+            efi_l4t[l4_table_offset(mfn << PAGE_SHIFT)] =
                 l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR);
         }
         else
@@ -1496,6 +1497,7 @@ static bool __init rt_range_valid(unsigned long smfn, unsigned long emfn)
 void __init efi_init_memory(void)
 {
     unsigned int i;
+    l4_pgentry_t *efi_l4t;
     struct rt_extra {
         struct rt_extra *next;
         unsigned long smfn, emfn;
@@ -1610,11 +1612,10 @@ void __init efi_init_memory(void)
      * Set up 1:1 page tables for runtime calls. See SetVirtualAddressMap() in
      * efi_exit_boot().
      */
-    efi_l4_pgtable = alloc_xen_pagetable();
-    BUG_ON(!efi_l4_pgtable);
-    clear_page(efi_l4_pgtable);
+    efi_l4t = alloc_map_clear_xen_pt(&efi_l4_mfn);
+    BUG_ON(!efi_l4t);
 
-    copy_mapping(0, max_page, ram_range_valid);
+    copy_mapping(0, max_page, ram_range_valid, efi_l4t);
 
     /* Insert non-RAM runtime mappings inside the direct map. */
     for ( i = 0; i < efi_memmap_size; i += efi_mdesc_size )
@@ -1630,58 +1631,64 @@ void __init efi_init_memory(void)
             copy_mapping(PFN_DOWN(desc->PhysicalStart),
                          PFN_UP(desc->PhysicalStart +
                                 (desc->NumberOfPages << EFI_PAGE_SHIFT)),
-                         rt_range_valid);
+                         rt_range_valid, efi_l4t);
     }
 
     /* Insert non-RAM runtime mappings outside of the direct map. */
     while ( (extra = extra_head) != NULL )
     {
         unsigned long addr = extra->smfn << PAGE_SHIFT;
-        l4_pgentry_t l4e = efi_l4_pgtable[l4_table_offset(addr)];
+        l4_pgentry_t l4e = efi_l4t[l4_table_offset(addr)];
         l3_pgentry_t *pl3e;
         l2_pgentry_t *pl2e;
         l1_pgentry_t *l1t;
 
         if ( !(l4e_get_flags(l4e) & _PAGE_PRESENT) )
         {
-            pl3e = alloc_xen_pagetable();
+            mfn_t l3mfn;
+
+            pl3e = alloc_map_clear_xen_pt(&l3mfn);
             BUG_ON(!pl3e);
-            clear_page(pl3e);
-            efi_l4_pgtable[l4_table_offset(addr)] =
-                l4e_from_paddr(virt_to_maddr(pl3e), __PAGE_HYPERVISOR);
+            efi_l4t[l4_table_offset(addr)] =
+                l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR);
         }
         else
-            pl3e = l4e_to_l3e(l4e);
+            pl3e = map_l3t_from_l4e(l4e);
         pl3e += l3_table_offset(addr);
         if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
         {
-            pl2e = alloc_xen_pagetable();
+            mfn_t l2mfn;
+
+            pl2e = alloc_map_clear_xen_pt(&l2mfn);
             BUG_ON(!pl2e);
-            clear_page(pl2e);
-            *pl3e = l3e_from_paddr(virt_to_maddr(pl2e), __PAGE_HYPERVISOR);
+            *pl3e = l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR);
         }
         else
         {
             BUG_ON(l3e_get_flags(*pl3e) & _PAGE_PSE);
-            pl2e = l3e_to_l2e(*pl3e);
+            pl2e = map_l2t_from_l3e(*pl3e);
         }
+        UNMAP_DOMAIN_PAGE(pl3e);
         pl2e += l2_table_offset(addr);
         if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
         {
-            l1t = alloc_xen_pagetable();
+            mfn_t l1mfn;
+
+            l1t = alloc_map_clear_xen_pt(&l1mfn);
             BUG_ON(!l1t);
-            clear_page(l1t);
-            *pl2e = l2e_from_paddr(virt_to_maddr(l1t), __PAGE_HYPERVISOR);
+            *pl2e = l2e_from_mfn(l1mfn, __PAGE_HYPERVISOR);
         }
         else
         {
             BUG_ON(l2e_get_flags(*pl2e) & _PAGE_PSE);
-            l1t = l2e_to_l1e(*pl2e);
+            l1t = map_l1t_from_l2e(*pl2e);
         }
+        UNMAP_DOMAIN_PAGE(pl2e);
         for ( i = l1_table_offset(addr);
               i < L1_PAGETABLE_ENTRIES && extra->smfn < extra->emfn;
               ++i, ++extra->smfn )
             l1t[i] = l1e_from_pfn(extra->smfn, extra->prot);
+        UNMAP_DOMAIN_PAGE(l1t);
 
         if ( extra->smfn == extra->emfn )
         {
@@ -1693,6 +1700,8 @@ void __init efi_init_memory(void)
     /* Insert Xen mappings. */
     for ( i = l4_table_offset(HYPERVISOR_VIRT_START);
           i < l4_table_offset(DIRECTMAP_VIRT_END); ++i )
-        efi_l4_pgtable[i] = idle_pg_table[i];
+        efi_l4t[i] = idle_pg_table[i];
+
+    unmap_domain_page(efi_l4t);
 }
 #endif
diff --git a/xen/common/efi/efi.h b/xen/common/efi/efi.h
index 663a8b5000d9..c9aa65d506b1 100644
--- a/xen/common/efi/efi.h
+++ b/xen/common/efi/efi.h
@@ -6,6 +6,7 @@
 #include <efi/eficapsule.h>
 #include <efi/efiapi.h>
 #include <xen/efi.h>
+#include <xen/mm.h>
 #include <xen/spinlock.h>
 #include <asm/page.h>
 
@@ -29,7 +30,7 @@ extern UINTN efi_memmap_size, efi_mdesc_size;
 extern void *efi_memmap;
 
 #ifdef CONFIG_X86
-extern l4_pgentry_t *efi_l4_pgtable;
+extern mfn_t efi_l4_mfn;
 #endif
 
 extern const struct efi_pci_rom *efi_pci_roms;
diff --git a/xen/common/efi/runtime.c b/xen/common/efi/runtime.c
index 95367694b5f3..375b94229e13 100644
--- a/xen/common/efi/runtime.c
+++ b/xen/common/efi/runtime.c
@@ -85,7 +85,7 @@ struct efi_rs_state efi_rs_enter(void)
     static const u32 mxcsr = MXCSR_DEFAULT;
     struct efi_rs_state state = { .cr3 = 0 };
 
-    if ( !efi_l4_pgtable )
+    if ( mfn_eq(efi_l4_mfn, INVALID_MFN) )
         return state;
 
     state.cr3 = read_cr3();
@@ -111,7 +111,7 @@ struct efi_rs_state efi_rs_enter(void)
         lgdt(&gdt_desc);
     }
 
-    switch_cr3_cr4(virt_to_maddr(efi_l4_pgtable), read_cr4());
+    switch_cr3_cr4(mfn_to_maddr(efi_l4_mfn), read_cr4());
 
     return state;
 }
@@ -140,9 +140,9 @@ void efi_rs_leave(struct efi_rs_state *state)
 
 bool efi_rs_using_pgtables(void)
 {
-    return efi_l4_pgtable &&
+    return !mfn_eq(efi_l4_mfn, INVALID_MFN) &&
            (smp_processor_id() == efi_rs_on_cpu) &&
-           (read_cr3() == virt_to_maddr(efi_l4_pgtable));
+           (read_cr3() == mfn_to_maddr(efi_l4_mfn));
 }
 
 unsigned long efi_get_time(void)
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:06:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:06:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105808.202452 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjXW-0004dy-Br; Tue, 06 Apr 2021 11:06:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105808.202452; Tue, 06 Apr 2021 11: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 1lTjXW-0004dl-61; Tue, 06 Apr 2021 11:06:34 +0000
Received: by outflank-mailman (input) for mailman id 105808;
 Tue, 06 Apr 2021 11:06:33 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjXU-0004bL-TE
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:06:32 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXU-00053k-OF; Tue, 06 Apr 2021 11:06:32 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXU-0002qD-7v; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=WyOLTWy30UAQ1i+d+4Gv5h1nt743T4iqL5WX21fKHJs=; b=F
	rbB/vL/o0AwCfSeS1ZtEsipXn5nqwQTNJcXuBgbzqVmr1GKCYDdjW2yvZjW7WAnMjjOrKDI8Uh0a8
	swwf7Tff+tN0aS2yZbNrnH+60UGjC7JW5VdKYHEyawpeI6oJ+W6Uy+k428Z0GbXZKYTUNni7e8ckI
	V247oIHt5qEaWkUc=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 09/13] x86/smpboot: add exit path for clone_mapping()
Date: Tue,  6 Apr 2021 12:05:57 +0100
Message-Id: <1277cb7cb71edbb03a13f9db8fe07810e68c7248.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

We will soon need to clean up page table mappings in the exit path.

No functional change.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>

---
Changed in v7:
- edit commit message.
- begin with rc = 0 and set it to -ENOMEM ahead of if().
---
 xen/arch/x86/smpboot.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index 82c1012e892f..e90c4dfa8a88 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -696,6 +696,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     l3_pgentry_t *pl3e;
     l2_pgentry_t *pl2e;
     l1_pgentry_t *pl1e;
+    int rc = 0;
 
     /*
      * Sanity check 'linear'.  We only allow cloning from the Xen virtual
@@ -736,7 +737,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
             pl1e = l2e_to_l1e(*pl2e) + l1_table_offset(linear);
             flags = l1e_get_flags(*pl1e);
             if ( !(flags & _PAGE_PRESENT) )
-                return 0;
+                goto out;
             pfn = l1e_get_pfn(*pl1e);
         }
     }
@@ -744,8 +745,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     if ( !(root_get_flags(rpt[root_table_offset(linear)]) & _PAGE_PRESENT) )
     {
         pl3e = alloc_xen_pagetable();
+        rc = -ENOMEM;
         if ( !pl3e )
-            return -ENOMEM;
+            goto out;
         clear_page(pl3e);
         l4e_write(&rpt[root_table_offset(linear)],
                   l4e_from_paddr(__pa(pl3e), __PAGE_HYPERVISOR));
@@ -758,8 +760,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
     {
         pl2e = alloc_xen_pagetable();
+        rc = -ENOMEM;
         if ( !pl2e )
-            return -ENOMEM;
+            goto out;
         clear_page(pl2e);
         l3e_write(pl3e, l3e_from_paddr(__pa(pl2e), __PAGE_HYPERVISOR));
     }
@@ -774,8 +777,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
     {
         pl1e = alloc_xen_pagetable();
+        rc = -ENOMEM;
         if ( !pl1e )
-            return -ENOMEM;
+            goto out;
         clear_page(pl1e);
         l2e_write(pl2e, l2e_from_paddr(__pa(pl1e), __PAGE_HYPERVISOR));
     }
@@ -796,7 +800,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     else
         l1e_write(pl1e, l1e_from_pfn(pfn, flags));
 
-    return 0;
+    rc = 0;
+ out:
+    return rc;
 }
 
 DEFINE_PER_CPU(root_pgentry_t *, root_pgt);
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:14:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:14:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105860.202478 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjfM-00069g-3d; Tue, 06 Apr 2021 11:14:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105860.202478; Tue, 06 Apr 2021 11: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 1lTjfL-00069N-S0; Tue, 06 Apr 2021 11:14:39 +0000
Received: by outflank-mailman (input) for mailman id 105860;
 Tue, 06 Apr 2021 11:14:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjfK-00068A-UM
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:14:38 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjfK-0005DB-Mq; Tue, 06 Apr 2021 11:14:38 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXc-0002qD-Rp; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=sBNlkWTy5F/z7jpVrLYtyYD1UdrsEQWq0TNXWq9eqMA=; b=5
	u/aLFNiJgIVn0nb6QF6Zxs0xpUSfMdldRkBykCkHMoA9uPAw8sdhvmEDgyyDqc00Je3NYAhM7MQBN
	lk3NKmfd/EdHDMHBnC0w2fb30/NmPcf6G1c454faNSyjScS21AReZI0pljFqj4ghAOSj8acKa9Qr5
	o7i4wvBcJFOcjPkA=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 13/13] x86/mm: drop _new suffix for page table APIs
Date: Tue,  6 Apr 2021 12:06:01 +0100
Message-Id: <c6b380a84218b473adee349b2730bc8cbc18cdaf.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

No functional change.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/x86/mm.c        | 44 ++++++++++++++++++++--------------------
 xen/arch/x86/smpboot.c   |  6 +++---
 xen/arch/x86/x86_64/mm.c |  2 +-
 xen/include/asm-x86/mm.h |  4 ++--
 4 files changed, 28 insertions(+), 28 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 03362448bd05..b90c2d5f8911 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -369,7 +369,7 @@ void __init arch_init_memory(void)
             ASSERT(root_pgt_pv_xen_slots < ROOT_PAGETABLE_PV_XEN_SLOTS);
             if ( l4_table_offset(split_va) == l4_table_offset(split_va - 1) )
             {
-                mfn_t l3mfn = alloc_xen_pagetable_new();
+                mfn_t l3mfn = alloc_xen_pagetable();
 
                 if ( !mfn_eq(l3mfn, INVALID_MFN) )
                 {
@@ -4881,7 +4881,7 @@ int mmcfg_intercept_write(
  * them. The caller must check whether the allocation has succeeded, and only
  * pass valid MFNs to map_domain_page().
  */
-mfn_t alloc_xen_pagetable_new(void)
+mfn_t alloc_xen_pagetable(void)
 {
     if ( system_state != SYS_STATE_early_boot )
     {
@@ -4895,7 +4895,7 @@ mfn_t alloc_xen_pagetable_new(void)
 }
 
 /* mfn can be INVALID_MFN */
-void free_xen_pagetable_new(mfn_t mfn)
+void free_xen_pagetable(mfn_t mfn)
 {
     if ( system_state != SYS_STATE_early_boot && !mfn_eq(mfn, INVALID_MFN) )
         free_domheap_page(mfn_to_page(mfn));
@@ -4903,7 +4903,7 @@ void free_xen_pagetable_new(mfn_t mfn)
 
 void *alloc_map_clear_xen_pt(mfn_t *pmfn)
 {
-    mfn_t mfn = alloc_xen_pagetable_new();
+    mfn_t mfn = alloc_xen_pagetable();
     void *ret;
 
     if ( mfn_eq(mfn, INVALID_MFN) )
@@ -4949,7 +4949,7 @@ static l3_pgentry_t *virt_to_xen_l3e(unsigned long v)
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        free_xen_pagetable_new(l3mfn);
+        free_xen_pagetable(l3mfn);
     }
 
     return map_l3t_from_l4e(*pl4e) + l3_table_offset(v);
@@ -4984,7 +4984,7 @@ static l2_pgentry_t *virt_to_xen_l2e(unsigned long v)
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        free_xen_pagetable_new(l2mfn);
+        free_xen_pagetable(l2mfn);
     }
 
     BUG_ON(l3e_get_flags(*pl3e) & _PAGE_PSE);
@@ -5023,7 +5023,7 @@ l1_pgentry_t *virt_to_xen_l1e(unsigned long v)
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        free_xen_pagetable_new(l1mfn);
+        free_xen_pagetable(l1mfn);
     }
 
     BUG_ON(l2e_get_flags(*pl2e) & _PAGE_PSE);
@@ -5210,10 +5210,10 @@ int map_pages_to_xen(
                         ol2e = l2t[i];
                         if ( (l2e_get_flags(ol2e) & _PAGE_PRESENT) &&
                              !(l2e_get_flags(ol2e) & _PAGE_PSE) )
-                            free_xen_pagetable_new(l2e_get_mfn(ol2e));
+                            free_xen_pagetable(l2e_get_mfn(ol2e));
                     }
                     unmap_domain_page(l2t);
-                    free_xen_pagetable_new(l3e_get_mfn(ol3e));
+                    free_xen_pagetable(l3e_get_mfn(ol3e));
                 }
             }
 
@@ -5252,7 +5252,7 @@ int map_pages_to_xen(
                 continue;
             }
 
-            l2mfn = alloc_xen_pagetable_new();
+            l2mfn = alloc_xen_pagetable();
             if ( mfn_eq(l2mfn, INVALID_MFN) )
                 goto out;
 
@@ -5280,7 +5280,7 @@ int map_pages_to_xen(
                 spin_unlock(&map_pgdir_lock);
             flush_area(virt, flush_flags);
 
-            free_xen_pagetable_new(l2mfn);
+            free_xen_pagetable(l2mfn);
         }
 
         pl2e = virt_to_xen_l2e(virt);
@@ -5314,7 +5314,7 @@ int map_pages_to_xen(
                         flush_flags(l1e_get_flags(l1t[i]));
                     flush_area(virt, flush_flags);
                     unmap_domain_page(l1t);
-                    free_xen_pagetable_new(l2e_get_mfn(ol2e));
+                    free_xen_pagetable(l2e_get_mfn(ol2e));
                 }
             }
 
@@ -5359,7 +5359,7 @@ int map_pages_to_xen(
                     goto check_l3;
                 }
 
-                l1mfn = alloc_xen_pagetable_new();
+                l1mfn = alloc_xen_pagetable();
                 if ( mfn_eq(l1mfn, INVALID_MFN) )
                     goto out;
 
@@ -5386,7 +5386,7 @@ int map_pages_to_xen(
                     spin_unlock(&map_pgdir_lock);
                 flush_area(virt, flush_flags);
 
-                free_xen_pagetable_new(l1mfn);
+                free_xen_pagetable(l1mfn);
             }
 
             pl1e  = map_l1t_from_l2e(*pl2e) + l1_table_offset(virt);
@@ -5452,7 +5452,7 @@ int map_pages_to_xen(
                     flush_area(virt - PAGE_SIZE,
                                FLUSH_TLB_GLOBAL |
                                FLUSH_ORDER(PAGETABLE_ORDER));
-                    free_xen_pagetable_new(l2e_get_mfn(ol2e));
+                    free_xen_pagetable(l2e_get_mfn(ol2e));
                 }
                 else if ( locking )
                     spin_unlock(&map_pgdir_lock);
@@ -5503,7 +5503,7 @@ int map_pages_to_xen(
                 flush_area(virt - PAGE_SIZE,
                            FLUSH_TLB_GLOBAL |
                            FLUSH_ORDER(2*PAGETABLE_ORDER));
-                free_xen_pagetable_new(l3e_get_mfn(ol3e));
+                free_xen_pagetable(l3e_get_mfn(ol3e));
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
@@ -5602,7 +5602,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             }
 
             /* PAGE1GB: shatter the superpage and fall through. */
-            l2mfn = alloc_xen_pagetable_new();
+            l2mfn = alloc_xen_pagetable();
             if ( mfn_eq(l2mfn, INVALID_MFN) )
                 goto out;
 
@@ -5626,7 +5626,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             if ( locking )
                 spin_unlock(&map_pgdir_lock);
 
-            free_xen_pagetable_new(l2mfn);
+            free_xen_pagetable(l2mfn);
         }
 
         /*
@@ -5662,7 +5662,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             {
                 l1_pgentry_t *l1t;
                 /* PSE: shatter the superpage and try again. */
-                mfn_t l1mfn = alloc_xen_pagetable_new();
+                mfn_t l1mfn = alloc_xen_pagetable();
 
                 if ( mfn_eq(l1mfn, INVALID_MFN) )
                     goto out;
@@ -5686,7 +5686,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
 
-                free_xen_pagetable_new(l1mfn);
+                free_xen_pagetable(l1mfn);
             }
         }
         else
@@ -5753,7 +5753,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(NULL, FLUSH_TLB_GLOBAL); /* flush before free */
-                free_xen_pagetable_new(l1mfn);
+                free_xen_pagetable(l1mfn);
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
@@ -5798,7 +5798,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(NULL, FLUSH_TLB_GLOBAL); /* flush before free */
-                free_xen_pagetable_new(l2mfn);
+                free_xen_pagetable(l2mfn);
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index b91d1f37e223..8659220416aa 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -922,15 +922,15 @@ static void cleanup_cpu_root_pgt(unsigned int cpu)
                     continue;
 
                 ASSERT(!(l2e_get_flags(l2t[i2]) & _PAGE_PSE));
-                free_xen_pagetable_new(l2e_get_mfn(l2t[i2]));
+                free_xen_pagetable(l2e_get_mfn(l2t[i2]));
             }
 
             unmap_domain_page(l2t);
-            free_xen_pagetable_new(l2mfn);
+            free_xen_pagetable(l2mfn);
         }
 
         unmap_domain_page(l3t);
-        free_xen_pagetable_new(l3mfn);
+        free_xen_pagetable(l3mfn);
     }
 
     free_xenheap_page(rpt);
diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index 442f345b2a54..579ffa54c982 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -640,7 +640,7 @@ void __init paging_init(void)
     /* Create user-accessible L2 directory to map the MPT for compat guests. */
     if ( opt_pv32 )
     {
-        mfn = alloc_xen_pagetable_new();
+        mfn = alloc_xen_pagetable();
         if ( mfn_eq(mfn, INVALID_MFN) )
             goto nomem;
         compat_idle_pg_table_l2 = map_domain_page_global(mfn);
diff --git a/xen/include/asm-x86/mm.h b/xen/include/asm-x86/mm.h
index b05ede721377..b2580c9ad073 100644
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -573,8 +573,8 @@ int vcpu_destroy_pagetables(struct vcpu *);
 void *do_page_walk(struct vcpu *v, unsigned long addr);
 
 /* Allocator functions for Xen pagetables. */
-mfn_t alloc_xen_pagetable_new(void);
-void free_xen_pagetable_new(mfn_t mfn);
+mfn_t alloc_xen_pagetable(void);
+void free_xen_pagetable(mfn_t mfn);
 void *alloc_map_clear_xen_pt(mfn_t *pmfn);
 
 l1_pgentry_t *virt_to_xen_l1e(unsigned long v);
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:14:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:14:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105859.202471 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjfL-00068x-Oi; Tue, 06 Apr 2021 11:14:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105859.202471; Tue, 06 Apr 2021 11:14:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjfL-00068l-I7; Tue, 06 Apr 2021 11:14:39 +0000
Received: by outflank-mailman (input) for mailman id 105859;
 Tue, 06 Apr 2021 11:14:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjfK-000680-P3
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:14:38 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjfK-0005D9-JO; Tue, 06 Apr 2021 11:14:38 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXY-0002qD-NN; Tue, 06 Apr 2021 11: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=+kGlUuzwT+sbpOTQzUJ4YhmOCDHflLj7pEbE8cUbSww=; b=3
	BcsruzTfPLWLzHMFQd5uoEJPijKW2T57w2g1Oh+0KXo0aBf3mHJBepbHErZrvr5kJtQmBELbD7Xw7
	7qBlOVqvL5SNVSNgGHIgTF405NOpDpmsko7FmjYGNIiNC4Vk1b3cdRP2VBxmk2C03Z33G/4+0YZkA
	7dGSVu37lmcYHieY=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 11/13] x86/mm: drop old page table APIs
Date: Tue,  6 Apr 2021 12:05:59 +0100
Message-Id: <89e67a12a1037a7f897bb4d24eb05399e5f7e441.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Hongyan Xia <hongyxia@amazon.com>

Two sets of old APIs, alloc/free_xen_pagetable() and lXe_to_lYe(), are
now dropped to avoid the dependency on direct map.

There are two special cases which still have not been re-written into
the new APIs, thus need special treatment:

rpt in smpboot.c cannot use ephemeral mappings yet. The problem is that
rpt is read and written in context switch code, but the mapping
infrastructure is NOT context-switch-safe, meaning we cannot map rpt in
one domain and unmap in another. Before the mapping infrastructure
supports context switches, rpt has to be globally mapped.

Also, lXe_to_lYe() during Xen image relocation cannot be converted into
map/unmap pairs. We cannot hold on to mappings while the mapping
infrastructure is being relocated! It is enough to remove the direct map
in the second e820 pass, so we still use the direct map (<4GiB) in Xen
relocation (which is during the first e820 pass).

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/x86/mm.c          | 14 --------------
 xen/arch/x86/setup.c       |  4 ++--
 xen/arch/x86/smpboot.c     |  4 ++--
 xen/include/asm-x86/mm.h   |  2 --
 xen/include/asm-x86/page.h |  5 -----
 5 files changed, 4 insertions(+), 25 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index ababfffb3afc..a1ea1835d49b 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -4875,20 +4875,6 @@ int mmcfg_intercept_write(
     return X86EMUL_OKAY;
 }
 
-void *alloc_xen_pagetable(void)
-{
-    mfn_t mfn = alloc_xen_pagetable_new();
-
-    return mfn_eq(mfn, INVALID_MFN) ? NULL : mfn_to_virt(mfn_x(mfn));
-}
-
-void free_xen_pagetable(void *v)
-{
-    mfn_t mfn = v ? virt_to_mfn(v) : INVALID_MFN;
-
-    free_xen_pagetable_new(mfn);
-}
-
 /*
  * For these PTE APIs, the caller must follow the alloc-map-unmap-free
  * lifecycle, which means explicitly mapping the PTE pages before accessing
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index 68454df8ed67..84f015bfa949 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -1245,7 +1245,7 @@ void __init noreturn __start_xen(unsigned long mbi_p)
                     continue;
                 *pl4e = l4e_from_intpte(l4e_get_intpte(*pl4e) +
                                         xen_phys_start);
-                pl3e = l4e_to_l3e(*pl4e);
+                pl3e = __va(l4e_get_paddr(*pl4e));
                 for ( j = 0; j < L3_PAGETABLE_ENTRIES; j++, pl3e++ )
                 {
                     /* Not present, 1GB mapping, or already relocated? */
@@ -1255,7 +1255,7 @@ void __init noreturn __start_xen(unsigned long mbi_p)
                         continue;
                     *pl3e = l3e_from_intpte(l3e_get_intpte(*pl3e) +
                                             xen_phys_start);
-                    pl2e = l3e_to_l2e(*pl3e);
+                    pl2e = __va(l3e_get_paddr(*pl3e));
                     for ( k = 0; k < L2_PAGETABLE_ENTRIES; k++, pl2e++ )
                     {
                         /* Not present, PSE, or already relocated? */
diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index 9c5323977b25..b91d1f37e223 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -830,7 +830,7 @@ static int setup_cpu_root_pgt(unsigned int cpu)
     if ( !opt_xpti_hwdom && !opt_xpti_domu )
         return 0;
 
-    rpt = alloc_xen_pagetable();
+    rpt = alloc_xenheap_page();
     if ( !rpt )
         return -ENOMEM;
 
@@ -933,7 +933,7 @@ static void cleanup_cpu_root_pgt(unsigned int cpu)
         free_xen_pagetable_new(l3mfn);
     }
 
-    free_xen_pagetable(rpt);
+    free_xenheap_page(rpt);
 
     /* Also zap the stub mapping for this CPU. */
     if ( stub_linear )
diff --git a/xen/include/asm-x86/mm.h b/xen/include/asm-x86/mm.h
index 681aac5b7ac2..b05ede721377 100644
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -573,8 +573,6 @@ int vcpu_destroy_pagetables(struct vcpu *);
 void *do_page_walk(struct vcpu *v, unsigned long addr);
 
 /* Allocator functions for Xen pagetables. */
-void *alloc_xen_pagetable(void);
-void free_xen_pagetable(void *v);
 mfn_t alloc_xen_pagetable_new(void);
 void free_xen_pagetable_new(mfn_t mfn);
 void *alloc_map_clear_xen_pt(mfn_t *pmfn);
diff --git a/xen/include/asm-x86/page.h b/xen/include/asm-x86/page.h
index 4c7f2cb70c69..1d080cffbe84 100644
--- a/xen/include/asm-x86/page.h
+++ b/xen/include/asm-x86/page.h
@@ -180,11 +180,6 @@ static inline l4_pgentry_t l4e_from_paddr(paddr_t pa, unsigned int flags)
 #define l4e_has_changed(x,y,flags) \
     ( !!(((x).l4 ^ (y).l4) & ((PADDR_MASK&PAGE_MASK)|put_pte_flags(flags))) )
 
-/* Pagetable walking. */
-#define l2e_to_l1e(x)              ((l1_pgentry_t *)__va(l2e_get_paddr(x)))
-#define l3e_to_l2e(x)              ((l2_pgentry_t *)__va(l3e_get_paddr(x)))
-#define l4e_to_l3e(x)              ((l3_pgentry_t *)__va(l4e_get_paddr(x)))
-
 #define map_l1t_from_l2e(x)        (l1_pgentry_t *)map_domain_page(l2e_get_mfn(x))
 #define map_l2t_from_l3e(x)        (l2_pgentry_t *)map_domain_page(l3e_get_mfn(x))
 #define map_l3t_from_l4e(x)        (l3_pgentry_t *)map_domain_page(l4e_get_mfn(x))
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:14:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:14:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105861.202492 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjfM-0006AT-Ip; Tue, 06 Apr 2021 11:14:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105861.202492; Tue, 06 Apr 2021 11: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 1lTjfM-0006AI-9N; Tue, 06 Apr 2021 11:14:40 +0000
Received: by outflank-mailman (input) for mailman id 105861;
 Tue, 06 Apr 2021 11:14:39 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjfL-00068F-3A
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:14:39 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjfK-0005DF-PH; Tue, 06 Apr 2021 11:14:38 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXW-0002qD-Ef; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=ghfYvoztMTHTZUjJZnAAYnP+07ha7ktJ9bkRKWPH3C0=; b=p
	dpfQAPuqvalw97DlIN6QlIium63XHVzzicF8LwVLyNlh0Hi8+DeQWCo1P5ENQK2J2tbVPU7lqY642
	2z7mlsjHc06h4v5cLRU86NpLqLDbGmUadgIYcx54wwpem6xk2ItsgUB4O1uruBCrX3tAoganK5McH
	R699Sw+0+P8FU5CY=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 10/13] x86/smpboot: switch clone_mapping() to new APIs
Date: Tue,  6 Apr 2021 12:05:58 +0100
Message-Id: <d55bcecc33df5b277bc3e1dbb48826bc816d8d10.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v7:
- change patch title
- remove initialiser of pl3e.
- combine the initialisation of pl3e into a single assignment.
- use the new alloc_map_clear() helper.
- use the normal map_domain_page() in the error path.
---
 xen/arch/x86/smpboot.c | 44 ++++++++++++++++++++++++++----------------
 1 file changed, 27 insertions(+), 17 deletions(-)

diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index e90c4dfa8a88..9c5323977b25 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -694,8 +694,8 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     unsigned long linear = (unsigned long)ptr, pfn;
     unsigned int flags;
     l3_pgentry_t *pl3e;
-    l2_pgentry_t *pl2e;
-    l1_pgentry_t *pl1e;
+    l2_pgentry_t *pl2e = NULL;
+    l1_pgentry_t *pl1e = NULL;
     int rc = 0;
 
     /*
@@ -710,7 +710,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
          (linear >= XEN_VIRT_END && linear < DIRECTMAP_VIRT_START) )
         return -EINVAL;
 
-    pl3e = l4e_to_l3e(idle_pg_table[root_table_offset(linear)]) +
+    pl3e = map_l3t_from_l4e(idle_pg_table[root_table_offset(linear)]) +
         l3_table_offset(linear);
 
     flags = l3e_get_flags(*pl3e);
@@ -723,7 +723,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     }
     else
     {
-        pl2e = l3e_to_l2e(*pl3e) + l2_table_offset(linear);
+        pl2e = map_l2t_from_l3e(*pl3e) + l2_table_offset(linear);
         flags = l2e_get_flags(*pl2e);
         ASSERT(flags & _PAGE_PRESENT);
         if ( flags & _PAGE_PSE )
@@ -734,7 +734,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
         }
         else
         {
-            pl1e = l2e_to_l1e(*pl2e) + l1_table_offset(linear);
+            pl1e = map_l1t_from_l2e(*pl2e) + l1_table_offset(linear);
             flags = l1e_get_flags(*pl1e);
             if ( !(flags & _PAGE_PRESENT) )
                 goto out;
@@ -742,51 +742,58 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
         }
     }
 
+    UNMAP_DOMAIN_PAGE(pl1e);
+    UNMAP_DOMAIN_PAGE(pl2e);
+    UNMAP_DOMAIN_PAGE(pl3e);
+
     if ( !(root_get_flags(rpt[root_table_offset(linear)]) & _PAGE_PRESENT) )
     {
-        pl3e = alloc_xen_pagetable();
+        mfn_t l3mfn;
+
+        pl3e = alloc_map_clear_xen_pt(&l3mfn);
         rc = -ENOMEM;
         if ( !pl3e )
             goto out;
-        clear_page(pl3e);
         l4e_write(&rpt[root_table_offset(linear)],
-                  l4e_from_paddr(__pa(pl3e), __PAGE_HYPERVISOR));
+                  l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR));
     }
     else
-        pl3e = l4e_to_l3e(rpt[root_table_offset(linear)]);
+        pl3e = map_l3t_from_l4e(rpt[root_table_offset(linear)]);
 
     pl3e += l3_table_offset(linear);
 
     if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
     {
-        pl2e = alloc_xen_pagetable();
+        mfn_t l2mfn;
+
+        pl2e = alloc_map_clear_xen_pt(&l2mfn);
         rc = -ENOMEM;
         if ( !pl2e )
             goto out;
-        clear_page(pl2e);
-        l3e_write(pl3e, l3e_from_paddr(__pa(pl2e), __PAGE_HYPERVISOR));
+        l3e_write(pl3e, l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR));
     }
     else
     {
         ASSERT(!(l3e_get_flags(*pl3e) & _PAGE_PSE));
-        pl2e = l3e_to_l2e(*pl3e);
+        pl2e = map_l2t_from_l3e(*pl3e);
     }
 
     pl2e += l2_table_offset(linear);
 
     if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
     {
-        pl1e = alloc_xen_pagetable();
+        mfn_t l1mfn;
+
+        pl1e = alloc_map_clear_xen_pt(&l1mfn);
         rc = -ENOMEM;
         if ( !pl1e )
             goto out;
-        clear_page(pl1e);
-        l2e_write(pl2e, l2e_from_paddr(__pa(pl1e), __PAGE_HYPERVISOR));
+        l2e_write(pl2e, l2e_from_mfn(l1mfn, __PAGE_HYPERVISOR));
     }
     else
     {
         ASSERT(!(l2e_get_flags(*pl2e) & _PAGE_PSE));
-        pl1e = l2e_to_l1e(*pl2e);
+        pl1e = map_l1t_from_l2e(*pl2e);
     }
 
     pl1e += l1_table_offset(linear);
@@ -802,6 +809,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
 
     rc = 0;
  out:
+    unmap_domain_page(pl1e);
+    unmap_domain_page(pl2e);
+    unmap_domain_page(pl3e);
     return rc;
 }
 
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:14:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:14:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105858.202464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjfL-00068R-DM; Tue, 06 Apr 2021 11:14:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105858.202464; Tue, 06 Apr 2021 11:14:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjfL-00068K-9w; Tue, 06 Apr 2021 11:14:39 +0000
Received: by outflank-mailman (input) for mailman id 105858;
 Tue, 06 Apr 2021 11:14:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lTjfK-000681-R1
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:14:38 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjfK-0005D7-Fq; Tue, 06 Apr 2021 11:14:38 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lTjXa-0002qD-SA; Tue, 06 Apr 2021 11:06: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=cdFFj/D4PvTt7YO7kl51y+p0i52EwU56TpClW+8LHuI=; b=F
	2jRgC9IJIzQMIGtxE5ACXbzoI9wSmitm1+2hY6pBwK+mFcNLvuiFJYSCE8hJHqwnaEoarNs3uXmnw
	OqylJwMpcIH7+BG+51ZbqlHEfj7T+88QhU5BTCrnkr/UPsAf1ZBtvncVKjV/klMrvJLHE0G2UuJ9y
	1Hh/n+BY/tvP3uus=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v9 12/13] x86: switch to use domheap page for page tables
Date: Tue,  6 Apr 2021 12:06:00 +0100
Message-Id: <45e9b291c308e0da0783f5f192cbd9e96652b6fb.1617706782.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
In-Reply-To: <cover.1617706782.git.hongyxia@amazon.com>
References: <cover.1617706782.git.hongyxia@amazon.com>

From: Hongyan Xia <hongyxia@amazon.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v8:
- const qualify pg in alloc_xen_pagetable_new().
---
 xen/arch/x86/mm.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index a1ea1835d49b..03362448bd05 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -4885,10 +4885,10 @@ mfn_t alloc_xen_pagetable_new(void)
 {
     if ( system_state != SYS_STATE_early_boot )
     {
-        void *ptr = alloc_xenheap_page();
+        const struct page_info *pg = alloc_domheap_page(NULL, 0);
 
-        BUG_ON(!hardware_domain && !ptr);
-        return ptr ? virt_to_mfn(ptr) : INVALID_MFN;
+        BUG_ON(!hardware_domain && !pg);
+        return pg ? page_to_mfn(pg) : INVALID_MFN;
     }
 
     return alloc_boot_pages(1, 1);
@@ -4898,7 +4898,7 @@ mfn_t alloc_xen_pagetable_new(void)
 void free_xen_pagetable_new(mfn_t mfn)
 {
     if ( system_state != SYS_STATE_early_boot && !mfn_eq(mfn, INVALID_MFN) )
-        free_xenheap_page(mfn_to_virt(mfn_x(mfn)));
+        free_domheap_page(mfn_to_page(mfn));
 }
 
 void *alloc_map_clear_xen_pt(mfn_t *pmfn)
-- 
2.23.3



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:19:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:19:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105891.202512 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTjjq-0006dP-Er; Tue, 06 Apr 2021 11:19:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105891.202512; Tue, 06 Apr 2021 11: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 1lTjjq-0006dI-Be; Tue, 06 Apr 2021 11:19:18 +0000
Received: by outflank-mailman (input) for mailman id 105891;
 Tue, 06 Apr 2021 11:19:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTjjo-0006dD-QZ
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:19:16 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b1ad60d3-a1aa-4fd7-bc90-fb8a3437c2a9;
 Tue, 06 Apr 2021 11:19:16 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 215A8B14C;
 Tue,  6 Apr 2021 11:19: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: b1ad60d3-a1aa-4fd7-bc90-fb8a3437c2a9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617707955; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=EZRNt5TC35xt7+712sy5IjhppVIPcGSFngA7WQnre5c=;
	b=o19l/0v3vl5SUblv0NmadfRmaaalsyaxEQI7Lpr8aVFRh5kDZ/yGiyxl+MrkApVFalPSMm
	kqMOtdeW4ajAp0WY8J9x5gOwAFoZ/SRfu/4n509dhF7DrE4FyeHK2vMu98at8SB7ZEEnXB
	Sl3bkH9Xq0OtukDua1F2pQLEMFbodnE=
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
Date: Tue, 6 Apr 2021 13:19:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210406103603.8530-4-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 12:36, Luca Fancellu wrote:
> Modification to include/public/grant_table.h:
> 
> 1) Change anonymous structure to be named structure,
>    because doxygen can't deal with them.

Especially in the form presented (adding further name space clutter
for consumers to fall over) I object to this, most notably ...

> @@ -584,7 +599,7 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
>   * page granted to the calling domain by a foreign domain.
>   */
>  struct gnttab_cache_flush {
> -    union {
> +    union a {

... this one.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:40:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:40:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105900.202524 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTk4G-0000hk-7h; Tue, 06 Apr 2021 11:40:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105900.202524; Tue, 06 Apr 2021 11:40: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 1lTk4G-0000hd-3y; Tue, 06 Apr 2021 11:40:24 +0000
Received: by outflank-mailman (input) for mailman id 105900;
 Tue, 06 Apr 2021 11:40:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D7nR=JD=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lTk4E-0000hY-68
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:40:22 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id ebb855a6-5be2-43a7-b0c5-0957f7b68ff5;
 Tue, 06 Apr 2021 11:40:20 +0000 (UTC)
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 666141042;
 Tue,  6 Apr 2021 04:40:20 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B74F23F73D;
 Tue,  6 Apr 2021 04:40: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: ebb855a6-5be2-43a7-b0c5-0957f7b68ff5
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	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>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: [PATCH 0/2] xen/pci: Make PCI passthrough code non-x86 specific
Date: Tue,  6 Apr 2021 12:39:09 +0100
Message-Id: <cover.1617702520.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1

This patch series is preparatory work to implement the PCI passthrough support
for the ARM architecture.

Rahul Singh (2):
  xen/pci: Move PCI ATS code to common directory
  xen/pci: Gate all MSI code in common code with CONFIG_HAS_PCI_MSI

 xen/drivers/passthrough/Makefile        |  1 +
 xen/drivers/passthrough/{x86 => }/ats.c |  2 +-
 xen/drivers/passthrough/pci.c           | 17 +++++++++++++++++
 xen/drivers/passthrough/x86/Makefile    |  1 -
 xen/drivers/pci/Kconfig                 |  4 ++++
 xen/drivers/vpci/Makefile               |  3 ++-
 xen/drivers/vpci/header.c               |  6 ++++++
 xen/drivers/vpci/vpci.c                 |  2 ++
 xen/include/xen/vpci.h                  |  4 ++++
 xen/xsm/flask/hooks.c                   |  6 +++---
 10 files changed, 40 insertions(+), 6 deletions(-)
 rename xen/drivers/passthrough/{x86 => }/ats.c (99%)

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:41:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:41:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105906.202536 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTk4q-0000p1-Ka; Tue, 06 Apr 2021 11:41:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105906.202536; Tue, 06 Apr 2021 11: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 1lTk4q-0000ou-HK; Tue, 06 Apr 2021 11:41:00 +0000
Received: by outflank-mailman (input) for mailman id 105906;
 Tue, 06 Apr 2021 11:41:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D7nR=JD=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lTk4q-0000op-2U
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:41:00 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id a8a90018-4185-4ad6-b665-11352dfccd80;
 Tue, 06 Apr 2021 11:40:59 +0000 (UTC)
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 E9CDF1042;
 Tue,  6 Apr 2021 04:40:58 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2A8BA3F73D;
 Tue,  6 Apr 2021 04:40: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: a8a90018-4185-4ad6-b665-11352dfccd80
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH 1/2] xen/pci: Move PCI ATS code to common directory
Date: Tue,  6 Apr 2021 12:39:10 +0100
Message-Id: <e61c9a1190018d8de434d71049b4a97980f22be0.1617702520.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617702520.git.rahul.singh@arm.com>
References: <cover.1617702520.git.rahul.singh@arm.com>
In-Reply-To: <cover.1617702520.git.rahul.singh@arm.com>
References: <cover.1617702520.git.rahul.singh@arm.com>

PCI ATS code is common for all architecture, move code to common
directory to be usable for other architectures.

No functional change intended.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
 xen/drivers/passthrough/Makefile        | 1 +
 xen/drivers/passthrough/{x86 => }/ats.c | 2 +-
 xen/drivers/passthrough/x86/Makefile    | 1 -
 3 files changed, 2 insertions(+), 2 deletions(-)
 rename xen/drivers/passthrough/{x86 => }/ats.c (99%)

diff --git a/xen/drivers/passthrough/Makefile b/xen/drivers/passthrough/Makefile
index cc646612c7..445690e3e5 100644
--- a/xen/drivers/passthrough/Makefile
+++ b/xen/drivers/passthrough/Makefile
@@ -6,3 +6,4 @@ obj-$(CONFIG_ARM) += arm/
 obj-y += iommu.o
 obj-$(CONFIG_HAS_PCI) += pci.o
 obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o
+obj-$(CONFIG_HAS_PCI) += ats.o
diff --git a/xen/drivers/passthrough/x86/ats.c b/xen/drivers/passthrough/ats.c
similarity index 99%
rename from xen/drivers/passthrough/x86/ats.c
rename to xen/drivers/passthrough/ats.c
index 4628ffde45..7f7b16dc49 100644
--- a/xen/drivers/passthrough/x86/ats.c
+++ b/xen/drivers/passthrough/ats.c
@@ -16,7 +16,7 @@
 #include <xen/sched.h>
 #include <xen/pci.h>
 #include <xen/pci_regs.h>
-#include "../ats.h"
+#include "ats.h"
 
 bool_t __read_mostly ats_enabled = 0;
 boolean_param("ats", ats_enabled);
diff --git a/xen/drivers/passthrough/x86/Makefile b/xen/drivers/passthrough/x86/Makefile
index 69284a5d19..75b2885336 100644
--- a/xen/drivers/passthrough/x86/Makefile
+++ b/xen/drivers/passthrough/x86/Makefile
@@ -1,3 +1,2 @@
-obj-y += ats.o
 obj-y += iommu.o
 obj-$(CONFIG_HVM) += hvm.o
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:41:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:41:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105909.202548 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTk5I-0000vP-UH; Tue, 06 Apr 2021 11:41:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105909.202548; Tue, 06 Apr 2021 11:41: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 1lTk5I-0000vI-QX; Tue, 06 Apr 2021 11:41:28 +0000
Received: by outflank-mailman (input) for mailman id 105909;
 Tue, 06 Apr 2021 11:41:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D7nR=JD=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lTk5I-0000v9-0N
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:41:28 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 88f0cd12-37fa-45cd-9643-7b06aea7f225;
 Tue, 06 Apr 2021 11:41:26 +0000 (UTC)
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 056AA113E;
 Tue,  6 Apr 2021 04:41:26 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 343D93F73D;
 Tue,  6 Apr 2021 04:41: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: 88f0cd12-37fa-45cd-9643-7b06aea7f225
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	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>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: [PATCH 2/2] xen/pci: Gate all MSI code in common code with CONFIG_HAS_PCI_MSI
Date: Tue,  6 Apr 2021 12:39:11 +0100
Message-Id: <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1617702520.git.rahul.singh@arm.com>
References: <cover.1617702520.git.rahul.singh@arm.com>
In-Reply-To: <cover.1617702520.git.rahul.singh@arm.com>
References: <cover.1617702520.git.rahul.singh@arm.com>

MSI support is not implemented for ARM architecture but it is enabled
for x86 architecture and referenced in common passthrough/pci.c code.

Therefore introducing the new flag to gate the MSI code for ARM in
common code to avoid compilation error when HAS_PCI is enabled for ARM.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
 xen/drivers/passthrough/pci.c | 17 +++++++++++++++++
 xen/drivers/pci/Kconfig       |  4 ++++
 xen/drivers/vpci/Makefile     |  3 ++-
 xen/drivers/vpci/header.c     |  6 ++++++
 xen/drivers/vpci/vpci.c       |  2 ++
 xen/include/xen/vpci.h        |  4 ++++
 xen/xsm/flask/hooks.c         |  6 +++---
 7 files changed, 38 insertions(+), 4 deletions(-)

diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 705137f8be..390b960d83 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -33,7 +33,9 @@
 #include <xen/tasklet.h>
 #include <xen/vpci.h>
 #include <xsm/xsm.h>
+#ifdef CONFIG_HAS_PCI_MSI
 #include <asm/msi.h>
+#endif
 #include "ats.h"
 
 struct pci_seg {
@@ -327,6 +329,8 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
     *((u8*) &pdev->bus) = bus;
     *((u8*) &pdev->devfn) = devfn;
     pdev->domain = NULL;
+
+#ifdef CONFIG_HAS_PCI_MSI
     INIT_LIST_HEAD(&pdev->msi_list);
 
     pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
@@ -357,6 +361,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
 
         pdev->msix = msix;
     }
+#endif
 
     list_add(&pdev->alldevs_list, &pseg->alldevs_list);
 
@@ -449,7 +454,9 @@ static void free_pdev(struct pci_seg *pseg, struct pci_dev *pdev)
     }
 
     list_del(&pdev->alldevs_list);
+#ifdef CONFIG_HAS_PCI_MSI
     xfree(pdev->msix);
+#endif
     xfree(pdev);
 }
 
@@ -827,7 +834,9 @@ int pci_remove_device(u16 seg, u8 bus, u8 devfn)
     list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
         if ( pdev->bus == bus && pdev->devfn == devfn )
         {
+#ifdef CONFIG_HAS_PCI_MSI
             pci_cleanup_msi(pdev);
+#endif
             ret = iommu_remove_device(pdev);
             if ( pdev->domain )
                 list_del(&pdev->domain_list);
@@ -1271,7 +1280,9 @@ bool_t pcie_aer_get_firmware_first(const struct pci_dev *pdev)
 static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
 {
     struct pci_dev *pdev;
+#ifdef CONFIG_HAS_PCI_MSI
     struct msi_desc *msi;
+#endif
 
     printk("==== segment %04x ====\n", pseg->nr);
 
@@ -1280,8 +1291,10 @@ static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
         printk("%pp - %pd - node %-3d - MSIs < ",
                &pdev->sbdf, pdev->domain,
                (pdev->node != NUMA_NO_NODE) ? pdev->node : -1);
+#ifdef CONFIG_HAS_PCI_MSI
         list_for_each_entry ( msi, &pdev->msi_list, list )
                printk("%d ", msi->irq);
+#endif
         printk(">\n");
     }
 
@@ -1303,12 +1316,14 @@ static int __init setup_dump_pcidevs(void)
 }
 __initcall(setup_dump_pcidevs);
 
+#ifdef CONFIG_HAS_PCI_MSI
 int iommu_update_ire_from_msi(
     struct msi_desc *msi_desc, struct msi_msg *msg)
 {
     return iommu_intremap
            ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
 }
+#endif
 
 static int iommu_add_device(struct pci_dev *pdev)
 {
@@ -1429,6 +1444,7 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
     ASSERT(pdev && (pdev->domain == hardware_domain ||
                     pdev->domain == dom_io));
 
+#ifdef CONFIG_HAS_PCI_MSI
     if ( pdev->msix )
     {
         rc = pci_reset_msix_state(pdev);
@@ -1436,6 +1452,7 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
             goto done;
         msixtbl_init(d);
     }
+#endif
 
     pdev->fault.count = 0;
 
diff --git a/xen/drivers/pci/Kconfig b/xen/drivers/pci/Kconfig
index 7da03fa13b..695781ce3a 100644
--- a/xen/drivers/pci/Kconfig
+++ b/xen/drivers/pci/Kconfig
@@ -1,3 +1,7 @@
 
 config HAS_PCI
 	bool
+
+config HAS_PCI_MSI
+	def_bool y
+	depends on X86 && HAS_PCI
diff --git a/xen/drivers/vpci/Makefile b/xen/drivers/vpci/Makefile
index 55d1bdfda0..1a1413b93e 100644
--- a/xen/drivers/vpci/Makefile
+++ b/xen/drivers/vpci/Makefile
@@ -1 +1,2 @@
-obj-y += vpci.o header.o msi.o msix.o
+obj-y += vpci.o header.o
+obj-$(CONFIG_HAS_PCI_MSI) += msi.o msix.o
diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index ba9a036202..b90c345612 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -96,8 +96,10 @@ static void modify_decoding(const struct pci_dev *pdev, uint16_t cmd,
      * FIXME: punching holes after the p2m has been set up might be racy for
      * DomU usage, needs to be revisited.
      */
+#ifdef CONFIG_HAS_PCI_MSI
     if ( map && !rom_only && vpci_make_msix_hole(pdev) )
         return;
+#endif
 
     for ( i = 0; i < ARRAY_SIZE(header->bars); i++ )
     {
@@ -206,7 +208,9 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
     struct vpci_header *header = &pdev->vpci->header;
     struct rangeset *mem = rangeset_new(NULL, NULL, 0);
     struct pci_dev *tmp, *dev = NULL;
+#ifdef CONFIG_HAS_PCI_MSI
     const struct vpci_msix *msix = pdev->vpci->msix;
+#endif
     unsigned int i;
     int rc;
 
@@ -243,6 +247,7 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
         }
     }
 
+#ifdef CONFIG_HAS_PCI_MSI
     /* Remove any MSIX regions if present. */
     for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
     {
@@ -260,6 +265,7 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
             return rc;
         }
     }
+#endif /* CONFIG_HAS_PCI_MSI */
 
     /*
      * Check for overlaps with other BARs. Note that only BARs that are
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index cbd1bac7fc..474eb2f0ac 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -48,8 +48,10 @@ void vpci_remove_device(struct pci_dev *pdev)
         xfree(r);
     }
     spin_unlock(&pdev->vpci->lock);
+#ifdef CONFIG_HAS_PCI_MSI
     xfree(pdev->vpci->msix);
     xfree(pdev->vpci->msi);
+#endif
     xfree(pdev->vpci);
     pdev->vpci = NULL;
 }
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 9f5b5d52e1..d81588ba64 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -91,6 +91,7 @@ struct vpci {
         /* FIXME: currently there's no support for SR-IOV. */
     } header;
 
+#ifdef CONFIG_HAS_PCI_MSI
     /* MSI data. */
     struct vpci_msi {
       /* Address. */
@@ -136,6 +137,7 @@ struct vpci {
             struct vpci_arch_msix_entry arch;
         } entries[];
     } *msix;
+#endif /* CONFIG_HAS_PCI_MSI */
 #endif
 };
 
@@ -148,6 +150,7 @@ struct vpci_vcpu {
 };
 
 #ifdef __XEN__
+#ifdef CONFIG_HAS_PCI_MSI
 void vpci_dump_msi(void);
 
 /* Make sure there's a hole in the p2m for the MSIX mmio areas. */
@@ -208,6 +211,7 @@ static inline unsigned int vmsix_entry_nr(const struct vpci_msix *msix,
 {
     return entry - msix->entries;
 }
+#endif /* CONFIG_HAS_PCI_MSI */
 #endif /* __XEN__ */
 
 #else /* !CONFIG_HAS_VPCI */
diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c
index 3b7313b949..df594c80a9 100644
--- a/xen/xsm/flask/hooks.c
+++ b/xen/xsm/flask/hooks.c
@@ -21,7 +21,7 @@
 #include <xen/guest_access.h>
 #include <xen/xenoprof.h>
 #include <xen/iommu.h>
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_HAS_PCI_MSI
 #include <asm/msi.h>
 #endif
 #include <public/xen.h>
@@ -114,7 +114,7 @@ static int get_irq_sid(int irq, u32 *sid, struct avc_audit_data *ad)
         }
         return security_irq_sid(irq, sid);
     }
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_HAS_PCI_MSI
     {
         struct irq_desc *desc = irq_to_desc(irq);
         if ( desc->msi_desc && desc->msi_desc->dev ) {
@@ -868,7 +868,7 @@ static int flask_map_domain_pirq (struct domain *d)
 static int flask_map_domain_msi (struct domain *d, int irq, const void *data,
                                  u32 *sid, struct avc_audit_data *ad)
 {
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_HAS_PCI_MSI
     const struct msi_info *msi = data;
     u32 machine_bdf = (msi->seg << 16) | (msi->bus << 8) | msi->devfn;
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 11:53:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 11:53:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105921.202566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTkHA-0001wH-5H; Tue, 06 Apr 2021 11:53:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105921.202566; Tue, 06 Apr 2021 11: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 1lTkHA-0001wA-1j; Tue, 06 Apr 2021 11:53:44 +0000
Received: by outflank-mailman (input) for mailman id 105921;
 Tue, 06 Apr 2021 11:53:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hTMm=JD=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lTkH8-0001w4-GT
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 11:53:42 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ea13516e-0bdf-404b-b1ab-607c922fbcd6;
 Tue, 06 Apr 2021 11:53: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: ea13516e-0bdf-404b-b1ab-607c922fbcd6
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617710021;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=uBse7rk8WKSz7q06G/Wy075gUEWHCDjkTyYk3YEELi8=;
  b=cbsLCo0PVlOlFiciGsnVzoxCS6Con+lfNP+iJSB7k5sQVeHRY5pHlm46
   aCkvffeh+UWVu831zBCG6Mcanvj3ps1H+hbfUns0Mj07hM8wmcXNC90qI
   58/fKAuqQAEwI816Nex28uVeYHdW4VqfYP+uBp16KV/wV+61WWAC6ZehM
   U=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 1gfjigUhXjOQy7/TtnNjDyAsFOSFAXxX8YOu+DcE6JV0rZbRSNCAIqr2OasrgkVDgJYEr0Zuyl
 TuN/BQSQgqv/GsNgKhre4ExzG3yV7WsEHRV4Hsvy30HYKPW8L4KWTzfp9HuthhYRRyiNhSNmJO
 hWYNYFOQVEds5vvoWwsg6hoU6MPoCgw4nyhoYuty/a0pRONVH1A9WNmunXmc/56TysnyRPCT++
 v47vFlTcOXN8mgeoBYRqOthlrwt2gn5UFNern1d57nwVyhS5wq+3j0pXDSShLJjGz7SUOUsvOl
 VAQ=
X-SBRS: 5.2
X-MesageID: 41338039
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:BZnfyKmOJ2gUJLQKLHIl0sJkNdTpDfOlj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN9AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 1dWoBEIpnLAVB+5PyQ3CCRGdwt2cTC1aiui/vXwXsFd3AQV4hLxW5Ce2WmO2dxQxRLAod8MZ
 Ka6NZOqTbIQwVsUu2QAH4ZU+/f4+DajZ6OW29NOzcLyimryQmp5rnzDgSC0n4lPw9n7L8+/Q
 H+4mvEz4q5tfXT8H7h/k/Vq69bgd7wjuZEbfb88vQ9DhXJpkKWaJ96W7uE1QpF7d2HzFoxit
 HDr1MBEq1ImhXsV1q4qxfsxAXsuQxGgxCN9XaijXTuusD/Tj4hYvAx/L5xSAfT6EYrobhHoc
 B29l+ZrJZeAFfhmynw9rHzJnVXv3e0unYrnKoviWVeW+IlGdpshLEYlXk0LL4wWAbBrKw3Gu
 hnC8/RoNxMd0mBUnzftm5zhPSxQ3UaBH69Mwc/k/3Q9wITsGFyzkMeysBatGwH7ogBR55N4P
 mBGrh0lYtJUtQdYctGdak8aPryLlaIbQPHMWqUL1iiProAIWjxp5n+56hww+22ZpoSzt8XlI
 7aWF1V8U4+EnieSPGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmNU1Yrn8y8o+gOA8HSVv
 qpUagmQMPLHC/LI8Jkzgf+U55dJT01S8sOoOs2XFqIv4bKJ+TRx67mWceWAICoPScvW2v5DH
 dGdiP0Pt984keiXWK9hBDQXnjqa1Hu5J4YKtmew8EjjKw2cqFcuAkcjlq0ouuRLydZj6AwdE
 xiZLX9kq26omGy9X3S73pgPwdcCko92sShb1p64Ssxd2/ke7cKvNuSPUpI2mGcGxN5R8TKVB
 JEq09v4qKxJZyIzSUkA9aqW1jqy0c7lTavddMxi6eD7cDqdtcEFZ4gQrV2DhiOPQdygxxWpG
 BKbxIkSkfTGij1s7isiIUZCYjkBp5BqTbuBfQRiHrE8W2AuMkkRxIgLkOTeP/SpTxreh15qR
 la9bQFjL+JhDC1QFFP/NgQARlrc2SYALVPEQKfQp5b84qbND1YRXuWhDCclhE4cnfr8UJXnW
 D6MSiIY5jwcyVgk2Ed3aDw/FxucGKBO0p2d3BhqIV4UX/Lo3BpzIawF+OO+nrUblsJ2ecGNj
 7ZJTMUPwN13tiyvSTl7wqqBDEjxp80OPbaA6lme7bP2mm1IInNka0dBfdb8NJkM9/p29V7J9
 63akuQLDniDfku1BHQrnE5ODNsoH1hiOj2wnTenRqF9W96BeCXLEVtRrkdLd3Z52/4R+yQ2J
 E8id4up+O/Pmj4d9bu89CeUxdTbhfI5WKmReAhrp5Z+bg/s7Z+BJHXWzrF3nMv5mRLEO7k0E
 cFBKhr6rHIPYFiO9EIcyVC51wziZCBKlAovgGeOJ50QXg9y3vAe9WH7LrDpeBxXgmPpA7sNU
 Ke9CMY9fHfRCeH3aMbDaV1IWk+UjlN1F1yuOeZM4vXA0G2cusG+lywOHq0aqVcR6iIAq94lG
 cO3/iY2+uMMzPl0wXRtyZhKq1A82y7Udq/aTj8aNJg4pi/IxCQmaOk7864kSfvRTa6Y0oeg5
 dZdUZ4VLUxthAyyIst0iazTaTrokUq11tGiAsX6GLQ5g==
X-IronPort-AV: E=Sophos;i="5.81,309,1610427600"; 
   d="scan'208";a="41338039"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gX/DwznogCU6b9YFz3u2F2hVFhw3s4hBlnD7VzHQs1z3P62n1XmgHumdFuzHZSBJSw2LU2qcCZ3ozfr0Zw/Kt01fGTFNZ+pwHuMOud/NRlgPWjX6My4AuGeqzwE5nrQTi7/Qse2yJ/UyEIQeg7jlwf0Lk5vDUAZZ8OYUs3z5g0x4IzWCKO4N2Ftvq2iuRxcY447sc677tFqdA4xQZztmTmgyyy8RlKKHlZnupMdwmAFQ/0JEUQRjDDgKqzU/M1vf7KTHUCe3IgHfpCbufl+XLdn/ot/47l3rJquYLg806sSn4hZxztCu2eBynF8XejuY7fjH5494nZn9xhwgdk4nWg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uBse7rk8WKSz7q06G/Wy075gUEWHCDjkTyYk3YEELi8=;
 b=aqilivYbrIF/wcx46B2qPUytR8m+MC173wTke1tL7JCmKJhYTbx7ZDv3/wYiy1JYIkw6bcFB9FrHh+W9lBzNWV4w0LhmHc7Dzq7x6dwbfP9w1128BOGTUJUUbfV+H/yf+4GorRNb/fkoe2MwPRQfnsFjbKSURxcPI/SPCFREJnGedK80D2F73zGY1WyCsq81zYJWPgnD+y68T0eYrp8JpYWFnjCw7Jw0gph8nTZgxC1XKXEwLK5gVh8EHTw0wLd2L6Tl4vlhxopiM2FuJX1xAG9myoLaSZ4taThvt9BNwDPDL5ocRBu1MQpfBeX/euiSD6s1fc6EOuUI+H+TkbiG/g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uBse7rk8WKSz7q06G/Wy075gUEWHCDjkTyYk3YEELi8=;
 b=bTA5o4f67Ee3t5jWIgyo/UYkNc1cMEz4hI130i6Glo2ih0H9Cua1X27PaWm47NJJc1nJcGOOG4EIrpE+Ecw6eVNuR1fMe2XQ+tuKvZUKnr4T6LrlpDBCLe2pqE309CUHT3rIWvNocHaoe1xJ7khuhKPXdMISrqNDNpRcjPuFWOI=
To: Luca Fancellu <luca.fancellu@arm.com>, <xen-devel@lists.xenproject.org>
CC: <bertrand.marquis@arm.com>, <wei.chen@arm.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>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 0/3] Use Doxygen and sphinx for html documentation
Message-ID: <225d7e0a-c5c6-a954-9141-ba1d859f400a@citrix.com>
Date: Tue, 6 Apr 2021 12:53:30 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210406103603.8530-1-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0335.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a4::35) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 17e384a7-b477-4cc0-ff6f-08d8f8f29cc8
X-MS-TrafficTypeDiagnostic: BN3PR03MB2371:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN3PR03MB237124307DC3C0C3A55D072ABA769@BN3PR03MB2371.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 99pj7xs19/uJtjq/C/niIts/gxrsTYwRGDIJQTe499vGXPUmE0lJPdACuC7ke4bSm/7R4Ls7eySH+Y82NQK2V1rN016CadYm6Mg1hYDJ188ipoKGagkiDTUrA2ZrrEBxMlMgkMZGMIU1xgxiQSeOJOrwZPpyD6ZIdmeLAtHuNbqdd4m2yLC0aOK8P1sHVBFhuMiCE8XjXSvvUoTyibZBE9clpgvWz2fJn290yTWH0kAFGmlFKckqlK4GR591KhJVRtZm/+UrockStDX8kDlTpS8er8stbrT+sxsDWaUXpcBCttj0uXmadRYSiD6OWN8kfJXrxVaiaM0yRiDxdZDCQPuAYeiI0kTwnqRbSlRCGtB9gPymva3sZs5uPwmBMEZOde+u0nF3uPt4vYZKZvdr4QJaCesN3dA6/3HW2TTl6izxABstoHTTZz6UV43IiSWzS8Eybh8rfU3G6YhrC7ZgnlLqKR7mHDIcnrKDecLN+i3HhDasgmgSD7EJib/V+rapEGMLqrlAK4Kc5bh+WMeaWe74yTttgrrBwVRDicyksRWSt/+8zavS/MxGHXwCl3Lne709Q7iGfO2YxyoCy3PueiloMCoqBIbb4s8dRXGZQCR79udq1tiWzyedwnvbQsxJwUFEYkKR3TWi2nI07djHJgvI35I4HB9Iss4Pt2ko7cD1isF3un9AR87yxpD6QjzMT7VF0BBTK1FlJeXJIFwobxNC3cc9UBCUrAYr86CzvkY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(396003)(136003)(376002)(346002)(39860400002)(5660300002)(36756003)(2616005)(956004)(66946007)(38100700001)(83380400001)(31696002)(53546011)(86362001)(2906002)(66556008)(66476007)(478600001)(6666004)(4326008)(31686004)(54906003)(316002)(16576012)(8676002)(186003)(6486002)(26005)(8936002)(16526019)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 17e384a7-b477-4cc0-ff6f-08d8f8f29cc8
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 11:53:37.2545
 (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: EDQ7iQFLX8ZsvZnh0P3AnQszQ2Sp/BPZp81sliyK1lu2Z2W1ytJebAiQe9sdjCEH6PT/1LmwiVrvznYbBIDRM1m6LzCFjCfkHfrdNCm2qrw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2371
X-OriginatorOrg: citrix.com

On 06/04/2021 11:36, Luca Fancellu wrote:
> This serie introduce doxygen in the sphinx html docs generation.
> One benefit is to keep most of the documentation in the source
> files of xen so that it's more maintainable, on the other hand
> there are some limitation of doxygen that must be addressed
> modifying the current codebase (for example doxygen can't parse
> anonymous structure/union).
>
> To reproduce the documentation xen must be compiled because
> most of the headers are generated on compilation time from
> the makefiles.
>
> Here follows the steps to generate the sphinx html docs, some
> package may be required on your machine, everything is suggested
> by the autoconf script.
> Here I'm building the arm64 docs (the only introduced for now by
> this serie):
>
> ./configure
> make -C xen XEN_TARGET_ARCH=3D"arm64" CROSS_COMPILE=3D"aarch64-linux-gnu-=
" menuconfig
> make -C xen XEN_TARGET_ARCH=3D"arm64" CROSS_COMPILE=3D"aarch64-linux-gnu-=
"
> make -C docs XEN_TARGET_ARCH=3D"arm64" sphinx-html
>
> now in docs/sphinx/html/ we have the generated docs starting
> from the index.html page.

Do you have a sample rendered output?

The plan was to try and use Linux's kernel-doc plugin for Sphinx, which
is very doxygen-like.=C2=A0 Did you experiment with this option?

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 12:09:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 12:09:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105938.202578 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTkW3-00032t-VA; Tue, 06 Apr 2021 12:09:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105938.202578; Tue, 06 Apr 2021 12:09: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 1lTkW3-00032m-Qw; Tue, 06 Apr 2021 12:09:07 +0000
Received: by outflank-mailman (input) for mailman id 105938;
 Tue, 06 Apr 2021 12:09:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTkW2-00032e-MB; Tue, 06 Apr 2021 12:09: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 1lTkW2-0006A5-6S; Tue, 06 Apr 2021 12:09: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 1lTkW1-0000n8-Qx; Tue, 06 Apr 2021 12:09:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTkW1-0005Ow-QV; Tue, 06 Apr 2021 12:09:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=JJvt8769vbcRFUfDJ3Fz57j2mR6xq9A2NNeZ6jhbryw=; b=Hxg36xYDbfXKIPFfzykg3tFJRN
	Nxo3YMMuudxwjaT0QkomqAu2422BwurT9fJBLcsuost2FgSIkWoRpoaJy6YKkoUrZaEF60Ty0DKiw
	kl7Ac+rVEf1Z0+jMX3AMHXp0MV8LuATCYoLwSia2GSJWU+yNh948cM8mJKkFp6PGvSIY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160754-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160754: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=0a50438c84363bd37fe18fe432888ae9a074dcab
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 06 Apr 2021 12:09:05 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                0a50438c84363bd37fe18fe432888ae9a074dcab
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  248 days
Failing since        152366  2020-08-01 20:49:34 Z  247 days  421 attempts
Testing same since   160754  2021-04-05 21:41:03 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1315283 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 13:44:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 13:44:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105960.202601 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTlzy-00030e-Ru; Tue, 06 Apr 2021 13:44:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105960.202601; Tue, 06 Apr 2021 13: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 1lTlzy-00030X-OB; Tue, 06 Apr 2021 13:44:06 +0000
Received: by outflank-mailman (input) for mailman id 105960;
 Tue, 06 Apr 2021 13:44: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 1lTlzx-00030Q-Pm
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 13:44: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 1lTlzv-0007eJ-M6; Tue, 06 Apr 2021 13:44:03 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTlzv-0007NQ-Cg; Tue, 06 Apr 2021 13:44: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=gJN23I4Q/wriX+nEdwGqDDRW8Vt/TNXMrjMBXOvWcX4=; b=rU27z10f8DuT5vT0o0gZYUOMHF
	NmGcaY07UTJol6aBl1ASMlb3Xv1iCmH+pO5Uvrp4nezZFXVB9ubYJsQKXCHbZyBG8rncBtTZQKreL
	8mk2tH8+iEz/cbqOR4JsuLGPtH1d5c+9zP7Ed5iHWmwF0N0Ras5ILYv1JCXCdm9rHCOA=;
Subject: Re: [PATCH] rangeset: no need to use snprintf()
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <2338703b-3613-41c6-8ae6-387ba2869408@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <80d625d8-6812-7d02-c946-a3905cbc306d@xen.org>
Date: Tue, 6 Apr 2021 14:44:01 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <2338703b-3613-41c6-8ae6-387ba2869408@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 06/04/2021 09:50, Jan Beulich wrote:
> As of the conversion to safe_strcpy() years ago there has been no need
> anymore to use snprintf() to prevent storing a not-nul-terminated string.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

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

> 
> --- a/xen/common/rangeset.c
> +++ b/xen/common/rangeset.c
> @@ -436,14 +436,7 @@ struct rangeset *rangeset_new(
>       BUG_ON(flags & ~RANGESETF_prettyprint_hex);
>       r->flags = flags;
>   
> -    if ( name != NULL )
> -    {
> -        safe_strcpy(r->name, name);
> -    }
> -    else
> -    {
> -        snprintf(r->name, sizeof(r->name), "(no name)");
> -    }
> +    safe_strcpy(r->name, name ?: "(no name)");

I realize the current code is not checking the return, but I wonder we 
should rather than silently truncating the string.

This is not a new issue, so it can dealt separately if we decide to 
check the return.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 13:46:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 13:46:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105964.202612 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTm2O-00039h-8Q; Tue, 06 Apr 2021 13:46:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105964.202612; Tue, 06 Apr 2021 13: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 1lTm2O-00039a-5P; Tue, 06 Apr 2021 13:46:36 +0000
Received: by outflank-mailman (input) for mailman id 105964;
 Tue, 06 Apr 2021 13:46: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 1lTm2M-00039V-S3
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 13:46: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 1lTm2M-0007fy-Ed; Tue, 06 Apr 2021 13:46:34 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTm2M-0007os-6u; Tue, 06 Apr 2021 13:46:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=hL/DNXPgONRhYcLJof2CA1fzKZNQ0/R+MlOogkZCxL0=; b=EvBKmne0DBgjh15xBCHJLlyoSk
	duyPUpDgm7KnGPKqgTjZlC+cQzPAkPH8g1QNA4uOA+7IKkakATGmeDJ1s+PfoqVLvqTuS/bO0F3Gv
	HXcOPAGQgh2WxyxboCR0mmYB6WdY86xkucxL5+Q5UKz9IZZVS56gnBfTQJ2sNJ8hoAcw=;
Subject: Re: [PATCH] xen/evtchn: Change irq_info lock to raw_spinlock_t
To: Luca Fancellu <luca.fancellu@arm.com>, sstabellini@kernel.org,
 jgross@suse.com, jgrall@amazon.com
Cc: boris.ostrovsky@oracle.com, tglx@linutronix.de, wei.liu@kernel.org,
 jbeulich@suse.com, yyankovskyi@gmail.com, xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org, stable@vger.kernel.org,
 bertrand.marquis@arm.com
References: <20210406105105.10141-1-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <74349f41-ba4e-7486-5467-fb8fa3c96e50@xen.org>
Date: Tue, 6 Apr 2021 14:46:31 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210406105105.10141-1-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Luca,

On 06/04/2021 11:51, Luca Fancellu wrote:
> Unmask operation must be called with interrupt disabled,
> on preempt_rt spin_lock_irqsave/spin_unlock_irqrestore
> don't disable/enable interrupts, so use raw_* implementation
> and change lock variable in struct irq_info from spinlock_t
> to raw_spinlock_t
> 
> Cc: stable@vger.kernel.org
> Fixes: 25da4618af24 ("xen/events: don't unmask an event channel
> when an eoi is pending")
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 13:56:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 13:56:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105970.202624 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmBh-000475-6V; Tue, 06 Apr 2021 13:56:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105970.202624; Tue, 06 Apr 2021 13:56:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmBh-00046y-3S; Tue, 06 Apr 2021 13:56:13 +0000
Received: by outflank-mailman (input) for mailman id 105970;
 Tue, 06 Apr 2021 13:56:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTmBf-00046t-RP
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 13:56:11 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4deb9fa7-f933-4c72-8a44-09251b3c3e0a;
 Tue, 06 Apr 2021 13:56:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D9A73B1AB;
 Tue,  6 Apr 2021 13:56: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: 4deb9fa7-f933-4c72-8a44-09251b3c3e0a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617717370; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=B3nb8UZiDBS2Ti675AS+lATMm+rwqfhCfk5q2a4UGaQ=;
	b=DXTAuZn/oD10nrXtTn+aHgzuvqPM9JvQA1qrMJup+i4Cmbqdtbh6i5VQ2XNfJDGrmfacm+
	IR6YjptdsxCF9zUZA3IX6ch39v47jzlwso/vbn98cmN48ioZhp+h7npL2UtCKGujX61cdQ
	AyddAS0kmikPQ6U8wp2RlQn4ijoqygA=
Subject: Re: [PATCH] rangeset: no need to use snprintf()
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2338703b-3613-41c6-8ae6-387ba2869408@suse.com>
 <80d625d8-6812-7d02-c946-a3905cbc306d@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <060c0a6a-128e-2c44-fe51-59dadbc1c5f6@suse.com>
Date: Tue, 6 Apr 2021 15:56:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <80d625d8-6812-7d02-c946-a3905cbc306d@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 15:44, Julien Grall wrote:
> On 06/04/2021 09:50, Jan Beulich wrote:
>> As of the conversion to safe_strcpy() years ago there has been no need
>> anymore to use snprintf() to prevent storing a not-nul-terminated string.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Julien Grall <jgrall@amazon.com>

Thanks.

>> --- a/xen/common/rangeset.c
>> +++ b/xen/common/rangeset.c
>> @@ -436,14 +436,7 @@ struct rangeset *rangeset_new(
>>       BUG_ON(flags & ~RANGESETF_prettyprint_hex);
>>       r->flags = flags;
>>   
>> -    if ( name != NULL )
>> -    {
>> -        safe_strcpy(r->name, name);
>> -    }
>> -    else
>> -    {
>> -        snprintf(r->name, sizeof(r->name), "(no name)");
>> -    }
>> +    safe_strcpy(r->name, name ?: "(no name)");
> 
> I realize the current code is not checking the return, but I wonder we 
> should rather than silently truncating the string.

The name field is used only for display purposes, so I guess truncation
wouldn't really be a problem here.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 13:58:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 13:58:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105976.202637 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmE5-0004Fm-O4; Tue, 06 Apr 2021 13:58:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105976.202637; Tue, 06 Apr 2021 13:58:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmE5-0004Ff-KZ; Tue, 06 Apr 2021 13:58:41 +0000
Received: by outflank-mailman (input) for mailman id 105976;
 Tue, 06 Apr 2021 13:58:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTmE4-0004Fa-II
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 13:58:40 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 58c1221b-4609-47bd-9105-b73b813c0b4f;
 Tue, 06 Apr 2021 13:58:39 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1B082B1AE;
 Tue,  6 Apr 2021 13:58: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: 58c1221b-4609-47bd-9105-b73b813c0b4f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617717519; 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=owQiH4Hvh1+5WKZYNe+4TSGqD+WcQErGYE9h7jSnLzE=;
	b=TS3HVH7nRC55vrgICtsL2s0yesR05zH7lwJgFL2/kkyFtrk1/PPPINbDn4iNQdUao/nprt
	nBKFEAVHlAFBLKzMyZ1kh0F/SmxvlPzNwrmrjhEEu1TgW5g0cgQxXinSWJhg/08mr6UL4F
	8VDaFa/lYFV+k0tO1RpN5+jpQEZvd/g=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 0/3] x86: asm-offsets.h and !PV32 adjustments
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 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>
Message-ID: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
Date: Tue, 6 Apr 2021 15:58:38 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This is a rework of the previously posted (now) 1st patch plus two
new ones.

1: don't build unused entry code when !PV32
2: x86: slim down hypercall handling when !PV32
3: x86: avoid building COMPAT code when !HVM && !PV32

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:00:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:00:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105981.202648 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmFm-0005AL-3L; Tue, 06 Apr 2021 14:00:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105981.202648; Tue, 06 Apr 2021 14:00:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmFm-0005AE-0L; Tue, 06 Apr 2021 14:00:26 +0000
Received: by outflank-mailman (input) for mailman id 105981;
 Tue, 06 Apr 2021 14:00:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dxY0=JD=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lTmFk-0005A9-SI
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:00:24 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 36bba9c2-3397-4473-9b6a-6e280e49d1fe;
 Tue, 06 Apr 2021 14:00:24 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lTmFa-000Cwc-Pf; Tue, 06 Apr 2021 14: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: 36bba9c2-3397-4473-9b6a-6e280e49d1fe
Date: Tue, 6 Apr 2021 15:00:14 +0100
From: Tim Deegan <tim@xen.org>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH 03/14] xen/x86: shadow: The return type of
 sh_audit_flags() should be const
Message-ID: <YGxpbltNLUJN9cfe@deinos.phlegethon.org>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-4-julien@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <20210405155713.29754-4-julien@xen.org>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 16:57 +0100 on 05 Apr (1617641822), Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> The function sh_audit_flags() is returning pointer to literal strings.
> They should not be modified, so the return is now const and this is
> propagated to the callers.
> 
> Take the opportunity to fix the coding style in the declaration of
> sh_audit_flags.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Acked-by: Tim Deegan <tim@xen.org>

Thanks,

Tim.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:01:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:01:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105984.202661 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmGl-0005Hs-D1; Tue, 06 Apr 2021 14:01:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105984.202661; Tue, 06 Apr 2021 14: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 1lTmGl-0005Hl-9w; Tue, 06 Apr 2021 14:01:27 +0000
Received: by outflank-mailman (input) for mailman id 105984;
 Tue, 06 Apr 2021 14:01:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTmGj-0005Hf-Vg
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:01:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0490220a-22ad-41a5-9b4f-ee345d756fe1;
 Tue, 06 Apr 2021 14:01:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4077AB1BD;
 Tue,  6 Apr 2021 14:01: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: 0490220a-22ad-41a5-9b4f-ee345d756fe1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617717683; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=wEnWGL/BSIvoY8CXWjvvr4hQ9Rbcec+UPdK7vVB1MBg=;
	b=hPWawKy4pvj9a6moTqEg5jPb4ALOHXaXDni0WTAF4YmoS9SwN90pTeWclCO8R37fr8gZD8
	CEcYCtA4D3rcym0sF8cHdG23PpXX//ZNbnzQR+JmV8VO5xYZ/fHSLD7G7aKNJ8gryeyvey
	2YsDsRK6N0MAJUzLR1Fcetq5WO6+ONE=
Subject: [PATCH v2 1/3] x86: don't build unused entry code when !PV32
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
Message-ID: <213007e3-bb4c-a564-ca1d-860283646be4@suse.com>
Date: Tue, 6 Apr 2021 16:01:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Except for the initial part of cstar_enter compat/entry.S is all dead
code in this case. Further, along the lines of the PV conditionals we
already have in entry.S, make code PV32-conditional there too (to a
fair part because this code actually references compat/entry.S).

This has the side effect of moving the tail part (now at compat_syscall)
of the code out of .text.entry (in line with e.g. compat_sysenter).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: Avoid #ifdef-ary in compat/entry.S.
---
TBD: I'm on the fence of whether (in a separate patch) to also make
     conditional struct pv_domain's is_32bit field.

--- a/xen/arch/x86/x86_64/asm-offsets.c
+++ b/xen/arch/x86/x86_64/asm-offsets.c
@@ -9,7 +9,7 @@
 #include <xen/perfc.h>
 #endif
 #include <xen/sched.h>
-#ifdef CONFIG_PV
+#ifdef CONFIG_PV32
 #include <compat/xen.h>
 #endif
 #include <asm/hardirq.h>
@@ -102,19 +102,21 @@ void __dummy__(void)
     BLANK();
 #endif
 
-#ifdef CONFIG_PV
+#ifdef CONFIG_PV32
     OFFSET(DOMAIN_is_32bit_pv, struct domain, arch.pv.is_32bit);
     BLANK();
 
-    OFFSET(VCPUINFO_upcall_pending, struct vcpu_info, evtchn_upcall_pending);
-    OFFSET(VCPUINFO_upcall_mask, struct vcpu_info, evtchn_upcall_mask);
-    BLANK();
-
     OFFSET(COMPAT_VCPUINFO_upcall_pending, struct compat_vcpu_info, evtchn_upcall_pending);
     OFFSET(COMPAT_VCPUINFO_upcall_mask, struct compat_vcpu_info, evtchn_upcall_mask);
     BLANK();
 #endif
 
+#ifdef CONFIG_PV
+    OFFSET(VCPUINFO_upcall_pending, struct vcpu_info, evtchn_upcall_pending);
+    OFFSET(VCPUINFO_upcall_mask, struct vcpu_info, evtchn_upcall_mask);
+    BLANK();
+#endif
+
     OFFSET(CPUINFO_guest_cpu_user_regs, struct cpu_info, guest_cpu_user_regs);
     OFFSET(CPUINFO_verw_sel, struct cpu_info, verw_sel);
     OFFSET(CPUINFO_current_vcpu, struct cpu_info, current_vcpu);
--- a/xen/arch/x86/x86_64/compat/entry.S
+++ b/xen/arch/x86/x86_64/compat/entry.S
@@ -11,8 +11,6 @@
 #include <public/xen.h>
 #include <irq_vectors.h>
 
-#ifdef CONFIG_PV32
-
 ENTRY(entry_int82)
         ALTERNATIVE "", clac, X86_FEATURE_XEN_SMAP
         pushq $0
@@ -29,8 +27,6 @@ ENTRY(entry_int82)
         mov   %rsp, %rdi
         call  do_entry_int82
 
-#endif /* CONFIG_PV32 */
-
 /* %rbx: struct vcpu */
 ENTRY(compat_test_all_events)
         ASSERT_NOT_IN_ATOMIC
@@ -197,43 +193,7 @@ ENTRY(cr4_pv32_restore)
         xor   %eax, %eax
         ret
 
-        .section .text.entry, "ax", @progbits
-
-/* See lstar_enter for entry register state. */
-ENTRY(cstar_enter)
-#ifdef CONFIG_XEN_SHSTK
-        ALTERNATIVE "", "setssbsy", X86_FEATURE_XEN_SHSTK
-#endif
-        /* sti could live here when we don't switch page tables below. */
-        CR4_PV32_RESTORE
-        movq  8(%rsp),%rax /* Restore %rax. */
-        movq  $FLAT_USER_SS32, 8(%rsp) /* Assume a 64bit domain.  Compat handled lower. */
-        pushq %r11
-        pushq $FLAT_USER_CS32
-        pushq %rcx
-        pushq $0
-        movl  $TRAP_syscall, 4(%rsp)
-        SAVE_ALL
-
-        SPEC_CTRL_ENTRY_FROM_PV /* Req: %rsp=regs/cpuinfo, Clob: acd */
-        /* WARNING! `ret`, `call *`, `jmp *` not safe before this point. */
-
-        GET_STACK_END(bx)
-        mov   STACK_CPUINFO_FIELD(xen_cr3)(%rbx), %rcx
-        test  %rcx, %rcx
-        jz    .Lcstar_cr3_okay
-        movb  $0, STACK_CPUINFO_FIELD(use_pv_cr3)(%rbx)
-        mov   %rcx, %cr3
-        /* %r12 is still zero at this point. */
-        mov   %r12, STACK_CPUINFO_FIELD(xen_cr3)(%rbx)
-.Lcstar_cr3_okay:
-        sti
-
-        movq  STACK_CPUINFO_FIELD(current_vcpu)(%rbx), %rbx
-        movq  VCPU_domain(%rbx),%rcx
-        cmpb  $0,DOMAIN_is_32bit_pv(%rcx)
-        je    switch_to_kernel
-
+ENTRY(compat_syscall)
         /* Fix up reported %cs/%ss for compat domains. */
         movl  $FLAT_COMPAT_USER_SS, UREGS_ss(%rsp)
         movl  $FLAT_COMPAT_USER_CS, UREGS_cs(%rsp)
@@ -262,8 +222,6 @@ UNLIKELY_END(compat_syscall_gpf)
         movb  %cl,TRAPBOUNCE_flags(%rdx)
         jmp   .Lcompat_bounce_exception
 
-        .text
-
 ENTRY(compat_sysenter)
         CR4_PV32_RESTORE
         movq  VCPU_trap_ctxt(%rbx),%rcx
--- a/xen/arch/x86/x86_64/Makefile
+++ b/xen/arch/x86/x86_64/Makefile
@@ -1,4 +1,4 @@
-obj-$(CONFIG_PV) += compat/
+obj-$(CONFIG_PV32) += compat/
 
 obj-bin-y += entry.o
 obj-y += traps.o
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -24,7 +24,7 @@
 
 #ifdef CONFIG_PV
 /* %rbx: struct vcpu */
-ENTRY(switch_to_kernel)
+switch_to_kernel:
         leaq  VCPU_trap_bounce(%rbx),%rdx
 
         /* TB_eip = 32-bit syscall ? syscall32_addr : syscall_addr */
@@ -283,6 +283,45 @@ ENTRY(lstar_enter)
         call  pv_hypercall
         jmp   test_all_events
 
+/* See lstar_enter for entry register state. */
+ENTRY(cstar_enter)
+#ifdef CONFIG_XEN_SHSTK
+        ALTERNATIVE "", "setssbsy", X86_FEATURE_XEN_SHSTK
+#endif
+        /* sti could live here when we don't switch page tables below. */
+        CR4_PV32_RESTORE
+        movq  8(%rsp), %rax /* Restore %rax. */
+        movq  $FLAT_USER_SS32, 8(%rsp) /* Assume a 64bit domain.  Compat handled lower. */
+        pushq %r11
+        pushq $FLAT_USER_CS32
+        pushq %rcx
+        pushq $0
+        movl  $TRAP_syscall, 4(%rsp)
+        SAVE_ALL
+
+        SPEC_CTRL_ENTRY_FROM_PV /* Req: %rsp=regs/cpuinfo, Clob: acd */
+        /* WARNING! `ret`, `call *`, `jmp *` not safe before this point. */
+
+        GET_STACK_END(bx)
+        mov   STACK_CPUINFO_FIELD(xen_cr3)(%rbx), %rcx
+        test  %rcx, %rcx
+        jz    .Lcstar_cr3_okay
+        movb  $0, STACK_CPUINFO_FIELD(use_pv_cr3)(%rbx)
+        mov   %rcx, %cr3
+        /* %r12 is still zero at this point. */
+        mov   %r12, STACK_CPUINFO_FIELD(xen_cr3)(%rbx)
+.Lcstar_cr3_okay:
+        sti
+
+        movq  STACK_CPUINFO_FIELD(current_vcpu)(%rbx), %rbx
+
+#ifdef CONFIG_PV32
+        movq  VCPU_domain(%rbx), %rcx
+        cmpb  $0, DOMAIN_is_32bit_pv(%rcx)
+        jne   compat_syscall
+#endif
+        jmp   switch_to_kernel
+
 ENTRY(sysenter_entry)
 #ifdef CONFIG_XEN_SHSTK
         ALTERNATIVE "", "setssbsy", X86_FEATURE_XEN_SHSTK
@@ -340,8 +379,10 @@ UNLIKELY_END(sysenter_gpf)
         movq  VCPU_domain(%rbx),%rdi
         movq  %rax,TRAPBOUNCE_eip(%rdx)
         movb  %cl,TRAPBOUNCE_flags(%rdx)
+#ifdef CONFIG_PV32
         cmpb  $0, DOMAIN_is_32bit_pv(%rdi)
         jne   compat_sysenter
+#endif
         jmp   .Lbounce_exception
 
 ENTRY(int80_direct_trap)
@@ -382,6 +423,7 @@ UNLIKELY_END(msi_check)
         mov    0x80 * TRAPINFO_sizeof + TRAPINFO_eip(%rsi), %rdi
         movzwl 0x80 * TRAPINFO_sizeof + TRAPINFO_cs (%rsi), %ecx
 
+#ifdef CONFIG_PV32
         mov   %ecx, %edx
         and   $~3, %edx
 
@@ -390,6 +432,10 @@ UNLIKELY_END(msi_check)
 
         test  %rdx, %rdx
         jz    int80_slow_path
+#else
+        test  %rdi, %rdi
+        jz    int80_slow_path
+#endif
 
         /* Construct trap_bounce from trap_ctxt[0x80]. */
         lea   VCPU_trap_bounce(%rbx), %rdx
@@ -402,8 +448,10 @@ UNLIKELY_END(msi_check)
         lea   (, %rcx, TBF_INTERRUPT), %ecx
         mov   %cl, TRAPBOUNCE_flags(%rdx)
 
+#ifdef CONFIG_PV32
         cmpb  $0, DOMAIN_is_32bit_pv(%rax)
         jne   compat_int80_direct_trap
+#endif
 
         call  create_bounce_frame
         jmp   test_all_events
@@ -555,12 +603,16 @@ ENTRY(dom_crash_sync_extable)
         GET_STACK_END(ax)
         leaq  STACK_CPUINFO_FIELD(guest_cpu_user_regs)(%rax),%rsp
         # create_bounce_frame() temporarily clobbers CS.RPL. Fix up.
+#ifdef CONFIG_PV32
         movq  STACK_CPUINFO_FIELD(current_vcpu)(%rax), %rax
         movq  VCPU_domain(%rax),%rax
         cmpb  $0, DOMAIN_is_32bit_pv(%rax)
         sete  %al
         leal  (%rax,%rax,2),%eax
         orb   %al,UREGS_cs(%rsp)
+#else
+        orb   $3, UREGS_cs(%rsp)
+#endif
         xorl  %edi,%edi
         jmp   asm_domain_crash_synchronous /* Does not return */
         .popsection
@@ -578,11 +630,15 @@ ret_from_intr:
         GET_CURRENT(bx)
         testb $3, UREGS_cs(%rsp)
         jz    restore_all_xen
+#ifdef CONFIG_PV32
         movq  VCPU_domain(%rbx), %rax
         cmpb  $0, DOMAIN_is_32bit_pv(%rax)
         je    test_all_events
         jmp   compat_test_all_events
 #else
+        jmp   test_all_events
+#endif
+#else
 ret_from_intr:
         ASSERT_CONTEXT_IS_XEN
         jmp   restore_all_xen
@@ -671,7 +727,7 @@ handle_exception_saved:
         testb $X86_EFLAGS_IF>>8,UREGS_eflags+1(%rsp)
         jz    exception_with_ints_disabled
 
-#ifdef CONFIG_PV
+#if defined(CONFIG_PV32)
         ALTERNATIVE_2 "jmp .Lcr4_pv32_done", \
             __stringify(mov VCPU_domain(%rbx), %rax), X86_FEATURE_XEN_SMEP, \
             __stringify(mov VCPU_domain(%rbx), %rax), X86_FEATURE_XEN_SMAP
@@ -711,7 +767,7 @@ handle_exception_saved:
         test  $~(PFEC_write_access|PFEC_insn_fetch),%eax
         jz    compat_test_all_events
 .Lcr4_pv32_done:
-#else
+#elif !defined(CONFIG_PV)
         ASSERT_CONTEXT_IS_XEN
 #endif /* CONFIG_PV */
         sti
@@ -730,9 +786,11 @@ handle_exception_saved:
 #ifdef CONFIG_PV
         testb $3,UREGS_cs(%rsp)
         jz    restore_all_xen
+#ifdef CONFIG_PV32
         movq  VCPU_domain(%rbx),%rax
         cmpb  $0, DOMAIN_is_32bit_pv(%rax)
         jne   compat_test_all_events
+#endif
         jmp   test_all_events
 #else
         ASSERT_CONTEXT_IS_XEN
@@ -968,11 +1026,16 @@ handle_ist_exception:
         je    1f
         movl  $EVENT_CHECK_VECTOR,%edi
         call  send_IPI_self
-1:      movq  VCPU_domain(%rbx),%rax
+1:
+#ifdef CONFIG_PV32
+        movq  VCPU_domain(%rbx),%rax
         cmpb  $0,DOMAIN_is_32bit_pv(%rax)
         je    restore_all_guest
         jmp   compat_restore_all_guest
 #else
+        jmp   restore_all_guest
+#endif
+#else
         ASSERT_CONTEXT_IS_XEN
         jmp   restore_all_xen
 #endif
--- a/xen/include/asm-x86/asm_defns.h
+++ b/xen/include/asm-x86/asm_defns.h
@@ -305,7 +305,7 @@ static always_inline void stac(void)
         subq  $-(UREGS_error_code-UREGS_r15+\adj), %rsp
 .endm
 
-#ifdef CONFIG_PV
+#ifdef CONFIG_PV32
 #define CR4_PV32_RESTORE                               \
     ALTERNATIVE_2 "",                                  \
         "call cr4_pv32_restore", X86_FEATURE_XEN_SMEP, \



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:01:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:01:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105986.202673 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmH3-0005N1-M9; Tue, 06 Apr 2021 14:01:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105986.202673; Tue, 06 Apr 2021 14: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 1lTmH3-0005Mu-Im; Tue, 06 Apr 2021 14:01:45 +0000
Received: by outflank-mailman (input) for mailman id 105986;
 Tue, 06 Apr 2021 14:01:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTmH2-0005Mf-CT
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:01:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 064f3cdc-1ed3-49c2-832d-0e1228125673;
 Tue, 06 Apr 2021 14:01:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 488C5B1BC;
 Tue,  6 Apr 2021 14:01: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: 064f3cdc-1ed3-49c2-832d-0e1228125673
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617717702; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=vEZ17NvnwSlKSweZ+wN2qQa/aenPa2meHi6XZJOo/ow=;
	b=B4MIKukkk9wf7G+VZI2BNpDegW/ZAbH99YjD5I0cIz+vq1jyqONPXHex3Oufol0t2fc1dt
	nKIs0KJn53sbqh3XZ8rVzVuC7VE04YUnvx8t4Q3t+0/sIrGxvKyK3cbC3FwMRTA72khhWg
	COTDsw9gcEOmWGvKX/Fp2HGstxg+pFM=
Subject: [PATCH v2 2/3] x86: slim down hypercall handling when !PV32
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
Message-ID: <d85736e6-bca9-de3a-328d-d727c327dbda@suse.com>
Date: Tue, 6 Apr 2021 16:01:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

In such a build various of the compat handlers aren't needed. Don't
reference them from the hypercall table, and compile out those which
aren't needed for HVM. Also compile out switch_compat(), which has no
purpose in such a build.

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

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -17,7 +17,8 @@ obj-bin-y += bzimage.init.o
 obj-bin-y += clear_page.o
 obj-bin-y += copy_page.o
 obj-y += cpuid.o
-obj-$(CONFIG_PV) += compat.o x86_64/compat.o
+obj-$(CONFIG_PV) += compat.o
+obj-$(CONFIG_PV32) += x86_64/compat.o
 obj-$(CONFIG_KEXEC) += crash.o
 obj-$(CONFIG_GDBSX) += debug.o
 obj-y += delay.o
--- a/xen/arch/x86/hvm/hypercall.c
+++ b/xen/arch/x86/hvm/hypercall.c
@@ -121,7 +121,9 @@ static long hvm_physdev_op(int cmd, XEN_
 
 #define do_arch_1             paging_domctl_continuation
 
-static const hypercall_table_t hvm_hypercall_table[] = {
+static const struct {
+    hypercall_fn_t *native, *compat;
+} hvm_hypercall_table[] = {
     HVM_CALL(memory_op),
 #ifdef CONFIG_GRANT_TABLE
     HVM_CALL(grant_table_op),
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -4498,7 +4498,9 @@ long do_update_va_mapping_otherdomain(un
 
     return rc;
 }
+#endif /* CONFIG_PV */
 
+#ifdef CONFIG_PV32
 int compat_update_va_mapping(unsigned int va, uint32_t lo, uint32_t hi,
                              unsigned int flags)
 {
@@ -4533,7 +4535,7 @@ int compat_update_va_mapping_otherdomain
 
     return rc;
 }
-#endif /* CONFIG_PV */
+#endif /* CONFIG_PV32 */
 
 typedef struct e820entry e820entry_t;
 DEFINE_XEN_GUEST_HANDLE(e820entry_t);
--- a/xen/arch/x86/pv/callback.c
+++ b/xen/arch/x86/pv/callback.c
@@ -19,12 +19,11 @@
 #include <xen/event.h>
 #include <xen/hypercall.h>
 #include <xen/guest_access.h>
-#include <compat/callback.h>
-#include <compat/nmi.h>
 
 #include <asm/shared.h>
 
 #include <public/callback.h>
+#include <public/nmi.h>
 
 static int register_guest_nmi_callback(unsigned long address)
 {
@@ -203,6 +202,11 @@ long do_set_callbacks(unsigned long even
     return 0;
 }
 
+#ifdef CONFIG_PV32
+
+#include <compat/callback.h>
+#include <compat/nmi.h>
+
 static long compat_register_guest_callback(struct compat_callback_register *reg)
 {
     long ret = 0;
@@ -343,6 +347,8 @@ long compat_set_callbacks(unsigned long
     return 0;
 }
 
+#endif /* CONFIG_PV32 */
+
 long do_set_trap_table(XEN_GUEST_HANDLE_PARAM(const_trap_info_t) traps)
 {
     struct trap_info cur;
@@ -388,6 +394,7 @@ long do_set_trap_table(XEN_GUEST_HANDLE_
     return rc;
 }
 
+#ifdef CONFIG_PV32
 int compat_set_trap_table(XEN_GUEST_HANDLE(trap_info_compat_t) traps)
 {
     struct vcpu *curr = current;
@@ -429,6 +436,7 @@ int compat_set_trap_table(XEN_GUEST_HAND
 
     return rc;
 }
+#endif
 
 long do_nmi_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
 {
@@ -455,6 +463,7 @@ long do_nmi_op(unsigned int cmd, XEN_GUE
     return rc;
 }
 
+#ifdef CONFIG_PV32
 int compat_nmi_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
 {
     struct compat_nmi_callback cb;
@@ -479,6 +488,7 @@ int compat_nmi_op(unsigned int cmd, XEN_
 
     return rc;
 }
+#endif
 
 /*
  * Local variables:
--- a/xen/arch/x86/pv/descriptor-tables.c
+++ b/xen/arch/x86/pv/descriptor-tables.c
@@ -149,6 +149,8 @@ long do_set_gdt(XEN_GUEST_HANDLE_PARAM(x
     return ret;
 }
 
+#ifdef CONFIG_PV32
+
 int compat_set_gdt(XEN_GUEST_HANDLE_PARAM(uint) frame_list,
                    unsigned int entries)
 {
@@ -185,6 +187,18 @@ int compat_set_gdt(XEN_GUEST_HANDLE_PARA
     return ret;
 }
 
+int compat_update_descriptor(uint32_t pa_lo, uint32_t pa_hi,
+                             uint32_t desc_lo, uint32_t desc_hi)
+{
+    seg_desc_t d;
+
+    d.raw = ((uint64_t)desc_hi << 32) | desc_lo;
+
+    return do_update_descriptor(pa_lo | ((uint64_t)pa_hi << 32), d);
+}
+
+#endif /* CONFIG_PV32 */
+
 static bool check_descriptor(const struct domain *dom, seg_desc_t *d)
 {
     unsigned int a = d->a, b = d->b, cs, dpl;
@@ -334,16 +348,6 @@ long do_update_descriptor(uint64_t gaddr
     return ret;
 }
 
-int compat_update_descriptor(uint32_t pa_lo, uint32_t pa_hi,
-                             uint32_t desc_lo, uint32_t desc_hi)
-{
-    seg_desc_t d;
-
-    d.raw = ((uint64_t)desc_hi << 32) | desc_lo;
-
-    return do_update_descriptor(pa_lo | ((uint64_t)pa_hi << 32), d);
-}
-
 /*
  * Local variables:
  * mode: C
--- a/xen/arch/x86/pv/domain.c
+++ b/xen/arch/x86/pv/domain.c
@@ -212,6 +212,7 @@ unsigned long pv_make_cr4(const struct v
     return cr4;
 }
 
+#ifdef CONFIG_PV32
 int switch_compat(struct domain *d)
 {
     struct vcpu *v;
@@ -256,6 +257,7 @@ int switch_compat(struct domain *d)
 
     return rc;
 }
+#endif
 
 static int pv_create_gdt_ldt_l1tab(struct vcpu *v)
 {
--- a/xen/arch/x86/pv/hypercall.c
+++ b/xen/arch/x86/pv/hypercall.c
@@ -25,12 +25,18 @@
 #include <xen/trace.h>
 #include <irq_vectors.h>
 
+#ifdef CONFIG_PV32
 #define HYPERCALL(x)                                                \
     [ __HYPERVISOR_ ## x ] = { (hypercall_fn_t *) do_ ## x,         \
                                (hypercall_fn_t *) do_ ## x }
 #define COMPAT_CALL(x)                                              \
     [ __HYPERVISOR_ ## x ] = { (hypercall_fn_t *) do_ ## x,         \
                                (hypercall_fn_t *) compat_ ## x }
+#else
+#define HYPERCALL(x)                                                \
+    [ __HYPERVISOR_ ## x ] = { (hypercall_fn_t *) do_ ## x }
+#define COMPAT_CALL(x) HYPERCALL(x)
+#endif
 
 #define do_arch_1             paging_domctl_continuation
 
@@ -176,6 +182,7 @@ void pv_hypercall(struct cpu_user_regs *
         }
 #endif
     }
+#ifdef CONFIG_PV32
     else
     {
         unsigned int ebx = regs->ebx;
@@ -225,6 +232,7 @@ void pv_hypercall(struct cpu_user_regs *
         }
 #endif
     }
+#endif /* CONFIG_PV32 */
 
     /*
      * PV guests use SYSCALL or INT $0x82 to make a hypercall, both of which
@@ -255,7 +263,7 @@ enum mc_disposition arch_do_multicall_ca
         else
             call->result = -ENOSYS;
     }
-#ifdef CONFIG_COMPAT
+#ifdef CONFIG_PV32
     else
     {
         struct compat_multicall_entry *call = &state->compat_call;
--- a/xen/arch/x86/pv/iret.c
+++ b/xen/arch/x86/pv/iret.c
@@ -104,6 +104,7 @@ unsigned long do_iret(void)
     return 0;
 }
 
+#ifdef CONFIG_PV32
 unsigned int compat_iret(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
@@ -223,6 +224,7 @@ unsigned int compat_iret(void)
      */
     return regs->eax;
 }
+#endif
 
 /*
  * Local variables:
--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -255,13 +255,17 @@ void __init pv_shim_setup_dom(struct dom
      */
     rw_pv_hypercall_table = __va(__pa(pv_hypercall_table));
     rw_pv_hypercall_table[__HYPERVISOR_event_channel_op].native =
-        rw_pv_hypercall_table[__HYPERVISOR_event_channel_op].compat =
         (hypercall_fn_t *)pv_shim_event_channel_op;
-
     rw_pv_hypercall_table[__HYPERVISOR_grant_table_op].native =
-        rw_pv_hypercall_table[__HYPERVISOR_grant_table_op].compat =
         (hypercall_fn_t *)pv_shim_grant_table_op;
 
+#ifdef CONFIG_PV32
+    rw_pv_hypercall_table[__HYPERVISOR_event_channel_op].compat =
+        (hypercall_fn_t *)pv_shim_event_channel_op;
+    rw_pv_hypercall_table[__HYPERVISOR_grant_table_op].compat =
+        (hypercall_fn_t *)pv_shim_grant_table_op;
+#endif
+
     guest = d;
 
     /*
--- a/xen/include/asm-x86/compat.h
+++ b/xen/include/asm-x86/compat.h
@@ -6,3 +6,11 @@
 
 typedef uint32_t compat_ptr_t;
 typedef unsigned long full_ptr_t;
+
+struct domain;
+#ifdef CONFIG_PV32
+int switch_compat(struct domain *);
+#else
+#include <xen/errno.h>
+static inline int switch_compat(struct domain *d) { return -EOPNOTSUPP; }
+#endif
--- a/xen/include/asm-x86/hypercall.h
+++ b/xen/include/asm-x86/hypercall.h
@@ -16,7 +16,10 @@ typedef unsigned long hypercall_fn_t(
     unsigned long, unsigned long, unsigned long);
 
 typedef struct {
-    hypercall_fn_t *native, *compat;
+    hypercall_fn_t *native;
+#ifdef CONFIG_PV32
+    hypercall_fn_t *compat;
+#endif
 } hypercall_table_t;
 
 typedef struct {
--- a/xen/include/xen/compat.h
+++ b/xen/include/xen/compat.h
@@ -227,9 +227,6 @@ void xlat_start_info(struct start_info *
 struct vcpu_runstate_info;
 void xlat_vcpu_runstate_info(struct vcpu_runstate_info *);
 
-struct domain;
-int switch_compat(struct domain *);
-
 #else
 
 #define compat_handle_is_null(hnd) 0



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:02:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:02:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105994.202685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmHY-0005Tm-Vu; Tue, 06 Apr 2021 14:02:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105994.202685; Tue, 06 Apr 2021 14: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 1lTmHY-0005Tf-SH; Tue, 06 Apr 2021 14:02:16 +0000
Received: by outflank-mailman (input) for mailman id 105994;
 Tue, 06 Apr 2021 14:02:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTmHX-0005Sv-Sf
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:02:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3a47c945-85f7-48a6-837b-9d027c5dec58;
 Tue, 06 Apr 2021 14:02:09 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 92593B178;
 Tue,  6 Apr 2021 14: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: 3a47c945-85f7-48a6-837b-9d027c5dec58
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617717728; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Q2+SZoShJf96g9SNse0hjvg19m/VI9Uy4veE6w5iXx4=;
	b=TfuiLuZNikliXehi6l3SzMMrE+eMbJBu5938OBg9i52kth2DgpIQsaP06YffigpFJq7Lxb
	JgrglpVq3632Gb4yVclGqIgYGygnQ1HhZ2WdXEYEc6+bweBWsjuzJUAbDZMMAR6clwWhUh
	+4Q5VwHbyw8UTsQi5tOVXgvzS4ge1/k=
Subject: [PATCH v2 3/3] x86: avoid building COMPAT code when !HVM && !PV32
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
Message-ID: <85b6edfc-9756-9dd0-c90f-f46dc120dade@suse.com>
Date: Tue, 6 Apr 2021 16:02:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

It was probably a mistake to, over time, drop various CONFIG_COMPAT
conditionals from x86-specific code, as we now have a build
configuration again where we'd prefer this to be unset. Arrange for
CONFIG_COMPAT to actually be off in this case, dealing with fallout.

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

--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -6,7 +6,6 @@ config X86
 	select ACPI
 	select ACPI_LEGACY_TABLES_LOOKUP
 	select ARCH_SUPPORTS_INT128
-	select COMPAT
 	select CORE_PARKING
 	select HAS_ALTERNATIVE
 	select HAS_CPUFREQ
@@ -57,6 +56,7 @@ config PV32
 	bool "Support for 32bit PV guests"
 	depends on PV
 	default y
+	select COMPAT
 	---help---
 	  The 32bit PV ABI uses Ring1, an area of the x86 architecture which
 	  was deprecated and mostly removed in the AMD64 spec.  As a result,
@@ -91,6 +91,7 @@ config PV_LINEAR_PT
 
 config HVM
 	def_bool !PV_SHIM_EXCLUSIVE
+	select COMPAT
 	select IOREQ_SERVER
 	prompt "HVM support"
 	---help---
--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -50,7 +50,8 @@ obj-y += nmi.o
 obj-y += numa.o
 obj-y += pci.o
 obj-y += percpu.o
-obj-y += physdev.o x86_64/physdev.o
+obj-y += physdev.o
+obj-$(CONFIG_COMPAT) += x86_64/physdev.o
 obj-y += psr.o
 obj-y += setup.o
 obj-y += shutdown.o
@@ -72,7 +73,8 @@ obj-y += xstate.o
 
 ifneq ($(CONFIG_PV_SHIM_EXCLUSIVE),y)
 obj-y += domctl.o
-obj-y += platform_hypercall.o x86_64/platform_hypercall.o
+obj-y += platform_hypercall.o
+obj-$(CONFIG_COMPAT) += x86_64/platform_hypercall.o
 obj-y += sysctl.o
 endif
 
--- a/xen/arch/x86/cpu/mcheck/mce.c
+++ b/xen/arch/x86/cpu/mcheck/mce.c
@@ -1291,6 +1291,8 @@ static void x86_mc_mceinject(void *data)
 #error BITS_PER_LONG definition absent
 #endif
 
+# ifdef CONFIG_COMPAT
+
 # include <compat/arch-x86/xen-mca.h>
 
 # define xen_mcinfo_msr              mcinfo_msr
@@ -1343,6 +1345,11 @@ CHECK_mcinfo_recovery;
 # undef xen_page_offline_action
 # undef xen_mcinfo_recovery
 
+# else
+#  define compat_handle_is_null(h) true
+#  define copy_to_compat(h, p, n)  true /* really (-EFAULT), but gcc chokes */
+# endif /* CONFIG_COMPAT */
+
 /* Machine Check Architecture Hypercall */
 long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
 {
@@ -1351,11 +1358,15 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_m
     struct vcpu *v = current;
     union {
         struct xen_mc_fetch *nat;
+#ifdef CONFIG_COMPAT
         struct compat_mc_fetch *cmp;
+#endif
     } mc_fetch;
     union {
         struct xen_mc_physcpuinfo *nat;
+#ifdef CONFIG_COMPAT
         struct compat_mc_physcpuinfo *cmp;
+#endif
     } mc_physcpuinfo;
     uint32_t flags, cmdflags;
     int nlcpu;
--- a/xen/arch/x86/cpu/vpmu.c
+++ b/xen/arch/x86/cpu/vpmu.c
@@ -39,10 +39,12 @@
 #include <public/pmu.h>
 #include <xsm/xsm.h>
 
+#ifdef CONFIG_COMPAT
 #include <compat/pmu.h>
 CHECK_pmu_cntr_pair;
 CHECK_pmu_data;
 CHECK_pmu_params;
+#endif
 
 static unsigned int __read_mostly opt_vpmu_enabled;
 unsigned int __read_mostly vpmu_mode = XENPMU_MODE_OFF;
@@ -232,6 +234,7 @@ void vpmu_do_interrupt(struct cpu_user_r
             domid = sampled->domain->domain_id;
 
         /* Store appropriate registers in xenpmu_data */
+#ifdef CONFIG_COMPAT
         /* FIXME: 32-bit PVH should go here as well */
         if ( is_pv_32bit_vcpu(sampling) )
         {
@@ -254,6 +257,7 @@ void vpmu_do_interrupt(struct cpu_user_r
                 *flags |= PMU_SAMPLE_USER;
         }
         else
+#endif
         {
             struct xen_pmu_regs *r = &vpmu->xenpmu_data->pmu.r.regs;
 
@@ -448,7 +452,9 @@ static int vpmu_arch_initialise(struct v
     BUILD_BUG_ON(sizeof(struct xen_pmu_intel_ctxt) > XENPMU_CTXT_PAD_SZ);
     BUILD_BUG_ON(sizeof(struct xen_pmu_amd_ctxt) > XENPMU_CTXT_PAD_SZ);
     BUILD_BUG_ON(sizeof(struct xen_pmu_regs) > XENPMU_REGS_PAD_SZ);
+#ifdef CONFIG_COMPAT
     BUILD_BUG_ON(sizeof(struct compat_pmu_regs) > XENPMU_REGS_PAD_SZ);
+#endif
 
     ASSERT(!(vpmu->flags & ~VPMU_AVAILABLE) && !vpmu->context);
 
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -64,7 +64,9 @@
 #include <asm/amd.h>
 #include <xen/numa.h>
 #include <xen/iommu.h>
+#ifdef CONFIG_COMPAT
 #include <compat/vcpu.h>
+#endif
 #include <asm/psr.h>
 #include <asm/pv/domain.h>
 #include <asm/pv/mm.h>
@@ -1020,11 +1022,13 @@ void arch_domain_creation_finished(struc
         hvm_domain_creation_finished(d);
 }
 
+#ifdef CONFIG_COMPAT
 #define xen_vcpu_guest_context vcpu_guest_context
 #define fpu_ctxt fpu_ctxt.x
 CHECK_FIELD_(struct, vcpu_guest_context, fpu_ctxt);
 #undef fpu_ctxt
 #undef xen_vcpu_guest_context
+#endif
 
 /* Called by XEN_DOMCTL_setvcpucontext and VCPUOP_initialise. */
 int arch_set_info_guest(
@@ -1045,7 +1049,11 @@ int arch_set_info_guest(
      * we expect the tools to DTRT even in compat-mode callers. */
     compat = is_pv_32bit_domain(d);
 
+#ifdef CONFIG_COMPAT
 #define c(fld) (compat ? (c.cmp->fld) : (c.nat->fld))
+#else
+#define c(fld) (c.nat->fld)
+#endif
     flags = c(flags);
 
     if ( is_pv_domain(d) )
@@ -1078,6 +1086,7 @@ int arch_set_info_guest(
             if ( !__addr_ok(c.nat->ldt_base) )
                 return -EINVAL;
         }
+#ifdef CONFIG_COMPAT
         else
         {
             fixup_guest_stack_selector(d, c.cmp->user_regs.ss);
@@ -1089,6 +1098,7 @@ int arch_set_info_guest(
             for ( i = 0; i < ARRAY_SIZE(c.cmp->trap_ctxt); i++ )
                 fixup_guest_code_selector(d, c.cmp->trap_ctxt[i].cs);
         }
+#endif
 
         /* LDT safety checks. */
         if ( ((c(ldt_base) & (PAGE_SIZE - 1)) != 0) ||
@@ -1119,6 +1129,7 @@ int arch_set_info_guest(
             memcpy(v->arch.pv.trap_ctxt, c.nat->trap_ctxt,
                    sizeof(c.nat->trap_ctxt));
     }
+#ifdef CONFIG_COMPAT
     else
     {
         XLAT_cpu_user_regs(&v->arch.user_regs, &c.cmp->user_regs);
@@ -1129,6 +1140,7 @@ int arch_set_info_guest(
                                c.cmp->trap_ctxt + i);
         }
     }
+#endif
 
     if ( v->vcpu_id == 0 && (c(vm_assist) & ~arch_vm_assist_valid_mask(d)) )
         return -EINVAL;
@@ -1184,13 +1196,17 @@ int arch_set_info_guest(
                 pfn = pagetable_get_pfn(v->arch.guest_table_user);
                 fail |= xen_pfn_to_cr3(pfn) != c.nat->ctrlreg[1];
             }
-        } else {
+        }
+#ifdef CONFIG_COMPAT
+        else
+        {
             l4_pgentry_t *l4tab = map_domain_page(_mfn(pfn));
 
             pfn = l4e_get_pfn(*l4tab);
             unmap_domain_page(l4tab);
             fail = compat_pfn_to_cr3(pfn) != c.cmp->ctrlreg[3];
         }
+#endif
 
         fail |= v->arch.pv.gdt_ents != c(gdt_ents);
         for ( i = 0; !fail && i < nr_gdt_frames; ++i )
@@ -1293,6 +1309,7 @@ int arch_set_info_guest(
 
     if ( !compat )
         rc = pv_set_gdt(v, c.nat->gdt_frames, c.nat->gdt_ents);
+#ifdef CONFIG_COMPAT
     else
     {
         unsigned long gdt_frames[ARRAY_SIZE(v->arch.pv.gdt_frames)];
@@ -1302,6 +1319,7 @@ int arch_set_info_guest(
 
         rc = pv_set_gdt(v, gdt_frames, c.cmp->gdt_ents);
     }
+#endif
     if ( rc != 0 )
         return rc;
 
@@ -1309,8 +1327,10 @@ int arch_set_info_guest(
 
     if ( !compat )
         cr3_mfn = _mfn(xen_cr3_to_pfn(c.nat->ctrlreg[3]));
+#ifdef CONFIG_COMPAT
     else
         cr3_mfn = _mfn(compat_cr3_to_pfn(c.cmp->ctrlreg[3]));
+#endif
     cr3_page = get_page_from_mfn(cr3_mfn, d);
 
     if ( !cr3_page )
@@ -1817,9 +1837,13 @@ bool update_runstate_area(struct vcpu *v
 
     if ( VM_ASSIST(v->domain, runstate_update_flag) )
     {
+#ifdef CONFIG_COMPAT
         guest_handle = has_32bit_shinfo(v->domain)
             ? &v->runstate_guest.compat.p->state_entry_time + 1
             : &v->runstate_guest.native.p->state_entry_time + 1;
+#else
+        guest_handle = &v->runstate_guest.p->state_entry_time + 1;
+#endif
         guest_handle--;
         runstate.state_entry_time |= XEN_RUNSTATE_UPDATE;
         __raw_copy_to_guest(guest_handle,
@@ -1827,6 +1851,7 @@ bool update_runstate_area(struct vcpu *v
         smp_wmb();
     }
 
+#ifdef CONFIG_COMPAT
     if ( has_32bit_shinfo(v->domain) )
     {
         struct compat_vcpu_runstate_info info;
@@ -1836,6 +1861,7 @@ bool update_runstate_area(struct vcpu *v
         rc = true;
     }
     else
+#endif
         rc = __copy_to_guest(runstate_guest(v), &runstate, 1) !=
              sizeof(runstate);
 
--- a/xen/arch/x86/domctl.c
+++ b/xen/arch/x86/domctl.c
@@ -1384,18 +1384,24 @@ long arch_do_domctl(
     return ret;
 }
 
+#ifdef CONFIG_COMPAT
 #define xen_vcpu_guest_context vcpu_guest_context
 #define fpu_ctxt fpu_ctxt.x
 CHECK_FIELD_(struct, vcpu_guest_context, fpu_ctxt);
 #undef fpu_ctxt
 #undef xen_vcpu_guest_context
+#endif
 
 void arch_get_info_guest(struct vcpu *v, vcpu_guest_context_u c)
 {
     unsigned int i;
     const struct domain *d = v->domain;
     bool compat = is_pv_32bit_domain(d);
+#ifdef CONFIG_COMPAT
 #define c(fld) (!compat ? (c.nat->fld) : (c.cmp->fld))
+#else
+#define c(fld) (c.nat->fld)
+#endif
 
     memcpy(&c.nat->fpu_ctxt, v->arch.fpu_ctxt, sizeof(c.nat->fpu_ctxt));
     if ( is_pv_domain(d) )
@@ -1413,6 +1419,7 @@ void arch_get_info_guest(struct vcpu *v,
             memcpy(c.nat->trap_ctxt, v->arch.pv.trap_ctxt,
                    sizeof(c.nat->trap_ctxt));
     }
+#ifdef CONFIG_COMPAT
     else
     {
         XLAT_cpu_user_regs(&c.cmp->user_regs, &v->arch.user_regs);
@@ -1423,6 +1430,7 @@ void arch_get_info_guest(struct vcpu *v,
                                v->arch.pv.trap_ctxt + i);
         }
     }
+#endif
 
     for ( i = 0; i < ARRAY_SIZE(v->arch.dr); ++i )
         c(debugreg[i] = v->arch.dr[i]);
@@ -1468,8 +1476,10 @@ void arch_get_info_guest(struct vcpu *v,
         c(ldt_ents = v->arch.pv.ldt_ents);
         for ( i = 0; i < ARRAY_SIZE(v->arch.pv.gdt_frames); ++i )
             c(gdt_frames[i] = v->arch.pv.gdt_frames[i]);
+#ifdef CONFIG_COMPAT
         BUILD_BUG_ON(ARRAY_SIZE(c.nat->gdt_frames) !=
                      ARRAY_SIZE(c.cmp->gdt_frames));
+#endif
         for ( ; i < ARRAY_SIZE(c.nat->gdt_frames); ++i )
             c(gdt_frames[i] = 0);
         c(gdt_ents = v->arch.pv.gdt_ents);
@@ -1504,6 +1514,7 @@ void arch_get_info_guest(struct vcpu *v,
                 pagetable_is_null(v->arch.guest_table_user) ? 0
                 : xen_pfn_to_cr3(pagetable_get_pfn(v->arch.guest_table_user));
         }
+#ifdef CONFIG_COMPAT
         else
         {
             const l4_pgentry_t *l4e =
@@ -1512,6 +1523,7 @@ void arch_get_info_guest(struct vcpu *v,
             c.cmp->ctrlreg[3] = compat_pfn_to_cr3(l4e_get_pfn(*l4e));
             unmap_domain_page(l4e);
         }
+#endif
 
         if ( guest_kernel_mode(v, &v->arch.user_regs) )
             c(flags |= VGCF_in_kernel);
--- a/xen/arch/x86/efi/Makefile
+++ b/xen/arch/x86/efi/Makefile
@@ -8,13 +8,14 @@ cmd_objcopy_o_ihex = $(OBJCOPY) -I ihex
 
 boot.init.o: buildid.o
 
-EFIOBJ := boot.init.o pe.init.o ebmalloc.o compat.o runtime.o
+EFIOBJ-y := boot.init.o pe.init.o ebmalloc.o runtime.o
+EFIOBJ-$(CONFIG_COMPAT) += compat.o
 
 $(call cc-option-add,cflags-stack-boundary,CC,-mpreferred-stack-boundary=4)
-$(EFIOBJ): CFLAGS-stack-boundary := $(cflags-stack-boundary)
+$(EFIOBJ-y): CFLAGS-stack-boundary := $(cflags-stack-boundary)
 
 obj-y := stub.o
-obj-$(XEN_BUILD_EFI) := $(filter-out %.init.o,$(EFIOBJ))
-obj-bin-$(XEN_BUILD_EFI) := $(filter %.init.o,$(EFIOBJ))
+obj-$(XEN_BUILD_EFI) := $(filter-out %.init.o,$(EFIOBJ-y))
+obj-bin-$(XEN_BUILD_EFI) := $(filter %.init.o,$(EFIOBJ-y))
 extra-$(XEN_BUILD_EFI) += buildid.o relocs-dummy.o
 nocov-$(XEN_BUILD_EFI) += stub.o
--- a/xen/arch/x86/hypercall.c
+++ b/xen/arch/x86/hypercall.c
@@ -21,10 +21,15 @@
 
 #include <xen/hypercall.h>
 
+#ifdef CONFIG_COMPAT
 #define ARGS(x, n)                              \
     [ __HYPERVISOR_ ## x ] = { n, n }
 #define COMP(x, n, c)                           \
     [ __HYPERVISOR_ ## x ] = { n, c }
+#else
+#define ARGS(x, n)    [ __HYPERVISOR_ ## x ] = { n }
+#define COMP(x, n, c) ARGS(x, n)
+#endif
 
 const hypercall_args_t hypercall_args_table[NR_hypercalls] =
 {
@@ -113,7 +118,11 @@ unsigned long hypercall_create_continuat
 
         regs->rax = op;
 
+#ifdef CONFIG_COMPAT
         if ( !curr->hcall_compat )
+#else
+        if ( true )
+#endif
         {
             for ( i = 0; *p != '\0'; i++ )
             {
--- a/xen/arch/x86/pv/dom0_build.c
+++ b/xen/arch/x86/pv/dom0_build.c
@@ -877,9 +877,11 @@ int __init dom0_construct_pv(struct doma
         pv_shim_setup_dom(d, l4start, v_start, vxenstore_start, vconsole_start,
                           vphysmap_start, si);
 
+#ifdef CONFIG_COMPAT
     if ( is_pv_32bit_domain(d) )
         xlat_start_info(si, pv_shim ? XLAT_start_info_console_domU
                                     : XLAT_start_info_console_dom0);
+#endif
 
     /* Return to idle domain's page tables. */
     mapcache_override_current(NULL);
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -27,8 +27,10 @@
 #include <xen/virtual_region.h>
 #include <xen/watchdog.h>
 #include <public/version.h>
+#ifdef CONFIG_COMPAT
 #include <compat/platform.h>
 #include <compat/xen.h>
+#endif
 #include <xen/bitops.h>
 #include <asm/smp.h>
 #include <asm/processor.h>
@@ -1615,10 +1617,12 @@ void __init noreturn __start_xen(unsigne
     BUILD_BUG_ON(sizeof(shared_info_t) > PAGE_SIZE);
     BUILD_BUG_ON(sizeof(struct vcpu_info) != 64);
 
+#ifdef CONFIG_COMPAT
     BUILD_BUG_ON(sizeof_field(struct compat_platform_op, u) !=
                  sizeof_field(struct compat_platform_op, u.pad));
     BUILD_BUG_ON(sizeof(start_info_compat_t) > PAGE_SIZE);
     BUILD_BUG_ON(sizeof(struct compat_vcpu_info) != 64);
+#endif
 
     /* Check definitions in public headers match internal defs. */
     BUILD_BUG_ON(__HYPERVISOR_VIRT_START != HYPERVISOR_VIRT_START);
--- a/xen/arch/x86/oprofile/backtrace.c
+++ b/xen/arch/x86/oprofile/backtrace.c
@@ -27,7 +27,6 @@ struct __packed frame_head_32bit {
     uint32_t ret;
 };
 typedef struct frame_head_32bit frame_head32_t;
-DEFINE_COMPAT_HANDLE(frame_head32_t);
 
 static struct frame_head *
 dump_hypervisor_backtrace(struct vcpu *vcpu, const struct frame_head *head,
@@ -58,8 +57,10 @@ dump_guest_backtrace(struct vcpu *vcpu,
 {
     frame_head_t bufhead;
 
+#ifdef CONFIG_COMPAT
     if ( is_32bit_vcpu(vcpu) )
     {
+        DEFINE_COMPAT_HANDLE(frame_head32_t);
         __compat_handle_const_frame_head32_t guest_head =
             { .c = (unsigned long)head };
         frame_head32_t bufhead32;
@@ -73,6 +74,7 @@ dump_guest_backtrace(struct vcpu *vcpu,
         bufhead.ret = bufhead32.ret;
     }
     else
+#endif
     {
         XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
             const_guest_handle_from_ptr(head, frame_head_t);
--- a/xen/arch/x86/oprofile/xenoprof.c
+++ b/xen/arch/x86/oprofile/xenoprof.c
@@ -12,7 +12,6 @@
 #include <xen/sched.h>
 #include <xen/xenoprof.h>
 #include <public/xenoprof.h>
-#include <compat/xenoprof.h>
 #include <asm/hvm/support.h>
 
 #include "op_counter.h"
@@ -54,6 +53,9 @@ int xenoprof_arch_ibs_counter(XEN_GUEST_
     return 0;
 }
 
+#ifdef CONFIG_COMPAT
+#include <compat/xenoprof.h>
+
 int compat_oprof_arch_counter(XEN_GUEST_HANDLE_PARAM(void) arg)
 {
     struct compat_oprof_counter counter;
@@ -73,6 +75,7 @@ int compat_oprof_arch_counter(XEN_GUEST_
 
     return 0;
 }
+#endif
 
 int xenoprofile_get_mode(struct vcpu *curr, const struct cpu_user_regs *regs)
 {
--- a/xen/arch/x86/x86_64/Makefile
+++ b/xen/arch/x86/x86_64/Makefile
@@ -8,9 +8,9 @@ obj-y += acpi_mmcfg.o
 obj-y += mmconf-fam10h.o
 obj-y += mmconfig_64.o
 obj-y += mmconfig-shared.o
-obj-y += domain.o
-obj-y += cpu_idle.o
-obj-y += cpufreq.o
+obj-$(CONFIG_COMPAT) += domain.o
+obj-$(CONFIG_COMPAT) += cpu_idle.o
+obj-$(CONFIG_COMPAT) += cpufreq.o
 obj-bin-$(CONFIG_KEXEC) += kexec_reloc.o
 
 obj-$(CONFIG_CRASH_DEBUG)   += gdbstub.o
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -1347,7 +1347,9 @@ void set_gpfn_from_mfn(unsigned long mfn
     machine_to_phys_mapping[mfn] = entry;
 }
 
+#ifdef CONFIG_COMPAT
 #include "compat/mm.c"
+#endif
 
 /*
  * Local variables:
--- a/xen/common/time.c
+++ b/xen/common/time.c
@@ -108,7 +108,7 @@ void update_domain_wallclock_time(struct
     sec = wc_sec + d->time_offset.seconds;
     shared_info(d, wc_sec)    = sec;
     shared_info(d, wc_nsec)   = wc_nsec;
-#ifdef CONFIG_X86
+#if defined(CONFIG_X86) && defined(CONFIG_COMPAT)
     if ( likely(!has_32bit_shinfo(d)) )
         d->shared_info->native.wc_sec_hi = sec >> 32;
     else
--- a/xen/include/asm-x86/compat.h
+++ b/xen/include/asm-x86/compat.h
@@ -2,11 +2,15 @@
  * compat.h
  */
 
+#ifdef CONFIG_COMPAT
+
 #define COMPAT_BITS_PER_LONG 32
 
 typedef uint32_t compat_ptr_t;
 typedef unsigned long full_ptr_t;
 
+#endif
+
 struct domain;
 #ifdef CONFIG_PV32
 int switch_compat(struct domain *);
--- a/xen/include/asm-x86/hypercall.h
+++ b/xen/include/asm-x86/hypercall.h
@@ -23,7 +23,10 @@ typedef struct {
 } hypercall_table_t;
 
 typedef struct {
-    uint8_t native, compat;
+    uint8_t native;
+#ifdef CONFIG_COMPAT
+    uint8_t compat;
+#endif
 } hypercall_args_t;
 
 extern const hypercall_args_t hypercall_args_table[NR_hypercalls];
--- a/xen/include/asm-x86/shared.h
+++ b/xen/include/asm-x86/shared.h
@@ -1,6 +1,8 @@
 #ifndef __XEN_X86_SHARED_H__
 #define __XEN_X86_SHARED_H__
 
+#ifdef CONFIG_COMPAT
+
 #define nmi_reason(d) (!has_32bit_shinfo(d) ?                             \
                        (u32 *)&(d)->shared_info->native.arch.nmi_reason : \
                        (u32 *)&(d)->shared_info->compat.arch.nmi_reason)
@@ -37,6 +39,34 @@ static inline void arch_set_##field(stru
         v->vcpu_info->compat.arch.field = val;                  \
 }
 
+#else
+
+#define nmi_reason(d) (&(d)->shared_info->arch.nmi_reason)
+
+#define GET_SET_SHARED(type, field)                         \
+static inline type arch_get_##field(const struct domain *d) \
+{                                                           \
+    return d->shared_info->arch.field;                      \
+}                                                           \
+static inline void arch_set_##field(struct domain *d,       \
+                                    type val)               \
+{                                                           \
+    d->shared_info->arch.field = val;                       \
+}
+
+#define GET_SET_VCPU(type, field)                           \
+static inline type arch_get_##field(const struct vcpu *v)   \
+{                                                           \
+    return v->vcpu_info->arch.field;                        \
+}                                                           \
+static inline void arch_set_##field(struct vcpu *v,         \
+                                    type val)               \
+{                                                           \
+    v->vcpu_info->arch.field = val;                         \
+}
+
+#endif
+
 GET_SET_SHARED(unsigned long, max_pfn)
 GET_SET_SHARED(xen_pfn_t, pfn_to_mfn_frame_list_list)
 GET_SET_SHARED(unsigned long, nmi_reason)
--- a/xen/include/xen/compat.h
+++ b/xen/include/xen/compat.h
@@ -5,10 +5,11 @@
 #ifndef __XEN_COMPAT_H__
 #define __XEN_COMPAT_H__
 
-#ifdef CONFIG_COMPAT
-
 #include <xen/types.h>
 #include <asm/compat.h>
+
+#ifdef CONFIG_COMPAT
+
 #include <compat/xlat.h>
 
 #define __DEFINE_COMPAT_HANDLE(name, type) \
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -1047,7 +1047,6 @@ static always_inline bool is_pv_vcpu(con
     return is_pv_domain(v->domain);
 }
 
-#ifdef CONFIG_COMPAT
 static always_inline bool is_pv_32bit_domain(const struct domain *d)
 {
 #ifdef CONFIG_PV32
@@ -1078,7 +1077,7 @@ static always_inline bool is_pv_64bit_vc
 {
     return is_pv_64bit_domain(v->domain);
 }
-#endif
+
 static always_inline bool is_hvm_domain(const struct domain *d)
 {
     return IS_ENABLED(CONFIG_HVM) &&



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:03:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:03:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.105999.202697 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmIP-0005cX-ED; Tue, 06 Apr 2021 14:03:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 105999.202697; Tue, 06 Apr 2021 14: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 1lTmIP-0005cQ-B1; Tue, 06 Apr 2021 14:03:09 +0000
Received: by outflank-mailman (input) for mailman id 105999;
 Tue, 06 Apr 2021 14:03:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dxY0=JD=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lTmIO-0005cJ-6Z
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:03:08 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 027a7277-821f-4bcb-947f-c888c0949e07;
 Tue, 06 Apr 2021 14:03:07 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lTmIM-000CxQ-Iw; Tue, 06 Apr 2021 14: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>
X-Inumbo-ID: 027a7277-821f-4bcb-947f-c888c0949e07
Date: Tue, 6 Apr 2021 15:03:06 +0100
From: Tim Deegan <tim@xen.org>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 10/14] tools/kdd: Use const whenever we point to literal
 strings
Message-ID: <YGxqGpZIOsiO709x@deinos.phlegethon.org>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-11-julien@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <20210405155713.29754-11-julien@xen.org>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 16:57 +0100 on 05 Apr (1617641829), Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> literal strings are not meant to be modified. So we should use const
> char * rather than char * when we want to shore a pointer to them.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Acked-by: Tim Deegan <tim@xen.org>

Thanks,

Tim.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:13:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:13:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106013.202709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmSE-0006e6-EJ; Tue, 06 Apr 2021 14:13:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106013.202709; Tue, 06 Apr 2021 14: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 1lTmSE-0006dz-AI; Tue, 06 Apr 2021 14:13:18 +0000
Received: by outflank-mailman (input) for mailman id 106013;
 Tue, 06 Apr 2021 14:13: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 1lTmSC-0006du-WF
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:13: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 1lTmSB-0008FW-Nk; Tue, 06 Apr 2021 14:13:15 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTmSB-0001Lc-Hb; Tue, 06 Apr 2021 14:13: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=l8PCfi6fqMJXelVkTU2iS2F2qt3YW25MQ+EbVh6r1Z8=; b=OsZGWJtk4UnAABCqX/r18+HqZH
	/pNLFWOkyuC5HYMSE0+kfLgg8GzGovttmvzbxFWR6kk/LepfEw3uVCb4PNi5GkJy+dd1GeVIDzo4x
	gJvXfh0wG5tQukE1Z1FP52hH4ztMPAT+HlSdILWyr7auwjVfVB7KNWFTd08ZlJ16v2mo=;
Subject: Re: [PATCH 0/2] xen/arm: Couple of bug fixes when decompressing
 kernels
To: Jan Beulich <jbeulich@suse.com>
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210402152105.29387-1-julien@xen.org>
 <7a65f71b-e5a6-22aa-d360-4045b266229e@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <2d1dcac4-5e6d-b82c-0164-1471b6fc9a8c@xen.org>
Date: Tue, 6 Apr 2021 15:13:13 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <7a65f71b-e5a6-22aa-d360-4045b266229e@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 06/04/2021 08:45, Jan Beulich wrote:
> On 02.04.2021 17:21, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Hi all,
>>
>> The main goal of this series is to address the bug report [1]. It is not
>> possible
> 
> ...?

Urgh, I forgot to add the rest of the sentence :/. I was meant to say 
that it is not possible to decompress multiple kernels (doesn't need to 
be the same) today.

> 
>> While testing the series, I also noticed that it is not possible to
>> re-use the same compressed kernel for multiple domains as the module
>> will be overwritten during the first decompression.
>>
>> I am still a bit undecided how to fix it. We can either create a new
>> module for the uncompressed kernel and link with the compressed kernel.
>> Or we could decompress everytime.
>>
>> One inconvenience to kernel to only decompress once is we have to keep
>> it until all the domains have booted. This may means a lot of memory to be
>> wasted just for keeping the uncompressed kernel (one my setup, it takes
>> ~3 times more space).
>>
>> Any opinions on how to approach it?
> 
> Well, it's not "until all the domains have booted", but until all the
> domains have had their kernel image placed in the designated piece of
> memory. So while for the time being multiple decompression may indeed
> be a reasonable approach, longer term one could populate all the
> domains' memory in two steps - first just the kernel space for all of
> them, then load the kernel(s), then populate the rest of the memory.

Right, I am not sure this brings us to a better position. We would want 
to use superpage mapping for the guest memory as much as possible for 
performance reason.

So we may end up to populate the full memory of each guests. Therefore, 
I am not sure the split is that worth it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:13:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:13:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106017.202721 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmSp-0006jt-Mx; Tue, 06 Apr 2021 14:13:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106017.202721; Tue, 06 Apr 2021 14: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 1lTmSp-0006jm-Jq; Tue, 06 Apr 2021 14:13:55 +0000
Received: by outflank-mailman (input) for mailman id 106017;
 Tue, 06 Apr 2021 14:13:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WgwS=JD=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lTmSn-0006jd-Bi
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:13:53 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ce8364e8-bac7-4ee5-a930-f502c8ce1ae4;
 Tue, 06 Apr 2021 14: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: ce8364e8-bac7-4ee5-a930-f502c8ce1ae4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617718431;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=fBbnseOTu4W+gnaY19GhH3zKUfXk3+RGdijgoKLm6Os=;
  b=Kb6XiRJyKdNIeGDGYIKMYmjTR+kD/SCHohqefDIsWPHelvwyQAs8pQsp
   QXEqBYpIWTvO7KRkl69aQhJeBY5E8/PtzbJmNRVm63gnB9xwmKp94dmIV
   t/Uk74cLgRPK4BLtkNSexeeuXEFPyz1A2KSAZfU9e4ElHdW9w2ozCgnFo
   A=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Wc4geeFj6gQ0luS0NJQOsjnPWfq5BOhTZp1YbtRK9kBfjE4W2guOFiVYXS4pUVYfIUzwoeJ7vu
 NrCNJbZ8Qu3oHg6Dt9lHZvqyx7rckyIeLC0cYc+TNUHPKi5nSr+LiXHSfES6XcpOGUtpdlODoD
 Lmzhp1hs20LQyiuxZj4vzlh72Qhb12Qcw5sp0SnUqGOOsgZ0Ekq+EJBgb6aOmUHgoG1nxfThcj
 QUCFc1hRq/iksmXPPKCL2FPWoRrKpZx4HAGgTO0FQVWOQODNHxQENGbY8mKAPkWAc/6oDD7gDp
 D4Q=
X-SBRS: 5.2
X-MesageID: 40978237
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:2r1bgKy0yLMald3V05+OKrPxve4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmqJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheTysd07o
 0lSaR3DbTLYGRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRCp1IxS0RMHf9LmRdQg5aCZ0lUL
 ed/NNAvTq8eXIRB/7LfEUtde7FutHNidbacQcLbiRXkzWmoBGJzPrBExae1goDSD8n+9kf2E
 XMjgCR3NTAj9iV0RnZvlWjiqh+uNyk8ddbAdzJt859EESQti+NRKBMH4KPpyo0pubH0idarP
 Dprw07N8p+r1P9F1vF2CfF4AXr3DYw53KK8zbx6hGC0K+JNw4SMMZPiZlUdRHU8SMbzalB+Z
 lGwn6DsN5vBQ7A9R6NmeTgbQ1glUa/vBMZ4IgupkFYOLFuDIN5nMg0+UNYF4o4ByTq6IwrO/
 kGNrCi2N9mNXyddHzXpW9p3ZiFWWkyBA6PRgw4ttWSyCU+pgE182IogOgk2lsQ/pM0TJdJo8
 zCL6RTjblLCusbd7h0CustSda+Y1a9DS7kASa3GxDKBasHM3XCp9rc+7Mu/tynf5QO0d8bhI
 nBeEkwjx9yR2veTem1mLFb+BHER2uwGR73zNtF2pR/srrgAJL2LCy4Tkw0mcfImYRQPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFOIPvNIWXE+Pv9LrJoXmuvezSoeRGJPdVRIfHk/vCH
 oKWzb+YO9a6FqwZ3P+iB/NH1PhE3aPv65YIez/xaw+2YINPopDvkw+klKi/PyGLjVEr+gTdE
 t6K7X3r7OjqQCNjCP1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXmxOwn2dJFtaQ9nNGA
 BS43R7kJjHYKC49GQHMZaKI2iah3wcqDahVJEHgJCO4s/jZ9cfFZYpWKt4EC3RDBxrkQNWqG
 NOATV0BnP3J3fLs+GInZYUDObQe51XmwGwO/NZrnrZqAGhv801f2AaWDSvSMaTpg4rS1Nv9x
 lM2p5apIDFtSekKGM5juh9FFFXcmyYDIhLCxm/aJxOlqrmfxxxSmm2lSWX4itDClbCxgE3vC
 jMPCeUcfbEDh5mtndU3r3D3Xl0em+eFngAIkxSgMlYLyDrq3xz2eiEau6PyGOXcEIF2fxYGi
 rCeyEuLgRnwM2X2BaZlC2ZL2gvwowjM4XmffMeWoCW/knoBJyDlKkAEfMRwY1sM8r2tPQXFc
 2YYA2YIVrDepQU8j3QgkxgHiZ6qHMpy6y1nDLk6XW1x345D775Jk98S7QSPtGb6CzFSp+zoe
 BEpONwmdH1FGP7LuOi4+XwSRVoLxvIu264T+0ys/lvzOsPnYo2O6OeaCfC0XFM4Q43I8j1nn
 4PWagT2sGyBqZfO+gpPx9D9lUnlN6zPFImnwz/DOg5Z0wshRbgTqe0youNjbokGUuaogTsfX
 GZ7i1G5v/ANhHznoIyOuYVIW5MblI752kn1OSed5fIAAHvU+1Y5lK1Pjucd7BaIZL1U4k4n1
 Jf49uSmfWQeDe98AfMvSFjKqYLyl2Ze6qJcXSxMN8N1ce7N1SKirar58D2rA6fc0rGV20owa
 tfdUIRacxfjCIFl4Nf6Fn1dpDK
X-IronPort-AV: E=Sophos;i="5.81,309,1610427600"; 
   d="scan'208";a="40978237"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LS6Q737OQMKROoAIo3uXx5vbNBs7DUQsn3iYs2GZeJZq+hucW0RROjfuHrD79nW2tRr/T25j7c8uxRmwKurSqWBWrZSlnsHpGOBictKpQpUj7fdhTYMAT5jsJaVhUC1feAVXYmJlcdHVKIWjNREVqlN122Oyx5vGJOcMNQ/RCL9nryKCaYl0iI4Zls6WAKBSogfGBM8u2e/zq8kAxRQPF+5Mh6FlF2ePj+EMgzmcroJytigh+15yOC9gQKrF+pzyIyl2FLfatqe80sKZeIGXx/hQg1112xy2t27wjvfBDNTqfOECktLjmI3R1VwfpvTxYAJFH9uFUTWIQQRJZ3nENg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FFQSFE5Ykvq6/LpHS2MvCngSqL58CoX0TTlRAuPYais=;
 b=HCkYD+wzwL6pdMGcuHn+q4v4FaLQulvl664ZwLdCLqe+tSg2BVCZe1qDbLsd3MjxqrzEYMKT/GCjVSQcbGioo5NLBdVpWqa2giWGrAVItw2Ydea/flQs8pF8Z9onOR0kLE4tSJrckVKYXRWUdikR0wcDZQw4VvUvnVgELMTfsyizfAW11Ulwyp6j5Kp9gRy8HMud3QLw4XXXEQhNSrDeiB8JEjz+Tx5j9vEEJ9+kLuQs2ZtlmmQl0QxFrIWdKEHuGWISl8+V5UUndLXEB7O0CYrGA+TZ7Ak8V6WuzsXnnwh5zYTOUsRmlEY/tX9/TUy8PvUb7wfN2D0Lkb/2AnQj2g==
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=FFQSFE5Ykvq6/LpHS2MvCngSqL58CoX0TTlRAuPYais=;
 b=pjgD2P1nMo1WWjisAB7MljzoQxDWjhu5JLNldATiqFKhR/L4guszHuHg9wSmvL/ZcPeVhuyIp5d6TSo6GeuRbaL0tsuRTurSUGeE3S127wrJMpNJrhsSHZA93n+4MMQctYFl28RT3CcIuWbezDdjxTNTe3WZycWMQO5m56LhU1k=
Date: Tue, 6 Apr 2021 16:13:17 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Rahul Singh <rahul.singh@arm.com>
CC: <xen-devel@lists.xenproject.org>, <bertrand.marquis@arm.com>, Jan Beulich
	<jbeulich@suse.com>, Paul Durrant <paul@xen.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Ian
 Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
Message-ID: <YGxsfdK9GEefLgAv@Air-de-Roger>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
X-ClientProxiedBy: AM6PR05CA0022.eurprd05.prod.outlook.com
 (2603:10a6:20b:2e::35) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 27094280-a87e-4243-2c53-08d8f9062342
X-MS-TrafficTypeDiagnostic: DS7PR03MB5575:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB55751432CCDD77CF930BDCF48F769@DS7PR03MB5575.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: BV6gSC0alji8wISxZqCFtzFpMU9rXJs2vtQrKoh6vRhBgiN5Lx9CpBtY/JQ9fEjLyGIssJZ2bPcvjPnmFojGX6yUC2xQzZoAorBscytd1HizbO6macQFrIl/cC0WFzcAU+zDYJp2D/xQPLYNlvaMYFl1YqTyALmMqItW/6y4FiOmDcBcK9hhsPxBaaEahYe+9PyWVPKjuwQIMgymBuNumerz65ukuVZBGrzwxl0rWUFrohbDzbenGaCRTqEZgeZkqPSxSp0jsLR46EzKjI/k99eu61PwlRypXBDBYhfhuRJVm0ATHWhIbdCfme4zPemzWpj2tH8Q2PYMR3dpxfJ/1aJgAILYbQPTBwq+7Tss7MJSj9mEdcdLUY3hqB0/nmAExLkU+u2u1GEmT+ZmHvwsnIuNPcrd2+OYBMDDKbrq3GTl2gnKV2mSGrwFH9KL+QgooKXgMJDOacyzI3XRWWIkLJsubdgSIYUhMAjqR6VtpDVxVlIo+YHpoaG0+Gt7ENx4JdzBk6MTxLp9P31PEI1Ed9aCsnEylS2qKJuYT8WJpi0StZS29vUM7qWK3haPcP6q72XWkV7MGkAeBnJmhlwdHLnSvqyGsmohO2Wi5tmQKOQ6MJ78YjXIaFLKdEdTomdmk6lrnwxP1NN4O/FRT59Mascp3MV425Bla5GHgLBLGEI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(376002)(136003)(366004)(39860400002)(396003)(54906003)(85182001)(9686003)(478600001)(6666004)(26005)(7416002)(33716001)(6486002)(956004)(66946007)(86362001)(8676002)(316002)(5660300002)(66476007)(66556008)(8936002)(6916009)(2906002)(4744005)(6496006)(4326008)(16526019)(38100700001)(186003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/YkNy?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 27094280-a87e-4243-2c53-08d8f9062342
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 14:13:23.0634
 (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: KcdCKNxJxYmIhx83glDAz4nW991l30Vh49zYxpXsnTIFp92EFslbmk105X36s2I4TD7+zipUOgj9DV/maF5AzQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5575
X-OriginatorOrg: citrix.com

On Tue, Apr 06, 2021 at 12:39:11PM +0100, Rahul Singh wrote:
> MSI support is not implemented for ARM architecture but it is enabled
> for x86 architecture and referenced in common passthrough/pci.c code.
> 
> Therefore introducing the new flag to gate the MSI code for ARM in
> common code to avoid compilation error when HAS_PCI is enabled for ARM.

Is such option really interesting long term?

IIRC PCI Express mandates MSI support, at which point I don't see much
value in being able to compile out the MSI support.

So while maybe helpful for Arm PCI efforts ATM, I'm not sure it
warrants a Kconfig option, I would rather see Arm introduce dummy
helpers for the missing functionality, even if unimplemented at the
moment.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:15:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:15:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106021.202732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmUk-0006ue-3U; Tue, 06 Apr 2021 14:15:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106021.202732; Tue, 06 Apr 2021 14: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 1lTmUk-0006uX-00; Tue, 06 Apr 2021 14:15:54 +0000
Received: by outflank-mailman (input) for mailman id 106021;
 Tue, 06 Apr 2021 14:15:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9IE8=JD=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lTmUj-0006uS-63
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:15:53 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f872aea8-3ded-40bc-9a93-0e46b7f58e19;
 Tue, 06 Apr 2021 14:15: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: f872aea8-3ded-40bc-9a93-0e46b7f58e19
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617718552;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-id:content-transfer-encoding:
   mime-version;
  bh=ER4oR17/AkZSKVJPBnNqYnNSd1fVIJuJvs2zTTakA5w=;
  b=aIuHy35XqnygUtgAfMsph7/XDiDx114TRSuArmQxpE3aiC+iKDupqgGq
   10PYUlVtDcnGrrU/opnV5hkyBdCqhS5Oz+1lYXY/qBuH5w6BA51BscJlD
   /6sYtgzLKiHE0RBvwcpp0MxpQtnBMiHmDq0q9uySD1cPeE1Na70m7BuhE
   c=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: rMFTEDbtD/ptlWlFCdYgnjH2p589hacF1Rd1TwAXgWBeS45RNwIkzP2UuuNDUgu75ybkYerxpV
 nQDn5SKazEo3leqHmFEQUhoG5ciGuOVJPiVZKwt8aZnm/b6h2OXe4iv4n7iPYgRFJ1Bky+QRix
 TBlSzLObIhckFSOdwan1VuMYuAwHtYjzWjJc27UiAwZbHcMhLXYRydnoI8TfxVYupUGL0U04l+
 1j2WPVeFcAsk3yznOPzF4CmksozC0wwhiBEZsDMC2l1YxocPjOz8mUv+tBG7a6jyFXUKaCg5q1
 bak=
X-SBRS: 5.2
X-MesageID: 40832508
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:yjkD+q+P8fYUuiKFp1Vuk+FRcL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUfD38Zn/+
 Nbf6B6YeeaMXFTh8z3+RT9Nt4mzsWO/qzAv5ak815GZ2hRGsJdxi1+DRuWFVAzYQFAC4YwGp
 b03Ls8mxOLf3MLYsOnQkQURuSrnayAqLvKQz4jQyQm5g6HkC+y5NfBfySw8x8CX1p0sNAf2E
 fflQiR3MSemtG9jiTRzmrCq6lR8eGRsudrIOyppowrJi73igCuDb4RFoGqmDwuuumg5BILvb
 D30nEdFv9+4X/QYW25yCGFs2aP7B8U53Dv0lOei3f4yPaJPQ4SMdZLho5Sb3Limigdlex8y6
 5C0ia4sJdaHHr77UDAzuXITB1jmw6Ip2Mjm4co/hlieLYZAYUwkaUvuGduVLsQFiPz744qVM
 N0CtvH2fpQeVSGK1jEo2hG2rWXLzsONybDZnJHlt2e0jBQknw85VAf3tYjknAJ8494Y4VY5t
 7DLr9jmNh1P4ErRJM4IN1Ebdq8C2TLTx6JGnmVO07bGKYOPG+IjJLr/rMv5qWPdIYTxJU/3L
 TNOWko9FIaSgbLM4mjzZdL+hfCTCGWRjL20PxT4JB/p/nyX7zuPSqfSE0/kseprvkFa/erGM
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5I6Vju104D2A7yvktaeXOfYJbLrHzphcHj4GG
 E/UD/6I9gF6kiqX3T/kQXAQn+FQD27wbtAVIzhu8QDwokEMYNB9iIPj06i282NITpe9qosfE
 V/J7vjmrihpXa/+HvJ62kBAGscMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYgNkQ9jOCw
 5ZrVRv8aexJ5idrBpST+6PAya/tT8+tXiKR5ATlum//s/jYIo/FYtjcrd2Dx/3Gxt8nhtKpG
 9PZBQffFLWEirjhMye/dspLdCaU+M5oQ+wZeZItHrUtCyn1LwSb0peewTrbOm6rkIFQSFOil
 h47qkF6YDw5QqHGC8Ym+Q3MFpFdWKNJqlJZT71KLl8kqz3eQ12UGeBjSGbjRZ2YWbx60AOnA
 XaXFKpUOCODVxHtn9C1KH2tFtya2WGZkp1Lmt3qItnCA39yz9O+P7OYqq4yG2KbFQehukbLT
 HeeDMXSzkesOyfxVqQmDyYE28hyYhrNuvBDK47e7WW3n+2MoWHmeUHGPBTlawVQuzGo6sOUe
 iFfRWSIy69A+Q12xaNrnJgITJqshAf4IHV8Qyg6HL90G80APLULlgjT7YHI8uE52yhQ/qTyp
 12gd88oOPYCBS4VveWjaXMKzJTIBLapmC7C/slrp1Zpqo+vrp+FZuza0q96FhXmBElaMvknk
 IXR6p2pK3bMoh0ZsoIZmZX+EEqmNnnFjphjiXmRuslOVcjgH/QM4nXv/7Gqb8zDlaAowW1M1
 +F6CFZ9+rEWSzG1bNyMdNBHU1GLEwnrHJl96eecoeVDgOgfeRK5kC7PX+wa6U1ctnxJZwA6h
 Jhp8iVlOqWfTfi0A/evTFnMrtDmlzXMP+aEUaJA6pU6NS0NlSHn7uy7MOyhDnxTyGna05wv/
 w3SWUAKsJZijcji4Ur0i+9Dqzvy3hV7Wdj3Q==
X-IronPort-AV: E=Sophos;i="5.81,309,1610427600"; 
   d="scan'208";a="40832508"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RIAPgDs1QTW0MwZezha8UZ599jclBe8AgIrZZmD3sc5wR9SEx86Ce9QNtlZ1rn5rKAuY1hCo2y5M0VfisPUHnbu7vk1WvSuLFbYBDDBXxyjnRhNL8MmmJ9zKDo2LsZWfvkLMp/1rwy2+HPQBTV5uvd93B357VXElqER+obATQbA2tiHKYJNu6icGMrroxiWoKOrw5+RpMuDiQbrBnCrUoJW/zdkviu5yoe7RoKFTgTspP2YWTxtzXkExVL2tD8OWO0qMZIOGjRVBHRJzZMaVcpUxSIOQj2Flykef7FfJes392fdLUmowGVwzYT49FHgwQvwy0pNxWm8ALz0eU80Acw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ER4oR17/AkZSKVJPBnNqYnNSd1fVIJuJvs2zTTakA5w=;
 b=jk0maNPFv7mqVqJ+UXnU3OOdCm/IgYvpkIs7YzyqEDQYkNVaFQgHZlnz2pfIf9uU33qwCsyIhO1JEI/6WNmkESFq7Ztw3NBlTGiuMGYONVnVBJC7JEywO1NZZtJwfpiSr07zgtVC9xBH8ao6hrz/GfyEC4UdVPm3+3jseQo3+X2fB13r+3E1Y3UOcnYLW9ZxgQG493j4tp+WDxP8ldWt48wAg3W1dPz47i7fD3JiYirBYVQRPlTqm9ST4+uHQ7+tl/XBd2ARrr+cS/z7Fi0krpk99A3wtJ5NHo9pxKXqGmLrvN9tFKxP0NVIOL8i7QXToqBf8nT+6opuwq2ZwylUcw==
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=ER4oR17/AkZSKVJPBnNqYnNSd1fVIJuJvs2zTTakA5w=;
 b=xQ0K6EeFwwKeQHLAMh3DjU7okiCqm0m2OnSgJgiQJCWRak4W7SW+P3Vsuv15UZwiLG6Z72HWcgrYBdKWsO6PextJ1fyL4/ITJqYOspqRr3QOfoGlz9lmxUW/1jX9rqQsy7ZnlNRPw+ilzRJLLx+0scgjqAaSo0x1lNVPc7gTLMY=
From: George Dunlap <George.Dunlap@citrix.com>
To: Julien Grall <julien@xen.org>
CC: xen-devel <xen-devel@lists.xenproject.org>, Julien Grall
	<jgrall@amazon.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 14/14] tools/xentrace: Use const whenever we point to
 literal strings
Thread-Topic: [PATCH 14/14] tools/xentrace: Use const whenever we point to
 literal strings
Thread-Index: AQHXKjbX0++oj7YoP0KCrVGPVwIu5aqnij+A
Date: Tue, 6 Apr 2021 14:15:48 +0000
Message-ID: <1FD9E4DF-2F95-4470-A032-BC9E93337B1D@citrix.com>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-15-julien@xen.org>
In-Reply-To: <20210405155713.29754-15-julien@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.20.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 1f4a08f9-c888-41ae-9585-08d8f90679f3
x-ms-traffictypediagnostic: PH0PR03MB5784:
x-microsoft-antispam-prvs: <PH0PR03MB578455412C882EC33640BE2699769@PH0PR03MB5784.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:1775;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: mTlioYLHRYaXeRtuwnwjw2hdLGILQU1z4MTnWxID0RkV5mnA1DRGnomhjA4n4j/1lF74j7+cWjljTNDzzVhdP8ZlUVqi7q7EQ42n9BOnbeucSrGdLYGhHOEYlTNP3/KGEkL+8rPmHrAG5oAEegawnA0eThNA+VmoNfWTq8kZhmBsejgs7qkG365BUKBVhWBU0pLwsAYRflidDU8H/5WBbuoKTvJGSIzDdva67ZewCUjIYBHUjXHwoNK48E0yzQWohx3AJUPwEgYMm2PV0ExqFulIrS55IF4Tu89hnv0mm6ktSAF4kx8RvX5blz9BM53MVGMEzLYaHS3PRYC0CzxlcaR4vLFliXSGxUbR9IYak10RI6+L17SPl60cAWf9nVvA3CC8IrDPjIWD7pPQogPiymQwPnp7zLBl8hKkC0+yBtVDoJzQKZ4QVuKZoPf1MrrPjnWsMcu/HCFlmgFU9cN5jRYXvVCsDB6QFoDgmd/tw9aUBe6SgMWoO4ZWDmbJUAxYL8n1oiPwOBxwZcviHzcZ3Z8SydZhyz6yRNgIHQkyFRP5g5klgH64fMuYK2+sobmXrKi3fAE8bMRekWnloUBhwrQpS4EUbuOv8K86ugNXdlQV9ZdSIYa5TBJ933x6h8zP5YxgF93gtQvL7LCnwXQ0c7Q3FfycdxNcSdai+7pOvShyuZvjm61wj4vDZqhAQUWu
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR03MB5669.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(39860400002)(366004)(346002)(396003)(376002)(2906002)(6512007)(76116006)(33656002)(558084003)(8936002)(66556008)(36756003)(66476007)(71200400001)(8676002)(6506007)(53546011)(5660300002)(66446008)(64756008)(91956017)(66946007)(478600001)(54906003)(26005)(4326008)(6916009)(186003)(86362001)(316002)(38100700001)(6486002)(2616005)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: =?us-ascii?Q?ymB1GNTw2+eAZpnZeWCkBJADZFdp9P9hE8mDMNmT2mNNxFie8473CFAs5hbH?=
 =?us-ascii?Q?gT5XDt2uRA6+yr05t/fjUeRBm2Icm9sRYu15KNRHR412zGjUhG74bRD5m5UF?=
 =?us-ascii?Q?YyoHG5N/2XSyF+xQB5JPBKK3YGHsnBBYiTy/xXBdGRIdJ6W2oUyMhOK1HbRp?=
 =?us-ascii?Q?o9j4VN+Rg5JUjldBG5VeqkAyW1v8CxRKc9z3osgeRTuqaRRBKotOGSRL9Kbw?=
 =?us-ascii?Q?m8zh5nK0FUQomdAAURbjc4cZBXykN2BNSvZQz6u1srfr7JRJSz6maBJgLBYV?=
 =?us-ascii?Q?LifwrFxUQkyzpnp2lJERkv+Mn9SV4SzUoBWSYgwd0jYCvVyVwgIkVq1zfLwd?=
 =?us-ascii?Q?5VOekKRBQ8XzvYIa9FLgdafVSrgNWhvNZLUuSErE9ld4xGvNpK8FCkTzHdig?=
 =?us-ascii?Q?FgJKUZynEw2szuQrTyx0WJ8oZTqBTImPQrttBvblc++N9ZZKZPjxsnKz96Zb?=
 =?us-ascii?Q?G2QO2+46AzKCml54bjvqIrUrI7E/b1GU/Dw3wON8ulOxWT0zCNBBwwD8IGX0?=
 =?us-ascii?Q?eaXJFiHKoDtgWN3noXvPJY+tmz6chcMhiYNLXH9ayyFb6Oa7SpO58VTdrG5Z?=
 =?us-ascii?Q?El9JunrjnyBxWxRQg3X1hnD9XH3tHgUiWVq4PxhG4lqD5JmkaRUZzkpebb/7?=
 =?us-ascii?Q?1DrwKpfydiCFB3ZrCkACkU5O/SZ0MMLn3n/Jr77969VlVgUv44TYQcG9RtEx?=
 =?us-ascii?Q?zVymZiWBsGYnGCYp6XE/eDLV6hHJBhIyNecFefc9zqBD6zjlvh7LfHpRSmnE?=
 =?us-ascii?Q?3CQrbQuInH/VQ/CLot+ZIwbzTNETM8kwcccFBCiQe0Qp1KwwfUAlBsgmhvDN?=
 =?us-ascii?Q?T8UXYqQdKikhtC0UOI3il0PSkeHxFhboASVWI0BMRThM+TxQhU3U3LWseewu?=
 =?us-ascii?Q?LMnKxs6djtrwObruW6SnPc6ACdRmLwKkQivwKMY4fEYAcJhx4sa4PEyZpWFR?=
 =?us-ascii?Q?u6QMMkwlk+xATSaONOzgbMrTu3SJV8hqfnyPIQYpj/WCydadzRpVeWvQBy4Q?=
 =?us-ascii?Q?ZSd2zo4hoVaPkKGN1J6e5icUPwsIx/GsWGOFQTVuE6cdZUvWMm1ru7l6zS1j?=
 =?us-ascii?Q?JuJYP/C6eWbNUoQob+XxDRz3J+62i9BWJz38DVpTeA4/F55fLV9ptFtr4VOw?=
 =?us-ascii?Q?bgciPqZW8iNbgwSmAgme29p6Tgo2fqiPHbIoE96VPkvckx/tIElH32vgemgJ?=
 =?us-ascii?Q?nTUkDQsTdrKgVRhIodwXCM04YORzRfPXIyR7meFznh+eL2RWSRBbe2COU1kY?=
 =?us-ascii?Q?AbjfmHt/7FBqv6hA187Jn9PaxoMD1k4lkWQ+PTRNoWXYd43Yu7A5YRgk+Dli?=
 =?us-ascii?Q?EpqN+fKcPYlSNjPot1WTUUb/KPl/0cooWADJ8+f4dRxgrQ=3D=3D?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-ID: <7401286A74769440A7B0CB9B3836771B@namprd03.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR03MB5669.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1f4a08f9-c888-41ae-9585-08d8f90679f3
X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Apr 2021 14:15:48.3245
 (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: aSDMxG6wE7qCMp4HvpVjzke7QOLoT9JXlZBCva5zuHzOp33gcN77LXMXd1lcDI/244e8RLjvR3xm4WXAgjQQqHmF5c3v5WJU2lgnv3wnk/8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5784
X-OriginatorOrg: citrix.com



> On Apr 5, 2021, at 4:57 PM, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> literal strings are not meant to be modified. So we should use const
> char * rather than char * when we want to store a pointer to them.
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Acked-by: George Dunlap <george.dunlap@citrix.com>



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:19:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:19:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106030.202745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmXw-00075f-Ma; Tue, 06 Apr 2021 14:19:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106030.202745; Tue, 06 Apr 2021 14:19:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmXw-00075Y-JN; Tue, 06 Apr 2021 14:19:12 +0000
Received: by outflank-mailman (input) for mailman id 106030;
 Tue, 06 Apr 2021 14:19:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9IE8=JD=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lTmXv-00075T-4u
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:19:11 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 42381685-bf4a-4452-8cab-cec24832d533;
 Tue, 06 Apr 2021 14:19: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: 42381685-bf4a-4452-8cab-cec24832d533
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617718750;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-id:content-transfer-encoding:
   mime-version;
  bh=u5c9XBbgMDKIZdqg3oA9/xbtuj9hx5VyQxHrwkf4znY=;
  b=T3+QHj6h9YHAbdQxQe5Hr6ngufc6HgRcloyh+5qeYS3RzOqBJXTW91Z0
   CME+MKmFJsTRcMHDRzAjZUEAv4VEk8WtureWrRReGoklBvw4gqjcWmzIP
   A0btXnyXukKyisctv9j0ofdLAWVJkKfHPvnFP3CW0KFN/hRaGsEY7VcPa
   g=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Wb9b1E10YjXy9KFFRLN4Vm0yGUJVycsKPD4apNEyln0746wHAGJLfzKDoEk7zWATw5pBLKOwuE
 OSHZcYmPT+dYWIJpz1ltQ36wKmssGqXO/aWiDEtWP86e2AZGkNyGTbb0Tv+O4VUBHBpspykSha
 4q/w/Q9B8hkAQSq32QjyTO0Dn4oknckXc7sqTzgisAk9pSO0JhcHr/vIicSB3MsIhddqI+hOIx
 QGJU8QdYH1gB3I4siAsHmu1DAXONv2k4CASyMsSlKvqbKOTjT99F8r7xra/OouJpV3ByhezJXb
 rvo=
X-SBRS: 5.2
X-MesageID: 42439135
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:nmDMnqigzSqiIE3uTCB6aKfBGnBQX6dx3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+csFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmup
 tIW5NVTOf9BV0St6rHySGzGdo43Z2j+Kenme/Rwx5WPH1XQotLhj0JbjqzOEtwWQVAGN4YOf
 Onl4t6jhCnfmkaadn+I3EDUfTKqdGjruOYXTctARk75A6SyQ6y4LnhHBSCmjsYWTVDwbAtmF
 K10zDRzKOlrv2911vgx3behq4m1ufJ5/liIIi3isYTIijxkQrAXuVccpCLoTxdmpDW1H8Ei9
 /Jyi1QXfhby3SURW2tpAuo5g+I6kdS11bH6Xu1xUTuutb4QjVSMbsDuat8fgHC40Qt+PFQuZ
 g7pF6xjJZcARPekCmV3bGhPHsG9jvWnVMYneEelHBZW4cFAYUh17A3x09JDIwGWBvz9YFPKp
 gyMOjn+P1UfVmGBkqp2VVH/d22Unw/WjeAT0QS0/blqgR+oXFjw0MUgPEYh3cLnahNLaVs2u
 KsCNUMqJh+CustKY5tDuYIRsW6TkbXRwjXDW6UKVP7UIkaJnPksffMkfcIzdDvXKZN4Io5mZ
 zHXl8dn3U1YVjSBcqH24AO2gzRQV+6QS/mxqhllt1Ek4y5YICuHTyISVgoncflie4YGNfnV/
 G6P48TJPP/M230G8Js0xflU5dfbVkSOfdl/uoTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8NRz72KMJc7l26W3PxjRTLMkmdPHDXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHlDv8UNDR
 JDCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PoQcLNkjzYKsSotn3QxEL4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dmSAj3USo3qOR4wGmrKK4Nrkfp9QNOdgZIVBUSHwUzBlkwdjr2
 lOLCUeQFXEKz/ogaK5yIAPCPrHbNl6igezKctSoXbS3H/s/v0Hdz8+ZXqDQMSXiQEhS35onV
 V36bYYm6fFsy2oM3EDjOMxN0BsZGybDKldNhmMYJxZl9nQCVtNZFbPoQbfqhkoPkL26k0Zhw
 XaXFOpUMCOJmAYh1d1/eLB9khuemCUYkRqA0oKwLFVJCDhoXZ80eiCe6yp9XCeA2Fynt01OC
 3ZYDcUPwNlz8220hnQgzqZCXA63PwVT5/gJaVmfLfJ1ny3LoqU0akAAv9P5Z5gcMvjq+kRTI
 ukCkKoBSK9D+so3gCPz0xVSBVcuT0hkfny3gfi43X91HkjAeDKKFAOfcBRH/iMq2zlTe2Pyp
 N3kJY8uvaxKHz4bpqDxbvMZzBObhPVrmjedZBjlblE+aYzvqB0BZ/VTH/B02xGxgw3KIPsj1
 wFKZ4LlozpK8tqZYgfaihZ9l0mmJCGK1YqqBX/Bqs7cUs2h3HWMtuV69Pz2PYSK1zEoBG1NU
 iU8iVb8fuARSeF2LIAA687IGhdaiEHmTxf1fLHc5eVBBShdulF8lb/L2S0d6VFTrOZXboXtR
 R37riz7qCqXju93BqVuzR1IqhDqTn6BcyzBR+BAu5O/ZixP0+Wjq6j/c60i3P2RFKAGjAlrJ
 wAcVZVaMJJziQmhskw1CO5T6TsuEIrk1dE+1hc5xfQ85nj5H2eBF1MNA3Sn45fUjZSOGWZlM
 ity5ns6F3tpDxenYTZHEhefttSC8EdQ4j+ISBpM9URtteTjt0SqzUGZgwvAW46gC382O0j3a
 7R4oShZ9Hf
X-IronPort-AV: E=Sophos;i="5.81,309,1610427600"; 
   d="scan'208";a="42439135"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mBvAGu9FcSPEj0eqx/C4wJj9RpBCVzALpax6e1IICG80zuaePAVhONuvc2T54J/5TltJmfDi1Kqy7wPMM1Mv8607fws69mFvOprfC6uM8W16x9b8HS45EUlKcC/GLfwFUiiZEaciafIfs92+kvcea0JvIhVym5kZPpEdxNX1CPaxaDXNwce5XzWT8ullkCLESzfoNpUdYyVo8JZJNZwCwomlsLgcS1i4EMyDp95PUb4z5CrW9Gi9qdA0/6bN9LN9BJs6s8qmUNsJeRnA6Po+gjrcXs62KN3ssI2WHD4/ETbnQB69u8agGH7BCgofQsgr0BtyGiQ9cnfhUqS9ktkaIA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=u5c9XBbgMDKIZdqg3oA9/xbtuj9hx5VyQxHrwkf4znY=;
 b=eDxgTL9D+gL7qwKcX7ly2OtafTfoIDso2ZxswjQ26FLGoANprekOnJZyWA8BQqP1+ceTbYQYtNNkCE9PoJ7VvCwpA2bwIgYNJjXHoP6E+PIxc71d1bxCrAe77KR44s1Zi7uMu6CiVp4Cx3QbeiFzfKR210mqbyk7rdW4puPZr5MpL8qMABq5H1Yi6TcVWogErKBCMUrE1lFTLv76+QIzVY0c+WOO/cTsv75wx0CklFx5naKowQAVc9RrvaJV/RgW3knJwGg/KMyhJzHfcQHU6sDravIYCFumtbcFoV+afVMvV3F6SagGXxhBtWX8mHxzoUrGXoFQsay9SdIIimyQ4w==
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=u5c9XBbgMDKIZdqg3oA9/xbtuj9hx5VyQxHrwkf4znY=;
 b=khKhInqCqH4Q+SY5MaNlsME16Fw8xurOcmDlEzf27N+lmHULc5IJSJxAt55O7z4oaU448GOojh7X4yPdLkDNL77dctDtvrfcnt/3BTvhuOEBs0qM3HnzQaScEGNbj+wQSv3UB8II+DJAHw0Z2Hd74giVwh0zR7dP2wury2J/IrA=
From: George Dunlap <George.Dunlap@citrix.com>
To: Julien Grall <julien@xen.org>
CC: xen-devel <xen-devel@lists.xenproject.org>, Julien Grall
	<jgrall@amazon.com>, Dario Faggioli <dfaggioli@suse.com>
Subject: Re: [PATCH 02/14] xen/sched: Constify name and opt_name in struct
 scheduler
Thread-Topic: [PATCH 02/14] xen/sched: Constify name and opt_name in struct
 scheduler
Thread-Index: AQHXKjRgzH2T4dsdykuVmMERTuYzlqqniy8A
Date: Tue, 6 Apr 2021 14:19:06 +0000
Message-ID: <DDE49869-1FB8-4350-A09E-92981028E7F9@citrix.com>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-3-julien@xen.org>
In-Reply-To: <20210405155713.29754-3-julien@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.20.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 60c4ec13-384d-4510-756b-08d8f906efe3
x-ms-traffictypediagnostic: PH0PR03MB6268:
x-microsoft-antispam-prvs: <PH0PR03MB62685C09086B43303E4867B599769@PH0PR03MB6268.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:1775;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 6S/Qao9//ZYVeFws2mmdAbHcSZrb/J9HpJ4aT9q4r+UQNPHDrjtZZJ29+nJz/NG0zznWD0dT4rpp6vx/WN9EvfaGY2P8L9q1eVujTrz4SQhFpx5x93TBLYQprA+6Ee3YSM+ppmzdXV/7qhlXEcWc4DuO5ZyZ/qenyoE591D2zpMOML2DUM0PbyHmVJX5YkKtN8i/KWiRR5N92VMnlL9q8r80XBY/nAjdhj8UCSWWBVezMw26ivCbcYUxlC6fah8vehg+l4N8hrgFQqos8XfRBVTruqAql6ceAij1GVRiJYhUUq/n9KnccBXBpLZwM0yNuMurLctiXYQutcuDnDZDW6PCSJjz7HPyCdSZjSzelcF+uqM/8qWu66Z3pfvZPGVK8wap3m2NUVC9ji2V89qcSKxVItVK97mZBZcqhg6oGPBEZMHVFKr2nuSkQm884BCyZ0i9QWzvqXXIs7AFzGC1VjVPSdz+02eGsqZPIQaLm4cggYWWpt2+ioZ4lkS9nbiyuOyf7xZY6xd2cDYlYc2kFtXJvKmodlJy6ugtAukaYaGZ+xURqJH3SKsxF1QMnqPXVP/OxlMCUzC3jsDVgKyxxvTZeeCwHX95NB3KDbdBPb6XlqTuVEx/GI2vh1ONCJN2CvvQhSdxbejXaUT+4E6JvejVZVgVfnffzqjJTTroh3J5HLDUqLfbrM149KO5uZjO
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR03MB5669.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(366004)(136003)(346002)(39860400002)(2906002)(5660300002)(478600001)(8936002)(38100700001)(8676002)(316002)(54906003)(36756003)(71200400001)(6916009)(86362001)(6486002)(4326008)(26005)(558084003)(33656002)(64756008)(66446008)(66556008)(66476007)(53546011)(6506007)(66946007)(76116006)(91956017)(6512007)(186003)(2616005)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: =?us-ascii?Q?0VqvDMb9vwpCywvG5pfniMcYi/Namdhm0Ij4t1iuO4xZKy5TRFlgg0SZ1wGX?=
 =?us-ascii?Q?qYmt9KapGE2pWinBUUZzf9K+rhwBYMV4C8ILHHOr24XVgUsYuSEHhhpMmC+a?=
 =?us-ascii?Q?vMdmuAXUvpajhbNHwR/xhfGvRhBDGEvzn7kS94dhVjZgn25zGQppPn8r4Kjg?=
 =?us-ascii?Q?UQs2qiwGRCVHniWRw8JanGo+q2+fMwRrEvGG5V+0PuWILV5Q3Uikm5rwnHJ/?=
 =?us-ascii?Q?aPg91sih3twATQbM1inGI3u32orZGeX6ybct/SYl7jz8D0gkJUlLmgM75yez?=
 =?us-ascii?Q?orAUVKHl8EqB/SBBHQdIx68hvuVgNiDl2qK/GRL+sUoBN0f9dkLTxELE1hyq?=
 =?us-ascii?Q?V89qKOQ4U2rSpYIU7UiYJPzZEuNU9uGwIZ71Vh6crBHtSfLdUYx+S3VqKBq7?=
 =?us-ascii?Q?XxVns+zrQPPAv0h7JQcO3Ef20esWaTYd8kBywGkUtJ0jTng3fwCUC9qFv3fu?=
 =?us-ascii?Q?ldUaHB1cq8LaCGWP/dMqXHUkbf8/t8avw5HZWldm9OqpH5aTzkb6eSIN5Jok?=
 =?us-ascii?Q?xet7/begehmR81LQTYRi1W0VxBSTxTs50ulZ8tD9tqNmR2LIBmJZUTimh9hd?=
 =?us-ascii?Q?6lokaLOU7qTYow9t/XaSTGVjppKaZq8NB17SJXxIbYVHlMuiCoWdahrRO9DT?=
 =?us-ascii?Q?486RoEHQ67xUHdpyEap5Er3a5wUg5JDXl7qdUm2HWEg9SG6jmhieThCg+pOa?=
 =?us-ascii?Q?n49JCcoKa7qTzsabzjjfiaFcop9yEDsG9Zpg9HOxzp+Xp1LdecJmVSfVvcju?=
 =?us-ascii?Q?nbmK5TYK8xxfzbNhZGpE6ws6flRaLqRJQu0tAsb6Jj5AYrkb7qIB630trMSj?=
 =?us-ascii?Q?VgBrFOzYMncE6BJXzec5zHuudpvwqE8ZhTAwtHUDtcOZBqIdrMsfUWOGEJtw?=
 =?us-ascii?Q?etXz1I0VMhqM7QgHD5U0dlRxmnAnZEUqm1tnSntbUbp9zSzF2R4/e+TknT1P?=
 =?us-ascii?Q?331bioa6bu0mJAWIpJjCWHMor158+dTpuzrxT2aJm/Q6xDbGuTrMl9mMBDpm?=
 =?us-ascii?Q?r67r51d5M4v7UFEx3LwKfaYZEZ9H5ETzMwWYELG5osXDsAmCrJGjy4UX9zfx?=
 =?us-ascii?Q?jeu5X+Psq14x5tNl1e+qEE4BuaDbY/d1Mb8B9ohnGuLzkho8qV1iufJI5HV0?=
 =?us-ascii?Q?l0GAoaecB9gzcvvci2xFBHjVXEOjXRBbl4oN0KMkHO4H40J0KmDvJybkYGCv?=
 =?us-ascii?Q?QFvR8dNjdB83VeVoG5CDlb+A8vWLgle3370/YyrVWCtFWVbCEY3Soc1r3R9s?=
 =?us-ascii?Q?ah5uWE2XXXuvj9RvCwk2vKaAwyDOANxrdRW/i4kMLCtzgO9p3xPqj6KKV+4S?=
 =?us-ascii?Q?dxoHLXH8dgapKOijJRpvwL3Bg+YDFfoGVY6nUQcFKIMDsw=3D=3D?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-ID: <D8F9F39F85517743B91B6E68800AE4C8@namprd03.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR03MB5669.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 60c4ec13-384d-4510-756b-08d8f906efe3
X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Apr 2021 14:19:06.1173
 (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: qFFPxxjYqYTmA9kgN2xDvdihrz0cvSHVBUnwJS1I8s90PgIQ7fQ0VgmiJkMRWkKVe2WpDZnvfsPJUR4JttaLvYWRYErZQaxSeOgURH7Eo3M=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6268
X-OriginatorOrg: citrix.com



> On Apr 5, 2021, at 4:57 PM, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> Both name and opt_name are pointing to literal string. So mark both of
> the fields as const.
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Acked-by: George Dunlap <george.dunlap@citrix.com>



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:30:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:30:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106037.202764 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmig-0000QJ-Qo; Tue, 06 Apr 2021 14:30:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106037.202764; Tue, 06 Apr 2021 14:30:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTmig-0000QC-Np; Tue, 06 Apr 2021 14:30:18 +0000
Received: by outflank-mailman (input) for mailman id 106037;
 Tue, 06 Apr 2021 14:30: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 1lTmif-0000Q7-FH
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:30: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 1lTmiS-00005O-9w; Tue, 06 Apr 2021 14:30:04 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTmiR-0002ru-Uw; Tue, 06 Apr 2021 14:30: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=4VuphpQoTljxn36MwFBsTKWynD9cpY1d7cs+Iyo0pFc=; b=F2LFwi0WNB61Gf5ADYVva2d5Ze
	0VxoWjxhbTj7R1zHTtjTbWOxsKSykkFZ4EHrUzWO8jlw36u4wVxfQKUjwrPk4eA0sdO8c06mPL2cd
	RO5fdJ+ZQlbGiurn0pD/qzcO71SO43TiE92QGPxBlNDiufR8KGdvS2SIAB7qjlEJ1/7E=;
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Jan Beulich <jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
From: Julien Grall <julien@xen.org>
Message-ID: <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
Date: Tue, 6 Apr 2021 15:30:01 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGxsfdK9GEefLgAv@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Roger,

On 06/04/2021 15:13, Roger Pau Monné wrote:
> On Tue, Apr 06, 2021 at 12:39:11PM +0100, Rahul Singh wrote:
>> MSI support is not implemented for ARM architecture but it is enabled
>> for x86 architecture and referenced in common passthrough/pci.c code.
>>
>> Therefore introducing the new flag to gate the MSI code for ARM in
>> common code to avoid compilation error when HAS_PCI is enabled for ARM.
> 
> Is such option really interesting long term?
> 
> IIRC PCI Express mandates MSI support, at which point I don't see much
> value in being able to compile out the MSI support.

I am pretty sure there are board out with PCI support but no MSI 
support. Anyway, even if the spec may mandate it...

> 
> So while maybe helpful for Arm PCI efforts ATM, I'm not sure it
> warrants a Kconfig option, I would rather see Arm introduce dummy
> helpers for the missing functionality, even if unimplemented at the
> moment.

... from my understanding, most of (if not all) the MSI code is not very 
useful on Arm when using the GICv3 ITS.

The GICv3 ITS will do the isolation for you and therefore we should not 
need to keep track of the state at the vPCI level.

So I think we want to be able to compile out the code if not used. That 
said, I think providing stub would be better to avoid multiple #ifdef in 
the same function.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 14:59:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 14:59:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106048.202783 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTnB4-0002Oy-7k; Tue, 06 Apr 2021 14:59:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106048.202783; Tue, 06 Apr 2021 14: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 1lTnB4-0002Or-43; Tue, 06 Apr 2021 14:59:38 +0000
Received: by outflank-mailman (input) for mailman id 106048;
 Tue, 06 Apr 2021 14:59:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WgwS=JD=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lTnB3-0002Om-9Y
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 14:59:37 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 45ad2683-517b-486a-9109-f764628bb297;
 Tue, 06 Apr 2021 14:59: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: 45ad2683-517b-486a-9109-f764628bb297
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617721175;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=+evChVLHJUcKaRLvFSul8cYyPQ6MZ7vPCpZVEdy0ECg=;
  b=bLDB5mEhdXysTiYAojUlvuFSTrvWU1NYn9wnXv84M4HgyYHNeB9qHQwT
   nmQ3NuRM1CDW6LsJAib2a/kQDxZ2v7Wn25Cg4aryikAFuLY3xvhI6EQeb
   Dso+pVrnCh4EPo+gmF+Q2kSbgvVCMU0JJUUysPVYaYs/ioxuqNxzs284D
   g=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: A0huk5ROgeOS/I2RyjX5UF2tYvt6K+l164S10nDGkN7H91zUpwFHgsDfGmLv87QjxnRU02Jjnh
 FUzFZVXUvSg4cvsPigjU9vC5vXpdU11KyXyaIcFReN78HGmt0BWMa8MsypxPEBaok5mUdi870w
 u03AMYY0P2wfUHKU9y79PxRVhozHmkbTA4LxHhB290lasT17AalxL8k1ZkUQvMv0nFU6+xYdOI
 7mxRCnKN7EOswuWX6QTDYD4igO+y7uWriY1pkUvkG+iE6KSyripbgSK8ceJwMCsqZaoz33JR4v
 VGA=
X-SBRS: 5.2
X-MesageID: 40836779
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:0KRYAKNGhtRblcBcTxv155DYdL4zR+YMi2QD/1xtSBBTb8yTn9
 2vmvNe7hPvlDMNQhgb9OyoEq+GXH/a6NpJ8ZAcVI3SOTXOlUmJCMVZ7YXkyyD9ACGWzIRg/I
 ppbqQWMrLNJHdgi8KS2meFOvIB5PXCz6yyn+fZyB5WPGNXQoVt9R1wBAreMmAefml7LKE0Hp
 ad+cZLzgDIERgqR/+2G2UfWKz7r8DL/aiMXTc9GxUl5AOS5AnYi4LSLh7w5HYjegIK+5gO2y
 zvkwv15qKs2svLsCP05ivowLl93PfkwttHLsSQhsYSMSWEsHfUWK1RH4eskRpwjOaz6Es7sN
 SkmWZdA+1Dr0n/U0vwgRzx1xLu2DwjgkWStmOwsD/YjuHSABcZYvAx4b5xQ1/ixGcL+OxY6u
 Zt2VmUspJGZCmw5BjV1pzzeDxB0navrWFKq591s1VvFbEwRZV2toIl8EZcAP47bVnHwbFiKu
 VoAc3GjcwmF2+yXjTctmlr9tSmQm4+KBeAWlQDocyYyVFt7QlE83c=
X-IronPort-AV: E=Sophos;i="5.81,309,1610427600"; 
   d="scan'208";a="40836779"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iczXN9TdJm17Eqo+xHL+MQ2evrLmgcBc8ZvKn9oyAep4/NFzIaMIAEYnYRmOeVqZK3bzY+GFv5d+4oK63ollkpTcN/xcjCjo9oqitr0mM0uedZ+CNJgpmqeT9wnwPV6XsXt6CURlEMTrSyctu3LOikt7r2UWh1CS9X6/UkrEEPsc3S0mzno/jVTVeQiECa0EKwdSpb84yY/MjOuYQ1QJQI8oP6xqpSzstb5C0xrPsLDPGYibaWijglld8OUpRIjQ4La8/msIhumpPo0J1dlNPd7nVkoZ8tgL12Km/qaKjjOzK/xVVY7oxpU0jyJs9igOl33d+wINONCJOGijQZZeGg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=W3G/7MkmYv1N15KpmZkYCQC+N+vTKHuoy/0b4UDlE60=;
 b=BEubVdQMTdNHQdvpae7gvRokUHup8+dnl/9UmJC7wUZ6ka8I4dOsWUTj4WVpz5OqjetF5X9eGvI/IyrWBY01tVGDhnBWw/fieRSwUyN53zRrCJ7tq83ySySHgs77H242CxxzrO8AT31db8rUv1cYOg+XygMqy/ebE4wqLsuoKpxJYfFv4+7/i8TjEwL9rwxau7C07XZF3U3NrILiY4deCFWxAZ9omwvfV0hndrZRlmNhCtb9QWjnkHC+EdaHu/qWVia/bD+IxYE08xu6Rh4dwXXdTnbIcn9vUIS/Pa5puwDXYkPyFFDcu6Ce54sb5nduWJfPRMjZOoJvmyjL7PCORg==
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=W3G/7MkmYv1N15KpmZkYCQC+N+vTKHuoy/0b4UDlE60=;
 b=frN7p/zWWVUMyLfa1jr75antgvVBkw5QkvRBBBcCLxhpHPdDvQjs0IX6sqEO5RF7J97wAYkOocNwKp3NFyAXF2+QuqCR+jS+j4JPv9T5jrfXyiSaVHe8jci80uKfGxf9+tbP+0MEsoFmrYFuGt1qTvGAY6yaADyBAn/lAGwp0oM=
Date: Tue, 6 Apr 2021 16:59:26 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
CC: Rahul Singh <rahul.singh@arm.com>, <xen-devel@lists.xenproject.org>,
	<bertrand.marquis@arm.com>, Jan Beulich <jbeulich@suse.com>, Paul Durrant
	<paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
Message-ID: <YGx3TsTlAuE9eQ7i@Air-de-Roger>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
 <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
X-ClientProxiedBy: MR1P264CA0034.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::21) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 398f0979-9fb8-476a-0fe6-08d8f90c9591
X-MS-TrafficTypeDiagnostic: DS7PR03MB5463:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB54638C136BD359C244A898B28F769@DS7PR03MB5463.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: zaBtsBTVFWSG3aqUlkJR2ZBwBHvc54Mjfb+jG7MIPylVntmVU32enMNX5LGXtrJDR4NvRLhBJe54u7esYrLqiGMb8dp9adzlsQEAi+EY4aG6AWBq/uqwsGQYkVRLFhmjm2qq9mmGQLVEfUixDK5pETob6DIVDHzvgdNqg6b2aPBKU+qvoSiTnVAXYL4WDnV5dZkdF7L5cVi4U8LXrplo9XAsA4Uwv/4ig3no/AYyDT8jVXDGO4XH4eyRzgvujT5pE1Cj7j8cR1VNJ74pKOsEz2/LaNXJvCgQ5Wwd/BYORSWbRuvbwKtfSXOK600GoonrfApq6lJZYOKJ4ZHQtc800KlDu0N1SGrSYbIrEV9nYTlyH5PVF+kYcyShKa1YEmFhZm5u9ugpuEeYVFSH7Cza3Ow3Yb6K0zQWLme6RMI+t7M1LPbqpmQ5KXnZTm1QXLTrnwcDUWqKChMawYb+4tyYn+ZWx5VLcBOrS6eXp1mZK8T2NtvrsGTJsJu43tuW+HY2c0BaK8aRga5bG8g+sXvvuXpTzwIWwmc82sVfH2Td0zpANskASKGLd2n9xbNFBACKpU5aR6erbQcVNJKIN0lxc1+VGolt0nNxTNC5n5j4ZBBrd99lothI4/xJO+0q+Ao44Dj9g2gnuCHFXTUyrj+ozzNuYxR/oIAZ2beLk8cU36M=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(366004)(136003)(396003)(376002)(39860400002)(6666004)(83380400001)(2906002)(66946007)(478600001)(956004)(33716001)(6496006)(86362001)(66556008)(4326008)(66476007)(54906003)(53546011)(9686003)(85182001)(186003)(8676002)(7416002)(16526019)(8936002)(38100700001)(5660300002)(6916009)(316002)(26005)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?TmVuWDRkU3ZBcDZjNzRXckxJTDNpaW9ibGc3RDFxOFpuaUo0YmJGMk50WnMx?=
 =?utf-8?B?T3FUR3RWdmN4Y0QydFA4cmhWTng2djNBemRrTzkrdjF4ZzZiWnkzeS8wcE95?=
 =?utf-8?B?amdYSmp2YnRlbGczTmxXVThvUzJIV0d3WHZLcnVjKzczbVg2L1FwQi85M3FU?=
 =?utf-8?B?ZUFjTno1YlBhYXJ4VVBwaDR6dUFRc1hKUFJhS2pqc29SV2UwcGQxeUlkMTlB?=
 =?utf-8?B?bWVHdWtCU1U3RUdENVFoRGp0VGplNWJaTm9jaGhLU20yRlIwRVBEVk5LSUhY?=
 =?utf-8?B?czZRdVRLWHZQdFhMNS9kQ1ArcDFGdFFoK3ZxeW5EVHIzYnAxVVZ1akVrMmlv?=
 =?utf-8?B?QUJaOGJlS2Q3RExQOGJOMGhGcjZ0MXhMc2FsU2ZBM0E0UGo5YXVTd1hidTZ5?=
 =?utf-8?B?dHVJRzZZZTErdWwzODNQVTgxTkpQTUhycnhOeXQzWjFxWE1oWk1jdm40M1RZ?=
 =?utf-8?B?bFdja3l4Q1R5YWZGWU93QUQyTTl4RjYyanpXSDQrU0dKZk5tZE1KL1RxdXRG?=
 =?utf-8?B?dDBta1FSQ1cyWWlxQ1JQYVJjOGQ1UXA4aWxlcStraktzcGZoQjdLbmZKeXl5?=
 =?utf-8?B?OTRRdHpHK0VCOVkyRzdOSzZLUTZVVHFybS80N2RMTmI1em56TjJySGZXVyth?=
 =?utf-8?B?NkZaeHFYbkpzSkJaWERMV2V4U0d6Z1czSGw2Wml0SWJNNXFkaU9aNzFVUjVk?=
 =?utf-8?B?MTAzMDFBOTBCKys2VzkzWkYyZ3hhd3JUKzVOOWR6UVd2VHVWSUxyb3haZlYz?=
 =?utf-8?B?WGZRZEtYbGxBS0dDRUZ0VzNBUmh0cmFXaVIyWkxNNHRWaUY3L0JEVWEvRGhG?=
 =?utf-8?B?Q1RxUmtRRlFLT1N6Rm93Mkk5WTRES2liWkdEZVV3b0lHZVMxcVp3bGkzQi9n?=
 =?utf-8?B?a2Y5RzVITjVqL3BQR2NRRTRySkdUVHZjbW1Vd0tnS202Unp0NXk2b1ZHOWxh?=
 =?utf-8?B?UmlLdGxMa0dLTzE5UWRqSWw2d2s4MnFpL2lJL1RtVnlhYVdob0orbEFSWktm?=
 =?utf-8?B?OUphNVhsL3RyVDlmMXYxWWF3OXV4MjlIbkZqOUswNVhFcWRkNEN2aFF4azh0?=
 =?utf-8?B?bGFrOXhaVWJQempyVlJubjlrK3JBSk4vV094cXFUNnk1dDcrenhrWS9GZmxs?=
 =?utf-8?B?UnErdFJMSUhNQ3lSK3d3RytFZ205ankzMWl3U213R0ttY1ZYS2c2ZTdFVWlk?=
 =?utf-8?B?VVhEVTRGNmVQU2pOaGFsV0czK0s1ZVVWUTFHVUQrU20wakV5TTh5TmJJWU9a?=
 =?utf-8?B?Q0dDYkxlN0hBbnZSMWd2aEdBaUgwMmVLL2NsZ253dXlqdG5SclhjaC9lV1c2?=
 =?utf-8?B?dnV6aGZKdm94QSs5VUFUQ20wbDBBMXpvVzEzSGJyVHYyNFJtcllJQWJRQjM2?=
 =?utf-8?B?ZW54WG83aEJCMkVvUUc0Q2JIUXcyQXN0bXFpVkhwSzIwcjBSY0xBazJMZHpE?=
 =?utf-8?B?UWhZaG80T21ZY2NNVjFpZEdaYVJmL1E3Q3hPMXJHNGFCM1llSnV1NVpFREkz?=
 =?utf-8?B?eGozREllY3JpMlRLZzV2aGpDZThmbGJCbERVUzMycUhxbVdxcmVXTzdiL2pR?=
 =?utf-8?B?QmkvUVV5d0s4SmtPOVVsNEgxaTA0MDg3bklsTnE3ZWNKVWNPalZVckF0Z3NU?=
 =?utf-8?B?THlDVy9BYTJ0Z0tCYnFobmJoRzNPdjNQNmtHbW1NSVZheHV6Zk1vaXNrSmwz?=
 =?utf-8?B?VTVkTVViK0JxaEpUd1I0RWdMY0RiY2ZNQkdWVGQ3ZkM3cUY4OHlFNDlqOEdY?=
 =?utf-8?Q?6qj+b9j4OZI1Yj9eU0twXwpkErQhLM/KB7fXzrk?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 398f0979-9fb8-476a-0fe6-08d8f90c9591
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 14:59:31.9246
 (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: zfqEVD0QeE6KnbdCN3de5XXAuY0v621K415R/bBjMBuJFBsFoEnAE69UZoE9yBqt7s+KpFeu+yyMQ8WXW/b4Ww==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5463
X-OriginatorOrg: citrix.com

On Tue, Apr 06, 2021 at 03:30:01PM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 06/04/2021 15:13, Roger Pau Monné wrote:
> > On Tue, Apr 06, 2021 at 12:39:11PM +0100, Rahul Singh wrote:
> > > MSI support is not implemented for ARM architecture but it is enabled
> > > for x86 architecture and referenced in common passthrough/pci.c code.
> > > 
> > > Therefore introducing the new flag to gate the MSI code for ARM in
> > > common code to avoid compilation error when HAS_PCI is enabled for ARM.
> > 
> > Is such option really interesting long term?
> > 
> > IIRC PCI Express mandates MSI support, at which point I don't see much
> > value in being able to compile out the MSI support.
> 
> I am pretty sure there are board out with PCI support but no MSI support.
> Anyway, even if the spec may mandate it...
> 
> > 
> > So while maybe helpful for Arm PCI efforts ATM, I'm not sure it
> > warrants a Kconfig option, I would rather see Arm introduce dummy
> > helpers for the missing functionality, even if unimplemented at the
> > moment.
> 
> ... from my understanding, most of (if not all) the MSI code is not very
> useful on Arm when using the GICv3 ITS.
> 
> The GICv3 ITS will do the isolation for you and therefore we should not need
> to keep track of the state at the vPCI level.

Right, but MSI has nothing to do with isolation, is just the
capability to setup interrupts from PCI devices. What about systems
without GICv3 ITS, is there an aim to support those also? (as from my
reading of your reply those would require more auditing of the MSI
accesses by the guests)

> So I think we want to be able to compile out the code if not used. That
> said, I think providing stub would be better to avoid multiple #ifdef in the
> same function.

I think providing stubs is the way to go, that should allow to remove
the unneeded code without having to explicitly drop MSI support. As
said before, I think it's fine to provide those unimplemented for Arm
ATM, can be filled later if there's more pressing PCI work to do
first.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 15:09:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 15:09:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106055.202798 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTnKz-0003Np-8T; Tue, 06 Apr 2021 15:09:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106055.202798; Tue, 06 Apr 2021 15: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 1lTnKz-0003Ni-4o; Tue, 06 Apr 2021 15:09:53 +0000
Received: by outflank-mailman (input) for mailman id 106055;
 Tue, 06 Apr 2021 15:09: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 1lTnKy-0003Nd-G8
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 15:09: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 1lTnKj-0000km-3z; Tue, 06 Apr 2021 15:09:37 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTnKi-0007e4-Sf; Tue, 06 Apr 2021 15:09:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=0IuzaOUgfeZqwPY0X23GNFX/jWUqC0Dlgz8g41bnkLI=; b=rDaaBr/Xh1dntAa8+TnVOzEGvS
	3zm/BUN8f56ZuckeH8IpBGJBUFu5J0VlUpaUTkwqhEkjyMW89vX/Txe06ly4zcdYqHEt+1u82Rnby
	9kcQ6Xxo9HTUlRdnwE0B3ouaM+GYXM/c96W1p7g9ZLKNtxhkq6L6NYxUzqduBdq7SnFY=;
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Rahul Singh <rahul.singh@arm.com>, xen-devel@lists.xenproject.org,
 bertrand.marquis@arm.com, Jan Beulich <jbeulich@suse.com>,
 Paul Durrant <paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
 <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
 <YGx3TsTlAuE9eQ7i@Air-de-Roger>
From: Julien Grall <julien@xen.org>
Message-ID: <88704bcf-a06b-cf89-5fa3-0db94428f9f8@xen.org>
Date: Tue, 6 Apr 2021 16:09:34 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGx3TsTlAuE9eQ7i@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 06/04/2021 15:59, Roger Pau Monné wrote:
> On Tue, Apr 06, 2021 at 03:30:01PM +0100, Julien Grall wrote:
>> Hi Roger,
>>
>> On 06/04/2021 15:13, Roger Pau Monné wrote:
>>> On Tue, Apr 06, 2021 at 12:39:11PM +0100, Rahul Singh wrote:
>>>> MSI support is not implemented for ARM architecture but it is enabled
>>>> for x86 architecture and referenced in common passthrough/pci.c code.
>>>>
>>>> Therefore introducing the new flag to gate the MSI code for ARM in
>>>> common code to avoid compilation error when HAS_PCI is enabled for ARM.
>>>
>>> Is such option really interesting long term?
>>>
>>> IIRC PCI Express mandates MSI support, at which point I don't see much
>>> value in being able to compile out the MSI support.
>>
>> I am pretty sure there are board out with PCI support but no MSI support.
>> Anyway, even if the spec may mandate it...
>>
>>>
>>> So while maybe helpful for Arm PCI efforts ATM, I'm not sure it
>>> warrants a Kconfig option, I would rather see Arm introduce dummy
>>> helpers for the missing functionality, even if unimplemented at the
>>> moment.
>>
>> ... from my understanding, most of (if not all) the MSI code is not very
>> useful on Arm when using the GICv3 ITS.
>>
>> The GICv3 ITS will do the isolation for you and therefore we should not need
>> to keep track of the state at the vPCI level.
> 
> Right, but MSI has nothing to do with isolation, is just the
> capability to setup interrupts from PCI devices. What about systems
> without GICv3 ITS, is there an aim to support those also? (as from my
> reading of your reply those would require more auditing of the MSI
> accesses by the guests)

I am not aware of any plan for them so far.

> 
>> So I think we want to be able to compile out the code if not used. That
>> said, I think providing stub would be better to avoid multiple #ifdef in the
>> same function.
> 
> I think providing stubs is the way to go, that should allow to remove
> the unneeded code without having to explicitly drop MSI support. 
> As
> said before, I think it's fine to provide those unimplemented for Arm
> ATM, can be filled later if there's more pressing PCI work to do
> first.

We should remove unneeded and *avoid* allocation. Providing stub for 
existing functions will only address the first problem.

For the allocation (see alloc_pdev()) , we will need to move it in 
separate function and gate them to prevent the allocation.

It would be wrong to gate the code with #ifdef CONFIG_X86. So I think 
Rahul's idea to provide the new #ifdef is correct.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 15:16:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 15:16:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106065.202810 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTnR7-0004JA-3k; Tue, 06 Apr 2021 15:16:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106065.202810; Tue, 06 Apr 2021 15:16:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTnR7-0004J3-0X; Tue, 06 Apr 2021 15:16:13 +0000
Received: by outflank-mailman (input) for mailman id 106065;
 Tue, 06 Apr 2021 15:16:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTnR5-0004Iy-M6
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 15:16:11 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 747e9f6b-291c-4b4b-a916-8b1137f1bed8;
 Tue, 06 Apr 2021 15:16:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 144A9B211;
 Tue,  6 Apr 2021 15:16: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: 747e9f6b-291c-4b4b-a916-8b1137f1bed8
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617722170; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=E5kDzCwey0vPp/1OXLSav9jPixmkPU13olBpaECQy20=;
	b=YiAHdhqZweSJWoGdNY2j3E+g8oiQSuWdYfKFiif7mKlE12aTbS6OALesVJ4BPomA2z/rCM
	KXoNgg+n2FUGAL0mcpN6eFUQRbpZn9K6VChZpM0MNNc25q7nCZLJFwY6czza50mIHUVA8A
	pPFConpLbymhNyB5cx01h4IbX2NHNdk=
Subject: Re: [PATCH 1/2] xen/pci: Move PCI ATS code to common directory
To: Rahul Singh <rahul.singh@arm.com>
Cc: bertrand.marquis@arm.com, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1617702520.git.rahul.singh@arm.com>
 <e61c9a1190018d8de434d71049b4a97980f22be0.1617702520.git.rahul.singh@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e656413c-e6a1-a305-7980-56732b89a3e2@suse.com>
Date: Tue, 6 Apr 2021 17:16:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <e61c9a1190018d8de434d71049b4a97980f22be0.1617702520.git.rahul.singh@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 13:39, Rahul Singh wrote:
> PCI ATS code is common for all architecture, move code to common
> directory to be usable for other architectures.
> 
> No functional change intended.
> 
> Signed-off-by: Rahul Singh <rahul.singh@arm.com>

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



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 15:22:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 15:22:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106070.202821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTnX2-0005D9-Ph; Tue, 06 Apr 2021 15:22:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106070.202821; Tue, 06 Apr 2021 15:22: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 1lTnX2-0005D2-MP; Tue, 06 Apr 2021 15:22:20 +0000
Received: by outflank-mailman (input) for mailman id 106070;
 Tue, 06 Apr 2021 15:22:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=iFst=JD=kernel.dk=axboe@srs-us1.protection.inumbo.net>)
 id 1lTnX0-0005Cx-Gf
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 15:22:18 +0000
Received: from mail-pj1-x1029.google.com (unknown [2607:f8b0:4864:20::1029])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8e51c47f-03f7-4796-a0ba-fdd63944e241;
 Tue, 06 Apr 2021 15:22:17 +0000 (UTC)
Received: by mail-pj1-x1029.google.com with SMTP id t23so4883104pjy.3
 for <xen-devel@lists.xenproject.org>; Tue, 06 Apr 2021 08:22:17 -0700 (PDT)
Received: from [192.168.4.41] (cpe-72-132-29-68.dc.res.rr.com. [72.132.29.68])
 by smtp.gmail.com with ESMTPSA id
 q22sm17686696pfk.2.2021.04.06.08.22.14
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 06 Apr 2021 08:22: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: 8e51c47f-03f7-4796-a0ba-fdd63944e241
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=kernel-dk.20150623.gappssmtp.com; s=20150623;
        h=subject:to:cc:references:from:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=E6z5kWwAl+1QNK1u0OVgaasZnxxYZm0UhtDBQU9NQyM=;
        b=Mv8FIUEgsM18zskQs7tY7B/k0o7lz07YKooRJA46pT3T4Fujs2+EngigMWz1SeXxk2
         408Wr1wqz8H6xFLG9imGxTklpi19vPMezpxq7NkXPUKoqZtcOp236xq6iXS6PZgoWnSY
         u9svYa3oMjpxZyz71mbTc+/G0S+PY7LxLoupiSd3xqQjmTjJNd/QITXAcJMPpdI9cmuN
         0v2+mgf65BG6o1u6vK2WY1mJSCLMXdZxysUQKoCdJcdHM3Q/Zv0GKV1ct2mwjmxokKcW
         NPW3PoCso53PC6Np4rG6b49qINu/V7X4j/Wi0lAHyHKj84Z+mD17W0DnEuxRS/v2fLyy
         mQTA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:subject:to:cc:references:from:message-id:date
         :user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=E6z5kWwAl+1QNK1u0OVgaasZnxxYZm0UhtDBQU9NQyM=;
        b=jcNamUr8cakbSeTYrYg5hbCJEBaqWLzIHWY1w4NSRZJ9PJhthLjqzOOA2gfnDO9oTi
         55mrjupIX6A92xeOUF7LbVs5vim54VmZIIXwTsd1g/8mrJylehYz9ega+EqkgZOcK6XR
         2u2p1UxfV862qLINLN8VIfBqwOyrqzjqTOkHbZBSRKWPeK+UQBWHL0hcbV2uwGdTUNPZ
         94Mlfwu78zQvzn+WUuqFzPKone1LPwn2xTGlv2t447pTQJjZ1SqDRgDLUjgFrh4Nxx8F
         XFBfvS1mAK5vlEw20H8oKNWMyMiSyUaRkA17rb2fzVTdFn7rwD5x8i+Pqf+BzOsH1ox6
         fSYA==
X-Gm-Message-State: AOAM530Z2P2LCJDsTfwDC9X8/7iPgBUYZVOa47ZIQaMTMCR0p5YmK+/n
	ebKiJzVBhWChEgJwUg9T4BPLvViOlgWmeA==
X-Google-Smtp-Source: ABdhPJwN5ZKGULvml9xEQa+VKvFePdAogoclt6woGJtjAIRk5kqlNGGROJTag2OMaBAe3myOkBprWA==
X-Received: by 2002:a17:90b:a0c:: with SMTP id gg12mr4750699pjb.184.1617722536134;
        Tue, 06 Apr 2021 08:22:16 -0700 (PDT)
Subject: Re: [PATCH 00/11] Rid W=1 warnings from Block
To: Lee Jones <lee.jones@linaro.org>
Cc: linux-kernel@vger.kernel.org, Boris Ostrovsky
 <boris.ostrovsky@oracle.com>, drbd-dev@lists.linbit.com,
 Joshua Morris <josh.h.morris@us.ibm.com>, Juergen Gross <jgross@suse.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
 Lars Ellenberg <lars.ellenberg@linbit.com>, linux-block@vger.kernel.org,
 Philip Kelleher <pjk1939@linux.ibm.com>,
 Philipp Reisner <philipp.reisner@linbit.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
References: <20210312105530.2219008-1-lee.jones@linaro.org>
From: Jens Axboe <axboe@kernel.dk>
Message-ID: <33a06c9d-58b6-c9bf-a119-6d2a3e37b955@kernel.dk>
Date: Tue, 6 Apr 2021 09:22:16 -0600
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <20210312105530.2219008-1-lee.jones@linaro.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 3/12/21 3:55 AM, Lee Jones wrote:
> This set is part of a larger effort attempting to clean-up W=1
> kernel builds, which are currently overwhelmingly riddled with
> niggly little warnings.

Applied 2-11, 1 is already in the my tree.

-- 
Jens Axboe



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 15:25:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 15:25:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106074.202834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTnZs-0005MP-83; Tue, 06 Apr 2021 15:25:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106074.202834; Tue, 06 Apr 2021 15: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 1lTnZs-0005MI-4q; Tue, 06 Apr 2021 15:25:16 +0000
Received: by outflank-mailman (input) for mailman id 106074;
 Tue, 06 Apr 2021 15:25:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vt1H=JD=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lTnZr-0005MD-Bw
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 15:25:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4aca2816-0816-4cc4-84a6-a04d2506a5ca;
 Tue, 06 Apr 2021 15:25:14 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C3E27B219;
 Tue,  6 Apr 2021 15:25: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: 4aca2816-0816-4cc4-84a6-a04d2506a5ca
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617722713; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=S6o5tS0m5yh6tj7X6nh04+aJGyfnsOlVgA94CJCVRDc=;
	b=UmG3ymytF8W0WykASOTCM0G1uWeBfAX7HO2JVM7xrKi2H1dT1/xFTM9s6tzVhwuCTv17dC
	EySuub1hyEtmkCsHSAFhAMKHV+TCbhW0LdUjFOwkFRYuuYsgQVBvu9dmdoQR/pgLHfy15z
	bYAlX1DGjKUEn8NFbope2vVBLyjU3qo=
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
To: Julien Grall <julien@xen.org>, Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Paul Durrant <paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
 <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b0eb0833-50aa-d9a1-3265-3255970ef210@suse.com>
Date: Tue, 6 Apr 2021 17:25:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 06.04.2021 16:30, Julien Grall wrote:
> Hi Roger,
> 
> On 06/04/2021 15:13, Roger Pau Monné wrote:
>> On Tue, Apr 06, 2021 at 12:39:11PM +0100, Rahul Singh wrote:
>>> MSI support is not implemented for ARM architecture but it is enabled
>>> for x86 architecture and referenced in common passthrough/pci.c code.
>>>
>>> Therefore introducing the new flag to gate the MSI code for ARM in
>>> common code to avoid compilation error when HAS_PCI is enabled for ARM.
>>
>> Is such option really interesting long term?
>>
>> IIRC PCI Express mandates MSI support, at which point I don't see much
>> value in being able to compile out the MSI support.
> 
> I am pretty sure there are board out with PCI support but no MSI 
> support. Anyway, even if the spec may mandate it...
> 
>>
>> So while maybe helpful for Arm PCI efforts ATM, I'm not sure it
>> warrants a Kconfig option, I would rather see Arm introduce dummy
>> helpers for the missing functionality, even if unimplemented at the
>> moment.
> 
> ... from my understanding, most of (if not all) the MSI code is not very 
> useful on Arm when using the GICv3 ITS.
> 
> The GICv3 ITS will do the isolation for you and therefore we should not 
> need to keep track of the state at the vPCI level.

But that's then not "has PCI MSI" but "need to intercept PCI MSI
accesses", i.e. I don't think the Kconfig option is correctly
named. If a device with MSI support is used, you can't make that
MSI support go away, after all.

And of course I agree with the desire to have less #ifdef-ary
here.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 15:32:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 15:32:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106080.202846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTnhB-0006GZ-2o; Tue, 06 Apr 2021 15:32:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106080.202846; Tue, 06 Apr 2021 15:32: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 1lTnhA-0006GS-UU; Tue, 06 Apr 2021 15:32:48 +0000
Received: by outflank-mailman (input) for mailman id 106080;
 Tue, 06 Apr 2021 15:32:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ww1H=JD=linaro.org=lee.jones@srs-us1.protection.inumbo.net>)
 id 1lTnh9-0006GN-Mt
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 15:32:47 +0000
Received: from mail-ej1-x62b.google.com (unknown [2a00:1450:4864:20::62b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a2bee4c4-42ca-4470-9e56-e52bcc53f492;
 Tue, 06 Apr 2021 15:32:46 +0000 (UTC)
Received: by mail-ej1-x62b.google.com with SMTP id b7so22679268ejv.1
 for <xen-devel@lists.xenproject.org>; Tue, 06 Apr 2021 08:32:46 -0700 (PDT)
Received: from dell ([91.110.221.193])
 by smtp.gmail.com with ESMTPSA id um13sm4757402ejb.84.2021.04.06.08.32.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 06 Apr 2021 08:32: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: a2bee4c4-42ca-4470-9e56-e52bcc53f492
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google;
        h=date:from:to:cc:subject:message-id:references:mime-version
         :content-disposition:content-transfer-encoding:in-reply-to;
        bh=ngPnB11Rpcpn6j95lYf0RFQG3fh878RPxrpeNe+ppTQ=;
        b=In+em3Cagf76ZFfcAAnRPlOcDr63uCGRsKH+1ZNR9xGyg2hY6L2IgKzMc1DgENfYKc
         PZTHLYIqAJDBRPPrq3mmAZ1M4NehV45GFYzXGsCtNnSiJdosoHNjK3IMNZCx8//heelt
         1squCfmQMPxtLjQo/zMNJDCRjQilbxcvToByhW/93Q35Rgi6OhVBSuRJPMpVA2IcKxBO
         SCjrVaO1EdMsSBaCKwJu+P8IY+atL+bLpgu/FLlCFqceXR4YnbkyxR5eEdOtDxSss213
         /vlg7yRmFS5jNGBNUkHdkua8rQMFE96dEpiIcyYx3lJkFfKoXjL4cLm+2nLP6hbJuBos
         ILgg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:content-transfer-encoding
         :in-reply-to;
        bh=ngPnB11Rpcpn6j95lYf0RFQG3fh878RPxrpeNe+ppTQ=;
        b=sTl8dRTfX3gJ2q/8R4v5JHzKmQ+AeTfQvilDhy4rIKiM0wCkXypBW9yq+KcGMxzHLf
         IxXmfpSI0HHiMU6I46PJoX2prkzKml90GMZATgbR172geUTKfzLOM8P1x3eq0RlvEJuR
         2lFLcLf255lCFArYECa2STpnmMyK0hKL1VZ8dOjCscMBZV+s0vjsvZdfV6yn/ajewDAY
         dgkFTPPtR6xWg+r32LP8V/t/iE8Rs5JMvVYQo1Z2nhVWyaJpmp2CcWDHplpq9YS3C+Sz
         zK7YGooXWiSB99ELLJizjBtmYCpE2m478VTmE9WrBKsgOoeLlmUgCG6ofFWuuKc27+Ls
         bzDg==
X-Gm-Message-State: AOAM533v3+wtwrmp7rIlkq/r9FfIJyp5I0tiRopKm0y+EVxHuTZ07IZP
	PHtWatrRsgEuxO9ECTZ3N19wgw==
X-Google-Smtp-Source: ABdhPJxBTCrBfzzVEuMPpPm6mg4voiraukMpw00AzU44N+vDeOW/nX58Vtb5To6nYmviQM2bZTZSFA==
X-Received: by 2002:a17:906:4d46:: with SMTP id b6mr8437549ejv.262.1617723165958;
        Tue, 06 Apr 2021 08:32:45 -0700 (PDT)
Date: Tue, 6 Apr 2021 16:32:43 +0100
From: Lee Jones <lee.jones@linaro.org>
To: Jens Axboe <axboe@kernel.dk>
Cc: linux-kernel@vger.kernel.org,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	drbd-dev@lists.linbit.com, Joshua Morris <josh.h.morris@us.ibm.com>,
	Juergen Gross <jgross@suse.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	Lars Ellenberg <lars.ellenberg@linbit.com>,
	linux-block@vger.kernel.org,
	Philip Kelleher <pjk1939@linux.ibm.com>,
	Philipp Reisner <philipp.reisner@linbit.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH 00/11] Rid W=1 warnings from Block
Message-ID: <20210406153243.GV2916463@dell>
References: <20210312105530.2219008-1-lee.jones@linaro.org>
 <33a06c9d-58b6-c9bf-a119-6d2a3e37b955@kernel.dk>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <33a06c9d-58b6-c9bf-a119-6d2a3e37b955@kernel.dk>

On Tue, 06 Apr 2021, Jens Axboe wrote:

> On 3/12/21 3:55 AM, Lee Jones wrote:
> > This set is part of a larger effort attempting to clean-up W=1
> > kernel builds, which are currently overwhelmingly riddled with
> > niggly little warnings.
> 
> Applied 2-11, 1 is already in the my tree.

Superstar, thanks Jens.

-- 
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 15:45:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 15:45:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106089.202858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTntR-0007Fi-72; Tue, 06 Apr 2021 15:45:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106089.202858; Tue, 06 Apr 2021 15: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 1lTntR-0007Fb-3x; Tue, 06 Apr 2021 15:45:29 +0000
Received: by outflank-mailman (input) for mailman id 106089;
 Tue, 06 Apr 2021 15:45:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QGEI=JD=invisiblethingslab.com=marmarek@srs-us1.protection.inumbo.net>)
 id 1lTntP-0007FU-L0
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 15:45:27 +0000
Received: from wout4-smtp.messagingengine.com (unknown [64.147.123.20])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e64a7472-adeb-4adf-a5a6-f9ddee07f2cc;
 Tue, 06 Apr 2021 15:45:26 +0000 (UTC)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.42])
 by mailout.west.internal (Postfix) with ESMTP id 019B612FA;
 Tue,  6 Apr 2021 11:45:24 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute2.internal (MEProxy); Tue, 06 Apr 2021 11:45:25 -0400
Received: from mail-itl (ip5b434f04.dynamic.kabel-deutschland.de [91.67.79.4])
 by mail.messagingengine.com (Postfix) with ESMTPA id 2007F24005B;
 Tue,  6 Apr 2021 11:45:24 -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: e64a7472-adeb-4adf-a5a6-f9ddee07f2cc
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-type:date:from:message-id
	:mime-version:subject:to:x-me-proxy:x-me-proxy:x-me-sender
	:x-me-sender:x-sasl-enc; s=fm2; bh=PO0+7FT9TKWmzjx0sAJfwf38Vr6YG
	+cGV22fL96XXS8=; b=KNxDjtMgV/tC9DKU8Trx09zMjE8n7Q8PX0tYy0QlnTyNq
	t//PthGb7v+rcQ3nSdWw71OtmPMw9O1OMrVRjg8y3nAP3Y2d+L6PFZbs7KyGtJlC
	kL1Dt3G5G4e+DvNIzzh+yNotgGJNapRX52JW9KtLHmuGwC2i2uLb41G8TWqt24DD
	foSkAYC2whk7PdUChzwf/FV52hma69zI6vAWJ/he0r+n4lccORBwhRMoqNNhN+1c
	aFvC24f2R5dD8ly0OEiH/5mJt1PqnQgCq7xj8w0buR9Wji0L7ezZmZfkADTrpF6p
	xRXpHuqbiXnU2KoJcpvOygutNmmEDDZndS8+Pzv7g==
X-ME-Sender: <xms:FIJsYIbl3TdMDk9RlZh8KrqhR7ve393RkF5-l-ffC2EGC04wim3OJA>
    <xme:FIJsYFaJW229BMiAB0oMzy0J4Idnqh-BDV0og912358nrTXJmVNqTA0P1NNWN-HyY
    3Kcq34Qy_YJNA>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrudejhedggedtucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepfffhvffukfggtggusehgtderredttdejnecuhfhrohhmpeforghrvghkucfo
    rghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvhhish
    hisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeegvefhtddt
    veehudfgtddttdejkeeltdfhheegleffhfevgfeuieeuteehuddtjeenucffohhmrghinh
    epmhgrrhhkmhgrihhlrdhorhhgnecukfhppeeluddrieejrdejledrgeenucevlhhushht
    vghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhesih
    hnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:FIJsYMU-GmVFTJb_r82vMYJdTlQtwocY6d-uSu2l4prEAkKbNuzUuQ>
    <xmx:FIJsYE2tUvXepMct_rTy3TKsHm8dInd6Nl2rUK0WDMNGIkWm87QjOg>
    <xmx:FIJsYLbkjQZpLp_0LuDZIm0nd7zPoxK_82XDZcmXBo8MF2aIM_Kp4A>
    <xmx:FIJsYODYgQb_NG9B9fNiup1lAsukuR_4AlX6tNNMTnKu1z_fB74sEA>
Date: Tue, 6 Apr 2021 17:45:20 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel <xen-devel@lists.xenproject.org>
Cc: "Demi M. Obenour" <demi@invisiblethingslab.com>
Subject: block script performance
Message-ID: <YGyCECo8O0rwS8Z5@mail-itl>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="Y7Epn8F7IAMLWrHw"
Content-Disposition: inline


--Y7Epn8F7IAMLWrHw
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Tue, 6 Apr 2021 17:45:20 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel <xen-devel@lists.xenproject.org>
Cc: "Demi M. Obenour" <demi@invisiblethingslab.com>
Subject: block script performance

Hi,

Some time ago I've done an analysis what's the easiest way to improve VM
startup time, and one of the things that really stands out is block
script. VM with 4 disks can take up to 2s on waiting for block scripts.
A while ago I proposed a patch[1] that short-circuits the block script for
the simplest case - already existing block device. There is also similar
slightly more complex but common case - a file-based disk, needing a
loop device.

While there are several ways I can fix this in Qubes-specific
configuration, I'd like to have a solution useful for upstream too. And
for loop devices it would be especially useful, as the Linux API here
has a _huge_ potential for all kind of races (resulting for example in a
wrong disk being connected to a VM). Currently those races are avoided
by the block script by taking a global lock, which also adds to the
performance issues...
Furthermore, I'd like a solution that is compatible with driver domains
(backend in a distinct place than the toolstack), preferably using the
same code path for both (to reduce regression risk, because most test
only dom0 case...).

Recently I've talked with Demi (in cc) about it, and we came to a conclusion
that it should be somewhere in libxl, in a place that is also called in
`xl devd` (to cover non-dom0 case).=20
I think I know libxl well enough to find the right place to plug this
in, but I'd like to ask first, if this would be acceptable in upstream
libxl. Note this will be Linux-specific (both because of loop devices
part, but also because of writing xen-blkback specific xenstore entry).

[1] https://xen.markmail.org/thread/ytikjjbs4kpihzi5

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

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

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

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmBsghEACgkQ24/THMrX
1ywOCgf9GpwlqW9+D+2vJ77PaPaeYtcUskVGugHXsRTUDzk6FmQcAY73OYFBVYC7
LH3jC+50CNEIAZf5Mw2TSg4aD1jyIoN4IlDqw+yd2AZKAAIWXNAW6ydZ5mevviA6
FX5rRqrLLBS8NaOdacrv4m4YJaWNspjnp+sqHI88txrg0wtmaWVXutnBUB1zzsbQ
D4LRIjyH9aEIop5S8C0coywUdcVV166CttMu1jTeK7A5QqBFUdhE1JH6ahEOP8nf
Ohcwg0iepxYTNAulXg4K6ELmQYxArIAZ1ue1CO5veWQ0cJ/RiW/zUfBpe1CVsGKs
OUOcq+mh2+ymSqeGBBNURjrl41NPag==
=84I/
-----END PGP SIGNATURE-----

--Y7Epn8F7IAMLWrHw--


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 15:58:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 15:58:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106094.202870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTo6O-0008DZ-DT; Tue, 06 Apr 2021 15:58:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106094.202870; Tue, 06 Apr 2021 15:58:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTo6O-0008DS-AA; Tue, 06 Apr 2021 15:58:52 +0000
Received: by outflank-mailman (input) for mailman id 106094;
 Tue, 06 Apr 2021 15:58:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WgwS=JD=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lTo6M-0008DN-8D
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 15:58:50 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 771da170-73e5-4a9f-9c61-15e3ff492ac1;
 Tue, 06 Apr 2021 15:58: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: 771da170-73e5-4a9f-9c61-15e3ff492ac1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617724728;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=cCELuAREvL2qnfubBeXTbYdF1jtrOTwD8ARND86tCkM=;
  b=R1vnjOY+IZ7KANGXC1klEoUE4Dj0YqlF7QpReyvRnoA8lAhP+leqQaCq
   LeXGS/h9N9yTjDECK25R9BL5gckMGH9FSP+RuKj/6G7OnlwQRDVxZ7diM
   GoevSvau3yvnUEpCdTxQd86ztZiP/abFPIK/EbSIn4IGf7DkE+tNxwHd+
   s=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: fteQswJ78KTZ9QL94QN5Rzjc6lPFNlFgdXknH2zzYq7ACdzqlYXasp/p+BAE3zJXWZu83t7ZaB
 AfgEBe2i6UMi1GrBxJKjHXAKWS1N3hS78rQL5yB4Xj2nOEmJlziIqwddJz+BMt5EZOodsUNIWx
 rkx6IpuyzHyiQ1e3XXr5s+Ky5GFA+hVcRvOPGRdhHvWiY0Xi3xcldRv/bNNlWDOznH+AgVxcoQ
 YpQz3TNkOgN4wC90N8zYfaq69TSJtx7an92L91t+YlgI8BGykimZ8rHdSgtAr5SQN3QE+RwBmb
 yP0=
X-SBRS: 5.2
X-MesageID: 41366705
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9z8zlK8FrOsevAYjj8puk+FocL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmyybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUHD38Zn/+
 Nbf6B6YeecMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsKV4hLxW5Ce2GmO2dxQxRLAod8OZ
 qH/8xcpyehf3N/VLXAOlAuWe/fq9rX0K/8aRkdCBI9rCWIhzWk6Ln1eiLooys2eTVJ3Lsk7C
 z5gxX0j5/TyM2T5z398yvo75pQkMb80dcrPqKxo+UcNzmEsHfLWK1PQLuH1QpFxd2HyFFvq9
 XUpgdlAsIb0QKsQkiQgT/Anzbtyywv7XiK8y7pvVLGrdbiTDw3T+pt7LgpCyfx0EYrsNFi3K
 8j5Qvw3PA2fHCw7hjV3NTGWwpnkUC5uxMZ4JYupkdSTJcEb/tppZEflXklYasoJj7w64wsDY
 BVfafhzctRGGnqC0zxjy1ExdyhWWkLBRGWQkQOkdz96UkpoFlJi2Qf38ARhXEG6dYUTIRF/f
 3NNuBSmKhJVdJ+V9MwOM4xBe+MTkDdSxPFN2yfZXzhCaE8InrI77r6+q886u2GcIEBpaFC16
 jpYRd9jyofakjuAcqB0Nlg6RbWWliwWjzr14V3+4V5kqeUfsuqDQSzDHQV1+ewqfQWBcPWH9
 ypPohNPvPlJWzyXa5UwgzFXYVII3V2arxVhv8LH3a15u7bIIzjseLWNNzJIqD2LDoiUmTjRl
 QZWjzeI9hB81CLVnf0jAO5YQKuRmXPubZLVITK9ekaz4YAcqdWtBIOtFi/7saXbR1O25ZGOX
 dWEffCqOeWtGO29WHH4yFCIRxGFHtY573mTjdvrQ8OOEXkTKYbt7ykCCRv9UrCAiU6Y9LdEQ
 ZZqVgy07mwNYasyScrDM/iFW6GkX0JpjavQ40HkqOOoefpE6lIQKoOaehUL0HmBhZ1kQFlpC
 NocwkfXHLSETvolOGCl5wbBObWcvFmmwe1KctoqXbS3H/s5v0Hdz8+ZXqDQMSXiQEhS35/nV
 tq6ZISh7KGhHKSM2cluf85N1dNcWyTJ7pDAG2+FcJps4GuXDs1YXaBhDSchR12Xmbx7U0dil
 bsKjCudejRDkBQvW1Z1ajW4Ep5H1/tDH5YWzRfi8lQBG7GsnF83auwaq2/33C4R3ECzuseWQ
 u1Kgc6E0dL/ZSaxRSVkDGNGTEa3Z0oJPXaF6lmWarUwGmRJIqBkrwmE/dY8I1+Ds3ntvYGXI
 ukCkmoBQK9L9ls9x2ep34jNiUxlWItlunw3gb5qEe/x3wyDJPpUSJbboBeB+vZyWfqR/yFis
 okyf00uPa9KWX3ZJqtz7rNYztKNxPUpiqXQogT2ORplJN3kIE2OZ/RFQbs/jVg+j4VKc/vjk
 MQQKhh+tn6S8dSVv1XXxgcx0YjkdSEEVAivQP3CNIvZF1FtQ6vA/q5p57z7Yc1CkKPpAHMKU
 CS3i1U8fDCRTaC39chetUNCFUTTEg383J5+uyeM6XWFQWxbulGlWDKeEOVQft4SKKfH68XoQ
 s/y9aUn/WPfy69/AzLpzN0LuZv9GmgKPnCTT6kKKpt89agP06LjbbvyMmvjC3vQT/+Un8mv+
 R+BAUtR/UGrCIjgo0x2jWzTaKygntNqSog3RhX0nj32oan52/HG1phKgOxuOQOYQVu
X-IronPort-AV: E=Sophos;i="5.82,310,1613451600"; 
   d="scan'208";a="41366705"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XuSonDJZQXFhXWjslLy4Inca9JiP5tlxuLaf4ITJc2CsE90F2plMIuhEyU5FRfxH+YBCSezu6uDLHR0317qXhyVNmbVYPfP+cr+4VjjNMdZGrJXL18xp3aOb9GpgzdcoV5L4V0CGAX25jHzsR/fIa+AFjvFimuvbnjoRAtG8d0HdttK4IDkLJ1/l0PWoMbNePqI8zwbX5gkLohxGLNLdHTfKPCOGGU8Ti7Cb+zB/F0oLrxz9QHXPdRD2/amQ5RVUR9lxqFAvjMyUMBx0h7M+i9eKhea+xiRXnEIaPNznzcTxt6OVVHkHELtg9K+2vzq9Np3ECLLGpBfnbbATN81pRA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=t3AELijsXTbU/SU33N79QG74GLplaaw6uFX0h98XSnU=;
 b=JfyfBENEQ+S2g5uTGrm+Nxkk0h31KoyjdrEW60UA7IXeO//V8GLpcA0MBgOM5kHh2CxLKEu4i9toQ4ho+RBbDGRU8oyr+2Y7v0oSIdG5lKh+63igldz/B8NcvD5ga6clrH4GeF+4Lo8ewk6cC+qsld9zRJ3jAE3pzKoNYEiDefxOfAsdpf5SkFj7zL5lK7FfyxHSsziJJVbvqO/tNQUx+l4i+lSz5u1Osngkx+vdOe0QLrv6c97k+rtkSSF6oybiqAX+i8PS/6IDoFPmfCtqKC4cPQWRAMXL03/2YiWs3KBZnT0XoVXNs/LdaG5hVCBtbMEREk3jjxnvH1lSWqodgA==
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=t3AELijsXTbU/SU33N79QG74GLplaaw6uFX0h98XSnU=;
 b=QBF+XTkn1BHJWA7HAOAEt+nGFu5wenLXFMv3DgWfPq678Gj3zusf2kz/EotBwrRwWkj1dfg8QbFVw1WVsEuXG/g+DWZiXT6wlyIwysGhUV9kH+XkPGNORCwan3oUW/2UNt3jlsvDMj7RVSy0y1CMAioYycXWUH7eFyZvN6YJHiw=
Date: Tue, 6 Apr 2021 17:58:36 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
CC: Rahul Singh <rahul.singh@arm.com>, <xen-devel@lists.xenproject.org>,
	<bertrand.marquis@arm.com>, Jan Beulich <jbeulich@suse.com>, Paul Durrant
	<paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
Message-ID: <YGyFLIp8Ld0RjcoI@Air-de-Roger>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
 <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
 <YGx3TsTlAuE9eQ7i@Air-de-Roger>
 <88704bcf-a06b-cf89-5fa3-0db94428f9f8@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <88704bcf-a06b-cf89-5fa3-0db94428f9f8@xen.org>
X-ClientProxiedBy: MR2P264CA0074.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 93af98b6-f4a7-41f6-0d11-08d8f914d935
X-MS-TrafficTypeDiagnostic: DM6PR03MB3579:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB35798BF536EF94DA383F04088F769@DM6PR03MB3579.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: t2oEOlXP9QeCq5eGufXRojhSS9+QmrDBs6oHeTrrSchuOAB3ThVy4HzzX6NFC0Pz61/gQY3C49HU2bSX5nIPrFzJVNnmvscNqrZQ8QXBBW1XnjAw8rmWjJdPjYTo2uxW1xnDSroRo9eVaHV9cRju4z9AV+HPeybdWQpKMxQRXdUaJgMvmc9gu5rZ4yUGwpdg0RbTceUR5dPqK5LM8o02zrtwvZL7AU6JM34W+NGXY9RifRaF6894cAjkXtKluuaPO3nRgf74DsX54FuGuS78Rx/eRUbpFZZp4i+cL3wEEa/v1VfYAdA7SHmwf78QVgCSyWBFZt3AR+LTb6gmN+t7DE4TAhCFzN7QzzoppWNSnSXS2zjoeuElsz2/yfABNcWR1NsSIsxn9pL3EDWMVeLUk0AGGsRfq1ZkuMklZx3nrCS1zVX1qUFMPdKntI7dZ9GnrcwSTta4C5aaLmT1ycHnIXjj2DD6891ELb5hyslBu+xm3IpxF8cBzFc9gzuAznb49CLmAoPGT0zgdYsJ/TRyN4XZXxQN07RLfq1SEcTYonDYKYtYmrCokmtHJt4GHrFXv858R6dVQuAZvQme5dhoSTmX+GsunqjJti2a4zFVrAftylG4NRiHEl9p0r7ZlWaBvH86qr3vDp6e595NPlN7qwQKd7hH3EonDRcZ4/P/B64=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(396003)(376002)(136003)(346002)(39860400002)(6496006)(86362001)(54906003)(83380400001)(85182001)(316002)(4326008)(2906002)(6916009)(9686003)(8936002)(478600001)(956004)(33716001)(8676002)(5660300002)(16526019)(186003)(6666004)(7416002)(66556008)(38100700001)(66476007)(53546011)(26005)(6486002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 93af98b6-f4a7-41f6-0d11-08d8f914d935
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 15:58:41.3790
 (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: M1B7IiCao5IGGOFKuBIsS+NoBvmIgfIx/fgHpuDngScMXyjdtOLrtS0pyXsCPY/YO/Q2qgb0HqSnBDqQrUmjRA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3579
X-OriginatorOrg: citrix.com

On Tue, Apr 06, 2021 at 04:09:34PM +0100, Julien Grall wrote:
> 
> 
> On 06/04/2021 15:59, Roger Pau Monné wrote:
> > On Tue, Apr 06, 2021 at 03:30:01PM +0100, Julien Grall wrote:
> > > So I think we want to be able to compile out the code if not used. That
> > > said, I think providing stub would be better to avoid multiple #ifdef in the
> > > same function.
> > 
> > I think providing stubs is the way to go, that should allow to remove
> > the unneeded code without having to explicitly drop MSI support. As
> > said before, I think it's fine to provide those unimplemented for Arm
> > ATM, can be filled later if there's more pressing PCI work to do
> > first.
> 
> We should remove unneeded and *avoid* allocation. Providing stub for
> existing functions will only address the first problem.
> 
> For the allocation (see alloc_pdev()) , we will need to move it in separate
> function and gate them to prevent the allocation.
> 
> It would be wrong to gate the code with #ifdef CONFIG_X86. So I think
> Rahul's idea to provide the new #ifdef is correct.

I think all this needs to be in the commit message then, because from
my reading of the current message it seems like MSI code is only
removed because MSI support is not implemented on Arm, rather than Arm
not requiring such strict tracking of MSI accesses and MSI interrupt
setup. Likely the naming of the option needs to be adjusted also
together with the reduction of it's scope to stuff that explicitly
needs to be removed in the preprocessor opposed to adding arch
specific stubs.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 16:31:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 16:31:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106107.202888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lToc9-0003jN-5m; Tue, 06 Apr 2021 16:31:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106107.202888; Tue, 06 Apr 2021 16: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 1lToc9-0003jG-1r; Tue, 06 Apr 2021 16:31:41 +0000
Received: by outflank-mailman (input) for mailman id 106107;
 Tue, 06 Apr 2021 16:31:39 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lToc7-0003jB-PU
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 16:31:39 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lToc7-0002eU-Mz
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 16:31:39 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lToc7-0006i6-KW
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 16:31:39 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lToc4-000811-9E; Tue, 06 Apr 2021 17:31:36 +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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=References:In-Reply-To:Subject:Cc:To:Date
	:Message-ID:Content-Transfer-Encoding:Content-Type:MIME-Version:From;
	bh=yoi0DlQX49mHY3ElqjcYVLqJZg+coJloMqEGIAB7ugk=; b=y2tjISL8AVUX1nETtU77nBi5gK
	Me53wAH2hmNQvYEgGTl6arJJtgGGLJ77SfCQvrKHu1h5yFH/WSY3zJ+fXBGwrjBk4n/gkrT6wQGrD
	owTsVlyIVRdI6R3kjmK6x7EI79epYZCMPueiCfqPx0Z+FLmhE3jeEEydegsaKVfzl6CA=;
From: Ian Jackson <iwj@xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <24684.36071.972895.582321@mariner.uk.xensource.com>
Date: Tue, 6 Apr 2021 17:31:35 +0100
To: George Dunlap <george.dunlap@citrix.com>
Cc: <xen-devel@lists.xenproject.org>,
    Olaf Hering <olaf@aepfle.de>
Subject: Re: [PATCH for-4.15 1/7] CHANGELOG.md: Mention XEN_SCRIPT_DIR
In-Reply-To: <20210401133827.362216-1-george.dunlap@citrix.com>
References: <20210401133827.362216-1-george.dunlap@citrix.com>
X-Mailer: VM 8.2.0b under 24.5.1 (i686-pc-linux-gnu)

George Dunlap writes ("[PATCH for-4.15 1/7] CHANGELOG.md: Mention XEN_SCRIPT_DIR"):
> Signed-off-by: George Dunlap <george.dunlap@citrix.com>

Reviewed-by: Ian Jackson <iwj@xenproject.org>


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 16:56:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 16:56:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106123.202928 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTp03-0005iI-E3; Tue, 06 Apr 2021 16:56:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106123.202928; Tue, 06 Apr 2021 16:56: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 1lTp03-0005iB-9x; Tue, 06 Apr 2021 16:56:23 +0000
Received: by outflank-mailman (input) for mailman id 106123;
 Tue, 06 Apr 2021 16:56:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JduZ=JD=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lTp01-0005i3-Gz
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 16:56:21 +0000
Received: from mail-wr1-f53.google.com (unknown [209.85.221.53])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3457f296-f13f-4b20-bd38-3e77af45237a;
 Tue, 06 Apr 2021 16:56:20 +0000 (UTC)
Received: by mail-wr1-f53.google.com with SMTP id q26so9288598wrz.9
 for <xen-devel@lists.xenproject.org>; Tue, 06 Apr 2021 09:56:20 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id f24sm3482764wmb.32.2021.04.06.09.56.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 06 Apr 2021 09:56: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: 3457f296-f13f-4b20-bd38-3e77af45237a
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=FEAVCo+u2HWRS+XIBEsCGESdrilEgAfIg2k7wEPb9O4=;
        b=Bw7GH+J7jPqzTJb0fV0mpUoZ0YTUkvCSWQHDyjc7PoUptRg6vVq0JJJwYfPwVvknMa
         lXppohQm6AZu/zeOmgylm8KcrmnPrnZMdG24VYOENFKNvPGWdehNNL0R9vNV6z/Smvb1
         1CQaIabTDoJsnWfeSmSfJScW4+mksuEAcRi8SrcRFOFLYAL0FCjnM4cScH5+lpyK/svE
         zj57TFjZ1sMqbM8/ftL/wht4jDTV+8uF9sVkekbSwlamy6a/Y5KozXGZp/dMysNXOCSl
         Ja8HMykgiavrXXxnLA4coeQswWmmYn470s/6JIPelA2vZxi9kjjsk28mTDrb9TxGip61
         AABQ==
X-Gm-Message-State: AOAM531VWVb0/2gI4WQL6+iaRHz1L9D8XE7aY3rszPU77mNmkwtl5J6z
	A+F1FSBysWf+9Qxbbt0+StA=
X-Google-Smtp-Source: ABdhPJwKe5Uj/kPNaz0TDQkuyj26awWLTLYjxg44GY3l4xzikyi9LrV1wUm/FIojKCjKSsPC0eEoNg==
X-Received: by 2002:adf:f143:: with SMTP id y3mr37965915wro.198.1617728180173;
        Tue, 06 Apr 2021 09:56:20 -0700 (PDT)
Date: Tue, 6 Apr 2021 16:56:18 +0000
From: Wei Liu <wl@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Subject: Re: [PATCH v2 1/3] x86: don't build unused entry code when !PV32
Message-ID: <20210406165618.6vfo4tkqfyyv76sr@liuwe-devbox-debian-v2>
References: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
 <213007e3-bb4c-a564-ca1d-860283646be4@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <213007e3-bb4c-a564-ca1d-860283646be4@suse.com>

On Tue, Apr 06, 2021 at 04:01:22PM +0200, Jan Beulich wrote:
> Except for the initial part of cstar_enter compat/entry.S is all dead
> code in this case. Further, along the lines of the PV conditionals we
> already have in entry.S, make code PV32-conditional there too (to a
> fair part because this code actually references compat/entry.S).
> 
> This has the side effect of moving the tail part (now at compat_syscall)
> of the code out of .text.entry (in line with e.g. compat_sysenter).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 16:59:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 16:59:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106128.202940 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTp3U-0005sK-Sa; Tue, 06 Apr 2021 16:59:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106128.202940; Tue, 06 Apr 2021 16: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 1lTp3U-0005sD-PZ; Tue, 06 Apr 2021 16:59:56 +0000
Received: by outflank-mailman (input) for mailman id 106128;
 Tue, 06 Apr 2021 16:59:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JduZ=JD=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lTp3T-0005s2-GU
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 16:59:55 +0000
Received: from mail-wr1-f43.google.com (unknown [209.85.221.43])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 002609e3-bdf5-4fad-a514-053830cefb52;
 Tue, 06 Apr 2021 16:59:54 +0000 (UTC)
Received: by mail-wr1-f43.google.com with SMTP id b9so7105489wrs.1
 for <xen-devel@lists.xenproject.org>; Tue, 06 Apr 2021 09:59:54 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id u9sm3567374wmc.38.2021.04.06.09.59.53
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 06 Apr 2021 09:59: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: 002609e3-bdf5-4fad-a514-053830cefb52
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=23E2JxVM2Db+lzpj2F19BRqlatm868CCsIQugpAoPNs=;
        b=VLc5bK6WinPUhsun42ziGkJ8UnDUhDkHixVT+QAXmNsjFTiAndUrrdjafc5qCqCtM7
         VBriseGI6Y0w1UjVfcIwNNyhpsIRFh1nIx3/uU4fQtH6bzGg6zVMq8bFpfBtg57a+NO2
         3hcoq9IYxJBtuE1sXhSXiVepExfMnuhgdFFATIDIV1RtD+lC4cGWZPDNULS7Fuz017Vq
         WckfdNBz3eTkTPcftrDOUd9SqQOtSwsAmQ5p26ve69SmhMn0UtWx6NzA61f6ZyhiT1vN
         aI+DbHoK7gzK/udiLPNlkJY3oeWfQ5Bpve1+bQksNmDiniOYJdNhWUA9l/srdgC1tdPj
         VgUg==
X-Gm-Message-State: AOAM5304Y002Aalpt2mC6w/tJfW25PDnU4QaHcoFcuQ+uyynruMdY2tM
	oJNV/hnjH/kVjNUNgjO9p60=
X-Google-Smtp-Source: ABdhPJwfsCFEuJt0HiZL72nSFIe192a6hiTiKdauCl7/4tTB1GlFWsrhg2TSePqXL90tchm3V1l/qg==
X-Received: by 2002:a5d:6242:: with SMTP id m2mr35907371wrv.384.1617728394075;
        Tue, 06 Apr 2021 09:59:54 -0700 (PDT)
Date: Tue, 6 Apr 2021 16:59:52 +0000
From: Wei Liu <wl@xen.org>
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>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Subject: Re: [PATCH v2 2/3] x86: slim down hypercall handling when !PV32
Message-ID: <20210406165952.lk6qqyb3ert3bsov@liuwe-devbox-debian-v2>
References: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
 <d85736e6-bca9-de3a-328d-d727c327dbda@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <d85736e6-bca9-de3a-328d-d727c327dbda@suse.com>

On Tue, Apr 06, 2021 at 04:01:41PM +0200, Jan Beulich wrote:
> In such a build various of the compat handlers aren't needed. Don't
> reference them from the hypercall table, and compile out those which
> aren't needed for HVM. Also compile out switch_compat(), which has no
> purpose in such a build.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 17:03:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 17:03:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106133.202951 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTp6w-0006kk-Cl; Tue, 06 Apr 2021 17:03:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106133.202951; Tue, 06 Apr 2021 17: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 1lTp6w-0006kd-9v; Tue, 06 Apr 2021 17:03:30 +0000
Received: by outflank-mailman (input) for mailman id 106133;
 Tue, 06 Apr 2021 17:03:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JduZ=JD=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lTp6v-0006kY-HN
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 17:03:29 +0000
Received: from mail-wm1-f51.google.com (unknown [209.85.128.51])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7a3a62b1-9ba2-4896-80ad-441169306344;
 Tue, 06 Apr 2021 17:03:28 +0000 (UTC)
Received: by mail-wm1-f51.google.com with SMTP id
 5-20020a05600c0245b029011a8273f85eso3552332wmj.1
 for <xen-devel@lists.xenproject.org>; Tue, 06 Apr 2021 10:03:28 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id x1sm22493803wro.66.2021.04.06.10.03.26
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 06 Apr 2021 10:03: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: 7a3a62b1-9ba2-4896-80ad-441169306344
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=pxsRGRXuq7g/dkwJ7vIPMwU96/PBZY5+iN2Z8OE85GE=;
        b=LwwJmCePApOyR16kHSPeXQzdlI32vcLIrUDPPiaQS2TJiFgBF/rKslvNxQhPXHLute
         4BB/cBGttKIPbbiMyxER7IL1z9PBb4mLwqZ1AsvYgsV4LQsq7Apmh06jTKBVOAtUn2Hu
         aptQf48gX2entEm00Sy06kfCIo0bNYEDiJvEJyWweVg9vuhS87zJ2nCrY0jIVWvNSajS
         WuwZqaUTQ/lfBrl6xXwCuo2UMUcsq9xyQdsmTEw7GPar6s9cfzCDqlbxlEPwmPfkdZyP
         ErjRCgMvhscTlbCwVW3YUjTfVsU7t2MNeH5tQ56A/5lxBQnqmtEhoF47LNhK7SX5EnQ8
         AjZA==
X-Gm-Message-State: AOAM5321ZkjAmOLEZ/T7jPCBX9xyjwOE/Q1RG3E3EO0TJCFce61vLhoS
	P2ytZ/kHUBvaZkLxhAkh23Q=
X-Google-Smtp-Source: ABdhPJyXHWRoD4nIO7as+YiNZpE6wzgJ2pSm6y7kYol8Vce8954eG1Smn1/yekCh7NzoNoZwTuQs3A==
X-Received: by 2002:a1c:ed05:: with SMTP id l5mr3367013wmh.154.1617728607231;
        Tue, 06 Apr 2021 10:03:27 -0700 (PDT)
Date: Tue, 6 Apr 2021 17:03:25 +0000
From: Wei Liu <wl@xen.org>
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>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Subject: Re: [PATCH v2 3/3] x86: avoid building COMPAT code when !HVM && !PV32
Message-ID: <20210406170325.wn3odtj5pqd2xxu2@liuwe-devbox-debian-v2>
References: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
 <85b6edfc-9756-9dd0-c90f-f46dc120dade@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <85b6edfc-9756-9dd0-c90f-f46dc120dade@suse.com>

On Tue, Apr 06, 2021 at 04:02:08PM +0200, Jan Beulich wrote:
> It was probably a mistake to, over time, drop various CONFIG_COMPAT
> conditionals from x86-specific code, as we now have a build
> configuration again where we'd prefer this to be unset. Arrange for
> CONFIG_COMPAT to actually be off in this case, dealing with fallout.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 17:34:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 17:34:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106159.203032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTpak-0001Jo-GD; Tue, 06 Apr 2021 17:34:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106159.203032; Tue, 06 Apr 2021 17: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 1lTpak-0001Jh-Cw; Tue, 06 Apr 2021 17:34:18 +0000
Received: by outflank-mailman (input) for mailman id 106159;
 Tue, 06 Apr 2021 17:34:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hTMm=JD=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lTpai-0001Jc-5f
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 17:34:16 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 075c08e0-dc6d-448f-a1c5-46ef96c69077;
 Tue, 06 Apr 2021 17:34: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: 075c08e0-dc6d-448f-a1c5-46ef96c69077
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617730454;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=IHnokvPOu6Q5uhUGljbZ8sZww5k4ZDZFr9fE4bXxImw=;
  b=YgFy1q7wF8w6OCuHvFkXReNVdZGpkGOMp6abjuYKpS0q2b7+2PWrko9O
   U2D7wUlKHMrtYNdvKtzKMfDErzw7h1NmLvE1iu9ZYSlxgDbaO7zR1peGr
   oPPQqt5AhMRh8lXuGVOObwct3YDazBP1Di9DAZF/+xDhTjYYr2ZRDSaox
   M=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: BCKVTVtazFFejypfh7ZYcICCnLCE6g1v4sp+Tz1Xpmi8M0ZMtJvube5YXdMsZaqaiIGXpFkIjL
 HPGVvrd91as/1Q46GgasXV5pNtf61NM6ZK5hqlziJVE5TwooFo8NiKkDn9WVJnOSBist6Vo2Y6
 tmAA9iRJZyxNE+uHl+WChp9boXFQmwpk81XS4YilUecYO57c3fjjG/hDvNPg4vgNoGv8mjNW+E
 X4olrWr64RWpGp39JJMwrcM3lu5IqKNx4nm9+TLCforHt12foOcY79uN8wZWSsuL3u50NHvEVx
 g44=
X-SBRS: 5.2
X-MesageID: 40987823
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:CXDQ3asXaZ82O/0sJbe02tTe7skCM4Aji2hD6mlwRA09T+Wxnc
 qjhele8BfyhioYVn1Io6H0BICraxrnhONIyKMWOqqvWxSjnWOuIp1r44eK+UyVJwTV8OlB2a
 B8N5VvEdGYNykxse/WwimdV+whzt6O7byyiY7lr0tFYAl2Z8hbnnZEIyucFkV3QytLFd4CFJ
 Sa7tdavDbIQwV1Uu2VHX8ANtKz3OHjtJWjWhIeAg5i1Q/mt0Lb1JffMzy1migTSClOx7BKyx
 mJryXc6r+4u/+2jj/wvlWjn6h+o9fqxttdCMHksKF8QVSc6HfMFeARPMzlzUlF2N2H01oknM
 LBpB0tJa1ImgDsV1uoqhjg0RSI6kdT11beyESViXamgcv1SCNSMbs+uatlcwDU40dlgddk0K
 gj5RPni7NrC3r77V7AzumNcysvt0Kv5VI+jOYYjhVkIPwjQY4UibZawWR4P9MrGjng5IUuDe
 90Zfusksp+QBehdnjc+kNvzNavUm92IRucWEgFvaWuuQR+rTRC1kMdgOkSgXsEnahRd7B0o9
 7cOqAtr71KRt8NUaVhH/saXMe7Y1aifTv8dFiKKVCiLrwOJm7WwqSa3JwFoNuycJhN85sohI
 6pajxlnH93f1irBdyF3ZVN/ByIXX60Wi71zNpCo5djvLnxQ6fqLD2DRFgin9DImYRXPuTLH/
 CpOJxXBPf/LWzhXYZRtjeOE6V6OD0CVIkOvcsgH0iLv9ujEPygitDm
X-IronPort-AV: E=Sophos;i="5.82,201,1613451600"; 
   d="scan'208";a="40987823"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U+aC5Aj4dVlUs9hZBk72/FoLSB5BE/lTmf921xqKnQ/ujk1Xb+MXb58e1/Hg6bzbBE3YyeoqTJo1cm94oqg0XSfHEs2le2h1h3H6cDUrwPhlUnT/5PfGyp/9SZsjeb2ddczLsTk1N8vzf0CwewO51oRH2+oKnq51jG6S78zEEk1bEVb/ammw8uiUAA93nPF4BD12VZT+nfbhifi5mV2tcoqsILSF7OciAwMIo0zqcppdvN6k/xRyeE32Vv8CjpLXqk1k7mhmfeYQOdU7iaPSr7ZyybFmhKNJxBc9qSDTknf1nRaz6alxqUnBkNIOqTM5hly3HDf6wK3QYiwwjLZWJA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=moqfotm5duShMZ4N4znmFG9WmFdGzVoAkzbIKTRVweg=;
 b=F+wJdeBDSziZsX5m71+SDGagTGXaXG86iKE0DE3P1SY+c1++ddYmGUcsFF7d8XMMKkRmoYPWG1MO0dnGZ4u5ELha7fxKpPDfNh5to47tifo5eVhQ3r9/PEhiZBvj64Hn5efpChCzABOsfW67JA+47xlHmgC84/5Bfw03y3oyXghwwBubDmK1u8Zq6aThktyeLHas5MBUpl2c1bMUcDyfW09SU8X8BGvFOZdaEfAAdmgVng18NGR2A0sKAGiylmKucgmTyFVoR4wdhw0KgWSNH1nhQakMfpULJg+Pnrc/HY4vwv9O4DN6lJiyosOoUMCf2z+UvDvSEr9D6dEW6pktBA==
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=moqfotm5duShMZ4N4znmFG9WmFdGzVoAkzbIKTRVweg=;
 b=nu3pApNqn7LN9ER89aSVbkEezrIqkkdxaarMrqYo83fCBj7Awbcvg2F54Kvh9/lJVqYyfmsc1urjrSETA9VyOIHO2YT4EDQtLNZUaXAz5RbsG2AOcRgTqz6P0eYfRgzTH3hD5BYbS5xZz9hY+qHxgU0feiruD+11CFNcjYDHVQw=
To: Jan Beulich <jbeulich@suse.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: <46d83c92-0b06-fc09-4832-7a7d7935d5c2@suse.com>
 <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
 <eea7162f-bbf8-bce9-b989-2a44fe10fa99@citrix.com>
 <ba34f9cf-0815-9671-a59d-04f16397ad90@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 5/5] x86: don't build unused entry code when !PV32
Message-ID: <e34f599a-689c-6116-989f-407789e004f9@citrix.com>
Date: Tue, 6 Apr 2021 18:34:05 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <ba34f9cf-0815-9671-a59d-04f16397ad90@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0316.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:197::15) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f2659b61-195f-4d72-3c07-08d8f9222fbc
X-MS-TrafficTypeDiagnostic: BN6PR03MB2515:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN6PR03MB25159B5D94D8E48BB81A4CBFBA769@BN6PR03MB2515.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3513;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 421i9tbUYEhWFMC+I2o+jC6cWynp7U9ncnvIC/PsdLfMC9nBbQjLT0npq+DUJkzXy6FvuNt7bjfWxJWY19YdeiZDBa5unxHI3VjzOR7EJCYOmRskr+KUiQVuCkQ5pzWDl16BAC7bKM5Qkh6r9JzESxUpEZll8yWFQr0/Bz9JSz/qg4hfSXlPcdgsFvD92oGJQaAwjAUgIXMood/4KMG/0/1/o35hbT4ldvhLegKRueIssoQXZlhh2aCAnrt6xKd2ZRngfIx7cSC08iwUKVx4Owmeyl9PVHXbtrfzyX+lHPqA9Z8yYwecxyD1yl35KmuxbYxyNattKGejSucLC1JLzB1TkAWoNMh+advGxrY2VQKbOWikqeo+fksenGjwZ2rUvQPf9cpjyL9zWtxl2hnSmOXjpnj95OH6VsQYTTdv5I2MPs1XDCr+zUgnVo8ZQ12Wy2t3OAzGsXnz0D2s0mYiX9My+IVBfpAmLEI8g3zBlMzztEwhVjtEZRUiMTF6HlCp5KKVST7NTeaYTOIzY4abzBf9Rqke+ZP+Dq2XEW0994mQUMOoDn13PjevxeQs5PgUQu/6VCXXHgI7fQ8Rc1M3yY+lqF/jCM7/imjd8XUFR9Rx80pN7GqBasaO8GJLyH1ydv0EYlTPaZB77Sh9WbMy5NqyDt3kLARSp8DYP8LZ0DhxwdShnAVKGPQN/zVHZwPlujhjL22+N936kjPo+Ycxydx0xzF3ETVU3dW9Ar3GDp0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(376002)(366004)(136003)(346002)(396003)(38100700001)(16576012)(16526019)(2906002)(66476007)(5660300002)(8676002)(316002)(31686004)(6916009)(66556008)(8936002)(478600001)(31696002)(6486002)(53546011)(26005)(86362001)(6666004)(83380400001)(66946007)(54906003)(2616005)(956004)(4326008)(36756003)(186003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f2659b61-195f-4d72-3c07-08d8f9222fbc
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 17:34:10.0483
 (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: vaj3+mIEbYAJEyVnK/rvOgUY+4kYFIdS6y3iPkseYu48T/XK7z6Z4v6O92uro/5hSX+8CrfzXH5JEDHAApQmwd4RYz8+knJJ+Q2Jpeag79Q=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2515
X-OriginatorOrg: citrix.com

On 01/04/2021 15:37, Jan Beulich wrote:
> On 01.04.2021 16:31, Andrew Cooper wrote:
>> On 25/11/2020 08:51, Jan Beulich wrote:
>>> @@ -102,19 +102,21 @@ void __dummy__(void)
>>>      BLANK();
>>>  #endif
>>> =20
>>> -#ifdef CONFIG_PV
>>> +#ifdef CONFIG_PV32
>>>      OFFSET(DOMAIN_is_32bit_pv, struct domain, arch.pv.is_32bit);
>> Even if PV32 is compiled out, the is_32bit field still exists, and is
>> still necessary for crash analysis.=C2=A0 XCA parses this offset informa=
tion
>> as part of dissecting /proc/vmcore.
>>
>> It's one single bool in a fixed size allocation which we've got plenty
>> of room in.=C2=A0 It can and should stay to avoid impacting the existing
>> diagnostic tools.
> I'm afraid I don't understand at all: I'm not removing the field.

You talked about removing it in the commit message.

> All I'm removing is the entry for it in asm-offsets.h.

Yes, and that will break XCA, which is used by several downstreams, not
just XenServer.

For RPM package reasons, you can't use debuginfo packages, because
what's on disk doesn't match what's in memory until you've rebooted.=C2=A0
Livepatching adds an extra dimension of fun here.=C2=A0 There's not enough
space in the vmcoreinfo page to pass enough structure information, so
asm offsets is appended to the symbol table.=C2=A0 Yes its a gross hack, bu=
t
its how things currently work.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 17:37:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 17:37:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106163.203044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTpdv-0001TU-V2; Tue, 06 Apr 2021 17:37:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106163.203044; Tue, 06 Apr 2021 17: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 1lTpdv-0001TN-S0; Tue, 06 Apr 2021 17:37:35 +0000
Received: by outflank-mailman (input) for mailman id 106163;
 Tue, 06 Apr 2021 17:37:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=gMKf=JD=zededa.com=roman@srs-us1.protection.inumbo.net>)
 id 1lTpdu-0001TI-Ua
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 17:37:35 +0000
Received: from mail-qv1-xf33.google.com (unknown [2607:f8b0:4864:20::f33])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id aeb01a59-df44-4776-ab4d-cfd13e888f47;
 Tue, 06 Apr 2021 17:37:34 +0000 (UTC)
Received: by mail-qv1-xf33.google.com with SMTP id u3so5425329qvj.8
 for <xen-devel@lists.xenproject.org>; Tue, 06 Apr 2021 10: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: aeb01a59-df44-4776-ab4d-cfd13e888f47
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=zededa.com; s=google;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=bfQHUU/Sr/PnCTN0LARQB8ZFDFD0VEfnBYa9ZmZwT5s=;
        b=iPWJ6xoEaJuBtRua/7FTtMl2ybMudrkpxfilPFI159dU6BurVnVuLMAlYe0o7MXgoc
         AO7hTeFteKDeKeGnBmj9JZz7kHBFmR01xJZCFJKApoKsGbw+Y+6jaI4DcXeVUMzYN57g
         JCX0N/CZmdKSuDNtA6OoiucgNCVdu0X3fWnaXSMaBtxVFx5lc7UySOfcbeqkfuYMoI0I
         Tefwd7XbVnI5k6lKshBn43//uVRWD2Lg4PxQy1sdH6x6+GJE2h+U6kGCCh4q4vQhaSBD
         hnqECuagXX45zPUfKxPd8i8DEPsU47sX5m2AeGsQT6fwACk30KjT0FeicT6l5bD2tClb
         IbNQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=bfQHUU/Sr/PnCTN0LARQB8ZFDFD0VEfnBYa9ZmZwT5s=;
        b=Rqgu98Rul4UKbMG9G1wonw2X1FTzemIfYudAO6Jrpbu0M5HfpRphoT2hRGz23YN8BF
         sWhqxT/4cL+YYGgudaigx6WVqMFy6wzTIm9xt/yb7k7KGszuoK+BO/dD0eQnFHMO8ACM
         UOV0EFbkxsyXaUazxgXGKmFI4JdMAQoKTiPmOSy9Iee3EZnbWwUTTPwjZ93WhnLNY3pW
         xlLVqlVBnWPF5fIxc4dpnMajPYr2jDca4+Gsc3mUWKqhpWqLzTvl70AQXo6FQGrqnpOW
         iRvR1GBzYiANJL2DlyXg4HQZsYbT35s6OMVrdsc6RV9vR0gFJBpjsWclGdJYVxVDZw//
         I0fQ==
X-Gm-Message-State: AOAM533wENeNGa1lx9sc+XDjqjJpRz38S2/ICaEqw21Z09mPs+TxekGW
	Uqc2FwaWmeQeYsbkdpcMck+hMe+Zs1xORdfEXsK7kg==
X-Google-Smtp-Source: ABdhPJx6OWoaFmyWmzSaFypWS88s8ThVXrz5lUFVpGKyQ2uP81mRrIJ3PwHM2O2gvOFyJ6BTtKTy1ScoOxe76qlttd4=
X-Received: by 2002:a0c:f702:: with SMTP id w2mr29977785qvn.0.1617730653937;
 Tue, 06 Apr 2021 10:37:33 -0700 (PDT)
MIME-Version: 1.0
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com> <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
 <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com> <YGWH89ubVe104Tnl@Air-de-Roger>
 <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com> <f800ac60-7d49-fa08-ca8d-1c75408dd2de@suse.com>
In-Reply-To: <f800ac60-7d49-fa08-ca8d-1c75408dd2de@suse.com>
From: Roman Shaposhnik <roman@zededa.com>
Date: Tue, 6 Apr 2021 10:37:25 -0700
Message-ID: <CAMmSBy910nvfYPn-V_MdtP_S8=LQbmcgb_gx1Gyz2qwEx3gufQ@mail.gmail.com>
Subject: Re: multiboot2 and module2 boot issues via GRUB2
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Xen-devel <xen-devel@lists.xenproject.org>, 
	grub-devel@gnu.org, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Content-Type: multipart/alternative; boundary="000000000000f8733905bf51441c"

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

On Tue, Apr 6, 2021 at 1:19 AM Jan Beulich <jbeulich@suse.com> wrote:

> On 01.04.2021 21:43, Andrew Cooper wrote:
> > On 01/04/2021 09:44, Roger Pau Monn=C3=A9 wrote:
> >> On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
> >>> On 01.04.2021 03:06, Roman Shaposhnik wrote:
> >>>> And the obvious next question: is my EVE usecase esoteric enough tha=
t
> >>>> I should just go ahead and do a custom GRUB patch or is there a more
> >>>> general interest in this?
> >>> Not sure if it ought to be a grub patch - the issue could as well
> >>> be dealt with in Xen, by concatenating modules to form a monolithic
> >>> initrd.
> >> I would rather have it done in the loader than Xen, mostly because
> >> it's a Linux boot specific format, and hence I don't think Xen should
> >> have any knowledge about it.
> >>
> >> If it turns out to be impossible to implement on the loader side we
> >> should consider doing it in Xen, but that's not my first option.
> >
> > Concatenating random things which may or may not be initrds is
> > absolutely not something Xen should do.  We don't have enough context t=
o
> > do it safely/sensibly.
>
> Well, I wasn't suggesting anywhere to concatenate random things.
> Instead I was envisioning a command line option giving us the
> context we need (e.g. "initrd=3D3+5").
>

That's actually not a bad idea at all -- I may look into how feasible it
would
be to add on Xen side. GRUB side is trivial (but I'm not sure upstream folk=
s
would take it).

Thanks,
Roman.

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

<div dir=3D"ltr"><div dir=3D"ltr">On Tue, Apr 6, 2021 at 1:19 AM Jan Beulic=
h &lt;<a href=3D"mailto:jbeulich@suse.com">jbeulich@suse.com</a>&gt; wrote:=
<br></div><div class=3D"gmail_quote"><blockquote class=3D"gmail_quote" styl=
e=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddin=
g-left:1ex">On 01.04.2021 21:43, Andrew Cooper wrote:<br>
&gt; On 01/04/2021 09:44, Roger Pau Monn=C3=A9 wrote:<br>
&gt;&gt; On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:<br>
&gt;&gt;&gt; On 01.04.2021 03:06, Roman Shaposhnik wrote:<br>
&gt;&gt;&gt;&gt; And the obvious next question: is my EVE usecase esoteric =
enough that<br>
&gt;&gt;&gt;&gt; I should just go ahead and do a custom GRUB patch or is th=
ere a more<br>
&gt;&gt;&gt;&gt; general interest in this?<br>
&gt;&gt;&gt; Not sure if it ought to be a grub patch - the issue could as w=
ell<br>
&gt;&gt;&gt; be dealt with in Xen, by concatenating modules to form a monol=
ithic<br>
&gt;&gt;&gt; initrd.<br>
&gt;&gt; I would rather have it done in the loader than Xen, mostly because=
<br>
&gt;&gt; it&#39;s a Linux boot specific format, and hence I don&#39;t think=
 Xen should<br>
&gt;&gt; have any knowledge about it.<br>
&gt;&gt;<br>
&gt;&gt; If it turns out to be impossible to implement on the loader side w=
e<br>
&gt;&gt; should consider doing it in Xen, but that&#39;s not my first optio=
n.<br>
&gt; <br>
&gt; Concatenating random things which may or may not be initrds is<br>
&gt; absolutely not something Xen should do.=C2=A0 We don&#39;t have enough=
 context to<br>
&gt; do it safely/sensibly.<br>
<br>
Well, I wasn&#39;t suggesting anywhere to concatenate random things.<br>
Instead I was envisioning a command line option giving us the<br>
context we need (e.g. &quot;initrd=3D3+5&quot;).<br></blockquote><div><br><=
/div><div>That&#39;s actually not a bad idea at all -- I may look into how =
feasible it would</div><div>be to add on Xen side. GRUB side is trivial (bu=
t I&#39;m not sure upstream folks</div><div>would take it).</div><div><br><=
/div><div>Thanks,<br>Roman.=C2=A0</div></div></div>

--000000000000f8733905bf51441c--


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 17:51:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 17:51:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106175.203055 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTprP-0003Ci-9a; Tue, 06 Apr 2021 17:51:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106175.203055; Tue, 06 Apr 2021 17:51: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 1lTprP-0003Cb-6g; Tue, 06 Apr 2021 17:51:31 +0000
Received: by outflank-mailman (input) for mailman id 106175;
 Tue, 06 Apr 2021 17:51:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hTMm=JD=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lTprN-0003CQ-TV
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 17:51:29 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0a795b72-c700-43a5-aa97-7a595868144d;
 Tue, 06 Apr 2021 17:51: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: 0a795b72-c700-43a5-aa97-7a595868144d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617731488;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Gp2PlTHCZ9yAIsl7sHQCptBU5La8g8zCht8zzfL4ZP0=;
  b=SM+KshgmzM8R4jmqrGglmhUoVwLEe2axfoomoBLjWN88ATUKuWU294d8
   GEvhtB4tquVZyUjJiFQFBMTSPrzo2RtRYzbQPu+Rp5QbhLRk2OZ70P9CM
   kWWYvYuCwCr7tll5tBIhUw5jzP3L+q39PfPZeMaqvt4bbRtBySx2fxF2P
   M=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ehOD1yQPPPsPmrUHV0mQqx8flCtW8EkSeSOfOXl+eIJ4la3MSGoDA09JAS0N52SBP1XRIe2Fy4
 u6v8Sh2zOKHkKFMl6C7qYnEPI4AQOlRL03vZzHD1l0/Mwt3WlvPiwsx4F/wGpQ4VRapZWxg1yR
 ELV3BYm/EnWdBbBO7HhO0BQK3EnItegd9riInHZQ2niJXzElrimH4hE9v+PZUbOiVspZlM3/60
 ZAUoYfxwdbC7sXeH8P9gOrLI/Zt5iz9DcF7XvhhDj/VZy47HnRRt0H3k4iqKEOL7XqEV2ZNeo7
 gvU=
X-SBRS: 5.2
X-MesageID: 40989244
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:jKB8a69NorlnWQpgzvFuk+F3cL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmzybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIULD38Zn/+
 Nbf6B6YeedMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsLV4hLxW5Ce2GmO2dxQxRLAod8MZ
 Ka6NZOqTbIQwVoUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbCSw9BEYTj9J3PMe4X
 HI+jaJmpmLntOa7lvn12HV54lLg9eJ8Lp+LeGFl8R9EESWti+Gf4JkMofyxQwdgObq01oylc
 mJnhFIBbUP11r0XkWY5STgwBPh1jFG0Q6R9Xa9jWH4qcL0ABIWYvAx/b5xSRfS50o+sNwU6s
 sitAj1xvknb2K1oA3H69fFTB1snEavyEBS99I7tHBDTZAYLIZYsI13xjInLL47ACn45Io7ed
 Meaf302fA+SyL/U1nkpGV1hPSjUnMvdy32OHQqi4i+1jhbm21B1E0IxMATtWdozuNMd7B0o8
 vDKahmj7dIU4s/ar98Hv4IRY+NBnXKWg+kChPdHX3XUIU8f17doZ/+57s4oMmsZZwz1ZM33L
 DMSklRu2Iec1/nYPf+naFjw1ToeiGQTD7twsZR69xSobvnXofmNiWFVRQHj9agi+93OLyYZ9
 +DfLZtR9PzJ2rnHohEmyfkXYNJFHUYWMoJ/v4mRlO1pN7RIIGCjJ2ZTN/jYJ7WVRo0UGL2BX
 UOGBLpIt9b00ytUnjkxDfLXXfAfVH+4IJQHKDW8/N78vlICqR89iwuzXip7MCCLjNP9oYsel
 FlHb/hmqSn4Um6lFy4qFlBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCR31HuDLRlvctPOHG
 dk1hJK0JPyC6bV6TEpCtqhPG7fpWAUvmi2Q5AVnbDGwsv5ZJUiDNIDVLZqHQvGUzx58Dwa6F
 trWUshfAvyBznugaKqgNg/H+fEbeRxhw+tPIpzsnLQtUKVoOk1XXsFVzuSUcqa6DxeAgZ8tx
 lUyesykbCAkTGgJS8Um+IjKmBBb2yRHfZ7FgifXZ5VnbrqYQl0am+PiVWh+kgOU1uv039Xqn
 3qLCWSd/2OJlZGoHhX3pzn905OenyHc1h9bW17toNBBX3L00wDpNOjV+6W6S+8e1ECyuYSPH
 X+bTweLhhH6vq32BSW8QzyWEkO99ELBKjwHb4je7bc1jeRM4WOj7gBBOIR1o1iLsrSvugCVv
 +/dweZICjjMf4g3xWYqx8eSXFJgUhhtcmt9Azu7WC+0nJ6POHbJ05+QaoHZ/6b9GrpSp+zod
 1EpONwmdH1FGr/atSLk/6KKxFCLw7eum6wQaUDr4tOsac7qbt0GN36XFLzpQd69SR7CP2xsk
 UUBJlfyvTmHKREesQJYSJX/lYzjr20XQEWmz2zJtV7RE0nin/QAsiA7LXJo4c+G0HpnnqGBX
 Cvtwlmu8rfVySN1bQmG7s9DGRfZk878mlj9oq5BsTtITTvU+FI51yhNHChNJdbVaieAL0Vxy
 wKr+2grquydyDi3hrXsiY+CqVS83y/Scf3JA6XA+ZH/5ibPluL65Har/KbvXPSSTGhbV4fip
 AAXUsMbt5bgj1ntbYJ6EGJO+fKi3NgtUBf7zFhnkPs3YbjwF6zJzA2DSTpxrNMXTdSNXCUi9
 /i6ubw7gWn3AR4
X-IronPort-AV: E=Sophos;i="5.82,201,1613451600"; 
   d="scan'208";a="40989244"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Vb4twpL8siboKtRnwsSlSUIJjQMQCV1XX4Wf6eM0k9BXh/ZcYB/5+PFF+6cgBZDZKxLq+ewrQzfHc7fP/RIfrMjcBYX+kutRvyb1DVsEVgBCq7tUS5uwT5mWiUMjmAXIesnqGNIiHpGPiA8klyNUsGG3ZdcP0gjKBqApJa4pTexOPIEJbUEfYS/LOO3kYwN2O0mf8Biol+n0mZD/m3fiErgIcUMZlVfI9pzhWzxrkbMimdhuYdHVrQDLhMY7qKXr3H90aRzgfH7gWIENrqS8KPcEcbtyOJHgJH27ZPpf049wHGMYe6UdR2XYsUwbVBWl+l4KBlsbHF6m/YiBZa1iBQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Gp2PlTHCZ9yAIsl7sHQCptBU5La8g8zCht8zzfL4ZP0=;
 b=MqsuDoAv+6tYDflSh36thAe15Mx7itz9DdHRYOnnXxI0q/nWwTEMgwxBwPaEb2zjd3hgXRfm2UTlk2Sn118+24skqnB/zTKXmJe1qLMRhxHQrXN/7o70g9skPa+/9j9gL2NfWAI/UyFS81yrzfXiiWZ81gJRg+72NYMpKVrUeKyhFG9vGmAp0wxmiPwNoITHQFfxjFi7g6BGW7x+z8XAGAsp/GHr+UJjPNweqibw/XpWYbFl+qOvTKtNYLk0eVsw2ZDDb1ikrE2jAijK04eP5qTIe2jVKdP/s1j9jdcaDnrRSWVa2HSeG0e2cTYnRUrG5P2KAnqhy2oOf4wfkSkPbg==
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=Gp2PlTHCZ9yAIsl7sHQCptBU5La8g8zCht8zzfL4ZP0=;
 b=JJsJLcOwdTCu4dkKmrPiZ5y2bg14XJR0RIphMrEYvrdRo4JAyUzE56av1Iwbwihr/qK8N34vPr/FImLeG9Ro8vN9OGdCGaEwHmoGW8VLjTXHtNaKq4JTGICwrjkyE13L3w7U6JkKj3lzgQzDZercBUyzr7Tv9aos2y5yH+gXYJY=
Subject: Re: multiboot2 and module2 boot issues via GRUB2
To: Jan Beulich <jbeulich@suse.com>
CC: Roman Shaposhnik <roman@zededa.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, <grub-devel@gnu.org>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
 <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
 <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
 <YGWH89ubVe104Tnl@Air-de-Roger>
 <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
 <f800ac60-7d49-fa08-ca8d-1c75408dd2de@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <f835e433-368c-b107-9963-9107d3432ce6@citrix.com>
Date: Tue, 6 Apr 2021 18:51:18 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <f800ac60-7d49-fa08-ca8d-1c75408dd2de@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LNXP265CA0057.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:5d::21) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7f1665f1-0621-44aa-1653-08d8f924982f
X-MS-TrafficTypeDiagnostic: BN6PR03MB3122:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN6PR03MB3122DC10E0687FF1D3C70675BA769@BN6PR03MB3122.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: SLJUldbT5+9o0Jzc0t6sjO+BPfAGr4qEexHiK9q0golflnZmVp2K/RjeSJZeVxcNtLV+L4i8P7aoyO2OLXRpMA34Wzqn24y63uc/WPA4U9KEumQjwR6aY1923l5h93+pwEuOxH47HFl5faY+9GPRHCUgc1Qm/rNcC21j1gpoL5aouoFY6olg/cgmTFfOgkQztqSwX7/da0bnJfLvh3UD3qOfXuHHLiNh1sRltZj/HPTNNin2WryAybd/k8YMztLknJHiRNL7R12KQ2/xnrc3npnPDVPpbUx/Nu6GkfnEv2vebAzjy2wxU16VDVo793Ox5tB0Clsso4BftKfz0go8anL2LHxxBYkQyBwnMd1Ea199kDM3uyWHaa5MHPU43iEAiqQH0JHuFNXCgoAOEJWAGo+50LC41klLlJ+zDg9bZGGQb7hg54710iLpL3WQAqYTeIc9hXjzKhX8mGnHxNqGRn+t1AQd4YP+7zSSMjSbBY7We4gcy5PxlvmDLcX+nraZScGhTvu9qcD4U2Suu8N3kh/66WY7Lxf2UuA2B+k8DEyN9o/2660yNEea48IS/pKnppyE//vT7DZqLXFi7deHv7/k4PNl8p1F4GLelGKDEmPbHcbiV8jG7d30NQtd7FUIYlVGS8fXs1Je4ycJdukRGbLFgTFlsyY9BCVDd3jcjqmiYQZMSbg9LyNEjPDDpyL8ZMD9vESzC5ng3s5USUnh6yoWovFFX+vfx+4V8zzRs8c=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(376002)(396003)(136003)(366004)(54906003)(6916009)(478600001)(16576012)(31696002)(66476007)(53546011)(8936002)(316002)(31686004)(83380400001)(107886003)(956004)(4326008)(16526019)(6486002)(26005)(2906002)(8676002)(66946007)(5660300002)(36756003)(66556008)(86362001)(186003)(38100700001)(2616005)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 7f1665f1-0621-44aa-1653-08d8f924982f
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 17:51:24.1785
 (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: 6E2mIG4urHlekoctYsbiNcj5uuHOZP1drlZLfuWldjNtmGFuAH0KZ4Sw44uykL5q8QNC9VedjkA5VyNeuL1YlRUZD6vZIDg5GUt3osRapU0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB3122
X-OriginatorOrg: citrix.com

On 06/04/2021 09:19, Jan Beulich wrote:
> On 01.04.2021 21:43, Andrew Cooper wrote:
>> On 01/04/2021 09:44, Roger Pau Monné wrote:
>>> On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
>>>> On 01.04.2021 03:06, Roman Shaposhnik wrote:
>>>>> And the obvious next question: is my EVE usecase esoteric enough that
>>>>> I should just go ahead and do a custom GRUB patch or is there a more
>>>>> general interest in this?
>>>> Not sure if it ought to be a grub patch - the issue could as well
>>>> be dealt with in Xen, by concatenating modules to form a monolithic
>>>> initrd.
>>> I would rather have it done in the loader than Xen, mostly because
>>> it's a Linux boot specific format, and hence I don't think Xen should
>>> have any knowledge about it.
>>>
>>> If it turns out to be impossible to implement on the loader side we
>>> should consider doing it in Xen, but that's not my first option.
>> Concatenating random things which may or may not be initrds is
>> absolutely not something Xen should do.  We don't have enough context to
>> do it safely/sensibly.
> Well, I wasn't suggesting anywhere to concatenate random things.
> Instead I was envisioning a command line option giving us the
> context we need (e.g. "initrd=3+5").

That's a massive layering violation, and incredibly fragile to the order
of lines in the boot stanza.

Either fix it by using a single monolithic initrd, which has worked
perfectly well for the past 2 decades, or add a feature to grub to get
initrd-like behaviour for MB2 too.  I will object very strongly to any
Xen patches trying to do this.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 17:55:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 17:55:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106180.203068 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTpv9-0003Mf-RQ; Tue, 06 Apr 2021 17:55:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106180.203068; Tue, 06 Apr 2021 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 1lTpv9-0003MY-Nc; Tue, 06 Apr 2021 17:55:23 +0000
Received: by outflank-mailman (input) for mailman id 106180;
 Tue, 06 Apr 2021 17:55: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 1lTpv8-0003MT-Gs
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 17:55: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 1lTpv1-00044z-TG; Tue, 06 Apr 2021 17:55:15 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTpv1-0001bz-JK; Tue, 06 Apr 2021 17:55: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=xaC+xy9yh3LS4OxykfvNmLZtQc53CzZmLbDal2CL+qo=; b=AsI8fkv3YOKU31hqf/APGHXN5K
	d9nl3WPN9NRiJGXMRvr1BHR1XV3DbwRYT2dz5MVUyc3DPAFpjFz+2VGZS6V6oyBjKIaz3f/IYjhSk
	AcwLn1fP88WSDCWX/yKSZ079k14nT0c3m6lWXqiSFY+gg2//Mt51YDIO0m7lLw2UFgQY=;
Subject: Re: [PATCH 00/14] Use const whether we point to literal strings (take
 1)
To: Elliott Mitchell <ehem+xen@m5p.com>, Ian Jackson <iwj@xenproject.org>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Dario Faggioli <dfaggioli@suse.com>, Tim Deegan <tim@xen.org>,
 Roger Pau Monn?? <roger.pau@citrix.com>,
 Anthony PERARD <anthony.perard@citrix.com>
References: <20210405155713.29754-1-julien@xen.org>
 <YGtCTfw7WmOJPaa/@mattapan.m5p.com>
From: Julien Grall <julien@xen.org>
Message-ID: <2e51a7e5-404f-fd2e-90cb-c4d94c4d807b@xen.org>
Date: Tue, 6 Apr 2021 18:55:12 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGtCTfw7WmOJPaa/@mattapan.m5p.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Elliott,

Thanks for the input!

On 05/04/2021 18:01, Elliott Mitchell wrote:
> On Mon, Apr 05, 2021 at 04:56:59PM +0100, Julien Grall wrote:
>> I am not aware of code trying to modify literal strings in Xen.
>> However, there is a frequent use of non-const char * to point to
>> literal strings. Given the size of the codebase, there is a risk
>> to involuntarily introduce code that will modify literal strings.
>>
>> Therefore it would be better to enforce using const when pointing
>> to such strings. Both GCC and Clang provide an option to warn
>> for such case (see -Wwrite-strings) and therefore could be used
>> by Xen.
>>
>> This series doesn't yet make use of -Wwrite-strings because
>> the tree is not fully converted. Instead, it contains some easy
>> and likely non-controversial use const in the code.
>>
>> The major blockers to enable -Wwrite-strings are the following:
>>      - xen/common/efi: union string is used in both const and
>>      non-const situation. It doesn't feel right to specific one member
>>      const and the other non-const.
>>      - libxl: the major block is the flexarray framework as we would use
>>      it with string (now const char*). I thought it would be possible to
>>      make the interface const, but it looks like there are a couple of
>>      places where we need to modify the content (such as in
>>      libxl_json.c).
>>
>> Ideally, I would like to have -Wwrite-strings unconditionally used
>> tree-wide. But, some of the area may required some heavy refactoring.
>>
>> One solution would be to enable it tree-wide but turned it off at a
>> directroy/file level.
>>
>> Any opinions?
> 
> I think doing such is a Good Idea(tm).  Adding consts adds opportunities
> for greater optimization.  Both by compilers which can avoid extra
> copies, and developers who then know they don't need to generate extra
> copies to sacrific them to an API.  In particular the consts also
> function as documentation.
> 
> So you're certainly not the only person who thinks additional consts
> would be a good thing:
> 
> https://lists.xenproject.org/archives/html/xen-devel/2021-01/msg00132.html
> 
> 
> Alas merely getting the two const patches into the latest release
> apparently wasn't even worthy of response:
> 
> https://lists.xenproject.org/archives/html/xen-devel/2021-02/msg01040.html

Sory to hear you had no response. Would you be able to give a nudge to 
the maintainers?

> 
> 
> I agree this should be done, though I'm aware many developers hate
> bothering with constants.
> 
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 18:03:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 18:03:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106186.203082 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTq2t-0004N1-MJ; Tue, 06 Apr 2021 18:03:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106186.203082; Tue, 06 Apr 2021 18:03: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 1lTq2t-0004Mu-JC; Tue, 06 Apr 2021 18:03:23 +0000
Received: by outflank-mailman (input) for mailman id 106186;
 Tue, 06 Apr 2021 18:03:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=gMKf=JD=zededa.com=roman@srs-us1.protection.inumbo.net>)
 id 1lTq2r-0004Mp-NU
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 18:03:21 +0000
Received: from mail-qt1-x836.google.com (unknown [2607:f8b0:4864:20::836])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b21b281b-f7f0-4bd2-80dd-2098291879e1;
 Tue, 06 Apr 2021 18:03:20 +0000 (UTC)
Received: by mail-qt1-x836.google.com with SMTP id i19so11834729qtv.7
 for <xen-devel@lists.xenproject.org>; Tue, 06 Apr 2021 11:03: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: b21b281b-f7f0-4bd2-80dd-2098291879e1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=zededa.com; s=google;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=uXOQHdoNbkPYHgW/BhybWZufm6QjZjyBs0RSbcQ92+c=;
        b=cah/k8LvmVI6szqS5zoIM7qXkf37FiujQrMKhKE0fDQYfd5KBF4+4t7tZkSwj6goi1
         TqpGxu01L276V1FkYtbfKmx6XW8ZNHRuo+IQ4o5kFqxtWn0BdzQTh2Mt41+xlKfPPqIe
         1BS+2+SNIIFYp968t+D3pWXUrazZMt2Wg50c1+pRpeq1VYBTeMXw8ElND4ijjbbRYS9s
         4gh20M50/faC2ISS57FOS/hNDAhUXME+jkzHtpQVsXrdMzxHxsOtlMLGPWj+ipVV4tkf
         SPfKhOWY2h3iU58fmVpf4P1QK65Z15arsNsmKBCT8V8LU4y/idMiSe2fGz9jYTCWZdY3
         bEQw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=uXOQHdoNbkPYHgW/BhybWZufm6QjZjyBs0RSbcQ92+c=;
        b=lBVduQrGN7GTtKfsIZrZWmrAbXn4lrT9O4F42esUAo9mgXJPK+TpOrq7AHq9MpsXNO
         G2YY/fGaRX38M4OHhiyFWWfXk6OUa2ZUFPOhrQFVd9FfRV0eCnXZ1GOaFL1kHL2tNarK
         NZHdYDsp99sBVPXj3i2POCKdWVBocoJItAtxylvnL5z2e25psUx8M+Xe3s12YYxL87Kp
         M41SDWc+fVJBny3cNaRNa8mHfVRMZFNHW/6ekYk1o20TDTHDMRf8cl3WqNhQGvoXH4GJ
         VoPhO3S180C269kUsdqAWXaRWSRHAmbWqnQaE+3R6p5eK6P52bL3iEVPI+C+MkDj1Dut
         55uw==
X-Gm-Message-State: AOAM533mImIbpr7CJEpkYPxenPGdRlZdJSpoJfalLZtGm+JXXc4rZjyz
	zRXcvnse+HQ6fDQn/n8rVepLLVeK8GrV/VId6KwnrQ==
X-Google-Smtp-Source: ABdhPJw1Ufm+2D7a320Wce9LADVSJtq0nqaLEh7x797LBFnO5XL3PX4W20TQM3ODPXZZwmy1isjomQvgwUzTRMyYGO8=
X-Received: by 2002:aed:32c6:: with SMTP id z64mr28709656qtd.77.1617732200309;
 Tue, 06 Apr 2021 11:03:20 -0700 (PDT)
MIME-Version: 1.0
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com> <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
 <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com> <YGWH89ubVe104Tnl@Air-de-Roger>
 <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com> <f800ac60-7d49-fa08-ca8d-1c75408dd2de@suse.com>
 <f835e433-368c-b107-9963-9107d3432ce6@citrix.com>
In-Reply-To: <f835e433-368c-b107-9963-9107d3432ce6@citrix.com>
From: Roman Shaposhnik <roman@zededa.com>
Date: Tue, 6 Apr 2021 11:03:12 -0700
Message-ID: <CAMmSBy9w3VZpKdkSkpCAgDsRk0K24_Ssx-YvF9d_mpA8WetUkg@mail.gmail.com>
Subject: Re: multiboot2 and module2 boot issues via GRUB2
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>, Xen-devel <xen-devel@lists.xenproject.org>, 
	grub-devel@gnu.org, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Content-Type: multipart/alternative; boundary="0000000000002435f505bf51a182"

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

On Tue, Apr 6, 2021 at 10:51 AM Andrew Cooper <andrew.cooper3@citrix.com>
wrote:

> On 06/04/2021 09:19, Jan Beulich wrote:
> > On 01.04.2021 21:43, Andrew Cooper wrote:
> >> On 01/04/2021 09:44, Roger Pau Monn=C3=A9 wrote:
> >>> On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
> >>>> On 01.04.2021 03:06, Roman Shaposhnik wrote:
> >>>>> And the obvious next question: is my EVE usecase esoteric enough th=
at
> >>>>> I should just go ahead and do a custom GRUB patch or is there a mor=
e
> >>>>> general interest in this?
> >>>> Not sure if it ought to be a grub patch - the issue could as well
> >>>> be dealt with in Xen, by concatenating modules to form a monolithic
> >>>> initrd.
> >>> I would rather have it done in the loader than Xen, mostly because
> >>> it's a Linux boot specific format, and hence I don't think Xen should
> >>> have any knowledge about it.
> >>>
> >>> If it turns out to be impossible to implement on the loader side we
> >>> should consider doing it in Xen, but that's not my first option.
> >> Concatenating random things which may or may not be initrds is
> >> absolutely not something Xen should do.  We don't have enough context =
to
> >> do it safely/sensibly.
> > Well, I wasn't suggesting anywhere to concatenate random things.
> > Instead I was envisioning a command line option giving us the
> > context we need (e.g. "initrd=3D3+5").
>
> That's a massive layering violation, and incredibly fragile to the order
> of lines in the boot stanza.
>

Don't have enough karma to argue Xen architectural side of things, but...


> Either fix it by using a single monolithic initrd, which has worked
> perfectly well for the past 2 decades
>

...just to point out the obvious here:  even Debian who can HARDLY be
blamed for tracking the bleeding edge has been recommending this
for quite some time:

https://wiki.debian.org/DebianInstaller/NetbootFirmware#The_Solution:_Add_F=
irmware_to_Initramfs
Obviously there's no way to do that with Xen today out of the box.

Now, you can turn around and say "well, how hard could it be to
concatenate?". That's fair. But it is also fair to point out that everytime
we do that we portray Xen as "not quite as user friendly as X" (and
this is, of course, pure perception -- but if we want users to stick
perception matters a lot).

Thanks,
Roman.

P.S. Curiously enough, saying that -- I'm undermining my own case -- it is
actually
*easier* for me to hack GRUB in EVE. But I felt like stating the obvious
anyway.

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

<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr">On Tue, Apr 6, 2021 at 1=
0:51 AM Andrew Cooper &lt;<a href=3D"mailto:andrew.cooper3@citrix.com">andr=
ew.cooper3@citrix.com</a>&gt; wrote:<br></div><div class=3D"gmail_quote"><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">On 06/04/2021 09:19, Jan Be=
ulich wrote:<br>
&gt; On 01.04.2021 21:43, Andrew Cooper wrote:<br>
&gt;&gt; On 01/04/2021 09:44, Roger Pau Monn=C3=A9 wrote:<br>
&gt;&gt;&gt; On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:<b=
r>
&gt;&gt;&gt;&gt; On 01.04.2021 03:06, Roman Shaposhnik wrote:<br>
&gt;&gt;&gt;&gt;&gt; And the obvious next question: is my EVE usecase esote=
ric enough that<br>
&gt;&gt;&gt;&gt;&gt; I should just go ahead and do a custom GRUB patch or i=
s there a more<br>
&gt;&gt;&gt;&gt;&gt; general interest in this?<br>
&gt;&gt;&gt;&gt; Not sure if it ought to be a grub patch - the issue could =
as well<br>
&gt;&gt;&gt;&gt; be dealt with in Xen, by concatenating modules to form a m=
onolithic<br>
&gt;&gt;&gt;&gt; initrd.<br>
&gt;&gt;&gt; I would rather have it done in the loader than Xen, mostly bec=
ause<br>
&gt;&gt;&gt; it&#39;s a Linux boot specific format, and hence I don&#39;t t=
hink Xen should<br>
&gt;&gt;&gt; have any knowledge about it.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; If it turns out to be impossible to implement on the loader si=
de we<br>
&gt;&gt;&gt; should consider doing it in Xen, but that&#39;s not my first o=
ption.<br>
&gt;&gt; Concatenating random things which may or may not be initrds is<br>
&gt;&gt; absolutely not something Xen should do.=C2=A0 We don&#39;t have en=
ough context to<br>
&gt;&gt; do it safely/sensibly.<br>
&gt; Well, I wasn&#39;t suggesting anywhere to concatenate random things.<b=
r>
&gt; Instead I was envisioning a command line option giving us the<br>
&gt; context we need (e.g. &quot;initrd=3D3+5&quot;).<br>
<br>
That&#39;s a massive layering violation, and incredibly fragile to the orde=
r<br>
of lines in the boot stanza.<br></blockquote><div><br></div><div>Don&#39;t =
have enough karma to argue Xen architectural side of things, but...</div><d=
iv>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0p=
x 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Either fix it by using a single monolithic initrd, which has worked<br>
perfectly well for the past 2 decades<br></blockquote><div><br></div><div>.=
..just to point out the obvious here:=C2=A0 even Debian who can HARDLY be</=
div><div>blamed for tracking the bleeding edge has been recommending this</=
div><div>for quite some time:</div><div>=C2=A0 =C2=A0=C2=A0<a href=3D"https=
://wiki.debian.org/DebianInstaller/NetbootFirmware#The_Solution:_Add_Firmwa=
re_to_Initramfs">https://wiki.debian.org/DebianInstaller/NetbootFirmware#Th=
e_Solution:_Add_Firmware_to_Initramfs</a></div><div>Obviously there&#39;s n=
o way to do that with Xen today out of the box.</div><div><br></div><div>No=
w, you can turn around and say &quot;well, how hard could it be to</div><di=
v>concatenate?&quot;. That&#39;s fair. But it is also fair to point out tha=
t everytime</div><div>we do that we portray Xen as &quot;not quite as user =
friendly as X&quot; (and</div><div>this is, of course, pure perception -- b=
ut if we want users to stick</div><div>perception matters a lot).</div><div=
><br></div><div>Thanks,<br>Roman.</div><div><br></div><div>P.S. Curiously e=
nough, saying that -- I&#39;m undermining my own case -- it is actually</di=
v><div>*easier* for me to hack GRUB in EVE. But I felt like stating the obv=
ious anyway.</div></div></div></div>

--0000000000002435f505bf51a182--


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 18:03:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 18:03:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106188.203095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTq3E-0004Rp-Vq; Tue, 06 Apr 2021 18:03:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106188.203095; Tue, 06 Apr 2021 18:03:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTq3E-0004Ri-SD; Tue, 06 Apr 2021 18:03:44 +0000
Received: by outflank-mailman (input) for mailman id 106188;
 Tue, 06 Apr 2021 18:03: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 1lTq3E-0004RY-3y
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 18:03: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 1lTq3C-0004K8-UX; Tue, 06 Apr 2021 18:03:42 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTq3C-0002NC-K7; Tue, 06 Apr 2021 18:03: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=H1KREt+k46XAFO7M/nG21288UVAzga57uKnKtGMnA6w=; b=yh5e+tzL1nwgiVhbQ5f0nBTPdY
	RzYa6SPKpbMyEbIP3VAMEFaH9CVaGZ2bx27p3STD1GHalmzIY9IQNlluukdkJi53WqwcQh9NCnEA6
	pHW4225YeWp5SudTvUDTZda5QSn8rRJ75uA4n4PGy2sxSdKSQmfbfUnNWR7TomruBTjo=;
Subject: Re: [PATCH 01/14] xen: Constify the second parameter of
 rangeset_new()
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-2-julien@xen.org>
 <b318ba40-a38a-4120-496d-5adef66c827a@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <cd695b96-f51c-a7f3-fc60-19b8197b185f@xen.org>
Date: Tue, 6 Apr 2021 19:03:39 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b318ba40-a38a-4120-496d-5adef66c827a@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 06/04/2021 08:57, Jan Beulich wrote:
> On 05.04.2021 17:57, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> The string 'name' will never get modified by the function, so mark it
>> as const.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

Thanks!

> 
>> --- a/xen/common/rangeset.c
>> +++ b/xen/common/rangeset.c
>> @@ -421,7 +421,7 @@ bool_t rangeset_is_empty(
>>   }
>>   
>>   struct rangeset *rangeset_new(
>> -    struct domain *d, char *name, unsigned int flags)
>> +    struct domain *d, const char *name, unsigned int flags)
>>   {
>>       struct rangeset *r;
> 
> Remotely along these lines the function also has no need anymore to
> use snprintf() - safe_strcpy() very well fits both purposes. But
> quite likely for another patch.

I saw you already sent the patch for that. So I am assuming there is no 
action for me here.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 18:24:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 18:24:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106203.203110 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqMt-0006KF-QX; Tue, 06 Apr 2021 18:24:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106203.203110; Tue, 06 Apr 2021 18:24: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 1lTqMt-0006K8-NM; Tue, 06 Apr 2021 18:24:03 +0000
Received: by outflank-mailman (input) for mailman id 106203;
 Tue, 06 Apr 2021 18:24: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 1lTqMs-0006K3-Qy
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 18:24: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 1lTqMs-0004eY-I3; Tue, 06 Apr 2021 18:24:02 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTqMs-00044a-AW; Tue, 06 Apr 2021 18:24: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=BZP3iKi1XbN9l3U4s7ySlAJN4db+rboxQtklMGl8q6c=; b=kkanvdPJenS4f1G1UdMbwhlsdo
	b2KNgGBWOzpH3bz/zsQvgrvkvHQumMwoVx0/zqoBig14QgHMsVfWUdT2bsl/W6JSmtYP3gI4Nfz6f
	TYPnUH7Jyr21OxBwn6/HjvUKz3nzWA2jdoaIFI1TVdbcjYFjFYNLOWUsRij0Gn0V9qiM=;
Subject: Re: [PATCH 02/14] xen/sched: Constify name and opt_name in struct
 scheduler
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <jgrall@amazon.com>, George Dunlap
 <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>,
 xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-3-julien@xen.org>
 <5618bed6-a213-d2c9-4cbf-d95cb4dc02b4@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <00a75c04-fad1-7061-ac39-a811f442db05@xen.org>
Date: Tue, 6 Apr 2021 19:24:00 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <5618bed6-a213-d2c9-4cbf-d95cb4dc02b4@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Jan,

On 06/04/2021 09:07, Jan Beulich wrote:
> On 05.04.2021 17:57, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Both name and opt_name are pointing to literal string. So mark both of
>> the fields as const.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> albeit ...
> 
>> --- a/xen/common/sched/private.h
>> +++ b/xen/common/sched/private.h
>> @@ -272,8 +272,8 @@ static inline spinlock_t *pcpu_schedule_trylock(unsigned int cpu)
>>   }
>>   
>>   struct scheduler {
>> -    char *name;             /* full name for this scheduler      */
>> -    char *opt_name;         /* option name for this scheduler    */
>> +    const char *name;       /* full name for this scheduler      */
>> +    const char *opt_name;   /* option name for this scheduler    */
> 
> ... I'd like to suggest considering at least the latter to become
> an array instead of a pointer - there's little point wasting 8
> bytes of storage for the pointer when the strings pointed to are
> all at most 9 bytes long (right now; I don't expect much longer
> ones to appear).

I have tried this simple/dumb change on top of my patch:

diff --git a/xen/common/sched/private.h b/xen/common/sched/private.h
index a870320146ef..ab2236874217 100644
--- a/xen/common/sched/private.h
+++ b/xen/common/sched/private.h
@@ -273,7 +273,7 @@ static inline spinlock_t 
*pcpu_schedule_trylock(unsigned int cpu)

  struct scheduler {
      const char *name;       /* full name for this scheduler      */
-    const char *opt_name;   /* option name for this scheduler    */
+    const char opt_name[9]; /* option name for this scheduler    */
      unsigned int sched_id;  /* ID for this scheduler             */
      void *sched_data;       /* global data pointer               */
      struct cpupool *cpupool;/* points to this scheduler's pool   */

GCC will throw an error:

core.c: In function ‘scheduler_init’:
core.c:2987:17: error: assignment of read-only variable ‘ops’
              ops = *schedulers[i];
                  ^
core.c:2997:21: error: assignment of read-only variable ‘ops’
                  ops = *schedulers[i];
                      ^

I don't particularly want to drop the const. So the code would probably 
need some rework.

My patch doesn't change the size of the structure, so I would prefer to 
keep this patch as-is.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 18:26:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 18:26:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106207.203122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqP2-0006Sy-75; Tue, 06 Apr 2021 18:26:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106207.203122; Tue, 06 Apr 2021 18: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 1lTqP2-0006Sr-41; Tue, 06 Apr 2021 18:26:16 +0000
Received: by outflank-mailman (input) for mailman id 106207;
 Tue, 06 Apr 2021 18:26:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lTqP0-0006Sm-FZ
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 18:26:14 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTqOv-0004fw-BY; Tue, 06 Apr 2021 18:26:09 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTqOv-0004Cj-4M; Tue, 06 Apr 2021 18:26: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=0b5sLwNEeehztREUU62IQW7PgLfii4IsKMXwP9NoywY=; b=fs/go8C4j/gVZZOHllM4d02HLB
	RLrLFLvFTd/yNm0aU9jdCxaQGjwF75DvuzxvI4hKmwk0FVU/9CPhGKmLnqeSAfp6Yx7Lycja484V0
	gsZTzDcB1+ZdVVXtbStFTk3g/zUSNEbBt00jpFPw6H6pD7DZRwycrEDEJLTO0H5zSs3E=;
Subject: Re: [PATCH 03/14] xen/x86: shadow: The return type of
 sh_audit_flags() should be const
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
 Tim Deegan <tim@xen.org>, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-4-julien@xen.org> <YGwMojJV0gCFa4fd@Air-de-Roger>
From: Julien Grall <julien@xen.org>
Message-ID: <3108400e-8d3d-5878-b7ac-3dd9e5fe6ded@xen.org>
Date: Tue, 6 Apr 2021 19:26:06 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGwMojJV0gCFa4fd@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Roger,

On 06/04/2021 08:24, Roger Pau Monné wrote:
> On Mon, Apr 05, 2021 at 04:57:02PM +0100, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> The function sh_audit_flags() is returning pointer to literal strings.
>> They should not be modified, so the return is now const and this is
>> propagated to the callers.
>>
>> Take the opportunity to fix the coding style in the declaration of
>> sh_audit_flags.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> While doing the cleanup I think you could narrow the scope of the 's'
> variables also, but doesn't need to be part of this patch:

I think you are right. I will look at it as a follow-up.

> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks for the review!

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 18:27:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 18:27:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106211.203134 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqQ8-0006a1-H0; Tue, 06 Apr 2021 18:27:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106211.203134; Tue, 06 Apr 2021 18: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 1lTqQ8-0006Zu-Dw; Tue, 06 Apr 2021 18:27:24 +0000
Received: by outflank-mailman (input) for mailman id 106211;
 Tue, 06 Apr 2021 18:27: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 1lTqQ6-0006Zk-Se
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 18:27: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 1lTqQ5-0004gq-TG; Tue, 06 Apr 2021 18:27:21 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTqQ5-0004H5-Nl; Tue, 06 Apr 2021 18:27:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=b9sStZe9oaWvHMZkS1aownxhId3agh50xFGtjThqHD4=; b=D9YafEGzG/XqVjuxOh6ybBon5I
	jSnjSHud3ws31bY/9LCSQ3v+Kqi6pmZs9S3iQ0Jcca6uIM0fWKzscMxFcPE1V6qKWtvIOe+tR07T1
	jkh9c9A2f9xsijqpwPeGHk4QdurFv6YbgpG/eHeHmy7J1PcYlaCaiGe7jPiIc11o4VPo=;
Subject: Re: [PATCH 04/14] xen/char: console: Use const whenever we point to
 literal strings
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-5-julien@xen.org>
 <507452bf-9a9c-a48c-d8f5-cba99ac2e646@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <276b3557-c79e-60bc-ad5b-3cf8ebe58429@xen.org>
Date: Tue, 6 Apr 2021 19:27:19 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <507452bf-9a9c-a48c-d8f5-cba99ac2e646@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 06/04/2021 09:10, Jan Beulich wrote:
> On 05.04.2021 17:57, Julien Grall wrote:
>> --- a/xen/drivers/char/console.c
>> +++ b/xen/drivers/char/console.c
>> @@ -168,7 +168,7 @@ static int parse_guest_loglvl(const char *s);
>>   static char xenlog_val[LOGLVL_VAL_SZ];
>>   static char xenlog_guest_val[LOGLVL_VAL_SZ];
>>   
>> -static char *lvl2opt[] = { "none", "error", "warning", "info", "all" };
>> +static const char *lvl2opt[] = { "none", "error", "warning", "info", "all" };
> 
> If you add any const here, then I think you should go to full way
> and also add the second missing one. Then
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> 
> Arguably the array should also be local to xenlog_update_val().

I will look at it and send a new version.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 18:31:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 18:31:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106217.203146 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqU3-0007TQ-12; Tue, 06 Apr 2021 18:31:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106217.203146; Tue, 06 Apr 2021 18:31:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqU2-0007TJ-U6; Tue, 06 Apr 2021 18:31:26 +0000
Received: by outflank-mailman (input) for mailman id 106217;
 Tue, 06 Apr 2021 18:31:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTqU1-0007T9-4e; Tue, 06 Apr 2021 18:31:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTqU0-0004lY-Vu; Tue, 06 Apr 2021 18:31:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTqU0-0000Ur-M9; Tue, 06 Apr 2021 18:31:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTqU0-0001n7-Le; Tue, 06 Apr 2021 18: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=jD7w38ma1UhHTfuFPEkkUinaaiXE+MlqnG2AZwha5u8=; b=F3PTudc9sjXy3RBSP8Z6uiSyRQ
	VgfeAJSrlBqa8IMxdl739/hNW05xy+66B43BJVyBIo5OJVMIZZgPXhqdiRzI9/WJ5ZVZZLXyISY89
	bO2n4HK6Rj6vxsnEBE7+pbSb8XSe+mmHxbPqvmO8fUjrxWdWBWw5m3w6y5fONtnYUoYk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160758-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160758: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start.2:fail:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-cubietruck:host-install(5):broken:heisenbug
    xen-unstable:test-arm64-arm64-xl-seattle:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:guest-start/debianhvm.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-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-xl-credit1:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start:fail:heisenbug
    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-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-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-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-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 06 Apr 2021 18:31:24 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken  in 160665
 test-armhf-armhf-xl-cubietruck    <job status>                broken in 160715
 test-armhf-armhf-xl-arndale     <job status>                 broken  in 160715
 test-armhf-armhf-xl-arndale  19 guest-start.2  fail in 160733 REGR. vs. 160646
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 160733 REGR. vs. 160646
 test-armhf-armhf-xl-vhd 17 guest-start/debian.repeat fail in 160733 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     5 host-install(5) broken in 160665 pass in 160758
 test-armhf-armhf-xl-arndale  5 host-install(5) broken in 160715 pass in 160758
 test-armhf-armhf-xl-cubietruck 5 host-install(5) broken in 160715 pass in 160758
 test-arm64-arm64-xl-seattle   8 xen-boot         fail in 160665 pass in 160758
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160665 pass in 160758
 test-armhf-armhf-examine      8 reboot           fail in 160665 pass in 160758
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 160665 pass in 160758
 test-armhf-armhf-xl-vhd     12 debian-di-install fail in 160715 pass in 160745
 test-armhf-armhf-xl           8 xen-boot         fail in 160715 pass in 160758
 test-armhf-armhf-libvirt     14 guest-start      fail in 160715 pass in 160758
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 160733 pass in 160715
 test-armhf-armhf-libvirt 18 guest-start/debian.repeat fail in 160733 pass in 160758
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160733 pass in 160758
 test-armhf-armhf-libvirt-raw 12 debian-di-install fail in 160733 pass in 160758
 test-armhf-armhf-xl-vhd      13 guest-start      fail in 160745 pass in 160733
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 160745 pass in 160733
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail in 160745 pass in 160733
 test-armhf-armhf-xl-credit2  14 guest-start      fail in 160745 pass in 160758
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 14 guest-start/debianhvm.repeat fail in 160745 pass in 160758
 test-armhf-armhf-libvirt      8 xen-boot         fail in 160745 pass in 160758
 test-armhf-armhf-xl-rtds      8 xen-boot         fail in 160745 pass in 160758
 test-armhf-armhf-libvirt-raw 13 guest-start      fail in 160745 pass in 160758
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat  fail pass in 160665
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat  fail pass in 160715
 test-armhf-armhf-xl-multivcpu 14 guest-start               fail pass in 160733
 test-armhf-armhf-xl-vhd       8 xen-boot                   fail pass in 160745
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 160745
 test-armhf-armhf-xl-credit1   8 xen-boot                   fail pass in 160745
 test-armhf-armhf-xl-arndale  14 guest-start                fail pass in 160745

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 160733 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 160733 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 160733 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 160733 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 160733 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 160733 never pass
 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 160745 never pass
 test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 160745 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-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-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-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    5 days
Testing same since   160665  2021-04-02 07:40:09 Z    4 days    7 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-armhf-armhf-xl-cubietruck                               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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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

broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-libvirt broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 18:31:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 18:31:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106221.203161 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqUQ-0007a0-HB; Tue, 06 Apr 2021 18:31:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106221.203161; Tue, 06 Apr 2021 18: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 1lTqUQ-0007Zt-DT; Tue, 06 Apr 2021 18:31:50 +0000
Received: by outflank-mailman (input) for mailman id 106221;
 Tue, 06 Apr 2021 18:31: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 1lTqUP-0007Ze-1N
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 18:31: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 1lTqUH-0004ly-RI; Tue, 06 Apr 2021 18:31:41 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTqUH-0004UM-GK; Tue, 06 Apr 2021 18:31: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=tWsW5Yoj4ql+j1gAVglHFf6MMTnUyNPXS0mFzyE1Gv0=; b=ZgAa1fbMHt7iXBcwBp9I6VE+3l
	3BrnVHFa8AK80SBzFdT+gpk3ZPU4Y+i15uczb+JYEbq0CC+5vPXWhbElYIWAxXlGLxGJfAf+VmvA4
	VsjCF6Bsj4oJZ8VdChKVpVE4v4UoIboaGp0B8SZ+3AxEJbsAzalnBhJCMzc/DJtncv9s=;
Subject: Re: [PATCH 0/2] xen/arm: Couple of bug fixes when decompressing
 kernels
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>
References: <20210402152105.29387-1-julien@xen.org>
From: Julien Grall <julien@xen.org>
Message-ID: <7d105207-7bd4-66b2-0ff3-d1e684da123f@xen.org>
Date: Tue, 6 Apr 2021 19:31:39 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210402152105.29387-1-julien@xen.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

On 02/04/2021 16:21, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Hi all,
> 
> The main goal of this series is to address the bug report [1]. It is not
> possible
> 
> While testing the series, I also noticed that it is not possible to
> re-use the same compressed kernel for multiple domains as the module
> will be overwritten during the first decompression.
> 
> I am still a bit undecided how to fix it. We can either create a new
> module for the uncompressed kernel and link with the compressed kernel.
> Or we could decompress everytime.
> 
> One inconvenience to kernel to only decompress once is we have to keep
> it until all the domains have booted. This may means a lot of memory to be
> wasted just for keeping the uncompressed kernel (one my setup, it takes
> ~3 times more space).
> 
> Any opinions on how to approach it?
> 
> Cheers,
> 
> [1] https://lists.xenproject.org/archives/html/xen-users/2021-02/msg00027.html
> 
> Julien Grall (2):
>    xen/arm: kernel: Propagate the error if we fail to decompress the
>      kernel
>    xen/gunzip: Allow perform_gunzip() to be called multiple times

I have committed the second patch as it is independent. The first patch 
still need some reviews.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 18:42:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 18:42:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106231.203177 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqeg-00009M-Hi; Tue, 06 Apr 2021 18:42:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106231.203177; Tue, 06 Apr 2021 18:42:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqeg-00009F-Ee; Tue, 06 Apr 2021 18:42:26 +0000
Received: by outflank-mailman (input) for mailman id 106231;
 Tue, 06 Apr 2021 18:42:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hTMm=JD=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lTqee-000099-ES
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 18:42:24 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e5336b9f-1d35-4a1e-a84d-2f96a031b575;
 Tue, 06 Apr 2021 18:42: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: e5336b9f-1d35-4a1e-a84d-2f96a031b575
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617734542;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:mime-version;
  bh=wQNEx/trhKHBKa6PyQbEshezd5H0koUD+pNEZ72g8nQ=;
  b=MwPGrPt6xOvjMCuDpXzLztBeR+vQGQn9ttQGdDtk1gcJQ7/YRl9hpExq
   E/JZpl1b0jk/jpDAtAq1m3pwGe83TXy7itA+TCDqG3ehw36O2fF/ilmPQ
   q/pzTjGEKXjATZiKP5sa4Ns3Wx28Yf52EImz0JVdnNgZh2LLv9jRtf5H5
   s=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: zMP7Xlwf7jpj+UWimiioXFE7XPAmvFSwLjH4xZuOD8Z1hL8WUboeDE/CK8Ltkj4sPdzvIJjyJu
 BebnfUCA0EKv5FvdFFEW9F+SNPFic0TGb6ImTmVFeoD0P2oRrH0OeDloDsp3yqw7/4s8mLrnxE
 T3DmIZM3Upq25o6siladPi5/bFr1aoQfapBNPkd8oZZAXTVsfMdcgQQuy7IPN/amgmWlTw977V
 aej0Iv05tFx2iEQnzybFbNq/4CfMV3QCNLFiapEGs3sVUxiHzVwd10V3EB+1BXK/R6NE5ST+yk
 zBs=
X-SBRS: 5.2
X-MesageID: 40858616
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:wcILZ6DRkaq8J/blHegitMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmJEIyycFVB7QxQDIJI/Go
 aV6MYvnUvdRV08aMOnCn4ZG9XSvtGjruOaXTcqJT4CrDOPgzSh9aLgH3GjsCs2fjtTzd4ZgB
 D4uiPj4KHLiYDd9jb90Cvp441SiJ/dzLJ4dbaxo+w0DhmptQqyfoRmXNS5zUAIicWi8kwjnt
 WJgzpIBbUL11rrcmu4oQTg1mDbuV5EgR+Sqi7rvVLZrcP0Xz48AcZa7LgpFifx0EY8oMp6lJ
 tCwmPxjesnMTr7gC//69LUPisa8HacnHxKq59ws1ViS4cELJdeoYsDlXkla6soLWbR7YAqF/
 RWF8fM5PpaWkPyVQGmgkBfhPOrRXg9BRGAXwwrvdGUySFfmDRDw1If39F3pAZNyLsND71/o8
 jUOKVhk79DCucQcKJGHe8EBe+6EHbETx7gOH+bSG6XW50vCjbokdra8b817OaldNgj150pgq
 nMV1teqCobZ1/uIdfm5uwKzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQkBNHBUf
 rbAuMWP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5u3RLInHsfHabebzKLLhHS1MYBK8Pl
 IzGBzIYOlQ5EGiXXH1xDLLXWn2R0D59ZVsVIjWltJjjbQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eerWmy9mDY0nVxNnNmfwJoyYSld0kPiR4BMkvyf7pGkc6YY3pu0HyOIQI6aM/KDg
 hFpRBS9bisJ5KdgQAuYujXfF6yvj82njanXp0ckqqM6YPOYZUjFKsrX6R3CEHsDBx6mQFjrU
 9Zcw8aTkrjFjfj4J/Vz6A8NaX6TZ1RkQ2rKclbpTb0rkOHv/wiQXMdQnqTS8KNuB0vQDBVn1
 V11KcajNO76HGSAFp6pN59HExHaWyRDr4DKAiefo1blormfxxKQX6QiSaXjAwyfWTW51wf71
 aRXhG8SLXuOB5wq3pY2qHl/BdPemKRc1lZR1p6vYd+fF628Upb4KuuXO6ewmGRYlwNzqUhKz
 nDeyIVOR4r7cuwzgSplDGLEmgGyp0iMvfGNqkqd6je1xqWWcu1vJBDO8UR0IduNdjovONObP
 mWfBWNKijkT8wuwA6Yqx8eSV9JgUhhtcmt/hLr7GK1hiFiRdXTJUlrXLEdLZW36XP+S/OBzZ
 V+ipYUsIKLQxHMQ+/D7ZuSSThJbi73iyqRacoDrJhPp6I8tLdpBfDgIHP1/UAC+C97Fdv+kU
 MVfb9y77/AMLJ+ZsB6QVMtwnMZ0PC0aHYxugP4AuUCbUggon/SMdSO+afJo9MUczq8jTq1HV
 mU6CtG+fjZGwOFyL4BEqo1SF4mInQU2TBH/OmYcZfXBxjvX+Zf/ECiOnv4VLNGUqCKFfExqR
 l9iuv40tO/Rm7d2ArKuyF8Lb8L22G7QdmqCAbJINV2ybWBSB2xq5rvxtWygjfxQSa6bEpdpb
 QtTz1uUu1zzh84jIM21SCuTLfQuUxNqSoG3Q1a
X-IronPort-AV: E=Sophos;i="5.82,201,1613451600"; 
   d="scan'208,217";a="40858616"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mnJJfewEIlG12WvUl0T4f3Bm0yafA+1rgulMPI4q9whDQtI+frLyW3nLSFKXM4wsEOf8IvoSoGbxAlOPY5bxXzathgzSHmkkBsntO1oFHcXXMb9PXAtvoM6yasQLHYg7YR6x71Pd5fasxIPE8SSkTtG/g1iPONsveoV2A5uHkwh6owAOjsyTXZSR2f1WDim7c8iuNpTFM0Vp81mmMRNQqoQwgAFYdpPP1Q/IqEk58cmVY04MIGnwcdOD2V5gml1XwLyjd/5u+qPDYI0j0buZzb2Qhoy6BNSZgfliwBGaG0beIfrS7mVqyU7DHMOsrAqI8ugoNRWLDQ9Wll5bvpBtiw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+r98C+YPJljSygfHhvW6GZ3EnK2dU1KjitvcHRJvzDs=;
 b=N1GUJoNR2tL4McbCIvv6Ykc2yiCuUCQlrrqQ9m2Zq7RDM72KLDkyu3t2Mms7kCiuEn/4yceXHfn7noUIkBSpfq29MU8UBIgZN76mIxxHCkdypBvKANlrAtsDRm0ZbQjt8IkeRnaE9cJLuHXuPQdZnJkfawek5MUXy+waaYJXFeuhIVQmGa6gEC+etL6fw5PnH1GdaCdEbarpUJ4KqzN1Y5c7HM8M4IlA+rfMzTLDTzW68OMHdwylp18fRWdTESj5m8aTeiYZPizt422Ymmg92eGStVvNCsVBjC/+IiAFGamjYXBHzb73ZAjuCiCce2AfeGfFuGvDkr7NEQRs3MZpAg==
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=+r98C+YPJljSygfHhvW6GZ3EnK2dU1KjitvcHRJvzDs=;
 b=nEpV/zHRR78N9uTXm49cDDsjTSejIlB3bevqAkxU6txsW11Z/AZtzxn/HKmunYjLwWaMKPYi/mjHJr9eMy2ZSQdas7JoH56sIknxx3cHfIexL7PX9KVjx+V3yWvUropKmEf0SITmqngNdPSivsIE4gDUtXlqLqVQnODVInyFOvc=
To: Roman Shaposhnik <roman@zededa.com>
CC: Jan Beulich <jbeulich@suse.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, <grub-devel@gnu.org>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
 <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
 <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
 <YGWH89ubVe104Tnl@Air-de-Roger>
 <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
 <f800ac60-7d49-fa08-ca8d-1c75408dd2de@suse.com>
 <f835e433-368c-b107-9963-9107d3432ce6@citrix.com>
 <CAMmSBy9w3VZpKdkSkpCAgDsRk0K24_Ssx-YvF9d_mpA8WetUkg@mail.gmail.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: multiboot2 and module2 boot issues via GRUB2
Message-ID: <8abef703-2966-cfe1-91a0-cf33990ee332@citrix.com>
Date: Tue, 6 Apr 2021 19:41:57 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <CAMmSBy9w3VZpKdkSkpCAgDsRk0K24_Ssx-YvF9d_mpA8WetUkg@mail.gmail.com>
Content-Type: multipart/alternative;
 boundary="------------3C76A0BF5FFC632325C9E331"
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0083.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:190::16) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 91689bb7-cd9f-46d5-24e2-08d8f92bae0d
X-MS-TrafficTypeDiagnostic: BN6PR03MB2419:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN6PR03MB241990715B20DE40D51D922DBA769@BN6PR03MB2419.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Dx8PxvAhOYpQkldE+fxTI/BQ8kr1SMqt3ra3n85e0RNCUE0v2zZl4Scvjhb72WabiLRkEKHXsui6AOLq/8iiajoDqQLfctFcEOcs6BxFAnhMB86yQok7OkhNMj2chlJ5ev18ExCmBkMIIsc6PyPgR5QCEaxWJmjjOcZ1xnYgzHdVovtzF6/UVmcKCGGo+34CRS59Ti6PUGWO6O2u+0NV67/SfqDeU0LF+/IDtI6MVc/VVpM2PM18FhdXPIDsBRz7GGGMWOIvWhTIcc1n/TJ8cwL3GjvzCRcGZ5IsGfcZWwGbey3flpbz5baH5Ni9LnCvYyiT2ZbKeTBFMgQFyuVR0SKvBwqjwBKqgAh3ONTh0xYIoVmiQu3KNE9/RMhX5ABQn2/a8LyvkNyHvC2j/LShCPwVtpxR+28tlnVefeWGFQpmvBDcwwfjxSjDm1sfJhYP68bos3LiimeXnb0llGmUvlfniXTYAxSZ5nnyi74jU+bBQvopscChJKZrQkRIlwkuGujdE7a70x9xj7iHpve/w/D+tiRcBrXwvKCfb65KWlOeHxh1gMn36ZqjbYaBPhQ3LIyPIfNpH92nvFBRMFE6oULrz07N6VMtiodJ5jfaXFgh4NLEzT0Juowr9icI6IwDntrTteZl79TXLuCIEHnPrM6xFcHdmLfF5o0JENW+/GexxE3q0od2XyrgFz1ixdaiTgD+cMCYcG6IQk6zJegZCiIvaOuPZvZegP2Q0UP+9tMfo1U/Id26/glgGIWGV+Az0baED3l42f9JM8BbQYrva7OU4htEwW6Pr71e9SJagw4cX6tdDSXDReR7r/puQe8B
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(376002)(346002)(39860400002)(396003)(366004)(53546011)(33964004)(6916009)(54906003)(38100700001)(966005)(107886003)(5660300002)(31696002)(166002)(8936002)(16576012)(86362001)(83380400001)(316002)(6666004)(66476007)(66556008)(478600001)(8676002)(6486002)(2616005)(4326008)(2906002)(36756003)(26005)(66946007)(16526019)(186003)(956004)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?RtbYtjmknjIpE7pi+SizKYfz/PixHft+nrzdmpA?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 91689bb7-cd9f-46d5-24e2-08d8f92bae0d
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 18:42:07.3801
 (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: zdbi++XwnHv3F1qv7ai1LX6ZBzwVx1UQoSAJifcRfm0eIdczIQnlrnLDDMCiBCFKLzM3ASVOjU7HYf669e53ac/x1cCmIpFzK4StROMfQOc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2419
X-OriginatorOrg: citrix.com

--------------3C76A0BF5FFC632325C9E331
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On 06/04/2021 19:03, Roman Shaposhnik wrote:
> On Tue, Apr 6, 2021 at 10:51 AM Andrew Cooper
> <andrew.cooper3@citrix.com <mailto:andrew.cooper3@citrix.com>> wrote:
>
>     On 06/04/2021 09:19, Jan Beulich wrote:
>     > On 01.04.2021 21:43, Andrew Cooper wrote:
>     >> On 01/04/2021 09:44, Roger Pau Monn=C3=A9 wrote:
>     >>> On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
>     >>>> On 01.04.2021 03:06, Roman Shaposhnik wrote:
>     >>>>> And the obvious next question: is my EVE usecase esoteric
>     enough that
>     >>>>> I should just go ahead and do a custom GRUB patch or is
>     there a more
>     >>>>> general interest in this?
>     >>>> Not sure if it ought to be a grub patch - the issue could as w=
ell
>     >>>> be dealt with in Xen, by concatenating modules to form a
>     monolithic
>     >>>> initrd.
>     >>> I would rather have it done in the loader than Xen, mostly beca=
use
>     >>> it's a Linux boot specific format, and hence I don't think Xen
>     should
>     >>> have any knowledge about it.
>     >>>
>     >>> If it turns out to be impossible to implement on the loader
>     side we
>     >>> should consider doing it in Xen, but that's not my first option=
=2E
>     >> Concatenating random things which may or may not be initrds is
>     >> absolutely not something Xen should do.=C2=A0 We don't have enou=
gh
>     context to
>     >> do it safely/sensibly.
>     > Well, I wasn't suggesting anywhere to concatenate random things.
>     > Instead I was envisioning a command line option giving us the
>     > context we need (e.g. "initrd=3D3+5").
>
>     That's a massive layering violation, and incredibly fragile to the
>     order
>     of lines in the boot stanza.
>
>
> Don't have enough karma to argue Xen architectural side of things, but.=
=2E.
> =C2=A0
>
>     Either fix it by using a single monolithic initrd, which has worked=

>     perfectly well for the past 2 decades
>
>
> ...just to point out the obvious here:=C2=A0 even Debian who can HARDLY=
 be
> blamed for tracking the bleeding edge has been recommending this
> for quite some time:
> =C2=A0
> =C2=A0=C2=A0https://wiki.debian.org/DebianInstaller/NetbootFirmware#The=
_Solution:_Add_Firmware_to_Initramfs
> <https://wiki.debian.org/DebianInstaller/NetbootFirmware#The_Solution:_=
Add_Firmware_to_Initramfs>
> Obviously there's no way to do that with Xen today out of the box.

?

Those instructions do work out of the box with Xen.

It seems that pxelinux gained support for multiple initrd fragments in
3.05, but the sum total of documentation I can find is in the
changelog.=C2=A0 iPXE might have this ability, but it's documentation is
self-contradictory on the matter.

>
> Now, you can turn around and say "well, how hard could it be to
> concatenate?". That's fair. But it is also fair to point out that
> everytime
> we do that we portray Xen as "not quite as user friendly as X" (and
> this is, of course, pure perception -- but if we want users to stick
> perception matters a lot).

It's distinctly not trivial to do correctly at the Xen level, and fairly
invasive in at least two areas of logic.=C2=A0 Specific firmware layouts =
and
multiple fragments might even be impossible to concatenate, and its
better for the bootloaders to bail if they can't make the memory layout
work, than to leave Xen holding the the pieces and unable to boot.=C2=A0
Either way, it would appear that common bootloaders already have logic
for this, which gets you a lot further than starting from scratch in Xen.=



Furthermore, I don't think it fair to claim that this is a usability bug
in Xen, when what the Linux people have done is upstream Linux-specific
hacks to bootloaders.=C2=A0 Fixing the bootloaders to not have useful
features be Linux specific benefits everyone using Multiboot, not just
the Xen ecosystem.=C2=A0 If you're looking for general betterness to all =
OSS,
then fixing the bootloaders is clearly the better approach.

~Andrew

--------------3C76A0BF5FFC632325C9E331
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 06/04/2021 19:03, Roman Shaposhnik
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:CAMmSBy9w3VZpKdkSkpCAgDsRk0K24_Ssx-YvF9d_mpA8WetUkg@mail.gmail.com">
      
      <div dir="ltr">
        <div dir="ltr">
          <div dir="ltr">On Tue, Apr 6, 2021 at 10:51 AM Andrew Cooper
            &lt;<a href="mailto:andrew.cooper3@citrix.com" moz-do-not-send="true">andrew.cooper3@citrix.com</a>&gt;
            wrote:<br>
          </div>
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0px 0px 0px
              0.8ex;border-left:1px solid
              rgb(204,204,204);padding-left:1ex">On 06/04/2021 09:19,
              Jan Beulich wrote:<br>
              &gt; On 01.04.2021 21:43, Andrew Cooper wrote:<br>
              &gt;&gt; On 01/04/2021 09:44, Roger Pau Monné wrote:<br>
              &gt;&gt;&gt; On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan
              Beulich wrote:<br>
              &gt;&gt;&gt;&gt; On 01.04.2021 03:06, Roman Shaposhnik
              wrote:<br>
              &gt;&gt;&gt;&gt;&gt; And the obvious next question: is my
              EVE usecase esoteric enough that<br>
              &gt;&gt;&gt;&gt;&gt; I should just go ahead and do a
              custom GRUB patch or is there a more<br>
              &gt;&gt;&gt;&gt;&gt; general interest in this?<br>
              &gt;&gt;&gt;&gt; Not sure if it ought to be a grub patch -
              the issue could as well<br>
              &gt;&gt;&gt;&gt; be dealt with in Xen, by concatenating
              modules to form a monolithic<br>
              &gt;&gt;&gt;&gt; initrd.<br>
              &gt;&gt;&gt; I would rather have it done in the loader
              than Xen, mostly because<br>
              &gt;&gt;&gt; it's a Linux boot specific format, and hence
              I don't think Xen should<br>
              &gt;&gt;&gt; have any knowledge about it.<br>
              &gt;&gt;&gt;<br>
              &gt;&gt;&gt; If it turns out to be impossible to implement
              on the loader side we<br>
              &gt;&gt;&gt; should consider doing it in Xen, but that's
              not my first option.<br>
              &gt;&gt; Concatenating random things which may or may not
              be initrds is<br>
              &gt;&gt; absolutely not something Xen should do.&nbsp; We don't
              have enough context to<br>
              &gt;&gt; do it safely/sensibly.<br>
              &gt; Well, I wasn't suggesting anywhere to concatenate
              random things.<br>
              &gt; Instead I was envisioning a command line option
              giving us the<br>
              &gt; context we need (e.g. &quot;initrd=3+5&quot;).<br>
              <br>
              That's a massive layering violation, and incredibly
              fragile to the order<br>
              of lines in the boot stanza.<br>
            </blockquote>
            <div><br>
            </div>
            <div>Don't have enough karma to argue Xen architectural side
              of things, but...</div>
            <div>&nbsp;</div>
            <blockquote class="gmail_quote" style="margin:0px 0px 0px
              0.8ex;border-left:1px solid
              rgb(204,204,204);padding-left:1ex">
              Either fix it by using a single monolithic initrd, which
              has worked<br>
              perfectly well for the past 2 decades<br>
            </blockquote>
            <div><br>
            </div>
            <div>...just to point out the obvious here:&nbsp; even Debian who
              can HARDLY be</div>
            <div>blamed for tracking the bleeding edge has been
              recommending this</div>
            <div>for quite some time:</div>
            <div>&nbsp; &nbsp;&nbsp;<a href="https://wiki.debian.org/DebianInstaller/NetbootFirmware#The_Solution:_Add_Firmware_to_Initramfs" moz-do-not-send="true">https://wiki.debian.org/DebianInstaller/NetbootFirmware#The_Solution:_Add_Firmware_to_Initramfs</a></div>
            <div>Obviously there's no way to do that with Xen today out
              of the box.</div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    ?<br>
    <br>
    Those instructions do work out of the box with Xen.<br>
    <br>
    It seems that pxelinux gained support for multiple initrd fragments
    in 3.05, but the sum total of documentation I can find is in the
    changelog.&nbsp; iPXE might have this ability, but it's documentation is
    self-contradictory on the matter.<br>
    <br>
    <blockquote type="cite" cite="mid:CAMmSBy9w3VZpKdkSkpCAgDsRk0K24_Ssx-YvF9d_mpA8WetUkg@mail.gmail.com">
      <div dir="ltr">
        <div dir="ltr">
          <div class="gmail_quote">
            <div><br>
            </div>
            <div>Now, you can turn around and say &quot;well, how hard could
              it be to</div>
            <div>concatenate?&quot;. That's fair. But it is also fair to
              point out that everytime</div>
            <div>we do that we portray Xen as &quot;not quite as user
              friendly as X&quot; (and</div>
            <div>this is, of course, pure perception -- but if we want
              users to stick</div>
            <div>perception matters a lot).</div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    It's distinctly not trivial to do correctly at the Xen level, and
    fairly invasive in at least two areas of logic.&nbsp; Specific firmware
    layouts and multiple fragments might even be impossible to
    concatenate, and its better for the bootloaders to bail if they
    can't make the memory layout work, than to leave Xen holding the the
    pieces and unable to boot.&nbsp; Either way, it would appear that common
    bootloaders already have logic for this, which gets you a lot
    further than starting from scratch in Xen.<br>
    <br>
    <br>
    Furthermore, I don't think it fair to claim that this is a usability
    bug in Xen, when what the Linux people have done is upstream
    Linux-specific hacks to bootloaders.&nbsp; Fixing the bootloaders to not
    have useful features be Linux specific benefits everyone using
    Multiboot, not just the Xen ecosystem.&nbsp; If you're looking for
    general betterness to all OSS, then fixing the bootloaders is
    clearly the better approach.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------3C76A0BF5FFC632325C9E331--


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 19:02:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 19:02:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106241.203189 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTqy1-0001xK-5l; Tue, 06 Apr 2021 19:02:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106241.203189; Tue, 06 Apr 2021 19: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 1lTqy1-0001xD-2e; Tue, 06 Apr 2021 19:02:25 +0000
Received: by outflank-mailman (input) for mailman id 106241;
 Tue, 06 Apr 2021 19:02: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 1lTqxz-0001x8-6T
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 19:02: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 1lTqxt-0005Hm-Jl; Tue, 06 Apr 2021 19:02:17 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTqxt-0007Qa-BF; Tue, 06 Apr 2021 19:02:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=V+2KWVr8Ye1hPT90cOEVl1XOuQ3nOSNws22bVBX+fOA=; b=5rvPuUttTaxImnDFqMJZbWTuRq
	2lsGRZlu8JqQq8Cw0azV6znAAfuhJzoiPmZPXZ7zIZ90zCBOF8SJq8581V8Sb1GkbUlsoAlhs+18e
	iWioFXEZOwufqJqr2sF9n/MkLMPiwZBMlV271eeCNuDHyHbBtu4ZBlAxZTbDk9dXfZBM=;
Subject: Re: [PATCH 08/14] tools/firmware: hvmloader: Use const in __bug() and
 __assert_failed()
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
 Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-9-julien@xen.org> <YGwNz6ZP8qtVVx+D@Air-de-Roger>
From: Julien Grall <julien@xen.org>
Message-ID: <e9c01ed3-b1ba-744f-daa2-d9fd195f5055@xen.org>
Date: Tue, 6 Apr 2021 20:02:15 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YGwNz6ZP8qtVVx+D@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Roger,

On 06/04/2021 08:29, Roger Pau Monné wrote:
> On Mon, Apr 05, 2021 at 04:57:07PM +0100, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> __bug() and __assert_failed() are not meant to modify the string
>> parameters. So mark them as const.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks!

> 
> While looking at this I think we should also make the line parameter
> unsigned, but again doesn't need to be part of this patch.
I would prefer if this is done in a follow-up patch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 19:08:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 19:08:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106245.203201 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTr41-0002Aw-T3; Tue, 06 Apr 2021 19:08:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106245.203201; Tue, 06 Apr 2021 19:08:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTr41-0002Ap-P0; Tue, 06 Apr 2021 19:08:37 +0000
Received: by outflank-mailman (input) for mailman id 106245;
 Tue, 06 Apr 2021 19:08: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 1lTr3z-0002Ak-PS
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 19:08: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 1lTr3q-0005P2-Gg; Tue, 06 Apr 2021 19:08:26 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTr3q-0007xZ-6J; Tue, 06 Apr 2021 19:08:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=6wOenFQlNcHpNG9oYsLulwUGB8EKhCn0QaFN28HGeX0=; b=fVnRkz3EO6qqxT8hFyFm76YoT9
	+55CWVWeYlxrD+ftRBKqaJAqPmeTecjnULwDytvcNJZjHQ4LQsIBbMStNHPwcVT4+RvmsvFXJLIbt
	RskPosV4cPXhtynfwgNg1LRfNSzHzP9BbC4fjC8lQg9qmllQ6Cm5BJRyKYy7C7Ub7t2w=;
Subject: Re: [PATCH 00/14] Use const whether we point to literal strings (take
 1)
To: xen-devel@lists.xenproject.org
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Dario Faggioli <dfaggioli@suse.com>, Tim Deegan <tim@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Anthony PERARD <anthony.perard@citrix.com>
References: <20210405155713.29754-1-julien@xen.org>
From: Julien Grall <julien@xen.org>
Message-ID: <7e7e7324-0bb8-4583-3282-7ef0a6b2f1b1@xen.org>
Date: Tue, 6 Apr 2021 20:08:23 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210405155713.29754-1-julien@xen.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

On 05/04/2021 16:56, Julien Grall wrote:
> Julien Grall (14):
>    xen: Constify the second parameter of rangeset_new()
>    xen/sched: Constify name and opt_name in struct scheduler
>    xen/x86: shadow: The return type of sh_audit_flags() should be const >    tools/firmware: hvmloader: Use const in __bug() and __assert_failed()
>    tools/kdd: Use const whenever we point to literal strings
>    tools/xentrace: Use const whenever we point to literal strings

I have merged the above patches. The rest still needs some reviews or 
respin (for patch #4).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 19:15:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 19:15:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106259.203236 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTrAl-0003FP-2B; Tue, 06 Apr 2021 19:15:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106259.203236; Tue, 06 Apr 2021 19:15: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 1lTrAk-0003FI-VX; Tue, 06 Apr 2021 19:15:34 +0000
Received: by outflank-mailman (input) for mailman id 106259;
 Tue, 06 Apr 2021 19:15: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 1lTrAj-0003FD-To
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 19:15: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 1lTrAh-0005W4-1p; Tue, 06 Apr 2021 19:15:31 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTrAg-0000In-PD; Tue, 06 Apr 2021 19:15: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=vOqxoaLJibgaROJwFxmBiuaCftfq2XidYEhUQcQvsl0=; b=FT4n/AhiKFtKo8/+wAJ+Y87zv3
	V5lqeJ5vUIYpH90JspbsSGftAYIUSnVm4mVdSPOSNKFU9cN03Qs9Dd/K4KQT1bemYG6xToktlojZV
	SMiexm2GHuSx5NtrVNuWcBQ4Yfz1U8ilZcbOTE94f+m5Mec0EWzy2JDTUg4hwvcLYe9E=;
Subject: Re: [PATCH 1/2] xen/arm: kernel: Propagate the error if we fail to
 decompress the kernel
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210402152105.29387-1-julien@xen.org>
 <20210402152105.29387-2-julien@xen.org>
From: Julien Grall <julien@xen.org>
Message-ID: <5540671d-bd03-dc67-2c2f-e95f746c1030@xen.org>
Date: Tue, 6 Apr 2021 20:15:29 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210402152105.29387-2-julien@xen.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 02/04/2021 16:21, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Currently, we are ignoring any error from perform_gunzip() and replacing
> the compressed kernel with the "uncompressed" kernel.
> 
> If there is a gzip failure, then it means that the output buffer may
> contain garbagge. So it can result to various sort of behavior that may
> be difficult to root cause.
> 
> In case of failure, free the output buffer and propagate the error.
> We also need to adjust the return check for kernel_compress() as
> perform_gunzip() may return a positive value.
> 
> Take the opportunity to adjust the code style for the check.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> ---
>   xen/arch/arm/kernel.c | 8 +++++++-
>   1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c
> index ab78689ed2a6..f6b60ab77355 100644
> --- a/xen/arch/arm/kernel.c
> +++ b/xen/arch/arm/kernel.c
> @@ -292,6 +292,12 @@ static __init int kernel_decompress(struct bootmodule *mod)
>       iounmap(input);
>       vunmap(output);
>   
> +    if ( rc )
> +    {
> +        free_domheap_pages(pages);

This breaks the build. I am not sure how I managed to test it before... 
I will send a v2.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 19:15:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 19:15:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106262.203249 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTrB9-0003KI-Cx; Tue, 06 Apr 2021 19:15:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106262.203249; Tue, 06 Apr 2021 19:15:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTrB9-0003KB-7t; Tue, 06 Apr 2021 19:15:59 +0000
Received: by outflank-mailman (input) for mailman id 106262;
 Tue, 06 Apr 2021 19:15: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 1lTrB7-0003K1-Bl
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 19:15: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 1lTrB7-0005WU-3h; Tue, 06 Apr 2021 19:15:57 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTrB6-0000Jq-Qx; Tue, 06 Apr 2021 19:15: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=Message-Id:Date:Subject:Cc:To:From;
	bh=sDGEHF39zFGZyELm+jyFow2YFF3B1K268E33vzxWd5Y=; b=OZAnBc6X721bAtOGBshJa0Gn35
	ucTToMYW/epkY2aYkW3tbv/iQK8CIjKQvS0H+19czmVzFNI8NcerV3ulXs+Kaf47SL5Gd23uNOi2F
	nKyOa34+cl1DWIf9vDR6NPsB1B/dpog5duo6ENwcBGe5H+0vPfulV6Bs/UOgy/Lt3IOA=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v2] xen/arm: kernel: Propagate the error if we fail to decompress the kernel
Date: Tue,  6 Apr 2021 20:15:54 +0100
Message-Id: <20210406191554.12012-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

Currently, we are ignoring any error from perform_gunzip() and replacing
the compressed kernel with the "uncompressed" kernel.

If there is a gzip failure, then it means that the output buffer may
contain garbagge. So it can result to various sort of behavior that may
be difficult to root cause.

In case of failure, free the output buffer and propagate the error.
We also need to adjust the return check for kernel_compress() as
perform_gunzip() may return a positive value.

Take the opportunity to adjust the code style for the check.

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

---
    Changes in v2:
        - Fix build
---
 xen/arch/arm/kernel.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c
index ab78689ed2a6..8f43caa1866d 100644
--- a/xen/arch/arm/kernel.c
+++ b/xen/arch/arm/kernel.c
@@ -292,6 +292,12 @@ static __init int kernel_decompress(struct bootmodule *mod)
     iounmap(input);
     vunmap(output);
 
+    if ( rc )
+    {
+        free_domheap_pages(pages, kernel_order_out);
+        return rc;
+    }
+
     mod->start = page_to_maddr(pages);
     mod->size = output_size;
 
@@ -503,7 +509,7 @@ int __init kernel_probe(struct kernel_info *info,
 
     /* if it is a gzip'ed image, 32bit or 64bit, uncompress it */
     rc = kernel_decompress(mod);
-    if (rc < 0 && rc != -EINVAL)
+    if ( rc && rc != -EINVAL )
         return rc;
 
 #ifdef CONFIG_ARM_64
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 19:22:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 19:22:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106269.203261 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTrHp-0004Fe-2F; Tue, 06 Apr 2021 19:22:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106269.203261; Tue, 06 Apr 2021 19: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 1lTrHo-0004FX-VV; Tue, 06 Apr 2021 19:22:52 +0000
Received: by outflank-mailman (input) for mailman id 106269;
 Tue, 06 Apr 2021 19:22: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 1lTrHm-0004FS-SV
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 19:22: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 1lTrHl-0005d3-P7; Tue, 06 Apr 2021 19:22:49 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTrHl-0000zd-9m; Tue, 06 Apr 2021 19:22: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=Message-Id:Date:Subject:Cc:To:From;
	bh=PrkuCfGhHLJrZ4S+yOEu6s9dgnK1NNTZT78cqa6PGl8=; b=YvMSibRja/Vs2ECLsL57FpEjVl
	dJUh3M+WZZx8cSxrzl376E8sX3VXWiKPaFR4X8pYdvK0O0B1n4Irhef2cuBFaeIp+xpqM7i5ONEMj
	5NZ0j0/k0U6R1mzLtJ2ObHG3/iMz8DHsup96H8Nq1HwIDjzU2cNvNbKP/OIXq4VoD2oA=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH] xen/page_alloc: Remove dead code in alloc_domheap_pages()
Date: Tue,  6 Apr 2021 20:22:46 +0100
Message-Id: <20210406192246.15657-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

Since commit 1aac966e24e9 "xen: support RAM at addresses 0 and 4096",
bits_to_zone() will never return 0 and it is expected that we have
minimum 2 zones.

Therefore the check in alloc_domheap_pages() is unnecessary and can
be removed. However, for sanity, it is replaced with an ASSERT().

Also take the opportunity to check atbuild time that NR_ZONES is minimum
2.

This bug was discovered and resolved using Coverity Static Analysis
Security Testing (SAST) by Synopsys, Inc.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/common/page_alloc.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 1744e6faa5c4..68e47d963842 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -457,6 +457,12 @@ static long total_avail_pages;
 static DEFINE_SPINLOCK(heap_lock);
 static long outstanding_claims; /* total outstanding claims by all domains */
 
+static void __init __maybe_unused build_assertions(void)
+{
+    /* Zone 0 is reserved for Xen, so we at least need two zones to function.*/
+    BUILD_BUG_ON(NR_ZONES < 2);
+}
+
 unsigned long domain_adjust_tot_pages(struct domain *d, long pages)
 {
     long dom_before, dom_after, dom_claimed, sys_before, sys_after;
@@ -2340,8 +2346,9 @@ struct page_info *alloc_domheap_pages(
 
     bits = domain_clamp_alloc_bitsize(memflags & MEMF_no_owner ? NULL : d,
                                       bits ? : (BITS_PER_LONG+PAGE_SHIFT));
-    if ( (zone_hi = min_t(unsigned int, bits_to_zone(bits), zone_hi)) == 0 )
-        return NULL;
+
+    zone_hi = min_t(unsigned int, bits_to_zone(bits), zone_hi);
+    ASSERT(zone_hi != 0);
 
     if ( memflags & MEMF_no_owner )
         memflags |= MEMF_no_refcount;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 19:30:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 19:30:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106274.203273 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTrPK-0005BU-Sg; Tue, 06 Apr 2021 19:30:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106274.203273; Tue, 06 Apr 2021 19:30: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 1lTrPK-0005BN-PO; Tue, 06 Apr 2021 19:30:38 +0000
Received: by outflank-mailman (input) for mailman id 106274;
 Tue, 06 Apr 2021 19:30: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 1lTrPJ-0005BI-Fv
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 19:30:37 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTrPI-0005lS-2f; Tue, 06 Apr 2021 19:30:36 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTrPH-0001Rg-KB; Tue, 06 Apr 2021 19:30: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=Message-Id:Date:Subject:Cc:To:From;
	bh=x4BrDhgOv8YmGzD+ftCZACZopXD6GRxTjZmC0jrBQLM=; b=n0wktH0f3NmU0il91SKdTEdpYt
	BYo9yeAFLqHa5Cvz4DGgqHO82fOrAYvRvI8WlfPl1jWTY4MbyqezmgohHRdCVNIxl7x/dMy25qOJN
	lESxgOhYCKRF/EOvWuyk6hDEBqCq7bQhQqLCBQ1DskrPl0/kJKSEPDlRHthhLZp5Dbew=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH] xen/page_alloc: Don't hold the heap_lock when clearing PGC_need_scrub
Date: Tue,  6 Apr 2021 20:30:32 +0100
Message-Id: <20210406193032.16976-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

Currently, the heap_lock is held when clearing PGC_need_scrub in
alloc_heap_pages(). However, this is unnecessary because the only caller
(mark_page_offline()) that can concurrently modify the count_info is
using cmpxchg() in a loop.

Therefore, rework the code to avoid holding the heap_lock and use
test_and_clear_bit() instead.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/common/page_alloc.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 68e47d963842..70146a00ec8b 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -1038,16 +1038,12 @@ static struct page_info *alloc_heap_pages(
     {
         for ( i = 0; i < (1U << order); i++ )
         {
-            if ( test_bit(_PGC_need_scrub, &pg[i].count_info) )
+            if ( test_and_clear_bit(_PGC_need_scrub, &pg[i].count_info) )
             {
                 if ( !(memflags & MEMF_no_scrub) )
                     scrub_one_page(&pg[i]);
 
                 dirty_cnt++;
-
-                spin_lock(&heap_lock);
-                pg[i].count_info &= ~PGC_need_scrub;
-                spin_unlock(&heap_lock);
             }
             else if ( !(memflags & MEMF_no_scrub) )
                 check_one_page(&pg[i]);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 06 19:34:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 19:34:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106283.203285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTrTB-0005Ny-FR; Tue, 06 Apr 2021 19:34:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106283.203285; Tue, 06 Apr 2021 19: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 1lTrTB-0005Nr-AN; Tue, 06 Apr 2021 19:34:37 +0000
Received: by outflank-mailman (input) for mailman id 106283;
 Tue, 06 Apr 2021 19:34: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 1lTrTA-0005Nm-Fr
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 19:34: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 1lTrT9-0005pv-Lm; Tue, 06 Apr 2021 19:34:35 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lTrT9-0001sM-Dz; Tue, 06 Apr 2021 19:34: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=EEh4e1/KCP6rcjKDy2CqFETOGGmWPrKlStuj0NC2gdE=; b=pOzH3CD4F/chkN6toivM31KtEv
	bskF3C6fsHdbcGsxuuh0LtNx/RWCM2i19Dvkn2fGjK90lTLQ/aOiS+ZZUR3VPOUNwQnQhBtcocRZV
	eUhyOtURanFWriwGWCc7NNwXPRKdpRW2MEqB/pUtgeZiQQWUQctlat6cN4pSh4hxgygc=;
Subject: Re: [PATCH 02/23] lib: move 64-bit div/mod compiler helpers
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <0fec827f-bb0b-4ea1-7757-9c27e9138be7@suse.com>
 <008a8b14-8f58-2127-9e97-87c696e07b5e@xen.org>
 <0ddcecbb-dc42-ba4e-fccc-6988c7e54456@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <ad4aaf01-697e-dc12-39c5-17d375a40b00@xen.org>
Date: Tue, 6 Apr 2021 20:34:33 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <0ddcecbb-dc42-ba4e-fccc-6988c7e54456@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 01/04/2021 16:23, Jan Beulich wrote:
> On 01.04.2021 16:56, Julien Grall wrote:
>> On 01/04/2021 11:19, Jan Beulich wrote:
>>> --- a/xen/common/lib.c
>>> +++ b/xen/lib/divmod.c
>>> @@ -40,7 +40,6 @@
>>>     * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
>>>     * SUCH DAMAGE.
>>>     */
>>> -#if BITS_PER_LONG == 32
>>
>> In theory BITS_PER_LONG == 32 is not quite the same as 32-bit arch. Can
>> you clarify whether this code is necessary on 64-bit arch where long is
>> only 32-bit.
> 
> Likely the compiler can get away without invoking these helpers, so
> the code would remain unused. I'm uncertain whether CONFIG_64BIT
> ought to be set for such an architecture, as we assume sizeof(long)
> == sizeof(void*), and hence pointers would then need to be 32-bit
> as well there.

This is a fair point. Would you mind to add a sentence explaining that 
in the commit message?

With that:

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 20:11:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 20:11:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106292.203297 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTs2K-0000Qm-A4; Tue, 06 Apr 2021 20:10:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106292.203297; Tue, 06 Apr 2021 20: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 1lTs2K-0000Qf-7A; Tue, 06 Apr 2021 20:10:56 +0000
Received: by outflank-mailman (input) for mailman id 106292;
 Tue, 06 Apr 2021 20:10: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 1lTs2I-0000QX-Qf; Tue, 06 Apr 2021 20:10: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 1lTs2I-0006V7-Jz; Tue, 06 Apr 2021 20:10: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 1lTs2I-0005Bp-6l; Tue, 06 Apr 2021 20:10:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTs2I-00038c-6F; Tue, 06 Apr 2021 20:10: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=LAZboV645ug/1FvP9fosge1bBzZGcfITEo7L5NMJBMU=; b=tq5ojLZ251bmOcf8ut8bQm4wiZ
	y3CbD9hs7Cg+QXfX42YgPQw/pvA4whS/cRutv1MjTd3R0X9DkQnIHG4Si8ae3stGoQ2a6DhcY4Asl
	HqykGt3wJ+MIt6DN9fHSIZr5Jdy3qtYhhgjROFE9LWJTHd8d/T2ROqZ+IO/VedD56FrE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160772-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160772: 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=6425fcf37122b1f1e4ceaacadd00a4c280a58f57
X-Osstest-Versions-That:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 06 Apr 2021 20:10:54 +0000

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

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                  6425fcf37122b1f1e4ceaacadd00a4c280a58f57
baseline version:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb

Last test of basis   160648  2021-04-01 18:00:27 Z    5 days
Testing same since   160772  2021-04-06 15:00:34 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.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
   0435784cc7..6425fcf371  6425fcf37122b1f1e4ceaacadd00a4c280a58f57 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 21:25:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 21:25:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106307.203312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTtBv-0006au-PB; Tue, 06 Apr 2021 21:24:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106307.203312; Tue, 06 Apr 2021 21: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 1lTtBv-0006an-MG; Tue, 06 Apr 2021 21:24:55 +0000
Received: by outflank-mailman (input) for mailman id 106307;
 Tue, 06 Apr 2021 21:24:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uncx=JD=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lTtBu-0006ai-Aq
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 21:24:54 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 31548986-699d-460f-96da-b1d3b419f200;
 Tue, 06 Apr 2021 21:24:53 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id A2DB461396;
 Tue,  6 Apr 2021 21:24: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: 31548986-699d-460f-96da-b1d3b419f200
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1617744293;
	bh=H2NAWP4Xi7y6EV5xHX1I9+POqLpf99goDaZ8lVmFaUY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Y5Pg0fHm1ZX8R7Chj0E/JZOkd2eoNizyOWV7mtVOYMw4aUS5YsPh95t223j9oOYUU
	 DoVow/TjAx6cn9PumcJFQLfx8+aoqFbzdArT8CXcv07La3+k/CVSBA0XPrdddQ5NP6
	 pY5uXFzhq0+4I+OOzHnKpeO2BOx+I8Q0iCEVTmofhXcWs0AXRjK5Mu4WNsDLBEDwJv
	 TeCKtnupt5H6JfVLwh0QuatqnTwcFUXIh6DvRaC43QC3eBdVVT50g6AXaz/qOoeesB
	 qCcJQqyl4tN/UUGT9nX5Wh3fwDrv8yV8WV9Um/8cvkT0E4LGaF18vYUzSI6aAWfgHf
	 bd8O5VlCZMfmg==
Date: Tue, 6 Apr 2021 14:24:51 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Andrew Cooper <andrew.cooper3@citrix.com>
cc: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org, 
    bertrand.marquis@arm.com, wei.chen@arm.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>
Subject: Re: [PATCH 0/3] Use Doxygen and sphinx for html documentation
In-Reply-To: <225d7e0a-c5c6-a954-9141-ba1d859f400a@citrix.com>
Message-ID: <alpine.DEB.2.21.2104061418360.31460@sstabellini-ThinkPad-T480s>
References: <20210406103603.8530-1-luca.fancellu@arm.com> <225d7e0a-c5c6-a954-9141-ba1d859f400a@citrix.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-285525972-1617744292=:31460"

  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-285525972-1617744292=:31460
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Tue, 6 Apr 2021, Andrew Cooper wrote:
> On 06/04/2021 11:36, Luca Fancellu wrote:
> > This serie introduce doxygen in the sphinx html docs generation.
> > One benefit is to keep most of the documentation in the source
> > files of xen so that it's more maintainable, on the other hand
> > there are some limitation of doxygen that must be addressed
> > modifying the current codebase (for example doxygen can't parse
> > anonymous structure/union).
> >
> > To reproduce the documentation xen must be compiled because
> > most of the headers are generated on compilation time from
> > the makefiles.
> >
> > Here follows the steps to generate the sphinx html docs, some
> > package may be required on your machine, everything is suggested
> > by the autoconf script.
> > Here I'm building the arm64 docs (the only introduced for now by
> > this serie):
> >
> > ./configure
> > make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-" menuconfig
> > make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-"
> > make -C docs XEN_TARGET_ARCH="arm64" sphinx-html
> >
> > now in docs/sphinx/html/ we have the generated docs starting
> > from the index.html page.
> 
> Do you have a sample rendered output?
> 
> The plan was to try and use Linux's kernel-doc plugin for Sphinx, which
> is very doxygen-like.  Did you experiment with this option?

As you probably know the end goal for Luca (and the Xen FuSa SIG as a
whole) is to generate all FuSa documents, including requirements docs,
interface docs, etc.

FuSa requires us to follow the famous V model, where the high level
requirements are linked to the lower level requirements, which are
linked to the interface docs, which are linked all the way down to the
code.

Maintaining the linking is difficult and typically done with expensive
proprietary FuSa tools.

Fortunately, an engineer working with the Zephyr project developed a set
of scripts for Doxygen that are able to generate the required FuSa docs
and also links from in-code comments and markdown/rst docs in the tree.

This is great work, and in the FuSa SIG we thought it would be best to
align ourselves with Zephyr to be able to pull our efforts together on
the tooling side instead of doing the same thing again on our own.

This is the reason why we ended up with Doxygen.
--8323329-285525972-1617744292=:31460--


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 21:46:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 21:46:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106312.203323 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTtWs-0008Pe-ID; Tue, 06 Apr 2021 21:46:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106312.203323; Tue, 06 Apr 2021 21: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 1lTtWs-0008PX-El; Tue, 06 Apr 2021 21:46:34 +0000
Received: by outflank-mailman (input) for mailman id 106312;
 Tue, 06 Apr 2021 21:46:33 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uncx=JD=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lTtWr-0008PC-JS
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 21:46:33 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 68deda9a-c195-41e6-8e22-d40798d31ea2;
 Tue, 06 Apr 2021 21:46:32 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id D57A86139C;
 Tue,  6 Apr 2021 21:46: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: 68deda9a-c195-41e6-8e22-d40798d31ea2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1617745592;
	bh=Jgjr8OoeRmHCWaG51kXyNCTjBoJQYTrzB5UXeQQvLvg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=oPAAVWt7xcIO4aWWp1u8x0+6I8SjGMMTXQ5RyQosx8l9vEbkOTuU4mS9CvcuP6JOc
	 CRGaf3FQS0qqk4Mt+NJPLzOmb55gq8WgOLCcziN2yee+yiCuXYoQbiyqj6OqIRckOg
	 zlWyJdVVIoI/oD5bfilP9Wfx9zgQi8f9657Pmth20B34lE8+l3FzfUt4jrZPqShfqF
	 f9UC03EE1zCg8O24TYXYLyW6A1qYxDcN+u8xshfiMU3UVP1nvvW588OG8tDO2GWvR1
	 wEdDE/KGw5BQ2PmXhtXKC+IDYTUuFTdJl7v09oEnwC3MGjrH1gbg5Zql10uHceOE2A
	 0sW6DH0IhZBgg==
Date: Tue, 6 Apr 2021 14:46:31 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Jan Beulich <jbeulich@suse.com>
cc: Luca Fancellu <luca.fancellu@arm.com>, bertrand.marquis@arm.com, 
    wei.chen@arm.com, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, 
    Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
In-Reply-To: <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
Message-ID: <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
References: <20210406103603.8530-1-luca.fancellu@arm.com> <20210406103603.8530-4-luca.fancellu@arm.com> <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 6 Apr 2021, Jan Beulich wrote:
> On 06.04.2021 12:36, Luca Fancellu wrote:
> > Modification to include/public/grant_table.h:
> > 
> > 1) Change anonymous structure to be named structure,
> >    because doxygen can't deal with them.
> 
> Especially in the form presented (adding further name space clutter
> for consumers to fall over) I object to this, most notably ...
> 
> > @@ -584,7 +599,7 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
> >   * page granted to the calling domain by a foreign domain.
> >   */
> >  struct gnttab_cache_flush {
> > -    union {
> > +    union a {
> 
> ... this one.

Hi Jan,

It is unfortunate that none of these tools support anonymous structs or
unions well. (You might recall we also had issues with the older
kernel-doc series too, although a bit different.)

It is difficult to provide a good name here, a suggestion would be more
than welcome. I agree with you that calling it "a" is a bad idea: "a"
becomes a globally-visible union name.

Maybe we could call it: StructName_MemberName, so in this case:

  union gnttab_cache_flush_a

It makes sure it is unique and doesn't risk clashing with anything else.
We can follow this pattern elsewhere as well.

Any better suggestions?


From xen-devel-bounces@lists.xenproject.org Tue Apr 06 22:02:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 06 Apr 2021 22:02:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106323.203336 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTtm1-0001mD-39; Tue, 06 Apr 2021 22:02:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106323.203336; Tue, 06 Apr 2021 22: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 1lTtm0-0001m6-Vh; Tue, 06 Apr 2021 22:02:12 +0000
Received: by outflank-mailman (input) for mailman id 106323;
 Tue, 06 Apr 2021 22:02:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uncx=JD=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lTtlz-0001m1-Ko
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 22:02:11 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 20e51005-24ae-495c-8589-c0446eead18c;
 Tue, 06 Apr 2021 22:02:10 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 935D8613A7;
 Tue,  6 Apr 2021 22:02: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: 20e51005-24ae-495c-8589-c0446eead18c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1617746529;
	bh=SzZ7UJTzlNQHfYZIl0LQTRTH/9V0JE1aqijTWvQoIf8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Y8fJU3nBbKvdGldEJctppPXe+fdX62TadUoJIB9FB960sS7jCmhhkryggGczYVeT5
	 DrLmjmLL0V/82Zz6XUOUZFRJ42ju6X9Po8dK0kMEkh7rdAvhFW3dwEVz3zSCRuba+y
	 tL2fTairHTKLa+CcoUt4kgyovzQKnKuRLLN+M3q33sj6q0yEegSTRvN2CwNHFUnkn0
	 gDxRcg1zjYW3r2kfOUHg6oRvhgFy/w9EaWiAN0es5hov6puHcSCZTcUBgId9DgkXWd
	 Wzu21RCHtWfBfbjprNY4nNISM7YLKtnNEzVqTlyLB5YaL1uweOhV8UevhGV8atsjzm
	 61ZVieXBeBV2g==
Date: Tue, 6 Apr 2021 15:02:08 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Julien Grall <julien@xen.org>
cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, 
    Julien Grall <jgrall@amazon.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v2] xen/iommu: smmu: Silence clang in
 arm_smmu_device_dt_probe()
In-Reply-To: <20210402155106.15486-1-julien@xen.org>
Message-ID: <alpine.DEB.2.21.2104061502010.31460@sstabellini-ThinkPad-T480s>
References: <20210402155106.15486-1-julien@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 2 Apr 2021, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Clang 11 will throw the following error:
> 
> smmu.c:2284:18: error: cast to smaller integer type 'enum arm_smmu_arch_version' from 'const void *' [-Werror,-Wvoid-pointer-to-enum-cast]
>         smmu->version = (enum arm_smmu_arch_version)of_id->data;
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> The error can be prevented by initially casting to (uintptr_t) and then
> enum.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

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


> ---
> 
> Changes in v2:
>     - Cast to (uintptr_t) rather than introduce separate pointer
>     (requested by Andrew).
> 
> Only build tested
> ---
>  xen/drivers/passthrough/arm/smmu.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
> index 20ac672e91b6..fab7be8b48bb 100644
> --- a/xen/drivers/passthrough/arm/smmu.c
> +++ b/xen/drivers/passthrough/arm/smmu.c
> @@ -2382,7 +2382,7 @@ static int arm_smmu_device_dt_probe(struct platform_device *pdev)
>  	smmu->dev = dev;
>  
>  	of_id = of_match_node(arm_smmu_of_match, dev->of_node);
> -	smmu->version = (enum arm_smmu_arch_version)of_id->data;
> +	smmu->version = (enum arm_smmu_arch_version)(uintptr_t)of_id->data;
>  
>  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>  	smmu->base = devm_ioremap_resource(dev, res);
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 00:00:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 00:00:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106340.203347 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTvby-0002xo-L7; Tue, 06 Apr 2021 23:59:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106340.203347; Tue, 06 Apr 2021 23: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 1lTvby-0002xh-IF; Tue, 06 Apr 2021 23:59:58 +0000
Received: by outflank-mailman (input) for mailman id 106340;
 Tue, 06 Apr 2021 23:59:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uncx=JD=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lTvbw-0002xc-GD
 for xen-devel@lists.xenproject.org; Tue, 06 Apr 2021 23:59:56 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6c297de3-5cdc-4712-a160-ba235a8187bb;
 Tue, 06 Apr 2021 23:59:55 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id BF34F613B9;
 Tue,  6 Apr 2021 23:59: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: 6c297de3-5cdc-4712-a160-ba235a8187bb
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1617753594;
	bh=OR9OcYc6YvrC6IDS8xbTnjc2Vdj0o0KpbzWyx/hD04g=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=IY1XUZtRTC9rqi7AqRviOghnSS2AyDI8F61iAY0gfgkl9DBzoGlKz6SJZKKY+XVC9
	 giBOt0PTnQ/wv9Tyeo1KCUklk0bVwT/kIeTs2Tp688nwC9nLMUoyo4GkYDsRjso2Jv
	 iSNS/ooR4byb+ZP+E5NatwSNODkEuIZuSRpiWCWCKkTU055FByjWYOC/I0VA3l4bg5
	 e92vwVeMpEFN4Bhe8yd9sXTyuhUXeh+cTxrMmI5w3CJavbCqYzEhS89As+uhYOo5Rk
	 EUfpoYjrRzpaI33QmPyT25JtNZ7lf6tMz0c1jrgqWkTM4SYmx8g4IdMVMtk0EJP5J3
	 h8cNsveAxHIZQ==
Date: Tue, 6 Apr 2021 16:59:52 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Julien Grall <julien@xen.org>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel <xen-devel@lists.xenproject.org>, Bertrand.Marquis@arm.com, 
    Volodymyr_Babchuk@epam.com, rahul.singh@arm.com, brian.woods@xilinx.com
Subject: Re: [PATCH v3 0/3] Generic SMMU Bindings
In-Reply-To: <80de3eb5-b338-af4e-42eb-d358f51d0bd7@xen.org>
Message-ID: <alpine.DEB.2.21.2104061606080.31460@sstabellini-ThinkPad-T480s>
References: <alpine.DEB.2.21.2101261435550.2568@sstabellini-ThinkPad-T480s> <80de3eb5-b338-af4e-42eb-d358f51d0bd7@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 5 Apr 2021, Julien Grall wrote:
> On 26/01/2021 22:58, Stefano Stabellini wrote:
> > Hi all,
> 
> Hi Stefano,
> 
> > This series introduces support for the generic SMMU bindings to
> > xen/drivers/passthrough/arm/smmu.c.
> > 
> > The last version of the series was
> > https://marc.info/?l=xen-devel&m=159539053406643
> Some changes in the SMMU drivers went in recently. I believe this touched
> similar area to this series. Would you be able to check that this series still
> work as intented?

Thanks for the heads up, no, unfortunately they don't work :-(

They badly clash. I did the forward port of the three patches but they
fail at runtime in my tests. I ran out of time to figure out what is the
problem, and I'll have to pick it up at some point in the future (it
might not be any time soon unfortunately).

Rahul, if you have any ideas about what the problem is please let me
know. This is the branch with the forward port:

http://xenbits.xenproject.org/git-http/people/sstabellini/xen-unstable.git smmu-generic


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 00:27:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 00:27:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106348.203359 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTw2Q-0006Fk-BO; Wed, 07 Apr 2021 00:27:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106348.203359; Wed, 07 Apr 2021 00: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 1lTw2Q-0006Fd-82; Wed, 07 Apr 2021 00:27:18 +0000
Received: by outflank-mailman (input) for mailman id 106348;
 Wed, 07 Apr 2021 00:27: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 1lTw2O-0006FV-LP; Wed, 07 Apr 2021 00:27: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 1lTw2O-0002pA-Ch; Wed, 07 Apr 2021 00:27: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 1lTw2O-0002Br-09; Wed, 07 Apr 2021 00:27:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTw2N-0007xR-Vw; Wed, 07 Apr 2021 00:27:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=kdiF7wVY24NPbYUKred4UqNoJHNSBbmGMfp7UHLG8Oo=; b=BLGAif7LeY3zswL0bVb2ZCXDQl
	KWvrTewtJJ4eC3Tr3XoUqAZKhjiipKphVRO4zMQbg1zzzs5ZoDTc05nNyJFBYeugElwDsyh9QZ4Qr
	KcK3AO+ijeOuwkFX4KhlqOy4zXrLYOta/+zZzWif8Dsc+4fadFd8Be5HcyAl8PeyNa50=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-i386-libvirt-pair
Message-Id: <E1lTw2N-0007xR-Vw@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 00:27:15 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-i386-libvirt-pair
testid guest-start/debian

Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160775/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-libvirt-pair.guest-start--debian.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-libvirt-pair.guest-start--debian --summary-out=tmp/160775.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-libvirt-pair guest-start/debian
Searching for failure / basis pass:
 160748 fail [dst_host=chardonnay1,src_host=chardonnay0] / 160125 [dst_host=albana1,src_host=albana0] 160119 [dst_host=elbling0,src_host=elbling1] 160113 [dst_host=chardonnay0,src_host=chardonnay1] 160104 [dst_host=albana0,src_host=albana1] 160097 [dst_host=fiano0,src_host=fiano1] 160091 ok.
Failure / basis pass flights: 160748 / 160091
(tree with no url: minios)
Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
Basis pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/libvirt.git#2c846fa6bcc11929c9fb857a22430fb9945654ad-2c846fa6bcc11929c9fb857a22430fb9945654ad https://gitlab.com/keycodemap/keycodemapdb.git#27acf0ef828bf719b2053ba398b195829413dbdd-27acf0ef828bf719b2053ba398b195829413dbdd git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\
 dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-f95cdd316c3d56e8f76b5044be54b9645e1dc60f git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c-11577d85b1a6939380bd16ed9a861653194de044 git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ec\
 ef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#14b95b3b8546db201e7efd0636ae0e215fae98f3-b0976d5c0441378b6348f5bfedbf431055bd0147
Loaded 35125 nodes in revision graph
Searching for test results:
 160091 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160097 [dst_host=fiano0,src_host=fiano1]
 160104 [dst_host=albana0,src_host=albana1]
 160113 [dst_host=chardonnay0,src_host=chardonnay1]
 160119 [dst_host=elbling0,src_host=elbling1]
 160125 [dst_host=albana1,src_host=albana0]
 160134 fail irrelevant
 160147 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160737 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160739 fail irrelevant
 160741 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160743 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160744 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1db136a29ce8594b693938ab8e788d8bcef54770 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160746 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160736 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160747 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5e8892db93f3fb6a7221f2d47f3c952a7e489737 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160749 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160750 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160751 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 87a80dc4f2f5e51894db143685a5e39c8ce6f651 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160753 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160755 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 313d86c956d4599054a9dcd524668f67797d317a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160756 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 56b89f455894e4628ad7994fe5dd348145d1a9c5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160759 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b50101833987b47e0740f1621de48637c468c3d1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160760 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bc3a65e99254cfe001bd16a569a5aa7d20f930e8 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160748 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160762 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160764 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ad1324e044240ae9fcf67e4c215481b7a35591b9 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160765 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 81cbfd5088690c53541ffd0d74851c8ab055a829 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160766 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160768 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160770 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160771 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160773 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160775 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160091 (pass), for basis pass
 Result found: flight 160736 (fail), for basis failure (at ancestor ~1)
 Repro found: flight 160737 (pass), for basis pass
 Repro found: flight 160748 (fail), for basis failure
 0 revisions at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 160766 (pass), for last pass
 Result found: flight 160768 (fail), for first failure
 Repro found: flight 160770 (pass), for last pass
 Repro found: flight 160771 (fail), for first failure
 Repro found: flight 160773 (pass), for last pass
 Repro found: flight 160775 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160775/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-libvirt-pair.guest-start--debian.{dot,ps,png,html,svg}.
----------------------------------------
160775: tolerable FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-i386-libvirt-pair 25 guest-start/debian      fail baseline untested


jobs:
 build-i386-libvirt                                           pass    
 test-amd64-i386-libvirt-pair                                 fail    


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

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

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

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



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 00:30:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 00:30:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106355.203375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTw52-0006QZ-VN; Wed, 07 Apr 2021 00:30:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106355.203375; Wed, 07 Apr 2021 00:30:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTw52-0006QS-SI; Wed, 07 Apr 2021 00:30:00 +0000
Received: by outflank-mailman (input) for mailman id 106355;
 Wed, 07 Apr 2021 00:29: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 1lTw51-0006QK-I0; Wed, 07 Apr 2021 00:29: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 1lTw51-0002sV-Bz; Wed, 07 Apr 2021 00:29: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 1lTw50-0002PH-WD; Wed, 07 Apr 2021 00:29:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTw50-0000ge-Vg; Wed, 07 Apr 2021 00:29:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=YEFtGHjCl/KQ1/iPVhnYcRFgGUh2+SxYcjL2obeGLq8=; b=1BBm5V5/xoNbZkvZGflDPQyZjA
	qfFwzd4DI6PHf6gMlqs/jGBo41r5G3BTf1g3HfdjSK93BvUsMs8ztt5o5u/QyZoqw6L8dQyL+gsCz
	5qP400ApE31C5t6+m3J9LfIPcsUnZMq4EJFjaLA7uqGd//iX8pzvaYL3iJUqtp2K704Q=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160774-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 160774: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt: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-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-win7-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-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-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-seattle: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-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-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-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=e25aa9939ae0cd8317605be3d5c5611b76bc4ab4
X-Osstest-Versions-That:
    xen=7fa14f3f525b4a2d660794424fd787cfdf9c904b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 00:29:58 +0000

flight 160774 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160774/

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 160455
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160455
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160455
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160455
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160455
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160455
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160455
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160455
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160455
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160455
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160455
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-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-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  e25aa9939ae0cd8317605be3d5c5611b76bc4ab4
baseline version:
 xen                  7fa14f3f525b4a2d660794424fd787cfdf9c904b

Last test of basis   160455  2021-03-26 20:09:16 Z   11 days
Testing same since   160774  2021-04-06 17:17:31 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Ian Jackson <iwj@xenproject.org>
  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                              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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   7fa14f3f52..e25aa9939a  e25aa9939ae0cd8317605be3d5c5611b76bc4ab4 -> stable-4.15


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 01:07:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 01:07:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106384.203461 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTwfR-0007Zh-KS; Wed, 07 Apr 2021 01:07:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106384.203461; Wed, 07 Apr 2021 01:07: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 1lTwfR-0007Za-Gv; Wed, 07 Apr 2021 01:07:37 +0000
Received: by outflank-mailman (input) for mailman id 106384;
 Wed, 07 Apr 2021 01:07: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 1lTwfQ-0007Z7-7C; Wed, 07 Apr 2021 01:07: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 1lTwfQ-0000Nm-2k; Wed, 07 Apr 2021 01:07: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 1lTwfP-0005QQ-Q5; Wed, 07 Apr 2021 01:07:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTwfP-00070F-PX; Wed, 07 Apr 2021 01:07: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=Dl80SZEifkudAf9FChRyw7a8OBewdSUS+bPmeneVU9Q=; b=3AbXSS6sYpnTfeCh9gEY4skug6
	y2+qHcNoNyDk1zkeg6JX1Kx5NU1Ng5SeNOxKY7S2p+SO5MmFXa/jlvx4JyfKZAYaSUJ0WysfBpqP3
	BjI2++L5bWYZaTaz7BBqkqyNo9iEoJcUosXO1zIUpTMKAvomq59IYe0+1ZMWKoLp74Qs=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160777-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160777: 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=19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62
X-Osstest-Versions-That:
    xen=6425fcf37122b1f1e4ceaacadd00a4c280a58f57
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 01:07:35 +0000

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

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                  19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62
baseline version:
 xen                  6425fcf37122b1f1e4ceaacadd00a4c280a58f57

Last test of basis   160772  2021-04-06 15:00:34 Z    0 days
Testing same since   160777  2021-04-06 21:02:47 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Tim Deegan <tim@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
   6425fcf371..19be4d56a1  19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62 -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 01:53:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 01:53:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106391.203476 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTxNZ-0003S6-7i; Wed, 07 Apr 2021 01:53:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106391.203476; Wed, 07 Apr 2021 01:53:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lTxNZ-0003Rx-0s; Wed, 07 Apr 2021 01:53:13 +0000
Received: by outflank-mailman (input) for mailman id 106391;
 Wed, 07 Apr 2021 01:53:12 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTxNY-0003Rp-4b; Wed, 07 Apr 2021 01:53:12 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lTxNX-00016v-Qh; Wed, 07 Apr 2021 01:53: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 1lTxNX-0008O9-IX; Wed, 07 Apr 2021 01:53:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lTxNX-0005Dx-Cp; Wed, 07 Apr 2021 01:53:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=LGFGlqFgbk/mr5Zox27uz6tuP/QqzfAcHuXQTHizNuM=; b=a7Lv1MXFt/Seu2jo8tVXnMP5un
	Li/nvHCs3Buj3zVxl4/3SheJOs1vzQPYusfac66O2fMmppYT9uQVc72tMNuCsaExIxsNsprG87Vnu
	xTwaQub2mdrp0O+PgtIoS0Es1VMc7VR+zO+Ez+hBNVXj/9nnJcPz9zUDFd/usOJo9Caw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160763-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160763: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    qemu-mainline:test-armhf-armhf-libvirt:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-libvirt-raw:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-rtds:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-xl-multivcpu:debian-install:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-xl:debian-install:fail:regression
    qemu-mainline:test-armhf-armhf-xl-vhd:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:host-install(5):broken:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=ee82c086baaa534d1af26cb8b86e86fb047af918
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 01:53:11 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken
 test-armhf-armhf-libvirt-raw    <job status>                 broken
 test-armhf-armhf-xl-arndale     <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-rtds        <job status>                 broken
 test-armhf-armhf-xl-vhd         <job status>                 broken
 test-armhf-armhf-xl-cubietruck    <job status>                 broken
 test-armhf-armhf-xl-credit2     <job status>                 broken
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-xl-multivcpu 12 debian-install          fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-xl          12 debian-install           fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-vhd       5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-arndale   5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-credit1   5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-libvirt      5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-rtds      5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-libvirt-raw  5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-credit2   5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-cubietruck  5 host-install(5)     broken blocked in 152631
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  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-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-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass

version targeted for testing:
 qemuu                ee82c086baaa534d1af26cb8b86e86fb047af918
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  229 days
Failing since        152659  2020-08-21 14:07:39 Z  228 days  429 attempts
Testing same since   160763  2021-04-06 05:41:06 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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                                  broken  
 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                                  broken  
 test-armhf-armhf-xl-cubietruck                               broken  
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     broken  
 test-amd64-i386-libvirt                                      fail    
 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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 broken  
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     broken  
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-armhf-armhf-xl-vhd                                      broken  


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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-libvirt broken
broken-job test-armhf-armhf-libvirt-raw broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-rtds broken
broken-job test-armhf-armhf-xl-vhd broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-step test-armhf-armhf-xl-vhd host-install(5)
broken-step test-armhf-armhf-xl-arndale host-install(5)
broken-step test-armhf-armhf-xl-credit1 host-install(5)
broken-step test-armhf-armhf-libvirt host-install(5)
broken-step test-armhf-armhf-xl-rtds host-install(5)
broken-step test-armhf-armhf-libvirt-raw host-install(5)
broken-step test-armhf-armhf-xl-credit2 host-install(5)
broken-step test-armhf-armhf-xl-cubietruck host-install(5)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 05:16:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 05:16:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106420.203514 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU0Y8-0004xu-9E; Wed, 07 Apr 2021 05:16:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106420.203514; Wed, 07 Apr 2021 05:16: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 1lU0Y8-0004xn-5d; Wed, 07 Apr 2021 05:16:20 +0000
Received: by outflank-mailman (input) for mailman id 106420;
 Wed, 07 Apr 2021 05:16: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 1lU0Y6-0004xf-RH; Wed, 07 Apr 2021 05:16: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 1lU0Y6-0005b2-Hl; Wed, 07 Apr 2021 05:16: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 1lU0Y6-0001gg-6Z; Wed, 07 Apr 2021 05:16:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lU0Y6-0001ZT-64; Wed, 07 Apr 2021 05:16: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=6RR8Qdc6L/uCFVXoVXeS4v5gsLootiCIUExrrVHKqYc=; b=Mt3/6Arx1yyiKQ/iJVq5Iq9s+y
	1QT19Xwt4+zFyjMZgDlRNh4OwYFpIRvYr7UdDntY+P9gs3HWOBvXaGvm1k56ZUFYzHbTnXkpVzZ7z
	Bi/6GKs28/BQocuMctNGwuRbFatxBbkZP4JIwRK2+M+uk9fC+fv5/qQwTEI8CkbYY2gU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160767-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160767: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:guests-nbd-mirror/debian:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 05:16:18 +0000

flight 160767 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160767/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken
 build-armhf                   4 host-install(4)        broken REGR. vs. 159418
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160709 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian fail in 160709 pass in 160767
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160709

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   49 days
Failing since        160128  2021-03-18 14:36:18 Z   19 days   24 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   18 days   22 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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                                                  broken  
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          blocked 
 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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          blocked 
 test-amd64-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-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                                  blocked 
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  blocked 
 test-armhf-armhf-xl-cubietruck                               blocked 
 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-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     blocked 
 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                                blocked 
 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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     blocked 
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      blocked 


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

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

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

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

broken-job build-armhf broken
broken-step build-armhf host-install(4)
broken-job build-armhf broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 07:41:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 07:41:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106439.203542 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU2oR-0001KB-Oq; Wed, 07 Apr 2021 07:41:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106439.203542; Wed, 07 Apr 2021 07:41: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 1lU2oR-0001K4-KB; Wed, 07 Apr 2021 07:41:19 +0000
Received: by outflank-mailman (input) for mailman id 106439;
 Wed, 07 Apr 2021 07:41:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gkPf=JE=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lU2oQ-0001Jz-FI
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 07:41:18 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2665a86f-4792-48ee-ae7e-194154dc4028;
 Wed, 07 Apr 2021 07:41: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: 2665a86f-4792-48ee-ae7e-194154dc4028
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617781274;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=zCAE4yNwk3sqBTDcak3L4NXwGmb+vg+Dyouu8uyVYwE=;
  b=RXyUZKu39x1ldvHGvZtKIt1I0OkILa8gUdj1ODhDzx2iMEc3w277Ch6g
   xydazt45ZtoVj0uhIiYAK62ADmOzUOUNzMpaGmtlYSSW2v4r2tghhsPUZ
   5uhe2v8uA1dJ/zR2BzdwMZGkIm10P677jLiwaQv0VELFh0Fjmmjs+h1Pi
   o=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: /0cKViS8PLRPr/JSoYZRtRM4e3CBGneKv61cZJSr45x+mYebr7Nzd2Vp/f0Jt1zwNpdLYqGBQA
 l2/9PjvhsHt0VCPkRMNypPje0uaSnCt8cF/WpwcgEtM5VlEhYpIyyBsWj1h8oLj741/b6rmM22
 YsyFRyRKiRCfygP+74htymsQwdEJHlWDBotoROwi+rrY0Sz89sprhsEsgYWT8Z5hA+Hk57hVTX
 Egopsy7+vX2p9qp0HvQbQvJnTtedoB4CuQoLbPfJ0l4VMQHjVn92jWEHNqjpkz/N43ksL2fVus
 6Aw=
X-SBRS: 5.2
X-MesageID: 40896329
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:4cGx/K8NzmMVIOVIqOhuk+EKdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qH/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7H2vanrfAIcAFof4BSO5AnC1JfBDxOa0h0COgk/o4sKzG
 6tqW3Ez5Tmid6X4Fv212jf75NZ8eGRt+drNYi3peU+bhnpggasTox9V7OFpyBdmpDS1H8a1O
 Pijj1lE8Nv627AXmzdm2qT5yDQlAwAxlWn6ViEjWDtqcb0LQhKdfZptMZiXTbyr28D1esMt5
 5j7iaimLd8SS7kpmDb4ePFUhl7/3DE2kYKoKoooFF0FbcFZKQ5l/14wGplVK0uMQjd844dHO
 xnHKjnlYxrWGLfVXzfs2V1qebcJ0gbL1ODSkgGjMSfzyJbqnB/11cZ38wShB47heoAd6U=
X-IronPort-AV: E=Sophos;i="5.82,201,1613451600"; 
   d="scan'208";a="40896329"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=adEDFZCcWO9Au/mRSaEeJeDYseixZSf7MDfQu33/o+ZOUXV3xAcuTEwDC+KyheqfipRIwtX+InSYLkiLtOSXkfr+9J4UUrp4VySgBLBtot0Wuy1jgbmVWffw5zsOYC4nfAy2BaB3xzwMo3IxoUmUq1ddlE4e+w/Zx+NqwQV8ySW/nVJ8rFL3F4HiJ1x9jKsdP1lt+g1YEUhMPLY76dNPDGMY6G+wJ4YT/qS+112FV647VziTQc6pQAmd1ftRgpeU9q7BwMWYWBSCTS8fD1sSB+X2NQKz+Hw1w9Fvm5ClXvHKZSUdZCGpfyR8wzrTjBqW6oq/XcDm535ZRV/TjFoTKw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uymxr+iC+zvFSBQtnecOE8yBY7IQlOKNP0xz1aefF8c=;
 b=KgU0dn9oRDlT3F15Ht8ewnpLEANCrjwdvmrQ+3OvAYVDQ3/Ma7tWZMZyIQFwyLXXNFMGcpojqYYHx57LA9rZtn6Ap/2Y/C5s7Vik84hN7TM+HqPvEazRvyU/pSMy5nUhWmESAGXQ3N3ya8rBuCOKKgT3kIK9FbtkpAcw2nz5otsIbm/omfhfPxDUloxikjVvs9X6RPXOBtHaqH9b5RCZvbDa48O8KU/j8c8temBUlEI9Nz6HP+pyAabsLlGptqHzih7eaggSX0PTE9apV7YYcH3tyPIBl7TMVS1pABlOXeyOzZPCbtbYS7mbpxXWAJHqq24SMkIatW8C0+srO2q8pg==
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=uymxr+iC+zvFSBQtnecOE8yBY7IQlOKNP0xz1aefF8c=;
 b=cciRsstvSCG+scsI2rUR0o+fz8iBJNamvBrymQwChyFgzviaICDdbzxghtNWV6qlmXkD44tjfj4tCx47D+SWEovbZ+nyVUUw+cbDJg/Ik6fuNWx//nw25LldeipNnX7PNnKNqoFU4VPMuacNz8mTBSmOjOLvyu4SZ2q3DRE/5hQ=
Date: Wed, 7 Apr 2021 09:41:03 +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>, Paul
 Durrant <paul@xen.org>, Paul Durrant <pdurrant@amazon.com>,
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3 01/11] x86/hvm: drop vcpu parameter from vlapic EOI
 callbacks
Message-ID: <YG1iD7ogQc5bgA+T@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-2-roger.pau@citrix.com>
 <008d8d8c-f932-c3f3-e06d-99aa6721a59f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <008d8d8c-f932-c3f3-e06d-99aa6721a59f@suse.com>
X-ClientProxiedBy: MR1P264CA0026.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::13) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: dc82f931-1030-4ebf-4b6b-08d8f99883b9
X-MS-TrafficTypeDiagnostic: DM5PR03MB2635:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2635D2C031D73DDD35E54FA28F759@DM5PR03MB2635.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: J117kttqwjV8urV7vCAa8JJfgI9UOPumaPqT+Vj9lTSi09Btr1vzirEPhIQmOuVeIv7c5aN6tOyxPnk2VLIPoEqSNTjCD7Q+gJ6IhuiiAfd6/E4b+YfE2ZDaFMJ7VbdiBqLQXiYxv9M9whroH++0qqyTGe0Jr9HoLHXxPgzSMHPRsit3EOujPDYQhw19mL728++CXdDrdn0+ZIXhmZuHL+bj+IU2yFmHKFHQaBJZya/UtULJ+1f7hMjhJpfU/RGpcxooRtfUfh0Pl/zCaRpDQ8/AAvLz5mznh1KIX/DFfvkEBti5maTA695CkX3B0rSnYni2d8e0x4Q6hM4uWcFI19cjFU6AFi11ZnwwE4fZUR4nzq+A3Vr/h0CmuOoI4djT5AWw6toIEAgYFNe5UGylzCeOlC/uRKSPyIZZxZl1v/BMe+xZB+bEEGaFs5wICHjDO4mAz7i1raGuO5Zb4tvowlQT3fUYazgQbeD7VxucSHhTJbc4ThdZ33MNIIgKgS/41xZZAzXu/HlcaCh6ZpkIrZ34tGAUDZuLFVO5/4mjHALyYsZv6Om5gH/Ilh2vjnllgXics9tJNbeqLeaxM0z8lcgUHvcu1xNe1jbI8xzNkGj0Qrn9X2uIFm5S6I+C6YmKCdPWWSqW0JeXsGu1xe7Cx9wzAubrrZmrp++c2iFWY/+kBpHcFPiQiEkf+J30vHtS
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(396003)(366004)(376002)(136003)(346002)(39850400004)(478600001)(6486002)(38100700001)(5660300002)(6496006)(8936002)(85182001)(956004)(83380400001)(33716001)(54906003)(6666004)(2906002)(66946007)(4326008)(316002)(66476007)(66556008)(9686003)(53546011)(6916009)(8676002)(86362001)(26005)(186003)(16526019)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: dc82f931-1030-4ebf-4b6b-08d8f99883b9
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 07:41:11.4389
 (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: GPvuM3NzY95M3v52p48R52ZfueBVa9/q4/Yazjg3m4rtdeAGKmP5kOYNkZz9X/7t6ONd81M/J87+uJ1nXQwHzw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2635
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 01:06:35PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:32, Roger Pau Monne wrote:
> > EOIs are always executed in guest vCPU context, so there's no reason to
> > pass a vCPU parameter around as can be fetched from current.
> 
> While not overly problematic, I'd like to point out that there's not a
> single vcpu parameter being dropped here - in both cases it's struct
> domain *.
> 
> > --- a/xen/arch/x86/hvm/vlapic.c
> > +++ b/xen/arch/x86/hvm/vlapic.c
> > @@ -459,13 +459,10 @@ void vlapic_EOI_set(struct vlapic *vlapic)
> >  
> >  void vlapic_handle_EOI(struct vlapic *vlapic, u8 vector)
> >  {
> > -    struct vcpu *v = vlapic_vcpu(vlapic);
> > -    struct domain *d = v->domain;
> > -
> >      if ( vlapic_test_vector(vector, &vlapic->regs->data[APIC_TMR]) )
> > -        vioapic_update_EOI(d, vector);
> > +        vioapic_update_EOI(vector);
> >  
> > -    hvm_dpci_msi_eoi(d, vector);
> > +    hvm_dpci_msi_eoi(vector);
> >  }
> 
> The Viridian path pointed out before was only an example. I'm afraid
> the call from vlapic_has_pending_irq() to vlapic_EOI_set() is also
> far from obvious that it always has "v == current". What we end up
> with here is a mix of passed in value (vlapic) and assumption of the
> call being for the vCPU / domain we're running on. At the very least
> I think this would want documenting here in some way (maybe ASSERT(),
> definitely mentioning in the description), but even better would
> perhaps be if the parameter of the function here as well as further
> ones involved would also be dropped then.

I've kind of attempted to purge the vlapic parameter further, but the
proper way to do it would be to audit all vlapic functions.

For example I've removed the parameter from vlapic_EOI_set and
vlapic_handle_EOI, but I'm afraid that would also raise questions
about purging it vlapic_has_pending_irq for example.

Let me know if the patch below would be acceptable, or if I should
rather not make the EOI callbacks depends on this cleanup, as I could
certainly do the cleanup later.

Thanks, Roger.
---8<---
>From 4719f5a827d3154ef763e078956792855ca84e04 Mon Sep 17 00:00:00 2001
From: Roger Pau Monne <roger.pau@citrix.com>
Date: Tue, 18 Aug 2020 16:30:06 +0200
Subject: [PATCH] x86/hvm: drop vlapic parameter from vlapic EOI helpers
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

EOIs are always executed in guest vCPU context, so there's no reason to
pass a vlapic parameter around as can be fetched from current.

This also allows to drop the domain parameter from the EOI callbacks,
and while there make the vector parameter of both callbacks unsigned
int.

The callers from vmx.c (vmx_handle_eoi_write, vmx_vmexit_handler) are
clearly using v == current, as one is the vmexit handler, and the
other is called directly from such handler.

The only caller from Viridian code halso has a check that v == current
before calling vlapic_EOI_set - so it's safe.

Finally the callers from vlapic.c itself: vlapic_reg_write will only
get called with the APIC_EOI register as a parameter from the MMIO/MSR
intercepts which run in guest context and vlapic_has_pending_irq only
gets called as part of the vm entry path to guest.

No functional change intended.

Suggested-by: Paul Durrant <pdurrant@amazon.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v3:
 - Purge passing the vcpu in the vlapic eoi call paths.

Changes since v1:
 - New in this version.
---
 xen/arch/x86/hvm/vioapic.c        |  5 +++--
 xen/arch/x86/hvm/viridian/synic.c |  2 +-
 xen/arch/x86/hvm/vlapic.c         | 31 +++++++++++++++++++++----------
 xen/arch/x86/hvm/vmx/vmx.c        |  4 ++--
 xen/drivers/passthrough/x86/hvm.c |  4 +++-
 xen/include/asm-x86/hvm/io.h      |  2 +-
 xen/include/asm-x86/hvm/vioapic.h |  2 +-
 xen/include/asm-x86/hvm/vlapic.h  |  4 ++--
 8 files changed, 34 insertions(+), 20 deletions(-)

diff --git a/xen/arch/x86/hvm/vioapic.c b/xen/arch/x86/hvm/vioapic.c
index 87370dd4172..91e5f892787 100644
--- a/xen/arch/x86/hvm/vioapic.c
+++ b/xen/arch/x86/hvm/vioapic.c
@@ -372,7 +372,7 @@ static int vioapic_write(
 
 #if VIOAPIC_VERSION_ID >= 0x20
     case VIOAPIC_REG_EOI:
-        vioapic_update_EOI(v->domain, val);
+        vioapic_update_EOI(val);
         break;
 #endif
 
@@ -514,8 +514,9 @@ void vioapic_irq_positive_edge(struct domain *d, unsigned int irq)
     }
 }
 
-void vioapic_update_EOI(struct domain *d, u8 vector)
+void vioapic_update_EOI(unsigned int vector)
 {
+    struct domain *d = current->domain;
     struct hvm_irq *hvm_irq = hvm_domain_irq(d);
     union vioapic_redir_entry *ent;
     unsigned int i;
diff --git a/xen/arch/x86/hvm/viridian/synic.c b/xen/arch/x86/hvm/viridian/synic.c
index e18538c60a6..33bd9c9bd13 100644
--- a/xen/arch/x86/hvm/viridian/synic.c
+++ b/xen/arch/x86/hvm/viridian/synic.c
@@ -93,7 +93,7 @@ int viridian_synic_wrmsr(struct vcpu *v, uint32_t idx, uint64_t val)
             ASSERT_UNREACHABLE();
             return X86EMUL_EXCEPTION;
         }
-        vlapic_EOI_set(vcpu_vlapic(v));
+        vlapic_EOI_set();
         break;
 
     case HV_X64_MSR_ICR:
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index 5e21fb4937d..111b6d902f5 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -413,9 +413,10 @@ struct vlapic *vlapic_lowest_prio(
     return target;
 }
 
-void vlapic_EOI_set(struct vlapic *vlapic)
+void vlapic_EOI_set(void)
 {
-    struct vcpu *v = vlapic_vcpu(vlapic);
+    struct vcpu *v = current;
+    struct vlapic *vlapic = vcpu_vlapic(v);
     /*
      * If APIC assist was set then an EOI may have been avoided and
      * hence this EOI actually relates to a lower priority vector.
@@ -448,7 +449,7 @@ void vlapic_EOI_set(struct vlapic *vlapic)
         alternative_vcall(hvm_funcs.handle_eoi, vector,
                           vlapic_find_highest_isr(vlapic));
 
-    vlapic_handle_EOI(vlapic, vector);
+    vlapic_handle_EOI(vector);
 
     if ( missed_eoi )
     {
@@ -457,15 +458,14 @@ void vlapic_EOI_set(struct vlapic *vlapic)
     }
 }
 
-void vlapic_handle_EOI(struct vlapic *vlapic, u8 vector)
+void vlapic_handle_EOI(uint8_t vector)
 {
-    struct vcpu *v = vlapic_vcpu(vlapic);
-    struct domain *d = v->domain;
+    struct vlapic *vlapic = vcpu_vlapic(current);
 
     if ( vlapic_test_vector(vector, &vlapic->regs->data[APIC_TMR]) )
-        vioapic_update_EOI(d, vector);
+        vioapic_update_EOI(vector);
 
-    hvm_dpci_msi_eoi(d, vector);
+    hvm_dpci_msi_eoi(vector);
 }
 
 static bool_t is_multicast_dest(struct vlapic *vlapic, unsigned int short_hand,
@@ -796,7 +796,12 @@ void vlapic_reg_write(struct vcpu *v, unsigned int reg, uint32_t val)
         break;
 
     case APIC_EOI:
-        vlapic_EOI_set(vlapic);
+        if ( v != current )
+        {
+            ASSERT_UNREACHABLE();
+            break;
+        }
+        vlapic_EOI_set();
         break;
 
     case APIC_LDR:
@@ -1303,6 +1308,12 @@ int vlapic_has_pending_irq(struct vcpu *v)
     struct vlapic *vlapic = vcpu_vlapic(v);
     int irr, isr;
 
+    if ( v != current )
+    {
+        ASSERT_UNREACHABLE();
+        return -1;
+    }
+
     if ( !vlapic_enabled(vlapic) )
         return -1;
 
@@ -1327,7 +1338,7 @@ int vlapic_has_pending_irq(struct vcpu *v)
      * with IRR.
      */
     if ( viridian_apic_assist_completed(v) )
-        vlapic_EOI_set(vlapic);
+        vlapic_EOI_set();
 
     isr = vlapic_find_highest_isr(vlapic);
 
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index b52824677e9..22e406285cf 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -3715,7 +3715,7 @@ static int vmx_handle_eoi_write(void)
          ((exit_qualification & 0xfff) == APIC_EOI) )
     {
         update_guest_eip(); /* Safe: APIC data write */
-        vlapic_EOI_set(vcpu_vlapic(current));
+        vlapic_EOI_set();
         HVMTRACE_0D(VLAPIC);
         return 1;
     }
@@ -4364,7 +4364,7 @@ void vmx_vmexit_handler(struct cpu_user_regs *regs)
 
         ASSERT(cpu_has_vmx_virtual_intr_delivery);
 
-        vlapic_handle_EOI(vcpu_vlapic(v), exit_qualification);
+        vlapic_handle_EOI(exit_qualification);
         break;
 
     case EXIT_REASON_IO_INSTRUCTION:
diff --git a/xen/drivers/passthrough/x86/hvm.c b/xen/drivers/passthrough/x86/hvm.c
index 351daafdc9b..2f6c81b1e2c 100644
--- a/xen/drivers/passthrough/x86/hvm.c
+++ b/xen/drivers/passthrough/x86/hvm.c
@@ -796,8 +796,10 @@ static int _hvm_dpci_msi_eoi(struct domain *d,
     return 0;
 }
 
-void hvm_dpci_msi_eoi(struct domain *d, int vector)
+void hvm_dpci_msi_eoi(unsigned int vector)
 {
+    struct domain *d = current->domain;
+
     if ( !is_iommu_enabled(d) ||
          (!hvm_domain_irq(d)->dpci && !is_hardware_domain(d)) )
        return;
diff --git a/xen/include/asm-x86/hvm/io.h b/xen/include/asm-x86/hvm/io.h
index 54e0161b492..8b8392ec59e 100644
--- a/xen/include/asm-x86/hvm/io.h
+++ b/xen/include/asm-x86/hvm/io.h
@@ -142,7 +142,7 @@ struct hvm_hw_stdvga {
 void stdvga_init(struct domain *d);
 void stdvga_deinit(struct domain *d);
 
-extern void hvm_dpci_msi_eoi(struct domain *d, int vector);
+extern void hvm_dpci_msi_eoi(unsigned int vector);
 
 /* Decode a PCI port IO access into a bus/slot/func/reg. */
 unsigned int hvm_pci_decode_addr(unsigned int cf8, unsigned int addr,
diff --git a/xen/include/asm-x86/hvm/vioapic.h b/xen/include/asm-x86/hvm/vioapic.h
index 36b64d20d60..882548c13b7 100644
--- a/xen/include/asm-x86/hvm/vioapic.h
+++ b/xen/include/asm-x86/hvm/vioapic.h
@@ -63,7 +63,7 @@ int vioapic_init(struct domain *d);
 void vioapic_deinit(struct domain *d);
 void vioapic_reset(struct domain *d);
 void vioapic_irq_positive_edge(struct domain *d, unsigned int irq);
-void vioapic_update_EOI(struct domain *d, u8 vector);
+void vioapic_update_EOI(unsigned int vector);
 
 int vioapic_get_mask(const struct domain *d, unsigned int gsi);
 int vioapic_get_vector(const struct domain *d, unsigned int gsi);
diff --git a/xen/include/asm-x86/hvm/vlapic.h b/xen/include/asm-x86/hvm/vlapic.h
index 8f908928c35..b693696eccb 100644
--- a/xen/include/asm-x86/hvm/vlapic.h
+++ b/xen/include/asm-x86/hvm/vlapic.h
@@ -133,8 +133,8 @@ uint32_t vlapic_set_ppr(struct vlapic *vlapic);
 
 void vlapic_adjust_i8259_target(struct domain *d);
 
-void vlapic_EOI_set(struct vlapic *vlapic);
-void vlapic_handle_EOI(struct vlapic *vlapic, u8 vector);
+void vlapic_EOI_set(void);
+void vlapic_handle_EOI(uint8_t vector);
 
 void vlapic_ipi(struct vlapic *vlapic, uint32_t icr_low, uint32_t icr_high);
 
-- 
2.30.1




From xen-devel-bounces@lists.xenproject.org Wed Apr 07 07:54:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 07:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106450.203554 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU31T-0002M2-4F; Wed, 07 Apr 2021 07:54:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106450.203554; Wed, 07 Apr 2021 07: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 1lU31T-0002Lv-1B; Wed, 07 Apr 2021 07:54:47 +0000
Received: by outflank-mailman (input) for mailman id 106450;
 Wed, 07 Apr 2021 07:54:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU31R-0002Lq-6I
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 07:54:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0af082a5-4b7c-48b6-bf0b-c729fe319e15;
 Wed, 07 Apr 2021 07:54:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5BF30AF39;
 Wed,  7 Apr 2021 07:54: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: 0af082a5-4b7c-48b6-bf0b-c729fe319e15
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617782083; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=trqA/CX1H2/rPui5/OkyYkNberezRL+pK08vzT5qvKM=;
	b=URorqoJSrfEAww9xnNhy9OcPYhXkg1Ep4KJL86SvKOHM6JqNbdxL7DbaKmBG227tGEzyqE
	MeCU/Rrzs/nhEji39fMgMUreobWZ4uVJlHyPjWeTMPW3xNj4gvTrU0gjly70V5gcrLK7Cm
	euow5NvC/C8+rxrodApVc8T++xjLuVs=
Subject: Re: [PATCH 5/5] x86: don't build unused entry code when !PV32
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: <46d83c92-0b06-fc09-4832-7a7d7935d5c2@suse.com>
 <d417d3f9-3278-ed08-1ff6-45a13b5e3757@suse.com>
 <eea7162f-bbf8-bce9-b989-2a44fe10fa99@citrix.com>
 <ba34f9cf-0815-9671-a59d-04f16397ad90@suse.com>
 <e34f599a-689c-6116-989f-407789e004f9@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <cda3a94e-33f6-8c38-2dde-795cef3fbc83@suse.com>
Date: Wed, 7 Apr 2021 09:54:40 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <e34f599a-689c-6116-989f-407789e004f9@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 06.04.2021 19:34, Andrew Cooper wrote:
> On 01/04/2021 15:37, Jan Beulich wrote:
>> On 01.04.2021 16:31, Andrew Cooper wrote:
>>> On 25/11/2020 08:51, Jan Beulich wrote:
>>>> @@ -102,19 +102,21 @@ void __dummy__(void)
>>>>      BLANK();
>>>>  #endif
>>>>  
>>>> -#ifdef CONFIG_PV
>>>> +#ifdef CONFIG_PV32
>>>>      OFFSET(DOMAIN_is_32bit_pv, struct domain, arch.pv.is_32bit);
>>> Even if PV32 is compiled out, the is_32bit field still exists, and is
>>> still necessary for crash analysis.  XCA parses this offset information
>>> as part of dissecting /proc/vmcore.
>>>
>>> It's one single bool in a fixed size allocation which we've got plenty
>>> of room in.  It can and should stay to avoid impacting the existing
>>> diagnostic tools.
>> I'm afraid I don't understand at all: I'm not removing the field.
> 
> You talked about removing it in the commit message.

Oh, in a post-commit message TBD remark, yes. Is your objection here
then merely to this possible further plan of removing that field, but
not against the changes in this patch?

>> All I'm removing is the entry for it in asm-offsets.h.
> 
> Yes, and that will break XCA, which is used by several downstreams, not
> just XenServer.
> 
> For RPM package reasons, you can't use debuginfo packages, because
> what's on disk doesn't match what's in memory until you've rebooted. 
> Livepatching adds an extra dimension of fun here.  There's not enough
> space in the vmcoreinfo page to pass enough structure information, so
> asm offsets is appended to the symbol table.  Yes its a gross hack, but
> its how things currently work.

Would you mind pointing me at where this appending is happening? You
can't mean the ELF symbol table in xen-syms - there's no entry for
DOMAIN_is_32bit_pv there. Plus I don't see the problem here, as the
asm-offsets entry already is conditional - it's merely the condition
which gets changed. Or if you mean the is_32bit field - there's no
representation there either in xen-syms (except, when enabled, in
debug info).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:01:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:01:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106457.203566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU380-0003q2-1Z; Wed, 07 Apr 2021 08:01:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106457.203566; Wed, 07 Apr 2021 08: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 1lU37z-0003pv-Ue; Wed, 07 Apr 2021 08:01:31 +0000
Received: by outflank-mailman (input) for mailman id 106457;
 Wed, 07 Apr 2021 08:01:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dICN=JE=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lU37z-0003pq-By
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:01:31 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [170.10.133.124])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 437b472c-6800-4fed-a64e-c7c27dc18db2;
 Wed, 07 Apr 2021 08:01:30 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-184-5ZccmnLQO5CYOnHN6o16WQ-1; Wed, 07 Apr 2021 04:01:25 -0400
Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com
 [10.5.11.15])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 7782C18BA280;
 Wed,  7 Apr 2021 08:01:24 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-112-38.ams2.redhat.com
 [10.36.112.38])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 158AF5D741;
 Wed,  7 Apr 2021 08:01: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: 437b472c-6800-4fed-a64e-c7c27dc18db2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1617782490;
	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=gANcOduiS5qwqHjaF+KRPhsM0SyVb9ZQmC/3XolK80E=;
	b=DnEw01bNNMzBQmVk5pSzDraODW4nKzbQOY/6x6oTejBg8JxaMkoi9Paj3vJ+PBNLhWoyQW
	dqm2CcFEHyVLEzo/FEle/eVAHN4z2gHEGPJDqHcwbnJWa8TAd8z30f7/oDQ+k9H3X7MXVd
	dcRMY4ZyxatXitfh2VIsp3+5T6NvXYs=
X-MC-Unique: 5ZccmnLQO5CYOnHN6o16WQ-1
Subject: Re: [edk2-devel] [PATCH v2 4/7] OvmfPkg/IndustryStandard: Introduce
 PageTable.h
To: devel@edk2.groups.io, thomas.lendacky@amd.com,
 Anthony PERARD <anthony.perard@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jordan Justen
 <jordan.l.justen@intel.com>, Ard Biesheuvel <ard.biesheuvel@linaro.org>,
 Julien Grall <julien@xen.org>, Brijesh Singh <brijesh.singh@amd.com>
References: <20210325154713.670104-1-anthony.perard@citrix.com>
 <20210325154713.670104-5-anthony.perard@citrix.com>
 <90eb3caa-2116-e665-7dde-3fc7198409f2@amd.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <fe267622-7c98-c1dd-6c37-49d17b4b0433@redhat.com>
Date: Wed, 7 Apr 2021 10:01:21 +0200
MIME-Version: 1.0
In-Reply-To: <90eb3caa-2116-e665-7dde-3fc7198409f2@amd.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 03/26/21 15:16, Lendacky, Thomas wrote:
> On 3/25/21 10:47 AM, Anthony PERARD wrote:
>> We are going to use the page table structure in yet another place,
>> collect the types and macro that can be used from another module
>> rather that making yet another copy.
>>
>> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
>> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> 
> This begs the question of whether there should be only one version of this
> header file, now. There are still copies in other places, but maybe that
> can be a future cleanup? I'll leave that decision to Laszlo.

Optimally the header file (a single header file) would exist solely in
MdePkg, but I'm OK with this patch too.

> 
> With one minor comment below, otherwise:
> 
> Acked-by: Tom Lendacky <thomas.lendacky@amd.com>
> 
>> ---
>> CC: Tom Lendacky <thomas.lendacky@amd.com>
>> CC: Brijesh Singh <brijesh.singh@amd.com>
>> ---
>>
>> Notes:
>>     v2:
>>     - new patch
>>
>>  .../IndustryStandard/PageTable.h}             | 117 +-------------
>>  .../BaseMemEncryptSevLib/X64/VirtualMemory.h  | 143 +-----------------
>>  2 files changed, 5 insertions(+), 255 deletions(-)
>>  copy OvmfPkg/{Library/BaseMemEncryptSevLib/X64/VirtualMemory.h => Include/IndustryStandard/PageTable.h} (60%)
>>
> 
> ...
> 
>> diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
>> index 996f94f07ebb..b621d811ca6f 100644
>> --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
>> +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
>> @@ -20,151 +20,10 @@
>>  #include <Library/DebugLib.h>
>>  #include <Library/MemoryAllocationLib.h>
>>  #include <Uefi.h>
>> +#include <IndustryStandard/PageTable.h>
> 
> Typically, these are preferred to be in sorted order.

Exactly, thanks.

Laszlo

> 
> Thanks,
> Tom
> 
>>  
>>  #define SYS_CODE64_SEL 0x38
>>  
> 
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Groups.io Links: You receive all messages sent to this group.
> View/Reply Online (#73391): https://edk2.groups.io/g/devel/message/73391
> Mute This Topic: https://groups.io/mt/81605804/1721875
> Group Owner: devel+owner@edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub [lersek@redhat.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 
> 



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:02:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:02:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106461.203578 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU39G-0003wn-DQ; Wed, 07 Apr 2021 08:02:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106461.203578; Wed, 07 Apr 2021 08:02:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU39G-0003wg-8x; Wed, 07 Apr 2021 08:02:50 +0000
Received: by outflank-mailman (input) for mailman id 106461;
 Wed, 07 Apr 2021 08:02:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dICN=JE=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lU39F-0003wb-19
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:02:49 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [170.10.133.124])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id e1a63dba-272f-4261-8376-0771010f71df;
 Wed, 07 Apr 2021 08:02:47 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-436-3vwqlkLAMi6RrwlSJkb-nQ-1; Wed, 07 Apr 2021 04:02:43 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com
 [10.5.11.11])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9C467801FD8;
 Wed,  7 Apr 2021 08:02:42 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-112-38.ams2.redhat.com
 [10.36.112.38])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 7A83C39A73;
 Wed,  7 Apr 2021 08: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: e1a63dba-272f-4261-8376-0771010f71df
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1617782567;
	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=sN1ZinGNVMiswNMJoV0Ajh8GcG1uz/4TMl5/jc3dOY0=;
	b=gXuC6a2g8Q2laYc7d3kpUUoV9xJmqEB2BHj5uUZgdkSBknA/8TNAmR93ZKMBcg/Y7ACrCb
	vCfZCS6NjwS00T8O58nDcKNY2GCR0o6d6m7BPwNQkQk27qw1OgBTSatNNtLMUdWhwfF6O/
	y7YsE6DoeA3DCdgmuNrqLT9if059u/Q=
X-MC-Unique: 3vwqlkLAMi6RrwlSJkb-nQ-1
Subject: Re: [edk2-devel] [PATCH v2 4/7] OvmfPkg/IndustryStandard: Introduce
 PageTable.h
To: devel@edk2.groups.io, anthony.perard@citrix.com
Cc: xen-devel@lists.xenproject.org, Jordan Justen
 <jordan.l.justen@intel.com>, Ard Biesheuvel <ard.biesheuvel@linaro.org>,
 Julien Grall <julien@xen.org>, Tom Lendacky <thomas.lendacky@amd.com>,
 Brijesh Singh <brijesh.singh@amd.com>
References: <20210325154713.670104-1-anthony.perard@citrix.com>
 <20210325154713.670104-5-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <0e507eda-316f-5609-1380-3239ce0d0276@redhat.com>
Date: Wed, 7 Apr 2021 10:02:39 +0200
MIME-Version: 1.0
In-Reply-To: <20210325154713.670104-5-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 03/25/21 16:47, Anthony PERARD via groups.io wrote:
> We are going to use the page table structure in yet another place,
> collect the types and macro that can be used from another module
> rather that making yet another copy.
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> ---
> CC: Tom Lendacky <thomas.lendacky@amd.com>
> CC: Brijesh Singh <brijesh.singh@amd.com>
> ---
> 
> Notes:
>     v2:
>     - new patch
> 
>  .../IndustryStandard/PageTable.h}             | 117 +-------------
>  .../BaseMemEncryptSevLib/X64/VirtualMemory.h  | 143 +-----------------
>  2 files changed, 5 insertions(+), 255 deletions(-)
>  copy OvmfPkg/{Library/BaseMemEncryptSevLib/X64/VirtualMemory.h => Include/IndustryStandard/PageTable.h} (60%)
> 
> diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h b/OvmfPkg/Include/IndustryStandard/PageTable.h
> similarity index 60%
> copy from OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> copy to OvmfPkg/Include/IndustryStandard/PageTable.h
> index 996f94f07ebb..e3da4e8cf21c 100644
> --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> +++ b/OvmfPkg/Include/IndustryStandard/PageTable.h
> @@ -1,6 +1,6 @@
>  /** @file
>  
> -  Virtual Memory Management Services to set or clear the memory encryption bit
> +  x86_64 Page Tables structures
>  
>    Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
>    Copyright (c) 2017 - 2020, AMD Incorporated. All rights reserved.<BR>
> @@ -11,17 +11,10 @@
>  
>  **/
>  
> -#ifndef __VIRTUAL_MEMORY__
> -#define __VIRTUAL_MEMORY__
> +#ifndef __PAGE_TABLE_H__
> +#define __PAGE_TABLE_H__

Should be PAGE_TABLE_H_ nowadays (no leading underscore, and one
trailing underscore suffices).

Thanks
Laszlo

>  
> -#include <Library/BaseLib.h>
> -#include <Library/BaseMemoryLib.h>
> -#include <Library/CacheMaintenanceLib.h>
> -#include <Library/DebugLib.h>
> -#include <Library/MemoryAllocationLib.h>
> -#include <Uefi.h>
> -
> -#define SYS_CODE64_SEL 0x38
> +#include <Base.h>
>  
>  #pragma pack(1)
>  
> @@ -165,106 +158,4 @@ typedef union {
>  #define PTE_OFFSET(x)               ( (x >> 12) & PAGETABLE_ENTRY_MASK)
>  #define PAGING_1G_ADDRESS_MASK_64   0x000FFFFFC0000000ull
>  
> -#define PAGE_TABLE_POOL_ALIGNMENT   BASE_2MB
> -#define PAGE_TABLE_POOL_UNIT_SIZE   SIZE_2MB
> -#define PAGE_TABLE_POOL_UNIT_PAGES  \
> -  EFI_SIZE_TO_PAGES (PAGE_TABLE_POOL_UNIT_SIZE)
> -#define PAGE_TABLE_POOL_ALIGN_MASK  \
> -  (~(EFI_PHYSICAL_ADDRESS)(PAGE_TABLE_POOL_ALIGNMENT - 1))
> -
> -typedef struct {
> -  VOID            *NextPool;
> -  UINTN           Offset;
> -  UINTN           FreePages;
> -} PAGE_TABLE_POOL;
> -
> -/**
> -  Return the pagetable memory encryption mask.
> -
> -  @return  The pagetable memory encryption mask.
> -
> -**/
> -UINT64
> -EFIAPI
> -InternalGetMemEncryptionAddressMask (
> -  VOID
> -  );
> -
> -/**
> -  This function clears memory encryption bit for the memory region specified by
> -  PhysicalAddress and Length from the current page table context.
> -
> -  @param[in]  Cr3BaseAddress          Cr3 Base Address (if zero then use
> -                                      current CR3)
> -  @param[in]  PhysicalAddress         The physical address that is the start
> -                                      address of a memory region.
> -  @param[in]  Length                  The length of memory region
> -  @param[in]  Flush                   Flush the caches before applying the
> -                                      encryption mask
> -
> -  @retval RETURN_SUCCESS              The attributes were cleared for the
> -                                      memory region.
> -  @retval RETURN_INVALID_PARAMETER    Number of pages is zero.
> -  @retval RETURN_UNSUPPORTED          Clearing the memory encyrption attribute
> -                                      is not supported
> -**/
> -RETURN_STATUS
> -EFIAPI
> -InternalMemEncryptSevSetMemoryDecrypted (
> -  IN  PHYSICAL_ADDRESS        Cr3BaseAddress,
> -  IN  PHYSICAL_ADDRESS        PhysicalAddress,
> -  IN  UINTN                   Length,
> -  IN  BOOLEAN                 Flush
> -  );
> -
> -/**
> -  This function sets memory encryption bit for the memory region specified by
> -  PhysicalAddress and Length from the current page table context.
> -
> -  @param[in]  Cr3BaseAddress          Cr3 Base Address (if zero then use
> -                                      current CR3)
> -  @param[in]  PhysicalAddress         The physical address that is the start
> -                                      address of a memory region.
> -  @param[in]  Length                  The length of memory region
> -  @param[in]  Flush                   Flush the caches before applying the
> -                                      encryption mask
> -
> -  @retval RETURN_SUCCESS              The attributes were set for the memory
> -                                      region.
> -  @retval RETURN_INVALID_PARAMETER    Number of pages is zero.
> -  @retval RETURN_UNSUPPORTED          Setting the memory encyrption attribute
> -                                      is not supported
> -**/
> -RETURN_STATUS
> -EFIAPI
> -InternalMemEncryptSevSetMemoryEncrypted (
> -  IN  PHYSICAL_ADDRESS        Cr3BaseAddress,
> -  IN  PHYSICAL_ADDRESS        PhysicalAddress,
> -  IN  UINTN                   Length,
> -  IN  BOOLEAN                 Flush
> -  );
> -
> -/**
> -  Returns the encryption state of the specified virtual address range.
> -
> -  @param[in]  Cr3BaseAddress          Cr3 Base Address (if zero then use
> -                                      current CR3)
> -  @param[in]  BaseAddress             Base address to check
> -  @param[in]  Length                  Length of virtual address range
> -
> -  @retval MemEncryptSevAddressRangeUnencrypted  Address range is mapped
> -                                                unencrypted
> -  @retval MemEncryptSevAddressRangeEncrypted    Address range is mapped
> -                                                encrypted
> -  @retval MemEncryptSevAddressRangeMixed        Address range is mapped mixed
> -  @retval MemEncryptSevAddressRangeError        Address range is not mapped
> -**/
> -MEM_ENCRYPT_SEV_ADDRESS_RANGE_STATE
> -EFIAPI
> -InternalMemEncryptSevGetAddressRangeState (
> -  IN PHYSICAL_ADDRESS         Cr3BaseAddress,
> -  IN PHYSICAL_ADDRESS         BaseAddress,
> -  IN UINTN                    Length
> -  );
> -
>  #endif
> diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> index 996f94f07ebb..b621d811ca6f 100644
> --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> @@ -20,151 +20,10 @@
>  #include <Library/DebugLib.h>
>  #include <Library/MemoryAllocationLib.h>
>  #include <Uefi.h>
> +#include <IndustryStandard/PageTable.h>
>  
>  #define SYS_CODE64_SEL 0x38
>  
> -#pragma pack(1)
> -
> -//
> -// Page-Map Level-4 Offset (PML4) and
> -// Page-Directory-Pointer Offset (PDPE) entries 4K & 2MB
> -//
> -
> -typedef union {
> -  struct {
> -    UINT64  Present:1;                // 0 = Not present in memory,
> -                                      //   1 = Present in memory
> -    UINT64  ReadWrite:1;              // 0 = Read-Only, 1= Read/Write
> -    UINT64  UserSupervisor:1;         // 0 = Supervisor, 1=User
> -    UINT64  WriteThrough:1;           // 0 = Write-Back caching,
> -                                      //   1 = Write-Through caching
> -    UINT64  CacheDisabled:1;          // 0 = Cached, 1=Non-Cached
> -    UINT64  Accessed:1;               // 0 = Not accessed,
> -                                      //   1 = Accessed (set by CPU)
> -    UINT64  Reserved:1;               // Reserved
> -    UINT64  MustBeZero:2;             // Must Be Zero
> -    UINT64  Available:3;              // Available for use by system software
> -    UINT64  PageTableBaseAddress:40;  // Page Table Base Address
> -    UINT64  AvabilableHigh:11;        // Available for use by system software
> -    UINT64  Nx:1;                     // No Execute bit
> -  } Bits;
> -  UINT64    Uint64;
> -} PAGE_MAP_AND_DIRECTORY_POINTER;
> -
> -//
> -// Page Table Entry 4KB
> -//
> -typedef union {
> -  struct {
> -    UINT64  Present:1;                // 0 = Not present in memory,
> -                                      //   1 = Present in memory
> -    UINT64  ReadWrite:1;              // 0 = Read-Only, 1= Read/Write
> -    UINT64  UserSupervisor:1;         // 0 = Supervisor, 1=User
> -    UINT64  WriteThrough:1;           // 0 = Write-Back caching,
> -                                      //   1 = Write-Through caching
> -    UINT64  CacheDisabled:1;          // 0 = Cached, 1=Non-Cached
> -    UINT64  Accessed:1;               // 0 = Not accessed,
> -                                      //   1 = Accessed (set by CPU)
> -    UINT64  Dirty:1;                  // 0 = Not Dirty, 1 = written by
> -                                      //   processor on access to page
> -    UINT64  PAT:1;                    //
> -    UINT64  Global:1;                 // 0 = Not global page, 1 = global page
> -                                      //   TLB not cleared on CR3 write
> -    UINT64  Available:3;              // Available for use by system software
> -    UINT64  PageTableBaseAddress:40;  // Page Table Base Address
> -    UINT64  AvabilableHigh:11;        // Available for use by system software
> -    UINT64  Nx:1;                     // 0 = Execute Code,
> -                                      //   1 = No Code Execution
> -  } Bits;
> -  UINT64    Uint64;
> -} PAGE_TABLE_4K_ENTRY;
> -
> -//
> -// Page Table Entry 2MB
> -//
> -typedef union {
> -  struct {
> -    UINT64  Present:1;                // 0 = Not present in memory,
> -                                      //   1 = Present in memory
> -    UINT64  ReadWrite:1;              // 0 = Read-Only, 1= Read/Write
> -    UINT64  UserSupervisor:1;         // 0 = Supervisor, 1=User
> -    UINT64  WriteThrough:1;           // 0 = Write-Back caching,
> -                                      //   1=Write-Through caching
> -    UINT64  CacheDisabled:1;          // 0 = Cached, 1=Non-Cached
> -    UINT64  Accessed:1;               // 0 = Not accessed,
> -                                      //   1 = Accessed (set by CPU)
> -    UINT64  Dirty:1;                  // 0 = Not Dirty, 1 = written by
> -                                      //   processor on access to page
> -    UINT64  MustBe1:1;                // Must be 1
> -    UINT64  Global:1;                 // 0 = Not global page, 1 = global page
> -                                      //   TLB not cleared on CR3 write
> -    UINT64  Available:3;              // Available for use by system software
> -    UINT64  PAT:1;                    //
> -    UINT64  MustBeZero:8;             // Must be zero;
> -    UINT64  PageTableBaseAddress:31;  // Page Table Base Address
> -    UINT64  AvabilableHigh:11;        // Available for use by system software
> -    UINT64  Nx:1;                     // 0 = Execute Code,
> -                                      //   1 = No Code Execution
> -  } Bits;
> -  UINT64    Uint64;
> -} PAGE_TABLE_ENTRY;
> -
> -//
> -// Page Table Entry 1GB
> -//
> -typedef union {
> -  struct {
> -    UINT64  Present:1;                // 0 = Not present in memory,
> -                                      //   1 = Present in memory
> -    UINT64  ReadWrite:1;              // 0 = Read-Only, 1= Read/Write
> -    UINT64  UserSupervisor:1;         // 0 = Supervisor, 1=User
> -    UINT64  WriteThrough:1;           // 0 = Write-Back caching,
> -                                      //   1 = Write-Through caching
> -    UINT64  CacheDisabled:1;          // 0 = Cached, 1=Non-Cached
> -    UINT64  Accessed:1;               // 0 = Not accessed,
> -                                      //   1 = Accessed (set by CPU)
> -    UINT64  Dirty:1;                  // 0 = Not Dirty, 1 = written by
> -                                      //   processor on access to page
> -    UINT64  MustBe1:1;                // Must be 1
> -    UINT64  Global:1;                 // 0 = Not global page, 1 = global page
> -                                      //   TLB not cleared on CR3 write
> -    UINT64  Available:3;              // Available for use by system software
> -    UINT64  PAT:1;                    //
> -    UINT64  MustBeZero:17;            // Must be zero;
> -    UINT64  PageTableBaseAddress:22;  // Page Table Base Address
> -    UINT64  AvabilableHigh:11;        // Available for use by system software
> -    UINT64  Nx:1;                     // 0 = Execute Code,
> -                                      //   1 = No Code Execution
> -  } Bits;
> -  UINT64    Uint64;
> -} PAGE_TABLE_1G_ENTRY;
> -
> -#pragma pack()
> -
> -#define IA32_PG_P                   BIT0
> -#define IA32_PG_RW                  BIT1
> -#define IA32_PG_PS                  BIT7
> -
> -#define PAGING_PAE_INDEX_MASK       0x1FF
> -
> -#define PAGING_4K_ADDRESS_MASK_64   0x000FFFFFFFFFF000ull
> -#define PAGING_2M_ADDRESS_MASK_64   0x000FFFFFFFE00000ull
> -#define PAGING_1G_ADDRESS_MASK_64   0x000FFFFFC0000000ull
> -
> -#define PAGING_L1_ADDRESS_SHIFT     12
> -#define PAGING_L2_ADDRESS_SHIFT     21
> -#define PAGING_L3_ADDRESS_SHIFT     30
> -#define PAGING_L4_ADDRESS_SHIFT     39
> -
> -#define PAGING_PML4E_NUMBER         4
> -
> -#define PAGETABLE_ENTRY_MASK        ((1UL << 9) - 1)
> -#define PML4_OFFSET(x)              ( (x >> 39) & PAGETABLE_ENTRY_MASK)
> -#define PDP_OFFSET(x)               ( (x >> 30) & PAGETABLE_ENTRY_MASK)
> -#define PDE_OFFSET(x)               ( (x >> 21) & PAGETABLE_ENTRY_MASK)
> -#define PTE_OFFSET(x)               ( (x >> 12) & PAGETABLE_ENTRY_MASK)
> -#define PAGING_1G_ADDRESS_MASK_64   0x000FFFFFC0000000ull
> -
>  #define PAGE_TABLE_POOL_ALIGNMENT   BASE_2MB
>  #define PAGE_TABLE_POOL_UNIT_SIZE   SIZE_2MB
>  #define PAGE_TABLE_POOL_UNIT_PAGES  \
> 



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:04:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:04:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106465.203589 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3Ay-00045k-On; Wed, 07 Apr 2021 08:04:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106465.203589; Wed, 07 Apr 2021 08:04: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 1lU3Ay-00045d-LI; Wed, 07 Apr 2021 08:04:36 +0000
Received: by outflank-mailman (input) for mailman id 106465;
 Wed, 07 Apr 2021 08:04:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dICN=JE=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lU3Ax-00045Y-Lu
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:04:35 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [216.205.24.124])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 2d0268b1-a610-478d-8e41-a265eff2a063;
 Wed, 07 Apr 2021 08:04:34 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-349-KSnMusMUPpGi3c3V_F3oow-1; Wed, 07 Apr 2021 04:04:32 -0400
Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com
 [10.5.11.14])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 6304F87A82A;
 Wed,  7 Apr 2021 08:04:30 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-112-38.ams2.redhat.com
 [10.36.112.38])
 by smtp.corp.redhat.com (Postfix) with ESMTP id AC4315D9CA;
 Wed,  7 Apr 2021 08:04: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: 2d0268b1-a610-478d-8e41-a265eff2a063
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1617782673;
	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=R9wKNfs/mx3B02u3rgk/SB38aU2+GaTZNcuqxhCzdps=;
	b=iunuBBc3R6wZShsjrWStJP3+/GBhWIwN9+z1EPUI4c0G0bpoJ8KzAgNPkyyE/g5t2cqTYZ
	to/8Yu8WXk650LvfIK82PxEbv7GqSHwF6dw9CZ92r+MKfJRqk+Wiy70pXZeOG4X25c5XHQ
	geH2GUNh9r84meV7ajcQxa2aUQ4K2Fs=
X-MC-Unique: KSnMusMUPpGi3c3V_F3oow-1
Subject: Re: [edk2-devel] [PATCH v2 4/7] OvmfPkg/IndustryStandard: Introduce
 PageTable.h
To: devel@edk2.groups.io, anthony.perard@citrix.com
Cc: xen-devel@lists.xenproject.org, Jordan Justen
 <jordan.l.justen@intel.com>, Ard Biesheuvel <ard.biesheuvel@linaro.org>,
 Julien Grall <julien@xen.org>, Tom Lendacky <thomas.lendacky@amd.com>,
 Brijesh Singh <brijesh.singh@amd.com>
References: <20210325154713.670104-1-anthony.perard@citrix.com>
 <20210325154713.670104-5-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <26db5675-e40d-9076-5fb3-238c975f9279@redhat.com>
Date: Wed, 7 Apr 2021 10:04:27 +0200
MIME-Version: 1.0
In-Reply-To: <20210325154713.670104-5-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 03/25/21 16:47, Anthony PERARD via groups.io wrote:
> We are going to use the page table structure in yet another place,
> collect the types and macro that can be used from another module
> rather that making yet another copy.

s/rather that/rather than/



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:07:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:07:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106473.203602 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3DP-0004FK-BT; Wed, 07 Apr 2021 08:07:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106473.203602; Wed, 07 Apr 2021 08:07: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 1lU3DP-0004FD-6x; Wed, 07 Apr 2021 08:07:07 +0000
Received: by outflank-mailman (input) for mailman id 106473;
 Wed, 07 Apr 2021 08:07:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dICN=JE=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lU3DN-0004F6-4Y
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:07:05 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [216.205.24.124])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 0a1d9167-eec6-4301-9703-f8b74984b7e9;
 Wed, 07 Apr 2021 08:07:03 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-163-WRTpvZedOoivA-J0LtspUw-1; Wed, 07 Apr 2021 04:06:59 -0400
Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com
 [10.5.11.15])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3266A6D581;
 Wed,  7 Apr 2021 08:06:58 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-112-38.ams2.redhat.com
 [10.36.112.38])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 9123D5D741;
 Wed,  7 Apr 2021 08:06: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: 0a1d9167-eec6-4301-9703-f8b74984b7e9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1617782823;
	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=rIgI5t2tSBrrkuCORu9Ievvg2djrabuQwl03488kG6o=;
	b=iWaPgNM49yfCcS697qHcuhXuoBO/k0A8H0VNqKY3iYK8CLIXPX0199i+d2x8VHhhX0+baf
	iY9d68LsyVAj/NBlCeD3P6JBwQWmJmvUbHU80IEFTP9h/2zda8JbfQZx/ThiV1o0bs6uTD
	VCOoVWLME1l6krjX2DAYYKKLWbCy//k=
X-MC-Unique: WRTpvZedOoivA-J0LtspUw-1
Subject: Re: [edk2-devel] [PATCH v2 5/7] OvmfPkg/XenPlatformPei: Map extra
 physical address
To: devel@edk2.groups.io, anthony.perard@citrix.com
Cc: xen-devel@lists.xenproject.org, Jordan Justen
 <jordan.l.justen@intel.com>, Ard Biesheuvel <ard.biesheuvel@linaro.org>,
 Julien Grall <julien@xen.org>
References: <20210325154713.670104-1-anthony.perard@citrix.com>
 <20210325154713.670104-6-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <9942168e-a882-67d2-a0d5-00b511d55aad@redhat.com>
Date: Wed, 7 Apr 2021 10:06:55 +0200
MIME-Version: 1.0
In-Reply-To: <20210325154713.670104-6-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 03/25/21 16:47, Anthony PERARD via groups.io wrote:
> Some information available in a Xen guest can be mapped anywhere in
> the physical address space and they don't need to be backed by RAM.
> For example, the shared info page.
> 
> While it's easier to put those pages anywhere, it is better to avoid
> mapping it where the RAM is. It might split a nice 1G guest page table
> into 4k pages and thus reducing performance of the guest when it
> access its memory. Also mapping a page like the shared info page and

s/access/accesses/

> then unmapping it or mapping it somewhere else would live a hole in

s/live/leave/

> the RAM that the guest would propably not been able to use anymore.

s/been/be/

> 
> So the patch introduce a new function which can be used to 1:1

s/introduce/introduces/

> mapping of guest physical memory above 4G during the PEI phase so we
> can map the Xen shared pages outside of memory that can be used by
> guest, and as high as possible.
> 
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> ---
> 
> Notes:
>     v2:
>     - new patch

With the typo fixes:

Acked-by: Laszlo Ersek <lersek@redhat.com>

Thanks
Laszlo

> 
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf |  1 +
>  OvmfPkg/XenPlatformPei/Platform.h         |  5 ++
>  OvmfPkg/XenPlatformPei/Xen.c              | 71 +++++++++++++++++++++++
>  3 files changed, 77 insertions(+)
> 
> diff --git a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> index 0ef77db92c03..8790d907d3ec 100644
> --- a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> +++ b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> @@ -66,6 +66,7 @@ [Pcd]
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvSize
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvBase
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvSize
> +  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesBase
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageBase
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageSize
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId
> diff --git a/OvmfPkg/XenPlatformPei/Platform.h b/OvmfPkg/XenPlatformPei/Platform.h
> index 7661f4a8de0a..e70ca58078eb 100644
> --- a/OvmfPkg/XenPlatformPei/Platform.h
> +++ b/OvmfPkg/XenPlatformPei/Platform.h
> @@ -127,6 +127,11 @@ XenGetE820Map (
>    UINT32 *Count
>    );
>  
> +EFI_STATUS
> +PhysicalAddressIdentityMapping (
> +  IN EFI_PHYSICAL_ADDRESS AddressToMap
> +  );
> +
>  extern EFI_BOOT_MODE mBootMode;
>  
>  extern UINT8 mPhysMemAddressWidth;
> diff --git a/OvmfPkg/XenPlatformPei/Xen.c b/OvmfPkg/XenPlatformPei/Xen.c
> index c41fecdc486e..b2a7d1c21dac 100644
> --- a/OvmfPkg/XenPlatformPei/Xen.c
> +++ b/OvmfPkg/XenPlatformPei/Xen.c
> @@ -17,6 +17,8 @@
>  //
>  // The Library classes this module consumes
>  //
> +#include <Library/BaseMemoryLib.h>
> +#include <Library/CpuLib.h>
>  #include <Library/DebugLib.h>
>  #include <Library/HobLib.h>
>  #include <Library/MemoryAllocationLib.h>
> @@ -25,6 +27,7 @@
>  #include <IndustryStandard/E820.h>
>  #include <Library/ResourcePublicationLib.h>
>  #include <Library/MtrrLib.h>
> +#include <IndustryStandard/PageTable.h>
>  #include <IndustryStandard/Xen/arch-x86/hvm/start_info.h>
>  #include <Library/XenHypercallLib.h>
>  #include <IndustryStandard/Xen/memory.h>
> @@ -386,3 +389,71 @@ InitializeXen (
>  
>    return EFI_SUCCESS;
>  }
> +
> +EFI_STATUS
> +PhysicalAddressIdentityMapping (
> +  IN EFI_PHYSICAL_ADDRESS   AddressToMap
> +  )
> +{
> +  INTN                            Index;
> +  PAGE_MAP_AND_DIRECTORY_POINTER  *L4, *L3;
> +  PAGE_TABLE_ENTRY                *PageTable;
> +
> +  DEBUG ((DEBUG_INFO, "Mapping 1:1 of address 0x%lx\n", (UINT64)AddressToMap));
> +
> +  // L4 / Top level Page Directory Pointers
> +
> +  L4 = (VOID*)(UINTN)PcdGet32 (PcdOvmfSecPageTablesBase);
> +  Index = PML4_OFFSET (AddressToMap);
> +
> +  if (!L4[Index].Bits.Present) {
> +    L3 = AllocatePages (1);
> +    if (L3 == NULL) {
> +      return EFI_OUT_OF_RESOURCES;
> +    }
> +
> +    ZeroMem (L3, EFI_PAGE_SIZE);
> +
> +    L4[Index].Bits.ReadWrite = 1;
> +    L4[Index].Bits.Accessed = 1;
> +    L4[Index].Bits.PageTableBaseAddress = (EFI_PHYSICAL_ADDRESS)L3 >> 12;
> +    L4[Index].Bits.Present = 1;
> +  }
> +
> +  // L3 / Next level Page Directory Pointers
> +
> +  L3 = (VOID*)(EFI_PHYSICAL_ADDRESS)(L4[Index].Bits.PageTableBaseAddress << 12);
> +  Index = PDP_OFFSET (AddressToMap);
> +
> +  if (!L3[Index].Bits.Present) {
> +    PageTable = AllocatePages (1);
> +    if (PageTable == NULL) {
> +      return EFI_OUT_OF_RESOURCES;
> +    }
> +
> +    ZeroMem (PageTable, EFI_PAGE_SIZE);
> +
> +    L3[Index].Bits.ReadWrite = 1;
> +    L3[Index].Bits.Accessed = 1;
> +    L3[Index].Bits.PageTableBaseAddress = (EFI_PHYSICAL_ADDRESS)PageTable >> 12;
> +    L3[Index].Bits.Present = 1;
> +  }
> +
> +  // L2 / Page Table Entries
> +
> +  PageTable = (VOID*)(EFI_PHYSICAL_ADDRESS)(L3[Index].Bits.PageTableBaseAddress << 12);
> +  Index = PDE_OFFSET (AddressToMap);
> +
> +  if (!PageTable[Index].Bits.Present) {
> +    PageTable[Index].Bits.ReadWrite = 1;
> +    PageTable[Index].Bits.Accessed = 1;
> +    PageTable[Index].Bits.Dirty = 1;
> +    PageTable[Index].Bits.MustBe1 = 1;
> +    PageTable[Index].Bits.PageTableBaseAddress = AddressToMap >> 21;
> +    PageTable[Index].Bits.Present = 1;
> +  }
> +
> +  CpuFlushTlb ();
> +
> +  return EFI_SUCCESS;
> +}
> 



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:11:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:11:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106479.203613 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3H9-00056S-SQ; Wed, 07 Apr 2021 08:10:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106479.203613; Wed, 07 Apr 2021 08: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 1lU3H9-00056L-P8; Wed, 07 Apr 2021 08:10:59 +0000
Received: by outflank-mailman (input) for mailman id 106479;
 Wed, 07 Apr 2021 08:10:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU3H9-00056G-2H
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:10:59 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 33e2a9b9-9962-4de6-85cb-6da6f8125a81;
 Wed, 07 Apr 2021 08:10:57 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E30A8B034;
 Wed,  7 Apr 2021 08:10: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: 33e2a9b9-9962-4de6-85cb-6da6f8125a81
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617783057; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=PquThFOMTwaNicJvaDnFaX3BSOJwDBk2RiGpkgkCpJg=;
	b=RxmLto6bKPEKtGMrZwuiM5fiAHdjiAc1SlVwSlCzyziFKqbh+0SM8AuN0aKn9DVUoKy2T+
	BstdUIsDWZX/bkP1hB848qzolRwu7tSMKBYbEKuFxYnjEuecZYrHBAMe6vPbfvP6WChi+z
	HqB6itmTId7jPFaRNInvKXB2x7O/ZHA=
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Luca Fancellu <luca.fancellu@arm.com>, bertrand.marquis@arm.com,
 wei.chen@arm.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
Date: Wed, 7 Apr 2021 10:10:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 23:46, Stefano Stabellini wrote:
> On Tue, 6 Apr 2021, Jan Beulich wrote:
>> On 06.04.2021 12:36, Luca Fancellu wrote:
>>> Modification to include/public/grant_table.h:
>>>
>>> 1) Change anonymous structure to be named structure,
>>>    because doxygen can't deal with them.
>>
>> Especially in the form presented (adding further name space clutter
>> for consumers to fall over) I object to this, most notably ...
>>
>>> @@ -584,7 +599,7 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
>>>   * page granted to the calling domain by a foreign domain.
>>>   */
>>>  struct gnttab_cache_flush {
>>> -    union {
>>> +    union a {
>>
>> ... this one.
> 
> It is unfortunate that none of these tools support anonymous structs or
> unions well. (You might recall we also had issues with the older
> kernel-doc series too, although a bit different.)

While I wouldn't veto such changes, I think it is a very bad approach
to make adjustments like this to cover for a docs tool shortcoming.
Is it entirely unreasonable to have the tool fixed? In fact, if the
issue was run into before, isn't it a bad sign that the tool hasn't
been fixed already, and we merely need to require a certain minimum
version?

> It is difficult to provide a good name here, a suggestion would be more
> than welcome. I agree with you that calling it "a" is a bad idea: "a"
> becomes a globally-visible union name.
> 
> Maybe we could call it: StructName_MemberName, so in this case:
> 
>   union gnttab_cache_flush_a
> 
> It makes sure it is unique and doesn't risk clashing with anything else.
> We can follow this pattern elsewhere as well.
> 
> Any better suggestions?

First and foremost any new additions ought to use a xen_, Xen_, or
XEN_ prefix. For the specific case here, since "a" is already a
rather bad choice for a member name (What does it stand for? In lieu
of any better name we typically use "u" in such cases.), the badness
shouldn't be extended. Sadly the ref as being one way of expressing
the target MFN is also not accompanied by a GFN (as it ought to be),
but an address. Otherwise I would have suggested to abstract the
similar union also used by struct gnttab_copy. In the end I can't
see many alternatives to something like xen_gnttab_cache_flush_target
or xen_gnttab_cache_flush_ref_or_addr.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:19:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:19:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106484.203626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3PX-0005Ml-Oa; Wed, 07 Apr 2021 08:19:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106484.203626; Wed, 07 Apr 2021 08: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 1lU3PX-0005Me-Kn; Wed, 07 Apr 2021 08:19:39 +0000
Received: by outflank-mailman (input) for mailman id 106484;
 Wed, 07 Apr 2021 08:19:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU3PW-0005MZ-J0
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:19:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 19b89150-bb8e-4802-94e8-de7a37539cbc;
 Wed, 07 Apr 2021 08:19:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9C658AF5B;
 Wed,  7 Apr 2021 08:19: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: 19b89150-bb8e-4802-94e8-de7a37539cbc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617783576; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5DOmN8NRGNgnN84zJwiel2ZFk/Vce38vq7LYdud60cw=;
	b=ofVq58Rii71EjpZndDxnI2QvBMI4cP3S+/g8aEw6WpodQBMtCnoEknFd6sHnq4Y2/kOMl3
	wRalET3NoS/wxoisfh0Vv3BHTUWM9tCeT/gyfKqx4MVXGOCP3yjk2NuxTBgBaqkiklZV/f
	F7WElaH8sWHFz1PkeAHFHP4KLBeQXeg=
Subject: Re: [PATCH v3 01/11] x86/hvm: drop vcpu parameter from vlapic EOI
 callbacks
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>,
 Paul Durrant <paul@xen.org>, Paul Durrant <pdurrant@amazon.com>,
 xen-devel@lists.xenproject.org
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-2-roger.pau@citrix.com>
 <008d8d8c-f932-c3f3-e06d-99aa6721a59f@suse.com>
 <YG1iD7ogQc5bgA+T@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <2639b65c-a3a8-2a43-8db5-495d4c399376@suse.com>
Date: Wed, 7 Apr 2021 10:19:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YG1iD7ogQc5bgA+T@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 07.04.2021 09:41, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 01:06:35PM +0200, Jan Beulich wrote:
>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>> EOIs are always executed in guest vCPU context, so there's no reason to
>>> pass a vCPU parameter around as can be fetched from current.
>>
>> While not overly problematic, I'd like to point out that there's not a
>> single vcpu parameter being dropped here - in both cases it's struct
>> domain *.
>>
>>> --- a/xen/arch/x86/hvm/vlapic.c
>>> +++ b/xen/arch/x86/hvm/vlapic.c
>>> @@ -459,13 +459,10 @@ void vlapic_EOI_set(struct vlapic *vlapic)
>>>  
>>>  void vlapic_handle_EOI(struct vlapic *vlapic, u8 vector)
>>>  {
>>> -    struct vcpu *v = vlapic_vcpu(vlapic);
>>> -    struct domain *d = v->domain;
>>> -
>>>      if ( vlapic_test_vector(vector, &vlapic->regs->data[APIC_TMR]) )
>>> -        vioapic_update_EOI(d, vector);
>>> +        vioapic_update_EOI(vector);
>>>  
>>> -    hvm_dpci_msi_eoi(d, vector);
>>> +    hvm_dpci_msi_eoi(vector);
>>>  }
>>
>> The Viridian path pointed out before was only an example. I'm afraid
>> the call from vlapic_has_pending_irq() to vlapic_EOI_set() is also
>> far from obvious that it always has "v == current". What we end up
>> with here is a mix of passed in value (vlapic) and assumption of the
>> call being for the vCPU / domain we're running on. At the very least
>> I think this would want documenting here in some way (maybe ASSERT(),
>> definitely mentioning in the description), but even better would
>> perhaps be if the parameter of the function here as well as further
>> ones involved would also be dropped then.
> 
> I've kind of attempted to purge the vlapic parameter further, but the
> proper way to do it would be to audit all vlapic functions.
> 
> For example I've removed the parameter from vlapic_EOI_set and
> vlapic_handle_EOI, but I'm afraid that would also raise questions
> about purging it vlapic_has_pending_irq for example.
> 
> Let me know if the patch below would be acceptable, or if I should
> rather not make the EOI callbacks depends on this cleanup, as I could
> certainly do the cleanup later.

While I'm not opposed in principle, the patch moves us further away
from what Andrew has asked for (to retain the vcpu pointers), if I
understood him correctly. I'm also not entirely certain if there
couldn't be, down the road, emulators needing to signal an EOI to
Xen on behalf of a guest.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:22:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:22:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106489.203637 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3SA-0006Eh-60; Wed, 07 Apr 2021 08:22:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106489.203637; Wed, 07 Apr 2021 08:22:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3SA-0006Ea-34; Wed, 07 Apr 2021 08:22:22 +0000
Received: by outflank-mailman (input) for mailman id 106489;
 Wed, 07 Apr 2021 08:22:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU3S8-0006EV-HG
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:22:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fe0acf2b-6174-45c6-b005-2b425ca1574f;
 Wed, 07 Apr 2021 08:22:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D3540B02A;
 Wed,  7 Apr 2021 08:22: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: fe0acf2b-6174-45c6-b005-2b425ca1574f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617783739; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=eLoWE++Hfb0OXAUTvq0iO3BKXC4CXas3soxCDljI5AY=;
	b=Kzp6j83t4Ebl64A+AVlG/QI0D0vnjibDBDgAVlTLCwvLYKqJqkd12hVIY8rveTOs6ASM2N
	/CGxiv4U+ygpTE/8nsM7R3RKTX9jIU3PfCuofzAEj5UCLTHN7XTG8fJ7xfneDqFyvYJllX
	CeWOCByYOU51S1eEYYIYD9ODPjM0JTE=
Subject: Re: [PATCH 02/14] xen/sched: Constify name and opt_name in struct
 scheduler
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>, George Dunlap
 <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>,
 xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-3-julien@xen.org>
 <5618bed6-a213-d2c9-4cbf-d95cb4dc02b4@suse.com>
 <00a75c04-fad1-7061-ac39-a811f442db05@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c0648f0f-7384-1556-5693-b8ca431674a8@suse.com>
Date: Wed, 7 Apr 2021 10:22:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <00a75c04-fad1-7061-ac39-a811f442db05@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 06.04.2021 20:24, Julien Grall wrote:
> Hi Jan,
> 
> On 06/04/2021 09:07, Jan Beulich wrote:
>> On 05.04.2021 17:57, Julien Grall wrote:
>>> From: Julien Grall <jgrall@amazon.com>
>>>
>>> Both name and opt_name are pointing to literal string. So mark both of
>>> the fields as const.
>>>
>>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>
>> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>> albeit ...
>>
>>> --- a/xen/common/sched/private.h
>>> +++ b/xen/common/sched/private.h
>>> @@ -272,8 +272,8 @@ static inline spinlock_t *pcpu_schedule_trylock(unsigned int cpu)
>>>   }
>>>   
>>>   struct scheduler {
>>> -    char *name;             /* full name for this scheduler      */
>>> -    char *opt_name;         /* option name for this scheduler    */
>>> +    const char *name;       /* full name for this scheduler      */
>>> +    const char *opt_name;   /* option name for this scheduler    */
>>
>> ... I'd like to suggest considering at least the latter to become
>> an array instead of a pointer - there's little point wasting 8
>> bytes of storage for the pointer when the strings pointed to are
>> all at most 9 bytes long (right now; I don't expect much longer
>> ones to appear).
> 
> I have tried this simple/dumb change on top of my patch:
> 
> diff --git a/xen/common/sched/private.h b/xen/common/sched/private.h
> index a870320146ef..ab2236874217 100644
> --- a/xen/common/sched/private.h
> +++ b/xen/common/sched/private.h
> @@ -273,7 +273,7 @@ static inline spinlock_t 
> *pcpu_schedule_trylock(unsigned int cpu)
> 
>   struct scheduler {
>       const char *name;       /* full name for this scheduler      */
> -    const char *opt_name;   /* option name for this scheduler    */
> +    const char opt_name[9]; /* option name for this scheduler    */
>       unsigned int sched_id;  /* ID for this scheduler             */
>       void *sched_data;       /* global data pointer               */
>       struct cpupool *cpupool;/* points to this scheduler's pool   */
> 
> GCC will throw an error:
> 
> core.c: In function ‘scheduler_init’:
> core.c:2987:17: error: assignment of read-only variable ‘ops’
>               ops = *schedulers[i];
>                   ^
> core.c:2997:21: error: assignment of read-only variable ‘ops’
>                   ops = *schedulers[i];
>                       ^
> 
> I don't particularly want to drop the const. So the code would probably 
> need some rework.

What's wrong with not having the const when the field is an array?
The more that all original (build-time, i.e. contain in the binary)
instances of the struct are already const as a whole?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:28:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:28:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106495.203649 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3YK-0006Rp-TY; Wed, 07 Apr 2021 08:28:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106495.203649; Wed, 07 Apr 2021 08: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 1lU3YK-0006Ri-Py; Wed, 07 Apr 2021 08:28:44 +0000
Received: by outflank-mailman (input) for mailman id 106495;
 Wed, 07 Apr 2021 08:28:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dICN=JE=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lU3YJ-0006Rb-DG
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:28:43 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [170.10.133.124])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 57a528ad-e0ed-4df1-a0c5-1b46a3d2652d;
 Wed, 07 Apr 2021 08:28:42 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-338-j-kNhAiXNcOeRT8qHxs-Mw-1; Wed, 07 Apr 2021 04:28:38 -0400
Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com
 [10.5.11.22])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 909B083DD28;
 Wed,  7 Apr 2021 08:28:35 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-112-38.ams2.redhat.com
 [10.36.112.38])
 by smtp.corp.redhat.com (Postfix) with ESMTP id E01811000324;
 Wed,  7 Apr 2021 08:28: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: 57a528ad-e0ed-4df1-a0c5-1b46a3d2652d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1617784122;
	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=7HUH1x5+MoSwp/VfzV/dAKQtcPehrQ++8gqxTBqpwhw=;
	b=KzuA/Tijl2iz9DQlGDVfSpoMz84svdNCN0e0MSf72vbLhzzIAoiCvJTTzB7ah1FxYGAk9U
	6rA5Tod1OpJ3Uml96i3W21EKxDhZ95tTDmTVIzvUgoQ8KERK3dZcPuvxkwVst9SGkFYKsG
	tyae2WvKQSQnhE4zLNV5aj6fIin69E8=
X-MC-Unique: j-kNhAiXNcOeRT8qHxs-Mw-1
Subject: Re: [edk2-devel] [PATCH v2 6/7] OvmfPkg/XenPlatformPei: Calibrate
 APIC timer frequency
To: devel@edk2.groups.io, anthony.perard@citrix.com
Cc: xen-devel@lists.xenproject.org, Jordan Justen
 <jordan.l.justen@intel.com>, Ard Biesheuvel <ard.biesheuvel@linaro.org>,
 Julien Grall <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>
References: <20210325154713.670104-1-anthony.perard@citrix.com>
 <20210325154713.670104-7-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <960d873d-582c-0ea8-462a-03583c014cb6@redhat.com>
Date: Wed, 7 Apr 2021 10:28:31 +0200
MIME-Version: 1.0
In-Reply-To: <20210325154713.670104-7-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 03/25/21 16:47, Anthony PERARD via groups.io wrote:
> Calculate the frequency of the APIC timer that Xen provides.
> 
> Even though the frequency is currently hard-coded, it isn't part of
> the public ABI that Xen provides and thus may change at any time. OVMF
> needs to determine the frequency by an other mean.
> 
> Fortunately, Xen provides a way to determines the frequency of the
> TSC, so we can use TSC to calibrate the frequency of the APIC timer.
> That information is found in the shared_info page which we map and
> unmap once done (XenBusDxe is going to map the page somewhere else).
> 
> The shared_info page is map at the highest physical address allowed as

(1) s/map/mapped/


> it doesn't need to be in the RAM, thus there's a call to update the
> page table.
> 
> The calculated frequency is only logged in this patch, it will be used
> in a following patch.
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> ---
> CC: Roger Pau Monné <roger.pau@citrix.com>
> ---
> 
> Notes:
>     v2:
>     - fix CamelCases
>     - Use U64 multiplication and division helpers
>     - don't read TscShift from the SharedInfo page again
>     - change the location of the shared info page to be outside of the ram
>     - check for overflow in XenDelay
>     - check for overflow when calculating the calculating APIC frequency
> 
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf |   2 +
>  OvmfPkg/XenPlatformPei/Platform.h         |   5 +
>  OvmfPkg/XenPlatformPei/Platform.c         |   1 +
>  OvmfPkg/XenPlatformPei/Xen.c              | 177 ++++++++++++++++++++++
>  4 files changed, 185 insertions(+)
> 
> diff --git a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> index 8790d907d3ec..5732d2188871 100644
> --- a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> +++ b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> @@ -52,6 +52,7 @@ [LibraryClasses]
>    DebugLib
>    HobLib
>    IoLib
> +  LocalApicLib
>    PciLib
>    ResourcePublicationLib
>    PeiServicesLib
> @@ -59,6 +60,7 @@ [LibraryClasses]
>    MtrrLib
>    MemEncryptSevLib
>    PcdLib
> +  SafeIntLib
>    XenHypercallLib
>  
>  [Pcd]
> diff --git a/OvmfPkg/XenPlatformPei/Platform.h b/OvmfPkg/XenPlatformPei/Platform.h
> index e70ca58078eb..77d88fc159d7 100644
> --- a/OvmfPkg/XenPlatformPei/Platform.h
> +++ b/OvmfPkg/XenPlatformPei/Platform.h
> @@ -132,6 +132,11 @@ PhysicalAddressIdentityMapping (
>    IN EFI_PHYSICAL_ADDRESS AddressToMap
>    );
>  
> +VOID
> +CalibrateLapicTimer (
> +  VOID
> +  );
> +
>  extern EFI_BOOT_MODE mBootMode;
>  
>  extern UINT8 mPhysMemAddressWidth;
> diff --git a/OvmfPkg/XenPlatformPei/Platform.c b/OvmfPkg/XenPlatformPei/Platform.c
> index 717fd0ab1a45..e9511eb40c62 100644
> --- a/OvmfPkg/XenPlatformPei/Platform.c
> +++ b/OvmfPkg/XenPlatformPei/Platform.c
> @@ -448,6 +448,7 @@ InitializeXenPlatform (
>    InitializeRamRegions ();
>  
>    InitializeXen ();
> +  CalibrateLapicTimer ();
>  
>    if (mBootMode != BOOT_ON_S3_RESUME) {
>      ReserveEmuVariableNvStore ();
> diff --git a/OvmfPkg/XenPlatformPei/Xen.c b/OvmfPkg/XenPlatformPei/Xen.c
> index b2a7d1c21dac..7524aaa11a29 100644
> --- a/OvmfPkg/XenPlatformPei/Xen.c
> +++ b/OvmfPkg/XenPlatformPei/Xen.c
> @@ -21,8 +21,10 @@
>  #include <Library/CpuLib.h>
>  #include <Library/DebugLib.h>
>  #include <Library/HobLib.h>
> +#include <Library/LocalApicLib.h>
>  #include <Library/MemoryAllocationLib.h>
>  #include <Library/PcdLib.h>
> +#include <Library/SafeIntLib.h>
>  #include <Guid/XenInfo.h>
>  #include <IndustryStandard/E820.h>
>  #include <Library/ResourcePublicationLib.h>
> @@ -457,3 +459,178 @@ PhysicalAddressIdentityMapping (
>  
>    return EFI_SUCCESS;
>  }
> +
> +STATIC
> +EFI_STATUS
> +MapSharedInfoPage (
> +  IN VOID *PagePtr
> +  )
> +{
> +  xen_add_to_physmap_t  Parameters;
> +  INTN                  ReturnCode;
> +
> +  Parameters.domid = DOMID_SELF;
> +  Parameters.space = XENMAPSPACE_shared_info;
> +  Parameters.idx = 0;
> +  Parameters.gpfn = (UINTN)PagePtr >> EFI_PAGE_SHIFT;
> +  ReturnCode = XenHypercallMemoryOp (XENMEM_add_to_physmap, &Parameters);
> +  if (ReturnCode != 0) {
> +    return EFI_NO_MAPPING;
> +  }
> +  return EFI_SUCCESS;
> +}
> +
> +STATIC
> +VOID
> +UnmapXenPage (
> +  IN VOID *PagePtr
> +  )
> +{
> +  xen_remove_from_physmap_t Parameters;
> +  INTN                      ReturnCode;
> +
> +  Parameters.domid = DOMID_SELF;
> +  Parameters.gpfn = (UINTN)PagePtr >> EFI_PAGE_SHIFT;
> +  ReturnCode = XenHypercallMemoryOp (XENMEM_remove_from_physmap, &Parameters);
> +  ASSERT (ReturnCode == 0);
> +}
> +
> +
> +STATIC
> +UINT64
> +GetCpuFreq (
> +  IN XEN_VCPU_TIME_INFO *VcpuTime
> +  )
> +{
> +  UINT32 Version;
> +  UINT32 TscToSystemMultiplier;
> +  INT8   TscShift;
> +  UINT64 CpuFreq;
> +
> +  do {
> +    Version = VcpuTime->Version;
> +    MemoryFence ();
> +    TscToSystemMultiplier = VcpuTime->TscToSystemMultiplier;
> +    TscShift = VcpuTime->TscShift;
> +    MemoryFence ();
> +  } while (((Version & 1) != 0) && (Version != VcpuTime->Version));
> +
> +  CpuFreq = DivU64x32 (LShiftU64 (1000000000ULL, 32), TscToSystemMultiplier);
> +  if (TscShift >= 0) {
> +      CpuFreq = RShiftU64 (CpuFreq, TscShift);
> +  } else {
> +      CpuFreq = LShiftU64 (CpuFreq, -TscShift);
> +  }
> +  return CpuFreq;
> +}
> +
> +STATIC
> +VOID
> +XenDelay (
> +  IN XEN_VCPU_TIME_INFO *VcpuTimeInfo,
> +  IN UINT64             DelayNs
> +  )
> +{
> +  UINT64        Tick;
> +  UINT64        CpuFreq;
> +  UINT64        Delay;
> +  UINT64        DelayTick;
> +  UINT64        NewTick;
> +  RETURN_STATUS Status;
> +
> +  Tick = AsmReadTsc ();
> +
> +  CpuFreq = GetCpuFreq (VcpuTimeInfo);
> +  Status = SafeUint64Mult (DelayNs, CpuFreq, &Delay);
> +  ASSERT_EFI_ERROR (Status);
> +  if (EFI_ERROR (Status)) {
> +    DEBUG ((DEBUG_ERROR,
> +        "XenDelay (%ld ns): delay too big in relation to CPU freq %ld Hz\n",
> +        DelayNs, CpuFreq));
> +    CpuDeadLoop ();
> +  }

(2) I suggest moving the ASSERT_EFI_ERROR() into the EFI_ERROR() branch,
namely between the DEBUG message and the CpuDeadLoop() call.

Applies to the rest of the ASSERT_EFI_ERROR() invocations in this patch.


(3) DelayNs and CpuFreq are of type UINT64, they should be logged with
%lu, not %ld.


(4) The indentation of the DEBUG macro arguments is incorrect; should be
2 spaces rather than 4.

Applies to the rest of the DEBUG() invocations in this patch.

> +
> +  DelayTick = DivU64x32 (Delay, 1000000000UL);

(5) The UL suffix on the constant is wasteful / misleading IMO;
DivU64x32 clearly takes a UINT32 as second parameter ("Divisor").


> +
> +  NewTick = Tick + DelayTick;
> +
> +  //
> +  // Check for overflow
> +  //
> +  if (NewTick < Tick) {
> +    //
> +    // Overflow, wait for TSC to also overflow
> +    //
> +    while (AsmReadTsc () >= Tick) {
> +      CpuPause ();
> +    }
> +  }
> +
> +  while (AsmReadTsc () <= NewTick) {
> +    CpuPause ();
> +  }
> +}
> +
> +
> +/**
> +  Calculate the frequency of the Local Apic Timer
> +**/
> +VOID
> +CalibrateLapicTimer (
> +  VOID
> +  )
> +{
> +  XEN_SHARED_INFO       *SharedInfo;
> +  XEN_VCPU_TIME_INFO    *VcpuTimeInfo;
> +  UINT32                TimerTick, TimerTick2, DiffTimer;
> +  UINT64                TscTick, TscTick2;
> +  UINT64                Freq;
> +  UINT64                Dividend;
> +  EFI_STATUS            Status;
> +
> +
> +  SharedInfo = (VOID*)((1ULL << mPhysMemAddressWidth) - EFI_PAGE_SIZE);

(I'm keeping in mind that this code is X64 only.)

> +  Status = PhysicalAddressIdentityMapping ((EFI_PHYSICAL_ADDRESS)SharedInfo);
> +  ASSERT_EFI_ERROR (Status);
> +  if (EFI_ERROR (Status)) {
> +    DEBUG ((DEBUG_ERROR,
> +        "Failed to add page table entry for Xen shared info page: %r\n",
> +        Status));
> +    return;
> +  }
> +
> +  Status = MapSharedInfoPage (SharedInfo);
> +  ASSERT_EFI_ERROR (Status);
> +  if (EFI_ERROR (Status)) {
> +    DEBUG ((DEBUG_ERROR, "Failed to map Xen's shared info page: %r\n",
> +        Status));
> +    return;
> +  }
> +
> +  VcpuTimeInfo = &SharedInfo->VcpuInfo[0].Time;
> +
> +  InitializeApicTimer (1, MAX_UINT32, TRUE, 0);
> +  DisableApicTimerInterrupt ();
> +
> +  TimerTick = GetApicTimerCurrentCount ();
> +  TscTick = AsmReadTsc ();
> +  XenDelay (VcpuTimeInfo, 1000000ULL);
> +  TimerTick2 = GetApicTimerCurrentCount ();
> +  TscTick2 = AsmReadTsc ();
> +
> +
> +  DiffTimer = TimerTick - TimerTick2;
> +  Status = SafeUint64Mult (GetCpuFreq (VcpuTimeInfo), DiffTimer, &Dividend);
> +  ASSERT_EFI_ERROR (Status);
> +  if (EFI_ERROR (Status)) {
> +    DEBUG ((DEBUG_ERROR, "overflow while calculating APIC frequency\n"));
> +    DEBUG ((DEBUG_ERROR, "CPU freq: %ld Hz; APIC timer tick count for 1 ms: %d\n",
> +        GetCpuFreq (VcpuTimeInfo), DiffTimer));

(6) Please use %lu and %u for formatting the UINT64 retval of
GetCpuFreq(), and the UINT32 variable DiffTimer, respectively.

All trivial feedback of course, so:

Acked-by: Laszlo Ersek <lersek@redhat.com>

Thanks
Laszlo

> +    CpuDeadLoop ();
> +  }
> +
> +  Freq = DivU64x64Remainder (Dividend, TscTick2 - TscTick, NULL);
> +  DEBUG ((DEBUG_INFO, "APIC Freq % 8lu Hz\n", Freq));
> +
> +  UnmapXenPage (SharedInfo);
> +}
> 



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:33:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:33:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106502.203662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3cc-0007QN-KS; Wed, 07 Apr 2021 08:33:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106502.203662; Wed, 07 Apr 2021 08:33:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3cc-0007QG-HM; Wed, 07 Apr 2021 08:33:10 +0000
Received: by outflank-mailman (input) for mailman id 106502;
 Wed, 07 Apr 2021 08:33:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU3cb-0007QB-Cp
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:33:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4dd7cf2c-6911-46c3-bfe4-727186f81fd3;
 Wed, 07 Apr 2021 08:33:08 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 330F4AFCF;
 Wed,  7 Apr 2021 08:33: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: 4dd7cf2c-6911-46c3-bfe4-727186f81fd3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617784387; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0Gr5nHKCKAIvSxhQXPgssSq0Wbe/7CEist10eX0tuEQ=;
	b=lAxUYMyo7e2+KVgE6rBLVg3UIRSxDvJWWHer0uszX2cX+1nTz2sLUVHJ8ZYtBii9YZh/2Q
	yQBOFn/X3/bTxB9UAi2HxYC/7CpWUgo9VRi6kDw55VVy7Z5lrETPkgBiHzm1J9NGMyj4TP
	yOc+ASnmD1XHuk4Rrgrp1gSdMD43vAE=
Subject: Re: [PATCH 02/23] lib: move 64-bit div/mod compiler helpers
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <0fec827f-bb0b-4ea1-7757-9c27e9138be7@suse.com>
 <008a8b14-8f58-2127-9e97-87c696e07b5e@xen.org>
 <0ddcecbb-dc42-ba4e-fccc-6988c7e54456@suse.com>
 <ad4aaf01-697e-dc12-39c5-17d375a40b00@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <75299b2a-9610-57fb-95a3-c49d926af54b@suse.com>
Date: Wed, 7 Apr 2021 10:33:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <ad4aaf01-697e-dc12-39c5-17d375a40b00@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 21:34, Julien Grall wrote:
> Hi Jan,
> 
> On 01/04/2021 16:23, Jan Beulich wrote:
>> On 01.04.2021 16:56, Julien Grall wrote:
>>> On 01/04/2021 11:19, Jan Beulich wrote:
>>>> --- a/xen/common/lib.c
>>>> +++ b/xen/lib/divmod.c
>>>> @@ -40,7 +40,6 @@
>>>>     * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
>>>>     * SUCH DAMAGE.
>>>>     */
>>>> -#if BITS_PER_LONG == 32
>>>
>>> In theory BITS_PER_LONG == 32 is not quite the same as 32-bit arch. Can
>>> you clarify whether this code is necessary on 64-bit arch where long is
>>> only 32-bit.
>>
>> Likely the compiler can get away without invoking these helpers, so
>> the code would remain unused. I'm uncertain whether CONFIG_64BIT
>> ought to be set for such an architecture, as we assume sizeof(long)
>> == sizeof(void*), and hence pointers would then need to be 32-bit
>> as well there.
> 
> This is a fair point. Would you mind to add a sentence explaining that 
> in the commit message?

I've added

"Note that we imply "32-bit arch" to be the same as BITS_PER_LONG == 32,
 i.e. we aren't (not just here) prepared to have a 64-bit arch with
 BITS_PER_LONG == 32. Yet even if we supported such, likely the compiler
 would get away there without invoking these helpers, so the code would
 remain unused in practice."

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

Thanks. Any chance to also get an ack on patch 1, so at least these two
(or three, seeing that you also did ack patch 3) could go in before my
re-posting of the series to add the one line commit message additions
that you did ask for on all the str* and mem* patches? (Alternatively I
could take the time and re-order the two.)

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:43:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:43:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106507.203674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3m1-0008Rz-JC; Wed, 07 Apr 2021 08:42:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106507.203674; Wed, 07 Apr 2021 08: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 1lU3m1-0008Rs-EO; Wed, 07 Apr 2021 08:42:53 +0000
Received: by outflank-mailman (input) for mailman id 106507;
 Wed, 07 Apr 2021 08:42:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uIxC=JE=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lU3m0-0008Rn-6f
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:42:52 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown
 [40.107.21.55]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b422f902-ff27-4859-b15b-bf3020749d36;
 Wed, 07 Apr 2021 08:42:49 +0000 (UTC)
Received: from DB6PR1001CA0028.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:4:55::14)
 by DBAPR08MB5751.eurprd08.prod.outlook.com (2603:10a6:10:1a0::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.26; Wed, 7 Apr
 2021 08:42:47 +0000
Received: from DB5EUR03FT007.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:55:cafe::bf) by DB6PR1001CA0028.outlook.office365.com
 (2603:10a6:4:55::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 08:42:47 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT007.mail.protection.outlook.com (10.152.20.148) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 08:42:46 +0000
Received: ("Tessian outbound 9bcb3c8d6cb1:v90");
 Wed, 07 Apr 2021 08:42:46 +0000
Received: from f2bc427544a8.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 DCD42511-C8B2-435D-B2FF-F507E3B00F5E.1; 
 Wed, 07 Apr 2021 08:42:35 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f2bc427544a8.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 08:42:35 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB2766.eurprd08.prod.outlook.com (2603:10a6:802:1a::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Wed, 7 Apr
 2021 08:42:34 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 08:42:34 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO2P123CA0085.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:138::18) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Wed, 7 Apr 2021 08:42: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: b422f902-ff27-4859-b15b-bf3020749d36
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=btZT0UAffeikLWFNW3XKx6Hyd5QUnNhsO2TFqindxKk=;
 b=MZLy/FjuO67x8Hz+cs+6pxE0p0Sr4qqs4kX0lYJKGzZUOYsBrOXboDKA2kq1Q9aoahcsYQ84RVhm712k8XTRJ2wW5duW64bE0FE1kWZaBHoZjZztpb+d0dRnFjC9GUiO8C+r1UhXN2TQaWxTTdSh2KZO+s95SfYo6SYsVy/cPcE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3b97bc6c00cbcdc7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GIu4+qlBt6KDKu9+xHorjNAt/hKtmyHeKI+5ReHuodWuv7Lcm394CfZIi9ThxCxqNLPBvkFcsIja+yQbxWVCCPppCaGsYAdVqVCglcU42PCUzJ5jz8EZr9NeYojhqEwVE7VJRvSSzNxAAutg4iuePK1aNvC2j9j2wU9+2BhdOZZXhu7FdvkyMbBlnccLBHmfcQfyhEZR0hOYhG5HLX7qNLhP9JzR3cvw/v8PHw/iediUChsxO0k+gJ5OMXI/fwfdNAilf5/LBp8ariGV4l0h9tnUn5XIsgJ30oMQDHdd4OvlaIlQ/iA/PSDbPRZZpSph2Z2EW2mCfL4/xiXVu23hKw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=btZT0UAffeikLWFNW3XKx6Hyd5QUnNhsO2TFqindxKk=;
 b=H/B7ZfdhyNFLo0pIC+CD7xjqsZD9F5XHoVtM8uwlyoDhJ/1FedFsxQQ0SZm4pJUEWHXpB9yAj5JnZlEhMS1A+KWa/ihkLs+cSzlYBBUDf4el94uElabvKoGCXdpsCiO1uQvhfBXqee2VHE8Yb4lhYHGGuGZesIPXcxpJ1t6f/WTiSFhm7I40Uph21fkug62AcSVDE2eVddUGXsS6XbtJe0BLNkjaqCK+lUFhzFThIkVavWDSmynEQ4ddY72jgG9O74wzE4KAy2wO/J0CUwmp0dX31/Yx0C93vYMND3Yat+soH3L7bDdVO0FVvxUTud85KPANJ80v95QGypP83tW4ig==
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=btZT0UAffeikLWFNW3XKx6Hyd5QUnNhsO2TFqindxKk=;
 b=MZLy/FjuO67x8Hz+cs+6pxE0p0Sr4qqs4kX0lYJKGzZUOYsBrOXboDKA2kq1Q9aoahcsYQ84RVhm712k8XTRJ2wW5duW64bE0FE1kWZaBHoZjZztpb+d0dRnFjC9GUiO8C+r1UhXN2TQaWxTTdSh2KZO+s95SfYo6SYsVy/cPcE=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
Date: Wed, 7 Apr 2021 09:42:23 +0100
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P123CA0085.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:138::18) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6c76edd4-f128-4104-5ee4-08d8f9a11e85
X-MS-TrafficTypeDiagnostic: VI1PR08MB2766:|DBAPR08MB5751:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DBAPR08MB57517D6F076BF55376E2F944E4759@DBAPR08MB5751.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 NK1GeXSx2Tn/Dm58pvA3x/oOaSj1XtlypLDkTuX8lUyNqNpR7/g8xtoe9gjv9nZ5z1Dbdwg2VQyWRmd5Fwofjs4G3QhfKRK5WSgouIM6ewuUXA7lKrBpqaHVj/Yn/6gX2JAP9LsL7Sq0jmAe3MvI90XR5x5xSY9f1aexJ+4kItIWKszw17hrgf4rPOwPOJK8nh8jCbIbT8LHT5lZGHwmS97ghILso8WcY++MJ1O2nGa0DKjl/yazH4z5oml2PbOb79XChTIFwy0DpzcGHcPiGuonR2PKdq7kRp5bAEiUNKG64QXNh4+L0I5rxi5LzBtaoiCBh1lJVXg54+J1tA8MBntrqahFMXkoUUBCuAj8WqlNOrXW9+NCbZkotiyJTkSj9CApCF6WWsVZkb5+58NENj8Hfez/YP15NlWgpAFlbro3h+69I1KBrHr69JspWx9vDJP/oFp0PVvyrkNm2+hmFClgJhgYI1mzFzORlEZzrT/Ct3L+pXPZzz5VucY1iyBa5V0OgcayNwLfN7qJlc2SU93wp0ivjpBA4rAsUeWazFZdyiPTf2M1NMnZWoZPomv5UL9dcQcnhIFXGFdVgHnwpygRUSyXP6eoFdB9D9TAtG1k3XXQBmy/98yhuVZfPdR2wTDOD3Zu6pxvX1c4TuZa6ufmwMnGNUfti3qHtF9r6+KGk7iDfzM81cfaaGWa/qHv6nQ9QQjd1hs7cDiI2r3Y/fUpygV62WEswTOjfYvFhuc=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(376002)(39860400002)(346002)(366004)(396003)(8676002)(6666004)(5660300002)(53546011)(7696005)(52116002)(478600001)(66476007)(66946007)(6916009)(38350700001)(26005)(2906002)(66556008)(38100700001)(16526019)(186003)(83380400001)(2616005)(956004)(4326008)(33656002)(44832011)(316002)(6486002)(54906003)(86362001)(8936002)(36756003)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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/j+?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB2766
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	2ca6488f-03cd-404c-e8db-08d8f9a116be
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	q8G8WskeOYnSD6Dd1pamp4iLdrezRHMROph6fmrGzB1wz+VRPhDZX+x1d3Wf02Ic5cDbvjgYm9U1EkFderv3l4W52RljX+Ux+K4mUByag+1Vnh11MlaDL5dDnxNJ4PYQrHmEtFuBBlnGZ/g1qIZg7QVA8nBpLXfw6K4cQCoMa8FHcKp+TCBSvqZ9nNuhrbD0ZktMi5S39kqq3uNQAtVVD9RE+u7CLiT/sdf3GOqVOvsDMg4gkCbk44Jd1gwyEiBAHw3Zv2NJvlLs8DocyBIGf8pyRktJRHEDp2aYSMdpYIbSNGRmvw4d7HKLWFHzyk8CelAl3FYLVEDBjnUYYIhtyVLiTaTGZXwghVlEX3RCg6/ydDzO7oWzP2Xehac8fzdwd3LMUOgVT+vloih7nTmq7hgzsqStQW3gwhiVaIzqL7TvVpA3KgWEGD3TKoHgAhCFO9N3WhDBvML8yxklgu/kf4Ux0UkTU6yRGOiIh/BHKaq5FzrWSvfv00a3i9zAr3FR4LC6UUYS5+bD5irQUOn0hZYqqomic/aTzLuh8VVYC4cRAZSiUDfOuc1tylJQnyrFEQ/NrSkVu4QBFQmpEk9GaL8OWWaF/dnmwxfMlgvc2hLlRhfjAuEfx5E3xawwfywpTjLOXdVu4yBR1PO15k0bi0G8gsRMxfjqIy/srr07OA4=
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:(4636009)(136003)(346002)(39860400002)(376002)(396003)(46966006)(36840700001)(8936002)(83380400001)(5660300002)(2906002)(53546011)(82310400003)(8676002)(336012)(70586007)(36860700001)(2616005)(7696005)(956004)(33656002)(81166007)(54906003)(16526019)(186003)(86362001)(316002)(6862004)(4326008)(82740400003)(26005)(47076005)(6486002)(6666004)(70206006)(44832011)(36756003)(356005)(478600001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 08:42:46.9963
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6c76edd4-f128-4104-5ee4-08d8f9a11e85
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:
	DB5EUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5751



> On 7 Apr 2021, at 09:10, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 06.04.2021 23:46, Stefano Stabellini wrote:
>> On Tue, 6 Apr 2021, Jan Beulich wrote:
>>> On 06.04.2021 12:36, Luca Fancellu wrote:
>>>> Modification to include/public/grant_table.h:
>>>>=20
>>>> 1) Change anonymous structure to be named structure,
>>>>   because doxygen can't deal with them.
>>>=20
>>> Especially in the form presented (adding further name space clutter
>>> for consumers to fall over) I object to this, most notably ...
>>>=20
>>>> @@ -584,7 +599,7 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
>>>>  * page granted to the calling domain by a foreign domain.
>>>>  */
>>>> struct gnttab_cache_flush {
>>>> -    union {
>>>> +    union a {
>>>=20
>>> ... this one.
>>=20
>> It is unfortunate that none of these tools support anonymous structs or
>> unions well. (You might recall we also had issues with the older
>> kernel-doc series too, although a bit different.)
>=20
> While I wouldn't veto such changes, I think it is a very bad approach
> to make adjustments like this to cover for a docs tool shortcoming.
> Is it entirely unreasonable to have the tool fixed? In fact, if the
> issue was run into before, isn't it a bad sign that the tool hasn't
> been fixed already, and we merely need to require a certain minimum
> version?
>=20
>> It is difficult to provide a good name here, a suggestion would be more
>> than welcome. I agree with you that calling it "a" is a bad idea: "a"
>> becomes a globally-visible union name.
>>=20
>> Maybe we could call it: StructName_MemberName, so in this case:
>>=20
>>  union gnttab_cache_flush_a
>>=20
>> It makes sure it is unique and doesn't risk clashing with anything else.
>> We can follow this pattern elsewhere as well.
>>=20
>> Any better suggestions?
>=20
> First and foremost any new additions ought to use a xen_, Xen_, or
> XEN_ prefix. For the specific case here, since "a" is already a
> rather bad choice for a member name (What does it stand for? In lieu
> of any better name we typically use "u" in such cases.), the badness
> shouldn't be extended. Sadly the ref as being one way of expressing
> the target MFN is also not accompanied by a GFN (as it ought to be),
> but an address. Otherwise I would have suggested to abstract the
> similar union also used by struct gnttab_copy. In the end I can't
> see many alternatives to something like xen_gnttab_cache_flush_target
> or xen_gnttab_cache_flush_ref_or_addr.

Hi Jan,

Thank you for your feedback, I agree with you all that =E2=80=9Ca=E2=80=9D =
is not really a good name,
I will be happy to change it if we define a pattern.

Just to be sure that we are in the same page, are you suggesting to modify =
the name
In this way?

struct gnttab_cache_flush {
-    union {
+    union xen_gnttab_cache_flush_a {
        uint64_t dev_bus_addr;
        grant_ref_t ref;
    } a;

Following this kind of pattern: xen_<upper struct name>_<member name> ?

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:47:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:47:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106512.203685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU3qC-0000CT-4B; Wed, 07 Apr 2021 08:47:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106512.203685; Wed, 07 Apr 2021 08:47: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 1lU3qC-0000CL-0v; Wed, 07 Apr 2021 08:47:12 +0000
Received: by outflank-mailman (input) for mailman id 106512;
 Wed, 07 Apr 2021 08:47: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 1lU3qA-0000CD-Ow; Wed, 07 Apr 2021 08:47: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 1lU3qA-0001FU-H9; Wed, 07 Apr 2021 08:47: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 1lU3qA-0003so-5m; Wed, 07 Apr 2021 08:47:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lU3qA-00015O-5I; Wed, 07 Apr 2021 08: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=kn7tvl6fOVFHTCNIKZmuycTof2Gr0TmLt8vxbTIxD+Q=; b=MD24xkeyafh2ll3zBFKk2u01AN
	9npsomkXdwPcH/goeeH32hfcC3wp0A9LgSOspxzHFMXZrhR1CAev6ys5Zi9zZ78VHx2krIhrLGyLK
	IX24cq4Icx/SVGhhimI7KpESaII0HFcd//lnv7EBffbVVkWMyfVCy+lXd+LSrRZNewTQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160769-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160769: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-localmigrate/x10:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=0a50438c84363bd37fe18fe432888ae9a074dcab
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 08:47:10 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop     fail in 160754 REGR. vs. 152332

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-i386-pvgrub 19 guest-localmigrate/x10     fail pass in 160754

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

version targeted for testing:
 linux                0a50438c84363bd37fe18fe432888ae9a074dcab
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  249 days
Failing since        152366  2020-08-01 20:49:34 Z  248 days  422 attempts
Testing same since   160754  2021-04-05 21:41:03 Z    1 days    2 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1315283 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 08:58:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 08:58:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106520.203700 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU416-0001Eo-4U; Wed, 07 Apr 2021 08:58:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106520.203700; Wed, 07 Apr 2021 08:58:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU416-0001Eh-1R; Wed, 07 Apr 2021 08:58:28 +0000
Received: by outflank-mailman (input) for mailman id 106520;
 Wed, 07 Apr 2021 08:58:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU414-0001Ec-S0
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 08:58:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ed5bd202-3541-4b41-b5fc-51afa80ff93d;
 Wed, 07 Apr 2021 08:58:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9921CB07B;
 Wed,  7 Apr 2021 08:58: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: ed5bd202-3541-4b41-b5fc-51afa80ff93d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617785904; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Sh91exy93k3ffG9wqwOncxrpfPfOd/4VeM9WzUDweaQ=;
	b=N0OaEkBb/Iy7Bx2lEbJ71bMVvCbQTuQikZIRBaEICJTcc9XUlge385xmg3C4nVwVYI9RtS
	6f95pPFyO5aqtZtXv3skvqSLuQppfFAAfZgjthQwY+TJ4nlke6Ffqnc1F2leAe3sjAGTkn
	LPkaPoYLgNvI46xrqrny6ZTg1gbtqwo=
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
Date: Wed, 7 Apr 2021 10:58:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 07.04.2021 10:42, Luca Fancellu wrote:
> Just to be sure that we are in the same page, are you suggesting to modify the name
> In this way?
> 
> struct gnttab_cache_flush {
> -    union {
> +    union xen_gnttab_cache_flush_a {
>         uint64_t dev_bus_addr;
>         grant_ref_t ref;
>     } a;
> 
> Following this kind of pattern: xen_<upper struct name>_<member name> ?

While in general I would be fine with this scheme, for field names like
"a" or "u" it doesn't fit well imo. I'm also unconvinced this would be
scalable to the case where there's further struct/union nesting.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 09:06:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 09:06:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106529.203716 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU492-0002Ew-1D; Wed, 07 Apr 2021 09:06:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106529.203716; Wed, 07 Apr 2021 09:06: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 1lU491-0002Ep-U0; Wed, 07 Apr 2021 09:06:39 +0000
Received: by outflank-mailman (input) for mailman id 106529;
 Wed, 07 Apr 2021 09:06: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 1lU491-0002Ek-8G
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 09:06: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 1lU491-0001aF-1K; Wed, 07 Apr 2021 09:06:39 +0000
Received: from 54-240-197-225.amazon.com ([54.240.197.225]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lU490-0000Tu-Mb; Wed, 07 Apr 2021 09:06: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=S54PR/9ZKM3q1z6Eb9HVnUnTexMcE2bH2i2s7F0TC00=; b=PrUyFe5pf4DzhlGWpsnBIAtTQl
	2HIqR4kbHdLGkHnZPFYomxn8Tawh+gdU/UUxdwaR7ZjtO4Fngho5aQqOKY96S32oE5yt5lMdRoyXe
	NMrUDu4Agt6qiwhfnj4wRrJ7NG83zyMJpqRnjH9MSZ9IZiQglWyCS/CtMZWgv75jI70I=;
Subject: Re: [PATCH 02/14] xen/sched: Constify name and opt_name in struct
 scheduler
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <jgrall@amazon.com>, George Dunlap
 <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>,
 xen-devel@lists.xenproject.org
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-3-julien@xen.org>
 <5618bed6-a213-d2c9-4cbf-d95cb4dc02b4@suse.com>
 <00a75c04-fad1-7061-ac39-a811f442db05@xen.org>
 <c0648f0f-7384-1556-5693-b8ca431674a8@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <4088e12a-f641-278d-dac7-d25f52e0dfe2@xen.org>
Date: Wed, 7 Apr 2021 10:06:37 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c0648f0f-7384-1556-5693-b8ca431674a8@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Jan,

On 07/04/2021 09:22, Jan Beulich wrote:
> On 06.04.2021 20:24, Julien Grall wrote:
>> Hi Jan,
>>
>> On 06/04/2021 09:07, Jan Beulich wrote:
>>> On 05.04.2021 17:57, Julien Grall wrote:
>>>> From: Julien Grall <jgrall@amazon.com>
>>>>
>>>> Both name and opt_name are pointing to literal string. So mark both of
>>>> the fields as const.
>>>>
>>>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>>
>>> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>>> albeit ...
>>>
>>>> --- a/xen/common/sched/private.h
>>>> +++ b/xen/common/sched/private.h
>>>> @@ -272,8 +272,8 @@ static inline spinlock_t *pcpu_schedule_trylock(unsigned int cpu)
>>>>    }
>>>>    
>>>>    struct scheduler {
>>>> -    char *name;             /* full name for this scheduler      */
>>>> -    char *opt_name;         /* option name for this scheduler    */
>>>> +    const char *name;       /* full name for this scheduler      */
>>>> +    const char *opt_name;   /* option name for this scheduler    */
>>>
>>> ... I'd like to suggest considering at least the latter to become
>>> an array instead of a pointer - there's little point wasting 8
>>> bytes of storage for the pointer when the strings pointed to are
>>> all at most 9 bytes long (right now; I don't expect much longer
>>> ones to appear).
>>
>> I have tried this simple/dumb change on top of my patch:
>>
>> diff --git a/xen/common/sched/private.h b/xen/common/sched/private.h
>> index a870320146ef..ab2236874217 100644
>> --- a/xen/common/sched/private.h
>> +++ b/xen/common/sched/private.h
>> @@ -273,7 +273,7 @@ static inline spinlock_t
>> *pcpu_schedule_trylock(unsigned int cpu)
>>
>>    struct scheduler {
>>        const char *name;       /* full name for this scheduler      */
>> -    const char *opt_name;   /* option name for this scheduler    */
>> +    const char opt_name[9]; /* option name for this scheduler    */
>>        unsigned int sched_id;  /* ID for this scheduler             */
>>        void *sched_data;       /* global data pointer               */
>>        struct cpupool *cpupool;/* points to this scheduler's pool   */
>>
>> GCC will throw an error:
>>
>> core.c: In function ‘scheduler_init’:
>> core.c:2987:17: error: assignment of read-only variable ‘ops’
>>                ops = *schedulers[i];
>>                    ^
>> core.c:2997:21: error: assignment of read-only variable ‘ops’
>>                    ops = *schedulers[i];
>>                        ^
>>
>> I don't particularly want to drop the const. So the code would probably
>> need some rework.
> 
> What's wrong with not having the const when the field is an array?
> The more that all original (build-time, i.e. contain in the binary)
> instances of the struct are already const as a whole?

The scheduler will do a shallow copy of the structure that will be 
non-const. So opt_name can be modified afterwards (one can argue this is 
unlikely).

If I have to chose between saving overall 20 bytes in the binary and 
const. I would chose the latter.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 09:25:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 09:25:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106536.203730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU4RA-00046F-LQ; Wed, 07 Apr 2021 09:25:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106536.203730; Wed, 07 Apr 2021 09: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 1lU4RA-000468-IP; Wed, 07 Apr 2021 09:25:24 +0000
Received: by outflank-mailman (input) for mailman id 106536;
 Wed, 07 Apr 2021 09:25:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU4R9-000463-6n
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 09:25:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9137cf61-6f2e-4009-87fe-62a2e5059d5d;
 Wed, 07 Apr 2021 09:25:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4A276AE06;
 Wed,  7 Apr 2021 09:25: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: 9137cf61-6f2e-4009-87fe-62a2e5059d5d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617787521; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=fWFBGejBpXAEFXWPQ+apPjh8Kvg9wwdgHuQi+JDUDqA=;
	b=YEIkSz32xlKH1kHDo+Xf5IhXHX8p/wG8CLE2+Bj3/jm/I/0ol7SP+iT6VQS0D/M7zVDZkv
	toIa6n8ipYg6yMsQe5t05JbQ1tRSvEDJvfpwGUfQ5ViVhlcWsTbwn58V29nHlxlAIAk4HE
	+aOcVelPAu/w4ZqniCcN8vMObFZNmf4=
Subject: Re: [PATCH] xen/page_alloc: Remove dead code in alloc_domheap_pages()
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210406192246.15657-1-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6d3593cb-40d4-df17-4070-a6c18ea7d62b@suse.com>
Date: Wed, 7 Apr 2021 11:25:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210406192246.15657-1-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 21:22, Julien Grall wrote:
> --- a/xen/common/page_alloc.c
> +++ b/xen/common/page_alloc.c
> @@ -457,6 +457,12 @@ static long total_avail_pages;
>  static DEFINE_SPINLOCK(heap_lock);
>  static long outstanding_claims; /* total outstanding claims by all domains */
>  
> +static void __init __maybe_unused build_assertions(void)
> +{
> +    /* Zone 0 is reserved for Xen, so we at least need two zones to function.*/
> +    BUILD_BUG_ON(NR_ZONES < 2);
> +}

With a couple of transformations this could also be

    BUILD_BUG_ON(PADDR_BITS <= PAGE_SHIFT);

i.e. you're checking that the architecture allows for at least two
pages to be addressable. Is this really a useful thing to check?

Irrespective of the usefulness, if this is to be kept I think the
function wants to live at the end of the source file, like the
majority of other files have it (another consistent place could
be at the top of the file, after all #include-s, as can be found
in two other cases).

> @@ -2340,8 +2346,9 @@ struct page_info *alloc_domheap_pages(
>  
>      bits = domain_clamp_alloc_bitsize(memflags & MEMF_no_owner ? NULL : d,
>                                        bits ? : (BITS_PER_LONG+PAGE_SHIFT));
> -    if ( (zone_hi = min_t(unsigned int, bits_to_zone(bits), zone_hi)) == 0 )
> -        return NULL;
> +
> +    zone_hi = min_t(unsigned int, bits_to_zone(bits), zone_hi);
> +    ASSERT(zone_hi != 0);

With the function above preferably dropped or at least moved,
Reviewed-by: Jan Beulich <jbeulich@suse.com>

I'd like to point out though that I think this would be a good
opportunity to eliminate the use of min_t() here, by changing
bits_to_zone()'s 1 to 1u. But I suppose you again would prefer
to not make this extra change right here, despite it being
somewhat related to bits_to_zone() only ever returning positive
values.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 09:26:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 09:26:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106540.203743 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU4Rm-0004Bm-WA; Wed, 07 Apr 2021 09:26:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106540.203743; Wed, 07 Apr 2021 09:26: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 1lU4Rm-0004Bf-Su; Wed, 07 Apr 2021 09:26:02 +0000
Received: by outflank-mailman (input) for mailman id 106540;
 Wed, 07 Apr 2021 09:26:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dICN=JE=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lU4Rl-0004BT-Ca
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 09:26:01 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [170.10.133.124])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 826b33aa-3274-4784-833e-1f19f995e6c4;
 Wed, 07 Apr 2021 09:26:00 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-480-kmYcCR7DOvOT_ybhReY07g-1; Wed, 07 Apr 2021 05:25:53 -0400
Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com
 [10.5.11.12])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 14C9810054F6;
 Wed,  7 Apr 2021 09:25:52 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-112-38.ams2.redhat.com
 [10.36.112.38])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 6B4AE610A8;
 Wed,  7 Apr 2021 09:25: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: 826b33aa-3274-4784-833e-1f19f995e6c4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1617787560;
	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=AGDPLz2rv7Dxm/1+5sRCpoSWxvO7t5QmRgUEQ0bp0/c=;
	b=isyR/ohvZ7Mp83z1+K/oVupyYbO4WvReHshlM1ic+qXNA/6S2eJC91n3W/zqhyX60Dv0tE
	hQ3S/CFumUgYFnoxIlw+O2WxpHJI+XIYSq+iuP5mzAwdtj2XYFfaYu7H5RkDYd3jsIz0rh
	FjBmjFOl2Zeys7i41C2NCPGViDbj/K0=
X-MC-Unique: kmYcCR7DOvOT_ybhReY07g-1
Subject: Re: [edk2-devel] [PATCH v2 7/7] OvmfPkg/OvmfXen: Set PcdFSBClock
To: devel@edk2.groups.io, anthony.perard@citrix.com
Cc: xen-devel@lists.xenproject.org, Jordan Justen
 <jordan.l.justen@intel.com>, Ard Biesheuvel <ard.biesheuvel@linaro.org>,
 Julien Grall <julien@xen.org>
References: <20210325154713.670104-1-anthony.perard@citrix.com>
 <20210325154713.670104-8-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <344af4b2-0ce4-23a9-7fde-bf1ee0343d27@redhat.com>
Date: Wed, 7 Apr 2021 11:25:49 +0200
MIME-Version: 1.0
In-Reply-To: <20210325154713.670104-8-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 03/25/21 16:47, Anthony PERARD via groups.io wrote:
> Update gEfiMdePkgTokenSpaceGuid.PcdFSBClock so it can have the correct
> value when SecPeiDxeTimerLibCpu start to use it for the APIC timer.
> 
> Currently, nothing appear to use the value in PcdFSBClock before
> XenPlatformPei had a chance to set it even though TimerLib is included
> in modules runned before XenPlatformPei.

(1) s/runned/run/

> 
> XenPlatformPei doesn't use any of the functions that would use that
> value. No other modules in the PEI phase seems to use the TimerLib
> before PcdFSBClock is set. There are currently two other modules in
> the PEI phase that needs the TimerLib:
> - S3Resume2Pei, but only because LocalApicLib needs it, but nothing is
>   using the value from PcdFSBClock.
> - CpuMpPei, but I believe it only runs after XenPlatformPei

Effectively, yes.


* Assuming CpuMpPei were loaded / dispatched before XenPlatformPei, the
following would happen:

CpuMpPeimInit() [UefiCpuPkg/CpuMpPei/CpuMpPei.c] is the entry point
function of CpuMpPei, and all it does is register a notify for the
"memory discovered" PPI. The actual module initialization occurs in
MemoryDiscoveredPpiNotifyCallback().

The "memory discovered PPI" is produced as follows:

- XenPlatformPei calls PublishSystemMemory()

- XenPlatformPei exits

- the PEI Core relocates stuff (HOBs, PEIMs) to the permanent PEI
memory, and re-enters itself in the new area

- the PEI core installs the "memory discovered" PPI

- MemoryDiscoveredPpiNotifyCallback() is called.


* If XenPlatformPei is loaded / dispatched before CpuMpPei (and so the
"memory discovered" PPI exist at the time of CpuMpPei starting), then
MemoryDiscoveredPpiNotifyCallback() is immediately invoked in CpuMpPei,
when the PPI notify is registered.


> 
> Before the PEI phase, there's the SEC phase, and SecMain needs
> TimerLib because of LocalApicLib. And it initialise the APIC timers
> for the debug agent. But I don't think any of the DebugLib that
> OvmfXen could use are actually using the *Delay functions in TimerLib,
> and so would not use the value from PcdFSBClock which would be
> uninitialised.
> 
> A simple runtime test showed that TimerLib doesn't use PcdFSBClock
> value before it is set.

OK.

> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
> ---
> 
> Notes:
>     v2:
>     - keep the default value of PcdFSBClock because that is part of the syntax.
> 
>  OvmfPkg/OvmfXen.dsc                       | 4 +---
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf | 1 +
>  OvmfPkg/XenPlatformPei/Xen.c              | 4 ++++
>  3 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/OvmfPkg/OvmfXen.dsc b/OvmfPkg/OvmfXen.dsc
> index 507029404f0b..faf3930ace04 100644
> --- a/OvmfPkg/OvmfXen.dsc
> +++ b/OvmfPkg/OvmfXen.dsc
> @@ -442,9 +442,6 @@ [PcdsFixedAtBuild]
>    # Point to the MdeModulePkg/Application/UiApp/UiApp.inf
>    gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
>  
> -  ## Xen vlapic's frequence is 100 MHz
> -  gEfiMdePkgTokenSpaceGuid.PcdFSBClock|100000000
> -
>    # We populate DXE IPL tables with 1G pages preferably on Xen
>    gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable|TRUE
>  
> @@ -471,6 +468,7 @@ [PcdsDynamicDefault]
>    gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Base|0x0
>    gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size|0x800000000
>  
> +  gEfiMdePkgTokenSpaceGuid.PcdFSBClock|100000000
>    gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0
>  
>    # Set video resolution for text setup.
> diff --git a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> index 5732d2188871..87dd4b24679a 100644
> --- a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> +++ b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> @@ -85,6 +85,7 @@ [Pcd]
>    gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode
>    gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable
>    gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask
> +  gEfiMdePkgTokenSpaceGuid.PcdFSBClock
>    gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy
>    gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress
>  
> diff --git a/OvmfPkg/XenPlatformPei/Xen.c b/OvmfPkg/XenPlatformPei/Xen.c
> index 7524aaa11a29..a29b4e04086e 100644
> --- a/OvmfPkg/XenPlatformPei/Xen.c
> +++ b/OvmfPkg/XenPlatformPei/Xen.c
> @@ -632,5 +632,9 @@ CalibrateLapicTimer (
>    Freq = DivU64x64Remainder (Dividend, TscTick2 - TscTick, NULL);
>    DEBUG ((DEBUG_INFO, "APIC Freq % 8lu Hz\n", Freq));
>  
> +  ASSERT (Freq <= MAX_UINT32);
> +  Status = PcdSet32S (PcdFSBClock, Freq);

(2) Please use an explicit cast here: (UINT32)Freq; I'm concerned about
VS emitting a warning (despite the ASSERT()).

> +  ASSERT_RETURN_ERROR (Status);

(3) "Status" has type EFI_STATUS here; the assignment from PcdSet32S()
(RETURN_STATUS) is fine, but it's more idiomatic to use
ASSERT_EFI_ERROR(), given the type of "Status".

> +
>    UnmapXenPage (SharedInfo);
>  }
> 

Reviewed-by: Laszlo Ersek <lersek@redhat.com>

Thanks
Laszlo



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 09:29:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 09:29:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106545.203755 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU4Un-0004Lj-Es; Wed, 07 Apr 2021 09:29:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106545.203755; Wed, 07 Apr 2021 09:29:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU4Un-0004Lc-Bl; Wed, 07 Apr 2021 09:29:09 +0000
Received: by outflank-mailman (input) for mailman id 106545;
 Wed, 07 Apr 2021 09:29: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 1lU4Ul-0004LP-O1; Wed, 07 Apr 2021 09:29: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 1lU4Ul-0001yS-Dm; Wed, 07 Apr 2021 09:29: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 1lU4Ul-0006YP-6Y; Wed, 07 Apr 2021 09:29:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lU4Ul-0005Mh-66; Wed, 07 Apr 2021 09:29: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=NJzOGnK3VqEW1Oi7DL7J1eZWQu7xrRFY9GI6fG6SMLw=; b=5dD9P5cUKLingcxuCSdiWSV7b2
	lw+rsAVXLLJJtbBBpggUvzZXU6ecOWX/Kw7aM0rW0iwLQ8tck73KgOHnVIZdxbUwW3Am9i8fKukvL
	DhC9d7VbJubMAPpEBgJ7a37l77SJ2QWcQMH/Q9t7s90xU8/dFPUtSdlhcSxx9amrrO1s=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160783-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160783: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=c54b1bdcfb9c812a42ff48fe41e2fc8d9a0af86d
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 09:29:07 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              c54b1bdcfb9c812a42ff48fe41e2fc8d9a0af86d
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  271 days
Failing since        151818  2020-07-11 04:18:52 Z  270 days  263 attempts
Testing same since   160783  2021-04-07 04:18:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 09:31:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 09:31:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106553.203769 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU4Wt-0005GS-2R; Wed, 07 Apr 2021 09:31:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106553.203769; Wed, 07 Apr 2021 09:31: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 1lU4Ws-0005GL-Vf; Wed, 07 Apr 2021 09:31:18 +0000
Received: by outflank-mailman (input) for mailman id 106553;
 Wed, 07 Apr 2021 09:31:17 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU4Wr-0005GG-Oo
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 09:31:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id dcdd9b0b-2cac-4fb0-b250-1bde47ce1df9;
 Wed, 07 Apr 2021 09:31:16 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 038C5B06A;
 Wed,  7 Apr 2021 09:31: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: dcdd9b0b-2cac-4fb0-b250-1bde47ce1df9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617787876; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=l/ThV8W3CSBtQEZA9sD7HLLVdJCK7g+cTmPh3/5rDcI=;
	b=V8eScDm0JCr67RLjpgxTjKQFAcr0PNE3FQiQbcisET4Vze2CRm8O+BAe9O2xWWKvdrx1kB
	QQrFtyQlAOpNnPitT5CWOnYFT/DtRaveWFKUuG01qsHfcqeTYZ5ClvMrnS9P1D4ehDE46c
	lu21A8NgKMwYW1csLF0Jm+uLKFj3j7g=
Subject: Re: [PATCH] xen/page_alloc: Don't hold the heap_lock when clearing
 PGC_need_scrub
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210406193032.16976-1-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <35e0d1df-7aac-4205-4545-3218601bae4e@suse.com>
Date: Wed, 7 Apr 2021 11:31:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210406193032.16976-1-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 21:30, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Currently, the heap_lock is held when clearing PGC_need_scrub in
> alloc_heap_pages(). However, this is unnecessary because the only caller
> (mark_page_offline()) that can concurrently modify the count_info is
> using cmpxchg() in a loop.
> 
> Therefore, rework the code to avoid holding the heap_lock and use
> test_and_clear_bit() instead.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 09:32:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 09:32:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106556.203781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU4Xi-0005Mw-CK; Wed, 07 Apr 2021 09:32:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106556.203781; Wed, 07 Apr 2021 09: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 1lU4Xi-0005Mp-9S; Wed, 07 Apr 2021 09:32:10 +0000
Received: by outflank-mailman (input) for mailman id 106556;
 Wed, 07 Apr 2021 09:32:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dICN=JE=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lU4Xh-0005Mg-2U
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 09:32:09 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [216.205.24.124])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 37bbc8fd-9902-4255-95e6-8638e0cd23a5;
 Wed, 07 Apr 2021 09:32:07 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-399-KUh8AumMNCKWm_6fy27orw-1; Wed, 07 Apr 2021 05:32:04 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com
 [10.5.11.16])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9AB711922963;
 Wed,  7 Apr 2021 09:32:03 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-112-38.ams2.redhat.com
 [10.36.112.38])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 316CE1C4;
 Wed,  7 Apr 2021 09: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: 37bbc8fd-9902-4255-95e6-8638e0cd23a5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1617787927;
	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=g5M66Ia+rkrQWgC1IGnVTn4Ksvf4Yr5bQtKaBdXnz9w=;
	b=gwxaw2wwcf7Tq6SAGqbm3r2ZWKRb6f6kEd8gJeh3XTgGOtmKR5H9fCfRRskD0ek3+3eMEr
	m8W/R9BDUS7uk/p+ZmECWjfXAewzX/hlmhjSmzMn/aXZGtrYgw2Em5rf38BB6tbHBU8TiS
	SPk0ZoqdEZyY1o2yc4x43qN+W8oMDNc=
X-MC-Unique: KUh8AumMNCKWm_6fy27orw-1
Subject: Re: [edk2-devel] [PATCH v2 0/7] OvmfXen: Set PcdFSBClock at runtime
To: devel@edk2.groups.io, anthony.perard@citrix.com
Cc: xen-devel@lists.xenproject.org, Jordan Justen
 <jordan.l.justen@intel.com>, Ard Biesheuvel <ard.biesheuvel@linaro.org>,
 Julien Grall <julien@xen.org>
References: <20210325154713.670104-1-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <e7efbb51-f4af-83a4-5bb7-e9e983bc84ee@redhat.com>
Date: Wed, 7 Apr 2021 11:32:01 +0200
MIME-Version: 1.0
In-Reply-To: <20210325154713.670104-1-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 03/25/21 16:47, Anthony PERARD via groups.io wrote:
> Patch series available in this git branch:
> git://xenbits.xen.org/people/aperard/ovmf.git br.apic-timer-freq-v2
> 
> Changes in v2:
> - main change is to allow mapping of Xen pages outside of the RAM
>   see patch: "OvmfPkg/XenPlatformPei: Map extra physical address"
> - that new function allows to map the Xen shared info page (where we can find
>   information about tsc frequency) at the highest physical address allowed.

Before posting v3 (which I expect I'll merge), please submit a
github.com pull request as well, for your v3 topic branch. Such a PR
will never be merged, but it's good for kicking off CI (automated
builds) on your patches. If any one of the CI plugins fails on your
series, then you getting those results directly is better than me
encountering them first during an actual merge attempt.

For the above, I think you'll need to open a github.com account (in case
you don't have one yet). Running CI locally is possible, but it's so
much work (both setting up and executing) that I recommend just using a
github.com PR for CI's sake.

Thanks
Laszlo


> 
> Hi,
> 
> OvmfXen uses the APIC timer, but with an hard-coded frequency that may change
> as pointed out here:
>   https://edk2.groups.io/g/devel/message/45185
>   <20190808134423.ybqg3qkpw5ucfzk4@Air-de-Roger>
> 
> This series changes that so the frequency is calculated at runtime.
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
> 
> There is also one cleanup patch that has nothing to do with the rest.
> 
> Cheers,
> 
> Anthony PERARD (7):
>   OvmfPkg/XenResetVector: Silent a warning from nasm
>   MdePkg: Allow PcdFSBClock to by Dynamic
>   OvmfPkg/IndustryStandard/Xen: Apply EDK2 coding style to
>     XEN_VCPU_TIME_INFO
>   OvmfPkg/IndustryStandard: Introduce PageTable.h
>   OvmfPkg/XenPlatformPei: Map extra physical address
>   OvmfPkg/XenPlatformPei: Calibrate APIC timer frequency
>   OvmfPkg/OvmfXen: Set PcdFSBClock
> 
>  MdePkg/MdePkg.dec                             |   8 +-
>  OvmfPkg/OvmfXen.dsc                           |   4 +-
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf     |   4 +
>  .../IndustryStandard/PageTable.h}             | 117 +-------
>  OvmfPkg/Include/IndustryStandard/Xen/xen.h    |  17 +-
>  .../BaseMemEncryptSevLib/X64/VirtualMemory.h  | 143 +---------
>  OvmfPkg/XenPlatformPei/Platform.h             |  10 +
>  OvmfPkg/XenPlatformPei/Platform.c             |   1 +
>  OvmfPkg/XenPlatformPei/Xen.c                  | 252 ++++++++++++++++++
>  OvmfPkg/XenResetVector/Ia32/XenPVHMain.asm    |   2 +-
>  10 files changed, 287 insertions(+), 271 deletions(-)
>  copy OvmfPkg/{Library/BaseMemEncryptSevLib/X64/VirtualMemory.h => Include/IndustryStandard/PageTable.h} (60%)
> 



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 09:56:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 09:56:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106585.203812 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU4vE-0007WC-Nm; Wed, 07 Apr 2021 09:56:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106585.203812; Wed, 07 Apr 2021 09: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 1lU4vE-0007W5-JG; Wed, 07 Apr 2021 09:56:28 +0000
Received: by outflank-mailman (input) for mailman id 106585;
 Wed, 07 Apr 2021 09:56:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU4vC-0007Vz-Mp
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 09:56:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a1920951-635e-406a-92aa-31e5104af2a5;
 Wed, 07 Apr 2021 09:56:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 14AE2B07B;
 Wed,  7 Apr 2021 09:56: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: a1920951-635e-406a-92aa-31e5104af2a5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617789385; 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=T+NS1lM1LbDG6QvBxPVAcgzdIHwWaQ9d4lnj+1Jzgho=;
	b=DIn2n7R9f/QtJT9gXHkvRCmo3lkbVJWus1emc7IswccP/I/9ej50g2dQdD0s+faGf1GxQr
	UvjubDLgf/8rla4IW9VVxm4Xi5r/R+cONgtBGEC15Jlpg0vnv2q/4DdR/v/0vmn3WIwsoY
	T3utv/mHK52gfvKr3WDOIpEwb/zxoJA=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] docs: release-technician-checklist: update to leaf tree
 version pinning
Message-ID: <adc2ba4f-81b9-9841-a53c-8c52278ae62a@suse.com>
Date: Wed, 7 Apr 2021 11:56:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Our releases look to flip-flop between keeping or discarding the date
and title of the referenced qemu-trad commit. I think with the hash
replaced by a tag, the commit's date and title would better also be
purged.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
I've been noticing this inconsistency repeatedly because I simply re-use
version update patches for the stable trees - the context mismatch
results in a such updated patch to then not apply, due to said flip-
flopping. For 4.15 I'm inclined to drop the two offending lines perhaps
while updating the version to 4.15.1-pre.

--- a/docs/process/release-technician-checklist.txt
+++ b/docs/process/release-technician-checklist.txt
@@ -53,6 +53,7 @@
 #   QEMU_UPSTREAM_REVISION,
 #   QEMU_TRADITIONAL_REVISION
 #   MINIOS_UPSTREAM_REVISION
+#     (drop any references to the specific commits, e.g. date or title)
 * change SUPPORT.md heading version number; -unstable or -rc tag
 *     (empty in stable branches after .0 release).
 * SUPPORT.md: insert correct version number in release-notes link


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 10:10:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 10:10:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106594.203830 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU58i-0000vg-2T; Wed, 07 Apr 2021 10:10:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106594.203830; Wed, 07 Apr 2021 10:10: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 1lU58h-0000vZ-Uf; Wed, 07 Apr 2021 10:10:23 +0000
Received: by outflank-mailman (input) for mailman id 106594;
 Wed, 07 Apr 2021 10:10: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 1lU58g-0000vR-OA; Wed, 07 Apr 2021 10:10: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 1lU58g-0002iS-Hp; Wed, 07 Apr 2021 10:10: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 1lU58g-00004z-7O; Wed, 07 Apr 2021 10:10:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lU58g-00010l-6r; Wed, 07 Apr 2021 10:10:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=z8KaovdMXMoT5CLk7b93A1b+KoyIPYAu+pE2LfeigI4=; b=Ef+C2AIPnHFYcPzvJVi3HBerHl
	xVgySSvXM0NbaeYVtLzjBcD0zjHqsb047ZjN8u1P8r77UFyBbd47Fxc1F17jvEUkmAu73A9b+KvPT
	/icsO5bQfvzYfIMNP6X60Wlkbl2tSTzvgXFBx9ObJnbbJjABnjurNJOSRqAPBMW8gP74=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160790-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-coverity test] 160790: all pass - PUSHED
X-Osstest-Versions-This:
    xen=19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62
X-Osstest-Versions-That:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 10:10:22 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xen                  19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62
baseline version:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb

Last test of basis   160721  2021-04-04 09:18:26 Z    3 days
Testing same since   160790  2021-04-07 09:18:32 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Tim Deegan <tim@xen.org>

jobs:
 coverity-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/xen.git
   0435784cc7..19be4d56a1  19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62 -> coverity-tested/smoke


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 10:39:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 10:39:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106606.203848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU5b4-0002wy-Hg; Wed, 07 Apr 2021 10:39:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106606.203848; Wed, 07 Apr 2021 10:39: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 1lU5b4-0002wr-Ea; Wed, 07 Apr 2021 10:39:42 +0000
Received: by outflank-mailman (input) for mailman id 106606;
 Wed, 07 Apr 2021 10:39:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU5b3-0002wm-JT
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 10:39:41 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id aef715d6-6f27-4666-968b-5216d1c66c36;
 Wed, 07 Apr 2021 10:39:40 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 975B8B121;
 Wed,  7 Apr 2021 10:39: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: aef715d6-6f27-4666-968b-5216d1c66c36
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617791979; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=MmzeUKaM7jluEFAU+2gUICT9L6pW6MmGEPiXK3fkEsI=;
	b=oAYX+gNzZYjNLOmUvUnemAJjDEHvaBtkFGZ9hCwD4mnr7HyvM35aDzd5IcySLMy32DMvj5
	L+rpalq2mr2+HB6oVGBomI92q7vFAX7V+5/+X6ryfZ7191z0tg48Efw+S2pXe2R0aSq3Kh
	BedostC3r4yaxm+NerNUsJWKObv+1FI=
Subject: Re: [PATCH 2/2] xen/gunzip: Allow perform_gunzip() to be called
 multiple times
To: Julien Grall <julien@xen.org>
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210402152105.29387-1-julien@xen.org>
 <20210402152105.29387-3-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <2caf0bed-9a31-64a8-e764-2ed222f2e828@suse.com>
Date: Wed, 7 Apr 2021 12:39:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210402152105.29387-3-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 02.04.2021 17:21, Julien Grall wrote:
> --- a/xen/common/inflate.c
> +++ b/xen/common/inflate.c
> @@ -238,6 +238,12 @@ STATIC const ush mask_bits[] = {
>  static unsigned long INITDATA malloc_ptr;
>  static int INITDATA malloc_count;
>  
> +static void init_allocator(void)
> +{
> +    malloc_ptr = free_mem_ptr;
> +    malloc_count = 0;
> +}
> +
>  static void *INIT malloc(int size)
>  {
>      void *p;

I'm sorry for noticing this only now, but I'm afraid this may break
the build in certain environments / configurations. Iirc clang is
relatively likely to not inline functions in debug builds even when
they're used just once. Yet when the new function doesn't end up
getting inlined, it needs INIT added or else the cmd_obj_init_o
checking would find a non-empty .text section. (If there's no actual
build breakage anywhere, I can also address this in my to-be-re-based
"gunzip: drop INIT{,DATA} and STATIC", which is intended to go in as
soon as the tree is fully open again.)

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 11:16:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 11:16:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106612.203861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU6AL-0006Qk-Do; Wed, 07 Apr 2021 11:16:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106612.203861; Wed, 07 Apr 2021 11:16: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 1lU6AL-0006Qd-Ak; Wed, 07 Apr 2021 11:16:09 +0000
Received: by outflank-mailman (input) for mailman id 106612;
 Wed, 07 Apr 2021 11:16:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dFqK=JE=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lU6AJ-0006QY-3n
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 11:16:07 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7dabf354-4efd-49a4-9bc7-e4239911a7de;
 Wed, 07 Apr 2021 11:16: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: 7dabf354-4efd-49a4-9bc7-e4239911a7de
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617794165;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=3Feb04uJ2mT3yvkWQEWoEMDV9q3cUo0X77tX0WyXk/8=;
  b=LIxmoRu3l2tMzlCunvi7AqpAyTkZihc54iPS1tVS0rNSMO60UGAmsvRY
   0xDbHmKeBalaZpd8HmRVMQ+R6/aWIae6sG4ZcyaEpye7TT1kqWGTCrTtn
   qqbjLicr56xzqyuWAfaIoG6OZByfzarNjgF77xQwGxrHGZjs3zYQNmF0e
   E=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: au6gzlD1/or/7Oex6GTk2CbqexviU8RooZn1LeRxp2XsIfgsjceRC1QjysE8zliHKM5EH/qjdS
 Y/KtwcXSX4K5Tk2Y5Xjwr7XSWXRaJwXzgbJnlfQ3/lHbEixbOa6sHOZLaIOERfkksJkp/e6cU8
 SpTSnLE1ObDOQD36i3XaCj5eFU2414Szm+1dZVVPhNKUt0lM1BjCICSfmRdXEKGBBBioKcqlo5
 cQSP0XMkUZXU7qnUq8Na76Ju1quBu1ry2F1YK7CPVOoOkCIf+apenxMW379Zrbz383HDW5ZymX
 7G0=
X-SBRS: 5.2
X-MesageID: 40910267
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:uLktNK6/dKziCEzZbgPXwGbXdLJzesId70hD6mlaQ3VuEvCwvc
 aogfgdyFvImC8cMUtQ++yoFaGcTRrnmKJdzpIWOd6ZMzXOmGztF4166Jun/juIIVyGysd49Y
 NNN5dzE8fxC18St7eY3CCdH8w7yNeKtICE7N21815XQQtna75t4m5CY26mO3Z7SwVcCZ0yGI
 D03LsgmxOadW0TfoCHABA+MdTrnNHXiIngJScPGh9P0mKzpAm14733GQXw5Hsjeg5IqI1CzU
 H11yHBooCZn97T8G6460bjq7lbgtnZ8f0GL9CNj8V9EESKti+YIKlsQb+6hxZwhO208l4lnO
 LBrH4bTqBO108=
X-IronPort-AV: E=Sophos;i="5.82,203,1613451600"; 
   d="scan'208";a="40910267"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aeKNrlPepNDZ/MP2SYnIRNNkd8654Xf6c3GYAZDUbjMV6+5qzc9l68vn//Fk2tGwyRWhWOf0ZMAxXXx6qXXtj0GTIGNr66+83Mk1+4o4QVuJLVeB9kLIgk/JOIewcW6sOKZiGFtOkVr5Rdn5KbEFast/ksBbMxjEM2fW/WiwWlT6ET7s6z8hZSReJjWRJ6mQw5eTXKfVwRDwSbA98UOvFEjooxR0BVgCyrgfxvo18lY7iDNyWXF5r0eLxziIsYGWHMX14FdOAhzavgbyz9jRYicJc/MYnBMQyEve/CShi2wQclF/ISJ8XPDyUEjCHxmq6sTkGWEf/muxXmY9y/6RIg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3Feb04uJ2mT3yvkWQEWoEMDV9q3cUo0X77tX0WyXk/8=;
 b=SrMlxJkdVv1S+CHkh4pKS1N5UKzbnasvZeUjfanQdXRwoDId2aFuvhOqY2rWBFY7VIBo+UOOZBjq2F0Am0d7bycNo9pnYY984KU4rA44r9GW1rihmuw03PuB3W6kXqRdIIAiVgePTdBSyTZb2doXJNiWZoBM4rsnmp5KUgI7WNpmte8E26C2mrYo7N6Q0cRMMqV+QvqVf8hX0vywFRE47/xRsQ07eCuiZK878UZmN07GntY2cMKO5td+tspvlMPyfAVIPv1NIhfw45nRz7xmuAttUvsXn0hHShJ4Ru1rvLYGO9yq9mFcgPvLuiKQN463sVeITm4Oc4yUWU7IwKcuxQ==
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=3Feb04uJ2mT3yvkWQEWoEMDV9q3cUo0X77tX0WyXk/8=;
 b=NX1RaljHJoHlPyB1IVnb8B6xjC+9NlbmKV6f9vaKi0CE5iff3UJFFQsYGaKpKKbTGyM78SFJuWrM+2J7g3+CmQX6vWi9Su9Yht4vZEFZ226YJJq9vwvMiyY0EFOmfL3/IneAbsJmW6taLHDrCp1jaL7Lu7/jqW4VPpIEnfAwAto=
Subject: Re: [PATCH 0/3] Use Doxygen and sphinx for html documentation
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Luca Fancellu <luca.fancellu@arm.com>, <xen-devel@lists.xenproject.org>,
	<bertrand.marquis@arm.com>, <wei.chen@arm.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <225d7e0a-c5c6-a954-9141-ba1d859f400a@citrix.com>
 <alpine.DEB.2.21.2104061418360.31460@sstabellini-ThinkPad-T480s>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <51bce878-89a3-d940-f40d-bfde794a0f4f@citrix.com>
Date: Wed, 7 Apr 2021 12:15:56 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <alpine.DEB.2.21.2104061418360.31460@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0144.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:193::23) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5727a4fe-fa28-4951-c190-08d8f9b686b7
X-MS-TrafficTypeDiagnostic: BN3PR03MB2132:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN3PR03MB2132CB2319F7934F0253335BBA759@BN3PR03MB2132.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: NkoLj3xs0OjCf4PqYz7nX8SlL03BzkuKWJ1pIJGN+1QM2I5QKdUz3k8sP1/7e0zB3zf+fbhWM1DRwrxwFQAEQyuE4X/WnPx42Fjo2SeguXN+4VRIaSrVS0+9UN2bIZaAg8fQmDKIIwhCIyQ++6n6A51asX/CJxk+VUNmzAJfh1zaq0f9Z/H8acBiDajm2LBmu2moSxRQQyD02s8849lQQ90rHK271Bl+st1+qGT5cY0lRkaXDJqAveiTV9naGr5FVqKwXkPiU/P7bDoF4ZjKd7uO6JfZto53+WhfRNjPXdsaTyF7IBJwrgU4F+iJOJQP/3akRNGEU9ua+rUp/Yow6Mar2vu3SKzWFITRraeD3RXo0O03NSc4WDZqdC2IyoXDsnc4d4+HecZMYOk2KIK8gD0KsfFUyBwKNKOkmcz4Dnruk31f4H8pirFhuqjTaaNtRWn0/BFLa4hy3D8Ye8SP9thif5j7e5X2jXTQZAa8g4Zet8SHOSJWreJQddfH4WuqcKKEyyZH4jUe7A3qxiSIa8bHkgU9f9LNo7gXPB37cS8qLdw+zGohE4+olN23PY8WgBIwMrd60aPjEW4zFrz7avNar+AmySoOloVpVkpesF3eCToBjkDvCHlde8MI6sBM9qlC6Y3iSZ/ZrJoD14rFOiXgCsbVr7mF9rRgyeW3JdIhup3Dn9mR73OQaifqbqsEMCdlY/Au2efPt9VoUti/Dl/gIs1LLmWBYGJmgXo5KNA=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(346002)(376002)(366004)(39850400004)(956004)(478600001)(2906002)(83380400001)(5660300002)(2616005)(6486002)(53546011)(26005)(66556008)(66476007)(66946007)(16576012)(31696002)(36756003)(31686004)(4326008)(6916009)(38100700001)(8676002)(6666004)(8936002)(316002)(54906003)(16526019)(86362001)(186003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?PvSEnZJ2iT+6OOXA3MUIw+V08+/FSZGgnK9fpnR?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 5727a4fe-fa28-4951-c190-08d8f9b686b7
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 11:16:01.5896
 (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: wtulnwS2xg0GjhjHD1N9tbCNZMviPiRGJbQs52jdppZ12cIjR5IvD+tTHdhGh2nHgkOm5mZQBWalqmQJyrmiuSK69TnDQlV+KqKQEYhj6G0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB2132
X-OriginatorOrg: citrix.com

On 06/04/2021 22:24, Stefano Stabellini wrote:
> On Tue, 6 Apr 2021, Andrew Cooper wrote:
>> On 06/04/2021 11:36, Luca Fancellu wrote:
>>> This serie introduce doxygen in the sphinx html docs generation.
>>> One benefit is to keep most of the documentation in the source
>>> files of xen so that it's more maintainable, on the other hand
>>> there are some limitation of doxygen that must be addressed
>>> modifying the current codebase (for example doxygen can't parse
>>> anonymous structure/union).
>>>
>>> To reproduce the documentation xen must be compiled because
>>> most of the headers are generated on compilation time from
>>> the makefiles.
>>>
>>> Here follows the steps to generate the sphinx html docs, some
>>> package may be required on your machine, everything is suggested
>>> by the autoconf script.
>>> Here I'm building the arm64 docs (the only introduced for now by
>>> this serie):
>>>
>>> ./configure
>>> make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-" menuconfig
>>> make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-"
>>> make -C docs XEN_TARGET_ARCH="arm64" sphinx-html
>>>
>>> now in docs/sphinx/html/ we have the generated docs starting
>>> from the index.html page.
>> Do you have a sample rendered output?
>>
>> The plan was to try and use Linux's kernel-doc plugin for Sphinx, which
>> is very doxygen-like.  Did you experiment with this option?
> As you probably know the end goal for Luca (and the Xen FuSa SIG as a
> whole) is to generate all FuSa documents, including requirements docs,
> interface docs, etc.
>
> FuSa requires us to follow the famous V model, where the high level
> requirements are linked to the lower level requirements, which are
> linked to the interface docs, which are linked all the way down to the
> code.
>
> Maintaining the linking is difficult and typically done with expensive
> proprietary FuSa tools.
>
> Fortunately, an engineer working with the Zephyr project developed a set
> of scripts for Doxygen that are able to generate the required FuSa docs
> and also links from in-code comments and markdown/rst docs in the tree.
>
> This is great work, and in the FuSa SIG we thought it would be best to
> align ourselves with Zephyr to be able to pull our efforts together on
> the tooling side instead of doing the same thing again on our own.
>
> This is the reason why we ended up with Doxygen.

So are we're saying that Doxygen is a hard dependency because there is
an extension for Doxygen to generate other safety docs?

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:00:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:00:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106636.203879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU7nK-0007e0-Fg; Wed, 07 Apr 2021 13:00:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106636.203879; Wed, 07 Apr 2021 13: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 1lU7nK-0007dt-C4; Wed, 07 Apr 2021 13:00:30 +0000
Received: by outflank-mailman (input) for mailman id 106636;
 Wed, 07 Apr 2021 13:00:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=bfSB=JE=gmail.com=wei.liu.linux@srs-us1.protection.inumbo.net>)
 id 1lU7nJ-0007do-5q
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 13:00:29 +0000
Received: from mail-wr1-f43.google.com (unknown [209.85.221.43])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8464b059-9ca3-4f83-af16-c47bd6c2d70f;
 Wed, 07 Apr 2021 13:00:28 +0000 (UTC)
Received: by mail-wr1-f43.google.com with SMTP id a12so8115562wrq.13
 for <xen-devel@lists.xenproject.org>; Wed, 07 Apr 2021 06:00:28 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id k3sm19834667wrc.67.2021.04.07.06.00.26
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 07 Apr 2021 06:00: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: 8464b059-9ca3-4f83-af16-c47bd6c2d70f
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=NwLKTNKDKP75b7p50B/o71iDiFr0JTQFhm3wPogEFdU=;
        b=gjg3DxMqeiXNCFKV8t5c1VnagBqFZ2YxeqGx1Tc224cGJyCmIIVRUASOXvgauLW/aw
         4yjO1YY79sizaCy9O/hCLVpsBlEjadeVCmPp50gC2NhHF7C1uTkbgxTZ9zc5O6tLyzk8
         2xcmyob+14B1MkXuWoW6AW99FcrqYhik2VtX3E2+9abPzUwJNrQ5bTsK3+p50dm9N6Le
         44VQ6kLGmn3W2cixwsmM4QWtCsANfdkUg0nGbIK2lnXoRfKylcgtvh+5uYbxC1qFlFhu
         7b1NBvb/9w9G4bnHNwdYSZlbL9p5oUSSUj2bA6ySYe4QiD9t5VkMYvCeKe6Uryxbjzq3
         0OSw==
X-Gm-Message-State: AOAM5327pjg/YbulBNq12tAPcl7Kw1cj/T2NoC9u78YlXd9VPswqsBTj
	HVsttDnqUta+puKLGlzOViE=
X-Google-Smtp-Source: ABdhPJze8GqaoC7VT4EBUo/P3ST9s9tLdsZXJdoXUKWyW/Gkw8UQr9VDY3nhMuQID9gqjD7B0tz1BA==
X-Received: by 2002:a05:6000:2a7:: with SMTP id l7mr3338450wry.413.1617800427739;
        Wed, 07 Apr 2021 06:00:27 -0700 (PDT)
Date: Wed, 7 Apr 2021 13:00:25 +0000
From: Wei Liu <wei.liu@kernel.org>
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: sstabellini@kernel.org, jgross@suse.com, jgrall@amazon.com,
	boris.ostrovsky@oracle.com, tglx@linutronix.de, wei.liu@kernel.org,
	jbeulich@suse.com, yyankovskyi@gmail.com,
	xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
	stable@vger.kernel.org, bertrand.marquis@arm.com
Subject: Re: [PATCH] xen/evtchn: Change irq_info lock to raw_spinlock_t
Message-ID: <20210407130025.tfe6aszjyjzz6ar2@liuwe-devbox-debian-v2>
References: <20210406105105.10141-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210406105105.10141-1-luca.fancellu@arm.com>

On Tue, Apr 06, 2021 at 11:51:04AM +0100, Luca Fancellu wrote:
> Unmask operation must be called with interrupt disabled,
> on preempt_rt spin_lock_irqsave/spin_unlock_irqrestore
> don't disable/enable interrupts, so use raw_* implementation
> and change lock variable in struct irq_info from spinlock_t
> to raw_spinlock_t
> 
> Cc: stable@vger.kernel.org
> Fixes: 25da4618af24 ("xen/events: don't unmask an event channel
> when an eoi is pending")
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>

Reviewed-by: Wei Liu <wei.liu@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:05:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:05:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106641.203891 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU7s3-0007sF-1O; Wed, 07 Apr 2021 13:05:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106641.203891; Wed, 07 Apr 2021 13:05:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU7s2-0007s8-UN; Wed, 07 Apr 2021 13:05:22 +0000
Received: by outflank-mailman (input) for mailman id 106641;
 Wed, 07 Apr 2021 13:05:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IknL=JE=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lU7s1-0007s3-Gi
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 13:05:21 +0000
Received: from EUR02-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.2.47]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e7cf94e6-23cd-47fc-9cfb-f57ab671300f;
 Wed, 07 Apr 2021 13:05:19 +0000 (UTC)
Received: from AM5PR0301CA0006.eurprd03.prod.outlook.com
 (2603:10a6:206:14::19) by AM0PR08MB3346.eurprd08.prod.outlook.com
 (2603:10a6:208:5e::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Wed, 7 Apr
 2021 13:05:17 +0000
Received: from VE1EUR03FT034.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:14:cafe::c) by AM5PR0301CA0006.outlook.office365.com
 (2603:10a6:206:14::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 13:05:17 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT034.mail.protection.outlook.com (10.152.18.85) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 13:05:16 +0000
Received: ("Tessian outbound b610e7b4d771:v90");
 Wed, 07 Apr 2021 13:05:16 +0000
Received: from ed1cd8645b77.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CEFAA410-6E66-468E-A585-2941F333D672.1; 
 Wed, 07 Apr 2021 13:05:05 +0000
Received: from EUR02-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ed1cd8645b77.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 13:05:05 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB4160.eurprd08.prod.outlook.com (2603:10a6:803:ea::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Wed, 7 Apr
 2021 13:05:02 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 13: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: e7cf94e6-23cd-47fc-9cfb-f57ab671300f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=58YeYyN7AD/5ayoMnTKbrRW7IWUcHLWTX2CkyFboBWA=;
 b=7rjsTElRB3efR8Sxs23jVtZW+b/3M3jKX0zMGJASYoLBoOAz0SRdCBERPPcQJRUyKMowuP6xhgYLpVNAB6N38jlDRP35C7fKv3cLfY1z01h7JmtmFJr/ZxfC8v5RUykWMUn3IM6jiUmcHBiLK/+krVAGnI3xj52fO322fd+us7E=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: ec09601209d34ea4
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VBxNskj1vYH+nH08S+lM4i1juFXfbQZHYpuf5ewEpx3KZDvlxxpt/ZNApuJj1JCLGtX9V8DbCXBC62K9D5xZTWHGYPxnYlxra/An2Al09C7XIukiFJyLZu1y68h58aHKWhlGdkG8QHU9I6LHl1tYIXRtUDZ114oUzJ4fRlshfhyO1HmEHJO/kirYLzESh3DG6kDh4X7SGr/zpeP3Muh1/pMu2UErPyPHv0NcrWEMLPPCYjSOQmzpnS9AeF23p3b6FqRMZGC3GzJKmqS3n5iKAie9yAaULXYQaWQUtSYCVkxxLdV5GRkyRc092cLMznRN/9J579wMUmZyfn+eLjahyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=58YeYyN7AD/5ayoMnTKbrRW7IWUcHLWTX2CkyFboBWA=;
 b=TbSqjtM8muANF7KPqb0/Ght7nhf7n/sUzNgTIpJ2NOqZnJNR5ofc8gKuSmeSfNnFku8SWBUcV9s9VxABZZbcenaMrg0DpsEJQjplxps+ar87pshzDvL26Jk74jxpbXzfqcf2E2muX3cJ4hNtkvcvdXEm9NU18dMFF23li4/xS9kXx23mALq1otXLBVOlmqC3b16rPK0WWOjXMA5h2//Et8RTlC0IiS0sQgI8CqUDaRq9OsBfrlUYT3FicA/Velx2X4oeVQhamDkJJg2/RZ+2IxHupvIHLnFDJ+lLRd1EV++RcN0JcLMAnlJwdc/X9lSDXQjnL9hgDBinOPBfVHUzlw==
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=58YeYyN7AD/5ayoMnTKbrRW7IWUcHLWTX2CkyFboBWA=;
 b=7rjsTElRB3efR8Sxs23jVtZW+b/3M3jKX0zMGJASYoLBoOAz0SRdCBERPPcQJRUyKMowuP6xhgYLpVNAB6N38jlDRP35C7fKv3cLfY1z01h7JmtmFJr/ZxfC8v5RUykWMUn3IM6jiUmcHBiLK/+krVAGnI3xj52fO322fd+us7E=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, Luca Fancellu
	<Luca.Fancellu@arm.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@arm.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 0/3] Use Doxygen and sphinx for html documentation
Thread-Topic: [PATCH 0/3] Use Doxygen and sphinx for html documentation
Thread-Index: AQHXKtDMN2t79z0BVUq4bhKNFfdfZaqnYUoAgACfooCAAOg0AIAAHnqA
Date: Wed, 7 Apr 2021 13:05:02 +0000
Message-ID: <FBE77A52-92EB-4E65-81DA-2E3858A87A73@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <225d7e0a-c5c6-a954-9141-ba1d859f400a@citrix.com>
 <alpine.DEB.2.21.2104061418360.31460@sstabellini-ThinkPad-T480s>
 <51bce878-89a3-d940-f40d-bfde794a0f4f@citrix.com>
In-Reply-To: <51bce878-89a3-d940-f40d-bfde794a0f4f@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.3654.60.0.2.21)
Authentication-Results-Original: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [212.20.154.75]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: f2cc7295-e5f7-4263-0c8e-08d8f9c5ca1f
x-ms-traffictypediagnostic: VI1PR08MB4160:|AM0PR08MB3346:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM0PR08MB334686C843B3E6671B2070FE9D759@AM0PR08MB3346.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 NWfK83K0wvaCQjSd3brFZGYkn6YjruIVyTXeih2zAksrnZQ5mNO8O9BJNAgZBWzvSYNNoyZ3wOb3+LWIKT/YaSzBhfYTvvYgyloFitxHy+2b+p4JF0BDzpvZsq4hIIL/Mvvur7IargN8nWw5jJVcYBDGL8LRarqJ0qEJFiEx8LxCDoKfTxD0KJ3nhhW39+TvdXrm7vNdhCUSWppIrw5YNPAaJ/syy/o8V/RB2N9hhqA/xQPsyZiNsxbHy4j8xHCT7m4fNDFlelxZC/Gdhuj5RyOD7wB0zLcYKW+3f+QYI/Od+MmlSwE/xlGfL3tpKx6yGHZbr8SR9/CDvTIsn9oh8fklXV4vWDB2bwQr8+c6c5P+rTeywlE72ypzIYdvjFc4pC2bxN+Hmkd2OXoHPw6zNP1KUZgBvF2npuNDLAK7MxRE+98ZN8CK+cyOUkFq/AT9KAVgb4sU2popSbu2J3alzI9neiUjc/hSaGMA7k5neZAGQQfj6y7eoMEtR9ZFBNkCN0vHMC+1fK/ZLZCTa+ZLA28E04MbBVVHvRKZPwrKk77cK+7r/UXIL9TZEXzJIMuo5jVTlW6KW4Pvozo8zsnpxyEfqWy2Y4BJsfYOCoOJCF56tB8vIuOXwLrDEuzRLaJCS9pWcS9rxxJFyLUzgaAiQngk79YDza+qXjVS/vVNggwWN5W0InKnp+usUF4L0z5Ls4UbJKecJQbx2brhkIIlaZLcwT7twZnnyTouPxVsxVF8lIxKUec/IePH+h1I+nkUUH3mUU9zb9jLUiGjH9UXcw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(136003)(396003)(346002)(376002)(366004)(86362001)(4326008)(33656002)(316002)(6512007)(8676002)(71200400001)(6486002)(2616005)(186003)(966005)(54906003)(6506007)(8936002)(478600001)(38100700001)(91956017)(5660300002)(2906002)(76116006)(64756008)(53546011)(66556008)(83380400001)(6916009)(66446008)(26005)(66946007)(66476007)(36756003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?B8l2NsbWFCKbBr73p1HQN/6iZAGFdQg5Lsdcqnr7iLBSOkBuUkBqRr8tEuj7?=
 =?us-ascii?Q?/sd4pmoXsZTQe8POY91jYjFIIHSCnXEkr6hUgR/xvwn2ryIIJtE1JuDTB18l?=
 =?us-ascii?Q?5G5PvB4KGcYn28HBZIAo9+70uNqk8MjApeEYkPWrtVGBfjs0wLNP70YwBV+r?=
 =?us-ascii?Q?I3c9voFxacD68ER+KYXTPJORHa+6rB2i4bjsSRYwmwvhagDB6wHWhRUvcX5O?=
 =?us-ascii?Q?cSVBDKAx/0IvUjIiel4W8lfPgtv7SORiQbx1IdUGBg7QUuDI8GY46mjkPR7t?=
 =?us-ascii?Q?0DSJa1FzpDY7bpr/3ZQBiRo/Srz5h4KZXxY9hfYKaDDVLeMd/iWoUstu7zPn?=
 =?us-ascii?Q?+L/gZaWxIGOirvjW+IUMVFSDR9EFpioh9cZcDPhp7M+iAnushNIvfYL97MRn?=
 =?us-ascii?Q?1LrBbDnaK5s9smVGwYYqbg/rqBzQWWIN0gJEdN9YW/T/Sfrtjz++dfgNuQ8o?=
 =?us-ascii?Q?GUHhtWLzf5RN7+skTAld9XMqpYohsPFwd9CIaau6zQaRe+LdU4aPH7W1qNlg?=
 =?us-ascii?Q?J6GHR9l6QJuBtcZ6hz0UnmLUHcETb6LqtDaMXMrZXR1ptQjLV7DB+AI2EKCv?=
 =?us-ascii?Q?xUlJW6h4BEwihM6K0vgVaCt1us4RfxwpsDXMdkZldE1fHMPefteH2HniLt1+?=
 =?us-ascii?Q?DUvNAd8U6zfcXyoWYp1MVuPFFiR/SvkV6sdWlTmfIdPLmXJL3P24KbVopQoc?=
 =?us-ascii?Q?6PN0zU++Hx/mrc0heC+BbX8eDfg6R8SEsrCEzpI187FLZtFBZREBlDVhR+D7?=
 =?us-ascii?Q?zT7ILAzTRImUB7kFOQjGlH9VZAIhgVSrSjsa75bg648tmCWIWkh3FwXMJshb?=
 =?us-ascii?Q?ILKiox1Wn72BQDGYX4KOLI7Jkpcr6SmcYT8YEmoog2WEP77RPPWpc9Ps/zb4?=
 =?us-ascii?Q?C4xfD/wkPY2mXrQ3yDdzoDFnWts1gX84OHXyM0jE6pKVewUh48lQ2Ppj6KDJ?=
 =?us-ascii?Q?qaUGY0lBjQleORlzooEcYq/nK7EL7H/KIqN5EWDPG507sQyRuuMzr68pliy9?=
 =?us-ascii?Q?3KVaA9EtUWRviczXn1C8cuTpFbnLmokBO5VhPLLFugxp/z5nCNhadmuLaLxF?=
 =?us-ascii?Q?c9spHxL+0i9QCRbMkxqC2kvBAraIoya3+74OE3lZhdyxDYIwRpJIIjKHsLLx?=
 =?us-ascii?Q?BE1ORdjf7ERzeIQi7mBMtYjeMpXWFVsrLcmxFNxroopqMeFN6BDjoOkSqMTy?=
 =?us-ascii?Q?UK9xCs1Got649tWuQDrXaTTA3mU9DCAGba+zJlGM0+JSdlqVI0/x4B7WiRKO?=
 =?us-ascii?Q?HN9vIvAGRHiFXi8S3eVM/W0rqYjtPOqpm0Kd3+scuoiIn4FfzYsa4ngmV5+e?=
 =?us-ascii?Q?vXShPQH8IbcpsXS40EWbOhUA?=
Content-Type: text/plain; charset="us-ascii"
Content-ID: <4D07F061EC65604F920B2317706AC0B5@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4160
Original-Authentication-Results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT034.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	bf202b10-2163-45a2-4b99-08d8f9c5c1b0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mHDD7nxZgudg0KHB9OpVFk/zt1CWh9U1H9f/ffjb3HR4L7tEbN26kmdtShpxfCKj/XkTL99/SjvcjoMJuMGZZx41al50pl0ltbnKqjqHmuBXDGWarBxtIIxeLrRfKHZ5fYuKwGpA1U1UvVACigjAiMmuVcrJojxNlJ+KfCc0luXHzNmQsZMxdALjSJhNFdMBHJziBCmDuFjIirRLWMicy+wmoSfFEInQ+mEbzAR+0NK1mrU8qO8BSnCdwQqSkSqTE3o+FZdt8Pus/t1wCQDLyyBRak+yWM4HU0t15W9DmsBAp65muP5oZSZOkMm+VoaPTf500fA+NSnnImBScFTB6rpZc7X5KblLFN97atdtfq+jhXEyx42r2ou6izXbdbKuToaGK/m/Nmr109Hl4G/Ep4x8Bqf+uz8guv/YI4CN1bA6thiszTbKlRJMMCbVBHL4PUjEPXHDWUkGiwIKLg82vfiwNEBfXFLmRik3amIP5s59DCtLU+mo1+eEKuBAiuMbf4It0z+6ge1FjyXTVjXd7OWugwUBdMIftlWECU0Pn6GmmSaXFZb4FPHQxwmbOrdmr21YIjOMFRuT17a+wkYvWUyRSmvj/e50kWzTvb64frpvThJg7VnYWmruyR1YbkUIJT3eXK4C7QUlZp7Dmw+OrCHr2vOuxHNp4fzibuAuGProCXk9RaEY/V0IKslEdOxSeKdmma2Ma2UjSrkB+11q4I7Zt6e3HzSWt01UQiyN7Sg=
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:(4636009)(39860400002)(136003)(346002)(376002)(396003)(46966006)(36840700001)(36756003)(186003)(2906002)(6486002)(2616005)(33656002)(5660300002)(316002)(478600001)(26005)(83380400001)(4326008)(36860700001)(82310400003)(336012)(966005)(70206006)(6512007)(82740400003)(356005)(86362001)(8936002)(6506007)(53546011)(81166007)(47076005)(8676002)(6862004)(54906003)(70586007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 13:05:16.6408
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f2cc7295-e5f7-4263-0c8e-08d8f9c5ca1f
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:
	VE1EUR03FT034.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3346

Hi Andrew,

> On 7 Apr 2021, at 12:15, Andrew Cooper <andrew.cooper3@citrix.com> wrote:
>=20
> On 06/04/2021 22:24, Stefano Stabellini wrote:
>> On Tue, 6 Apr 2021, Andrew Cooper wrote:
>>> On 06/04/2021 11:36, Luca Fancellu wrote:
>>>> This serie introduce doxygen in the sphinx html docs generation.
>>>> One benefit is to keep most of the documentation in the source
>>>> files of xen so that it's more maintainable, on the other hand
>>>> there are some limitation of doxygen that must be addressed
>>>> modifying the current codebase (for example doxygen can't parse
>>>> anonymous structure/union).
>>>>=20
>>>> To reproduce the documentation xen must be compiled because
>>>> most of the headers are generated on compilation time from
>>>> the makefiles.
>>>>=20
>>>> Here follows the steps to generate the sphinx html docs, some
>>>> package may be required on your machine, everything is suggested
>>>> by the autoconf script.
>>>> Here I'm building the arm64 docs (the only introduced for now by
>>>> this serie):
>>>>=20
>>>> ./configure
>>>> make -C xen XEN_TARGET_ARCH=3D"arm64" CROSS_COMPILE=3D"aarch64-linux-g=
nu-" menuconfig
>>>> make -C xen XEN_TARGET_ARCH=3D"arm64" CROSS_COMPILE=3D"aarch64-linux-g=
nu-"
>>>> make -C docs XEN_TARGET_ARCH=3D"arm64" sphinx-html
>>>>=20
>>>> now in docs/sphinx/html/ we have the generated docs starting
>>>> from the index.html page.
>>> Do you have a sample rendered output?
>>>=20
>>> The plan was to try and use Linux's kernel-doc plugin for Sphinx, which
>>> is very doxygen-like.  Did you experiment with this option?
>> As you probably know the end goal for Luca (and the Xen FuSa SIG as a
>> whole) is to generate all FuSa documents, including requirements docs,
>> interface docs, etc.
>>=20
>> FuSa requires us to follow the famous V model, where the high level
>> requirements are linked to the lower level requirements, which are
>> linked to the interface docs, which are linked all the way down to the
>> code.
>>=20
>> Maintaining the linking is difficult and typically done with expensive
>> proprietary FuSa tools.
>>=20
>> Fortunately, an engineer working with the Zephyr project developed a set
>> of scripts for Doxygen that are able to generate the required FuSa docs
>> and also links from in-code comments and markdown/rst docs in the tree.
>>=20
>> This is great work, and in the FuSa SIG we thought it would be best to
>> align ourselves with Zephyr to be able to pull our efforts together on
>> the tooling side instead of doing the same thing again on our own.
>>=20
>> This is the reason why we ended up with Doxygen.
>=20
> So are we're saying that Doxygen is a hard dependency because there is
> an extension for Doxygen to generate other safety docs?

hard no as we could find other solution but the current strategy we take to=
gether
with Zephyr project is based on using Doxygen for requirement linking.

Also an other argument is that the documentation generated is actually nice=
 and
that could also be useful for developers and users (see [1] for Zephyr doc)=
.

Our global idea is also that using doxygen we can extract a big part of the
documentation (which will partly be used as certification) directly from th=
e
code which will make it a lot easier for developers to maintain.

Regards
Bertrand


[1] https://docs.zephyrproject.org/latest/


>=20
> ~Andrew
>=20



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:07:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:07:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106645.203903 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU7uP-000801-G5; Wed, 07 Apr 2021 13:07:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106645.203903; Wed, 07 Apr 2021 13: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 1lU7uP-0007zu-CF; Wed, 07 Apr 2021 13:07:49 +0000
Received: by outflank-mailman (input) for mailman id 106645;
 Wed, 07 Apr 2021 13:07: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 1lU7uO-0007zp-FE
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 13:07: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 1lU7uK-0005cF-Ok; Wed, 07 Apr 2021 13:07:44 +0000
Received: from 54-240-197-225.amazon.com ([54.240.197.225]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lU7uK-0003Hy-GR; Wed, 07 Apr 2021 13:07: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=ZAIMHSNBDtB7mx8wPjOqBQ/ZCYNszxxcKRfktvek5Vw=; b=C4Pj1kR1bf/Vf7v6K/KcoVY3Cr
	5CAUyKLQZ17dWR2xf6FljJsW+QTz2chZKcn+PbiwhVBpm4dnAg4gMuz+TwF7ND+2LA439DcRy533n
	ZYcud/bf4Cqzw+gPackMbUcRV+2J94vYDWI5cBxW2hqeiN7zvQxYpysTKxbRZbecIGwA=;
Subject: Re: [PATCH 0/3] Use Doxygen and sphinx for html documentation
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <fe2480f4-954f-3929-be81-5905917275d1@xen.org>
Date: Wed, 7 Apr 2021 14:07:42 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210406103603.8530-1-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 06/04/2021 11:36, Luca Fancellu wrote:
> This serie introduce doxygen in the sphinx html docs generation.
> One benefit is to keep most of the documentation in the source
> files of xen so that it's more maintainable, on the other hand
> there are some limitation of doxygen that must be addressed
> modifying the current codebase (for example doxygen can't parse
> anonymous structure/union).
> 
> To reproduce the documentation xen must be compiled because
> most of the headers are generated on compilation time from
> the makefiles.
> 
> Here follows the steps to generate the sphinx html docs, some
> package may be required on your machine, everything is suggested
> by the autoconf script.
> Here I'm building the arm64 docs (the only introduced for now by
> this serie):
> 
> ./configure
> make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-" menuconfig
> make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-"
> make -C docs XEN_TARGET_ARCH="arm64" sphinx-html

I have tried this instruction and got:

make: Entering directory '/home/ANT.AMAZON.COM/jgrall/works/oss/xen/docs'
xen.doxyfile
make: xen.doxyfile: Command not found
Makefile:67: recipe for target 'sphinx-html' failed
make: *** [sphinx-html] Error 127
make: Leaving directory '/home/ANT.AMAZON.COM/jgrall/works/oss/xen/docs'

AFAICT, $DOXYGEN will only get defined when sphinx-build is installed.
When sphinx-build is not installed SPHINXBUILD will be equal to 'no', 
but the Makefile check for emptiness.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:13:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:13:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106651.203914 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU80F-0000U1-5O; Wed, 07 Apr 2021 13:13:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106651.203914; Wed, 07 Apr 2021 13:13: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 1lU80F-0000Tu-2K; Wed, 07 Apr 2021 13:13:51 +0000
Received: by outflank-mailman (input) for mailman id 106651;
 Wed, 07 Apr 2021 13:13: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 1lU80E-0000Tp-4p
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 13:13: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 1lU80A-0005jX-HO; Wed, 07 Apr 2021 13:13:46 +0000
Received: from 54-240-197-225.amazon.com ([54.240.197.225]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lU80A-0003ol-6I; Wed, 07 Apr 2021 13: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=gvJGI3xqiq8VtG9qY+/6SURufqypdjLIM32qPBtE0dw=; b=gKQUTiGO3EYd5pmM3i7RtUVnI/
	1vEP4CH64RK466O5a37x/O2QLn6vLPmCYbKE1f5izXwbMnhp6p2Vxvy/D7+1TFRV7jPCJt83JTiLV
	M+GIjfDOiJtwwjqqGRU1NEh1hSRniVek/E8AUSP7AprKCNrV8SErg4asUYcvsJ7lIPtA=;
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
Date: Wed, 7 Apr 2021 14:13:44 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210406103603.8530-4-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

On 06/04/2021 11:36, Luca Fancellu wrote:
> Modification to include/public/grant_table.h:
> 
> 1) Change anonymous structure to be named structure,
>     because doxygen can't deal with them.

What do you mean by can't deal with them? I had a quick try with doxygen 
build and couldn't find any failure (although I haven't looked at the 
output).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:16:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:16:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106655.203927 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU834-0000dQ-KS; Wed, 07 Apr 2021 13:16:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106655.203927; Wed, 07 Apr 2021 13: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 1lU834-0000dJ-Gj; Wed, 07 Apr 2021 13:16:46 +0000
Received: by outflank-mailman (input) for mailman id 106655;
 Wed, 07 Apr 2021 13:16:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uIxC=JE=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lU832-0000cw-RQ
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 13:16:44 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:7d00::602])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d56cca41-5fd1-4df0-8c92-b2a87cd64b04;
 Wed, 07 Apr 2021 13:16:42 +0000 (UTC)
Received: from DB8PR04CA0022.eurprd04.prod.outlook.com (2603:10a6:10:110::32)
 by PAXPR08MB6927.eurprd08.prod.outlook.com (2603:10a6:102:133::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.29; Wed, 7 Apr
 2021 13:16:40 +0000
Received: from DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:110:cafe::e3) by DB8PR04CA0022.outlook.office365.com
 (2603:10a6:10:110::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 13:16:40 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT036.mail.protection.outlook.com (10.152.20.185) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 13:16:40 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Wed, 07 Apr 2021 13:16:40 +0000
Received: from ba22a357c451.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 150B7C5B-F7DB-4821-88C3-5B70CB0B8AD9.1; 
 Wed, 07 Apr 2021 13:16:33 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ba22a357c451.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 13:16:33 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3549.eurprd08.prod.outlook.com (2603:10a6:803:89::32)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.29; Wed, 7 Apr
 2021 13:16:23 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 13:16:23 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO2P265CA0398.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:f::26) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Wed, 7 Apr 2021 13:16:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d56cca41-5fd1-4df0-8c92-b2a87cd64b04
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q9fjCGMSbJoeByJce2V5STGBfy/TAZ/Mj3SIxLM0oHM=;
 b=WLBqKZsvScJCubEfp7YK6sCUjxE20XqYh2H8934Fl88F5iTNgzb3d7pjNe2k9nI1IXeAbv9ivh5y9GhMXfdMI0kLioEChflgRuOE2HNi69kAkA4L0ONCMq6JEtcw6+6lLlczl/5C1ZxhfjCIhXEyoOerbJnGK3BQQyGHQhE49j8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 908f78475a53c17a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D42hGDL/4TLogCcIo4n2Q4+PeS8OhXsccPVrkOOvAgfwhjMHtd8cFh57FoeXbxgO2h5qlz67iiZ4C+CYsULdsnHXsOwoxa8OZpCpo2KXWgJkEvxLsrrZg7WpIIzkgnj+tJN5xfWvOCL6euj2VGxah1m6yFAOk/HsIFT9vmudUIQiiFSzCSPiWYHck2t4NjXtB1K8qc/bLaeTeK6KORqvUYyoeczCvAtuGNdHybvM0z7bKRiV57CDlP6YsgjvVWj63wgUDkwPIm9sqrezJvdXw/m4gULlKvo8MdtmqYH8vXd6jIJzBNCMa5g3+eqSj8dm7LZjt16RKNAalGD6ybPgMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q9fjCGMSbJoeByJce2V5STGBfy/TAZ/Mj3SIxLM0oHM=;
 b=bbTf3h2ruVPFSwrSPGojjpRSjD4pjfduhoQD49mtO1FeHheGitTAiH+VnNWDbuh9eAl7U3o31yWczSS0JCcp+7F10JUz21+45Nh3x8dzEAATGTs4ELpSVulvkBdkEPkYgM7hG1AZgu0e1hFyR4oPSdA6rOiwNxGxgycxVHihYGvJdfmH8jj7HSKIm8KEE0RxN6F5AOJQ51fIb0U5dASEPF69RQhum5iOnBqUcIqZytTyIFAUcguxoezZZfTA/gPic9ARSd6Ni6kdYXHw61b2pMJPjy2GadzlyepSvUKqOl/9+/BcK/F7l9cY8XRDfpqTQo6ZzC0NQ51TTjeqfjJXXw==
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=Q9fjCGMSbJoeByJce2V5STGBfy/TAZ/Mj3SIxLM0oHM=;
 b=WLBqKZsvScJCubEfp7YK6sCUjxE20XqYh2H8934Fl88F5iTNgzb3d7pjNe2k9nI1IXeAbv9ivh5y9GhMXfdMI0kLioEChflgRuOE2HNi69kAkA4L0ONCMq6JEtcw6+6lLlczl/5C1ZxhfjCIhXEyoOerbJnGK3BQQyGHQhE49j8=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH 0/3] Use Doxygen and sphinx for html documentation
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <fe2480f4-954f-3929-be81-5905917275d1@xen.org>
Date: Wed, 7 Apr 2021 14:16:11 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <95D5306B-7F1E-4E3A-8681-A94A267C7945@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <fe2480f4-954f-3929-be81-5905917275d1@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P265CA0398.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:f::26) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 474a6ab1-939c-48a0-24d5-08d8f9c7616e
X-MS-TrafficTypeDiagnostic: VI1PR08MB3549:|PAXPR08MB6927:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<PAXPR08MB69272387E921D0125DCC86A7E4759@PAXPR08MB6927.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 wsxOt/pVBmmsKEccqjMUVcvK5O8X7796pYnWxqe3iZiRQHl1qTNqH0c10bp/up7L37tWzp1kko2F+0aGwJgfB3J4I3bkTqc35+y5v72akPJijxpOzgbuqVAYZQPd6PvVpl6xzBycn6ojJFW71CtdmeTTzischUQWQQnWNWqA4zQZjHcK+oJmHlACFj0+GK2+NQXGkop4PiqxwJ5DnqvkwW5mf85uxD0LRrDuSObJsmIRsN1YtsjvVRuNUgz44twXCGOv/J+NsnfJKqlSnXr9vcij7jp/PWQnWy6qim/88fcGPfDjyIc8zHpp6N+mUlYcfApQPNNnWFq/WtTHYqX2s9uKknqRCdXtTrw67Bmo3+LujFZapnpeLYaf9sEHx6YcWmTHR2eK1DGlaoIkJOFGDhAgC/K/eLHN4zuJSrqt0IIhECFta6cNdoUBUBoJNjTYtF49ru4eM+afZ9EfbVlsRBhes1AvyFp3Uf8sCWCtTSKocEIjyqey3CHvpW+n83z6kOfPIlaRc7ZZ0x0wMn5cWa3jIbyYAl1deBc+lXRpv2t10op198QmkPaKPz6T1G9GUURmts5DznaHSgTfbffChYG4DcKZ/hlOYBwiebXcx+7xUuBBITzmET8so3tnkU2ZTX6QDxVZepc28YNabsiickQoTudefsWw8Fu3v2kTLDKeptbQeNZmP0QOasGVJVlasSYAM3Egih1JJAxTK3kDXXFyEonyH0qkzGisJF5D7S0=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(39860400002)(396003)(376002)(346002)(366004)(956004)(52116002)(2616005)(66476007)(66556008)(4326008)(6486002)(53546011)(6666004)(7696005)(186003)(16526019)(83380400001)(26005)(66946007)(5660300002)(38100700001)(8936002)(86362001)(8676002)(33656002)(478600001)(54906003)(2906002)(44832011)(38350700001)(36756003)(316002)(6916009)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3549
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	d8b09c63-d528-4ae1-ea51-08d8f9c75723
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	AqB4vJ45uIG2OPUVzfm4lZTBfU3CWfGlF0t6x64m+p2MEM6047DQ9+dFVFvoHbFLtfubK8bVR7ifExdapwMoSr98VjiBqKvlxXOvNxPus77lP7pir8lH1ziH7MOu5xNtOLNEyUAGNCmPu8yuJBdYYka6x5FpNZDYlKyVdsWDqTvVKO22sbV1mipTR5kZ28A999I71WuqKyZK8YgMHpe0fPUe78wWwhjZJoJNA7jVV4JeSx7TDwo7mJ0rnCzeUM1rEwNbO2nF/HEeytdnjiz5y5Q0TXFYEwPC0LqOXuEX4UEzwKnaHGCPay+WZKimk/GECzUomwOQFqQR4EM6xAauRRBHYmeiokknjGaAIU2cD3Td3nbrexn4a/OYFqro+FJSTATJH8S3JuHCb3YYc/jz+bwfE8xOMKscwUHzNRjwrzgtspqSpKouzQ1aH0pWCcTqX6+DHJ/COmj6/8McRkghn0uJf/ZZUQeNjvZRNvFOgi7Hubsn3OSNGZ1+NIfb9qZSkmtAJqPOnrFvIgX5zyJ9C3X6SofYOmN3l3KfHr4M1OuCdqf/ubA+VnxDr5GK30qYzD2Kb4SjDXNqnmDW33TJjooX3vJiUjqInz8y/cdkMdWU334VoYrRvDXFxxjluSYQjIjqrmJqdL4T3r/srFpHSDYhz2VhQzuOMLmV8mKcnLY=
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:(4636009)(39860400002)(396003)(346002)(376002)(136003)(46966006)(36840700001)(47076005)(8936002)(956004)(81166007)(36756003)(82310400003)(2616005)(70586007)(6862004)(8676002)(7696005)(26005)(186003)(16526019)(478600001)(70206006)(6486002)(86362001)(4326008)(33656002)(83380400001)(336012)(6666004)(54906003)(53546011)(44832011)(356005)(5660300002)(82740400003)(36860700001)(316002)(2906002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 13:16:40.1271
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 474a6ab1-939c-48a0-24d5-08d8f9c7616e
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:
	DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6927



> On 7 Apr 2021, at 14:07, Julien Grall <julien@xen.org> wrote:
>=20
>=20
>=20
> On 06/04/2021 11:36, Luca Fancellu wrote:
>> This serie introduce doxygen in the sphinx html docs generation.
>> One benefit is to keep most of the documentation in the source
>> files of xen so that it's more maintainable, on the other hand
>> there are some limitation of doxygen that must be addressed
>> modifying the current codebase (for example doxygen can't parse
>> anonymous structure/union).
>> To reproduce the documentation xen must be compiled because
>> most of the headers are generated on compilation time from
>> the makefiles.
>> Here follows the steps to generate the sphinx html docs, some
>> package may be required on your machine, everything is suggested
>> by the autoconf script.
>> Here I'm building the arm64 docs (the only introduced for now by
>> this serie):
>> ./configure
>> make -C xen XEN_TARGET_ARCH=3D"arm64" CROSS_COMPILE=3D"aarch64-linux-gnu=
-" menuconfig
>> make -C xen XEN_TARGET_ARCH=3D"arm64" CROSS_COMPILE=3D"aarch64-linux-gnu=
-"
>> make -C docs XEN_TARGET_ARCH=3D"arm64" sphinx-html
>=20
> I have tried this instruction and got:
>=20
> make: Entering directory '/home/ANT.AMAZON.COM/jgrall/works/oss/xen/docs'
> xen.doxyfile
> make: xen.doxyfile: Command not found
> Makefile:67: recipe for target 'sphinx-html' failed
> make: *** [sphinx-html] Error 127
> make: Leaving directory '/home/ANT.AMAZON.COM/jgrall/works/oss/xen/docs'
>=20
> AFAICT, $DOXYGEN will only get defined when sphinx-build is installed.
> When sphinx-build is not installed SPHINXBUILD will be equal to 'no', but=
 the Makefile check for emptiness.
>=20

Hi Julien,

Thank you for spotting it, I=E2=80=99ll fix it in the v2 patch

Cheers,
Luca

> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:20:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:20:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106664.203942 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU86q-0001Vk-9B; Wed, 07 Apr 2021 13:20:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106664.203942; Wed, 07 Apr 2021 13:20:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU86q-0001Vd-5x; Wed, 07 Apr 2021 13:20:40 +0000
Received: by outflank-mailman (input) for mailman id 106664;
 Wed, 07 Apr 2021 13:20:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uIxC=JE=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lU86o-0001VY-PN
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 13:20:38 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::60e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ec8ae955-761f-4b8f-9049-83d5eadfab98;
 Wed, 07 Apr 2021 13:20:37 +0000 (UTC)
Received: from DB6PR1001CA0048.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:4:55::34)
 by AM8PR08MB5698.eurprd08.prod.outlook.com (2603:10a6:20b:1c6::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.27; Wed, 7 Apr
 2021 13:20:32 +0000
Received: from DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:55:cafe::20) by DB6PR1001CA0048.outlook.office365.com
 (2603:10a6:4:55::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 13:20:32 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT010.mail.protection.outlook.com (10.152.20.96) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 13:20:32 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Wed, 07 Apr 2021 13:20:32 +0000
Received: from c72fff4cc9ab.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 08B90229-378C-4F72-9182-324782FE9017.1; 
 Wed, 07 Apr 2021 13:20:25 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c72fff4cc9ab.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 13:20:25 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR0801MB1630.eurprd08.prod.outlook.com (2603:10a6:800:59::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Wed, 7 Apr
 2021 13:20:13 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 13:20:13 +0000
Received: from [10.57.56.195] (217.140.99.251) by
 LO2P265CA0318.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a4::18) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Wed, 7 Apr 2021 13:20:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ec8ae955-761f-4b8f-9049-83d5eadfab98
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kEebKDub3F8KWGtdwDqIa3AZxv2AKbsuXHCG8kU85nI=;
 b=b5eXcWgr3i9BHlsQZyA57nzI+IJCTzVZET3/hhRU2xWfhAQsiwLW+JuZ89T9u+iW3HjJ4IjotWel4mZUfBAtMqUzLeC24UBMezf+UHN62GzW8w3s5DGd8ARkxiH3oUvTo7H2lsSLvfaE7c+iN2jXoIE4SaeM0go0C7ppqIIEifw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: bbdadd4ae92aa31e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jOdfWtrD9dEaDhbRgfdBdPyqnkROrYz8xY6R5zU+OFf0YqXS9ta6HWGVNnpDA9BONm1y5dVgcOs6MldRWpfz+DeWkQGnZpWccowmOP4F/yFBx/vMy6HU+BKf/xoROd+bWixYmnaFzQdiI1PdO0jKS3VpdsJ4sDrJ6IddK3B4omtWiczt2jvcJhrDP2HqgsprucJftWv9Y9NbnZHHWAIVSTzGYiMyht+nLmQkmBUznQEbpJklBg3CCl7TVNzI3VbFOUMB5BxHh8UIgt7hvIJI6ZPSHFgct8fTCT9U26+iMbX4XGoOoefBxActQTzXQCacp937UZSI7qyAp6mM8YIGPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kEebKDub3F8KWGtdwDqIa3AZxv2AKbsuXHCG8kU85nI=;
 b=aY9k6dHa97scoFvkjRFzCszYc/S4jbaWknanShii72BR3kgBOgUfayJk3OOLAtoht0nq/Racc0SC261hBIM2MqHkLmFCOCt8eltFWmZ16q98UviQaVpiM0rh6FgX7RsCBPu3cZYdRydc2Dva5HmAHFsQqD6Lq+4n2K5cjp3e7xzp0pa74+hu8ytFYwHKXC4oWtRfwszSFDPqzPMxSkteZOKoQ8Ld9yTMxkzyypJ0KPfBk9Oe+u88rjv1PQ7+MjySVvP7qa6VZeM7Jt/AqMSNjjlRfLx8KC6yTwtRNorOLIm216QHsPCsRZ2JX4ftK8eGX8K91F5jdv/NfNkJo0mUCQ==
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=kEebKDub3F8KWGtdwDqIa3AZxv2AKbsuXHCG8kU85nI=;
 b=b5eXcWgr3i9BHlsQZyA57nzI+IJCTzVZET3/hhRU2xWfhAQsiwLW+JuZ89T9u+iW3HjJ4IjotWel4mZUfBAtMqUzLeC24UBMezf+UHN62GzW8w3s5DGd8ARkxiH3oUvTo7H2lsSLvfaE7c+iN2jXoIE4SaeM0go0C7ppqIIEifw=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
Date: Wed, 7 Apr 2021 14:19:58 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [217.140.99.251]
X-ClientProxiedBy: LO2P265CA0318.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a4::18) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8afa918c-660a-45fc-3801-08d8f9c7ec12
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1630:|AM8PR08MB5698:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AM8PR08MB56984D68EB2F86EEA300D922E4759@AM8PR08MB5698.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 kDZkz9bUfaGcNq0bsIi2yuQocqOOLfgry7V66O6BImEnaWyJY4zmK3MZ5n3i6xv1VRzguO609InoOBq72s6fZT48wo9D8VY7t949dC4dGG4Ri/PiiERktU5ZMOrjUiz0eY6iVhxMJd00hX4anYeGFzaJzCCcbqOy2NO3ngUJypH8M5HwYcivYKHOg54QmSBdIyhqdF/X6F/iLNCld2maICl7jHHVhXeTFURNDT+6HxyfxI2mQ/3MvHiTv/vt001gURGbJATLHvZUVVukN5Cqwvd0Sl6Fez9zxKoZzoxO7xUdRJCZS/U5ngc+GBooBP+Sr18CgUhLzUg3i9IRGoj5jcBSN7CZyBWyousAqtLq/o4ulx1+Rmlvo9J2avB+24WPNAEonKGMMD9qcYclctQJqQKkNoRIjTzOV82XcOxXu6mnbkfDAuTF+0xqm7BzQ44/sy8YV9Xv0AGjcUOLb0iWKfiZCEZmIfzFDTQ3pdSDjXqVlCTTGrpYB4/P+2t8PjcLz6VBxXdBGHdNE9p56IHugjZXj5hw0zRnaQ2U1zNFMeNdGIjANvW0Q6Eb9123RXAmC/F7NlD6CB2DWPnSw7K83ZS1Tmnhde3DrMTNtvmuhurT4niZWensdUqBNbOwvRa0zBNZngEsBflna3EH6g7W8fRo+3pkPauxlkqmRNMHW1HEAcv7D9lFc5Gd+qIVZh0N2B4TCz/qBiFRPNk2um+xQyDAcxFkSUBnegWhKDE8VTc=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(346002)(366004)(39860400002)(136003)(8936002)(44832011)(86362001)(52116002)(53546011)(38350700001)(83380400001)(2906002)(4744005)(16526019)(186003)(6916009)(54906003)(478600001)(4326008)(36756003)(2616005)(956004)(26005)(38100700001)(316002)(33656002)(16576012)(66946007)(66556008)(66476007)(5660300002)(8676002)(6486002)(6666004)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
 =?utf-8?Q?MtHxcVRp2bxHniO/Qajd70geYSlRxIwjqOKIlYb?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1630
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	03863efa-1864-4d29-f483-08d8f9c7e0a6
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sqwS+at5fBLWxT91ik1qBaTdKCbgElkaTFG5pkNwe9X9mZkCK3I/V9rPVHU4JFoNxstM7AfwmRz7nNWwMTHVmJWePh3oIheQkhyrTdwDLlEGGjzYp0JCkWOT6wdMYnK0A/+lesLc6AdP1e6gOe6NwxZL+Mr9q7BjKLqc4pHIwndiYqY/muToT6R40GmQSqRVJAAeMm6nFbqGQSUKvcfaPczx7D1y6qkVKph6nZLd8oLdSItFxlNUQOrPqObhCckdRZ4/h6qW76CV26UTHtgsQ8Bxiwq53QuJnTqKYAK050pIDtStKgVr8yvr0kPOkYqcm0DKtCcUKs6cLmx4LcXvvpxQSmE2t6N1gKkahrgeKHhi+WFxyR6XCF49OnHthoRTRp96XsL2j1Mx5Gd3BHvZH585uNSWpwYXbN+Yv2eW/VXTlKPGf5b3JhA3mFqHrtU/wiNhjBnaPNcBwCDQWFIZ6La9dO/X0WxNn+O3o7xgdqwHcJ0Z08aQeWYIFHkc7/bGsTNTm107UM+glzMtNk8fAB0FJPTM1613ZOrBgHF6QbVaUIDqUBow+cuNVUCtTDQ7TeRxPVQjUpFWBzOwAZwSyeltGEhoceCCKhHeq12//tYzrxQS8iCGa6wyUXv0Gh2IWUnX13Q5EWFC+3tCfHzdGGqD+rF4+waqRhFdaZu25SU=
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:(4636009)(39860400002)(396003)(376002)(136003)(346002)(46966006)(36840700001)(82310400003)(6666004)(81166007)(2616005)(86362001)(316002)(16576012)(82740400003)(6862004)(186003)(47076005)(8676002)(16526019)(26005)(70586007)(53546011)(478600001)(2906002)(83380400001)(5660300002)(36756003)(4744005)(33656002)(44832011)(70206006)(4326008)(8936002)(956004)(36860700001)(356005)(54906003)(6486002)(336012);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 13:20:32.7280
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8afa918c-660a-45fc-3801-08d8f9c7ec12
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:
	DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5698



> On 7 Apr 2021, at 14:13, Julien Grall <julien@xen.org> wrote:
>=20
> Hi,
>=20
> On 06/04/2021 11:36, Luca Fancellu wrote:
>> Modification to include/public/grant_table.h:
>> 1) Change anonymous structure to be named structure,
>>    because doxygen can't deal with them.
>=20
> What do you mean by can't deal with them? I had a quick try with doxygen =
build and couldn't find any failure (although I haven't looked at the outpu=
t).
>=20

Hi Julien,

The problem is that Doxygen can=E2=80=99t generate proper documentation for=
 anonymous union/structure, it ends up with warning and/or producing wrong =
documentation like
changing names or giving field description to the wrong field.

Cheers,
Luca

> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:33:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:33:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106670.203957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU8J3-0002Z5-FV; Wed, 07 Apr 2021 13:33:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106670.203957; Wed, 07 Apr 2021 13:33: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 1lU8J3-0002Yy-CR; Wed, 07 Apr 2021 13:33:17 +0000
Received: by outflank-mailman (input) for mailman id 106670;
 Wed, 07 Apr 2021 13:33: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 1lU8J2-0002Yq-UY; Wed, 07 Apr 2021 13:33: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 1lU8J2-00063p-My; Wed, 07 Apr 2021 13:33: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 1lU8J2-0000Ih-Fk; Wed, 07 Apr 2021 13:33:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lU8J2-00074X-FH; Wed, 07 Apr 2021 13:33: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=iSxagyjeNYhLRXo2s38ZpfeKE9hsXOSeCT6PViw+rjQ=; b=BppPnBxNUB21Z/snTSVjxUE4Lq
	OvIl+X3lodXTuzPjrSXXGnEDrbLADXa94Y82EfGKh3mUuek6YdRM34IaDIjgMpYkn/7P5UwHeb6XC
	Ux7KnKaHXiLvls9tLMrw6+Ar1UtroEeBLLTKOFeL29ndjZv7MjG1VlaOX5V5y2Ue9sls=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160792-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160792: 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=625faf9f002bd6ff4b6457a016b8ff338223b659
X-Osstest-Versions-That:
    xen=19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 13:33:16 +0000

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

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                  625faf9f002bd6ff4b6457a016b8ff338223b659
baseline version:
 xen                  19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62

Last test of basis   160777  2021-04-06 21:02:47 Z    0 days
Testing same since   160792  2021-04-07 11:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   19be4d56a1..625faf9f00  625faf9f002bd6ff4b6457a016b8ff338223b659 -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:54:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:54:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106680.203972 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU8d7-0004SD-8K; Wed, 07 Apr 2021 13:54:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106680.203972; Wed, 07 Apr 2021 13: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 1lU8d7-0004S6-4R; Wed, 07 Apr 2021 13:54:01 +0000
Received: by outflank-mailman (input) for mailman id 106680;
 Wed, 07 Apr 2021 13:53: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 1lU8d5-0004Ry-Ru; Wed, 07 Apr 2021 13:53: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 1lU8d5-0006NT-Dt; Wed, 07 Apr 2021 13:53: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 1lU8d4-0001TP-UO; Wed, 07 Apr 2021 13:53:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lU8d4-0001Z9-Tq; Wed, 07 Apr 2021 13:53:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=fdWmRLwuRyH0WYlDm3i2w8cVJFA7HU2ntVZ5GPp/nSY=; b=Tp5asPawQmnp7QCyee6u2qxTb4
	TKrndjhgcDXwvhSDlH2uGYpT57aI3sOPJ2XgJ/aRV260j625zS6eXynMgoBq8rxBtgLzrxkIjr1sD
	98jM249v39ARHLJ1vLxBcRAJ3dXFtsZz16l8BSZRBcEfthm4A+yA1Wpmi9ADJRBxwrxs=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160776-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160776: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-libvirt:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-arndale:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start.2:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:host-install(5):broken:heisenbug
    xen-unstable:test-armhf-armhf-xl-cubietruck:host-install(5):broken:heisenbug
    xen-unstable:test-arm64-arm64-xl-seattle:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:guest-start/debianhvm.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:xen-boot:fail:heisenbug
    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-raw: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-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-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-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-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl: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-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0435784cc75dcfef3b5f59c29deb1dbb84265ddb
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 13:53:58 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-libvirt        <job status>                 broken  in 160665
 test-armhf-armhf-xl-arndale     <job status>                 broken  in 160715
 test-armhf-armhf-xl-cubietruck    <job status>                broken in 160715
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale  19 guest-start.2  fail in 160733 REGR. vs. 160646
 test-armhf-armhf-xl-vhd 17 guest-start/debian.repeat fail in 160733 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     5 host-install(5) broken in 160665 pass in 160776
 test-armhf-armhf-xl-arndale  5 host-install(5) broken in 160715 pass in 160776
 test-armhf-armhf-xl-cubietruck 5 host-install(5) broken in 160715 pass in 160776
 test-arm64-arm64-xl-seattle   8 xen-boot         fail in 160665 pass in 160776
 test-armhf-armhf-examine      8 reboot           fail in 160665 pass in 160776
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160665 pass in 160776
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 160665 pass in 160776
 test-armhf-armhf-xl           8 xen-boot         fail in 160715 pass in 160776
 test-armhf-armhf-libvirt     14 guest-start      fail in 160715 pass in 160776
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 160733 pass in 160715
 test-armhf-armhf-libvirt-raw 12 debian-di-install fail in 160733 pass in 160758
 test-armhf-armhf-xl-rtds      8 xen-boot         fail in 160733 pass in 160776
 test-armhf-armhf-xl-vhd      13 guest-start      fail in 160745 pass in 160733
 test-armhf-armhf-libvirt-raw 13 guest-start      fail in 160745 pass in 160758
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 14 guest-start/debianhvm.repeat fail in 160745 pass in 160776
 test-armhf-armhf-libvirt      8 xen-boot         fail in 160745 pass in 160776
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 160758 pass in 160665
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 160758 pass in 160715
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 160758 pass in 160776
 test-armhf-armhf-xl-multivcpu 14 guest-start     fail in 160758 pass in 160776
 test-armhf-armhf-xl-credit1   8 xen-boot         fail in 160758 pass in 160776
 test-armhf-armhf-xl-arndale  14 guest-start      fail in 160758 pass in 160776
 test-armhf-armhf-xl-credit1  14 guest-start                fail pass in 160733
 test-armhf-armhf-xl-arndale  18 guest-start/debian.repeat  fail pass in 160733
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 160745
 test-armhf-armhf-xl-vhd      12 debian-di-install          fail pass in 160745
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10     fail pass in 160758
 test-armhf-armhf-xl-credit2  14 guest-start                fail pass in 160758
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat  fail pass in 160758
 test-armhf-armhf-xl          18 guest-start/debian.repeat  fail pass in 160758
 test-armhf-armhf-libvirt     18 guest-start/debian.repeat  fail pass in 160758
 test-armhf-armhf-libvirt-raw  8 xen-boot                   fail pass in 160758

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 160733 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 160733 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 160733 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 160733 never pass
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160758 like 160646
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160758 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160758 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160758 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  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     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-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-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-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-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-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  0435784cc75dcfef3b5f59c29deb1dbb84265ddb
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    5 days
Testing same since   160665  2021-04-02 07:40:09 Z    5 days    8 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.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                  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                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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

broken-job test-armhf-armhf-libvirt broken
broken-job test-armhf-armhf-xl-arndale broken
broken-job test-armhf-armhf-xl-cubietruck broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 13:56:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 13:56:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106687.203987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU8fx-0004dA-VL; Wed, 07 Apr 2021 13:56:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106687.203987; Wed, 07 Apr 2021 13:56:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU8fx-0004d3-R4; Wed, 07 Apr 2021 13:56:57 +0000
Received: by outflank-mailman (input) for mailman id 106687;
 Wed, 07 Apr 2021 13:56:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lU8fw-0004cy-EZ
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 13:56:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lU8ft-0006P8-MR; Wed, 07 Apr 2021 13:56:53 +0000
Received: from 54-240-197-233.amazon.com ([54.240.197.233]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lU8ft-0007zl-Dt; Wed, 07 Apr 2021 13:56: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=q0sXYJJ0N701qo2FkTnn8uS6pjJvXlCPOrgmgY1xugo=; b=ld4rxmol5AuyMZHtVX2s3iYQWn
	/bcop5tbfgFn0PNzzekGAhf0O3Us6h4NZVTWP7znuHBuDiek1jluk3ugHLQjGI/bY9p/Ug+aWSEZg
	1M7r+Pnv3BqsX7Ef7jxyQybEZsRdoQGU8+7PMur83AxCizmWW2dDBPkbqE7KJmbuMGjU=;
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
 <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <b55d2d18-c80c-5596-8ac4-d4d7099708bf@xen.org>
Date: Wed, 7 Apr 2021 14:56:51 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Luca,

On 07/04/2021 14:19, Luca Fancellu wrote:
> 
> 
>> On 7 Apr 2021, at 14:13, Julien Grall <julien@xen.org> wrote:
>>
>> Hi,
>>
>> On 06/04/2021 11:36, Luca Fancellu wrote:
>>> Modification to include/public/grant_table.h:
>>> 1) Change anonymous structure to be named structure,
>>>     because doxygen can't deal with them.
>>
>> What do you mean by can't deal with them? I had a quick try with doxygen build and couldn't find any failure (although I haven't looked at the output).
>>
> 
> Hi Julien,
> 
> The problem is that Doxygen can’t generate proper documentation for anonymous union/structure, it ends up with warning and/or producing wrong documentation like
> changing names or giving field description to the wrong field.

I might do something wrong because I cannot spot any significant 
difference in the doxygen ouput if I switch back to anonymous union. 
Would you mind to post more details (such as a diff) on how doxygen 
doesn't generate properly documentation?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 14:06:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 14:06:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106693.203999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU8p1-0005fF-Sl; Wed, 07 Apr 2021 14:06:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106693.203999; Wed, 07 Apr 2021 14: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 1lU8p1-0005f8-PK; Wed, 07 Apr 2021 14:06:19 +0000
Received: by outflank-mailman (input) for mailman id 106693;
 Wed, 07 Apr 2021 14:06: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 1lU8p0-0005f3-W6
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 14:06: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 1lU8oz-0006gU-OH; Wed, 07 Apr 2021 14:06:17 +0000
Received: from 54-240-197-233.amazon.com ([54.240.197.233]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lU8oz-0000Gk-Cr; Wed, 07 Apr 2021 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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=hJKX5BjNhn6Bj4ZnIL9xJUzfsT49s1e+TRm0HZdcxVk=; b=iSptm15fy2pkqGphvn+ocVt7Fa
	2GWn3xAuivtzwupkqCn7YvIQLpCHsZwLuLS1k85ODxw0vO8zqdUhGDvX39lCavmk14E4uTuqW1+Tr
	OUnb0MKAW/6XngNldAW0Y5P9c3VOOQ+ouEKOuwXPh5+BPpllvYUerHXyrBL/pXBaMXPA=;
Subject: Re: [PATCH 02/23] lib: move 64-bit div/mod compiler helpers
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <0fec827f-bb0b-4ea1-7757-9c27e9138be7@suse.com>
 <008a8b14-8f58-2127-9e97-87c696e07b5e@xen.org>
 <0ddcecbb-dc42-ba4e-fccc-6988c7e54456@suse.com>
 <ad4aaf01-697e-dc12-39c5-17d375a40b00@xen.org>
 <75299b2a-9610-57fb-95a3-c49d926af54b@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <42f74b93-1ef2-a3c5-6718-01efd4ffce2c@xen.org>
Date: Wed, 7 Apr 2021 15:06:15 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <75299b2a-9610-57fb-95a3-c49d926af54b@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 07/04/2021 09:33, Jan Beulich wrote:
> On 06.04.2021 21:34, Julien Grall wrote:
>> Hi Jan,
>>
>> On 01/04/2021 16:23, Jan Beulich wrote:
>>> On 01.04.2021 16:56, Julien Grall wrote:
>>>> On 01/04/2021 11:19, Jan Beulich wrote:
>>>>> --- a/xen/common/lib.c
>>>>> +++ b/xen/lib/divmod.c
>>>>> @@ -40,7 +40,6 @@
>>>>>      * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
>>>>>      * SUCH DAMAGE.
>>>>>      */
>>>>> -#if BITS_PER_LONG == 32
>>>>
>>>> In theory BITS_PER_LONG == 32 is not quite the same as 32-bit arch. Can
>>>> you clarify whether this code is necessary on 64-bit arch where long is
>>>> only 32-bit.
>>>
>>> Likely the compiler can get away without invoking these helpers, so
>>> the code would remain unused. I'm uncertain whether CONFIG_64BIT
>>> ought to be set for such an architecture, as we assume sizeof(long)
>>> == sizeof(void*), and hence pointers would then need to be 32-bit
>>> as well there.
>>
>> This is a fair point. Would you mind to add a sentence explaining that
>> in the commit message?
> 
> I've added
> 
> "Note that we imply "32-bit arch" to be the same as BITS_PER_LONG == 32,
>   i.e. we aren't (not just here) prepared to have a 64-bit arch with
>   BITS_PER_LONG == 32. Yet even if we supported such, likely the compiler
>   would get away there without invoking these helpers, so the code would
>   remain unused in practice."

Sounds fine to me.

> 
>> With that:
>>
>> Acked-by: Julien Grall <jgrall@amazon.com>
> 
> Thanks. Any chance to also get an ack on patch 1, so at least these two
> (or three, seeing that you also did ack patch 3) could go in before my
> re-posting of the series to add the one line commit message additions
> that you did ask for on all the str* and mem* patches? (Alternatively I
> could take the time and re-order the two.)

I didn't ack #1 because I am not very familiar with the x86 constraints.
If anyone with x86 background (maybe Roger?) is willing to review it, 
then I would be happy to give my ack.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 14:17:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 14:17:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106700.204011 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU8zH-0006hW-UY; Wed, 07 Apr 2021 14:16:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106700.204011; Wed, 07 Apr 2021 14:16:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU8zH-0006hP-Pn; Wed, 07 Apr 2021 14:16:55 +0000
Received: by outflank-mailman (input) for mailman id 106700;
 Wed, 07 Apr 2021 14:12:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=r8/w=JE=gmail.com=giggsoff@srs-us1.protection.inumbo.net>)
 id 1lU8v2-0006bb-9J
 for xen-devel@lists.xen.org; Wed, 07 Apr 2021 14:12:32 +0000
Received: from mail-lf1-x12c.google.com (unknown [2a00:1450:4864:20::12c])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 69ac4566-7e73-497b-9795-b38be7a3db95;
 Wed, 07 Apr 2021 14:12:30 +0000 (UTC)
Received: by mail-lf1-x12c.google.com with SMTP id d13so28766995lfg.7
 for <xen-devel@lists.xen.org>; Wed, 07 Apr 2021 07:12: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: 69ac4566-7e73-497b-9795-b38be7a3db95
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:from:date:message-id:subject:to;
        bh=dzFyQwo7Y8Hg+ulUDLim2BhAP7j/7QOGS1rj2gXZWAs=;
        b=kXPWqkU+Fvhfrb6Bt3rpI0g86PJjBnyCylAJ7xLMoPVECga4nbM9DwAyWdFvRDKJg2
         ScOsvg76l+jsqxC5RwhUiJMWL3ozTPY3NCpycmvvawlYUqLHMmV0Goy2t3F0eya8Kp+3
         vV9bd/46cmi/yHYdbuUoo9ptAzpCb/Cs36h6IzG+Gc79gGRG7Of6R7gQYqwvwVr8LZd+
         jM/uyhAbBNpOjmMs+6Nre++gFNBanQxuRw2+sClpgj3JyGNufIBTnashUM8QkDZCmJ3w
         OodhmDVHtcwVOooS794iqiBoGPlWGETTxViL5ashaZITI2Fd3hyib8OMJ0KQigDgswiG
         cadg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=dzFyQwo7Y8Hg+ulUDLim2BhAP7j/7QOGS1rj2gXZWAs=;
        b=bWE6t4GUIfFhMAbB9/3oj53nz8lHEW1+bsWTVcGi6ea2Dq1k6aUbxP7diFPDzwMwPx
         FBDNV5sfKQ5pqjJw4PUOgQCktTer6wlCnm9GVxc0zxGAF0VNy5c7+ehdmO6QpTGdKNsE
         WMuIdMtNz46jdvm5dhm4476h1+3DSsog3EmlL3PUfJcyi8GicOuVpQCQSeIWxut80pF/
         zl2+sAfmwRrgtLyvUpItCUo+Ei1vMa7Zj9zX+k62ckPTtb8JMXKo+l6mAW/V610qn3mP
         nA4zBrhoyUfMoKBkAbnhzZW+hmDUQFsbLo9msdvzYK4B9upAIZH3fp/4Y4JrkRzxWk2u
         WwxA==
X-Gm-Message-State: AOAM533Fe56Q0DKcJHFeTXSaunFveUnnbDqOdOzGp0XC5gaMqhZJTcWA
	32B9F7mW6FnzL0O//4PGadwHawvbXZmO1JNchUp06QWV20mhNg==
X-Google-Smtp-Source: ABdhPJz8ZneyXygd3+oCgI9GSU90pIN+ymhHArNHWhXMvlzT7iaW1YdjPQ34q/2NOuHfFuFVML+9AvI5l5vMTAZD4a0=
X-Received: by 2002:a19:818d:: with SMTP id c135mr2497173lfd.349.1617804749162;
 Wed, 07 Apr 2021 07:12:29 -0700 (PDT)
MIME-Version: 1.0
From: Petr Fedchenkov <giggsoff@gmail.com>
Date: Wed, 7 Apr 2021 17:12:18 +0300
Message-ID: <CAAM4PUgJ-fKXriQxaA2anU_7r+a1_ygR8aatuf0_icOMoZsHtA@mail.gmail.com>
Subject: [BUG] usb devices disappear on xl reboot or reboot from inside of HVM DomU
To: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="00000000000063cb9605bf62855d"

--00000000000063cb9605bf62855d
Content-Type: text/plain; charset="UTF-8"

Hi.

I have the HVM DomU with usb device assigned to it
Config for xl:

# This file is automatically generated by domainmgr

name = "12e26d98-2f0d-450c-a1ee-d287bd37794c.1.1"

type = "hvm"

uuid = "12e26d98-2f0d-450c-a1ee-d287bd37794c"

vnc = 0

memory = 977

maxmem = 977

vcpus = 1

maxcpus = 1

boot = "dc"

disk =
['/persist/vault/volumes/630ad2a6-cd3f-4659-8ac0-cdcfd5ad6b75#0.qcow2,qcow2,xvda,rw','/run/domainmgr/cloudinit/12e26d98-2f0d-450c-a1ee-d287bd37794c.cidata,raw,xvdz,ro']

vif = ['bridge=bn1,vifname=nbu1x1,mac=00:16:3e:00:01:01,type=vif']

serial = ['pty']

usbctrl = ['type=auto, version=2, ports=6']

usbdev = ['hostbus=2,hostaddr=2,controller=0,port=1']


It boots and works as expected.

But after doing xl reboot or reboot from inside DomU, I cannot see usb
devices inside VM.


Before reboot:

#xenstore-ls

...

vusb = ""

    0 = ""

     type = "devicemodel"

     usb-ver = "2"

     num-ports = "6"

     port = ""

      1 = "2-1"

      2 = ""

      3 = ""

      4 = ""

      5 = ""

      6 = ""


#xl usb-list

Devid  Type         BE  state usb-ver ports

0      devicemodel  0   0     2       6

  Port 1: Bus 002 Device 002

  Port 2:

  Port 3:

  Port 4:

  Port 5:

  Port 6:


After reboot:

#xenstore-ls

...

vusb = ""

    0 = ""

     type = "devicemodel"

     usb-ver = "2"

     num-ports = "6"

     port = ""

      1 = ""

      2 = ""

      3 = ""

      4 = ""

      5 = ""

      6 = ""


#xl usb-list

Devid  Type         BE  state usb-ver ports

0      devicemodel  0   0     2       6

  Port 1:

  Port 2:

  Port 3:

  Port 4:

  Port 5:

  Port 6:


Steps to reproduce are inside https://github.com/lf-edge/eden/issues/578

xen_version            : 4.14.1


Best regard,

Petr Fedchenkov

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

<div dir=3D"ltr">Hi.<div><br></div><div>I have the HVM DomU with usb device=
 assigned to it</div><div>Config for xl:</div><div>





<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace"># This file is automatically generated by do=
mainmgr</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">name =3D &quot;12e26d98-2f0d-450c-a1ee-d287b=
d37794c.1.1&quot;</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">type =3D &quot;hvm&quot;</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">uuid =3D &quot;12e26d98-2f0d-450c-a1ee-d287b=
d37794c&quot;</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">vnc =3D 0</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">memory =3D 977</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">maxmem =3D 977</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">vcpus =3D 1</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">maxcpus =3D 1</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">boot =3D &quot;dc&quot;</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">disk =3D [&#39;/persist/vault/volumes/630ad2=
a6-cd3f-4659-8ac0-cdcfd5ad6b75#0.qcow2,qcow2,xvda,rw&#39;,&#39;/run/domainm=
gr/cloudinit/12e26d98-2f0d-450c-a1ee-d287bd37794c.cidata,raw,xvdz,ro&#39;]<=
/font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">vif =3D [&#39;bridge=3Dbn1,vifname=3Dnbu1x1,=
mac=3D00:16:3e:00:01:01,type=3Dvif&#39;]</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">serial =3D [&#39;pty&#39;]</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">usbctrl =3D [&#39;type=3Dauto, version=3D2, =
ports=3D6&#39;]</font></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace">usbdev =3D [&#39;hostbus=3D2,hostaddr=3D2,co=
ntroller=3D0,port=3D1&#39;]</font></p><p class=3D"gmail-p1" style=3D"margin=
:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretc=
h:normal;font-size:13px;line-height:normal;font-family:&quot;Helvetica Neue=
&quot;"><br></p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-nume=
ric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:13p=
x;line-height:normal;font-family:&quot;Helvetica Neue&quot;">It boots and w=
orks as expected.</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant=
-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-siz=
e:13px;line-height:normal;font-family:&quot;Helvetica Neue&quot;">But after=
 doing xl reboot or reboot from inside DomU, I cannot see usb devices insid=
e VM.</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:nor=
mal;font-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-=
height:normal;font-family:&quot;Helvetica Neue&quot;"><br></p><p class=3D"g=
mail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-variant-east-=
asian:normal;font-stretch:normal;font-size:13px;line-height:normal;font-fam=
ily:&quot;Helvetica Neue&quot;">Before reboot:</p><p class=3D"gmail-p1" sty=
le=3D"margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal=
;font-stretch:normal;font-size:13px;line-height:normal"><font face=3D"monos=
pace">#xenstore-ls</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font=
-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;=
font-size:13px;line-height:normal"><font face=3D"monospace">...</font></p><=
p class=3D"gmail-p1" style=3D"margin:0px;font-style:normal;font-variant:nor=
mal;font-weight:normal;font-stretch:normal;font-size:13px;line-height:norma=
l"><font face=3D"monospace">vusb =3D &quot;&quot;</font></p><p class=3D"gma=
il-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-weigh=
t:normal;font-stretch:normal;font-size:13px;line-height:normal"><font face=
=3D"monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 </=
span>0 =3D &quot;&quot;</font></p><p class=3D"gmail-p1" style=3D"margin:0px=
;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:norm=
al;font-size:13px;line-height:normal"><font face=3D"monospace"><span class=
=3D"gmail-Apple-converted-space">=C2=A0=C2=A0 =C2=A0 </span>type =3D &quot;=
devicemodel&quot;</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-=
style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fon=
t-size:13px;line-height:normal"><font face=3D"monospace"><span class=3D"gma=
il-Apple-converted-space">=C2=A0=C2=A0 =C2=A0 </span>usb-ver =3D &quot;2&qu=
ot;</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-style:normal;f=
ont-variant:normal;font-weight:normal;font-stretch:normal;font-size:13px;li=
ne-height:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-conve=
rted-space">=C2=A0=C2=A0 =C2=A0 </span>num-ports =3D &quot;6&quot;</font></=
p><p class=3D"gmail-p1" style=3D"margin:0px;font-style:normal;font-variant:=
normal;font-weight:normal;font-stretch:normal;font-size:13px;line-height:no=
rmal"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-space">=
=C2=A0=C2=A0 =C2=A0 </span>port =3D &quot;&quot;</font></p><p class=3D"gmai=
l-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-weight=
:normal;font-stretch:normal;font-size:13px;line-height:normal"><font face=
=3D"monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 =
=C2=A0 </span>1 =3D &quot;2-1&quot;</font></p><p class=3D"gmail-p1" style=
=3D"margin:0px;font-style:normal;font-variant:normal;font-weight:normal;fon=
t-stretch:normal;font-size:13px;line-height:normal"><font face=3D"monospace=
"><span class=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 =C2=A0 </span>2=
 =3D &quot;&quot;</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-=
style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fon=
t-size:13px;line-height:normal"><font face=3D"monospace"><span class=3D"gma=
il-Apple-converted-space">=C2=A0 =C2=A0 =C2=A0 </span>3 =3D &quot;&quot;</f=
ont></p><p class=3D"gmail-p1" style=3D"margin:0px;font-style:normal;font-va=
riant:normal;font-weight:normal;font-stretch:normal;font-size:13px;line-hei=
ght:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-s=
pace">=C2=A0 =C2=A0 =C2=A0 </span>4 =3D &quot;&quot;</font></p><p class=3D"=
gmail-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-we=
ight:normal;font-stretch:normal;font-size:13px;line-height:normal"><font fa=
ce=3D"monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 =
=C2=A0 </span>5 =3D &quot;&quot;</font></p><p class=3D"gmail-p1" style=3D"m=
argin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-s=
tretch:normal;font-size:13px;line-height:normal">
















</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;f=
ont-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-heigh=
t:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-spa=
ce">=C2=A0 =C2=A0 =C2=A0=C2=A0</span>6 =3D &quot;&quot;</font></p><p class=
=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-variant-=
east-asian:normal;font-stretch:normal;font-size:13px;line-height:normal"><f=
ont face=3D"monospace"><br></font></p><p class=3D"gmail-p1" style=3D"margin=
:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretc=
h:normal;font-size:13px;line-height:normal"><font face=3D"monospace">#xl us=
b-list</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-style:norma=
l;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13px=
;line-height:normal"><font face=3D"monospace">Devid<span class=3D"gmail-App=
le-converted-space">=C2=A0 </span>Type <span class=3D"gmail-Apple-converted=
-space">=C2=A0 =C2=A0 =C2=A0 =C2=A0 </span>BE<span class=3D"gmail-Apple-con=
verted-space">=C2=A0 </span>state usb-ver ports</font></p><p class=3D"gmail=
-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-weight:=
normal;font-stretch:normal;font-size:13px;line-height:normal"><font face=3D=
"monospace">0<span class=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 =C2=
=A0 </span>devicemodel<span class=3D"gmail-Apple-converted-space">=C2=A0 </=
span>0 <span class=3D"gmail-Apple-converted-space">=C2=A0 </span>0 <span cl=
ass=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 </span>2 <span class=3D"g=
mail-Apple-converted-space">=C2=A0 =C2=A0 =C2=A0 </span>6 <span class=3D"gm=
ail-Apple-converted-space">=C2=A0 =C2=A0</span></font></p><p class=3D"gmail=
-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-weight:=
normal;font-stretch:normal;font-size:13px;line-height:normal"><font face=3D=
"monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0 </span>Port =
1: Bus 002 Device 002</font></p><p class=3D"gmail-p1" style=3D"margin:0px;f=
ont-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal=
;font-size:13px;line-height:normal"><font face=3D"monospace"><span class=3D=
"gmail-Apple-converted-space">=C2=A0 </span>Port 2:</font></p><p class=3D"g=
mail-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-wei=
ght:normal;font-stretch:normal;font-size:13px;line-height:normal"><font fac=
e=3D"monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0 </span>P=
ort 3:</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-style:norma=
l;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13px=
;line-height:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-co=
nverted-space">=C2=A0 </span>Port 4:</font></p><p class=3D"gmail-p1" style=
=3D"margin:0px;font-style:normal;font-variant:normal;font-weight:normal;fon=
t-stretch:normal;font-size:13px;line-height:normal"><font face=3D"monospace=
"><span class=3D"gmail-Apple-converted-space">=C2=A0 </span>Port 5:</font><=
/p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;fo=
nt-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height=
:normal">












</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;f=
ont-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-heigh=
t:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-spa=
ce" style=3D"">=C2=A0=C2=A0</span>Port 6:</font></p><p class=3D"gmail-p1" s=
tyle=3D"margin:0px;font-variant-numeric:normal;font-variant-east-asian:norm=
al;font-stretch:normal;font-size:13px;line-height:normal;font-family:&quot;=
Helvetica Neue&quot;"><br></p><p class=3D"gmail-p1" style=3D"margin:0px;fon=
t-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal=
;font-size:13px;line-height:normal;font-family:&quot;Helvetica Neue&quot;">=
After reboot:</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-num=
eric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:13=
px;line-height:normal"><font face=3D"monospace">#xenstore-ls</font></p><p c=
lass=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-vari=
ant-east-asian:normal;font-stretch:normal;font-size:13px;line-height:normal=
"><font face=3D"monospace">...</font></p><p class=3D"gmail-p1" style=3D"mar=
gin:0px;font-style:normal;font-variant:normal;font-weight:normal;font-stret=
ch:normal;font-size:13px;line-height:normal"><font face=3D"monospace">vusb =
=3D &quot;&quot;</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-s=
tyle:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font=
-size:13px;line-height:normal"><font face=3D"monospace"><span class=3D"gmai=
l-Apple-converted-space">=C2=A0 =C2=A0 </span>0 =3D &quot;&quot;</font></p>=
<p class=3D"gmail-p1" style=3D"margin:0px;font-style:normal;font-variant:no=
rmal;font-weight:normal;font-stretch:normal;font-size:13px;line-height:norm=
al"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-space">=
=C2=A0=C2=A0 =C2=A0 </span>type =3D &quot;devicemodel&quot;</font></p><p cl=
ass=3D"gmail-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;=
font-weight:normal;font-stretch:normal;font-size:13px;line-height:normal"><=
font face=3D"monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0=
=C2=A0 =C2=A0 </span>usb-ver =3D &quot;2&quot;</font></p><p class=3D"gmail-=
p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-weight:n=
ormal;font-stretch:normal;font-size:13px;line-height:normal"><font face=3D"=
monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0=C2=A0 =C2=A0 =
</span>num-ports =3D &quot;6&quot;</font></p><p class=3D"gmail-p1" style=3D=
"margin:0px;font-style:normal;font-variant:normal;font-weight:normal;font-s=
tretch:normal;font-size:13px;line-height:normal"><font face=3D"monospace"><=
span class=3D"gmail-Apple-converted-space">=C2=A0=C2=A0 =C2=A0 </span>port =
=3D &quot;&quot;</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-s=
tyle:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font=
-size:13px;line-height:normal"><font face=3D"monospace"><span class=3D"gmai=
l-Apple-converted-space">=C2=A0 =C2=A0 =C2=A0 </span>1 =3D &quot;&quot;</fo=
nt></p><p class=3D"gmail-p1" style=3D"margin:0px;font-style:normal;font-var=
iant:normal;font-weight:normal;font-stretch:normal;font-size:13px;line-heig=
ht:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-sp=
ace">=C2=A0 =C2=A0 =C2=A0 </span>2 =3D &quot;&quot;</font></p><p class=3D"g=
mail-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-wei=
ght:normal;font-stretch:normal;font-size:13px;line-height:normal"><font fac=
e=3D"monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 =
=C2=A0 </span>3 =3D &quot;&quot;</font></p><p class=3D"gmail-p1" style=3D"m=
argin:0px;font-style:normal;font-variant:normal;font-weight:normal;font-str=
etch:normal;font-size:13px;line-height:normal"><font face=3D"monospace"><sp=
an class=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 =C2=A0 </span>4 =3D =
&quot;&quot;</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-style=
:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-siz=
e:13px;line-height:normal"><font face=3D"monospace"><span class=3D"gmail-Ap=
ple-converted-space">=C2=A0 =C2=A0 =C2=A0 </span>5 =3D &quot;&quot;</font><=
/p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;fo=
nt-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-height=
:normal">
















</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;f=
ont-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-heigh=
t:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-spa=
ce">=C2=A0 =C2=A0 =C2=A0=C2=A0</span>6 =3D &quot;&quot;</font></p><p class=
=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-variant-=
east-asian:normal;font-stretch:normal;font-size:13px;line-height:normal"><f=
ont face=3D"monospace"><br></font></p><p class=3D"gmail-p1" style=3D"margin=
:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretc=
h:normal;font-size:13px;line-height:normal"><font face=3D"monospace">#xl us=
b-list</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-style:norma=
l;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13px=
;line-height:normal"><font face=3D"monospace">Devid<span class=3D"gmail-App=
le-converted-space">=C2=A0 </span>Type <span class=3D"gmail-Apple-converted=
-space">=C2=A0 =C2=A0 =C2=A0 =C2=A0 </span>BE<span class=3D"gmail-Apple-con=
verted-space">=C2=A0 </span>state usb-ver ports</font></p><p class=3D"gmail=
-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-weight:=
normal;font-stretch:normal;font-size:13px;line-height:normal"><font face=3D=
"monospace">0<span class=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 =C2=
=A0 </span>devicemodel<span class=3D"gmail-Apple-converted-space">=C2=A0 </=
span>0 <span class=3D"gmail-Apple-converted-space">=C2=A0 </span>0 <span cl=
ass=3D"gmail-Apple-converted-space">=C2=A0 =C2=A0 </span>2 <span class=3D"g=
mail-Apple-converted-space">=C2=A0 =C2=A0 =C2=A0 </span>6 <span class=3D"gm=
ail-Apple-converted-space">=C2=A0 =C2=A0</span></font></p><p class=3D"gmail=
-p1" style=3D"margin:0px;font-style:normal;font-variant:normal;font-weight:=
normal;font-stretch:normal;font-size:13px;line-height:normal"><font face=3D=
"monospace"><span class=3D"gmail-Apple-converted-space">=C2=A0 </span>Port =
1:</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font-style:normal;fo=
nt-variant:normal;font-weight:normal;font-stretch:normal;font-size:13px;lin=
e-height:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-conver=
ted-space">=C2=A0 </span>Port 2:</font></p><p class=3D"gmail-p1" style=3D"m=
argin:0px;font-style:normal;font-variant:normal;font-weight:normal;font-str=
etch:normal;font-size:13px;line-height:normal"><font face=3D"monospace"><sp=
an class=3D"gmail-Apple-converted-space">=C2=A0 </span>Port 3:</font></p><p=
 class=3D"gmail-p1" style=3D"margin:0px;font-style:normal;font-variant:norm=
al;font-weight:normal;font-stretch:normal;font-size:13px;line-height:normal=
"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-space">=C2=
=A0 </span>Port 4:</font></p><p class=3D"gmail-p1" style=3D"margin:0px;font=
-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fo=
nt-size:13px;line-height:normal"><font face=3D"monospace"><span class=3D"gm=
ail-Apple-converted-space">=C2=A0 </span>Port 5:</font></p><p class=3D"gmai=
l-p1" style=3D"margin:0px;font-variant-numeric:normal;font-variant-east-asi=
an:normal;font-stretch:normal;font-size:13px;line-height:normal">












</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;f=
ont-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-heigh=
t:normal"><font face=3D"monospace"><span class=3D"gmail-Apple-converted-spa=
ce" style=3D"">=C2=A0=C2=A0</span>Port 6:</font></p><p class=3D"gmail-p1" s=
tyle=3D"margin:0px;font-variant-numeric:normal;font-variant-east-asian:norm=
al;font-stretch:normal;font-size:13px;line-height:normal;font-family:&quot;=
Helvetica Neue&quot;"><br></p><p class=3D"gmail-p1" style=3D"margin:0px;fon=
t-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal=
;font-size:13px;line-height:normal;font-family:&quot;Helvetica Neue&quot;">=
Steps to reproduce are inside=C2=A0<a href=3D"https://github.com/lf-edge/ed=
en/issues/578">https://github.com/lf-edge/eden/issues/578</a></p><p class=
=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-variant-=
east-asian:normal;font-stretch:normal;font-size:13px;line-height:normal;fon=
t-family:&quot;Helvetica Neue&quot;">





</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;f=
ont-variant-east-asian:normal;font-stretch:normal;font-size:13px;line-heigh=
t:normal;font-family:&quot;Helvetica Neue&quot;">xen_version<span class=3D"=
gmail-Apple-converted-space">=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 </sp=
an>: 4.14.1</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numer=
ic:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:13px=
;line-height:normal;font-family:&quot;Helvetica Neue&quot;"><br></p><p clas=
s=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-variant=
-east-asian:normal;font-stretch:normal;font-size:13px;line-height:normal;fo=
nt-family:&quot;Helvetica Neue&quot;">Best regard,</p><p class=3D"gmail-p1"=
 style=3D"margin:0px;font-variant-numeric:normal;font-variant-east-asian:no=
rmal;font-stretch:normal;font-size:13px;line-height:normal;font-family:&quo=
t;Helvetica Neue&quot;">Petr Fedchenkov</p><p class=3D"gmail-p1" style=3D"m=
argin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-s=
tretch:normal;font-size:13px;line-height:normal;font-family:&quot;Helvetica=
 Neue&quot;"><br></p></div></div>

--00000000000063cb9605bf62855d--


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 14:35:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 14:35:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106707.204023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9H7-0000Ah-Dy; Wed, 07 Apr 2021 14:35:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106707.204023; Wed, 07 Apr 2021 14:35: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 1lU9H7-0000Aa-Au; Wed, 07 Apr 2021 14:35:21 +0000
Received: by outflank-mailman (input) for mailman id 106707;
 Wed, 07 Apr 2021 14:35:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU9H5-0000AV-Eh
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 14:35:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3d60c8d4-34cc-4084-8833-058683277948;
 Wed, 07 Apr 2021 14:35:18 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 50A17B160;
 Wed,  7 Apr 2021 14:35: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: 3d60c8d4-34cc-4084-8833-058683277948
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617806117; 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=WFSEL4nRth0J69lPxEZrlqbP01zO3uFSQEnfw8shlIo=;
	b=cHP0axwJVHRK0SRVpY7Nud60wxboW1m0zwpaLcbLxFGXiBFxksdar6zTvl2laCAXLtxbKB
	vDkSa6WinQI8eBBGiao0Ps02a1f4i7T86w+JqFDWOAd2V+hsTnyg2/Ad95iRu/PvGsSPEZ
	6hmN0RfyeQvDK6mnbsDivSkyKheV7Bs=
Cc: Juergen Gross <jgross@suse.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Konrad Wilk <konrad.wilk@oracle.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 0/3] xen-pciback: a fix, a workaround, and some simplification
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Message-ID: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
Date: Wed, 7 Apr 2021 16:35:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The first change completes a several years old but still incomplete
change. As mentioned there, reverting the original change may also
be an option. The second change works around some odd libxl behavior,
as described in [1]. As per a response to that mail addressing the
issue in libxl may also be possible, but it's not clear to me who
would get to doing so at which point in time. Hence the kernel side
alternative is being proposed here. The third change is some
simplification that I noticed would be possible while doing the
other work here.

As to Konrad being on the Cc list: I find it puzzling that he's
listed under "XEN PCI SUBSYSTEM", but pciback isn't considered part
of this.

1: redo VF placement in the virtual topology
2: reconfigure also from backend watch handler
3: simplify vpci's find hook

Jan

[1] https://lists.xen.org/archives/html/xen-devel/2021-03/msg00956.html


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 14:37:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 14:37:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106710.204034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9Iu-0000ID-QL; Wed, 07 Apr 2021 14:37:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106710.204034; Wed, 07 Apr 2021 14:37: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 1lU9Iu-0000I6-NP; Wed, 07 Apr 2021 14:37:12 +0000
Received: by outflank-mailman (input) for mailman id 106710;
 Wed, 07 Apr 2021 14:37:10 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU9Is-0000I0-P0
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 14:37:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ad8feeeb-105d-4109-9eac-9139ac9511ca;
 Wed, 07 Apr 2021 14:37:09 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8FC69B02B;
 Wed,  7 Apr 2021 14:37: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: ad8feeeb-105d-4109-9eac-9139ac9511ca
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617806228; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RVTfOHZt+5GTfUvqHRoOkSW+lbhVxEv08w2Zo444uTE=;
	b=dxVMt1/MVxgxezDMjlgFkrsbkJzJf8KChJcL8kJJ1zHCy9qoOD2zfpNADajoT/Nr6KBjwo
	K0ayqSBdIFgYfl9hZ9vTy5u6JM/xcbZj9wo5X0WIqG9Pyr+x7WN8/bP6o7YxOckCBKkQda
	sP/6d+ZqCyE66qO8kJHMEj3IqxxEmlg=
Subject: [PATCH 1/3] xen-pciback: redo VF placement in the virtual topology
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Konrad Wilk <konrad.wilk@oracle.com>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
Message-ID: <32d6a8d4-c06f-7fe0-1376-4b80fac8c6de@suse.com>
Date: Wed, 7 Apr 2021 16:37:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The commit referenced below was incomplete: It merely affected what
would get written to the vdev-<N> xenstore node. The guest would still
find the function at the original function number as long as 
__xen_pcibk_get_pci_dev() wouldn't be in sync. The same goes for AER wrt
__xen_pcibk_get_pcifront_dev().

Undo overriding the function to zero and instead make sure that VFs at
function zero remain alone in their slot. This has the added benefit of
improving overall capacity, considering that there's only a total of 32
slots available right now (PCI segment and bus can both only ever be
zero at present).

Fixes: 8a5248fe10b1 ("xen PV passthru: assign SR-IOV virtual functions to separate virtual slots")
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Cc: stable@vger.kernel.org
---
Like the original change this has the effect of changing where devices
would appear in the guest, when there are multiple of them. I don't see
an immediate problem with this, but if there is we may need to reduce
the effect of the change.
Taking into account, besides the described breakage, how xen-pcifront's
pcifront_scan_bus() works, I also wonder what problem it was in the
first place that needed fixing. It may therefore also be worth to
consider simply reverting the original change.

--- a/drivers/xen/xen-pciback/vpci.c
+++ b/drivers/xen/xen-pciback/vpci.c
@@ -70,7 +70,7 @@ static int __xen_pcibk_add_pci_dev(struc
 				   struct pci_dev *dev, int devid,
 				   publish_pci_dev_cb publish_cb)
 {
-	int err = 0, slot, func = -1;
+	int err = 0, slot, func = PCI_FUNC(dev->devfn);
 	struct pci_dev_entry *t, *dev_entry;
 	struct vpci_dev_data *vpci_dev = pdev->pci_dev_data;
 
@@ -95,22 +95,25 @@ static int __xen_pcibk_add_pci_dev(struc
 
 	/*
 	 * Keep multi-function devices together on the virtual PCI bus, except
-	 * virtual functions.
+	 * that we want to keep virtual functions at func 0 on their own. They
+	 * aren't multi-function devices and hence their presence at func 0
+	 * may cause guests to not scan the other functions.
 	 */
-	if (!dev->is_virtfn) {
+	if (!dev->is_virtfn || func) {
 		for (slot = 0; slot < PCI_SLOT_MAX; slot++) {
 			if (list_empty(&vpci_dev->dev_list[slot]))
 				continue;
 
 			t = list_entry(list_first(&vpci_dev->dev_list[slot]),
 				       struct pci_dev_entry, list);
+			if (t->dev->is_virtfn && !PCI_FUNC(t->dev->devfn))
+				continue;
 
 			if (match_slot(dev, t->dev)) {
 				dev_info(&dev->dev, "vpci: assign to virtual slot %d func %d\n",
-					 slot, PCI_FUNC(dev->devfn));
+					 slot, func);
 				list_add_tail(&dev_entry->list,
 					      &vpci_dev->dev_list[slot]);
-				func = PCI_FUNC(dev->devfn);
 				goto unlock;
 			}
 		}
@@ -123,7 +126,6 @@ static int __xen_pcibk_add_pci_dev(struc
 				 slot);
 			list_add_tail(&dev_entry->list,
 				      &vpci_dev->dev_list[slot]);
-			func = dev->is_virtfn ? 0 : PCI_FUNC(dev->devfn);
 			goto unlock;
 		}
 	}



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 14:37:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 14:37:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106713.204047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9JG-0000NE-3M; Wed, 07 Apr 2021 14:37:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106713.204047; Wed, 07 Apr 2021 14:37: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 1lU9JF-0000N7-Vj; Wed, 07 Apr 2021 14:37:33 +0000
Received: by outflank-mailman (input) for mailman id 106713;
 Wed, 07 Apr 2021 14:37:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU9JF-0000Mx-D2
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 14:37:33 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9663923e-363a-4c8c-8c8b-6169e901c5ff;
 Wed, 07 Apr 2021 14:37:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 74DBEB034;
 Wed,  7 Apr 2021 14:37: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: 9663923e-363a-4c8c-8c8b-6169e901c5ff
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617806251; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=VS4wzz4JN1F6uBq2W5fhu7rrdUSiDdslm/RtnI7Yyw0=;
	b=V+qWN/caw4IVWpZnWxOfPRmNweRh3TWDlswo2itZariZbCfk8clHdAwL66wTavooDRgCfv
	tLoYX/24ibzLiOg94lE2cc3L9HyZY89UXXs0X4V4ci7zA1goVy2AvSiStjTKTzJEWfN6nm
	SK8Izn6jcRFuiKggP1VBfL5WPxrgOAE=
Subject: [PATCH 2/3] xen-pciback: reconfigure also from backend watch handler
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Konrad Wilk <konrad.wilk@oracle.com>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
Message-ID: <74955b48-80b1-3436-06b4-d8569260aa65@suse.com>
Date: Wed, 7 Apr 2021 16:37:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

When multiple PCI devices get assigned to a guest right at boot, libxl
incrementally populates the backend tree. The writes for the first of
the devices trigger the backend watch. In turn xen_pcibk_setup_backend()
will set the XenBus state to Initialised, at which point no further
reconfigures would happen unless a device got hotplugged. Arrange for
reconfigure to also get triggered from the backend watch handler.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Cc: stable@vger.kernel.org
---
I will admit that this isn't entirely race-free (with the guest actually
attaching in parallel), but from the looks of it such a race ought to be
benign (not the least thanks to the mutex). Ideally the tool stack
wouldn't write num_devs until all devices had their information
populated. I tried doing so in libxl, but xen_pcibk_setup_backend()
calling xenbus_dev_fatal() when not being able to read that node
prohibits such an approach (or else libxl and driver changes would need
to go into use in lock-step).

I wonder why what is being watched isn't just the num_devs node. Right
now the watch triggers quite frequently without anything relevant
actually having changed (I suppose in at least some cases in response
to writes by the backend itself).

--- a/drivers/xen/xen-pciback/xenbus.c
+++ b/drivers/xen/xen-pciback/xenbus.c
@@ -359,7 +359,8 @@ out:
 	return err;
 }
 
-static int xen_pcibk_reconfigure(struct xen_pcibk_device *pdev)
+static int xen_pcibk_reconfigure(struct xen_pcibk_device *pdev,
+				 enum xenbus_state state)
 {
 	int err = 0;
 	int num_devs;
@@ -374,8 +375,7 @@ static int xen_pcibk_reconfigure(struct
 
 	mutex_lock(&pdev->dev_lock);
 	/* Make sure we only reconfigure once */
-	if (xenbus_read_driver_state(pdev->xdev->nodename) !=
-	    XenbusStateReconfiguring)
+	if (xenbus_read_driver_state(pdev->xdev->nodename) != state)
 		goto out;
 
 	err = xenbus_scanf(XBT_NIL, pdev->xdev->nodename, "num_devs", "%d",
@@ -500,6 +500,9 @@ static int xen_pcibk_reconfigure(struct
 		}
 	}
 
+	if (state != XenbusStateReconfiguring)
+		goto out;
+
 	err = xenbus_switch_state(pdev->xdev, XenbusStateReconfigured);
 	if (err) {
 		xenbus_dev_fatal(pdev->xdev, err,
@@ -525,7 +528,7 @@ static void xen_pcibk_frontend_changed(s
 		break;
 
 	case XenbusStateReconfiguring:
-		xen_pcibk_reconfigure(pdev);
+		xen_pcibk_reconfigure(pdev, XenbusStateReconfiguring);
 		break;
 
 	case XenbusStateConnected:
@@ -664,6 +667,10 @@ static void xen_pcibk_be_watch(struct xe
 		xen_pcibk_setup_backend(pdev);
 		break;
 
+	case XenbusStateInitialised:
+		xen_pcibk_reconfigure(pdev, XenbusStateInitialised);
+		break;
+
 	default:
 		break;
 	}



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 14:38:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 14:38:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106719.204059 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9Ji-0000UD-BW; Wed, 07 Apr 2021 14:38:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106719.204059; Wed, 07 Apr 2021 14:38: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 1lU9Ji-0000U6-8L; Wed, 07 Apr 2021 14:38:02 +0000
Received: by outflank-mailman (input) for mailman id 106719;
 Wed, 07 Apr 2021 14:38:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU9Jg-0000Tu-Mn
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 14:38:00 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a519e47d-968b-4c76-a1d6-05e8e9e4c19e;
 Wed, 07 Apr 2021 14:37:59 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 11C8FAC79;
 Wed,  7 Apr 2021 14:37: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: a519e47d-968b-4c76-a1d6-05e8e9e4c19e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617806279; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=1EjVwkyGSZf0Nk1jVX5DjRxmB+T2lYtGn0JD3AChaEs=;
	b=eWXbEVkRVTII+IpZ4PqLt/lsGdso13cCXLuPPtQoDDbG0itha8XZFSQrXc9HcODss9Cumi
	8kcSzH8G5p8ZBfpbv05pgquqADjPkp4oKj+QyXHP1nFFs8O85QzSO6hwppxutroC6ziU1s
	ru3/srlxu16r5gFPrD2sH1/H6L2v044=
Subject: [PATCH 3/3] xen-pciback: simplify vpci's find hook
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Konrad Wilk <konrad.wilk@oracle.com>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
Message-ID: <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
Date: Wed, 7 Apr 2021 16:37:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There's no point in comparing SBDF - we can simply compare the struct
pci_dev pointers. If they weren't the same for a given device, we'd have
bigger problems from having stored a stale pointer.

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

--- a/drivers/xen/xen-pciback/vpci.c
+++ b/drivers/xen/xen-pciback/vpci.c
@@ -235,7 +235,6 @@ static int __xen_pcibk_get_pcifront_dev(
 					unsigned int *devfn)
 {
 	struct pci_dev_entry *entry;
-	struct pci_dev *dev = NULL;
 	struct vpci_dev_data *vpci_dev = pdev->pci_dev_data;
 	int found = 0, slot;
 
@@ -244,11 +243,7 @@ static int __xen_pcibk_get_pcifront_dev(
 		list_for_each_entry(entry,
 			    &vpci_dev->dev_list[slot],
 			    list) {
-			dev = entry->dev;
-			if (dev && dev->bus->number == pcidev->bus->number
-				&& pci_domain_nr(dev->bus) ==
-					pci_domain_nr(pcidev->bus)
-				&& dev->devfn == pcidev->devfn) {
+			if (entry->dev == pcidev) {
 				found = 1;
 				*domain = 0;
 				*bus = 0;



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 14:51:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 14:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106729.204071 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9X3-0002HI-Go; Wed, 07 Apr 2021 14:51:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106729.204071; Wed, 07 Apr 2021 14: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 1lU9X3-0002HB-D4; Wed, 07 Apr 2021 14:51:49 +0000
Received: by outflank-mailman (input) for mailman id 106729;
 Wed, 07 Apr 2021 14:51:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uIxC=JE=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lU9X1-0002H6-Oz
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 14:51:47 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.7.58]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 519a4b35-b9fc-4beb-a7f1-79b0e94f4b08;
 Wed, 07 Apr 2021 14:51:45 +0000 (UTC)
Received: from DB6P191CA0013.EURP191.PROD.OUTLOOK.COM (2603:10a6:6:28::23) by
 DB8PR08MB3948.eurprd08.prod.outlook.com (2603:10a6:10:a2::22) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32; Wed, 7 Apr 2021 14:51:42 +0000
Received: from DB5EUR03FT046.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:6:28:cafe::d7) by DB6P191CA0013.outlook.office365.com
 (2603:10a6:6:28::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 14:51:42 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT046.mail.protection.outlook.com (10.152.21.230) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 14:51:42 +0000
Received: ("Tessian outbound 700fd1fc53d5:v90");
 Wed, 07 Apr 2021 14:51:42 +0000
Received: from 313a3a1eb27a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 55FEB56A-334C-48EB-A084-F2F9540C4854.1; 
 Wed, 07 Apr 2021 14:51:33 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 313a3a1eb27a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 14:51:33 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR0801MB1950.eurprd08.prod.outlook.com (2603:10a6:800:8c::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Wed, 7 Apr
 2021 14:51:31 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 14:51:31 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO2P265CA0450.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:e::30) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.28 via Frontend Transport; Wed, 7 Apr 2021 14:51:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 519a4b35-b9fc-4beb-a7f1-79b0e94f4b08
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YxJ3/3H323IN78fGMtreQjjLaorKQOz/SQ5b5vIuZ4s=;
 b=+AIsBrsPTP+pVz7DBT92Ius3A+YAf7/D4AaL479gAghmQU6jYf9GBXOYLqplY7EJwgQOdzR4ki9oTNUDHV9+HkdAgOUBs85TU3qR3pZi3XSw/mR0Pu0V2wSnyMTgDcTbV4/4vrk5nGnIYJ9hyX72zJL9Rh+r0qU8CFr/Me9zaNw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7cd011f7e57e5c10
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EFEPe8qmr5rWFEObIavs7X8vSrzNeTRByLiRTny3d8uqiF8hzujG55Tmj0J5fCV6XdoFGp2Bcw63ZyvewDVhh9qcHGHxB3wm9qEhk4x8z3QBIb9yetT+uLhPRv8dRI7A1n4/FPgpbw7yfAZegQr71/GhMaW4t5gIho1iqQT3Wx1J34GyFebHhsWqJhr2Vr4Vg1sSyE1idHt7OWcZmPzmj0d3v4MJzVoVta6wU5LtOvlJ02khATmyvmfXHw+HhsWOozH6Gu1phmV4I+iwVQkqM/rJnro7e8FproXZFPlgzrguotSeAWqcYgLV2kC3+ho+/Fn1o44YlxZgLLAEsjoZzg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YxJ3/3H323IN78fGMtreQjjLaorKQOz/SQ5b5vIuZ4s=;
 b=ZsiX2rJP5hnAgCXiIKiwHB4KTQiAfwEYaqT8KipWnpHrx+D7/C6Eow5v7gj7AifOMasaiKXrQN/ROlC/ClQBklAmGtsyLtoKA35wrL1pExqUVm0j41VXJ1lSJTSZJw5HdUYHGxfZNRd1+0mLxNxqM+E3jhMOS9soM/mqmmYdnDO1SxU080k3tdO2sBhDRj0mrop3cY+CoUwQ6O5I5fepqI84HYon4D6VRzq3VJyzoAAiUYnFfGU0GZWCZZWaDlCo+erSHXJ6AdKDNaZwVsA14/MQSXtUEeTIPusWe/0fjtzGHnbbU8rIXum/iLtORMi4W12NdEeUs3UXae0CQm1Gew==
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=YxJ3/3H323IN78fGMtreQjjLaorKQOz/SQ5b5vIuZ4s=;
 b=+AIsBrsPTP+pVz7DBT92Ius3A+YAf7/D4AaL479gAghmQU6jYf9GBXOYLqplY7EJwgQOdzR4ki9oTNUDHV9+HkdAgOUBs85TU3qR3pZi3XSw/mR0Pu0V2wSnyMTgDcTbV4/4vrk5nGnIYJ9hyX72zJL9Rh+r0qU8CFr/Me9zaNw=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <b55d2d18-c80c-5596-8ac4-d4d7099708bf@xen.org>
Date: Wed, 7 Apr 2021 15:51:18 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <E5D03BC8-6E9E-4579-B2D8-137CC60818B9@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
 <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
 <b55d2d18-c80c-5596-8ac4-d4d7099708bf@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P265CA0450.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:e::30) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 64f6f331-5302-4b70-4cd5-08d8f9d4a830
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1950:|DB8PR08MB3948:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DB8PR08MB3948191024049222B31C5DD3E4759@DB8PR08MB3948.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Ab6XmjBTIJpYyd2qJJGn97klHuFa+kWH7o+WUH2CT+KWKjBz9sQ3puTDXV7wI78becnUrpSS3hN7bPs2owBl/wleb10PiBxzVeHSirsaQ5X/rV7BeDSsOJlK4ZpLCyuXn8h7U2ZweD2baEvGxT6wFKGOHOFdSf73RdrkBG47re1LKO2/W0OQ0fNgivH8qpzYnSRoKgBlY0IrvZDuZxUnPidanLgvEsulYxoUrq1oKG8xDhitGgy51LLxVPHVsEG36PFjIoG0VWj2SFexBBI2jq3R0xkDZxUyYJASHWAvxtON/SiGXQTPe3QgFLpH5UEW1RxGx4Y0esZJz91QDSAeDs3xltMRh9ijyoOMs3xZycoMdEqh9ECDN8JMZIOrhN8LYtJv9GZ3UFEzxLU8SOOrt7OMz5Hx1RMaxEatpKnf3h05vZzIKEy/g8iuLMSlLB+1XrALZQ9dVsM5hjtndhb6MJ42REFjxmhBiqwhVZp/gNmB5heo70dUdzkaUWdSGh/8vwWAaAD8RbIKiqyw5qCxXjxarSuFLoeCF/lbv/eIvHtmrwjdVobr0S0bK7AsvMXhsVo42f9T292IpSCHxrw1ku/DWXHe9HfKKFaz3+iIc5nH6HMOqc4YvonPu6dR723lzt4s0AwIs9eqloMe017nUAi2X7qhE8HGv0UFAUIlL1RvvxG1MZ7b9zehBegcUEl7DRIEjBWln1EX7TB79Urd+aAaRXODawsju20T89wILE/bJYpVl4rEoGS1etLRsqdXQSCd3SLw4X/R/wK8uh2DrpHtdmYZIG+xW92vn8k2TM8=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39850400004)(396003)(346002)(366004)(136003)(376002)(86362001)(38100700001)(6916009)(966005)(52116002)(6666004)(66556008)(54906003)(8936002)(186003)(26005)(478600001)(2906002)(66476007)(316002)(2616005)(5660300002)(16526019)(66946007)(38350700001)(956004)(53546011)(6486002)(8676002)(36756003)(4326008)(83380400001)(33656002)(7696005)(44832011)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
 =?utf-8?Q?p3iFf/Kz2g3i0dBIsmruNJlfH8SJ0saOqVwzl5H?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1950
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	47ce0479-4a1d-4c42-de15-08d8f9d4a0a7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gkaul3/IG0GE37dZx4yqVuHhuXdBFr0VTfzKeBXdhRHc5VEvbyorJ5hgW0J6D6WfEe0AMKr2jWPadlBGTIIWjzKVuNMrXGp5hCxn9bqK0JvudFi2TNsZz6y/pI2V1AAfvQcGbARUZUBpiHkbnya2S/68v16ZjYq01D9SQjFkh/SzGCtm+dlqnhKWXhfB+lPWaSopPRyRfyuPNn/CXoxl8h/C6xyfSDuNiiwFjAqt9UAKX97byLnPjUNpyNOTy8WBgtG4dFOXbmb33tR4FO09dBb2zjhIGgRw5zAzxP4Zh+U+Z5DjToqhrm9IU1+VtHSLSbJMjlBycEaGcgVPiG4OKsgvklpq5DdTuJ5beBT/nJVbHJvvc2F9kUid3nGto0hY3WH1lgiD+fqpceIH2jb9RYV4GR3mK2zrNSuDf4i4U2qiFXhj3Mwqky1VjadYW0J+jdxy5y+hhq4xZZyz3OJJALkP4oTyh8XMTJhyOtSTv9pL0eHa818wZ4/94nmDXIGoqzsJAlCxbMlP7IsUda7x0riBYvfwmmT6rDGsTGLFd8M5k3ciUMDkDtBA8ZIeSf1UKhUx8/gnhwrY2Jgf0VdH9OcXFqPpq/ZpEeBo+/fYi+XQsfiJc4aWg2DK3qsXeBOtSnvmLQ/wpxocGRq7IF9OK9IX0AWEGShdo5oGz34UITOFs2d2h6+X4hLc7P/mvAthxnEyIzhX9JkULpz+bE68U1FwUJrrlKAxwl5oszKS+28=
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:(4636009)(39850400004)(346002)(396003)(376002)(136003)(46966006)(36840700001)(86362001)(36756003)(7696005)(966005)(6666004)(6486002)(16526019)(33656002)(70206006)(8936002)(53546011)(2906002)(26005)(186003)(478600001)(70586007)(316002)(36860700001)(956004)(44832011)(6862004)(2616005)(5660300002)(336012)(81166007)(82310400003)(356005)(83380400001)(4326008)(54906003)(8676002)(47076005)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 14:51:42.2975
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 64f6f331-5302-4b70-4cd5-08d8f9d4a830
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:
	DB5EUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB3948



> On 7 Apr 2021, at 14:56, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Luca,
>=20
> On 07/04/2021 14:19, Luca Fancellu wrote:
>>> On 7 Apr 2021, at 14:13, Julien Grall <julien@xen.org> wrote:
>>>=20
>>> Hi,
>>>=20
>>> On 06/04/2021 11:36, Luca Fancellu wrote:
>>>> Modification to include/public/grant_table.h:
>>>> 1) Change anonymous structure to be named structure,
>>>>    because doxygen can't deal with them.
>>>=20
>>> What do you mean by can't deal with them? I had a quick try with doxyge=
n build and couldn't find any failure (although I haven't looked at the out=
put).
>>>=20
>> Hi Julien,
>> The problem is that Doxygen can=E2=80=99t generate proper documentation =
for anonymous union/structure, it ends up with warning and/or producing wro=
ng documentation like
>> changing names or giving field description to the wrong field.
>=20
> I might do something wrong because I cannot spot any significant differen=
ce in the doxygen ouput if I switch back to anonymous union. Would you mind=
 to post more details (such as a diff) on how doxygen doesn't generate prop=
erly documentation?
>=20

Hi Julien,

Here the explanation of the problem: https://vovkos.github.io/doxyrest/manu=
al/unnamed-structs.html

Clearly the proposed solution is not suitable because they are just hiding =
the anonymous union/struct field from the documentation.

I did two test:

1) with the anonymous structure:

struct gnttab_cache_flush {
   union {
       uint64_t dev_bus_addr;
       grant_ref_t ref;
   } a;

I get a warning from sphinx (because the XML output of Doxygen is not in a =
good shape) when I generate the documentation, here follow the output:

$ make -C docs XEN_TARGET_ARCH=3D"arm64" sphinx-html
make: Entering directory '/home/user/prj_xen/xen/docs'
Generating xen.doxyfile
mv xen.doxyfile.tmp xen.doxyfile
Generating doxygen_input.h
/usr/bin/doxygen xen.doxyfile
Generating hypercall-interfaces/index.rst
XEN_ROOT=3D/home/user/prj_xen/xen /usr/bin/sphinx-build -b html . sphinx/ht=
ml
Running Sphinx v1.6.7
making output directory...
loading pickled environment... not yet created
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 21 source files that are out of date
updating environment: 21 added, 0 changed, 0 removed
reading sources... [100%] misc/xen-makefiles/makefiles
/home/user/prj_xen/xen/docs/hypercall-interfaces/arm64/grant_tables.rst:6: =
WARNING: Invalid definition: Expected end of definition. [error at 18]
  gnttab_cache_flush.a
  ------------------^
looking for now-outdated files... none found
pickling environment... done
checking consistency... /home/user/prj_xen/xen/docs/hypercall-interfaces/ar=
m32.rst: WARNING: document isn't included in any toctree
/home/user/prj_xen/xen/docs/hypercall-interfaces/x86_64.rst: WARNING: docum=
ent isn't included in any toctree
/home/user/prj_xen/xen/docs/misc/kconfig.rst: WARNING: document isn't inclu=
ded in any toctree
/home/user/prj_xen/xen/docs/misc/kconfig-language.rst: WARNING: document is=
n't included in any toctree
/home/user/prj_xen/xen/docs/misc/kconfig-macro-language.rst: WARNING: docum=
ent isn't included in any toctree
/home/user/prj_xen/xen/docs/misc/xen-makefiles/makefiles.rst: WARNING: docu=
ment isn't included in any toctree
done
preparing documents... done
writing output... [100%] misc/xen-makefiles/makefiles
generating indices... genindex
writing additional pages... search
copying images... [100%] admin-guide/xen-overview.drawio.svg
copying static files... done
copying extra files... done
dumping search index in English (code: en) ... done
dumping object inventory... done
build succeeded, 7 warnings.
make: Leaving directory '/home/user/prj_xen/xen/docs=E2=80=99

And checking the generated html page html/hypercall-interfaces/arm64/grant_=
tables.html you can see that there is a union without name or fields right =
above "union __guest_handle_gnttab_cache_flush_t".

2) without the anonymous structure:

struct gnttab_cache_flush {
-    union {
+    union a {
       uint64_t dev_bus_addr;
       grant_ref_t ref;
   } a;

I don=E2=80=99t get the warning from sphinx and looking in the html/hyperca=
ll-interfaces/arm64/grant_tables.html page I can see the proper documentati=
on for the union a right above "union __guest_handle_gnttab_cache_flush_t=
=E2=80=9D.

Let me know if you get different results.

Cheers,
Luca

> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 14:55:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 14:55:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106736.204083 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9at-0002SM-6C; Wed, 07 Apr 2021 14:55:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106736.204083; Wed, 07 Apr 2021 14:55: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 1lU9at-0002SF-2q; Wed, 07 Apr 2021 14:55:47 +0000
Received: by outflank-mailman (input) for mailman id 106736;
 Wed, 07 Apr 2021 14:55:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU9ar-0002Rq-QW
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 14:55:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0a5d48c5-54b9-4a86-95a4-9d6c1b8eaa5e;
 Wed, 07 Apr 2021 14:55:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 06E52AC79;
 Wed,  7 Apr 2021 14:55: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: 0a5d48c5-54b9-4a86-95a4-9d6c1b8eaa5e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617807344; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Py8d3CUcnsKwYhlPbpBJihEdE0AlK3qAg75SbmmHmCk=;
	b=tUlsyzs2bw9uF6vQb/NHMwV+Q3fd2zW0nezJUtkbQI+07/D6UdFQdIT8dIjWXxrqM7SVOF
	NDHqZ3nc0BFiLvR5CpXRsJCydm2+b2magAJ6y2OXhVFOzMv1IAJkoTTUYO6r24y8P2bDCe
	+C3G+SkRPua3f/JIKKll2PrDZJTk5XQ=
Subject: Re: [PATCH v3 03/11] x86/vlapic: introduce an EOI callback mechanism
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-4-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d18d9e3b-872f-b0cb-aebf-5e55d4433b75@suse.com>
Date: Wed, 7 Apr 2021 16:55:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210331103303.79705-4-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 31.03.2021 12:32, Roger Pau Monne wrote:
> Add a new vlapic_set_irq_callback helper in order to inject a vector
> and set a callback to be executed when the guest performs the end of
> interrupt acknowledgment.
> 
> Such functionality will be used to migrate the current ad hoc handling
> done in vlapic_handle_EOI for the vectors that require some logic to
> be executed when the end of interrupt is performed.
> 
> The setter of the callback will be in charge for setting the callback
> again on resume. That is the reason why vlapic_set_callback is not a
> static function.

I'm struggling with your use of "resume" here: Resuming from S3
doesn't require re-doing anything that's kept in memory, does it?
So what meaning does the word have here?

Apart from this, and with the xzalloc_array() change requested
by Andrew, this looks good to me.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:00:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:00:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106745.204094 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9ex-0002cs-O6; Wed, 07 Apr 2021 14:59:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106745.204094; Wed, 07 Apr 2021 14:59:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9ex-0002cl-Kf; Wed, 07 Apr 2021 14:59:59 +0000
Received: by outflank-mailman (input) for mailman id 106745;
 Wed, 07 Apr 2021 14:59:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU9ew-0002cg-PV
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 14:59:58 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 10bbff3d-b3bb-4f63-a4f3-2e788eee0f2c;
 Wed, 07 Apr 2021 14:59:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 254A5B03D;
 Wed,  7 Apr 2021 14:59:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 10bbff3d-b3bb-4f63-a4f3-2e788eee0f2c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617807597; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=hFjbxnTPGwRNZoBNKz1nnOU5P9FQ4glztgCAmAlvJW4=;
	b=f2/Q72ibyhBvta9cHeJG4WEMuLWNflLfSwE5s611j410LxMSi0GTtukdL7lzogHxWZrlQE
	rHIO+eRMD7l8QPwzlB2OjqbKy0BYHEKOoY1GIYgBxHg/uQAYebyYX4FQJAaVqxwdqwwmmg
	JrAnGELSQ0z490ZdslIJsGe6SEDh5Nw=
Subject: Re: [PATCH v3 04/11] x86/vmsi: use the newly introduced EOI callbacks
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-5-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5e42180d-378d-82ac-acd8-c4a56b8c0829@suse.com>
Date: Wed, 7 Apr 2021 16:59:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210331103303.79705-5-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 31.03.2021 12:32, Roger Pau Monne wrote:
> Remove the unconditional call to hvm_dpci_msi_eoi in vlapic_handle_EOI
> and instead use the newly introduced EOI callback mechanism in order
> to register a callback for MSI vectors injected from passed through
> devices.
> 
> This avoids having multiple callback functions open-coded in
> vlapic_handle_EOI, as there is now a generic framework for registering
> such callbacks. It also avoids doing an unconditional call to
> hvm_dpci_msi_eoi for each EOI processed by the local APIC.
> 
> Note that now the callback is only registered (and thus executed) when
> there's an MSI interrupt originating from a PCI passthrough device
> being injected into the guest, so the check in hvm_dpci_msi_eoi can be
> removed as it's already done by hvm_dirq_assist which is the only
> caller of vmsi_deliver_pirq.
> 
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:03:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:03:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106751.204107 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9ij-0003XH-8n; Wed, 07 Apr 2021 15:03:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106751.204107; Wed, 07 Apr 2021 15:03:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9ij-0003XA-5W; Wed, 07 Apr 2021 15:03:53 +0000
Received: by outflank-mailman (input) for mailman id 106751;
 Wed, 07 Apr 2021 15:03:51 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L9xm=JE=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lU9ih-0003X5-ST
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:03:51 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3c42e1a3-a204-4685-b51e-da852e24e71e;
 Wed, 07 Apr 2021 15:03: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: 3c42e1a3-a204-4685-b51e-da852e24e71e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617807831;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=dCcL9tZYdKA331q4Nw5XFfidGGKXo1yPU3a7vQpENx8=;
  b=TCSr5wLlQEMETFoUJsxUxGQBLjlzX54UfyXVIg/GlWuMMraP7o2yvrpO
   9woG7Pa/OCl5rgOxqtJQKzkhVbdxqD7ojo8NGwudkHSs6rGZGlZWNqEmr
   A3lgs8oIyq00GzvvOcsHleLf287rSRoRGr0yWXqKJL4VK80sCBE6PPnmx
   w=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: JcQOxFw4MmKPgtigDh26hoXUhDov/kliljCizXGag/AHX/T7E7ZfgBqK9YrFvqRy8hh9CIF8eX
 H0Vh5lUsEx+Ypo/5mmmWDuSfSrd1VWk/xJpXr5Wq+aAV5kkzjo9wJNAGvvictWjhW2ChSA5yCb
 jOefKMhiOFa1KTdK6Sg1fMKKpuOMkOcvRWg9ydq3AFz3BHsMJKHD7Jcl1UtGp77fUS0A69HKoQ
 fOHtqF9t3+ii4tMK3zn9AthlzF/h2zFj0RINSAcTcVZi3H9mBWseNf8+YFJJMMg9ie4prbS0DX
 CCo=
X-SBRS: 5.1
X-MesageID: 42544777
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:qqPDYqBGaBULchHlHekz55DYdL4zR+YMi2QD/WoZc3JoW+afkN
 2jm+le+B/vkTAKWGwhn9foAtjlfVr385lp7Y4NeYqzRQWOghrMEKhO5ZbvqgeMJwTQ7ehYvJ
 0NT4FfD5nKAUF+nYLG5mCDYrEd6f2m1IztuuvE1XdqSmhRGsNdxiN0EBySHEEzZCQuP/oEPa
 GR7MZGuDasEE5/Bq/QOlA/U+fOvNHNnp79CCR2ZCIP0wWSkSiurIfzDhnw5GZ5bxp03bwg/W
 LZ+jaZ2oyftZiApSPh6w==
X-IronPort-AV: E=Sophos;i="5.82,203,1613451600"; 
   d="scan'208";a="42544777"
Date: Wed, 7 Apr 2021 16:03:46 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Olaf Hering <olaf@aepfle.de>
CC: <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH for-4.15] libxl: Replace deprecated QMP command by
 "query-cpus-fast"
Message-ID: <YG3J0rRCCG0JotRq@perard>
References: <20210322141744.522041-1-anthony.perard@citrix.com>
 <20210401162454.78fb0290.olaf@aepfle.de>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20210401162454.78fb0290.olaf@aepfle.de>

On Thu, Apr 01, 2021 at 04:24:54PM +0200, Olaf Hering wrote:
> Am Mon, 22 Mar 2021 14:17:44 +0000
> schrieb Anthony PERARD <anthony.perard@citrix.com>:
> 
> > We use the deprecated QMP command "query-cpus"
> 
> There is also the already removed "cpu-add" command used, which apparently has to be replaced by "device_add".
> 
> Do you happen to have a fix for this as well?
>
> Another thread suggests that more deprecated commands are used. I think they have to be adjusted as well, ideally before they finally disappear from upstream qemu.

I'm working on a fix for cpu hotplug and other deprecated/removed
things, I'll try to propose the patches upstream soon after the release
of Xen.

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:19:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:19:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106757.204122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9xW-0004ZD-MU; Wed, 07 Apr 2021 15:19:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106757.204122; Wed, 07 Apr 2021 15: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 1lU9xW-0004Z6-Hx; Wed, 07 Apr 2021 15:19:10 +0000
Received: by outflank-mailman (input) for mailman id 106757;
 Wed, 07 Apr 2021 15:19:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lU9xV-0004Z1-Ev
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:19:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 087ffc5a-fb8d-4dda-b637-5da2f28a23cb;
 Wed, 07 Apr 2021 15:19:08 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 54740B166;
 Wed,  7 Apr 2021 15:19: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: 087ffc5a-fb8d-4dda-b637-5da2f28a23cb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617808747; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=smC/S1KIKYAb/PZDexjTRT4X2DWdjUvdDeqpVkTO6kI=;
	b=fViEUPZbM6QgII2QIOfrEogKaUJ49q5AiFD80Y+ewT7u7SqB46Ye/n7EjQYVy1SjPM6Y1X
	QoMpxsicaIqRAN1FwEqNLf2Y1rmf+iJY/GRieJIAb3hYJvStVDRMRB2xANU9CNzwzUkZvx
	BGy71IhFNyOJ79pr8+qEZs1FBvQBxmQ=
Subject: Re: [PATCH v3 05/11] x86/vioapic: switch to use the EOI callback
 mechanism
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-6-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <f8d9c37f-8896-36af-712a-ac0765567409@suse.com>
Date: Wed, 7 Apr 2021 17:19:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210331103303.79705-6-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 31.03.2021 12:32, Roger Pau Monne wrote:
> --- a/xen/arch/x86/hvm/vioapic.c
> +++ b/xen/arch/x86/hvm/vioapic.c
> @@ -394,6 +394,50 @@ static const struct hvm_mmio_ops vioapic_mmio_ops = {
>      .write = vioapic_write
>  };
>  
> +static void eoi_callback(unsigned int vector, void *data)
> +{
> +    struct domain *d = current->domain;
> +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
> +    unsigned int i;
> +
> +    ASSERT(has_vioapic(d));

On the same grounds on which you dropped checks from hvm_dpci_msi_eoi()
in the previous patch you could imo now drop this assertion.

> @@ -621,7 +624,43 @@ static int ioapic_load(struct domain *d, hvm_domain_context_t *h)
>           d->arch.hvm.nr_vioapics != 1 )
>          return -EOPNOTSUPP;
>  
> -    return hvm_load_entry(IOAPIC, h, &s->domU);
> +    rc = hvm_load_entry(IOAPIC, h, &s->domU);
> +    if ( rc )
> +        return rc;
> +
> +    for ( i = 0; i < ARRAY_SIZE(s->domU.redirtbl); i++ )
> +    {
> +        const union vioapic_redir_entry *ent = &s->domU.redirtbl[i];
> +        unsigned int vector = ent->fields.vector;
> +        unsigned int delivery_mode = ent->fields.delivery_mode;
> +        struct vcpu *v;
> +
> +        /*
> +         * Add a callback for each possible vector injected by a redirection
> +         * entry.
> +         */
> +        if ( vector < 16 || !ent->fields.remote_irr ||
> +             (delivery_mode != dest_LowestPrio && delivery_mode != dest_Fixed) )
> +            continue;
> +
> +        for_each_vcpu ( d, v )
> +        {
> +            struct vlapic *vlapic = vcpu_vlapic(v);
> +
> +            /*
> +             * NB: if the vlapic registers were restored before the vio-apic
> +             * ones we could test whether the vector is set in the vlapic IRR
> +             * or ISR registers before unconditionally setting the callback.
> +             * This is harmless as eoi_callback is capable of dealing with
> +             * spurious callbacks.
> +             */
> +            if ( vlapic_match_dest(vlapic, NULL, 0, ent->fields.dest_id,
> +                                   ent->fields.dest_mode) )
> +                vlapic_set_callback(vlapic, vector, eoi_callback, NULL);

eoi_callback()'s behavior is only one of the aspects to consider here.
The other is vlapic_set_callback()'s complaining if it finds a
callback already set. What guarantees that a mistakenly set callback
here won't get in conflict with some future use of the same vector by
the guest?

And btw - like in the earlier patch you could again pass d instead of
NULL here, avoiding the need to establish it from current in the
callback.

> --- a/xen/arch/x86/hvm/vlapic.c
> +++ b/xen/arch/x86/hvm/vlapic.c
> @@ -192,7 +192,13 @@ void vlapic_set_irq_callback(struct vlapic *vlapic, uint8_t vec, uint8_t trig,
>  
>      if ( hvm_funcs.update_eoi_exit_bitmap )
>          alternative_vcall(hvm_funcs.update_eoi_exit_bitmap, target, vec,
> -                          trig || callback);
> +                          /*
> +                           * NB: need to explicitly convert to boolean to avoid
> +                           * truncation wrongly result in false begin reported
> +                           * for example when the pointer sits on a page
> +                           * boundary.
> +                           */
> +                          !!callback);

I've had quite a bit of difficulty with the comment. Once I realized
that you likely mean "being" instead of "begin" it got a bit better.
I'd like to suggest also s/result/resulting/, a comma after "reported",
and maybe then s/being reported/getting passed/.

As to explicitly converting to bool, wouldn't a cast to bool do? That's
more explicitly an "explicit conversion" than using !!.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:19:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:19:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106758.204134 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9xl-0004de-US; Wed, 07 Apr 2021 15:19:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106758.204134; Wed, 07 Apr 2021 15:19:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lU9xl-0004dW-Qv; Wed, 07 Apr 2021 15:19:25 +0000
Received: by outflank-mailman (input) for mailman id 106758;
 Wed, 07 Apr 2021 15:19:24 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lU9xk-0004bs-GS
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:19:24 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lU9xk-0007uo-Ea
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:19:24 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lU9xk-000672-Cq
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:19:24 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lU9xf-00052w-GE; Wed, 07 Apr 2021 16:19: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=References:In-Reply-To:Subject:Cc:To:Date
	:Message-ID:Content-Transfer-Encoding:Content-Type:MIME-Version:From;
	bh=GvpGue6hK6WrmBsnSv9fYunLo++JeTdS38KgxlgCwQg=; b=46+vTlPvBDg6DfU+G4/s5qbdfk
	lNqznKpe3erOISxB7GnNkKt0qlIjmIRdVD7OKm53mgK895BSRKyGnY9JATF/Xw3PTEjKVLdy1bECK
	zZ1fyJ30HFlez6g5In5lTdG6ayxpW4AWKrjcmp3/R6jZXDgPGGUqahKmyGQ1s8hDrEtk=;
From: Ian Jackson <iwj@xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Message-ID: <24685.52599.234444.705703@mariner.uk.xensource.com>
Date: Wed, 7 Apr 2021 16:19:19 +0100
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Julien Grall <julien@xen.org>,
    xen-devel@lists.xenproject.org,
    Bertrand Marquis <bertrand.marquis@arm.com>,
    wei.chen@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 3/3] docs/doxygen: doxygen documentation for grant_table.h
In-Reply-To: <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
	<20210406103603.8530-4-luca.fancellu@arm.com>
	<7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
	<0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
X-Mailer: VM 8.2.0b under 24.5.1 (i686-pc-linux-gnu)

Luca Fancellu writes ("Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h"):
> The problem is that Doxygen can’t generate proper documentation for anonymous union/structure, it ends up with warning and/or producing wrong documentation like
> changing names or giving field description to the wrong field.

This does not seem like it would be an impossibly hard feature to add
to doxygen.

Ian.


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:30:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:30:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106768.204149 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUA7v-0005fx-VQ; Wed, 07 Apr 2021 15:29:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106768.204149; Wed, 07 Apr 2021 15:29: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 1lUA7v-0005fq-Ru; Wed, 07 Apr 2021 15:29:55 +0000
Received: by outflank-mailman (input) for mailman id 106768;
 Wed, 07 Apr 2021 15:29:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IknL=JE=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lUA7u-0005fl-6t
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:29:54 +0000
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.5.74]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b62855ac-a803-4f27-ba26-089d5f53d6c4;
 Wed, 07 Apr 2021 15:29:52 +0000 (UTC)
Received: from AM5PR0301CA0028.eurprd03.prod.outlook.com
 (2603:10a6:206:14::41) by VE1PR08MB5696.eurprd08.prod.outlook.com
 (2603:10a6:800:1ae::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Wed, 7 Apr
 2021 15:29:39 +0000
Received: from AM5EUR03FT020.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:14:cafe::5f) by AM5PR0301CA0028.outlook.office365.com
 (2603:10a6:206:14::41) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 15:29:39 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT020.mail.protection.outlook.com (10.152.16.116) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 15:29:39 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Wed, 07 Apr 2021 15:29:39 +0000
Received: from 476d4ea07fd6.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 9E77EC68-FFD0-4DEB-967B-73C9D9F300B8.1; 
 Wed, 07 Apr 2021 15:29:32 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 476d4ea07fd6.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 15:29:32 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB2925.eurprd08.prod.outlook.com (2603:10a6:802:19::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Wed, 7 Apr
 2021 15:29:31 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 15: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: b62855ac-a803-4f27-ba26-089d5f53d6c4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RTcgAXVwCqNox34jIT4HgM+H69u0P79QsDwUG8MPVjE=;
 b=jEaa2gDHv9z/TMBVAUowRvX0rzRjgTPhEEw3Y9TGwoqUe624EGA6On+dmqRYKDR7B5Wvhhqbqo1toYXrjjCwkpNK0WgkZo+RXHrMbxA23wu9DLQkDvAjIA7DamEtvfFg13l8n1pOk7V38KChmLJdVX9tOZXaxouyji7S2SLFcgs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 79db823bd05d77ab
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mWSANXiyIVWUca7L4eTcL3mKwuNRwZRIxy119OYgYnbBAiv5NqBzVup3gh7tC/gGdzSptunQImBdV9RD58gzPP5/QEw/PQB3geMTP1dR9dKe2qGjUKwVivnvasnJZtmtZ98661+0g/tca4C1Yfx9lvjpT8S67Ys3BEkXMbraaO0mMlPGY32enbaI0jd3OOo6kKxsUWexCsnFbQnU+cGhVy19090YECqu7feZ8Xwpk6W3rDOGdQYgU46R4NXNuZr8oTAgEbv52A+KHXJK3rBPOyFeDzWmnWAsJhZXyCP4/NJLuozi8qgfRC6gx9wsq+V9WsUJ04nQyMsXPg/AYaE2tA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RTcgAXVwCqNox34jIT4HgM+H69u0P79QsDwUG8MPVjE=;
 b=K1KkOkGlGMq2t7PGOz3X1CEiy9oUdxeUOK09Bu5T/9t0lPPPHBae0VGVU2ibA1wOuduUWeK/n5rh2+o9bWqGBkOWRQB6Vc6p4hPNc97ZeXGCn/lWWWZVi9HsGpPLIgDavNQBpG+lmDLB1qaUGXSeFo2tbzJ00xZh5ZZOW717EpfBgRH+2ti52Wx72x6VoD0+RhT0+sEQCqOzoPrimuKfp0G+FTZQNt7M5vS9w2tuYI8rnPCa/Q1OlybGcpkWRT+BHW5kNasPZkJrkxmubgGdpKPAZDX40gpxn1R1rCrnf3obIVi4FtcW/GZUXjWWnA4SpmPLcIRK9KkBfD6HwPHQPA==
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=RTcgAXVwCqNox34jIT4HgM+H69u0P79QsDwUG8MPVjE=;
 b=jEaa2gDHv9z/TMBVAUowRvX0rzRjgTPhEEw3Y9TGwoqUe624EGA6On+dmqRYKDR7B5Wvhhqbqo1toYXrjjCwkpNK0WgkZo+RXHrMbxA23wu9DLQkDvAjIA7DamEtvfFg13l8n1pOk7V38KChmLJdVX9tOZXaxouyji7S2SLFcgs=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Ian Jackson <iwj@xenproject.org>
CC: Luca Fancellu <Luca.Fancellu@arm.com>, Julien Grall <julien@xen.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Wei Chen
	<Wei.Chen@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 3/3] docs/doxygen: doxygen documentation for grant_table.h
Thread-Topic: [PATCH 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
Thread-Index: AQHXKtDW6d1uIaHDNEirYTRFGCHHX6qpCgoAgAABvgCAACFYgIAAAteA
Date: Wed, 7 Apr 2021 15:29:30 +0000
Message-ID: <03084EF9-F130-41F7-9D8D-9AF86A87717F@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
 <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
 <24685.52599.234444.705703@mariner.uk.xensource.com>
In-Reply-To: <24685.52599.234444.705703@mariner.uk.xensource.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.60.0.2.21)
Authentication-Results-Original: xenproject.org; dkim=none (message not
 signed) header.d=none;xenproject.org; dmarc=none action=none
 header.from=arm.com;
x-originating-ip: [212.20.154.75]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 0706f152-cef3-4cb9-f530-08d8f9d9f57c
x-ms-traffictypediagnostic: VI1PR08MB2925:|VE1PR08MB5696:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<VE1PR08MB56967B084EAB21B26F4457C89D759@VE1PR08MB5696.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 xnuHuMGq8lhPuq6yGY7Oz1GBlhD+0s+aRni4KstbMjZrUT+dXmuXQBRYGl+nkpec3xfcMm0OBjC9mKRiQu+Gety/Xd4o+Ov0x9vckp/AI4mMxExyhexWy2i8dVDgg2nH/6m4icnDXFxCmIASrRG1GzrCfoo6KptIzPQP9BOBrt+h1b0ogWLOrQU24IBioUABGXzbGr9spVW8t6QMCFydSGotaJIc/JXfxqp5WxAMjgI4uua3h7dRWEuKs7y1EPkbTl6n7VFWrAGW253WRkkB2DLDAb5Zr4LI5ua78Xul0Zbsh4YCtWUukTJNdx4kE3NIuf4O93P79Tb57dxBVPLZdt5u3zN/Lpn+kLOj3pK50ix70TPeN4yswPNStK9hPdbuxJNhBlcwnb+ug6L16iCogl50cnkTrVsDNiETW4EGCMsLAUaacfgv13ZciDfocMulLoq248xxUZBs3+41a/1NNRbFdKGg+YJB2Brk0EardHOxlI3/Nb1bMZq98LUbfyvOHBzTLN7V9J8TlzCypP2vOIuiFF0XQHgxWWw4RrZmYzhM4VtCed7WLJWEXZOZmRCaXPXqtnBt92JPk+KpHUh3i9LuwA6JZ/+DQ1ZPvLeoZVCpnPtqlK8KVKOn2w25gKtN0W5evDigMXJAzalR3pOmOdbV7GtWGFC5wkR7S8ESSPIbOy8+09MWIaENrSDL9Sub
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(366004)(376002)(346002)(39860400002)(4326008)(53546011)(478600001)(4744005)(316002)(6486002)(26005)(5660300002)(86362001)(186003)(6916009)(54906003)(8676002)(71200400001)(2616005)(8936002)(83380400001)(66946007)(66446008)(64756008)(66556008)(66476007)(91956017)(76116006)(38100700001)(33656002)(36756003)(2906002)(6506007)(6512007)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?utf-8?B?bmdPRDdxbzEyNDdYZTJLZi9tVnlvUjRBeXhaYTY3VUdhZWNXQW5Pc2dPMVND?=
 =?utf-8?B?dlAwV1V6eHFrM1JRZmVuL2p0Vktrc3ZYMHErV1JCa1NRb0ppTDc2ZEpNN3JV?=
 =?utf-8?B?ZGhUQkx3YVhqWHpsMnRhaFVhQzFxelhjbEVpajRtTGZMWWRGVlVrakNCNndX?=
 =?utf-8?B?VkFuejMzaUpYOUtPbEgvaWNDbzI0SUNlenZick54SEJDMjVkVE9FbzR3T3Mw?=
 =?utf-8?B?cHlVOGxJdHpRbmhxZFdDdGUvYzZoUTFCQ1g1Z1dZSVJlWmxZSXpWRm8yckdK?=
 =?utf-8?B?ejRxNS9GTmRtbEd5Zk04YzdOQ05NZlpFYnVlRUNkek1BU09US2N3S2VCZlRU?=
 =?utf-8?B?K05wYStkVHJ1VWFuTDBSUm5kWlgra3ZBRTBzdmViNHZWNGp6YXpKN0R2UitZ?=
 =?utf-8?B?bS82bnh5eGQ0VzFKbG0zMmxhSWtmRlg4VVg5TVlTUHU0czhTdjljL3R5UHIy?=
 =?utf-8?B?M1VNbWQ3MXFxeHBOTVQ0dFhWQUEzVkxKeldvYWY0amFKdjFXdnBXcVB5Mi81?=
 =?utf-8?B?UGp3VENzOS9PL2RXUllKa0tXVUtRT0hBWC9aYVFNVTBzZFhVbHRnRUMvQU1q?=
 =?utf-8?B?d1d5K0FZTjVLZEdER0M2alJ6YVpmNEhSWUNUVGV6cTQ4ZmpOS09kaG9xMjc3?=
 =?utf-8?B?Nk56S2hoL0lYT1hwTXVOeHBvS25MZm9kWWtrWlM4S0xSeHRiY1RVdHZ4aGRo?=
 =?utf-8?B?ZHNvRk9qSDJmSjNGUmFJbG9idEt4Q3RGa3MxeVN5T2ZsME5Xc3ZIa0xGNWJ3?=
 =?utf-8?B?QU1LU1ZpQjZ0MkQ0Rm1ERGJSV1FDL2hIU1VMV0thdGM4SWU0SGgzTTN4eFlO?=
 =?utf-8?B?MUZRQmltMEtCVXlXTFU3QUNjTHVyYlRXTXBxclFZWWVQTjlka2JjNkxTSnNJ?=
 =?utf-8?B?YVBCV050dXM1aFdROVFoSHc4K1dTcU83eExTV2VDTXRhSlR0cm84Zk9mS3JV?=
 =?utf-8?B?WjFuUExDK28xRURVRUJHTjhBVkFGZ3d5cnBnL3JIMWgxTXpjSUN2RHBnR09S?=
 =?utf-8?B?WkNxa1Y2ZzNHWDBsanp5YVpwNlBRWHp6elNBM0hsUGY5SkhXa0E2Ym96OUVC?=
 =?utf-8?B?MVhuRW82Lzd0dndWSkcyWFpjTjV4dFBla09sazhpVC9sVktVQi80dWtuUnpZ?=
 =?utf-8?B?WXJObmlvTE5YWVFxZitVVFBOZFBQR0Z2K1FZNWRPQ2ZNL0tXOXpUNm0xUU4v?=
 =?utf-8?B?Lzd2TFJiTEpoMUE5akhhQkFsY1hJZW94ekpBWXJTY0wyNk5IRG54V04zR2Qx?=
 =?utf-8?B?djJkb3ZqUVQyUmh2bkppdGcvT3liNldnZFZxeURaeXpETDJ2M1c4OGVRSGJh?=
 =?utf-8?B?YmxIZVA4bjdKY09IY21mRndtVGNFZTVsaVNmYTNHaW9MY3h4VHFta3QwM0hx?=
 =?utf-8?B?dUZHQ204NEtmUXVvaXdFNG91UWpSaXBZdXFGWDdPOEZYbk5TWnZUQzUxaTF1?=
 =?utf-8?B?TkxxR3EvR2o3UHFSc0k1U29hbFRvNFN5RStCNlJ2N29vaTUza3djWXVIdyt2?=
 =?utf-8?B?NVRRRklmdDJNRWtzZGRJSlhFU21QS2xuNGYram1zWGp4LzMyWGpZZ0JqRUhF?=
 =?utf-8?B?QnVPblArT2lVemdpYVR2VjBHUDNRcGdJajVwZXNDaEJnOFBaaXE1eG1DR1ZZ?=
 =?utf-8?B?d0V0cDRuTzRkNDRENVpKMFhkMEdjWDI0SlZaeWJ2a2lGN09pd3NWVXRqcTZV?=
 =?utf-8?B?RGZVclcrMzR5YWZoWDIybFkrMFRJeW9SZHkwQWpGbDhFRnJpaEdWRVJzZUtn?=
 =?utf-8?Q?nMMecoSiJnu6y/FlW7t3ot2gtnavpWJCiEYQiwe?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <F868E03A48CF8340B9BA39A85BD430E5@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB2925
Original-Authentication-Results: xenproject.org; dkim=none (message not signed)
 header.d=none;xenproject.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT020.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ec68a325-584b-4a73-0d8f-08d8f9d9f07c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	6oxuA2Uo+0RG6wDmSpa/3B9F1bb1xQGfQC/O4eOgolrHPBxTJUgdY7mvAgp5LSekXMOAC/5FZ+Eb1YAd9eCihEnYzJuRnX730E+0ZSFp+nKAWB89JvwUbWd/dCRdVcgk4CZZFAFX9vndF9mfyOb1hoBkku/A9vIfiDhO6yam3RZSwe1+UqBgeBbAynz2fG/sThi7jP5b5mAwFht9hVRfCv7G3APCgew2JaJRbxmYrgb6V4f+DrnJ54Ecskdif5zUvh/wnd0ROhWRbvczlNhAsm5kpReRD3VLe4A+tIDitHmwTpbbtAd752D+OBy60Q1vih9JMg+XDwb4knKtmf9RFYrLTgMDMkrLZL6MAgqZAyO9ZvVklmSgfyaajPUNECS1vo8pD9hqVb5LZ1ImPqVYQAmDa5uy/R4hNcnRwyWpzVtcxiiv1xYL0zG/RgQL847OS5TX3YpU7C1ykUK8y2uIORsYZIfY2F8KQr3y+c2xhUjO9jl0qSDfxiklt92ZjUcsXTuJhIHPWdQQsLedxoZu8ESXN0q5u8IMX4U+ah25G+k4/PII1YHsBD9vxzjx9qAYpvk/oNKqA5sexetor/yDICn2f7ufQ2LHbEfuSRiOAdGVMI1MgLmOHhi1CfFqs9m+7nzYKlvNeZjD5Z4KUa+UXARN9tizuB5pVjwynG5r1Tk=
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:(4636009)(136003)(346002)(39860400002)(376002)(396003)(36840700001)(46966006)(2616005)(47076005)(6506007)(82310400003)(6512007)(356005)(8676002)(336012)(82740400003)(53546011)(70206006)(86362001)(36860700001)(8936002)(81166007)(54906003)(6862004)(33656002)(478600001)(316002)(186003)(5660300002)(83380400001)(26005)(2906002)(36756003)(6486002)(4744005)(70586007)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 15:29:39.4192
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0706f152-cef3-4cb9-f530-08d8f9d9f57c
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:
	AM5EUR03FT020.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5696

SGkgSWFuLA0KDQo+IE9uIDcgQXByIDIwMjEsIGF0IDE2OjE5LCBJYW4gSmFja3NvbiA8aXdqQHhl
bnByb2plY3Qub3JnPiB3cm90ZToNCj4gDQo+IEx1Y2EgRmFuY2VsbHUgd3JpdGVzICgiUmU6IFtQ
QVRDSCAzLzNdIGRvY3MvZG94eWdlbjogZG94eWdlbiBkb2N1bWVudGF0aW9uIGZvciBncmFudF90
YWJsZS5oIik6DQo+PiBUaGUgcHJvYmxlbSBpcyB0aGF0IERveHlnZW4gY2Fu4oCZdCBnZW5lcmF0
ZSBwcm9wZXIgZG9jdW1lbnRhdGlvbiBmb3IgYW5vbnltb3VzIHVuaW9uL3N0cnVjdHVyZSwgaXQg
ZW5kcyB1cCB3aXRoIHdhcm5pbmcgYW5kL29yIHByb2R1Y2luZyB3cm9uZyBkb2N1bWVudGF0aW9u
IGxpa2UNCj4+IGNoYW5naW5nIG5hbWVzIG9yIGdpdmluZyBmaWVsZCBkZXNjcmlwdGlvbiB0byB0
aGUgd3JvbmcgZmllbGQuDQo+IA0KPiBUaGlzIGRvZXMgbm90IHNlZW0gbGlrZSBpdCB3b3VsZCBi
ZSBhbiBpbXBvc3NpYmx5IGhhcmQgZmVhdHVyZSB0byBhZGQNCj4gdG8gZG94eWdlbi4NCg0KTW9k
aWZ5aW5nIGRveHlnZW4gaXMgbm90IHJlYWxseSBpbiBvdXIgcGxhbm5lZCBlZmZvcnRzIGFuZCBp
ZiBzb21lb25lIGRvZXMgaXQgdGhhdCB3b3VsZCBwdXQgYW4gaGFyZCBjb25zdHJhaW50IG9uIHRo
ZSB2ZXJzaW9uIG9mIGRveHlnZW4gcG9zc2libGUgdG8gdXNlLg0KDQpCdXQgaXMgYWRkaW5nIG5h
bWVzIHRvIGFub255bW91cyBlbGVtZW50cyByZWFsbHkgYW4gaXNzdWUgaGVyZSA/DQoNCklmIHdl
IGFncmVlIG9uIG5hbWVzIG9yIG9uIGEgY29udmVudGlvbiBmb3IgbmFtZSB0aGUgcmVzdWx0IHdp
bGwgbm90IGltcGFjdCB0aGUgY29kZSBvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5Lg0KDQpSZWdh
cmRzDQpCZXJ0cmFuZA0KDQo+IA0KPiBJYW4uDQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:43:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:43:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106775.204161 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUAKx-0007PA-BI; Wed, 07 Apr 2021 15:43:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106775.204161; Wed, 07 Apr 2021 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 1lUAKx-0007P3-7y; Wed, 07 Apr 2021 15:43:23 +0000
Received: by outflank-mailman (input) for mailman id 106775;
 Wed, 07 Apr 2021 15:43:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1L58=JE=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lUAKv-0007Ow-RD
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:43:21 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.7.80]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id af5c4066-0b2d-4da2-87d5-e103ed3bf62f;
 Wed, 07 Apr 2021 15:43:20 +0000 (UTC)
Received: from DB8P191CA0021.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:130::31)
 by AS8PR08MB6312.eurprd08.prod.outlook.com (2603:10a6:20b:298::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.27; Wed, 7 Apr
 2021 15:43:14 +0000
Received: from DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:130:cafe::6f) by DB8P191CA0021.outlook.office365.com
 (2603:10a6:10:130::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 15:43:13 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT054.mail.protection.outlook.com (10.152.20.248) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 15:43:13 +0000
Received: ("Tessian outbound b610e7b4d771:v90");
 Wed, 07 Apr 2021 15:43:13 +0000
Received: from 83dba7aeb64b.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 70884334-5F51-4EAA-93D5-587D64073EAF.1; 
 Wed, 07 Apr 2021 15:43:03 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 83dba7aeb64b.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 15:43:03 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DB9PR08MB6684.eurprd08.prod.outlook.com (2603:10a6:10:26d::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Wed, 7 Apr
 2021 15:43:01 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.3999.033; Wed, 7 Apr 2021
 15:43: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: af5c4066-0b2d-4da2-87d5-e103ed3bf62f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; 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/wpTOpVCLs1Lf1KfvY9MtxtLAvQP98UuMguBvUQNIM=;
 b=WXQqjQxXbHvputfCYUe3qLw0RFo4IicSk9wV2rayKVzTKToxF0J7UfEvHHeofteey+rHwgrRqsGxHh5h5wf2y5MJ3xxk1aWaD+rX7o8g8bgVZ3Exo6rfg1amekV19+ZhWF01EVM6CWc2pKQq41v80Ozm44NUNjuXpD4vNWf/OsQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 01978eef27f945ba
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bwMjR1eGSXexovuNmjBGDwKO2H4Q5b8qjkcsWqdwwzFC4sh6BfjxhoN6JEoqXOGENz/t+U4UkAEShzoAwwCmPCxA7iAJsC4YREOrkkTKePT3ke3+LPrBs3sB/SmGJFerXnimChX1yU7eE7tYcrafxwncWMKAByW1heENNfbL2wbu8ZyUES+nYSaPEFiH+gpFoOcBk/TyObDu4AK2Vdxdw5krkrDwWtu+tMQC48FE2RIwXYnciNPfjm6kTzQpBHJVMTxjefyHl9CTqBxznGmwW3Zj0kPMvXFKgcSDtT+By1QHMn2MSNMupHZ+5sVyud+67NPr/bACv6aurlpnYzyi4A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=j/wpTOpVCLs1Lf1KfvY9MtxtLAvQP98UuMguBvUQNIM=;
 b=NlkT9D9D+78hps2lAfdR577jt6/QlAYLFF8ORPzdn1oellrFB2mH5FuTitzHOIu6D0mPDebn3nN+lslW2sMEsmXCmnz5Q1Xy818EMv3S951XcZwv8cqfgLWBd400UyeNqDFnKLkoQ5O+7KMNGQ2zcQsGpmKQESEP9V4xnhzrwbb8Hit+hUNzyZRuLY+N3Un/+Qdi9GhPFo8LjjNBvApZfUwuMly+Hji6szcQF8JZre/6ZungMsDin8BKeG650CRUUxQ4rppOep+hS8P7EoeOzp5ngdDV92HAhRyw6jCjqEBb14JKRD5ZYORk6EYB1cXZjMHIftQej/vOdvIjfjRfiA==
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/wpTOpVCLs1Lf1KfvY9MtxtLAvQP98UuMguBvUQNIM=;
 b=WXQqjQxXbHvputfCYUe3qLw0RFo4IicSk9wV2rayKVzTKToxF0J7UfEvHHeofteey+rHwgrRqsGxHh5h5wf2y5MJ3xxk1aWaD+rX7o8g8bgVZ3Exo6rfg1amekV19+ZhWF01EVM6CWc2pKQq41v80Ozm44NUNjuXpD4vNWf/OsQ=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, "brian.woods@xilinx.com"
	<brian.woods@xilinx.com>
Subject: Re: [PATCH v3 0/3] Generic SMMU Bindings
Thread-Topic: [PATCH v3 0/3] Generic SMMU Bindings
Thread-Index: AQHW9DbnaDtcsjSAAUiKSXHzYBU+iaqmdrkAgAIitwCAAQeBgA==
Date: Wed, 7 Apr 2021 15:43:00 +0000
Message-ID: <6992A3B8-0DB6-4A62-8B6F-1F59FF004A52@arm.com>
References: <alpine.DEB.2.21.2101261435550.2568@sstabellini-ThinkPad-T480s>
 <80de3eb5-b338-af4e-42eb-d358f51d0bd7@xen.org>
 <alpine.DEB.2.21.2104061606080.31460@sstabellini-ThinkPad-T480s>
In-Reply-To: <alpine.DEB.2.21.2104061606080.31460@sstabellini-ThinkPad-T480s>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 2d78c493-6f96-43c2-7537-08d8f9dbdad4
x-ms-traffictypediagnostic: DB9PR08MB6684:|AS8PR08MB6312:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AS8PR08MB6312128D979A18A343237578FC759@AS8PR08MB6312.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 hm/btYq5y0yFHWsEgM3EJeXcqUnV2pR4CwId0JJ4U0njZsBpOOgOj+A0/l9NIgSZrx1bSC2d8Lm4HAoXOn+ZHuYuM58p7vxBJwu4LEV/7f2hnIXli0GlwscOEQp0f8tSBBbAMy86aVsz7JfArofXqQrk6pRLpQmGD0qrAN+40V81v4v+IKrzu3SkumU+9s5oJTmaXYNo8tnO2y2PgdjWR7IJGy8i1Igp8J58bfbTRby6iNoTl6UTv9QG5ycbIF4Iwc/umjLSdsTjiL3+HCGrGDgMdPd/50YRM7EeDGlaabBYAC4rBF3jMtTP7v4CEa0U56qMVCk8Gzl2z2eD3NqIkY0CyaOLUVw7DyZnkl/xDUaXmDntVvPsYvojZ4JLdBccs1RIhuVtsXLuBKpmxWNZqacsrcJMME80d3lY/qCHntk68K2C1ztM+dMTYJeOv+ZMDk4YKf5gZbEE2UGTCdH3/S58St2SYb41M2irIaePRb8YXCetW4UfhrLnIq0lfPgOC98SUWLej+kc5UYUACKzYzpwT0qE1Papxh6PT2LpRd7NHdVoue2KdLJJtYlrBjBvYuBoNIlbSe1aueGFBr5EZ+FY1a/BFIhRsHoj+5XadzE8NeLpzTzSiTEjC+WxxGbmFQ70sDFzQWHl+BdRCOxt7Fp7MpmqarA0nRwuqaseKVpLv2u4FP+j6k+U2G8J2wOLBErMtCq4MlBZQG7Mbm3+D8o/BZUWnEZ1AFRzeNdpwPRykiYLrrKcDu8QP4tF3uDO7N8nNpWhhfNKc1fJbrActemRJdYmP/WpRw6uUkc88T5UvG3gPhCOlIEBhxrgU+4K
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39860400002)(346002)(366004)(376002)(136003)(36756003)(6486002)(5660300002)(186003)(54906003)(6916009)(6512007)(26005)(966005)(2906002)(478600001)(86362001)(33656002)(71200400001)(83380400001)(6506007)(53546011)(4326008)(2616005)(8936002)(64756008)(66556008)(66476007)(66446008)(66946007)(316002)(38100700001)(76116006)(8676002)(91956017)(41533002)(45980500001)(6606295002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?bCdCjX8oWg/GbXa5yMfpfJG5AoahIiSlbUS3otxdz9peyM+jRS9LHvx90v5x?=
 =?us-ascii?Q?la93gJPFQ5aFPVDWynsoypqZnt9q6x8fvlM6cDsOi4t1a6C8b17kypNrB41w?=
 =?us-ascii?Q?lq47lora2OmxtKkWWmG60Pe67bfEEhA1/lop/nfzI4Qma2z9loieDE2jlKt0?=
 =?us-ascii?Q?R3XzQtEvpS1Rrkepav9lUNk65G58U2vjR6S0mBs7PSg4fZMzrd5aIXHmmMEM?=
 =?us-ascii?Q?hvGqEqs9GyHILYJwpX9xpYEZwWNcVM5nKeh954ZuxKuXIrv95V7F6VmoE36w?=
 =?us-ascii?Q?upg2PVECb0nB2yjnEPWfcwa17zX2zPtE9K2MJpQ2/29B5bKYERISugQJpxaY?=
 =?us-ascii?Q?cc+RKhSv0ObUyeatgsIFK28/8g1lEjp11rxP0nwTDBG/CVcMslHrCPEClyqu?=
 =?us-ascii?Q?SR40zTVstO2zpBPeElyD8sp2PjOD8S0Jp2PEfwrxFBEI0UGCu7cQgTl8SuQd?=
 =?us-ascii?Q?WiRN6R3ZptKiQOFt51E+8lpdusF6ZdN3wfORrzikZu7xpMa0hhzN/EjlqTht?=
 =?us-ascii?Q?AchcJBmOGJdsGxInC+DDDJ/E6/E4wu7Zl4JRgQItYUCl/ihuJ9B7CxLhPmeG?=
 =?us-ascii?Q?Nhyurs/KQifp4+Yhk8ncRLhlgYHAfWPJamiySYo/udgu9bTH4gSwI/g1kBb+?=
 =?us-ascii?Q?wvcD8Voe/SLKeKYZkg+/P8PERMSN1YaLBFxnxIFpfsYrRo7B0ihWDo8Eh20t?=
 =?us-ascii?Q?22MDzqOB2RQ0MjgJw8DWY94WRrq9De+scPq17bXDiWcy9ME6KALSitI/YvFP?=
 =?us-ascii?Q?/9BLoqEEorEklrMWVfgY1WDs2O0aI+Slo4nyvfp3R416A2uU613rU+xLAN5+?=
 =?us-ascii?Q?D0ClXBiWw71t72qZZLQexVa4UzU6lVV+NkkIDneXx95Zz5WwoWYaDLQFvmRa?=
 =?us-ascii?Q?M+lahpQdJH2JsZAHrbG/njcIMqLjJdZyLUXeYIVQT+uomAePB6ekHSEcDbdA?=
 =?us-ascii?Q?KTmTKmBYn6WM6gxp59MFkAVDPz/IfrFmIBVCyufOmRhWmUs0hM3UHGjN3V3K?=
 =?us-ascii?Q?j95WOZUn3v0GsNc4cyIaNBtXQjGz9DsMGDrym2A8GQlCtJhNbvGxas35IoTr?=
 =?us-ascii?Q?SAKj6w4Tb199MYfsEI0sUcQFFcZlhQSpvp5tZoqsOdrBNAj0X1J4WbmhYsd0?=
 =?us-ascii?Q?4uVbVIcC3CbyBtJp7zFGKY0FgG2JCN3wFi6sQV4qpQEwsvXXmpZMcPwimRkb?=
 =?us-ascii?Q?/P5sQJQBgTbFnp2t43gniFhgrYj4tdnpo/Rmog4uS0s3ekDi2+GfB5I1mECt?=
 =?us-ascii?Q?aPZKO2+o/fA2+TC5kFXFcViLPF/Zn8t2KnadCeWhk7qqUBDgIjC6B9QRYknj?=
 =?us-ascii?Q?aoLvGnQBxSJFkDDv/EZtcxN1?=
Content-Type: text/plain; charset="us-ascii"
Content-ID: <948EB86841A07047A5BD234D0D035F9F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6684
Original-Authentication-Results: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6cc7afad-272a-4e89-f56d-08d8f9dbd31b
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	f9/eWKeanzAtqp0IVHMGNnjEaXgLqDbZ3w1kPjs2Pdy5LjXgz5GfS6i9VQ8/YSCrQ84TEaF6BjqrDH2ErWjl7X6+RHLcUq7zTaPCLrzt2gBZOqQgcOxaDx1T5Zl2CYQ3Ur0xRnZcyN4muyaIpoXsxC+LQljo4pDAFkiFeyjZkUl4ip0omjk7vvI89h47UHsCr0PScl0EpXX7FTa+4hvn2qpWuvRkxeSPrMumOA7RcGZXkhouBOtwPW6BVkASp2ScRpOQY/iVo5mv1/htmfxYssVxL/LHxM25kekzpdl9djnUA3YbVG4aIraHHjGEkjk47BzzZ6J/bSbh97j1sscOADChIeRRwPhWnQYs3ueriMW/r+N9YTiWMIrWCu/l0XOeDBHu3vQ9GCNjxALIiVfkIqw+wcr1ZNW/ERXUKpZNO1bbFqUMB+ntE9v/dl/Dwa32qdzYbMszAWSiXQdm391czw9mrd6sxRTQh/XLVnSIfk+o4yRKtS4+orxyNJxVRa9ibZ7D1jX6wLI3iqjeQm/I/WX6CjsW5HAu5Wgosr02DfftiDDiXejUWJNCAy4xTeSzME+sarrXr7VX5vQUmmB+xXyeUy12lLDBAZSNO3fWJt7LyP6rS9SECtbE1VuNDZRjsilkL/0knkslWW2V3vVAKpAUuEiwIfqpYunmF7XIiLCrl+D4vwW83WaFUQtzk43mxD/vqdYOXkCQBDagheiC6VhPgj0q/IwzSnOs7cbgSOFIcbtOgAenYjKsxrW9F4wGgOCRz87gUkagEUWPkJfeRSBFoWtC3/yAgPqSMTfs1wM=
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:(4636009)(376002)(396003)(39860400002)(136003)(346002)(46966006)(36840700001)(356005)(6512007)(336012)(107886003)(5660300002)(36756003)(8936002)(81166007)(82310400003)(316002)(26005)(83380400001)(6486002)(4326008)(966005)(70206006)(47076005)(2616005)(86362001)(6862004)(54906003)(2906002)(70586007)(36860700001)(82740400003)(33656002)(53546011)(478600001)(6506007)(186003)(8676002)(41533002)(6606295002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 15:43:13.7365
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2d78c493-6f96-43c2-7537-08d8f9dbdad4
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:
	DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6312

Hi Stefano,

> On 7 Apr 2021, at 12:59 am, Stefano Stabellini <sstabellini@kernel.org> w=
rote:
>=20
> On Mon, 5 Apr 2021, Julien Grall wrote:
>> On 26/01/2021 22:58, Stefano Stabellini wrote:
>>> Hi all,
>>=20
>> Hi Stefano,
>>=20
>>> This series introduces support for the generic SMMU bindings to
>>> xen/drivers/passthrough/arm/smmu.c.
>>>=20
>>> The last version of the series was
>>> https://marc.info/?l=3Dxen-devel&m=3D159539053406643
>> Some changes in the SMMU drivers went in recently. I believe this touche=
d
>> similar area to this series. Would you be able to check that this series=
 still
>> work as intented?
>=20
> Thanks for the heads up, no, unfortunately they don't work :-(
>=20
> They badly clash. I did the forward port of the three patches but they
> fail at runtime in my tests. I ran out of time to figure out what is the
> problem, and I'll have to pick it up at some point in the future (it
> might not be any time soon unfortunately).
>=20
> Rahul, if you have any ideas about what the problem is please let me
> know. This is the branch with the forward port:

Let me check and come back to you if I found out anything regarding the sam=
e.=20

Regards,
Rahul
>=20
> http://xenbits.xenproject.org/git-http/people/sstabellini/xen-unstable.gi=
t smmu-generic



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:51:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:51:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106784.204177 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUASc-0008NP-6g; Wed, 07 Apr 2021 15:51:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106784.204177; Wed, 07 Apr 2021 15: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 1lUASc-0008NI-3O; Wed, 07 Apr 2021 15:51:18 +0000
Received: by outflank-mailman (input) for mailman id 106784;
 Wed, 07 Apr 2021 15:51:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUASa-0008ND-Ha
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:51:16 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cb1f6193-4909-446a-b680-92eb6c454dee;
 Wed, 07 Apr 2021 15:51:15 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7CF64B17A;
 Wed,  7 Apr 2021 15:51: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: cb1f6193-4909-446a-b680-92eb6c454dee
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617810674; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=36g4tBJYkFl96eornkmZi6TegJJU/GrB2pStwKTEVeg=;
	b=oyO1VPv9PqNGf7TeXYArMHt00GP2UUK+w3gKKIVir3ytaDDlsmq3TfGpzryb4r6W5eKIOg
	coQ24OdTbziB8mNw4bspNGUhEjNjEY4A9r041r/AdxRYHYdIj2dO0o8EGnYUgpCUowA0y/
	/twISYtMvHQ3xHKncxMVeCEJ5uOkbPQ=
Subject: Re: [PATCH v3 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
Date: Wed, 7 Apr 2021 17:51:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210331103303.79705-7-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 31.03.2021 12:32, Roger Pau Monne wrote:
> --- a/xen/arch/x86/hvm/irq.c
> +++ b/xen/arch/x86/hvm/irq.c
> @@ -595,6 +595,69 @@ int hvm_local_events_need_delivery(struct vcpu *v)
>      return !hvm_interrupt_blocked(v, intack);
>  }
>  
> +int hvm_gsi_register_callback(struct domain *d, unsigned int gsi,
> +                              struct hvm_gsi_eoi_callback *cb)
> +{
> +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
> +
> +    if ( gsi >= hvm_irq->nr_gsis )
> +    {
> +        ASSERT_UNREACHABLE();
> +        return -EINVAL;
> +    }
> +
> +    write_lock(&hvm_irq->gsi_callbacks_lock);
> +    list_add(&cb->list, &hvm_irq->gsi_callbacks[gsi]);
> +    write_unlock(&hvm_irq->gsi_callbacks_lock);
> +
> +    return 0;
> +}
> +
> +void hvm_gsi_unregister_callback(struct domain *d, unsigned int gsi,
> +                                 struct hvm_gsi_eoi_callback *cb)
> +{
> +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
> +    const struct list_head *tmp;
> +
> +    if ( gsi >= hvm_irq->nr_gsis )
> +    {
> +        ASSERT_UNREACHABLE();
> +        return;
> +    }
> +
> +    write_lock(&hvm_irq->gsi_callbacks_lock);
> +    list_for_each ( tmp, &hvm_irq->gsi_callbacks[gsi] )
> +        if ( tmp == &cb->list )
> +        {
> +            list_del(&cb->list);
> +            break;
> +        }
> +    write_unlock(&hvm_irq->gsi_callbacks_lock);
> +}

Perhaps somehow flag, at least in debug builds, if the callback
wasn#t found?

> +void hvm_gsi_execute_callbacks(unsigned int gsi)
> +{
> +    struct hvm_irq *hvm_irq = hvm_domain_irq(current->domain);
> +    struct hvm_gsi_eoi_callback *cb;
> +
> +    read_lock(&hvm_irq->gsi_callbacks_lock);
> +    list_for_each_entry ( cb, &hvm_irq->gsi_callbacks[gsi], list )
> +        cb->callback(gsi, cb->data);
> +    read_unlock(&hvm_irq->gsi_callbacks_lock);
> +}

Just as an observation (for now at least) - holding the lock here
means the callbacks cannot re-register themselves.

> +bool hvm_gsi_has_callbacks(const struct domain *d, unsigned int gsi)
> +{
> +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
> +    bool has_callbacks;
> +
> +    read_lock(&hvm_irq->gsi_callbacks_lock);
> +    has_callbacks = !list_empty(&hvm_irq->gsi_callbacks[gsi]);
> +    read_unlock(&hvm_irq->gsi_callbacks_lock);
> +
> +    return has_callbacks;
> +}

What use is this function? Its result is stale by the time the
caller can look at it, as you've dropped the lock.

> @@ -421,13 +423,25 @@ static void eoi_callback(unsigned int vector, void *data)
>              if ( is_iommu_enabled(d) )
>              {
>                  spin_unlock(&d->arch.hvm.irq_lock);
> -                hvm_dpci_eoi(vioapic->base_gsi + pin);
> +                hvm_dpci_eoi(gsi);
>                  spin_lock(&d->arch.hvm.irq_lock);
>              }
>  
> +            /*
> +             * Callbacks don't expect to be executed with any lock held, so
> +             * drop the lock that protects the vIO-APIC fields from changing.
> +             *
> +             * Note that the redirection entry itself cannot go away, so upon
> +             * retaking the lock we only need to avoid making assumptions on
> +             * redirection entry field values (ie: recheck the IRR field).
> +             */
> +            spin_unlock(&d->arch.hvm.irq_lock);
> +            hvm_gsi_execute_callbacks(gsi);
> +            spin_lock(&d->arch.hvm.irq_lock);

The two pairs of unlock / re-lock want folding, I think - there's
no point causing extra contention on the lock here.

> @@ -443,7 +457,8 @@ static void ioapic_inj_irq(
>      struct vlapic *target,
>      uint8_t vector,
>      uint8_t trig_mode,
> -    uint8_t delivery_mode)
> +    uint8_t delivery_mode,
> +    bool callback)
>  {
>      HVM_DBG_LOG(DBG_LEVEL_IOAPIC, "irq %d trig %d deliv %d",
>                  vector, trig_mode, delivery_mode);
> @@ -452,7 +467,7 @@ static void ioapic_inj_irq(
>             (delivery_mode == dest_LowestPrio));
>  
>      vlapic_set_irq_callback(target, vector, trig_mode,
> -                            trig_mode ? eoi_callback : NULL, NULL);
> +                            callback ? eoi_callback : NULL, NULL);

I think you'd better use trig_mode || callback here and ...

> @@ -466,6 +481,7 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
>      struct vlapic *target;
>      struct vcpu *v;
>      unsigned int irq = vioapic->base_gsi + pin;
> +    bool callback = trig_mode || hvm_gsi_has_callbacks(d, irq);
>  
>      ASSERT(spin_is_locked(&d->arch.hvm.irq_lock));
>  
> @@ -492,7 +508,8 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
>              target = vlapic_lowest_prio(d, NULL, 0, dest, dest_mode);
>          if ( target != NULL )
>          {
> -            ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode);
> +            ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode,
> +                           callback);

... invoke hvm_gsi_has_callbacks() right here and ...

> @@ -507,7 +524,7 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
>          for_each_vcpu ( d, v )
>              if ( vlapic_match_dest(vcpu_vlapic(v), NULL, 0, dest, dest_mode) )
>                  ioapic_inj_irq(vioapic, vcpu_vlapic(v), vector, trig_mode,
> -                               delivery_mode);
> +                               delivery_mode, callback);

... here, avoiding to call the function when you don't need the
result.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:54:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:54:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106789.204189 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUAW4-00005o-Oz; Wed, 07 Apr 2021 15:54:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106789.204189; Wed, 07 Apr 2021 15:54: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 1lUAW4-00005h-K0; Wed, 07 Apr 2021 15:54:52 +0000
Received: by outflank-mailman (input) for mailman id 106789;
 Wed, 07 Apr 2021 15:54:51 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fjXx=JE=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUAW2-00005c-W5
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:54:51 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a72bc8cd-ce91-4ed9-b9b7-e7e37118cf76;
 Wed, 07 Apr 2021 15:54:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 75AB4B166;
 Wed,  7 Apr 2021 15:54: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: a72bc8cd-ce91-4ed9-b9b7-e7e37118cf76
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617810889; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=yiqCoEVimYSRXkNwTYt79fhQeMotr+3iW4qaWc8UQGw=;
	b=a68UZ29GOmAQqZAsSzXJodxdIONuZS1BSzI6nrDRGzmCrdPFVankQiX+S4vmqzKhfLB8u2
	KaG2AgPfDe3DMziYrAdLCwwU34QH62+t8dgfB0277it9/joYmrN2N/Z0n8SoYQdBDRtOju
	XC1NTvrrDgCQxpUYTvXU9VMobU8lKwg=
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Luca Fancellu <Luca.Fancellu@arm.com>, Julien Grall <julien@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Chen <Wei.Chen@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Ian Jackson <iwj@xenproject.org>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
 <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
 <24685.52599.234444.705703@mariner.uk.xensource.com>
 <03084EF9-F130-41F7-9D8D-9AF86A87717F@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <47b84686-faac-cfc4-44ae-d6f844bc7d0a@suse.com>
Date: Wed, 7 Apr 2021 17:54:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <03084EF9-F130-41F7-9D8D-9AF86A87717F@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 07.04.2021 17:29, Bertrand Marquis wrote:
>> On 7 Apr 2021, at 16:19, Ian Jackson <iwj@xenproject.org> wrote:
>>
>> Luca Fancellu writes ("Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h"):
>>> The problem is that Doxygen can’t generate proper documentation for anonymous union/structure, it ends up with warning and/or producing wrong documentation like
>>> changing names or giving field description to the wrong field.
>>
>> This does not seem like it would be an impossibly hard feature to add
>> to doxygen.
> 
> Modifying doxygen is not really in our planned efforts and if someone does it that would put an hard constraint on the version of doxygen possible to use.
> 
> But is adding names to anonymous elements really an issue here ?

It's clutter in the code base, making things harder to read (even if
just slightly). It's certainly odd to make such source changes just
for a doc tool. If changing doxygen is not an option for you, how
about pre-processing the header and inserting the names the tool
wants, before handing the result as input to it?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 15:55:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 15:55:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106793.204201 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUAWf-0000Bf-0J; Wed, 07 Apr 2021 15:55:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106793.204201; Wed, 07 Apr 2021 15: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 1lUAWe-0000BX-Sw; Wed, 07 Apr 2021 15:55:28 +0000
Received: by outflank-mailman (input) for mailman id 106793;
 Wed, 07 Apr 2021 15:55: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 1lUAWe-0000BO-37
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 15:55: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 1lUAWb-0008Un-BJ; Wed, 07 Apr 2021 15:55:25 +0000
Received: from 54-240-197-225.amazon.com ([54.240.197.225]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUAWb-0000aj-3r; Wed, 07 Apr 2021 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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=v1EL2+3sU0wYwV63cEBljCYu2ynKJSEziF1oHO4zG94=; b=OuewV97H8KEWFCTPMSNATgpwZm
	FF3b21u+5sIycNwlulB0VdOki/45gSVmj3+BiUnNSGJuSiYjeB48xfI8mmbOD6rBrWLB/VkeLXafe
	W/qXsaptgtYqblwRiLwiLYop4fs0YubqbaJJDU2ytJXm/K+vVxV3JtV8pBmONYzicdPE=;
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Ian Jackson <iwj@xenproject.org>
Cc: Luca Fancellu <Luca.Fancellu@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Chen <Wei.Chen@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: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
 <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
 <24685.52599.234444.705703@mariner.uk.xensource.com>
 <03084EF9-F130-41F7-9D8D-9AF86A87717F@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <8b0fafe2-989e-5a5a-05ec-f55e096e4b54@xen.org>
Date: Wed, 7 Apr 2021 16:55:22 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <03084EF9-F130-41F7-9D8D-9AF86A87717F@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 07/04/2021 16:29, Bertrand Marquis wrote:
> Hi Ian,
> 
>> On 7 Apr 2021, at 16:19, Ian Jackson <iwj@xenproject.org> wrote:
>>
>> Luca Fancellu writes ("Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h"):
>>> The problem is that Doxygen can’t generate proper documentation for anonymous union/structure, it ends up with warning and/or producing wrong documentation like
>>> changing names or giving field description to the wrong field.
>>
>> This does not seem like it would be an impossibly hard feature to add
>> to doxygen.
> 
> Modifying doxygen is not really in our planned efforts and if someone does it that would put an hard constraint on the version of doxygen possible to use.

Are you saying that anyone who want to use doxygen has to waive off the 
use of anonymous union/struct? Is it the only thing doxygen can't deal with?

> But is adding names to anonymous elements really an issue here ?
> If we agree on names or on a convention for name the result will not impact the code or backward compatibility.

I think the naming is only the tip of the problem. One advantage of 
anymous union/struct is you make clear they are not meant to be used 
outside of the context. So they should mostly be seen as an easy way to 
access some part of the "parent" structure directly. Therefore, IMHO, 
they don't deserve to be documented separately.

In fact, this is the first thing I noticed when building the 
documentation because 'union a' was in global index.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 16:06:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 16:06:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106805.204213 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUAhB-0001kb-4J; Wed, 07 Apr 2021 16:06:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106805.204213; Wed, 07 Apr 2021 16:06: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 1lUAhB-0001kU-17; Wed, 07 Apr 2021 16:06:21 +0000
Received: by outflank-mailman (input) for mailman id 106805;
 Wed, 07 Apr 2021 16:06:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IknL=JE=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lUAh9-0001kP-NB
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 16:06:19 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.85]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fa955036-e246-4763-930d-2fb88c3abbc0;
 Wed, 07 Apr 2021 16:06:18 +0000 (UTC)
Received: from AM3PR04CA0128.eurprd04.prod.outlook.com (2603:10a6:207::12) by
 AM6PR08MB3000.eurprd08.prod.outlook.com (2603:10a6:209:43::22) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.26; Wed, 7 Apr 2021 16:06:15 +0000
Received: from AM5EUR03FT011.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:207:0:cafe::72) by AM3PR04CA0128.outlook.office365.com
 (2603:10a6:207::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 16:06:15 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT011.mail.protection.outlook.com (10.152.16.152) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 16:06:15 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Wed, 07 Apr 2021 16:06:14 +0000
Received: from 1de273d857ba.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7C2EE12D-3C85-44BF-B9C3-C2E63318A12C.1; 
 Wed, 07 Apr 2021 16:06:08 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1de273d857ba.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 16:06:08 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB4045.eurprd08.prod.outlook.com (2603:10a6:803:dd::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Wed, 7 Apr
 2021 16:06:06 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 16:06:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa955036-e246-4763-930d-2fb88c3abbc0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Jlk+T9rRcT6ZGDUSxCupr6DRZJAHHK+sRj+4q1WIIns=;
 b=O3LWUXv6p8VJ6xqY/TxYO835gQG0ZKb+LkWFK8bKOE5pZe1VD9q6wUwUf+xx4R+T/k9BCHR9lWeqHBli7qFr1NIzLzr60lwl8ubY6W9t3ELXN0+qPJGY9ONFeMgliNzYcMagnMy0/pKkhdCSZjOHduzEOoLZDKdyFPiOQwDfE4s=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 641010b1613f92c5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A6Tz24zppQVeMLXDwMTg2loB7QuyA9YxJpFdCXHgcQSEuyOnFHP4YIQ4ujptUSh/wHuJYPBbH9ri8TxWy72wQpfAxJIyYo3WkovVAfvY3m06a3pFkIul0WFzUQBZGIkLFp3N2IcDCeDoEON01JYcrdg7uQZGFtpqKV1IsbAIj2snviXdwwWKDrTojhbSZi+xOo8hSwH8KiWpTrIjzyMi0gKnb1fcoX6UJuYfCAP7ABRfOqtCjf4nK8Qb/se0zyhfp+s5gnKJNu13G+K5RlG12MO/frHogJtjIlCOxlQ0lvxBUnxyJGEoTAXGXwRukquk2IokYyZ/oAX8gisd6yhyVg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Jlk+T9rRcT6ZGDUSxCupr6DRZJAHHK+sRj+4q1WIIns=;
 b=oBUOo2GGVyKjR3QDqNKX9aVAheVCueI0VjKXOO+szkIwzbgETJnpo25owDplH+x591KoXcaQXQP7Szcesm4CJ8nnkMfCtOZUbenFZ2p0Ik/f7RsYnuDjxRGfMOxtbWFSOmqxNOhnEo3fn9g+YDMqhR3CXJ6WDcLvb+eN/ILK3eNXJ+if2q26lj2fAZsSM1N+nWVba9HporFAcaThCEqlpiQmouzy+8VDBcUXZNSLNo3ix0xpDO+9eWTLYECBF2yZLd5Gr5YIjzbsm+bv/vGxAsmwBKSXJw+w446e0kQg4tjze09qzi9OA1VlIesWu2mbfM8sw1ko25bgkzKME5JeMw==
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=Jlk+T9rRcT6ZGDUSxCupr6DRZJAHHK+sRj+4q1WIIns=;
 b=O3LWUXv6p8VJ6xqY/TxYO835gQG0ZKb+LkWFK8bKOE5pZe1VD9q6wUwUf+xx4R+T/k9BCHR9lWeqHBli7qFr1NIzLzr60lwl8ubY6W9t3ELXN0+qPJGY9ONFeMgliNzYcMagnMy0/pKkhdCSZjOHduzEOoLZDKdyFPiOQwDfE4s=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Ian Jackson <iwj@xenproject.org>, Luca Fancellu <Luca.Fancellu@arm.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Wei Chen
	<Wei.Chen@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 3/3] docs/doxygen: doxygen documentation for grant_table.h
Thread-Topic: [PATCH 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
Thread-Index:
 AQHXKtDW6d1uIaHDNEirYTRFGCHHX6qpCgoAgAABvgCAACFYgIAAAteAgAAHPACAAAL+gA==
Date: Wed, 7 Apr 2021 16:06:05 +0000
Message-ID: <9B8BD2C5-297C-4BE3-8476-5D10699712E2@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
 <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
 <24685.52599.234444.705703@mariner.uk.xensource.com>
 <03084EF9-F130-41F7-9D8D-9AF86A87717F@arm.com>
 <8b0fafe2-989e-5a5a-05ec-f55e096e4b54@xen.org>
In-Reply-To: <8b0fafe2-989e-5a5a-05ec-f55e096e4b54@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.3654.60.0.2.21)
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [212.20.154.75]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 76fe772b-a4ed-47d0-765a-08d8f9df1258
x-ms-traffictypediagnostic: VI1PR08MB4045:|AM6PR08MB3000:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM6PR08MB3000D51F10417FD5AC28C3AC9D759@AM6PR08MB3000.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 3YIR9u7goQAM3s5fRM4wfapHDyH2/57c1B0A6LdMCrA2YvTgSXt5gQC0XxOCM/4NA3W1FuzwKqAnvFYjS9K1au9mIdjJHR2Hn90J2ld30mSbl5ezD/ps23Pnwt4MV3sClo/lQC5EU6tw5Uy+9dK6wajw/YOiZmnJnbmubWJZcy3FHyq1LWaRIx5DqeGPW8Y1fux+17kqYp/PlXAi24ZtBDvcCsJe78WfSPbWus6Uik5inKc3P+HzKVWV4iQBP6yjcCW6ZqySCiphj10s4aHvgMswu3Xjpt2GedDyqaL04Qj7n9eMHy5CC3jCFfxe4cdte7zzqX6KiqxPp9Cq5pDF3OKNRODLrJuczMu+zagx3c3uVsiJaCs9E7LllQCkl5IjiYpHBsay1e8WineHEQbTQcWM+oa/obyD45iMaB2hC1qoTQD8hG/yZeYBfHuzdzMv4xcicQrcPiO25YIX4frDXrE8bYk7o5GJv5BuUK7n6InyXkqn2SglzU5HHbY8SSPj2nVABS9wdRizZDUS8mvwNpeSkuVvE9aeM75RGyeykWyPRSeDY8sqAjB6/bQvgeMj6Kz8H+U9m99uX6guZMQgxvgPttu0EGrio3mKlQmqhZCu9LtaxS77oqcTv6KqB0k1dlRUYvODaJ14RXh+E3USVM7JL4/TDN24AIAzUc2wH2Y0Zw3tqxw0Qz6M/GlBx+Ml
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(346002)(396003)(376002)(39860400002)(136003)(2616005)(33656002)(4326008)(83380400001)(8936002)(36756003)(86362001)(6486002)(54906003)(316002)(478600001)(76116006)(91956017)(5660300002)(6916009)(66946007)(71200400001)(8676002)(6506007)(53546011)(186003)(38100700001)(6512007)(66476007)(26005)(2906002)(66446008)(64756008)(66556008)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
 =?utf-8?Q?3kAiCTVWATU7zw2ns/50zRv8Ro/2hO939cY+FQ9?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <B78620BC60D1BC4A87E7BBF97CFCF9C6@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4045
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT011.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	564dd829-354f-497f-01f3-08d8f9df0cad
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EYJv+O9bqviGyekhjtmBm5nNJlNU5QqhToJ87NQW6pTagRatGeeYlJRthuRI9oVd7osedPBknO2+caN3PqNn7fn0kDTLI00pINK3xUxiFrN9G7/NrTwj3bniDv8DNqbHq3mOFD7SI+BgAliZy0FgHtR6ZKun5e8GbPfYOe5lecrYo0YQsHUOK1cCktyXIKQXVeVZ4q+oGRCTjwkmYV0mEFf+6sIcw8o+QnQT4VXYBfpLeVau9GvkqYD02J7i6unHyIvvZ0VlCwCJnbLXWlVmuLkafrCW3WxoShBrgtsJRjy0POYMvWmjS2wFB/j6hxxb+dPMaSgPrgkRpERIqbZ9svWWRciEqpEhK7qnCR8lkLHhrMoZZ3NgajDUuNPWNR57M4xloXAKNZB4VzEIZs7xeJa19Fu5jUvN4A2XuXO5yv6WlJeejklBn3nGRKiIOUMxgR63v1n5dnG/A/snY4M1YfLBPj/Xz6ku9IjAnTrF9HMob/69d0Pdom2wngSG5eEpul89mxMuKxHx3I725z2yRDmtdG2MpLDP6P1+h1mxHNvK9i5yD+GCsfB0F8MNSvR3d4+flU9/u6Cd94Hnx02ZVsk0wPyd7N2LMthjimCdCp/lPpk49baTlOFgvZLX0YZCpcTb4RHyuWymEWuGdQvBLYyDfZ4tuAFv1eVyRhjEziM=
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:(4636009)(136003)(396003)(376002)(346002)(39860400002)(46966006)(36840700001)(478600001)(53546011)(36756003)(83380400001)(4326008)(82740400003)(33656002)(47076005)(6512007)(26005)(336012)(81166007)(5660300002)(186003)(356005)(70586007)(2616005)(316002)(8936002)(8676002)(82310400003)(70206006)(6862004)(6486002)(6506007)(2906002)(86362001)(54906003)(36860700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 16:06:15.3166
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 76fe772b-a4ed-47d0-765a-08d8f9df1258
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:
	AM5EUR03FT011.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3000

SGkgSnVsaWVuLA0KDQo+IE9uIDcgQXByIDIwMjEsIGF0IDE2OjU1LCBKdWxpZW4gR3JhbGwgPGp1
bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4gDQo+IA0KPiANCj4gT24gMDcvMDQvMjAyMSAxNjoyOSwg
QmVydHJhbmQgTWFycXVpcyB3cm90ZToNCj4+IEhpIElhbiwNCj4+PiBPbiA3IEFwciAyMDIxLCBh
dCAxNjoxOSwgSWFuIEphY2tzb24gPGl3akB4ZW5wcm9qZWN0Lm9yZz4gd3JvdGU6DQo+Pj4gDQo+
Pj4gTHVjYSBGYW5jZWxsdSB3cml0ZXMgKCJSZTogW1BBVENIIDMvM10gZG9jcy9kb3h5Z2VuOiBk
b3h5Z2VuIGRvY3VtZW50YXRpb24gZm9yIGdyYW50X3RhYmxlLmgiKToNCj4+Pj4gVGhlIHByb2Js
ZW0gaXMgdGhhdCBEb3h5Z2VuIGNhbuKAmXQgZ2VuZXJhdGUgcHJvcGVyIGRvY3VtZW50YXRpb24g
Zm9yIGFub255bW91cyB1bmlvbi9zdHJ1Y3R1cmUsIGl0IGVuZHMgdXAgd2l0aCB3YXJuaW5nIGFu
ZC9vciBwcm9kdWNpbmcgd3JvbmcgZG9jdW1lbnRhdGlvbiBsaWtlDQo+Pj4+IGNoYW5naW5nIG5h
bWVzIG9yIGdpdmluZyBmaWVsZCBkZXNjcmlwdGlvbiB0byB0aGUgd3JvbmcgZmllbGQuDQo+Pj4g
DQo+Pj4gVGhpcyBkb2VzIG5vdCBzZWVtIGxpa2UgaXQgd291bGQgYmUgYW4gaW1wb3NzaWJseSBo
YXJkIGZlYXR1cmUgdG8gYWRkDQo+Pj4gdG8gZG94eWdlbi4NCj4+IE1vZGlmeWluZyBkb3h5Z2Vu
IGlzIG5vdCByZWFsbHkgaW4gb3VyIHBsYW5uZWQgZWZmb3J0cyBhbmQgaWYgc29tZW9uZSBkb2Vz
IGl0IHRoYXQgd291bGQgcHV0IGFuIGhhcmQgY29uc3RyYWludCBvbiB0aGUgdmVyc2lvbiBvZiBk
b3h5Z2VuIHBvc3NpYmxlIHRvIHVzZS4NCj4gDQo+IEFyZSB5b3Ugc2F5aW5nIHRoYXQgYW55b25l
IHdobyB3YW50IHRvIHVzZSBkb3h5Z2VuIGhhcyB0byB3YWl2ZSBvZmYgdGhlIHVzZSBvZiBhbm9u
eW1vdXMgdW5pb24vc3RydWN0PyBJcyBpdCB0aGUgb25seSB0aGluZyBkb3h5Z2VuIGNhbid0IGRl
YWwgd2l0aD8NCg0KVGhhdCBpcyB0aGUgbWFpbiBvbmUgd2UgY2FtZSBpbnRvIHdoaWxlIGRvaW5n
IHRoaXMgYnV0IHRoZXJlIG1pZ2h0IGJlIG90aGVyIGdvaW5nIGZvcndhcmQsIGhhcmQgdG8gYmUg
c3VyZSBhdCB0aGlzIHN0YWdlLg0KDQo+IA0KPj4gQnV0IGlzIGFkZGluZyBuYW1lcyB0byBhbm9u
eW1vdXMgZWxlbWVudHMgcmVhbGx5IGFuIGlzc3VlIGhlcmUgPw0KPj4gSWYgd2UgYWdyZWUgb24g
bmFtZXMgb3Igb24gYSBjb252ZW50aW9uIGZvciBuYW1lIHRoZSByZXN1bHQgd2lsbCBub3QgaW1w
YWN0IHRoZSBjb2RlIG9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuDQo+IA0KPiBJIHRoaW5rIHRo
ZSBuYW1pbmcgaXMgb25seSB0aGUgdGlwIG9mIHRoZSBwcm9ibGVtLiBPbmUgYWR2YW50YWdlIG9m
IGFueW1vdXMgdW5pb24vc3RydWN0IGlzIHlvdSBtYWtlIGNsZWFyIHRoZXkgYXJlIG5vdCBtZWFu
dCB0byBiZSB1c2VkIG91dHNpZGUgb2YgdGhlIGNvbnRleHQuIFNvIHRoZXkgc2hvdWxkIG1vc3Rs
eSBiZSBzZWVuIGFzIGFuIGVhc3kgd2F5IHRvIGFjY2VzcyBzb21lIHBhcnQgb2YgdGhlICJwYXJl
bnQiIHN0cnVjdHVyZSBkaXJlY3RseS4gVGhlcmVmb3JlLCBJTUhPLCB0aGV5IGRvbid0IGRlc2Vy
dmUgdG8gYmUgZG9jdW1lbnRlZCBzZXBhcmF0ZWx5Lg0KDQpTb21laG93IGluIHRoZSBkb2N1bWVu
dGF0aW9uIHdoZW4geW91IGhhdmUgYSB1bmlvbiB5b3Ugd2lsbCBuZWVkIHRvIGRvY3VtZW50IHRo
YXQgaXQgaXMgYSB1bmlvbiBhbmQgdGhlIHBvc3NpYmxlIGVudHJpZXMuDQpIYXZpbmcgYSBuYW1l
IHRvIHJlZmVyIHRvIGl0IHNvdW5kcyB0byBtZSBhIGxvdCBlYXNpZXIgdGhhbiBtYWtpbmcgaXQg
YW5vbnltb3VzLg0KDQpPbmUgd2F5IG9yIGFuIG90aGVyIG1vc3Qgc3RhbmRhcmRzIGxpa2UgTUlT
UkEgYXJlIGZvcmJpZGRpbmcgYW5vbnltb3VzIGVudHJpZXMgYXMgdGhleSBjYW5ub3QgYmUgcmVm
ZXJyZWQgdG8uDQoNCj4gDQo+IEluIGZhY3QsIHRoaXMgaXMgdGhlIGZpcnN0IHRoaW5nIEkgbm90
aWNlZCB3aGVuIGJ1aWxkaW5nIHRoZSBkb2N1bWVudGF0aW9uIGJlY2F1c2UgJ3VuaW9uIGEnIHdh
cyBpbiBnbG9iYWwgaW5kZXguDQoNCkRlZmluaXRlbHkgSSBhZ3JlZSB0aGUg4oCcYeKAnSBpcyBu
b3QgYSBnb29kIHNvbHV0aW9uIGFuZCB3ZSBuZWVkIHRvIGZpbmQgbWVhbmluZ2Z1bCBuYW1lcy4N
CkJ1dCB0aGlzIGlzIGluIGZhY3QgdHJ1ZSBmb3IgdGhlIHN1Yi1lbGVtZW50IGluIHRoZSBzdHJ1
Y3R1cmUgKGZyb20gd2hpY2ggdGhlIG5hbWUgd2FzIHRha2VuKSwgdXNpbmcg4oCcYeKAnSBhcyBh
biBpZGVudGlmaWVyIGlzIG5vdCByZWFsbHkgZXhwbGFuYXRvcnkgb2Ygd2hhdCB0aGF0IGlzLg0K
4oCcdeKAnSBmb3IgdW5pb24gY2FuIGJlIHNlZSBhcyBhIHN0YW5kYXJkIHRob3VnaC4NCg0KVGhp
cyBpcyB3aHkgaSB0aGluayB3ZSBzaG91bGQgcHV0IG5hbWVzIHdoaWNoIGEgbWVhbmluZyBidXQg
dGhpcyBpcyBub3QgYWx3YXlzIGVhc3kgdG8gZmluZC4NCg0KQ2hlZXJzDQpCZXJ0cmFuZA0KDQo+
IA0KPiBDaGVlcnMsDQo+IA0KPiAtLSANCj4gSnVsaWVuIEdyYWxsDQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 16:08:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 16:08:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106809.204224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUAiq-0001rZ-GR; Wed, 07 Apr 2021 16:08:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106809.204224; Wed, 07 Apr 2021 16:08: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 1lUAiq-0001rS-DT; Wed, 07 Apr 2021 16:08:04 +0000
Received: by outflank-mailman (input) for mailman id 106809;
 Wed, 07 Apr 2021 16:08:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IknL=JE=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lUAio-0001rL-Rg
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 16:08:02 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (unknown
 [40.107.6.47]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b4f05e9a-e512-4e89-92fa-47e48650d165;
 Wed, 07 Apr 2021 16:08:01 +0000 (UTC)
Received: from AM6P194CA0102.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:8f::43)
 by PA4PR08MB6288.eurprd08.prod.outlook.com (2603:10a6:102:f3::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Wed, 7 Apr
 2021 16:07:50 +0000
Received: from VE1EUR03FT018.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8f:cafe::3d) by AM6P194CA0102.outlook.office365.com
 (2603:10a6:209:8f::43) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 16:07:50 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT018.mail.protection.outlook.com (10.152.18.135) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 16:07:50 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Wed, 07 Apr 2021 16:07:49 +0000
Received: from 5ca2be969a24.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 AAE88B4D-9723-4EFD-98A1-50BA18D99236.1; 
 Wed, 07 Apr 2021 16:07:43 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5ca2be969a24.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 16:07:43 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VE1PR08MB5662.eurprd08.prod.outlook.com (2603:10a6:800:1a9::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Wed, 7 Apr
 2021 16:07:41 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 16:07: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: b4f05e9a-e512-4e89-92fa-47e48650d165
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=amgov6jNIxbtMFAnjEVxzR9nnPjqcmUb+nfviCse9VM=;
 b=RvYGhmepHaWozzoMwZU1wVDG+GTw7UR6AteC6thKGb5bZ4zFIPDinAYg9o4gpPyyO5rpjoVvLTS4/koZGo9z9EnsXis+iFRY+Ezrk+Mip7Twum2HEFGfMTRXmxUNLPl8fcjFZje6cIrBNh9/dtiFL0NFZ9InAUL95vD/6FwCuXg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: ace30db08d4518b5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h0zoPeOcJ5xnTLYGNXblnSC/jv1YrZjeQa6PQeNVmD8t5fOqams3WfBWYxk/6B0oUVEK+p/btg2hHyB0ri3NaiX8s6eweFYf/1MlZ1SAzG7RkZ1Q1iTl55/PcptFNyJHUqUj5LGE39Woj+gVwPm6CirvlvzFQ1f4lpo4tGMzVelbwySPi3YK6t3b6oJ79+5uzo4AH9znQSsFhWLUhA8A4QL0SeMOoopAxTNy8zBGZTpI+wAE9kEkHXPVXCd2TCRIH/hmerniYhdwcLWUpFzaZgXWuZSrUdU+BHWfrD3NGvHQGnpaq5P7sibUb3S0g0NTG5cipJs9095la7//gJeIlA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=amgov6jNIxbtMFAnjEVxzR9nnPjqcmUb+nfviCse9VM=;
 b=JoWHKH94Vw8/18C76+QpBR1rMpT+pyA/Z69CMvQC+dgi8Z5zACDoYcpOa0RUNy6OgXrvONqB0/TvohCxm2H/vuswiXpGyNt6phh1J5SzAPfgVD0WCesd5zp9DqfU0255oDF7nhuzRpajeKIKS6wzB3YmtyNHxfzGsu3/PSZiPOOR2MICEDhgDa4XWnBu/6SPmjzKUAK2eSgy5bzq58CSX+27gLFvU1U0Ns/PNPA4k690drPkA+oVZEwdd1tV2vEOO767jbBWCNiYntj3HodiQ6gue/FiTmE4thjhJZ8dECXM9Vdlhfs5cnR3uEXFJ9SUPCapg5TeB+tQApsomX+OzQ==
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=amgov6jNIxbtMFAnjEVxzR9nnPjqcmUb+nfviCse9VM=;
 b=RvYGhmepHaWozzoMwZU1wVDG+GTw7UR6AteC6thKGb5bZ4zFIPDinAYg9o4gpPyyO5rpjoVvLTS4/koZGo9z9EnsXis+iFRY+Ezrk+Mip7Twum2HEFGfMTRXmxUNLPl8fcjFZje6cIrBNh9/dtiFL0NFZ9InAUL95vD/6FwCuXg=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Luca Fancellu <Luca.Fancellu@arm.com>, Julien Grall <julien@xen.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Wei Chen
	<Wei.Chen@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Stefano Stabellini <sstabellini@kernel.org>, Wei
 Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
Thread-Topic: [PATCH 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
Thread-Index:
 AQHXKtDW6d1uIaHDNEirYTRFGCHHX6qpCgoAgAABvgCAACFYgIAAAteAgAAHEwCAAAOYAA==
Date: Wed, 7 Apr 2021 16:07:41 +0000
Message-ID: <EAF4C93B-F35C-42DA-9AE2-4F1B8D238B25@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
 <0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
 <24685.52599.234444.705703@mariner.uk.xensource.com>
 <03084EF9-F130-41F7-9D8D-9AF86A87717F@arm.com>
 <47b84686-faac-cfc4-44ae-d6f844bc7d0a@suse.com>
In-Reply-To: <47b84686-faac-cfc4-44ae-d6f844bc7d0a@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.3654.60.0.2.21)
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [212.20.154.75]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: b275db5f-d008-4249-7ffd-08d8f9df4af6
x-ms-traffictypediagnostic: VE1PR08MB5662:|PA4PR08MB6288:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<PA4PR08MB628806448925C02D58E0F57B9D759@PA4PR08MB6288.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 hTLxhTBRich27T/zg5y674bM8ENYgm49rwmCd2ndV/YiYMR9APFVNdT6NdPQr7O3KHTBNlsZX+cBRpo+X/vskZo1/tmc8nyjfFFzPKB//TH0opkldNth2Qyph314osgXYFP0xUcUZhW84mHFAeX/1MHqox0yTifJbmYKGBE9abAVdRxt/rR5aWsFjsBOLxOMNknNuVb9eFKPDzd4/K3xj9SIxggMSz1RYZcrlM0ncvRaX63Wj7I2ge/X9i2wUVPuQeSLyck70DBG2N23j1MKTyMSu9Fzb8/nxIxZzcWiNxyKT35mGdyW2q77tMYZddayYN9mn8LEV24xhRSl432RUQjziyLM+hXqHwehRW8fCRRWjOueTUSOxfYFHjxFrwkEN7XbOgMs8uUDKs93IN3qI8Ml/Yz1hwMWjQ5+Xk0NanWldBhYOBwi25c1LZ3v/9qaKv6//SmatBTKPTIR2933UT2XImLt5b6VML18Wc3isUTqy0BGsMRj8mkKJj7Lokr4OY1CtYXmccK6P9wlY59Ci2UtGVTFgBUpMWtJ1QrFXShgYBs/4DCmpU+KHDM5U8Rr/lElB1VQbMBrtH9WUOAhbV7f+FQsDOYNJQiwIbnpHF38upxMA0A5JzCwAhwH01tuzw+n3r0qBVT/XjTzTkAirtYyKMGqP67FenfhMg5FB/anJF2qfveGos81WvYBps1C
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(39860400002)(346002)(366004)(396003)(6916009)(54906003)(5660300002)(6486002)(2906002)(38100700001)(316002)(478600001)(64756008)(33656002)(66476007)(66446008)(66556008)(66946007)(91956017)(76116006)(2616005)(26005)(186003)(8676002)(86362001)(71200400001)(36756003)(6506007)(53546011)(83380400001)(6512007)(4326008)(8936002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <0C301CCDA199024EAFEAEF32CD2E5EFF@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5662
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT018.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	21f3a5bb-53e5-47a2-5f6c-08d8f9df45ce
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lZh4vEr//PW7xGnaHgcx2qbBhAP8mAihAiQgucbtNBWAvcE7yTwZy2wl0ojI8LJHsll97bPHyrL8qdB29wQf7bTfESPrffqZm6nThBWej3Dzm4b88fIuKAGra59tOzbqvmbW8PfKBJMwpCJFqwgDlFxNSpM4HK+v4phArnE6LbRFtcVntkeYwtN/ui5KjO3fspb/7o1OZv1rJU1vY2girAy8FNvBTsgzjUlNWQQDdF9+7edBfEmeDx/0d0CEyT3bj2noa4J4ki8lXLTn4d3vEOJESZyHY601d0TUKpIezzNEgfRYDkK0X5v7aio5squiJUK0kgJE4sTnqU6/+a7F+mItH5Bnd+zzRE4XvAECVhla+rubIlMaepPQ0xD5S9t4KkbMdmOR8w4LchrWa7rX86otMRXWcwCsFfvfuHwNkiOv7k0EwwbC/B73NYjrKOJmuzyaoeDxXrpDGOhs7nu+T2EMxzGEij6inNrZvCGbgVvPmvdJbx9qAWNGTIOS1cMugXjh7hQUVQCJ0JYw3c6o4W7B91kLThqaArIoRZkzsOKj/znV/JixZ4Aej+AqNbayJz/0tI/ngpwZ3E88JC4UCsVp+gm9FpDcOAAl6cVAvlyvans5oYXbPWWjCltuIa65ldt0IQZhaVW+e0tnZ/Q4r4krBcVsLRDXvH4HVbMl39g=
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:(4636009)(136003)(39860400002)(346002)(396003)(376002)(36840700001)(46966006)(36756003)(2906002)(8676002)(4326008)(8936002)(336012)(81166007)(316002)(356005)(6512007)(82310400003)(33656002)(70206006)(70586007)(2616005)(36860700001)(26005)(53546011)(54906003)(478600001)(86362001)(5660300002)(6862004)(6486002)(186003)(47076005)(6506007)(83380400001)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 16:07:50.2254
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b275db5f-d008-4249-7ffd-08d8f9df4af6
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:
	VE1EUR03FT018.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6288

SGksDQoNCj4gT24gNyBBcHIgMjAyMSwgYXQgMTY6NTQsIEphbiBCZXVsaWNoIDxqYmV1bGljaEBz
dXNlLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAwNy4wNC4yMDIxIDE3OjI5LCBCZXJ0cmFuZCBNYXJx
dWlzIHdyb3RlOg0KPj4+IE9uIDcgQXByIDIwMjEsIGF0IDE2OjE5LCBJYW4gSmFja3NvbiA8aXdq
QHhlbnByb2plY3Qub3JnPiB3cm90ZToNCj4+PiANCj4+PiBMdWNhIEZhbmNlbGx1IHdyaXRlcyAo
IlJlOiBbUEFUQ0ggMy8zXSBkb2NzL2RveHlnZW46IGRveHlnZW4gZG9jdW1lbnRhdGlvbiBmb3Ig
Z3JhbnRfdGFibGUuaCIpOg0KPj4+PiBUaGUgcHJvYmxlbSBpcyB0aGF0IERveHlnZW4gY2Fu4oCZ
dCBnZW5lcmF0ZSBwcm9wZXIgZG9jdW1lbnRhdGlvbiBmb3IgYW5vbnltb3VzIHVuaW9uL3N0cnVj
dHVyZSwgaXQgZW5kcyB1cCB3aXRoIHdhcm5pbmcgYW5kL29yIHByb2R1Y2luZyB3cm9uZyBkb2N1
bWVudGF0aW9uIGxpa2UNCj4+Pj4gY2hhbmdpbmcgbmFtZXMgb3IgZ2l2aW5nIGZpZWxkIGRlc2Ny
aXB0aW9uIHRvIHRoZSB3cm9uZyBmaWVsZC4NCj4+PiANCj4+PiBUaGlzIGRvZXMgbm90IHNlZW0g
bGlrZSBpdCB3b3VsZCBiZSBhbiBpbXBvc3NpYmx5IGhhcmQgZmVhdHVyZSB0byBhZGQNCj4+PiB0
byBkb3h5Z2VuLg0KPj4gDQo+PiBNb2RpZnlpbmcgZG94eWdlbiBpcyBub3QgcmVhbGx5IGluIG91
ciBwbGFubmVkIGVmZm9ydHMgYW5kIGlmIHNvbWVvbmUgZG9lcyBpdCB0aGF0IHdvdWxkIHB1dCBh
biBoYXJkIGNvbnN0cmFpbnQgb24gdGhlIHZlcnNpb24gb2YgZG94eWdlbiBwb3NzaWJsZSB0byB1
c2UuDQo+PiANCj4+IEJ1dCBpcyBhZGRpbmcgbmFtZXMgdG8gYW5vbnltb3VzIGVsZW1lbnRzIHJl
YWxseSBhbiBpc3N1ZSBoZXJlID8NCj4gDQo+IEl0J3MgY2x1dHRlciBpbiB0aGUgY29kZSBiYXNl
LCBtYWtpbmcgdGhpbmdzIGhhcmRlciB0byByZWFkIChldmVuIGlmDQo+IGp1c3Qgc2xpZ2h0bHkp
LiBJdCdzIGNlcnRhaW5seSBvZGQgdG8gbWFrZSBzdWNoIHNvdXJjZSBjaGFuZ2VzIGp1c3QNCj4g
Zm9yIGEgZG9jIHRvb2wuIElmIGNoYW5naW5nIGRveHlnZW4gaXMgbm90IGFuIG9wdGlvbiBmb3Ig
eW91LCBob3cNCj4gYWJvdXQgcHJlLXByb2Nlc3NpbmcgdGhlIGhlYWRlciBhbmQgaW5zZXJ0aW5n
IHRoZSBuYW1lcyB0aGUgdG9vbA0KPiB3YW50cywgYmVmb3JlIGhhbmRpbmcgdGhlIHJlc3VsdCBh
cyBpbnB1dCB0byBpdD8NCg0KSW50cm9kdWNpbmcgYSBuZXcgdG9vbCBvciBmaW5kIGEgcHJlLXBy
b2Nlc3Npbmcgc29sdXRpb24gaXMgZm9yIHN1cmUgcG9zc2libGUNCmJ1dCB3aWxsIGJlIG1vcmUg
Y29tcGxleCBhbmQgbGVzcyBlcnJvciBwcm9uZS4NCg0KQWxzbyBhcyBzYWlkIGluIG15IG1haWwg
dG8gSnVsaWVuLCBwYXNzaW5nIHRoaXMgaXNzdWUgb2YgYW5vbnltb3VzIGVudHJpZXMgbm93DQpt
aWdodCBqdXN0IHB1c2ggdGhlIHByb2JsZW0gYXMgd2UgbWlnaHQgaGF2ZSB0byBzb2x2ZSBpdCBs
YXRlciBpZiB3ZSB3YW50IHRvIGJlY29tZQ0KTUlTUkEgY29tcGxpYW50ICh3aGljaCBpcyBhbHNv
IHNvbWV0aGluZyB3ZSBhcmUgbG9va2luZyBpbiBGdVNhKS4NCg0KUmVnYXJkcw0KQmVydHJhbmQN
Cg0KPiANCj4gSmFuDQo+IA0KDQo=


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 16:12:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 16:12:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106817.204237 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUAn4-0002n9-6z; Wed, 07 Apr 2021 16:12:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106817.204237; Wed, 07 Apr 2021 16: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 1lUAn4-0002n1-3K; Wed, 07 Apr 2021 16:12:26 +0000
Received: by outflank-mailman (input) for mailman id 106817;
 Wed, 07 Apr 2021 16:12:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUAn3-0002mw-DS
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 16:12:25 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUAn3-0000tt-AO
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 16:12:25 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUAn3-00023u-8V
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 16:12:25 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lUAmx-0005BJ-5B; Wed, 07 Apr 2021 17:12: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=References:In-Reply-To:Subject:Cc:To:Date
	:Message-ID:Content-Transfer-Encoding:Content-Type:MIME-Version:From;
	bh=h/d/PKBiJh1UD5ptvk2ftxxSZVOMD5M19GXLqBilFqY=; b=W1OD5+PhR9ZiRkiFTInF/1yEKg
	IJ+kd8w/+9e9BQscihHZAjSzHzpou/MjXEDs2H35xwX4vzwSYA4qI0lJSLyL2B5hvorcY+BdydIVd
	xn4bQPFP/c4e/G3uMbbkaI1oXsnY+ZZ7K5DE9sbSIvQuigCVYqChjbA4pBKWCnYe83cA=;
From: Ian Jackson <iwj@xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <24685.55778.953134.793523@mariner.uk.xensource.com>
Date: Wed, 7 Apr 2021 17:12:18 +0100
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Julien Grall <julien@xen.org>,
    Luca Fancellu <Luca.Fancellu@arm.com>,
    "xen-devel\@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
    Wei Chen <Wei.Chen@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 3/3] docs/doxygen: doxygen documentation for grant_table.h
In-Reply-To: <9B8BD2C5-297C-4BE3-8476-5D10699712E2@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
	<20210406103603.8530-4-luca.fancellu@arm.com>
	<7f143615-acdf-5a97-5e07-57cab49031d6@xen.org>
	<0F20064C-418C-4A4F-9883-4452A726B038@arm.com>
	<24685.52599.234444.705703@mariner.uk.xensource.com>
	<03084EF9-F130-41F7-9D8D-9AF86A87717F@arm.com>
	<8b0fafe2-989e-5a5a-05ec-f55e096e4b54@xen.org>
	<9B8BD2C5-297C-4BE3-8476-5D10699712E2@arm.com>
X-Mailer: VM 8.2.0b under 24.5.1 (i686-pc-linux-gnu)

Bertrand Marquis writes ("Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h"):
> Somehow in the documentation when you have a union you will need to document that it is a union and the possible entries.

I would expect to find the documentation for an anonymous struct or
union folded into the documentation of the containing structure, just
as it is in the source.

> One way or an other most standards like MISRA are forbidding anonymous entries as they cannot be referred to.

An anonymous union or struct like this is always the type of a single
field in a containing aggegate type.  So if one needs to speak of it,
one can specify the container's type and the field.  So it *can* be
named.

I am assuming we don't have *unused* anonymous structs and unions.

Ian.


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 16:28:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 16:28:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106845.204267 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUB2H-00044D-0l; Wed, 07 Apr 2021 16:28:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106845.204267; Wed, 07 Apr 2021 16:28: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 1lUB2G-000446-TT; Wed, 07 Apr 2021 16:28:08 +0000
Received: by outflank-mailman (input) for mailman id 106845;
 Wed, 07 Apr 2021 16:28:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gkPf=JE=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUB2E-000441-SI
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 16:28:07 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 32811e61-c787-4961-8132-a5e0c366ef54;
 Wed, 07 Apr 2021 16:28: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: 32811e61-c787-4961-8132-a5e0c366ef54
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617812885;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Lg1O6O9hx1+1KvgpmBF/UJHvRUW0T2jLpFvoEv73JCc=;
  b=U4xNhVjO8zfgT87Iws40ddHx1NuNsRpG6txJiW6nbtstTrWVq5TSwbzN
   kcp0m8vgefwlVk0SfAjkIrZNK5aLcdncnLrUfWCDDuUjl6J07EtO7o64M
   aknpwKtq/PObqQpot7atc2rlbJX7+zk4v6jMRBL9egU3edBQtfl5RbFOD
   Y=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 5n03gKApZPmIYFN8e5L2rUMhUpYAK7NazbEDuhPYaKKXRYuRbGMeDfcbZE+dwRCZP+Xag2ElnN
 FuFwk5rvSoCfGzie7BfC6EGtOhrDxfGnG6OTQJgMO0Aas19Px1kh3yRJfkM5BOsAqkiijyHO6b
 yTQVLSjnl3rRCRDBcJGtxL6xNTMTdxhJBQuVVyv/aFxEvcjcqf4vNWbqsr7ZQpNcsLy2Ynzmqx
 DtVkcsj1KEBqH4vjv29jKuGeXCAwfBxalYIeHaUpre0dZ6N7qgQi4Y2yf3gtl2Ync2oDdeYqQ2
 YpY=
X-SBRS: 5.2
X-MesageID: 41091421
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:GQdgT6MeJ/Z4msBcTj6jsMiAIKoaSvp033AA0UdtRRtJNvGJjs
 zGppgm/DLXqBJUYnEvnticJLKNKEm2ybdZ6ZQcVI3MYCDIo22tRbsN0aLHzyf7EyPzss5xvJ
 0QEJRWLN31ARxEgd3h4A++euxA/PC9/KqlhfjTwh5WJGkBBp1I1RtzCQqQDyRNNWt7LKc+fa
 D92uN34xamZHQLfoCaKxA+Loz+juyOrryjTT4qbiRXjTWzsQ==
X-IronPort-AV: E=Sophos;i="5.82,203,1613451600"; 
   d="scan'208";a="41091421"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Q5MDO/qSsvmyUix2jjoML3aUy8s1dhqh21k4CkLtKErR1iknKZz2iGh9Tt9aztdT7H4iCaRNH4PVjy3+nA+O9VAls/nbZGaiSW0NMtE8jYw4JSviTJAesFXFgiHCJKWAsazIuM7uulJoVbHkug4nUQoYuX/weIuRwCgWA7oX3x5/tGyUpMVDcuVBopuXZtKw6WqwuvNFtIriUvAzf9IMcWn1eVyR+53j8ZPnNmULSA9S3bKTcvBjg11rM72jWrSCScDQjswxy16YOzl8IMy5kjIttDJn2yGx/BiKDFsNrO1EbWN0d5hq1/QO6EF7t51u6Ow4OtYLKkBzppJN83rLJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2SgnrrbGxNg8GvtC9yLBXB21bEd7IUu1/IWiIiF3+Pc=;
 b=oVmRukdnlbNGDSa3Oq4letmzH9PL32PiOHDMXMPmMgUMSzUoYH+dZEe/c4vAqGmJ/RKAow6M5Jvd6lEQww9CoCb/qx3u+NkOCfEB2i9OH0dYEdbbkqALA16BM4A2fI5FXS2lSU9LIIIxFknTZLGQooaISgKTnBZT+XD0w1cKx9+MbN61geJuUFNWOIeU76jVl/XcxxJAP1dtsAslB9/N4QGlAQ55jdPED1wJFZ2gh/4d/KE79TNQcZ4HY1ZLNq37hG9soSriGPeQexWIUKcGqEJvXCYKWCf13Rji9PUglOgl6HkXbX/U/C3TneWkjqoedfy/SAmspJGjqzknS6pGwA==
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=2SgnrrbGxNg8GvtC9yLBXB21bEd7IUu1/IWiIiF3+Pc=;
 b=T74R+8bIDaV387SLOmWxYc5453GU6ZYw8niABCpBztLzhuTLa469E64pDbJwVVIAcOmYTltdYwxQrGAKBPefy71uMlitbFmXdhEvC9/csucig6DCPbgQz7pYeafBqcfFIayiSD+B5zA5rdUB7hVxjIyL/KARIACnYRGAEtcQ1FI=
Date: Wed, 7 Apr 2021 18:27: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 v3 03/11] x86/vlapic: introduce an EOI callback mechanism
Message-ID: <YG3djUEiAd9wqQvv@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-4-roger.pau@citrix.com>
 <d18d9e3b-872f-b0cb-aebf-5e55d4433b75@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <d18d9e3b-872f-b0cb-aebf-5e55d4433b75@suse.com>
X-ClientProxiedBy: PR3P193CA0007.EURP193.PROD.OUTLOOK.COM
 (2603:10a6:102:50::12) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c42dff92-4972-433a-bede-08d8f9e21d69
X-MS-TrafficTypeDiagnostic: DM6PR03MB3946:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB3946DC40F3D7E6328D0F390B8F759@DM6PR03MB3946.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: CHiUMWIhu3w8vVHRKiBk4wLxtyyvY2/zRJfqwL9X1abcTHXDbmaF3lAntYB48X1fLNgRuM5XZvTPCAMPVxxw7FtlV3l9d8+F6sz/g5xBGaUKXviDcUiR7ePbcdh0POs0Xd/CLRmD0POPvrRiEThaDYAogVfV/x6F2Td5E4fm979UuKSfSPux6w7DP5W2ivCkBv9czUwA3ssRTQkp6O3bfnHVgKdnXJSTQu3zzUeqEHbB7dzPWPtkgWvr8pK5yJveYM36h59kPKS6V6EhRsuVeRM2qV+a//s2m3cT/x/VMON6k1Bt+8mfsIShb8j3YWK6VzZj+NvKfRVdKkC4j4/DFT/C73xbRpi+8Z+ezqJ1bbkrpi4MqsUKSImY11pE8abqUaBdJibjP/Ans2ROOqkzrlN4RlmoskxinoA+0ThWaBdEbdCiGLK2PUe6L2vC1JrEpcmCtSdV680tHBhTP/AWM2ZlplYSUS6JXFUQJqAainuOsK4Jd+OKFY/2bFpVFHLq2CBgbClbU9O+H129A9ffevGCUeCGdmvI+4TvtDjmP0Yp0KIX4Y8b1MB6iJsFPGkbZWDdkjaomkhVkxkPvdX/0+LBG6YcwImVvccanC2xEQwCg5Es0pD9MQRnu3Pr78qXezBlpS4wTGu1KIl0dYf+iSzNbLQYgUlegKHRtkJrAXY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(366004)(136003)(39860400002)(376002)(396003)(86362001)(4326008)(38100700001)(66556008)(66476007)(53546011)(33716001)(26005)(66946007)(6496006)(956004)(6486002)(5660300002)(9686003)(6916009)(16526019)(186003)(8936002)(478600001)(6666004)(85182001)(8676002)(316002)(54906003)(83380400001)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?4G1nd/qmlKrMzy2q7Kr9GguJyQyz7TYtlBdWeqg?=
X-MS-Exchange-CrossTenant-Network-Message-Id: c42dff92-4972-433a-bede-08d8f9e21d69
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 16:28:02.5325
 (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: Hi4Yzon/TsWjNb5rEE88mrYcjPV8SGE8Phi/MAg6HnrnHGCl9Hn51KhZYlIl+CN7gToJOlLDuPaArWeoVaNOvQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3946
X-OriginatorOrg: citrix.com

On Wed, Apr 07, 2021 at 04:55:43PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:32, Roger Pau Monne wrote:
> > Add a new vlapic_set_irq_callback helper in order to inject a vector
> > and set a callback to be executed when the guest performs the end of
> > interrupt acknowledgment.
> > 
> > Such functionality will be used to migrate the current ad hoc handling
> > done in vlapic_handle_EOI for the vectors that require some logic to
> > be executed when the end of interrupt is performed.
> > 
> > The setter of the callback will be in charge for setting the callback
> > again on resume. That is the reason why vlapic_set_callback is not a
> > static function.
> 
> I'm struggling with your use of "resume" here: Resuming from S3
> doesn't require re-doing anything that's kept in memory, does it?
> So what meaning does the word have here?

Right, I can see the confusion. Resume here means a guest being
migrated or restored, not Xen itself being resumed. Callbacks are not
part of the exported guest state, and hence any emulated device that
requires a callback will have to register it as part of loading the
saved state.

> Apart from this, and with the xzalloc_array() change requested
> by Andrew, this looks good to me.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 16:47:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 16:47:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106852.204281 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUBKf-0005sV-JW; Wed, 07 Apr 2021 16:47:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106852.204281; Wed, 07 Apr 2021 16: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 1lUBKf-0005sO-GM; Wed, 07 Apr 2021 16:47:09 +0000
Received: by outflank-mailman (input) for mailman id 106852;
 Wed, 07 Apr 2021 16:47:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gkPf=JE=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUBKd-0005sI-DU
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 16:47:07 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 974b7d54-a817-46fb-a33a-a1e32bfd94a1;
 Wed, 07 Apr 2021 16:47: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: 974b7d54-a817-46fb-a33a-a1e32bfd94a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617814025;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=w23i8GSsuj4BQov6vS2VilAQeeBQJuwxLnojVwx7HHI=;
  b=emyrIj0gHWy1fDu5Vq7Cjg2Bx79JlbQe7YbNKKHWjxBiPZm9bgnUk2qZ
   fGekg1Jqi6K7enrz1IvXqS6V2Ns95Tq2oxso+7k5G9+uHT6k4llvkfaam
   +/RjarOkyaRB/ZcGDlFuGNezSKSOWYtHhFONmWZ0DOEjtiH7cJX+HKrWL
   U=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: WuFP++YhHZrjqPuBny0ZM7r0gtMY9caWhH16cab2eKwVUHAu5ZarjotoZj9uRyPWUvCJJZf95Z
 bD5gJxWHOHGuhMW2NUoodQ/g2vtuKOunI0exg43zDGe4WAClZHVYE/1ogfzReZ+WNRw0Q8/Crn
 Gw//pzOlxWMumFpKd2O/P6jxMnL1hk4edRNoDqPM/LE0DgoriryMWfZPxzEBzoYM87T2iSlk4F
 mi8e/dR244RQnl7l0kgrmYGvlwjcc1obxM5wuv+NedJgli9V/hWSapWX3WALEB7pAy7smc63cS
 2kk=
X-SBRS: 5.2
X-MesageID: 41470308
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:lDWbQ6pswUNWNvzk/YACWFoaV5v5L9V00zAX/kB9WHVpW+SFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex7h3LR+iLNwAZ6JWg76tGy0aLxz9IeK+UyFJwTS1M54kZ
 1hfa93FcHqATFB5/rSzQGkH78br+Wv37uvgY7loUtFaSFPR+Ve4xxiCgCde3cGITVuIZYiDp
 KT6o5milObCBcqR/+2DHUEQOTPzuej/P7bSCULGgI97022hS6ogYSQLzGjwhwcXzlTqI1Sk1
 TtrgqR3MSemsD+8DDw/Sv575NamNzuo+EzefCku4wuBRjHziqtbIRlcbWesD4yu/HH0idXrP
 D85y0OEu42x3TNfnykgRaF4Xie7B8er0XM5HXdoXz/rdf3TDg3YvAx+75xQ1/ixGcL+PRfuZ
 g7uF6xht5sIj7r2BnZ3ZzuUSpnk0KlyEBS6tI7vjhkfqY1LINKoZd3xjIyLL4wWBjUxaoAC+
 dUAMTV9J9tACmnRkGchGVpzdC2N05DZyuucwwHssyR5TBcgGp0+Use3NAehXcN7vsGOuF529
 g=
X-IronPort-AV: E=Sophos;i="5.82,203,1613451600"; 
   d="scan'208";a="41470308"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TeuADc7OF0XvVGxKF0fkQQ+YgllDAcGmJwIrcY2nAMhN6PE3/1Cj4NhcNAmaMdOEa7Rsrw6ROxhL/cJnN3bhg4foTivdB9onH/nr5kHi6sJTrw7fII+5hRNY0ZSMh/2LpnWyNBmwELUkWYU5MFHQxsAhGF2WD9N7N73Eb37BHNA9y6pLXWfOLB+plpfEpv8TIRq4idHHmhnLcx5QiUlSRVNumR/pBFwMSsy0dn9qvcHEZ72m+39OTuva0rzLfOLq3l81YD+XhnV3sGejkrBryLKho9Q1rrEbLfo8ZyUzECt/UJhjLfvRiwWAzyVWDU7EVtTsEhVOoEIMpJ7lFaTz4w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IQISxLn7cl+Xpu0aBwzT99DyZWyjhTJ0C1evcy3bkkc=;
 b=eHJwwrrAKFkS/dYR3Nq1S+wJKm2X5vDFJbYMh9ycAUhNhdMnS0n5ETp+BrW288CmoCORp+gejBLqAu4lgr424MpEp47svzYA4wzZ/GJZZP9V0HjgkPOwydIWQg8EpDSCo89a2QGGTT3nkwMS8jEE2y80DwWVHi/T8CaMwuaj4//S88YhY9KaRGQH/S7W66IzeYqU3c/6ET1o6BwODPSYJmzZXesZe7JC7SAfqOgSwymPMmYuXtPZE8Iu+bxE5bVKRYmACvQdkgU2x270nsxZCEX/E0v6/biRA7Cs3UdNp2ex154aCkpbiTicJ4WTeMDw6XFbSc+5DDnnn43svWw37w==
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=IQISxLn7cl+Xpu0aBwzT99DyZWyjhTJ0C1evcy3bkkc=;
 b=ebYshAW5sTCt+MdkpiDkW0fRvTw9YjYwBhFH8jixPcVFDlW4zgD4tlblUzg1S7/MppVrBkcthkAtTalRLVVh4dnbV7eIZ3xW3RdSY6yKU9qPl7aiiDpdt2cHBq47uP2seCPMxSZIzTy/RjAtAC5D4CWigV6XX4bG+bIxegK7cUw=
Date: Wed, 7 Apr 2021 18:46: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 v3 05/11] x86/vioapic: switch to use the EOI callback
 mechanism
Message-ID: <YG3iAeFFA/ZJh5es@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-6-roger.pau@citrix.com>
 <f8d9c37f-8896-36af-712a-ac0765567409@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <f8d9c37f-8896-36af-712a-ac0765567409@suse.com>
X-ClientProxiedBy: MR1P264CA0017.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2e::22) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f52d145a-87d2-402a-cc9d-08d8f9e4c4ff
X-MS-TrafficTypeDiagnostic: DM6PR03MB4217:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB42171ACC9DAF13DD349635678F759@DM6PR03MB4217.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: VD78VIOA+j2Kz2sXCEZEK2Cz4ZnNM9PHODe0zbJc/uoi5g3PXgQwcwZEsa4ANdwCV/0G7xeArBPF7atthdrLwaAIpYzHIwvFQPYwlgILWavIQ84Kn69Kel1VQUu6XcYfVbdnY/y+LVd3xSVMskSkyyu0Q/M5R26er98noimfoyIt6QdGscYLV+VjyL3zNhz5/PUrkIFNkwQPCDL7TLDToUgA5vWCnSQq31lilZ2oiEm0d/L0p2bmezwv7xJnP6W1+7OUUt4Zw0pCq5baPXTm69WXEkxIiUp86b+v5wPmC0etjPwDRWCstSctPxVqtHcb6/6mGIH9992+UORaS56gZ7Haqg+e78F/YuUTBrvw0DOlsDX4oCZe7aFyMFu5N/ahjfBEVgvR2Z3oB8hwpwrBmr9qwgv6lO0jOl+6eWQJnU8RVrNf6x2TMDTTlWcqKlqIKVZ8Y4yZWytfX5nPdsts5jvCJu5Fed1l+1LzDGY2DrqFL7gcNKjM/IJsQYG+NukrxOGd72zL9f5DckccbBuaaWXGM5Vfu+oEjAFaM4yu51kZVfIIdgsmyUmxP0sObLLITrlI7Fh+zsgLo389Cowp+i3HpIDw3SpMHNVLNbuMSstEuwIJNuoD4UGfV+aTlyp3wctgL0XO+/cdgKXPjykQTvweizPa8Pdq5u9ripN+KANi8NxJFkj6kMKJrlkiXs59
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(39860400002)(396003)(366004)(136003)(346002)(376002)(86362001)(6486002)(66476007)(66946007)(66556008)(8936002)(9686003)(8676002)(6916009)(6496006)(83380400001)(956004)(85182001)(4326008)(6666004)(26005)(53546011)(16526019)(2906002)(186003)(33716001)(38100700001)(5660300002)(54906003)(478600001)(316002)(309714004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?WVNRRWVXOWwzdnphVDYyd2RKbWNtd0FkM1pNL3JiLy9hZ2FNM1JCU0NqZEZG?=
 =?utf-8?B?MkRrWFZGd0dHZXNPU0drVjdPd3dSSjVsakNlVlVNMlkzejBQWW1ZVU1NYUgw?=
 =?utf-8?B?RnJkcE9jWDF6aHVxNjZaaHlIN2tGVTJzL0wvT0o1bHUyMnlKandZZC9FWHg5?=
 =?utf-8?B?ZUJLQW92QjJnbkpnZnBqV24vREJ0aW9kaC9tUCthUlVyTEN1aXBEN2IvUUln?=
 =?utf-8?B?K1p3VDAzdGFaWWFMdG45TFVMNGNUVFB6c2ZaZ0JDUE1jT1VxYWVTdkUrQjJZ?=
 =?utf-8?B?Y1ZNTDJUbGR0akVnOFpEclBNeEs1d0Fkd3BJZWtLMEJ4VzJQMGlmSG5FdG92?=
 =?utf-8?B?OUU5MXBJeHJJaXJJNjdqTXlRWlE1c1Zvd1dIdHNCRkFnUHhoMDFXbG5wUjU2?=
 =?utf-8?B?ajFuMFBOQkdjR2JOdkk5ZWo4YzhsMUFuZVlrVTFkaFJoMTZ4bnNIcTROUmRD?=
 =?utf-8?B?K0grZjFWMTUzWVdTcTlaZ213SStGaUVib3Q3RmN1dXRrZEhuejVpT28vUzNM?=
 =?utf-8?B?d1BLNyt1d1RTWU9WUHQwNVpSR2ZpbUJFTnJuTWE3d0VuNjVzYU1LTGFrbDlZ?=
 =?utf-8?B?dDlka1lrY0E3OU9NaWV6KzFGSSs0RzdUdGs0RlJHUG9xSm5tMmhUOGZBVkxN?=
 =?utf-8?B?YVBzVHNVSVdxUHNxbEpQZmsyTG1MUFF3eFBiY3RldGZwWUFlNlJZRlczbmMr?=
 =?utf-8?B?S0VkR0xCcnVYVGp5ZFlOM1plMGc0U28wVUppUVJSMzNxSFptNWRnT2I5N2pF?=
 =?utf-8?B?ZHQwNUF6RHJHRUdlaGNqNGErZ1AwSFVocnJ1MVdYUFhqYWJuU0Nlb29CRnUw?=
 =?utf-8?B?ZlVwdi9iVkF6T2lUc1dhaThyMU1PeEUyRDVQcVl3MjdBeVUzcytTOXNUaW96?=
 =?utf-8?B?bGFJNjU2eFBVRk9TWHlPdDBIbDdaQllZUnFJcUxhZ3VEamMxU2tDVGttRENT?=
 =?utf-8?B?akFld0l0LzNtYURLVjNTZHJ2TG9lTndtNytjNGs4ZWJtKzh1NERGMVVoRlFL?=
 =?utf-8?B?T2krZ0s5c2FCMnpFbHlkMmVsYnJzM3g4blNlWFZnV29ZOGhnL0NvSVhQVFlZ?=
 =?utf-8?B?SzdmWjhHck8yVjZ1azF2Z1pibStyMU5OOHNzUmNDem1XRVAwYm1BZytrSlNR?=
 =?utf-8?B?azNkRXJ6aUEvbXZPTHZNUmtXRk52OGsxbUJ3YVF2R2QvSEo5UUdnUzhCVUJF?=
 =?utf-8?B?SDdxVFhtSmFaY1JNY1JZZmNWU0lEWkxIellLbGpzUXNVRDA4M2IxN0RKNklj?=
 =?utf-8?B?a3NZS0RUKzRNQktZYS9hTU9oRVlDRXBuLy9CRWZmWVVOYjNvQzZ3MXd4VW1U?=
 =?utf-8?B?cGF2NFRjcXVMazYvUWFvMkQ1ZUZjWmtHd3h3aThmVis2NG52eU5YOHpDeWhz?=
 =?utf-8?B?TXNlTStSNXlHQWF3aUxnQk1kcUV3NlpEbWRhK0UrMG9RUjRxYnpEUmJSRzBo?=
 =?utf-8?B?bjlNY2RsK3JXNnZMUlVCd2tiaUo3M1ltNGtzMEkvK3ZzZmNCZWZyRXBRMkFV?=
 =?utf-8?B?eEQ5T1FTWUJXMkZlY2tWK1dHajdkTUtSUzcyZWV0ZVYzMU80b2FXdnBVZGhM?=
 =?utf-8?B?YVhTcDRrNDBXQy9meHZqb1hKcUpwTlhuUXl4aVhWS0Zmbm51cWx6Z2JZZURM?=
 =?utf-8?B?L2lneE5sK2ovWHZxUXJlazkzcGxwb09HRk9xaXZFdG5tZ081NFlLa2wyZlJB?=
 =?utf-8?B?TmdMVTlHV1VkRjlLVlVpMHZjclEwRGdWQkRpMGE1RUcxa0RNaFdPWHRQcFg3?=
 =?utf-8?Q?4WZ/OECVhyZiW+jk4BR28dwdJvfvhxXk6skrRi1?=
X-MS-Exchange-CrossTenant-Network-Message-Id: f52d145a-87d2-402a-cc9d-08d8f9e4c4ff
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 16:47:02.8377
 (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: EnSo4BlnT6d95fAmdx0/P4zd2ittwKcHSPf6IYcT5gTJyi6GvC+KpxRfpj07tWkmrA+onXlKB3TMcssmBDe2uw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4217
X-OriginatorOrg: citrix.com

On Wed, Apr 07, 2021 at 05:19:06PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:32, Roger Pau Monne wrote:
> > --- a/xen/arch/x86/hvm/vioapic.c
> > +++ b/xen/arch/x86/hvm/vioapic.c
> > @@ -621,7 +624,43 @@ static int ioapic_load(struct domain *d, hvm_domain_context_t *h)
> >           d->arch.hvm.nr_vioapics != 1 )
> >          return -EOPNOTSUPP;
> >  
> > -    return hvm_load_entry(IOAPIC, h, &s->domU);
> > +    rc = hvm_load_entry(IOAPIC, h, &s->domU);
> > +    if ( rc )
> > +        return rc;
> > +
> > +    for ( i = 0; i < ARRAY_SIZE(s->domU.redirtbl); i++ )
> > +    {
> > +        const union vioapic_redir_entry *ent = &s->domU.redirtbl[i];
> > +        unsigned int vector = ent->fields.vector;
> > +        unsigned int delivery_mode = ent->fields.delivery_mode;
> > +        struct vcpu *v;
> > +
> > +        /*
> > +         * Add a callback for each possible vector injected by a redirection
> > +         * entry.
> > +         */
> > +        if ( vector < 16 || !ent->fields.remote_irr ||
> > +             (delivery_mode != dest_LowestPrio && delivery_mode != dest_Fixed) )
> > +            continue;
> > +
> > +        for_each_vcpu ( d, v )
> > +        {
> > +            struct vlapic *vlapic = vcpu_vlapic(v);
> > +
> > +            /*
> > +             * NB: if the vlapic registers were restored before the vio-apic
> > +             * ones we could test whether the vector is set in the vlapic IRR
> > +             * or ISR registers before unconditionally setting the callback.
> > +             * This is harmless as eoi_callback is capable of dealing with
> > +             * spurious callbacks.
> > +             */
> > +            if ( vlapic_match_dest(vlapic, NULL, 0, ent->fields.dest_id,
> > +                                   ent->fields.dest_mode) )
> > +                vlapic_set_callback(vlapic, vector, eoi_callback, NULL);
> 
> eoi_callback()'s behavior is only one of the aspects to consider here.
> The other is vlapic_set_callback()'s complaining if it finds a
> callback already set. What guarantees that a mistakenly set callback
> here won't get in conflict with some future use of the same vector by
> the guest?

Such conflict would only manifest as a warning message, but won't
cause any malfunction, as the later callback would override the
current one.

This model I'm proposing doesn't support lapic vector sharing with
different devices that require EOI callbacks, I think we already
discussed this on a previous series and agreed it was fine.

> And btw - like in the earlier patch you could again pass d instead of
> NULL here, avoiding the need to establish it from current in the
> callback.

On the new version the vlapic callback gets passed a vcpu parameter,
as I will drop the prepatches to remove passing a domain parameter to
vioapic_update_EOI.

> > --- a/xen/arch/x86/hvm/vlapic.c
> > +++ b/xen/arch/x86/hvm/vlapic.c
> > @@ -192,7 +192,13 @@ void vlapic_set_irq_callback(struct vlapic *vlapic, uint8_t vec, uint8_t trig,
> >  
> >      if ( hvm_funcs.update_eoi_exit_bitmap )
> >          alternative_vcall(hvm_funcs.update_eoi_exit_bitmap, target, vec,
> > -                          trig || callback);
> > +                          /*
> > +                           * NB: need to explicitly convert to boolean to avoid
> > +                           * truncation wrongly result in false begin reported
> > +                           * for example when the pointer sits on a page
> > +                           * boundary.
> > +                           */
> > +                          !!callback);
> 
> I've had quite a bit of difficulty with the comment. Once I realized
> that you likely mean "being" instead of "begin" it got a bit better.
> I'd like to suggest also s/result/resulting/, a comma after "reported",
> and maybe then s/being reported/getting passed/.
> 
> As to explicitly converting to bool, wouldn't a cast to bool do? That's
> more explicitly an "explicit conversion" than using !!.

I've always used !! in the past for such cases because it's shorter, I
can explicitly cast if you prefer that instead.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 17:08:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 17:08:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106860.204296 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUBfH-0007jn-F0; Wed, 07 Apr 2021 17:08:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106860.204296; Wed, 07 Apr 2021 17: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 1lUBfH-0007jg-Bu; Wed, 07 Apr 2021 17:08:27 +0000
Received: by outflank-mailman (input) for mailman id 106860;
 Wed, 07 Apr 2021 17:08:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gkPf=JE=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUBfG-0007jb-31
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 17:08:26 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cbfa56ed-c6eb-481c-a05f-f745abc74e39;
 Wed, 07 Apr 2021 17:08: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: cbfa56ed-c6eb-481c-a05f-f745abc74e39
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617815304;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=tbSlAJqOVZnqbsZhPkwjBxLWhtyYW006qpspGifeuK4=;
  b=VzyHpxbZ7BohurAphOJZ5s2KLqNBo8/78vgooOyqzu6MR236dR655QkI
   dJGRXCeLauzAmxo3OE+WVaILIbg5j9FjLdQeNh0t6YzPOp3LQ+pA89gKo
   8p8a5rcBfo1G0KGEaP4lbdPT9O8YRTs6LFyDVcmjAskzwTMMp28q2j/Nz
   I=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: +yK8MahubZTKYZIfQ+5pyGsqL3/2/B47gRyY3Ez6oDsM5LakjEsQkWn01sbtixu3NvKcmcaTyb
 SfQzNGdKJa7jczmxdqQIdWLrjrhuhYkBUXgrovwvqtnKcZ70TwFiOEh2c0BgjsesYtkoIMX/mm
 CSM9n/tKzif7IP8VEK5l5lry/iDb3Ws+/ZqmeTATNOzKwHWGfeQxNACWfrHJNwEpPKBwdV6jme
 AOqxOkcksQpWzvJnvtJ+YP9n6LRNKfojaN0/toDUy+g8RY/VRj5pAjxQQ0DeQWQc4gLEfMJ2E2
 HvE=
X-SBRS: 5.2
X-MesageID: 41095372
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:O6U+z65nZsoYSd3R5QPXwRqBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3m0z/5IyKMWOqqvWxSjhXuwIOhZnO/f6hDDOwm7zO5S0q
 98b7NzYeebMXFWhdv3iTPWL/8O29+CmZrHuc7771NACT5ncLth6QARMHf/LmRTSBNdDZQ0UL
 qwj/A3xAaIQngcYsSlCnRtZYGqy+Hjr576fQUAQycu9Qjmt1iVwYTnGBuV1Ap2aUIs/Z4e9w
 H+8jDR1+GYnNyQjjTd0GLS6Jo+oqqd9vJzQPaip+JQBjHligODbJlsVbuYrFkO0Z2SwWdvqv
 bgiVMNONly9mPwcwiO0GTQ8jil6hkCwTvDzkKVmnTqq8CRfkNFN+Nxwbh3XzGczmhIhqAa7I
 t7m1i3mrASMDb72AP63NTMXwECrDvOnVMS1dQ9olYabZETc9Zq3Ooi1XIQKrgsNgTg5rsqFe
 F/Zfusnsp+QBehY3fVsnIH+q3UYl0DWhOPQk01sseIyTRhnHdg00sCxMAE901wjK4Adw==
X-IronPort-AV: E=Sophos;i="5.82,203,1613451600"; 
   d="scan'208";a="41095372"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OELFKVpETRdmoTs5NWwcAJSOG+VKa0KU29dBzzbvMUUiSUzyIivVGv30Nv6UbjBiUaWjqTIkq9HKvqfBCsSZoGHQ8zaLuEIlfhSr0pjQYHa8tGF/E3cjd07eZqZI2OaCsjeg6LZDWJNyJshFtxdDYEp8hVWsAWWJk4qYZDHsS72nqa7yN3kWbR3RFklMVZjSY/dXAMYd/6XwKNT9bEQEnqrRPE8Wj0eUOuxdzCdGXf++bb7VBy1JQqgR5Aq22JTuc+WxZq09cxkvhGMwZo0wb+zlsn3NC+12YU4uaW2GVBWvF7H4uglVF8o0jqPiREXRUueDwPcmoMZfslCfUXBxuA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1t7+AMStHmLCsfi6rt8034ry140rhrQQSlgl5JVwRCY=;
 b=KX3i3gko5+h0PyzXgisjKT5gIsYZKDKDUtW1Pb9tgdfcNZ7goTTf2O+Z2jnS2YBSL0xSMCsgjoWn+va4Li1kzrXULkH4tCpN+D/Rqr3fIQJCpk6DPPfN2v4qeEYDYSZvKpEoww0N85+h0ZnDLrZhIly43a4/4grCW1ICCcKzf9HIr9xMdQt95DioE9JGq4QSAsWCqbIgO+Hdpr42idKOf5kgCKGpyjQdnqAVjo9PB5p8qGClLopQa2XN6kmXbe8IUBYIPkR9GIPkYTto+PfD+Y2tT65fOKDQErZRvLcqCNE4G4w/+dY9Wj3glc15m8NXPv6n17/SZvJj3c+b3bh4cg==
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=1t7+AMStHmLCsfi6rt8034ry140rhrQQSlgl5JVwRCY=;
 b=PE4JIQyldn013X1S/qMdeIOcCtezShyz6ryAwu9+20gYr/1Kv+xidSleOw/4IUD9x3/BVxnv0gKFOI3EzWYMFUbSX0is6LhkEP6bNjc46DyKbFdehOOI03TPXtWkg9NTRj04dxTxNSmsyP0cgtSxAuTgaWe59TGp6tfM2lbENS4=
Date: Wed, 7 Apr 2021 19:08:06 +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 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
Message-ID: <YG3m9nW6xPeL7MPr@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
 <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
X-ClientProxiedBy: MR2P264CA0146.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:1::9)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d6e8e3da-1321-4a8d-2a69-08d8f9e7bd33
X-MS-TrafficTypeDiagnostic: DM6PR03MB4601:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB460113C195B263C67E2FBC6F8F759@DM6PR03MB4601.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ai3ChuNhW4idI6+luDeG+NSb4S3Mq9+sOTSrLphs/nKyKnEm+wivZV0wlRlL1tgV05BsY8VBQDd+82Hwt33ChOvaOzj9SY6l+zNxqKOm5S4YggYjlXxH+6WArsdln3brxaQ1Qw+ThAuNrgh5PR+QVHZ40eBOgynPIPxiAq0GOSh/yuEhV15SYK1X3HYute5ZpaoDXqWF5QaFlffQNavtwHJnTQv0DNn/bJStxdkailY8BkN7dLYmWdqgk80Rntydom9MuMhJwGDERr8ZMDz3K6XVjDZF+4GFlXxvtLRhDkyOUg0iWzuizrkPEkNQLPvMpVnAvbauz76SmdQ5yDI5PyRCwg6iF8rF5EMwiSaHbzNbjwUaigFshVspgHKJZ6IQ1ChVXUU2sfwYxZOGCf/ps1mthiw9XiRKnWWtYm6eJoMNRk9yi8AYDAQl8ZxDxmeSwwzK6WLhPN63pcgl/ljLTvhoPUTe/pQOrlfoBc6r8oodEHEzzgAu2odKKy2zQTxSXt2XeMWVYgzYgi5B6hpDkGnTa8TQXr2rkF4SJdfOZhjcQrUrrNY1D6yiKNvPMW/cbiaWR+dmEUh2RQDS6S8FU/lEZIwJJhQcXWOIkoiwM+SIILO3RDQNtB6B/xTZ6q2TZTPej8n0BaJvHF+bx0TXXkbpYxo0A0Rjfdhrs8g3hXw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(346002)(376002)(39860400002)(396003)(136003)(33716001)(16526019)(83380400001)(4326008)(186003)(5660300002)(9686003)(66476007)(66556008)(66946007)(6666004)(26005)(2906002)(86362001)(478600001)(6496006)(53546011)(6916009)(8936002)(8676002)(54906003)(956004)(316002)(6486002)(85182001)(38100700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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///fz+yCZ?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d6e8e3da-1321-4a8d-2a69-08d8f9e7bd33
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 17:08:18.1024
 (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: ukLwh+eZKwo8J1wx/lSjwt4UrnMISKDgYhFvUbgZrhe2LTBWvY/Fjtvj3R7jdxakBRPp4rR1bKIN7GStk3a4QQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4601
X-OriginatorOrg: citrix.com

On Wed, Apr 07, 2021 at 05:51:14PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:32, Roger Pau Monne wrote:
> > --- a/xen/arch/x86/hvm/irq.c
> > +++ b/xen/arch/x86/hvm/irq.c
> > +void hvm_gsi_execute_callbacks(unsigned int gsi)
> > +{
> > +    struct hvm_irq *hvm_irq = hvm_domain_irq(current->domain);
> > +    struct hvm_gsi_eoi_callback *cb;
> > +
> > +    read_lock(&hvm_irq->gsi_callbacks_lock);
> > +    list_for_each_entry ( cb, &hvm_irq->gsi_callbacks[gsi], list )
> > +        cb->callback(gsi, cb->data);
> > +    read_unlock(&hvm_irq->gsi_callbacks_lock);
> > +}
> 
> Just as an observation (for now at least) - holding the lock here
> means the callbacks cannot re-register themselves.

Well, re-registering would be weird, as the callback is not
unregistered after execution. What is likely more relevant is that the
callback cannot unregister itself. I haven't found a need for this so
far, so I think it's fine.

> > +bool hvm_gsi_has_callbacks(const struct domain *d, unsigned int gsi)
> > +{
> > +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
> > +    bool has_callbacks;
> > +
> > +    read_lock(&hvm_irq->gsi_callbacks_lock);
> > +    has_callbacks = !list_empty(&hvm_irq->gsi_callbacks[gsi]);
> > +    read_unlock(&hvm_irq->gsi_callbacks_lock);
> > +
> > +    return has_callbacks;
> > +}
> 
> What use is this function? Its result is stale by the time the
> caller can look at it, as you've dropped the lock.

Right, that function is only used to decide whether the vIOAPIC needs
to register an EOI callback when injecting a vector to the vlapic. The
workflow is to first register a callback with the vIOAPIC and
afterwards inject an interrupt which will trigger the callback
logic.

Playing with the callback registration while interrupts can be
injected will likely result in a malfunction of the device that relies
on those callbacks, but that's to be expected anyway when playing such
games.

That said multiple users sharing a vIOAPIC pin should be fine as long
as they follow the logic above: always register a callback before
attempting to inject an interrupt.

> > @@ -421,13 +423,25 @@ static void eoi_callback(unsigned int vector, void *data)
> >              if ( is_iommu_enabled(d) )
> >              {
> >                  spin_unlock(&d->arch.hvm.irq_lock);
> > -                hvm_dpci_eoi(vioapic->base_gsi + pin);
> > +                hvm_dpci_eoi(gsi);
> >                  spin_lock(&d->arch.hvm.irq_lock);
> >              }
> >  
> > +            /*
> > +             * Callbacks don't expect to be executed with any lock held, so
> > +             * drop the lock that protects the vIO-APIC fields from changing.
> > +             *
> > +             * Note that the redirection entry itself cannot go away, so upon
> > +             * retaking the lock we only need to avoid making assumptions on
> > +             * redirection entry field values (ie: recheck the IRR field).
> > +             */
> > +            spin_unlock(&d->arch.hvm.irq_lock);
> > +            hvm_gsi_execute_callbacks(gsi);
> > +            spin_lock(&d->arch.hvm.irq_lock);
> 
> The two pairs of unlock / re-lock want folding, I think - there's
> no point causing extra contention on the lock here.

The chunk above will go away on the next patch - there's no need to
fold it as it makes the following patch less clear.

> > @@ -443,7 +457,8 @@ static void ioapic_inj_irq(
> >      struct vlapic *target,
> >      uint8_t vector,
> >      uint8_t trig_mode,
> > -    uint8_t delivery_mode)
> > +    uint8_t delivery_mode,
> > +    bool callback)
> >  {
> >      HVM_DBG_LOG(DBG_LEVEL_IOAPIC, "irq %d trig %d deliv %d",
> >                  vector, trig_mode, delivery_mode);
> > @@ -452,7 +467,7 @@ static void ioapic_inj_irq(
> >             (delivery_mode == dest_LowestPrio));
> >  
> >      vlapic_set_irq_callback(target, vector, trig_mode,
> > -                            trig_mode ? eoi_callback : NULL, NULL);
> > +                            callback ? eoi_callback : NULL, NULL);
> 
> I think you'd better use trig_mode || callback here and ...
> 
> > @@ -466,6 +481,7 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
> >      struct vlapic *target;
> >      struct vcpu *v;
> >      unsigned int irq = vioapic->base_gsi + pin;
> > +    bool callback = trig_mode || hvm_gsi_has_callbacks(d, irq);
> >  
> >      ASSERT(spin_is_locked(&d->arch.hvm.irq_lock));
> >  
> > @@ -492,7 +508,8 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
> >              target = vlapic_lowest_prio(d, NULL, 0, dest, dest_mode);
> >          if ( target != NULL )
> >          {
> > -            ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode);
> > +            ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode,
> > +                           callback);
> 
> ... invoke hvm_gsi_has_callbacks() right here and ...
> 
> > @@ -507,7 +524,7 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
> >          for_each_vcpu ( d, v )
> >              if ( vlapic_match_dest(vcpu_vlapic(v), NULL, 0, dest, dest_mode) )
> >                  ioapic_inj_irq(vioapic, vcpu_vlapic(v), vector, trig_mode,
> > -                               delivery_mode);
> > +                               delivery_mode, callback);
> 
> ... here, avoiding to call the function when you don't need the
> result.

I think there's a slim chance of not needing to use the callback local
variable, and hence didn't consider limiting it. I can do, but I'm
unsure this will bring any real benefit while making the code more
complex IMO.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 17:22:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 17:22:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106869.204309 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUBt1-00014l-TE; Wed, 07 Apr 2021 17:22:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106869.204309; Wed, 07 Apr 2021 17: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 1lUBt1-00014e-Q8; Wed, 07 Apr 2021 17:22:39 +0000
Received: by outflank-mailman (input) for mailman id 106869;
 Wed, 07 Apr 2021 17:22: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 1lUBt0-00014W-M1; Wed, 07 Apr 2021 17:22: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 1lUBt0-000231-H3; Wed, 07 Apr 2021 17:22: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 1lUBt0-0005Yc-54; Wed, 07 Apr 2021 17:22:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUBt0-0001Xd-4H; Wed, 07 Apr 2021 17:22: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=RTzvt6E6/RPgBrrLPp4Ob977GtvQcwQycIJND8/M2ZU=; b=2WwydA0t6vYEZuexddI6IXvmjH
	hrHZKzhBGwNmR7i5PP26FzCFs1/tv9biXCUvHB0Zp8D0iDzvDlA9N4burmAwR7SHOCtDJ00sdW9F/
	ey2h33PWMwrR+INg2GLJ8SXbMzVZbSkn98FZRMSjJyZdCvX80QiDPwnU5A+T2haIM5p4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160779-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160779: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=d0d3dd401b70168a353450e031727affee828527
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 17:22:38 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  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-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-amd64-amd64-libvirt-vhd 14 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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                d0d3dd401b70168a353450e031727affee828527
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  230 days
Failing since        152659  2020-08-21 14:07:39 Z  229 days  430 attempts
Testing same since   160779  2021-04-07 01:55:26 Z    0 days    1 attempts

------------------------------------------------------------
475 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 140653 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 17:53:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 17:53:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106876.204324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUCMN-0003ld-8q; Wed, 07 Apr 2021 17:52:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106876.204324; Wed, 07 Apr 2021 17:52: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 1lUCMN-0003lW-5X; Wed, 07 Apr 2021 17:52:59 +0000
Received: by outflank-mailman (input) for mailman id 106876;
 Wed, 07 Apr 2021 17:52:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1L58=JE=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lUCMK-0003lR-Sk
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 17:52:57 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.45]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 86104592-dbda-4cb7-9983-b7a473c4f219;
 Wed, 07 Apr 2021 17:52:55 +0000 (UTC)
Received: from MRXP264CA0030.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:14::18)
 by AM0PR08MB4481.eurprd08.prod.outlook.com (2603:10a6:208:148::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.26; Wed, 7 Apr
 2021 17:52:43 +0000
Received: from VE1EUR03FT032.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:500:14:cafe::43) by MRXP264CA0030.outlook.office365.com
 (2603:10a6:500:14::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend
 Transport; Wed, 7 Apr 2021 17:52:42 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT032.mail.protection.outlook.com (10.152.18.121) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 7 Apr 2021 17:52:42 +0000
Received: ("Tessian outbound 82c2d58b350b:v90");
 Wed, 07 Apr 2021 17:52:41 +0000
Received: from e748ff116bf3.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 F2D30D2F-DD38-4328-BAF8-A0F64CC8B0A6.1; 
 Wed, 07 Apr 2021 17:52:30 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e748ff116bf3.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 07 Apr 2021 17:52:30 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DB6PR0802MB2552.eurprd08.prod.outlook.com (2603:10a6:4:a2::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Wed, 7 Apr
 2021 17:52:27 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.3999.033; Wed, 7 Apr 2021
 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>
X-Inumbo-ID: 86104592-dbda-4cb7-9983-b7a473c4f219
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yioT2oQUvK5WvIuU4k+PjiO2PwemmBYLpnx//Kj+fKE=;
 b=1CNMWjrGL9FxgGLhPzNdSHD6ljWoHi1x9Du0nsyK08YgaZmORNMT4jTHYIAhBnmN0v3jd6WDBkzcF4NKM1T+NWD3o4OJ44rsqp47k0o+a+FHT3/xMeomr2z9oBFe9FoY3eSPpnyDUJv6zuxaQnG90fiBNn5VsMKZbzn7JJEsf0s=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 48af9176d1e61601
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GvnqEiPAtLisednMN/7O66n81SMnE6CZtw+dpy551h3fM3vFgTQq2zzgg05m2m54XQ1u9h3JldZgIIO3Bbiq+27dfkaL9PyMUgmI7ZmoI0vPALY9r3mT2cIAs0HfvPaVcnNKfMEX2LI5nA/yuh5FS1Mn3WQtfL+2H9hJEBYzt9/r9F3jzXQ0u5/A9uv0QecKJJGuTv7MJ5x29QmgDG9qIex4IfShb76tzysSBvTOgxPwSKatXXA/kAmUsqk+wOQsaYmVZCwoNFaSt5TEnup8GJSjII5kE+U3yNWAVgXEFQ+o91o3BmQJegC2mT0PoJ0SSjGj2WcH1lLn3kl7Ux3jug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yioT2oQUvK5WvIuU4k+PjiO2PwemmBYLpnx//Kj+fKE=;
 b=oDSU6If+nJp8EOiIaxKDPD7ZnzU3C691RqNqRCP1+LqlQjMA1aBpoPGBDU8diX04+8r9is9pb76QxuFasGtliyNzEpJt8yjOQzy0gL6qBrpxHErjTVzu2Abk0tgja+20sdRh3AdadgAay7L8oiUl5J46fYidxNB1j5EbMg7a0ZrNttSyEfsvLaWMlHmUW4Zuw/kyEk60bfuNulNVLgKph8IDCWKFyAoKBAbtng6swWijO6QfSjX45LhhNQGCASa5ibdpkHudjli6x4REeCxOWEWvuTzDFNbHo3nf8Ze/Qtes5ALgNC74S/zyzk5J8dnQqgEgrVwuHlUOsgnPbujiQA==
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=yioT2oQUvK5WvIuU4k+PjiO2PwemmBYLpnx//Kj+fKE=;
 b=1CNMWjrGL9FxgGLhPzNdSHD6ljWoHi1x9Du0nsyK08YgaZmORNMT4jTHYIAhBnmN0v3jd6WDBkzcF4NKM1T+NWD3o4OJ44rsqp47k0o+a+FHT3/xMeomr2z9oBFe9FoY3eSPpnyDUJv6zuxaQnG90fiBNn5VsMKZbzn7JJEsf0s=
From: Rahul Singh <Rahul.Singh@arm.com>
To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
CC: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Daniel De
 Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
Thread-Topic: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
Thread-Index:
 AQHXKtnMgQfSb5EUJ0m5ImZxjYO+aaqniEaAgAAErYCAAAg4AIAAAtUAgAANswCAAbIjAA==
Date: Wed, 7 Apr 2021 17:52:26 +0000
Message-ID: <6593B520-538C-4422-80BA-DDDEBC2724E5@arm.com>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
 <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
 <YGx3TsTlAuE9eQ7i@Air-de-Roger>
 <88704bcf-a06b-cf89-5fa3-0db94428f9f8@xen.org>
 <YGyFLIp8Ld0RjcoI@Air-de-Roger>
In-Reply-To: <YGyFLIp8Ld0RjcoI@Air-de-Roger>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: bc1898f9-52bc-4fbd-39b2-08d8f9edf144
x-ms-traffictypediagnostic: DB6PR0802MB2552:|AM0PR08MB4481:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM0PR08MB448181D597BD860B3A41819BFC759@AM0PR08MB4481.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 tTORihAFKtYnVNgqdhZ8tY27fkGsobSVG38kw0rJzksvypiCmDel6cGF4DqhzlFcApd9mtIFOVTurk6nnL20zA4f1d1j7Hjy2v6lVOwynk86QROC0VOlMvgxWLE1wOXnm/Iy+Hh3CxuJBbluJwtYinvk6d/w6k7W3FInE6OsN/H+27qIY7FYhbJoUSq6GwMUTmUMv74bOMQgs7ipc95nn8AHyp1kYoEyyHdXKemrXOj4201R2OvtQHU37FLtDfCFGazByEEzv6YMBherfFNWo213zqJDhMdMscQUXyFMZs5uVQEKrv3Ivx5a7FZ58iiAtJrxJGgqTHnJ91HulOCExAA/eu1t9lu573aA0w0dsZUO+aBzL6OwIR/58QsOBKRFSe8pyph2yibyppprdxjkFXvYq+VJjijrWQiTofyDkqNKGDfrBruxqc+WILANrEXcWGW5ai5m2ZxceHtltEGv2TPf90KclHn4gfct5VD13ON4ogHtdupvviiXCqEtjZo5uuAIyQtuB1X618b2FW8ExnWi/C8Yj1EZAGPsR5wLp6+mRUOiVqoxbHDeadKoqxrEPkpvhZ19aZfB/mi2yJ2NoKRvPhalXoAwNODCOpe/d93jNuJgJncWfljq/m3MaVjtQD00VaXpWEVyr0BAyhp5nj9oYiLFedRvGkDH8Ksotk/NPqcZCyPELCgRqHDyeITE
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39860400002)(396003)(366004)(136003)(346002)(316002)(478600001)(66946007)(4326008)(6486002)(54906003)(6512007)(66556008)(76116006)(64756008)(66446008)(71200400001)(91956017)(33656002)(53546011)(66476007)(6506007)(8936002)(5660300002)(7416002)(83380400001)(186003)(26005)(36756003)(2616005)(38100700001)(2906002)(86362001)(8676002)(6916009)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <021232F41C285C45BFD2DA4F7D297CB7@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2552
Original-Authentication-Results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT032.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ab7a5ade-8412-4b72-e5b0-08d8f9ede81e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wRBsZfwWchCABxRSoTV24eT7x3u5OhGWn2Kp8WT2LbZ1odqKb21HS4YKHqLdYEivp2B/kx/B5wlzPovB2ztRIyCyDOnHTj7di+kN32s67k500Eo3ZO8Rlily/xltQPYZDeXt2eTWwO8DDZ/NVWUOI6VltatrVUillEyvmjjNvXdbZ0P/idMWGfOOIlmVey46dLrlaKfzv27dlCgYGeZuHsV7x5sA10lnuLo9XQ03NLdwfmlp5xM3Nx5AYLpCI5lu4j1nsFTK8SX7LdIk8dTNxBcfd71bKprjLYSGXQoInt93AlhXdB4oevajCNT5dwkrRnhW5CVlEESW44wndsdZxK6DbuQVl5rlniqa5PCo/4ekp/DlhdvqLexoE0nUNOwcYp2YQ9JfugZuWPZRPvid/Oij+PKgW8P+v1C9Olw74WTaOGcGLsJRCbiia8XFnuEf7tB1f1lj2SXx7nAewkK5/s0QmmnHr4VtlT/tvdQ+qVFmGcdwuge2V4raTN0guCwCzOpPMmi2YaSE8t/+vclAqoGiuDyJpIU9J7Pm8lLmainV6pamuN5QJSEAngQicrg25AEAQQJNnIPdnLz/WQUtwv9ghP+VGGUztgD2uLV9XnBQ9EpNHdjyAhEF8zrZze096n/7/BYThQrmczRxEskp2cehtAw/KjnPt1EbLNG6NZs=
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:(4636009)(396003)(346002)(39860400002)(136003)(376002)(36840700001)(46966006)(8676002)(478600001)(5660300002)(8936002)(6862004)(316002)(86362001)(26005)(186003)(36756003)(47076005)(82740400003)(70586007)(6486002)(82310400003)(53546011)(83380400001)(356005)(6506007)(81166007)(6512007)(336012)(2906002)(36860700001)(54906003)(2616005)(70206006)(33656002)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 17:52:42.1461
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bc1898f9-52bc-4fbd-39b2-08d8f9edf144
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:
	VE1EUR03FT032.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB4481

SGksDQoNCj4gT24gNiBBcHIgMjAyMSwgYXQgNDo1OCBwbSwgUm9nZXIgUGF1IE1vbm7DqSA8cm9n
ZXIucGF1QGNpdHJpeC5jb20+IHdyb3RlOg0KPiANCj4gT24gVHVlLCBBcHIgMDYsIDIwMjEgYXQg
MDQ6MDk6MzRQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdyb3RlOg0KPj4gDQo+PiANCj4+IE9uIDA2
LzA0LzIwMjEgMTU6NTksIFJvZ2VyIFBhdSBNb25uw6kgd3JvdGU6DQo+Pj4gT24gVHVlLCBBcHIg
MDYsIDIwMjEgYXQgMDM6MzA6MDFQTSArMDEwMCwgSnVsaWVuIEdyYWxsIHdyb3RlOg0KPj4+PiBT
byBJIHRoaW5rIHdlIHdhbnQgdG8gYmUgYWJsZSB0byBjb21waWxlIG91dCB0aGUgY29kZSBpZiBu
b3QgdXNlZC4gVGhhdA0KPj4+PiBzYWlkLCBJIHRoaW5rIHByb3ZpZGluZyBzdHViIHdvdWxkIGJl
IGJldHRlciB0byBhdm9pZCBtdWx0aXBsZSAjaWZkZWYgaW4gdGhlDQo+Pj4+IHNhbWUgZnVuY3Rp
b24uDQo+Pj4gDQo+Pj4gSSB0aGluayBwcm92aWRpbmcgc3R1YnMgaXMgdGhlIHdheSB0byBnbywg
dGhhdCBzaG91bGQgYWxsb3cgdG8gcmVtb3ZlDQo+Pj4gdGhlIHVubmVlZGVkIGNvZGUgd2l0aG91
dCBoYXZpbmcgdG8gZXhwbGljaXRseSBkcm9wIE1TSSBzdXBwb3J0LiBBcw0KPj4+IHNhaWQgYmVm
b3JlLCBJIHRoaW5rIGl0J3MgZmluZSB0byBwcm92aWRlIHRob3NlIHVuaW1wbGVtZW50ZWQgZm9y
IEFybQ0KPj4+IEFUTSwgY2FuIGJlIGZpbGxlZCBsYXRlciBpZiB0aGVyZSdzIG1vcmUgcHJlc3Np
bmcgUENJIHdvcmsgdG8gZG8NCj4+PiBmaXJzdC4NCj4+IA0KPj4gV2Ugc2hvdWxkIHJlbW92ZSB1
bm5lZWRlZCBhbmQgKmF2b2lkKiBhbGxvY2F0aW9uLiBQcm92aWRpbmcgc3R1YiBmb3INCj4+IGV4
aXN0aW5nIGZ1bmN0aW9ucyB3aWxsIG9ubHkgYWRkcmVzcyB0aGUgZmlyc3QgcHJvYmxlbS4NCj4+
IA0KPj4gRm9yIHRoZSBhbGxvY2F0aW9uIChzZWUgYWxsb2NfcGRldigpKSAsIHdlIHdpbGwgbmVl
ZCB0byBtb3ZlIGl0IGluIHNlcGFyYXRlDQo+PiBmdW5jdGlvbiBhbmQgZ2F0ZSB0aGVtIHRvIHBy
ZXZlbnQgdGhlIGFsbG9jYXRpb24uDQo+PiANCj4+IEl0IHdvdWxkIGJlIHdyb25nIHRvIGdhdGUg
dGhlIGNvZGUgd2l0aCAjaWZkZWYgQ09ORklHX1g4Ni4gU28gSSB0aGluaw0KPj4gUmFodWwncyBp
ZGVhIHRvIHByb3ZpZGUgdGhlIG5ldyAjaWZkZWYgaXMgY29ycmVjdC4NCj4gDQo+IEkgdGhpbmsg
YWxsIHRoaXMgbmVlZHMgdG8gYmUgaW4gdGhlIGNvbW1pdCBtZXNzYWdlIHRoZW4sIGJlY2F1c2Ug
ZnJvbQ0KPiBteSByZWFkaW5nIG9mIHRoZSBjdXJyZW50IG1lc3NhZ2UgaXQgc2VlbXMgbGlrZSBN
U0kgY29kZSBpcyBvbmx5DQo+IHJlbW92ZWQgYmVjYXVzZSBNU0kgc3VwcG9ydCBpcyBub3QgaW1w
bGVtZW50ZWQgb24gQXJtLCByYXRoZXIgdGhhbiBBcm0NCj4gbm90IHJlcXVpcmluZyBzdWNoIHN0
cmljdCB0cmFja2luZyBvZiBNU0kgYWNjZXNzZXMgYW5kIE1TSSBpbnRlcnJ1cHQNCj4gc2V0dXAu
IExpa2VseSB0aGUgbmFtaW5nIG9mIHRoZSBvcHRpb24gbmVlZHMgdG8gYmUgYWRqdXN0ZWQgYWxz
bw0KPiB0b2dldGhlciB3aXRoIHRoZSByZWR1Y3Rpb24gb2YgaXQncyBzY29wZSB0byBzdHVmZiB0
aGF0IGV4cGxpY2l0bHkNCj4gbmVlZHMgdG8gYmUgcmVtb3ZlZCBpbiB0aGUgcHJlcHJvY2Vzc29y
IG9wcG9zZWQgdG8gYWRkaW5nIGFyY2gNCj4gc3BlY2lmaWMgc3R1YnMuDQo+ICANCg0KDQpUaGFu
a3MgZXZlcnlvbmUgZm9yIHJldmlld2luZyB0aGUgY29kZS4NCg0KTVNJIHJlbGF0ZWQgY29kZSBp
biB0aGUgInBhc3N0aHJvdWdoL3BjaS5j4oCdIGZpbGUgaXMgbm90IHVzZWZ1bCBmb3IgQVJNIHdo
ZW4gTVNJIGludGVycnVwdHMgYXJlIGluamVjdGVkDQp2aWEgR0lDdjMgSVRTIGFuZCBhdCB0aGUg
c2FtZSB0aW1lIHRoZXJlIGlzIG5vIHBsYW4gdG8gc3VwcG9ydCBNU0kgaW50ZXJydXB0cyBmb3Ig
QVJNIHdpdGhvdXQgR0lDdjMNCklUUyB0aGF0J3Mgd2h5IEkgdGhvdWdodCBpdCBpcyBvayB0byBj
b21waWxlIG91dCB0aGUgY29kZSB3aXRoIHRoZSBuZXcga2NvbmZpZyBvcHRpb24uDQoNCkkgZGlk
buKAmXQgcmVhbGl6ZSB0aGF0IEhBU19QQ0lfTVNJIG9wdGlvbiB3aWxsIG5vdCB3b3JrIGZvciB4
NjggaWYgc29tZW9uZSBkaXNhYmxlcyB0aGUgSEFTX1BDSV9NU0kgb3B0aW9uIGZvciBYODYuIA0K
SSB3YXMgdW5kZXIgdGhlIGltcHJlc3Npb24gdGhhdCBNU0kgZnVuY3Rpb25hbGl0eSBhbHdheXMg
YmUgZW5hYmxlZCBmb3IgeDg2Lg0KDQpJIGFsc28gYWdyZWUgdGhhdCBoYXZpbmcgdG9vIG1hbnkg
I2lmZGVmIGluIHRoZSBjb2RlIGlzIG5vdCBnb29kIGFzIGl0IG1ha2VzIGNvZGUgaGFyZGVyIHRv
IHJlYWQuDQpJIHdpbGwgdHJ5IHRvIG1vZGlmeSB0aGUgY29kZSB0byBhZGQgYSBzdHViIHZlcnNp
b24gb2YgdGhlIHVubmVlZGVkIGNvZGUgZm9yIEFybSBhbmQgd2lsbCBzZW5kIHRoZSBuZXh0IHZl
cnNpb24gb2YgdGhlIHBhdGNoLg0KSSB3aWxsIGFsc28gbW9kaWZ5IHRoZSBjb21taXQgbWVzc2Fn
ZSBhY2NvcmRpbmdseS4NCg0KUmVnYXJkcywNClJhaHVsDQoNCj4gDQo+IFRoYW5rcywgUm9nZXIu
DQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 18:06:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 18:06:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106884.204339 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUCZe-0004sl-Mz; Wed, 07 Apr 2021 18:06:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106884.204339; Wed, 07 Apr 2021 18: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 1lUCZe-0004se-Iy; Wed, 07 Apr 2021 18:06:42 +0000
Received: by outflank-mailman (input) for mailman id 106884;
 Wed, 07 Apr 2021 18:06: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 1lUCZd-0004sZ-60
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 18:06: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 1lUCZW-0002qA-Md; Wed, 07 Apr 2021 18:06:34 +0000
Received: from 54-240-197-233.amazon.com ([54.240.197.233]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUCZW-0006Ws-CU; Wed, 07 Apr 2021 18:06: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=dBa7CWhB0OTByIuNtqoL61JE69DlmcrrbF4W9M1CZ6U=; b=HYpy3NR1SvWsTDKf0spz2CUywo
	E+6MBQYgocNBm81lBGC3qTOdW1hPxaU7Ra6rti6snn6og1RIqwskSf4sgH37q8Gz5IAOU8DQrEmNL
	p1a2yL61D4lyo2ZeDN+d9H10M5ctG7xlvflcq4iU3xa5Ris+WVpqxL3O3mRu1g3Gm1vU=;
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
To: Jan Beulich <jbeulich@suse.com>, Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Paul Durrant <paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
 <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
 <b0eb0833-50aa-d9a1-3265-3255970ef210@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <4ab1e7ed-cdf6-1b06-4f55-bbb981cade91@xen.org>
Date: Wed, 7 Apr 2021 19:06:31 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b0eb0833-50aa-d9a1-3265-3255970ef210@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Jan,

On 06/04/2021 16:25, Jan Beulich wrote:
> On 06.04.2021 16:30, Julien Grall wrote:
>> Hi Roger,
>>
>> On 06/04/2021 15:13, Roger Pau Monné wrote:
>>> On Tue, Apr 06, 2021 at 12:39:11PM +0100, Rahul Singh wrote:
>>>> MSI support is not implemented for ARM architecture but it is enabled
>>>> for x86 architecture and referenced in common passthrough/pci.c code.
>>>>
>>>> Therefore introducing the new flag to gate the MSI code for ARM in
>>>> common code to avoid compilation error when HAS_PCI is enabled for ARM.
>>>
>>> Is such option really interesting long term?
>>>
>>> IIRC PCI Express mandates MSI support, at which point I don't see much
>>> value in being able to compile out the MSI support.
>>
>> I am pretty sure there are board out with PCI support but no MSI
>> support. Anyway, even if the spec may mandate it...
>>
>>>
>>> So while maybe helpful for Arm PCI efforts ATM, I'm not sure it
>>> warrants a Kconfig option, I would rather see Arm introduce dummy
>>> helpers for the missing functionality, even if unimplemented at the
>>> moment.
>>
>> ... from my understanding, most of (if not all) the MSI code is not very
>> useful on Arm when using the GICv3 ITS.
>>
>> The GICv3 ITS will do the isolation for you and therefore we should not
>> need to keep track of the state at the vPCI level.
> 
> But that's then not "has PCI MSI" but "need to intercept PCI MSI
> accesses", i.e. I don't think the Kconfig option is correctly
> named. If a device with MSI support is used, you can't make that
> MSI support go away, after all.

That's actually a good point. Rahul, do you think the config can be 
renamed to something like CONFIG_PCI_MSI_NEED_INTERCEPT?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 18:18:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 18:18:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106890.204354 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUCko-0005rS-Pe; Wed, 07 Apr 2021 18:18:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106890.204354; Wed, 07 Apr 2021 18:18: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 1lUCko-0005rL-MN; Wed, 07 Apr 2021 18:18:14 +0000
Received: by outflank-mailman (input) for mailman id 106890;
 Wed, 07 Apr 2021 18:18: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 1lUCkn-0005rG-76
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 18:18: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 1lUCkl-00033A-Nc; Wed, 07 Apr 2021 18:18:11 +0000
Received: from 54-240-197-233.amazon.com ([54.240.197.233]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUCkl-0007KG-De; Wed, 07 Apr 2021 18: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=VXVYu3Y20NlIZqA2sOvrBQ3YXhMqU2scmRniSTf3EgQ=; b=4EE0hSgl6nsFgkPBkxlFFbDLNs
	2qctr019Igj0tXQ3sHwumeGyEmLlhFe6Jp4zpWhiNDUrsZTpD/RAEXWnCE7hOS0660XupYVh4vA5v
	/Q+KmyK7sV7NI2QX4IK9PnAXweyb2CJN2yZCdxZdfYX27WYeO8PfONQXpQ451swDI9Ik=;
Subject: Re: [PATCH 2/2] xen/gunzip: Allow perform_gunzip() to be called
 multiple times
To: Jan Beulich <jbeulich@suse.com>
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210402152105.29387-1-julien@xen.org>
 <20210402152105.29387-3-julien@xen.org>
 <2caf0bed-9a31-64a8-e764-2ed222f2e828@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <e6a9bcc4-14c7-7f5f-ee13-f2e45742aef5@xen.org>
Date: Wed, 7 Apr 2021 19:18:09 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <2caf0bed-9a31-64a8-e764-2ed222f2e828@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 07/04/2021 11:39, Jan Beulich wrote:
> On 02.04.2021 17:21, Julien Grall wrote:
>> --- a/xen/common/inflate.c
>> +++ b/xen/common/inflate.c
>> @@ -238,6 +238,12 @@ STATIC const ush mask_bits[] = {
>>   static unsigned long INITDATA malloc_ptr;
>>   static int INITDATA malloc_count;
>>   
>> +static void init_allocator(void)
>> +{
>> +    malloc_ptr = free_mem_ptr;
>> +    malloc_count = 0;
>> +}
>> +
>>   static void *INIT malloc(int size)
>>   {
>>       void *p;
> 
> I'm sorry for noticing this only now, but I'm afraid this may break
> the build in certain environments / configurations.

You actually mentioned it on the original thread that reported the bug. 
But I forgot to add INIT. Sorry for that :(.

> Iirc clang is
> relatively likely to not inline functions in debug builds even when
> they're used just once. Yet when the new function doesn't end up
> getting inlined, it needs INIT added or else the cmd_obj_init_o
> checking would find a non-empty .text section. (If there's no actual
> build breakage anywhere, I can also address this in my to-be-re-based
> "gunzip: drop INIT{,DATA} and STATIC", which is intended to go in as
> soon as the tree is fully open again.)

The pipeline actually reported some failure. But I initially didn't 
notice them. I think we want to fix it because your rework, so I will 
send a patch.

Sorry for the breakage.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 18:27:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 18:27:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106899.204366 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUCto-0006os-Mc; Wed, 07 Apr 2021 18:27:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106899.204366; Wed, 07 Apr 2021 18:27:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUCto-0006ol-JL; Wed, 07 Apr 2021 18:27:32 +0000
Received: by outflank-mailman (input) for mailman id 106899;
 Wed, 07 Apr 2021 18:27: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 1lUCtm-0006og-SL
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 18:27: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 1lUCtl-0003AZ-Jv; Wed, 07 Apr 2021 18:27:29 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUCtl-00082B-7F; Wed, 07 Apr 2021 18: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=Message-Id:Date:Subject:Cc:To:From;
	bh=QU9LxEd/xA9jkmgV1v8fY23G82LJl35wNTL+ArBVMu4=; b=50m9b7Du1v+ESNBZzT9Ca/TN61
	21W27JBCWYM0JHo4AUBx/fpyCqEaWHrvFEQiBXS51bCG9quUGHpoNUkUgiWQ8B8AmW4jqPOIaZl8t
	9RAHbTEw7x1OPHT8W3mnHF/Ino5WPa5DNHJT8hGq/aVjSRi5JOLHs4Eoy33GT/Y3fldY=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH] xen/gunzip: Fix build with clang after 33bc2a8495f7
Date: Wed,  7 Apr 2021 19:27:26 +0100
Message-Id: <20210407182726.26603-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

The compilation will fail when building Xen with clang and
CONFIG_DEBUG=y:

make[4]: Leaving directory '/oss/xen/xen/common/libelf'
  INIT_O  gunzip.init.o
Error: size of gunzip.o:.text is 0x00000019

This is because the function init_allocator() will not be inlined
and is not part of the init section.

Fix it by marking init_allocator() with INIT.

Fixes: 33bc2a8495f7 ("xen/gunzip: Allow perform_gunzip() to be called multiple times")
Reported-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 xen/common/inflate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/common/inflate.c b/xen/common/inflate.c
index d8c28a3e9593..c593b94d481e 100644
--- a/xen/common/inflate.c
+++ b/xen/common/inflate.c
@@ -238,7 +238,7 @@ STATIC const ush mask_bits[] = {
 static unsigned long INITDATA malloc_ptr;
 static int INITDATA malloc_count;
 
-static void init_allocator(void)
+static void INIT init_allocator(void)
 {
     malloc_ptr = free_mem_ptr;
     malloc_count = 0;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 19:24:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 19:24:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106905.204382 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUDmN-0003cT-1F; Wed, 07 Apr 2021 19:23:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106905.204382; Wed, 07 Apr 2021 19:23: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 1lUDmM-0003c4-UV; Wed, 07 Apr 2021 19:23:54 +0000
Received: by outflank-mailman (input) for mailman id 106905;
 Wed, 07 Apr 2021 19:23:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qzdh=JE=gmail.com=christopher.w.clark@srs-us1.protection.inumbo.net>)
 id 1lUDmK-0003bz-V9
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 19:23:53 +0000
Received: from mail-ot1-x32d.google.com (unknown [2607:f8b0:4864:20::32d])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 85e5cd0c-e185-4c84-8cce-a56787d58571;
 Wed, 07 Apr 2021 19:23:51 +0000 (UTC)
Received: by mail-ot1-x32d.google.com with SMTP id
 68-20020a9d0f4a0000b02901b663e6258dso19119298ott.13
 for <xen-devel@lists.xenproject.org>; Wed, 07 Apr 2021 12:23: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: 85e5cd0c-e185-4c84-8cce-a56787d58571
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=ZG8dNjLgKHWguic5fRmPLrhHTwWgDNYwLC7kfPBPkDI=;
        b=uRA8vlrBqhimzm4AvdK5rzuVd78FrvAHsLGGcPwvLe+6BbDxYbI76k2CF2ql/eYA5i
         EF+0YzHDNERym6dJOYhPUYSmjhEqi8E/kE9HOsgy0kJY8SXK6qrLHpkHkdAjp655MvRP
         057fpvyJMvjGNu8Hvf8Wq7WYdbTltHeuyga0rDawAYZAOx5C+QYwUM6VraJpuXduykxQ
         kcI9M9QLsRImqHWAUfVYpdNcRFDy4gIcouygL2v4hhnVz5yuTGy906rrj4cQWLXmOX2/
         t5QgTC+SikxW737T25r2AoY+lngmpOkYLfbVWwYOu1Wirw07v3zAOEYUHKwaBKdKj7w+
         46Pw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=ZG8dNjLgKHWguic5fRmPLrhHTwWgDNYwLC7kfPBPkDI=;
        b=qRLTcf3x29gP9rlWiPZleySi8LuuN5Iq8QAbYcLFGTu8AFaY5ZYDrtfFGW2CGQW0fi
         OmivV7fCDw4+O7S+fFxM4uUlFVvdNDomKev9qjFZgoRmwEccSFIvFJO4UofgbTKTDoYT
         DILMszaFWxW5PIoZT0CBY+5BRoMJ8jmd3s3FEljir9VTZzKVVsK4TAxdhacVRZ4nkchW
         eGLVRXvOB07EtSNKUGaNI6aD9PRhSyhK1HbIZ8iJbuDTfPKPsxLmzdkNnM+Bq5G782Zh
         Jc9e8tIsf3KEmGSEp6o80XQKg9EEejUrFsXnzLeFprjSajnUQQhXv3tsr4ejutrPRwkg
         eeEA==
X-Gm-Message-State: AOAM531GkbehiO3M1y87XJG4uH5xspvQZ99oDEqrNe8UBykX00Ep10DB
	P8nPCRw2SdwWw1+Zs5igtnKx2z25e4zky9CYo0g=
X-Google-Smtp-Source: ABdhPJxV2iav5USRnUA98DQvn2RrK66SdOQbFIYLj7pIbSxhsQ7fFODDZ/W5E1uVSloe9tFsxjjUSNwcB9972B1j+4s=
X-Received: by 2002:a9d:70ce:: with SMTP id w14mr4192391otj.183.1617823431203;
 Wed, 07 Apr 2021 12:23:51 -0700 (PDT)
MIME-Version: 1.0
References: <20210316031814.10311-1-dpsmith@apertussolutions.com>
 <6314f50f-b4fc-e472-4c9a-3591e168d2c3@apertussolutions.com> <bd61f993-f719-ec87-638f-f53d6e983c3e@suse.com>
In-Reply-To: <bd61f993-f719-ec87-638f-f53d6e983c3e@suse.com>
From: Christopher Clark <christopher.w.clark@gmail.com>
Date: Wed, 7 Apr 2021 12:23:39 -0700
Message-ID: <CACMJ4GY1QpTYUYV5oG5zOfah_PzPq_-__K3-F3qUfzX95R3w8g@mail.gmail.com>
Subject: Re: [PATCH 0/2] Introducing hyperlaunch capability design (formerly:
 DomB mode of dom0less)
To: Jan Beulich <jbeulich@suse.com>
Cc: "Daniel P. Smith" <dpsmith@apertussolutions.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Stefano Stabellini <stefano.stabellini@xilinx.com>, Julien Grall <jgrall@amazon.com>, 
	Julien Grall <Julien.grall.oss@gmail.com>, iwj@xenproject.org, Wei Liu <wl@xen.org>, 
	George Dunlap <george.dunlap@citrix.com>, Rich Persaud <persaur@gmail.com>, 
	Bertrand Marquis <Bertrand.Marquis@arm.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	luca.fancellu@arm.com, paul@xen.org, Adam Schwalm <adam.schwalm@starlab.io>, 
	xen-devel <xen-devel@lists.xenproject.org>
Content-Type: text/plain; charset="UTF-8"

On Tue, Mar 30, 2021 at 7:31 AM Jan Beulich <jbeulich@suse.com> wrote:
>
> On 16.03.2021 04:56, Daniel P. Smith wrote:
> > To assist in reading, please find attached rendered copies of the design
> > docs. It should be noted that due to poor rendering by pandoc, we forced
> > the tables to stay as ASCII tables in the patches whereas the attached
> > docs have the tables rendered properly by rst2pdf.
>
> In section 3.6 I found "As a result, on x86 the hyperlaunch capability does
> not rely on nor preclude any specific BIOS boot protocol, i.e legacy BIOS
> boot or UEFI boot. The only requirement is that the boot loader supports
> the Multiboot2 (MB2) protocol." I'm afraid the two sentences contradict
> one another, as UEFI on its own doesn't provide MB2 functionality. It is
> my understanding that you don't require this anyway - what you need is a
> way to load modules beyond just Dom0 kernel and an initrd.

Thanks - we'll amend the doc. Given the already sizeable scope of the
project, our current approach for host UEFI is to recommend use of
GRUB.efi to load Xen and the initial domains via the multiboot2 method.

> I'm also struggling to see how you mean to associate the (MB2) modules
> passed to Xen with the individual functions. I.e. I don't see how it will
> be ensure that the embedded mb-index is in sync with the order or modules
> actually supplied.

To make sure I'm following the concern raised here, my understanding is:

- the multiboot module list is ordered and stable, so that the order
  that the bootloader provides the modules in is the same order in which
  Xen receives them, in the multiboot data structure, so the modules can
  be referenced by an index into that list

- for a given Launch Control Module file (expressed in a Device Tree, as
  described in our second design document), the provided multiboot
  modules will need to match, both in type (kernel, ramdisk, microcode,
  xsm policy) and order

- we think that at some point the LCM will end up being dynamically
  generated by an enlightened bootloader, assembling it from the
  bootloader config file, which will list the modules and their types

> As to modules - iirc there are placement restrictions by at least some
> boot loaders (below 4Gb). If that's correct, do you have any thoughts
> towards dealing with the limited space available to hold these modules?
> I've seem systems with lots of memory, but with as little as just 1Gb
> below the 4Gb boundary.

At this point, I don't think that we'll break anything that currently
works, and that hardware or platform limitations can always constrain
what is deployable.

Christopher


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 20:15:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 20:15:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106916.204400 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUEZp-0008B6-Te; Wed, 07 Apr 2021 20:15:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106916.204400; Wed, 07 Apr 2021 20:15:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUEZp-0008Az-QV; Wed, 07 Apr 2021 20:15:01 +0000
Received: by outflank-mailman (input) for mailman id 106916;
 Wed, 07 Apr 2021 20:15:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qzdh=JE=gmail.com=christopher.w.clark@srs-us1.protection.inumbo.net>)
 id 1lUEZp-0008Au-5J
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 20:15:01 +0000
Received: from mail-ot1-x335.google.com (unknown [2607:f8b0:4864:20::335])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1b802661-70ee-45f4-8610-72a3455779bb;
 Wed, 07 Apr 2021 20:15:00 +0000 (UTC)
Received: by mail-ot1-x335.google.com with SMTP id
 s16-20020a0568301490b02901b83efc84a0so24963otq.10
 for <xen-devel@lists.xenproject.org>; Wed, 07 Apr 2021 13:15: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: 1b802661-70ee-45f4-8610-72a3455779bb
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc:content-transfer-encoding;
        bh=5uG9lxYhHgyiHF740meal13Prr1RWoX7mzKdVlWs8qA=;
        b=V38X0u7hBiNQS6V98F3Advke2RVTgNjoGEEWkd6AtfmjbMPIxmloAjtEWilJrdfY3M
         6HrcDrWFaarELKd767OPpIs9F/wO2tac6dFT3wKS8s2KPYOK7LKhGMo7HvPd8fSD1ymN
         g06j8NxSVxay7Dcxa/ypwTe2eRSEEBV6vv8nLbSzQetDwRA8nvyp7xdn3OQbQ9BAURyA
         87zriKwb7IKSts0aQJO4IMSH8zR04DXJK3na5lTMu22tk0OwAPDNOkXLqW1cwH94+J/L
         X0FbRzhIF/2DAghRUxMRCSI29kv8ZVG6a+80bGQOc4l7fPOHjFl72pGghKdYmuuf2VtV
         t5LQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc:content-transfer-encoding;
        bh=5uG9lxYhHgyiHF740meal13Prr1RWoX7mzKdVlWs8qA=;
        b=mohKKmm60HlBiSnR3vlghOX1Hr7oHPPh3qx+82uhXjbxSkwabVr/2n6gndYVOXgeS+
         eUeLfrzpMukHohmi+8dEW2bYnt9lAx2Z0U/i9K1wAGpT9PNX1RTgJcvY4Gxa/2HmCRFZ
         84wvNlMe/UJt5Y9hbNFuL9lu4QEoSrwThxk0mWo8ZLYdyBRKZ+VbA+eS37Fihv2CrCkM
         rqiOV6SOx8VFCuLlfSwgZyKKSMxRWf3s60ch7rUU/BlFDBvBOJj+MmWJliBprbUr9o17
         9RavenVPZHS0T6V+bRs5oWLnuucXTn7Io7ZPneSyfBxHa5Mb31HEBY9UHEWQlfIQdZqW
         1xZg==
X-Gm-Message-State: AOAM531wEmVxaVy/mEAg49L7XNbr8Yu4m/KLfhMlnOEnyeUs1/ZvlWhE
	ic7uGGBxQUT3YG7tl0QrIQt/whvrBMhTdT6FjoM=
X-Google-Smtp-Source: ABdhPJxZ0yYhLwO8KB+jIQ4QIRdiASWJe4pCAauWM4fRWBVdPkAhPu2OZ6M6xs7S3pmdwNck8bhLNEW6y3BVhDklaEw=
X-Received: by 2002:a9d:70ce:: with SMTP id w14mr4355501otj.183.1617826499658;
 Wed, 07 Apr 2021 13:14:59 -0700 (PDT)
MIME-Version: 1.0
References: <20210316031814.10311-1-dpsmith@apertussolutions.com>
 <20210316031814.10311-2-dpsmith@apertussolutions.com> <YFODOnQRAntdETY7@Air-de-Roger>
 <CACMJ4GaWtSWAyqbgqDa-DuLy1bYCBx8E6PucxtGfVeiraAy5cA@mail.gmail.com>
 <YFrxznV1kXeXsRCa@Air-de-Roger> <CACMJ4GZMNfbCjTKR5ngQBMwwAfUnSOptP+UJV8BcNqKAUy9Row@mail.gmail.com>
 <YFxKjeGGTG5naH/I@Air-de-Roger> <FA42F3EC-AD7B-485A-9B50-8D8F8210C9F6@citrix.com>
 <YFxcqCtnLe0UUVdy@Air-de-Roger> <alpine.DEB.2.21.2103250945390.439@sstabellini-ThinkPad-T480s>
In-Reply-To: <alpine.DEB.2.21.2103250945390.439@sstabellini-ThinkPad-T480s>
From: Christopher Clark <christopher.w.clark@gmail.com>
Date: Wed, 7 Apr 2021 13:14:48 -0700
Message-ID: <CACMJ4GarYwAOpyeJhh2Udm-e0QXm_mrqsv=rpBDwyJAKSjZzrQ@mail.gmail.com>
Subject: Re: [PATCH 1/2] docs/designs/launch: hyperlaunch design document
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	George Dunlap <George.Dunlap@citrix.com>, "Daniel P. Smith" <dpsmith@apertussolutions.com>, 
	xen-devel <xen-devel@lists.xenproject.org>, Andrew Cooper <Andrew.Cooper3@citrix.com>, 
	Stefano Stabellini <stefano.stabellini@xilinx.com>, Julien Grall <jgrall@amazon.com>, 
	Julien Grall <Julien.grall.oss@gmail.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, 
	Jan Beulich <jbeulich@suse.com>, Rich Persaud <persaur@gmail.com>, 
	Bertrand Marquis <Bertrand.Marquis@arm.com>, "luca.fancellu@arm.com" <luca.fancellu@arm.com>, 
	"paul@xen.org" <paul@xen.org>, Adam Schwalm <adam.schwalm@starlab.io>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Mar 25, 2021 at 9:55 AM Stefano Stabellini
<sstabellini@kernel.org> wrote:
> On Thu, 25 Mar 2021, Roger Pau Monn=C3=A9 wrote:
> > On Thu, Mar 25, 2021 at 10:14:31AM +0100, George Dunlap wrote:
> > >
> > > > On Mar 25, 2021, at 8:32 AM, Roger Pau Monne <roger.pau@citrix.com>=
 wrote:
> > > > On Wed, Mar 24, 2021 at 05:53:26AM -0700, Christopher Clark wrote:
> > > >> On Wed, Mar 24, 2021 at 1:01 AM Roger Pau Monn=C3=A9 <roger.pau@ci=
trix.com> wrote:
> > > >>> On Tue, Mar 23, 2021 at 10:39:53AM -0700, Christopher Clark wrote=
:
> > > >>>> On Thu, Mar 18, 2021 at 9:43 AM Roger Pau Monn=C3=A9 <roger.pau@=
citrix.com> wrote:
> > > >>> If you offload domain creation of guests with
> > > >>> pci-passthrough devices to a control domain and/or hardware domai=
n,
> > > >>> I'm not sure I see the difference from normal domain creation, ie=
:
> > > >>> it's no longer something specific to hyperlaunch, as I could achi=
eve
> > > >>> the same by using the existing xendomains init script.
> > > >>
> > > >> So that's not what we've proposed, and hopefully not what we'll ne=
ed to do.
> > > >>
> > > >> Do you know if there is a need to perform work to support the
> > > >> assignment of PCI devices at the point of domain creation (ie. in
> > > >> domain_create), rather than handling it in a later step of domain
> > > >> configuration, prior to the domain being started?
> > > >
> > > > So while I think you could indeed create a domain from the hypervis=
or
> > > > in a paused state and attach the pci devices later from a
> > > > control/hardware domain, I don't see much benefit in doing it. If y=
ou
> > > > need to end up waiting for a control/hardware domain to attach the
> > > > devices and unpause you might as well do the whole domain creation
> > > > from such control/hardware domain.
> > >
> > > My understanding was that one of the primary advantages of domB was
> > > that you could compile and run arbitrary code in whatever language
> > > you wanted to, using already known tools.  If *all* we want to do is
> > > to assign some pre-defined specific BDFs to specific domains, then
> > > sure, we could add that capability to Xen.
> >
> > Well, it's not so easy because we require QEMU or pciback ATM on x86
> > in order to do pci passthrough to guests, so assigning BDFs to
> > specific domains from the hypervisor would need to be done using vPCI
> > (which is not yet ready for unprivileged guest usage) and only support
> > HVM kind of guests strictly.
> >
> > Doing passthrough to PV guests directly from the hypervisor is
> > impossible AFAICT without putting pciback inside of the hypervisor.
> >
> > > But suppose you wanted
> > > to have the flexibility to handle changes in hardware at boot time?
> > > =E2=80=9CScan through the PCI bus and assign anything that looks like=
 a
> > > network card to domNet, and anything that looks like a USB
> > > controller to domUSB=E2=80=9D is something you could easily do in dom=
B, but
> > > would be way too complicated to add to Xen.
> >
> > Right, but then you might as well create the domain from domB instead
> > of doing it in the hypervisor?
> >
> > I'm not arguing about not using domB, I just don't see the benefit of
> > creating a paused domain from the hypervisor that then requires the
> > intervention of a further domain (domB) in order to finish creation.
> > Won't it be simpler to just create the domain and attach the pci
> > devices from domB?
>
> I think that the ability of creating multiple VMs from Xen is actually a
> very good one to have for a few reasons. It would align x86 with ARM, it
> would be useful in cases where PCI passthrough is not involved, and it
> is a powerful tool to have in our toolbox.
>
> I see that handling PCI passthrough at domain creation time can be
> difficult, so I think Christopher's solution is a good compromise.
>
> FYI for dom0less/ARM we have been discussing doing device assignment at
> creation time, but the idea was to provide the PCI topology in device
> tree to Xen to help with discovery.

a quick note:

- thanks for all the feedback and questions in this thread, which we
will cover in the next version of the design document

- we have made available the code developed for our prototype, first
development milestone:
https://github.com/apertussolutions/xen-hyperlaunch/tree/hyperlaunch-protot=
ype-lcm

- we look forward to discussion on the Community Call tomorrow

Christopher


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 21:27:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 21:27:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106929.204417 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUFhX-0005ul-Cj; Wed, 07 Apr 2021 21:27:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106929.204417; Wed, 07 Apr 2021 21:27: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 1lUFhX-0005ue-9V; Wed, 07 Apr 2021 21:27:03 +0000
Received: by outflank-mailman (input) for mailman id 106929;
 Wed, 07 Apr 2021 21:27:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gfIe=JE=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lUFhV-0005uZ-J2
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 21:27:01 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7c944368-db63-48c7-8a71-54e00bc70660;
 Wed, 07 Apr 2021 21:27:01 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id F262E6103E;
 Wed,  7 Apr 2021 21:26: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: 7c944368-db63-48c7-8a71-54e00bc70660
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1617830820;
	bh=ojqS+OP+pnrmdghnXuDADCExqLjXsjKsvylLWQWxRbA=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=hbrLFad/YFO40omDnXfyvKFv3z+8UvJOBgM1QCyyU4BHATFYy7UzPQF9r5CxMDbSh
	 R0gtfLgj9i2zPUjU1Ii0TfCdl3lzC8/aWjPbYXqBlKAhQIiaH6dDKMj43kIm18OGmU
	 UuQiPeOhu5kOVd24D0tCeTlYnWxcyZVn2uJPPjPut6DazMbC5+JwL5wsHLqHyhuedx
	 4LcO5n5nKlYm9TaiDUwYmvUhVxc3q1DzwEDfWnbVxIVPR1kTVtrQ/PEy8XPKQJAWwJ
	 GZSBMiJx8Dq3MEZJnne4tirPD0gpMyfEsAax78GmzUhOtsYxm4mceBA1yknMOSMgyk
	 /pMQ2IukBy8Dw==
Date: Wed, 7 Apr 2021 14:26:59 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Jan Beulich <jbeulich@suse.com>
cc: Luca Fancellu <luca.fancellu@arm.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, 
    xen-devel@lists.xenproject.org
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
In-Reply-To: <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
Message-ID: <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
References: <20210406103603.8530-1-luca.fancellu@arm.com> <20210406103603.8530-4-luca.fancellu@arm.com> <073e28bc-ad94-429d-6384-744864d12b57@suse.com> <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s> <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com> <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 7 Apr 2021, Jan Beulich wrote:
> On 07.04.2021 10:42, Luca Fancellu wrote:
> > Just to be sure that we are in the same page, are you suggesting to modify the name
> > In this way?
> > 
> > struct gnttab_cache_flush {
> > -    union {
> > +    union xen_gnttab_cache_flush_a {
> >         uint64_t dev_bus_addr;
> >         grant_ref_t ref;
> >     } a;
> > 
> > Following this kind of pattern: xen_<upper struct name>_<member name> ?
> 
> While in general I would be fine with this scheme, for field names like
> "a" or "u" it doesn't fit well imo.

"a" is a bad name anyway, even for the member. We can take the
opportunity to find a better name. Almost anything would be better than
"a". Maybe "refaddr"?


> I'm also unconvinced this would be
> scalable to the case where there's further struct/union nesting.

How many of these instances of multilevel nesting do we have? Luca might
know. Probably not many? They could be special-cased.


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 21:44:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 21:44:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106937.204429 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUFyK-0007ha-0w; Wed, 07 Apr 2021 21:44:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106937.204429; Wed, 07 Apr 2021 21: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 1lUFyJ-0007hT-Tq; Wed, 07 Apr 2021 21:44:23 +0000
Received: by outflank-mailman (input) for mailman id 106937;
 Wed, 07 Apr 2021 21:44:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5i9k=JE=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lUFyI-0007hO-Bz
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 21:44:22 +0000
Received: from userp2130.oracle.com (unknown [156.151.31.86])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6b4d1ae9-0e67-4690-91bc-d0f3964715c1;
 Wed, 07 Apr 2021 21:44:21 +0000 (UTC)
Received: from pps.filterd (userp2130.oracle.com [127.0.0.1])
 by userp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 137LhiLV133867;
 Wed, 7 Apr 2021 21:44:04 GMT
Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80])
 by userp2130.oracle.com with ESMTP id 37rva641r5-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Wed, 07 Apr 2021 21:44:04 +0000
Received: from pps.filterd (userp3030.oracle.com [127.0.0.1])
 by userp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 137LQ0AX008995;
 Wed, 7 Apr 2021 21:44:04 GMT
Received: from nam12-dm6-obe.outbound.protection.outlook.com
 (mail-dm6nam12lp2173.outbound.protection.outlook.com [104.47.59.173])
 by userp3030.oracle.com with ESMTP id 37rvbew6sa-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Wed, 07 Apr 2021 21:44:03 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by SJ0PR10MB4543.namprd10.prod.outlook.com (2603:10b6:a03:2d9::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Wed, 7 Apr
 2021 21:44:01 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::f489:4e25:63e0:c721]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::f489:4e25:63e0:c721%7]) with mapi id 15.20.3999.032; Wed, 7 Apr 2021
 21:44:01 +0000
Received: from [10.74.100.253] (138.3.201.61) by
 SN7PR04CA0037.namprd04.prod.outlook.com (2603:10b6:806:120::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 7 Apr 2021 21:43:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6b4d1ae9-0e67-4690-91bc-d0f3964715c1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=ZZ+rXfjgDEQcFGGboBe359cL++lrH7SACD7Zoxz1DrY=;
 b=Uc2AM26KQKM0MPzD2/58nw6ThwPVT3NrLK65igeYxLecdbl9hKwS03WnXACW1xLzOyAT
 VAzAvfmnnqHcIcXJBJWfhYv8BW89CWTJL6KrOkwU3q+OSPqm1QgOZlllJ1vH/wplyXPT
 vqiNy3WgtVxptOJkW6KxXHAQ/VqZVGAibMb09IfFnqrnIy7Ftk5rIvAghdbQ05sz6RDg
 twL0Z5bOlJKuZJaHqvjCxRg1VuSN5MXMgr99neKpX9DRSIkTVxMaxkFNi4dC9TX5JiMW
 pVdeRtaJLvy8fvJ8dr9DuCsBmjRNXTfYNPQqbHG0CBgvjPCTarUefDP5ZGQr2SAw3BvS qQ== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iNGMaiOKcu0FAaUYAhXojfD1qBi8A1crpvHXZofLpG9G3ZXSsYPXkX0XBH4pFP7b0raBcP6wQxzf876lLcU21SC34EWvy2zBsr+HhxcwWu2rFU005014zqdpF81dY5/tTjuhM2K6/9V7G007FmGTgOa0w9E3AhEY2ggeD2MTx/ZGCh1zkg1oVccz39uUS3AAmIgahv8sbC2S0osMHuoyGktsPIIlUdLdKR9xIHlgim3fsdwrpSySmDH0mbtKM5HZAm6HKWE5DzLtLHh72ByaGd5wBNAI8UfyVkWLq0UfoEmmIkcFQQYDLSrwgPqdOXBeTCCIayx1sV+9k6fXhXAB0Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZZ+rXfjgDEQcFGGboBe359cL++lrH7SACD7Zoxz1DrY=;
 b=UW4Gb4rQoXaf8U5JTNJ0SBNlP/M11Iy4YYOwC0kNHPt1JZRu+MYL8ES/Vg/apUVsARoBY+QEWiTTCM1pvHCR/6WldTrtw49By00ZcltxjQ3tnXFpFUwQJCjOp/HN0LB+WqZ+lYroyWtoQ8i0dLhMmT6ISZw+jiISwGQdS1WIcowRU8K+UyJ8XU0dhK+HtS9osE0BWbUOw+MvD4oNPk7PbVDK7B81DyH2NYty9x2peiy+0nnR/F6DVPBJlaMaUJebOZ0HHyecAIoufjJoqr8K8mvitbd2MsFY2eC9jQL6iVawl94sWGtJxkv8aAUqRArDLW/p4A0BlUYhKRQUMWJhOg==
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=ZZ+rXfjgDEQcFGGboBe359cL++lrH7SACD7Zoxz1DrY=;
 b=AErZYthPWxofsRktFocWYK3xoWn7Bjl+PDQuCIUnJHL8IK7ujSxmL6ixEJTGufs/fo8oLty3XU9/i8JO2nwTHmhQfUwITDsNPlFHcZj5+PSja6jkRIu+O5UMNSMJcG9hLlBi8BR9fERjCp9pXYvkyb0e08eoTNsuICBr3up3l8k=
Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=oracle.com;
Subject: Re: [PATCH] xen/evtchn: Change irq_info lock to raw_spinlock_t
To: Luca Fancellu <luca.fancellu@arm.com>, sstabellini@kernel.org,
        jgross@suse.com, jgrall@amazon.com
Cc: tglx@linutronix.de, wei.liu@kernel.org, jbeulich@suse.com,
        yyankovskyi@gmail.com, xen-devel@lists.xenproject.org,
        linux-kernel@vger.kernel.org, stable@vger.kernel.org,
        bertrand.marquis@arm.com
References: <20210406105105.10141-1-luca.fancellu@arm.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Message-ID: <c31042a2-fb32-fcf0-7b81-13c53473e9ea@oracle.com>
Date: Wed, 7 Apr 2021 17:43:55 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
In-Reply-To: <20210406105105.10141-1-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Originating-IP: [138.3.201.61]
X-ClientProxiedBy: SN7PR04CA0037.namprd04.prod.outlook.com
 (2603:10b6:806:120::12) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: df0646c3-6d67-42aa-8c36-08d8fa0e41e1
X-MS-TrafficTypeDiagnostic: SJ0PR10MB4543:
X-Microsoft-Antispam-PRVS: 
	<SJ0PR10MB45434FEDF8BE0CE8D24DEF458A759@SJ0PR10MB4543.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:1247;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	RxHXln+iHigEXBJ+zqEaZu9yDOhVOBsuYZPgPZpi1m0HbM1y63o6Af0+XI+PfQYRPkDV26eX5s4JEMkbj6BxVyyL7CsKtWrx6cLVfVsyb/PJQttuXvZGomCrKmzoB+isbJJFK8bevebEMggxGQOd16UxFJZSS5CInkDKTT2MF9dVlVOObHZ1yE8RtMdwXO3iO7XGmzkb0sMYSDvTTOiBoF1BdxD3PzUlYniM34vSzkGs64E5FRCp2UEW1yaifv6Z2435ugda2Q0rLn+JSD5FJ4ipGJFdbEt1L9ZW3176DxIuZa0OXYIMWJxbdBwYJ3UtTDsF5E24xDkk6qAE+FXEjDNs/ujcewhDdT42WP0I6d76tzlp/pIA3XDfMHdWfVaPCmEl3BLKuF7EmGzb75khgNqNAQSAHWnHkLcXtCUynD2byr/IcmBbR/YqEIHzRP8HUgBUka4GbaeCSFZxx8i5t6IYtXo3JXXinhYQE+VntxveasE24BO4AJBIC/Xpal7NTyMzsXQdD8dhBYNz0rs5QONxGNc2MrmfjFBq3HbixLnFurAeE8CuZX4Ipg4IKifo8nUPeiKPDbMb1HnWAZv5tbqkHzJmVKoKRCClOKgk/+vRug761F97VEnXilJwscaVuYHLIF9cOXLL7LjCaY4ADHaZIN8d/4iUq0N6/DGHM4LaAUqwjN5XG7QpOQDRZ/XT21IPS3HZjWxSdD0K9bHc7wfzid2YEfTugBsEuf4N2xc=
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(396003)(376002)(136003)(346002)(366004)(39860400002)(2906002)(316002)(7416002)(16576012)(53546011)(31696002)(36756003)(86362001)(4326008)(5660300002)(956004)(2616005)(66476007)(66556008)(6666004)(6486002)(31686004)(44832011)(4744005)(38100700001)(16526019)(186003)(83380400001)(26005)(8936002)(478600001)(66946007)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
 =?utf-8?Q?21WRWFTEG/QMJxxbfCaqI5b06MkMlXgd4918Khv?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: df0646c3-6d67-42aa-8c36-08d8fa0e41e1
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2021 21:44:01.5841
 (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: tW+uVxnNY8FeZdF8c9OTtnh4U7NSOxAXrO0w7VzSuiZzZQxQBbQx/9txGY76rFZSEAMNulCLEkTYvNhWaeZmP8iZWGAgZXlp1+UhGud8mMQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4543
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9947 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 bulkscore=0
 suspectscore=0 phishscore=0 malwarescore=0 mlxscore=0 spamscore=0
 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104070151
X-Proofpoint-GUID: ZnOEBukdJS-F1O7NhVdPcBTBg4Vr7QLm
X-Proofpoint-ORIG-GUID: ZnOEBukdJS-F1O7NhVdPcBTBg4Vr7QLm
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9947 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 clxscore=1011
 lowpriorityscore=0 suspectscore=0 adultscore=0 mlxlogscore=999 bulkscore=0
 priorityscore=1501 impostorscore=0 phishscore=0 mlxscore=0 spamscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104070152


On 4/6/21 6:51 AM, Luca Fancellu wrote:
> Unmask operation must be called with interrupt disabled,
> on preempt_rt spin_lock_irqsave/spin_unlock_irqrestore
> don't disable/enable interrupts, so use raw_* implementation
> and change lock variable in struct irq_info from spinlock_t
> to raw_spinlock_t
>
> Cc: stable@vger.kernel.org
> Fixes: 25da4618af24 ("xen/events: don't unmask an event channel
> when an eoi is pending")
>
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>



Applied to for-linus-5.12b


-boris



From xen-devel-bounces@lists.xenproject.org Wed Apr 07 22:05:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 22:05:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106945.204441 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUGIw-00019b-Qh; Wed, 07 Apr 2021 22:05:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106945.204441; Wed, 07 Apr 2021 22:05: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 1lUGIw-00019U-Ni; Wed, 07 Apr 2021 22:05:42 +0000
Received: by outflank-mailman (input) for mailman id 106945;
 Wed, 07 Apr 2021 22:05: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 1lUGIv-00019M-IL; Wed, 07 Apr 2021 22:05: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 1lUGIv-0006p4-9Z; Wed, 07 Apr 2021 22:05: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 1lUGIv-0004Br-06; Wed, 07 Apr 2021 22:05:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUGIu-00007V-Vr; Wed, 07 Apr 2021 22:05: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=OPd28e0vnKzxQBqaVUvo4J0ZbWN+fos/+2IwuwlT1ng=; b=fi5Lh6Mn65zhUyEKvz3ztrcNBu
	MHl3XyfOWztQkxYgR9XMpSWv1LV2Jy6h2XHLfRdyET9ufUPaChIxcf+luyyyfiW/0ETM+x5bqyeWU
	TN8cIUqGo5jzgrtylUxVj1n+vscd5vFHJ301HHyJe+xRELTvYSCYnb62/KgPuDFrASls=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160803-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160803: 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=025eacc13f6147ffa99da5ecee4ed96e7fe8e887
X-Osstest-Versions-That:
    xen=625faf9f002bd6ff4b6457a016b8ff338223b659
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 22:05:40 +0000

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

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                  025eacc13f6147ffa99da5ecee4ed96e7fe8e887
baseline version:
 xen                  625faf9f002bd6ff4b6457a016b8ff338223b659

Last test of basis   160792  2021-04-07 11:00:27 Z    0 days
Testing same since   160803  2021-04-07 19: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
   625faf9f00..025eacc13f  025eacc13f6147ffa99da5ecee4ed96e7fe8e887 -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 22:16:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 22:16:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106953.204459 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUGTO-00028z-T9; Wed, 07 Apr 2021 22:16:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106953.204459; Wed, 07 Apr 2021 22:16: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 1lUGTO-00028s-Pk; Wed, 07 Apr 2021 22:16:30 +0000
Received: by outflank-mailman (input) for mailman id 106953;
 Wed, 07 Apr 2021 22:16: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 1lUGTN-00028e-Gm; Wed, 07 Apr 2021 22:16: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 1lUGTN-0006zY-5P; Wed, 07 Apr 2021 22:16: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 1lUGTM-0004Wb-UP; Wed, 07 Apr 2021 22:16:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUGTM-0003PV-Tu; Wed, 07 Apr 2021 22:16: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=+8QCq3GxA5I37WpM1Vu7R5g9S6VtwcKExKdx7lgbuRg=; b=tBib76QVAxVRhlXBwjGiiAVV+V
	XbbQDY+TzbNJAzZCg1kWh80rVIn8/i9Gq+QADHde9wqMtxfj0QQIOGroxNF760rDJSrj21lX8IfeO
	uHQBh4Df/Srl6P9iFj8H77MYZ8HEgBuuK53T9hqA5YvAeVD8yaLpPlIQnsr+AlZqElMs=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160785-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160785: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:guests-nbd-mirror/debian:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 22:16:28 +0000

flight 160785 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160785/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken  in 160709
 build-armhf                4 host-install(4) broken in 160709 REGR. vs. 159418
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160709 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian fail in 160709 pass in 160785
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160709

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   50 days
Failing since        160128  2021-03-18 14:36:18 Z   20 days   25 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   18 days   23 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      pass    


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

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

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

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

broken-job build-armhf broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 07 23:57:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 07 Apr 2021 23:57:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106969.204487 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUI2N-0002ZU-Jh; Wed, 07 Apr 2021 23:56:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106969.204487; Wed, 07 Apr 2021 23:56: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 1lUI2N-0002ZN-Gb; Wed, 07 Apr 2021 23:56:43 +0000
Received: by outflank-mailman (input) for mailman id 106969;
 Wed, 07 Apr 2021 23:56: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 1lUI2M-0002ZF-8L; Wed, 07 Apr 2021 23:56: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 1lUI2L-0000BX-UR; Wed, 07 Apr 2021 23:56: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 1lUI2L-0000yN-Lm; Wed, 07 Apr 2021 23:56:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUI2L-0000LR-LJ; Wed, 07 Apr 2021 23:56: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=AHufz1fThf8XUJoSfhIT0RCnvFXMhzQm69Bem/B3OtU=; b=WDihy6Vs9EjpTP4hlfRMbgQNJa
	MxE2A2Nz593KDdDYCX/oXbsAJJZkuT2YafsZubCNMUUDI+V/5ATjeBDas1qFtg7B2pxU88rl5sxj3
	7LonbTfdhQns33eOVtxvy4C/K6TYfRCRHOyZh6Iu4RqKJD3HcTw7NYsDMvYKEMrEELkg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160788-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160788: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-localmigrate/x10:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2d743660786ec51f5c1fefd5782bbdee7b227db0
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 07 Apr 2021 23:56:41 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 19 guest-localmigrate/x10  fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                2d743660786ec51f5c1fefd5782bbdee7b227db0
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  250 days
Failing since        152366  2020-08-01 20:49:34 Z  249 days  423 attempts
Testing same since   160788  2021-04-07 08:50:01 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1315339 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 02:40:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 02:40:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106992.204514 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUKah-000764-Fq; Thu, 08 Apr 2021 02:40:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106992.204514; Thu, 08 Apr 2021 02: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 1lUKah-00075w-AA; Thu, 08 Apr 2021 02:40:19 +0000
Received: by outflank-mailman (input) for mailman id 106992;
 Thu, 08 Apr 2021 02:40: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 1lUKag-00075o-0d; Thu, 08 Apr 2021 02:40: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 1lUKae-0000kB-Vz; Thu, 08 Apr 2021 02:40: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 1lUKae-000146-Mf; Thu, 08 Apr 2021 02:40:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUKae-0005c0-M9; Thu, 08 Apr 2021 02: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=n/YqtnUk/d04VxGskWH/4ted+QoIe1Bihz5yM2KyvFk=; b=F+nO8ftiCYWPLQ2drJdkAsLqcD
	Rtwf6jHVqhxy1AXhtLNTx5vFLKz9tSpPBZtpiey9CwMupILPNJFAZWws+rL0f0dn8kQPkJH9s+1E0
	9zoLsbUYa0W6qsCziHsf7BLX6U8Inve+9y8hmbGPWM94G1hFVpru1DNlVglPUaPUQ3+c=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160794-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 160794: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt: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-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-seattle:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-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-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-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-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd: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:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2: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-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=59c8e332926875d337f426fde14fec986faab414
X-Osstest-Versions-That:
    linux=4e85f8a712cddf2ceeaac50a26b239fbbcb7091f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 02:40:16 +0000

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

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 160557
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160557
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160557
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160557
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160557
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160557
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160557
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160557
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160557
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160557
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160557
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-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-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  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-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-vhd 14 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  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                59c8e332926875d337f426fde14fec986faab414
baseline version:
 linux                4e85f8a712cddf2ceeaac50a26b239fbbcb7091f

Last test of basis   160557  2021-03-30 12:41:35 Z    8 days
Testing same since   160794  2021-04-07 13:10:38 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adrian Hunter <adrian.hunter@intel.com>
  Alex Deucher <alexander.deucher@amd.com>
  Alex Williamson <alex.williamson@redhat.com>
  Alexey Dobriyan <adobriyan@gmail.com>
  Artur Petrosyan <Arthur.Petrosyan@synopsys.com>
  Atul Gopinathan <atulgopinathan@gmail.com>
  Benjamin Coddington <bcodding@redhat.com>
  Benjamin Rood <benjaminjrood@gmail.com>
  Bhushan Shah <bshah@kde.org>
  Bruno Thomsen <bruno.thomsen@gmail.com>
  Chanwoo Choi <cw00.choi@samsung.com>
  Christophe Leroy <christophe.leroy@csgroup.eu>
  Chuck Lever <chuck.lever@oracle.com>
  Chunfeng Yun <chunfeng.yun@mediatek.com>
  Daniel Borkmann <daniel@iogearbox.net>
  Daniel Lezcano <daniel.lezcano@linaro.org>
  Darrick J. Wong <djwong@kernel.org>
  David Brazdil <dbrazdil@google.com>
  David S. Miller <davem@davemloft.net>
  Davide Caratti <dcaratti@redhat.com>
  Davidlohr Bueso <dbueso@suse.de>
  Dinghao Liu <dinghao.liu@zju.edu.cn>
  Doug Brown <doug@schmorgal.com>
  Du Cheng <ducheng2@gmail.com>
  Eric Whitney <enwlinux@gmail.com>
  Florian Fainelli <f.fainelli@gmail.com>
  Frank van der Linden <fllinden@amazon.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Guenter Roeck <linux@roeck-us.net>
  Hans de Goede <hdegoede@redhat.com>
  Hui Wang <hui.wang@canonical.com>
  Hulk Robot <hulkrobot@huawei.com>
  Ikjoon Jang <ikjn@chromium.org>
  Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
  Ingo Molnar <mingo@kernel.org>
  J. Bruce Fields <bfields@redhat.com>
  Jakub Kicinski <kuba@kernel.org>
  Jan Kara <jack@suse.com>
  Jason Gunthorpe <jgg@nvidia.com>
  Jason Self <jason@bluehome.net>
  Jeff Mahoney <jeffm@suse.com>
  Jesper Dangaard Brouer <brouer@redhat.com>
  Jessica Yu <jeyu@kernel.org>
  Jianqun Xu <jay.xu@rock-chips.com>
  Johan Hovold <johan@kernel.org>
  John Fastabend <john.fastabend@gmail.com>
  Julian Braha <julianbraha@gmail.com>
  Kai Mäkisara <kai.makisara@kolumbus.fi>
  Kalle Valo <kvalo@codeaurora.org>
  Krzysztof Kozlowski <krzk@kernel.org>
  Laurent Vivier <lvivier@redhat.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linus Walleij <linus.walleij@linaro.org>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Luca Pesce <luca.pesce@vimar.com>
  Lucas Tanure <tanureal@opensource.cirrus.com>
  Lv Yunlong <lyl2019@mail.ustc.edu.cn>
  Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
  Marc Kleine-Budde <mkl@pengutronix.de>
  Mark Brown <broonie@kernel.org>
  Martin K. Petersen <martin.petersen@oracle.com>
  Mat Martineau <mathew.j.martineau@linux.intel.com>
  Max Filippov <jcmvbkbc@gmail.com>
  Michael Ellerman <mpe@ellerman.id.au>
  Michael S. Tsirkin <mst@redhat.com>
  Minas Harutyunyan <Minas.Harutyunyan@synopsys.com>
  Nathan Rossi <nathan.rossi@digi.com>
  Nirmoy Das <nirmoy.das@amd.com>
  Oleksij Rempel <o.rempel@pengutronix.de>
  Olga Kornievskaia <kolga@netapp.com>
  Oliver Neukum <oneukum@suse.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Ritesh Harjani <riteshh@linux.ibm.com>
  Sameer Pujar <spujar@nvidia.com>
  Sasha Levin <sashal@kernel.org>
  Sean Nyekjaer <sean@geanix.com>
  Sergey Shtylyov <s.shtylyov@omprussia.ru>
  Shuah Khan <skhan@linuxfoundation.org>
  Stefan Chulski <stefanc@marvell.com>
  Steven Rostedt (VMware) <rostedt@goodmis.org>
  Takashi Iwai <tiwai@suse.de>
  Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
  Theodore Ts'o <tytso@mit.edu>
  Tong Zhang <ztong0001@gmail.com>
  Tony Lindgren <tony@atomide.com>
  Vasily Gorbik <gor@linux.ibm.com>
  Vincent Palatin <vpalatin@chromium.org>
  Waiman Long <longman@redhat.com>
  Wang Panzhenzhuan <randy.wang@rock-chips.com>
  Xi Ruoyao <xry111@mengyan1223.wang>
  Xℹ Ruoyao <xry111@mengyan1223.wang>
  zhangyi (F) <yi.zhang@huawei.com>
  Zhaolong Zhang <zhangzl2013@126.com>
  Zheyu Ma <zheyuma97@gmail.com>
  周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.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                              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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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
   4e85f8a712cd..59c8e3329268  59c8e332926875d337f426fde14fec986faab414 -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 03:17:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 03:17:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107000.204529 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lULAb-0001Xp-GX; Thu, 08 Apr 2021 03:17:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107000.204529; Thu, 08 Apr 2021 03: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 1lULAb-0001Xi-CV; Thu, 08 Apr 2021 03:17:25 +0000
Received: by outflank-mailman (input) for mailman id 107000;
 Thu, 08 Apr 2021 03:17: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 1lULAa-0001Xa-39; Thu, 08 Apr 2021 03:17: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 1lULAZ-0001Ln-LR; Thu, 08 Apr 2021 03:17:23 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lULAZ-0003cd-Bt; Thu, 08 Apr 2021 03:17:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lULAZ-0005UU-BR; Thu, 08 Apr 2021 03:17: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:Message-Id:Subject:To;
	bh=aQc7TrI92V4AY/r7MqmFbMKJWZtX6znTuZ+6IElXNrA=; b=hgu+9VR3YK9pleed0Rc/Xs3ZZ0
	QZNzYaSBvtveAxFapebDZ1RN9muNtZ7nPtAhJqGgG3bw159TGmg24kKdhfoprwR6SF5GLnFLeo9R2
	Erc2CtDK0ATVeI5tm3sbNoBSYXRtWon/Xx/uHxQN2bGfUDoPT78IeG5p4kAeOKHPPj8o=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow
Message-Id: <E1lULAZ-0005UU-BR@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 03:17:23 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160811/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow.guest-saverestore --summary-out=tmp/160811.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow guest-saverestore
Searching for failure / basis pass:
 160779 fail [host=albana1] / 160125 [host=pinot0] 160119 [host=fiano1] 160113 [host=fiano0] 160104 [host=chardonnay1] 160097 ok.
Failure / basis pass flights: 160779 / 160097
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-4ac02962017c77bf38b462f970c884c2dc7931cf git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#2615a5e433aeb812c300d3a48e1a88e1303e2339-d0d3dd401b70168a353450e031727affee828527 git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#b4011741e6b39a8fd0ed5aded96c16c45ead5888-b0976d5c0441378b6348f5bfedbf431055bd0147
Loaded 35133 nodes in revision graph
Searching for test results:
 160091 [host=albana0]
 160097 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160104 [host=chardonnay1]
 160113 [host=fiano0]
 160119 [host=fiano1]
 160125 [host=pinot0]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160748 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160778 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160780 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160781 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160782 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160784 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1db136a29ce8594b693938ab8e788d8bcef54770 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160786 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 24e13a4dc1eb1630eceffc7ab334145d902e763d b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160787 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 69259911f948ad2755bd1f2c999dd60ac322c890 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160789 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160791 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2e51b27fed31eb7b2a2cb4245806c8c7859207f7 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ee2e67da8f882fcdef2c49fcc58e9962aa695f5a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160793 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f9c53a69edeb94ae8c65276b885c1a7efe4f613a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160795 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8becb36063fb14df1e3ae4916215667e2cb65fa2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160797 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160779 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160800 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160802 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160804 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160805 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160806 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160808 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160810 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160811 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160097 (pass), for basis pass
 Result found: flight 160779 (fail), for basis failure (at ancestor ~1)
 Repro found: flight 160802 (pass), for basis pass
 Repro found: flight 160804 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 160800 (pass), for last pass
 Result found: flight 160805 (fail), for first failure
 Repro found: flight 160806 (pass), for last pass
 Repro found: flight 160808 (fail), for first failure
 Repro found: flight 160810 (pass), for last pass
 Repro found: flight 160811 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160811/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
160811: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail baseline untested


jobs:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              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 Thu Apr 08 05:05:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 05:05:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.106925.204553 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUMrA-0003Fv-6Z; Thu, 08 Apr 2021 05:05:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 106925.204553; Thu, 08 Apr 2021 05:05:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUMrA-0003Fo-32; Thu, 08 Apr 2021 05:05:28 +0000
Received: by outflank-mailman (input) for mailman id 106925;
 Wed, 07 Apr 2021 20:50:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DVea=JE=efficientek.com=development@srs-us1.protection.inumbo.net>)
 id 1lUF8J-0003AY-Vf
 for xen-devel@lists.xenproject.org; Wed, 07 Apr 2021 20:50:40 +0000
Received: from mail-oo1-xc2a.google.com (unknown [2607:f8b0:4864:20::c2a])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ba73f379-9494-47f4-923b-244f5917b86e;
 Wed, 07 Apr 2021 20:50:39 +0000 (UTC)
Received: by mail-oo1-xc2a.google.com with SMTP id
 p2-20020a4aa8420000b02901bc7a7148c4so4858904oom.11
 for <xen-devel@lists.xenproject.org>; Wed, 07 Apr 2021 13:50:39 -0700 (PDT)
Received: from crass-HP-ZBook-15-G2 ([2605:a601:ab16:db00:8318:3d36:3347:eb95])
 by smtp.gmail.com with ESMTPSA id z17sm5645511ote.77.2021.04.07.13.50.38
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 07 Apr 2021 13:50: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: ba73f379-9494-47f4-923b-244f5917b86e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=efficientek-com.20150623.gappssmtp.com; s=20150623;
        h=date:from:to:cc:subject:message-id:in-reply-to:references:reply-to
         :mime-version:content-transfer-encoding;
        bh=ChINn1Q9RhQdEt3XMQ9k5f2V28S3yNcE1R7bx8iCIOI=;
        b=JikbZSPt78h7m0dgIM/Lu8u5bNwDgR5RmrcPFcpDHKtiTCVgKvKEPddWPKJH7l9a53
         Y5VorZD9V33/AulXpN5P9Kz5norpmWvu4/hywLzIjFjCD8IUmIdC8Hknqfmsw1rJyjEM
         UrdTwjIs68y21AqpiJvQ+21Mc/Utuye7h5Q/1SOr3PW8qmYT4iCgtd37IrYfajgZmGHV
         il3SwSOT3eq+5xPYmOaXhrQGNFRE7xGrTVW9jU1yUvlfO7ACy37+3tz7oyQU+Rtb5Bwc
         fWeUzz4s8kyL2ufI/neH8XDpBwXcwgrKpeiaa9pLaffpuf/QOw8YSuejgzj548TKPWsO
         WkSw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to
         :references:reply-to:mime-version:content-transfer-encoding;
        bh=ChINn1Q9RhQdEt3XMQ9k5f2V28S3yNcE1R7bx8iCIOI=;
        b=LxHyRITGLtHnkytLMgoO1Ty+IvoOxnfBNwapfBUGUlG8/aKFz6g4rxofqT31CqQ5dP
         bS/M8lguLqxgN88NDlRbrlwZybtYYACVhH/Hcg69FmJbklJ9LNS0rc/xF+ZskiAvtqnW
         RBXsGendVBV5S8wBCIVGizerzptcGbz4eE48DfF4jjVHRhUfmFW85kr9MqhvtyJ8pQWA
         1V5dfuLbmcy0u2fHlR6dUM/xwpzBbN3B+B9l5+zshqu1G8q0iew6xUAlivewLtuIMMbZ
         T7HU0+7alcrKJ0ABZHZ3NiMnzwEAAClaNediRjO4EtHWieCASidmK+Q568KOr5YwtCd7
         gNbQ==
X-Gm-Message-State: AOAM531BWlmp/BzpGW5pA4xYP8Li1zkYy5/R1V7NG1qZRXSZI2pW488L
	oGU+RkxzIEQT4N6aCt+oipr8nw==
X-Google-Smtp-Source: ABdhPJw3LluzUGGzh0aIjj1w7lge3T8E6E5taFNiGxzgNiZ3+yIZDyTosnvKGjNg9tjf+UsibTajSg==
X-Received: by 2002:a4a:e615:: with SMTP id f21mr4433293oot.91.1617828638712;
        Wed, 07 Apr 2021 13:50:38 -0700 (PDT)
Date: Wed, 7 Apr 2021 15:50:32 -0500
From: Glenn Washburn <development@efficientek.com>
To: Andrew Cooper via Grub-devel <grub-devel@gnu.org>
Cc: Roger Pau =?UTF-8?B?TW9ubsOp?= <roger.pau@citrix.com>, Jan Beulich
 <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Roman
 Shaposhnik <roman@zededa.com>, Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: multiboot2 and module2 boot issues via GRUB2
Message-ID: <20210407155032.6a83d0cb@crass-HP-ZBook-15-G2>
In-Reply-To: <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
	<23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
	<CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
	<b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
	<YGWH89ubVe104Tnl@Air-de-Roger>
	<a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
Reply-To: development@efficientek.com
X-Mailer: Claws Mail 3.17.4 (GTK+ 2.24.32; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Thu, 1 Apr 2021 20:43:46 +0100
Andrew Cooper via Grub-devel <grub-devel@gnu.org> wrote:

> On 01/04/2021 09:44, Roger Pau Monn=C3=A9 wrote:
> > On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
> >> On 01.04.2021 03:06, Roman Shaposhnik wrote:
> >>> And the obvious next question: is my EVE usecase esoteric enough
> >>> that I should just go ahead and do a custom GRUB patch or is
> >>> there a more general interest in this?
> >> Not sure if it ought to be a grub patch - the issue could as well
> >> be dealt with in Xen, by concatenating modules to form a monolithic
> >> initrd.
> > I would rather have it done in the loader than Xen, mostly because
> > it's a Linux boot specific format, and hence I don't think Xen
> > should have any knowledge about it.
> >
> > If it turns out to be impossible to implement on the loader side we
> > should consider doing it in Xen, but that's not my first option.
>=20
> Concatenating random things which may or may not be initrds is
> absolutely not something Xen should do.=C2=A0 We don't have enough context
> to do it safely/sensibly.
>=20
> Honestly, I like the idea of supporting something like this generally
> in grub.=C2=A0 Linux already commonly has initrd preparation prepending an
> uncompressed microcode CPIO archive, and I can see a usability
> advantage from maintaining the initrd fragments separately.
>=20
> Looking at the grub manual, this behaviour of the `initrd` command
> isn't even documented.=C2=A0 Perhaps that should be fixed first, and then
> maybe `module2_multi` added too?

If you mean that the concatenation of multiple initrds by the `initrd`
command isn't documented (not sure that's the behavior your'r referring
to), it actually has been recently documented (by me) and is in master.
You're probably looking at the last release (2.04) documentation, in
which it is indeed not documented. This should change soon after
release and the documentation gets updated accordingly.

Glenn


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 05:56:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 05:56:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107026.204565 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUNeE-0007hN-Vn; Thu, 08 Apr 2021 05:56:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107026.204565; Thu, 08 Apr 2021 05:56: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 1lUNeE-0007hG-SP; Thu, 08 Apr 2021 05:56:10 +0000
Received: by outflank-mailman (input) for mailman id 107026;
 Thu, 08 Apr 2021 05:56:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUNeE-0007hB-BV
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 05:56:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 601408db-92cf-4cba-baea-92d30bdfbfc4;
 Thu, 08 Apr 2021 05:56:08 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6F3BDAFE8;
 Thu,  8 Apr 2021 05:56: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: 601408db-92cf-4cba-baea-92d30bdfbfc4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617861367; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=6jSmWBxiyMH5VNDpuGT7S8hLoJSPm8i2aXRLOgYL65E=;
	b=TekRN2Bsc8CpLLOLuSQAQkSLJt5dr4wjZmRhzr38lkmhabEhcSPVg1jz8Pu9z6ueNgErse
	tCOUqER3L92oyLeu+kVCGS5fEhpxSFCXMpdUlXgsMVV4Zn5fpYZlupjXURvcwJTPZLwRYp
	E6Jhjd4dOg/jlF7BbAGTDu40EoPTLu8=
Subject: Re: [PATCH 0/2] Introducing hyperlaunch capability design (formerly:
 DomB mode of dom0less)
To: Christopher Clark <christopher.w.clark@gmail.com>
Cc: "Daniel P. Smith" <dpsmith@apertussolutions.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 Stefano Stabellini <stefano.stabellini@xilinx.com>,
 Julien Grall <jgrall@amazon.com>, Julien Grall <Julien.grall.oss@gmail.com>,
 iwj@xenproject.org, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Rich Persaud <persaur@gmail.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 luca.fancellu@arm.com, paul@xen.org, Adam Schwalm <adam.schwalm@starlab.io>,
 xen-devel <xen-devel@lists.xenproject.org>
References: <20210316031814.10311-1-dpsmith@apertussolutions.com>
 <6314f50f-b4fc-e472-4c9a-3591e168d2c3@apertussolutions.com>
 <bd61f993-f719-ec87-638f-f53d6e983c3e@suse.com>
 <CACMJ4GY1QpTYUYV5oG5zOfah_PzPq_-__K3-F3qUfzX95R3w8g@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <2651d116-7c44-261e-8561-c9b3b5a4aab8@suse.com>
Date: Thu, 8 Apr 2021 07:56:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <CACMJ4GY1QpTYUYV5oG5zOfah_PzPq_-__K3-F3qUfzX95R3w8g@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 07.04.2021 21:23, Christopher Clark wrote:
> On Tue, Mar 30, 2021 at 7:31 AM Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 16.03.2021 04:56, Daniel P. Smith wrote:
>>> To assist in reading, please find attached rendered copies of the design
>>> docs. It should be noted that due to poor rendering by pandoc, we forced
>>> the tables to stay as ASCII tables in the patches whereas the attached
>>> docs have the tables rendered properly by rst2pdf.
>>
>> In section 3.6 I found "As a result, on x86 the hyperlaunch capability does
>> not rely on nor preclude any specific BIOS boot protocol, i.e legacy BIOS
>> boot or UEFI boot. The only requirement is that the boot loader supports
>> the Multiboot2 (MB2) protocol." I'm afraid the two sentences contradict
>> one another, as UEFI on its own doesn't provide MB2 functionality. It is
>> my understanding that you don't require this anyway - what you need is a
>> way to load modules beyond just Dom0 kernel and an initrd.
> 
> Thanks - we'll amend the doc. Given the already sizeable scope of the
> project, our current approach for host UEFI is to recommend use of
> GRUB.efi to load Xen and the initial domains via the multiboot2 method.
> 
>> I'm also struggling to see how you mean to associate the (MB2) modules
>> passed to Xen with the individual functions. I.e. I don't see how it will
>> be ensure that the embedded mb-index is in sync with the order or modules
>> actually supplied.
> 
> To make sure I'm following the concern raised here, my understanding is:
> 
> - the multiboot module list is ordered and stable, so that the order
>   that the bootloader provides the modules in is the same order in which
>   Xen receives them, in the multiboot data structure, so the modules can
>   be referenced by an index into that list

In a separate context (parallel ongoing discussion under "multiboot2
and module2 boot issues via GRUB2") Andrew raised the (imo valid)
point of this getting the more fragile the more modules there are.

> - for a given Launch Control Module file (expressed in a Device Tree, as
>   described in our second design document), the provided multiboot
>   modules will need to match, both in type (kernel, ramdisk, microcode,
>   xsm policy) and order

"Need to match" meaning what? You don't clarify how boot loader
config and device tree blob are meant to be kept in sync.

> - we think that at some point the LCM will end up being dynamically
>   generated by an enlightened bootloader, assembling it from the
>   bootloader config file, which will list the modules and their types
> 
>> As to modules - iirc there are placement restrictions by at least some
>> boot loaders (below 4Gb). If that's correct, do you have any thoughts
>> towards dealing with the limited space available to hold these modules?
>> I've seem systems with lots of memory, but with as little as just 1Gb
>> below the 4Gb boundary.
> 
> At this point, I don't think that we'll break anything that currently
> works, and that hardware or platform limitations can always constrain
> what is deployable.

I'm not concerned of you breaking anything. I merely raised a possible
scalability issue of your current proposal.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 05:59:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 05:59:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107032.204576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUNhB-0007q3-I8; Thu, 08 Apr 2021 05:59:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107032.204576; Thu, 08 Apr 2021 05: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 1lUNhB-0007pw-En; Thu, 08 Apr 2021 05:59:13 +0000
Received: by outflank-mailman (input) for mailman id 107032;
 Thu, 08 Apr 2021 05:59:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUNhA-0007pr-LN
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 05:59:12 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 95d2a5ac-4fa1-4e45-a4f7-78348abf45cf;
 Thu, 08 Apr 2021 05:59:11 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C9A49AFF0;
 Thu,  8 Apr 2021 05:59: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: 95d2a5ac-4fa1-4e45-a4f7-78348abf45cf
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617861550; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=vC86PYGgQMb1wZaGNQa7XS4J1uayXt8bj0eXJ/Vtguk=;
	b=SlC5Zl0hivgWapOQTNsaLWwT5YKQj4ReWhi9CR2e+Ny1A6mDv2eoxjRiVxp+kYBaH4X8g0
	kNOtEhZjHtC8AW6jlBt2RFOWDYPbf51HxAHBgemmJ/hL4jpX8aXLmqar4/DG2okGQ0BPrp
	0JxtufVVglYxNdg0XH8esWfVUO/aLP0=
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Luca Fancellu <luca.fancellu@arm.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
 <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
 <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <fff2bc3a-701a-51e4-59fe-b26261c6c6bc@suse.com>
Date: Thu, 8 Apr 2021 07:59:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 07.04.2021 23:26, Stefano Stabellini wrote:
> On Wed, 7 Apr 2021, Jan Beulich wrote:
>> On 07.04.2021 10:42, Luca Fancellu wrote:
>>> Just to be sure that we are in the same page, are you suggesting to modify the name
>>> In this way?
>>>
>>> struct gnttab_cache_flush {
>>> -    union {
>>> +    union xen_gnttab_cache_flush_a {
>>>         uint64_t dev_bus_addr;
>>>         grant_ref_t ref;
>>>     } a;
>>>
>>> Following this kind of pattern: xen_<upper struct name>_<member name> ?
>>
>> While in general I would be fine with this scheme, for field names like
>> "a" or "u" it doesn't fit well imo.
> 
> "a" is a bad name anyway, even for the member. We can take the
> opportunity to find a better name. Almost anything would be better than
> "a". Maybe "refaddr"?

We need to be careful with changing _anything_ in the public interface.
Consumers importing our headers directly (as was e.g. done for the old
linux-2.6.18-xen.hg tree) could break with a field name change as much
as with any other changes to what had been made available to them.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 06:00:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 06:00:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107037.204589 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUNiQ-0000Jq-Te; Thu, 08 Apr 2021 06:00:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107037.204589; Thu, 08 Apr 2021 06: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 1lUNiQ-0000Jj-Q4; Thu, 08 Apr 2021 06:00:30 +0000
Received: by outflank-mailman (input) for mailman id 107037;
 Thu, 08 Apr 2021 06:00:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUNiP-0000Jd-Ha
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 06:00:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9f698f6c-4450-42ba-b1c9-868da0dc7be5;
 Thu, 08 Apr 2021 06:00:28 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D388DAFF7;
 Thu,  8 Apr 2021 06:00: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: 9f698f6c-4450-42ba-b1c9-868da0dc7be5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617861628; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=luvLxUo5r9q0Tj2IuoSUj9Ws+6VMHZaOL6ilkor95fw=;
	b=VJAcsnwSeLztqp78wn0Rw3+K3wHa27I8bDeBF8WK1mBn71spjQaBx84JsEmLFL8uUczVXI
	pWEu8SaiNPTxCVvHp6CqtXKtuzXX83wZsxyKY+G4D7sImOafCa79SRBGS3TTmu8QVt8S2T
	/go0LOEeo7MPpetOLAv0ntYHH95hhNU=
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
To: Julien Grall <julien@xen.org>, Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Paul Durrant <paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
 <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
 <b0eb0833-50aa-d9a1-3265-3255970ef210@suse.com>
 <4ab1e7ed-cdf6-1b06-4f55-bbb981cade91@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0071311d-6da5-636b-b823-32b5570d8f49@suse.com>
Date: Thu, 8 Apr 2021 08:00:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <4ab1e7ed-cdf6-1b06-4f55-bbb981cade91@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 07.04.2021 20:06, Julien Grall wrote:
> Hi Jan,
> 
> On 06/04/2021 16:25, Jan Beulich wrote:
>> On 06.04.2021 16:30, Julien Grall wrote:
>>> Hi Roger,
>>>
>>> On 06/04/2021 15:13, Roger Pau Monné wrote:
>>>> On Tue, Apr 06, 2021 at 12:39:11PM +0100, Rahul Singh wrote:
>>>>> MSI support is not implemented for ARM architecture but it is enabled
>>>>> for x86 architecture and referenced in common passthrough/pci.c code.
>>>>>
>>>>> Therefore introducing the new flag to gate the MSI code for ARM in
>>>>> common code to avoid compilation error when HAS_PCI is enabled for ARM.
>>>>
>>>> Is such option really interesting long term?
>>>>
>>>> IIRC PCI Express mandates MSI support, at which point I don't see much
>>>> value in being able to compile out the MSI support.
>>>
>>> I am pretty sure there are board out with PCI support but no MSI
>>> support. Anyway, even if the spec may mandate it...
>>>
>>>>
>>>> So while maybe helpful for Arm PCI efforts ATM, I'm not sure it
>>>> warrants a Kconfig option, I would rather see Arm introduce dummy
>>>> helpers for the missing functionality, even if unimplemented at the
>>>> moment.
>>>
>>> ... from my understanding, most of (if not all) the MSI code is not very
>>> useful on Arm when using the GICv3 ITS.
>>>
>>> The GICv3 ITS will do the isolation for you and therefore we should not
>>> need to keep track of the state at the vPCI level.
>>
>> But that's then not "has PCI MSI" but "need to intercept PCI MSI
>> accesses", i.e. I don't think the Kconfig option is correctly
>> named. If a device with MSI support is used, you can't make that
>> MSI support go away, after all.
> 
> That's actually a good point. Rahul, do you think the config can be 
> renamed to something like CONFIG_PCI_MSI_NEED_INTERCEPT?

Minor remark: In this name I'd be inclined to suggest to omit NEED.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 06:17:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 06:17:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107043.204600 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUNz2-0001Q7-Ct; Thu, 08 Apr 2021 06:17:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107043.204600; Thu, 08 Apr 2021 06: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 1lUNz2-0001Q0-A2; Thu, 08 Apr 2021 06:17:40 +0000
Received: by outflank-mailman (input) for mailman id 107043;
 Thu, 08 Apr 2021 06:17:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUNz0-0001Pv-Dc
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 06:17:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e70c1a65-c673-4fcf-b139-03a79cb099e5;
 Thu, 08 Apr 2021 06:17:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 72FE5AFF5;
 Thu,  8 Apr 2021 06: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: e70c1a65-c673-4fcf-b139-03a79cb099e5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617862656; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=u6JothBE6sZgySqbyFqB3ODE8g4BwjXU76JRr4M0/oE=;
	b=jEbRajOq5xO3WbLj3s8CWMPNBDJjJk6RDQn6eu8ETnzETRtoblcXaNSy6ru00W7NEHAZMj
	MHTj7gjuZcpPtk8xWfkoyJsP/gipx0QF1R2AdiGQZjEEmglLiPz0KSretXd+8Bl9a44UAA
	3HeWf3yMmbYqssbf7vUrs8SdP7WJKR4=
Subject: Re: [PATCH] xen/gunzip: Fix build with clang after 33bc2a8495f7
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210407182726.26603-1-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <59afb632-f2c9-bf3d-ef97-bc9f5a95d0a6@suse.com>
Date: Thu, 8 Apr 2021 08:17:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210407182726.26603-1-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 07.04.2021 20:27, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> The compilation will fail when building Xen with clang and
> CONFIG_DEBUG=y:
> 
> make[4]: Leaving directory '/oss/xen/xen/common/libelf'
>   INIT_O  gunzip.init.o
> Error: size of gunzip.o:.text is 0x00000019
> 
> This is because the function init_allocator() will not be inlined
> and is not part of the init section.
> 
> Fix it by marking init_allocator() with INIT.
> 
> Fixes: 33bc2a8495f7 ("xen/gunzip: Allow perform_gunzip() to be called multiple times")
> Reported-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Julien Grall <jgrall@amazon.com>

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


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 06:20:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 06:20:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107047.204613 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUO1Z-0002GC-Rp; Thu, 08 Apr 2021 06:20:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107047.204613; Thu, 08 Apr 2021 06: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 1lUO1Z-0002G5-OA; Thu, 08 Apr 2021 06:20:17 +0000
Received: by outflank-mailman (input) for mailman id 107047;
 Thu, 08 Apr 2021 06:20:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUO1Y-0002Fz-Uf
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 06:20:16 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 20b1fd93-8af7-4eb6-ae70-d88b01b390c3;
 Thu, 08 Apr 2021 06:20:16 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 673B8AE56;
 Thu,  8 Apr 2021 06:20: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: 20b1fd93-8af7-4eb6-ae70-d88b01b390c3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617862815; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=rwqytcB5B0WIPQt9yvtK6b25nB9sj1W53HWhXgDISW4=;
	b=F6Vv6AI0DbNP68c5Lnwqh8DyYj3qN8xhMJ2UoePtukVKF3Or+ZnVtjfgSo97hczOZPAbvq
	NYzdUDSaoAluRQWdMyXtZQLOJqIRdRNQDZzUH5Vt550Od3GdmJn/wCrPKRQ1uycDYRT188
	6x1MbHblCq1qj6K8H1vkyEB3FX7qDiI=
Subject: Re: [PATCH v3 03/11] x86/vlapic: introduce an EOI callback mechanism
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-4-roger.pau@citrix.com>
 <d18d9e3b-872f-b0cb-aebf-5e55d4433b75@suse.com>
 <YG3djUEiAd9wqQvv@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e5a45339-a79a-a903-0599-86e14f493818@suse.com>
Date: Thu, 8 Apr 2021 08:20:15 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YG3djUEiAd9wqQvv@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 07.04.2021 18:27, Roger Pau Monné wrote:
> On Wed, Apr 07, 2021 at 04:55:43PM +0200, Jan Beulich wrote:
>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>> Add a new vlapic_set_irq_callback helper in order to inject a vector
>>> and set a callback to be executed when the guest performs the end of
>>> interrupt acknowledgment.
>>>
>>> Such functionality will be used to migrate the current ad hoc handling
>>> done in vlapic_handle_EOI for the vectors that require some logic to
>>> be executed when the end of interrupt is performed.
>>>
>>> The setter of the callback will be in charge for setting the callback
>>> again on resume. That is the reason why vlapic_set_callback is not a
>>> static function.
>>
>> I'm struggling with your use of "resume" here: Resuming from S3
>> doesn't require re-doing anything that's kept in memory, does it?
>> So what meaning does the word have here?
> 
> Right, I can see the confusion. Resume here means a guest being
> migrated or restored, not Xen itself being resumed. Callbacks are not
> part of the exported guest state, and hence any emulated device that
> requires a callback will have to register it as part of loading the
> saved state.
> 
>> Apart from this, and with the xzalloc_array() change requested
>> by Andrew, this looks good to me.

In which case with this change and "resume" replaced suitably in the
description
Reviewed-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 06:27:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 06:27:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107053.204625 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUO8I-0002Un-IA; Thu, 08 Apr 2021 06:27:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107053.204625; Thu, 08 Apr 2021 06: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 1lUO8I-0002Ug-F3; Thu, 08 Apr 2021 06:27:14 +0000
Received: by outflank-mailman (input) for mailman id 107053;
 Thu, 08 Apr 2021 06:27:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUO8H-0002Ub-Na
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 06:27:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 742b8be5-8363-4553-9d93-daa2e6587f3b;
 Thu, 08 Apr 2021 06:27:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B0611AE56;
 Thu,  8 Apr 2021 06:27: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: 742b8be5-8363-4553-9d93-daa2e6587f3b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617863231; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=6l8hq1adUQ4Z/WphXMblfUysCcBR3UoIJr/4Gc+IYdU=;
	b=MCGwpIGPiGj2+eewA3oxTPa+ndwqaGv6L8JUCVDsqsX3c2FJeGVmJYQHsd1mcLBjAA0at3
	03LSmECueB9oS4kdT73OnBt3j1t8x1blxkI8hPZVAfXhkKRzvgGU71sd34tEuFxWj+0g/w
	PSHCM81ZjQHRxYYaW+5xuFURbcLn63g=
Subject: Re: [PATCH v3 05/11] x86/vioapic: switch to use the EOI callback
 mechanism
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-6-roger.pau@citrix.com>
 <f8d9c37f-8896-36af-712a-ac0765567409@suse.com>
 <YG3iAeFFA/ZJh5es@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <402bba57-4998-fa9c-2767-235e602a06bf@suse.com>
Date: Thu, 8 Apr 2021 08:27:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YG3iAeFFA/ZJh5es@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 07.04.2021 18:46, Roger Pau Monné wrote:
> On Wed, Apr 07, 2021 at 05:19:06PM +0200, Jan Beulich wrote:
>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>> --- a/xen/arch/x86/hvm/vioapic.c
>>> +++ b/xen/arch/x86/hvm/vioapic.c
>>> @@ -621,7 +624,43 @@ static int ioapic_load(struct domain *d, hvm_domain_context_t *h)
>>>           d->arch.hvm.nr_vioapics != 1 )
>>>          return -EOPNOTSUPP;
>>>  
>>> -    return hvm_load_entry(IOAPIC, h, &s->domU);
>>> +    rc = hvm_load_entry(IOAPIC, h, &s->domU);
>>> +    if ( rc )
>>> +        return rc;
>>> +
>>> +    for ( i = 0; i < ARRAY_SIZE(s->domU.redirtbl); i++ )
>>> +    {
>>> +        const union vioapic_redir_entry *ent = &s->domU.redirtbl[i];
>>> +        unsigned int vector = ent->fields.vector;
>>> +        unsigned int delivery_mode = ent->fields.delivery_mode;
>>> +        struct vcpu *v;
>>> +
>>> +        /*
>>> +         * Add a callback for each possible vector injected by a redirection
>>> +         * entry.
>>> +         */
>>> +        if ( vector < 16 || !ent->fields.remote_irr ||
>>> +             (delivery_mode != dest_LowestPrio && delivery_mode != dest_Fixed) )
>>> +            continue;
>>> +
>>> +        for_each_vcpu ( d, v )
>>> +        {
>>> +            struct vlapic *vlapic = vcpu_vlapic(v);
>>> +
>>> +            /*
>>> +             * NB: if the vlapic registers were restored before the vio-apic
>>> +             * ones we could test whether the vector is set in the vlapic IRR
>>> +             * or ISR registers before unconditionally setting the callback.
>>> +             * This is harmless as eoi_callback is capable of dealing with
>>> +             * spurious callbacks.
>>> +             */
>>> +            if ( vlapic_match_dest(vlapic, NULL, 0, ent->fields.dest_id,
>>> +                                   ent->fields.dest_mode) )
>>> +                vlapic_set_callback(vlapic, vector, eoi_callback, NULL);
>>
>> eoi_callback()'s behavior is only one of the aspects to consider here.
>> The other is vlapic_set_callback()'s complaining if it finds a
>> callback already set. What guarantees that a mistakenly set callback
>> here won't get in conflict with some future use of the same vector by
>> the guest?
> 
> Such conflict would only manifest as a warning message, but won't
> cause any malfunction, as the later callback would override the
> current one.
> 
> This model I'm proposing doesn't support lapic vector sharing with
> different devices that require EOI callbacks, I think we already
> discussed this on a previous series and agreed it was fine.

The problem with such false positive warning messages is that
they'll cause cautious people to investigate, i.e. spend perhaps
a sizable amount of time in understanding what was actually a non-
issue. I view this as a problem, even if the code's functioning is
fine the way it is. I'm not even sure explicitly mentioning the
situation in the comment is going to help, as one may not stumble
across that comment while investigating.

>>> --- a/xen/arch/x86/hvm/vlapic.c
>>> +++ b/xen/arch/x86/hvm/vlapic.c
>>> @@ -192,7 +192,13 @@ void vlapic_set_irq_callback(struct vlapic *vlapic, uint8_t vec, uint8_t trig,
>>>  
>>>      if ( hvm_funcs.update_eoi_exit_bitmap )
>>>          alternative_vcall(hvm_funcs.update_eoi_exit_bitmap, target, vec,
>>> -                          trig || callback);
>>> +                          /*
>>> +                           * NB: need to explicitly convert to boolean to avoid
>>> +                           * truncation wrongly result in false begin reported
>>> +                           * for example when the pointer sits on a page
>>> +                           * boundary.
>>> +                           */
>>> +                          !!callback);
>>
>> I've had quite a bit of difficulty with the comment. Once I realized
>> that you likely mean "being" instead of "begin" it got a bit better.
>> I'd like to suggest also s/result/resulting/, a comma after "reported",
>> and maybe then s/being reported/getting passed/.
>>
>> As to explicitly converting to bool, wouldn't a cast to bool do? That's
>> more explicitly an "explicit conversion" than using !!.
> 
> I've always used !! in the past for such cases because it's shorter, I
> can explicitly cast if you prefer that instead.

I agree with the "shorter" aspect. What I'm afraid of is that someone may,
despite the comment, think the !! is a stray leftover from the bool_t
days. I'd therefore prefer to keep the !! pattern for just the legacy
uses, and see casts used in cases like the one here. However, if both you
and Andrew think otherwise, so be it.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 06:34:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 06:34:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107058.204637 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUOFe-0003SU-9Y; Thu, 08 Apr 2021 06:34:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107058.204637; Thu, 08 Apr 2021 06: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 1lUOFe-0003SN-6U; Thu, 08 Apr 2021 06:34:50 +0000
Received: by outflank-mailman (input) for mailman id 107058;
 Thu, 08 Apr 2021 06:34:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUOFc-0003SI-Sz
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 06:34:48 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 27c5cfa3-6d0e-44d5-aabd-c97cfeb1a925;
 Thu, 08 Apr 2021 06:34:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E4795AFF0;
 Thu,  8 Apr 2021 06: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: 27c5cfa3-6d0e-44d5-aabd-c97cfeb1a925
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617863687; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=KoUIvLOfvNrykFIBuyDXFZG0FOvWgNiAZRFCjRfpXyg=;
	b=hWauGpSueEOD/RMbpRwBtSPYMR8VqcvWC+qNcygNBfOK9QMElqbtoQh9GPOMJz1SiqLE/p
	SdP39wqCeNkkwa+G1oXmVuvrlMbGPvnebQckX/ehU17nkvOQnT5apS0ORciemZTqXZeiDD
	sa4JiRXjHhnUEOVayAYmr/GGWxcSQNU=
Subject: Re: [PATCH v3 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
 <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
 <YG3m9nW6xPeL7MPr@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <06192f36-dae3-9626-3fe5-98722d2753f5@suse.com>
Date: Thu, 8 Apr 2021 08:34:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YG3m9nW6xPeL7MPr@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 07.04.2021 19:08, Roger Pau Monné wrote:
> On Wed, Apr 07, 2021 at 05:51:14PM +0200, Jan Beulich wrote:
>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>> +bool hvm_gsi_has_callbacks(const struct domain *d, unsigned int gsi)
>>> +{
>>> +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
>>> +    bool has_callbacks;
>>> +
>>> +    read_lock(&hvm_irq->gsi_callbacks_lock);
>>> +    has_callbacks = !list_empty(&hvm_irq->gsi_callbacks[gsi]);
>>> +    read_unlock(&hvm_irq->gsi_callbacks_lock);
>>> +
>>> +    return has_callbacks;
>>> +}
>>
>> What use is this function? Its result is stale by the time the
>> caller can look at it, as you've dropped the lock.
> 
> Right, that function is only used to decide whether the vIOAPIC needs
> to register an EOI callback when injecting a vector to the vlapic. The
> workflow is to first register a callback with the vIOAPIC and
> afterwards inject an interrupt which will trigger the callback
> logic.
> 
> Playing with the callback registration while interrupts can be
> injected will likely result in a malfunction of the device that relies
> on those callbacks, but that's to be expected anyway when playing such
> games.
> 
> That said multiple users sharing a vIOAPIC pin should be fine as long
> as they follow the logic above: always register a callback before
> attempting to inject an interrupt.

May I ask that you add a comment ahead of this function pointing out
the restriction?

>>> @@ -443,7 +457,8 @@ static void ioapic_inj_irq(
>>>      struct vlapic *target,
>>>      uint8_t vector,
>>>      uint8_t trig_mode,
>>> -    uint8_t delivery_mode)
>>> +    uint8_t delivery_mode,
>>> +    bool callback)
>>>  {
>>>      HVM_DBG_LOG(DBG_LEVEL_IOAPIC, "irq %d trig %d deliv %d",
>>>                  vector, trig_mode, delivery_mode);
>>> @@ -452,7 +467,7 @@ static void ioapic_inj_irq(
>>>             (delivery_mode == dest_LowestPrio));
>>>  
>>>      vlapic_set_irq_callback(target, vector, trig_mode,
>>> -                            trig_mode ? eoi_callback : NULL, NULL);
>>> +                            callback ? eoi_callback : NULL, NULL);
>>
>> I think you'd better use trig_mode || callback here and ...
>>
>>> @@ -466,6 +481,7 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
>>>      struct vlapic *target;
>>>      struct vcpu *v;
>>>      unsigned int irq = vioapic->base_gsi + pin;
>>> +    bool callback = trig_mode || hvm_gsi_has_callbacks(d, irq);
>>>  
>>>      ASSERT(spin_is_locked(&d->arch.hvm.irq_lock));
>>>  
>>> @@ -492,7 +508,8 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
>>>              target = vlapic_lowest_prio(d, NULL, 0, dest, dest_mode);
>>>          if ( target != NULL )
>>>          {
>>> -            ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode);
>>> +            ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode,
>>> +                           callback);
>>
>> ... invoke hvm_gsi_has_callbacks() right here and ...
>>
>>> @@ -507,7 +524,7 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
>>>          for_each_vcpu ( d, v )
>>>              if ( vlapic_match_dest(vcpu_vlapic(v), NULL, 0, dest, dest_mode) )
>>>                  ioapic_inj_irq(vioapic, vcpu_vlapic(v), vector, trig_mode,
>>> -                               delivery_mode);
>>> +                               delivery_mode, callback);
>>
>> ... here, avoiding to call the function when you don't need the
>> result.
> 
> I think there's a slim chance of not needing to use the callback local
> variable, and hence didn't consider limiting it. I can do, but I'm
> unsure this will bring any real benefit while making the code more
> complex IMO.

Really the variable remaining unused in a minor set of cases was only
a secondary observation. What I first stumbled over is the moving of
the decision whether a callback is wanted from ioapic_inj_irq() to its
caller. Since the function clearly is intended as a helper of
vioapic_deliver(), I guess in the end it's fine the way you have it.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 08:45:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 08:45:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107077.204649 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUQIC-0007Cq-5X; Thu, 08 Apr 2021 08:45:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107077.204649; Thu, 08 Apr 2021 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 1lUQIC-0007Cj-2D; Thu, 08 Apr 2021 08:45:36 +0000
Received: by outflank-mailman (input) for mailman id 107077;
 Thu, 08 Apr 2021 08:45:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=XAoZ=JF=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lUQIA-0007Ce-P8
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 08:45:35 +0000
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.3.47]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cc5e7617-afd7-4840-a45d-248361f4705e;
 Thu, 08 Apr 2021 08:45:31 +0000 (UTC)
Received: from AM6P195CA0003.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:81::16)
 by PA4PR08MB6176.eurprd08.prod.outlook.com (2603:10a6:102:ea::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Thu, 8 Apr
 2021 08:45:29 +0000
Received: from VE1EUR03FT046.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:81:cafe::af) by AM6P195CA0003.outlook.office365.com
 (2603:10a6:209:81::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend
 Transport; Thu, 8 Apr 2021 08:45:29 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT046.mail.protection.outlook.com (10.152.19.226) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Thu, 8 Apr 2021 08:45:29 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Thu, 08 Apr 2021 08:45:28 +0000
Received: from 56eb2c4f45ff.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 888DEAE2-4CBA-4D11-A24D-266162649904.1; 
 Thu, 08 Apr 2021 08:45:17 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 56eb2c4f45ff.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 08 Apr 2021 08:45:17 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DBBPR08MB6042.eurprd08.prod.outlook.com (2603:10a6:10:20f::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Thu, 8 Apr
 2021 08:45:07 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.3999.033; Thu, 8 Apr 2021
 08: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: cc5e7617-afd7-4840-a45d-248361f4705e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CYZ3yCgEnuXY/2/qF5qLs1x7J+PBf8WlWhcVPeoUUbc=;
 b=FnC3dNFgbo35P/3Ixx2k6oF0POmG0m795ih3MSHRV2BMYTZhygpN/Rzn2crYpWfijd69ANs0/x8jQNJxoxCOdfMuLEk7TEUij8NAG4Vr0h8HUMFfmVpMpgEAZ+DeRaNr/H5aySbC7SXXTYxAisTxDwfjM8kPiIZsO7wsoT7Q+CY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 163804443dcca45d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=N3o7M7bc8PKxLF0o7IZEj/EDaW3FhyujjGuR4UstQPodgXohfv5kN7NvWJlRuaT1dryqnodoJ9sZLiGvUXXBdRmcW9KVFTCNV5ghNogFsd9uHQTDcxlu0eeN9cffzFFzxV1t1KYo3d66aDYt7CxGldNCaF+lTGQ7eY/pQZgrDFQXsdHq1F9+d6xzlJ0QI4W4FZqJ18vnKqH5bm2ZWD/LK9U7pCt00MzaCdPzqp499y8IMPFH0tEHMDUySvxHLp7xN3Coc8Km4/LRU1PIiY7mMhNT7tW8JUX4orrIbG8UG3d5nexBKRp6VRW0VK6DfnlCjMnuds+/jFGLfToxLVYR1w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CYZ3yCgEnuXY/2/qF5qLs1x7J+PBf8WlWhcVPeoUUbc=;
 b=MLpI+4Ek0lsTX/1bOPn3nGdPxTuGh0FsVAU23CKI9WoF6gGLHOayggwaQ+GglIBMpNMCERwhC12NLApoS1nBMunM7oaZPN4TDiX4A5fkAzPy1p6D+kGvcTViuNfC8d0RYpSIYhvnuWBbu/Hpa1mdGQGl5RhFrpIX8E/Xh6zlAxwVjUg2y179hQXMyf9Z/H249tfWGn0aWfBhYpck7FPuqckjS24u2FKoAJKpc3u/gjn5ReF1/3EQiYLNb5OoZ/IKopLu/GkwJ/08iZWStItrGhSjqun9pwAe/cn6IO6cerTEILfH1joxZLGe7Q34w4VrSvRX0f/IFZibxt/MtTNB+g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CYZ3yCgEnuXY/2/qF5qLs1x7J+PBf8WlWhcVPeoUUbc=;
 b=FnC3dNFgbo35P/3Ixx2k6oF0POmG0m795ih3MSHRV2BMYTZhygpN/Rzn2crYpWfijd69ANs0/x8jQNJxoxCOdfMuLEk7TEUij8NAG4Vr0h8HUMFfmVpMpgEAZ+DeRaNr/H5aySbC7SXXTYxAisTxDwfjM8kPiIZsO7wsoT7Q+CY=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Paul Durrant <paul@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>
Subject: Re: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
Thread-Topic: [PATCH 2/2] xen/pci: Gate all MSI code in common code with
 CONFIG_HAS_PCI_MSI
Thread-Index:
 AQHXKtnMgQfSb5EUJ0m5ImZxjYO+aaqniEaAgAAErYCAAA9rAIABv2eAgADHeYCAAC39gA==
Date: Thu, 8 Apr 2021 08:45:06 +0000
Message-ID: <479D17E5-3021-4A2E-B066-D179226CC48B@arm.com>
References: <cover.1617702520.git.rahul.singh@arm.com>
 <4471ba4fffc8a0cef24cc11314fc788334f85ccc.1617702520.git.rahul.singh@arm.com>
 <YGxsfdK9GEefLgAv@Air-de-Roger>
 <75848a0d-d060-6a8b-5ebc-7376ffc14af0@xen.org>
 <b0eb0833-50aa-d9a1-3265-3255970ef210@suse.com>
 <4ab1e7ed-cdf6-1b06-4f55-bbb981cade91@xen.org>
 <0071311d-6da5-636b-b823-32b5570d8f49@suse.com>
In-Reply-To: <0071311d-6da5-636b-b823-32b5570d8f49@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: cc2068e5-2aa1-4c9f-8c47-08d8fa6aa992
x-ms-traffictypediagnostic: DBBPR08MB6042:|PA4PR08MB6176:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<PA4PR08MB6176CF3D3201662215266256FC749@PA4PR08MB6176.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 U3oszGLkmzwp9yFVwNI6/YmjdYhtpTGCS4oeR4p8WX0zv9gN69MoGVjOwTOTh/xsmkbpb+yWU+NXwinAzRnp7rV4N6ARKHTbXOep5myXiQDCOZn8MCQuVHRN8dpWi3Uc7PgSTYDBYiI4kWj6HMasM0Y1alqHmqTP87J014svT3nFS6NT5HNcH8vB8gckiSykqVmPyD9M7eBv02ZgTIdT/evXyZH4abpZhAi/T8EMdyzpQ8Sg1BifUvLB1mgvpe1RYmjweaf3V1A8oGQon1qXY+gqFaZ5E4YTQuMP0ZSyfWSqVt0BBTWFtiqM94rIXfnZmri/I5j2H7PpmAjHGHEMExqYx/hCRD8/I9l+f6xDpWUpJHy0ku1LFhkYJrL2G24AxcN1/mPZdy3S04m2QPV8cXIjlfNj/jA2rfrm8+aYtz2pgNoZsLjxOmquSwyAMeBj8HKvghHkQ1+2bWyGUkggpcOAgWei5+ecC6/cdb47NBmAPwK02IntyrHolSu3McclgyvOAgYDXdCIZfl9LmOjEoPOV4R8eVsuLTO6xd9ivJQBAGuxjpTLrI2s213b9zru+dzvE4EnYprL3Z3N4CvlMqGjY2c433Gf5R+CXBimIx4t/9N74wQvfcDqKZR6tFzigtyFGMizp7fqUhu/SE7SnY0Y0LJ5mjaELxdTKWBSIHzRxlB5GYfrwe55UXZTafFV
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(136003)(39860400002)(366004)(66946007)(478600001)(71200400001)(2906002)(7416002)(64756008)(86362001)(66446008)(66556008)(316002)(54906003)(6916009)(66476007)(91956017)(38100700001)(36756003)(33656002)(76116006)(83380400001)(8676002)(186003)(4326008)(8936002)(2616005)(6512007)(26005)(6486002)(5660300002)(6506007)(53546011)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?utf-8?B?OUFwVUk2bmFTWGhybnJEUWlPOUhyQzhmcC9Yb1JiYThTWE9kRVp1MFhvazBE?=
 =?utf-8?B?M3RIV1NrckhETTFzSnZ4QzkxRWlnR1VxcmVRUTVTdjVyOGRlYlBGemFqL2My?=
 =?utf-8?B?ZUNTV3lCY0d1ek02TzdCbjlJV0hiWDB6MVl0a2ZsKzFobmEwOXdmdEFwMk92?=
 =?utf-8?B?bVo1dlZpelc5dVVMRmpMdFU0VktuNTBUMllKb2ROVzlJQllZTjY5bHdMNmZy?=
 =?utf-8?B?cmx6WGMxTDVUVEs3aW1yZi9hK0JkRUhUUlM2VUptRGdLWnNiRW8wRFpiZE92?=
 =?utf-8?B?c2s1SnB2cmpFTTBIYTF5ajAxa3dRMjJXQUp4dkJxcGMxTlVtaXMzLzYxNFJm?=
 =?utf-8?B?aGx5RXVGT1FITWlXbHRlRHJyYmpYUDN6MUIyc0pRY2ptRVpVWGY2NGFEczFL?=
 =?utf-8?B?V1FPZno4Wm55c0w3dWhGQ2JpS2N4ODRZZGp0TnJQejhBMHFwdFJ0eFErbS9n?=
 =?utf-8?B?akY0WlcrR1duaHdoWHFDT3pNSWRJY1FnSHRDbmhad05PNmNsbmVZZmdtVFYx?=
 =?utf-8?B?a3RvMmliL3VkUS9RUzNJWDQwMnJBQUVUN2txeXFCRjlVbWg5U2dTUjB0c3hS?=
 =?utf-8?B?SDJBQnUzenhDWGU3T0paWGVkcWYydXVWODU3TlJ1WHFYb29aV1hpRUt3Ui9I?=
 =?utf-8?B?SzNCQkJtSjFUWC9SNWc2MGJFdGFTWDVTZ1FFRktJUFZJYW9XV2dEUTNmNFB1?=
 =?utf-8?B?blFkRmZHSWxacmttZTRjLzlQdWZLVTBuei9pQlk4V1h0WS9rdDd6RVR4V0U3?=
 =?utf-8?B?eURnTy9ScEJjdGlkRDQ3NmRCcElFR0RRVHJmaFczTnFES0NFUkdYdFR1TlJv?=
 =?utf-8?B?RThkVWNPY2RTWnMzK3VXRGFveW90RUE5aGR6YTVuSFRpbWp4c0crTnZkMmFD?=
 =?utf-8?B?LzNYTUI2bFZGd2FtUitySE81Vk5ESGZWTHo1dTc4MU5CSjBTRURQR2liNVhF?=
 =?utf-8?B?VTNpQWNrMHRNQy9rQTFtNGFsVDlTS1NUL1dodmx3MTA4UW93eTZNLyt3ZE00?=
 =?utf-8?B?MVNzOXlJWjg2c3lYVDQ2ZzE2RU1CQU9vR2pWT3BpMzlid1oycEYvTHFJOXJR?=
 =?utf-8?B?VTdYMW96KzVkU1d1Vm1Qa2Nac01NYytQOUl6OWgyQVZXSUQvV3IxTlc5SytC?=
 =?utf-8?B?VTVqUmRFWlRkWUg4Yy83Ui90aTVGemZDRXhOQVhlaTU4akRSV1Mya2JEaUJD?=
 =?utf-8?B?WldmcU5IMHZGSk5GR28yRHlTMkNoWXFQdVlieUtFT215cUJOVXNCQlJabll4?=
 =?utf-8?B?T0lWQTdiZFpJUmtTRHpzVmtrbUpLdjMreWdYYVowVVVHUXAzMG5oWWd0OVhX?=
 =?utf-8?B?bkEycDNIbWdxanY3WmxraTNaTFl5MDRSUlh2Yi9Xei9HZ1A0M2NIVzlvQUk0?=
 =?utf-8?B?TXRuc1A3Tys3WlhCVU8yL2MzS2FQQVRGc2pMVXg4WkVzeWpiTVN4ZkJHVlBs?=
 =?utf-8?B?eGNZdGZrYytwMTNrR2cxVEE4b0htTk1oSlNULzJXNG5ld2I5dHVTYUhIWi9h?=
 =?utf-8?B?aC85R0hrNFJhNmZwb0dzT1cwTHhIaFJtU3Z4d29CSVZUSlFXWTh1d1hjZU93?=
 =?utf-8?B?a3hoWDFnb2szWURYbnpZeEp5djRKdFR4bE5COGJOTTRQKzVJY2lUdGFhZEpi?=
 =?utf-8?B?UnpWSkFLVXBxNDRyUlJnSDFMS1VjWi85NXF6VXlFYWg4MjlxanVvMUxGL09m?=
 =?utf-8?B?TGdBUTBBSjF3SWZ6LzZWNVhVL2NybVZrSmhMYW85MGFDczdvZzJSV1pkVGMy?=
 =?utf-8?Q?nAXrPQSBAHadRAPyMVloGC7UMeq3H+v3Cl6PHkF?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <8E75EE26395BE44BA8B9FAB2D6524786@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6042
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1ba2fedf-fc76-4570-254e-08d8fa6a9c5b
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FDlDi6X2LkBH0WEu+aOijCA+W57+eQ+JRQ73FUXxS9yKlGBeGYIVwmZIEf+TpPUTSC3rTUximQhrwBLCw0jxWKx/96CVHABdT9rYyf0OzxE1e1CJoeACR8mvkAUzq6I6441Y70DVC2L+E2j021ftNYv6B/y3X6EiENtRzzbKaU87MPLhMy6aNnPro6vj6pVsQNQ9bV5C3ukeS2mIK4kmVlyJY3vGFtK3ioNW8Pr8q/ry3WWVpYDzJxTxkI7mGupRmwjPQc/tPZqMrAndEctK0eQO9w4xxDEYG6xXW08sBqqk2TdGSksmpT5NQpW4GCPwhXJ3ysa28Ygl/k6MeQ/fZIFJQCkpi0/dvGZz6IXrWANL1wuBofz/ufT2rQsXoRyZ8HbYK46jjFIksXwLZ6aEXk01T39EZRPlCKWYPXu4mtZMSQ7uM1zF4XZaz/RFC3ZFKQAQuxxLrGfGIbxLTRkSO5viHb2p1Mjn0YK0L8yGnw/hcNf4GVZ1YE/TkxwXtEo+ddNL5rbH02GIdE5G394vxzO2NtnTdCO8Q5oECj19qq2j04zOb7mUqC7Ci5TAJGOVCu6cTHrBTFZPv2NjODJp81GSZj5Rep7vJscOs6xKVLz6fEL9p1yM0uc552Zli1osXWkdQXiInM8OwY8UHSREajHoaOo1rX3e6Lvv5yy4Tws=
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:(4636009)(376002)(39860400002)(396003)(136003)(346002)(36840700001)(46966006)(8936002)(5660300002)(83380400001)(316002)(8676002)(81166007)(107886003)(26005)(54906003)(6506007)(336012)(36756003)(356005)(6512007)(6486002)(53546011)(33656002)(2616005)(47076005)(70206006)(86362001)(70586007)(4326008)(36860700001)(2906002)(82740400003)(478600001)(186003)(6862004)(82310400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 08:45:29.0026
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: cc2068e5-2aa1-4c9f-8c47-08d8fa6aa992
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:
	VE1EUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6176

SGksDQoNCj4gT24gOCBBcHIgMjAyMSwgYXQgNzowMCBhbSwgSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPiB3cm90ZToNCj4gDQo+IE9uIDA3LjA0LjIwMjEgMjA6MDYsIEp1bGllbiBHcmFs
bCB3cm90ZToNCj4+IEhpIEphbiwNCj4+IA0KPj4gT24gMDYvMDQvMjAyMSAxNjoyNSwgSmFuIEJl
dWxpY2ggd3JvdGU6DQo+Pj4gT24gMDYuMDQuMjAyMSAxNjozMCwgSnVsaWVuIEdyYWxsIHdyb3Rl
Og0KPj4+PiBIaSBSb2dlciwNCj4+Pj4gDQo+Pj4+IE9uIDA2LzA0LzIwMjEgMTU6MTMsIFJvZ2Vy
IFBhdSBNb25uw6kgd3JvdGU6DQo+Pj4+PiBPbiBUdWUsIEFwciAwNiwgMjAyMSBhdCAxMjozOTox
MVBNICswMTAwLCBSYWh1bCBTaW5naCB3cm90ZToNCj4+Pj4+PiBNU0kgc3VwcG9ydCBpcyBub3Qg
aW1wbGVtZW50ZWQgZm9yIEFSTSBhcmNoaXRlY3R1cmUgYnV0IGl0IGlzIGVuYWJsZWQNCj4+Pj4+
PiBmb3IgeDg2IGFyY2hpdGVjdHVyZSBhbmQgcmVmZXJlbmNlZCBpbiBjb21tb24gcGFzc3Rocm91
Z2gvcGNpLmMgY29kZS4NCj4+Pj4+PiANCj4+Pj4+PiBUaGVyZWZvcmUgaW50cm9kdWNpbmcgdGhl
IG5ldyBmbGFnIHRvIGdhdGUgdGhlIE1TSSBjb2RlIGZvciBBUk0gaW4NCj4+Pj4+PiBjb21tb24g
Y29kZSB0byBhdm9pZCBjb21waWxhdGlvbiBlcnJvciB3aGVuIEhBU19QQ0kgaXMgZW5hYmxlZCBm
b3IgQVJNLg0KPj4+Pj4gDQo+Pj4+PiBJcyBzdWNoIG9wdGlvbiByZWFsbHkgaW50ZXJlc3Rpbmcg
bG9uZyB0ZXJtPw0KPj4+Pj4gDQo+Pj4+PiBJSVJDIFBDSSBFeHByZXNzIG1hbmRhdGVzIE1TSSBz
dXBwb3J0LCBhdCB3aGljaCBwb2ludCBJIGRvbid0IHNlZSBtdWNoDQo+Pj4+PiB2YWx1ZSBpbiBi
ZWluZyBhYmxlIHRvIGNvbXBpbGUgb3V0IHRoZSBNU0kgc3VwcG9ydC4NCj4+Pj4gDQo+Pj4+IEkg
YW0gcHJldHR5IHN1cmUgdGhlcmUgYXJlIGJvYXJkIG91dCB3aXRoIFBDSSBzdXBwb3J0IGJ1dCBu
byBNU0kNCj4+Pj4gc3VwcG9ydC4gQW55d2F5LCBldmVuIGlmIHRoZSBzcGVjIG1heSBtYW5kYXRl
IGl0Li4uDQo+Pj4+IA0KPj4+Pj4gDQo+Pj4+PiBTbyB3aGlsZSBtYXliZSBoZWxwZnVsIGZvciBB
cm0gUENJIGVmZm9ydHMgQVRNLCBJJ20gbm90IHN1cmUgaXQNCj4+Pj4+IHdhcnJhbnRzIGEgS2Nv
bmZpZyBvcHRpb24sIEkgd291bGQgcmF0aGVyIHNlZSBBcm0gaW50cm9kdWNlIGR1bW15DQo+Pj4+
PiBoZWxwZXJzIGZvciB0aGUgbWlzc2luZyBmdW5jdGlvbmFsaXR5LCBldmVuIGlmIHVuaW1wbGVt
ZW50ZWQgYXQgdGhlDQo+Pj4+PiBtb21lbnQuDQo+Pj4+IA0KPj4+PiAuLi4gZnJvbSBteSB1bmRl
cnN0YW5kaW5nLCBtb3N0IG9mIChpZiBub3QgYWxsKSB0aGUgTVNJIGNvZGUgaXMgbm90IHZlcnkN
Cj4+Pj4gdXNlZnVsIG9uIEFybSB3aGVuIHVzaW5nIHRoZSBHSUN2MyBJVFMuDQo+Pj4+IA0KPj4+
PiBUaGUgR0lDdjMgSVRTIHdpbGwgZG8gdGhlIGlzb2xhdGlvbiBmb3IgeW91IGFuZCB0aGVyZWZv
cmUgd2Ugc2hvdWxkIG5vdA0KPj4+PiBuZWVkIHRvIGtlZXAgdHJhY2sgb2YgdGhlIHN0YXRlIGF0
IHRoZSB2UENJIGxldmVsLg0KPj4+IA0KPj4+IEJ1dCB0aGF0J3MgdGhlbiBub3QgImhhcyBQQ0kg
TVNJIiBidXQgIm5lZWQgdG8gaW50ZXJjZXB0IFBDSSBNU0kNCj4+PiBhY2Nlc3NlcyIsIGkuZS4g
SSBkb24ndCB0aGluayB0aGUgS2NvbmZpZyBvcHRpb24gaXMgY29ycmVjdGx5DQo+Pj4gbmFtZWQu
IElmIGEgZGV2aWNlIHdpdGggTVNJIHN1cHBvcnQgaXMgdXNlZCwgeW91IGNhbid0IG1ha2UgdGhh
dA0KPj4+IE1TSSBzdXBwb3J0IGdvIGF3YXksIGFmdGVyIGFsbC4NCj4+IA0KPj4gVGhhdCdzIGFj
dHVhbGx5IGEgZ29vZCBwb2ludC4gUmFodWwsIGRvIHlvdSB0aGluayB0aGUgY29uZmlnIGNhbiBi
ZSANCj4+IHJlbmFtZWQgdG8gc29tZXRoaW5nIGxpa2UgQ09ORklHX1BDSV9NU0lfTkVFRF9JTlRF
UkNFUFQ/DQo+IA0KPiBNaW5vciByZW1hcms6IEluIHRoaXMgbmFtZSBJJ2QgYmUgaW5jbGluZWQg
dG8gc3VnZ2VzdCB0byBvbWl0IE5FRUQuDQo+IA0KDQpPSyAuIEkgd2lsbCB1c2UgdGhlIG5hbWUg
Q09ORklHX1BDSV9NU0lfSU5URVJDRVBUIGFuZCB3aWxsIHNlbmQgbmV4dCB2ZXJzaW9uIG9mIHRo
ZSBwYXRjaC4NCg0KUmVnYXJkcywNClJhaHVsDQoNCj4gSmFuDQoNCg==


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 08:59:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 08:59:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107081.204660 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUQVz-0008Fc-GR; Thu, 08 Apr 2021 08:59:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107081.204660; Thu, 08 Apr 2021 08: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 1lUQVz-0008FV-Cq; Thu, 08 Apr 2021 08:59:51 +0000
Received: by outflank-mailman (input) for mailman id 107081;
 Thu, 08 Apr 2021 08:59:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3iLd=JF=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUQVx-0008FQ-Qz
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 08:59:50 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0a255f2a-ab06-49c7-8ed0-e72226decdf8;
 Thu, 08 Apr 2021 08:59: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: 0a255f2a-ab06-49c7-8ed0-e72226decdf8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617872388;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=4Ia33LKwhjbPkscb1Or/7OKSTir3dz8aw/WNARweU8M=;
  b=Eh5zNDW79pt8SsXTh0IloD5SfotUf6nla4sjvLMdmfohpqIEDnvDamhw
   AvpMptJ4Tb6tXuo6xNVMYgtxgP12iWp9FzeqaKdD0TgtrlFWTSU/M9RVj
   3X47Akr1BIzSJFBe4uczj8eTaKHzzKymGlVESJ7FIY/Cy02RL/sFA+lT8
   M=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: NabV8eXiVuDFD/cJGpK+WSLLv1yZVlJPBZGJfq5I3696Mf58ha8MBc8jYC3ackXZ8XL9jXJtGm
 Oc1rMSv7iHrahgdAI0YXBIDoekbpbYz9eV6fz/tMMqViS6f9C3dTz9SSHY0Oi/k1j6i2ST8KZQ
 XU+qYOimUvnuoqTM2DyW+sUmRa0rwmGqhqIgCvvc/Niup1vcT5R26JixR70ZG8KbONI4TrUCMi
 0Ur3uTFiLWKlmxHYrLhdicTAY0N9yK64HHVUU5Sa2zjFDUvUZxL9f50wY5asVy+dur8Hhgcw+q
 6sA=
X-SBRS: 5.2
X-MesageID: 41145433
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:cFGjX6uXZo27OzFdhlNgd3wO7skCxoYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwQeCBtA50lGJ
 2AoudGvSOnY3QLbsK9b0N1JdTrjdvNiZ7gfFo6HBYh8gaDlneF77T9Hhie0H4lIk5y6J0l9n
 XIlBG827W7v5iAu2Th/kLwz7ATotvuzdNfGNeB4/J6FhzAghulDb4ROYGqkysypIiUmTMXuf
 nK5ywtJsFir07WF1vF3SfF/ynF/HIQ52T5yVme6EGT0fDRYD4hEcJOicZ4X3LimjMdlepx2q
 5KwG6V3qA/ZXir/FWflqr1fipnmUaurX0pnfR7tQ0mbaIkZKJMtotaxUtJEf47bVPHwbo6G+
 pjBty03ocxTXqmaRnizw1S6e3pdHEyEhCae1MFq8yY3hNH9UoJsXcw9YgxmGwN+4k6TIQBz+
 PYMr5wnLULdcMOa7lhbd1xDfefOyjoe1bhIWiSKVPoGOUuPG/MkYf+5PEQ6PuxcJIF4ZMukP
 36IRxlnF93X3irJdyF3ZVN/ByIan66Ry7RxsZX4IU8kqHgRZLwWBfzCGwGoo+FmbEyE8fbU/
 G8NNZ9GPn4N1bjHo5PwknXR4RSE38DS8cY0+xLGm6mk4buEMnHp+bbePHcKP7GCjA/QF7yBX
 MFQXzdP8NFwke3WmLpoRTYVn/3E3aPv65YIez/xaw+2YINPopDvkw+klKi/PyGLjVEr+gXcS
 JFUfbau5L+gVPz0XfD7m1vNBYYJF1S+q/cX3RDohJPF0v1dL0EquiOYGw65grCGjZPC+ftVC
 JPrVV+/qy6a7aKwzo5Nt6hOmWGy1weuWyNVJVZvqGY/8/qdtcZA/8dKeJMPDSOMyYwtRdhqW
 9FZgNBbFTYDCnShaKsi4FRIvreedl6iAKCOtVVtnrbiEWZqagUNzgmdg/rdfTSrRclRjJSiF
 E02bQYmqC8lTGmLnZ6vP41K2RWaGOcAKtPCSOMYIk8oMGtRChACUOxwRCKgRA6fWTns2EfnH
 boIyGvdfbXOVZFoXxD3qH28FR7S3WFcytLGwNHmLw4MV6Dlmd40OeNaKb26WeXZ1cY6sw2MT
 3OY1IpU0hT7uHy8CTQtCeJFH0gyJlrA/fUC647darPnlm3LpeTqK0AF/hI3ZpsOdz0qNUXWe
 aHdwL9FkK/N8oZnyiu4lo1Mih9r3cp1c7y0Br+9W6iwToRB+HRLFkOfcBsH/isq0zfA9CG35
 VygYhr4a+eMmDtZsWHzq+SRThZMR/XqXO3SeZtiZ08h9NHiJJDW73gFR3P3zV7+T97CuHevk
 YXWr5677DMIZUHRb1bRwtpun4S0O2SJ04quDHsCuAwfVsRn2bWVun5lobgmP4KOAm9vwP+Nl
 mUzj1F89rEVyWF06QGC6hYGxUgVGEMrFBj9viFbYveFUGDcPxC5kOzNhaGAfVgYZnAPbUbtR
 Bh5d6U28eRairjwQjV+R92OLhH/WriYcS8Bmu3aKN12u3/HVSHma2x5sGvyB/xVDugckwdwb
 R/SnZ4VLULthASyKst0iazTaTrokUq13tmiAsX6WLF68yB+2fUHUZPLAvDpI5ZNAMja0S1sQ
 ==
X-IronPort-AV: E=Sophos;i="5.82,205,1613451600"; 
   d="scan'208";a="41145433"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K2RerRkRZGkyGgyKQ66fVo80S5wgiHdZ69It0cuNXcWBeWTAQ1s+XDNUdxa7ERXXFPNow694migp8ArPk3v+5xd6ArMnKwjiWg+RUdWTbRxjfME3FPUfi1wf2IVNT4fcJSeQxPVoCzQZBO+aMy8p6tSNwwkTI6DsoHEd3x8MsGj+lPQ0qohgqvERsrhQRYYH0nPqhKhSSbc8hF/WsEgDLRxr5jCIJX/N1+qn5nmmp2KDIE8gwlwiAtg6ZZrypnZu1iTHi1S89qMUXsU1NahhpOW5rWhy80C1AcmV+aeczNNHlNPR4yLVhg1tR/MVYpYLTFlAgcx4F5YNnVbPQX0miw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N/Y3Ptp3NvXa7GvLeD1AMwTHEEKEFqDGrIrx1A0D+MI=;
 b=F7zIP64+2yjoyMG60zQ0c9i8p/8z8t/NHYrvH/qxlsmur2k1qt3a6MXjuLrjAwr79wjHtqlVaSwWn3iO+oN47spuYJuWoXHj0HgJySKQl352lI4USeyDzG4wzrPpi7pwwxHen1QONKqs90eNfXW4okOH/NsghXS1X1YKvNdsapp6wT/DJrcOfNIy1Mjb6/zic52aAeo2VL7hqZloA2+QVbH/6KLvFImL4Y3y1ri4MUB3ErvpFKHZo9Rj4NFULb6XWz6WpxzUtp2TIjBz1dl6j/v8T6UA+aKVtAEDkE9RZRcMhYYHbBcK3qX4gTkbxoVZlvElgnLp6OlqcSuKp4SOtw==
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=N/Y3Ptp3NvXa7GvLeD1AMwTHEEKEFqDGrIrx1A0D+MI=;
 b=kM0YYUpXR8Qqz9620s0vzFskecQOI2KYy/8mmJrwPscScpiqdaYx5Fiss5VQHZUW3elu3yc7dOvZDyMOAkM2PrUzHe2BN+WtVxAo0OywFnIuukDNJcMurs6SuEPLpzSO42viA4FYjAuB/L3+Jx5Oh2vpLrCuzPRE9XBeS5b5AeE=
Date: Thu, 8 Apr 2021 10:59:33 +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 05/11] x86/vioapic: switch to use the EOI callback
 mechanism
Message-ID: <YG7F9afvuvtqgSIS@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-6-roger.pau@citrix.com>
 <f8d9c37f-8896-36af-712a-ac0765567409@suse.com>
 <YG3iAeFFA/ZJh5es@Air-de-Roger>
 <402bba57-4998-fa9c-2767-235e602a06bf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <402bba57-4998-fa9c-2767-235e602a06bf@suse.com>
X-ClientProxiedBy: MR2P264CA0078.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::18) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 96d8d5ef-aaf4-4cfc-92fe-08d8fa6ca813
X-MS-TrafficTypeDiagnostic: DS7PR03MB5575:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5575EC74D5D8A0CB141E81428F749@DS7PR03MB5575.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: mrzoDHsLc7/kHFk15IncguPVa8s7GOIjYLDpPVRKXHU/TxzHAuF+zM4j/Wgeg2HpCIirowu4nzBHk+oIJbYKBf3yOy0fIHkFy8MYOPUPQEEzE7lamwisvu8bXqBz8Sfz8rOlaHe8uw6W/8ITOtTQf+1PjzuoVQGLfQUkjKnczVsYDOR7asXLW0amXdIbcVCwF5sm09kZ9BJ1Vzl+/VzrGpLSEmZZbLAw0SmkDAq9dJt8MAjQmzRRr6BfvhnQtnqTqW8MPdQ1vI0n4CHrRIcAs0M63poLesE7dlY2JatDRgNwXfFaf8fWAwG2cLhFdUZx9pVspsRmScgIk7GgNtY7JmLNM389q0NP600uoJ8/fetATx45P1nrWmstxIjplVSSfI+MXfXou2lkwGEhGkOU8T+KW4H1u4rGJKGWOGXByz5vuWhOuZGPYiPwCLopBaNz3/g5s/S9kQiJ3XbbU/PgY4der7BfdL6PlV2Ri1UXEmv5vtmS3XFTTnDO8PsY/ICDhV5k7y1/Qjp5TEbi8keJJFRYqgOBjFPXyK4FELbtTh0PxlMtmeSMjw5p63JiOVXr+Qr4V9RFvyGrJdUNB0d3qSKZgspw034lGbyT2gV3/2U+Xh4j7I0KLZgkfe/JkIDFuoyZpnDJDnOfcniGyvHy1g08FWNwGLi0r0fLaxOuMAJYQFAMHgOQ5gH8LWLnXvUR
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(396003)(39860400002)(346002)(366004)(136003)(376002)(478600001)(316002)(53546011)(8936002)(66946007)(66556008)(66476007)(5660300002)(38100700001)(4326008)(2906002)(26005)(33716001)(186003)(956004)(6496006)(6666004)(9686003)(85182001)(83380400001)(86362001)(54906003)(16526019)(6916009)(8676002)(6486002)(309714004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 96d8d5ef-aaf4-4cfc-92fe-08d8fa6ca813
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 08:59:45.7068
 (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: u+I/eP6ubOh+YURDIbMvqaArAq4+1OpProHYcYuDJdyA2zy/MzwCKLKG29iQwHMpSrTpjeqd0LMwI6MaKfdd3A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5575
X-OriginatorOrg: citrix.com

On Thu, Apr 08, 2021 at 08:27:10AM +0200, Jan Beulich wrote:
> On 07.04.2021 18:46, Roger Pau Monné wrote:
> > On Wed, Apr 07, 2021 at 05:19:06PM +0200, Jan Beulich wrote:
> >> On 31.03.2021 12:32, Roger Pau Monne wrote:
> >>> --- a/xen/arch/x86/hvm/vioapic.c
> >>> +++ b/xen/arch/x86/hvm/vioapic.c
> >>> @@ -621,7 +624,43 @@ static int ioapic_load(struct domain *d, hvm_domain_context_t *h)
> >>>           d->arch.hvm.nr_vioapics != 1 )
> >>>          return -EOPNOTSUPP;
> >>>  
> >>> -    return hvm_load_entry(IOAPIC, h, &s->domU);
> >>> +    rc = hvm_load_entry(IOAPIC, h, &s->domU);
> >>> +    if ( rc )
> >>> +        return rc;
> >>> +
> >>> +    for ( i = 0; i < ARRAY_SIZE(s->domU.redirtbl); i++ )
> >>> +    {
> >>> +        const union vioapic_redir_entry *ent = &s->domU.redirtbl[i];
> >>> +        unsigned int vector = ent->fields.vector;
> >>> +        unsigned int delivery_mode = ent->fields.delivery_mode;
> >>> +        struct vcpu *v;
> >>> +
> >>> +        /*
> >>> +         * Add a callback for each possible vector injected by a redirection
> >>> +         * entry.
> >>> +         */
> >>> +        if ( vector < 16 || !ent->fields.remote_irr ||
> >>> +             (delivery_mode != dest_LowestPrio && delivery_mode != dest_Fixed) )
> >>> +            continue;
> >>> +
> >>> +        for_each_vcpu ( d, v )
> >>> +        {
> >>> +            struct vlapic *vlapic = vcpu_vlapic(v);
> >>> +
> >>> +            /*
> >>> +             * NB: if the vlapic registers were restored before the vio-apic
> >>> +             * ones we could test whether the vector is set in the vlapic IRR
> >>> +             * or ISR registers before unconditionally setting the callback.
> >>> +             * This is harmless as eoi_callback is capable of dealing with
> >>> +             * spurious callbacks.
> >>> +             */
> >>> +            if ( vlapic_match_dest(vlapic, NULL, 0, ent->fields.dest_id,
> >>> +                                   ent->fields.dest_mode) )
> >>> +                vlapic_set_callback(vlapic, vector, eoi_callback, NULL);
> >>
> >> eoi_callback()'s behavior is only one of the aspects to consider here.
> >> The other is vlapic_set_callback()'s complaining if it finds a
> >> callback already set. What guarantees that a mistakenly set callback
> >> here won't get in conflict with some future use of the same vector by
> >> the guest?
> > 
> > Such conflict would only manifest as a warning message, but won't
> > cause any malfunction, as the later callback would override the
> > current one.
> > 
> > This model I'm proposing doesn't support lapic vector sharing with
> > different devices that require EOI callbacks, I think we already
> > discussed this on a previous series and agreed it was fine.
> 
> The problem with such false positive warning messages is that
> they'll cause cautious people to investigate, i.e. spend perhaps
> a sizable amount of time in understanding what was actually a non-
> issue. I view this as a problem, even if the code's functioning is
> fine the way it is. I'm not even sure explicitly mentioning the
> situation in the comment is going to help, as one may not stumble
> across that comment while investigating.

What about making the warning message in case of override in
vlapic_set_callback conditional to there being a vector pending in IRR
or ISR?

Without having such vector pending the callback is just useless, as
it's not going to be executed, so overriding it in that situation is
perfectly fine. That should prevent the restoring here triggering the
message unless there's indeed a troublesome sharing of a vector.

> >>> --- a/xen/arch/x86/hvm/vlapic.c
> >>> +++ b/xen/arch/x86/hvm/vlapic.c
> >>> @@ -192,7 +192,13 @@ void vlapic_set_irq_callback(struct vlapic *vlapic, uint8_t vec, uint8_t trig,
> >>>  
> >>>      if ( hvm_funcs.update_eoi_exit_bitmap )
> >>>          alternative_vcall(hvm_funcs.update_eoi_exit_bitmap, target, vec,
> >>> -                          trig || callback);
> >>> +                          /*
> >>> +                           * NB: need to explicitly convert to boolean to avoid
> >>> +                           * truncation wrongly result in false begin reported
> >>> +                           * for example when the pointer sits on a page
> >>> +                           * boundary.
> >>> +                           */
> >>> +                          !!callback);
> >>
> >> I've had quite a bit of difficulty with the comment. Once I realized
> >> that you likely mean "being" instead of "begin" it got a bit better.
> >> I'd like to suggest also s/result/resulting/, a comma after "reported",
> >> and maybe then s/being reported/getting passed/.
> >>
> >> As to explicitly converting to bool, wouldn't a cast to bool do? That's
> >> more explicitly an "explicit conversion" than using !!.
> > 
> > I've always used !! in the past for such cases because it's shorter, I
> > can explicitly cast if you prefer that instead.
> 
> I agree with the "shorter" aspect. What I'm afraid of is that someone may,
> despite the comment, think the !! is a stray leftover from the bool_t
> days. I'd therefore prefer to keep the !! pattern for just the legacy
> uses, and see casts used in cases like the one here. However, if both you
> and Andrew think otherwise, so be it.

I'm fine with casting to boolean.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 09:12:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 09:12:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107094.204679 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUQiZ-0001dF-Pq; Thu, 08 Apr 2021 09:12:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107094.204679; Thu, 08 Apr 2021 09:12: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 1lUQiZ-0001d8-Mp; Thu, 08 Apr 2021 09:12:51 +0000
Received: by outflank-mailman (input) for mailman id 107094;
 Thu, 08 Apr 2021 09:12:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3iLd=JF=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUQiX-0001d3-LW
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 09:12:49 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1ea8361e-a68e-4343-965a-a069409234fd;
 Thu, 08 Apr 2021 09:12: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: 1ea8361e-a68e-4343-965a-a069409234fd
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617873168;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=7bi+KOjXvGN6dh8Q8sXeJWG409zzSW+6x+gSg8Ly6GY=;
  b=BxdchgMZbRGIjH51tXWrfOA7ZlHQy21KMO4LtinLmsZs79YpvsMUMn0p
   FvMWDkjf7NmfmBNDpXMQKu3jytknrFwTiqE+d4kxXoDtRguxz55qtlFXQ
   3/pne+xYgYv13EBimlpC7BWaBQhxRbL5FLUiLlnkShR4B57fz5nKgjWOC
   Y=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 35JU/0WhvlMOJvW5+dD5Y6RIJl6kV8hW/gLg8kmBJlpcO0DogAHt1EDJOXOKD3NoHauKuHBRAf
 4V0PnUP71SdcbUYoTrhfOMS7SRV42q1rrJLD29erVNCV6+uvI04t8uTxYfrWDPph5APSBDl4se
 9ZNK2hJ75uTHVJsZ2dKobX2ltFjo/5RODZXZ77Gj02b0qlQgPzUoA6S5WR+mcSBGcp6V+/IVmK
 b4uqUv6vmRFEGB1cdEbbwUW0L8k9yA3p8vzjn5FQUDcVSmolS6yt6YXZtM3jrdCe8EGkk2VWSW
 CuY=
X-SBRS: 5.2
X-MesageID: 41133437
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Huo4K6+L+SQxzWemtrtuk+EKdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qH/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7H2vanrfAIcAFof4BSO5AnC1JfBDxOa0h0COgk/o4sKzG
 6tqW3Ez5Tmid6X4Fv212jf75NZ8eGRt+drNYi3peU+bhnpggasTox9V7OFpyBdmpDS1H8a1O
 Pijj1lE8Nv627AXmzdm2qT5yDQlAwAxlWn6ViEjWDtqcb0LQhKdfZptMZiXTbyr28D1esMt5
 5j7iaimLd8SS7kpmDb4ePFUhl7/3DE2kYKoKoooFF0FbcFZKQ5l/14wGplVK0uMQjd844dHO
 xnHKjnlYxrWGLfVXzfs2V1qebcJ0gbL1ODSkgGjMSfzyJbqnB/11cZ38wShB47heoAd6U=
X-IronPort-AV: E=Sophos;i="5.82,205,1613451600"; 
   d="scan'208";a="41133437"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kl6YvZ7Zdzv6/v70pg+9ZgqkBynmUDM8T+mZUpO67aJyock7/R/jrbb3U6EisDXJ2xhVmeLzvjamqkQQ2echN7J2thPOHGRnNR9yeUejPs2GxMeH5w5RvBFu6DWiJi811/New98lhzp2OF+rrvaKYBSvKcCmsyxJWyhWYXiFw6Bo7jMTe/HcsC+jgMPDOLcWmOAG9rzSx5Tql39kLuJnF7C7VVbyHS+HbwdkCE/kAE+6bSjAnq453+b/f2DwZgyh3vmeQf5OZ2ao/XGIYMyLSvG11vTzjkI6cRzsUJCgAtec3GywguWmZ9vPbTtK4DhiLHbjSJw/raW3EmNB38ZZlQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qKkAWnpbpPsRs/Ipu4daGC3sfX5Mrclb6hJZj1sDClA=;
 b=Ny8nAxMs353MxWxN7A271DDl+gV24wbr2nB87NAfzs6wyFuO87F2D/SxZf2xokBteIPwQeXXZHrmpeHRXNXsrDlPEHLaqxsN844rbwXKGtMbcc1dcovBXH/cRoX+XoxW1fJm/okkBzGd7989hJBpMHJNj78zYIunOsRC7BonQWj49Bp9a0N0IR0tI0hsBN1AMHIvYylP89BfE9Y+A3XOcxVh6Qrn3VMZgDTLxyoyed731gs3kVONsrONfDjHk96eA8dCGAr2S5417CMh1TtSpiQaXtmI+WGQ3CUwpNuNcLouB80w9F3Gbad2FewzLPeBrhpeXaJa351QECukYcOdmQ==
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=qKkAWnpbpPsRs/Ipu4daGC3sfX5Mrclb6hJZj1sDClA=;
 b=Lg5swWNisOpcTqHxgw9JTBULrsiVEj8xCeJHBV816hxYD3iLQJUNGOq9Gs1YZvLICjgyF9teAbgtHMak4d1WQ1lUJRJNHy8LziPFlYJNPNV06skXKFZaP7vsQDYKbNArp09AXISOBQhE6LFDpZm2+zSR9OwqODQ+KwUQWcRh7/c=
Date: Thu, 8 Apr 2021 11:12:37 +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 03/11] x86/vlapic: introduce an EOI callback mechanism
Message-ID: <YG7JBXR3znxhNPtv@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-4-roger.pau@citrix.com>
 <d18d9e3b-872f-b0cb-aebf-5e55d4433b75@suse.com>
 <YG3djUEiAd9wqQvv@Air-de-Roger>
 <e5a45339-a79a-a903-0599-86e14f493818@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e5a45339-a79a-a903-0599-86e14f493818@suse.com>
X-ClientProxiedBy: MR2P264CA0090.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 11604609-593c-44c1-adce-08d8fa6e7718
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB29239B2B9B1FB7515095EC0F8F749@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: VybthF6stpOXUFYyBBy99+euf5gTykzEkhHtmmLi7Qr6cbNRg5hYLR8iHY06qDdeFWWT6HiZDswWPS/Es9VJHlG2ba5O/d2TGetjtJBM/aXR/jdKcx39/p6AqEaKsB6oKqC7xwMjvZuCdr7LGqJRzKooPVF8SYt1CI8bAuMPrYQruP78LUKgrQnVv2iFFdvpu0p6ACB7E87fCnWugJbbHiIzqQnYViuIzdehkc4qBOyFvGtLHNFGpNcuCxSlcdEeq1TStgMh0H3wuqUPzaILPeiodhBKS4UoOpObsbIXB5N00UuBTTChcjiURDEwmY69zFGK3PglIItnJKzkoQFLzLzo/XtmFjk8AF8eFpSs1yXYhc9njETFIjdc0zTEgr0DYTIJ3v8uky4bsEu/b5HammPYGpJ34/KdkTMdQqevgSQ3V0+y88V73xGH/Qs5uDFn/4rX/J+8MP8ti3WN4kzV5mJuK7RK+YSRl8tvgzS2pKkQpr/T0MEkXfiO8qF4D1W13sWfcWf5CumNvJXsnuSIAoN7TqvYezGJdJ+02t84MFSd0peU4n/WeoDPz/1ZGHNAEUzglHekdppkmQZ4u2+SX5KhMx6cFzMqoXXGJ83SrSwHpydxPpmwAZ8VATarc4WJmAqY2Jj1QNOQ6YJjT0pKtIpR7n5r9LyHFbAZtrHwB2Q=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(376002)(396003)(366004)(39860400002)(346002)(9686003)(6666004)(83380400001)(38100700001)(4326008)(66946007)(66476007)(66556008)(86362001)(2906002)(5660300002)(85182001)(478600001)(6486002)(54906003)(33716001)(316002)(8676002)(956004)(26005)(8936002)(16526019)(186003)(53546011)(6496006)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 11604609-593c-44c1-adce-08d8fa6e7718
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 09:12:42.6354
 (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: cgzRqJyV+pA2afH+otEPhlRWp65kSubZt/b50B+8Qrz14XwWMAHS9A/EzIGkCmaEIy0u6dtpTDV4P5YTD0plEA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

On Thu, Apr 08, 2021 at 08:20:15AM +0200, Jan Beulich wrote:
> On 07.04.2021 18:27, Roger Pau Monné wrote:
> > On Wed, Apr 07, 2021 at 04:55:43PM +0200, Jan Beulich wrote:
> >> On 31.03.2021 12:32, Roger Pau Monne wrote:
> >>> Add a new vlapic_set_irq_callback helper in order to inject a vector
> >>> and set a callback to be executed when the guest performs the end of
> >>> interrupt acknowledgment.
> >>>
> >>> Such functionality will be used to migrate the current ad hoc handling
> >>> done in vlapic_handle_EOI for the vectors that require some logic to
> >>> be executed when the end of interrupt is performed.
> >>>
> >>> The setter of the callback will be in charge for setting the callback
> >>> again on resume. That is the reason why vlapic_set_callback is not a
> >>> static function.
> >>
> >> I'm struggling with your use of "resume" here: Resuming from S3
> >> doesn't require re-doing anything that's kept in memory, does it?
> >> So what meaning does the word have here?
> > 
> > Right, I can see the confusion. Resume here means a guest being
> > migrated or restored, not Xen itself being resumed. Callbacks are not
> > part of the exported guest state, and hence any emulated device that
> > requires a callback will have to register it as part of loading the
> > saved state.
> > 
> >> Apart from this, and with the xzalloc_array() change requested
> >> by Andrew, this looks good to me.
> 
> In which case with this change and "resume" replaced suitably in the
> description

I've worded it as:

"The setter of the callback will be in charge for setting the callback
again on guest restore or resume, as callbacks are not saved as part
of the vlapic state. That is the reason why vlapic_set_callback is not
a static function."

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

Thanks. I also want to make the warning message in vlapic_set_callback
conditional to the vector being pending in ISR or IRR, so I will not
add your RB this time if that's fine.

Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 09:32:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 09:32:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107098.204691 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUR10-0003TW-DA; Thu, 08 Apr 2021 09:31:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107098.204691; Thu, 08 Apr 2021 09: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 1lUR10-0003TP-9K; Thu, 08 Apr 2021 09:31:54 +0000
Received: by outflank-mailman (input) for mailman id 107098;
 Thu, 08 Apr 2021 09:31: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 1lUR0z-0003TH-Qi; Thu, 08 Apr 2021 09:31: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 1lUR0z-0008TW-D2; Thu, 08 Apr 2021 09:31: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 1lUR0z-00060J-4l; Thu, 08 Apr 2021 09:31:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUR0z-0007mC-4G; Thu, 08 Apr 2021 09:31: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=Ac87KTjzKOxdpftoe/HwLizYUL9JVT3fRpNmzwOYxVg=; b=EjxsgdY6c83YAjSGIuplUturUt
	AFyomDuI+MDGDlLw1Gw7D2Gh2ilgOz2C2H+gCXwCMWK0ReB4BHo5maXZTuqxdUy2A/IOh2xZyULau
	qwV8OU9qcTpOn8z9LQz8fXrDsJqcxq5l6o05jolOv9XIAUuVICioCy3CaaF5P5CLo3Ek=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160799-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 160799: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=9c08b3e7d5ac177a1ecb3678004fd94164865814
X-Osstest-Versions-That:
    ovmf=4ac02962017c77bf38b462f970c884c2dc7931cf
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 09:31:53 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 9c08b3e7d5ac177a1ecb3678004fd94164865814
baseline version:
 ovmf                 4ac02962017c77bf38b462f970c884c2dc7931cf

Last test of basis   160757  2021-04-06 01:11:18 Z    2 days
Testing same since   160799  2021-04-07 16:40:17 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   4ac0296201..9c08b3e7d5  9c08b3e7d5ac177a1ecb3678004fd94164865814 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 09:48:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 09:48:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107106.204736 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lURHD-0004ad-NU; Thu, 08 Apr 2021 09:48:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107106.204736; Thu, 08 Apr 2021 09:48: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 1lURHD-0004aR-Hg; Thu, 08 Apr 2021 09:48:39 +0000
Received: by outflank-mailman (input) for mailman id 107106;
 Thu, 08 Apr 2021 09:48:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lURHB-0004WM-P1
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 09:48:37 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 36a3e47c-9081-4c70-b092-c6ecab5b98b2;
 Thu, 08 Apr 2021 09:48:33 +0000 (UTC)
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 A11E0106F;
 Thu,  8 Apr 2021 02:48:32 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 0C6213F694;
 Thu,  8 Apr 2021 02:48: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: 36a3e47c-9081-4c70-b092-c6ecab5b98b2
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>,
	Rahul Singh <rahul.singh@arm.com>
Subject: [PATCH v2 2/4] xen/arm: Handle cases when hardware_domain is NULL
Date: Thu,  8 Apr 2021 10:48:16 +0100
Message-Id: <20210408094818.8173-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210408094818.8173-1-luca.fancellu@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>

The function is_hardware_domain() returns true if the
hardware_domain and the passed domain is NULL, here we
add a check to return false if there is no hardware_domain.

Among the common and arm codebase there are few cases where
the hardware_domain variable is checked to see if the current
domain is equal to the hardware_domain, change this cases to
use is_hardware_domain() function instead.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/arch/arm/irq.c                       | 2 +-
 xen/common/domain.c                      | 4 ++--
 xen/drivers/passthrough/arm/ipmmu-vmsa.c | 2 +-
 xen/drivers/passthrough/arm/smmu-v3.c    | 2 +-
 xen/drivers/passthrough/arm/smmu.c       | 2 +-
 xen/include/asm-arm/domain.h             | 2 +-
 xen/include/xen/sched.h                  | 2 +-
 7 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
index b71b099e6f..b761d90c40 100644
--- a/xen/arch/arm/irq.c
+++ b/xen/arch/arm/irq.c
@@ -412,7 +412,7 @@ bool is_assignable_irq(unsigned int irq)
  */
 bool irq_type_set_by_domain(const struct domain *d)
 {
-    return (d == hardware_domain);
+    return is_hardware_domain(d);
 }
 
 /*
diff --git a/xen/common/domain.c b/xen/common/domain.c
index d85984638a..e8ec3ba445 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -308,7 +308,7 @@ static int late_hwdom_init(struct domain *d)
     struct domain *dom0;
     int rv;
 
-    if ( d != hardware_domain || d->domain_id == 0 )
+    if ( !is_hardware_domain(d) || d->domain_id == 0 )
         return 0;
 
     rv = xsm_init_hardware_domain(XSM_HOOK, d);
@@ -705,7 +705,7 @@ struct domain *domain_create(domid_t domid,
     err = err ?: -EILSEQ; /* Release build safety. */
 
     d->is_dying = DOMDYING_dead;
-    if ( hardware_domain == d )
+    if ( is_hardware_domain(d) )
         hardware_domain = old_hwdom;
     atomic_set(&d->refcnt, DOMAIN_DESTROYED);
 
diff --git a/xen/drivers/passthrough/arm/ipmmu-vmsa.c b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
index aef358d880..8b8e3a00ba 100644
--- a/xen/drivers/passthrough/arm/ipmmu-vmsa.c
+++ b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
@@ -1168,7 +1168,7 @@ static int ipmmu_reassign_device(struct domain *s, struct domain *t,
     int ret = 0;
 
     /* Don't allow remapping on other domain than hwdom */
-    if ( t && t != hardware_domain )
+    if ( t && !is_hardware_domain(t) )
         return -EPERM;
 
     if ( t == s )
diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c
index 53d150cdb6..d115df7320 100644
--- a/xen/drivers/passthrough/arm/smmu-v3.c
+++ b/xen/drivers/passthrough/arm/smmu-v3.c
@@ -3366,7 +3366,7 @@ 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 && t != hardware_domain)
+	if ( t && !is_hardware_domain(t) )
 		return -EPERM;
 
 	if (t == s)
diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index 3e8aa37866..932fdfd6dd 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -2670,7 +2670,7 @@ 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 && t != hardware_domain)
+	if ( t && !is_hardware_domain(t) )
 		return -EPERM;
 
 	if (t == s)
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 1da90f207d..738bda5ef3 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -30,7 +30,7 @@ enum domain_type {
 #endif
 
 /* The hardware domain has always its memory direct mapped. */
-#define is_domain_direct_mapped(d) ((d) == hardware_domain)
+#define is_domain_direct_mapped(d) (is_hardware_domain(d))
 
 struct vtimer {
     struct vcpu *v;
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index 5485d08afb..bfc9d2577c 100644
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -1022,7 +1022,7 @@ static always_inline bool is_hardware_domain(const struct domain *d)
     if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
         return false;
 
-    return evaluate_nospec(d == hardware_domain);
+    return evaluate_nospec((hardware_domain != NULL) && (d == hardware_domain));
 }
 
 /* This check is for functionality specific to a control domain */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 09:48:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 09:48:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107104.204712 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lURH8-0004X3-5r; Thu, 08 Apr 2021 09:48:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107104.204712; Thu, 08 Apr 2021 09: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 1lURH8-0004Wt-01; Thu, 08 Apr 2021 09:48:34 +0000
Received: by outflank-mailman (input) for mailman id 107104;
 Thu, 08 Apr 2021 09:48:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lURH6-0004WM-UN
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 09:48:32 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id cf9cb29d-e6f9-4a1e-b0d0-3ebef8737821;
 Thu, 08 Apr 2021 09:48:30 +0000 (UTC)
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 A8C1BD6E;
 Thu,  8 Apr 2021 02:48:29 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 1C9D13F694;
 Thu,  8 Apr 2021 02:48: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: cf9cb29d-e6f9-4a1e-b0d0-3ebef8737821
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>,
	Rahul Singh <rahul.singh@arm.com>
Subject: [PATCH v2 0/4] xen/arm: Prevent Dom0 to be loaded when using dom0less
Date: Thu,  8 Apr 2021 10:48:14 +0100
Message-Id: <20210408094818.8173-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1

This is the v2 of xen/arm: Prevent Dom0 to be loaded when using dom0less
previously pushed.

The aim of this serie is to prevent the creation and run of the domain 0 (Dom0)
when the system configuration to be used is dom0less, that is when the device
tree declares at least one domU and no Dom0.

Changes in v2 are:
 - Moving the dom0 creation in a proper function
 - Handle the case of having an hardware_domain NULL
 - Be sure that the domain id 0 is never allocated
 - Modify documentation about dom0less

Luca Fancellu (4):
  xen/arm: Move dom0 creation in domain_build.c
  xen/arm: Handle cases when hardware_domain is NULL
  xen/arm: Reserve domid 0 for Dom0
  xen/arm: Prevent Dom0 to be loaded when using dom0less

 docs/features/dom0less.pandoc            |  7 +--
 xen/arch/arm/domain_build.c              | 41 ++++++++++++++
 xen/arch/arm/irq.c                       |  2 +-
 xen/arch/arm/setup.c                     | 69 +++++++++++++-----------
 xen/common/domain.c                      |  4 +-
 xen/common/domctl.c                      |  2 +-
 xen/drivers/passthrough/arm/ipmmu-vmsa.c |  2 +-
 xen/drivers/passthrough/arm/smmu-v3.c    |  2 +-
 xen/drivers/passthrough/arm/smmu.c       |  2 +-
 xen/include/asm-arm/domain.h             |  2 +-
 xen/include/asm-arm/setup.h              |  1 +
 xen/include/xen/sched.h                  |  2 +-
 12 files changed, 94 insertions(+), 42 deletions(-)

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 09:48:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 09:48:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107105.204730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lURHD-0004a2-Co; Thu, 08 Apr 2021 09:48:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107105.204730; Thu, 08 Apr 2021 09:48: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 1lURHD-0004Zv-8n; Thu, 08 Apr 2021 09:48:39 +0000
Received: by outflank-mailman (input) for mailman id 107105;
 Thu, 08 Apr 2021 09:48:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lURHB-0004WL-I9
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 09:48:37 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id c98eba5c-4240-4f77-8728-5866cfd18407;
 Thu, 08 Apr 2021 09:48:36 +0000 (UTC)
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 0D58E11D4;
 Thu,  8 Apr 2021 02:48:36 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 8F95A3F694;
 Thu,  8 Apr 2021 02:48: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: c98eba5c-4240-4f77-8728-5866cfd18407
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2 4/4] xen/arm: Prevent Dom0 to be loaded when using dom0less
Date: Thu,  8 Apr 2021 10:48:18 +0100
Message-Id: <20210408094818.8173-5-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210408094818.8173-1-luca.fancellu@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>

This patch prevents the dom0 to be loaded skipping its
building and going forward to build domUs when the dom0
kernel is not found and at least one domU is present.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 docs/features/dom0less.pandoc |  7 +++---
 xen/arch/arm/setup.c          | 42 ++++++++++++++++++++++++++++++++---
 2 files changed, 43 insertions(+), 6 deletions(-)

diff --git a/docs/features/dom0less.pandoc b/docs/features/dom0less.pandoc
index d798596cdf..a5eb5bcda0 100644
--- a/docs/features/dom0less.pandoc
+++ b/docs/features/dom0less.pandoc
@@ -16,9 +16,10 @@ Multiboot specification has been extended to allow for multiple domains
 to be passed to Xen. See docs/misc/arm/device-tree/booting.txt for more
 information about the Multiboot specification and how to use it.
 
-Currently, a control domain ("dom0") is still required, but in the
-future it will become unnecessary when all domains are created
-directly from Xen. Instead of waiting for the control domain to be fully
+Currently, a control domain ("dom0") is still required to manage the DomU
+domains, but the system can start also without dom0 if the hypervisor
+Device Tree doesn't specify it and it declares one or more domUs.
+Instead of waiting for the control domain (when declared) to be fully
 booted and the Xen tools to become available, domains created by Xen
 this way are started right away in parallel. Hence, their boot time is
 typically much shorter.
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index b405f58996..ecc4f0ae98 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -793,6 +793,38 @@ static void __init setup_mm(void)
 }
 #endif
 
+static bool __init is_dom0less_mode(void)
+{
+    struct bootmodules *mods = &bootinfo.modules;
+    struct bootmodule *mod;
+    unsigned int i;
+    bool dom0found = false;
+    bool domUfound = false;
+
+    /* Look into the bootmodules */
+    for ( i = 0 ; i < mods->nr_mods ; i++ )
+    {
+        mod = &mods->module[i];
+        /* Find if dom0 and domU kernels are present */
+        if ( mod->kind == BOOTMOD_KERNEL )
+        {
+            if ( mod->domU == false )
+            {
+                dom0found = true;
+                break;
+            }
+            else
+                domUfound = true;
+        }
+    }
+
+    /*
+     * If there is no dom0 kernel but at least one domU, then we are in
+     * dom0less mode
+     */
+    return ( !dom0found && domUfound );
+}
+
 size_t __read_mostly dcache_line_bytes;
 
 /* C entry point for boot CPU */
@@ -803,7 +835,7 @@ void __init start_xen(unsigned long boot_phys_offset,
     int cpus, i;
     const char *cmdline;
     struct bootmodule *xen_bootmodule;
-    struct domain *dom0;
+    struct domain *dom0 = NULL;
     int rc;
 
     dcache_line_bytes = read_dcache_line_bytes();
@@ -958,7 +990,10 @@ void __init start_xen(unsigned long boot_phys_offset,
     enable_errata_workarounds();
 
     /* Create initial domain 0. */
-    dom0 = create_dom0();
+    if ( !is_dom0less_mode() )
+        dom0 = create_dom0();
+    else
+        printk(XENLOG_INFO "Xen dom0less mode detected\n");
 
     heap_init_late();
 
@@ -976,7 +1011,8 @@ void __init start_xen(unsigned long boot_phys_offset,
     if ( acpi_disabled )
         create_domUs();
 
-    domain_unpause_by_systemcontroller(dom0);
+    if ( dom0 )
+        domain_unpause_by_systemcontroller(dom0);
 
     /* Switch on to the dynamically allocated stack for the idle vcpu
      * since the static one we're running on is about to be freed. */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 09:48:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 09:48:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107103.204706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lURH7-0004Wc-Rp; Thu, 08 Apr 2021 09:48:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107103.204706; Thu, 08 Apr 2021 09: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 1lURH7-0004WV-Ok; Thu, 08 Apr 2021 09:48:33 +0000
Received: by outflank-mailman (input) for mailman id 107103;
 Thu, 08 Apr 2021 09:48:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lURH6-0004WL-Mv
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 09:48:32 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id aaa26d65-9060-46f9-8271-5e5f6ea52be3;
 Thu, 08 Apr 2021 09:48:31 +0000 (UTC)
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 CBD10106F;
 Thu,  8 Apr 2021 02:48:30 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id DD9843F694;
 Thu,  8 Apr 2021 02:48: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: aaa26d65-9060-46f9-8271-5e5f6ea52be3
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2 1/4] xen/arm: Move dom0 creation in domain_build.c
Date: Thu,  8 Apr 2021 10:48:15 +0100
Message-Id: <20210408094818.8173-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210408094818.8173-1-luca.fancellu@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>

Move dom0 creation and start from setup.c to domain_build.c
on a dedicate function.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/arch/arm/domain_build.c | 36 ++++++++++++++++++++++++++++++++++++
 xen/arch/arm/setup.c        | 29 +----------------------------
 xen/include/asm-arm/setup.h |  1 +
 3 files changed, 38 insertions(+), 28 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 374bf655ee..d7c9c7f4d1 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -21,6 +21,7 @@
 #include <asm/device.h>
 #include <asm/kernel.h>
 #include <asm/setup.h>
+#include <asm/tee/tee.h>
 #include <asm/platform.h>
 #include <asm/psci.h>
 #include <asm/setup.h>
@@ -2520,6 +2521,41 @@ void __init create_domUs(void)
     }
 }
 
+struct domain* __init create_dom0(void)
+{
+    struct domain *dom0;
+    struct xen_domctl_createdomain dom0_cfg = {
+        .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
+        .max_evtchn_port = -1,
+        .max_grant_frames = gnttab_dom0_frames(),
+        .max_maptrack_frames = -1,
+    };
+
+    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
+    dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
+    /*
+     * Xen vGIC supports a maximum of 992 interrupt lines.
+     * 32 are substracted to cover local IRQs.
+     */
+    dom0_cfg.arch.nr_spis = min(gic_number_lines(), (unsigned int) 992) - 32;
+    if ( gic_number_lines() > 992 )
+        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n");
+    dom0_cfg.arch.tee_type = tee_get_type();
+    dom0_cfg.max_vcpus = dom0_max_vcpus();
+
+    if ( iommu_enabled )
+        dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
+
+    dom0 = domain_create(0, &dom0_cfg, true);
+    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
+        panic("Error creating domain 0\n");
+
+    if ( construct_dom0(dom0) != 0)
+        panic("Could not set up DOM0 guest OS\n");
+
+    return dom0;
+}
+
 int __init construct_dom0(struct domain *d)
 {
     struct kernel_info kinfo = {};
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 2532ec9739..b405f58996 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -51,7 +51,6 @@
 #include <asm/platform.h>
 #include <asm/procinfo.h>
 #include <asm/setup.h>
-#include <asm/tee/tee.h>
 #include <xsm/xsm.h>
 #include <asm/acpi.h>
 
@@ -805,12 +804,6 @@ void __init start_xen(unsigned long boot_phys_offset,
     const char *cmdline;
     struct bootmodule *xen_bootmodule;
     struct domain *dom0;
-    struct xen_domctl_createdomain dom0_cfg = {
-        .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
-        .max_evtchn_port = -1,
-        .max_grant_frames = gnttab_dom0_frames(),
-        .max_maptrack_frames = -1,
-    };
     int rc;
 
     dcache_line_bytes = read_dcache_line_bytes();
@@ -965,27 +958,7 @@ void __init start_xen(unsigned long boot_phys_offset,
     enable_errata_workarounds();
 
     /* Create initial domain 0. */
-    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
-    dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
-    /*
-     * Xen vGIC supports a maximum of 992 interrupt lines.
-     * 32 are substracted to cover local IRQs.
-     */
-    dom0_cfg.arch.nr_spis = min(gic_number_lines(), (unsigned int) 992) - 32;
-    if ( gic_number_lines() > 992 )
-        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n");
-    dom0_cfg.arch.tee_type = tee_get_type();
-    dom0_cfg.max_vcpus = dom0_max_vcpus();
-
-    if ( iommu_enabled )
-        dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
-
-    dom0 = domain_create(0, &dom0_cfg, true);
-    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
-        panic("Error creating domain 0\n");
-
-    if ( construct_dom0(dom0) != 0)
-        panic("Could not set up DOM0 guest OS\n");
+    dom0 = create_dom0();
 
     heap_init_late();
 
diff --git a/xen/include/asm-arm/setup.h b/xen/include/asm-arm/setup.h
index 28bf622aa1..e5f5c7ebc6 100644
--- a/xen/include/asm-arm/setup.h
+++ b/xen/include/asm-arm/setup.h
@@ -95,6 +95,7 @@ int acpi_make_efi_nodes(void *fdt, struct membank tbl_add[]);
 
 int construct_dom0(struct domain *d);
 void create_domUs(void);
+struct domain* create_dom0(void);
 
 void discard_initial_modules(void);
 void fw_unreserved_regions(paddr_t s, paddr_t e,
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 09:48:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 09:48:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107107.204754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lURHI-0004gt-A2; Thu, 08 Apr 2021 09:48:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107107.204754; Thu, 08 Apr 2021 09:48: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 1lURHI-0004ge-4G; Thu, 08 Apr 2021 09:48:44 +0000
Received: by outflank-mailman (input) for mailman id 107107;
 Thu, 08 Apr 2021 09:48:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lURHG-0004WM-PL
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 09:48:42 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 01058904-8bb3-44bc-a1ec-534ffde50552;
 Thu, 08 Apr 2021 09:48:34 +0000 (UTC)
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 4D38711B3;
 Thu,  8 Apr 2021 02:48:34 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id D4EE73F694;
 Thu,  8 Apr 2021 02:48: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: 01058904-8bb3-44bc-a1ec-534ffde50552
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 3/4] xen/arm: Reserve domid 0 for Dom0
Date: Thu,  8 Apr 2021 10:48:17 +0100
Message-Id: <20210408094818.8173-4-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210408094818.8173-1-luca.fancellu@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>

This patch ensure that the domid 0 is allocated only during
start_xen() function by the create_dom0().
Add a comment in create_domUs() right before domain_create()
to explain the importance of the pre-increment operator
on the variable max_init_domid.
Add an additional check in do_domctl() to make sure domid 0
is never used when calling domain_create().

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/arch/arm/domain_build.c | 5 +++++
 xen/common/domctl.c         | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index d7c9c7f4d1..3fa5c8e54c 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2508,6 +2508,11 @@ void __init create_domUs(void)
                                          GUEST_VPL011_SPI - 32 + 1);
         }
 
+        /*
+         * The variable max_init_domid is initialized with zero, so here it's
+         * very important to use the pre-increment operator to call
+         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
+         */
         d = domain_create(++max_init_domid, &d_cfg, false);
         if ( IS_ERR(d) )
             panic("Error creating domain %s\n", dt_node_name(node));
diff --git a/xen/common/domctl.c b/xen/common/domctl.c
index af044e2eda..8258f157ef 100644
--- a/xen/common/domctl.c
+++ b/xen/common/domctl.c
@@ -419,7 +419,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
             {
                 if ( dom == DOMID_FIRST_RESERVED )
                     dom = 1;
-                if ( is_free_domid(dom) )
+                if ( (dom != 0) && is_free_domid(dom) )
                     break;
             }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 10:03:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 10:03:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107130.204768 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lURV8-0006rJ-OE; Thu, 08 Apr 2021 10:03:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107130.204768; Thu, 08 Apr 2021 10: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 1lURV8-0006rC-KW; Thu, 08 Apr 2021 10:03:02 +0000
Received: by outflank-mailman (input) for mailman id 107130;
 Thu, 08 Apr 2021 10:03:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lURV6-0006r6-Fk
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 10:03:00 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4a64de18-f741-47eb-bbe1-232a54e0f9b9;
 Thu, 08 Apr 2021 10:02:59 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9EFC9AFCC;
 Thu,  8 Apr 2021 10:02: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: 4a64de18-f741-47eb-bbe1-232a54e0f9b9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617876178; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=y8ct3Jmpr+aHlOLuCoPj1PRJp6rEB/k9wJ4H+Phr9WU=;
	b=f/H/M5IhxmxupF1kvI4SRwhKaes7yXO28AatMkGKJ5QoRwqDmW6hU7RXO7j0UsFlqquVE7
	gezoW3C1kMaqptEsWs4d9VQ1wthiXKLra8MUpxefXXE8Qve7nc1JyahKO8Lb5LSycAp/zq
	TA03/c5iO/SViUene6kYB6EXSqlX6fg=
Subject: Re: [PATCH v2 3/3] x86: avoid building COMPAT code when !HVM && !PV32
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <bf79f745-078b-071d-cf01-dfede456041a@suse.com>
 <85b6edfc-9756-9dd0-c90f-f46dc120dade@suse.com>
Message-ID: <5acec73c-27c1-80f2-fca8-bba428952016@suse.com>
Date: Thu, 8 Apr 2021 12:02:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <85b6edfc-9756-9dd0-c90f-f46dc120dade@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 16:02, Jan Beulich wrote:
> --- a/xen/include/xen/compat.h
> +++ b/xen/include/xen/compat.h
> @@ -5,10 +5,11 @@
>  #ifndef __XEN_COMPAT_H__
>  #define __XEN_COMPAT_H__
>  
> -#ifdef CONFIG_COMPAT
> -
>  #include <xen/types.h>
>  #include <asm/compat.h>
> +
> +#ifdef CONFIG_COMPAT
> +
>  #include <compat/xlat.h>
>  
>  #define __DEFINE_COMPAT_HANDLE(name, type) \

As I've just noticed this breaks the Arm build, for the lack of
asm/compat.h there. I'll be folding in the hunks below; an alternative
would be to require every arch to have a (perhaps empty) compat.h,
which seems less desirable to me.

Jan

--- unstable.orig/xen/arch/x86/Kconfig
+++ unstable/xen/arch/x86/Kconfig
@@ -9,6 +9,7 @@ config X86
 	select ARCH_SUPPORTS_INT128
 	select CORE_PARKING
 	select HAS_ALTERNATIVE
+	select HAS_COMPAT
 	select HAS_CPUFREQ
 	select HAS_EHCI
 	select HAS_EX_TABLE
--- unstable.orig/xen/common/Kconfig
+++ unstable/xen/common/Kconfig
@@ -25,6 +25,9 @@ config GRANT_TABLE
 config HAS_ALTERNATIVE
 	bool
 
+config HAS_COMPAT
+	bool
+
 config HAS_DEVICE_TREE
 	bool
 
--- unstable.orig/xen/include/xen/compat.h
+++ unstable/xen/include/xen/compat.h
@@ -6,7 +6,9 @@
 #define __XEN_COMPAT_H__
 
 #include <xen/types.h>
+#ifdef CONFIG_HAS_COMPAT
 #include <asm/compat.h>
+#endif
 
 #ifdef CONFIG_COMPAT
 


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 10:17:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 10:17:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107136.204784 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lURjE-0007uA-3m; Thu, 08 Apr 2021 10:17:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107136.204784; Thu, 08 Apr 2021 10: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 1lURjE-0007u3-08; Thu, 08 Apr 2021 10:17:36 +0000
Received: by outflank-mailman (input) for mailman id 107136;
 Thu, 08 Apr 2021 10:17:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lURjC-0007ty-TS
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 10:17:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d28b21a7-1dfd-431d-a1f0-12462645aea1;
 Thu, 08 Apr 2021 10:17:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A7CB6B004;
 Thu,  8 Apr 2021 10:17: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: d28b21a7-1dfd-431d-a1f0-12462645aea1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617877052; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=aquCPU2YUWXFLvn0zD+lBIxRVuqDKM4Q1vhkuylWFXY=;
	b=ILlRMOh+KwXV7YdZIPSV63fL0wKRnFiKOs6eFmOf4SNOe7GDzpvz7Hd8uOR6licbXqRuZW
	SeGWNa14n9GxSgHYyMvoSykOGKMxXs9Eee5anSqho71uJ4qD65MyrhWfdDnlpmQ8rXmkvb
	mKIWi8zwYKDUWD04hjeiWPdFBB2Te44=
Subject: Re: [PATCH v2 2/4] xen/arm: Handle cases when hardware_domain is NULL
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, Rahul Singh <rahul.singh@arm.com>,
 xen-devel@lists.xenproject.org
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-3-luca.fancellu@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b79f363c-2220-f187-6840-23205ef37e1e@suse.com>
Date: Thu, 8 Apr 2021 12:17:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210408094818.8173-3-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 08.04.2021 11:48, Luca Fancellu wrote:
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -308,7 +308,7 @@ static int late_hwdom_init(struct domain *d)
>      struct domain *dom0;
>      int rv;
>  
> -    if ( d != hardware_domain || d->domain_id == 0 )
> +    if ( !is_hardware_domain(d) || d->domain_id == 0 )
>          return 0;
>  
>      rv = xsm_init_hardware_domain(XSM_HOOK, d);
> @@ -705,7 +705,7 @@ struct domain *domain_create(domid_t domid,
>      err = err ?: -EILSEQ; /* Release build safety. */
>  
>      d->is_dying = DOMDYING_dead;
> -    if ( hardware_domain == d )
> +    if ( is_hardware_domain(d) )
>          hardware_domain = old_hwdom;
>      atomic_set(&d->refcnt, DOMAIN_DESTROYED);

While these may seem like open-coding of is_hardware_domain(), I
think it would be better to leave them alone. In neither of the two
cases is it possible for d to be NULL afaics, and hence your
addition to is_hardware_domain() doesn't matter here.

> --- a/xen/include/asm-arm/domain.h
> +++ b/xen/include/asm-arm/domain.h
> @@ -30,7 +30,7 @@ enum domain_type {
>  #endif
>  
>  /* The hardware domain has always its memory direct mapped. */
> -#define is_domain_direct_mapped(d) ((d) == hardware_domain)
> +#define is_domain_direct_mapped(d) (is_hardware_domain(d))

Nit: If this was code I'm a maintainer of, I'd ask for the unneeded
parentheses to be dropped.

> --- a/xen/include/xen/sched.h
> +++ b/xen/include/xen/sched.h
> @@ -1022,7 +1022,7 @@ static always_inline bool is_hardware_domain(const struct domain *d)
>      if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
>          return false;
>  
> -    return evaluate_nospec(d == hardware_domain);
> +    return evaluate_nospec((hardware_domain != NULL) && (d == hardware_domain));
>  }

This would be the first instance in the tree of an && expression
inside evaluate_nospec(). I think the generated code will still be
okay, but I wonder whether this is really needed. Can you point
out code paths where d may actually be NULL, and where

static always_inline bool is_hardware_domain(const struct domain *d)
{
    if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
        return false;

    if ( !d )
        return false;

    return evaluate_nospec(d == hardware_domain);
}

would not behave as intended (i.e. where bad speculation would
result)? (In any event I think checking d against NULL is preferable
over checking hardware_domain.)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 10:46:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 10:46:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107145.204795 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSBF-0002Cm-DD; Thu, 08 Apr 2021 10:46:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107145.204795; Thu, 08 Apr 2021 10:46: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 1lUSBF-0002Cf-A8; Thu, 08 Apr 2021 10:46:33 +0000
Received: by outflank-mailman (input) for mailman id 107145;
 Thu, 08 Apr 2021 10:46:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUSBD-0002Ca-R2
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 10:46:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fad5d21f-5615-4327-b85a-f7fa0f1db9d5;
 Thu, 08 Apr 2021 10:46:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 02B79AF0C;
 Thu,  8 Apr 2021 10:46: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: fad5d21f-5615-4327-b85a-f7fa0f1db9d5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617878790; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=6ZQUEv3YsWgUeNnzbHKfFcDKRbv7xchLw1z2v6sYugo=;
	b=g4q7YekVYuUKUf//Wz89zIwK7OfYkyXMxKed6hgXTQaS3nnwIc4+yeaaV0QmXvRkSCxwsa
	wgAvKWZAzdTQQwKLJ8Ro1W7lVYdcnXa269s2VP29lWWXMtUS8lzgVFXGpsniGDAylLBhEa
	7JStoUadm3rJEV7/CHg5Gm387ZoRXJQ=
Subject: Re: [PATCH v2 3/4] xen/arm: Reserve domid 0 for Dom0
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-4-luca.fancellu@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <19fd45ff-b373-dd89-9377-79cb77ffee5b@suse.com>
Date: Thu, 8 Apr 2021 12:46:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210408094818.8173-4-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 08.04.2021 11:48, Luca Fancellu wrote:
> --- a/xen/common/domctl.c
> +++ b/xen/common/domctl.c
> @@ -419,7 +419,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
>              {
>                  if ( dom == DOMID_FIRST_RESERVED )
>                      dom = 1;
> -                if ( is_free_domid(dom) )
> +                if ( (dom != 0) && is_free_domid(dom) )
>                      break;
>              }
>  

I don't think this change is needed - I don't see how dom could
ever end up being zero. The code is already intended to be safe
wrt accidentally creating a domain with ID zero. (Granted "rover"
would benefit from being moved into the yet more narrow scope,
which would make this even more obvious.)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 10:48:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 10:48:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107149.204807 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSDA-0002Js-Q4; Thu, 08 Apr 2021 10:48:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107149.204807; Thu, 08 Apr 2021 10:48:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSDA-0002Jl-Mn; Thu, 08 Apr 2021 10:48:32 +0000
Received: by outflank-mailman (input) for mailman id 107149;
 Thu, 08 Apr 2021 10:48: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 1lUSD8-0002Jd-Tp; Thu, 08 Apr 2021 10:48: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 1lUSD8-0001Rw-N5; Thu, 08 Apr 2021 10:48: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 1lUSD8-0000QW-Be; Thu, 08 Apr 2021 10:48:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUSD8-00022I-BB; Thu, 08 Apr 2021 10:48: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=qHk5djhnPkRb4CEEYaRsaZU8awWTPFe3ELbG5vlBuu4=; b=svaE5eqPuV7IrWMm+YYNR6HT7U
	fEkcxFSDANmWgiM+MKMDbczXo9I0rpGvwlvVoCbUx4sBUCyzPEUrP3cND/zgt+NkfSdsf552Lyq9l
	37Zk9l2BHCMesDS2faJmqzC2r+TIUtnHGYXYJ2NaDv8Tp0SMXGxiTrqi9viTnFNuVK+0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160798-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-upstream-4.14-testing test] 160798: tolerable FAIL - PUSHED
X-Osstest-Failures:
    qemu-upstream-4.14-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.14-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=d7d6a60e73ee21e82f0bac2036153ccccf996e6c
X-Osstest-Versions-That:
    qemuu=e6a4cbe48cfca6adbe4e7acdf7e405c8315facaa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 10:48:30 +0000

flight 160798 qemu-upstream-4.14-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160798/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 155914
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 155914
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 155914
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 155914
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 155914
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 155914
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 155914
 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-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-xsm 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-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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-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-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-libvirt     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-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 qemuu                d7d6a60e73ee21e82f0bac2036153ccccf996e6c
baseline version:
 qemuu                e6a4cbe48cfca6adbe4e7acdf7e405c8315facaa

Last test of basis   155914  2020-10-16 22:08:23 Z  173 days
Testing same since   160798  2021-04-07 15:38:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Paolo Bonzini <pbonzini@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/qemu-xen.git
   e6a4cbe48c..d7d6a60e73  d7d6a60e73ee21e82f0bac2036153ccccf996e6c -> stable-4.14


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 10:50:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 10:50:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107156.204823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSEM-0002T7-DH; Thu, 08 Apr 2021 10:49:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107156.204823; Thu, 08 Apr 2021 10:49: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 1lUSEM-0002T0-9q; Thu, 08 Apr 2021 10:49:46 +0000
Received: by outflank-mailman (input) for mailman id 107156;
 Thu, 08 Apr 2021 10:49:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUSEL-0002Su-Mw
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 10:49:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0119987e-cca5-4929-b0d0-574aa3b1fca9;
 Thu, 08 Apr 2021 10:49:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2EFF8AFC9;
 Thu,  8 Apr 2021 10:49: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: 0119987e-cca5-4929-b0d0-574aa3b1fca9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617878984; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Vz6RoCr0dlx61kH31AEPM56hEpZxmmmxVsgrvGqqQ2c=;
	b=ltw05bjqi3sbf57jjHokkO2sMF3h5Ssz5yZmo+/1aTxgJwwKE31VsUeaIbCYfhgHizZRP4
	gTcLc/cWPiei7tHKhP3nqWLldPrwLZ7OQkDv49kS3+Sqt2x+sMNDVhK5MkFU++Gq+fm4z5
	o+Y1v1v630St5rj/H3KQh1v1xDcWRaY=
Subject: Re: [PATCH v3 03/11] x86/vlapic: introduce an EOI callback mechanism
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-4-roger.pau@citrix.com>
 <d18d9e3b-872f-b0cb-aebf-5e55d4433b75@suse.com>
 <YG3djUEiAd9wqQvv@Air-de-Roger>
 <e5a45339-a79a-a903-0599-86e14f493818@suse.com>
 <YG7JBXR3znxhNPtv@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <9ef5ce06-051f-6f05-613e-82612d02f8e0@suse.com>
Date: Thu, 8 Apr 2021 12:49:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YG7JBXR3znxhNPtv@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 08.04.2021 11:12, Roger Pau Monné wrote:
> On Thu, Apr 08, 2021 at 08:20:15AM +0200, Jan Beulich wrote:
>> On 07.04.2021 18:27, Roger Pau Monné wrote:
>>> On Wed, Apr 07, 2021 at 04:55:43PM +0200, Jan Beulich wrote:
>>>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>>>> Add a new vlapic_set_irq_callback helper in order to inject a vector
>>>>> and set a callback to be executed when the guest performs the end of
>>>>> interrupt acknowledgment.
>>>>>
>>>>> Such functionality will be used to migrate the current ad hoc handling
>>>>> done in vlapic_handle_EOI for the vectors that require some logic to
>>>>> be executed when the end of interrupt is performed.
>>>>>
>>>>> The setter of the callback will be in charge for setting the callback
>>>>> again on resume. That is the reason why vlapic_set_callback is not a
>>>>> static function.
>>>>
>>>> I'm struggling with your use of "resume" here: Resuming from S3
>>>> doesn't require re-doing anything that's kept in memory, does it?
>>>> So what meaning does the word have here?
>>>
>>> Right, I can see the confusion. Resume here means a guest being
>>> migrated or restored, not Xen itself being resumed. Callbacks are not
>>> part of the exported guest state, and hence any emulated device that
>>> requires a callback will have to register it as part of loading the
>>> saved state.
>>>
>>>> Apart from this, and with the xzalloc_array() change requested
>>>> by Andrew, this looks good to me.
>>
>> In which case with this change and "resume" replaced suitably in the
>> description
> 
> I've worded it as:
> 
> "The setter of the callback will be in charge for setting the callback
> again on guest restore or resume, as callbacks are not saved as part
> of the vlapic state. That is the reason why vlapic_set_callback is not
> a static function."

Hmm, you still mention "resume", which makes me continue to wonder
what you're thinking of beyond guest restore.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 10:52:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 10:52:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107162.204835 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSGf-0003NC-RF; Thu, 08 Apr 2021 10:52:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107162.204835; Thu, 08 Apr 2021 10:52:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSGf-0003N5-OH; Thu, 08 Apr 2021 10:52:09 +0000
Received: by outflank-mailman (input) for mailman id 107162;
 Thu, 08 Apr 2021 10:52:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUSGe-0003N0-WC
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 10:52:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cd2ccb42-6407-4150-9cdf-d271d48e18d4;
 Thu, 08 Apr 2021 10:52:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1A0A1AFCC;
 Thu,  8 Apr 2021 10:52: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: cd2ccb42-6407-4150-9cdf-d271d48e18d4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617879127; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=hLaz+s1Hj0xZxx9tmyUGGcDwImJsDaUfO9hi3M2BJXE=;
	b=GIsYeYwkRPHtdn4SK1K1Xa33MpEgsoWDI9XQMvmIYaY7b5/3k+eYjzqNPYvDqM+7bIOdTf
	JnBeyzuHhLZtxwgThW2ez+ts2qpPwh/QPRzmRkEHWN0jgh0wBHnTNoyno9lZXj/OGNej5D
	sQkdVXm2kvSEcA4FFL3hWHf8fiRBCPs=
Subject: Re: [PATCH v3 05/11] x86/vioapic: switch to use the EOI callback
 mechanism
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-6-roger.pau@citrix.com>
 <f8d9c37f-8896-36af-712a-ac0765567409@suse.com>
 <YG3iAeFFA/ZJh5es@Air-de-Roger>
 <402bba57-4998-fa9c-2767-235e602a06bf@suse.com>
 <YG7F9afvuvtqgSIS@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <2bcbc817-9120-fd1f-27fd-ed440d4a12eb@suse.com>
Date: Thu, 8 Apr 2021 12:52:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YG7F9afvuvtqgSIS@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 08.04.2021 10:59, Roger Pau Monné wrote:
> On Thu, Apr 08, 2021 at 08:27:10AM +0200, Jan Beulich wrote:
>> On 07.04.2021 18:46, Roger Pau Monné wrote:
>>> On Wed, Apr 07, 2021 at 05:19:06PM +0200, Jan Beulich wrote:
>>>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>>>> --- a/xen/arch/x86/hvm/vioapic.c
>>>>> +++ b/xen/arch/x86/hvm/vioapic.c
>>>>> @@ -621,7 +624,43 @@ static int ioapic_load(struct domain *d, hvm_domain_context_t *h)
>>>>>           d->arch.hvm.nr_vioapics != 1 )
>>>>>          return -EOPNOTSUPP;
>>>>>  
>>>>> -    return hvm_load_entry(IOAPIC, h, &s->domU);
>>>>> +    rc = hvm_load_entry(IOAPIC, h, &s->domU);
>>>>> +    if ( rc )
>>>>> +        return rc;
>>>>> +
>>>>> +    for ( i = 0; i < ARRAY_SIZE(s->domU.redirtbl); i++ )
>>>>> +    {
>>>>> +        const union vioapic_redir_entry *ent = &s->domU.redirtbl[i];
>>>>> +        unsigned int vector = ent->fields.vector;
>>>>> +        unsigned int delivery_mode = ent->fields.delivery_mode;
>>>>> +        struct vcpu *v;
>>>>> +
>>>>> +        /*
>>>>> +         * Add a callback for each possible vector injected by a redirection
>>>>> +         * entry.
>>>>> +         */
>>>>> +        if ( vector < 16 || !ent->fields.remote_irr ||
>>>>> +             (delivery_mode != dest_LowestPrio && delivery_mode != dest_Fixed) )
>>>>> +            continue;
>>>>> +
>>>>> +        for_each_vcpu ( d, v )
>>>>> +        {
>>>>> +            struct vlapic *vlapic = vcpu_vlapic(v);
>>>>> +
>>>>> +            /*
>>>>> +             * NB: if the vlapic registers were restored before the vio-apic
>>>>> +             * ones we could test whether the vector is set in the vlapic IRR
>>>>> +             * or ISR registers before unconditionally setting the callback.
>>>>> +             * This is harmless as eoi_callback is capable of dealing with
>>>>> +             * spurious callbacks.
>>>>> +             */
>>>>> +            if ( vlapic_match_dest(vlapic, NULL, 0, ent->fields.dest_id,
>>>>> +                                   ent->fields.dest_mode) )
>>>>> +                vlapic_set_callback(vlapic, vector, eoi_callback, NULL);
>>>>
>>>> eoi_callback()'s behavior is only one of the aspects to consider here.
>>>> The other is vlapic_set_callback()'s complaining if it finds a
>>>> callback already set. What guarantees that a mistakenly set callback
>>>> here won't get in conflict with some future use of the same vector by
>>>> the guest?
>>>
>>> Such conflict would only manifest as a warning message, but won't
>>> cause any malfunction, as the later callback would override the
>>> current one.
>>>
>>> This model I'm proposing doesn't support lapic vector sharing with
>>> different devices that require EOI callbacks, I think we already
>>> discussed this on a previous series and agreed it was fine.
>>
>> The problem with such false positive warning messages is that
>> they'll cause cautious people to investigate, i.e. spend perhaps
>> a sizable amount of time in understanding what was actually a non-
>> issue. I view this as a problem, even if the code's functioning is
>> fine the way it is. I'm not even sure explicitly mentioning the
>> situation in the comment is going to help, as one may not stumble
>> across that comment while investigating.
> 
> What about making the warning message in case of override in
> vlapic_set_callback conditional to there being a vector pending in IRR
> or ISR?
> 
> Without having such vector pending the callback is just useless, as
> it's not going to be executed, so overriding it in that situation is
> perfectly fine. That should prevent the restoring here triggering the
> message unless there's indeed a troublesome sharing of a vector.

Ah yes, since the callbacks are self-clearing, this gating looks quite
reasonable to me.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 10:56:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 10:56:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107168.204851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSKz-0003Z6-Ev; Thu, 08 Apr 2021 10:56:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107168.204851; Thu, 08 Apr 2021 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 1lUSKz-0003Yz-BH; Thu, 08 Apr 2021 10:56:37 +0000
Received: by outflank-mailman (input) for mailman id 107168;
 Thu, 08 Apr 2021 10:56:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3iLd=JF=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUSKx-0003Yu-MA
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 10:56:35 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 779953ab-c188-4517-a064-d92b8e506248;
 Thu, 08 Apr 2021 10:56: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: 779953ab-c188-4517-a064-d92b8e506248
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617879394;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Qg5zFE0pfMyYoiMUIUPm8aZ0aoT5obvhL+PEw7yKM90=;
  b=TD3uTVD+vHHZ9CTOFtrgNKNa8tMUpE938uuJG0eOmcwNSe9+Z8eLWnxs
   cC/YWdCyiSFf2fo7Doh3muSI0kICMY4ybxUirEWgKtvnz1CcAobIhGGST
   lvZnK8sXPKsFQLLhouzmUlrB4nXnbWfI9Vy/5LT9SK7tP2vU0b2ZFoQEk
   s=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: f/BYWX0BW8RZdqw1vOdUiXB05Bxsit6SFSV+MA+Tu+1ty6PQnJ1hz1cBanBAXRbxFVDAFEIONJ
 3wFhwftaaSc60vrg/eF21/U8bYzIHXM5r9Qofdjq/yEVJh4LbI3Zou1o3L/9icsG2Kw43vHENa
 eOA3X15V4uUn5PlP13koiSkiWefRjxzx+A4SE5ms8ZcUtKEdJ5x6q0dkhxypJymhMkERoYf2Zy
 /8PPi3w9ZN1jf+ucNx65e2yBrb62jZe4E16Lp+RKwOdqmE/4NmDxJkYApz80kq6D8uoCTbfTeb
 wZU=
X-SBRS: 5.2
X-MesageID: 41139414
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:I3WvCqGsP6Z/w0hipLqFOpHXdLJzesId70hD6mlYVQFVfsuEl8
 qngfQc0lvOhCwMXWw78OrsBICrSxrnlaJdy48XILukQU3aqHKlRbsSibfK7h/BP2nF9uBb3b
 p9aKQWMrfNJHVzkMqS2maFOvk6xt3vys6VrMP/61socg1wcaFn6G5Ce2OmO2l7XhNPC5Z8NL
 f03LslmxOadX4abtu2CxA+NoCum/TxmI/7ehlDPhY76WC15g+A0qLwEBSTw34lIlFy6IolmF
 KlryXJop+Nntv+4R/a2m/V4f1t6abc4+oGPuOgoIw4Lj3tjyyheYhuXaaT1QpF3N2H2RIRv/
 Tn5zsmIsRv+1PdF1vF3ifF6k3b/xsFr1/k1FOCjnPoraXCNUwHIvsEv611WF/9ySMbzbZB+Z
 MO5U21nd5rKCmFuyLH693BR3hR5zGJiEtnq8E/pThiS4cEAYUhy7A3zQduP7orOjn104wjGP
 kGNrCn2N9mNWmXaH3UpQBUsaWRd0V2Gh+HR34LsdCO3w5Xm2hkz1AZyNZ3pAZ5yK4A
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="41139414"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=itKeXGxj7cmzLSVZ5li35DVyAA0VGKMXt+z1Z2wkJVszXt094rHVP0xnT2V0zI5DUc2oSVEPxKe0hDQQaQ4PJYjvhHGdpNr2tHQCGNBzxsv/8RTcNKP947wTteMnyIkRErNRcQcaNcAgOoJXit3eWBLMiS9HPTX9xsHojqGVH/nwnJKu36yTMNJLS1qXf5JLhfyUVmVziuuWwkRMRrlOWEfCuh6T08RFFPhhCe00DnqhjAxOfDxKY6PCAw0o9QSSlJcfwUVlh9RvIJloCLLUlV73gw5C5SDkAnqM3IwoSs0DXYKQrHd+BIdBWfiU8uHCh82MRr13KVP42a07TKZoJA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4plYT3kwfqlsfaN5Z7x8AP7vWs9lfN2zMHdNyb3d314=;
 b=TzpPYLn+3SeHt35mkCLOuFAAYnp9eBszkxbS6cbcqfsx/Y6RVEr+/9LjbEIHWTBMOsNwh/ROzpD7o/O3B7MbOimOtUI9L7xbayBoiJFhhPFacPqwgdp91ceUTN21enx90IRLYZ9j+COamR9LsXrvM+ptL7hKTURiAAz+8zw1Qqh01EBZv81WSB49Rf/5ii2OqGJbHyDhMG17SH3OTiYqewLZdGV+CpouyxhyKzptvXala3jeseYqRGKBqUOZkZUfPMTvmrDDQ3HQVihBSDsfLjyTdFYEHEiNAMl2dcOTkjM6HHqhR0+eBgWLEHvi1XDQQpGq/FqZovpKe08iPyRBWQ==
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=4plYT3kwfqlsfaN5Z7x8AP7vWs9lfN2zMHdNyb3d314=;
 b=OjsbTWzGMZlj1TpzFAn5h8MLVXFLqB/6Ls5+5ec4GgjPwjoMaV3od0Tf8X2fV8zmdl8B1KJL6B9V/k80N8kKN0I5VCelWp9f7DkHTChOHey6OQXJEbqS0U/mYfG9BbYhw58IaTPRtVw0/fuJ/F8976bhOTdM1FTQ53idw6S56TM=
Date: Thu, 8 Apr 2021 12:56: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 v3 03/11] x86/vlapic: introduce an EOI callback mechanism
Message-ID: <YG7hWfQwDmcuDjaW@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-4-roger.pau@citrix.com>
 <d18d9e3b-872f-b0cb-aebf-5e55d4433b75@suse.com>
 <YG3djUEiAd9wqQvv@Air-de-Roger>
 <e5a45339-a79a-a903-0599-86e14f493818@suse.com>
 <YG7JBXR3znxhNPtv@Air-de-Roger>
 <9ef5ce06-051f-6f05-613e-82612d02f8e0@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <9ef5ce06-051f-6f05-613e-82612d02f8e0@suse.com>
X-ClientProxiedBy: MR1P264CA0035.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::22) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 14ad4ed8-c57b-481f-f643-08d8fa7cf7e8
X-MS-TrafficTypeDiagnostic: DM4PR03MB5967:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB5967E901CF0EC473226176208F749@DM4PR03MB5967.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: LKNlcinp3TLyUIhXB/5B05YmPUYj5u3e4jTghOaVJo3E8CBK6c9DJjO8nD0czcOQ4MkmnDLiPM+dfXV9rfjxK8BolyRzRsiTu0xAPgDKoBiWUty0rlMMXbz7flJeAmob6UcUUyAEt5HqjvEV38j/o6Mzkm6zs6TTOsImaDkN1kov2Y7StnGH0nebGs/o0VjWLU3fbkd09Yyoot7ntLX86HzJUS8YsMigAW7+S0ji0hUyJ6GodY6Bh8gCLiyTNhU4110Rebq9YXNumJ8QLoHEB+G0HMp8Y9Evf2PVNbsW0yCdMTeLh5iV7FfhVPjVSyqDY3ys6pH1TujmWuqX+nlMnMiWFo3KV7VxOvgVKQutn3yxV0FGEuK8+4uSJiDAcz+y3FrPrwCZ8Aq05XA8rYMecVU4PFPmZG9EpGOWNOSfsSoUE+D+UvsngJwoi97sYVM4XIUMqnGENRzHY7tAeUyfJG87txxl8tTaSWSjYjblqhiAnZi6XzQDMjUDp9KwiiQ58MOz2MoN56m9zKy1RbqDkOLQFz6r7OIHpmMP/AZ512dC3eN2YeklT/VpakqXG28CSlLjxyUI03eXfUtMp8MA4eEyaXtn7voNF6RgbXWRv8/Bi59cSl8oDiIXxDP96LY51fsldfjO9qJwo5AyOYIgFAAm+o+g0KIo0ZQWN4j6meA=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(39860400002)(366004)(136003)(346002)(396003)(8676002)(478600001)(6666004)(6496006)(53546011)(5660300002)(8936002)(6916009)(26005)(66556008)(2906002)(9686003)(66946007)(66476007)(38100700001)(16526019)(186003)(85182001)(33716001)(4326008)(956004)(54906003)(316002)(6486002)(86362001)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 14ad4ed8-c57b-481f-f643-08d8fa7cf7e8
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 10:56:31.6975
 (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: E4PTS0dwz9l6nAD+MFwj2gJC5qkj8PKtpoW92iBHs8FFwQfzS6GnnI1wxXTiz62fPMIvGV2V7EK6D9NsAKoi2g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5967
X-OriginatorOrg: citrix.com

On Thu, Apr 08, 2021 at 12:49:44PM +0200, Jan Beulich wrote:
> On 08.04.2021 11:12, Roger Pau Monné wrote:
> > On Thu, Apr 08, 2021 at 08:20:15AM +0200, Jan Beulich wrote:
> >> On 07.04.2021 18:27, Roger Pau Monné wrote:
> >>> On Wed, Apr 07, 2021 at 04:55:43PM +0200, Jan Beulich wrote:
> >>>> On 31.03.2021 12:32, Roger Pau Monne wrote:
> >>>>> Add a new vlapic_set_irq_callback helper in order to inject a vector
> >>>>> and set a callback to be executed when the guest performs the end of
> >>>>> interrupt acknowledgment.
> >>>>>
> >>>>> Such functionality will be used to migrate the current ad hoc handling
> >>>>> done in vlapic_handle_EOI for the vectors that require some logic to
> >>>>> be executed when the end of interrupt is performed.
> >>>>>
> >>>>> The setter of the callback will be in charge for setting the callback
> >>>>> again on resume. That is the reason why vlapic_set_callback is not a
> >>>>> static function.
> >>>>
> >>>> I'm struggling with your use of "resume" here: Resuming from S3
> >>>> doesn't require re-doing anything that's kept in memory, does it?
> >>>> So what meaning does the word have here?
> >>>
> >>> Right, I can see the confusion. Resume here means a guest being
> >>> migrated or restored, not Xen itself being resumed. Callbacks are not
> >>> part of the exported guest state, and hence any emulated device that
> >>> requires a callback will have to register it as part of loading the
> >>> saved state.
> >>>
> >>>> Apart from this, and with the xzalloc_array() change requested
> >>>> by Andrew, this looks good to me.
> >>
> >> In which case with this change and "resume" replaced suitably in the
> >> description
> > 
> > I've worded it as:
> > 
> > "The setter of the callback will be in charge for setting the callback
> > again on guest restore or resume, as callbacks are not saved as part
> > of the vlapic state. That is the reason why vlapic_set_callback is not
> > a static function."
> 
> Hmm, you still mention "resume", which makes me continue to wonder
> what you're thinking of beyond guest restore.

Urg, yes, let me remove that resume.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 11:03:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 11:03:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107176.204869 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSRG-0004Yd-8I; Thu, 08 Apr 2021 11:03:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107176.204869; Thu, 08 Apr 2021 11: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 1lUSRG-0004YW-54; Thu, 08 Apr 2021 11:03:06 +0000
Received: by outflank-mailman (input) for mailman id 107176;
 Thu, 08 Apr 2021 11:03:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lUSRE-0004YR-SP
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 11:03:05 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::631])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5b03e4a4-29f8-49e0-859b-0a6a1b06ed6c;
 Thu, 08 Apr 2021 11:03:01 +0000 (UTC)
Received: from DB9PR02CA0018.eurprd02.prod.outlook.com (2603:10a6:10:1d9::23)
 by AM6PR08MB3336.eurprd08.prod.outlook.com (2603:10a6:209:41::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Thu, 8 Apr
 2021 11:02:58 +0000
Received: from DB5EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:1d9:cafe::a0) by DB9PR02CA0018.outlook.office365.com
 (2603:10a6:10:1d9::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend
 Transport; Thu, 8 Apr 2021 11:02:58 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT016.mail.protection.outlook.com (10.152.20.141) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Thu, 8 Apr 2021 11:02:58 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Thu, 08 Apr 2021 11:02:58 +0000
Received: from d0537dae27d0.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 1050E798-479C-4BAB-B3AD-6DA4FD56934B.1; 
 Thu, 08 Apr 2021 11:02:46 +0000
Received: from EUR02-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d0537dae27d0.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 08 Apr 2021 11:02:46 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3552.eurprd08.prod.outlook.com (2603:10a6:803:81::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Thu, 8 Apr
 2021 11:02:33 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.034; Thu, 8 Apr 2021
 11:02:33 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0025.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:151::12) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Thu, 8 Apr 2021 11: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: 5b03e4a4-29f8-49e0-859b-0a6a1b06ed6c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RoOHmnX0gg8YRiRP8o155RWuUQDCfrPtauRDIXSX8II=;
 b=0n6vtD6+UrWhTRIpsk8aWUtmSFMAdTbZ2Q0Npikl/+UaCefwgZCeLbFNltfYxt54r+UvK0jx11SuVSSTJ/LcTG8Cyq2qqBmoqZC0quqpoqMXDv1G2F0Vx8i5clk+ifQxpQSCRyS7OA8jCPWKOQu2MWKL3m7CkutXWhE/h7g05rw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3a84f0a21db27090
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XW9vqalHepihQXl6b4RvxO4J9oChtOpkkefBhGCn+uOKNmmR19fc+TDN7KH0QlZB0XRuKUSNYg6+PLvbXGnJdMOtqyefcA7l530tfV0LkrQHJjyblib38h6TuHdT9UF7DCCHQuUKdaMIGmKkHW9jyrEsIh2kdtoPoZ5Izcd6c4GQKovj5JCSZNpa8HeDK/hn9xV29MGZGTKYxW6p1vswMf74m2pfz0qbQuBYCktS5YIJJ5M5Xz9XthZzrZLrr2yxiSS6QtsnolFogN6ErR/wq0Sinf+CIPQzqxS/RgSFM7p7uYt4AcFE1tEgIQVEdSf/KxaHwIiph2RX+YDtZIZ01A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RoOHmnX0gg8YRiRP8o155RWuUQDCfrPtauRDIXSX8II=;
 b=RiW9OW5dN0oi90rTzKvDnLm1o9mOveZGaBN9vST7qoubLALRRhsNSJJxuGrnYeH1qTKMLkFmEJh5crt3cF6cW/yftVVj+PeJAVf29pLTZv1soOt6aBe20tmfky2AGA3imui2nz+1G1+63+DGeYfi2BMak6x9l3rPqLJWo+ijP4aEmx1LOaVzSDwTWMpq4uYYCZaHLlZtT7QdV680aOh7SX4DDJaFT20KUvNsuL319NXvYSjr9goU/XIEZyPTtBGtZiMB2BwECpbDHsy+RrsRPKAJBSOkEo69WtKemdny1MXaZNXo269fx8abRJIBKBAZ19VjGbc736TqlThRPBJVWg==
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=RoOHmnX0gg8YRiRP8o155RWuUQDCfrPtauRDIXSX8II=;
 b=0n6vtD6+UrWhTRIpsk8aWUtmSFMAdTbZ2Q0Npikl/+UaCefwgZCeLbFNltfYxt54r+UvK0jx11SuVSSTJ/LcTG8Cyq2qqBmoqZC0quqpoqMXDv1G2F0Vx8i5clk+ifQxpQSCRyS7OA8jCPWKOQu2MWKL3m7CkutXWhE/h7g05rw=
Authentication-Results-Original: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
Date: Thu, 8 Apr 2021 12:02:24 +0100
Cc: Jan Beulich <jbeulich@suse.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <D0931FDE-29DA-41B0-87AF-EF18ABDDA37E@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
 <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
 <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
To: Stefano Stabellini <sstabellini@kernel.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0025.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:151::12) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 73fecc57-e8cb-4263-dcb1-08d8fa7dde6d
X-MS-TrafficTypeDiagnostic: VI1PR08MB3552:|AM6PR08MB3336:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AM6PR08MB3336B043BBE1CF0034CF6857E4749@AM6PR08MB3336.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 B5GWiAQ2R4Eu+dMp9dwQBb4YRY8DDtvBkrtEg/UouuJj+JZtoIn37IemOGC2NEe32g02/Jsjd+G7I8VyQ6O53k+GyVmFyBEKubVJC/yjQaP1fDOE8b1FFAsEFLYrqitPGnw2r7NCpivOubSCpq0ospCheeJjaMpj5IcjjmDaQcOHymLu70ovOgL5EpDdVRNb0F/wIgGVTGIEcQVe6wmCnL9X4k6dUVQmJqdp4gaDO/TJaKYzLsCXeE9U3fOkNs7a+UfektQjP/qIly67ZaAy5CTBSIMVc5YjJ6NFngquwU8bXPOX+qXym5vzEojaebipUKfjwPUAzO6o1LKM6MjzKcYoPOECpFoV+78YNUhADZoadqfR8aNSVAGHcf5u7uIYUGTFaJfFeNAIKXkRB7GE/hHxuPd3LtEpSqg9oRXBFi2jvH5Iro+YCpOAszY4PWKMCMtSbEaAM5pZ3vAwcosJ/3I8mNL2tG2EorBW6qWlhaAanFaOIETVtAXQDaJ6Fn4y4Bq+2F2unEQjeEfEbVSwV7tySqSJgu4nRjZxJX9ZSw75J0SnWWZ+hbB9xaYL2VGhiQG5aBb5SD22tyVHJrrTmaH1lXDQKx08xO4lj4CRxm7Yj0gwfjpo2LmHXtIxxFh301widH9FsvvWm/cED8Cdmn4jv+uhj/vPd/gzccGRx4VUGn/pqeQjGIjaBiHayyyCGxULV6zosL9txXFgfXjLWw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39850400004)(366004)(376002)(136003)(396003)(52116002)(8676002)(8936002)(36756003)(6486002)(38350700001)(6916009)(26005)(186003)(16526019)(4326008)(7696005)(66556008)(83380400001)(956004)(2616005)(66946007)(66476007)(38100700001)(478600001)(316002)(6666004)(54906003)(53546011)(86362001)(2906002)(5660300002)(33656002)(44832011)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3552
Original-Authentication-Results: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT016.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	8902b1ef-1f2e-4363-fe63-08d8fa7dcf9b
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rRO41LCz7vNA8D4XvGTat9D5ABP6fSkJAC7ld9YYYGxSTjHpe1Y+WPXR8AaP9ll/mHGjY5vuS0IUpvK1Q/b7z0fIGHD1hyMHqxRVB1jVf802IK/b4utQ+aMQu/ofZoCjtR+iu/GDVUND84X/3/VzlJaUdthwYnGZxl6Wdq/EBbGQN01xlGomvoHzYjKKG7QNctXmICD6FD3LJZuKxGXYuV3E3BfGRcDI43eIdeER/8dbo0ZYEMspAsyy+AxQwby5MUDP/9xhhXAQAVCCylkjRNmr3hEo9cgF8qBaugXSbOthPb+iJrJGGdfQryEtMjm4ZbWS5wVGQScibbD8J+hlHC2RjHYMhi2hMCv5UnNyWu2PjTLRBxstFoAT+Gf71XdauLsn+96hK5PG+4rmVxweyCD0ZAS4GUU3gaSIu7wZ6ndhWDazbWERc0JKZaZ3lcm2aSlUw661UHdIwOboETXFI0xUr4dy9rtnay6wc89q44VvAkB1P6eu+i8lLc+FJAHOwZp43hBLKffq0LteB+n8TvvIM4+sTsxCbCy0/QrL+wqSijN0vVknWM5zsXzgtIi7rPYs2wRa66pWOaWC/AFTlcjH8doqyN+PC5fN0wnekCMCjM35yLYS/YRbdKop0O+I8+NKnTN/dSXSdEFhurVlk4TD8Fmi2fGM9ptEcAyYFCY=
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:(4636009)(39850400004)(346002)(376002)(136003)(396003)(46966006)(36840700001)(47076005)(16526019)(82310400003)(6862004)(6486002)(36860700001)(36756003)(8676002)(82740400003)(186003)(5660300002)(7696005)(26005)(81166007)(33656002)(8936002)(44832011)(53546011)(316002)(6666004)(86362001)(54906003)(2906002)(336012)(83380400001)(4326008)(356005)(956004)(2616005)(478600001)(70206006)(70586007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 11:02:58.2428
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 73fecc57-e8cb-4263-dcb1-08d8fa7dde6d
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:
	DB5EUR03FT016.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3336



> On 7 Apr 2021, at 22:26, Stefano Stabellini <sstabellini@kernel.org> wrot=
e:
>=20
> On Wed, 7 Apr 2021, Jan Beulich wrote:
>> On 07.04.2021 10:42, Luca Fancellu wrote:
>>> Just to be sure that we are in the same page, are you suggesting to mod=
ify the name
>>> In this way?
>>>=20
>>> struct gnttab_cache_flush {
>>> -    union {
>>> +    union xen_gnttab_cache_flush_a {
>>>        uint64_t dev_bus_addr;
>>>        grant_ref_t ref;
>>>    } a;
>>>=20
>>> Following this kind of pattern: xen_<upper struct name>_<member name> ?
>>=20
>> While in general I would be fine with this scheme, for field names like
>> "a" or "u" it doesn't fit well imo.
>=20
> "a" is a bad name anyway, even for the member. We can take the
> opportunity to find a better name. Almost anything would be better than
> "a". Maybe "refaddr"?
>=20
>=20
>> I'm also unconvinced this would be
>> scalable to the case where there's further struct/union nesting.
>=20
> How many of these instances of multilevel nesting do we have? Luca might
> know. Probably not many? They could be special-cased.

There are not many multilevel nesting instances of anonymous struct/union a=
nd the maximum level of nesting I found in the public headers is 2:

union {
	union/struct {
		=E2=80=A6
	} <name>
} <name>

I also see that in the majority of cases the unions have not meaningful nam=
es like =E2=80=9Ca=E2=80=9D or =E2=80=9Cu=E2=80=9D as member name, instead =
struct names are fine,
It could be fine to keep the meaningful name the same for the struct type n=
ame and use the pattern for the non-meaningful ones as long
as the names doesn=E2=80=99t create compilation errors?

Example:

struct upper_level {
	union {
		struct {
	=09
		} meaningful_name1;
		struct {
	=09
		} meaningful_name2;
	} u;
};

becomes:

struct upper_level {
	union upper_level_u {
		struct meaningful_name1 {
	=09
		} meaningful_name1;
		struct meaningful_name2 {
	=09
		} meaningful_name2;
	} u;
};

Doing this will help a lot the documentation side because the html page wil=
l show the "struct upper_level" with inside the =E2=80=9Cunion upper_level_=
u" and inside again=20
the two struct =E2=80=9Cmeaningful_name1" and =E2=80=9Cmeaningful_name2", a=
nd from the point of view of the developer it can tell her/him exactly the =
name of the member to
access when writing code (apart from the upper_level_u that can be accessed=
 by u, but we can=E2=80=99t clearly change it).
If this sounds difficult to understand when reading, please generate the do=
cumentation and have a look on the page in one side and the source code in =
another.

Moreover the change should be back-compatible since we are not changing mem=
ber names.

Cheers,

Luca=


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 11:07:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 11:07:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107183.204881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSV8-0004jj-Te; Thu, 08 Apr 2021 11:07:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107183.204881; Thu, 08 Apr 2021 11:07:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSV8-0004jc-QI; Thu, 08 Apr 2021 11:07:06 +0000
Received: by outflank-mailman (input) for mailman id 107183;
 Thu, 08 Apr 2021 11:07: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 1lUSV7-0004jU-V0; Thu, 08 Apr 2021 11:07: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 1lUSV7-0001lc-PX; Thu, 08 Apr 2021 11:07: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 1lUSV7-0001K2-IK; Thu, 08 Apr 2021 11:07:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUSV7-0000Ei-Hm; Thu, 08 Apr 2021 11: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=mWA36EOYpfLTsl0SABu/8lWSa3pJxRtKwhcgqRbqs08=; b=DQVDSEmdmad6IKpZn66cWqElPQ
	9AKJPCfycb62FwDsLZGwFwHFZM0UpSk0ajVRnC8K9jg+M37nrolwooMdp4PXcDDXEQXM6k2q/YlJX
	giPXMpcGHvEPjEifUhng/qWSED6ixJdfnvyskUzIxs+SMMGngH7g1FkaQwteXfw5sZsg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160796-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160796: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:allowable
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check: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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=625faf9f002bd6ff4b6457a016b8ff338223b659
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 11:07:05 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-vhd     17 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl 18 guest-start/debian.repeat fail in 160815 REGR. vs. 160646
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 160815 REGR. vs. 160646
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail in 160815 REGR. vs. 160646
 test-armhf-armhf-libvirt-raw 13 guest-start    fail in 160815 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-vhd      13 guest-start      fail in 160815 pass in 160796
 test-armhf-armhf-xl          14 guest-start         fail pass in 160815-retest
 test-armhf-armhf-xl-multivcpu 14 guest-start        fail pass in 160815-retest
 test-armhf-armhf-xl-arndale   8 xen-boot            fail pass in 160815-retest
 test-armhf-armhf-libvirt-raw 12 debian-di-install   fail pass in 160815-retest

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10   fail REGR. vs. 160646
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl         15 migrate-support-check fail in 160815 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160815 never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 160815 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 160815 never pass
 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 160815 never pass
 test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 160815 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  625faf9f002bd6ff4b6457a016b8ff338223b659
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    6 days
Failing since        160665  2021-04-02 07:40:09 Z    6 days    9 attempts
Testing same since   160796  2021-04-07 13:56:17 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@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                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 11:28:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 11:28:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107190.204899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSpb-0006dw-ML; Thu, 08 Apr 2021 11:28:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107190.204899; Thu, 08 Apr 2021 11:28:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUSpb-0006dp-Ig; Thu, 08 Apr 2021 11:28:15 +0000
Received: by outflank-mailman (input) for mailman id 107190;
 Thu, 08 Apr 2021 11:28:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUSpa-0006dk-Qf
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 11:28:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9aeb4c76-c621-4dab-bdb3-9fb60d343b98;
 Thu, 08 Apr 2021 11:28:13 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 767E8B138;
 Thu,  8 Apr 2021 11: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: 9aeb4c76-c621-4dab-bdb3-9fb60d343b98
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617881292; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=kawX5P+Vt+0SGErESCEqU7jbVFZd1jUoRyWpe1E/zEY=;
	b=WlmnN7EMu5xny0X0H0ZsCCIE3gBAiWpm3XbZW7ImFzpnXbttg/HFKcSGMBfI/FPPJ5p6Ej
	+8fmHAgoO9naHI8PI2nCaKhXP1dyaig9F2FovySQJDrRDT5hcgQieQqcbTObe+aunpbT+j
	VVweX5bDU64G9KFk76bmi8aSLKYLJCM=
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, Stefano Stabellini <sstabellini@kernel.org>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
 <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
 <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
 <D0931FDE-29DA-41B0-87AF-EF18ABDDA37E@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <452286e1-8574-0501-a864-73ef1ff072bb@suse.com>
Date: Thu, 8 Apr 2021 13:28:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <D0931FDE-29DA-41B0-87AF-EF18ABDDA37E@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 08.04.2021 13:02, Luca Fancellu wrote:
> 
> 
>> On 7 Apr 2021, at 22:26, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>
>> On Wed, 7 Apr 2021, Jan Beulich wrote:
>>> On 07.04.2021 10:42, Luca Fancellu wrote:
>>>> Just to be sure that we are in the same page, are you suggesting to modify the name
>>>> In this way?
>>>>
>>>> struct gnttab_cache_flush {
>>>> -    union {
>>>> +    union xen_gnttab_cache_flush_a {
>>>>        uint64_t dev_bus_addr;
>>>>        grant_ref_t ref;
>>>>    } a;
>>>>
>>>> Following this kind of pattern: xen_<upper struct name>_<member name> ?
>>>
>>> While in general I would be fine with this scheme, for field names like
>>> "a" or "u" it doesn't fit well imo.
>>
>> "a" is a bad name anyway, even for the member. We can take the
>> opportunity to find a better name. Almost anything would be better than
>> "a". Maybe "refaddr"?
>>
>>
>>> I'm also unconvinced this would be
>>> scalable to the case where there's further struct/union nesting.
>>
>> How many of these instances of multilevel nesting do we have? Luca might
>> know. Probably not many? They could be special-cased.
> 
> There are not many multilevel nesting instances of anonymous struct/union and the maximum level of nesting I found in the public headers is 2:
> 
> union {
> 	union/struct {
> 		…
> 	} <name>
> } <name>
> 
> I also see that in the majority of cases the unions have not meaningful names like “a” or “u” as member name, instead struct names are fine,
> It could be fine to keep the meaningful name the same for the struct type name and use the pattern for the non-meaningful ones as long
> as the names doesn’t create compilation errors?
> 
> Example:
> 
> struct upper_level {
> 	union {
> 		struct {
> 		
> 		} meaningful_name1;
> 		struct {
> 		
> 		} meaningful_name2;
> 	} u;
> };
> 
> becomes:
> 
> struct upper_level {
> 	union upper_level_u {
> 		struct meaningful_name1 {
> 		
> 		} meaningful_name1;
> 		struct meaningful_name2 {
> 		
> 		} meaningful_name2;
> 	} u;
> };

As you say - as long as there aren't any compilation issues. Two
top level struct-s could have identically named struct/union fields
without tag, in which case your approach outlined above will fail.
And even if there was no such case right now, the case would need
to be covered in whatever naming model was to be used (except, of
course, the one without any names).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 11:40:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 11:40:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107199.204911 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUT1G-0008Pl-QJ; Thu, 08 Apr 2021 11:40:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107199.204911; Thu, 08 Apr 2021 11: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 1lUT1G-0008Pe-Mi; Thu, 08 Apr 2021 11:40:18 +0000
Received: by outflank-mailman (input) for mailman id 107199;
 Thu, 08 Apr 2021 11:40: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 1lUT1F-0008PZ-Ld
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 11:40: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 1lUT1E-0002IR-Dl; Thu, 08 Apr 2021 11:40:16 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUT1E-0001vF-5y; Thu, 08 Apr 2021 11: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=emOYBi9FEz55Nnve8Fy89stSKqmErzUOUKHiT5Z/9oY=; b=3L0JAcwPvicqLI+4K0LItKk5Oy
	lRraDTf8O/7hFpfi+2mIFHR+Mx00LbeU6UJ+cgpFvQXcCn9j3Q7M5cC5qz7gqjFzvU9+SPHl4wdlU
	extQSh52jUlTGnHolHQmvQ4LpOX+XWj8CbHgFzbBFysfdPsfSvYbAKkNlbb2J+VO9NwM=;
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
 <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
 <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
 <D0931FDE-29DA-41B0-87AF-EF18ABDDA37E@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <e3edf002-9d60-7836-f7f0-cd9877653c2c@xen.org>
Date: Thu, 8 Apr 2021 12:40:13 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <D0931FDE-29DA-41B0-87AF-EF18ABDDA37E@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Luca,

On 08/04/2021 12:02, Luca Fancellu wrote:
> 
> 
>> On 7 Apr 2021, at 22:26, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>
>> On Wed, 7 Apr 2021, Jan Beulich wrote:
>>> On 07.04.2021 10:42, Luca Fancellu wrote:
>>>> Just to be sure that we are in the same page, are you suggesting to modify the name
>>>> In this way?
>>>>
>>>> struct gnttab_cache_flush {
>>>> -    union {
>>>> +    union xen_gnttab_cache_flush_a {
>>>>         uint64_t dev_bus_addr;
>>>>         grant_ref_t ref;
>>>>     } a;
>>>>
>>>> Following this kind of pattern: xen_<upper struct name>_<member name> ?
>>>
>>> While in general I would be fine with this scheme, for field names like
>>> "a" or "u" it doesn't fit well imo.
>>
>> "a" is a bad name anyway, even for the member. We can take the
>> opportunity to find a better name. Almost anything would be better than
>> "a". Maybe "refaddr"?
>>
>>
>>> I'm also unconvinced this would be
>>> scalable to the case where there's further struct/union nesting.
>>
>> How many of these instances of multilevel nesting do we have? Luca might
>> know. Probably not many? They could be special-cased.
> 
> There are not many multilevel nesting instances of anonymous struct/union and the maximum level of nesting I found in the public headers is 2:
> 
> union {
> 	union/struct {
> 		…
> 	} <name>
> } <name>
> 
> I also see that in the majority of cases the unions have not meaningful names like “a” or “u” as member name, instead struct names are fine,
> It could be fine to keep the meaningful name the same for the struct type name and use the pattern for the non-meaningful ones as long
> as the names doesn’t create compilation errors?
> 
> Example:
> 
> struct upper_level {
> 	union {
> 		struct {
> 		
> 		} meaningful_name1;
> 		struct {
> 		
> 		} meaningful_name2;
> 	} u;
> };
> 
> becomes:
> 
> struct upper_level {
> 	union upper_level_u {
> 		struct meaningful_name1 {
> 		
> 		} meaningful_name1;
> 		struct meaningful_name2 {
> 		
> 		} meaningful_name2;
> 	} u;
> };

If I understand correctly your proposal, the name of the structure would 
be the name of the field. The name of the fields are usually pretty 
generic so you will likely end up to redefine the structure name.

Unless we want to provide random name, the only safe naming would be to 
define the structure as upper_level_u_meaningful_name{1, 2}. But, this 
is going to be pretty awful to read.

But I am still a bit puzzled by the fact doxygen is not capable to deal 
with anynomous/unamed union. How do other projects deal with them?

> 
> Doing this will help a lot the documentation side because the html page will show the "struct upper_level" with inside the “union upper_level_u" and inside again
> the two struct “meaningful_name1" and “meaningful_name2", and from the point of view of the developer it can tell her/him exactly the name of the member to
> access when writing code (apart from the upper_level_u that can be accessed by u, but we can’t clearly change it).

I don't quite understand the last point. Wouldn't the developper see the 
field name? So how is it going to be different from seeing the structure 
name?

> If this sounds difficult to understand when reading, please generate the documentation and have a look on the page in one side and the source code in another.

Just to be clear, do you mean understanding what you wrote or a 
developper trying to understand the code?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 11:51:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 11:51:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107206.204923 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTBM-00011M-Tb; Thu, 08 Apr 2021 11:50:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107206.204923; Thu, 08 Apr 2021 11:50:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTBM-00011F-QN; Thu, 08 Apr 2021 11:50:44 +0000
Received: by outflank-mailman (input) for mailman id 107206;
 Thu, 08 Apr 2021 11:50: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 1lUTBL-00011A-4H
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 11:50: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 1lUTBJ-0002Sw-On; Thu, 08 Apr 2021 11:50:41 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUTBJ-0002xc-CD; Thu, 08 Apr 2021 11:50: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:
	MIME-Version:Date:Message-ID:References:Cc:To:From:Subject;
	bh=k/hSsReF9jPFy0aDozzz+ViXl1T3EMFaljZoSbCxEgk=; b=bqJ1LZwibclsczEw5Oaeiu5Evn
	YX29ZGmU7DTV4QdXYOG67BV6/CpObntCn5GGB+5nA/m5KOUbnsLMcbaf6cj70KYEX0m3OwdV3rcE4
	uaHgpxnMJUczXOHp3C9HrrAxyY9aM+z6Mp7awaMA0lyZgiXvom1Hkz83+CLgA6Y/1w6o=;
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
From: Julien Grall <julien@xen.org>
To: Luca Fancellu <luca.fancellu@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
 <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
 <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
 <D0931FDE-29DA-41B0-87AF-EF18ABDDA37E@arm.com>
 <e3edf002-9d60-7836-f7f0-cd9877653c2c@xen.org>
Message-ID: <2b5b6cd8-7898-46f7-10bb-4a9d95da58ef@xen.org>
Date: Thu, 8 Apr 2021 12:50:39 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <e3edf002-9d60-7836-f7f0-cd9877653c2c@xen.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 08/04/2021 12:40, Julien Grall wrote:
> Hi Luca,
> 
> On 08/04/2021 12:02, Luca Fancellu wrote:
>>
>>
>>> On 7 Apr 2021, at 22:26, Stefano Stabellini <sstabellini@kernel.org> 
>>> wrote:
>>>
>>> On Wed, 7 Apr 2021, Jan Beulich wrote:
>>>> On 07.04.2021 10:42, Luca Fancellu wrote:
>>>>> Just to be sure that we are in the same page, are you suggesting to 
>>>>> modify the name
>>>>> In this way?
>>>>>
>>>>> struct gnttab_cache_flush {
>>>>> -    union {
>>>>> +    union xen_gnttab_cache_flush_a {
>>>>>         uint64_t dev_bus_addr;
>>>>>         grant_ref_t ref;
>>>>>     } a;
>>>>>
>>>>> Following this kind of pattern: xen_<upper struct name>_<member 
>>>>> name> ?
>>>>
>>>> While in general I would be fine with this scheme, for field names like
>>>> "a" or "u" it doesn't fit well imo.
>>>
>>> "a" is a bad name anyway, even for the member. We can take the
>>> opportunity to find a better name. Almost anything would be better than
>>> "a". Maybe "refaddr"?
>>>
>>>
>>>> I'm also unconvinced this would be
>>>> scalable to the case where there's further struct/union nesting.
>>>
>>> How many of these instances of multilevel nesting do we have? Luca might
>>> know. Probably not many? They could be special-cased.
>>
>> There are not many multilevel nesting instances of anonymous 
>> struct/union and the maximum level of nesting I found in the public 
>> headers is 2:
>>
>> union {
>>     union/struct {
>>         …
>>     } <name>
>> } <name>
>>
>> I also see that in the majority of cases the unions have not 
>> meaningful names like “a” or “u” as member name, instead struct names 
>> are fine,
>> It could be fine to keep the meaningful name the same for the struct 
>> type name and use the pattern for the non-meaningful ones as long
>> as the names doesn’t create compilation errors?
>>
>> Example:
>>
>> struct upper_level {
>>     union {
>>         struct {
>>
>>         } meaningful_name1;
>>         struct {
>>
>>         } meaningful_name2;
>>     } u;
>> };
>>
>> becomes:
>>
>> struct upper_level {
>>     union upper_level_u {
>>         struct meaningful_name1 {
>>
>>         } meaningful_name1;
>>         struct meaningful_name2 {
>>
>>         } meaningful_name2;
>>     } u;
>> };
> 
> If I understand correctly your proposal, the name of the structure would 
> be the name of the field. The name of the fields are usually pretty 
> generic so you will likely end up to redefine the structure name.
> 
> Unless we want to provide random name, the only safe naming would be to 
> define the structure as upper_level_u_meaningful_name{1, 2}. But, this 
> is going to be pretty awful to read.
> 
> But I am still a bit puzzled by the fact doxygen is not capable to deal 
> with anynomous/unamed union. How do other projects deal with them?

While going through the list of anynomous union in Xen, I noticed we 
also have something like:

struct test {
     union {
         int a;
         int b;
     };
};

We can't name them because of syntactic reasons. What's your plan for them?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 11:59:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 11:59:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107212.204938 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTJT-0001I5-Pv; Thu, 08 Apr 2021 11:59:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107212.204938; Thu, 08 Apr 2021 11:59: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 1lUTJT-0001Hy-MV; Thu, 08 Apr 2021 11:59:07 +0000
Received: by outflank-mailman (input) for mailman id 107212;
 Thu, 08 Apr 2021 11:59:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lUTJS-0001Ht-F1
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 11:59:06 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.49]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 320f50d5-172e-49e2-a285-1f2b8c96e0d0;
 Thu, 08 Apr 2021 11:59:04 +0000 (UTC)
Received: from MR2P264CA0058.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:31::22)
 by VI1PR0801MB1742.eurprd08.prod.outlook.com (2603:10a6:800:4f::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Thu, 8 Apr
 2021 11:59:02 +0000
Received: from VE1EUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:500:31:cafe::ae) by MR2P264CA0058.outlook.office365.com
 (2603:10a6:500:31::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Thu, 8 Apr 2021 11:59:01 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT036.mail.protection.outlook.com (10.152.19.204) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Thu, 8 Apr 2021 11:59:01 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Thu, 08 Apr 2021 11:59:01 +0000
Received: from 3f0be8201459.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5F86BD47-9416-4B97-87FF-9C59F1B49328.1; 
 Thu, 08 Apr 2021 11:58:55 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3f0be8201459.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 08 Apr 2021 11:58:55 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3088.eurprd08.prod.outlook.com (2603:10a6:803:3f::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.26; Thu, 8 Apr
 2021 11:58:51 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.034; Thu, 8 Apr 2021
 11:58:51 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0382.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18f::9) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Thu, 8 Apr 2021 11:58: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: 320f50d5-172e-49e2-a285-1f2b8c96e0d0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AV9XS5vGKjTneBedwAChbjN4gwvzrEfyz7p23sivjiY=;
 b=t6cFqK7zxbUIeECuPUkXQ+JPHpSh3aGQMt5fWKPQO47H4/4vkPMhYQRBluaGgn6+KFu7yd/VtMgNFfvRpEemyCGi06HwnjcS87+lnyXkz5Gjy0Bz4RravfIFGyG2VXCusx5/0/LS+dtCegYO6W0Nro0Wqk3MWfKxvm2epuMYNdw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 989b362828268f56
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EcngLtb82++RIYCY/qQ/6vWW5z68tsl69RoB3ZAC6mDhBbiu7KpM00URM/35N3d6iOxbfVzkRVp+H7OcTA/3aPNL/dKX1Z/PRDH5KGvnEDg8WUuHzVLkSWXbfaLfgY2a7C51KqD9JjnItFd/8uOq28+aSLso7mGN8Xhd2bU1RhsXuaFjiObJfolAIGcL5IzoyBXd7KTi8wn3OdLldbxut/4OA3zd6F4gxOJgVey+Ro2r9d66U8h/7kVuSc1+SkvDPdKnEg/w2E+pvq2n7QCwNUSuC/c09/3ruEqmUeoYKVnMWSPjb9bjpK64kwOpbmzci36KAj+wQIH20o8YBBmOBg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AV9XS5vGKjTneBedwAChbjN4gwvzrEfyz7p23sivjiY=;
 b=oJ7BhiHgb79AklKP7EhSxwR1XU3X54jRunsiSguGWy0mTVjttGW5dvEOwU/HjsDHRR4Kw6/KXfIEQmwzF6EqnWnaeOv7BvzPq0PgCOKbYa4t/Ie0RrXVZJE6hSIUSpAS3K/w5h+/EX3aOZ+bv4z070svLAcNhvOJpAr6IcLj7poebrbp22jbmAOZbya88GcxVZ15SNknt9LOOMCBM1CRKMFYL1wu+DNaQkTjHKLT4c8M7YqUElIBG10R5LIhRYgAP4R67qaM2zcoyhq7Qi4g9DR4DwYQRZilb3e/MWbQhIYHheEpNsbh28BgZKB7Ihffp+dsFARvR7N9drpg2wIvLw==
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=AV9XS5vGKjTneBedwAChbjN4gwvzrEfyz7p23sivjiY=;
 b=t6cFqK7zxbUIeECuPUkXQ+JPHpSh3aGQMt5fWKPQO47H4/4vkPMhYQRBluaGgn6+KFu7yd/VtMgNFfvRpEemyCGi06HwnjcS87+lnyXkz5Gjy0Bz4RravfIFGyG2VXCusx5/0/LS+dtCegYO6W0Nro0Wqk3MWfKxvm2epuMYNdw=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <e3edf002-9d60-7836-f7f0-cd9877653c2c@xen.org>
Date: Thu, 8 Apr 2021 12:58:41 +0100
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Jan Beulich <jbeulich@suse.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <3AF7CE5E-2000-4B56-A23A-44AF094FC8AA@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
 <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
 <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
 <D0931FDE-29DA-41B0-87AF-EF18ABDDA37E@arm.com>
 <e3edf002-9d60-7836-f7f0-cd9877653c2c@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0382.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18f::9) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 92007b47-61fb-457a-ee62-08d8fa85b343
X-MS-TrafficTypeDiagnostic: VI1PR08MB3088:|VI1PR0801MB1742:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR0801MB174235AE452431EA85D00479E4749@VI1PR0801MB1742.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 r/3hIIAqKRk22VYp5UAW3OqZ9+KIHW/HaUOMlQ5EwRI1CDoGIsGOPzvqN2tXmhhV2b+v2sUM790p8M34bEUjn/dEnx8UQZJLKDqCNUT2DQkJRHyrlN8O2JcLEvd4Q1ItYMKwLAwVVG9ySfDEG9ST+AYrywBP1qH3T5nOY+E41B+IO5iJdOsd1Am1qZyGDAh3AtOa5qY6Eu7ZfxyP7mwJOUAzwZdERmLRvHpw5bM518hwZQp4lOUgTqFrSUylURR1UsKEHPralmKd94T3fwMvow9TlT3Q4MpKmw/8QpFb/LRXImQj4JjbDsTYZwNxsxFIPQSHxuogZU/ZEiN2EQqnYmkwaJX7ca7zz1FbknNzjqShx8XFF/C8DvMxYCWna+sUuoSFjHzTUkE1ow3MxnJi3Fqj7IDORgVXZ0vHbCDJRY9n/rl4r+OH6p//GNtwT52S9wnJECdFs6aGk0vWLkrjtSkQhzp8H/NHoVVkMD2QahDbhjK95DL3PNaMnAyAEQ2tMDSTmIVm5KD6D8BVDEXveuWH24YttQ+Wk5AxC+VHJrjHUJBZwFjvbONxWIgYTkmt/MJZv7Na8BCz6hMfhcxhs5wzn+kx3tNfD8QqN9YJUW2EVV5pwz8i1A+aoSc+UVvvyX+9Pt9AwORjE3yNW0vWLRKaWF6eDjnCw5CeqIkXGmU6uL1N9B0cRaNnn+oXd983Mh6SyOS0V3Vs3XVsAI+jAsjJonLrtUk0/PfRQShyzlM=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(39850400004)(346002)(366004)(376002)(38100700001)(8936002)(2906002)(956004)(8676002)(26005)(186003)(66946007)(7696005)(16526019)(66476007)(2616005)(44832011)(83380400001)(478600001)(38350700001)(36756003)(4326008)(33656002)(53546011)(6486002)(86362001)(6916009)(6666004)(54906003)(52116002)(5660300002)(66556008)(316002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 =?utf-8?B?NmZYMTU5TmNObVJFUzBxODIxRVREVERtZnIrN1NVNExRbnQvaFl4cGkzUVc5?=
 =?utf-8?B?L3NCSHE2NTJrSU4xMXBCck1VcEpmZ1ZpamJMdHdlZytLYnR5RXI4NitrM2dN?=
 =?utf-8?B?NEpJbDBmdEZQV0NNRGVGd1Q2YzBFTmI2Rk0zU1JtQmxLdkVibkY3ckVFN05j?=
 =?utf-8?B?VXMwVHozN1BkcXRySnYwc0VMUVM4b2l2WWFtMktHSUREaHNDWlhEelJkVFpw?=
 =?utf-8?B?a3BNRlRXK3pHaFV6NDVrbElxWFhPbEhRdG5aSmVkMUZJT24raWpWekZKRUpP?=
 =?utf-8?B?cWp2NlhXZDdXZ0ttU2ZoTXpGeUExcmNiWW80TWNGOGp5NldGdkNGRVpKMlVv?=
 =?utf-8?B?U0FoeVhuTk5DVENLcUV4OUtTWW0vajV2UklOU2xkUnNqVjA4TWl1SEFWYlEy?=
 =?utf-8?B?WHI2M2pUQXNVYVU0SkxBd1dWWVlHL2k5bUo5N0xpUytPTWQ3SForNXlJTDFs?=
 =?utf-8?B?M0tUbHgxQmMraXhsZ3FiUUhndnh3NlRsY1lkN2pXTW5Rc1NWdDlJcytlR2ov?=
 =?utf-8?B?c2dOV1lVSDBUclQ0OEh3YmhOcm84TlZmSmVIcDFES1UrOFBON2FIYnZYMHJI?=
 =?utf-8?B?a25wRkxWeElmeHk1NU8zblVzN3c5YlBoQWk4ZlZwT21XT2NNekJGWFBHaXFC?=
 =?utf-8?B?ZENtanh2Y0VyM0V5MU14MmhKMS91Z0JzK2ZWbFlraG94OFhQTkovRElJL01V?=
 =?utf-8?B?QTVqY2VOTkwyM0YyeG5YZEFGdTFwRlhzenVpQ3RFV085bDUxUG9HMis1V25s?=
 =?utf-8?B?OTRhZ3lwQ0JRWHE3Ym03RnR4QmRLRGtmdTNoZmlPNjRmcnUvclJaeFRhNXM4?=
 =?utf-8?B?cHBQOGY1Rm80My9BZHNtY1pwZ1ZoNlc5L0JMVFo1WVdqbENTUmV1WHJvWEIw?=
 =?utf-8?B?UG5HT0tZajRkLzRJMkl3WUU0TXhmd1JXZEFKQ25hRldadUtjT2J0L0JvbzY2?=
 =?utf-8?B?VjJIQ0JsZWdDMzhyRDVQSllWejArT2RMRGpMMS9DOVdOaUgzTkc0cjA5N29W?=
 =?utf-8?B?R2RFaE5lMExlS3VyMWhQN1hwR2N3M0ZwZTNIUm9nVUZQdnhZdkdvV2M5eUxp?=
 =?utf-8?B?SWJyNFpBWVc0d2U2L0RBYWVBWllkZG12ME9RbkRqbDNRZE1LaFBGWjJBQmM3?=
 =?utf-8?B?MUJ1MUFIaXNxRTU5K0syeVVmeHRhZUoraE1JdHhKL1FNMmxza1ovVVBGVVJP?=
 =?utf-8?B?NHAyeFA1Z3h0VTA1OEhuREtZazhDRHNXbkZGTWdNMlIybVFoVEhBREEvaG91?=
 =?utf-8?B?Z3BMYkdsSmF0WlJsbzBYRUhnNVIzWStFK1lkWkQ2RllTWTN4U1NmVkYwRUFa?=
 =?utf-8?B?Q29wTUQ2b0pCMWREaWRtZEtPSEU3bWk1Y3BZY2kzNTFKOHR2Ym5lanc0QmZS?=
 =?utf-8?B?Ni9NK0Z4Qis4QzZheFowZHhQQzN4UFp1T05OVnRzeThkcDdFTWV4SnJMMnpM?=
 =?utf-8?B?WVlMZlEyMEk2aGFBN3BqNDd6OHJrMGsreGx0NHY5TXVISytsb0NiNzVjQU5C?=
 =?utf-8?B?SERzTHR5VW1GRWxlVk9YdEJIRHY4WTI0QVhHeUdqVXpRVjEwS1lQQ3VzenFq?=
 =?utf-8?B?Q1o3WW4zTm9ydHFQVWQ1QmVFRGtGTHY3UEFyZUxFc0p5RlVMKzYwb0RLaTZ0?=
 =?utf-8?B?Y09lRy9wcFlMZU5nUFZXRFFocFYvTmErR2pWWDdoN3FQRCtDM09HV3k2ZDVz?=
 =?utf-8?B?TlJBR0VpdzRPWFFzeG1rZmNKWm90ZHFEK2M3L01tZnNCV3c1SWVNTmdjTjVE?=
 =?utf-8?Q?BmRc76b1AOghodwsQuQxGvLORc0H5OdyZ2jcmBP?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3088
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e70065a4-6e59-4903-33a8-08d8fa85acff
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QdxpDpqTLUihFyFue3dRDvz1CGm10cChhDtyZGZFH7vEfdWFNC5KE4c3pvhV6+jw5R4W1/QFzLHKk+3qSnvHg/PPdGhsRU1GZ+Z9TxhTX06E/GXzxY0VZuxrCdzAFQ7o9r40ZPFt5Q8XewkAFYOWOGx6wvRRIM/Uo2kWiCG0Yz+wohEk+giD7mg39hrdqxvqBY2LefS0nlo7QETLiRWBD6IUkF31NEJKFwfmChMhlSi5bbcbHyjK5ROE6W7C0/Fwhho6iZobsjBZsoq75aIT8qUyhCgYqGHg6MWJd/G5sfX4rE6E9KStTEs8zljS9RyKm31xO2RaZJ6Aco+viHQlNDfdC88UJtnq6uUl2V3Tv4aGhfyW190duBPc6ZLdr3UvIccC+G+/aqCJKyQ+IN82RxiZz5DaIAX9Fi1T9AUiZ170uzoXHtrvX8tpTNECiRkmjuXD/TgyVbUG4FvVlxPcrFQIr3wJf6S/65XCboxamqOI6toNEpVtSqr6s2erELSTvKyNic0+FGu5c+91fgfh2UONTNCWh3VcGL6wWSGUIfKQ2Vx3u06PdNpHwvfesAFa/KGpLXvS/NTYH4UVV+3pxjeGaVvdim8Urp8sfrRHgovPsvIyplsE1pPGXN1AP7eYr5dEbrxnZzOo+pUkUlO4eQjUeC0iCYraV55aTb+JYno=
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:(4636009)(136003)(39850400004)(396003)(346002)(376002)(36840700001)(46966006)(356005)(81166007)(186003)(26005)(2906002)(7696005)(83380400001)(82740400003)(478600001)(6486002)(54906003)(8676002)(36860700001)(8936002)(5660300002)(316002)(86362001)(4326008)(2616005)(6666004)(33656002)(336012)(956004)(53546011)(70206006)(70586007)(82310400003)(47076005)(44832011)(36756003)(6862004)(16526019);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 11:59:01.6423
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 92007b47-61fb-457a-ee62-08d8fa85b343
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:
	VE1EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1742



> On 8 Apr 2021, at 12:40, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Luca,
>=20
> On 08/04/2021 12:02, Luca Fancellu wrote:
>>> On 7 Apr 2021, at 22:26, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>>>=20
>>> On Wed, 7 Apr 2021, Jan Beulich wrote:
>>>> On 07.04.2021 10:42, Luca Fancellu wrote:
>>>>> Just to be sure that we are in the same page, are you suggesting to m=
odify the name
>>>>> In this way?
>>>>>=20
>>>>> struct gnttab_cache_flush {
>>>>> -    union {
>>>>> +    union xen_gnttab_cache_flush_a {
>>>>>        uint64_t dev_bus_addr;
>>>>>        grant_ref_t ref;
>>>>>    } a;
>>>>>=20
>>>>> Following this kind of pattern: xen_<upper struct name>_<member name>=
 ?
>>>>=20
>>>> While in general I would be fine with this scheme, for field names lik=
e
>>>> "a" or "u" it doesn't fit well imo.
>>>=20
>>> "a" is a bad name anyway, even for the member. We can take the
>>> opportunity to find a better name. Almost anything would be better than
>>> "a". Maybe "refaddr"?
>>>=20
>>>=20
>>>> I'm also unconvinced this would be
>>>> scalable to the case where there's further struct/union nesting.
>>>=20
>>> How many of these instances of multilevel nesting do we have? Luca migh=
t
>>> know. Probably not many? They could be special-cased.
>> There are not many multilevel nesting instances of anonymous struct/unio=
n and the maximum level of nesting I found in the public headers is 2:
>> union {
>> 	union/struct {
>> 		=E2=80=A6
>> 	} <name>
>> } <name>
>> I also see that in the majority of cases the unions have not meaningful =
names like =E2=80=9Ca=E2=80=9D or =E2=80=9Cu=E2=80=9D as member name, inste=
ad struct names are fine,
>> It could be fine to keep the meaningful name the same for the struct typ=
e name and use the pattern for the non-meaningful ones as long
>> as the names doesn=E2=80=99t create compilation errors?
>> Example:
>> struct upper_level {
>> 	union {
>> 		struct {
>> 	=09
>> 		} meaningful_name1;
>> 		struct {
>> 	=09
>> 		} meaningful_name2;
>> 	} u;
>> };
>> becomes:
>> struct upper_level {
>> 	union upper_level_u {
>> 		struct meaningful_name1 {
>> 	=09
>> 		} meaningful_name1;
>> 		struct meaningful_name2 {
>> 	=09
>> 		} meaningful_name2;
>> 	} u;
>> };
>=20
> If I understand correctly your proposal, the name of the structure would =
be the name of the field. The name of the fields are usually pretty generic=
 so you will likely end up to redefine the structure name.
>=20
> Unless we want to provide random name, the only safe naming would be to d=
efine the structure as upper_level_u_meaningful_name{1, 2}. But, this is go=
ing to be pretty awful to read.
>=20
> But I am still a bit puzzled by the fact doxygen is not capable to deal w=
ith anynomous/unamed union. How do other projects deal with them?
>=20
>> Doing this will help a lot the documentation side because the html page =
will show the "struct upper_level" with inside the =E2=80=9Cunion upper_lev=
el_u" and inside again
>> the two struct =E2=80=9Cmeaningful_name1" and =E2=80=9Cmeaningful_name2"=
, and from the point of view of the developer it can tell her/him exactly t=
he name of the member to
>> access when writing code (apart from the upper_level_u that can be acces=
sed by u, but we can=E2=80=99t clearly change it).
>=20
> I don't quite understand the last point. Wouldn't the developper see the =
field name? So how is it going to be different from seeing the structure na=
me?

The developer, that is using the documentation generated with sphinx+doxyge=
n, will see the structure name and not the field name because this is the w=
ay
sphinx+doxygen is rendering the code structures. You can see it in the gene=
rated documentation using this serie.

>=20
>> If this sounds difficult to understand when reading, please generate the=
 documentation and have a look on the page in one side and the source code =
in another.
>=20
> Just to be clear, do you mean understanding what you wrote or a developpe=
r trying to understand the code?

I meant understanding what I wrote, because I know it=E2=80=99s difficult t=
o describe the concept without visualising the html page, it would have bee=
n much easier to attach
an image to clarify.

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:13:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:13:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107225.204952 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTXV-0003D4-GV; Thu, 08 Apr 2021 12:13:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107225.204952; Thu, 08 Apr 2021 12:13:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTXV-0003Cx-DV; Thu, 08 Apr 2021 12:13:37 +0000
Received: by outflank-mailman (input) for mailman id 107225;
 Thu, 08 Apr 2021 12:13:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTXU-0003Cs-8O
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:13:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 788afef9-2a46-4f2a-9aa7-2b6937f6155c;
 Thu, 08 Apr 2021 12:13:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 95082B114;
 Thu,  8 Apr 2021 12:13: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: 788afef9-2a46-4f2a-9aa7-2b6937f6155c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884014; 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=C6FEdpeBiU/t9GXqV6uttJH+IyUVBgrvKvQ3hj+wMmY=;
	b=VYRmgUBWFPUE+BTKs4atX5RvrHwkLjUWYz2tL9wLpvaLQumyDtH7Vp95C2rE6dIWPZEUq1
	hD3opG4Fk2Y34qoP/gsPx281j4VI0gyQCbULNFH8Xl+kgEo2cF6Qn7RO93YcSFV7M0wiam
	OkBRkXNZ3NCLfjKn7CMQuwcX20lT6pw=
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 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>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 00/11] assorted replacement of x[mz]alloc_bytes()
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Message-ID: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Date: Thu, 8 Apr 2021 14:13:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

In the long run I think we want to do away with these type-unsafe
interfaces, the more that they also request (typically) excess
alignment. This series of entirely independent patches is
eliminating the instances where it's relatively clear that they're
not just "blob" allocations.

01: x86/HVM: avoid effectively open-coding xzalloc_flex_struct()
02: x86/vPMU: avoid effectively open-coding xzalloc_flex_struct()
03: x86/MCE: avoid effectively open-coding xmalloc_array()
04: x86/HVM: avoid effectively open-coding xmalloc_array()
05: x86/oprofile: avoid effectively open-coding xmalloc_array()
06: x86/IRQ: avoid over-alignment in alloc_pirq_struct()
07: EFI/runtime: avoid effectively open-coding xmalloc_array()
08: hypfs: avoid effectively open-coding xzalloc_array()
09: kexec: avoid effectively open-coding xzalloc_flex_struct()
10: video/lfb: avoid effectively open-coding xzalloc_array()
11: Arm/optee: don't open-code xzalloc_flex_struct()

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:16:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:16:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107229.204965 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTab-0003My-W3; Thu, 08 Apr 2021 12:16:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107229.204965; Thu, 08 Apr 2021 12:16: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 1lUTab-0003Mr-SN; Thu, 08 Apr 2021 12:16:49 +0000
Received: by outflank-mailman (input) for mailman id 107229;
 Thu, 08 Apr 2021 12:16:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTab-0003Mm-2R
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:16:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d25c10aa-527d-42d8-b670-624b41a06f87;
 Thu, 08 Apr 2021 12:16:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3BCCDB2D3;
 Thu,  8 Apr 2021 12:16: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: d25c10aa-527d-42d8-b670-624b41a06f87
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884207; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=eDvHAwIF6mX0AlxLLrgGKEgwtN3OOz7sw/+4M1PC1Ao=;
	b=Jh10VdM3VM36k/09nhklM42jup0OlzVtOlN26h+O5CKp2dy9zekrqWlkFkZxhrAdMVXPE+
	wtv8awxlYvw/qGHwnGaDtc+1jY3Q9k1hYsKGcYeLlClgLGHL/LdjhEWsDd1uInPxEiJvxf
	ScWViD8W3wCUgazRsQwS7IgsQ2lTt7g=
Subject: [PATCH 01/11] x86/HVM: avoid effectively open-coding
 xzalloc_flex_struct()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <a6a27d6b-58de-1654-1f2f-8631a34a1281@suse.com>
Date: Thu, 8 Apr 2021 14:16:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Drop hvm_irq_size(), which exists for just this purpose.

There is a difference in generated code: xzalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

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

--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -642,7 +642,8 @@ int hvm_domain_initialise(struct domain
     d->arch.hvm.params = xzalloc_array(uint64_t, HVM_NR_PARAMS);
     d->arch.hvm.io_handler = xzalloc_array(struct hvm_io_handler,
                                            NR_IO_HANDLERS);
-    d->arch.hvm.irq = xzalloc_bytes(hvm_irq_size(nr_gsis));
+    d->arch.hvm.irq = xzalloc_flex_struct(struct hvm_irq,
+                                          gsi_assert_count, nr_gsis);
 
     rc = -ENOMEM;
     if ( !d->arch.hvm.pl_time || !d->arch.hvm.irq ||
--- a/xen/include/asm-x86/hvm/irq.h
+++ b/xen/include/asm-x86/hvm/irq.h
@@ -98,7 +98,6 @@ struct hvm_irq {
 #define hvm_pci_intx_link(dev, intx) \
     (((dev) + (intx)) & 3)
 #define hvm_domain_irq(d) ((d)->arch.hvm.irq)
-#define hvm_irq_size(cnt) offsetof(struct hvm_irq, gsi_assert_count[cnt])
 
 #define hvm_isa_irq_to_gsi(isa_irq) ((isa_irq) ? : 2)
 



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:17:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:17:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107234.204977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTbI-0003Tk-94; Thu, 08 Apr 2021 12:17:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107234.204977; Thu, 08 Apr 2021 12:17: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 1lUTbI-0003Tc-5e; Thu, 08 Apr 2021 12:17:32 +0000
Received: by outflank-mailman (input) for mailman id 107234;
 Thu, 08 Apr 2021 12:17:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTbH-0003TX-Hf
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:17:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 456238ae-2933-4aa1-acc3-7110983556ff;
 Thu, 08 Apr 2021 12:17:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1E70AB007;
 Thu,  8 Apr 2021 12:17: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: 456238ae-2933-4aa1-acc3-7110983556ff
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884250; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=YjgoyLYt7SHX0fU/jqnJ8hiIG5x4umZdD9kaKSbikg8=;
	b=GYTsYqOJBinstoNn4WhvIEOkGgCSezGloEwIGC1ui32JB78W4p+cc9o36UXx+Seqoty3tL
	3NLFyLAT8EHVE3fdK8iPzzBcQazKeYCkd6WjwxqVc1hMkCNefnmbw5A0MKxvPkcLHp357c
	E1SsFGrAAdOSfgzJHogeITPGkV8mxvs=
Subject: [PATCH 02/11] x86/vPMU: avoid effectively open-coding
 xzalloc_flex_struct()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <ec03cef8-a883-fd68-a062-c243d782394c@suse.com>
Date: Thu, 8 Apr 2021 14:17:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xzalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

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

--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -461,10 +461,10 @@ static int core2_vpmu_alloc_resource(str
             goto out_err;
     }
 
-    core2_vpmu_cxt = xzalloc_bytes(sizeof(*core2_vpmu_cxt) +
-                                   sizeof(uint64_t) * fixed_pmc_cnt +
-                                   sizeof(struct xen_pmu_cntr_pair) *
-                                   arch_pmc_cnt);
+    core2_vpmu_cxt = xzalloc_flex_struct(struct xen_pmu_intel_ctxt, regs,
+                                         fixed_pmc_cnt + arch_pmc_cnt *
+                                         (sizeof(struct xen_pmu_cntr_pair) /
+                                          sizeof(*core2_vpmu_cxt->regs)));
     p = xzalloc(uint64_t);
     if ( !core2_vpmu_cxt || !p )
         goto out_err;



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:18:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:18:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107237.204989 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTbl-0003Zz-IA; Thu, 08 Apr 2021 12:18:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107237.204989; Thu, 08 Apr 2021 12: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 1lUTbl-0003Zs-EL; Thu, 08 Apr 2021 12:18:01 +0000
Received: by outflank-mailman (input) for mailman id 107237;
 Thu, 08 Apr 2021 12:17:59 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTbj-0003ZO-T4
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:17:59 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 90761739-f7d3-4dd4-80d1-076cba7ebca2;
 Thu, 08 Apr 2021 12:17:59 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4EF1FB090;
 Thu,  8 Apr 2021 12:17: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: 90761739-f7d3-4dd4-80d1-076cba7ebca2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884278; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=QnmG9k8Zw1WTHYZkvL1RP6b1ZHGImCYwyft4ku4C/6U=;
	b=jARlKgxxgKd+LvB/iXqHR4JKLtrBD7/3V9FIdXlHV+vniPp/MLLCibRxuHF+WQxNFcZbdp
	SzojpNL3PZBmLmiHV7drDOaPWnEAJXsTNHahdvT7+/kC2vPdpEym1XinF+WcujsqSjmbSl
	5s1M7h/eHRv274C0zjtxNc5RT3sLpM8=
Subject: [PATCH 03/11] x86/MCE: avoid effectively open-coding xmalloc_array()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <47101cea-a856-3921-dd19-89ce766aaaeb@suse.com>
Date: Thu, 8 Apr 2021 14:17:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xmalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

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

--- a/xen/arch/x86/cpu/mcheck/mctelem.c
+++ b/xen/arch/x86/cpu/mcheck/mctelem.c
@@ -345,7 +345,7 @@ void __init mctelem_init(unsigned int da
 
 	if ((mctctl.mctc_elems = xmalloc_array(struct mctelem_ent,
 	    MC_NENT)) == NULL ||
-	    (datarr = xmalloc_bytes(MC_NENT * datasz)) == NULL) {
+	    (datarr = xmalloc_array(char, MC_NENT * datasz)) == NULL) {
 		xfree(mctctl.mctc_elems);
 		printk("Allocations for MCA telemetry failed\n");
 		return;



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:18:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:18:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107241.205001 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTcF-0003g8-Q9; Thu, 08 Apr 2021 12:18:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107241.205001; Thu, 08 Apr 2021 12: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 1lUTcF-0003g1-My; Thu, 08 Apr 2021 12:18:31 +0000
Received: by outflank-mailman (input) for mailman id 107241;
 Thu, 08 Apr 2021 12:18:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTcE-0003fC-Jo
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:18:30 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 671d1e7e-cda6-48b3-b1d9-f225f71af49d;
 Thu, 08 Apr 2021 12:18:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 30EAFAFCC;
 Thu,  8 Apr 2021 12:18: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: 671d1e7e-cda6-48b3-b1d9-f225f71af49d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884306; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=rkX7CzUIHm8zyEM9IisY4rl2NOQycbZjijQaZgGhueY=;
	b=A3qqKzk4yj5DecWdzpWMWiGjXBkAHG2eQY9GoPQ8YZEw6TRe+qSR08w6Ug3tvkEQhsbE4x
	EzYLTROyPEv05yU8bKXTtkYiNrgU6+O1Ewny+iB4p8Xk8T9DHCE/WRpowrMHklYsWYGhei
	+tCHFYTufSnVc/TH+AzQnazB0tjlNYY=
Subject: [PATCH 04/11] x86/HVM: avoid effectively open-coding xmalloc_array()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Paul Durrant <paul@xen.org>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <f455e5ba-e786-e8d5-4a1c-b42552e17377@suse.com>
Date: Thu, 8 Apr 2021 14:18:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xmalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

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

--- a/xen/arch/x86/hvm/emulate.c
+++ b/xen/arch/x86/hvm/emulate.c
@@ -1924,7 +1924,7 @@ static int hvmemul_rep_movs(
         dgpa -= bytes - bytes_per_rep;
 
     /* Allocate temporary buffer. Fall back to slow emulation if this fails. */
-    buf = xmalloc_bytes(bytes);
+    buf = xmalloc_array(char, bytes);
     if ( buf == NULL )
         return X86EMUL_UNHANDLEABLE;
 
@@ -2037,7 +2037,7 @@ static int hvmemul_rep_stos(
         for ( ; ; )
         {
             bytes = *reps * bytes_per_rep;
-            buf = xmalloc_bytes(bytes);
+            buf = xmalloc_array(char, bytes);
             if ( buf || *reps <= 1 )
                 break;
             *reps >>= 1;



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:19:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:19:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107245.205013 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTd8-0003q3-6E; Thu, 08 Apr 2021 12:19:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107245.205013; Thu, 08 Apr 2021 12: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 1lUTd8-0003pw-14; Thu, 08 Apr 2021 12:19:26 +0000
Received: by outflank-mailman (input) for mailman id 107245;
 Thu, 08 Apr 2021 12:19:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTd6-0003oQ-GC
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:19:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c266e007-5997-4fca-af7d-9cfc84cc26d0;
 Thu, 08 Apr 2021 12:19:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CBFC6B005;
 Thu,  8 Apr 2021 12:19: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: c266e007-5997-4fca-af7d-9cfc84cc26d0
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884362; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=CDQ3ZAFyCDWafzng7hnKKPU/+/S54DwWZulXulR1ydM=;
	b=vQsXBPZTT3RHR7jNPNRXX/InSms8SVvQnJDnyqhayLkd4PSiomA1yr/n7vqHKih8rdyZkr
	jjM6gr3zpnxkD1MbvUNS6ZxqZNtHS0Zo0pckqiUvK3BddXL7EqfQEChgSe2k+pIbZWD+jr
	BPsztQ/SoIJW1femb3OISs04rfV9UHg=
Subject: [PATCH 05/11] x86/oprofile: avoid effectively open-coding
 xmalloc_array()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <029d1c22-332a-a1bf-489b-fdee70d8974e@suse.com>
Date: Thu, 8 Apr 2021 14:19:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xmalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

While at it also use XFREE() instead of open-coding it and change loop
induction variable types.

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

--- a/xen/arch/x86/oprofile/nmi_int.c
+++ b/xen/arch/x86/oprofile/nmi_int.c
@@ -142,30 +142,29 @@ static void nmi_save_registers(void * du
 
 static void free_msrs(void)
 {
-	int i;
+	unsigned int i;
+
 	for (i = 0; i < nr_cpu_ids; ++i) {
-		xfree(cpu_msrs[i].counters);
-		cpu_msrs[i].counters = NULL;
-		xfree(cpu_msrs[i].controls);
-		cpu_msrs[i].controls = NULL;
+		XFREE(cpu_msrs[i].counters);
+		XFREE(cpu_msrs[i].controls);
 	}
 }
 
 
 static int allocate_msrs(void)
 {
+	unsigned int i;
 	int success = 1;
-	size_t controls_size = sizeof(struct op_msr) * model->num_controls;
-	size_t counters_size = sizeof(struct op_msr) * model->num_counters;
 
-	int i;
 	for_each_online_cpu (i) {
-		cpu_msrs[i].counters = xmalloc_bytes(counters_size);
+		cpu_msrs[i].counters = xmalloc_array(struct op_msr,
+						     model->num_counters);
 		if (!cpu_msrs[i].counters) {
 			success = 0;
 			break;
 		}
-		cpu_msrs[i].controls = xmalloc_bytes(controls_size);
+		cpu_msrs[i].controls = xmalloc_array(struct op_msr,
+						     model->num_controls);
 		if (!cpu_msrs[i].controls) {
 			success = 0;
 			break;



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:20:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:20:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107251.205024 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTe3-0004eY-EQ; Thu, 08 Apr 2021 12:20:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107251.205024; Thu, 08 Apr 2021 12: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 1lUTe3-0004eR-BR; Thu, 08 Apr 2021 12:20:23 +0000
Received: by outflank-mailman (input) for mailman id 107251;
 Thu, 08 Apr 2021 12:20:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=A7yC=JF=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lUTe2-0004eK-9q
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:20:22 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9348f01c-e5f0-4f45-aae3-5a6da1e777fe;
 Thu, 08 Apr 2021 12:20: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: 9348f01c-e5f0-4f45-aae3-5a6da1e777fe
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617884420;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=YekTlhNkbIV15dspazgDtUk/D+z1UBkzqLsyX1bZ1XI=;
  b=Z+lqUSiCrj+amG7XppCwEUy6HQHxY/SuuF07+h4izf17wTHRUwMMQY6p
   K8csGIma3mTKoLyoV9g8Ldx5bRmW74mYcf0ogUPV1v1ORkIZA9/xSrRQ+
   74esWqZ5d0gnYXR+hVfnFpPIMz8LzK+9CDG1ZPewk7ZEkRJOgcfWPwvI1
   Q=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: e/EW5tJA/Gl+k7s7KZW9i4eAmDL26KYH/j4aehXmNVrFJhUFKCPbKRq7peEhNafKYKR0+5JNDr
 QGqRy5umcuJ80iOYn45ETbufRVyOYwxSbQ8/ueqbGlrCxXEdtebph0xR/2WvFzrl4CpLK0SLFa
 AtxZjGCVKo5N++OepJpefCs1M+AC1ZJmNqIDKJBibEqbsHCgZXSd34POnkJQce+lQGtZNk3wi3
 qMMonyV8FCusJV9yuweBDQ1hXK93V+xN1DYyaRyVi/1cWwHKI7lNtOupAj81HXHaw4p9pN56yc
 0oE=
X-SBRS: 5.2
X-MesageID: 41533695
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:igCEYaEBglL8G1vEpLqFOpHXdLJzesId70hD6mlYVQFVfsuEl8
 qngfQc0lvOhCwMXWw78OrsBICrSxrnlaJdy48XILukQU3aqHKlRbsSibfK7h/BP2nF9uBb3b
 p9aKQWMrfNJHVzkMqS2maFOvk6xt3vys6VrMP/61socg1wcaFn6G5Ce2OmO2l7XhNPC5Z8NL
 f03LslmxOadX4abtu2CxA+NoCum/TxmI/7ehlDPhY76WC15g+A0qLwEBSTw34lIlFy6IolmF
 KlryXJop+Nntv+4R/a2m/V4f1t6abc4+oGPuOgoIw4Lj3tjyyheYhuXaaT1QpF3N2H2RIRv/
 Tn5zsmIsRv+1PdF1vF3ifF6k3b/xsFr1/k1FOCjnPoraXCNUwHIvsEv611WF/9ySMbzbZB+Z
 MO5U21nd5rKCmFuyLH693BR3hR5zGJiEtnq8E/pThiS4cEAYUhy7A3zQduP7orOjn104wjGP
 kGNrCn2N9mNWmXaH3UpQBUsaWRd0V2Gh+HR34LsdCO3w5Xm2hkz1AZyNZ3pAZ5yK4A
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="41533695"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NuPU9ayLbNydNnlkt8vYlKWMF5ipmkNk0mOk9rSwoJXHLkkJFN8Y4/IDsYtm3MTWVgsYGHWnF8Nzi5xBsB1iKMtVSEr2mhTII5LaSy6L/nzKcMkLRXjNmBPoTpn+NcF58mL1eVPiV/yPpkhQ4TNhls3Xifmtpf2fE6RJ64jO1nNBokAJ5KG8U58IvMsqo6T1OhzYTqKXTRlsX2acgf1rVWcS/BHp6yaN7gMlkTBnm9QmI2sRuZs+e1qQzdzEAx6R4tJE26E7LGnfTRtfEeNdz6TNKXEo9WtiSU3ImitMU6OMoMryqH8UTNc39a2AMNf+B2B02F2Ge/2pjhQvYwuhmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YekTlhNkbIV15dspazgDtUk/D+z1UBkzqLsyX1bZ1XI=;
 b=RDlzYrPlq6q/79+UJlBWcPplb1/9R0IFuZiWJlSFVfWQQ5baPhJ0bLwsqtje47fXrLxmuS/q5oRe+NWbRB10dXqVY6B6g71N/L6z+b/bH0nnpJFY8+YhPpY/2WUBKLRE6onKu92rytfPOsLjN48vavqHgTmC64nFAazKfTzkfRkPVy1UR7YNV1+byzJ2QOIZkd+i4xstxXrrX+eiVQwxnO88QXjkZsh/AIKCBvMhNyEYwd5/pJqY+ddx5c7WJRElG1pZNO1b0mygPQvPiHWbigFhUy/CbG/ABpSk5TbOU86uFh3M7kMDEmYdPtaHLIkjGVNqObJX67EM9fVAf0u0yg==
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=YekTlhNkbIV15dspazgDtUk/D+z1UBkzqLsyX1bZ1XI=;
 b=stnDfJW+4JU1eu1gU/Rdfbfc8DZ4dAhi2zDR+3jTUYnriPV85dT8tKiJfPY1eGyDQMoBQh3du48CEX12//NeHqWvCO6qStw7cK0ltRwR1RL+rAQb7Mf7HwmGDFtMrSCRqqL3IPdu5xq1+v3hCZ6gsq+8w8qkACz3d7e2oWWAbFw=
Subject: Re: [PATCH 01/11] x86/HVM: avoid effectively open-coding
 xzalloc_flex_struct()
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <a6a27d6b-58de-1654-1f2f-8631a34a1281@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <e74fcc2c-1731-c183-0e57-deb432a2a49c@citrix.com>
Date: Thu, 8 Apr 2021 13:20:10 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <a6a27d6b-58de-1654-1f2f-8631a34a1281@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0247.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a7::18) To DM6PR03MB3627.namprd03.prod.outlook.com
 (2603:10b6:5:ab::16)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 01ce9c5d-7e1f-4d9d-ce55-08d8fa88ab27
X-MS-TrafficTypeDiagnostic: DM6PR03MB5226:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5226FB1381407C6C14B816D8BA749@DM6PR03MB5226.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4941;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: eip6egwrsihtKG1GshCP7KQtH0oKsuC9dE6ZRTBRgcHDM4O9OVZwDgj+UdpLLm7hVqnYmcuUwLQ7poyk+pl4knckG+8Ibymy1ixYn5HkmAHdH5VLXdLks89wogD1sWs5zzmsB1a/M3L2eTKSS1HrsklzcL8gxl9LrgVmDe0qr0//chUn4B5bjcK4xSsUmsi8lkjvepNK4u4bDlG3aHXj5mVIQJ0BV+n6ffKXfNsHJQxHOMWVT2WyYAUssdkceKS3g5tZjv7fFPWFKgNAHig7+3ZJWX+tw57IbBGsJVOiGeF7qHm1L9qvnCPfaedNUMUxY+JJ4F1hePhqTx+e5dOQPNsN8Ry4LR9UCJc9HbkKIQ/ymuNl9ph+yHRTOuuO9Hg9DYRD0q7ZOXKt8SHtwgW4e6rVzdIY0Fam6u4904sdkKv/sW/Erey9CJCbF933eTRqT67G39Ujnfhr6Pi6JmziHKLE7q25OJG6bYdkc7NyDKvTzbBb/IkoyXGN6wlP7txH9UD+1voXr29ZpD4P9doLC5DdJwM0K5RZHXgPWpYuFapxEGwxIpcjZQ4LdhjWwGVhqEPAeve9kDd9crCsALPIQyHRO4kqEQ3HEsHkMVqXV6M0XJs3euM/0bnUThotW1v07kVAd+QSo8x05kfXuLqO5Tn1/MO80aYos5dhUcH4mcdURq/nyPnbIvO1c+MrSIv4K9Lyhv3zFgvjxwaksd/KuYq6LNqHbpR5NIoABu54BkE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR03MB3627.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(366004)(39860400002)(376002)(136003)(31696002)(16576012)(316002)(54906003)(38100700001)(478600001)(4326008)(86362001)(66556008)(2906002)(66476007)(66946007)(36756003)(2616005)(186003)(6666004)(107886003)(6486002)(4744005)(956004)(53546011)(16526019)(31686004)(8676002)(110136005)(26005)(5660300002)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 01ce9c5d-7e1f-4d9d-ce55-08d8fa88ab27
X-MS-Exchange-CrossTenant-AuthSource: DM6PR03MB3627.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 12:20:17.0212
 (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: ocR2ZQFYbRSygMfJ4wj7z71PSV5qDLM+xG9fY14kfw2a3xaC53UfeJDdI7oTdoRfqsU1BpeSOeAv6OvJoWTdkTG6MyF3qrpTE4PQMYB/Hh8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5226
X-OriginatorOrg: citrix.com

On 08/04/2021 13:16, Jan Beulich wrote:
> Drop hvm_irq_size(), which exists for just this purpose.
>
> There is a difference in generated code: xzalloc_bytes() forces
> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
> actually don't want it.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:20:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:20:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107252.205037 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTe8-0004hh-TW; Thu, 08 Apr 2021 12:20:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107252.205037; Thu, 08 Apr 2021 12: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 1lUTe8-0004ha-QT; Thu, 08 Apr 2021 12:20:28 +0000
Received: by outflank-mailman (input) for mailman id 107252;
 Thu, 08 Apr 2021 12:20:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTe7-0004hC-Td
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:20:27 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1d3974a3-264d-4372-88fd-dc6326da25d9;
 Thu, 08 Apr 2021 12:20:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4B643B0E6;
 Thu,  8 Apr 2021 12:20: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: 1d3974a3-264d-4372-88fd-dc6326da25d9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884426; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=dQLFBbZwmFP7/XJISrFVWgSoZI+0nr2VJyf5BHmRMeA=;
	b=RQDKsL8zp4IN2ANmpnNqpG1LhduC6Z/nnT4q7+7JgHelBGhZIr6M0yByjuuC8Ph7W8mJ9V
	oPV3r7z7s+N1Q0dkGgzcX2sB1ANp69zW0VJJJ4Nr961S+nvIq2jY5IKHJhAjJO6+tw+Knh
	t3+gkgweDp2Qwj4X+28vF2CmHkiiiXo=
Subject: [PATCH 06/11] x86/IRQ: avoid over-alignment in alloc_pirq_struct()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <75885e8f-fd0a-5ac1-b194-7f8858320874@suse.com>
Date: Thu, 8 Apr 2021 14:20:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

In particular in the PV case xzalloc_bytes() forcing SMP_CACHE_BYTES
alignment is counterproductive, as the allocation size there is only 40
bytes.

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

--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -1313,9 +1313,12 @@ void cleanup_domain_irq_mapping(struct d
 
 struct pirq *alloc_pirq_struct(struct domain *d)
 {
-    size_t sz = is_hvm_domain(d) ? sizeof(struct pirq) :
-                                   offsetof(struct pirq, arch.hvm);
-    struct pirq *pirq = xzalloc_bytes(sz);
+    union pirq_pv {
+        char space[offsetof(struct pirq, arch.hvm)];
+        void *align;
+    };
+    struct pirq *pirq = is_hvm_domain(d) ? xzalloc(struct pirq)
+                                         : (void *)xzalloc(union pirq_pv);
 
     if ( pirq )
     {



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:20:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:20:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107260.205048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTeW-0004qp-7i; Thu, 08 Apr 2021 12:20:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107260.205048; Thu, 08 Apr 2021 12:20:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTeW-0004qh-48; Thu, 08 Apr 2021 12:20:52 +0000
Received: by outflank-mailman (input) for mailman id 107260;
 Thu, 08 Apr 2021 12:20:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTeU-0004qS-U4
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:20:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id feb7a45f-91cb-4bde-abe5-e9a11b935368;
 Thu, 08 Apr 2021 12:20:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0FB44B090;
 Thu,  8 Apr 2021 12:20: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: feb7a45f-91cb-4bde-abe5-e9a11b935368
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884449; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=rlkZ2gHfa7wMnDFvJ4VBlthgmsqLlVSVbOIY+whHTZo=;
	b=BhdG0F4k+a1SrcQc+iLOYzWIB53zUhsgnWZVWNX85ywHaGPxfHby4HFyTmGSZpBKQ1XyqN
	emDXLzzH6vmysdgphmEjjAw5j9I0pNzB9bvXbCiZxjsvjFHXxbu2SPdJNZ0Mz/XkqmzTVP
	UEJA/T9/sDpwxrb0Ob/A1aB0oR9t4n4=
Subject: [PATCH 07/11] EFI/runtime: avoid effectively open-coding
 xmalloc_array()
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <154a423e-ede1-b799-c616-a0022b815606@suse.com>
Date: Thu, 8 Apr 2021 14:20:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xmalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

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

--- a/xen/common/efi/runtime.c
+++ b/xen/common/efi/runtime.c
@@ -486,7 +486,7 @@ int efi_runtime_call(struct xenpf_efi_ru
         size = op->u.get_variable.size;
         if ( size )
         {
-            data = xmalloc_bytes(size);
+            data = xmalloc_array(unsigned char, size);
             if ( !data )
             {
                 xfree(name);
@@ -536,7 +536,7 @@ int efi_runtime_call(struct xenpf_efi_ru
             return -EIO;
         }
 
-        data = xmalloc_bytes(op->u.set_variable.size);
+        data = xmalloc_array(unsigned char, op->u.set_variable.size);
         if ( !data )
             rc = -ENOMEM;
         else if ( copy_from_guest(data, op->u.set_variable.data,
@@ -571,7 +571,7 @@ int efi_runtime_call(struct xenpf_efi_ru
             return -EINVAL;
 
         size = op->u.get_next_variable_name.size;
-        name.raw = xzalloc_bytes(size);
+        name.raw = xzalloc_array(unsigned char, size);
         if ( !name.raw )
             return -ENOMEM;
         if ( copy_from_guest(name.raw, op->u.get_next_variable_name.name,



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:21:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:21:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107266.205061 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTet-0004zy-HC; Thu, 08 Apr 2021 12:21:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107266.205061; Thu, 08 Apr 2021 12: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 1lUTet-0004zr-DT; Thu, 08 Apr 2021 12:21:15 +0000
Received: by outflank-mailman (input) for mailman id 107266;
 Thu, 08 Apr 2021 12:21:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTes-0004zj-Vc
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:21:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 76f69303-e529-4e9f-be2a-5819f072873d;
 Thu, 08 Apr 2021 12:21:14 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 783CCB005;
 Thu,  8 Apr 2021 12:21: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: 76f69303-e529-4e9f-be2a-5819f072873d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884473; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=95K+5XUUtlkYqbXmQ6a5fXeN2FQDprpFs5vXWIcZVZg=;
	b=S9waDlL3HqvdRuOGtWJksVXo0t/AWmRdrboRuIw4xSAqDnTOnG4ob4TDErr4RliklvWgG6
	Yh8WAQ13IqaSkqp3oq9jBS/nvNHXRAkAnud4v2DXIrkCfaZibMILpLSFjF/k/Xbyk8q+wF
	o03tS4X5ymR8WENgliRv5EGkTKWLmho=
Subject: [PATCH 08/11] hypfs: avoid effectively open-coding xzalloc_array()
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>, Ian Jackson <iwj@xenproject.org>,
 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>, Juergen Gross <jgross@suse.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <eecf9929-30ee-424d-a371-1462c04cd382@suse.com>
Date: Thu, 8 Apr 2021 14:21:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xzalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

To avoid the need to add a cast, do away with the only forward-declared
struct hypfs_dyndata.

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

--- a/xen/common/hypfs.c
+++ b/xen/common/hypfs.c
@@ -72,7 +72,7 @@ enum hypfs_lock_state {
     hypfs_write_locked
 };
 static DEFINE_PER_CPU(enum hypfs_lock_state, hypfs_locked);
-static DEFINE_PER_CPU(struct hypfs_dyndata *, hypfs_dyndata);
+static DEFINE_PER_CPU(void *, hypfs_dyndata);
 
 static DEFINE_PER_CPU(const struct hypfs_entry *, hypfs_last_node_entered);
 
@@ -160,19 +160,19 @@ static void node_exit_all(void)
 void *hypfs_alloc_dyndata(unsigned long size)
 {
     unsigned int cpu = smp_processor_id();
-    struct hypfs_dyndata **dyndata = &per_cpu(hypfs_dyndata, cpu);
+    void **dyndata = &per_cpu(hypfs_dyndata, cpu);
 
     ASSERT(per_cpu(hypfs_locked, cpu) != hypfs_unlocked);
     ASSERT(*dyndata == NULL);
 
-    *dyndata = xzalloc_bytes(size);
+    *dyndata = xzalloc_array(unsigned char, size);
 
     return *dyndata;
 }
 
 void *hypfs_get_dyndata(void)
 {
-    struct hypfs_dyndata *dyndata = this_cpu(hypfs_dyndata);
+    void *dyndata = this_cpu(hypfs_dyndata);
 
     ASSERT(dyndata);
 
@@ -181,7 +181,7 @@ void *hypfs_get_dyndata(void)
 
 void hypfs_free_dyndata(void)
 {
-    struct hypfs_dyndata **dyndata = &this_cpu(hypfs_dyndata);
+    void **dyndata = &this_cpu(hypfs_dyndata);
 
     XFREE(*dyndata);
 }



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:21:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:21:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107270.205073 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTfa-0005BI-Rz; Thu, 08 Apr 2021 12:21:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107270.205073; Thu, 08 Apr 2021 12: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 1lUTfa-0005BA-Np; Thu, 08 Apr 2021 12:21:58 +0000
Received: by outflank-mailman (input) for mailman id 107270;
 Thu, 08 Apr 2021 12:21:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTfa-0005B4-0O
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:21:58 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6aeaeecf-1243-49ad-a7dc-c662847675c7;
 Thu, 08 Apr 2021 12:21:57 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 85B6CB11B;
 Thu,  8 Apr 2021 12:21: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: 6aeaeecf-1243-49ad-a7dc-c662847675c7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884516; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=LAS4slsq4qONsaHE0lyME1eabgS+LFpyRRMDvBlV5sc=;
	b=ZrFnoZpjK9Y19sBBy9uNVmzq4/dp0pOy9jaf3xnlZVefPiEcKfD2Qo9n+Gno76tar54dwW
	u1qS/04eB3ERc5WHo0iigppR1yQNUol2Eb85l6RKt32yLdonMupcF6BawOrle6hhSvMLZz
	mfGCVKdyxHYKdfTIZSRjwbs5X8uky3c=
Subject: [PATCH 09/11] kexec: avoid effectively open-coding
 xzalloc_flex_struct()
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>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <4ea9c4a3-74c0-1722-fa5d-3930be99ef4a@suse.com>
Date: Thu, 8 Apr 2021 14:21:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xzalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

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

--- a/xen/common/kexec.c
+++ b/xen/common/kexec.c
@@ -463,7 +463,10 @@ static void * alloc_from_crash_heap(cons
 /* Allocate a crash note buffer for a newly onlined cpu. */
 static int kexec_init_cpu_notes(const unsigned long cpu)
 {
-    Elf_Note * note = NULL;
+    struct elf_notes {
+        Elf_Note first;
+        unsigned char more[];
+    } *notes = NULL;
     int ret = 0;
     int nr_bytes = 0;
 
@@ -477,7 +480,8 @@ static int kexec_init_cpu_notes(const un
 
     /* If we dont care about the position of allocation, malloc. */
     if ( low_crashinfo_mode == LOW_CRASHINFO_NONE )
-        note = xzalloc_bytes(nr_bytes);
+        notes = xzalloc_flex_struct(struct elf_notes, more,
+                                    nr_bytes - sizeof(notes->first));
 
     /* Protect the write into crash_notes[] with a spinlock, as this function
      * is on a hotplug path and a hypercall path. */
@@ -490,26 +494,28 @@ static int kexec_init_cpu_notes(const un
         spin_unlock(&crash_notes_lock);
         /* Always return ok, because whether we successfully allocated or not,
          * another CPU has successfully allocated. */
-        xfree(note);
+        xfree(notes);
     }
     else
     {
         /* If we care about memory possition, alloc from the crash heap,
          * also protected by the crash_notes_lock. */
         if ( low_crashinfo_mode > LOW_CRASHINFO_NONE )
-            note = alloc_from_crash_heap(nr_bytes);
+            notes = alloc_from_crash_heap(nr_bytes);
 
-        crash_notes[cpu].start = note;
+        crash_notes[cpu].start = &notes->first;
         crash_notes[cpu].size = nr_bytes;
         spin_unlock(&crash_notes_lock);
 
         /* If the allocation failed, and another CPU did not beat us, give
          * up with ENOMEM. */
-        if ( ! note )
+        if ( ! notes )
             ret = -ENOMEM;
         /* else all is good so lets set up the notes. */
         else
         {
+            Elf_Note *note = &notes->first;
+
             /* Set up CORE note. */
             setup_note(note, "CORE", NT_PRSTATUS, sizeof(ELF_Prstatus));
             note = ELFNOTE_NEXT(note);



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:22:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:22:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107273.205085 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTfw-0005Hb-3w; Thu, 08 Apr 2021 12:22:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107273.205085; Thu, 08 Apr 2021 12:22: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 1lUTfw-0005HU-08; Thu, 08 Apr 2021 12:22:20 +0000
Received: by outflank-mailman (input) for mailman id 107273;
 Thu, 08 Apr 2021 12:22:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTfu-0005HE-H6
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:22:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bf8f449f-9a86-476a-9037-856b12ccccfc;
 Thu, 08 Apr 2021 12:22:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2243BB005;
 Thu,  8 Apr 2021 12:22: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: bf8f449f-9a86-476a-9037-856b12ccccfc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884537; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=yw8CWbx2pQJIEiz3GQW/HJc3UcPF7hTPHrhYjaL9Afc=;
	b=fbV0ORejrfI1vC5N37glstyj2ieCvn/yvOHuDv1Xs0lZN1N00myO81LBoMF/qK8VwJgWoR
	dgkQ3MlPeCrUPgN+hB+ca1Ffktw4CI0tZXFfHPurVvRrbKCRbgx+PCNtOAjn6026/4ZWCg
	BxTCN3wWIcg1YJsXoj0eO/55k9U1FjU=
Subject: [PATCH 10/11] video/lfb: avoid effectively open-coding
 xzalloc_array()
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <e08e0ccd-503b-f2f1-0391-763172060643@suse.com>
Date: Thu, 8 Apr 2021 14:22:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xzalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

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

--- a/xen/drivers/video/lfb.c
+++ b/xen/drivers/video/lfb.c
@@ -147,8 +147,9 @@ int __init lfb_init(struct lfb_prop *lfb
 {
     lfb.lfbp = *lfbp;
 
-    lfb.lbuf = xmalloc_bytes(lfb.lfbp.bytes_per_line);
-    lfb.text_buf = xzalloc_bytes(lfb.lfbp.text_columns * lfb.lfbp.text_rows);
+    lfb.lbuf = xmalloc_array(unsigned char, lfb.lfbp.bytes_per_line);
+    lfb.text_buf = xzalloc_array(unsigned char,
+                                 lfb.lfbp.text_columns * lfb.lfbp.text_rows);
     lfb.line_len = xzalloc_array(unsigned int, lfb.lfbp.text_columns);
 
     if ( !lfb.lbuf || !lfb.text_buf || !lfb.line_len )



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:23:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:23:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107281.205096 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTgt-0005Qi-EX; Thu, 08 Apr 2021 12:23:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107281.205096; Thu, 08 Apr 2021 12:23: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 1lUTgt-0005Qb-BU; Thu, 08 Apr 2021 12:23:19 +0000
Received: by outflank-mailman (input) for mailman id 107281;
 Thu, 08 Apr 2021 12:23:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTgs-0005QT-3c
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:23:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 66e728ea-9180-45a9-85a9-512230029e86;
 Thu, 08 Apr 2021 12:23:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7EAB4B090;
 Thu,  8 Apr 2021 12:23: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: 66e728ea-9180-45a9-85a9-512230029e86
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884596; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=JP7NYsf4fopqSVgYCDwHxKC3KJzvwiy4UDKP6yZkCFM=;
	b=laMkxHER7aSZu5M4s+gxNOdm+jcWdCLLVomCWwYt1NdHxvK6yRNallue1mMBvk3ePmgZ/s
	R4bV6pdtiW9iWN8d44dqOpx1L2HNAvdRV6EfXVopbCy3BUw2Qt3nprT3UEV2kf6R5cBt2x
	Orhi2dsrZGsJUITGPFWVzSE726abFvU=
Subject: [PATCH 11/11] Arm/optee: don't open-code xzalloc_flex_struct()
From: Jan Beulich <jbeulich@suse.com>
To: "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>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Message-ID: <aad23304-c727-2921-59fe-ab3763f5da03@suse.com>
Date: Thu, 8 Apr 2021 14:23:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xzalloc_bytes() forces
SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
actually don't want it.

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

--- a/xen/arch/arm/tee/optee.c
+++ b/xen/arch/arm/tee/optee.c
@@ -529,8 +529,7 @@ static struct optee_shm_buf *allocate_op
     while ( unlikely(old != atomic_cmpxchg(&ctx->optee_shm_buf_pages,
                                            old, new)) );
 
-    optee_shm_buf = xzalloc_bytes(sizeof(struct optee_shm_buf) +
-                                  pages_cnt * sizeof(struct page *));
+    optee_shm_buf = xzalloc_flex_struct(struct optee_shm_buf, pages, pages_cnt);
     if ( !optee_shm_buf )
     {
         err_code = -ENOMEM;



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:26:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:26:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107289.205109 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTjV-0005bz-Tq; Thu, 08 Apr 2021 12:26:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107289.205109; Thu, 08 Apr 2021 12: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 1lUTjV-0005bs-QV; Thu, 08 Apr 2021 12:26:01 +0000
Received: by outflank-mailman (input) for mailman id 107289;
 Thu, 08 Apr 2021 12:26:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=A7yC=JF=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lUTjU-0005bQ-9a
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:26:00 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id aefcbe47-8b33-4a2a-ad4a-34345222beac;
 Thu, 08 Apr 2021 12:25: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: aefcbe47-8b33-4a2a-ad4a-34345222beac
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617884759;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Yr9vQzIO6ldStPEebUzy6G1W5rriQJt6tpwHJQHGt8s=;
  b=F1i/Sttve+YIpEZ7/2ySB980I8ZK0vhrgrHIw3Q07T3JfV419sWyZUbq
   DiDlnOsj6D5OuoBIRrrTrQletFo1UjKhE9CV4UuYD3v9yTPYw086loO0J
   dNS92qEqcSlzc2Ww6h2NmmBMHEdNT+G8v0Qtt1i/ATNcV9pGQDHpJCazY
   s=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: nXIkj8KdYND5sA9n7TdNPtG+NKl8VcH7ZeQULK2uR3/chCe80RVpS30rHIWhTcFShNW6qKMX6D
 tTKpeRv0NTSomeJby86CPpywQrL2FAxvnyV3dsnmfttIomx5L4ONSsnKDHf2/44cemM+6wHzkR
 XUP3hrzR3eX+o9U7LqH+JQ25Fz/pYym0o4DgkOeEU56e/2RFvGh6g9K0zXnwvcn7f0Wc2uRM41
 Hs5acvQJZhufTR/FFyYM1MxMGAnaR1abhIjg+/cSv34hIXGWS63uXlec3mKIpPIlweWWf8kSY+
 B30=
X-SBRS: 5.2
X-MesageID: 42622967
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:7EPNoat5xizjPoKI0rqk01/n7skC2YYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOj7U5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qz6Y
 5JSII7MtH5CDFB4frSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjztRICzzKDwQeCBtA50lGJ
 2Aou9OoDS9cXoaB/7LeEUtde7FutHNidbaehYAHREq802jijmv5b78HXGjr2gjehlIxqov9n
 WArhzh6syYwo2G4zL/90uW1ZRZn9P91sBObfbstuE5Iijh4zzYH7hJdKaFuFkO0ZiSwXYs1O
 LBuhIxe/l0gkmhA12dhTvI903e3C0163nkoGXo80fLhcDiXjo1B45gqOtiA2PkwnEttt19z6
 5Htljx3/E8YGKi7UaNk+TgbB1kmlG5pnAvi4co/hpieLATdaNLqsgn9F5Vea1wbx7S0pwtE+
 VlEajnlZNrWG6dBkqp2lVH/MahRTAaEBuAXyE5y7ao+gkTtnV4w0wE/dcYj3cN+bksIqM0l9
 jsA+BGkqpDQdQRar84LOAdQdGvAmiIeh7UNnmOSG6XWp0vCjbokdra8b817OaldNghy4Yzoo
 3IVBd9uXQpc0zjJMWS1PRwg1HwaVT4eQ6o5tBV5pB/tLG5bqHsKze/RFcnlNbli+kDA+XAMs
 zDeq5+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49Rhanvt/LEIv3rebWGcyjZ4bFIHIBYCfSE3
 EDVD/8KIFr9UawQEL1hxDXRjfDYUr60ZVsELXL3uQaxYQXX7c89jQ9uBCc3IWmODdCuqs5cA
 9VO7X8iJ62omGw4CLp4gxSS11gJ3cQxI+lf2JBpAcMPU+xW60Eoc+jdWdb22bCAhd+SsjRAT
 NOvlgfw9PwE7WggQQZT/63OGOTiHUe4FiQSY0Hp6GF7cD5PrQ1E4ghQ640MQnQDRR6lUJLpQ
 54GU85b36aMgmrpbSujZQSCu2aXcJ7mh2XLcldrm+ak16dq8EpTn4yRCWvTsaTvAYrS1Nv9x
 hM2p5apIDFtSekKGM5juh9GkZLcn6rDLVPCxnAWJ9ZgYnxeAZ7TX6DgBuTjx1bQBuyy2wiwk
 jaaQGEc/DCBVRQ/lRVyLzj/l9PemKBRE5ocXxhvYphFWPJh2Zr3YawF9+O+lrUTmFH7vAWMT
 nDbzdXGA9oytyt/DO+mTqJFxwdt9gTF92YKI5mX6DY23urJoHNqLoPGOVM+o15cPr0tPUQbO
 6ZcwiJDT/xBu8zwTaJrnI9NCQckgh9rdrYnDneqESo1n82BvTfZGl8T7YAOteG8izKQe2L3J
 gRt6N8gcKAdkHKLviIxqHcY2Qddlf9oWuqQ/oprp4Rl6Qor7d3F4TaVzyN9Hwv5mRJEO7E0G
 clBIJ86/T9H6UqWeo4USdQ5EAom9SCN1FDiH29PsYOOXUWy0bGNNaI6YfSobUhAke9tBL9UG
 PvhBF1zrPgZW+/zrYUBKI7HHROZGU94Hpk+vmed4e4MnTiS8hzuH67OGS6arlTVeysHqgRtA
 9z57iz7qOqXhu9/ADbpj1gJK1St06hXMOpGQqJXcpF6cazN1jJoqyk5qeI/XjKYAr+T0QTno
 tec0MMKuxFlzk5lYUylhGIdZafmDNvr3JupRd9llDs3YC64GDUWWF+WDep86l+bH10KXiHjc
 PM7O6C8m/yiQI1gqX+KA==
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="42622967"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=E+IIhNh3SX+j+RDQ6KxLHzGDHCIpAoG0N+FfGA6xGr8ZUV02C783xJO4bUN4B1OajUpKAorLnKCCi5TcN/JauEH0UuybVTH1w+eyvpDngu0syEfuo6KRavg3pXfSpl4Y7RMBVw4aGvU4dWL4tpHfEZfxQ7tpb9sZttuLOBdUhXoiQE03gXuwPiPvS9425O3ejFmq4uxDT936ROWOz6jkwxBok34qY9BoGKGyctE36GGCw8k7BJ+y8dFToh7urzBSaIl0IbjEspk/Lvebk+EnWMSIE7zWkE04cgQ5sFGpuMF8glKkss2o3fu4LJQm/luMI2o2TiQgmZjOg1A8aBAFDQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Gu2WN9nGdMp7kCNhADIYEuQCY6LUzH07WnhwEhOWnBk=;
 b=iHFFMxaZPqEEWEEBkYA0evQs0GwB/ykdPMq+OPwObVgx8FFDJC1ksvXN3343g+1xUGB5fxtWiFaLyQnNK7hWP4l5OC7SX7I/8mTLP7vjIiCbFDgCPdqXZ+D2e2sWKTRit6fuvPkt9Y6Bt7OWM9sZxuz5RjD1FsiHJ2fuu+i7K9G68E4hHD6w/AcHrEUfZAD5gmKvDcobY5XOOK6I3dollousL1dX0ENdIXQ+sno2PjnBB+xdEZv2V6zaRm4zHSZ4qUn71HhNxwgJrzRo3ahDmqRz/08cAv/nSAhQLnox/Ts6UgyqYgQrNC1j29o0Zkm5PA9EwUYzpwqQpcopEjPpxA==
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=Gu2WN9nGdMp7kCNhADIYEuQCY6LUzH07WnhwEhOWnBk=;
 b=CJLvrjf6OIG0pY/ZLrJpn42uAGPTnPxhlg3ufLLlxJrbpa8lowkQZOjlkwpwoJNoTbFf/GoJTvMRGMi7E4dW6/fKBa7P6qqWQp1m9zvpuPuR5Jdi3OMxgev4DSUna11PD7cGlHDryA5kds3itWXquPF414QTWFAdBKWjdwnplG4=
Subject: Re: [PATCH 02/11] x86/vPMU: avoid effectively open-coding
 xzalloc_flex_struct()
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Boris Ostrovsky
	<boris.ostrovsky@oracle.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <ec03cef8-a883-fd68-a062-c243d782394c@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <ededfb52-6dc6-6c5d-1684-d6fe0e14eb74@citrix.com>
Date: Thu, 8 Apr 2021 13:25:51 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <ec03cef8-a883-fd68-a062-c243d782394c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0336.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18c::17) To DM6PR03MB3627.namprd03.prod.outlook.com
 (2603:10b6:5:ab::16)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: cb467065-3899-4cd0-8ee3-08d8fa89755a
X-MS-TrafficTypeDiagnostic: DM6PR03MB5196:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5196CFE1A4C23813C815855DBA749@DM6PR03MB5196.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6108;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 8bvDdNYV1eUJIX+XQG+pieuKvNkvf3/tDQWIZxLaV/CEmLDN4xk96MjHoDxtEoPz0OoJZRfnpaH23BHq9flgSQQNVFWlXwqUUypXIKdLya3nVTLVm0zTkg8XqJy6GvhIPjH3SUwcStQv6VxZjxBz4z3wYuFOfJ0tIl47hQS2ukg+AI+AshThM4RqzJBT2INatJ65fzfmNZoY+AfAIP03NyPGtyGHurVINMIteGosYpkQqdDlsiV39VVHvrJdfpq7Ol290Qc6PWB4CHH12/JVH9T1elsdN1uN2/KkTyerXPeVMw5OmMFwhaWLBiYERF96xAnpk6jFz0RFw/Iwhk7zknuH71CdNebF/Do5Sqpt2Ql0pBs4flJO7vVNWTSElHo21QwrDWbkVXUiNqy3UTzi9MQcG97Vtg1DR8T70cQDKPdQVFPEMm9tVTDQDQab6Vb377vOlT44wIIaP/+KmszYc7lkTDnfSEcEsNUrCQwSHFUmfYlwu6KOnxJwyhl1dczydUqFDRRWH2WCLHMYcsYGcmAZvnT2g7/HqZA8OT+VHgoWEfoPBrKDZKY/y3d7zN17F3upSuY38VCh4dF62Ja6khakYcQpkEyhKiUUYNxn8eKK0uRy67zFdVXmVHmWi71JziHbS1o/8mCaa+BdcK1YZDWQ7WD9CrfDOEIYwf4JvBKdv9MfQzAH7MuRwIO1JhHf45df4IAzC22LFjyAAI82bappfu1wTIdCT9pMOit5Nsc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR03MB3627.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(376002)(346002)(39860400002)(136003)(16526019)(478600001)(54906003)(5660300002)(110136005)(86362001)(2616005)(186003)(53546011)(956004)(26005)(6666004)(6486002)(66946007)(316002)(31696002)(16576012)(8676002)(4326008)(36756003)(2906002)(66476007)(66556008)(31686004)(38100700001)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: cb467065-3899-4cd0-8ee3-08d8fa89755a
X-MS-Exchange-CrossTenant-AuthSource: DM6PR03MB3627.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 12:25:56.0217
 (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: HKt1jV+fyodpdNV8HrzhG2QEuw8YKyNzMg8PWR5OT2vUImH5+JPhagLUe0A6Nq+VTdSqsehHEJfiDnRjy/PvWwpxuLO+f5tn74ptsuoJli4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5196
X-OriginatorOrg: citrix.com

On 08/04/2021 13:17, Jan Beulich wrote:
> There is a difference in generated code: xzalloc_bytes() forces
> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
> actually don't want it.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

>
> --- a/xen/arch/x86/cpu/vpmu_intel.c
> +++ b/xen/arch/x86/cpu/vpmu_intel.c
> @@ -461,10 +461,10 @@ static int core2_vpmu_alloc_resource(str
>              goto out_err;
>      }
>  
> -    core2_vpmu_cxt = xzalloc_bytes(sizeof(*core2_vpmu_cxt) +
> -                                   sizeof(uint64_t) * fixed_pmc_cnt +
> -                                   sizeof(struct xen_pmu_cntr_pair) *
> -                                   arch_pmc_cnt);
> +    core2_vpmu_cxt = xzalloc_flex_struct(struct xen_pmu_intel_ctxt, regs,
> +                                         fixed_pmc_cnt + arch_pmc_cnt *
> +                                         (sizeof(struct xen_pmu_cntr_pair) /
> +                                          sizeof(*core2_vpmu_cxt->regs)));
>      p = xzalloc(uint64_t);

However, this is very wtf, and clearly wants reworking.  I'll see if I
can find some time, unless anyone else beats me to it.

~Andrew

>      if ( !core2_vpmu_cxt || !p )
>          goto out_err;
>



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:30:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:30:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107299.205120 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTnK-0005n0-K9; Thu, 08 Apr 2021 12:29:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107299.205120; Thu, 08 Apr 2021 12: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 1lUTnK-0005mt-HE; Thu, 08 Apr 2021 12:29:58 +0000
Received: by outflank-mailman (input) for mailman id 107299;
 Thu, 08 Apr 2021 12:29:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUTnI-0005mo-VB
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:29:56 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 178b3c63-22d6-4a6a-937e-16091006bdfa;
 Thu, 08 Apr 2021 12:29:56 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7871DB11B;
 Thu,  8 Apr 2021 12:29: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: 178b3c63-22d6-4a6a-937e-16091006bdfa
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617884995; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=YjSH2fpMc5hZ0rfU4D5+PvBOyDoCyUmQcgv8uI1jvBg=;
	b=LSPbTu4MyD2WH9lSthnXrY4NBkyi7gabPeNh+AJ3SD++dcbdBZ97AMGmA/3UBj28NQ2TMj
	NAUeCGTaRefF1KkMIfxxxDjSon5dLmpYufQZRYAySAST1b36scTD8c6q6NDkwXMciBAdXD
	cK/HxRnghw39gPnTI+pl802j8nrzKF8=
Subject: Re: [PATCH 02/11] x86/vPMU: avoid effectively open-coding
 xzalloc_flex_struct()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <ec03cef8-a883-fd68-a062-c243d782394c@suse.com>
 <ededfb52-6dc6-6c5d-1684-d6fe0e14eb74@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0621335d-684c-223b-deec-a2ee028d991d@suse.com>
Date: Thu, 8 Apr 2021 14:29:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <ededfb52-6dc6-6c5d-1684-d6fe0e14eb74@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 08.04.2021 14:25, Andrew Cooper wrote:
> On 08/04/2021 13:17, Jan Beulich wrote:
>> There is a difference in generated code: xzalloc_bytes() forces
>> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
>> actually don't want it.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Thanks.

>> --- a/xen/arch/x86/cpu/vpmu_intel.c
>> +++ b/xen/arch/x86/cpu/vpmu_intel.c
>> @@ -461,10 +461,10 @@ static int core2_vpmu_alloc_resource(str
>>              goto out_err;
>>      }
>>  
>> -    core2_vpmu_cxt = xzalloc_bytes(sizeof(*core2_vpmu_cxt) +
>> -                                   sizeof(uint64_t) * fixed_pmc_cnt +
>> -                                   sizeof(struct xen_pmu_cntr_pair) *
>> -                                   arch_pmc_cnt);
>> +    core2_vpmu_cxt = xzalloc_flex_struct(struct xen_pmu_intel_ctxt, regs,
>> +                                         fixed_pmc_cnt + arch_pmc_cnt *
>> +                                         (sizeof(struct xen_pmu_cntr_pair) /
>> +                                          sizeof(*core2_vpmu_cxt->regs)));
>>      p = xzalloc(uint64_t);
> 
> However, this is very wtf, and clearly wants reworking.  I'll see if I
> can find some time, unless anyone else beats me to it.

I thought so too while seeing this, but it's quite a bit more of a
rework than I felt I'd like to tackle right away.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:41:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:41:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107304.205133 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUTyd-0007Vb-OF; Thu, 08 Apr 2021 12:41:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107304.205133; Thu, 08 Apr 2021 12: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 1lUTyd-0007VU-KQ; Thu, 08 Apr 2021 12:41:39 +0000
Received: by outflank-mailman (input) for mailman id 107304;
 Thu, 08 Apr 2021 12:41:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wgsT=JF=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lUTyc-0007VP-LB
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:41:38 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5c438e1e-39d7-4b1f-aab8-597a9ee522ad;
 Thu, 08 Apr 2021 12:41: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: 5c438e1e-39d7-4b1f-aab8-597a9ee522ad
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617885697;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=ryIe4pgpMmnJqJcYeYmt87EIqCxsBLYZ3RceGTTqfhU=;
  b=JkQ3eijc2eegGmLeB0kxpN60soQ0Icjkg5zcBNZmVKX4YB9QZuPnwkpR
   mXyUW+3lbZJqBWjLMMx1gvREfTPXdDT6Hj03TPJVZJRa8Cf90fW+sZWQl
   cnJHhFloTDoJDk686IhZ/XPETG5u6bkhWriKUkdz4A8oZIJWQMWtL6rV5
   s=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: tgTyZo0bmUY2npILjJwtJISM5FVgkhyln5zzHaoiLfgU+LWWndisKe+c+t0F3s5G6C+4rPV2Z3
 ZWbpx2/6Mv4Mg6VcoaRZSa5cv6hQPSFWSzgS9fSfyjAKW/qExGlP5uwn+TouMU2P6tmIq6wocX
 1cdq77NlKObSot8RnwbNQRj+zKBQjBBhUcxVsbfkTPzqGhkY/90UapXx6EXEgxlx6C8EMd0Ygu
 7//RFjeo+Sq+5j81+Hj1q5Uww827mKu+hq0SSBGDmQOnOKiTy0NrG0UdarbdJdLpvMlP4ZpzOU
 8/c=
X-SBRS: 5.2
X-MesageID: 41159486
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:7RhmA6/DzSF4mxbq6Vhuk+Ejdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnb8oN45pRUAKe6UGDdyQyVBaxBza+n+T3vHCXi6vVQvJ
 0LT4FSAMD9ZGIUse/U+w+9euxP/PCm9+SSif7a3zNRS2hRGsJdxiNYLireLUFsXglBAvMCZf
 6hz+5KvSCpd3hSTunTPBk4dtPOrdHKi57qCCRub3IawTKDgj+y5LnxHwLw5GZ9bxp1zao/6m
 +AqgTl58yY2M2T8APW1GPY8v1t6b7c4+ZEbfbstuElbg/CpyztT4RnVr2EslkO0Z2SwWdvqv
 bgiVMNO8xy7lnYY226pwD8sjOQrwoG2jvZ5nKzxVflvMzlVBI2YvAx+75xQ1/ixGcL+PF6za
 5R0GqSu/NsfGL9tRW43ffkfVVOtCOP0BwfuN9WtVNze88iTYUUiool8EZcAP47bVjHwbFiKs
 ZCJoXh/vpMGGnqFkzxjy1U7/GHeG88JRuCSlhqgL3p7xFm2Ep0yEYV36Uk7w893aN4T5FF4t
 LNObhzmIdPSdcLbbl8CP1pe7rNNlDw
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="41159486"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=B4HtEJreRJ1zEoRgtXRoZxpULV3nV6J6gurLfHBIef6jv1meENEjMF6/jLaFHGAia3y8HncFfy8aO10r1no0ocgq9PsTwLqNfSlzg+uVyTzUuzlLl+DwaSBWkImLslS2fVZq/yHaW92Azi/uX5oOGadnB8AClJo5g4PbOeU3Ab+j65sMyHiGj+cPXXU8G0rZRqKTK0G3sk2h4xEQdKT/GTIsaWrlBqFAdvSIPvdLgBLYO6zxi8ALbg8skXvHzzaPvFVyxnOfkVehg6IVZpSKrHi0JrUuyGz4JTsSbEnrRNSw+9Bx6FOUEHeQ3ZzUyygxk9jY1FwM9Yk9BLGQ0sUQeA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=If07qClRzfX0OUuucXHsjLGpnpVLjYgZmOcpmshGLqU=;
 b=eQBv1T9Xu3F3zFX9r7S8wxcKmJAcaN3PdHVoSKP7y6vVEBJZo/xI56PKhwJl6KKVc9I/N30sGghSC6GEg0ryLhYN8wwBySpHQIG1aG3ccUoqc22Qn3UytUXJ3qJUQ0FsPf0Pz04F6W14aLqC0Gm0aBKrjF0MskBPqjlrK8Uu59/QU5J0pvdSZsCFcUgT/SZz/2jGTrsNQy0pvmytB1h+L7OZNI9bYxRRJgk/+jGyEjjc6yK3RjAlFHUbJ+AbT6ykODHYT+rVsDWtu+wl8Vjv7uEL5JGAenOY3ONTYDuBkEg1MCIWrmks1M9+pS0WFMPSFXG8wmO0YgVRGEKYiWqyIQ==
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=If07qClRzfX0OUuucXHsjLGpnpVLjYgZmOcpmshGLqU=;
 b=G7+8gms9lYouS4rPQFf2mQuwFUBUL6TwDxJZQ1vDfmQvsvNn+CbNt5VfSjtMM5KQ8flav1TGcLauu5iMTy/ihOV/24HwAPGqPQIqjE9ylFzseaeVV+ShxR7bar5XQ3XM2jb0zydpqj3B2cjWHcRfDi/F5PryoTho3iiV2NMrhkw=
Subject: Re: [PATCH v3] x86/intel: insert Ice Lake-X (server) and Ice Lake-D
 model numbers
To: Andrew Cooper <andrew.cooper3@citrix.com>,
	<xen-devel@lists.xenproject.org>
CC: <jbeulich@suse.com>, <roger.pau@citrix.com>, <wl@xen.org>,
	<jun.nakajima@intel.com>, <kevin.tian@intel.com>
References: <1608755520-1277-1-git-send-email-igor.druzhinin@citrix.com>
 <2da9c816-fbca-d486-b602-a31e6bb97e38@citrix.com>
From: Igor Druzhinin <igor.druzhinin@citrix.com>
Message-ID: <ac4adc10-4c4c-85c0-389e-fd6516810cf3@citrix.com>
Date: Thu, 8 Apr 2021 13:41:27 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
In-Reply-To: <2da9c816-fbca-d486-b602-a31e6bb97e38@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0110.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:192::7) To BN3PR03MB2401.namprd03.prod.outlook.com
 (2a01:111:e400:7bbc::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5f97848c-3f0d-461f-e411-08d8fa8ba3d0
X-MS-TrafficTypeDiagnostic: BN9PR03MB5977:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN9PR03MB59772DAB7CEC8FF81C080705E4749@BN9PR03MB5977.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: rgl+B40hc8vYsUOr99npYR6T/Or8VBtxU+BKJn5qxmfNX/ofRM2cyeLUzofhSN2EF14+cEQKq+wxCu+cRdLyb2YpSO4unewQZoK1qDkaWQwWBW5WxY70D671FGnKbHtzMZ5pTIP/lVr2J3vO/bgN5hnSt76b8pPCNLQNCd4C2CjKyLikbyXtpgYF05bFmc3Vv4BK62RMaebw+53WtXJiJCkT1HclCygQkBIQFbZeWFIZ7S3vpcmDNg1rm9lw3MegmOVnCoiLbRb3E6B/HZoF1vvTv3Hw+DAo7GDcwrqdEwj4sOf2pU7OSPki4V9g5aiB+g3WqB3k8G0Hv6fLvtAlTrad1aXy3z5KEhOWNXS9VfRk9FTJyWhaPh8tg016g8cQ7FkvKb3FDI+ZR5l6cLOKTBT07QqM/ZEygISkeUAGY1wp49lvnacGiaI4aY5fupOsB8+az+jwOIyJ4J9JQfN6WjmkcUvjnLhSOBG49mpdC9HR3Vi78GnBmaF19P37i6pw0Q2rqafliGDIvIUDJ/RTAMom3R+gyh4cif+nqEc4at9B7uZtHl5nTk2AW/cveSGpuBj3GIvBryiKP/88d9Ri0LuiDZU33OBPK3bN2hPxQW619/3peCGSrzSxoEqaDmAr0cXwxsQ2KHQd9QXyKYkJIio1wzvxTeKaVKWgRcGnNqNfqh5qhuJNIYJGalZi4l6Yh1BMRtDS6rTWXns8MpsmHfqS/3/p9Z6VYgAvvBkcJss=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN3PR03MB2401.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(136003)(396003)(346002)(376002)(39860400002)(186003)(83380400001)(16526019)(5660300002)(38100700001)(26005)(36756003)(316002)(6486002)(16576012)(4326008)(2906002)(66476007)(31696002)(6666004)(2616005)(956004)(31686004)(8676002)(8936002)(44832011)(53546011)(86362001)(66946007)(66556008)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?oB2IvrmMC2/0OVlYsn2/9/zHfoiMztUZR2fKzHY?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 5f97848c-3f0d-461f-e411-08d8fa8ba3d0
X-MS-Exchange-CrossTenant-AuthSource: BN3PR03MB2401.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 12:41:33.1538
 (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: ztcB6u4oz7y8smTdz8exZRpQ3W51Jo4MwxiMM921ugf5lmtb2o81IiN6Aty0l0Fnh5iZaafb1tGmw+6+Iqw59DBKWpPiLFZJDfhpeBTWqNc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB5977
X-OriginatorOrg: citrix.com

On 27/01/2021 09:52, Andrew Cooper wrote:
> On 23/12/2020 20:32, Igor Druzhinin wrote:
>> LBR, C-state MSRs should correspond to Ice Lake desktop according to
>> External Design Specification vol.2 for both models.
>>
>> Ice Lake-X is known to expose IF_PSCHANGE_MC_NO in IA32_ARCH_CAPABILITIES MSR
>> (confirmed on Whitley SDP) which means the erratum is fixed in hardware for
>> that model and therefore it shouldn't be present in has_if_pschange_mc list.
>> Provisionally assume the same to be the case for Ice Lake-D.
>>
>> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
>> ---
>> Changes in v3:
>> - Add Ice Lake-D model numbers
>> - Drop has_if_pschange_mc hunk following Tiger Lake related discussion -
>>    IF_PSCHANGE_MC_NO is confimed to be exposed on Whitley SDP
>>
>> ---
>>   xen/arch/x86/acpi/cpu_idle.c | 2 ++
>>   xen/arch/x86/hvm/vmx/vmx.c   | 2 +-
>>   2 files changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c
>> index c092086..d788c8b 100644
>> --- a/xen/arch/x86/acpi/cpu_idle.c
>> +++ b/xen/arch/x86/acpi/cpu_idle.c
>> @@ -181,6 +181,8 @@ static void do_get_hw_residencies(void *arg)
>>       case 0x55:
>>       case 0x5E:
>>       /* Ice Lake */
>> +    case 0x6A:
>> +    case 0x6C:
>>       case 0x7D:
>>       case 0x7E:
>>       /* Tiger Lake */
> So I think these changes are correct.  TGL definitely has deeper
> core/package states than this interface enumerates, but I can't locate
> extra MSRs.
>
>> diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
>> index 2d4475e..bff5979 100644
>> --- a/xen/arch/x86/hvm/vmx/vmx.c
>> +++ b/xen/arch/x86/hvm/vmx/vmx.c
>> @@ -2775,7 +2775,7 @@ static const struct lbr_info *last_branch_msr_get(void)
>>           /* Goldmont Plus */
>>           case 0x7a:
>>           /* Ice Lake */
>> -        case 0x7d: case 0x7e:
>> +        case 0x6a: case 0x6c: case 0x7d: case 0x7e:
> IceLake Server has what appear to be new aspects to LBR.  I can't find
> LAST_INT_INFO (0x1e0) existing in any previous generation.
Strange.  Updates to SDM finally got published Apr 2 and those contained 
Ice Lake SP details in it - this new LBR hasn't been mentioned. Does 
this mean we can skip it for now as it appears to be undocumented 
functionality (at least publicly) and unlikely used by software?
> However, my investigation also found LBR_SELECT which has been around
> since Nehalem, which we don't handle, and Linux *does* use.

Good point, I'll make an additional patch that adds LBR_SELECT to the 
LBR logic.

Igor



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:52:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:52:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107313.205145 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUU9A-0000AG-QB; Thu, 08 Apr 2021 12:52:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107313.205145; Thu, 08 Apr 2021 12:52:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUU9A-0000A2-Ms; Thu, 08 Apr 2021 12:52:32 +0000
Received: by outflank-mailman (input) for mailman id 107313;
 Thu, 08 Apr 2021 12:52:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3iLd=JF=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUU98-00009v-Pj
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:52:30 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5ffa4883-30ce-42be-8293-1536f55cb07f;
 Thu, 08 Apr 2021 12: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: 5ffa4883-30ce-42be-8293-1536f55cb07f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617886349;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=TDvHHOtN+gmEmrYNnxOtV12A852F4SbSC/pk5AfDT20=;
  b=WKklbmKxDuBi0tkXvkEq+7x8okrAxQX9GlniSiUFERV4p0LzhTiWdB0P
   9E6DKZxYr3YASTKvlbiJwNLWL/Y2BPsnJ/dXT4HxsNbeuxlsAvIRnTNo8
   UXljh7rjw7YQDm9+5u8hYZfkk14oCbuX32aeSYN83dHnQ2yazPqXtn69C
   U=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: T0FvJo/9/EPz6Ji2XpJzsPg6/GYcEBvjA0Lleziwvn4pQRDfD1T5sj9zoZ0yZgXr7rouFJ7kJb
 /pUlXMZPn1nLJmCIWRbazJUSNbaEHxGUfvW/82542qVDzkgLQwuL4jLx3y5ytfJ14XgK6uIfpW
 CtFgC7dU/EoHbmU8bgYDUrxAseXtSAggCIZr+YbqKGLqLNsJoqWlqebB4pZgplZZ5KzzyMHadu
 Ul+pvprMmh37bHu4NrslIJ+VRO76RV6ekTMC85zayTF4gO3tEzoJnp3/Kn8f5FDDPQspcQZ30T
 484=
X-SBRS: 5.2
X-MesageID: 41536137
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:SAHUdaE2/svrG5tepLqFipHXdLJzesId70hD6mlYQxZYa9Hdss
 iokugS2xOcskd1ZFgLn9ecNK6cBVbV8pBo6YccVI3SODXOkm2uMY1k8M/e2DXmASLz7apw0q
 1nfqh4BrTLfCNHpOz95xS1FMtl/cmf/MmT9J/j5lpkUA0CUdAC0y5XEQCee3cbeCBjJb4UUK
 WR/dBGoT3IQwVsUu2eCmMeV+bO4/3n/aiWAyIuPBIs5AmQgT7A0teTeHL04j4kXy5S2rBnyG
 DZkmXCl9iemsumwRzR3XK71fprsebh0ddKCYitjcUYO1zX6jqAWYV7V7WO+A0yueGkgWxKrP
 DwpX4bUPhb2jf0RCWVqQGo8xT82DwugkWSrmOwsD/Gm4jFYx4UT+BGnplUdxPF7VFIhqAb7I
 tbm2SDt5RWChvcnCPyo9jQPisa73aJnQ==
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="41536137"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fMFyTW7Ys6xo662O/Mu7OpcRjQBlkm7V0zvXKM7jn4lMydOK2HJbDZXzFQC3wI8sy5UD+H33l3UWvqgxBf85W3AcdmPpRY8qDDey6/uXjYx34AIFePKvQ8c4+zu1GT5B2k8KYfXaztzve9YcZkQ2umJjb3AEFK7Ql3lSDNt68eACb2Pw8QTqH+PuQnGdiodCF9h9C63JzGU0cX8A9BsD1Shp/ZtxXReK4mEG6AKYllY97/5MW9ijW2TLA0Rz8OdTK9+PaHuQsnKItu/hQIn8/I0FVEWNuN0mU/NjiB3O6ozXGdrsJtrm/ejfqnseCce0WISl3FA+rExTchLGye6AVQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UnkaIzl0sG2ha4I24F3qmNNOsqwb4SuhiuGvbcyONGE=;
 b=Ipd9I6sT54AG08MhYWhpT6W52Z0CIL01CXqzYHBVlTOPC6tp1WJ5tqfdONqC/Ui8dSFXodvmpmeHCyghtc+YxgwD+hYM0Ia5cUhUacFUfzLUZS0yUOQTZXGP6F4nGlTXlMbI5L5rU+2A8YEHHQ78XGtIT2f1mkakzH8YA9t5d21HKWPI4Ex3tqVStfo2IaijvG2LUkWCNe8IfrfU+CueEZXWwkPZ/FsoHDTAZYt384iuqmTdyt6zvZvUS50SKe938yVa10t1unCFJKge0V1XIa0DVxWDjFwCYFclPi0s+mgwlkkpCddNuKzvmTQnPxd9EKMwt5kzA/ypOwWM5pLGuw==
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=UnkaIzl0sG2ha4I24F3qmNNOsqwb4SuhiuGvbcyONGE=;
 b=XciYh52nnQ86nqL0ReltkD8Y+HYv8uIBm7yEanOVPABZkrmrcPI/r44OfWaOOcBoTKokPDIptxizdeGnKn2v3S3hG2JgAC1tTRC7nz5F/Tje+xPDYbBXkrTl3Rfu+mwCoNzQrpqwOFDWtVETU38crXqGGIxT4d0r5inFIcvZm/k=
Date: Thu, 8 Apr 2021 14:52:20 +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 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
Message-ID: <YG78hECMfLSB6Aao@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
 <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
X-ClientProxiedBy: PR0P264CA0242.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100::14)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 43a7f921-cbff-48fa-cb94-08d8fa8d28f0
X-MS-TrafficTypeDiagnostic: DM6PR03MB5324:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5324660C51A6D14342178C738F749@DM6PR03MB5324.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ACEwJXniE1IKmq0vkXf3cXENK8pqf5+heCGr4buL06RdKB5aMvIfr5bBY1ACeUuCoM4Zr28aPLMYGnhbeeRzpIlZMqMvBlrynpsD0gzoDCZggdlkDXZnS1tpyfQxOf+gCUJvCYQ2vIDUG4TAvAz5SXd7n+A5dW5mmusvHe78Wbp7jxYMIx4pSwgy8ImCJTnGZtHTQhXcQ1uP1smQ8+12Fdu0EX2MTHm5jLKJCPS18mDe7aPvgx5eDfU/+wcIH6Jg7SUyDPOgRg8CYoI0CGPVIgVfJjnmpFOahPWeUM37xTHzm9U6sheTtDESeJAnIkGTpysr3LD4rbfSmU0WQv9doOLthmU3UCKxuMU8ZZaq0ax1VDklBJHBHK0c6cpSWlScJcVoAY28kbXNWOaEjJOjjClqJyeospZWPvIv8lgQjRaCsrWPkpcFGj7eAMXBfv9V072kCq47xDatXpnbFHzXfJAfZ0dkATllVp1mE/lPTO0gpdRm7ZUHuhDAr6/OaDq5BRCM++8c0miijRgA8tOv39Kdl26AbfQXYhxHLW6K0I1RKrjqgltxcBp6HIEYOz2p9nGwdFeNpiIIsFZU4e3jFGX5+QKPe30kflQGSPXhh7N/GPfpIKJnYOj2km0YOzTOzd5zOzQ2Y3ZzRvqB3qPyYNjHwlGDM+//V61GCP3BpT0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(39860400002)(366004)(346002)(376002)(396003)(85182001)(956004)(38100700001)(6666004)(316002)(2906002)(83380400001)(26005)(186003)(16526019)(9686003)(8676002)(66556008)(6916009)(478600001)(66476007)(66946007)(6496006)(5660300002)(8936002)(33716001)(86362001)(53546011)(4326008)(54906003)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 43a7f921-cbff-48fa-cb94-08d8fa8d28f0
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 12:52:25.9496
 (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: wDDPo0g4PWzyseEjJm+gqH8Wknlcv0fjSiwnYLcn5UFksH/SwGBz2VpqyCbvGMdMFjKvYFsTKh3T2jkgNANOFA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5324
X-OriginatorOrg: citrix.com

On Wed, Apr 07, 2021 at 05:51:14PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:32, Roger Pau Monne wrote:
> > --- a/xen/arch/x86/hvm/irq.c
> > +++ b/xen/arch/x86/hvm/irq.c
> > +void hvm_gsi_unregister_callback(struct domain *d, unsigned int gsi,
> > +                                 struct hvm_gsi_eoi_callback *cb)
> > +{
> > +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
> > +    const struct list_head *tmp;
> > +
> > +    if ( gsi >= hvm_irq->nr_gsis )
> > +    {
> > +        ASSERT_UNREACHABLE();
> > +        return;
> > +    }
> > +
> > +    write_lock(&hvm_irq->gsi_callbacks_lock);
> > +    list_for_each ( tmp, &hvm_irq->gsi_callbacks[gsi] )
> > +        if ( tmp == &cb->list )
> > +        {
> > +            list_del(&cb->list);
> > +            break;
> > +        }
> > +    write_unlock(&hvm_irq->gsi_callbacks_lock);
> > +}
> 
> Perhaps somehow flag, at least in debug builds, if the callback
> wasn#t found?

I've added a debug printf here to warn if the callback is not found,
but I see it triggering because hpet_set_timer will call
destroy_periodic_time and create_periodic_time and thus two calls will
be made to hvm_gsi_unregister_callback. This is fine, but adding a
message there gets too verbose, so I will drop it and leave the code
as-is.

I don't see a problem with calling destroy_periodic_time multiple
times even if the timer was not active, and that shouldn't result in a
message being printed.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:57:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:57:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107318.205157 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUUEN-0000LT-Fg; Thu, 08 Apr 2021 12:57:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107318.205157; Thu, 08 Apr 2021 12: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 1lUUEN-0000LI-C2; Thu, 08 Apr 2021 12:57:55 +0000
Received: by outflank-mailman (input) for mailman id 107318;
 Thu, 08 Apr 2021 12:57:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=A7yC=JF=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lUUEM-0000LD-J9
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:57:54 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8cbe31c9-bde3-4ee0-8e01-3ab0569b5cfa;
 Thu, 08 Apr 2021 12:57: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: 8cbe31c9-bde3-4ee0-8e01-3ab0569b5cfa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617886672;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=R4xVG+9MFsOKftN253u73h97zGAl4zaT+SLmdHOHDR4=;
  b=E0t3XrgOuaxJcxtqUNQlOoqnXXKlWNgHL7hOOCrofKAn1vByzxddtkpv
   96bL8vWIkcC3nXkXcANV6sLrkGn2mNbPoOrPImjeNHR1kJyQrrMbqaThd
   73iHD0Olo4aYnkLKLkn7G5q/mnyfWRuIX8K3PXpwL+F08FP7nMhRh+3V3
   c=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: BA2Ilrn0VCn/uUt+AqwKRhylBaQDtJ9m74pwSlrXFoBMdUo3LjyCcCt3hNI0ez14AKBsfPz04w
 0RniCZccdj1ZyzCu2BRTEJNG3cPzvD93kuQFqIMMoJ5V5lpFCC4fZT/dKdxD9nvrv5L3tbJKeL
 jMJtMRUSU8OPHYazppyHigwQ/UgChVgbuLi1J7oEgwbEUIFftXBfbOTPhPc/iBIO0+lL1DHwdB
 fvVqfv35+7g2Tc0pYIu/Vgb6N4uKsn89j7ag7CiN+3LXPXaknZJNsBeu/aYu7EZM1Fb6YUrj/s
 gu4=
X-SBRS: 5.2
X-MesageID: 41289025
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:unuoaK0ce2DUpEw6WAMLygqjBR13eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/BIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmdJ1/Z
 xLN5JzANiYNzRHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcFdxi1SYzzrdnFebg9AGJY/Cd
 647s1IuzKvdR0sH7qGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnm4j41VTRTzbA+tV
 XUigCR3NTej9iX6D/5k1XS4ZNfhcf7xrJ4ZfCkp8AJJlzX+32VTat7XbnqhkFSnMiO7xIQnM
 DIs1McOa1Img7sV0WUhTeo5AX6yjYp7BbZuC2lqF/uu9bwSj5/K+cpv/MgTjLj50AtvM5x3c
 twtgrz3fcnbmKj7VDAzuPFWB1wmk2/rWBKq591s1VlXZYDc7gUlIQD/SpuYeQ9NRjn44MqGv
 QGNrCk2N9qdzqhHhXkl1V0zMfpdno+GQrueDl5huWllxJSnHx/0nICwt0eknoq5PsGOul5zt
 WBHaJymL5USMgKKYp7GecaWMOyTlfAWBTWLQupUBraPZBCH0iIh4/84b0z6u3vUJsUzKEqkJ
 CEdF9Dr2Y9d2/nFMXm5uwLzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQ2GKTgKr
 SOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+c06So/jMNpbhuoXgAbXuDYuoNQxhdnL0A3
 MFUjS2Dt5H9FqXVnjxhwWUdGjqfmD54JJsAInX9+Ue0+E2R8lxmzlQrW78ytCAKDVEvKBzVl
 B5OqnbnqSyonTz3Wug1RQvBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmF+OJhp1SdLqAB
 dSzm4Hv56fHti1/2QPGtinOmWVgz84v3SRVaoRnaWF+IPDdo4nCI0lHIh8Dx/CGRAwuQsCkh
 YCVCY0AmvkUh/+g6Ssi5IZQMvFccNnvQutKclI7VTFtUudoskrbmABXyGnVPOWhQpGfUsQun
 RBt4skxJaQkzemLmUyxM4iNkdXVWiRCLVaSDieaJ5sgbDtcgFoRWKsjTiX4itDI1bCxgE3vC
 jMPCeUcfbEDh54tmpD2qjnyl9ya16QZll9cHx8rI17G1nXo3ob657/WoODl0+qLncSyOAUNz
 /IJQEfJQ5j3Pib/h+YkjTqLwRq+rweesjmSJgzebDa3X2gbLCSnaYdBvlO4dJOL9b1qNIGVu
 qZZi6YJD71EPkSxgSQv3opURME8EUMoLfN4lnI/WK41HkwDb7uO1xgXagcOMzZwG7+RfqEua
 8Jxe4djK+VCCHWZdGHw62MMGIGBRPXvGKsT+Yn7bpTprk/sbNvH5/dFRvEvUs3qikWHYPRrg
 c5Rq8+3ZXqfqlIVOYWczhC/lUomM+URXFb+DDeM6sbRxUVk3TfP9m1+LLGprokP12ZqGLLSC
 6i2hwY282AYjCK2rEbAZ8hOGh6aEAz73J54eOJHregQTmCRqVm/FCgNGW6f6IYYK+ZGa8Iph
 IS2aDFo8anMw750hvXpz11P+Zn9HumW9q7BEapFfRT+9K3fXSKja3C2r/9sB7HDR+6YV8fn4
 tLaAg5adlCkCAriMkP6ReJI5aH6X4Noh95+jFollnkx4ig7iP6JCh9QHzkq6QTeyJSPHiOhd
 nC6s6C2h3GkWN45aU=
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="41289025"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IK/XWxJGqbq+djVv6o/4VI46Xq7rVKDVOrvxqUDaT1hsKnknPyhOM1WO1/roQwdLebCeAs19TKjvgmxxQ9OMcopdrCIv/OwTI6nmMYl8408qvdAJk90ry2sphN3Wb+grCSGaRv1ilPmhjg8qNnG3y+CGs/CtlNc8LEv3tQOV8HiEFBl5Z3NL65t7hr5frMhG6WRvHjuNfH/nnyOj4wA/ULkKfw8YimE5UL92yCQHl3XcPoi1BvRdYJVMiBSN/jFfCfGtF+mL/5QkGlSNtYjmROZU/jMVAMzN2pFGC21Q0OQFJVgl61pxHNYDdNZ5Z5suFBCSdNZWzIe6v2BbGfVaRA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R4xVG+9MFsOKftN253u73h97zGAl4zaT+SLmdHOHDR4=;
 b=mLo19NM1EpwG5Jsz21ZCqBxvofEHGq5fXGkzc74ofUskcARfRU+RwTeCr8Z467MJ4WmdAKxFpSlBXcz8DT/3SeU8Z/VdAyP35OOTPG5BjQNQ+5oBUrQtvkksIOHIIINS9Ffw4EpzP2ysuk2EDz0Aj9abZRT0h2J7Atd/PSJvcF28U2Cy91XH9BMTlEpXRlo+ZZid2FimfjgTWzCLFWgUKfbkrsE724xHvpgiGnYS7Jq4VtZcIJXjd9eA8M8qxhxBjQrWZtmPcc+08hgmLq9wAAPxWQ3apNHaXUmugMhuCKE6DmUPxkvCr5RjOr/CTj6+NO5xqSQDzd4lxpY6dmYj6w==
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=R4xVG+9MFsOKftN253u73h97zGAl4zaT+SLmdHOHDR4=;
 b=DYzM5jdZZXwu4hrIRQ8FaTcxeF6qQizJWJLlmb1DRu+Zn9ybEIQ0S6+21B6Kiio125HCeqGxnjIJnrdrsJgqudfsW2reIL0XSnkzFFfxcR/04aCJZWvWuUq9oPZw7NmruJjRn5dPG+W33P+GXMl/YQmRbZjXMaG1HdyexXoZxis=
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, 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>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 00/11] assorted replacement of x[mz]alloc_bytes()
Message-ID: <bdb17131-2184-d8b8-a1a2-37525af02807@citrix.com>
Date: Thu, 8 Apr 2021 13:57:43 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0256.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:8a::28) To DM6PR03MB3627.namprd03.prod.outlook.com
 (2603:10b6:5:ab::16)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4a2042e4-b4c9-4a80-657f-08d8fa8de985
X-MS-TrafficTypeDiagnostic: DM4PR03MB6032:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB60320A84AC3FCEBAB5F8FB4ABA749@DM4PR03MB6032.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: BG+4I0OR7GQCwHQ4uIIGM3JWMBeWx51xh8csFkgs3H/UBkxThog5UMUF0WOIdq0DcPnmu2ZiJPKVz3B/WWIQGjtXGzE3N5QHZWetk+LbxVzfkx00ItWiBD1w7sLyvZn41wFPzL56Cm0MIln1Haf2gCiW8+vmuK/OJ31F1NWXSG27I3x0Hz21QuijCSjEvxDRsNnrtvNmykQG8cnXCJJJl0ARdhKVr6w1kw3oD0Q+xi8syp2mL0agxe6ukEW+dOm+vi7AWGJce9mUGQbk9cfrOJ/NZAaUetfuWzdDIOMssESntUvN9rz/YtUDhTX2Yn2XeY7ls3uW1zIBH90K6eVA8MLOFVr34fQ4ZbC9KcbOVcC0aTV2y30MP55yHEByboxjJnwKJq6vvqp4S7wmkRvp8M1Ipsy5JWe6Ys+cIu1Ct2zA+8olcf7DvI2Mc9Ny90x2RC3oYwMM5Jqp7cHSEWsQ0zE638ATTuFKDqou+27tofHgtwxc2opQmULC28yh63qYfPEcGO1BBAWqsSvSblHMNXN5ZM5ZHRrcz0KO8FvAf7mzOGXSAui1R6Xrk/CXWczogw/e/RA4MGRXWkjnoF24TzwKsfVEu6hIUE+TvODdz/DamBcSxyH3SEpG8qmmJN/z/GvAVCbD/Uwp/w0AS2bwrdnpp1YQYPTKMmiw/QDmtU2A1vcn9WLw3aOVcE4TuTRT+gM2jSSkNGToHku8ZciPlHvpZitmFmC4hAuU1+bHI1M=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR03MB3627.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(366004)(396003)(39860400002)(376002)(8936002)(6666004)(66556008)(83380400001)(107886003)(54906003)(4326008)(956004)(110136005)(5660300002)(2616005)(16576012)(316002)(53546011)(26005)(8676002)(31686004)(16526019)(66946007)(86362001)(478600001)(186003)(38100700001)(6486002)(2906002)(36756003)(31696002)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?+phmgz4S859HHZpEbJvlcLbrKK/KUfke8CSFTRu?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 4a2042e4-b4c9-4a80-657f-08d8fa8de985
X-MS-Exchange-CrossTenant-AuthSource: DM6PR03MB3627.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 12:57:48.9460
 (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: XY8UWG66W0BKGG4jtZSL2hZI0X5qnsxekc07fDR3lsWajd96L0hpXff/TqxGFeqf7Rvx569aLoJX7FpuSi/wTLCLeWkQEgxVSNB2T30ScbI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6032
X-OriginatorOrg: citrix.com

On 08/04/2021 13:13, Jan Beulich wrote:
> In the long run I think we want to do away with these type-unsafe
> interfaces, the more that they also request (typically) excess
> alignment. This series of entirely independent patches is
> eliminating the instances where it's relatively clear that they're
> not just "blob" allocations.
>
>
> 03: x86/MCE: avoid effectively open-coding xmalloc_array()
> 04: x86/HVM: avoid effectively open-coding xmalloc_array()
> 05: x86/oprofile: avoid effectively open-coding xmalloc_array()
> 06: x86/IRQ: avoid over-alignment in alloc_pirq_struct()
> 07: EFI/runtime: avoid effectively open-coding xmalloc_array()
> 08: hypfs: avoid effectively open-coding xzalloc_array()
> 10: video/lfb: avoid effectively open-coding xzalloc_array()

The flex conversions are fine, but I am unconvinced by argument for
interchanging array() and bytes().

The cacheline size is 64 bytes, and the minimum allocation size is 16,
plus a bhdr overhead of 32 bytes, so you're already at most of a
cacheline for a nominally-zero sized allocation.

There can however be a severe penalty from cacheline sharing, which is
why the bytes() form does have a minimum alignment.=C2=A0 There is one
xmalloc heap shared across the entire system, so you've got no idea what
might be sharing the same cache line for sub-line allocations.

We should not support sub-line allocations IMO.=C2=A0 The savings is a
handful of bytes at best, and some horrible performance cliffs to
avoid.=C2=A0 People running virtualisation are not going to be ram
constrained to the order of a few bytes.

For small allocations which don't require specific alignment, then
putting bhdr and the allocation in the same line is fine (if we don't do
this already), but we shouldn't be in the position of having two bhdr's
in the same cache line, even if there are plenty of single-byte
allocations in the theoretical worst case.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 12:58:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 12:58:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107319.205168 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUUEY-0000Pl-Re; Thu, 08 Apr 2021 12:58:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107319.205168; Thu, 08 Apr 2021 12:58:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUUEY-0000Pe-Oc; Thu, 08 Apr 2021 12:58:06 +0000
Received: by outflank-mailman (input) for mailman id 107319;
 Thu, 08 Apr 2021 12:58:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4S9a=JF=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lUUEX-0000PL-AQ
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 12:58:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f3ae8c83-6cc3-4770-b3b9-d83d2cf0ed67;
 Thu, 08 Apr 2021 12:58:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2F76BB090;
 Thu,  8 Apr 2021 12:58: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: f3ae8c83-6cc3-4770-b3b9-d83d2cf0ed67
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617886683; 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=TqghwaaYRYpQbMhMFBCSGcBVtH+mAsUxmtB7aViM5hQ=;
	b=ke3lNRZUQtKPy0UrCcjptbdoMpgIJjXWRetXsHEZwjXv2s4iEy3a+4rpfZteWj5NGu7GPz
	R380XKzD+BhjKUjBpw8ENYSVzILLClTsjmpGDyEyo+qg2eWY19rGo3BFhe6aGPZDLZechJ
	zZFVbZH560S8lMz4vwIvi9eXSofWLQ8=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	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>
Subject: [PATCH] MAINTAINERS: add myself as hypfs maintainer
Date: Thu,  8 Apr 2021 14:58:00 +0200
Message-Id: <20210408125800.757-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As I have contributed all the code for hypfs, it would be natural to
be the maintainer.

Suggested-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
---
 MAINTAINERS | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index 6a7fa8717e..d46b08a0d2 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -308,6 +308,15 @@ M:     Nick Rosbrook <rosbrookn@ainfosec.com>
 S:	Maintained
 F:	tools/golang
 
+HYPFS
+M:	Juergen Gross <jgross@suse.com>
+S:	Supported
+F:	tools/include/xenhypfs.h
+F:	tools/libs/hypfs/
+F:	tools/misc/xenhypfs.c
+F:	xen/common/hypfs.c
+F:	xen/include/xen/hypfs.h
+
 INTEL(R) TRUSTED EXECUTION TECHNOLOGY (TXT)
 R:	Lukasz Hawrylko <lukasz.hawrylko@linux.intel.com>
 S:	Odd Fixes
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 13:10:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 13:10:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107330.205181 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUUQ6-0001cj-1g; Thu, 08 Apr 2021 13:10:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107330.205181; Thu, 08 Apr 2021 13: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 1lUUQ5-0001cB-RW; Thu, 08 Apr 2021 13:10:01 +0000
Received: by outflank-mailman (input) for mailman id 107330;
 Thu, 08 Apr 2021 13:10:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUUQ4-0001XY-S4
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 13:10:00 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUUQ4-0003qe-PA
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 13:10:00 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUUQ4-0001mB-MB
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 13:10:00 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lUUQ1-0007mL-8R; Thu, 08 Apr 2021 14:09:57 +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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=References:In-Reply-To:Subject:Cc:To:Date
	:Message-ID:Content-Transfer-Encoding:Content-Type:MIME-Version:From;
	bh=7ElSRYubD+JUlap9vMtVoNR/AqnKKgUKpQl0ScVuVj4=; b=dl6W/RfjkRqMYiLuYsGubLv/b1
	oEYQrfn64BwnMsHOgzFBU9UYHASx4jwEvPvi7GFizMe9L5ymjPkdn3Iy2gpELMNNq/T/zRKQeZlDd
	WTJAGXu00jBMKqLmnp1ylufFtRTzjJm9xjrwqIjOfIaVLper1dzfKLRBLG6Kj9nMYnVk=;
From: Ian Jackson <iwj@xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <24687.165.101567.871849@mariner.uk.xensource.com>
Date: Thu, 8 Apr 2021 14:09:57 +0100
To: Juergen Gross <jgross@suse.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] MAINTAINERS: add myself as hypfs maintainer
In-Reply-To: <20210408125800.757-1-jgross@suse.com>
References: <20210408125800.757-1-jgross@suse.com>
X-Mailer: VM 8.2.0b under 24.5.1 (i686-pc-linux-gnu)

Juergen Gross writes ("[PATCH] MAINTAINERS: add myself as hypfs maintainer"):
> As I have contributed all the code for hypfs, it would be natural to
> be the maintainer.
> 
> Suggested-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Ian Jackson <iwj@xenproject.org>


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 13:12:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 13:12:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107334.205193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUUS1-0002RG-B5; Thu, 08 Apr 2021 13:12:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107334.205193; Thu, 08 Apr 2021 13: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 1lUUS1-0002R4-7r; Thu, 08 Apr 2021 13:12:01 +0000
Received: by outflank-mailman (input) for mailman id 107334;
 Thu, 08 Apr 2021 13:11:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lUURz-0002Qy-K9
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 13:11:59 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (unknown
 [40.107.6.46]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 877fb7ec-2d2b-424a-aa2a-818596cbc921;
 Thu, 08 Apr 2021 13:11:56 +0000 (UTC)
Received: from AM5PR0601CA0070.eurprd06.prod.outlook.com (2603:10a6:206::35)
 by AS8PR08MB6726.eurprd08.prod.outlook.com (2603:10a6:20b:39a::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Thu, 8 Apr
 2021 13:11:54 +0000
Received: from AM5EUR03FT026.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:0:cafe::51) by AM5PR0601CA0070.outlook.office365.com
 (2603:10a6:206::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Thu, 8 Apr 2021 13:11:54 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT026.mail.protection.outlook.com (10.152.16.155) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Thu, 8 Apr 2021 13:11:53 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Thu, 08 Apr 2021 13:11:53 +0000
Received: from d3925506afc0.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 95794414-5C0B-43E0-AA07-92427182CB03.1; 
 Thu, 08 Apr 2021 13:11:45 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d3925506afc0.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 08 Apr 2021 13:11:45 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VE1PR08MB5775.eurprd08.prod.outlook.com (2603:10a6:800:1a0::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Thu, 8 Apr
 2021 13:11:44 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.034; Thu, 8 Apr 2021
 13:11:44 +0000
Received: from [192.168.0.22] (82.8.129.65) by
 LO4P123CA0302.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:196::19) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Thu, 8 Apr 2021 13:11: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: 877fb7ec-2d2b-424a-aa2a-818596cbc921
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xhhRmmau+R88fUQjlPhSsMADOnZzFIKHSvO/yan1u5E=;
 b=7BwOgrQCapJLFSeNL9kZq/39Tg2S1nQyW74WJtUZl+dkZnaxvfoiwYZJ2pZ4bFGL3ydsZLQFozdAsVYDi1SEvlNwN/mcchde8nn+McO+DmnAPzPJ99GFLIZXAaU3RhVKRFt+WKruOFiWmodaSgLMZR5Mh/pgSq2+jcbzIYCpYHI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: cbef8f516c2ff840
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=csEEZINXl5oo6veIt6QcKetPNPQtfordGOnuxhnvZsGUVW0r9sLcT1WssWiidqdXR6eNwNFdoY8FLGAcXKw3dIRhZpzb73DYvTKyTK+XOvone+xJhL0niyl44C/4IUu9Yq5y3iGFlpRf/ZBH9x8mUxRWb3kjZkl8Lm3WX3NEzyTwADfGJg2awzc4mRQNSqy+TnyyMoB0uZo7NFvhYHr2Rk+zJHQQrYaEm1ZTVQGIPYX54zomYfdzhsA71fJSrGEp24M959r0xbGRG91085Ru/1fBs2XdZyeiJKYkJtMameaSaqTFuhUhipgS+HMdW35dfoXXJZD/e7JNXO9Mz4Aj4Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xhhRmmau+R88fUQjlPhSsMADOnZzFIKHSvO/yan1u5E=;
 b=euqkvwgubVQc6cXm245D7cJ8X2im4IgJ67b/USoEXLVneKBeEal6BFk9gqA64p+6dZnep8muBgTzjBfHLoz4/xpxCsIF8ksjmza19mMMu4TejhYifVjpIOssWWp0cFH1bCJikoc5SQIy2hRw5MyB1O6knRbWQ5QoaIswGIlfxi5rOlZ0c3sjsHrcv7fv7aAKq5oJj3YLRvv6/ja15Q8XQ+I//aQzMZFvm8uMr8L2W2yzMolSGKT/PfJYxbIhCLfRh3xAYXjTh7CsoHTO7gnF/5IqMfYBES+SIA45YvrBnRnuHTf/JOWBpj8fPQihOEea2ut6higDTofbjMTgPrTPug==
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=xhhRmmau+R88fUQjlPhSsMADOnZzFIKHSvO/yan1u5E=;
 b=7BwOgrQCapJLFSeNL9kZq/39Tg2S1nQyW74WJtUZl+dkZnaxvfoiwYZJ2pZ4bFGL3ydsZLQFozdAsVYDi1SEvlNwN/mcchde8nn+McO+DmnAPzPJ99GFLIZXAaU3RhVKRFt+WKruOFiWmodaSgLMZR5Mh/pgSq2+jcbzIYCpYHI=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v2 2/4] xen/arm: Handle cases when hardware_domain is NULL
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <b79f363c-2220-f187-6840-23205ef37e1e@suse.com>
Date: Thu, 8 Apr 2021 14:11:39 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>,
 Rahul Singh <rahul.singh@arm.com>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <4F221E20-0ABA-499D-A810-4A2A4F20F17D@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-3-luca.fancellu@arm.com>
 <b79f363c-2220-f187-6840-23205ef37e1e@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0302.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:196::19) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e4a3aaa4-5a96-4039-bebb-08d8fa8fe141
X-MS-TrafficTypeDiagnostic: VE1PR08MB5775:|AS8PR08MB6726:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AS8PR08MB67266EA2DB65EB6744529B06E4749@AS8PR08MB6726.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 TQVdMTJWpyy4OZipiYMDs2RNCqAWngpBY8iSDrxaJHC9GfXHMEhdu2lGQ6epExo6jmTaICGKEK/oNU3d5d0gODEGLZsRW/g2ISvTPn+rT2hd37gHcCOOd77oGm37qLST1pivJvSwwl/jlUYqI2aYGs4VUeafudw3SlS5G9cNvjAh6UaAomOaPcUcZG1KE9gPOknDdxmL3sRNnV89+M46icngys3Vh2y/Ct8vfOWHhN8UC+k/xIyJTPy2rIhDMNK0yXKKeQRk0ulGQpJtSi8yuKv4Mhs4MJV/OA2qeuzopG0p4fpjb2MuhNsNqQc5RZMQyb+/wICQNoYry2Ecd0iiXdf7MUFlPHgOg0vwwlPnhh9RQXaMlhH5SPNTt2ks8hMIrAqsmYaI5JZMM/tw7pulQmNFV8aczXHdqFp81hVbx3VRo4ykGt/yEeA3aiN/M3S0LCpU395oni114YIZrsLwu536pVTVxMCBgZDkJLms78z2zyU0XF6dUF4ELRHqvAAFrM8XIXekRiRf6yVNV1V1j44IWoh0sqt3xmwbHlxqWXs2LGZged5PY0Xrmr071llqKO1IQML5LbKgwcq3ztMzNvePynCAjwBnOB9TkOPjsCp18+t5owi9SCVh/qQe1wj2pBQdEf7f8bIrQ7y6tUmqIVc75/Gh2tYMNdNmivrFNz0TIi7oa52vbEZmGtqRw55c0EEpOZim0pmLdqDaOmLX9QGVn6g3l8vlI+VZIWOtolY=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(39860400002)(136003)(346002)(366004)(33656002)(956004)(316002)(38100700001)(2616005)(52116002)(66476007)(2906002)(66946007)(4326008)(53546011)(66556008)(36756003)(38350700001)(6486002)(6666004)(186003)(5660300002)(16526019)(54906003)(8676002)(478600001)(44832011)(86362001)(6916009)(8936002)(26005)(16576012)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5775
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	782d3f6e-295f-40a5-4113-08d8fa8fdb27
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GIjaYc1fBa3dsVhT29YqoSb65bE97GOsD0/UJERg9esUjPqPv9/IJyOAsThULrlfTeSEQgFgtcDCfLIA5hWEiSIuFFdrbmNQRmOBvv/q3gPFxU3D4LIpP+v9arRMgcXJHVKAxUaIvdXTmZJMeUNwT9JxCgwrVRJ+6pvedvqBUgZ1AzkNC8xhEZsSoVoHuGCBJsYCfA6S7K3hyB5ZSN4LoTJrfvLx6jo/h/dgv1ZG/9Re41zr0tVGVoYGR8x73upkaHi6bRGJtZ2VpcCTjDxcwEw787ApD7ul2hKUd4URjua7cYsFmHY/iPGQqBSqzd0288cvpDp5Wo7pwBgbBOK+goRQyytcXxoAcAqV+DSKzvmsEtzwGzK/Doay9KjlBaWWKAAectE36D7ntSGUTKzEZJEKuqbERqsKp61RMjZXUiWO0952Ye77uicv8QV0c656/K6/DMcJYwslRaDF5i8q191x+x+P5jAsFVYbCwKIv8xAm1CropfoLH/zbBhCp5RqgNL7oyzhnYxl/kGZevsH0tx8OTvcIBXIe6ePg7iL8YEe1cPyTrkt0BoX1xeC+F6FAcppjtA70VjGxmCY/J3S1TxisuPBsIfKYHtol3ekYfYTbjgeaQ6QSHpsnAJ+TBTODGEg9qCHTUlvwkHA+tLk2OTeIzPDytY7u6SS/v4L6H0=
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:(4636009)(396003)(376002)(39860400002)(136003)(346002)(36840700001)(46966006)(82740400003)(70206006)(5660300002)(956004)(44832011)(47076005)(33656002)(356005)(36756003)(6486002)(336012)(16576012)(316002)(8676002)(36860700001)(8936002)(6666004)(6862004)(54906003)(53546011)(82310400003)(186003)(81166007)(86362001)(478600001)(2616005)(4326008)(70586007)(26005)(16526019)(2906002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 13:11:53.8565
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e4a3aaa4-5a96-4039-bebb-08d8fa8fe141
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:
	AM5EUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6726



> On 8 Apr 2021, at 11:17, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 08.04.2021 11:48, Luca Fancellu wrote:
>> --- a/xen/common/domain.c
>> +++ b/xen/common/domain.c
>> @@ -308,7 +308,7 @@ static int late_hwdom_init(struct domain *d)
>>     struct domain *dom0;
>>     int rv;
>>=20
>> -    if ( d !=3D hardware_domain || d->domain_id =3D=3D 0 )
>> +    if ( !is_hardware_domain(d) || d->domain_id =3D=3D 0 )
>>         return 0;
>>=20
>>     rv =3D xsm_init_hardware_domain(XSM_HOOK, d);
>> @@ -705,7 +705,7 @@ struct domain *domain_create(domid_t domid,
>>     err =3D err ?: -EILSEQ; /* Release build safety. */
>>=20
>>     d->is_dying =3D DOMDYING_dead;
>> -    if ( hardware_domain =3D=3D d )
>> +    if ( is_hardware_domain(d) )
>>         hardware_domain =3D old_hwdom;
>>     atomic_set(&d->refcnt, DOMAIN_DESTROYED);
>=20
> While these may seem like open-coding of is_hardware_domain(), I
> think it would be better to leave them alone. In neither of the two
> cases is it possible for d to be NULL afaics, and hence your
> addition to is_hardware_domain() doesn't matter here.

Yes that is right, the only thing is that we have a nice function
=E2=80=9CIs_hardware_domain=E2=80=9D and we and up comparing =E2=80=9Cmanua=
lly=E2=80=9D.
It looks weird to me, but I can change it back if you don=E2=80=99t agree.

>=20
>> --- a/xen/include/asm-arm/domain.h
>> +++ b/xen/include/asm-arm/domain.h
>> @@ -30,7 +30,7 @@ enum domain_type {
>> #endif
>>=20
>> /* The hardware domain has always its memory direct mapped. */
>> -#define is_domain_direct_mapped(d) ((d) =3D=3D hardware_domain)
>> +#define is_domain_direct_mapped(d) (is_hardware_domain(d))
>=20
> Nit: If this was code I'm a maintainer of, I'd ask for the unneeded
> parentheses to be dropped.

Sure I can do that on the next version of the patch

>=20
>> --- a/xen/include/xen/sched.h
>> +++ b/xen/include/xen/sched.h
>> @@ -1022,7 +1022,7 @@ static always_inline bool is_hardware_domain(const=
 struct domain *d)
>>     if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
>>         return false;
>>=20
>> -    return evaluate_nospec(d =3D=3D hardware_domain);
>> +    return evaluate_nospec((hardware_domain !=3D NULL) && (d =3D=3D har=
dware_domain));
>> }
>=20
> This would be the first instance in the tree of an && expression
> inside evaluate_nospec(). I think the generated code will still be
> okay, but I wonder whether this is really needed. Can you point
> out code paths where d may actually be NULL, and where
>=20
> static always_inline bool is_hardware_domain(const struct domain *d)
> {
>    if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
>        return false;
>=20
>    if ( !d )
>        return false;
>=20
>    return evaluate_nospec(d =3D=3D hardware_domain);
> }
>=20
> would not behave as intended (i.e. where bad speculation would
> result)? (In any event I think checking d against NULL is preferable
> over checking hardware_domain.)

I agree with you, I will change the code checking if d is NULL the
way it=E2=80=99s written above

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 13:12:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 13:12:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107338.205205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUUSZ-0002X5-L0; Thu, 08 Apr 2021 13:12:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107338.205205; Thu, 08 Apr 2021 13:12:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUUSZ-0002Wx-Ht; Thu, 08 Apr 2021 13:12:35 +0000
Received: by outflank-mailman (input) for mailman id 107338;
 Thu, 08 Apr 2021 13:12:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lUUSX-0002WV-Uz
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 13:12:33 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.14.87]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b4d6b0de-8c93-45cc-bd8a-6d97df98261a;
 Thu, 08 Apr 2021 13:12:29 +0000 (UTC)
Received: from MR1P264CA0026.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:2f::13)
 by DB7PR08MB3193.eurprd08.prod.outlook.com (2603:10a6:5:24::33) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Thu, 8 Apr
 2021 13:12:26 +0000
Received: from VE1EUR03FT040.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:501:2f:cafe::ac) by MR1P264CA0026.outlook.office365.com
 (2603:10a6:501:2f::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Thu, 8 Apr 2021 13:12:25 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT040.mail.protection.outlook.com (10.152.18.210) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Thu, 8 Apr 2021 13:12:25 +0000
Received: ("Tessian outbound 700fd1fc53d5:v90");
 Thu, 08 Apr 2021 13:12:25 +0000
Received: from fe5fc99fd01c.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3EC25BE1-5960-4E0B-A80E-0533D6485CC0.1; 
 Thu, 08 Apr 2021 13:12:15 +0000
Received: from EUR03-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id fe5fc99fd01c.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 08 Apr 2021 13:12:15 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VE1PR08MB5775.eurprd08.prod.outlook.com (2603:10a6:800:1a0::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Thu, 8 Apr
 2021 13:12:14 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.034; Thu, 8 Apr 2021
 13:12:14 +0000
Received: from [192.168.0.22] (82.8.129.65) by
 LO4P123CA0302.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:196::19) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Thu, 8 Apr 2021 13:12: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: b4d6b0de-8c93-45cc-bd8a-6d97df98261a
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8Rxb2bddurB77XcSBWAtEMAsJo42fUcRhMctdUBE7Xk=;
 b=mFd7BwoHQVAiSiDf0TyS1BtmnbJlxSx8GPjsLQUYaNU29v9KrutmanuEzBLK/lQZiCNAt/5LqK37kFTF24DEMsCJ5soCK/QUqSLWU3fFj4RBfqKkdcSx7V1MyqTEWn0+7x5JQMKC7igTnLklaXaGg/EKN3lnizTCD/LRc2KuYbA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 1f4fb35bf4265cde
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hdbjc484CsDpHzwdm6+6FQ7grYxCRwlQ5XmhP8VqUkCrbOFelfRuHtKaVGe1IOPrOK/1ui3bm3/WGqOwnKHNtfjOHxOwmR0n/dAWMwGgY+gP4DWQ9ArLHAWP15S4FvWIlHr96Sh684fyYUoVs8F8nFnZkJ974mP/dsIdWFgzpKju+I2kkAg8L6geXK5CHth4vjfYhqVw6+AZZ5sUixQy+tZqaIrWnNXuRyv19UZoRwjkemoEcq4yHksuDDtisRIVKPjjAIRSvegqvPY6wZZashYqAHSN/jx+sPMXu35ZZFE2Qu//KxWEWnKMmYx7q2TR7J1Cyr3albaoN4zyCaHN5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8Rxb2bddurB77XcSBWAtEMAsJo42fUcRhMctdUBE7Xk=;
 b=HZCia4ftvjyt0tIt0zgsT/spteL09iLsXi/4soc6NVo/7cboEYRlzkrqgmPHrlm9NqjLRY3vVHXO0L6KdqtFkdSi46XiRBmihWMwgrPU7qSWBgjIlcKK3iXD7Y3ZcBNUO3ZpaVojGS35GLZrCOz+rVCheLzGkUGZKphBAT0uWJO0X/zhBj+xTYtS8oJhzaqwOU/A8/hK/XW9RFpdvJPqMzWjdjQzZEJAwc3oZuLlffZHgX8JkyCEW4A1FJ4FPQJCOg+/tCguh0A77NEItcyXkmXrRTxJJbuItNHzrQwkGdrQG5e9YC7BPMoiCWYE+PuSEh5ugHcaiiyk2wiWxYRjVQ==
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=8Rxb2bddurB77XcSBWAtEMAsJo42fUcRhMctdUBE7Xk=;
 b=mFd7BwoHQVAiSiDf0TyS1BtmnbJlxSx8GPjsLQUYaNU29v9KrutmanuEzBLK/lQZiCNAt/5LqK37kFTF24DEMsCJ5soCK/QUqSLWU3fFj4RBfqKkdcSx7V1MyqTEWn0+7x5JQMKC7igTnLklaXaGg/EKN3lnizTCD/LRc2KuYbA=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=us-ascii
Subject: Re: [PATCH v2 3/4] xen/arm: Reserve domid 0 for Dom0
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <19fd45ff-b373-dd89-9377-79cb77ffee5b@suse.com>
Date: Thu, 8 Apr 2021 14:12:12 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <F99D2C5F-B7E0-418D-8A41-D8CFB20933C9@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-4-luca.fancellu@arm.com>
 <19fd45ff-b373-dd89-9377-79cb77ffee5b@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0302.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:196::19) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b97c0583-f2c4-4bf4-26b2-08d8fa8ff423
X-MS-TrafficTypeDiagnostic: VE1PR08MB5775:|DB7PR08MB3193:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DB7PR08MB319316207E97C93A50A648B0E4749@DB7PR08MB3193.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 afVvdS5m1XhB/jTweGVgTlE5Gx6CBAIOdab8X1rmPoJdoQ8cgZCoU/ZxRis8B61qgssdMOq55lj+7csdWS1qRO1710xV3MtUDvnSJLm9dOhSkbtfEQegRe270HyZ1FDEViMqG8Qjsat1LsTZQq7uctErqEwfvP0FaV2G6B1ztv57vb+S4+qeLHCGMTfM+Bpk4muv13S6x0WoDcRkqD5NHaXKVt08Ymu+3jKuZkbc01mpYYeI17wIYzOCruWuRABRgXOKWwQ0w/Ei8njTTo0A/LrNq3Ao6oALvqHS2ZHAJM82FzfC4JMAgdgSjcM59VcEb7jU+lzMMQrhpx9qm7UL3U2/+74ntLTK8lndnAwFQVmn37WkiP2MMDB0+alYFRsts9WfbAycmVNV1KqguXwMDvh5t3gMOzafc2LYHHQb5dasN2hpzHR+wCPQVrZUrsWzjc+4HL9Ev7R6tjvS/tLiKESgMVuE3jZ3cR4SvxEMdDUTisAGbs/MnI8sk9AWEU6VMhnYn5m4w50HTtffD48G8QwoyRcqjavdjm/FMxZC95ENuZCO96kR63AtQQli31OH65ELBx8jhwOYfbAfWTi6NdU0LqSuabLad5n6qjQqaOd5U9cKSbOUjBonzP3uSz8LM276sKItCgKoZE0r2SUiPUw1kr03V9c0NITdEkLrDXfslJLJEEs9PaanTIkTwZxS+5tEWyODa7j36RC67W9BbiVAnDEJFDechzA7ktYrO14=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(39860400002)(136003)(346002)(366004)(33656002)(956004)(316002)(38100700001)(2616005)(52116002)(66476007)(2906002)(66946007)(4326008)(53546011)(66556008)(36756003)(38350700001)(6486002)(186003)(5660300002)(16526019)(54906003)(8676002)(478600001)(44832011)(86362001)(6916009)(8936002)(26005)(4744005)(16576012)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 =?us-ascii?Q?KoVCCYHVWnK8Ky6mVBaAuBN47A56zuT8q4T0zsH9I1SKBERaB/8JHMYenT2w?=
 =?us-ascii?Q?YweS8kuyXaxkBeubxwPsBvKCmWiSy6MFlTM0HDxsTWlUuzh4MxFypHXdwF5e?=
 =?us-ascii?Q?jpvrHQomjGA4rzF6uUlPoYROWRQYoSyVbYdoklCXq+lMs4cTvfjbCz8+7iJI?=
 =?us-ascii?Q?jFSxLlFYU48i6mwXmWi0xO89LRy0hZo6qrWOqqUBPznpeJMIya2F0BF569L7?=
 =?us-ascii?Q?9YXqvtuHCXC5u5U686qGqkdzp3nwY756V0OP9MUI73ZbhdUt8pmBNWgsUpu4?=
 =?us-ascii?Q?l83Hi6TH92syjU5hNZLsU3KeezjXNNqe8RpDUyFlprJzmk4rTiqu/gaIaIZC?=
 =?us-ascii?Q?RC6HgoO27Z7EwPNXenZPI7yrju5U3bJ0OtqMjz/rBcFx3bY4HYr9pVFDPsvj?=
 =?us-ascii?Q?S7Yb8QMJr+ECktjeOx3SKiLAKdkpELRCAATgZN2zgbSDC1BYCmGQyJcbpKLU?=
 =?us-ascii?Q?yZvdOu1kKeoQZJfMtIPV/jdmIIysBQYqzv6Z85Hfstk5EiJODp/MI6fjcB55?=
 =?us-ascii?Q?r3JFzUgw9wvn4Fusd9qIqnWSwQMIxvmlh379x3SdA8KAf3khSdOANvmZB0kI?=
 =?us-ascii?Q?aDwQ3pa1YUpUrr+5yv6OclLczsyT2oJecPp/a0sfPuES0OCiZkHZDQ27cWGc?=
 =?us-ascii?Q?H7BMKtlogcFJrLMUAIlg8iYGCdvaGjMIr/deIIWlCtuWF1gpRLNAtAcAijsI?=
 =?us-ascii?Q?A6ORbS8lyEmEb/zcOaCNYJprxVGon4UP5dkpDScUhzbfVpk/G2PM78g2Yugu?=
 =?us-ascii?Q?XadvDedQgZMlcpbsMJ3m4yoEM4Kp6KtgDBxB5qFzbZiVaMAVtReGQ+KdIX0F?=
 =?us-ascii?Q?AB6fKtyZ2TG5AdekdPtj1m4XRkTGesz2BMeqRj8XpVq9LPXhfhT/seizQ48Z?=
 =?us-ascii?Q?GHdK7impaFMAa41ti7KTLipGLzZ990O6vZfxy9THkNbaDcfwfzsTTbROoxMu?=
 =?us-ascii?Q?z83oWO3+zEOymVuZQFGQYjMwwwAFdRITUjH6s2/kMPizWt1E8dsccjk7s2F5?=
 =?us-ascii?Q?OFLbHv+FOITsUkyRghyvlquDpnam7rZ8dYPTBfKV+CeKQAtp32Z2B0tAFE5U?=
 =?us-ascii?Q?fI9jyQIDDs03N6tiaJJH0YFQfnsf2omhA1d9MHpecsQKT5fbYiY9TllJaftg?=
 =?us-ascii?Q?gm6wDj5M5UI4Ylr8rQqE2iWW+Ad04jm4NI6fdrMGs1Bs+RYF1VKxa9rEaXK5?=
 =?us-ascii?Q?qjDScY/Ll3Op3fBBf9hpWXEMCJTdwHNWg1pxmOU/O6p88ubvDccriOD4tbMn?=
 =?us-ascii?Q?NsFcLXnvW41g/igEAfNBDXQ71QegkjbRPYYngebR+gKpyyZwlElEBNoEaTMg?=
 =?us-ascii?Q?gmCxKCD2k86YQnd6L6KNEvR8?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5775
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT040.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ef0a77e2-2037-4d1e-8321-08d8fa8fed9c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Nmh+yGh+A5LkUxeR1athsiOMM7RpkAcRMEwpoaoCqTuUcGyB9JcsJxnIfRJX/M1qDBR75qMuEueHacdIFZQS6CsPdYydXG6fezHZXoREzE77d9J+sLrbKYEJtjqBFXF1s7Tpujr9gNfiBJIVpiPZ0MjtEcMg6wWRJ2pKWRPDvLcwSrQnvnhnZ7jAP5gBknEF96g92a32JqshXF1Csk7V65va6x9mLPW1msZLCgUmnDRWiHItaRCiiqjAWC5Wpjxg+nm0VAlZjPsNi8Gajjcs5Vfft9BC8MTK20MszlK8DZM6GoSVFMOBJsXWvMuxFFJCpbXsbP6tz+EsosktBqfM9FGc6lFs5YNy3yf1E2+pY+d1iDKcW2g20pW2t+MIV8+dt3kC6G9g/qOuQJcvenHdLEdu6mPML41TnkOuQT8S/zOiE5pAGab7kEWZ/PBQDxluj69CkFd66oCdzWAk3fd3RypDiM2EupEpk/OSHNFi0+2RthTyVDYqdsZC2xfUXGeUOD2orFWVvD9xpSEi93bMhzG/SYxTRUn+pHsC/pJv1AFuF4ZpTOUMPjyl3T3GJaODOEgjSJEtyO1oZ8LvcgEsxgFtnL6JaOIQgvlTLU48DEpNYSze/q6u8jtqxZS7PrrYZdGS34YVOL4gkCs4QNJmm4aXICwPMCA0rosNn5CzaVQ=
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:(4636009)(39860400002)(396003)(346002)(136003)(376002)(46966006)(36840700001)(26005)(16576012)(4744005)(8936002)(82740400003)(356005)(478600001)(16526019)(4326008)(81166007)(336012)(2906002)(186003)(6486002)(47076005)(53546011)(70206006)(70586007)(316002)(33656002)(6862004)(2616005)(82310400003)(36756003)(5660300002)(36860700001)(44832011)(956004)(54906003)(86362001)(8676002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 13:12:25.4859
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b97c0583-f2c4-4bf4-26b2-08d8fa8ff423
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:
	VE1EUR03FT040.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3193



> On 8 Apr 2021, at 11:46, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 08.04.2021 11:48, Luca Fancellu wrote:
>> --- a/xen/common/domctl.c
>> +++ b/xen/common/domctl.c
>> @@ -419,7 +419,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) =
u_domctl)
>>             {
>>                 if ( dom =3D=3D DOMID_FIRST_RESERVED )
>>                     dom =3D 1;
>> -                if ( is_free_domid(dom) )
>> +                if ( (dom !=3D 0) && is_free_domid(dom) )
>>                     break;
>>             }
>>=20
>=20
> I don't think this change is needed - I don't see how dom could
> ever end up being zero. The code is already intended to be safe
> wrt accidentally creating a domain with ID zero. (Granted "rover"
> would benefit from being moved into the yet more narrow scope,
> which would make this even more obvious.)

Yes I agree, I will remove the check in the next version patch.

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 13:14:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 13:14:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107345.205217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUUUJ-0002gj-5R; Thu, 08 Apr 2021 13:14:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107345.205217; Thu, 08 Apr 2021 13:14: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 1lUUUJ-0002gc-2H; Thu, 08 Apr 2021 13:14:23 +0000
Received: by outflank-mailman (input) for mailman id 107345;
 Thu, 08 Apr 2021 13:14:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lUUUH-0002gX-Lg
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 13:14:21 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0e::620])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3e289106-0e25-4dae-8616-6ca573243a20;
 Thu, 08 Apr 2021 13:14:20 +0000 (UTC)
Received: from AM0PR06CA0101.eurprd06.prod.outlook.com (2603:10a6:208:fa::42)
 by DB6PR0801MB1879.eurprd08.prod.outlook.com (2603:10a6:4:73::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Thu, 8 Apr
 2021 13:14:17 +0000
Received: from VE1EUR03FT007.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:208:fa:cafe::43) by AM0PR06CA0101.outlook.office365.com
 (2603:10a6:208:fa::42) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Thu, 8 Apr 2021 13:14:17 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT007.mail.protection.outlook.com (10.152.18.114) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Thu, 8 Apr 2021 13:14:16 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Thu, 08 Apr 2021 13:14:16 +0000
Received: from 978434886303.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E4F751C9-38E7-495D-A0F3-B65E24060023.1; 
 Thu, 08 Apr 2021 13:14:05 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 978434886303.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 08 Apr 2021 13:14:05 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3374.eurprd08.prod.outlook.com (2603:10a6:803:82::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Thu, 8 Apr
 2021 13:14:01 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.034; Thu, 8 Apr 2021
 13:14:01 +0000
Received: from [192.168.0.22] (82.8.129.65) by
 LO2P265CA0169.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a::13) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Thu, 8 Apr 2021 13: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: 3e289106-0e25-4dae-8616-6ca573243a20
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MCEtlsV4c+E+xeFipsp26PtPjOMFY6HsCWyCqiZIvZE=;
 b=hXugXrmGNFRlk6D0LcVgZQiJlkugVCkAgl5F3eDEgV+bnj4NPMDIo7S1tChtylDwOczeHUEjlBZbU0Qm4GqIYfrMVl8ljXNbYgduTmZwbwsuK/rqlJe6fv9W/vCGY+h6GuHlhxKdsU3CXMBoRs1ZdAuiTulYOzf3uidWtuiBBic=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: b9e483ce60a55f8e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OcqwhaIlO5VONt/aoTd4Pglo4M53Tqesbuht6TFLncpdqBFdjzu2XmcaHQzmJ4eJg+U7yD/XFxys4t4Ld6CE3u5ghYogYL80AkEb7/g1gvGcwIS9kRa92fmWX812emY/WGisOA2JnrV0wU2s2wgzBU7Y9dkM8yFavnKZtOsMCfjzL7nDCLijL/b5L/hIvg+A+Ciyx2ZyJWKR5rZ6scsCrJMq/dtnB+DUiSGWLeRYqEbwpLZLt3pdNDE6zzVsK8zIpKPc+4PBhchF/JizjjqPLfeVbB6050yOjI1sgETvxm8NNJWKziNgKATpLgpCB+N0+/ambOeY4yuztfTKrUwgyQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MCEtlsV4c+E+xeFipsp26PtPjOMFY6HsCWyCqiZIvZE=;
 b=QSxLKBhAgu6XU4LsN4PGqRa7d1VB/YMv/ALBlTfknXcckPGgh3VauEKt3AnXXQ2R3ZUJU2ZySrBrY6A1C7GhI/V2tJWwdn7zcbIs33+KmyR3+Zo9YsesqjzSK4ahpCGQyGV7VRnMbsTxCYN6fIJ+fKmrowW20jvnDqfKPMwrafuVobEwlbheHCU5R72rO9wkSbAooNRfQ30GmZEYUD+zwBLqbVEAe5FZpgplONQJBxk5wfg8MxPGX+K7r9YbCBra9RypweNOrlQkAsrsTbbe5KdctIMwWMZyi8LCsgjUYtoeGJJAKSRh+6gdOqrJeqZCkNMZNqPbZbER+6SyrnfafQ==
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=MCEtlsV4c+E+xeFipsp26PtPjOMFY6HsCWyCqiZIvZE=;
 b=hXugXrmGNFRlk6D0LcVgZQiJlkugVCkAgl5F3eDEgV+bnj4NPMDIo7S1tChtylDwOczeHUEjlBZbU0Qm4GqIYfrMVl8ljXNbYgduTmZwbwsuK/rqlJe6fv9W/vCGY+h6GuHlhxKdsU3CXMBoRs1ZdAuiTulYOzf3uidWtuiBBic=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH 3/3] docs/doxygen: doxygen documentation for grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <2b5b6cd8-7898-46f7-10bb-4a9d95da58ef@xen.org>
Date: Thu, 8 Apr 2021 14:13:57 +0100
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Jan Beulich <jbeulich@suse.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <1767D765-CF7E-4F35-8188-B8F027BDB8D1@arm.com>
References: <20210406103603.8530-1-luca.fancellu@arm.com>
 <20210406103603.8530-4-luca.fancellu@arm.com>
 <073e28bc-ad94-429d-6384-744864d12b57@suse.com>
 <alpine.DEB.2.21.2104061425040.31460@sstabellini-ThinkPad-T480s>
 <e15ed7b9-b153-b767-e625-e7a9d2aa76bf@suse.com>
 <DF5BE432-F79E-4874-92DF-60A4DCD9EDBD@arm.com>
 <5cad4ffb-44ec-4cde-f5bb-f59dc3ca59ca@suse.com>
 <alpine.DEB.2.21.2104071424190.31460@sstabellini-ThinkPad-T480s>
 <D0931FDE-29DA-41B0-87AF-EF18ABDDA37E@arm.com>
 <e3edf002-9d60-7836-f7f0-cd9877653c2c@xen.org>
 <2b5b6cd8-7898-46f7-10bb-4a9d95da58ef@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P265CA0169.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a::13) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8b5dba07-5a73-4256-6e65-08d8fa903687
X-MS-TrafficTypeDiagnostic: VI1PR08MB3374:|DB6PR0801MB1879:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DB6PR0801MB1879DC857B500B10EF9772D5E4749@DB6PR0801MB1879.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 KFXuaV1NzTSkhL3B5sqqRjf3I6bhoUb0PgYT0XZ3q/4IwscCFW380vML8LwmxOlhDj58D/8pVaBcF5KmiPgR5d86HXq2j9JAcvlIdMRgRwlxUPqnsALrtwZUYP/LmShkcNerwu+oLq5puhvWFaDBUCLt+Go4LoZ+bNViKy9emn/AaFcFiTHtk9olYpZ47xzKU0Cys2dUcKTlLNtsx1Lj4ffbhkI/qgKBrJHvgAyNhk49GF+sr4T2ijv+iYqjcvPNsiqrRv6TwD+337q0gw8yK1wH0CY9Y5bs18esJDu+IzFNw8sWiHkCyBDYABQ0S0ZRGI/pYsifaXyXxZj07UI2/a0M0EtIkEbOJqMRK21DMQzxGJ85DXItDT67Ec5IbK/JF/NgZrb3AcVL4taur+XW/T44LpMOJp1YKXHNbalhMKVvNWskONiOKeSHCF+AliYudpWyXoMBGwQVLJKwXngRjEzxxvzywEqCjP07Yy/p2YqhnaOqEwNkqHl8qqJvyiPp1hclOAR0I3OUSE2ssW4kHyFQ1oubpsuCqGv4sSPXROgdh974wqstqn7tU0XZZygkMuNDp4TrK+RxPrBUEDAPtz6dYzP0QUzETlkr/MNbqr2BCj4vXYbF08o+emeP7ixzcGmK9/TTfvDirN1909Mi1Z1bYVHct8OPqlsPhVjegoYA4T6dFPyzSuYAa9rSvDRuFX3rhaibO2BL4ag9ho0N41ofi+uenpbwwTZ761ClxIQ=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39860400002)(136003)(396003)(366004)(376002)(2906002)(33656002)(26005)(8936002)(16526019)(186003)(478600001)(53546011)(36756003)(52116002)(5660300002)(86362001)(2616005)(956004)(66476007)(66556008)(66946007)(16576012)(6666004)(8676002)(38350700001)(44832011)(38100700001)(4326008)(6486002)(54906003)(6916009)(83380400001)(316002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
 =?utf-8?Q?7vlk13FPSBwx3ltlX4kf9WI/iG8snNRcd+htJfw?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3374
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	4624b7b9-ce46-4e1b-f698-08d8fa902d5a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7Cq5yUAfboJX7MLFQSmfwF9Xd6GyIQSCCKdkvQArbUQpu6BTS4Eud9Z/QorGGUu3JKVx/XZXqVlbkTOntsPEzd/8oqw8xGoVNJbEm1vJLSUG6qGu/vMHaeqLlYJzdI71s3/SXKesnNIeFOM/sP1Q7oQR0XStGDGA7H4gdcT49TEjkDUDKK+9c4c5F+jCbSVXUKcL0ZKwfqRAOs3Mocu+RBCpztDYI3xvn/RLcjjkAwLVD0Zwx/lRLL8K5q11CCyRBPZOn0Liam2Ca4zj1WSnGX1rnaQkQxCyd3ThxLfKgHzFq9cTZ4CsyBvwNpDQAfh9LMwsBApF2sXp5jxamXgJ7cpKfBTcK+Gd088Nu45hD5G584uM00cl0IHSN+j26POLzbHMwEpsHT+Uyk0g78HAmTNuJIjvUewRVeOW8gUxTfTEDPph+sVyXZIVkUyAkHbKp5LEqmz0Jk6qzyIuk9Bws/EtcyofA27rUIZQrSC4v5/zcxDCmqqcnfG2bfEF+SFlNPQjv8uFc9/xC0+mT/nq2Ht5AC2zM/IrtqgEElJSIbFxvsNF+qbG39z9acTIj1cBu1+RqQDcUx5ydZtTJVhqF+qwVjUyNZvMt8j8CxAdflcmAS9eHqd7UjEaHH9+Yv8xu+IrDvZbx2iQrvrnFJty6ynmojedZhGu0urzjU1QP7Q=
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:(4636009)(136003)(376002)(346002)(396003)(39860400002)(46966006)(36840700001)(2616005)(478600001)(5660300002)(36860700001)(81166007)(16526019)(6486002)(356005)(36756003)(53546011)(16576012)(956004)(8676002)(54906003)(83380400001)(2906002)(6862004)(70206006)(70586007)(336012)(4326008)(33656002)(8936002)(47076005)(82740400003)(26005)(186003)(44832011)(6666004)(316002)(82310400003)(86362001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 13:14:16.8722
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8b5dba07-5a73-4256-6e65-08d8fa903687
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:
	VE1EUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB1879



> On 8 Apr 2021, at 12:50, Julien Grall <julien@xen.org> wrote:
>=20
>=20
>=20
> On 08/04/2021 12:40, Julien Grall wrote:
>> Hi Luca,
>> On 08/04/2021 12:02, Luca Fancellu wrote:
>>>=20
>>>=20
>>>> On 7 Apr 2021, at 22:26, Stefano Stabellini <sstabellini@kernel.org> w=
rote:
>>>>=20
>>>> On Wed, 7 Apr 2021, Jan Beulich wrote:
>>>>> On 07.04.2021 10:42, Luca Fancellu wrote:
>>>>>> Just to be sure that we are in the same page, are you suggesting to =
modify the name
>>>>>> In this way?
>>>>>>=20
>>>>>> struct gnttab_cache_flush {
>>>>>> -    union {
>>>>>> +    union xen_gnttab_cache_flush_a {
>>>>>>         uint64_t dev_bus_addr;
>>>>>>         grant_ref_t ref;
>>>>>>     } a;
>>>>>>=20
>>>>>> Following this kind of pattern: xen_<upper struct name>_<member name=
> ?
>>>>>=20
>>>>> While in general I would be fine with this scheme, for field names li=
ke
>>>>> "a" or "u" it doesn't fit well imo.
>>>>=20
>>>> "a" is a bad name anyway, even for the member. We can take the
>>>> opportunity to find a better name. Almost anything would be better tha=
n
>>>> "a". Maybe "refaddr"?
>>>>=20
>>>>=20
>>>>> I'm also unconvinced this would be
>>>>> scalable to the case where there's further struct/union nesting.
>>>>=20
>>>> How many of these instances of multilevel nesting do we have? Luca mig=
ht
>>>> know. Probably not many? They could be special-cased.
>>>=20
>>> There are not many multilevel nesting instances of anonymous struct/uni=
on and the maximum level of nesting I found in the public headers is 2:
>>>=20
>>> union {
>>>     union/struct {
>>>         =E2=80=A6
>>>     } <name>
>>> } <name>
>>>=20
>>> I also see that in the majority of cases the unions have not meaningful=
 names like =E2=80=9Ca=E2=80=9D or =E2=80=9Cu=E2=80=9D as member name, inst=
ead struct names are fine,
>>> It could be fine to keep the meaningful name the same for the struct ty=
pe name and use the pattern for the non-meaningful ones as long
>>> as the names doesn=E2=80=99t create compilation errors?
>>>=20
>>> Example:
>>>=20
>>> struct upper_level {
>>>     union {
>>>         struct {
>>>=20
>>>         } meaningful_name1;
>>>         struct {
>>>=20
>>>         } meaningful_name2;
>>>     } u;
>>> };
>>>=20
>>> becomes:
>>>=20
>>> struct upper_level {
>>>     union upper_level_u {
>>>         struct meaningful_name1 {
>>>=20
>>>         } meaningful_name1;
>>>         struct meaningful_name2 {
>>>=20
>>>         } meaningful_name2;
>>>     } u;
>>> };
>> If I understand correctly your proposal, the name of the structure would=
 be the name of the field. The name of the fields are usually pretty generi=
c so you will likely end up to redefine the structure name.
>> Unless we want to provide random name, the only safe naming would be to =
define the structure as upper_level_u_meaningful_name{1, 2}. But, this is g=
oing to be pretty awful to read.
>> But I am still a bit puzzled by the fact doxygen is not capable to deal =
with anynomous/unamed union. How do other projects deal with them?
>=20
> While going through the list of anynomous union in Xen, I noticed we also=
 have something like:
>=20
> struct test {
>    union {
>        int a;
>        int b;
>    };
> };
>=20
> We can't name them because of syntactic reasons. What's your plan for the=
m?

I would say that if the fields a and b are not meant to be described in the=
 documentation, they can be hidden, so there is no need to change the struc=
ture itself but we might just add some comment containing
Doxygen tags for skipping them.
In Zephyr they have some kind of structures like that.

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 13:59:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 13:59:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107358.205235 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUVBN-0006S5-OL; Thu, 08 Apr 2021 13:58:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107358.205235; Thu, 08 Apr 2021 13:58: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 1lUVBN-0006Ry-Kq; Thu, 08 Apr 2021 13:58:53 +0000
Received: by outflank-mailman (input) for mailman id 107358;
 Thu, 08 Apr 2021 13:58:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUVBM-0006Rt-85
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 13:58:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d2f863af-5c9b-405d-9c3b-d1bbbd8b8034;
 Thu, 08 Apr 2021 13:58:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B02EAB00E;
 Thu,  8 Apr 2021 13:58: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: d2f863af-5c9b-405d-9c3b-d1bbbd8b8034
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617890329; 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=KUzODZG2Xgs4ToF9/dYG1XxsxKRyVTEXlxtJjk6VVHU=;
	b=SwtFwRbr47eQOg5Y1c/VnKLLIwgAtwsY+2O64Siz1xFin+CFmDWqsoqXZQU2ZM0Ssg6lrx
	reUZAL8X22Jk2jRmyBmI1uwlGPQbBUA+9qMkj0CwYkIhEzammWJ3bvc7fsWUjXUnWqa24P
	BVuWX0y4T00RwtO9XJvGCQgdUplbv0g=
From: Jan Beulich <jbeulich@suse.com>
Subject: x86: memset() / clear_page() / page scrubbing
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Message-ID: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
Date: Thu, 8 Apr 2021 15:58:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

All,

since over the years we've been repeatedly talking of changing the
implementation of these fundamental functions, I've taken some time
to do some measurements (just for possible clear_page() alternatives
to keep things manageable). I'm not sure I want to spend as much time
subsequently on memcpy() / copy_page() (or more, because there are
yet more combinations of arguments to consider), so for the moment I
think the route we're going to pick here is going to more or less
also apply to those.

The present copy_page() is the way it is because of the desire to
avoid disturbing the cache. The effect of REP STOS on the L1 cache
(compared to the present use of MOVNTI) is more or less noticable on
all hardware, and at least on Intel hardware more noticable when the
cache starts out clean. For L2 the results are more mixed when
comparing cache-clean and cache-filled cases, but the difference
between MOVNTI and REP STOS remains or (at least on Zen2 and older
Intel hardware) becomes more prominent.

Otoh REP STOS, as was to be expected, in most cases has meaningfully
lower latency than MOVNTI.

Because I was curious I also included AVX (32-byte stores), AVX512
(64-byte stores), and AMD's CLZERO in my testing. While AVX is a
clear win except on the vendors' first generations implementing it
(but I've left out any playing with CR0.TS, which is what I expect
would take this out as an option), AVX512 isn't on Skylake (perhaps
newer hardware does better). CLZERO has slightly higher impact on
L1 than MOVNTI, but lower than REP STOS. Its latency is between
both when the caches are warm, and better than both when the caches
are cold.

Therefore I think that we want to distinguish page clearing (where
we care about latency) from (background) page scrubbing (where I
think the goal ought to be to avoid disturbing the caches). That
would make it
- REP STOS{L,Q} for clear_page() (perhaps also to be used for
  synchronous scrubbing),
- MOVNTI for scrub_page() (when done from idle context), unless
  CLZERO is available.
Whether in addition we should take into consideration activity of
other (logical) CPUs sharing caches I don't know - this feels like
it could get complex pretty quickly.

For memset() we already simply use REP STOSB. I don't see a strong
need to change that, but it may be worth to consider bringing it
closer to memcpy() - try to do the main chunk with REP STOS{L,Q}.
They perform somewhat better in a number of cases (including when
ERMS is advertised, i.e. on my Haswell and Skylake, which isn't
what I would have expected). We may want to put the whole thing in
a .S file though, seeing that the C function right now consists of
little more than an asm().

For memcpy() I'm inclined to suggest that we simply use REP MOVSB
on ERMS hardware, and stay with what we have everywhere else.

copy_page() (or really copy_domain_page()) doesn't have many uses,
so I'm not sure how worthwhile it is to do much optimization there.
It might be an option to simply expand it to memcpy(), like Arm
does.

Looking forward, on CPUs having "Fast Short REP CMPSB/SCASB" we
may want to figure out whether using these for strlen(), strcmp(),
strchr(), memchr(), and/or memcmp() would be a win.

Thoughts anyone, before I start creating actual patches?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 14:12:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 14:12:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107364.205249 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUVOs-0008KF-1d; Thu, 08 Apr 2021 14:12:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107364.205249; Thu, 08 Apr 2021 14: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 1lUVOr-0008K8-Ur; Thu, 08 Apr 2021 14:12:49 +0000
Received: by outflank-mailman (input) for mailman id 107364;
 Thu, 08 Apr 2021 14:12:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUVOr-0008K3-MI
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 14:12:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id dab48eb7-7b5b-4b6b-a8fa-11f133a1b708;
 Thu, 08 Apr 2021 14:12:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A38BCB032;
 Thu,  8 Apr 2021 14:12: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: dab48eb7-7b5b-4b6b-a8fa-11f133a1b708
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617891167; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7aY8XBU2I/xhPL/+cky9pI9nmJtbbXW1juxdmt5fDgQ=;
	b=dD7jJEJBH6S/5bCD6T4vfcSQLxqil7WO5gG8vrGBdkciiAAjLhzNiDyty1nc+/dhfrvBp5
	qeoUqfa5dWj9qBw3fYjfmcU5OKzurd8XDlCSbLt9qfws30+d9DWyijtTs0drKX2Zhp5AhQ
	9ZSR8Pl3fXF6eEJy8PXjEwbHBWCAJAE=
Subject: Re: [PATCH 00/11] assorted replacement of x[mz]alloc_bytes()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <bdb17131-2184-d8b8-a1a2-37525af02807@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <8c9177fa-9909-b693-e4ee-efdfcfa51273@suse.com>
Date: Thu, 8 Apr 2021 16:12:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <bdb17131-2184-d8b8-a1a2-37525af02807@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 08.04.2021 14:57, Andrew Cooper wrote:
> On 08/04/2021 13:13, Jan Beulich wrote:
>> In the long run I think we want to do away with these type-unsafe
>> interfaces, the more that they also request (typically) excess
>> alignment. This series of entirely independent patches is
>> eliminating the instances where it's relatively clear that they're
>> not just "blob" allocations.
>>
>>
>> 03: x86/MCE: avoid effectively open-coding xmalloc_array()
>> 04: x86/HVM: avoid effectively open-coding xmalloc_array()
>> 05: x86/oprofile: avoid effectively open-coding xmalloc_array()
>> 06: x86/IRQ: avoid over-alignment in alloc_pirq_struct()
>> 07: EFI/runtime: avoid effectively open-coding xmalloc_array()
>> 08: hypfs: avoid effectively open-coding xzalloc_array()
>> 10: video/lfb: avoid effectively open-coding xzalloc_array()
> 
> The flex conversions are fine, but I am unconvinced by argument for
> interchanging array() and bytes().
> 
> The cacheline size is 64 bytes, and the minimum allocation size is 16,
> plus a bhdr overhead of 32 bytes, so you're already at most of a
> cacheline for a nominally-zero sized allocation.

But you're aware that the alignment x[mz]alloc_bytes() forces is
128 bytes? Plus, while sizeof(struct bhdr) is indeed 32, the
overhead on allocated blocks is

#define BHDR_OVERHEAD   (sizeof(struct bhdr) - MIN_BLOCK_SIZE)

i.e. 16 (i.e. the other half of the 32 is already the minimum
block size of 16 that you also mention). IOW a cacheline sized
block would yield 48 bytes of usable space. Specifically a
meaningful change in the PV case from what patch 06 does, where
we only need 40 bytes.

> There can however be a severe penalty from cacheline sharing, which is
> why the bytes() form does have a minimum alignment.  There is one
> xmalloc heap shared across the entire system, so you've got no idea what
> might be sharing the same cache line for sub-line allocations.

This would call for distinguishing short-lived allocations (and
ones to be used mainly from a single CPU) from long-lived ones
having system wide use. I.e. a request to gain further allocation
function flavors, when already the introduction of the one new
xv[mz]alloc() has caused long-winded discussions with (so far) no
real outcome.

> We should not support sub-line allocations IMO.  The savings is a
> handful of bytes at best, and some horrible performance cliffs to
> avoid.  People running virtualisation are not going to be ram
> constrained to the order of a few bytes.
> 
> For small allocations which don't require specific alignment, then
> putting bhdr and the allocation in the same line is fine (if we don't do
> this already), but we shouldn't be in the position of having two bhdr's
> in the same cache line, even if there are plenty of single-byte
> allocations in the theoretical worst case.

That's a request to tweak allocator internals then, not an argument
against the conversions done here.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 14:29:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 14:29:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107375.205267 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUVeT-0000z6-EP; Thu, 08 Apr 2021 14:28:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107375.205267; Thu, 08 Apr 2021 14: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 1lUVeT-0000yz-AL; Thu, 08 Apr 2021 14:28:57 +0000
Received: by outflank-mailman (input) for mailman id 107375;
 Thu, 08 Apr 2021 14:28:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4S9a=JF=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lUVeS-0000yu-LH
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 14:28:56 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cafcd604-8165-4081-b2c0-d9ffcf257ff2;
 Thu, 08 Apr 2021 14:28:55 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id EA691B08C;
 Thu,  8 Apr 2021 14:28: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: cafcd604-8165-4081-b2c0-d9ffcf257ff2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617892135; 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=hKcIDvbx0Q7HLcBfSURZrDLe1vDmZe8S2B8TrFDK0w4=;
	b=R76KX0RTBCFF4ZSveCQO9uAr0SKPJLMis115zQ/epJ3FEkqpGIJJ5NX/S9T+D3YbftQK8I
	/5KBBLA4sIKpvdLVHeL4RAkorBJpPVAKEWm7vKzTEuUl4KzqbGdBbu7r/48Ri9IXyIUb5g
	O8avkk3myqeW/WhQf7ZUsIHrsuz+7GM=
Subject: Re: [PATCH 08/11] hypfs: avoid effectively open-coding
 xzalloc_array()
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <eecf9929-30ee-424d-a371-1462c04cd382@suse.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <c19cef16-b53e-2093-0c96-b67fdb5c736a@suse.com>
Date: Thu, 8 Apr 2021 16:28:53 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <eecf9929-30ee-424d-a371-1462c04cd382@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="snUf9Gs1uOSTa5nsmyGLSDcW0xEWLNSUF"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--snUf9Gs1uOSTa5nsmyGLSDcW0xEWLNSUF
Content-Type: multipart/mixed; boundary="0HMAcnLlTzN2y2UXJT6PhPSFs60at6jar";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.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>, Ian Jackson <iwj@xenproject.org>,
 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>
Message-ID: <c19cef16-b53e-2093-0c96-b67fdb5c736a@suse.com>
Subject: Re: [PATCH 08/11] hypfs: avoid effectively open-coding
 xzalloc_array()
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <eecf9929-30ee-424d-a371-1462c04cd382@suse.com>
In-Reply-To: <eecf9929-30ee-424d-a371-1462c04cd382@suse.com>

--0HMAcnLlTzN2y2UXJT6PhPSFs60at6jar
Content-Type: multipart/mixed;
 boundary="------------C01C29FBF5D590BB1B504EB9"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------C01C29FBF5D590BB1B504EB9
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 08.04.21 14:21, Jan Beulich wrote:
> There is a difference in generated code: xzalloc_bytes() forces
> SMP_CACHE_BYTES alignment. I think we not only don't need this here, bu=
t
> actually don't want it.
>=20
> To avoid the need to add a cast, do away with the only forward-declared=

> struct hypfs_dyndata.
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Juergen Gross <jgross@suse.com>


Juergen

--------------C01C29FBF5D590BB1B504EB9
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------C01C29FBF5D590BB1B504EB9--

--0HMAcnLlTzN2y2UXJT6PhPSFs60at6jar--

--snUf9Gs1uOSTa5nsmyGLSDcW0xEWLNSUF
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmBvEyUFAwAAAAAACgkQsN6d1ii/Ey9Y
8gf+M4X2vvVHWn6wFwlIbezb8m3t56xryBSLMnkZ2HCG8ZBwpomLcPiCW9LJUP1QF+SKQ5Q0FHd2
+4r0PIL4XUHzcG75bg5n/JiVtmCVzhwMwaLQ1+bKV0TTDI2NZrISNC1bT37k845N5xg1UEsbn07U
nuBCB949gtmgJqWRN2hB1DMMvNoEz+s7QwZB1OKj7dZJltmnYULjooAqz29aQW3FGhsQ55w5lHhA
kZ31jKA//8Jz9vUvmZIY/KFsICAshSZmU+jo8SjRcEsEImyGKj7XE4IOPp4lokQrb8E9POymgZ9H
QRQidzLeXJ+/UutTolVUu/vlyGNgX4LVAy+84h3uLA==
=XpOE
-----END PGP SIGNATURE-----

--snUf9Gs1uOSTa5nsmyGLSDcW0xEWLNSUF--


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 14:32:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 14:32:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107381.205279 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUVhY-0001uk-1T; Thu, 08 Apr 2021 14:32:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107381.205279; Thu, 08 Apr 2021 14: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 1lUVhX-0001ud-UX; Thu, 08 Apr 2021 14:32:07 +0000
Received: by outflank-mailman (input) for mailman id 107381;
 Thu, 08 Apr 2021 14:32:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUVhW-0001uW-Tl
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 14:32:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d06d7b27-0037-4351-9f92-b90a3c057ea0;
 Thu, 08 Apr 2021 14:32:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 768DBB49D;
 Thu,  8 Apr 2021 14:32: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: d06d7b27-0037-4351-9f92-b90a3c057ea0
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617892325; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=32e+c7Ksex1CseVidA3EDRgcwsU9vvrltZpKcXhBZ/M=;
	b=IosULcaKy5TYHMuE1L0M+A1WSX+a+M5QzJVsLty+D1w2Xq5lsUDtBOHUbASv93mIp+uejD
	wjAgyW1jNLcjLd8v2jsCrePDhs2lxN14kri01d7uFdCbGFHFqxNLndQE3yaT2yF9k+FKE1
	vhaDBp9Q+j/KCsm5Uym8fpUWhpChfgc=
Subject: Re: [PATCH v3 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
 <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
 <YG78hECMfLSB6Aao@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <8d088ae2-e8a7-7818-5ee8-5ed95ac260c1@suse.com>
Date: Thu, 8 Apr 2021 16:31:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YG78hECMfLSB6Aao@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 08.04.2021 14:52, Roger Pau Monné wrote:
> On Wed, Apr 07, 2021 at 05:51:14PM +0200, Jan Beulich wrote:
>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>> --- a/xen/arch/x86/hvm/irq.c
>>> +++ b/xen/arch/x86/hvm/irq.c
>>> +void hvm_gsi_unregister_callback(struct domain *d, unsigned int gsi,
>>> +                                 struct hvm_gsi_eoi_callback *cb)
>>> +{
>>> +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
>>> +    const struct list_head *tmp;
>>> +
>>> +    if ( gsi >= hvm_irq->nr_gsis )
>>> +    {
>>> +        ASSERT_UNREACHABLE();
>>> +        return;
>>> +    }
>>> +
>>> +    write_lock(&hvm_irq->gsi_callbacks_lock);
>>> +    list_for_each ( tmp, &hvm_irq->gsi_callbacks[gsi] )
>>> +        if ( tmp == &cb->list )
>>> +        {
>>> +            list_del(&cb->list);
>>> +            break;
>>> +        }
>>> +    write_unlock(&hvm_irq->gsi_callbacks_lock);
>>> +}
>>
>> Perhaps somehow flag, at least in debug builds, if the callback
>> wasn#t found?
> 
> I've added a debug printf here to warn if the callback is not found,
> but I see it triggering because hpet_set_timer will call
> destroy_periodic_time and create_periodic_time and thus two calls will
> be made to hvm_gsi_unregister_callback. This is fine, but adding a
> message there gets too verbose, so I will drop it and leave the code
> as-is.
> 
> I don't see a problem with calling destroy_periodic_time multiple
> times even if the timer was not active, and that shouldn't result in a
> message being printed.

If destroy_periodic_time() is to remain the only caller, I guess I
agree. Other (future) callers may then need this function to gain
a return value indicating whether the callback was actually found.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 14:36:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 14:36:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107387.205291 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUVlS-000259-HW; Thu, 08 Apr 2021 14:36:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107387.205291; Thu, 08 Apr 2021 14: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 1lUVlS-000252-E9; Thu, 08 Apr 2021 14:36:10 +0000
Received: by outflank-mailman (input) for mailman id 107387;
 Thu, 08 Apr 2021 14:36:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUVlR-00024x-18
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 14:36:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 928ada40-78f2-4854-a747-687caa77e114;
 Thu, 08 Apr 2021 14:36:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2A3B5B00E;
 Thu,  8 Apr 2021 14:36: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: 928ada40-78f2-4854-a747-687caa77e114
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617892566; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RxzQA4zuNrqZ9s0kEdhXwXuGOKO3Dq2TMZSevrecj9w=;
	b=ExEStKrM7FcyRxG/n0vGb1nCiWJGUM8kGEABNZfYC5S/siwbsN7HISepNug96tx38kSIZX
	O2iHvtP0PlLuqg/WTCW51wkaRLy5j7JqLbVgLNY95jI1ptv/qjv7QSvvQHJ+f4+elDHj9Z
	DtHW6xAanWMwUMoEgmrKzYCKLrD+9Og=
Subject: Re: [PATCH v2 2/4] xen/arm: Handle cases when hardware_domain is NULL
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, Rahul Singh <rahul.singh@arm.com>,
 xen-devel@lists.xenproject.org
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-3-luca.fancellu@arm.com>
 <b79f363c-2220-f187-6840-23205ef37e1e@suse.com>
 <4F221E20-0ABA-499D-A810-4A2A4F20F17D@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b05b29ce-263b-0526-61a6-679427305709@suse.com>
Date: Thu, 8 Apr 2021 16:36:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <4F221E20-0ABA-499D-A810-4A2A4F20F17D@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 08.04.2021 15:11, Luca Fancellu wrote:
> 
> 
>> On 8 Apr 2021, at 11:17, Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 08.04.2021 11:48, Luca Fancellu wrote:
>>> --- a/xen/common/domain.c
>>> +++ b/xen/common/domain.c
>>> @@ -308,7 +308,7 @@ static int late_hwdom_init(struct domain *d)
>>>     struct domain *dom0;
>>>     int rv;
>>>
>>> -    if ( d != hardware_domain || d->domain_id == 0 )
>>> +    if ( !is_hardware_domain(d) || d->domain_id == 0 )
>>>         return 0;
>>>
>>>     rv = xsm_init_hardware_domain(XSM_HOOK, d);
>>> @@ -705,7 +705,7 @@ struct domain *domain_create(domid_t domid,
>>>     err = err ?: -EILSEQ; /* Release build safety. */
>>>
>>>     d->is_dying = DOMDYING_dead;
>>> -    if ( hardware_domain == d )
>>> +    if ( is_hardware_domain(d) )
>>>         hardware_domain = old_hwdom;
>>>     atomic_set(&d->refcnt, DOMAIN_DESTROYED);
>>
>> While these may seem like open-coding of is_hardware_domain(), I
>> think it would be better to leave them alone. In neither of the two
>> cases is it possible for d to be NULL afaics, and hence your
>> addition to is_hardware_domain() doesn't matter here.
> 
> Yes that is right, the only thing is that we have a nice function
> “Is_hardware_domain” and we and up comparing “manually”.
> It looks weird to me, but I can change it back if you don’t agree.

Well, from the time when late-hwdom was introduced I seem to vaguely
recall that the way it's done was on purpose. It pretty certainly was
also at that time when is_hardware_domain() (or whatever predecessor
predicate) was introduced, which suggests to me that if the above
were meant to use it, they would have been switched at the same time.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 14:49:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 14:49:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107392.205303 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUVyi-00036v-P7; Thu, 08 Apr 2021 14:49:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107392.205303; Thu, 08 Apr 2021 14:49: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 1lUVyi-00036o-M4; Thu, 08 Apr 2021 14:49:52 +0000
Received: by outflank-mailman (input) for mailman id 107392;
 Thu, 08 Apr 2021 14:49:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e/uL=JF=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUVyh-00036j-4c
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 14:49:51 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e0df3eb8-86b0-4ba7-aa08-6f00ec7a396f;
 Thu, 08 Apr 2021 14:49:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2C822B141;
 Thu,  8 Apr 2021 14:49: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: e0df3eb8-86b0-4ba7-aa08-6f00ec7a396f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617893389; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=GV22W6QQSs9YGSGTdpX8nuwJiCSWzqdDNV8x/swoSOc=;
	b=Ii6HjbqQPOTHlcBkzvoECv+6G+RczogfKAJxtgaiGYkEBYzxrk13nkNnuzjjVv82KEItpb
	fvOf7kFCQXR22iN2I/6lpT8I2m5fJpMuHS73EKC3I58xOOhLxI4Y4kpD/KcjQ5QPzLdHnK
	7xPtog9x530yuMCajlqkPT4izP1XvHk=
Subject: Re: [PATCH v3 08/11] x86/dpci: switch to use a GSI EOI callback
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-9-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <47616bd4-2e3e-92ea-73de-8ea6fb1992ed@suse.com>
Date: Thu, 8 Apr 2021 16:49:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210331103303.79705-9-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 31.03.2021 12:33, Roger Pau Monne wrote:
> @@ -515,17 +528,44 @@ int pt_irq_create_bind(
>          }
>          else
>          {
> +            /*
> +             * NB: the callback structure allocated below will never be freed
> +             * once setup because it's used by the hardware domain and will
> +             * never be unregistered.
> +             */
> +            cb = xmalloc(struct hvm_gsi_eoi_callback);

Is this comment as well as ...

>              ASSERT(is_hardware_domain(d));
>  
> +            if ( !cb )
> +            {
> +                spin_unlock(&d->event_lock);
> +                return -ENOMEM;
> +            }
> +
>              /* MSI_TRANSLATE is not supported for the hardware domain. */
>              if ( pt_irq_bind->irq_type != PT_IRQ_TYPE_PCI ||
>                   pirq >= hvm_domain_irq(d)->nr_gsis )
>              {
>                  spin_unlock(&d->event_lock);
> -
> +                xfree(cb);
>                  return -EINVAL;
>              }
>              guest_gsi = pirq;
> +
> +            cb->callback = dpci_eoi;
> +            cb->data = d;
> +            /*
> +             * IRQ binds created for the hardware domain are never destroyed,
> +             * so it's fine to not keep a reference to cb here.
> +             */
> +            rc = hvm_gsi_register_callback(d, guest_gsi, cb);

... the one here really true? vpci_msi_arch_update() and
vpci_msi_disable() seem to tell me otherwise (or for the former
comment, they suggest there should be un-registration somewhere).
It also doesn't seem logical to me, considering (yet to be made
work) pass-through of devices or hot-unplugged ones, at which
point Dom0 shouldn't retain IRQ bindings, I would think.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 14:58:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 14:58:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107396.205315 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUW7P-00045L-Md; Thu, 08 Apr 2021 14:58:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107396.205315; Thu, 08 Apr 2021 14: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 1lUW7P-00045E-JX; Thu, 08 Apr 2021 14:58:51 +0000
Received: by outflank-mailman (input) for mailman id 107396;
 Thu, 08 Apr 2021 14:58:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0/ag=JF=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lUW7O-000459-Mp
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 14:58:50 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe07::61f])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e5f8b85b-c7d4-4d05-8608-0671da1808d0;
 Thu, 08 Apr 2021 14:58:47 +0000 (UTC)
Received: from DB7PR03CA0095.eurprd03.prod.outlook.com (2603:10a6:10:72::36)
 by DBAPR08MB5574.eurprd08.prod.outlook.com (2603:10a6:10:1ab::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Thu, 8 Apr
 2021 14:58:43 +0000
Received: from DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:72:cafe::a7) by DB7PR03CA0095.outlook.office365.com
 (2603:10a6:10:72::36) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Thu, 8 Apr 2021 14:58:43 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT054.mail.protection.outlook.com (10.152.20.248) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Thu, 8 Apr 2021 14:58:43 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Thu, 08 Apr 2021 14:58:43 +0000
Received: from 963b099f0f2b.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CC13537B-6A00-4797-A93D-9918F15377DE.1; 
 Thu, 08 Apr 2021 14:58:36 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 963b099f0f2b.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 08 Apr 2021 14:58:36 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB4478.eurprd08.prod.outlook.com (2603:10a6:803:f7::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Thu, 8 Apr
 2021 14:58:33 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.034; Thu, 8 Apr 2021
 14:58:32 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0217.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a6::6) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Thu, 8 Apr 2021 14:58:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e5f8b85b-c7d4-4d05-8608-0671da1808d0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=g607njrYap1mWvRNzaoGJ8ohzB+gz8Q/k0DjxYQW3gU=;
 b=LqUJlrSXKpCK/2aimGZMbabKXA+GSqfYkxmI9ody+te9e6S3dPEfZTrkrqJcM2+u+wrusTMkJ21/bKEjmfVmzVeefl/tdOlzkpiTQAeEJzoeBwtMuVo+EUD6LLJLRHkelCULLpxyGZspXBA/KLQLaIRJEoL4ONrnZjh9ls55sY4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 2e8eb405abbefa82
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dtCa+y7Z177JlzE2gDiWeQdwVV0MucyyI1i6pvur6npG3uYkAoCx9GfMlFzKlf5lTdampdNgnF6fcIlrqh2/f7qCz7cjZZA1mTF9YYu4fwUleJW54ew9mucvCrE2OCCgI1nn6rMLID2w4tZBvAsXd4kOiKG4iug+OeZBJijK+yLzs7qvp+OWtU0YyxQ7Ozfo0JjQVxLJpIsXhOhL4uQeSBHieIqOFkhB0+USwE68OTS0Y9SUfNKQPogYtWcdfSsfYA10QPQ8AhGkxFYDMaq1vTddDEcpiv+A3z30kkkqzOhdbFOB4auH0WIIAJo6VBI19tDOGHkQEZSQXRq+wtDSgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=g607njrYap1mWvRNzaoGJ8ohzB+gz8Q/k0DjxYQW3gU=;
 b=TsCxgl48FJXht3uiAXK0tDpl75iQJxQq/aUcuGKgCB9gbzDdKbekYjsGLwDjjn6U+R7HzKzkH0IKuBpxBPMTQ+co8O2A0kqzAArtTUlvraXoHMiJdn2fgQ1tk8I+PIphhsSdSWSsJs+vy9H/wUN81KrIMojCtOsMpEoY0lChSJfX2B/TVeWky3HHwVXB6a6C3ofhtK4h49UZgn73nip/ezMuRArWOEGgIsUOZxFd5OiOJbITFo/DDv1vQbIkpnzlR4algt7syyxW0K7Vk54TepvdGvOAk3o0jkXiRxjVltqtDvc7J//xJdgCUlt/TRWftfAETDsvWjtX3HNCS7hPjw==
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=g607njrYap1mWvRNzaoGJ8ohzB+gz8Q/k0DjxYQW3gU=;
 b=LqUJlrSXKpCK/2aimGZMbabKXA+GSqfYkxmI9ody+te9e6S3dPEfZTrkrqJcM2+u+wrusTMkJ21/bKEjmfVmzVeefl/tdOlzkpiTQAeEJzoeBwtMuVo+EUD6LLJLRHkelCULLpxyGZspXBA/KLQLaIRJEoL4ONrnZjh9ls55sY4=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v2 2/4] xen/arm: Handle cases when hardware_domain is NULL
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <b05b29ce-263b-0526-61a6-679427305709@suse.com>
Date: Thu, 8 Apr 2021 15:58:23 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>,
 Rahul Singh <rahul.singh@arm.com>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <05D1F0D2-99FE-4A05-97BD-16253E1F8902@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-3-luca.fancellu@arm.com>
 <b79f363c-2220-f187-6840-23205ef37e1e@suse.com>
 <4F221E20-0ABA-499D-A810-4A2A4F20F17D@arm.com>
 <b05b29ce-263b-0526-61a6-679427305709@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0217.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a6::6) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 26d5f099-cbf0-4de3-4752-08d8fa9ecdb9
X-MS-TrafficTypeDiagnostic: VI1PR08MB4478:|DBAPR08MB5574:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DBAPR08MB5574EB7CC91E815F151E474DE4749@DBAPR08MB5574.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 DZipk033k8yce9DNK4w89vbRncRvOIq7XNcqPeXJeN5wpFt+Mz3+Du0VTQnJzn0Wu1kn4ZPhtSjtfq+tXTmcMfBp4AF1FaMwis/EWlRa/CtRVZnTYA0q+F2oaEUeJaLCj5TWZH2oXs7HK8iJMmYzNHnCL6Y8rs3iCnTIH4k0OEAuIFWgIoIyYTkNFax7VuV8fUDjC6/Z30jKugZkrJ98tSPGATvYwl/wsDp5ifQ7+6lHZENxEcC+A79e0c/h4hRR33CkrHCbK4B0yy0c6ziVPhL+Iov+gMEtisWUnSApGEE5wFKdiSKhTXw/gQWsD94QWZ899V5DjsKPwMq4T7vQDny0FFBHA/8Uz0eitZMGUQUqdQZ+5AtKKfdoGpzwuHDiqqgWP/p6FB7/BwWvsYsvmNinqnNptlaffF8ejbWnB3dHcXCNgJ1f9V2ERH1JG1ixLjIRuKUoLDrZwaz14vLh5kSU2DqKTFwUtY2gtfFB3Cz1uBIuLo8QLzUv+9drKrSBeZAekau1KXg3YbVmNOmsr1EPHekisZFUJvjCKMitHIHx66YyVepraX9zSVeQqkpPd1/EWo6TnWXyuvGj+KY2iKb2c6JG8GVo1I9pPLrNJcNvj+cJ1fMWIn8XJWKkkPjrFrwIwryv5E3lLFpJTQHkJ6VfqIzvSYC6ZbHqOb7xAgzH+sokMmEYDt5F7xJ80/KgAdpJZq6b+xmAp1QQzxQz6FgHGLs2B78MTrHq/S/8W2o=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(396003)(346002)(39860400002)(52116002)(2906002)(7696005)(38350700001)(6916009)(6666004)(66476007)(5660300002)(16526019)(66556008)(26005)(316002)(53546011)(6486002)(66946007)(956004)(33656002)(8676002)(44832011)(478600001)(86362001)(36756003)(4326008)(38100700001)(54906003)(2616005)(8936002)(186003)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4478
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	4834f2c9-4cc4-42e9-7b10-08d8fa9ec6b1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	aXLDAjsoo9vcYSLTvnqkDkuiCx69o4vuaAj/sjjH7f3NggkBP6sb5ZgBcVByAOMwdRuPdIhxQ40++nN8j3ZghwMA0JHp3/bQxLN9XBoJ18+1DU8kZZ6IlbwTHyekdNvCwvytIN30OJWULjoHKRFKitAkT2llM08RkN4HuBHEw32PhOObjxkc6VViO4cAeFpIt9z0yqbW73KAmMRz6dGDL5/bHlDwVxQcjW3TIY2K1L1EF/Ly1Z/1PdTNEygnErtleUoCrUXzVeKhw1kX5ucyXkUsUEUFza/Rh0/MW2Gp31v2arLAf/aVoJUkP4goKslbKO5AeHnt7vEiRIKt1FouYfO5xjFwKWaM/zuYz5QqkXilRKCEslZ0gFopxA+T7hNuxBFzfXkkv/vUuZR+HSn3PM5+lxIL4Yq80JtrkF08shMgFOFciLLh4hQcNb2HAw4f0XlL9SaeH+HH+Gprw4zescpTu0SATIsIKaH5EX8fp4IFVJtXdOIBmXEHXUwWqsaQp/CE9ajwifArfVttn9mutPuB1uyJz9qfiBo8wwWpXIN0vgT5MfagCtCYVFRfLtOrqYJoh3r6Ui/4328Kq/C+c+98svw5AEO4qKQhbbUA2jMz+wh1lcw6HReOdMrkN8kuDvxCEZvBQKpYkxi4TKHL8Kq+tVmtQGWux1Iyr7jzoC4=
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:(4636009)(376002)(346002)(136003)(39860400002)(396003)(36840700001)(46966006)(53546011)(8676002)(81166007)(6486002)(956004)(16526019)(6666004)(356005)(70586007)(478600001)(316002)(47076005)(5660300002)(33656002)(8936002)(36860700001)(54906003)(7696005)(2906002)(336012)(70206006)(36756003)(186003)(82740400003)(26005)(2616005)(6862004)(44832011)(4326008)(86362001)(82310400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 14:58:43.6103
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 26d5f099-cbf0-4de3-4752-08d8fa9ecdb9
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:
	DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5574



> On 8 Apr 2021, at 15:36, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 08.04.2021 15:11, Luca Fancellu wrote:
>>=20
>>=20
>>> On 8 Apr 2021, at 11:17, Jan Beulich <jbeulich@suse.com> wrote:
>>>=20
>>> On 08.04.2021 11:48, Luca Fancellu wrote:
>>>> --- a/xen/common/domain.c
>>>> +++ b/xen/common/domain.c
>>>> @@ -308,7 +308,7 @@ static int late_hwdom_init(struct domain *d)
>>>>    struct domain *dom0;
>>>>    int rv;
>>>>=20
>>>> -    if ( d !=3D hardware_domain || d->domain_id =3D=3D 0 )
>>>> +    if ( !is_hardware_domain(d) || d->domain_id =3D=3D 0 )
>>>>        return 0;
>>>>=20
>>>>    rv =3D xsm_init_hardware_domain(XSM_HOOK, d);
>>>> @@ -705,7 +705,7 @@ struct domain *domain_create(domid_t domid,
>>>>    err =3D err ?: -EILSEQ; /* Release build safety. */
>>>>=20
>>>>    d->is_dying =3D DOMDYING_dead;
>>>> -    if ( hardware_domain =3D=3D d )
>>>> +    if ( is_hardware_domain(d) )
>>>>        hardware_domain =3D old_hwdom;
>>>>    atomic_set(&d->refcnt, DOMAIN_DESTROYED);
>>>=20
>>> While these may seem like open-coding of is_hardware_domain(), I
>>> think it would be better to leave them alone. In neither of the two
>>> cases is it possible for d to be NULL afaics, and hence your
>>> addition to is_hardware_domain() doesn't matter here.
>>=20
>> Yes that is right, the only thing is that we have a nice function
>> =E2=80=9CIs_hardware_domain=E2=80=9D and we and up comparing =E2=80=9Cma=
nually=E2=80=9D.
>> It looks weird to me, but I can change it back if you don=E2=80=99t agre=
e.
>=20
> Well, from the time when late-hwdom was introduced I seem to vaguely
> recall that the way it's done was on purpose. It pretty certainly was
> also at that time when is_hardware_domain() (or whatever predecessor
> predicate) was introduced, which suggests to me that if the above
> were meant to use it, they would have been switched at the same time.

Perfect, I will change them back and add all the modification we discussed
In the v3.

Thank you for your feedback.

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 15:07:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 15:07:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107406.205333 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUWFB-00056P-JI; Thu, 08 Apr 2021 15:06:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107406.205333; Thu, 08 Apr 2021 15:06: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 1lUWFB-00056I-Fc; Thu, 08 Apr 2021 15:06:53 +0000
Received: by outflank-mailman (input) for mailman id 107406;
 Thu, 08 Apr 2021 15:06:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3iLd=JF=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUWF9-00056D-Tv
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 15:06:52 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1db68523-bdd4-4d1c-8c5c-0ba8d7586c99;
 Thu, 08 Apr 2021 15:06: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: 1db68523-bdd4-4d1c-8c5c-0ba8d7586c99
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617894410;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=uGGZDYG3lXU3aBLUSepRxFN2FZDljYeu/rPn95gFnhE=;
  b=UX26oM1MQ1OYRqg2GkRFHrib+b0bXJv50CXONqzYN8lI0toyp7jXoBLA
   SoTfAguoif02dBQSrqnmMXemFZIBY0HMC+q8bEk69qd3uXcXkJaGGwz59
   oL/QkM341CJL9IsYdAJIdnnAOlhE/lYy8lx2HtU60rpRirJyLH0ik+yq5
   Y=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: /je1AXmk2CpMdN3X02QpJsZtPjjr7Nx2bt/SoUs0cOEqgp5B+kRDqB1Fi4PyNJ3BKn4xcMruY2
 XPPvvh4EXJWLlk8x9oTP1NDbJOycmXzVwmrLp4SOz9Eosp+MimuP0pvV/ONYcKqthJr2l9vfsw
 Gy5bSFLdyjYmkLaMBVJh+OAKK4wpYQH0MWUzdQ+bZQ5dkdIV6Vir6baLKMrj1FTf9e/J4pY+hc
 DciDxAG6FOh4B3jQtFRjgyED0ajfVhZHgsd6GlzX0ao7zi3hxGKkPFZrrDFZZj+nflzraIR+Kq
 rRw=
X-SBRS: 5.2
X-MesageID: 41168157
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:BgGWvqtFHGQoUHUCe4AbtHxm7skCpIMji2hD6mlwRA09T+Wxi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybde6+AqXYuKdg/gpWeuMcVe/ZLvqgeQfxHW28x88e
 Nbc6Z4AMDtFlQSt6zHySSxDtpI+ra62Y+yg+O29RlQZCVLT40l0AtjEAacFSRNNWx7LL40Do
 CV6MYChxfIQwV1Uu2BCnMIX/fOqrTw/fqLXTc8CwM68w7LtDu06dfBeCSw5AsUUD9E3N4ZgA
 r4ujH+j5/Dj9iLjiXy+kWWxJRQldvnxLJ4dbGxo/lQEBrAoEKFYIxgXpeLoTw6pvq+gWxa7O
 XkklMbEOlYr1/XY2GpsTvhsjOQrwoG2jvZ5nKzxVvlvMDjSzoxB6N69PxkWyqc0WUMlpVY8s
 twrgWknqsSNzzstmDBwuKNcBdQmk+9sRMZ4JUupk0aa6QyQvtst4AFlXkldqsoLWbBx60MNv
 JhN83Y7OY+SyLhU1np+lNix9GhRR0Ib267a3lHvsSU1g5fl2xiw30Zw9QCnmwB+IhVceg929
 j5
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="41168157"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HT8Dmultv7mxzDJpuSVY6GsN8eyL+VxX5AVJ5FCgKRvM4d/DjzFhtKaAekzi/nsaomYgDUOgs567r+vARvXPGI41/87fyFAngUIx2We4Jr+xIfOVY0LFbbXjIweWbKbspYp5yAnaupwd8SlHEZ8jNBKNDGvfjcgnq+5KLt2CKmSCscuSbh7C8bIrNNEnxXDfr8EuHM5yEow/2g7WK8om8HtwYLg2tUEWlwRD+uKOlmPAO2sCxpryd9gDodtc0hpOAobyQACpUwVbVb22TCta4FZN4iz0450VbPdqUV0t7aH3xlQW5ay4srPTHZjZ9MdLSOhSBGOLN8ZLsixAAN+KQg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7CgU6nSaT69CiB5OK9+hxYwcWyQhI/cL9kFgpaJrnj8=;
 b=mgoUIdfICHkkQC8UwIiHKKrvjutM8gNNVGp+lKcmuV5VLOtZSDdgNk/yv7muXB98GQ9SQmEGBpgXGyqllXPkpEpmBRjRtJZQKX7js4038ta0dGRnQdRJtk1PuoPmOOxXWZYOBM7sqg23KJ3kZlceH6YZ+dK3iF9Y8n4lk8bJBy3q6T1mocwDcwyYpuyTFDL7IFDGazA9OZddFEcLcm58DYMv1S2Zg0VablMjO2TqRCsCkBQTmBriDSaz9+3n3ug07tTKWaZ6W0BIkI9eLEpNrNkPFTVbnwGweHYIM7tDqWb6Wexh3+YDWqFiQyLb3jItJZNmzPdrzTBMuR+hNYszBw==
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=7CgU6nSaT69CiB5OK9+hxYwcWyQhI/cL9kFgpaJrnj8=;
 b=J3EdC4coE8THRqfOGLTPG2SjAu3Gc7uGo4YktpBPZc7UeYQa/T0xu6m7dSZEe+Sga2DxN7jfVo4pp7FD2nhTLgiTTYLKsk4pxU1AUXlh9uXCKWl/XbkdiwOSp6gKy0GsO86+hcK0+X1JgTl48DeavnxzrXR2piQzdhxcddCMoTQ=
Date: Thu, 8 Apr 2021 17:06:41 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
Message-ID: <YG8cAXkXCArrKnpD@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
 <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
 <YG78hECMfLSB6Aao@Air-de-Roger>
 <8d088ae2-e8a7-7818-5ee8-5ed95ac260c1@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8d088ae2-e8a7-7818-5ee8-5ed95ac260c1@suse.com>
X-ClientProxiedBy: MR2P264CA0047.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::35)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8ad04bcc-5ece-48ac-d700-08d8fa9fed47
X-MS-TrafficTypeDiagnostic: DM6PR03MB4603:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB460313BB238474C96D9714338F749@DM6PR03MB4603.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: sql6d7Gby9cNLP7Lf1NyH+bESRnmuh9rXvgnOLa+vGiwLtQRAXee/osEnrGXF94TCV0G20T73ntQvQlH27a6mDlVP+zrY76k7i/suPV9iJ/1MZIot/FHN4s2BHNCXmwXZk6xXDJ9vIObNwwX8Tmj4sSw/cmfLxPCj72v+vftWj9+CpIM6kNKzYjRh2HFZOWvir8+wfvgFtiLIQjesbAQ5TFhaYhq2nsPI4cUHPQSRWZbEpLjAR8VRw/Mq+ARsySKP58N47jd+djEI8HNEfymd19Od9YwCuyzVvVQ8xu5rjKvOiq7m/VkREnnc8vy6A6XlgvP0Fabth0YccXrFDO1u74ShxPE4hVEuKtkjZQYpbM0T2iAuza3QU6BRXHo5Ok/qRGLC+3djhHov2fzWl3BtGlEZOF/aWYDefnRS/ZhaZWk8b7otbzCb06zaOHNgak0BuRMvJ+HYGAMO01d0Rtgpq+/hF9g/gkOmqz8wiR4xWTqy19/x/olBArsCdSqA6si6k45dCgqHgcbm7zPfRDX1j2sOejoBzORFVksFq8smeb8dv9RDSZFRCzIdTqOYlbQgvbnHznPyhIObNx6R7e48SND2ZcE1d4utOF9OQSVs4MIwmz/nyYZnheo+ok8W9AEyoOugTN2ISRdiZtoP4p31ZzdAxjX+kUUR3BUbQ3Qkm8=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(39860400002)(396003)(366004)(346002)(376002)(66556008)(85182001)(6666004)(186003)(16526019)(26005)(66946007)(5660300002)(66476007)(54906003)(6916009)(33716001)(53546011)(316002)(4326008)(6496006)(6486002)(83380400001)(8676002)(478600001)(8936002)(38100700001)(2906002)(956004)(86362001)(9686003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?fh8wrIutr/lHfhLAtjitTbuPQPprKcxSG2mhG4U?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 8ad04bcc-5ece-48ac-d700-08d8fa9fed47
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 15:06:46.2548
 (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: JXfZZppFUTKXDoNn7jpgupUTySJUE3ePHNZzWhfx2aAlxVVXs9xLE6gPk+gcFdrCnAv+ffBu6ukNXRLE180myw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4603
X-OriginatorOrg: citrix.com

On Thu, Apr 08, 2021 at 04:31:59PM +0200, Jan Beulich wrote:
> On 08.04.2021 14:52, Roger Pau Monné wrote:
> > On Wed, Apr 07, 2021 at 05:51:14PM +0200, Jan Beulich wrote:
> >> On 31.03.2021 12:32, Roger Pau Monne wrote:
> >>> --- a/xen/arch/x86/hvm/irq.c
> >>> +++ b/xen/arch/x86/hvm/irq.c
> >>> +void hvm_gsi_unregister_callback(struct domain *d, unsigned int gsi,
> >>> +                                 struct hvm_gsi_eoi_callback *cb)
> >>> +{
> >>> +    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
> >>> +    const struct list_head *tmp;
> >>> +
> >>> +    if ( gsi >= hvm_irq->nr_gsis )
> >>> +    {
> >>> +        ASSERT_UNREACHABLE();
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    write_lock(&hvm_irq->gsi_callbacks_lock);
> >>> +    list_for_each ( tmp, &hvm_irq->gsi_callbacks[gsi] )
> >>> +        if ( tmp == &cb->list )
> >>> +        {
> >>> +            list_del(&cb->list);
> >>> +            break;
> >>> +        }
> >>> +    write_unlock(&hvm_irq->gsi_callbacks_lock);
> >>> +}
> >>
> >> Perhaps somehow flag, at least in debug builds, if the callback
> >> wasn#t found?
> > 
> > I've added a debug printf here to warn if the callback is not found,
> > but I see it triggering because hpet_set_timer will call
> > destroy_periodic_time and create_periodic_time and thus two calls will
> > be made to hvm_gsi_unregister_callback. This is fine, but adding a
> > message there gets too verbose, so I will drop it and leave the code
> > as-is.
> > 
> > I don't see a problem with calling destroy_periodic_time multiple
> > times even if the timer was not active, and that shouldn't result in a
> > message being printed.
> 
> If destroy_periodic_time() is to remain the only caller, I guess I
> agree. Other (future) callers may then need this function to gain
> a return value indicating whether the callback was actually found.

There's also pt_irq_destroy_bind which likely cares about the return
value, so let's return a value from hvm_gsi_unregister_callback and
check it in pt_irq_destroy_bind.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 15:23:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 15:23:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107412.205345 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUWV0-0006v6-6U; Thu, 08 Apr 2021 15:23:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107412.205345; Thu, 08 Apr 2021 15: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 1lUWV0-0006uz-3O; Thu, 08 Apr 2021 15:23:14 +0000
Received: by outflank-mailman (input) for mailman id 107412;
 Thu, 08 Apr 2021 15:23:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3iLd=JF=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUWUy-0006uu-1P
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 15:23:12 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e3728f53-766f-46ff-be71-92d0b686487f;
 Thu, 08 Apr 2021 15:23: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: e3728f53-766f-46ff-be71-92d0b686487f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617895391;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=4KU8twvSkDKRI1bCA66Z8y9pvrij5UKphJG8t8KKZSI=;
  b=U3pXZ1Kx0RsFQVrilvcSZg0JyPl3DAWn9vzgC0u3HGVkdHjGZavdAFho
   h/bkBMCJs6MY1fSdT4aAanBdgFJJS8FySxqL0JoMWKpyFXnImF/4NUkdY
   dzACFCB1e5mSbETWvLTRu9tJbkqD0MWbXW96HEbxjRgixMdoWCwtmSAfD
   Y=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Gi2IRrHB5VNRa/sTmTw1QNgNq1EVQykaIyuSUJ4ttvwUYXWgKs3JqB8YScUaYYRO2WRazUjnV2
 z8nXzYyJAqDnpjfJVE4tg0qxYh2QW1f5B2I94iUWLk+tN4I/VQRj13yb/DXuYw3bPd9jPBuyhz
 HClKqTaxvATv5WkCE7LTNr1aghZs7k1L3fw9y1BdoHs7+z7xDE48b+kTAcGJv67IZe880Um8ay
 KhXxQeeUHTruT3w5JemuOiRR+nd9Q9Nm4k+DPU3P6dD/adrphZR1Nq7JAZyPhRM8U1XctI0icN
 WUg=
X-SBRS: 5.2
X-MesageID: 41562848
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:aUGBwKmcgbP7UcLgCSV8IjllGm7pDfO9j2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN/AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 tdWoBEIpnLAVB+5PyW3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0ZNi+wOCRNNW57LLA+E4
 eR4dcCijq7YHIMbtm6AH5tZZm4m/TgkpX6bRkaQyM28QXmt0LS1JfWMTi9mi0fXTRG3Ks4/Q
 H+/TDRy62/v5iAu33h/kDJ6ZA+oqqF9vJiA4i2htEROnHQjG+TFflccpmjmBxwn+218lYtl7
 D30mYdFuB+8WnYcG3wgTaF4XiY7B8U53XvyUCVjBLYyKSTLlJKaLszuatjfhTU8EYmtt1nuZ
 g7p16xjJZLEQjG2B30+tmgbWAVqmOPvXEgneQP5kYvN7c2Vbk5l/16wGplVL0EHC789bk9Fv
 hvAMz29J9tACynRkGckW91zNO2WHMvWj+AX0gZo8SQlwNbhXZj0iIjtYEit0ZF0Kh4Z4hP5u
 zCPKgtvLZSTvUOZaY4IOsaW8O4BkHEXBqkChPfHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ
 PdFHtFqG8bYSvVeIyz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykvGnv+4UDqTgKr
 iOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+dEmJpu7NN432ps3WePveP9PWYHUZc1K6Jk
 FGcCn4Jc1G4EzucGT/mgLtV3TkfVG63Z8YKtmZw8EjjKw2cqFcuAkcjlq0ouuRLydZj6AwdE
 xiZJfukqaxo3iK7X/Fhl8ZfyZ1PwJw2vHNQnlKrQgFPwffarAYoeiSfmhUwT+hKgJgSdjVVC
 pSvU5+967yD5H4/1FsN/uXdkahy1cDrnODSJkR3oeZ493+R58+BpE6HIprFQvKEBRxsR1wqH
 hKbTIFQkO3LEKvtYyVyLgvQM3Pfdh1hwmmZeROr2jEiEmarcYzAkcAUyWWSs6RiwY2Tz9yjl
 l8mpVvxIaoqHKKEy8Ske44OFpDZCCyDKhdBAqIXolSh4vmYRp9V2uMmDychSwiY2aCzTRjuk
 XRaQmvPd3bCFtUvX5Vlpzn9155bU2xVUN9YHISi/w0KU32/lJIlcObbKu61GWcLmYYyuYGKT
 fffH85OQV13e260xaThRePHXgr3Y8VI+TYFbgvGoujnU+FGcmtr+UrDvVU9JFqOJTSqecNS/
 uYYBLQAzXiCe8lsjbl0UoNCW1Rkj0Dnvzp0hG+szT98347HPbIIFNpA5scOMqR6mD4R/COlL
 V15OhFyNeYAyHUUJqhz6qSUhtobjX0ikSyR/szqZ9Vsbkp3YEDVqXzYH/t7jV/wB46LM3Ij0
 sQT6Rw3aDZNuZUDr4vUhMc2mBsqc+GI0QquDHnG+MSfVkiiHnAItOCioC43YYHMwmkpAHqP0
 OY/DAY1/DZXzGb3bpyMdN6HU1mLGw94m9l5uWMasn5DxirbfhK+B6fPmWmeLFQDIiDFrN4lG
 cx3/i428uWfTH/wgbeoH9SJb9P6X+uRYeKOz23cNQ4heCSCBCrmaul4Mm6kTfxR3+aUi0j9P
 F4XH1VSN9ChDkkhJAwyQ6oRMXM0wQYr2c=
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="41562848"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GsBeJIQuIqoa5nk7q+EDNQp4EiEHuTDUBNjOXWWsrsqQzBqTyUi2kIAvRmlRfPwqaCjDijASX45gFAxLJbEBPDxX06TaYyEa9q94huNyzz8RLXSjXKyqMfap3qSWT8aXRYeM64DOQmaVAJj6jj2+o8RqNzN1aLFFHzwhXm7G8ohNRl2hJP1oO6k0I3VwwhJWpmtvOldxxypTqLE4AZc0nD0oF1PybS5s5fMLDkz2jb5ai8PTGq5cCmjQ8cRLc+wDxOjfocbXOcJMaEooo1+TanrwbtMZf2d9vs/7G5cczDoPzTLDQqqj1mPOnDmEbg727AffLjhLrZrYb4qSnUVFJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ToPtUjBIC2bgU6YSW+8amcXda8QXGfemGcE44UtHH5M=;
 b=OHS5MggJzCbLe1fZwAY5szRbaQ4AkBBZDoOqjOcWq7S7DZaJq54nkooi2DTvqP99o8bdG88XY8RL2eGbY6aoam/IhMJEFd9skwoq5XcfcojoRHv/rEGaP7rXeKLR2uxzmAY2OtP54lW4a1YwHGy6DQItvInTjAHeA6pR6QFeoFTFe3y5ujJcqbcZjaJS7o/5eRLuaj+6d/1f2vcPlwWkpu3OVVmsW/8ebV+3h7uNyexummwNhSE/9vbTtMUQEyezcbRRzhagrZpD4052HDaISj0N2AlXAEGA+A26hrPBulNbomzS69dmfejZ+Jhcxk/Bw/4pQYJsiiU/puzrdmAKEA==
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=ToPtUjBIC2bgU6YSW+8amcXda8QXGfemGcE44UtHH5M=;
 b=Z6S4XH4f7WAsk4Utxc74yoMF0lnRlj4YFS3E6VpNbeQS2VjQTe/pCoYDaC5Yvyz/i6NMEEZ9uu9dw9WZCggZSefreqIUmNNU1xqKfao2znAOp3HWZFRVhSptN3hbCy7qha3fL0lXd3LUS6Hl9agjiyEUsBMJCCv14DHu9COkEuM=
Date: Thu, 8 Apr 2021 17:23:01 +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>, Paul
 Durrant <paul@xen.org>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3 08/11] x86/dpci: switch to use a GSI EOI callback
Message-ID: <YG8f1amKV/WHj1/l@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-9-roger.pau@citrix.com>
 <47616bd4-2e3e-92ea-73de-8ea6fb1992ed@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <47616bd4-2e3e-92ea-73de-8ea6fb1992ed@suse.com>
X-ClientProxiedBy: MR2P264CA0133.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::25) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 704f534f-c346-4146-788a-08d8faa23547
X-MS-TrafficTypeDiagnostic: DM5PR03MB2972:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2972BD9D1D96AD0C971B7E348F749@DM5PR03MB2972.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: KOwcSyxykUH+DN4L0jGcB02v4qpsinWY7h2ElwstRwrQTcpiQ1vvCNpWX5g70gDg1LydOp3rcmCILPwB9cBjpySsV1RQc8c+92HKSuvK5jdCPcqkzAHagD5verX5ZwzWiGZdywZDJI61P8o03yu/t6+QXr8+NZVka3ZPyEk6Og6PevSX5xnVHJup1uS1ndVm0hqLRqCInsTKooVOPVWQu9XFMmxc7UOJiPB8028sZsVWZlyQWMKou5rL5a9SObZGJ5k3y/3qYIYXHxNG0fKujMbpCJxEtXXoHtCpFzApjNoKJLNfdYoh74GWgk1ntq3dM0FR826kZt46Sg4jZhCg2UCOq/X3K74SfcdvPBCc/wJ6q2b2t7DxHwsnYBxBE45Z20hJahMngyn3RzL14g2Wi7YPAeL232zCE3NjHZcL2ID5opBiVLSw2siPgW8LUgmrj94414ezOFOxxEsy6mQzDHcQHd9iu6kdbRuViOiNQvJvKLP3KANGaC7BL80DRyQ1P0YmUSx5HI8L5kFn58ByzbAjyCReRA4aWajSn1IbQXs9Y2+toENEXRWHTDtoUutaclldRUpNw8n9rMpJc30RmHOy85Me8D84oI2cta9NW604A+7FQloUjuNYOv/AlnUkdMVsyhq0vGPLJAdT81WkY0f1zcLwP3FqzqB2BSmqJ5A=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(366004)(376002)(396003)(39860400002)(346002)(53546011)(956004)(478600001)(5660300002)(26005)(38100700001)(66476007)(186003)(6496006)(85182001)(86362001)(54906003)(4326008)(66556008)(83380400001)(16526019)(66946007)(6916009)(6486002)(9686003)(8676002)(6666004)(8936002)(316002)(33716001)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?GyN+wkf2+EVaTr/PVL3Jb/Zm1RnQaV/ESwo021S?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 704f534f-c346-4146-788a-08d8faa23547
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 15:23:06.0359
 (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: qXEofUhL/y+T4jhzadqMs1k97zuJkIeQRtXzopFWg0IQw6N42vbHx+ybq6/tQ/b9dOJYw/J0NkWvnqmNkJ8cBg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2972
X-OriginatorOrg: citrix.com

On Thu, Apr 08, 2021 at 04:49:48PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:33, Roger Pau Monne wrote:
> > @@ -515,17 +528,44 @@ int pt_irq_create_bind(
> >          }
> >          else
> >          {
> > +            /*
> > +             * NB: the callback structure allocated below will never be freed
> > +             * once setup because it's used by the hardware domain and will
> > +             * never be unregistered.
> > +             */
> > +            cb = xmalloc(struct hvm_gsi_eoi_callback);
> 
> Is this comment as well as ...
> 
> >              ASSERT(is_hardware_domain(d));
> >  
> > +            if ( !cb )
> > +            {
> > +                spin_unlock(&d->event_lock);
> > +                return -ENOMEM;
> > +            }
> > +
> >              /* MSI_TRANSLATE is not supported for the hardware domain. */
> >              if ( pt_irq_bind->irq_type != PT_IRQ_TYPE_PCI ||
> >                   pirq >= hvm_domain_irq(d)->nr_gsis )
> >              {
> >                  spin_unlock(&d->event_lock);
> > -
> > +                xfree(cb);
> >                  return -EINVAL;
> >              }
> >              guest_gsi = pirq;
> > +
> > +            cb->callback = dpci_eoi;
> > +            cb->data = d;
> > +            /*
> > +             * IRQ binds created for the hardware domain are never destroyed,
> > +             * so it's fine to not keep a reference to cb here.
> > +             */
> > +            rc = hvm_gsi_register_callback(d, guest_gsi, cb);
> 
> ... the one here really true? vpci_msi_arch_update() and
> vpci_msi_disable() seem to tell me otherwise (or for the former
> comment, they suggest there should be un-registration somewhere).

MSI doesn't use hvm_gsi_register_callback at all, since those are only
used for GSI interrupts. I should replace IRQ with GSI in the comment
above to make it clearer.

> It also doesn't seem logical to me, considering (yet to be made
> work) pass-through of devices or hot-unplugged ones, at which
> point Dom0 shouldn't retain IRQ bindings, I would think.

Hm, maybe. I think we are still very far from that. Right now GSIs are
bound to a PVH dom0 based on the unmasked vIO-APIC pins, and they are
never unbound. We could see about unbinding them, but TBH I would
expect a PVH dom0 to just mask the vIO-APIC pin when it has no
devices using it if those are unplugged.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 15:41:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 15:41:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107416.205356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUWmR-0000KM-Oe; Thu, 08 Apr 2021 15:41:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107416.205356; Thu, 08 Apr 2021 15: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 1lUWmR-0000KF-Lh; Thu, 08 Apr 2021 15:41:15 +0000
Received: by outflank-mailman (input) for mailman id 107416;
 Thu, 08 Apr 2021 15:41: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 1lUWmQ-0000K6-Bk; Thu, 08 Apr 2021 15:41: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 1lUWmQ-0006Of-44; Thu, 08 Apr 2021 15:41: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 1lUWmP-0007RJ-PW; Thu, 08 Apr 2021 15:41:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUWmP-0001XE-P3; Thu, 08 Apr 2021 15: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=fLad6rt+z9ZrrFL4rGGD8R96qO/+1PUJbq84GZ91SqI=; b=PzhIkPtAtnfo0K6yD51wdYzm7G
	sxuyJUqRJPQDD3j5mbX8HMNaRkfQOBKCqxjwzGj57Jz2iZFBuSY5H0m+b22wBNOvSA6lRES2cebMz
	jQccrjElBUY5syEpYM06HqnE/5e0ICcCvlLkruRlF50exmlNFcvxeLx8yUx+y2SKpkz4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160801-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160801: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=d0d3dd401b70168a353450e031727affee828527
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 15:41:13 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                d0d3dd401b70168a353450e031727affee828527
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  231 days
Failing since        152659  2020-08-21 14:07:39 Z  230 days  431 attempts
Testing same since   160779  2021-04-07 01:55:26 Z    1 days    2 attempts

------------------------------------------------------------
475 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 140653 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 15:53:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 15:53:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107426.205378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUWy3-0001Mu-4p; Thu, 08 Apr 2021 15:53:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107426.205378; Thu, 08 Apr 2021 15: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 1lUWy3-0001Mn-1d; Thu, 08 Apr 2021 15:53:15 +0000
Received: by outflank-mailman (input) for mailman id 107426;
 Thu, 08 Apr 2021 15:53:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3iLd=JF=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUWy1-0001Mi-Il
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 15:53:13 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ea6da4e3-635a-4bca-84b8-7028da3e8a69;
 Thu, 08 Apr 2021 15:53: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: ea6da4e3-635a-4bca-84b8-7028da3e8a69
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617897191;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=4AVvUw3P9tx0CsXiOj0V7wg72fSLg9LydjAHKVtc7uc=;
  b=IH2Xiosth++D6pbP0c8Mp4VH0zDLvvQT8845A9w+ZeiNvXhBZ0dEiLhi
   FvW/J0QkKL4TF6FZ1RaiJ0Huw7jMiveVrZq2ZHvUJX7Cn3Z6cKcZ0Ui3p
   XxtaLZwQ/NSLwnZuDGo45PSIIEVGcPDy6rPKMLYJaZYHx7ouhAVZQVp9k
   k=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: SRe07+MtLgJcvxu5IuTCZ/S6BeF7zteNFUxrEN3nkVSE0SUnGRyVBe/9JNgBNxbinw2k///+bA
 rjEb10dWH9rDaHLZ3pmE2XCI5KC1iNGwaVhNFEocBEhqOY+IliCMzSmLl9JeLwS/s8zFKq0qsG
 1sbcCqQWR8gxnKJYNWpPRBr6j6KDysqC5d5s4udLDiEIzjbX7X2fs34KTOi4h3WGNwdc4jGHsK
 hqXu2vI+dC3pW8v1yzE77NxWa3osT3uMCKK2WaA7sheT5FaGTuzVJXZvBjvFRqFRgL1Rne25zW
 M2U=
X-SBRS: 5.2
X-MesageID: 41320741
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:H9xnsa/6xF9K8qi+3hJuk+ECdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnb8oN45pRUAKe6UGDdyQ6VBaxBza+n+T3vHCXi6vVQvJ
 0LT4FSAMD9ZGIUse/U+w+9euxP/PCi0ISFwdjT1G1sSwYCUdAD0y5cBhyAGkN7AClqbKBYKL
 Om6sBKpyWtdB0sB6zWOlA/U/XevNqOrZr6YHc9bCIP0hWEjj+j9dfBYnul9yoZOgkv/Z4StV
 Lrvia8zaWlvvG9xHbnphXuxqUTovTN4J9uAMSNj+IcNznjjB25Db4RJoGqjXQOj8yErHosjd
 nQszcsVv4Dl0/5TyWOjjbGnynmzTo05HfpxTaj8ATeiP28fh0WIY5lp+tiA3/kwntlhv5Q+u
 Z3+ljckJxtARbJjE3GlqD1fiAvrGWYiz4fi+IJ5kYvNrc2WftqgqE02lhaK5sEFDKS0vFdLM
 BeSPvR4/tbajqhHhbkl1gqxNStW0I6FQudTn4DvdSI0yNXkGoR9Tpg+PAi
X-IronPort-AV: E=Sophos;i="5.82,206,1613451600"; 
   d="scan'208";a="41320741"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=flg/6oLmIRx1go6ZkbihDtFibqDgH6HOCPwtRkCrNwYCD+rv4YrrUwcjy85MnRwpUdD/+ss24lJ/8H7F67VIPP9sbZvgHKMTVo87PxwtW7ys3bGhFRCYj3qs1RsVsX4dXlj3oaQWlLUpVyYH8vsLxz8/wMorlic75BDHU1q43BYpvsW2fL7SkpH3y498wwBqWo1nQHepJcZu7E5nWmLQkHC52fnB2yk0ae5I5rs6kHnjgn6XYS0B+8GR8unFu77LLgHo5c4QUF3Is2m7ogdnNCQ3jENQ2c99+Zcil/bbV9v31s2ByA00GzVJwcABEzhUmHcST6jq+IT5Jai7HbFzhg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5mHiU/9g+uKx083BG3uqnISBZrvhcoCpPsdv1/QY3bk=;
 b=F2erjNj6SEWEL2HUNA2ICDGAlkHWs6pUcO3dFJRHKZ1SmRNs+DyBJRxqaWQMNjqxFbaQ3Wta6zfabhZWDwT9g92X+UXq2RtKh0YRPy09wqKKfrcs6jFBz4yt8cUlItI4AAHvWLIqbS8HFDXk9cZ2RKOST0ao30XIopqa8drxs2et93al+zpuodDWakpC9gJYKyNvduRVvZA4tzRKJH/wuHMoTmcnZoym9LVXwWC1sm4f0CqkoRZ6gKDGC9jI7WCf38FXJ/vdcGWfXtz/HkbJQt+FjxMcOobyQeRGChGnP34VXucgT3k0j8BOZI3RPcMfxxbF70UvIencBlCnYaTjwQ==
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=5mHiU/9g+uKx083BG3uqnISBZrvhcoCpPsdv1/QY3bk=;
 b=qchTCG+ZZ/1c1uTTbzEzNDZaZQtiD+Q1evO/rzgqbidfDf1X5zGQtvVpWFVKn2rBiCWuGISEyOtfW59zAMlRyKjrMce3Sz1m8fI6lAFUhA+BUVlKEBkjrl2GCGvxz8+ZOC8cZRYSisaxW0kWuvVLoFjOky45LDy0KQ/urbgAqWY=
Date: Thu, 8 Apr 2021 17:53:04 +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>, Ian Jackson <iwj@xenproject.org>, Wei
 Liu <wl@xen.org>
Subject: Re: [PATCH 09/21] libs/guest: allow fetching a specific CPUID leaf
 from a cpu policy
Message-ID: <YG8m4LbLyDXKumAA@Air-de-Roger>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-10-roger.pau@citrix.com>
 <bb7b8cd2-97ae-09d9-61c8-1f84616256f5@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <bb7b8cd2-97ae-09d9-61c8-1f84616256f5@citrix.com>
X-ClientProxiedBy: MR1P264CA0024.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::11) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 75b5c113-c720-4a08-5005-08d8faa66829
X-MS-TrafficTypeDiagnostic: DM4PR03MB6096:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB609642D15E974CAF6D4276958F749@DM4PR03MB6096.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: THpC7owhZx8t721/YiWe4AlbIb1LIIIspshc9ZVhBiFlURsYN9v43g+Ba7Je4F4yAwe+Cktx8czaDmdR0ki+NC3hWOPRLGGMKBlGclifklUGoIQfBcufUBI5zFGGT0zuraFboVrCIwh7NOdXjlSrGGItlpQqqfmlMdTt/ktKyXUzpxXeJQ3AfPxojaEi/cwoIEu86k3qqNuToSS//9JDaveATyGkoEroNOUM8EzL1f9wB4R45edVENcfcuhEEcNprmp+hJYPkyl6XUd7iV85MrB8lfUjMkqKQTYxEji6dIIfj84E5AEm8b31dM609oE2RGz8Uu9QiUxaAVZt0F4gQYgaxnQQuQrYXn2bX9tTiJqeSmO9dN0wjtPXJg07TWopQZTeeTYzorWKrvDfB/JEehh/iY92+ZjLuTgoQE06mwtVX9DK4/caP5AEIz3pLQ3o53TTZXIiduG4LtF5ovyaxqo2r0UMkSQKwnSh2U1Wb8XfF7/d6jYdXE9xCESV3+JlJApxfDxqNSMUlceALnK7HLXg+fCjD4ru1O15HrOMN6q5kTaPZMze8nmSPeRmnxG0TYzKokMKEOMdubYi/deuac51DOV6OicQSRa9vRBZLt1EBsl4dxEwRUQlpEIIHIebLGvoMsNwTX9S7/Cdd7jD4cENY7hLvrbziyHcHAuzSow=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(396003)(376002)(39860400002)(346002)(136003)(366004)(53546011)(86362001)(8676002)(66476007)(6496006)(8936002)(66946007)(66556008)(478600001)(956004)(6486002)(6666004)(9686003)(186003)(16526019)(85182001)(2906002)(6636002)(5660300002)(38100700001)(83380400001)(4326008)(33716001)(6862004)(54906003)(316002)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 75b5c113-c720-4a08-5005-08d8faa66829
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 15:53:09.3566
 (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: ixdwvLxjopATS0WQVQv//Bfpo3GB6xyNaVNM+0P3tuKkB0diOKCztRvRo1dCOylF+3Sz37yTR1okrxrWJ/jKDg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6096
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 03:47:20PM +0100, Andrew Cooper wrote:
> On 23/03/2021 09:58, Roger Pau Monne wrote:
> > diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
> > index 48351f1c4c6..a1e1bf10d5c 100644
> > --- a/tools/libs/guest/xg_cpuid_x86.c
> > +++ b/tools/libs/guest/xg_cpuid_x86.c
> > @@ -883,3 +883,45 @@ int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t p,
> >      errno = 0;
> >      return 0;
> >  }
> > +
> > +int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
> > +                            uint32_t leaf, uint32_t subleaf,
> > +                            xen_cpuid_leaf_t *out)
> > +{
> > +    unsigned int nr_leaves, nr_msrs, i;
> > +    xen_cpuid_leaf_t *leaves;
> > +    int rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
> > +
> > +    if ( rc )
> > +    {
> > +        PERROR("Failed to obtain policy info size");
> > +        return -1;
> > +    }
> > +
> > +    leaves = calloc(nr_leaves, sizeof(*leaves));
> > +    if ( !leaves )
> > +    {
> > +        PERROR("Failed to allocate resources");
> > +        errno = ENOMEM;
> > +        return -1;
> > +    }
> > +
> > +    rc = xc_cpu_policy_serialise(xch, policy, leaves, &nr_leaves, NULL, 0);
> > +    if ( rc )
> > +        goto out;
> > +
> > +    for ( i = 0; i < nr_leaves; i++ )
> > +        if ( leaves[i].leaf == leaf && leaves[i].subleaf == subleaf )
> > +        {
> > +            *out = leaves[i];
> > +            goto out;
> > +        }
> 
> Please adapt find_leaf(), probably by dropping xc_xend_cpuid and passing
> in leaf/subleaf parameters.
> 
> Serialised leaves are sorted and there are plenty of them, so a log
> search is better.
> 
> How frequent is this call going to be for the same policy?  With the
> arrays embedded in a policy, they're still around, and serialise is an
> expensive operation.
> 
> I wonder if it makes sense to try and keep both forms in sync, so we can
> avoid redundant calls like this?

I think we would then need to call xc_cpu_policy_serialise whenever we
update the CPUID policy in order to re-generate the full serialized
version, as I expect changes to a specific leaf can affect others
leaves, and thus the helpers should not try to update the serialized
version manually.

Hence I'm not sure it's worth to try to keep both versions in sync, as
it seems easier to load the policy, modify the policy object and then
serialize back only when needed to upload to Xen or to export.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 16:06:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 16:06:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107433.205390 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUXBB-0002wt-Do; Thu, 08 Apr 2021 16:06:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107433.205390; Thu, 08 Apr 2021 16: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 1lUXBB-0002wm-AA; Thu, 08 Apr 2021 16:06:49 +0000
Received: by outflank-mailman (input) for mailman id 107433;
 Thu, 08 Apr 2021 16:06:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUXB9-0002wV-KS
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 16:06:47 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUXB9-0007Mj-Is
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 16:06:47 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUXB9-00068r-HS
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 16:06:47 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lUXB6-0008BY-C3; Thu, 08 Apr 2021 17:06: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
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Subject:CC:To:Date:Message-ID:
	Content-Transfer-Encoding:Content-Type:MIME-Version:From;
	bh=a/KqW0TSwzOSXHOGOVB/7134Iw14myvqY/fkf7LzFxw=; b=HWxzObwAbmsZE1IEODYQSB8qOS
	MCJ/Ki5WcPKC9pFVihDTvzluJYmynBSIGCeE57SFTw5IfWSLpp5DPNl4aK3bD5jdHPyPdS33vYQma
	rL4Sgrpq/a2bG3uwIJ5Jw920rwF1hdWGLwnYdvaNM3Q4zV4ysbOZGYZr5hno7QAow+Qk=;
From: Ian Jackson <iwj@xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <24687.10772.156017.649523@mariner.uk.xensource.com>
Date: Thu, 8 Apr 2021 17:06:44 +0100
To: xen-announce@lists.xenproject.org
CC: xen-devel@lists.xenproject.org,
    xen-users@lists.xenproject.org
Subject: Xen 4.15 is released

Xen 4.15, the product of 9 months' work by the Xen Project community,
is now released.

You can find it here:
  git clone -b RELEASE-4.15.0 https://xenbits.xen.org/git-http/xen.git
  https://downloads.xenproject.org/release/xen/4.15.0/
For more information see the release notes:
  https://wiki.xenproject.org/wiki/Xen_Project_4.15_Release_Notes
There is also the press release:
  https://xenproject.org/2021/04/08/xen-project-hypervisor-4-15/

Xen 4.15 has a number of improvements, ranging from cleanups to
significant new features in a number of areas:
  https://wiki.xenproject.org/wiki/Xen_Project_4.15_Feature_List
(reproduced below).

Thanks and congratulations are due to all the people and organisations
who have contributed.  Well done, everyone!

Ian.
(Xen 4.15 Release Manager)


Notable Features
================

Arm now allows running device models in dom0 (tech preview), allowing
arbitrary devices to be emulated for Arm guests.  Arm also now has
SMMUv3 support (also tech preview), which will improve security and
reliability of device pass-through on Arm systems.

Xen can now export Intel Processor Trace (IPT) data from guests to
tools in dom0, enabling tools like
https://github.com/intel/kernel-fuzzer-for-xen-project or
https://github.com/CERT-Polska/drakvuf-sandbox

Xen now supports Viridian enlightenments for guests with more than 64
vcpus.

Xenstored and oxenstored both now support LiveUpdate (tech preview),
allowing security fixes to be applied without having to restart the
entire host

"PV Shim" mode, for supporting legacy PV guests on HVM-only systems,
continues to be improved; its size was reduced by further factoring
out HVM-specific code. This will also help reduce the size and
improve the security of any PV-only build of the hypervisor.

Unified boot images: It is now possible to create an image bundling
together files needed for Xen to boot into a single EFI binary; making
it now possible to boot a functional Xen system directly from the EFI
boot manager, rather than having to go through grub multiboot.  Files
that can be bundled include a hypervisor, dom0 kernel, dom0 initrd,
Xen KConfig, XSM configuration, and a device tree.

Developed IOREQ server in Xen on Arm for further enablement of VirtIO
protocols as a generic and standardized solution for I/O
virtualization.  Ability to expose a VirtIO block device to a Xen on
Arm guest.  Reference implementation of VirtIO block device for Xen on
Arm (collaboration between Arm, EPAM and Linaro's project STRATOS)


Features and improvements
=========================

Arm Renesas IPMMU-VMSA support upgraded to Supported, not security
supported (was Tech Preview in 4.14).

Switched x86 MSR accesses to deny by default policy.

Named PCI devices for xl/libxl and improved documentation for xl PCI
configuration format.

Support for zstd-compressed dom0 (x86) and domU kernels.

Reduce ACPI verbosity by default.

Add ucode=allow-same option to test late microcode loading path.

Library improvements from NetBSD ports upstreamed.

x86: Allow domains to use AVX-VNNI instructions.

Added XEN_SCRIPT_DIR configuration option to specify location for Xen
scripts, rather than hard-coding /etc/xen/scripts.

xennet: Documented a way for the backend (or toolstack) to specify MTU
to the frontend.

Some additional affordances in various xl subcommands.

Added workarounds for the following ARM errata: Cortex A53 #843419,
Cortex A55 #1530923, Cortex A72 #853709, Cortex A73 #858921, Cortex
A76 #1286807, Neoverse-N1 #1165522.

On detecting a host crash, some debug key handlers can automatically
triggered to aid in debugging.

Increase the maximum number of guests which can share a single IRQ
from 7 to 16, and make this configurable with irq-max-guests.


CI loop (gitlab CI)
-------------------

Add Alpine Linux, Ubuntu Focal targets; drop CentOS 6.

Add qemu-based dom0 / domU test for ARM.

Add dom0less aarch64 smoke test.


Ongoing activities
==================

The Xen community has several interesting initiatives, where work is
ongoing and is expected to bear fruit in forthcoming releases.  Some
of the highlights:

Functional Safety
-----------------

Progress continues to be made within the Functional Safety
SIG. Specifications are becoming more concrete and the group is
working with other communities to establish standards. Additionally,
Xen is working with other projects to converge best practices across
communities.

Updates include:

Progress on MISRA-C rules tailored for Xen in collaboration with
Zephyr. MISRA-C is a set of coding guidelines for the language for
safety. The SIG now has a shortlist of MISRA-C rules that apply to our
project and we are currently evaluating static analyzers for each of
them.

Progress on tracking and maintaining safety requirements including
collaboration with Zephyr to build a Doxygen-based infrastructure that
generates safety requirements documents from in-code comments and text
files. It will allow proper maintenance of safety-related artifacts
next to the code under git and keep them up to date easily in the
community.

RISC-V Port
-----------

The Xen community, led by sub-project XCP.ng, is working on a RISC-V
Port for Xen.  Progress includes:

Development of host and guest virtual memory management code, one of
the key components necessary for supporting guest virtualization

Development of the internal architecture-specific code to conform to
Xen common APIs

Other interesting progress
--------------------------

Moving towards enabling PCIe virtualization support for Xen on Arm
(collaboration between Xilinx, Arm, EPAM and Renesas)

"Hyperlaunch": "Dom0less" pioneered the ability to configure Xen to
launch a static set of virtual machines by Xen at boot time.  But
configuration for these domains was very basic, and focused on
embedded use cases.  "Hyperlaunch" is a new initiative that intends to
make this configuration far more flexible by generalizing it and
introducing a "boot domain" (domB).  Draft design documents for
Hyperlaunch have been posted, and a working group has been formed to
form a plan to complete iron out the details.



From xen-devel-bounces@lists.xenproject.org Thu Apr 08 16:11:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 16:11:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107470.205434 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUXFN-0004LO-Mk; Thu, 08 Apr 2021 16:11:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107470.205434; Thu, 08 Apr 2021 16:11:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUXFN-0004LH-Jc; Thu, 08 Apr 2021 16:11:09 +0000
Received: by outflank-mailman (input) for mailman id 107470;
 Thu, 08 Apr 2021 16:11:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUXFM-0004LB-Fp
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 16:11:08 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUXFM-0007Rm-6M
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 16:11:08 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lUXFM-0006Zq-51
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 16:11:08 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lUXFJ-0008DF-1U; Thu, 08 Apr 2021 17:11: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
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=References:In-Reply-To:Subject:To:From:
	Date:Message-ID:Content-Transfer-Encoding:Content-Type:MIME-Version;
	bh=p8hvqvfT0CllenG6VvoUXfHUObaVmy00s0xutxtDa+s=; b=3gF/2wwnvxZEEUlqlX8GVIxsbg
	mRevahZrTjs9qv2m9TQEu3m8SQiJHYOKtz0kuJiYPFbW+RglV/dd1+xOr6voBGvKYHgDtRmJyL7vi
	1KA7XXAjGMrTQ3FMiQQp4MxeU6n5CCXt6XPCFIcqv5iVYlp0YpuqOYr5AUqX4lqV+fdM=;
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <24687.11032.872713.894725@mariner.uk.xensource.com>
Date: Thu, 8 Apr 2021 17:11:04 +0100
From: Ian Jackson <iwj@xenproject.org>
To: committers@xenproject.org,
    xen-devel@lists.xenproject.org
Subject: Re: Commit moratorium on staging-4.15
In-Reply-To: <24684.14467.302145.214064@mariner.uk.xensource.com>
References: <24684.14467.302145.214064@mariner.uk.xensource.com>
X-Mailer: VM 8.2.0b under 24.5.1 (i686-pc-linux-gnu)

Ian Jackson writes ("Commit moratorium on staging-4.15"):
> The Xen 4.15 branch is now closed for release preparation work.
> Nothing more should be pushed without my specific permission.

Hi.  Xen 4.15 is now officially released.

The Xen-next (staging) branch is now completely open for every kind of
change, subject to the usual development rules.

Please hold off pushing to staging-4.15 until advised.  I need to
do post-release updates do the version number and README and so on.  I
plan to do that on Monday.

Ian.


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 18:08:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 18:08:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107496.205458 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUZ4I-0005ub-Hg; Thu, 08 Apr 2021 18:07:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107496.205458; Thu, 08 Apr 2021 18:07: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 1lUZ4I-0005uU-Ed; Thu, 08 Apr 2021 18:07:50 +0000
Received: by outflank-mailman (input) for mailman id 107496;
 Thu, 08 Apr 2021 18:07: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 1lUZ4G-0005uM-BU; Thu, 08 Apr 2021 18:07: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 1lUZ4F-0000xs-So; Thu, 08 Apr 2021 18:07: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 1lUZ4F-0005zD-KY; Thu, 08 Apr 2021 18:07:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUZ4F-0002D0-K2; Thu, 08 Apr 2021 18:07: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=R2SaxDuht6Aoh5WfKcLPk2Wq1u3WkI/bsnT25uq8gro=; b=z3qb8N4xT+hElkFsBqu7PvNQFZ
	FDlMtcCVgBmdJ+UznxXeWlUMesepskUBrbyvsJ4UXjzGhEDVWclmr+TGCAJvvTqGhykg6rTvHPVgH
	jKp8K7T745iQSTqWf94CbenRIcQDtR43qgrtx+T1z3sINH8w0wKNSb5Rtnr4ldyInLx4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160813-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160813: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=ffda44030a24847c2d78a7363a33d7b53b140d8c
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 18:07:47 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              ffda44030a24847c2d78a7363a33d7b53b140d8c
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  272 days
Failing since        151818  2020-07-11 04:18:52 Z  271 days  264 attempts
Testing same since   160813  2021-04-08 04:18:59 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 18:18:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 18:18:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107492.205473 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUZEs-0006wO-Oa; Thu, 08 Apr 2021 18:18:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107492.205473; Thu, 08 Apr 2021 18:18: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 1lUZEs-0006wH-LG; Thu, 08 Apr 2021 18:18:46 +0000
Received: by outflank-mailman (input) for mailman id 107492;
 Thu, 08 Apr 2021 17:32:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3Pp8=JF=net-space.pl=dkiper@srs-us1.protection.inumbo.net>)
 id 1lUYVw-000379-Qb
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 17:32:20 +0000
Received: from dibed.net-space.pl (unknown [84.10.22.86])
 by us1-amaz-eas2.inumbo.com (Halon) with SMTP
 id 60efd386-e1e1-4491-b657-6c2078e537b2;
 Thu, 08 Apr 2021 17:32:19 +0000 (UTC)
Received: from router-fw.i.net-space.pl ([192.168.52.1]:58848 "EHLO
 tomti.i.net-space.pl") by router-fw-old.i.net-space.pl with ESMTP
 id S2096011AbhDHQsq convert rfc822-to-quoted-printable (ORCPT
 <rfc822;xen-devel@lists.xenproject.org>);
 Thu, 8 Apr 2021 18:48:46 +0200
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 60efd386-e1e1-4491-b657-6c2078e537b2
X-Comment: RFC 2476 MSA function at dibed.net-space.pl logged sender identity as: dkiper
Date:	Thu, 8 Apr 2021 18:48:39 +0200
From:	Daniel Kiper <dkiper@net-space.pl>
To:	Roman Shaposhnik <roman@zededa.com>
Cc:	grub-devel@gnu.org,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: multiboot2 and module2 boot issues via GRUB2
Message-ID: <20210408164839.t5ulhjswnypbqpnz@tomti.i.net-space.pl>
References: <CAMmSBy8Wpwgj3V0U8OhsZCgyAxOjTeHDMt-Vw+om1koopmxTsg@mail.gmail.com>
 <23baec07-a3ae-949a-a1fb-09100efd53e5@citrix.com>
 <CAMmSBy96=FwR0zZy199e0YhFefgZj_PFOMiaB2nKjqdQvKufow@mail.gmail.com>
 <b5ed3a53-5152-aba1-820d-ccab72a82c61@suse.com>
 <YGWH89ubVe104Tnl@Air-de-Roger>
 <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
MIME-Version: 1.0
Content-Type:	text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: QUOTED-PRINTABLE
In-Reply-To: <a8c7fb60-7a95-1a99-4005-b04bcac4c2be@citrix.com>
User-Agent: NeoMutt/20170113 (1.7.2)

On Thu, Apr 01, 2021 at 08:43:46PM +0100, Andrew Cooper via Grub-devel =
wrote:
> On 01/04/2021 09:44, Roger Pau Monn=E9 wrote:
> > On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan Beulich wrote:
> >> On 01.04.2021 03:06, Roman Shaposhnik wrote:
> >>> And the obvious next question: is my EVE usecase esoteric enough =
that
> >>> I should just go ahead and do a custom GRUB patch or is there a m=
ore
> >>> general interest in this?
> >> Not sure if it ought to be a grub patch - the issue could as well
> >> be dealt with in Xen, by concatenating modules to form a monolithi=
c
> >> initrd.
> > I would rather have it done in the loader than Xen, mostly because
> > it's a Linux boot specific format, and hence I don't think Xen shou=
ld
> > have any knowledge about it.
> >
> > If it turns out to be impossible to implement on the loader side we
> > should consider doing it in Xen, but that's not my first option.
>
> Concatenating random things which may or may not be initrds is
> absolutely not something Xen should do.=A0 We don't have enough conte=
xt to
> do it safely/sensibly.
>
> Honestly, I like the idea of supporting something like this generally=
 in
> grub.=A0 Linux already commonly has initrd preparation prepending an
> uncompressed microcode CPIO archive, and I can see a usability advant=
age
> from maintaining the initrd fragments separately.
>
> Looking at the grub manual, this behaviour of the `initrd` command is=
n't
> even documented.=A0 Perhaps that should be fixed first, and then mayb=
e
> `module2_multi` added too?

I am OK with additional Multiboot2 command. Though I would do
s/module2_multi/module2_concat/. Additionally, it should look for "--"
and interpret everything after it as a command line argument for
a concatenated module.

Daniel


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 19:37:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 19:37:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107517.205490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUaT3-0005hu-MR; Thu, 08 Apr 2021 19:37:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107517.205490; Thu, 08 Apr 2021 19:37: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 1lUaT3-0005hn-JM; Thu, 08 Apr 2021 19:37:29 +0000
Received: by outflank-mailman (input) for mailman id 107517;
 Thu, 08 Apr 2021 19:37: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 1lUaT1-0005hf-Pi; Thu, 08 Apr 2021 19:37: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 1lUaT1-0002O1-Hr; Thu, 08 Apr 2021 19:37: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 1lUaT1-0001kN-9Z; Thu, 08 Apr 2021 19:37:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUaT1-0006Kl-95; Thu, 08 Apr 2021 19:37: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=oDOmWlvXrU8RS5GOdrx4fDZ1VW3symIub67ikidRR04=; b=uN72UJV9Z6qG16uRcx5kySGsbC
	/SQwDz8eBopUfvZf2u/3EPz7Q8s7Kl4MtOc20lV9r2JdZTd1Klmr4zu7k7tf+2AAYzD5g3ymZiv86
	32ymZtM1KDh+jOx2fpz8l3KP4WwFIWqCVsx9/6PQEYQ2tznwFDISvOmnPClCNfgNBb14=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160807-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160807: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:<job status>:broken:regression
    xen-4.12-testing:build-armhf:host-install(4):broken:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:guests-nbd-mirror/debian:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-qemuu-freebsd11-amd64:guest-localmigrate/x10:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 19:37:27 +0000

flight 160807 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/160807/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                     <job status>                 broken  in 160709
 build-armhf                4 host-install(4) broken in 160709 REGR. vs. 159418
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160709 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian fail in 160709 pass in 160807
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160709
 test-amd64-amd64-qemuu-freebsd11-amd64 19 guest-localmigrate/x10 fail pass in 160785

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   51 days
Failing since        160128  2021-03-18 14:36:18 Z   21 days   26 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   19 days   24 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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                       fail    
 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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      pass    


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

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

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

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

broken-job build-armhf broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 20:15:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 20:15:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107529.205512 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUb43-0000yw-Oo; Thu, 08 Apr 2021 20:15:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107529.205512; Thu, 08 Apr 2021 20: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 1lUb43-0000yp-Lg; Thu, 08 Apr 2021 20:15:43 +0000
Received: by outflank-mailman (input) for mailman id 107529;
 Thu, 08 Apr 2021 20:15: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 1lUb42-0000yh-Oi; Thu, 08 Apr 2021 20:15: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 1lUb42-00035l-IZ; Thu, 08 Apr 2021 20:15: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 1lUb42-0003yf-AA; Thu, 08 Apr 2021 20:15:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUb42-0007XO-9f; Thu, 08 Apr 2021 20:15: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=WRLhOPc5ZWLY2vcDN8vYvKstT9yQkYcyq12bdT5KY8c=; b=gs/U7mKSISsh3RfBIV0Fg2geup
	/ZX+hRXCZioSKS1UAtAnd6XRO4CATSn3GGJ8nINkmfPitV7b5iQpHlcpacjHTQucWeBZLli5vYYUn
	1DnGz3OadJ4oUtFw0ATzoXlD1yDbt2rvp1w2dHqqci3r4fd3W3uOytcR8AeoLnRk7ac0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160817-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 160817: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=dc4d42302c22f012d78f6495ea23ceaa3e23842e
X-Osstest-Versions-That:
    ovmf=9c08b3e7d5ac177a1ecb3678004fd94164865814
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 20:15:42 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 dc4d42302c22f012d78f6495ea23ceaa3e23842e
baseline version:
 ovmf                 9c08b3e7d5ac177a1ecb3678004fd94164865814

Last test of basis   160799  2021-04-07 16:40:17 Z    1 days
Testing same since   160817  2021-04-08 09:33:32 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>
  Dandan Bi <dandan.bi@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
   9c08b3e7d5..dc4d42302c  dc4d42302c22f012d78f6495ea23ceaa3e23842e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 22:24:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 22:24:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107553.205551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUd3y-0004Xl-Iz; Thu, 08 Apr 2021 22:23:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107553.205551; Thu, 08 Apr 2021 22:23:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUd3y-0004Xe-El; Thu, 08 Apr 2021 22:23:46 +0000
Received: by outflank-mailman (input) for mailman id 107553;
 Thu, 08 Apr 2021 22:23:44 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lUd3w-0004XW-Dr; Thu, 08 Apr 2021 22:23:44 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lUd3w-0005Cx-5L; Thu, 08 Apr 2021 22:23:44 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lUd3v-00010p-QI; Thu, 08 Apr 2021 22:23:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUd3v-0006P1-Pk; Thu, 08 Apr 2021 22:23:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=yyu38yp97msPq0SHoeiWYgSY7J2OBGH9MWFurfv/hZ0=; b=bURQaSKvsOMcUVA7QJJ5Sd2sym
	uTgyq/xepfqrq8EVbGOzjTZGp/5N2+gD4X96nhhpYII45SaZqqDSPxthdt9wRDLPBRUdnXbDRu381
	dAUmc5Lp889srM+wMkzr91dsm3Oxg56XzOPIJYAasiduvZ71G2HzX4r16frjxzOO+tX0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160809-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160809: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=454859c552da78b0f587205d308401922b56863e
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 08 Apr 2021 22:23:43 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                454859c552da78b0f587205d308401922b56863e
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  251 days
Failing since        152366  2020-08-01 20:49:34 Z  250 days  424 attempts
Testing same since   160809  2021-04-08 00:11:10 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1316062 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 08 22:28:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 08 Apr 2021 22:28:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107558.205566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUd8j-0004ic-66; Thu, 08 Apr 2021 22:28:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107558.205566; Thu, 08 Apr 2021 22: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 1lUd8j-0004iV-2l; Thu, 08 Apr 2021 22:28:41 +0000
Received: by outflank-mailman (input) for mailman id 107558;
 Thu, 08 Apr 2021 22:28:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=94b1=JF=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lUd8i-0004iQ-57
 for xen-devel@lists.xenproject.org; Thu, 08 Apr 2021 22:28:40 +0000
Received: from aserp2120.oracle.com (unknown [141.146.126.78])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f7508017-c9c9-4e8b-bdf2-67658635ad80;
 Thu, 08 Apr 2021 22:28:39 +0000 (UTC)
Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1])
 by aserp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 138MORjS113138;
 Thu, 8 Apr 2021 22:28:38 GMT
Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79])
 by aserp2120.oracle.com with ESMTP id 37rvagfgxv-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 08 Apr 2021 22:28:38 +0000
Received: from pps.filterd (userp3020.oracle.com [127.0.0.1])
 by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 138MPQZj114716;
 Thu, 8 Apr 2021 22:28:37 GMT
Received: from nam02-sn1-obe.outbound.protection.outlook.com
 (mail-sn1nam02lp2050.outbound.protection.outlook.com [104.47.36.50])
 by userp3020.oracle.com with ESMTP id 37rvb1sevm-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 08 Apr 2021 22:28:37 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by BYAPR10MB2535.namprd10.prod.outlook.com (2603:10b6:a02:ae::30)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.18; Thu, 8 Apr
 2021 22:28:35 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::f489:4e25:63e0:c721]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::f489:4e25:63e0:c721%7]) with mapi id 15.20.3999.032; Thu, 8 Apr 2021
 22:28:35 +0000
Received: from [10.74.101.36] (138.3.201.36) by
 SJ0PR03CA0144.namprd03.prod.outlook.com (2603:10b6:a03:33c::29) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Thu, 8 Apr 2021 22: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: f7508017-c9c9-4e8b-bdf2-67658635ad80
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=VYSnf9l1OC5O8EYLNRYIZUAWKQaSDVwJBLhdBC1FlwY=;
 b=ZMlPSRw26xZapslhAcdu7WtcORkNC6yJ/hsEHEyQdXDGIQiD3kMMWCDzZgd5d8T/4p4D
 MIsdp2CC6uLNpzzK1tgqtoqqvjSLMt0o5lI32fNnXeMr7nTiWeVSSX5/kIh66SP0aAso
 QwMfedk8CIuorQ39fXKOGyp5Y5eI0GmWCaW0YHtvdNHSOyz5eM0KE7FmbD+tT49iQQ6z
 w7DH9X+dohUo1/wPRJWzECdM4cSoPrqMDphZjeF+x9z2P9rMrtBXWxVazylVUZYo67pZ
 JQrYQqwWzwmdhltnZ1+exroZFYNT4FfqcG0H8T8X/xtFKe3r/lI/bb8vM+8kSKrBRyNv yw== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QErKCI/UTYIdNKZlyKMNGfNZZeFrSFByXm6WJ1ipit9J+e+Xv5lJTgoJsIMMFcIiJFVvBNseL6SabnkzeQMfT92XB478lWac61ORMnKzNriMGc5lHrQvGe6Fu9bINMa0Vc+Cq5HjZb/PiQLe2rqX9KdUVT4wyBjbB84Ncvq7vLrV4bJmZJ88DD7T8iQMkw1Yo33E+lM1AhdJmSwYOmdwfbGtdPO33xreDOiZwPaCZ5S3dwOKooUL48ARj7wqJC382q+9mfZRsRKzcu0dYtMNhPrVap2Ub6z1LHI3TwngjLHBiqFP5jcCzZMKhycgl42N1UYZVW554pgleBm39zYAdA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=VYSnf9l1OC5O8EYLNRYIZUAWKQaSDVwJBLhdBC1FlwY=;
 b=fL+UUqyGGS3/pyCRiWLZgFLB52kUfi61Nv7cFVWGfEsQja4xu7zn0LFX5D3J1XcqLp6q4RaBlbHFmrFptf6Qf0n7EVVvnHzg4eJ8ne534FyUoeT/7q869qw5kMYaLtYVgBcq6Rl4Xx0FGp7hhShQxxQCSRszSIXXxm+PeM/TcGXYXQLYgsyf2s/W5S7ogQ5hPLBbnRnp/vDqioxVWv55BTlE2mnAguGwm8OFlXwR+K6XZRKgHr78SV8iSCGl+mIDX794RGzu8wVhvrnCGIU5q3yCV1aTy5XcDbSxFBlKxkE8Xhc0irmCdF4ZsL/HrMzl730pCi8cda/QN0q2JqyWzg==
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=VYSnf9l1OC5O8EYLNRYIZUAWKQaSDVwJBLhdBC1FlwY=;
 b=VQF1h2GO5le4EAU4EVYp0Cn5YKcpCmV3T3OlrC02zxLYVrKUCryjxssq1YH1kcGJ1dy/c9jVMkdKVgHUS+sX5CfhIcWKl3AfDiZrEZ6i+tv7x/1H7SYXKHdgRivkL/34AejmWB+dUtmfGWsw3dO8w2+8zy68GaPCh6RlXf+7Byk=
Subject: Re: [PATCH 1/3] xen-pciback: redo VF placement in the virtual
 topology
To: Jan Beulich <jbeulich@suse.com>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <32d6a8d4-c06f-7fe0-1376-4b80fac8c6de@suse.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Message-ID: <b41663ff-6a90-877d-9cd3-7e052c28eb6a@oracle.com>
Date: Thu, 8 Apr 2021 18:28:31 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
In-Reply-To: <32d6a8d4-c06f-7fe0-1376-4b80fac8c6de@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Originating-IP: [138.3.201.36]
X-ClientProxiedBy: SJ0PR03CA0144.namprd03.prod.outlook.com
 (2603:10b6:a03:33c::29) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 69846650-4792-40db-e9f7-08d8fadda5fd
X-MS-TrafficTypeDiagnostic: BYAPR10MB2535:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: 
	<BYAPR10MB2535F1C29B8B2C67EEE2D7DC8A749@BYAPR10MB2535.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	uCOfw1I1TSm21f/0lcT9KXev+XwX7zRtmzNPS/JOnuD/yEDEWb8iaDAe69pSxx2KeoFlTLbHcibul5kN9WHCoBPBZL+tiOYIxkVsoxALNCwVgshaExCP37cecTRh/+a1mm3HYciy4eYUOxvPauqI+2snsTUoGiU2AUdRRVFSXSm0E8K8V7XrXw0cJwp1atF34NaYXbF9UOisGYR8AXyHluJnx+nwjWDov7SlNoUfEuUAPc09VTsK4LUG8yzkTsLGuYk+95Tdtmzug52Qtrr8aKiSsP+1bJqhWVQ6e3BL1lv8/rCFqfn4YXDOFxjaDOXvraMPoxiR8oyX+6xAQjhZIBOrMtfCgrRX3dNKvfoTD0Uz9Vz7CU+z7CfiaVyvWUXhpSk2Nhj/Jel/YDFzpDDGkT58WR0avF2ZodWO5tOt/bmDLLB3ckWCZzLjlBrqQuvOm4SdI6W/Bs7f8C9fpjXTFVuZATzevxzuE6rWqFGBj/NAEEztaKRmvKRKEAU8Xo0chZadSm3QXuR33OpvEzuxq4WiZVJLuCRkn5+Y3T2i8MRcjrV6UvL/my1v5NrvGYldRVYzeN4YaZbuLZxAz7zrM19l5/lbZFXTn2y3E2KIrCtZOJysqNaVzyr5Drat2qQnJ5Wc7F830rJVAgZG8KDTE3M+au6G0VraclP0TglPAAFzcGV+J0hy8OSnaXljovbCClQADzIsyq8PBq9x+2vEvA==
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(376002)(366004)(39860400002)(396003)(136003)(956004)(31696002)(31686004)(2616005)(83380400001)(38100700001)(86362001)(44832011)(16526019)(316002)(66476007)(4326008)(107886003)(66556008)(186003)(36756003)(6666004)(16576012)(8936002)(26005)(6486002)(2906002)(5660300002)(8676002)(53546011)(54906003)(110136005)(66946007)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
 =?utf-8?Q?dyCGjMnUM0cr1jKjU2bvHkq/WrUAP05TaUs/WGz?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 69846650-4792-40db-e9f7-08d8fadda5fd
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2021 22:28:35.5421
 (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: SS4jSoRleo06UGMn8nBg15ukb/kPrjBkuYw3GLirjZxuW3K4hTGotOxNpSfyVqHwvP8vIJdAmhGUN12QmfMJ3NSzg5W9fUr06qUGGADO8DY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR10MB2535
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9948 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 adultscore=0 bulkscore=0
 mlxlogscore=999 suspectscore=0 spamscore=0 phishscore=0 mlxscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104080147
X-Proofpoint-GUID: VVNlyBSqJEAZgcT_r6-l84aLcoASG6Ou
X-Proofpoint-ORIG-GUID: VVNlyBSqJEAZgcT_r6-l84aLcoASG6Ou
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9948 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 mlxlogscore=999
 suspectscore=0 spamscore=0 phishscore=0 clxscore=1015 bulkscore=0
 mlxscore=0 lowpriorityscore=0 adultscore=0 malwarescore=0 impostorscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104080147


On 4/7/21 10:37 AM, Jan Beulich wrote:
> The commit referenced below was incomplete: It merely affected what
> would get written to the vdev-<N> xenstore node. The guest would still
> find the function at the original function number as long as 
> __xen_pcibk_get_pci_dev() wouldn't be in sync. The same goes for AER wrt
> __xen_pcibk_get_pcifront_dev().
>
> Undo overriding the function to zero and instead make sure that VFs at
> function zero remain alone in their slot. This has the added benefit of
> improving overall capacity, considering that there's only a total of 32
> slots available right now (PCI segment and bus can both only ever be
> zero at present).
>
> Fixes: 8a5248fe10b1 ("xen PV passthru: assign SR-IOV virtual functions to separate virtual slots")
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Cc: stable@vger.kernel.org
> ---
> Like the original change this has the effect of changing where devices
> would appear in the guest, when there are multiple of them. I don't see
> an immediate problem with this, but if there is we may need to reduce
> the effect of the change.
> Taking into account, besides the described breakage, how xen-pcifront's
> pcifront_scan_bus() works, I also wonder what problem it was in the
> first place that needed fixing. It may therefore also be worth to
> consider simply reverting the original change.


Perhaps this is no longer a problem, it's been 9 years since that patch. Have you tried reverting to 8a5248fe10b101104d92d01438f918e899414fd1~1 and testing that?


-boris



From xen-devel-bounces@lists.xenproject.org Fri Apr 09 06:13:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 06:13:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107608.205626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUkNs-0003NU-GQ; Fri, 09 Apr 2021 06:12:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107608.205626; Fri, 09 Apr 2021 06:12: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 1lUkNs-0003NL-AO; Fri, 09 Apr 2021 06:12:48 +0000
Received: by outflank-mailman (input) for mailman id 107608;
 Fri, 09 Apr 2021 06:09:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c7vn=JG=oracle.com=ankur.a.arora@srs-us1.protection.inumbo.net>)
 id 1lUkKC-0002YL-P1
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 06:09:01 +0000
Received: from aserp2130.oracle.com (unknown [141.146.126.79])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8a9550ed-9d7a-4469-954a-90436a789e06;
 Fri, 09 Apr 2021 06:08:59 +0000 (UTC)
Received: from pps.filterd (aserp2130.oracle.com [127.0.0.1])
 by aserp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13965A6N016603;
 Fri, 9 Apr 2021 06:08:57 GMT
Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70])
 by aserp2130.oracle.com with ESMTP id 37rvaw841e-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 09 Apr 2021 06:08:57 +0000
Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1])
 by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13965Pe7046365;
 Fri, 9 Apr 2021 06:08:56 GMT
Received: from nam04-bn3-obe.outbound.protection.outlook.com
 (mail-bn3nam04lp2051.outbound.protection.outlook.com [104.47.46.51])
 by aserp3020.oracle.com with ESMTP id 37rvb67163-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 09 Apr 2021 06:08:56 +0000
Received: from SJ0PR10MB4605.namprd10.prod.outlook.com (2603:10b6:a03:2d9::24)
 by BY5PR10MB3780.namprd10.prod.outlook.com (2603:10b6:a03:1ff::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.20; Fri, 9 Apr
 2021 06:08:54 +0000
Received: from SJ0PR10MB4605.namprd10.prod.outlook.com
 ([fe80::a021:790:7ce6:6f16]) by SJ0PR10MB4605.namprd10.prod.outlook.com
 ([fe80::a021:790:7ce6:6f16%6]) with mapi id 15.20.4020.017; Fri, 9 Apr 2021
 06:08:54 +0000
Received: from localhost.localdomain (70.36.60.91) by
 MWHPR2001CA0008.namprd20.prod.outlook.com (2603:10b6:301:15::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend
 Transport; Fri, 9 Apr 2021 06:08: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: 8a9550ed-9d7a-4469-954a-90436a789e06
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc :
 subject : date : message-id : in-reply-to : references :
 content-transfer-encoding : content-type : mime-version;
 s=corp-2020-01-29; bh=QU+vUFAgfWQAcpiYJv8KvXXmhJ5GhVE0kd9+7VWGA84=;
 b=IvBVVKxBldXaj+o+EsNaKuQ7F0FtrMRgqtvNQXWimfBEyPRRKDlFUY1gUTq3K7Uf5xWc
 rGNCgGP085hJPWyxQhKP5KVEDwWdpSC0Rs4gGU57geJjUvPrFJWgSMp3oxUPLHesgpkx
 JCbA2ecPBOvbMc/bP+1ac7/xTP0vAG/P1TKotvbjXGBcOxQu+6ZrLB5rj3nKuOJUwjj6
 62kFWuuc3SrY6WafM+KRRWD1cy/b+0Hg04UYSNBTnnKRS+UlIhno/+F9gVvtSmu8th5I
 ttaHInpEsRB2fgvcv8kL9NqdIS0pjnD2hExRbmGvb2J937zmPgpkpChO0/qDZS8bR/Ws dw== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SESaxICiWt4u3PcT+W2ccLPKa0Nu8hiPTlXD2c2Dv0DOFKrEFyf+0mlevwSf/2IP+QEwfQOqTNux0flj6BKQn5KvuuhGSglN2IRehZA2s2RTY8xaoCRTh95xc22RupZo+RrEFMOcrnq1GnOWqBE+s0FP5tNGXqA817VfONXlXbypBrR8QbMzk1XXIpTxt9LyKQBTJs1eyVAIYR7rYVMp2AsSKj/kjlBGaJ+4OFc29zLl2PIWTdlb4AaiEIiX/+Ij6rRJxURksW26PGJgcK9kEEIsEAQVTOJKLRxYt+r0a3N21vJb7ZVrI7ZdaSPna/OvdL4kge3rh4kjNCkZwS7nNg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QU+vUFAgfWQAcpiYJv8KvXXmhJ5GhVE0kd9+7VWGA84=;
 b=B8eyChHlh0onwzi/oB1/aQhntbRekYR7EwgGMwaM1bN6Fru+fTWDsmPv7PpiCzpHXJCartURA9gwYqZtbpRLTg4c3XoXqdYb0GqD5kGzYlHoLwxHT43wiF8i4hlFBCtes1xJj4FHsuHZiEm+WVUPZB57ln3nlZ+drGsKzpUL6CjbXoJngpJLaEpXbEpzrRTQRkS86L+VWsCTNCABmdUigWqAr9AHgWpBqsVwH/9b/IEA5PCNRWByfKD0LFt6BTv9FDOygKLlxRD0ZdtbhZ/BB/56bjvDzdjvzp8xmBlLrFPpasM5iLImA4Qh8A94ybFvZt46N10Zo41q/xE0HNKqyg==
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=QU+vUFAgfWQAcpiYJv8KvXXmhJ5GhVE0kd9+7VWGA84=;
 b=CjgRdmZrib4kkJA5AwTSaE0RwbAzIEXwu4HOct61vQtAf89cfW8z7SywZFcK++i8FAQCjOnJ+z/4iWyxYDKE8EfzVLg3VKaWqJuGe5HiJ7tuxOFlTDuZrgMdXU2V8uFNKHA4cysD00gBB2yFcLrVlJvcXZRB1gMfSW0gdiEUXGo=
Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=oracle.com;
From: Ankur Arora <ankur.a.arora@oracle.com>
To: jbeulich@suse.com
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com,
        xen-devel@lists.xenproject.org
Subject: Re: x86: memset() / clear_page() / page scrubbing
Date: Thu,  8 Apr 2021 23:08:45 -0700
Message-Id: <20210409060845.3503745-1-ankur.a.arora@oracle.com>
X-Mailer: git-send-email 2.29.2
In-Reply-To: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
References: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [70.36.60.91]
X-ClientProxiedBy: MWHPR2001CA0008.namprd20.prod.outlook.com
 (2603:10b6:301:15::18) To SJ0PR10MB4605.namprd10.prod.outlook.com
 (2603:10b6:a03:2d9::24)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: fa3d3a38-5219-48ce-df79-08d8fb1df41f
X-MS-TrafficTypeDiagnostic: BY5PR10MB3780:
X-Microsoft-Antispam-PRVS: 
	<BY5PR10MB3780C271D7FF9746F9035969CE739@BY5PR10MB3780.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	zFcODhwnjlZH5XCqA/5G6orqKH0i4LZNIXx6F3UV0hzg/jl5akV/wkydsaH1dAuPZCo6eq3RIfFlXVE302cIHR88mRH8PKP4Tj65Pat0c6Y0UKwZGqnmDbriJY1/DcLrhSO9EWkP6+RBc0WhqtwP1sDbNaSiFbjNEM02jDTHlCm/Dubsap19PgtyYg9NOFU0+C9K7dwczKiJND34Ie6FHtRddU5j52CLhnkL+DQaEFkZCPiSWyOnO9QA2h6fyv7zEakkhfMQC2Yy9s/3dXz/QXYvzuGskG+9w6DduSk6dgR7939C98rcXtGnDhFXo91ACulEkO/RA8EOHm7eeHDRHXajkikn6znN9KNtR/iY08g+2/Mc1f+Uqe7JtDLWbbNjCBOqZi3M4zrCfJxgpa3iMNdgqV6Sadwf48RtCQZFhVM85D3lqQTqVeYn2SyOpJyggZmLFUuberCqeAP2xBlXjU0MPNhTgesaZudTU4/3+CYYU2RSJSuu2xfcd3M1cLI7CIJmwpVea4mzB76VxfznrjPSogXvjInkJ/rBZC1rsm3fl5ch5P0MHkeRMuIvl4rImvE/UjYd1po1EmhplHlfUvn18fXpoMwLpa90KLrvmQ3MZmvd45H3FTxfHy3kKvlYeIjZ3LfS4zHD9HHMiJbuSuZBVXraJZiwMj//Xn/OiByGEIkw1ZYaCOrEucuGqE6XaaWkDvutkgCR3dyatU8GlIW9ceWTKGWWQ3ofERXMngmWC1zZ4wf8LdbUtV7IL4ue+/9Mp9GgJCkkbE1s3XBPu7e4hPWAjnZegAK9emqpIUk=
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR10MB4605.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(366004)(39860400002)(376002)(396003)(136003)(36756003)(478600001)(26005)(53546011)(6506007)(66946007)(8936002)(966005)(66476007)(69590400012)(956004)(6512007)(66556008)(6486002)(103116003)(5660300002)(2906002)(38100700001)(6916009)(1076003)(8676002)(2616005)(38350700001)(83380400001)(316002)(86362001)(52116002)(4326008)(16526019)(186003)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	=?us-ascii?Q?XUfN5XHXYSncC4+RnOl5GZ5WHaG+XBTP2lnl9GFeLU+O1VAJkdoCTMRr2w/A?=
 =?us-ascii?Q?MmCnO+OS54VrSRV6EcG2cjsnk6jPbKXRzHA+Q+sGezGRhzaHRlB8mKhK72By?=
 =?us-ascii?Q?04SM8R+j0el4amU54Eht1+owAaoIeKhnwH+3yvYcLLjIMrPuLfgHEK/GPJNu?=
 =?us-ascii?Q?rwatFoj9Yxclmg7Y2OUr/pk62dQe/ALCh4TpeOwskWCba4MYFiaXmLwyzhNp?=
 =?us-ascii?Q?J/Dst8bHbD0PLIOGV3DMXF3lyQYhdaJa6Cd4QYI6AAXMxpc8qq6fgwoNMLTm?=
 =?us-ascii?Q?xItF9HRWoNMAECgNWAbXMKrSO5e/ZpZa9UIDWLDC94gVp1lrMK2Za7sewkTR?=
 =?us-ascii?Q?5VGbjkqsct2NeHkqyyFg1IfG7te6EQIxxpOKKSJfAE9ra+jTlfvaWSGHZuQB?=
 =?us-ascii?Q?G8Rec3jqWlvrYXth+pqWwN9UrCdU7KPPqrzYRF9uolh9hHK7nWAK6rJvC+D9?=
 =?us-ascii?Q?nFx1PrwziiQWf117tcpYG8FFI2NPAJ2ELDuOdB/esEnurkk5Doabj67upQKv?=
 =?us-ascii?Q?fBoIo8O0ntp/4/L7eA+GuV57phpeMg4MiKswaEbu/APqc6O0h/AsvxHMAkCy?=
 =?us-ascii?Q?dEtzjLq/0MAbukt8N3dEOjFQpKb7c0dkxw4yU/lo+2NxoB9NVjm7cVksC60a?=
 =?us-ascii?Q?fCAp7s+TeSf5nc/0H/kht/LyTCVXxIHi+IKWEpXSJ+54uHjnWsNoEoptT738?=
 =?us-ascii?Q?BM5XbvXB5dtnxPG37PvEJwnEoHDjZUi++JYR+iSAvMi/womJ0oMocDvxZLjR?=
 =?us-ascii?Q?i9ztJHXOjEVPD76PbHg8c0yu70xO0M3tDsKMLclJn0QFI/mtZ/Elou1LueKX?=
 =?us-ascii?Q?8DGzi7uEvDqjSWRtEDXBaWVSp34GeRK2UDKK/uqJtJ0QlpobPTBNszSl2+3/?=
 =?us-ascii?Q?UtCRd10aNhwuxpo2PT/xnhv5watHvl1CFZTMlg2n8yBIQiws7fAXLSUfAdZi?=
 =?us-ascii?Q?1MlFVZ7A6dQ3n/PnSgBn2VihRwtg+NL7m9HY1IvwRGZJs9GEpGClcUgYXffe?=
 =?us-ascii?Q?ZIKKYwcFFlgvw+l5X4Q5ECXMr80UtJMxxIKvl5qF2IOVh2bNut9hcaTGRxvX?=
 =?us-ascii?Q?NevWpms0Jn5NBEcJGI9VNzAoIgvuOmpgY7a68us5P2Zu6gNm7M45eC2JKmnb?=
 =?us-ascii?Q?2TnBvyLdTCp/cWErpgy9GUZkvY2N+Jf7nxyZRGZ+H24vU2Xqu5+K+uOh82Mk?=
 =?us-ascii?Q?NWx3k5jllPoRFj7CroFsGUk7UgF1RFRLAohCxUHQzbGcVFhVpeNRqXl4Gvcc?=
 =?us-ascii?Q?SpS41EcvfiPGvK3cel2LPlwAJiW5ZRaBN3cpeFOyuazQLu4DsS4kWd5cFAbl?=
 =?us-ascii?Q?GAwoymYE+vUac2qCYoX+rEjZ?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fa3d3a38-5219-48ce-df79-08d8fb1df41f
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB4605.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 06:08:54.2791
 (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: ey3sxOloYUZj9hBL+YP87iBuQirDuyxzt7LbWXWG5BmUc6E+3UG0m+tMpLiJLj89ZnpIkIGxJN945RxeJC/oiBSUEmBrfHgD9EXcF0a1YBc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR10MB3780
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9948 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 mlxlogscore=999
 malwarescore=0 mlxscore=0 suspectscore=0 adultscore=0 spamscore=0
 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104090046
X-Proofpoint-ORIG-GUID: EtO8WnLCk8vqCxSujLpDL3mrXsWT3try
X-Proofpoint-GUID: EtO8WnLCk8vqCxSujLpDL3mrXsWT3try
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9948 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 lowpriorityscore=0 priorityscore=1501
 suspectscore=0 phishscore=0 mlxlogscore=999 spamscore=0 malwarescore=0
 mlxscore=0 bulkscore=0 impostorscore=0 adultscore=0 clxscore=1011
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104090046

Hi Jan,

I'm working on somewhat related optimizations on Linux (clear_page(),
going in the opposite direction, from REP STOSB to MOVNT) and have
some comments/questions below.

(Discussion on v1 here:
https://lore.kernel.org/lkml/20201014083300.19077-1-ankur.a.arora@oracle.com/)

On 4/8/2021 6:58 AM, Jan Beulich wrote:
> All,
>
> since over the years we've been repeatedly talking of changing the
> implementation of these fundamental functions, I've taken some time
> to do some measurements (just for possible clear_page() alternatives
> to keep things manageable). I'm not sure I want to spend as much time
> subsequently on memcpy() / copy_page() (or more, because there are
> yet more combinations of arguments to consider), so for the moment I
> think the route we're going to pick here is going to more or less
> also apply to those.
>
> The present copy_page() is the way it is because of the desire to
> avoid disturbing the cache. The effect of REP STOS on the L1 cache
> (compared to the present use of MOVNTI) is more or less noticable on
> all hardware, and at least on Intel hardware more noticable when the
> cache starts out clean. For L2 the results are more mixed when
> comparing cache-clean and cache-filled cases, but the difference
> between MOVNTI and REP STOS remains or (at least on Zen2 and older
> Intel hardware) becomes more prominent.

Could you give me any pointers on the cache-effects on this? This
obviously makes sense but I couldn't come up with any benchmarks
which would show this in a straight-forward fashion.

>
> Otoh REP STOS, as was to be expected, in most cases has meaningfully
> lower latency than MOVNTI.
>
> Because I was curious I also included AVX (32-byte stores), AVX512
> (64-byte stores), and AMD's CLZERO in my testing. While AVX is a
> clear win except on the vendors' first generations implementing it
> (but I've left out any playing with CR0.TS, which is what I expect
> would take this out as an option), AVX512 isn't on Skylake (perhaps
> newer hardware does better). CLZERO has slightly higher impact on
> L1 than MOVNTI, but lower than REP STOS.

Could you elaborate on what kind of difference in L1 impact you are
talking about? Evacuation of cachelines?

> Its latency is between
> both when the caches are warm, and better than both when the caches
> are cold.
>
> Therefore I think that we want to distinguish page clearing (where
> we care about latency) from (background) page scrubbing (where I
> think the goal ought to be to avoid disturbing the caches). That
> would make it
> - REP STOS{L,Q} for clear_page() (perhaps also to be used for
>   synchronous scrubbing),
> - MOVNTI for scrub_page() (when done from idle context), unless
>   CLZERO is available.
> Whether in addition we should take into consideration activity of
> other (logical) CPUs sharing caches I don't know - this feels like
> it could get complex pretty quickly.

The one other case might be for ~L3 (or larger) regions. In my tests,
MOVNT/CLZERO is almost always better (the one exception being Skylake)
wrt both cache and latency for larger extents.

In the particular cases I was looking at (mmap+MAP_POPULATE and
page-fault path), that makes the choice of always using MOVNT/CLZERO
easy for GB pages, but fuzzier for 2MB pages.

Not sure if the large-page case is interesting for you though.


Thanks
Ankur

>
> For memset() we already simply use REP STOSB. I don't see a strong
> need to change that, but it may be worth to consider bringing it
> closer to memcpy() - try to do the main chunk with REP STOS{L,Q}.
> They perform somewhat better in a number of cases (including when
> ERMS is advertised, i.e. on my Haswell and Skylake, which isn't
> what I would have expected). We may want to put the whole thing in
> a .S file though, seeing that the C function right now consists of
> little more than an asm().
>
> For memcpy() I'm inclined to suggest that we simply use REP MOVSB
> on ERMS hardware, and stay with what we have everywhere else.
>
> copy_page() (or really copy_domain_page()) doesn't have many uses,
> so I'm not sure how worthwhile it is to do much optimization there.
> It might be an option to simply expand it to memcpy(), like Arm
> does.
>
> Looking forward, on CPUs having "Fast Short REP CMPSB/SCASB" we
> may want to figure out whether using these for strlen(), strcmp(),
> strchr(), memchr(), and/or memcmp() would be a win.
>
> Thoughts anyone, before I start creating actual patches?
>
> Jan
>


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 06:15:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 06:15:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107617.205638 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUkQ6-0003Vm-St; Fri, 09 Apr 2021 06:15:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107617.205638; Fri, 09 Apr 2021 06:15: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 1lUkQ6-0003Vf-Oz; Fri, 09 Apr 2021 06:15:06 +0000
Received: by outflank-mailman (input) for mailman id 107617;
 Fri, 09 Apr 2021 06:15:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rPLO=JG=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUkQ5-0003VY-Fa
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 06:15:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 751a24b0-5e9e-4705-b9a4-9cadbd12a288;
 Fri, 09 Apr 2021 06:15:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CD3A2AE37;
 Fri,  9 Apr 2021 06:15:03 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 751a24b0-5e9e-4705-b9a4-9cadbd12a288
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617948903; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=9zsXqUAdMsV5ntImpl/gjnEK/9yXIo1A3Acs4h2mHiM=;
	b=SFRFCcc3B/knEWz0T06IJxOmHhPvTIIBD8ZR3Chr9ieK580wlx5E+9fPY8Iy5fOKEX/jF+
	WBnVCPWgSKpzpO1XJYsiDBLOQV5gwXUHEPTnTdjEjX7dOG+ghNNSkXEJ4LPLzRYD5Ztwll
	t1Xb2Yc2l6coZnD5BZzAgU8H6g5ZRek=
Subject: Re: [xen-4.12-testing test] 160807: regressions - FAIL
To: Ian Jackson <iwj@xenproject.org>,
 Anthony Perard <anthony.perard@citrix.com>
References: <osstest-160807-mainreport@xen.org>
Cc: xen-devel@lists.xenproject.org,
 osstest service owner <osstest-admin@xenproject.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ab7b9698-9740-f4f1-7107-40f5cd95212d@suse.com>
Date: Fri, 9 Apr 2021 08:15:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <osstest-160807-mainreport@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 08.04.2021 21:37, osstest service owner wrote:
> flight 160807 xen-4.12-testing real [real]
> http://logs.test-lab.xenproject.org/osstest/logs/160807/
> 
> Regressions :-(
> 
> Tests which did not succeed and are blocking,
> including tests which could not be run:
>  build-armhf                     <job status>                 broken  in 160709
>  build-armhf                4 host-install(4) broken in 160709 REGR. vs. 159418
>  test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160709 REGR. vs. 159418

The failure of this or ...

> Tests which are failing intermittently (not blocking):
>  test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian fail in 160709 pass in 160807
>  test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160709

... this step (the latter being a prereq to the former) has been
ongoing since the middle of March, on just this branch. The
primary suspect imo is a bad backport of the XSA-368 fix, as the
very first failure (flight 160128) was with just this and the
gcc11 build fix. As this continues to take up osstest resources,
could one of you look into this more closely? From my looking at
it I can't exclude this is merely bad luck (it might be the
previously observed "guest fails to signal readiness for
suspending"), but since prior pushes didn't get delayed for this
long I'm not sure at all.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 06:39:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 06:39:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107623.205650 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUknG-0005RR-RO; Fri, 09 Apr 2021 06:39:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107623.205650; Fri, 09 Apr 2021 06:39:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUknG-0005RK-OD; Fri, 09 Apr 2021 06:39:02 +0000
Received: by outflank-mailman (input) for mailman id 107623;
 Fri, 09 Apr 2021 06:39:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rPLO=JG=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUknG-0005RF-3A
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 06:39:02 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 105ca9c5-c5ca-4c2c-81c6-73953f96eb3a;
 Fri, 09 Apr 2021 06:39:01 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 49EA9AFEF;
 Fri,  9 Apr 2021 06:39: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: 105ca9c5-c5ca-4c2c-81c6-73953f96eb3a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617950340; 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=4071pFx3oNmtSHkAWGgQMH0S3kVve/x4fmKzQtIcAOo=;
	b=MeRWvDabm7TFa+qGocGt8kGH/uvPFSw3jvzpsi8tIc6BLIOEWt6JcZ+KrdqXCyZMEcPL+v
	R7jYbbyR/Tj92MmWoMlutLviabdS4K4jT3OYBzu6ClMe1U0dFr3K+wAW99H6yCPcI4TU93
	OXK62dv1zeSFrmjzh/zC2uSPmwqTkOM=
Subject: Re: x86: memset() / clear_page() / page scrubbing
To: Ankur Arora <ankur.a.arora@oracle.com>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com,
 xen-devel@lists.xenproject.org
References: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
 <20210409060845.3503745-1-ankur.a.arora@oracle.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <4d8202b3-ffe8-c4e7-e477-d8e7dc294c33@suse.com>
Date: Fri, 9 Apr 2021 08:38:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210409060845.3503745-1-ankur.a.arora@oracle.com>
Content-Type: multipart/mixed;
 boundary="------------9DC579F8BDE441FCF75385D5"
Content-Language: en-US

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

On 09.04.2021 08:08, Ankur Arora wrote:
> I'm working on somewhat related optimizations on Linux (clear_page(),
> going in the opposite direction, from REP STOSB to MOVNT) and have
> some comments/questions below.

Interesting.

> On 4/8/2021 6:58 AM, Jan Beulich wrote:
>> All,
>>
>> since over the years we've been repeatedly talking of changing the
>> implementation of these fundamental functions, I've taken some time
>> to do some measurements (just for possible clear_page() alternatives
>> to keep things manageable). I'm not sure I want to spend as much time
>> subsequently on memcpy() / copy_page() (or more, because there are
>> yet more combinations of arguments to consider), so for the moment I
>> think the route we're going to pick here is going to more or less
>> also apply to those.
>>
>> The present copy_page() is the way it is because of the desire to
>> avoid disturbing the cache. The effect of REP STOS on the L1 cache
>> (compared to the present use of MOVNTI) is more or less noticable on
>> all hardware, and at least on Intel hardware more noticable when the
>> cache starts out clean. For L2 the results are more mixed when
>> comparing cache-clean and cache-filled cases, but the difference
>> between MOVNTI and REP STOS remains or (at least on Zen2 and older
>> Intel hardware) becomes more prominent.
> 
> Could you give me any pointers on the cache-effects on this? This
> obviously makes sense but I couldn't come up with any benchmarks
> which would show this in a straight-forward fashion.

No benchmarks in that sense, but a local debugging patch measuring
things before bringing up APs, to have a reasonably predictable
environment. I have attached it for your reference.

>> Otoh REP STOS, as was to be expected, in most cases has meaningfully
>> lower latency than MOVNTI.
>>
>> Because I was curious I also included AVX (32-byte stores), AVX512
>> (64-byte stores), and AMD's CLZERO in my testing. While AVX is a
>> clear win except on the vendors' first generations implementing it
>> (but I've left out any playing with CR0.TS, which is what I expect
>> would take this out as an option), AVX512 isn't on Skylake (perhaps
>> newer hardware does better). CLZERO has slightly higher impact on
>> L1 than MOVNTI, but lower than REP STOS.
> 
> Could you elaborate on what kind of difference in L1 impact you are
> talking about? Evacuation of cachelines?

Replacement of ones, yes. As you may see from that patch, I prefill
the cache, do the clearing, and then measure how much longer the
same operation takes that was used for prefilling. If the clearing
left the cache completely alone (or if the hw prefetcher was really
good), there would be no difference.

>> Its latency is between
>> both when the caches are warm, and better than both when the caches
>> are cold.
>>
>> Therefore I think that we want to distinguish page clearing (where
>> we care about latency) from (background) page scrubbing (where I
>> think the goal ought to be to avoid disturbing the caches). That
>> would make it
>> - REP STOS{L,Q} for clear_page() (perhaps also to be used for
>>   synchronous scrubbing),
>> - MOVNTI for scrub_page() (when done from idle context), unless
>>   CLZERO is available.
>> Whether in addition we should take into consideration activity of
>> other (logical) CPUs sharing caches I don't know - this feels like
>> it could get complex pretty quickly.
> 
> The one other case might be for ~L3 (or larger) regions. In my tests,
> MOVNT/CLZERO is almost always better (the one exception being Skylake)
> wrt both cache and latency for larger extents.

Good to know - will keep this in mind.

> In the particular cases I was looking at (mmap+MAP_POPULATE and
> page-fault path), that makes the choice of always using MOVNT/CLZERO
> easy for GB pages, but fuzzier for 2MB pages.
> 
> Not sure if the large-page case is interesting for you though.

Well, we never fill large pages in one go, yet the scrubbing may
touch many individual pages in close succession. But for the
(background) scrubbing my recommendation is to use MOVNT/CLZERO
anyway, irrespective of volume. While upon large page allocations
we may also end up scrubbing many pages in close succession, I'm
not sure that's worth optimizing for - we at least hope for the
pages to have got scrubbed in the background before they get
re-used. Plus we don't (currently) know up front how many of them
may still need scrubbing; this isn't difficult to at least
estimate, but may require yet another loop over the constituent
pages.

Jan

--------------9DC579F8BDE441FCF75385D5
Content-Type: text/plain; charset=UTF-8;
 name="x86-clear-page-ERMS.patch"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="x86-clear-page-ERMS.patch"

ClRPRE86IHJlbW92ZSAob3Igc3BsaXQgb3V0KSAvL3RlbXAtcwpOb3RlOiBBbmt1ciBpbmRp
Y2F0ZXMgdGhhdCBmb3IgfkwzLXNpemUgb3IgbGFyZ2VyIHJlZ2lvbnMgTU9WTlQvQ0xaRVJP
IGlzIGJldHRlciBldmVuIGxhdGVuY3ktd2lzZQoKLS0tIHVuc3RhYmxlLm9yaWcveGVuL2Fy
Y2gveDg2L2NsZWFyX3BhZ2UuUwkyMDIxLTAyLTI1IDA5OjI4OjE0LjE3NTYzNjg4MSArMDEw
MAorKysgdW5zdGFibGUveGVuL2FyY2gveDg2L2NsZWFyX3BhZ2UuUwkyMDIxLTAyLTI1IDEw
OjA0OjA0LjMxNTMyNTk3MyArMDEwMApAQCAtMTYsMyArMTYsNjYgQEAgRU5UUlkoY2xlYXJf
cGFnZV9zc2UyKQogCiAgICAgICAgIHNmZW5jZQogICAgICAgICByZXQKKworRU5UUlkoY2xl
YXJfcGFnZV9zdG9zYikKKyAgICAgICAgbW92ICAgICAkUEFHRV9TSVpFLCAlZWN4CisgICAg
ICAgIHhvciAgICAgJWVheCwlZWF4CisgICAgICAgIHJlcCBzdG9zYgorICAgICAgICByZXQK
KworRU5UUlkoY2xlYXJfcGFnZV9zdG9zbCkKKyAgICAgICAgbW92ICAgICAkUEFHRV9TSVpF
LzQsICVlY3gKKyAgICAgICAgeG9yICAgICAlZWF4LCAlZWF4CisgICAgICAgIHJlcCBzdG9z
bAorICAgICAgICByZXQKKworRU5UUlkoY2xlYXJfcGFnZV9zdG9zcSkKKyAgICAgICAgbW92
ICAgICAkUEFHRV9TSVpFLzgsICVlY3gKKyAgICAgICAgeG9yICAgICAlZWF4LCAlZWF4Cisg
ICAgICAgIHJlcCBzdG9zcQorICAgICAgICByZXQKKworRU5UUlkoY2xlYXJfcGFnZV9hdngp
CisgICAgICAgIG1vdiAgICAgJFBBR0VfU0laRS8xMjgsICVlY3gKKyAgICAgICAgdnB4b3Ig
ICAleG1tMCwgJXhtbTAsICV4bW0wCiswOiAgICAgIHZtb3ZudGRxICV5bW0wLCAgICglcmRp
KQorICAgICAgICB2bW92bnRkcSAleW1tMCwgMzIoJXJkaSkKKyAgICAgICAgdm1vdm50ZHEg
JXltbTAsIDY0KCVyZGkpCisgICAgICAgIHZtb3ZudGRxICV5bW0wLCA5NiglcmRpKQorICAg
ICAgICBzdWIgICAgICQtMTI4LCAlcmRpCisgICAgICAgIHN1YiAgICAgJDEsICVlY3gKKyAg
ICAgICAgam56ICAgICAwYgorICAgICAgICBzZmVuY2UKKyAgICAgICAgcmV0CisKKyNpZiBf
X0dOVUNfXyA+IDQKK0VOVFJZKGNsZWFyX3BhZ2VfYXZ4NTEyKQorICAgICAgICBtb3YgICAg
ICRQQUdFX1NJWkUvMjU2LCAlZWN4CisgICAgICAgIHZweG9yICAgJXhtbTAsICV4bW0wLCAl
eG1tMAorMDogICAgICB2bW92bnRkcSAlem1tMCwgICAgKCVyZGkpCisgICAgICAgIHZtb3Zu
dGRxICV6bW0wLCAgNjQoJXJkaSkKKyAgICAgICAgdm1vdm50ZHEgJXptbTAsIDEyOCglcmRp
KQorICAgICAgICB2bW92bnRkcSAlem1tMCwgMTkyKCVyZGkpCisgICAgICAgIGFkZCAgICAg
JDI1NiwgJXJkaQorICAgICAgICBzdWIgICAgICQxLCAlZWN4CisgICAgICAgIGpueiAgICAg
MGIKKyAgICAgICAgc2ZlbmNlCisgICAgICAgIHJldAorI2VuZGlmCisKKyNpZiBfX0dOVUNf
XyA+IDUKK0VOVFJZKGNsZWFyX3BhZ2VfY2x6ZXJvKQorICAgICAgICBtb3YgICAgICVyZGks
ICVyYXgKKyAgICAgICAgbW92ICAgICAkUEFHRV9TSVpFLzI1NiwgJWVjeAorMDogICAgICBj
bHplcm8KKyAgICAgICAgYWRkICAgICAkNjQsICVyYXgKKyAgICAgICAgY2x6ZXJvCisgICAg
ICAgIGFkZCAgICAgJDY0LCAlcmF4CisgICAgICAgIGNsemVybworICAgICAgICBhZGQgICAg
ICQ2NCwgJXJheAorICAgICAgICBjbHplcm8KKyAgICAgICAgYWRkICAgICAkNjQsICVyYXgK
KyAgICAgICAgc3ViICAgICAkMSwgJWVjeAorICAgICAgICBqbnogICAgIDBiCisgICAgICAg
IHJldAorI2VuZGlmCi0tLSB1bnN0YWJsZS5vcmlnL3hlbi9hcmNoL3g4Ni9jcHUvY29tbW9u
LmMJMjAyMS0wMi0wOSAxNjoyMDo0NS4wMDAwMDAwMDAgKzAxMDAKKysrIHVuc3RhYmxlL3hl
bi9hcmNoL3g4Ni9jcHUvY29tbW9uLmMJMjAyMS0wMi0wOSAxNjoyMDo0NS4wMDAwMDAwMDAg
KzAxMDAKQEAgLTIzOCw2ICsyMzgsNyBAQCBpbnQgZ2V0X21vZGVsX25hbWUoc3RydWN0IGNw
dWluZm9feDg2ICpjCiB9CiAKIAorZXh0ZXJuIHVuc2lnbmVkIGwxZF9zaXplLCBsMl9zaXpl
Oy8vdGVtcAogdm9pZCBkaXNwbGF5X2NhY2hlaW5mbyhzdHJ1Y3QgY3B1aW5mb194ODYgKmMp
CiB7CiAJdW5zaWduZWQgaW50IGR1bW15LCBlY3gsIGVkeCwgc2l6ZTsKQEAgLTI1MCw2ICsy
NTEsNyBAQCB2b2lkIGRpc3BsYXlfY2FjaGVpbmZvKHN0cnVjdCBjcHVpbmZvX3g4CiAJCQkJ
ICAgICAgICAgICAgICAiIEQgY2FjaGUgJXVLICgldSBieXRlcy9saW5lKVxuIiwKIAkJCQkg
ICAgICAgZWR4ID4+IDI0LCBlZHggJiAweEZGLCBlY3ggPj4gMjQsIGVjeCAmIDB4RkYpOwog
CQkJYy0+eDg2X2NhY2hlX3NpemUgPSAoZWN4ID4+IDI0KSArIChlZHggPj4gMjQpOworaWYo
ZWN4ID4+PSAyNCkgbDFkX3NpemUgPSBlY3g7Ly90ZW1wCiAJCX0KIAl9CiAKQEAgLTI2MCw2
ICsyNjIsNyBAQCB2b2lkIGRpc3BsYXlfY2FjaGVpbmZvKHN0cnVjdCBjcHVpbmZvX3g4CiAK
IAlzaXplID0gZWN4ID4+IDE2OwogCWlmIChzaXplKSB7CitsMl9zaXplID0vL3RlbXAKIAkJ
Yy0+eDg2X2NhY2hlX3NpemUgPSBzaXplOwogCiAJCWlmIChvcHRfY3B1X2luZm8pCi0tLSB1
bnN0YWJsZS5vcmlnL3hlbi9hcmNoL3g4Ni9jcHUvaW50ZWxfY2FjaGVpbmZvLmMJMjAyMS0w
Mi0yNSAwOToyODoxNC4xNzU2MzY4ODEgKzAxMDAKKysrIHVuc3RhYmxlL3hlbi9hcmNoL3g4
Ni9jcHUvaW50ZWxfY2FjaGVpbmZvLmMJMjAyMS0wMi0wOSAxNjoyMDoyMy4wMDAwMDAwMDAg
KzAxMDAKQEAgLTExNiw2ICsxMTYsNyBAQCBzdGF0aWMgaW50IGZpbmRfbnVtX2NhY2hlX2xl
YXZlcyh2b2lkKQogCXJldHVybiBpOwogfQogCitleHRlcm4gdW5zaWduZWQgbDFkX3NpemUs
IGwyX3NpemU7Ly90ZW1wCiB2b2lkIGluaXRfaW50ZWxfY2FjaGVpbmZvKHN0cnVjdCBjcHVp
bmZvX3g4NiAqYykKIHsKIAl1bnNpZ25lZCBpbnQgdHJhY2UgPSAwLCBsMWkgPSAwLCBsMWQg
PSAwLCBsMiA9IDAsIGwzID0gMDsgLyogQ2FjaGUgc2l6ZXMgKi8KQEAgLTIzMCwxMiArMjMx
LDE0IEBAIHZvaWQgaW5pdF9pbnRlbF9jYWNoZWluZm8oc3RydWN0IGNwdWluZm8KIAl9CiAK
IAlpZiAobmV3X2wxZCkKK2wxZF9zaXplID0vL3RlbXAKIAkJbDFkID0gbmV3X2wxZDsKIAog
CWlmIChuZXdfbDFpKQogCQlsMWkgPSBuZXdfbDFpOwogCiAJaWYgKG5ld19sMikgeworbDJf
c2l6ZSA9Ly90ZW1wCiAJCWwyID0gbmV3X2wyOwogCX0KIAotLS0gdW5zdGFibGUub3JpZy94
ZW4vYXJjaC94ODYvbW0uYwkyMDIxLTAyLTI1IDA5OjI4OjQxLjIxNTc0NTc4NCArMDEwMAor
KysgdW5zdGFibGUveGVuL2FyY2gveDg2L21tLmMJMjAyMS0wNC0wNiAxNTo0NDozMi40Nzgw
OTk0NTMgKzAyMDAKQEAgLTI4NCw2ICsyODQsMjIgQEAgc3RhdGljIHZvaWQgX19pbml0IGFz
c2lnbl9pb19wYWdlKHN0cnVjdAogICAgIHBhZ2UtPmNvdW50X2luZm8gfD0gUEdDX2FsbG9j
YXRlZCB8IDE7CiB9CiAKK3N0YXRpYyB1bnNpZ25lZCBfX2luaXQgbm9pbmxpbmUgcHJvYmUo
Y29uc3QgdW5zaWduZWQqc3BjLCB1bnNpZ25lZCBucikgey8vdGVtcAorI2RlZmluZSBQQUdF
X0VOVFMgKFBBR0VfU0laRSAvIHNpemVvZigqc3BjKSkKKyB1bnNpZ25lZCBpLCBqLCBhY2M7
CisgZm9yKGFjYyA9IGkgPSAwOyBpIDwgUEFHRV9TSVpFIC8gNjQ7ICsraSkKKyAgZm9yKGog
PSAwOyBqIDwgbnI7ICsraikKKyAgIGFjYyArPSBzcGNbaiAqIFBBR0VfRU5UUyArICgoaSAq
ICg2NCAvIHNpemVvZigqc3BjKSkgKiA3KSAmIChQQUdFX0VOVFMgLSAxKSldOworIHJldHVy
biBhY2MgJiAoaSAqIG5yIC0gMSk7CisjdW5kZWYgUEFHRV9FTlRTCit9CitleHRlcm4gdm9p
ZCBjbGVhcl9wYWdlX3N0b3NiKHZvaWQqKTsvL3RlbXAKK2V4dGVybiB2b2lkIGNsZWFyX3Bh
Z2Vfc3Rvc2wodm9pZCopOy8vdGVtcAorZXh0ZXJuIHZvaWQgY2xlYXJfcGFnZV9zdG9zcSh2
b2lkKik7Ly90ZW1wCitleHRlcm4gdm9pZCBjbGVhcl9wYWdlX2F2eCh2b2lkKik7Ly90ZW1w
CitleHRlcm4gdm9pZCBjbGVhcl9wYWdlX2F2eDUxMih2b2lkKik7Ly90ZW1wCitleHRlcm4g
dm9pZCBjbGVhcl9wYWdlX2NsemVybyh2b2lkKik7Ly90ZW1wCit1bnNpZ25lZCBsMWRfc2l6
ZSA9IEtCKDE2KSwgbDJfc2l6ZTsvL3RlbXAKIHZvaWQgX19pbml0IGFyY2hfaW5pdF9tZW1v
cnkodm9pZCkKIHsKICAgICB1bnNpZ25lZCBsb25nIGksIHBmbiwgcnN0YXJ0X3BmbiwgcmVu
ZF9wZm4sIGlvc3RhcnRfcGZuLCBpb2VuZF9wZm47CkBAIC0zOTIsNiArNDA4LDY3IEBAIHZv
aWQgX19pbml0IGFyY2hfaW5pdF9tZW1vcnkodm9pZCkKICAgICB9CiAjZW5kaWYKIAorey8v
dGVtcAorIHVuc2lnbmVkIG9yZGVyID0gZ2V0X29yZGVyX2Zyb21fcGFnZXMoUEZOX0RPV04o
bDJfc2l6ZSA8PCAxMCkpID86IDE7Cisgdm9pZCpmaWxsID0gYWxsb2NfeGVuaGVhcF9wYWdl
cyhvcmRlciwgMCk7Cisgdm9pZCpidWYgPSBhbGxvY194ZW5oZWFwX3BhZ2VzKG9yZGVyIC0g
MSwgMCk7CisgdW5zaWduZWQgbG9uZyBjcjAgPSByZWFkX2NyMCgpOworIHByaW50aygiZXJt
cz0lZCBmc3JtPSVkIGZ6cm09JWQgZnNycz0lZCBmc3Jjcz0lZCBsMWQ9JXVrIGwyPSV1a1xu
IiwKKyAgICAgICAgISFib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfRVJNUyksICEhYm9vdF9j
cHVfaGFzKFg4Nl9GRUFUVVJFX0ZTUk0pLAorICAgICAgICAhIWJvb3RfY3B1X2hhcyhYODZf
RkVBVFVSRV9GWlJNKSwgISFib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfRlNSUyksCisgICAg
ICAgICEhYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0ZTUkNTKSwgbDFkX3NpemUsIGwyX3Np
emUpOworIGNsdHMoKTsKKyBmb3IodW5zaWduZWQgcGFzcyA9IDA7IHBhc3MgPCA0OyArK3Bh
c3MpIHsKKyAgcHJpbnRrKCJMJWQgdy8lcyBmbHVzaDpcbiIsIDIgLSAhKHBhc3MgJiAyKSwg
cGFzcyAmIDEgPyAiIiA6ICJvIik7CisgIHdiaW52ZCgpOworICBmb3IoaSA9IDA7IGZpbGwg
JiYgYnVmICYmIGkgPCAzOyArK2kpIHsKKyAgIHVuc2lnbmVkIG5yID0gUEZOX0RPV04oKHBh
c3MgJiAyID8gbDJfc2l6ZSA6IGwxZF9zaXplKSA8PCAxMCk7CisgICB1aW50NjRfdCBzdGFy
dCwgcHJlLCBjbHIsIHBvc3Q7CisKKyNkZWZpbmUgQ0hLKGtpbmQpIGRvIHsgXAorIC8qIGxv
Y2FsX2lycV9kaXNhYmxlKCk7ICovIFwKK1wKKyBtZW1zZXQoYnVmLCBfX0xJTkVfXyB8IChf
X0xJTkVfXyA+PiA4KSwgbnIgKiBQQUdFX1NJWkUgLyAyKTsgXAorIGlmKHBhc3MgJiAxKSB3
YmludmQoKTsgZWxzZSBtYigpOyBcCisgbWVtc2V0KGZpbGwsIF9fTElORV9fIHwgKF9fTElO
RV9fID4+IDgpLCBuciAqIFBBR0VfU0laRSk7IFwKKyBtYigpOyBcCitcCisgaWYoYm9vdF9j
cHVfaGFzKFg4Nl9GRUFUVVJFX0lCUlNCKSB8fCBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVf
SUJQQikpIFwKKyAgd3Jtc3JsKE1TUl9QUkVEX0NNRCwgUFJFRF9DTURfSUJQQik7IFwKKyBz
dGFydCA9IHJkdHNjX29yZGVyZWQoKTsgXAorIGlmKHByb2JlKGZpbGwsIG5yKSkgQlVHKCk7
IFwKKyBwcmUgPSByZHRzY19vcmRlcmVkKCkgLSBzdGFydDsgXAorXAorIHN0YXJ0ID0gcmR0
c2Nfb3JkZXJlZCgpOyBcCisgZm9yKHBmbiA9IDA7IHBmbiA8IG5yIC8gMjsgKytwZm4pIFwK
KyAgY2xlYXJfcGFnZV8jI2tpbmQoYnVmICsgcGZuICogUEFHRV9TSVpFKTsgXAorIGNsciA9
IHJkdHNjX29yZGVyZWQoKSAtIHN0YXJ0OyBcCitcCisgaWYoYm9vdF9jcHVfaGFzKFg4Nl9G
RUFUVVJFX0lCUlNCKSB8fCBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfSUJQQikpIFwKKyAg
d3Jtc3JsKE1TUl9QUkVEX0NNRCwgUFJFRF9DTURfSUJQQik7IFwKKyBzdGFydCA9IHJkdHNj
X29yZGVyZWQoKTsgXAorIGlmKHByb2JlKGZpbGwsIG5yKSkgQlVHKCk7IFwKKyBwb3N0ID0g
cmR0c2Nfb3JkZXJlZCgpIC0gc3RhcnQ7IFwKK1wKKyAvKiBsb2NhbF9pcnFfZW5hYmxlKCk7
ICovIFwKKyBwcmludGsoIiBwcmU9JWx4ICIgI2tpbmQgIj0lbHggcG9zdD0lbHhcbiIsIHBy
ZSwgY2xyLCBwb3N0KTsgXAorfSB3aGlsZSgwKQorCisgICBDSEsoc3NlMik7CisgICBDSEso
c3Rvc2IpOworICAgQ0hLKHN0b3NsKTsKKyAgIENISyhzdG9zcSk7CisgICBpZihib290X2Nw
dV9oYXMoWDg2X0ZFQVRVUkVfQVZYKSkgQ0hLKGF2eCk7CisgICBpZihfX0dOVUNfXyA+IDQg
JiYgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0FWWDUxMkYpKSBDSEsoYXZ4NTEyKTsKKyAg
IGlmKF9fR05VQ19fID4gNSAmJiBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfQ0xaRVJPKSkg
Q0hLKGNsemVybyk7CisKKyN1bmRlZiBDSEsKKyAgfQorIH0KKyB3cml0ZV9jcjAoY3IwKTsK
KyBmcmVlX3hlbmhlYXBfcGFnZXMoYnVmLCBvcmRlciAtIDEpOworIGZyZWVfeGVuaGVhcF9w
YWdlcyhmaWxsLCBvcmRlcik7Cit9CiAgICAgLyogR2VuZXJhdGUgYSBzeW1ib2wgdG8gYmUg
dXNlZCBpbiBsaW5rZXIgc2NyaXB0ICovCiAgICAgQVNNX0NPTlNUQU5UKEZJWEFERFJfWF9T
SVpFLCBGSVhBRERSX1hfU0laRSk7CiB9Cg==
--------------9DC579F8BDE441FCF75385D5--


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 07:19:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 07:19:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107632.205668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUlQ0-0000sW-0Q; Fri, 09 Apr 2021 07:19:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107632.205668; Fri, 09 Apr 2021 07: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 1lUlPz-0000sP-TQ; Fri, 09 Apr 2021 07:19:03 +0000
Received: by outflank-mailman (input) for mailman id 107632;
 Fri, 09 Apr 2021 07:19: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 1lUlPy-0000sH-TS; Fri, 09 Apr 2021 07:19: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 1lUlPy-00041v-LD; Fri, 09 Apr 2021 07:19: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 1lUlPy-0005PW-Dx; Fri, 09 Apr 2021 07:19:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUlPy-0003vg-DW; Fri, 09 Apr 2021 07:19:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=5Yje62IB4+naC1xT5o2xmM785qIrLizkbNjHRvM78S0=; b=KGBS3Fbc34zMmVLz09jbvAjAHa
	xY735TWIzz1kmbIOX+LrMpimOW5ZwiyMbO4a2XKGqe6FK/iPr6XSd/yRCb1Bpkj2cvTXcxGtVsTTl
	qyktPhp3argrIcoXwZgQoFFcK6Mw9vtVgBhDvOFcqgxr5MDShhtsxHis7fuXwuo8afQU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160820-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160820: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit1:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check: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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-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-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-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=025eacc13f6147ffa99da5ecee4ed96e7fe8e887
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 07:19:02 +0000

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

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. 160646
 test-armhf-armhf-xl-vhd     17 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1   8 xen-boot         fail in 160843 pass in 160820
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 160843 pass in 160820
 test-armhf-armhf-xl-vhd     12 debian-di-install fail in 160843 pass in 160820
 test-armhf-armhf-libvirt-raw 13 guest-start      fail in 160843 pass in 160820
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail pass in 160843-retest

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160646
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          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
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  025eacc13f6147ffa99da5ecee4ed96e7fe8e887
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    7 days
Failing since        160665  2021-04-02 07:40:09 Z    6 days   10 attempts
Testing same since   160820  2021-04-08 11:10:09 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@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                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 07:49:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 07:49:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107660.205754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUlt8-00042D-8S; Fri, 09 Apr 2021 07:49:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107660.205754; Fri, 09 Apr 2021 07:49: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 1lUlt8-000426-5I; Fri, 09 Apr 2021 07:49:10 +0000
Received: by outflank-mailman (input) for mailman id 107660;
 Fri, 09 Apr 2021 07:49: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 1lUlt6-00041y-Ie; Fri, 09 Apr 2021 07:49: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 1lUlt6-0004XA-Ao; Fri, 09 Apr 2021 07:49: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 1lUlt5-0006Ml-Va; Fri, 09 Apr 2021 07:49:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUlt5-0002Q5-V6; Fri, 09 Apr 2021 07:49: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=PgnyEVLvQ8IwhofLUX1bzrdm4tbi75/9cvZTzpol2t8=; b=aRopJLgu26FTQ3Y/RFHPTibfqY
	ZbaVnsFQubJNAMKxFcwRaiE1Fm/MlItmzpq29emkIvOENO2t9UeAgqVl5MwG2xoMfEtjznabTtKft
	8Kz52HCD7OQwIyTkL0BJ10RmbdAsEMxNZ9NaeH/BOnv7H2w75cUMrqqKlK3hj2zHbr7w=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160827-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160827: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=9692c7b0373677badcf8bb299ab8e2597244d436
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 07:49:07 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                9692c7b0373677badcf8bb299ab8e2597244d436
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  231 days
Failing since        152659  2020-08-21 14:07:39 Z  230 days  432 attempts
Testing same since   160827  2021-04-08 15:43:52 Z    0 days    1 attempts

------------------------------------------------------------
475 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 141084 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 07:58:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 07:58:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107670.205780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUm20-00055w-DR; Fri, 09 Apr 2021 07:58:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107670.205780; Fri, 09 Apr 2021 07:58:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUm20-00055p-AU; Fri, 09 Apr 2021 07:58:20 +0000
Received: by outflank-mailman (input) for mailman id 107670;
 Fri, 09 Apr 2021 07:58:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rPLO=JG=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUm1y-00055k-FH
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 07:58:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a2b02526-1fd3-411f-99f7-f4f0d0b1de9b;
 Fri, 09 Apr 2021 07:58:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D031CB138;
 Fri,  9 Apr 2021 07:58: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: a2b02526-1fd3-411f-99f7-f4f0d0b1de9b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617955096; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=g1uwsH9Aqj04/mBNPbC4jZLd2FjLD9LdYZfFQh/hXgA=;
	b=nTxtHZd60NRU+9syYqNdaw7R4khcIkfoOZhmfrzLVDGyBNsWqxH39+E11HQCaUlIAWsRfx
	XBIb1tMa3/Oz7Rr+mzq+uYJFx0qIpfOaLpm2nBD6bNNrl63KWtNqK3CdQbVQ0G0CZALQa7
	MLbMrRqX2Jx6+k1bK5jJF/kGrWrXWto=
Subject: Re: [PATCH v3 4/7] x86: guard against straight-line speculation past
 RET
From: Jan Beulich <jbeulich@suse.com>
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>
References: <8e7d1472-dd37-8ed3-ec2f-ce954ea61dfd@suse.com>
 <0f717e5d-c1f7-ff0d-e136-16cea6b77de3@suse.com>
Message-ID: <6f1a9b26-7775-3fdf-571e-d0ae87732099@suse.com>
Date: Fri, 9 Apr 2021 09:58:15 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <0f717e5d-c1f7-ff0d-e136-16cea6b77de3@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.11.2020 14:44, Jan Beulich wrote:
> Under certain conditions CPUs can speculate into the instruction stream
> past a RET instruction. Guard against this just like 3b7dab93f240
> ("x86/spec-ctrl: Protect against CALL/JMP straight-line speculation")
> did - by inserting an "INT $3" insn. It's merely the mechanics of how to
> achieve this that differ: A set of macros gets introduced to post-
> process RET insns issued by the compiler (or living in assembly files).
> 
> Unfortunately for clang this requires further features their built-in
> assembler doesn't support: We need to be able to override insn mnemonics
> produced by the compiler (which may be impossible, if internally
> assembly mnemonics never get generated).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

So after committing I noticed that ...

> v4: Drop left-over checking of clang for \(text) handling.
> v3: Use .byte 0xc[23] instead of the nested macros.

... with this conversion the int3 was lost. Therefore I've reverted
the commit, for not having any real effect.

On top of this I've also noticed only now that this doesn't cover
the issue everywhere - asm-macros.h doesn't get included by some of
the files, and hence there the wanted transformation doesn't occur.
But I'm not sure we want to force its inclusion uniformly, from
e.g. asm-x86/config.h.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 08:07:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 08:07:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107676.205792 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUmAP-0006d2-ED; Fri, 09 Apr 2021 08:07:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107676.205792; Fri, 09 Apr 2021 08:07: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 1lUmAP-0006cv-AT; Fri, 09 Apr 2021 08:07:01 +0000
Received: by outflank-mailman (input) for mailman id 107676;
 Fri, 09 Apr 2021 08:07:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rPLO=JG=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUmAO-0006cq-HO
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 08:07:00 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c285d491-45c1-43e5-838f-a907ae4bf884;
 Fri, 09 Apr 2021 08:06:59 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0963CAEFE;
 Fri,  9 Apr 2021 08:06: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: c285d491-45c1-43e5-838f-a907ae4bf884
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617955619; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=dwLkDWfkK+78jVJil/qNAZxaxPts92drm/pMR65G5EM=;
	b=uyplb3X+6kvBXqDonhvv4J8eG7PwR5z5wSokch9XaPET1BwUI/lJb6L1v9qslwlr4X9dH5
	8SSvbe3wHvepcC61/0P7rhg/RJ2rwWuQZETcWMczEMZ4A8dGoOc11W0BG8NdIspzKE8dW+
	qqpKxw3O3lzptKuU+PFSIis3d0TpCVU=
Subject: Ping: [PATCH 0/2] x86: is_pv*domain() adjustments
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
Message-ID: <efe31dc7-180d-9b7f-9a80-26a9f090803d@suse.com>
Date: Fri, 9 Apr 2021 10:06:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 27.11.2020 17:51, Jan Beulich wrote:
> 1: correct is_pv_domain() when !CONFIG_PV
> 2: use is_pv_64bit_domain() to avoid double evaluate_nospec()

Ping?

Thanks, Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 08:16:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 08:16:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107680.205807 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUmJf-0007ev-Cs; Fri, 09 Apr 2021 08:16:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107680.205807; Fri, 09 Apr 2021 08:16:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUmJf-0007eo-9Z; Fri, 09 Apr 2021 08:16:35 +0000
Received: by outflank-mailman (input) for mailman id 107680;
 Fri, 09 Apr 2021 08:16:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rPLO=JG=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUmJd-0007ej-Nb
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 08:16:33 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 47bb7726-d768-411c-81e5-a53ef148c778;
 Fri, 09 Apr 2021 08:16:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 19461AFF2;
 Fri,  9 Apr 2021 08:16: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: 47bb7726-d768-411c-81e5-a53ef148c778
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617956192; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=1mNZEOqQAy+ATL6Tydb56njuwQFMfru48PyX5E2zoGw=;
	b=EfcJxKCbjbZHzaaePt9zcKCLHbOVU798Xe+sl/ore9ksJspcKUdg2EEnV9+JHHFnrRzEJ5
	rSFo8adaDEf1p0VYJNlTB+DQr2KP9/ZEdjEmWVj7ehvR5osqb2Lwkc/msVDk1yNnITOE1v
	xiHcwB7P2bnfKJfi6VtK/v8juaSpXvA=
Subject: Re: [PATCH 1/3] xen-pciback: redo VF placement in the virtual
 topology
To: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <32d6a8d4-c06f-7fe0-1376-4b80fac8c6de@suse.com>
 <b41663ff-6a90-877d-9cd3-7e052c28eb6a@oracle.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <4e39de85-1b03-0fb4-805a-69a16bbaafa6@suse.com>
Date: Fri, 9 Apr 2021 10:16:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b41663ff-6a90-877d-9cd3-7e052c28eb6a@oracle.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 09.04.2021 00:28, Boris Ostrovsky wrote:
> 
> On 4/7/21 10:37 AM, Jan Beulich wrote:
>> The commit referenced below was incomplete: It merely affected what
>> would get written to the vdev-<N> xenstore node. The guest would still
>> find the function at the original function number as long as 
>> __xen_pcibk_get_pci_dev() wouldn't be in sync. The same goes for AER wrt
>> __xen_pcibk_get_pcifront_dev().
>>
>> Undo overriding the function to zero and instead make sure that VFs at
>> function zero remain alone in their slot. This has the added benefit of
>> improving overall capacity, considering that there's only a total of 32
>> slots available right now (PCI segment and bus can both only ever be
>> zero at present).
>>
>> Fixes: 8a5248fe10b1 ("xen PV passthru: assign SR-IOV virtual functions to separate virtual slots")
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> Cc: stable@vger.kernel.org
>> ---
>> Like the original change this has the effect of changing where devices
>> would appear in the guest, when there are multiple of them. I don't see
>> an immediate problem with this, but if there is we may need to reduce
>> the effect of the change.
>> Taking into account, besides the described breakage, how xen-pcifront's
>> pcifront_scan_bus() works, I also wonder what problem it was in the
>> first place that needed fixing. It may therefore also be worth to
>> consider simply reverting the original change.
> 
> 
> Perhaps this is no longer a problem, it's been 9 years since that patch. Have you tried reverting to 8a5248fe10b101104d92d01438f918e899414fd1~1 and testing that?

Well, no, for the simple reason that I don't really understand how that
change was meant to make a difference. Hence while simply reverting may
be an option, it's not something I would want to suggest myself (simply
because I couldn't fully justify doing so).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 08:30:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 08:30:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107686.205822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUmWj-0000tv-ND; Fri, 09 Apr 2021 08:30:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107686.205822; Fri, 09 Apr 2021 08: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 1lUmWj-0000t9-Ht; Fri, 09 Apr 2021 08:30:05 +0000
Received: by outflank-mailman (input) for mailman id 107686;
 Fri, 09 Apr 2021 08:30: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 1lUmWh-0000e8-S9
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 08:30: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 1lUmWg-0005jj-NL; Fri, 09 Apr 2021 08:30:02 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUmWg-0000Vk-3E; Fri, 09 Apr 2021 08:30:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=NEpvmm9Xgyw0Kv+rJJBTxki3KAJ7/R7T7bXjb5BZLXk=; b=xZLRsLOxJdvfmkpTkLybDuMY52
	V5xV8yBq854n2pSdPWZWpqoBREJzoo5hiF2WGSzS6PifRzTcxI0kZIH5zVrrwDndoyZVa65rNV1Hw
	xdYmF3txJW1DnuOHyyww7NUk8UJvSmUF5zJbrDgEYV3CuGnb1VDoAGjBiPfQOvFtkIMI=;
Subject: Re: [PATCH v2 1/4] xen/arm: Move dom0 creation in domain_build.c
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-2-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <f6bca491-afdb-df20-c50e-af1c294db91b@xen.org>
Date: Fri, 9 Apr 2021 09:30:00 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210408094818.8173-2-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Luca,

On 08/04/2021 10:48, Luca Fancellu wrote:
> Move dom0 creation and start from setup.c to domain_build.c
> on a dedicate function.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> ---
>   xen/arch/arm/domain_build.c | 36 ++++++++++++++++++++++++++++++++++++
>   xen/arch/arm/setup.c        | 29 +----------------------------
>   xen/include/asm-arm/setup.h |  1 +
>   3 files changed, 38 insertions(+), 28 deletions(-)
> 
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 374bf655ee..d7c9c7f4d1 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -21,6 +21,7 @@
>   #include <asm/device.h>
>   #include <asm/kernel.h>
>   #include <asm/setup.h>
> +#include <asm/tee/tee.h>
>   #include <asm/platform.h>
>   #include <asm/psci.h>
>   #include <asm/setup.h>
> @@ -2520,6 +2521,41 @@ void __init create_domUs(void)
>       }
>   }
>   
> +struct domain* __init create_dom0(void)
> +{
> +    struct domain *dom0;
> +    struct xen_domctl_createdomain dom0_cfg = {
> +        .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
> +        .max_evtchn_port = -1,
> +        .max_grant_frames = gnttab_dom0_frames(),
> +        .max_maptrack_frames = -1,
> +    };
> +
> +    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
> +    dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
> +    /*
> +     * Xen vGIC supports a maximum of 992 interrupt lines.
> +     * 32 are substracted to cover local IRQs.
> +     */
> +    dom0_cfg.arch.nr_spis = min(gic_number_lines(), (unsigned int) 992) - 32;
> +    if ( gic_number_lines() > 992 )
> +        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n");
> +    dom0_cfg.arch.tee_type = tee_get_type();
> +    dom0_cfg.max_vcpus = dom0_max_vcpus();
> +
> +    if ( iommu_enabled )
> +        dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
> +
> +    dom0 = domain_create(0, &dom0_cfg, true);
> +    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
> +        panic("Error creating domain 0\n");
> +
> +    if ( construct_dom0(dom0) != 0)
> +        panic("Could not set up DOM0 guest OS\n");
> +
> +    return dom0;
> +}
> +

I would move the function after...

>   int __init construct_dom0(struct domain *d)

... this function so we can mark construct_dom0() static as 
create_dom0() is the only caller.

>   {
>       struct kernel_info kinfo = {};
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index 2532ec9739..b405f58996 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -51,7 +51,6 @@
>   #include <asm/platform.h>
>   #include <asm/procinfo.h>
>   #include <asm/setup.h>
> -#include <asm/tee/tee.h>
>   #include <xsm/xsm.h>
>   #include <asm/acpi.h>
>   
> @@ -805,12 +804,6 @@ void __init start_xen(unsigned long boot_phys_offset,
>       const char *cmdline;
>       struct bootmodule *xen_bootmodule;
>       struct domain *dom0;
> -    struct xen_domctl_createdomain dom0_cfg = {
> -        .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
> -        .max_evtchn_port = -1,
> -        .max_grant_frames = gnttab_dom0_frames(),
> -        .max_maptrack_frames = -1,
> -    };
>       int rc;
>   
>       dcache_line_bytes = read_dcache_line_bytes();
> @@ -965,27 +958,7 @@ void __init start_xen(unsigned long boot_phys_offset,
>       enable_errata_workarounds();
>   
>       /* Create initial domain 0. */
> -    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
> -    dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
> -    /*
> -     * Xen vGIC supports a maximum of 992 interrupt lines.
> -     * 32 are substracted to cover local IRQs.
> -     */
> -    dom0_cfg.arch.nr_spis = min(gic_number_lines(), (unsigned int) 992) - 32;
> -    if ( gic_number_lines() > 992 )
> -        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n");
> -    dom0_cfg.arch.tee_type = tee_get_type();
> -    dom0_cfg.max_vcpus = dom0_max_vcpus();
> -
> -    if ( iommu_enabled )
> -        dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
> -
> -    dom0 = domain_create(0, &dom0_cfg, true);
> -    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
> -        panic("Error creating domain 0\n");
> -
> -    if ( construct_dom0(dom0) != 0)
> -        panic("Could not set up DOM0 guest OS\n");
> +    dom0 = create_dom0();
>   
>       heap_init_late();
>   
> diff --git a/xen/include/asm-arm/setup.h b/xen/include/asm-arm/setup.h
> index 28bf622aa1..e5f5c7ebc6 100644
> --- a/xen/include/asm-arm/setup.h
> +++ b/xen/include/asm-arm/setup.h
> @@ -95,6 +95,7 @@ int acpi_make_efi_nodes(void *fdt, struct membank tbl_add[]);
>   
>   int construct_dom0(struct domain *d);
>   void create_domUs(void);
> +struct domain* create_dom0(void);
>   
>   void discard_initial_modules(void);
>   void fw_unreserved_regions(paddr_t s, paddr_t e,
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 08:44:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 08:44:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107696.205840 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUmk4-00024p-VZ; Fri, 09 Apr 2021 08:43:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107696.205840; Fri, 09 Apr 2021 08:43: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 1lUmk4-00024i-R2; Fri, 09 Apr 2021 08:43:52 +0000
Received: by outflank-mailman (input) for mailman id 107696;
 Fri, 09 Apr 2021 08:43: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 1lUmk3-00024d-DO
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 08:43: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 1lUmk2-0005xP-52; Fri, 09 Apr 2021 08:43:50 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUmk1-00020Q-Tm; Fri, 09 Apr 2021 08:43: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=yubUyvZwRQsay5LUZpeGW4b3i43ugNVTvUvaC/rbNoo=; b=5f91O3y1cRThRcg7aPye4jJjkO
	fMaSGSRvavOlzoSQVlDydp0zHmB5iSJ+8pWkf9PQ1LUQ2wu3SaLMfWja5dW4bbdexGtxaaZkD/BP3
	y71/+CpW1Qv1qTUtM4UAWF1IayHBmWeAbVfIpkqvK86Tcjk7GDA2nIxac4qQGR5/olkU=;
Subject: Re: [PATCH] xen/gunzip: Fix build with clang after 33bc2a8495f7
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210407182726.26603-1-julien@xen.org>
 <59afb632-f2c9-bf3d-ef97-bc9f5a95d0a6@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <1b4acc2d-f208-2bc1-cdcc-a09a46b78b45@xen.org>
Date: Fri, 9 Apr 2021 09:43:47 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <59afb632-f2c9-bf3d-ef97-bc9f5a95d0a6@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 08/04/2021 07:17, Jan Beulich wrote:
> On 07.04.2021 20:27, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> The compilation will fail when building Xen with clang and
>> CONFIG_DEBUG=y:
>>
>> make[4]: Leaving directory '/oss/xen/xen/common/libelf'
>>    INIT_O  gunzip.init.o
>> Error: size of gunzip.o:.text is 0x00000019
>>
>> This is because the function init_allocator() will not be inlined
>> and is not part of the init section.
>>
>> Fix it by marking init_allocator() with INIT.
>>
>> Fixes: 33bc2a8495f7 ("xen/gunzip: Allow perform_gunzip() to be called multiple times")
>> Reported-by: Jan Beulich <jbeulich@suse.com>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> Acked-by: Jan Beulich <jbeulich@suse.com>

Thanks! I have committed the patch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 09:12:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 09:12:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107701.205856 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUnBd-0004td-AJ; Fri, 09 Apr 2021 09:12:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107701.205856; Fri, 09 Apr 2021 09:12: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 1lUnBd-0004tW-5z; Fri, 09 Apr 2021 09:12:21 +0000
Received: by outflank-mailman (input) for mailman id 107701;
 Fri, 09 Apr 2021 09:12: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 1lUnBc-0004tR-8B
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 09:12: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 1lUnBY-0006Pa-Dl; Fri, 09 Apr 2021 09:12:16 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUnBY-00057X-2C; Fri, 09 Apr 2021 09: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=uRJPOQODoy4IXN4+v6qQ0IVkspn+XW1Sl/lUizAD00I=; b=2h/idNwGYRxorj21LrLBFnN+E9
	WrNTutptjasVtqxQTkiEza/DEa8VROg7s9NE3K3eHt9uuu/HLWkiw39sqpUtRVj6RwM8C4k/cky2i
	bkvAn4Z8Hj+N4bTdu6clLLfUW4l8aMGEunBWQTCoquge4siP6IiHgXAlgw7TIY3T3Ifc=;
Subject: Re: [PATCH v2 4/4] xen/arm: Prevent Dom0 to be loaded when using
 dom0less
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-5-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <ebd93270-c8c3-7fb9-9abe-e40fdce8680a@xen.org>
Date: Fri, 9 Apr 2021 10:12:13 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210408094818.8173-5-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Luca,

On 08/04/2021 10:48, Luca Fancellu wrote:
> This patch prevents the dom0 to be loaded skipping its
> building and going forward to build domUs when the dom0
> kernel is not found and at least one domU is present.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> ---
>   docs/features/dom0less.pandoc |  7 +++---
>   xen/arch/arm/setup.c          | 42 ++++++++++++++++++++++++++++++++---
>   2 files changed, 43 insertions(+), 6 deletions(-)
> 
> diff --git a/docs/features/dom0less.pandoc b/docs/features/dom0less.pandoc
> index d798596cdf..a5eb5bcda0 100644
> --- a/docs/features/dom0less.pandoc
> +++ b/docs/features/dom0less.pandoc
> @@ -16,9 +16,10 @@ Multiboot specification has been extended to allow for multiple domains
>   to be passed to Xen. See docs/misc/arm/device-tree/booting.txt for more
>   information about the Multiboot specification and how to use it.
>   
> -Currently, a control domain ("dom0") is still required, but in the
> -future it will become unnecessary when all domains are created
> -directly from Xen. Instead of waiting for the control domain to be fully
> +Currently, a control domain ("dom0") is still required to manage the DomU
> +domains, but the system can start also without dom0 if the hypervisor

"hypervisor Device Tree" sounds a bit strange to me. I would either drop 
"hypervisor" or say "host Devicet Tree".

> +Device Tree doesn't specify it and it declares one or more domUs.

AFAICT, the first "it" refer to dom0 but it is not clear what exact 
property will used to do the decision.

Also you have two 'it' in a row that refers to two different entities. I 
would name it to avoid confusion.

> +Instead of waiting for the control domain (when declared) to be fully
>   booted and the Xen tools to become available, domains created by Xen
>   this way are started right away in parallel. Hence, their boot time is
>   typically much shorter.
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index b405f58996..ecc4f0ae98 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -793,6 +793,38 @@ static void __init setup_mm(void)
>   }
>   #endif
>   
> +static bool __init is_dom0less_mode(void)
> +{
> +    struct bootmodules *mods = &bootinfo.modules;
> +    struct bootmodule *mod;
> +    unsigned int i;
> +    bool dom0found = false;
> +    bool domUfound = false;
> +
> +    /* Look into the bootmodules */
> +    for ( i = 0 ; i < mods->nr_mods ; i++ )
> +    {
> +        mod = &mods->module[i];
> +        /* Find if dom0 and domU kernels are present */
> +        if ( mod->kind == BOOTMOD_KERNEL )
> +        {
> +            if ( mod->domU == false )
> +            {
> +                dom0found = true;
> +                break;
> +            }

NIT: You can directly return false here because if you have dom0 the it 
can't be dom0less.

> +            else
> +                domUfound = true;
> +        }
> +    }
> +
> +    /*
> +     * If there is no dom0 kernel but at least one domU, then we are in
> +     * dom0less mode
> +     */
> +    return ( !dom0found && domUfound );
> +}
> +
>   size_t __read_mostly dcache_line_bytes;
>   
>   /* C entry point for boot CPU */
> @@ -803,7 +835,7 @@ void __init start_xen(unsigned long boot_phys_offset,
>       int cpus, i;
>       const char *cmdline;
>       struct bootmodule *xen_bootmodule;
> -    struct domain *dom0;
> +    struct domain *dom0 = NULL;
>       int rc;
>   
>       dcache_line_bytes = read_dcache_line_bytes();
> @@ -958,7 +990,10 @@ void __init start_xen(unsigned long boot_phys_offset,
>       enable_errata_workarounds();
>   
>       /* Create initial domain 0. */
> -    dom0 = create_dom0();
> +    if ( !is_dom0less_mode() )
> +        dom0 = create_dom0();
> +    else
> +        printk(XENLOG_INFO "Xen dom0less mode detected\n");
>   
>       heap_init_late();
>   
> @@ -976,7 +1011,8 @@ void __init start_xen(unsigned long boot_phys_offset,
>       if ( acpi_disabled )
>           create_domUs();
>   
> -    domain_unpause_by_systemcontroller(dom0);
> +    if ( dom0 )
> +        domain_unpause_by_systemcontroller(dom0);
>   
>       /* Switch on to the dynamically allocated stack for the idle vcpu
>        * since the static one we're running on is about to be freed. */
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 09:51:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 09:51:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107713.205883 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUnnb-0000F4-Cj; Fri, 09 Apr 2021 09:51:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107713.205883; Fri, 09 Apr 2021 09: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 1lUnnb-0000Ex-9G; Fri, 09 Apr 2021 09:51:35 +0000
Received: by outflank-mailman (input) for mailman id 107713;
 Fri, 09 Apr 2021 09:51:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TN0Z=JG=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lUnna-0000Er-0v
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 09:51:34 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown
 [40.107.21.47]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d959a7a7-a29b-4c5e-96d3-9726a91094b0;
 Fri, 09 Apr 2021 09:51:31 +0000 (UTC)
Received: from AM7PR04CA0020.eurprd04.prod.outlook.com (2603:10a6:20b:110::30)
 by AM0PR08MB4497.eurprd08.prod.outlook.com (2603:10a6:208:146::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Fri, 9 Apr
 2021 09:51:29 +0000
Received: from AM5EUR03FT028.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:110:cafe::57) by AM7PR04CA0020.outlook.office365.com
 (2603:10a6:20b:110::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend
 Transport; Fri, 9 Apr 2021 09:51:29 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT028.mail.protection.outlook.com (10.152.16.118) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Fri, 9 Apr 2021 09:51:28 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Fri, 09 Apr 2021 09:51:28 +0000
Received: from e2b301df2a10.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7FF84257-55B2-4262-A77D-F58B479B7589.1; 
 Fri, 09 Apr 2021 09:51:17 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e2b301df2a10.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 09 Apr 2021 09:51:17 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR0801MB1933.eurprd08.prod.outlook.com (2603:10a6:800:8d::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Fri, 9 Apr
 2021 09:51:08 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.034; Fri, 9 Apr 2021
 09:51:08 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0046.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:152::15) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.27 via Frontend Transport; Fri, 9 Apr 2021 09: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: d959a7a7-a29b-4c5e-96d3-9726a91094b0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Zj/6L+2aLx5tVKXKPbhmg+6y+QPk6WRDdRAegL9fC3U=;
 b=fFI2IWyJ700JQUxHcjl9BkznRS/MhYDZdo5aDgLwDag+zs8aOQXnFvQSlFUtHuoLrZTlTWf3dB2aObzC9QfV2alNypGi3qLmtWcsrHgbljizzMR8JWlf6cOUoWvcB/oG2o4rX1TigQvNguuTvd4wLbOwkTrLk/G9sgi0iYlLntg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 10a0c30e76f33e5e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U5j771RZbzvLDwqbFKn+cKze7Yw7KcA+hsmGaYr4wEOfO1rnIH8hEKzlheVFWYNOzuBukzjssnunvga7DPIUvUYx858IC4jghqM/adFMgVxYmJmxjxQH6jLP4OimB12LnIL1p7Xsg6DrA7sYZ40G4g9sj5dr7FjIVhcPzu4jmAjFXQhVdCwLWwp/nkOA66hkcIVOYKrqoyVg2iEiDX3QDMpGaN0mZ/YE90RqHyJ7MbRiN4IriPYfQm477D5j9poE4sfA8il1fUJUTidQKTcvWcQBhLGxWrm7KHhFQsE3gLduq1l/h8z/+FFfJPotqnAbeIgU0Q5H99dEWrbKnlquLw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Zj/6L+2aLx5tVKXKPbhmg+6y+QPk6WRDdRAegL9fC3U=;
 b=ScwcTb0E/pPNJuPya61axwfRJRoo3jknoaRIsZtARDCDDorcFc6/Vw1Atpq97ymSKyAOhDL91UkWJSCnvBk1fWli0BEb7zvwzidyoyePYg3IX4FODnQoVDdmYr8uGrwmEb9TQk2H/6a5plHAnqpcCsAbe4PFP+QiFmdtVZbpZTMXJ6iJhAb2pyquHjlh8Dk5swvsK/sJF+6Af01mbYHJ+M2a4E5UfmCrI8R2skFUAyYOVUZD2eBj4K1yQTLz4UGbPbdEFpPPGGu1D9xMlG1XT7ubaSdo24Xn1j7M7Mz2BrUnJntfOsuQ7E6NK7SuZOLhoaDNp6+san8xpAisgxdP/w==
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=Zj/6L+2aLx5tVKXKPbhmg+6y+QPk6WRDdRAegL9fC3U=;
 b=fFI2IWyJ700JQUxHcjl9BkznRS/MhYDZdo5aDgLwDag+zs8aOQXnFvQSlFUtHuoLrZTlTWf3dB2aObzC9QfV2alNypGi3qLmtWcsrHgbljizzMR8JWlf6cOUoWvcB/oG2o4rX1TigQvNguuTvd4wLbOwkTrLk/G9sgi0iYlLntg=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v2 1/4] xen/arm: Move dom0 creation in domain_build.c
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <f6bca491-afdb-df20-c50e-af1c294db91b@xen.org>
Date: Fri, 9 Apr 2021 10:51:00 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <FE296364-070D-43FA-B302-E2D998D0146B@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-2-luca.fancellu@arm.com>
 <f6bca491-afdb-df20-c50e-af1c294db91b@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0046.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:152::15) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 33e42a5a-aadd-42df-791e-08d8fb3d0c13
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1933:|AM0PR08MB4497:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AM0PR08MB4497A9A9FD4B04488D24322DE4739@AM0PR08MB4497.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 nzaxmPK7Xws4orwbb+TSa09Jxu46UUbKzDeE7wmnHgfKeNJmhVpSo80xWH2/KYRi9hK3vQ3GHMAR5VNTRRS9rNHDxbrCSi140OCVJrBRa0vAjkkS5/pVNJlgvVvtrcRwshwSkKQzm3Ezztb23oq4AhSAnoh1pUsw2YnbRiQrwMOurEtb4TazEgW+JTF8eIdl68lwJzf7Pd0bYKwhrYhEJuJ2e1dCHalVTyC7l5DZD/4Xr3r8+Sdl8RB5wIL2DR0RgbhrsYTjndS3I/G//nFAgTySBbj9Jkte1HPSdSyzpfaYTjPBI8aXYDakidTJUodwyjXhqzOLcewTcp8+jxnhfF8SLjZACJ5IbqBqkmxzXOAlWizF2wEeUErUFTQTBnn/v00q+kfkVKTS677k73OZlJY6JWNxDQv7XJx/tPTWPbiReOEcACiPdlE4ABrH9Vm1iWJcW19ANjIt8KsQg7A/fGCmiBtBVnBmS4lFh+MZjwyPAR5iVi9VzbtZ5hjcLo4SwHcuUQKdLgzMcxFU5sQ7zEJGLQvHfE6bRGSpPkrW6JM3gXpSwPR3za0edhsP1gle3jG7Z9P2i56Y672Sh7PmCFUSbu0agwiyU8u5Rxsw5mm/myNkwhs+Qz6Qk2npiYQ/tIIWLvotgydxjsF4PnfsSxXUR/yPelZETltEFpsm/YIndG1nclo1NvV3oSI3ggp3JR4ky24jYdunFTrahWERYeLS6JxkQ77zH5i//qmq/y0=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(346002)(376002)(136003)(39860400002)(44832011)(36756003)(66476007)(5660300002)(478600001)(66556008)(6916009)(83380400001)(38100700001)(66946007)(2906002)(2616005)(16526019)(956004)(26005)(186003)(4326008)(6666004)(6486002)(7696005)(38350700001)(52116002)(316002)(53546011)(33656002)(54906003)(86362001)(8936002)(8676002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1933
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT028.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	94cfce92-2137-4e91-a39c-08d8fb3cff98
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	s6gnQyJzqysCQ5ulTI68FP6whImeALhRmGBWBBkWn49D1gxDiRgiScAEqGboCIHPM8+C+tsYzLBybkD8TuIZ2BTA1jmimtd899MeJ5DzIFkXhBuxqNXslA7xLxYrpySbG30AbLUvzAgRQLP6ghcHV5cNjXz54DZk6fH8VbeWyPe+7rnYjHl2Lgmq/exICu56m71tQKBumjyB8pLeRbmR07q3eT+TzmwUZv3RyqyEqnUeSN90I6bygdaCyNAZBskzkiv/5Cz38iYsOVJ33XGJbtv9ZVl4m46NQpZIZVRVHikHBPK/WgIeFxZyNjyEUr1xPtkJ84kLLQsKpr9KLafECyFXEDh72HF8ylsxDjXwnW3v98gc1xY6FUAYXap60beSQDlo65kCHT9kKb/rRmvNuCIj7Db0S6cPMBibu6iAjooEvFsfOK0I0zOpmbBURjiBGy08kt/Kb5/UaN8gR+fKGYF+0yHaiwlM5jCL3AnNJJUWegaQDvuM8xCGkK7SCKGXfeqDTwzGEvcgVKe5yYcgj8u6WHdbVeRhCz+FT3SFnuNqU/HLSKFLW6vBgaP0wM52ch1yr0Eug399ISNeBElNYdIJ8/ZjnZ5c4SBxOTMP2UBlU20JVZb3vITN8pk/5G6A8L/Ipsn2Njee5uxpu/a2vmGVLDqIeAdGhgpc0eUciFE=
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:(4636009)(376002)(136003)(346002)(396003)(39860400002)(36840700001)(46966006)(5660300002)(70586007)(356005)(70206006)(33656002)(47076005)(82740400003)(26005)(16526019)(107886003)(6486002)(7696005)(6862004)(36860700001)(83380400001)(54906003)(36756003)(8936002)(316002)(82310400003)(6666004)(44832011)(8676002)(336012)(4326008)(2616005)(2906002)(53546011)(956004)(81166007)(86362001)(186003)(478600001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 09:51:28.6605
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 33e42a5a-aadd-42df-791e-08d8fb3d0c13
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:
	AM5EUR03FT028.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB4497



> On 9 Apr 2021, at 09:30, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Luca,
>=20
> On 08/04/2021 10:48, Luca Fancellu wrote:
>> Move dom0 creation and start from setup.c to domain_build.c
>> on a dedicate function.
>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>> ---
>>  xen/arch/arm/domain_build.c | 36 ++++++++++++++++++++++++++++++++++++
>>  xen/arch/arm/setup.c        | 29 +----------------------------
>>  xen/include/asm-arm/setup.h |  1 +
>>  3 files changed, 38 insertions(+), 28 deletions(-)
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index 374bf655ee..d7c9c7f4d1 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -21,6 +21,7 @@
>>  #include <asm/device.h>
>>  #include <asm/kernel.h>
>>  #include <asm/setup.h>
>> +#include <asm/tee/tee.h>
>>  #include <asm/platform.h>
>>  #include <asm/psci.h>
>>  #include <asm/setup.h>
>> @@ -2520,6 +2521,41 @@ void __init create_domUs(void)
>>      }
>>  }
>>  +struct domain* __init create_dom0(void)
>> +{
>> +    struct domain *dom0;
>> +    struct xen_domctl_createdomain dom0_cfg =3D {
>> +        .flags =3D XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
>> +        .max_evtchn_port =3D -1,
>> +        .max_grant_frames =3D gnttab_dom0_frames(),
>> +        .max_maptrack_frames =3D -1,
>> +    };
>> +
>> +    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
>> +    dom0_cfg.arch.gic_version =3D XEN_DOMCTL_CONFIG_GIC_NATIVE;
>> +    /*
>> +     * Xen vGIC supports a maximum of 992 interrupt lines.
>> +     * 32 are substracted to cover local IRQs.
>> +     */
>> +    dom0_cfg.arch.nr_spis =3D min(gic_number_lines(), (unsigned int) 99=
2) - 32;
>> +    if ( gic_number_lines() > 992 )
>> +        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n"=
);
>> +    dom0_cfg.arch.tee_type =3D tee_get_type();
>> +    dom0_cfg.max_vcpus =3D dom0_max_vcpus();
>> +
>> +    if ( iommu_enabled )
>> +        dom0_cfg.flags |=3D XEN_DOMCTL_CDF_iommu;
>> +
>> +    dom0 =3D domain_create(0, &dom0_cfg, true);
>> +    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) =3D=3D NULL) )
>> +        panic("Error creating domain 0\n");
>> +
>> +    if ( construct_dom0(dom0) !=3D 0)
>> +        panic("Could not set up DOM0 guest OS\n");
>> +
>> +    return dom0;
>> +}
>> +
>=20
> I would move the function after...
>=20
>>  int __init construct_dom0(struct domain *d)
>=20
> ... this function so we can mark construct_dom0() static as create_dom0()=
 is the only caller.

Yes, I=E2=80=99ll modify it in the v3.

Cheers,
Luca

>=20
>>  {
>>      struct kernel_info kinfo =3D {};
>> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
>> index 2532ec9739..b405f58996 100644
>> --- a/xen/arch/arm/setup.c
>> +++ b/xen/arch/arm/setup.c
>> @@ -51,7 +51,6 @@
>>  #include <asm/platform.h>
>>  #include <asm/procinfo.h>
>>  #include <asm/setup.h>
>> -#include <asm/tee/tee.h>
>>  #include <xsm/xsm.h>
>>  #include <asm/acpi.h>
>>  @@ -805,12 +804,6 @@ void __init start_xen(unsigned long boot_phys_offs=
et,
>>      const char *cmdline;
>>      struct bootmodule *xen_bootmodule;
>>      struct domain *dom0;
>> -    struct xen_domctl_createdomain dom0_cfg =3D {
>> -        .flags =3D XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
>> -        .max_evtchn_port =3D -1,
>> -        .max_grant_frames =3D gnttab_dom0_frames(),
>> -        .max_maptrack_frames =3D -1,
>> -    };
>>      int rc;
>>        dcache_line_bytes =3D read_dcache_line_bytes();
>> @@ -965,27 +958,7 @@ void __init start_xen(unsigned long boot_phys_offse=
t,
>>      enable_errata_workarounds();
>>        /* Create initial domain 0. */
>> -    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
>> -    dom0_cfg.arch.gic_version =3D XEN_DOMCTL_CONFIG_GIC_NATIVE;
>> -    /*
>> -     * Xen vGIC supports a maximum of 992 interrupt lines.
>> -     * 32 are substracted to cover local IRQs.
>> -     */
>> -    dom0_cfg.arch.nr_spis =3D min(gic_number_lines(), (unsigned int) 99=
2) - 32;
>> -    if ( gic_number_lines() > 992 )
>> -        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n"=
);
>> -    dom0_cfg.arch.tee_type =3D tee_get_type();
>> -    dom0_cfg.max_vcpus =3D dom0_max_vcpus();
>> -
>> -    if ( iommu_enabled )
>> -        dom0_cfg.flags |=3D XEN_DOMCTL_CDF_iommu;
>> -
>> -    dom0 =3D domain_create(0, &dom0_cfg, true);
>> -    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) =3D=3D NULL) )
>> -        panic("Error creating domain 0\n");
>> -
>> -    if ( construct_dom0(dom0) !=3D 0)
>> -        panic("Could not set up DOM0 guest OS\n");
>> +    dom0 =3D create_dom0();
>>        heap_init_late();
>>  diff --git a/xen/include/asm-arm/setup.h b/xen/include/asm-arm/setup.h
>> index 28bf622aa1..e5f5c7ebc6 100644
>> --- a/xen/include/asm-arm/setup.h
>> +++ b/xen/include/asm-arm/setup.h
>> @@ -95,6 +95,7 @@ int acpi_make_efi_nodes(void *fdt, struct membank tbl_=
add[]);
>>    int construct_dom0(struct domain *d);
>>  void create_domUs(void);
>> +struct domain* create_dom0(void);
>>    void discard_initial_modules(void);
>>  void fw_unreserved_regions(paddr_t s, paddr_t e,
>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Fri Apr 09 09:57:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 09:57:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107720.205898 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUntF-0000Y5-9x; Fri, 09 Apr 2021 09:57:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107720.205898; Fri, 09 Apr 2021 09:57:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUntF-0000Xy-4x; Fri, 09 Apr 2021 09:57:25 +0000
Received: by outflank-mailman (input) for mailman id 107720;
 Fri, 09 Apr 2021 09:57:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TN0Z=JG=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lUntE-0000Xt-Dh
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 09:57:24 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.62]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f983c2c2-233e-4eb6-bf34-faa1caddb193;
 Fri, 09 Apr 2021 09:57:21 +0000 (UTC)
Received: from DB8P191CA0026.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:130::36)
 by DB6PR0802MB2613.eurprd08.prod.outlook.com (2603:10a6:4:a0::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Fri, 9 Apr
 2021 09:57:18 +0000
Received: from DB5EUR03FT014.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:130:cafe::4a) by DB8P191CA0026.outlook.office365.com
 (2603:10a6:10:130::36) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Fri, 9 Apr 2021 09:57:17 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT014.mail.protection.outlook.com (10.152.20.102) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Fri, 9 Apr 2021 09:57:17 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Fri, 09 Apr 2021 09:57:17 +0000
Received: from dc070bde98a8.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 54A0F0C7-024C-459F-8A7D-CED5D1590855.1; 
 Fri, 09 Apr 2021 09:57:07 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id dc070bde98a8.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 09 Apr 2021 09:57:07 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB5486.eurprd08.prod.outlook.com (2603:10a6:803:13b::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.20; Fri, 9 Apr
 2021 09:57:05 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::9ed:7407:c969:2a7c%6]) with mapi id 15.20.3999.034; Fri, 9 Apr 2021
 09:57:05 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO2P265CA0267.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a1::15) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.3999.32 via Frontend Transport; Fri, 9 Apr 2021 09:57: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: f983c2c2-233e-4eb6-bf34-faa1caddb193
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PTcDNk9eaYGnqWKROT4awA9sVRxuNmZnOOXEFkXMkzQ=;
 b=vOHiHOG05DBzfLEVdbAI/boVY8iir6FYytBZxy0nhHxYxEvTdqLHO8qycnDTwV9qXqLQ9RjJg8N0tdF3pTiwaS3fkA0v/UIb8CcXtHQit2KJu/vra2Zo8hdK49UQZwAUlxyY3OFM6Lgj3hGOphh88peStyayyMZT3pCdeBWtgJE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 8374d9a841fee1d1
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OPTPT/5Mh+XocYuBhcd4yADC8BcVOR7640IG2BbGERrUS9VaSgzMyk1ChCAN//sNSdCgz7o0KfWN9kGB6Z6yUGZgqMO8p9EEVbnIXnqmkd0+WFuUwHlLpnVJqsau2Em9EoQWEAFR9yefepdiQ2pLeOXNCmaJBbmehjMHdM0TD8DpkH4Orgn9WiMYHoQWnXghCO9kgtPeW6lWV5HXDdWJQGrAkg+v6+QDkW9oEvJZH3lSfSz53Zxh5R6MHIjkXk2suMZQ4WNV5UHH/B2so8dGZwArxAykz44HHyvFbRQ3L9s9O4y4wZvw50H1RbnrI9iJFhjnjMIwBgezqw7Q0A12Vg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PTcDNk9eaYGnqWKROT4awA9sVRxuNmZnOOXEFkXMkzQ=;
 b=gIR435W5T6XajhhHQWcaNr/5fG2rriYHYq2MFtODPYQH0XwKo37oqlwmt13fjTV3fBVZIsAhSIE36Uxe4cUiFQC82BVQ3t5nTebbaxlJlV2f0Lz6GLyglVO3fvsxNOE/eA1qoL1B1G0oeL2FoAMhvOJ63w+hIqvw8sOwJ65tVC/GKt9H3Lk7YE7rOzJNqT5oezJBwEy6pdlp58zq6f3/rUxQx94+nWpb5FdWtVQNVPtEz2dpsY8ZxeNN4RlQtgzsPuYzSYdjE//yxVcg5QIDmfprRE4F1IYjxC/1Le6iDggIIupRFU1GImPRGixtCeMroTOVCuUWCio/e6V2llWy3Q==
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=PTcDNk9eaYGnqWKROT4awA9sVRxuNmZnOOXEFkXMkzQ=;
 b=vOHiHOG05DBzfLEVdbAI/boVY8iir6FYytBZxy0nhHxYxEvTdqLHO8qycnDTwV9qXqLQ9RjJg8N0tdF3pTiwaS3fkA0v/UIb8CcXtHQit2KJu/vra2Zo8hdK49UQZwAUlxyY3OFM6Lgj3hGOphh88peStyayyMZT3pCdeBWtgJE=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=us-ascii
Subject: Re: [PATCH v2 4/4] xen/arm: Prevent Dom0 to be loaded when using
 dom0less
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <ebd93270-c8c3-7fb9-9abe-e40fdce8680a@xen.org>
Date: Fri, 9 Apr 2021 10:56:58 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <48EBE04B-F36C-441C-89A5-44E988A67F1C@arm.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-5-luca.fancellu@arm.com>
 <ebd93270-c8c3-7fb9-9abe-e40fdce8680a@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P265CA0267.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a1::15) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c1dea2a3-93fb-464b-3c38-08d8fb3ddc02
X-MS-TrafficTypeDiagnostic: VI1PR08MB5486:|DB6PR0802MB2613:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DB6PR0802MB26139100381948EF00C910A3E4739@DB6PR0802MB2613.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 yBX8WDGcfKGNqXo3LyKFC2PotBXE4q+Eg/Twh7Pn1JkoT9ltSQLlgu7J2AuRktfiiKNswJddbk5xyIW4U4+F4nNVP5hv1S8V9Y+gSSr0WVYw6IovmPde5g3OUryeJiYPD9vQp2DnFZpeH4si887YxZLQUpRyX39+ihpMygZcDcnufllOBTRcTNXhdfmdFnoSHYPrvYYrclHZDwoARwr2qUXJsnDXAigJgUmJLXPOCimb1M4x1kpPVAHeMq/QKufwA0R2PY6/w7UYjPmz3WTebL6F4KMaVGhpFZf07j2wWqsfzRPWmpAT3LqQPPa6TnPYqiX/ppGhudj08zMOnDq5D6L/EJ77BumeyT62rhpulRYG/KlNbp5ufSGnJKiGl/EUPg2mscK5y+ShrQGgfAUQi0HUIP9NOOtxmQkO6Tm32gb3POO9Fx4wJyG2jMAGaqCl/OxkFDBg5xiqMBuQYlWfCP+DD8TjFaRqWGjreVtbXg+VgO7jkU9Vv+OYCH68l0xiwbDuF/D9PotNyfskMVslQT4wvuAMVi8RiVgfwHkAuDPmAYrhQNeC1CQacDuL8bPkK77gou0N9UKoEDHrcRhMp+ziD4ksYlV8GG9nSx2u9PcUkokW0CzahHR4VtXHbDJgnzyeChMiiaFQZqBiBCLmVm3Lq1s8Jfw8cA76HrYMJM0Za8GjiEuujiODlCOE2HcYInsgyVZvUKpJfG8jgXHTRT/ZwBvGcAdCnxPRf5P2n101dsIsdElR2rdRqGaKvL8+
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39860400002)(136003)(396003)(376002)(366004)(38100700001)(66556008)(66476007)(38350700001)(956004)(2616005)(5660300002)(186003)(2906002)(26005)(66946007)(86362001)(16526019)(478600001)(83380400001)(8676002)(8936002)(6486002)(53546011)(6916009)(33656002)(316002)(54906003)(36756003)(4326008)(6666004)(7696005)(44832011)(52116002)(32563001)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 =?us-ascii?Q?w9TpocW8k674TS31jg7NvhheqWUpQQTYFPk2OfYiQ8LPF4X6ICE+GGEvNvb8?=
 =?us-ascii?Q?7p1Lyh/G6VbuVip4PtWyjJSO/aOl9nB8CiEXNrc1kXdJTvdYhCoXqOQsuBOH?=
 =?us-ascii?Q?OE5lSZQ5Pbt3DFCVlj+YpAc37ZMTdSR3bOgTxWVidDfwuW8AB/VH9CCKF1d4?=
 =?us-ascii?Q?FFjwGr+OmYGFHPHa7WzgxqzGIDFH58bnHPnMdD6r2tAcEVQs+davHCFgw9aZ?=
 =?us-ascii?Q?8kCYsefbvBMUa6LgZA8zdZ1pvTRzes3otHmtm9lhQB/fdFkS7SjJvXwlZWOF?=
 =?us-ascii?Q?sw+Ff5TLLnKs9xm+oTAct0PbcrcWYpsdC2b2569fGFuklO4pYgs3opyNrD1n?=
 =?us-ascii?Q?63dXmNTqv7Izks78enxeK9QFPTOQd15HOWh+MBrOEGiZrkncu2eviakrdtd5?=
 =?us-ascii?Q?JjHtUHjyOyxpxgv3M/29JXKoWfVV7+xgLYJmTuKupvNMmwxOIUffFQr+MULy?=
 =?us-ascii?Q?4MJWbzz1yHY0wNtVEJas6EjLWbLEuBEpaqac7qJ2S9Tu8WFl+t6JwggHywI8?=
 =?us-ascii?Q?a/Q2iC7BnVHdOAR72Z5loYlMQAADUXiBbz44lFpVq00dTBjZSmE9FuN+r64X?=
 =?us-ascii?Q?pjqI9gVdI/TIUlTa8QHxAi7dESihXXUYGRRPeXlueW14IlUl0P9WrOvGkBMM?=
 =?us-ascii?Q?MTAsp+QkH4nENN3BpRFq+J5Gkb2Mh/9rWOaNHdeLdzYyKbp9T2kFLEIcttGH?=
 =?us-ascii?Q?YZACwyQ1zwnHTzEqZskHgJyDyQTPsmoyGn1SC7Zb3A72bemGX3JMjRCRd7rX?=
 =?us-ascii?Q?Y95Zx5U7ICxdFr+0o4JXJ4XOnuRL7nsxCdcI8O3P/Y5oASAEnRRlxjWp0+ZC?=
 =?us-ascii?Q?DeGUC+RiJ8WS8cZ7INsMSUngQtvxSTTXderVdhsSpA7rw8wFBHgef6yxm+c7?=
 =?us-ascii?Q?39BZDe00X3lgqNhZhp7HnYnoPjuK1kO44+FuL7QaeCLtPqCa1TSLSWm0VvtA?=
 =?us-ascii?Q?MyxAOhiJwPiBviXQ3xg8+pzHvz9JdksFGPYai/eoJGSsmLwT2M0x9bS0jH4h?=
 =?us-ascii?Q?KBPXK49TYaiwU3Dgm50t/9YTIrsvGkwHjRfr0154wsrTnoxRAz5ilSbyNKeM?=
 =?us-ascii?Q?tWjWCPjPyvIc2qMv9c8n4+SjfwNiQFGb4SzfuUCBdtodyeyMZAgUrmFzQ8LB?=
 =?us-ascii?Q?AuDj2XCe2pLnR15vo8AKNAf1xQ33zkURzwM1ZR+Oi7PvGYYk5XlpxrKlESd2?=
 =?us-ascii?Q?WOFAxS/tCUnPmh8Qwu4vKAgkZEEGCLA+PrjwRtsH4kN+fEr1Hr7Hn7xtOKr7?=
 =?us-ascii?Q?wfDn5WnRVU/kVXLBlO+DLZZmGKeUnYPxstpcQd0x+4E6qo1jT/IwlbNOacpA?=
 =?us-ascii?Q?DcVfQeC0KzvckMPVl56zytPi?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5486
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT014.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3e046168-a940-409d-67da-08d8fb3dd4d1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	G0XDoKmFGbpAk6EYkXmht2fie9DQeHJ3juMSMqVAPbCf3wVpSJ+/cORC9MuX8oOW7DCyqoZWjo4cKk9zgifXbu8IRIIaTEwrD6sRZW07g/N56VZlSLriNVGgCLNyYs6gDlUMKozjYG49wNW5YqBSxNMi1HzKD68uLdE8/lNXoQJrzcoy3hrUXiX9up8ivXFICswmVc4SY/mDsT1cTJvYn1cL2RMVvc89M8IxCDcGY4mim5bxou+1OI8tYG1K8uRGGuoHhdQfDaoLjWe9BWuZ5Zjj2ilPkC1rgkc4n8pBSB1YtpZv+WOa9TKQLgUCkOpvWzCpL6eFtyBVnh9pR8ZnlgJnuX19u1AmuDGIIiMXQF9nQ7jufcCnhi7prIermsVgLCgFJYD5+WD0acAj8dpXTk0oxyj8FBcmPm5R7zXGh7jBm+CsIcsT8nahEswdaXa1YqEQot/WCwg7L/8HtG3Nbni3inowhP7t75y9oxU9BpeTEDmQbOXYzkaGPNUPlp4Hisi9lM2NMDphFLwU9EMfjzNvaUnFPl5ZsaoreQkA2bolREh8Z6jq0IFM8dRe1vr99tpGGrBP3DuuaaSDY210yzKCfW1J18W23dmceEWyr7z0EQ+fftqoR8LbHOtmUXhmJiUQXcFTsAf5URYAYV6gBHgLADAXtEceFRPIx2n4Nl0OTLQxJ2/71rXxrFNHXD9f
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:(4636009)(376002)(396003)(136003)(39860400002)(346002)(46966006)(36840700001)(478600001)(36756003)(5660300002)(4326008)(70586007)(70206006)(186003)(26005)(956004)(2616005)(44832011)(6862004)(336012)(6666004)(107886003)(16526019)(2906002)(6486002)(8676002)(82740400003)(53546011)(33656002)(83380400001)(47076005)(81166007)(54906003)(316002)(7696005)(82310400003)(356005)(36860700001)(86362001)(8936002)(32563001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 09:57:17.5566
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c1dea2a3-93fb-464b-3c38-08d8fb3ddc02
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:
	DB5EUR03FT014.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2613



> On 9 Apr 2021, at 10:12, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Luca,
>=20
> On 08/04/2021 10:48, Luca Fancellu wrote:
>> This patch prevents the dom0 to be loaded skipping its
>> building and going forward to build domUs when the dom0
>> kernel is not found and at least one domU is present.
>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>> ---
>>  docs/features/dom0less.pandoc |  7 +++---
>>  xen/arch/arm/setup.c          | 42 ++++++++++++++++++++++++++++++++---
>>  2 files changed, 43 insertions(+), 6 deletions(-)
>> diff --git a/docs/features/dom0less.pandoc b/docs/features/dom0less.pand=
oc
>> index d798596cdf..a5eb5bcda0 100644
>> --- a/docs/features/dom0less.pandoc
>> +++ b/docs/features/dom0less.pandoc
>> @@ -16,9 +16,10 @@ Multiboot specification has been extended to allow fo=
r multiple domains
>>  to be passed to Xen. See docs/misc/arm/device-tree/booting.txt for more
>>  information about the Multiboot specification and how to use it.
>>  -Currently, a control domain ("dom0") is still required, but in the
>> -future it will become unnecessary when all domains are created
>> -directly from Xen. Instead of waiting for the control domain to be full=
y
>> +Currently, a control domain ("dom0") is still required to manage the Do=
mU
>> +domains, but the system can start also without dom0 if the hypervisor
>=20
> "hypervisor Device Tree" sounds a bit strange to me. I would either drop =
"hypervisor" or say "host Devicet Tree".
>=20
>> +Device Tree doesn't specify it and it declares one or more domUs.
>=20
> AFAICT, the first "it" refer to dom0 but it is not clear what exact prope=
rty will used to do the decision.
>=20
> Also you have two 'it' in a row that refers to two different entities. I =
would name it to avoid confusion.

Yes I will rephrase it, what about:

Currently, a control domain ("dom0") is still required to manage the DomU
domains, but the system can start also without dom0 if the Device Tree
doesn't specify the dom0 kernel and it declares one or more domUs.

>=20
>> +Instead of waiting for the control domain (when declared) to be fully
>>  booted and the Xen tools to become available, domains created by Xen
>>  this way are started right away in parallel. Hence, their boot time is
>>  typically much shorter.
>> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
>> index b405f58996..ecc4f0ae98 100644
>> --- a/xen/arch/arm/setup.c
>> +++ b/xen/arch/arm/setup.c
>> @@ -793,6 +793,38 @@ static void __init setup_mm(void)
>>  }
>>  #endif
>>  +static bool __init is_dom0less_mode(void)
>> +{
>> +    struct bootmodules *mods =3D &bootinfo.modules;
>> +    struct bootmodule *mod;
>> +    unsigned int i;
>> +    bool dom0found =3D false;
>> +    bool domUfound =3D false;
>> +
>> +    /* Look into the bootmodules */
>> +    for ( i =3D 0 ; i < mods->nr_mods ; i++ )
>> +    {
>> +        mod =3D &mods->module[i];
>> +        /* Find if dom0 and domU kernels are present */
>> +        if ( mod->kind =3D=3D BOOTMOD_KERNEL )
>> +        {
>> +            if ( mod->domU =3D=3D false )
>> +            {
>> +                dom0found =3D true;
>> +                break;
>> +            }
>=20
> NIT: You can directly return false here because if you have dom0 the it c=
an't be dom0less.

When I can I try to have just one exit point from a function, do you think =
here it can cause
issues?

>=20
>> +            else
>> +                domUfound =3D true;
>> +        }
>> +    }
>> +
>> +    /*
>> +     * If there is no dom0 kernel but at least one domU, then we are in
>> +     * dom0less mode
>> +     */
>> +    return ( !dom0found && domUfound );
>> +}
>> +
>>  size_t __read_mostly dcache_line_bytes;
>>    /* C entry point for boot CPU */
>> @@ -803,7 +835,7 @@ void __init start_xen(unsigned long boot_phys_offset=
,
>>      int cpus, i;
>>      const char *cmdline;
>>      struct bootmodule *xen_bootmodule;
>> -    struct domain *dom0;
>> +    struct domain *dom0 =3D NULL;
>>      int rc;
>>        dcache_line_bytes =3D read_dcache_line_bytes();
>> @@ -958,7 +990,10 @@ void __init start_xen(unsigned long boot_phys_offse=
t,
>>      enable_errata_workarounds();
>>        /* Create initial domain 0. */
>> -    dom0 =3D create_dom0();
>> +    if ( !is_dom0less_mode() )
>> +        dom0 =3D create_dom0();
>> +    else
>> +        printk(XENLOG_INFO "Xen dom0less mode detected\n");
>>        heap_init_late();
>>  @@ -976,7 +1011,8 @@ void __init start_xen(unsigned long boot_phys_offs=
et,
>>      if ( acpi_disabled )
>>          create_domUs();
>>  -    domain_unpause_by_systemcontroller(dom0);
>> +    if ( dom0 )
>> +        domain_unpause_by_systemcontroller(dom0);
>>        /* Switch on to the dynamically allocated stack for the idle vcpu
>>       * since the static one we're running on is about to be freed. */
>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Fri Apr 09 10:05:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 10:05:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107726.205910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUo0W-0001e5-7D; Fri, 09 Apr 2021 10:04:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107726.205910; Fri, 09 Apr 2021 10:04: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 1lUo0W-0001dy-1C; Fri, 09 Apr 2021 10:04:56 +0000
Received: by outflank-mailman (input) for mailman id 107726;
 Fri, 09 Apr 2021 10:04: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 1lUo0V-0001dn-DW
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 10:04: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 1lUo0R-0007Np-Nl; Fri, 09 Apr 2021 10:04:51 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lUo0R-0003Ad-CM; Fri, 09 Apr 2021 10:04: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=fW1oxndRadSLr9X6PXbATbPKfqsXjqZC8qWsJXFwMl8=; b=d3o83cxUSfvS3Q7A09Wm0VqSoD
	ccVSYEx4LUfY937Sv0qwc/KBypK/OgXcmbCe6lfah6LQ/I1OM167BxUrFWFCHA6XIIr0O5N0jBAxp
	rYlrBLtPAKo/FI/VuotrX4LQntBPGKXXpnaDu2d3AiHCdYQfJwQ+gnvwa77k9qciWXvo=;
Subject: Re: [PATCH v2 4/4] xen/arm: Prevent Dom0 to be loaded when using
 dom0less
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210408094818.8173-1-luca.fancellu@arm.com>
 <20210408094818.8173-5-luca.fancellu@arm.com>
 <ebd93270-c8c3-7fb9-9abe-e40fdce8680a@xen.org>
 <48EBE04B-F36C-441C-89A5-44E988A67F1C@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <db4908df-1766-3900-4793-998e666e784e@xen.org>
Date: Fri, 9 Apr 2021 11:04:48 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <48EBE04B-F36C-441C-89A5-44E988A67F1C@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 09/04/2021 10:56, Luca Fancellu wrote:
> 
> 
>> On 9 Apr 2021, at 10:12, Julien Grall <julien@xen.org> wrote:
>>
>> Hi Luca,
>>
>> On 08/04/2021 10:48, Luca Fancellu wrote:
>>> This patch prevents the dom0 to be loaded skipping its
>>> building and going forward to build domUs when the dom0
>>> kernel is not found and at least one domU is present.
>>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>>> ---
>>>   docs/features/dom0less.pandoc |  7 +++---
>>>   xen/arch/arm/setup.c          | 42 ++++++++++++++++++++++++++++++++---
>>>   2 files changed, 43 insertions(+), 6 deletions(-)
>>> diff --git a/docs/features/dom0less.pandoc b/docs/features/dom0less.pandoc
>>> index d798596cdf..a5eb5bcda0 100644
>>> --- a/docs/features/dom0less.pandoc
>>> +++ b/docs/features/dom0less.pandoc
>>> @@ -16,9 +16,10 @@ Multiboot specification has been extended to allow for multiple domains
>>>   to be passed to Xen. See docs/misc/arm/device-tree/booting.txt for more
>>>   information about the Multiboot specification and how to use it.
>>>   -Currently, a control domain ("dom0") is still required, but in the
>>> -future it will become unnecessary when all domains are created
>>> -directly from Xen. Instead of waiting for the control domain to be fully
>>> +Currently, a control domain ("dom0") is still required to manage the DomU
>>> +domains, but the system can start also without dom0 if the hypervisor
>>
>> "hypervisor Device Tree" sounds a bit strange to me. I would either drop "hypervisor" or say "host Devicet Tree".
>>
>>> +Device Tree doesn't specify it and it declares one or more domUs.
>>
>> AFAICT, the first "it" refer to dom0 but it is not clear what exact property will used to do the decision.
>>
>> Also you have two 'it' in a row that refers to two different entities. I would name it to avoid confusion.
> 
> Yes I will rephrase it, what about:
> 
> Currently, a control domain ("dom0") is still required to manage the DomU
> domains, but the system can start also without dom0 if the Device Tree
> doesn't specify the dom0 kernel and it declares one or more domUs.

Sounds good to me.

> 
>>
>>> +Instead of waiting for the control domain (when declared) to be fully
>>>   booted and the Xen tools to become available, domains created by Xen
>>>   this way are started right away in parallel. Hence, their boot time is
>>>   typically much shorter.
>>> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
>>> index b405f58996..ecc4f0ae98 100644
>>> --- a/xen/arch/arm/setup.c
>>> +++ b/xen/arch/arm/setup.c
>>> @@ -793,6 +793,38 @@ static void __init setup_mm(void)
>>>   }
>>>   #endif
>>>   +static bool __init is_dom0less_mode(void)
>>> +{
>>> +    struct bootmodules *mods = &bootinfo.modules;
>>> +    struct bootmodule *mod;
>>> +    unsigned int i;
>>> +    bool dom0found = false;
>>> +    bool domUfound = false;
>>> +
>>> +    /* Look into the bootmodules */
>>> +    for ( i = 0 ; i < mods->nr_mods ; i++ )
>>> +    {
>>> +        mod = &mods->module[i];
>>> +        /* Find if dom0 and domU kernels are present */
>>> +        if ( mod->kind == BOOTMOD_KERNEL )
>>> +        {
>>> +            if ( mod->domU == false )
>>> +            {
>>> +                dom0found = true;
>>> +                break;
>>> +            }
>>
>> NIT: You can directly return false here because if you have dom0 the it can't be dom0less.
> 
> When I can I try to have just one exit point from a function, do you think here it can cause
> issues?

I don't think so. I was only asking that because:
   - It is clearer to me that when you find dom0 then it must not a 
dom0less configuration.
   - It removes dom0found and reduce the code

But this is a non-important things to me (hence the NIT). If you prefer 
your version, then I am happy with it :).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 10:06:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 10:06:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107724.205922 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUo1l-0001kh-JQ; Fri, 09 Apr 2021 10:06:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107724.205922; Fri, 09 Apr 2021 10:06: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 1lUo1l-0001ka-Ei; Fri, 09 Apr 2021 10:06:13 +0000
Received: by outflank-mailman (input) for mailman id 107724;
 Fri, 09 Apr 2021 10:02:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vxsE=JG=linux.intel.com=andriy.shevchenko@srs-us1.protection.inumbo.net>)
 id 1lUnyV-0001aO-Ca
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 10:02:51 +0000
Received: from mga12.intel.com (unknown [192.55.52.136])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id eb1a8bb4-f312-4536-bf18-5af5ba5462b1;
 Fri, 09 Apr 2021 10:02:49 +0000 (UTC)
Received: from orsmga003.jf.intel.com ([10.7.209.27])
 by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 09 Apr 2021 03:02:48 -0700
Received: from black.fi.intel.com ([10.237.72.28])
 by orsmga003.jf.intel.com with ESMTP; 09 Apr 2021 03:02:37 -0700
Received: by black.fi.intel.com (Postfix, from userid 1003)
 id 946B9501; Fri,  9 Apr 2021 13:02:53 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eb1a8bb4-f312-4536-bf18-5af5ba5462b1
IronPort-SDR: uO1wmHPOaW5c6CqksRtXthPhSsyiVh+ZIX8dkAKGE14jf+RjYOhh9+biLl+FHtMYK+r+uPnoHu
 VhYm3DXDLglA==
X-IronPort-AV: E=McAfee;i="6000,8403,9948"; a="173209390"
X-IronPort-AV: E=Sophos;i="5.82,209,1613462400"; 
   d="scan'208";a="173209390"
IronPort-SDR: RalkOHRWz6iloJxOUmIeoeNsZTn2Zt/Y1Q+kJaWpdXSu5rc+SR0Rt/UXA/GW158e2hjUnBXSs4
 LQKqP2dOfQzQ==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.82,209,1613462400"; 
   d="scan'208";a="380597770"
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Alexander Lobakin <alobakin@pm.me>,
	Wei Liu <wei.liu@kernel.org>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Arnd Bergmann <arnd@arndb.de>,
	Bjorn Andersson <bjorn.andersson@linaro.org>,
	Christian Brauner <christian.brauner@ubuntu.com>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Kees Cook <keescook@chromium.org>,
	Mike Rapoport <rppt@kernel.org>,
	Corey Minyard <cminyard@mvista.com>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Vasily Gorbik <gor@linux.ibm.com>,
	"Jason J. Herne" <jjherne@linux.ibm.com>,
	Joerg Roedel <jroedel@suse.de>,
	Michael Kelley <mikelley@microsoft.com>,
	Joe Perches <joe@perches.com>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Scott Branden <scott.branden@broadcom.com>,
	Olof Johansson <olof@lixom.net>,
	Mihai Carabas <mihai.carabas@oracle.com>,
	Wang Wenhu <wenhu.wang@vivo.com>,
	Marek Czerski <ma.czerski@gmail.com>,
	Hongbo Yao <yaohongbo@huawei.com>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Vineeth Vijayan <vneethv@linux.ibm.com>,
	Heiko Carstens <hca@linux.ibm.com>,
	Peter Oberparleiter <oberpar@linux.ibm.com>,
	Alexander Egorenkov <egorenar@linux.ibm.com>,
	Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>,
	Vlastimil Babka <vbabka@suse.cz>,
	"Paul E. McKenney" <paulmck@kernel.org>,
	"Steven Rostedt (VMware)" <rostedt@goodmis.org>,
	linux-alpha@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mips@vger.kernel.org,
	linux-parisc@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	linux-s390@vger.kernel.org,
	sparclinux@vger.kernel.org,
	linux-um@lists.infradead.org,
	linux-hyperv@vger.kernel.org,
	xen-devel@lists.xenproject.org,
	linux-xtensa@linux-xtensa.org,
	openipmi-developer@lists.sourceforge.net,
	linux-clk@vger.kernel.org,
	linux-edac@vger.kernel.org,
	coresight@lists.linaro.org,
	linux-leds@vger.kernel.org,
	bcm-kernel-feedback-list@broadcom.com,
	netdev@vger.kernel.org,
	linux-pm@vger.kernel.org,
	linux-remoteproc@vger.kernel.org,
	linux-staging@lists.linux.dev,
	dri-devel@lists.freedesktop.org,
	linux-fbdev@vger.kernel.org,
	linux-arch@vger.kernel.org,
	kexec@lists.infradead.org,
	rcu@vger.kernel.org,
	linux-fsdevel@vger.kernel.org
Cc: Richard Henderson <rth@twiddle.net>,
	Ivan Kokshaysky <ink@jurassic.park.msu.ru>,
	Matt Turner <mattst88@gmail.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will@kernel.org>,
	"James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>,
	Helge Deller <deller@gmx.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	"David S. Miller" <davem@davemloft.net>,
	Jeff Dike <jdike@addtoit.com>,
	Richard Weinberger <richard@nod.at>,
	Anton Ivanov <anton.ivanov@cambridgegreys.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	x86@kernel.org,
	"H. Peter Anvin" <hpa@zytor.com>,
	"K. Y. Srinivasan" <kys@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Stephen Hemminger <sthemmin@microsoft.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Chris Zankel <chris@zankel.net>,
	Max Filippov <jcmvbkbc@gmail.com>,
	Corey Minyard <minyard@acm.org>,
	Paul Walmsley <paul.walmsley@sifive.com>,
	Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>,
	Dinh Nguyen <dinguyen@kernel.org>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Tony Luck <tony.luck@intel.com>,
	James Morse <james.morse@arm.com>,
	Robert Richter <rric@kernel.org>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Mike Leach <mike.leach@linaro.org>,
	Leo Yan <leo.yan@linaro.org>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Pavel Machek <pavel@ucw.cz>,
	Alex Elder <elder@kernel.org>,
	Jakub Kicinski <kuba@kernel.org>,
	Sebastian Reichel <sre@kernel.org>,
	Ohad Ben-Cohen <ohad@wizery.com>,
	Jens Frederich <jfrederich@gmail.com>,
	Daniel Drake <dsd@laptop.org>,
	Jon Nettleton <jon.nettleton@gmail.com>,
	Eric Biederman <ebiederm@xmission.com>,
	Josh Triplett <josh@joshtriplett.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Lai Jiangshan <jiangshanlai@gmail.com>,
	Joel Fernandes <joel@joelfernandes.org>,
	Luis Chamberlain <mcgrof@kernel.org>,
	Iurii Zaikin <yzaikin@google.com>,
	Mike Rapoport <rppt@linux.ibm.com>
Subject: [PATCH v2 1/1] kernel.h: Split out panic and oops helpers
Date: Fri,  9 Apr 2021 13:02:50 +0300
Message-Id: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

kernel.h is being used as a dump for all kinds of stuff for a long time.
Here is the attempt to start cleaning it up by splitting out panic and
oops helpers.

There are several purposes of doing this:
- dropping dependency in bug.h
- dropping a loop by moving out panic_notifier.h
- unload kernel.h from something which has its own domain

At the same time convert users tree-wide to use new headers, although
for the time being include new header back to kernel.h to avoid twisted
indirected includes for existing users.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Acked-by: Mike Rapoport <rppt@linux.ibm.com>
Acked-by: Corey Minyard <cminyard@mvista.com>
Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Kees Cook <keescook@chromium.org>
Acked-by: Wei Liu <wei.liu@kernel.org>
Acked-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
v2:
 - fixed all errors with allmodconfig on x86_64 (Andrew)
 - checked with allyesconfig on x86_64
 - additionally grepped source code for panic notifier list usage
   and converted all users
 - elaborated commit message (Luis)
 - collected given tags (incl. Andrew's SoB, see below)

I added Andrew's SoB since part of the fixes I took from him. Andrew,
feel free to amend or tell me how you want me to do.

 arch/alpha/kernel/setup.c                     |  2 +-
 arch/arm64/kernel/setup.c                     |  1 +
 arch/mips/kernel/relocate.c                   |  1 +
 arch/mips/sgi-ip22/ip22-reset.c               |  1 +
 arch/mips/sgi-ip32/ip32-reset.c               |  1 +
 arch/parisc/kernel/pdc_chassis.c              |  1 +
 arch/powerpc/kernel/setup-common.c            |  1 +
 arch/s390/kernel/ipl.c                        |  1 +
 arch/sparc/kernel/sstate.c                    |  1 +
 arch/um/drivers/mconsole_kern.c               |  1 +
 arch/um/kernel/um_arch.c                      |  1 +
 arch/x86/include/asm/desc.h                   |  1 +
 arch/x86/kernel/cpu/mshyperv.c                |  1 +
 arch/x86/kernel/setup.c                       |  1 +
 arch/x86/purgatory/purgatory.c                |  2 +
 arch/x86/xen/enlighten.c                      |  1 +
 arch/xtensa/platforms/iss/setup.c             |  1 +
 drivers/bus/brcmstb_gisb.c                    |  1 +
 drivers/char/ipmi/ipmi_msghandler.c           |  1 +
 drivers/clk/analogbits/wrpll-cln28hpc.c       |  4 +
 drivers/edac/altera_edac.c                    |  1 +
 drivers/firmware/google/gsmi.c                |  1 +
 drivers/hv/vmbus_drv.c                        |  1 +
 .../hwtracing/coresight/coresight-cpu-debug.c |  1 +
 drivers/leds/trigger/ledtrig-activity.c       |  1 +
 drivers/leds/trigger/ledtrig-heartbeat.c      |  1 +
 drivers/leds/trigger/ledtrig-panic.c          |  1 +
 drivers/misc/bcm-vk/bcm_vk_dev.c              |  1 +
 drivers/misc/ibmasm/heartbeat.c               |  1 +
 drivers/misc/pvpanic/pvpanic.c                |  1 +
 drivers/net/ipa/ipa_smp2p.c                   |  1 +
 drivers/parisc/power.c                        |  1 +
 drivers/power/reset/ltc2952-poweroff.c        |  1 +
 drivers/remoteproc/remoteproc_core.c          |  1 +
 drivers/s390/char/con3215.c                   |  1 +
 drivers/s390/char/con3270.c                   |  1 +
 drivers/s390/char/sclp.c                      |  1 +
 drivers/s390/char/sclp_con.c                  |  1 +
 drivers/s390/char/sclp_vt220.c                |  1 +
 drivers/s390/char/zcore.c                     |  1 +
 drivers/soc/bcm/brcmstb/pm/pm-arm.c           |  1 +
 drivers/staging/olpc_dcon/olpc_dcon.c         |  1 +
 drivers/video/fbdev/hyperv_fb.c               |  1 +
 include/asm-generic/bug.h                     |  3 +-
 include/linux/kernel.h                        | 84 +---------------
 include/linux/panic.h                         | 98 +++++++++++++++++++
 include/linux/panic_notifier.h                | 12 +++
 kernel/hung_task.c                            |  1 +
 kernel/kexec_core.c                           |  1 +
 kernel/panic.c                                |  1 +
 kernel/rcu/tree.c                             |  2 +
 kernel/sysctl.c                               |  1 +
 kernel/trace/trace.c                          |  1 +
 53 files changed, 167 insertions(+), 85 deletions(-)
 create mode 100644 include/linux/panic.h
 create mode 100644 include/linux/panic_notifier.h

diff --git a/arch/alpha/kernel/setup.c b/arch/alpha/kernel/setup.c
index 03dda3beb3bd..5d1296534682 100644
--- a/arch/alpha/kernel/setup.c
+++ b/arch/alpha/kernel/setup.c
@@ -28,6 +28,7 @@
 #include <linux/init.h>
 #include <linux/string.h>
 #include <linux/ioport.h>
+#include <linux/panic_notifier.h>
 #include <linux/platform_device.h>
 #include <linux/memblock.h>
 #include <linux/pci.h>
@@ -46,7 +47,6 @@
 #include <linux/log2.h>
 #include <linux/export.h>
 
-extern struct atomic_notifier_head panic_notifier_list;
 static int alpha_panic_event(struct notifier_block *, unsigned long, void *);
 static struct notifier_block alpha_panic_block = {
 	alpha_panic_event,
diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
index 61845c0821d9..787bc0f601b3 100644
--- a/arch/arm64/kernel/setup.c
+++ b/arch/arm64/kernel/setup.c
@@ -23,6 +23,7 @@
 #include <linux/interrupt.h>
 #include <linux/smp.h>
 #include <linux/fs.h>
+#include <linux/panic_notifier.h>
 #include <linux/proc_fs.h>
 #include <linux/memblock.h>
 #include <linux/of_fdt.h>
diff --git a/arch/mips/kernel/relocate.c b/arch/mips/kernel/relocate.c
index 499a5357c09f..56b51de2dc51 100644
--- a/arch/mips/kernel/relocate.c
+++ b/arch/mips/kernel/relocate.c
@@ -18,6 +18,7 @@
 #include <linux/kernel.h>
 #include <linux/libfdt.h>
 #include <linux/of_fdt.h>
+#include <linux/panic_notifier.h>
 #include <linux/sched/task.h>
 #include <linux/start_kernel.h>
 #include <linux/string.h>
diff --git a/arch/mips/sgi-ip22/ip22-reset.c b/arch/mips/sgi-ip22/ip22-reset.c
index c374f3ceec38..9028dbbb45dd 100644
--- a/arch/mips/sgi-ip22/ip22-reset.c
+++ b/arch/mips/sgi-ip22/ip22-reset.c
@@ -12,6 +12,7 @@
 #include <linux/kernel.h>
 #include <linux/sched/signal.h>
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include <linux/pm.h>
 #include <linux/timer.h>
 
diff --git a/arch/mips/sgi-ip32/ip32-reset.c b/arch/mips/sgi-ip32/ip32-reset.c
index 20d8637340be..18d1c115cd53 100644
--- a/arch/mips/sgi-ip32/ip32-reset.c
+++ b/arch/mips/sgi-ip32/ip32-reset.c
@@ -12,6 +12,7 @@
 #include <linux/init.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
+#include <linux/panic_notifier.h>
 #include <linux/sched.h>
 #include <linux/sched/signal.h>
 #include <linux/notifier.h>
diff --git a/arch/parisc/kernel/pdc_chassis.c b/arch/parisc/kernel/pdc_chassis.c
index 75ae88d13909..da154406d368 100644
--- a/arch/parisc/kernel/pdc_chassis.c
+++ b/arch/parisc/kernel/pdc_chassis.c
@@ -20,6 +20,7 @@
 #include <linux/init.h>
 #include <linux/module.h>
 #include <linux/kernel.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 #include <linux/notifier.h>
 #include <linux/cache.h>
diff --git a/arch/powerpc/kernel/setup-common.c b/arch/powerpc/kernel/setup-common.c
index 74a98fff2c2f..046fe21b5c3b 100644
--- a/arch/powerpc/kernel/setup-common.c
+++ b/arch/powerpc/kernel/setup-common.c
@@ -9,6 +9,7 @@
 #undef DEBUG
 
 #include <linux/export.h>
+#include <linux/panic_notifier.h>
 #include <linux/string.h>
 #include <linux/sched.h>
 #include <linux/init.h>
diff --git a/arch/s390/kernel/ipl.c b/arch/s390/kernel/ipl.c
index 7a21eca498aa..e0b675dd7080 100644
--- a/arch/s390/kernel/ipl.c
+++ b/arch/s390/kernel/ipl.c
@@ -13,6 +13,7 @@
 #include <linux/init.h>
 #include <linux/device.h>
 #include <linux/delay.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 #include <linux/ctype.h>
 #include <linux/fs.h>
diff --git a/arch/sparc/kernel/sstate.c b/arch/sparc/kernel/sstate.c
index ac8677c3841e..3bcc4ddc6911 100644
--- a/arch/sparc/kernel/sstate.c
+++ b/arch/sparc/kernel/sstate.c
@@ -6,6 +6,7 @@
 
 #include <linux/kernel.h>
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 #include <linux/init.h>
 
diff --git a/arch/um/drivers/mconsole_kern.c b/arch/um/drivers/mconsole_kern.c
index 6d00af25ec6b..328b16f99b30 100644
--- a/arch/um/drivers/mconsole_kern.c
+++ b/arch/um/drivers/mconsole_kern.c
@@ -12,6 +12,7 @@
 #include <linux/mm.h>
 #include <linux/module.h>
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 #include <linux/sched/debug.h>
 #include <linux/proc_fs.h>
diff --git a/arch/um/kernel/um_arch.c b/arch/um/kernel/um_arch.c
index 74e07e748a9b..9512253947d5 100644
--- a/arch/um/kernel/um_arch.c
+++ b/arch/um/kernel/um_arch.c
@@ -7,6 +7,7 @@
 #include <linux/init.h>
 #include <linux/mm.h>
 #include <linux/module.h>
+#include <linux/panic_notifier.h>
 #include <linux/seq_file.h>
 #include <linux/string.h>
 #include <linux/utsname.h>
diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h
index 476082a83d1c..ceb12683b6d1 100644
--- a/arch/x86/include/asm/desc.h
+++ b/arch/x86/include/asm/desc.h
@@ -9,6 +9,7 @@
 #include <asm/irq_vectors.h>
 #include <asm/cpu_entry_area.h>
 
+#include <linux/debug_locks.h>
 #include <linux/smp.h>
 #include <linux/percpu.h>
 
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
index 22f13343b5da..9e5c6f2b044d 100644
--- a/arch/x86/kernel/cpu/mshyperv.c
+++ b/arch/x86/kernel/cpu/mshyperv.c
@@ -17,6 +17,7 @@
 #include <linux/irq.h>
 #include <linux/kexec.h>
 #include <linux/i8253.h>
+#include <linux/panic_notifier.h>
 #include <linux/random.h>
 #include <asm/processor.h>
 #include <asm/hypervisor.h>
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 59e5e0903b0c..570699eecf90 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -14,6 +14,7 @@
 #include <linux/initrd.h>
 #include <linux/iscsi_ibft.h>
 #include <linux/memblock.h>
+#include <linux/panic_notifier.h>
 #include <linux/pci.h>
 #include <linux/root_dev.h>
 #include <linux/hugetlb.h>
diff --git a/arch/x86/purgatory/purgatory.c b/arch/x86/purgatory/purgatory.c
index f03b64d9cb51..7558139920f8 100644
--- a/arch/x86/purgatory/purgatory.c
+++ b/arch/x86/purgatory/purgatory.c
@@ -9,6 +9,8 @@
  */
 
 #include <linux/bug.h>
+#include <linux/kernel.h>
+#include <linux/types.h>
 #include <crypto/sha2.h>
 #include <asm/purgatory.h>
 
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index aa9f50fccc5d..c79bd0af2e8c 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -6,6 +6,7 @@
 #include <linux/cpu.h>
 #include <linux/kexec.h>
 #include <linux/slab.h>
+#include <linux/panic_notifier.h>
 
 #include <xen/xen.h>
 #include <xen/features.h>
diff --git a/arch/xtensa/platforms/iss/setup.c b/arch/xtensa/platforms/iss/setup.c
index ed519aee0ec8..d3433e1bb94e 100644
--- a/arch/xtensa/platforms/iss/setup.c
+++ b/arch/xtensa/platforms/iss/setup.c
@@ -14,6 +14,7 @@
 #include <linux/init.h>
 #include <linux/kernel.h>
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include <linux/printk.h>
 #include <linux/string.h>
 
diff --git a/drivers/bus/brcmstb_gisb.c b/drivers/bus/brcmstb_gisb.c
index 7355fa2cb439..6551286a60cc 100644
--- a/drivers/bus/brcmstb_gisb.c
+++ b/drivers/bus/brcmstb_gisb.c
@@ -6,6 +6,7 @@
 #include <linux/init.h>
 #include <linux/types.h>
 #include <linux/module.h>
+#include <linux/panic_notifier.h>
 #include <linux/platform_device.h>
 #include <linux/interrupt.h>
 #include <linux/sysfs.h>
diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
index 8a0e97b33cae..e96cb5c4f97a 100644
--- a/drivers/char/ipmi/ipmi_msghandler.c
+++ b/drivers/char/ipmi/ipmi_msghandler.c
@@ -16,6 +16,7 @@
 
 #include <linux/module.h>
 #include <linux/errno.h>
+#include <linux/panic_notifier.h>
 #include <linux/poll.h>
 #include <linux/sched.h>
 #include <linux/seq_file.h>
diff --git a/drivers/clk/analogbits/wrpll-cln28hpc.c b/drivers/clk/analogbits/wrpll-cln28hpc.c
index 776ead319ae9..7c64ea52a8d5 100644
--- a/drivers/clk/analogbits/wrpll-cln28hpc.c
+++ b/drivers/clk/analogbits/wrpll-cln28hpc.c
@@ -23,8 +23,12 @@
 
 #include <linux/bug.h>
 #include <linux/err.h>
+#include <linux/limits.h>
 #include <linux/log2.h>
 #include <linux/math64.h>
+#include <linux/math.h>
+#include <linux/minmax.h>
+
 #include <linux/clk/analogbits-wrpll-cln28hpc.h>
 
 /* MIN_INPUT_FREQ: minimum input clock frequency, in Hz (Fref_min) */
diff --git a/drivers/edac/altera_edac.c b/drivers/edac/altera_edac.c
index 5f7fd79ec82f..61c21bd880a4 100644
--- a/drivers/edac/altera_edac.c
+++ b/drivers/edac/altera_edac.c
@@ -20,6 +20,7 @@
 #include <linux/of_address.h>
 #include <linux/of_irq.h>
 #include <linux/of_platform.h>
+#include <linux/panic_notifier.h>
 #include <linux/platform_device.h>
 #include <linux/regmap.h>
 #include <linux/types.h>
diff --git a/drivers/firmware/google/gsmi.c b/drivers/firmware/google/gsmi.c
index bb6e77ee3898..adaa492c3d2d 100644
--- a/drivers/firmware/google/gsmi.c
+++ b/drivers/firmware/google/gsmi.c
@@ -19,6 +19,7 @@
 #include <linux/dma-mapping.h>
 #include <linux/fs.h>
 #include <linux/slab.h>
+#include <linux/panic_notifier.h>
 #include <linux/ioctl.h>
 #include <linux/acpi.h>
 #include <linux/io.h>
diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c
index 004c3390c15f..7107b9b6eff4 100644
--- a/drivers/hv/vmbus_drv.c
+++ b/drivers/hv/vmbus_drv.c
@@ -25,6 +25,7 @@
 
 #include <linux/delay.h>
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include <linux/ptrace.h>
 #include <linux/screen_info.h>
 #include <linux/kdebug.h>
diff --git a/drivers/hwtracing/coresight/coresight-cpu-debug.c b/drivers/hwtracing/coresight/coresight-cpu-debug.c
index 2dcf13de751f..9731d3a96073 100644
--- a/drivers/hwtracing/coresight/coresight-cpu-debug.c
+++ b/drivers/hwtracing/coresight/coresight-cpu-debug.c
@@ -17,6 +17,7 @@
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/moduleparam.h>
+#include <linux/panic_notifier.h>
 #include <linux/pm_qos.h>
 #include <linux/slab.h>
 #include <linux/smp.h>
diff --git a/drivers/leds/trigger/ledtrig-activity.c b/drivers/leds/trigger/ledtrig-activity.c
index 14ba7faaed9e..30bc9df03636 100644
--- a/drivers/leds/trigger/ledtrig-activity.c
+++ b/drivers/leds/trigger/ledtrig-activity.c
@@ -11,6 +11,7 @@
 #include <linux/kernel_stat.h>
 #include <linux/leds.h>
 #include <linux/module.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 #include <linux/sched.h>
 #include <linux/slab.h>
diff --git a/drivers/leds/trigger/ledtrig-heartbeat.c b/drivers/leds/trigger/ledtrig-heartbeat.c
index 36b6709afe9f..7fe0a05574d2 100644
--- a/drivers/leds/trigger/ledtrig-heartbeat.c
+++ b/drivers/leds/trigger/ledtrig-heartbeat.c
@@ -11,6 +11,7 @@
 #include <linux/module.h>
 #include <linux/kernel.h>
 #include <linux/init.h>
+#include <linux/panic_notifier.h>
 #include <linux/slab.h>
 #include <linux/timer.h>
 #include <linux/sched.h>
diff --git a/drivers/leds/trigger/ledtrig-panic.c b/drivers/leds/trigger/ledtrig-panic.c
index 5751cd032f9d..64abf2e91608 100644
--- a/drivers/leds/trigger/ledtrig-panic.c
+++ b/drivers/leds/trigger/ledtrig-panic.c
@@ -8,6 +8,7 @@
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include <linux/leds.h>
 #include "../leds.h"
 
diff --git a/drivers/misc/bcm-vk/bcm_vk_dev.c b/drivers/misc/bcm-vk/bcm_vk_dev.c
index 6bfea3210389..ad639ee85b2a 100644
--- a/drivers/misc/bcm-vk/bcm_vk_dev.c
+++ b/drivers/misc/bcm-vk/bcm_vk_dev.c
@@ -9,6 +9,7 @@
 #include <linux/fs.h>
 #include <linux/idr.h>
 #include <linux/interrupt.h>
+#include <linux/panic_notifier.h>
 #include <linux/kref.h>
 #include <linux/module.h>
 #include <linux/mutex.h>
diff --git a/drivers/misc/ibmasm/heartbeat.c b/drivers/misc/ibmasm/heartbeat.c
index 4f5f3bdc814d..59c9a0d95659 100644
--- a/drivers/misc/ibmasm/heartbeat.c
+++ b/drivers/misc/ibmasm/heartbeat.c
@@ -9,6 +9,7 @@
  */
 
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include "ibmasm.h"
 #include "dot_command.h"
 #include "lowlevel.h"
diff --git a/drivers/misc/pvpanic/pvpanic.c b/drivers/misc/pvpanic/pvpanic.c
index 65f70a4da8c0..793ea0c01193 100644
--- a/drivers/misc/pvpanic/pvpanic.c
+++ b/drivers/misc/pvpanic/pvpanic.c
@@ -13,6 +13,7 @@
 #include <linux/mod_devicetable.h>
 #include <linux/module.h>
 #include <linux/platform_device.h>
+#include <linux/panic_notifier.h>
 #include <linux/types.h>
 #include <linux/cdev.h>
 #include <linux/list.h>
diff --git a/drivers/net/ipa/ipa_smp2p.c b/drivers/net/ipa/ipa_smp2p.c
index a5f7a79a1923..34b68dc43886 100644
--- a/drivers/net/ipa/ipa_smp2p.c
+++ b/drivers/net/ipa/ipa_smp2p.c
@@ -8,6 +8,7 @@
 #include <linux/device.h>
 #include <linux/interrupt.h>
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include <linux/soc/qcom/smem.h>
 #include <linux/soc/qcom/smem_state.h>
 
diff --git a/drivers/parisc/power.c b/drivers/parisc/power.c
index ebaf6867b457..456776bd8ee6 100644
--- a/drivers/parisc/power.c
+++ b/drivers/parisc/power.c
@@ -38,6 +38,7 @@
 #include <linux/init.h>
 #include <linux/kernel.h>
 #include <linux/notifier.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 #include <linux/sched/signal.h>
 #include <linux/kthread.h>
diff --git a/drivers/power/reset/ltc2952-poweroff.c b/drivers/power/reset/ltc2952-poweroff.c
index d1495af30081..8688c8ba8894 100644
--- a/drivers/power/reset/ltc2952-poweroff.c
+++ b/drivers/power/reset/ltc2952-poweroff.c
@@ -52,6 +52,7 @@
 #include <linux/slab.h>
 #include <linux/kmod.h>
 #include <linux/module.h>
+#include <linux/panic_notifier.h>
 #include <linux/mod_devicetable.h>
 #include <linux/gpio/consumer.h>
 #include <linux/reboot.h>
diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
index 626a6b90fba2..76dd8e2b1e7e 100644
--- a/drivers/remoteproc/remoteproc_core.c
+++ b/drivers/remoteproc/remoteproc_core.c
@@ -20,6 +20,7 @@
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/device.h>
+#include <linux/panic_notifier.h>
 #include <linux/slab.h>
 #include <linux/mutex.h>
 #include <linux/dma-map-ops.h>
diff --git a/drivers/s390/char/con3215.c b/drivers/s390/char/con3215.c
index 1fd5bca9fa20..02523f4e29f4 100644
--- a/drivers/s390/char/con3215.c
+++ b/drivers/s390/char/con3215.c
@@ -19,6 +19,7 @@
 #include <linux/console.h>
 #include <linux/interrupt.h>
 #include <linux/err.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 #include <linux/serial.h> /* ASYNC_* flags */
 #include <linux/slab.h>
diff --git a/drivers/s390/char/con3270.c b/drivers/s390/char/con3270.c
index e21962c0fd94..87cdbace1453 100644
--- a/drivers/s390/char/con3270.c
+++ b/drivers/s390/char/con3270.c
@@ -13,6 +13,7 @@
 #include <linux/init.h>
 #include <linux/interrupt.h>
 #include <linux/list.h>
+#include <linux/panic_notifier.h>
 #include <linux/types.h>
 #include <linux/slab.h>
 #include <linux/err.h>
diff --git a/drivers/s390/char/sclp.c b/drivers/s390/char/sclp.c
index 986bbbc23d0a..6627820a5eb9 100644
--- a/drivers/s390/char/sclp.c
+++ b/drivers/s390/char/sclp.c
@@ -11,6 +11,7 @@
 #include <linux/kernel_stat.h>
 #include <linux/module.h>
 #include <linux/err.h>
+#include <linux/panic_notifier.h>
 #include <linux/spinlock.h>
 #include <linux/interrupt.h>
 #include <linux/timer.h>
diff --git a/drivers/s390/char/sclp_con.c b/drivers/s390/char/sclp_con.c
index 9b852a47ccc1..cc01a7b8595d 100644
--- a/drivers/s390/char/sclp_con.c
+++ b/drivers/s390/char/sclp_con.c
@@ -10,6 +10,7 @@
 #include <linux/kmod.h>
 #include <linux/console.h>
 #include <linux/init.h>
+#include <linux/panic_notifier.h>
 #include <linux/timer.h>
 #include <linux/jiffies.h>
 #include <linux/termios.h>
diff --git a/drivers/s390/char/sclp_vt220.c b/drivers/s390/char/sclp_vt220.c
index 7f4445b0f819..5b8a7b090a97 100644
--- a/drivers/s390/char/sclp_vt220.c
+++ b/drivers/s390/char/sclp_vt220.c
@@ -9,6 +9,7 @@
 
 #include <linux/module.h>
 #include <linux/spinlock.h>
+#include <linux/panic_notifier.h>
 #include <linux/list.h>
 #include <linux/wait.h>
 #include <linux/timer.h>
diff --git a/drivers/s390/char/zcore.c b/drivers/s390/char/zcore.c
index bd3c724bf695..b5b0848da93b 100644
--- a/drivers/s390/char/zcore.c
+++ b/drivers/s390/char/zcore.c
@@ -15,6 +15,7 @@
 #include <linux/init.h>
 #include <linux/slab.h>
 #include <linux/debugfs.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 
 #include <asm/asm-offsets.h>
diff --git a/drivers/soc/bcm/brcmstb/pm/pm-arm.c b/drivers/soc/bcm/brcmstb/pm/pm-arm.c
index a673fdffe216..3cbb165d6e30 100644
--- a/drivers/soc/bcm/brcmstb/pm/pm-arm.c
+++ b/drivers/soc/bcm/brcmstb/pm/pm-arm.c
@@ -28,6 +28,7 @@
 #include <linux/notifier.h>
 #include <linux/of.h>
 #include <linux/of_address.h>
+#include <linux/panic_notifier.h>
 #include <linux/platform_device.h>
 #include <linux/pm.h>
 #include <linux/printk.h>
diff --git a/drivers/staging/olpc_dcon/olpc_dcon.c b/drivers/staging/olpc_dcon/olpc_dcon.c
index 6d8e9a481786..7284cb4ac395 100644
--- a/drivers/staging/olpc_dcon/olpc_dcon.c
+++ b/drivers/staging/olpc_dcon/olpc_dcon.c
@@ -22,6 +22,7 @@
 #include <linux/device.h>
 #include <linux/uaccess.h>
 #include <linux/ctype.h>
+#include <linux/panic_notifier.h>
 #include <linux/reboot.h>
 #include <linux/olpc-ec.h>
 #include <asm/tsc.h>
diff --git a/drivers/video/fbdev/hyperv_fb.c b/drivers/video/fbdev/hyperv_fb.c
index 4dc9077dd2ac..ac06ee7c87d7 100644
--- a/drivers/video/fbdev/hyperv_fb.c
+++ b/drivers/video/fbdev/hyperv_fb.c
@@ -52,6 +52,7 @@
 #include <linux/completion.h>
 #include <linux/fb.h>
 #include <linux/pci.h>
+#include <linux/panic_notifier.h>
 #include <linux/efi.h>
 #include <linux/console.h>
 
diff --git a/include/asm-generic/bug.h b/include/asm-generic/bug.h
index 76a10e0dca9f..719410b93f99 100644
--- a/include/asm-generic/bug.h
+++ b/include/asm-generic/bug.h
@@ -17,7 +17,8 @@
 #endif
 
 #ifndef __ASSEMBLY__
-#include <linux/kernel.h>
+#include <linux/panic.h>
+#include <linux/printk.h>
 
 #ifdef CONFIG_BUG
 
diff --git a/include/linux/kernel.h b/include/linux/kernel.h
index 09035ac67d4b..6c5a05ac1ecb 100644
--- a/include/linux/kernel.h
+++ b/include/linux/kernel.h
@@ -14,6 +14,7 @@
 #include <linux/math.h>
 #include <linux/minmax.h>
 #include <linux/typecheck.h>
+#include <linux/panic.h>
 #include <linux/printk.h>
 #include <linux/build_bug.h>
 #include <linux/static_call_types.h>
@@ -70,7 +71,6 @@
 #define lower_32_bits(n) ((u32)((n) & 0xffffffff))
 
 struct completion;
-struct pt_regs;
 struct user;
 
 #ifdef CONFIG_PREEMPT_VOLUNTARY
@@ -175,14 +175,6 @@ void __might_fault(const char *file, int line);
 static inline void might_fault(void) { }
 #endif
 
-extern struct atomic_notifier_head panic_notifier_list;
-extern long (*panic_blink)(int state);
-__printf(1, 2)
-void panic(const char *fmt, ...) __noreturn __cold;
-void nmi_panic(struct pt_regs *regs, const char *msg);
-extern void oops_enter(void);
-extern void oops_exit(void);
-extern bool oops_may_print(void);
 void do_exit(long error_code) __noreturn;
 void complete_and_exit(struct completion *, long) __noreturn;
 
@@ -368,52 +360,8 @@ extern int __kernel_text_address(unsigned long addr);
 extern int kernel_text_address(unsigned long addr);
 extern int func_ptr_is_kernel_text(void *ptr);
 
-#ifdef CONFIG_SMP
-extern unsigned int sysctl_oops_all_cpu_backtrace;
-#else
-#define sysctl_oops_all_cpu_backtrace 0
-#endif /* CONFIG_SMP */
-
 extern void bust_spinlocks(int yes);
-extern int panic_timeout;
-extern unsigned long panic_print;
-extern int panic_on_oops;
-extern int panic_on_unrecovered_nmi;
-extern int panic_on_io_nmi;
-extern int panic_on_warn;
-extern unsigned long panic_on_taint;
-extern bool panic_on_taint_nousertaint;
-extern int sysctl_panic_on_rcu_stall;
-extern int sysctl_max_rcu_stall_to_panic;
-extern int sysctl_panic_on_stackoverflow;
-
-extern bool crash_kexec_post_notifiers;
 
-/*
- * panic_cpu is used for synchronizing panic() and crash_kexec() execution. It
- * holds a CPU number which is executing panic() currently. A value of
- * PANIC_CPU_INVALID means no CPU has entered panic() or crash_kexec().
- */
-extern atomic_t panic_cpu;
-#define PANIC_CPU_INVALID	-1
-
-/*
- * Only to be used by arch init code. If the user over-wrote the default
- * CONFIG_PANIC_TIMEOUT, honor it.
- */
-static inline void set_arch_panic_timeout(int timeout, int arch_default_timeout)
-{
-	if (panic_timeout == arch_default_timeout)
-		panic_timeout = timeout;
-}
-extern const char *print_tainted(void);
-enum lockdep_ok {
-	LOCKDEP_STILL_OK,
-	LOCKDEP_NOW_UNRELIABLE
-};
-extern void add_taint(unsigned flag, enum lockdep_ok);
-extern int test_taint(unsigned flag);
-extern unsigned long get_taint(void);
 extern int root_mountflags;
 
 extern bool early_boot_irqs_disabled;
@@ -432,36 +380,6 @@ extern enum system_states {
 	SYSTEM_SUSPEND,
 } system_state;
 
-/* This cannot be an enum because some may be used in assembly source. */
-#define TAINT_PROPRIETARY_MODULE	0
-#define TAINT_FORCED_MODULE		1
-#define TAINT_CPU_OUT_OF_SPEC		2
-#define TAINT_FORCED_RMMOD		3
-#define TAINT_MACHINE_CHECK		4
-#define TAINT_BAD_PAGE			5
-#define TAINT_USER			6
-#define TAINT_DIE			7
-#define TAINT_OVERRIDDEN_ACPI_TABLE	8
-#define TAINT_WARN			9
-#define TAINT_CRAP			10
-#define TAINT_FIRMWARE_WORKAROUND	11
-#define TAINT_OOT_MODULE		12
-#define TAINT_UNSIGNED_MODULE		13
-#define TAINT_SOFTLOCKUP		14
-#define TAINT_LIVEPATCH			15
-#define TAINT_AUX			16
-#define TAINT_RANDSTRUCT		17
-#define TAINT_FLAGS_COUNT		18
-#define TAINT_FLAGS_MAX			((1UL << TAINT_FLAGS_COUNT) - 1)
-
-struct taint_flag {
-	char c_true;	/* character printed when tainted */
-	char c_false;	/* character printed when not tainted */
-	bool module;	/* also show as a per-module taint flag */
-};
-
-extern const struct taint_flag taint_flags[TAINT_FLAGS_COUNT];
-
 extern const char hex_asc[];
 #define hex_asc_lo(x)	hex_asc[((x) & 0x0f)]
 #define hex_asc_hi(x)	hex_asc[((x) & 0xf0) >> 4]
diff --git a/include/linux/panic.h b/include/linux/panic.h
new file mode 100644
index 000000000000..f5844908a089
--- /dev/null
+++ b/include/linux/panic.h
@@ -0,0 +1,98 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _LINUX_PANIC_H
+#define _LINUX_PANIC_H
+
+#include <linux/compiler_attributes.h>
+#include <linux/types.h>
+
+struct pt_regs;
+
+extern long (*panic_blink)(int state);
+__printf(1, 2)
+void panic(const char *fmt, ...) __noreturn __cold;
+void nmi_panic(struct pt_regs *regs, const char *msg);
+extern void oops_enter(void);
+extern void oops_exit(void);
+extern bool oops_may_print(void);
+
+#ifdef CONFIG_SMP
+extern unsigned int sysctl_oops_all_cpu_backtrace;
+#else
+#define sysctl_oops_all_cpu_backtrace 0
+#endif /* CONFIG_SMP */
+
+extern int panic_timeout;
+extern unsigned long panic_print;
+extern int panic_on_oops;
+extern int panic_on_unrecovered_nmi;
+extern int panic_on_io_nmi;
+extern int panic_on_warn;
+
+extern unsigned long panic_on_taint;
+extern bool panic_on_taint_nousertaint;
+
+extern int sysctl_panic_on_rcu_stall;
+extern int sysctl_max_rcu_stall_to_panic;
+extern int sysctl_panic_on_stackoverflow;
+
+extern bool crash_kexec_post_notifiers;
+
+/*
+ * panic_cpu is used for synchronizing panic() and crash_kexec() execution. It
+ * holds a CPU number which is executing panic() currently. A value of
+ * PANIC_CPU_INVALID means no CPU has entered panic() or crash_kexec().
+ */
+extern atomic_t panic_cpu;
+#define PANIC_CPU_INVALID	-1
+
+/*
+ * Only to be used by arch init code. If the user over-wrote the default
+ * CONFIG_PANIC_TIMEOUT, honor it.
+ */
+static inline void set_arch_panic_timeout(int timeout, int arch_default_timeout)
+{
+	if (panic_timeout == arch_default_timeout)
+		panic_timeout = timeout;
+}
+
+/* This cannot be an enum because some may be used in assembly source. */
+#define TAINT_PROPRIETARY_MODULE	0
+#define TAINT_FORCED_MODULE		1
+#define TAINT_CPU_OUT_OF_SPEC		2
+#define TAINT_FORCED_RMMOD		3
+#define TAINT_MACHINE_CHECK		4
+#define TAINT_BAD_PAGE			5
+#define TAINT_USER			6
+#define TAINT_DIE			7
+#define TAINT_OVERRIDDEN_ACPI_TABLE	8
+#define TAINT_WARN			9
+#define TAINT_CRAP			10
+#define TAINT_FIRMWARE_WORKAROUND	11
+#define TAINT_OOT_MODULE		12
+#define TAINT_UNSIGNED_MODULE		13
+#define TAINT_SOFTLOCKUP		14
+#define TAINT_LIVEPATCH			15
+#define TAINT_AUX			16
+#define TAINT_RANDSTRUCT		17
+#define TAINT_FLAGS_COUNT		18
+#define TAINT_FLAGS_MAX			((1UL << TAINT_FLAGS_COUNT) - 1)
+
+struct taint_flag {
+	char c_true;	/* character printed when tainted */
+	char c_false;	/* character printed when not tainted */
+	bool module;	/* also show as a per-module taint flag */
+};
+
+extern const struct taint_flag taint_flags[TAINT_FLAGS_COUNT];
+
+enum lockdep_ok {
+	LOCKDEP_STILL_OK,
+	LOCKDEP_NOW_UNRELIABLE,
+};
+
+extern const char *print_tainted(void);
+extern void add_taint(unsigned flag, enum lockdep_ok);
+extern int test_taint(unsigned flag);
+extern unsigned long get_taint(void);
+
+#endif	/* _LINUX_PANIC_H */
diff --git a/include/linux/panic_notifier.h b/include/linux/panic_notifier.h
new file mode 100644
index 000000000000..41e32483d7a7
--- /dev/null
+++ b/include/linux/panic_notifier.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _LINUX_PANIC_NOTIFIERS_H
+#define _LINUX_PANIC_NOTIFIERS_H
+
+#include <linux/notifier.h>
+#include <linux/types.h>
+
+extern struct atomic_notifier_head panic_notifier_list;
+
+extern bool crash_kexec_post_notifiers;
+
+#endif	/* _LINUX_PANIC_NOTIFIERS_H */
diff --git a/kernel/hung_task.c b/kernel/hung_task.c
index bb2e3e15c84c..2871076e4d29 100644
--- a/kernel/hung_task.c
+++ b/kernel/hung_task.c
@@ -15,6 +15,7 @@
 #include <linux/kthread.h>
 #include <linux/lockdep.h>
 #include <linux/export.h>
+#include <linux/panic_notifier.h>
 #include <linux/sysctl.h>
 #include <linux/suspend.h>
 #include <linux/utsname.h>
diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
index f099baee3578..4b34a9aa32bc 100644
--- a/kernel/kexec_core.c
+++ b/kernel/kexec_core.c
@@ -26,6 +26,7 @@
 #include <linux/suspend.h>
 #include <linux/device.h>
 #include <linux/freezer.h>
+#include <linux/panic_notifier.h>
 #include <linux/pm.h>
 #include <linux/cpu.h>
 #include <linux/uaccess.h>
diff --git a/kernel/panic.c b/kernel/panic.c
index 332736a72a58..edad89660a2b 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -23,6 +23,7 @@
 #include <linux/reboot.h>
 #include <linux/delay.h>
 #include <linux/kexec.h>
+#include <linux/panic_notifier.h>
 #include <linux/sched.h>
 #include <linux/sysrq.h>
 #include <linux/init.h>
diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index 03282196953a..67f8f65a9ada 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@ -32,6 +32,8 @@
 #include <linux/export.h>
 #include <linux/completion.h>
 #include <linux/moduleparam.h>
+#include <linux/panic.h>
+#include <linux/panic_notifier.h>
 #include <linux/percpu.h>
 #include <linux/notifier.h>
 #include <linux/cpu.h>
diff --git a/kernel/sysctl.c b/kernel/sysctl.c
index 3601786ddaeb..e5cf9c4ef5e1 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
@@ -27,6 +27,7 @@
 #include <linux/sysctl.h>
 #include <linux/bitmap.h>
 #include <linux/signal.h>
+#include <linux/panic.h>
 #include <linux/printk.h>
 #include <linux/proc_fs.h>
 #include <linux/security.h>
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 507a30bf26e4..9612a1d8fa13 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -39,6 +39,7 @@
 #include <linux/slab.h>
 #include <linux/ctype.h>
 #include <linux/init.h>
+#include <linux/panic_notifier.h>
 #include <linux/poll.h>
 #include <linux/nmi.h>
 #include <linux/fs.h>
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Apr 09 10:29:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 10:29:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107741.205943 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUoNk-0003pj-PW; Fri, 09 Apr 2021 10:28:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107741.205943; Fri, 09 Apr 2021 10:28: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 1lUoNk-0003pc-M1; Fri, 09 Apr 2021 10:28:56 +0000
Received: by outflank-mailman (input) for mailman id 107741;
 Fri, 09 Apr 2021 10:28:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lUoNk-0003pU-2d; Fri, 09 Apr 2021 10:28:56 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lUoNj-0007lf-Rs; Fri, 09 Apr 2021 10:28:55 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lUoNj-0004zc-Iv; Fri, 09 Apr 2021 10:28:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUoNj-0006cS-IQ; Fri, 09 Apr 2021 10:28:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qzfckXfxmkFVz6RbErTMe5GfL77r0vcfwKIBBUfGM6Q=; b=KQ9q3Pp5W+23XoS4ATPAONfxKE
	zVt/fG6xNANWzSFuZO2jkPK7RmtRkHVvJ1ySZWQWdOjW9bF3fRXaI2HnbTIDcaaNgq6Mq2HM+IFIR
	CGMCsPuFPwa5iqFPgjbaa7NB5gRr+uO3B662TSwMpDoPVXPEi4s8g7qDEGJIWfeG1pSY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160845-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160845: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=afda589d0574bd30b96f0d43489194f5b4c05355
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 10:28:55 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              afda589d0574bd30b96f0d43489194f5b4c05355
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  273 days
Failing since        151818  2020-07-11 04:18:52 Z  272 days  265 attempts
Testing same since   160845  2021-04-09 04:18:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 10:31:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 10:31:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107746.205959 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUoQR-0004ly-7f; Fri, 09 Apr 2021 10:31:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107746.205959; Fri, 09 Apr 2021 10:31:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUoQR-0004lr-4R; Fri, 09 Apr 2021 10:31:43 +0000
Received: by outflank-mailman (input) for mailman id 107746;
 Fri, 09 Apr 2021 10:31: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 1lUoQQ-0004lj-2m; Fri, 09 Apr 2021 10:31: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 1lUoQP-0007nk-SY; Fri, 09 Apr 2021 10:31: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 1lUoQP-00054l-MI; Fri, 09 Apr 2021 10:31:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUoQP-0008Re-Ln; Fri, 09 Apr 2021 10:31: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=wfhMwqBB4DTv/pexSo0Db1XUgfnK6lxkNXC78PooF74=; b=uorYEdI9JupeE9lUH3rGR0rv3i
	GaFCSk/98jEwCQPc3u30osYhBcaHwDHosz0ie9hIofalDMnWiHVd3Y8E6l31rLajWLmv+DiUM+ipV
	yQ4dlCdcTLJJfFIUagPHgxVSa3Uzg9+miwKrPCXK4dZ6hUWNGGULTyoCg7OvzofVQO5g=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160841-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 160841: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=19d5bccc7663399c0726aac800ddd4591be0176a
X-Osstest-Versions-That:
    ovmf=dc4d42302c22f012d78f6495ea23ceaa3e23842e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 10:31:41 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 19d5bccc7663399c0726aac800ddd4591be0176a
baseline version:
 ovmf                 dc4d42302c22f012d78f6495ea23ceaa3e23842e

Last test of basis   160817  2021-04-08 09:33:32 Z    1 days
Testing same since   160841  2021-04-09 01:14:33 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jason Lou <yun.lou@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
   dc4d42302c..19d5bccc76  19d5bccc7663399c0726aac800ddd4591be0176a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 10:56:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 10:56:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107757.205974 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUooT-0006jr-Bq; Fri, 09 Apr 2021 10:56:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107757.205974; Fri, 09 Apr 2021 10:56: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 1lUooT-0006jk-8h; Fri, 09 Apr 2021 10:56:33 +0000
Received: by outflank-mailman (input) for mailman id 107757;
 Fri, 09 Apr 2021 10:56:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3s/Q=JG=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUooS-0006je-0u
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 10:56:32 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ebb269a4-a5fc-4a7a-807d-d8a833e23072;
 Fri, 09 Apr 2021 10:56: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: ebb269a4-a5fc-4a7a-807d-d8a833e23072
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617965790;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=MT7U6SxAigVHHZNj3Wq9gC0nrrTqxN1prRI8mG3ghjo=;
  b=TzdNbXNpeCd6muH1ql1dEojqmS0T007wegruOe8L297FWX0k4iq3s5Ye
   /5bm+aARsyXoLyLYuZyng1U11vsr/wsPk9G2W5KL9DHE+t3h67xZ4X21v
   Wr+yGYC9/y7p0aOV1jy3jaAY8ZOix1aAqX3vXaInctCgWOSDn0h/By+ZP
   k=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: tHsTcTozPTuDfvOgVmgYz6TAA6hvHR92EREwUJfx16ohPaTYXSqrBrUcrFep3SGcPeXa2Y6O2W
 uk1Zy3KUKfI9vtfwVr1nFhNQHWCr8AzvD7+kUY1DqVhJ0v/CU12DvPLB+gid27b8fGZNVhiS2Q
 iTHjtKzuEMpQJO/AKbU+wcKwMBwt/Jao/YVJ13cNfditVRPIGIJuJD0UuSdKwBmY5GYzPtUB2t
 QBm5mMph3IFQ+2LYBSOVEXpLjV/CrbfT2bt0W3CcLlb9pRU2GpUASHM9+E/TdLGmF4OvepeQfM
 eNs=
X-SBRS: 5.2
X-MesageID: 42722653
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:EThsv6nNK1M0V3FGGCgLgiPJd2jpDfP+imdD5ilNYBxZY6Wkvu
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKMaVI3DYCDNvmy0IIZ+qbbz2jGIIVybysdx94
 dFN5J/Btr5EERgga/BijWQPt48zLC8n5yAqvzZyx5WIz1CT4FFw0NHBh2AEktwLTM2YKYRMJ
 aH/MJIq36BVB0sH6eGL0IIVeTCuNHH/aiOCXI7LiUq9RWUineQ4KP6eiLy4j4lTzhNzb0+mF
 K18TDR26PLiZCG4y6Z7UD/xdB8mNztytxMbfb89/Q9G3HXpSuDIKhkU72GljgprO+o80ZCqq
 ixnz4Qe/5dxlmUUmapoQb8+wSI6kdQ11bSjWW2rFGmgcvlSCk0A8BM7LgpDCfx2g4bk/xXlI
 dotljp0KZ/PFf7swnWo+XsbVVMkHG5pHIz+NRj9EB3YM8lR5J66bAE8Fg9KuZnIAvKrLoJPc
 NJF8/m6PNfYTqhHgrkl1gq+tCqU3gpdy32O3Qqi4iQ2zhSqnhz01EV8swZhmsB75IwUfB/lp
 z5Dpg=
X-IronPort-AV: E=Sophos;i="5.82,209,1613451600"; 
   d="scan'208";a="42722653"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YwdCYCYvaGqGX6y8sLEANfnTsKeDhWQLoD2W6XdIp0iaRKQ+aQr9zWfqq9pnfx98Lc5tH/jvfFfH0yaLcWF5YT0NI73UVCdapPYQ3O/nSUviURojhc4EJ1T0Pek/FsxZ5U1NQ87aaUbBiHs7900559df30PcVFiGhaaEW3xA49olMulOg6LKLm86D9rp0qGP8EIAKQCnJq6fJEhj9TgEqv+eqUdD/QND19RSz4Zh+X0yKSQ3jEQwjHWo8fxnW4euHYzakBz17WsQ6CpRjvXUXyxftz4+zHixwTWC7Cgufh27gdk4q/sw1vdys81iz0cSPNNLOubdzC4W7dgh/59pDA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mHuXdYiIiqfW70ZQbMwQD1nDL2ufASXx4a3Q3N+euqg=;
 b=EM+immKPdW79Ceu4uxAruz8XE8CMfhRMZbtq5UP0JK6nFvq/x46I136oEzVI6emgIPTJaT6qbRH1fPzikkCOuyizb1VxkHND/jgQriy2TNi7ahC57xN+BAAFHsiUzH1r3ShZeDbTMbO+WX0lpoI/Veqwh7Nz5LK1h/1ZYAtZtFE+0Zw06UMg/99xshnNoVaWHTVEnHosJTjU+PCNi0P8JIYmvCFe67gsTu6g462ItYs8zCyFLktirnjNPqimfWIvbhxX7lHhR4lGUnRa0CoJwYvfT+eE0EASpGpoHyLZFYR0sZ79cE6pma61y4upnnJAXHu94PGOH8LcYrSw4omO0w==
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=mHuXdYiIiqfW70ZQbMwQD1nDL2ufASXx4a3Q3N+euqg=;
 b=b1BwSKbUDg7qTzXR2IDbRQ70Bb/yCDH8s2b+kyUwMDhnLdIItQ6Zd8rlW6j8zrcDgQ0a3gsNsW54Iqzm/VBu8IBMPOsqhfrnGiJER/xCFAYyBckwVt9fgVKHwNPPmbOYYQghsI1CdBnU7g6OdMOMzUrlkjZzmdE8okx+oCfPocI=
Date: Fri, 9 Apr 2021 12:56:21 +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>, Ian Jackson <iwj@xenproject.org>, Wei
 Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <YHAy1e7a4aEAKTYc@Air-de-Roger>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-16-roger.pau@citrix.com>
 <d24e9172-3939-44c3-e5f8-08b76ab23c17@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <d24e9172-3939-44c3-e5f8-08b76ab23c17@citrix.com>
X-ClientProxiedBy: MR2P264CA0095.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::35) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7d8445b5-2d45-4d2b-471b-08d8fb461f80
X-MS-TrafficTypeDiagnostic: DM4PR03MB5997:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB5997030BCB68691B142EFEF08F739@DM4PR03MB5997.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: jtE6hoHNyyRMTDBgZp+evRLkKXvelQyDdVpl21ZXesI7Fp6hqb9YZNR4g4TiH977JSRr9lKNBEtCylrogy5n+3nxYzZx2DN7rinDQe4CLCuVtWKzhaYyBQHDDm4Mp9lhxKBP0CZ7lcwQXVgwIhxgFx40Y6Ql/pv7xRttwS7kSYLlL2ojoVvmuXZydJl36Inv8j0mCY41isnYZiFLYPlwOX6fDXv1PPUNcaRBRdMKZh2jSgeIKWBNfmTOCE6ZtH6tZj6b7K6G6hTVuko2s+tyw1yiJiwHp3IgtzNqCGSUoNBTmB4DH/eKLNrhH3hUkLXW7/u2VMPPGbI/46KptQmQwi7tIlz6X8Cfanp4uctbD+wx3L7CGBwMOYp7LDQZ9fizQTJdpUh/JENTXZfhq6FezKgBhxri2KykdzKHOgKfxv2p5GTviHDwDs6zcZSM+PgBBAbA48XSr+HineM1LjIG4IsEHeCHJdByG4zbf87kW4P0FFb3WRGT6pMw8NnP0es7T/0gGCd55pjonttsG5i3t+zRgUioP1xbq4fsIjvF/rrPhjk59FU+zd3eS6PnXrlu4ynPQMuWHBCQ84UDB2X4086nMV1YYy+U5KSdCI/u1X5xBRzWZJ4EfRxrN+te1+CMoCbA++r7aLWrPqcaAKGLCw==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(396003)(376002)(39860400002)(346002)(366004)(478600001)(83380400001)(8676002)(4326008)(53546011)(6496006)(66476007)(66556008)(8936002)(6486002)(66946007)(107886003)(956004)(6666004)(2906002)(38100700001)(54906003)(85182001)(6862004)(316002)(6636002)(5660300002)(26005)(33716001)(86362001)(186003)(16526019)(9686003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?VjBxdERMVXN4UUFwVmxoU093Nm1EVWRyNFlxQ0J0TFhqbzRocGJzWTB1clRw?=
 =?utf-8?B?TEhadTV1VXFydS9TNCtmYnVPaU1VSXprVWZUMXhsN1JqUVhOQUJBa1paREt4?=
 =?utf-8?B?anowbW5WTGl3akJ5TEczYUVCcXpJaHVNQ3B4Qk5IRjR1QUdFLzBiYUlmMUpV?=
 =?utf-8?B?QkUvQkNRdEZqWDNENFM4aVVmdjZrQ0JCQlFyQUs3aWI3UG8ycjB3TVU2WWMz?=
 =?utf-8?B?WUd3OXM5elNoR3BhdkNXTm5LN1YwMWcxMERjbW1hamU1bnNGNG9kbnVDLzdr?=
 =?utf-8?B?aWYrN2NZclA0bGZ1aEQrMWtzenZabDVHN0hXTEY5OElBSVI3cHI0UGRBU2wx?=
 =?utf-8?B?bW5tVURJNTVIbE0zQStCZTlKREppK3ZycWpHa0o5b0RCSVF6RWc3ZzdXT0ZV?=
 =?utf-8?B?N2IyRW1MaWFqb1N1dTRZUG1DaklFN1BxUkJwK0kxbnUrYU8vMm1RR2NlWG12?=
 =?utf-8?B?UTlnMEFQWEt4Y2xJTTArNTJMRGF2MlF1MW5kbTJ5NDR3empra04rUTQwMmJD?=
 =?utf-8?B?c0g3aWNmaytoTGl3UlByTWw0bUsvUmpkNGttYkhWQkw2MXRLVFVCRE9KUHZ1?=
 =?utf-8?B?bnV1RElhTGdyZndma2tJVzlienNzSS9WVzBZNTNKZEkzM2ppTUFwZ2dnNlFr?=
 =?utf-8?B?V3ppS1FHSjkxWnBYZk9xVk5pQ3A5ZFdFOUxEdWh5ZDBHMDBadDRKOXhIUVpN?=
 =?utf-8?B?ek94UmZ2U3Q2dHB5Z0R5YlN0ODBqMHBPOFJDSEkzOVRnMDAvZXNOYVpObHJh?=
 =?utf-8?B?SHpDSS80R2VyaDM5bkdGcGFLbWcwNmhidzJmUFRCQTdYME5xQm9QTllvVnN6?=
 =?utf-8?B?cUFEK2Rud01GV2JET2FMYzdHb2U4b1pnNzhvWnh5aHZPMEFSTGZRTjFWZDhT?=
 =?utf-8?B?aG1qRFFKNVJqNkNjVlZ6aU5BSXlwOFFhZ0ZVcHdQTTBwY3d1RFRKdVlUMGRh?=
 =?utf-8?B?RmtGYmNIZEttazNnditEZ3lzMmJHM2tMWHRlVFk2L3B2TGZjazNtSUwycWRP?=
 =?utf-8?B?c055RE1sMitvcWZPekluRWdQc0FKVGRpZ1JqRnhiUmhGdWJVKy9oQkpvbU4w?=
 =?utf-8?B?NVpnWDhwRTBZMVJoTnFzMnNlY091Y2E1aTVHeElQcTA0MUh2VWMxaGJ2bFN4?=
 =?utf-8?B?aEI4NHFUN21oZUY1SGdLaThCUTJNNXFpNWlHMFZmZ29lNXMweHB3Y1J1bEpS?=
 =?utf-8?B?WTBwcldHU3h0UGM5ZDdJdzhLQWFwWCtHSTVuck9RcExpUER0UCtGQlJuNE43?=
 =?utf-8?B?L0R0RFJnWk13WFc2RjByRnFJc3Zlb1VnNkdzSDlod2pIdnJyNGNKVk9sb2lK?=
 =?utf-8?B?SjJWb2hkVnoxRU1PSERpa28wWWdIZ2Q2UHREYlNtTmRmL3ZOakNabDRBUnE2?=
 =?utf-8?B?Y29wRXJ4emgxL2c2c1dXcDZ6S2piQk5YZnV4T3ZFc2JYTEFuWEh4UTYrTDEx?=
 =?utf-8?B?eksvTnpZREJ5cTkreEZiMXU3a29lM3QvSmZOS3dMSnoxZFl4N0RXQkIzUE1D?=
 =?utf-8?B?alNNL2VmY21tSkhwbUJXL3dHZlR0T2RvTHVWR2dPeXFGNnNSSWh3bzZjTkRN?=
 =?utf-8?B?U2VvRDFMRlJObG92VEhKaFFmOUdEM01SQlJ3c1I4N1pFTjRXR0hmc1BibEpt?=
 =?utf-8?B?bGlrRkNwd0xUNEplZjVvd3pMcFoxYk9rV0hUOVFSUGZPTUFiOEJrUzlCaTZ2?=
 =?utf-8?B?MEgwMEhNMENIYjNycnVhNXp5VlRjNU5leDlLRmRHVGE5SXBLVlJWMnNoWWk1?=
 =?utf-8?Q?4Epkvd1nHkcl+OAtZkWfZmQDni2BZtCuDMv8kBR?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d8445b5-2d45-4d2b-471b-08d8fb461f80
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 10:56:27.2273
 (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: 8Gk+K7/8+qPN02wmKHOPNE/zhlMov82ObLU32AC3O2oPXaJ1Xw3Y4ScKIDxo5c8oJbM/cgZNzUVEakRwqPM3Kg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5997
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 05:26:03PM +0100, Andrew Cooper wrote:
> On 23/03/2021 09:58, Roger Pau Monne wrote:
> > Introduce a helper to obtain a compatible cpu policy based on two
> > input cpu policies. Currently this is done by and'ing all CPUID leaves
> > and MSR entries, except for MSR_ARCH_CAPABILITIES which has the RSBA
> > bit or'ed.
> >
> > The _AC macro is pulled from libxl_internal.h into xen-tools/libs.h
> > since it's required in order to use the msr-index.h header.
> >
> > Note there's no need to place this helper in libx86, since the
> > calculation of a compatible policy shouldn't be done from the
> > hypervisor.
> >
> > No callers of the interface introduced.
> >
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> I think this wants to be in libx86, because we'll want it to replace the
> opencoded derivation logic in init_cpuid()

I think you mean init_domain_cpuid_policy or recalculate_cpuid_policy?
I cannot find any init_cpuid.

I'm not convinced we need this in libx86 for the hypervisor, as I
don't know exactly how we would use it there. I expect the hypervisor
to validate policies provided by the toolstack, but not for it to
create such policies unless for very specific domains (ie: dom0 or
similar) which shouldn't require any leveling.

I'm happy to place it libx86, but I think I need to understand better
why it needs to be there.

> Also, we absolutely want to unit test it.  (I could have sworn I already
> started some work there - maybe its hidden in one of my WIP branches).

I don't think we have unit tests for the xenguest library?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 11:03:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 11:03:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107762.205986 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUouk-0007kB-2H; Fri, 09 Apr 2021 11:03:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107762.205986; Fri, 09 Apr 2021 11: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 1lUouj-0007k4-VT; Fri, 09 Apr 2021 11:03:01 +0000
Received: by outflank-mailman (input) for mailman id 107762;
 Fri, 09 Apr 2021 11: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 1lUouh-0007jw-Ur; Fri, 09 Apr 2021 11:02: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 1lUouh-0008Le-Ja; Fri, 09 Apr 2021 11:02: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 1lUouh-00064Y-Aw; Fri, 09 Apr 2021 11:02:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUouh-0005ix-AR; Fri, 09 Apr 2021 11: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:Message-Id:Subject:To;
	bh=nocj41VkNDFc8Yeu7h3uEuf3xoJJ3PFa+Uz9MEgU/SE=; b=LpDpIYO95SZoU/A04HDwlGgd2o
	HuW4v8yxr3vWfsRlh9/sjIVMDOu+NPmClB6CJqmhCOEx9UbOma3SAspKzUOCQNZPSas/a8Wm+VURw
	Bja7RFdokTPD/hHCyYOrRkqeM4UAGgG5ljwCc05Fjt5JVejEKbo2gv6qXc+U5Xl3/fCQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-i386-xl-qemuu-debianhvm-amd64
Message-Id: <E1lUouh-0005ix-AR@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 11:02:59 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-i386-xl-qemuu-debianhvm-amd64
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160849/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-amd64.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-amd64.guest-saverestore --summary-out=tmp/160856.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-xl-qemuu-debianhvm-amd64 guest-saverestore
Searching for failure / basis pass:
 160827 fail [host=albana0] / 160125 [host=chardonnay0] 160119 [host=albana1] 160113 [host=pinot1] 160104 [host=huxelrebe1] 160097 [host=chardonnay1] 160091 ok.
Failure / basis pass flights: 160827 / 160091
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9c08b3e7d5ac177a1ecb3678004fd94164865814 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9692c7b0373677badcf8bb299ab8e2597244d436 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-9c08b3e7d5ac177a1ecb3678004fd94164865814 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c-9692c7b0373677badcf8bb299ab8e2597244d436 git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#14b95b3b8546db201e7efd0636ae0e215fae98f3-b0976d5c0441378b6348f5bfedbf431055bd0147
>From git://cache:9419/git://xenbits.xen.org/osstest/ovmf
   dc4d42302c..19d5bccc76  xen-tested-master -> origin/xen-tested-master
Loaded 35135 nodes in revision graph
Searching for test results:
 160091 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160097 [host=chardonnay1]
 160104 [host=huxelrebe1]
 160113 [host=pinot1]
 160119 [host=albana1]
 160125 [host=chardonnay0]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160748 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160779 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160812 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160818 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160814 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160816 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160819 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1db136a29ce8594b693938ab8e788d8bcef54770 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160822 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160823 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5e8892db93f3fb6a7221f2d47f3c952a7e489737 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160801 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160824 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160826 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 87a80dc4f2f5e51894db143685a5e39c8ce6f651 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160828 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160830 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 313d86c956d4599054a9dcd524668f67797d317a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160832 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 56b89f455894e4628ad7994fe5dd348145d1a9c5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160833 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b50101833987b47e0740f1621de48637c468c3d1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160835 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 283d845c9164f57f5dba020a4783bb290493802f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160836 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160838 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8becb36063fb14df1e3ae4916215667e2cb65fa2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160839 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160842 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160844 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160846 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160847 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160827 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9c08b3e7d5ac177a1ecb3678004fd94164865814 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9692c7b0373677badcf8bb299ab8e2597244d436 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160849 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160854 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160856 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9c08b3e7d5ac177a1ecb3678004fd94164865814 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9692c7b0373677badcf8bb299ab8e2597244d436 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
Searching for interesting versions
 Result found: flight 160091 (pass), for basis pass
 Result found: flight 160827 (fail), for basis failure
 Repro found: flight 160854 (pass), for basis pass
 Repro found: flight 160856 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 160839 (pass), for last pass
 Result found: flight 160842 (fail), for first failure
 Repro found: flight 160844 (pass), for last pass
 Repro found: flight 160846 (fail), for first failure
 Repro found: flight 160847 (pass), for last pass
 Repro found: flight 160849 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160849/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-amd64.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
160856: tolerable FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail baseline untested


jobs:
 build-amd64                                                  pass    
 build-i386                                                   pass    
 test-amd64-i386-xl-qemuu-debianhvm-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 Fri Apr 09 11:11:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 11:11:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107771.206004 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUp2W-0000KH-4s; Fri, 09 Apr 2021 11:11:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107771.206004; Fri, 09 Apr 2021 11:11: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 1lUp2W-0000KA-1V; Fri, 09 Apr 2021 11:11:04 +0000
Received: by outflank-mailman (input) for mailman id 107771;
 Fri, 09 Apr 2021 11:11:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IWvH=JG=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lUp2V-0000K5-Bf
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 11:11:03 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 826aa958-c637-4241-bde8-3d7c6ac4b9b6;
 Fri, 09 Apr 2021 11:11: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: 826aa958-c637-4241-bde8-3d7c6ac4b9b6
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617966662;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:content-transfer-encoding:in-reply-to;
  bh=mV5wkRhTj1XR3mr5lXH6PkobsVTQTCIQ/d/jDKmZOig=;
  b=EhqMS6x6blwgpdn2w3pj84PZ5EguX9eJWOFA+i272pYUwfRLZ5bPGNJz
   Gn3KEszJLAhkMvzFQWyoWxsd2me8YOhckLyoUoE+ytrVo1G+tvduAmS71
   r8u8zoIGu0pKfB9CIPC6XWGYNhdGEjQRMOfgyOCcuZLYZor5wZm3QPV1X
   A=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: vi7MDkjMAv45IhMxTjeXx6J/XnIDuVRnuvgfs9sclh/X1K0sxSyeF4THxvdboaly+NMvFwrPki
 dnGu6GyF93xTdCLg7VWslQRkD1WiCMTW9a7pYgVlUhow7iLrsh/z7gF8zzAJyRRSmVAMllbbAu
 7yQPv0jmwC05HFzSIHPOP/Q1nruI8AqFtGOa+Fg/vmTG9KmFktzDkGfbyuzx6gxoFSY+F0MrJi
 zi4MpFK4eTVZ/UNhxvb8djCmry/JJD0/vIUKvq7fZg397UmZO7Pkg8/ZhevMbLFBvsxClxO6Os
 N0U=
X-SBRS: 4.0
X-MesageID: 41637793
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:N7TN/61kQmel9KuES08l1AqjBAIkLtp033Aq2lEZdDV+WKWj9v
 yGtvIdyBPylXI9WGs4n8qBJamHRhrnhPlIyKMWOqqvWxSjhXChK5ts4ZCn7zrrHSD/8eA179
 YHT4FVDtrsAV9myfvr+QXQKadF/PCr+L2l7N2z815DVgdvApsO0y5YDUKhHlRyVE16A/MCZe
 Ohz+5mgxblRngNdMS8ARA+Lo3+jvnGjojvbxJDJzNP0njssRqS5LT3EweV034lOlslq9of2F
 PInADj6qKov+vT8G6/60bp44lLg9yk89NfBaW3+7AoAw/xgQWlbpkJYd2/lQ0yydvA1GoX
X-IronPort-AV: E=Sophos;i="5.82,209,1613451600"; 
   d="scan'208";a="41637793"
Date: Fri, 9 Apr 2021 11:59:14 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: George Dunlap <George.Dunlap@citrix.com>
CC: Stefano Garzarella <sgarzare@redhat.com>, John Simpson
	<ttr9droid@gmail.com>, xen-devel <xen-devel@lists.xenproject.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: An error due to installation that require binutils package
Message-ID: <YHAzgmeVXHUZrgwd@perard>
References: <CAKqicRBsCxFY=A=RD6kHaZa7bFag+hmUkwAJc-LSYy8XvsbGPg@mail.gmail.com>
 <889B1827-1FEB-4AC0-9002-278337D19ED5@citrix.com>
 <CAKqicRCiahd5bt1Qo=Mdh4DYRQbGWf410gF=CG51J9AD=4YwmA@mail.gmail.com>
 <20210330124646.jl4re5srmbzhkipm@steredhat>
 <2BBB0D5A-87FA-49A7-AA75-08CB20078D49@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <2BBB0D5A-87FA-49A7-AA75-08CB20078D49@citrix.com>

On Wed, Mar 31, 2021 at 11:03:55AM +0100, George Dunlap wrote:
> [Dropping some irrelevant cc’s]
> 
> > On Mar 30, 2021, at 1:46 PM, Stefano Garzarella <sgarzare@redhat.com> wrote:
> > 
> > Hi John,
> > 
> > On Mon, Mar 29, 2021 at 09:46:49PM +0300, John Simpson wrote:
> >> Hello,
> >> 
> >> Kindly ask you to have a look at this bug.
> >> Thank you for your replies.
> > 
> > It's already fixed in QEMU upstream and the fix will be released with the 6.0 version next month (the rc0 is already available):
> > https://gitlab.com/qemu-project/qemu/-/commit/bbd2d5a8120771ec59b86a80a1f51884e0a26e53
> > 
> > I guess xen-4.14.1 is using an older version, so if you want you can backport that patch in your version, the change should be simple.
> 
> Anthony,
> 
> Is this the kind of thing we could / should cherry-pick onto our qemu-upstream branches (both 4.14 and 4.15)?

Done, I've backport the build fix to both staging branch.

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 11:18:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 11:18:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107776.206016 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUp9i-0000WQ-V1; Fri, 09 Apr 2021 11:18:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107776.206016; Fri, 09 Apr 2021 11: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 1lUp9i-0000WJ-Rb; Fri, 09 Apr 2021 11:18:30 +0000
Received: by outflank-mailman (input) for mailman id 107776;
 Fri, 09 Apr 2021 11:18: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 1lUp9h-0000WB-Jx; Fri, 09 Apr 2021 11:18: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 1lUp9h-0000Av-DO; Fri, 09 Apr 2021 11:18: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 1lUp9h-000773-59; Fri, 09 Apr 2021 11:18:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUp9h-0000Qy-4e; Fri, 09 Apr 2021 11:18:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=gZldbX2B5UYII4KnONlabbjK968AZJFTIJ55DyCtMdQ=; b=pHqZ7ayrpIW9X3vig0PeMUoFMz
	oyG6dIXcmaQeTZ6V1ef4RVFHpoCxHWAPIJbOsQQ37LX8U7JnP0LeHwgbEqqpJoX+3KvTdBOAUtbuU
	+kfaogttUKlFSSiYjYqrID7ylBFWIg2j0fHh8Ky4LJWi+e1cCcEM9oictXSMoUp+tR1c=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160831-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160831: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-qemuu-freebsd11-amd64:guest-localmigrate/x10:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 11:18:29 +0000

flight 160831 xen-4.12-testing real [real]
flight 160860 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/160831/
http://logs.test-lab.xenproject.org/osstest/logs/160860/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2 18 guest-saverestore.2 fail in 160807 pass in 160831
 test-amd64-amd64-qemuu-freebsd11-amd64 19 guest-localmigrate/x10 fail in 160807 pass in 160831
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail pass in 160807

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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-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-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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   51 days
Failing since        160128  2021-03-18 14:36:18 Z   21 days   27 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   20 days   25 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 11:53:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 11:53:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107784.206031 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUphW-00048d-Ok; Fri, 09 Apr 2021 11:53:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107784.206031; Fri, 09 Apr 2021 11: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 1lUphW-00048W-Lm; Fri, 09 Apr 2021 11:53:26 +0000
Received: by outflank-mailman (input) for mailman id 107784;
 Fri, 09 Apr 2021 11:53: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 1lUphU-00048O-P3; Fri, 09 Apr 2021 11:53: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 1lUphU-0000kN-Cm; Fri, 09 Apr 2021 11:53: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 1lUphT-0000sE-VM; Fri, 09 Apr 2021 11:53:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUphT-0006vZ-Uy; Fri, 09 Apr 2021 11:53: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=mTMkfBlWEoFFQG+2kLtAH0jxHBGfoMvC3eIj8ACFVp0=; b=y2Jj/D1B8ZMAHVu1FzCebLLS5J
	UGt9NVmpfuf275FQ8zmrjC4yjPURZZYJMQVrkV2oAK0M/XcepLPyT3eC1NO7vPr95Yo95NCZ7+VYo
	H3B2Bxg1EPkFDCwiwedo7ronDPIwIiXrN04uBaceFRDlEfMiCYUQGDGnI1qqz78I6oPM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160853-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160853: 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=9cd905bae87fb06efa59c347ef1e96c5dc6cdb62
X-Osstest-Versions-That:
    xen=025eacc13f6147ffa99da5ecee4ed96e7fe8e887
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 11:53:23 +0000

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

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

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                  9cd905bae87fb06efa59c347ef1e96c5dc6cdb62
baseline version:
 xen                  025eacc13f6147ffa99da5ecee4ed96e7fe8e887

Last test of basis   160803  2021-04-07 19:00:28 Z    1 days
Testing same since   160853  2021-04-09 08:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Tim Deegan <tim@xen.org>

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


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 11:57:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 11:57:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107782.206046 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUpl5-0004Jo-Er; Fri, 09 Apr 2021 11:57:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107782.206046; Fri, 09 Apr 2021 11: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 1lUpl5-0004Jh-Bs; Fri, 09 Apr 2021 11:57:07 +0000
Received: by outflank-mailman (input) for mailman id 107782;
 Fri, 09 Apr 2021 11:49:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=aan3=JG=kernel.org=sre@srs-us1.protection.inumbo.net>)
 id 1lUpdf-0003Kt-WF
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 11:49:28 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cd3ed247-0c6a-4a5b-8564-84ae9a05703b;
 Fri, 09 Apr 2021 11:49:27 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 8AF2561005;
 Fri,  9 Apr 2021 11:49:26 +0000 (UTC)
Received: by earth.universe (Postfix, from userid 1000)
 id 877D23C0C96; Fri,  9 Apr 2021 13:49: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: cd3ed247-0c6a-4a5b-8564-84ae9a05703b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1617968966;
	bh=wSgw8vqxkTcKSyPgvD8ke8joz3MElmiOLTRjt10EyxQ=;
	h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
	b=r257Sg1OggCxGJg5bCTag7NFuCUtM6bBbQPGssOeudpQTueqANF9k8caCST6j+GGs
	 mhq+777ZkQwKVhOaru41hweVqSWj04b/XsU8h7+ydnyEF2kONVWjrmWmJI81FX2inh
	 1I5q5flBzM6rB5dvZupRSAfvTfk2iRV4KJ8C1mZTY2vPCzbW73c/T7i/07hy3SI8DF
	 8mRhhs2yT0V+iCISJxvGjQqPD7ppY2j6k1JTxquPWqltBrBwD9Eqf+usc+F86rClEv
	 1sWx6Xv2N6pfdBPoJd3B8urT8gi+vY7QJWCh4h6thPfMXLecWCPm/VUEaLlVYX5ru+
	 /QWkr+ISokV9Q==
Date: Fri, 9 Apr 2021 13:49:24 +0200
From: Sebastian Reichel <sre@kernel.org>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Alexander Lobakin <alobakin@pm.me>, Wei Liu <wei.liu@kernel.org>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Arnd Bergmann <arnd@arndb.de>,
	Bjorn Andersson <bjorn.andersson@linaro.org>,
	Christian Brauner <christian.brauner@ubuntu.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Kees Cook <keescook@chromium.org>, Mike Rapoport <rppt@kernel.org>,
	Corey Minyard <cminyard@mvista.com>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Vasily Gorbik <gor@linux.ibm.com>,
	"Jason J. Herne" <jjherne@linux.ibm.com>,
	Joerg Roedel <jroedel@suse.de>,
	Michael Kelley <mikelley@microsoft.com>,
	Joe Perches <joe@perches.com>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Scott Branden <scott.branden@broadcom.com>,
	Olof Johansson <olof@lixom.net>,
	Mihai Carabas <mihai.carabas@oracle.com>,
	Wang Wenhu <wenhu.wang@vivo.com>,
	Marek Czerski <ma.czerski@gmail.com>,
	Hongbo Yao <yaohongbo@huawei.com>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Vineeth Vijayan <vneethv@linux.ibm.com>,
	Heiko Carstens <hca@linux.ibm.com>,
	Peter Oberparleiter <oberpar@linux.ibm.com>,
	Alexander Egorenkov <egorenar@linux.ibm.com>,
	Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>,
	Vlastimil Babka <vbabka@suse.cz>,
	"Paul E. McKenney" <paulmck@kernel.org>,
	"Steven Rostedt (VMware)" <rostedt@goodmis.org>,
	linux-alpha@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-mips@vger.kernel.org,
	linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	linux-s390@vger.kernel.org, sparclinux@vger.kernel.org,
	linux-um@lists.infradead.org, linux-hyperv@vger.kernel.org,
	xen-devel@lists.xenproject.org, linux-xtensa@linux-xtensa.org,
	openipmi-developer@lists.sourceforge.net, linux-clk@vger.kernel.org,
	linux-edac@vger.kernel.org, coresight@lists.linaro.org,
	linux-leds@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com,
	netdev@vger.kernel.org, linux-pm@vger.kernel.org,
	linux-remoteproc@vger.kernel.org, linux-staging@lists.linux.dev,
	dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org,
	linux-arch@vger.kernel.org, kexec@lists.infradead.org,
	rcu@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	Richard Henderson <rth@twiddle.net>,
	Ivan Kokshaysky <ink@jurassic.park.msu.ru>,
	Matt Turner <mattst88@gmail.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will@kernel.org>,
	"James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>,
	Helge Deller <deller@gmx.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	"David S. Miller" <davem@davemloft.net>,
	Jeff Dike <jdike@addtoit.com>, Richard Weinberger <richard@nod.at>,
	Anton Ivanov <anton.ivanov@cambridgegreys.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
	"K. Y. Srinivasan" <kys@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Stephen Hemminger <sthemmin@microsoft.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Chris Zankel <chris@zankel.net>, Max Filippov <jcmvbkbc@gmail.com>,
	Corey Minyard <minyard@acm.org>,
	Paul Walmsley <paul.walmsley@sifive.com>,
	Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>, Dinh Nguyen <dinguyen@kernel.org>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Tony Luck <tony.luck@intel.com>, James Morse <james.morse@arm.com>,
	Robert Richter <rric@kernel.org>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Mike Leach <mike.leach@linaro.org>, Leo Yan <leo.yan@linaro.org>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Pavel Machek <pavel@ucw.cz>, Alex Elder <elder@kernel.org>,
	Jakub Kicinski <kuba@kernel.org>, Ohad Ben-Cohen <ohad@wizery.com>,
	Jens Frederich <jfrederich@gmail.com>,
	Daniel Drake <dsd@laptop.org>,
	Jon Nettleton <jon.nettleton@gmail.com>,
	Eric Biederman <ebiederm@xmission.com>,
	Josh Triplett <josh@joshtriplett.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Lai Jiangshan <jiangshanlai@gmail.com>,
	Joel Fernandes <joel@joelfernandes.org>,
	Luis Chamberlain <mcgrof@kernel.org>,
	Iurii Zaikin <yzaikin@google.com>,
	Mike Rapoport <rppt@linux.ibm.com>
Subject: Re: [PATCH v2 1/1] kernel.h: Split out panic and oops helpers
Message-ID: <20210409114924.6dpefx26px7aeuaj@earth.universe>
References: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
	protocol="application/pgp-signature"; boundary="c2qg5eip4k7clkwy"
Content-Disposition: inline
In-Reply-To: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>


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

Hi,

On Fri, Apr 09, 2021 at 01:02:50PM +0300, Andy Shevchenko wrote:
> kernel.h is being used as a dump for all kinds of stuff for a long time.
> Here is the attempt to start cleaning it up by splitting out panic and
> oops helpers.
>=20
> There are several purposes of doing this:
> - dropping dependency in bug.h
> - dropping a loop by moving out panic_notifier.h
> - unload kernel.h from something which has its own domain
>=20
> At the same time convert users tree-wide to use new headers, although
> for the time being include new header back to kernel.h to avoid twisted
> indirected includes for existing users.
>=20
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> Acked-by: Mike Rapoport <rppt@linux.ibm.com>
> Acked-by: Corey Minyard <cminyard@mvista.com>
> Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
> Acked-by: Kees Cook <keescook@chromium.org>
> Acked-by: Wei Liu <wei.liu@kernel.org>
> Acked-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> ---
> v2:
>  - fixed all errors with allmodconfig on x86_64 (Andrew)
>  - checked with allyesconfig on x86_64
>  - additionally grepped source code for panic notifier list usage
>    and converted all users
>  - elaborated commit message (Luis)
>  - collected given tags (incl. Andrew's SoB, see below)
>=20
> I added Andrew's SoB since part of the fixes I took from him. Andrew,
> feel free to amend or tell me how you want me to do.
>=20
> [...]
>  drivers/power/reset/ltc2952-poweroff.c        |  1 +
> [...]

Acked-by: Sebastian Reichel <sre@kernel.org>

-- Sebastian

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

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

iQIzBAABCgAdFiEE72YNB0Y/i3JqeVQT2O7X88g7+poFAmBwPzkACgkQ2O7X88g7
+poVqw//cO5+glgFxA2CU4t3EHFTzSR2pExNCOensIzn/2YcvKlq6RBiaVlO87al
zfq//z42WEWWRFkl4NeyjJx6ueQGo5Hk7qQiPRQhgt55UiQsizdAFXK4u97lVQ68
7V2xDT3MlQ/vc+LG3vZBcSGMIoupHDqbYU2kF8xlBhdwuF1lr44NDxRTRsVErgor
hlvEGYmwSTIg8aEkLt6Da/elDscG08MDU+vv6KLaSiruCN+RtgZGin9gv3Xu+KUi
PhPU9ZOAfi6duIQdKmdXiAZ8Vlp/43yzeo80t/XUyiEy7Yq+qtsP6YXHlSWlPJnV
Zz3ifkmNn7YFWd+iOeTe3oTfVIAtg4w/uX184urC+t242MBSeqEkHt7/1TJR2UAx
8s9NtSaCLUPuFLPO9s8t6nP4kQ4HN3BoxMvgessqguLZtSg3n1Z4+ZE8veoYHQD3
Vwz58nFLYkMxRB/pFq6dkXv6uPXTbreYkWuUFsDIao2+FVDkMp81DqE86K2li2d6
/B6jSmObDmG/aryJn+hoHhCEJSfLnaszENAc0toFvCGYU9D5Com1A74gdztMgOvf
CB4G04azFTgeTjX5JB6r7KXrcZ08bzspk/lo5H9fx+SLki6gFb88zNqBOLcnMM0d
FZFNMmZ543wUtAsJSxqObtKeAcjitPcaURrh6sWiRuJkndGtmNY=
=QA06
-----END PGP SIGNATURE-----

--c2qg5eip4k7clkwy--


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 12:22:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 12:22:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107813.206066 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUq9y-0007DN-4h; Fri, 09 Apr 2021 12:22:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107813.206066; Fri, 09 Apr 2021 12: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 1lUq9y-0007DG-1c; Fri, 09 Apr 2021 12:22:50 +0000
Received: by outflank-mailman (input) for mailman id 107813;
 Fri, 09 Apr 2021 12:22:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rPLO=JG=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUq9x-0007DB-09
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 12:22:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c96cce45-fd19-4e98-8fc4-b40f9c0c958d;
 Fri, 09 Apr 2021 12:22:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A0FF7B0A5;
 Fri,  9 Apr 2021 12:22: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: c96cce45-fd19-4e98-8fc4-b40f9c0c958d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617970966; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=ZGwkuAaiagC17JwNpRZAwtlb7e56L/Fn/UJmCC7muYo=;
	b=N32ueEd/asB0qyuTybSllk9RzpKdJhDjy1niuAkQOeR2Y4p0j25fzsF4g3WzDdfdGpcoi1
	ZF3OFxCbmWDJVxSFTR0FpIPmtYrb0mL+9FYDvs3n0f6OLzzqCHK0Z0Hrd/j7RK1fihCx0O
	c2CRcy4kblADoJ8U406Nv3fyS3nRKBs=
Subject: Re: [xen-unstable-smoke test] 160853: regressions - FAIL
To: osstest service owner <osstest-admin@xenproject.org>,
 xen-devel@lists.xenproject.org
References: <osstest-160853-mainreport@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e7e1cea3-3332-d2df-5e06-beb6820370e3@suse.com>
Date: Fri, 9 Apr 2021 14:22:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <osstest-160853-mainreport@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 09.04.2021 13:53, osstest service owner wrote:
> flight 160853 xen-unstable-smoke real [real]
> flight 160857 xen-unstable-smoke real-retest [real]
> http://logs.test-lab.xenproject.org/osstest/logs/160853/
> http://logs.test-lab.xenproject.org/osstest/logs/160857/
> 
> 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. 160803

This (and a few more similar ones) has been failing in non-smoke
flights as well for a while. Therefore I don't think I need to be
concerned ... No idea though what the plan is to address the
failures there (which might then also help the one here).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 12:54:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 12:54:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107821.206082 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUqeV-0001Yr-KQ; Fri, 09 Apr 2021 12:54:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107821.206082; Fri, 09 Apr 2021 12: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 1lUqeV-0001Yk-Gi; Fri, 09 Apr 2021 12:54:23 +0000
Received: by outflank-mailman (input) for mailman id 107821;
 Fri, 09 Apr 2021 12:54:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2EHW=JG=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lUqeT-0001Yf-W8
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 12:54:22 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0c295892-2e23-45e7-a03e-0647c6bc5e62;
 Fri, 09 Apr 2021 12:54: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: 0c295892-2e23-45e7-a03e-0647c6bc5e62
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617972860;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=pM9SaWu+Ukt5IFMm+SIfosVx3UNFpmNzW09B/C+OKGY=;
  b=Fr3TJaT3eUTN+GfslCW+6QqpPnxJPAarH9L7bifowY0VlfdCeDeet5K1
   yhMhndAnH0Qje6awO75/RSNdVTChHjQmt8pTPOnOM7Pafq8919hwDbmmY
   iz4HMq5HkUXttrcF7bO/auUd2RfQcWroyyez7spy3jPjVVoVDpkuLHeow
   c=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: mE1CCGo6sn09WCtbBvysd4h3Pi80r3DPSTPOfcssNWwWa7JMwjmsy+mG69X+Td5GTDA4Tkhfr6
 pcSthcWM1wpqbyfIXsaT7263H5WPB6rf5I9HCWK2x96rxFL5Cw63sUjMnDlQ0Jp44SJLIrv39t
 u8hHoDePodAML4gS7wo7jT5LJOW9yoss6R7Ns0edY+pvb9fCTvBi23EF8Xg0jGRaSmL9pq9B7C
 95EOpvrmtIS02EFnqb9WMPbBBH/NXfib8ifcnaNiZfMk4sn3j6rntGzUqQVpQnl8JRCB5UJaag
 u0E=
X-SBRS: 5.2
X-MesageID: 41104157
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:+4wJeah/GyCflTNnZDjnrBRGP3BQXwh13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy4N5B9efdSPhv3alK5wn0Jv6z1TbaknD38N+9Y
 MlSahxD9XsEUN35PyR3CCUG8stqePpzImGnuHbpk0CcShPS4VNqzh0ERyaFEoefngiObMcGI
 CH7sRK4xqMEE5nDfiTPXUOU+jdq9CjrvuPDSIuPBI79BKIyQqh9b+SKXOl9y0DWDBCy6pKyx
 mmryXF4MyY0s2T+1vn+EL4q79Xn9bgzdUrPr3wtuElbg/CpyztSIBoW7iptC04rue1+D8R4a
 XxiiZlBetfwTf8eXy0vAvM1mDboUkTwk6n83C0qz/CptH0Xz0zAcYpv/MmTjLpr3AOkfs59Y
 Aj5RP/i7NnSSnusQ642v3zEzZtrUawqWpKq59ps1VvFbEwRZUUkZYS5ypuYfE9NRO/0q8LOs
 90AvrR4f5HGGnqFUzxjy1UzNugUm9bJGb+fmEy/sic0z1hlHtk1UcvxMsGgnca9J4mIqM0n9
 j5Dg==
X-IronPort-AV: E=Sophos;i="5.82,209,1613451600"; 
   d="scan'208";a="41104157"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jp09cWfE9vyVub2GxMD3CfasQxxGLN1VQ5nvLooq82eYnoGckUngKA+C3goXNRMAG+Ax9/jQaZOY+hvOxSqBlXgwVRhXpxm5Q+kBW7yfVjXQcZ41y0dhOJpMKXPNt3vOonEoys4NGHe8vxa09/3V8FDUOq1bWgqlQ6wHfBDv84Xv9BSLXqYxi+8OUb97O4HiiWg2upF1f9CKEj/fc1v/IQVahsIAiZTGwpxoGRjSVmcQEHIFU3G5XpIhC+7XLNa1hJ6Ixuyv5shYTbVMPnYQcqkr0SLBaVV00V+mEJ5QeyG87Ava3P43vw8iV1/VQkgqaAAluy2xyFQGXc+nHYd9iw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+3sz/kHKcQ/kphMk5MS83SWxQhL4qGgP93o8Mpqi5As=;
 b=Ur/KyXj5jtr1O6P3gXTmGb7OMHPu4uLQ7wCwyux9W0asYlmndbx3T2lMa3M+VnZGIRi16YDLWv1jpUQF8vYfVkQar8lCUfOjF+BXIau0Tk36zCKBD/gydEh3L/Tqy99PW6erSC90bJNG8F058D1C/ycc88nYA2ZAXiE1BZtWWsaZxdZ/aw1CPooz4qFGLBOADirzr9Do3BgzyNom15kxYQDUe/BPQxkZHfg2nj+3VqTxgxkiF/Ue7gjRhfS6Q3Bua9+yeT2r6nhyx95LS5i1xLm6MMAnq+jigGspZjmGsWMMWRklQl+iUkGq1hCydFcuc50CzzczpyQSDA1Ev4+sAA==
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=+3sz/kHKcQ/kphMk5MS83SWxQhL4qGgP93o8Mpqi5As=;
 b=ly+cO3vYAd7m2WEDkGbeg3EbfCoky17rQvmWVk9pc2lwCfiSizRpaZBrTPYiNviuUVKr5uDpBleSPsJzIzrc96ing2rXzHQq6sNgucCPaBR9G5KXbhMeCGtrN7g71mmVxeliqHSD5pb/5ChmKlt+CWZNppiastNrBIh3O353wy8=
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <4ea9c4a3-74c0-1722-fa5d-3930be99ef4a@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 09/11] kexec: avoid effectively open-coding
 xzalloc_flex_struct()
Message-ID: <8131c6f5-ed8c-98ae-376a-fe8f7b63a790@citrix.com>
Date: Fri, 9 Apr 2021 13:54:09 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <4ea9c4a3-74c0-1722-fa5d-3930be99ef4a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0343.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18d::6) To BN7PR03MB3618.namprd03.prod.outlook.com
 (2603:10b6:406:c3::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: fe4f34da-d758-4e8f-9fe1-08d8fb56941f
X-MS-TrafficTypeDiagnostic: BN8PR03MB4946:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB4946276D70CC1F70B5D6FD7FBA739@BN8PR03MB4946.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: WEJKHCPJ0hi5tFG6rNx8a+fpzh/zAHlN5A/3QMJrGV48QErsW5jT/2WTf8J6FwtM+TDebCLEPqQok4pCIuc4nacUGsnuus0NmzNLbp0irx1rpPMfsdZ8kPt6q9+YdByKKkSkgUwBcUelYIaQCp9Jc3BC/iIi6qPFjohmi/80Fu/tVxjCeJb2AKKpW42hc/CCLDyBbeKBfq7v9RE4TZLvH62c5NTfBwUyo5EIPLRxhaNaeiEcWfDcIlTOW2OUQte+N+OXmZ8alxPNfl1oBJbX9wdHY7uh7hGdzx1lJO3Hxb8p5bglGCyen/miKmt4pQ89ngx9+NSr4UzFxSJ/iSPVihN7yOg2JDwxyMn7hN/SO9oklRJA+tVNWE4UnANcj+3dHgiRp1NMmFUYg/aOpf+7uaWei4as+ZWsfcqrTrk9eaYl0y9VZG3PhTv8IPiyWZOkyPEU7BshIOeuAHEOXyVm9ODCHI8HjvtZc7fA6X/GV0SSDmpbNP8dS5sNriuAWtZw+PkyDX0ZCZ8DihRS9f+Y3OA5JQurmE3aSaprhCL88kVaen8L0y3hQkxyBXvzW6xwlZJ1Nuz6rX1JItj7u5DXqVTikYAnTHeArKu7PgjG74nNSjQAj91ilcMEQTsOJ0lO2vCAjJ/HPCzS8tq095XnKjajakhFWWEo0q+1c97sGevNjurqOjCqrjFoMZUXfV/z9Ib0MocCmJwTTvAa5tLDHQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN7PR03MB3618.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(376002)(136003)(366004)(39860400002)(396003)(66476007)(66946007)(107886003)(66556008)(4326008)(86362001)(36756003)(478600001)(31686004)(31696002)(83380400001)(16576012)(110136005)(2616005)(956004)(53546011)(2906002)(5660300002)(8676002)(6666004)(8936002)(38100700001)(6486002)(16526019)(186003)(26005)(316002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/G1XQqnop?=
X-MS-Exchange-CrossTenant-Network-Message-Id: fe4f34da-d758-4e8f-9fe1-08d8fb56941f
X-MS-Exchange-CrossTenant-AuthSource: BN7PR03MB3618.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 12:54:14.5463
 (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: kCMbGnSUUbm2WUvUF9NtAEQdBdKRyB67Pe6ud7nYuefwNRoQ4Fy0xcM8xC0dpYl6Jkx9dpzeGsqQTPbqR5YG4UTTHI9v0rNmSdWvHxF/+uQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB4946
X-OriginatorOrg: citrix.com

On 08/04/2021 13:21, Jan Beulich wrote:
> There is a difference in generated code: xzalloc_bytes() forces
> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
> actually don't want it.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

This honestly looks like a backwards step.=C2=A0 In particular, ...

>
> --- a/xen/common/kexec.c
> +++ b/xen/common/kexec.c
> @@ -463,7 +463,10 @@ static void * alloc_from_crash_heap(cons
>  /* Allocate a crash note buffer for a newly onlined cpu. */
>  static int kexec_init_cpu_notes(const unsigned long cpu)
>  {
> -    Elf_Note * note =3D NULL;
> +    struct elf_notes {
> +        Elf_Note first;
> +        unsigned char more[];
> +    } *notes =3D NULL;
>      int ret =3D 0;
>      int nr_bytes =3D 0;
> =20
> @@ -477,7 +480,8 @@ static int kexec_init_cpu_notes(const un
> =20
>      /* If we dont care about the position of allocation, malloc. */
>      if ( low_crashinfo_mode =3D=3D LOW_CRASHINFO_NONE )
> -        note =3D xzalloc_bytes(nr_bytes);
> +        notes =3D xzalloc_flex_struct(struct elf_notes, more,
> +                                    nr_bytes - sizeof(notes->first));

... this is far more error prone than the code you replaced, seeing as
there is now a chance that it can underflow.

~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Apr 09 13:23:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 13:23:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107833.206097 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUr6X-0004Lr-W7; Fri, 09 Apr 2021 13:23:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107833.206097; Fri, 09 Apr 2021 13: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 1lUr6X-0004Lk-T3; Fri, 09 Apr 2021 13:23:21 +0000
Received: by outflank-mailman (input) for mailman id 107833;
 Fri, 09 Apr 2021 13:23:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rPLO=JG=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lUr6W-0004Lf-Sh
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 13:23:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c5ef3842-18e1-47b4-9f26-f06e6da1593a;
 Fri, 09 Apr 2021 13:23:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 33800B0D1;
 Fri,  9 Apr 2021 13:23:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c5ef3842-18e1-47b4-9f26-f06e6da1593a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617974599; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=u+GSWSxRnFu2ymxORhPVe2l7To6rRzYw1ekr3JmHBFg=;
	b=JB0iSkiVvMJTxiMDHYKLdPpIuTcI/Koi1YqD8Xna65udZKQ7BiywfMVbR54wOcq9LMQVyj
	oOUx/BuzM8Q5FGgB3W9SaABzIhZ7QIGO4AvxGL9f3+ZZ2yCU6cZENz+7E9WJtEVfH+TpH9
	MhVkuTlWdmoTHzJaTw08tqqU9OLmig4=
Subject: Re: [PATCH 09/11] kexec: avoid effectively open-coding
 xzalloc_flex_struct()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <4ea9c4a3-74c0-1722-fa5d-3930be99ef4a@suse.com>
 <8131c6f5-ed8c-98ae-376a-fe8f7b63a790@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ade021ab-8e9d-600d-b48d-8e251a4c341d@suse.com>
Date: Fri, 9 Apr 2021 15:23:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <8131c6f5-ed8c-98ae-376a-fe8f7b63a790@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 09.04.2021 14:54, Andrew Cooper wrote:
> On 08/04/2021 13:21, Jan Beulich wrote:
>> There is a difference in generated code: xzalloc_bytes() forces
>> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
>> actually don't want it.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> This honestly looks like a backwards step.  In particular, ...
> 
>>
>> --- a/xen/common/kexec.c
>> +++ b/xen/common/kexec.c
>> @@ -463,7 +463,10 @@ static void * alloc_from_crash_heap(cons
>>  /* Allocate a crash note buffer for a newly onlined cpu. */
>>  static int kexec_init_cpu_notes(const unsigned long cpu)
>>  {
>> -    Elf_Note * note = NULL;
>> +    struct elf_notes {
>> +        Elf_Note first;
>> +        unsigned char more[];
>> +    } *notes = NULL;
>>      int ret = 0;
>>      int nr_bytes = 0;
>>  
>> @@ -477,7 +480,8 @@ static int kexec_init_cpu_notes(const un
>>  
>>      /* If we dont care about the position of allocation, malloc. */
>>      if ( low_crashinfo_mode == LOW_CRASHINFO_NONE )
>> -        note = xzalloc_bytes(nr_bytes);
>> +        notes = xzalloc_flex_struct(struct elf_notes, more,
>> +                                    nr_bytes - sizeof(notes->first));
> 
> ... this is far more error prone than the code you replaced, seeing as
> there is now a chance that it can underflow.

You're kidding, aren't you? sizeof_cpu_notes() can't possibly return
a value which would allow underflow here. There would be bigger
issues than the underflow if any such happened, in particular with
any theoretical underflow here simply resulting in the allocation to
fail.

The original code is type-unsafe and requests more alignment than
necessary. Besides objecting to my present way of addressing this,
I would find it rather helpful if you could mention some kind of
alternative you'd consider acceptable. As said in the cover letter,
I think mid-term we ought to do away with xmalloc_bytes(). Hence
some alternative would be needed here anyway.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 14:52:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 14:52:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107869.206139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUsUe-0004Kq-6q; Fri, 09 Apr 2021 14:52:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107869.206139; Fri, 09 Apr 2021 14:52: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 1lUsUe-0004Kj-32; Fri, 09 Apr 2021 14:52:20 +0000
Received: by outflank-mailman (input) for mailman id 107869;
 Fri, 09 Apr 2021 14:52: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 1lUsUd-0004Kb-FY; Fri, 09 Apr 2021 14:52: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 1lUsUd-0003gj-2Y; Fri, 09 Apr 2021 14:52: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 1lUsUc-0001us-Oe; Fri, 09 Apr 2021 14:52:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUsUc-0005H3-OA; Fri, 09 Apr 2021 14:52: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=zP5BdxNw+85SvYt7+mdpm1lQhVW7eDvv6nYrNMdc+CA=; b=DyPkrdk0doVRm+CiM8Xu+uuglb
	EURIoL/S+D9Bt2PqZ4BjV5Gr/EMEDGC3ZJniMSW6NkUlIHqn+h7cS4Ek5S0LrM7EOPdCQMocGtZm1
	WgOsawpF620xk0bayBQU7H8VfEf2APlrYsZdWMFX5S3Q4cmRkdzhr9W5rvRfmmZLDMLk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160837-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160837: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=3fb4f979b4fa1f92a02b538ae86e725b73e703d0
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 14:52:18 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                3fb4f979b4fa1f92a02b538ae86e725b73e703d0
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  251 days
Failing since        152366  2020-08-01 20:49:34 Z  250 days  425 attempts
Testing same since   160837  2021-04-08 22:26:37 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1316823 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 14:58:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 14:58:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107876.206154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUsaG-0004Wq-0p; Fri, 09 Apr 2021 14:58:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107876.206154; Fri, 09 Apr 2021 14: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 1lUsaF-0004Wj-Sj; Fri, 09 Apr 2021 14:58:07 +0000
Received: by outflank-mailman (input) for mailman id 107876;
 Fri, 09 Apr 2021 14:58:06 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3s/Q=JG=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lUsaE-0004We-L2
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 14:58:06 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1916a24c-5bbf-4e1e-a7c1-73422f234fad;
 Fri, 09 Apr 2021 14:58: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: 1916a24c-5bbf-4e1e-a7c1-73422f234fad
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1617980284;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=5TesPVEfyIMY20n/Ccl//SjMUzzd1SZrTSSZmE2LA1o=;
  b=PXKSxwnNyvFqIj7WbCetttRNUnXU++VouLf8SFzdk4B+ASuktPQEl9ME
   ZnW6HF6J2wQ7ZZYfBHLmeoOOelJdbV7JI3bl2Pg2uywsWbQuWCOoRzA3e
   i0Z/CK8N3jlO8DMzs1wXdGgYSvgs36wJlLFq5H7JXLhPiexHlfufVbTKB
   Y=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: EgmpTbOy8VoD3vEIFTorMw4RqEpo8EPLEWqGPMrZeYQvwXphwFD66zPmm6/pt1VgE32+cZdvDc
 mJdaxp3tGEjlPTqdFHx3C7Kst707n6zpnrpo2o2D4A03mwucaWG1dJW2tkg+BDNN0KSaJNCIqE
 3BclUXEN0Wr15JpQP6tacegSD5aKJPOZYrslKEDl9mjf6A2/BknIh3VKMORo5wJFUR7sI1YDpl
 TsZqUJ1gGoc/W0I4aEqLB4hINEJDFEPlD73l3L6d9AZOXeGbrBRmb8EhOwMCJxs/Uedd30X0Af
 2i8=
X-SBRS: 5.2
X-MesageID: 42742123
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:qf5+tqlZ3Obe/R3hKSp/xmT1tmbpDfOej2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN+AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 hdWoBEIpnLAVB+5PyX3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0YNi+wOCRNNW97LLA+E4
 eR4dcCijq7YHIMbtm6AH5tZZm/m/TgkpX6bRkaQyM94A6Vgj+yrJL8GR6U3hAROgk/vYsK22
 7DjgD/++Gfo+i2oyWsrVP7wrZ3vJ/aytVFDNGRkcR9EFTRoyuheYgJYczmgBkbu+eqgWxa9O
 XkgxBlBMhr7mOUQ2fdm2qT5yDF8BIDr0Dv0kWZh3yLm72LeBsfB9BajYxUNjv1gnBQxO1U66
 5A02KHu5c/N3qp906Rlru4NWAeqmOOrXUviuIVhXBEOLFuE4N5loAD4FhTVK4JASOS0vFWLM
 BVEMre6PxKGGnqFkzxg28H+q3KYl0DWj2CQkQEp/WP1SlXkH1T3yIjtb0it0ZF25QnR5Ze4e
 PYdoxuibFVV8cTKZlwHeEbXKKMeyPwaCOJFFjXDUXsFakBNX6Ig5nr4I8t7OXvXJAT1pM9lL
 nITVswjx99R2veTem1mLFb+BHER2uwGR73zNtF2pR/srrgAJL2LCyqUjkV4oidisRaJveed+
 e4OZpQDfOmB3DpA5x10wr3XIQXAWUCUfcSps0wVzu104L2A7yvktaeXOfYJbLrHzphcHj4GG
 E/UD/6I9gFwVusXlP+nRjNS1LgckHy5vtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7AL6PqNL+mUCGuULzq0l5MBtUCUhYpJ/6VWlRmAMMO0ToNZIKu9CVf3FuzGKKTyUPCP/+IU
 p6nRBa6Ki3J5ufyWQJENS8KF+XiHMVuTasQ4oDnLaAoePoYIkxAJpjeKEZL3SLKzVF3SJR7E
 tTYg4NQUHSUhn0j7++sZASDObDM/9mgAmqJsZQgWnFtVqVoPwuQndzZU/tbeenxSIVAxZEjF
 x49KESxJCanyy0FGc5iOMkdGFXZH+vG7JABgSdbIBykrTmETsAC1uitHi/sVUea2Dq/0Idii
 jEITePcf/GOFZbp0tVy73n6l9ya2WbcX9hc3wSi/wOKU32/lJIlcObbKu61GWcLmEPxewQKx
 npSzofKAEG/aH86Del3BK5UVk2zJQnOeLQSIk5e7bIw3W3NcmjjqcdBcJZ+55jKfHjuuIGSv
 ikZgeQNT/0YtlZgjC9lzIAAm1ZuXMkmfTn1FnZ92C+xmc4GueXD1J8Rb0XSuvsplTMdrKt6t
 Fegt00t+frbTm0Rd6C1K3NbzlMbjnUunW7Suk0qZZS+YI+3YEDaKXzYH/t7jVg2h57EeLf0G
 U5a45/6KraOoBuc9cJEhgptWYBpZCqFg8TrgfyAuUCZlkjgH/QAsOR79Pz2M4SK3zEgDG1BE
 KW/CJc9crURiev1bYVDKQrPGRdAXJMnkhKzaend4fKDh+tePwG1F2mMmWleLs1ctnJJZwg6j
 J76cqPhemZam7R3x3RpyJyJuZr/3y8Sc2/RCKKFuggya33BX28xo+r6tW0ljH5VH+SbFkZn5
 RMcQgoVft44wNSxLEf42yVUaz4okUsjltY73VGrzfWq/abyVaeO1pHPw3fiohRRh9JPBGz/J
 z4zdQ=
X-IronPort-AV: E=Sophos;i="5.82,209,1613451600"; 
   d="scan'208";a="42742123"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NcC0aiq/Afy8sa+5A9ZQVSh9tVPe6B3H0EC6SkEptix8lrmZ9QkpHjhAWxc79uJMUoZn3n0r1pp7bX+dhFzWaOECR5eEHLBWeL87vEIDQdOvcAzx6CnoO+n1zefe2KZveRCC7ZEaz3Kbt7y2SQOffU9zLY2KDbFiXQoiVrY4I5EsKk1vGArKacNJ5617oVGHIGBx1lKOg/Eaa751NQXmtVN+eu3ZZxr5CjnlJwijocuPMBOaNEe9kNudXYmnmU1o0HKsK63aBPLgiumKcuUf5MXZfLqM058n0ymaztKN33f5JYTqxAKOUPKR9ReTtdFSGEi5vRP2JBhfdzbXu+yaug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=w9WRBmYTvksjqNonn09d22qOKyvhqKGeCO6Lvj4/rbs=;
 b=nUuaAncFY8FMELWsncAEzMeHZ641owjH0iIWfdFumnNPAW/6ssGVxOs8KLpBv+lQCA2Rlw9YnHKuUpdn0V8oDohxye2qyB6opa3+QoKGBdEZeSPKZ9EDMmSvHFtWQ2657ZR0nenvgDlxiHLks2IX6ESxIxb2iHbnPpHjnrNrFwnf5f9BNRqFOS49xPmWQhYwL7AZQ+EcaGr1499n/Z/6H4Q+XH/291b2fhMP5CYUctNUd4OdW3UdsfJNyW1D8ilTbA7Qwp/Q2BaYdNi35vr0RqVpVtNJl+R5mkaVCQrKiBVFEhZ37muAHzPjjBftll/mU+A4P1ZnddDzy3RO0GXK6w==
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=w9WRBmYTvksjqNonn09d22qOKyvhqKGeCO6Lvj4/rbs=;
 b=O2mLFQPeqC1gtmW6JkQhCU1f7rUi2adh0ddEoQfcnPrkegQEwWRj7/72EZDsfUDdRZpOX3+cXNF1iDWofXno1iaVWZXgLQGB+vL86lb1O+F77iO3b/Gjm6KStDw9W0zEaGiTImbAnJ7mIpE8kygA9vOh4KDKJjHh+xuWmxN3HLo=
Date: Fri, 9 Apr 2021 16:57: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>, Ian Jackson <iwj@xenproject.org>, "Wei
 Liu" <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH 20/21] libs/{light,guest}: implement
 xc_cpuid_apply_policy in libxl
Message-ID: <YHBrc02NGO6VmOnZ@Air-de-Roger>
References: <20210323095849.37858-1-roger.pau@citrix.com>
 <20210323095849.37858-21-roger.pau@citrix.com>
 <f344e7aa-90c5-45ce-56be-9fae24f1e83e@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <f344e7aa-90c5-45ce-56be-9fae24f1e83e@citrix.com>
X-ClientProxiedBy: MR2P264CA0042.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::30)
 To SA0PR03MB5610.namprd03.prod.outlook.com (2603:10b6:806:b2::9)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 74a8a871-952b-4dc8-334d-08d8fb67debc
X-MS-TrafficTypeDiagnostic: SA0PR03MB5643:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SA0PR03MB5643DC3803121FE461CBBE378F739@SA0PR03MB5643.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: PWpTtBQnINIR8ORGa93HHXMSkbHHiTxsegXVmBWoB2TG+kxe/vfA5VFQbev2TZqImrOQYnMvvw82rUPB0GWKwCPUAwWbiZif90BNut3qL9O0JvbfK7Dz0KH5wJ+xJM/Kc1/0cPJ8KWTRq+BmLQD3BHnulraZfs9OZaqeq/MZuQUMbgY8o00TH460Q/3iwngo1WZxE6IVdtojm1sAWhS4CmkrLwgsKAvowpRtbkvgSrT514GLyO3aZRCcXSu/fntrF5lFLwmQrMSpLEDDvNm1QMYF2GZ8KcRzernXP+FmEFLV9I+sfbha3V8BKWTygoj9ZbR5r/g/RU5qtmJGEuCftbVdYoiQ4SZcGnj/wB3YvctEZpdw4UQoKnwzCPkPtoXw0uZKrc1l+pQ/3x6C29lwU7hh8JLXFzr6H1CGPohATGKbpqiFHLXtKyCnHQA2jAOvjCG3RWK8GKiy6dIqoHiitNUble1UgBzG29KP48gS+Qu+tNrzTFv5NwDXeVn0FjYjal/0Z2WnBeRsbhwmrJ++rXO95SItjKd9vtcoqAC3gtuzn25zN1w4rsOIwnOf/FkmCmSfWlfSpMe/OUJanPXNWy6ecWe9etGW90fwG5PXN6amZbJYeO+aWKLDYXD0fKsvEIqlBc6MIhsCVX7ISGrNU7XyepydlOosBc0YoQx4r8I=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA0PR03MB5610.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(396003)(346002)(136003)(39860400002)(366004)(376002)(5660300002)(107886003)(53546011)(38100700001)(66946007)(4326008)(33716001)(6862004)(8676002)(85182001)(8936002)(16526019)(186003)(9686003)(66556008)(66476007)(6666004)(6486002)(478600001)(6636002)(956004)(6496006)(26005)(2906002)(54906003)(86362001)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/i9znv9?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 74a8a871-952b-4dc8-334d-08d8fb67debc
X-MS-Exchange-CrossTenant-AuthSource: SA0PR03MB5610.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 14:58:01.2553
 (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: i9MTP5Lz4cEOji0H0ywUbUa6OLITx8oUGwc9+TkKITtIqW/TI3Il1sLj8uzwRPMCUbyziGODRWIEeb3rEF3+WQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5643
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 06:44:02PM +0100, Andrew Cooper wrote:
> On 23/03/2021 09:58, Roger Pau Monne wrote:
> > With the addition of the xc_cpu_policy_* now libxl can have better
> > control over the cpu policy, this allows removing the
> > xc_cpuid_apply_policy function and instead coding the required bits by
> > libxl in libxl__cpuid_legacy directly.
> >
> > Remove xc_cpuid_apply_policy.
> >
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > I'm unsure why this is called libxl__cpuid_legacy, mostly because I
> > don't seem to be able to spot a libxl__cpuid (ie: non-legacy version).
> > Should this be renamed to libxl__cpuid?
> >
> > 1b3cec69bf300e012a mentions the process of switching to a new cpuid
> > interface, but I'm not sure we need to keep libxl__cpuid_legacy, since
> > that's an internal interface that's not exposed to libxl clients
> > anyway.
> 
> "legacy" was referring to the pre-4.14 migrate-in problem.  It was the
> best I could come up with without having a firm plan of how this series
> was going to look like.
> 
> That said, the resulting function is still very definitely doing thing's
> I'd consider "legacy", so perhaps it wants to stay named like this until
> we've got a better plan for how to enable non-trivial features.

I don't have a strong opinion either way, but as said this is an
internal libxl function, so naming it libxl__cpuid or some such and go
expanding it as required would be perfectly fine IMO, even if the
current parameters are going to change as part of expanding it.

In any case we would not have a libxl__cpuid_legacy and a libxl__cpuid
at the same time in libxl, as those are internal helpers so at some
point when we are happy with the logic in there the _legacy suffix
would just be dropped.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 15:53:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 15:53:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107888.206178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUtRC-0001WN-5q; Fri, 09 Apr 2021 15:52:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107888.206178; Fri, 09 Apr 2021 15:52: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 1lUtRC-0001WG-2B; Fri, 09 Apr 2021 15:52:50 +0000
Received: by outflank-mailman (input) for mailman id 107888;
 Fri, 09 Apr 2021 15:52: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 1lUtRA-0001W8-B1; Fri, 09 Apr 2021 15:52: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 1lUtR9-0004en-Vo; Fri, 09 Apr 2021 15:52:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lUtR9-0006Cm-I9; Fri, 09 Apr 2021 15:52:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUtR9-0002aZ-He; Fri, 09 Apr 2021 15:52: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=1gUd95vkSeaYZMIZAq5eZ+o58KNnH6hFWq+rNui93c4=; b=piWNg7g+ogO+QlRAErUA7mLZih
	2EDuCiO5GpknYl32FmNoGGDnuL72jhEInPV2EhlVjZzFB9xOOctKjL7Nzvp5fAZOrVzXYjc1cMDlB
	bmpX65EU5PXhHkOCdccCSnnw91WoPMK3bU/1dlw7dUzS7lAmTmQHe178cmhy86+SYDR4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160865-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 160865: 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=935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
X-Osstest-Versions-That:
    xen=025eacc13f6147ffa99da5ecee4ed96e7fe8e887
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 15:52:47 +0000

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

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                  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
baseline version:
 xen                  025eacc13f6147ffa99da5ecee4ed96e7fe8e887

Last test of basis   160803  2021-04-07 19:00:28 Z    1 days
Failing since        160853  2021-04-09 08:00:27 Z    0 days    2 attempts
Testing same since   160865  2021-04-09 12:03:12 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Julien Grall <jgrall@amazon.com>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Tim Deegan <tim@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
   025eacc13f..935d501ccb  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 16:01:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 16:01:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107896.206193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUtZ4-0002zH-47; Fri, 09 Apr 2021 16:00:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107896.206193; Fri, 09 Apr 2021 16: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 1lUtZ4-0002zA-0C; Fri, 09 Apr 2021 16:00:58 +0000
Received: by outflank-mailman (input) for mailman id 107896;
 Fri, 09 Apr 2021 16:00:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2A1F=JG=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lUtZ3-0002z5-89
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 16:00:57 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 64ba5e7a-8871-4e18-a484-51d2702eecea;
 Fri, 09 Apr 2021 16:00:54 +0000 (UTC)
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 65BF41FB;
 Fri,  9 Apr 2021 09:00:54 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 816A83F73D;
 Fri,  9 Apr 2021 09:00: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: 64ba5e7a-8871-4e18-a484-51d2702eecea
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.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>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Paul Durrant <paul@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Date: Fri,  9 Apr 2021 17:00:41 +0100
Message-Id: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

MSI related code in the "passthrough/pci.c” file is not useful for ARM
when MSI interrupts are injected via GICv3 ITS.

Therefore introducing the new flag CONFIG_PCI_MSI_INTERCEPT to gate the
MSI code for ARM in common code. Also move the arch-specific code to an
arch-specific directory and implement the stub version for the unused
code for ARM to avoid compilation error when HAS_PCI is enabled for ARM.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
Changes since v1:
 - Rename CONFIG_HAS_PCI_MSI to CONFIG_PCI_MSI_INTERCEPT
 - Implement stub version of the unused function for ARM.
 - Move unneeded function to x86 file.     
---
 xen/arch/x86/msi.c            | 64 +++++++++++++++++++++++++++++++++++
 xen/drivers/passthrough/pci.c | 51 +++++++---------------------
 xen/drivers/pci/Kconfig       |  4 +++
 xen/drivers/vpci/Makefile     |  3 +-
 xen/drivers/vpci/header.c     | 19 +++--------
 xen/drivers/vpci/msix.c       | 25 ++++++++++++++
 xen/drivers/vpci/vpci.c       |  3 +-
 xen/include/asm-arm/msi.h     | 44 ++++++++++++++++++++++++
 xen/include/asm-x86/msi.h     |  4 +++
 xen/include/xen/pci.h         | 11 +++---
 xen/include/xen/vpci.h        | 24 ++++++++++++-
 xen/xsm/flask/hooks.c         |  8 ++---
 12 files changed, 195 insertions(+), 65 deletions(-)
 create mode 100644 xen/include/asm-arm/msi.h

diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
index 5febc0ea4b..a6356f4a63 100644
--- a/xen/arch/x86/msi.c
+++ b/xen/arch/x86/msi.c
@@ -1411,6 +1411,70 @@ void __init early_msi_init(void)
         return;
 }
 
+int alloc_pci_msi(struct pci_dev *pdev)
+{
+    unsigned int pos;
+
+    INIT_LIST_HEAD(&pdev->msi_list);
+
+    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
+                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSI);
+    if ( pos )
+    {
+        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
+
+        pdev->msi_maxvec = multi_msi_capable(ctrl);
+    }
+
+    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
+                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSIX);
+    if ( pos )
+    {
+        struct arch_msix *msix = xzalloc(struct arch_msix);
+        uint16_t ctrl;
+
+        if ( !msix )
+            return -ENOMEM;
+
+        spin_lock_init(&msix->table_lock);
+
+        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
+        msix->nr_entries = msix_table_size(ctrl);
+
+        pdev->msix = msix;
+    }
+
+    return 0;
+}
+
+void free_pci_msi(struct pci_dev *pdev)
+{
+    xfree(pdev->msix);
+}
+
+int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev)
+{
+    int rc;
+
+    if ( pdev->msix )
+    {
+        rc = pci_reset_msix_state(pdev);
+        if ( rc )
+            return rc;
+        msixtbl_init(d);
+    }
+
+    return 0;
+}
+
+void dump_pci_msi(struct pci_dev *pdev)
+{
+    struct msi_desc *msi;
+
+    list_for_each_entry ( msi, &pdev->msi_list, list )
+        printk("%d ", msi->irq);
+}
+
 static void dump_msi(unsigned char key)
 {
     unsigned int irq;
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 705137f8be..1b473502a1 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -314,6 +314,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
 {
     struct pci_dev *pdev;
     unsigned int pos;
+    int rc;
 
     list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
         if ( pdev->bus == bus && pdev->devfn == devfn )
@@ -327,35 +328,12 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
     *((u8*) &pdev->bus) = bus;
     *((u8*) &pdev->devfn) = devfn;
     pdev->domain = NULL;
-    INIT_LIST_HEAD(&pdev->msi_list);
-
-    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
-                              PCI_CAP_ID_MSI);
-    if ( pos )
-    {
-        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
-
-        pdev->msi_maxvec = multi_msi_capable(ctrl);
-    }
 
-    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
-                              PCI_CAP_ID_MSIX);
-    if ( pos )
+    rc = alloc_pci_msi(pdev);
+    if ( rc )
     {
-        struct arch_msix *msix = xzalloc(struct arch_msix);
-        uint16_t ctrl;
-
-        if ( !msix )
-        {
-            xfree(pdev);
-            return NULL;
-        }
-        spin_lock_init(&msix->table_lock);
-
-        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
-        msix->nr_entries = msix_table_size(ctrl);
-
-        pdev->msix = msix;
+        xfree(pdev);
+        return NULL;
     }
 
     list_add(&pdev->alldevs_list, &pseg->alldevs_list);
@@ -449,7 +427,7 @@ static void free_pdev(struct pci_seg *pseg, struct pci_dev *pdev)
     }
 
     list_del(&pdev->alldevs_list);
-    xfree(pdev->msix);
+    free_pci_msi(pdev);
     xfree(pdev);
 }
 
@@ -1271,7 +1249,6 @@ bool_t pcie_aer_get_firmware_first(const struct pci_dev *pdev)
 static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
 {
     struct pci_dev *pdev;
-    struct msi_desc *msi;
 
     printk("==== segment %04x ====\n", pseg->nr);
 
@@ -1280,8 +1257,7 @@ static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
         printk("%pp - %pd - node %-3d - MSIs < ",
                &pdev->sbdf, pdev->domain,
                (pdev->node != NUMA_NO_NODE) ? pdev->node : -1);
-        list_for_each_entry ( msi, &pdev->msi_list, list )
-               printk("%d ", msi->irq);
+        dump_pci_msi(pdev);
         printk(">\n");
     }
 
@@ -1303,12 +1279,15 @@ static int __init setup_dump_pcidevs(void)
 }
 __initcall(setup_dump_pcidevs);
 
+
+#ifdef CONFIG_PCI_MSI_INTERCEPT
 int iommu_update_ire_from_msi(
     struct msi_desc *msi_desc, struct msi_msg *msg)
 {
     return iommu_intremap
            ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
 }
+#endif
 
 static int iommu_add_device(struct pci_dev *pdev)
 {
@@ -1429,13 +1408,9 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
     ASSERT(pdev && (pdev->domain == hardware_domain ||
                     pdev->domain == dom_io));
 
-    if ( pdev->msix )
-    {
-        rc = pci_reset_msix_state(pdev);
-        if ( rc )
-            goto done;
-        msixtbl_init(d);
-    }
+    rc = pci_assign_msix_init(d, pdev);
+    if ( rc )
+        goto done;
 
     pdev->fault.count = 0;
 
diff --git a/xen/drivers/pci/Kconfig b/xen/drivers/pci/Kconfig
index 7da03fa13b..7ab92bde6e 100644
--- a/xen/drivers/pci/Kconfig
+++ b/xen/drivers/pci/Kconfig
@@ -1,3 +1,7 @@
 
 config HAS_PCI
 	bool
+
+config PCI_MSI_INTERCEPT
+	def_bool y
+	depends on X86 && HAS_PCI
diff --git a/xen/drivers/vpci/Makefile b/xen/drivers/vpci/Makefile
index 55d1bdfda0..f91fa71a40 100644
--- a/xen/drivers/vpci/Makefile
+++ b/xen/drivers/vpci/Makefile
@@ -1 +1,2 @@
-obj-y += vpci.o header.o msi.o msix.o
+obj-y += vpci.o header.o
+obj-$(CONFIG_PCI_MSI_INTERCEPT) += msi.o msix.o
diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index ba9a036202..a7695a0e2a 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -206,7 +206,6 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
     struct vpci_header *header = &pdev->vpci->header;
     struct rangeset *mem = rangeset_new(NULL, NULL, 0);
     struct pci_dev *tmp, *dev = NULL;
-    const struct vpci_msix *msix = pdev->vpci->msix;
     unsigned int i;
     int rc;
 
@@ -244,21 +243,11 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
     }
 
     /* Remove any MSIX regions if present. */
-    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
+    rc = remove_msix_regions(pdev,mem);
+    if ( rc )
     {
-        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
-        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
-                                     vmsix_table_size(pdev->vpci, i) - 1);
-
-        rc = rangeset_remove_range(mem, start, end);
-        if ( rc )
-        {
-            printk(XENLOG_G_WARNING
-                   "Failed to remove MSIX table [%lx, %lx]: %d\n",
-                   start, end, rc);
-            rangeset_destroy(mem);
-            return rc;
-        }
+        rangeset_destroy(mem);
+        return rc;
     }
 
     /*
diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
index 846f1b8d70..ca0a9b5665 100644
--- a/xen/drivers/vpci/msix.c
+++ b/xen/drivers/vpci/msix.c
@@ -428,6 +428,31 @@ int vpci_make_msix_hole(const struct pci_dev *pdev)
     return 0;
 }
 
+int remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem)
+{
+    const struct vpci_msix *msix = pdev->vpci->msix;
+    unsigned int i;
+    int rc;
+
+    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
+    {
+        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
+        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
+                vmsix_table_size(pdev->vpci, i) - 1);
+
+        rc = rangeset_remove_range(mem, start, end);
+        if ( rc )
+        {
+            printk(XENLOG_G_WARNING
+                    "Failed to remove MSIX table [%lx, %lx]: %d\n",
+                    start, end, rc);
+            return rc;
+        }
+    }
+
+    return 0;
+}
+
 static int init_msix(struct pci_dev *pdev)
 {
     struct domain *d = pdev->domain;
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index cbd1bac7fc..ebe40b0538 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -48,8 +48,7 @@ void vpci_remove_device(struct pci_dev *pdev)
         xfree(r);
     }
     spin_unlock(&pdev->vpci->lock);
-    xfree(pdev->vpci->msix);
-    xfree(pdev->vpci->msi);
+    free_vpci_msi(pdev);
     xfree(pdev->vpci);
     pdev->vpci = NULL;
 }
diff --git a/xen/include/asm-arm/msi.h b/xen/include/asm-arm/msi.h
new file mode 100644
index 0000000000..c54193310e
--- /dev/null
+++ b/xen/include/asm-arm/msi.h
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2021 Arm Ltd.
+ *
+ * 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/>.
+ */
+
+#ifndef __ASM_MSI_H_
+#define __ASM_MSI_H_
+
+static inline int alloc_pci_msi(struct pci_dev *pdev)
+{
+    return 0;
+}
+
+static inline int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev)
+{
+    return 0;
+}
+
+static inline void dump_pci_msi(struct pci_dev *pdev) {}
+static inline void free_pci_msi(struct pci_dev *pdev) {}
+static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
+
+#endif /* __ASM_MSI_H */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/include/asm-x86/msi.h b/xen/include/asm-x86/msi.h
index e228b0f3f3..7ef0161b67 100644
--- a/xen/include/asm-x86/msi.h
+++ b/xen/include/asm-x86/msi.h
@@ -252,5 +252,9 @@ void unmask_msi_irq(struct irq_desc *);
 void guest_mask_msi_irq(struct irq_desc *, bool mask);
 void ack_nonmaskable_msi_irq(struct irq_desc *);
 void set_msi_affinity(struct irq_desc *, const cpumask_t *);
+int alloc_pci_msi(struct pci_dev *pdev);
+void free_pci_msi(struct pci_dev *pdev);
+void dump_pci_msi(struct pci_dev *pdev);
+int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev);
 
 #endif /* __ASM_MSI_H */
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index 8e3d4d9454..f5b57270be 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -79,10 +79,6 @@ struct pci_dev {
     struct list_head alldevs_list;
     struct list_head domain_list;
 
-    struct list_head msi_list;
-
-    struct arch_msix *msix;
-
     struct domain *domain;
 
     const union {
@@ -94,7 +90,14 @@ struct pci_dev {
         pci_sbdf_t sbdf;
     };
 
+#ifdef CONFIG_PCI_MSI_INTERCEPT
+    struct list_head msi_list;
+
+    struct arch_msix *msix;
+
     uint8_t msi_maxvec;
+#endif
+
     uint8_t phantom_stride;
 
     nodeid_t node; /* NUMA node */
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 9f5b5d52e1..a6b12717b1 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -91,6 +91,7 @@ struct vpci {
         /* FIXME: currently there's no support for SR-IOV. */
     } header;
 
+#ifdef CONFIG_PCI_MSI_INTERCEPT
     /* MSI data. */
     struct vpci_msi {
       /* Address. */
@@ -136,6 +137,7 @@ struct vpci {
             struct vpci_arch_msix_entry arch;
         } entries[];
     } *msix;
+#endif /* CONFIG_PCI_MSI_INTERCEPT */
 #endif
 };
 
@@ -148,6 +150,7 @@ struct vpci_vcpu {
 };
 
 #ifdef __XEN__
+#ifdef CONFIG_PCI_MSI_INTERCEPT
 void vpci_dump_msi(void);
 
 /* Make sure there's a hole in the p2m for the MSIX mmio areas. */
@@ -174,7 +177,7 @@ int __must_check vpci_msix_arch_disable_entry(struct vpci_msix_entry *entry,
                                               const struct pci_dev *pdev);
 void vpci_msix_arch_init_entry(struct vpci_msix_entry *entry);
 int vpci_msix_arch_print(const struct vpci_msix *msix);
-
+int remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem);
 /*
  * Helper functions to fetch MSIX related data. They are used by both the
  * emulated MSIX code and the BAR handlers.
@@ -208,6 +211,25 @@ static inline unsigned int vmsix_entry_nr(const struct vpci_msix *msix,
 {
     return entry - msix->entries;
 }
+
+static inline void free_vpci_msi(const struct pci_dev *pdev)
+{
+    xfree(pdev->vpci->msix);
+    xfree(pdev->vpci->msi);
+}
+#else /* !CONFIG_PCI_MSI_INTERCEPT */
+static inline int vpci_make_msix_hole(const struct pci_dev *pdev)
+{
+    return 0;
+}
+
+static inline int remove_msix_regions(const struct pci_dev *pdev,
+                                      struct rangeset *mem)
+{
+    return 0;
+}
+static inline void free_vpci_msi(const struct pci_dev *pdev) {}
+#endif /* CONFIG_PCI_MSI_INTERCEPT */
 #endif /* __XEN__ */
 
 #else /* !CONFIG_HAS_VPCI */
diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c
index 3b7313b949..1d6c994444 100644
--- a/xen/xsm/flask/hooks.c
+++ b/xen/xsm/flask/hooks.c
@@ -21,7 +21,7 @@
 #include <xen/guest_access.h>
 #include <xen/xenoprof.h>
 #include <xen/iommu.h>
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_PCI_MSI_INTERCEPT
 #include <asm/msi.h>
 #endif
 #include <public/xen.h>
@@ -114,7 +114,7 @@ static int get_irq_sid(int irq, u32 *sid, struct avc_audit_data *ad)
         }
         return security_irq_sid(irq, sid);
     }
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_PCI_MSI_INTERCEPT
     {
         struct irq_desc *desc = irq_to_desc(irq);
         if ( desc->msi_desc && desc->msi_desc->dev ) {
@@ -868,7 +868,7 @@ static int flask_map_domain_pirq (struct domain *d)
 static int flask_map_domain_msi (struct domain *d, int irq, const void *data,
                                  u32 *sid, struct avc_audit_data *ad)
 {
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_PCI_MSI_INTERCEPT
     const struct msi_info *msi = data;
     u32 machine_bdf = (msi->seg << 16) | (msi->bus << 8) | msi->devfn;
 
@@ -934,7 +934,7 @@ static int flask_unmap_domain_pirq (struct domain *d)
 static int flask_unmap_domain_msi (struct domain *d, int irq, const void *data,
                                    u32 *sid, struct avc_audit_data *ad)
 {
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_PCI_MSI_INTERCEPT
     const struct pci_dev *pdev = data;
     u32 machine_bdf = (pdev->seg << 16) | (pdev->bus << 8) | pdev->devfn;
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 09 16:27:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 16:27:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107902.206205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUtyO-000526-CG; Fri, 09 Apr 2021 16:27:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107902.206205; Fri, 09 Apr 2021 16: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 1lUtyO-00051z-9E; Fri, 09 Apr 2021 16:27:08 +0000
Received: by outflank-mailman (input) for mailman id 107902;
 Fri, 09 Apr 2021 16:27:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=0eme=JG=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lUtyM-00051t-Ve
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 16:27:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 696d9388-b6c9-4b1c-9752-110f1605d933;
 Fri, 09 Apr 2021 16:27:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 59CD9B02B;
 Fri,  9 Apr 2021 16:27: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: 696d9388-b6c9-4b1c-9752-110f1605d933
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1617985625; 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=fhUPXYAbVhvraSv5r/RZz5v2Ni5ifrFujAGOxwr66WE=;
	b=juGDQ4WZ4Ko+BG6+oZPCXrgp95TotOf5V39FseY8r2yi6IyjkSchaPWeor2DPo4bUDORsZ
	DGX1VygdB9PVkicLSraGhQOEzyzIRvG6IZeHBFKqnCvB1UuRXl3MkO9tmySSuEvPSu9gmP
	YAKVpDGjQnVbxhNeu8a0fONUIRfKn1s=
From: Juergen Gross <jgross@suse.com>
To: torvalds@linux-foundation.org
Cc: linux-kernel@vger.kernel.org,
	xen-devel@lists.xenproject.org,
	boris.ostrovsky@oracle.com
Subject: [GIT PULL] xen: branch for v5.12-rc7
Date: Fri,  9 Apr 2021 18:27:04 +0200
Message-Id: <20210409162704.27220-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Linus,

Please git pull the following tag:

 git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-5.12b-rc7-tag

xen: branch for v5.12-rc7

It contains a single fix of a 5.12 patch for the rather uncommon problem of
running as a Xen guest with a real time kernel config.


Thanks.

Juergen

 drivers/xen/events/events_base.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Luca Fancellu (1):
      xen/evtchn: Change irq_info lock to raw_spinlock_t


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 17:04:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 17:04:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107915.206229 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUuYX-0000Iq-6p; Fri, 09 Apr 2021 17:04:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107915.206229; Fri, 09 Apr 2021 17: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 1lUuYX-0000Ij-3b; Fri, 09 Apr 2021 17:04:29 +0000
Received: by outflank-mailman (input) for mailman id 107915;
 Fri, 09 Apr 2021 16:59:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9CxF=JG=gmail.com=mcgrof@srs-us1.protection.inumbo.net>)
 id 1lUuTZ-0007qd-8T
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 16:59:21 +0000
Received: from mail-pf1-f170.google.com (unknown [209.85.210.170])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 95eb8f1a-44b9-44d2-9a5f-1b18ef61f1a3;
 Fri, 09 Apr 2021 16:59:20 +0000 (UTC)
Received: by mail-pf1-f170.google.com with SMTP id c17so4634819pfn.6
 for <xen-devel@lists.xenproject.org>; Fri, 09 Apr 2021 09:59:20 -0700 (PDT)
Received: from 42.do-not-panic.com (42.do-not-panic.com. [157.230.128.187])
 by smtp.gmail.com with ESMTPSA id i22sm73788pfq.170.2021.04.09.09.59.17
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 09 Apr 2021 09:59:18 -0700 (PDT)
Received: by 42.do-not-panic.com (Postfix, from userid 1000)
 id 6D85340256; Fri,  9 Apr 2021 16:59: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: 95eb8f1a-44b9-44d2-9a5f-1b18ef61f1a3
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=+9xha/pXNeFBGiuagKWknyCqPbUKuPA8GXpvrC9Jx0I=;
        b=pLZfyrDz7hD2Xv2STs77lIPlCUpqsIxiHjwuy9PLFfIp2W/wWf24HXI2350+/1oSvz
         +9gUfaKbjMtieAoUXqBlHNCu3tdhhQ7CqGHMwPowh2JWfzb9eW7HvSaR5DtM8DUQzqyA
         ctpy9xssweH/jOaisakqdC7LlGj25KghAJNXaXZpyL8jcDqhcJkMfHegAhfjDh+GX44f
         Dylo+fh8zcAAcjQBgkij0Y2vVeOaZSbzhqLEwgUS6yg//V5naF7/EEvzKcc6i9uRYiaX
         B5UrqNADVSxuHQsaGNrRIKFFOoyR0ANwRu2SSiA2BBI+/izyYqd+A2c3nCL1PKD62vRR
         3+ZA==
X-Gm-Message-State: AOAM531/MoU4XkYN6eawnSnCN7qE0ja7QwZ8JYCKUVbMz5EPosSiz6ri
	JRpXx7W5FagaURqkxijVW4E=
X-Google-Smtp-Source: ABdhPJw6kXgrPuw8A7YDvuzOsmJlxLxKBkWC3Ar3os6uxRVSPlCkaHeQd8atCkDOR792q4QQZ8VNRA==
X-Received: by 2002:a65:40c7:: with SMTP id u7mr14223236pgp.29.1617987559416;
        Fri, 09 Apr 2021 09:59:19 -0700 (PDT)
Date: Fri, 9 Apr 2021 16:59:17 +0000
From: Luis Chamberlain <mcgrof@kernel.org>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Alexander Lobakin <alobakin@pm.me>, Wei Liu <wei.liu@kernel.org>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Arnd Bergmann <arnd@arndb.de>,
	Bjorn Andersson <bjorn.andersson@linaro.org>,
	Christian Brauner <christian.brauner@ubuntu.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Kees Cook <keescook@chromium.org>, Mike Rapoport <rppt@kernel.org>,
	Corey Minyard <cminyard@mvista.com>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Vasily Gorbik <gor@linux.ibm.com>,
	"Jason J. Herne" <jjherne@linux.ibm.com>,
	Joerg Roedel <jroedel@suse.de>,
	Michael Kelley <mikelley@microsoft.com>,
	Joe Perches <joe@perches.com>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Scott Branden <scott.branden@broadcom.com>,
	Olof Johansson <olof@lixom.net>,
	Mihai Carabas <mihai.carabas@oracle.com>,
	Wang Wenhu <wenhu.wang@vivo.com>,
	Marek Czerski <ma.czerski@gmail.com>,
	Hongbo Yao <yaohongbo@huawei.com>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Vineeth Vijayan <vneethv@linux.ibm.com>,
	Heiko Carstens <hca@linux.ibm.com>,
	Peter Oberparleiter <oberpar@linux.ibm.com>,
	Alexander Egorenkov <egorenar@linux.ibm.com>,
	Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>,
	Vlastimil Babka <vbabka@suse.cz>,
	"Paul E. McKenney" <paulmck@kernel.org>,
	"Steven Rostedt (VMware)" <rostedt@goodmis.org>,
	linux-alpha@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-mips@vger.kernel.org,
	linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	linux-s390@vger.kernel.org, sparclinux@vger.kernel.org,
	linux-um@lists.infradead.org, linux-hyperv@vger.kernel.org,
	xen-devel@lists.xenproject.org, linux-xtensa@linux-xtensa.org,
	openipmi-developer@lists.sourceforge.net, linux-clk@vger.kernel.org,
	linux-edac@vger.kernel.org, coresight@lists.linaro.org,
	linux-leds@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com,
	netdev@vger.kernel.org, linux-pm@vger.kernel.org,
	linux-remoteproc@vger.kernel.org, linux-staging@lists.linux.dev,
	dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org,
	linux-arch@vger.kernel.org, kexec@lists.infradead.org,
	rcu@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	Richard Henderson <rth@twiddle.net>,
	Ivan Kokshaysky <ink@jurassic.park.msu.ru>,
	Matt Turner <mattst88@gmail.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will@kernel.org>,
	"James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>,
	Helge Deller <deller@gmx.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	"David S. Miller" <davem@davemloft.net>,
	Jeff Dike <jdike@addtoit.com>, Richard Weinberger <richard@nod.at>,
	Anton Ivanov <anton.ivanov@cambridgegreys.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
	"K. Y. Srinivasan" <kys@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Stephen Hemminger <sthemmin@microsoft.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Chris Zankel <chris@zankel.net>, Max Filippov <jcmvbkbc@gmail.com>,
	Corey Minyard <minyard@acm.org>,
	Paul Walmsley <paul.walmsley@sifive.com>,
	Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>, Dinh Nguyen <dinguyen@kernel.org>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Tony Luck <tony.luck@intel.com>, James Morse <james.morse@arm.com>,
	Robert Richter <rric@kernel.org>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Mike Leach <mike.leach@linaro.org>, Leo Yan <leo.yan@linaro.org>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Pavel Machek <pavel@ucw.cz>, Alex Elder <elder@kernel.org>,
	Jakub Kicinski <kuba@kernel.org>,
	Sebastian Reichel <sre@kernel.org>,
	Ohad Ben-Cohen <ohad@wizery.com>,
	Jens Frederich <jfrederich@gmail.com>,
	Daniel Drake <dsd@laptop.org>,
	Jon Nettleton <jon.nettleton@gmail.com>,
	Eric Biederman <ebiederm@xmission.com>,
	Josh Triplett <josh@joshtriplett.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Lai Jiangshan <jiangshanlai@gmail.com>,
	Joel Fernandes <joel@joelfernandes.org>,
	Iurii Zaikin <yzaikin@google.com>,
	Mike Rapoport <rppt@linux.ibm.com>
Subject: Re: [PATCH v2 1/1] kernel.h: Split out panic and oops helpers
Message-ID: <20210409165917.GH4332@42.do-not-panic.com>
References: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>

On Fri, Apr 09, 2021 at 01:02:50PM +0300, Andy Shevchenko wrote:
> kernel.h is being used as a dump for all kinds of stuff for a long time.
> Here is the attempt to start cleaning it up by splitting out panic and
> oops helpers.
> 
> There are several purposes of doing this:
> - dropping dependency in bug.h
> - dropping a loop by moving out panic_notifier.h
> - unload kernel.h from something which has its own domain
> 
> At the same time convert users tree-wide to use new headers, although
> for the time being include new header back to kernel.h to avoid twisted
> indirected includes for existing users.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> Acked-by: Mike Rapoport <rppt@linux.ibm.com>
> Acked-by: Corey Minyard <cminyard@mvista.com>
> Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
> Acked-by: Kees Cook <keescook@chromium.org>
> Acked-by: Wei Liu <wei.liu@kernel.org>
> Acked-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Acked-by: Luis Chamberlain <mcgrof@kernel.org>

  Luis


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 18:39:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 18:39:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107928.206250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUw2B-0008VF-UR; Fri, 09 Apr 2021 18:39:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107928.206250; Fri, 09 Apr 2021 18:39:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUw2B-0008V8-RY; Fri, 09 Apr 2021 18:39:11 +0000
Received: by outflank-mailman (input) for mailman id 107928;
 Fri, 09 Apr 2021 18:39: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 1lUw2A-0008V0-Hu; Fri, 09 Apr 2021 18:39: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 1lUw2A-0007wG-Bm; Fri, 09 Apr 2021 18:39: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 1lUw2A-0004p2-3Q; Fri, 09 Apr 2021 18:39:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUw2A-0006eA-2x; Fri, 09 Apr 2021 18:39: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=1gNlxXyzQNNcVeLssvHRkOiJU2RIHQ+uVi0a3m8Nshc=; b=GrINAPbl5n+vY8MAfZturTtTVv
	PkD1BIHxmKa5wOJ9hIfTzWtMCXWuVvNGuTrlt6MsqTN+9pXd0dzghrWIbnP7A35rigCa55BVqAtao
	xGRj31XrFFGgvqDr4tBE6rzGEcuYJEUDnhfsxFFitca6lMeMTNiuCttHl3CTYOn35xmM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160859-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 160859: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=efa7f4df0f3b9e70d49dc41b397ec8400c1ad374
X-Osstest-Versions-That:
    ovmf=19d5bccc7663399c0726aac800ddd4591be0176a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 18:39:10 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374
baseline version:
 ovmf                 19d5bccc7663399c0726aac800ddd4591be0176a

Last test of basis   160841  2021-04-09 01:14:33 Z    0 days
Testing same since   160859  2021-04-09 10:33:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Laszlo Ersek <lersek@redhat.com>
  Ray Ni <ray.ni@intel.com>
  Sheng Wei <w.sheng@intel.com>
  Sheng, W <w.sheng@intel.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   19d5bccc76..efa7f4df0f  efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 19:04:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 19:04:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107942.206277 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUwQv-0002sb-5Z; Fri, 09 Apr 2021 19:04:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107942.206277; Fri, 09 Apr 2021 19: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 1lUwQv-0002sU-2G; Fri, 09 Apr 2021 19:04:45 +0000
Received: by outflank-mailman (input) for mailman id 107942;
 Fri, 09 Apr 2021 19:04: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 1lUwQt-0002sL-H5; Fri, 09 Apr 2021 19:04: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 1lUwQt-0008Mb-6n; Fri, 09 Apr 2021 19:04: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 1lUwQs-0005jj-Mx; Fri, 09 Apr 2021 19:04:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lUwQs-0001WC-MU; Fri, 09 Apr 2021 19:04:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=BWkNtFvPO+sOhGl6kkx4Qp6qCMBa/k9ysBV8WI1wq7U=; b=pRNN1JjN6c24Q4ObeGFQHrSqtU
	8DJrFJT2M8paSrUBayPhchgRtl9AUXXm8pDfOB3+yMTsTqWB9OlJP4zzhie2rt0IVlgwB4+DCUryp
	nDk8bKI86WwXNRFbfAm0YCdabz3zE+4Pw3agxcU4dGsL3Euz+ud3Ya9E1XSD1ibcZoxI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160850-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160850: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit2:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    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-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-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check: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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-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-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl: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-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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=025eacc13f6147ffa99da5ecee4ed96e7fe8e887
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 19:04:42 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl 18 guest-start/debian.repeat fail in 160820 REGR. vs. 160646
 test-armhf-armhf-xl-vhd 17 guest-start/debian.repeat fail in 160820 REGR. vs. 160646
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 160820 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit2   8 xen-boot                   fail pass in 160820
 test-armhf-armhf-xl-vhd      13 guest-start                fail pass in 160820
 test-armhf-armhf-xl-credit1   8 xen-boot                   fail pass in 160820
 test-armhf-armhf-libvirt     18 guest-start/debian.repeat  fail pass in 160820
 test-armhf-armhf-xl           8 xen-boot                   fail pass in 160820
 test-armhf-armhf-xl-rtds      8 xen-boot                   fail pass in 160820

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160820 REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 160820 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 160820 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 160820 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160820 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 160820 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 160820 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160820 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160820 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 160820 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 160820 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160646
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  025eacc13f6147ffa99da5ecee4ed96e7fe8e887
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    8 days
Failing since        160665  2021-04-02 07:40:09 Z    7 days   11 attempts
Testing same since   160820  2021-04-08 11:10:09 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@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                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 19:59:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 19:59:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107953.206291 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUxHw-0007WK-IS; Fri, 09 Apr 2021 19:59:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107953.206291; Fri, 09 Apr 2021 19:59: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 1lUxHw-0007WD-FH; Fri, 09 Apr 2021 19:59:32 +0000
Received: by outflank-mailman (input) for mailman id 107953;
 Fri, 09 Apr 2021 19:59:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KKV7=JG=kernel.org=pr-tracker-bot@srs-us1.protection.inumbo.net>)
 id 1lUxHv-0007W8-ME
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 19:59:31 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 375dd8ed-8373-40fb-bc6b-ccbcee9ad1f4;
 Fri, 09 Apr 2021 19:59:31 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPS id 6AA3561184;
 Fri,  9 Apr 2021 19:59:30 +0000 (UTC)
Received: from pdx-korg-docbuild-2.ci.codeaurora.org (localhost.localdomain
 [127.0.0.1])
 by pdx-korg-docbuild-2.ci.codeaurora.org (Postfix) with ESMTP id 65D0360A71;
 Fri,  9 Apr 2021 19:59: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: 375dd8ed-8373-40fb-bc6b-ccbcee9ad1f4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1617998370;
	bh=sKFsK57M35vpO9M+JStoSq7YoMVlnP2N/Mbb2zUIi60=;
	h=Subject:From:In-Reply-To:References:Date:To:Cc:From;
	b=PLHgK8NmMto+ubzVHkX5OJ3HWOa7O4ro2c+FDeaRRmBk1qO7Fo7a7ejOK4wU2D880
	 AlFi5e/HXiyqbOrXtDrm/3lROSfHkMF6CqEcpZE/IHBdtcV34R490rI8WuBMqetUnG
	 llNqt8d5D4a2GpEw3Oh11oFrNdxsh8fJKQeDea//fmp33k3OyknveLowoBBaFEjGIz
	 gcWj4E2lW5ydRYp6vVd93ZEMY+ghU3y+abDsoxDp9PE8f6WD4Z2WjKyCORQ2Gx3J0w
	 lussQgNMdKC+hW9aeE/rhxeB6yLYZkI4HXo71n1/jR+xyYRF2vrsyse8Y0MynVK+EJ
	 peri3MHWOWa+A==
Subject: Re: [GIT PULL] xen: branch for v5.12-rc7
From: pr-tracker-bot@kernel.org
In-Reply-To: <20210409162704.27220-1-jgross@suse.com>
References: <20210409162704.27220-1-jgross@suse.com>
X-PR-Tracked-List-Id: <linux-kernel.vger.kernel.org>
X-PR-Tracked-Message-Id: <20210409162704.27220-1-jgross@suse.com>
X-PR-Tracked-Remote: git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-5.12b-rc7-tag
X-PR-Tracked-Commit-Id: d120198bd5ff1d41808b6914e1eb89aff937415c
X-PR-Merge-Tree: torvalds/linux.git
X-PR-Merge-Refname: refs/heads/master
X-PR-Merge-Commit-Id: 0b76088799cc8db1ea9c626e54e7bc65f605e65f
Message-Id: <161799837041.7895.1597455149852009677.pr-tracker-bot@kernel.org>
Date: Fri, 09 Apr 2021 19:59:30 +0000
To: Juergen Gross <jgross@suse.com>
Cc: torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, boris.ostrovsky@oracle.com

The pull request you sent on Fri,  9 Apr 2021 18:27:04 +0200:

> git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-5.12b-rc7-tag

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/0b76088799cc8db1ea9c626e54e7bc65f605e65f

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 21:02:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 21:02:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107964.206310 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUyGE-0005SH-C2; Fri, 09 Apr 2021 21:01:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107964.206310; Fri, 09 Apr 2021 21:01:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUyGE-0005SA-8n; Fri, 09 Apr 2021 21:01:50 +0000
Received: by outflank-mailman (input) for mailman id 107964;
 Fri, 09 Apr 2021 21:01:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c7vn=JG=oracle.com=ankur.a.arora@srs-us1.protection.inumbo.net>)
 id 1lUyGD-0005S5-5B
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 21:01:49 +0000
Received: from aserp2120.oracle.com (unknown [141.146.126.78])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3a3e4cdf-2d46-4454-bc93-0543cc396387;
 Fri, 09 Apr 2021 21:01:47 +0000 (UTC)
Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1])
 by aserp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 139L0cqM186862;
 Fri, 9 Apr 2021 21:01:46 GMT
Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70])
 by aserp2120.oracle.com with ESMTP id 37rvagjr31-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 09 Apr 2021 21:01:46 +0000
Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1])
 by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 139L1S1S032944;
 Fri, 9 Apr 2021 21:01:45 GMT
Received: from nam10-mw2-obe.outbound.protection.outlook.com
 (mail-mw2nam10lp2103.outbound.protection.outlook.com [104.47.55.103])
 by aserp3020.oracle.com with ESMTP id 37rvb720hd-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 09 Apr 2021 21:01:45 +0000
Received: from SJ0PR10MB4605.namprd10.prod.outlook.com (2603:10b6:a03:2d9::24)
 by SJ0PR10MB4575.namprd10.prod.outlook.com (2603:10b6:a03:2da::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Fri, 9 Apr
 2021 21:01:43 +0000
Received: from SJ0PR10MB4605.namprd10.prod.outlook.com
 ([fe80::a021:790:7ce6:6f16]) by SJ0PR10MB4605.namprd10.prod.outlook.com
 ([fe80::a021:790:7ce6:6f16%6]) with mapi id 15.20.4020.021; Fri, 9 Apr 2021
 21:01:43 +0000
Received: from [192.168.0.108] (70.36.60.91) by
 CO2PR18CA0055.namprd18.prod.outlook.com (2603:10b6:104:2::23) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.16 via Frontend Transport; Fri, 9 Apr 2021 21: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: 3a3e4cdf-2d46-4454-bc93-0543cc396387
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=qyBgzCKl607gL22dRsS+TP0bUPGsXo35p1F7OMhd5wE=;
 b=wQEtrWNRgDNhHKdjbD6zhHKdbsDy9k116VpSh7HqcCZfziA7yorYAumHgRgNJu+0aubb
 Wth3jVZ8soS7BU+200NaBQS8h6f5dYAxOqBBAzHuGAbTkRnp+tqY8UjasIChGm9vGbr/
 RP5CyR7Fqcfj0XlwNN9RT1GR2W6qgV0Io7CTS2/J26mowZDReGEZTG9HRKsMN1ANU44b
 71mB4NWn2i/7z3+rGPsx7ObmvexUU6LW4bZOKsQh1iVRIVDlgDmFaQDkMo5leMu2tahW
 Yhzpe6Goui0d+ahvPnw4R5ceWS0aCHxxN6ItfYP6DOg/jJFXI49/F0Ge4bq9tRg8qlvi UA== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dQL4Ok6YmdhEDVqwDTXfsUUf4Kf3bWLLQDFc4Xd59sAQqQt7AZgxBvKO6oD7EEPRAzwVTkGS1f0CV3Jze1DngCCV4H4YphQcWTTsJiRQDzeJrASkNK+wzz3nQDtI/AsGQV96VsUW5zDuIdpTUtbYFlJnXVp1EjmtXxDWsfNNY6U88aOgsQcvtgl9GFlNVyO4cNFz+hqMh9VsiQ2lL+HWEc3VsiQF7RM2OPA+VU/mtXSQl/1OUmg6QJ5E939eCqqS9mKfS1ZGGRVt3+EmAD8+J7syR7miyoVh/WRtK+XWugsbk+BEZtoTVEtE/qsnZuzhuTqIqQAn9O23zq7niHWD3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qyBgzCKl607gL22dRsS+TP0bUPGsXo35p1F7OMhd5wE=;
 b=SbtbYlnjxc8fI6PG83WTVUxdkB/ewv2MCTN5F4bLdTZQ+1FSOar0zrzxzzOqdIjLyOI9Smm61r5DFU/s16ZnGskkSwBX+F7d4kjP3O4mrp8sVrmkb/BTHkSCJmBmJTXy62aGKJaLDGABjLXVyw6lw7eRZEijaB/RHnSdHJ4OdhqUitsGOJuB9qYf5oeCnBGfalbeBqxFOOJKmHCuuHZweVTmRcUX1Ti52hufgjURIOonhgqJbNRoNCV85uBMpvTqSItXHbrcYgPSlBVlf5eoPgboFb9gdwdPCycaRs+JsvQfcDowae9bnMBeopM/x77LjHWVZdPoT/EFS7wyRl+T+g==
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=qyBgzCKl607gL22dRsS+TP0bUPGsXo35p1F7OMhd5wE=;
 b=YrM1hIxL3i3kBnnHvLb6+2ejM1a+yyVGKTOHvQB8HiMbsPEshIKGMDWVg6C8kiB8dzDjjj3+2XTuwB8U7F5O8QHzhAtq7lN4tmrjda0gBiEbNJZlky99PVhAOA9FEhMCLMIkuAC5cX1iUxYXK0tWe0/NH5K9bUMq4BiaOOYUWpU=
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=oracle.com;
Subject: Re: x86: memset() / clear_page() / page scrubbing
To: Jan Beulich <jbeulich@suse.com>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com,
        xen-devel@lists.xenproject.org
References: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
 <20210409060845.3503745-1-ankur.a.arora@oracle.com>
 <4d8202b3-ffe8-c4e7-e477-d8e7dc294c33@suse.com>
From: Ankur Arora <ankur.a.arora@oracle.com>
Message-ID: <df955d0c-b78f-641b-41f6-ed52f9e45cb7@oracle.com>
Date: Fri, 9 Apr 2021 14:01:37 -0700
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.6.0
In-Reply-To: <4d8202b3-ffe8-c4e7-e477-d8e7dc294c33@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [70.36.60.91]
X-ClientProxiedBy: CO2PR18CA0055.namprd18.prod.outlook.com
 (2603:10b6:104:2::23) To SJ0PR10MB4605.namprd10.prod.outlook.com
 (2603:10b6:a03:2d9::24)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a3069a5b-071d-40e1-47bd-08d8fb9aadd8
X-MS-TrafficTypeDiagnostic: SJ0PR10MB4575:
X-Microsoft-Antispam-PRVS: 
	<SJ0PR10MB4575617D064A4B87B545AF01CE739@SJ0PR10MB4575.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	EafBJJJRlxeV0dR6WWXODk+CVj7i9ib++RRP5o2/toQveGMdJoiGGEmrR3ZV450ZU2LHNl84bJnhEf2+Xqh/GMvQbpGXBMuDEeQriuhzPeYaf/GZUEgxZFFzkkXjPc1P6TRALOt6T9NbUCqznmuMg3S61gEgV2mDxvWgvkR6RJkU/OzPc4ov3TFb1V5D3iISW2PuhmUmBsihaSth6BNwL93A1IBvOiEC2gj82rJuAbefL1JelZhTSMMEz8GCtX0WrXtQChzhGFAUAiA6TcVgzrvcH5gc4Lyv/8KbkIlHhjrj1q1uAbdOKoB389sO0ApV1TJ6dLZAhxh48VK1x3QHbuBllZc77pJLOLfh/25cXndFtzNWar11GuvV19Da2wIAUKgkd62fi+fC+P8ePZxnhZ8S1qivzl4K6AVQtGvU5FfS5MGvR4535G1RPLSKKudU7lm5Gdj1aHpYjj+johD8bqM9Otibc6oiVss1tjHObEi+TJe5/pUPsFdtPIc9PBxe0zIJfy0JNqGkVJig+DaeoR49mEOMcyVPyKnIXP2cB9l8A9PpfJ0eUZwmfjCApa79QCpIFtqn53cW6lX6hRRcKSFO3xNqJOBCVdE3IqxVPNhmvVkyHFVi1z+je9Sg0D+ZWm3iAhOgpLd+kY5xhmZP9MH8LaXXOfohECk90zEw+m/r8gJMIS7qj5tOSHDgSGYcZgrs+2pSu7JIqvK7zHPeMw0XD5q4WxEiLV4fKCNXikc=
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR10MB4605.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(376002)(366004)(136003)(396003)(39860400002)(6666004)(186003)(5660300002)(66946007)(16526019)(83380400001)(26005)(16576012)(2906002)(6486002)(316002)(6916009)(478600001)(36756003)(86362001)(31686004)(8676002)(31696002)(956004)(2616005)(66556008)(66476007)(4326008)(8936002)(53546011)(38100700001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
 =?utf-8?Q?JPi+njjBNVwjzsg/duuqzMgLShTs3YqvdpR65nY?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a3069a5b-071d-40e1-47bd-08d8fb9aadd8
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB4605.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 21:01:43.5084
 (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: iKD6Qn4etwCCmleE1+r8VZFwX7niI+2p64JOT8tjLxhCEXuhU81OI6HbyGIczFlxjHDRRcD28Ks1zJ+ZFXKyRSXy4ZInfQF2vttgPmqgfN8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4575
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9949 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 mlxlogscore=999
 malwarescore=0 mlxscore=0 suspectscore=0 adultscore=0 spamscore=0
 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104090154
X-Proofpoint-GUID: Qupuq02DkBenjELPQ7fGiN-wEUoyiCjA
X-Proofpoint-ORIG-GUID: Qupuq02DkBenjELPQ7fGiN-wEUoyiCjA
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9949 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 mlxlogscore=999
 suspectscore=0 spamscore=0 phishscore=0 clxscore=1015 bulkscore=0
 mlxscore=0 lowpriorityscore=0 adultscore=0 malwarescore=0 impostorscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104090154

On 2021-04-08 11:38 p.m., Jan Beulich wrote:
> On 09.04.2021 08:08, Ankur Arora wrote:
>> I'm working on somewhat related optimizations on Linux (clear_page(),
>> going in the opposite direction, from REP STOSB to MOVNT) and have
>> some comments/questions below.
> 
> Interesting.
> 
>> On 4/8/2021 6:58 AM, Jan Beulich wrote:
>>> All,
>>>
>>> since over the years we've been repeatedly talking of changing the
>>> implementation of these fundamental functions, I've taken some time
>>> to do some measurements (just for possible clear_page() alternatives
>>> to keep things manageable). I'm not sure I want to spend as much time
>>> subsequently on memcpy() / copy_page() (or more, because there are
>>> yet more combinations of arguments to consider), so for the moment I
>>> think the route we're going to pick here is going to more or less
>>> also apply to those.
>>>
>>> The present copy_page() is the way it is because of the desire to
>>> avoid disturbing the cache. The effect of REP STOS on the L1 cache
>>> (compared to the present use of MOVNTI) is more or less noticable on
>>> all hardware, and at least on Intel hardware more noticable when the
>>> cache starts out clean. For L2 the results are more mixed when
>>> comparing cache-clean and cache-filled cases, but the difference
>>> between MOVNTI and REP STOS remains or (at least on Zen2 and older
>>> Intel hardware) becomes more prominent.
>>
>> Could you give me any pointers on the cache-effects on this? This
>> obviously makes sense but I couldn't come up with any benchmarks
>> which would show this in a straight-forward fashion.
> 
> No benchmarks in that sense, but a local debugging patch measuring
> things before bringing up APs, to have a reasonably predictable
> environment. I have attached it for your reference.

Thanks, that does look like a pretty good predictable test.
(Btw, there might be an oversight in the clear_page_clzero() logic.
I believe that also needs an sfence.)

Just curious: you had commented out the local irq disable/enable clauses.
Is that because you decided that it the code ran at an early enough
point that they were not required or some other reason?

> 
>>> Otoh REP STOS, as was to be expected, in most cases has meaningfully
>>> lower latency than MOVNTI.
>>>
>>> Because I was curious I also included AVX (32-byte stores), AVX512
>>> (64-byte stores), and AMD's CLZERO in my testing. While AVX is a
>>> clear win except on the vendors' first generations implementing it
>>> (but I've left out any playing with CR0.TS, which is what I expect
>>> would take this out as an option), AVX512 isn't on Skylake (perhaps
>>> newer hardware does better). CLZERO has slightly higher impact on
>>> L1 than MOVNTI, but lower than REP STOS.
>>
>> Could you elaborate on what kind of difference in L1 impact you are
>> talking about? Evacuation of cachelines?
> 
> Replacement of ones, yes. As you may see from that patch, I prefill
> the cache, do the clearing, and then measure how much longer the
> same operation takes that was used for prefilling. If the clearing
> left the cache completely alone (or if the hw prefetcher was really
> good), there would be no difference.

Yeah, that does sound like a good way to get an idea of how much the
clear_page_x() does perturb the cache.

> 
>>> Its latency is between
>>> both when the caches are warm, and better than both when the caches
>>> are cold.
>>>
>>> Therefore I think that we want to distinguish page clearing (where
>>> we care about latency) from (background) page scrubbing (where I
>>> think the goal ought to be to avoid disturbing the caches). That
>>> would make it
>>> - REP STOS{L,Q} for clear_page() (perhaps also to be used for
>>>    synchronous scrubbing),
>>> - MOVNTI for scrub_page() (when done from idle context), unless
>>>    CLZERO is available.
>>> Whether in addition we should take into consideration activity of
>>> other (logical) CPUs sharing caches I don't know - this feels like
>>> it could get complex pretty quickly.
>>
>> The one other case might be for ~L3 (or larger) regions. In my tests,
>> MOVNT/CLZERO is almost always better (the one exception being Skylake)
>> wrt both cache and latency for larger extents.
> 
> Good to know - will keep this in mind.
> 
>> In the particular cases I was looking at (mmap+MAP_POPULATE and
>> page-fault path), that makes the choice of always using MOVNT/CLZERO
>> easy for GB pages, but fuzzier for 2MB pages.
>>
>> Not sure if the large-page case is interesting for you though.
> 
> Well, we never fill large pages in one go, yet the scrubbing may
> touch many individual pages in close succession. But for the
> (background) scrubbing my recommendation is to use MOVNT/CLZERO
> anyway, irrespective of volume. While upon large page allocations
> we may also end up scrubbing many pages in close succession, I'm
> not sure that's worth optimizing for - we at least hope for the
> pages to have got scrubbed in the background before they get
> re-used. Plus we don't (currently) know up front how many of them
> may still need scrubbing; this isn't difficult to at least
> estimate, but may require yet another loop over the constituent
> pages.

Agreed MOVNT/CLZERO do seem ideally suited for background scrubbing.
Alas, AFAICS Linux currently only does foreground cleaning. The
only reason for I can think of for that "decision" is maybe that
there one trusted user with a significant footprint -- the page
cache -- where pages can be allocate without needing to clear.

That said, given that background scrubbing is a fairly cheap way of
time-shifting work to idle without negatively affecting the cache
it does make sense to move towards it for at least a subset of pages.

The only potential negative could be higher power consumption
because idle is spending less time in C-states. That said, that
also seems like a wash given that this only shifts when we do
the clearing.
Would you have any intuition on, if the power consumption of
the non-temporal primitives is meaningfully different from
REP STOS and friends?

Ankur

> 
> Jan
> 


From xen-devel-bounces@lists.xenproject.org Fri Apr 09 21:43:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 21:43:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107977.206331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUyuO-0000rj-On; Fri, 09 Apr 2021 21:43:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107977.206331; Fri, 09 Apr 2021 21:43: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 1lUyuO-0000rc-K5; Fri, 09 Apr 2021 21:43:20 +0000
Received: by outflank-mailman (input) for mailman id 107977;
 Fri, 09 Apr 2021 21:43:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vRME=JG=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lUyuM-0000rX-EB
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 21:43:18 +0000
Received: from userp2120.oracle.com (unknown [156.151.31.85])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e18bbfa1-f682-4200-8abb-947e1aeab59e;
 Fri, 09 Apr 2021 21:43:17 +0000 (UTC)
Received: from pps.filterd (userp2120.oracle.com [127.0.0.1])
 by userp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 139LVFhj138143;
 Fri, 9 Apr 2021 21:43:16 GMT
Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79])
 by userp2120.oracle.com with ESMTP id 37rvasat2n-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 09 Apr 2021 21:43:16 +0000
Received: from pps.filterd (userp3020.oracle.com [127.0.0.1])
 by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 139LVEOt192371;
 Fri, 9 Apr 2021 21:43:15 GMT
Received: from nam10-dm6-obe.outbound.protection.outlook.com
 (mail-dm6nam10lp2108.outbound.protection.outlook.com [104.47.58.108])
 by userp3020.oracle.com with ESMTP id 37rvb31wtc-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 09 Apr 2021 21:43:15 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by SJ0PR10MB4752.namprd10.prod.outlook.com (2603:10b6:a03:2d7::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Fri, 9 Apr
 2021 21:43:13 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::f489:4e25:63e0:c721]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::f489:4e25:63e0:c721%7]) with mapi id 15.20.3999.035; Fri, 9 Apr 2021
 21:43:13 +0000
Received: from [10.74.96.191] (138.3.201.63) by
 SJ0PR13CA0035.namprd13.prod.outlook.com (2603:10b6:a03:2c2::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.6 via Frontend
 Transport; Fri, 9 Apr 2021 21:43: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: e18bbfa1-f682-4200-8abb-947e1aeab59e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=fAT3JuzA/AGYbhQRQxDvrS7UJL7GIl9dCzvUvrlu6WA=;
 b=RCpCsnDTbwn83WNzsAuSccmh0Ijehtw9AnHxmGVDdWtI7pnOiHBhCabjLbJ1cMS01A4o
 FIuVW3h/+SKsa3Y+Outykq/KXESKYVizlbWeeeV6ME/8KAa+KM6d2Q2L6WuovlghemFL
 wGngSPxGRrNk3CTvjtMZ8t9idp8wtwB1l8raABrZU0vKQ1W/cUBcZhJhpiTOHirEBD7n
 XMTkgHkwdn7sDZ/8YCYI8BgeblGnRaCyVyHwo2Nz6YVhHtxVTns6P+myvdHXwtKYgr0D
 TczEuVTLTBPgLrN1JlmdAZjIQpXtjR3MU8XwNTgk5d113MFthD4Ml1GOC0xba6HcKgCu gw== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JIdNtysWt0DKwI3FoS7daUt0OrxjtMzpyHhSQ9Fg6XG30qZCwAjQV2GJJao+VV9+DiiZIrLD9eTupSjw7X0xMlq7PfgcJBoHim3CguaqNH5R1X7I3/Eiv392eO+k/Hh3CYN8BtIUut0oesoZyqPq1t6zjMfVzQKxVdLCEfleaItAHcTumoDGrGLL8TMAP8uor/CZIjQshXgBThnh8DOxgLhsZiAwBgsSsjWwXZqWdlZDTgGLDXe2efMeOw47oXDoGPlO6w66e7Fzza1AGlhpj9v+gTQLluHJ5/nT9AzD9BjJbyiA2FJScWoHmsxWkUm/myogVCAXjf713CothLIAMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fAT3JuzA/AGYbhQRQxDvrS7UJL7GIl9dCzvUvrlu6WA=;
 b=Tec0vSwj32qj5axaUZsRIBX3u8BtzSULS1kXHXR9j5r29UjcQ1nTXTzbbo0phfYcKoNIhIdQmZqggBnlUbNz4gyF4tRxpNUffrzTnhTNyt6AvvD4N+t5yP2T57SSfhA6barhy+3ronYOd4yXO7TIOhBqAR+wVvp3fkt3srYoZrgbCjR35c1/oikQihD9V4IDez2guxUHVGdKoZCparX1qykwoI9bMRcVuwVFdkGTBHcxP6OBz7Lt7ddon34Ri5wC8LMnl+AVRAnK6OB6HNzaS+N97S435HN3UhsDqbHxBBjcW2Smq1RtnA4PupMboldYtHeUTkxmin/NuKDR/PKVig==
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=fAT3JuzA/AGYbhQRQxDvrS7UJL7GIl9dCzvUvrlu6WA=;
 b=x5VQWlnjCtav+zicFIV4zVf25b4qezgmLrvEc/zCxOXMPcBWIPtA7d6hjqEGZoZJGHvvzI0SGuHqOiH2yu9KsquoJ/Sb7BYye8tZoYpYT6rFqV5UhreLNPw+DenE11gyi+gkcapELoIAfKSyvZgJdUswUb3wSaWCP05EJ1/KtbI=
Subject: Re: [PATCH 2/3] xen-pciback: reconfigure also from backend watch
 handler
To: Jan Beulich <jbeulich@suse.com>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <74955b48-80b1-3436-06b4-d8569260aa65@suse.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Message-ID: <a93c66e5-807b-e557-d437-48d7f46f25f7@oracle.com>
Date: Fri, 9 Apr 2021 17:43:09 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
In-Reply-To: <74955b48-80b1-3436-06b4-d8569260aa65@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Originating-IP: [138.3.201.63]
X-ClientProxiedBy: SJ0PR13CA0035.namprd13.prod.outlook.com
 (2603:10b6:a03:2c2::10) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8869df79-f58a-438e-0591-08d8fba07a23
X-MS-TrafficTypeDiagnostic: SJ0PR10MB4752:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: 
	<SJ0PR10MB47525C97FF185BF6AF06166F8A739@SJ0PR10MB4752.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	pWnFYC0TVfa3BxeW6/aLWhNhm0JcyHtkJVv4eRNBgi8dzeouvTQG/XJk8IyQ3/WcoG5VeSE42MGkzAhrhq8GOwCD18THRqkKObAnd/eeLJTOzhuJcvAgnpMlC9QYbWmhgURk0rQuFFs9JRze1YGl3QJg4nznwkRUUvY5xKfeRvovd1dMkDjFKOXO4a3b8kpZYxLMydRBWcFPby4v9CpThmApKXXRAfeAMWtNn+mD3yTxei9UkxRLJGXfoxMsSWTjdz72PNBNO1CjsNsBtiqaf5S/c+8PqiymOlH2RrDfUL4rjjeHyLGRdjoDHcwkQFs57TK4Kh2N95T+j0TELBgYmduoayxp+ch6DFD53z9Ktc6XP3C7ns1mjAWZTPDfGcsy2Fk5PSzCOLaVCWiyv7ALAyt9ivckeLrG/yjVJMOHtCVlnHbwoODxF8VF+LQhViDSbUb+EYhH20MgMlG/hsUlDsGAi6aVK2PP8uNZkadgwpK8wt/XRFLfF+dtyF9Z+r9YfKJbQEuiCKp21r1+rKmFhuWS0Rs47kXVtdX22rZLOFlrzigmRfh69XHxbWMVxMFjAXvlSnYvcnzWwfGZ1XKcXZOXIdoBgslOqzRSmZfy7KakRmn4z9IsoWNoPYYf6BbO67ZSCPzkE94WPzz1XL4KOKf4z6f+SxNWrwPIhJeoqev5yMwqLBvvXco1QqNZVGovUI3oEBIqK0mL2ojaVItV7u+3eSt/UhR4EzRRYKvVN9E=
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(136003)(366004)(346002)(39860400002)(376002)(396003)(6486002)(478600001)(83380400001)(2906002)(31686004)(316002)(54906003)(86362001)(2616005)(110136005)(956004)(31696002)(26005)(16526019)(4326008)(38100700001)(44832011)(5660300002)(36756003)(53546011)(107886003)(66476007)(66556008)(6666004)(8676002)(186003)(16576012)(8936002)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8869df79-f58a-438e-0591-08d8fba07a23
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 21:43:13.8178
 (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: bLwh3M33lvPKboVQW9v91JqhzCO8fqNslDGPXhqA9KPXhEV9oTSBgGLpH/oR2qp2aAAzQKO6/FK0AMKHGEkWIyeBoHX236O3LuJaiI/mGLY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4752
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9949 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 adultscore=0 bulkscore=0
 mlxlogscore=999 suspectscore=0 spamscore=0 phishscore=0 mlxscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104090157
X-Proofpoint-GUID: 6NMF0jPwqHBjhOmi9rZaoBju5Vb8BoJa
X-Proofpoint-ORIG-GUID: 6NMF0jPwqHBjhOmi9rZaoBju5Vb8BoJa
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9949 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 lowpriorityscore=0 adultscore=0
 priorityscore=1501 malwarescore=0 mlxlogscore=999 clxscore=1015
 bulkscore=0 mlxscore=0 phishscore=0 spamscore=0 suspectscore=0
 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104090157


On 4/7/21 10:37 AM, Jan Beulich wrote:
> When multiple PCI devices get assigned to a guest right at boot, libxl
> incrementally populates the backend tree. The writes for the first of
> the devices trigger the backend watch. In turn xen_pcibk_setup_backend()
> will set the XenBus state to Initialised, at which point no further
> reconfigures would happen unless a device got hotplugged. Arrange for
> reconfigure to also get triggered from the backend watch handler.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Cc: stable@vger.kernel.org
> ---
> I will admit that this isn't entirely race-free (with the guest actually
> attaching in parallel), but from the looks of it such a race ought to be
> benign (not the least thanks to the mutex). Ideally the tool stack
> wouldn't write num_devs until all devices had their information
> populated. I tried doing so in libxl, but xen_pcibk_setup_backend()
> calling xenbus_dev_fatal() when not being able to read that node
> prohibits such an approach (or else libxl and driver changes would need
> to go into use in lock-step).
>
> I wonder why what is being watched isn't just the num_devs node. Right
> now the watch triggers quite frequently without anything relevant
> actually having changed (I suppose in at least some cases in response
> to writes by the backend itself).
>
> --- a/drivers/xen/xen-pciback/xenbus.c
> +++ b/drivers/xen/xen-pciback/xenbus.c
> @@ -359,7 +359,8 @@ out:
>  	return err;
>  }
>  
> -static int xen_pcibk_reconfigure(struct xen_pcibk_device *pdev)
> +static int xen_pcibk_reconfigure(struct xen_pcibk_device *pdev,
> +				 enum xenbus_state state)
>  {
>  	int err = 0;
>  	int num_devs;
> @@ -374,8 +375,7 @@ static int xen_pcibk_reconfigure(struct
>  
>  	mutex_lock(&pdev->dev_lock);
>  	/* Make sure we only reconfigure once */


Is this comment still valid or should it be moved ...


> -	if (xenbus_read_driver_state(pdev->xdev->nodename) !=
> -	    XenbusStateReconfiguring)
> +	if (xenbus_read_driver_state(pdev->xdev->nodename) != state)
>  		goto out;
>  
>  	err = xenbus_scanf(XBT_NIL, pdev->xdev->nodename, "num_devs", "%d",
> @@ -500,6 +500,9 @@ static int xen_pcibk_reconfigure(struct
>  		}
>  	}
>  
> +	if (state != XenbusStateReconfiguring)
> +		goto out;
> +


... here?


>  	err = xenbus_switch_state(pdev->xdev, XenbusStateReconfigured);
>  	if (err) {
>  		xenbus_dev_fatal(pdev->xdev, err,
> @@ -525,7 +528,7 @@ static void xen_pcibk_frontend_changed(s
>  		break;
>  
>  	case XenbusStateReconfiguring:
> -		xen_pcibk_reconfigure(pdev);
> +		xen_pcibk_reconfigure(pdev, XenbusStateReconfiguring);
>  		break;
>  
>  	case XenbusStateConnected:
> @@ -664,6 +667,10 @@ static void xen_pcibk_be_watch(struct xe
>  		xen_pcibk_setup_backend(pdev);
>  		break;
>  
> +	case XenbusStateInitialised:
> +		xen_pcibk_reconfigure(pdev, XenbusStateInitialised);


Could you add a comment here that this is needed when multiple devices are added?


It also looks a bit odd that adding a device is now viewed as a reconfiguration. It seems to me that xen_pcibk_setup_backend() and xen_pcibk_reconfigure() really should be merged --- initialization code for both looks pretty much the same.


-boris



From xen-devel-bounces@lists.xenproject.org Fri Apr 09 21:45:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 21:45:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107983.206342 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUywh-00011j-9c; Fri, 09 Apr 2021 21:45:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107983.206342; Fri, 09 Apr 2021 21:45:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lUywh-00011c-6g; Fri, 09 Apr 2021 21:45:43 +0000
Received: by outflank-mailman (input) for mailman id 107983;
 Fri, 09 Apr 2021 21:45:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vRME=JG=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lUywg-00011X-HT
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 21:45:42 +0000
Received: from aserp2130.oracle.com (unknown [141.146.126.79])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ac609464-afdd-47fe-9c77-60c5a5bda2b7;
 Fri, 09 Apr 2021 21:45:41 +0000 (UTC)
Received: from pps.filterd (aserp2130.oracle.com [127.0.0.1])
 by aserp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 139LVwbn096277;
 Fri, 9 Apr 2021 21:45:40 GMT
Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80])
 by aserp2130.oracle.com with ESMTP id 37rvawat94-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 09 Apr 2021 21:45:40 +0000
Received: from pps.filterd (userp3030.oracle.com [127.0.0.1])
 by userp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 139LU99K005383;
 Fri, 9 Apr 2021 21:45:39 GMT
Received: from nam11-co1-obe.outbound.protection.outlook.com
 (mail-co1nam11lp2169.outbound.protection.outlook.com [104.47.56.169])
 by userp3030.oracle.com with ESMTP id 37rvbhh7jv-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 09 Apr 2021 21:45:39 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by SJ0PR10MB4782.namprd10.prod.outlook.com (2603:10b6:a03:2dc::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.20; Fri, 9 Apr
 2021 21:45:37 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::f489:4e25:63e0:c721]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::f489:4e25:63e0:c721%7]) with mapi id 15.20.3999.035; Fri, 9 Apr 2021
 21:45:37 +0000
Received: from [10.74.96.191] (138.3.201.63) by
 SA9PR13CA0135.namprd13.prod.outlook.com (2603:10b6:806:27::20) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.6 via Frontend Transport; Fri, 9 Apr 2021 21: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: ac609464-afdd-47fe-9c77-60c5a5bda2b7
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=Iqx9bxYvrKKNV6xJKE4/+ieCwFlSVLWcJGc+Sc/7Tps=;
 b=PiK0q1v1tabvrZB78liuob3R6F9msmvMZu2VD/By4RzieS85DebHoajJDSZNuL9x089w
 MY/BLeYsB6hTb2LPtKoTXt9dt6x35ApzM/nMpR484FsGxBZMBJoGc/dxSC16MUsFNPGa
 NtfRxUGVYHzYJ+rMrleJTwJvWb7HvAQTe4KKXlJfUIoRiea6NrSaNpXN4zYeln74pyi6
 qt8+Rhyl2Sz8sS6ppU29u9C4d9NiSMcIVaj+Atp4e/Vx1FPMGwS9c9bf8DuexAofvwT0
 p9VpOKi9hFcxT3ZUtwM2Lc0ZBC+0xdqNCW3PzCQgy+0pHij43DEEE1uXt2qAFMTYXojG 7g== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WVJXYg+sqXgXKfQN1YF6UffheiFOZsqU3kq9pk5UkRPj1lpvlfovMxm3nWW4271BLBSw1IpOxNd0Ip2czYgRYszU75DSSpXA7JvAlph7aVthVA5EATUsL93H09rpz1LU4mBdnU18FyeFBomSp6y12TcWmX7zFFJcri2vJKeqn2GQBNslFOC3lxGACnXlNkWtOwN38xMXrLhlas7iyBUHeLFJlNqR+fUucRv2nWb5VgTJN+sF0Vyn+N8ZWq7wFoa+O677MK9vZqcLkMfqHu1WDJrPbnhiN6DXHxTKWXjSvcpSd9RYleVNC6f59QZ1iDgznxMPr28fOIuQSBIRgxpqtQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Iqx9bxYvrKKNV6xJKE4/+ieCwFlSVLWcJGc+Sc/7Tps=;
 b=O9/CnfsdgpB8xxooLIrV+buqEgHrXSlAley7vilbpZdrsqJ2tL+5CvN/X8KCbbu4tq4g6pdu4S+va3Gv/eXNDoR3zueaQWHBEogp+WPOGlDc9XaaRpNVlyIflGkM2MscvcgNnPSJYFX1xRGoxxcy8yr7R/LVBgTXP/3UGAVlhon6fV2DUAv6v9qD0LpWtxrxk4WW1CHRD//MZAEv/dTQspDYeb6P9uzk9ggn7daGr8Z/AzkEmk9MM/IVm1bfVoHHwV7OpZtjQrPJXPl+hUZK2bPD+QwMEspoJCZiIRxagDVdxL43AuzHmVjZncLMqCquQfRtWK7ZVVfaR0W3rlu42g==
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=Iqx9bxYvrKKNV6xJKE4/+ieCwFlSVLWcJGc+Sc/7Tps=;
 b=gNmIpLBdDygWBtRYrCOGB88AOdw2VFgOJTGBVw7GFN8bBPYI8iwgsrj/HnO5vOoJbBdbYC06j1KCLfMTcoEw4DtP82YTd6PyR6CcszqTNeppZTsuyi2sbaRHC9tJ6hTfJ3G9TJSuOQmPxtAN9uGeNn6NGOFWdgXv9Jyf0qLkWTA=
Subject: Re: [PATCH 3/3] xen-pciback: simplify vpci's find hook
To: Jan Beulich <jbeulich@suse.com>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Message-ID: <e9f358bc-e957-e039-235c-6a9f68328554@oracle.com>
Date: Fri, 9 Apr 2021 17:45:33 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
In-Reply-To: <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Originating-IP: [138.3.201.63]
X-ClientProxiedBy: SA9PR13CA0135.namprd13.prod.outlook.com
 (2603:10b6:806:27::20) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: eddf57b9-9efb-494c-a6ea-08d8fba0cfc8
X-MS-TrafficTypeDiagnostic: SJ0PR10MB4782:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: 
	<SJ0PR10MB4782AAF5FD1F14BE8475AE268A739@SJ0PR10MB4782.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:1923;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	k9U8ivp7EuQWbj56QiQU/V4yWSN0adREYhVVM3Rn8wk87LFcSPgAQ0Ce9jxkLMMfaSFracz2txe+IR2rwxRn9fFiqtOPqU/IKtPD+gr4aS2HO4knjvh98NUl3CUS5wgwGIhpXJBrqKsd1gLdXKCZHLMYeRIlZfK2gyb230dMmi4KU38kWQ36PyJgR82a2aUGiN2zTtjw6/hLZfWWXueNeWlE0AAQSzE7H1Bq6rHZiq+GkKEbAAu3aH3Csfe30GOvCzdKdF5RsG99+AUwUSRxHPWrOc38Ex3xrEGq2hKmi10+Z5Vu+8QXYdb3OSNWgO1/hkuvt0j64si7GVa+JfIhqyD8Ojg4IB+IF9Hgc/eN7d7fnuqLWSiLWVPc0rmVJm2hJdWy69pZ9W7lwMyV2aDl466g5R5LeHzIRCIp6FuxlJ+CHLuVlMCGSs61tbXAN7el3oSYuTfYpw3aUAoJ4HVCCP70i/oU1VtLpdBn9kUkpbIVEPUNYIb187TxUGSqFMe0zEVNAJc4yvzeuruHtTrYLtba3Xp/11IvGHwPtcoLxGxET56fBPCqjHaoZudY9ocECASQvLbFHgcHgGmv8el0ULQUsk9pzGazoVTiJrcUBQJ4Tw+S/5RmsxFhfacyHAQm9e+NS6+7FyCm4I+4kD20biOVvSE4Gj7rMaSkyB8TO/WPlIXJ2QGzIj6XVuA8I+IBdh2eNXIyF4qx8d65aiKnxXTJz2wQvNyRNEMIoFwztw8=
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(39860400002)(346002)(366004)(396003)(136003)(26005)(8936002)(16526019)(16576012)(66946007)(186003)(8676002)(54906003)(107886003)(2616005)(956004)(2906002)(4326008)(36756003)(6666004)(316002)(478600001)(86362001)(31696002)(4744005)(5660300002)(66476007)(31686004)(66556008)(53546011)(44832011)(110136005)(38100700001)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: eddf57b9-9efb-494c-a6ea-08d8fba0cfc8
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 21:45:37.4236
 (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: U00qX3jz+p/FKRDPI9pNNLfk3iD61sWEaWNkyOXedDNsXBAzkNx5os+SdfwNwx27895HqbG9HRNWfcFWIboylze+Kuv0MZC2Hz9ExLMAuBc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4782
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9949 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 bulkscore=0
 suspectscore=0 phishscore=0 malwarescore=0 mlxscore=0 spamscore=0
 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104090157
X-Proofpoint-ORIG-GUID: KCSW-CiNeRI83mGjHM3UQvQFKUQauU38
X-Proofpoint-GUID: KCSW-CiNeRI83mGjHM3UQvQFKUQauU38
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9949 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 lowpriorityscore=0 priorityscore=1501
 suspectscore=0 phishscore=0 mlxlogscore=999 spamscore=0 malwarescore=0
 mlxscore=0 bulkscore=0 impostorscore=0 adultscore=0 clxscore=1015
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104090157


On 4/7/21 10:37 AM, Jan Beulich wrote:
> There's no point in comparing SBDF - we can simply compare the struct
> pci_dev pointers. If they weren't the same for a given device, we'd have
> bigger problems from having stored a stale pointer.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>


Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>




From xen-devel-bounces@lists.xenproject.org Fri Apr 09 23:29:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 09 Apr 2021 23:29:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107998.206363 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lV0Yy-0001g2-1F; Fri, 09 Apr 2021 23:29:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107998.206363; Fri, 09 Apr 2021 23: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 1lV0Yx-0001fv-UV; Fri, 09 Apr 2021 23:29:19 +0000
Received: by outflank-mailman (input) for mailman id 107998;
 Fri, 09 Apr 2021 23:29: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 1lV0Yw-0001fn-0C; Fri, 09 Apr 2021 23:29: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 1lV0Yv-0004gz-Me; Fri, 09 Apr 2021 23:29: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 1lV0Yv-00032M-Ek; Fri, 09 Apr 2021 23:29:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lV0Yv-0002UW-Bo; Fri, 09 Apr 2021 23: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=AEsQy2KT5jX7tw4qN45Q/bYWKSMjVUGapoKSIwYmTN0=; b=EtWtSWhhg2PZABGNadTc8LEeOZ
	EE7Tt5me+Cg+UjWVuTd0HEZZuTW9a1zzldbLX49y34u1r6mthPf69eT6flzweZ1MmoCD812iDVaST
	NCsR4tbnyJE+tuQNSQALVHrVpi1tV6MAcA1inVc/5cudtPeLO68M84K9tetp+YTF2T3M=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160851-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160851: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=d8724020dd13c88a72fc391a6a2cf63abbd3dcca
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 09 Apr 2021 23:29:17 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                d8724020dd13c88a72fc391a6a2cf63abbd3dcca
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  232 days
Failing since        152659  2020-08-21 14:07:39 Z  231 days  433 attempts
Testing same since   160851  2021-04-09 07:51:02 Z    0 days    1 attempts

------------------------------------------------------------
475 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 141227 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 00:28:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 00:28:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108012.206384 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lV1Tj-0007kl-Fg; Sat, 10 Apr 2021 00:27:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108012.206384; Sat, 10 Apr 2021 00:27: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 1lV1Tj-0007ke-Co; Sat, 10 Apr 2021 00:27:59 +0000
Received: by outflank-mailman (input) for mailman id 108012;
 Sat, 10 Apr 2021 00:27:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fSxs=JH=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lV1Ti-0007kZ-MC
 for xen-devel@lists.xenproject.org; Sat, 10 Apr 2021 00:27:58 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 59c4f9ca-6b6a-4a20-bcb3-8211dbdc0170;
 Sat, 10 Apr 2021 00:27:57 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 0CE1B600D4;
 Sat, 10 Apr 2021 00:27:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 59c4f9ca-6b6a-4a20-bcb3-8211dbdc0170
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618014477;
	bh=mksoIbwS4pfQYKXzWjcVtcZIWgi8Idw19YRPLIwImNM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ijbGXm3hfyZYHHpg7MUZuCfOfYNfvzsoEkXyD+LV0VOxfb0x/wUJ0iVvrNP6Dk3Tj
	 dr09uiETYmPeTY5jqZyFw0aiDTl30B0LXzcfoZDHGEq2a/jTgleG/EMwoD4zKT88Oz
	 eL7sfIHBPgnNiYOKIFFNl1anbqXJQPAy8DzGqwSRAUptPPxXpSCWtN2gAZp0lh5aVu
	 7CdhVZDrYZOdMR175rNv6xXFcVB7Bn4JS833bcqtPpEG8uH0xpkwZimdhfmslD1kAg
	 ErxFjl7bdKZUe4GfBnbYUEv8rWomQylXsJaMpHe6x3lZy1ySW3cHNwEufMqfrVwibw
	 zlo8yOhOBN1jQ==
Date: Fri, 9 Apr 2021 17:27:56 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Stefano Stabellini <sstabellini@kernel.org>
cc: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>, 
    Bertrand.Marquis@arm.com, Volodymyr_Babchuk@epam.com, rahul.singh@arm.com, 
    brian.woods@xilinx.com
Subject: Re: [PATCH v3 0/3] Generic SMMU Bindings
In-Reply-To: <alpine.DEB.2.21.2104061606080.31460@sstabellini-ThinkPad-T480s>
Message-ID: <alpine.DEB.2.21.2104091714270.4885@sstabellini-ThinkPad-T480s>
References: <alpine.DEB.2.21.2101261435550.2568@sstabellini-ThinkPad-T480s> <80de3eb5-b338-af4e-42eb-d358f51d0bd7@xen.org> <alpine.DEB.2.21.2104061606080.31460@sstabellini-ThinkPad-T480s>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 6 Apr 2021, Stefano Stabellini wrote:
> On Mon, 5 Apr 2021, Julien Grall wrote:
> > On 26/01/2021 22:58, Stefano Stabellini wrote:
> > > Hi all,
> > 
> > Hi Stefano,
> > 
> > > This series introduces support for the generic SMMU bindings to
> > > xen/drivers/passthrough/arm/smmu.c.
> > > 
> > > The last version of the series was
> > > https://marc.info/?l=xen-devel&m=159539053406643
> > Some changes in the SMMU drivers went in recently. I believe this touched
> > similar area to this series. Would you be able to check that this series still
> > work as intented?
> 
> Thanks for the heads up, no, unfortunately they don't work :-(
> 
> They badly clash. I did the forward port of the three patches but they
> fail at runtime in my tests. I ran out of time to figure out what is the
> problem, and I'll have to pick it up at some point in the future (it
> might not be any time soon unfortunately).
> 
> Rahul, if you have any ideas about what the problem is please let me
> know. This is the branch with the forward port:
> 
> http://xenbits.xenproject.org/git-http/people/sstabellini/xen-unstable.git smmu-generic

I did some more investigation and spotted a minor error in my forward
port. This an updated branch based on staging:

http://xenbits.xenproject.org/git-http/people/sstabellini/xen-unstable.git smmu-generic-2

However, the real issue is that Rahul's patches break SMMU support on
ZynqMP even without my changes. I ran a bisection and found out that
patch #2 is the culprit:

5ee3fa0b21ea xen/arm: smmuv1: Consolidate stream map entry state

It causes the abort appended below. The problem doesn't seem
particularly ZynqMP specific. Rahul, can you reproduce it on your side?



(XEN) smmu: /amba/smmu@fd800000: d0: p2maddr 0x000000087bfa2000
(XEN) Data Abort Trap. Syndrome=0x5
(XEN) Walking Hypervisor VA 0x114ebfff8 on CPU0 via TTBR 0x0000000000f38000
(XEN) 0TH[0x0] = 0x0000000000f3bf7f
(XEN) 1ST[0x4] = 0x0000000000000000
(XEN) CPU0: Unexpected Trap: Data Abort
(XEN) ----[ Xen-4.14.0  arm64  debug=y   Not tainted ]----
(XEN) CPU:    0
(XEN) PC:     000000000024a77c smmu.c#find_smmu_master+0x8/0x3c
(XEN) LR:     000000000024a8a4
(XEN) SP:     00000000002ff1f0
(XEN) CPSR:   80000249 MODE:64-bit EL2h (Hypervisor, handler)
(XEN)      X0: 0000000114ec0000  X1: 00008000fbfc7478  X2: 00008000fbfc71e0
(XEN)      X3: 00000000002af840  X4: 0000000000000000  X5: 0000000000000001
(XEN)      X6: 0000000000000000  X7: 0000000000000000  X8: 00008000fbf8b9e0
(XEN)      X9: 0000000000000004 X10: 0101010101010101 X11: 0000000000000020
(XEN)     X12: 0000000000000018 X13: ff00000000000000 X14: 0400000084000000
(XEN)     X15: 0000000000000000 X16: 00000000002b1000 X17: 00000000002b1000
(XEN)     X18: 00000000002b2000 X19: 00008000fbffcb70 X20: 00000000002af848
(XEN)     X21: 00008000fbfc7478 X22: 00008000fbfc74d8 X23: 00008000fbfc7508
(XEN)     X24: 0000000000000000 X25: 0000000000000001 X26: 00008000fbfa7c20
(XEN)     X27: 0000000000000000 X28: 0000000000000000  FP: 00000000002ff1f0
(XEN) 
(XEN)   VTCR_EL2: 80023558
(XEN)  VTTBR_EL2: 000000087bf54000
(XEN) 
(XEN)  SCTLR_EL2: 30cd183d
(XEN)    HCR_EL2: 000000000000003a
(XEN)  TTBR0_EL2: 0000000000f38000
(XEN) 
(XEN)    ESR_EL2: 96000005
(XEN)  HPFAR_EL2: 0000000000220000
(XEN)    FAR_EL2: 0000000114ebfff8
(XEN) 
(XEN) Xen stack trace from sp=00000000002ff1f0:
(XEN)    00000000002ff220 000000000024ae80 00008000fbfa5000 00008000fbfc74e8
(XEN)    00008000fbfa5000 0000000800000001 00000000002ff2a0 000000000024c6e8
(XEN)    00008000fbfa5000 00000000fffffff0 00008000fbfc7478 00008000fbfc74d8
(XEN)    00008000fbfc7508 0000000000000000 0000000000000001 0000000000000001
(XEN)    0000000000000000 0000000000000000 00000000002ff2a0 000000000024c6b8
(XEN)    00008000fbfa5000 00000000002ff550 00000000002ff2d0 00000000002c6274
(XEN)    00008000fbfc7478 00000000002ff550 00008000fbfa5000 0000000000000005
(XEN)    00000000002ff390 00000000002c6704 00008000fbfc3ce8 00000000002ff550
(XEN)    00008000fbfa5000 0000000000000005 00008000fbfc7478 0000000000000000
(XEN)    00008000fbff1100 0000000000000000 0000000000000000 0000000000000000
(XEN)    00000000002d28e8 00000000fbf78090 00000000002d28d8 00000000002d1b80
(XEN)    00000000002ff380 00000000ff0b0000 00008000fbfc3ce8 0000000000001000
(XEN)    00008000fbfa5000 00008000fbfa5000 0000000000000005 00000000002c6600
(XEN)    00000000002ff450 00000000002c6704 00008000fbfc0000 00000000002ff550
(XEN)    00008000fbfa5000 0000000000000005 00008000fbfc3ce8 0000000000000000
(XEN)    00008000fbff00a8 0000000000000013 0000000000000000 0000000000000000
(XEN)    00000000002d28e8 00000000fbf78090 00000000002d28d8 00000000002d1b80
(XEN)    00000000002ff440 00000000ff990000 00008000fbfc0000 0000000000001000
(XEN)    00008000fbfa5000 00008000fbfa5000 0000000000000005 00000000002c6600
(XEN)    00000000002ff510 00000000002c6f78 0000000000008090 0000000000e00000
(XEN)    00000000002d2ae8 00008000fbfa5000 000000000000000f 0000000000000004
(XEN)    00000000002e05e0 0000000000000000 0000000880000000 0000000000000002
(XEN)    00000000002d28e8 000000000022d1e4 00000000002d28d8 00000000002d1b80
(XEN)    00000000002ff500 00000000002b7da0 0000000000008090 0000000000e00000
(XEN)    00000000002d2ae8 00008000fbfa5000 0000000000000005 00000000002c6f60
(XEN)    00000000002ffdf0 00000000002cb1fc 00008000fbfa5000 00000000002b0600
(XEN)    0000000000340430 0000000000000004 00000000002a3810 0000000000000000
(XEN)    0000000000000001 00008000fbfa5000 00008000fbf70000 0000000000000000
(XEN)    0000000000000001 0000000020000000 0000000040000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN)    0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) Xen call trace:
(XEN)    [<000000000024a77c>] smmu.c#find_smmu_master+0x8/0x3c (PC)
(XEN)    [<000000000024a8a4>] smmu.c#find_smmu_for_device+0x48/0x94 (LR)
(XEN)    [<000000000024ae80>] smmu.c#arm_smmu_assign_dev+0x58/0xb48
(XEN)    [<000000000024c6e8>] iommu_assign_dt_device+0x64/0xc0
(XEN)    [<00000000002c6274>] domain_build.c#handle_node+0x310/0x9ec
(XEN)    [<00000000002c6704>] domain_build.c#handle_node+0x7a0/0x9ec
(XEN)    [<00000000002c6704>] domain_build.c#handle_node+0x7a0/0x9ec
(XEN)    [<00000000002c6f78>] construct_dom0+0x410/0x4bc
(XEN)    [<00000000002cb1fc>] start_xen+0xb9c/0xca4
(XEN)    [<00000000002001a0>] arm64/head.o#primary_switched+0xc/0x1c


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 02:45:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 02:45:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108031.206413 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lV3cI-0001B4-Ea; Sat, 10 Apr 2021 02:44:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108031.206413; Sat, 10 Apr 2021 02: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 1lV3cI-0001Aw-9W; Sat, 10 Apr 2021 02:44:58 +0000
Received: by outflank-mailman (input) for mailman id 108031;
 Sat, 10 Apr 2021 02: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 1lV3cH-0001Ao-Aw; Sat, 10 Apr 2021 02: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 1lV3cH-0005js-6o; Sat, 10 Apr 2021 02: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 1lV3cG-0005U8-Tw; Sat, 10 Apr 2021 02:44:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lV3cG-0005A4-TR; Sat, 10 Apr 2021 02: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=B2JTRcPaoQMrrdf4tpfIL3eDEINh1VWrQ4CyYQQjxLQ=; b=xQent/V6YlEbxXFkw1OUibKJoO
	HJ6XBOdZJGvHIMw/3gLhdG5jZG3slNC8PADgzeonSj47qBKqyOm24DtiG/s4Sl4jRftazb3P597sj
	DCLJ27nPjM1u+bMfv5CG8HRyS5u9KEfxpjFoi5btugx59JNRbd5PIeCsl9pjlhrGhoec=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160861-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-upstream-4.15-testing test] 160861: tolerable FAIL - PUSHED
X-Osstest-Failures:
    qemu-upstream-4.15-testing:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    qemu-upstream-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-upstream-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=e2af2d050338c99e8436e251ad67aafb3ebbd501
X-Osstest-Versions-That:
    qemuu=7ea428895af2840d85c524f0bd11a38aac308308
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 02:44:56 +0000

flight 160861 qemu-upstream-4.15-testing real [real]
flight 160885 qemu-upstream-4.15-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/160861/
http://logs.test-lab.xenproject.org/osstest/logs/160885/

Failures :-/ but no regressions.

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

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

version targeted for testing:
 qemuu                e2af2d050338c99e8436e251ad67aafb3ebbd501
baseline version:
 qemuu                7ea428895af2840d85c524f0bd11a38aac308308

Last test of basis   160423  2021-03-25 20:09:46 Z   15 days
Testing same since   160861  2021-04-09 10:38:42 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Paolo Bonzini <pbonzini@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/qemu-xen.git
   7ea428895a..e2af2d0503  e2af2d050338c99e8436e251ad67aafb3ebbd501 -> stable-4.15


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 07:07:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 07:07:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108066.206461 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lV7iO-0008Le-FH; Sat, 10 Apr 2021 07:07:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108066.206461; Sat, 10 Apr 2021 07:07: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 1lV7iO-0008LR-Bt; Sat, 10 Apr 2021 07:07:32 +0000
Received: by outflank-mailman (input) for mailman id 108066;
 Sat, 10 Apr 2021 07:07: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 1lV7iN-0008LH-ST; Sat, 10 Apr 2021 07:07: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 1lV7iN-00027u-OG; Sat, 10 Apr 2021 07:07: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 1lV7iN-0008Dx-FK; Sat, 10 Apr 2021 07:07:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lV7iN-00072c-Eo; Sat, 10 Apr 2021 07: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=PAwwuYvDJ7uDQuXCEb8DnTOpoQ207JSVk2yeSKG68aU=; b=vJ5wHmjF8NNdpN+vL8oylsdBko
	bZsaWxRMEySaIsu6z7tXIYPrmdtVOWlZ83h+6F9s5gOwYde3lAzIJIe/O4rirwM/pelQwvSvllJF5
	YWOj9OEx5HX4FWtW8T9wg3PApdnos5PzzKkAyoS9Uy9dkkhVUTliGm67ZCBG+hs7B0SY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160863-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160863: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 07:07:31 +0000

flight 160863 xen-4.12-testing real [real]
flight 160892 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/160863/
http://logs.test-lab.xenproject.org/osstest/logs/160892/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160831 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail in 160831 pass in 160863
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160831

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-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-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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   52 days
Failing since        160128  2021-03-18 14:36:18 Z   22 days   28 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   21 days   26 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 08:45:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 08:45:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108094.206485 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lV9Ep-000151-Av; Sat, 10 Apr 2021 08:45:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108094.206485; Sat, 10 Apr 2021 08: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 1lV9Ep-00014u-7m; Sat, 10 Apr 2021 08:45:07 +0000
Received: by outflank-mailman (input) for mailman id 108094;
 Sat, 10 Apr 2021 08:45: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 1lV9Eo-00014m-NZ; Sat, 10 Apr 2021 08:45: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 1lV9Eo-0004Cv-Fp; Sat, 10 Apr 2021 08:45: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 1lV9Eo-0006GP-7W; Sat, 10 Apr 2021 08:45:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lV9Eo-00053u-5I; Sat, 10 Apr 2021 08: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ipvkJf9w3Gzj7HQjMGMlpyL89djq4uAdVyh09jMBsvA=; b=f7sdlSUV0cjP/QoOaTMPCl+l5W
	7eat3hUlnC5j9JjNFYAXgEqaRqaZ7VkpJJZgtgyuMTdCpPwNYxJyTvsVcazooTANSQr5+iOvcGBdA
	tzkd67M+Aoia25a9QX2EDzDrB7SD6ESeX4XZ5G1W/XH7ZKh5/SVil/15SvMPl9BxFLCo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160870-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160870: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=17e7124aad766b3f158943acb51467f86220afe9
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 08:45:06 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                17e7124aad766b3f158943acb51467f86220afe9
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  252 days
Failing since        152366  2020-08-01 20:49:34 Z  251 days  426 attempts
Testing same since   160870  2021-04-09 14:56:15 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1317179 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 10:13:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 10:13:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107950.206512 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVAbg-0000xm-I0; Sat, 10 Apr 2021 10:12:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107950.206512; Sat, 10 Apr 2021 10:12: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 1lVAbg-0000xf-ET; Sat, 10 Apr 2021 10:12:48 +0000
Received: by outflank-mailman (input) for mailman id 107950;
 Fri, 09 Apr 2021 19:44:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uKAe=JG=gmx.de=deller@srs-us1.protection.inumbo.net>)
 id 1lUx2x-0006X9-1f
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 19:44:03 +0000
Received: from mout.gmx.net (unknown [212.227.17.20])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fef76e95-7abd-4fb0-8e45-0dba20f00c9f;
 Fri, 09 Apr 2021 19:44:01 +0000 (UTC)
Received: from [192.168.20.60] ([92.116.181.63]) by mail.gmx.net (mrgmx104
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1My36N-1lmD5l41nT-00zVNp; Fri, 09
 Apr 2021 21:42:47 +0200
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fef76e95-7abd-4fb0-8e45-0dba20f00c9f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net;
	s=badeba3b8450; t=1617997367;
	bh=iNspAAUXd0TGc9idWuqJezj9FgSbVIrdnHkC34OI6ys=;
	h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To;
	b=ldsXgBGJ3GSKvmbTxvP1itO26Qt3rKVAXa7HCeRwn7x6vvwIVyKAuuWMT/9Mbs/eq
	 eUjUvdYyHT2oPnald/g3Raad9aGgTRMlgrGQZ1cKX9WKZtuOkezCA/ZBkxeKHYWicC
	 dFguhZZAb4murEW3qrRROxlPjGsI5cEXZ4497eEg=
X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c
Subject: Re: [PATCH v2 1/1] kernel.h: Split out panic and oops helpers
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
 Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
 Alexander Lobakin <alobakin@pm.me>, Wei Liu <wei.liu@kernel.org>,
 Rasmus Villemoes <linux@rasmusvillemoes.dk>, Arnd Bergmann <arnd@arndb.de>,
 Bjorn Andersson <bjorn.andersson@linaro.org>,
 Christian Brauner <christian.brauner@ubuntu.com>,
 Andrew Morton <akpm@linux-foundation.org>, Kees Cook
 <keescook@chromium.org>, Mike Rapoport <rppt@kernel.org>,
 Corey Minyard <cminyard@mvista.com>, Michael Ellerman <mpe@ellerman.id.au>,
 Vasily Gorbik <gor@linux.ibm.com>, "Jason J. Herne" <jjherne@linux.ibm.com>,
 Joerg Roedel <jroedel@suse.de>, Michael Kelley <mikelley@microsoft.com>,
 Joe Perches <joe@perches.com>, Florian Fainelli <f.fainelli@gmail.com>,
 Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>,
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
 Scott Branden <scott.branden@broadcom.com>, Olof Johansson <olof@lixom.net>,
 Mihai Carabas <mihai.carabas@oracle.com>, Wang Wenhu <wenhu.wang@vivo.com>,
 Marek Czerski <ma.czerski@gmail.com>, Hongbo Yao <yaohongbo@huawei.com>,
 Mathieu Poirier <mathieu.poirier@linaro.org>,
 Vineeth Vijayan <vneethv@linux.ibm.com>, Heiko Carstens <hca@linux.ibm.com>,
 Peter Oberparleiter <oberpar@linux.ibm.com>,
 Alexander Egorenkov <egorenar@linux.ibm.com>,
 Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>,
 Vlastimil Babka <vbabka@suse.cz>, "Paul E. McKenney" <paulmck@kernel.org>,
 "Steven Rostedt (VMware)" <rostedt@goodmis.org>,
 linux-alpha@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-arm-kernel@lists.infradead.org, linux-mips@vger.kernel.org,
 linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
 linux-s390@vger.kernel.org, sparclinux@vger.kernel.org,
 linux-um@lists.infradead.org, linux-hyperv@vger.kernel.org,
 xen-devel@lists.xenproject.org, linux-xtensa@linux-xtensa.org,
 openipmi-developer@lists.sourceforge.net, linux-clk@vger.kernel.org,
 linux-edac@vger.kernel.org, coresight@lists.linaro.org,
 linux-leds@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com,
 netdev@vger.kernel.org, linux-pm@vger.kernel.org,
 linux-remoteproc@vger.kernel.org, linux-staging@lists.linux.dev,
 dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org,
 linux-arch@vger.kernel.org, kexec@lists.infradead.org, rcu@vger.kernel.org,
 linux-fsdevel@vger.kernel.org
Cc: Richard Henderson <rth@twiddle.net>,
 Ivan Kokshaysky <ink@jurassic.park.msu.ru>, Matt Turner
 <mattst88@gmail.com>, Catalin Marinas <catalin.marinas@arm.com>,
 Will Deacon <will@kernel.org>,
 "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>,
 Benjamin Herrenschmidt <benh@kernel.crashing.org>,
 Paul Mackerras <paulus@samba.org>,
 Christian Borntraeger <borntraeger@de.ibm.com>,
 "David S. Miller" <davem@davemloft.net>, Jeff Dike <jdike@addtoit.com>,
 Richard Weinberger <richard@nod.at>,
 Anton Ivanov <anton.ivanov@cambridgegreys.com>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, x86@kernel.org,
 "H. Peter Anvin" <hpa@zytor.com>, "K. Y. Srinivasan" <kys@microsoft.com>,
 Haiyang Zhang <haiyangz@microsoft.com>,
 Stephen Hemminger <sthemmin@microsoft.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>, Juergen Gross
 <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Chris Zankel <chris@zankel.net>, Max Filippov <jcmvbkbc@gmail.com>,
 Corey Minyard <minyard@acm.org>, Paul Walmsley <paul.walmsley@sifive.com>,
 Michael Turquette <mturquette@baylibre.com>, Stephen Boyd
 <sboyd@kernel.org>, Dinh Nguyen <dinguyen@kernel.org>,
 Mauro Carvalho Chehab <mchehab@kernel.org>, Tony Luck <tony.luck@intel.com>,
 James Morse <james.morse@arm.com>, Robert Richter <rric@kernel.org>,
 Suzuki K Poulose <suzuki.poulose@arm.com>, Mike Leach
 <mike.leach@linaro.org>, Leo Yan <leo.yan@linaro.org>,
 Alexander Shishkin <alexander.shishkin@linux.intel.com>,
 Pavel Machek <pavel@ucw.cz>, Alex Elder <elder@kernel.org>,
 Jakub Kicinski <kuba@kernel.org>, Sebastian Reichel <sre@kernel.org>,
 Ohad Ben-Cohen <ohad@wizery.com>, Jens Frederich <jfrederich@gmail.com>,
 Daniel Drake <dsd@laptop.org>, Jon Nettleton <jon.nettleton@gmail.com>,
 Eric Biederman <ebiederm@xmission.com>, Josh Triplett
 <josh@joshtriplett.org>, Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
 Lai Jiangshan <jiangshanlai@gmail.com>,
 Joel Fernandes <joel@joelfernandes.org>, Luis Chamberlain
 <mcgrof@kernel.org>, Iurii Zaikin <yzaikin@google.com>,
 Mike Rapoport <rppt@linux.ibm.com>
References: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>
From: Helge Deller <deller@gmx.de>
Message-ID: <cef5d4ba-9d91-7249-3ba4-c7f1c89ab119@gmx.de>
Date: Fri, 9 Apr 2021 21:41:57 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:A9ZHNG4WxpUBFm/OLrSjy4wmvepyAKfJ/9J0GMwZPVvou+WL0jt
 juhLu46u1kS+URbP+8+Pw+p7oQ3JpIMBAMo3AEr85dJ6auKoY3YWnT5NDC8TMlGFgRljwyK
 +Z8x/lMp3a1Sj6G+ejcETzf/1wuAwQ3HVr+B/sOgfO9g9aKIA+KstHHg98r0RbXaN5gO1f1
 c2FCqtclGkoW83386bLAQ==
X-Spam-Flag: NO
X-UI-Out-Filterresults: notjunk:1;V03:K0:QTiAIr1d9DU=:ouDY+zoQbxd0AYwIoqdq7+
 aGg5cjuhFxN4dPlhbUVe4gHa8V6O/ob8/GYNsz48eMGoWdTSBWNdigEx/P3CeG5ajt1K/D1wj
 ZsuimGcNU/JIwDEC4hAa9wiKwplSRt9GyqnNpMymPpOincerI2QNIINtkESpmD/MQtIZKWIBd
 LzLZQt5g5JHyD7KSRX3CSO3kxsUbUK397UnmPrlbBzZiG2Ki8L87whx1HhStGiOawVNU3NX1U
 1qJ/Q2KXhaSRyDrR5JobMbpVJ16dZyIPC+nB+S5uAuxAgE/sFmpim0FlFwngs3hHA1Ua7nKDx
 vaviKH0ZdVtdmwFCmPWXldfwgaGRXmcVHieN8y3Cf4AES1arvvUXfDdU8TlIFPlMWolAfy75b
 aF6Vq+x5W46hFMRh+gkaDVvXSN0IJLemCnzysIaYGHy5hfBua6u7o+npWjwJ1MLna90v6WJqp
 qtsmLRv7qq9JD3rE3mLnbgCeyikpDMiwYezxJc5y085Nda4MocVjIUyHwfrItCcTJy+6nK+32
 QtS5ysQPbZtg/0BLTkwmTgg1C9wyCqJwqSPkJHKs0fedY3Cg4AmlYSUFZ+l1+yWlahYNrwIjD
 1LvXS6jFdPgrwM0Bw5zEn5iTaVsN3Dpg/BK7RBEnkSXG2EhjbG0P5JyU6ZQFlyoWZsOBl1Dnp
 9RlHsz3O6/vJl501tNpFzFkE9v1fbjuJiCnsWIZVHwcbxwgsYWs1VvePFQoqRLQUoGWk7YlQ8
 Mycnfd16TOkM/BTklN35/8ZoVz9X6VjMTLQhDSDUL5LeX75GwKdRnpVjwg+mpqmINujIEDZVj
 bRIcfuM8kM4QXmEUEjmqZoVNDqdo0531mNm3kN19X3Wj5I9ywhlJarAEaPUOs1zKkdzPb4HdC
 +5ul9M6a4WBWbT5U1mKmQOeT0D6MCEGVKv+v/aWQ+A07Sxs9cad/sxt/XXniiusfDTtv1wpHL
 48xz68wHDUi6JHhewqK39v9CUwOqs24U/FOrqR6QogsoMdeib8LB3HQXiJzJhPuxnfQKT5n0E
 2KocVJOLOCpFD00uImKyPG4urooQInY0CgXuaTbgwb2QXtNz/HWsnU7bcGH95t//ETUS0YST/
 HIEC4Jt3JrZiU2K24JZ5uAUtc1tWcvMl+zNPO7uqbferwivk7BjAs0A1bkS3994pg0p9gu7e6
 IGlScHPk65VIaL0560ZSSQDJOn/n987RThMli+dnKucI6xieqz82byl0Okk5UU49D7L5Y=

On 4/9/21 12:02 PM, Andy Shevchenko wrote:
> kernel.h is being used as a dump for all kinds of stuff for a long time.
> Here is the attempt to start cleaning it up by splitting out panic and
> oops helpers.
>
> There are several purposes of doing this:
> - dropping dependency in bug.h
> - dropping a loop by moving out panic_notifier.h
> - unload kernel.h from something which has its own domain
>
> At the same time convert users tree-wide to use new headers, although
> for the time being include new header back to kernel.h to avoid twisted
> indirected includes for existing users.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> Acked-by: Mike Rapoport <rppt@linux.ibm.com>
> Acked-by: Corey Minyard <cminyard@mvista.com>
> Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
> Acked-by: Kees Cook <keescook@chromium.org>
> Acked-by: Wei Liu <wei.liu@kernel.org>
> Acked-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Acked-by: Helge Deller <deller@gmx.de> # parisc

Helge


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 10:13:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 10:13:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.107994.206518 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVAbg-0000yD-SM; Sat, 10 Apr 2021 10:12:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 107994.206518; Sat, 10 Apr 2021 10:12: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 1lVAbg-0000xy-MP; Sat, 10 Apr 2021 10:12:48 +0000
Received: by outflank-mailman (input) for mailman id 107994;
 Fri, 09 Apr 2021 22:40:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=oZlh=JG=alpha.franken.de=tsbogend@srs-us1.protection.inumbo.net>)
 id 1lUznw-0006Mo-4n
 for xen-devel@lists.xenproject.org; Fri, 09 Apr 2021 22:40:44 +0000
Received: from elvis.franken.de (unknown [193.175.24.41])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 3a3e17f6-9b01-45cc-b713-be8e006fd93a;
 Fri, 09 Apr 2021 22:40:42 +0000 (UTC)
Received: from uucp (helo=alpha)
 by elvis.franken.de with local-bsmtp (Exim 3.36 #1)
 id 1lUznc-00038n-01; Sat, 10 Apr 2021 00:40:24 +0200
Received: by alpha.franken.de (Postfix, from userid 1000)
 id EDAA4C24FC; Sat, 10 Apr 2021 00:39: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: 3a3e17f6-9b01-45cc-b713-be8e006fd93a
Date: Sat, 10 Apr 2021 00:39:11 +0200
From: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Alexander Lobakin <alobakin@pm.me>, Wei Liu <wei.liu@kernel.org>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Arnd Bergmann <arnd@arndb.de>,
	Bjorn Andersson <bjorn.andersson@linaro.org>,
	Christian Brauner <christian.brauner@ubuntu.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Kees Cook <keescook@chromium.org>, Mike Rapoport <rppt@kernel.org>,
	Corey Minyard <cminyard@mvista.com>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Vasily Gorbik <gor@linux.ibm.com>,
	"Jason J. Herne" <jjherne@linux.ibm.com>,
	Joerg Roedel <jroedel@suse.de>,
	Michael Kelley <mikelley@microsoft.com>,
	Joe Perches <joe@perches.com>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Scott Branden <scott.branden@broadcom.com>,
	Olof Johansson <olof@lixom.net>,
	Mihai Carabas <mihai.carabas@oracle.com>,
	Wang Wenhu <wenhu.wang@vivo.com>,
	Marek Czerski <ma.czerski@gmail.com>,
	Hongbo Yao <yaohongbo@huawei.com>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Vineeth Vijayan <vneethv@linux.ibm.com>,
	Heiko Carstens <hca@linux.ibm.com>,
	Peter Oberparleiter <oberpar@linux.ibm.com>,
	Alexander Egorenkov <egorenar@linux.ibm.com>,
	Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>,
	Vlastimil Babka <vbabka@suse.cz>,
	"Paul E. McKenney" <paulmck@kernel.org>,
	"Steven Rostedt (VMware)" <rostedt@goodmis.org>,
	linux-alpha@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-mips@vger.kernel.org,
	linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	linux-s390@vger.kernel.org, sparclinux@vger.kernel.org,
	linux-um@lists.infradead.org, linux-hyperv@vger.kernel.org,
	xen-devel@lists.xenproject.org, linux-xtensa@linux-xtensa.org,
	openipmi-developer@lists.sourceforge.net, linux-clk@vger.kernel.org,
	linux-edac@vger.kernel.org, coresight@lists.linaro.org,
	linux-leds@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com,
	netdev@vger.kernel.org, linux-pm@vger.kernel.org,
	linux-remoteproc@vger.kernel.org, linux-staging@lists.linux.dev,
	dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org,
	linux-arch@vger.kernel.org, kexec@lists.infradead.org,
	rcu@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	Richard Henderson <rth@twiddle.net>,
	Ivan Kokshaysky <ink@jurassic.park.msu.ru>,
	Matt Turner <mattst88@gmail.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will@kernel.org>,
	"James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>,
	Helge Deller <deller@gmx.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	"David S. Miller" <davem@davemloft.net>,
	Jeff Dike <jdike@addtoit.com>, Richard Weinberger <richard@nod.at>,
	Anton Ivanov <anton.ivanov@cambridgegreys.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
	"K. Y. Srinivasan" <kys@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Stephen Hemminger <sthemmin@microsoft.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Chris Zankel <chris@zankel.net>, Max Filippov <jcmvbkbc@gmail.com>,
	Corey Minyard <minyard@acm.org>,
	Paul Walmsley <paul.walmsley@sifive.com>,
	Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>, Dinh Nguyen <dinguyen@kernel.org>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Tony Luck <tony.luck@intel.com>, James Morse <james.morse@arm.com>,
	Robert Richter <rric@kernel.org>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Mike Leach <mike.leach@linaro.org>, Leo Yan <leo.yan@linaro.org>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Pavel Machek <pavel@ucw.cz>, Alex Elder <elder@kernel.org>,
	Jakub Kicinski <kuba@kernel.org>,
	Sebastian Reichel <sre@kernel.org>,
	Ohad Ben-Cohen <ohad@wizery.com>,
	Jens Frederich <jfrederich@gmail.com>,
	Daniel Drake <dsd@laptop.org>,
	Jon Nettleton <jon.nettleton@gmail.com>,
	Eric Biederman <ebiederm@xmission.com>,
	Josh Triplett <josh@joshtriplett.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Lai Jiangshan <jiangshanlai@gmail.com>,
	Joel Fernandes <joel@joelfernandes.org>,
	Luis Chamberlain <mcgrof@kernel.org>,
	Iurii Zaikin <yzaikin@google.com>,
	Mike Rapoport <rppt@linux.ibm.com>
Subject: Re: [PATCH v2 1/1] kernel.h: Split out panic and oops helpers
Message-ID: <20210409223911.GA21445@alpha.franken.de>
References: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210409100250.25922-1-andriy.shevchenko@linux.intel.com>
User-Agent: Mutt/1.10.1 (2018-07-13)

On Fri, Apr 09, 2021 at 01:02:50PM +0300, Andy Shevchenko wrote:
> kernel.h is being used as a dump for all kinds of stuff for a long time.
> Here is the attempt to start cleaning it up by splitting out panic and
> oops helpers.
> 
> There are several purposes of doing this:
> - dropping dependency in bug.h
> - dropping a loop by moving out panic_notifier.h
> - unload kernel.h from something which has its own domain
> 
> At the same time convert users tree-wide to use new headers, although
> for the time being include new header back to kernel.h to avoid twisted
> indirected includes for existing users.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> Acked-by: Mike Rapoport <rppt@linux.ibm.com>
> Acked-by: Corey Minyard <cminyard@mvista.com>
> Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
> Acked-by: Kees Cook <keescook@chromium.org>
> Acked-by: Wei Liu <wei.liu@kernel.org>
> Acked-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> ---
> v2:
>  - fixed all errors with allmodconfig on x86_64 (Andrew)
>  - checked with allyesconfig on x86_64
>  - additionally grepped source code for panic notifier list usage
>    and converted all users
>  - elaborated commit message (Luis)
>  - collected given tags (incl. Andrew's SoB, see below)
> 
> I added Andrew's SoB since part of the fixes I took from him. Andrew,
> feel free to amend or tell me how you want me to do.
> 
>  arch/mips/kernel/relocate.c                   |  1 +
>  arch/mips/sgi-ip22/ip22-reset.c               |  1 +
>  arch/mips/sgi-ip32/ip32-reset.c               |  1 +

Acked-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>

-- 
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea.                                                [ RFC1925, 2.3 ]


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 12:30:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 12:30:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108185.206566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVCkL-0004Yf-Ok; Sat, 10 Apr 2021 12:29:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108185.206566; Sat, 10 Apr 2021 12:29: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 1lVCkL-0004YY-L2; Sat, 10 Apr 2021 12:29:53 +0000
Received: by outflank-mailman (input) for mailman id 108185;
 Sat, 10 Apr 2021 12:29: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 1lVCkK-0004YQ-O5; Sat, 10 Apr 2021 12:29: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 1lVCkK-0007q7-FW; Sat, 10 Apr 2021 12:29: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 1lVCkK-000134-7J; Sat, 10 Apr 2021 12:29:52 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVCkK-0003mV-6q; Sat, 10 Apr 2021 12:29: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=0KTVvLbCG0DhJaT1UJMOaOsSsYDpN/RQm9nCNs4DJXo=; b=fBEcad16/F8gJ5TWRb+TnaNIx7
	2qbhYJsZ5Dm4tKtXPoGq0IaPAfVkaag8fn1x4T8IZbWAFFFbW93nibK9PBoYN6lBbjlhgy83RTLCA
	zJ++31gFsx3P4000AHYhtoMDr0OaWb3oVHuze++agNBFD28pQmmcLmcwRbL2FlbZ/J9s=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160890-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160890: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=e2f82a3704f680fbb37a733476d870c19232c23e
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 12:29:52 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              e2f82a3704f680fbb37a733476d870c19232c23e
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  274 days
Failing since        151818  2020-07-11 04:18:52 Z  273 days  266 attempts
Testing same since   160890  2021-04-10 04:19:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 15:55:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 15:55:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108219.206599 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVFxW-00079c-Sd; Sat, 10 Apr 2021 15:55:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108219.206599; Sat, 10 Apr 2021 15: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 1lVFxW-00079V-Oo; Sat, 10 Apr 2021 15:55:42 +0000
Received: by outflank-mailman (input) for mailman id 108219;
 Sat, 10 Apr 2021 15:55:42 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hkbf=JH=gmail.com=jandryuk@srs-us1.protection.inumbo.net>)
 id 1lVFxW-00079Q-75
 for xen-devel@lists.xenproject.org; Sat, 10 Apr 2021 15:55:42 +0000
Received: from mail-lf1-x131.google.com (unknown [2a00:1450:4864:20::131])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 52d7f38b-acc4-44ef-882b-972ba4c8544e;
 Sat, 10 Apr 2021 15:55:41 +0000 (UTC)
Received: by mail-lf1-x131.google.com with SMTP id b4so14436323lfi.6
 for <xen-devel@lists.xenproject.org>; Sat, 10 Apr 2021 08:55: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: 52d7f38b-acc4-44ef-882b-972ba4c8544e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=kaurunJOW3GvxHGKNAXvkHbr+QbCN1WTyDCD7fyvilg=;
        b=l4/uIYoUScHQb+RSKMo1uElfv5F5k2e25cLeUmkBDFbzY9RGOo/hgKJIEwBRzs4QXv
         BKCk2xHng0rD2GC2qysrImaKsEeSFeSA7YYgdkzLnBNgjFBZ88yPLKvM8Xc59XCJaRkA
         l9fbWWT7Dluu7YMI7OBXPJsa9ASQH1pi0F/EEzE2+XkmYKHsiUkvK9xCYLErg3Q8ZxHS
         hLwk1fcCMYhM/COW/cBw8mxbFkRoxWyX7n+HvWAfaMSjiCyjrMj0lGEFsxLhSiVqV0xy
         fnCMb109Ntx757LbqUFUzK5KzCnINY3GevuJLxbjk5H6LQHsAvPt87q3TRwwSnQfcGCH
         2J2g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=kaurunJOW3GvxHGKNAXvkHbr+QbCN1WTyDCD7fyvilg=;
        b=WctJWlaZkJqH2GAPEpIKV38GnJQNk7EULm79uNt+1CH4mGt5SHJvdFPl4WlGsSbKyu
         IgtP4SzxbmOC2HaX1SpGjD5hTvVqLtNxjd7nSE1anr/yh/uQ+VeiBT/3q5sTvcRYrE7m
         dItEVumBiABQ0YJOvx+lvi34qKkAq5vfi+5mGRrl7mVz/Q4g7aBYPLlYVkcB4+hyjoF8
         MxDwGyJyBD2BRYNMQ3tJexdb2PFaAAKxaJBALKW0IaLAdY4nXSwG0RPg268/Nqo9bxCc
         YRaQNr8wTzCtsIiBbGdWQwghZJzWSJoUJo43Uae27y4qCSXo1lH8CFKJlCW/wJJTFPRK
         6Jyg==
X-Gm-Message-State: AOAM533qeiyef0lP5njLqfAjjQH3i4siHsrAgQojZAV96M++ssIndJA1
	9FtvXfyNjqP10Yecmo5ggwaIbEMlTX+LaqgIxhU=
X-Google-Smtp-Source: ABdhPJzE++6vehK1NID/LT8ON6swiSM3wG4HzT2xJH2zRXzDPjGwpR5h4ag77zwxmNnWz6+svA7Hu9dVVYXQHnKRk4A=
X-Received: by 2002:a19:c302:: with SMTP id t2mr13508061lff.150.1618070139798;
 Sat, 10 Apr 2021 08:55:39 -0700 (PDT)
MIME-Version: 1.0
References: <602469f5-1028-8f36-7195-f102b6d2af0c@tabit.pro>
 <427bfd62-48c0-5859-7300-c618331b4e5a@citrix.com> <20200922133047.4646b2ab62cszn46@liuwe-devbox-debian-v2>
In-Reply-To: <20200922133047.4646b2ab62cszn46@liuwe-devbox-debian-v2>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Sat, 10 Apr 2021 11:55:28 -0400
Message-ID: <CAKf6xpsOfM=PSFW6sUx5yozmEji9f5t2p+5+mrpX_2cOqGBOmQ@mail.gmail.com>
Subject: Re: [PATCH] libxl: User defined max_maptrack_frames in a stub domain
To: Wei Liu <wl@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Dmitry Fedorov <d.fedorov@tabit.pro>, 
	xen-devel <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, 
	Anthony PERARD <anthony.perard@citrix.com>
Content-Type: text/plain; charset="UTF-8"

On Tue, Sep 22, 2020 at 9:31 AM Wei Liu <wl@xen.org> wrote:
>
> On Mon, Sep 14, 2020 at 04:27:45PM +0100, Andrew Cooper wrote:
> > On 14/09/2020 15:50, Dmitry Fedorov wrote:
> > > Hi,
> > >
> > > Implementing qrexec+usbip+qemu in Linux-based stub domain leads me to
> > > an issue where a device model stub domain doesn't have maptrack entries.
> > >
> > > Would it be possible to apply a user defined max_maptrack_frames value
> > > to dm_config in the same way as for max_grant_frames?
> > >
> > > Signed-off-by: Dmitry Fedorov <d.fedorov@tabit.pro>
> >
> > This looks entirely reasonable.
> >
> > CC'ing the maintainers for their opinion.
> >
>
> Looks fine to me.
>
> Acked-by: Wei Liu <wl@xen.org>

Hi,

Wei, looks like you Acked but did not apply this patch.  And after the
libs rename, the file paths no longer match.  Do you want to fix this
up, or should Dmitry re-submit?

Regards,
Jason

> > ~Andrew
> >
> > > ---
> > >  tools/libxl/libxl_dm.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
> > > index f2dc5696b9..f044f2566c 100644
> > > --- a/tools/libxl/libxl_dm.c
> > > +++ b/tools/libxl/libxl_dm.c
> > > @@ -2292,7 +2292,7 @@ void libxl__spawn_stub_dm(libxl__egc *egc,
> > > libxl__stub_dm_spawn_state *sdss)
> > >      dm_config->b_info.target_memkb = dm_config->b_info.max_memkb;
> > >
> > >      dm_config->b_info.max_grant_frames =
> > > guest_config->b_info.max_grant_frames;
> > > -    dm_config->b_info.max_maptrack_frames = 0;
> > > +    dm_config->b_info.max_maptrack_frames =
> > > guest_config->b_info.max_maptrack_frames;
> > >
> > >      dm_config->b_info.u.pv.features = "";
> > >
> > > --
> > > 2.26.2
> > >
> > >
> >
>


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 16:19:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 16:19:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108226.206617 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVGKu-0001Ba-Ox; Sat, 10 Apr 2021 16:19:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108226.206617; Sat, 10 Apr 2021 16: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 1lVGKu-0001BT-LO; Sat, 10 Apr 2021 16:19:52 +0000
Received: by outflank-mailman (input) for mailman id 108226;
 Sat, 10 Apr 2021 16:19: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 1lVGKt-0001BL-HL; Sat, 10 Apr 2021 16:19: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 1lVGKs-0003ic-Q4; Sat, 10 Apr 2021 16:19: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 1lVGKs-0005Ii-DP; Sat, 10 Apr 2021 16:19:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVGKs-00063s-Cs; Sat, 10 Apr 2021 16:19: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=wyYQXMyhYoigUTt5T7C6EjrxBRzK5DcgjKqgw4q1r1Y=; b=ZjFBWwYubqcVnn+7d2LJJig1eK
	WPnjOiv096AbCId6XnQzhCGg/+bLaHpwIaM+w6fjRRlh4MvBU0O/o8vVc+EZfcKyeQRwtBwgzMZVW
	hr6+evN/KXzsxC5JyQqpwBSI7CL6UaeCVOmhNkmxaq7DkB4WwXEfpgolLa40aNORiVuk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160878-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160878: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start.2:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-xsm:guest-start.2:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-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-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check: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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-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-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-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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-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-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 16:19:50 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-credit2  19 guest-start.2            fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale   8 xen-boot                 fail REGR. vs. 160646
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-libvirt-raw 13 guest-start              fail REGR. vs. 160646
 test-armhf-armhf-xl-vhd 17 guest-start/debian.repeat fail in 160907 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 160907 pass in 160878
 test-amd64-i386-libvirt-xsm  21 guest-start.2       fail pass in 160907-retest
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 18 guest-localmigrate/x10 fail pass in 160907-retest
 test-amd64-amd64-examine      4 memdisk-try-append  fail pass in 160907-retest
 test-armhf-armhf-libvirt      8 xen-boot            fail pass in 160907-retest
 test-armhf-armhf-xl-vhd      12 debian-di-install   fail pass in 160907-retest

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 160907 like 160646
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 160907 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 160907 never pass
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 160907 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-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          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-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-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-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    9 days
Failing since        160665  2021-04-02 07:40:09 Z    8 days   12 attempts
Testing same since   160878  2021-04-09 19:07:54 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@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                                  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                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 17:30:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 17:30:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108247.206638 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVHR4-0008Ka-AT; Sat, 10 Apr 2021 17:30:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108247.206638; Sat, 10 Apr 2021 17:30:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVHR4-0008KT-7N; Sat, 10 Apr 2021 17:30:18 +0000
Received: by outflank-mailman (input) for mailman id 108247;
 Sat, 10 Apr 2021 17:30: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 1lVHR2-0008KL-UC; Sat, 10 Apr 2021 17:30: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 1lVHR2-0004pj-Nv; Sat, 10 Apr 2021 17:30: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 1lVHR2-0000as-Ez; Sat, 10 Apr 2021 17:30:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVHR2-00016N-EU; Sat, 10 Apr 2021 17:30:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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=3HGDXsWO8M7csUtGD54sFV/5mLxw9jkqvOC1nbz5lDw=; b=wWcSIvi2miRJ+oNyg2Dfw6sT2d
	gzAShi/nRZRM2+UUNUU7Xk808kIy/Yf5BZxnOmiBgf42JOfnYP1jUWUFroZ/Es4JADDpqlX/kLFlz
	IOfZ7ifpN7fJ5FIu33+InN+mlClbr8lfOHEGXS8I1LOj/xBB2rXYifyGjE11xVOAda6w=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm
Message-Id: <E1lVHR2-00016N-EU@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 17:30:16 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160911/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm.guest-saverestore --summary-out=tmp/160911.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm guest-saverestore
Searching for failure / basis pass:
 160851 fail [host=albana0] / 160125 [host=huxelrebe1] 160119 [host=godello0] 160104 [host=fiano1] 160097 [host=chardonnay1] 160091 [host=albana1] 160082 [host=pinot1] 160079 [host=godello0] 160070 [host=huxelrebe1] 160066 [host=elbling0] 160002 ok.
Failure / basis pass flights: 160851 / 160002
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 dc4d42302c22f012d78f6495ea23ceaa3e23842e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d8724020dd13c88a72fc391a6a2cf63abbd3dcca b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-dc4d42302c22f012d78f6495ea23ceaa3e23842e git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#6f34661b6c97a37a5efc27d31c037ddeda4547e2-d8724020dd13c88a72fc391a6a2cf63abbd3dcca git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#e4bdcc8aef6707027168ea29caed844a7da67b4d-b0976d5c0441378b6348f5bfedbf431055bd0147
>From git://cache:9419/git://git.qemu.org/qemu
   471387aa14..836b36af93  master     -> origin/master
   836b36af93..555249a59e  staging    -> origin/staging
Loaded 35166 nodes in revision graph
Searching for test results:
 159947 [host=pinot0]
 160002 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
 160048 []
 160050 []
 160057 []
 160062 []
 160064 []
 160066 [host=elbling0]
 160070 [host=huxelrebe1]
 160079 [host=godello0]
 160082 [host=pinot1]
 160088 []
 160091 [host=albana1]
 160097 [host=chardonnay1]
 160104 [host=fiano1]
 160113 [host=godello0]
 160119 [host=godello0]
 160125 [host=huxelrebe1]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160748 blocked c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160779 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160801 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160827 fail irrelevant
 160862 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
 160866 fail irrelevant
 160868 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160869 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160872 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160874 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 69259911f948ad2755bd1f2c999dd60ac322c890 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160875 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160876 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 81cbfd5088690c53541ffd0d74851c8ab055a829 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160879 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e31b3a5c34c6e5be7ef60773e607f189eaa15f3 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160881 blocked c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 757acb9a8295e8be4a37b2cfc1cd947e357fd29c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160851 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 dc4d42302c22f012d78f6495ea23ceaa3e23842e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d8724020dd13c88a72fc391a6a2cf63abbd3dcca b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160882 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f3bdfc41866edf7c256e689deb9d091a950c8fca 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5b7f5586d182b0cafb1f8d558992a14763e2953e b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160886 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 dc4d42302c22f012d78f6495ea23ceaa3e23842e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d8724020dd13c88a72fc391a6a2cf63abbd3dcca b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160887 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ee2e67da8f882fcdef2c49fcc58e9962aa695f5a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160889 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160891 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8becb36063fb14df1e3ae4916215667e2cb65fa2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160893 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 24e13a4dc1eb1630eceffc7ab334145d902e763d b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160895 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160897 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160900 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160902 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160905 blocked c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160908 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160910 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160911 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160002 (pass), for basis pass
 Result found: flight 160851 (fail), for basis failure
 Repro found: flight 160862 (pass), for basis pass
 Repro found: flight 160886 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 160897 (pass), for last pass
 Result found: flight 160900 (fail), for first failure
 Repro found: flight 160902 (pass), for last pass
 Repro found: flight 160908 (fail), for first failure
 Repro found: flight 160910 (pass), for last pass
 Repro found: flight 160911 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160911/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
160911: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail baseline untested


jobs:
 test-amd64-amd64-xl-qemuu-debianhvm-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 Apr 10 18:24:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 18:24:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108266.206661 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVIHJ-0004Yq-B7; Sat, 10 Apr 2021 18:24:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108266.206661; Sat, 10 Apr 2021 18:24: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 1lVIHJ-0004Yj-83; Sat, 10 Apr 2021 18:24:17 +0000
Received: by outflank-mailman (input) for mailman id 108266;
 Sat, 10 Apr 2021 18:24: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 1lVIHH-0004Yb-Au; Sat, 10 Apr 2021 18:24: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 1lVIHH-0005uO-51; Sat, 10 Apr 2021 18:24: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 1lVIHG-0003OV-Oe; Sat, 10 Apr 2021 18:24:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVIHG-0000OX-O5; Sat, 10 Apr 2021 18:24: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=DcNtlWDoqEoADOtnbrUBg4f1vdLQ/itSAYu5tYAy5VM=; b=MnDltj81rSpVboWECdB7QwLDyC
	b/IC7pY851QQFzYBAROsVxtSHISbtpR2ZrsWZYR5yUxjv/XI9WNUzTVqtMI59pQldAOqE2qOhmNZK
	H1ptZ4cP7bls6OkMhCTiq3jQBXx/3E8kKPb+DKGx85zHMoHHu/yHiBgxNCDT8NgvMcVU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160883-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160883: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=471387aa1446e2583f372f79327cc0a8c802b4b4
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 18:24:14 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                471387aa1446e2583f372f79327cc0a8c802b4b4
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  233 days
Failing since        152659  2020-08-21 14:07:39 Z  232 days  434 attempts
Testing same since   160883  2021-04-09 23:38:14 Z    0 days    1 attempts

------------------------------------------------------------
475 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 141418 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 18:25:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 18:25:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108272.206677 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVII9-0004hP-SM; Sat, 10 Apr 2021 18:25:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108272.206677; Sat, 10 Apr 2021 18: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 1lVII9-0004hI-OY; Sat, 10 Apr 2021 18:25:09 +0000
Received: by outflank-mailman (input) for mailman id 108272;
 Sat, 10 Apr 2021 18:25:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=FbzA=JH=ipxe.org=mcb30@srs-us1.protection.inumbo.net>)
 id 1lVII8-0004hC-T2
 for xen-devel@lists.xenproject.org; Sat, 10 Apr 2021 18:25:08 +0000
Received: from blyat.fensystems.co.uk (unknown [54.246.183.96])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4b587eb5-6b1a-4cad-af57-582dc7d145b1;
 Sat, 10 Apr 2021 18:25:07 +0000 (UTC)
Received: from dolphin.home (unknown
 [IPv6:2a00:23c6:5495:5e00:72b3:d5ff:feb1:e101])
 by blyat.fensystems.co.uk (Postfix) with ESMTPSA id 3DBA24422B;
 Sat, 10 Apr 2021 18:25: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: 4b587eb5-6b1a-4cad-af57-582dc7d145b1
To: Wei Liu <wei.liu@kernel.org>, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org, netdev@vger.kernel.org,
 Paul Durrant <pdurrant@amazon.com>
From: Michael Brown <mcb30@ipxe.org>
Subject: xen-netback hotplug-status regression bug
Message-ID: <afedd7cb-a291-e773-8b0d-4db9b291fa98@ipxe.org>
Date: Sat, 10 Apr 2021 19:25:03 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00
	autolearn=ham autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on
	blyat.fensystems.co.uk

Commit https://github.com/torvalds/linux/commit/1f25657 ("xen-netback: 
remove 'hotplug-status' once it has served its purpose") seems to have 
introduced a regression that prevents a vif frontend from transitioning 
more than once into Connected state.

As far as I can tell:

- The defined vif script (e.g. /etc/xen/scripts/vif-bridge) executes 
only once, at domU startup, and sets 
backend/vif/<domU>/0/hotplug-status="connected"

- When the frontend first enters Connected state, 
drivers/net/xen-netback/xenbus.c's connect() sets up a watch on 
"hotplug-status" with the callback function hotplug_status_changed()

- When hotplug_status_changed() is triggered by the watch, it 
transitions the backend to Connected state and calls xenbus_rm() to 
delete the "hotplug-status" attribute.

If the frontend subsequently disconnects and reconnects (e.g. 
transitions through Closed->Initialising->Connected) then:

- Nothing recreates "hotplug-status"

- When the frontend re-enters Connected state, connect() sets up a watch 
on "hotplug-status" again

- The callback hotplug_status_changed() is never triggered, and so the 
backend device never transitions to Connected state.


Reverting the commit would fix this bug, but would obviously also 
reintroduce the race condition that the commit was designed to avoid.

I'm happy to put together a patch, if one of the maintainers could 
suggest a sensible design approach.

I'm not a list member, so please CC me directly on replies.

Thanks,

Michael


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 22:32:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 22:32:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108318.206731 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVM8h-0001eB-Tk; Sat, 10 Apr 2021 22:31:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108318.206731; Sat, 10 Apr 2021 22: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 1lVM8h-0001e4-QC; Sat, 10 Apr 2021 22:31:39 +0000
Received: by outflank-mailman (input) for mailman id 108318;
 Sat, 10 Apr 2021 22:31: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 1lVM8g-0001dw-NY; Sat, 10 Apr 2021 22:31: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 1lVM8g-0001lb-GV; Sat, 10 Apr 2021 22:31: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 1lVM8g-0007L8-7i; Sat, 10 Apr 2021 22:31:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVM8g-0000bi-7D; Sat, 10 Apr 2021 22:31: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=jVHGQvDLLOZkTHoAP6SkheBHb0VNop16fVS8GfAsWBQ=; b=K7fKeWyBz1bcTI6KzoEultm0Gy
	f0r3Z9jGu9qMuqLq0gBEAzxIZ0PZWLXXYPnq45WDiW1xh4auj159z4eWYEg9K5AylAB7IM6eWWtHc
	r+k8UusjdF8IGhClDEdAUIGUX10I3nP3F3ztjFBTjTYUOsH8Z19PekYUblxqnIPMnPGI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160896-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160896: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 22:31:38 +0000

flight 160896 xen-4.12-testing real [real]
flight 160923 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/160896/
http://logs.test-lab.xenproject.org/osstest/logs/160923/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160831 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail in 160831 pass in 160896
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160831

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-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-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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   53 days
Failing since        160128  2021-03-18 14:36:18 Z   23 days   29 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   21 days   27 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 23:06:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 23:06:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108313.206752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVMgb-0004VB-Kr; Sat, 10 Apr 2021 23:06:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108313.206752; Sat, 10 Apr 2021 23:06: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 1lVMgb-0004V4-HU; Sat, 10 Apr 2021 23:06:41 +0000
Received: by outflank-mailman (input) for mailman id 108313;
 Sat, 10 Apr 2021 22:02:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xeDn=JH=riomar.se=rio@srs-us1.protection.inumbo.net>)
 id 1lVLgM-0007JW-R6
 for xen-devel@lists.xenproject.org; Sat, 10 Apr 2021 22:02:23 +0000
Received: from mail2.riocities.com (unknown [185.20.14.89])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 95b62e62-5752-45d3-9f36-e11efb81c752;
 Sat, 10 Apr 2021 22:02:20 +0000 (UTC)
Received: from mail.riomar.se (81-230-197-241-no510.tbcn.telia.com
 [81.230.197.241])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client did not present a certificate)
 by mail2.riocities.com (Postfix) with ESMTPSA id D7B5E400B5
 for <xen-devel@lists.xenproject.org>; Sun, 11 Apr 2021 00:02: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: 95b62e62-5752-45d3-9f36-e11efb81c752
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=riomar.se; s=mail;
	t=1618092137; bh=7oSfkiSpfwPyOthiX+jYRy0ge68CkN7LC5SfzMRPy1c=;
	h=Date:From:To:Subject:From;
	b=2J721FgHQnL9kPQYLVPGzw+PMV97PuXQC+9UK308HzWqoB7Ahf6YHcAl7iiRdrtwp
	 wK5AYOi35GrJ7A+mXT5WzFk3b+upHsQEyAQ3r8qKp59+67o/ZK49trAbOzJpX5opyy
	 aXXo2Kwjhdz6vEyWRXysXW/ynfmeSvokbjEn3Qpg=
Date: Sun, 11 Apr 2021 00:02:15 +0200
From: Henrik Riomar <rio@riomar.se>
To: xen-devel@lists.xenproject.org
Subject: xenstore utils dropped support for -s in 4.15
Message-Id: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Hi,

In Alpine and Debian (probably elsewhere as well), the -s flag removed in these two commits:
 * https://github.com/xen-project/xen/commit/fa06cb8c38832aafe597d719040ba1d216e367b8
 * https://github.com/xen-project/xen/commit/c65687ed16d2289ec91036ec2862a4b4bd34ea4f
is actually used in the init scripts.

On one of the systems I tested 4.15 on things just hangs due to this:
2222  open("/lib/libxentoolcore.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
2222  open("/usr/local/lib/libxentoolcore.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
2222  open("/usr/lib/libxentoolcore.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2222  fcntl(3, F_SETFD, FD_CLOEXEC)     = 0
2222  fstat(3, {st_mode=S_IFREG|0755, st_size=14072, ...}) = 0
2222  read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\20\0\0\0\0\0\0"..., 960) = 960
2222  mmap(NULL, 20480, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9925c02000
2222  mmap(0x7f9925c03000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0x1000) = 0x7f9925c03000
2222  mmap(0x7f9925c04000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED, 3, 0x2000) = 0x7f9925c04000
2222  mmap(0x7f9925c05000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x2000) = 0x7f9925c05000
2222  close(3)                          = 0
2222  mprotect(0x7f9925c0f000, 4096, PROT_READ) = 0
2222  mprotect(0x7f9925ca6000, 4096, PROT_READ) = 0
2222  mprotect(0x7f9925c05000, 4096, PROT_READ) = 0
2222  mprotect(0x5601e65dc000, 4096, PROT_READ) = 0
2222  stat("/var/run/xenstored/socket", 0x7ffd95b9f080) = -1 ENOENT (No such file or directory)
2222  access("/dev/xen/xenbus", F_OK)   = 0
2222  stat("/dev/xen/xenbus", {st_mode=S_IFCHR|0600, st_rdev=makedev(0xa, 0x3e), ...}) = 0
2222  open("/dev/xen/xenbus", O_RDWR|O_LARGEFILE) = 3
2222  rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f9925c59c4b}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2222  write(3, "\2\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) = 16
2222  write(3, "/\0", 2)                = 2
2222  read(3, 

Reverting the two commits mentioned above restores a booting system.

The -s flag was introduced in 2005 or so, so I guess you can say that dropping it should
at least be mentioned in the release notices, and an alternative be described, or
-s functionally should be brought back.

Thanks,
 Henrik

How its used in Debian:
https://salsa.debian.org/xen-team/debian-xen/-/blob/master/debian/xen-utils-common.xen.init#L246

How its used in Alpine:
https://git.alpinelinux.org/aports/tree/main/xen/xenstored.initd#n25


From xen-devel-bounces@lists.xenproject.org Sat Apr 10 23:57:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 10 Apr 2021 23:57:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108330.206770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVNTc-0000Y1-LT; Sat, 10 Apr 2021 23:57:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108330.206770; Sat, 10 Apr 2021 23:57: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 1lVNTc-0000Xu-HY; Sat, 10 Apr 2021 23:57:20 +0000
Received: by outflank-mailman (input) for mailman id 108330;
 Sat, 10 Apr 2021 23:57: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 1lVNTb-0000Xm-KY; Sat, 10 Apr 2021 23:57: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 1lVNTb-00037k-C9; Sat, 10 Apr 2021 23:57: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 1lVNTb-0002py-2J; Sat, 10 Apr 2021 23:57:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVNTb-0004m8-1o; Sat, 10 Apr 2021 23:57: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=l8UcBXFOaZmSL0qBj2BilV139rpEMtnLWBfJr30MNow=; b=KCDLF4hQM1Xg3hDdyWyt00NEgv
	K2klWyWDlDwrKhi5t/rvMN+yrbwmSbv0hujKZ72x97k4IZhhKIHS2pfASZQIm7Pe/cR38d6adZm86
	9Ph3Y6vvANbMKBxr7KWRDlQBd4Bf7NFYuvC7aU2WoFxzdaO+tEASdInd16LIu/zjjics=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160898-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160898: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-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-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=d4961772226de3b48a395a26c076d450d7044c76
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 10 Apr 2021 23:57:19 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                d4961772226de3b48a395a26c076d450d7044c76
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  253 days
Failing since        152366  2020-08-01 20:49:34 Z  252 days  427 attempts
Testing same since   160898  2021-04-10 08:49:15 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1324131 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 02:12:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 02:12:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108348.206803 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVPaC-0002lr-Qe; Sun, 11 Apr 2021 02:12:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108348.206803; Sun, 11 Apr 2021 02: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 1lVPaC-0002lk-My; Sun, 11 Apr 2021 02:12:16 +0000
Received: by outflank-mailman (input) for mailman id 108348;
 Sun, 11 Apr 2021 02:12: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 1lVPaC-0002lc-4j; Sun, 11 Apr 2021 02:12: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 1lVPaB-0003DK-R3; Sun, 11 Apr 2021 02:12: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 1lVPaB-0001pw-Ic; Sun, 11 Apr 2021 02:12:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVPaB-0007ue-Ho; Sun, 11 Apr 2021 02:12:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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=Eg+pw5tvI92Jjgc2xfLI6ypz9krKcELNqS0cE/PcoPw=; b=fb4uscInkajSund6yWlA8KUvfU
	fWV5tdtijB8vDIhD9PsGhN4mko8P77h29QIWDrmgA4mkyXtB4ekVUvuGEkDFbCBIbQ9imeK7IbNpq
	UMGtoG6DNlm1Zeb0ssamUfJlXncHdsyYCQFvmYHpMnKxw0FubSIobOaM4iv1Ug+Bl8/w=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [xen-unstable bisection] complete test-armhf-armhf-xl-multivcpu
Message-Id: <E1lVPaB-0007ue-Ho@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 02:12:15 +0000

branch xen-unstable
xenbranch xen-unstable
job test-armhf-armhf-xl-multivcpu
testid guest-start/debian.repeat

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  9617d5f9c19d1d157629e1e436791509526e0ce5
  Bug not present: 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160931/


  commit 9617d5f9c19d1d157629e1e436791509526e0ce5
  Author: Julien Grall <jgrall@amazon.com>
  Date:   Sat Feb 20 17:54:13 2021 +0000
  
      xen/arm: mm: flush_page_to_ram() only need to clean to PoC
      
      At the moment, flush_page_to_ram() is both cleaning and invalidate to
      PoC the page.
      
      The goal of flush_page_to_ram() is to prevent corruption when the guest
      has disabled the cache (the cache line may be dirty) and the guest to
      read previous content.
      
      Per this definition, the invalidating the line is not necessary. So
      invalidating the cache is unnecessary. In fact, it may be counter-
      productive as the line may be (speculatively) accessed a bit after.
      So this will incurr an expensive access to the memory.
      
      More generally, we should avoid interferring too much with cache.
      Therefore, flush_page_to_ram() is updated to only clean to PoC the page.
      
      The performance impact of this change will depend on your
      workload/processor.
      
      Signed-off-by: Julien Grall <jgrall@amazon.com>
      Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
      Acked-by: Stefano Stabellini <sstabellini@kernel.org>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-unstable/test-armhf-armhf-xl-multivcpu.guest-start--debian.repeat.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/xen-unstable/test-armhf-armhf-xl-multivcpu.guest-start--debian.repeat --summary-out=tmp/160931.bisection-summary --basis-template=160646 --blessings=real,real-bisect,real-retry xen-unstable test-armhf-armhf-xl-multivcpu guest-start/debian.repeat
Searching for failure / basis pass:
 160878 fail [host=arndale-bluewater] / 160646 [host=cubietruck-gleizes] 160630 [host=cubietruck-braque] 160581 [host=cubietruck-picasso] 160559 [host=arndale-metrocentre] 160537 [host=arndale-lakeside] 160517 ok.
Failure / basis pass flights: 160878 / 160517
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: xen git://xenbits.xen.org/xen.git
Latest a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
Basis pass a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 e680cc48b7184d3489873d6776f84ba1fc238ced
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9-a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/qemu-xen.git#7ea428895af2840d85c524f0bd11a38aac308308-7ea428895af2840d85c524f0bd11a38aac308308 git://xenbits.xen.org/xen.git#e680cc48b7184d3489873d6776f84ba1fc238ced-935d501\
 ccbf5b8c4db1f6d0730a4a4c998e9e76a
Loaded 5001 nodes in revision graph
Searching for test results:
 160471 [host=cubietruck-braque]
 160492 [host=arndale-westfield]
 160517 pass a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 e680cc48b7184d3489873d6776f84ba1fc238ced
 160537 [host=arndale-lakeside]
 160559 [host=arndale-metrocentre]
 160581 [host=cubietruck-picasso]
 160630 [host=cubietruck-braque]
 160646 [host=cubietruck-gleizes]
 160733 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 0435784cc75dcfef3b5f59c29deb1dbb84265ddb
 160745 blocked a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 0435784cc75dcfef3b5f59c29deb1dbb84265ddb
 160758 blocked a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 0435784cc75dcfef3b5f59c29deb1dbb84265ddb
 160776 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 0435784cc75dcfef3b5f59c29deb1dbb84265ddb
 160796 blocked a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 625faf9f002bd6ff4b6457a016b8ff338223b659
 160820 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 025eacc13f6147ffa99da5ecee4ed96e7fe8e887
 160850 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 025eacc13f6147ffa99da5ecee4ed96e7fe8e887
 160899 pass a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 e680cc48b7184d3489873d6776f84ba1fc238ced
 160901 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 025eacc13f6147ffa99da5ecee4ed96e7fe8e887
 160903 pass a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 c58fbc38d208f2046e077833fe2b071ff479d7e6
 160878 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
 160906 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 00948dcd6a5412695b42c6d5045b0d3075b14114
 160909 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
 160913 pass a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 0dc28066e9f0339ad8f4aea233cc5912139c5f79
 160915 pass a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
 160918 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 9617d5f9c19d1d157629e1e436791509526e0ce5
 160919 pass a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
 160921 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 9617d5f9c19d1d157629e1e436791509526e0ce5
 160925 pass a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
 160931 fail a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 9617d5f9c19d1d157629e1e436791509526e0ce5
Searching for interesting versions
 Result found: flight 160517 (pass), for basis pass
 For basis failure, parent search stopping at a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 625faf9f002bd6ff4b6457a016b8ff338223b659, results HASH(0x564fb28b8210) For basis failure, parent search stopping at a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 0435784cc75dcfef3b5f59c29deb1dbb84265ddb, results HASH(0x564fb28af148) HASH(0x564fb28b0b50) \
 For basis failure, parent search stopping at a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7, results HASH(0x564fb2935120) HASH(0x564fb28a2df0) HASH(0x564fb28aa510) For basis failure, parent search stopping at a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 0dc28066e9f0339ad8f4aea233cc5912139c5f79, results H\
 ASH(0x564fb2941b08) For basis failure, parent search stopping at a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 c58fbc38d208f2046e077833fe2b071ff479d7e6, results HASH(0x564fb2937188) For basis failure, parent search stopping at a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 e680cc48b7184d3489873d6776f84ba1fc238ced, results HASH(0x564fb28a6800) HA\
 SH(0x564fb28a2af0) Result found: flight 160733 (fail), for basis failure (at ancestor ~234)
 Repro found: flight 160899 (pass), for basis pass
 Repro found: flight 160909 (fail), for basis failure
 0 revisions at a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
No revisions left to test, checking graph state.
 Result found: flight 160915 (pass), for last pass
 Result found: flight 160918 (fail), for first failure
 Repro found: flight 160919 (pass), for last pass
 Repro found: flight 160921 (fail), for first failure
 Repro found: flight 160925 (pass), for last pass
 Repro found: flight 160931 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  9617d5f9c19d1d157629e1e436791509526e0ce5
  Bug not present: 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160931/


  commit 9617d5f9c19d1d157629e1e436791509526e0ce5
  Author: Julien Grall <jgrall@amazon.com>
  Date:   Sat Feb 20 17:54:13 2021 +0000
  
      xen/arm: mm: flush_page_to_ram() only need to clean to PoC
      
      At the moment, flush_page_to_ram() is both cleaning and invalidate to
      PoC the page.
      
      The goal of flush_page_to_ram() is to prevent corruption when the guest
      has disabled the cache (the cache line may be dirty) and the guest to
      read previous content.
      
      Per this definition, the invalidating the line is not necessary. So
      invalidating the cache is unnecessary. In fact, it may be counter-
      productive as the line may be (speculatively) accessed a bit after.
      So this will incurr an expensive access to the memory.
      
      More generally, we should avoid interferring too much with cache.
      Therefore, flush_page_to_ram() is updated to only clean to PoC the page.
      
      The performance impact of this change will depend on your
      workload/processor.
      
      Signed-off-by: Julien Grall <jgrall@amazon.com>
      Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
      Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Revision graph left in /home/logs/results/bisect/xen-unstable/test-armhf-armhf-xl-multivcpu.guest-start--debian.repeat.{dot,ps,png,html,svg}.
----------------------------------------
160931: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail baseline untested
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass


jobs:
 test-armhf-armhf-xl-multivcpu                                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 Apr 11 04:41:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 04:41:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108361.206839 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVRu9-0007cj-S9; Sun, 11 Apr 2021 04:41:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108361.206839; Sun, 11 Apr 2021 04: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 1lVRu9-0007cb-Ou; Sun, 11 Apr 2021 04:41:01 +0000
Received: by outflank-mailman (input) for mailman id 108361;
 Sun, 11 Apr 2021 04:41: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 1lVRu8-0007cQ-FF; Sun, 11 Apr 2021 04:41: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 1lVRu8-0005lH-33; Sun, 11 Apr 2021 04:41: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 1lVRu7-00029Y-PO; Sun, 11 Apr 2021 04:40:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVRu7-00060E-Oo; Sun, 11 Apr 2021 04:40: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=szm6gs7fGfoh4t3y9bJTLIHYrFK86FxuasmlUCYC7mw=; b=0vG7hqkHqMqleLkWMTVB1m87Bh
	Vau3YhkJQYJQHz7+b1BrvcDkgqZ/d7xnd+77f1aiOFtNJAQjv+l0SS/0dBG6yjXV7Zd6fn8GjkCz5
	rSoLlD1iuKClMBXfP88dzy+Nw4PHNz0ERS/e5tdUuIz+1Ak38yyro0Aj8DUgVRlSkT10=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160904-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 160904: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-amd64-amd64-examine:memdisk-try-append:fail:regression
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    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-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-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-seattle:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-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-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm: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-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-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-cubietruck: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-credit2: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-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a49e5ea5e0450a3feb1aaae2554dcbc3d20eee38
X-Osstest-Versions-That:
    linux=59c8e332926875d337f426fde14fec986faab414
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 04:40:59 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-examine      4 memdisk-try-append       fail REGR. vs. 160794

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160794

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160794
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160794
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160794
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160794
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160794
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160794
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160794
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160794
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160794
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160794
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160794
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-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-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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 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-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-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-vhd 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a49e5ea5e0450a3feb1aaae2554dcbc3d20eee38
baseline version:
 linux                59c8e332926875d337f426fde14fec986faab414

Last test of basis   160794  2021-04-07 13:10:38 Z    3 days
Testing same since   160904  2021-04-10 11:40:48 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alban Bedel <albeu@free.fr>
  Alexander Kobel <a-kobel@a-kobel.de>
  Alexei Starovoitov <ast@kernel.org>
  Andrew Morton <akpm@linux-foundation.org>
  Arnd Bergmann <arnd@arndb.de>
  Daniel Borkmann <daniel@iogearbox.net>
  David S. Miller <davem@davemloft.net>
  Esteve Varela Colominas <esteve.varela@gmail.com>
  Florian Fainelli <f.fainelli@gmail.com>
  Florian Westphal <fw@strlen.de>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Guenter Roeck <linux@roeck-us.net>
  Hans de Goede <hdegoede@redhat.com>
  Heiko Carstens <hca@linux.ibm.com>
  Hulk Robot <hulkrobot@huawei.com>
  Ingo Molnar <mingo@kernel.org>
  Jason Self <jason@bluehome.net>
  Johannes Berg <johannes.berg@intel.com>
  Karthikeyan Kathirvel <kathirve@codeaurora.org>
  Konrad Dybcio <konrad.dybcio@somainline.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Ludovic Senecaux <linuxludo@free.fr>
  Mans Rullgard <mans@mansr.com>
  Martin K. Petersen <martin.petersen@oracle.com>
  Martin Wilck <mwilck@suse.com>
  Masahiro Yamada <masahiroy@kernel.org>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Pavel Andrianov <andrianov@ispras.ru>
  Piotr Krysiuk <piotras@gmail.com>
  Rob Clark <robdclark@chromium.org>
  Ronnie Sahlberg <lsahlber@redhat.com>
  Saeed Mahameed <saeedm@nvidia.com>
  Sagi Grimberg <sagi@grimberg.me>
  Sasha Levin <sashal@kernel.org>
  Sergei Trofimovich <slyfox@gentoo.org>
  Shuah Khan <skhan@linuxfoundation.org>
  Steve French <stfrench@microsoft.com>
  Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
  Tariq Toukan <tariqt@nvidia.com>
  Tong Zhang <ztong0001@gmail.com>
  Tony Lindgren <tony@atomide.com>
  Vincent Whitchurch <vincent.whitchurch@axis.com>
  Yonghong Song <yhs@fb.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                              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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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 718 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 05:34:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 05:34:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108376.206874 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVSjl-0004Du-Cd; Sun, 11 Apr 2021 05:34:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108376.206874; Sun, 11 Apr 2021 05:34: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 1lVSjl-0004Dn-9W; Sun, 11 Apr 2021 05:34:21 +0000
Received: by outflank-mailman (input) for mailman id 108376;
 Sun, 11 Apr 2021 05:34:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Cnp7=JI=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVSjj-0004Di-VB
 for xen-devel@lists.xenproject.org; Sun, 11 Apr 2021 05:34:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c197115b-5a91-4d45-8207-3dcf9cf612da;
 Sun, 11 Apr 2021 05:34:18 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AE31CAEB6;
 Sun, 11 Apr 2021 05:34: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: c197115b-5a91-4d45-8207-3dcf9cf612da
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618119257; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=sG3BNuAw3+Fh0IlaF5NlAouMGBXgqhZROTRMgZgP8cw=;
	b=DaIkO0D4whttNxaKinpQhZ3dgEpvqyvmPSPZ9efROgO/xUrUQXNet6ETnDhpSD4CzFKTET
	0xy2c8UoQOG5QZv45oQppcz0vhOqU2kSLnpr9fuYKviHKucwojdf7gERvbIDe6UCNVRjIN
	/zFPBIo6FMR+ZkjX5BHxnx8UKaXLrxg=
Subject: Re: xenstore utils dropped support for -s in 4.15
To: Henrik Riomar <rio@riomar.se>, xen-devel@lists.xenproject.org
References: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>
From: Juergen Gross <jgross@suse.com>
Message-ID: <215bcc74-baff-6345-73ed-16f7da266a1b@suse.com>
Date: Sun, 11 Apr 2021 07:34:16 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="2dmD4BbUrtvlsodY5R1yhseiCJEwwWQ1T"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--2dmD4BbUrtvlsodY5R1yhseiCJEwwWQ1T
Content-Type: multipart/mixed; boundary="uDsvZhSRg6XDBko65kvXUX4dRgHBVx0eF";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Henrik Riomar <rio@riomar.se>, xen-devel@lists.xenproject.org
Message-ID: <215bcc74-baff-6345-73ed-16f7da266a1b@suse.com>
Subject: Re: xenstore utils dropped support for -s in 4.15
References: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>
In-Reply-To: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>

--uDsvZhSRg6XDBko65kvXUX4dRgHBVx0eF
Content-Type: multipart/mixed;
 boundary="------------B82B82BB0A73106FEE33F962"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------B82B82BB0A73106FEE33F962
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 11.04.21 00:02, Henrik Riomar wrote:
> Hi,
>=20
> In Alpine and Debian (probably elsewhere as well), the -s flag removed =
in these two commits:
>   * https://github.com/xen-project/xen/commit/fa06cb8c38832aafe597d7190=
40ba1d216e367b8
>   * https://github.com/xen-project/xen/commit/c65687ed16d2289ec91036ec2=
862a4b4bd34ea4f
> is actually used in the init scripts.
>=20
> On one of the systems I tested 4.15 on things just hangs due to this:
> 2222  open("/lib/libxentoolcore.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) =
=3D -1 ENOENT (No such file or directory)
> 2222  open("/usr/local/lib/libxentoolcore.so.1", O_RDONLY|O_LARGEFILE|O=
_CLOEXEC) =3D -1 ENOENT (No such file or directory)
> 2222  open("/usr/lib/libxentoolcore.so.1", O_RDONLY|O_LARGEFILE|O_CLOEX=
EC) =3D 3
> 2222  fcntl(3, F_SETFD, FD_CLOEXEC)     =3D 0
> 2222  fstat(3, {st_mode=3DS_IFREG|0755, st_size=3D14072, ...}) =3D 0
> 2222  read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\20\0\=
0\0\0\0\0"..., 960) =3D 960
> 2222  mmap(NULL, 20480, PROT_READ, MAP_PRIVATE, 3, 0) =3D 0x7f9925c0200=
0
> 2222  mmap(0x7f9925c03000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_F=
IXED, 3, 0x1000) =3D 0x7f9925c03000
> 2222  mmap(0x7f9925c04000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED, 3, 0=
x2000) =3D 0x7f9925c04000
> 2222  mmap(0x7f9925c05000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_=
FIXED, 3, 0x2000) =3D 0x7f9925c05000
> 2222  close(3)                          =3D 0
> 2222  mprotect(0x7f9925c0f000, 4096, PROT_READ) =3D 0
> 2222  mprotect(0x7f9925ca6000, 4096, PROT_READ) =3D 0
> 2222  mprotect(0x7f9925c05000, 4096, PROT_READ) =3D 0
> 2222  mprotect(0x5601e65dc000, 4096, PROT_READ) =3D 0
> 2222  stat("/var/run/xenstored/socket", 0x7ffd95b9f080) =3D -1 ENOENT (=
No such file or directory)
> 2222  access("/dev/xen/xenbus", F_OK)   =3D 0
> 2222  stat("/dev/xen/xenbus", {st_mode=3DS_IFCHR|0600, st_rdev=3Dmakede=
v(0xa, 0x3e), ...}) =3D 0
> 2222  open("/dev/xen/xenbus", O_RDWR|O_LARGEFILE) =3D 3
> 2222  rt_sigaction(SIGPIPE, {sa_handler=3DSIG_IGN, sa_mask=3D[], sa_fla=
gs=3DSA_RESTORER, sa_restorer=3D0x7f9925c59c4b}, {sa_handler=3DSIG_DFL, s=
a_mask=3D[], sa_flags=3D0}, 8) =3D 0
> 2222  write(3, "\2\0\0\0\0\0\0\0\0\0\0\0\2\0\0\0", 16) =3D 16
> 2222  write(3, "/\0", 2)                =3D 2
> 2222  read(3,
>=20
> Reverting the two commits mentioned above restores a booting system.
>=20
> The -s flag was introduced in 2005 or so, so I guess you can say that d=
ropping it should
> at least be mentioned in the release notices, and an alternative be des=
cribed, or
> -s functionally should be brought back.

The -s served exactly no purpose.

It was meant to force socket usage. A socket will be used anyway in
case xenstored is running in dom0, so specifying -s won't change
anything in this case. In case xenstored is running in a stubdom
specifying -s will result in the utility NOT working, as there is
no socket connection to xenstored available.


Juergen

--------------B82B82BB0A73106FEE33F962
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------B82B82BB0A73106FEE33F962--

--uDsvZhSRg6XDBko65kvXUX4dRgHBVx0eF--

--2dmD4BbUrtvlsodY5R1yhseiCJEwwWQ1T
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmByilgFAwAAAAAACgkQsN6d1ii/Ey9v
qQf/UZCbtmC3lNDeo1F/4iZRuePBgdLlz0Jx8yYTDPwYHYDj/V++IyBrWTRgCsl7M5qXzmXmQTgi
mP8Yb55/xn0xeNkcaDzMTo2G6pyLjHaddebr5UxYlZNDmdDVBi2fm4bGXRRE4w6WJXhl+d3D34fN
ON2aKvcS1L2N2zkgdS9RM2GXgEMfudV9rEbhrL/oyuNwm3PX1y/cyBhKO7V1EcroLj5r1ZV3dof4
M+suUofFwj1h1Bp3HUnqpxPMUYDR16ZbvRQFLujgNaFM/8+KUBTkEFFapJQQYhjRc34KC7CKB2Fk
gHOcU1ezzO0/E38c2pYKwROXrikfdOVmauOlWwkDzA==
=9sJd
-----END PGP SIGNATURE-----

--2dmD4BbUrtvlsodY5R1yhseiCJEwwWQ1T--


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 07:17:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 07:17:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108406.206961 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVULk-0004xw-P7; Sun, 11 Apr 2021 07:17:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108406.206961; Sun, 11 Apr 2021 07: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 1lVULk-0004xp-M8; Sun, 11 Apr 2021 07:17:40 +0000
Received: by outflank-mailman (input) for mailman id 108406;
 Sun, 11 Apr 2021 07:17:39 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+bzv=JI=riomar.se=rio@srs-us1.protection.inumbo.net>)
 id 1lVULj-0004xk-4o
 for xen-devel@lists.xenproject.org; Sun, 11 Apr 2021 07:17:39 +0000
Received: from mail2.riocities.com (unknown [185.20.14.89])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4c213d6b-40b5-4096-a4f0-47b1c22e9e1c;
 Sun, 11 Apr 2021 07:17:36 +0000 (UTC)
Received: from mail.riomar.se (81-230-197-241-no510.tbcn.telia.com
 [81.230.197.241])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client did not present a certificate)
 by mail2.riocities.com (Postfix) with ESMTPSA id 836A4400B5;
 Sun, 11 Apr 2021 09:17: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: 4c213d6b-40b5-4096-a4f0-47b1c22e9e1c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=riomar.se; s=mail;
	t=1618125455; bh=4ArJ6D+Yj7veNgG6lempBp9ryVszW2kwiBMlSbVGz0w=;
	h=Date:From:To:Subject:In-Reply-To:References:From;
	b=w+03JBly4kfdz9QrRCTID1K1Ik1hydeiSWwj6rFHGbdfba/71UHNmENC1lgYToKoY
	 mcRNNDqmHkBsq/aQf89xROzcd37NNYlAX1fnzwW3CGQN7ieJJEzRHGQMuYJuYqR2IR
	 n3NeS7Zd2DDjZl3Z2i/LzgXFUSovRgk3r60/G34Q=
Date: Sun, 11 Apr 2021 09:17:34 +0200
From: Henrik Riomar <rio@riomar.se>
To: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org
Subject: Re: xenstore utils dropped support for -s in 4.15
Message-Id: <20210411091734.09ef653bf97aa954fecac079@riomar.se>
In-Reply-To: <215bcc74-baff-6345-73ed-16f7da266a1b@suse.com>
References: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>
	<215bcc74-baff-6345-73ed-16f7da266a1b@suse.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Sun, 11 Apr 2021 07:34:16 +0200
Juergen Gross <jgross@suse.com> wrote:

> On 11.04.21 00:02, Henrik Riomar wrote:
> > Hi,
> > 
> > In Alpine and Debian (probably elsewhere as well), the -s flag removed in these two commits:
> >   * https://github.com/xen-project/xen/commit/fa06cb8c38832aafe597d719040ba1d216e367b8
> >   * https://github.com/xen-project/xen/commit/c65687ed16d2289ec91036ec2862a4b4bd34ea4f
> > is actually used in the init scripts.

> > Reverting the two commits mentioned above restores a booting system.
> > 
> > The -s flag was introduced in 2005 or so, so I guess you can say that dropping it should
> > at least be mentioned in the release notices, and an alternative be described, or
> > -s functionally should be brought back.
> 
> The -s served exactly no purpose.

yes its used by dists to check that the socket is actually accessible (without falling back to 
direct access to /dev/xen/xenbus).

> 
> It was meant to force socket usage. A socket will be used anyway in
> case xenstored is running in dom0, so specifying -s won't change
> anything in this case. 

yes reverting the to commits above and using -s, brings back the original behavior, returning
with failure if the socket is not there.

There are two issues here I think:
 1. dists actually use -s to check if the daemon is up (and been doing this for a long time)
 2. Reads of /dev/xen/xenbus (via xenstore-read -s /), blocks for ever in 4.15

/ Henrik



From xen-devel-bounces@lists.xenproject.org Sun Apr 11 08:06:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 08:06:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108423.207001 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVV7E-0001cW-31; Sun, 11 Apr 2021 08:06:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108423.207001; Sun, 11 Apr 2021 08: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 1lVV7D-0001cP-VF; Sun, 11 Apr 2021 08:06:43 +0000
Received: by outflank-mailman (input) for mailman id 108423;
 Sun, 11 Apr 2021 08:06: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 1lVV7C-0001cH-EX; Sun, 11 Apr 2021 08:06: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 1lVV7C-0001We-5S; Sun, 11 Apr 2021 08:06: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 1lVV7C-0003hh-0M; Sun, 11 Apr 2021 08:06:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVV7B-0004Cq-W1; Sun, 11 Apr 2021 08:06: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=1RE2XyjjWb8hsMf5d3FfIazfMS/1mY2MNvadYQkTj2E=; b=Om/BxT6bwzCol5a1RR7xocPltH
	F4F5J6xGKN1tTI0Jzsu2/q0O1YfESJqWBb3tY94DZKeDA/ta/QXnKB3nlLxGtze1o0x061uj7dkrP
	Lk/3IbPqZl6KQcYis1Qhm8pZxPBKZJPsY72vRTaAU1qiDaGp7HBUtq8KQo0TKpitVm30=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160912-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160912: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start.2:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:regression
    xen-unstable:test-amd64-i386-libvirt-xsm:guest-start.2:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    xen-unstable:test-xtf-amd64-amd64-3:xtf/test-pv32pae-xsa-286:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:guest-saverestore:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check: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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-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-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-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 08:06:41 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-libvirt    18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-credit2  19 guest-start.2  fail in 160878 REGR. vs. 160646
 test-armhf-armhf-xl-vhd   12 debian-di-install fail in 160878 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-xsm  21 guest-start.2    fail in 160878 pass in 160912
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 18 guest-localmigrate/x10 fail in 160878 pass in 160912
 test-amd64-amd64-examine    4 memdisk-try-append fail in 160878 pass in 160912
 test-armhf-armhf-libvirt      8 xen-boot         fail in 160878 pass in 160912
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 160878 pass in 160912
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 160878 pass in 160912
 test-armhf-armhf-libvirt-raw 13 guest-start      fail in 160878 pass in 160912
 test-xtf-amd64-amd64-3       92 xtf/test-pv32pae-xsa-286   fail pass in 160878
 test-armhf-armhf-xl-vhd       8 xen-boot                   fail pass in 160878
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10     fail pass in 160878
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 15 guest-saverestore fail pass in 160878
 test-armhf-armhf-xl          14 guest-start                fail pass in 160878
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat  fail pass in 160878
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 160878
 test-armhf-armhf-xl-rtds      8 xen-boot                   fail pass in 160878

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160878 REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl         15 migrate-support-check fail in 160878 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 160878 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160878 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160878 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160646
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z    9 days
Failing since        160665  2021-04-02 07:40:09 Z    9 days   13 attempts
Testing same since   160878  2021-04-09 19:07:54 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@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                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  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                                  fail    
 test-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 09:18:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 09:18:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108462.207048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVWDy-0007xh-Jf; Sun, 11 Apr 2021 09:17:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108462.207048; Sun, 11 Apr 2021 09: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 1lVWDy-0007xa-Gh; Sun, 11 Apr 2021 09:17:46 +0000
Received: by outflank-mailman (input) for mailman id 108462;
 Sun, 11 Apr 2021 09:17:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Cnp7=JI=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVWDx-0007xH-G6
 for xen-devel@lists.xenproject.org; Sun, 11 Apr 2021 09:17:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f8e70298-4031-4f8a-8956-f564ea989275;
 Sun, 11 Apr 2021 09:17:40 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2D9B9AFF2;
 Sun, 11 Apr 2021 09:17: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: f8e70298-4031-4f8a-8956-f564ea989275
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618132659; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=b6qKTX4U+P8eIBSCQ9/a38BaJ+KdtHlxjPKsP0Nitt0=;
	b=OfcsV+Li0qzcaUTHbRj/T+EjeE/vmPx9zGsdZ7m5VzwxXFSVEWuptwmCuUR93/OjGwlNUq
	TBZfdfFQ8OLTZSvJqWj9Q5npIrTD5V07fxEWAj3XK0MidxIPdcN0orHZgXDn/1l0Jfva0E
	E7VioFly0+cZQFPxiszUE00CWmSKrG4=
To: Henrik Riomar <rio@riomar.se>, xen-devel@lists.xenproject.org
References: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>
 <215bcc74-baff-6345-73ed-16f7da266a1b@suse.com>
 <20210411091734.09ef653bf97aa954fecac079@riomar.se>
From: Juergen Gross <jgross@suse.com>
Subject: Re: xenstore utils dropped support for -s in 4.15
Message-ID: <6340da5e-a604-1ca3-4d89-0319e6ad12bc@suse.com>
Date: Sun, 11 Apr 2021 11:17:38 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210411091734.09ef653bf97aa954fecac079@riomar.se>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="RBVSZ9FOou4IG8EHNk4ao9PbbOFcNALsr"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--RBVSZ9FOou4IG8EHNk4ao9PbbOFcNALsr
Content-Type: multipart/mixed; boundary="rt6Q2NZr27bAseCrqP4moGCyEt0xZwtwn";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Henrik Riomar <rio@riomar.se>, xen-devel@lists.xenproject.org
Message-ID: <6340da5e-a604-1ca3-4d89-0319e6ad12bc@suse.com>
Subject: Re: xenstore utils dropped support for -s in 4.15
References: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>
 <215bcc74-baff-6345-73ed-16f7da266a1b@suse.com>
 <20210411091734.09ef653bf97aa954fecac079@riomar.se>
In-Reply-To: <20210411091734.09ef653bf97aa954fecac079@riomar.se>

--rt6Q2NZr27bAseCrqP4moGCyEt0xZwtwn
Content-Type: multipart/mixed;
 boundary="------------523A5D97509BF6EA1BFB34FE"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------523A5D97509BF6EA1BFB34FE
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 11.04.21 09:17, Henrik Riomar wrote:
> On Sun, 11 Apr 2021 07:34:16 +0200
> Juergen Gross <jgross@suse.com> wrote:
>=20
>> On 11.04.21 00:02, Henrik Riomar wrote:
>>> Hi,
>>>
>>> In Alpine and Debian (probably elsewhere as well), the -s flag remove=
d in these two commits:
>>>    * https://github.com/xen-project/xen/commit/fa06cb8c38832aafe597d7=
19040ba1d216e367b8
>>>    * https://github.com/xen-project/xen/commit/c65687ed16d2289ec91036=
ec2862a4b4bd34ea4f
>>> is actually used in the init scripts.
>=20
>>> Reverting the two commits mentioned above restores a booting system.
>>>
>>> The -s flag was introduced in 2005 or so, so I guess you can say that=
 dropping it should
>>> at least be mentioned in the release notices, and an alternative be d=
escribed, or
>>> -s functionally should be brought back.
>>
>> The -s served exactly no purpose.
>=20
> yes its used by dists to check that the socket is actually accessible (=
without falling back to
> direct access to /dev/xen/xenbus).

There are Xen configurations where the socket is never accessible,
as it is not existing.

>> It was meant to force socket usage. A socket will be used anyway in
>> case xenstored is running in dom0, so specifying -s won't change
>> anything in this case.
>=20
> yes reverting the to commits above and using -s, brings back the origin=
al behavior, returning
> with failure if the socket is not there.

And returning failure when Xenstore is running fine, but not in dom0.

> There are two issues here I think:
>   1. dists actually use -s to check if the daemon is up (and been doing=
 this for a long time)

This should be changed, as it is based on wrong assumptions.

>   2. Reads of /dev/xen/xenbus (via xenstore-read -s /), blocks for ever=
 in 4.15

So you are basically saying that you'd like to have a test "is Xenstore
running", and this test should work with the "-s" flag.

I can look into that, but reverting the "access via socket" removal flag
is not the way to go.


Juergen

--------------523A5D97509BF6EA1BFB34FE
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------523A5D97509BF6EA1BFB34FE--

--rt6Q2NZr27bAseCrqP4moGCyEt0xZwtwn--

--RBVSZ9FOou4IG8EHNk4ao9PbbOFcNALsr
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmByvrIFAwAAAAAACgkQsN6d1ii/Ey+7
fQf/bI9jbWeY6sR0K3iTTFZjUdwQje4z1bTr5N8Kxx0/pdCBPS1qPO6NAys4P3235AyQuJlP/MeK
x1qhcIqnfEBsa4Obb/TXjiA3RNU20Xdn29pwmNUmij4j7kPpxfLwo5nLMPUu3cUvUNonjK4cFPZ7
9WzPUbDSHEgoQAjO/4nNo///zo30pMwgW5Vn9vUCQIbdOoyz9YzGEEVvS05zzzm08DZ8qdpGkOEe
KcQKA2HMbDfJe5ZLTnuMuaxqK48l6ICmON5/8TRmdraH/wtk36h7u9dC6gVoLMDbCRig10EPmjKH
ZnR0/RukP4f/6SzbdiTgpqalbXJ3urM/SHuNKh7E7g==
=QkWE
-----END PGP SIGNATURE-----

--RBVSZ9FOou4IG8EHNk4ao9PbbOFcNALsr--


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 09:48:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 09:48:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108481.207078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVWht-0002L5-AY; Sun, 11 Apr 2021 09:48:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108481.207078; Sun, 11 Apr 2021 09:48: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 1lVWht-0002Ky-7d; Sun, 11 Apr 2021 09:48:41 +0000
Received: by outflank-mailman (input) for mailman id 108481;
 Sun, 11 Apr 2021 09:48: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 1lVWhs-0002Kq-As; Sun, 11 Apr 2021 09:48: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 1lVWhs-00039A-66; Sun, 11 Apr 2021 09:48: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 1lVWhr-0008Pu-TW; Sun, 11 Apr 2021 09:48:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVWhr-0004bX-T2; Sun, 11 Apr 2021 09:48: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=wZ5+ZvnRvvoTt5qLzrHMii7e23+pSpOr0OSfteRTKtQ=; b=2vgcSTeB+l4fIkMj6jf/QEhr2L
	BRL7VVNiLAfB3UjLmwz/9Krkvc4ETLnCA4E2lX5crzotTEY7kSoig4DYoHQnI0VpDMil9dYuf6o4r
	Zd3JgKyhK9oaAEppyd697CFvZIyiys3IrB4H5o6klAiFJPfl883a+gFUff0oKJrqu1Kk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160967-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-coverity test] 160967: all pass - PUSHED
X-Osstest-Versions-This:
    xen=935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
X-Osstest-Versions-That:
    xen=19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 09:48:39 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xen                  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
baseline version:
 xen                  19be4d56a1f7aa65eb4d92276fa5d386e9cb2a62

Last test of basis   160790  2021-04-07 09:18:32 Z    4 days
Testing same since   160967  2021-04-11 09:18:29 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Julien Grall <jgrall@amazon.com>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Tim Deegan <tim@xen.org>

jobs:
 coverity-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/xen.git
   19be4d56a1..935d501ccb  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a -> coverity-tested/smoke


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 11:34:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 11:34:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108513.207148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVYM6-0003kD-3P; Sun, 11 Apr 2021 11:34:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108513.207148; Sun, 11 Apr 2021 11: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 1lVYM6-0003k6-00; Sun, 11 Apr 2021 11:34:18 +0000
Received: by outflank-mailman (input) for mailman id 108513;
 Sun, 11 Apr 2021 11:34: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 1lVYM4-0003jy-Iq; Sun, 11 Apr 2021 11:34: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 1lVYM4-0004vl-9P; Sun, 11 Apr 2021 11:34: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 1lVYM4-0006HE-2T; Sun, 11 Apr 2021 11:34:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVYM4-0008Ba-20; Sun, 11 Apr 2021 11:34: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=WGnPUlLsPlzuOvnO8+yyY+BDZugXI2BOj+0Zuu/l0Ms=; b=RmBkpF/1JGMqWTqLn68/ypztHh
	M/A97uL7rv+AoKeEJeC2vMI55173oAmFvweQwArfXvf/LrhL1fcmmVwNZ/xshT+JWXp2avdgaFewC
	LMRKMNPGW9z5gYSX2v2bmOWbbJ5f5I5rcYGrcdRexyn+805ioI8ROsaWzCfVTP6/YoLY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160916-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160916: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-vhd:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=836b36af9340c42d5a6642070d99944329e388bc
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 11:34:16 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-vhd 16 guest-saverestore        fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                836b36af9340c42d5a6642070d99944329e388bc
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  234 days
Failing since        152659  2020-08-21 14:07:39 Z  232 days  435 attempts
Testing same since   160916  2021-04-10 18:26:10 Z    0 days    1 attempts

------------------------------------------------------------
475 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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                                 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 141643 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 14:51:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 14:51:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108588.207259 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVbQb-0004v9-Sl; Sun, 11 Apr 2021 14:51:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108588.207259; Sun, 11 Apr 2021 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 1lVbQb-0004v2-PX; Sun, 11 Apr 2021 14:51:09 +0000
Received: by outflank-mailman (input) for mailman id 108588;
 Sun, 11 Apr 2021 14:51: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 1lVbQb-0004uu-29; Sun, 11 Apr 2021 14:51: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 1lVbQa-00088m-QI; Sun, 11 Apr 2021 14:51: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 1lVbQa-0001Tn-JJ; Sun, 11 Apr 2021 14:51:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVbQa-0002UY-GM; Sun, 11 Apr 2021 14:51:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ekSNi6+LGxeWyuTc9YbekMsxGh1srnHUOwTQUW2Yatg=; b=r3UWPeGlI33VMPu/DJcmvFwiZU
	pFGwaTYNR03Iiy8+MNdGDu0sCL7yktOc0ehXkg4FX2JfohMRxW3bYtO9A46YsndlKWlsnhpa7jv6n
	n+4BA87vrBQ9PFzmrHeFf6QBwX0lgoIhzFgHi08eaE0nYsja8/BeOsJgNdf0W5tUxVwM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160937-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 160937: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=e2f82a3704f680fbb37a733476d870c19232c23e
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 14:51:08 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              e2f82a3704f680fbb37a733476d870c19232c23e
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  275 days
Failing since        151818  2020-07-11 04:18:52 Z  274 days  267 attempts
Testing same since   160890  2021-04-10 04:19:55 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 18:08:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 18:08:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108669.207378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVeVZ-0005XS-Pc; Sun, 11 Apr 2021 18:08:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108669.207378; Sun, 11 Apr 2021 18:08:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVeVZ-0005XL-MF; Sun, 11 Apr 2021 18:08:29 +0000
Received: by outflank-mailman (input) for mailman id 108669;
 Sun, 11 Apr 2021 18:08: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 1lVeVX-0005X8-RI; Sun, 11 Apr 2021 18:08: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 1lVeVX-0003hc-Hq; Sun, 11 Apr 2021 18:08: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 1lVeVX-0000hi-9U; Sun, 11 Apr 2021 18:08:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVeVX-0002Hr-90; Sun, 11 Apr 2021 18:08:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=X1zzQJtCb0ZVEWfFOPqtEPHNC9eXYDAcn87elqUGJnI=; b=WILPOoFU866Na3VaexxduH71jB
	Ioll3sBw+XjT48vn1eV1FvLOvKAd+vQxIXymEQHnIeD9KOCCkVN+MGK0HGzfdvHQ6uocrp+S5LuwI
	q5L16gIqtgRXJWHHm6PszWVjJRwlQBhe0yUEJGve+FGH0bmVRwZPtfrqV2/vgqMe2zAc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160926-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 160926: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 18:08:27 +0000

flight 160926 xen-4.12-testing real [real]
flight 161009 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/160926/
http://logs.test-lab.xenproject.org/osstest/logs/161009/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 160831 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail in 160831 pass in 160926
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 160831

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-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-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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   54 days
Failing since        160128  2021-03-18 14:36:18 Z   24 days   30 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   22 days   28 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 18:34:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 18:34:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108683.207406 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVeub-0008D4-AF; Sun, 11 Apr 2021 18:34:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108683.207406; Sun, 11 Apr 2021 18:34: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 1lVeub-0008Cx-6y; Sun, 11 Apr 2021 18:34:21 +0000
Received: by outflank-mailman (input) for mailman id 108683;
 Sun, 11 Apr 2021 18:34: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 1lVeua-0008Cp-1k; Sun, 11 Apr 2021 18:34: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 1lVeuZ-00046A-Ns; Sun, 11 Apr 2021 18:34: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 1lVeuZ-0001yw-Fr; Sun, 11 Apr 2021 18:34:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVeuZ-0005Pa-FN; Sun, 11 Apr 2021 18:34: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:Message-Id:Subject:To;
	bh=+7bV2arNEApigXL9fKg2M5F/7ufP+HJa5/KmkUL+gBg=; b=vAiVJ7vXWaYHTaDdcAd+SpFV6I
	+Jzhj4tHAgK7y3XiXhL7n+yEa77xfH4hHFWSpVnmlAiiFkePzHTZHKOIzHMScoyC/Fq4rXYAkviln
	5tPIy6KdZ/U/Fo5HZzTGoMWfynB5YVzN8mWbGJY9u5ZO46Ri2Fg65VjSLYu1y8yeZT+w=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-i386-xl-qemuu-ovmf-amd64
Message-Id: <E1lVeuZ-0005Pa-FN@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 18:34:19 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-i386-xl-qemuu-ovmf-amd64
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161012/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-ovmf-amd64.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-ovmf-amd64.guest-saverestore --summary-out=tmp/161012.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-xl-qemuu-ovmf-amd64 guest-saverestore
Searching for failure / basis pass:
 160916 fail [host=albana1] / 160125 [host=pinot0] 160119 [host=fiano1] 160113 [host=fiano0] 160104 [host=chardonnay1] 160097 ok.
Failure / basis pass flights: 160916 / 160097
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 836b36af9340c42d5a6642070d99944329e388bc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#2615a5e433aeb812c300d3a48e1a88e1303e2339-836b36af9340c42d5a6642070d99944329e388bc git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#b4011741e6b39a8fd0ed5aded96c16c45ead5888-b0976d5c0441378b6348f5bfedbf431055bd0147
Loaded 35138 nodes in revision graph
Searching for test results:
 160091 [host=albana0]
 160097 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160104 [host=chardonnay1]
 160113 [host=fiano0]
 160119 [host=fiano1]
 160125 [host=pinot0]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160748 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160779 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160801 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160827 fail irrelevant
 160851 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 dc4d42302c22f012d78f6495ea23ceaa3e23842e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d8724020dd13c88a72fc391a6a2cf63abbd3dcca b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160883 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 471387aa1446e2583f372f79327cc0a8c802b4b4 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160914 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160917 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 471387aa1446e2583f372f79327cc0a8c802b4b4 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160920 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160922 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160924 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1db136a29ce8594b693938ab8e788d8bcef54770 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160927 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 24e13a4dc1eb1630eceffc7ab334145d902e763d b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160930 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 69259911f948ad2755bd1f2c999dd60ac322c890 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160933 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160935 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2e51b27fed31eb7b2a2cb4245806c8c7859207f7 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ee2e67da8f882fcdef2c49fcc58e9962aa695f5a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160941 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f9c53a69edeb94ae8c65276b885c1a7efe4f613a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160949 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8becb36063fb14df1e3ae4916215667e2cb65fa2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160956 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160962 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160969 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160916 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 836b36af9340c42d5a6642070d99944329e388bc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160975 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160984 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160992 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 836b36af9340c42d5a6642070d99944329e388bc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160999 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161006 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161012 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160097 (pass), for basis pass
 Result found: flight 160916 (fail), for basis failure
 Repro found: flight 160984 (pass), for basis pass
 Repro found: flight 160992 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 160962 (pass), for last pass
 Result found: flight 160969 (fail), for first failure
 Repro found: flight 160975 (pass), for last pass
 Repro found: flight 160999 (fail), for first failure
 Repro found: flight 161006 (pass), for last pass
 Repro found: flight 161012 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161012/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-ovmf-amd64.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
161012: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail baseline untested


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



From xen-devel-bounces@lists.xenproject.org Sun Apr 11 19:21:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 19:21:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108703.207441 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVfeK-0004FS-Bw; Sun, 11 Apr 2021 19:21:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108703.207441; Sun, 11 Apr 2021 19:21: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 1lVfeK-0004FL-90; Sun, 11 Apr 2021 19:21:36 +0000
Received: by outflank-mailman (input) for mailman id 108703;
 Sun, 11 Apr 2021 19:21: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 1lVfeI-0004FD-72; Sun, 11 Apr 2021 19:21: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 1lVfeH-0004qi-VG; Sun, 11 Apr 2021 19:21: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 1lVfeH-00058r-MR; Sun, 11 Apr 2021 19:21:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVfeH-0001ER-Lw; Sun, 11 Apr 2021 19:21: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=8GI0ApFkypioJROuNxRGXi5c4YeXWBdrPuAG0DSB/FY=; b=u/Y83hvDGR9tSLOagVnu62QhDK
	c3mDyzxhoYAWxhZGYB3pH1psrAZh37NusEvp3n4+QkXmOsTmlm+itZ/MQSqy6Js131641EO8Lnlfc
	bZyIQVZBh6jAkZCbUgWumLn/UNyUQav/ynFN7dnFiEmWPZgy4gwubvR14YWAIljtMLYU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160929-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 160929: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-examine:memdisk-try-append:fail:regression
    linux-linus:test-amd64-amd64-qemuu-freebsd12-amd64:guest-start/freebsd.repeat:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=52e44129fba5cfc4e351fdb5e45849afc74d9a53
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 19:21:33 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-armhf-armhf-libvirt-raw  8 xen-boot                 fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-examine      4 memdisk-try-append       fail REGR. vs. 152332
 test-amd64-amd64-qemuu-freebsd12-amd64 21 guest-start/freebsd.repeat fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     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                52e44129fba5cfc4e351fdb5e45849afc74d9a53
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  253 days
Failing since        152366  2020-08-01 20:49:34 Z  252 days  428 attempts
Testing same since   160929  2021-04-11 00:09:51 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1325003 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 11 21:27:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 11 Apr 2021 21:27:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108742.207511 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVhcM-0006Xh-5N; Sun, 11 Apr 2021 21:27:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108742.207511; Sun, 11 Apr 2021 21: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 1lVhcM-0006Xa-1b; Sun, 11 Apr 2021 21:27:42 +0000
Received: by outflank-mailman (input) for mailman id 108742;
 Sun, 11 Apr 2021 21:27: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 1lVhcK-0006XS-6O; Sun, 11 Apr 2021 21:27: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 1lVhcJ-0006vd-Ud; Sun, 11 Apr 2021 21:27: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 1lVhcJ-0004KP-Jl; Sun, 11 Apr 2021 21:27:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVhcJ-00014h-JE; Sun, 11 Apr 2021 21:27: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=WwnKNaeECCmoExMu3LoPRrfRFzAL+oyJPc/r8BUMtIk=; b=sWZi5I5N02iIu/mdcK52wtFKjz
	nM/xGn+AaxPSEkKXZ3tDSwWWgZJPUeDoGrwGEuJclRiMH8Uusu+/jDE3+gp37Fj7zdftQ0tMVU3ri
	+XMndF0+5SgWDEkl8iNsWSyGNAW5yp9ahHQhXEC4LtCsJhDaXeUWpYjJK1u5h2V013gA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160939-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 160939: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    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-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt: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-seattle:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-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-qemuu-debianhvm-amd64-xsm: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-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-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-cubietruck: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-credit2: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-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a49e5ea5e0450a3feb1aaae2554dcbc3d20eee38
X-Osstest-Versions-That:
    linux=59c8e332926875d337f426fde14fec986faab414
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 11 Apr 2021 21:27:39 +0000

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

Failures :-/ but no regressions.

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160794

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160794
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160794
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160794
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160794
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160794
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160794
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160794
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160794
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160794
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160794
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160794
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-vhd 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a49e5ea5e0450a3feb1aaae2554dcbc3d20eee38
baseline version:
 linux                59c8e332926875d337f426fde14fec986faab414

Last test of basis   160794  2021-04-07 13:10:38 Z    4 days
Testing same since   160904  2021-04-10 11:40:48 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alban Bedel <albeu@free.fr>
  Alexander Kobel <a-kobel@a-kobel.de>
  Alexei Starovoitov <ast@kernel.org>
  Andrew Morton <akpm@linux-foundation.org>
  Arnd Bergmann <arnd@arndb.de>
  Daniel Borkmann <daniel@iogearbox.net>
  David S. Miller <davem@davemloft.net>
  Esteve Varela Colominas <esteve.varela@gmail.com>
  Florian Fainelli <f.fainelli@gmail.com>
  Florian Westphal <fw@strlen.de>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Guenter Roeck <linux@roeck-us.net>
  Hans de Goede <hdegoede@redhat.com>
  Heiko Carstens <hca@linux.ibm.com>
  Hulk Robot <hulkrobot@huawei.com>
  Ingo Molnar <mingo@kernel.org>
  Jason Self <jason@bluehome.net>
  Johannes Berg <johannes.berg@intel.com>
  Karthikeyan Kathirvel <kathirve@codeaurora.org>
  Konrad Dybcio <konrad.dybcio@somainline.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Ludovic Senecaux <linuxludo@free.fr>
  Mans Rullgard <mans@mansr.com>
  Martin K. Petersen <martin.petersen@oracle.com>
  Martin Wilck <mwilck@suse.com>
  Masahiro Yamada <masahiroy@kernel.org>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Pavel Andrianov <andrianov@ispras.ru>
  Piotr Krysiuk <piotras@gmail.com>
  Rob Clark <robdclark@chromium.org>
  Ronnie Sahlberg <lsahlber@redhat.com>
  Saeed Mahameed <saeedm@nvidia.com>
  Sagi Grimberg <sagi@grimberg.me>
  Sasha Levin <sashal@kernel.org>
  Sergei Trofimovich <slyfox@gentoo.org>
  Shuah Khan <skhan@linuxfoundation.org>
  Steve French <stfrench@microsoft.com>
  Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
  Tariq Toukan <tariqt@nvidia.com>
  Tong Zhang <ztong0001@gmail.com>
  Tony Lindgren <tony@atomide.com>
  Vincent Whitchurch <vincent.whitchurch@axis.com>
  Yonghong Song <yhs@fb.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                              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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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
   59c8e3329268..a49e5ea5e045  a49e5ea5e0450a3feb1aaae2554dcbc3d20eee38 -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 03:31:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 03:31:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108779.207544 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVnI2-0003T4-Ga; Mon, 12 Apr 2021 03:31:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108779.207544; Mon, 12 Apr 2021 03: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 1lVnI2-0003Sv-Ac; Mon, 12 Apr 2021 03:31:06 +0000
Received: by outflank-mailman (input) for mailman id 108779;
 Mon, 12 Apr 2021 03: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 1lVnI1-0003Sn-1u; Mon, 12 Apr 2021 03: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 1lVnI0-0002fm-Q9; Mon, 12 Apr 2021 03:31: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 1lVnI0-0005Jo-Hh; Mon, 12 Apr 2021 03:31:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVnI0-00028w-HF; Mon, 12 Apr 2021 03: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=kLjnR214MKjs6Zufn65wNMURGRXiEnGZIfD5BbUY4gw=; b=Ec5FvIFCEffkYQUlpcfC4/q7Xz
	Uv5ADx5bbyy3BmxSG4eGuSuIuLtZGkYobMqqxYl4oydUCpOvdK0lvz9yZpy45k6Gs8jBXT/VPM7Kz
	OnII0kz3QJvicDPBYiEcI5+nsXSvh2V1p2Apo2N8+v1uY7erfElHfLxW8OWN7vE39mKs=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160960-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 160960: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start.2:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:regression
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-xsm:guest-start.2:fail:heisenbug
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-xtf-amd64-amd64-3:xtf/test-pv32pae-xsa-286:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:guest-saverestore:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    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-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check: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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-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-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 03:31:04 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit2  19 guest-start.2            fail REGR. vs. 160646
 test-armhf-armhf-libvirt    18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 160878 REGR. vs. 160646
 test-armhf-armhf-xl-vhd   12 debian-di-install fail in 160878 REGR. vs. 160646
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 160912 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 18 guest-localmigrate/x10 fail in 160878 pass in 160960
 test-amd64-i386-libvirt-xsm  21 guest-start.2    fail in 160878 pass in 160960
 test-amd64-amd64-examine    4 memdisk-try-append fail in 160878 pass in 160960
 test-armhf-armhf-libvirt      8 xen-boot         fail in 160878 pass in 160960
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 160878 pass in 160960
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 160878 pass in 160960
 test-xtf-amd64-amd64-3 92 xtf/test-pv32pae-xsa-286 fail in 160912 pass in 160960
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 15 guest-saverestore fail in 160912 pass in 160960
 test-armhf-armhf-xl          14 guest-start      fail in 160912 pass in 160960
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 160912 pass in 160960
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160912 pass in 160960
 test-armhf-armhf-xl-vhd       8 xen-boot                   fail pass in 160878
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10     fail pass in 160878
 test-armhf-armhf-xl          18 guest-start/debian.repeat  fail pass in 160878
 test-armhf-armhf-xl-rtds      8 xen-boot                   fail pass in 160878
 test-armhf-armhf-examine      8 reboot                     fail pass in 160912
 test-armhf-armhf-xl-multivcpu  8 xen-boot                  fail pass in 160912
 test-armhf-armhf-libvirt-raw 13 guest-start                fail pass in 160912

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 160878 REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 160878 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 160878 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 160878 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 160878 never pass
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160912 like 160646
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160912 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-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     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-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-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z   10 days
Failing since        160665  2021-04-02 07:40:09 Z    9 days   14 attempts
Testing same since   160878  2021-04-09 19:07:54 Z    2 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@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                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 06:29:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 06:29:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108799.207577 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVq43-0001vP-Gd; Mon, 12 Apr 2021 06:28:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108799.207577; Mon, 12 Apr 2021 06: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 1lVq43-0001vI-DY; Mon, 12 Apr 2021 06:28:51 +0000
Received: by outflank-mailman (input) for mailman id 108799;
 Mon, 12 Apr 2021 06:28:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVq41-0001vB-AX
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 06:28:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 26cd1147-9695-4101-b337-9d3edc036ae3;
 Mon, 12 Apr 2021 06:28:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4AC3CAEB6;
 Mon, 12 Apr 2021 06:28: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: 26cd1147-9695-4101-b337-9d3edc036ae3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618208927; 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=hIOX7yB5Y0iyrXL4fYN85Uind6dSDN3lEdKNG2E6Sx4=;
	b=lBcjwNYz+YxHtnSTj9qd0CwfQJhYM039W3b0CHzlbcZpkEGE9mpTHGTjoseZpUu/Q/Q9I1
	vzleBGHOdaaWrqN3543kLKe7/SbCv/lRweORzy97oI7/MpLoByW4DRiI7BEgJd2tS91dSQ
	hqsDNMYC0pyecL0xf6uYcGZ29OkH4WU=
From: Juergen Gross <jgross@suse.com>
To: stable@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org
Subject: [PATCH] xen/events: fix setting irq affinity
Date: Mon, 12 Apr 2021 08:28:45 +0200
Message-Id: <20210412062845.13946-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
unmask an event channel when an eoi is pending") introduced a
regression for stable kernels 5.10 and older: setting IRQ affinity for
IRQs related to interdomain events would no longer work, as moving the
IRQ to its new cpu was not included in the irq_ack callback for those
events.

Fix that by adding the needed call.

Note that kernels 5.11 and later don't need the explicit moving of the
IRQ to the target cpu in the irq_ack callback, due to a rework of the
affinity setting in kernel 5.11.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
This patch should be applied to all stable kernel branches up to
(including) linux-5.10.y, where upstream patch 25da4618af240fbec61 has
been added.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/events/events_base.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 7bd03f6e0422..ee5269331406 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1809,7 +1809,7 @@ static void lateeoi_ack_dynirq(struct irq_data *data)
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 
@@ -1820,7 +1820,7 @@ static void lateeoi_mask_ack_dynirq(struct irq_data *data)
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EXPLICIT);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 06:46:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 06:46:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108806.207589 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVqKe-0003mO-Vt; Mon, 12 Apr 2021 06:46:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108806.207589; Mon, 12 Apr 2021 06: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 1lVqKe-0003mH-RZ; Mon, 12 Apr 2021 06:46:00 +0000
Received: by outflank-mailman (input) for mailman id 108806;
 Mon, 12 Apr 2021 06:46:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vqkM=JJ=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lVqKe-0003mC-2A
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 06:46:00 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id cd3c1913-bcbc-4ddb-8ec2-adc024b06e12;
 Mon, 12 Apr 2021 06:45:58 +0000 (UTC)
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 8EEAA1FB;
 Sun, 11 Apr 2021 23:45:58 -0700 (PDT)
Received: from [10.57.12.29] (unknown [10.57.12.29])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6C3983F73B;
 Sun, 11 Apr 2021 23:45: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: cd3c1913-bcbc-4ddb-8ec2-adc024b06e12
Subject: Re: [PATCH v2] xen/arm: kernel: Propagate the error if we fail to
 decompress the kernel
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>
References: <20210406191554.12012-1-julien@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <591603c5-ebcb-e9d6-74a0-bed921458a69@arm.com>
Date: Mon, 12 Apr 2021 08:45:51 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <20210406191554.12012-1-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 21:15, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Currently, we are ignoring any error from perform_gunzip() and replacing
> the compressed kernel with the "uncompressed" kernel.
> 
> If there is a gzip failure, then it means that the output buffer may
> contain garbagge. So it can result to various sort of behavior that may
> be difficult to root cause.
> 
> In case of failure, free the output buffer and propagate the error.
> We also need to adjust the return check for kernel_compress() as
> perform_gunzip() may return a positive value.
> 
> Take the opportunity to adjust the code style for the check.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> ---
>     Changes in v2:
>         - Fix build
> ---

Reviewed-by: Michal Orzel <michal.orzel@arm.com>


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 08:54:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 08:54:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108820.207619 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVsKW-0004Yo-93; Mon, 12 Apr 2021 08:54:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108820.207619; Mon, 12 Apr 2021 08: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 1lVsKW-0004Yd-1t; Mon, 12 Apr 2021 08:54:00 +0000
Received: by outflank-mailman (input) for mailman id 108820;
 Mon, 12 Apr 2021 08:53:58 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVsKU-0004YY-2I
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 08:53:58 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9dcdfa51-6f79-4e9b-a545-50b1ff265766;
 Mon, 12 Apr 2021 08:53:56 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1F881AF1B;
 Mon, 12 Apr 2021 08:53: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: 9dcdfa51-6f79-4e9b-a545-50b1ff265766
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618217636; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=kqx5Rzut9wWvGHJZ3lq+/iPWxGqOzFknB1SOtS5Q1nU=;
	b=OMkNlJBqfIQDhhmCV2A8AIx6CN+INux+lYz3gWGsxrfZdEGKeuVLBfpXOz67UdQVDZu0fE
	oDK7C57KyQayvIY4ydq+ReiRk/tfxapAZHVt9psdZyKyOiTn3tOcazC2xitVnTYcb3l8Sj
	D6caU63U5qIgOu3RIFfAcwpYxdANGjE=
Subject: Re: [xen-unstable bisection] complete test-armhf-armhf-xl-multivcpu
To: Julien Grall <julien@xen.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>
References: <E1lVPaB-0007ue-Ho@osstest.test-lab.xenproject.org>
Cc: xen-devel@lists.xenproject.org,
 osstest service owner <osstest-admin@xenproject.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b7800c49-8106-e2cc-2fa3-9682305f333f@suse.com>
Date: Mon, 12 Apr 2021 10:53:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <E1lVPaB-0007ue-Ho@osstest.test-lab.xenproject.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 11.04.2021 04:12, osstest service owner wrote:
> branch xen-unstable
> xenbranch xen-unstable
> job test-armhf-armhf-xl-multivcpu
> testid guest-start/debian.repeat
> 
> Tree: linux git://xenbits.xen.org/linux-pvops.git
> Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
> Tree: qemuu git://xenbits.xen.org/qemu-xen.git
> Tree: xen git://xenbits.xen.org/xen.git
> 
> *** Found and reproduced problem changeset ***
> 
>   Bug is in tree:  xen git://xenbits.xen.org/xen.git
>   Bug introduced:  9617d5f9c19d1d157629e1e436791509526e0ce5
>   Bug not present: 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
>   Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160931/
> 
> 
>   commit 9617d5f9c19d1d157629e1e436791509526e0ce5
>   Author: Julien Grall <jgrall@amazon.com>
>   Date:   Sat Feb 20 17:54:13 2021 +0000
>   
>       xen/arm: mm: flush_page_to_ram() only need to clean to PoC
>       
>       At the moment, flush_page_to_ram() is both cleaning and invalidate to
>       PoC the page.
>       
>       The goal of flush_page_to_ram() is to prevent corruption when the guest
>       has disabled the cache (the cache line may be dirty) and the guest to
>       read previous content.
>       
>       Per this definition, the invalidating the line is not necessary. So
>       invalidating the cache is unnecessary. In fact, it may be counter-
>       productive as the line may be (speculatively) accessed a bit after.
>       So this will incurr an expensive access to the memory.
>       
>       More generally, we should avoid interferring too much with cache.
>       Therefore, flush_page_to_ram() is updated to only clean to PoC the page.
>       
>       The performance impact of this change will depend on your
>       workload/processor.
>       
>       Signed-off-by: Julien Grall <jgrall@amazon.com>
>       Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
>       Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Is it possible that other code (guest one in particular considering the
failure pattern, but possibly not limited to that) has developed a
dependency on the prior behavior?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 09:15:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 09:15:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108835.207637 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVsfT-0006Ta-0D; Mon, 12 Apr 2021 09:15:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108835.207637; Mon, 12 Apr 2021 09:15: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 1lVsfS-0006TT-TM; Mon, 12 Apr 2021 09:15:38 +0000
Received: by outflank-mailman (input) for mailman id 108835;
 Mon, 12 Apr 2021 09:15:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVsfR-0006TO-52
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 09:15:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6b91280e-a967-4b10-bc11-12c186481f74;
 Mon, 12 Apr 2021 09:15:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 84CDCB2E8;
 Mon, 12 Apr 2021 09:15: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: 6b91280e-a967-4b10-bc11-12c186481f74
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618218935; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=PmnNfJpaSQJVwrPx1eRc1oEWV+o0kLymXguwsbelPL4=;
	b=VgvTVfBJFw671ZAXzq4c3ucwebyg+7LaHt/UXLkKQ/XLo/jtBPfvyoJGT39XVgBJhQGbnz
	imnawqf/kJF14gE/AN9XVXu8UER+t5hP/1ahEp9hn1brXfMxTp3JvwVxN/1H95v5dg/Pjt
	RS+6Z5iFjwGI9GJ9qapsYweMqf/Y2z0=
Subject: Re: x86: memset() / clear_page() / page scrubbing
To: Ankur Arora <ankur.a.arora@oracle.com>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com,
 xen-devel@lists.xenproject.org
References: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
 <20210409060845.3503745-1-ankur.a.arora@oracle.com>
 <4d8202b3-ffe8-c4e7-e477-d8e7dc294c33@suse.com>
 <df955d0c-b78f-641b-41f6-ed52f9e45cb7@oracle.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <13709035-2bf6-5dd6-a3f6-1761dde948f7@suse.com>
Date: Mon, 12 Apr 2021 11:15:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <df955d0c-b78f-641b-41f6-ed52f9e45cb7@oracle.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 09.04.2021 23:01, Ankur Arora wrote:
> On 2021-04-08 11:38 p.m., Jan Beulich wrote:
>> On 09.04.2021 08:08, Ankur Arora wrote:
>>> On 4/8/2021 6:58 AM, Jan Beulich wrote:
>>>> The present copy_page() is the way it is because of the desire to
>>>> avoid disturbing the cache. The effect of REP STOS on the L1 cache
>>>> (compared to the present use of MOVNTI) is more or less noticable on
>>>> all hardware, and at least on Intel hardware more noticable when the
>>>> cache starts out clean. For L2 the results are more mixed when
>>>> comparing cache-clean and cache-filled cases, but the difference
>>>> between MOVNTI and REP STOS remains or (at least on Zen2 and older
>>>> Intel hardware) becomes more prominent.
>>>
>>> Could you give me any pointers on the cache-effects on this? This
>>> obviously makes sense but I couldn't come up with any benchmarks
>>> which would show this in a straight-forward fashion.
>>
>> No benchmarks in that sense, but a local debugging patch measuring
>> things before bringing up APs, to have a reasonably predictable
>> environment. I have attached it for your reference.
> 
> Thanks, that does look like a pretty good predictable test.
> (Btw, there might be an oversight in the clear_page_clzero() logic.
> I believe that also needs an sfence.)

Oh, good point.

> Just curious: you had commented out the local irq disable/enable clauses.
> Is that because you decided that it the code ran at an early enough
> point that they were not required or some other reason?

It's not so much "early enough to not be required" but "too early to
be valid to enable interrupts". And then I didn't want to switch to
save/restore, so left them just as comments.

> Would you have any intuition on, if the power consumption of
> the non-temporal primitives is meaningfully different from
> REP STOS and friends?

If power can be saved when caches don't get modified (no idea if
that's possible, as the cached data still requires keeping intact),
then non-temporal stores might be better.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 09:23:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 09:23:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108839.207648 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVsn9-0007Nh-NJ; Mon, 12 Apr 2021 09:23:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108839.207648; Mon, 12 Apr 2021 09:23: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 1lVsn9-0007Na-K7; Mon, 12 Apr 2021 09:23:35 +0000
Received: by outflank-mailman (input) for mailman id 108839;
 Mon, 12 Apr 2021 09:23: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 1lVsn8-0007NS-LF; Mon, 12 Apr 2021 09:23: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 1lVsn8-0001Xf-Aq; Mon, 12 Apr 2021 09:23: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 1lVsn8-0007kU-0x; Mon, 12 Apr 2021 09:23:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVsn8-00030A-0P; Mon, 12 Apr 2021 09:23: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=Z6QdYI1u2cqH5CpcU5KeC+einBw27kMu5nHWvC4yYTY=; b=dSs0/OacXGZAXIAY4a848g96VF
	9S1fKG+H9i2TJ9u6cyP3gIZdI8o5RfSHXzgcJWXZQqsY0K0guMERamXoXic0IsPoQWLY5di0j57EA
	c6PSi5lwoi04NXkIa0SrIuA70EbnmBwtPTpx0WJH+8fl3FDdj2xGeRlWC/NVnLcdOlaU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161037-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161037: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-pvops:kernel-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=e2f82a3704f680fbb37a733476d870c19232c23e
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 09:23:34 +0000

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

Regressions :-(

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

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              e2f82a3704f680fbb37a733476d870c19232c23e
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  276 days
Failing since        151818  2020-07-11 04:18:52 Z  275 days  268 attempts
Testing same since   160890  2021-04-10 04:19:55 Z    2 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             fail    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 09:32:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 09:32:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108848.207669 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVsvs-0008NM-T4; Mon, 12 Apr 2021 09:32:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108848.207669; Mon, 12 Apr 2021 09: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 1lVsvs-0008NF-Q9; Mon, 12 Apr 2021 09:32:36 +0000
Received: by outflank-mailman (input) for mailman id 108848;
 Mon, 12 Apr 2021 09:32:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVsvq-0008N7-Ut
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 09:32:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0f54a19c-bcbe-4619-9ccd-cbc6889fc2cb;
 Mon, 12 Apr 2021 09:32:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B5596ADEF;
 Mon, 12 Apr 2021 09:32: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: 0f54a19c-bcbe-4619-9ccd-cbc6889fc2cb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618219951; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=CBVcOn6GQILGvpSxp1eSO7e3QR8CMork2o3bt5+Cxqk=;
	b=p+hRJwe72lde5snqRN9HTVfSXAbmCfWVNoQl7HQ4F5upKBiYAVoleyzpaZLsBMGmEkHkHZ
	jXOMCOgY09Ch0N2AlplgnMqQmniZGmcTvVdhDwspt/7jdEuyvv+bVhBHy9hDWVdkdH3Dhk
	59eOtymd7VMZSctnP7eVpACmqH70P8k=
Subject: Re: [PATCH] xen/events: fix setting irq affinity
To: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org,
 stable@vger.kernel.org
References: <20210412062845.13946-1-jgross@suse.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <38b2b47d-a77a-9d02-3034-f1c4d03ffdd5@suse.com>
Date: Mon, 12 Apr 2021 11:32:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210412062845.13946-1-jgross@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 08:28, Juergen Gross wrote:
> The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
> unmask an event channel when an eoi is pending") introduced a
> regression for stable kernels 5.10 and older: setting IRQ affinity for
> IRQs related to interdomain events would no longer work, as moving the
> IRQ to its new cpu was not included in the irq_ack callback for those
> events.
> 
> Fix that by adding the needed call.
> 
> Note that kernels 5.11 and later don't need the explicit moving of the
> IRQ to the target cpu in the irq_ack callback, due to a rework of the
> affinity setting in kernel 5.11.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
> This patch should be applied to all stable kernel branches up to
> (including) linux-5.10.y, where upstream patch 25da4618af240fbec61 has
> been added.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

This looks functionally correct to me, so:
Reviewed-by: Jan Beulich <jbeulich@suse.com>

But I have remarks / questions:

> --- a/drivers/xen/events/events_base.c
> +++ b/drivers/xen/events/events_base.c
> @@ -1809,7 +1809,7 @@ static void lateeoi_ack_dynirq(struct irq_data *data)
>  
>  	if (VALID_EVTCHN(evtchn)) {
>  		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
> -		event_handler_exit(info);
> +		ack_dynirq(data);
>  	}
>  }
>  
> @@ -1820,7 +1820,7 @@ static void lateeoi_mask_ack_dynirq(struct irq_data *data)
>  
>  	if (VALID_EVTCHN(evtchn)) {
>  		do_mask(info, EVT_MASK_REASON_EXPLICIT);
> -		event_handler_exit(info);
> +		ack_dynirq(data);
>  	}
>  }
>  

Can EVT_MASK_REASON_EOI_{PENDING,EXPLICIT} be cleared in a way racing
event_handler_exit() and (if it was called directly from here)
irq_move_masked_irq()? If not, the extra do_mask() / do_unmask() pair
(granted living on an "unlikely" path) could be avoided.

Even leaving aside the extra overhead in ack_dynirq()'s unlikely code
path, there's now some extra (redundant) processing. I guess this is
assumed to be within noise?

Possibly related, but first of all seeing the redundancy between
eoi_pirq() and ack_dynirq(): Wouldn't it make sense to break out the
common part into a helper? (Really the former could simply call the
latter as it seems.)

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 09:34:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 09:34:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108851.207682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVsxz-0008VP-9L; Mon, 12 Apr 2021 09:34:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108851.207682; Mon, 12 Apr 2021 09:34:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVsxz-0008VI-6P; Mon, 12 Apr 2021 09:34:47 +0000
Received: by outflank-mailman (input) for mailman id 108851;
 Mon, 12 Apr 2021 09:34:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L7uB=JJ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lVsxx-0008VD-1d
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 09:34:45 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 396e3567-e121-4768-9874-8b14980d0d2f;
 Mon, 12 Apr 2021 09:34:43 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 396e3567-e121-4768-9874-8b14980d0d2f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618220083;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=zQasOQ5WYhr/gSP7aD85d0cCvIIBBlPDkwuGk2RfrYs=;
  b=C4I8jjqPZk2Oi69TGPX6/+SzBLYDovK+ZX/7GVq0XG/H+b6qkyANtuzr
   hm4NwXSNiNGK4NNVJLFgleDMAdfyuE4kYeOwAvfe07J4OdNHN09drjcnT
   Dox1U27czddMqq0ARb5rWIaQGBCpfq/j8C/vWkbnSsZwqHt6jyUie3qBk
   E=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: acSbpTBlzjf71CRwvitfCn8vhE7q1RDV/aOisLZvUqdSD1lZE7D9/YCzr2yVzXONaNL8lyd9TI
 E7RdUPCeQdB3EGUSgyv6QzASoq12Z6mBmSHuR/6uIFFXi5GwNdvInRIF6o3VoRBLtHP78Tu1nH
 aP8WSm9DJdeewN2Cmv9O1QP81T6bSGRsPXosII4jmtW8fG0vqXhyv94eJy6E8G2JDcitT8QevN
 lLlX/FjVi2ra0Bv27J5mbcN0TRxUHQOFRA/onfX/iuMCtLoqrjiAfBaX7vc4LpIhWBib0sgK8u
 tjs=
X-SBRS: 5.1
X-MesageID: 41503762
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:QW5UiKC1hrPPynTlHegctMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmBEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVsUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbiSw9BEYTj9J3PMe4X
 HI+jaJnZmLntOa7lvn12HV54lLg9eJ8LV+LeGFl8R9EESPti+Gf4JkMofy2QwdgObq01oylc
 mJnhFIBbUO11r0XkWY5STgwBPh1jFG0Q6T9Xa9jWH4qcL0ABIWYvAx/L5xSRfS50o+sNwU6s
 sitAj4xvknfy/opyjz68PFUBtnjCOP0AIfuNUekmBFVs8mYKJRxLZvjX99KosKHy7x9ekcYY
 9TJfzbjcwmFW+yXjTyu2lix8GURXIjHhuKaVhqgL3q7xFm2F9+1EcW38oZgzMp8488UYBN46
 D+Pr1vj6wmdL5bUYtNQMM6BeenAG3ERhzBdEqUPFTcDakCf1bAsYT+7rkZ7PyjEaZ4g6caqd
 Dkahd1pGQyc0XhBYmlx5tQ6C3AR227QHDE1txez4IRgMy9eJPbdQm4DHw+mcqppPsSRufBXe
 yoBZ5QC/j/aUPzBIdy2RHkUZU6EwhebOQl/vIAH36eqMPCLYPn8sbBduzIGbbrGTE4HkzlBH
 8uWyXyOdVg4kinVmSQummSZ1rdPmjEub5gGqnT+OYejKIXMJdXjwQTgVOlouGHQAcy95AeTQ
 9bGvfKg6m7rW658SLj9GNyICdQCU5T/fHFW3NOrgkaDlPsfd84ypGiUFEX+EHCCg50TsvQHg
 IajU9w47iLI5uZwj1nLN67LGSAjT82qGiRR5kR3o2PjP2VNK8QP9IDYuhcBA/LHxt6lUJBs2
 FYcjIJQUfZC3fJkqWqjJsdAcnFbNliiAKXIcpZwEiv9nm0lIUKfD82TjSuWcmYjUIFXDxPnG
 B89KcZnf69gzq1EHA+h+45KVVIT2ySDNt9fUO4TbQRvoquVBB7TG+MizDfrx0oYGLl+38fgX
 HbITSOdevGBUdcvX5kwr/nmWkEBVm1TgZVUDRXoId9HWPJtjJI3eiHarGa/kGRZlEBq9ttew
 3tUH83GEdD1tq33BmalHK+Dn0g3IwpJfGYJq8kaavv1nSkL5ComakKE+RPxotsMMnjv4YwIK
 SiUj7QCAm9J/Ii2gSTqHpgBTJ9r2M8l+j0nDLi92q10RcEcIzvCWUjY4teBd6S72LpHanVlL
 p4iM84puu2PCHabMWcxaTecj5ELVfyrAeNPpUVgKERmZh3kr15W6T/e3/v8lps2R0lNsf6lE
 8EWs1Akfj8E74qW/ZXQj5T+1oiqc+GI0QquDHnG+NWRyBZs1bre/eyp4fSobUhAke9tBL9FF
 mW/Spa5erEVUK4pMknIpN1BWRdc04n7nt+uMuEao3LEQ2vHtsztmaSAzuYcLVHTrKCFqhVhh
 Fm48uQl+vSUybjwgjfsX9aJa1JmlzXDP+aMUapGeRS9ca9NknJqqy24NSrhDOycACFUS0j9M
 R4XH1VSN9ChDkkhJA21Sb3apWfmDNbr3JupRd9llDs3YC65nz8Bk8uC3yBvqlr
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41503762"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=B8M1fbMutmMzftrc2oW/Nch8+IZ4+VdtxVko8lpONKu6y4GOrWCdN7NRciQnXgZJa45eVIz31xIeSH9lis/hTBByrR1HNFrTxko4Iwy09it1FDgRldS1bTPdNb5vNblQ5tphMjsBo/1CDGaC6DhLlqYcfk7gKDvV80V5FugAAaRpttU4vh4lSDZtmoVm/mHTwyku2QOUY2yQCilZEzRF3ypCuXjUObCmkLrEx3At9ZYJ9HAx6UV4ZyUwHmCtAvSSpzXoxp/JbQT3QScJ0ty51nYk2uqO3S1Wh3sa3PSiZwZVRIbRuv3gugOYdk5ned8toijA2WLinK0g/sZIVq6s/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-SenderADCheck;
 bh=spCQjae4mmuQKnFFW4X5FnTPZuvVMl2ST4dGncrUvek=;
 b=ka/lgDoYUkbYDIKADoCgAFMoNhuKM0ccBDl0vRHVFgalGU/sfRIyEqBAGqlIqdYyTWDEaok28MRrmbaWcDpxEVXdNrQ3qfNIDTec96roSFENU17XNR0VqH4xrA8Hwk9Ps8qkPIANJP0t+CF+nll6mpi5ZgkWYl7Mf8Q3TZLXhzFgPakyXPDfmjo1J/Pt6/hhR+KSI8EBasu3oRGiEt4izHvc9eAUb+iidrlPj7fBUDFV2UaO4ja9Zcse6UktNfye20Ov4lcAsJvMVjsa5SOrEhYuSsHkrKf/5SSO6ZdSoQEWuKqzIFpltNjEjm4cYqSuSpsTghopq2HRn2Q1pHz1PA==
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=spCQjae4mmuQKnFFW4X5FnTPZuvVMl2ST4dGncrUvek=;
 b=d3+pRL/aWMp7v+8nsXhhOzT9AzeyrTgKpW9pDb9VmJhzxDEIBBEUBSBtjBBWd7YuEjFF49us43YRanT1qy6dGXjybjS6HxaNhHqy5RqH8zSi5iiPUgqw9xiniuyctNxke0zK1UPTUBOe0NM2PwEbNaJebkwTfUP2yE3vKzwFB64=
Date: Mon, 12 Apr 2021 11:34:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 1/2] x86: correct is_pv_domain() when !CONFIG_PV
Message-ID: <YHQUJw8H2tgNy5iY@Air-de-Roger>
References: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
 <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
X-ClientProxiedBy: AM6PR0202CA0067.eurprd02.prod.outlook.com
 (2603:10a6:20b:3a::44) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e9dd3803-65bc-4754-345e-08d8fd96311f
X-MS-TrafficTypeDiagnostic: DS7PR03MB5606:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5606F74F741D9E2CF041EEB98F709@DS7PR03MB5606.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: rgE2ef8iI15kqOLq8dkU+ji4n+OeW5N7k4+rSOQ5GuS+3+kEMqVcMoLTKBA529F9hHSZjxeFfopEHrqb9ivHIwH5r/NJguEWRbQ0GzczVFGXbNjbLlK528MSOonBtw5UNXUaljh3u6YljJXUP/tEVospo12fhdZvS1lGwXgqq4r0+QBqsAu5a5ozYYlxo6CNuY57dvc76IRK4yY0mMc6x08mPyafg+rB1xAJ1gS/H6jlo1vr7tRWY1aaSxsjPDiNEJK9IAqjsk3vK/XL2mytn8Fq1l6kmLgUfUCHp6x/X0VUlSuxsYW9Vtq47QQj4g39LokF0RrbJvMwPsFRqTeQZhuqbO7KO5y6+Yi2DKf8EWaMB0MTW4oSdzIEztbPJ1VZg0TF/LLk3YDixCeWOm+o/elcpzQ8Ezy9lk/oSCR1vwUsuciLva+1tnr+WnOmr/eAaauMYFyXIDCQTIp101tqA1T7t5Jd32GRle5VLcAjGT6lWQRe25yEDehnUShsuBkb+TBc9K44Su3mlml+ketTQ85TPSnaf10nSRgNxJZlHCCfl5q/b6xloiJB4GDG/lDv1UlxRT3vr7PRSPxosAmCjd8pM7TwFiXLk/NA9oOxJH8=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(376002)(396003)(39850400004)(366004)(346002)(66556008)(6666004)(54906003)(5660300002)(66476007)(26005)(4326008)(66946007)(38100700002)(85182001)(186003)(6496006)(9686003)(8676002)(316002)(86362001)(956004)(6916009)(478600001)(8936002)(33716001)(83380400001)(16526019)(6486002)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: e9dd3803-65bc-4754-345e-08d8fd96311f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 09:34:38.5518
 (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: W/HAleEIlrchA07T7FuQZvFiMfT7L2LUFXJptgZ7NJcBVXPG1/mzyhWGUzX13zscWrBCrzm4EFdZprk+JaWnjQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5606
X-OriginatorOrg: citrix.com

On Fri, Nov 27, 2020 at 05:54:57PM +0100, Jan Beulich wrote:
> On x86, idle and other system domains are implicitly PV. While I
> couldn't spot any cases where this is actively a problem, some cases
> required quite close inspection to be certain there couldn't e.g. be
> some ASSERT_UNREACHABLE() that would trigger in this case. Let's be on
> the safe side and make sure these always have is_pv_domain() returning
> true.
> 
> For the build to still work, this requires a few adjustments elsewhere.
> In particular is_pv_64bit_domain() now gains a CONFIG_PV dependency,
> which means that is_pv_32bit_domain() || is_pv_64bit_domain() is no
> longer guaranteed to be the same as is_pv_domain().
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> --- a/xen/arch/x86/dom0_build.c
> +++ b/xen/arch/x86/dom0_build.c
> @@ -568,7 +568,7 @@ int __init construct_dom0(struct domain
>  
>      if ( is_hvm_domain(d) )
>          rc = dom0_construct_pvh(d, image, image_headroom, initrd, cmdline);
> -    else if ( is_pv_domain(d) )
> +    else if ( is_pv_64bit_domain(d) || is_pv_32bit_domain(d) )

Urg, that's very confusing IMO, as I'm sure I would ask someone to
just use is_pv_domain without realizing. It needs at least a comment,
but even then I'm not sure I like it.

So that I understand it, the point to use those expressions instead of
is_pv_domain is to avoid calling dom0_construct_pv when CONFIG_PV is
not enabled?

Maybe it wold be better to instead use:

if ( IS_ENABLED(CONFIG_PV) && is_pv_domain(d) )

In any case I wonder if we should maybe aim to introduce a new type
for system domains, that's neither PV or HVM, in order to avoid having
system domains qualified as PV even when PV is compiled out.

>          rc = dom0_construct_pv(d, image, image_headroom, initrd, cmdline);
>      else
>          panic("Cannot construct Dom0. No guest interface available\n");
> --- a/xen/arch/x86/domain.c
> +++ b/xen/arch/x86/domain.c
> @@ -1544,6 +1544,7 @@ arch_do_vcpu_op(
>   */
>  static void load_segments(struct vcpu *n)
>  {
> +#ifdef CONFIG_PV
>      struct cpu_user_regs *uregs = &n->arch.user_regs;
>      unsigned long gsb = 0, gss = 0;
>      bool compat = is_pv_32bit_vcpu(n);
> @@ -1709,6 +1710,7 @@ static void load_segments(struct vcpu *n
>          regs->cs            = FLAT_KERNEL_CS;
>          regs->rip           = pv->failsafe_callback_eip;
>      }
> +#endif
>  }
>  
>  /*
> @@ -1723,6 +1725,7 @@ static void load_segments(struct vcpu *n
>   */
>  static void save_segments(struct vcpu *v)
>  {
> +#ifdef CONFIG_PV
>      struct cpu_user_regs *regs = &v->arch.user_regs;
>  
>      read_sregs(regs);
> @@ -1748,6 +1751,7 @@ static void save_segments(struct vcpu *v
>          else
>              v->arch.pv.gs_base_user = gs_base;
>      }
> +#endif
>  }

Could you move {load,save}_segments to pv/domain.c and rename to
pv_{load,save}_segments and provide a dummy handler for !CONFIG_PV in
pv/domain.h?

Sorry it's slightly more work, but I think it's cleaner overall.

>  
>  void paravirt_ctxt_switch_from(struct vcpu *v)
> --- a/xen/arch/x86/domctl.c
> +++ b/xen/arch/x86/domctl.c
> @@ -408,13 +408,13 @@ long arch_do_domctl(
>      case XEN_DOMCTL_set_address_size:
>          if ( is_hvm_domain(d) )
>              ret = -EOPNOTSUPP;
> +        else if ( is_pv_64bit_domain(d) && domctl->u.address_size.size == 32 )
> +            ret = switch_compat(d);
>          else if ( is_pv_domain(d) )
>          {
>              if ( ((domctl->u.address_size.size == 64) && !d->arch.pv.is_32bit) ||
>                   ((domctl->u.address_size.size == 32) &&  d->arch.pv.is_32bit) )
>                  ret = 0;
> -            else if ( domctl->u.address_size.size == 32 )
> -                ret = switch_compat(d);
>              else
>                  ret = -EINVAL;
>          }
> --- a/xen/include/xen/sched.h
> +++ b/xen/include/xen/sched.h
> @@ -985,7 +985,7 @@ static always_inline bool is_control_dom
>  
>  static always_inline bool is_pv_domain(const struct domain *d)
>  {
> -    return IS_ENABLED(CONFIG_PV) &&
> +    return IS_ENABLED(CONFIG_X86) &&
>          evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
>  }
>  
> @@ -1011,7 +1011,7 @@ static always_inline bool is_pv_32bit_vc
>  
>  static always_inline bool is_pv_64bit_domain(const struct domain *d)
>  {
> -    if ( !is_pv_domain(d) )
> +    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
>          return false;

I think overall is confusing to have a domain that returns true for
is_pv_domain but false for both is_pv_{64,32}bit_domain checks.

I know those are only the system domains, but it feels confusing and
could cause mistakes in the future IMO, as then we would have to
carefully think where to use ( is_pv_64bit_domain(d)
|| is_pv_32bit_domain(d) ) vs just using is_pv_domain(d), or
IS_ENABLED(CONFIG_PV) && is_pv_domain(d)

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 09:39:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 09:39:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108858.207697 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVt2p-0000Ii-Sq; Mon, 12 Apr 2021 09:39:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108858.207697; Mon, 12 Apr 2021 09:39: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 1lVt2p-0000Ib-PC; Mon, 12 Apr 2021 09:39:47 +0000
Received: by outflank-mailman (input) for mailman id 108858;
 Mon, 12 Apr 2021 09:39:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVt2n-0000IW-UZ
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 09:39:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 021b55aa-42b2-45cb-b372-8082b235d5ea;
 Mon, 12 Apr 2021 09:39:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 68BEBADEF;
 Mon, 12 Apr 2021 09:39: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: 021b55aa-42b2-45cb-b372-8082b235d5ea
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618220382; 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=jrZBxSq5AWWzSeZgh55OiCUsXR2J3HeOl9tZCRpozco=;
	b=jHge4AbVMOouE1xpHkvp+HndcYlwLTOueULf9Pf6A+6xO1S4pjSZQDzKIyk9Tl9s/QtZhJ
	+06RRZ7tCYhqwCmD4j0/tEmrfiCRdJZUxmBcIf08VOef8wXUAC2G57Xyx8+XeZO0JRUlkO
	Im1WcpKtKplrdMqW+k4Ei6QOhu6knxs=
Subject: Re: [PATCH] xen/events: fix setting irq affinity
To: Jan Beulich <jbeulich@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org,
 stable@vger.kernel.org
References: <20210412062845.13946-1-jgross@suse.com>
 <38b2b47d-a77a-9d02-3034-f1c4d03ffdd5@suse.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <bec9c7a5-5661-73b4-1b0b-137dacba7bbf@suse.com>
Date: Mon, 12 Apr 2021 11:39:41 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <38b2b47d-a77a-9d02-3034-f1c4d03ffdd5@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="9lwOrTyyNgUZVE7i0BwmBlgeTZYDSdNQY"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--9lwOrTyyNgUZVE7i0BwmBlgeTZYDSdNQY
Content-Type: multipart/mixed; boundary="OEAubtW2QeisXwpfLo5vRZP6wbEBDojbo";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org,
 stable@vger.kernel.org
Message-ID: <bec9c7a5-5661-73b4-1b0b-137dacba7bbf@suse.com>
Subject: Re: [PATCH] xen/events: fix setting irq affinity
References: <20210412062845.13946-1-jgross@suse.com>
 <38b2b47d-a77a-9d02-3034-f1c4d03ffdd5@suse.com>
In-Reply-To: <38b2b47d-a77a-9d02-3034-f1c4d03ffdd5@suse.com>

--OEAubtW2QeisXwpfLo5vRZP6wbEBDojbo
Content-Type: multipart/mixed;
 boundary="------------6CCC38779F4E417872DE31E6"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------6CCC38779F4E417872DE31E6
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 12.04.21 11:32, Jan Beulich wrote:
> On 12.04.2021 08:28, Juergen Gross wrote:
>> The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't=

>> unmask an event channel when an eoi is pending") introduced a
>> regression for stable kernels 5.10 and older: setting IRQ affinity for=

>> IRQs related to interdomain events would no longer work, as moving the=

>> IRQ to its new cpu was not included in the irq_ack callback for those
>> events.
>>
>> Fix that by adding the needed call.
>>
>> Note that kernels 5.11 and later don't need the explicit moving of the=

>> IRQ to the target cpu in the irq_ack callback, due to a rework of the
>> affinity setting in kernel 5.11.
>>
>> Signed-off-by: Juergen Gross <jgross@suse.com>
>> ---
>> This patch should be applied to all stable kernel branches up to
>> (including) linux-5.10.y, where upstream patch 25da4618af240fbec61 has=

>> been added.
>>
>> Signed-off-by: Juergen Gross <jgross@suse.com>
>=20
> This looks functionally correct to me, so:
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>=20
> But I have remarks / questions:
>=20
>> --- a/drivers/xen/events/events_base.c
>> +++ b/drivers/xen/events/events_base.c
>> @@ -1809,7 +1809,7 @@ static void lateeoi_ack_dynirq(struct irq_data *=
data)
>>  =20
>>   	if (VALID_EVTCHN(evtchn)) {
>>   		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
>> -		event_handler_exit(info);
>> +		ack_dynirq(data);
>>   	}
>>   }
>>  =20
>> @@ -1820,7 +1820,7 @@ static void lateeoi_mask_ack_dynirq(struct irq_d=
ata *data)
>>  =20
>>   	if (VALID_EVTCHN(evtchn)) {
>>   		do_mask(info, EVT_MASK_REASON_EXPLICIT);
>> -		event_handler_exit(info);
>> +		ack_dynirq(data);
>>   	}
>>   }
>>  =20
>=20
> Can EVT_MASK_REASON_EOI_{PENDING,EXPLICIT} be cleared in a way racing
> event_handler_exit() and (if it was called directly from here)
> irq_move_masked_irq()? If not, the extra do_mask() / do_unmask() pair
> (granted living on an "unlikely" path) could be avoided.

No, they can't race. And yes, the path is really unlikely, so I didn't
want to optimize this rare case.

> Even leaving aside the extra overhead in ack_dynirq()'s unlikely code
> path, there's now some extra (redundant) processing. I guess this is
> assumed to be within noise?

Yes. All required data should be in the caches already, and the extra
processing is only a few instructions.

> Possibly related, but first of all seeing the redundancy between
> eoi_pirq() and ack_dynirq(): Wouldn't it make sense to break out the
> common part into a helper? (Really the former could simply call the
> latter as it seems.)

In theory, yes. OTOH this no longer applies to upstream, so i dind't
bother doing that for stable.


Juergen

--------------6CCC38779F4E417872DE31E6
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------6CCC38779F4E417872DE31E6--

--OEAubtW2QeisXwpfLo5vRZP6wbEBDojbo--

--9lwOrTyyNgUZVE7i0BwmBlgeTZYDSdNQY
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmB0FV0FAwAAAAAACgkQsN6d1ii/Ey/O
3gf/bBiUq2qoeupNrB4Kas/mjPXYiTX3GsYjvZ8ixznD2X7TxCHMxzb9rAz5M5RjYgmCrIlhqDxE
FObF+ibX1IHmbbYiMLzjBW/bUxIZXjJoJaHl0cSRZlBHAJW2zSf6yJitYuR/kAkM7p2TJ9TUJjXb
UPc969zS3HSfImZGr/dzMwlJjj/AX5pDvWO5pxvHpgEwdag7IwuueI7JNE0eLM56k1UHDWg+4Vw+
IgwitKnbcD+exW6PlPMcCzpaM3FBsknAtPoE0x96g/dGXU/g0dX8SpuVLj97wbF/hEkJJud58vwa
G3UkckFl7aQ11UrtWtlfoQndQ6xvm6DIWDxKjKHw0w==
=kcB1
-----END PGP SIGNATURE-----

--9lwOrTyyNgUZVE7i0BwmBlgeTZYDSdNQY--


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 09:44:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 09:44:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108863.207708 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVt7G-0001Az-Cu; Mon, 12 Apr 2021 09:44:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108863.207708; Mon, 12 Apr 2021 09: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 1lVt7G-0001As-A6; Mon, 12 Apr 2021 09:44:22 +0000
Received: by outflank-mailman (input) for mailman id 108863;
 Mon, 12 Apr 2021 09:44:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVt7F-0001An-IU
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 09:44:21 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e876708a-4586-437d-aeb7-c86a8dd90d14;
 Mon, 12 Apr 2021 09:44:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 954ACADEF;
 Mon, 12 Apr 2021 09:44:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e876708a-4586-437d-aeb7-c86a8dd90d14
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618220659; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=k5orpTFuknStGtjBYh6Sb9FX/HOMU68UxXEPrtrsZXY=;
	b=WhkM5Ow5jQxXBoPf4QGPleU4MrQY9kwEHubvMxVeH9HT+MUgCyoYetgzq3Y5TRZW8r7xc6
	7vUb9YA+nNiLjpm0gygw7ELfKTNtI+X2537Ol9irBPg5R7aoUDiFEB4VCzsa/TJVlF2GzN
	CAwCzjFq1WLMprUozeY7gZXdz4ir8Yg=
Subject: Re: [PATCH 2/3] xen-pciback: reconfigure also from backend watch
 handler
To: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <74955b48-80b1-3436-06b4-d8569260aa65@suse.com>
 <a93c66e5-807b-e557-d437-48d7f46f25f7@oracle.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <529f18d5-89ae-596e-29a7-d773e5a3c6b2@suse.com>
Date: Mon, 12 Apr 2021 11:44:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <a93c66e5-807b-e557-d437-48d7f46f25f7@oracle.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 09.04.2021 23:43, Boris Ostrovsky wrote:
> 
> On 4/7/21 10:37 AM, Jan Beulich wrote:
>> When multiple PCI devices get assigned to a guest right at boot, libxl
>> incrementally populates the backend tree. The writes for the first of
>> the devices trigger the backend watch. In turn xen_pcibk_setup_backend()
>> will set the XenBus state to Initialised, at which point no further
>> reconfigures would happen unless a device got hotplugged. Arrange for
>> reconfigure to also get triggered from the backend watch handler.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> Cc: stable@vger.kernel.org
>> ---
>> I will admit that this isn't entirely race-free (with the guest actually
>> attaching in parallel), but from the looks of it such a race ought to be
>> benign (not the least thanks to the mutex). Ideally the tool stack
>> wouldn't write num_devs until all devices had their information
>> populated. I tried doing so in libxl, but xen_pcibk_setup_backend()
>> calling xenbus_dev_fatal() when not being able to read that node
>> prohibits such an approach (or else libxl and driver changes would need
>> to go into use in lock-step).
>>
>> I wonder why what is being watched isn't just the num_devs node. Right
>> now the watch triggers quite frequently without anything relevant
>> actually having changed (I suppose in at least some cases in response
>> to writes by the backend itself).
>>
>> --- a/drivers/xen/xen-pciback/xenbus.c
>> +++ b/drivers/xen/xen-pciback/xenbus.c
>> @@ -359,7 +359,8 @@ out:
>>  	return err;
>>  }
>>  
>> -static int xen_pcibk_reconfigure(struct xen_pcibk_device *pdev)
>> +static int xen_pcibk_reconfigure(struct xen_pcibk_device *pdev,
>> +				 enum xenbus_state state)
>>  {
>>  	int err = 0;
>>  	int num_devs;
>> @@ -374,8 +375,7 @@ static int xen_pcibk_reconfigure(struct
>>  
>>  	mutex_lock(&pdev->dev_lock);
>>  	/* Make sure we only reconfigure once */
> 
> 
> Is this comment still valid or should it be moved ...
> 
> 
>> -	if (xenbus_read_driver_state(pdev->xdev->nodename) !=
>> -	    XenbusStateReconfiguring)
>> +	if (xenbus_read_driver_state(pdev->xdev->nodename) != state)
>>  		goto out;
>>  
>>  	err = xenbus_scanf(XBT_NIL, pdev->xdev->nodename, "num_devs", "%d",
>> @@ -500,6 +500,9 @@ static int xen_pcibk_reconfigure(struct
>>  		}
>>  	}
>>  
>> +	if (state != XenbusStateReconfiguring)
>> +		goto out;
>> +
> 
> 
> ... here?

Yeah, probably better to move it.

>>  	err = xenbus_switch_state(pdev->xdev, XenbusStateReconfigured);
>>  	if (err) {
>>  		xenbus_dev_fatal(pdev->xdev, err,
>> @@ -525,7 +528,7 @@ static void xen_pcibk_frontend_changed(s
>>  		break;
>>  
>>  	case XenbusStateReconfiguring:
>> -		xen_pcibk_reconfigure(pdev);
>> +		xen_pcibk_reconfigure(pdev, XenbusStateReconfiguring);
>>  		break;
>>  
>>  	case XenbusStateConnected:
>> @@ -664,6 +667,10 @@ static void xen_pcibk_be_watch(struct xe
>>  		xen_pcibk_setup_backend(pdev);
>>  		break;
>>  
>> +	case XenbusStateInitialised:
>> +		xen_pcibk_reconfigure(pdev, XenbusStateInitialised);
> 
> 
> Could you add a comment here that this is needed when multiple devices are added?

Sure.

> It also looks a bit odd that adding a device is now viewed as a reconfiguration. It seems to me that xen_pcibk_setup_backend() and xen_pcibk_reconfigure() really should be merged --- initialization code for both looks pretty much the same.

I thought the same, but didn't want to make more of a change than is
needed to address the problem at hand. Plus of course there's still
the possibility that someone may fix libxl, at which point the change
here (and hence the merging) would become unnecessary.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 09:45:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 09:45:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108866.207720 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVt88-0001JY-My; Mon, 12 Apr 2021 09:45:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108866.207720; Mon, 12 Apr 2021 09:45: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 1lVt88-0001JR-K2; Mon, 12 Apr 2021 09:45:16 +0000
Received: by outflank-mailman (input) for mailman id 108866;
 Mon, 12 Apr 2021 09:45:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVt87-0001JL-CP
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 09:45:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b09c2bc6-351e-4624-986d-cf21c2507d21;
 Mon, 12 Apr 2021 09:45:14 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DB96DAF1A;
 Mon, 12 Apr 2021 09: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: b09c2bc6-351e-4624-986d-cf21c2507d21
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618220714; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7sa/hj4u/V5reWyozzht2uCFPvZTmFgvs67chooCm9w=;
	b=ixDHpl+WefpBBW97JDvdapFctRI1FCKRJrYUvy1IlcBhan1vbckclU9UegDacILepp31JD
	URzkFzmuboCpDZ3It2nLriqE40EU6BIqU0uHC+c02lzoX55F+B90bxkTbgDfjszX/rQddB
	/FVIo83iBc9agoaAYNadJxshsA5T5Yg=
Subject: Re: [PATCH] xen/events: fix setting irq affinity
To: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org,
 stable@vger.kernel.org
References: <20210412062845.13946-1-jgross@suse.com>
 <38b2b47d-a77a-9d02-3034-f1c4d03ffdd5@suse.com>
 <bec9c7a5-5661-73b4-1b0b-137dacba7bbf@suse.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a5852f35-8828-c6a0-260a-cf095626eb1f@suse.com>
Date: Mon, 12 Apr 2021 11:45:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <bec9c7a5-5661-73b4-1b0b-137dacba7bbf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 11:39, Juergen Gross wrote:
> On 12.04.21 11:32, Jan Beulich wrote:
>> Possibly related, but first of all seeing the redundancy between
>> eoi_pirq() and ack_dynirq(): Wouldn't it make sense to break out the
>> common part into a helper? (Really the former could simply call the
>> latter as it seems.)
> 
> In theory, yes. OTOH this no longer applies to upstream, so i dind't
> bother doing that for stable.

Oh, I guess I should have check the tip of the tree first...

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 09:50:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 09:50:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108874.207733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtDF-0002CO-As; Mon, 12 Apr 2021 09:50:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108874.207733; Mon, 12 Apr 2021 09:50: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 1lVtDF-0002CH-6q; Mon, 12 Apr 2021 09:50:33 +0000
Received: by outflank-mailman (input) for mailman id 108874;
 Mon, 12 Apr 2021 09:50:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVtDD-0002CC-Mb
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 09:50:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c64d6431-4f9b-440a-83c6-f61235a847f6;
 Mon, 12 Apr 2021 09:50:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F0910AF49;
 Mon, 12 Apr 2021 09:50: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: c64d6431-4f9b-440a-83c6-f61235a847f6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618221030; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=H6kWfMg0gUyGaa9RXENbF9xOy3qyixJussWEJJGr+s8=;
	b=SbLG6rZpDZQulq1CWHptyOPnbkkyEjKFVzdSRtXzE67lJXOPSYe8RRp2jO1s7kSC0/St8D
	6fh9afusDJuoaa8/PIJJByggxOGRh/g8aFjNkP2OjiTBsx9tr5srSDp5e17fwoQ6f2gPJ8
	7V4v5u9iiPRcJ/rF+IG8FPcwFR/VHDA=
Subject: Re: [PATCH 3/3] xen-pciback: simplify vpci's find hook
To: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
 <e9f358bc-e957-e039-235c-6a9f68328554@oracle.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ea274ffe-4eee-9fa5-b5d1-e8528b112227@suse.com>
Date: Mon, 12 Apr 2021 11:50:30 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <e9f358bc-e957-e039-235c-6a9f68328554@oracle.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 09.04.2021 23:45, Boris Ostrovsky wrote:
> 
> On 4/7/21 10:37 AM, Jan Beulich wrote:
>> There's no point in comparing SBDF - we can simply compare the struct
>> pci_dev pointers. If they weren't the same for a given device, we'd have
>> bigger problems from having stored a stale pointer.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> 
> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>

Thanks. As the 1st patch of this series still looks to have an unclear
disposition (unless not getting back a reply on my responses to your
comments means silent agreement), I can't predict yet when I'd be able
to submit v2. Hence I'd like to point out that this patch is
independent of the former two, and hence would need to wait further if
you wanted to apply it. After all this one (unlike the other two) is
merely cleanup, and hence would rather want to go in during a merge
window.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:07:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:07:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108886.207748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtTP-0003O3-Ra; Mon, 12 Apr 2021 10:07:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108886.207748; Mon, 12 Apr 2021 10:07:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtTP-0003Nw-OI; Mon, 12 Apr 2021 10:07:15 +0000
Received: by outflank-mailman (input) for mailman id 108886;
 Mon, 12 Apr 2021 10:07:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVtTO-0003Nr-Ix
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:07:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id bd042f84-e4b7-45c9-9d9c-2150ff3eb951;
 Mon, 12 Apr 2021 10:07:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0BDFFAF1A;
 Mon, 12 Apr 2021 10:07: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: bd042f84-e4b7-45c9-9d9c-2150ff3eb951
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618222032; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=+RTXjoj+kHWO1a7Sx0es3+jux2sFLDS9OexALHjbCH4=;
	b=gylQiTz+egaWYTdmIZ8nH17btzvDkQpoeOgDlbL0DDYaqu1xhlAGmeSC/y+bAlfPpOl5aQ
	hBQP7L9ElIUeQ+Pp1bgIxQXMaMP47XjqugMadnmkUs9tWWVMxu5BboOo5L9uKinfj3Chmm
	c5G3TZJEQxlMCVZNcLxr1TEWy4z/lB0=
Subject: Re: [PATCH 1/2] x86: correct is_pv_domain() when !CONFIG_PV
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: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
 <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
 <YHQUJw8H2tgNy5iY@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <169d6a5b-81ec-f347-8edc-60ba6ab0864f@suse.com>
Date: Mon, 12 Apr 2021 12:07:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YHQUJw8H2tgNy5iY@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 12.04.2021 11:34, Roger Pau Monné wrote:
> On Fri, Nov 27, 2020 at 05:54:57PM +0100, Jan Beulich wrote:
>> --- a/xen/arch/x86/dom0_build.c
>> +++ b/xen/arch/x86/dom0_build.c
>> @@ -568,7 +568,7 @@ int __init construct_dom0(struct domain
>>  
>>      if ( is_hvm_domain(d) )
>>          rc = dom0_construct_pvh(d, image, image_headroom, initrd, cmdline);
>> -    else if ( is_pv_domain(d) )
>> +    else if ( is_pv_64bit_domain(d) || is_pv_32bit_domain(d) )
> 
> Urg, that's very confusing IMO, as I'm sure I would ask someone to
> just use is_pv_domain without realizing. It needs at least a comment,
> but even then I'm not sure I like it.

I can add a comment, sure, but I think this is as confusing (or not)
as ...

> So that I understand it, the point to use those expressions instead of
> is_pv_domain is to avoid calling dom0_construct_pv when CONFIG_PV is
> not enabled?
> 
> Maybe it wold be better to instead use:
> 
> if ( IS_ENABLED(CONFIG_PV) && is_pv_domain(d) )

... this.

> In any case I wonder if we should maybe aim to introduce a new type
> for system domains, that's neither PV or HVM, in order to avoid having
> system domains qualified as PV even when PV is compiled out.

This was my first thought, too, but would come with a much higher
price tag: We'd need to audit all uses for whether they're meant
to include the special domains. And this includes auditing of cases
where !is_hvm_*() may be inferred to mean is_pv_*().

>> --- a/xen/arch/x86/domain.c
>> +++ b/xen/arch/x86/domain.c
>> @@ -1544,6 +1544,7 @@ arch_do_vcpu_op(
>>   */
>>  static void load_segments(struct vcpu *n)
>>  {
>> +#ifdef CONFIG_PV
>>      struct cpu_user_regs *uregs = &n->arch.user_regs;
>>      unsigned long gsb = 0, gss = 0;
>>      bool compat = is_pv_32bit_vcpu(n);
>> @@ -1709,6 +1710,7 @@ static void load_segments(struct vcpu *n
>>          regs->cs            = FLAT_KERNEL_CS;
>>          regs->rip           = pv->failsafe_callback_eip;
>>      }
>> +#endif
>>  }
>>  
>>  /*
>> @@ -1723,6 +1725,7 @@ static void load_segments(struct vcpu *n
>>   */
>>  static void save_segments(struct vcpu *v)
>>  {
>> +#ifdef CONFIG_PV
>>      struct cpu_user_regs *regs = &v->arch.user_regs;
>>  
>>      read_sregs(regs);
>> @@ -1748,6 +1751,7 @@ static void save_segments(struct vcpu *v
>>          else
>>              v->arch.pv.gs_base_user = gs_base;
>>      }
>> +#endif
>>  }
> 
> Could you move {load,save}_segments to pv/domain.c and rename to
> pv_{load,save}_segments and provide a dummy handler for !CONFIG_PV in
> pv/domain.h?
> 
> Sorry it's slightly more work, but I think it's cleaner overall.

Doing so was my first thought too, but we'd lose the present inlining
of the functions. For save_segments() this could be dealt with by
moving paravirt_ctxt_switch_from() as well, but load_segments() would
remain.

As an aside, I've long been wondering why we use
paravirt_ctxt_switch_{from,to}() also for the idle domain. This
presently prevents their movement to pv/domain.c. From my not overly
detailed looking at it, I don't think anything the functions do
actually applies to idle vcpus.

>> --- a/xen/include/xen/sched.h
>> +++ b/xen/include/xen/sched.h
>> @@ -985,7 +985,7 @@ static always_inline bool is_control_dom
>>  
>>  static always_inline bool is_pv_domain(const struct domain *d)
>>  {
>> -    return IS_ENABLED(CONFIG_PV) &&
>> +    return IS_ENABLED(CONFIG_X86) &&
>>          evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
>>  }
>>  
>> @@ -1011,7 +1011,7 @@ static always_inline bool is_pv_32bit_vc
>>  
>>  static always_inline bool is_pv_64bit_domain(const struct domain *d)
>>  {
>> -    if ( !is_pv_domain(d) )
>> +    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
>>          return false;
> 
> I think overall is confusing to have a domain that returns true for
> is_pv_domain but false for both is_pv_{64,32}bit_domain checks.
> 
> I know those are only the system domains, but it feels confusing and
> could cause mistakes in the future IMO, as then we would have to
> carefully think where to use ( is_pv_64bit_domain(d)
> || is_pv_32bit_domain(d) ) vs just using is_pv_domain(d), or
> IS_ENABLED(CONFIG_PV) && is_pv_domain(d)

Imo it's not "then we would have to carefully think where to use ..."
but instead this patch is an indication that we should have been for
quite some time. For this reason (coming back to your first comment
at the top) I'm not sure adding a comment _there_ is actually useful.
Every use of is_pv_*() needs carefully considering which domains are
really meant.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:12:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:12:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108893.207771 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtYT-0004IX-Lh; Mon, 12 Apr 2021 10:12:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108893.207771; Mon, 12 Apr 2021 10: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 1lVtYT-0004IQ-HZ; Mon, 12 Apr 2021 10:12:29 +0000
Received: by outflank-mailman (input) for mailman id 108893;
 Mon, 12 Apr 2021 10:12:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lVtYS-0004IL-Nq
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:12:28 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lVtYS-0002Ru-Mx
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:12:28 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <iwj@xenproject.org>) id 1lVtYS-0001nn-LO
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:12:28 +0000
Received: from iwj by mariner.uk.xensource.com with local (Exim 4.89)
 (envelope-from <iwj@xenproject.org>)
 id 1lVtYN-0001p0-P4; Mon, 12 Apr 2021 11:12:23 +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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=References:In-Reply-To:Subject:CC:To:Date
	:Message-ID:Content-Transfer-Encoding:Content-Type:MIME-Version:From;
	bh=pAYIduxS3HtVbvf2kSC+TLaNmCWJAl5JKz6Z2jv7TUY=; b=V0I3+y7N5My2X0dsziwU1UV5Y0
	DjQfWASZZkWx8snU158/vwug/Dc7rm8IHd2R+jyLfBgguWnZ0v0gjawfSJqdaspsSH9dMCmmyOEZn
	UUsW/fXJNcaKWm+w2junS3GPW0ChUmDEgy4ShVn6CMxRadRo79h5CXHfLIn/qpY986FY=;
From: Ian Jackson <iwj@xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <24692.7431.556782.870034@mariner.uk.xensource.com>
Date: Mon, 12 Apr 2021 11:12:23 +0100
To: Jan Beulich <jbeulich@suse.com>
CC: committers@xenproject.org,
    xen-devel@lists.xenproject.org
Subject: Commit moratorium on staging-4.15 lifited
In-Reply-To: <24687.11032.872713.894725@mariner.uk.xensource.com>
References: <24684.14467.302145.214064@mariner.uk.xensource.com>
	<24687.11032.872713.894725@mariner.uk.xensource.com>
X-Mailer: VM 8.2.0b under 24.5.1 (i686-pc-linux-gnu)

Ian Jackson writes ("Re: Commit moratorium on staging-4.15"):
> Please hold off pushing to staging-4.15 until advised.  I need to
> do post-release updates do the version number and README and so on.  I
> plan to do that on Monday.

This is now done.  Backports may be pushed to staging-4.15 by the
stable tree maintainers, subject to the usual processes for stable
maintenance.

I noticed that 4.14 seems to be lacking the MAINTAINERS update so I
will do that now too.

Ian.


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:14:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:14:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108896.207782 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtaY-0004Ps-31; Mon, 12 Apr 2021 10:14:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108896.207782; Mon, 12 Apr 2021 10:14: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 1lVtaX-0004Pl-W7; Mon, 12 Apr 2021 10:14:37 +0000
Received: by outflank-mailman (input) for mailman id 108896;
 Mon, 12 Apr 2021 10:14:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVtaX-0004Pg-8c
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:14:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 54bf1f4e-b509-41de-b0d8-6c80de518746;
 Mon, 12 Apr 2021 10:14:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B6819AF11;
 Mon, 12 Apr 2021 10:14: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: 54bf1f4e-b509-41de-b0d8-6c80de518746
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618222475; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=DCuZ2Sx3ytZxXzqpvubsTDpffE0r+vCV2CshGy/PnIs=;
	b=AKpR3kvDzmeZpVYaY8KQY9wiByfVf4/2IQGri19BfKPrX6r3PFbitT99+F5XYl4LB46Moc
	Z8rZHzRNXCXLdz+WB2DsXg+YWHpQR1kIBQwXx3H61by32IvAHLbYvRWaeKHdzE+ZHje9Ec
	IClMs3IqwSNl/Fk/sxsPTjBVMALTTnY=
Subject: Re: Commit moratorium on staging-4.15 lifited
To: Ian Jackson <iwj@xenproject.org>
Cc: committers@xenproject.org, xen-devel@lists.xenproject.org
References: <24684.14467.302145.214064@mariner.uk.xensource.com>
 <24687.11032.872713.894725@mariner.uk.xensource.com>
 <24692.7431.556782.870034@mariner.uk.xensource.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <2df61767-7ccb-cfae-76fb-3c31b24abd39@suse.com>
Date: Mon, 12 Apr 2021 12:14:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <24692.7431.556782.870034@mariner.uk.xensource.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 12:12, Ian Jackson wrote:
> Ian Jackson writes ("Re: Commit moratorium on staging-4.15"):
>> Please hold off pushing to staging-4.15 until advised.  I need to
>> do post-release updates do the version number and README and so on.  I
>> plan to do that on Monday.
> 
> This is now done.  Backports may be pushed to staging-4.15 by the
> stable tree maintainers, subject to the usual processes for stable
> maintenance.
> 
> I noticed that 4.14 seems to be lacking the MAINTAINERS update so I
> will do that now too.

Oops. Thanks!

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:20:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:20:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108905.207795 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtgO-0005LC-Qe; Mon, 12 Apr 2021 10:20:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108905.207795; Mon, 12 Apr 2021 10:20:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtgO-0005L5-N7; Mon, 12 Apr 2021 10:20:40 +0000
Received: by outflank-mailman (input) for mailman id 108905;
 Mon, 12 Apr 2021 10:20:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lZ2i=JJ=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lVtgN-0005L0-6J
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:20:39 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe07::627])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 90070c1b-336f-423f-9f96-71c71c74c7dc;
 Mon, 12 Apr 2021 10:20:35 +0000 (UTC)
Received: from AM6P191CA0007.EURP191.PROD.OUTLOOK.COM (2603:10a6:209:8b::20)
 by VI1PR0802MB2430.eurprd08.prod.outlook.com (2603:10a6:800:b1::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.18; Mon, 12 Apr
 2021 10:20:32 +0000
Received: from AM5EUR03FT062.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8b:cafe::81) by AM6P191CA0007.outlook.office365.com
 (2603:10a6:209:8b::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend
 Transport; Mon, 12 Apr 2021 10:20:31 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT062.mail.protection.outlook.com (10.152.17.120) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Mon, 12 Apr 2021 10:20:31 +0000
Received: ("Tessian outbound b610e7b4d771:v90");
 Mon, 12 Apr 2021 10:20:30 +0000
Received: from 2d26eb4444bb.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 92ED0081-7A2C-43D2-BE89-7898C6D1FBD3.1; 
 Mon, 12 Apr 2021 10:20:20 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2d26eb4444bb.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 12 Apr 2021 10:20:20 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DB6PR08MB2646.eurprd08.prod.outlook.com (2603:10a6:6:20::26) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Mon, 12 Apr
 2021 10:20:17 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 10:20: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: 90070c1b-336f-423f-9f96-71c71c74c7dc
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fJQ10c6fct8kUACaMKXwNmIMEJ/yIhydrztyzbOsUH4=;
 b=hxv0F+RBYctQLDsC/VnyuzaPyttkwjXfsZBrkvXr9FO5NfJcVYoPny0q82bZboAJoNXjW9Em6RdVTOcRD07mW6tzMv7s/i4Iie4ubx1Xz9P4l/408M25d2BzjyBnHQoL/lmlw0txBCzWS0ca4nRAASdWunUu6iy0MpN40TCzweA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 8aceef6b6694594e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gGBS7HeS7yM+i7dqOEFaDO7G/zzozJj336j7u3qpy2tKPyYRazero+53f6OAwh9PZO1o1ayegChFeabuIuxUC/nmRZGkzzLOU/EDI7r4bX9r/Zx2lzc4xWMR+X+OOGWpyvd6r/jH0oqcI8UZ+2ZGmEnW+u8wfj+0NjVsXNBx7ZAmOpeU8r2IC53feseYi5VMZOSjf2w7xZgSvkzyOvydWJaFMO5ZRGF71ff4ngd3iBQKjR0+A4p/EF6cGVhGr8+ZfCJARrOSN3fUCu2BF6R3m7g4HtFQ0VjBGvcY7+q1u70ps+LL5X+Hx7cwXYohBHFahVIrJxPV0NQsQLDrjEbjQQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fJQ10c6fct8kUACaMKXwNmIMEJ/yIhydrztyzbOsUH4=;
 b=KyrFu/eB/LMSZAl3RYCwxUmG1W0szLBzsqDW0NtMTGR21vpdgui2nIjKXkqhRO/qRP2UkCTefEDTrMNaoq8SsNrUl9S9wYeuXAWrnXfmHnjXaItn2TxXijXkj0CfCINhdBTEIHLPXmYl1h6tdhrLG+BVDPIB3ItVJ2ae/cRlmTfI1f46edxVwXhb3wsidl+oyW952uK/DQ9oJBJRl8szthKGas1y8KzeyKg+vogh27vzTtiTzGgxQksygD7jZWSaoRlhsPurfWsMhUErYw7oe3mEigaBl408DLG0HrM+arNn4JhZDI+ccuRugPp1frsXWORehZSg/G0iE7/1g4QbmQ==
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=fJQ10c6fct8kUACaMKXwNmIMEJ/yIhydrztyzbOsUH4=;
 b=hxv0F+RBYctQLDsC/VnyuzaPyttkwjXfsZBrkvXr9FO5NfJcVYoPny0q82bZboAJoNXjW9Em6RdVTOcRD07mW6tzMv7s/i4Iie4ubx1Xz9P4l/408M25d2BzjyBnHQoL/lmlw0txBCzWS0ca4nRAASdWunUu6iy0MpN40TCzweA=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, "brian.woods@xilinx.com"
	<brian.woods@xilinx.com>
Subject: Re: [PATCH v3 0/3] Generic SMMU Bindings
Thread-Topic: [PATCH v3 0/3] Generic SMMU Bindings
Thread-Index: AQHW9DbnaDtcsjSAAUiKSXHzYBU+iaqmdrkAgAIitwCABL7WAIADyieA
Date: Mon, 12 Apr 2021 10:20:16 +0000
Message-ID: <A64881AF-DAD6-4A14-A545-354A75FE1B4F@arm.com>
References: <alpine.DEB.2.21.2101261435550.2568@sstabellini-ThinkPad-T480s>
 <80de3eb5-b338-af4e-42eb-d358f51d0bd7@xen.org>
 <alpine.DEB.2.21.2104061606080.31460@sstabellini-ThinkPad-T480s>
 <alpine.DEB.2.21.2104091714270.4885@sstabellini-ThinkPad-T480s>
In-Reply-To: <alpine.DEB.2.21.2104091714270.4885@sstabellini-ThinkPad-T480s>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
Authentication-Results-Original: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 2d8f157b-dbee-40c4-441a-08d8fd9c9a15
x-ms-traffictypediagnostic: DB6PR08MB2646:|VI1PR0802MB2430:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR0802MB243003988554C83A6A9D6257FC709@VI1PR0802MB2430.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 u8yuXlhK/johHNeZFuIZjzXqrgqkroWO5xHZwzI0rCWZkO2sBKc9NavsbmZAn9fUG9lzN0jLLOr+q2xpP9XjLVm7GF/TPBrBGWdhm6oixee7NCsGBXZBZlCf0L4JJsmZ6dsDRdSpz7lH1MVjRUqt8ielOb8mlSdEZF9p9K0iP119P850XsXR6YzJbad/MPoj3YwprdLo43fmTkpAnSvab7XfRkr0oSaamlY61SmRUQXbp7qKRRnCBR/Sb6keizPWOYsDLjqXGYG/NEG4r4rAK3dd16CMuTfYBwSp+Esv/75U1Dmnnvp5ZtOH50MDKmFULC7oplHicUnzN92BhZz8JkJNWaEQ85ZC1S+PSHQSjr7VMdBjMvdzOUYSCSJfWFaS7dkGlNawAlIVot1vG4mt5o2Vvj5d/OOJkvLYiy2xpikEcr59IN50F//2M54/oKr1mMNjk+U4ZCjUaZzmqhbC8l1ZJiTLgwTLVTuzWTg5zfTdqx/+TrcwGRtVifCXFUPCz/buGi/Wz289B+jv1zhM/0/hwSMdCOz95RzLwmUvv10ewVayNlV64fIJk17hkpcvx/dUYWpERQkJbZHYYfH0gSQEXGxkVnVa7aNSXAx3P1/smJnL3GNDR+uiNEWhch7B00ajyvpi+wxjLLnSdbDkWUsJtTHIaM0lYpAyMtXFTRpAXHRtx7rqqNqeurNBMeP0Cb3hwxv4oBEn2HSNkqVca1alEJD07P5zrVXHoKffLIER01lM6t63krXXtkzPxZJPmmFOyz5MrOtrUtKEVKyx1jLLJggPLrw1QxISClwiEL0=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(366004)(136003)(39860400002)(376002)(71200400001)(66946007)(2906002)(8936002)(76116006)(83380400001)(66446008)(91956017)(64756008)(316002)(6486002)(66556008)(166002)(66616009)(6512007)(99936003)(33656002)(2616005)(66476007)(186003)(86362001)(8676002)(53546011)(38100700002)(966005)(6506007)(36756003)(5660300002)(4326008)(26005)(478600001)(54906003)(6916009)(41533002)(45980500001)(6606295002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: multipart/mixed;
	boundary="_004_A64881AFDAD64A14A545354A75FE1B4Farmcom_"
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR08MB2646
Original-Authentication-Results: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	c9afd184-6ef7-4c4d-883c-08d8fd9c913d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EokDqbUZXNSY3GYHENXtJ26S4+RqlTlIQ97mBYOHP18eTatzj2KxWhKRJyCAa3GsGn+6RmfBXzqFZxvZxhSe2+w8nHODQiyBjolJKbK96xNWhOeT35iA50dwVh2801vpDRC1AMDRXlygWyZ/zLzw1JSmCcW1osAe8plc6uwdIDpxIGiXsSvhMzTiLNsalT5v9Gy9GmCjLwIL41+mu4280KsDObD9gIL3W1ftH969CA+yxAJtfHqTW7X1lF/wM46s2nl/uaqLFNiaJ4nD9T8qngqOiqI5XZ+TzEpr0x9ZWMaWW3mtdNTb6x0t0yAm8qdCAruFIXzN+zf5E8AJ21T3jpqlyTnGVefiPkg58Ypun312pDMHs+ZynD2Cfr/gac9i+QTNoK4pE6vaPRvS+tC2c+sKTHC1Y+wciFnbItQs4D4UdTADODDjpi75LfyriwFR3IP873LaU7RH6TnsNLZASLKyeOqIfaF2laxjWapYNuTqGGMt0LVhnGtgBLI3wEJzJC5X9K/Op7A2THynHME4Maxthnrhx7WULKPd0OlzEuMA/Zu4WeQ1Deg/28v2XHo/04hYSXIas26F2HRhETvC0YyZPzz8AbnQR9ItlLtD/EwLUiT0AGQeXhisKG6Aazh5v1jv5D606TwlMP8QxAfWs1+Sn/+ZRm7xNxEKFx650dYkUaDjNV/0VX0atKoyjXLeIMfeJJwx+jyxj3ilpjzNUFkmSfANGXSZcu8KLl1yYPJzqhKEw7DNKByNIRKqNISxDfinRMGIvj6lrjm4uEgYmRJVsabiYzrfgC9Rm7aknQ4=
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:(4636009)(376002)(396003)(39860400002)(136003)(346002)(36840700001)(46966006)(86362001)(356005)(36860700001)(47076005)(33964004)(45080400002)(166002)(235185007)(70206006)(2616005)(186003)(30864003)(6862004)(2906002)(6486002)(6506007)(6512007)(53546011)(478600001)(336012)(316002)(99936003)(82310400003)(33656002)(4326008)(81166007)(82740400003)(966005)(36756003)(83380400001)(26005)(8936002)(66616009)(5660300002)(70586007)(54906003)(8676002)(107886003)(41533002)(6606295002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 10:20:31.3926
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2d8f157b-dbee-40c4-441a-08d8fd9c9a15
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:
	AM5EUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2430

--_004_A64881AFDAD64A14A545354A75FE1B4Farmcom_
Content-Type: multipart/alternative;
	boundary="_000_A64881AFDAD64A14A545354A75FE1B4Farmcom_"

--_000_A64881AFDAD64A14A545354A75FE1B4Farmcom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

SGkgU3RlZmFubywNCg0KPiBPbiAxMCBBcHIgMjAyMSwgYXQgMToyNyBhbSwgU3RlZmFubyBTdGFi
ZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPiB3cm90ZToNCj4NCj4gT24gVHVlLCA2IEFw
ciAyMDIxLCBTdGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6DQo+PiBPbiBNb24sIDUgQXByIDIwMjEs
IEp1bGllbiBHcmFsbCB3cm90ZToNCj4+PiBPbiAyNi8wMS8yMDIxIDIyOjU4LCBTdGVmYW5vIFN0
YWJlbGxpbmkgd3JvdGU6DQo+Pj4+IEhpIGFsbCwNCj4+Pg0KPj4+IEhpIFN0ZWZhbm8sDQo+Pj4N
Cj4+Pj4gVGhpcyBzZXJpZXMgaW50cm9kdWNlcyBzdXBwb3J0IGZvciB0aGUgZ2VuZXJpYyBTTU1V
IGJpbmRpbmdzIHRvDQo+Pj4+IHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11LmMuDQo+
Pj4+DQo+Pj4+IFRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHNlcmllcyB3YXMNCj4+Pj4gaHR0cHM6
Ly9tYXJjLmluZm8vP2w9eGVuLWRldmVsJm09MTU5NTM5MDUzNDA2NjQzDQo+Pj4gU29tZSBjaGFu
Z2VzIGluIHRoZSBTTU1VIGRyaXZlcnMgd2VudCBpbiByZWNlbnRseS4gSSBiZWxpZXZlIHRoaXMg
dG91Y2hlZA0KPj4+IHNpbWlsYXIgYXJlYSB0byB0aGlzIHNlcmllcy4gV291bGQgeW91IGJlIGFi
bGUgdG8gY2hlY2sgdGhhdCB0aGlzIHNlcmllcyBzdGlsbA0KPj4+IHdvcmsgYXMgaW50ZW50ZWQ/
DQo+Pg0KPj4gVGhhbmtzIGZvciB0aGUgaGVhZHMgdXAsIG5vLCB1bmZvcnR1bmF0ZWx5IHRoZXkg
ZG9uJ3Qgd29yayA6LSgNCj4+DQo+PiBUaGV5IGJhZGx5IGNsYXNoLiBJIGRpZCB0aGUgZm9yd2Fy
ZCBwb3J0IG9mIHRoZSB0aHJlZSBwYXRjaGVzIGJ1dCB0aGV5DQo+PiBmYWlsIGF0IHJ1bnRpbWUg
aW4gbXkgdGVzdHMuIEkgcmFuIG91dCBvZiB0aW1lIHRvIGZpZ3VyZSBvdXQgd2hhdCBpcyB0aGUN
Cj4+IHByb2JsZW0sIGFuZCBJJ2xsIGhhdmUgdG8gcGljayBpdCB1cCBhdCBzb21lIHBvaW50IGlu
IHRoZSBmdXR1cmUgKGl0DQo+PiBtaWdodCBub3QgYmUgYW55IHRpbWUgc29vbiB1bmZvcnR1bmF0
ZWx5KS4NCj4+DQo+PiBSYWh1bCwgaWYgeW91IGhhdmUgYW55IGlkZWFzIGFib3V0IHdoYXQgdGhl
IHByb2JsZW0gaXMgcGxlYXNlIGxldCBtZQ0KPj4ga25vdy4gVGhpcyBpcyB0aGUgYnJhbmNoIHdp
dGggdGhlIGZvcndhcmQgcG9ydDoNCj4+DQo+PiBodHRwOi8veGVuYml0cy54ZW5wcm9qZWN0Lm9y
Zy9naXQtaHR0cC9wZW9wbGUvc3N0YWJlbGxpbmkveGVuLXVuc3RhYmxlLmdpdCBzbW11LWdlbmVy
aWMNCj4NCj4gSSBkaWQgc29tZSBtb3JlIGludmVzdGlnYXRpb24gYW5kIHNwb3R0ZWQgYSBtaW5v
ciBlcnJvciBpbiBteSBmb3J3YXJkDQo+IHBvcnQuIFRoaXMgYW4gdXBkYXRlZCBicmFuY2ggYmFz
ZWQgb24gc3RhZ2luZzoNCj4NCj4gaHR0cDovL3hlbmJpdHMueGVucHJvamVjdC5vcmcvZ2l0LWh0
dHAvcGVvcGxlL3NzdGFiZWxsaW5pL3hlbi11bnN0YWJsZS5naXQgc21tdS1nZW5lcmljLTINCj4N
Cj4gSG93ZXZlciwgdGhlIHJlYWwgaXNzdWUgaXMgdGhhdCBSYWh1bCdzIHBhdGNoZXMgYnJlYWsg
U01NVSBzdXBwb3J0IG9uDQo+IFp5bnFNUCBldmVuIHdpdGhvdXQgbXkgY2hhbmdlcy4gSSByYW4g
YSBiaXNlY3Rpb24gYW5kIGZvdW5kIG91dCB0aGF0DQo+IHBhdGNoICMyIGlzIHRoZSBjdWxwcml0
Og0KPg0KPiA1ZWUzZmEwYjIxZWEgeGVuL2FybTogc21tdXYxOiBDb25zb2xpZGF0ZSBzdHJlYW0g
bWFwIGVudHJ5IHN0YXRlDQo+DQo+IEl0IGNhdXNlcyB0aGUgYWJvcnQgYXBwZW5kZWQgYmVsb3cu
IFRoZSBwcm9ibGVtIGRvZXNuJ3Qgc2VlbQ0KPiBwYXJ0aWN1bGFybHkgWnlucU1QIHNwZWNpZmlj
LiBSYWh1bCwgY2FuIHlvdSByZXByb2R1Y2UgaXQgb24geW91ciBzaWRlPw0KDQpZZXMuIEkgY2Fu
IHJlcHJvZHVjZSB0aGUgaXNzdWUgb24gWGlsaW54IFFFTVUgYXMgd2UgZG9u4oCZdCBoYXZlIGFj
Y2VzcyB0byBwaHlzaWNhbCBaeW5xTVAgYW5kIGZvdW5kIG91dCB0aGF0DQphc3NvY2lhdGluZyBh
biBpb21tdSBncm91cCBwb2ludGVyIHdpdGggdGhlIFMyQ1IgY2F1c2luZyB0aGUgaXNzdWUuDQoN
CkFzc29jaWF0aW5nIHRoZSBncm91cCBwb2ludGVyIHdpdGggUzJDUiBpcyBwYXJ0IG9mIHRoZSBw
YXRjaCAieGVuL2FybTogc21tdXYxOiBJbnRlbGxpZ2VudCBTTVIgYWxsb2NhdGlvbuKAnS4NCg0K
SSBqdXN0IHJldmVydCB0aGF0IHBhcnQgb2YgdGhlIGNvZGUgZnJvbSB0aGUgcGF0Y2ggYW5kIGl0
IHdvcmtzIGZpbmUgZm9yIG1lLiBQbGVhc2UgZmluZCB0aGUgYXR0YWNoZWQgcGF0Y2ggZm9yIHRo
ZSBzYW1lLg0KDQpBcyBwZXIgeW91ciBhbmFseXNpcyAiNWVlM2ZhMGIyMWVhIHhlbi9hcm06IHNt
bXV2MTogQ29uc29saWRhdGUgc3RyZWFtIG1hcCBlbnRyeSBzdGF0ZeKAnSBpcyBjYXVzaW5nIHRo
ZSBpc3N1ZSBidXQgd2hhdCBJIGZvdW5kIG91dCB0aGF0DQoieGVuL2FybTogc21tdXYxOiBJbnRl
bGxpZ2VudCBTTVIgYWxsb2NhdGlvbuKAnSBpcyBjYXVzaW5nIHRoZSBpc3N1ZS4NCkNhbiB5b3Ug
cGxlYXNlIHRlc3QgaXQgb24gdGhlIHBoeXNpY2FsIGRldmljZSBhbmQgbGV0IG1lIGtub3cgaWYg
aXQgd29ya3MgZm9yIHlvdSBhbHNvIHRvIG1ha2Ugc3VyZSB3ZSBib3RoIG9ic2VydmluZyB0aGUg
c2FtZSBpc3N1ZS4NCg0KDQoNClJlZ2FyZHMsDQpSYWh1bA0KDQo+DQo+DQo+IChYRU4pIHNtbXU6
IC9hbWJhL3NtbXVAZmQ4MDAwMDA6IGQwOiBwMm1hZGRyIDB4MDAwMDAwMDg3YmZhMjAwMA0KPiAo
WEVOKSBEYXRhIEFib3J0IFRyYXAuIFN5bmRyb21lPTB4NQ0KPiAoWEVOKSBXYWxraW5nIEh5cGVy
dmlzb3IgVkEgMHgxMTRlYmZmZjggb24gQ1BVMCB2aWEgVFRCUiAweDAwMDAwMDAwMDBmMzgwMDAN
Cj4gKFhFTikgMFRIWzB4MF0gPSAweDAwMDAwMDAwMDBmM2JmN2YNCj4gKFhFTikgMVNUWzB4NF0g
PSAweDAwMDAwMDAwMDAwMDAwMDANCj4gKFhFTikgQ1BVMDogVW5leHBlY3RlZCBUcmFwOiBEYXRh
IEFib3J0DQo+IChYRU4pIC0tLS1bIFhlbi00LjE0LjAgIGFybTY0ICBkZWJ1Zz15ICAgTm90IHRh
aW50ZWQgXS0tLS0NCj4gKFhFTikgQ1BVOiAgICAwDQo+IChYRU4pIFBDOiAgICAgMDAwMDAwMDAw
MDI0YTc3YyBzbW11LmMjZmluZF9zbW11X21hc3RlcisweDgvMHgzYw0KPiAoWEVOKSBMUjogICAg
IDAwMDAwMDAwMDAyNGE4YTQNCj4gKFhFTikgU1A6ICAgICAwMDAwMDAwMDAwMmZmMWYwDQo+IChY
RU4pIENQU1I6ICAgODAwMDAyNDkgTU9ERTo2NC1iaXQgRUwyaCAoSHlwZXJ2aXNvciwgaGFuZGxl
cikNCj4gKFhFTikgICAgICBYMDogMDAwMDAwMDExNGVjMDAwMCAgWDE6IDAwMDA4MDAwZmJmYzc0
NzggIFgyOiAwMDAwODAwMGZiZmM3MWUwDQo+IChYRU4pICAgICAgWDM6IDAwMDAwMDAwMDAyYWY4
NDAgIFg0OiAwMDAwMDAwMDAwMDAwMDAwICBYNTogMDAwMDAwMDAwMDAwMDAwMQ0KPiAoWEVOKSAg
ICAgIFg2OiAwMDAwMDAwMDAwMDAwMDAwICBYNzogMDAwMDAwMDAwMDAwMDAwMCAgWDg6IDAwMDA4
MDAwZmJmOGI5ZTANCj4gKFhFTikgICAgICBYOTogMDAwMDAwMDAwMDAwMDAwNCBYMTA6IDAxMDEw
MTAxMDEwMTAxMDEgWDExOiAwMDAwMDAwMDAwMDAwMDIwDQo+IChYRU4pICAgICBYMTI6IDAwMDAw
MDAwMDAwMDAwMTggWDEzOiBmZjAwMDAwMDAwMDAwMDAwIFgxNDogMDQwMDAwMDA4NDAwMDAwMA0K
PiAoWEVOKSAgICAgWDE1OiAwMDAwMDAwMDAwMDAwMDAwIFgxNjogMDAwMDAwMDAwMDJiMTAwMCBY
MTc6IDAwMDAwMDAwMDAyYjEwMDANCj4gKFhFTikgICAgIFgxODogMDAwMDAwMDAwMDJiMjAwMCBY
MTk6IDAwMDA4MDAwZmJmZmNiNzAgWDIwOiAwMDAwMDAwMDAwMmFmODQ4DQo+IChYRU4pICAgICBY
MjE6IDAwMDA4MDAwZmJmYzc0NzggWDIyOiAwMDAwODAwMGZiZmM3NGQ4IFgyMzogMDAwMDgwMDBm
YmZjNzUwOA0KPiAoWEVOKSAgICAgWDI0OiAwMDAwMDAwMDAwMDAwMDAwIFgyNTogMDAwMDAwMDAw
MDAwMDAwMSBYMjY6IDAwMDA4MDAwZmJmYTdjMjANCj4gKFhFTikgICAgIFgyNzogMDAwMDAwMDAw
MDAwMDAwMCBYMjg6IDAwMDAwMDAwMDAwMDAwMDAgIEZQOiAwMDAwMDAwMDAwMmZmMWYwDQo+IChY
RU4pDQo+IChYRU4pICAgVlRDUl9FTDI6IDgwMDIzNTU4DQo+IChYRU4pICBWVFRCUl9FTDI6IDAw
MDAwMDA4N2JmNTQwMDANCj4gKFhFTikNCj4gKFhFTikgIFNDVExSX0VMMjogMzBjZDE4M2QNCj4g
KFhFTikgICAgSENSX0VMMjogMDAwMDAwMDAwMDAwMDAzYQ0KPiAoWEVOKSAgVFRCUjBfRUwyOiAw
MDAwMDAwMDAwZjM4MDAwDQo+IChYRU4pDQo+IChYRU4pICAgIEVTUl9FTDI6IDk2MDAwMDA1DQo+
IChYRU4pICBIUEZBUl9FTDI6IDAwMDAwMDAwMDAyMjAwMDANCj4gKFhFTikgICAgRkFSX0VMMjog
MDAwMDAwMDExNGViZmZmOA0KPiAoWEVOKQ0KPiAoWEVOKSBYZW4gc3RhY2sgdHJhY2UgZnJvbSBz
cD0wMDAwMDAwMDAwMmZmMWYwOg0KPiAoWEVOKSAgICAwMDAwMDAwMDAwMmZmMjIwIDAwMDAwMDAw
MDAyNGFlODAgMDAwMDgwMDBmYmZhNTAwMCAwMDAwODAwMGZiZmM3NGU4DQo+IChYRU4pICAgIDAw
MDA4MDAwZmJmYTUwMDAgMDAwMDAwMDgwMDAwMDAwMSAwMDAwMDAwMDAwMmZmMmEwIDAwMDAwMDAw
MDAyNGM2ZTgNCj4gKFhFTikgICAgMDAwMDgwMDBmYmZhNTAwMCAwMDAwMDAwMGZmZmZmZmYwIDAw
MDA4MDAwZmJmYzc0NzggMDAwMDgwMDBmYmZjNzRkOA0KPiAoWEVOKSAgICAwMDAwODAwMGZiZmM3
NTA4IDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMSAwMDAwMDAwMDAwMDAwMDAxDQo+
IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMmZm
MmEwIDAwMDAwMDAwMDAyNGM2YjgNCj4gKFhFTikgICAgMDAwMDgwMDBmYmZhNTAwMCAwMDAwMDAw
MDAwMmZmNTUwIDAwMDAwMDAwMDAyZmYyZDAgMDAwMDAwMDAwMDJjNjI3NA0KPiAoWEVOKSAgICAw
MDAwODAwMGZiZmM3NDc4IDAwMDAwMDAwMDAyZmY1NTAgMDAwMDgwMDBmYmZhNTAwMCAwMDAwMDAw
MDAwMDAwMDA1DQo+IChYRU4pICAgIDAwMDAwMDAwMDAyZmYzOTAgMDAwMDAwMDAwMDJjNjcwNCAw
MDAwODAwMGZiZmMzY2U4IDAwMDAwMDAwMDAyZmY1NTANCj4gKFhFTikgICAgMDAwMDgwMDBmYmZh
NTAwMCAwMDAwMDAwMDAwMDAwMDA1IDAwMDA4MDAwZmJmYzc0NzggMDAwMDAwMDAwMDAwMDAwMA0K
PiAoWEVOKSAgICAwMDAwODAwMGZiZmYxMTAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAw
MDAwMCAwMDAwMDAwMDAwMDAwMDAwDQo+IChYRU4pICAgIDAwMDAwMDAwMDAyZDI4ZTggMDAwMDAw
MDBmYmY3ODA5MCAwMDAwMDAwMDAwMmQyOGQ4IDAwMDAwMDAwMDAyZDFiODANCj4gKFhFTikgICAg
MDAwMDAwMDAwMDJmZjM4MCAwMDAwMDAwMGZmMGIwMDAwIDAwMDA4MDAwZmJmYzNjZTggMDAwMDAw
MDAwMDAwMTAwMA0KPiAoWEVOKSAgICAwMDAwODAwMGZiZmE1MDAwIDAwMDA4MDAwZmJmYTUwMDAg
MDAwMDAwMDAwMDAwMDAwNSAwMDAwMDAwMDAwMmM2NjAwDQo+IChYRU4pICAgIDAwMDAwMDAwMDAy
ZmY0NTAgMDAwMDAwMDAwMDJjNjcwNCAwMDAwODAwMGZiZmMwMDAwIDAwMDAwMDAwMDAyZmY1NTAN
Cj4gKFhFTikgICAgMDAwMDgwMDBmYmZhNTAwMCAwMDAwMDAwMDAwMDAwMDA1IDAwMDA4MDAwZmJm
YzNjZTggMDAwMDAwMDAwMDAwMDAwMA0KPiAoWEVOKSAgICAwMDAwODAwMGZiZmYwMGE4IDAwMDAw
MDAwMDAwMDAwMTMgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwDQo+IChYRU4pICAg
IDAwMDAwMDAwMDAyZDI4ZTggMDAwMDAwMDBmYmY3ODA5MCAwMDAwMDAwMDAwMmQyOGQ4IDAwMDAw
MDAwMDAyZDFiODANCj4gKFhFTikgICAgMDAwMDAwMDAwMDJmZjQ0MCAwMDAwMDAwMGZmOTkwMDAw
IDAwMDA4MDAwZmJmYzAwMDAgMDAwMDAwMDAwMDAwMTAwMA0KPiAoWEVOKSAgICAwMDAwODAwMGZi
ZmE1MDAwIDAwMDA4MDAwZmJmYTUwMDAgMDAwMDAwMDAwMDAwMDAwNSAwMDAwMDAwMDAwMmM2NjAw
DQo+IChYRU4pICAgIDAwMDAwMDAwMDAyZmY1MTAgMDAwMDAwMDAwMDJjNmY3OCAwMDAwMDAwMDAw
MDA4MDkwIDAwMDAwMDAwMDBlMDAwMDANCj4gKFhFTikgICAgMDAwMDAwMDAwMDJkMmFlOCAwMDAw
ODAwMGZiZmE1MDAwIDAwMDAwMDAwMDAwMDAwMGYgMDAwMDAwMDAwMDAwMDAwNA0KPiAoWEVOKSAg
ICAwMDAwMDAwMDAwMmUwNWUwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDg4MDAwMDAwMCAwMDAw
MDAwMDAwMDAwMDAyDQo+IChYRU4pICAgIDAwMDAwMDAwMDAyZDI4ZTggMDAwMDAwMDAwMDIyZDFl
NCAwMDAwMDAwMDAwMmQyOGQ4IDAwMDAwMDAwMDAyZDFiODANCj4gKFhFTikgICAgMDAwMDAwMDAw
MDJmZjUwMCAwMDAwMDAwMDAwMmI3ZGEwIDAwMDAwMDAwMDAwMDgwOTAgMDAwMDAwMDAwMGUwMDAw
MA0KPiAoWEVOKSAgICAwMDAwMDAwMDAwMmQyYWU4IDAwMDA4MDAwZmJmYTUwMDAgMDAwMDAwMDAw
MDAwMDAwNSAwMDAwMDAwMDAwMmM2ZjYwDQo+IChYRU4pICAgIDAwMDAwMDAwMDAyZmZkZjAgMDAw
MDAwMDAwMDJjYjFmYyAwMDAwODAwMGZiZmE1MDAwIDAwMDAwMDAwMDAyYjA2MDANCj4gKFhFTikg
ICAgMDAwMDAwMDAwMDM0MDQzMCAwMDAwMDAwMDAwMDAwMDA0IDAwMDAwMDAwMDAyYTM4MTAgMDAw
MDAwMDAwMDAwMDAwMA0KPiAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAxIDAwMDA4MDAwZmJmYTUw
MDAgMDAwMDgwMDBmYmY3MDAwMCAwMDAwMDAwMDAwMDAwMDAwDQo+IChYRU4pICAgIDAwMDAwMDAw
MDAwMDAwMDEgMDAwMDAwMDAyMDAwMDAwMCAwMDAwMDAwMDQwMDAwMDAwIDAwMDAwMDAwMDAwMDAw
MDANCj4gKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAw
MDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMA0KPiAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIDAw
MDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwDQo+IChYRU4p
ICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAw
MDAwMDAwMDAwMDAwMDANCj4gKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAw
MDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMA0KPiAoWEVOKSAgICAwMDAwMDAw
MDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAw
MDAwDQo+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAw
MDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDANCj4gKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAw
MDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMA0KPiAoWEVO
KSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAw
MDAwMDAwMDAwMDAwMDAwDQo+IChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAw
MDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDANCj4gKFhFTikgICAgMDAwMDAw
MDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAw
MDAwMA0KPiAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAw
MDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwDQo+IChYRU4pIFhlbiBjYWxsIHRyYWNlOg0KPiAo
WEVOKSAgICBbPDAwMDAwMDAwMDAyNGE3N2M+XSBzbW11LmMjZmluZF9zbW11X21hc3RlcisweDgv
MHgzYyAoUEMpDQo+IChYRU4pICAgIFs8MDAwMDAwMDAwMDI0YThhND5dIHNtbXUuYyNmaW5kX3Nt
bXVfZm9yX2RldmljZSsweDQ4LzB4OTQgKExSKQ0KPiAoWEVOKSAgICBbPDAwMDAwMDAwMDAyNGFl
ODA+XSBzbW11LmMjYXJtX3NtbXVfYXNzaWduX2RldisweDU4LzB4YjQ4DQo+IChYRU4pICAgIFs8
MDAwMDAwMDAwMDI0YzZlOD5dIGlvbW11X2Fzc2lnbl9kdF9kZXZpY2UrMHg2NC8weGMwDQo+IChY
RU4pICAgIFs8MDAwMDAwMDAwMDJjNjI3ND5dIGRvbWFpbl9idWlsZC5jI2hhbmRsZV9ub2RlKzB4
MzEwLzB4OWVjDQo+IChYRU4pICAgIFs8MDAwMDAwMDAwMDJjNjcwND5dIGRvbWFpbl9idWlsZC5j
I2hhbmRsZV9ub2RlKzB4N2EwLzB4OWVjDQo+IChYRU4pICAgIFs8MDAwMDAwMDAwMDJjNjcwND5d
IGRvbWFpbl9idWlsZC5jI2hhbmRsZV9ub2RlKzB4N2EwLzB4OWVjDQo+IChYRU4pICAgIFs8MDAw
MDAwMDAwMDJjNmY3OD5dIGNvbnN0cnVjdF9kb20wKzB4NDEwLzB4NGJjDQo+IChYRU4pICAgIFs8
MDAwMDAwMDAwMDJjYjFmYz5dIHN0YXJ0X3hlbisweGI5Yy8weGNhNA0KPiAoWEVOKSAgICBbPDAw
MDAwMDAwMDAyMDAxYTA+XSBhcm02NC9oZWFkLm8jcHJpbWFyeV9zd2l0Y2hlZCsweGMvMHgxYw0K
DQo=

--_000_A64881AFDAD64A14A545354A75FE1B4Farmcom_
Content-Type: text/html; charset="utf-8"
Content-ID: <8FB1397B7F83BB4196D2C5173763864C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64

PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i
dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5Pg0KPGRpdiBjbGFzcz0i
Qm9keUZyYWdtZW50Ij48Zm9udCBzaXplPSIyIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExcHQ7
Ij4NCjxkaXYgY2xhc3M9IlBsYWluVGV4dCI+SGkgU3RlZmFubyw8YnI+DQo8YnI+DQomZ3Q7IE9u
IDEwIEFwciAyMDIxLCBhdCAxOjI3IGFtLCBTdGVmYW5vIFN0YWJlbGxpbmkgJmx0O3NzdGFiZWxs
aW5pQGtlcm5lbC5vcmcmZ3Q7IHdyb3RlOjxicj4NCiZndDsgPGJyPg0KJmd0OyBPbiBUdWUsIDYg
QXByIDIwMjEsIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90ZTo8YnI+DQomZ3Q7Jmd0OyBPbiBNb24s
IDUgQXByIDIwMjEsIEp1bGllbiBHcmFsbCB3cm90ZTo8YnI+DQomZ3Q7Jmd0OyZndDsgT24gMjYv
MDEvMjAyMSAyMjo1OCwgU3RlZmFubyBTdGFiZWxsaW5pIHdyb3RlOjxicj4NCiZndDsmZ3Q7Jmd0
OyZndDsgSGkgYWxsLDxicj4NCiZndDsmZ3Q7Jmd0OyA8YnI+DQomZ3Q7Jmd0OyZndDsgSGkgU3Rl
ZmFubyw8YnI+DQomZ3Q7Jmd0OyZndDsgPGJyPg0KJmd0OyZndDsmZ3Q7Jmd0OyBUaGlzIHNlcmll
cyBpbnRyb2R1Y2VzIHN1cHBvcnQgZm9yIHRoZSBnZW5lcmljIFNNTVUgYmluZGluZ3MgdG88YnI+
DQomZ3Q7Jmd0OyZndDsmZ3Q7IHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11LmMuPGJy
Pg0KJmd0OyZndDsmZ3Q7Jmd0OyA8YnI+DQomZ3Q7Jmd0OyZndDsmZ3Q7IFRoZSBsYXN0IHZlcnNp
b24gb2YgdGhlIHNlcmllcyB3YXM8YnI+DQomZ3Q7Jmd0OyZndDsmZ3Q7IDxhIGhyZWY9Imh0dHBz
Oi8vbWFyYy5pbmZvLz9sPXhlbi1kZXZlbCZhbXA7bT0xNTk1MzkwNTM0MDY2NDMiPmh0dHBzOi8v
bWFyYy5pbmZvLz9sPXhlbi1kZXZlbCZhbXA7bT0xNTk1MzkwNTM0MDY2NDM8L2E+PGJyPg0KJmd0
OyZndDsmZ3Q7IFNvbWUgY2hhbmdlcyBpbiB0aGUgU01NVSBkcml2ZXJzIHdlbnQgaW4gcmVjZW50
bHkuIEkgYmVsaWV2ZSB0aGlzIHRvdWNoZWQ8YnI+DQomZ3Q7Jmd0OyZndDsgc2ltaWxhciBhcmVh
IHRvIHRoaXMgc2VyaWVzLiBXb3VsZCB5b3UgYmUgYWJsZSB0byBjaGVjayB0aGF0IHRoaXMgc2Vy
aWVzIHN0aWxsPGJyPg0KJmd0OyZndDsmZ3Q7IHdvcmsgYXMgaW50ZW50ZWQ/PGJyPg0KJmd0OyZn
dDsgPGJyPg0KJmd0OyZndDsgVGhhbmtzIGZvciB0aGUgaGVhZHMgdXAsIG5vLCB1bmZvcnR1bmF0
ZWx5IHRoZXkgZG9uJ3Qgd29yayA6LSg8YnI+DQomZ3Q7Jmd0OyA8YnI+DQomZ3Q7Jmd0OyBUaGV5
IGJhZGx5IGNsYXNoLiBJIGRpZCB0aGUgZm9yd2FyZCBwb3J0IG9mIHRoZSB0aHJlZSBwYXRjaGVz
IGJ1dCB0aGV5PGJyPg0KJmd0OyZndDsgZmFpbCBhdCBydW50aW1lIGluIG15IHRlc3RzLiBJIHJh
biBvdXQgb2YgdGltZSB0byBmaWd1cmUgb3V0IHdoYXQgaXMgdGhlPGJyPg0KJmd0OyZndDsgcHJv
YmxlbSwgYW5kIEknbGwgaGF2ZSB0byBwaWNrIGl0IHVwIGF0IHNvbWUgcG9pbnQgaW4gdGhlIGZ1
dHVyZSAoaXQ8YnI+DQomZ3Q7Jmd0OyBtaWdodCBub3QgYmUgYW55IHRpbWUgc29vbiB1bmZvcnR1
bmF0ZWx5KS48YnI+DQomZ3Q7Jmd0OyA8YnI+DQomZ3Q7Jmd0OyBSYWh1bCwgaWYgeW91IGhhdmUg
YW55IGlkZWFzIGFib3V0IHdoYXQgdGhlIHByb2JsZW0gaXMgcGxlYXNlIGxldCBtZTxicj4NCiZn
dDsmZ3Q7IGtub3cuIFRoaXMgaXMgdGhlIGJyYW5jaCB3aXRoIHRoZSBmb3J3YXJkIHBvcnQ6PGJy
Pg0KJmd0OyZndDsgPGJyPg0KJmd0OyZndDsgPGEgaHJlZj0iaHR0cDovL3hlbmJpdHMueGVucHJv
amVjdC5vcmcvZ2l0LWh0dHAvcGVvcGxlL3NzdGFiZWxsaW5pL3hlbi11bnN0YWJsZS5naXQiPg0K
aHR0cDovL3hlbmJpdHMueGVucHJvamVjdC5vcmcvZ2l0LWh0dHAvcGVvcGxlL3NzdGFiZWxsaW5p
L3hlbi11bnN0YWJsZS5naXQ8L2E+IHNtbXUtZ2VuZXJpYzxicj4NCiZndDsgPGJyPg0KJmd0OyBJ
IGRpZCBzb21lIG1vcmUgaW52ZXN0aWdhdGlvbiBhbmQgc3BvdHRlZCBhIG1pbm9yIGVycm9yIGlu
IG15IGZvcndhcmQ8YnI+DQomZ3Q7IHBvcnQuIFRoaXMgYW4gdXBkYXRlZCBicmFuY2ggYmFzZWQg
b24gc3RhZ2luZzo8YnI+DQomZ3Q7IDxicj4NCiZndDsgPGEgaHJlZj0iaHR0cDovL3hlbmJpdHMu
eGVucHJvamVjdC5vcmcvZ2l0LWh0dHAvcGVvcGxlL3NzdGFiZWxsaW5pL3hlbi11bnN0YWJsZS5n
aXQiPg0KaHR0cDovL3hlbmJpdHMueGVucHJvamVjdC5vcmcvZ2l0LWh0dHAvcGVvcGxlL3NzdGFi
ZWxsaW5pL3hlbi11bnN0YWJsZS5naXQ8L2E+IHNtbXUtZ2VuZXJpYy0yPGJyPg0KJmd0OyA8YnI+
DQomZ3Q7IEhvd2V2ZXIsIHRoZSByZWFsIGlzc3VlIGlzIHRoYXQgUmFodWwncyBwYXRjaGVzIGJy
ZWFrIFNNTVUgc3VwcG9ydCBvbjxicj4NCiZndDsgWnlucU1QIGV2ZW4gd2l0aG91dCBteSBjaGFu
Z2VzLiBJIHJhbiBhIGJpc2VjdGlvbiBhbmQgZm91bmQgb3V0IHRoYXQ8YnI+DQomZ3Q7IHBhdGNo
ICMyIGlzIHRoZSBjdWxwcml0Ojxicj4NCiZndDsgPGJyPg0KJmd0OyA1ZWUzZmEwYjIxZWEgeGVu
L2FybTogc21tdXYxOiBDb25zb2xpZGF0ZSBzdHJlYW0gbWFwIGVudHJ5IHN0YXRlPGJyPg0KJmd0
OyA8YnI+DQomZ3Q7IEl0IGNhdXNlcyB0aGUgYWJvcnQgYXBwZW5kZWQgYmVsb3cuIFRoZSBwcm9i
bGVtIGRvZXNuJ3Qgc2VlbTxicj4NCiZndDsgcGFydGljdWxhcmx5IFp5bnFNUCBzcGVjaWZpYy4g
UmFodWwsIGNhbiB5b3UgcmVwcm9kdWNlIGl0IG9uIHlvdXIgc2lkZT88YnI+DQo8YnI+DQpZZXMu
IEkgY2FuIHJlcHJvZHVjZSB0aGUgaXNzdWUgb24gWGlsaW54IFFFTVUgYXMgd2UgZG9u4oCZdCBo
YXZlIGFjY2VzcyB0byBwaHlzaWNhbCBaeW5xTVAgYW5kIGZvdW5kIG91dCB0aGF0DQo8YnI+DQph
c3NvY2lhdGluZyBhbiBpb21tdSBncm91cCBwb2ludGVyIHdpdGggdGhlIFMyQ1IgY2F1c2luZyB0
aGUgaXNzdWUuIDxicj4NCjxicj4NCkFzc29jaWF0aW5nIHRoZSBncm91cCBwb2ludGVyIHdpdGgg
UzJDUiBpcyBwYXJ0IG9mIHRoZSBwYXRjaCAmcXVvdDt4ZW4vYXJtOiBzbW11djE6IEludGVsbGln
ZW50IFNNUiBhbGxvY2F0aW9u4oCdLg0KPGJyPg0KPGJyPg0KSSBqdXN0IHJldmVydCB0aGF0IHBh
cnQgb2YgdGhlIGNvZGUgZnJvbSB0aGUgcGF0Y2ggYW5kIGl0IHdvcmtzIGZpbmUgZm9yIG1lLiBQ
bGVhc2UgZmluZCB0aGUgYXR0YWNoZWQgcGF0Y2ggZm9yIHRoZSBzYW1lLjxicj4NCjxicj4NCkFz
IHBlciB5b3VyIGFuYWx5c2lzICZxdW90OzVlZTNmYTBiMjFlYSB4ZW4vYXJtOiBzbW11djE6IENv
bnNvbGlkYXRlIHN0cmVhbSBtYXAgZW50cnkgc3RhdGXigJ0gaXMgY2F1c2luZyB0aGUgaXNzdWUg
YnV0IHdoYXQgSSBmb3VuZCBvdXQgdGhhdA0KPGJyPg0KJnF1b3Q7eGVuL2FybTogc21tdXYxOiBJ
bnRlbGxpZ2VudCBTTVIgYWxsb2NhdGlvbuKAnSBpcyBjYXVzaW5nIHRoZSBpc3N1ZS48YnI+DQpD
YW4geW91IHBsZWFzZSB0ZXN0IGl0IG9uIHRoZSBwaHlzaWNhbCBkZXZpY2UgYW5kIGxldCBtZSBr
bm93IGlmIGl0IHdvcmtzIGZvciB5b3UgYWxzbyB0byBtYWtlIHN1cmUgd2UgYm90aCBvYnNlcnZp
bmcgdGhlIHNhbWUgaXNzdWUuPGJyPg0KPGJyPg0KPC9kaXY+DQo8L3NwYW4+PC9mb250PjwvZGl2
Pg0KPGRpdiBjbGFzcz0iQm9keUZyYWdtZW50Ij48Zm9udCBzaXplPSIyIj48c3BhbiBzdHlsZT0i
Zm9udC1zaXplOjExcHQ7Ij4NCjxkaXYgY2xhc3M9IlBsYWluVGV4dCI+PGJyPg0KPGJyPg0KUmVn
YXJkcyw8YnI+DQpSYWh1bDxicj4NCjxicj4NCiZndDsgPGJyPg0KJmd0OyA8YnI+DQomZ3Q7IChY
RU4pIHNtbXU6IC9hbWJhL3NtbXVAZmQ4MDAwMDA6IGQwOiBwMm1hZGRyIDB4MDAwMDAwMDg3YmZh
MjAwMDxicj4NCiZndDsgKFhFTikgRGF0YSBBYm9ydCBUcmFwLiBTeW5kcm9tZT0weDU8YnI+DQom
Z3Q7IChYRU4pIFdhbGtpbmcgSHlwZXJ2aXNvciBWQSAweDExNGViZmZmOCBvbiBDUFUwIHZpYSBU
VEJSIDB4MDAwMDAwMDAwMGYzODAwMDxicj4NCiZndDsgKFhFTikgMFRIWzB4MF0gPSAweDAwMDAw
MDAwMDBmM2JmN2Y8YnI+DQomZ3Q7IChYRU4pIDFTVFsweDRdID0gMHgwMDAwMDAwMDAwMDAwMDAw
PGJyPg0KJmd0OyAoWEVOKSBDUFUwOiBVbmV4cGVjdGVkIFRyYXA6IERhdGEgQWJvcnQ8YnI+DQom
Z3Q7IChYRU4pIC0tLS1bIFhlbi00LjE0LjAmbmJzcDsgYXJtNjQmbmJzcDsgZGVidWc9eSZuYnNw
OyZuYnNwOyBOb3QgdGFpbnRlZCBdLS0tLTxicj4NCiZndDsgKFhFTikgQ1BVOiZuYnNwOyZuYnNw
OyZuYnNwOyAwPGJyPg0KJmd0OyAoWEVOKSBQQzombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgMDAw
MDAwMDAwMDI0YTc3YyBzbW11LmMjZmluZF9zbW11X21hc3RlcisweDgvMHgzYzxicj4NCiZndDsg
KFhFTikgTFI6Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IDAwMDAwMDAwMDAyNGE4YTQ8YnI+DQom
Z3Q7IChYRU4pIFNQOiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmZmMWYwPGJy
Pg0KJmd0OyAoWEVOKSBDUFNSOiZuYnNwOyZuYnNwOyA4MDAwMDI0OSBNT0RFOjY0LWJpdCBFTDJo
IChIeXBlcnZpc29yLCBoYW5kbGVyKTxicj4NCiZndDsgKFhFTikmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsgWDA6IDAwMDAwMDAxMTRlYzAwMDAmbmJzcDsgWDE6IDAwMDA4MDAwZmJmYzc0
NzgmbmJzcDsgWDI6IDAwMDA4MDAwZmJmYzcxZTA8YnI+DQomZ3Q7IChYRU4pJm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7Jm5ic3A7IFgzOiAwMDAwMDAwMDAwMmFmODQwJm5ic3A7IFg0OiAwMDAwMDAw
MDAwMDAwMDAwJm5ic3A7IFg1OiAwMDAwMDAwMDAwMDAwMDAxPGJyPg0KJmd0OyAoWEVOKSZuYnNw
OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBYNjogMDAwMDAwMDAwMDAwMDAwMCZuYnNwOyBYNzog
MDAwMDAwMDAwMDAwMDAwMCZuYnNwOyBYODogMDAwMDgwMDBmYmY4YjllMDxicj4NCiZndDsgKFhF
TikmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgWDk6IDAwMDAwMDAwMDAwMDAwMDQgWDEw
OiAwMTAxMDEwMTAxMDEwMTAxIFgxMTogMDAwMDAwMDAwMDAwMDAyMDxicj4NCiZndDsgKFhFTikm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgWDEyOiAwMDAwMDAwMDAwMDAwMDE4IFgxMzogZmYwMDAw
MDAwMDAwMDAwMCBYMTQ6IDA0MDAwMDAwODQwMDAwMDA8YnI+DQomZ3Q7IChYRU4pJm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7IFgxNTogMDAwMDAwMDAwMDAwMDAwMCBYMTY6IDAwMDAwMDAwMDAyYjEw
MDAgWDE3OiAwMDAwMDAwMDAwMmIxMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNw
OyZuYnNwOyBYMTg6IDAwMDAwMDAwMDAyYjIwMDAgWDE5OiAwMDAwODAwMGZiZmZjYjcwIFgyMDog
MDAwMDAwMDAwMDJhZjg0ODxicj4NCiZndDsgKFhFTikmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg
WDIxOiAwMDAwODAwMGZiZmM3NDc4IFgyMjogMDAwMDgwMDBmYmZjNzRkOCBYMjM6IDAwMDA4MDAw
ZmJmYzc1MDg8YnI+DQomZ3Q7IChYRU4pJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFgyNDogMDAw
MDAwMDAwMDAwMDAwMCBYMjU6IDAwMDAwMDAwMDAwMDAwMDEgWDI2OiAwMDAwODAwMGZiZmE3YzIw
PGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBYMjc6IDAwMDAwMDAwMDAw
MDAwMDAgWDI4OiAwMDAwMDAwMDAwMDAwMDAwJm5ic3A7IEZQOiAwMDAwMDAwMDAwMmZmMWYwPGJy
Pg0KJmd0OyAoWEVOKSA8YnI+DQomZ3Q7IChYRU4pJm5ic3A7Jm5ic3A7IFZUQ1JfRUwyOiA4MDAy
MzU1ODxicj4NCiZndDsgKFhFTikmbmJzcDsgVlRUQlJfRUwyOiAwMDAwMDAwODdiZjU0MDAwPGJy
Pg0KJmd0OyAoWEVOKSA8YnI+DQomZ3Q7IChYRU4pJm5ic3A7IFNDVExSX0VMMjogMzBjZDE4M2Q8
YnI+DQomZ3Q7IChYRU4pJm5ic3A7Jm5ic3A7Jm5ic3A7IEhDUl9FTDI6IDAwMDAwMDAwMDAwMDAw
M2E8YnI+DQomZ3Q7IChYRU4pJm5ic3A7IFRUQlIwX0VMMjogMDAwMDAwMDAwMGYzODAwMDxicj4N
CiZndDsgKFhFTikgPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyBFU1JfRUwyOiA5
NjAwMDAwNTxicj4NCiZndDsgKFhFTikmbmJzcDsgSFBGQVJfRUwyOiAwMDAwMDAwMDAwMjIwMDAw
PGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyBGQVJfRUwyOiAwMDAwMDAwMTE0ZWJm
ZmY4PGJyPg0KJmd0OyAoWEVOKSA8YnI+DQomZ3Q7IChYRU4pIFhlbiBzdGFjayB0cmFjZSBmcm9t
IHNwPTAwMDAwMDAwMDAyZmYxZjA6PGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAw
MDAwMDAwMDAwMmZmMjIwIDAwMDAwMDAwMDAyNGFlODAgMDAwMDgwMDBmYmZhNTAwMCAwMDAwODAw
MGZiZmM3NGU4PGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwODAwMGZiZmE1
MDAwIDAwMDAwMDA4MDAwMDAwMDEgMDAwMDAwMDAwMDJmZjJhMCAwMDAwMDAwMDAwMjRjNmU4PGJy
Pg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwODAwMGZiZmE1MDAwIDAwMDAwMDAw
ZmZmZmZmZjAgMDAwMDgwMDBmYmZjNzQ3OCAwMDAwODAwMGZiZmM3NGQ4PGJyPg0KJmd0OyAoWEVO
KSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwODAwMGZiZmM3NTA4IDAwMDAwMDAwMDAwMDAwMDAgMDAw
MDAwMDAwMDAwMDAwMSAwMDAwMDAwMDAwMDAwMDAxPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNw
OyZuYnNwOyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDJmZjJh
MCAwMDAwMDAwMDAwMjRjNmI4PGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAw
ODAwMGZiZmE1MDAwIDAwMDAwMDAwMDAyZmY1NTAgMDAwMDAwMDAwMDJmZjJkMCAwMDAwMDAwMDAw
MmM2Mjc0PGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwODAwMGZiZmM3NDc4
IDAwMDAwMDAwMDAyZmY1NTAgMDAwMDgwMDBmYmZhNTAwMCAwMDAwMDAwMDAwMDAwMDA1PGJyPg0K
Jmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmZmMzkwIDAwMDAwMDAwMDAy
YzY3MDQgMDAwMDgwMDBmYmZjM2NlOCAwMDAwMDAwMDAwMmZmNTUwPGJyPg0KJmd0OyAoWEVOKSZu
YnNwOyZuYnNwOyZuYnNwOyAwMDAwODAwMGZiZmE1MDAwIDAwMDAwMDAwMDAwMDAwMDUgMDAwMDgw
MDBmYmZjNzQ3OCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZu
YnNwOyAwMDAwODAwMGZiZmYxMTAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAw
MDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAw
MDAwMmQyOGU4IDAwMDAwMDAwZmJmNzgwOTAgMDAwMDAwMDAwMDJkMjhkOCAwMDAwMDAwMDAwMmQx
YjgwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmZmMzgwIDAw
MDAwMDAwZmYwYjAwMDAgMDAwMDgwMDBmYmZjM2NlOCAwMDAwMDAwMDAwMDAxMDAwPGJyPg0KJmd0
OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwODAwMGZiZmE1MDAwIDAwMDA4MDAwZmJmYTUw
MDAgMDAwMDAwMDAwMDAwMDAwNSAwMDAwMDAwMDAwMmM2NjAwPGJyPg0KJmd0OyAoWEVOKSZuYnNw
OyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmZmNDUwIDAwMDAwMDAwMDAyYzY3MDQgMDAwMDgwMDBm
YmZjMDAwMCAwMDAwMDAwMDAwMmZmNTUwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNw
OyAwMDAwODAwMGZiZmE1MDAwIDAwMDAwMDAwMDAwMDAwMDUgMDAwMDgwMDBmYmZjM2NlOCAwMDAw
MDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwODAwMGZi
ZmYwMGE4IDAwMDAwMDAwMDAwMDAwMTMgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAw
PGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmQyOGU4IDAwMDAw
MDAwZmJmNzgwOTAgMDAwMDAwMDAwMDJkMjhkOCAwMDAwMDAwMDAwMmQxYjgwPGJyPg0KJmd0OyAo
WEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmZmNDQwIDAwMDAwMDAwZmY5OTAwMDAg
MDAwMDgwMDBmYmZjMDAwMCAwMDAwMDAwMDAwMDAxMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZu
YnNwOyZuYnNwOyAwMDAwODAwMGZiZmE1MDAwIDAwMDA4MDAwZmJmYTUwMDAgMDAwMDAwMDAwMDAw
MDAwNSAwMDAwMDAwMDAwMmM2NjAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAw
MDAwMDAwMDAwMmZmNTEwIDAwMDAwMDAwMDAyYzZmNzggMDAwMDAwMDAwMDAwODA5MCAwMDAwMDAw
MDAwZTAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmQy
YWU4IDAwMDA4MDAwZmJmYTUwMDAgMDAwMDAwMDAwMDAwMDAwZiAwMDAwMDAwMDAwMDAwMDA0PGJy
Pg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmUwNWUwIDAwMDAwMDAw
MDAwMDAwMDAgMDAwMDAwMDg4MDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAyPGJyPg0KJmd0OyAoWEVO
KSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmQyOGU4IDAwMDAwMDAwMDAyMmQxZTQgMDAw
MDAwMDAwMDJkMjhkOCAwMDAwMDAwMDAwMmQxYjgwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNw
OyZuYnNwOyAwMDAwMDAwMDAwMmZmNTAwIDAwMDAwMDAwMDAyYjdkYTAgMDAwMDAwMDAwMDAwODA5
MCAwMDAwMDAwMDAwZTAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAw
MDAwMDAwMmQyYWU4IDAwMDA4MDAwZmJmYTUwMDAgMDAwMDAwMDAwMDAwMDAwNSAwMDAwMDAwMDAw
MmM2ZjYwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMmZmZGYw
IDAwMDAwMDAwMDAyY2IxZmMgMDAwMDgwMDBmYmZhNTAwMCAwMDAwMDAwMDAwMmIwNjAwPGJyPg0K
Jmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMzQwNDMwIDAwMDAwMDAwMDAw
MDAwMDQgMDAwMDAwMDAwMDJhMzgxMCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZu
YnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMDAwMDAxIDAwMDA4MDAwZmJmYTUwMDAgMDAwMDgw
MDBmYmY3MDAwMCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZu
YnNwOyAwMDAwMDAwMDAwMDAwMDAxIDAwMDAwMDAwMjAwMDAwMDAgMDAwMDAwMDA0MDAwMDAwMCAw
MDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAw
MDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAw
MDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMDAwMDAwIDAw
MDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0
OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAw
MDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNw
OyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAw
MDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNw
OyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAw
MDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAw
MDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAw
PGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAw
MDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAo
WEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAg
MDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZu
YnNwOyZuYnNwOyAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAw
MDAwMCAwMDAwMDAwMDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAw
MDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAw
MDAwMDAwMDAwPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyAwMDAwMDAwMDAwMDAw
MDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwPGJy
Pg0KJmd0OyAoWEVOKSBYZW4gY2FsbCB0cmFjZTo8YnI+DQomZ3Q7IChYRU4pJm5ic3A7Jm5ic3A7
Jm5ic3A7IFsmbHQ7MDAwMDAwMDAwMDI0YTc3YyZndDtdIHNtbXUuYyNmaW5kX3NtbXVfbWFzdGVy
KzB4OC8weDNjIChQQyk8YnI+DQomZ3Q7IChYRU4pJm5ic3A7Jm5ic3A7Jm5ic3A7IFsmbHQ7MDAw
MDAwMDAwMDI0YThhNCZndDtdIHNtbXUuYyNmaW5kX3NtbXVfZm9yX2RldmljZSsweDQ4LzB4OTQg
KExSKTxicj4NCiZndDsgKFhFTikmbmJzcDsmbmJzcDsmbmJzcDsgWyZsdDswMDAwMDAwMDAwMjRh
ZTgwJmd0O10gc21tdS5jI2FybV9zbW11X2Fzc2lnbl9kZXYrMHg1OC8weGI0ODxicj4NCiZndDsg
KFhFTikmbmJzcDsmbmJzcDsmbmJzcDsgWyZsdDswMDAwMDAwMDAwMjRjNmU4Jmd0O10gaW9tbXVf
YXNzaWduX2R0X2RldmljZSsweDY0LzB4YzA8YnI+DQomZ3Q7IChYRU4pJm5ic3A7Jm5ic3A7Jm5i
c3A7IFsmbHQ7MDAwMDAwMDAwMDJjNjI3NCZndDtdIGRvbWFpbl9idWlsZC5jI2hhbmRsZV9ub2Rl
KzB4MzEwLzB4OWVjPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyBbJmx0OzAwMDAw
MDAwMDAyYzY3MDQmZ3Q7XSBkb21haW5fYnVpbGQuYyNoYW5kbGVfbm9kZSsweDdhMC8weDllYzxi
cj4NCiZndDsgKFhFTikmbmJzcDsmbmJzcDsmbmJzcDsgWyZsdDswMDAwMDAwMDAwMmM2NzA0Jmd0
O10gZG9tYWluX2J1aWxkLmMjaGFuZGxlX25vZGUrMHg3YTAvMHg5ZWM8YnI+DQomZ3Q7IChYRU4p
Jm5ic3A7Jm5ic3A7Jm5ic3A7IFsmbHQ7MDAwMDAwMDAwMDJjNmY3OCZndDtdIGNvbnN0cnVjdF9k
b20wKzB4NDEwLzB4NGJjPGJyPg0KJmd0OyAoWEVOKSZuYnNwOyZuYnNwOyZuYnNwOyBbJmx0OzAw
MDAwMDAwMDAyY2IxZmMmZ3Q7XSBzdGFydF94ZW4rMHhiOWMvMHhjYTQ8YnI+DQomZ3Q7IChYRU4p
Jm5ic3A7Jm5ic3A7Jm5ic3A7IFsmbHQ7MDAwMDAwMDAwMDIwMDFhMCZndDtdIGFybTY0L2hlYWQu
byNwcmltYXJ5X3N3aXRjaGVkKzB4Yy8weDFjPGJyPg0KPGJyPg0KPC9kaXY+DQo8L3NwYW4+PC9m
b250PjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K

--_000_A64881AFDAD64A14A545354A75FE1B4Farmcom_--

--_004_A64881AFDAD64A14A545354A75FE1B4Farmcom_
Content-Type: application/octet-stream;
	name="0001-xen-arm-smmuv1-Revert-associating-the-group-pointer-.patch"
Content-Description:
 0001-xen-arm-smmuv1-Revert-associating-the-group-pointer-.patch
Content-Disposition: attachment;
	filename="0001-xen-arm-smmuv1-Revert-associating-the-group-pointer-.patch";
	size=2959; creation-date="Mon, 12 Apr 2021 10:20:16 GMT";
	modification-date="Mon, 12 Apr 2021 10:20:16 GMT"
Content-ID: <50D9C916409D244D97E71E0D273E5902@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64

RnJvbSAwMjI3OGZhMGU0YWJkNDFlNWM1ZTI1M2ZlMjNiNjA0YTRmMDgxMTA1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpNZXNzYWdlLUlkOiA8MDIyNzhmYTBlNGFiZDQxZTVjNWUyNTNmZTIzYjYw
NGE0ZjA4MTEwNS4xNjE4MjIyNTg5LmdpdC5yYWh1bC5zaW5naEBhcm0uY29tPgpGcm9tOiBSYWh1
bCBTaW5naCA8cmFodWwuc2luZ2hAYXJtLmNvbT4KRGF0ZTogTW9uLCAxMiBBcHIgMjAyMSAwOTo1
MDowNSArMDEwMApTdWJqZWN0OiBbUEFUQ0hdIHhlbi9hcm06IHNtbXV2MTogUmV2ZXJ0IGFzc29j
aWF0aW5nIHRoZSBncm91cCBwb2ludGVyIHdpdGgKIHRoZSBTMkNSCgpSZXZlcnQgdGhlIGNvZGUg
dGhhdCBhc3NvY2lhdGUgdGhlIGdyb3VwIHBvaW50ZXIgd2l0aCB0aGUgUzJDUiBhcyB0aGlzCmNh
dXNpbmcgYW4gaXNzdWUgd2hlbiBTTU1VIGRldmljZSBoYXMgbW9yZSB0aGF0IG9uZSBtYXN0ZXIg
ZGV2aWNlLgoKU2lnbmVkLW9mZi1ieTogUmFodWwgU2luZ2ggPHJhaHVsLnNpbmdoQGFybS5jb20+
Ci0tLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL3NtbXUuYyB8IDQ0ICsrKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNDAg
ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL3Nt
bXUuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11LmMKaW5kZXggMjBhYzY3MmU5
MS4uMzQ1NmRhYTAzZiAxMDA2NDQKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL3Nt
bXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vc21tdS5jCkBAIC01OTcsNyAr
NTk3LDYgQEAgZW51bSBhcm1fc21tdV9hcmNoX3ZlcnNpb24gewogfTsKIAogc3RydWN0IGFybV9z
bW11X3MyY3IgewotCXN0cnVjdCBpb21tdV9ncm91cAkJKmdyb3VwOwogCWludAkJCQljb3VudDsK
IAllbnVtIGFybV9zbW11X3MyY3JfdHlwZQkJdHlwZTsKIAllbnVtIGFybV9zbW11X3MyY3JfcHJp
dmNmZwlwcml2Y2ZnOwpAQCAtMTQ5OCw3ICsxNDk3LDYgQEAgc3RhdGljIGludCBhcm1fc21tdV9t
YXN0ZXJfYWxsb2Nfc21lcyhzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJc3RydWN0IGFybV9zbW11X21h
c3Rlcl9jZmcgKmNmZyA9IGZpbmRfc21tdV9tYXN0ZXJfY2ZnKGRldik7CiAJc3RydWN0IGFybV9z
bW11X2RldmljZSAqc21tdSA9IGNmZy0+c21tdTsKIAlzdHJ1Y3QgYXJtX3NtbXVfc21yICpzbXJz
ID0gc21tdS0+c21yczsKLQlzdHJ1Y3QgaW9tbXVfZ3JvdXAgKmdyb3VwOwogCWludCBpLCBpZHgs
IHJldDsKIAogCXNwaW5fbG9jaygmc21tdS0+c3RyZWFtX21hcF9sb2NrKTsKQEAgLTE1MjMsMTkg
KzE1MjEsOSBAQCBzdGF0aWMgaW50IGFybV9zbW11X21hc3Rlcl9hbGxvY19zbWVzKHN0cnVjdCBk
ZXZpY2UgKmRldikKIAkJY2ZnLT5zbWVuZHhbaV0gPSAoczE2KWlkeDsKIAl9CiAKLQlncm91cCA9
IGlvbW11X2dyb3VwX2dldChkZXYpOwotCWlmICghZ3JvdXApCi0JCWdyb3VwID0gRVJSX1BUUigt
RU5PTUVNKTsKLQlpZiAoSVNfRVJSKGdyb3VwKSkgewotCQlyZXQgPSBQVFJfRVJSKGdyb3VwKTsK
LQkJZ290byBvdXRfZXJyOwotCX0KLQlpb21tdV9ncm91cF9wdXQoZ3JvdXApOwotCiAJLyogSXQg
d29ya2VkISBOb3csIHBva2UgdGhlIGFjdHVhbCBoYXJkd2FyZSAqLwogCWZvcl9lYWNoX2NmZ19z
bWUoY2ZnLCBpLCBpZHgpIHsKIAkJYXJtX3NtbXVfd3JpdGVfc21lKHNtbXUsIGlkeCk7Ci0JCXNt
bXUtPnMyY3JzW2lkeF0uZ3JvdXAgPSBncm91cDsKIAl9CiAKIAlzcGluX3VubG9jaygmc21tdS0+
c3RyZWFtX21hcF9sb2NrKTsKQEAgLTE5NjYsMjcgKzE5NTQsNiBAQCBzdGF0aWMgdm9pZCBfX2Fy
bV9zbW11X3JlbGVhc2VfcGNpX2lvbW11ZGF0YSh2b2lkICpkYXRhKQogCWtmcmVlKGRhdGEpOwog
fQogCi1zdGF0aWMgc3RydWN0IGlvbW11X2dyb3VwICphcm1fc21tdV9kZXZpY2VfZ3JvdXAoc3Ry
dWN0Ci0JCQkJCQlhcm1fc21tdV9tYXN0ZXJfY2ZnICpjZmcpCi17Ci0Jc3RydWN0IGFybV9zbW11
X2RldmljZSAqc21tdSA9IGNmZy0+c21tdTsKLQlzdHJ1Y3QgaW9tbXVfZ3JvdXAgKmdyb3VwID0g
TlVMTDsKLQlpbnQgaSwgaWR4OwotCi0JZm9yX2VhY2hfY2ZnX3NtZShjZmcsIGksIGlkeCkgewot
CQlpZiAoZ3JvdXAgJiYgc21tdS0+czJjcnNbaWR4XS5ncm91cCAmJgotCQkgICAgZ3JvdXAgIT0g
c21tdS0+czJjcnNbaWR4XS5ncm91cCkKLQkJCXJldHVybiBFUlJfUFRSKC1FSU5WQUwpOwotCi0J
CWdyb3VwID0gc21tdS0+czJjcnNbaWR4XS5ncm91cDsKLQl9Ci0KLQlpZiAoZ3JvdXApCi0JCXJl
dHVybiBncm91cDsKLQotCXJldHVybiBOVUxMOwotfQotCiBzdGF0aWMgaW50IGFybV9zbW11X2Fk
ZF9kZXZpY2Uoc3RydWN0IGRldmljZSAqZGV2KQogewogCXN0cnVjdCBhcm1fc21tdV9kZXZpY2Ug
KnNtbXU7CkBAIC0yMDI3LDEzICsxOTk0LDEwIEBAIHN0YXRpYyBpbnQgYXJtX3NtbXVfYWRkX2Rl
dmljZShzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJCWNmZy0+c21tdSA9IHNtbXU7CiAJfQogCi0JZ3Jv
dXAgPSBhcm1fc21tdV9kZXZpY2VfZ3JvdXAoY2ZnKTsKLQlpZiAoIWdyb3VwKSB7Ci0JCWdyb3Vw
ID0gaW9tbXVfZ3JvdXBfYWxsb2MoKTsKLQkJaWYgKElTX0VSUihncm91cCkpIHsKLQkJCWRldl9l
cnIoZGV2LCAiRmFpbGVkIHRvIGFsbG9jYXRlIElPTU1VIGdyb3VwXG4iKTsKLQkJCXJldHVybiBQ
VFJfRVJSKGdyb3VwKTsKLQkJfQorCWdyb3VwID0gaW9tbXVfZ3JvdXBfYWxsb2MoKTsKKwlpZiAo
SVNfRVJSKGdyb3VwKSkgeworCQlkZXZfZXJyKGRldiwgIkZhaWxlZCB0byBhbGxvY2F0ZSBJT01N
VSBncm91cFxuIik7CisJCXJldHVybiBQVFJfRVJSKGdyb3VwKTsKIAl9CiAKIAlpb21tdV9ncm91
cF9zZXRfaW9tbXVkYXRhKGdyb3VwLCBjZmcsIHJlbGVhc2Vmbik7Ci0tIAoyLjE3LjEKCg==

--_004_A64881AFDAD64A14A545354A75FE1B4Farmcom_--


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:23:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:23:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108911.207810 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtie-0005WO-Dx; Mon, 12 Apr 2021 10:23:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108911.207810; Mon, 12 Apr 2021 10:23: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 1lVtie-0005WH-Aq; Mon, 12 Apr 2021 10:23:00 +0000
Received: by outflank-mailman (input) for mailman id 108911;
 Mon, 12 Apr 2021 10:22:59 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lFJS=JJ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lVtid-0005WC-Rq
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:22:59 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e3b67369-f7c6-4f16-9735-837ae0ecc95b;
 Mon, 12 Apr 2021 10:22: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: e3b67369-f7c6-4f16-9735-837ae0ecc95b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618222978;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=9Ykt4fl1TU7I0tNEaI0oDsD7aBf/mH93g2h6yqeOZEw=;
  b=f4bLe33KLTngYeIDykveHVHuSYRZK+/OLCx8kLClXBUAEWkMNsnQW16v
   drQuJ/prXq87I7s12voqRYeOWHpYBafP1pXNtCXqE0DUp5A742FfpxgMc
   Pnt12+DGFwE1KMjRbscVmL9UvAnCRoBPYPF1Wz0RFOBeJJltW7o0XCDGo
   0=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: oCoPzgyU4geQ4nhVe6gXDq+E2jiLmHxEV5r7+iR9PQA3VOQin2+iZ//W8BXLA9/ipx3UA4Bifp
 Aej1HZ+638OXOXiQYELqoPUiH8AUe5cGzA5VfE5TfZNSsaZe5MOwbXayMUllkQFTGWweJDjy6D
 sh+10cqkWFAVSWROW598N/zMEEAinr8rRdcTxTFTsU0Law+4N8IVEIGFaXaggNo8iHL4hfzqRS
 UBCHEOpE8f1DAdNsH4B67Z89jNqChr+Uq+2V4/kMBGUzjxpW2R9f7RbZM1obHSXTDxu+bR7n1n
 J7A=
X-SBRS: 5.1
X-MesageID: 41371793
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9vhcj61qBBrN+p+7J7mEjAqjBFokLtp033Aq2lEZdDV/eMbwrb
 HLoN0w0xjohDENHEwxgNzoAsW9aF7/1bow24keOr++QBLr0VHCEKhO5ZbvqgeOJwTQ7ehYvJ
 0PT4FbBMfrBVZ3yebWiTPZL/8FwN2KtJ+lnv3fyXAFd2BXQppt5Qt4FQqXe3ceLGMqObMCCJ
 Ge6sBbzgDQGkg/U8LTPAhhY8Hz4/HNiZL6cVonKnccmW6zpALt0pC/Pzi0ty1uMQ9y/Q==
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41371793"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86/cpuid: Advertise no-lmsle unilaterally to hvm guests
Date: Mon, 12 Apr 2021 11:22:47 +0100
Message-ID: <20210412102247.2118-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

While part of the original AMD64 spec, Long Mode Segment Limit Enable was a
feature not picked up by Intel, and therefore didn't see much adoption in
software.  AMD have finally dropped the feature from hardware, and allocated a
CPUID bit to indicate its absence.

Xen has never supported the feature for guests, even when running on capable
hardware, so advertise the feature's absence unilaterally.

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>

There is nothing specifically wrong with exposing this bit to PV guests, but
the PV ABI doesn't include a working concept of MSR_EFER in the first place,
so exposing it to PV guests seems somewhat out-of-place.
---
 tools/libs/light/libxl_cpuid.c              | 1 +
 tools/misc/xen-cpuid.c                      | 1 +
 xen/arch/x86/cpuid.c                        | 6 ++++++
 xen/include/public/arch-x86/cpufeatureset.h | 1 +
 4 files changed, 9 insertions(+)

diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index 289c59c742..be0bd81a9b 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -270,6 +270,7 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str)
         {"rstr-fp-err-ptrs", 0x80000008, NA, CPUID_REG_EBX, 2, 1},
         {"wbnoinvd",     0x80000008, NA, CPUID_REG_EBX,  9,  1},
         {"ibpb",         0x80000008, NA, CPUID_REG_EBX, 12,  1},
+        {"no-lmsle",     0x80000008, NA, CPUID_REG_EBX, 20,  1},
         {"ppin",         0x80000008, NA, CPUID_REG_EBX, 23,  1},
 
         {"nc",           0x80000008, NA, CPUID_REG_ECX,  0,  8},
diff --git a/tools/misc/xen-cpuid.c b/tools/misc/xen-cpuid.c
index 2d04162d8d..1a82089463 100644
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -152,6 +152,7 @@ static const char *const str_e8b[32] =
 
     [12] = "ibpb",
 
+    [20] = "no-lmsle",
     /* [22] */                 [23] = "ppin",
 };
 
diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 18b08d9b87..3ed0feac4a 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -456,6 +456,12 @@ static void __init calculate_hvm_max_policy(void)
     __set_bit(X86_FEATURE_X2APIC, hvm_featureset);
 
     /*
+     * We don't support EFER.LMSLE at all.  AMD has dropped the feature from
+     * hardware and allocated a CPUID bit to indicate its absence.
+     */
+    __set_bit(X86_FEATURE_NO_LMSLE, hvm_featureset);
+
+    /*
      * On AMD, PV guests are entirely unable to use SYSENTER as Xen runs in
      * long mode (and init_amd() has cleared it out of host capabilities), but
      * HVM guests are able if running in protected mode.
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index a501479820..0a4690decc 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -255,6 +255,7 @@ XEN_CPUFEATURE(CLZERO,        8*32+ 0) /*A  CLZERO instruction */
 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) */
+XEN_CPUFEATURE(NO_LMSLE,      8*32+20) /*S  EFER.LMSLE no longer supported. */
 XEN_CPUFEATURE(AMD_PPIN,      8*32+23) /*   Protected Processor Inventory Number */
 
 /* Intel-defined CPU features, CPUID level 0x00000007:0.edx, word 9 */
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:40:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:40:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108921.207823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVtzu-0007J8-Ur; Mon, 12 Apr 2021 10:40:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108921.207823; Mon, 12 Apr 2021 10: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 1lVtzu-0007J1-Rl; Mon, 12 Apr 2021 10:40:50 +0000
Received: by outflank-mailman (input) for mailman id 108921;
 Mon, 12 Apr 2021 10:40:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVtzu-0007Iw-6y
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:40:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f83a7bb4-9236-424c-b0c1-f508be185464;
 Mon, 12 Apr 2021 10:40:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1C3FBAFF3;
 Mon, 12 Apr 2021 10:40: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: f83a7bb4-9236-424c-b0c1-f508be185464
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618224048; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=B8XdBCV3ZHHBXe8G2hAxtsic+SP3eU55ZEg8/ttTlE8=;
	b=F6Mx/R3NZXDMaJCRGUeP/JGvovnsVDjpNcXAo841kiP+k6015KT8mgtcZuGaRpXVykMt8W
	g0Vokvr1giV60l5PNISQc+pDqXD5b41U61pgCvD5+nNizgjEgZobOebEy+2L7BIuCFKi31
	d+FU6UYijqjMPGSwoUDbJByMIYdCnR4=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v4] VMX: use a single, global APIC access page
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>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
Message-ID: <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
Date: Mon, 12 Apr 2021 12:40:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The address of this page is used by the CPU only to recognize when to
access the virtual APIC page instead. No accesses would ever go to this
page. It only needs to be present in the (CPU) page tables so that
address translation will produce its address as result for respective
accesses.

By making this page global, we also eliminate the need to refcount it,
or to assign it to any domain in the first place.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
---
v4: Set PGC_extra on the page. Make shadow mode work.
v3: Split p2m insertion change to a separate patch.
v2: Avoid insertion when !has_vlapic(). Split off change to
    p2m_get_iommu_flags().
---
I did further consider not allocating any real page at all, but just
using the address of some unpopulated space (which would require
announcing this page as reserved to Dom0, so it wouldn't put any PCI
MMIO BARs there). But I thought this would be too controversial, because
of the possible risks associated with this.

--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -66,8 +66,7 @@ boolean_param("force-ept", opt_force_ept
 static void vmx_ctxt_switch_from(struct vcpu *v);
 static void vmx_ctxt_switch_to(struct vcpu *v);
 
-static int  vmx_alloc_vlapic_mapping(struct domain *d);
-static void vmx_free_vlapic_mapping(struct domain *d);
+static int alloc_vlapic_mapping(void);
 static void vmx_install_vlapic_mapping(struct vcpu *v);
 static void vmx_update_guest_cr(struct vcpu *v, unsigned int cr,
                                 unsigned int flags);
@@ -78,6 +77,8 @@ static int vmx_msr_read_intercept(unsign
 static int vmx_msr_write_intercept(unsigned int msr, uint64_t msr_content);
 static void vmx_invlpg(struct vcpu *v, unsigned long linear);
 
+static mfn_t __read_mostly apic_access_mfn;
+
 /* Values for domain's ->arch.hvm_domain.pi_ops.flags. */
 #define PI_CSW_FROM (1u << 0)
 #define PI_CSW_TO   (1u << 1)
@@ -401,7 +402,6 @@ static int vmx_domain_initialise(struct
         .to   = vmx_ctxt_switch_to,
         .tail = vmx_do_resume,
     };
-    int rc;
 
     d->arch.ctxt_switch = &csw;
 
@@ -411,28 +411,22 @@ static int vmx_domain_initialise(struct
      */
     d->arch.hvm.vmx.exec_sp = is_hardware_domain(d) || opt_ept_exec_sp;
 
-    if ( !has_vlapic(d) )
-        return 0;
-
-    if ( (rc = vmx_alloc_vlapic_mapping(d)) != 0 )
-        return rc;
-
     return 0;
 }
 
-static void vmx_domain_relinquish_resources(struct domain *d)
+static void domain_creation_finished(struct domain *d)
 {
-    if ( !has_vlapic(d) )
+    gfn_t gfn = gaddr_to_gfn(APIC_DEFAULT_PHYS_BASE);
+    uint8_t ipat;
+
+    if ( !has_vlapic(d) || mfn_eq(apic_access_mfn, _mfn(0)) )
         return;
 
-    vmx_free_vlapic_mapping(d);
-}
+    ASSERT(epte_get_entry_emt(d, gfn_x(gfn), apic_access_mfn, 0, &ipat,
+                              true) == MTRR_TYPE_WRBACK);
+    ASSERT(ipat);
 
-static void domain_creation_finished(struct domain *d)
-{
-    if ( has_vlapic(d) && !mfn_eq(d->arch.hvm.vmx.apic_access_mfn, _mfn(0)) &&
-         set_mmio_p2m_entry(d, gaddr_to_gfn(APIC_DEFAULT_PHYS_BASE),
-                            d->arch.hvm.vmx.apic_access_mfn, PAGE_ORDER_4K) )
+    if ( set_mmio_p2m_entry(d, gfn, apic_access_mfn, PAGE_ORDER_4K) )
         domain_crash(d);
 }
 
@@ -2415,7 +2409,6 @@ static struct hvm_function_table __initd
     .cpu_up_prepare       = vmx_cpu_up_prepare,
     .cpu_dead             = vmx_cpu_dead,
     .domain_initialise    = vmx_domain_initialise,
-    .domain_relinquish_resources = vmx_domain_relinquish_resources,
     .domain_creation_finished = domain_creation_finished,
     .vcpu_initialise      = vmx_vcpu_initialise,
     .vcpu_destroy         = vmx_vcpu_destroy,
@@ -2662,7 +2655,7 @@ const struct hvm_function_table * __init
 {
     set_in_cr4(X86_CR4_VMXE);
 
-    if ( vmx_vmcs_init() )
+    if ( vmx_vmcs_init() || alloc_vlapic_mapping() )
     {
         printk("VMX: failed to initialise.\n");
         return NULL;
@@ -3224,7 +3217,7 @@ gp_fault:
     return X86EMUL_EXCEPTION;
 }
 
-static int vmx_alloc_vlapic_mapping(struct domain *d)
+static int __init alloc_vlapic_mapping(void)
 {
     struct page_info *pg;
     mfn_t mfn;
@@ -3232,52 +3225,31 @@ static int vmx_alloc_vlapic_mapping(stru
     if ( !cpu_has_vmx_virtualize_apic_accesses )
         return 0;
 
-    pg = alloc_domheap_page(d, MEMF_no_refcount);
+    pg = alloc_domheap_page(NULL, 0);
     if ( !pg )
         return -ENOMEM;
 
-    if ( !get_page_and_type(pg, 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.
-         */
-        domain_crash(d);
-        return -ENODATA;
-    }
+    /* Arrange for epte_get_entry_emt() to recognize this page as "special". */
+    pg->count_info |= PGC_extra;
 
     mfn = page_to_mfn(pg);
     clear_domain_page(mfn);
-    d->arch.hvm.vmx.apic_access_mfn = mfn;
+    apic_access_mfn = mfn;
 
     return 0;
 }
 
-static void vmx_free_vlapic_mapping(struct domain *d)
-{
-    mfn_t mfn = d->arch.hvm.vmx.apic_access_mfn;
-
-    d->arch.hvm.vmx.apic_access_mfn = _mfn(0);
-    if ( !mfn_eq(mfn, _mfn(0)) )
-    {
-        struct page_info *pg = mfn_to_page(mfn);
-
-        put_page_alloc_ref(pg);
-        put_page_and_type(pg);
-    }
-}
-
 static void vmx_install_vlapic_mapping(struct vcpu *v)
 {
     paddr_t virt_page_ma, apic_page_ma;
 
-    if ( mfn_eq(v->domain->arch.hvm.vmx.apic_access_mfn, _mfn(0)) )
+    if ( !has_vlapic(v->domain) || mfn_eq(apic_access_mfn, _mfn(0)) )
         return;
 
     ASSERT(cpu_has_vmx_virtualize_apic_accesses);
 
     virt_page_ma = page_to_maddr(vcpu_vlapic(v)->regs_page);
-    apic_page_ma = mfn_to_maddr(v->domain->arch.hvm.vmx.apic_access_mfn);
+    apic_page_ma = mfn_to_maddr(apic_access_mfn);
 
     vmx_vmcs_enter(v);
     __vmwrite(VIRTUAL_APIC_PAGE_ADDR, virt_page_ma);
--- a/xen/arch/x86/mm/shadow/set.c
+++ b/xen/arch/x86/mm/shadow/set.c
@@ -94,6 +94,22 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
     ASSERT(!sh_l1e_is_magic(sl1e));
     ASSERT(shadow_mode_refcounts(d));
 
+    /*
+     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
+     * get accessed, and hence there's no need to refcount it (and refcounting
+     * would fail, due to the page having no owner).
+     */
+    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
+    {
+        const struct page_info *pg = mfn_to_page(mfn);
+
+        if ( !page_get_owner(pg) && (pg->count_info & PGC_extra) )
+        {
+            ASSERT(type == p2m_mmio_direct);
+            return 0;
+        }
+    }
+
     res = get_page_from_l1e(sl1e, d, d);
 
     /*
--- a/xen/arch/x86/mm/shadow/types.h
+++ b/xen/arch/x86/mm/shadow/types.h
@@ -276,9 +276,20 @@ int shadow_set_l4e(struct domain *d, sha
 static void inline
 shadow_put_page_from_l1e(shadow_l1e_t sl1e, struct domain *d)
 {
+    mfn_t mfn;
+
     if ( !shadow_mode_refcounts(d) )
         return;
 
+    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
+    {
+        const struct page_info *pg = mfn_to_page(mfn);
+
+        /* See the respective comment in shadow_get_page_from_l1e(). */
+        if ( !page_get_owner(pg) && (pg->count_info & PGC_extra) )
+            return;
+    }
+
     put_page_from_l1e(sl1e, d);
 }
 
--- a/xen/include/asm-x86/hvm/vmx/vmcs.h
+++ b/xen/include/asm-x86/hvm/vmx/vmcs.h
@@ -58,7 +58,6 @@ struct ept_data {
 #define _VMX_DOMAIN_PML_ENABLED    0
 #define VMX_DOMAIN_PML_ENABLED     (1ul << _VMX_DOMAIN_PML_ENABLED)
 struct vmx_domain {
-    mfn_t apic_access_mfn;
     /* VMX_DOMAIN_* */
     unsigned int status;
 


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:42:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:42:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108924.207835 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVu1H-0007R6-9a; Mon, 12 Apr 2021 10:42:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108924.207835; Mon, 12 Apr 2021 10: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 1lVu1H-0007Qz-5q; Mon, 12 Apr 2021 10:42:15 +0000
Received: by outflank-mailman (input) for mailman id 108924;
 Mon, 12 Apr 2021 10:42:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVu1G-0007Qt-3A
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:42:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id eabf7540-391f-456d-bbff-88df6ed21618;
 Mon, 12 Apr 2021 10:42:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F2C27B2EB;
 Mon, 12 Apr 2021 10:42: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: eabf7540-391f-456d-bbff-88df6ed21618
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618224132; 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=qgEXU89AJcNr+Qc1cc168ENn6atfOxLVyI/6cq3iLMc=;
	b=i/yEhQfbxG0RtclYr+S8bncveufkaPY8qbGEse+0ABbHIfHBVDIF5tu/r+Jlym0FJBNkLG
	7weF1rOanPB5QQr7LjCqtG/IiyIhJge67pl1CbuMv4YZ5FZM8v4pMg3DzERuJAM3IrH1pf
	iNs3YbL+xrSuI159AIR9O9TPEGURzYM=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Tim Deegan <tim@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 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/shadow: adjust callback arrays
Message-ID: <621aa6f6-d7f8-25eb-9aeb-f181a9cb3bbc@suse.com>
Date: Mon, 12 Apr 2021 12:42:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Some of them have entries with stale comments. Rather than correcting
these comments, re-arrange how these arrays get populated, shrinking
their sizes at the same time (by omitting trailing NULL entries: Use
dedicated element initializers, serving the purpose of what the
comments did so far. This then also makes these arrays independent of
the actual ordering of the individual SH_type_*.

While tightening respective ASSERT()s in hash_{vcpu,domain}_foreach(),
also tighten related ones in shadow_hash_{insert,delete}().

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

--- a/xen/arch/x86/mm/shadow/common.c
+++ b/xen/arch/x86/mm/shadow/common.c
@@ -1565,7 +1565,7 @@ void shadow_hash_insert(struct domain *d
 
     ASSERT(paging_locked_by_me(d));
     ASSERT(d->arch.paging.shadow.hash_table);
-    ASSERT(t);
+    ASSERT(t >= SH_type_min_shadow && t <= SH_type_max_shadow);
 
     sh_hash_audit(d);
 
@@ -1590,7 +1590,7 @@ void shadow_hash_delete(struct domain *d
 
     ASSERT(paging_locked_by_me(d));
     ASSERT(d->arch.paging.shadow.hash_table);
-    ASSERT(t);
+    ASSERT(t >= SH_type_min_shadow && t <= SH_type_max_shadow);
 
     sh_hash_audit(d);
 
@@ -1668,7 +1668,7 @@ static void hash_vcpu_foreach(struct vcp
         {
             if ( callback_mask & (1 << x->u.sh.type) )
             {
-                ASSERT(x->u.sh.type < SH_type_unused);
+                ASSERT(x->u.sh.type <= SH_type_max_shadow);
                 ASSERT(callbacks[x->u.sh.type] != NULL);
                 done = callbacks[x->u.sh.type](v, page_to_mfn(x),
                                                callback_mfn);
@@ -1715,7 +1715,7 @@ static void hash_domain_foreach(struct d
         {
             if ( callback_mask & (1 << x->u.sh.type) )
             {
-                ASSERT(x->u.sh.type < SH_type_unused);
+                ASSERT(x->u.sh.type <= SH_type_max_shadow);
                 ASSERT(callbacks[x->u.sh.type] != NULL);
                 done = callbacks[x->u.sh.type](d, page_to_mfn(x),
                                                callback_mfn);
@@ -1819,26 +1819,16 @@ int sh_remove_write_access(struct domain
                            unsigned long fault_addr)
 {
     /* Dispatch table for getting per-type functions */
-    static const hash_domain_callback_t callbacks[SH_type_unused] = {
-        NULL, /* none    */
+    static const hash_domain_callback_t callbacks[] = {
 #ifdef CONFIG_HVM
-        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 2), /* l1_32   */
-        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 2), /* fl1_32  */
-        NULL, /* l2_32   */
-        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 3), /* l1_pae  */
-        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 3), /* fl1_pae */
-        NULL, /* l2_pae  */
+        [SH_type_l1_32_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 2),
+        [SH_type_fl1_32_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 2),
+        [SH_type_l1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 3),
+        [SH_type_fl1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 3),
 #endif
-        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 4), /* l1_64   */
-        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 4), /* fl1_64  */
-        NULL, /* l2_64   */
-        NULL, /* l2h_64  */
-        NULL, /* l3_64   */
-        NULL, /* l4_64   */
-        NULL, /* p2m     */
-        NULL  /* unused  */
+        [SH_type_l1_64_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 4),
+        [SH_type_fl1_64_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 4),
     };
-
     static const unsigned int callback_mask = SHF_L1_ANY | SHF_FL1_ANY;
     struct page_info *pg = mfn_to_page(gmfn);
 #if SHADOW_OPTIMIZATIONS & SHOPT_WRITABLE_HEURISTIC
@@ -2044,26 +2034,16 @@ int sh_remove_all_mappings(struct domain
     struct page_info *page = mfn_to_page(gmfn);
 
     /* Dispatch table for getting per-type functions */
-    static const hash_domain_callback_t callbacks[SH_type_unused] = {
-        NULL, /* none    */
+    static const hash_domain_callback_t callbacks[] = {
 #ifdef CONFIG_HVM
-        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 2), /* l1_32   */
-        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 2), /* fl1_32  */
-        NULL, /* l2_32   */
-        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 3), /* l1_pae  */
-        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 3), /* fl1_pae */
-        NULL, /* l2_pae  */
+        [SH_type_l1_32_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 2),
+        [SH_type_fl1_32_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 2),
+        [SH_type_l1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 3),
+        [SH_type_fl1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 3),
 #endif
-        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 4), /* l1_64   */
-        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 4), /* fl1_64  */
-        NULL, /* l2_64   */
-        NULL, /* l2h_64  */
-        NULL, /* l3_64   */
-        NULL, /* l4_64   */
-        NULL, /* p2m     */
-        NULL  /* unused  */
+        [SH_type_l1_64_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 4),
+        [SH_type_fl1_64_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 4),
     };
-
     static const unsigned int callback_mask = SHF_L1_ANY | SHF_FL1_ANY;
 
     perfc_incr(shadow_mappings);
@@ -2189,45 +2169,27 @@ void sh_remove_shadows(struct domain *d,
 
     /* Dispatch table for getting per-type functions: each level must
      * be called with the function to remove a lower-level shadow. */
-    static const hash_domain_callback_t callbacks[SH_type_unused] = {
-        NULL, /* none    */
+    static const hash_domain_callback_t callbacks[] = {
 #ifdef CONFIG_HVM
-        NULL, /* l1_32   */
-        NULL, /* fl1_32  */
-        SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 2), /* l2_32   */
-        NULL, /* l1_pae  */
-        NULL, /* fl1_pae */
-        SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 3), /* l2_pae  */
+        [SH_type_l2_32_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 2),
+        [SH_type_l2_pae_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 3),
 #endif
-        NULL, /* l1_64   */
-        NULL, /* fl1_64  */
-        SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 4), /* l2_64   */
-        SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 4), /* l2h_64  */
-        SHADOW_INTERNAL_NAME(sh_remove_l2_shadow, 4), /* l3_64   */
-        SHADOW_INTERNAL_NAME(sh_remove_l3_shadow, 4), /* l4_64   */
-        NULL, /* p2m     */
-        NULL  /* unused  */
+        [SH_type_l2_64_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 4),
+        [SH_type_l2h_64_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 4),
+        [SH_type_l3_64_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l2_shadow, 4),
+        [SH_type_l4_64_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l3_shadow, 4),
     };
 
     /* Another lookup table, for choosing which mask to use */
-    static const unsigned int masks[SH_type_unused] = {
-        0, /* none    */
+    static const unsigned int masks[SH_type_max_shadow + 1] = {
 #ifdef CONFIG_HVM
-        SHF_L2_32, /* l1_32   */
-        0, /* fl1_32  */
-        0, /* l2_32   */
-        SHF_L2_PAE, /* l1_pae  */
-        0, /* fl1_pae */
-        0, /* l2_pae  */
+        [SH_type_l1_32_shadow] = SHF_L2_32,
+        [SH_type_l1_pae_shadow] = SHF_L2_PAE,
 #endif
-        SHF_L2H_64 | SHF_L2_64, /* l1_64   */
-        0, /* fl1_64  */
-        SHF_L3_64, /* l2_64   */
-        SHF_L3_64, /* l2h_64  */
-        SHF_L4_64, /* l3_64   */
-        0, /* l4_64   */
-        0, /* p2m     */
-        0  /* unused  */
+        [SH_type_l1_64_shadow] = SHF_L2H_64 | SHF_L2_64,
+        [SH_type_l2_64_shadow] = SHF_L3_64,
+        [SH_type_l2h_64_shadow] = SHF_L3_64,
+        [SH_type_l3_64_shadow] = SHF_L4_64,
     };
 
     ASSERT(!(all && fast));
@@ -2356,24 +2318,8 @@ static int sh_clear_up_pointer(struct vc
 
 void sh_reset_l3_up_pointers(struct vcpu *v)
 {
-    static const hash_vcpu_callback_t callbacks[SH_type_unused] = {
-        NULL, /* none    */
-#ifdef CONFIG_HVM
-        NULL, /* l1_32   */
-        NULL, /* fl1_32  */
-        NULL, /* l2_32   */
-        NULL, /* l1_pae  */
-        NULL, /* fl1_pae */
-        NULL, /* l2_pae  */
-#endif
-        NULL, /* l1_64   */
-        NULL, /* fl1_64  */
-        NULL, /* l2_64   */
-        NULL, /* l2h_64  */
-        sh_clear_up_pointer, /* l3_64   */
-        NULL, /* l4_64   */
-        NULL, /* p2m     */
-        NULL  /* unused  */
+    static const hash_vcpu_callback_t callbacks[] = {
+        [SH_type_l3_64_shadow] = sh_clear_up_pointer,
     };
     static const unsigned int callback_mask = SHF_L3_64;
 
@@ -3381,25 +3327,23 @@ int shadow_domctl(struct domain *d,
 void shadow_audit_tables(struct vcpu *v)
 {
     /* Dispatch table for getting per-type functions */
-    static const hash_vcpu_callback_t callbacks[SH_type_unused] = {
-        NULL, /* none    */
+    static const hash_vcpu_callback_t callbacks[] = {
 #if SHADOW_AUDIT & (SHADOW_AUDIT_ENTRIES | SHADOW_AUDIT_ENTRIES_FULL)
 # ifdef CONFIG_HVM
-        SHADOW_INTERNAL_NAME(sh_audit_l1_table, 2),  /* l1_32   */
-        SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 2), /* fl1_32  */
-        SHADOW_INTERNAL_NAME(sh_audit_l2_table, 2),  /* l2_32   */
-        SHADOW_INTERNAL_NAME(sh_audit_l1_table, 3),  /* l1_pae  */
-        SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 3), /* fl1_pae */
-        SHADOW_INTERNAL_NAME(sh_audit_l2_table, 3),  /* l2_pae  */
+        [SH_type_l1_32_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l1_table, 2),
+        [SH_type_fl1_32_shadow] = SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 2),
+        [SH_type_l2_32_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l2_table, 2),
+        [SH_type_l1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l1_table, 3),
+        [SH_type_fl1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 3),
+        [SH_type_l2_pae_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l2_table, 3),
 # endif
-        SHADOW_INTERNAL_NAME(sh_audit_l1_table, 4),  /* l1_64   */
-        SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 4), /* fl1_64  */
-        SHADOW_INTERNAL_NAME(sh_audit_l2_table, 4),  /* l2_64   */
-        SHADOW_INTERNAL_NAME(sh_audit_l2_table, 4),  /* l2h_64   */
-        SHADOW_INTERNAL_NAME(sh_audit_l3_table, 4),  /* l3_64   */
-        SHADOW_INTERNAL_NAME(sh_audit_l4_table, 4),  /* l4_64   */
+        [SH_type_l1_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l1_table, 4),
+        [SH_type_fl1_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 4),
+        [SH_type_l2_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l2_table, 4),
+        [SH_type_l2h_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l2_table, 4),
+        [SH_type_l3_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l3_table, 4),
+        [SH_type_l4_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l4_table, 4),
 #endif
-        NULL  /* All the rest */
     };
     unsigned int mask;
 
@@ -3427,7 +3371,9 @@ void shadow_audit_tables(struct vcpu *v)
         }
     }
 
-    HASH_CALLBACKS_CHECK(SHF_page_type_mask);
+    HASH_CALLBACKS_CHECK(SHADOW_AUDIT & (SHADOW_AUDIT_ENTRIES |
+                                         SHADOW_AUDIT_ENTRIES_FULL)
+                         ? SHF_page_type_mask : 0);
     hash_vcpu_foreach(v, mask, callbacks, INVALID_MFN);
 }
 


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:43:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:43:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108929.207847 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVu2A-0007Yd-Nz; Mon, 12 Apr 2021 10:43:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108929.207847; Mon, 12 Apr 2021 10:43: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 1lVu2A-0007YW-Ku; Mon, 12 Apr 2021 10:43:10 +0000
Received: by outflank-mailman (input) for mailman id 108929;
 Mon, 12 Apr 2021 10:43:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L7uB=JJ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lVu28-0007YO-LK
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:43:08 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9cf36ec1-4fdf-4504-9697-49290507f3d9;
 Mon, 12 Apr 2021 10:43: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: 9cf36ec1-4fdf-4504-9697-49290507f3d9
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618224187;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=Zr8Bkt/mCHYg8RkLaIu1QzEOYALm8KfbC+7ZCm9+6kk=;
  b=P7+Rs5TPmLT9TCIubRvszxq61z678YIsQP9CMMMAB5+9wuzfkvRCBAth
   Y6+NgZVKaeiwsudZBji23vu278juxluG/EYzXrHFm82vrqyOEZSi06Xq3
   CAXbYN5NgzLWmxoM8OvcyNzxcfq2Ezp+yXwZ6LN7ywqBo5EC2msnwSwyX
   Q=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: t3JHziossGiwfXxl14US9k20+8kk/XVnHWzWNRxwGFkAN0jzlp01XOGhbuS2K0vQUGqbJG6ZX3
 BmYUqrSDwfUQbumkbp0FbvY9qfPBrBh/sVHHPWNiZ0nDKJ+4JHyD3llBXruHxJOWYwJXuTRoQo
 iQJ/7TQRAtmzcs6OJhH9gCa3RcWyPtDlR1ZEpK7j6Hlml5NVo39TAhhyQkyead5PHFFfwRzWwK
 irUoroP4o42eZdk/0dalo56uPiC3yyJZwIy4ZVwiTu0XzbT8ItVfJJWHA1WEYG6pQCt/9e39Xm
 RCM=
X-SBRS: 5.1
X-MesageID: 41217537
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:3PYkMqtohnCS5/Arl4WiXxDn7skCkoYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwTeCBtA50lGJ
 2Aovddrz27dngNKui9DH8JX+/Mzue77q7OSxgAGhIh9U2ynSqlgYSKaCSw8zU/d3d0wbkk+X
 XYiACR3Muemtyy1xO07R600714g93ko+EzZvCkrugwBnHShh2zZIJnMofywgwdhO208l4lnJ
 3tjn4bTr1OwkjcdG20vhfhsjOIuF1Fiw6AuC+lqEDuvNDjQ3YCA9dB7LgpDSfx0VYqv913zc
 twrgWknqdQZCmw+RjV1pzjUhFnkVeMunwykeIfpGw3a/pjVJZh6aMY509bC5EGAWbT750mCv
 BnCIXm6O9Rak7yVQGSgkBfhPiXGlgjFBaPRUYP/uSTzjhthXh8i28V3tYWkHss/I80IqM0qt
 jsA+BNrvVjX8UWZaVyCKMqWs2sEFHARhrKLSa7PUnnPLtvAQOCl7fHpJEOoM26cp0By5U/3L
 7bVklDiGI0c0XyTeWTwZxw9AzXSmnVZ0Wj9uhuo7xC/pHsTrviNiOODHo0ldG7nvkZCsrHH9
 mpPpZ7BOLiMHvOFY5F0xaWYegTFVAuFOku/vorUVOHpczGbqfwsPbATfrVLL3xVRYoM1mPQU
 crbXzWHoFt/0qrUnj3jFz6QHX2YHHy+pp2Dez/9+gXw44dC51UvmEu+BaEz/DODQcHnr09fU
 N4Lr+iuLi8v3OK8WHB6HgsHRZBEEBP4vHFX2lRrQEHd2P4GIxz9+m3SCR35j+qNxV/R8TZHE
 p0vFJs45+6KJSW2GQFENKoMmWTilMJv3KUR5IgmqmOjP2VO68QP9IDYuhcBA/LHxt6lUJBs2
 FYcjIJQUfZC3fTk6m/tYcVA+vebtF4pw+uLadv2DfinHTZgftqamoQXjaoX8LSpQo1XTJbim
 d89LIljKOalSyiLnY+h+oEIERBAV7ncY5uPUCgXsF5i7rrcAZ/QSOxiTuWhwoaV0Dq+08R71
 aRZBG8SLXuOB5wq3pY2qHl/BdIbW2bZVt3cW0/m5Z6D376tnF61vKraqK/33CKUEYLxvgQPV
 j+EH8vCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N57UwXGgJeSz5NU7Ns4R2KwgEt/gsuUGC7
 3CPyCUKS71EOMv1Ui+oG0/NCx9tXkjlrfJ1XTenRqF9U96JcCXBlJsA4w/CZW7yUPPQv6Typ
 V3jd4vp4KLQxPMQ+/D7ZuSViJJLxPYnHW/QO4po61FpK5ajsoBI7DrFR/zkExd1BowLM3IhF
 oTbaRy7rfGIJJudaUpCldk12tssNyOKUcx2zaGetMWTBUIj3XBOcmO7KeNgb0zAleZrA+YAy
 jWzwRtu9PEVTCEz7gUFuYZJnlXclE17DBH8PmZf4PdTCWseOcrxivwDlaNNJtcQrOCA7Mes1
 JT5MyJhfaec27A4z/r1AELVZ5mwiKAWsO9AAWFBO5O/ZibAD2389aXyf/2qiz2Rzu9Y1kfnq
 tfeyUrH4N+tgU=
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41217537"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gF+MFOwNmQfh7YDPxo76pBmpO1Z6BXM93CdPBwfwzAbwB+prwBzmJh7/UXrhNk3hppoawQj77Ld+2y31RDmFJVIpShYnp8TOIF1rrhLAcWPkntPGuLgDOLWmhg9uBdRbY4krVZpJSKR6qxJqvtV24j2ETKKigcHEFIBpwm4qwRiai4t2THJd0Y9+A/2n8WYeu5YKau06eYOTN0I4MRzJRyMAS8sZGojs+3InJ979AyTzZWqQpZjJXZ6NdzhqRXycX2POTgHpTDnvPsUy2z7UgSWvLQlHnmKHbIFOjd8O/iVJCSUns4He/HW7BUVtlmpfKYoQHss20sxwXXM9DT2qOw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2TfYkMazFoPwSmsA3zJBnONMpB2uqqzL4jIxg4luJb8=;
 b=SkoL4Tc3un9GEMEolzLImF6VsvhLdeiG4mLKpV53zw9VA6Qley1M5rXM0mX0BFR0Sg1R25ncGAj4zJpU4IE+tLt7vK9AyBmBVK0AOXTkeO0AitCPI/aK67ccgsdK+GtvBUZFkwYjqXOREo4QgO7zUiTB5anbq1p+ArqnBnfhY2ggMCawSEoDNsO3ixLfM/Wi9Ky1BEszPe5MbFd6EV4QVGympJRSWYyhOK5GW5OgqYnA1ebRsmGiV4rbOz9CFNt0hJAeB7k8RnCnh2iAElXkGxYhqGDwDGdeCTEPA/BwjP6fiZMPif5sSqqBZh7YL73TOb18sbqeGmCnncefETGnlw==
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=2TfYkMazFoPwSmsA3zJBnONMpB2uqqzL4jIxg4luJb8=;
 b=fm1MCWuVjYOsiqYFXvX5YBRJkqg/941gNFhPwA/wPgB83NgTE2ISYDJy1UX6bw8Y95JJk4U7Nlebxan4KINuu/XBEWFO8NoQsNoUwEQK5C7Iz1L9h79eXzM2l4j9Jt7Cnfo2TrfMdNLi40U21wt5QUSN/nxiHUWQMO5JInAdd4g=
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>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH] iommu: remove read_msi_from_ire hook
Date: Mon, 12 Apr 2021 12:42:53 +0200
Message-ID: <20210412104253.54690-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0055.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::19) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e4f6745f-c931-40c5-22ee-08d8fd9fc023
X-MS-TrafficTypeDiagnostic: DM4PR03MB6190:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB619037A22F0898A041D4ED238F709@DM4PR03MB6190.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:81;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: r4gedZCG0lJBY8qnSueJdVPKgRHqkbt/C0K1XIVggMcM36s3TchkdEYtOFQhNvOFKqb/tcy6gqacq8xuJTE4JYbiZ/YCyeo82v0ePBYFLYHnh3mXKvO7FvXinH08pRs+oDxgJ8Fx59GKviRgBVkt/dNIbbo/bNvbqm5CAuhv7W0Dr2Rf+lLlRjj2rAznQNgIPsLu4PryGX4+7iMkaO2zc46vI3VwOpOsjyqMxXr52Nug+ZMaH2/ccrtQH3IHyDHdRAf6P6xcEDSIWjlY8p79PKniJhWpfVG9pcV8VDkg0Y7ttnk+o2DYoz9PBWNGBJkieqjQDMMyTLQiri9vSRO/5vPPFF8+6nwp4V8T6jm6F1bs5MoyMU6p6oTY/DsTNWuw7bOAPHdbFyAzRFe7+K1/+63TlFx4m0hd+teUnSTRaQ0YjinemKmKoKG4SCCF0Iww+Bu6X4QBmK9S0OyDv1hpYgRL1NLiO7GWUOe3z5dUBcZ8hfmxqZ+Ua1KBCHEY5rvapoHsSoBH7zcnpnvEtXU8IAxxy+s+ZMvrx7uVzMFrbVBoKA9Ye543W8KETv/8O2qxlk8I1wuQPsNDkU9JV+DeBpBxuv+Mp+o72o3EEczhtp0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(39860400002)(366004)(376002)(396003)(8676002)(16526019)(66946007)(956004)(6486002)(86362001)(186003)(2906002)(4326008)(2616005)(54906003)(316002)(26005)(478600001)(6666004)(6496006)(1076003)(66476007)(38100700002)(83380400001)(36756003)(8936002)(66556008)(6916009)(4744005)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: e4f6745f-c931-40c5-22ee-08d8fd9fc023
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 10:43:03.8792
 (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: sXfKyhL6YGeReJewvnklMAQSUhtF4b3TJl0raIQH8HyvXanaTq7iThHJlC1ql6XQzKwzt3LCAl6lzghzNm1+gw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6190
X-OriginatorOrg: citrix.com

It's now unused after commit 28fb8cf323dd93f59a9c851c93ba9b79de8b1c4e.

Fixes: 28fb8cf323d ('x86/iommu: remove code to fetch MSI message from remap table')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/include/xen/iommu.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index d59ed7cbad4..ea0cd0f1a2a 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -244,7 +244,6 @@ struct iommu_ops {
 #ifdef CONFIG_HAS_PCI
     int (*get_device_group_id)(u16 seg, u8 bus, u8 devfn);
     int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
-    void (*read_msi_from_ire)(struct msi_desc *msi_desc, struct msi_msg *msg);
 #endif /* HAS_PCI */
 
     void (*teardown)(struct domain *d);
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:48:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:48:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108946.207902 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVu7f-000822-W7; Mon, 12 Apr 2021 10:48:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108946.207902; Mon, 12 Apr 2021 10:48:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVu7f-00081v-TI; Mon, 12 Apr 2021 10:48:51 +0000
Received: by outflank-mailman (input) for mailman id 108946;
 Mon, 12 Apr 2021 10:48:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVu7e-00081q-SD
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:48:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d8198930-7b0d-4f47-b907-57d1506d51f1;
 Mon, 12 Apr 2021 10:48:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0238AAE20;
 Mon, 12 Apr 2021 10:48: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: d8198930-7b0d-4f47-b907-57d1506d51f1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618224529; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=SRSp+hgqLVD0lRIs4YzDAObTfBAXs1lI0EUNcz4xaPA=;
	b=ZYV0+kJQrtEhdSulvqh2+vzu1v7HL0qh9eLjqMy/sQ94XGiWoOx+2SZsaeG1TpfGlvI2Aq
	EIOeIutDVzrU/pV7vx6GBjDxWU5SR2COKOszJLqCkmsPW1AdXNXzQTMcgMUPKQEJHWK75M
	lpTyhqMVBi7tLiOCBWQo6VIsrQ1q4vk=
Subject: Re: [PATCH] x86/cpuid: Advertise no-lmsle unilaterally to hvm guests
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210412102247.2118-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <fb2a13bc-29aa-d27f-16a5-2ee272a3c122@suse.com>
Date: Mon, 12 Apr 2021 12:48:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210412102247.2118-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 12:22, Andrew Cooper wrote:
> --- a/xen/arch/x86/cpuid.c
> +++ b/xen/arch/x86/cpuid.c
> @@ -456,6 +456,12 @@ static void __init calculate_hvm_max_policy(void)
>      __set_bit(X86_FEATURE_X2APIC, hvm_featureset);
>  
>      /*
> +     * We don't support EFER.LMSLE at all.  AMD has dropped the feature from
> +     * hardware and allocated a CPUID bit to indicate its absence.
> +     */
> +    __set_bit(X86_FEATURE_NO_LMSLE, hvm_featureset);

Why only for HVM? And shouldn't the LM: entry in the dependencies
table be adjusted such that !LM implies this bit clear?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:49:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:49:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108949.207915 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVu8B-00087O-9T; Mon, 12 Apr 2021 10:49:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108949.207915; Mon, 12 Apr 2021 10:49: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 1lVu8B-00087H-5d; Mon, 12 Apr 2021 10:49:23 +0000
Received: by outflank-mailman (input) for mailman id 108949;
 Mon, 12 Apr 2021 10:49:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L7uB=JJ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lVu89-000878-UY
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:49:21 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4d4cc9b1-a9cc-4bb4-a738-3fd3124f9a31;
 Mon, 12 Apr 2021 10:49:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4d4cc9b1-a9cc-4bb4-a738-3fd3124f9a31
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618224559;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=xsfYMNiNmShVY9r2Hl9Lxybvzxiu/AifYoCyWl6go6Y=;
  b=L9dSwZOd1LX/UrbPM23CFO5Y5SB6XJq2/Ykxdgr2zLuzztMEdNjUIgrs
   SEOL+fPwG03UjQQ5VplXU//G0g1l3xL8blxek2vNBGGv4Pa2MUmknOSQ1
   boHbUgGZ1vxSahOp6zMEUlY1ovqE5PJoMaxMOh8mUv+PVBFmbPOpY3Xnf
   4=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: zN8H6dDvEiU7vg337qsTaH3kjb66YyvvHNi7N/j9d2XzB7L8SDpLx9ASC6/nPksFZgPznfBPY4
 2PtJA3/K6PndmNin5cpwrJtelNCe2m9h8r69X/5YyTzvVvPMMbGbUkvak0ScO2/kCILQw8kDVn
 YgABKEv5g5AUQ1OcQxhxfT4v2slHdcE73lEbF4ecBWj1TbyovqaKLAtDVeP5N26jJA/aKZB1rG
 WMErs034UHHDmTLGAEV5Ku0/byXui5p/Zm2sLHZpNbv3EdGnpuZWfiPFzZPnWtFM8rdYeJPm/O
 0SA=
X-SBRS: 5.1
X-MesageID: 41507725
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:U+ViSqBp/YJ7TqblHegctMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmBEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVsUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbiSw9BEYTj9J3PMe4X
 HI+jaJnZmLntOa7lvn12HV54lLg9eJ8LV+LeGFl8R9EESPti+Gf4JkMofy2QwdgObq01oylc
 mJnhFIBbUO11r0XkWY5STgwBPh1jFG0Q6T9Xa9jWH4qcL0ABIWYvAx/L5xSRfS50o+sNwU6s
 sitAj4xvknfy/opyjz68PFUBtnjCOP0AIfuNUekmBFVs8mYKJRxLZvjX99KosKHy7x9ekcYY
 9TJfzbjcwmFW+yXjTyu2lix8GURXIjHhuKaVhqgL3q7xFm2F9+1EcW38oZgzMp8488UYBN46
 D+Pr1vj6wmdL5bUYtNQMM6BeenAG3ERhzBdEqUPFTcDakCf1bAsYT+7rkZ7PyjEaZ4g6caqd
 Dkahd1pGQyc0XhBYmlx5tQ6C3AR227QHDE1txez4IRgMy9eJPbdQm4DHw+mcqppPsSRufBXe
 yoBZ5QC/j/aUPzBIdy2RHkUZU6EwhebOQl/vIAH36eqMPCLYPn8sbBduzIGbbrGTE4HkzlBH
 8uWyXyOdVg4kinVmSQummSZ1rdPmjEub5gGqnT+OYejKIXMJdXjwQTgVOlouGHQAcy95AeTQ
 9bGvfKg6m7rW658SLj9GNyICdQCU5T/fHFW3NOrgkaDlPsfd84ypGiUFEX+EHCCg50TsvQHg
 IajU9w47iLI5uZwj1nLN67LGSAjT82qGiRR5kR3o2PjP2VNK8QP9IDYuhcBA/LHxt6lUJBs2
 FYcjIJQUfZC3fJkqWqjJsdAcnFbNliiAKXIcpZwEiv9nm0lIUKfD82TjSuWcmYjUIFXDxPnG
 B89KcZnf69gzq1EHA+h+45KVVIT2ySDNt9fUO4TbQRvoquVBB7TG+MizDfrx0oYGLl+38fgX
 HbITSOdevGBUdcvX5kwr/nmWkEBVm1TgZVUDRXoId9HWPJtjJI3eiHarGa/kGRZlEBq9ttew
 3tUH83GEdD1tq33BmalHK+Dn0g3IwpJfGYJq8kaavv1nSkL5ComakKE+RPxotsMMnjv4YwIK
 SiUj7QCAm9J/Ii2gSTqHpgBTJ9r2M8l+j0nDLi92q10RcEcIzvCWUjY4teBd6S72LpHanVlL
 p4iM84puu2PCHabMWcxaTecj5ELVfyrAeNPpUVgKERmZh3kr15W6T/e3/v8lps2R0lNsf6lE
 8EWs1Akfj8E74qW/ZXQj5T+1oiqc+GI0QquDHnG+NWRyBZs1bre/eyp4fSobUhAke9tBL9FF
 mW/Spa5erEVUK4pMknIpN1BWRdc04n7nt+uMuEao3LEQ2vHtsztmaSAzuYcLVHTrKCFqhVhh
 Fm48uQl+vSUybjwgjfsX9aJa1JmlzXDP+aMUapGeRS9ca9NknJqqy24NSrhDOycACFUS0j9M
 R4XH1VSN9ChDkkhJA21Sb3apWfmDNbr3JupRd9llDs3YC65nz8Bk8uC3yBvqlr
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41507725"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OIXdzICvgVyGblKvCympIQMbONN3uKnEvQei5qANv6S1+hlJaNvdE0un22agFItBvpSWQSA+GI6EieWfoTpO3Gqpp403f0RpZniQhthaXtvj6Zh0F7cpwNleLqKNvp68qX6YxdILGJL6W5L+knZ5Uk37BskyxSRDsueMoj3hymorJ5MBnASzU6HYoFFqUWRCrBeJLQT9pR47ng6W716sw6jUxAX0Nc7v15G2UsokwELzFi+q0rwj1SimDJfIZrUld53L14mXs//+EdMUKRVsTaGtkpJaOCjQTt9N4WvE99l2eB1s73UodSyMMkW/oSS2RXPPQdFtrDRnXBhk5E8qVg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wLwZwoXCHPPOndlESmbZP7fgbNGe+Ph3PjQ1pv/pdRo=;
 b=Kl5VrPR6euAnqHBl+gY9RY0mZ+1IFRI5oE6nX7in/BpgaGvYR37ozTeN3ZB/c3wwlgXMYyGIRguTIA2Eb0DygmtVm4c/avqZWXUpFWrFK3fUveSWqNMtBKUc9hKP69zeoqGTQDp5WhBMBBAmj9GfORkj5y3PVun8+02AlEzVVazBXAi0xMJKyFciwEUf4ZY8mWuP8nZDnmvEegcSv7FSCl28YR1NEEIZ5ne6MH6WqqAH0tFjKFLfsdxRlZaPjBehWiCQEsNiiJhebl3sQWxLkyr5nx76+fQu01fd6F2/xHXn97WtM9s8oDT/4P1kDpU8WFxsHJBOQGChE9SvFwtaSQ==
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=wLwZwoXCHPPOndlESmbZP7fgbNGe+Ph3PjQ1pv/pdRo=;
 b=rTMgIcr42fvpBIx5mJ9KzoXGYp3AtQhfx0uvpiTzRq6onMRGRpnjFVMe3f8FSZX0f8S5UR0Rdps834q5fct34sFQZ5FmDcCJJFfFY9rOlseKfoyE1rrzH0JfsMAIGYl+E5ZjEVJVGRsd4aw0h2JtK/nnfNG1BKr+bigRyca0HjY=
Date: Mon, 12 Apr 2021 12:49:10 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Rahul Singh <rahul.singh@arm.com>
CC: <xen-devel@lists.xenproject.org>, <bertrand.marquis@arm.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@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>, Paul Durrant <paul@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Message-ID: <YHQlptvoC06rqNhQ@Air-de-Roger>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
X-ClientProxiedBy: MR2P264CA0118.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::34) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6442ea70-8ea7-4f6c-623c-08d8fda09e20
X-MS-TrafficTypeDiagnostic: DM6PR03MB3577:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB35777C4DA3E62626638097508F709@DM6PR03MB3577.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ixe/774MWG6lIGzec3xdPy2l695ktcHajWgaTuZTtjmYDiSnE8AUO6xpbNSFx/5FP9Uajd6YvIbu+Um1+67kgJMUdk8CHlNCLw+xeZq5qBjzJPhUH7mRJH8jHvBIy+cI0XpNlG8mJnK3vWqSUNcOohrSoXtIRzNe1759/4jR9S6KqGlnaUfdThBnND+v+JxO40z59jQnx1cV9jdPxf758xOHNQACYtmI7hrPi+UxQYC0pvlok061IHslI3oIoGkoz05ERunjma3D3A0HVlXdR7AZ9C2Oe0DnJ0hJ/BmH7w61pz5fTocHNVGF3AuybAFv66cvZrQ226xcb9Tzu8+QGmXEQtNgL/RFFMGVNG1Wi16Gl5uUD3RLtIl6QhT1gr1gH1rANB3lCGtqfqnspNXziW0LaJsvbfNEtG6fZo2cGAuxeunRvGfCSQZdVPZMA01Aa8VzyjqvpUbIC7h8wo87fW0JB7MshDl7SzZGwsXHa1J587fSRdnJ/wHp6Wo63AOHgkSWykGeGSp4IfF6TyQYlw4dSnCIPcAzCrEhcqsL9NZaFdC394bU6Ndu8x2vOKQ7/5fo6yq4LltIeS0ZIb3TuVbJtFnzbrWipdN6R2mnqeX5MEeZpjfGDGFVc4ofN1PlRvZTD38eU0+jvMb+bds3jYoezkPqt68Gen6KW+66Fw/ejhiD9B1z6IyN1RCz/6gbXFCRzxOST09rRWTnZ2uOugb5TWcm1EE7p78vFaFIT4s=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(39860400002)(346002)(396003)(366004)(136003)(66476007)(8936002)(86362001)(2906002)(66556008)(66946007)(85182001)(478600001)(38100700002)(30864003)(6486002)(5660300002)(16526019)(4326008)(7416002)(54906003)(316002)(6496006)(6916009)(8676002)(186003)(6666004)(26005)(9686003)(83380400001)(33716001)(956004)(2004002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?DZfd/xkVFsbtkRrEuUWihH63BMrF6/xOTeZNy6q?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 6442ea70-8ea7-4f6c-623c-08d8fda09e20
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 10:49:16.3796
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 34bVAkM8yBJMtX2SEL2BZjODTvPAA2EhncXm1iCvpRbW40nf2XHDbEOqcv64sreMl2bM81XdOMJee+GTxkst0g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3577
X-OriginatorOrg: citrix.com

On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
> MSI related code in the "passthrough/pci.c” file is not useful for ARM
> when MSI interrupts are injected via GICv3 ITS.
> 
> Therefore introducing the new flag CONFIG_PCI_MSI_INTERCEPT to gate the
> MSI code for ARM in common code. Also move the arch-specific code to an
> arch-specific directory and implement the stub version for the unused
> code for ARM to avoid compilation error when HAS_PCI is enabled for ARM.
> 
> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
> ---
> Changes since v1:
>  - Rename CONFIG_HAS_PCI_MSI to CONFIG_PCI_MSI_INTERCEPT
>  - Implement stub version of the unused function for ARM.
>  - Move unneeded function to x86 file.     
> ---
>  xen/arch/x86/msi.c            | 64 +++++++++++++++++++++++++++++++++++
>  xen/drivers/passthrough/pci.c | 51 +++++++---------------------
>  xen/drivers/pci/Kconfig       |  4 +++
>  xen/drivers/vpci/Makefile     |  3 +-
>  xen/drivers/vpci/header.c     | 19 +++--------
>  xen/drivers/vpci/msix.c       | 25 ++++++++++++++
>  xen/drivers/vpci/vpci.c       |  3 +-
>  xen/include/asm-arm/msi.h     | 44 ++++++++++++++++++++++++
>  xen/include/asm-x86/msi.h     |  4 +++
>  xen/include/xen/pci.h         | 11 +++---
>  xen/include/xen/vpci.h        | 24 ++++++++++++-
>  xen/xsm/flask/hooks.c         |  8 ++---
>  12 files changed, 195 insertions(+), 65 deletions(-)
>  create mode 100644 xen/include/asm-arm/msi.h
> 
> diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
> index 5febc0ea4b..a6356f4a63 100644
> --- a/xen/arch/x86/msi.c
> +++ b/xen/arch/x86/msi.c
> @@ -1411,6 +1411,70 @@ void __init early_msi_init(void)
>          return;
>  }
>  
> +int alloc_pci_msi(struct pci_dev *pdev)

I would rather name it pci_msi_init...

> +{
> +    unsigned int pos;
> +
> +    INIT_LIST_HEAD(&pdev->msi_list);
> +
> +    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
> +                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSI);
> +    if ( pos )
> +    {
> +        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
> +
> +        pdev->msi_maxvec = multi_msi_capable(ctrl);
> +    }
> +
> +    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
> +                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSIX);
> +    if ( pos )
> +    {
> +        struct arch_msix *msix = xzalloc(struct arch_msix);
> +        uint16_t ctrl;
> +
> +        if ( !msix )
> +            return -ENOMEM;
> +
> +        spin_lock_init(&msix->table_lock);
> +
> +        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
> +        msix->nr_entries = msix_table_size(ctrl);
> +
> +        pdev->msix = msix;
> +    }
> +
> +    return 0;
> +}
> +
> +void free_pci_msi(struct pci_dev *pdev)

...and pci_msi_free.

> +{
> +    xfree(pdev->msix);
> +}
> +
> +int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev)

This kind of a confusing name - what about pci_msix_assign?

> +{
> +    int rc;
> +
> +    if ( pdev->msix )
> +    {
> +        rc = pci_reset_msix_state(pdev);
> +        if ( rc )
> +            return rc;
> +        msixtbl_init(d);
> +    }
> +
> +    return 0;
> +}
> +
> +void dump_pci_msi(struct pci_dev *pdev)
> +{
> +    struct msi_desc *msi;
> +
> +    list_for_each_entry ( msi, &pdev->msi_list, list )
> +        printk("%d ", msi->irq);
> +}

I wonder, those those function really want to be in a x86 specific
file? There's nothing x86 specific about them AFAICT.

Would it make sense to create a separate msi-intercept.c file with
those that gets included when CONFIG_PCI_MSI_INTERCEPT?

>  static void dump_msi(unsigned char key)
>  {
>      unsigned int irq;
> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> index 705137f8be..1b473502a1 100644
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -314,6 +314,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
>  {
>      struct pci_dev *pdev;
>      unsigned int pos;
> +    int rc;
>  
>      list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
>          if ( pdev->bus == bus && pdev->devfn == devfn )
> @@ -327,35 +328,12 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
>      *((u8*) &pdev->bus) = bus;
>      *((u8*) &pdev->devfn) = devfn;
>      pdev->domain = NULL;
> -    INIT_LIST_HEAD(&pdev->msi_list);
> -
> -    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
> -                              PCI_CAP_ID_MSI);
> -    if ( pos )
> -    {
> -        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
> -
> -        pdev->msi_maxvec = multi_msi_capable(ctrl);
> -    }
>  
> -    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
> -                              PCI_CAP_ID_MSIX);
> -    if ( pos )
> +    rc = alloc_pci_msi(pdev);
> +    if ( rc )
>      {
> -        struct arch_msix *msix = xzalloc(struct arch_msix);
> -        uint16_t ctrl;
> -
> -        if ( !msix )
> -        {
> -            xfree(pdev);
> -            return NULL;
> -        }
> -        spin_lock_init(&msix->table_lock);
> -
> -        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
> -        msix->nr_entries = msix_table_size(ctrl);
> -
> -        pdev->msix = msix;
> +        xfree(pdev);
> +        return NULL;
>      }
>  
>      list_add(&pdev->alldevs_list, &pseg->alldevs_list);
> @@ -449,7 +427,7 @@ static void free_pdev(struct pci_seg *pseg, struct pci_dev *pdev)
>      }
>  
>      list_del(&pdev->alldevs_list);
> -    xfree(pdev->msix);
> +    free_pci_msi(pdev);
>      xfree(pdev);
>  }
>  
> @@ -1271,7 +1249,6 @@ bool_t pcie_aer_get_firmware_first(const struct pci_dev *pdev)
>  static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
>  {
>      struct pci_dev *pdev;
> -    struct msi_desc *msi;
>  
>      printk("==== segment %04x ====\n", pseg->nr);
>  
> @@ -1280,8 +1257,7 @@ static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
>          printk("%pp - %pd - node %-3d - MSIs < ",
>                 &pdev->sbdf, pdev->domain,
>                 (pdev->node != NUMA_NO_NODE) ? pdev->node : -1);
> -        list_for_each_entry ( msi, &pdev->msi_list, list )
> -               printk("%d ", msi->irq);
> +        dump_pci_msi(pdev);
>          printk(">\n");
>      }
>  
> @@ -1303,12 +1279,15 @@ static int __init setup_dump_pcidevs(void)
>  }
>  __initcall(setup_dump_pcidevs);
>  
> +
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>  int iommu_update_ire_from_msi(
>      struct msi_desc *msi_desc, struct msi_msg *msg)
>  {
>      return iommu_intremap
>             ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>  }
> +#endif

This is not exactly related to MSI intercepts, the IOMMU interrupt
remapping table will also be used for interrupt entries for devices
being used by Xen directly, where no intercept is required.

And then you also want to gate the hook from iommu_ops itself with
CONFIG_PCI_MSI_INTERCEPT, if we want to got this route.

>  
>  static int iommu_add_device(struct pci_dev *pdev)
>  {
> @@ -1429,13 +1408,9 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
>      ASSERT(pdev && (pdev->domain == hardware_domain ||
>                      pdev->domain == dom_io));
>  
> -    if ( pdev->msix )
> -    {
> -        rc = pci_reset_msix_state(pdev);
> -        if ( rc )
> -            goto done;
> -        msixtbl_init(d);
> -    }
> +    rc = pci_assign_msix_init(d, pdev);
> +    if ( rc )
> +        goto done;
>  
>      pdev->fault.count = 0;
>  
> diff --git a/xen/drivers/pci/Kconfig b/xen/drivers/pci/Kconfig
> index 7da03fa13b..7ab92bde6e 100644
> --- a/xen/drivers/pci/Kconfig
> +++ b/xen/drivers/pci/Kconfig
> @@ -1,3 +1,7 @@
>  
>  config HAS_PCI
>  	bool
> +
> +config PCI_MSI_INTERCEPT
> +	def_bool y
> +	depends on X86 && HAS_PCI
> diff --git a/xen/drivers/vpci/Makefile b/xen/drivers/vpci/Makefile
> index 55d1bdfda0..f91fa71a40 100644
> --- a/xen/drivers/vpci/Makefile
> +++ b/xen/drivers/vpci/Makefile
> @@ -1 +1,2 @@
> -obj-y += vpci.o header.o msi.o msix.o
> +obj-y += vpci.o header.o
> +obj-$(CONFIG_PCI_MSI_INTERCEPT) += msi.o msix.o
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index ba9a036202..a7695a0e2a 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -206,7 +206,6 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>      struct vpci_header *header = &pdev->vpci->header;
>      struct rangeset *mem = rangeset_new(NULL, NULL, 0);
>      struct pci_dev *tmp, *dev = NULL;
> -    const struct vpci_msix *msix = pdev->vpci->msix;
>      unsigned int i;
>      int rc;
>  
> @@ -244,21 +243,11 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>      }
>  
>      /* Remove any MSIX regions if present. */
> -    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
> +    rc = remove_msix_regions(pdev,mem);

Coding style: missing space between parameters.

> +    if ( rc )
>      {
> -        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
> -        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
> -                                     vmsix_table_size(pdev->vpci, i) - 1);
> -
> -        rc = rangeset_remove_range(mem, start, end);
> -        if ( rc )
> -        {
> -            printk(XENLOG_G_WARNING
> -                   "Failed to remove MSIX table [%lx, %lx]: %d\n",
> -                   start, end, rc);
> -            rangeset_destroy(mem);
> -            return rc;
> -        }
> +        rangeset_destroy(mem);
> +        return rc;
>      }
>  
>      /*
> diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
> index 846f1b8d70..ca0a9b5665 100644
> --- a/xen/drivers/vpci/msix.c
> +++ b/xen/drivers/vpci/msix.c
> @@ -428,6 +428,31 @@ int vpci_make_msix_hole(const struct pci_dev *pdev)
>      return 0;
>  }
>  
> +int remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem)

This needs to start with a vpci_ prefix, since it's a global function.
What about vpci_msix_remove_regions.

> +{
> +    const struct vpci_msix *msix = pdev->vpci->msix;
> +    unsigned int i;
> +    int rc;
> +
> +    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
> +    {
> +        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
> +        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
> +                vmsix_table_size(pdev->vpci, i) - 1);
> +
> +        rc = rangeset_remove_range(mem, start, end);
> +        if ( rc )
> +        {
> +            printk(XENLOG_G_WARNING
> +                    "Failed to remove MSIX table [%lx, %lx]: %d\n",
> +                    start, end, rc);
> +            return rc;
> +        }
> +    }
> +
> +    return 0;
> +}
> +
>  static int init_msix(struct pci_dev *pdev)
>  {
>      struct domain *d = pdev->domain;
> diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
> index cbd1bac7fc..ebe40b0538 100644
> --- a/xen/drivers/vpci/vpci.c
> +++ b/xen/drivers/vpci/vpci.c
> @@ -48,8 +48,7 @@ void vpci_remove_device(struct pci_dev *pdev)
>          xfree(r);
>      }
>      spin_unlock(&pdev->vpci->lock);
> -    xfree(pdev->vpci->msix);
> -    xfree(pdev->vpci->msi);
> +    free_vpci_msi(pdev);
>      xfree(pdev->vpci);
>      pdev->vpci = NULL;
>  }
> diff --git a/xen/include/asm-arm/msi.h b/xen/include/asm-arm/msi.h
> new file mode 100644
> index 0000000000..c54193310e
> --- /dev/null
> +++ b/xen/include/asm-arm/msi.h
> @@ -0,0 +1,44 @@
> +/*
> + * Copyright (C) 2021 Arm Ltd.
> + *
> + * 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/>.
> + */
> +
> +#ifndef __ASM_MSI_H_
> +#define __ASM_MSI_H_
> +
> +static inline int alloc_pci_msi(struct pci_dev *pdev)
> +{
> +    return 0;
> +}
> +
> +static inline int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev)
> +{
> +    return 0;
> +}
> +
> +static inline void dump_pci_msi(struct pci_dev *pdev) {}
> +static inline void free_pci_msi(struct pci_dev *pdev) {}
> +static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
> +
> +#endif /* __ASM_MSI_H */
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * tab-width: 4
> + * indent-tabs-mode: nil
> + * End:
> + */

Should you instead have a non-arch specific file with those dummy
helpers that get used when !CONFIG_PCI_MSI_INTERCEPT?

> diff --git a/xen/include/asm-x86/msi.h b/xen/include/asm-x86/msi.h
> index e228b0f3f3..7ef0161b67 100644
> --- a/xen/include/asm-x86/msi.h
> +++ b/xen/include/asm-x86/msi.h
> @@ -252,5 +252,9 @@ void unmask_msi_irq(struct irq_desc *);
>  void guest_mask_msi_irq(struct irq_desc *, bool mask);
>  void ack_nonmaskable_msi_irq(struct irq_desc *);
>  void set_msi_affinity(struct irq_desc *, const cpumask_t *);
> +int alloc_pci_msi(struct pci_dev *pdev);
> +void free_pci_msi(struct pci_dev *pdev);
> +void dump_pci_msi(struct pci_dev *pdev);
> +int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev);
>  
>  #endif /* __ASM_MSI_H */
> diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
> index 8e3d4d9454..f5b57270be 100644
> --- a/xen/include/xen/pci.h
> +++ b/xen/include/xen/pci.h
> @@ -79,10 +79,6 @@ struct pci_dev {
>      struct list_head alldevs_list;
>      struct list_head domain_list;
>  
> -    struct list_head msi_list;
> -
> -    struct arch_msix *msix;
> -
>      struct domain *domain;
>  
>      const union {
> @@ -94,7 +90,14 @@ struct pci_dev {
>          pci_sbdf_t sbdf;
>      };
>  
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
> +    struct list_head msi_list;
> +
> +    struct arch_msix *msix;
> +
>      uint8_t msi_maxvec;
> +#endif
> +
>      uint8_t phantom_stride;
>  
>      nodeid_t node; /* NUMA node */
> diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
> index 9f5b5d52e1..a6b12717b1 100644
> --- a/xen/include/xen/vpci.h
> +++ b/xen/include/xen/vpci.h
> @@ -91,6 +91,7 @@ struct vpci {
>          /* FIXME: currently there's no support for SR-IOV. */
>      } header;
>  
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>      /* MSI data. */
>      struct vpci_msi {
>        /* Address. */
> @@ -136,6 +137,7 @@ struct vpci {
>              struct vpci_arch_msix_entry arch;
>          } entries[];
>      } *msix;
> +#endif /* CONFIG_PCI_MSI_INTERCEPT */

Note that here you just remove two pointers from the struct, not that
I'm opposed to it, but it's not that much space that's saved anyway.
Ie: it might also be fine to just leave them as NULL unconditionally
on Arm.

>  #endif
>  };
>  
> @@ -148,6 +150,7 @@ struct vpci_vcpu {
>  };
>  
>  #ifdef __XEN__
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>  void vpci_dump_msi(void);
>  
>  /* Make sure there's a hole in the p2m for the MSIX mmio areas. */
> @@ -174,7 +177,7 @@ int __must_check vpci_msix_arch_disable_entry(struct vpci_msix_entry *entry,
>                                                const struct pci_dev *pdev);
>  void vpci_msix_arch_init_entry(struct vpci_msix_entry *entry);
>  int vpci_msix_arch_print(const struct vpci_msix *msix);
> -
> +int remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem);
>  /*
>   * Helper functions to fetch MSIX related data. They are used by both the
>   * emulated MSIX code and the BAR handlers.
> @@ -208,6 +211,25 @@ static inline unsigned int vmsix_entry_nr(const struct vpci_msix *msix,
>  {
>      return entry - msix->entries;
>  }
> +
> +static inline void free_vpci_msi(const struct pci_dev *pdev)

vpci_msi_free please.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:50:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:50:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108954.207927 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVu9L-0000XJ-MH; Mon, 12 Apr 2021 10:50:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108954.207927; Mon, 12 Apr 2021 10:50: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 1lVu9L-0000XC-J2; Mon, 12 Apr 2021 10:50:35 +0000
Received: by outflank-mailman (input) for mailman id 108954;
 Mon, 12 Apr 2021 10:50:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVu9K-0000X3-3o
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:50:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1c2bce5a-6e92-43aa-8e36-adbf945bde55;
 Mon, 12 Apr 2021 10:50:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9CCACAE20;
 Mon, 12 Apr 2021 10:50: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: 1c2bce5a-6e92-43aa-8e36-adbf945bde55
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618224632; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=jZFZpFLCtQsGVUmzlOY8atYeKO8X0Xi0MBEOJ96gl4g=;
	b=KHMN7M2G5OovXppCwW3xjMLsWrjXMJq7qIf3c6Go7uyJCkuKzBi9+YZUErLWMVAQv9qqez
	baQwdYm8D5BSvfw5AhJno/ulOU9OPf/kEPmtCxT9puaw9t2059BEMfV50Wc5rDvONHGJK1
	cYGp9gvlHI3LG6QasWzic9cR4xL52vg=
Subject: Re: [PATCH] iommu: remove read_msi_from_ire hook
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20210412104253.54690-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3a4a0252-7ad4-82e0-0004-6c85974e8034@suse.com>
Date: Mon, 12 Apr 2021 12:50:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210412104253.54690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 12.04.2021 12:42, Roger Pau Monne wrote:
> It's now unused after commit 28fb8cf323dd93f59a9c851c93ba9b79de8b1c4e.
> 
> Fixes: 28fb8cf323d ('x86/iommu: remove code to fetch MSI message from remap table')
> 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 Apr 12 10:53:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:53:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108959.207939 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuBk-0000hz-3g; Mon, 12 Apr 2021 10:53:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108959.207939; Mon, 12 Apr 2021 10:53: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 1lVuBk-0000hs-0G; Mon, 12 Apr 2021 10:53:04 +0000
Received: by outflank-mailman (input) for mailman id 108959;
 Mon, 12 Apr 2021 10:53:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VKKJ=JJ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lVuBj-0000hn-2G
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:53:03 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id f81b5f68-9c6b-4dd9-b793-ecdbe4df2bb2;
 Mon, 12 Apr 2021 10:53:01 +0000 (UTC)
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 25F2D31B;
 Mon, 12 Apr 2021 03:53:01 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 8C7E83F694;
 Mon, 12 Apr 2021 03:52: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: f81b5f68-9c6b-4dd9-b793-ecdbe4df2bb2
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>,
	Rahul Singh <rahul.singh@arm.com>
Subject: [PATCH v3 0/4] xen/arm: Prevent Dom0 to be loaded when using dom0less
Date: Mon, 12 Apr 2021 11:52:39 +0100
Message-Id: <20210412105243.23354-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1

This is the v2 of xen/arm: Prevent Dom0 to be loaded when using dom0less
previously pushed.

The aim of this serie is to prevent the creation and run of the domain 0 (Dom0)
when the system configuration to be used is dom0less, that is when the device
tree declares at least one domU and no Dom0.

Changes in v2 are:
 - Moving the dom0 creation in a proper function
 - Handle the case of having an hardware_domain NULL
 - Be sure that the domain id 0 is never allocated
 - Modify documentation about dom0less

Changes in v3: minor fixes explained in each patches

Luca Fancellu (4):
  xen/arm: Move dom0 creation in domain_build.c
  xen/arm: Handle cases when hardware_domain is NULL
  xen/arm: Reserve domid 0 for Dom0
  xen/arm: Prevent Dom0 to be loaded when using dom0less

 docs/features/dom0less.pandoc            |  7 +--
 xen/arch/arm/domain_build.c              | 43 ++++++++++++++-
 xen/arch/arm/irq.c                       |  2 +-
 xen/arch/arm/setup.c                     | 69 +++++++++++++-----------
 xen/drivers/passthrough/arm/ipmmu-vmsa.c |  2 +-
 xen/drivers/passthrough/arm/smmu-v3.c    |  2 +-
 xen/drivers/passthrough/arm/smmu.c       |  2 +-
 xen/include/asm-arm/domain.h             |  2 +-
 xen/include/asm-arm/setup.h              |  2 +-
 xen/include/xen/sched.h                  |  3 ++
 10 files changed, 94 insertions(+), 40 deletions(-)

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:53:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:53:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108960.207950 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuBn-0000js-BD; Mon, 12 Apr 2021 10:53:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108960.207950; Mon, 12 Apr 2021 10:53:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuBn-0000jl-7h; Mon, 12 Apr 2021 10:53:07 +0000
Received: by outflank-mailman (input) for mailman id 108960;
 Mon, 12 Apr 2021 10:53:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VKKJ=JJ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lVuBl-0000jA-MG
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:53:05 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 36946a84-f473-4f29-99fd-a68ce6a6bc01;
 Mon, 12 Apr 2021 10:53:04 +0000 (UTC)
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 0130EED1;
 Mon, 12 Apr 2021 03:53:04 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6EE903F694;
 Mon, 12 Apr 2021 03:53: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: 36946a84-f473-4f29-99fd-a68ce6a6bc01
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>,
	Rahul Singh <rahul.singh@arm.com>
Subject: [PATCH v3 2/4] xen/arm: Handle cases when hardware_domain is NULL
Date: Mon, 12 Apr 2021 11:52:41 +0100
Message-Id: <20210412105243.23354-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210412105243.23354-1-luca.fancellu@arm.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>

The function is_hardware_domain() returns true if the
hardware_domain and the passed domain is NULL, here we
add a check to return false if there is no hardware_domain.

Among the common and arm codebase there are few cases where
the hardware_domain variable is checked to see if the current
domain is equal to the hardware_domain, change this cases to
use is_hardware_domain() function instead.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
v3 changes:
- removed unneeded parenthesis for macro is_domain_direct_mapped
- is_hardware_domain() checks for the passed domain and if it is
  NULL, it returns false.
- reverted back checks in the function late_hwdom_init
---
 xen/arch/arm/irq.c                       | 2 +-
 xen/drivers/passthrough/arm/ipmmu-vmsa.c | 2 +-
 xen/drivers/passthrough/arm/smmu-v3.c    | 2 +-
 xen/drivers/passthrough/arm/smmu.c       | 2 +-
 xen/include/asm-arm/domain.h             | 2 +-
 xen/include/xen/sched.h                  | 3 +++
 6 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
index b71b099e6f..b761d90c40 100644
--- a/xen/arch/arm/irq.c
+++ b/xen/arch/arm/irq.c
@@ -412,7 +412,7 @@ bool is_assignable_irq(unsigned int irq)
  */
 bool irq_type_set_by_domain(const struct domain *d)
 {
-    return (d == hardware_domain);
+    return is_hardware_domain(d);
 }
 
 /*
diff --git a/xen/drivers/passthrough/arm/ipmmu-vmsa.c b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
index aef358d880..8b8e3a00ba 100644
--- a/xen/drivers/passthrough/arm/ipmmu-vmsa.c
+++ b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
@@ -1168,7 +1168,7 @@ static int ipmmu_reassign_device(struct domain *s, struct domain *t,
     int ret = 0;
 
     /* Don't allow remapping on other domain than hwdom */
-    if ( t && t != hardware_domain )
+    if ( t && !is_hardware_domain(t) )
         return -EPERM;
 
     if ( t == s )
diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c
index 53d150cdb6..d115df7320 100644
--- a/xen/drivers/passthrough/arm/smmu-v3.c
+++ b/xen/drivers/passthrough/arm/smmu-v3.c
@@ -3366,7 +3366,7 @@ 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 && t != hardware_domain)
+	if ( t && !is_hardware_domain(t) )
 		return -EPERM;
 
 	if (t == s)
diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index 3e8aa37866..932fdfd6dd 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -2670,7 +2670,7 @@ 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 && t != hardware_domain)
+	if ( t && !is_hardware_domain(t) )
 		return -EPERM;
 
 	if (t == s)
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 1da90f207d..0a74df9931 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -30,7 +30,7 @@ enum domain_type {
 #endif
 
 /* The hardware domain has always its memory direct mapped. */
-#define is_domain_direct_mapped(d) ((d) == hardware_domain)
+#define is_domain_direct_mapped(d) is_hardware_domain(d)
 
 struct vtimer {
     struct vcpu *v;
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index 5485d08afb..5ba90f1214 100644
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -1022,6 +1022,9 @@ static always_inline bool is_hardware_domain(const struct domain *d)
     if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
         return false;
 
+    if ( !d )
+        return false;
+
     return evaluate_nospec(d == hardware_domain);
 }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:53:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:53:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108961.207963 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuBp-0000mL-Kz; Mon, 12 Apr 2021 10:53:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108961.207963; Mon, 12 Apr 2021 10:53:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuBp-0000mC-Gw; Mon, 12 Apr 2021 10:53:09 +0000
Received: by outflank-mailman (input) for mailman id 108961;
 Mon, 12 Apr 2021 10:53:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VKKJ=JJ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lVuBo-0000hn-0H
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:53:08 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 0dfdfd44-22ae-4134-b6e0-b309473b5af6;
 Mon, 12 Apr 2021 10:53:02 +0000 (UTC)
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 3AA52D6E;
 Mon, 12 Apr 2021 03:53:02 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 52AEC3F694;
 Mon, 12 Apr 2021 03:53: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: 0dfdfd44-22ae-4134-b6e0-b309473b5af6
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v3 1/4] xen/arm: Move dom0 creation in domain_build.c
Date: Mon, 12 Apr 2021 11:52:40 +0100
Message-Id: <20210412105243.23354-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210412105243.23354-1-luca.fancellu@arm.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>

Move dom0 creation and start from setup.c to domain_build.c
on a dedicate function.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
v3 changes:
- move create_dom0 function after construct_dom0 and
  make construct_dom0 static
---
 xen/arch/arm/domain_build.c | 38 ++++++++++++++++++++++++++++++++++++-
 xen/arch/arm/setup.c        | 29 +---------------------------
 xen/include/asm-arm/setup.h |  2 +-
 3 files changed, 39 insertions(+), 30 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 374bf655ee..359957dc1b 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -21,6 +21,7 @@
 #include <asm/device.h>
 #include <asm/kernel.h>
 #include <asm/setup.h>
+#include <asm/tee/tee.h>
 #include <asm/platform.h>
 #include <asm/psci.h>
 #include <asm/setup.h>
@@ -2520,7 +2521,7 @@ void __init create_domUs(void)
     }
 }
 
-int __init construct_dom0(struct domain *d)
+static int __init construct_dom0(struct domain *d)
 {
     struct kernel_info kinfo = {};
     int rc;
@@ -2578,6 +2579,41 @@ int __init construct_dom0(struct domain *d)
     return construct_domain(d, &kinfo);
 }
 
+struct domain* __init create_dom0(void)
+{
+    struct domain *dom0;
+    struct xen_domctl_createdomain dom0_cfg = {
+        .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
+        .max_evtchn_port = -1,
+        .max_grant_frames = gnttab_dom0_frames(),
+        .max_maptrack_frames = -1,
+    };
+
+    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
+    dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
+    /*
+     * Xen vGIC supports a maximum of 992 interrupt lines.
+     * 32 are substracted to cover local IRQs.
+     */
+    dom0_cfg.arch.nr_spis = min(gic_number_lines(), (unsigned int) 992) - 32;
+    if ( gic_number_lines() > 992 )
+        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n");
+    dom0_cfg.arch.tee_type = tee_get_type();
+    dom0_cfg.max_vcpus = dom0_max_vcpus();
+
+    if ( iommu_enabled )
+        dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
+
+    dom0 = domain_create(0, &dom0_cfg, true);
+    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
+        panic("Error creating domain 0\n");
+
+    if ( construct_dom0(dom0) != 0)
+        panic("Could not set up DOM0 guest OS\n");
+
+    return dom0;
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 2532ec9739..b405f58996 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -51,7 +51,6 @@
 #include <asm/platform.h>
 #include <asm/procinfo.h>
 #include <asm/setup.h>
-#include <asm/tee/tee.h>
 #include <xsm/xsm.h>
 #include <asm/acpi.h>
 
@@ -805,12 +804,6 @@ void __init start_xen(unsigned long boot_phys_offset,
     const char *cmdline;
     struct bootmodule *xen_bootmodule;
     struct domain *dom0;
-    struct xen_domctl_createdomain dom0_cfg = {
-        .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
-        .max_evtchn_port = -1,
-        .max_grant_frames = gnttab_dom0_frames(),
-        .max_maptrack_frames = -1,
-    };
     int rc;
 
     dcache_line_bytes = read_dcache_line_bytes();
@@ -965,27 +958,7 @@ void __init start_xen(unsigned long boot_phys_offset,
     enable_errata_workarounds();
 
     /* Create initial domain 0. */
-    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
-    dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
-    /*
-     * Xen vGIC supports a maximum of 992 interrupt lines.
-     * 32 are substracted to cover local IRQs.
-     */
-    dom0_cfg.arch.nr_spis = min(gic_number_lines(), (unsigned int) 992) - 32;
-    if ( gic_number_lines() > 992 )
-        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n");
-    dom0_cfg.arch.tee_type = tee_get_type();
-    dom0_cfg.max_vcpus = dom0_max_vcpus();
-
-    if ( iommu_enabled )
-        dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
-
-    dom0 = domain_create(0, &dom0_cfg, true);
-    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
-        panic("Error creating domain 0\n");
-
-    if ( construct_dom0(dom0) != 0)
-        panic("Could not set up DOM0 guest OS\n");
+    dom0 = create_dom0();
 
     heap_init_late();
 
diff --git a/xen/include/asm-arm/setup.h b/xen/include/asm-arm/setup.h
index 28bf622aa1..5283244015 100644
--- a/xen/include/asm-arm/setup.h
+++ b/xen/include/asm-arm/setup.h
@@ -93,8 +93,8 @@ void acpi_create_efi_mmap_table(struct domain *d,
 
 int acpi_make_efi_nodes(void *fdt, struct membank tbl_add[]);
 
-int construct_dom0(struct domain *d);
 void create_domUs(void);
+struct domain* create_dom0(void);
 
 void discard_initial_modules(void);
 void fw_unreserved_regions(paddr_t s, paddr_t e,
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:53:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:53:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108962.207975 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuBr-0000pD-Up; Mon, 12 Apr 2021 10:53:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108962.207975; Mon, 12 Apr 2021 10: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 1lVuBr-0000p5-R7; Mon, 12 Apr 2021 10:53:11 +0000
Received: by outflank-mailman (input) for mailman id 108962;
 Mon, 12 Apr 2021 10:53:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VKKJ=JJ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lVuBq-0000jA-Kz
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:53:10 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id fea0e1d6-044f-4d5b-b334-ffe3636f831e;
 Mon, 12 Apr 2021 10:53:05 +0000 (UTC)
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 1A329D6E;
 Mon, 12 Apr 2021 03:53:05 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 33BF53F694;
 Mon, 12 Apr 2021 03:53: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: fea0e1d6-044f-4d5b-b334-ffe3636f831e
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v3 3/4] xen/arm: Reserve domid 0 for Dom0
Date: Mon, 12 Apr 2021 11:52:42 +0100
Message-Id: <20210412105243.23354-4-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210412105243.23354-1-luca.fancellu@arm.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>

This patch adds a comment in create_domUs() right before
domain_create() to explain the importance of the pre-increment
operator on the variable max_init_domid, to ensure that the
domid 0 is allocated only during start_xen() function by the
create_dom0() and not on any other possible code path to the
domain_create() function.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
Changes in v3:
- removed check introduced in v2.
---
 xen/arch/arm/domain_build.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 359957dc1b..b1d7b9849f 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2508,6 +2508,11 @@ void __init create_domUs(void)
                                          GUEST_VPL011_SPI - 32 + 1);
         }
 
+        /*
+         * The variable max_init_domid is initialized with zero, so here it's
+         * very important to use the pre-increment operator to call
+         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
+         */
         d = domain_create(++max_init_domid, &d_cfg, false);
         if ( IS_ERR(d) )
             panic("Error creating domain %s\n", dt_node_name(node));
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:53:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:53:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108963.207987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuBw-0000uQ-8I; Mon, 12 Apr 2021 10:53:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108963.207987; Mon, 12 Apr 2021 10: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 1lVuBw-0000uH-4D; Mon, 12 Apr 2021 10:53:16 +0000
Received: by outflank-mailman (input) for mailman id 108963;
 Mon, 12 Apr 2021 10:53:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VKKJ=JJ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lVuBv-0000jA-LE
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 10:53:15 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 6d573b1c-907d-4ce0-8086-115865ba9ac3;
 Mon, 12 Apr 2021 10:53:07 +0000 (UTC)
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 B9C07101E;
 Mon, 12 Apr 2021 03:53:06 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4DC8C3F694;
 Mon, 12 Apr 2021 03:53:05 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6d573b1c-907d-4ce0-8086-115865ba9ac3
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v3 4/4] xen/arm: Prevent Dom0 to be loaded when using dom0less
Date: Mon, 12 Apr 2021 11:52:43 +0100
Message-Id: <20210412105243.23354-5-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210412105243.23354-1-luca.fancellu@arm.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>

This patch prevents the dom0 to be loaded skipping its
building and going forward to build domUs when the dom0
kernel is not found and at least one domU is present.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
v3 changes:
- Rephrase documentation
---
 docs/features/dom0less.pandoc |  7 +++---
 xen/arch/arm/setup.c          | 42 ++++++++++++++++++++++++++++++++---
 2 files changed, 43 insertions(+), 6 deletions(-)

diff --git a/docs/features/dom0less.pandoc b/docs/features/dom0less.pandoc
index d798596cdf..c9edb529e1 100644
--- a/docs/features/dom0less.pandoc
+++ b/docs/features/dom0less.pandoc
@@ -16,9 +16,10 @@ Multiboot specification has been extended to allow for multiple domains
 to be passed to Xen. See docs/misc/arm/device-tree/booting.txt for more
 information about the Multiboot specification and how to use it.
 
-Currently, a control domain ("dom0") is still required, but in the
-future it will become unnecessary when all domains are created
-directly from Xen. Instead of waiting for the control domain to be fully
+Currently, a control domain ("dom0") is still required to manage the DomU
+domains, but the system can start also without dom0 if the Device Tree
+doesn't specify the dom0 kernel and it declares one or more domUs.
+Instead of waiting for the control domain (when declared) to be fully
 booted and the Xen tools to become available, domains created by Xen
 this way are started right away in parallel. Hence, their boot time is
 typically much shorter.
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index b405f58996..ecc4f0ae98 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -793,6 +793,38 @@ static void __init setup_mm(void)
 }
 #endif
 
+static bool __init is_dom0less_mode(void)
+{
+    struct bootmodules *mods = &bootinfo.modules;
+    struct bootmodule *mod;
+    unsigned int i;
+    bool dom0found = false;
+    bool domUfound = false;
+
+    /* Look into the bootmodules */
+    for ( i = 0 ; i < mods->nr_mods ; i++ )
+    {
+        mod = &mods->module[i];
+        /* Find if dom0 and domU kernels are present */
+        if ( mod->kind == BOOTMOD_KERNEL )
+        {
+            if ( mod->domU == false )
+            {
+                dom0found = true;
+                break;
+            }
+            else
+                domUfound = true;
+        }
+    }
+
+    /*
+     * If there is no dom0 kernel but at least one domU, then we are in
+     * dom0less mode
+     */
+    return ( !dom0found && domUfound );
+}
+
 size_t __read_mostly dcache_line_bytes;
 
 /* C entry point for boot CPU */
@@ -803,7 +835,7 @@ void __init start_xen(unsigned long boot_phys_offset,
     int cpus, i;
     const char *cmdline;
     struct bootmodule *xen_bootmodule;
-    struct domain *dom0;
+    struct domain *dom0 = NULL;
     int rc;
 
     dcache_line_bytes = read_dcache_line_bytes();
@@ -958,7 +990,10 @@ void __init start_xen(unsigned long boot_phys_offset,
     enable_errata_workarounds();
 
     /* Create initial domain 0. */
-    dom0 = create_dom0();
+    if ( !is_dom0less_mode() )
+        dom0 = create_dom0();
+    else
+        printk(XENLOG_INFO "Xen dom0less mode detected\n");
 
     heap_init_late();
 
@@ -976,7 +1011,8 @@ void __init start_xen(unsigned long boot_phys_offset,
     if ( acpi_disabled )
         create_domUs();
 
-    domain_unpause_by_systemcontroller(dom0);
+    if ( dom0 )
+        domain_unpause_by_systemcontroller(dom0);
 
     /* Switch on to the dynamically allocated stack for the idle vcpu
      * since the static one we're running on is about to be freed. */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 10:53:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 10:53:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108971.207999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuCC-00016S-Ir; Mon, 12 Apr 2021 10:53:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108971.207999; Mon, 12 Apr 2021 10: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 1lVuCC-00016L-Fi; Mon, 12 Apr 2021 10:53:32 +0000
Received: by outflank-mailman (input) for mailman id 108971;
 Mon, 12 Apr 2021 10:53: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 1lVuCB-00015x-85; Mon, 12 Apr 2021 10:53: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 1lVuCB-000390-2P; Mon, 12 Apr 2021 10:53: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 1lVuCA-0003FF-NM; Mon, 12 Apr 2021 10:53:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVuCA-0006qx-Md; Mon, 12 Apr 2021 10:53: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=ALIyR1pmOh9UKzy2xv+5iimBAl8j5hZZ+iE2XPHYnB0=; b=D4W970BKWwVZBISJ1QG/Ei1UBn
	XrdB/LiWcmhhfg1fSQUlDNU2WUkUw+uirpAWuEElM2M3J0VYKsg+yU3/22Qwu+j/UPJQ1RmTOmBr7
	29Rv/U9LLxi/SA/CjGltWaKFZVPhyzAn8BQC13/yvTQN0KOh3F0N4r35sr4Pof+SrTQk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-160980-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 160980: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=836b36af9340c42d5a6642070d99944329e388bc
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 10:53:30 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                836b36af9340c42d5a6642070d99944329e388bc
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  235 days
Failing since        152659  2020-08-21 14:07:39 Z  233 days  436 attempts
Testing same since   160916  2021-04-10 18:26:10 Z    1 days    2 attempts

------------------------------------------------------------
475 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 141643 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:03:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:03:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.108990.208013 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuLf-0002J1-U2; Mon, 12 Apr 2021 11:03:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 108990.208013; Mon, 12 Apr 2021 11:03: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 1lVuLf-0002Iu-Qn; Mon, 12 Apr 2021 11:03:19 +0000
Received: by outflank-mailman (input) for mailman id 108990;
 Mon, 12 Apr 2021 11:03:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVuLf-0002Ip-3E
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:03:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f375b326-ce99-48b1-87e4-8578bf560c5f;
 Mon, 12 Apr 2021 11:03:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id ACD69AE20;
 Mon, 12 Apr 2021 11:03: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: f375b326-ce99-48b1-87e4-8578bf560c5f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618225396; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=SggUo5vEkMMchFi34/C1qyVNuuNBzopDvY6Ert2iC9s=;
	b=Fcn6dD9P6QQLrfbeg2hWV/mjhH7epteNGb3ffZenKKC/OcwwSD3i7CiHLI3E4joRtpXKCa
	rK759chmpFJC+fLmX5TXxE5ki2M4XA2Dr9kR+6sM94ljaf6GSbmC5UWNrpYlP38JYapnsD
	LJlkmQCKC1/4ksI/icLiI+BlipSC3aE=
Subject: Re: [PATCH v3 2/4] xen/arm: Handle cases when hardware_domain is NULL
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, Rahul Singh <rahul.singh@arm.com>,
 xen-devel@lists.xenproject.org
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-3-luca.fancellu@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b1242714-e5f3-1e6b-f1bd-e9e53326fda7@suse.com>
Date: Mon, 12 Apr 2021 13:03:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210412105243.23354-3-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 12:52, Luca Fancellu wrote:
> --- a/xen/include/xen/sched.h
> +++ b/xen/include/xen/sched.h
> @@ -1022,6 +1022,9 @@ static always_inline bool is_hardware_domain(const struct domain *d)
>      if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
>          return false;
>  
> +    if ( !d )
> +        return false;
> +
>      return evaluate_nospec(d == hardware_domain);
>  }

On v2 I did say on the respective code that was here (and my
suggestion of this alternative adjustment): "Can you point out
code paths where d may actually be NULL, and where [...] would
not behave as intended (i.e. where bad speculation would
result)?"

Since you've taken the suggestion as-is, and since the commit
message says nothing in either direction here, did you actually
verify that there's no abuse of speculation possible with this
extra return path? And did you find any caller at all which may
pass NULL into here?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:28:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:28:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109002.208032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVujv-0004HW-1T; Mon, 12 Apr 2021 11:28:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109002.208032; Mon, 12 Apr 2021 11:28:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuju-0004HP-Um; Mon, 12 Apr 2021 11:28:22 +0000
Received: by outflank-mailman (input) for mailman id 109002;
 Mon, 12 Apr 2021 11:28:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVujt-0004HK-H4
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:28:21 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e745ab1a-88dc-46c7-a6e2-7d0dd668fa18;
 Mon, 12 Apr 2021 11:28:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E9E3DAE20;
 Mon, 12 Apr 2021 11:28: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: e745ab1a-88dc-46c7-a6e2-7d0dd668fa18
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618226899; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=z2Wak3GAwTvr1Kgh13c9CtiZOA8C+//TZ+Fv9FCoSt8=;
	b=flyyaOi915O+/MYHS6dK5qCzKBzEn6B6RbbKOLy22SMmgyjqgSeqN3+UkqdjfwjGy7MEqn
	YXRaba5+E8wuHLkNO4kigYiP2/Q6qqHM8EKVBocC/233h/kHlY9zrIEKwBMb7Fm2tpez/y
	WvlgaB5DY3eT5Uw/n8QiziD+w7uQqAA=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Andrew Cooper <andrew.cooper3@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>,
 Paul Durrant <paul@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7f7383a5-a678-0dbd-cf9f-8a9239f6d391@suse.com>
Date: Mon, 12 Apr 2021 13:28:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YHQlptvoC06rqNhQ@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 12.04.2021 12:49, Roger Pau Monné wrote:
> On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
>> --- a/xen/arch/x86/msi.c
>> +++ b/xen/arch/x86/msi.c
>> @@ -1411,6 +1411,70 @@ void __init early_msi_init(void)
>>          return;
>>  }
>>  
>> +int alloc_pci_msi(struct pci_dev *pdev)
> 
> I would rather name it pci_msi_init...

Or maybe pdev_msi_init(), as pci_msi_init() looks more like a one-
time, global init function?

>> +void free_pci_msi(struct pci_dev *pdev)
> 
> ...and pci_msi_free.

The counterpart of "init" really would be "deinit", IOW I'd like to
ask for either alloc/free or init/deinit.

>> +{
>> +    xfree(pdev->msix);

Could this maybe become XFREE() at this occasion?

>> +int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev)
> 
> This kind of a confusing name - what about pci_msix_assign?
> 
>> +{
>> +    int rc;
>> +
>> +    if ( pdev->msix )

Wouldn't this check better live in the sole caller?


>> +void dump_pci_msi(struct pci_dev *pdev)

pdev_dump_msi() or some such?

Also - const here and ...

>> +{
>> +    struct msi_desc *msi;

... here please, while you already move this code.

>> +    list_for_each_entry ( msi, &pdev->msi_list, list )
>> +        printk("%d ", msi->irq);
>> +}
> 
> I wonder, those those function really want to be in a x86 specific
> file? There's nothing x86 specific about them AFAICT.
> 
> Would it make sense to create a separate msi-intercept.c file with
> those that gets included when CONFIG_PCI_MSI_INTERCEPT?

+1

>> @@ -1303,12 +1279,15 @@ static int __init setup_dump_pcidevs(void)
>>  }
>>  __initcall(setup_dump_pcidevs);
>>  
>> +
>> +#ifdef CONFIG_PCI_MSI_INTERCEPT

No double blank lines please.

>>  int iommu_update_ire_from_msi(
>>      struct msi_desc *msi_desc, struct msi_msg *msg)
>>  {
>>      return iommu_intremap
>>             ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>>  }
>> +#endif
> 
> This is not exactly related to MSI intercepts, the IOMMU interrupt
> remapping table will also be used for interrupt entries for devices
> being used by Xen directly, where no intercept is required.
> 
> And then you also want to gate the hook from iommu_ops itself with
> CONFIG_PCI_MSI_INTERCEPT, if we want to got this route.

I think the two aspects of MSI should be kept separate.

>> --- a/xen/drivers/pci/Kconfig
>> +++ b/xen/drivers/pci/Kconfig
>> @@ -1,3 +1,7 @@
>>  
>>  config HAS_PCI
>>  	bool
>> +
>> +config PCI_MSI_INTERCEPT
>> +	def_bool y
>> +	depends on X86 && HAS_PCI

Depending on HAS_PCI is fine (albeit not strictly needed afaict),
but this shouldn't have a default (like HAS_PCI doesn't) and
instead be selected by x86.

>> --- a/xen/drivers/vpci/vpci.c
>> +++ b/xen/drivers/vpci/vpci.c
>> @@ -48,8 +48,7 @@ void vpci_remove_device(struct pci_dev *pdev)
>>          xfree(r);
>>      }
>>      spin_unlock(&pdev->vpci->lock);
>> -    xfree(pdev->vpci->msix);
>> -    xfree(pdev->vpci->msi);
>> +    free_vpci_msi(pdev);

I don't think the function needs to be passed a pdev, and ...
>>      xfree(pdev->vpci);
>>      pdev->vpci = NULL;

... it would only be consistent with this if pdev->vpci was passed
instead.

>> --- /dev/null
>> +++ b/xen/include/asm-arm/msi.h
>> @@ -0,0 +1,44 @@
>> +/*
>> + * Copyright (C) 2021 Arm Ltd.
>> + *
>> + * 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/>.
>> + */
>> +
>> +#ifndef __ASM_MSI_H_
>> +#define __ASM_MSI_H_
>> +
>> +static inline int alloc_pci_msi(struct pci_dev *pdev)
>> +{
>> +    return 0;
>> +}
>> +
>> +static inline int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev)
>> +{
>> +    return 0;
>> +}
>> +
>> +static inline void dump_pci_msi(struct pci_dev *pdev) {}
>> +static inline void free_pci_msi(struct pci_dev *pdev) {}
>> +static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
>> +
>> +#endif /* __ASM_MSI_H */
>> +
>> +/*
>> + * Local variables:
>> + * mode: C
>> + * c-file-style: "BSD"
>> + * c-basic-offset: 4
>> + * tab-width: 4
>> + * indent-tabs-mode: nil
>> + * End:
>> + */
> 
> Should you instead have a non-arch specific file with those dummy
> helpers that get used when !CONFIG_PCI_MSI_INTERCEPT?

+1

>> --- a/xen/include/asm-x86/msi.h
>> +++ b/xen/include/asm-x86/msi.h
>> @@ -252,5 +252,9 @@ void unmask_msi_irq(struct irq_desc *);
>>  void guest_mask_msi_irq(struct irq_desc *, bool mask);
>>  void ack_nonmaskable_msi_irq(struct irq_desc *);
>>  void set_msi_affinity(struct irq_desc *, const cpumask_t *);
>> +int alloc_pci_msi(struct pci_dev *pdev);
>> +void free_pci_msi(struct pci_dev *pdev);
>> +void dump_pci_msi(struct pci_dev *pdev);
>> +int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev);

These should then live in the other "half" of that header.

>> --- a/xen/include/xen/pci.h
>> +++ b/xen/include/xen/pci.h
>> @@ -79,10 +79,6 @@ struct pci_dev {
>>      struct list_head alldevs_list;
>>      struct list_head domain_list;
>>  
>> -    struct list_head msi_list;
>> -
>> -    struct arch_msix *msix;
>> -
>>      struct domain *domain;
>>  
>>      const union {
>> @@ -94,7 +90,14 @@ struct pci_dev {
>>          pci_sbdf_t sbdf;
>>      };
>>  
>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>> +    struct list_head msi_list;
>> +
>> +    struct arch_msix *msix;
>> +
>>      uint8_t msi_maxvec;
>> +#endif
>> +
>>      uint8_t phantom_stride;

Like Roger also said for struct vpci, it's not clear this is worth
it. And while you may have paid attention (and there simply is no
better arrangement) I'd also like to point out that such field
movement should be done while keeping padding hole sizes in mind.

>> @@ -174,7 +177,7 @@ int __must_check vpci_msix_arch_disable_entry(struct vpci_msix_entry *entry,
>>                                                const struct pci_dev *pdev);
>>  void vpci_msix_arch_init_entry(struct vpci_msix_entry *entry);
>>  int vpci_msix_arch_print(const struct vpci_msix *msix);
>> -
>> +int remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem);
>>  /*
>>   * Helper functions to fetch MSIX related data. They are used by both the
>>   * emulated MSIX code and the BAR handlers.

Please don't remove blank lines like this one, unless you actually
see a reason.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:33:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:33:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109007.208047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVupE-00059z-OJ; Mon, 12 Apr 2021 11:33:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109007.208047; Mon, 12 Apr 2021 11: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 1lVupE-00059s-KS; Mon, 12 Apr 2021 11:33:52 +0000
Received: by outflank-mailman (input) for mailman id 109007;
 Mon, 12 Apr 2021 11:33:51 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVupD-00059n-Jv
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:33:51 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 932780d3-1912-464c-b74e-690e0ada95cb;
 Mon, 12 Apr 2021 11:33:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F23A0B2EE;
 Mon, 12 Apr 2021 11:33: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: 932780d3-1912-464c-b74e-690e0ada95cb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618227230; 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=sQ4lVi2o4tchc7YFjCdNdXGvwL77JuReQE511bjCYZY=;
	b=obepuhsUzBTeARZ39AYZAT6nTmNuA4wXsvGB6Wn3pWlBEjHdggUHbnlMcgbeOLNtFjBYZA
	waxTI219U1b/W/vg6WPwAdBJ2SxiWAOU8vHTrzCG510D2WKqqwjs7cyF5xG5BGzaZb/F49
	5rFuB+v22Pjrbhi2tIAUXm5hpfN5gUE=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Kevin Tian <kevin.tian@intel.com>, Jun Nakajima <jun.nakajima@intel.com>,
 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/EPT: minor local variable adjustment in ept_set_entry()
Message-ID: <c682ec9a-c339-a929-1c91-c20bf53d9722@suse.com>
Date: Mon, 12 Apr 2021 13:33:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Not having direct_mmio (used only once anyway) as a local variable gets
the epte_get_entry_emt() invocation here in better sync with the other
ones. While at it also reduce ipat's scope.

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

--- a/xen/arch/x86/mm/p2m-ept.c
+++ b/xen/arch/x86/mm/p2m-ept.c
@@ -677,8 +677,6 @@ ept_set_entry(struct p2m_domain *p2m, gf
     unsigned long fn_mask = !mfn_eq(mfn, INVALID_MFN) ? (gfn | mfn_x(mfn)) : gfn;
     int ret, rc = 0;
     bool_t entry_written = 0;
-    bool_t direct_mmio = (p2mt == p2m_mmio_direct);
-    uint8_t ipat = 0;
     bool_t need_modify_vtd_table = 1;
     bool_t vtd_pte_present = 0;
     unsigned int iommu_flags = p2m_get_iommu_flags(p2mt, mfn);
@@ -790,8 +788,10 @@ ept_set_entry(struct p2m_domain *p2m, gf
 
     if ( mfn_valid(mfn) || p2m_allows_invalid_mfn(p2mt) )
     {
+        uint8_t ipat = 0;
         int emt = epte_get_entry_emt(p2m->domain, gfn, mfn,
-                                     i * EPT_TABLE_ORDER, &ipat, direct_mmio);
+                                     i * EPT_TABLE_ORDER, &ipat,
+                                     p2mt == p2m_mmio_direct);
 
         if ( emt >= 0 )
             new_entry.emt = emt;


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:34:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:34:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109010.208059 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVupz-0005Ff-1K; Mon, 12 Apr 2021 11:34:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109010.208059; Mon, 12 Apr 2021 11: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 1lVupy-0005FY-UW; Mon, 12 Apr 2021 11:34:38 +0000
Received: by outflank-mailman (input) for mailman id 109010;
 Mon, 12 Apr 2021 11:34: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 1lVupx-0005FP-7z; Mon, 12 Apr 2021 11:34: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 1lVupx-0003ql-1o; Mon, 12 Apr 2021 11:34: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 1lVupw-0004l9-Jm; Mon, 12 Apr 2021 11:34:36 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVupw-0000cb-JE; Mon, 12 Apr 2021 11:34: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=g5iQXEbhcdf1QKydEsCpsbe1/F+FbAiwl45o8/07Fa0=; b=vlKuAP9GjrZQNtdNQRr4HaTWer
	nYq7ZSeVSalJdK8OoYEMpwSN/AnTPNOCwlLD77P0MJi03grjIKyR/rcd1BUFwhMWno2AmLskNUG21
	Isa+91LKUO/PrB1tTaSxtcuwDIIuB5pxGt1HzcaNr8maqJVP4fQWzOeinsYKdLefvbEs=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161033-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161033: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=97336fdee4f9847e164639f06616ce1139ef9a15
X-Osstest-Versions-That:
    ovmf=efa7f4df0f3b9e70d49dc41b397ec8400c1ad374
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 11:34:36 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 97336fdee4f9847e164639f06616ce1139ef9a15
baseline version:
 ovmf                 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374

Last test of basis   160859  2021-04-09 10:33:55 Z    3 days
Testing same since   161033  2021-04-12 02:41:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Rebecca Cran <rebecca@nuviainc.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
   efa7f4df0f..97336fdee4  97336fdee4f9847e164639f06616ce1139ef9a15 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:37:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:37:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109017.208077 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVusn-0005Uo-I6; Mon, 12 Apr 2021 11:37:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109017.208077; Mon, 12 Apr 2021 11:37: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 1lVusn-0005Uh-FH; Mon, 12 Apr 2021 11:37:33 +0000
Received: by outflank-mailman (input) for mailman id 109017;
 Mon, 12 Apr 2021 11:37:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVusm-0005Uc-Ng
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:37:32 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0e42b1e4-8b5a-45c0-8f56-7b21072b6ecd;
 Mon, 12 Apr 2021 11:37:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 72995AF2F;
 Mon, 12 Apr 2021 11:37: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: 0e42b1e4-8b5a-45c0-8f56-7b21072b6ecd
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618227451; 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=IX6RRP5b/qgSJINcUgTWUholGX3YmFpWNVds1OMgT9c=;
	b=mEVmucfydTbhc75Bg5XqwJqQ1SFwEy1DY3Bm5/dveJBxszxo/vJXf+cCJIkHupvzDr9eRc
	jPF+/geBzXJ93VIatT+aH66Wsg2sWWWqNKkXPGVCoStJzyNcoGZsJEkOc4HYkyiRvkYWwX
	khl+r/j2cALOmIcvpcwkrudcO3L6j/0=
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/HVM: move is_s3_suspended field
Message-ID: <abc3c680-314d-85fb-8744-930fa5f7f95e@suse.com>
Date: Mon, 12 Apr 2021 13:37:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Put it next to another boolean, so they will "share" the subsequent
padding hole.

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

--- a/xen/include/asm-x86/hvm/domain.h
+++ b/xen/include/asm-x86/hvm/domain.h
@@ -113,15 +113,15 @@ struct hvm_domain {
      * mtrr/pat between vcpus is not the same, set is_in_uc_mode
      */
     spinlock_t             uc_lock;
-    bool_t                 is_in_uc_mode;
+    bool                   is_in_uc_mode;
+
+    bool                   is_s3_suspended;
 
     /* hypervisor intercepted msix table */
     struct list_head       msixtbl_list;
 
     struct viridian_domain *viridian;
 
-    bool_t                 is_s3_suspended;
-
     /*
      * TSC value that VCPUs use to calculate their tsc_offset value.
      * Used during initialization and save/restore.


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:38:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:38:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109023.208089 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuu7-0005c5-TO; Mon, 12 Apr 2021 11:38:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109023.208089; Mon, 12 Apr 2021 11:38:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuu7-0005by-QO; Mon, 12 Apr 2021 11:38:55 +0000
Received: by outflank-mailman (input) for mailman id 109023;
 Mon, 12 Apr 2021 11:38:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lFJS=JJ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lVuu6-0005br-Jt
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:38:54 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e3744c76-32b3-44c0-a9e8-61bb61cdf56a;
 Mon, 12 Apr 2021 11:38: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: e3744c76-32b3-44c0-a9e8-61bb61cdf56a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618227533;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=h7jlH8FNvx+QMQNEuYpjV+Gcu6RgAn7Ms5M0AtYEV5M=;
  b=JykylWqHKKqNURNmOnjq1rkJz8lEh58jTQcXQihUREaCZw2x4+JUCZDG
   I5fyAS8a5pw6tXHBxSYM0EyeXGhSG+f8DVUPdmyNxXWW5K/SU31D8kZ/r
   bW+gpTvBexCIe7yp7ZsWPAaIpa4bD2uUVfoZgPLA3awZv6vdT1hP932EB
   w=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: GXECQchxCo+OJR/vpzxWY17oI1tg1a4W8690EB7DIBJTAELp5sdeUL9iQrHgJXoDEGZGrt2k3C
 zIVwPYbbXLbnP7MjZX5eTr9ReztlcXb1IOquCyJJCAsG9az7D3OMzlUj099ALf9bIpOKr99NaT
 EcSWt2kgEXViEJ3AwG3QKw8T/CmzuwCvetb1c3U5qLp6QabbhnML1JyyTXNnGgJIfjxICAooQ9
 5SoqDcMoebU0wdGJqHLJ8+xYr01XAlTWcpx08bOONpNnQnKhug4nCHIA2pspP6/F5eiMA/MjPw
 674=
X-SBRS: 5.1
X-MesageID: 42849804
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fOvG6qt5nZxZ+u0tpapuUfPv7skC2YYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOj7U5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qz6Y
 5JSII7MtH5CDFB4frSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjztRICzzKDwQeCBtA50lGJ
 2Aou9OoDS9cXoaB/7LeEUtde7FutHNidbaehYAHREq802jijmv5b78HXGjr2gjehlIxqov9n
 WArhzh6syYwo2G4zL/90uW1ZRZn9P91sBObfbstuE5Iijh4zzYH7hJdKaFuFkO0ZiSwXYs1O
 LBuhIxe/l0gkmhA12dhTvI903e3C0163nkoGXo80fLhcDiXjo1B45gqOtiA2PkwnEttt19z6
 5Htljx3/E8YGKi7UaNk+TgbB1kmlG5pnAvi4co/hpieLATdaNLqsgn9F5Vea1wbx7S0pwtE+
 VlEajnlZNrWG6dBkqp2lVH/MahRTAaEBuAXyE5y7ao+gkTtnV4w0wE/dcYj3cN+bksIqM0l9
 jsA+BGkqpDQdQRar84LOAdQdGvAmiIeh7UNnmOSG6XWp0vCjbokdra8b817OaldNghy4Yzoo
 3IVBd9uXQpc0zjJMWS1PRwg1HwaVT4eQ6o5tBV5pB/tLG5bqHsKze/RFcnlNbli+kDA+XAMs
 zDeq5+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49Rhanvt/LEIv3rebWGcyjZ4bFIHIBYCfSE3
 EDVD/8KIFr9UawQEL1hxDXRjfDYUr60ZVsELXL3uQaxYQXX7c89jQ9uBCc3IWmODdCuqs5cA
 9VO7X8iJ62omGw4CLp4gxSS11gJ3cQxI+lf2JBpAcMPU+xW60Eoc+jdWdb22bCAhd+SsjRAT
 NOvlgfw9PwE7WggQQZT/63OGOTiHUe4FiQSY0Hp6GF7cD5PrQ1E4ghQ640MQnQDRR6lUJLpQ
 54GU85b36aMgmrpbSujZQSCu2aXcJ7mh2XLcldrm+ak16dq8EpTn4yRCWvTsaTvAYrS1Nv9x
 hM2p5apIDFtSekKGM5juh9GkZLcn6rDLVPCxnAWJ9ZgYnxeAZ7TX6DgBuTjx1bQBuyy2wiwk
 jaaQGEc/DCBVRQ/lRVyLzj/l9PemKBRE5ocXxhvYphFWPJh2Zr3YawF9+O+lrUTmFH7vAWMT
 nDbzdXGA9oytyt/DO+mTqJFxwdt9gTF92YKI5mX6DY23urJoHNqLoPGOVM+o15cPr0tPUQbO
 6ZcwiJDT/xBu8zwTaJrnI9NCQckgh9rdrYnDneqESo1n82BvTfZGl8T7YAOteG8izKQe2L3J
 gRt6N8gcKAdkHKLviIxqHcY2Qddlf9oWuqQ/oprp4Rl6Qor7d3F4TaVzyN9Hwv5mRJEO7E0G
 clBIJ86/T9H6UqWeo4USdQ5EAom9SCN1FDiH29PsYOOXUWy0bGNNaI6YfSobUhAke9tBL9UG
 PvhBF1zrPgZW+/zrYUBKI7HHROZGU94Hpk+vmed4e4MnTiS8hzuH67OGS6arlTVeysHqgRtA
 9z57iz7qOqXhu9/ADbpj1gJK1St06hXMOpGQqJXcpF6cazN1jJoqyk5qeI/XjKYAr+T0QTno
 tec0MMKuxFlzk5lYUylhGIdZafmDNvr3JupRd9llDs3YC64GDUWWF+WDep86l+bH10KXiHjc
 PM7O6C8m/yiQI1gqX+KA==
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="42849804"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nFdqA5d5nZMqE8Ui/eXnTH/Xwy6a8GR0jkKmL7U0JcGK+HQjm+Kinhn4W6P317m9UFmynQVfD7N65M2jp49FCTcV1KHTPWib9VUs20LkYNbmfu1nXP01jnOOasXT1dMlCcHQOujThxg5fAzZ3DEyhrApLuXFZlEueeJooWJL0xrtqr5O5IoksrS9b6Dwi0ZzlfKyMNVZ9r3X+J14NRCvIeLd/0ehgsGnJSqVTbHeCXAL1hC2iRbP88dzFUj505N4S9Z7auQXrKzX6x7p7GN78w6ll4sD975Nd78alJWSdlz3hBqGK02+gX01t0UubbRtEN7dMbPCZon9PE0NQvaSpg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=h7jlH8FNvx+QMQNEuYpjV+Gcu6RgAn7Ms5M0AtYEV5M=;
 b=ihDwYqCN+1c3AkkOY+fMKMhfwZCiSp2fU8aB1zUA4mzzu0xcrsvWFK47yfVxiyRhExPdWwKzzBrKqOlhpl/3QhcL9fNinTy19kJ7HEHH5Pr3nvFaX+LXO6PRwKXlL7mAgwRGKfdcDmXaQwVit3J0bnA1iUFkqM1zJuR+QIwUsoXH1l7dCHONSVfkNCad5Hu7f7a3hHJmbpMEUsemRMN+nR4OjzDMMs05g56K4blfkm7R1uAAJJ4xGoTKz7cYwW5E0092GiWp5L3Q1i8Mi8mp/J0lz5bj93/jmqeYO3FtdvsYlqBwIbqgVOQre3Qv1FViYDIYkb/dYloxVvtR/dddnQ==
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=h7jlH8FNvx+QMQNEuYpjV+Gcu6RgAn7Ms5M0AtYEV5M=;
 b=vFoVXFG+5+h+4R3tmVWf5mUO72xh9zZmxqjG64GhTpWYmR9Q5MBMW22BeJd2CqUnYQRFSam0TA9MM43z1nc/TOrlEXWAXyW1fj8An259ymNI5R3ym7elJ+3w0bnqiT048OYwnr3MeusOPlEOzdN2Z/Y0MrOu7EoLi/QoQvRgTh0=
Subject: Re: [PATCH] x86/HVM: move is_s3_suspended field
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: <abc3c680-314d-85fb-8744-930fa5f7f95e@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <91075ceb-d63c-63a5-8523-33df3c51e1f9@citrix.com>
Date: Mon, 12 Apr 2021 12:38:39 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <abc3c680-314d-85fb-8744-930fa5f7f95e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0014.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:a6::26) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f5a15dc7-ecca-419c-14f2-08d8fda787e6
X-MS-TrafficTypeDiagnostic: BYAPR03MB3432:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3432831CEB4FF58779F54768BA709@BYAPR03MB3432.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:962;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: kltdJ437M07JEaMXau6/sm4qi4CLAeo0W9Ck4ZfiDRbSquvQPyKFI6N1MvhQQKv3HPyocj4boOEMpIf4L3aBhvrpez5N2nqAMXprj7BjKLAe3IMFQRsx1+6+E/kq52n7Xz046zjnBjbEmyjkwyZ1MTKDElA849eAcWtHSZY8rSs9O4jiAnmdObkCA151Icos8UXI1ODQrj7p5+93HbZ+jIpQV3Opov1twtGNlYhN/brozVf4dSW28zO5ypGk5QyBmdPa147+JDVjY75r66xbReDuQh3GpmuRrAPHWk4cit0J2XUuNIbLNExZxtTdHU8kLP7Utt7XjDXbCcgLtRVQPlN3xpo7TE/4CwwBQ2xmO4iLnU7STbzHo2sU7vo9m1BgW3y00MJq76JjYPW1Jg5hqJjeXraEmbWrZL/CIs4NvDCG7FALnz+yNbC/RBd9aGJdBuqai5umwQzaO59D3jXoHwk4iGavtIS6PWp2r1dnj1VeqeD3yfP/xG4L2vpU8TArrru/kNBOir8Rp8unXvSO40PrTKGgqwvmoxY4eLZEpmzn49gOjnPKJT0koSVvb0hn6ejaLnpTEHs2ooSrTGsURgovWuG29zhudOkwAH1oTbg/LI6juSqIfKrODjL1Yd0YnjiGjbCYt1yDw8TVcE1KfvfoiJGypoeVF3tnonU41SavWLVNUUWpylfKLEDHB/0U
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(376002)(366004)(39860400002)(346002)(956004)(66946007)(36756003)(6666004)(26005)(186003)(31686004)(6486002)(16526019)(2616005)(66556008)(2906002)(54906003)(16576012)(4326008)(8676002)(5660300002)(31696002)(8936002)(478600001)(38100700002)(86362001)(53546011)(107886003)(316002)(66476007)(558084003)(110136005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?XFE05d9pTICFdDz/TmHfUpmyuT/mMpXCq8SfCKq?=
X-MS-Exchange-CrossTenant-Network-Message-Id: f5a15dc7-ecca-419c-14f2-08d8fda787e6
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 11:38:45.5802
 (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: 9TQTOV0EpsVM8JmJ3jC+NoqkxTLGRIpFfab3ZHSw+22QY0ij+2QKbHEbOcnZjlIZgJzdUgXQiGdO5VmeoTv2J9SOoL/h2cYD7p3X1pF+/wo=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3432
X-OriginatorOrg: citrix.com

On 12/04/2021 12:37, Jan Beulich wrote:
> Put it next to another boolean, so they will "share" the subsequent
> padding hole.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:39:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:39:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109028.208101 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuum-0005ij-AE; Mon, 12 Apr 2021 11:39:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109028.208101; Mon, 12 Apr 2021 11: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 1lVuum-0005ic-75; Mon, 12 Apr 2021 11:39:36 +0000
Received: by outflank-mailman (input) for mailman id 109028;
 Mon, 12 Apr 2021 11:39:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lFJS=JJ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lVuuk-0005iU-VM
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:39:34 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9f16a373-c002-439e-acd4-871a5bb67942;
 Mon, 12 Apr 2021 11:39: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: 9f16a373-c002-439e-acd4-871a5bb67942
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618227574;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=B0+0A5ZKssTSkPZHGxqG1fB+GDN3eeUg3aQ/YkOD2SM=;
  b=Csze3YUvAZQrgEecB5RmDqDgdoQ27GMuKnG/dMWE1aexX/+Jm5XOiIok
   IWThnMjCyfjQA470ICbBcnmEwcarb0qPvcjAXlAFvFhnombGJkc9Qdeeb
   JEIr+FUFvaNfjoa05wV0uDoaN5UWLyQc7eRyDrS6pqRdwcPRsQBpWbiYl
   0=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: TPQ1ZAybMK0iEgjwJo5wSRCE7/b3w6W7zODoz+3w7Z1pDOAymT75tV6Utq4nbv7PcpG9hausGl
 Xh/gSXZ9UhdsiURy2WxZtXFr4EfnM/9S8f8TlIS/saT8xpUdwR1GWCu9P8dY2urQEO7IRLb5r2
 /1Sd+N2rGj1ofZe2D/aFGMQJMEdEZ8a4G+qBx0fny2bztBm7Ww0yyWOwJiP1B8dY+xIe4Po0U3
 zCaQFImAzPHtAPf2FIZE3jBXTC7MTxmnC3S+zNG1kxgKE4vTC2d8v05l50HM17RNnP4sqNP0ub
 kTc=
X-SBRS: 5.1
X-MesageID: 42849838
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:IYcp+64MMhjW7bDcfQPXwWWEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbzqzOEtwWQVAGN4dHJ
 2T+sJIq1ObCAsqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+HLzGz2BACXzRThYoz6G
 StqX2F2oyPkdGejiXd2Wja8ohMlLLapOdrKcSQhqEuW03RoymyYoAJYczkgBkUp6WV5E8ugJ
 3wpX4bTr5OwlfwWk3wnhf3wQnn118Vmgzf4HuVm2Hqr8C8ZB9SMbs5uatjfhHU61UtsbhHuc
 ohtQLp1OsjMTr6kCvw/NTOXR1x/3DExUYKquIPk2dZFbIXdb45l/1uwGpuDJwCECjmgbpXdt
 VGMce03oc1TXqndXzD+kFgzNuwN05DZSuucwwpv8yY1CVuh3Zpz0cU79x3pAZwyLsND7ZD/O
 jKKaJuifVnSdIXd7t0AKM7TdKwEXGle2OCDEuiZXDcUI0XMXPErJD6pJ0z+eGRYZQNiL8/go
 7IXl90vXM7EnieR/Gm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uu9HImYRdPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFOUIp9cAXU6UqM6jEPyrisXrNNLoYJb9GzctXW3yRl
 EZWiLoGclG5ke3HlDihhz8XG7sZ1zf8Zp8HLOyxZlX9KE9cql39iQFg1Ww4c+GbRdYtLYtQU
 d4KLT71oO3zFPGuVrg3iFMAF5wH0xV6LLvXzdhvgkRKX75dr4FppG6cWBW132XGw9nQ6rtYU
 lijmUy3ZjyA42bxCgkBd7iGHmdlWEvqHWDSIpZvaGf+8H/eNcdAow9UKJ8USXHfiYF2DpCmS
 NmUkspV0XfHjThheGOl5oPHtzScNF6nUOMOs5bqXXWsG2GvsExTn4nXzqjOPTnwzoGdn5xvB
 lc4qUfiL2PlXKEMm0kmtk1N1VKdSCqGr5cNR+EY49Vg7jvXwl1QQ6x9HqnoiB2XlCv21QZh2
 TnIyHRXf3QGFJStkpV1bvQ/Epuen+QeF9xbX5GoZRwfF62yEpb4KuuXO6ewmGRYlwNzqUmPD
 bJbSA7Dyluy9q0vSTl0gqqJDED/NEDL+bdBLMsf/XvwXurMpSPjrxDNeRT5oxZONfntfIrXe
 qTdxSOFi7xD/ok1mWu1y8YERgxjENhveLj2RXj4mT94WU2BuDKJk96A54cONOR4gHfNr+1+a
 Q8qehwm+S+Mm/8MIHbjY7WaiNOMRPVryqdSfoypZVdoKI1s/9SEvDgIEz1/UAC+C97CsH+0H
 46auBcxpvqP4d0Zcwcey5D5DMS5Z+yBXpuljazO/M0eFEmsmTSMNyI6YfZsLZHODz0mCLAfX
 2ktxBH9/jLXyG/xacXJqI5L2NRclU94h1ZjZW/XryVLAWhbOdY+lWmdle7bb9GUaCAcI9g4y
 pS0pWtn+WNcTD/1x2VlTxnIrhW+2LiZc+pGgqDFapp9NO9UG78zpeC0YqWjD3tTyG8ZFldrY
 pZdVYIZsAGswIctuQMo2CPY52yhFkknVtY6SxmkVCo+rHO2hakIWh2dSvDgptXWjFPNGOvls
 qty5nB6EjA
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="42849838"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Pj+z7f3iEKeAsDH89MsAWS3L+b6RjY8bzl4BSs3AfD/4YP9f3DUrS99J/IoWwozEYN/oaokRcALN30Z4LoyX+Yk7g6C9jvvTEp72rkUtyWCBpV65gjTlM3SNdQ/ipKCdTtCNSuCi2xnmF65d7uwBhQA7Ymh9TwMqnh9sZt5KVboexCBo1sDBjUG/zP4In92KNp5OYOPVCGgUeSnsvx3hvB4CQTsIKPGy32r1OmHyNCDsCn129TozfiUZZ9hEAnexMZoKJGLjwBhypbXf5s78EMS82CYGzlHu7TmAtDFxgeSThQdZB3o+XtgPE8A8ebLA8mLyjMyrM4Zj1+KQQDRUAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=42zND1UL/NBrXW80g1QWjY9exX6BxZkRANQwSAZivOE=;
 b=UsYelwvseRLG3WQQeKXDyMS6k7C6WK1nWtuoSXw7x+DHh4NxeO5uYBQZ4QwEnatAcgymDpmsi3qXwMA5JCYR7FS56Eq0x4yDxlwbKy71H782TsMjSe7/yqq21yXMdXq2PV0iaAM2BqWkg1FlNOGuZcfV6zOHI10xkPC8UONEWtfqbgJYCRdQ35CwVPZfnyCy1yqM5DZ+lFyvdCtWVQAj2LT2FCiMv3X7W+SZc8ry6ZoPdztT81PWVWCDAxgdIgSGUiLauqxI2Cbpqs+l1zO2IFXKiucMxN49yQ0nhcnFcYB5wnuPEsvQbqYVD7YTCjtGv8mTO3DSyWQmOrb7FzAc0A==
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=42zND1UL/NBrXW80g1QWjY9exX6BxZkRANQwSAZivOE=;
 b=XndiwGwiFMovkkZVhrap7Pbr7OO7qQszcFnqsUttUU9IxYTefhTX5dPXbHlaMqEYJO3xi85fwfEAKUC6qbMg0sZCmilB4IKsCeyw+n6OeGdL3dNguZL9IPBsX5LyeoB/qBNJK0WMI/soEbm0QN00cBZccDfwtMm/6y32oPt5m/s=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210412102247.2118-1-andrew.cooper3@citrix.com>
 <fb2a13bc-29aa-d27f-16a5-2ee272a3c122@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/cpuid: Advertise no-lmsle unilaterally to hvm guests
Message-ID: <3e5c2bec-fedd-53af-0a58-d12c8fc13d90@citrix.com>
Date: Mon, 12 Apr 2021 12:39:24 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <fb2a13bc-29aa-d27f-16a5-2ee272a3c122@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0011.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:a6::23) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: fb7f3301-2324-4c12-e1bf-08d8fda7a25e
X-MS-TrafficTypeDiagnostic: BYAPR03MB3432:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3432ED14F0F72B559C8C2A6BBA709@BYAPR03MB3432.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: GAqL1WbskElR8Qpl79jq6mS+HHsiC/ou6Q9Hecg7VQiFFiCX3iOFMoPfFbkK8Tix2Bx5us6xCvbZzs+ceL46TyikLV2+3kAKGN8EHAAYs4vtPdOthP1ttyDDcLTjHqbns5hJt8GN7UGYgeIj3sCp1Mx6NGKBpbWb8JL7bsA5CiJA1AZWq/jITp3PDc4WFdVqf6/MLq9oKpffXL61m98I5xhkFYu8XBD56j5zU0MgxCk8Lp3C108bVbdGV4vBCexBLXHUoAoZm8uITT8u0ROBEyXUDpOgDXS9Clh7VRumynu2u/X4GHe2ofZ90akDAMENXgAwegedKVqOXTKwn5IWGS4AKdObf8PQBLRhCmZdmk7YITSJ1PogdAs3HUT2cvCV76CvkaR2blpUy5XU7Z2v1Kp2T6NFcpsvXcj53WM005DHEGpINzm09cC/FGVTe4MfQNklewCCyIFUWpS6vIinA9wbCrq9/I8bnkp1BBlGaSj252DQpypl/YAi2VG/fytksxAkbEioc5gYNpy894Kh4iltCnD0ag9g8HMK/EhTu4rI79P9PQTEy9ybdonUhUp3xd0CMGmhDwGorUxRMGLZtclq34iQNu4TYo3I6myC47iAYn1MHi/etRXfgSLrPoNOtoLDoRnFuibzaVITWs5hCy0rHe/d8W1iX7q6xoAgD387NZZBb28VhrzEAeD3XAG8
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(376002)(366004)(39860400002)(346002)(956004)(66946007)(36756003)(6666004)(26005)(186003)(31686004)(6486002)(16526019)(2616005)(66556008)(2906002)(54906003)(16576012)(6916009)(4326008)(8676002)(5660300002)(31696002)(8936002)(478600001)(4744005)(38100700002)(86362001)(53546011)(316002)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: fb7f3301-2324-4c12-e1bf-08d8fda7a25e
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 11:39:29.9927
 (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: bi9Vl/6GQC3iP5SgMrDwESERchS0RyTTgxvL13VmRBtu4cIytqMGe0XOiF6DyEnUZPxaeELKcT+32QRTHD8/kT9shNkh1/xFwMG5mWg6MQ0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3432
X-OriginatorOrg: citrix.com

On 12/04/2021 11:48, Jan Beulich wrote:
> On 12.04.2021 12:22, Andrew Cooper wrote:
>> --- a/xen/arch/x86/cpuid.c
>> +++ b/xen/arch/x86/cpuid.c
>> @@ -456,6 +456,12 @@ static void __init calculate_hvm_max_policy(void)
>>      __set_bit(X86_FEATURE_X2APIC, hvm_featureset);
>> =20
>>      /*
>> +     * We don't support EFER.LMSLE at all.  AMD has dropped the feature=
 from
>> +     * hardware and allocated a CPUID bit to indicate its absence.
>> +     */
>> +    __set_bit(X86_FEATURE_NO_LMSLE, hvm_featureset);
> Why only for HVM?

That was discussed.

> And shouldn't the LM: entry in the dependencies
> table be adjusted such that !LM implies this bit clear?

Probably.

~Andrew



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:41:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:41:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109032.208113 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVuwV-0006YR-MN; Mon, 12 Apr 2021 11:41:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109032.208113; Mon, 12 Apr 2021 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 1lVuwV-0006YK-J8; Mon, 12 Apr 2021 11:41:23 +0000
Received: by outflank-mailman (input) for mailman id 109032;
 Mon, 12 Apr 2021 11:41:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L7uB=JJ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lVuwT-0006YD-T6
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:41:21 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f519dfc8-d4a0-4fb9-aed7-331b4d6ed998;
 Mon, 12 Apr 2021 11:41: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: f519dfc8-d4a0-4fb9-aed7-331b4d6ed998
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618227681;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=gdric4SQ4mSdKV+aMMvntU/uOgB0zsoh+hgcxwoj8Pw=;
  b=C2boPbn5T6ytwZ32lNzOWIPRrLrghcYFDRa52TdS7V8nsXpBR04CoW+y
   4YCabseEryA+i/VUsdLeUULMs+Y8MgdGvd6nm4FK2s4l/sS9HNNbqlNc2
   RqmWh05HeyR9kmydrlWkgnCRsS4zTMUk2JuqMqWxCC+pRNIn/V3e+Apy/
   c=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: erUaP7NU2kZmuB6RdNye9NRKCQeaFh7R7pUUW6F27Zo1ji0KsVwT5BTdvg0pnPkUe+M7Rtr1jr
 vkTTH3ti+oBWJ1OgrB0CXbtoYCmhNictmQN+vgpPMdGDbZ78an43NWoIrsP5Gi6m8nlsy1mGyF
 sXmlY7xz7yh8EW/qbllbiJQD281+q3TuPB1zVHLsRRFIF0gJjCQXB5ntoz8oaoPOZthRT/I54M
 5ik/T+uafIWxSwX6MDeCgORJrw7yzSy4OVwsFuh72fLXK0D//2KMEfcwb4RAoDUI3oz+xzljJK
 47w=
X-SBRS: 5.1
X-MesageID: 41374038
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:SG3sBqgfbcdvdNglr51TJUw5zHBQX35w3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+YsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmuZ
 tIW5NVTOf9BV0St6vHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WZEIyywe3cGIzVuL5w/CZ
 aa+45rpyC4f24Wc8S8ARA+LpL+jvfMk4/rZgNDOgUu7xOAgSjtxLnxFRWZ2Rl2aUIz/Z4J92
 /Znwvlopiyqv3T8G6m60b/zbRz3OHgxNxKGdCWhqEuRAnEpw60aO1aKt+/lR8vpuXH0idOrP
 DtpFMaM913+zfteAiO0GfQ8i3B9Bpr1HP401+fhhLY0LzEbRY3EdBIi44cUjax0TtYgPhG3K
 hG332UuvNsZHuq9kSNhKm7azhQmkW5unYkm+II5kYvKbc2U7NNsZcZuHpcDZZoJlOK1KkcDO
 JsAMvAjcwmF2+yUnaxhBgK/PWcGl43HhuAX3EYvN2U3zV8jBlCvjUl7f1asXEa+J0nTZ5Yo8
 zCL6RzjblLCvQbdKRnGY46MISKI12IZD+JCXmVK1j8Dq0LUki93aLf0fEQ3qWHaZYIxJw9lN
 DoV05Zj3c7fwbLBdeV1JNG3xjRSAyGLHrQ4/Abw6I8lqz3RbLtPyHGYkspidGcr/IWBdCec+
 qvObpNasWTblfGKMJs5UnTSpNSIX4RXIk+odAgQW+DpcrNN8nDqvHbSvDOP7DgeAxUGl/XMz
 8mZnzeNc9A5kekVjvTmx7KQU7gfUT54NZeC67f0+8PyJUcF4FFvwQP4G7Jo/2jGHlniOgbbU
 F+KLTonueQvm+t51vF6G1vJ158Ay9ukfHdekIPgTVPH1L/cL4FtdnaU3tVxmG7Khh2SN6TNA
 Zeol9w6J+mNpD4/1FkN/uXdkahy1cDrnODSJkR3oeZ493+R58+BpE6HIt8CBvMDB4wvQpxsm
 9MZEslSybkZ3LToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqYGAaUT6oWcu+mh0vWDJQu1
 10/8Yk8fi9sAfqDVF6rPUzMVVKZmjSKqlBFh65aIJdna2uRBt9Vl6QhTuRiwg6f03j80l6vB
 2mEQSkPdXwRnZNsHFR1ajntHd5bH+UcU5LZndmioFlDmjdtnFv0eiEW7qr3wKqGyg/69BYFA
 uATSoZIwtoydzy7hKTlTqYPVgNx5klPIXmff4eWoCW/knoBJyDlKkAEfMRwY1sM8r2tPQXFc
 iFfRWOET/+A+Q1+gCcq3o/IhNooH08nf6A4my90EGImFoERdbCKlVvQL8WZ+yG52//XvCSzd
 FXi8k2sebYCBS5Vve2jYXsKxhNJRPYrTToE6UGqZVIsbkzs7U2NZ/BSjfM3GxG2hJ7DMqcrj
 JrfI1LpJT6fqlodIguXggc2HwDvtGGNlEqvQz7GfVWRyBns1bre/eyp4PVor8uCHCbrAT+OV
 Oj4zRQls21Kher5Po/MeYMOmxYZ0g31WR68M6Df4PWDh+2d+srxivMDlaNNJtcQrOCA7Mes1
 JT5MyJhfaec0PDqU3tlAo+BqJF6GC8R8yuRCqKBO5T6tS/fXCBmLGj7sL2rDD5T1KAGgglrL
 wAUUwbdcJYjDY+yKUxzyipU6Ty5nsfrGE220Auqnfdnq684GnaGklaMQrWxrVuNAMjTUSgvI
 Di6uiX1HP0/T5f/4LMfX0gJu1zJw==
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41374038"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IZj/tJwaEi1++O2X3V/H3CO4do5gZ4Qx2ktl0rpRqbi9XIZ2GTj4GcsQLFEDLuVcM46de5+IUmeRIZbc6CerY5BldqLin7sCHgzJTjW5f0W03q2Rntn5p+otp7bviHCEq1D01WfIgdxTpsBX/EX8NYAkfuV59L3JvNhqARa0g6n2IQrYKdtfQUOQwZEObItW8QH4swFOA2cUEZp/c8ZekJ5zoknS7CUHK52QdY3dVELyWFGTNHvHo+tjFQ5yq8iB/H68yHVNfWaHj5zRsANmkVEuYmEbmt/INTvpdMsMjb87iEZhyCWheKwIhCevALKzM/4h5QauQMcGIAqwsaR9KQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MQCvGcHVwliWN4BVaZE2w+OZGcyrze/VPI3RozXauEk=;
 b=WlDd5kGhc+H56gk7s/LMuH1AI73joG238z+cT8z785+9Ct1arcwtoh5/0a/ZvnrUFERTg8X/6bcdFaoGTOtBLR+jw2dn6XcFgHcqAk6a31pUnSu/2gc1g/igpPBft0iBJKdFL5zscYgK5PV/qO2KmlKNcKuicC9cGQrlZr/PVL3DEKhDxdIqfFVafPTvbZE0/IxIETb1EXIjv6YgoCqrdxxYmaXp6+CjNY/PLMGOpDJyvP+LVkzn/wN1ZRxBWWGnnlIYmOgLcJT4jLxPn9/O8f5R24kmAwVA81q/lnPrFJn4T7UEf2nB+Ow+VaJirby9eIm4ePUtGibuL6CR8PM0mQ==
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=MQCvGcHVwliWN4BVaZE2w+OZGcyrze/VPI3RozXauEk=;
 b=KKb7WMBrIT+YKvZOkMrTOce/mVCUtTL11vL+8WkxZrzODyeuL3dxhAo/xBJ7nQnpCkn4BjXiU6bAsdHmZDdKkdl8nbK4Tr6u4jscc7/XLODsoWAUiUFoj7O6BNzX1UtdluyT4EaWzHtIjjem/xsfOS/pcoqYiFJFrkFRnBvwEBY=
Date: Mon, 12 Apr 2021 13:41:11 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Kevin
 Tian <kevin.tian@intel.com>, Jun Nakajima <jun.nakajima@intel.com>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/EPT: minor local variable adjustment in
 ept_set_entry()
Message-ID: <YHQx14WjVOdrDXin@Air-de-Roger>
References: <c682ec9a-c339-a929-1c91-c20bf53d9722@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c682ec9a-c339-a929-1c91-c20bf53d9722@suse.com>
X-ClientProxiedBy: MR2P264CA0046.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::34)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 32e62d4c-e1b7-49a8-97e8-08d8fda7e221
X-MS-TrafficTypeDiagnostic: DM6PR03MB4761:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4761D9B06A10FF85A67085FD8F709@DM6PR03MB4761.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5797;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: DjqzfbR+qY1BY4i5/DAWOGkU4yHmvrpsaTvGtp/JlfEYwaA2ANo8PzU/FUfrEuHOFRfb0hYXi38hBeZfJ2c37rywPi97WtimAqJ+uziWyvQ0sgzSudq9cypHGuu7Yqsaje9h8nOM1MHwJRFG6nb4los+hKb1nip2CbTSYIldBvddwt6VVIeoAdXXCR3CPcvM3wpjuMJ24WkH+DDGrPb/VkFKXbPlLzSLiL1ZOrpyMJAvTYqxvdlO1Rr7h0yU4igMHwdmzrgaVpk+2H7GXjspRsFEpZUadcbd4CcRkPbwl0whka4UCrGa9G5QgqM7tLn5ENFznDI7s+gs+y7H/l52tabwkQK5PpIWXRtjrjVnlwdtbd6t3ZsD5n0aPpXYokrupF/lXySc3nfEkJYqyXEPQi2g5PbE7zR6qArHqC5fc/LuvM8sfX3W5RIKxAN84ww6xRUWq+OpY/BBY0QVVdSLUPETtLqpz1Oh4ZnQ8mrOZGqhd6yMM/bYqm9i11bqzCFoxJQwTSuBjW4XJqAzbjN/coZoSEiFflO6Pk0g3o6xJkQlii62sJxIMxPK9ATbnTa5m7UnpJzIfJSb8xqpHWGZksRucPD4e8Vg67YwY4iOEWI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(39860400002)(376002)(136003)(366004)(396003)(316002)(54906003)(33716001)(6496006)(66556008)(8676002)(66476007)(66946007)(8936002)(2906002)(9686003)(6486002)(6666004)(4744005)(4326008)(5660300002)(86362001)(85182001)(26005)(6916009)(38100700002)(478600001)(186003)(956004)(16526019);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: XZcKDt69Hne5N+TzpzPSc61BtnbGW1AZEtrjl+rv6RYcFWhbRbODAvNOqKexCYWnKYZIIaBVnpjym69CQZH0Sg0GtJphGrpY9ePUeJSk+lKhTGpAAAEOth+cCO9CchWyCpOoy0HDjbnsIrGg0Qi2eNWoFL7xwF225wJsIbhGDMRm01gxeJIAbzh1rjzY1d9AB8DAoKDQdQHbSFXzdkBbK0SvcKL7tjjkbkiUFW7k6G+YEdV2iiJP5mZmQZT+zm29W+p2nU6QPsQIQTxMD5WaNTDQQMfrLCEG3yHBnlmUMI6ke2qHPnxoVcY6c8Z2icJY+KiJe+HPgXR9nfxrCBxQbStZb112zotbpvWqS0wGThPaR57ZoLIo8AMm01mukZ+BZbWkLbfK6BDsV5mbucm/gWHFLw9v7DKNhM+FV0Y9AYIzgWDYOrUfhAozMozC0tGfwQLwAO3ThyUQIn9x7MzaD87LPFRC20AraPdF6mDpUnmkMK8cQn9Yuyjve6Vmqp1E0JhbEe5rc4o+xWUlW3f89hxRltvA4ltNvnDGIb4xWc53fnScBfNaNgYxMFddo6BShOcgdHICmEBsx0I9/U5IfRw2v6FwZad1LLVmErQFeTLtOXSfFm2wxPYXV1ZDs8edaiv4BXbq6+oCRr6+/OrCE71m0buwK0bG5t2h5QGGUgzYj0LOG3Z6pAP+aLICbklbF8Xo2iZl5Fa2P4Et0iwi9dGPrJk4F93VOr+L3dzDqjtzMf12Rsf+46sOM1HvpeCg
X-MS-Exchange-CrossTenant-Network-Message-Id: 32e62d4c-e1b7-49a8-97e8-08d8fda7e221
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 11:41:16.8895
 (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: olqLc6qPLGWq63WeTeMjOAC+StHFvxIh1yIWAicILkgx8vVLc9fjXee3C6xNZQASJpCL6oYcFL0/oIkHWEcgnQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4761
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 01:33:50PM +0200, Jan Beulich wrote:
> Not having direct_mmio (used only once anyway) as a local variable gets
> the epte_get_entry_emt() invocation here in better sync with the other
> ones. While at it also reduce ipat's scope.
> 
> 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 Apr 12 11:47:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:47:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109039.208124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVv1w-0006nc-Ax; Mon, 12 Apr 2021 11:47:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109039.208124; Mon, 12 Apr 2021 11:47:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVv1w-0006nV-7t; Mon, 12 Apr 2021 11:47:00 +0000
Received: by outflank-mailman (input) for mailman id 109039;
 Mon, 12 Apr 2021 11:46:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVv1v-0006nQ-4t
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:46:59 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id eaa62d50-df37-4042-b528-adae9f86b9f4;
 Mon, 12 Apr 2021 11:46:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8CB3BAE03;
 Mon, 12 Apr 2021 11:46:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eaa62d50-df37-4042-b528-adae9f86b9f4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618228017; 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=2sr8uJRV+XUC2EnsLouQ9m2mkuBpJ2AifP761PcY6wo=;
	b=ttUKYC1NKyVtzRQqQ0Prnyr7VQM4XxxbXEoyGRmNOE37G0raEsy/vAnqxszcr88iEWI+5W
	j9tjzUAa0G3bSI+j5oymldtqNtxX8QiedAs82nuT2eZP1ux1l7iL08PzT1lD2p0zBzYCjt
	FOQ9zbTxvxCXl5zqei0YL8OgrPWnN3E=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Tim Deegan <tim@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 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 0/2] x86/shadow: shadow_get_page_from_l1e() adjustments
Message-ID: <e410c8e6-351d-bd98-7485-eb57268dc378@suse.com>
Date: Mon, 12 Apr 2021 13:46:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The aspect of the function the second patch here changes has been
puzzling me for many years. I finally thought I ought to make an
attempt at reducing this to just a single get_page_from_l1e()
invocation. The first patch mainly helps readability (of the code
in general as well as the second patch).

Note that the first patch here takes "VMX: use a single, global APIC
access page" as a prereq; it could be re-based ahead of that one.

1: re-use variables in shadow_get_page_from_l1e()
2: streamline shadow_get_page_from_l1e()

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:48:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:48:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109042.208137 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVv3C-0006vf-Lk; Mon, 12 Apr 2021 11:48:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109042.208137; Mon, 12 Apr 2021 11: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 1lVv3C-0006vY-Iq; Mon, 12 Apr 2021 11:48:18 +0000
Received: by outflank-mailman (input) for mailman id 109042;
 Mon, 12 Apr 2021 11:48:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVv3B-0006vS-EJ
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:48:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 20c674ae-4072-4863-a91a-f87ee2a263eb;
 Mon, 12 Apr 2021 11:48:16 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id EB506AC6A;
 Mon, 12 Apr 2021 11:48: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: 20c674ae-4072-4863-a91a-f87ee2a263eb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618228096; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=efXFBmOcOFrcWbNhfJK8dazr1JEkvwc/LrJUCkX1xVY=;
	b=QMnerBIMAOm5HtjfFstMrAbuygTmvJ7GjjlpMYjnUGlPmkK0WCrvHvvjU+kgSGaF1cBDrm
	Z0+TncfxuWhuiW7s7dR3UB8Z2joRR4tLi8sfhz8LZ090L4AxvGEupWV5gWpeKuJ8m0xJGd
	7wwNJNevnYpIaf+ydeYd1nDI3+woD60=
Subject: [PATCH 1/2] x86/shadow: re-use variables in
 shadow_get_page_from_l1e()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Tim Deegan <tim@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e410c8e6-351d-bd98-7485-eb57268dc378@suse.com>
Message-ID: <cc6cdf83-295d-19a2-99d6-163e69f0d67f@suse.com>
Date: Mon, 12 Apr 2021 13:48:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <e410c8e6-351d-bd98-7485-eb57268dc378@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There's little point in doing multiple mfn_to_page() or page_get_owner()
on all the same MFN. Calculate them once at the start of the function.

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

--- a/xen/arch/x86/mm/shadow/set.c
+++ b/xen/arch/x86/mm/shadow/set.c
@@ -89,25 +89,27 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
 {
     int res;
     mfn_t mfn;
-    struct domain *owner;
+    const struct page_info *pg = NULL;
+    struct domain *owner = NULL;
 
     ASSERT(!sh_l1e_is_magic(sl1e));
     ASSERT(shadow_mode_refcounts(d));
 
+    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
+    {
+        pg = mfn_to_page(mfn);
+        owner = page_get_owner(pg);
+    }
+
     /*
      * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
      * get accessed, and hence there's no need to refcount it (and refcounting
      * would fail, due to the page having no owner).
      */
-    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
+    if ( pg && !owner && (pg->count_info & PGC_extra) )
     {
-        const struct page_info *pg = mfn_to_page(mfn);
-
-        if ( !page_get_owner(pg) && (pg->count_info & PGC_extra) )
-        {
-            ASSERT(type == p2m_mmio_direct);
-            return 0;
-        }
+        ASSERT(type == p2m_mmio_direct);
+        return 0;
     }
 
     res = get_page_from_l1e(sl1e, d, d);
@@ -118,9 +120,7 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
      */
     if ( unlikely(res < 0) &&
          !shadow_mode_translate(d) &&
-         mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) &&
-         (owner = page_get_owner(mfn_to_page(mfn))) &&
-         (d != owner) )
+         owner && (d != owner) )
     {
         res = xsm_priv_mapping(XSM_TARGET, d, owner);
         if ( !res )
@@ -143,9 +143,8 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
          * already have checked that we're supposed to have access, so
          * we can just grab a reference directly.
          */
-        mfn = shadow_l1e_get_mfn(sl1e);
-        if ( mfn_valid(mfn) )
-            res = get_page_from_l1e(sl1e, d, page_get_owner(mfn_to_page(mfn)));
+        if ( owner )
+            res = get_page_from_l1e(sl1e, d, owner);
     }
 
     if ( unlikely(res < 0) )



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:48:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:48:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109045.208149 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVv3c-000719-Uz; Mon, 12 Apr 2021 11:48:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109045.208149; Mon, 12 Apr 2021 11:48: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 1lVv3c-000712-Rd; Mon, 12 Apr 2021 11:48:44 +0000
Received: by outflank-mailman (input) for mailman id 109045;
 Mon, 12 Apr 2021 11:48:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVv3c-00070x-0P
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:48:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7067a87d-1c18-4f39-bd06-61a4f903cf66;
 Mon, 12 Apr 2021 11:48:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 65893AC6A;
 Mon, 12 Apr 2021 11:48: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: 7067a87d-1c18-4f39-bd06-61a4f903cf66
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618228122; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=oLMMZLurdOShZGSmBBd6sEABJTI2Dapn7waZkVo+PAY=;
	b=RtE7xqYkwbsucNJMDikWbvY3iJYQKDO+UnIK6ZBM7RCxRc3FyRCdpCPHjEW8rrev/Xhelh
	o/khsavjVXHBjsnvCXhzZzc2CffEiOM4ValhuRlT3M9kKsMTW0Wu8DMjEU8bL7+u5NvCUI
	xtwnihfDlzkJ7WP2Qw2r6Q9KNQBd2gg=
Subject: [PATCH 2/2] x86/shadow: streamline shadow_get_page_from_l1e()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Tim Deegan <tim@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e410c8e6-351d-bd98-7485-eb57268dc378@suse.com>
Message-ID: <5473f1b2-eae7-aa57-d910-b33b5678ec06@suse.com>
Date: Mon, 12 Apr 2021 13:48:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <e410c8e6-351d-bd98-7485-eb57268dc378@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Trying get_page_from_l1e() up to three times isn't helpful; in debug
builds it may lead to log messages mking things look as if there was a
problem somewhere. And there's no need to have more than one try: The
function can only possibly succeed for one domain passed as 3rd
argument (unless the page is an MMIO one to which both have access,
but MMIO pages should be "got" by specifying the requesting domain
anyway). Re-arrange things so just the one call gets made which has a
chance of succeeding.

The code could in principle be arranged such that there's only a single
call to get_page_from_l1e(), but the conditional would become pretty
complex then and hence hard to follow / understand / adjust.

The redundant (with shadow_mode_refcounts()) shadow_mode_translate()
gets dropped.

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

--- a/xen/arch/x86/mm/shadow/set.c
+++ b/xen/arch/x86/mm/shadow/set.c
@@ -112,40 +112,36 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
         return 0;
     }
 
-    res = get_page_from_l1e(sl1e, d, d);
+    if ( owner == dom_io )
+        owner = NULL;
 
     /*
      * If a privileged domain is attempting to install a map of a page it does
      * not own, we let it succeed anyway.
      */
-    if ( unlikely(res < 0) &&
-         !shadow_mode_translate(d) &&
-         owner && (d != owner) )
+    if ( owner && (d != owner) &&
+         !(res = xsm_priv_mapping(XSM_TARGET, d, owner)) )
     {
-        res = xsm_priv_mapping(XSM_TARGET, d, owner);
-        if ( !res )
-        {
-            res = get_page_from_l1e(sl1e, d, owner);
-            SHADOW_PRINTK("privileged %pd installs map of mfn %"PRI_mfn" owned by %pd: %s\n",
-                           d, mfn_x(mfn), owner,
-                           res >= 0 ? "success" : "failed");
-        }
+        res = get_page_from_l1e(sl1e, d, owner);
+        SHADOW_PRINTK("privileged %pd installs map of %pd's mfn %"PRI_mfn": %s\n",
+                      d, owner, mfn_x(mfn),
+                      res >= 0 ? "success" : "failed");
     }
-
     /* Okay, it might still be a grant mapping PTE.  Try it. */
-    if ( unlikely(res < 0) &&
-         (type == p2m_grant_map_rw ||
-          (type == p2m_grant_map_ro &&
-           !(shadow_l1e_get_flags(sl1e) & _PAGE_RW))) )
+    else if ( owner &&
+              (type == p2m_grant_map_rw ||
+               (type == p2m_grant_map_ro &&
+                !(shadow_l1e_get_flags(sl1e) & _PAGE_RW))) )
     {
         /*
          * It's a grant mapping.  The grant table implementation will
          * already have checked that we're supposed to have access, so
          * we can just grab a reference directly.
          */
-        if ( owner )
-            res = get_page_from_l1e(sl1e, d, owner);
+        res = get_page_from_l1e(sl1e, d, owner);
     }
+    else
+        res = get_page_from_l1e(sl1e, d, d);
 
     if ( unlikely(res < 0) )
     {



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 11:52:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 11:52:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109053.208160 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVv7E-0007ve-L8; Mon, 12 Apr 2021 11:52:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109053.208160; Mon, 12 Apr 2021 11: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 1lVv7E-0007vX-I6; Mon, 12 Apr 2021 11:52:28 +0000
Received: by outflank-mailman (input) for mailman id 109053;
 Mon, 12 Apr 2021 11:52:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVv7C-0007vS-K0
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 11:52:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0a872461-b59b-4b59-a077-713e4c81c5b7;
 Mon, 12 Apr 2021 11:52:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id ECBB8AC6A;
 Mon, 12 Apr 2021 11: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: 0a872461-b59b-4b59-a077-713e4c81c5b7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618228345; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ifDNT0eAD7rF4ErmEGakt6IZ8lMeFKsZ4meMzIqQ0H8=;
	b=natahE9E654Lk7iLMvuXy5RMcazWg3tddbRD+N9vxihuvrPl7Fik8GyaOAzRAeaHTa4ozo
	zBT1GEYlXqoIw701YYfgtDtdULkzn63d3+OqqgXEQES274CmH2TKct3z0JPA+vigIweKmI
	5xMcMfWpLmJlB/1DtREUluYr0AbAJuI=
Subject: Re: [PATCH] x86/cpuid: Advertise no-lmsle unilaterally to hvm guests
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210412102247.2118-1-andrew.cooper3@citrix.com>
 <fb2a13bc-29aa-d27f-16a5-2ee272a3c122@suse.com>
 <3e5c2bec-fedd-53af-0a58-d12c8fc13d90@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ece94580-2edf-3103-62d4-53a7a4475651@suse.com>
Date: Mon, 12 Apr 2021 13:52:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3e5c2bec-fedd-53af-0a58-d12c8fc13d90@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 13:39, Andrew Cooper wrote:
> On 12/04/2021 11:48, Jan Beulich wrote:
>> On 12.04.2021 12:22, Andrew Cooper wrote:
>>> --- a/xen/arch/x86/cpuid.c
>>> +++ b/xen/arch/x86/cpuid.c
>>> @@ -456,6 +456,12 @@ static void __init calculate_hvm_max_policy(void)
>>>      __set_bit(X86_FEATURE_X2APIC, hvm_featureset);
>>>  
>>>      /*
>>> +     * We don't support EFER.LMSLE at all.  AMD has dropped the feature from
>>> +     * hardware and allocated a CPUID bit to indicate its absence.
>>> +     */
>>> +    __set_bit(X86_FEATURE_NO_LMSLE, hvm_featureset);
>> Why only for HVM?
> 
> That was discussed.

Oh, in a post-commit-message remark which I did manage to skip over.
Would you mind making this part of the commit message?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:30:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:30:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109091.208191 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwdp-0008Ty-TB; Mon, 12 Apr 2021 13:30:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109091.208191; Mon, 12 Apr 2021 13:30:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwdp-0008Tr-PS; Mon, 12 Apr 2021 13:30:13 +0000
Received: by outflank-mailman (input) for mailman id 109091;
 Mon, 12 Apr 2021 13:30:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OvXO=JJ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lVwdo-0008Ti-K4
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:30:12 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 27ee8b5d-b582-442c-b466-945de4eadc47;
 Mon, 12 Apr 2021 13:30: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: 27ee8b5d-b582-442c-b466-945de4eadc47
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618234211;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=4G0liXTRoDoxxIpwz1j4AW2gX9FwMKi9LjHo2rv5814=;
  b=GjvIbaKj1nJHGZIrrRt6ENx5DQ1kJDQnk89Ul5a0cPFGnWmleOpZdlrz
   0IJyC3tRy31fm3ijItg/K+fACOBwxb2RMbZNcxgER5y1C6Z4zu5gi2PGT
   gj8v0l8jcY0kE+UiscTmC/HwYwvwP09K7dw/yHzSbCsHw+0AgVD1iWbgO
   4=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 2F3sBJWOu/g2rgQckHxWIr4DiDKUxjDWwXZQZ/oS7/dorTqiH1kfmf72VPIe1lzKCePoH1YyAh
 qG9nCqSXOTBDBWwyR1yytlnZRU2rfU2UyvOsF/1yjWpFHGDU9I1pcliEdkzSsaD9iplAcPxsYR
 HTvwaKUWi1F1y7CVh79nXY/d5c0dWC7ugQ9ligUov1+JC4XwrWrxvVZgHYuqhOZprvLJdL0ZOM
 +nsIaEdbn6YPNRNMoU9u89+a/IO1Geh353YV4Ow7aI5AM3IlSRrPtMCvZ/LS7wWJ9/v9Vyjtkq
 Xeg=
X-SBRS: 4.0
X-MesageID: 41522596
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:YvfPLa5MyhXGyDZlUgPXwEvXdLJzesId70hD6mlaY3VuHfCwvc
 aogfgdyFvIkz4XQn4tgpStP6OHTHPa+/dOkO4sFJ2lWxTrv3btEZF64eLZskTdMgD36+I178
 ZdWodkDtmYNzVHpOb8pDK1CtMxhOSAmZrY59v261dIYUVUZ7p77wF/YzzrdnFeYAVdH5I2GN
 69y6N8xwaIQngcYsSlCnRtZYGqzLf2vanrbhIcCxks5BPmt0LM1JfAHwWFxRBbajtTwN4ZgA
 74ujbk7aauuezT8HHh/lLUhq47pPLRjv9KBMmBkaEuW1bRtjo=
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41522596"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <devel@edk2.groups.io>
CC: Laszlo Ersek <lersek@redhat.com>, Jordan Justen
	<jordan.l.justen@intel.com>, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Julien Grall <julien@xen.org>
Subject: [PATCH v3 3/7] OvmfPkg/IndustryStandard/Xen: Apply EDK2 coding style to XEN_VCPU_TIME_INFO
Date: Mon, 12 Apr 2021 14:29:59 +0100
Message-ID: <20210412133003.146438-4-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210412133003.146438-1-anthony.perard@citrix.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: text/plain

V2UgYXJlIGdvaW5nIHRvIHVzZSBuZXcgZmllbGRzIGZyb20gdGhlIFhlbiBoZWFkZXJzLiBBcHBs
eSB0aGUgRURLMgpjb2Rpbmcgc3R5bGUgc28gdGhhdCB0aGUgY29kZSB0aGF0IGlzIGdvaW5nIHRv
IHVzZSBpdCBkb2Vzbid0IGxvb2sgb3V0Cm9mIHBsYWNlLgoKUmVmOiBodHRwczovL2J1Z3ppbGxh
LnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTI0OTAKU2lnbmVkLW9mZi1ieTogQW50aG9u
eSBQRVJBUkQgPGFudGhvbnkucGVyYXJkQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBMYXN6bG8g
RXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPgotLS0KCk5vdGVzOgogICAgdjI6CiAgICAtIGZpeCBj
YXNlIG9mIFRzYyogZmllbGQKCiBPdm1mUGtnL0luY2x1ZGUvSW5kdXN0cnlTdGFuZGFyZC9YZW4v
eGVuLmggfCAxNyArKysrKysrKystLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9u
cygrKSwgOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Pdm1mUGtnL0luY2x1ZGUvSW5kdXN0
cnlTdGFuZGFyZC9YZW4veGVuLmggYi9Pdm1mUGtnL0luY2x1ZGUvSW5kdXN0cnlTdGFuZGFyZC9Y
ZW4veGVuLmgKaW5kZXggZTU1ZDkzMjYzMjg1Li43OWE0ZTIxMmU3YzIgMTAwNjQ0Ci0tLSBhL092
bWZQa2cvSW5jbHVkZS9JbmR1c3RyeVN0YW5kYXJkL1hlbi94ZW4uaAorKysgYi9Pdm1mUGtnL0lu
Y2x1ZGUvSW5kdXN0cnlTdGFuZGFyZC9YZW4veGVuLmgKQEAgLTE4MywxMCArMTgzLDEwIEBAIHN0
cnVjdCB2Y3B1X3RpbWVfaW5mbyB7CiAgICAgICogVGhlIGNvcnJlY3Qgd2F5IHRvIGludGVyYWN0
IHdpdGggdGhlIHZlcnNpb24gbnVtYmVyIGlzIHNpbWlsYXIgdG8NCiAgICAgICogTGludXgncyBz
ZXFsb2NrOiBzZWUgdGhlIGltcGxlbWVudGF0aW9ucyBvZiByZWFkX3NlcWJlZ2luL3JlYWRfc2Vx
cmV0cnkuDQogICAgICAqLw0KLSAgICBVSU5UMzIgdmVyc2lvbjsNCisgICAgVUlOVDMyIFZlcnNp
b247DQogICAgIFVJTlQzMiBwYWQwOw0KLSAgICBVSU5UNjQgdHNjX3RpbWVzdGFtcDsgICAvKiBU
U0MgYXQgbGFzdCB1cGRhdGUgb2YgdGltZSB2YWxzLiAgKi8NCi0gICAgVUlOVDY0IHN5c3RlbV90
aW1lOyAgICAgLyogVGltZSwgaW4gbmFub3NlY3MsIHNpbmNlIGJvb3QuICAgICovDQorICAgIFVJ
TlQ2NCBUc2NUaW1lc3RhbXA7ICAgLyogVFNDIGF0IGxhc3QgdXBkYXRlIG9mIHRpbWUgdmFscy4g
ICovDQorICAgIFVJTlQ2NCBTeXN0ZW1UaW1lOyAgICAgLyogVGltZSwgaW4gbmFub3NlY3MsIHNp
bmNlIGJvb3QuICAgICovDQogICAgIC8qDQogICAgICAqIEN1cnJlbnQgc3lzdGVtIHRpbWU6DQog
ICAgICAqICAgc3lzdGVtX3RpbWUgKw0KQEAgLTE5NCwxMSArMTk0LDExIEBAIHN0cnVjdCB2Y3B1
X3RpbWVfaW5mbyB7CiAgICAgICogQ1BVIGZyZXF1ZW5jeSAoSHopOg0KICAgICAgKiAgICgoMTBe
OSA8PCAzMikgLyB0c2NfdG9fc3lzdGVtX211bCkgPj4gdHNjX3NoaWZ0DQogICAgICAqLw0KLSAg
ICBVSU5UMzIgdHNjX3RvX3N5c3RlbV9tdWw7DQotICAgIElOVDggICB0c2Nfc2hpZnQ7DQorICAg
IFVJTlQzMiBUc2NUb1N5c3RlbU11bHRpcGxpZXI7DQorICAgIElOVDggICBUc2NTaGlmdDsNCiAg
ICAgSU5UOCAgIHBhZDFbM107DQogfTsgLyogMzIgYnl0ZXMgKi8NCi10eXBlZGVmIHN0cnVjdCB2
Y3B1X3RpbWVfaW5mbyB2Y3B1X3RpbWVfaW5mb190Ow0KK3R5cGVkZWYgc3RydWN0IHZjcHVfdGlt
ZV9pbmZvIFhFTl9WQ1BVX1RJTUVfSU5GTzsNCiANCiBzdHJ1Y3QgdmNwdV9pbmZvIHsNCiAgICAg
LyoNCkBAIC0yMzQsNyArMjM0LDcgQEAgc3RydWN0IHZjcHVfaW5mbyB7CiAjZW5kaWYgLyogWEVO
X0hBVkVfUFZfVVBDQUxMX01BU0sgKi8NCiAgICAgeGVuX3Vsb25nX3QgZXZ0Y2huX3BlbmRpbmdf
c2VsOw0KICAgICBzdHJ1Y3QgYXJjaF92Y3B1X2luZm8gYXJjaDsNCi0gICAgc3RydWN0IHZjcHVf
dGltZV9pbmZvIHRpbWU7DQorICAgIHN0cnVjdCB2Y3B1X3RpbWVfaW5mbyBUaW1lOw0KIH07IC8q
IDY0IGJ5dGVzICh4ODYpICovDQogI2lmbmRlZiBfX1hFTl9fDQogdHlwZWRlZiBzdHJ1Y3QgdmNw
dV9pbmZvIHZjcHVfaW5mb190Ow0KQEAgLTI1MCw3ICsyNTAsNyBAQCB0eXBlZGVmIHN0cnVjdCB2
Y3B1X2luZm8gdmNwdV9pbmZvX3Q7CiAgKiBvZiB0aGlzIHN0cnVjdHVyZSByZW1haW5pbmcgY29u
c3RhbnQuDQogICovDQogc3RydWN0IHNoYXJlZF9pbmZvIHsNCi0gICAgc3RydWN0IHZjcHVfaW5m
byB2Y3B1X2luZm9bWEVOX0xFR0FDWV9NQVhfVkNQVVNdOw0KKyAgICBzdHJ1Y3QgdmNwdV9pbmZv
IFZjcHVJbmZvW1hFTl9MRUdBQ1lfTUFYX1ZDUFVTXTsNCiANCiAgICAgLyoNCiAgICAgICogQSBk
b21haW4gY2FuIGNyZWF0ZSAiZXZlbnQgY2hhbm5lbHMiIG9uIHdoaWNoIGl0IGNhbiBzZW5kIGFu
ZCByZWNlaXZlDQpAQCAtMjk5LDYgKzI5OSw3IEBAIHN0cnVjdCBzaGFyZWRfaW5mbyB7CiB9Ow0K
ICNpZm5kZWYgX19YRU5fXw0KIHR5cGVkZWYgc3RydWN0IHNoYXJlZF9pbmZvIHNoYXJlZF9pbmZv
X3Q7DQordHlwZWRlZiBzdHJ1Y3Qgc2hhcmVkX2luZm8gWEVOX1NIQVJFRF9JTkZPOw0KICNlbmRp
Zg0KIA0KIC8qIFR1cm4gYSBwbGFpbiBudW1iZXIgaW50byBhIEMgVUlOVE4gY29uc3RhbnQuICov
DQotLSAKQW50aG9ueSBQRVJBUkQKCg==


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:30:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:30:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109090.208179 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwdm-0008Sv-K2; Mon, 12 Apr 2021 13:30:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109090.208179; Mon, 12 Apr 2021 13: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 1lVwdm-0008So-Gf; Mon, 12 Apr 2021 13:30:10 +0000
Received: by outflank-mailman (input) for mailman id 109090;
 Mon, 12 Apr 2021 13:30:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OvXO=JJ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lVwdl-0008Sj-Pv
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:30:09 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 07fc2fe3-f9ad-4395-8bb5-1e20967ca581;
 Mon, 12 Apr 2021 13:30: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: 07fc2fe3-f9ad-4395-8bb5-1e20967ca581
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618234208;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=SEhjqU5Fjs4qWLmiy+foXvDMNT/NhTSiDpRYi7ybHoQ=;
  b=TrXN0cpcPpNRnFpWjBqQadncQ/basvSQe/VJtx2j7U8RLrMWko/0vKMf
   72Eg7GvlkAc1z6Lkxz2dyouxKj8M0Y0BiD2dmTbrU/cBGPBxVjwjihUx8
   4U9Uby4qhJAURqN73FPAyxuQnU/+NCW+Cr+EStmIUGZt8fuHzWVkpevqG
   E=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: J9wtclQeZNsFoPL8LnC9yUg/SiCbWXdfGqT0dR75vVERw3Aot+DbaiA/4mwF2f3y27u7UsSaEh
 PsMyMlxlUxjyfmcSCwICLNYWZwf6h+6ElRAZAMWbCLnR02ZCuHhQOugOGJGLcN3H/nmEz9AuL0
 N5jU8AUQpbZI9K3kxmrhiok7yvaHXZDx/nUrVgoT50xMXyJCyJs1diKhrllCi5ZuInH7Ina35P
 6b3uG78qYgtoshMCw0q/lhUHrYK7hX0s917sy/X47efrs4PJuqpzZOHMBhnpnk+8noMkPBQW/V
 oZ0=
X-SBRS: 4.0
X-MesageID: 41232825
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23: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
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41232825"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <devel@edk2.groups.io>
CC: Laszlo Ersek <lersek@redhat.com>, Jordan Justen
	<jordan.l.justen@intel.com>, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Julien Grall <julien@xen.org>
Subject: [PATCH v3 0/7] OvmfXen: Set PcdFSBClock at runtime
Date: Mon, 12 Apr 2021 14:29:56 +0100
Message-ID: <20210412133003.146438-1-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: text/plain

UGF0Y2ggc2VyaWVzIGF2YWlsYWJsZSBpbiB0aGlzIGdpdCBicmFuY2g6CmdpdDovL3hlbmJpdHMu
eGVuLm9yZy9wZW9wbGUvYXBlcmFyZC9vdm1mLmdpdCBici5hcGljLXRpbWVyLWZyZXEtdjMKCkNo
YW5nZXMgaW4gdjM6Ci0gdHlwb3MgYW5kIGNvZHlpbmcgc3R5bGUKCkNoYW5nZXMgaW4gdjI6Ci0g
bWFpbiBjaGFuZ2UgaXMgdG8gYWxsb3cgbWFwcGluZyBvZiBYZW4gcGFnZXMgb3V0c2lkZSBvZiB0
aGUgUkFNCiAgc2VlIHBhdGNoOiAiT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaTogTWFwIGV4dHJhIHBo
eXNpY2FsIGFkZHJlc3MiCi0gdGhhdCBuZXcgZnVuY3Rpb24gYWxsb3dzIHRvIG1hcCB0aGUgWGVu
IHNoYXJlZCBpbmZvIHBhZ2UgKHdoZXJlIHdlIGNhbiBmaW5kCiAgaW5mb3JtYXRpb24gYWJvdXQg
dHNjIGZyZXF1ZW5jeSkgYXQgdGhlIGhpZ2hlc3QgcGh5c2ljYWwgYWRkcmVzcyBhbGxvd2VkLgoK
SGksCgpPdm1mWGVuIHVzZXMgdGhlIEFQSUMgdGltZXIsIGJ1dCB3aXRoIGFuIGhhcmQtY29kZWQg
ZnJlcXVlbmN5IHRoYXQgbWF5IGNoYW5nZQphcyBwb2ludGVkIG91dCBoZXJlOgogIGh0dHBzOi8v
ZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdlLzQ1MTg1CiAgPDIwMTkwODA4MTM0NDIzLnli
cWczcWtwdzV1Y2Z6azRAQWlyLWRlLVJvZ2VyPgoKVGhpcyBzZXJpZXMgY2hhbmdlcyB0aGF0IHNv
IHRoZSBmcmVxdWVuY3kgaXMgY2FsY3VsYXRlZCBhdCBydW50aW1lLgoKUmVmOiBodHRwczovL2J1
Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTI0OTAKClRoZXJlIGlzIGFsc28g
b25lIGNsZWFudXAgcGF0Y2ggdGhhdCBoYXMgbm90aGluZyB0byBkbyB3aXRoIHRoZSByZXN0LgoK
Q2hlZXJzLAoKQW50aG9ueSBQRVJBUkQgKDcpOgogIE92bWZQa2cvWGVuUmVzZXRWZWN0b3I6IFNp
bGVudCBhIHdhcm5pbmcgZnJvbSBuYXNtCiAgTWRlUGtnOiBBbGxvdyBQY2RGU0JDbG9jayB0byBi
eSBEeW5hbWljCiAgT3ZtZlBrZy9JbmR1c3RyeVN0YW5kYXJkL1hlbjogQXBwbHkgRURLMiBjb2Rp
bmcgc3R5bGUgdG8KICAgIFhFTl9WQ1BVX1RJTUVfSU5GTwogIE92bWZQa2cvSW5kdXN0cnlTdGFu
ZGFyZDogSW50cm9kdWNlIFBhZ2VUYWJsZS5oCiAgT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaTogTWFw
IGV4dHJhIHBoeXNpY2FsIGFkZHJlc3MKICBPdm1mUGtnL1hlblBsYXRmb3JtUGVpOiBDYWxpYnJh
dGUgQVBJQyB0aW1lciBmcmVxdWVuY3kKICBPdm1mUGtnL092bWZYZW46IFNldCBQY2RGU0JDbG9j
awoKIE1kZVBrZy9NZGVQa2cuZGVjICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOCAr
LQogT3ZtZlBrZy9Pdm1mWGVuLmRzYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICst
CiBPdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hlblBsYXRmb3JtUGVpLmluZiAgICAgfCAgIDQgKwog
Li4uL0luZHVzdHJ5U3RhbmRhcmQvUGFnZVRhYmxlLmh9ICAgICAgICAgICAgIHwgMTE3ICstLS0t
LS0tCiBPdm1mUGtnL0luY2x1ZGUvSW5kdXN0cnlTdGFuZGFyZC9YZW4veGVuLmggICAgfCAgMTcg
Ky0KIC4uLi9CYXNlTWVtRW5jcnlwdFNldkxpYi9YNjQvVmlydHVhbE1lbW9yeS5oICB8IDE0MyAr
LS0tLS0tLS0tCiBPdm1mUGtnL1hlblBsYXRmb3JtUGVpL1BsYXRmb3JtLmggICAgICAgICAgICAg
fCAgMTAgKwogT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaS9QbGF0Zm9ybS5jICAgICAgICAgICAgIHwg
ICAxICsKIE92bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVuLmMgICAgICAgICAgICAgICAgICB8IDI1
MiArKysrKysrKysrKysrKysrKysKIE92bWZQa2cvWGVuUmVzZXRWZWN0b3IvSWEzMi9YZW5QVkhN
YWluLmFzbSAgICB8ICAgMiArLQogMTAgZmlsZXMgY2hhbmdlZCwgMjg3IGluc2VydGlvbnMoKyks
IDI3MSBkZWxldGlvbnMoLSkKIGNvcHkgT3ZtZlBrZy97TGlicmFyeS9CYXNlTWVtRW5jcnlwdFNl
dkxpYi9YNjQvVmlydHVhbE1lbW9yeS5oID0+IEluY2x1ZGUvSW5kdXN0cnlTdGFuZGFyZC9QYWdl
VGFibGUuaH0gKDYwJSkKCi0tIApBbnRob255IFBFUkFSRAoK


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:30:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:30:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109094.208227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwdx-0000AA-Ol; Mon, 12 Apr 2021 13:30:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109094.208227; Mon, 12 Apr 2021 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 1lVwdx-00009u-Ko; Mon, 12 Apr 2021 13:30:21 +0000
Received: by outflank-mailman (input) for mailman id 109094;
 Mon, 12 Apr 2021 13:30:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OvXO=JJ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lVwdv-0008Sj-Ih
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:30:19 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 58a5058b-be7c-4495-acf5-6ea5e8e5f6b3;
 Mon, 12 Apr 2021 13:30: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: 58a5058b-be7c-4495-acf5-6ea5e8e5f6b3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618234210;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=bhExrpoXQzqyeVVfKYNOFCo9TmJMG2rk9lhz1ih9ZWg=;
  b=RpfGpQM6So25pEONRH/0HnSCbSSFEKybK85OtPcTGDbl11Fd7Q8R+8Gx
   TCPZLB/Ekb1BGnz96fLtuZKWlEvvbJSksRc043enIMYkMoVW0Up5r2sZE
   0isJ2ZxpBCOhvF1T3IbwaaOxFc1WsJWw6vmtv65sfuhJIRoxhytkgohQO
   s=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: lMnJf0wiMDJsUzqBXizAog3gsw6ICUWa8Us3G0VNSDotNoe4NYIDpspzcIPEFqXCSRqjgBQG3P
 rHB6iQTRrNZ3sM1xKhXM325+gAZMFNJnr+js2jCHnCA1rAtHSTGghYZAvdZFR4l4rg4r7pMDJI
 XJ3kRuQEPKXUog9XJ7BJ3+ZNyig2i+gD88h6wZbI75tDPqjsfutRhvkhkHPzGY8rBQ831ZRRG1
 3L5cy+aLDYBuj2qwrTuGGB+o/cllGBm4TZFap5Id+GuN0BF/Azxtm1uHmJ90e9wIXNm+Z6AoKW
 KeI=
X-SBRS: 4.0
X-MesageID: 41386141
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:zGM11qPp4RoTocBcTkKjsMiAIKoaSvp033AA/SlKJiB9WMqeis
 yogbAnzhfykjkcQzUNntqHNamGTxrnhPlIyKMWOqqvWxSjhXuwIOhZnPLf6hDpBiGWzI9g/I
 h6dawWMrDNJHh8yf33+QypV+snqeP3kpyAocf74zNTQRpxa6dmhj0JbjqzNkFtXgFJCd4YOf
 OnhvZvnDardXQJYsnTPBBsNIL+jubGm578bRkNCwRP0njqsRqS5KPnCB/d5x8CUlp0sNEf2F
 LYmA/07LjLiZ+G4yLbvlW+071m3P/oyt5OH6W3+6soFgk=
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41386141"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <devel@edk2.groups.io>
CC: Laszlo Ersek <lersek@redhat.com>, Jordan Justen
	<jordan.l.justen@intel.com>, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Julien Grall <julien@xen.org>, Michael D Kinney <michael.d.kinney@intel.com>,
	Liming Gao <gaoliming@byosoft.com.cn>, Zhiguang Liu <zhiguang.liu@intel.com>,
	Liming Gao <liming.gao@intel.com>
Subject: [PATCH v3 2/7] MdePkg: Allow PcdFSBClock to by Dynamic
Date: Mon, 12 Apr 2021 14:29:58 +0100
Message-ID: <20210412133003.146438-3-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210412133003.146438-1-anthony.perard@citrix.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: text/plain

V2UgYXJlIGdvaW5nIHRvIHdhbnQgdG8gY2hhbmdlIHRoZSB2YWx1ZSBvZiBQY2RGU0JDbG9jayBh
dCBydW4gdGltZSBpbgpPdm1mWGVuLCBzbyBtb3ZlIGl0IHRvIHRoZSBQY2RzRHluYW1pYyBzZWN0
aW9uLgoKUmVmOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lk
PTI0OTAKU2lnbmVkLW9mZi1ieTogQW50aG9ueSBQRVJBUkQgPGFudGhvbnkucGVyYXJkQGNpdHJp
eC5jb20+ClJldmlld2VkLWJ5OiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPgpSZXZp
ZXdlZC1ieTogTGltaW5nIEdhbyA8bGltaW5nLmdhb0BpbnRlbC5jb20+Ci0tLQoKTm90ZXM6CiAg
ICBDQzogTWljaGFlbCBEIEtpbm5leSA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+CiAgICBD
QzogTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPgogICAgQ0M6IFpoaWd1YW5n
IExpdSA8emhpZ3VhbmcubGl1QGludGVsLmNvbT4KCiBNZGVQa2cvTWRlUGtnLmRlYyB8IDggKysr
Ky0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpk
aWZmIC0tZ2l0IGEvTWRlUGtnL01kZVBrZy5kZWMgYi9NZGVQa2cvTWRlUGtnLmRlYwppbmRleCBm
NDE1NjkyMGU1OTkuLjg5NjVlOTAzZTA5MyAxMDA2NDQKLS0tIGEvTWRlUGtnL01kZVBrZy5kZWMK
KysrIGIvTWRlUGtnL01kZVBrZy5kZWMKQEAgLTIyNjUsMTAgKzIyNjUsNiBAQCBbUGNkc0ZpeGVk
QXRCdWlsZCxQY2RzUGF0Y2hhYmxlSW5Nb2R1bGVdCiAgICMgQFZhbGlkTGlzdCAgMHg4MDAwMDAw
MSB8IDgsIDE2LCAzMg0KICAgZ0VmaU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFBvcnQ4MERhdGFX
aWR0aHw4fFVJTlQ4fDB4MDAwMDAwMmQNCiANCi0gICMjIFRoaXMgdmFsdWUgaXMgdXNlZCB0byBj
b25maWd1cmUgWDg2IFByb2Nlc3NvciBGU0IgY2xvY2suDQotICAjIEBQcm9tcHQgRlNCIENsb2Nr
Lg0KLSAgZ0VmaU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEZTQkNsb2NrfDIwMDAwMDAwMHxVSU5U
MzJ8MHgwMDAwMDAwYw0KLQ0KICAgIyMgVGhlIG1heGltdW0gcHJpbnRhYmxlIG51bWJlciBvZiBj
aGFyYWN0ZXJzLiBVZWZMaWIgZnVuY3Rpb25zOiBBc2NpaVByaW50KCksIEFzY2lpRXJyb3JQcmlu
dCgpLA0KICAgIyAgUHJpbnRYWSgpLCBBc2NpaVByaW50WFkoKSwgUHJpbnQoKSwgRXJyb3JQcmlu
dCgpIGJhc2Ugb24gdGhpcyBQQ0QgdmFsdWUgdG8gcHJpbnQgY2hhcmFjdGVycy4NCiAgICMgQFBy
b21wdCBNYXhpbXVtIFByaW50YWJsZSBOdW1iZXIgb2YgQ2hhcmFjdGVycy4NCkBAIC0yMzcyLDUg
KzIzNjgsOSBAQCBbUGNkc0ZpeGVkQXRCdWlsZCwgUGNkc1BhdGNoYWJsZUluTW9kdWxlLCBQY2Rz
RHluYW1pYywgUGNkc0R5bmFtaWNFeF0KICAgIyBAUHJvbXB0IEJvb3QgVGltZW91dCAocykNCiAg
IGdFZmlNZGVQa2dUb2tlblNwYWNlR3VpZC5QY2RQbGF0Zm9ybUJvb3RUaW1lT3V0fDB4ZmZmZnxV
SU5UMTZ8MHgwMDAwMDAyYw0KIA0KKyAgIyMgVGhpcyB2YWx1ZSBpcyB1c2VkIHRvIGNvbmZpZ3Vy
ZSBYODYgUHJvY2Vzc29yIEZTQiBjbG9jay4NCisgICMgQFByb21wdCBGU0IgQ2xvY2suDQorICBn
RWZpTWRlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRlNCQ2xvY2t8MjAwMDAwMDAwfFVJTlQzMnwweDAw
MDAwMDBjDQorDQogW1VzZXJFeHRlbnNpb25zLlRpYW5vQ29yZS4iRXh0cmFGaWxlcyJdDQogICBN
ZGVQa2dFeHRyYS51bmkNCi0tIApBbnRob255IFBFUkFSRAoK


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:30:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:30:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109095.208239 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwe2-0000GT-9r; Mon, 12 Apr 2021 13:30:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109095.208239; Mon, 12 Apr 2021 13: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 1lVwe2-0000GJ-5e; Mon, 12 Apr 2021 13:30:26 +0000
Received: by outflank-mailman (input) for mailman id 109095;
 Mon, 12 Apr 2021 13:30:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OvXO=JJ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lVwe0-0008Sj-Is
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:30:24 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c14a59cc-827f-4aac-8fe2-57a6714767b0;
 Mon, 12 Apr 2021 13:30:13 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c14a59cc-827f-4aac-8fe2-57a6714767b0
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618234213;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=ZZM3fS71ShAReSW7BNCtBbZWlZnitQ89Vlw8cWIKfw8=;
  b=CzG9jVBIAbrODxrnBUKTPCDJ4n1lE7WOtuGxnVBvpsXex/oNZL1xEnI4
   ImhqEEW6qkxUq/9IUom7kPFJMuuAkT2FxBegC2Qx8mOdA5hnrtkwkRzTg
   1Wg3LgeQJN44kewMk0TwNPsiagUvBELzv5XigupYbeEKn9pbJPSaxLLVy
   s=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 1BoSdeXa3S22D9Cvx4+drs0G7AicQ5+ydatqOtWc959YtjL0oce7YNPcQ5LY3HE7IAZXHToRz7
 RTVzYUHK8izZpK0iCpuAZyfdbMWVfklKphyTitpdmPfcsHIsc5I6r1Uie3jQb3HVvL8967UA3y
 xQAzlspcdn3SUxDciUoTBw7MAP+7c38o6chs3ZdwHpY+QptnpaTC+MtDsBtsVXpA5RuDLpvgS0
 s/OuQemP8hsaXvo63AHOkIDeQVvpbWQGJQLRt9wbYuzmAKEhbo44lWgyRqpdjFDQGP+MU5cAyn
 Uz0=
X-SBRS: 4.0
X-MesageID: 41386147
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23: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
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41386147"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <devel@edk2.groups.io>
CC: Laszlo Ersek <lersek@redhat.com>, Jordan Justen
	<jordan.l.justen@intel.com>, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Julien Grall <julien@xen.org>, Brijesh Singh <brijesh.singh@amd.com>, "Tom
 Lendacky" <thomas.lendacky@amd.com>
Subject: [PATCH v3 4/7] OvmfPkg/IndustryStandard: Introduce PageTable.h
Date: Mon, 12 Apr 2021 14:30:00 +0100
Message-ID: <20210412133003.146438-5-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210412133003.146438-1-anthony.perard@citrix.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: text/plain

V2UgYXJlIGdvaW5nIHRvIHVzZSB0aGUgcGFnZSB0YWJsZSBzdHJ1Y3R1cmUgaW4geWV0IGFub3Ro
ZXIgcGxhY2UsCmNvbGxlY3QgdGhlIHR5cGVzIGFuZCBtYWNybyB0aGF0IGNhbiBiZSB1c2VkIGZy
b20gYW5vdGhlciBtb2R1bGUKcmF0aGVyIHRoYW4gbWFraW5nIHlldCBhbm90aGVyIGNvcHkuCgpS
ZWY6IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQ5MApT
aWduZWQtb2ZmLWJ5OiBBbnRob255IFBFUkFSRCA8YW50aG9ueS5wZXJhcmRAY2l0cml4LmNvbT4K
QWNrZWQtYnk6IFRvbSBMZW5kYWNreSA8dGhvbWFzLmxlbmRhY2t5QGFtZC5jb20+Ci0tLQoKTm90
ZXM6CiAgICBDQzogQnJpamVzaCBTaW5naCA8YnJpamVzaC5zaW5naEBhbWQuY29tPgogICAgCiAg
ICB2MzoKICAgIC0gZml4IHR5cG9zIGFuZCBjb2Rpbmcgc3R5bGUKICAgIAogICAgdjI6CiAgICAt
IG5ldyBwYXRjaAoKIC4uLi9JbmR1c3RyeVN0YW5kYXJkL1BhZ2VUYWJsZS5ofSAgICAgICAgICAg
ICB8IDExNyArLS0tLS0tLS0tLS0tLQogLi4uL0Jhc2VNZW1FbmNyeXB0U2V2TGliL1g2NC9WaXJ0
dWFsTWVtb3J5LmggIHwgMTQzICstLS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1
IGluc2VydGlvbnMoKyksIDI1NSBkZWxldGlvbnMoLSkKIGNvcHkgT3ZtZlBrZy97TGlicmFyeS9C
YXNlTWVtRW5jcnlwdFNldkxpYi9YNjQvVmlydHVhbE1lbW9yeS5oID0+IEluY2x1ZGUvSW5kdXN0
cnlTdGFuZGFyZC9QYWdlVGFibGUuaH0gKDYwJSkKCmRpZmYgLS1naXQgYS9Pdm1mUGtnL0xpYnJh
cnkvQmFzZU1lbUVuY3J5cHRTZXZMaWIvWDY0L1ZpcnR1YWxNZW1vcnkuaCBiL092bWZQa2cvSW5j
bHVkZS9JbmR1c3RyeVN0YW5kYXJkL1BhZ2VUYWJsZS5oCnNpbWlsYXJpdHkgaW5kZXggNjAlCmNv
cHkgZnJvbSBPdm1mUGtnL0xpYnJhcnkvQmFzZU1lbUVuY3J5cHRTZXZMaWIvWDY0L1ZpcnR1YWxN
ZW1vcnkuaApjb3B5IHRvIE92bWZQa2cvSW5jbHVkZS9JbmR1c3RyeVN0YW5kYXJkL1BhZ2VUYWJs
ZS5oCmluZGV4IDk5NmY5NGYwN2ViYi4uNWU3OTdlZWVhOGVmIDEwMDY0NAotLS0gYS9Pdm1mUGtn
L0xpYnJhcnkvQmFzZU1lbUVuY3J5cHRTZXZMaWIvWDY0L1ZpcnR1YWxNZW1vcnkuaAorKysgYi9P
dm1mUGtnL0luY2x1ZGUvSW5kdXN0cnlTdGFuZGFyZC9QYWdlVGFibGUuaApAQCAtMSw2ICsxLDYg
QEAKIC8qKiBAZmlsZQ0KIA0KLSAgVmlydHVhbCBNZW1vcnkgTWFuYWdlbWVudCBTZXJ2aWNlcyB0
byBzZXQgb3IgY2xlYXIgdGhlIG1lbW9yeSBlbmNyeXB0aW9uIGJpdA0KKyAgeDg2XzY0IFBhZ2Ug
VGFibGVzIHN0cnVjdHVyZXMNCiANCiAgIENvcHlyaWdodCAoYykgMjAwNiAtIDIwMTYsIEludGVs
IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCiAgIENvcHlyaWdodCAoYykg
MjAxNyAtIDIwMjAsIEFNRCBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0K
QEAgLTExLDE3ICsxMSwxMCBAQAogDQogKiovDQogDQotI2lmbmRlZiBfX1ZJUlRVQUxfTUVNT1JZ
X18NCi0jZGVmaW5lIF9fVklSVFVBTF9NRU1PUllfXw0KKyNpZm5kZWYgUEFHRV9UQUJMRV9IXw0K
KyNkZWZpbmUgUEFHRV9UQUJMRV9IXw0KIA0KLSNpbmNsdWRlIDxMaWJyYXJ5L0Jhc2VMaWIuaD4N
Ci0jaW5jbHVkZSA8TGlicmFyeS9CYXNlTWVtb3J5TGliLmg+DQotI2luY2x1ZGUgPExpYnJhcnkv
Q2FjaGVNYWludGVuYW5jZUxpYi5oPg0KLSNpbmNsdWRlIDxMaWJyYXJ5L0RlYnVnTGliLmg+DQot
I2luY2x1ZGUgPExpYnJhcnkvTWVtb3J5QWxsb2NhdGlvbkxpYi5oPg0KLSNpbmNsdWRlIDxVZWZp
Lmg+DQotDQotI2RlZmluZSBTWVNfQ09ERTY0X1NFTCAweDM4DQorI2luY2x1ZGUgPEJhc2UuaD4N
CiANCiAjcHJhZ21hIHBhY2soMSkNCiANCkBAIC0xNjUsMTA2ICsxNTgsNCBAQCB0eXBlZGVmIHVu
aW9uIHsKICNkZWZpbmUgUFRFX09GRlNFVCh4KSAgICAgICAgICAgICAgICggKHggPj4gMTIpICYg
UEFHRVRBQkxFX0VOVFJZX01BU0spDQogI2RlZmluZSBQQUdJTkdfMUdfQUREUkVTU19NQVNLXzY0
ICAgMHgwMDBGRkZGRkMwMDAwMDAwdWxsDQogDQotI2RlZmluZSBQQUdFX1RBQkxFX1BPT0xfQUxJ
R05NRU5UICAgQkFTRV8yTUINCi0jZGVmaW5lIFBBR0VfVEFCTEVfUE9PTF9VTklUX1NJWkUgICBT
SVpFXzJNQg0KLSNkZWZpbmUgUEFHRV9UQUJMRV9QT09MX1VOSVRfUEFHRVMgIFwNCi0gIEVGSV9T
SVpFX1RPX1BBR0VTIChQQUdFX1RBQkxFX1BPT0xfVU5JVF9TSVpFKQ0KLSNkZWZpbmUgUEFHRV9U
QUJMRV9QT09MX0FMSUdOX01BU0sgIFwNCi0gICh+KEVGSV9QSFlTSUNBTF9BRERSRVNTKShQQUdF
X1RBQkxFX1BPT0xfQUxJR05NRU5UIC0gMSkpDQotDQotdHlwZWRlZiBzdHJ1Y3Qgew0KLSAgVk9J
RCAgICAgICAgICAgICpOZXh0UG9vbDsNCi0gIFVJTlROICAgICAgICAgICBPZmZzZXQ7DQotICBV
SU5UTiAgICAgICAgICAgRnJlZVBhZ2VzOw0KLX0gUEFHRV9UQUJMRV9QT09MOw0KLQ0KLS8qKg0K
LSAgUmV0dXJuIHRoZSBwYWdldGFibGUgbWVtb3J5IGVuY3J5cHRpb24gbWFzay4NCi0NCi0gIEBy
ZXR1cm4gIFRoZSBwYWdldGFibGUgbWVtb3J5IGVuY3J5cHRpb24gbWFzay4NCi0NCi0qKi8NCi1V
SU5UNjQNCi1FRklBUEkNCi1JbnRlcm5hbEdldE1lbUVuY3J5cHRpb25BZGRyZXNzTWFzayAoDQot
ICBWT0lEDQotICApOw0KLQ0KLS8qKg0KLSAgVGhpcyBmdW5jdGlvbiBjbGVhcnMgbWVtb3J5IGVu
Y3J5cHRpb24gYml0IGZvciB0aGUgbWVtb3J5IHJlZ2lvbiBzcGVjaWZpZWQgYnkNCi0gIFBoeXNp
Y2FsQWRkcmVzcyBhbmQgTGVuZ3RoIGZyb20gdGhlIGN1cnJlbnQgcGFnZSB0YWJsZSBjb250ZXh0
Lg0KLQ0KLSAgQHBhcmFtW2luXSAgQ3IzQmFzZUFkZHJlc3MgICAgICAgICAgQ3IzIEJhc2UgQWRk
cmVzcyAoaWYgemVybyB0aGVuIHVzZQ0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY3VycmVudCBDUjMpDQotICBAcGFyYW1baW5dICBQaHlzaWNhbEFkZHJlc3MgICAgICAg
ICBUaGUgcGh5c2ljYWwgYWRkcmVzcyB0aGF0IGlzIHRoZSBzdGFydA0KLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYWRkcmVzcyBvZiBhIG1lbW9yeSByZWdpb24uDQotICBA
cGFyYW1baW5dICBMZW5ndGggICAgICAgICAgICAgICAgICBUaGUgbGVuZ3RoIG9mIG1lbW9yeSBy
ZWdpb24NCi0gIEBwYXJhbVtpbl0gIEZsdXNoICAgICAgICAgICAgICAgICAgIEZsdXNoIHRoZSBj
YWNoZXMgYmVmb3JlIGFwcGx5aW5nIHRoZQ0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZW5jcnlwdGlvbiBtYXNrDQotDQotICBAcmV0dmFsIFJFVFVSTl9TVUNDRVNTICAg
ICAgICAgICAgICBUaGUgYXR0cmlidXRlcyB3ZXJlIGNsZWFyZWQgZm9yIHRoZQ0KLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVtb3J5IHJlZ2lvbi4NCi0gIEByZXR2YWwg
UkVUVVJOX0lOVkFMSURfUEFSQU1FVEVSICAgIE51bWJlciBvZiBwYWdlcyBpcyB6ZXJvLg0KLSAg
QHJldHZhbCBSRVRVUk5fVU5TVVBQT1JURUQgICAgICAgICAgQ2xlYXJpbmcgdGhlIG1lbW9yeSBl
bmN5cnB0aW9uIGF0dHJpYnV0ZQ0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaXMgbm90IHN1cHBvcnRlZA0KLSoqLw0KLVJFVFVSTl9TVEFUVVMNCi1FRklBUEkNCi1JbnRl
cm5hbE1lbUVuY3J5cHRTZXZTZXRNZW1vcnlEZWNyeXB0ZWQgKA0KLSAgSU4gIFBIWVNJQ0FMX0FE
RFJFU1MgICAgICAgIENyM0Jhc2VBZGRyZXNzLA0KLSAgSU4gIFBIWVNJQ0FMX0FERFJFU1MgICAg
ICAgIFBoeXNpY2FsQWRkcmVzcywNCi0gIElOICBVSU5UTiAgICAgICAgICAgICAgICAgICBMZW5n
dGgsDQotICBJTiAgQk9PTEVBTiAgICAgICAgICAgICAgICAgRmx1c2gNCi0gICk7DQotDQotLyoq
DQotICBUaGlzIGZ1bmN0aW9uIHNldHMgbWVtb3J5IGVuY3J5cHRpb24gYml0IGZvciB0aGUgbWVt
b3J5IHJlZ2lvbiBzcGVjaWZpZWQgYnkNCi0gIFBoeXNpY2FsQWRkcmVzcyBhbmQgTGVuZ3RoIGZy
b20gdGhlIGN1cnJlbnQgcGFnZSB0YWJsZSBjb250ZXh0Lg0KLQ0KLSAgQHBhcmFtW2luXSAgQ3Iz
QmFzZUFkZHJlc3MgICAgICAgICAgQ3IzIEJhc2UgQWRkcmVzcyAoaWYgemVybyB0aGVuIHVzZQ0K
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudCBDUjMpDQotICBA
cGFyYW1baW5dICBQaHlzaWNhbEFkZHJlc3MgICAgICAgICBUaGUgcGh5c2ljYWwgYWRkcmVzcyB0
aGF0IGlzIHRoZSBzdGFydA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
YWRkcmVzcyBvZiBhIG1lbW9yeSByZWdpb24uDQotICBAcGFyYW1baW5dICBMZW5ndGggICAgICAg
ICAgICAgICAgICBUaGUgbGVuZ3RoIG9mIG1lbW9yeSByZWdpb24NCi0gIEBwYXJhbVtpbl0gIEZs
dXNoICAgICAgICAgICAgICAgICAgIEZsdXNoIHRoZSBjYWNoZXMgYmVmb3JlIGFwcGx5aW5nIHRo
ZQ0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jcnlwdGlvbiBtYXNr
DQotDQotICBAcmV0dmFsIFJFVFVSTl9TVUNDRVNTICAgICAgICAgICAgICBUaGUgYXR0cmlidXRl
cyB3ZXJlIHNldCBmb3IgdGhlIG1lbW9yeQ0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcmVnaW9uLg0KLSAgQHJldHZhbCBSRVRVUk5fSU5WQUxJRF9QQVJBTUVURVIgICAg
TnVtYmVyIG9mIHBhZ2VzIGlzIHplcm8uDQotICBAcmV0dmFsIFJFVFVSTl9VTlNVUFBPUlRFRCAg
ICAgICAgICBTZXR0aW5nIHRoZSBtZW1vcnkgZW5jeXJwdGlvbiBhdHRyaWJ1dGUNCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzIG5vdCBzdXBwb3J0ZWQNCi0qKi8NCi1S
RVRVUk5fU1RBVFVTDQotRUZJQVBJDQotSW50ZXJuYWxNZW1FbmNyeXB0U2V2U2V0TWVtb3J5RW5j
cnlwdGVkICgNCi0gIElOICBQSFlTSUNBTF9BRERSRVNTICAgICAgICBDcjNCYXNlQWRkcmVzcywN
Ci0gIElOICBQSFlTSUNBTF9BRERSRVNTICAgICAgICBQaHlzaWNhbEFkZHJlc3MsDQotICBJTiAg
VUlOVE4gICAgICAgICAgICAgICAgICAgTGVuZ3RoLA0KLSAgSU4gIEJPT0xFQU4gICAgICAgICAg
ICAgICAgIEZsdXNoDQotICApOw0KLQ0KLS8qKg0KLSAgUmV0dXJucyB0aGUgZW5jcnlwdGlvbiBz
dGF0ZSBvZiB0aGUgc3BlY2lmaWVkIHZpcnR1YWwgYWRkcmVzcyByYW5nZS4NCi0NCi0gIEBwYXJh
bVtpbl0gIENyM0Jhc2VBZGRyZXNzICAgICAgICAgIENyMyBCYXNlIEFkZHJlc3MgKGlmIHplcm8g
dGhlbiB1c2UNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQg
Q1IzKQ0KLSAgQHBhcmFtW2luXSAgQmFzZUFkZHJlc3MgICAgICAgICAgICAgQmFzZSBhZGRyZXNz
IHRvIGNoZWNrDQotICBAcGFyYW1baW5dICBMZW5ndGggICAgICAgICAgICAgICAgICBMZW5ndGgg
b2YgdmlydHVhbCBhZGRyZXNzIHJhbmdlDQotDQotICBAcmV0dmFsIE1lbUVuY3J5cHRTZXZBZGRy
ZXNzUmFuZ2VVbmVuY3J5cHRlZCAgQWRkcmVzcyByYW5nZSBpcyBtYXBwZWQNCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmVuY3J5cHRlZA0KLSAgQHJl
dHZhbCBNZW1FbmNyeXB0U2V2QWRkcmVzc1JhbmdlRW5jcnlwdGVkICAgIEFkZHJlc3MgcmFuZ2Ug
aXMgbWFwcGVkDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZW5jcnlwdGVkDQotICBAcmV0dmFsIE1lbUVuY3J5cHRTZXZBZGRyZXNzUmFuZ2VNaXhlZCAg
ICAgICAgQWRkcmVzcyByYW5nZSBpcyBtYXBwZWQgbWl4ZWQNCi0gIEByZXR2YWwgTWVtRW5jcnlw
dFNldkFkZHJlc3NSYW5nZUVycm9yICAgICAgICBBZGRyZXNzIHJhbmdlIGlzIG5vdCBtYXBwZWQN
Ci0qKi8NCi1NRU1fRU5DUllQVF9TRVZfQUREUkVTU19SQU5HRV9TVEFURQ0KLUVGSUFQSQ0KLUlu
dGVybmFsTWVtRW5jcnlwdFNldkdldEFkZHJlc3NSYW5nZVN0YXRlICgNCi0gIElOIFBIWVNJQ0FM
X0FERFJFU1MgICAgICAgICBDcjNCYXNlQWRkcmVzcywNCi0gIElOIFBIWVNJQ0FMX0FERFJFU1Mg
ICAgICAgICBCYXNlQWRkcmVzcywNCi0gIElOIFVJTlROICAgICAgICAgICAgICAgICAgICBMZW5n
dGgNCi0gICk7DQotDQogI2VuZGlmDQpkaWZmIC0tZ2l0IGEvT3ZtZlBrZy9MaWJyYXJ5L0Jhc2VN
ZW1FbmNyeXB0U2V2TGliL1g2NC9WaXJ0dWFsTWVtb3J5LmggYi9Pdm1mUGtnL0xpYnJhcnkvQmFz
ZU1lbUVuY3J5cHRTZXZMaWIvWDY0L1ZpcnR1YWxNZW1vcnkuaAppbmRleCA5OTZmOTRmMDdlYmIu
LmZlMmEwYjI4MjZjZCAxMDA2NDQKLS0tIGEvT3ZtZlBrZy9MaWJyYXJ5L0Jhc2VNZW1FbmNyeXB0
U2V2TGliL1g2NC9WaXJ0dWFsTWVtb3J5LmgKKysrIGIvT3ZtZlBrZy9MaWJyYXJ5L0Jhc2VNZW1F
bmNyeXB0U2V2TGliL1g2NC9WaXJ0dWFsTWVtb3J5LmgKQEAgLTE0LDYgKzE0LDcgQEAKICNpZm5k
ZWYgX19WSVJUVUFMX01FTU9SWV9fDQogI2RlZmluZSBfX1ZJUlRVQUxfTUVNT1JZX18NCiANCisj
aW5jbHVkZSA8SW5kdXN0cnlTdGFuZGFyZC9QYWdlVGFibGUuaD4NCiAjaW5jbHVkZSA8TGlicmFy
eS9CYXNlTGliLmg+DQogI2luY2x1ZGUgPExpYnJhcnkvQmFzZU1lbW9yeUxpYi5oPg0KICNpbmNs
dWRlIDxMaWJyYXJ5L0NhY2hlTWFpbnRlbmFuY2VMaWIuaD4NCkBAIC0yMywxNDggKzI0LDYgQEAK
IA0KICNkZWZpbmUgU1lTX0NPREU2NF9TRUwgMHgzOA0KIA0KLSNwcmFnbWEgcGFjaygxKQ0KLQ0K
LS8vDQotLy8gUGFnZS1NYXAgTGV2ZWwtNCBPZmZzZXQgKFBNTDQpIGFuZA0KLS8vIFBhZ2UtRGly
ZWN0b3J5LVBvaW50ZXIgT2Zmc2V0IChQRFBFKSBlbnRyaWVzIDRLICYgMk1CDQotLy8NCi0NCi10
eXBlZGVmIHVuaW9uIHsNCi0gIHN0cnVjdCB7DQotICAgIFVJTlQ2NCAgUHJlc2VudDoxOyAgICAg
ICAgICAgICAgICAvLyAwID0gTm90IHByZXNlbnQgaW4gbWVtb3J5LA0KLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLy8gICAxID0gUHJlc2VudCBpbiBtZW1vcnkNCi0gICAg
VUlOVDY0ICBSZWFkV3JpdGU6MTsgICAgICAgICAgICAgIC8vIDAgPSBSZWFkLU9ubHksIDE9IFJl
YWQvV3JpdGUNCi0gICAgVUlOVDY0ICBVc2VyU3VwZXJ2aXNvcjoxOyAgICAgICAgIC8vIDAgPSBT
dXBlcnZpc29yLCAxPVVzZXINCi0gICAgVUlOVDY0ICBXcml0ZVRocm91Z2g6MTsgICAgICAgICAg
IC8vIDAgPSBXcml0ZS1CYWNrIGNhY2hpbmcsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvLyAgIDEgPSBXcml0ZS1UaHJvdWdoIGNhY2hpbmcNCi0gICAgVUlOVDY0ICBD
YWNoZURpc2FibGVkOjE7ICAgICAgICAgIC8vIDAgPSBDYWNoZWQsIDE9Tm9uLUNhY2hlZA0KLSAg
ICBVSU5UNjQgIEFjY2Vzc2VkOjE7ICAgICAgICAgICAgICAgLy8gMCA9IE5vdCBhY2Nlc3NlZCwN
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgMSA9IEFjY2Vzc2Vk
IChzZXQgYnkgQ1BVKQ0KLSAgICBVSU5UNjQgIFJlc2VydmVkOjE7ICAgICAgICAgICAgICAgLy8g
UmVzZXJ2ZWQNCi0gICAgVUlOVDY0ICBNdXN0QmVaZXJvOjI7ICAgICAgICAgICAgIC8vIE11c3Qg
QmUgWmVybw0KLSAgICBVSU5UNjQgIEF2YWlsYWJsZTozOyAgICAgICAgICAgICAgLy8gQXZhaWxh
YmxlIGZvciB1c2UgYnkgc3lzdGVtIHNvZnR3YXJlDQotICAgIFVJTlQ2NCAgUGFnZVRhYmxlQmFz
ZUFkZHJlc3M6NDA7ICAvLyBQYWdlIFRhYmxlIEJhc2UgQWRkcmVzcw0KLSAgICBVSU5UNjQgIEF2
YWJpbGFibGVIaWdoOjExOyAgICAgICAgLy8gQXZhaWxhYmxlIGZvciB1c2UgYnkgc3lzdGVtIHNv
ZnR3YXJlDQotICAgIFVJTlQ2NCAgTng6MTsgICAgICAgICAgICAgICAgICAgICAvLyBObyBFeGVj
dXRlIGJpdA0KLSAgfSBCaXRzOw0KLSAgVUlOVDY0ICAgIFVpbnQ2NDsNCi19IFBBR0VfTUFQX0FO
RF9ESVJFQ1RPUllfUE9JTlRFUjsNCi0NCi0vLw0KLS8vIFBhZ2UgVGFibGUgRW50cnkgNEtCDQot
Ly8NCi10eXBlZGVmIHVuaW9uIHsNCi0gIHN0cnVjdCB7DQotICAgIFVJTlQ2NCAgUHJlc2VudDox
OyAgICAgICAgICAgICAgICAvLyAwID0gTm90IHByZXNlbnQgaW4gbWVtb3J5LA0KLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gICAxID0gUHJlc2VudCBpbiBtZW1vcnkN
Ci0gICAgVUlOVDY0ICBSZWFkV3JpdGU6MTsgICAgICAgICAgICAgIC8vIDAgPSBSZWFkLU9ubHks
IDE9IFJlYWQvV3JpdGUNCi0gICAgVUlOVDY0ICBVc2VyU3VwZXJ2aXNvcjoxOyAgICAgICAgIC8v
IDAgPSBTdXBlcnZpc29yLCAxPVVzZXINCi0gICAgVUlOVDY0ICBXcml0ZVRocm91Z2g6MTsgICAg
ICAgICAgIC8vIDAgPSBXcml0ZS1CYWNrIGNhY2hpbmcsDQotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvLyAgIDEgPSBXcml0ZS1UaHJvdWdoIGNhY2hpbmcNCi0gICAgVUlO
VDY0ICBDYWNoZURpc2FibGVkOjE7ICAgICAgICAgIC8vIDAgPSBDYWNoZWQsIDE9Tm9uLUNhY2hl
ZA0KLSAgICBVSU5UNjQgIEFjY2Vzc2VkOjE7ICAgICAgICAgICAgICAgLy8gMCA9IE5vdCBhY2Nl
c3NlZCwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgMSA9IEFj
Y2Vzc2VkIChzZXQgYnkgQ1BVKQ0KLSAgICBVSU5UNjQgIERpcnR5OjE7ICAgICAgICAgICAgICAg
ICAgLy8gMCA9IE5vdCBEaXJ0eSwgMSA9IHdyaXR0ZW4gYnkNCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8vICAgcHJvY2Vzc29yIG9uIGFjY2VzcyB0byBwYWdlDQotICAg
IFVJTlQ2NCAgUEFUOjE7ICAgICAgICAgICAgICAgICAgICAvLw0KLSAgICBVSU5UNjQgIEdsb2Jh
bDoxOyAgICAgICAgICAgICAgICAgLy8gMCA9IE5vdCBnbG9iYWwgcGFnZSwgMSA9IGdsb2JhbCBw
YWdlDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIFRMQiBub3Qg
Y2xlYXJlZCBvbiBDUjMgd3JpdGUNCi0gICAgVUlOVDY0ICBBdmFpbGFibGU6MzsgICAgICAgICAg
ICAgIC8vIEF2YWlsYWJsZSBmb3IgdXNlIGJ5IHN5c3RlbSBzb2Z0d2FyZQ0KLSAgICBVSU5UNjQg
IFBhZ2VUYWJsZUJhc2VBZGRyZXNzOjQwOyAgLy8gUGFnZSBUYWJsZSBCYXNlIEFkZHJlc3MNCi0g
ICAgVUlOVDY0ICBBdmFiaWxhYmxlSGlnaDoxMTsgICAgICAgIC8vIEF2YWlsYWJsZSBmb3IgdXNl
IGJ5IHN5c3RlbSBzb2Z0d2FyZQ0KLSAgICBVSU5UNjQgIE54OjE7ICAgICAgICAgICAgICAgICAg
ICAgLy8gMCA9IEV4ZWN1dGUgQ29kZSwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8vICAgMSA9IE5vIENvZGUgRXhlY3V0aW9uDQotICB9IEJpdHM7DQotICBVSU5UNjQg
ICAgVWludDY0Ow0KLX0gUEFHRV9UQUJMRV80S19FTlRSWTsNCi0NCi0vLw0KLS8vIFBhZ2UgVGFi
bGUgRW50cnkgMk1CDQotLy8NCi10eXBlZGVmIHVuaW9uIHsNCi0gIHN0cnVjdCB7DQotICAgIFVJ
TlQ2NCAgUHJlc2VudDoxOyAgICAgICAgICAgICAgICAvLyAwID0gTm90IHByZXNlbnQgaW4gbWVt
b3J5LA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gICAxID0gUHJl
c2VudCBpbiBtZW1vcnkNCi0gICAgVUlOVDY0ICBSZWFkV3JpdGU6MTsgICAgICAgICAgICAgIC8v
IDAgPSBSZWFkLU9ubHksIDE9IFJlYWQvV3JpdGUNCi0gICAgVUlOVDY0ICBVc2VyU3VwZXJ2aXNv
cjoxOyAgICAgICAgIC8vIDAgPSBTdXBlcnZpc29yLCAxPVVzZXINCi0gICAgVUlOVDY0ICBXcml0
ZVRocm91Z2g6MTsgICAgICAgICAgIC8vIDAgPSBXcml0ZS1CYWNrIGNhY2hpbmcsDQotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIDE9V3JpdGUtVGhyb3VnaCBjYWNo
aW5nDQotICAgIFVJTlQ2NCAgQ2FjaGVEaXNhYmxlZDoxOyAgICAgICAgICAvLyAwID0gQ2FjaGVk
LCAxPU5vbi1DYWNoZWQNCi0gICAgVUlOVDY0ICBBY2Nlc3NlZDoxOyAgICAgICAgICAgICAgIC8v
IDAgPSBOb3QgYWNjZXNzZWQsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvLyAgIDEgPSBBY2Nlc3NlZCAoc2V0IGJ5IENQVSkNCi0gICAgVUlOVDY0ICBEaXJ0eToxOyAg
ICAgICAgICAgICAgICAgIC8vIDAgPSBOb3QgRGlydHksIDEgPSB3cml0dGVuIGJ5DQotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIHByb2Nlc3NvciBvbiBhY2Nlc3Mg
dG8gcGFnZQ0KLSAgICBVSU5UNjQgIE11c3RCZTE6MTsgICAgICAgICAgICAgICAgLy8gTXVzdCBi
ZSAxDQotICAgIFVJTlQ2NCAgR2xvYmFsOjE7ICAgICAgICAgICAgICAgICAvLyAwID0gTm90IGds
b2JhbCBwYWdlLCAxID0gZ2xvYmFsIHBhZ2UNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vICAgVExCIG5vdCBjbGVhcmVkIG9uIENSMyB3cml0ZQ0KLSAgICBVSU5UNjQg
IEF2YWlsYWJsZTozOyAgICAgICAgICAgICAgLy8gQXZhaWxhYmxlIGZvciB1c2UgYnkgc3lzdGVt
IHNvZnR3YXJlDQotICAgIFVJTlQ2NCAgUEFUOjE7ICAgICAgICAgICAgICAgICAgICAvLw0KLSAg
ICBVSU5UNjQgIE11c3RCZVplcm86ODsgICAgICAgICAgICAgLy8gTXVzdCBiZSB6ZXJvOw0KLSAg
ICBVSU5UNjQgIFBhZ2VUYWJsZUJhc2VBZGRyZXNzOjMxOyAgLy8gUGFnZSBUYWJsZSBCYXNlIEFk
ZHJlc3MNCi0gICAgVUlOVDY0ICBBdmFiaWxhYmxlSGlnaDoxMTsgICAgICAgIC8vIEF2YWlsYWJs
ZSBmb3IgdXNlIGJ5IHN5c3RlbSBzb2Z0d2FyZQ0KLSAgICBVSU5UNjQgIE54OjE7ICAgICAgICAg
ICAgICAgICAgICAgLy8gMCA9IEV4ZWN1dGUgQ29kZSwNCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8vICAgMSA9IE5vIENvZGUgRXhlY3V0aW9uDQotICB9IEJpdHM7DQot
ICBVSU5UNjQgICAgVWludDY0Ow0KLX0gUEFHRV9UQUJMRV9FTlRSWTsNCi0NCi0vLw0KLS8vIFBh
Z2UgVGFibGUgRW50cnkgMUdCDQotLy8NCi10eXBlZGVmIHVuaW9uIHsNCi0gIHN0cnVjdCB7DQot
ICAgIFVJTlQ2NCAgUHJlc2VudDoxOyAgICAgICAgICAgICAgICAvLyAwID0gTm90IHByZXNlbnQg
aW4gbWVtb3J5LA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gICAx
ID0gUHJlc2VudCBpbiBtZW1vcnkNCi0gICAgVUlOVDY0ICBSZWFkV3JpdGU6MTsgICAgICAgICAg
ICAgIC8vIDAgPSBSZWFkLU9ubHksIDE9IFJlYWQvV3JpdGUNCi0gICAgVUlOVDY0ICBVc2VyU3Vw
ZXJ2aXNvcjoxOyAgICAgICAgIC8vIDAgPSBTdXBlcnZpc29yLCAxPVVzZXINCi0gICAgVUlOVDY0
ICBXcml0ZVRocm91Z2g6MTsgICAgICAgICAgIC8vIDAgPSBXcml0ZS1CYWNrIGNhY2hpbmcsDQot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIDEgPSBXcml0ZS1UaHJv
dWdoIGNhY2hpbmcNCi0gICAgVUlOVDY0ICBDYWNoZURpc2FibGVkOjE7ICAgICAgICAgIC8vIDAg
PSBDYWNoZWQsIDE9Tm9uLUNhY2hlZA0KLSAgICBVSU5UNjQgIEFjY2Vzc2VkOjE7ICAgICAgICAg
ICAgICAgLy8gMCA9IE5vdCBhY2Nlc3NlZCwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vICAgMSA9IEFjY2Vzc2VkIChzZXQgYnkgQ1BVKQ0KLSAgICBVSU5UNjQgIERp
cnR5OjE7ICAgICAgICAgICAgICAgICAgLy8gMCA9IE5vdCBEaXJ0eSwgMSA9IHdyaXR0ZW4gYnkN
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgcHJvY2Vzc29yIG9u
IGFjY2VzcyB0byBwYWdlDQotICAgIFVJTlQ2NCAgTXVzdEJlMToxOyAgICAgICAgICAgICAgICAv
LyBNdXN0IGJlIDENCi0gICAgVUlOVDY0ICBHbG9iYWw6MTsgICAgICAgICAgICAgICAgIC8vIDAg
PSBOb3QgZ2xvYmFsIHBhZ2UsIDEgPSBnbG9iYWwgcGFnZQ0KLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gICBUTEIgbm90IGNsZWFyZWQgb24gQ1IzIHdyaXRlDQotICAg
IFVJTlQ2NCAgQXZhaWxhYmxlOjM7ICAgICAgICAgICAgICAvLyBBdmFpbGFibGUgZm9yIHVzZSBi
eSBzeXN0ZW0gc29mdHdhcmUNCi0gICAgVUlOVDY0ICBQQVQ6MTsgICAgICAgICAgICAgICAgICAg
IC8vDQotICAgIFVJTlQ2NCAgTXVzdEJlWmVybzoxNzsgICAgICAgICAgICAvLyBNdXN0IGJlIHpl
cm87DQotICAgIFVJTlQ2NCAgUGFnZVRhYmxlQmFzZUFkZHJlc3M6MjI7ICAvLyBQYWdlIFRhYmxl
IEJhc2UgQWRkcmVzcw0KLSAgICBVSU5UNjQgIEF2YWJpbGFibGVIaWdoOjExOyAgICAgICAgLy8g
QXZhaWxhYmxlIGZvciB1c2UgYnkgc3lzdGVtIHNvZnR3YXJlDQotICAgIFVJTlQ2NCAgTng6MTsg
ICAgICAgICAgICAgICAgICAgICAvLyAwID0gRXhlY3V0ZSBDb2RlLA0KLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLy8gICAxID0gTm8gQ29kZSBFeGVjdXRpb24NCi0gIH0g
Qml0czsNCi0gIFVJTlQ2NCAgICBVaW50NjQ7DQotfSBQQUdFX1RBQkxFXzFHX0VOVFJZOw0KLQ0K
LSNwcmFnbWEgcGFjaygpDQotDQotI2RlZmluZSBJQTMyX1BHX1AgICAgICAgICAgICAgICAgICAg
QklUMA0KLSNkZWZpbmUgSUEzMl9QR19SVyAgICAgICAgICAgICAgICAgIEJJVDENCi0jZGVmaW5l
IElBMzJfUEdfUFMgICAgICAgICAgICAgICAgICBCSVQ3DQotDQotI2RlZmluZSBQQUdJTkdfUEFF
X0lOREVYX01BU0sgICAgICAgMHgxRkYNCi0NCi0jZGVmaW5lIFBBR0lOR180S19BRERSRVNTX01B
U0tfNjQgICAweDAwMEZGRkZGRkZGRkYwMDB1bGwNCi0jZGVmaW5lIFBBR0lOR18yTV9BRERSRVNT
X01BU0tfNjQgICAweDAwMEZGRkZGRkZFMDAwMDB1bGwNCi0jZGVmaW5lIFBBR0lOR18xR19BRERS
RVNTX01BU0tfNjQgICAweDAwMEZGRkZGQzAwMDAwMDB1bGwNCi0NCi0jZGVmaW5lIFBBR0lOR19M
MV9BRERSRVNTX1NISUZUICAgICAxMg0KLSNkZWZpbmUgUEFHSU5HX0wyX0FERFJFU1NfU0hJRlQg
ICAgIDIxDQotI2RlZmluZSBQQUdJTkdfTDNfQUREUkVTU19TSElGVCAgICAgMzANCi0jZGVmaW5l
IFBBR0lOR19MNF9BRERSRVNTX1NISUZUICAgICAzOQ0KLQ0KLSNkZWZpbmUgUEFHSU5HX1BNTDRF
X05VTUJFUiAgICAgICAgIDQNCi0NCi0jZGVmaW5lIFBBR0VUQUJMRV9FTlRSWV9NQVNLICAgICAg
ICAoKDFVTCA8PCA5KSAtIDEpDQotI2RlZmluZSBQTUw0X09GRlNFVCh4KSAgICAgICAgICAgICAg
KCAoeCA+PiAzOSkgJiBQQUdFVEFCTEVfRU5UUllfTUFTSykNCi0jZGVmaW5lIFBEUF9PRkZTRVQo
eCkgICAgICAgICAgICAgICAoICh4ID4+IDMwKSAmIFBBR0VUQUJMRV9FTlRSWV9NQVNLKQ0KLSNk
ZWZpbmUgUERFX09GRlNFVCh4KSAgICAgICAgICAgICAgICggKHggPj4gMjEpICYgUEFHRVRBQkxF
X0VOVFJZX01BU0spDQotI2RlZmluZSBQVEVfT0ZGU0VUKHgpICAgICAgICAgICAgICAgKCAoeCA+
PiAxMikgJiBQQUdFVEFCTEVfRU5UUllfTUFTSykNCi0jZGVmaW5lIFBBR0lOR18xR19BRERSRVNT
X01BU0tfNjQgICAweDAwMEZGRkZGQzAwMDAwMDB1bGwNCi0NCiAjZGVmaW5lIFBBR0VfVEFCTEVf
UE9PTF9BTElHTk1FTlQgICBCQVNFXzJNQg0KICNkZWZpbmUgUEFHRV9UQUJMRV9QT09MX1VOSVRf
U0laRSAgIFNJWkVfMk1CDQogI2RlZmluZSBQQUdFX1RBQkxFX1BPT0xfVU5JVF9QQUdFUyAgXA0K
LS0gCkFudGhvbnkgUEVSQVJECgo=


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:30:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:30:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109093.208215 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwdw-000087-Fy; Mon, 12 Apr 2021 13:30:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109093.208215; Mon, 12 Apr 2021 13: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 1lVwdw-000080-Bc; Mon, 12 Apr 2021 13:30:20 +0000
Received: by outflank-mailman (input) for mailman id 109093;
 Mon, 12 Apr 2021 13:30:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OvXO=JJ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lVwdu-00006l-HD
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:30:18 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a256924e-7cd9-49a9-8abd-62ca8c589a8c;
 Mon, 12 Apr 2021 13: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: a256924e-7cd9-49a9-8abd-62ca8c589a8c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618234217;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Ece03YsvDDPXrfXNihOeNav6nt2fxbia0ukI4gdm/Us=;
  b=ZF+1WUSPHGT63chGp24vVEMdOEy8ct4MBqvNC+qU9GV8V6AiymGs8+f9
   YwFlTEtX71uFOCi6g3sZsDV5v/wKYVFB13slBuoKi6FpOcFIYKYlnplkR
   hAjB20VaEKxmVBEZeGhiDYDPDK4sjLeEXMVtiu9j38u41In4sbB3meBUv
   U=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: +JtXh35ICEfOoM9HQ7D6d6F4xzfBG+HzgkPT3sOXbJaWOLu/5N6GCQ84C1mMXkgTOmT/AoJ9OT
 qj0jSDe3XseUcu7AKBHoldczyHggH/5dX1WmsVxU9h5XcBoBHLD39bswWlDsKK2WG0iiivDckh
 OqKZKN8XumVlimIUOPUb13wmfDeKpBNyQWyyMugj4nOXld+4dkHswlreW2WdyCyPlumJBW4GZe
 znX+sfpjaj+Vq1wIzkeicsRE2pngvbMsk5JP+Jy009JIZot7dyzgkMaFCoQQyqMH5CvgCCqnz9
 P8Q=
X-SBRS: 4.0
X-MesageID: 42862131
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:OPVOCq/Rb18ChCH/RUFuk+BbI+orLtY04lQ7vn1ZYzY9SKOlvu
 qpm+kW0gKxtS0YX2sulcvFFK6LR37d8pAd2/h3AZ6JWg76tGy0aLxz9IeK+UyYJwTS/vNQvJ
 0AT4FQE9v1ZGIWse/b502CH88k0J279smT9IXj5lNMaS0vVK169Qd+DW+gYylLbS1LH4AwGp
 bZxucvnVqdUE8aZMi6GXUJNtKrz7agqLvcbRELHBIh4gWV5AnYjYLSKBSEwgwYFwpG3LZKyx
 miryXC+q6hv/unoyWz60bv6f1t9OfJ+59mDMyIhtN9EESOtjqV
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="42862131"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <devel@edk2.groups.io>
CC: Laszlo Ersek <lersek@redhat.com>, Jordan Justen
	<jordan.l.justen@intel.com>, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Julien Grall <julien@xen.org>
Subject: [PATCH v3 7/7] OvmfPkg/OvmfXen: Set PcdFSBClock
Date: Mon, 12 Apr 2021 14:30:03 +0100
Message-ID: <20210412133003.146438-8-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210412133003.146438-1-anthony.perard@citrix.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: text/plain

VXBkYXRlIGdFZmlNZGVQa2dUb2tlblNwYWNlR3VpZC5QY2RGU0JDbG9jayBzbyBpdCBjYW4gaGF2
ZSB0aGUgY29ycmVjdAp2YWx1ZSB3aGVuIFNlY1BlaUR4ZVRpbWVyTGliQ3B1IHN0YXJ0IHRvIHVz
ZSBpdCBmb3IgdGhlIEFQSUMgdGltZXIuCgpDdXJyZW50bHksIG5vdGhpbmcgYXBwZWFyIHRvIHVz
ZSB0aGUgdmFsdWUgaW4gUGNkRlNCQ2xvY2sgYmVmb3JlClhlblBsYXRmb3JtUGVpIGhhZCBhIGNo
YW5jZSB0byBzZXQgaXQgZXZlbiB0aG91Z2ggVGltZXJMaWIgaXMgaW5jbHVkZWQKaW4gbW9kdWxl
cyBydW4gYmVmb3JlIFhlblBsYXRmb3JtUGVpLgoKWGVuUGxhdGZvcm1QZWkgZG9lc24ndCB1c2Ug
YW55IG9mIHRoZSBmdW5jdGlvbnMgdGhhdCB3b3VsZCB1c2UgdGhhdAp2YWx1ZS4gTm8gb3RoZXIg
bW9kdWxlcyBpbiB0aGUgUEVJIHBoYXNlIHNlZW1zIHRvIHVzZSB0aGUgVGltZXJMaWIKYmVmb3Jl
IFBjZEZTQkNsb2NrIGlzIHNldC4gVGhlcmUgYXJlIGN1cnJlbnRseSB0d28gb3RoZXIgbW9kdWxl
cyBpbgp0aGUgUEVJIHBoYXNlIHRoYXQgbmVlZHMgdGhlIFRpbWVyTGliOgotIFMzUmVzdW1lMlBl
aSwgYnV0IG9ubHkgYmVjYXVzZSBMb2NhbEFwaWNMaWIgbmVlZHMgaXQsIGJ1dCBub3RoaW5nIGlz
CiAgdXNpbmcgdGhlIHZhbHVlIGZyb20gUGNkRlNCQ2xvY2suCi0gQ3B1TXBQZWksIGJ1dCBJIGJl
bGlldmUgaXQgb25seSBydW5zIGFmdGVyIFhlblBsYXRmb3JtUGVpCgpCZWZvcmUgdGhlIFBFSSBw
aGFzZSwgdGhlcmUncyB0aGUgU0VDIHBoYXNlLCBhbmQgU2VjTWFpbiBuZWVkcwpUaW1lckxpYiBi
ZWNhdXNlIG9mIExvY2FsQXBpY0xpYi4gQW5kIGl0IGluaXRpYWxpc2UgdGhlIEFQSUMgdGltZXJz
CmZvciB0aGUgZGVidWcgYWdlbnQuIEJ1dCBJIGRvbid0IHRoaW5rIGFueSBvZiB0aGUgRGVidWdM
aWIgdGhhdApPdm1mWGVuIGNvdWxkIHVzZSBhcmUgYWN0dWFsbHkgdXNpbmcgdGhlICpEZWxheSBm
dW5jdGlvbnMgaW4gVGltZXJMaWIsCmFuZCBzbyB3b3VsZCBub3QgdXNlIHRoZSB2YWx1ZSBmcm9t
IFBjZEZTQkNsb2NrIHdoaWNoIHdvdWxkIGJlCnVuaW5pdGlhbGlzZWQuCgpBIHNpbXBsZSBydW50
aW1lIHRlc3Qgc2hvd2VkIHRoYXQgVGltZXJMaWIgZG9lc24ndCB1c2UgUGNkRlNCQ2xvY2sKdmFs
dWUgYmVmb3JlIGl0IGlzIHNldC4KClJlZjogaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yNDkwClNpZ25lZC1vZmYtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRo
b255LnBlcmFyZEBjaXRyaXguY29tPgpSZXZpZXdlZC1ieTogTGFzemxvIEVyc2VrIDxsZXJzZWtA
cmVkaGF0LmNvbT4KLS0tCgpOb3RlczoKICAgIHYzOgogICAgLSBjYXN0IEZyZXEgaW4gYXNzZXJ0
CiAgICAtIGZpeCB0eXBvcwogICAgLSB1c2UgY29ycmVjdCBhc3NlcnQgdG8gY2hlY2sgU3RhdHVz
CiAgICB2MjoKICAgIC0ga2VlcCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBQY2RGU0JDbG9jayBiZWNh
dXNlIHRoYXQgaXMgcGFydCBvZiB0aGUgc3ludGF4LgoKIE92bWZQa2cvT3ZtZlhlbi5kc2MgICAg
ICAgICAgICAgICAgICAgICAgIHwgNCArLS0tCiBPdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hlblBs
YXRmb3JtUGVpLmluZiB8IDEgKwogT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaS9YZW4uYyAgICAgICAg
ICAgICAgfCA0ICsrKysKIDMgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0
aW9ucygtKQoKZGlmZiAtLWdpdCBhL092bWZQa2cvT3ZtZlhlbi5kc2MgYi9Pdm1mUGtnL092bWZY
ZW4uZHNjCmluZGV4IDg2YWJlMjc3YzM0OS4uZTUzNTUwM2UzODVkIDEwMDY0NAotLS0gYS9Pdm1m
UGtnL092bWZYZW4uZHNjCisrKyBiL092bWZQa2cvT3ZtZlhlbi5kc2MKQEAgLTQ0Nyw5ICs0NDcs
NiBAQCBbUGNkc0ZpeGVkQXRCdWlsZF0KICAgIyBQb2ludCB0byB0aGUgTWRlTW9kdWxlUGtnL0Fw
cGxpY2F0aW9uL1VpQXBwL1VpQXBwLmluZg0KICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VH
dWlkLlBjZEJvb3RNYW5hZ2VyTWVudUZpbGV8eyAweDIxLCAweGFhLCAweDJjLCAweDQ2LCAweDE0
LCAweDc2LCAweDAzLCAweDQ1LCAweDgzLCAweDZlLCAweDhhLCAweGI2LCAweGY0LCAweDY2LCAw
eDIzLCAweDMxIH0NCiANCi0gICMjIFhlbiB2bGFwaWMncyBmcmVxdWVuY2UgaXMgMTAwIE1Ieg0K
LSAgZ0VmaU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEZTQkNsb2NrfDEwMDAwMDAwMA0KLQ0KICAg
IyBXZSBwb3B1bGF0ZSBEWEUgSVBMIHRhYmxlcyB3aXRoIDFHIHBhZ2VzIHByZWZlcmFibHkgb24g
WGVuDQogICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkVXNlMUdQYWdlVGFibGV8
VFJVRQ0KIA0KQEAgLTQ3Niw2ICs0NzMsNyBAQCBbUGNkc0R5bmFtaWNEZWZhdWx0XQogICBnVWVm
aU92bWZQa2dUb2tlblNwYWNlR3VpZC5QY2RQY2lNbWlvNjRCYXNlfDB4MA0KICAgZ1VlZmlPdm1m
UGtnVG9rZW5TcGFjZUd1aWQuUGNkUGNpTW1pbzY0U2l6ZXwweDgwMDAwMDAwMA0KIA0KKyAgZ0Vm
aU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEZTQkNsb2NrfDEwMDAwMDAwMA0KICAgZ0VmaU1kZVBr
Z1Rva2VuU3BhY2VHdWlkLlBjZFBsYXRmb3JtQm9vdFRpbWVPdXR8MA0KIA0KICAgIyBTZXQgdmlk
ZW8gcmVzb2x1dGlvbiBmb3IgdGV4dCBzZXR1cC4NCmRpZmYgLS1naXQgYS9Pdm1mUGtnL1hlblBs
YXRmb3JtUGVpL1hlblBsYXRmb3JtUGVpLmluZiBiL092bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVu
UGxhdGZvcm1QZWkuaW5mCmluZGV4IDU3MzJkMjE4ODg3MS4uODdkZDRiMjQ2NzlhIDEwMDY0NAot
LS0gYS9Pdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hlblBsYXRmb3JtUGVpLmluZgorKysgYi9Pdm1m
UGtnL1hlblBsYXRmb3JtUGVpL1hlblBsYXRmb3JtUGVpLmluZgpAQCAtODUsNiArODUsNyBAQCBb
UGNkXQogICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRHhlSXBsU3dpdGNoVG9M
b25nTW9kZQ0KICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFVzZTFHUGFnZVRh
YmxlDQogICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkUHRlTWVtb3J5RW5jcnlw
dGlvbkFkZHJlc3NPck1hc2sNCisgIGdFZmlNZGVQa2dUb2tlblNwYWNlR3VpZC5QY2RGU0JDbG9j
aw0KICAgZ0VmaVNlY3VyaXR5UGtnVG9rZW5TcGFjZUd1aWQuUGNkT3B0aW9uUm9tSW1hZ2VWZXJp
ZmljYXRpb25Qb2xpY3kNCiAgIGdVZWZpQ3B1UGtnVG9rZW5TcGFjZUd1aWQuUGNkQ3B1TG9jYWxB
cGljQmFzZUFkZHJlc3MNCiANCmRpZmYgLS1naXQgYS9Pdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hl
bi5jIGIvT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaS9YZW4uYwppbmRleCA4YjA2YmViZDc3MzEuLjJk
YzlmOWZmOGYzYyAxMDA2NDQKLS0tIGEvT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaS9YZW4uYworKysg
Yi9Pdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hlbi5jCkBAIC02MzIsNSArNjMyLDkgQEAgQ2FsaWJy
YXRlTGFwaWNUaW1lciAoCiAgIEZyZXEgPSBEaXZVNjR4NjRSZW1haW5kZXIgKERpdmlkZW5kLCBU
c2NUaWNrMiAtIFRzY1RpY2ssIE5VTEwpOw0KICAgREVCVUcgKChERUJVR19JTkZPLCAiQVBJQyBG
cmVxICUgOGx1IEh6XG4iLCBGcmVxKSk7DQogDQorICBBU1NFUlQgKChVSU5UMzIpRnJlcSA8PSBN
QVhfVUlOVDMyKTsNCisgIFN0YXR1cyA9IFBjZFNldDMyUyAoUGNkRlNCQ2xvY2ssIEZyZXEpOw0K
KyAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCisNCiAgIFVubWFwWGVuUGFnZSAoU2hhcmVk
SW5mbyk7DQogfQ0KLS0gCkFudGhvbnkgUEVSQVJECgo=


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:30:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:30:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109092.208203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwds-0008W6-6M; Mon, 12 Apr 2021 13:30:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109092.208203; Mon, 12 Apr 2021 13: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 1lVwds-0008Vy-1o; Mon, 12 Apr 2021 13:30:16 +0000
Received: by outflank-mailman (input) for mailman id 109092;
 Mon, 12 Apr 2021 13:30:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OvXO=JJ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lVwdq-0008Sj-IW
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:30:14 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7542aa17-3ec1-46b4-94b9-a7edf471214f;
 Mon, 12 Apr 2021 13:30: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: 7542aa17-3ec1-46b4-94b9-a7edf471214f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618234209;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=xZUbtLTyjEiWLCPVXEVqDePxTYjpX+u+jaOjtO0ZwNg=;
  b=VOtTcwk79gM/Qt0T9YYOyjnOX9pZUqWGqVOpGmndq2RIoQzLstywRRtG
   /nHNCsULA6zzz2/FojH/q8QcqwBrML81GP2ZX/O1KxCOVYCJ6IAuEju9D
   QH8W67svmoPxtpzMnXJ01wRUpR0In2M2hQCLAynyaWl8Dak1HC2qZPEKY
   Q=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: bnZS9KaRw5kBuUs9StJn+Xyrj0UtotEFUuo9WHjYT2a++pjb8i9iEtGXoEK4ZIo2ELx4d3J/DR
 tK94ZbVlawtNr/267odPMpmu32/64V00uBMvBSOiS1xKuz6ByvpjCgMf681VGsq1n1xkWHit6+
 lZRUrNd6rqHBIkWIOC5+K5oGzSWVAfbvAUySD+N6yacjug5eJ9GVgTz+XaZ0Vq7cl622sGL0+Y
 Mp+gWT8F+2fcZAwgf4bNypxUZCkFfZUBAPpFqfywOJVvnSanaX0h+Vkgfweol7loIK14UziSMM
 gZU=
X-SBRS: 4.0
X-MesageID: 41232826
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23: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
 ftGQc=
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41232826"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <devel@edk2.groups.io>
CC: Laszlo Ersek <lersek@redhat.com>, Jordan Justen
	<jordan.l.justen@intel.com>, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Julien Grall <julien@xen.org>
Subject: [PATCH v3 1/7] OvmfPkg/XenResetVector: Silent a warning from nasm
Date: Mon, 12 Apr 2021 14:29:57 +0100
Message-ID: <20210412133003.146438-2-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210412133003.146438-1-anthony.perard@citrix.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: text/plain

VG8gYXZvaWQgbmFzbSBnZW5lcmF0aW5nIGEgd2FybmluZywgcmVwbGFjZSB0aGUgbWFjcm8gYnkg
dGhlIHZhbHVlCmV4cGVjdGVkIHRvIGJlIHN0b3JlZCBpbiBlYXguCiAgSWEzMi9YZW5QVkhNYWlu
LmFzbTo3Njogd2FybmluZzogZHdvcmQgZGF0YSBleGNlZWRzIGJvdW5kcwoKUmVwb3J0ZWQtYnk6
IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+ClNpZ25lZC1vZmYtYnk6IEFudGhvbnkg
UEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXguY29tPgpSZXZpZXdlZC1ieTogTGFzemxvIEVy
c2VrIDxsZXJzZWtAcmVkaGF0LmNvbT4KLS0tCiBPdm1mUGtnL1hlblJlc2V0VmVjdG9yL0lhMzIv
WGVuUFZITWFpbi5hc20gfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg
ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9Pdm1mUGtnL1hlblJlc2V0VmVjdG9yL0lhMzIvWGVu
UFZITWFpbi5hc20gYi9Pdm1mUGtnL1hlblJlc2V0VmVjdG9yL0lhMzIvWGVuUFZITWFpbi5hc20K
aW5kZXggMmRmMGYxMmUxOGNiLi5jNzYxZTlkMzA3MjkgMTAwNjQ0Ci0tLSBhL092bWZQa2cvWGVu
UmVzZXRWZWN0b3IvSWEzMi9YZW5QVkhNYWluLmFzbQorKysgYi9Pdm1mUGtnL1hlblJlc2V0VmVj
dG9yL0lhMzIvWGVuUFZITWFpbi5hc20KQEAgLTczLDcgKzczLDcgQEAgeGVuUFZITWFpbjoKICAg
ICA7DQogICAgIDsgcGFyYW1ldGVyIGZvciBGbGF0MzJTZWFyY2hGb3JCZnZCYXNlDQogICAgIDsN
Ci0gICAgbW92ICAgICBlYXgsIEFERFJfT0YoZm91ckdpZ2FieXRlcykNCisgICAgbW92ICAgICBl
YXgsIDAgICA7IEFERFJfT0YoZm91ckdpZ2FieXRlcykNCiAgICAgYWRkICAgICBlYXgsIGVkeCA7
IGFkZCBkZWx0YQ0KIA0KICAgICA7DQotLSAKQW50aG9ueSBQRVJBUkQKCg==


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:30:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:30:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109096.208251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwe8-0000Oa-Mw; Mon, 12 Apr 2021 13:30:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109096.208251; Mon, 12 Apr 2021 13:30:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVwe8-0000OQ-J6; Mon, 12 Apr 2021 13:30:32 +0000
Received: by outflank-mailman (input) for mailman id 109096;
 Mon, 12 Apr 2021 13:30:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OvXO=JJ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lVwe7-0000NV-GV
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:30:31 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5449de6b-e8eb-4398-b0dd-88c3ad11d798;
 Mon, 12 Apr 2021 13:30: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: 5449de6b-e8eb-4398-b0dd-88c3ad11d798
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618234230;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=zMzNWKkCTd/1v9yO4IdYIcsvsu7LkKwTU6SVpgzD9RU=;
  b=TZLKcseCoJIiRnGdxKo0oEctjNYtwKoUQCylpaXNGRRDhsShbMhK6xbR
   GJmLiO2Dsi3qcMjZc0mBQTj5QwOM79dHV2xanPJHdg0BENvlVeGJ5tNky
   d7TATI93j4+WCDYR1WiQhqfLMMOMKEJeA5FQGmSCoEjOXkarHRemUHFBU
   U=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: eD5DP9vxX5LQTSW+pf1qVlZgnbM6gRRuaio//9qwrItnEKV68A8ZcLcvC5boINz5vmXgjTPGOk
 K3omFMAfS0ziUZuEhUBaYI5Nds6E0r4plhu8pymO6ybsq7z6Rmbtv6BsExDOaXq55lmoRajYbs
 aATopE26j53ScX3WC6KuNNoC2KNqo1PT+DLUAvWRndQgQuZoWD+Hbe0v+hAgqwHqafe0ciWMqd
 u/yrYxa9CLsFfAjGZF2AWwUniHtJ4BpnySQQC5J6RXUC12VIYSa5cRqJlgZFhQhcwcbbO+bCJd
 ++U=
X-SBRS: 4.0
X-MesageID: 41388428
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23: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
 ftGQc=
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41388428"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <devel@edk2.groups.io>
CC: Laszlo Ersek <lersek@redhat.com>, Jordan Justen
	<jordan.l.justen@intel.com>, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Julien Grall <julien@xen.org>
Subject: [PATCH v3 5/7] OvmfPkg/XenPlatformPei: Map extra physical address
Date: Mon, 12 Apr 2021 14:30:01 +0100
Message-ID: <20210412133003.146438-6-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210412133003.146438-1-anthony.perard@citrix.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: text/plain

U29tZSBpbmZvcm1hdGlvbiBhdmFpbGFibGUgaW4gYSBYZW4gZ3Vlc3QgY2FuIGJlIG1hcHBlZCBh
bnl3aGVyZSBpbgp0aGUgcGh5c2ljYWwgYWRkcmVzcyBzcGFjZSBhbmQgdGhleSBkb24ndCBuZWVk
IHRvIGJlIGJhY2tlZCBieSBSQU0uCkZvciBleGFtcGxlLCB0aGUgc2hhcmVkIGluZm8gcGFnZS4K
CldoaWxlIGl0J3MgZWFzaWVyIHRvIHB1dCB0aG9zZSBwYWdlcyBhbnl3aGVyZSwgaXQgaXMgYmV0
dGVyIHRvIGF2b2lkCm1hcHBpbmcgaXQgd2hlcmUgdGhlIFJBTSBpcy4gSXQgbWlnaHQgc3BsaXQg
YSBuaWNlIDFHIGd1ZXN0IHBhZ2UgdGFibGUKaW50byA0ayBwYWdlcyBhbmQgdGh1cyByZWR1Y2lu
ZyBwZXJmb3JtYW5jZSBvZiB0aGUgZ3Vlc3Qgd2hlbiBpdAphY2Nlc3NlcyBpdHMgbWVtb3J5LiBB
bHNvIG1hcHBpbmcgYSBwYWdlIGxpa2UgdGhlIHNoYXJlZCBpbmZvIHBhZ2UgYW5kCnRoZW4gdW5t
YXBwaW5nIGl0IG9yIG1hcHBpbmcgaXQgc29tZXdoZXJlIGVsc2Ugd291bGQgbGVhdmUgYSBob2xl
IGluCnRoZSBSQU0gdGhhdCB0aGUgZ3Vlc3Qgd291bGQgcHJvcGFibHkgbm90IGJlIGFibGUgdG8g
dXNlIGFueW1vcmUuCgpTbyB0aGUgcGF0Y2ggaW50cm9kdWNlcyBhIG5ldyBmdW5jdGlvbiB3aGlj
aCBjYW4gYmUgdXNlZCB0byAxOjEKbWFwcGluZyBvZiBndWVzdCBwaHlzaWNhbCBtZW1vcnkgYWJv
dmUgNEcgZHVyaW5nIHRoZSBQRUkgcGhhc2Ugc28gd2UKY2FuIG1hcCB0aGUgWGVuIHNoYXJlZCBw
YWdlcyBvdXRzaWRlIG9mIG1lbW9yeSB0aGF0IGNhbiBiZSB1c2VkIGJ5Cmd1ZXN0LCBhbmQgYXMg
aGlnaCBhcyBwb3NzaWJsZS4KClNpZ25lZC1vZmYtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRob255
LnBlcmFyZEBjaXRyaXguY29tPgpBY2tlZC1ieTogTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVkaGF0
LmNvbT4KLS0tCgpOb3RlczoKICAgIHYzOgogICAgLSBmaXggdHlwb3MKICAgIHYyOgogICAgLSBu
ZXcgcGF0Y2gKCiBPdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hlblBsYXRmb3JtUGVpLmluZiB8ICAx
ICsKIE92bWZQa2cvWGVuUGxhdGZvcm1QZWkvUGxhdGZvcm0uaCAgICAgICAgIHwgIDUgKysKIE92
bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVuLmMgICAgICAgICAgICAgIHwgNzEgKysrKysrKysrKysr
KysrKysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgNzcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdp
dCBhL092bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVuUGxhdGZvcm1QZWkuaW5mIGIvT3ZtZlBrZy9Y
ZW5QbGF0Zm9ybVBlaS9YZW5QbGF0Zm9ybVBlaS5pbmYKaW5kZXggMGVmNzdkYjkyYzAzLi44Nzkw
ZDkwN2QzZWMgMTAwNjQ0Ci0tLSBhL092bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVuUGxhdGZvcm1Q
ZWkuaW5mCisrKyBiL092bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVuUGxhdGZvcm1QZWkuaW5mCkBA
IC02Niw2ICs2Niw3IEBAIFtQY2RdCiAgIGdVZWZpT3ZtZlBrZ1Rva2VuU3BhY2VHdWlkLlBjZE92
bWZQZWlNZW1GdlNpemUNCiAgIGdVZWZpT3ZtZlBrZ1Rva2VuU3BhY2VHdWlkLlBjZE92bWZEeGVN
ZW1GdkJhc2UNCiAgIGdVZWZpT3ZtZlBrZ1Rva2VuU3BhY2VHdWlkLlBjZE92bWZEeGVNZW1GdlNp
emUNCisgIGdVZWZpT3ZtZlBrZ1Rva2VuU3BhY2VHdWlkLlBjZE92bWZTZWNQYWdlVGFibGVzQmFz
ZQ0KICAgZ1VlZmlPdm1mUGtnVG9rZW5TcGFjZUd1aWQuUGNkT3ZtZkxvY2tCb3hTdG9yYWdlQmFz
ZQ0KICAgZ1VlZmlPdm1mUGtnVG9rZW5TcGFjZUd1aWQuUGNkT3ZtZkxvY2tCb3hTdG9yYWdlU2l6
ZQ0KICAgZ1VlZmlPdm1mUGtnVG9rZW5TcGFjZUd1aWQuUGNkT3ZtZkhvc3RCcmlkZ2VQY2lEZXZJ
ZA0KZGlmZiAtLWdpdCBhL092bWZQa2cvWGVuUGxhdGZvcm1QZWkvUGxhdGZvcm0uaCBiL092bWZQ
a2cvWGVuUGxhdGZvcm1QZWkvUGxhdGZvcm0uaAppbmRleCA3NjYxZjRhOGRlMGEuLmU3MGNhNTgw
NzhlYiAxMDA2NDQKLS0tIGEvT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaS9QbGF0Zm9ybS5oCisrKyBi
L092bWZQa2cvWGVuUGxhdGZvcm1QZWkvUGxhdGZvcm0uaApAQCAtMTI3LDYgKzEyNywxMSBAQCBY
ZW5HZXRFODIwTWFwICgKICAgVUlOVDMyICpDb3VudA0KICAgKTsNCiANCitFRklfU1RBVFVTDQor
UGh5c2ljYWxBZGRyZXNzSWRlbnRpdHlNYXBwaW5nICgNCisgIElOIEVGSV9QSFlTSUNBTF9BRERS
RVNTIEFkZHJlc3NUb01hcA0KKyAgKTsNCisNCiBleHRlcm4gRUZJX0JPT1RfTU9ERSBtQm9vdE1v
ZGU7DQogDQogZXh0ZXJuIFVJTlQ4IG1QaHlzTWVtQWRkcmVzc1dpZHRoOw0KZGlmZiAtLWdpdCBh
L092bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVuLmMgYi9Pdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hl
bi5jCmluZGV4IGM0MWZlY2RjNDg2ZS4uYjJhN2QxYzIxZGFjIDEwMDY0NAotLS0gYS9Pdm1mUGtn
L1hlblBsYXRmb3JtUGVpL1hlbi5jCisrKyBiL092bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVuLmMK
QEAgLTE3LDYgKzE3LDggQEAKIC8vDQogLy8gVGhlIExpYnJhcnkgY2xhc3NlcyB0aGlzIG1vZHVs
ZSBjb25zdW1lcw0KIC8vDQorI2luY2x1ZGUgPExpYnJhcnkvQmFzZU1lbW9yeUxpYi5oPg0KKyNp
bmNsdWRlIDxMaWJyYXJ5L0NwdUxpYi5oPg0KICNpbmNsdWRlIDxMaWJyYXJ5L0RlYnVnTGliLmg+
DQogI2luY2x1ZGUgPExpYnJhcnkvSG9iTGliLmg+DQogI2luY2x1ZGUgPExpYnJhcnkvTWVtb3J5
QWxsb2NhdGlvbkxpYi5oPg0KQEAgLTI1LDYgKzI3LDcgQEAKICNpbmNsdWRlIDxJbmR1c3RyeVN0
YW5kYXJkL0U4MjAuaD4NCiAjaW5jbHVkZSA8TGlicmFyeS9SZXNvdXJjZVB1YmxpY2F0aW9uTGli
Lmg+DQogI2luY2x1ZGUgPExpYnJhcnkvTXRyckxpYi5oPg0KKyNpbmNsdWRlIDxJbmR1c3RyeVN0
YW5kYXJkL1BhZ2VUYWJsZS5oPg0KICNpbmNsdWRlIDxJbmR1c3RyeVN0YW5kYXJkL1hlbi9hcmNo
LXg4Ni9odm0vc3RhcnRfaW5mby5oPg0KICNpbmNsdWRlIDxMaWJyYXJ5L1hlbkh5cGVyY2FsbExp
Yi5oPg0KICNpbmNsdWRlIDxJbmR1c3RyeVN0YW5kYXJkL1hlbi9tZW1vcnkuaD4NCkBAIC0zODYs
MyArMzg5LDcxIEBAIEluaXRpYWxpemVYZW4gKAogDQogICByZXR1cm4gRUZJX1NVQ0NFU1M7DQog
fQ0KKw0KK0VGSV9TVEFUVVMNCitQaHlzaWNhbEFkZHJlc3NJZGVudGl0eU1hcHBpbmcgKA0KKyAg
SU4gRUZJX1BIWVNJQ0FMX0FERFJFU1MgICBBZGRyZXNzVG9NYXANCisgICkNCit7DQorICBJTlRO
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEluZGV4Ow0KKyAgUEFHRV9NQVBfQU5EX0RJUkVD
VE9SWV9QT0lOVEVSICAqTDQsICpMMzsNCisgIFBBR0VfVEFCTEVfRU5UUlkgICAgICAgICAgICAg
ICAgKlBhZ2VUYWJsZTsNCisNCisgIERFQlVHICgoREVCVUdfSU5GTywgIk1hcHBpbmcgMToxIG9m
IGFkZHJlc3MgMHglbHhcbiIsIChVSU5UNjQpQWRkcmVzc1RvTWFwKSk7DQorDQorICAvLyBMNCAv
IFRvcCBsZXZlbCBQYWdlIERpcmVjdG9yeSBQb2ludGVycw0KKw0KKyAgTDQgPSAoVk9JRCopKFVJ
TlROKVBjZEdldDMyIChQY2RPdm1mU2VjUGFnZVRhYmxlc0Jhc2UpOw0KKyAgSW5kZXggPSBQTUw0
X09GRlNFVCAoQWRkcmVzc1RvTWFwKTsNCisNCisgIGlmICghTDRbSW5kZXhdLkJpdHMuUHJlc2Vu
dCkgew0KKyAgICBMMyA9IEFsbG9jYXRlUGFnZXMgKDEpOw0KKyAgICBpZiAoTDMgPT0gTlVMTCkg
ew0KKyAgICAgIHJldHVybiBFRklfT1VUX09GX1JFU09VUkNFUzsNCisgICAgfQ0KKw0KKyAgICBa
ZXJvTWVtIChMMywgRUZJX1BBR0VfU0laRSk7DQorDQorICAgIEw0W0luZGV4XS5CaXRzLlJlYWRX
cml0ZSA9IDE7DQorICAgIEw0W0luZGV4XS5CaXRzLkFjY2Vzc2VkID0gMTsNCisgICAgTDRbSW5k
ZXhdLkJpdHMuUGFnZVRhYmxlQmFzZUFkZHJlc3MgPSAoRUZJX1BIWVNJQ0FMX0FERFJFU1MpTDMg
Pj4gMTI7DQorICAgIEw0W0luZGV4XS5CaXRzLlByZXNlbnQgPSAxOw0KKyAgfQ0KKw0KKyAgLy8g
TDMgLyBOZXh0IGxldmVsIFBhZ2UgRGlyZWN0b3J5IFBvaW50ZXJzDQorDQorICBMMyA9IChWT0lE
KikoRUZJX1BIWVNJQ0FMX0FERFJFU1MpKEw0W0luZGV4XS5CaXRzLlBhZ2VUYWJsZUJhc2VBZGRy
ZXNzIDw8IDEyKTsNCisgIEluZGV4ID0gUERQX09GRlNFVCAoQWRkcmVzc1RvTWFwKTsNCisNCisg
IGlmICghTDNbSW5kZXhdLkJpdHMuUHJlc2VudCkgew0KKyAgICBQYWdlVGFibGUgPSBBbGxvY2F0
ZVBhZ2VzICgxKTsNCisgICAgaWYgKFBhZ2VUYWJsZSA9PSBOVUxMKSB7DQorICAgICAgcmV0dXJu
IEVGSV9PVVRfT0ZfUkVTT1VSQ0VTOw0KKyAgICB9DQorDQorICAgIFplcm9NZW0gKFBhZ2VUYWJs
ZSwgRUZJX1BBR0VfU0laRSk7DQorDQorICAgIEwzW0luZGV4XS5CaXRzLlJlYWRXcml0ZSA9IDE7
DQorICAgIEwzW0luZGV4XS5CaXRzLkFjY2Vzc2VkID0gMTsNCisgICAgTDNbSW5kZXhdLkJpdHMu
UGFnZVRhYmxlQmFzZUFkZHJlc3MgPSAoRUZJX1BIWVNJQ0FMX0FERFJFU1MpUGFnZVRhYmxlID4+
IDEyOw0KKyAgICBMM1tJbmRleF0uQml0cy5QcmVzZW50ID0gMTsNCisgIH0NCisNCisgIC8vIEwy
IC8gUGFnZSBUYWJsZSBFbnRyaWVzDQorDQorICBQYWdlVGFibGUgPSAoVk9JRCopKEVGSV9QSFlT
SUNBTF9BRERSRVNTKShMM1tJbmRleF0uQml0cy5QYWdlVGFibGVCYXNlQWRkcmVzcyA8PCAxMik7
DQorICBJbmRleCA9IFBERV9PRkZTRVQgKEFkZHJlc3NUb01hcCk7DQorDQorICBpZiAoIVBhZ2VU
YWJsZVtJbmRleF0uQml0cy5QcmVzZW50KSB7DQorICAgIFBhZ2VUYWJsZVtJbmRleF0uQml0cy5S
ZWFkV3JpdGUgPSAxOw0KKyAgICBQYWdlVGFibGVbSW5kZXhdLkJpdHMuQWNjZXNzZWQgPSAxOw0K
KyAgICBQYWdlVGFibGVbSW5kZXhdLkJpdHMuRGlydHkgPSAxOw0KKyAgICBQYWdlVGFibGVbSW5k
ZXhdLkJpdHMuTXVzdEJlMSA9IDE7DQorICAgIFBhZ2VUYWJsZVtJbmRleF0uQml0cy5QYWdlVGFi
bGVCYXNlQWRkcmVzcyA9IEFkZHJlc3NUb01hcCA+PiAyMTsNCisgICAgUGFnZVRhYmxlW0luZGV4
XS5CaXRzLlByZXNlbnQgPSAxOw0KKyAgfQ0KKw0KKyAgQ3B1Rmx1c2hUbGIgKCk7DQorDQorICBy
ZXR1cm4gRUZJX1NVQ0NFU1M7DQorfQ0KLS0gCkFudGhvbnkgUEVSQVJECgo=


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:30:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:30:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109098.208263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVweC-0000Tu-B1; Mon, 12 Apr 2021 13:30:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109098.208263; Mon, 12 Apr 2021 13: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 1lVweC-0000Tl-6s; Mon, 12 Apr 2021 13:30:36 +0000
Received: by outflank-mailman (input) for mailman id 109098;
 Mon, 12 Apr 2021 13:30:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OvXO=JJ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lVweA-0000NV-JT
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:30:34 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cc970c17-cdd8-4be9-b534-428bc5a2b458;
 Mon, 12 Apr 2021 13:30: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: cc970c17-cdd8-4be9-b534-428bc5a2b458
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618234231;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=YMwvpxjol+5XMA2+kpnSOFwEAYxNgKgPugLl5J8fKTA=;
  b=FJQkaSMOE4ycIdPV05yuVTewO8skOu9KPGBbcDEsYNF6S7ex5EJxRnY5
   UJWIt326UYclgo/kwvPh/gdKtZuCvJGr4qnyRkZuoy1Q2EVNzAD8Tmldv
   XhsMXpDdWiXbWVMzzMtsftMtEsgUAPM2Emnv8l90PkcQwe2Eg4t52RHlm
   w=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: cBmtvDv21tXItbUsYqKtim7utUFFFwb5H9VT4Z5BcR2sMNrSA16OQ/BWAWCqrDN+fDjGNqkknV
 O77ifgn/z5AwO8Si0Q6gAspg2Oyy5oIWXaeO3R8uprQkghj4DY7/crFNhPWqIOFPMIUMlYAx1S
 uIVNruyt7xmQa4QNeZOMgnQo0MoMmP41qxjN9McKkENtRYN4P7PXZsrxVcwqarBzNkEQFAVBr2
 SiVYCKkg2vIYKfoJ/wPAxEUO9nxaGxL7GZcXXF9YKxXKp8leFauLqndfOG42IFJEX5mH/0CKSK
 YSw=
X-SBRS: 4.0
X-MesageID: 41388431
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:YviZnKyL9o/2HgrWLQfPKrPwr71zdoIgy1knxilNYDZ+G/b2q+
 mFmvMH2RjozAsLUHY7ltyafIWGS3XQ9Zl6iLNhW4uKdg/gpWeuMcVe/ZLvqgeQfBHW2+ZB2c
 5bEpRWJ8b3CTFB4PrSwA79KNo4xcnCzabAv5a9815IbSVHL55t9B14DAHzKDwTeCBjCYAiHJ
 SRouprzgDBRV0tYs62BmYIUoH4zrWh/q7OWhIICwUq7wODl1qTmdvHOiOVwwsEVHd3yaoimF
 K16jDR3LmpsP2w13bnuVP70pI+orfc4+oGIMSNj8QPQw+c6TqVWA==
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41388431"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <devel@edk2.groups.io>
CC: Laszlo Ersek <lersek@redhat.com>, Jordan Justen
	<jordan.l.justen@intel.com>, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Julien Grall <julien@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>
Subject: [PATCH v3 6/7] OvmfPkg/XenPlatformPei: Calibrate APIC timer frequency
Date: Mon, 12 Apr 2021 14:30:02 +0100
Message-ID: <20210412133003.146438-7-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210412133003.146438-1-anthony.perard@citrix.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64

Q2FsY3VsYXRlIHRoZSBmcmVxdWVuY3kgb2YgdGhlIEFQSUMgdGltZXIgdGhhdCBYZW4gcHJvdmlk
ZXMuCgpFdmVuIHRob3VnaCB0aGUgZnJlcXVlbmN5IGlzIGN1cnJlbnRseSBoYXJkLWNvZGVkLCBp
dCBpc24ndCBwYXJ0IG9mCnRoZSBwdWJsaWMgQUJJIHRoYXQgWGVuIHByb3ZpZGVzIGFuZCB0aHVz
IG1heSBjaGFuZ2UgYXQgYW55IHRpbWUuIE9WTUYKbmVlZHMgdG8gZGV0ZXJtaW5lIHRoZSBmcmVx
dWVuY3kgYnkgYW4gb3RoZXIgbWVhbi4KCkZvcnR1bmF0ZWx5LCBYZW4gcHJvdmlkZXMgYSB3YXkg
dG8gZGV0ZXJtaW5lcyB0aGUgZnJlcXVlbmN5IG9mIHRoZQpUU0MsIHNvIHdlIGNhbiB1c2UgVFND
IHRvIGNhbGlicmF0ZSB0aGUgZnJlcXVlbmN5IG9mIHRoZSBBUElDIHRpbWVyLgpUaGF0IGluZm9y
bWF0aW9uIGlzIGZvdW5kIGluIHRoZSBzaGFyZWRfaW5mbyBwYWdlIHdoaWNoIHdlIG1hcCBhbmQK
dW5tYXAgb25jZSBkb25lIChYZW5CdXNEeGUgaXMgZ29pbmcgdG8gbWFwIHRoZSBwYWdlIHNvbWV3
aGVyZSBlbHNlKS4KClRoZSBzaGFyZWRfaW5mbyBwYWdlIGlzIG1hcHBlZCBhdCB0aGUgaGlnaGVz
dCBwaHlzaWNhbCBhZGRyZXNzIGFsbG93ZWQKYXMgaXQgZG9lc24ndCBuZWVkIHRvIGJlIGluIHRo
ZSBSQU0sIHRodXMgdGhlcmUncyBhIGNhbGwgdG8gdXBkYXRlIHRoZQpwYWdlIHRhYmxlLgoKVGhl
IGNhbGN1bGF0ZWQgZnJlcXVlbmN5IGlzIG9ubHkgbG9nZ2VkIGluIHRoaXMgcGF0Y2gsIGl0IHdp
bGwgYmUgdXNlZAppbiBhIGZvbGxvd2luZyBwYXRjaC4KClJlZjogaHR0cHM6Ly9idWd6aWxsYS50
aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDkwClNpZ25lZC1vZmYtYnk6IEFudGhvbnkg
UEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXguY29tPgpBY2tlZC1ieTogTGFzemxvIEVyc2Vr
IDxsZXJzZWtAcmVkaGF0LmNvbT4KLS0tCgpOb3RlczoKICAgIENDOiBSb2dlciBQYXUgTW9ubsOp
IDxyb2dlci5wYXVAY2l0cml4LmNvbT4KICAgIAogICAgdjM6CiAgICAtIGZpeCBkZWJ1ZyBmb3Jt
YXQgc3RyaW5ncwogICAgLSBmaXggY29kaW5nIHN0eWxlCiAgICAKICAgIHYyOgogICAgLSBmaXgg
Q2FtZWxDYXNlcwogICAgLSBVc2UgVTY0IG11bHRpcGxpY2F0aW9uIGFuZCBkaXZpc2lvbiBoZWxw
ZXJzCiAgICAtIGRvbid0IHJlYWQgVHNjU2hpZnQgZnJvbSB0aGUgU2hhcmVkSW5mbyBwYWdlIGFn
YWluCiAgICAtIGNoYW5nZSB0aGUgbG9jYXRpb24gb2YgdGhlIHNoYXJlZCBpbmZvIHBhZ2UgdG8g
YmUgb3V0c2lkZSBvZiB0aGUgcmFtCiAgICAtIGNoZWNrIGZvciBvdmVyZmxvdyBpbiBYZW5EZWxh
eQogICAgLSBjaGVjayBmb3Igb3ZlcmZsb3cgd2hlbiBjYWxjdWxhdGluZyB0aGUgY2FsY3VsYXRp
bmcgQVBJQyBmcmVxdWVuY3kKCiBPdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hlblBsYXRmb3JtUGVp
LmluZiB8ICAgMiArCiBPdm1mUGtnL1hlblBsYXRmb3JtUGVpL1BsYXRmb3JtLmggICAgICAgICB8
ICAgNSArCiBPdm1mUGtnL1hlblBsYXRmb3JtUGVpL1BsYXRmb3JtLmMgICAgICAgICB8ICAgMSAr
CiBPdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hlbi5jICAgICAgICAgICAgICB8IDE3NyArKysrKysr
KysrKysrKysrKysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDE4NSBpbnNlcnRpb25zKCspCgpkaWZm
IC0tZ2l0IGEvT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaS9YZW5QbGF0Zm9ybVBlaS5pbmYgYi9Pdm1m
UGtnL1hlblBsYXRmb3JtUGVpL1hlblBsYXRmb3JtUGVpLmluZgppbmRleCA4NzkwZDkwN2QzZWMu
LjU3MzJkMjE4ODg3MSAxMDA2NDQKLS0tIGEvT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaS9YZW5QbGF0
Zm9ybVBlaS5pbmYKKysrIGIvT3ZtZlBrZy9YZW5QbGF0Zm9ybVBlaS9YZW5QbGF0Zm9ybVBlaS5p
bmYKQEAgLTUyLDYgKzUyLDcgQEAgW0xpYnJhcnlDbGFzc2VzXQogICBEZWJ1Z0xpYg0KICAgSG9i
TGliDQogICBJb0xpYg0KKyAgTG9jYWxBcGljTGliDQogICBQY2lMaWINCiAgIFJlc291cmNlUHVi
bGljYXRpb25MaWINCiAgIFBlaVNlcnZpY2VzTGliDQpAQCAtNTksNiArNjAsNyBAQCBbTGlicmFy
eUNsYXNzZXNdCiAgIE10cnJMaWINCiAgIE1lbUVuY3J5cHRTZXZMaWINCiAgIFBjZExpYg0KKyAg
U2FmZUludExpYg0KICAgWGVuSHlwZXJjYWxsTGliDQogDQogW1BjZF0NCmRpZmYgLS1naXQgYS9P
dm1mUGtnL1hlblBsYXRmb3JtUGVpL1BsYXRmb3JtLmggYi9Pdm1mUGtnL1hlblBsYXRmb3JtUGVp
L1BsYXRmb3JtLmgKaW5kZXggZTcwY2E1ODA3OGViLi43N2Q4OGZjMTU5ZDcgMTAwNjQ0Ci0tLSBh
L092bWZQa2cvWGVuUGxhdGZvcm1QZWkvUGxhdGZvcm0uaAorKysgYi9Pdm1mUGtnL1hlblBsYXRm
b3JtUGVpL1BsYXRmb3JtLmgKQEAgLTEzMiw2ICsxMzIsMTEgQEAgUGh5c2ljYWxBZGRyZXNzSWRl
bnRpdHlNYXBwaW5nICgKICAgSU4gRUZJX1BIWVNJQ0FMX0FERFJFU1MgQWRkcmVzc1RvTWFwDQog
ICApOw0KIA0KK1ZPSUQNCitDYWxpYnJhdGVMYXBpY1RpbWVyICgNCisgIFZPSUQNCisgICk7DQor
DQogZXh0ZXJuIEVGSV9CT09UX01PREUgbUJvb3RNb2RlOw0KIA0KIGV4dGVybiBVSU5UOCBtUGh5
c01lbUFkZHJlc3NXaWR0aDsNCmRpZmYgLS1naXQgYS9Pdm1mUGtnL1hlblBsYXRmb3JtUGVpL1Bs
YXRmb3JtLmMgYi9Pdm1mUGtnL1hlblBsYXRmb3JtUGVpL1BsYXRmb3JtLmMKaW5kZXggNzE3ZmQw
YWIxYTQ1Li5lOTUxMWViNDBjNjIgMTAwNjQ0Ci0tLSBhL092bWZQa2cvWGVuUGxhdGZvcm1QZWkv
UGxhdGZvcm0uYworKysgYi9Pdm1mUGtnL1hlblBsYXRmb3JtUGVpL1BsYXRmb3JtLmMKQEAgLTQ0
OCw2ICs0NDgsNyBAQCBJbml0aWFsaXplWGVuUGxhdGZvcm0gKAogICBJbml0aWFsaXplUmFtUmVn
aW9ucyAoKTsNCiANCiAgIEluaXRpYWxpemVYZW4gKCk7DQorICBDYWxpYnJhdGVMYXBpY1RpbWVy
ICgpOw0KIA0KICAgaWYgKG1Cb290TW9kZSAhPSBCT09UX09OX1MzX1JFU1VNRSkgew0KICAgICBS
ZXNlcnZlRW11VmFyaWFibGVOdlN0b3JlICgpOw0KZGlmZiAtLWdpdCBhL092bWZQa2cvWGVuUGxh
dGZvcm1QZWkvWGVuLmMgYi9Pdm1mUGtnL1hlblBsYXRmb3JtUGVpL1hlbi5jCmluZGV4IGIyYTdk
MWMyMWRhYy4uOGIwNmJlYmQ3NzMxIDEwMDY0NAotLS0gYS9Pdm1mUGtnL1hlblBsYXRmb3JtUGVp
L1hlbi5jCisrKyBiL092bWZQa2cvWGVuUGxhdGZvcm1QZWkvWGVuLmMKQEAgLTIxLDggKzIxLDEw
IEBACiAjaW5jbHVkZSA8TGlicmFyeS9DcHVMaWIuaD4NCiAjaW5jbHVkZSA8TGlicmFyeS9EZWJ1
Z0xpYi5oPg0KICNpbmNsdWRlIDxMaWJyYXJ5L0hvYkxpYi5oPg0KKyNpbmNsdWRlIDxMaWJyYXJ5
L0xvY2FsQXBpY0xpYi5oPg0KICNpbmNsdWRlIDxMaWJyYXJ5L01lbW9yeUFsbG9jYXRpb25MaWIu
aD4NCiAjaW5jbHVkZSA8TGlicmFyeS9QY2RMaWIuaD4NCisjaW5jbHVkZSA8TGlicmFyeS9TYWZl
SW50TGliLmg+DQogI2luY2x1ZGUgPEd1aWQvWGVuSW5mby5oPg0KICNpbmNsdWRlIDxJbmR1c3Ry
eVN0YW5kYXJkL0U4MjAuaD4NCiAjaW5jbHVkZSA8TGlicmFyeS9SZXNvdXJjZVB1YmxpY2F0aW9u
TGliLmg+DQpAQCAtNDU3LDMgKzQ1OSwxNzggQEAgUGh5c2ljYWxBZGRyZXNzSWRlbnRpdHlNYXBw
aW5nICgKIA0KICAgcmV0dXJuIEVGSV9TVUNDRVNTOw0KIH0NCisNCitTVEFUSUMNCitFRklfU1RB
VFVTDQorTWFwU2hhcmVkSW5mb1BhZ2UgKA0KKyAgSU4gVk9JRCAqUGFnZVB0cg0KKyAgKQ0KK3sN
CisgIHhlbl9hZGRfdG9fcGh5c21hcF90ICBQYXJhbWV0ZXJzOw0KKyAgSU5UTiAgICAgICAgICAg
ICAgICAgIFJldHVybkNvZGU7DQorDQorICBQYXJhbWV0ZXJzLmRvbWlkID0gRE9NSURfU0VMRjsN
CisgIFBhcmFtZXRlcnMuc3BhY2UgPSBYRU5NQVBTUEFDRV9zaGFyZWRfaW5mbzsNCisgIFBhcmFt
ZXRlcnMuaWR4ID0gMDsNCisgIFBhcmFtZXRlcnMuZ3BmbiA9IChVSU5UTilQYWdlUHRyID4+IEVG
SV9QQUdFX1NISUZUOw0KKyAgUmV0dXJuQ29kZSA9IFhlbkh5cGVyY2FsbE1lbW9yeU9wIChYRU5N
RU1fYWRkX3RvX3BoeXNtYXAsICZQYXJhbWV0ZXJzKTsNCisgIGlmIChSZXR1cm5Db2RlICE9IDAp
IHsNCisgICAgcmV0dXJuIEVGSV9OT19NQVBQSU5HOw0KKyAgfQ0KKyAgcmV0dXJuIEVGSV9TVUND
RVNTOw0KK30NCisNCitTVEFUSUMNCitWT0lEDQorVW5tYXBYZW5QYWdlICgNCisgIElOIFZPSUQg
KlBhZ2VQdHINCisgICkNCit7DQorICB4ZW5fcmVtb3ZlX2Zyb21fcGh5c21hcF90IFBhcmFtZXRl
cnM7DQorICBJTlROICAgICAgICAgICAgICAgICAgICAgIFJldHVybkNvZGU7DQorDQorICBQYXJh
bWV0ZXJzLmRvbWlkID0gRE9NSURfU0VMRjsNCisgIFBhcmFtZXRlcnMuZ3BmbiA9IChVSU5UTilQ
YWdlUHRyID4+IEVGSV9QQUdFX1NISUZUOw0KKyAgUmV0dXJuQ29kZSA9IFhlbkh5cGVyY2FsbE1l
bW9yeU9wIChYRU5NRU1fcmVtb3ZlX2Zyb21fcGh5c21hcCwgJlBhcmFtZXRlcnMpOw0KKyAgQVNT
RVJUIChSZXR1cm5Db2RlID09IDApOw0KK30NCisNCisNCitTVEFUSUMNCitVSU5UNjQNCitHZXRD
cHVGcmVxICgNCisgIElOIFhFTl9WQ1BVX1RJTUVfSU5GTyAqVmNwdVRpbWUNCisgICkNCit7DQor
ICBVSU5UMzIgVmVyc2lvbjsNCisgIFVJTlQzMiBUc2NUb1N5c3RlbU11bHRpcGxpZXI7DQorICBJ
TlQ4ICAgVHNjU2hpZnQ7DQorICBVSU5UNjQgQ3B1RnJlcTsNCisNCisgIGRvIHsNCisgICAgVmVy
c2lvbiA9IFZjcHVUaW1lLT5WZXJzaW9uOw0KKyAgICBNZW1vcnlGZW5jZSAoKTsNCisgICAgVHNj
VG9TeXN0ZW1NdWx0aXBsaWVyID0gVmNwdVRpbWUtPlRzY1RvU3lzdGVtTXVsdGlwbGllcjsNCisg
ICAgVHNjU2hpZnQgPSBWY3B1VGltZS0+VHNjU2hpZnQ7DQorICAgIE1lbW9yeUZlbmNlICgpOw0K
KyAgfSB3aGlsZSAoKChWZXJzaW9uICYgMSkgIT0gMCkgJiYgKFZlcnNpb24gIT0gVmNwdVRpbWUt
PlZlcnNpb24pKTsNCisNCisgIENwdUZyZXEgPSBEaXZVNjR4MzIgKExTaGlmdFU2NCAoMTAwMDAw
MDAwMFVMTCwgMzIpLCBUc2NUb1N5c3RlbU11bHRpcGxpZXIpOw0KKyAgaWYgKFRzY1NoaWZ0ID49
IDApIHsNCisgICAgICBDcHVGcmVxID0gUlNoaWZ0VTY0IChDcHVGcmVxLCBUc2NTaGlmdCk7DQor
ICB9IGVsc2Ugew0KKyAgICAgIENwdUZyZXEgPSBMU2hpZnRVNjQgKENwdUZyZXEsIC1Uc2NTaGlm
dCk7DQorICB9DQorICByZXR1cm4gQ3B1RnJlcTsNCit9DQorDQorU1RBVElDDQorVk9JRA0KK1hl
bkRlbGF5ICgNCisgIElOIFhFTl9WQ1BVX1RJTUVfSU5GTyAqVmNwdVRpbWVJbmZvLA0KKyAgSU4g
VUlOVDY0ICAgICAgICAgICAgIERlbGF5TnMNCisgICkNCit7DQorICBVSU5UNjQgICAgICAgIFRp
Y2s7DQorICBVSU5UNjQgICAgICAgIENwdUZyZXE7DQorICBVSU5UNjQgICAgICAgIERlbGF5Ow0K
KyAgVUlOVDY0ICAgICAgICBEZWxheVRpY2s7DQorICBVSU5UNjQgICAgICAgIE5ld1RpY2s7DQor
ICBSRVRVUk5fU1RBVFVTIFN0YXR1czsNCisNCisgIFRpY2sgPSBBc21SZWFkVHNjICgpOw0KKw0K
KyAgQ3B1RnJlcSA9IEdldENwdUZyZXEgKFZjcHVUaW1lSW5mbyk7DQorICBTdGF0dXMgPSBTYWZl
VWludDY0TXVsdCAoRGVsYXlOcywgQ3B1RnJlcSwgJkRlbGF5KTsNCisgIGlmIChFRklfRVJST1Ig
KFN0YXR1cykpIHsNCisgICAgREVCVUcgKChERUJVR19FUlJPUiwNCisgICAgICAiWGVuRGVsYXkg
KCVsdSBucyk6IGRlbGF5IHRvbyBiaWcgaW4gcmVsYXRpb24gdG8gQ1BVIGZyZXEgJWx1IEh6XG4i
LA0KKyAgICAgIERlbGF5TnMsIENwdUZyZXEpKTsNCisgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3Rh
dHVzKTsNCisgICAgQ3B1RGVhZExvb3AgKCk7DQorICB9DQorDQorICBEZWxheVRpY2sgPSBEaXZV
NjR4MzIgKERlbGF5LCAxMDAwMDAwMDAwKTsNCisNCisgIE5ld1RpY2sgPSBUaWNrICsgRGVsYXlU
aWNrOw0KKw0KKyAgLy8NCisgIC8vIENoZWNrIGZvciBvdmVyZmxvdw0KKyAgLy8NCisgIGlmIChO
ZXdUaWNrIDwgVGljaykgew0KKyAgICAvLw0KKyAgICAvLyBPdmVyZmxvdywgd2FpdCBmb3IgVFND
IHRvIGFsc28gb3ZlcmZsb3cNCisgICAgLy8NCisgICAgd2hpbGUgKEFzbVJlYWRUc2MgKCkgPj0g
VGljaykgew0KKyAgICAgIENwdVBhdXNlICgpOw0KKyAgICB9DQorICB9DQorDQorICB3aGlsZSAo
QXNtUmVhZFRzYyAoKSA8PSBOZXdUaWNrKSB7DQorICAgIENwdVBhdXNlICgpOw0KKyAgfQ0KK30N
CisNCisNCisvKioNCisgIENhbGN1bGF0ZSB0aGUgZnJlcXVlbmN5IG9mIHRoZSBMb2NhbCBBcGlj
IFRpbWVyDQorKiovDQorVk9JRA0KK0NhbGlicmF0ZUxhcGljVGltZXIgKA0KKyAgVk9JRA0KKyAg
KQ0KK3sNCisgIFhFTl9TSEFSRURfSU5GTyAgICAgICAqU2hhcmVkSW5mbzsNCisgIFhFTl9WQ1BV
X1RJTUVfSU5GTyAgICAqVmNwdVRpbWVJbmZvOw0KKyAgVUlOVDMyICAgICAgICAgICAgICAgIFRp
bWVyVGljaywgVGltZXJUaWNrMiwgRGlmZlRpbWVyOw0KKyAgVUlOVDY0ICAgICAgICAgICAgICAg
IFRzY1RpY2ssIFRzY1RpY2syOw0KKyAgVUlOVDY0ICAgICAgICAgICAgICAgIEZyZXE7DQorICBV
SU5UNjQgICAgICAgICAgICAgICAgRGl2aWRlbmQ7DQorICBFRklfU1RBVFVTICAgICAgICAgICAg
U3RhdHVzOw0KKw0KKw0KKyAgU2hhcmVkSW5mbyA9IChWT0lEKikoKDFVTEwgPDwgbVBoeXNNZW1B
ZGRyZXNzV2lkdGgpIC0gRUZJX1BBR0VfU0laRSk7DQorICBTdGF0dXMgPSBQaHlzaWNhbEFkZHJl
c3NJZGVudGl0eU1hcHBpbmcgKChFRklfUEhZU0lDQUxfQUREUkVTUylTaGFyZWRJbmZvKTsNCisg
IGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsNCisgICAgREVCVUcgKChERUJVR19FUlJPUiwNCisg
ICAgICAiRmFpbGVkIHRvIGFkZCBwYWdlIHRhYmxlIGVudHJ5IGZvciBYZW4gc2hhcmVkIGluZm8g
cGFnZTogJXJcbiIsDQorICAgICAgU3RhdHVzKSk7DQorICAgIEFTU0VSVF9FRklfRVJST1IgKFN0
YXR1cyk7DQorICAgIHJldHVybjsNCisgIH0NCisNCisgIFN0YXR1cyA9IE1hcFNoYXJlZEluZm9Q
YWdlIChTaGFyZWRJbmZvKTsNCisgIGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsNCisgICAgREVC
VUcgKChERUJVR19FUlJPUiwgIkZhaWxlZCB0byBtYXAgWGVuJ3Mgc2hhcmVkIGluZm8gcGFnZTog
JXJcbiIsDQorICAgICAgU3RhdHVzKSk7DQorICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7
DQorICAgIHJldHVybjsNCisgIH0NCisNCisgIFZjcHVUaW1lSW5mbyA9ICZTaGFyZWRJbmZvLT5W
Y3B1SW5mb1swXS5UaW1lOw0KKw0KKyAgSW5pdGlhbGl6ZUFwaWNUaW1lciAoMSwgTUFYX1VJTlQz
MiwgVFJVRSwgMCk7DQorICBEaXNhYmxlQXBpY1RpbWVySW50ZXJydXB0ICgpOw0KKw0KKyAgVGlt
ZXJUaWNrID0gR2V0QXBpY1RpbWVyQ3VycmVudENvdW50ICgpOw0KKyAgVHNjVGljayA9IEFzbVJl
YWRUc2MgKCk7DQorICBYZW5EZWxheSAoVmNwdVRpbWVJbmZvLCAxMDAwMDAwVUxMKTsNCisgIFRp
bWVyVGljazIgPSBHZXRBcGljVGltZXJDdXJyZW50Q291bnQgKCk7DQorICBUc2NUaWNrMiA9IEFz
bVJlYWRUc2MgKCk7DQorDQorDQorICBEaWZmVGltZXIgPSBUaW1lclRpY2sgLSBUaW1lclRpY2sy
Ow0KKyAgU3RhdHVzID0gU2FmZVVpbnQ2NE11bHQgKEdldENwdUZyZXEgKFZjcHVUaW1lSW5mbyks
IERpZmZUaW1lciwgJkRpdmlkZW5kKTsNCisgIGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsNCisg
ICAgREVCVUcgKChERUJVR19FUlJPUiwgIm92ZXJmbG93IHdoaWxlIGNhbGN1bGF0aW5nIEFQSUMg
ZnJlcXVlbmN5XG4iKSk7DQorICAgIERFQlVHICgoREVCVUdfRVJST1IsICJDUFUgZnJlcTogJWx1
IEh6OyBBUElDIHRpbWVyIHRpY2sgY291bnQgZm9yIDEgbXM6ICV1XG4iLA0KKyAgICAgIEdldENw
dUZyZXEgKFZjcHVUaW1lSW5mbyksIERpZmZUaW1lcikpOw0KKyAgICBBU1NFUlRfRUZJX0VSUk9S
IChTdGF0dXMpOw0KKyAgICBDcHVEZWFkTG9vcCAoKTsNCisgIH0NCisNCisgIEZyZXEgPSBEaXZV
NjR4NjRSZW1haW5kZXIgKERpdmlkZW5kLCBUc2NUaWNrMiAtIFRzY1RpY2ssIE5VTEwpOw0KKyAg
REVCVUcgKChERUJVR19JTkZPLCAiQVBJQyBGcmVxICUgOGx1IEh6XG4iLCBGcmVxKSk7DQorDQor
ICBVbm1hcFhlblBhZ2UgKFNoYXJlZEluZm8pOw0KK30NCi0tIApBbnRob255IFBFUkFSRAoK


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:53:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:53:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109132.208275 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVx06-0002rM-2y; Mon, 12 Apr 2021 13:53:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109132.208275; Mon, 12 Apr 2021 13:53: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 1lVx05-0002rF-VP; Mon, 12 Apr 2021 13:53:13 +0000
Received: by outflank-mailman (input) for mailman id 109132;
 Mon, 12 Apr 2021 13:53:12 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lVx04-0002r7-N8; Mon, 12 Apr 2021 13:53:12 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lVx04-0006Ae-Ft; Mon, 12 Apr 2021 13:53:12 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lVx04-00049e-7d; Mon, 12 Apr 2021 13:53:12 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVx04-0007CT-76; Mon, 12 Apr 2021 13:53: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=4qdKb05G6jvhlWAbXk+TNjDAvT6YcdFRdX5DYi3iN6o=; b=4N4GyHZgVaVTCniYqMvp4P6nCv
	i1v4B72LbZZmwXtU6BlM3O7ISZo/QOyFI+zP9zH+H241i0C0pdi7PEacIR3LzbIoiAkyrMR7Z5bDM
	JJBX1bsL4VYrLDSHd8vvD6TUjNUhAuioSrjMerMDKzVsCC4js1D8JchSwGF10E2vSHKM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161051-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161051: 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=be167ac0f0268074880b961c936519f756ac045b
X-Osstest-Versions-That:
    xen=935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 13:53:12 +0000

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

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                  be167ac0f0268074880b961c936519f756ac045b
baseline version:
 xen                  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a

Last test of basis   160865  2021-04-09 12:03:12 Z    3 days
Testing same since   161051  2021-04-12 11:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ian Jackson <ian.jackson@eu.citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Wei Liu <wl@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
   935d501ccb..be167ac0f0  be167ac0f0268074880b961c936519f756ac045b -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 13:59:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 13:59:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109143.208308 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVx68-0003B5-4Q; Mon, 12 Apr 2021 13:59:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109143.208308; Mon, 12 Apr 2021 13:59: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 1lVx68-0003Aw-1F; Mon, 12 Apr 2021 13:59:28 +0000
Received: by outflank-mailman (input) for mailman id 109143;
 Mon, 12 Apr 2021 13:59:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VKKJ=JJ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lVx67-00039a-Bj
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 13:59:27 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.51]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 816a13e4-e3dd-4cda-9d84-8a46fde6ccea;
 Mon, 12 Apr 2021 13:59:18 +0000 (UTC)
Received: from AM5PR04CA0025.eurprd04.prod.outlook.com (2603:10a6:206:1::38)
 by PA4PR08MB6157.eurprd08.prod.outlook.com (2603:10a6:102:e3::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Mon, 12 Apr
 2021 13:59:16 +0000
Received: from AM5EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:1:cafe::b4) by AM5PR04CA0025.outlook.office365.com
 (2603:10a6:206:1::38) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Mon, 12 Apr 2021 13:59:16 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT059.mail.protection.outlook.com (10.152.17.193) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Mon, 12 Apr 2021 13:59:15 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Mon, 12 Apr 2021 13:59:15 +0000
Received: from e9d9854bf71d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 0BC9A634-9AC7-4534-B744-1841FBE25C35.1; 
 Mon, 12 Apr 2021 13:59:07 +0000
Received: from EUR03-AM5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e9d9854bf71d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 12 Apr 2021 13:59:07 +0000
Received: from DB7PR08MB3626.eurprd08.prod.outlook.com (2603:10a6:10:4a::16)
 by DB6PR0801MB1829.eurprd08.prod.outlook.com (2603:10a6:4:39::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Mon, 12 Apr
 2021 13:59:05 +0000
Received: from DB7PR08MB3626.eurprd08.prod.outlook.com
 ([fe80::a05a:b249:56a2:c570]) by DB7PR08MB3626.eurprd08.prod.outlook.com
 ([fe80::a05a:b249:56a2:c570%4]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 13:59:05 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0378.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18e::23) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.22 via Frontend Transport; Mon, 12 Apr 2021 13: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: 816a13e4-e3dd-4cda-9d84-8a46fde6ccea
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rAeEwcj23krVwC3C/RIwtZr+s+XvL2+19gc2q6ein7g=;
 b=8HIdyMu+yKpKWmyhvcZFFi1Cicun9tiRFyJHyOEdi6wXIy0/mMSa2Qkf2R9UmBO9mUKRxXsNu8IvxxR7runYrYNPTEkMmd4jYx8NLCthBWZicCkWYM0LuYglTbsoV87+CXe9VAh/vRMBKcGefzn1LeQpVSrfEHphN4Ye/hLT2aE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 055d40984ed435e4
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ugxoh04+c9y6E0o72rGBnE/ozrz8QPvAnQfZUBeV/lXCN7wnCfzXjao3uqf+QywQoi4sK9Lh4Wkzgh3X01/ugHdi6LOQ+Jqpuf2nyAYTTeqax5kT98cAjS288naeves8zPDVNIA9lyWShEcB4UNiLvucFNTJ+fA9uJedqrU8kLn/61TfUoppbnz4Z3jcK+Y+byFXBV5C0PAQ5N7rV0l1BYAk1iFfbl0TABjHcOXyUIaIuqqBV+KoH/YLRw8tli95sDfcGwbEZqcQPFM3o/J3GCtKfeMM2QW3wga1G+MBj0SJGbS8aNI1Upg1tEHO2HDsvNXVWNcHm0EsVeJf3Oznfw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rAeEwcj23krVwC3C/RIwtZr+s+XvL2+19gc2q6ein7g=;
 b=QetbBT9eUj1d7z6db3QSS+V3pW2JnYKjplGxNdRnYXlWUzp0inTAgADjQKzrrrOGJF9bSOmj6XBMzfzEFnHMpWMaxRE7416dfeVJ7nCY6MFNeq4ARf9y5euIh65Djf8n8A/2TIxN5M8jtsjoNZXPvhlZsSUcwn9vk58dtxsiluW408I4WRiGtETH3YkxKfCAHPeEyAvsbc5ZjYDovmQp9Vr5FjJWaxPATZmPyrPbp1GeXra4gXXEP9kQ90OGzPGqIK0aoB1l3LeItwTjugUIFxBVV1QsNy8ZZhxOitCJlSG+wJrFj4GMh5GFa8eqsGGP+/InMoHgbKu8WUhSr1LSnQ==
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=rAeEwcj23krVwC3C/RIwtZr+s+XvL2+19gc2q6ein7g=;
 b=8HIdyMu+yKpKWmyhvcZFFi1Cicun9tiRFyJHyOEdi6wXIy0/mMSa2Qkf2R9UmBO9mUKRxXsNu8IvxxR7runYrYNPTEkMmd4jYx8NLCthBWZicCkWYM0LuYglTbsoV87+CXe9VAh/vRMBKcGefzn1LeQpVSrfEHphN4Ye/hLT2aE=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v3 2/4] xen/arm: Handle cases when hardware_domain is NULL
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <b1242714-e5f3-1e6b-f1bd-e9e53326fda7@suse.com>
Date: Mon, 12 Apr 2021 14:58:58 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>,
 Rahul Singh <rahul.singh@arm.com>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <9A775115-36A9-418F-B945-A778DE98672F@arm.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-3-luca.fancellu@arm.com>
 <b1242714-e5f3-1e6b-f1bd-e9e53326fda7@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0378.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18e::23) To DB7PR08MB3626.eurprd08.prod.outlook.com
 (2603:10a6:10:4a::16)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 24e64d31-7ae4-4eef-e259-08d8fdbb28ee
X-MS-TrafficTypeDiagnostic: DB6PR0801MB1829:|PA4PR08MB6157:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<PA4PR08MB615739301F5EA00994242CEFE4709@PA4PR08MB6157.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 NWC8lvAx6Jj55KZ30oQD+LT8WARNoFioeb9ptJLdzhiZJhr0daEulePTzZYURs4QQFGh3YkmGm27Tqf7L9tlwYl5GMQ9c1oFzHESZ0mXNt2qp3GU1dwWOOL4TzXQCHeWEYwAKx9qreaXboCpOtV8G/UWfLETU/Ckrk1HmWFQqo+bwg7fsPIJKlfy96mz8EFfrP0IC02lP91kj+uU55cfRhsW1vPV+MtLLa+BRaH3iSr2KuignM71WMKmpbj/FhHwWalHrEDF8MQnAiAyOEtphsSlqV7XkYJ46KTXYbCocbDBXMXsMeH/JXF9s7bP9kikMhdi8kMqEkYK2aKiv77NR15z0FgruVPT7GH5bZOlICK9xZ2PIZm36XZdiufFEQCwWsFJBC7trX5HDMa9p8PqYVRHUATzMoe+QmrxmbU8Hyf6E3PRqXKJvGb2TCfGVjQTaU1WARjsI3XqfgHcBiOZyzl6nzgGfAaHdPXfmxMtXwwHzkZm1kqMgvJBEchONTdVufBABOm1hmWQUKy1DT+0Ufedwb7YYKbwh7/DZMiPrjWhqYW6DNNAGIroPiq0MPZ+IuG1aBNoLqk1YXDcCKbzFvsRW9mbr/PumiOA86Or0OiGXAACpqSE57LEof2XoMmxsiKSTCirCDiG76wwkRLQtW7F/8FHzYl48Ma5JjtCpz8/l/BK5axi31z7FmlxFnKa
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3626.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39860400002)(396003)(136003)(346002)(366004)(26005)(16526019)(2906002)(66946007)(6916009)(2616005)(52116002)(44832011)(956004)(36756003)(53546011)(186003)(5660300002)(66476007)(66556008)(6486002)(86362001)(8936002)(83380400001)(316002)(8676002)(4326008)(38350700002)(54906003)(478600001)(6666004)(38100700002)(33656002)(7696005)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB1829
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	cc34d5be-6f73-4293-55d6-08d8fdbb226f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QVoNciQomGDY7/z5agzF7+U+TwhQ/FM2Zs9JhJAVK8dp8LAiP5IBIV4bY4CcNvWKDihbQafBXtHpfJdg7196Z3Ur4Dof+PmkTESbEA28qNDL9zQPXuGYHq5s54LkW5x+NaSrTh76lJ7bX5Ya2tvFs3VZ92Je3g+w2DAjgUeL86wpswvC2U8TVTk2WpM5keaB3mga27RfWWJkyifJA9jcr+/cB1/3S3bsxG+7bhU/6cG7fZJeLQflYueQrizBSGo+Cs35WPHWSPx4lhpGgD5tZBbGQeKhqVOGiHbKXZN1hel7X9DUklM2uYm2BndzgZzJwr3tkJVqGPBEIvTiZf6JQChbUgX+nqnk6FY5NSWpVYKz4SJF0JupmnC6BNduCVCj9Pa4Ax8zTFe0RIt8LWklPn/ggHjfr55zuobcm4pjfEAMNzerdK74zJe/USx921NufpV/12YmzoYPfa7qELJfCknOpWUiExLnD+cB+f0h4Wx7TKKj4H9rajyIfJoHDEb7RkMhbtRBXIqoLsoGZe/354PiPD1bIJBO8ApWFtb94AjBQe5MgdL7Ybo+a++KMlIp+/9HVcuzpJ092DxWAXblcjA193HfoYdrnVCoPe/ZhM+QsVHlel0ZpXN+7W584hSzt2+pcrQG1PSUKV3XxiX5T928h0Y+4xz0tqYMVx0r+ps=
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:(4636009)(396003)(39860400002)(346002)(136003)(376002)(46966006)(36840700001)(86362001)(70206006)(16526019)(70586007)(7696005)(82740400003)(186003)(81166007)(44832011)(8676002)(336012)(53546011)(6666004)(47076005)(26005)(356005)(83380400001)(82310400003)(2616005)(2906002)(956004)(6486002)(33656002)(54906003)(316002)(478600001)(6862004)(4326008)(8936002)(36860700001)(5660300002)(36756003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 13:59:15.9841
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 24e64d31-7ae4-4eef-e259-08d8fdbb28ee
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:
	AM5EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6157



> On 12 Apr 2021, at 12:03, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 12.04.2021 12:52, Luca Fancellu wrote:
>> --- a/xen/include/xen/sched.h
>> +++ b/xen/include/xen/sched.h
>> @@ -1022,6 +1022,9 @@ static always_inline bool is_hardware_domain(const=
 struct domain *d)
>>     if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
>>         return false;
>>=20
>> +    if ( !d )
>> +        return false;
>> +
>>     return evaluate_nospec(d =3D=3D hardware_domain);
>> }
>=20
> On v2 I did say on the respective code that was here (and my
> suggestion of this alternative adjustment): "Can you point out
> code paths where d may actually be NULL, and where [...] would
> not behave as intended (i.e. where bad speculation would
> result)?"
>=20
> Since you've taken the suggestion as-is, and since the commit
> message says nothing in either direction here, did you actually
> verify that there's no abuse of speculation possible with this
> extra return path? And did you find any caller at all which may
> pass NULL into here?

Hi Jan,

I=E2=80=99ve analysed the code and seems that there are no path that calls=
=20
Is_hardware_domain() with a NULL domain, however I found this
function in xen/arch/arm/irq.c:

bool irq_type_set_by_domain(const struct domain *d)
{
    return is_hardware_domain(d);
}

That is calling directly is_hardware_domain and it is global.
It can be the case that a future code can call irq_type_set_by_domain
potentially with a null domain...
I introduced a check for the domain for that reason, do you think that
maybe it=E2=80=99s better to put that check on the irq_type_set_by_domain i=
nstead?

Thank you for your feedback.

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:03:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:03:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109159.208320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVx9s-0004I3-RP; Mon, 12 Apr 2021 14:03:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109159.208320; Mon, 12 Apr 2021 14:03: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 1lVx9s-0004Hv-Nz; Mon, 12 Apr 2021 14:03:20 +0000
Received: by outflank-mailman (input) for mailman id 109159;
 Mon, 12 Apr 2021 14:03:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVx9r-0004Ho-QA
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:03:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 85bd67ce-3b16-466b-9eb9-3fd6868f97e4;
 Mon, 12 Apr 2021 14:03:18 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1C967AF95;
 Mon, 12 Apr 2021 14:03: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: 85bd67ce-3b16-466b-9eb9-3fd6868f97e4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236198; 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=v6EqbMCQW6SqgAsAlTr0O+JrHO7RPM5H9busLoF28rs=;
	b=Amq5hkVx3qTy5gHxdUJVo+2TZI0TxRF1KRM7zewUicTPygIbQUmBEUBC2VEN5xV1Po6OJv
	ft2WBIFEEPM0SfN0K3LYmlKFzH7b6ftOEGFBpHergLg9IBoCIeqErlXtpJn5+XDgWGG2Sc
	dYQNOALKGjBUarkZ9LIXwqS8uUlGBD0=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 00/12] x86/p2m: restrict more code to build just for HVM
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Message-ID: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Date: Mon, 12 Apr 2021 16:03:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Since it was brought up in the discussion of v1: I think the end
goal is to be for mm/p2m.c to become a HVM-only file. Any "wrappers"
also trying to take care of !paging_mode_translate() guests ought to
be moved elsewhere. To see what actually still needs taking care of,
incrementally extending the #ifdef CONFIG_HVM regions there is the
way to go imo.

Compared to v1 there are many new patches here plus build fixes to
two of the three remaining ones from v1.

01: p2m: set_{foreign,mmio}_p2m_entry() are HVM-only
02: p2m: {,un}map_mmio_regions() are HVM-only
03: mm: the gva_to_gfn() hook is HVM-only
04: AMD/IOMMU: guest IOMMU support is for HVM only
05: p2m: change_entry_type_* hooks are HVM-only
06: p2m: hardware-log-dirty related hooks are HVM-only
07: p2m: the recalc hook is HVM-only
08: mem-access is HVM-only
09: make mem-paging configuarable and default it to off for being unsupported
10: p2m: {get,set}_entry hooks and p2m-pt.c are HVM-only
11: p2m: write_p2m_entry_{pre,post} hooks are HVM-only
12: p2m: re-arrange struct p2m_domain

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:05:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:05:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109166.208331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxCC-0004VW-9O; Mon, 12 Apr 2021 14:05:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109166.208331; Mon, 12 Apr 2021 14: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 1lVxCC-0004VP-5J; Mon, 12 Apr 2021 14:05:44 +0000
Received: by outflank-mailman (input) for mailman id 109166;
 Mon, 12 Apr 2021 14:05:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxCB-0004VK-0W
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:05:43 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f02c09b5-056f-4ead-b681-faa7d1b36791;
 Mon, 12 Apr 2021 14:05:42 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 98D1FB01E;
 Mon, 12 Apr 2021 14:05: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: f02c09b5-056f-4ead-b681-faa7d1b36791
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236341; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=GLEUa36booore5XSCfEDziIQ+mcpNZX/p32JNakBHwk=;
	b=SS83GvZqCvFDCgiSwblJOWFQICySlrJyZPLwoOel04La+L1HF0n2LcpaworO1RamZTrmC5
	tTlinwGNKZ8FRV/IbanBDr4+Qda+N2j6hd4hwswIVFDprFuXPttu2YM0Fcy80dNAgSWPxO
	c+IubP1DA0XpTjoxX78nHKiARWncH94=
Subject: [PATCH v2 01/12] x86/p2m: set_{foreign,mmio}_p2m_entry() are HVM-only
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <4b842581-e24d-6b74-eef5-7ac48f0ff0a4@suse.com>
Date: Mon, 12 Apr 2021 16:05:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Extend a respective #ifdef from inside set_typed_p2m_entry() to around
all three functions. Add ASSERT_UNREACHABLE() to the latter one's safety
check path.

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

--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -1260,6 +1260,8 @@ int p2m_finish_type_change(struct domain
     return rc;
 }
 
+#ifdef CONFIG_HVM
+
 /*
  * Returns:
  *    0              for success
@@ -1280,7 +1282,10 @@ static int set_typed_p2m_entry(struct do
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
 
     if ( !paging_mode_translate(d) )
+    {
+        ASSERT_UNREACHABLE();
         return -EIO;
+    }
 
     gfn_lock(p2m, gfn, order);
     omfn = p2m->get_entry(p2m, gfn, &ot, &a, 0, &cur_order, NULL);
@@ -1313,7 +1318,6 @@ static int set_typed_p2m_entry(struct do
     if ( rc )
         gdprintk(XENLOG_ERR, "p2m_set_entry: %#lx:%u -> %d (0x%"PRI_mfn")\n",
                  gfn_l, order, rc, mfn_x(mfn));
-#ifdef CONFIG_HVM
     else if ( p2m_is_pod(ot) )
     {
         pod_lock(p2m);
@@ -1321,7 +1325,6 @@ static int set_typed_p2m_entry(struct do
         BUG_ON(p2m->pod.entry_count < 0);
         pod_unlock(p2m);
     }
-#endif
     gfn_unlock(p2m, gfn, order);
 
     return rc;
@@ -1349,6 +1352,8 @@ int set_mmio_p2m_entry(struct domain *d,
                                p2m_get_hostp2m(d)->default_access);
 }
 
+#endif /* CONFIG_HVM */
+
 int set_identity_p2m_entry(struct domain *d, unsigned long gfn_l,
                            p2m_access_t p2ma, unsigned int flag)
 {



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:06:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:06:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109170.208344 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxD4-0004bw-Ks; Mon, 12 Apr 2021 14:06:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109170.208344; Mon, 12 Apr 2021 14: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 1lVxD4-0004bp-Fs; Mon, 12 Apr 2021 14:06:38 +0000
Received: by outflank-mailman (input) for mailman id 109170;
 Mon, 12 Apr 2021 14:06:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxD2-0004bj-Kp
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:06:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f2c8750e-5202-4437-a2e3-2945403f8ef4;
 Mon, 12 Apr 2021 14:06:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 16245AF95;
 Mon, 12 Apr 2021 14:06: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: f2c8750e-5202-4437-a2e3-2945403f8ef4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236395; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=8uQ/wa7eMeHMjVMRgN6IKy+IwI8MpBIUTSpk+7O8K0I=;
	b=RB5oQlm4pj3/Bdb62wLXgfUZbOofUqr8OW8w78UzEsCkMZubMlRn0MEqOsXfOV0YY1LFf0
	Q3pmhjXDgEheMBg2++lQAPmd2NVPotlg1OwdQYHxddHU528ISkLTwI/2vWYRuko4JEVazE
	r+mpp5BuIRaA7PV+juDfpkwS67EouoM=
Subject: [PATCH v2 02/12] x86/p2m: {,un}map_mmio_regions() are HVM-only
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <7f8ca70d-8bbe-bd5d-533a-c5ea81dc91a2@suse.com>
Date: Mon, 12 Apr 2021 16:06:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Mirror the "translated" check the functions do to do_domctl(), allowing
the calls to be DCEd by the compiler. Add ASSERT_UNREACHABLE() to the
original checks.

Also arrange for {set,clear}_mmio_p2m_entry() and
{set,clear}_identity_p2m_entry() to respectively live next to each
other, such that clear_mmio_p2m_entry() can also be covered by the
#ifdef already covering set_mmio_p2m_entry().

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: Fix build.
---
Arguably the original checks, returning success, could also be dropped
at this point.

--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -1352,52 +1352,6 @@ int set_mmio_p2m_entry(struct domain *d,
                                p2m_get_hostp2m(d)->default_access);
 }
 
-#endif /* CONFIG_HVM */
-
-int set_identity_p2m_entry(struct domain *d, unsigned long gfn_l,
-                           p2m_access_t p2ma, unsigned int flag)
-{
-    p2m_type_t p2mt;
-    p2m_access_t a;
-    gfn_t gfn = _gfn(gfn_l);
-    mfn_t mfn;
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    int ret;
-
-    if ( !paging_mode_translate(p2m->domain) )
-    {
-        if ( !is_iommu_enabled(d) )
-            return 0;
-        return iommu_legacy_map(d, _dfn(gfn_l), _mfn(gfn_l),
-                                1ul << PAGE_ORDER_4K,
-                                IOMMUF_readable | IOMMUF_writable);
-    }
-
-    gfn_lock(p2m, gfn, 0);
-
-    mfn = p2m->get_entry(p2m, gfn, &p2mt, &a, 0, NULL, NULL);
-
-    if ( p2mt == p2m_invalid || p2mt == p2m_mmio_dm )
-        ret = p2m_set_entry(p2m, gfn, _mfn(gfn_l), PAGE_ORDER_4K,
-                            p2m_mmio_direct, p2ma);
-    else if ( mfn_x(mfn) == gfn_l && p2mt == p2m_mmio_direct && a == p2ma )
-        ret = 0;
-    else
-    {
-        if ( flag & XEN_DOMCTL_DEV_RDM_RELAXED )
-            ret = 0;
-        else
-            ret = -EBUSY;
-        printk(XENLOG_G_WARNING
-               "Cannot setup identity map d%d:%lx,"
-               " gfn already mapped to %lx.\n",
-               d->domain_id, gfn_l, mfn_x(mfn));
-    }
-
-    gfn_unlock(p2m, gfn, 0);
-    return ret;
-}
-
 /*
  * Returns:
  *    0        for success
@@ -1447,6 +1401,52 @@ int clear_mmio_p2m_entry(struct domain *
     return rc;
 }
 
+#endif /* CONFIG_HVM */
+
+int set_identity_p2m_entry(struct domain *d, unsigned long gfn_l,
+                           p2m_access_t p2ma, unsigned int flag)
+{
+    p2m_type_t p2mt;
+    p2m_access_t a;
+    gfn_t gfn = _gfn(gfn_l);
+    mfn_t mfn;
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    int ret;
+
+    if ( !paging_mode_translate(p2m->domain) )
+    {
+        if ( !is_iommu_enabled(d) )
+            return 0;
+        return iommu_legacy_map(d, _dfn(gfn_l), _mfn(gfn_l),
+                                1ul << PAGE_ORDER_4K,
+                                IOMMUF_readable | IOMMUF_writable);
+    }
+
+    gfn_lock(p2m, gfn, 0);
+
+    mfn = p2m->get_entry(p2m, gfn, &p2mt, &a, 0, NULL, NULL);
+
+    if ( p2mt == p2m_invalid || p2mt == p2m_mmio_dm )
+        ret = p2m_set_entry(p2m, gfn, _mfn(gfn_l), PAGE_ORDER_4K,
+                            p2m_mmio_direct, p2ma);
+    else if ( mfn_x(mfn) == gfn_l && p2mt == p2m_mmio_direct && a == p2ma )
+        ret = 0;
+    else
+    {
+        if ( flag & XEN_DOMCTL_DEV_RDM_RELAXED )
+            ret = 0;
+        else
+            ret = -EBUSY;
+        printk(XENLOG_G_WARNING
+               "Cannot setup identity map d%d:%lx,"
+               " gfn already mapped to %lx.\n",
+               d->domain_id, gfn_l, mfn_x(mfn));
+    }
+
+    gfn_unlock(p2m, gfn, 0);
+    return ret;
+}
+
 int clear_identity_p2m_entry(struct domain *d, unsigned long gfn_l)
 {
     p2m_type_t p2mt;
@@ -1892,6 +1892,8 @@ void *map_domain_gfn(struct p2m_domain *
     return map_domain_page(*mfn);
 }
 
+#ifdef CONFIG_HVM
+
 static unsigned int mmio_order(const struct domain *d,
                                unsigned long start_fn, unsigned long nr)
 {
@@ -1932,7 +1934,10 @@ int map_mmio_regions(struct domain *d,
     unsigned int iter, order;
 
     if ( !paging_mode_translate(d) )
+    {
+        ASSERT_UNREACHABLE();
         return 0;
+    }
 
     for ( iter = i = 0; i < nr && iter < MAP_MMIO_MAX_ITER;
           i += 1UL << order, ++iter )
@@ -1964,7 +1969,10 @@ int unmap_mmio_regions(struct domain *d,
     unsigned int iter, order;
 
     if ( !paging_mode_translate(d) )
+    {
+        ASSERT_UNREACHABLE();
         return 0;
+    }
 
     for ( iter = i = 0; i < nr && iter < MAP_MMIO_MAX_ITER;
           i += 1UL << order, ++iter )
@@ -1986,8 +1994,6 @@ int unmap_mmio_regions(struct domain *d,
     return i == nr ? 0 : i ?: ret;
 }
 
-#ifdef CONFIG_HVM
-
 int altp2m_get_effective_entry(struct p2m_domain *ap2m, gfn_t gfn, mfn_t *mfn,
                                p2m_type_t *t, p2m_access_t *a,
                                bool prepopulate)
--- a/xen/common/domctl.c
+++ b/xen/common/domctl.c
@@ -750,6 +750,9 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
         if ( ret )
             break;
 
+        if ( !paging_mode_translate(d) )
+            break;
+
         if ( add )
         {
             printk(XENLOG_G_DEBUG
--- a/xen/include/asm-x86/p2m.h
+++ b/xen/include/asm-x86/p2m.h
@@ -678,11 +678,19 @@ int p2m_finish_type_change(struct domain
 int p2m_is_logdirty_range(struct p2m_domain *, unsigned long start,
                           unsigned long end);
 
+#ifdef CONFIG_HVM
 /* Set mmio addresses in the p2m table (for pass-through) */
 int set_mmio_p2m_entry(struct domain *d, gfn_t gfn, mfn_t mfn,
                        unsigned int order);
 int clear_mmio_p2m_entry(struct domain *d, unsigned long gfn, mfn_t mfn,
                          unsigned int order);
+#else
+static inline int clear_mmio_p2m_entry(struct domain *d, unsigned long gfn,
+                                       mfn_t mfn, unsigned int order)
+{
+    return -EIO;
+}
+#endif
 
 /* Set identity addresses in the p2m table (for pass-through) */
 int set_identity_p2m_entry(struct domain *d, unsigned long gfn,



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:07:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:07:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109173.208356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxDd-0004hy-Se; Mon, 12 Apr 2021 14:07:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109173.208356; Mon, 12 Apr 2021 14: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 1lVxDd-0004hr-PF; Mon, 12 Apr 2021 14:07:13 +0000
Received: by outflank-mailman (input) for mailman id 109173;
 Mon, 12 Apr 2021 14:07:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxDc-0004hl-W8
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:07:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e4421fbc-ab4a-4cf0-85cd-98c7ae45dba4;
 Mon, 12 Apr 2021 14:07:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 53B18B01E;
 Mon, 12 Apr 2021 14: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: e4421fbc-ab4a-4cf0-85cd-98c7ae45dba4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236431; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=a9yqIDWLh5sL3LqtehE9yMAlebDtEpvP4PzPBcBcKu8=;
	b=gBemrL+XQb9PjafG9Nm2xTEp1U7Txo/JkyIlEp4O5dpko8uD0OYBsuYOUhIrSBJaQee3IA
	JzRwWFglL54Bz88RFVWnPUUmIPFU7kV9Qp7skw1zn8uFwh4EUzklxXsqV4w9sybHeQCHTs
	ZcRx3kZKf8C0lG54XssEVqOM7uFj+zQ=
Subject: [PATCH v2 03/12] x86/mm: the gva_to_gfn() hook is HVM-only
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>, Tim Deegan <tim@xen.org>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <ff26a66b-3cee-5f92-01a4-6096e7d28556@suse.com>
Date: Mon, 12 Apr 2021 16:07:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

As is the adjacent ga_to_gfn() one as well as paging_gva_to_gfn().

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: Fix !SHADOW_PAGING && !HVM build.

--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -1793,7 +1793,6 @@ void np2m_schedule(int dir)
         p2m_unlock(p2m);
     }
 }
-#endif
 
 unsigned long paging_gva_to_gfn(struct vcpu *v,
                                 unsigned long va,
@@ -1844,6 +1843,8 @@ unsigned long paging_gva_to_gfn(struct v
     return hostmode->gva_to_gfn(v, hostp2m, va, pfec);
 }
 
+#endif /* CONFIG_HVM */
+
 /*
  * If the map is non-NULL, we leave this function having acquired an extra ref
  * on mfn_to_page(*mfn).  In all cases, *pfec contains appropriate
--- a/xen/arch/x86/mm/shadow/multi.c
+++ b/xen/arch/x86/mm/shadow/multi.c
@@ -3030,6 +3030,7 @@ static bool sh_invlpg(struct vcpu *v, un
     return true;
 }
 
+#ifdef CONFIG_HVM
 
 static unsigned long
 sh_gva_to_gfn(struct vcpu *v, struct p2m_domain *p2m,
@@ -3063,6 +3064,7 @@ sh_gva_to_gfn(struct vcpu *v, struct p2m
     return gfn_x(gfn);
 }
 
+#endif /* CONFIG_HVM */
 
 static inline void
 sh_update_linear_entries(struct vcpu *v)
@@ -4183,7 +4185,9 @@ int sh_audit_l4_table(struct vcpu *v, mf
 const struct paging_mode sh_paging_mode = {
     .page_fault                    = sh_page_fault,
     .invlpg                        = sh_invlpg,
+#ifdef CONFIG_HVM
     .gva_to_gfn                    = sh_gva_to_gfn,
+#endif
     .update_cr3                    = sh_update_cr3,
     .update_paging_modes           = shadow_update_paging_modes,
     .flush_tlb                     = shadow_flush_tlb,
--- a/xen/arch/x86/mm/shadow/none.c
+++ b/xen/arch/x86/mm/shadow/none.c
@@ -43,12 +43,14 @@ static bool _invlpg(struct vcpu *v, unsi
     return true;
 }
 
+#ifdef CONFIG_HVM
 static unsigned long _gva_to_gfn(struct vcpu *v, struct p2m_domain *p2m,
                                  unsigned long va, uint32_t *pfec)
 {
     ASSERT_UNREACHABLE();
     return gfn_x(INVALID_GFN);
 }
+#endif
 
 static void _update_cr3(struct vcpu *v, int do_locking, bool noflush)
 {
@@ -63,7 +65,9 @@ static void _update_paging_modes(struct
 static const struct paging_mode sh_paging_none = {
     .page_fault                    = _page_fault,
     .invlpg                        = _invlpg,
+#ifdef CONFIG_HVM
     .gva_to_gfn                    = _gva_to_gfn,
+#endif
     .update_cr3                    = _update_cr3,
     .update_paging_modes           = _update_paging_modes,
 };
--- a/xen/include/asm-x86/paging.h
+++ b/xen/include/asm-x86/paging.h
@@ -127,6 +127,7 @@ struct paging_mode {
                                             struct cpu_user_regs *regs);
     bool          (*invlpg                )(struct vcpu *v,
                                             unsigned long linear);
+#ifdef CONFIG_HVM
     unsigned long (*gva_to_gfn            )(struct vcpu *v,
                                             struct p2m_domain *p2m,
                                             unsigned long va,
@@ -136,6 +137,7 @@ struct paging_mode {
                                             unsigned long cr3,
                                             paddr_t ga, uint32_t *pfec,
                                             unsigned int *page_order);
+#endif
     void          (*update_cr3            )(struct vcpu *v, int do_locking,
                                             bool noflush);
     void          (*update_paging_modes   )(struct vcpu *v);
@@ -287,6 +289,8 @@ unsigned long paging_gva_to_gfn(struct v
                                 unsigned long va,
                                 uint32_t *pfec);
 
+#ifdef CONFIG_HVM
+
 /* Translate a guest address using a particular CR3 value.  This is used
  * to by nested HAP code, to walk the guest-supplied NPT tables as if
  * they were pagetables.
@@ -305,6 +309,8 @@ static inline unsigned long paging_ga_to
         page_order);
 }
 
+#endif /* CONFIG_HVM */
+
 /* Update all the things that are derived from the guest's CR3.
  * Called when the guest changes CR3; the caller can then use v->arch.cr3
  * as the value to load into the host CR3 to schedule this vcpu */



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:07:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:07:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109179.208368 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxEH-0004qV-53; Mon, 12 Apr 2021 14:07:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109179.208368; Mon, 12 Apr 2021 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 1lVxEH-0004qO-1y; Mon, 12 Apr 2021 14:07:53 +0000
Received: by outflank-mailman (input) for mailman id 109179;
 Mon, 12 Apr 2021 14:07:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxEG-0004qG-3W
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:07:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4545c696-18c8-4dca-85ae-b40de634959f;
 Mon, 12 Apr 2021 14:07:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AC32CAF95;
 Mon, 12 Apr 2021 14:07: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: 4545c696-18c8-4dca-85ae-b40de634959f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236470; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=3wdroPuGfKuZZGJHeiqndko2WBYxJIqNkRfSw3fJY0U=;
	b=uGiwk5AfKObcwe/w+SEj7r8Dy134Nk/Mg6Pe6QjbzK6xyF8Nm2ECE9yJcwJKiCkAWkWdel
	dLZKkpfqnFIQz+PVk0ZCylxM93jXm559EyYni4xj1AKHuj7VNbDXbZhpdBk3fESMVDHfl8
	JzmARMwxoEkzyvro6EDt9idcrp71qe0=
Subject: [PATCH v2 04/12] AMD/IOMMU: guest IOMMU support is for HVM only
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>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <187fa031-c237-2298-6b39-2c4a63b06c0f@suse.com>
Date: Mon, 12 Apr 2021 16:07:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Generally all of this is dead code anyway, but there's a caller of
guest_iommu_add_ppr_log(), and the code itself calls
p2m_change_type_one(), which is about to become HVM-only. Hence this
code, short of deleting it altogether, needs to become properly HVM-
only as well.

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

--- a/xen/drivers/passthrough/amd/Makefile
+++ b/xen/drivers/passthrough/amd/Makefile
@@ -5,4 +5,4 @@ obj-y += pci_amd_iommu.o
 obj-bin-y += iommu_acpi.init.o
 obj-y += iommu_intr.o
 obj-y += iommu_cmd.o
-obj-y += iommu_guest.o
+obj-$(CONFIG_HVM) += iommu_guest.o
--- a/xen/drivers/passthrough/amd/iommu.h
+++ b/xen/drivers/passthrough/amd/iommu.h
@@ -307,12 +307,16 @@ int __must_check amd_iommu_suspend(void)
 void amd_iommu_crash_shutdown(void);
 
 /* guest iommu support */
+#ifdef CONFIG_HVM
 void amd_iommu_send_guest_cmd(struct amd_iommu *iommu, u32 cmd[]);
 void guest_iommu_add_ppr_log(struct domain *d, u32 entry[]);
 void guest_iommu_add_event_log(struct domain *d, u32 entry[]);
 int guest_iommu_init(struct domain* d);
 void guest_iommu_destroy(struct domain *d);
 int guest_iommu_set_base(struct domain *d, uint64_t base);
+#else
+static inline void guest_iommu_add_ppr_log(struct domain *d, uint32_t entry[]) {}
+#endif
 
 static inline u32 get_field_from_reg_u32(u32 reg_value, u32 mask, u32 shift)
 {



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:08:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:08:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109183.208380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxEu-0004xS-GN; Mon, 12 Apr 2021 14:08:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109183.208380; Mon, 12 Apr 2021 14:08: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 1lVxEu-0004xL-BS; Mon, 12 Apr 2021 14:08:32 +0000
Received: by outflank-mailman (input) for mailman id 109183;
 Mon, 12 Apr 2021 14:08:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxEt-0004xB-Gt
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:08:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4e88388e-dfcc-4294-b7da-687fb1edbe64;
 Mon, 12 Apr 2021 14:08:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A3D3EAF9E;
 Mon, 12 Apr 2021 14:08: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: 4e88388e-dfcc-4294-b7da-687fb1edbe64
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236509; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=9KpoNaBMCbO0fmRRrVeB3gVS03fXDEugPkClPlqCtAg=;
	b=bJe3w45OELSouUI+EWLG+hkkmhlLwNESyZhNCbUgDe/pyKn4ZVjRWaNrabcmz2APCmMnWY
	M9x//jc3vD8UYt0qBdANB+J5G4MQx1WgVwIQoUFqEt21JoHV1X3ZFULV2BwNmTgESYlHlg
	iPTB2FNNvscGD8F6QPH1GOI6su9g3uU=
Subject: [PATCH v2 05/12] x86/p2m: change_entry_type_* hooks are HVM-only
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <8f6e2834-fbc1-4f3b-c305-71bb20b04502@suse.com>
Date: Mon, 12 Apr 2021 16:08:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Exclude functions using them from !HVM builds, thus making it possible
to exclude the hooks as well. Also cover the already unused
memory_type_changed hook while inserting the #ifdef in the struct.

While no respective check was there, I can't see how
XEN_DOMCTL_set_broken_page_p2m could have been meant to work for PV the
way it is implemented. Restrict this operation to acting on HVM guests.

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

--- a/xen/arch/x86/domctl.c
+++ b/xen/arch/x86/domctl.c
@@ -1080,9 +1080,12 @@ long arch_do_domctl(
     {
         p2m_type_t pt;
         unsigned long pfn = domctl->u.set_broken_page_p2m.pfn;
-        mfn_t mfn = get_gfn_query(d, pfn, &pt);
 
-        if ( unlikely(!mfn_valid(mfn)) || unlikely(!p2m_is_ram(pt)) )
+        if ( !is_hvm_domain(d) )
+            return -EINVAL;
+
+        if ( unlikely(!mfn_valid(get_gfn_query(d, pfn, &pt))) ||
+             unlikely(!p2m_is_ram(pt)) )
             ret = -EINVAL;
         else
             ret = p2m_change_type_one(d, pfn, pt, p2m_ram_broken);
--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -292,6 +292,8 @@ int p2m_is_logdirty_range(struct p2m_dom
     return 0;
 }
 
+#ifdef CONFIG_HVM
+
 static void change_entry_type_global(struct p2m_domain *p2m,
                                      p2m_type_t ot, p2m_type_t nt)
 {
@@ -316,7 +318,6 @@ void p2m_change_entry_type_global(struct
 
     change_entry_type_global(hostp2m, ot, nt);
 
-#ifdef CONFIG_HVM
     if ( unlikely(altp2m_active(d)) )
     {
         unsigned int i;
@@ -331,12 +332,10 @@ void p2m_change_entry_type_global(struct
                 p2m_unlock(altp2m);
             }
     }
-#endif
 
     p2m_unlock(hostp2m);
 }
 
-#ifdef CONFIG_HVM
 /* There's already a memory_type_changed() in asm/mtrr.h. */
 static void _memory_type_changed(struct p2m_domain *p2m)
 {
@@ -369,7 +368,8 @@ void p2m_memory_type_changed(struct doma
 
     p2m_unlock(hostp2m);
 }
-#endif
+
+#endif /* CONFIG_HVM */
 
 int p2m_set_ioreq_server(struct domain *d,
                          unsigned int flags,
@@ -876,6 +876,7 @@ guest_physmap_add_page(struct domain *d,
 }
 
 #ifdef CONFIG_HVM
+
 int
 guest_physmap_add_entry(struct domain *d, gfn_t gfn, mfn_t mfn,
                         unsigned int page_order, p2m_type_t t)
@@ -1024,7 +1025,6 @@ out:
 
     return rc;
 }
-#endif
 
 /*
  * Modify the p2m type of a single gfn from ot to nt.
@@ -1161,7 +1161,6 @@ void p2m_change_type_range(struct domain
 
     change_type_range(hostp2m, start, end, ot, nt);
 
-#ifdef CONFIG_HVM
     if ( unlikely(altp2m_active(d)) )
     {
         unsigned int i;
@@ -1176,7 +1175,6 @@ void p2m_change_type_range(struct domain
                 p2m_unlock(altp2m);
             }
     }
-#endif
     hostp2m->defer_nested_flush = 0;
     if ( nestedhvm_enabled(d) )
         p2m_flush_nestedp2m(d);
@@ -1184,6 +1182,8 @@ void p2m_change_type_range(struct domain
     p2m_unlock(hostp2m);
 }
 
+#endif /* CONFIG_HVM */
+
 /*
  * Finish p2m type change for gfns which are marked as need_recalc in a range.
  * Uses the current p2m's max_mapped_pfn to further clip the invalidation
--- a/xen/arch/x86/mm/p2m-pt.c
+++ b/xen/arch/x86/mm/p2m-pt.c
@@ -324,6 +324,7 @@ p2m_next_level(struct p2m_domain *p2m, v
     return rc;
 }
 
+#ifdef CONFIG_HVM
 /*
  * Mark (via clearing the U flag) as needing P2M type re-calculation all valid
  * present entries at the targeted level for the passed in GFN range, which is
@@ -392,6 +393,7 @@ static int p2m_pt_set_recalc_range(struc
 
     return err;
 }
+#endif /* CONFIG_HVM */
 
 /*
  * Handle possibly necessary P2M type re-calculation (U flag clear for a
@@ -930,6 +932,8 @@ pod_retry_l1:
     return (p2m_is_valid(*t) || p2m_is_any_ram(*t)) ? mfn : INVALID_MFN;
 }
 
+#ifdef CONFIG_HVM
+
 static void p2m_pt_change_entry_type_global(struct p2m_domain *p2m,
                                             p2m_type_t ot, p2m_type_t nt)
 {
@@ -1011,6 +1015,8 @@ static int p2m_pt_change_entry_type_rang
     return err;
 }
 
+#endif /* CONFIG_HVM */
+
 #if P2M_AUDIT
 static long p2m_pt_audit_p2m(struct p2m_domain *p2m)
 {
@@ -1168,8 +1174,10 @@ void p2m_pt_init(struct p2m_domain *p2m)
     p2m->set_entry = p2m_pt_set_entry;
     p2m->get_entry = p2m_pt_get_entry;
     p2m->recalc = do_recalc;
+#ifdef CONFIG_HVM
     p2m->change_entry_type_global = p2m_pt_change_entry_type_global;
     p2m->change_entry_type_range = p2m_pt_change_entry_type_range;
+#endif
 
     /* Still too early to use paging_mode_hap(). */
     if ( hap_enabled(p2m->domain) )
--- a/xen/arch/x86/mm/paging.c
+++ b/xen/arch/x86/mm/paging.c
@@ -588,6 +588,7 @@ static int paging_log_dirty_op(struct do
     return rv;
 }
 
+#ifdef CONFIG_HVM
 void paging_log_dirty_range(struct domain *d,
                            unsigned long begin_pfn,
                            unsigned long nr,
@@ -617,6 +618,7 @@ void paging_log_dirty_range(struct domai
 
     guest_flush_tlb_mask(d, d->dirty_cpumask);
 }
+#endif
 
 /*
  * Callers must supply log_dirty_ops for the log dirty code to call. This
--- a/xen/include/asm-x86/p2m.h
+++ b/xen/include/asm-x86/p2m.h
@@ -264,6 +264,7 @@ struct p2m_domain {
     void               (*enable_hardware_log_dirty)(struct p2m_domain *p2m);
     void               (*disable_hardware_log_dirty)(struct p2m_domain *p2m);
     void               (*flush_hardware_cached_dirty)(struct p2m_domain *p2m);
+#ifdef CONFIG_HVM
     void               (*change_entry_type_global)(struct p2m_domain *p2m,
                                                    p2m_type_t ot,
                                                    p2m_type_t nt);
@@ -272,6 +273,7 @@ struct p2m_domain {
                                                   unsigned long first_gfn,
                                                   unsigned long last_gfn);
     void               (*memory_type_changed)(struct p2m_domain *p2m);
+#endif
     void               (*write_p2m_entry_pre)(struct domain *d,
                                               unsigned long gfn,
                                               l1_pgentry_t old,



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:08:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:08:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109186.208392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxFF-000549-SH; Mon, 12 Apr 2021 14:08:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109186.208392; Mon, 12 Apr 2021 14:08:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxFF-000542-O6; Mon, 12 Apr 2021 14:08:53 +0000
Received: by outflank-mailman (input) for mailman id 109186;
 Mon, 12 Apr 2021 14:08:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxFE-00053o-3c
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:08:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 92f3fdf1-1e40-446e-91b1-1ade3aaeb44b;
 Mon, 12 Apr 2021 14:08:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B2E06AF9E;
 Mon, 12 Apr 2021 14:08: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: 92f3fdf1-1e40-446e-91b1-1ade3aaeb44b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236530; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ABE4LcUgraNA73SdEGSmiIlXjTsOODWeZNKtHKbvRrQ=;
	b=L8xJm6uUaZxy1T37lApMF5qOjuVBuZs5l5mlBn2rJuuQUZdVS51iuA7Xo7Z6JvtB/ySs5E
	VSocStusG9ZpClsne2anaEsO5Yrv2Ywen/8sV2N4vz0jFnM7+TJuoemWmdlVN5PUJqbasx
	JuuCehiyUXn4hF+NssppCfJuP0KWuNg=
Subject: [PATCH v2 06/12] x86/p2m: hardware-log-dirty related hooks are
 HVM-only
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <e11aa162-9a07-9326-5b5b-5f4114f80255@suse.com>
Date: Mon, 12 Apr 2021 16:08:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Exclude functions using them from !HVM builds, thus making it possible
to exclude the hooks as well.

By moving an #endif in p2m.c (instead of introducing yet another one)
p2m_{get,set}_ioreq_server() get excluded for !HVM builds as well.

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

--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -369,8 +369,6 @@ void p2m_memory_type_changed(struct doma
     p2m_unlock(hostp2m);
 }
 
-#endif /* CONFIG_HVM */
-
 int p2m_set_ioreq_server(struct domain *d,
                          unsigned int flags,
                          struct ioreq_server *s)
@@ -464,6 +462,8 @@ void p2m_flush_hardware_cached_dirty(str
     }
 }
 
+#endif /* CONFIG_HVM */
+
 /*
  * Force a synchronous P2M TLB flush if a deferred flush is pending.
  *
--- a/xen/include/asm-x86/p2m.h
+++ b/xen/include/asm-x86/p2m.h
@@ -261,10 +261,10 @@ struct p2m_domain {
                                     bool_t *sve);
     int                (*recalc)(struct p2m_domain *p2m,
                                  unsigned long gfn);
+#ifdef CONFIG_HVM
     void               (*enable_hardware_log_dirty)(struct p2m_domain *p2m);
     void               (*disable_hardware_log_dirty)(struct p2m_domain *p2m);
     void               (*flush_hardware_cached_dirty)(struct p2m_domain *p2m);
-#ifdef CONFIG_HVM
     void               (*change_entry_type_global)(struct p2m_domain *p2m,
                                                    p2m_type_t ot,
                                                    p2m_type_t nt);
@@ -630,6 +630,9 @@ int guest_physmap_add_page(struct domain
 /* Set a p2m range as populate-on-demand */
 int guest_physmap_mark_populate_on_demand(struct domain *d, unsigned long gfn,
                                           unsigned int order);
+
+#ifdef CONFIG_HVM
+
 /* Enable hardware-assisted log-dirty. */
 void p2m_enable_hardware_log_dirty(struct domain *d);
 
@@ -639,6 +642,12 @@ void p2m_disable_hardware_log_dirty(stru
 /* Flush hardware cached dirty GFNs */
 void p2m_flush_hardware_cached_dirty(struct domain *d);
 
+#else
+
+static inline void p2m_flush_hardware_cached_dirty(struct domain *d) {}
+
+#endif
+
 /* Change types across all p2m entries in a domain */
 void p2m_change_entry_type_global(struct domain *d, 
                                   p2m_type_t ot, p2m_type_t nt);



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:09:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:09:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109191.208404 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxFh-0005B2-6W; Mon, 12 Apr 2021 14:09:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109191.208404; Mon, 12 Apr 2021 14:09:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxFh-0005Av-1a; Mon, 12 Apr 2021 14:09:21 +0000
Received: by outflank-mailman (input) for mailman id 109191;
 Mon, 12 Apr 2021 14:09:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxFg-0005Ap-Jo
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:09:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ee05faa5-6ba0-476e-a373-1c4c7cea959e;
 Mon, 12 Apr 2021 14:09:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 28B6AB01E;
 Mon, 12 Apr 2021 14:09:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ee05faa5-6ba0-476e-a373-1c4c7cea959e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236559; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=sLQCZKCYhX92fi1Kjl5wzB13m0sMbygMCSvUFAynd98=;
	b=daV9fvpdreJ4xwHh79Ez2/VrQA+LdFcIcP8ywe/TezlUh/j3Xq8Hg4Mig2DwNZ5fa9CBSI
	DPKLK/SfGkBo/tMOzFjWlJrNWCUv2qcyE9j6tRj5HB0UWeCdbi8nGjdHh0cIqRM0rKdEnE
	FiHoTuVpx21Y3Znkg8TPe1zgg/RnIvg=
Subject: [PATCH v2 07/12] x86/p2m: the recalc hook is HVM-only
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <b99313df-f466-cf95-d772-c3153745c56b@suse.com>
Date: Mon, 12 Apr 2021 16:09:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Exclude functions involved in its use from !HVM builds, thus making it
possible to exclude the hook as well.

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

--- a/xen/arch/x86/mm/p2m-pt.c
+++ b/xen/arch/x86/mm/p2m-pt.c
@@ -1173,8 +1173,8 @@ void p2m_pt_init(struct p2m_domain *p2m)
 {
     p2m->set_entry = p2m_pt_set_entry;
     p2m->get_entry = p2m_pt_get_entry;
-    p2m->recalc = do_recalc;
 #ifdef CONFIG_HVM
+    p2m->recalc = do_recalc;
     p2m->change_entry_type_global = p2m_pt_change_entry_type_global;
     p2m->change_entry_type_range = p2m_pt_change_entry_type_range;
 #endif
--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -1182,8 +1182,6 @@ void p2m_change_type_range(struct domain
     p2m_unlock(hostp2m);
 }
 
-#endif /* CONFIG_HVM */
-
 /*
  * Finish p2m type change for gfns which are marked as need_recalc in a range.
  * Uses the current p2m's max_mapped_pfn to further clip the invalidation
@@ -1234,7 +1232,6 @@ int p2m_finish_type_change(struct domain
     if ( rc < 0 )
         goto out;
 
-#ifdef CONFIG_HVM
     if ( unlikely(altp2m_active(d)) )
     {
         unsigned int i;
@@ -1252,7 +1249,6 @@ int p2m_finish_type_change(struct domain
                     goto out;
             }
     }
-#endif
 
  out:
     p2m_unlock(hostp2m);
@@ -1260,8 +1256,6 @@ int p2m_finish_type_change(struct domain
     return rc;
 }
 
-#ifdef CONFIG_HVM
-
 /*
  * Returns:
  *    0              for success
--- a/xen/include/asm-x86/p2m.h
+++ b/xen/include/asm-x86/p2m.h
@@ -259,9 +259,9 @@ struct p2m_domain {
                                     p2m_query_t q,
                                     unsigned int *page_order,
                                     bool_t *sve);
+#ifdef CONFIG_HVM
     int                (*recalc)(struct p2m_domain *p2m,
                                  unsigned long gfn);
-#ifdef CONFIG_HVM
     void               (*enable_hardware_log_dirty)(struct p2m_domain *p2m);
     void               (*disable_hardware_log_dirty)(struct p2m_domain *p2m);
     void               (*flush_hardware_cached_dirty)(struct p2m_domain *p2m);



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:10:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:10:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109197.208416 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxH3-00062Y-Ir; Mon, 12 Apr 2021 14:10:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109197.208416; Mon, 12 Apr 2021 14: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 1lVxH3-00062R-Dv; Mon, 12 Apr 2021 14:10:45 +0000
Received: by outflank-mailman (input) for mailman id 109197;
 Mon, 12 Apr 2021 14:10:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxH2-000622-Kh
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:10:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d87d0314-b9d5-41cb-a850-589de889cb5e;
 Mon, 12 Apr 2021 14:10:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D093EB133;
 Mon, 12 Apr 2021 14:10: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: d87d0314-b9d5-41cb-a850-589de889cb5e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236642; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=saN7xHAgr8abNwYS5Ioqwzd7tue8dyVnuFdM2ErCD3g=;
	b=q5tlWIwfF/AcvLpa6HWjscWdEki7z7bqRverBSwwR2hm9Khcv08Vh6GYZmMzamg7vkMGKX
	8yZKdGcay2JgT0WNk7j8aS5tSxCMRitlxVydjXjQu2/7Pf0HNaqvvjwf6AlI5EVCjz/ePQ
	u7+vh7lb7iVI0KL76hMnOa1hiqtvgU8=
Subject: [PATCH v2 08/12] x86: mem-access is HVM-only
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <91921cd4-902e-3341-10b7-718550658c8d@suse.com>
Date: Mon, 12 Apr 2021 16:10:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

By excluding the file from being built for !HVM, #ifdef-ary can be
removed from it.

The new HVM dependency on the Kconfig option is benign for Arm.

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

--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -15,7 +15,6 @@ config X86
 	select HAS_FAST_MULTIPLY
 	select HAS_IOPORTS
 	select HAS_KEXEC
-	select MEM_ACCESS_ALWAYS_ON
 	select HAS_MEM_PAGING
 	select HAS_NS16550
 	select HAS_PASSTHROUGH
@@ -92,6 +91,7 @@ config PV_LINEAR_PT
 config HVM
 	def_bool !PV_SHIM_EXCLUSIVE
 	select IOREQ_SERVER
+	select MEM_ACCESS_ALWAYS_ON
 	prompt "HVM support"
 	---help---
 	  Interfaces to support HVM domains.  HVM domains require hardware
--- a/xen/arch/x86/mm/mem_access.c
+++ b/xen/arch/x86/mm/mem_access.c
@@ -139,7 +139,6 @@ bool p2m_mem_access_emulate_check(struct
     return violation;
 }
 
-#ifdef CONFIG_HVM
 bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
                           struct npfec npfec,
                           vm_event_request_t **req_ptr)
@@ -282,7 +281,6 @@ int p2m_set_altp2m_mem_access(struct dom
      */
     return ap2m->set_entry(ap2m, gfn, mfn, PAGE_ORDER_4K, t, a, -1);
 }
-#endif
 
 static int set_mem_access(struct domain *d, struct p2m_domain *p2m,
                           struct p2m_domain *ap2m, p2m_access_t a,
@@ -290,7 +288,6 @@ static int set_mem_access(struct domain
 {
     int rc = 0;
 
-#ifdef CONFIG_HVM
     if ( ap2m )
     {
         rc = p2m_set_altp2m_mem_access(d, p2m, ap2m, a, gfn);
@@ -299,9 +296,6 @@ static int set_mem_access(struct domain
             rc = 0;
     }
     else
-#else
-    ASSERT(!ap2m);
-#endif
     {
         p2m_access_t _a;
         p2m_type_t t;
@@ -362,7 +356,6 @@ long p2m_set_mem_access(struct domain *d
     long rc = 0;
 
     /* altp2m view 0 is treated as the hostp2m */
-#ifdef CONFIG_HVM
     if ( altp2m_idx )
     {
         if ( altp2m_idx >= min(ARRAY_SIZE(d->arch.altp2m_p2m), MAX_EPTP) ||
@@ -372,9 +365,6 @@ long p2m_set_mem_access(struct domain *d
 
         ap2m = array_access_nospec(d->arch.altp2m_p2m, altp2m_idx);
     }
-#else
-    ASSERT(!altp2m_idx);
-#endif
 
     if ( !xenmem_access_to_p2m_access(p2m, access, &a) )
         return -EINVAL;
@@ -422,7 +412,6 @@ long p2m_set_mem_access_multi(struct dom
     long rc = 0;
 
     /* altp2m view 0 is treated as the hostp2m */
-#ifdef CONFIG_HVM
     if ( altp2m_idx )
     {
         if ( altp2m_idx >= min(ARRAY_SIZE(d->arch.altp2m_p2m), MAX_EPTP) ||
@@ -432,9 +421,6 @@ long p2m_set_mem_access_multi(struct dom
 
         ap2m = array_access_nospec(d->arch.altp2m_p2m, altp2m_idx);
     }
-#else
-    ASSERT(!altp2m_idx);
-#endif
 
     p2m_lock(p2m);
     if ( ap2m )
@@ -484,7 +470,6 @@ int p2m_get_mem_access(struct domain *d,
 {
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
 
-#ifdef CONFIG_HVM
     if ( !altp2m_active(d) )
     {
         if ( altp2m_idx )
@@ -499,9 +484,6 @@ int p2m_get_mem_access(struct domain *d,
 
         p2m = array_access_nospec(d->arch.altp2m_p2m, altp2m_idx);
     }
-#else
-    ASSERT(!altp2m_idx);
-#endif
 
     return _p2m_get_mem_access(p2m, gfn, access);
 }
@@ -512,7 +494,6 @@ void arch_p2m_set_access_required(struct
 
     p2m_get_hostp2m(d)->access_required = access_required;
 
-#ifdef CONFIG_HVM
     if ( altp2m_active(d) )
     {
         unsigned int i;
@@ -524,7 +505,6 @@ void arch_p2m_set_access_required(struct
                 p2m->access_required = access_required;
         }
     }
-#endif
 }
 
 bool p2m_mem_access_sanity_check(const struct domain *d)
--- a/xen/arch/x86/vm_event.c
+++ b/xen/arch/x86/vm_event.c
@@ -265,6 +265,7 @@ void vm_event_emulate_check(struct vcpu
         return;
     }
 
+#ifdef CONFIG_HVM
     switch ( rsp->reason )
     {
     case VM_EVENT_REASON_MEM_ACCESS:
@@ -298,6 +299,7 @@ void vm_event_emulate_check(struct vcpu
     default:
         break;
     };
+#endif
 }
 
 void vm_event_reset_vmtrace(struct vcpu *v)
--- a/xen/common/Kconfig
+++ b/xen/common/Kconfig
@@ -58,6 +58,7 @@ config MEM_ACCESS_ALWAYS_ON
 config MEM_ACCESS
 	def_bool MEM_ACCESS_ALWAYS_ON
 	prompt "Memory Access and VM events" if !MEM_ACCESS_ALWAYS_ON
+	depends on HVM
 	---help---
 
 	  Framework to configure memory access types for guests and receive



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:12:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:12:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109204.208428 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxIz-0006Cg-Tv; Mon, 12 Apr 2021 14:12:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109204.208428; Mon, 12 Apr 2021 14:12:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxIz-0006CZ-QU; Mon, 12 Apr 2021 14:12:45 +0000
Received: by outflank-mailman (input) for mailman id 109204;
 Mon, 12 Apr 2021 14:12:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxIy-0006CA-1V
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:12:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6d77315c-b830-495f-8b5f-88d1697ed773;
 Mon, 12 Apr 2021 14:12:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6EC03B02C;
 Mon, 12 Apr 2021 14:12: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: 6d77315c-b830-495f-8b5f-88d1697ed773
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236762; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=kdzk5wmAXjisOcJzpMedbV3NzErzKi8Z0MukFBUTB+o=;
	b=V/Nq+qGJOPSgrAxgpLSOhZjh4q+WO9SATeW+SzUB2hNrHhjA8IZ5R98AZcVSTbR6DoyQXK
	pSqa/1AOkiyMzb8Wmyp9wBNm2sZEAgeF+VA7OKp27JktIbIQ8dp98guYv2eQmqtQ0rDUkn
	+3fDNHQn2jHJRJoO8gJoFfTIYTt6Rc0=
Subject: [PATCH v2 09/12] x86: make mem-paging configuarable and default it to
 off for being unsupported
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>, Ian Jackson <iwj@xenproject.org>,
 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>, Daniel de Graaf <dgdegra@tycho.nsa.gov>,
 Paul Durrant <paul@xen.org>, Tamas K Lengyel <tamas@tklengyel.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>,
 Alexandru Isaila <aisaila@bitdefender.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
Date: Mon, 12 Apr 2021 16:12:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While doing so, make the option dependent upon HVM, which really is the
main purpose of the change.

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

--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -15,7 +15,6 @@ config X86
 	select HAS_FAST_MULTIPLY
 	select HAS_IOPORTS
 	select HAS_KEXEC
-	select HAS_MEM_PAGING
 	select HAS_NS16550
 	select HAS_PASSTHROUGH
 	select HAS_PCI
@@ -251,6 +250,10 @@ config HYPERV_GUEST
 
 endif
 
+config MEM_PAGING
+	bool "Xen memory paging support (UNSUPPORTED)" if UNSUPPORTED
+	depends on HVM
+
 config MEM_SHARING
 	bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED
 	depends on HVM
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -1932,9 +1932,11 @@ int hvm_hap_nested_page_fault(paddr_t gp
         goto out_put_gfn;
     }
 
+#ifdef CONFIG_MEM_PAGING
     /* Check if the page has been paged out */
     if ( p2m_is_paged(p2mt) || (p2mt == p2m_ram_paging_out) )
         paged = 1;
+#endif
 
 #ifdef CONFIG_MEM_SHARING
     /* Mem sharing: if still shared on write access then its enomem */
--- a/xen/arch/x86/mm/Makefile
+++ b/xen/arch/x86/mm/Makefile
@@ -5,7 +5,7 @@ obj-$(CONFIG_HVM) += altp2m.o
 obj-$(CONFIG_HVM) += guest_walk_2.o guest_walk_3.o guest_walk_4.o
 obj-$(CONFIG_SHADOW_PAGING) += guest_walk_4.o
 obj-$(CONFIG_MEM_ACCESS) += mem_access.o
-obj-y += mem_paging.o
+obj-$(CONFIG_MEM_PAGING) += mem_paging.o
 obj-$(CONFIG_MEM_SHARING) += mem_sharing.o
 obj-y += p2m.o p2m-pt.o
 obj-$(CONFIG_HVM) += p2m-ept.o p2m-pod.o
--- a/xen/arch/x86/x86_64/compat/mm.c
+++ b/xen/arch/x86/x86_64/compat/mm.c
@@ -155,8 +155,10 @@ int compat_arch_memory_op(unsigned long
     case XENMEM_get_sharing_shared_pages:
         return mem_sharing_get_nr_shared_mfns();
 
+#ifdef CONFIG_MEM_PAGING
     case XENMEM_paging_op:
         return mem_paging_memop(guest_handle_cast(arg, xen_mem_paging_op_t));
+#endif
 
 #ifdef CONFIG_MEM_SHARING
     case XENMEM_sharing_op:
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -994,8 +994,10 @@ long subarch_memory_op(unsigned long cmd
     case XENMEM_get_sharing_shared_pages:
         return mem_sharing_get_nr_shared_mfns();
 
+#ifdef CONFIG_MEM_PAGING
     case XENMEM_paging_op:
         return mem_paging_memop(guest_handle_cast(arg, xen_mem_paging_op_t));
+#endif
 
 #ifdef CONFIG_MEM_SHARING
     case XENMEM_sharing_op:
--- a/xen/common/Kconfig
+++ b/xen/common/Kconfig
@@ -40,9 +40,6 @@ config HAS_IOPORTS
 config HAS_KEXEC
 	bool
 
-config HAS_MEM_PAGING
-	bool
-
 config HAS_PDX
 	bool
 
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1096,7 +1096,7 @@ static void complete_domain_destroy(stru
     free_xenoprof_pages(d);
 #endif
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
     xfree(d->vm_event_paging);
 #endif
     xfree(d->vm_event_monitor);
--- a/xen/common/memory.c
+++ b/xen/common/memory.c
@@ -1856,7 +1856,7 @@ int check_get_page_from_gfn(struct domai
 
     page = get_page_from_gfn(d, gfn_x(gfn), &p2mt, q);
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
     if ( p2m_is_paging(p2mt) )
     {
         if ( page )
--- a/xen/common/vm_event.c
+++ b/xen/common/vm_event.c
@@ -390,7 +390,7 @@ static int vm_event_resume(struct domain
         /* Check flags which apply only when the vCPU is paused */
         if ( atomic_read(&v->vm_event_pause_count) )
         {
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
             if ( rsp.reason == VM_EVENT_REASON_MEM_PAGING )
                 p2m_mem_paging_resume(d, &rsp);
 #endif
@@ -521,7 +521,7 @@ int __vm_event_claim_slot(struct domain
         return vm_event_grab_slot(ved, current->domain != d);
 }
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
 /* Registered with Xen-bound event channel for incoming notifications. */
 static void mem_paging_notification(struct vcpu *v, unsigned int port)
 {
@@ -546,7 +546,7 @@ static void mem_sharing_notification(str
 /* Clean up on domain destruction */
 void vm_event_cleanup(struct domain *d)
 {
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
     if ( vm_event_check_ring(d->vm_event_paging) )
     {
         /* Destroying the wait queue head means waking up all
@@ -613,7 +613,7 @@ int vm_event_domctl(struct domain *d, st
 
     switch ( vec->mode )
     {
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
     case XEN_DOMCTL_VM_EVENT_OP_PAGING:
     {
         rc = -EINVAL;
--- a/xen/drivers/passthrough/x86/iommu.c
+++ b/xen/drivers/passthrough/x86/iommu.c
@@ -23,6 +23,7 @@
 
 #include <asm/hvm/io.h>
 #include <asm/io_apic.h>
+#include <asm/mem_paging.h>
 #include <asm/setup.h>
 
 const struct iommu_init_ops *__initdata iommu_init_ops;
@@ -336,7 +337,7 @@ bool arch_iommu_use_permitted(const stru
      */
     return d == dom_io ||
            (likely(!mem_sharing_enabled(d)) &&
-            likely(!vm_event_check_ring(d->vm_event_paging)) &&
+            likely(!mem_paging_enabled(d)) &&
             likely(!p2m_get_hostp2m(d)->global_logdirty));
 }
 
--- a/xen/include/asm-x86/mem_paging.h
+++ b/xen/include/asm-x86/mem_paging.h
@@ -24,6 +24,12 @@
 
 int mem_paging_memop(XEN_GUEST_HANDLE_PARAM(xen_mem_paging_op_t) arg);
 
+#ifdef CONFIG_MEM_PAGING
+# define mem_paging_enabled(d) vm_event_check_ring((d)->vm_event_paging)
+#else
+# define mem_paging_enabled(d) false
+#endif
+
 #endif /*__ASM_X86_MEM_PAGING_H__ */
 
 /*
--- a/xen/include/asm-x86/p2m.h
+++ b/xen/include/asm-x86/p2m.h
@@ -136,11 +136,16 @@ typedef unsigned int p2m_query_t;
 #define P2M_PAGEABLE_TYPES (p2m_to_mask(p2m_ram_rw) \
                             | p2m_to_mask(p2m_ram_logdirty) )
 
+#ifdef CONFIG_MEM_PAGING
 #define P2M_PAGING_TYPES (p2m_to_mask(p2m_ram_paging_out)        \
                           | p2m_to_mask(p2m_ram_paged)           \
                           | p2m_to_mask(p2m_ram_paging_in))
 
 #define P2M_PAGED_TYPES (p2m_to_mask(p2m_ram_paged))
+#else
+#define P2M_PAGING_TYPES 0
+#define P2M_PAGED_TYPES 0
+#endif
 
 /* Shared types */
 /* XXX: Sharable types could include p2m_ram_ro too, but we would need to
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -530,7 +530,7 @@ struct domain
     struct domain *parent; /* VM fork parent */
 #endif
     /* Memory paging support */
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
     struct vm_event_domain *vm_event_paging;
 #endif
     /* VM event monitor support */
--- a/xen/include/xsm/dummy.h
+++ b/xen/include/xsm/dummy.h
@@ -592,7 +592,7 @@ static XSM_INLINE int xsm_mem_access(XSM
 }
 #endif
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
 static XSM_INLINE int xsm_mem_paging(XSM_DEFAULT_ARG struct domain *d)
 {
     XSM_ASSERT_ACTION(XSM_DM_PRIV);
--- a/xen/include/xsm/xsm.h
+++ b/xen/include/xsm/xsm.h
@@ -146,7 +146,7 @@ struct xsm_operations {
     int (*mem_access) (struct domain *d);
 #endif
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
     int (*mem_paging) (struct domain *d);
 #endif
 
@@ -592,7 +592,7 @@ static inline int xsm_mem_access (xsm_de
 }
 #endif
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
 static inline int xsm_mem_paging (xsm_default_t def, struct domain *d)
 {
     return xsm_ops->mem_paging(d);
--- a/xen/xsm/dummy.c
+++ b/xen/xsm/dummy.c
@@ -124,7 +124,7 @@ void __init xsm_fixup_ops (struct xsm_op
     set_to_dummy_if_null(ops, mem_access);
 #endif
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
     set_to_dummy_if_null(ops, mem_paging);
 #endif
 
--- a/xen/xsm/flask/hooks.c
+++ b/xen/xsm/flask/hooks.c
@@ -1256,7 +1256,7 @@ static int flask_mem_access(struct domai
 }
 #endif
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
 static int flask_mem_paging(struct domain *d)
 {
     return current_has_perm(d, SECCLASS_DOMAIN2, DOMAIN2__MEM_PAGING);
@@ -1829,7 +1829,7 @@ static struct xsm_operations flask_ops =
     .mem_access = flask_mem_access,
 #endif
 
-#ifdef CONFIG_HAS_MEM_PAGING
+#ifdef CONFIG_MEM_PAGING
     .mem_paging = flask_mem_paging,
 #endif
 



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:13:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:13:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109207.208440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxJb-0006I8-6g; Mon, 12 Apr 2021 14:13:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109207.208440; Mon, 12 Apr 2021 14:13:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxJb-0006I1-3V; Mon, 12 Apr 2021 14:13:23 +0000
Received: by outflank-mailman (input) for mailman id 109207;
 Mon, 12 Apr 2021 14:13:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxJZ-0006Hs-MB
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:13:21 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e732afb0-b721-44b7-97b4-18aede15e640;
 Mon, 12 Apr 2021 14:13:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1FDB5AF95;
 Mon, 12 Apr 2021 14:13: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: e732afb0-b721-44b7-97b4-18aede15e640
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236800; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=gYXEbMRpB/ru7Klc+cGqatrS8eIXTxopFHC0OSl4Opk=;
	b=d9Yaxg/9DIR+lgT8j3ISwrPUmAYtKR94BCxdhLTprHSq8AeK42dUhE4sT4+vOq+dBwhuQP
	TnpTb4VAW6Ae8TAnQPFl3sWWHak2kDB7z2vafKC9AjszdLsq5TdA/fX6FBUvXSkTuzmv+g
	YKBt6dfCjXM+9cPq8YmbYOFByT7YjII=
Subject: [PATCH v2 10/12] x86/p2m: {get,set}_entry hooks and p2m-pt.c are
 HVM-only
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <fdcdb91f-87ee-084a-da55-b6ef560d5508@suse.com>
Date: Mon, 12 Apr 2021 16:13:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

With the hooks no longer needing setting, p2m_pt_init() degenerates to
(about) nothing when !HVM. As a result, p2m-pt.c doesn't need building
anymore in this case, as long as p2m_pt_init() has proper surrogates put
in place.

Unfortunately this means some new #ifdef-ary in p2m.c, but the mid-term
plan there is to get rid of (almost) all of it by splitting out the then
hopefully very few remaining non-HVM pieces.

While the movement of the paging_mode_translate() check from
p2m_remove_page() to guest_physmap_remove_page() may not be strictly
necessary anymore (it was in an early version of this change), it looks
more logical to live in the latter function, allowing to avoid acquiring
the lock in the PV case. All other callers of p2m_remove_page() already
have such a check anyway (in the altp2m case up the call stack).

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

--- a/xen/arch/x86/mm/Makefile
+++ b/xen/arch/x86/mm/Makefile
@@ -7,8 +7,8 @@ obj-$(CONFIG_SHADOW_PAGING) += guest_wal
 obj-$(CONFIG_MEM_ACCESS) += mem_access.o
 obj-$(CONFIG_MEM_PAGING) += mem_paging.o
 obj-$(CONFIG_MEM_SHARING) += mem_sharing.o
-obj-y += p2m.o p2m-pt.o
-obj-$(CONFIG_HVM) += p2m-ept.o p2m-pod.o
+obj-y += p2m.o
+obj-$(CONFIG_HVM) += p2m-ept.o p2m-pod.o p2m-pt.o
 obj-y += paging.o
 
 guest_walk_%.o: guest_walk.c Makefile
--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -494,8 +494,10 @@ mfn_t __get_gfn_type_access(struct p2m_d
                     p2m_type_t *t, p2m_access_t *a, p2m_query_t q,
                     unsigned int *page_order, bool_t locked)
 {
+#ifdef CONFIG_HVM
     mfn_t mfn;
     gfn_t gfn = _gfn(gfn_l);
+#endif
 
     /* Unshare makes no sense withuot populate. */
     if ( q & P2M_UNSHARE )
@@ -509,6 +511,7 @@ mfn_t __get_gfn_type_access(struct p2m_d
         return _mfn(gfn_l);
     }
 
+#ifdef CONFIG_HVM
     if ( locked )
         /* Grab the lock here, don't release until put_gfn */
         gfn_lock(p2m, gfn, 0);
@@ -542,6 +545,7 @@ mfn_t __get_gfn_type_access(struct p2m_d
     }
 
     return mfn;
+#endif
 }
 
 void __put_gfn(struct p2m_domain *p2m, unsigned long gfn)
@@ -620,6 +624,7 @@ struct page_info *p2m_get_page_from_gfn(
     return page;
 }
 
+#ifdef CONFIG_HVM
 /* Returns: 0 for success, -errno for failure */
 int p2m_set_entry(struct p2m_domain *p2m, gfn_t gfn, mfn_t mfn,
                   unsigned int page_order, p2m_type_t p2mt, p2m_access_t p2ma)
@@ -659,6 +664,7 @@ int p2m_set_entry(struct p2m_domain *p2m
 
     return rc;
 }
+#endif
 
 mfn_t p2m_alloc_ptp(struct p2m_domain *p2m, unsigned int level)
 {
@@ -777,6 +783,8 @@ void p2m_final_teardown(struct domain *d
     p2m_teardown_hostp2m(d);
 }
 
+#ifdef CONFIG_HVM
+
 static int __must_check
 p2m_remove_page(struct p2m_domain *p2m, gfn_t gfn, mfn_t mfn,
                 unsigned int page_order)
@@ -785,10 +793,6 @@ p2m_remove_page(struct p2m_domain *p2m,
     p2m_type_t t;
     p2m_access_t a;
 
-    /* IOMMU for PV guests is handled in get_page_type() and put_page(). */
-    if ( !paging_mode_translate(p2m->domain) )
-        return 0;
-
     ASSERT(gfn_locked_by_me(p2m, gfn));
     P2M_DEBUG("removing gfn=%#lx mfn=%#lx\n", gfn_x(gfn), mfn_x(mfn));
 
@@ -829,6 +833,10 @@ guest_physmap_remove_page(struct domain
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
     int rc;
 
+    /* IOMMU for PV guests is handled in get_page_type() and put_page(). */
+    if ( !paging_mode_translate(d) )
+        return 0;
+
     gfn_lock(p2m, gfn, page_order);
     rc = p2m_remove_page(p2m, gfn, mfn, page_order);
     gfn_unlock(p2m, gfn, page_order);
@@ -836,6 +844,8 @@ guest_physmap_remove_page(struct domain
     return rc;
 }
 
+#endif /* CONFIG_HVM */
+
 int
 guest_physmap_add_page(struct domain *d, gfn_t gfn, mfn_t mfn,
                        unsigned int page_order)
@@ -1400,14 +1410,16 @@ int clear_mmio_p2m_entry(struct domain *
 int set_identity_p2m_entry(struct domain *d, unsigned long gfn_l,
                            p2m_access_t p2ma, unsigned int flag)
 {
+#ifdef CONFIG_HVM
     p2m_type_t p2mt;
     p2m_access_t a;
     gfn_t gfn = _gfn(gfn_l);
     mfn_t mfn;
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
     int ret;
+#endif
 
-    if ( !paging_mode_translate(p2m->domain) )
+    if ( !paging_mode_translate(d) )
     {
         if ( !is_iommu_enabled(d) )
             return 0;
@@ -1416,6 +1428,7 @@ int set_identity_p2m_entry(struct domain
                                 IOMMUF_readable | IOMMUF_writable);
     }
 
+#ifdef CONFIG_HVM
     gfn_lock(p2m, gfn, 0);
 
     mfn = p2m->get_entry(p2m, gfn, &p2mt, &a, 0, NULL, NULL);
@@ -1439,16 +1452,19 @@ int set_identity_p2m_entry(struct domain
 
     gfn_unlock(p2m, gfn, 0);
     return ret;
+#endif
 }
 
 int clear_identity_p2m_entry(struct domain *d, unsigned long gfn_l)
 {
+#ifdef CONFIG_HVM
     p2m_type_t p2mt;
     p2m_access_t a;
     gfn_t gfn = _gfn(gfn_l);
     mfn_t mfn;
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
     int ret;
+#endif
 
     if ( !paging_mode_translate(d) )
     {
@@ -1457,6 +1473,7 @@ int clear_identity_p2m_entry(struct doma
         return iommu_legacy_unmap(d, _dfn(gfn_l), 1ul << PAGE_ORDER_4K);
     }
 
+#ifdef CONFIG_HVM
     gfn_lock(p2m, gfn, 0);
 
     mfn = p2m->get_entry(p2m, gfn, &p2mt, &a, 0, NULL, NULL);
@@ -1476,6 +1493,7 @@ int clear_identity_p2m_entry(struct doma
     }
 
     return ret;
+#endif
 }
 
 #ifdef CONFIG_MEM_SHARING
--- a/xen/arch/x86/mm/p2m-pt.c
+++ b/xen/arch/x86/mm/p2m-pt.c
@@ -324,7 +324,6 @@ p2m_next_level(struct p2m_domain *p2m, v
     return rc;
 }
 
-#ifdef CONFIG_HVM
 /*
  * Mark (via clearing the U flag) as needing P2M type re-calculation all valid
  * present entries at the targeted level for the passed in GFN range, which is
@@ -393,7 +392,6 @@ static int p2m_pt_set_recalc_range(struc
 
     return err;
 }
-#endif /* CONFIG_HVM */
 
 /*
  * Handle possibly necessary P2M type re-calculation (U flag clear for a
@@ -932,8 +930,6 @@ pod_retry_l1:
     return (p2m_is_valid(*t) || p2m_is_any_ram(*t)) ? mfn : INVALID_MFN;
 }
 
-#ifdef CONFIG_HVM
-
 static void p2m_pt_change_entry_type_global(struct p2m_domain *p2m,
                                             p2m_type_t ot, p2m_type_t nt)
 {
@@ -1015,8 +1011,6 @@ static int p2m_pt_change_entry_type_rang
     return err;
 }
 
-#endif /* CONFIG_HVM */
-
 #if P2M_AUDIT
 static long p2m_pt_audit_p2m(struct p2m_domain *p2m)
 {
@@ -1173,11 +1167,9 @@ void p2m_pt_init(struct p2m_domain *p2m)
 {
     p2m->set_entry = p2m_pt_set_entry;
     p2m->get_entry = p2m_pt_get_entry;
-#ifdef CONFIG_HVM
     p2m->recalc = do_recalc;
     p2m->change_entry_type_global = p2m_pt_change_entry_type_global;
     p2m->change_entry_type_range = p2m_pt_change_entry_type_range;
-#endif
 
     /* Still too early to use paging_mode_hap(). */
     if ( hap_enabled(p2m->domain) )
--- a/xen/include/asm-x86/p2m.h
+++ b/xen/include/asm-x86/p2m.h
@@ -251,6 +251,7 @@ struct p2m_domain {
     /* Pages used to construct the p2m */
     struct page_list_head pages;
 
+#ifdef CONFIG_HVM
     int                (*set_entry)(struct p2m_domain *p2m,
                                     gfn_t gfn,
                                     mfn_t mfn, unsigned int page_order,
@@ -264,7 +265,6 @@ struct p2m_domain {
                                     p2m_query_t q,
                                     unsigned int *page_order,
                                     bool_t *sve);
-#ifdef CONFIG_HVM
     int                (*recalc)(struct p2m_domain *p2m,
                                  unsigned long gfn);
     void               (*enable_hardware_log_dirty)(struct p2m_domain *p2m);
@@ -785,8 +785,14 @@ int __must_check p2m_set_entry(struct p2
                                unsigned int page_order, p2m_type_t p2mt,
                                p2m_access_t p2ma);
 
+#if defined(CONFIG_HVM)
 /* Set up function pointers for PT implementation: only for use by p2m code */
 extern void p2m_pt_init(struct p2m_domain *p2m);
+#elif defined(CONFIG_SHADOW_PAGING)
+# define p2m_pt_init shadow_p2m_init
+#else
+static inline void p2m_pt_init(struct p2m_domain *p2m) {}
+#endif
 
 void *map_domain_gfn(struct p2m_domain *p2m, gfn_t gfn, mfn_t *mfn,
                      p2m_query_t q, uint32_t *pfec);
--- a/xen/include/xen/p2m-common.h
+++ b/xen/include/xen/p2m-common.h
@@ -8,9 +8,18 @@ int set_foreign_p2m_entry(struct domain
                           unsigned long gfn, mfn_t mfn);
 
 /* Remove a page from a domain's p2m table */
+#ifdef CONFIG_HVM
 int __must_check
 guest_physmap_remove_page(struct domain *d, gfn_t gfn, mfn_t mfn,
                           unsigned int page_order);
+#else
+static inline int
+guest_physmap_remove_page(struct domain *d, gfn_t gfn, mfn_t mfn,
+                          unsigned int page_order)
+{
+    return 0;
+}
+#endif
 
 /* Map MMIO regions in the p2m: start_gfn and nr describe the range in
  *  * the guest physical address space to map, starting from the machine



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:13:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:13:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109212.208452 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxK8-0006Pk-Kz; Mon, 12 Apr 2021 14:13:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109212.208452; Mon, 12 Apr 2021 14: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 1lVxK8-0006Pd-HY; Mon, 12 Apr 2021 14:13:56 +0000
Received: by outflank-mailman (input) for mailman id 109212;
 Mon, 12 Apr 2021 14:13:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxK7-0006PW-Mt
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:13:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8c1d2933-e52a-4c63-987b-ad3c2b09877f;
 Mon, 12 Apr 2021 14:13:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7CAFCB02C;
 Mon, 12 Apr 2021 14:13: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: 8c1d2933-e52a-4c63-987b-ad3c2b09877f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236833; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=GsWv5qIefEQzmwBFM73qXNflItcakFdzhM28hDFIMf8=;
	b=fvSItehCc4KJs8O8ZDrOIC72OVn3C9H4BedBWsLp43lQHeoI6SsLezvCQUxx4ZbcGe0Jsj
	1kgegP+2Rwz7GJ9OCYeyc3OXdKOOj1ePNRSwkB6vQmIohdjORJZfosbw8UbMYz5oRRNjct
	EYdlicQituweMUMC8GxZLbN5bPvX1NA=
Subject: [PATCH v2 11/12] x86/p2m: write_p2m_entry_{pre,post} hooks are
 HVM-only
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>, Tim Deegan <tim@xen.org>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <507182a8-38c3-cda3-d921-7494a5df63a7@suse.com>
Date: Mon, 12 Apr 2021 16:13:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Move respective shadow code to its HVM-only source file, thus making it
possible to exclude the hooks as well. This then shows that
shadow_p2m_init() also isn't needed in !HVM builds.

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

--- a/xen/arch/x86/mm/shadow/common.c
+++ b/xen/arch/x86/mm/shadow/common.c
@@ -2327,22 +2327,6 @@ void shadow_prepare_page_type_change(str
     shadow_remove_all_shadows(d, page_to_mfn(page));
 }
 
-static void
-sh_remove_all_shadows_and_parents(struct domain *d, mfn_t gmfn)
-/* Even harsher: this is a HVM page that we thing is no longer a pagetable.
- * Unshadow it, and recursively unshadow pages that reference it. */
-{
-    sh_remove_shadows(d, gmfn, 0, 1);
-    /* XXX TODO:
-     * Rework this hashtable walker to return a linked-list of all
-     * the shadows it modified, then do breadth-first recursion
-     * to find the way up to higher-level tables and unshadow them too.
-     *
-     * The current code (just tearing down each page's shadows as we
-     * detect that it is not a pagetable) is correct, but very slow.
-     * It means extra emulated writes and slows down removal of mappings. */
-}
-
 /**************************************************************************/
 
 /* Reset the up-pointers of every L3 shadow to 0.
@@ -3086,126 +3070,6 @@ static int shadow_test_disable(struct do
 }
 
 /**************************************************************************/
-/* P2M map manipulations */
-
-/* shadow specific code which should be called when P2M table entry is updated
- * with new content. It is responsible for update the entry, as well as other
- * shadow processing jobs.
- */
-
-static void sh_unshadow_for_p2m_change(struct domain *d, unsigned long gfn,
-                                       l1_pgentry_t old, l1_pgentry_t new,
-                                       unsigned int level)
-{
-    mfn_t omfn = l1e_get_mfn(old);
-    unsigned int oflags = l1e_get_flags(old);
-    p2m_type_t p2mt = p2m_flags_to_type(oflags);
-    bool flush = false;
-
-    /*
-     * If there are any shadows, update them.  But if shadow_teardown()
-     * has already been called then it's not safe to try.
-     */
-    if ( unlikely(!d->arch.paging.shadow.total_pages) )
-        return;
-
-    switch ( level )
-    {
-    default:
-        /*
-         * The following assertion is to make sure we don't step on 1GB host
-         * page support of HVM guest.
-         */
-        ASSERT(!((oflags & _PAGE_PRESENT) && (oflags & _PAGE_PSE)));
-        break;
-
-    /* If we're removing an MFN from the p2m, remove it from the shadows too */
-    case 1:
-        if ( (p2m_is_valid(p2mt) || p2m_is_grant(p2mt)) && mfn_valid(omfn) )
-        {
-            sh_remove_all_shadows_and_parents(d, omfn);
-            if ( sh_remove_all_mappings(d, omfn, _gfn(gfn)) )
-                flush = true;
-        }
-        break;
-
-    /*
-     * If we're removing a superpage mapping from the p2m, we need to check
-     * all the pages covered by it.  If they're still there in the new
-     * scheme, that's OK, but otherwise they must be unshadowed.
-     */
-    case 2:
-        if ( !(oflags & _PAGE_PRESENT) || !(oflags & _PAGE_PSE) )
-            break;
-
-        if ( p2m_is_valid(p2mt) && mfn_valid(omfn) )
-        {
-            unsigned int i;
-            mfn_t nmfn = l1e_get_mfn(new);
-            l1_pgentry_t *npte = NULL;
-
-            /* If we're replacing a superpage with a normal L1 page, map it */
-            if ( (l1e_get_flags(new) & _PAGE_PRESENT) &&
-                 !(l1e_get_flags(new) & _PAGE_PSE) &&
-                 mfn_valid(nmfn) )
-                npte = map_domain_page(nmfn);
-
-            gfn &= ~(L1_PAGETABLE_ENTRIES - 1);
-
-            for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
-            {
-                if ( !npte ||
-                     !p2m_is_ram(p2m_flags_to_type(l1e_get_flags(npte[i]))) ||
-                     !mfn_eq(l1e_get_mfn(npte[i]), omfn) )
-                {
-                    /* This GFN->MFN mapping has gone away */
-                    sh_remove_all_shadows_and_parents(d, omfn);
-                    if ( sh_remove_all_mappings(d, omfn, _gfn(gfn + i)) )
-                        flush = true;
-                }
-                omfn = mfn_add(omfn, 1);
-            }
-
-            if ( npte )
-                unmap_domain_page(npte);
-        }
-
-        break;
-    }
-
-    if ( flush )
-        guest_flush_tlb_mask(d, d->dirty_cpumask);
-}
-
-#if (SHADOW_OPTIMIZATIONS & SHOPT_FAST_FAULT_PATH)
-static void
-sh_write_p2m_entry_post(struct p2m_domain *p2m, unsigned int oflags)
-{
-    struct domain *d = p2m->domain;
-
-    /* If we're doing FAST_FAULT_PATH, then shadow mode may have
-       cached the fact that this is an mmio region in the shadow
-       page tables.  Blow the tables away to remove the cache.
-       This is pretty heavy handed, but this is a rare operation
-       (it might happen a dozen times during boot and then never
-       again), so it doesn't matter too much. */
-    if ( d->arch.paging.shadow.has_fast_mmio_entries )
-    {
-        shadow_blow_tables(d);
-        d->arch.paging.shadow.has_fast_mmio_entries = false;
-    }
-}
-#else
-# define sh_write_p2m_entry_post NULL
-#endif
-
-void shadow_p2m_init(struct p2m_domain *p2m)
-{
-    p2m->write_p2m_entry_pre  = sh_unshadow_for_p2m_change;
-    p2m->write_p2m_entry_post = sh_write_p2m_entry_post;
-}
-
-/**************************************************************************/
 /* Log-dirty mode support */
 
 /* Shadow specific code which is called in paging_log_dirty_enable().
--- a/xen/arch/x86/mm/shadow/hvm.c
+++ b/xen/arch/x86/mm/shadow/hvm.c
@@ -774,6 +774,142 @@ void sh_destroy_monitor_table(const stru
 }
 
 /**************************************************************************/
+/* P2M map manipulations */
+
+/* shadow specific code which should be called when P2M table entry is updated
+ * with new content. It is responsible for update the entry, as well as other
+ * shadow processing jobs.
+ */
+
+static void
+sh_remove_all_shadows_and_parents(struct domain *d, mfn_t gmfn)
+/* Even harsher: this is a HVM page that we thing is no longer a pagetable.
+ * Unshadow it, and recursively unshadow pages that reference it. */
+{
+    sh_remove_shadows(d, gmfn, 0, 1);
+    /* XXX TODO:
+     * Rework this hashtable walker to return a linked-list of all
+     * the shadows it modified, then do breadth-first recursion
+     * to find the way up to higher-level tables and unshadow them too.
+     *
+     * The current code (just tearing down each page's shadows as we
+     * detect that it is not a pagetable) is correct, but very slow.
+     * It means extra emulated writes and slows down removal of mappings. */
+}
+
+static void sh_unshadow_for_p2m_change(struct domain *d, unsigned long gfn,
+                                       l1_pgentry_t old, l1_pgentry_t new,
+                                       unsigned int level)
+{
+    mfn_t omfn = l1e_get_mfn(old);
+    unsigned int oflags = l1e_get_flags(old);
+    p2m_type_t p2mt = p2m_flags_to_type(oflags);
+    bool flush = false;
+
+    /*
+     * If there are any shadows, update them.  But if shadow_teardown()
+     * has already been called then it's not safe to try.
+     */
+    if ( unlikely(!d->arch.paging.shadow.total_pages) )
+        return;
+
+    switch ( level )
+    {
+    default:
+        /*
+         * The following assertion is to make sure we don't step on 1GB host
+         * page support of HVM guest.
+         */
+        ASSERT(!((oflags & _PAGE_PRESENT) && (oflags & _PAGE_PSE)));
+        break;
+
+    /* If we're removing an MFN from the p2m, remove it from the shadows too */
+    case 1:
+        if ( (p2m_is_valid(p2mt) || p2m_is_grant(p2mt)) && mfn_valid(omfn) )
+        {
+            sh_remove_all_shadows_and_parents(d, omfn);
+            if ( sh_remove_all_mappings(d, omfn, _gfn(gfn)) )
+                flush = true;
+        }
+        break;
+
+    /*
+     * If we're removing a superpage mapping from the p2m, we need to check
+     * all the pages covered by it.  If they're still there in the new
+     * scheme, that's OK, but otherwise they must be unshadowed.
+     */
+    case 2:
+        if ( !(oflags & _PAGE_PRESENT) || !(oflags & _PAGE_PSE) )
+            break;
+
+        if ( p2m_is_valid(p2mt) && mfn_valid(omfn) )
+        {
+            unsigned int i;
+            mfn_t nmfn = l1e_get_mfn(new);
+            l1_pgentry_t *npte = NULL;
+
+            /* If we're replacing a superpage with a normal L1 page, map it */
+            if ( (l1e_get_flags(new) & _PAGE_PRESENT) &&
+                 !(l1e_get_flags(new) & _PAGE_PSE) &&
+                 mfn_valid(nmfn) )
+                npte = map_domain_page(nmfn);
+
+            gfn &= ~(L1_PAGETABLE_ENTRIES - 1);
+
+            for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
+            {
+                if ( !npte ||
+                     !p2m_is_ram(p2m_flags_to_type(l1e_get_flags(npte[i]))) ||
+                     !mfn_eq(l1e_get_mfn(npte[i]), omfn) )
+                {
+                    /* This GFN->MFN mapping has gone away */
+                    sh_remove_all_shadows_and_parents(d, omfn);
+                    if ( sh_remove_all_mappings(d, omfn, _gfn(gfn + i)) )
+                        flush = true;
+                }
+                omfn = mfn_add(omfn, 1);
+            }
+
+            if ( npte )
+                unmap_domain_page(npte);
+        }
+
+        break;
+    }
+
+    if ( flush )
+        guest_flush_tlb_mask(d, d->dirty_cpumask);
+}
+
+#if (SHADOW_OPTIMIZATIONS & SHOPT_FAST_FAULT_PATH)
+static void
+sh_write_p2m_entry_post(struct p2m_domain *p2m, unsigned int oflags)
+{
+    struct domain *d = p2m->domain;
+
+    /* If we're doing FAST_FAULT_PATH, then shadow mode may have
+       cached the fact that this is an mmio region in the shadow
+       page tables.  Blow the tables away to remove the cache.
+       This is pretty heavy handed, but this is a rare operation
+       (it might happen a dozen times during boot and then never
+       again), so it doesn't matter too much. */
+    if ( d->arch.paging.shadow.has_fast_mmio_entries )
+    {
+        shadow_blow_tables(d);
+        d->arch.paging.shadow.has_fast_mmio_entries = false;
+    }
+}
+#else
+# define sh_write_p2m_entry_post NULL
+#endif
+
+void shadow_p2m_init(struct p2m_domain *p2m)
+{
+    p2m->write_p2m_entry_pre  = sh_unshadow_for_p2m_change;
+    p2m->write_p2m_entry_post = sh_write_p2m_entry_post;
+}
+
+/**************************************************************************/
 /* VRAM dirty tracking support */
 int shadow_track_dirty_vram(struct domain *d,
                             unsigned long begin_pfn,
--- a/xen/include/asm-x86/p2m.h
+++ b/xen/include/asm-x86/p2m.h
@@ -278,7 +278,6 @@ struct p2m_domain {
                                                   unsigned long first_gfn,
                                                   unsigned long last_gfn);
     void               (*memory_type_changed)(struct p2m_domain *p2m);
-#endif
     void               (*write_p2m_entry_pre)(struct domain *d,
                                               unsigned long gfn,
                                               l1_pgentry_t old,
@@ -286,6 +285,7 @@ struct p2m_domain {
                                               unsigned int level);
     void               (*write_p2m_entry_post)(struct p2m_domain *p2m,
                                                unsigned int oflags);
+#endif
 #if P2M_AUDIT
     long               (*audit_p2m)(struct p2m_domain *p2m);
 #endif
@@ -788,8 +788,6 @@ int __must_check p2m_set_entry(struct p2
 #if defined(CONFIG_HVM)
 /* Set up function pointers for PT implementation: only for use by p2m code */
 extern void p2m_pt_init(struct p2m_domain *p2m);
-#elif defined(CONFIG_SHADOW_PAGING)
-# define p2m_pt_init shadow_p2m_init
 #else
 static inline void p2m_pt_init(struct p2m_domain *p2m) {}
 #endif



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:14:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:14:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109216.208464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxKb-0006W1-UQ; Mon, 12 Apr 2021 14:14:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109216.208464; Mon, 12 Apr 2021 14:14:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxKb-0006Vu-Qn; Mon, 12 Apr 2021 14:14:25 +0000
Received: by outflank-mailman (input) for mailman id 109216;
 Mon, 12 Apr 2021 14:14:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxKa-0006Vi-Ih
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:14:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 340aa3eb-3687-42f3-ba84-dd321bf55e96;
 Mon, 12 Apr 2021 14:14:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CDFB4B0C6;
 Mon, 12 Apr 2021 14:14: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: 340aa3eb-3687-42f3-ba84-dd321bf55e96
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618236862; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=gI02vjjowQWzzvN/gkSlZfdNhI0WKj+tm5YpsfYK02w=;
	b=Fo/w+bGBe8LxHKE+Md8eMt8DqNigTQfaC0iTTVaJyrm267G46Gm7HYV8BspyZbbnUZ2vQe
	x3SaQUE4IGcqxy3aaYrnWw7rp3elzvJ/B3yCM3BUrLB3BOzB/XVURgVkDhjDu8Ow32CuSD
	1wUq7lJ5H1rR/po8dj6N+K9KXeIHvVo=
Subject: [PATCH v2 12/12] x86/p2m: re-arrange struct p2m_domain
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <f2db4101-d3fd-1a82-c38c-2efb69504821@suse.com>
Date: Mon, 12 Apr 2021 16:14:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Combine two HVM-specific sections in two cases (i.e. going from four of
them to just two). Make defer_nested_flush bool and HVM-only, moving it
next to other nested stuff. Move default_access up into a padding hole.

When moving them anyway, also adjust comment style.

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

--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -1167,7 +1167,7 @@ void p2m_change_type_range(struct domain
     ASSERT(p2m_is_changeable(ot) && p2m_is_changeable(nt));
 
     p2m_lock(hostp2m);
-    hostp2m->defer_nested_flush = 1;
+    hostp2m->defer_nested_flush = true;
 
     change_type_range(hostp2m, start, end, ot, nt);
 
@@ -1185,7 +1185,7 @@ void p2m_change_type_range(struct domain
                 p2m_unlock(altp2m);
             }
     }
-    hostp2m->defer_nested_flush = 0;
+    hostp2m->defer_nested_flush = false;
     if ( nestedhvm_enabled(d) )
         p2m_flush_nestedp2m(d);
 
--- a/xen/include/asm-x86/p2m.h
+++ b/xen/include/asm-x86/p2m.h
@@ -216,20 +216,15 @@ struct p2m_domain {
 
     p2m_class_t       p2m_class; /* host/nested/alternate */
 
-#ifdef CONFIG_HVM
-    /* Nested p2ms only: nested p2m base value that this p2m shadows.
-     * This can be cleared to P2M_BASE_EADDR under the per-p2m lock but
-     * needs both the per-p2m lock and the per-domain nestedp2m lock
-     * to set it to any other value. */
-#define P2M_BASE_EADDR     (~0ULL)
-    uint64_t           np2m_base;
-    uint64_t           np2m_generation;
+    /*
+     * Default P2M access type for each page in the the domain: new pages,
+     * swapped in pages, cleared pages, and pages that are ambiguously
+     * retyped get this access type.  See definition of p2m_access_t.
+     */
+    p2m_access_t default_access;
 
-    /* Nested p2ms: linked list of n2pms allocated to this domain. 
-     * The host p2m hasolds the head of the list and the np2ms are 
-     * threaded on in LRU order. */
-    struct list_head   np2m_list;
-#endif
+    /* Pages used to construct the p2m */
+    struct page_list_head pages;
 
     /* Host p2m: Log-dirty ranges registered for the domain. */
     struct rangeset   *logdirty_ranges;
@@ -237,21 +232,10 @@ struct p2m_domain {
     /* Host p2m: Global log-dirty mode enabled for the domain. */
     bool               global_logdirty;
 
-    /* Host p2m: when this flag is set, don't flush all the nested-p2m 
-     * tables on every host-p2m change.  The setter of this flag 
-     * is responsible for performing the full flush before releasing the
-     * host p2m's lock. */
-    int                defer_nested_flush;
-
 #ifdef CONFIG_HVM
     /* Alternate p2m: count of vcpu's currently using this p2m. */
     atomic_t           active_vcpus;
-#endif
-
-    /* Pages used to construct the p2m */
-    struct page_list_head pages;
 
-#ifdef CONFIG_HVM
     int                (*set_entry)(struct p2m_domain *p2m,
                                     gfn_t gfn,
                                     mfn_t mfn, unsigned int page_order,
@@ -306,11 +290,6 @@ struct p2m_domain {
     unsigned int defer_flush;
     bool_t need_flush;
 
-    /* Default P2M access type for each page in the the domain: new pages,
-     * swapped in pages, cleared pages, and pages that are ambiguously
-     * retyped get this access type.  See definition of p2m_access_t. */
-    p2m_access_t default_access;
-
     /* If true, and an access fault comes in and there is no vm_event listener, 
      * pause domain.  Otherwise, remove access restrictions. */
     bool_t       access_required;
@@ -357,6 +336,31 @@ struct p2m_domain {
         mm_lock_t        lock;         /* Locking of private pod structs,   *
                                         * not relying on the p2m lock.      */
     } pod;
+
+    /*
+     * Host p2m: when this flag is set, don't flush all the nested-p2m
+     * tables on every host-p2m change.  The setter of this flag
+     * is responsible for performing the full flush before releasing the
+     * host p2m's lock.
+     */
+    bool               defer_nested_flush;
+
+    /*
+     * Nested p2ms only: nested p2m base value that this p2m shadows.
+     * This can be cleared to P2M_BASE_EADDR under the per-p2m lock but
+     * needs both the per-p2m lock and the per-domain nestedp2m lock
+     * to set it to any other value.
+     */
+#define P2M_BASE_EADDR     (~0ULL)
+    uint64_t           np2m_base;
+    uint64_t           np2m_generation;
+
+    /*
+     * Nested p2ms: linked list of n2pms allocated to this domain.
+     * The host p2m hasolds the head of the list and the np2ms are
+     * threaded on in LRU order.
+     */
+    struct list_head   np2m_list;
 #endif
 
     union {



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:17:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:17:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109225.208479 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxNZ-0006m5-Dw; Mon, 12 Apr 2021 14:17:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109225.208479; Mon, 12 Apr 2021 14: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 1lVxNZ-0006ly-9s; Mon, 12 Apr 2021 14:17:29 +0000
Received: by outflank-mailman (input) for mailman id 109225;
 Mon, 12 Apr 2021 14:17:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qpGe=JJ=tklengyel.com=tamas@srs-us1.protection.inumbo.net>)
 id 1lVxNY-0006lt-3X
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:17:28 +0000
Received: from MTA-12-4.privateemail.com (unknown [198.54.127.107])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 12e6d011-a6ba-4416-9b10-7001dc58fb8d;
 Mon, 12 Apr 2021 14:17:27 +0000 (UTC)
Received: from mta-12.privateemail.com (localhost [127.0.0.1])
 by mta-12.privateemail.com (Postfix) with ESMTP id 90DFD80069
 for <xen-devel@lists.xenproject.org>; Mon, 12 Apr 2021 10:17:26 -0400 (EDT)
Received: from mail-wm1-f49.google.com (unknown [10.20.151.209])
 by mta-12.privateemail.com (Postfix) with ESMTPA id 5B0B280062
 for <xen-devel@lists.xenproject.org>; Mon, 12 Apr 2021 10:17:26 -0400 (EDT)
Received: by mail-wm1-f49.google.com with SMTP id p19so6938012wmq.1
 for <xen-devel@lists.xenproject.org>; Mon, 12 Apr 2021 07:17: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: 12e6d011-a6ba-4416-9b10-7001dc58fb8d
X-Gm-Message-State: AOAM532HtO+ZBqQxRWuhaqZ4fOcRyXSjb4XlEO/7DVrImKSBaBVVIBmy
	aB2Xd2hzSxXHDgu/Kdkd86LgTnXwF3bXm1LqQh4=
X-Google-Smtp-Source: ABdhPJw2es7oqLdjR2BkWa4H0seDxE0+ebV4ekb52DKXHV5EbwbxKJxug614hFU4IogGBXkUzZ044i/qWtAPtHlsFiw=
X-Received: by 2002:a05:600c:1405:: with SMTP id g5mr6716742wmi.186.1618237045195;
 Mon, 12 Apr 2021 07:17:25 -0700 (PDT)
MIME-Version: 1.0
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com> <91921cd4-902e-3341-10b7-718550658c8d@suse.com>
In-Reply-To: <91921cd4-902e-3341-10b7-718550658c8d@suse.com>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Mon, 12 Apr 2021 10:16:49 -0400
X-Gmail-Original-Message-ID: <CABfawhktuRFPuNQqs9fv2OXoYCxrTAaxbiXj-Ru1Li_8dwN4PQ@mail.gmail.com>
Message-ID: <CABfawhktuRFPuNQqs9fv2OXoYCxrTAaxbiXj-Ru1Li_8dwN4PQ@mail.gmail.com>
Subject: Re: [PATCH v2 08/12] x86: mem-access is HVM-only
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>, 
	=?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	George Dunlap <george.dunlap@citrix.com>, Alexandru Isaila <aisaila@bitdefender.com>, 
	Petre Pircalabu <ppircalabu@bitdefender.com>
Content-Type: text/plain; charset="UTF-8"
X-Virus-Scanned: ClamAV using ClamSMTP

On Mon, Apr 12, 2021 at 10:10 AM Jan Beulich <jbeulich@suse.com> wrote:
>
> By excluding the file from being built for !HVM, #ifdef-ary can be
> removed from it.
>
> The new HVM dependency on the Kconfig option is benign for Arm.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Tamas K Lengyel <tamas@tklengyel.com>


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:19:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:19:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109228.208490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxP3-0006tH-OS; Mon, 12 Apr 2021 14:19:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109228.208490; Mon, 12 Apr 2021 14:19:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxP3-0006tA-La; Mon, 12 Apr 2021 14:19:01 +0000
Received: by outflank-mailman (input) for mailman id 109228;
 Mon, 12 Apr 2021 14:18:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qpGe=JJ=tklengyel.com=tamas@srs-us1.protection.inumbo.net>)
 id 1lVxP1-0006t5-Lr
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:18:59 +0000
Received: from MTA-08-3.privateemail.com (unknown [198.54.127.61])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f5027034-09c6-4861-8a2f-ce687cff3bf2;
 Mon, 12 Apr 2021 14:18:59 +0000 (UTC)
Received: from MTA-08.privateemail.com (localhost [127.0.0.1])
 by MTA-08.privateemail.com (Postfix) with ESMTP id 263AA60056
 for <xen-devel@lists.xenproject.org>; Mon, 12 Apr 2021 10:18:58 -0400 (EDT)
Received: from mail-wm1-f53.google.com (unknown [10.20.151.210])
 by MTA-08.privateemail.com (Postfix) with ESMTPA id E484B60068
 for <xen-devel@lists.xenproject.org>; Mon, 12 Apr 2021 10:18:57 -0400 (EDT)
Received: by mail-wm1-f53.google.com with SMTP id
 5-20020a05600c0245b029011a8273f85eso6993939wmj.1
 for <xen-devel@lists.xenproject.org>; Mon, 12 Apr 2021 07:18: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: f5027034-09c6-4861-8a2f-ce687cff3bf2
X-Gm-Message-State: AOAM5311tibhDYMjUg9DXZaGhegKiiVhsUVVbljbCLEz1wXDvRZ11XMp
	u8D/rRezeZcIf6Lf3Ydku7/w/4ekWt0yfNmwvgc=
X-Google-Smtp-Source: ABdhPJwest+hAawm9Cv+0Nj3pqFfCZiwuEjZwNTEp7dA1zBuwXvpxKoJqgLSEuRE5x0jnM0COymlXPlOMlq+vi81XWo=
X-Received: by 2002:a7b:c20c:: with SMTP id x12mr12715302wmi.51.1618237136689;
 Mon, 12 Apr 2021 07:18:56 -0700 (PDT)
MIME-Version: 1.0
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com> <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
In-Reply-To: <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Mon, 12 Apr 2021 10:18:20 -0400
X-Gmail-Original-Message-ID: <CABfawhmiBnzZ=1DgRP9HVyADzO_ustsRFQFfoiYBG3z8m2gWUA@mail.gmail.com>
Message-ID: <CABfawhmiBnzZ=1DgRP9HVyADzO_ustsRFQFfoiYBG3z8m2gWUA@mail.gmail.com>
Subject: Re: [PATCH v2 09/12] x86: make mem-paging configuarable and default
 it to off for being unsupported
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>, 
	Ian Jackson <iwj@xenproject.org>, 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>, 
	Daniel de Graaf <dgdegra@tycho.nsa.gov>, Paul Durrant <paul@xen.org>, 
	Petre Pircalabu <ppircalabu@bitdefender.com>, Alexandru Isaila <aisaila@bitdefender.com>
Content-Type: text/plain; charset="UTF-8"
X-Virus-Scanned: ClamAV using ClamSMTP

On Mon, Apr 12, 2021 at 10:12 AM Jan Beulich <jbeulich@suse.com> wrote:
>
> While doing so, make the option dependent upon HVM, which really is the
> main purpose of the change.

IMHO it would be better to just remove this dead code altogether.

Tamas


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:22:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:22:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109235.208506 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxSZ-0007l1-AT; Mon, 12 Apr 2021 14:22:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109235.208506; Mon, 12 Apr 2021 14: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 1lVxSZ-0007ku-7C; Mon, 12 Apr 2021 14:22:39 +0000
Received: by outflank-mailman (input) for mailman id 109235;
 Mon, 12 Apr 2021 14:22:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVxSX-0007kp-J0
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:22:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ba5b87e3-e254-49a2-8669-c0f616e2480a;
 Mon, 12 Apr 2021 14:22:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B712BB02C;
 Mon, 12 Apr 2021 14:22: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: ba5b87e3-e254-49a2-8669-c0f616e2480a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618237355; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=XH/V3lInK/XwDn6SQjsDjTGOJgZr+co93gErvco3TI0=;
	b=iKLsrlz4bj5gnXdW+J/pkQeMkdPpOk7s658mlNKx7Xb+o4Q3eXhZjfin0sOgGn1Mpoe6Cw
	1XCcbN0A+bQk57q4naCNfgGIxyFF0LVRnHIv2TZFV+T/eyyQQp3xC22TVczJjMp9E7t9UC
	LioYvyftsiuLYrxkgbiVoe4JFPpYtjc=
Subject: Re: [PATCH v3 2/4] xen/arm: Handle cases when hardware_domain is NULL
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, Rahul Singh <rahul.singh@arm.com>,
 xen-devel@lists.xenproject.org
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-3-luca.fancellu@arm.com>
 <b1242714-e5f3-1e6b-f1bd-e9e53326fda7@suse.com>
 <9A775115-36A9-418F-B945-A778DE98672F@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <240cccb2-cf37-d01f-8861-1a5e8c21409d@suse.com>
Date: Mon, 12 Apr 2021 16:22:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <9A775115-36A9-418F-B945-A778DE98672F@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 12.04.2021 15:58, Luca Fancellu wrote:
> 
> 
>> On 12 Apr 2021, at 12:03, Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 12.04.2021 12:52, Luca Fancellu wrote:
>>> --- a/xen/include/xen/sched.h
>>> +++ b/xen/include/xen/sched.h
>>> @@ -1022,6 +1022,9 @@ static always_inline bool is_hardware_domain(const struct domain *d)
>>>     if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
>>>         return false;
>>>
>>> +    if ( !d )
>>> +        return false;
>>> +
>>>     return evaluate_nospec(d == hardware_domain);
>>> }
>>
>> On v2 I did say on the respective code that was here (and my
>> suggestion of this alternative adjustment): "Can you point out
>> code paths where d may actually be NULL, and where [...] would
>> not behave as intended (i.e. where bad speculation would
>> result)?"
>>
>> Since you've taken the suggestion as-is, and since the commit
>> message says nothing in either direction here, did you actually
>> verify that there's no abuse of speculation possible with this
>> extra return path? And did you find any caller at all which may
>> pass NULL into here?
> 
> Hi Jan,
> 
> I’ve analysed the code and seems that there are no path that calls 
> Is_hardware_domain() with a NULL domain, however I found this
> function in xen/arch/arm/irq.c:
> 
> bool irq_type_set_by_domain(const struct domain *d)
> {
>     return is_hardware_domain(d);
> }
> 
> That is calling directly is_hardware_domain and it is global.
> It can be the case that a future code can call irq_type_set_by_domain
> potentially with a null domain...

I don't think that a function being global (or not) matters here. This
might be different in an environment like Linux, where modules may
also call functions, and where guarding against NULL might be desirable
in certain cases.

> I introduced a check for the domain for that reason, do you think that
> maybe it’s better to put that check on the irq_type_set_by_domain instead?

If there's a specific reason to have a guard here, then it should be
here, yes. As per above I would think though that if there's no
present reason to check for NULL, such a check would best be omitted.
We don't typically check internal function arguments like this, after
all.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:27:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:27:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109242.208521 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxX5-0007xC-Uu; Mon, 12 Apr 2021 14:27:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109242.208521; Mon, 12 Apr 2021 14:27: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 1lVxX5-0007x5-Rd; Mon, 12 Apr 2021 14:27:19 +0000
Received: by outflank-mailman (input) for mailman id 109242;
 Mon, 12 Apr 2021 14:27:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w1kd=JJ=bitdefender.com=aisaila@srs-us1.protection.inumbo.net>)
 id 1lVxX5-0007x0-38
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:27:19 +0000
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe08::710])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1d084c0d-8312-48f3-ba4a-b9b40a1db3f8;
 Mon, 12 Apr 2021 14:27:18 +0000 (UTC)
Received: from AM0PR02MB4419.eurprd02.prod.outlook.com (2603:10a6:208:ea::27)
 by AM0PR02MB4242.eurprd02.prod.outlook.com (2603:10a6:208:e1::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Mon, 12 Apr
 2021 14:27:16 +0000
Received: from AM0PR02MB4419.eurprd02.prod.outlook.com
 ([fe80::ec4d:d9b4:af06:3958]) by AM0PR02MB4419.eurprd02.prod.outlook.com
 ([fe80::ec4d:d9b4:af06:3958%5]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 14:27:16 +0000
Received: from [192.168.1.109] (86.122.210.79) by
 VI1PR02CA0052.eurprd02.prod.outlook.com (2603:10a6:802:14::23) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.16 via Frontend Transport; Mon, 12 Apr 2021 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: 1d084c0d-8312-48f3-ba4a-b9b40a1db3f8
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gLBQbJ580TEyLTkt7ZRqOfV8hpI3INsfiEgUmxUQIG6OnBQlhJIe9DYoN8cxWA40KGovbwASXmX3EqrRgHLUXO3/Oau7hcuS0Tm5yyWQQCrT2Y9T/9JvDR42NfJcb+ONAPatyrhSH+b34TwXhHfhtapXMiFSYSqJwVSI+Bxu1CivPxApYj0OHWnnzeKao4fevaSJv8n60l0kp+wYyyxgmFih8AyuRjxP0wR3lx77qLI5+UB/uAt4or//BObkrk4GbhZ5B41+ZP48neRG0W9Z6aJde7e7qkSSEJjPKPTu5ULheJ+KjUczuqBxAXzifLELt6VmIEqR8Unr+Nb/zapTxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FnkxHMDWbJZFV0zyqBwEpD8xmSirVNxSsgefIWVMTc4=;
 b=esmI0glkyjZ4CKO2kRUdfCvA8SPjU3e4yiReXaGWfc067tMF2Z/Iw5k/UnOg3X3LQ4qWWILOi6UxHJ4tTDqB+GDHgEGAGCTYaazjezucpT5pQsPmh12sxBMCLrULAmOG8Au7bwl3ZxXO7ejFF+pRTT7BhVULoWadGnPnRr9gK/PUyoJFXWOmsRVHgRW4Bs2ixIkPk8xuoz2Cxup6/t5HId0aE0dbjUtsXcs1vmOI1cnnNXad6PAhFczp/382MXFQ2/x77pCkNnKFIN+R8JQso/eXvIDnrbKLTwSqGqRb6ovnyxgZitmkcRz6nrkwK1Fieg6Rt7QPIN3jl1+g53w2LQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=bitdefender.com; dmarc=pass action=none
 header.from=bitdefender.com; dkim=pass header.d=bitdefender.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=bitdefender.onmicrosoft.com; s=selector2-bitdefender-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FnkxHMDWbJZFV0zyqBwEpD8xmSirVNxSsgefIWVMTc4=;
 b=RlsKyRAgvygH09RkrGmsL6oZcl4EdaFb0EhpugItcpv9L3Q/sZJ0xPTaIepwy6/UFQo8JMFP1jUoRwMGCn5/YHwRuXGa/vM9AIyWZCKzdGluy9nlia4rXE+P5AraqCOpuNip6MAwjaLvr1tDu/dOK+mcGuQUPiII/xAFSYVhCPY=
Authentication-Results: bitdefender.com; dkim=none (message not signed)
 header.d=none;bitdefender.com; dmarc=none action=none
 header.from=bitdefender.com;
Subject: Re: [PATCH v2 09/12] x86: make mem-paging configuarable and default
 it to off for being unsupported
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>, Ian Jackson <iwj@xenproject.org>,
 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>, Daniel de Graaf <dgdegra@tycho.nsa.gov>,
 Paul Durrant <paul@xen.org>, Tamas K Lengyel <tamas@tklengyel.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
From: Isaila Alexandru <aisaila@bitdefender.com>
Organization: BD
Message-ID: <28057a1d-9a82-502e-662b-619ec08860c6@bitdefender.com>
Date: Mon, 12 Apr 2021 17:27:14 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.4.1
In-Reply-To: <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [86.122.210.79]
X-ClientProxiedBy: VI1PR02CA0052.eurprd02.prod.outlook.com
 (2603:10a6:802:14::23) To AM0PR02MB4419.eurprd02.prod.outlook.com
 (2603:10a6:208:ea::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8d99e960-cf35-4f92-a8f8-08d8fdbf127a
X-MS-TrafficTypeDiagnostic: AM0PR02MB4242:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
 <AM0PR02MB424249BEBD8B817A66C8DB3DAB709@AM0PR02MB4242.eurprd02.prod.outlook.com>
X-Is-Junk-Enabled: fGZTSsP0qEJE2AIKtlSuFiRRwg9xyHmJ
X-MS-Oob-TLC-OOBClassifiers: OLM:751;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BMeY0LiHEB+i12o6lDSqFA55FY8lJivuqPbxTBw2YXtXmPO0ODNgQbXpVjOPwbfWwHtpq7DFG4S//lgR8ZhmY0CE90C4kvrewmt/bNxQJRU/nzWiES/hjOEFHAiFjho9aoOAu5ySvj3OSfWZvUE6mRM8xG+46M/yghKWaGjBLG1zI9cazAhgTZg/xR9MP1lsbPi4sf/4CSOY5JSlF0DO8qWuhOdfE3Mm9Vj/4sov1xknRPL+hS8Ccvq4MjE/umkR4b4JDiJQ86AjJPFr/X4tUmdiUUfLdaRJlLu91cWwpZDBu5qhHVZUJCMvs2THuRrIWX9WCnD9xZUz6PtDIkQQXQ7uvZBzxnG+UVQZaGf3C8wX02xtUg9cIXVycKAwI7tsx/pPPuk5t8QUWG123wTr404tfR9x04pGnZfgAT41Uliya1N3O/fs8N+hJH2QWV9JpoYuBK80HHLA4ap390EDK2InrZC0o6u8zA/vAcmyV6xeiQ6HqQkJdwwLCokElD0IIyrC9qwuqxMqpT1KW5oLyrRVLWU1uw3viV81YkPJ/54Wr/EVhRmlD0xXKE1epSi6z4fBEa85pEKTClF8fHoxtbbBmLCKfsdZ1oFlwxXLdXiBm3FRvrkZwzKgg6KfWYV4mBzFwL+L+Kv8cs3a+JxhDZhAyqdPqbqf1APVKgpzs/2WzVlNC4GqOTMPkNzfPJuEbXcf9GbnjRHyIszqkdPjqg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR02MB4419.eurprd02.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(346002)(396003)(366004)(39850400004)(136003)(54906003)(4326008)(5660300002)(6486002)(16526019)(26005)(8936002)(110136005)(2906002)(38100700002)(478600001)(38350700002)(36916002)(66556008)(107886003)(16576012)(316002)(8676002)(66476007)(4744005)(956004)(2616005)(31696002)(31686004)(66946007)(186003)(53546011)(52116002)(36756003)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1102;
X-MS-Exchange-AntiSpam-MessageData:
	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
 =?utf-8?Q?mcfBjHzumQYvOcEjkCNV9D/C2JbuWSAWOtC7uPq?=
X-OriginatorOrg: bitdefender.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8d99e960-cf35-4f92-a8f8-08d8fdbf127a
X-MS-Exchange-CrossTenant-AuthSource: AM0PR02MB4419.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 14:27:16.5223
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 487baf29-f1da-469a-9221-243f830c36f3
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rWdaBUo2+mBp5RZcqPqm764KN2CnSYoABhRWTD1YUVXbsn3AcCr6uw9uTOCuuixj3zdWnnFdEYL6M2Wfsm2kEYaM2Xc7isiN0gSptt0Rci0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR02MB4242



On 12.04.2021 17:12, Jan Beulich wrote:
> CAUTION: This email originated from outside of our organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
> 
> While doing so, make the option dependent upon HVM, which really is the
> main purpose of the change.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Alexandru Isaila <aisaila@bitdefender.com>



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:47:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:47:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109250.208536 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxqO-0001Nw-ME; Mon, 12 Apr 2021 14:47:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109250.208536; Mon, 12 Apr 2021 14: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 1lVxqO-0001Np-JD; Mon, 12 Apr 2021 14:47:16 +0000
Received: by outflank-mailman (input) for mailman id 109250;
 Mon, 12 Apr 2021 14:47:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w1kd=JJ=bitdefender.com=aisaila@srs-us1.protection.inumbo.net>)
 id 1lVxqM-0001Nk-Vd
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:47:15 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.129]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4bd1f43e-a0c0-4f1b-9872-c6a672f0360b;
 Mon, 12 Apr 2021 14:47:14 +0000 (UTC)
Received: from AM0PR02MB4419.eurprd02.prod.outlook.com (2603:10a6:208:ea::27)
 by AM4PR0202MB2964.eurprd02.prod.outlook.com (2603:10a6:200:8e::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Mon, 12 Apr
 2021 14:47:12 +0000
Received: from AM0PR02MB4419.eurprd02.prod.outlook.com
 ([fe80::ec4d:d9b4:af06:3958]) by AM0PR02MB4419.eurprd02.prod.outlook.com
 ([fe80::ec4d:d9b4:af06:3958%5]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 14:47:12 +0000
Received: from [192.168.1.109] (86.122.210.79) by
 VI1P189CA0030.EURP189.PROD.OUTLOOK.COM (2603:10a6:802:2a::43) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Mon, 12 Apr 2021 14: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>
X-Inumbo-ID: 4bd1f43e-a0c0-4f1b-9872-c6a672f0360b
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L5VEf6n4/1pYQX07RSYQ/Tof6n7c/a++3G2gzeZK237S0n4glM31R8663tkUAlTu2Os3T1EP6YdaRwJVtkisAuxIUXs48jXOEih/BL9ESUmDjrvdV9wg1cNZvXuS6Yv/i/fNVSMBlkfu2JYcI1cGCGIXv6KDUDhWSjkVmsA2KljRSgUGzlSLnGNmvp2mv3kShBl+GospFeNkvhlU9SnLDAbKfsnQxI/BKbfFhw6yz+g95ujtZC01ZQ5AJ5glg7qZ/qe6aBiF3UegIzj2R6+zpC0z+MLKME+EPw0J5tr7fG9nXYL+xENYpGH1yviomis/kY2a8XIvmr6vtiKPu/U/dw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q+yVK5v1l6mR0z+M3KcbJN+yI+lmp6fc1FTue36dnz4=;
 b=mI8cnikvafn/M+cmSVa7k0J8niDV+JpX1L01ySG7ocal8A8Qq70tkknHFK3NCXNyGyv53YMYUVA3CXexY2VCEKnk8xjKcZ0WAWqL3bxrqPnbyGFS4q/KmDTxVGZmhUWfCabVPSauPLBVzlsKFXmyt9smLOEbodZyWagl8ulrgczCPrhn2tau+RvlfUh0XocNnNtu018TaSU56Gfyh2Kbycq/2WIVu8pFQo4uG7WGprKGe/42aBBOCY6DFIz0qWgzOg+bkXEA+4WdYVVX/qfiYcnDB3rZu7qsttwz8H9GC+lB65ROQIwSWcId5iy3p0DtwBiAml/Bx7rUIIKdOi2O0Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=bitdefender.com; dmarc=pass action=none
 header.from=bitdefender.com; dkim=pass header.d=bitdefender.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=bitdefender.onmicrosoft.com; s=selector2-bitdefender-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q+yVK5v1l6mR0z+M3KcbJN+yI+lmp6fc1FTue36dnz4=;
 b=R+0Pa/E2ECjTmjKAFyQCk7nebzE9wksGYkTeULVB98tZY9LWtwKswrEkEMsOS8ynC5fbg7gKhtJZYiYyy7KzUw4dlKJw2eHYWGEyouP9V6yAOFsYd144COpVpNVrpgSA3sEGb1XJs7mmx3+PQV+8nfRjAN2SUOGtfDCJOS1RPwU=
Authentication-Results: bitdefender.com; dkim=none (message not signed)
 header.d=none;bitdefender.com; dmarc=none action=none
 header.from=bitdefender.com;
Subject: Re: [PATCH v2 09/12] x86: make mem-paging configuarable and default
 it to off for being unsupported
To: Tamas K Lengyel <tamas@tklengyel.com>, 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>, Ian Jackson <iwj@xenproject.org>,
 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>, Daniel de Graaf <dgdegra@tycho.nsa.gov>,
 Paul Durrant <paul@xen.org>, Petre Pircalabu <ppircalabu@bitdefender.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
 <CABfawhmiBnzZ=1DgRP9HVyADzO_ustsRFQFfoiYBG3z8m2gWUA@mail.gmail.com>
From: Isaila Alexandru <aisaila@bitdefender.com>
Organization: BD
Message-ID: <53fd24ee-02d3-861d-ed19-eec96d6f7c5d@bitdefender.com>
Date: Mon, 12 Apr 2021 17:47:09 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.4.1
In-Reply-To: <CABfawhmiBnzZ=1DgRP9HVyADzO_ustsRFQFfoiYBG3z8m2gWUA@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [86.122.210.79]
X-ClientProxiedBy: VI1P189CA0030.EURP189.PROD.OUTLOOK.COM
 (2603:10a6:802:2a::43) To AM0PR02MB4419.eurprd02.prod.outlook.com
 (2603:10a6:208:ea::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 239d5c0b-3b3b-4c30-6db9-08d8fdc1db29
X-MS-TrafficTypeDiagnostic: AM4PR0202MB2964:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
 <AM4PR0202MB2964F2F718A81DEBE70A7CF5AB709@AM4PR0202MB2964.eurprd02.prod.outlook.com>
X-Is-Junk-Enabled: fGZTSsP0qEJE2AIKtlSuFiRRwg9xyHmJ
X-MS-Oob-TLC-OOBClassifiers: OLM:6108;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	te5PzZNrL8MaVu+74/Sa6eXRp2xwXEFDt2pePLieeYnJXLYmX3AwiUp3QbZq55YtHJxx3j2pwjfDii5Qx7bTWaBGM/7QHAADLzyPm7McEcWHSOVqxt27bsomH+9pw/qzImjh5++ZOtIpaC3RBOZdofGemAdFpCUrU4csPJ7O5cV9li3okMdPqaKbCtQq7pEZiqcTVo3Xgsy+Cj91lcKLPfLuquP/l+EU/2Vu73wuSRQtdKHaAdNmdm1mmpiM4evFAsCO1QCneO+XvUyLN2vGSPWjxaM0QX8xj9PWxI2fuMafczGkeWXFzKXkL7pm/vDO4GVGcLqGwmPEQaCxNCGk6qqsHqR2lQF7DT1UX59rq6Nn5QkRhphUpbPJ8y/rnEYqZ7SkNx985DX+O+b1WdewE6OR+GukO6ItMdI5hXLDFeKOZnnITZOPWQKeRobIndWp2fgH8nrcQxaiSPJvehWfCAIBf2qQQFPp+wftqxRJzkZIM01TQigvANPUidXvbtxN9MMhquXRGvt1hNJ+3n2g7909QWryHATK8UyiJ4ncyh2a0Rr/3s2V/URpMRzlko9Kp0GAT1Vh05uc73b1/JMZSs5+0q3dPprDLDuuCq51l3/34iDq0YHAQ/qL0IcgeiwJy2/CH6Gk2+BnCeVfbWeEsVH84TXb5aqioLAlU+QenBMalRF+bg74s4z7rxsFRJco0yW8gqm3dTZDsNRMLRAY7A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR02MB4419.eurprd02.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(39850400004)(396003)(346002)(136003)(376002)(16526019)(2616005)(956004)(36756003)(6486002)(186003)(31686004)(86362001)(53546011)(38350700002)(8936002)(66556008)(4744005)(66946007)(66476007)(54906003)(26005)(2906002)(38100700002)(110136005)(16576012)(478600001)(31696002)(52116002)(8676002)(36916002)(316002)(4326008)(107886003)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1102;
X-MS-Exchange-AntiSpam-MessageData:
	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/zMSQQ6p?=
X-OriginatorOrg: bitdefender.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 239d5c0b-3b3b-4c30-6db9-08d8fdc1db29
X-MS-Exchange-CrossTenant-AuthSource: AM0PR02MB4419.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 14:47:12.1975
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 487baf29-f1da-469a-9221-243f830c36f3
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TsSz2IC0vvtX4t8a7NmeRb6zCWg4+wITyT4+dZF2EjTSgQgm3kyhoRELO6HKRddBlX3dd0LCHXInFTJOWffKE81kIlzlJHOcgLTZQsrvoak=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0202MB2964



On 12.04.2021 17:18, Tamas K Lengyel wrote:
> CAUTION: This email originated from outside of our organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
> 
> On Mon, Apr 12, 2021 at 10:12 AM Jan Beulich <jbeulich@suse.com> wrote:
>>
>> While doing so, make the option dependent upon HVM, which really is the
>> main purpose of the change.
> 
> IMHO it would be better to just remove this dead code altogether.
> 

I agree with Tamas here.

Alex


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:48:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:48:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109253.208548 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxri-0001VU-2V; Mon, 12 Apr 2021 14:48:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109253.208548; Mon, 12 Apr 2021 14:48:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxrh-0001VN-VY; Mon, 12 Apr 2021 14:48:37 +0000
Received: by outflank-mailman (input) for mailman id 109253;
 Mon, 12 Apr 2021 14:48:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w1kd=JJ=bitdefender.com=aisaila@srs-us1.protection.inumbo.net>)
 id 1lVxrg-0001VI-3m
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:48:36 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.0.99]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9e4368f6-e15b-4114-a4f2-f4e221b53a4c;
 Mon, 12 Apr 2021 14:48:34 +0000 (UTC)
Received: from AM0PR02MB4419.eurprd02.prod.outlook.com (2603:10a6:208:ea::27)
 by AM4PR0202MB2881.eurprd02.prod.outlook.com (2603:10a6:200:8c::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Mon, 12 Apr
 2021 14:48:32 +0000
Received: from AM0PR02MB4419.eurprd02.prod.outlook.com
 ([fe80::ec4d:d9b4:af06:3958]) by AM0PR02MB4419.eurprd02.prod.outlook.com
 ([fe80::ec4d:d9b4:af06:3958%5]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 14:48:32 +0000
Received: from [192.168.1.109] (86.122.210.79) by
 VI1P189CA0003.EURP189.PROD.OUTLOOK.COM (2603:10a6:802:2a::16) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.16 via Frontend Transport; Mon, 12 Apr 2021 14: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>
X-Inumbo-ID: 9e4368f6-e15b-4114-a4f2-f4e221b53a4c
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=clAMQOiLib3bpJQU9zmuLxDyMs7m7FiF/8tsHQvH+bqYOp76kvODnsxzQc7oKfIm9qAY+mfQx92pFzMk9DqTKUEWsDZAPE8aKbJX9cr8xzYtld6YgwyxbHsv53VskgaflXi8B94UDaCN4PjbjoLh+SkXeWnNgJvYoh6lu577P5P7ezXTEOMZl4zqcPpjYFTcOr5gWr15y6vwD9WQU9nLD1lE+9/8Zjk4atjQT5Y2brTZafw6CqnoZv25YAF5cegkBdDMitKFayu1jVP6Qb5CZsk5fg+fYTf7vKd+GN1kFE0d43iaNactNmLX85zoz8ezakMhlqgyiLiCR2NlUg59vA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KBTAJuMU5XdxnXVF6vC8NY6/ncwOlAiPeSKXDTR37N8=;
 b=i2mipoMtmqR/nS+0PQ913zXJh82mmZVuWpN2uIvI+LJpgY7M9hYUNqR4H9GjWaVDMY8ZhKEZ4Z8jTnwWhZuDD6cN8Mn5wuFFjMRNZ18f2nIK8mpK71uruIg4d/ANirgZEmxxdkEcS2dVfQ1YWJN4N/HIusYlNGDx6z+hiUGHIEkrTfIzF/rfRd/4l546cHf6EFcf6O/90GiqRmcDj5exNpkV1+PMeGlOp3QN42MPFgJOg4NoDHdwQSr2YmrbiRyeSZJumVDZbIopXQqF7zdy6MqN2Sp9C0s1ztLsoNp/uk9wYLWpKom6bTL5XiiCXpYUsY+8ruDR3VyVXT63YRHPrQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=bitdefender.com; dmarc=pass action=none
 header.from=bitdefender.com; dkim=pass header.d=bitdefender.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=bitdefender.onmicrosoft.com; s=selector2-bitdefender-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KBTAJuMU5XdxnXVF6vC8NY6/ncwOlAiPeSKXDTR37N8=;
 b=tx1Otkl7T2byWLbbiMp5LWWBSLe5Kg19VgUL00LYA1ez9mpcovW2yZJu+kWLrnV1k5pHt2aVUt53qoN0s1Z77DJIyNYPqIld3mcaYj76wciOA2K5nDh/5SV6uBgo7+6ZsIm/8ibL2OMJo+iA8ORZfy3jhgL5z66JTJ/dIr+IJtM=
Authentication-Results: bitdefender.com; dkim=none (message not signed)
 header.d=none;bitdefender.com; dmarc=none action=none
 header.from=bitdefender.com;
Subject: Re: [PATCH v2 08/12] x86: mem-access is HVM-only
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <91921cd4-902e-3341-10b7-718550658c8d@suse.com>
From: Isaila Alexandru <aisaila@bitdefender.com>
Organization: BD
Message-ID: <1d253246-d799-fead-6663-a4dc700299d0@bitdefender.com>
Date: Mon, 12 Apr 2021 17:48:30 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.4.1
In-Reply-To: <91921cd4-902e-3341-10b7-718550658c8d@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [86.122.210.79]
X-ClientProxiedBy: VI1P189CA0003.EURP189.PROD.OUTLOOK.COM
 (2603:10a6:802:2a::16) To AM0PR02MB4419.eurprd02.prod.outlook.com
 (2603:10a6:208:ea::27)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 45de828f-27dd-41f1-b93e-08d8fdc20ab0
X-MS-TrafficTypeDiagnostic: AM4PR0202MB2881:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
 <AM4PR0202MB2881F4C55DC9B65C2DFF5BBEAB709@AM4PR0202MB2881.eurprd02.prod.outlook.com>
X-Is-Junk-Enabled: fGZTSsP0qEJE2AIKtlSuFiRRwg9xyHmJ
X-MS-Oob-TLC-OOBClassifiers: OLM:6430;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KtmBZsSWufyux+YL1f7mrqKXQ0zmePkY3/XA8R/lFEGlp4UAGmOUKvH1cpON5dRXC7q+EoFjyxub+wkPxR7YQd+CJcO4WI3l5Qkv4uFZK2MKK2x+aI4dbgEOn8QQlQyKXN3LEsfn2tkrukTx2vpNypaRns80PQX5NFT8Snhe2UfFS27kIU5vMxHrcPG9JYSHu5E60reTQTr4uB5RYSvrSSdmm6Ibn84MSEuL/v2J3HzxCuDrB3F6HysE0SnO1ANyltWCfNEo46vd1EiMX/DvMEo5jdAgR6UpqrLy8y1hTPIzScoc7UZQbmuDutu45qZmvA5bzKW02pfrMqnqR4lOg6DoGwnavw9QTl1jkitzkj1l3DimsDXU28NCgzLRRaYIhMzep+VsZMHsjRFSCrvziB81r3VkWwA1cDY8ryJ737ABIFXYjX9rzKriu0EaHV3Qbs6U8hWiSvJCn94fWljMLO+ClU36UJ/UUKGsI1x5IZDO+tLGlOC8ro+vPOCwcImqpXQh8M5BxJGqRVKEm5nrZDJnGK2WNK76AmBSr3995Xox178Gi1jDWEPeihCyJ9Bu9VGFgmHRJwlN1/vA+44I3346xbXDdHGi0GGNwODr+mVG6HVV8VTz5VosMgWQDSOS2hj6HzoQO+So9xArrwFyrkQ+B1vT5ANnG5A8fK+9Qg77c6dfC3sw0nNmpc7cF0K7myc9WOJcKwkJVESTsoohpQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR02MB4419.eurprd02.prod.outlook.com;PTR:;CAT:NONE;SFS:(396003)(346002)(136003)(39850400004)(376002)(366004)(26005)(478600001)(4326008)(31696002)(316002)(2906002)(110136005)(186003)(86362001)(54906003)(107886003)(66946007)(8676002)(16526019)(4744005)(53546011)(36756003)(38350700002)(38100700002)(36916002)(956004)(52116002)(31686004)(2616005)(66476007)(66556008)(5660300002)(16576012)(8936002)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1102;
X-MS-Exchange-AntiSpam-MessageData:
	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
X-OriginatorOrg: bitdefender.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 45de828f-27dd-41f1-b93e-08d8fdc20ab0
X-MS-Exchange-CrossTenant-AuthSource: AM0PR02MB4419.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 14:48:31.8841
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 487baf29-f1da-469a-9221-243f830c36f3
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: h+Wsl95BrvI5mXaEhBT/V24d4Od3FznG/lDlTi/Z5X1fq+Z6brnM+5tIYAVyrkFk4PymwDCrGOOUY0lLxeBOZ4wP4MSLHmC2m2WsOFYXWd8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0202MB2881



On 12.04.2021 17:10, Jan Beulich wrote:
> CAUTION: This email originated from outside of our organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
> 
> By excluding the file from being built for !HVM, #ifdef-ary can be
> removed from it.
> 
> The new HVM dependency on the Kconfig option is benign for Arm.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Alexandru Isaila <aisaila@bitdefender.com>


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 14:49:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 14:49:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109258.208560 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVxst-0001eN-Hu; Mon, 12 Apr 2021 14:49:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109258.208560; Mon, 12 Apr 2021 14:49: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 1lVxst-0001eG-Eq; Mon, 12 Apr 2021 14:49:51 +0000
Received: by outflank-mailman (input) for mailman id 109258;
 Mon, 12 Apr 2021 14:49:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L7uB=JJ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lVxss-0001eA-AH
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 14:49:50 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d12217d5-20df-4821-ba81-61d023beb080;
 Mon, 12 Apr 2021 14:49: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: d12217d5-20df-4821-ba81-61d023beb080
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618238988;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=L+JdXt1SzKzNTyKq2EgQOpmwveflVs2Zx3b8/2q4gq4=;
  b=JqGZYLrgRavxD7/pb0ovvZYfPgdy3B8Qr3kGoN5h1RDFgJYxvlKfqHCy
   EbGGhqdM4fdDBNrbv5gwmoZsOM3codlhL2RWk8y2uic24T+NGkz7TULQ3
   GvsDgNVtCVMu5YjgKMEzMX0nfWeqMcK5omdEqlqTa14T8lIRqRVYNciTH
   Q=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Yit578DTXAgMPoZCc2TUi4XlNrpguQScsjztvxec6YEuEMHn1s+PfFCph6R4BKWUKhDMhqe/mY
 zh0+up1iZERix2u5rAs6vUhSwqnWwKVQ9rc+S/Uip4IQak/bAPed8fMvBvyJ1E4+3yT58DRMBk
 BBWB+Docwl8uuKPXtMFJiJefyloTedSLPb7R5HI0BivFWEeEO2Qlq5WQDvk+nvR1TVSSh4zCxk
 DX0zkt9hCbFg+iXLeYVGF5jxqWqqazFRvqsX0xo6JE466yeetluBterdenE0LI9Uct/pDd2IXz
 RZ4=
X-SBRS: 5.1
X-MesageID: 41396576
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:JAIbYaoFwuox3/PpWUTmpVYaV5v5L9V00zAX/kB9WHVpW+SFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex7h3LR+iLNwAZ6JWg76tGy0aLxz9IeK+UyFJwTS1M54kZ
 1hfa93FcHqATFB5/rSzQGkH78br+Wv37uvgY7loUtFaSFPR+Ve4xxiCgCde3cGITVuIZYiDp
 KT6o5milObCBcqR/+2DHUEQOTPzuej/P7bSCULGgI97022hS6ogYSQLzGjwhwcXzlTqI1Sk1
 TtrgqR3MSemsD+8DDw/Sv575NamNzuo+EzefCku4wuBRjHziqtbIRlcbWesD4yu/HH0idXrP
 D85y0OEu42x3TNfnykgRaF4Xie7B8er0XM5HXdoXz/rdf3TDg3YvAx+75xQ1/ixGcL+PRfuZ
 g7uF6xht5sIj7r2BnZ3ZzuUSpnk0KlyEBS6tI7vjhkfqY1LINKoZd3xjIyLL4wWBjUxaoAC+
 dUAMTV9J9tACmnRkGchGVpzdC2N05DZyuucwwHssyR5TBcgGp0+Use3NAehXcN7vsGOuF529
 g=
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41396576"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jfWC+kQswF72aO/tTEA8+CERNjno/nU4FLNv2GANcifPogO/+Dgj9P5PPZl6XETtrHR17QZbUhnnjpussc8FmAwQNV9Uq0xM56ZS5zN0R8QPrwtdH90cr+xYCuQ6Md8HxiE/gZ14QgEpfVWGL2Y6zWVVOm1v4Dm19wQ3IMosFBZkEC/cQBU4PgVw3Gtgk2EmxxEa5zy+873pb7ABT3xdwvbkez9ESDLzwe63Ho7jY2KC30RbUiNQHkbDdyHW9vhHJOvseyzrg8CaEdlxVvTqQWlcu6ybOBf3hCsFKrF4t93O7/iPVV+qWV14DyIol8ynBS6ZJjVcZt9a3sBqA4y6Zw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TBPdAEzLTeacBZZ++lg+2ivXRlWRkIjkwoUGETJAqq0=;
 b=gLoj1L/rtwk9LzXqKe/QYvCv593arLegm9yIe2U7mvHOCmeVeq7mV9loinMVKT4cAjt/SYB9YcQzTxtzBXxUUDGYJDgJyEvSlWfawnCkmYNjh2jafdxbKIog9eZjlwMBLOG7EAvM2/Qhylv5+JkrIZVpjIJ+goPI9fwMjO6K77ntJbnlRCQMT79ERiaUyIoL59PDYtDhM66BnEnwzBkjDBPyZBv0RkPnER60dtUzt+T1X25RbK+SI3sJ4Kn6TfmyMQfGf5RaBoDwqCBPiOmSq0AowSbUJazinvuua7CKyEBAOzUlnY2/yNh1RKMPM8lAA4qaI6uJxAd5l4R4ZId9ZA==
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=TBPdAEzLTeacBZZ++lg+2ivXRlWRkIjkwoUGETJAqq0=;
 b=lCE/dZZWllg0flUka27lCp1WsrEvWGFEZt/sYh3IJHjkY/BfSGsecopdZHiLZ31/9q0p6rQDnO4M8bG5j0+pJXCjt8HTOB7NxK2y8yu1kaHiRDziirm5LrZP1OGY2p8gzuVjpABiQbwcDKfDgBvf64mRSjvUdOdUIA8MLdTIdrU=
Date: Mon, 12 Apr 2021 16:49: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 1/2] x86: correct is_pv_domain() when !CONFIG_PV
Message-ID: <YHReAkwZPnnh2itL@Air-de-Roger>
References: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
 <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
 <YHQUJw8H2tgNy5iY@Air-de-Roger>
 <169d6a5b-81ec-f347-8edc-60ba6ab0864f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <169d6a5b-81ec-f347-8edc-60ba6ab0864f@suse.com>
X-ClientProxiedBy: MR2P264CA0149.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::12) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 885b0509-0f41-47a7-43b8-08d8fdc2364a
X-MS-TrafficTypeDiagnostic: DM6PR03MB3578:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB35781B267543BD631D2C45668F709@DM6PR03MB3578.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: qlcL2OrA+QlZqrtYEJCIu/bryofjYDUL4+LOOzaa6UgqWMXZVYt1gCjzcvSoh2fiK0FzOr1ox+qhGD/2NBe4Gv4V6ItteQfZmkXgVftJhuCFR49VyMw9VSPJ3nhTjtMTDmSbU/xwgKx9jClpKkrfC8SYUIWhZur1+JdtxBDZjYTRhnnwgXpHYXp+AV4GT9uXoh3ksl03CRrglH4jP24nJYlT0yj5pU1oltShXl3ucCO5eGsx42tp3kBF0yKS6FB/jPK4OsgoWpEfOUT/0KE+H8vNV4tkh8W6Tc8ZQgkZSuUI8Nv6N/rer1DdRoyWBMVC+L1NR8cn5wVwO/faqxCY1cTGuzl01rDii/xf3vn54I36ggZlVy7CP/wfAJhx/auclUGhjKv/ft9PxJc6EkFR4KHqiPzX0Mmkkzfk3z5+Ip7SX4Et6HKaQTYZ73/IaiPtYalbYNTBZICazXQEwVsCuuWfWpzrzJUV9c/Sm0a5Wt7YVFWNOb+a038hR34mHLQQ8Lr+Hj8v1PX3s7C4sujg76+2QRTldcMNo+bX6eeZ4Jd/ZiVHR+VC55h/KbQiVJUaZMXEH/zGdq1ONuSJceubkBlYICTSIqXsOyUfD/5LFM0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(396003)(366004)(136003)(39860400002)(376002)(346002)(186003)(16526019)(6666004)(86362001)(6486002)(9686003)(316002)(6916009)(54906003)(38100700002)(66946007)(478600001)(83380400001)(66476007)(26005)(8936002)(85182001)(956004)(8676002)(5660300002)(33716001)(2906002)(66556008)(53546011)(6496006)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 885b0509-0f41-47a7-43b8-08d8fdc2364a
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 14:49:45.0548
 (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: 5fbvO5NsH3NWGBvaFxm77LBWki81qTk7nXn/eW+z6NzTDRju5UW3WrYMoHubx1LKUsXKel1ACtlpNjTX5kjphg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3578
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 12:07:12PM +0200, Jan Beulich wrote:
> On 12.04.2021 11:34, Roger Pau Monné wrote:
> > On Fri, Nov 27, 2020 at 05:54:57PM +0100, Jan Beulich wrote:
> >> --- a/xen/arch/x86/dom0_build.c
> >> +++ b/xen/arch/x86/dom0_build.c
> >> @@ -568,7 +568,7 @@ int __init construct_dom0(struct domain
> >>  
> >>      if ( is_hvm_domain(d) )
> >>          rc = dom0_construct_pvh(d, image, image_headroom, initrd, cmdline);
> >> -    else if ( is_pv_domain(d) )
> >> +    else if ( is_pv_64bit_domain(d) || is_pv_32bit_domain(d) )
> > 
> > Urg, that's very confusing IMO, as I'm sure I would ask someone to
> > just use is_pv_domain without realizing. It needs at least a comment,
> > but even then I'm not sure I like it.
> 
> I can add a comment, sure, but I think this is as confusing (or not)
> as ...
> 
> > So that I understand it, the point to use those expressions instead of
> > is_pv_domain is to avoid calling dom0_construct_pv when CONFIG_PV is
> > not enabled?
> > 
> > Maybe it wold be better to instead use:
> > 
> > if ( IS_ENABLED(CONFIG_PV) && is_pv_domain(d) )
> 
> ... this.
> 
> > In any case I wonder if we should maybe aim to introduce a new type
> > for system domains, that's neither PV or HVM, in order to avoid having
> > system domains qualified as PV even when PV is compiled out.
> 
> This was my first thought, too, but would come with a much higher
> price tag: We'd need to audit all uses for whether they're meant
> to include the special domains. And this includes auditing of cases
> where !is_hvm_*() may be inferred to mean is_pv_*().

What about we provide a dummy dom0_construct_pv that returns
-EOPNOTSUPP when !CONFIG_PV and take rc into account for the panic
call in construct_dom0 ie:

    if ( is_hvm_domain(d) )
        rc = dom0_construct_pvh(d, image, image_headroom, initrd, cmdline);
    else
        rc = dom0_construct_pv(d, image, image_headroom, initrd, cmdline);

    if ( rc == -EOPNOTSUPP )
        panic("Cannot construct Dom0. No guest interface available\n");
    if ( rc )
        return rc;

I think that's likely less confusing that the alternatives.

> >> --- a/xen/arch/x86/domain.c
> >> +++ b/xen/arch/x86/domain.c
> >> @@ -1544,6 +1544,7 @@ arch_do_vcpu_op(
> >>   */
> >>  static void load_segments(struct vcpu *n)
> >>  {
> >> +#ifdef CONFIG_PV
> >>      struct cpu_user_regs *uregs = &n->arch.user_regs;
> >>      unsigned long gsb = 0, gss = 0;
> >>      bool compat = is_pv_32bit_vcpu(n);
> >> @@ -1709,6 +1710,7 @@ static void load_segments(struct vcpu *n
> >>          regs->cs            = FLAT_KERNEL_CS;
> >>          regs->rip           = pv->failsafe_callback_eip;
> >>      }
> >> +#endif
> >>  }
> >>  
> >>  /*
> >> @@ -1723,6 +1725,7 @@ static void load_segments(struct vcpu *n
> >>   */
> >>  static void save_segments(struct vcpu *v)
> >>  {
> >> +#ifdef CONFIG_PV
> >>      struct cpu_user_regs *regs = &v->arch.user_regs;
> >>  
> >>      read_sregs(regs);
> >> @@ -1748,6 +1751,7 @@ static void save_segments(struct vcpu *v
> >>          else
> >>              v->arch.pv.gs_base_user = gs_base;
> >>      }
> >> +#endif
> >>  }
> > 
> > Could you move {load,save}_segments to pv/domain.c and rename to
> > pv_{load,save}_segments and provide a dummy handler for !CONFIG_PV in
> > pv/domain.h?
> > 
> > Sorry it's slightly more work, but I think it's cleaner overall.
> 
> Doing so was my first thought too, but we'd lose the present inlining
> of the functions. For save_segments() this could be dealt with by
> moving paravirt_ctxt_switch_from() as well, but load_segments() would
> remain.

I see, maybe worth marking as inline then or adding a note about why
they are not moved to pv/domain.c?

As an aside, why do we need to call load_segments with interrupts
enabled? Could we move it to paravirt_ctxt_switch_to?

> As an aside, I've long been wondering why we use
> paravirt_ctxt_switch_{from,to}() also for the idle domain. This
> presently prevents their movement to pv/domain.c. From my not overly
> detailed looking at it, I don't think anything the functions do
> actually applies to idle vcpus.
> 
> >> --- a/xen/include/xen/sched.h
> >> +++ b/xen/include/xen/sched.h
> >> @@ -985,7 +985,7 @@ static always_inline bool is_control_dom
> >>  
> >>  static always_inline bool is_pv_domain(const struct domain *d)
> >>  {
> >> -    return IS_ENABLED(CONFIG_PV) &&
> >> +    return IS_ENABLED(CONFIG_X86) &&
> >>          evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
> >>  }
> >>  
> >> @@ -1011,7 +1011,7 @@ static always_inline bool is_pv_32bit_vc
> >>  
> >>  static always_inline bool is_pv_64bit_domain(const struct domain *d)
> >>  {
> >> -    if ( !is_pv_domain(d) )
> >> +    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
> >>          return false;
> > 
> > I think overall is confusing to have a domain that returns true for
> > is_pv_domain but false for both is_pv_{64,32}bit_domain checks.
> > 
> > I know those are only the system domains, but it feels confusing and
> > could cause mistakes in the future IMO, as then we would have to
> > carefully think where to use ( is_pv_64bit_domain(d)
> > || is_pv_32bit_domain(d) ) vs just using is_pv_domain(d), or
> > IS_ENABLED(CONFIG_PV) && is_pv_domain(d)
> 
> Imo it's not "then we would have to carefully think where to use ..."
> but instead this patch is an indication that we should have been for
> quite some time. For this reason (coming back to your first comment
> at the top) I'm not sure adding a comment _there_ is actually useful.
> Every use of is_pv_*() needs carefully considering which domains are
> really meant.

Maybe we shouldn't have used is_pv_domain as a way to hide code from
the compiler and instead always provide dummy functions, as even with
PV support compiled out we still need some of it for system domains.

I'm not sure I have a good proposal to make, but it seems wrong to me
that is_pv_domain(d) could be different than is_pv_64bit_domain(d) ||
is_pv_32bit_domain(d).

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:07:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:07:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109270.208572 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVy9X-0003U4-0p; Mon, 12 Apr 2021 15:07:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109270.208572; Mon, 12 Apr 2021 15:07:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVy9W-0003Tx-TV; Mon, 12 Apr 2021 15:07:02 +0000
Received: by outflank-mailman (input) for mailman id 109270;
 Mon, 12 Apr 2021 15:07:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lFJS=JJ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lVy9V-0003Ts-BP
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:07:01 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c4e29241-7a21-44ad-9e89-74432eb63413;
 Mon, 12 Apr 2021 15:06: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: c4e29241-7a21-44ad-9e89-74432eb63413
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618240019;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=J8KUvwpSCGhcc3uERoRMi4Y05lThLZU10/kqpSRmeOQ=;
  b=cLkpZEy1wwM0/gUp0jb4z5Bw9nl1JJpEs7WmrFSnMj1jYbP+qKVMkJXZ
   g3tJPcPK/xVOQF3mwD7tVZ360U5TGhJT/pJekfqT1m98Vc2c059Ujc3YS
   UDlRJTIAe7sp3Sx6KQmGzSWiKdI5fAa8S1Kehi2MkoqqC0CmdtSxaMvHh
   o=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: SqfyucxhZ8QZ8MpJaAe7YGKvUH1cahdaYbfR0jOBrbB5S92F2wn2pQ4YcewrZx8rwNzd16l24n
 hlVevdwo3p/lMpjaolewZQXUm271oe6ABl9fQb7HTW6U3o1eJcV+Hr3pZF5RPQV4YZc3uQcVNK
 KD3+JAVeOXX8jaQWjksIvNmlc1QdDF/JFx2dELf+uveid0cfpdfXPX6uf3lsHQ2HlxBpUOVb6y
 An5PuwB5lr76yM0O6N6HBEGNsIQIx7Vg6zIjIJw28tGIp0qzYQKRYU4VFnLuSJilX8DJ8kuSya
 Gek=
X-SBRS: 4.0
X-MesageID: 41784965
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:zijMX6tZhPxxCtgkmbqJJTY87skDkNV00zAX/kB9WHVpW+az/v
 rOoN0w0xjohDENHEw6kdebN6WaBV/a/5h54Y4eVI3SOjXOkm2uMY1k8M/e0yTtcheOkdJ1+K
 98f8FFeb7NJHdgi8KS2maFOvIB5PXCz6yyn+fZyB5WPGVXQoVt9R1wBAreMmAefnglObMDGJ
 CR5tVKqlObEBx9BKnWOlA/U/XevNqOrZr6YHc9dmcawTOThjCl4qOSKXil9yoZOgkg/Z4StU
 zMkwn0/cyYwpSG9iM=
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41784965"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH v2] x86/cpuid: Advertise no-lmsl unilaterally to hvm guests
Date: Mon, 12 Apr 2021 16:06:41 +0100
Message-ID: <20210412150641.24450-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

While part of the original AMD64 spec, Long Mode Segment Limit was a feature
not picked up by Intel, and therefore didn't see much adoption in software.
AMD have finally dropped the feature from hardware, and allocated a CPUID bit
to indicate its absence.

Xen has never supported the feature for guests, even when running on capable
hardware, so advertise the feature's absence unilaterally.

There is nothing specifically wrong with exposing this bit to PV guests, but
the PV ABI doesn't include a working concept of MSR_EFER in the first place,
so exposing it to PV guests would be out-of-place.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

v2:
 * Discuss PV guests in the commit message.
 * Add a dependency on LM.
 * s/lmsle/lmsl/
---
 tools/libs/light/libxl_cpuid.c              | 1 +
 tools/misc/xen-cpuid.c                      | 1 +
 xen/arch/x86/cpuid.c                        | 6 ++++++
 xen/include/public/arch-x86/cpufeatureset.h | 1 +
 xen/tools/gen-cpuid.py                      | 4 +++-
 5 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index 289c59c742..aee28b0430 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -270,6 +270,7 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str)
         {"rstr-fp-err-ptrs", 0x80000008, NA, CPUID_REG_EBX, 2, 1},
         {"wbnoinvd",     0x80000008, NA, CPUID_REG_EBX,  9,  1},
         {"ibpb",         0x80000008, NA, CPUID_REG_EBX, 12,  1},
+        {"no-lmsl",      0x80000008, NA, CPUID_REG_EBX, 20,  1},
         {"ppin",         0x80000008, NA, CPUID_REG_EBX, 23,  1},
 
         {"nc",           0x80000008, NA, CPUID_REG_ECX,  0,  8},
diff --git a/tools/misc/xen-cpuid.c b/tools/misc/xen-cpuid.c
index 2d04162d8d..628e8f5aa2 100644
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -152,6 +152,7 @@ static const char *const str_e8b[32] =
 
     [12] = "ibpb",
 
+    [20] = "no-lmsl",
     /* [22] */                 [23] = "ppin",
 };
 
diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 18b08d9b87..050cd5713e 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -456,6 +456,12 @@ static void __init calculate_hvm_max_policy(void)
     __set_bit(X86_FEATURE_X2APIC, hvm_featureset);
 
     /*
+     * We don't support EFER.LMSLE at all.  AMD has dropped the feature from
+     * hardware and allocated a CPUID bit to indicate its absence.
+     */
+    __set_bit(X86_FEATURE_NO_LMSL, hvm_featureset);
+
+    /*
      * On AMD, PV guests are entirely unable to use SYSENTER as Xen runs in
      * long mode (and init_amd() has cleared it out of host capabilities), but
      * HVM guests are able if running in protected mode.
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index a501479820..42bc8d4279 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -255,6 +255,7 @@ XEN_CPUFEATURE(CLZERO,        8*32+ 0) /*A  CLZERO instruction */
 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) */
+XEN_CPUFEATURE(NO_LMSL,       8*32+20) /*S  EFER.LMSLE no longer supported. */
 XEN_CPUFEATURE(AMD_PPIN,      8*32+23) /*   Protected Processor Inventory Number */
 
 /* Intel-defined CPU features, CPUID level 0x00000007:0.edx, word 9 */
diff --git a/xen/tools/gen-cpuid.py b/xen/tools/gen-cpuid.py
index 36f67750e5..b953648b65 100755
--- a/xen/tools/gen-cpuid.py
+++ b/xen/tools/gen-cpuid.py
@@ -242,7 +242,9 @@ def crunch_numbers(state):
         # CX16 is only encodable in Long Mode.  LAHF_LM indicates that the
         # SAHF/LAHF instructions are reintroduced in Long Mode.  1GB
         # superpages, PCID and PKU are only available in 4 level paging.
-        LM: [CX16, PCID, LAHF_LM, PAGE1GB, PKU],
+        # NO_LMSL indicates the absense of Long Mode Segment Limits, which
+        # have been dropped in hardware.
+        LM: [CX16, PCID, LAHF_LM, PAGE1GB, PKU, NO_LMSL],
 
         # AMD K6-2+ and K6-III processors shipped with 3DNow+, beyond the
         # standard 3DNow in the earlier K6 processors.
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:22:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:22:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109277.208607 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyOp-0005Kr-TH; Mon, 12 Apr 2021 15:22:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109277.208607; Mon, 12 Apr 2021 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 1lVyOp-0005Kj-QC; Mon, 12 Apr 2021 15:22:51 +0000
Received: by outflank-mailman (input) for mailman id 109277;
 Mon, 12 Apr 2021 15:22:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVyOo-0005H5-Kp
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:22:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 27671eb9-dbd8-48f6-a987-bb6c5aa7864a;
 Mon, 12 Apr 2021 15:22:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5722FB2ED;
 Mon, 12 Apr 2021 15:22: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: 27671eb9-dbd8-48f6-a987-bb6c5aa7864a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618240964; 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=DyvNcPJRZFPXnapS8C7QFqN6bdycHTFXijiCVNv6ZnI=;
	b=Elw2iBdI0uU8eWUWaWPXoYDaAr6Sw2BB2HKZZcwiktdAA1Ndy2Y7w6t4SEz2DZpuNWXGPa
	dkhl82VCybKjYj/4y8ph2mnxPhu5NKLT/16tu8w+OrVIfFbd2suQ0M1fJu37ZjlP4rC8dP
	FGKaS1WvGjWWbIGbMLzUTZHtEYnvMvo=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 2/6] tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m table
Date: Mon, 12 Apr 2021 17:22:32 +0200
Message-Id: <20210412152236.1975-3-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210412152236.1975-1-jgross@suse.com>
References: <20210412152236.1975-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The core of a pv linux guest produced via "xl dump-core" is not usable
as since kernel 4.14 only the linear p2m table is kept if Xen indicates
it is supporting that. Unfortunately xc_core_arch_map_p2m() is still
supporting the 3-level p2m tree only.

Fix that by copying the functionality of map_p2m() from libxenguest to
libxenctrl.

Additionally the mapped p2m isn't of a fixed length now, so the
interface to the mapping functions needs to be adapted. In order not to
add even more parameters, expand struct domain_info_context and use a
pointer to that as a parameter.

Fixes: dc6d60937121 ("libxc: set flag for support of linear p2m list in domain builder")
Signed-off-by: Juergen Gross <jgross@suse.com>
---
This is a backport candidate.
---
 tools/include/xenguest.h      |   1 +
 tools/libs/ctrl/xc_core.c     |   5 +-
 tools/libs/ctrl/xc_core.h     |   8 +-
 tools/libs/ctrl/xc_core_arm.c |  23 +--
 tools/libs/ctrl/xc_core_x86.c | 256 ++++++++++++++++++++++++++++------
 tools/libs/ctrl/xc_private.h  |   1 +
 tools/libs/guest/xg_domain.c  |  17 +--
 7 files changed, 233 insertions(+), 78 deletions(-)

diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h
index 217022b6e7..781d40c119 100644
--- a/tools/include/xenguest.h
+++ b/tools/include/xenguest.h
@@ -700,6 +700,7 @@ struct xc_domain_meminfo {
     xen_pfn_t *pfn_type;
     xen_pfn_t *p2m_table;
     unsigned long p2m_size;
+    unsigned int p2m_frames;
 };
 
 int xc_map_domain_meminfo(xc_interface *xch, uint32_t domid,
diff --git a/tools/libs/ctrl/xc_core.c b/tools/libs/ctrl/xc_core.c
index b47ab2f6d8..9576bec5a3 100644
--- a/tools/libs/ctrl/xc_core.c
+++ b/tools/libs/ctrl/xc_core.c
@@ -574,8 +574,7 @@ xc_domain_dumpcore_via_callback(xc_interface *xch,
             goto out;
         }
 
-        sts = xc_core_arch_map_p2m(xch, dinfo->guest_width, &info, live_shinfo,
-                                   &p2m, &dinfo->p2m_size);
+        sts = xc_core_arch_map_p2m(xch, dinfo, &info, live_shinfo, &p2m);
         if ( sts != 0 )
             goto out;
 
@@ -945,7 +944,7 @@ out:
     if ( memory_map != NULL )
         free(memory_map);
     if ( p2m != NULL )
-        munmap(p2m, PAGE_SIZE * P2M_FL_ENTRIES);
+        munmap(p2m, PAGE_SIZE * dinfo->p2m_frames);
     if ( p2m_array != NULL )
         free(p2m_array);
     if ( pfn_array != NULL )
diff --git a/tools/libs/ctrl/xc_core.h b/tools/libs/ctrl/xc_core.h
index 36fb755da2..8ea1f93a10 100644
--- a/tools/libs/ctrl/xc_core.h
+++ b/tools/libs/ctrl/xc_core.h
@@ -138,14 +138,14 @@ int xc_core_arch_memory_map_get(xc_interface *xch,
                                 xc_dominfo_t *info, shared_info_any_t *live_shinfo,
                                 xc_core_memory_map_t **mapp,
                                 unsigned int *nr_entries);
-int xc_core_arch_map_p2m(xc_interface *xch, unsigned int guest_width,
+int xc_core_arch_map_p2m(xc_interface *xch, struct domain_info_context *dinfo,
                          xc_dominfo_t *info, shared_info_any_t *live_shinfo,
-                         xen_pfn_t **live_p2m, unsigned long *pfnp);
+                         xen_pfn_t **live_p2m);
 
-int xc_core_arch_map_p2m_writable(xc_interface *xch, unsigned int guest_width,
+int xc_core_arch_map_p2m_writable(xc_interface *xch, struct domain_info_context *dinfo,
                                   xc_dominfo_t *info,
                                   shared_info_any_t *live_shinfo,
-                                  xen_pfn_t **live_p2m, unsigned long *pfnp);
+                                  xen_pfn_t **live_p2m);
 
 int xc_core_arch_get_scratch_gpfn(xc_interface *xch, uint32_t domid,
                                   xen_pfn_t *gpfn);
diff --git a/tools/libs/ctrl/xc_core_arm.c b/tools/libs/ctrl/xc_core_arm.c
index 7b587b4cc5..93765a565f 100644
--- a/tools/libs/ctrl/xc_core_arm.c
+++ b/tools/libs/ctrl/xc_core_arm.c
@@ -66,33 +66,24 @@ xc_core_arch_memory_map_get(xc_interface *xch, struct xc_core_arch_context *unus
 
 static int
 xc_core_arch_map_p2m_rw(xc_interface *xch, struct domain_info_context *dinfo, xc_dominfo_t *info,
-                        shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m,
-                        unsigned long *pfnp, int rw)
+                        shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m, int rw)
 {
     errno = ENOSYS;
     return -1;
 }
 
 int
-xc_core_arch_map_p2m(xc_interface *xch, unsigned int guest_width, xc_dominfo_t *info,
-                        shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m,
-                        unsigned long *pfnp)
+xc_core_arch_map_p2m(xc_interface *xch, struct domain_info_context *dinfo, xc_dominfo_t *info,
+                        shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m)
 {
-    struct domain_info_context _dinfo = { .guest_width = guest_width };
-    struct domain_info_context *dinfo = &_dinfo;
-    return xc_core_arch_map_p2m_rw(xch, dinfo, info,
-                                   live_shinfo, live_p2m, pfnp, 0);
+    return xc_core_arch_map_p2m_rw(xch, dinfo, info, live_shinfo, live_p2m, 0);
 }
 
 int
-xc_core_arch_map_p2m_writable(xc_interface *xch, unsigned int guest_width, xc_dominfo_t *info,
-                              shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m,
-                              unsigned long *pfnp)
+xc_core_arch_map_p2m_writable(xc_interface *xch, struct domain_info_context *dinfo, xc_dominfo_t *info,
+                              shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m)
 {
-    struct domain_info_context _dinfo = { .guest_width = guest_width };
-    struct domain_info_context *dinfo = &_dinfo;
-    return xc_core_arch_map_p2m_rw(xch, dinfo, info,
-                                   live_shinfo, live_p2m, pfnp, 1);
+    return xc_core_arch_map_p2m_rw(xch, dinfo, info, live_shinfo, live_p2m, 1);
 }
 
 int
diff --git a/tools/libs/ctrl/xc_core_x86.c b/tools/libs/ctrl/xc_core_x86.c
index cb76e6207b..c8f71d4b75 100644
--- a/tools/libs/ctrl/xc_core_x86.c
+++ b/tools/libs/ctrl/xc_core_x86.c
@@ -17,6 +17,7 @@
  *
  */
 
+#include <inttypes.h>
 #include "xc_private.h"
 #include "xc_core.h"
 #include <xen/hvm/e820.h>
@@ -65,34 +66,169 @@ xc_core_arch_memory_map_get(xc_interface *xch, struct xc_core_arch_context *unus
     return 0;
 }
 
-static int
-xc_core_arch_map_p2m_rw(xc_interface *xch, struct domain_info_context *dinfo, xc_dominfo_t *info,
-                        shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m,
-                        unsigned long *pfnp, int rw)
+static inline bool is_canonical_address(uint64_t vaddr)
 {
-    /* Double and single indirect references to the live P2M table */
-    xen_pfn_t *live_p2m_frame_list_list = NULL;
-    xen_pfn_t *live_p2m_frame_list = NULL;
-    /* Copies of the above. */
-    xen_pfn_t *p2m_frame_list_list = NULL;
-    xen_pfn_t *p2m_frame_list = NULL;
+    return ((int64_t)vaddr >> 47) == ((int64_t)vaddr >> 63);
+}
 
-    uint32_t dom = info->domid;
-    int ret = -1;
-    int err;
-    int i;
+/* Virtual address ranges reserved for hypervisor. */
+#define HYPERVISOR_VIRT_START_X86_64 0xFFFF800000000000ULL
+#define HYPERVISOR_VIRT_END_X86_64   0xFFFF87FFFFFFFFFFULL
 
-    if ( xc_domain_nr_gpfns(xch, info->domid, &dinfo->p2m_size) < 0 )
+#define HYPERVISOR_VIRT_START_X86_32 0x00000000F5800000ULL
+#define HYPERVISOR_VIRT_END_X86_32   0x00000000FFFFFFFFULL
+
+static xen_pfn_t *
+xc_core_arch_map_p2m_list_rw(xc_interface *xch, struct domain_info_context *dinfo,
+                             uint32_t dom, shared_info_any_t *live_shinfo,
+                             uint64_t p2m_cr3)
+{
+    uint64_t p2m_vaddr, p2m_end, mask, off;
+    xen_pfn_t p2m_mfn, mfn, saved_mfn, max_pfn;
+    uint64_t *ptes = NULL;
+    xen_pfn_t *mfns = NULL;
+    unsigned int fpp, n_pages, level, n_levels, shift,
+                 idx_start, idx_end, idx, saved_idx;
+
+    p2m_vaddr = GET_FIELD(live_shinfo, arch.p2m_vaddr, dinfo->guest_width);
+    fpp = PAGE_SIZE / dinfo->guest_width;
+    dinfo->p2m_frames = (dinfo->p2m_size - 1) / fpp + 1;
+    p2m_end = p2m_vaddr + dinfo->p2m_frames * PAGE_SIZE - 1;
+
+    if ( dinfo->guest_width == 8 )
     {
-        ERROR("Could not get maximum GPFN!");
-        goto out;
+        mask = 0x0000ffffffffffffULL;
+        n_levels = 4;
+        p2m_mfn = p2m_cr3 >> 12;
+        if ( !is_canonical_address(p2m_vaddr) ||
+             !is_canonical_address(p2m_end) ||
+             p2m_end < p2m_vaddr ||
+             (p2m_vaddr <= HYPERVISOR_VIRT_END_X86_64 &&
+              p2m_end > HYPERVISOR_VIRT_START_X86_64) )
+        {
+            ERROR("Bad virtual p2m address range %#" PRIx64 "-%#" PRIx64,
+                  p2m_vaddr, p2m_end);
+            errno = ERANGE;
+            goto out;
+        }
+    }
+    else
+    {
+        mask = 0x00000000ffffffffULL;
+        n_levels = 3;
+        if ( p2m_cr3 & ~mask )
+            p2m_mfn = ~0UL;
+        else
+            p2m_mfn = (uint32_t)((p2m_cr3 >> 12) | (p2m_cr3 << 20));
+        if ( p2m_vaddr > mask || p2m_end > mask || p2m_end < p2m_vaddr ||
+             (p2m_vaddr <= HYPERVISOR_VIRT_END_X86_32 &&
+              p2m_end > HYPERVISOR_VIRT_START_X86_32) )
+        {
+            ERROR("Bad virtual p2m address range %#" PRIx64 "-%#" PRIx64,
+                  p2m_vaddr, p2m_end);
+            errno = ERANGE;
+            goto out;
+        }
     }
 
-    if ( dinfo->p2m_size < info->nr_pages  )
+    mfns = malloc(sizeof(*mfns));
+    if ( !mfns )
     {
-        ERROR("p2m_size < nr_pages -1 (%lx < %lx", dinfo->p2m_size, info->nr_pages - 1);
+        ERROR("Cannot allocate memory for array of %u mfns", 1);
         goto out;
     }
+    mfns[0] = p2m_mfn;
+    off = 0;
+    saved_mfn = 0;
+    idx_start = idx_end = saved_idx = 0;
+
+    for ( level = n_levels; level > 0; level-- )
+    {
+        n_pages = idx_end - idx_start + 1;
+        ptes = xc_map_foreign_pages(xch, dom, PROT_READ, mfns, n_pages);
+        if ( !ptes )
+        {
+            PERROR("Failed to map %u page table pages for p2m list", n_pages);
+            goto out;
+        }
+        free(mfns);
+
+        shift = level * 9 + 3;
+        idx_start = ((p2m_vaddr - off) & mask) >> shift;
+        idx_end = ((p2m_end - off) & mask) >> shift;
+        idx = idx_end - idx_start + 1;
+        mfns = malloc(sizeof(*mfns) * idx);
+        if ( !mfns )
+        {
+            ERROR("Cannot allocate memory for array of %u mfns", idx);
+            goto out;
+        }
+
+        for ( idx = idx_start; idx <= idx_end; idx++ )
+        {
+            mfn = (ptes[idx] & 0x000ffffffffff000ULL) >> PAGE_SHIFT;
+            if ( mfn == 0 )
+            {
+                ERROR("Bad mfn %#lx during page table walk for vaddr %#" PRIx64 " at level %d of p2m list",
+                      mfn, off + ((uint64_t)idx << shift), level);
+                errno = ERANGE;
+                goto out;
+            }
+            mfns[idx - idx_start] = mfn;
+
+            /* Maximum pfn check at level 2. Same reasoning as for p2m tree. */
+            if ( level == 2 )
+            {
+                if ( mfn != saved_mfn )
+                {
+                    saved_mfn = mfn;
+                    saved_idx = idx - idx_start;
+                }
+            }
+        }
+
+        if ( level == 2 )
+        {
+            if ( saved_idx == idx_end )
+                saved_idx++;
+            max_pfn = ((xen_pfn_t)saved_idx << 9) * fpp;
+            if ( max_pfn < dinfo->p2m_size )
+            {
+                dinfo->p2m_size = max_pfn;
+                dinfo->p2m_frames = (dinfo->p2m_size + fpp - 1) / fpp;
+                p2m_end = p2m_vaddr + dinfo->p2m_frames * PAGE_SIZE - 1;
+                idx_end = idx_start + saved_idx;
+            }
+        }
+
+        munmap(ptes, n_pages * PAGE_SIZE);
+        ptes = NULL;
+        off = p2m_vaddr & ((mask >> shift) << shift);
+    }
+
+    return mfns;
+
+ out:
+    free(mfns);
+    if ( ptes )
+        munmap(ptes, n_pages * PAGE_SIZE);
+
+    return NULL;
+}
+
+static xen_pfn_t *
+xc_core_arch_map_p2m_tree_rw(xc_interface *xch, struct domain_info_context *dinfo,
+                             uint32_t dom, shared_info_any_t *live_shinfo)
+{
+    /* Double and single indirect references to the live P2M table */
+    xen_pfn_t *live_p2m_frame_list_list;
+    xen_pfn_t *live_p2m_frame_list = NULL;
+    /* Copies of the above. */
+    xen_pfn_t *p2m_frame_list_list = NULL;
+    xen_pfn_t *p2m_frame_list;
+
+    int err;
+    int i;
 
     live_p2m_frame_list_list =
         xc_map_foreign_range(xch, dom, PAGE_SIZE, PROT_READ,
@@ -151,10 +287,60 @@ xc_core_arch_map_p2m_rw(xc_interface *xch, struct domain_info_context *dinfo, xc
         for ( i = P2M_FL_ENTRIES - 1; i >= 0; i-- )
             p2m_frame_list[i] = ((uint32_t *)p2m_frame_list)[i];
 
+    dinfo->p2m_frames = P2M_FL_ENTRIES;
+
+    return p2m_frame_list;
+
+ out:
+    err = errno;
+
+    if ( live_p2m_frame_list_list )
+        munmap(live_p2m_frame_list_list, PAGE_SIZE);
+
+    if ( live_p2m_frame_list )
+        munmap(live_p2m_frame_list, P2M_FLL_ENTRIES * PAGE_SIZE);
+
+    free(p2m_frame_list_list);
+
+    errno = err;
+
+    return NULL;
+}
+
+static int
+xc_core_arch_map_p2m_rw(xc_interface *xch, struct domain_info_context *dinfo, xc_dominfo_t *info,
+                        shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m, int rw)
+{
+    xen_pfn_t *p2m_frame_list = NULL;
+    uint64_t p2m_cr3;
+    uint32_t dom = info->domid;
+    int ret = -1;
+    int err;
+
+    if ( xc_domain_nr_gpfns(xch, info->domid, &dinfo->p2m_size) < 0 )
+    {
+        ERROR("Could not get maximum GPFN!");
+        goto out;
+    }
+
+    if ( dinfo->p2m_size < info->nr_pages  )
+    {
+        ERROR("p2m_size < nr_pages -1 (%lx < %lx", dinfo->p2m_size, info->nr_pages - 1);
+        goto out;
+    }
+
+    p2m_cr3 = GET_FIELD(live_shinfo, arch.p2m_cr3, dinfo->guest_width);
+
+    p2m_frame_list = p2m_cr3 ? xc_core_arch_map_p2m_list_rw(xch, dinfo, dom, live_shinfo, p2m_cr3)
+                             : xc_core_arch_map_p2m_tree_rw(xch, dinfo, dom, live_shinfo);
+
+    if ( !p2m_frame_list )
+        goto out;
+
     *live_p2m = xc_map_foreign_pages(xch, dom,
                                     rw ? (PROT_READ | PROT_WRITE) : PROT_READ,
                                     p2m_frame_list,
-                                    P2M_FL_ENTRIES);
+                                    dinfo->p2m_frames);
 
     if ( !*live_p2m )
     {
@@ -162,21 +348,11 @@ xc_core_arch_map_p2m_rw(xc_interface *xch, struct domain_info_context *dinfo, xc
         goto out;
     }
 
-    *pfnp = dinfo->p2m_size;
-
     ret = 0;
 
 out:
     err = errno;
 
-    if ( live_p2m_frame_list_list )
-        munmap(live_p2m_frame_list_list, PAGE_SIZE);
-
-    if ( live_p2m_frame_list )
-        munmap(live_p2m_frame_list, P2M_FLL_ENTRIES * PAGE_SIZE);
-
-    free(p2m_frame_list_list);
-
     free(p2m_frame_list);
 
     errno = err;
@@ -184,25 +360,17 @@ out:
 }
 
 int
-xc_core_arch_map_p2m(xc_interface *xch, unsigned int guest_width, xc_dominfo_t *info,
-                        shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m,
-                        unsigned long *pfnp)
+xc_core_arch_map_p2m(xc_interface *xch, struct domain_info_context *dinfo, xc_dominfo_t *info,
+                        shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m)
 {
-    struct domain_info_context _dinfo = { .guest_width = guest_width };
-    struct domain_info_context *dinfo = &_dinfo;
-    return xc_core_arch_map_p2m_rw(xch, dinfo, info,
-                                   live_shinfo, live_p2m, pfnp, 0);
+    return xc_core_arch_map_p2m_rw(xch, dinfo, info, live_shinfo, live_p2m, 0);
 }
 
 int
-xc_core_arch_map_p2m_writable(xc_interface *xch, unsigned int guest_width, xc_dominfo_t *info,
-                              shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m,
-                              unsigned long *pfnp)
+xc_core_arch_map_p2m_writable(xc_interface *xch, struct domain_info_context *dinfo, xc_dominfo_t *info,
+                              shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m)
 {
-    struct domain_info_context _dinfo = { .guest_width = guest_width };
-    struct domain_info_context *dinfo = &_dinfo;
-    return xc_core_arch_map_p2m_rw(xch, dinfo, info,
-                                   live_shinfo, live_p2m, pfnp, 1);
+    return xc_core_arch_map_p2m_rw(xch, dinfo, info, live_shinfo, live_p2m, 1);
 }
 
 int
diff --git a/tools/libs/ctrl/xc_private.h b/tools/libs/ctrl/xc_private.h
index f0b5f83ac8..8ebc0b59da 100644
--- a/tools/libs/ctrl/xc_private.h
+++ b/tools/libs/ctrl/xc_private.h
@@ -79,6 +79,7 @@ struct iovec {
 
 struct domain_info_context {
     unsigned int guest_width;
+    unsigned int p2m_frames;
     unsigned long p2m_size;
 };
 
diff --git a/tools/libs/guest/xg_domain.c b/tools/libs/guest/xg_domain.c
index 5019c84e0e..dd7db2cbd8 100644
--- a/tools/libs/guest/xg_domain.c
+++ b/tools/libs/guest/xg_domain.c
@@ -24,13 +24,9 @@
 
 int xc_unmap_domain_meminfo(xc_interface *xch, struct xc_domain_meminfo *minfo)
 {
-    struct domain_info_context _di = { .guest_width = minfo->guest_width,
-                                       .p2m_size = minfo->p2m_size};
-    struct domain_info_context *dinfo = &_di;
-
     free(minfo->pfn_type);
     if ( minfo->p2m_table )
-        munmap(minfo->p2m_table, P2M_FL_ENTRIES * PAGE_SIZE);
+        munmap(minfo->p2m_table, minfo->p2m_frames * PAGE_SIZE);
     minfo->p2m_table = NULL;
 
     return 0;
@@ -40,7 +36,6 @@ int xc_map_domain_meminfo(xc_interface *xch, uint32_t domid,
                           struct xc_domain_meminfo *minfo)
 {
     struct domain_info_context _di;
-    struct domain_info_context *dinfo = &_di;
 
     xc_dominfo_t info;
     shared_info_any_t *live_shinfo;
@@ -96,16 +91,16 @@ int xc_map_domain_meminfo(xc_interface *xch, uint32_t domid,
         return -1;
     }
 
-    if ( xc_core_arch_map_p2m_writable(xch, minfo->guest_width, &info,
-                                       live_shinfo, &minfo->p2m_table,
-                                       &minfo->p2m_size) )
+    if ( xc_core_arch_map_p2m_writable(xch, &_di, &info,
+                                       live_shinfo, &minfo->p2m_table) )
     {
         PERROR("Could not map the P2M table");
         munmap(live_shinfo, PAGE_SIZE);
         return -1;
     }
     munmap(live_shinfo, PAGE_SIZE);
-    _di.p2m_size = minfo->p2m_size;
+    minfo->p2m_size = _di.p2m_size;
+    minfo->p2m_frames = _di.p2m_frames;
 
     /* Make space and prepare for getting the PFN types */
     minfo->pfn_type = calloc(sizeof(*minfo->pfn_type), minfo->p2m_size);
@@ -141,7 +136,7 @@ failed:
     }
     if ( minfo->p2m_table )
     {
-        munmap(minfo->p2m_table, P2M_FL_ENTRIES * PAGE_SIZE);
+        munmap(minfo->p2m_table, minfo->p2m_frames * PAGE_SIZE);
         minfo->p2m_table = NULL;
     }
 
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:22:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:22:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109276.208595 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyOm-0005IG-Gk; Mon, 12 Apr 2021 15:22:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109276.208595; Mon, 12 Apr 2021 15:22:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyOm-0005I9-Dj; Mon, 12 Apr 2021 15:22:48 +0000
Received: by outflank-mailman (input) for mailman id 109276;
 Mon, 12 Apr 2021 15:22:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVyOk-0005HA-K8
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:22:46 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4b3686e4-b2b5-4ed0-8dde-c3f261fc0a8c;
 Mon, 12 Apr 2021 15:22:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 42CDEB318;
 Mon, 12 Apr 2021 15:22: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: 4b3686e4-b2b5-4ed0-8dde-c3f261fc0a8c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618240964; 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=Swipnv7lNlL9cb8oILiJyPvVh9VulLNmguuAuPfTttI=;
	b=HRdHNW/I6v/PNprBPpDRrkM9XW71vnbDOwPJggSDN0RrIw7mnzPp5VyFHOqsNDC2EnUxJ/
	9Wx3/9jYgIyr1J0iFbN5mymnMiU0HGfcFc3zEv/+M6GZcxZBfZw7N7DfdGmxekOwpaTay7
	S7v1HjpHmbPNscOvFq76cvUm++ipL34=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Christian Lindig <christian.lindig@citrix.com>,
	David Scott <dave@recoil.org>
Subject: [PATCH v2 0/6] tools/libs: add missing support of linear p2m_list, cleanup
Date: Mon, 12 Apr 2021 17:22:30 +0200
Message-Id: <20210412152236.1975-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

There are some corners left which don't support the not so very new
linear p2m list of pv guests, which has been introduced in Linux kernel
3.19 and which is mandatory for non-legacy versions of Xen since kernel
4.14.

This series adds support for the linear p2m list where it is missing
(colo support and "xl dump-core").

In theory it should be possible to merge the p2m list mapping code
from migration handling and core dump handling, but this needs quite
some cleanup before this is possible.

The first three patches of this series are fixing real problems, so
I've put them at the start of this series, especially in order to make
backports easier.

The other three patches are only the first steps of cleanup. The main
work done here is to concentrate all p2m mapping in libxenguest instead
of having one implementation in each of libxenguest and libxenctrl.

Merging the two implementations should be rather easy, but this will
require to touch many lines of code, as the migration handling variant
seems to be more mature, but it is using the migration stream specific
structures heavily. So I'd like to have some confirmation that my way
to clean this up is the right one.

My idea would be to add the data needed for p2m mapping to struct
domain_info_context and replace the related fields in struct
xc_sr_context with a struct domain_info_context. Modifying the
interface of xc_core_arch_map_p2m() to take most current parameters
via struct domain_info_context would then enable migration coding to
use xc_core_arch_map_p2m() for mapping the p2m. xc_core_arch_map_p2m()
should look basically like the current migration p2m mapping code
afterwards.

Any comments to that plan?

Changes in V2:
- added missing #include in ocaml stub

Juergen Gross (6):
  tools/libs/guest: fix max_pfn setting in map_p2m()
  tools/libs/ctrl: fix xc_core_arch_map_p2m() to support linear p2m
    table
  tools/libs/ctrl: use common p2m mapping code in xc_domain_resume_any()
  tools/libs: move xc_resume.c to libxenguest
  tools/libs: move xc_core* from libxenctrl to libxenguest
  tools/libs/guest: make some definitions private to libxenguest

 tools/include/xenctrl.h                       |  63 ---
 tools/include/xenguest.h                      |  63 +++
 tools/libs/ctrl/Makefile                      |   4 -
 tools/libs/ctrl/xc_core_x86.c                 | 223 ----------
 tools/libs/ctrl/xc_domain.c                   |   2 -
 tools/libs/ctrl/xc_private.h                  |  43 +-
 tools/libs/guest/Makefile                     |   4 +
 .../libs/{ctrl/xc_core.c => guest/xg_core.c}  |   7 +-
 .../libs/{ctrl/xc_core.h => guest/xg_core.h}  |  15 +-
 .../xc_core_arm.c => guest/xg_core_arm.c}     |  31 +-
 .../xc_core_arm.h => guest/xg_core_arm.h}     |   0
 tools/libs/guest/xg_core_x86.c                | 399 ++++++++++++++++++
 .../xc_core_x86.h => guest/xg_core_x86.h}     |   0
 tools/libs/guest/xg_dom_boot.c                |   2 +-
 tools/libs/guest/xg_domain.c                  |  19 +-
 tools/libs/guest/xg_offline_page.c            |   2 +-
 tools/libs/guest/xg_private.h                 |  16 +-
 .../{ctrl/xc_resume.c => guest/xg_resume.c}   |  69 +--
 tools/libs/guest/xg_sr_save_x86_pv.c          |   2 +-
 tools/ocaml/libs/xc/xenctrl_stubs.c           |   1 +
 20 files changed, 545 insertions(+), 420 deletions(-)
 delete mode 100644 tools/libs/ctrl/xc_core_x86.c
 rename tools/libs/{ctrl/xc_core.c => guest/xg_core.c} (99%)
 rename tools/libs/{ctrl/xc_core.h => guest/xg_core.h} (92%)
 rename tools/libs/{ctrl/xc_core_arm.c => guest/xg_core_arm.c} (72%)
 rename tools/libs/{ctrl/xc_core_arm.h => guest/xg_core_arm.h} (100%)
 create mode 100644 tools/libs/guest/xg_core_x86.c
 rename tools/libs/{ctrl/xc_core_x86.h => guest/xg_core_x86.h} (100%)
 rename tools/libs/{ctrl/xc_resume.c => guest/xg_resume.c} (80%)

-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:22:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:22:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109275.208584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyOl-0005HM-9C; Mon, 12 Apr 2021 15:22:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109275.208584; Mon, 12 Apr 2021 15: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 1lVyOl-0005HF-5v; Mon, 12 Apr 2021 15:22:47 +0000
Received: by outflank-mailman (input) for mailman id 109275;
 Mon, 12 Apr 2021 15:22:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVyOj-0005H5-PF
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:22:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4ed1d60c-ec92-4f23-8f50-3362f9c3b27d;
 Mon, 12 Apr 2021 15:22:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2AD49B317;
 Mon, 12 Apr 2021 15:22: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: 4ed1d60c-ec92-4f23-8f50-3362f9c3b27d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618240964; 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=r2eCqlORFLfVmLFfiEovHQm+H5lydtlCD/BZ4XW/beY=;
	b=ZY6aakw2fEC3vXfZq9xZvqwwci7oKFkfBBnPSnNMTCxgOcj4Ju4SD60HrEhctSujiZB1lO
	BpaMWMzq0S+mVRJDiiH5TF5k5biaFPPrVkMjHCN1dxWNOY8Z0264Cz2eEB9MAGklXg97ag
	Xyd7HdyKBemZHkCK62Q/rysTa4RLQgY=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 1/6] tools/libs/guest: fix max_pfn setting in map_p2m()
Date: Mon, 12 Apr 2021 17:22:31 +0200
Message-Id: <20210412152236.1975-2-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210412152236.1975-1-jgross@suse.com>
References: <20210412152236.1975-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

When setting the highest pfn used in the guest, don't subtract 1 from
the value read from the shared_info data. The value read already is
the correct pfn.

Fixes: 91e204d37f449 ("libxc: try to find last used pfn when migrating")
Signed-off-by: Juergen Gross <jgross@suse.com>
---
This is a backport candidate
---
 tools/libs/guest/xg_sr_save_x86_pv.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/libs/guest/xg_sr_save_x86_pv.c b/tools/libs/guest/xg_sr_save_x86_pv.c
index 4964f1f7b8..dae7f2817f 100644
--- a/tools/libs/guest/xg_sr_save_x86_pv.c
+++ b/tools/libs/guest/xg_sr_save_x86_pv.c
@@ -468,7 +468,7 @@ static int map_p2m(struct xc_sr_context *ctx)
 
     ctx->x86.pv.p2m_generation = ~0ULL;
     ctx->x86.pv.max_pfn = GET_FIELD(ctx->x86.pv.shinfo, arch.max_pfn,
-                                    ctx->x86.pv.width) - 1;
+                                    ctx->x86.pv.width);
     p2m_cr3 = GET_FIELD(ctx->x86.pv.shinfo, arch.p2m_cr3, ctx->x86.pv.width);
 
     return p2m_cr3 ? map_p2m_list(ctx, p2m_cr3) : map_p2m_tree(ctx);
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:22:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:22:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109278.208620 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyOr-0005NG-7x; Mon, 12 Apr 2021 15:22:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109278.208620; Mon, 12 Apr 2021 15: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 1lVyOr-0005N2-3I; Mon, 12 Apr 2021 15:22:53 +0000
Received: by outflank-mailman (input) for mailman id 109278;
 Mon, 12 Apr 2021 15:22:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVyOp-0005HA-EH
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:22:51 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 39ce5eed-b4f5-42f5-80e6-b3d0dfb9d9b7;
 Mon, 12 Apr 2021 15:22:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8975CB2F2;
 Mon, 12 Apr 2021 15:22: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: 39ce5eed-b4f5-42f5-80e6-b3d0dfb9d9b7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618240964; 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=P+pP2B8esDOs+sJC9sMxYhDklvTGPhZovtj2JSiHDDU=;
	b=jVvqUVXFGoFAjb+V+tAjqjcgsLRHGvDyPrwcnmfyxAwyy7uLRSOSm3UFRyVTp4fNqyqa4A
	kxrw5lWpT3WzH8f8cuGC4QgxNBDTbuV4fyycAci9a3cGLsHWYwAW2SGzktEZ8bCH3tztwr
	zAtUIwq0ONxx95MYkZmoKaSjCS6cATI=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Christian Lindig <christian.lindig@citrix.com>,
	David Scott <dave@recoil.org>
Subject: [PATCH v2 3/6] tools/libs/ctrl: use common p2m mapping code in xc_domain_resume_any()
Date: Mon, 12 Apr 2021 17:22:33 +0200
Message-Id: <20210412152236.1975-4-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210412152236.1975-1-jgross@suse.com>
References: <20210412152236.1975-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Instead of open coding the mapping of the p2m list use the already
existing xc_core_arch_map_p2m() call, especially as the current code
does not support guests with the linear p2m map. It should be noted
that this code is needed for colo/remus only.

Switching to xc_core_arch_map_p2m() drops the need to bail out for
bitness of tool stack and guest differing.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
This might be a backport candidate
V2:
- add missing #include in ocaml stub (Andrew Cooper)
---
 tools/libs/ctrl/xc_resume.c         | 66 +++++++++--------------------
 tools/ocaml/libs/xc/xenctrl_stubs.c |  1 +
 2 files changed, 22 insertions(+), 45 deletions(-)

diff --git a/tools/libs/ctrl/xc_resume.c b/tools/libs/ctrl/xc_resume.c
index 94c6c9fb31..e3c8e83aa9 100644
--- a/tools/libs/ctrl/xc_resume.c
+++ b/tools/libs/ctrl/xc_resume.c
@@ -20,6 +20,7 @@
 #include <xen/foreign/x86_32.h>
 #include <xen/foreign/x86_64.h>
 #include <xen/hvm/params.h>
+#include "xc_core.h"
 
 static int modify_returncode(xc_interface *xch, uint32_t domid)
 {
@@ -137,12 +138,10 @@ static int xc_domain_resume_any(xc_interface *xch, uint32_t domid)
     struct domain_info_context _dinfo = { .guest_width = 0,
                                           .p2m_size = 0 };
     struct domain_info_context *dinfo = &_dinfo;
-    unsigned long mfn;
+    xen_pfn_t mfn, store_mfn, console_mfn;
     vcpu_guest_context_any_t ctxt;
-    start_info_t *start_info;
-    shared_info_t *shinfo = NULL;
-    xen_pfn_t *p2m_frame_list_list = NULL;
-    xen_pfn_t *p2m_frame_list = NULL;
+    start_info_any_t *start_info;
+    shared_info_any_t *shinfo = NULL;
     xen_pfn_t *p2m = NULL;
 #endif
 
@@ -164,11 +163,6 @@ static int xc_domain_resume_any(xc_interface *xch, uint32_t domid)
         PERROR("Could not get domain width");
         return rc;
     }
-    if ( dinfo->guest_width != sizeof(long) )
-    {
-        ERROR("Cannot resume uncooperative cross-address-size guests");
-        return rc;
-    }
 
     /* Map the shared info frame */
     shinfo = xc_map_foreign_range(xch, domid, PAGE_SIZE,
@@ -179,34 +173,8 @@ static int xc_domain_resume_any(xc_interface *xch, uint32_t domid)
         goto out;
     }
 
-    dinfo->p2m_size = shinfo->arch.max_pfn;
-
-    p2m_frame_list_list =
-        xc_map_foreign_range(xch, domid, PAGE_SIZE, PROT_READ,
-                             shinfo->arch.pfn_to_mfn_frame_list_list);
-    if ( p2m_frame_list_list == NULL )
-    {
-        ERROR("Couldn't map p2m_frame_list_list");
-        goto out;
-    }
-
-    p2m_frame_list = xc_map_foreign_pages(xch, domid, PROT_READ,
-                                          p2m_frame_list_list,
-                                          P2M_FLL_ENTRIES);
-    if ( p2m_frame_list == NULL )
-    {
-        ERROR("Couldn't map p2m_frame_list");
-        goto out;
-    }
-
-    /* Map all the frames of the pfn->mfn table. For migrate to succeed,
-       the guest must not change which frames are used for this purpose.
-       (its not clear why it would want to change them, and we'll be OK
-       from a safety POV anyhow. */
-    p2m = xc_map_foreign_pages(xch, domid, PROT_READ,
-                               p2m_frame_list,
-                               P2M_FL_ENTRIES);
-    if ( p2m == NULL )
+    /* Map the p2m list */
+    if ( xc_core_arch_map_p2m(xch, dinfo, &info, shinfo, &p2m) )
     {
         ERROR("Couldn't map p2m table");
         goto out;
@@ -228,8 +196,20 @@ static int xc_domain_resume_any(xc_interface *xch, uint32_t domid)
         goto out;
     }
 
-    start_info->store_mfn        = p2m[start_info->store_mfn];
-    start_info->console.domU.mfn = p2m[start_info->console.domU.mfn];
+    store_mfn = GET_FIELD(start_info, store_mfn, dinfo->guest_width);
+    console_mfn = GET_FIELD(start_info, console.domU.mfn, dinfo->guest_width);
+    if ( dinfo->guest_width == 4 )
+    {
+        store_mfn = ((uint32_t *)p2m)[store_mfn];
+        console_mfn = ((uint32_t *)p2m)[console_mfn];
+    }
+    else
+    {
+        store_mfn = ((uint64_t *)p2m)[store_mfn];
+        console_mfn = ((uint64_t *)p2m)[console_mfn];
+    }
+    SET_FIELD(start_info, store_mfn, store_mfn, dinfo->guest_width);
+    SET_FIELD(start_info, console.domU.mfn, console_mfn, dinfo->guest_width);
 
     munmap(start_info, PAGE_SIZE);
 #endif /* defined(__i386__) || defined(__x86_64__) */
@@ -250,11 +230,7 @@ static int xc_domain_resume_any(xc_interface *xch, uint32_t domid)
 out:
 #if defined(__i386__) || defined(__x86_64__)
     if (p2m)
-        munmap(p2m, P2M_FL_ENTRIES*PAGE_SIZE);
-    if (p2m_frame_list)
-        munmap(p2m_frame_list, P2M_FLL_ENTRIES*PAGE_SIZE);
-    if (p2m_frame_list_list)
-        munmap(p2m_frame_list_list, PAGE_SIZE);
+        munmap(p2m, dinfo->p2m_frames * PAGE_SIZE);
     if (shinfo)
         munmap(shinfo, PAGE_SIZE);
 #endif
diff --git a/tools/ocaml/libs/xc/xenctrl_stubs.c b/tools/ocaml/libs/xc/xenctrl_stubs.c
index d05d7bb30e..6e4bc567f5 100644
--- a/tools/ocaml/libs/xc/xenctrl_stubs.c
+++ b/tools/ocaml/libs/xc/xenctrl_stubs.c
@@ -32,6 +32,7 @@
 
 #define XC_WANT_COMPAT_MAP_FOREIGN_API
 #include <xenctrl.h>
+#include <xenguest.h>
 #include <xen-tools/libs.h>
 
 #include "mmap_stubs.h"
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:22:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:22:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109279.208632 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyOv-0005SQ-I6; Mon, 12 Apr 2021 15:22:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109279.208632; Mon, 12 Apr 2021 15:22: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 1lVyOv-0005SF-Dx; Mon, 12 Apr 2021 15:22:57 +0000
Received: by outflank-mailman (input) for mailman id 109279;
 Mon, 12 Apr 2021 15:22:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVyOt-0005H5-Ko
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:22:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0fd291f5-23f7-43a6-81d1-374e8f0f9978;
 Mon, 12 Apr 2021 15:22:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0F4B5B312;
 Mon, 12 Apr 2021 15:22: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: 0fd291f5-23f7-43a6-81d1-374e8f0f9978
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618240965; 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=r/d1m/nwqJtLr2C9cFqF0W7SDbqgauwOmuYrIPpnLeM=;
	b=JMVPQdsuB79ObIjUXQC6Mqu76yBPNU/E/edvkqCWu5NXhrcKzvkp84/U5lCPJW++mtzBJI
	Un6/3+YrDgNadxdI7xEmDxtl4brtDfsVrefBqvQ1PZbimC248S8m+3nyKgvpxWbvE71E/r
	SIWJZIiah15hnbkjXHzZrb/LbE7wnrw=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 6/6] tools/libs/guest: make some definitions private to libxenguest
Date: Mon, 12 Apr 2021 17:22:36 +0200
Message-Id: <20210412152236.1975-7-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210412152236.1975-1-jgross@suse.com>
References: <20210412152236.1975-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

There are some definitions which are used in libxenguest only now.
Move them from libxenctrl over to libxenguest.

Remove an unused macro.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 tools/libs/ctrl/xc_private.h   | 32 --------------------------------
 tools/libs/guest/xg_core.h     |  2 +-
 tools/libs/guest/xg_core_x86.c | 16 +++++++++++++++-
 tools/libs/guest/xg_private.h  | 16 +++++++++++++++-
 tools/libs/guest/xg_resume.c   |  2 +-
 5 files changed, 32 insertions(+), 36 deletions(-)

diff --git a/tools/libs/ctrl/xc_private.h b/tools/libs/ctrl/xc_private.h
index dff0f0289b..3e299b943f 100644
--- a/tools/libs/ctrl/xc_private.h
+++ b/tools/libs/ctrl/xc_private.h
@@ -65,38 +65,6 @@ struct iovec {
 
 #define ROUNDUP(_x,_w) (((unsigned long)(_x)+(1UL<<(_w))-1) & ~((1UL<<(_w))-1))
 
-#define GET_FIELD(_p, _f, _w) (((_w) == 8) ? ((_p)->x64._f) : ((_p)->x32._f))
-
-#define SET_FIELD(_p, _f, _v, _w) do {          \
-    if ((_w) == 8)                              \
-        (_p)->x64._f = (_v);                    \
-    else                                        \
-        (_p)->x32._f = (_v);                    \
-} while (0)
-
-/* XXX SMH: following skanky macros rely on variable p2m_size being set */
-/* XXX TJD: also, "guest_width" should be the guest's sizeof(unsigned long) */
-
-struct domain_info_context {
-    unsigned int guest_width;
-    unsigned int p2m_frames;
-    unsigned long p2m_size;
-};
-
-/* Number of xen_pfn_t in a page */
-#define FPP             (PAGE_SIZE/(dinfo->guest_width))
-
-/* Number of entries in the pfn_to_mfn_frame_list_list */
-#define P2M_FLL_ENTRIES (((dinfo->p2m_size)+(FPP*FPP)-1)/(FPP*FPP))
-
-/* Number of entries in the pfn_to_mfn_frame_list */
-#define P2M_FL_ENTRIES  (((dinfo->p2m_size)+FPP-1)/FPP)
-
-/* Size in bytes of the pfn_to_mfn_frame_list     */
-#define P2M_GUEST_FL_SIZE ((P2M_FL_ENTRIES) * (dinfo->guest_width))
-#define P2M_TOOLS_FL_SIZE ((P2M_FL_ENTRIES) *                           \
-                           max_t(size_t, sizeof(xen_pfn_t), dinfo->guest_width))
-
 #define DECLARE_DOMCTL struct xen_domctl domctl
 #define DECLARE_SYSCTL struct xen_sysctl sysctl
 #define DECLARE_PHYSDEV_OP struct physdev_op physdev_op
diff --git a/tools/libs/guest/xg_core.h b/tools/libs/guest/xg_core.h
index f07584aaa6..aaca9e0a8b 100644
--- a/tools/libs/guest/xg_core.h
+++ b/tools/libs/guest/xg_core.h
@@ -21,7 +21,7 @@
 #define XC_CORE_H
 
 #include "xen/version.h"
-#include "xc_private.h"
+#include "xg_private.h"
 #include "xen/libelf/elfstructs.h"
 
 /* section names */
diff --git a/tools/libs/guest/xg_core_x86.c b/tools/libs/guest/xg_core_x86.c
index 09f5d696ce..61106b98b8 100644
--- a/tools/libs/guest/xg_core_x86.c
+++ b/tools/libs/guest/xg_core_x86.c
@@ -18,10 +18,24 @@
  */
 
 #include <inttypes.h>
-#include "xc_private.h"
+#include "xg_private.h"
 #include "xg_core.h"
 #include <xen/hvm/e820.h>
 
+/* Number of xen_pfn_t in a page */
+#define FPP             (PAGE_SIZE/(dinfo->guest_width))
+
+/* Number of entries in the pfn_to_mfn_frame_list_list */
+#define P2M_FLL_ENTRIES (((dinfo->p2m_size)+(FPP*FPP)-1)/(FPP*FPP))
+
+/* Number of entries in the pfn_to_mfn_frame_list */
+#define P2M_FL_ENTRIES  (((dinfo->p2m_size)+FPP-1)/FPP)
+
+/* Size in bytes of the pfn_to_mfn_frame_list     */
+#define P2M_GUEST_FL_SIZE ((P2M_FL_ENTRIES) * (dinfo->guest_width))
+#define P2M_TOOLS_FL_SIZE ((P2M_FL_ENTRIES) * \
+                           max_t(size_t, sizeof(xen_pfn_t), dinfo->guest_width))
+
 int
 xc_core_arch_gpfn_may_present(struct xc_core_arch_context *arch_ctxt,
                               unsigned long pfn)
diff --git a/tools/libs/guest/xg_private.h b/tools/libs/guest/xg_private.h
index 8f9b257a2f..ff57f8b832 100644
--- a/tools/libs/guest/xg_private.h
+++ b/tools/libs/guest/xg_private.h
@@ -42,6 +42,21 @@
 #endif
 #endif
 
+#define GET_FIELD(_p, _f, _w) (((_w) == 8) ? ((_p)->x64._f) : ((_p)->x32._f))
+
+#define SET_FIELD(_p, _f, _v, _w) do {          \
+    if ((_w) == 8)                              \
+        (_p)->x64._f = (_v);                    \
+    else                                        \
+        (_p)->x32._f = (_v);                    \
+} while (0)
+
+struct domain_info_context {
+    unsigned int guest_width;
+    unsigned int p2m_frames;
+    unsigned long p2m_size;
+};
+
 struct xc_dom_loader {
     char *name;
     /* Sadly the error returns from these functions are not consistent: */
@@ -139,7 +154,6 @@ static inline xen_pfn_t xc_pfn_to_mfn(xen_pfn_t pfn, xen_pfn_t *p2m,
 /* Masks for PTE<->PFN conversions */
 #define MADDR_BITS_X86  ((dinfo->guest_width == 8) ? 52 : 44)
 #define MFN_MASK_X86    ((1ULL << (MADDR_BITS_X86 - PAGE_SHIFT_X86)) - 1)
-#define MADDR_MASK_X86  (MFN_MASK_X86 << PAGE_SHIFT_X86)
 
 int pin_table(xc_interface *xch, unsigned int type, unsigned long mfn,
               uint32_t dom);
diff --git a/tools/libs/guest/xg_resume.c b/tools/libs/guest/xg_resume.c
index d201c1488d..77e2451a3c 100644
--- a/tools/libs/guest/xg_resume.c
+++ b/tools/libs/guest/xg_resume.c
@@ -13,7 +13,7 @@
  * License along with this library; If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "xc_private.h"
+#include "xg_private.h"
 #include "xenguest.h"
 
 #if defined(__i386__) || defined(__x86_64__)
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:22:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:22:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109280.208640 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyOw-0005UG-9b; Mon, 12 Apr 2021 15:22:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109280.208640; Mon, 12 Apr 2021 15:22: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 1lVyOw-0005Tj-34; Mon, 12 Apr 2021 15:22:58 +0000
Received: by outflank-mailman (input) for mailman id 109280;
 Mon, 12 Apr 2021 15:22:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVyOu-0005HA-EU
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:22:56 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 12dbaf82-ae34-45df-a96b-ef04e5f58a64;
 Mon, 12 Apr 2021 15:22:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AFDBAB2F6;
 Mon, 12 Apr 2021 15:22: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: 12dbaf82-ae34-45df-a96b-ef04e5f58a64
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618240964; 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=9lSZVDHBJO9o342eIYRKM8hbyMeKeAJ7KWKA4F6tztw=;
	b=Lp5nKXOj8wKyy20U1iyY036GzG9qwXGVo6cePIl5c4vZ5aiGGnl+MRU24Rb52av84ZQWQp
	76M97tgiSJ4KSYv9hFHEISL45kcK0mDFFce0gDIdtTuX+MyKT3CkWILyp/sqdlycdkZUiy
	qPWkKZkanshOVk+jpPZniNLHpOFQL+0=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 4/6] tools/libs: move xc_resume.c to libxenguest
Date: Mon, 12 Apr 2021 17:22:34 +0200
Message-Id: <20210412152236.1975-5-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210412152236.1975-1-jgross@suse.com>
References: <20210412152236.1975-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The guest suspend functionality is already part of libxenguest. Move
the resume functionality from libxenctrl to libxenguest, too.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 tools/include/xenctrl.h                       | 63 -------------------
 tools/include/xenguest.h                      | 62 ++++++++++++++++++
 tools/libs/ctrl/Makefile                      |  1 -
 tools/libs/guest/Makefile                     |  1 +
 .../{ctrl/xc_resume.c => guest/xg_resume.c}   |  1 +
 5 files changed, 64 insertions(+), 64 deletions(-)
 rename tools/libs/{ctrl/xc_resume.c => guest/xg_resume.c} (99%)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 318920166c..8a6bede5b0 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -576,69 +576,6 @@ int xc_domain_destroy(xc_interface *xch,
                       uint32_t domid);
 
 
-/**
- * This function resumes a suspended domain. The domain should have
- * been previously suspended.
- *
- * Note that there are 'xc_domain_suspend' as suspending a domain
- * is quite the endeavour.
- *
- * For the purpose of this explanation there are three guests:
- * PV (using hypercalls for privilgied operations), HVM
- * (fully hardware virtualized guests using emulated devices for everything),
- * and PVHVM (PV aware with hardware virtualisation).
- *
- * HVM guest are the simplest - they suspend via S3 / S4 and resume from
- * S3 / S4. Upon resume they have to re-negotiate with the emulated devices.
- *
- * PV and PVHVM communicate via hypercalls for suspend (and resume).
- * For suspend the toolstack initiates the process by writing an value
- * in XenBus "control/shutdown" with the string "suspend".
- *
- * The PV guest stashes anything it deems neccessary in 'struct
- * start_info' in case of failure (PVHVM may ignore this) and calls
- * the SCHEDOP_shutdown::SHUTDOWN_suspend hypercall (for PV as
- * argument it passes the MFN to 'struct start_info').
- *
- * And then the guest is suspended.
- *
- * The checkpointing or notifying a guest that the suspend failed or
- * cancelled (in case of checkpoint) is by having the
- * SCHEDOP_shutdown::SHUTDOWN_suspend hypercall return a non-zero
- * value.
- *
- * The PV and PVHVM resume path are similar. For PV it would be
- * similar to bootup - figure out where the 'struct start_info' is (or
- * if the suspend was cancelled aka checkpointed - reuse the saved
- * values).
- *
- * From here on they differ depending whether the guest is PV or PVHVM
- * in specifics but follow overall the same path:
- *  - PV: Bringing up the vCPUS,
- *  - PVHVM: Setup vector callback,
- *  - Bring up vCPU runstates,
- *  - Remap the grant tables if checkpointing or setup from scratch,
- *
- *
- * If the resume was not checkpointing (or if suspend was succesful) we would
- * setup the PV timers and the different PV events. Lastly the PV drivers
- * re-negotiate with the backend.
- *
- * This function would return before the guest started resuming. That is
- * the guest would be in non-running state and its vCPU context would be
- * in the the SCHEDOP_shutdown::SHUTDOWN_suspend hypercall return path
- * (for PV and PVHVM). For HVM it would be in would be in QEMU emulated
- * BIOS handling S3 suspend.
- *
- * @parm xch a handle to an open hypervisor interface
- * @parm domid the domain id to resume
- * @parm fast use cooperative resume (guest must support this)
- * return 0 on success, -1 on failure
- */
-int xc_domain_resume(xc_interface *xch,
-		     uint32_t domid,
-		     int fast);
-
 /**
  * This function will shutdown a domain. This is intended for use in
  * fully-virtualized domains where this operation is analogous to the
diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h
index 781d40c119..44300a8658 100644
--- a/tools/include/xenguest.h
+++ b/tools/include/xenguest.h
@@ -689,6 +689,68 @@ int xc_query_page_offline_status(xc_interface *xch, unsigned long start,
 
 int xc_exchange_page(xc_interface *xch, uint32_t domid, xen_pfn_t mfn);
 
+/**
+ * This function resumes a suspended domain. The domain should have
+ * been previously suspended.
+ *
+ * Note that there are 'xc_domain_suspend' as suspending a domain
+ * is quite the endeavour.
+ *
+ * For the purpose of this explanation there are three guests:
+ * PV (using hypercalls for privilgied operations), HVM
+ * (fully hardware virtualized guests using emulated devices for everything),
+ * and PVHVM (PV aware with hardware virtualisation).
+ *
+ * HVM guest are the simplest - they suspend via S3 / S4 and resume from
+ * S3 / S4. Upon resume they have to re-negotiate with the emulated devices.
+ *
+ * PV and PVHVM communicate via hypercalls for suspend (and resume).
+ * For suspend the toolstack initiates the process by writing an value
+ * in XenBus "control/shutdown" with the string "suspend".
+ *
+ * The PV guest stashes anything it deems neccessary in 'struct
+ * start_info' in case of failure (PVHVM may ignore this) and calls
+ * the SCHEDOP_shutdown::SHUTDOWN_suspend hypercall (for PV as
+ * argument it passes the MFN to 'struct start_info').
+ *
+ * And then the guest is suspended.
+ *
+ * The checkpointing or notifying a guest that the suspend failed or
+ * cancelled (in case of checkpoint) is by having the
+ * SCHEDOP_shutdown::SHUTDOWN_suspend hypercall return a non-zero
+ * value.
+ *
+ * The PV and PVHVM resume path are similar. For PV it would be
+ * similar to bootup - figure out where the 'struct start_info' is (or
+ * if the suspend was cancelled aka checkpointed - reuse the saved
+ * values).
+ *
+ * From here on they differ depending whether the guest is PV or PVHVM
+ * in specifics but follow overall the same path:
+ *  - PV: Bringing up the vCPUS,
+ *  - PVHVM: Setup vector callback,
+ *  - Bring up vCPU runstates,
+ *  - Remap the grant tables if checkpointing or setup from scratch,
+ *
+ *
+ * If the resume was not checkpointing (or if suspend was succesful) we would
+ * setup the PV timers and the different PV events. Lastly the PV drivers
+ * re-negotiate with the backend.
+ *
+ * This function would return before the guest started resuming. That is
+ * the guest would be in non-running state and its vCPU context would be
+ * in the the SCHEDOP_shutdown::SHUTDOWN_suspend hypercall return path
+ * (for PV and PVHVM). For HVM it would be in would be in QEMU emulated
+ * BIOS handling S3 suspend.
+ *
+ * @parm xch a handle to an open hypervisor interface
+ * @parm domid the domain id to resume
+ * @parm fast use cooperative resume (guest must support this)
+ * return 0 on success, -1 on failure
+ */
+int xc_domain_resume(xc_interface *xch,
+                     uint32_t domid,
+                     int fast);
 
 /**
  * Memory related information, such as PFN types, the P2M table,
diff --git a/tools/libs/ctrl/Makefile b/tools/libs/ctrl/Makefile
index ce9ecae710..fbeb3a3537 100644
--- a/tools/libs/ctrl/Makefile
+++ b/tools/libs/ctrl/Makefile
@@ -20,7 +20,6 @@ SRCS-y       += xc_rt.c
 SRCS-y       += xc_tbuf.c
 SRCS-y       += xc_pm.c
 SRCS-y       += xc_cpu_hotplug.c
-SRCS-y       += xc_resume.c
 SRCS-y       += xc_vm_event.c
 SRCS-y       += xc_vmtrace.c
 SRCS-y       += xc_monitor.c
diff --git a/tools/libs/guest/Makefile b/tools/libs/guest/Makefile
index 604e1695d6..8309bbcd20 100644
--- a/tools/libs/guest/Makefile
+++ b/tools/libs/guest/Makefile
@@ -9,6 +9,7 @@ endif
 SRCS-y += xg_private.c
 SRCS-y += xg_domain.c
 SRCS-y += xg_suspend.c
+SRCS-y += xg_resume.c
 ifeq ($(CONFIG_MIGRATE),y)
 SRCS-y += xg_sr_common.c
 SRCS-$(CONFIG_X86) += xg_sr_common_x86.c
diff --git a/tools/libs/ctrl/xc_resume.c b/tools/libs/guest/xg_resume.c
similarity index 99%
rename from tools/libs/ctrl/xc_resume.c
rename to tools/libs/guest/xg_resume.c
index e3c8e83aa9..3bdefb2eef 100644
--- a/tools/libs/ctrl/xc_resume.c
+++ b/tools/libs/guest/xg_resume.c
@@ -14,6 +14,7 @@
  */
 
 #include "xc_private.h"
+#include "xenguest.h"
 
 #if defined(__i386__) || defined(__x86_64__)
 
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:23:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:23:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109281.208656 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyP0-0005bk-RE; Mon, 12 Apr 2021 15:23:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109281.208656; Mon, 12 Apr 2021 15:23: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 1lVyP0-0005bN-L9; Mon, 12 Apr 2021 15:23:02 +0000
Received: by outflank-mailman (input) for mailman id 109281;
 Mon, 12 Apr 2021 15:23:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=oSjc=JJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lVyOz-0005HA-Ez
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:23:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7d3e7296-187e-46e9-a012-9b0abec30915;
 Mon, 12 Apr 2021 15:22:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D96D9B30F;
 Mon, 12 Apr 2021 15:22: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: 7d3e7296-187e-46e9-a012-9b0abec30915
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618240965; 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=KSoo0QZ4m0mzUVtd8hHAUln3Z9oHo6ai82Gx5/Y5nMs=;
	b=pqRYiavJv1zOMDaFYRdR/elyIgy+XP5vdPerz9prg8ALTCl1TMDcFaHLRleOKyfVfMG/bA
	Q9iDNcQ4CRijq/bpP4pR82yCiERZcqj+J8lyOfcClntnS9GEIDirKQ6rQn+ziV02Ep9Eix
	v8GPw3/iqUtdZtQTCc/Ns/u/VjxfHEc=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 5/6] tools/libs: move xc_core* from libxenctrl to libxenguest
Date: Mon, 12 Apr 2021 17:22:35 +0200
Message-Id: <20210412152236.1975-6-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210412152236.1975-1-jgross@suse.com>
References: <20210412152236.1975-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The functionality in xc_core* should be part of libxenguest instead
of libxenctrl. Users are already either in libxenguest, or in xl.
There is one single exception: xc_core_arch_auto_translated_physmap()
is being used by xc_domain_memory_mapping(), which is used by qemu.
So leave the xc_core_arch_auto_translated_physmap() functionality in
libxenctrl.

This will make it easier to merge common functionality of xc_core*
and xg_sr_save*.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 tools/libs/ctrl/Makefile                             |  3 ---
 tools/libs/ctrl/xc_domain.c                          |  2 --
 tools/libs/ctrl/xc_private.h                         | 12 ++++++++++++
 tools/libs/guest/Makefile                            |  3 +++
 tools/libs/{ctrl/xc_core.c => guest/xg_core.c}       |  2 +-
 tools/libs/{ctrl/xc_core.h => guest/xg_core.h}       |  5 ++---
 .../libs/{ctrl/xc_core_arm.c => guest/xg_core_arm.c} |  8 +-------
 .../libs/{ctrl/xc_core_arm.h => guest/xg_core_arm.h} |  0
 .../libs/{ctrl/xc_core_x86.c => guest/xg_core_x86.c} |  8 +-------
 .../libs/{ctrl/xc_core_x86.h => guest/xg_core_x86.h} |  0
 tools/libs/guest/xg_dom_boot.c                       |  2 +-
 tools/libs/guest/xg_domain.c                         |  2 +-
 tools/libs/guest/xg_offline_page.c                   |  2 +-
 tools/libs/guest/xg_resume.c                         |  2 +-
 14 files changed, 24 insertions(+), 27 deletions(-)
 rename tools/libs/{ctrl/xc_core.c => guest/xg_core.c} (99%)
 rename tools/libs/{ctrl/xc_core.h => guest/xg_core.h} (97%)
 rename tools/libs/{ctrl/xc_core_arm.c => guest/xg_core_arm.c} (96%)
 rename tools/libs/{ctrl/xc_core_arm.h => guest/xg_core_arm.h} (100%)
 rename tools/libs/{ctrl/xc_core_x86.c => guest/xg_core_x86.c} (99%)
 rename tools/libs/{ctrl/xc_core_x86.h => guest/xg_core_x86.h} (100%)

diff --git a/tools/libs/ctrl/Makefile b/tools/libs/ctrl/Makefile
index fbeb3a3537..519246b0d6 100644
--- a/tools/libs/ctrl/Makefile
+++ b/tools/libs/ctrl/Makefile
@@ -2,9 +2,6 @@ XEN_ROOT = $(CURDIR)/../../..
 include $(XEN_ROOT)/tools/Rules.mk
 
 SRCS-y       += xc_altp2m.c
-SRCS-y       += xc_core.c
-SRCS-$(CONFIG_X86) += xc_core_x86.c
-SRCS-$(CONFIG_ARM) += xc_core_arm.c
 SRCS-y       += xc_cpupool.c
 SRCS-y       += xc_domain.c
 SRCS-y       += xc_evtchn.c
diff --git a/tools/libs/ctrl/xc_domain.c b/tools/libs/ctrl/xc_domain.c
index e7cea4a17d..7d118848f1 100644
--- a/tools/libs/ctrl/xc_domain.c
+++ b/tools/libs/ctrl/xc_domain.c
@@ -19,8 +19,6 @@
  * Copyright (c) 2003, K A Fraser.
  */
 
-#include "xc_private.h"
-#include "xc_core.h"
 #include "xc_private.h"
 #include <xen/memory.h>
 #include <xen/hvm/hvm_op.h>
diff --git a/tools/libs/ctrl/xc_private.h b/tools/libs/ctrl/xc_private.h
index 8ebc0b59da..dff0f0289b 100644
--- a/tools/libs/ctrl/xc_private.h
+++ b/tools/libs/ctrl/xc_private.h
@@ -467,6 +467,18 @@ void *xc_vm_event_enable(xc_interface *xch, uint32_t domain_id, int param,
 
 int do_dm_op(xc_interface *xch, uint32_t domid, unsigned int nr_bufs, ...);
 
+#if defined (__i386__) || defined (__x86_64__)
+static inline int xc_core_arch_auto_translated_physmap(const xc_dominfo_t *info)
+{
+    return info->hvm;
+}
+#elif defined (__arm__) || defined(__aarch64__)
+static inline int xc_core_arch_auto_translated_physmap(const xc_dominfo_t *info)
+{
+    return 1;
+}
+#endif
+
 #endif /* __XC_PRIVATE_H__ */
 
 /*
diff --git a/tools/libs/guest/Makefile b/tools/libs/guest/Makefile
index 8309bbcd20..85a6f45592 100644
--- a/tools/libs/guest/Makefile
+++ b/tools/libs/guest/Makefile
@@ -24,6 +24,9 @@ SRCS-y += xg_offline_page.c
 else
 SRCS-y += xg_nomigrate.c
 endif
+SRCS-y       += xg_core.c
+SRCS-$(CONFIG_X86) += xg_core_x86.c
+SRCS-$(CONFIG_ARM) += xg_core_arm.c
 
 CFLAGS += -I$(XEN_libxenctrl)
 
diff --git a/tools/libs/ctrl/xc_core.c b/tools/libs/guest/xg_core.c
similarity index 99%
rename from tools/libs/ctrl/xc_core.c
rename to tools/libs/guest/xg_core.c
index 9576bec5a3..c52f1161c1 100644
--- a/tools/libs/ctrl/xc_core.c
+++ b/tools/libs/guest/xg_core.c
@@ -61,7 +61,7 @@
  */
 
 #include "xc_private.h"
-#include "xc_core.h"
+#include "xg_core.h"
 #include <stdlib.h>
 #include <unistd.h>
 
diff --git a/tools/libs/ctrl/xc_core.h b/tools/libs/guest/xg_core.h
similarity index 97%
rename from tools/libs/ctrl/xc_core.h
rename to tools/libs/guest/xg_core.h
index 8ea1f93a10..f07584aaa6 100644
--- a/tools/libs/ctrl/xc_core.h
+++ b/tools/libs/guest/xg_core.h
@@ -131,7 +131,6 @@ struct xc_core_memory_map {
     uint64_t    size;
 };
 typedef struct xc_core_memory_map xc_core_memory_map_t;
-int xc_core_arch_auto_translated_physmap(const xc_dominfo_t *info);
 struct xc_core_arch_context;
 int xc_core_arch_memory_map_get(xc_interface *xch,
                                 struct xc_core_arch_context *arch_ctxt,
@@ -152,9 +151,9 @@ int xc_core_arch_get_scratch_gpfn(xc_interface *xch, uint32_t domid,
 
 
 #if defined (__i386__) || defined (__x86_64__)
-# include "xc_core_x86.h"
+# include "xg_core_x86.h"
 #elif defined (__arm__) || defined(__aarch64__)
-# include "xc_core_arm.h"
+# include "xg_core_arm.h"
 #else
 # error "unsupported architecture"
 #endif
diff --git a/tools/libs/ctrl/xc_core_arm.c b/tools/libs/guest/xg_core_arm.c
similarity index 96%
rename from tools/libs/ctrl/xc_core_arm.c
rename to tools/libs/guest/xg_core_arm.c
index 93765a565f..aaabd07558 100644
--- a/tools/libs/ctrl/xc_core_arm.c
+++ b/tools/libs/guest/xg_core_arm.c
@@ -17,7 +17,7 @@
  */
 
 #include "xc_private.h"
-#include "xc_core.h"
+#include "xg_core.h"
 
 #include <xen-tools/libs.h>
 
@@ -31,12 +31,6 @@ xc_core_arch_gpfn_may_present(struct xc_core_arch_context *arch_ctxt,
     return 0;
 }
 
-int
-xc_core_arch_auto_translated_physmap(const xc_dominfo_t *info)
-{
-    return 1;
-}
-
 int
 xc_core_arch_memory_map_get(xc_interface *xch, struct xc_core_arch_context *unused,
                             xc_dominfo_t *info, shared_info_any_t *live_shinfo,
diff --git a/tools/libs/ctrl/xc_core_arm.h b/tools/libs/guest/xg_core_arm.h
similarity index 100%
rename from tools/libs/ctrl/xc_core_arm.h
rename to tools/libs/guest/xg_core_arm.h
diff --git a/tools/libs/ctrl/xc_core_x86.c b/tools/libs/guest/xg_core_x86.c
similarity index 99%
rename from tools/libs/ctrl/xc_core_x86.c
rename to tools/libs/guest/xg_core_x86.c
index c8f71d4b75..09f5d696ce 100644
--- a/tools/libs/ctrl/xc_core_x86.c
+++ b/tools/libs/guest/xg_core_x86.c
@@ -19,7 +19,7 @@
 
 #include <inttypes.h>
 #include "xc_private.h"
-#include "xc_core.h"
+#include "xg_core.h"
 #include <xen/hvm/e820.h>
 
 int
@@ -33,12 +33,6 @@ xc_core_arch_gpfn_may_present(struct xc_core_arch_context *arch_ctxt,
     return 1;
 }
 
-int
-xc_core_arch_auto_translated_physmap(const xc_dominfo_t *info)
-{
-    return info->hvm;
-}
-
 int
 xc_core_arch_memory_map_get(xc_interface *xch, struct xc_core_arch_context *unused,
                             xc_dominfo_t *info, shared_info_any_t *live_shinfo,
diff --git a/tools/libs/ctrl/xc_core_x86.h b/tools/libs/guest/xg_core_x86.h
similarity index 100%
rename from tools/libs/ctrl/xc_core_x86.h
rename to tools/libs/guest/xg_core_x86.h
diff --git a/tools/libs/guest/xg_dom_boot.c b/tools/libs/guest/xg_dom_boot.c
index 2a002e7349..dac96b17a5 100644
--- a/tools/libs/guest/xg_dom_boot.c
+++ b/tools/libs/guest/xg_dom_boot.c
@@ -31,7 +31,7 @@
 #include <zlib.h>
 
 #include "xg_private.h"
-#include "xc_core.h"
+#include "xg_core.h"
 #include <xen/hvm/params.h>
 #include <xen/grant_table.h>
 
diff --git a/tools/libs/guest/xg_domain.c b/tools/libs/guest/xg_domain.c
index dd7db2cbd8..155e337427 100644
--- a/tools/libs/guest/xg_domain.c
+++ b/tools/libs/guest/xg_domain.c
@@ -20,7 +20,7 @@
  */
 
 #include "xg_private.h"
-#include "xc_core.h"
+#include "xg_core.h"
 
 int xc_unmap_domain_meminfo(xc_interface *xch, struct xc_domain_meminfo *minfo)
 {
diff --git a/tools/libs/guest/xg_offline_page.c b/tools/libs/guest/xg_offline_page.c
index d4722f0e8c..cfe0e2d537 100644
--- a/tools/libs/guest/xg_offline_page.c
+++ b/tools/libs/guest/xg_offline_page.c
@@ -25,7 +25,7 @@
 #include <stdlib.h>
 #include <unistd.h>
 #include <sys/time.h>
-#include <xc_core.h>
+#include <xg_core.h>
 
 #include "xc_private.h"
 #include "xg_private.h"
diff --git a/tools/libs/guest/xg_resume.c b/tools/libs/guest/xg_resume.c
index 3bdefb2eef..d201c1488d 100644
--- a/tools/libs/guest/xg_resume.c
+++ b/tools/libs/guest/xg_resume.c
@@ -21,7 +21,7 @@
 #include <xen/foreign/x86_32.h>
 #include <xen/foreign/x86_64.h>
 #include <xen/hvm/params.h>
-#include "xc_core.h"
+#include "xg_core.h"
 
 static int modify_returncode(xc_interface *xch, uint32_t domid)
 {
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:24:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:24:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109300.208668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyQf-00062S-5s; Mon, 12 Apr 2021 15:24:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109300.208668; Mon, 12 Apr 2021 15:24: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 1lVyQf-00062L-2q; Mon, 12 Apr 2021 15:24:45 +0000
Received: by outflank-mailman (input) for mailman id 109300;
 Mon, 12 Apr 2021 15:24:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVyQe-00062C-D4
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:24:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3a3719c9-272e-4287-9154-ef0119fed60d;
 Mon, 12 Apr 2021 15:24:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 64196B1CA;
 Mon, 12 Apr 2021 15:24: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: 3a3719c9-272e-4287-9154-ef0119fed60d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618241082; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=yzKNstwtao6bu+QnqacRWzlp/7DstOknCs4SF0PDZDg=;
	b=ArpHE5TFhfnOn8jlJtLEw+Nt/E3G+wY9eDqo3mhNfFW+FjmTNBrjsXzWt0bEtW167tCGJJ
	PkCQalLtVwAki+ebMgUJqUhaOxOOTdn4VmMfpDgl6zB87j7pqzQoWe6X1hj0OoICKPsxuS
	m8e+LzDLZ2/Ksl3ZijFykTLu4DMs3mk=
Subject: Re: [PATCH 1/2] x86: correct is_pv_domain() when !CONFIG_PV
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: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
 <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
 <YHQUJw8H2tgNy5iY@Air-de-Roger>
 <169d6a5b-81ec-f347-8edc-60ba6ab0864f@suse.com>
 <YHReAkwZPnnh2itL@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <9571d2ac-e8ae-4105-5f92-0a81728f44d2@suse.com>
Date: Mon, 12 Apr 2021 17:24:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YHReAkwZPnnh2itL@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 12.04.2021 16:49, Roger Pau Monné wrote:
> On Mon, Apr 12, 2021 at 12:07:12PM +0200, Jan Beulich wrote:
>> On 12.04.2021 11:34, Roger Pau Monné wrote:
>>> On Fri, Nov 27, 2020 at 05:54:57PM +0100, Jan Beulich wrote:
>>>> --- a/xen/arch/x86/dom0_build.c
>>>> +++ b/xen/arch/x86/dom0_build.c
>>>> @@ -568,7 +568,7 @@ int __init construct_dom0(struct domain
>>>>  
>>>>      if ( is_hvm_domain(d) )
>>>>          rc = dom0_construct_pvh(d, image, image_headroom, initrd, cmdline);
>>>> -    else if ( is_pv_domain(d) )
>>>> +    else if ( is_pv_64bit_domain(d) || is_pv_32bit_domain(d) )
>>>
>>> Urg, that's very confusing IMO, as I'm sure I would ask someone to
>>> just use is_pv_domain without realizing. It needs at least a comment,
>>> but even then I'm not sure I like it.
>>
>> I can add a comment, sure, but I think this is as confusing (or not)
>> as ...
>>
>>> So that I understand it, the point to use those expressions instead of
>>> is_pv_domain is to avoid calling dom0_construct_pv when CONFIG_PV is
>>> not enabled?
>>>
>>> Maybe it wold be better to instead use:
>>>
>>> if ( IS_ENABLED(CONFIG_PV) && is_pv_domain(d) )
>>
>> ... this.
>>
>>> In any case I wonder if we should maybe aim to introduce a new type
>>> for system domains, that's neither PV or HVM, in order to avoid having
>>> system domains qualified as PV even when PV is compiled out.
>>
>> This was my first thought, too, but would come with a much higher
>> price tag: We'd need to audit all uses for whether they're meant
>> to include the special domains. And this includes auditing of cases
>> where !is_hvm_*() may be inferred to mean is_pv_*().
> 
> What about we provide a dummy dom0_construct_pv that returns
> -EOPNOTSUPP when !CONFIG_PV and take rc into account for the panic
> call in construct_dom0 ie:
> 
>     if ( is_hvm_domain(d) )
>         rc = dom0_construct_pvh(d, image, image_headroom, initrd, cmdline);
>     else
>         rc = dom0_construct_pv(d, image, image_headroom, initrd, cmdline);
> 
>     if ( rc == -EOPNOTSUPP )
>         panic("Cannot construct Dom0. No guest interface available\n");
>     if ( rc )
>         return rc;
> 
> I think that's likely less confusing that the alternatives.

This could certainly be made work, but see below (i.e. it would
help the situation right here, but not the general issue - the
case in arch_do_domctl() may look less confusing, but really
suffers the same problem).

>>>> --- a/xen/arch/x86/domain.c
>>>> +++ b/xen/arch/x86/domain.c
>>>> @@ -1544,6 +1544,7 @@ arch_do_vcpu_op(
>>>>   */
>>>>  static void load_segments(struct vcpu *n)
>>>>  {
>>>> +#ifdef CONFIG_PV
>>>>      struct cpu_user_regs *uregs = &n->arch.user_regs;
>>>>      unsigned long gsb = 0, gss = 0;
>>>>      bool compat = is_pv_32bit_vcpu(n);
>>>> @@ -1709,6 +1710,7 @@ static void load_segments(struct vcpu *n
>>>>          regs->cs            = FLAT_KERNEL_CS;
>>>>          regs->rip           = pv->failsafe_callback_eip;
>>>>      }
>>>> +#endif
>>>>  }
>>>>  
>>>>  /*
>>>> @@ -1723,6 +1725,7 @@ static void load_segments(struct vcpu *n
>>>>   */
>>>>  static void save_segments(struct vcpu *v)
>>>>  {
>>>> +#ifdef CONFIG_PV
>>>>      struct cpu_user_regs *regs = &v->arch.user_regs;
>>>>  
>>>>      read_sregs(regs);
>>>> @@ -1748,6 +1751,7 @@ static void save_segments(struct vcpu *v
>>>>          else
>>>>              v->arch.pv.gs_base_user = gs_base;
>>>>      }
>>>> +#endif
>>>>  }
>>>
>>> Could you move {load,save}_segments to pv/domain.c and rename to
>>> pv_{load,save}_segments and provide a dummy handler for !CONFIG_PV in
>>> pv/domain.h?
>>>
>>> Sorry it's slightly more work, but I think it's cleaner overall.
>>
>> Doing so was my first thought too, but we'd lose the present inlining
>> of the functions. For save_segments() this could be dealt with by
>> moving paravirt_ctxt_switch_from() as well, but load_segments() would
>> remain.
> 
> I see, maybe worth marking as inline then or adding a note about why
> they are not moved to pv/domain.c?

We try to avoid marking functions inline outside of headers. Adding
a note is an option, but I'm not sure something to be done here.

> As an aside, why do we need to call load_segments with interrupts
> enabled? Could we move it to paravirt_ctxt_switch_to?

load_segments() can raise faults, and faults with interrupts
disabled are, with (intentionally) very few exceptions, fatal.

>>>> --- a/xen/include/xen/sched.h
>>>> +++ b/xen/include/xen/sched.h
>>>> @@ -985,7 +985,7 @@ static always_inline bool is_control_dom
>>>>  
>>>>  static always_inline bool is_pv_domain(const struct domain *d)
>>>>  {
>>>> -    return IS_ENABLED(CONFIG_PV) &&
>>>> +    return IS_ENABLED(CONFIG_X86) &&
>>>>          evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
>>>>  }
>>>>  
>>>> @@ -1011,7 +1011,7 @@ static always_inline bool is_pv_32bit_vc
>>>>  
>>>>  static always_inline bool is_pv_64bit_domain(const struct domain *d)
>>>>  {
>>>> -    if ( !is_pv_domain(d) )
>>>> +    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
>>>>          return false;
>>>
>>> I think overall is confusing to have a domain that returns true for
>>> is_pv_domain but false for both is_pv_{64,32}bit_domain checks.
>>>
>>> I know those are only the system domains, but it feels confusing and
>>> could cause mistakes in the future IMO, as then we would have to
>>> carefully think where to use ( is_pv_64bit_domain(d)
>>> || is_pv_32bit_domain(d) ) vs just using is_pv_domain(d), or
>>> IS_ENABLED(CONFIG_PV) && is_pv_domain(d)
>>
>> Imo it's not "then we would have to carefully think where to use ..."
>> but instead this patch is an indication that we should have been for
>> quite some time. For this reason (coming back to your first comment
>> at the top) I'm not sure adding a comment _there_ is actually useful.
>> Every use of is_pv_*() needs carefully considering which domains are
>> really meant.
> 
> Maybe we shouldn't have used is_pv_domain as a way to hide code from
> the compiler and instead always provide dummy functions, as even with
> PV support compiled out we still need some of it for system domains.
> 
> I'm not sure I have a good proposal to make, but it seems wrong to me
> that is_pv_domain(d) could be different than is_pv_64bit_domain(d) ||
> is_pv_32bit_domain(d).

Hmm, so we're of opposite opinions - not sure what to do. Short of
having / introducing is_system_domain() or some such (with all the
needed auditing) I can't see how assuming the two would mean the
same could ever have been true. With what we have is_pv_domain() is
legitimately true for them, and both is_pv_{32,64}bit_domain() ought
to be false (as there's no specific bitness associated with them)
imo _at least_ when !PV.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:26:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:26:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109312.208680 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyST-0006Gk-Mk; Mon, 12 Apr 2021 15:26:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109312.208680; Mon, 12 Apr 2021 15:26: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 1lVyST-0006Gd-IW; Mon, 12 Apr 2021 15:26:37 +0000
Received: by outflank-mailman (input) for mailman id 109312;
 Mon, 12 Apr 2021 15:26:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVySS-0006GY-N6
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:26:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 56436422-1525-4985-9dc1-601ffdf83fc8;
 Mon, 12 Apr 2021 15:26:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 488E1B30F;
 Mon, 12 Apr 2021 15:26: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: 56436422-1525-4985-9dc1-601ffdf83fc8
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618241195; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=U45TIDWibRK1VXcX/BDkTpfwb2jtH19hWP99+CyiQXM=;
	b=ar/edU1XgZFp+8cJbTuYgNrg56jlxxuUFf2v1hpNYG63NdytZ9/XfNY9cgzdRBkEnePb3O
	S5LzCiD9oIuV6y6XeMCbNnXEx9xFgiWFGzEC9okV0yV+YN12Zz+pkcbgWjpZ+vbgt+g2ug
	TVJ0+NHgnQ36oQYDGVyiFBoQl5BexQg=
Subject: Re: [PATCH v2] x86/cpuid: Advertise no-lmsl unilaterally to hvm
 guests
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210412150641.24450-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <31e00b90-6a2f-6fdb-9346-2b45dcb256e7@suse.com>
Date: Mon, 12 Apr 2021 17:26:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210412150641.24450-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 17:06, Andrew Cooper wrote:
> While part of the original AMD64 spec, Long Mode Segment Limit was a feature
> not picked up by Intel, and therefore didn't see much adoption in software.
> AMD have finally dropped the feature from hardware, and allocated a CPUID bit
> to indicate its absence.
> 
> Xen has never supported the feature for guests, even when running on capable
> hardware, so advertise the feature's absence unilaterally.
> 
> There is nothing specifically wrong with exposing this bit to PV guests, but
> the PV ABI doesn't include a working concept of MSR_EFER in the first place,
> so exposing it to PV guests would be out-of-place.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:31:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:31:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109317.208692 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyXE-00078V-8h; Mon, 12 Apr 2021 15:31:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109317.208692; Mon, 12 Apr 2021 15: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 1lVyXE-00078O-5a; Mon, 12 Apr 2021 15:31:32 +0000
Received: by outflank-mailman (input) for mailman id 109317;
 Mon, 12 Apr 2021 15:31:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L7uB=JJ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lVyXC-00078J-KX
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:31:30 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1f58916a-9d62-487d-9df4-26a23896dbd9;
 Mon, 12 Apr 2021 15:31: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: 1f58916a-9d62-487d-9df4-26a23896dbd9
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618241488;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=z9ZvNDb5GYWxEvtS6e+Gb7YmS7TOM2LYH+yd+1gwSYE=;
  b=YVA5/YSz/E8NhUwx8G3BToi3oyDMlFOhzcqVXc9oUxrJsCeGgtyGRrKV
   wnbsEe/kY/oJjK7x42NK7neaa2xdHiPAaBopxlDgNgC8Bi96EZzQ53R0a
   B6DXpAL9Om7eXom4QnhSQa10/9Q9SS6q6t355ixFNw6w0wjjs7+t+N8Gq
   g=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 1vpToFZtLOOUTnX8MJzp53pKZfkmvAvfne/egcEZZRJWvoA00CYlL5y+qHCM9y2eb2kX/CF7fi
 rVA5nLDWDqlOCi6Q0oLASeI+m+sfJbb3DXxOXonrSZqId3scYDerdOKXxsyVKo1XyQ0ZJTKuKv
 /ocayYnOcXCCFClEtCowmuiEg3qzSBaGi1ua9B7x6TwBOxISYVH6yS7/VGSuNKGPaXn5xIPXde
 Qd1LPIYEV7LRLHCgI6tVyIK4/LJ7JIdd+uvjLyILtgIQluyzMDOHDGVCzmQ0CoxaAg2SMM3ynU
 Tmc=
X-SBRS: 5.1
X-MesageID: 41399735
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:eJxlxaElBnoOOCDrpLqFb5TXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7L0/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeOJwTXzcQY76
 tpdsFFZOHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLT1CQYsI1XYeNi+wFEpqSA5aQbc4Do
 Ob/MpbpzymEE5nE/iTLH8DQuTFupn3hIvrCCR2fSIPxSuvqXeT6LD8GwWFxRt2aVJy6Jor7G
 StqX2d2oyNqPe+oyWss1P7z5MTo9f5z8sGOcrksLloFhzJqiKFILtsQKeDujddmpDe1H8PnM
 PXqxkte+RfgkmhBl2dmhfm1wn+3DtG0RaLojX08BiTw72KeBsAB8VMno5feBfCgnBQx+1U66
 5Xw3mf86NeEBKoplWN2/HzSxpomkCoyEBS6NI7sno3a/p4VJZh6aYb/E9TDa4aGjP75I0NAI
 BVfb/hzccTXlWAY3/DuG5zhPSqQ3QoBx+DBnMPo8qPzlFt7T9E5npd4eFap2wH/p4mUZVIjt
 60RJhApfVrdIs7fKh9DOAOTY+eDXHMewvFNCa3LU78HK8KFnrRo/fMkfsIzdDvXKZN4Io5mZ
 zHXl8dn3U1YVjSBcqH24AO2gzRQU2mNA6dif121txcgPnRVbDrOSqMRBQFiM27ucgSBcXdRr
 KaJI9WOfn+NmHjcLw5nzHWat13Ez0zQccVstE0VxalucTQMLDnseTdbbL9P7zoPTE4Wn7uI3
 cKUTTpTf8wq3yDazvdulz8Snntckvw8dZbC67B5dUez4ALK8ltv2Eu+BCEz/DODQcHnr09fU
 N4Lr+iuLi8v3OK8WHB6HgsHhJcC01S8YjxSn8in35MD2rENZI4//mPc2Fb23WKYjVlSdnNLQ
 JZr1NrvYW6MoKX3iJnL968KGqVgz8yqRuxPtYhs5zGwf2gVoIzD54gVqA0Px7MDQZJlQFjr3
 oGThQFSE/ZHjbHkr6kk5QQOeHae7BH8UWWCP8RjUiamVSXpMkpSHdedSWpS9SrjQEnQCcRuk
 d86JYFgL2LmS+mLEw2hOhQCiwLVE2nRJZ9SCiVboRdnb7mPCV9V32DizChhxYvQWby7EkJim
 v9LSqbROHTDjNmywNl+5ev1GkxWnSWfkp2ZHw/i4F7GGjckltY0OOAZMOIoiGsQ2pH5ttYHC
 DOYDMULA8r+su+0wSNni2eUV88wI81A+DbBLM/Ur3a13+3MreUnaUeE/I8xuc9CPne9sswFc
 6PcQ6cKz31T94z0wuOv3A/JW1armInnf6A4myt0EGImFoERdzcL1RtS+tFf5Wy7234S+2J15
 s8p9Qvpue0OnjwbNnD6ay/VU82Fjrj5UqNC8cvotRomIh3kp1ZNZzSSyHJ23FKxw9WFra+qG
 ouBIBApIncMYpudfEIcy1X/lAVhM2CRXFbxzDeM6sbRxURlHfVMNOC3qrQpZcuCkOHohHsOV
 P3yVwrw971Gw+C36UdEaQ+PCB/b1U98m1r+Iq5BsDtITTvU+FI51yhNHChNJdbVaieAL0V6j
 J3+cuBkePSVy323mnrzHdGC5ML12asWsWpBg2QXcZO7tyhIFyJxpKQ3/Tbtka+dRKLL2IChY
 NEckQMbsNMzhka5bdHrRSae+jQuUIqk1xX/Dd9sEXis7LWuFvmIQ==
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41399735"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IY7vh2iXnI6PPxhjFED+yJYjJuwvmxwMH6nCLhPz29ldJnNzTI9ZmyIyxOWZirFHZzTZT0P4+9AXGAtcsPj71R4LLXm4prM4SA1Gn/Yv5limmtTR72a22vLe+3GQ8bBJAeGPeGR6XWdouklzGBTMSSYJGTSjll4pNFCRBfst9PWkTKJzCgFI92opqO926Pi3mnUJUTcc4Ad6RUnhBsbGz8yeoG78vdE3So3MnDG+YWh/pZactEfebeR+vbTfTe65i0FEE2c74skViK9YZoxqBqYO8Sf1aQKEFRJxDc9ycRsqQGCKDTPfQrxdQE0y08Y0GsKCmZqrXtNABU4Rs4DeqA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=14l+Phv4R2uRqhvMOZ9ffFIQv1zgoSBmCpCxhFnXL54=;
 b=Payjt03faO209ssbkiIgTmi7+q3WqMMWdjIkr8bIp8kpzKwr6Joj9ubecq89fDrFflQMceB1sg/fDCI7XgR7KZxQKTnsY6UYAed8s4URjmaeB2Z+80tIHAReFT+JIc3NKH5LAPzGaXmMxqvJkndlEA+pIsSCyCz7eKZtEtnzz+RC6lzePG3HtpR3THNvvnB9cCqVyU6sS06yMB0TkPs1fXPinRc/Kjt0gRrVmIDb7bwTzrHE/lzsC5NGzeOVKHcp9DCRmLOdNSuJ7siniWqN+piiDjN1b5HbijOQKXgMcyos96LKjoSYVdWHzKLIqTW3lklw5/Da3YmBXRw44XcYjQ==
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=14l+Phv4R2uRqhvMOZ9ffFIQv1zgoSBmCpCxhFnXL54=;
 b=CdmT1PFzA/O8CkuMg5w1YahdmL9JZs9K9kRb5G3dIJ/HqavVGxXNSgKRa6JnIoljdmwR9/6QibZ8q0JAGONGn9lEo13HE3yBgrutdN8oIROpBdz0a8MXTOIsJNBq8Za8JQEDfXS9ENZ0+9HiVDOoWFBMQ0nwreL89FHJN2WIHqw=
Date: Mon, 12 Apr 2021 17:31: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>, George Dunlap
	<george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>, Jun Nakajima
	<jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
Message-ID: <YHRnvQvWJ7QsXVgX@Air-de-Roger>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
X-ClientProxiedBy: AM6PR10CA0101.EURPRD10.PROD.OUTLOOK.COM
 (2603:10a6:209:8c::42) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e5a6ccc0-38e0-4c0c-c654-08d8fdc80349
X-MS-TrafficTypeDiagnostic: DM4PR03MB5968:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB596832FD6D9EFE918A998D908F709@DM4PR03MB5968.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Q6bPhP8EBpX/tcs8dEu/No4feeETSRmKhCbw3Oc+DcvOQBz9Nf2VEJ0p4e+kgtHt3s9Ri26RlzCn5NG0H3nMCj4z7KLUlB1aMcX4h0CECmlf0EUcZeKQa1weJ5ryPSKwfa9Z6K2/jCiW1JywT88v+F/lCggml3YoAtHbabFU8FTj7f3FkRXKCtoQgKAkpsXWkD+4Dmdn1kKSH9vf3AP71E6JmD0lBMtO0p8KKpAorRNLdFKpeVY4gXi5Z1GMakk56LBMwRJ0UCXWHEfueOD6mVKxycFWazBKrlcDUr1TJBHKHOFunK9hxs8XTMcnjXobhe8QZE34zXCpvgdupZYDjUlcqQcLWdbs44euywPXeA9fjrgKyKW7n2V1LGjbKbTBGxK1qlJ1wPi4WJUNAlIT1MvZnQzrSPnI62VNGqsvgRhn3msv2tJUx49di5/mdIqvLHN4vrVHk1ujW1UMpLI4Xg2wqJD21J1pym1moFKj2Bz3FopMTttGHT6IImt50bWCPzocEeynKy7qPxOWN086dipcpA8iJGjTz4qWTXNo7xsvds9/2c7FAWxaqgw9bYKEWsWHDudDOmu9MnDo9Z9FqvmfI3YYaSpVqOFht91voY3wxKYt6qyI65QKyZrXLaHYr4OIUB8m1Cd+Y4CYZJcIZd4b/j5FhSZG/gjiVyJcTTgknI3QBGziYT9YmXlrlVXs
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(39860400002)(366004)(346002)(376002)(136003)(396003)(83380400001)(9686003)(6666004)(2906002)(8936002)(86362001)(316002)(4326008)(16526019)(26005)(85182001)(33716001)(186003)(8676002)(66946007)(54906003)(66476007)(6486002)(66556008)(5660300002)(966005)(6916009)(478600001)(6496006)(38100700002)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?CMnPDigQM/xZg4zfrDC7v8BZJ9i3qHGCHeFAVxG?=
X-MS-Exchange-CrossTenant-Network-Message-Id: e5a6ccc0-38e0-4c0c-c654-08d8fdc80349
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 15:31:25.2451
 (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: TVCMHwRN6gS/7mMgdpehLxBoVddhHfQQJmH2wqnxsvLU/Hh7Z17nTpdqgG58l5HmsoBkRwuJLVVD/SlBIITtJw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5968
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 12:40:48PM +0200, Jan Beulich wrote:
> The address of this page is used by the CPU only to recognize when to
> access the virtual APIC page instead. No accesses would ever go to this
> page. It only needs to be present in the (CPU) page tables so that
> address translation will produce its address as result for respective
> accesses.
> 
> By making this page global, we also eliminate the need to refcount it,
> or to assign it to any domain in the first place.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Reviewed-by: Kevin Tian <kevin.tian@intel.com>
> ---
> v4: Set PGC_extra on the page. Make shadow mode work.
> v3: Split p2m insertion change to a separate patch.
> v2: Avoid insertion when !has_vlapic(). Split off change to
>     p2m_get_iommu_flags().
> ---
> I did further consider not allocating any real page at all, but just
> using the address of some unpopulated space (which would require
> announcing this page as reserved to Dom0, so it wouldn't put any PCI
> MMIO BARs there). But I thought this would be too controversial, because
> of the possible risks associated with this.

Really seems more trouble than reward. Also there are systems with
MMIO regions in holes on the memory map, like the issue I had with the
Intel pinctrl stuff that had an MMIO region in a hole on the memory
map [0], so I'm not sure Xen would be in a position to select a
suitable unpopulated page anyway.

[0] https://lore.kernel.org/xen-devel/YFx80wYt%2FKcHanC7@smile.fi.intel.com/

> --- a/xen/arch/x86/hvm/vmx/vmx.c
> +++ b/xen/arch/x86/hvm/vmx/vmx.c
> @@ -66,8 +66,7 @@ boolean_param("force-ept", opt_force_ept
>  static void vmx_ctxt_switch_from(struct vcpu *v);
>  static void vmx_ctxt_switch_to(struct vcpu *v);
>  
> -static int  vmx_alloc_vlapic_mapping(struct domain *d);
> -static void vmx_free_vlapic_mapping(struct domain *d);
> +static int alloc_vlapic_mapping(void);
>  static void vmx_install_vlapic_mapping(struct vcpu *v);
>  static void vmx_update_guest_cr(struct vcpu *v, unsigned int cr,
>                                  unsigned int flags);
> @@ -78,6 +77,8 @@ static int vmx_msr_read_intercept(unsign
>  static int vmx_msr_write_intercept(unsigned int msr, uint64_t msr_content);
>  static void vmx_invlpg(struct vcpu *v, unsigned long linear);
>  
> +static mfn_t __read_mostly apic_access_mfn;
> +
>  /* Values for domain's ->arch.hvm_domain.pi_ops.flags. */
>  #define PI_CSW_FROM (1u << 0)
>  #define PI_CSW_TO   (1u << 1)
> @@ -401,7 +402,6 @@ static int vmx_domain_initialise(struct
>          .to   = vmx_ctxt_switch_to,
>          .tail = vmx_do_resume,
>      };
> -    int rc;
>  
>      d->arch.ctxt_switch = &csw;
>  
> @@ -411,28 +411,22 @@ static int vmx_domain_initialise(struct
>       */
>      d->arch.hvm.vmx.exec_sp = is_hardware_domain(d) || opt_ept_exec_sp;
>  
> -    if ( !has_vlapic(d) )
> -        return 0;
> -
> -    if ( (rc = vmx_alloc_vlapic_mapping(d)) != 0 )
> -        return rc;
> -
>      return 0;
>  }
>  
> -static void vmx_domain_relinquish_resources(struct domain *d)
> +static void domain_creation_finished(struct domain *d)
>  {
> -    if ( !has_vlapic(d) )
> +    gfn_t gfn = gaddr_to_gfn(APIC_DEFAULT_PHYS_BASE);

Worth making it const static?

> +    uint8_t ipat;
> +
> +    if ( !has_vlapic(d) || mfn_eq(apic_access_mfn, _mfn(0)) )

It would be better to use INVALID_MFN here, and init apic_access_mfn
to that value.

>          return;
>  
> -    vmx_free_vlapic_mapping(d);
> -}
> +    ASSERT(epte_get_entry_emt(d, gfn_x(gfn), apic_access_mfn, 0, &ipat,
> +                              true) == MTRR_TYPE_WRBACK);
> +    ASSERT(ipat);
>  
> -static void domain_creation_finished(struct domain *d)
> -{
> -    if ( has_vlapic(d) && !mfn_eq(d->arch.hvm.vmx.apic_access_mfn, _mfn(0)) &&
> -         set_mmio_p2m_entry(d, gaddr_to_gfn(APIC_DEFAULT_PHYS_BASE),
> -                            d->arch.hvm.vmx.apic_access_mfn, PAGE_ORDER_4K) )
> +    if ( set_mmio_p2m_entry(d, gfn, apic_access_mfn, PAGE_ORDER_4K) )
>          domain_crash(d);
>  }
>  
> @@ -2415,7 +2409,6 @@ static struct hvm_function_table __initd
>      .cpu_up_prepare       = vmx_cpu_up_prepare,
>      .cpu_dead             = vmx_cpu_dead,
>      .domain_initialise    = vmx_domain_initialise,
> -    .domain_relinquish_resources = vmx_domain_relinquish_resources,
>      .domain_creation_finished = domain_creation_finished,
>      .vcpu_initialise      = vmx_vcpu_initialise,
>      .vcpu_destroy         = vmx_vcpu_destroy,
> @@ -2662,7 +2655,7 @@ const struct hvm_function_table * __init
>  {
>      set_in_cr4(X86_CR4_VMXE);
>  
> -    if ( vmx_vmcs_init() )
> +    if ( vmx_vmcs_init() || alloc_vlapic_mapping() )
>      {
>          printk("VMX: failed to initialise.\n");
>          return NULL;
> @@ -3224,7 +3217,7 @@ gp_fault:
>      return X86EMUL_EXCEPTION;
>  }
>  
> -static int vmx_alloc_vlapic_mapping(struct domain *d)
> +static int __init alloc_vlapic_mapping(void)
>  {
>      struct page_info *pg;
>      mfn_t mfn;
> @@ -3232,52 +3225,31 @@ static int vmx_alloc_vlapic_mapping(stru
>      if ( !cpu_has_vmx_virtualize_apic_accesses )
>          return 0;
>  
> -    pg = alloc_domheap_page(d, MEMF_no_refcount);
> +    pg = alloc_domheap_page(NULL, 0);
>      if ( !pg )
>          return -ENOMEM;
>  
> -    if ( !get_page_and_type(pg, 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.
> -         */
> -        domain_crash(d);
> -        return -ENODATA;
> -    }
> +    /* Arrange for epte_get_entry_emt() to recognize this page as "special". */
> +    pg->count_info |= PGC_extra;
>  
>      mfn = page_to_mfn(pg);
>      clear_domain_page(mfn);
> -    d->arch.hvm.vmx.apic_access_mfn = mfn;
> +    apic_access_mfn = mfn;
>  
>      return 0;
>  }
>  
> -static void vmx_free_vlapic_mapping(struct domain *d)
> -{
> -    mfn_t mfn = d->arch.hvm.vmx.apic_access_mfn;
> -
> -    d->arch.hvm.vmx.apic_access_mfn = _mfn(0);
> -    if ( !mfn_eq(mfn, _mfn(0)) )
> -    {
> -        struct page_info *pg = mfn_to_page(mfn);
> -
> -        put_page_alloc_ref(pg);
> -        put_page_and_type(pg);
> -    }
> -}
> -
>  static void vmx_install_vlapic_mapping(struct vcpu *v)
>  {
>      paddr_t virt_page_ma, apic_page_ma;
>  
> -    if ( mfn_eq(v->domain->arch.hvm.vmx.apic_access_mfn, _mfn(0)) )
> +    if ( !has_vlapic(v->domain) || mfn_eq(apic_access_mfn, _mfn(0)) )
>          return;
>  
>      ASSERT(cpu_has_vmx_virtualize_apic_accesses);
>  
>      virt_page_ma = page_to_maddr(vcpu_vlapic(v)->regs_page);
> -    apic_page_ma = mfn_to_maddr(v->domain->arch.hvm.vmx.apic_access_mfn);
> +    apic_page_ma = mfn_to_maddr(apic_access_mfn);
>  
>      vmx_vmcs_enter(v);
>      __vmwrite(VIRTUAL_APIC_PAGE_ADDR, virt_page_ma);
> --- a/xen/arch/x86/mm/shadow/set.c
> +++ b/xen/arch/x86/mm/shadow/set.c
> @@ -94,6 +94,22 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
>      ASSERT(!sh_l1e_is_magic(sl1e));
>      ASSERT(shadow_mode_refcounts(d));
>  
> +    /*
> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
> +     * get accessed, and hence there's no need to refcount it (and refcounting
> +     * would fail, due to the page having no owner).
> +     */
> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )

I find this assignment inside the parameter list quite ugly, I would
rather split it on it's own line.

> +    {
> +        const struct page_info *pg = mfn_to_page(mfn);
> +
> +        if ( !page_get_owner(pg) && (pg->count_info & PGC_extra) )
> +        {
> +            ASSERT(type == p2m_mmio_direct);
> +            return 0;

Are there any other pages that could pass this check? I don't think
so, but wanted to assert.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:41:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:41:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109328.208703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVygY-00086x-68; Mon, 12 Apr 2021 15:41:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109328.208703; Mon, 12 Apr 2021 15: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 1lVygY-00086q-2r; Mon, 12 Apr 2021 15:41:10 +0000
Received: by outflank-mailman (input) for mailman id 109328;
 Mon, 12 Apr 2021 15:41:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L7uB=JJ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lVygW-00086l-9K
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:41:08 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c0d499fe-ad17-426e-abbf-021bb1f16f7d;
 Mon, 12 Apr 2021 15:41: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: c0d499fe-ad17-426e-abbf-021bb1f16f7d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618242067;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=H80Y4Edr7Rrc7qCHhExSs6Vzni0yEDlV/lKokyrM7hU=;
  b=cEA+jCfRwpGMcKqRfzcNyhuzP1L9kbikz12uOrucarTIf8e0/rFQc7Qe
   Bo8BxLPuZ4K5MPSYSMIWQbNYF0NFXaH6n2r7VD3v3+M0oep2jwfWYS/lC
   xCBX11O5cLOxK8Cr9oa9Ffu1KLAmFuoppA8w0wSs8Hy8rTAN77tjm5FS7
   4=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: VVDngNiPeL2o+E1JoCbJ80D+M0d+uR8upa5BfOM9G/NlY6Jpo6lSgIK8/cM3//235VAJPjX7Ht
 P9knX0+HR9ylpk4nsRNOVOfhJBg0sM/tReKEluDazmoM17Z+NNDSZs1qBZgmPdwgLWUxiaqqCP
 HMxPsprvNx4FBFoFuGDKVI/mfJJjy6xD7ItH+WteBTogwiit8LEAvjYcy1ubNXRbv6JjbIRK03
 WY04eva+aKFVa7aps9aX5MjM3UpNb1LnzyRglzhl5njEhqfB2Q+H+TcYzu7FrHIAI0fkoQLyNE
 J/8=
X-SBRS: 5.1
X-MesageID: 41247005
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:peEVMKsfzbzO/716bT8S3Lr77skCEIcji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOj7U5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qz6Y
 5JSII7MtH5CDFB4frSyAOzH888hPyO9661jenTpk0dNz1CQadm8gt/F0K/Gkp5WAFJCfMCZe
 ehz+BAoCetfmlSU9SjChA+LqX+jvDotLajWx4JABY79BKD5AnD1JfWGwWVty1uNQ9n7qwl9Q
 H+4m/Ez4Wl98q20xrNk1LUhq4m4+fJ7vtmKIiyhtMOKjPq4zzYKLhJf7GZpjg6rKWOxT8R4a
 DxiiwtNchy9H/dF1vdyXCBumnd+Q0j5HP4xViTjWGLm72AeBsBF8FDiYhFGyGpjnYIgdBm3K
 pHm0KfupZHZCmw+xjV2tnSWxlm0nezuHop+NRj60B3bI12Us4ykaUvuGduVLsQFiPz744qVM
 N0CtvH2fpQeVSGK1jEo2hG2rWXLzoONybDZnJHlt2e0jBQknw85VAf3tYjknAJ8494Y4VY5t
 7DLr9jmNh1P44rRJM4IN1Ebdq8C2TLTx6JGnmVO07bGKYOPG+IjJLr/rMv5qWPdIYTxJU/3L
 TNOWko9VIaSgbLM4mjzZdL+hfCTCGWRjL20PxT4JB/p/nyX7zuPSqfSE0/kseprvkFa/erGc
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5I6Vju104f2A7yvktaeXOfYJbLrHzphcHj4GG
 E/UD/6I9gF6kiqX3T/kQXAQn+FQD26wbtAVIzhu8QDwokEMYNB9iIPj06i282NITpe9qosfE
 V/J7vjmrihpXa/+HvJ62kBAGsfMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYgNkQ9jOCw
 5ZrVRv8aexJ5idrBpSTO6PAya/tT8+tXiKR5ATlum//s/jYIo/FYtjcrd2Dx/3Gxt8nhtKpG
 9PZBQffFLWEirjhMye/dopLdCaU+M5oQ+wZeZItHrUtCyn1L0Sb0peewTrbOm6rkIFQSFOil
 h47qkF6YDw5gqHGC8Ym+Q3MFpFdWKNJqlJZT71K7l8q/TTYwd3Qn6NhTuGzz8OWkeCzTRKuk
 XRaRSOf/fFG1xcvW0d9J3L3hdbSkWxFngAMkxSgMlFDmLBtW900eiXIpCr22/UUVcL2OcbWQ
 u1Owc6E0dW3Naw2weSmDGeUUon3Yk1etPQF64idba74AL3FKSBibwGE/hI/JxsKdDptasRXf
 iCfhKORQmIdd8BykiboG0oNzJzr2RhmfT02Af95Gz9x3InB+HOSW4WDI0zMpWZ72L+QeyP34
 g8hdUpvfGoOmGZUK/O9YjHKzpCIAjUu2i4UqUhro1Vp7s7sP92E4PAWTXFkHFB0xNWFra9qG
 oOBKB66qvGIIlhYogbfD9Y5EMgkJCXN1Qw2zaGdtMWbBUolTvWLtmJ673Hpf4mBVCAvhL5PR
 2a/zdG9/nIUiOf3dcheugNCHUTbFJ55GVp/euEeYGVEgmseu1Z9FexM3O2ctZmOd64MKRVqg
 w/78CDnueReSa9xRvZuiFjJLlSt2mgWsG/DWu3aJt12s3/PU7JhKSk4MS+1miqDTS6blkVno
 1DewgbaN9ZhjwrkY0w1WyzR8XM0zEYukob5SsikFjnnpWi6iPcG0pNNAXCmJVYXTVJKBGz/L
 P42Pnd0G64+SRP3JnICVxZcd5PEcUBV4SfFVYfFeEA+Lqzu7c1iitNYB0yH3cxhTD00eRhx6
 q40pzpKp/fIGatP0kA9z5DDpN1mSJuqXgoSbnO0a6A
X-IronPort-AV: E=Sophos;i="5.82,216,1613451600"; 
   d="scan'208";a="41247005"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FIURgxl/BLBXP2FZSBcRnl436iwkYpDpVJT7jil3R26Ai5QjNipU7GBzNOKEEn2MpHSWUJVhEed17igsxY/Ya4AXhT8lrgTB0K3CJh3ruRyVEdLVLrdwoPDUoEi4h2IFioAbP288tsePRV++KprFAr45GdWuifkUaKYVVtqozgdo9uftQp28+mw1MmQ6rPNvYwAm0Qxq3CcOndP75jV1coYjWb973VwCfyjtDatkbAmkxNk5oicKTOxqUTwvCxSSdyWc9quImSSTwV/xZGdFWO+dQShMiyknAZvqVvLqWp6GDwUT2fuHeFYoSh2xW/PJsHnTurs0/slQ3cOjkWlMXw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XjlsgBhoYdU8eRzneX+I5WwcgTL5MZ/MmZsV/C1k4UA=;
 b=aZ2CooS2vPInuxqHBkjJq/7otyRQ2qBgQKTKXZx8Wxl6m5h6cXxDcmmEh31LQPbZNYlE7RpycM1R1Mk/iXzkdIspNb63UgZFKtJlfr/1iZLr/VzSArsCI+aPpu4knF88EtnME4CgogL5qpmFFBxWD2BY6jL/YQIxVlLtgD420MttMUDXkFRwSg2wwjXdZaIgUHuktWWLH2JqMMp2KlGgUvUrib86tTbmrri5Xc+0kVJCGmI03auFQffHXR2RQDqnjmmmLF5hhKDLRGIPSSC27UBHAUsx9x/Lp/Ydh7f3Yn6JQEf22voy+jsg6SKS/pQxrtvYFPCYlFAli2i3jq4b4A==
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=XjlsgBhoYdU8eRzneX+I5WwcgTL5MZ/MmZsV/C1k4UA=;
 b=D2i4647tUri08DtXqD0Bh6F38BhItI830e6yxMwwhS4vmJ5/JnUvFvAu5IEeEqGdANcA6C9JpEasoeyQ/ND5mSzUiXZPFLgknYXlowjRKbMTSFuBg3jmfsYrsCVTN3He/mt4lf/Ek6CTEB582WbwVniiNdpOiL5a4dcbOpLfkPg=
Date: Mon, 12 Apr 2021 17:40: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 1/2] x86: correct is_pv_domain() when !CONFIG_PV
Message-ID: <YHRqCh3zjUh1l2Kt@Air-de-Roger>
References: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
 <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
 <YHQUJw8H2tgNy5iY@Air-de-Roger>
 <169d6a5b-81ec-f347-8edc-60ba6ab0864f@suse.com>
 <YHReAkwZPnnh2itL@Air-de-Roger>
 <9571d2ac-e8ae-4105-5f92-0a81728f44d2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <9571d2ac-e8ae-4105-5f92-0a81728f44d2@suse.com>
X-ClientProxiedBy: MR1P264CA0027.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: be99c3a6-322c-43b1-2190-08d8fdc96166
X-MS-TrafficTypeDiagnostic: DM6PR03MB4604:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4604347B5CFD13478D4A1D5F8F709@DM6PR03MB4604.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: asj49Ay9Ct+RrtwmVOaqK4VsobZ/PMS+UnQ6j3CtDItMjMWcKiuDJq2saAIl92Nhc+JpZMwHsLYxatghYB6b1jrGywm9MswfDc89uSWRd4yySGLmsacC6rq6zEMqoUQprK8KZGJL/Pnc7R95J5+JTUahZpz++VMNojGfDAh0c10TLZQ1SXKKTNrLJZ2KoghmgKL0EgU8v2ygWa4WK1OVzsn+YPMTWyRzhnz5V+xPyipTyXQPOdhknw/Y0R8dp9L0mG6qglgYHH/WlzLFkpezKunNdHHYIzSz2T+SIIBdN40ybF1W6CsKbxWjIRzk2e54w8ia01ptPB2GGpl0Sw6OvE3owQFvWaY0SDBXU0XZ7Np9zj2azauz2I5iP0zcB+hWL84xt43SQbZlA6egj9pjKG10U6+ckSSZVpR4tgHwcvpPNQFVbp9kDpiDFxCU41kiuQVqgnvPzMqD3HbVsuOG/TeiHSj17JyKzBwlmblvjZ5z1qj71FOoKPImVUO7HIN4VDkN3kzvl+Y3LhYXX899Lneosf3YLsd4mO/0FT2qUtylzXy3o4k7Y/gd9NKUphM4fuyJVKPjM4qrt3CwUD8ASrkkRDDNF60NmoErMG8IywE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(39860400002)(346002)(396003)(376002)(366004)(136003)(16526019)(6666004)(26005)(2906002)(316002)(54906003)(86362001)(186003)(9686003)(6916009)(6486002)(4326008)(33716001)(5660300002)(478600001)(53546011)(6496006)(8936002)(956004)(38100700002)(85182001)(66476007)(66946007)(66556008)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: be99c3a6-322c-43b1-2190-08d8fdc96166
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 15:41:03.9233
 (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: WTBJyazyjaS5G5xIjjuysmGNbP+31ejUFWS6vg5/g14kgwhCO4Jc9ZGy/+k/dGur5zpfg7DB5VdN590p5upYvA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4604
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 05:24:41PM +0200, Jan Beulich wrote:
> On 12.04.2021 16:49, Roger Pau Monné wrote:
> > On Mon, Apr 12, 2021 at 12:07:12PM +0200, Jan Beulich wrote:
> >> On 12.04.2021 11:34, Roger Pau Monné wrote:
> >>> On Fri, Nov 27, 2020 at 05:54:57PM +0100, Jan Beulich wrote:
> >>>> --- a/xen/include/xen/sched.h
> >>>> +++ b/xen/include/xen/sched.h
> >>>> @@ -985,7 +985,7 @@ static always_inline bool is_control_dom
> >>>>  
> >>>>  static always_inline bool is_pv_domain(const struct domain *d)
> >>>>  {
> >>>> -    return IS_ENABLED(CONFIG_PV) &&
> >>>> +    return IS_ENABLED(CONFIG_X86) &&
> >>>>          evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
> >>>>  }
> >>>>  
> >>>> @@ -1011,7 +1011,7 @@ static always_inline bool is_pv_32bit_vc
> >>>>  
> >>>>  static always_inline bool is_pv_64bit_domain(const struct domain *d)
> >>>>  {
> >>>> -    if ( !is_pv_domain(d) )
> >>>> +    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
> >>>>          return false;
> >>>
> >>> I think overall is confusing to have a domain that returns true for
> >>> is_pv_domain but false for both is_pv_{64,32}bit_domain checks.
> >>>
> >>> I know those are only the system domains, but it feels confusing and
> >>> could cause mistakes in the future IMO, as then we would have to
> >>> carefully think where to use ( is_pv_64bit_domain(d)
> >>> || is_pv_32bit_domain(d) ) vs just using is_pv_domain(d), or
> >>> IS_ENABLED(CONFIG_PV) && is_pv_domain(d)
> >>
> >> Imo it's not "then we would have to carefully think where to use ..."
> >> but instead this patch is an indication that we should have been for
> >> quite some time. For this reason (coming back to your first comment
> >> at the top) I'm not sure adding a comment _there_ is actually useful.
> >> Every use of is_pv_*() needs carefully considering which domains are
> >> really meant.
> > 
> > Maybe we shouldn't have used is_pv_domain as a way to hide code from
> > the compiler and instead always provide dummy functions, as even with
> > PV support compiled out we still need some of it for system domains.
> > 
> > I'm not sure I have a good proposal to make, but it seems wrong to me
> > that is_pv_domain(d) could be different than is_pv_64bit_domain(d) ||
> > is_pv_32bit_domain(d).
> 
> Hmm, so we're of opposite opinions - not sure what to do. Short of
> having / introducing is_system_domain() or some such (with all the
> needed auditing) I can't see how assuming the two would mean the
> same could ever have been true. With what we have is_pv_domain() is
> legitimately true for them, and both is_pv_{32,64}bit_domain() ought
> to be false (as there's no specific bitness associated with them)
> imo _at least_ when !PV.

It's all quite ugly, but I wasn't really getting your reasoning that
system domains can be considered PV domains without a bitness.

I think we both agree that long term having is_system_domain would be
the cleanest solution, but it needs a lot of auditing. I think I would
be fine if you could add a comment somewhere noting that system
domains can be identified as PV domains without a bitness, so that
it's likely less confusing in the future.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:51:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:51:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109337.208722 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyqP-0000hW-A7; Mon, 12 Apr 2021 15:51:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109337.208722; Mon, 12 Apr 2021 15: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 1lVyqP-0000hP-6c; Mon, 12 Apr 2021 15:51:21 +0000
Received: by outflank-mailman (input) for mailman id 109337;
 Mon, 12 Apr 2021 15:51:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q596=JJ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lVyqO-0000hK-JA
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:51:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 07ebdc7f-00d7-4b53-89cc-fc8fe4beda37;
 Mon, 12 Apr 2021 15:51:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 469AEB317;
 Mon, 12 Apr 2021 15:51: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: 07ebdc7f-00d7-4b53-89cc-fc8fe4beda37
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618242678; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ySzFyc2m+/hF5QuiGBCAs6tV9dvl6k34txaxGc4Ri7Y=;
	b=hoRfPgcrSFTW/gKUPo1Nwjegb53qSEWZmjU92mGry0y8gzRhn7ej1yDcw3xepgIOnyiW5+
	CvqQt5L5Zy1Xp9pI2cA5P3IGn6JDCQllad5f8qk35q3D9fE10iIWLm4Gdq845B8QDdul0K
	eNkvltxPHJdeGoPbWzGnhUpyYQj3nVY=
Subject: Re: [PATCH 1/2] x86: correct is_pv_domain() when !CONFIG_PV
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: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
 <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
 <YHQUJw8H2tgNy5iY@Air-de-Roger>
 <169d6a5b-81ec-f347-8edc-60ba6ab0864f@suse.com>
 <YHReAkwZPnnh2itL@Air-de-Roger>
 <9571d2ac-e8ae-4105-5f92-0a81728f44d2@suse.com>
 <YHRqCh3zjUh1l2Kt@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d8ea77cd-acab-c899-5bc2-416f4d784943@suse.com>
Date: Mon, 12 Apr 2021 17:51:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YHRqCh3zjUh1l2Kt@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 12.04.2021 17:40, Roger Pau Monné wrote:
> On Mon, Apr 12, 2021 at 05:24:41PM +0200, Jan Beulich wrote:
>> On 12.04.2021 16:49, Roger Pau Monné wrote:
>>> On Mon, Apr 12, 2021 at 12:07:12PM +0200, Jan Beulich wrote:
>>>> On 12.04.2021 11:34, Roger Pau Monné wrote:
>>>>> On Fri, Nov 27, 2020 at 05:54:57PM +0100, Jan Beulich wrote:
>>>>>> --- a/xen/include/xen/sched.h
>>>>>> +++ b/xen/include/xen/sched.h
>>>>>> @@ -985,7 +985,7 @@ static always_inline bool is_control_dom
>>>>>>  
>>>>>>  static always_inline bool is_pv_domain(const struct domain *d)
>>>>>>  {
>>>>>> -    return IS_ENABLED(CONFIG_PV) &&
>>>>>> +    return IS_ENABLED(CONFIG_X86) &&
>>>>>>          evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
>>>>>>  }
>>>>>>  
>>>>>> @@ -1011,7 +1011,7 @@ static always_inline bool is_pv_32bit_vc
>>>>>>  
>>>>>>  static always_inline bool is_pv_64bit_domain(const struct domain *d)
>>>>>>  {
>>>>>> -    if ( !is_pv_domain(d) )
>>>>>> +    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
>>>>>>          return false;
>>>>>
>>>>> I think overall is confusing to have a domain that returns true for
>>>>> is_pv_domain but false for both is_pv_{64,32}bit_domain checks.
>>>>>
>>>>> I know those are only the system domains, but it feels confusing and
>>>>> could cause mistakes in the future IMO, as then we would have to
>>>>> carefully think where to use ( is_pv_64bit_domain(d)
>>>>> || is_pv_32bit_domain(d) ) vs just using is_pv_domain(d), or
>>>>> IS_ENABLED(CONFIG_PV) && is_pv_domain(d)
>>>>
>>>> Imo it's not "then we would have to carefully think where to use ..."
>>>> but instead this patch is an indication that we should have been for
>>>> quite some time. For this reason (coming back to your first comment
>>>> at the top) I'm not sure adding a comment _there_ is actually useful.
>>>> Every use of is_pv_*() needs carefully considering which domains are
>>>> really meant.
>>>
>>> Maybe we shouldn't have used is_pv_domain as a way to hide code from
>>> the compiler and instead always provide dummy functions, as even with
>>> PV support compiled out we still need some of it for system domains.
>>>
>>> I'm not sure I have a good proposal to make, but it seems wrong to me
>>> that is_pv_domain(d) could be different than is_pv_64bit_domain(d) ||
>>> is_pv_32bit_domain(d).
>>
>> Hmm, so we're of opposite opinions - not sure what to do. Short of
>> having / introducing is_system_domain() or some such (with all the
>> needed auditing) I can't see how assuming the two would mean the
>> same could ever have been true. With what we have is_pv_domain() is
>> legitimately true for them, and both is_pv_{32,64}bit_domain() ought
>> to be false (as there's no specific bitness associated with them)
>> imo _at least_ when !PV.
> 
> It's all quite ugly, but I wasn't really getting your reasoning that
> system domains can be considered PV domains without a bitness.
> 
> I think we both agree that long term having is_system_domain would be
> the cleanest solution, but it needs a lot of auditing.

Yes.

> I think I would
> be fine if you could add a comment somewhere noting that system
> domains can be identified as PV domains without a bitness, so that
> it's likely less confusing in the future.

I've added

/*
 * Note that is_pv_domain() can return true (for system domains) even when
 * both is_pv_64bit_domain() and is_pv_32bit_domain() return false. IOW
 * system domains can be considered PV without specific bitness.
 */

immediately ahead of is_pv_domain(). Does this sound okay?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 15:55:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 15:55:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109342.208733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyuk-0000ue-Rk; Mon, 12 Apr 2021 15:55:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109342.208733; Mon, 12 Apr 2021 15:55: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 1lVyuk-0000uX-Oq; Mon, 12 Apr 2021 15:55:50 +0000
Received: by outflank-mailman (input) for mailman id 109342;
 Mon, 12 Apr 2021 15:55:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HoLK=JJ=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lVyuj-0000uS-PB
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 15:55:49 +0000
Received: from aserp2130.oracle.com (unknown [141.146.126.79])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 94dca6b1-ac19-4bb7-93bd-560e349ca269;
 Mon, 12 Apr 2021 15:55:49 +0000 (UTC)
Received: from pps.filterd (aserp2130.oracle.com [127.0.0.1])
 by aserp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13CFtmKE192499;
 Mon, 12 Apr 2021 15:55:48 GMT
Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79])
 by aserp2130.oracle.com with ESMTP id 37u1hbcaa3-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Mon, 12 Apr 2021 15:55:48 +0000
Received: from pps.filterd (userp3020.oracle.com [127.0.0.1])
 by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13CFtOVv172775;
 Mon, 12 Apr 2021 15:55:47 GMT
Received: from nam04-dm6-obe.outbound.protection.outlook.com
 (mail-dm6nam08lp2049.outbound.protection.outlook.com [104.47.73.49])
 by userp3020.oracle.com with ESMTP id 37unsr3agn-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Mon, 12 Apr 2021 15:55:47 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by SJ0PR10MB4477.namprd10.prod.outlook.com (2603:10b6:a03:2df::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Mon, 12 Apr
 2021 15:55:45 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024%7]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 15:55:45 +0000
Received: from [10.74.101.110] (138.3.201.46) by
 BYAPR07CA0003.namprd07.prod.outlook.com (2603:10b6:a02:bc::16) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.16 via Frontend Transport; Mon, 12 Apr 2021 15:55:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94dca6b1-ac19-4bb7-93bd-560e349ca269
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=atlzDi+DE6NBgRjfwgIjKyPIgX00s/eE046Xp+kC4EU=;
 b=SQSgcdOKqp4i/tAziFywuS1/dvLanvzMT8gTaeRUYg+WqnrJkRNPfaKm3aBDnu/SmNA9
 1jmvZOEj5S8WjW88Ju6ySUwb1tzHDZdHISIgYglaZnu1AQswNnPWdv01Hxs9U3DkSCAh
 R3iYXArb+cKfiChEwxb9YWFyHyUIJRtMaPQHmVluYgLaNsPQsCXTh78htC+w4+GrPLl6
 SUMEwHGsYJUXUQiMJLOcoxOetGi7S1tL+xnG8VwDG1Td6FKSRSuLEXiZbDKpyEf2CF4O
 D6techcwYVcAPUToFSy5GqvJ39KpnV/rWw6/aAwsSQQm3saJPNAHf/LtuDLWYuYWwPsJ lg== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z+l5pE3zNq2uxdQ5upshF0YWqI44jWP7Ogygt2Uh5F9Qfmm8P+K4Uq2VdHtH7zPWRZL1ZRQvTnAbn2hAtTqWg/F3Nr8TS/vlDznp+ixyOaz4jUveHZyOdt2pNGUVF/56Gc6K79EgDJQZbc0wRC1xDoPUD04okS+r5ZItEuwHQ6nBK1Z54lvQlqBDBdkbApWFAa78+gJB+CzkW8tTyNlK8UBAAzqsFj1b1INjQLe2phwHZUgv0FeulD74DYE1KGCYzCKS7jPdCfNCdNePki+Elxpo7quuNeYAH5GcqH2q6VPay50dhiRFOacyynEVOfixrLNQSAGDmjHbstRDyQFRgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=atlzDi+DE6NBgRjfwgIjKyPIgX00s/eE046Xp+kC4EU=;
 b=eRfSLphhACcRZv28lTmMcsmFE5CuSzCCIwmVHOTa+25VIkeZU4T1EBzjPyHdaz40zltMfLfpb7sWoNCDHmsIsn0hVkSNzT5QEjc1IN37jcY/MCKIv8KsxpFL8Uo72F5DHiOmgfauQDwBGDXlQaztbd+l12lt1FNbgpr+jpf3qg1WqHV4ZDMi9KLU46jvDxSzqCigWsTS7qVeOQ8zQYpK3sTsFQL6LitNJsknISKU04ndH8BFJYWxoMKJL3lp1CkIcLSZGgAhowy7gT3SZNlyT6msR4LgLLBIfaEpkn6NDgNrojiQWFOpioqLZME4qgiFCOh0skeCPfPyDbRn1eODYg==
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=atlzDi+DE6NBgRjfwgIjKyPIgX00s/eE046Xp+kC4EU=;
 b=idZ/ENws5mO+Nd3emX/PyFT9ndNiTNr07iCiy7uEBsE43rwgc6g4rqftcFFgPbCDaCRMntwlPybzOqisoiw7HwjC38hyWJvpPJWwQakHcVzvKfsR77WT7abOBj/8b/9dduf/En1NShcG3yjQosty/Ancn9TXneJd0vA4NY43vqw=
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=oracle.com;
Subject: Re: [PATCH 2/3] xen-pciback: reconfigure also from backend watch
 handler
To: Jan Beulich <jbeulich@suse.com>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <74955b48-80b1-3436-06b4-d8569260aa65@suse.com>
 <a93c66e5-807b-e557-d437-48d7f46f25f7@oracle.com>
 <529f18d5-89ae-596e-29a7-d773e5a3c6b2@suse.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Message-ID: <c0e94f59-e91a-1f54-4692-59bb72b01f43@oracle.com>
Date: Mon, 12 Apr 2021 11:55:41 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
In-Reply-To: <529f18d5-89ae-596e-29a7-d773e5a3c6b2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Originating-IP: [138.3.201.46]
X-ClientProxiedBy: BYAPR07CA0003.namprd07.prod.outlook.com
 (2603:10b6:a02:bc::16) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5bb807b4-6bee-4aba-8ad6-08d8fdcb6e84
X-MS-TrafficTypeDiagnostic: SJ0PR10MB4477:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: 
	<SJ0PR10MB44778815C2B917BC6EFDDCF58A709@SJ0PR10MB4477.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6430;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	yIRjkLmK3AsAVGR4pRnC4QYh83HTctAmndub5vFTpfUYftpy6FCLahODu8kLsOQniuMiUdbCh4mgADLvA/P36pFyapRP+lrmKgNZU/n6SO5bAztbiw/8absj1iA/Du81hYQxhQZBhL5r5N05BmsCP38ecc6MN7BTxbyUqrHr3EYlzhbPISt12S8Ya+CxjNepP+gYV1cyv30kfjlFI64dz7nOR0CkPHgNnVp8rUMEnb/K8uj1ffxJoFNVd+Y+3FgBnsoeHGy6iB6QKISrKNxeZEckX6SMfYZ9m3uP/mVWbqMhEQVL3Irx6x8ora8Nen/PW/4syE00V5yK0x0EJxceNKlWcqkp5Ko43uvgQynk3VcBz9aGqvDuL7LWFCrBKVuTKimI5MiYuOJtTdg6apDcu6b+hAXcWSxZbrjHrzlFLE2yJVT0pHYPyV0dA0psGbEdCJdpPm+k7YGvvoX3pkWxxbnQNOSUdAzdCJDpIqI6oeQALkdgQ1r3hSEQd//RavDqBdQhT4rGFjJ3QrJ2Vzm4++Y8mbzFkmNFcWrHy2qOfrF2D/z3bp76qQfZmIrnZX+aAT4eoWGAofJnyXHJ6Hb3eMCPWe7kRPKtxyaLxh6HhUrDiO1QJUVwIjh9hvS3y08E7/3bqDLP7rGixfKZJ5qxC2FlYtDpJdSDO7JFW3JBQxlLCtc2jQr3I4E9hjSwbAg+
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(366004)(136003)(396003)(346002)(39860400002)(186003)(2616005)(956004)(16576012)(6486002)(31686004)(44832011)(38100700002)(31696002)(54906003)(8676002)(8936002)(36756003)(5660300002)(478600001)(86362001)(4326008)(66556008)(6916009)(53546011)(26005)(2906002)(316002)(66476007)(4744005)(66946007)(16526019)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5bb807b4-6bee-4aba-8ad6-08d8fdcb6e84
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 15:55:44.8932
 (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: Ovc/Dm6lxxE2zVpwt8Xk7nRy2FSjpsksM/WZeO+kWIyZeLUCZeEMOjaN1QY80Db3i57NRXjwdrcg+i/KRNSx3H1+hkGR7h87me2raE0k0GI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4477
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9952 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 adultscore=0
 malwarescore=0 suspectscore=0 bulkscore=0 mlxscore=0 spamscore=0
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104120102
X-Proofpoint-GUID: CJND3bpLxCDtg1OxEDKVdF-foQJ0lTs2
X-Proofpoint-ORIG-GUID: CJND3bpLxCDtg1OxEDKVdF-foQJ0lTs2
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9952 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 priorityscore=1501
 clxscore=1015 adultscore=0 mlxlogscore=999 impostorscore=0 malwarescore=0
 lowpriorityscore=0 spamscore=0 phishscore=0 bulkscore=0 suspectscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104120102


On 4/12/21 5:44 AM, Jan Beulich wrote:
>
>> It also looks a bit odd that adding a device is now viewed as a reconfiguration. It seems to me that xen_pcibk_setup_backend() and xen_pcibk_reconfigure() really should be merged --- initialization code for both looks pretty much the same.
> I thought the same, but didn't want to make more of a change than is
> needed to address the problem at hand. Plus of course there's still
> the possibility that someone may fix libxl, at which point the change
> here (and hence the merging) would become unnecessary.


Merging them would be a good thing regardless of fixing libxl. But I agree that it is separate from fixing the issue at hand.


Maybe rename the function? (I myself can't think of a good name).


-boris



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 16:00:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 16:00:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109346.208746 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVyzG-0002IX-Ej; Mon, 12 Apr 2021 16:00:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109346.208746; Mon, 12 Apr 2021 16: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 1lVyzG-0002IQ-BZ; Mon, 12 Apr 2021 16:00:30 +0000
Received: by outflank-mailman (input) for mailman id 109346;
 Mon, 12 Apr 2021 16:00: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 1lVyzE-0002II-Te; Mon, 12 Apr 2021 16:00: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 1lVyzE-0000Yi-Mw; Mon, 12 Apr 2021 16:00: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 1lVyzE-0003mq-BI; Mon, 12 Apr 2021 16:00:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lVyzE-0008Nr-Ar; Mon, 12 Apr 2021 16:00: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=i+UEBErYfoWSRNBxxRJ0CApxMeGJohr28b+Kb6hN0y0=; b=0t471uVqmrcPBJBFB6+Ev9HEM4
	uV0cs1FtbJU4b9xVbc5QHQjY8m07VuGK7BPMvKQyPDNulQcQn5Ldpt0Y592KuABSocaUFxo2+/xOP
	GMV3v0rUQQhvtQ+hcDxT/aYCvjJqiGLDuif9EfG/YP4Xl7tae3zJ5u5NyQ6IvpFFtSqE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161015-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161015: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 16:00:28 +0000

flight 161015 xen-4.12-testing real [real]
flight 161058 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161015/
http://logs.test-lab.xenproject.org/osstest/logs/161058/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-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-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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   55 days
Failing since        160128  2021-03-18 14:36:18 Z   25 days   31 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   23 days   29 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 16:06:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 16:06:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109354.208761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVz5B-0002XT-Bo; Mon, 12 Apr 2021 16:06:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109354.208761; Mon, 12 Apr 2021 16:06: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 1lVz5B-0002XM-8u; Mon, 12 Apr 2021 16:06:37 +0000
Received: by outflank-mailman (input) for mailman id 109354;
 Mon, 12 Apr 2021 16:06:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HoLK=JJ=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lVz5A-0002XH-7s
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 16:06:36 +0000
Received: from aserp2130.oracle.com (unknown [141.146.126.79])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b0dda69a-2737-414b-9226-9366dcee0bf0;
 Mon, 12 Apr 2021 16:06:35 +0000 (UTC)
Received: from pps.filterd (aserp2130.oracle.com [127.0.0.1])
 by aserp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13CFteb8192445;
 Mon, 12 Apr 2021 16:06:34 GMT
Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80])
 by aserp2130.oracle.com with ESMTP id 37u1hbcbm4-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Mon, 12 Apr 2021 16:06:34 +0000
Received: from pps.filterd (userp3030.oracle.com [127.0.0.1])
 by userp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13CFuIp9146298;
 Mon, 12 Apr 2021 16:06:33 GMT
Received: from nam12-mw2-obe.outbound.protection.outlook.com
 (mail-mw2nam12lp2040.outbound.protection.outlook.com [104.47.66.40])
 by userp3030.oracle.com with ESMTP id 37unxvk933-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Mon, 12 Apr 2021 16:06:33 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by BY5PR10MB4242.namprd10.prod.outlook.com (2603:10b6:a03:20d::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Mon, 12 Apr
 2021 16:06:03 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024%7]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 16:06:03 +0000
Received: from [10.74.101.110] (138.3.201.46) by
 SA9PR13CA0060.namprd13.prod.outlook.com (2603:10b6:806:22::35) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.6 via Frontend Transport; Mon, 12 Apr 2021 16:06:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b0dda69a-2737-414b-9226-9366dcee0bf0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=ezO9lxcEYeQ417PQsi1opsbAwOPW7jGBct78DrLEOVY=;
 b=ql7emlPW+lVUgjuitBZ/1vcGDUj/b/K/vU7+7/rX1q90lAsV+NuH2KWZ+O4py+hvSkQh
 FkglclN5HvnXms4VzY3RBO7AErq1JB5RjRZ2zeCw4DRdTrjdUbCpFEPHy0pNDdgdkC2G
 kyNRSUfrcCiiG0apERCCrh2YfceUeA4ZGp25B0wj1v7dRTwhFN57B5fWr4aVNAI6KBKx
 6kGIUzaBCeHjwnI3hsYTkZVW0+KP56Pitl9o4CJC67kpUnfNxNLXTS2FehFcS42ayOb2
 S+VPFq+98FOvBbQS17VuzqBHWsUwLwm+pXnBKHoDA9uX2IYzKezVdVgPMeofzBSttHzh lw== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IcXosOZ8Qr828w9y5V7z7FQT+ATTDDayUCpl2aryeq482kyafYgEEDF/1Ga7xx+xSL7EjXVhHQj5A28VdTx6T+kkBAQwyNxEVBDtrXV/rshIwFUxALiUydBbecnIbpWgq5YETF47o3dLkd0UrvWHnFgT0ypiBbfsCwS463hyoRmwM5Syv2+2PRkcvc+1c4ZD0trUE8CC7trOQHzaLNiLXGdst4drBD6gW+VBBZMHIrY25/1vuqJLbLnem9JBy/T9nHnY7ZIH0MImFHtgoDeKq/jXnmAIKVHFLUAN0iqOpi49eWo1OxRFs5Xm9WKTUVI6KYKrbzacj7ey2O5rJ4q2JA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ezO9lxcEYeQ417PQsi1opsbAwOPW7jGBct78DrLEOVY=;
 b=m9jOMw+DEseduba9TXGW+zrABSDecSerOIkLBJ0uUbB3looTb9nJ77dcqzEJSoavDaptcoDhWxe9F4lJIpD1ydrf1Hm9YJuzgV4UnPazlzSyzohMR6yrObJwC4FS90kBgc6BExukPbIolGW1We2o94cZM18GopCDkSB5nbz+VVIg0QX2Mx3jxBvLjFYp1GurtdzJOD9xJiC5wnxJXxLDG3JaUzvVqRHEpojsGOPdRkdyWU4oyXW3npJlTUgUw77b8TkwCFMpaCbVB4sMVYy66WL1ojj67S2MHr8JoOuj6GZbT+rbmDs9Ek8Pp9XuAm67lhe0ZiWdN7jHAFt68bATSQ==
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=ezO9lxcEYeQ417PQsi1opsbAwOPW7jGBct78DrLEOVY=;
 b=CsJIBG8bjiA615f35KQ+Z74UhGI0W6q9D7YLHUQPJGKEfWO6xK+g2sCcrQO1c3JnoyBesmA3oHlRUs43nKymKBLsZfsIvWQx4KmqjmD+HNTngXD8RnBZgXPZeJZqCCKxndoRYw71IttQ5fTT/4hTVKSPY92ai1GpP4nf72GkuAE=
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=oracle.com;
Subject: Re: [PATCH 3/3] xen-pciback: simplify vpci's find hook
To: Jan Beulich <jbeulich@suse.com>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
 <e9f358bc-e957-e039-235c-6a9f68328554@oracle.com>
 <ea274ffe-4eee-9fa5-b5d1-e8528b112227@suse.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Message-ID: <037a8fc2-2c69-2049-8826-32181b8aec2d@oracle.com>
Date: Mon, 12 Apr 2021 12:05:59 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
In-Reply-To: <ea274ffe-4eee-9fa5-b5d1-e8528b112227@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Originating-IP: [138.3.201.46]
X-ClientProxiedBy: SA9PR13CA0060.namprd13.prod.outlook.com
 (2603:10b6:806:22::35) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4603781b-4a8a-45d4-ae75-08d8fdccdf37
X-MS-TrafficTypeDiagnostic: BY5PR10MB4242:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: 
	<BY5PR10MB42424F1EC0C6A54AD47CBC628A709@BY5PR10MB4242.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	1Eg+TCE0pD82sFoZMjzRcu/0zjSyPuWgNRcDeeoZPKFgGDrIzBYGGam0RDvewMeznGFuFzDjoXbQDh4DKGqh+eAxKBScrhf4dvQ1Al06TIZ5U4fM6mW/+ua17aOFp48vr/AJWIbR0gxpukdXrYQ+ki06SccA5koghqEKeZWtXk1QnoxzRn/MqL46AoPNchjWiQFkNUXdR7w/042v0K/U8NEyCFHoUYyf5r6BFNstTWtdMKz8h1cH+uGORJIxgr6iBDiiTUd4ol1r6tnVBc5nljyBEKPvIoHL8XHanl9MVg5Xm5Z5pQjKEzJCbNfeZKYTCZ7u4/F2jNHl0efBeUrScptSt2e6HZMYcPEd4P7LXNry0Q1o+csTnYg8MPOgAwgTAJBSCvH2ICvijEhpKvRbqk/Gt0aJs4ReUnS92l8Yej2/MnxBIA6dNUH0rRtxX7TZEpfrw6c1u8yCQ82VwCOCj0RRn/yHWodMjXmZFEexAv/sTNAnymsP/uvtdbQoGgytC7SQrbkCxzHC2gZQcrd4+rfTaFVZ/rVoJeNuhy9KLeYMPORgp3NbIy8gDdQZ+Hgla75VQWH4Yqu9KaZcvXs3qIZHs87YRPVU0sfoUfNTTcbqCKWngWwMVfoZ2enu+snRwpG50U0pVa+zdFtU9JieCGt6c+sZ8zW7g7wfslT4rtiB+V5ItsJvZjc5vCfLbGiW
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(136003)(396003)(346002)(366004)(39860400002)(956004)(2906002)(186003)(83380400001)(4326008)(16576012)(66946007)(316002)(6916009)(6486002)(54906003)(2616005)(53546011)(26005)(31696002)(44832011)(478600001)(66556008)(38100700002)(8936002)(6666004)(8676002)(36756003)(66476007)(31686004)(16526019)(86362001)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4603781b-4a8a-45d4-ae75-08d8fdccdf37
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 16:06:03.4598
 (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: k8GbNStNsWHMQqWxLBUBZ1nOW7HPPRjd6wTaKM7VAscttx23i0Nfp8U9kR03X2E0Sq6SmG9tBlCW2cnO9HJajdzPWP+2uSGoHnNZrh4ZFzw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR10MB4242
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9952 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 bulkscore=0 malwarescore=0
 spamscore=0 adultscore=0 phishscore=0 mlxlogscore=999 suspectscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104120102
X-Proofpoint-GUID: rkMSfBudUTVL0hkqXOoEN9OKquzTgdrN
X-Proofpoint-ORIG-GUID: rkMSfBudUTVL0hkqXOoEN9OKquzTgdrN
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9952 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 priorityscore=1501
 clxscore=1015 adultscore=0 mlxlogscore=999 impostorscore=0 malwarescore=0
 lowpriorityscore=0 spamscore=0 phishscore=0 bulkscore=0 suspectscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104120102


On 4/12/21 5:50 AM, Jan Beulich wrote:
> On 09.04.2021 23:45, Boris Ostrovsky wrote:
>> On 4/7/21 10:37 AM, Jan Beulich wrote:
>>> There's no point in comparing SBDF - we can simply compare the struct
>>> pci_dev pointers. If they weren't the same for a given device, we'd have
>>> bigger problems from having stored a stale pointer.
>>>
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
>> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> Thanks. As the 1st patch of this series still looks to have an unclear
> disposition (unless not getting back a reply on my responses to your
> comments means silent agreement),


TBH I have been struggling with understanding both the original problem (just like you have) and the solution you are proposing (apart from making dev_list[] more compact).


>  I can't predict yet when I'd be able
> to submit v2. Hence I'd like to point out that this patch is
> independent of the former two, and hence would need to wait further if
> you wanted to apply it. After all this one (unlike the other two) is
> merely cleanup, and hence would rather want to go in during a merge
> window.


Given that next Sunday may be when 5.12 is released I think everything but stoppers will have to wait for the merge window.


-boris



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 16:23:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 16:23:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109366.208776 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVzLL-0004JH-S1; Mon, 12 Apr 2021 16:23:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109366.208776; Mon, 12 Apr 2021 16:23: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 1lVzLL-0004JA-OZ; Mon, 12 Apr 2021 16:23:19 +0000
Received: by outflank-mailman (input) for mailman id 109366;
 Mon, 12 Apr 2021 16:23:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=senq=JJ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lVzLK-0004J5-8l
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 16:23:18 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ac573304-c0ef-4495-b143-b523204a53e2;
 Mon, 12 Apr 2021 16:23:17 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 362D5611AD;
 Mon, 12 Apr 2021 16:23: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: ac573304-c0ef-4495-b143-b523204a53e2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618244597;
	bh=XBlsms3uq6j4j24CxRRLUTl6lUX5xAPjZPhPfOfu0Do=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=mCmYvQHjq/J0dh8kJ5fcCbYC/ShA0jlWYu0IPl/pu5kyr2QuJPMxxd9aSIUDMwrp/
	 YH+TREyC5+ADcF1YG4fl9dacxFrK4JFJqZpf1G1rE32B4fNJYxN7KKYy90P0N4mweB
	 OaNGCNQdnKurqaw1YUqARTuSfjl1CEAFl0Y73XE3gw+lfuoFRhxkPQdbgquDwajRcP
	 97vl4/NHwA4WkydGtuL6AabJYXZz8M6/u4wybjXQHROildF1vvZlqZ/SyOLVPY0+We
	 4uYtQa5pu6yphLtrWDlb41LvrCqdA3wgOcgqaYyoH7DE/m3wIJCR4kRPbnu/Id9D/D
	 MoIs4Aw7bfr0g==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Lv Yunlong <lyl2019@mail.ustc.edu.cn>,
	Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>,
	Sasha Levin <sashal@kernel.org>,
	dri-devel@lists.freedesktop.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH AUTOSEL 5.11 16/51] gpu/xen: Fix a use after free in xen_drm_drv_init
Date: Mon, 12 Apr 2021 12:22:21 -0400
Message-Id: <20210412162256.313524-16-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210412162256.313524-1-sashal@kernel.org>
References: <20210412162256.313524-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Lv Yunlong <lyl2019@mail.ustc.edu.cn>

[ Upstream commit 52762efa2b256ed1c5274e5177cbd52ee11a2f6a ]

In function displback_changed, has the call chain
displback_connect(front_info)->xen_drm_drv_init(front_info).
We can see that drm_info is assigned to front_info->drm_info
and drm_info is freed in fail branch in xen_drm_drv_init().

Later displback_disconnect(front_info) is called and it calls
xen_drm_drv_fini(front_info) cause a use after free by
drm_info = front_info->drm_info statement.

My patch has done two things. First fixes the fail label which
drm_info = kzalloc() failed and still free the drm_info.
Second sets front_info->drm_info to NULL to avoid uaf.

Signed-off-by: Lv Yunlong <lyl2019@mail.ustc.edu.cn>
Reviewed-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210323014656.10068-1-lyl2019@mail.ustc.edu.cn
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/gpu/drm/xen/xen_drm_front.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xen/xen_drm_front.c b/drivers/gpu/drm/xen/xen_drm_front.c
index 30d9adf31c84..9f14d99c763c 100644
--- a/drivers/gpu/drm/xen/xen_drm_front.c
+++ b/drivers/gpu/drm/xen/xen_drm_front.c
@@ -521,7 +521,7 @@ static int xen_drm_drv_init(struct xen_drm_front_info *front_info)
 	drm_dev = drm_dev_alloc(&xen_drm_driver, dev);
 	if (IS_ERR(drm_dev)) {
 		ret = PTR_ERR(drm_dev);
-		goto fail;
+		goto fail_dev;
 	}
 
 	drm_info->drm_dev = drm_dev;
@@ -551,8 +551,10 @@ static int xen_drm_drv_init(struct xen_drm_front_info *front_info)
 	drm_kms_helper_poll_fini(drm_dev);
 	drm_mode_config_cleanup(drm_dev);
 	drm_dev_put(drm_dev);
-fail:
+fail_dev:
 	kfree(drm_info);
+	front_info->drm_info = NULL;
+fail:
 	return ret;
 }
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 16:24:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 16:24:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109371.208790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVzMM-0004Pt-5T; Mon, 12 Apr 2021 16:24:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109371.208790; Mon, 12 Apr 2021 16:24: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 1lVzMM-0004Pm-2X; Mon, 12 Apr 2021 16:24:22 +0000
Received: by outflank-mailman (input) for mailman id 109371;
 Mon, 12 Apr 2021 16:24:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=senq=JJ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lVzMK-0004Pe-Ii
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 16:24:20 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f49a0939-51e5-4899-b89a-2ac2edfc5232;
 Mon, 12 Apr 2021 16:24:20 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id ACE4C6136C;
 Mon, 12 Apr 2021 16:24: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: f49a0939-51e5-4899-b89a-2ac2edfc5232
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618244659;
	bh=KgQAhTj6sUm8dp2+WQQSK3nP7Y2J/NZ4Vx5xWPL84os=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=WAZ2k0TGS7fcDzgO/l5cyt1+kbKIy3KOprSX+Oof1qwOrQCqJn43qurWJL572xnrK
	 d82uakrXnbB80Jy76TzMAjVnhqPE7BRhwIGGFCfAFQS7Nq2juLriWg8PGlo5cEFTIZ
	 KV8v4Km5NOb05qGIXSRPuRMsKkw6h1cq7x0l1+YHlTs78GS+1EgsHoHpDxWDxO5rBI
	 S1u+a8NWXYIpag04iTlSOAB9XQErsgbvGyiTEl/Z55EAYkcy6ZXjeUH5UQ2hesV6ur
	 7zUSKR0ZWJ18lliDhKkftbu+HqySGyAKqwa1jXjESPPuif6M3pzaP/dBBaPDuAoGAC
	 /NZlAew11qndQ==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Lv Yunlong <lyl2019@mail.ustc.edu.cn>,
	Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>,
	Sasha Levin <sashal@kernel.org>,
	dri-devel@lists.freedesktop.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH AUTOSEL 5.10 14/46] gpu/xen: Fix a use after free in xen_drm_drv_init
Date: Mon, 12 Apr 2021 12:23:29 -0400
Message-Id: <20210412162401.314035-14-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210412162401.314035-1-sashal@kernel.org>
References: <20210412162401.314035-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Lv Yunlong <lyl2019@mail.ustc.edu.cn>

[ Upstream commit 52762efa2b256ed1c5274e5177cbd52ee11a2f6a ]

In function displback_changed, has the call chain
displback_connect(front_info)->xen_drm_drv_init(front_info).
We can see that drm_info is assigned to front_info->drm_info
and drm_info is freed in fail branch in xen_drm_drv_init().

Later displback_disconnect(front_info) is called and it calls
xen_drm_drv_fini(front_info) cause a use after free by
drm_info = front_info->drm_info statement.

My patch has done two things. First fixes the fail label which
drm_info = kzalloc() failed and still free the drm_info.
Second sets front_info->drm_info to NULL to avoid uaf.

Signed-off-by: Lv Yunlong <lyl2019@mail.ustc.edu.cn>
Reviewed-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210323014656.10068-1-lyl2019@mail.ustc.edu.cn
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/gpu/drm/xen/xen_drm_front.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xen/xen_drm_front.c b/drivers/gpu/drm/xen/xen_drm_front.c
index cc93a8c9547b..8ea91542b567 100644
--- a/drivers/gpu/drm/xen/xen_drm_front.c
+++ b/drivers/gpu/drm/xen/xen_drm_front.c
@@ -531,7 +531,7 @@ static int xen_drm_drv_init(struct xen_drm_front_info *front_info)
 	drm_dev = drm_dev_alloc(&xen_drm_driver, dev);
 	if (IS_ERR(drm_dev)) {
 		ret = PTR_ERR(drm_dev);
-		goto fail;
+		goto fail_dev;
 	}
 
 	drm_info->drm_dev = drm_dev;
@@ -561,8 +561,10 @@ static int xen_drm_drv_init(struct xen_drm_front_info *front_info)
 	drm_kms_helper_poll_fini(drm_dev);
 	drm_mode_config_cleanup(drm_dev);
 	drm_dev_put(drm_dev);
-fail:
+fail_dev:
 	kfree(drm_info);
+	front_info->drm_info = NULL;
+fail:
 	return ret;
 }
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 16:29:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 16:29:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109377.208803 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVzQo-0004eY-Nw; Mon, 12 Apr 2021 16:28:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109377.208803; Mon, 12 Apr 2021 16: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 1lVzQo-0004eR-Kx; Mon, 12 Apr 2021 16:28:58 +0000
Received: by outflank-mailman (input) for mailman id 109377;
 Mon, 12 Apr 2021 16:28:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lZ2i=JJ=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lVzQm-0004eK-RO
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 16:28:57 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com (unknown
 [40.107.8.51]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cc62adc4-f9d1-4325-9c3b-d31ea76b1aa2;
 Mon, 12 Apr 2021 16:28:55 +0000 (UTC)
Received: from AM6P193CA0069.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:8e::46)
 by AS8PR08MB6119.eurprd08.prod.outlook.com (2603:10a6:20b:290::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Mon, 12 Apr
 2021 16:28:53 +0000
Received: from VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8e:cafe::f) by AM6P193CA0069.outlook.office365.com
 (2603:10a6:209:8e::46) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Mon, 12 Apr 2021 16:28:53 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT042.mail.protection.outlook.com (10.152.19.62) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Mon, 12 Apr 2021 16:28:52 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Mon, 12 Apr 2021 16:28:52 +0000
Received: from 98de283a11e7.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 832AFEE4-FE04-4910-8725-E76F631CE9A9.1; 
 Mon, 12 Apr 2021 16:28:46 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 98de283a11e7.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 12 Apr 2021 16:28:46 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DBBPR08MB4869.eurprd08.prod.outlook.com (2603:10a6:10:de::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Mon, 12 Apr
 2021 16:28:44 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 16:28: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: cc62adc4-f9d1-4325-9c3b-d31ea76b1aa2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YipUttlAOFA2oUKXqGf7GbV9EnkRQ3SUSi+X7cnT3vI=;
 b=vdhMkDo3QK+x+ElgKKs2JyF/l8+EtJp2FlckqRSlQ7pPHFq1xBt1MYHrUVVXJF9HwTfUERbxIEKJ4F2ufn33yISbnuH2A802Lsbt63jxLhUwm7uyUcXZQY+7jW/ap4EKiuRv8sXMbkVevdW4Lv+vkH0vs2zd7g38JDtlGuPtLXc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: f8ce57097f3e9b8a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lbTBf3vVcssF8NDrah3AgFJTYyq6QSqrm9PLEZ0RdfWbIK+2rlnRHSFsoCWVfxbMbpVmKeoW8BkMQPF5qpqWgqo1NIyvige9y3edOrTL9dgV+1ZU4zM4nLLTDLKCQUN4y3B0OzCjPmAzH1X4WSKALSyf9AXANtNPAycM8wJX8MzAPHZglxE0mNX+Q+noWghhe8nwcutdoKJESWuDX7ZQcHjUtXf/QFzYyGhlpQ9vk06PF9oUO9S4v8GOlEKrdTI91qcebyw3nZVS9n1hr+qwhTK8wNEQl09jtKnZ9KIa2GLFg1mZ2h0M6ejP8DkgjgMtAbB79ube84INvNO/EA2GqQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YipUttlAOFA2oUKXqGf7GbV9EnkRQ3SUSi+X7cnT3vI=;
 b=gbD8o7WWnYl/J7FvP0qN4BkIDvexkfn3J36JCu60Xp2DhSpBBNcxUcUYBudt1hZPxpwa9tQPdBKb2+AVuJzQqWB18IdiwKm5Ylk2iDu3tfyCndWtFZ+QnJzT0xh6wNb0NdJLMiKc+Quo1Y+nr/1IQ2f92jHljFYez3VfP7roh0wrYMeMleWxMdyAxurZrCtUoZU2VL2x9KF6KryXem+Hw8I1B/esOnUDA5C6qeva00QV1MuHW4D9Ou1eEdmf3UdDhSkABkgBbRTU4m52wlJQstRg9/Gf69SU9/6Huo3lC8/G8K5E1gN/GPUGPT4O0T3CLseFeEoCq0ebxVSTlQtXuQ==
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=YipUttlAOFA2oUKXqGf7GbV9EnkRQ3SUSi+X7cnT3vI=;
 b=vdhMkDo3QK+x+ElgKKs2JyF/l8+EtJp2FlckqRSlQ7pPHFq1xBt1MYHrUVVXJF9HwTfUERbxIEKJ4F2ufn33yISbnuH2A802Lsbt63jxLhUwm7uyUcXZQY+7jW/ap4EKiuRv8sXMbkVevdW4Lv+vkH0vs2zd7g38JDtlGuPtLXc=
From: Rahul Singh <Rahul.Singh@arm.com>
To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
CC: xen-devel <xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@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>, Paul Durrant
	<paul@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Daniel De
 Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Topic: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Index: AQHXLVmJnBz/2T+xZEqfD4R39q2wV6qwuDwAgABe4AA=
Date: Mon, 12 Apr 2021 16:28:44 +0000
Message-ID: <7E269A31-FB83-4E85-943A-0E4763AA8EB6@arm.com>
References:
 <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
In-Reply-To: <YHQlptvoC06rqNhQ@Air-de-Roger>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 480e572f-fe88-4d96-0042-08d8fdd00fa0
x-ms-traffictypediagnostic: DBBPR08MB4869:|AS8PR08MB6119:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AS8PR08MB6119191A98FC18DF5C5189CEFC709@AS8PR08MB6119.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:8882;OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 +dIwapeJnDrTo3WxFtGDZ9QoBuHSDltXbhxGO+L8UYcjK89vxhZeW07rUhLlK7uiYMwxQff8bSIvLoufhvzl4UbgNq7Y993AYhkA7znoGZ7ibtex3fxgsnLl2aUWyRMChdj8GSnx3VoJgBIqbhdzrULeklLDQchEo99FO9At5Q2w0sxd/iPMWoHjXvC5h0rjakqAdIQ6xQZtZvI8ZhJ3+Y5d0C43UG+LRGR3ZRwpfH+8KdGL1Tc6lK7WmewhLgoEPRmzFhKsMBtzMiDMWaulIbQ3EE9H09TberlWm5O+Z0UkKxIGiPJs0x5ovea3yFrW+nac94DvkXEORuw6fxeoCWYV4YZkpwvkhOlrEH8L6POM4golHW/7HoClaBy8wuve59kca2TvhoQapcQFayiaG9V04t8PPDVW6bI7Xl2r3Fqx1YZEldEyrUaofKlq9RI3CseN5LnoRdS1W1voCe+V2VcIQ43OZDuLTi18KD39iBq3oDvYk0Dbi3NbRQde1dwhXlm+qxNhkqTgQWJWs5dwFVJqmIaWjETb5EHEXCqzpM1b/YkcZMiyXFwkOeu3UXSXmA0Jr5VWy/NTb6lcw19O3+I3W9Z7/cPPO1SmhlJPRqbEjkEmEhzIegHLMwIpUcm1gHdqrkt9YqT673OUrfOCmQIhDJwpID17+NXEomZifTWFk0c6M5Gb18BNX+f1KYw5V0X7fSnEp9592+3lpMWHm7GQr/zE7+wxygnesGJXgoFAh99wNqNQ2Y6dbp1LcZK/3uDNiVftHBcQVOnPL88RTw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(376002)(39860400002)(396003)(366004)(136003)(36756003)(83380400001)(91956017)(66556008)(54906003)(66446008)(6486002)(2616005)(30864003)(186003)(64756008)(2906002)(66476007)(6506007)(66946007)(86362001)(478600001)(316002)(38100700002)(76116006)(33656002)(6916009)(8936002)(53546011)(4326008)(6512007)(5660300002)(7416002)(26005)(71200400001)(8676002)(2004002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
 =?utf-8?Q?e2PwuN/V7alEdOv2zapZeIQ0S2I3XvNGwM8pt7O?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <C8C12D582B1372459B1EBF9AD8186F90@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4869
Original-Authentication-Results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	045b53fe-3f9a-4402-e37a-08d8fdd00aa3
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	b6xvehXrHEMIbz2Q1RL790Gvp6LP3gVglZ7vtTrX+4f1aXSgJE9wKNX1B31Gj6x6HshvXumDKTGKowjMckXufqUE3ygGCtOO/56ocoF25tlUVLC2Sh1dNKVR/xozNzpaIyIvFgaZUE8qYrY0echlqo2qRP3Sav3jAqocc07PXQdM8gXyjIEO1laVMzpSBphNVxOYSmzJUfAp6feKo71/UTbPkEzNkPNSlA0sqYfgnBIVsIeVMFN1Kz5dpgfpedmW7uu+0e9HJVsY8ydmwRDJQPPJmUKc8iUd7J6NqumOWO2bVCBGMujZZssOjp3TLleB5T/1faZUKnUWoqrtfS11jp7qk5pNYK6Bsr3+vlfa1elo/WG10FjBO61f2HZnbc+WH1bz0Rmr2oFdQcIxZy+hACxc+eq2cRO2bgbIEEY7ITsHOFSFP954JBpnoYsJhjnc5W/1iZQuDzsV4j2wM52cp4K66/3VE7YgBbtpvZK6oqQ2CFcNLeraiYmF93avTG37wE0rKiCK385Ak8ny67EQDUPR4aKkGmRAppY5kkNAAmm7roFOHQ7Hmi19udd6V0ya9e/L81ajD4Y4WvEF3YEuyIVA4JLkW8rLW9MYU88/RM/CapUeZDOamijb6jcgooq/2QFNwlN68/QSz1nWMcBE06J1oeMfiV5z/KXgp1gajBV2bC3jLyCtu5/wvU6XqywGyPdT0iJPQyDnR/8zgdvF8mmNnUQL7+0sFSvtbV1YzMU25O5y0EqchoHE/6AtKe1T
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:(4636009)(396003)(136003)(376002)(39860400002)(346002)(46966006)(36840700001)(4326008)(82740400003)(30864003)(70586007)(70206006)(6506007)(186003)(316002)(47076005)(26005)(6862004)(5660300002)(6486002)(8936002)(54906003)(83380400001)(478600001)(356005)(336012)(36860700001)(8676002)(86362001)(82310400003)(33656002)(2906002)(2616005)(53546011)(81166007)(6512007)(36756003)(2004002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 16:28:52.8374
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 480e572f-fe88-4d96-0042-08d8fdd00fa0
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:
	VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6119

SGkgUm9nZXIsDQoNCj4gT24gMTIgQXByIDIwMjEsIGF0IDExOjQ5IGFtLCBSb2dlciBQYXUgTW9u
bsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4gd3JvdGU6DQo+IA0KPiBPbiBGcmksIEFwciAwOSwg
MjAyMSBhdCAwNTowMDo0MVBNICswMTAwLCBSYWh1bCBTaW5naCB3cm90ZToNCj4+IE1TSSByZWxh
dGVkIGNvZGUgaW4gdGhlICJwYXNzdGhyb3VnaC9wY2kuY+KAnSBmaWxlIGlzIG5vdCB1c2VmdWwg
Zm9yIEFSTQ0KPj4gd2hlbiBNU0kgaW50ZXJydXB0cyBhcmUgaW5qZWN0ZWQgdmlhIEdJQ3YzIElU
Uy4NCj4+IA0KPj4gVGhlcmVmb3JlIGludHJvZHVjaW5nIHRoZSBuZXcgZmxhZyBDT05GSUdfUENJ
X01TSV9JTlRFUkNFUFQgdG8gZ2F0ZSB0aGUNCj4+IE1TSSBjb2RlIGZvciBBUk0gaW4gY29tbW9u
IGNvZGUuIEFsc28gbW92ZSB0aGUgYXJjaC1zcGVjaWZpYyBjb2RlIHRvIGFuDQo+PiBhcmNoLXNw
ZWNpZmljIGRpcmVjdG9yeSBhbmQgaW1wbGVtZW50IHRoZSBzdHViIHZlcnNpb24gZm9yIHRoZSB1
bnVzZWQNCj4+IGNvZGUgZm9yIEFSTSB0byBhdm9pZCBjb21waWxhdGlvbiBlcnJvciB3aGVuIEhB
U19QQ0kgaXMgZW5hYmxlZCBmb3IgQVJNLg0KPj4gDQo+PiBTaWduZWQtb2ZmLWJ5OiBSYWh1bCBT
aW5naCA8cmFodWwuc2luZ2hAYXJtLmNvbT4NCj4+IC0tLQ0KPj4gQ2hhbmdlcyBzaW5jZSB2MToN
Cj4+IC0gUmVuYW1lIENPTkZJR19IQVNfUENJX01TSSB0byBDT05GSUdfUENJX01TSV9JTlRFUkNF
UFQNCj4+IC0gSW1wbGVtZW50IHN0dWIgdmVyc2lvbiBvZiB0aGUgdW51c2VkIGZ1bmN0aW9uIGZv
ciBBUk0uDQo+PiAtIE1vdmUgdW5uZWVkZWQgZnVuY3Rpb24gdG8geDg2IGZpbGUuICAgICANCj4+
IC0tLQ0KPj4geGVuL2FyY2gveDg2L21zaS5jICAgICAgICAgICAgfCA2NCArKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKw0KPj4geGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMg
fCA1MSArKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+PiB4ZW4vZHJpdmVycy9wY2kvS2Nv
bmZpZyAgICAgICB8ICA0ICsrKw0KPj4geGVuL2RyaXZlcnMvdnBjaS9NYWtlZmlsZSAgICAgfCAg
MyArLQ0KPj4geGVuL2RyaXZlcnMvdnBjaS9oZWFkZXIuYyAgICAgfCAxOSArKystLS0tLS0tLQ0K
Pj4geGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMgICAgICAgfCAyNSArKysrKysrKysrKysrKw0KPj4g
eGVuL2RyaXZlcnMvdnBjaS92cGNpLmMgICAgICAgfCAgMyArLQ0KPj4geGVuL2luY2x1ZGUvYXNt
LWFybS9tc2kuaCAgICAgfCA0NCArKysrKysrKysrKysrKysrKysrKysrKysNCj4+IHhlbi9pbmNs
dWRlL2FzbS14ODYvbXNpLmggICAgIHwgIDQgKysrDQo+PiB4ZW4vaW5jbHVkZS94ZW4vcGNpLmgg
ICAgICAgICB8IDExICsrKy0tLQ0KPj4geGVuL2luY2x1ZGUveGVuL3ZwY2kuaCAgICAgICAgfCAy
NCArKysrKysrKysrKystDQo+PiB4ZW4veHNtL2ZsYXNrL2hvb2tzLmMgICAgICAgICB8ICA4ICsr
LS0tDQo+PiAxMiBmaWxlcyBjaGFuZ2VkLCAxOTUgaW5zZXJ0aW9ucygrKSwgNjUgZGVsZXRpb25z
KC0pDQo+PiBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2luY2x1ZGUvYXNtLWFybS9tc2kuaA0KPj4g
DQo+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21zaS5jIGIveGVuL2FyY2gveDg2L21zaS5j
DQo+PiBpbmRleCA1ZmViYzBlYTRiLi5hNjM1NmY0YTYzIDEwMDY0NA0KPj4gLS0tIGEveGVuL2Fy
Y2gveDg2L21zaS5jDQo+PiArKysgYi94ZW4vYXJjaC94ODYvbXNpLmMNCj4+IEBAIC0xNDExLDYg
KzE0MTEsNzAgQEAgdm9pZCBfX2luaXQgZWFybHlfbXNpX2luaXQodm9pZCkNCj4+ICAgICAgICAg
cmV0dXJuOw0KPj4gfQ0KPj4gDQo+PiAraW50IGFsbG9jX3BjaV9tc2koc3RydWN0IHBjaV9kZXYg
KnBkZXYpDQo+IA0KPiBJIHdvdWxkIHJhdGhlciBuYW1lIGl0IHBjaV9tc2lfaW5pdC4uLg0KPiAN
Cj4+ICt7DQo+PiArICAgIHVuc2lnbmVkIGludCBwb3M7DQo+PiArDQo+PiArICAgIElOSVRfTElT
VF9IRUFEKCZwZGV2LT5tc2lfbGlzdCk7DQo+PiArDQo+PiArICAgIHBvcyA9IHBjaV9maW5kX2Nh
cF9vZmZzZXQocGRldi0+c2VnLCBwZGV2LT5idXMsIFBDSV9TTE9UKHBkZXYtPmRldmZuKSwNCj4+
ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQQ0lfRlVOQyhwZGV2LT5kZXZmbiksIFBD
SV9DQVBfSURfTVNJKTsNCj4+ICsgICAgaWYgKCBwb3MgKQ0KPj4gKyAgICB7DQo+PiArICAgICAg
ICB1aW50MTZfdCBjdHJsID0gcGNpX2NvbmZfcmVhZDE2KHBkZXYtPnNiZGYsIG1zaV9jb250cm9s
X3JlZyhwb3MpKTsNCj4+ICsNCj4+ICsgICAgICAgIHBkZXYtPm1zaV9tYXh2ZWMgPSBtdWx0aV9t
c2lfY2FwYWJsZShjdHJsKTsNCj4+ICsgICAgfQ0KPj4gKw0KPj4gKyAgICBwb3MgPSBwY2lfZmlu
ZF9jYXBfb2Zmc2V0KHBkZXYtPnNlZywgcGRldi0+YnVzLCBQQ0lfU0xPVChwZGV2LT5kZXZmbiks
DQo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUENJX0ZVTkMocGRldi0+ZGV2Zm4p
LCBQQ0lfQ0FQX0lEX01TSVgpOw0KPj4gKyAgICBpZiAoIHBvcyApDQo+PiArICAgIHsNCj4+ICsg
ICAgICAgIHN0cnVjdCBhcmNoX21zaXggKm1zaXggPSB4emFsbG9jKHN0cnVjdCBhcmNoX21zaXgp
Ow0KPj4gKyAgICAgICAgdWludDE2X3QgY3RybDsNCj4+ICsNCj4+ICsgICAgICAgIGlmICggIW1z
aXggKQ0KPj4gKyAgICAgICAgICAgIHJldHVybiAtRU5PTUVNOw0KPj4gKw0KPj4gKyAgICAgICAg
c3Bpbl9sb2NrX2luaXQoJm1zaXgtPnRhYmxlX2xvY2spOw0KPj4gKw0KPj4gKyAgICAgICAgY3Ry
bCA9IHBjaV9jb25mX3JlYWQxNihwZGV2LT5zYmRmLCBtc2l4X2NvbnRyb2xfcmVnKHBvcykpOw0K
Pj4gKyAgICAgICAgbXNpeC0+bnJfZW50cmllcyA9IG1zaXhfdGFibGVfc2l6ZShjdHJsKTsNCj4+
ICsNCj4+ICsgICAgICAgIHBkZXYtPm1zaXggPSBtc2l4Ow0KPj4gKyAgICB9DQo+PiArDQo+PiAr
ICAgIHJldHVybiAwOw0KPj4gK30NCj4+ICsNCj4+ICt2b2lkIGZyZWVfcGNpX21zaShzdHJ1Y3Qg
cGNpX2RldiAqcGRldikNCj4gDQo+IC4uLmFuZCBwY2lfbXNpX2ZyZWUuDQoNCk9rLiBJIHdpbGwg
Y2hhbmdlIHRoZSBuYW1lIGluIG5leHQgdmVyc2lvbi4gDQo+IA0KPj4gK3sNCj4+ICsgICAgeGZy
ZWUocGRldi0+bXNpeCk7DQo+PiArfQ0KPj4gKw0KPj4gK2ludCBwY2lfYXNzaWduX21zaXhfaW5p
dChzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4gDQo+IFRoaXMga2lu
ZCBvZiBhIGNvbmZ1c2luZyBuYW1lIC0gd2hhdCBhYm91dCBwY2lfbXNpeF9hc3NpZ24/DQoNCk9r
Lg0KPiANCj4+ICt7DQo+PiArICAgIGludCByYzsNCj4+ICsNCj4+ICsgICAgaWYgKCBwZGV2LT5t
c2l4ICkNCj4+ICsgICAgew0KPj4gKyAgICAgICAgcmMgPSBwY2lfcmVzZXRfbXNpeF9zdGF0ZShw
ZGV2KTsNCj4+ICsgICAgICAgIGlmICggcmMgKQ0KPj4gKyAgICAgICAgICAgIHJldHVybiByYzsN
Cj4+ICsgICAgICAgIG1zaXh0YmxfaW5pdChkKTsNCj4+ICsgICAgfQ0KPj4gKw0KPj4gKyAgICBy
ZXR1cm4gMDsNCj4+ICt9DQo+PiArDQo+PiArdm9pZCBkdW1wX3BjaV9tc2koc3RydWN0IHBjaV9k
ZXYgKnBkZXYpDQo+PiArew0KPj4gKyAgICBzdHJ1Y3QgbXNpX2Rlc2MgKm1zaTsNCj4+ICsNCj4+
ICsgICAgbGlzdF9mb3JfZWFjaF9lbnRyeSAoIG1zaSwgJnBkZXYtPm1zaV9saXN0LCBsaXN0ICkN
Cj4+ICsgICAgICAgIHByaW50aygiJWQgIiwgbXNpLT5pcnEpOw0KPj4gK30NCj4gDQo+IEkgd29u
ZGVyLCB0aG9zZSB0aG9zZSBmdW5jdGlvbiByZWFsbHkgd2FudCB0byBiZSBpbiBhIHg4NiBzcGVj
aWZpYw0KPiBmaWxlPyBUaGVyZSdzIG5vdGhpbmcgeDg2IHNwZWNpZmljIGFib3V0IHRoZW0gQUZB
SUNULg0KPiANCj4gV291bGQgaXQgbWFrZSBzZW5zZSB0byBjcmVhdGUgYSBzZXBhcmF0ZSBtc2kt
aW50ZXJjZXB0LmMgZmlsZSB3aXRoDQo+IHRob3NlIHRoYXQgZ2V0cyBpbmNsdWRlZCB3aGVuIENP
TkZJR19QQ0lfTVNJX0lOVEVSQ0VQVD8gDQoNClllcyB0aGF0IHdpbGwgYmUgZmluZSB0byBjcmVh
dGUgdGhlIHNlcGFyYXRlIGZpbGUgbXNpLWludGVyY2VwdC5jLg0KPiANCj4gDQo+PiBzdGF0aWMg
dm9pZCBkdW1wX21zaSh1bnNpZ25lZCBjaGFyIGtleSkNCj4+IHsNCj4+ICAgICB1bnNpZ25lZCBp
bnQgaXJxOw0KPj4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jIGIv
eGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCj4+IGluZGV4IDcwNTEzN2Y4YmUuLjFiNDcz
NTAyYTEgMTAwNjQ0DQo+PiAtLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYw0KPj4g
KysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCj4+IEBAIC0zMTQsNiArMzE0LDcg
QEAgc3RhdGljIHN0cnVjdCBwY2lfZGV2ICphbGxvY19wZGV2KHN0cnVjdCBwY2lfc2VnICpwc2Vn
LCB1OCBidXMsIHU4IGRldmZuKQ0KPj4gew0KPj4gICAgIHN0cnVjdCBwY2lfZGV2ICpwZGV2Ow0K
Pj4gICAgIHVuc2lnbmVkIGludCBwb3M7DQo+PiArICAgIGludCByYzsNCj4+IA0KPj4gICAgIGxp
c3RfZm9yX2VhY2hfZW50cnkgKCBwZGV2LCAmcHNlZy0+YWxsZGV2c19saXN0LCBhbGxkZXZzX2xp
c3QgKQ0KPj4gICAgICAgICBpZiAoIHBkZXYtPmJ1cyA9PSBidXMgJiYgcGRldi0+ZGV2Zm4gPT0g
ZGV2Zm4gKQ0KPj4gQEAgLTMyNywzNSArMzI4LDEyIEBAIHN0YXRpYyBzdHJ1Y3QgcGNpX2RldiAq
YWxsb2NfcGRldihzdHJ1Y3QgcGNpX3NlZyAqcHNlZywgdTggYnVzLCB1OCBkZXZmbikNCj4+ICAg
ICAqKCh1OCopICZwZGV2LT5idXMpID0gYnVzOw0KPj4gICAgICooKHU4KikgJnBkZXYtPmRldmZu
KSA9IGRldmZuOw0KPj4gICAgIHBkZXYtPmRvbWFpbiA9IE5VTEw7DQo+PiAtICAgIElOSVRfTElT
VF9IRUFEKCZwZGV2LT5tc2lfbGlzdCk7DQo+PiAtDQo+PiAtICAgIHBvcyA9IHBjaV9maW5kX2Nh
cF9vZmZzZXQocHNlZy0+bnIsIGJ1cywgUENJX1NMT1QoZGV2Zm4pLCBQQ0lfRlVOQyhkZXZmbiks
DQo+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUENJX0NBUF9JRF9NU0kpOw0KPj4g
LSAgICBpZiAoIHBvcyApDQo+PiAtICAgIHsNCj4+IC0gICAgICAgIHVpbnQxNl90IGN0cmwgPSBw
Y2lfY29uZl9yZWFkMTYocGRldi0+c2JkZiwgbXNpX2NvbnRyb2xfcmVnKHBvcykpOw0KPj4gLQ0K
Pj4gLSAgICAgICAgcGRldi0+bXNpX21heHZlYyA9IG11bHRpX21zaV9jYXBhYmxlKGN0cmwpOw0K
Pj4gLSAgICB9DQo+PiANCj4+IC0gICAgcG9zID0gcGNpX2ZpbmRfY2FwX29mZnNldChwc2VnLT5u
ciwgYnVzLCBQQ0lfU0xPVChkZXZmbiksIFBDSV9GVU5DKGRldmZuKSwNCj4+IC0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBQQ0lfQ0FQX0lEX01TSVgpOw0KPj4gLSAgICBpZiAoIHBvcyAp
DQo+PiArICAgIHJjID0gYWxsb2NfcGNpX21zaShwZGV2KTsNCj4+ICsgICAgaWYgKCByYyApDQo+
PiAgICAgew0KPj4gLSAgICAgICAgc3RydWN0IGFyY2hfbXNpeCAqbXNpeCA9IHh6YWxsb2Moc3Ry
dWN0IGFyY2hfbXNpeCk7DQo+PiAtICAgICAgICB1aW50MTZfdCBjdHJsOw0KPj4gLQ0KPj4gLSAg
ICAgICAgaWYgKCAhbXNpeCApDQo+PiAtICAgICAgICB7DQo+PiAtICAgICAgICAgICAgeGZyZWUo
cGRldik7DQo+PiAtICAgICAgICAgICAgcmV0dXJuIE5VTEw7DQo+PiAtICAgICAgICB9DQo+PiAt
ICAgICAgICBzcGluX2xvY2tfaW5pdCgmbXNpeC0+dGFibGVfbG9jayk7DQo+PiAtDQo+PiAtICAg
ICAgICBjdHJsID0gcGNpX2NvbmZfcmVhZDE2KHBkZXYtPnNiZGYsIG1zaXhfY29udHJvbF9yZWco
cG9zKSk7DQo+PiAtICAgICAgICBtc2l4LT5ucl9lbnRyaWVzID0gbXNpeF90YWJsZV9zaXplKGN0
cmwpOw0KPj4gLQ0KPj4gLSAgICAgICAgcGRldi0+bXNpeCA9IG1zaXg7DQo+PiArICAgICAgICB4
ZnJlZShwZGV2KTsNCj4+ICsgICAgICAgIHJldHVybiBOVUxMOw0KPj4gICAgIH0NCj4+IA0KPj4g
ICAgIGxpc3RfYWRkKCZwZGV2LT5hbGxkZXZzX2xpc3QsICZwc2VnLT5hbGxkZXZzX2xpc3QpOw0K
Pj4gQEAgLTQ0OSw3ICs0MjcsNyBAQCBzdGF0aWMgdm9pZCBmcmVlX3BkZXYoc3RydWN0IHBjaV9z
ZWcgKnBzZWcsIHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gICAgIH0NCj4+IA0KPj4gICAgIGxp
c3RfZGVsKCZwZGV2LT5hbGxkZXZzX2xpc3QpOw0KPj4gLSAgICB4ZnJlZShwZGV2LT5tc2l4KTsN
Cj4+ICsgICAgZnJlZV9wY2lfbXNpKHBkZXYpOw0KPj4gICAgIHhmcmVlKHBkZXYpOw0KPj4gfQ0K
Pj4gDQo+PiBAQCAtMTI3MSw3ICsxMjQ5LDYgQEAgYm9vbF90IHBjaWVfYWVyX2dldF9maXJtd2Fy
ZV9maXJzdChjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+IHN0YXRpYyBpbnQgX2R1bXBf
cGNpX2RldmljZXMoc3RydWN0IHBjaV9zZWcgKnBzZWcsIHZvaWQgKmFyZykNCj4+IHsNCj4+ICAg
ICBzdHJ1Y3QgcGNpX2RldiAqcGRldjsNCj4+IC0gICAgc3RydWN0IG1zaV9kZXNjICptc2k7DQo+
PiANCj4+ICAgICBwcmludGsoIj09PT0gc2VnbWVudCAlMDR4ID09PT1cbiIsIHBzZWctPm5yKTsN
Cj4+IA0KPj4gQEAgLTEyODAsOCArMTI1Nyw3IEBAIHN0YXRpYyBpbnQgX2R1bXBfcGNpX2Rldmlj
ZXMoc3RydWN0IHBjaV9zZWcgKnBzZWcsIHZvaWQgKmFyZykNCj4+ICAgICAgICAgcHJpbnRrKCIl
cHAgLSAlcGQgLSBub2RlICUtM2QgLSBNU0lzIDwgIiwNCj4+ICAgICAgICAgICAgICAgICZwZGV2
LT5zYmRmLCBwZGV2LT5kb21haW4sDQo+PiAgICAgICAgICAgICAgICAocGRldi0+bm9kZSAhPSBO
VU1BX05PX05PREUpID8gcGRldi0+bm9kZSA6IC0xKTsNCj4+IC0gICAgICAgIGxpc3RfZm9yX2Vh
Y2hfZW50cnkgKCBtc2ksICZwZGV2LT5tc2lfbGlzdCwgbGlzdCApDQo+PiAtICAgICAgICAgICAg
ICAgcHJpbnRrKCIlZCAiLCBtc2ktPmlycSk7DQo+PiArICAgICAgICBkdW1wX3BjaV9tc2kocGRl
dik7DQo+PiAgICAgICAgIHByaW50aygiPlxuIik7DQo+PiAgICAgfQ0KPj4gDQo+PiBAQCAtMTMw
MywxMiArMTI3OSwxNSBAQCBzdGF0aWMgaW50IF9faW5pdCBzZXR1cF9kdW1wX3BjaWRldnModm9p
ZCkNCj4+IH0NCj4+IF9faW5pdGNhbGwoc2V0dXBfZHVtcF9wY2lkZXZzKTsNCj4+IA0KPj4gKw0K
Pj4gKyNpZmRlZiBDT05GSUdfUENJX01TSV9JTlRFUkNFUFQNCj4+IGludCBpb21tdV91cGRhdGVf
aXJlX2Zyb21fbXNpKA0KPj4gICAgIHN0cnVjdCBtc2lfZGVzYyAqbXNpX2Rlc2MsIHN0cnVjdCBt
c2lfbXNnICptc2cpDQo+PiB7DQo+PiAgICAgcmV0dXJuIGlvbW11X2ludHJlbWFwDQo+PiAgICAg
ICAgICAgID8gaW9tbXVfY2FsbCgmaW9tbXVfb3BzLCB1cGRhdGVfaXJlX2Zyb21fbXNpLCBtc2lf
ZGVzYywgbXNnKSA6IDA7DQo+PiB9DQo+PiArI2VuZGlmDQo+IA0KPiBUaGlzIGlzIG5vdCBleGFj
dGx5IHJlbGF0ZWQgdG8gTVNJIGludGVyY2VwdHMsIHRoZSBJT01NVSBpbnRlcnJ1cHQNCj4gcmVt
YXBwaW5nIHRhYmxlIHdpbGwgYWxzbyBiZSB1c2VkIGZvciBpbnRlcnJ1cHQgZW50cmllcyBmb3Ig
ZGV2aWNlcw0KPiBiZWluZyB1c2VkIGJ5IFhlbiBkaXJlY3RseSwgd2hlcmUgbm8gaW50ZXJjZXB0
IGlzIHJlcXVpcmVkLg0KPiANCj4gQW5kIHRoZW4geW91IGFsc28gd2FudCB0byBnYXRlIHRoZSBo
b29rIGZyb20gaW9tbXVfb3BzIGl0c2VsZiB3aXRoDQo+IENPTkZJR19QQ0lfTVNJX0lOVEVSQ0VQ
VCwgaWYgd2Ugd2FudCB0byBnb3QgdGhpcyByb3V0ZS4NCg0KT2suIExldCBtZSBjaGVjayB0aGlz
IGFuZCBjb21lIGJhY2sgdG8geW91Lg0KPiANCj4+IA0KPj4gc3RhdGljIGludCBpb21tdV9hZGRf
ZGV2aWNlKHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gew0KPj4gQEAgLTE0MjksMTMgKzE0MDgs
OSBAQCBzdGF0aWMgaW50IGFzc2lnbl9kZXZpY2Uoc3RydWN0IGRvbWFpbiAqZCwgdTE2IHNlZywg
dTggYnVzLCB1OCBkZXZmbiwgdTMyIGZsYWcpDQo+PiAgICAgQVNTRVJUKHBkZXYgJiYgKHBkZXYt
PmRvbWFpbiA9PSBoYXJkd2FyZV9kb21haW4gfHwNCj4+ICAgICAgICAgICAgICAgICAgICAgcGRl
di0+ZG9tYWluID09IGRvbV9pbykpOw0KPj4gDQo+PiAtICAgIGlmICggcGRldi0+bXNpeCApDQo+
PiAtICAgIHsNCj4+IC0gICAgICAgIHJjID0gcGNpX3Jlc2V0X21zaXhfc3RhdGUocGRldik7DQo+
PiAtICAgICAgICBpZiAoIHJjICkNCj4+IC0gICAgICAgICAgICBnb3RvIGRvbmU7DQo+PiAtICAg
ICAgICBtc2l4dGJsX2luaXQoZCk7DQo+PiAtICAgIH0NCj4+ICsgICAgcmMgPSBwY2lfYXNzaWdu
X21zaXhfaW5pdChkLCBwZGV2KTsNCj4+ICsgICAgaWYgKCByYyApDQo+PiArICAgICAgICBnb3Rv
IGRvbmU7DQo+PiANCj4+ICAgICBwZGV2LT5mYXVsdC5jb3VudCA9IDA7DQo+PiANCj4+IGRpZmYg
LS1naXQgYS94ZW4vZHJpdmVycy9wY2kvS2NvbmZpZyBiL3hlbi9kcml2ZXJzL3BjaS9LY29uZmln
DQo+PiBpbmRleCA3ZGEwM2ZhMTNiLi43YWI5MmJkZTZlIDEwMDY0NA0KPj4gLS0tIGEveGVuL2Ry
aXZlcnMvcGNpL0tjb25maWcNCj4+ICsrKyBiL3hlbi9kcml2ZXJzL3BjaS9LY29uZmlnDQo+PiBA
QCAtMSwzICsxLDcgQEANCj4+IA0KPj4gY29uZmlnIEhBU19QQ0kNCj4+IAlib29sDQo+PiArDQo+
PiArY29uZmlnIFBDSV9NU0lfSU5URVJDRVBUDQo+PiArCWRlZl9ib29sIHkNCj4+ICsJZGVwZW5k
cyBvbiBYODYgJiYgSEFTX1BDSQ0KPj4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3ZwY2kvTWFr
ZWZpbGUgYi94ZW4vZHJpdmVycy92cGNpL01ha2VmaWxlDQo+PiBpbmRleCA1NWQxYmRmZGEwLi5m
OTFmYTcxYTQwIDEwMDY0NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvdnBjaS9NYWtlZmlsZQ0KPj4g
KysrIGIveGVuL2RyaXZlcnMvdnBjaS9NYWtlZmlsZQ0KPj4gQEAgLTEgKzEsMiBAQA0KPj4gLW9i
ai15ICs9IHZwY2kubyBoZWFkZXIubyBtc2kubyBtc2l4Lm8NCj4+ICtvYmoteSArPSB2cGNpLm8g
aGVhZGVyLm8NCj4+ICtvYmotJChDT05GSUdfUENJX01TSV9JTlRFUkNFUFQpICs9IG1zaS5vIG1z
aXgubw0KPj4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3ZwY2kvaGVhZGVyLmMgYi94ZW4vZHJp
dmVycy92cGNpL2hlYWRlci5jDQo+PiBpbmRleCBiYTlhMDM2MjAyLi5hNzY5NWEwZTJhIDEwMDY0
NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvdnBjaS9oZWFkZXIuYw0KPj4gKysrIGIveGVuL2RyaXZl
cnMvdnBjaS9oZWFkZXIuYw0KPj4gQEAgLTIwNiw3ICsyMDYsNiBAQCBzdGF0aWMgaW50IG1vZGlm
eV9iYXJzKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2LCB1aW50MTZfdCBjbWQsIGJvb2wgcm9t
X29ubHkpDQo+PiAgICAgc3RydWN0IHZwY2lfaGVhZGVyICpoZWFkZXIgPSAmcGRldi0+dnBjaS0+
aGVhZGVyOw0KPj4gICAgIHN0cnVjdCByYW5nZXNldCAqbWVtID0gcmFuZ2VzZXRfbmV3KE5VTEws
IE5VTEwsIDApOw0KPj4gICAgIHN0cnVjdCBwY2lfZGV2ICp0bXAsICpkZXYgPSBOVUxMOw0KPj4g
LSAgICBjb25zdCBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4ID0gcGRldi0+dnBjaS0+bXNpeDsNCj4+
ICAgICB1bnNpZ25lZCBpbnQgaTsNCj4+ICAgICBpbnQgcmM7DQo+PiANCj4+IEBAIC0yNDQsMjEg
KzI0MywxMSBAQCBzdGF0aWMgaW50IG1vZGlmeV9iYXJzKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpw
ZGV2LCB1aW50MTZfdCBjbWQsIGJvb2wgcm9tX29ubHkpDQo+PiAgICAgfQ0KPj4gDQo+PiAgICAg
LyogUmVtb3ZlIGFueSBNU0lYIHJlZ2lvbnMgaWYgcHJlc2VudC4gKi8NCj4+IC0gICAgZm9yICgg
aSA9IDA7IG1zaXggJiYgaSA8IEFSUkFZX1NJWkUobXNpeC0+dGFibGVzKTsgaSsrICkNCj4+ICsg
ICAgcmMgPSByZW1vdmVfbXNpeF9yZWdpb25zKHBkZXYsbWVtKTsNCj4gDQo+IENvZGluZyBzdHls
ZTogbWlzc2luZyBzcGFjZSBiZXR3ZWVuIHBhcmFtZXRlcnMuDQoNCkFjay4NCj4gDQo+PiArICAg
IGlmICggcmMgKQ0KPj4gICAgIHsNCj4+IC0gICAgICAgIHVuc2lnbmVkIGxvbmcgc3RhcnQgPSBQ
Rk5fRE9XTih2bXNpeF90YWJsZV9hZGRyKHBkZXYtPnZwY2ksIGkpKTsNCj4+IC0gICAgICAgIHVu
c2lnbmVkIGxvbmcgZW5kID0gUEZOX0RPV04odm1zaXhfdGFibGVfYWRkcihwZGV2LT52cGNpLCBp
KSArDQo+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZtc2l4X3RhYmxl
X3NpemUocGRldi0+dnBjaSwgaSkgLSAxKTsNCj4+IC0NCj4+IC0gICAgICAgIHJjID0gcmFuZ2Vz
ZXRfcmVtb3ZlX3JhbmdlKG1lbSwgc3RhcnQsIGVuZCk7DQo+PiAtICAgICAgICBpZiAoIHJjICkN
Cj4+IC0gICAgICAgIHsNCj4+IC0gICAgICAgICAgICBwcmludGsoWEVOTE9HX0dfV0FSTklORw0K
Pj4gLSAgICAgICAgICAgICAgICAgICAiRmFpbGVkIHRvIHJlbW92ZSBNU0lYIHRhYmxlIFslbHgs
ICVseF06ICVkXG4iLA0KPj4gLSAgICAgICAgICAgICAgICAgICBzdGFydCwgZW5kLCByYyk7DQo+
PiAtICAgICAgICAgICAgcmFuZ2VzZXRfZGVzdHJveShtZW0pOw0KPj4gLSAgICAgICAgICAgIHJl
dHVybiByYzsNCj4+IC0gICAgICAgIH0NCj4+ICsgICAgICAgIHJhbmdlc2V0X2Rlc3Ryb3kobWVt
KTsNCj4+ICsgICAgICAgIHJldHVybiByYzsNCj4+ICAgICB9DQo+PiANCj4+ICAgICAvKg0KPj4g
ZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3ZwY2kvbXNpeC5jIGIveGVuL2RyaXZlcnMvdnBjaS9t
c2l4LmMNCj4+IGluZGV4IDg0NmYxYjhkNzAuLmNhMGE5YjU2NjUgMTAwNjQ0DQo+PiAtLS0gYS94
ZW4vZHJpdmVycy92cGNpL21zaXguYw0KPj4gKysrIGIveGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMN
Cj4+IEBAIC00MjgsNiArNDI4LDMxIEBAIGludCB2cGNpX21ha2VfbXNpeF9ob2xlKGNvbnN0IHN0
cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gICAgIHJldHVybiAwOw0KPj4gfQ0KPj4gDQo+PiAraW50
IHJlbW92ZV9tc2l4X3JlZ2lvbnMoY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsIHN0cnVjdCBy
YW5nZXNldCAqbWVtKQ0KPiANCj4gVGhpcyBuZWVkcyB0byBzdGFydCB3aXRoIGEgdnBjaV8gcHJl
Zml4LCBzaW5jZSBpdCdzIGEgZ2xvYmFsIGZ1bmN0aW9uLg0KPiBXaGF0IGFib3V0IHZwY2lfbXNp
eF9yZW1vdmVfcmVnaW9ucy4NCg0KT2suDQo+IA0KPj4gK3sNCj4+ICsgICAgY29uc3Qgc3RydWN0
IHZwY2lfbXNpeCAqbXNpeCA9IHBkZXYtPnZwY2ktPm1zaXg7DQo+PiArICAgIHVuc2lnbmVkIGlu
dCBpOw0KPj4gKyAgICBpbnQgcmM7DQo+PiArDQo+PiArICAgIGZvciAoIGkgPSAwOyBtc2l4ICYm
IGkgPCBBUlJBWV9TSVpFKG1zaXgtPnRhYmxlcyk7IGkrKyApDQo+PiArICAgIHsNCj4+ICsgICAg
ICAgIHVuc2lnbmVkIGxvbmcgc3RhcnQgPSBQRk5fRE9XTih2bXNpeF90YWJsZV9hZGRyKHBkZXYt
PnZwY2ksIGkpKTsNCj4+ICsgICAgICAgIHVuc2lnbmVkIGxvbmcgZW5kID0gUEZOX0RPV04odm1z
aXhfdGFibGVfYWRkcihwZGV2LT52cGNpLCBpKSArDQo+PiArICAgICAgICAgICAgICAgIHZtc2l4
X3RhYmxlX3NpemUocGRldi0+dnBjaSwgaSkgLSAxKTsNCj4+ICsNCj4+ICsgICAgICAgIHJjID0g
cmFuZ2VzZXRfcmVtb3ZlX3JhbmdlKG1lbSwgc3RhcnQsIGVuZCk7DQo+PiArICAgICAgICBpZiAo
IHJjICkNCj4+ICsgICAgICAgIHsNCj4+ICsgICAgICAgICAgICBwcmludGsoWEVOTE9HX0dfV0FS
TklORw0KPj4gKyAgICAgICAgICAgICAgICAgICAgIkZhaWxlZCB0byByZW1vdmUgTVNJWCB0YWJs
ZSBbJWx4LCAlbHhdOiAlZFxuIiwNCj4+ICsgICAgICAgICAgICAgICAgICAgIHN0YXJ0LCBlbmQs
IHJjKTsNCj4+ICsgICAgICAgICAgICByZXR1cm4gcmM7DQo+PiArICAgICAgICB9DQo+PiArICAg
IH0NCj4+ICsNCj4+ICsgICAgcmV0dXJuIDA7DQo+PiArfQ0KPj4gKw0KPj4gc3RhdGljIGludCBp
bml0X21zaXgoc3RydWN0IHBjaV9kZXYgKnBkZXYpDQo+PiB7DQo+PiAgICAgc3RydWN0IGRvbWFp
biAqZCA9IHBkZXYtPmRvbWFpbjsNCj4+IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy92cGNpL3Zw
Y2kuYyBiL3hlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jDQo+PiBpbmRleCBjYmQxYmFjN2ZjLi5lYmU0
MGIwNTM4IDEwMDY0NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvdnBjaS92cGNpLmMNCj4+ICsrKyBi
L3hlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jDQo+PiBAQCAtNDgsOCArNDgsNyBAQCB2b2lkIHZwY2lf
cmVtb3ZlX2RldmljZShzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+ICAgICAgICAgeGZyZWUocik7
DQo+PiAgICAgfQ0KPj4gICAgIHNwaW5fdW5sb2NrKCZwZGV2LT52cGNpLT5sb2NrKTsNCj4+IC0g
ICAgeGZyZWUocGRldi0+dnBjaS0+bXNpeCk7DQo+PiAtICAgIHhmcmVlKHBkZXYtPnZwY2ktPm1z
aSk7DQo+PiArICAgIGZyZWVfdnBjaV9tc2kocGRldik7DQo+PiAgICAgeGZyZWUocGRldi0+dnBj
aSk7DQo+PiAgICAgcGRldi0+dnBjaSA9IE5VTEw7DQo+PiB9DQo+PiBkaWZmIC0tZ2l0IGEveGVu
L2luY2x1ZGUvYXNtLWFybS9tc2kuaCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vbXNpLmgNCj4+IG5l
dyBmaWxlIG1vZGUgMTAwNjQ0DQo+PiBpbmRleCAwMDAwMDAwMDAwLi5jNTQxOTMzMTBlDQo+PiAt
LS0gL2Rldi9udWxsDQo+PiArKysgYi94ZW4vaW5jbHVkZS9hc20tYXJtL21zaS5oDQo+PiBAQCAt
MCwwICsxLDQ0IEBADQo+PiArLyoNCj4+ICsgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXJtIEx0ZC4N
Cj4+ICsgKg0KPj4gKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl
ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQo+PiArICogaXQgdW5kZXIgdGhlIHRlcm1zIG9m
IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgYXMNCj4+ICsgKiBwdWJs
aXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4NCj4+ICsgKg0KPj4gKyAqIFRo
aXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl
ZnVsLA0KPj4gKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp
bXBsaWVkIHdhcnJhbnR5IG9mDQo+PiArICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KPj4gKyAqIEdOVSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQo+PiArICoNCj4+ICsgKiBZb3Ugc2hvdWxkIGhh
dmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KPj4g
KyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251
Lm9yZy9saWNlbnNlcy8+Lg0KPj4gKyAqLw0KPj4gKw0KPj4gKyNpZm5kZWYgX19BU01fTVNJX0hf
DQo+PiArI2RlZmluZSBfX0FTTV9NU0lfSF8NCj4+ICsNCj4+ICtzdGF0aWMgaW5saW5lIGludCBh
bGxvY19wY2lfbXNpKHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gK3sNCj4+ICsgICAgcmV0dXJu
IDA7DQo+PiArfQ0KPj4gKw0KPj4gK3N0YXRpYyBpbmxpbmUgaW50IHBjaV9hc3NpZ25fbXNpeF9p
bml0KHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gK3sNCj4+ICsg
ICAgcmV0dXJuIDA7DQo+PiArfQ0KPj4gKw0KPj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBkdW1wX3Bj
aV9tc2koc3RydWN0IHBjaV9kZXYgKnBkZXYpIHt9DQo+PiArc3RhdGljIGlubGluZSB2b2lkIGZy
ZWVfcGNpX21zaShzdHJ1Y3QgcGNpX2RldiAqcGRldikge30NCj4+ICtzdGF0aWMgaW5saW5lIHZv
aWQgcGNpX2NsZWFudXBfbXNpKHN0cnVjdCBwY2lfZGV2ICpwZGV2KSB7fQ0KPj4gKw0KPj4gKyNl
bmRpZiAvKiBfX0FTTV9NU0lfSCAqLw0KPj4gKw0KPj4gKy8qDQo+PiArICogTG9jYWwgdmFyaWFi
bGVzOg0KPj4gKyAqIG1vZGU6IEMNCj4+ICsgKiBjLWZpbGUtc3R5bGU6ICJCU0QiDQo+PiArICog
Yy1iYXNpYy1vZmZzZXQ6IDQNCj4+ICsgKiB0YWItd2lkdGg6IDQNCj4+ICsgKiBpbmRlbnQtdGFi
cy1tb2RlOiBuaWwNCj4+ICsgKiBFbmQ6DQo+PiArICovDQo+IA0KPiBTaG91bGQgeW91IGluc3Rl
YWQgaGF2ZSBhIG5vbi1hcmNoIHNwZWNpZmljIGZpbGUgd2l0aCB0aG9zZSBkdW1teQ0KPiBoZWxw
ZXJzIHRoYXQgZ2V0IHVzZWQgd2hlbiAhQ09ORklHX1BDSV9NU0lfSU5URVJDRVBUPw0KDQpPay4N
Cj4gDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9tc2kuaCBiL3hlbi9pbmNs
dWRlL2FzbS14ODYvbXNpLmgNCj4+IGluZGV4IGUyMjhiMGYzZjMuLjdlZjAxNjFiNjcgMTAwNjQ0
DQo+PiAtLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L21zaS5oDQo+PiArKysgYi94ZW4vaW5jbHVk
ZS9hc20teDg2L21zaS5oDQo+PiBAQCAtMjUyLDUgKzI1Miw5IEBAIHZvaWQgdW5tYXNrX21zaV9p
cnEoc3RydWN0IGlycV9kZXNjICopOw0KPj4gdm9pZCBndWVzdF9tYXNrX21zaV9pcnEoc3RydWN0
IGlycV9kZXNjICosIGJvb2wgbWFzayk7DQo+PiB2b2lkIGFja19ub25tYXNrYWJsZV9tc2lfaXJx
KHN0cnVjdCBpcnFfZGVzYyAqKTsNCj4+IHZvaWQgc2V0X21zaV9hZmZpbml0eShzdHJ1Y3QgaXJx
X2Rlc2MgKiwgY29uc3QgY3B1bWFza190ICopOw0KPj4gK2ludCBhbGxvY19wY2lfbXNpKHN0cnVj
dCBwY2lfZGV2ICpwZGV2KTsNCj4+ICt2b2lkIGZyZWVfcGNpX21zaShzdHJ1Y3QgcGNpX2RldiAq
cGRldik7DQo+PiArdm9pZCBkdW1wX3BjaV9tc2koc3RydWN0IHBjaV9kZXYgKnBkZXYpOw0KPj4g
K2ludCBwY2lfYXNzaWduX21zaXhfaW5pdChzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcGNpX2Rl
diAqcGRldik7DQo+PiANCj4+ICNlbmRpZiAvKiBfX0FTTV9NU0lfSCAqLw0KPj4gZGlmZiAtLWdp
dCBhL3hlbi9pbmNsdWRlL3hlbi9wY2kuaCBiL3hlbi9pbmNsdWRlL3hlbi9wY2kuaA0KPj4gaW5k
ZXggOGUzZDRkOTQ1NC4uZjViNTcyNzBiZSAxMDA2NDQNCj4+IC0tLSBhL3hlbi9pbmNsdWRlL3hl
bi9wY2kuaA0KPj4gKysrIGIveGVuL2luY2x1ZGUveGVuL3BjaS5oDQo+PiBAQCAtNzksMTAgKzc5
LDYgQEAgc3RydWN0IHBjaV9kZXYgew0KPj4gICAgIHN0cnVjdCBsaXN0X2hlYWQgYWxsZGV2c19s
aXN0Ow0KPj4gICAgIHN0cnVjdCBsaXN0X2hlYWQgZG9tYWluX2xpc3Q7DQo+PiANCj4+IC0gICAg
c3RydWN0IGxpc3RfaGVhZCBtc2lfbGlzdDsNCj4+IC0NCj4+IC0gICAgc3RydWN0IGFyY2hfbXNp
eCAqbXNpeDsNCj4+IC0NCj4+ICAgICBzdHJ1Y3QgZG9tYWluICpkb21haW47DQo+PiANCj4+ICAg
ICBjb25zdCB1bmlvbiB7DQo+PiBAQCAtOTQsNyArOTAsMTQgQEAgc3RydWN0IHBjaV9kZXYgew0K
Pj4gICAgICAgICBwY2lfc2JkZl90IHNiZGY7DQo+PiAgICAgfTsNCj4+IA0KPj4gKyNpZmRlZiBD
T05GSUdfUENJX01TSV9JTlRFUkNFUFQNCj4+ICsgICAgc3RydWN0IGxpc3RfaGVhZCBtc2lfbGlz
dDsNCj4+ICsNCj4+ICsgICAgc3RydWN0IGFyY2hfbXNpeCAqbXNpeDsNCj4+ICsNCj4+ICAgICB1
aW50OF90IG1zaV9tYXh2ZWM7DQo+PiArI2VuZGlmDQo+PiArDQo+PiAgICAgdWludDhfdCBwaGFu
dG9tX3N0cmlkZTsNCj4+IA0KPj4gICAgIG5vZGVpZF90IG5vZGU7IC8qIE5VTUEgbm9kZSAqLw0K
Pj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi92cGNpLmggYi94ZW4vaW5jbHVkZS94ZW4v
dnBjaS5oDQo+PiBpbmRleCA5ZjViNWQ1MmUxLi5hNmIxMjcxN2IxIDEwMDY0NA0KPj4gLS0tIGEv
eGVuL2luY2x1ZGUveGVuL3ZwY2kuaA0KPj4gKysrIGIveGVuL2luY2x1ZGUveGVuL3ZwY2kuaA0K
Pj4gQEAgLTkxLDYgKzkxLDcgQEAgc3RydWN0IHZwY2kgew0KPj4gICAgICAgICAvKiBGSVhNRTog
Y3VycmVudGx5IHRoZXJlJ3Mgbm8gc3VwcG9ydCBmb3IgU1ItSU9WLiAqLw0KPj4gICAgIH0gaGVh
ZGVyOw0KPj4gDQo+PiArI2lmZGVmIENPTkZJR19QQ0lfTVNJX0lOVEVSQ0VQVA0KPj4gICAgIC8q
IE1TSSBkYXRhLiAqLw0KPj4gICAgIHN0cnVjdCB2cGNpX21zaSB7DQo+PiAgICAgICAvKiBBZGRy
ZXNzLiAqLw0KPj4gQEAgLTEzNiw2ICsxMzcsNyBAQCBzdHJ1Y3QgdnBjaSB7DQo+PiAgICAgICAg
ICAgICBzdHJ1Y3QgdnBjaV9hcmNoX21zaXhfZW50cnkgYXJjaDsNCj4+ICAgICAgICAgfSBlbnRy
aWVzW107DQo+PiAgICAgfSAqbXNpeDsNCj4+ICsjZW5kaWYgLyogQ09ORklHX1BDSV9NU0lfSU5U
RVJDRVBUICovDQo+IA0KPiBOb3RlIHRoYXQgaGVyZSB5b3UganVzdCByZW1vdmUgdHdvIHBvaW50
ZXJzIGZyb20gdGhlIHN0cnVjdCwgbm90IHRoYXQNCj4gSSdtIG9wcG9zZWQgdG8gaXQsIGJ1dCBp
dCdzIG5vdCB0aGF0IG11Y2ggc3BhY2UgdGhhdCdzIHNhdmVkIGFueXdheS4NCj4gSWU6IGl0IG1p
Z2h0IGFsc28gYmUgZmluZSB0byBqdXN0IGxlYXZlIHRoZW0gYXMgTlVMTCB1bmNvbmRpdGlvbmFs
bHkNCj4gb24gQXJtLg0KDQpPay4NCj4gDQo+PiAjZW5kaWYNCj4+IH07DQo+PiANCj4+IEBAIC0x
NDgsNiArMTUwLDcgQEAgc3RydWN0IHZwY2lfdmNwdSB7DQo+PiB9Ow0KPj4gDQo+PiAjaWZkZWYg
X19YRU5fXw0KPj4gKyNpZmRlZiBDT05GSUdfUENJX01TSV9JTlRFUkNFUFQNCj4+IHZvaWQgdnBj
aV9kdW1wX21zaSh2b2lkKTsNCj4+IA0KPj4gLyogTWFrZSBzdXJlIHRoZXJlJ3MgYSBob2xlIGlu
IHRoZSBwMm0gZm9yIHRoZSBNU0lYIG1taW8gYXJlYXMuICovDQo+PiBAQCAtMTc0LDcgKzE3Nyw3
IEBAIGludCBfX211c3RfY2hlY2sgdnBjaV9tc2l4X2FyY2hfZGlzYWJsZV9lbnRyeShzdHJ1Y3Qg
dnBjaV9tc2l4X2VudHJ5ICplbnRyeSwNCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldik7DQo+PiB2b2lkIHZw
Y2lfbXNpeF9hcmNoX2luaXRfZW50cnkoc3RydWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnkpOw0K
Pj4gaW50IHZwY2lfbXNpeF9hcmNoX3ByaW50KGNvbnN0IHN0cnVjdCB2cGNpX21zaXggKm1zaXgp
Ow0KPj4gLQ0KPj4gK2ludCByZW1vdmVfbXNpeF9yZWdpb25zKGNvbnN0IHN0cnVjdCBwY2lfZGV2
ICpwZGV2LCBzdHJ1Y3QgcmFuZ2VzZXQgKm1lbSk7DQo+PiAvKg0KPj4gICogSGVscGVyIGZ1bmN0
aW9ucyB0byBmZXRjaCBNU0lYIHJlbGF0ZWQgZGF0YS4gVGhleSBhcmUgdXNlZCBieSBib3RoIHRo
ZQ0KPj4gICogZW11bGF0ZWQgTVNJWCBjb2RlIGFuZCB0aGUgQkFSIGhhbmRsZXJzLg0KPj4gQEAg
LTIwOCw2ICsyMTEsMjUgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgdm1zaXhfZW50cnlf
bnIoY29uc3Qgc3RydWN0IHZwY2lfbXNpeCAqbXNpeCwNCj4+IHsNCj4+ICAgICByZXR1cm4gZW50
cnkgLSBtc2l4LT5lbnRyaWVzOw0KPj4gfQ0KPj4gKw0KPj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBm
cmVlX3ZwY2lfbXNpKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPiANCj4gdnBjaV9tc2lf
ZnJlZSBwbGVhc2UuDQoNCk9rLg0KDQpJIHdpbGwgbW9kaWZ5IHRoZSBjb2RlIGFzIHBlciB5b3Vy
IGNvbW1lbnRzIGFuZCB3aWxsIHNlbmQgbmV4dCB2ZXJzaW9uIG9mIHRoZSBwYXRjaC4NCg0KUmVn
YXJkcywNClJhaHVsDQo+IA0KPiBUaGFua3MsIFJvZ2VyLg0KDQo=


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 16:54:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 16:54:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109388.208820 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lVzpM-0007Hu-MR; Mon, 12 Apr 2021 16:54:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109388.208820; Mon, 12 Apr 2021 16: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 1lVzpM-0007Hn-JP; Mon, 12 Apr 2021 16:54:20 +0000
Received: by outflank-mailman (input) for mailman id 109388;
 Mon, 12 Apr 2021 16:54:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VKKJ=JJ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lVzpM-0007Hi-6d
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 16:54:20 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.0.42]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 04c56907-8158-4c8d-9d64-994e6d4dbe30;
 Mon, 12 Apr 2021 16:54:17 +0000 (UTC)
Received: from AS8PR04CA0037.eurprd04.prod.outlook.com (2603:10a6:20b:312::12)
 by DB7PR08MB3611.eurprd08.prod.outlook.com (2603:10a6:10:4d::26) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.18; Mon, 12 Apr
 2021 16:54:10 +0000
Received: from AM5EUR03FT053.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:312:cafe::2a) by AS8PR04CA0037.outlook.office365.com
 (2603:10a6:20b:312::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Mon, 12 Apr 2021 16:54:10 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT053.mail.protection.outlook.com (10.152.16.210) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Mon, 12 Apr 2021 16:54:09 +0000
Received: ("Tessian outbound 81a4524e9a48:v90");
 Mon, 12 Apr 2021 16:54:08 +0000
Received: from 3727ca823a09.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 738E888B-9FCA-4503-B055-F17C3B8D47CF.1; 
 Mon, 12 Apr 2021 16:53:50 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3727ca823a09.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 12 Apr 2021 16:53:50 +0000
Received: from DB7PR08MB3626.eurprd08.prod.outlook.com (2603:10a6:10:4a::16)
 by DB6PR0801MB1735.eurprd08.prod.outlook.com (2603:10a6:4:3a::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.18; Mon, 12 Apr
 2021 16:53:47 +0000
Received: from DB7PR08MB3626.eurprd08.prod.outlook.com
 ([fe80::a05a:b249:56a2:c570]) by DB7PR08MB3626.eurprd08.prod.outlook.com
 ([fe80::a05a:b249:56a2:c570%4]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 16:53:47 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0488.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1ab::7) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.21 via Frontend Transport; Mon, 12 Apr 2021 16:53: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: 04c56907-8158-4c8d-9d64-994e6d4dbe30
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8AA+l5JWYZXhPIhjxLbqP7ehHiFNbyvvrQkkk+vM3Vc=;
 b=FcMvBgYiJiiF5ws7JtCQZ8RMJhs3kiNuOiFMDmfLfr+Ywo2PZ+x2JSf2YdzZxsEsRCdSXXBEtxcK1QyyIjIfohrNVGlWAGxxvKnzvAgU4RUjVOcTLbnAEHrLhe1228ImUr/vmbT31AUCIkHPn5WbSaJ7yDZFNuFDZMMho6HLOvw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: b8339d7e286823a5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KuqmFy4j1EBOj9+aAmuoxfKVxteWKN/W0/lVGIwxeUAa1OeqruS8XAYmoP0rFtI9IL4rlcX4+46TeZY8CE36n1tZTseECj/u6gpL66qX3/IQrovRmmUN9/vk9xIg5Ot+f6y5KxWEsIIM9Touoh9tn9Uk4HqwPDguG++b05BBvge7Rt9gYu0ZGzL5spfesvqCT23/Td6lSRS82LpDJiJLzfRjHTwzOvI/tkqNhBeWt8oLsXskYiQCPcgbxQCWyLoiEDrTVkBAIYSilti7xVPvZRaY8i2Z8sy3YYuVExSaxfX68Y4ExOL/4VaMXbdBbQpiBJYRL4YnKLQSxJmeqmrugg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8AA+l5JWYZXhPIhjxLbqP7ehHiFNbyvvrQkkk+vM3Vc=;
 b=G7jIKhtOavt1vZEpk4Lgo5s6vbFyybzwRt4hx82rFsuFIUI5vM3+SVJeEy3fwNWNJFsuwfFA6FGieV5PrjBeg3rRjGbwFbx0Hifu1Rp0vfX5KoWCQR1YkA1jN6w9QlIAlkQHWFZe7vWvHyQQSGrsPuzw+3JdTtFjaoOerEVck7l4G7KeoO8nG3EId6kxW6egwn0AD0CVV0fBjDsIRFOv/usycF5bRzK5MlKxd+TY9Nm+KcDHiFwtONJavwnGz/r5ka2XIUjyHQjBlYKAoCwkKvoVIH47yIW3m2p0Ia/K2ye9n8z7un/vP/BGZUq+9bkGf2nlngvDFs1X2DJXg8AIGQ==
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=8AA+l5JWYZXhPIhjxLbqP7ehHiFNbyvvrQkkk+vM3Vc=;
 b=FcMvBgYiJiiF5ws7JtCQZ8RMJhs3kiNuOiFMDmfLfr+Ywo2PZ+x2JSf2YdzZxsEsRCdSXXBEtxcK1QyyIjIfohrNVGlWAGxxvKnzvAgU4RUjVOcTLbnAEHrLhe1228ImUr/vmbT31AUCIkHPn5WbSaJ7yDZFNuFDZMMho6HLOvw=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v3 2/4] xen/arm: Handle cases when hardware_domain is NULL
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <240cccb2-cf37-d01f-8861-1a5e8c21409d@suse.com>
Date: Mon, 12 Apr 2021 17:53:38 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>,
 Rahul Singh <rahul.singh@arm.com>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <B150907C-2B8D-46F0-8F51-AB8E83D842BF@arm.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-3-luca.fancellu@arm.com>
 <b1242714-e5f3-1e6b-f1bd-e9e53326fda7@suse.com>
 <9A775115-36A9-418F-B945-A778DE98672F@arm.com>
 <240cccb2-cf37-d01f-8861-1a5e8c21409d@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0488.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1ab::7) To DB7PR08MB3626.eurprd08.prod.outlook.com
 (2603:10a6:10:4a::16)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5a344919-377d-4793-add5-08d8fdd39781
X-MS-TrafficTypeDiagnostic: DB6PR0801MB1735:|DB7PR08MB3611:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DB7PR08MB3611FC34A9B03A4F8C0A68E6E4709@DB7PR08MB3611.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 OwTKVmfp7MbAcL9XCbgbnxbEX5LumVqEd3lKu8fFbn6O5MkGEmK43r/edupbWf/E89oxPMuKH/pWmuSt8SOjV3HUP0Ure4aj5NoTvhFHiKU0GCPK5xczNC+D1NdpWI/VdOYjsklUZ6prQvKIeSUbHFyAh6woJCOfEpc+I58xkIXwC67JgOZza+Zt3VjkJ/4ECXAi1ceEKW3JvyxuZ54/Dy9AX4lg9nlYXkAphmfzCdEg+zykIWYMXxxtsUp/GgFcA03XKpSeNNkWbbFP6tZ5pp+dLrJRCZorGCPkPLN60M4eO90MQ29Rf8Ezzp+8SILLL3s0bUSkw9lduedqG3c8cQ0dH4e2r7qPnkgBUBZ+kKQBqMbuObvlP3BpjkmIA++TLAeLsXXnqrxEnO9uAUHNZLB6JdckyM3wlqSwQbJbmOL7Qbj8gECK5qyny3UqDw7H0thQ6PkO5NMrKyyu5PSINXhoRbGNwFs1dG5wtpbuJECtB8EKHBEOall/rdRZGAZYx+9dDjU6Sk+rdrX6JTRp/YJjuXJwM31fQoqzxmH/kxUGTBMHNFGb/CCKVw52vWlV0bfkv2PDMG21w39lZjhEhatMppkgAzAHU7+QJ97BLYBHVt8zzkE3hC8cJIRH40YYBqVxG8j1FerEb+eD9gzOVwtmk7BFGZsIFpiZ1uwmk1rg9KGtpp90TArl5JD9HZUM
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3626.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(396003)(366004)(136003)(346002)(39860400002)(66556008)(66946007)(86362001)(8936002)(66476007)(7696005)(44832011)(8676002)(38350700002)(6666004)(26005)(316002)(33656002)(956004)(6486002)(2906002)(36756003)(186003)(54906003)(478600001)(16526019)(4326008)(2616005)(52116002)(38100700002)(53546011)(5660300002)(6916009)(83380400001)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 =?utf-8?B?K1l0eFIvWE1XSC9EM1E0U01FRGx2RW54MlBUaVlpS294eTYwYmYyanIySHNa?=
 =?utf-8?B?a2tCLzhBMHJHTVVYeG1rNHB5UkxZbW9yRjhXQk5SWjdwcTRqWDNoSFRFcEh2?=
 =?utf-8?B?eGwwY1FXNW0rYmxwV1E0UFFhQ1hjZWsxQWRza1Yydmx1VnpzL0FibDJSN3lK?=
 =?utf-8?B?NisxbDg4eHM3allZK093QTRoL3BnR015bWgrVlBUbW9ncm93RnFGR213L3BS?=
 =?utf-8?B?U0xROFczQUVBWWNzT0dKWUFLNlV0NldRU1E3WVRLKzVwZVR2NUVHWFZYSkZq?=
 =?utf-8?B?azhLRHpkaGNUZTdyWW0vUXpBZFRhNEk2OS9qT0pCSXlnK1piUjFxMHFyMHBy?=
 =?utf-8?B?L1NKVzR2cFFhOVh1SjlucGdaSFhkaGFlbDRGTWZzTXYrekN4VVF4blowOGFu?=
 =?utf-8?B?cmJ5S25QTTRMcVNzek84Mi9oRzR0SlhnOUhRV1luTmZma0cwWCs5WFlqcEt5?=
 =?utf-8?B?eHhxditOOWpOdUFaaWNlcUlDUWtYUko0c1dKVXVOSVRtOGVHZXkyTWQrNVhU?=
 =?utf-8?B?ZEpzRWlldmprRis4N1dnbFV5RVB4Y1lxWUlyajZySmwxeFMwMjVuWklzTDJX?=
 =?utf-8?B?ZkxUYkx3SDFzQ0hseWFITTBuRU1DOGVVcGZQZmdldGpUekJxOHphZi9LaFQv?=
 =?utf-8?B?TkVMaGJLT21sbnR2R251dzh4cHg4dlVHVGJCN2xPdkRHMFBMOSsxSHhYZlZr?=
 =?utf-8?B?N3QwUUtXM1pEM09qK2JYZytrazd2d24rcElGK0RxY0ZGNEI3VUNPUnlGVlRr?=
 =?utf-8?B?QUdPMEN1c2ovanRFWUY1a3I4Q2dMOEEwYllBWE9FdWxvNExrOXhLdmM1OUk5?=
 =?utf-8?B?TnFERUZwbnFobXFJcEdMQkpLY0puZ0Y2ODZtbGFNZDA3NnA0a0kzR3BLZjNX?=
 =?utf-8?B?STlVYVRPU2VZcTAvMEtKTWJRRVhaMzZOazRWU0Z5dm10cFlXWTBCaFFwUFN5?=
 =?utf-8?B?bm9GMDZzRE41cXlPUUJxUVE3Z2lSNGs2UEJzdGk2K3dqREwvdW5jUFZPM1NL?=
 =?utf-8?B?anZZdmowSFJ5VjNLalluSm5DOUpxeStNcUN6bk1JdUQ3ZENWblRieHloQUlE?=
 =?utf-8?B?eFJYU3RZMGhIaW5zNUtESmVUU1o5UFJoTHhOb0JFUHJsUW4xbjExOCsrMUtB?=
 =?utf-8?B?RVdKQ2JWcEZiV0h3S2RidmM5emN3WmI3VWVPcWdGYkEvdXdxTjk1RTR2VkE0?=
 =?utf-8?B?VUFXQXZJWjJJQmk5QW1jT0cwNEQyL1dCZlNBUTNEdkRETEpMcTA3a0p5cUMw?=
 =?utf-8?B?UUcxZy9hWUduYkt2MWwwY3RodGtNdXZXbmhmSTlUZFZTQjFENmh5cjJrYXdh?=
 =?utf-8?B?Y3lndWUzMm0zblJxU2dpWThCL2RwbUtHMjVUTFVzMmx6Q01VdnIvOVFrcjBC?=
 =?utf-8?B?V05jUktGRi9xQ0NLUlpKUTdHR3htcDNNaUpSUlZ4c0FiZDVReUJHZU9PeldX?=
 =?utf-8?B?ZlJHbnByRS80RnVQME4wVnBhWkpCbDEyNFdHeTZPSEszbE5PRWdheU9ONE1q?=
 =?utf-8?B?bGZiemd1TExDS2xZaFBhQ1pialVXQjhnbGpCODBPUmdaSGhneERoV3lyVXR5?=
 =?utf-8?B?aWhFS0RNaUJFWnh1Rkc5TGV5M0l5blZPMGF4VW90ZURiKzc0cVFtVW0zSEN1?=
 =?utf-8?B?ZkliTGtiWFhqMEpQYWhvZmx1ekxwVXVCWnJOV09pUFhoMWdVNy8rMm1VckNO?=
 =?utf-8?B?QjFIdmJodExNd3R0ZjJaL3JHcUhOM2xkSThCUldqdzRGVlBLSTZFclRrYVFO?=
 =?utf-8?Q?nXJ0nE6CWddFE4sKjitIq97EeSGR8E5hewc/mwF?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB1735
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT053.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	a06a732c-a77f-487c-1a79-08d8fdd388ec
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VO5U1g0EkWAQ5PipBWCjxrcLmkoC+SOTZ2uS2+vpXEXfti4IRIyKhgqGKjxXqbI9xlAPm53od+91tflG0YRvZ/Bth374gxMyk4ETLsBH5qdK8GmqVGL8C3Fi+PvvR4rYJC6zGz3ipbJ7Nj/bu4u4c9QKvpZXAgSXoYorBpaP2wx2z+8nLARLm8mC2HjDluQOOBV+hzv/Y8oAl/ipu5D1t6hBXCnXDutSpEUSm7lxpMm6gdKrcUhP70v3Wenr3gYZaslSHvpKLAOT8jNy33m38MbOrSDJzFKluvaGhrQAIu/kMhlDAe+zwlrPBI1eKM5Z67w3KwrXiz/7415lqixiM4PRe1Jd34waqHtnPVbX0QJkp3k0hJRKP+bKk7Cz38GlHsATuCl0Oe6+vLbRaIIERcx8Zw6Y0ROM4+eVnK088nmd1ed09sM6ThFoqSDQgDUUKlp2s+SlRECn8iT3qoYuOkEHiZfkzkBKf5Ako0kqx+MR8MQaEMehD9ea+iVpZ8qvlnh+nPrhv7kcT1e2+XN2rEWgNWx+WhjeYwgR5chPdV88uX+M0GnRcFcf9VfVDZoxQ8N0Yj4gx3YQoRQG0SBIzGP6wecUwdapB3ygBmPKPb5nmyUie2qB71FaqECrMlFsuH4dhU7cKNokI0WvTkqyqxnMCFIBSWSDlq1asNW9veA=
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:(4636009)(346002)(39860400002)(396003)(376002)(136003)(36840700001)(46966006)(53546011)(478600001)(6486002)(8676002)(81166007)(7696005)(47076005)(33656002)(82740400003)(16526019)(336012)(316002)(86362001)(44832011)(956004)(26005)(54906003)(2906002)(4326008)(70586007)(70206006)(8936002)(36860700001)(356005)(6862004)(2616005)(36756003)(186003)(82310400003)(83380400001)(5660300002)(6666004);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 16:54:09.4131
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5a344919-377d-4793-add5-08d8fdd39781
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:
	AM5EUR03FT053.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3611



> On 12 Apr 2021, at 15:22, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 12.04.2021 15:58, Luca Fancellu wrote:
>>=20
>>=20
>>> On 12 Apr 2021, at 12:03, Jan Beulich <jbeulich@suse.com> wrote:
>>>=20
>>> On 12.04.2021 12:52, Luca Fancellu wrote:
>>>> --- a/xen/include/xen/sched.h
>>>> +++ b/xen/include/xen/sched.h
>>>> @@ -1022,6 +1022,9 @@ static always_inline bool is_hardware_domain(con=
st struct domain *d)
>>>>    if ( IS_ENABLED(CONFIG_PV_SHIM_EXCLUSIVE) )
>>>>        return false;
>>>>=20
>>>> +    if ( !d )
>>>> +        return false;
>>>> +
>>>>    return evaluate_nospec(d =3D=3D hardware_domain);
>>>> }
>>>=20
>>> On v2 I did say on the respective code that was here (and my
>>> suggestion of this alternative adjustment): "Can you point out
>>> code paths where d may actually be NULL, and where [...] would
>>> not behave as intended (i.e. where bad speculation would
>>> result)?"
>>>=20
>>> Since you've taken the suggestion as-is, and since the commit
>>> message says nothing in either direction here, did you actually
>>> verify that there's no abuse of speculation possible with this
>>> extra return path? And did you find any caller at all which may
>>> pass NULL into here?
>>=20
>> Hi Jan,
>>=20
>> I=E2=80=99ve analysed the code and seems that there are no path that cal=
ls=20
>> Is_hardware_domain() with a NULL domain, however I found this
>> function in xen/arch/arm/irq.c:
>>=20
>> bool irq_type_set_by_domain(const struct domain *d)
>> {
>>    return is_hardware_domain(d);
>> }
>>=20
>> That is calling directly is_hardware_domain and it is global.
>> It can be the case that a future code can call irq_type_set_by_domain
>> potentially with a null domain...
>=20
> I don't think that a function being global (or not) matters here. This
> might be different in an environment like Linux, where modules may
> also call functions, and where guarding against NULL might be desirable
> in certain cases.
>=20
>> I introduced a check for the domain for that reason, do you think that
>> maybe it=E2=80=99s better to put that check on the irq_type_set_by_domai=
n instead?
>=20
> If there's a specific reason to have a guard here, then it should be
> here, yes. As per above I would think though that if there's no
> present reason to check for NULL, such a check would best be omitted.
> We don't typically check internal function arguments like this, after
> all.

Thank you Jan, so as you pointed out, since there is no actual path to call
Is_hardware_domain() with a NULL pointer, then I will remove the check
from is_hardware_domain() in a v4 patch.

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 18:27:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 18:27:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109408.208839 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW1Gq-0006sk-Hq; Mon, 12 Apr 2021 18:26:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109408.208839; Mon, 12 Apr 2021 18: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 1lW1Gq-0006sd-EM; Mon, 12 Apr 2021 18:26:48 +0000
Received: by outflank-mailman (input) for mailman id 109408;
 Mon, 12 Apr 2021 18:26:46 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lZ2i=JJ=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lW1Go-0006sF-N3
 for xen-devel@lists.xenproject.org; Mon, 12 Apr 2021 18:26:46 +0000
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.5.45]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ebf599da-710c-43fd-87c9-7bf734b14c15;
 Mon, 12 Apr 2021 18:26:43 +0000 (UTC)
Received: from MRXP264CA0023.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:15::35)
 by DB8PR08MB5257.eurprd08.prod.outlook.com (2603:10a6:10:e8::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Mon, 12 Apr
 2021 18:26:38 +0000
Received: from VE1EUR03FT057.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:500:15:cafe::bd) by MRXP264CA0023.outlook.office365.com
 (2603:10a6:500:15::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Mon, 12 Apr 2021 18:26:38 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT057.mail.protection.outlook.com (10.152.19.123) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Mon, 12 Apr 2021 18:26:38 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Mon, 12 Apr 2021 18:26:37 +0000
Received: from ac80d0ec7a38.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5D2794B2-8643-4C05-BB49-5ED286361218.1; 
 Mon, 12 Apr 2021 18:26:31 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ac80d0ec7a38.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 12 Apr 2021 18:26:31 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DB9PR08MB7037.eurprd08.prod.outlook.com (2603:10a6:10:2cd::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Mon, 12 Apr
 2021 18:26:30 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.4020.022; Mon, 12 Apr 2021
 18:26:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ebf599da-710c-43fd-87c9-7bf734b14c15
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aWEKw9xf8ipLCjW5vGcClhSy6q7BtMT+krZEH/M3o4U=;
 b=9F3W8pymBRBvca1XM1stDIfJK2GQabp6wAakFVTov3Ns+OgnB4QSUqvMqhZM5+mAsp/1Oyi7EDwdJvMvoCELzpUsLuegCdGR/qV/FS7vA7/Zwb2sDCRoA2cSZpVOmgv9gPL+giD7eq6pv+czJU7GehHS33lcDPYPJg1lPtI5YnU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 2de7741502428a06
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gtyCfugHseJfqabfHQYCmdmRZZZ2z/9QioH9+CIg3ihFHPJXee5tQqdbSBumtyoB5WsoXdouTEqGrAWX8SV6YdSeQs9k8nBPCplvUxf5KM65VIYgJIPnWysTSJstiNF5kYzUNHEnKyO3KQeWhwd3TP1i0Q2R4GoUzQEOsy+IqALu55a1bDN6MsbHKH4qW9mRVTlDs+q0idba/Tl8ks4KB+DQZ79obc8edSM2kwBU3Si6TMCFDm/pxubdGVvda7r6UMJNRy+Wh8ggZFpLWPbuO/BVpAA9xvJ8Lni3fS9MRFuvoaqdzhQTponaVtd0DwBe0Uk4OHytSNchD1K1LfhN4w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aWEKw9xf8ipLCjW5vGcClhSy6q7BtMT+krZEH/M3o4U=;
 b=azSv3v4rPH/8znJbVBSsTxTCBr9TbHgfNQw0cutITW1xOExKt+bwNug9fv6glGQl/vPfB90/hrapenUfMCY0yCO2l6ACx/X2C2qoOuQbtNx7ILMKXEjufAY5e+ahvBkaCiMYz5ALSPCoOf4//3PPdoR8TewzW/fAjmyvx9AMW3Soq87evdeaHnLIjh8V3P1eyu13IiM3M9c2gp7x5PB9J1i9hwMKeMyFIPMyVh4UHMB8a0dKL+Q7Ui0y+MkkceK6TYhG3gTN1tlh/MtJ0xCzCNFEO12q0+YKx+d8U/wk9B23jVMAsCdrkfAxKCahpLFBFP7pHKCQNBGNuH3YA4+FbA==
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=aWEKw9xf8ipLCjW5vGcClhSy6q7BtMT+krZEH/M3o4U=;
 b=9F3W8pymBRBvca1XM1stDIfJK2GQabp6wAakFVTov3Ns+OgnB4QSUqvMqhZM5+mAsp/1Oyi7EDwdJvMvoCELzpUsLuegCdGR/qV/FS7vA7/Zwb2sDCRoA2cSZpVOmgv9gPL+giD7eq6pv+czJU7GehHS33lcDPYPJg1lPtI5YnU=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, xen-devel
	<xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@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>, Paul Durrant <paul@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Topic: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Index: AQHXLVmJnBz/2T+xZEqfD4R39q2wV6qwuDwAgAAK8YCAAHTTgA==
Date: Mon, 12 Apr 2021 18:26:28 +0000
Message-ID: <9518F24F-EDA3-4C0E-B2A6-DB4A0F868EC3@arm.com>
References:
 <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <7f7383a5-a678-0dbd-cf9f-8a9239f6d391@suse.com>
In-Reply-To: <7f7383a5-a678-0dbd-cf9f-8a9239f6d391@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 478f52f0-e2f7-46a7-cbba-08d8fde082eb
x-ms-traffictypediagnostic: DB9PR08MB7037:|DB8PR08MB5257:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<DB8PR08MB5257AAA37F32CE3F2BA5B005FC709@DB8PR08MB5257.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 JvOIr5SeOeQha8dluHe32saSx33F6I/IuXINC4z3UL/JQckWfeHXXL7zRT8JmFjL/ToNZ2LwqiWZeoSm4faSj0LUKQEHjh1pBOei0jnymcCvEISLAmZgEOPKrUoNEiY0073/pNRcynF6P6nmLczAZdZemFxNUcrCRjJgTt9qaFrA8+At/f7VEzjDXWSKp1IYJxNSwdbESvhkTSVTyMl+41mSrkcwCwK7ukBv29Fic0RU4VmuicpP8HFiYD1R+eU0grwuALy9eCjnQzM0/fKjv9tDvBaFWUICLCk1vy1mzvzfFOv7wg/Z7AWShjfpLXVY25f9UM/HymaQasPNIb4x1HuMHTXZ8yVecO+WgEKc8yoXLVoNkG6fyUINRCv7o/QmYboEUBcot4YktmCeLi7mQuR2KpOh7sFOhbpvtJ+X3I5LZxjwpmGCwFpt/yTqk0krrqd8udJuAZ3k5zi/dnklb6vsa0um9rxBQ/UEAKFYDmbbsEK2gE7/p6vAaamzDoyreoqX6NiTZT/Q2caNyaDXxzrCwoDVj3P3NWcV2RhdbQoZvQeibAYRgwf1TGzfj+XkA5cuzycckF5xNMOKxLq9WwxlZc60WrgUchZgfGSTHat3cucNR4kK4JQpKYxs5EkSfzhjMynqCP7nKGH/uJzIjalQ7vekq4+rJwAFZDJF4o7sz/CKQx0LaCUWsIl6yIe/tV7k0juoGM3v+Z6Uk8YmRQV+iRzthZ1g12eThi9XiMD11EXrPOCXkwbNHvZIYzVJWF/MlATq3P0mQSBQGVRRrw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(39860400002)(346002)(376002)(136003)(396003)(6512007)(86362001)(8936002)(83380400001)(2906002)(6916009)(316002)(26005)(4326008)(33656002)(186003)(76116006)(91956017)(64756008)(66556008)(66446008)(36756003)(5660300002)(6506007)(53546011)(478600001)(2616005)(71200400001)(8676002)(7416002)(66476007)(66946007)(54906003)(38100700002)(6486002)(2004002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
 =?utf-8?Q?/5jYLWYkyjLp5ZjFlNZeRrwXKPzyrFvNOGN1sqZ?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <769801748A7FDE48879B2A1828AD5223@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7037
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT057.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e3a8e1a5-2054-4cf8-8f88-08d8fde07dff
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XYnv2M6xRd9kNi6hsBeNiZc5Am7fuc8CyIDpK/G41XAFiI11Zgd2mJ0nDVPQ3DoVk4Y9iMZ2j/vDJsepYKHAVMqD6VSsXSPnlBtGDJRqd6md0EDhlIganK3K1kcqvGwhPW+AJc5WUYsosgSeRavmLTy4UlwxiYTx/hSdQMENRuK79DnJlAi7x+WZ0iMhHkEbmFnMt5EKrVsx9kCvdRobVM//CjxZIvarRCeQnmN+/W35maobD5BukbSU6/i4z59brBF3wbF6Xr6kLsn8UsC+2pBcxnGgSB+G8rI2qA7sMZJK047yrXxdS32ZzWlQH8f6pqF0YdoU2TIrZjABpBFCmCM7o5HTNBXi788TJYpU4Een0qiBy69MWfCK3Muc18kru9kp4hH5X1RMUaZOKokjXnv0S3NfYvCCWZogQGN8dq4lwKCeJzVTBv61f3WXYLfe4Bq3kuonnXO6osBNzxKxC8AV54l8f81mAvlOyN0H57+ihF4wKjEAw5JXPiXkJLB77c8gfqND6iXbR9sbTrqw4pPXhVyOK0NdKhuWbLSIysskDm/9AmUrZiZGjt6mYMo6PTOvFyJyK8qYJkLAWqyP+qJFDW6TNbiYIWYvR4dODi+c2Xvr0YU0/UJma3esLXv183xnAwWjpzSBw/STBZ6/7h4UOa7+evIEvCwAM5EsJ7NQ8b9Ff9nGqX7uIzovKIavKBhBgtATfIIAxTdgOMjIVE8s0rZFKzfJts6kaetTJ5aaR+7EXZgKeQNeM8BfU10s
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:(4636009)(376002)(396003)(39860400002)(136003)(346002)(36840700001)(46966006)(316002)(36860700001)(82740400003)(478600001)(356005)(54906003)(53546011)(4326008)(82310400003)(81166007)(6486002)(47076005)(83380400001)(8936002)(6862004)(86362001)(26005)(5660300002)(70586007)(2616005)(336012)(70206006)(8676002)(6506007)(6512007)(33656002)(36756003)(2906002)(186003)(2004002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2021 18:26:38.2178
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 478f52f0-e2f7-46a7-cbba-08d8fde082eb
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:
	VE1EUR03FT057.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5257

SGkgSmFuLA0KDQo+IE9uIDEyIEFwciAyMDIxLCBhdCAxMjoyOCBwbSwgSmFuIEJldWxpY2ggPGpi
ZXVsaWNoQHN1c2UuY29tPiB3cm90ZToNCj4gDQo+IE9uIDEyLjA0LjIwMjEgMTI6NDksIFJvZ2Vy
IFBhdSBNb25uw6kgd3JvdGU6DQo+PiBPbiBGcmksIEFwciAwOSwgMjAyMSBhdCAwNTowMDo0MVBN
ICswMTAwLCBSYWh1bCBTaW5naCB3cm90ZToNCj4+PiAtLS0gYS94ZW4vYXJjaC94ODYvbXNpLmMN
Cj4+PiArKysgYi94ZW4vYXJjaC94ODYvbXNpLmMNCj4+PiBAQCAtMTQxMSw2ICsxNDExLDcwIEBA
IHZvaWQgX19pbml0IGVhcmx5X21zaV9pbml0KHZvaWQpDQo+Pj4gICAgICAgICByZXR1cm47DQo+
Pj4gfQ0KPj4+IA0KPj4+ICtpbnQgYWxsb2NfcGNpX21zaShzdHJ1Y3QgcGNpX2RldiAqcGRldikN
Cj4+IA0KPj4gSSB3b3VsZCByYXRoZXIgbmFtZSBpdCBwY2lfbXNpX2luaXQuLi4NCj4gDQo+IE9y
IG1heWJlIHBkZXZfbXNpX2luaXQoKSwgYXMgcGNpX21zaV9pbml0KCkgbG9va3MgbW9yZSBsaWtl
IGEgb25lLQ0KPiB0aW1lLCBnbG9iYWwgaW5pdCBmdW5jdGlvbj8NCj4gDQpPay4gSSB3aWxsIHVz
ZSBwZGV2X21zaV9pbml0KCkuDQoNCj4+PiArdm9pZCBmcmVlX3BjaV9tc2koc3RydWN0IHBjaV9k
ZXYgKnBkZXYpDQo+PiANCj4+IC4uLmFuZCBwY2lfbXNpX2ZyZWUuDQo+IA0KPiBUaGUgY291bnRl
cnBhcnQgb2YgImluaXQiIHJlYWxseSB3b3VsZCBiZSAiZGVpbml0IiwgSU9XIEknZCBsaWtlIHRv
DQo+IGFzayBmb3IgZWl0aGVyIGFsbG9jL2ZyZWUgb3IgaW5pdC9kZWluaXQuDQoNCk9rLiBJIHdp
bGwgdXNlIHBkZXZfbXNpX2RlaW5pdCgpLg0KPiANCj4+PiArew0KPj4+ICsgICAgeGZyZWUocGRl
di0+bXNpeCk7DQo+IA0KPiBDb3VsZCB0aGlzIG1heWJlIGJlY29tZSBYRlJFRSgpIGF0IHRoaXMg
b2NjYXNpb24/DQoNCk9rLg0KPiANCj4+PiAraW50IHBjaV9hc3NpZ25fbXNpeF9pbml0KHN0cnVj
dCBkb21haW4gKmQsIHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gDQo+PiBUaGlzIGtpbmQgb2Yg
YSBjb25mdXNpbmcgbmFtZSAtIHdoYXQgYWJvdXQgcGNpX21zaXhfYXNzaWduPw0KPj4gDQo+Pj4g
K3sNCj4+PiArICAgIGludCByYzsNCj4+PiArDQo+Pj4gKyAgICBpZiAoIHBkZXYtPm1zaXggKQ0K
PiANCj4gV291bGRuJ3QgdGhpcyBjaGVjayBiZXR0ZXIgbGl2ZSBpbiB0aGUgc29sZSBjYWxsZXI/
DQoNCk9rLg0KPiANCj4gDQo+Pj4gK3ZvaWQgZHVtcF9wY2lfbXNpKHN0cnVjdCBwY2lfZGV2ICpw
ZGV2KQ0KPiANCj4gcGRldl9kdW1wX21zaSgpIG9yIHNvbWUgc3VjaD8NCj4gDQo+IEFsc28gLSBj
b25zdCBoZXJlIGFuZCAuLi4NCg0KT2suDQo+IA0KPj4+ICt7DQo+Pj4gKyAgICBzdHJ1Y3QgbXNp
X2Rlc2MgKm1zaTsNCj4gDQo+IC4uLiBoZXJlIHBsZWFzZSwgd2hpbGUgeW91IGFscmVhZHkgbW92
ZSB0aGlzIGNvZGUuDQpPay4NCj4gDQo+Pj4gKyAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5ICggbXNp
LCAmcGRldi0+bXNpX2xpc3QsIGxpc3QgKQ0KPj4+ICsgICAgICAgIHByaW50aygiJWQgIiwgbXNp
LT5pcnEpOw0KPj4+ICt9DQo+PiANCj4+IEkgd29uZGVyLCB0aG9zZSB0aG9zZSBmdW5jdGlvbiBy
ZWFsbHkgd2FudCB0byBiZSBpbiBhIHg4NiBzcGVjaWZpYw0KPj4gZmlsZT8gVGhlcmUncyBub3Ro
aW5nIHg4NiBzcGVjaWZpYyBhYm91dCB0aGVtIEFGQUlDVC4NCj4+IA0KPj4gV291bGQgaXQgbWFr
ZSBzZW5zZSB0byBjcmVhdGUgYSBzZXBhcmF0ZSBtc2ktaW50ZXJjZXB0LmMgZmlsZSB3aXRoDQo+
PiB0aG9zZSB0aGF0IGdldHMgaW5jbHVkZWQgd2hlbiBDT05GSUdfUENJX01TSV9JTlRFUkNFUFQ/
DQo+IA0KPiArMQ0KPiANCj4+PiBAQCAtMTMwMywxMiArMTI3OSwxNSBAQCBzdGF0aWMgaW50IF9f
aW5pdCBzZXR1cF9kdW1wX3BjaWRldnModm9pZCkNCj4+PiB9DQo+Pj4gX19pbml0Y2FsbChzZXR1
cF9kdW1wX3BjaWRldnMpOw0KPj4+IA0KPj4+ICsNCj4+PiArI2lmZGVmIENPTkZJR19QQ0lfTVNJ
X0lOVEVSQ0VQVA0KPiANCj4gTm8gZG91YmxlIGJsYW5rIGxpbmVzIHBsZWFzZS4NCg0KT2suDQo+
IA0KPj4+IGludCBpb21tdV91cGRhdGVfaXJlX2Zyb21fbXNpKA0KPj4+ICAgICBzdHJ1Y3QgbXNp
X2Rlc2MgKm1zaV9kZXNjLCBzdHJ1Y3QgbXNpX21zZyAqbXNnKQ0KPj4+IHsNCj4+PiAgICAgcmV0
dXJuIGlvbW11X2ludHJlbWFwDQo+Pj4gICAgICAgICAgICA/IGlvbW11X2NhbGwoJmlvbW11X29w
cywgdXBkYXRlX2lyZV9mcm9tX21zaSwgbXNpX2Rlc2MsIG1zZykgOiAwOw0KPj4+IH0NCj4+PiAr
I2VuZGlmDQo+PiANCj4+IFRoaXMgaXMgbm90IGV4YWN0bHkgcmVsYXRlZCB0byBNU0kgaW50ZXJj
ZXB0cywgdGhlIElPTU1VIGludGVycnVwdA0KPj4gcmVtYXBwaW5nIHRhYmxlIHdpbGwgYWxzbyBi
ZSB1c2VkIGZvciBpbnRlcnJ1cHQgZW50cmllcyBmb3IgZGV2aWNlcw0KPj4gYmVpbmcgdXNlZCBi
eSBYZW4gZGlyZWN0bHksIHdoZXJlIG5vIGludGVyY2VwdCBpcyByZXF1aXJlZC4NCj4+IA0KPj4g
QW5kIHRoZW4geW91IGFsc28gd2FudCB0byBnYXRlIHRoZSBob29rIGZyb20gaW9tbXVfb3BzIGl0
c2VsZiB3aXRoDQo+PiBDT05GSUdfUENJX01TSV9JTlRFUkNFUFQsIGlmIHdlIHdhbnQgdG8gZ290
IHRoaXMgcm91dGUuDQo+IA0KPiBJIHRoaW5rIHRoZSB0d28gYXNwZWN0cyBvZiBNU0kgc2hvdWxk
IGJlIGtlcHQgc2VwYXJhdGUuDQoNCk9rLiBJIHdpbGwgc3BsaXQgdGhlIHBhdGNoIGluIHR3byBw
YXRjaGVzLg0KPiANCj4+PiAtLS0gYS94ZW4vZHJpdmVycy9wY2kvS2NvbmZpZw0KPj4+ICsrKyBi
L3hlbi9kcml2ZXJzL3BjaS9LY29uZmlnDQo+Pj4gQEAgLTEsMyArMSw3IEBADQo+Pj4gDQo+Pj4g
Y29uZmlnIEhBU19QQ0kNCj4+PiAJYm9vbA0KPj4+ICsNCj4+PiArY29uZmlnIFBDSV9NU0lfSU5U
RVJDRVBUDQo+Pj4gKwlkZWZfYm9vbCB5DQo+Pj4gKwlkZXBlbmRzIG9uIFg4NiAmJiBIQVNfUENJ
DQo+IA0KPiBEZXBlbmRpbmcgb24gSEFTX1BDSSBpcyBmaW5lIChhbGJlaXQgbm90IHN0cmljdGx5
IG5lZWRlZCBhZmFpY3QpLA0KPiBidXQgdGhpcyBzaG91bGRuJ3QgaGF2ZSBhIGRlZmF1bHQgKGxp
a2UgSEFTX1BDSSBkb2Vzbid0KSBhbmQNCj4gaW5zdGVhZCBiZSBzZWxlY3RlZCBieSB4ODYuDQoN
Ck9rLg0KPiANCj4+PiAtLS0gYS94ZW4vZHJpdmVycy92cGNpL3ZwY2kuYw0KPj4+ICsrKyBiL3hl
bi9kcml2ZXJzL3ZwY2kvdnBjaS5jDQo+Pj4gQEAgLTQ4LDggKzQ4LDcgQEAgdm9pZCB2cGNpX3Jl
bW92ZV9kZXZpY2Uoc3RydWN0IHBjaV9kZXYgKnBkZXYpDQo+Pj4gICAgICAgICB4ZnJlZShyKTsN
Cj4+PiAgICAgfQ0KPj4+ICAgICBzcGluX3VubG9jaygmcGRldi0+dnBjaS0+bG9jayk7DQo+Pj4g
LSAgICB4ZnJlZShwZGV2LT52cGNpLT5tc2l4KTsNCj4+PiAtICAgIHhmcmVlKHBkZXYtPnZwY2kt
Pm1zaSk7DQo+Pj4gKyAgICBmcmVlX3ZwY2lfbXNpKHBkZXYpOw0KPiANCj4gSSBkb24ndCB0aGlu
ayB0aGUgZnVuY3Rpb24gbmVlZHMgdG8gYmUgcGFzc2VkIGEgcGRldiwgYW5kIC4uLg0KDQpPay4N
Cj4+PiAgICAgeGZyZWUocGRldi0+dnBjaSk7DQo+Pj4gICAgIHBkZXYtPnZwY2kgPSBOVUxMOw0K
PiANCj4gLi4uIGl0IHdvdWxkIG9ubHkgYmUgY29uc2lzdGVudCB3aXRoIHRoaXMgaWYgcGRldi0+
dnBjaSB3YXMgcGFzc2VkDQo+IGluc3RlYWQuDQpPSy4NCj4gDQo+Pj4gLS0tIC9kZXYvbnVsbA0K
Pj4+ICsrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vbXNpLmgNCj4+PiBAQCAtMCwwICsxLDQ0IEBA
DQo+Pj4gKy8qDQo+Pj4gKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcm0gTHRkLg0KPj4+ICsgKg0K
Pj4+ICsgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1
dGUgaXQgYW5kL29yIG1vZGlmeQ0KPj4+ICsgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO
VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBhcw0KPj4+ICsgKiBwdWJsaXNoZWQg
YnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4NCj4+PiArICoNCj4+PiArICogVGhpcyBw
cm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWws
DQo+Pj4gKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBs
aWVkIHdhcnJhbnR5IG9mDQo+Pj4gKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCj4+PiArICogR05VIEdlbmVyYWwgUHVibGlj
IExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCj4+PiArICoNCj4+PiArICogWW91IHNob3VsZCBo
YXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCj4+
PiArICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5n
bnUub3JnL2xpY2Vuc2VzLz4uDQo+Pj4gKyAqLw0KPj4+ICsNCj4+PiArI2lmbmRlZiBfX0FTTV9N
U0lfSF8NCj4+PiArI2RlZmluZSBfX0FTTV9NU0lfSF8NCj4+PiArDQo+Pj4gK3N0YXRpYyBpbmxp
bmUgaW50IGFsbG9jX3BjaV9tc2koc3RydWN0IHBjaV9kZXYgKnBkZXYpDQo+Pj4gK3sNCj4+PiAr
ICAgIHJldHVybiAwOw0KPj4+ICt9DQo+Pj4gKw0KPj4+ICtzdGF0aWMgaW5saW5lIGludCBwY2lf
YXNzaWduX21zaXhfaW5pdChzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcGNpX2RldiAqcGRldikN
Cj4+PiArew0KPj4+ICsgICAgcmV0dXJuIDA7DQo+Pj4gK30NCj4+PiArDQo+Pj4gK3N0YXRpYyBp
bmxpbmUgdm9pZCBkdW1wX3BjaV9tc2koc3RydWN0IHBjaV9kZXYgKnBkZXYpIHt9DQo+Pj4gK3N0
YXRpYyBpbmxpbmUgdm9pZCBmcmVlX3BjaV9tc2koc3RydWN0IHBjaV9kZXYgKnBkZXYpIHt9DQo+
Pj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBwY2lfY2xlYW51cF9tc2koc3RydWN0IHBjaV9kZXYgKnBk
ZXYpIHt9DQo+Pj4gKw0KPj4+ICsjZW5kaWYgLyogX19BU01fTVNJX0ggKi8NCj4+PiArDQo+Pj4g
Ky8qDQo+Pj4gKyAqIExvY2FsIHZhcmlhYmxlczoNCj4+PiArICogbW9kZTogQw0KPj4+ICsgKiBj
LWZpbGUtc3R5bGU6ICJCU0QiDQo+Pj4gKyAqIGMtYmFzaWMtb2Zmc2V0OiA0DQo+Pj4gKyAqIHRh
Yi13aWR0aDogNA0KPj4+ICsgKiBpbmRlbnQtdGFicy1tb2RlOiBuaWwNCj4+PiArICogRW5kOg0K
Pj4+ICsgKi8NCj4+IA0KPj4gU2hvdWxkIHlvdSBpbnN0ZWFkIGhhdmUgYSBub24tYXJjaCBzcGVj
aWZpYyBmaWxlIHdpdGggdGhvc2UgZHVtbXkNCj4+IGhlbHBlcnMgdGhhdCBnZXQgdXNlZCB3aGVu
ICFDT05GSUdfUENJX01TSV9JTlRFUkNFUFQ/DQo+IA0KPiArMQ0KPiANCj4+PiAtLS0gYS94ZW4v
aW5jbHVkZS9hc20teDg2L21zaS5oDQo+Pj4gKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9tc2ku
aA0KPj4+IEBAIC0yNTIsNSArMjUyLDkgQEAgdm9pZCB1bm1hc2tfbXNpX2lycShzdHJ1Y3QgaXJx
X2Rlc2MgKik7DQo+Pj4gdm9pZCBndWVzdF9tYXNrX21zaV9pcnEoc3RydWN0IGlycV9kZXNjICos
IGJvb2wgbWFzayk7DQo+Pj4gdm9pZCBhY2tfbm9ubWFza2FibGVfbXNpX2lycShzdHJ1Y3QgaXJx
X2Rlc2MgKik7DQo+Pj4gdm9pZCBzZXRfbXNpX2FmZmluaXR5KHN0cnVjdCBpcnFfZGVzYyAqLCBj
b25zdCBjcHVtYXNrX3QgKik7DQo+Pj4gK2ludCBhbGxvY19wY2lfbXNpKHN0cnVjdCBwY2lfZGV2
ICpwZGV2KTsNCj4+PiArdm9pZCBmcmVlX3BjaV9tc2koc3RydWN0IHBjaV9kZXYgKnBkZXYpOw0K
Pj4+ICt2b2lkIGR1bXBfcGNpX21zaShzdHJ1Y3QgcGNpX2RldiAqcGRldik7DQo+Pj4gK2ludCBw
Y2lfYXNzaWduX21zaXhfaW5pdChzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcGNpX2RldiAqcGRl
dik7DQo+IA0KPiBUaGVzZSBzaG91bGQgdGhlbiBsaXZlIGluIHRoZSBvdGhlciAiaGFsZiIgb2Yg
dGhhdCBoZWFkZXIuDQoNCk9rIFllcyBub3RlZA0KPiANCj4+PiAtLS0gYS94ZW4vaW5jbHVkZS94
ZW4vcGNpLmgNCj4+PiArKysgYi94ZW4vaW5jbHVkZS94ZW4vcGNpLmgNCj4+PiBAQCAtNzksMTAg
Kzc5LDYgQEAgc3RydWN0IHBjaV9kZXYgew0KPj4+ICAgICBzdHJ1Y3QgbGlzdF9oZWFkIGFsbGRl
dnNfbGlzdDsNCj4+PiAgICAgc3RydWN0IGxpc3RfaGVhZCBkb21haW5fbGlzdDsNCj4+PiANCj4+
PiAtICAgIHN0cnVjdCBsaXN0X2hlYWQgbXNpX2xpc3Q7DQo+Pj4gLQ0KPj4+IC0gICAgc3RydWN0
IGFyY2hfbXNpeCAqbXNpeDsNCj4+PiAtDQo+Pj4gICAgIHN0cnVjdCBkb21haW4gKmRvbWFpbjsN
Cj4+PiANCj4+PiAgICAgY29uc3QgdW5pb24gew0KPj4+IEBAIC05NCw3ICs5MCwxNCBAQCBzdHJ1
Y3QgcGNpX2RldiB7DQo+Pj4gICAgICAgICBwY2lfc2JkZl90IHNiZGY7DQo+Pj4gICAgIH07DQo+
Pj4gDQo+Pj4gKyNpZmRlZiBDT05GSUdfUENJX01TSV9JTlRFUkNFUFQNCj4+PiArICAgIHN0cnVj
dCBsaXN0X2hlYWQgbXNpX2xpc3Q7DQo+Pj4gKw0KPj4+ICsgICAgc3RydWN0IGFyY2hfbXNpeCAq
bXNpeDsNCj4+PiArDQo+Pj4gICAgIHVpbnQ4X3QgbXNpX21heHZlYzsNCj4+PiArI2VuZGlmDQo+
Pj4gKw0KPj4+ICAgICB1aW50OF90IHBoYW50b21fc3RyaWRlOw0KPiANCj4gTGlrZSBSb2dlciBh
bHNvIHNhaWQgZm9yIHN0cnVjdCB2cGNpLCBpdCdzIG5vdCBjbGVhciB0aGlzIGlzIHdvcnRoDQo+
IGl0LiBBbmQgd2hpbGUgeW91IG1heSBoYXZlIHBhaWQgYXR0ZW50aW9uIChhbmQgdGhlcmUgc2lt
cGx5IGlzIG5vDQo+IGJldHRlciBhcnJhbmdlbWVudCkgSSdkIGFsc28gbGlrZSB0byBwb2ludCBv
dXQgdGhhdCBzdWNoIGZpZWxkDQo+IG1vdmVtZW50IHNob3VsZCBiZSBkb25lIHdoaWxlIGtlZXBp
bmcgcGFkZGluZyBob2xlIHNpemVzIGluIG1pbmQuDQoNCk9rLiANCj4gDQo+Pj4gQEAgLTE3NCw3
ICsxNzcsNyBAQCBpbnQgX19tdXN0X2NoZWNrIHZwY2lfbXNpeF9hcmNoX2Rpc2FibGVfZW50cnko
c3RydWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnksDQo+Pj4gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2KTsNCj4+
PiB2b2lkIHZwY2lfbXNpeF9hcmNoX2luaXRfZW50cnkoc3RydWN0IHZwY2lfbXNpeF9lbnRyeSAq
ZW50cnkpOw0KPj4+IGludCB2cGNpX21zaXhfYXJjaF9wcmludChjb25zdCBzdHJ1Y3QgdnBjaV9t
c2l4ICptc2l4KTsNCj4+PiAtDQo+Pj4gK2ludCByZW1vdmVfbXNpeF9yZWdpb25zKGNvbnN0IHN0
cnVjdCBwY2lfZGV2ICpwZGV2LCBzdHJ1Y3QgcmFuZ2VzZXQgKm1lbSk7DQo+Pj4gLyoNCj4+PiAg
KiBIZWxwZXIgZnVuY3Rpb25zIHRvIGZldGNoIE1TSVggcmVsYXRlZCBkYXRhLiBUaGV5IGFyZSB1
c2VkIGJ5IGJvdGggdGhlDQo+Pj4gICogZW11bGF0ZWQgTVNJWCBjb2RlIGFuZCB0aGUgQkFSIGhh
bmRsZXJzLg0KPiANCj4gUGxlYXNlIGRvbid0IHJlbW92ZSBibGFuayBsaW5lcyBsaWtlIHRoaXMg
b25lLCB1bmxlc3MgeW91IGFjdHVhbGx5DQo+IHNlZSBhIHJlYXNvbi4NCj4gDQpPay4NCg0KUmVn
YXJkcywNClJhaHVsDQoNCj4gSmFuDQoNCg==


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 18:36:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 18:36:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109415.208851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW1Pl-0007rA-LE; Mon, 12 Apr 2021 18:36:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109415.208851; Mon, 12 Apr 2021 18:36:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW1Pl-0007r3-HJ; Mon, 12 Apr 2021 18:36:01 +0000
Received: by outflank-mailman (input) for mailman id 109415;
 Mon, 12 Apr 2021 18:35: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 1lW1Pj-0007qv-MH; Mon, 12 Apr 2021 18:35: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 1lW1Pj-0003B3-Fw; Mon, 12 Apr 2021 18:35: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 1lW1Pj-0002aB-4a; Mon, 12 Apr 2021 18:35:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lW1Pj-0006mE-43; Mon, 12 Apr 2021 18: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=fogGXex+b4JYdPRWIvChh5jDNOKSXHqFYenVvyQJqvk=; b=Nh13e42tY7dSHMJTP45CBvhNKb
	Goy6myhEj8nh7V+X9yDR75nZCtzqRr+/HqqQ1Ro8GAzju6Bpp/krrSsKZLzARdWqv0pFnzlTfR81Z
	4ZL5wYrvtBR45D0QSYZTLXxOR/k8/xIMKnUN0D+VRd3Aj2tDoZTRK/Pa1dwqDst+ThPE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161022-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161022: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-localmigrate:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-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-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-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-vhd: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=7d900724913cb293620a05c5a3134710db95d0d9
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 18:35:59 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 17 guest-localmigrate       fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                7d900724913cb293620a05c5a3134710db95d0d9
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  254 days
Failing since        152366  2020-08-01 20:49:34 Z  253 days  429 attempts
Testing same since   161022  2021-04-11 19:25:58 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1325214 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 12 18:53:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 18:53:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109423.208866 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW1gE-0001BY-8j; Mon, 12 Apr 2021 18:53:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109423.208866; Mon, 12 Apr 2021 18: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 1lW1gE-0001BR-5c; Mon, 12 Apr 2021 18:53:02 +0000
Received: by outflank-mailman (input) for mailman id 109423;
 Mon, 12 Apr 2021 18:53: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 1lW1gD-0001BJ-Bv; Mon, 12 Apr 2021 18:53: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 1lW1gD-0003S9-3A; Mon, 12 Apr 2021 18:53: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 1lW1gC-0003Y8-OX; Mon, 12 Apr 2021 18:53:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lW1gC-00086e-O2; Mon, 12 Apr 2021 18:53: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:Message-Id:Subject:To;
	bh=unYrmfpLSw7Z9r+XcdJ4hTdUezAKOh+0e0O9YRWLVLk=; b=jDbZY3s93hxwDRuQVravo6+yDr
	0IOEfg4R18QqlhMZwvLws6wBA1ramOk3avddDbazxcTvBArO0mAyRlQopMQmBMbwaK6ABqt+k0jGY
	T4sfi3xD2Cd8ijb9PMwSAW5yM+x1tBLLToh5OkeXbb38KUKA7WtvqHRA6rHX3Bm0MwE4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [xen-unstable bisection] complete test-armhf-armhf-libvirt
Message-Id: <E1lW1gC-00086e-O2@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 18:53:00 +0000

branch xen-unstable
xenbranch xen-unstable
job test-armhf-armhf-libvirt
testid guest-start/debian.repeat

Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  9617d5f9c19d1d157629e1e436791509526e0ce5
  Bug not present: 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161061/


  commit 9617d5f9c19d1d157629e1e436791509526e0ce5
  Author: Julien Grall <jgrall@amazon.com>
  Date:   Sat Feb 20 17:54:13 2021 +0000
  
      xen/arm: mm: flush_page_to_ram() only need to clean to PoC
      
      At the moment, flush_page_to_ram() is both cleaning and invalidate to
      PoC the page.
      
      The goal of flush_page_to_ram() is to prevent corruption when the guest
      has disabled the cache (the cache line may be dirty) and the guest to
      read previous content.
      
      Per this definition, the invalidating the line is not necessary. So
      invalidating the cache is unnecessary. In fact, it may be counter-
      productive as the line may be (speculatively) accessed a bit after.
      So this will incurr an expensive access to the memory.
      
      More generally, we should avoid interferring too much with cache.
      Therefore, flush_page_to_ram() is updated to only clean to PoC the page.
      
      The performance impact of this change will depend on your
      workload/processor.
      
      Signed-off-by: Julien Grall <jgrall@amazon.com>
      Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
      Acked-by: Stefano Stabellini <sstabellini@kernel.org>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-unstable/test-armhf-armhf-libvirt.guest-start--debian.repeat.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/xen-unstable/test-armhf-armhf-libvirt.guest-start--debian.repeat --summary-out=tmp/161061.bisection-summary --basis-template=160646 --blessings=real,real-bisect,real-retry xen-unstable test-armhf-armhf-libvirt guest-start/debian.repeat
Searching for failure / basis pass:
 160960 fail [host=arndale-westfield] / 160820 [host=cubietruck-gleizes] 160796 [host=cubietruck-picasso] 160758 [host=arndale-metrocentre] 160646 [host=cubietruck-braque] 160630 ok.
Failure / basis pass flights: 160960 / 160630
Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
Basis pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 90629587e16e2efdb61da77f25c25fba3c4a5fd7
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/libvirt.git#2c846fa6bcc11929c9fb857a22430fb9945654ad-2c846fa6bcc11929c9fb857a22430fb9945654ad https://gitlab.com/keycodemap/keycodemapdb.git#27acf0ef828bf719b2053ba398b195829413dbdd-27acf0ef828bf719b2053ba398b195829413dbdd git://xenbits.xen.org/linux-pvops.git#a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9-a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\
 dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/qemu-xen.git#7ea428895af2840d85c524f0bd11a38aac308308-7ea428895af2840d85c524f0bd11a38aac308308 git://xenbits.xen.org/xen.git#90629587e16e2efdb61da77f25c25fba3c4a5fd7-935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
Loaded 5001 nodes in revision graph
Searching for test results:
 160581 [host=arndale-metrocentre]
 160630 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160646 [host=cubietruck-braque]
 160733 [host=arndale-metrocentre]
 160745 [host=arndale-metrocentre]
 160758 [host=arndale-metrocentre]
 160776 [host=cubietruck-picasso]
 160796 [host=cubietruck-picasso]
 160820 [host=cubietruck-gleizes]
 160850 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 025eacc13f6147ffa99da5ecee4ed96e7fe8e887
 160878 blocked 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
 160912 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
 160970 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160988 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
 161002 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 06d1f7a278ddf4344efbb28c3360901b5a79ab75
 161024 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 f36179726847a08418a0b4f9c319b24ecb60fe3a
 161032 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 e650311d4ebfd5bdff1f689b237f790ac05e1cab
 160960 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
 161034 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 9617d5f9c19d1d157629e1e436791509526e0ce5
 161039 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
 161042 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 9617d5f9c19d1d157629e1e436791509526e0ce5
 161046 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
 161053 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 9617d5f9c19d1d157629e1e436791509526e0ce5
 161056 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
 161061 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 9617d5f9c19d1d157629e1e436791509526e0ce5
Searching for interesting versions
 Result found: flight 160630 (pass), for basis pass
 For basis failure, parent search stopping at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7, results HASH(0x55a32b415dc8) HASH(0x55a32b3ffd80) HASH(0x55a32b400c80) For basis failure, parent search stopping at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1db\
 affe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 f36179726847a08418a0b4f9c319b24ecb60fe3a, results HASH(0x55a32b410830) For basis failure, parent search stopping at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 90629587e16e2efdb61da77f25c25fba3c4a5fd7, results HASH(0x55a32b40\
 1428) HASH(0x55a32b407a68) Result found: flight 160850 (fail), for basis failure (at ancestor ~234)
 Repro found: flight 160970 (pass), for basis pass
 Repro found: flight 160988 (fail), for basis failure
 0 revisions at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 7ea428895af2840d85c524f0bd11a38aac308308 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
No revisions left to test, checking graph state.
 Result found: flight 161039 (pass), for last pass
 Result found: flight 161042 (fail), for first failure
 Repro found: flight 161046 (pass), for last pass
 Repro found: flight 161053 (fail), for first failure
 Repro found: flight 161056 (pass), for last pass
 Repro found: flight 161061 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  9617d5f9c19d1d157629e1e436791509526e0ce5
  Bug not present: 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161061/


  commit 9617d5f9c19d1d157629e1e436791509526e0ce5
  Author: Julien Grall <jgrall@amazon.com>
  Date:   Sat Feb 20 17:54:13 2021 +0000
  
      xen/arm: mm: flush_page_to_ram() only need to clean to PoC
      
      At the moment, flush_page_to_ram() is both cleaning and invalidate to
      PoC the page.
      
      The goal of flush_page_to_ram() is to prevent corruption when the guest
      has disabled the cache (the cache line may be dirty) and the guest to
      read previous content.
      
      Per this definition, the invalidating the line is not necessary. So
      invalidating the cache is unnecessary. In fact, it may be counter-
      productive as the line may be (speculatively) accessed a bit after.
      So this will incurr an expensive access to the memory.
      
      More generally, we should avoid interferring too much with cache.
      Therefore, flush_page_to_ram() is updated to only clean to PoC the page.
      
      The performance impact of this change will depend on your
      workload/processor.
      
      Signed-off-by: Julien Grall <jgrall@amazon.com>
      Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
      Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Revision graph left in /home/logs/results/bisect/xen-unstable/test-armhf-armhf-libvirt.guest-start--debian.repeat.{dot,ps,png,html,svg}.
----------------------------------------
161061: tolerable FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-armhf-armhf-libvirt   16 saverestore-support-check fail baseline untested
 test-armhf-armhf-libvirt   18 guest-start/debian.repeat fail baseline untested
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass


jobs:
 build-armhf-libvirt                                          pass    
 test-armhf-armhf-libvirt                                     fail    


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

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

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

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



From xen-devel-bounces@lists.xenproject.org Mon Apr 12 22:31:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 12 Apr 2021 22:31:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109453.208908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW557-0003md-R5; Mon, 12 Apr 2021 22:30:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109453.208908; Mon, 12 Apr 2021 22: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 1lW557-0003mW-N7; Mon, 12 Apr 2021 22:30:57 +0000
Received: by outflank-mailman (input) for mailman id 109453;
 Mon, 12 Apr 2021 22:30: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 1lW556-0003mO-Nk; Mon, 12 Apr 2021 22:30: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 1lW556-00072Z-HK; Mon, 12 Apr 2021 22:30: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 1lW556-0005Yy-7i; Mon, 12 Apr 2021 22:30:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lW556-0006Q7-7E; Mon, 12 Apr 2021 22:30: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=XsuVAMkxy1c+UFKTyAWArpwZe9Hz09Yv2VMIvpxayGE=; b=zQCe0VGK4aAAV8I4QF1OnfkIX2
	CatUNTxMLMpbDZoFNX9QhC1CZwpacAenjeyWfsxiWnoCRINvVt2VoVw13AaSRHy5bT03iZwOVoUX9
	sp34GFczqS85nVTkFICacErPXO+p/8cIhz3h1DPyKsynhvGKSP6cnD9Rrfd4WnkjGQ5k=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161036-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161036: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start.2:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:regression
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-xsm:guest-start.2:fail:heisenbug
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-xtf-amd64-amd64-3:xtf/test-pv32pae-xsa-286:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:guest-saverestore:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-examine:reboot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check: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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl: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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 12 Apr 2021 22:30:56 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-vhd      12 debian-di-install        fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-credit2  19 guest-start.2  fail in 160878 REGR. vs. 160646
 test-armhf-armhf-libvirt 18 guest-start/debian.repeat fail in 160912 REGR. vs. 160646
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 160912 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 18 guest-localmigrate/x10 fail in 160878 pass in 161036
 test-amd64-i386-libvirt-xsm  21 guest-start.2    fail in 160878 pass in 161036
 test-amd64-amd64-examine    4 memdisk-try-append fail in 160878 pass in 161036
 test-armhf-armhf-libvirt      8 xen-boot         fail in 160878 pass in 161036
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 160878 pass in 161036
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 160878 pass in 161036
 test-xtf-amd64-amd64-3 92 xtf/test-pv32pae-xsa-286 fail in 160912 pass in 161036
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 160912 pass in 161036
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 15 guest-saverestore fail in 160912 pass in 161036
 test-armhf-armhf-xl          14 guest-start      fail in 160912 pass in 161036
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 160912 pass in 161036
 test-armhf-armhf-xl-rtds      8 xen-boot         fail in 160912 pass in 161036
 test-armhf-armhf-examine      8 reboot           fail in 160960 pass in 161036
 test-armhf-armhf-xl-multivcpu  8 xen-boot        fail in 160960 pass in 161036
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10     fail pass in 160878
 test-armhf-armhf-xl          18 guest-start/debian.repeat  fail pass in 160878
 test-armhf-armhf-libvirt-raw 13 guest-start                fail pass in 160912
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat  fail pass in 160960
 test-armhf-armhf-libvirt     14 guest-start                fail pass in 160960

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 160912 like 160646
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 160912 like 160646
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 160912 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 160912 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z   11 days
Failing since        160665  2021-04-02 07:40:09 Z   10 days   15 attempts
Testing same since   160878  2021-04-09 19:07:54 Z    3 days    4 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@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                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 00:27:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 00:27:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109463.208929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW6u8-0005kJ-T8; Tue, 13 Apr 2021 00:27:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109463.208929; Tue, 13 Apr 2021 00: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 1lW6u8-0005kC-Ob; Tue, 13 Apr 2021 00:27:44 +0000
Received: by outflank-mailman (input) for mailman id 109463;
 Tue, 13 Apr 2021 00:27:43 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1MWi=JK=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lW6u7-0005k7-D8
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 00:27:43 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 417e07d7-10a9-4686-86fa-14cf90fc7f17;
 Tue, 13 Apr 2021 00:27:42 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 4443B6109E;
 Tue, 13 Apr 2021 00:27: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: 417e07d7-10a9-4686-86fa-14cf90fc7f17
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618273661;
	bh=dENYFUjEUnHuUQgwPE7nhH4LIoGHwVzQZ6ZtbZUv2UI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZJqH0m6UMR/0L6Tqwr4wztekJhpRBaaCQn8FzjUz+6kTi6tXFUytp9OE12EKMdkxq
	 B6pYVD+1Cxn1ACur00sZbgTORNG27Nqo56Whb2k45toLH1sT04c1VhxnmdrEUQfnBz
	 AnPfs2NfLB2rKaBceq6xtQG4CxbV4ZOVchI69MBYG5maBmv99kGcoAYu/1WZb6Po1p
	 s6qnv5cGRF/Q+XCVivUNGLDM7s6u7I/YRvCUVdkwOg+W8+KBf6JtuOsA/YMESuQc5q
	 oRh/dJBgPJoY1+9RGsj9IFCaK3srThNwBXD87u65yXIRiBtVe6QinMR+bqyhAG9HKr
	 d9mu7idfaj8Sg==
Date: Mon, 12 Apr 2021 17:27:40 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Rahul Singh <Rahul.Singh@arm.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    xen-devel <xen-devel@lists.xenproject.org>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    "brian.woods@xilinx.com" <brian.woods@xilinx.com>
Subject: Re: [PATCH v3 0/3] Generic SMMU Bindings
In-Reply-To: <A64881AF-DAD6-4A14-A545-354A75FE1B4F@arm.com>
Message-ID: <alpine.DEB.2.21.2104121724090.4885@sstabellini-ThinkPad-T480s>
References: <alpine.DEB.2.21.2101261435550.2568@sstabellini-ThinkPad-T480s> <80de3eb5-b338-af4e-42eb-d358f51d0bd7@xen.org> <alpine.DEB.2.21.2104061606080.31460@sstabellini-ThinkPad-T480s> <alpine.DEB.2.21.2104091714270.4885@sstabellini-ThinkPad-T480s>
 <A64881AF-DAD6-4A14-A545-354A75FE1B4F@arm.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-204089749-1618273661=:4885"

  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-204089749-1618273661=:4885
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Mon, 12 Apr 2021, Rahul Singh wrote:
> Hi Stefano,
> 
> > On 10 Apr 2021, at 1:27 am, Stefano Stabellini <sstabellini@kernel.org> wrote:
> >
> > On Tue, 6 Apr 2021, Stefano Stabellini wrote:
> >> On Mon, 5 Apr 2021, Julien Grall wrote:
> >>> On 26/01/2021 22:58, Stefano Stabellini wrote:
> >>>> Hi all,
> >>>
> >>> Hi Stefano,
> >>>
> >>>> This series introduces support for the generic SMMU bindings to
> >>>> xen/drivers/passthrough/arm/smmu.c.
> >>>>
> >>>> The last version of the series was
> >>>> https://marc.info/?l=xen-devel&m=159539053406643
> >>> Some changes in the SMMU drivers went in recently. I believe this touched
> >>> similar area to this series. Would you be able to check that this series still
> >>> work as intented?
> >>
> >> Thanks for the heads up, no, unfortunately they don't work :-(
> >>
> >> They badly clash. I did the forward port of the three patches but they
> >> fail at runtime in my tests. I ran out of time to figure out what is the
> >> problem, and I'll have to pick it up at some point in the future (it
> >> might not be any time soon unfortunately).
> >>
> >> Rahul, if you have any ideas about what the problem is please let me
> >> know. This is the branch with the forward port:
> >>
> >> http://xenbits.xenproject.org/git-http/people/sstabellini/xen-unstable.git smmu-generic
> >
> > I did some more investigation and spotted a minor error in my forward
> > port. This an updated branch based on staging:
> >
> > http://xenbits.xenproject.org/git-http/people/sstabellini/xen-unstable.git smmu-generic-2
> >
> > However, the real issue is that Rahul's patches break SMMU support on
> > ZynqMP even without my changes. I ran a bisection and found out that
> > patch #2 is the culprit:
> >
> > 5ee3fa0b21ea xen/arm: smmuv1: Consolidate stream map entry state
> >
> > It causes the abort appended below. The problem doesn't seem
> > particularly ZynqMP specific. Rahul, can you reproduce it on your side?
> 
> Yes. I can reproduce the issue on Xilinx QEMU as we don’t have access to physical ZynqMP and found out that
> associating an iommu group pointer with the S2CR causing the issue.
> 
> Associating the group pointer with S2CR is part of the patch "xen/arm: smmuv1: Intelligent SMR allocation”.
> 
> I just revert that part of the code from the patch and it works fine for me. Please find the attached patch for the same.
> 
> As per your analysis "5ee3fa0b21ea xen/arm: smmuv1: Consolidate stream map entry state” is causing the issue but what I found out that
> "xen/arm: smmuv1: Intelligent SMR allocation” is causing the issue.
> Can you please test it on the physical device and let me know if it works for you also to make sure we both observing the same issue.

Great! Yes, I can confirm that your patch fixed the issue, now I can
boot staging on ZynqMP without errors and I can do device assignment
too. Thank you so much!

The other good news is that the three "Generic SMMU Bindings" patches
work too on top of yours with the fix!

Is the patch you submitted the valid fix for the problem? In other words,
should we go ahead, review, and commit the patch you attached or do you
want to send a different version of the patch for inclusion in Xen
staging?
--8323329-204089749-1618273661=:4885--


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 02:32:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 02:32:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109477.208953 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW8qA-0006A4-Dc; Tue, 13 Apr 2021 02:31:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109477.208953; Tue, 13 Apr 2021 02: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 1lW8qA-00069w-5n; Tue, 13 Apr 2021 02:31:46 +0000
Received: by outflank-mailman (input) for mailman id 109477;
 Tue, 13 Apr 2021 02:31: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 1lW8q9-00069o-Br; Tue, 13 Apr 2021 02:31: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 1lW8q9-0000QN-1e; Tue, 13 Apr 2021 02:31: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 1lW8q8-0001jv-Pg; Tue, 13 Apr 2021 02:31:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lW8q8-000167-PA; Tue, 13 Apr 2021 02: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=xt7wqlg5c1kzwgymCo/ASdOWdwh7NsvM00Vh+3qoeM8=; b=wjE+AyZSg/bLyokPrpdFoTXEZ2
	3FgSAstOYErCxMlTKD/78nFSrhWI/XeiFcU5kyb9Gkilme/JWaHPeFh30PQ+DAGJPUpQMbW5blqxJ
	9kMC9lr43OJ8Tjn+i+eOEweD/Q2mhPCnnFtLhgn7RELpA/WvdBE6yfSOKWdQwQznDiFQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161048-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.14-testing test] 161048: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.14-testing:test-amd64-i386-libvirt-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:heisenbug
    xen-4.14-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=1ebc077a5608bd8eff7e6401696f16c9a266b73f
X-Osstest-Versions-That:
    xen=ddb39ba714257debb9b66936abb0dd3039e85abd
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 02:31:44 +0000

flight 161048 xen-4.14-testing real [real]
flight 161074 xen-4.14-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161048/
http://logs.test-lab.xenproject.org/osstest/logs/161074/

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 pass in 161074-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160156
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160156
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160156
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160156
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160156
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160156
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160156
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160156
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160156
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160156
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160156
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  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-amd64-amd64-libvirt-vhd 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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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                  1ebc077a5608bd8eff7e6401696f16c9a266b73f
baseline version:
 xen                  ddb39ba714257debb9b66936abb0dd3039e85abd

Last test of basis   160156  2021-03-20 17:17:05 Z   23 days
Testing same since   161048  2021-04-12 10:36:19 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ian Jackson <iwj@xenproject.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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   ddb39ba714..1ebc077a56  1ebc077a5608bd8eff7e6401696f16c9a266b73f -> stable-4.14


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 02:51:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 02:51:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109486.208978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW98n-00081b-2I; Tue, 13 Apr 2021 02:51:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109486.208978; Tue, 13 Apr 2021 02: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 1lW98m-00081U-V8; Tue, 13 Apr 2021 02:51:00 +0000
Received: by outflank-mailman (input) for mailman id 109486;
 Tue, 13 Apr 2021 02:50:59 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fw58=JK=intel.com=kevin.tian@srs-us1.protection.inumbo.net>)
 id 1lW98l-00081P-9i
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 02:50:59 +0000
Received: from mga03.intel.com (unknown [134.134.136.65])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 86646ee9-a042-4f36-9c22-e50692743dfe;
 Tue, 13 Apr 2021 02:50:57 +0000 (UTC)
Received: from fmsmga001.fm.intel.com ([10.253.24.23])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 12 Apr 2021 19:50:56 -0700
Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83])
 by fmsmga001.fm.intel.com with ESMTP; 12 Apr 2021 19:50:56 -0700
Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by
 fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Mon, 12 Apr 2021 19:50:55 -0700
Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by
 fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2
 via Frontend Transport; Mon, 12 Apr 2021 19:50:55 -0700
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.171)
 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.2106.2; Mon, 12 Apr 2021 19:50:54 -0700
Received: from MWHPR11MB1886.namprd11.prod.outlook.com (2603:10b6:300:110::9)
 by MWHPR1101MB2077.namprd11.prod.outlook.com (2603:10b6:301:4d::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Tue, 13 Apr
 2021 02:50:53 +0000
Received: from MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29]) by MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29%9]) with mapi id 15.20.4020.022; Tue, 13 Apr 2021
 02: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: 86646ee9-a042-4f36-9c22-e50692743dfe
IronPort-SDR: hMshuSyzHqQroRVH754JHoEH36ooXkVmuZ+4wjq2uorJ6M9e18AdGErqn/FvByb9+eKZ9aPCK6
 Pt3tUxaYvomQ==
X-IronPort-AV: E=McAfee;i="6200,9189,9952"; a="194356597"
X-IronPort-AV: E=Sophos;i="5.82,216,1613462400"; 
   d="scan'208";a="194356597"
IronPort-SDR: nvepX+Lgg7F1+f+VBzlMSgVQC6r09BQ+6jysYdL1e3elLOih83sF54Dx1iXfqu9IJlRlzGWfGR
 NdByr0yYE6PQ==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.82,216,1613462400"; 
   d="scan'208";a="521426483"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eqWQhaoCuHQYp9D8VXbTgH+hbYHemEXO57B59QbT0bmTNTEY0YNe3KHRZdFl2thviT0TRss5Yg0//hXYxJ2Tfgp33XrIfM9iOUzNYIu3KxvcGN32yBwxKEjzaAH0BueD3DnxYs2R7rcV3cr9Fb0zD9/wVD+81MFMPxcW9oo6P1AhG46vmP7EdVoShEQh30kiWgn0mrB0L7xxoPK4YqJkjz9N++PM8/NUMp1Qj3R5gz8QmC1vbiRsvLzViL0bmqgna08sO0BuAuP8nlbm5WACGmKrFYmciG9D0NiPolBkJp5bge5+F5brH7dSVREv+C7go8t6JxiIM2zhQr0S/nRWDw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yRiJ643IaEPt1qPQ/o8hyfQctbQCcM5ZudkYQ6CD3NQ=;
 b=F17WOzbZAIujnKoT6axYO+JAmyxTPc8hhkygoQCTIlPGGddHJv9rO5RMxsWEqtzXvCEhppOdCxmfzynzy/WK0L3HpvUXwl2LibHDDJGFb1exKarylgDycNFeNW7CTGsljefzEFvnrtz0V6B0g9FI2G9nmYEUC9phjCk6g+WsyM/0uqhOfVn2i5mJW8dSNBBk2OfYbOvKX7rhOwVkoSGfBCs80dvZy1Ka8a22FNm6laBOB5ZLY2uOtw73wg5BpjtDqu7Gs1dGpEipu0ayd6C7GQth96hXlzXBJwzfCKJ/74gA4mGRa2GggEF9V+z1PNkawuGKmK2a+VJ6y4KpnSw4Qg==
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
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com;
 s=selector2-intel-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yRiJ643IaEPt1qPQ/o8hyfQctbQCcM5ZudkYQ6CD3NQ=;
 b=vKEgmQdB+VVKEoLzHsVih5N6/TPFWELNX0FZuTZYlbNN6gbk67Wmql4GlRAKTOTd7hfgKgeSxh83WiyxEWglqWOa+M1ryGJFWAgTJBnTzokyH1jUuDXl1rjcYvK4jMb87ZEkbaQLpg+vg+wPAVQOM0cqFODIW++a5bAQL0B3z6M=
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: RE: [PATCH 0/6] VT-d: assorted cleanup
Thread-Topic: [PATCH 0/6] VT-d: assorted cleanup
Thread-Index: AQHXJtMI1W91eEd5aU6xoazbzHndx6qx0dlA
Date: Tue, 13 Apr 2021 02:50:53 +0000
Message-ID: <MWHPR11MB1886EAB303D0B63ADE2156498C4F9@MWHPR11MB1886.namprd11.prod.outlook.com>
References: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
In-Reply-To: <157e4a65-6d0b-7ea8-1c23-cd393c8c0d7f@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-version: 11.5.1.3
dlp-product: dlpe-windows
dlp-reaction: no-action
authentication-results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=intel.com;
x-originating-ip: [101.88.226.48]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 7d2fba6a-fe69-4f8c-0e31-08d8fe26f465
x-ms-traffictypediagnostic: MWHPR1101MB2077:
x-microsoft-antispam-prvs: <MWHPR1101MB2077D7DF08093E36FDC30BFA8C4F9@MWHPR1101MB2077.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:6790;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 0Iq3fA/3GbFTpvnUV8FkhHVr7KjhswYlNwDMjbhTGwslYgl/GGxXKTyhwpZl99AAroFAo6y+gfEcQmDz9eMY4Fk0L/h0MCx4/GmgHceISO0Qt17g9fxIoKdHugApAgsJaFM0n7IbxV1v2HwK5sgARZrbYlc4a+3MQ38Az9gAJtfpn2fYw1BSsjuwBLgVyZUZmValSMb1aW0SnSVNEEDTYux0l0BXNQCiX9bXBt5FWaL1ZYAvP/L88YI8MPe+uvkO3Ske7jJtxl9p66+ZX/7Kk1QGezdIyN0abR1CZqHz0GTd1aiOVQA6vmsBW0bY6Iknlf7qYGDmL7zmU5Z+fZoU2EyCC27m+cm7WWRDe1xXZToBqFqER8dvk6r4OQSBVDBtYUA7aNRTm35mgvzOx8tbIsicdvMzNalZOgLsBoGuBcCpzhw0tVxQ7uz6DUSJs3K1aD4MmH+xDAkRjwrPH5NvcSjDJhrIXzKYlvxJ8IEzitqqTgWkLiwdJWbCZX7XusNYJoXd11/tgInqc/XN8YIIGeBwjscdcSxHS8RW/vkmfxVq+jKX0yKF7lyjvKfVBMkFklScJ9JJ2vYSu86IFOn86qGCs/yUuJhZboLBYmJZcqs=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1886.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(376002)(366004)(136003)(396003)(39860400002)(110136005)(316002)(76116006)(71200400001)(83380400001)(122000001)(66946007)(2906002)(186003)(26005)(4744005)(8676002)(6506007)(52536014)(66446008)(66476007)(86362001)(66556008)(8936002)(38100700002)(7696005)(9686003)(5660300002)(55016002)(33656002)(478600001)(64756008);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata: 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
 =?utf-8?Q?uD+dF06I0GRn+4Mz7LbPM/TN5txvoiCXt0N7wQJ?=
x-ms-exchange-transport-forked: True
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: MWHPR11MB1886.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d2fba6a-fe69-4f8c-0e31-08d8fe26f465
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Apr 2021 02:50:53.4891
 (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: CRmNPwbwSWQbq/fiKDwQH4hxFG4Fd0/i2oKcURDL/KF/LXTMPLXUyOd7el9ojo6xnozhC4dL5IdpMpezftVnaQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1101MB2077
X-OriginatorOrg: intel.com

PiBGcm9tOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQo+IFNlbnQ6IFRodXJzZGF5
LCBBcHJpbCAxLCAyMDIxIDQ6NDMgUE0NCj4gDQo+IFRoaXMgaXMgZWZmZWN0aXZlbHkgdGhlIG90
aGVyICJoYWxmIiBvZiB3aGF0IHdhcyBzdWJtaXR0ZWQgYXMgNC4xNQ0KPiBjYW5kaWRhdGVzIGlu
ICJbUEFUQ0ggMC80XVs0LjE1P10gVlQtZDogbW9zdGx5IFMzIHJlbGF0ZWQgY29ycmVjdGlvbnMi
Lg0KPiANCj4gMTogaW1wcm92ZSBzYXZlL3Jlc3RvcmUgb2YgcmVnaXN0ZXJzIGFjcm9zcyBTMw0K
PiAyOiBkb24ndCBvcGVuLWNvZGUgZG1hcl9yZWFkbCgpDQo+IDM6IGJyaW5nIHByaW50X3FpX3Jl
Z3MoKSBpbiBsaW5lIHdpdGggcHJpbnRfaW9tbXVfcmVncygpDQo+IDQ6IHFpbnZhbCBpbmRleGVz
IGFyZSBvbmx5IHVwIHRvIDE5IGJpdHMgd2lkZQ0KPiA1OiBhdm9pZCBwb2ludGxlc3MgdXNlIG9m
IDY0LWJpdCBjb25zdGFudHMNCj4gNjogZHJvcCB1bnVzZWQgI2RlZmluZS1zDQo+IA0KPiBKYW4N
Cg0KRm9yIHRoZSB3aG9sZSBzZXJpZXM6DQoNClJldmlld2VkLWJ5OiBLZXZpbiBUaWFuIDxrZXZp
bi50aWFuQGludGVsLmNvbT4NCg==


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 02:52:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 02:52:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109492.208989 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lW9AR-00089O-H8; Tue, 13 Apr 2021 02:52:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109492.208989; Tue, 13 Apr 2021 02: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 1lW9AR-00089H-E0; Tue, 13 Apr 2021 02:52:43 +0000
Received: by outflank-mailman (input) for mailman id 109492;
 Tue, 13 Apr 2021 02:52:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fw58=JK=intel.com=kevin.tian@srs-us1.protection.inumbo.net>)
 id 1lW9AQ-00089C-5k
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 02:52:42 +0000
Received: from mga04.intel.com (unknown [192.55.52.120])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 571cc4fb-6fe5-4a41-8c75-f89ead5870b9;
 Tue, 13 Apr 2021 02:52:41 +0000 (UTC)
Received: from orsmga008.jf.intel.com ([10.7.209.65])
 by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 12 Apr 2021 19:52:40 -0700
Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17])
 by orsmga008.jf.intel.com with ESMTP; 12 Apr 2021 19:52:40 -0700
Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by
 ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Mon, 12 Apr 2021 19:52:39 -0700
Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by
 orsmsx602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2
 via Frontend Transport; Mon, 12 Apr 2021 19:52:39 -0700
Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.175)
 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.2106.2; Mon, 12 Apr 2021 19:52:39 -0700
Received: from MWHPR11MB1886.namprd11.prod.outlook.com (2603:10b6:300:110::9)
 by MWHPR11MB1663.namprd11.prod.outlook.com (2603:10b6:301:d::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Tue, 13 Apr
 2021 02:52:34 +0000
Received: from MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29]) by MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29%9]) with mapi id 15.20.4020.022; Tue, 13 Apr 2021
 02: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>
X-Inumbo-ID: 571cc4fb-6fe5-4a41-8c75-f89ead5870b9
IronPort-SDR: j1UZXAjbmp0lrETWFzRgE4xU9R/vKpk4D5/U7clvxfDjMjEWnqjqCtVTxszT6P906pqern+suf
 16OhZAxY1wuw==
X-IronPort-AV: E=McAfee;i="6200,9189,9952"; a="192194657"
X-IronPort-AV: E=Sophos;i="5.82,216,1613462400"; 
   d="scan'208";a="192194657"
IronPort-SDR: 05ZLCTlBQPW7/R2xxJ+3E4a4UAGCL9HR7k8eHy8ggOip3kuyBv/nOXVtHr0xOqWo1Zz2CRWAAr
 KyjYzzP1s1YA==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.82,216,1613462400"; 
   d="scan'208";a="424064572"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TUoVuXdkNTmILCdrH2WFaVjWHTT7fRPAJSsJFW86JusHIPfY+3H9/2J4EL11FxYNI7cRN2MBu4Q769KSwjguAF1hWcNnnbsioje74gf5TiWWOsnkZqYkY9J80Yln8BSmitT3M9HIzDU/Fbf+S7UAK76YxbfirAW8Q4Zen2XatQDofVEHA7X7fYHhX5n23TokmiNVQp6ic5fDXb80aTPrc6Glo9y9omzdJzckBX8oywu8ctcOA6wuvbpq1YCVJL3OLzQem/kpi/Sxdwkw8gJpSsuyDXf9gHiC2kk1ppkKG+ATEsHRF4HC1LVv75tVlaXRr6THTy1tn4rbD4oWECjrJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UsGR47VZ6LlNbIF+aGq5d+PZreWpD7X5loHU2IL/6Ts=;
 b=YM6Ph651NPxAdYoUx1/ckJhts6sG/xMkoQ7DVHaDXS+AiONWVoNlWD1s0QAf96mwmhxFdMq5pngRWdz5JVPNbaHHoQTDiL4B/LSGFUNtPCZJA6zwVSd0IRD1FP2LCcF2Tiko5QAaJi+dZKkwzsNCYf5PaT1+5py/B1T+OB03qQy5DTuZ+QA0P87usrgXdEUJQXxW42NFb9q5dgkDMLX7NlGGr+Tpq7mcxzt8fkwB+xz/g3nSH8kiKuShkmqF3+cfU3l+ioUHmV2rKmTLxWBfVBa4nT8yDmhyPIXQa8iX4I3WqikiknjcNRhDM47G2erA2qAbU4PjZjzEa7kg+TUgsw==
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
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com;
 s=selector2-intel-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UsGR47VZ6LlNbIF+aGq5d+PZreWpD7X5loHU2IL/6Ts=;
 b=qNCqda4ihdCwaJemk1zZUmR1ragmAZyNpN27sVWByza3N1vlFOrrdc2v32e9bOPSjTj/kTkGc9+pDklRKc2ML4FLzLWgLt+Vv1/x8t1XhLDaHURZr7sfFf7FSX4cNQWQMoxqWriuAX0zwncco0Q6yxN3EfO6jZ2wgYHINmzsoIQ=
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: "Nakajima, Jun" <jun.nakajima@intel.com>, "Cooper, Andrew"
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
Subject: RE: [PATCH] x86/EPT: minor local variable adjustment in
 ept_set_entry()
Thread-Topic: [PATCH] x86/EPT: minor local variable adjustment in
 ept_set_entry()
Thread-Index: AQHXL4+7dnXIvXPTUkGtk5FNTmUwKqqxwNuw
Date: Tue, 13 Apr 2021 02:52:33 +0000
Message-ID: <MWHPR11MB188634433DD490CFD73F347A8C4F9@MWHPR11MB1886.namprd11.prod.outlook.com>
References: <c682ec9a-c339-a929-1c91-c20bf53d9722@suse.com>
In-Reply-To: <c682ec9a-c339-a929-1c91-c20bf53d9722@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-version: 11.5.1.3
dlp-product: dlpe-windows
dlp-reaction: no-action
authentication-results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=intel.com;
x-originating-ip: [101.88.226.48]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 7e339e28-e40b-4ea3-a30f-08d8fe273049
x-ms-traffictypediagnostic: MWHPR11MB1663:
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MWHPR11MB1663DB2A28DE75137DE071368C4F9@MWHPR11MB1663.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:4941;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: ApTu/jmtUJnrodaOBok9qpkcw7Kqbrqs/sfyL0e+jao56wobqQb44BJD8ViJXHP6xN8BIQjQYHTlbiDr9HKLL1S4Se0kGMDTw8bZkSS5RlcrT4GQmSb7ZWRvZNnkQxc2r7hz58CgDe1Y3b9IYvLHbLiM2z96pKAKI5+MdopylUxjmXOgyP3+CRblU5fY2qWn7TTEQeyr9QaziD+0ivKJdDqwB2ZO+35y9H5TKt8/Xs/R3cb8zkt3q/Zeo+SxSed8O4nvai7l6XJK2MxWW68J9OrkN+6WXI51udEvIk29yKBTZACOwttA9jhu0fuMW5SinQzqvwfZaHjUeLT1bTUqG74CI8tFp8ZWUqlAP2PV0JE0ULZX5X41MfWEYtMfvXsCPTyLP5tuB6+mSR3l7l4o+fbTD2NZLuBB2zvQyfcZt4e7ba1bsnHIOiA4TwU1ZX6V44uRl60vNx/DjiKJ7ZRw12OfiGys+WA51t+l2RyGyP1TcXhmgJ6UwXtxC5paCr1Kr372mkkjYdn97Ga6Iefpqohn5Z2i6b41Msi+BGV9eYD98CAtEXX2b7IYtcYvm7WBSuGXP5AwGG9YbfvSMyBqyDp8cXvZ1dfAdqKg1y6tvio=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1886.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(396003)(39860400002)(376002)(136003)(346002)(366004)(8936002)(86362001)(8676002)(4326008)(110136005)(316002)(38100700002)(2906002)(33656002)(6506007)(478600001)(122000001)(9686003)(26005)(83380400001)(7696005)(55016002)(186003)(5660300002)(66446008)(54906003)(66476007)(64756008)(76116006)(66946007)(66556008)(71200400001)(52536014);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata: 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
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: MWHPR11MB1886.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7e339e28-e40b-4ea3-a30f-08d8fe273049
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Apr 2021 02:52:33.9037
 (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: qhfAM+MT7iN9WAk1p08ZaZll/2CO6Z96+z5myRz2B00qj54TDcvwxE/t9rc4EA6QqT/qM2h1i6n88bt/qET3eA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1663
X-OriginatorOrg: intel.com

PiBGcm9tOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQo+IFNlbnQ6IE1vbmRheSwg
QXByaWwgMTIsIDIwMjEgNzozNCBQTQ0KPiBOb3QgaGF2aW5nIGRpcmVjdF9tbWlvICh1c2VkIG9u
bHkgb25jZSBhbnl3YXkpIGFzIGEgbG9jYWwgdmFyaWFibGUgZ2V0cw0KPiB0aGUgZXB0ZV9nZXRf
ZW50cnlfZW10KCkgaW52b2NhdGlvbiBoZXJlIGluIGJldHRlciBzeW5jIHdpdGggdGhlIG90aGVy
DQo+IG9uZXMuIFdoaWxlIGF0IGl0IGFsc28gcmVkdWNlIGlwYXQncyBzY29wZS4NCj4gDQo+IFNp
Z25lZC1vZmYtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4NCg0KUmV2aWV3ZWQt
Ynk6IEtldmluIFRpYW4gPGtldmluLnRpYW5AaW50ZWwuY29tPg0KDQo+IA0KPiAtLS0gYS94ZW4v
YXJjaC94ODYvbW0vcDJtLWVwdC5jDQo+ICsrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMN
Cj4gQEAgLTY3Nyw4ICs2NzcsNiBAQCBlcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9tYWluICpw
Mm0sIGdmDQo+ICAgICAgdW5zaWduZWQgbG9uZyBmbl9tYXNrID0gIW1mbl9lcShtZm4sIElOVkFM
SURfTUZOKSA/IChnZm4gfA0KPiBtZm5feChtZm4pKSA6IGdmbjsNCj4gICAgICBpbnQgcmV0LCBy
YyA9IDA7DQo+ICAgICAgYm9vbF90IGVudHJ5X3dyaXR0ZW4gPSAwOw0KPiAtICAgIGJvb2xfdCBk
aXJlY3RfbW1pbyA9IChwMm10ID09IHAybV9tbWlvX2RpcmVjdCk7DQo+IC0gICAgdWludDhfdCBp
cGF0ID0gMDsNCj4gICAgICBib29sX3QgbmVlZF9tb2RpZnlfdnRkX3RhYmxlID0gMTsNCj4gICAg
ICBib29sX3QgdnRkX3B0ZV9wcmVzZW50ID0gMDsNCj4gICAgICB1bnNpZ25lZCBpbnQgaW9tbXVf
ZmxhZ3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIG1mbik7DQo+IEBAIC03OTAsOCArNzg4
LDEwIEBAIGVwdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwgZ2YNCj4gDQo+ICAg
ICAgaWYgKCBtZm5fdmFsaWQobWZuKSB8fCBwMm1fYWxsb3dzX2ludmFsaWRfbWZuKHAybXQpICkN
Cj4gICAgICB7DQo+ICsgICAgICAgIHVpbnQ4X3QgaXBhdCA9IDA7DQo+ICAgICAgICAgIGludCBl
bXQgPSBlcHRlX2dldF9lbnRyeV9lbXQocDJtLT5kb21haW4sIGdmbiwgbWZuLA0KPiAtICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgKiBFUFRfVEFCTEVfT1JERVIsICZpcGF0
LCBkaXJlY3RfbW1pbyk7DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aSAqIEVQVF9UQUJMRV9PUkRFUiwgJmlwYXQsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcDJtdCA9PSBwMm1fbW1pb19kaXJlY3QpOw0KPiANCj4gICAgICAgICAgaWYg
KCBlbXQgPj0gMCApDQo+ICAgICAgICAgICAgICBuZXdfZW50cnkuZW10ID0gZW10Ow0K


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 05:07:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 05:07:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109504.209014 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWBGm-0003FE-AW; Tue, 13 Apr 2021 05:07:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109504.209014; Tue, 13 Apr 2021 05: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 1lWBGm-0003F7-65; Tue, 13 Apr 2021 05:07:24 +0000
Received: by outflank-mailman (input) for mailman id 109504;
 Tue, 13 Apr 2021 05:07: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 1lWBGk-0003Ew-F6; Tue, 13 Apr 2021 05:07: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 1lWBGk-0003Sg-9C; Tue, 13 Apr 2021 05:07: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 1lWBGj-0001fr-OA; Tue, 13 Apr 2021 05:07:21 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWBGj-0000NE-KP; Tue, 13 Apr 2021 05: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=yxifNhUABIh/9TEIcLvi1vuZoWSod3yfiuF/heTPE6g=; b=4AZzFx2hqo32P0tHtvVpbbNtkv
	P8jOPekzrOsJvkezjrdo3+YGQ/qwEO1V3d7DVt7EXvHmVSN1DN/R5Qp5CynVwggjZnADLOCf8VGeW
	jAVZxG1HiBplf810/Llh7UlTlb/TP4K743htDzM4ozB5At7p235/fqXwypfJLRfn3GZU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161049-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 161049: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-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-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check: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-qemuu-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-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-vhd: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-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-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-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-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-cubietruck:saverestore-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-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=c86d8ec3b816cc1317d9cc2fb0817e59b5bc4cfa
X-Osstest-Versions-That:
    xen=e25aa9939ae0cd8317605be3d5c5611b76bc4ab4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 05:07:21 +0000

flight 161049 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161049/

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 160774
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160774
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160774
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160774
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160774
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160774
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160774
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160774
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160774
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160774
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160774
 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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-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-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  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-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  c86d8ec3b816cc1317d9cc2fb0817e59b5bc4cfa
baseline version:
 xen                  e25aa9939ae0cd8317605be3d5c5611b76bc4ab4

Last test of basis   160774  2021-04-06 17:17:31 Z    6 days
Testing same since   161049  2021-04-12 10:36:30 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ian Jackson <iwj@xenproject.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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   e25aa9939a..c86d8ec3b8  c86d8ec3b816cc1317d9cc2fb0817e59b5bc4cfa -> stable-4.15


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 05:13:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 05:13:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109515.209040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWBMm-0004C6-8J; Tue, 13 Apr 2021 05:13:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109515.209040; Tue, 13 Apr 2021 05:13: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 1lWBMm-0004Bz-51; Tue, 13 Apr 2021 05:13:36 +0000
Received: by outflank-mailman (input) for mailman id 109515;
 Tue, 13 Apr 2021 05:13: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 1lWBMl-0004Bo-8t; Tue, 13 Apr 2021 05:13:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lWBMl-0003ZE-2q; Tue, 13 Apr 2021 05:13: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 1lWBMk-0001sI-OG; Tue, 13 Apr 2021 05:13:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWBMk-0008KT-No; Tue, 13 Apr 2021 05:13: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=848p2unHaw8QSZbbNu8uTeKMfQsjlWAoCskV/feUL7Q=; b=EHXISgX1+8LjE44lhNJ4p5QSfb
	ek93NRBXJvBUoTdJ2d2a1Gr+6Qw4mvmLufMuB8fwUqgi4hZDPdRu9RvCpeLl8hHjkPZooAXA8Z+5B
	xnIjNzfE2YjQvpFWeOvSJj8wtuAiYCNtBBumHQCq9Wc8e2gcUgzRO9E1IIVgreZGJeME=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161054-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161054: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=2072c22a0d63c780b0cc6377f6d4ffb116ad6144
X-Osstest-Versions-That:
    ovmf=97336fdee4f9847e164639f06616ce1139ef9a15
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 05:13:34 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 2072c22a0d63c780b0cc6377f6d4ffb116ad6144
baseline version:
 ovmf                 97336fdee4f9847e164639f06616ce1139ef9a15

Last test of basis   161033  2021-04-12 02:41:06 Z    1 days
Testing same since   161054  2021-04-12 11:41:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abner Chang <abner.chang@hpe.com>
  Fan Wang <fan.wang@intel.com>
  Jason Lou <yun.lou@intel.com>
  Jiaxin Wu <jiaxin.wu@intel.com>
  Lou, Yun <Yun.Lou@intel.com>
  Siyuan Fu <siyuan.fu@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
   97336fdee4..2072c22a0d  2072c22a0d63c780b0cc6377f6d4ffb116ad6144 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 05:19:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 05:19:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109473.209057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWBRy-0004R5-Ud; Tue, 13 Apr 2021 05:18:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109473.209057; Tue, 13 Apr 2021 05: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 1lWBRy-0004Qy-Rh; Tue, 13 Apr 2021 05:18:58 +0000
Received: by outflank-mailman (input) for mailman id 109473;
 Tue, 13 Apr 2021 01:00:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=biUC=JK=byosoft.net=byomail@srs-us1.protection.inumbo.net>)
 id 1lW7Pe-0006bm-QE
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 01:00:18 +0000
Received: from regular1.263xmail.com (unknown [211.150.70.200])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c3f61924-4788-4730-b128-342b9c9eb904;
 Tue, 13 Apr 2021 01:00:16 +0000 (UTC)
Received: from localhost (unknown [192.168.167.69])
 by regular1.263xmail.com (Postfix) with ESMTP id 0C7AF1D8B
 for <xen-devel@lists.xenproject.org>; Tue, 13 Apr 2021 09:00:14 +0800 (CST)
Received: from mail.byosoft.com.cn (unknown [58.240.74.242])
 by smtp.263.net (postfix) whith ESMTP id
 P13167T139812237465344S1618275613190704_; 
 Tue, 13 Apr 2021 09:00:13 +0800 (CST)
Received: from DESKTOPS6D0PVI ([58.246.60.130])
 (envelope-sender <gaoliming@byosoft.com.cn>)
 by 192.168.6.13 with ESMTP
 for <anthony.perard@citrix.com>; Tue, 13 Apr 2021 08:58:59 +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
X-Inumbo-ID: c3f61924-4788-4730-b128-342b9c9eb904
X-MAIL-GRAY:0
X-MAIL-DELIVERY:1
X-ADDR-CHECKED4:1
X-ANTISPAM-LEVEL:2
X-SKE-CHECKED:1
X-ABS-CHECKED:1
X-IP-DOMAINF:1
X-UNIQUE-TAG:<590428c32a38e4c3ec9272e0c2a4b8da>
X-RL-SENDER:byomail@byosoft.net
X-SENDER:byomail@byosoft.net
X-LOGIN-NAME:byomail@byosoft.net
X-FST-TO:xen-devel@lists.xenproject.org
X-SENDER-IP:58.240.74.242
X-ATTACHMENT-NUM:0
X-System-Flag:0
X-WM-Sender: gaoliming@byosoft.com.cn
X-Originating-IP: 58.246.60.130
X-WM-AuthFlag: YES
X-WM-AuthUser: gaoliming@byosoft.com.cn
From: "gaoliming" <gaoliming@byosoft.com.cn>
To: <devel@edk2.groups.io>,
	<anthony.perard@citrix.com>
Cc: "'Laszlo Ersek'" <lersek@redhat.com>,
	"'Jordan Justen'" <jordan.l.justen@intel.com>,
	"'Ard Biesheuvel'" <ardb+tianocore@kernel.org>,
	<xen-devel@lists.xenproject.org>,
	"'Julien Grall'" <julien@xen.org>,
	"'Michael D Kinney'" <michael.d.kinney@intel.com>,
	"'Zhiguang Liu'" <zhiguang.liu@intel.com>,
	"'Liming Gao'" <liming.gao@intel.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com> <20210412133003.146438-3-anthony.perard@citrix.com>
In-Reply-To: <20210412133003.146438-3-anthony.perard@citrix.com>
Subject: =?gb2312?B?u9i4tDogW2VkazItZGV2ZWxdIFtQQVRDSCB2MyAyLzddIE1kZVBrZw==?=
	=?gb2312?B?OiBBbGxvdyBQY2RGU0JDbG9jayB0byBieSBEeW5hbWlj?=
Date: Tue, 13 Apr 2021 08:59:06 +0800
Message-ID: <00c601d73000$350a7510$9f1f5f30$@byosoft.com.cn>
MIME-Version: 1.0
Content-Type: text/plain;
	charset="gb2312"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQG017LAufWq6diCCV2Qgjs5xaxIuAJhiU9zquNEocA=
Content-Language: zh-cn
Sender: "gaoliming" <gaoliming@byosoft.com.cn>

Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>

> -----=D3=CA=BC=FE=D4=AD=BC=FE-----
> =B7=A2=BC=FE=C8=CB: devel@edk2.groups.io <devel@edk2.groups.io> =
=B4=FA=B1=ED Anthony
> PERARD via groups.io
> =B7=A2=CB=CD=CA=B1=BC=E4: 2021=C4=EA4=D4=C212=C8=D5 21:30
> =CA=D5=BC=FE=C8=CB: devel@edk2.groups.io
> =B3=AD=CB=CD: Laszlo Ersek <lersek@redhat.com>; Jordan Justen
> <jordan.l.justen@intel.com>; Ard Biesheuvel =
<ardb+tianocore@kernel.org>;
> xen-devel@lists.xenproject.org; Anthony PERARD
> <anthony.perard@citrix.com>; Julien Grall <julien@xen.org>; Michael D
> Kinney <michael.d.kinney@intel.com>; Liming Gao
> <gaoliming@byosoft.com.cn>; Zhiguang Liu <zhiguang.liu@intel.com>; =
Liming
> Gao <liming.gao@intel.com>
> =D6=F7=CC=E2: [edk2-devel] [PATCH v3 2/7] MdePkg: Allow PcdFSBClock to =
by
> Dynamic
>=20
> We are going to want to change the value of PcdFSBClock at run time in
> OvmfXen, so move it to the PcdsDynamic section.
>=20
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2490
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
> Reviewed-by: Liming Gao <liming.gao@intel.com>
> ---
>=20
> Notes:
>     CC: Michael D Kinney <michael.d.kinney@intel.com>
>     CC: Liming Gao <gaoliming@byosoft.com.cn>
>     CC: Zhiguang Liu <zhiguang.liu@intel.com>
>=20
>  MdePkg/MdePkg.dec | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>=20
> diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec
> index f4156920e599..8965e903e093 100644
> --- a/MdePkg/MdePkg.dec
> +++ b/MdePkg/MdePkg.dec
> @@ -2265,10 +2265,6 @@ [PcdsFixedAtBuild,PcdsPatchableInModule]
>    # @ValidList  0x80000001 | 8, 16, 32
>    gEfiMdePkgTokenSpaceGuid.PcdPort80DataWidth|8|UINT8|0x0000002d
>=20
> -  ## This value is used to configure X86 Processor FSB clock.
> -  # @Prompt FSB Clock.
> -
> gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000|UINT32|0x0000000c
> -
>    ## The maximum printable number of characters. UefLib functions:
> AsciiPrint(), AsciiErrorPrint(),
>    #  PrintXY(), AsciiPrintXY(), Print(), ErrorPrint() base on this =
PCD
value to
> print characters.
>    # @Prompt Maximum Printable Number of Characters.
> @@ -2372,5 +2368,9 @@ [PcdsFixedAtBuild, PcdsPatchableInModule,
> PcdsDynamic, PcdsDynamicEx]
>    # @Prompt Boot Timeout (s)
>=20
> gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0xffff|UINT16|0x0000
> 002c
>=20
> +  ## This value is used to configure X86 Processor FSB clock.
> +  # @Prompt FSB Clock.
> +
> gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000|UINT32|0x0000000c
> +
>  [UserExtensions.TianoCore."ExtraFiles"]
>    MdePkgExtra.uni
> --
> Anthony PERARD
>=20
>=20
>=20
> -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-
> Groups.io Links: You receive all messages sent to this group.
> View/Reply Online (#73954): =
https://edk2.groups.io/g/devel/message/73954
> Mute This Topic: https://groups.io/mt/82037830/4905953
> Group Owner: devel+owner@edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub
> [gaoliming@byosoft.com.cn]
> -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-
>=20







From xen-devel-bounces@lists.xenproject.org Tue Apr 13 06:14:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 06:14:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109530.209069 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWCJT-0001a2-Tj; Tue, 13 Apr 2021 06:14:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109530.209069; Tue, 13 Apr 2021 06: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 1lWCJT-0001Zv-Qo; Tue, 13 Apr 2021 06:14:15 +0000
Received: by outflank-mailman (input) for mailman id 109530;
 Tue, 13 Apr 2021 06:14:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=A51V=JK=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lWCJS-0001Zq-Kf
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 06:14:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 69600f72-3fe0-49ee-9de1-6e65d44c440a;
 Tue, 13 Apr 2021 06:14:13 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DBE20B139;
 Tue, 13 Apr 2021 06:14: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: 69600f72-3fe0-49ee-9de1-6e65d44c440a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618294453; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type;
	bh=FZE0rFfPoJlnGmQi0NAqD3f5YebsMx3Op8QIEC0YYU4=;
	b=bGQRRsT0x1i8jTZi/4bDAnyjXgn6+Y6qcZhNZSgFxNN8lrqVcUYIvmByaNY8nOvWERq+fR
	xo5JVtElCdwuHCaiDhys6RX/ztCnLExE3ji7fugAByueSeiPbvRCi0qFEqOwxRCrrXr+X4
	p1MfmS16BK+fiFaG4v/szuZER5BDLuA=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>
From: Juergen Gross <jgross@suse.com>
Subject: Support of old Xen versions in the Linux kernel
Message-ID: <1e4dc7c0-4364-1095-bb6b-c6341bc58e60@suse.com>
Date: Tue, 13 Apr 2021 08:14:12 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="XSZ8F7LiMmH4vrA4g4RtE7iOZYIZFrhRR"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--XSZ8F7LiMmH4vrA4g4RtE7iOZYIZFrhRR
Content-Type: multipart/mixed; boundary="MoozWMqqclU4lZO7TxvuQCJ3PeRXQmBzZ";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Message-ID: <1e4dc7c0-4364-1095-bb6b-c6341bc58e60@suse.com>
Subject: Support of old Xen versions in the Linux kernel

--MoozWMqqclU4lZO7TxvuQCJ3PeRXQmBzZ
Content-Type: multipart/mixed;
 boundary="------------1DE9F3693D3913834284AC39"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------1DE9F3693D3913834284AC39
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

In x86 kernel development the question came up whether we need to
support XENFEAT_gnttab_map_avail_bits not being set when running as a PV
guest.

This feature is active for PV guests since Xen 3.4.

So the basic question is: which is the oldest version of Xen we want to
support in the Linux kernel? As far as I know there is no Xen based
product in productive use with Xen older than 4.2.

Would we be fine to drop support for older versions (feel free to
suggest other versions than 4.2 as the first to be supported Xen
version)?

In case the answer is yes, I'd post some patches to clean up the kernel,
including a safety net to bail out in case a feature needed isn't
available.


Juergen

--------------1DE9F3693D3913834284AC39
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------1DE9F3693D3913834284AC39--

--MoozWMqqclU4lZO7TxvuQCJ3PeRXQmBzZ--

--XSZ8F7LiMmH4vrA4g4RtE7iOZYIZFrhRR
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmB1NrQFAwAAAAAACgkQsN6d1ii/Ey8D
EQf/eJl0JGvu7onEdr1apInuS+64axht8dmVf4g7lICkXdI5y7httwHEPC3zLbVQhp7eGwTTFsP6
aNyHhkgpNBKaO26zXdVGf2PZRUalNdf77YXZqHcQL//Gb/NBFKB4k+CSEid4pgqaIB5k9j2OUzBU
d+2QX6nR+rF1amb3IB86bxvUid8ON1xg3asPwEfKFDtrxilKZLGY39cgdLsxRypwYPqEAI5MLpid
oMsvzxzBaoIHLbchaq8j5Zu49a+wAfUxzIx49PXTDbopCSdjGRNEnp87KaExmPawBVod6ae0v9vh
5wp5GdyqMgpntmP51O/28DQ+ZoVdUPFjeCgSDmGO3g==
=XSe6
-----END PGP SIGNATURE-----

--XSZ8F7LiMmH4vrA4g4RtE7iOZYIZFrhRR--


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 06:41:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 06:41:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109539.209088 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWCkB-0004HO-4a; Tue, 13 Apr 2021 06:41:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109539.209088; Tue, 13 Apr 2021 06:41: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 1lWCkA-0004HH-Vs; Tue, 13 Apr 2021 06:41:50 +0000
Received: by outflank-mailman (input) for mailman id 109539;
 Tue, 13 Apr 2021 06:41: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 1lWCk9-0004H7-Oa; Tue, 13 Apr 2021 06:41: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 1lWCk9-00052X-Ez; Tue, 13 Apr 2021 06:41: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 1lWCk9-0005ia-8J; Tue, 13 Apr 2021 06:41:49 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWCk9-0007wc-7o; Tue, 13 Apr 2021 06:41: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=2Zxk9GRFOfpxBmzhT6DaZG/WbmAdYoLzp2Ya60bUAEc=; b=qsQ1qjd/fp9CBkeO/IcZh08VD/
	HjLvwjUiQNvScibChCnWenNYL5ztpOdOm1kYdjgntV+eOpKTN7cfgn07ch0A5TGZGCpi58t2GjVOp
	yYmDRIVzXmobp9nMUuYYk1gj985soJ/Ur0+msLYH7FPaWWpK0fyOS8T/sKNXa3FgxW2A=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161078-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161078: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=88e9f304028b3893ec8544cb1ea6e8a44542265f
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 06:41:49 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              88e9f304028b3893ec8544cb1ea6e8a44542265f
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  277 days
Failing since        151818  2020-07-11 04:18:52 Z  276 days  269 attempts
Testing same since   161078  2021-04-13 04:18:50 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 07:12:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 07:12:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109548.209102 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWDE6-00074K-Pg; Tue, 13 Apr 2021 07:12:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109548.209102; Tue, 13 Apr 2021 07:12:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWDE6-00074D-Mh; Tue, 13 Apr 2021 07:12:46 +0000
Received: by outflank-mailman (input) for mailman id 109548;
 Tue, 13 Apr 2021 07:12:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Zkz=JK=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lWDE4-000748-TJ
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 07:12:44 +0000
Received: from mail-wr1-x431.google.com (unknown [2a00:1450:4864:20::431])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6ab5835b-3399-456b-8633-ad8ffba81e7e;
 Tue, 13 Apr 2021 07:12:43 +0000 (UTC)
Received: by mail-wr1-x431.google.com with SMTP id a6so15318024wrw.8
 for <xen-devel@lists.xenproject.org>; Tue, 13 Apr 2021 00:12:43 -0700 (PDT)
Received: from [192.168.1.186]
 (host86-180-176-157.range86-180.btcentralplus.com. [86.180.176.157])
 by smtp.gmail.com with ESMTPSA id a7sm20623746wrn.50.2021.04.13.00.12.41
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 13 Apr 2021 00:12: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: 6ab5835b-3399-456b-8633-ad8ffba81e7e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=kZ7pRbfksbAsRyZaqanN7SMBLUMG4+C95SI0k9/0TBw=;
        b=Fk3f9q0kuQ6ar8P0an7whR7d7CldfWPQUWVT5Pb0qt2vTOprynBeUiIpwokoiRp7Y8
         vYqAud1UCSMRCEw4R9V/SIXgFXFO1F4QZCJh59Nxc1xwfm2ijx9QihE9qxZio4Xf+vg9
         zMA4k7GyDv4icl40xVo8XhN1glIKR9JPMZJvtNdflDOC/OxgaOApG3a+PdHnQy7NM5kJ
         CUM9wPL4xMSL9ZL2pFFrlshnvVFeRFrvvfwFzk/s2YBEd5Oe9l4JUzvw3QIHodpMc5hB
         8gk2fazC+ICPxE+uXJ8XKymYS8YH2YrOIL6gS7+tcScCI+MgbdSQ+wJWh0tXZR2DdaHl
         WK0A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=kZ7pRbfksbAsRyZaqanN7SMBLUMG4+C95SI0k9/0TBw=;
        b=RuLIWRgeE7XlZ7AN6izkjoQ81TYJHSi3CR4Iscd9xE0FuIfffayAechpSTtLf4EosX
         N9Vg9TMj1DylWpunZroViZ6ZN746C1KDh85q84tfldQ314shGdSZq6E37BLAE2LPzH99
         D9OXzNCwsr5traUzZveyoJmGNE8MQxL9EON3ab61MjL82sCoj0duFm5cAnbZM8wdfq6D
         4mXxtuDhOUFTw3LcF7fqzvJFmhPTjmjFGwDhKKkR7UHnnOK+C4s8Uk3pIR13EvSGr3jJ
         yKMMLVFnaScYH+G+6Ys46/LG6e0xm6UxkEIqINunaPG2hodnE9/u72bZ/vV9+gVc0vQT
         wfZA==
X-Gm-Message-State: AOAM533GCve332J4lrrwoTrY3lLYshD0jSf9D+zbEsOn7IszJCwMKZY+
	wo758MIzRUjqYNj02SuzPCc=
X-Google-Smtp-Source: ABdhPJwSF5KW1F6WT03735VShUEOmGDd3ZvOwIvdQSdaEjd5CGeJmnPMc4IrSX8WiQz5NmgQ/2EU9Q==
X-Received: by 2002:a5d:65d2:: with SMTP id e18mr34699836wrw.256.1618297962912;
        Tue, 13 Apr 2021 00:12:42 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: xen-netback hotplug-status regression bug
To: Michael Brown <mcb30@ipxe.org>, Wei Liu <wei.liu@kernel.org>,
 xen-devel@lists.xenproject.org, netdev@vger.kernel.org,
 Paul Durrant <pdurrant@amazon.com>
References: <afedd7cb-a291-e773-8b0d-4db9b291fa98@ipxe.org>
Message-ID: <f469cdee-f97e-da3f-bcab-0be9ed8cd836@xen.org>
Date: Tue, 13 Apr 2021 08:12:44 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <afedd7cb-a291-e773-8b0d-4db9b291fa98@ipxe.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 10/04/2021 19:25, Michael Brown wrote:
> Commit https://github.com/torvalds/linux/commit/1f25657 ("xen-netback: 
> remove 'hotplug-status' once it has served its purpose") seems to have 
> introduced a regression that prevents a vif frontend from transitioning 
> more than once into Connected state.
> 
> As far as I can tell:
> 
> - The defined vif script (e.g. /etc/xen/scripts/vif-bridge) executes 
> only once, at domU startup, and sets 
> backend/vif/<domU>/0/hotplug-status="connected"
> 
> - When the frontend first enters Connected state, 
> drivers/net/xen-netback/xenbus.c's connect() sets up a watch on 
> "hotplug-status" with the callback function hotplug_status_changed()
> 
> - When hotplug_status_changed() is triggered by the watch, it 
> transitions the backend to Connected state and calls xenbus_rm() to 
> delete the "hotplug-status" attribute.
> 
> If the frontend subsequently disconnects and reconnects (e.g. 
> transitions through Closed->Initialising->Connected) then:
> 
> - Nothing recreates "hotplug-status"
> 
> - When the frontend re-enters Connected state, connect() sets up a watch 
> on "hotplug-status" again
> 
> - The callback hotplug_status_changed() is never triggered, and so the 
> backend device never transitions to Connected state.
> 

That's not how I read it. Given that "hotplug-status" is removed by the 
call to hotplug_status_changed() then the next call to connect() should 
fail to register the watch and 'have_hotplug_status_watch' should be 0. 
Thus backend_switch_state() should not defer the transition to 
XenbusStateConnected in any subsequent interaction with the frontend.


> 
> Reverting the commit would fix this bug, but would obviously also 
> reintroduce the race condition that the commit was designed to avoid.
> 
> I'm happy to put together a patch, if one of the maintainers could 
> suggest a sensible design approach.
>

Are you seeing the watch successfully re-registered even though the node 
does not exist? Perhaps there has been a change in xenstore behaviour?

   Paul

> I'm not a list member, so please CC me directly on replies.
> 
> Thanks,
> 
> Michael



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 07:56:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 07:56:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109561.209121 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWDuF-0002nL-4O; Tue, 13 Apr 2021 07:56:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109561.209121; Tue, 13 Apr 2021 07:56: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 1lWDuF-0002nE-12; Tue, 13 Apr 2021 07:56:19 +0000
Received: by outflank-mailman (input) for mailman id 109561;
 Tue, 13 Apr 2021 07:56:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWDuD-0002n9-FQ
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 07:56:17 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fefe1c8e-8235-48c2-b790-508b002280a2;
 Tue, 13 Apr 2021 07:56: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: fefe1c8e-8235-48c2-b790-508b002280a2
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618300576;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ax30IPouvScOcAdY0LMXRoIU9QrWo5WiR8aZWZh0deA=;
  b=EXrY7I7chwb1HfaQd7hqdh5G2TiPqPOR0LMOH5nQD2Cn+bqDPxyK4kRe
   F6P8bZIhdhzCh6SWb7nhME7BCKv+Qz7871xou9n0eCVFHMtwU5C9BbK8Z
   /U6IYSlWQVraQGbx8QAFds43coqSGIcEZws6WEUDKtuH7C8lwR/hdyKIO
   c=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: DGog4gpGK4WYpLm+iR2kmFigFCiGkZzzMLDeQG2w4gAA5R9iHLghjTIjdoMYtKmwWMC0arZBwD
 Y52CjlEHHZhGG2A1F78SSCIpYEdnTpLuf1mstwxNYWrB4dhMp/IMgFrOv7398DZVBpDsqu7OB2
 XMq4qA3c0ArAlsYsBAKnKFI8PV8uui51NAbEYcwF/+7Vex3hLgkHXwGIhOODq4aaeyZ1zbjMpa
 3AO4fn0kb7IGpsnIV7GMSF5pqZAreuIIT0gCYww0gncSkdRykra7RxBppLmwwbuQCnFC1BpLga
 cDk=
X-SBRS: 5.1
X-MesageID: 41842108
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:vVv5z69NR3/NBZZLZl5uk+EKdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qH/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7H2vanrfAIcAFof4BSO5AnC1JfBDxOa0h0COgk/o4sKzG
 6tqW3Ez5Tmid6X4Fv212jf75NZ8eGRt+drNYi3peU+bhnpggasTox9V7OFpyBdmpDS1H8a1O
 Pijj1lE8Nv627AXmzdm2qT5yDQlAwAxlWn6ViEjWDtqcb0LQhKdfZptMZiXTbyr28D1esMt5
 5j7iaimLd8SS7kpmDb4ePFUhl7/3DE2kYKoKoooFF0FbcFZKQ5l/14wGplVK0uMQjd844dHO
 xnHKjnlYxrWGLfVXzfs2V1qebcJ0gbL1ODSkgGjMSfzyJbqnB/11cZ38wShB47heoAd6U=
X-IronPort-AV: E=Sophos;i="5.82,218,1613451600"; 
   d="scan'208";a="41842108"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XKkqZaLH6t2esF62lMTZWqRr++tHhb8lVTErHPeAITLF+QQZtq43e4/eBKLqZ6dIqtcqHOyWZM6Iu2S5tssXm5afZnANBo4bZ29e+C6zEPKphDbWSY9qf/5RU5JoRluV8rWWikNYY6FyXKj48xboAvUW0GzI0pVI+AFsgQe9DBn52Mhg2cVz9fSClfHw//gv2QUY27HWXKvhq4nK2T0Cq9MmFT/eDMohnASmUnLoJq9EZS2iJcZfn2/+mYE1b07KE67z5VpBWCeqdfsKAQbmtT3anthjatQM3KS9Xqkla8KUBxiMIYC5JkDnxJLwURsDyMfzDTXZ554C1xMBZVIa2A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qyqRmKG5k5nWuLCSI84600dJISVD7UlA3qm4sd+ob2w=;
 b=IQZU/tmjY0mwnnqW9pQgnwbWSTOr1imJqRi0EeOOmSxmXaSHTEU6vfKTN5vogmxXPTK7M6qpxL7G8h1vMjIIBUKkGWhrfh0gnZMRF58VdHmhThFgF4Xj69HA4yXzRimXe3hlX6O9bvQ3UVxcC9hB8N8RULLkEfsnUYnUdIhe6eLWaIj7QKplD9Skx7nVDQc5esN9QgbNr5v2ghw9aXmXC+RBidm//URJpvYW2JWMfflzIB1dx5fzRrM8AWzUWWsZTOzoY+1K0Uq0IdY5aHB+r3+V1oILkGx+/PCsHbhljPJdAKsyFNfOakEpqRDno3/otVAXvfXR2H0CUt/CAw1PCw==
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=qyqRmKG5k5nWuLCSI84600dJISVD7UlA3qm4sd+ob2w=;
 b=DRZsUC5UVOyyPh/IRj1KiBf8/hQ7JCPV9cFtLpbDJOy0ES84r8P/Z6jHFxc12gJsWdoJ7DugqpCkVUEdxvPPpsaxNZG70f+iDScx3cgbwFOAmLbVtcKMjN/XrCzhrKDSdi5nNotQIunmmHIn5y/Ed2AP3ClUdWwYcvoOGrUdYEs=
Date: Tue, 13 Apr 2021 09:56:04 +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/2] x86: correct is_pv_domain() when !CONFIG_PV
Message-ID: <YHVOlAj1l3wXsNd8@Air-de-Roger>
References: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
 <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
 <YHQUJw8H2tgNy5iY@Air-de-Roger>
 <169d6a5b-81ec-f347-8edc-60ba6ab0864f@suse.com>
 <YHReAkwZPnnh2itL@Air-de-Roger>
 <9571d2ac-e8ae-4105-5f92-0a81728f44d2@suse.com>
 <YHRqCh3zjUh1l2Kt@Air-de-Roger>
 <d8ea77cd-acab-c899-5bc2-416f4d784943@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <d8ea77cd-acab-c899-5bc2-416f4d784943@suse.com>
X-ClientProxiedBy: MRXP264CA0016.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::28) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f7037e0f-d20d-4df6-4867-08d8fe519a89
X-MS-TrafficTypeDiagnostic: DS7PR03MB5463:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5463FA01C22E9F0010A060228F4F9@DS7PR03MB5463.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: xDSH4WjTGS71w6RHSSt0RlhyguNSX4FypwDGyP0MOGSjlfNq/GTGCEmZN1caErN0TBl73Tw3P8Y0EBEZ2NYYLYpPeyFlczHV62U8GdCmlmCJGHtKZnSsTs34Loljbo4HaHnFTcGzICq7htIymEw+TD/+fCEFcydBKAT+47Y6Ep6xnCcZjBToJ0/u7f3Jd1eMH+8C5KhjyBYUwiQOCFF0AdANnniLgCJ5RUC5VBDAL/KjItbz9uTZrNptEzKvKA10wRqi3PBxL1MmcVUxIK0QX3hNBHGCdEfZkbdB2rpQM9fctPyLjbC1SjOrzX3nEK/07pZlswl0ZD/U8ox91JgINCcCXLtriU7rHpriHMRNtrTclU2m6g5X9IQzPTYzRVR/OeOibhaVQAXXxUYk8PBLqpJjVRx0kl/NUO/O+iBaaQdY2wvzFPZsSxDd02qH8OwMXJuQ2WvLKhkPCmr0EigEWZiI8/mUKBy4uEsViLDatAQ95xoFgLGjg6hlUNhQBnrFDErwBXOkZUHvqRvJWX/K/S3BjTDmAUvCli11Is4rD75mc9TA5RW6bHQliDOdUiKGX6D8c5dKBLXPd2mQAtawzC0Z7lVGkUGO+tGxyBYXUTE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(366004)(39860400002)(346002)(376002)(396003)(85182001)(9686003)(66556008)(8936002)(83380400001)(66476007)(478600001)(6496006)(33716001)(6486002)(38100700002)(6666004)(8676002)(54906003)(5660300002)(4326008)(6916009)(16526019)(53546011)(186003)(2906002)(66946007)(956004)(316002)(26005)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?F8ASsCGKPN9quv4OO/WNSpzYv8O3dIexXBpjfbz?=
X-MS-Exchange-CrossTenant-Network-Message-Id: f7037e0f-d20d-4df6-4867-08d8fe519a89
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 07:56:11.2564
 (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: 4AhwVb4CraK8uDxg2Xp+t72ZJT6pQud3YE+TkU6SGD2Ll3lapcrgtE5z4hVdcBwYiBuN26nw51zCJUUqHZr3hQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5463
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 05:51:17PM +0200, Jan Beulich wrote:
> On 12.04.2021 17:40, Roger Pau Monné wrote:
> > On Mon, Apr 12, 2021 at 05:24:41PM +0200, Jan Beulich wrote:
> >> On 12.04.2021 16:49, Roger Pau Monné wrote:
> >>> On Mon, Apr 12, 2021 at 12:07:12PM +0200, Jan Beulich wrote:
> >>>> On 12.04.2021 11:34, Roger Pau Monné wrote:
> >>>>> On Fri, Nov 27, 2020 at 05:54:57PM +0100, Jan Beulich wrote:
> >>>>>> --- a/xen/include/xen/sched.h
> >>>>>> +++ b/xen/include/xen/sched.h
> >>>>>> @@ -985,7 +985,7 @@ static always_inline bool is_control_dom
> >>>>>>  
> >>>>>>  static always_inline bool is_pv_domain(const struct domain *d)
> >>>>>>  {
> >>>>>> -    return IS_ENABLED(CONFIG_PV) &&
> >>>>>> +    return IS_ENABLED(CONFIG_X86) &&
> >>>>>>          evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
> >>>>>>  }
> >>>>>>  
> >>>>>> @@ -1011,7 +1011,7 @@ static always_inline bool is_pv_32bit_vc
> >>>>>>  
> >>>>>>  static always_inline bool is_pv_64bit_domain(const struct domain *d)
> >>>>>>  {
> >>>>>> -    if ( !is_pv_domain(d) )
> >>>>>> +    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
> >>>>>>          return false;
> >>>>>
> >>>>> I think overall is confusing to have a domain that returns true for
> >>>>> is_pv_domain but false for both is_pv_{64,32}bit_domain checks.
> >>>>>
> >>>>> I know those are only the system domains, but it feels confusing and
> >>>>> could cause mistakes in the future IMO, as then we would have to
> >>>>> carefully think where to use ( is_pv_64bit_domain(d)
> >>>>> || is_pv_32bit_domain(d) ) vs just using is_pv_domain(d), or
> >>>>> IS_ENABLED(CONFIG_PV) && is_pv_domain(d)
> >>>>
> >>>> Imo it's not "then we would have to carefully think where to use ..."
> >>>> but instead this patch is an indication that we should have been for
> >>>> quite some time. For this reason (coming back to your first comment
> >>>> at the top) I'm not sure adding a comment _there_ is actually useful.
> >>>> Every use of is_pv_*() needs carefully considering which domains are
> >>>> really meant.
> >>>
> >>> Maybe we shouldn't have used is_pv_domain as a way to hide code from
> >>> the compiler and instead always provide dummy functions, as even with
> >>> PV support compiled out we still need some of it for system domains.
> >>>
> >>> I'm not sure I have a good proposal to make, but it seems wrong to me
> >>> that is_pv_domain(d) could be different than is_pv_64bit_domain(d) ||
> >>> is_pv_32bit_domain(d).
> >>
> >> Hmm, so we're of opposite opinions - not sure what to do. Short of
> >> having / introducing is_system_domain() or some such (with all the
> >> needed auditing) I can't see how assuming the two would mean the
> >> same could ever have been true. With what we have is_pv_domain() is
> >> legitimately true for them, and both is_pv_{32,64}bit_domain() ought
> >> to be false (as there's no specific bitness associated with them)
> >> imo _at least_ when !PV.
> > 
> > It's all quite ugly, but I wasn't really getting your reasoning that
> > system domains can be considered PV domains without a bitness.
> > 
> > I think we both agree that long term having is_system_domain would be
> > the cleanest solution, but it needs a lot of auditing.
> 
> Yes.
> 
> > I think I would
> > be fine if you could add a comment somewhere noting that system
> > domains can be identified as PV domains without a bitness, so that
> > it's likely less confusing in the future.
> 
> I've added
> 
> /*
>  * Note that is_pv_domain() can return true (for system domains) even when
>  * both is_pv_64bit_domain() and is_pv_32bit_domain() return false. IOW
>  * system domains can be considered PV without specific bitness.
>  */
> 
> immediately ahead of is_pv_domain(). Does this sound okay?

Yes, I think the text is fine, I'm however confused by the resulting
code in is_pv_64bit_domain:

static always_inline bool is_pv_64bit_domain(const struct domain *d)
{
    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
        return false;

#ifdef CONFIG_PV32
    return !d->arch.pv.is_32bit;
#else
    return true;
#endif
}

Won't this return true for system domains if CONFIG_PV is enabled, and
hence the distinction that system domains are PV domain without a
bitness won't be true anymore?

Sorry if I'm missing something, I find this all quite confusing.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 08:02:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 08:02:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109567.209133 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWDzv-0004DT-0L; Tue, 13 Apr 2021 08:02:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109567.209133; Tue, 13 Apr 2021 08:02:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWDzu-0004DM-Sc; Tue, 13 Apr 2021 08:02:10 +0000
Received: by outflank-mailman (input) for mailman id 109567;
 Tue, 13 Apr 2021 08:02:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=XFwQ=JK=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWDzt-0004DH-1X
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 08:02:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1adc918b-44c0-4ec9-a6fc-c86bdd849678;
 Tue, 13 Apr 2021 08:02:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0688BAFF1;
 Tue, 13 Apr 2021 08:02: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: 1adc918b-44c0-4ec9-a6fc-c86bdd849678
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618300927; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Ws3AitnkP33gOehS8mX28CJsPnFALtZzUFn4afiRWXU=;
	b=ngb+1zQMd+el0UigfLPOG9Xz3MtScHCZ00O03e+9r+LJLGf40tYO8KN06Xfd86kQbDYpSF
	Mw8tHkxFu8hhg8zeDMWOLfypBNV2Nkqkiqdt1jfRJWBh18hjkjF3NG9SnZyg1l1b04vMfF
	H/fS6u4/GXGVTZNiHmhvQWP7H7sJgmI=
Subject: Re: [PATCH 1/2] x86: correct is_pv_domain() when !CONFIG_PV
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: <7c040eff-2746-59e3-b657-64f5df3c9085@suse.com>
 <54013074-1fc4-1047-0d00-2762fcbc9ade@suse.com>
 <YHQUJw8H2tgNy5iY@Air-de-Roger>
 <169d6a5b-81ec-f347-8edc-60ba6ab0864f@suse.com>
 <YHReAkwZPnnh2itL@Air-de-Roger>
 <9571d2ac-e8ae-4105-5f92-0a81728f44d2@suse.com>
 <YHRqCh3zjUh1l2Kt@Air-de-Roger>
 <d8ea77cd-acab-c899-5bc2-416f4d784943@suse.com>
 <YHVOlAj1l3wXsNd8@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a5f5b6e5-28e2-ff4d-81bf-a293b14eb216@suse.com>
Date: Tue, 13 Apr 2021 10:02:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHVOlAj1l3wXsNd8@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 13.04.2021 09:56, Roger Pau Monné wrote:
> On Mon, Apr 12, 2021 at 05:51:17PM +0200, Jan Beulich wrote:
>> On 12.04.2021 17:40, Roger Pau Monné wrote:
>>> On Mon, Apr 12, 2021 at 05:24:41PM +0200, Jan Beulich wrote:
>>>> On 12.04.2021 16:49, Roger Pau Monné wrote:
>>>>> On Mon, Apr 12, 2021 at 12:07:12PM +0200, Jan Beulich wrote:
>>>>>> On 12.04.2021 11:34, Roger Pau Monné wrote:
>>>>>>> On Fri, Nov 27, 2020 at 05:54:57PM +0100, Jan Beulich wrote:
>>>>>>>> --- a/xen/include/xen/sched.h
>>>>>>>> +++ b/xen/include/xen/sched.h
>>>>>>>> @@ -985,7 +985,7 @@ static always_inline bool is_control_dom
>>>>>>>>  
>>>>>>>>  static always_inline bool is_pv_domain(const struct domain *d)
>>>>>>>>  {
>>>>>>>> -    return IS_ENABLED(CONFIG_PV) &&
>>>>>>>> +    return IS_ENABLED(CONFIG_X86) &&
>>>>>>>>          evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
>>>>>>>>  }
>>>>>>>>  
>>>>>>>> @@ -1011,7 +1011,7 @@ static always_inline bool is_pv_32bit_vc
>>>>>>>>  
>>>>>>>>  static always_inline bool is_pv_64bit_domain(const struct domain *d)
>>>>>>>>  {
>>>>>>>> -    if ( !is_pv_domain(d) )
>>>>>>>> +    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
>>>>>>>>          return false;
>>>>>>>
>>>>>>> I think overall is confusing to have a domain that returns true for
>>>>>>> is_pv_domain but false for both is_pv_{64,32}bit_domain checks.
>>>>>>>
>>>>>>> I know those are only the system domains, but it feels confusing and
>>>>>>> could cause mistakes in the future IMO, as then we would have to
>>>>>>> carefully think where to use ( is_pv_64bit_domain(d)
>>>>>>> || is_pv_32bit_domain(d) ) vs just using is_pv_domain(d), or
>>>>>>> IS_ENABLED(CONFIG_PV) && is_pv_domain(d)
>>>>>>
>>>>>> Imo it's not "then we would have to carefully think where to use ..."
>>>>>> but instead this patch is an indication that we should have been for
>>>>>> quite some time. For this reason (coming back to your first comment
>>>>>> at the top) I'm not sure adding a comment _there_ is actually useful.
>>>>>> Every use of is_pv_*() needs carefully considering which domains are
>>>>>> really meant.
>>>>>
>>>>> Maybe we shouldn't have used is_pv_domain as a way to hide code from
>>>>> the compiler and instead always provide dummy functions, as even with
>>>>> PV support compiled out we still need some of it for system domains.
>>>>>
>>>>> I'm not sure I have a good proposal to make, but it seems wrong to me
>>>>> that is_pv_domain(d) could be different than is_pv_64bit_domain(d) ||
>>>>> is_pv_32bit_domain(d).
>>>>
>>>> Hmm, so we're of opposite opinions - not sure what to do. Short of
>>>> having / introducing is_system_domain() or some such (with all the
>>>> needed auditing) I can't see how assuming the two would mean the
>>>> same could ever have been true. With what we have is_pv_domain() is
>>>> legitimately true for them, and both is_pv_{32,64}bit_domain() ought
>>>> to be false (as there's no specific bitness associated with them)
>>>> imo _at least_ when !PV.
>>>
>>> It's all quite ugly, but I wasn't really getting your reasoning that
>>> system domains can be considered PV domains without a bitness.
>>>
>>> I think we both agree that long term having is_system_domain would be
>>> the cleanest solution, but it needs a lot of auditing.
>>
>> Yes.
>>
>>> I think I would
>>> be fine if you could add a comment somewhere noting that system
>>> domains can be identified as PV domains without a bitness, so that
>>> it's likely less confusing in the future.
>>
>> I've added
>>
>> /*
>>  * Note that is_pv_domain() can return true (for system domains) even when
>>  * both is_pv_64bit_domain() and is_pv_32bit_domain() return false. IOW
>>  * system domains can be considered PV without specific bitness.
>>  */
>>
>> immediately ahead of is_pv_domain(). Does this sound okay?
> 
> Yes, I think the text is fine, I'm however confused by the resulting
> code in is_pv_64bit_domain:
> 
> static always_inline bool is_pv_64bit_domain(const struct domain *d)
> {
>     if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
>         return false;
> 
> #ifdef CONFIG_PV32
>     return !d->arch.pv.is_32bit;
> #else
>     return true;
> #endif
> }
> 
> Won't this return true for system domains if CONFIG_PV is enabled, and
> hence the distinction that system domains are PV domain without a
> bitness won't be true anymore?
> 
> Sorry if I'm missing something, I find this all quite confusing.

Earlier I said "With what we have is_pv_domain() is legitimately true
for them, and both is_pv_{32,64}bit_domain() ought to be false (as
there's no specific bitness associated with them) imo _at least_ when
!PV." Note the emphasis on "at least". For the "normal" case (PV
enabled) I'm again uncertain we can easily change present behavior.
Hence the new comment also is worded such that this not fully
consistent behavior is still covered.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 08:09:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 08:09:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109572.209144 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWE6s-0004Rf-NB; Tue, 13 Apr 2021 08:09:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109572.209144; Tue, 13 Apr 2021 08:09:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWE6s-0004RY-KC; Tue, 13 Apr 2021 08:09:22 +0000
Received: by outflank-mailman (input) for mailman id 109572;
 Tue, 13 Apr 2021 08:09:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=XFwQ=JK=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWE6r-0004RT-8I
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 08:09:21 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a2e963ff-be95-4357-af5d-e1d620ff985e;
 Tue, 13 Apr 2021 08:09:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 719E3B0EA;
 Tue, 13 Apr 2021 08:09:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a2e963ff-be95-4357-af5d-e1d620ff985e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618301359; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=LHAvMnvNF4OK3/k9Ct4oNGcrGQrZqtQ6oj43xIDYCh4=;
	b=Xy+jXwWXYLbjxw1sOC/K9m9HrXZlDFTanD0r+jc/UvqP8MqN2BX4N+++G6PS9bM2qRINOW
	T9vmQpsXpXbi2E3rx/t9dMape3vbQPPW5ZPqEjbRX4MfebtyiYCFHCC/B/uczzHqdacXX8
	1X7ZSphCcpgyGoFg/+lraZvQv6rxXTY=
Subject: Re: [PATCH 3/3] xen-pciback: simplify vpci's find hook
To: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
 <e9f358bc-e957-e039-235c-6a9f68328554@oracle.com>
 <ea274ffe-4eee-9fa5-b5d1-e8528b112227@suse.com>
 <037a8fc2-2c69-2049-8826-32181b8aec2d@oracle.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e7686006-5f95-3216-60ff-daf1b1cbe8c4@suse.com>
Date: Tue, 13 Apr 2021 10:09:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <037a8fc2-2c69-2049-8826-32181b8aec2d@oracle.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 18:05, Boris Ostrovsky wrote:
> 
> On 4/12/21 5:50 AM, Jan Beulich wrote:
>> On 09.04.2021 23:45, Boris Ostrovsky wrote:
>>> On 4/7/21 10:37 AM, Jan Beulich wrote:
>>>> There's no point in comparing SBDF - we can simply compare the struct
>>>> pci_dev pointers. If they weren't the same for a given device, we'd have
>>>> bigger problems from having stored a stale pointer.
>>>>
>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>
>>> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
>> Thanks. As the 1st patch of this series still looks to have an unclear
>> disposition (unless not getting back a reply on my responses to your
>> comments means silent agreement),
> 
> 
> TBH I have been struggling with understanding both the original problem (just like you have) and the solution you are proposing (apart from making dev_list[] more compact).
> 
> 
>>  I can't predict yet when I'd be able
>> to submit v2. Hence I'd like to point out that this patch is
>> independent of the former two, and hence would need to wait further if
>> you wanted to apply it. After all this one (unlike the other two) is
>> merely cleanup, and hence would rather want to go in during a merge
>> window.
> 
> 
> Given that next Sunday may be when 5.12 is released I think everything but stoppers will have to wait for the merge window.

Oh, I didn't mean it this way. Instead I thought the 3rd patch here could
be pushed to Linus during the merge window, while the other two may be
fine to go his way also during early RCs of 5.13 (giving us some time to
sort what exactly we want to do).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 08:25:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 08:25:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109589.209193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWEM3-0006QA-JM; Tue, 13 Apr 2021 08:25:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109589.209193; Tue, 13 Apr 2021 08: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 1lWEM3-0006Q3-Fe; Tue, 13 Apr 2021 08:25:03 +0000
Received: by outflank-mailman (input) for mailman id 109589;
 Tue, 13 Apr 2021 08:25:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=RIKl=JK=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lWEM2-0006Py-HK
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 08:25:02 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 696707c9-5020-4923-9ba4-fa889a4c64ad;
 Tue, 13 Apr 2021 08:24:59 +0000 (UTC)
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 28ADF106F;
 Tue, 13 Apr 2021 01:24:59 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.30.107])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id DA1893F73B;
 Tue, 13 Apr 2021 01:24: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: 696707c9-5020-4923-9ba4-fa889a4c64ad
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com,
	wei.chen@arm.com
Subject: [PATCH] Remove support for ThumbEE
Date: Tue, 13 Apr 2021 10:24:47 +0200
Message-Id: <20210413082447.30313-1-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

ThumbEE(T32EE) was introduced in ARMv7 and removed in ARMv8.
In 2011 ARM deprecated any use of the ThumbEE instruction set.

This feature is untested and as per my understanding
there are no reported users for it.

Remove all the bits related to it.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/cpufeature.c        |  3 +++
 xen/arch/arm/domain.c            | 12 ------------
 xen/arch/arm/setup.c             |  3 +--
 xen/include/asm-arm/cpregs.h     |  6 ------
 xen/include/asm-arm/cpufeature.h |  1 -
 xen/include/asm-arm/domain.h     |  1 -
 6 files changed, 4 insertions(+), 22 deletions(-)

diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
index 1d88783809..82265a72f4 100644
--- a/xen/arch/arm/cpufeature.c
+++ b/xen/arch/arm/cpufeature.c
@@ -209,6 +209,9 @@ static int __init create_guest_cpuinfo(void)
     guest_cpuinfo.pfr32.ras = 0;
     guest_cpuinfo.pfr32.ras_frac = 0;
 
+    /* Hide ThumbEE support */
+    guest_cpuinfo.pfr32.thumbee = 0;
+
     return 0;
 }
 /*
diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index bdd3d3e5b5..d12903407f 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -116,12 +116,6 @@ static void ctxt_switch_from(struct vcpu *p)
     p->arch.cntkctl = READ_SYSREG32(CNTKCTL_EL1);
     virt_timer_save(p);
 
-    if ( is_32bit_domain(p->domain) && cpu_has_thumbee )
-    {
-        p->arch.teecr = READ_SYSREG32(TEECR32_EL1);
-        p->arch.teehbr = READ_SYSREG32(TEEHBR32_EL1);
-    }
-
 #ifdef CONFIG_ARM_32
     p->arch.joscr = READ_CP32(JOSCR);
     p->arch.jmcr = READ_CP32(JMCR);
@@ -255,12 +249,6 @@ static void ctxt_switch_to(struct vcpu *n)
     WRITE_SYSREG(n->arch.tpidrro_el0, TPIDRRO_EL0);
     WRITE_SYSREG(n->arch.tpidr_el1, TPIDR_EL1);
 
-    if ( is_32bit_domain(n->domain) && cpu_has_thumbee )
-    {
-        WRITE_SYSREG32(n->arch.teecr, TEECR32_EL1);
-        WRITE_SYSREG32(n->arch.teehbr, TEEHBR32_EL1);
-    }
-
 #ifdef CONFIG_ARM_32
     WRITE_CP32(n->arch.joscr, JOSCR);
     WRITE_CP32(n->arch.jmcr, JMCR);
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 9ba2f267f6..76841262e3 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -165,12 +165,11 @@ static void __init processor_id(void)
         printk("32-bit Execution:\n");
         printk("  Processor Features: %"PRIregister":%"PRIregister"\n",
                boot_cpu_data.pfr32.bits[0], boot_cpu_data.pfr32.bits[1]);
-        printk("    Instruction Sets:%s%s%s%s%s%s\n",
+        printk("    Instruction Sets:%s%s%s%s%s\n",
                cpu_has_aarch32 ? " AArch32" : "",
                cpu_has_arm ? " A32" : "",
                cpu_has_thumb ? " Thumb" : "",
                cpu_has_thumb2 ? " Thumb-2" : "",
-               cpu_has_thumbee ? " ThumbEE" : "",
                cpu_has_jazelle ? " Jazelle" : "");
         printk("    Extensions:%s%s\n",
                cpu_has_gentimer ? " GenericTimer" : "",
diff --git a/xen/include/asm-arm/cpregs.h b/xen/include/asm-arm/cpregs.h
index 6daf2b1a30..2966c21708 100644
--- a/xen/include/asm-arm/cpregs.h
+++ b/xen/include/asm-arm/cpregs.h
@@ -87,13 +87,9 @@
 #define DBGOSDLR        p14,0,c1,c3,4   /* OS Double Lock */
 #define DBGPRCR         p14,0,c1,c4,4   /* Debug Power Control Register */
 
-/* CP14 CR0: */
-#define TEECR           p14,6,c0,c0,0   /* ThumbEE Configuration Register */
-
 /* CP14 CR1: */
 #define DBGDRAR64       p14,0,c1        /* Debug ROM Address Register (64-bit access) */
 #define DBGDRAR         p14,0,c1,c0,0   /* Debug ROM Address Register (32-bit access) */
-#define TEEHBR          p14,6,c1,c0,0   /* ThumbEE Handler Base Register */
 #define JOSCR           p14,7,c1,c0,0   /* Jazelle OS Control Register */
 
 /* CP14 CR2: */
@@ -344,8 +340,6 @@
 #define SCTLR_EL1               SCTLR
 #define SCTLR_EL2               HSCTLR
 #define TCR_EL1                 TTBCR
-#define TEECR32_EL1             TEECR
-#define TEEHBR32_EL1            TEEHBR
 #define TPIDRRO_EL0             TPIDRURO
 #define TPIDR_EL0               TPIDRURW
 #define TPIDR_EL1               TPIDRPRW
diff --git a/xen/include/asm-arm/cpufeature.h b/xen/include/asm-arm/cpufeature.h
index ba48db3eac..f02ae8fde2 100644
--- a/xen/include/asm-arm/cpufeature.h
+++ b/xen/include/asm-arm/cpufeature.h
@@ -27,7 +27,6 @@
 #define cpu_has_thumb     (boot_cpu_feature32(thumb) >= 1)
 #define cpu_has_thumb2    (boot_cpu_feature32(thumb) >= 3)
 #define cpu_has_jazelle   (boot_cpu_feature32(jazelle) > 0)
-#define cpu_has_thumbee   (boot_cpu_feature32(thumbee) == 1)
 #define cpu_has_aarch32   (cpu_has_arm || cpu_has_thumb)
 
 #ifdef CONFIG_ARM_32
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 1da90f207d..d5080a6df6 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -167,7 +167,6 @@ struct arch_vcpu
     /* HYP configuration */
     register_t hcr_el2;
 
-    uint32_t teecr, teehbr; /* ThumbEE, 32-bit guests only */
 #ifdef CONFIG_ARM_32
     /*
      * ARMv8 only supports a trivial implementation on Jazelle when in AArch32
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 09:08:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 09:08:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109598.209214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWF1I-0001ds-1j; Tue, 13 Apr 2021 09:07:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109598.209214; Tue, 13 Apr 2021 09:07: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 1lWF1H-0001dl-Un; Tue, 13 Apr 2021 09:07:39 +0000
Received: by outflank-mailman (input) for mailman id 109598;
 Tue, 13 Apr 2021 09:07: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 1lWF1G-0001dg-6J
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 09:07: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 1lWF1F-00080r-4a; Tue, 13 Apr 2021 09:07:37 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWF1E-0006PF-S7; Tue, 13 Apr 2021 09:07:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=SnRaJlUhpLjGwpHoUNF1BhChmVspLX+FOUGiLu57eTs=; b=UchJwUA2e77QMBNfIbft1I9Q8J
	Bi5Y8ab7nDUpo5ClC9f4E70nsGc4acdWnwd2EMEn+/FVo5wZOTckZ3hluV70woiJekw3eLyO4azYb
	OSDSVDV/m9qXXI8+9N03bg8jPCrHLgWgku8jup0X4srz0MmzU711O2xr5Q2pw97LjSsA=;
Subject: Re: [PATCH] Remove support for ThumbEE
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com,
 wei.chen@arm.com
References: <20210413082447.30313-1-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <1c3d1c69-976c-6626-74e7-ded112f6ed03@xen.org>
Date: Tue, 13 Apr 2021 10:07:34 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210413082447.30313-1-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 13/04/2021 09:24, Michal Orzel wrote:
> ThumbEE(T32EE) was introduced in ARMv7 and removed in ARMv8.
> In 2011 ARM deprecated any use of the ThumbEE instruction set.

This doesn't mean this is not present in any CPU. In fact, in the same 
section (see A2.10 in ARM DDI 0406C.d):

"ThumbEE is both the name of the instruction set and the name of the 
extension that provides support for that
instruction set. The ThumbEE Extension is:
   - Required in implementations of the ARMv7-A profile.
   - Optional in implementations of the ARMv7-R profile.
"

> 
> This feature is untested and as per my understanding
> there are no reported users for it. >
> Remove all the bits related to it.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com> > ---
>   xen/arch/arm/cpufeature.c        |  3 +++
>   xen/arch/arm/domain.c            | 12 ------------
>   xen/arch/arm/setup.c             |  3 +--
>   xen/include/asm-arm/cpregs.h     |  6 ------
>   xen/include/asm-arm/cpufeature.h |  1 -
>   xen/include/asm-arm/domain.h     |  1 -
>   6 files changed, 4 insertions(+), 22 deletions(-)
> 
> diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
> index 1d88783809..82265a72f4 100644
> --- a/xen/arch/arm/cpufeature.c
> +++ b/xen/arch/arm/cpufeature.c
> @@ -209,6 +209,9 @@ static int __init create_guest_cpuinfo(void)
>       guest_cpuinfo.pfr32.ras = 0;
>       guest_cpuinfo.pfr32.ras_frac = 0;
>   
> +    /* Hide ThumbEE support */
> +    guest_cpuinfo.pfr32.thumbee = 0;

Even if you hide the feature from the guest, the registers are still 
accessible. So you are not removing support but just opening a potential 
security hole as the registers now gets shared...

Looking at the spec, it doesn't look like it is possible to trap them.

In any case, the number of registers to save/restore is pretty limited. 
So I don't see the problem to keep the code around. It doesn't mean the 
feature is working, it just means we properly keep the domain isolated 
from each other.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 09:24:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 09:24:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109604.209228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFHI-0003Ob-CB; Tue, 13 Apr 2021 09:24:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109604.209228; Tue, 13 Apr 2021 09: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 1lWFHI-0003OU-8x; Tue, 13 Apr 2021 09:24:12 +0000
Received: by outflank-mailman (input) for mailman id 109604;
 Tue, 13 Apr 2021 09:24:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=XFwQ=JK=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWFHG-0003OO-UJ
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 09:24:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f9911ded-f39a-4bf6-a234-252def82cb15;
 Tue, 13 Apr 2021 09:24:09 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id ECAD9AF0D;
 Tue, 13 Apr 2021 09:24: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: f9911ded-f39a-4bf6-a234-252def82cb15
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618305849; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0JyzQT29QISH1n2na2do1XSDb0Bj3BwcVDJrbVg7+zo=;
	b=j0sTeKWFOS/ctbjv1DJD3oxq5NHFWsQy5Dz4csHgGQMerAyk0wESxHS7QrMFICD54wkktY
	/edukcNjcIIduBti1iDW2BCZZsan+J7tfzgITIshs5hgnYPYEOyyvsVoQlULlp+0hq8iO/
	qgyEb6oTSxvtdfbTmY7ygEZqTZSgWtA=
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
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>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
 <YHRnvQvWJ7QsXVgX@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c07396f2-b0c5-092b-4e3e-5f452c453e56@suse.com>
Date: Tue, 13 Apr 2021 11:24:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHRnvQvWJ7QsXVgX@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 12.04.2021 17:31, Roger Pau Monné wrote:
> On Mon, Apr 12, 2021 at 12:40:48PM +0200, Jan Beulich wrote:
>> The address of this page is used by the CPU only to recognize when to
>> access the virtual APIC page instead. No accesses would ever go to this
>> page. It only needs to be present in the (CPU) page tables so that
>> address translation will produce its address as result for respective
>> accesses.
>>
>> By making this page global, we also eliminate the need to refcount it,
>> or to assign it to any domain in the first place.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> Reviewed-by: Kevin Tian <kevin.tian@intel.com>
>> ---
>> v4: Set PGC_extra on the page. Make shadow mode work.
>> v3: Split p2m insertion change to a separate patch.
>> v2: Avoid insertion when !has_vlapic(). Split off change to
>>     p2m_get_iommu_flags().
>> ---
>> I did further consider not allocating any real page at all, but just
>> using the address of some unpopulated space (which would require
>> announcing this page as reserved to Dom0, so it wouldn't put any PCI
>> MMIO BARs there). But I thought this would be too controversial, because
>> of the possible risks associated with this.
> 
> Really seems more trouble than reward. Also there are systems with
> MMIO regions in holes on the memory map, like the issue I had with the
> Intel pinctrl stuff that had an MMIO region in a hole on the memory
> map [0], so I'm not sure Xen would be in a position to select a
> suitable unpopulated page anyway.
> 
> [0] https://lore.kernel.org/xen-devel/YFx80wYt%2FKcHanC7@smile.fi.intel.com/

Yeah, I had seen that. What I'm having trouble to understand is how the
OS will know to avoid that range for e.g. placing BARs.

>> @@ -411,28 +411,22 @@ static int vmx_domain_initialise(struct
>>       */
>>      d->arch.hvm.vmx.exec_sp = is_hardware_domain(d) || opt_ept_exec_sp;
>>  
>> -    if ( !has_vlapic(d) )
>> -        return 0;
>> -
>> -    if ( (rc = vmx_alloc_vlapic_mapping(d)) != 0 )
>> -        return rc;
>> -
>>      return 0;
>>  }
>>  
>> -static void vmx_domain_relinquish_resources(struct domain *d)
>> +static void domain_creation_finished(struct domain *d)
>>  {
>> -    if ( !has_vlapic(d) )
>> +    gfn_t gfn = gaddr_to_gfn(APIC_DEFAULT_PHYS_BASE);
> 
> Worth making it const static?

The compiler ought to be able to fold this into a suitable constant
at the use site. Definitely not static imo, and I see little point
in making a local variable const, unless one really wants to
document something very special.

>> +    uint8_t ipat;
>> +
>> +    if ( !has_vlapic(d) || mfn_eq(apic_access_mfn, _mfn(0)) )
> 
> It would be better to use INVALID_MFN here, and init apic_access_mfn
> to that value.

Oh, yes, that's easier possible now that the variable is static.

>> --- a/xen/arch/x86/mm/shadow/set.c
>> +++ b/xen/arch/x86/mm/shadow/set.c
>> @@ -94,6 +94,22 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
>>      ASSERT(!sh_l1e_is_magic(sl1e));
>>      ASSERT(shadow_mode_refcounts(d));
>>  
>> +    /*
>> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
>> +     * get accessed, and hence there's no need to refcount it (and refcounting
>> +     * would fail, due to the page having no owner).
>> +     */
>> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
> 
> I find this assignment inside the parameter list quite ugly, I would
> rather split it on it's own line.

Well, okay. To be honest I'm not even sure why I did it this way, as
I could have expected a respective comment.

>> +    {
>> +        const struct page_info *pg = mfn_to_page(mfn);
>> +
>> +        if ( !page_get_owner(pg) && (pg->count_info & PGC_extra) )
>> +        {
>> +            ASSERT(type == p2m_mmio_direct);
>> +            return 0;
> 
> Are there any other pages that could pass this check? I don't think
> so, but wanted to assert.

"Normal" extra pages have an owner, so no, there aren't any others.
If and when any appear, this may need further customizing, albeit
generally I'd hope further pages matching this pattern would also
want similar treatment.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 09:32:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 09:32:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109611.209240 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFPa-0004Ln-6V; Tue, 13 Apr 2021 09:32:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109611.209240; Tue, 13 Apr 2021 09: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 1lWFPa-0004Lg-3R; Tue, 13 Apr 2021 09:32:46 +0000
Received: by outflank-mailman (input) for mailman id 109611;
 Tue, 13 Apr 2021 09:32:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=RIKl=JK=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lWFPZ-0004Lb-Hn
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 09:32:45 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 6a3a0dc4-c136-44c6-b875-3ad6cd0a2d56;
 Tue, 13 Apr 2021 09:32:44 +0000 (UTC)
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 DAF50106F;
 Tue, 13 Apr 2021 02:32:43 -0700 (PDT)
Received: from [10.57.30.107] (unknown [10.57.30.107])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C9BAA3F73B;
 Tue, 13 Apr 2021 02:32: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: 6a3a0dc4-c136-44c6-b875-3ad6cd0a2d56
Subject: Re: [PATCH] Remove support for ThumbEE
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com,
 wei.chen@arm.com
References: <20210413082447.30313-1-michal.orzel@arm.com>
 <1c3d1c69-976c-6626-74e7-ded112f6ed03@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <83218c74-3d71-6165-31a3-1f6c77b95f94@arm.com>
Date: Tue, 13 Apr 2021 11:32:36 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <1c3d1c69-976c-6626-74e7-ded112f6ed03@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Julien,

On 13.04.2021 11:07, Julien Grall wrote:
> Hi Michal,
> 
> On 13/04/2021 09:24, Michal Orzel wrote:
>> ThumbEE(T32EE) was introduced in ARMv7 and removed in ARMv8.
>> In 2011 ARM deprecated any use of the ThumbEE instruction set.
> 
> This doesn't mean this is not present in any CPU. In fact, in the same section (see A2.10 in ARM DDI 0406C.d):
> 
> "ThumbEE is both the name of the instruction set and the name of the extension that provides support for that
> instruction set. The ThumbEE Extension is:
>   - Required in implementations of the ARMv7-A profile.
>   - Optional in implementations of the ARMv7-R profile.
> "
> 
>>
>> This feature is untested and as per my understanding
>> there are no reported users for it. >
>> Remove all the bits related to it.
>>
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com> > ---
>>   xen/arch/arm/cpufeature.c        |  3 +++
>>   xen/arch/arm/domain.c            | 12 ------------
>>   xen/arch/arm/setup.c             |  3 +--
>>   xen/include/asm-arm/cpregs.h     |  6 ------
>>   xen/include/asm-arm/cpufeature.h |  1 -
>>   xen/include/asm-arm/domain.h     |  1 -
>>   6 files changed, 4 insertions(+), 22 deletions(-)
>>
>> diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
>> index 1d88783809..82265a72f4 100644
>> --- a/xen/arch/arm/cpufeature.c
>> +++ b/xen/arch/arm/cpufeature.c
>> @@ -209,6 +209,9 @@ static int __init create_guest_cpuinfo(void)
>>       guest_cpuinfo.pfr32.ras = 0;
>>       guest_cpuinfo.pfr32.ras_frac = 0;
>>   +    /* Hide ThumbEE support */
>> +    guest_cpuinfo.pfr32.thumbee = 0;
> 
> Even if you hide the feature from the guest, the registers are still accessible. So you are not removing support but just opening a potential security hole as the registers now gets shared...
> 
> Looking at the spec, it doesn't look like it is possible to trap them.
Looking at the spec for ARMv7A/R:
https://developer.arm.com/documentation/ddi0406/c/System-Level-Architecture/System-Control-Registers-in-a-VMSA-implementation/VMSA-System-control-registers-descriptions--in-register-order/HSTR--Hyp-System-Trap-Register--Virtualization-Extensions
we can trap Thumbee operations.
This means that we will not open the security hole.

> 
> In any case, the number of registers to save/restore is pretty limited. So I don't see the problem to keep the code around. It doesn't mean the feature is working, it just means we properly keep the domain isolated from each other.
> 
> Cheers,
> 

Cheers,
Michal


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 09:42:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 09:42:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109615.209253 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFYx-0005JR-56; Tue, 13 Apr 2021 09:42:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109615.209253; Tue, 13 Apr 2021 09:42: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 1lWFYx-0005JK-1P; Tue, 13 Apr 2021 09:42:27 +0000
Received: by outflank-mailman (input) for mailman id 109615;
 Tue, 13 Apr 2021 09:42: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 1lWFYw-0005JF-1B
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 09:42: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 1lWFYv-00009Q-4L; Tue, 13 Apr 2021 09:42:25 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWFYu-0002Bz-SW; Tue, 13 Apr 2021 09:42: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=/7xHAjHttr8A85YaYdHQxaP6UMSrn9K3+UkEAXmybXM=; b=uvJbJzHaiT7ta2hOGBVMh9s6X3
	0vBGCILMlwFrN0HktHrw6LJzpiNikygmAKbLPNpsj/AsMJHRNAYUFg0qgSnlKw5yNH0eLijKwx6Wd
	HLs/NudTwVTZgYLUn1xEt4usO/ZfSodKXftb/Lc/cAhZI1hwItolKoit5Hv6s+0dmPQc=;
Subject: Re: [PATCH] Remove support for ThumbEE
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com,
 wei.chen@arm.com
References: <20210413082447.30313-1-michal.orzel@arm.com>
 <1c3d1c69-976c-6626-74e7-ded112f6ed03@xen.org>
 <83218c74-3d71-6165-31a3-1f6c77b95f94@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <693507bd-5640-dd2a-3e37-9f8ea7da1a53@xen.org>
Date: Tue, 13 Apr 2021 10:42:23 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <83218c74-3d71-6165-31a3-1f6c77b95f94@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 13/04/2021 10:32, Michal Orzel wrote:
> Hi Julien,
> 
> On 13.04.2021 11:07, Julien Grall wrote:
>> Hi Michal,
>>
>> On 13/04/2021 09:24, Michal Orzel wrote:
>>> ThumbEE(T32EE) was introduced in ARMv7 and removed in ARMv8.
>>> In 2011 ARM deprecated any use of the ThumbEE instruction set.
>>
>> This doesn't mean this is not present in any CPU. In fact, in the same section (see A2.10 in ARM DDI 0406C.d):
>>
>> "ThumbEE is both the name of the instruction set and the name of the extension that provides support for that
>> instruction set. The ThumbEE Extension is:
>>    - Required in implementations of the ARMv7-A profile.
>>    - Optional in implementations of the ARMv7-R profile.
>> "
>>
>>>
>>> This feature is untested and as per my understanding
>>> there are no reported users for it. >
>>> Remove all the bits related to it.
>>>
>>> Signed-off-by: Michal Orzel <michal.orzel@arm.com> > ---
>>>    xen/arch/arm/cpufeature.c        |  3 +++
>>>    xen/arch/arm/domain.c            | 12 ------------
>>>    xen/arch/arm/setup.c             |  3 +--
>>>    xen/include/asm-arm/cpregs.h     |  6 ------
>>>    xen/include/asm-arm/cpufeature.h |  1 -
>>>    xen/include/asm-arm/domain.h     |  1 -
>>>    6 files changed, 4 insertions(+), 22 deletions(-)
>>>
>>> diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
>>> index 1d88783809..82265a72f4 100644
>>> --- a/xen/arch/arm/cpufeature.c
>>> +++ b/xen/arch/arm/cpufeature.c
>>> @@ -209,6 +209,9 @@ static int __init create_guest_cpuinfo(void)
>>>        guest_cpuinfo.pfr32.ras = 0;
>>>        guest_cpuinfo.pfr32.ras_frac = 0;
>>>    +    /* Hide ThumbEE support */
>>> +    guest_cpuinfo.pfr32.thumbee = 0;
>>
>> Even if you hide the feature from the guest, the registers are still accessible. So you are not removing support but just opening a potential security hole as the registers now gets shared...
>>
>> Looking at the spec, it doesn't look like it is possible to trap them.
> Looking at the spec for ARMv7A/R:
> https://developer.arm.com/documentation/ddi0406/c/System-Level-Architecture/System-Control-Registers-in-a-VMSA-implementation/VMSA-System-control-registers-descriptions--in-register-order/HSTR--Hyp-System-Trap-Register--Virtualization-Extensions
> we can trap Thumbee operations.
> This means that we will not open the security hole.

That's for pointing that out. However, I am not still not sure why you 
want to drop the code. Yes this is technically untested, but:
   1) The change is very small
   2) There are CPU out there supporting it (it is mandated after all).

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 09:59:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 09:59:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109622.209280 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFpk-0006S1-1v; Tue, 13 Apr 2021 09:59:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109622.209280; Tue, 13 Apr 2021 09:59: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 1lWFpj-0006Rr-V6; Tue, 13 Apr 2021 09:59:47 +0000
Received: by outflank-mailman (input) for mailman id 109622;
 Tue, 13 Apr 2021 09:59:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=RIKl=JK=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lWFpj-0006Rf-J7
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 09:59:47 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 94ed2a37-8469-46b6-aca4-9833297b4b1a;
 Tue, 13 Apr 2021 09:59:45 +0000 (UTC)
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 82773106F;
 Tue, 13 Apr 2021 02:59:45 -0700 (PDT)
Received: from [10.57.30.107] (unknown [10.57.30.107])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6D0EB3F73B;
 Tue, 13 Apr 2021 02:59: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: 94ed2a37-8469-46b6-aca4-9833297b4b1a
Subject: Re: [PATCH] Remove support for ThumbEE
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com,
 wei.chen@arm.com
References: <20210413082447.30313-1-michal.orzel@arm.com>
 <1c3d1c69-976c-6626-74e7-ded112f6ed03@xen.org>
 <83218c74-3d71-6165-31a3-1f6c77b95f94@arm.com>
 <693507bd-5640-dd2a-3e37-9f8ea7da1a53@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <616b27e4-8882-d577-188d-0a183c94bc52@arm.com>
Date: Tue, 13 Apr 2021 11:59:37 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <693507bd-5640-dd2a-3e37-9f8ea7da1a53@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit



On 13.04.2021 11:42, Julien Grall wrote:
> 
> 
> On 13/04/2021 10:32, Michal Orzel wrote:
>> Hi Julien,
>>
>> On 13.04.2021 11:07, Julien Grall wrote:
>>> Hi Michal,
>>>
>>> On 13/04/2021 09:24, Michal Orzel wrote:
>>>> ThumbEE(T32EE) was introduced in ARMv7 and removed in ARMv8.
>>>> In 2011 ARM deprecated any use of the ThumbEE instruction set.
>>>
>>> This doesn't mean this is not present in any CPU. In fact, in the same section (see A2.10 in ARM DDI 0406C.d):
>>>
>>> "ThumbEE is both the name of the instruction set and the name of the extension that provides support for that
>>> instruction set. The ThumbEE Extension is:
>>>    - Required in implementations of the ARMv7-A profile.
>>>    - Optional in implementations of the ARMv7-R profile.
>>> "
>>>
>>>>
>>>> This feature is untested and as per my understanding
>>>> there are no reported users for it. >
>>>> Remove all the bits related to it.
>>>>
>>>> Signed-off-by: Michal Orzel <michal.orzel@arm.com> > ---
>>>>    xen/arch/arm/cpufeature.c        |  3 +++
>>>>    xen/arch/arm/domain.c            | 12 ------------
>>>>    xen/arch/arm/setup.c             |  3 +--
>>>>    xen/include/asm-arm/cpregs.h     |  6 ------
>>>>    xen/include/asm-arm/cpufeature.h |  1 -
>>>>    xen/include/asm-arm/domain.h     |  1 -
>>>>    6 files changed, 4 insertions(+), 22 deletions(-)
>>>>
>>>> diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
>>>> index 1d88783809..82265a72f4 100644
>>>> --- a/xen/arch/arm/cpufeature.c
>>>> +++ b/xen/arch/arm/cpufeature.c
>>>> @@ -209,6 +209,9 @@ static int __init create_guest_cpuinfo(void)
>>>>        guest_cpuinfo.pfr32.ras = 0;
>>>>        guest_cpuinfo.pfr32.ras_frac = 0;
>>>>    +    /* Hide ThumbEE support */
>>>> +    guest_cpuinfo.pfr32.thumbee = 0;
>>>
>>> Even if you hide the feature from the guest, the registers are still accessible. So you are not removing support but just opening a potential security hole as the registers now gets shared...
>>>
>>> Looking at the spec, it doesn't look like it is possible to trap them.
>> Looking at the spec for ARMv7A/R:
>> https://developer.arm.com/documentation/ddi0406/c/System-Level-Architecture/System-Control-Registers-in-a-VMSA-implementation/VMSA-System-control-registers-descriptions--in-register-order/HSTR--Hyp-System-Trap-Register--Virtualization-Extensions
>> we can trap Thumbee operations.
>> This means that we will not open the security hole.
> 
> That's for pointing that out. However, I am not still not sure why you want to drop the code. Yes this is technically untested, but:
>   1) The change is very small
>   2) There are CPU out there supporting it (it is mandated after all).
> 
I wanted to drop the support for thumbee due to the following reasons:
-it is untested
-it is deprecated
-no reported users for this feature
-KVM did that

If you think we should not do this, then I am ok to abandon this patch.


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 09:59:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 09:59:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109621.209268 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFpg-0006QN-LU; Tue, 13 Apr 2021 09:59:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109621.209268; Tue, 13 Apr 2021 09:59:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFpg-0006QG-Hz; Tue, 13 Apr 2021 09:59:44 +0000
Received: by outflank-mailman (input) for mailman id 109621;
 Tue, 13 Apr 2021 09:59:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OBYq=JK=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lWFpf-0006QB-BB
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 09:59:43 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [216.205.24.124])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 510a276a-22b1-412b-b68a-17c362c720cc;
 Tue, 13 Apr 2021 09:59:38 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-501-HQzQOgAWPtyv3vb86wDJsw-1; Tue, 13 Apr 2021 05:59:34 -0400
Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com
 [10.5.11.13])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 71E9E9126D;
 Tue, 13 Apr 2021 09:59:32 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-115-199.ams2.redhat.com
 [10.36.115.199])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 21B3571287;
 Tue, 13 Apr 2021 09:59: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: 510a276a-22b1-412b-b68a-17c362c720cc
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1618307978;
	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=PC9iOqfTfZP07nfc1h3ik3+YFxj0evh+vBjeUVFJEik=;
	b=jM7E2FaLKxKD7nLvNc6C7ickZQ8d1Pee1yxtzs8Fr7rU+A6NvCsGOZJZ33xi9hUZE2Z3f4
	HLFBUUjZgiHPD0Eowp+eopECmXO/c2sinIt/qsw0D1zN+ju3lbfAcGEkR5qq2YmEUdoASU
	WYoU9TvHA1z9xi2gEDFj1aQuimas5BI=
X-MC-Unique: HQzQOgAWPtyv3vb86wDJsw-1
Subject: Re: [PATCH v3 4/7] OvmfPkg/IndustryStandard: Introduce PageTable.h
To: Anthony PERARD <anthony.perard@citrix.com>, devel@edk2.groups.io
Cc: Jordan Justen <jordan.l.justen@intel.com>,
 Ard Biesheuvel <ardb+tianocore@kernel.org>, xen-devel@lists.xenproject.org,
 Julien Grall <julien@xen.org>, Brijesh Singh <brijesh.singh@amd.com>,
 Tom Lendacky <thomas.lendacky@amd.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
 <20210412133003.146438-5-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <6cfddec5-db6d-64e9-0008-638bffae586e@redhat.com>
Date: Tue, 13 Apr 2021 11:59:29 +0200
MIME-Version: 1.0
In-Reply-To: <20210412133003.146438-5-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 04/12/21 15:30, Anthony PERARD wrote:
> We are going to use the page table structure in yet another place,
> collect the types and macro that can be used from another module
> rather than making yet another copy.
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> Acked-by: Tom Lendacky <thomas.lendacky@amd.com>
> ---
> 
> Notes:
>     CC: Brijesh Singh <brijesh.singh@amd.com>
>     
>     v3:
>     - fix typos and coding style
>     
>     v2:
>     - new patch
> 
>  .../IndustryStandard/PageTable.h}             | 117 +-------------
>  .../BaseMemEncryptSevLib/X64/VirtualMemory.h  | 143 +-----------------
>  2 files changed, 5 insertions(+), 255 deletions(-)
>  copy OvmfPkg/{Library/BaseMemEncryptSevLib/X64/VirtualMemory.h => Include/IndustryStandard/PageTable.h} (60%)

Reviewed-by: Laszlo Ersek <lersek@redhat.com>

Thanks
Laszlo

> 
> diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h b/OvmfPkg/Include/IndustryStandard/PageTable.h
> similarity index 60%
> copy from OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> copy to OvmfPkg/Include/IndustryStandard/PageTable.h
> index 996f94f07ebb..5e797eeea8ef 100644
> --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> +++ b/OvmfPkg/Include/IndustryStandard/PageTable.h
> @@ -1,6 +1,6 @@
>  /** @file
>  
> -  Virtual Memory Management Services to set or clear the memory encryption bit
> +  x86_64 Page Tables structures
>  
>    Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
>    Copyright (c) 2017 - 2020, AMD Incorporated. All rights reserved.<BR>
> @@ -11,17 +11,10 @@
>  
>  **/
>  
> -#ifndef __VIRTUAL_MEMORY__
> -#define __VIRTUAL_MEMORY__
> +#ifndef PAGE_TABLE_H_
> +#define PAGE_TABLE_H_
>  
> -#include <Library/BaseLib.h>
> -#include <Library/BaseMemoryLib.h>
> -#include <Library/CacheMaintenanceLib.h>
> -#include <Library/DebugLib.h>
> -#include <Library/MemoryAllocationLib.h>
> -#include <Uefi.h>
> -
> -#define SYS_CODE64_SEL 0x38
> +#include <Base.h>
>  
>  #pragma pack(1)
>  
> @@ -165,106 +158,4 @@ typedef union {
>  #define PTE_OFFSET(x)               ( (x >> 12) & PAGETABLE_ENTRY_MASK)
>  #define PAGING_1G_ADDRESS_MASK_64   0x000FFFFFC0000000ull
>  
> -#define PAGE_TABLE_POOL_ALIGNMENT   BASE_2MB
> -#define PAGE_TABLE_POOL_UNIT_SIZE   SIZE_2MB
> -#define PAGE_TABLE_POOL_UNIT_PAGES  \
> -  EFI_SIZE_TO_PAGES (PAGE_TABLE_POOL_UNIT_SIZE)
> -#define PAGE_TABLE_POOL_ALIGN_MASK  \
> -  (~(EFI_PHYSICAL_ADDRESS)(PAGE_TABLE_POOL_ALIGNMENT - 1))
> -
> -typedef struct {
> -  VOID            *NextPool;
> -  UINTN           Offset;
> -  UINTN           FreePages;
> -} PAGE_TABLE_POOL;
> -
> -/**
> -  Return the pagetable memory encryption mask.
> -
> -  @return  The pagetable memory encryption mask.
> -
> -**/
> -UINT64
> -EFIAPI
> -InternalGetMemEncryptionAddressMask (
> -  VOID
> -  );
> -
> -/**
> -  This function clears memory encryption bit for the memory region specified by
> -  PhysicalAddress and Length from the current page table context.
> -
> -  @param[in]  Cr3BaseAddress          Cr3 Base Address (if zero then use
> -                                      current CR3)
> -  @param[in]  PhysicalAddress         The physical address that is the start
> -                                      address of a memory region.
> -  @param[in]  Length                  The length of memory region
> -  @param[in]  Flush                   Flush the caches before applying the
> -                                      encryption mask
> -
> -  @retval RETURN_SUCCESS              The attributes were cleared for the
> -                                      memory region.
> -  @retval RETURN_INVALID_PARAMETER    Number of pages is zero.
> -  @retval RETURN_UNSUPPORTED          Clearing the memory encyrption attribute
> -                                      is not supported
> -**/
> -RETURN_STATUS
> -EFIAPI
> -InternalMemEncryptSevSetMemoryDecrypted (
> -  IN  PHYSICAL_ADDRESS        Cr3BaseAddress,
> -  IN  PHYSICAL_ADDRESS        PhysicalAddress,
> -  IN  UINTN                   Length,
> -  IN  BOOLEAN                 Flush
> -  );
> -
> -/**
> -  This function sets memory encryption bit for the memory region specified by
> -  PhysicalAddress and Length from the current page table context.
> -
> -  @param[in]  Cr3BaseAddress          Cr3 Base Address (if zero then use
> -                                      current CR3)
> -  @param[in]  PhysicalAddress         The physical address that is the start
> -                                      address of a memory region.
> -  @param[in]  Length                  The length of memory region
> -  @param[in]  Flush                   Flush the caches before applying the
> -                                      encryption mask
> -
> -  @retval RETURN_SUCCESS              The attributes were set for the memory
> -                                      region.
> -  @retval RETURN_INVALID_PARAMETER    Number of pages is zero.
> -  @retval RETURN_UNSUPPORTED          Setting the memory encyrption attribute
> -                                      is not supported
> -**/
> -RETURN_STATUS
> -EFIAPI
> -InternalMemEncryptSevSetMemoryEncrypted (
> -  IN  PHYSICAL_ADDRESS        Cr3BaseAddress,
> -  IN  PHYSICAL_ADDRESS        PhysicalAddress,
> -  IN  UINTN                   Length,
> -  IN  BOOLEAN                 Flush
> -  );
> -
> -/**
> -  Returns the encryption state of the specified virtual address range.
> -
> -  @param[in]  Cr3BaseAddress          Cr3 Base Address (if zero then use
> -                                      current CR3)
> -  @param[in]  BaseAddress             Base address to check
> -  @param[in]  Length                  Length of virtual address range
> -
> -  @retval MemEncryptSevAddressRangeUnencrypted  Address range is mapped
> -                                                unencrypted
> -  @retval MemEncryptSevAddressRangeEncrypted    Address range is mapped
> -                                                encrypted
> -  @retval MemEncryptSevAddressRangeMixed        Address range is mapped mixed
> -  @retval MemEncryptSevAddressRangeError        Address range is not mapped
> -**/
> -MEM_ENCRYPT_SEV_ADDRESS_RANGE_STATE
> -EFIAPI
> -InternalMemEncryptSevGetAddressRangeState (
> -  IN PHYSICAL_ADDRESS         Cr3BaseAddress,
> -  IN PHYSICAL_ADDRESS         BaseAddress,
> -  IN UINTN                    Length
> -  );
> -
>  #endif
> diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> index 996f94f07ebb..fe2a0b2826cd 100644
> --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h
> @@ -14,6 +14,7 @@
>  #ifndef __VIRTUAL_MEMORY__
>  #define __VIRTUAL_MEMORY__
>  
> +#include <IndustryStandard/PageTable.h>
>  #include <Library/BaseLib.h>
>  #include <Library/BaseMemoryLib.h>
>  #include <Library/CacheMaintenanceLib.h>
> @@ -23,148 +24,6 @@
>  
>  #define SYS_CODE64_SEL 0x38
>  
> -#pragma pack(1)
> -
> -//
> -// Page-Map Level-4 Offset (PML4) and
> -// Page-Directory-Pointer Offset (PDPE) entries 4K & 2MB
> -//
> -
> -typedef union {
> -  struct {
> -    UINT64  Present:1;                // 0 = Not present in memory,
> -                                      //   1 = Present in memory
> -    UINT64  ReadWrite:1;              // 0 = Read-Only, 1= Read/Write
> -    UINT64  UserSupervisor:1;         // 0 = Supervisor, 1=User
> -    UINT64  WriteThrough:1;           // 0 = Write-Back caching,
> -                                      //   1 = Write-Through caching
> -    UINT64  CacheDisabled:1;          // 0 = Cached, 1=Non-Cached
> -    UINT64  Accessed:1;               // 0 = Not accessed,
> -                                      //   1 = Accessed (set by CPU)
> -    UINT64  Reserved:1;               // Reserved
> -    UINT64  MustBeZero:2;             // Must Be Zero
> -    UINT64  Available:3;              // Available for use by system software
> -    UINT64  PageTableBaseAddress:40;  // Page Table Base Address
> -    UINT64  AvabilableHigh:11;        // Available for use by system software
> -    UINT64  Nx:1;                     // No Execute bit
> -  } Bits;
> -  UINT64    Uint64;
> -} PAGE_MAP_AND_DIRECTORY_POINTER;
> -
> -//
> -// Page Table Entry 4KB
> -//
> -typedef union {
> -  struct {
> -    UINT64  Present:1;                // 0 = Not present in memory,
> -                                      //   1 = Present in memory
> -    UINT64  ReadWrite:1;              // 0 = Read-Only, 1= Read/Write
> -    UINT64  UserSupervisor:1;         // 0 = Supervisor, 1=User
> -    UINT64  WriteThrough:1;           // 0 = Write-Back caching,
> -                                      //   1 = Write-Through caching
> -    UINT64  CacheDisabled:1;          // 0 = Cached, 1=Non-Cached
> -    UINT64  Accessed:1;               // 0 = Not accessed,
> -                                      //   1 = Accessed (set by CPU)
> -    UINT64  Dirty:1;                  // 0 = Not Dirty, 1 = written by
> -                                      //   processor on access to page
> -    UINT64  PAT:1;                    //
> -    UINT64  Global:1;                 // 0 = Not global page, 1 = global page
> -                                      //   TLB not cleared on CR3 write
> -    UINT64  Available:3;              // Available for use by system software
> -    UINT64  PageTableBaseAddress:40;  // Page Table Base Address
> -    UINT64  AvabilableHigh:11;        // Available for use by system software
> -    UINT64  Nx:1;                     // 0 = Execute Code,
> -                                      //   1 = No Code Execution
> -  } Bits;
> -  UINT64    Uint64;
> -} PAGE_TABLE_4K_ENTRY;
> -
> -//
> -// Page Table Entry 2MB
> -//
> -typedef union {
> -  struct {
> -    UINT64  Present:1;                // 0 = Not present in memory,
> -                                      //   1 = Present in memory
> -    UINT64  ReadWrite:1;              // 0 = Read-Only, 1= Read/Write
> -    UINT64  UserSupervisor:1;         // 0 = Supervisor, 1=User
> -    UINT64  WriteThrough:1;           // 0 = Write-Back caching,
> -                                      //   1=Write-Through caching
> -    UINT64  CacheDisabled:1;          // 0 = Cached, 1=Non-Cached
> -    UINT64  Accessed:1;               // 0 = Not accessed,
> -                                      //   1 = Accessed (set by CPU)
> -    UINT64  Dirty:1;                  // 0 = Not Dirty, 1 = written by
> -                                      //   processor on access to page
> -    UINT64  MustBe1:1;                // Must be 1
> -    UINT64  Global:1;                 // 0 = Not global page, 1 = global page
> -                                      //   TLB not cleared on CR3 write
> -    UINT64  Available:3;              // Available for use by system software
> -    UINT64  PAT:1;                    //
> -    UINT64  MustBeZero:8;             // Must be zero;
> -    UINT64  PageTableBaseAddress:31;  // Page Table Base Address
> -    UINT64  AvabilableHigh:11;        // Available for use by system software
> -    UINT64  Nx:1;                     // 0 = Execute Code,
> -                                      //   1 = No Code Execution
> -  } Bits;
> -  UINT64    Uint64;
> -} PAGE_TABLE_ENTRY;
> -
> -//
> -// Page Table Entry 1GB
> -//
> -typedef union {
> -  struct {
> -    UINT64  Present:1;                // 0 = Not present in memory,
> -                                      //   1 = Present in memory
> -    UINT64  ReadWrite:1;              // 0 = Read-Only, 1= Read/Write
> -    UINT64  UserSupervisor:1;         // 0 = Supervisor, 1=User
> -    UINT64  WriteThrough:1;           // 0 = Write-Back caching,
> -                                      //   1 = Write-Through caching
> -    UINT64  CacheDisabled:1;          // 0 = Cached, 1=Non-Cached
> -    UINT64  Accessed:1;               // 0 = Not accessed,
> -                                      //   1 = Accessed (set by CPU)
> -    UINT64  Dirty:1;                  // 0 = Not Dirty, 1 = written by
> -                                      //   processor on access to page
> -    UINT64  MustBe1:1;                // Must be 1
> -    UINT64  Global:1;                 // 0 = Not global page, 1 = global page
> -                                      //   TLB not cleared on CR3 write
> -    UINT64  Available:3;              // Available for use by system software
> -    UINT64  PAT:1;                    //
> -    UINT64  MustBeZero:17;            // Must be zero;
> -    UINT64  PageTableBaseAddress:22;  // Page Table Base Address
> -    UINT64  AvabilableHigh:11;        // Available for use by system software
> -    UINT64  Nx:1;                     // 0 = Execute Code,
> -                                      //   1 = No Code Execution
> -  } Bits;
> -  UINT64    Uint64;
> -} PAGE_TABLE_1G_ENTRY;
> -
> -#pragma pack()
> -
> -#define IA32_PG_P                   BIT0
> -#define IA32_PG_RW                  BIT1
> -#define IA32_PG_PS                  BIT7
> -
> -#define PAGING_PAE_INDEX_MASK       0x1FF
> -
> -#define PAGING_4K_ADDRESS_MASK_64   0x000FFFFFFFFFF000ull
> -#define PAGING_2M_ADDRESS_MASK_64   0x000FFFFFFFE00000ull
> -#define PAGING_1G_ADDRESS_MASK_64   0x000FFFFFC0000000ull
> -
> -#define PAGING_L1_ADDRESS_SHIFT     12
> -#define PAGING_L2_ADDRESS_SHIFT     21
> -#define PAGING_L3_ADDRESS_SHIFT     30
> -#define PAGING_L4_ADDRESS_SHIFT     39
> -
> -#define PAGING_PML4E_NUMBER         4
> -
> -#define PAGETABLE_ENTRY_MASK        ((1UL << 9) - 1)
> -#define PML4_OFFSET(x)              ( (x >> 39) & PAGETABLE_ENTRY_MASK)
> -#define PDP_OFFSET(x)               ( (x >> 30) & PAGETABLE_ENTRY_MASK)
> -#define PDE_OFFSET(x)               ( (x >> 21) & PAGETABLE_ENTRY_MASK)
> -#define PTE_OFFSET(x)               ( (x >> 12) & PAGETABLE_ENTRY_MASK)
> -#define PAGING_1G_ADDRESS_MASK_64   0x000FFFFFC0000000ull
> -
>  #define PAGE_TABLE_POOL_ALIGNMENT   BASE_2MB
>  #define PAGE_TABLE_POOL_UNIT_SIZE   SIZE_2MB
>  #define PAGE_TABLE_POOL_UNIT_PAGES  \
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 10:04:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 10:04:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109634.209295 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFue-0007Xg-Ot; Tue, 13 Apr 2021 10:04:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109634.209295; Tue, 13 Apr 2021 10:04:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFue-0007XZ-L1; Tue, 13 Apr 2021 10:04:52 +0000
Received: by outflank-mailman (input) for mailman id 109634;
 Tue, 13 Apr 2021 10:04:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OBYq=JK=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lWFud-0007XU-Qv
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 10:04:51 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [63.128.21.124])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 39e20994-404e-4bc4-a97e-adc125e8632f;
 Tue, 13 Apr 2021 10:04:49 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-570-sni6Xwg-OGudgMdFNFp2Mg-1; Tue, 13 Apr 2021 06:04:45 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com
 [10.5.11.16])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D8D6C5B378;
 Tue, 13 Apr 2021 10:04:43 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-115-199.ams2.redhat.com
 [10.36.115.199])
 by smtp.corp.redhat.com (Postfix) with ESMTP id F0DD75C239;
 Tue, 13 Apr 2021 10:04: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: 39e20994-404e-4bc4-a97e-adc125e8632f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1618308289;
	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=YpwttS5IrIwpZItZFzCIsbk23Wrw5Lws3lJvfiMO91I=;
	b=Sltqs5QcAk/+cs+QsU8ECjqNTSmshTTXjT6Rd2yGY5YHSTxpyQW6UwLziwSIXPVo5qEMv3
	jBoElDTk0kx7Glw2H8XE3kvrl5y69pQ1e1/gQ0GosH6L1qKfytu3fxHk0IJPQCPcwEK9Pl
	qVWE+aIAXF+4rICM7+okq5ApOplogZ0=
X-MC-Unique: sni6Xwg-OGudgMdFNFp2Mg-1
Subject: Re: [PATCH v3 6/7] OvmfPkg/XenPlatformPei: Calibrate APIC timer
 frequency
To: Anthony PERARD <anthony.perard@citrix.com>, devel@edk2.groups.io
Cc: Jordan Justen <jordan.l.justen@intel.com>,
 Ard Biesheuvel <ardb+tianocore@kernel.org>, xen-devel@lists.xenproject.org,
 Julien Grall <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
 <20210412133003.146438-7-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <89d38e99-9a74-db1c-7f91-da2539d12d2b@redhat.com>
Date: Tue, 13 Apr 2021 12:04:40 +0200
MIME-Version: 1.0
In-Reply-To: <20210412133003.146438-7-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 04/12/21 15:30, Anthony PERARD wrote:
> Calculate the frequency of the APIC timer that Xen provides.
> 
> Even though the frequency is currently hard-coded, it isn't part of
> the public ABI that Xen provides and thus may change at any time. OVMF
> needs to determine the frequency by an other mean.
> 
> Fortunately, Xen provides a way to determines the frequency of the
> TSC, so we can use TSC to calibrate the frequency of the APIC timer.
> That information is found in the shared_info page which we map and
> unmap once done (XenBusDxe is going to map the page somewhere else).
> 
> The shared_info page is mapped at the highest physical address allowed
> as it doesn't need to be in the RAM, thus there's a call to update the
> page table.
> 
> The calculated frequency is only logged in this patch, it will be used
> in a following patch.
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> Acked-by: Laszlo Ersek <lersek@redhat.com>
> ---
> 
> Notes:
>     CC: Roger Pau Monné <roger.pau@citrix.com>
>     
>     v3:
>     - fix debug format strings
>     - fix coding style

Thanks for the updates.

Laszlo

>     
>     v2:
>     - fix CamelCases
>     - Use U64 multiplication and division helpers
>     - don't read TscShift from the SharedInfo page again
>     - change the location of the shared info page to be outside of the ram
>     - check for overflow in XenDelay
>     - check for overflow when calculating the calculating APIC frequency
> 
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf |   2 +
>  OvmfPkg/XenPlatformPei/Platform.h         |   5 +
>  OvmfPkg/XenPlatformPei/Platform.c         |   1 +
>  OvmfPkg/XenPlatformPei/Xen.c              | 177 ++++++++++++++++++++++
>  4 files changed, 185 insertions(+)
> 
> diff --git a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> index 8790d907d3ec..5732d2188871 100644
> --- a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> +++ b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> @@ -52,6 +52,7 @@ [LibraryClasses]
>    DebugLib
>    HobLib
>    IoLib
> +  LocalApicLib
>    PciLib
>    ResourcePublicationLib
>    PeiServicesLib
> @@ -59,6 +60,7 @@ [LibraryClasses]
>    MtrrLib
>    MemEncryptSevLib
>    PcdLib
> +  SafeIntLib
>    XenHypercallLib
>  
>  [Pcd]
> diff --git a/OvmfPkg/XenPlatformPei/Platform.h b/OvmfPkg/XenPlatformPei/Platform.h
> index e70ca58078eb..77d88fc159d7 100644
> --- a/OvmfPkg/XenPlatformPei/Platform.h
> +++ b/OvmfPkg/XenPlatformPei/Platform.h
> @@ -132,6 +132,11 @@ PhysicalAddressIdentityMapping (
>    IN EFI_PHYSICAL_ADDRESS AddressToMap
>    );
>  
> +VOID
> +CalibrateLapicTimer (
> +  VOID
> +  );
> +
>  extern EFI_BOOT_MODE mBootMode;
>  
>  extern UINT8 mPhysMemAddressWidth;
> diff --git a/OvmfPkg/XenPlatformPei/Platform.c b/OvmfPkg/XenPlatformPei/Platform.c
> index 717fd0ab1a45..e9511eb40c62 100644
> --- a/OvmfPkg/XenPlatformPei/Platform.c
> +++ b/OvmfPkg/XenPlatformPei/Platform.c
> @@ -448,6 +448,7 @@ InitializeXenPlatform (
>    InitializeRamRegions ();
>  
>    InitializeXen ();
> +  CalibrateLapicTimer ();
>  
>    if (mBootMode != BOOT_ON_S3_RESUME) {
>      ReserveEmuVariableNvStore ();
> diff --git a/OvmfPkg/XenPlatformPei/Xen.c b/OvmfPkg/XenPlatformPei/Xen.c
> index b2a7d1c21dac..8b06bebd7731 100644
> --- a/OvmfPkg/XenPlatformPei/Xen.c
> +++ b/OvmfPkg/XenPlatformPei/Xen.c
> @@ -21,8 +21,10 @@
>  #include <Library/CpuLib.h>
>  #include <Library/DebugLib.h>
>  #include <Library/HobLib.h>
> +#include <Library/LocalApicLib.h>
>  #include <Library/MemoryAllocationLib.h>
>  #include <Library/PcdLib.h>
> +#include <Library/SafeIntLib.h>
>  #include <Guid/XenInfo.h>
>  #include <IndustryStandard/E820.h>
>  #include <Library/ResourcePublicationLib.h>
> @@ -457,3 +459,178 @@ PhysicalAddressIdentityMapping (
>  
>    return EFI_SUCCESS;
>  }
> +
> +STATIC
> +EFI_STATUS
> +MapSharedInfoPage (
> +  IN VOID *PagePtr
> +  )
> +{
> +  xen_add_to_physmap_t  Parameters;
> +  INTN                  ReturnCode;
> +
> +  Parameters.domid = DOMID_SELF;
> +  Parameters.space = XENMAPSPACE_shared_info;
> +  Parameters.idx = 0;
> +  Parameters.gpfn = (UINTN)PagePtr >> EFI_PAGE_SHIFT;
> +  ReturnCode = XenHypercallMemoryOp (XENMEM_add_to_physmap, &Parameters);
> +  if (ReturnCode != 0) {
> +    return EFI_NO_MAPPING;
> +  }
> +  return EFI_SUCCESS;
> +}
> +
> +STATIC
> +VOID
> +UnmapXenPage (
> +  IN VOID *PagePtr
> +  )
> +{
> +  xen_remove_from_physmap_t Parameters;
> +  INTN                      ReturnCode;
> +
> +  Parameters.domid = DOMID_SELF;
> +  Parameters.gpfn = (UINTN)PagePtr >> EFI_PAGE_SHIFT;
> +  ReturnCode = XenHypercallMemoryOp (XENMEM_remove_from_physmap, &Parameters);
> +  ASSERT (ReturnCode == 0);
> +}
> +
> +
> +STATIC
> +UINT64
> +GetCpuFreq (
> +  IN XEN_VCPU_TIME_INFO *VcpuTime
> +  )
> +{
> +  UINT32 Version;
> +  UINT32 TscToSystemMultiplier;
> +  INT8   TscShift;
> +  UINT64 CpuFreq;
> +
> +  do {
> +    Version = VcpuTime->Version;
> +    MemoryFence ();
> +    TscToSystemMultiplier = VcpuTime->TscToSystemMultiplier;
> +    TscShift = VcpuTime->TscShift;
> +    MemoryFence ();
> +  } while (((Version & 1) != 0) && (Version != VcpuTime->Version));
> +
> +  CpuFreq = DivU64x32 (LShiftU64 (1000000000ULL, 32), TscToSystemMultiplier);
> +  if (TscShift >= 0) {
> +      CpuFreq = RShiftU64 (CpuFreq, TscShift);
> +  } else {
> +      CpuFreq = LShiftU64 (CpuFreq, -TscShift);
> +  }
> +  return CpuFreq;
> +}
> +
> +STATIC
> +VOID
> +XenDelay (
> +  IN XEN_VCPU_TIME_INFO *VcpuTimeInfo,
> +  IN UINT64             DelayNs
> +  )
> +{
> +  UINT64        Tick;
> +  UINT64        CpuFreq;
> +  UINT64        Delay;
> +  UINT64        DelayTick;
> +  UINT64        NewTick;
> +  RETURN_STATUS Status;
> +
> +  Tick = AsmReadTsc ();
> +
> +  CpuFreq = GetCpuFreq (VcpuTimeInfo);
> +  Status = SafeUint64Mult (DelayNs, CpuFreq, &Delay);
> +  if (EFI_ERROR (Status)) {
> +    DEBUG ((DEBUG_ERROR,
> +      "XenDelay (%lu ns): delay too big in relation to CPU freq %lu Hz\n",
> +      DelayNs, CpuFreq));
> +    ASSERT_EFI_ERROR (Status);
> +    CpuDeadLoop ();
> +  }
> +
> +  DelayTick = DivU64x32 (Delay, 1000000000);
> +
> +  NewTick = Tick + DelayTick;
> +
> +  //
> +  // Check for overflow
> +  //
> +  if (NewTick < Tick) {
> +    //
> +    // Overflow, wait for TSC to also overflow
> +    //
> +    while (AsmReadTsc () >= Tick) {
> +      CpuPause ();
> +    }
> +  }
> +
> +  while (AsmReadTsc () <= NewTick) {
> +    CpuPause ();
> +  }
> +}
> +
> +
> +/**
> +  Calculate the frequency of the Local Apic Timer
> +**/
> +VOID
> +CalibrateLapicTimer (
> +  VOID
> +  )
> +{
> +  XEN_SHARED_INFO       *SharedInfo;
> +  XEN_VCPU_TIME_INFO    *VcpuTimeInfo;
> +  UINT32                TimerTick, TimerTick2, DiffTimer;
> +  UINT64                TscTick, TscTick2;
> +  UINT64                Freq;
> +  UINT64                Dividend;
> +  EFI_STATUS            Status;
> +
> +
> +  SharedInfo = (VOID*)((1ULL << mPhysMemAddressWidth) - EFI_PAGE_SIZE);
> +  Status = PhysicalAddressIdentityMapping ((EFI_PHYSICAL_ADDRESS)SharedInfo);
> +  if (EFI_ERROR (Status)) {
> +    DEBUG ((DEBUG_ERROR,
> +      "Failed to add page table entry for Xen shared info page: %r\n",
> +      Status));
> +    ASSERT_EFI_ERROR (Status);
> +    return;
> +  }
> +
> +  Status = MapSharedInfoPage (SharedInfo);
> +  if (EFI_ERROR (Status)) {
> +    DEBUG ((DEBUG_ERROR, "Failed to map Xen's shared info page: %r\n",
> +      Status));
> +    ASSERT_EFI_ERROR (Status);
> +    return;
> +  }
> +
> +  VcpuTimeInfo = &SharedInfo->VcpuInfo[0].Time;
> +
> +  InitializeApicTimer (1, MAX_UINT32, TRUE, 0);
> +  DisableApicTimerInterrupt ();
> +
> +  TimerTick = GetApicTimerCurrentCount ();
> +  TscTick = AsmReadTsc ();
> +  XenDelay (VcpuTimeInfo, 1000000ULL);
> +  TimerTick2 = GetApicTimerCurrentCount ();
> +  TscTick2 = AsmReadTsc ();
> +
> +
> +  DiffTimer = TimerTick - TimerTick2;
> +  Status = SafeUint64Mult (GetCpuFreq (VcpuTimeInfo), DiffTimer, &Dividend);
> +  if (EFI_ERROR (Status)) {
> +    DEBUG ((DEBUG_ERROR, "overflow while calculating APIC frequency\n"));
> +    DEBUG ((DEBUG_ERROR, "CPU freq: %lu Hz; APIC timer tick count for 1 ms: %u\n",
> +      GetCpuFreq (VcpuTimeInfo), DiffTimer));
> +    ASSERT_EFI_ERROR (Status);
> +    CpuDeadLoop ();
> +  }
> +
> +  Freq = DivU64x64Remainder (Dividend, TscTick2 - TscTick, NULL);
> +  DEBUG ((DEBUG_INFO, "APIC Freq % 8lu Hz\n", Freq));
> +
> +  UnmapXenPage (SharedInfo);
> +}
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 10:09:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 10:09:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109640.209307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWFyr-0007iF-Bn; Tue, 13 Apr 2021 10:09:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109640.209307; Tue, 13 Apr 2021 10:09: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 1lWFyr-0007i8-76; Tue, 13 Apr 2021 10:09:13 +0000
Received: by outflank-mailman (input) for mailman id 109640;
 Tue, 13 Apr 2021 10:09:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OBYq=JK=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lWFyp-0007i3-JL
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 10:09:11 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [170.10.133.124])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id ae7dcd98-6170-4d59-bc73-b556bbc87c9f;
 Tue, 13 Apr 2021 10:09:10 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-120-jznWYgxFP7iZ1PhKOVd0_Q-1; Tue, 13 Apr 2021 06:09:08 -0400
Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com
 [10.5.11.14])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 90263107ACF4;
 Tue, 13 Apr 2021 10:09:07 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-115-199.ams2.redhat.com
 [10.36.115.199])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 09D851B5F1;
 Tue, 13 Apr 2021 10:09: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: ae7dcd98-6170-4d59-bc73-b556bbc87c9f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1618308550;
	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=nfrd8x6Ezlp1Kr3Uel2G0zs//RlZy9GY57S5UJx/4nE=;
	b=baegzdffrkhn+BGMSfmc0bI0MSfiKsfjAq/2kvqDhbBSwDSjgIQFIDI6Y0rx8Xf9//PVvg
	p4nAYe9ZfMfyawDjg+10zRKgUnGapzAFlwn9VLXQfL5gLY+y9PUDBQfVIacKbInNfsFJca
	gZu5nNZ6Ea+sTE5xLD2IVFv2OfTNAvA=
X-MC-Unique: jznWYgxFP7iZ1PhKOVd0_Q-1
Subject: Re: [PATCH v3 7/7] OvmfPkg/OvmfXen: Set PcdFSBClock
To: Anthony PERARD <anthony.perard@citrix.com>, devel@edk2.groups.io
Cc: Jordan Justen <jordan.l.justen@intel.com>,
 Ard Biesheuvel <ardb+tianocore@kernel.org>, xen-devel@lists.xenproject.org,
 Julien Grall <julien@xen.org>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
 <20210412133003.146438-8-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <fe734f47-7721-e9f4-29b6-40f711f46fe3@redhat.com>
Date: Tue, 13 Apr 2021 12:09:05 +0200
MIME-Version: 1.0
In-Reply-To: <20210412133003.146438-8-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 04/12/21 15:30, Anthony PERARD wrote:
> Update gEfiMdePkgTokenSpaceGuid.PcdFSBClock so it can have the correct
> value when SecPeiDxeTimerLibCpu start to use it for the APIC timer.
> 
> Currently, nothing appear to use the value in PcdFSBClock before
> XenPlatformPei had a chance to set it even though TimerLib is included
> in modules run before XenPlatformPei.
> 
> XenPlatformPei doesn't use any of the functions that would use that
> value. No other modules in the PEI phase seems to use the TimerLib
> before PcdFSBClock is set. There are currently two other modules in
> the PEI phase that needs the TimerLib:
> - S3Resume2Pei, but only because LocalApicLib needs it, but nothing is
>   using the value from PcdFSBClock.
> - CpuMpPei, but I believe it only runs after XenPlatformPei
> 
> Before the PEI phase, there's the SEC phase, and SecMain needs
> TimerLib because of LocalApicLib. And it initialise the APIC timers
> for the debug agent. But I don't think any of the DebugLib that
> OvmfXen could use are actually using the *Delay functions in TimerLib,
> and so would not use the value from PcdFSBClock which would be
> uninitialised.
> 
> A simple runtime test showed that TimerLib doesn't use PcdFSBClock
> value before it is set.
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
> ---
> 
> Notes:
>     v3:
>     - cast Freq in assert
>     - fix typos
>     - use correct assert to check Status
>     v2:
>     - keep the default value of PcdFSBClock because that is part of the syntax.
> 
>  OvmfPkg/OvmfXen.dsc                       | 4 +---
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf | 1 +
>  OvmfPkg/XenPlatformPei/Xen.c              | 4 ++++
>  3 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/OvmfPkg/OvmfXen.dsc b/OvmfPkg/OvmfXen.dsc
> index 86abe277c349..e535503e385d 100644
> --- a/OvmfPkg/OvmfXen.dsc
> +++ b/OvmfPkg/OvmfXen.dsc
> @@ -447,9 +447,6 @@ [PcdsFixedAtBuild]
>    # Point to the MdeModulePkg/Application/UiApp/UiApp.inf
>    gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
>  
> -  ## Xen vlapic's frequence is 100 MHz
> -  gEfiMdePkgTokenSpaceGuid.PcdFSBClock|100000000
> -
>    # We populate DXE IPL tables with 1G pages preferably on Xen
>    gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable|TRUE
>  
> @@ -476,6 +473,7 @@ [PcdsDynamicDefault]
>    gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Base|0x0
>    gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size|0x800000000
>  
> +  gEfiMdePkgTokenSpaceGuid.PcdFSBClock|100000000
>    gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0
>  
>    # Set video resolution for text setup.
> diff --git a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> index 5732d2188871..87dd4b24679a 100644
> --- a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> +++ b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> @@ -85,6 +85,7 @@ [Pcd]
>    gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode
>    gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable
>    gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask
> +  gEfiMdePkgTokenSpaceGuid.PcdFSBClock
>    gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy
>    gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress
>  
> diff --git a/OvmfPkg/XenPlatformPei/Xen.c b/OvmfPkg/XenPlatformPei/Xen.c
> index 8b06bebd7731..2dc9f9ff8f3c 100644
> --- a/OvmfPkg/XenPlatformPei/Xen.c
> +++ b/OvmfPkg/XenPlatformPei/Xen.c
> @@ -632,5 +632,9 @@ CalibrateLapicTimer (
>    Freq = DivU64x64Remainder (Dividend, TscTick2 - TscTick, NULL);
>    DEBUG ((DEBUG_INFO, "APIC Freq % 8lu Hz\n", Freq));
>  
> +  ASSERT ((UINT32)Freq <= MAX_UINT32);
> +  Status = PcdSet32S (PcdFSBClock, Freq);

You misunderstood my request for the explicit cast. I meant that for the
"Freq" argument of the PcdSet32S() function call. Adding it inside the
ASSERT() makes the assertion a tautology, hence, useless. Whereas,
casting Freq to UINT32 *after* the ASSERT() is (a) safe, (b) shuts up a
potential "truncation warning" from visual studio (i.e. when the cast
happens implicitly, due to passing the UINT64 Freq as the 2nd, UINT32,
parameter of PcdSet32S()).

But, I'll fix this up for you when I merge v3; no need to send v4.

Thanks
Laszlo

> +  ASSERT_EFI_ERROR (Status);
> +
>    UnmapXenPage (SharedInfo);
>  }
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 10:10:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 10:10:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109644.209319 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWG0H-00005e-NL; Tue, 13 Apr 2021 10:10:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109644.209319; Tue, 13 Apr 2021 10:10: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 1lWG0H-00005X-JL; Tue, 13 Apr 2021 10:10:41 +0000
Received: by outflank-mailman (input) for mailman id 109644;
 Tue, 13 Apr 2021 10:10:40 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lWG0G-00005Q-CL
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 10:10:40 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWG0F-0000hi-Aq; Tue, 13 Apr 2021 10:10:39 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWG0F-0004yx-4y; Tue, 13 Apr 2021 10:10: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=s+A0Nhy8kv+x0OJ02mSRMHQxeTxYgb0EeRnaVa3gzh4=; b=XcHe4mTLCFFazxoiJUOn8Dt3sY
	dySSj/Ik3q9FOwVCJCTuqBTRGpLE8lDEqydhJTc9qsywKdK1jpxBe2+OjSalC+Wc0qjH4bpYyf2px
	OPoOHlF1sgepPRyS4IU+on2WHkYwXl5xwuhSsGsC/D9IWw6qOGNCGOg5cMFKEmsd3tOE=;
Subject: Re: [PATCH] Remove support for ThumbEE
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com,
 wei.chen@arm.com
References: <20210413082447.30313-1-michal.orzel@arm.com>
 <1c3d1c69-976c-6626-74e7-ded112f6ed03@xen.org>
 <83218c74-3d71-6165-31a3-1f6c77b95f94@arm.com>
 <693507bd-5640-dd2a-3e37-9f8ea7da1a53@xen.org>
 <616b27e4-8882-d577-188d-0a183c94bc52@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <384d0e85-bc14-b465-ddf0-a1d4ce399b9e@xen.org>
Date: Tue, 13 Apr 2021 11:10:37 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <616b27e4-8882-d577-188d-0a183c94bc52@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 13/04/2021 10:59, Michal Orzel wrote:
> 
> 
> On 13.04.2021 11:42, Julien Grall wrote:
>>
>>
>> On 13/04/2021 10:32, Michal Orzel wrote:
>>> Hi Julien,
>>>
>>> On 13.04.2021 11:07, Julien Grall wrote:
>>>> Hi Michal,
>>>>
>>>> On 13/04/2021 09:24, Michal Orzel wrote:
>>>>> ThumbEE(T32EE) was introduced in ARMv7 and removed in ARMv8.
>>>>> In 2011 ARM deprecated any use of the ThumbEE instruction set.
>>>>
>>>> This doesn't mean this is not present in any CPU. In fact, in the same section (see A2.10 in ARM DDI 0406C.d):
>>>>
>>>> "ThumbEE is both the name of the instruction set and the name of the extension that provides support for that
>>>> instruction set. The ThumbEE Extension is:
>>>>     - Required in implementations of the ARMv7-A profile.
>>>>     - Optional in implementations of the ARMv7-R profile.
>>>> "
>>>>
>>>>>
>>>>> This feature is untested and as per my understanding
>>>>> there are no reported users for it. >
>>>>> Remove all the bits related to it.
>>>>>
>>>>> Signed-off-by: Michal Orzel <michal.orzel@arm.com> > ---
>>>>>     xen/arch/arm/cpufeature.c        |  3 +++
>>>>>     xen/arch/arm/domain.c            | 12 ------------
>>>>>     xen/arch/arm/setup.c             |  3 +--
>>>>>     xen/include/asm-arm/cpregs.h     |  6 ------
>>>>>     xen/include/asm-arm/cpufeature.h |  1 -
>>>>>     xen/include/asm-arm/domain.h     |  1 -
>>>>>     6 files changed, 4 insertions(+), 22 deletions(-)
>>>>>
>>>>> diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
>>>>> index 1d88783809..82265a72f4 100644
>>>>> --- a/xen/arch/arm/cpufeature.c
>>>>> +++ b/xen/arch/arm/cpufeature.c
>>>>> @@ -209,6 +209,9 @@ static int __init create_guest_cpuinfo(void)
>>>>>         guest_cpuinfo.pfr32.ras = 0;
>>>>>         guest_cpuinfo.pfr32.ras_frac = 0;
>>>>>     +    /* Hide ThumbEE support */
>>>>> +    guest_cpuinfo.pfr32.thumbee = 0;
>>>>
>>>> Even if you hide the feature from the guest, the registers are still accessible. So you are not removing support but just opening a potential security hole as the registers now gets shared...
>>>>
>>>> Looking at the spec, it doesn't look like it is possible to trap them.
>>> Looking at the spec for ARMv7A/R:
>>> https://developer.arm.com/documentation/ddi0406/c/System-Level-Architecture/System-Control-Registers-in-a-VMSA-implementation/VMSA-System-control-registers-descriptions--in-register-order/HSTR--Hyp-System-Trap-Register--Virtualization-Extensions
>>> we can trap Thumbee operations.
>>> This means that we will not open the security hole.
>>
>> That's for pointing that out. However, I am not still not sure why you want to drop the code. Yes this is technically untested, but:
>>    1) The change is very small
>>    2) There are CPU out there supporting it (it is mandated after all).
>>
> I wanted to drop the support for thumbee due to the following reasons:
> -it is untested
> -it is deprecated

Deprecated only means new code should avoid to use the instruction set. 
But it is still present for existing code until they are migrated to a 
newer instruction set.

However, as I pointed out only the instruction set is deprecated. The 
extension itself is mandated by Armv7-A.

> -no reported users for this feature
We probably only see the tip of the iceberg in term of the users. If the 
feature/pain is quite small to the community, then we should try to not 
drop feature.

> -KVM did that

Well, KVM fully dropped 32-bit support. But I am not yet in favor of 
that in Xen.

> 
> If you think we should not do this, then I am ok to abandon this patch.

Based on the information you provided, I think we should keep support.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 10:18:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 10:18:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109654.209331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWG7p-0000Na-M8; Tue, 13 Apr 2021 10:18:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109654.209331; Tue, 13 Apr 2021 10:18: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 1lWG7p-0000NT-Iq; Tue, 13 Apr 2021 10:18:29 +0000
Received: by outflank-mailman (input) for mailman id 109654;
 Tue, 13 Apr 2021 10:18:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OBYq=JK=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lWG7p-0000NO-4O
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 10:18:29 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [216.205.24.124])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id d78b20a2-8dd4-4d9e-93d0-882a3f574ab0;
 Tue, 13 Apr 2021 10:18:28 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-401-4L1p0jZGPi2EEMc9htak4w-1; Tue, 13 Apr 2021 06:18:24 -0400
Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com
 [10.5.11.14])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 058CB814337;
 Tue, 13 Apr 2021 10:18:22 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-115-199.ams2.redhat.com
 [10.36.115.199])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 6ECF62967D;
 Tue, 13 Apr 2021 10:18: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: d78b20a2-8dd4-4d9e-93d0-882a3f574ab0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1618309107;
	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=D6JXSOnWFPQcYcJpN/lhDhlxyRcMiYtsdgrU+YMw8Wk=;
	b=EmfwRS6PWD698uws/nxmroElmHEhQyl0eynrMA4cH+gQSdq50ESywP1GwnIRh/n05r8CDV
	ALDVvQTHhujax8cASHYLGV+sMnDDL4YqmyLSFo9GByZRez4JjY2VcPgZUcUbLtuax7j1eQ
	IOsJOcRAjipKoaF2ARFMpdhuh5f7Ki0=
X-MC-Unique: 4L1p0jZGPi2EEMc9htak4w-1
Subject: =?UTF-8?Q?Re:_=e5=9b=9e=e5=a4=8d:_[edk2-devel]_[PATCH_v3_2/7]_MdePk?=
 =?UTF-8?Q?g:_Allow_PcdFSBClock_to_by_Dynamic?=
To: gaoliming <gaoliming@byosoft.com.cn>, devel@edk2.groups.io,
 anthony.perard@citrix.com
Cc: 'Jordan Justen' <jordan.l.justen@intel.com>,
 'Ard Biesheuvel' <ardb+tianocore@kernel.org>,
 xen-devel@lists.xenproject.org, 'Julien Grall' <julien@xen.org>,
 'Michael D Kinney' <michael.d.kinney@intel.com>,
 'Zhiguang Liu' <zhiguang.liu@intel.com>, 'Liming Gao' <liming.gao@intel.com>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
 <20210412133003.146438-3-anthony.perard@citrix.com>
 <00c601d73000$350a7510$9f1f5f30$@byosoft.com.cn>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <8fce5f56-de1b-f2e0-6ec6-ed7c29d56ede@redhat.com>
Date: Tue, 13 Apr 2021 12:18:16 +0200
MIME-Version: 1.0
In-Reply-To: <00c601d73000$350a7510$9f1f5f30$@byosoft.com.cn>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=gbk
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 04/13/21 02:59, gaoliming wrote:
> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>

Thanks, I've updated the email address in your existent R-b on the patch.

Laszlo

> 
>> -----ʼԭ-----
>> : devel@edk2.groups.io <devel@edk2.groups.io>  Anthony
>> PERARD via groups.io
>> ʱ: 2021412 21:30
>> ռ: devel@edk2.groups.io
>> : Laszlo Ersek <lersek@redhat.com>; Jordan Justen
>> <jordan.l.justen@intel.com>; Ard Biesheuvel <ardb+tianocore@kernel.org>;
>> xen-devel@lists.xenproject.org; Anthony PERARD
>> <anthony.perard@citrix.com>; Julien Grall <julien@xen.org>; Michael D
>> Kinney <michael.d.kinney@intel.com>; Liming Gao
>> <gaoliming@byosoft.com.cn>; Zhiguang Liu <zhiguang.liu@intel.com>; Liming
>> Gao <liming.gao@intel.com>
>> : [edk2-devel] [PATCH v3 2/7] MdePkg: Allow PcdFSBClock to by
>> Dynamic
>>
>> We are going to want to change the value of PcdFSBClock at run time in
>> OvmfXen, so move it to the PcdsDynamic section.
>>
>> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
>> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
>> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
>> Reviewed-by: Liming Gao <liming.gao@intel.com>
>> ---
>>
>> Notes:
>>     CC: Michael D Kinney <michael.d.kinney@intel.com>
>>     CC: Liming Gao <gaoliming@byosoft.com.cn>
>>     CC: Zhiguang Liu <zhiguang.liu@intel.com>
>>
>>  MdePkg/MdePkg.dec | 8 ++++----
>>  1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec
>> index f4156920e599..8965e903e093 100644
>> --- a/MdePkg/MdePkg.dec
>> +++ b/MdePkg/MdePkg.dec
>> @@ -2265,10 +2265,6 @@ [PcdsFixedAtBuild,PcdsPatchableInModule]
>>    # @ValidList  0x80000001 | 8, 16, 32
>>    gEfiMdePkgTokenSpaceGuid.PcdPort80DataWidth|8|UINT8|0x0000002d
>>
>> -  ## This value is used to configure X86 Processor FSB clock.
>> -  # @Prompt FSB Clock.
>> -
>> gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000|UINT32|0x0000000c
>> -
>>    ## The maximum printable number of characters. UefLib functions:
>> AsciiPrint(), AsciiErrorPrint(),
>>    #  PrintXY(), AsciiPrintXY(), Print(), ErrorPrint() base on this PCD
> value to
>> print characters.
>>    # @Prompt Maximum Printable Number of Characters.
>> @@ -2372,5 +2368,9 @@ [PcdsFixedAtBuild, PcdsPatchableInModule,
>> PcdsDynamic, PcdsDynamicEx]
>>    # @Prompt Boot Timeout (s)
>>
>> gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|0xffff|UINT16|0x0000
>> 002c
>>
>> +  ## This value is used to configure X86 Processor FSB clock.
>> +  # @Prompt FSB Clock.
>> +
>> gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000|UINT32|0x0000000c
>> +
>>  [UserExtensions.TianoCore."ExtraFiles"]
>>    MdePkgExtra.uni
>> --
>> Anthony PERARD
>>
>>
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Groups.io Links: You receive all messages sent to this group.
>> View/Reply Online (#73954): https://edk2.groups.io/g/devel/message/73954
>> Mute This Topic: https://groups.io/mt/82037830/4905953
>> Group Owner: devel+owner@edk2.groups.io
>> Unsubscribe: https://edk2.groups.io/g/devel/unsub
>> [gaoliming@byosoft.com.cn]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
> 
> 
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 10:18:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 10:18:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109656.209343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWG8C-0000SE-VR; Tue, 13 Apr 2021 10:18:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109656.209343; Tue, 13 Apr 2021 10:18: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 1lWG8C-0000S7-S3; Tue, 13 Apr 2021 10:18:52 +0000
Received: by outflank-mailman (input) for mailman id 109656;
 Tue, 13 Apr 2021 10:18:51 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWG8B-0000Rr-CJ
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 10:18:51 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id de04f11a-d410-4289-81f4-d07d8fdd11cc;
 Tue, 13 Apr 2021 10:18: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: de04f11a-d410-4289-81f4-d07d8fdd11cc
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618309130;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=CLfKNd5HSc9D5hxHF/hBETDpGRKJlxNOvTASS164J2Y=;
  b=AVwbr867kKH1OaOICdK3ZRXcdLp+6eBFejvW+Ym+KQiUd1JbBmo4AOXz
   BRKGlid0aA+e8EkEN90pIMynFzyUgMiLngkOK3DgN4tp7mu78DDLOw9tY
   Eyt0ySmnFQGlThJ9JdBONmnUTefLNqNMvL+IK4NBqaKxeqB9lLdR0nP0m
   Q=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: NW0nqppfGKRk4C2Lp0e2Wdpvc134YzMEO1oms0isUmUGIPIu39BDizW2Mm0e1irbe3LzV3tljF
 /fgTzwuDN4Axcwb57RWmwJdhdP3HjHmcrJ45xnDg8W3eMiK3hc1LrevvOxa8OY8XVOYG/rUYjK
 Th+CWbZzPZ1S8fA5zyKfIsWpLJdZMOJNvxWQEtgDOr7SP3Q4UriCZb962L7FitVxinF2eQUZtY
 fTTMv8U8FL2nsumLqZXxMXZcf6JiGYZocKPaugfhux0GGMwwy44HmI0NFToC2yT6L3DsJm9Dy5
 WQI=
X-SBRS: 5.2
X-MesageID: 41305187
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:yBx7Cq5gqCzBZ64jzAPXwWyEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbTqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH76GL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnk4j41VTRTzbA+tV
 XUigCR3NTZj9iX6D/5k1XS4ZNfhcf7xrJ4avCkp8AJJlzX+2SVTat7XbnqhkFRnMiO7xIQnM
 DIs1McOa1Img/sV0WUhTeo5AX6yjYp7BbZuC+lqF/uu9bwSj5/K+cpv/MhTjLj50AtvM5x3c
 twtgrz3fonbmKzoA3H69fFTB1snEavyEBS6dI7tHBDTZAYLIZYsI13xjIlLL47ACn45Io7ed
 Meav302fA+SyL/U1np+kNrwNCqQ00pGAaHTkUoqqWuokZrtUE84E0CyMMFmHAcsLo7Vplf/u
 zBdp9ljbdUU6YtHO1ALdZEZObyM3fKSx7XKm6eSG6XYp0vCjbokdra8b817OaldNghy4Yzoo
 3IVBd9uXQpc0zjJMWS1PRwg17waVT4eQ6o5tBV5pB/tLG5bqHsKze/RFcnlNbli+kDA+XAMs
 zDe65+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49Rhanvt/LEIv3rebWGcyjZIbFIHIBYCfSE3
 EDVD/8KIFr9UawQEL1hxDXRjfDYUr60ZVsELXL3uQaxYQXX7c89zQ9uBCc3IWmODdCuqs5cA
 9VO7X8iJ62omGw4CLp4gxSS15gJ3cQxI+lf2JBpAcMPU+xW60Eoc+jdWdb22bCAhd+SsjRAT
 NOvlgfw9PxE7WggQQZT/63OGOTiHUe4FiQSY0Hp6GF7cD5PrQ1E4ghQ640MQnQDRR6lUJLpQ
 54GU45b36aMgmrpbSujZQSCu2aXcJ7mh2XLcldrm+ak16dq8EpTn4yRCWvTsaTvAYrS1Nv9x
 9M2p5apIDFtSekKGM5juh9GkZLcn6rDLVPCxnAWJ9ZgYnxeAZ7TX6DgBuTjx1bQButy2wiwk
 jaaQGEc/DCBVRQ/lRVyLzj/l9PemKBRE5ocXxhvYphFWPJh2Zr3YawF9mO+lrUTmFH7vAWMT
 nDbzdXGA9oytyt/DO+mTqJFxwdt98TF92YKI5mX6DY23urJoHNqLoPGOVM+o15cPr0tPUQbO
 6ZcwiJDT/xBu8zwTaJrnI9NCQckgh8rdrYnDneqESo1n82BvTfZGl8T7YAOteG8izKQe2L3J
 gRt6N9gcKAdkHKLviIxqHcY2Qddlf9oWuqQ/oprp4Rl6Qor7d3F4TaVzyN9Hwv5mRLEO7E0G
 clBIJ86/T9H6UqWeo4USdQ5EAom9SCN1FDiH28PsYOOXUWy0bGNNaI6YfSobUhAke9tBL9UG
 PvhhF1zrPgZW+/zrYUBKI7HHROZGU94Hpk+vmed4e4MnTcS8hzuH67OGS6arlTVeysHqgRtA
 9z57iz7qKqXhu9/ADbpj1gJK1St06hXMOpGQqJXcpF6cazN1jJoqyk5qeI/XvKYAr+T0QTno
 tec0MMKuxFlzk5lYUylhGIdZafmDNsr3JupRd9llDs3YC64GDUWWF+WDep/al+bH10KXiHjc
 PM7O6C8m/yiQI1gaX+KA==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41305187"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LLzeQD1fYSYTv5AeNTowbKhactxReYLK59S+tL+SaHI3Xz4ASfyfo4fQscY3Co06CjUvCCQIqXDfAxk9Z5o65ml+lsGuTVu9Njxw2c6AYQzZHSZGdXCcKf24XeVFoILsNzfTkJ86zGfE/HWZtbwOnKbUtDjny2agg0RkJfJpf86caxSXgyzOI1w/XQmOMp31PO+E8rkbk+NUD0tohUG0nPJsxMeO/Y/vzWpkd0wwEaYUsrcklM8cr4p1Qd4QA9S8CrQW5XuoQpMU8U5j8MctqV+bq037RyRUGh6qcbqvv5SCiLtdIuqD4Cv9VWiWFEThC30s+KmrQ5F17rFKkCcBTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gjIqRuj6qL85WDmtAGe/nxNv4yRU1JrU/iuqUWrAU6I=;
 b=U1iswAEFslcOB2uplTzRuX4QA1nKl968jCV2hmaiK69A0lOjW/5PEnkDHcTQV1kCgXhFhSIt29L23O3MwSz1RF40TBTIbRjK6vu+fJ35xa67PfTJ6fQUJWYlz7V2c+j6dz/SF9YYaioCSMyao30AgrQ9PLSj7XPZZ33e7EpNDcu+i1X76JSCLu/9ve4sXvs6Yc8qUdEy2EYb7m1vuExLkCNmCuh03PjY2SMYyW4pSDzQihF6ScTZ+NABlmT2uooHOQwcMe0+bELYM85vTJF15HU26yt63q1IWZZhiu7CN3Enw+leI+X0D1hrRrIYqKS36c3sMCWz0BzCNvMbJgtiaw==
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=gjIqRuj6qL85WDmtAGe/nxNv4yRU1JrU/iuqUWrAU6I=;
 b=XFahCHGKnH327T/q9+2qXPqP2bzk58pnkvHXTpgMT421e6lBgG6mfZ/GnSn/yP0lgmyaJDF+flt+o7pa13ut0HbBMzvsmwfERhl1TLIXVZj4Bb7Qy96m+Wme+1r1jr22KHzxSYuGFfB5zX7A2uXma8oiCELXavgpqxC/hVrQHhM=
Date: Tue, 13 Apr 2021 12:18:39 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>, Jun Nakajima
	<jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
Message-ID: <YHVv/wyD6BphWaU/@Air-de-Roger>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
 <YHRnvQvWJ7QsXVgX@Air-de-Roger>
 <c07396f2-b0c5-092b-4e3e-5f452c453e56@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c07396f2-b0c5-092b-4e3e-5f452c453e56@suse.com>
X-ClientProxiedBy: MR2P264CA0192.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::31)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 98196949-8a03-4eae-6d11-08d8fe65856c
X-MS-TrafficTypeDiagnostic: DM5PR03MB2556:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2556387515DD914C4493140C8F4F9@DM5PR03MB2556.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: iBY5DoFCnDrPqdOpiMP/38QuOEA4JYgk7CKMbNCen5nR3iH/ggOaqa041mEh+zi3j+z69ALivX2H5HixCEi5JQxGGZWLByw+Y+icrCNBGcQ6wo2JMWlC5e7wbdI2dUyv0erJrO55S4IFANpkX1JB810UKl9d9DpFDc0SCzoLvdnP/9P/Bf/ng0sLwKl/FW3CmXI9cjLtNjszWTHrXsEYwGQyM+XEfUATEr4hRxFDV+JPh/LZ/owInRvuea7My3vdH3NW8J0d3ifnWAYFGhkazxmF07xWzGp1MFKyKblhM5bTpCb7hCrTKVIliSmekl0xhjoVyj+zLorDBgy3s7E4s8DsCv8Y6RyiG9G3x6D5gbFe5Wu4F03KsZo86c9CNVKgOwxTm/V1QQPX93F8CN2X/WCXMmoRRzQFxff1RVXSAKgelE8bx60Z7nRtc21oq13OhgWXQ3APw7da6GbDRS2XH+mhXjt+h5gSJ5QmjZmOzB6gqhUu/6FNRNmNz02sJXCffEE9UxhkRghSqdTV77mCp6plvtR6v4Xyfa3J/78rizentTwFVyzg/IhGNwzzcnEOBK0uUlF7m8az2cSVPuLowHYRr9dTkW0GQqCIaAkN0qlEBQ9iNYQa3qTSZnag5L6grh38CLTaS0Amoa7xv7W3nfSUETjid1Bg14XiZ5nfhrTTdFKoBOOxc1D8GOXE/XKk
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(396003)(366004)(39860400002)(376002)(136003)(346002)(66476007)(26005)(316002)(53546011)(8936002)(5660300002)(6486002)(66556008)(186003)(38100700002)(66946007)(966005)(33716001)(956004)(86362001)(9686003)(2906002)(478600001)(6666004)(54906003)(6916009)(6496006)(85182001)(8676002)(83380400001)(16526019)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?3B/nDFgJ6nPDp9guKR4vp/y8aW4PmbJHSms7uq6?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 98196949-8a03-4eae-6d11-08d8fe65856c
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 10:18:45.8519
 (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: 3PGnbXq+yH5oTQgxpdncpXQMFT0MXVaUpYXtbGehmaCCgFeufGFDO2DM8srjyuXbb3VzikGEBeSa0+Fn8aCdew==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2556
X-OriginatorOrg: citrix.com

On Tue, Apr 13, 2021 at 11:24:09AM +0200, Jan Beulich wrote:
> On 12.04.2021 17:31, Roger Pau Monné wrote:
> > On Mon, Apr 12, 2021 at 12:40:48PM +0200, Jan Beulich wrote:
> >> The address of this page is used by the CPU only to recognize when to
> >> access the virtual APIC page instead. No accesses would ever go to this
> >> page. It only needs to be present in the (CPU) page tables so that
> >> address translation will produce its address as result for respective
> >> accesses.
> >>
> >> By making this page global, we also eliminate the need to refcount it,
> >> or to assign it to any domain in the first place.
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> >> Reviewed-by: Kevin Tian <kevin.tian@intel.com>
> >> ---
> >> v4: Set PGC_extra on the page. Make shadow mode work.
> >> v3: Split p2m insertion change to a separate patch.
> >> v2: Avoid insertion when !has_vlapic(). Split off change to
> >>     p2m_get_iommu_flags().
> >> ---
> >> I did further consider not allocating any real page at all, but just
> >> using the address of some unpopulated space (which would require
> >> announcing this page as reserved to Dom0, so it wouldn't put any PCI
> >> MMIO BARs there). But I thought this would be too controversial, because
> >> of the possible risks associated with this.
> > 
> > Really seems more trouble than reward. Also there are systems with
> > MMIO regions in holes on the memory map, like the issue I had with the
> > Intel pinctrl stuff that had an MMIO region in a hole on the memory
> > map [0], so I'm not sure Xen would be in a position to select a
> > suitable unpopulated page anyway.
> > 
> > [0] https://lore.kernel.org/xen-devel/YFx80wYt%2FKcHanC7@smile.fi.intel.com/
> 
> Yeah, I had seen that. What I'm having trouble to understand is how the
> OS will know to avoid that range for e.g. placing BARs.

No idea really, I assume they expect that you parse all possible ACPI
devices from the dynamic tables before deciding on any BAR placements?

I still consider a bug that the pinctrl MMIO region is not marked as
reserved in the memory map.

> >> +    {
> >> +        const struct page_info *pg = mfn_to_page(mfn);
> >> +
> >> +        if ( !page_get_owner(pg) && (pg->count_info & PGC_extra) )
> >> +        {
> >> +            ASSERT(type == p2m_mmio_direct);
> >> +            return 0;
> > 
> > Are there any other pages that could pass this check? I don't think
> > so, but wanted to assert.
> 
> "Normal" extra pages have an owner, so no, there aren't any others.
> If and when any appear, this may need further customizing, albeit
> generally I'd hope further pages matching this pattern would also
> want similar treatment.

I wonder whether we want to add an assert here to make sure only the
APIC access page receives this special handling by the shadow code,
but maybe that's a bit too much?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 10:20:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 10:20:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109662.209355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWG9I-0000ap-Aj; Tue, 13 Apr 2021 10:20:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109662.209355; Tue, 13 Apr 2021 10: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 1lWG9I-0000ai-7J; Tue, 13 Apr 2021 10:20:00 +0000
Received: by outflank-mailman (input) for mailman id 109662;
 Tue, 13 Apr 2021 10:19: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 1lWG9G-0000aW-PW; Tue, 13 Apr 2021 10:19: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 1lWG9G-0000rU-I5; Tue, 13 Apr 2021 10:19: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 1lWG9G-0000DP-7w; Tue, 13 Apr 2021 10:19:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWG9G-0000Dh-7Q; Tue, 13 Apr 2021 10:19:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=JXe63wP4GYE+ADL5omzPMRn+RkDiQhL9+p1XBy8TtCM=; b=fB5AbR587j8ALO0DdRZCBc1LsO
	EOQHMab3PE5neymZ5piBbI/MUyw2gWhEAE6wKviGdlaTFUIAA8g0NyjzOV+SY0RmrBBAsLfiECq30
	nSjv1Y06vLDkxzPg//jhpmf6DcvMv94dpc7i2EOKK5qErEu4zVdscCbR7g6DF7J/Ojso=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161050-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161050: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=555249a59e9cdd6b58da103aba5cf3a2d45c899f
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 10:19:58 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                555249a59e9cdd6b58da103aba5cf3a2d45c899f
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  236 days
Failing since        152659  2020-08-21 14:07:39 Z  234 days  437 attempts
Testing same since   161050  2021-04-12 10:54:16 Z    0 days    1 attempts

------------------------------------------------------------
476 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 141725 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 10:48:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 10:48:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109678.209370 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWGan-0003N5-RA; Tue, 13 Apr 2021 10:48:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109678.209370; Tue, 13 Apr 2021 10:48: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 1lWGan-0003My-MI; Tue, 13 Apr 2021 10:48:25 +0000
Received: by outflank-mailman (input) for mailman id 109678;
 Tue, 13 Apr 2021 10:48:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=8rNj=JK=ipxe.org=mcb30@srs-us1.protection.inumbo.net>)
 id 1lWGan-0003Mt-6T
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 10:48:25 +0000
Received: from blyat.fensystems.co.uk (unknown [54.246.183.96])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8bc39709-ae9f-4935-9dfc-dcaa86062316;
 Tue, 13 Apr 2021 10:48:24 +0000 (UTC)
Received: from dolphin.home (unknown
 [IPv6:2a00:23c6:5495:5e00:72b3:d5ff:feb1:e101])
 by blyat.fensystems.co.uk (Postfix) with ESMTPSA id 7678944263;
 Tue, 13 Apr 2021 10:48: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: 8bc39709-ae9f-4935-9dfc-dcaa86062316
Subject: Re: xen-netback hotplug-status regression bug
To: paul@xen.org, Wei Liu <wei.liu@kernel.org>,
 xen-devel@lists.xenproject.org, netdev@vger.kernel.org,
 Paul Durrant <pdurrant@amazon.com>
References: <afedd7cb-a291-e773-8b0d-4db9b291fa98@ipxe.org>
 <f469cdee-f97e-da3f-bcab-0be9ed8cd836@xen.org>
From: Michael Brown <mcb30@ipxe.org>
Message-ID: <58ccc3b7-9ccb-b9bf-84e7-4a023ccb5c56@ipxe.org>
Date: Tue, 13 Apr 2021 11:48:21 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.0
MIME-Version: 1.0
In-Reply-To: <f469cdee-f97e-da3f-bcab-0be9ed8cd836@xen.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00
	autolearn=ham autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on
	blyat.fensystems.co.uk

On 13/04/2021 08:12, Paul Durrant wrote:
>> If the frontend subsequently disconnects and reconnects (e.g. 
>> transitions through Closed->Initialising->Connected) then:
>>
>> - Nothing recreates "hotplug-status"
>>
>> - When the frontend re-enters Connected state, connect() sets up a 
>> watch on "hotplug-status" again
>>
>> - The callback hotplug_status_changed() is never triggered, and so the 
>> backend device never transitions to Connected state.
> 
> That's not how I read it. Given that "hotplug-status" is removed by the 
> call to hotplug_status_changed() then the next call to connect() should 
> fail to register the watch and 'have_hotplug_status_watch' should be 0. 
> Thus backend_switch_state() should not defer the transition to 
> XenbusStateConnected in any subsequent interaction with the frontend.

Thank you for the reply.  I've tested and confirmed my initial 
hypothesis: the call to xenbus_watch_pathfmt() succeeds even if the node 
does not exist.

I confirmed this with ftrace using:

   cd /sys/kernel/debug/tracing
   echo function_graph > current_tracer
   echo set_backend_state > set_ftrace_filter
   echo xenbus_watch_pathfmt >> set_ftrace_filter
   echo register_xenbus_watch >> set_ftrace_filter
   echo xenbus_dev_fatal >> set_ftrace_filter

On the second time that the frontend transitions to Connected, this 
produced the trace:

   set_backend_state [xen_netback]() {
     register_xenbus_watch();
     register_xenbus_watch();
     xenbus_watch_pathfmt() {
       register_xenbus_watch();
     }
   }

which seems to confirm that the error path in xenbus_watch_path() is 
*not* taken, i.e. that the call to register_xenbus_watch() succeeded 
even though the node did not exist.


Other observations also seem to confirm this behaviour:

- Running "xenstore ls" in dom0 confirms that on the second frontend 
transition to Connected, the frontend state is indeed Connected (4) but 
the backend state remains in InitWait (2)

- Running "xenstore watch 
/local/domain/0/backend/vif/<domU>/0/hotplug-status" *before* starting 
the domU confirms that it is possible to create a watch on a node that 
does not (yet) exist, and that the watch *is* notified when the node is 
later created.

> Are you seeing the watch successfully re-registered even though the node 
> does not exist? Perhaps there has been a change in xenstore behaviour?

So, the TL;DR is that yes, the watch does successfully register even 
though the node does not exist.

 From a quick look through the xenstored source, it looks as though the 
only check on the node name is the call to is_valid_nodename(), which 
seems to perform a syntactic validity check only.  I can't immediately 
find any commit that would have changed this behaviour.

Thanks,

Michael


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 10:55:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 10:55:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109684.209385 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWGho-0004Kx-I6; Tue, 13 Apr 2021 10:55:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109684.209385; Tue, 13 Apr 2021 10:55:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWGho-0004Kq-F6; Tue, 13 Apr 2021 10:55:40 +0000
Received: by outflank-mailman (input) for mailman id 109684;
 Tue, 13 Apr 2021 10:55:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Zkz=JK=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lWGhn-0004Kl-HC
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 10:55:39 +0000
Received: from mail-wm1-x330.google.com (unknown [2a00:1450:4864:20::330])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 494cbfa0-d0bc-4f7f-81a2-d6ec36a3c214;
 Tue, 13 Apr 2021 10:55:38 +0000 (UTC)
Received: by mail-wm1-x330.google.com with SMTP id
 u5-20020a7bcb050000b029010e9316b9d5so8496396wmj.2
 for <xen-devel@lists.xenproject.org>; Tue, 13 Apr 2021 03:55:38 -0700 (PDT)
Received: from [192.168.1.186]
 (host86-180-176-157.range86-180.btcentralplus.com. [86.180.176.157])
 by smtp.gmail.com with ESMTPSA id c8sm22243008wrd.55.2021.04.13.03.55.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 13 Apr 2021 03:55: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: 494cbfa0-d0bc-4f7f-81a2-d6ec36a3c214
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=Gyk1R/2jQPlA3t+EKRdfQlscDn+3pd+/7/4XIApaYIY=;
        b=GQR9ItVP2lXEmeKH6pJq+uciicpt0/e79sg09QrjQU/vGjzbmg5bm8ehPGSfel7iw1
         n7CDZqTMCQ8LnGWXqY0YGrvvDXcpXSzR7u/uO9m72JUafzD3sBhC9IDw8iUyHj44t0i+
         tLv1D/KPWRJ7FLKjOjW2I/Ml7XdDWzZbSlVIQh34pUOqXesQgUV2aizs5BV3MOSrgSOn
         /FLZGAOxyiP5oHSZXKZcTbI1bPN5WUE1GY0SRNBjvPP5b2+/pdDnj0yz4DgkGASqNsez
         wl5E3vgz15+3wZezXpYn+4yiMvWIhvi78Alr/QIfmC0Qz9w2+2ySeQkxaLhPDFQdj4wA
         +fEQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=Gyk1R/2jQPlA3t+EKRdfQlscDn+3pd+/7/4XIApaYIY=;
        b=apPku8Eb8wTZM5l3ao8AJSd/aJ8Ehx2cd8L/8ennP0hMLC5NDYwT14gTKxoqG1jeYq
         CvxJ7Rn1Ifmp45VshBGdrxvZxinH5qRJdnnHMWIz1wFsGKNlppspp71uhl9xw7fi3o7Z
         Kt1oMUX+yVRecOqYAYCU+WmtJH4VyK5uYBxiFohjSPyb703ZaZQw6ydOjIk6nXfVT2Bj
         DwPDhnCLdOZoh7IgFgmW7NCsl2W+rTTaVYJh7HZbNyjYDj2QBX1f6O3QScOy+qr+4SAN
         OO7uCBGt+gnT2GvjSHHXJTPtVopwQ9hb/QoVHtNLCu8Jz6VdWRf2sgfPkZt+GA56RHcq
         GIHA==
X-Gm-Message-State: AOAM531++y98paMHAfQhPIZJZwn5ft18rBR8m7YtQVCFT/W5LnwaD7Kh
	45AbVXOCiqO5L6EM0iI/19A=
X-Google-Smtp-Source: ABdhPJyYSZuBIwhQYL7lM0XOhccS5FiKDIS28Ur5j6d3ses1tVkhHXkv8w2yLY42L9hiDUqcsDVQJg==
X-Received: by 2002:a05:600c:1550:: with SMTP id f16mr3557871wmg.22.1618311337654;
        Tue, 13 Apr 2021 03:55:37 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: xen-netback hotplug-status regression bug
To: Michael Brown <mcb30@ipxe.org>, Wei Liu <wei.liu@kernel.org>,
 xen-devel@lists.xenproject.org, netdev@vger.kernel.org,
 Paul Durrant <pdurrant@amazon.com>
References: <afedd7cb-a291-e773-8b0d-4db9b291fa98@ipxe.org>
 <f469cdee-f97e-da3f-bcab-0be9ed8cd836@xen.org>
 <58ccc3b7-9ccb-b9bf-84e7-4a023ccb5c56@ipxe.org>
Message-ID: <54659eec-e315-5dc5-1578-d91633a80077@xen.org>
Date: Tue, 13 Apr 2021 11:55:36 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <58ccc3b7-9ccb-b9bf-84e7-4a023ccb5c56@ipxe.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 13/04/2021 11:48, Michael Brown wrote:
> On 13/04/2021 08:12, Paul Durrant wrote:
>>> If the frontend subsequently disconnects and reconnects (e.g. 
>>> transitions through Closed->Initialising->Connected) then:
>>>
>>> - Nothing recreates "hotplug-status"
>>>
>>> - When the frontend re-enters Connected state, connect() sets up a 
>>> watch on "hotplug-status" again
>>>
>>> - The callback hotplug_status_changed() is never triggered, and so 
>>> the backend device never transitions to Connected state.
>>
>> That's not how I read it. Given that "hotplug-status" is removed by 
>> the call to hotplug_status_changed() then the next call to connect() 
>> should fail to register the watch and 'have_hotplug_status_watch' 
>> should be 0. Thus backend_switch_state() should not defer the 
>> transition to XenbusStateConnected in any subsequent interaction with 
>> the frontend.
> 
> Thank you for the reply.  I've tested and confirmed my initial 
> hypothesis: the call to xenbus_watch_pathfmt() succeeds even if the node 
> does not exist.
> 
> I confirmed this with ftrace using:
> 
>   cd /sys/kernel/debug/tracing
>   echo function_graph > current_tracer
>   echo set_backend_state > set_ftrace_filter
>   echo xenbus_watch_pathfmt >> set_ftrace_filter
>   echo register_xenbus_watch >> set_ftrace_filter
>   echo xenbus_dev_fatal >> set_ftrace_filter
> 
> On the second time that the frontend transitions to Connected, this 
> produced the trace:
> 
>   set_backend_state [xen_netback]() {
>     register_xenbus_watch();
>     register_xenbus_watch();
>     xenbus_watch_pathfmt() {
>       register_xenbus_watch();
>     }
>   }
> 
> which seems to confirm that the error path in xenbus_watch_path() is 
> *not* taken, i.e. that the call to register_xenbus_watch() succeeded 
> even though the node did not exist.
> 
> 
> Other observations also seem to confirm this behaviour:
> 
> - Running "xenstore ls" in dom0 confirms that on the second frontend 
> transition to Connected, the frontend state is indeed Connected (4) but 
> the backend state remains in InitWait (2)
> 
> - Running "xenstore watch 
> /local/domain/0/backend/vif/<domU>/0/hotplug-status" *before* starting 
> the domU confirms that it is possible to create a watch on a node that 
> does not (yet) exist, and that the watch *is* notified when the node is 
> later created.
> 
>> Are you seeing the watch successfully re-registered even though the 
>> node does not exist? Perhaps there has been a change in xenstore 
>> behaviour?
> 
> So, the TL;DR is that yes, the watch does successfully register even 
> though the node does not exist.
> 
>  From a quick look through the xenstored source, it looks as though the 
> only check on the node name is the call to is_valid_nodename(), which 
> seems to perform a syntactic validity check only.  I can't immediately 
> find any commit that would have changed this behaviour.
> 

Ok, so it sound like this was probably my misunderstanding of xenstore 
semantics in the first place (although I'm sure I remember watch 
registration failing for non-existent nodes at some point in the past... 
that may have been with a non-upstream version of oxenstored though).

Anyway... a reasonable fix would therefore be to read the node first and 
only register the watch if it does exist.

   Paul

> Thanks,
> 
> Michael



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 11:11:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 11:11:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109692.209400 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWGxO-00067A-Nu; Tue, 13 Apr 2021 11:11:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109692.209400; Tue, 13 Apr 2021 11: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 1lWGxO-000673-Kx; Tue, 13 Apr 2021 11:11:46 +0000
Received: by outflank-mailman (input) for mailman id 109692;
 Tue, 13 Apr 2021 11:11: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 1lWGxN-00066v-Dp; Tue, 13 Apr 2021 11:11: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 1lWGxN-0001is-6g; Tue, 13 Apr 2021 11:11: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 1lWGxM-0002cp-Uf; Tue, 13 Apr 2021 11:11:45 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWGxM-0008ES-U7; Tue, 13 Apr 2021 11: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eLbISN/Ua5UWsf08y9R14+O0G6fI/Jhl7UXoHWb4Hdg=; b=DTCvIffJPMo0KYA0G5btvUGlLw
	25avpazIv3gbE4BVagVgtyNoK1o9KT6fbYLKzlyxMH9JHqTEVQ1B8BOVn7D5uo2L8Kt1tw4p4JKYD
	EYJzWUI2jac+aCbGN/GlEETMa3ev4y70YGREpV8+5JLuN3kmiPZJkNRKtB2sNSU6i/Vo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161085-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161085: 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=3ccd796952deda179cb148606f7f7b3d6bea74b7
X-Osstest-Versions-That:
    xen=be167ac0f0268074880b961c936519f756ac045b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 11:11:44 +0000

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

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                  3ccd796952deda179cb148606f7f7b3d6bea74b7
baseline version:
 xen                  be167ac0f0268074880b961c936519f756ac045b

Last test of basis   161051  2021-04-12 11:00:27 Z    1 days
Testing same since   161085  2021-04-13 09:00:25 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>

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
   be167ac0f0..3ccd796952  3ccd796952deda179cb148606f7f7b3d6bea74b7 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 12:04:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 12:04:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109718.209420 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWHlr-0002F0-60; Tue, 13 Apr 2021 12:03:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109718.209420; Tue, 13 Apr 2021 12:03: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 1lWHlr-0002Et-2r; Tue, 13 Apr 2021 12:03:55 +0000
Received: by outflank-mailman (input) for mailman id 109718;
 Tue, 13 Apr 2021 12:03:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=XFwQ=JK=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWHlp-0002Ek-ID
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 12:03:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e81b8f6b-4a85-42af-b914-64040811778f;
 Tue, 13 Apr 2021 12:03:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F0513AFAB;
 Tue, 13 Apr 2021 12:03: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: e81b8f6b-4a85-42af-b914-64040811778f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618315432; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ATfV7p4h3W1F8WQ6C9MwBGR703K73Rquu1Z0XvzEGys=;
	b=qEY3jvgeEfEDRKA7VsxdJrjK4FrAE7Nm22owy6YbmuxDKeI+snz4W5H6jpTz1pJGDKfEJV
	QMkfrTs3OufPc7Q8dXBdKsNy1szJAXYy8EiAp8dTqPsaALLlf91pIbTN0IXoooPbjpT0Oi
	2RXkq2mbib5N0KyCesf6YArF3Dg2moU=
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
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>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
 <YHRnvQvWJ7QsXVgX@Air-de-Roger>
 <c07396f2-b0c5-092b-4e3e-5f452c453e56@suse.com>
 <YHVv/wyD6BphWaU/@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <4190da5f-65c2-dfee-e84e-9d5560dabf69@suse.com>
Date: Tue, 13 Apr 2021 14:03:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHVv/wyD6BphWaU/@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 13.04.2021 12:18, Roger Pau Monné wrote:
> On Tue, Apr 13, 2021 at 11:24:09AM +0200, Jan Beulich wrote:
>> On 12.04.2021 17:31, Roger Pau Monné wrote:
>>> On Mon, Apr 12, 2021 at 12:40:48PM +0200, Jan Beulich wrote:
>>>> +    {
>>>> +        const struct page_info *pg = mfn_to_page(mfn);
>>>> +
>>>> +        if ( !page_get_owner(pg) && (pg->count_info & PGC_extra) )
>>>> +        {
>>>> +            ASSERT(type == p2m_mmio_direct);
>>>> +            return 0;
>>>
>>> Are there any other pages that could pass this check? I don't think
>>> so, but wanted to assert.
>>
>> "Normal" extra pages have an owner, so no, there aren't any others.
>> If and when any appear, this may need further customizing, albeit
>> generally I'd hope further pages matching this pattern would also
>> want similar treatment.
> 
> I wonder whether we want to add an assert here to make sure only the
> APIC access page receives this special handling by the shadow code,
> but maybe that's a bit too much?

I think so, yes: It would require either a separate function or
making the variable global. Both feel like a layering violation.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 12:10:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 12:10:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109724.209433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWHsM-0003AT-TS; Tue, 13 Apr 2021 12:10:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109724.209433; Tue, 13 Apr 2021 12:10:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWHsM-0003AM-QJ; Tue, 13 Apr 2021 12:10:38 +0000
Received: by outflank-mailman (input) for mailman id 109724;
 Tue, 13 Apr 2021 12:10:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OBYq=JK=redhat.com=lersek@srs-us1.protection.inumbo.net>)
 id 1lWHsL-0003AH-2p
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 12:10:37 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [170.10.133.124])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id c17f714b-f563-4446-b349-34b10293e6b8;
 Tue, 13 Apr 2021 12:10:35 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-372-gktbzRgxOYa8En4hLtKCwg-1; Tue, 13 Apr 2021 08:10:29 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com
 [10.5.11.11])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 947666D4F0;
 Tue, 13 Apr 2021 12:10:28 +0000 (UTC)
Received: from lacos-laptop-7.usersys.redhat.com (ovpn-115-199.ams2.redhat.com
 [10.36.115.199])
 by smtp.corp.redhat.com (Postfix) with ESMTP id DC8232BFE1;
 Tue, 13 Apr 2021 12:10: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: c17f714b-f563-4446-b349-34b10293e6b8
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1618315835;
	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=TR1x+oyL5xq0zAQdG3dkRiMJil3sPR8Z4Vx4UGDPOJw=;
	b=IQitdEj1X0mGKXSPjdMWVRMaxmMd1myHTGtgGD1Sx4znFIK15pgJmin9qCb5N9ALKye5+y
	2wJkz2qoir2ByfwJh1p3cIuvCxA+rr3+I/y6XCx1ExG1aCIT9Az4nsHKu/jjsgyu45J6Zb
	AvbYdTe6uTElZszzQZlnrBNVzqGpPFM=
X-MC-Unique: gktbzRgxOYa8En4hLtKCwg-1
Subject: Re: [edk2-devel] [PATCH v3 0/7] OvmfXen: Set PcdFSBClock at runtime
To: devel@edk2.groups.io, anthony.perard@citrix.com
Cc: Jordan Justen <jordan.l.justen@intel.com>,
 Ard Biesheuvel <ardb+tianocore@kernel.org>, xen-devel@lists.xenproject.org,
 Julien Grall <julien@xen.org>
References: <20210412133003.146438-1-anthony.perard@citrix.com>
From: Laszlo Ersek <lersek@redhat.com>
Message-ID: <36175704-977a-ddf5-24ac-fe51be39a51c@redhat.com>
Date: Tue, 13 Apr 2021 14:10:25 +0200
MIME-Version: 1.0
In-Reply-To: <20210412133003.146438-1-anthony.perard@citrix.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=lersek@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 04/12/21 15:29, Anthony PERARD via groups.io wrote:
> Patch series available in this git branch:
> git://xenbits.xen.org/people/aperard/ovmf.git br.apic-timer-freq-v3
> 
> Changes in v3:
> - typos and codying style

Merged in commit range 16136f218d54..71cdb91f3133, via <https://github.com/tianocore/edk2/pull/1560>, with the following updates:

1:  cc0477d6a5d6 = 1:  29280c7084ee OvmfPkg/XenResetVector: Silent a warning from nasm
2:  4459ca235222 ! 2:  44ad51d6b19a MdePkg: Allow PcdFSBClock to by Dynamic
    @@ -8,8 +8,8 @@
         Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
         Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
         Reviewed-by: Laszlo Ersek <lersek@redhat.com>
    -    Reviewed-by: Liming Gao <liming.gao@intel.com>
         Message-Id: <20210412133003.146438-3-anthony.perard@citrix.com>
    +    Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
     
     diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec
     --- a/MdePkg/MdePkg.dec
3:  d2b81d656c53 = 3:  896e68984118 OvmfPkg/IndustryStandard/Xen: Apply EDK2 coding style to XEN_VCPU_TIME_INFO
4:  e2bbc17dc92b ! 4:  9d6861494aaa OvmfPkg/IndustryStandard: Introduce PageTable.h
    @@ -10,6 +10,7 @@
         Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
         Acked-by: Tom Lendacky <thomas.lendacky@amd.com>
         Message-Id: <20210412133003.146438-5-anthony.perard@citrix.com>
    +    Reviewed-by: Laszlo Ersek <lersek@redhat.com>
     
     diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h b/OvmfPkg/Include/IndustryStandard/PageTable.h
     similarity index 60%
5:  158053f2ea02 = 5:  51e0bd28bba9 OvmfPkg/XenPlatformPei: Map extra physical address
6:  a37eba1a4ef4 = 6:  c75c6405128e OvmfPkg/XenPlatformPei: Calibrate APIC timer frequency
7:  7dfd174c2dc6 ! 7:  71cdb91f3133 OvmfPkg/OvmfXen: Set PcdFSBClock
    @@ -31,6 +31,7 @@
         Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
         Reviewed-by: Laszlo Ersek <lersek@redhat.com>
         Message-Id: <20210412133003.146438-8-anthony.perard@citrix.com>
    +    [lersek@redhat.com: cast Freq to UINT32 for PcdSet32S(), not for ASSERT()]
     
     diff --git a/OvmfPkg/OvmfXen.dsc b/OvmfPkg/OvmfXen.dsc
     --- a/OvmfPkg/OvmfXen.dsc
    @@ -73,8 +74,8 @@
        Freq = DivU64x64Remainder (Dividend, TscTick2 - TscTick, NULL);
        DEBUG ((DEBUG_INFO, "APIC Freq % 8lu Hz\n", Freq));
      
    -+  ASSERT ((UINT32)Freq <= MAX_UINT32);
    -+  Status = PcdSet32S (PcdFSBClock, Freq);
    ++  ASSERT (Freq <= MAX_UINT32);
    ++  Status = PcdSet32S (PcdFSBClock, (UINT32)Freq);
     +  ASSERT_EFI_ERROR (Status);
     +
        UnmapXenPage (SharedInfo);

Thanks
Laszlo

> 
> Changes in v2:
> - main change is to allow mapping of Xen pages outside of the RAM
>   see patch: "OvmfPkg/XenPlatformPei: Map extra physical address"
> - that new function allows to map the Xen shared info page (where we can find
>   information about tsc frequency) at the highest physical address allowed.
> 
> Hi,
> 
> OvmfXen uses the APIC timer, but with an hard-coded frequency that may change
> as pointed out here:
>   https://edk2.groups.io/g/devel/message/45185
>   <20190808134423.ybqg3qkpw5ucfzk4@Air-de-Roger>
> 
> This series changes that so the frequency is calculated at runtime.
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2490
> 
> There is also one cleanup patch that has nothing to do with the rest.
> 
> Cheers,
> 
> Anthony PERARD (7):
>   OvmfPkg/XenResetVector: Silent a warning from nasm
>   MdePkg: Allow PcdFSBClock to by Dynamic
>   OvmfPkg/IndustryStandard/Xen: Apply EDK2 coding style to
>     XEN_VCPU_TIME_INFO
>   OvmfPkg/IndustryStandard: Introduce PageTable.h
>   OvmfPkg/XenPlatformPei: Map extra physical address
>   OvmfPkg/XenPlatformPei: Calibrate APIC timer frequency
>   OvmfPkg/OvmfXen: Set PcdFSBClock
> 
>  MdePkg/MdePkg.dec                             |   8 +-
>  OvmfPkg/OvmfXen.dsc                           |   4 +-
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf     |   4 +
>  .../IndustryStandard/PageTable.h}             | 117 +-------
>  OvmfPkg/Include/IndustryStandard/Xen/xen.h    |  17 +-
>  .../BaseMemEncryptSevLib/X64/VirtualMemory.h  | 143 +---------
>  OvmfPkg/XenPlatformPei/Platform.h             |  10 +
>  OvmfPkg/XenPlatformPei/Platform.c             |   1 +
>  OvmfPkg/XenPlatformPei/Xen.c                  | 252 ++++++++++++++++++
>  OvmfPkg/XenResetVector/Ia32/XenPVHMain.asm    |   2 +-
>  10 files changed, 287 insertions(+), 271 deletions(-)
>  copy OvmfPkg/{Library/BaseMemEncryptSevLib/X64/VirtualMemory.h => Include/IndustryStandard/PageTable.h} (60%)
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 12:55:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 12:55:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109738.209451 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWIZ8-0006qJ-FM; Tue, 13 Apr 2021 12:54:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109738.209451; Tue, 13 Apr 2021 12: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 1lWIZ8-0006qC-CB; Tue, 13 Apr 2021 12:54:50 +0000
Received: by outflank-mailman (input) for mailman id 109738;
 Tue, 13 Apr 2021 12:54:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=J6X8=JK=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lWIZ6-0006q7-Q7
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 12:54:48 +0000
Received: from userp2130.oracle.com (unknown [156.151.31.86])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c22320f6-0e74-41a1-96cd-a63fde9a62d9;
 Tue, 13 Apr 2021 12:54:47 +0000 (UTC)
Received: from pps.filterd (userp2130.oracle.com [127.0.0.1])
 by userp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13DCnpu8092608;
 Tue, 13 Apr 2021 12:54:46 GMT
Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71])
 by userp2130.oracle.com with ESMTP id 37u3ereyaw-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Tue, 13 Apr 2021 12:54:46 +0000
Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1])
 by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13DCoURn131726;
 Tue, 13 Apr 2021 12:54:45 GMT
Received: from nam02-dm3-obe.outbound.protection.outlook.com
 (mail-dm3nam07lp2042.outbound.protection.outlook.com [104.47.56.42])
 by aserp3030.oracle.com with ESMTP id 37unkpg93t-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Tue, 13 Apr 2021 12:54:45 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by BYAPR10MB2838.namprd10.prod.outlook.com (2603:10b6:a03:8f::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Tue, 13 Apr
 2021 12:54:43 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024%7]) with mapi id 15.20.4042.016; Tue, 13 Apr 2021
 12:54:43 +0000
Received: from [10.74.99.115] (138.3.201.51) by
 BYAPR07CA0007.namprd07.prod.outlook.com (2603:10b6:a02:bc::20) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Tue, 13 Apr 2021 12:54: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: c22320f6-0e74-41a1-96cd-a63fde9a62d9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=zr7zlKjnCZUqs/Eic6tF6Odis6YzOwmg5k/K9Dvq0m0=;
 b=cF4dXe0RDt+KFp/TTV46tw4dAs25WGHCoq1s0Hrc+xKIf7LYgoMJ9Yn0+PZWvF4362Oo
 5OiY4zkFAaDlgWvMr/booYjQ9ilQ3wBrfg20ef6+PmmdMFY5AkVQGOlIWKEYY/gMWunJ
 W5LtC70y0NqLPHQJ/+3D7MlLIbEW/d8qDzrpoR62DWBBhQFhmtkg1gSpC1vRpl4ejjwf
 veTJa4m3caYX3JG8/fcz3mB0GVIIB5ZB+MD+xQy11j5WhNLdVLX3DPB2elR0UZNS7fpx
 lBD9//O4P2QvKOLnKKFtT737vlJhvmpDR3kysEe19LiD9rvSBRZKVMwLsPH9YVZtbI1t EQ== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KLJ/IUVWAPVC6vxhDtlIcAYjnq343pvL9JbXZqopInwNVyf6F91fZnNI/CnRF37z8ZjAedjxJhp1V01Xbo8RpAbrttSGjVqepM4IcCDV1OgLbhydy/PpPpsakNV3Z8dbMUdcuOE43A+4WwrzqBuYF1ZUbfzSzAQpCwi4T4MU3EZFhd+w559a2fJjPG0Zq8UjsR18r3kjhb1uQZHLHSXbkWd0JZKLpsqolkFyKsVaap0U22f7vzgudi7I766naXEFnkgZir5hTbExkY9rUMQqL7a+P0pVcdqUaUJFpTMYJ7tC7arqD6KSw9fq9uH1mPxUxNwbrKZ1Q6nCELVK7P0jKw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zr7zlKjnCZUqs/Eic6tF6Odis6YzOwmg5k/K9Dvq0m0=;
 b=l0UsJqOD7FR7j7GdLP6D09VY+CZsT+iivwcV93rywDNy9aJE/OF+YUDmaTaTWMGgkIIUOdT3mM3sMK/R4AufSzWcH8u03ohJ9iBJH6nBJSLt3OrUDYNjzR9LN5G0CajRM1DJYf5Pi6IK4Fz7g6HYQqKHc27J6DYOERp8QE8oQi1wPkRrduAeXqxefwMrDpwJqIryorhv7yxNSgGTohROjWQ88rwBYsy3WMPfHRlgY86mqqx/S1EHRvxYhvueLWayC/67rEkmVO/Y1tbYEvyw46MyQkmKruuj6GaC4cWw98gB5bE9j+JGcIVl4ipVEgasNNxCYCpUPv+S75vRv+L5uQ==
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=zr7zlKjnCZUqs/Eic6tF6Odis6YzOwmg5k/K9Dvq0m0=;
 b=aPs2IGzlQaAgRC4Ax5dg+3r9OlZQQKyLBWTrQKS9KEzp+IHMUO0P2wtv54+zn91RP1dbz8dvXrPSjBvviujiafd4JoDeb0o8ipUyH54ryev8+Rko4OFKjIJBzk4QAGj1GlUPHt8fn2PZNDU0k5ydC5LhGmQXh/qW0eUev3EIB9s=
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=oracle.com;
Subject: Re: [PATCH 3/3] xen-pciback: simplify vpci's find hook
To: Jan Beulich <jbeulich@suse.com>
Cc: Juergen Gross <jgross@suse.com>, Konrad Wilk <konrad.wilk@oracle.com>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
 <e9f358bc-e957-e039-235c-6a9f68328554@oracle.com>
 <ea274ffe-4eee-9fa5-b5d1-e8528b112227@suse.com>
 <037a8fc2-2c69-2049-8826-32181b8aec2d@oracle.com>
 <e7686006-5f95-3216-60ff-daf1b1cbe8c4@suse.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Message-ID: <4103f557-fda2-719a-2875-07f957d08c44@oracle.com>
Date: Tue, 13 Apr 2021 08:54:39 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
In-Reply-To: <e7686006-5f95-3216-60ff-daf1b1cbe8c4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Originating-IP: [138.3.201.51]
X-ClientProxiedBy: BYAPR07CA0007.namprd07.prod.outlook.com
 (2603:10b6:a02:bc::20) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 84e562cd-c671-4f66-14e6-08d8fe7b4f21
X-MS-TrafficTypeDiagnostic: BYAPR10MB2838:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: 
	<BYAPR10MB283812C4FD1B01BD6F96D02F8A4F9@BYAPR10MB2838.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	eStVWJMVZy7Recw1kObC4D8Va4nUuabNI2PZ1uDrhwC9mWHrpsTkn2CSFerBViae3BeJMUc+Ow5MQYdlqNK/pdYk+2l8Eq/aux2u3igboAdZCOuM29fO4yfMr6QBPXiO1lhtkJJUeQv3MTth+LBTCWMapFW0z8LIJbohAmVSJmeWVi1/FxbhJJ4SuMs7Lo3muC2elTnTc9/ojFHaPALHBGYE7YlVj0X6veQwIPge42SgUOhhnEaTnY3uC8p8KIX8cHKRgj8nebLzq7IAeKiBZmMBNzV+cGsOX0CPR2cz1Bz1ngGiLh4aSRet2LisAOIuK5XzD+EDqEkZ0OZDRvjE2sSy/f/ZRAO5YSJjFhNqmnJTzSYKDnglekfOwQX1v7MV9Su+If0CFHnkoK6pMIcXUDsYfGZysIZR5JrNrCCY9ppjU0fxWapnBWpQ9kF9YhaR8u/vUE+tfQRmOq2nXPbmhV95nw7IfB59PClWmpzkdOgsIWfOW2I8XT0rysPt+t1kayMT3voIzJaXc207jjFF1tu2T+q77xx3rBrsYf0DRhVIV22bRSEOVUI1i5YgKkMtrgGnLPajS5EmcCjKSEvEY/j8m5MdgA3hbA0UpDh6TqAItTidaebKZ+6++SdPOJFXeOTur9q8zRb/tO90WBgKVEXmML4in8xE3ZkuStmPXCtQOL0UUiBIZIGeeNagA1S+
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(396003)(376002)(136003)(39860400002)(366004)(2616005)(478600001)(956004)(5660300002)(6666004)(66946007)(186003)(6916009)(8676002)(16576012)(6486002)(31686004)(54906003)(86362001)(26005)(4326008)(4744005)(2906002)(44832011)(31696002)(66476007)(16526019)(8936002)(316002)(38100700002)(36756003)(53546011)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
 =?utf-8?Q?DwChpgyVZp5m0MbcbPiiPa9p/jblpRHm68zbNFX?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 84e562cd-c671-4f66-14e6-08d8fe7b4f21
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 12:54:43.6285
 (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: AAgWWz2PTGgpAHkgNGcbDGkNtGMaD4uq55NX94a4LjNvhRxCsPpf/dSSVu5vVoavdd1mGSM2PnSsoHEGpeKNQjBv14MNK41EBty6Utprt0k=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR10MB2838
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9952 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=999
 adultscore=0 phishscore=0 malwarescore=0 mlxscore=0 bulkscore=0
 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104130089
X-Proofpoint-ORIG-GUID: cOEW3Tr7y_SFxRx7HU1nB2OqotpcSukI
X-Proofpoint-GUID: cOEW3Tr7y_SFxRx7HU1nB2OqotpcSukI
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9952 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 clxscore=1015
 adultscore=0 mlxlogscore=999 bulkscore=0 malwarescore=0 spamscore=0
 impostorscore=0 suspectscore=0 mlxscore=0 phishscore=0 lowpriorityscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104130089


On 4/13/21 4:09 AM, Jan Beulich wrote:
> On 12.04.2021 18:05, Boris Ostrovsky wrote:
>>
>> Given that next Sunday may be when 5.12 is released I think everything but stoppers will have to wait for the merge window.
> Oh, I didn't mean it this way. Instead I thought the 3rd patch here could
> be pushed to Linus during the merge window, while the other two may be
> fine to go his way also during early RCs of 5.13 (giving us some time to
> sort what exactly we want to do).
>

Ah, yes, that works.


-boris



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 13:03:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 13:03:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109747.209463 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWIhP-0007mw-Aj; Tue, 13 Apr 2021 13:03:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109747.209463; Tue, 13 Apr 2021 13:03: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 1lWIhP-0007mp-6S; Tue, 13 Apr 2021 13:03:23 +0000
Received: by outflank-mailman (input) for mailman id 109747;
 Tue, 13 Apr 2021 13:03:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWIhN-0007mk-Ua
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 13:03:22 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5c246911-129b-4ca6-969d-1bb7db5efca0;
 Tue, 13 Apr 2021 13:03:21 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5c246911-129b-4ca6-969d-1bb7db5efca0
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618319001;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=agud5dld3jb18gvL9/F4q0wJ5iGl/NtUsx0lOah4/O0=;
  b=X9VYRy+iMVhrhWObLsT+03uiD6HcRkdjPmniUgzXb1KtYLQbC9zpGwOp
   ZaPT0YaaKY30OARPVBJP2NcCST3/b9w05BJyZTriouVm9f4To0BZE6vbU
   k3mRuG+ygRh74zrKWOXzdCZWgupe9xFdWwOKI6DARhaoUnDdJ3Og8L9YT
   c=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: wj4t4IKJgnVcMOOfyLCsATo1AIZxn1Zc9cKF2MBryOSyaD2E4loyUMGmLEdi/9jjtfEpmIBlGk
 WY7Ds57Kyv93m7n9WYdmxP4wdt+IVG8Ur91zHDqUtWUcq36gOweKf1SWvIykrL1Uqtz8QPd0gx
 xIvKqcePty9iZ+ov2Cd2L4hdFEtE82q2U9xOQVYWW8JsDVqY2ASiydj/vuL+BeB3HRsLUGgite
 MLdKBTJrAo//zw5UYnSLydlKlC+9nQ4a29ovKTs6pZK7u9bDJzGvA9MTSZx8m4WVSQ7p17vYTX
 lnY=
X-SBRS: 5.2
X-MesageID: 41860809
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9C0DHqquUI7DeKJ19IwhdvwaV5qxeYIsi2QD101hICF9WMqeis
 yogbAnzhfykjkcQzUNntqHNamGTxrnhPxIyKMWOqqvWxSjhXuwIOhZnOjf6hDDOwm7zO5S0q
 98b7NzYeeaMXFWhdv3iTPYL/8O29+CmZrGuc7771NACT5ncLth6QARMGqmO2l7XhNPC5Z8NL
 f03LsjmxOadX4abtu2CxA+NoCoyuHjro7sYhINGncciDWmsDXA0tDHOind+AwfXTNJybIL6n
 PEjAT926Wmv5iAu3vh61M=
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41860809"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TRZFCGD1+7rLLzZpFp1A0GBnHKNbhyMNJglvPgRbdToJ8NGLZME7amebq5KwD3YDBgQ2MpD0UNRI1V7F3K0UiYFrSqNoiFlJCypuLAYnD+QBF0YQT3XGUYzYCqasnzRaobuUxmqJ48dul6hQqQJpEgDuP+5zdc2rG2guOKxyj1eu2Ysilxf8ZuHSB+jaGvfhoBZU5V8JAjpf+npOYIokK8YjgiQTRWLC2+JPf7+vG2S2VWJGD4Y+xxU9Wh6Vbb2vd5mumxkEqqe+1M1IpL3Plu0FtAYY9bwMRHfgPA9u3UncbrkEY9FnOP5O5kh32b948oFPJQoTr+PosBWWff/1wg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IxogzJKt1mqp/zV/CtKIlySQhljhRvouFeKXJivfonY=;
 b=bB47jZzQfzOHBF3d8YylUaJZVK5+4aty3hSDILFb7UmtwX6u1rpidt5hRaSWIfv3ozEm4DGO/0eb6eVnkdUdmQ/yJgHsXHDJn2g+QkO2bKB2r1wF1gw8E52OII1FJRddtOtLGeLSAgxiixxm0oCw4Azh7L2/tsBaOpHQeFwFDic0o4ADtqccCSk2m67Nm48QS4HMYHWmIu2wDOODOI8XL9UtxGMK+ic4TqXx/dfh4tf0TSB3O+tRHDtZUxwcRdrYYt5xVXguc9LAJSPavrRjStE6Z73DOqSehH16Sm89fLdngER27IsyRV4YJ+jm+xbkieH2HJKWWulmVZo2Y1YLLQ==
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=IxogzJKt1mqp/zV/CtKIlySQhljhRvouFeKXJivfonY=;
 b=Xv/UMDHSn71EfNU6HrUm2hw14mE6ZnnPEvnpGVT1qJ9tGVNerORruVcTinxuWAntPyRXP0+Qp2btvm0YyOvc2hs9gauSdJ4/HwWLk6pWf8dOXSRVI2TFHHkQrYcMz+xcVn+sjpxrYYhekejevCrGTYrVV2UytDLWou3W7xcVLqM=
Date: Tue, 13 Apr 2021 15:03: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>, George Dunlap
	<george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>, Jun Nakajima
	<jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
Message-ID: <YHWWkA7bHxmwBtH4@Air-de-Roger>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
 <YHRnvQvWJ7QsXVgX@Air-de-Roger>
 <c07396f2-b0c5-092b-4e3e-5f452c453e56@suse.com>
 <YHVv/wyD6BphWaU/@Air-de-Roger>
 <4190da5f-65c2-dfee-e84e-9d5560dabf69@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <4190da5f-65c2-dfee-e84e-9d5560dabf69@suse.com>
X-ClientProxiedBy: PR3P189CA0037.EURP189.PROD.OUTLOOK.COM
 (2603:10a6:102:53::12) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2c194f58-d711-45e5-80a5-08d8fe7c8135
X-MS-TrafficTypeDiagnostic: DM6PR03MB4217:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4217486FF66CD187340D0A3A8F4F9@DM6PR03MB4217.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: e11ydVkJPLDeuRdjAbX2FJ0sj0uybXyQCVfUFr56KAGqrh5dwex4XsQP6uPFejGJosaGOdBi/gpj18SbRtOYy8vs0gnfv+LDI78Bwu4q0ft1/g7U1BANk2Fq0IXID5dKf1IAb5Y12RRw1kl9VeqsyQJ/e7b5UuapmfHF565CrGfndUVw/TQ+VdytYNSDcRfoZ2qiuRXj3QGkFcBSdRFLHfqCOBN65/yPAsR41sSGJ9pgSbNYhGgrT8E0zj9m0A++u+9IJPHTkfhcPuRCLkzjGMgrSm6DrX6FHzssSONCc7Zmzjq8FuBP0RqX+HSxxo5ONNrFp8hUeX4Y/i6OOLUZCHwbXwdUcXlRWWS0+WRu9HlW99p5QgJFe5/KXddb7xxf4ZxwpwDz6eLyPJfSbY1zalv/lIzUq899QbHrgLK276tcJiEKoNmCOyfXNab1ZO86A9bBzj2o7T7PanioIT5Q6sSkvQkDgxoHA10dqF7fUU5113LNM3YfkIQp4brDQ3vH3mtJZ68/f2MY0ctRlov6LN7h4HULO+fc9DbTwcJ8os1770u4Pjq1lq87vILaCfSvrMG63plTICAH/bD3nBevuIevapWOvcn7Q+HTOj0v92U=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(366004)(346002)(39850400004)(396003)(136003)(8676002)(8936002)(66556008)(66476007)(66946007)(2906002)(53546011)(83380400001)(86362001)(5660300002)(85182001)(6666004)(9686003)(6496006)(316002)(16526019)(38100700002)(186003)(33716001)(6486002)(54906003)(26005)(6916009)(478600001)(956004)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 2c194f58-d711-45e5-80a5-08d8fe7c8135
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 13:03:17.2516
 (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: EIeyNqIV3QngSLCCJ3XpCPH72g4fAzANPVh8h3Rd3/PwUCv1q0LMmc1OTWPmTrN2+/7+AX7cyvFTGQ8BNK3lBg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4217
X-OriginatorOrg: citrix.com

On Tue, Apr 13, 2021 at 02:03:52PM +0200, Jan Beulich wrote:
> On 13.04.2021 12:18, Roger Pau Monné wrote:
> > On Tue, Apr 13, 2021 at 11:24:09AM +0200, Jan Beulich wrote:
> >> On 12.04.2021 17:31, Roger Pau Monné wrote:
> >>> On Mon, Apr 12, 2021 at 12:40:48PM +0200, Jan Beulich wrote:
> >>>> +    {
> >>>> +        const struct page_info *pg = mfn_to_page(mfn);
> >>>> +
> >>>> +        if ( !page_get_owner(pg) && (pg->count_info & PGC_extra) )
> >>>> +        {
> >>>> +            ASSERT(type == p2m_mmio_direct);
> >>>> +            return 0;
> >>>
> >>> Are there any other pages that could pass this check? I don't think
> >>> so, but wanted to assert.
> >>
> >> "Normal" extra pages have an owner, so no, there aren't any others.
> >> If and when any appear, this may need further customizing, albeit
> >> generally I'd hope further pages matching this pattern would also
> >> want similar treatment.
> > 
> > I wonder whether we want to add an assert here to make sure only the
> > APIC access page receives this special handling by the shadow code,
> > but maybe that's a bit too much?
> 
> I think so, yes: It would require either a separate function or
> making the variable global. Both feel like a layering violation.

Right, with the INVALID_MFN change and the shadow mfn_valid style
adjustment:

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 13:17:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 13:17:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109754.209475 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWIv8-0000Ro-Mp; Tue, 13 Apr 2021 13:17:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109754.209475; Tue, 13 Apr 2021 13:17:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWIv8-0000Rh-Ja; Tue, 13 Apr 2021 13:17:34 +0000
Received: by outflank-mailman (input) for mailman id 109754;
 Tue, 13 Apr 2021 13:17:33 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UdUp=JK=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWIv7-0000Rc-HC
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 13:17:33 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7cee59a6-1fc5-4bd5-a970-29e7633675e8;
 Tue, 13 Apr 2021 13:17: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: 7cee59a6-1fc5-4bd5-a970-29e7633675e8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618319851;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=8y6Zm545iPg295ZlMAIPKP2ci/v6t9yGaJK99+2o4xg=;
  b=Hex8cdjMZ4p8BVhfjfKtYZjb1kyTTWeZdOAhIMhQi0TA+GsTUUdpknYF
   56Qd/xr0csrkg5z4Y1xXMAkMpSwpi3Yj/92C21gr8fbkDfL09eRnBgmVs
   RHkIWbIli9n+WTXZ4Ig2xg0ML8BvZzXuWAqZ2PHXypjHwedHIUDYpV2Fq
   8=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: upUcqEpx7as25A7HmHKbDt6+PmdpOOx54tmRhTC9Qi1xMDwF6tLKVk9PfaAP+A88/fuYUI6Cfa
 Drv0LjRQApx2LkyrMAaAgarfilGkVso4PFpFuxHS6a7946KWurOnShKr+LmqSuWAPa2MbCnx8H
 e3raKDf0MlEdvMdoRWZOTyY326L2y0D7ZmDg5uOmnzhLFLsXXxuF3cddWZuRKJ98xnX9jbdSwz
 CpFQh6bYyDfdGZRhmE3zHTBGRrSn054Y0VCDLkHJ+2zyaDb532OJx5Goe3TfHcdBCgFX8TZZDo
 joQ=
X-SBRS: 5.2
X-MesageID: 41478845
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:jvLxJ6gIGudphcdPrtSYc7+h63BQXwB13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy48XILukQU3aqHKlRbsSiLfK7h/BP2nF9uBb3b
 p9aKQWMrfNJHVzkMqS2maFOvk6xt3vys6VrMP/61socg1wcaFn6G5Ce2SmO2l7XhNPC5Z8NL
 f03Kp6jgGtc3gWcci3b0NtN4T+jubGiY78Zlo+DwMngTPksRqT9LX4HxKEty1uMA9n/LFKyw
 n4uj283IqPmbWRyhjQ12jchq4m4ufJ+594K+GnzuQQIjXooA60aIpmQK3qhkFJnMifrGwEvf
 OJjxA8P9liy365RBDInTLdnzPO/Rxry3j+xUSWiXHuyPaJOw4SOo56qq9yNj76gnBQ2O1U4e
 Zw8E+y86dzN1fmmh/w4tDZPisa7nackD4ZvsM4y0BEXZB2Us43kaUvuHl7Pb0nByzA5IUuAI
 BVfbrhzccTS1+cYnzD11MfpuCEbzA2FheCdEAIptaY5ThQhGx41EsV3qUk7w49yK4=
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41478845"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZMJcUUyQ6NsaIgHlanLpd3N5VNX1iohUmq6Q3sNfmyxQ7a17OoNTkfCA+ILGopEIZWTusottGjVGvu5OF8HdywvwOrXnrV0To6+Zw6PWjtjmpBuWIXiORLp76Mt+10fSX2wdA0J9/WlPyjrrQk88YKAStBAFkGjnFVxN1qSMBEFZ8mQca4+mb9+0Z0Jli6ENsY1dT83nQOQp52GwguoO6QEBAoJ87eOf7MP1Svmr+fT59nVvZa/BAwLf35vektt0rkwZ4Y4y7bKAfeaMxb+NdtcA7TMU3d7LT6ihnNrzosJ08TCrIg4BNTY/eXHVUmCmwAdQkwpdExzaMm66jFKq/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-SenderADCheck;
 bh=XU6SCAC8tSqQ5SZ56GRk5s8jm2BTCkOODkOEpV+B8rE=;
 b=G02R1ZJG62IiIAivvaTQ8MEUNcS8PMgufL9wcDcKIr1XCYJKTgtZU27KMg7cudMQudmMxM55k12cHkRDpUgllcRL2phpI4piNQ2NEsHjijdCbiJ0R4+cmfNsj+he2X+DLalmNGVWHjh6gKm3UbgB8kNc0dQGMh+LkBzwTkS+/EY4LhwmtjEIWrJMpDpG7ZlL5ADpCHxwBSycA6Jnsi/aF0QPoOJ/7zkX4yvKjox5CSV6mRG03OpqtUZDOU6Fgg/nMIsrezF2/5gO6tY8ptNJWMnFkwDotzl12jiIAFcmyY+KM0lSpHr7P19WPejfbvPurGgWYYsA+YUiXlv+Rtb1XQ==
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=XU6SCAC8tSqQ5SZ56GRk5s8jm2BTCkOODkOEpV+B8rE=;
 b=cJlcy8BIkwd1oUa3dWn/0MgjE8LLdGZf9rSau1fEhK0enWhg0pQe2nboFGTnt601YwjO6FJe9ilCSFpu8Sop+Eoqe1FSCIfX7AmSq+gBzfzh6A76qTKZRUR63ihk2emVDqsLIgPh/BgkJV/JQ7xhWJxA+0gqyZguC1OPpIS6uho=
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: x86: memset() / clear_page() / page scrubbing
Message-ID: <21c00073-86a8-a040-fa40-e99e2fb434eb@citrix.com>
Date: Tue, 13 Apr 2021 14:17:19 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0076.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:8::16) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3d19fae2-0666-4031-e1fb-08d8fe7e7aed
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5837:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5837A56740CFA04A2405F799BA4F9@SJ0PR03MB5837.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 3SXxVZJxbgiZnGBmBREeObYrOu7Jjw7EUYziwodJICZvh18uUDiLOz+hMthCmxdjAHCNSdQJa7wg/gqEtCNSqrLQpiOZDXxHYbqaPpqHkWvMU3ONUbz5igynfz7dq8CiqP4jmgfPRldXQt2re+tXtY15CmwYH8OIsCxLHPlM3g/+SgRxOuDXowKVxM7Vcu10UT0RRXtYFI8yHtd9G0iZujJkYN0rlHxBSq6udDDMazo8oFjZibHd+ecMOxsdDh1uAS4LVcK6rEmd1y+DcGGPy2Lbiz8TTAvPRflwkzwqDDg71VhwqKt9sAZ3RthKasVOZOKE3uFpI0OZOK5IcjLbDepgSCU/YtbEC2LCz6rhJCarnoKjkfm9dWGCtBzdUrqgDzfs8V+HcE/q4nYFlWyGtxqwWCaj32he/MFCih2pFrXRuoXSb0FqrLVDUETmyE6yA54AylLu6DI087emz80wMuuRwFKzOwbDhq/w5GKhoscQToYMq6WBfPwHsyK2VfRuSkP1lATi1EEgdRFFWf2Z4omzKUWAHFg/GFk5Ux+kHNr2BSjueS5N7VqRTQMdW5HewRif6zWzONSbCvcuej7rUf66uxVY3p7Wac9VaddNIeDIIep/XqbejMJhQLF9Y5OezZP2h+xIuvNR3xzB+pMErmFetF3vkJJXZ6f4gCq1yHO77hbz2vQAhIPsNu5Vcoxz
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39850400004)(346002)(396003)(136003)(376002)(366004)(2616005)(107886003)(4326008)(956004)(66556008)(5660300002)(186003)(66476007)(6486002)(2906002)(86362001)(66946007)(38100700002)(478600001)(83380400001)(26005)(110136005)(316002)(53546011)(8936002)(8676002)(6666004)(16576012)(31696002)(36756003)(16526019)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/03?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3d19fae2-0666-4031-e1fb-08d8fe7e7aed
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 13:17:25.6538
 (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: 9Ok3dRUIk/rYPl1+ak1pTo3/p92n6bwChBvNZZrO8diAhqxZTErv7DxmDHkJNEFJu3a8dufCX7RBvCs5ED1+HowcU6BLPoSqHQIG0SFprf8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5837
X-OriginatorOrg: citrix.com

On 08/04/2021 14:58, Jan Beulich wrote:
> All,
>
> since over the years we've been repeatedly talking of changing the
> implementation of these fundamental functions, I've taken some time
> to do some measurements (just for possible clear_page() alternatives
> to keep things manageable). I'm not sure I want to spend as much time
> subsequently on memcpy() / copy_page() (or more, because there are
> yet more combinations of arguments to consider), so for the moment I
> think the route we're going to pick here is going to more or less
> also apply to those.
>
> The present copy_page() is the way it is because of the desire to
> avoid disturbing the cache. The effect of REP STOS on the L1 cache
> (compared to the present use of MOVNTI) is more or less noticable on
> all hardware, and at least on Intel hardware more noticable when the
> cache starts out clean. For L2 the results are more mixed when
> comparing cache-clean and cache-filled cases, but the difference
> between MOVNTI and REP STOS remains or (at least on Zen2 and older
> Intel hardware) becomes more prominent.
>
> Otoh REP STOS, as was to be expected, in most cases has meaningfully
> lower latency than MOVNTI.
>
> Because I was curious I also included AVX (32-byte stores), AVX512
> (64-byte stores), and AMD's CLZERO in my testing. While AVX is a
> clear win except on the vendors' first generations implementing it
> (but I've left out any playing with CR0.TS, which is what I expect
> would take this out as an option), AVX512 isn't on Skylake (perhaps
> newer hardware does better). CLZERO has slightly higher impact on
> L1 than MOVNTI, but lower than REP STOS. Its latency is between
> both when the caches are warm, and better than both when the caches
> are cold.
>
> Therefore I think that we want to distinguish page clearing (where
> we care about latency) from (background) page scrubbing (where I
> think the goal ought to be to avoid disturbing the caches). That
> would make it
> - REP STOS{L,Q} for clear_page() (perhaps also to be used for
>   synchronous scrubbing),
> - MOVNTI for scrub_page() (when done from idle context), unless
>   CLZERO is available.
> Whether in addition we should take into consideration activity of
> other (logical) CPUs sharing caches I don't know - this feels like
> it could get complex pretty quickly.
>
> For memset() we already simply use REP STOSB. I don't see a strong
> need to change that, but it may be worth to consider bringing it
> closer to memcpy() - try to do the main chunk with REP STOS{L,Q}.
> They perform somewhat better in a number of cases (including when
> ERMS is advertised, i.e. on my Haswell and Skylake, which isn't
> what I would have expected). We may want to put the whole thing in
> a .S file though, seeing that the C function right now consists of
> little more than an asm().
>
> For memcpy() I'm inclined to suggest that we simply use REP MOVSB
> on ERMS hardware, and stay with what we have everywhere else.
>
> copy_page() (or really copy_domain_page()) doesn't have many uses,
> so I'm not sure how worthwhile it is to do much optimization there.
> It might be an option to simply expand it to memcpy(), like Arm
> does.
>
> Looking forward, on CPUs having "Fast Short REP CMPSB/SCASB" we
> may want to figure out whether using these for strlen(), strcmp(),
> strchr(), memchr(), and/or memcmp() would be a win.
>
> Thoughts anyone, before I start creating actual patches?

Do you have actual numbers from these experiments?=C2=A0 I've seen your pat=
ch
from the thread, but at a minimum its missing some hunks adding new
CPUID bits.=C2=A0 I do worry however whether the testing is likely to be
realistic for non-idle scenarios.

It is very little surprise that AVX-512 on Skylake is poor.=C2=A0 The
frequency hit from using %zmm is staggering.=C2=A0 IceLake is expected to b=
e
better, but almost certainly won't exceed REP MOVSB, which is optimised
in microcode for the data width of the CPU.

For memset(), please don't move in the direction of memcpy().=C2=A0 memcpy(=
)
is problematic because the common case is likely to be a multiple of 8
bytes, meaning that we feed 0 into the REP MOVSB, and this a hit wanting
avoiding.=C2=A0 The "Fast Zero length $FOO" bits on future parts indicate
when passing %ecx=3D0 is likely to be faster than branching around the
invocation.

With ERMS/etc, our logic should be a REP MOVSB/STOSB only, without any
cleverness about larger word sizes.=C2=A0 The Linux forms do this fairly we=
ll
already, and probably better than Xen, although there might be some room
for improvement IMO.

It is worth nothing that we have extra variations of memset/memcpy where
__builtin_memcpy() gets expanded inline, and the result is a
compiler-chosen sequence, and doesn't hit any of our optimised
sequences.=C2=A0 I'm not sure what to do about this, because there is surel=
y
a larger win from the cases which can be turned into a single mov, or an
elided store/copy, than using a potentially inefficient sequence in the
rare cases.=C2=A0 Maybe there is room for a fine-tuning option to say "just
call memset() if you're going to expand it inline".


For all set/copy operations, whether you want non-temporal or not
depends on when/where the lines are next going to be consumed.=C2=A0 Page
scrubbing in idle context is the only example I can think of where we
aren't plausibly going to consume the destination imminently.=C2=A0 Even
clear/copy page in a hypercall doesn't want to be non-temporal, because
chances are good that the vcpu is going to touch the page on return.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109768.209516 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcL-0004un-Pb; Tue, 13 Apr 2021 14:02:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109768.209516; Tue, 13 Apr 2021 14: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 1lWJcL-0004ug-MX; Tue, 13 Apr 2021 14:02:13 +0000
Received: by outflank-mailman (input) for mailman id 109768;
 Tue, 13 Apr 2021 14:02:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJcK-0004rK-98
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:12 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 48c99015-3a53-41f1-8730-55d527821831;
 Tue, 13 Apr 2021 14:02: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: 48c99015-3a53-41f1-8730-55d527821831
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322529;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=OVrwr3BA9em1iIl+C3YJ3vNrkONASrz74AXCzhLJFEw=;
  b=OPhIvVgtDGgWBs1bHMIP9Sc/ELKEsdBbPMSjvpxr5y/+rseriBVD/uX9
   gVkCS/AxV0/48a8H6Ltji90UuO/9rWV6UygI/Z8u41hBIqx+9779HxFFr
   kv13Oodh30zUHQMIcJR+uhRzkmVkhUWSO7Sex1BIWVqpBIk4EySLAn6Hw
   A=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: SeCTuAeuUTjiNEw5xG0CgRsQnlCMfV0xcotneONWGIvmP/zwSIl9G0eajD6fFwGIKOStOGSvNc
 aWpQsM6YXBerPURXrIm0E4kkHgNRVNCC56csl701RM3YFVY0RE6/DVxmWwfVx8QRNUueo2XSUk
 Z8ov5TJLPo1jXsfuIqoUy1ayizIbVhur8uH6d2me3JIZ06D6dWQKe/bZEH83s0YC+C0wA4y4UH
 wFG7TYPC1vwn3AO8cWO4fYY4oqa6/l+WF5SBQP6rAbITtmb4K3CzVkj8Ezcz3tBqcvkqUwhMgK
 kEY=
X-SBRS: 5.2
X-MesageID: 42955875
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:7t9B8aCGp8u4YT7lHegptMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmNEIyycFVB7QxQDOIEwE4
 CS6tECiz2rf3kWacrTPAh4Y8HoodrXmJX6JSMXHhJP0njysRqEyp7fVyKZ0BAXTi9Vzd4Zn1
 TtvgTl6syYwpeG4zDG0Wu71eU1pPLAzZ95CNWImowpLFzX+32VTaBAf5HHgzwvuuGo7z8R4a
 nxijMtJd565X+UXkzdm2qV5yDa3Dwj62DvxDaj6BOJy6yJJ0NJN+N7iY1UaRff4UY71esMqp
 5j5G6Fq4FRSSrJgSWV3am4azhRikG2rXA++NRj6EB3bI12Us41kaUvuGlREJsGARvg7pEmHO
 REHKjnlYhrWGLfQHbDsmZ1xtuwGlw1AxedW0AH/veYyj5MgRlCvgcl7f1auk1F2IM2SpFC6e
 iBGqN0lItWRstTSa5mHu8OTea+F2Sle2OCDEuiZXDcUI0XMXPErJD6pJ8v4vuxRZAOxJwu3L
 zcTVJxrwcJCgLTIPzL+KcO3gHGQW27Uzio4NpZ/YJFtrr1Q6euGTGfSWopj9Crr5wkc4zmcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQlc08X36Iv8LXOqznvuHWa5/oVfjQOAdhflm6Lm
 oIXTD1KskFxFusQGXEjB/YXG6oWkGXx+M0LIHqu8wojKQdPIxFtQYYzX6j4NuQFDFEuqsqOG
 93ILbtlLKHtXC7lFy4q1lBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCR00GaYIAR8C+fbCh
 RWqVgy2a/fFe3f+QkST/acdk6KhXoao3yHC70GnLeY2MvjcpQkSrA8WKJwEg3PPwdvmRljrV
 pCbANsfD6dKhrezYGeyLAEDuDWcNdxxC2xJ9RPlH7ZvUKA4f00SmAjRD6oW86PiQMITz5Z72
 cBtJM3sf6lo3KCOGE/iOM3PBlpZH6MCLxLNgiDeb5Zg6vmYg12UGeMiwGLkh1bQBuYy2wiwk
 jaaQGEc/DCBVRQ/kpV1avn63tYXGSQdUAYUAEwjaRNUUD9/lpj2+6CYaS+l1aLYlwZ2+cHLX
 Xuej0JOD5jwNixyT+YkDuPDm8d250rJ+DRZY5TNY376zeIEsmlhKsGF/hb8NJZL9joqPYMSv
 /aVAmPLj/0YtlZrTC9lzIAAm1Tp3Ylm/+zh0Ggw2i8wXIlAf3dZH5hXKoWJtmA727iA9aEua
 8J+e4djK+VCCHWbNXD9IT8KxhkATnXqXStT+4ppYtP1JhC/IdbLt3+a3/wyHpD3B8CN8/6m0
 MVfbRj7Nn6S/pSVv1XXxgcw0Egm9uOJnY6qwDaAucxelc2kn/QVun5lIbgmP4KCk2FqBCYAy
 jmzwRtu9PEVTCEz7gUFuYZJnlXclE17B1Zjam/XryVLAWhbOdY+lWmdle7bb9GUaCAXZEdtA
 xz7d3Nv+iZcUPDqU3tlAo+BqJF6GC8R8yuRCqKBO5T6tS/fW22vZHC2r/7sB7HDR2ha0oZgo
 VZdUsfKuR74wNS87Ef42yVUaz4okUsjl1Exypo/2Sdg7Sb3A==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="42955875"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=a3XokpEHaMnhaA3jpVQSpPGCz28oHwcnso4E3it17TPbnWfEDHblv6E8X4E05soRfgHwv31L2BFmgsUFzSytfOK43Yun9IPHImhhqtDxCauTodzGEi1SA5nCJ8UV9d7tdQSWJZ6aCj/YQe9bUmS47l7mH1rtp0/wcFDFLCo/59P1tuNGxLYU5Oy3bceztzWIaIS2IZzgWRM2zvYib3A6f6Lmi1219Oo163HQor46Jv9TccMW/qU+XGTblLTs8QCrlPcy47dfBEqXf0OyB7MObtndIvAhIzzY1ucyOe+kPL9Jx8pZBNA5479R+JVuR+VTGhjm+xGVh1NECS4WhnwsGg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AoWJS/SFtHWRRkap7XLMIw8mpVF2QgzC+GpX7sO6F4c=;
 b=W7edqZkYpnseA/m33je5UCCLA8cwe5dCjViWAXgE14MGUdY32u/JuXBqI4QvejzLdbA6ECAPZJmiq03TKN7P58bBULr5t4VuAhcMFxrojAj8SprSq3WXZOaaarYC/P9EYyydxd4JPUnneQf3o7ECRrsVIs7J4lle8llAppBnYrWTB9TMzjJi2RFqwLuuMCmMK1nJ2G353Es8ynAvqgBT7QuV6EY+ayFb2xWSAogoCGgszZSJN2WnbtLpnRI5NGKZq0WkAou8dp2YRXCdJpXUD6QYE6kX91Ug+5oWasiQEaoMbrxm14xwODE630cyi1G4sWhGc30+ofwdhXNGgHp9kA==
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=AoWJS/SFtHWRRkap7XLMIw8mpVF2QgzC+GpX7sO6F4c=;
 b=sS7038EEzn81OYlq39E8SeFvBUnN5DNNw2ZRy4VvK9kUoB7OhJg4U7ZGcfI+93WAecHIrKI3pZCYB13Guw5tDdv5FF2WnXRNbUax6dvgoxahueGI9855/DlKY4cl0r8fNPbZDs/5fOukJjGiYkuiy5l8DPGbNDlwDabBnty1l3w=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 02/21] libs/guest: rename xc_get_cpu_policy_size to xc_cpu_policy_get_size
Date: Tue, 13 Apr 2021 16:01:20 +0200
Message-ID: <20210413140140.73690-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0146.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:1::9)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 43a425bd-6181-4761-2d64-08d8fe84b9ab
X-MS-TrafficTypeDiagnostic: DM4PR03MB6096:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB609607FAD102A90B04FE6E848F4F9@DM4PR03MB6096.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:626;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: s2asjK6QgMbZDc/csizUOK9m+dMKrGmxI/EyH2CXZWt35m93mly94Lgt1SUd5ueffb+p8ckGbcgCYEedtkYpjQKN1KmuAgEGtBbEuekmlsIa411aRJ19kb7g511Nv8l+CyNZrHi375ZZoykgc9fN1hbqSuHXWYY2jfK10Csf58vqdDClo8ki9oRhrn5p8eE79Knlxeuf0htt87LUi1gIurpPOrL3ujZ3SpBmd5b9djFpImb5O36ZqdkZLxIO4I5Wly9oo/8Yuf/c+7OfslAgdol5PUCdpyZ9RAtzxV+f16AZy3brNTpPy1T+HHpJtIy4qvfa1n7AOoNVcIjH5U1ZcGW8zfdPxQHKZEXjXJV44YE2aUadf9X0ldZwOrRKkbegvBMvWdA95QFhMKUayu1fO8Qzy2Zs298/admYVq5IdLUYgjT9itjrwtgmUQPzd36dCi+QcqxMywUPssj8NFum897/9dEwH8InzF4G9mfrtKZOqywyyiDTjHT4UCsvQFqQ1VK+DxrgLkRmbqeCXIRDrRnsRzZAA0YMrjkrx3xyRa+q+tslf9m3JkVNobipMI2bLT60+oNeo69cskPQdKnp4p0KGBiZbfJsSuUL4WmQK8Q=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(39850400004)(396003)(346002)(26005)(6916009)(86362001)(36756003)(83380400001)(186003)(8676002)(6666004)(16526019)(66476007)(66556008)(54906003)(2616005)(6496006)(5660300002)(956004)(38100700002)(478600001)(1076003)(4326008)(2906002)(8936002)(6486002)(316002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Qha/tAjRnEuhTaH0p+54XOg13eKOSKbXgS0Xt+S?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 43a425bd-6181-4761-2d64-08d8fe84b9ab
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:07.9127
 (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: g2Fzh24Z/ay5DGmpo/3r0qkbvzyuHJJGNEwtO65VlejzaVUcXhDt6EfAGjOpMgprWOKf0WCn147TOExvFj0hNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6096
X-OriginatorOrg: citrix.com

Preparatory change to introduce a new set of xc_cpu_policy_* functions
that will replace the current CPUID/MSR helpers.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
 tools/include/xenctrl.h             | 2 +-
 tools/libs/guest/xg_cpuid_x86.c     | 6 +++---
 tools/libs/guest/xg_sr_common_x86.c | 2 +-
 tools/misc/xen-cpuid.c              | 2 +-
 4 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 318920166c5..e91ff92b9b1 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2594,7 +2594,7 @@ int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
 
-int xc_get_cpu_policy_size(xc_interface *xch, uint32_t *nr_leaves,
+int xc_cpu_policy_get_size(xc_interface *xch, uint32_t *nr_leaves,
                            uint32_t *nr_msrs);
 int xc_get_system_cpu_policy(xc_interface *xch, uint32_t index,
                              uint32_t *nr_leaves, xen_cpuid_leaf_t *leaves,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 5ea69ad3d51..cc5cae95725 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -109,7 +109,7 @@ const uint32_t *xc_get_static_cpu_featuremask(
     return masks[mask];
 }
 
-int xc_get_cpu_policy_size(xc_interface *xch, uint32_t *nr_leaves,
+int xc_cpu_policy_get_size(xc_interface *xch, uint32_t *nr_leaves,
                            uint32_t *nr_msrs)
 {
     struct xen_sysctl sysctl = {};
@@ -302,7 +302,7 @@ static int xc_cpuid_xend_policy(
         goto fail;
     }
 
-    rc = xc_get_cpu_policy_size(xch, &nr_leaves, &nr_msrs);
+    rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
     if ( rc )
     {
         PERROR("Failed to obtain policy info size");
@@ -448,7 +448,7 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         goto out;
     }
 
-    rc = xc_get_cpu_policy_size(xch, &nr_leaves, &nr_msrs);
+    rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
     if ( rc )
     {
         PERROR("Failed to obtain policy info size");
diff --git a/tools/libs/guest/xg_sr_common_x86.c b/tools/libs/guest/xg_sr_common_x86.c
index 3168c5485fd..4982519e055 100644
--- a/tools/libs/guest/xg_sr_common_x86.c
+++ b/tools/libs/guest/xg_sr_common_x86.c
@@ -50,7 +50,7 @@ int write_x86_cpu_policy_records(struct xc_sr_context *ctx)
     uint32_t nr_leaves = 0, nr_msrs = 0;
     int rc;
 
-    if ( xc_get_cpu_policy_size(xch, &nr_leaves, &nr_msrs) < 0 )
+    if ( xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs) < 0 )
     {
         PERROR("Unable to get CPU Policy size");
         return -1;
diff --git a/tools/misc/xen-cpuid.c b/tools/misc/xen-cpuid.c
index 2d04162d8d8..52596c08c90 100644
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -462,7 +462,7 @@ int main(int argc, char **argv)
         if ( !xch )
             err(1, "xc_interface_open");
 
-        if ( xc_get_cpu_policy_size(xch, &max_leaves, &max_msrs) )
+        if ( xc_cpu_policy_get_size(xch, &max_leaves, &max_msrs) )
             err(1, "xc_get_cpu_policy_size(...)");
         if ( domid == -1 )
             printf("Xen reports there are maximum %u leaves and %u MSRs\n",
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109767.209505 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcG-0004ri-Du; Tue, 13 Apr 2021 14:02:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109767.209505; Tue, 13 Apr 2021 14:02:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcG-0004rb-AU; Tue, 13 Apr 2021 14:02:08 +0000
Received: by outflank-mailman (input) for mailman id 109767;
 Tue, 13 Apr 2021 14:02:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJcF-0004rK-EV
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:07 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9f706b10-97a6-4ef3-8c94-0b990a922eb5;
 Tue, 13 Apr 2021 14:02: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: 9f706b10-97a6-4ef3-8c94-0b990a922eb5
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322526;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=0Z9bLa3Of6ehyx4kNWG7tTOMC4d6bLSrky0iA51bLt8=;
  b=f0NYHJDaTPgqlL+rhF/a9FlM2drqBdIm/sGmSPrFtO6E1ilpsodbmLtT
   ye6VEG0lE1FaOvx5P59Maq5gXaLWN7JAV6cMkGH4GIc+u1Vzw+6Pajh8W
   5vTXx83fQrej7Bw4TqAL50Og7ikptGR7smpiXxbgp0h8AeYxDIH+v5o8v
   g=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: rTCzCnezs2/a1q15+916qSQliMPcyYRgcH8b6mORBVMV5k3PtPQCK7FD1P5Cg79kxPL1cCkElL
 8snMS1sOugxYScpDYmQKx6C48cunOz1+YqXkS6wb0DFNohKZWy/YR80s2h+6w3N+GjGmUyW4oX
 M/Ba4JP1hN9yjJxAn+3SGG80kYOaG5FQnmMGjJrXr53NExKI/RCgiLntRAt8KXM6jsOwTJdf6e
 UgLGagThj0RusoDEY2NeithEi9tKuFzojJwOa+QvxbFUQCsJcgD1V929iJiF6tmYnrm7Z5XoQT
 8So=
X-SBRS: 5.2
X-MesageID: 42955851
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:V7Qx1q2LlN6n4cJdP6gNdQqjBTd3eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/FIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmtJ1/Z
 xLN5JzANiYNzVHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcBdxi1SYzzrdnFebg9AGJY/Cd
 6g/cJBvTWtYjA6ac68C3kDUYH41qH2vbjhZgMLAANi1RmWgVqTmcPHOjW7/jNbaTNAxr8+7X
 PI+jaW2oyPu+y2oyWssVP7wI9RnLLau7l+LeyKzvMYMzD9zjuvDb4RIIGqmBAQjKWR5E0xkN
 /Kyi1QT/hbz3/KZGm6rV/M9mDboU8TwkTvw1OZnnfvyPaRLFlRa7sj9PBkWyDU5EY6sNZ33L
 gj5RPii7NtAQ7dhyO43tDUVnhR5zuJiEA/mu0ehWE3a/p4VJZtq+UkjSZoOaZFNif75Ic7Kf
 JpHcHR6d1HGGnqEUzxjy1BxsehUW80GQrDak8eutaN2zwTp3xhyVAErfZv0ksoxdYYcd1p9u
 7EOqNnmPVnSdIXV7t0AKMkTdGsAmLAbBrQOAupUBvaPZBCH0iIh4/84b0z6u3vUocP1oEOlJ
 PIV04dnXIuemr1YPf+nKFjw1ToeiGQTD7twsZR69xSobvnXofmNiWFVRQHj9agmfMCGcfWMs
 zDea5+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49RhagucTOBor2tvHKUfraKbb3eAxUGF/XMz
 8mZnzeNc9A5kekVjvTmx7KQU7gfUT54NZRHcHhjq0u4blIErcJnhkeiFy/6M3OAyZFqLYKcE
 x3J66itqu6oGKx7FvZ9mkBAGsYMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYjhyUt3RCw
 wag1hs46q4I9ixyEkZepyaG1Pfq0FWiGOBTp8alKHGz9ziYIkEApEvX7E0Mx7KGRxzkQNDs3
 xCdwcAe0/aGlrV+OaYpa1RINuaW8h3gQ+tL8IRg2nYr1+gqcYmQWZeYySjSveNgQElRyNdg3
 p496N3usvGpR+fbU8ExMgoOlxFb2qaRJZLFh6Maolvlrf3Qw1oVmuRiTuGixY8R3ry+ywp9x
 /cBBzRXcuOLktWu3he3Kqvyl9ye2mHV29ba3xxs+RGZC/7k0c29dXOSru40mOXZFdH//oUNy
 vdZyAOZil0wcqs6RKTkDGeNHkvy5k0JNbBBLA7f7y74ALqFKS40YU9W9NE9pdsM97j9tIRWe
 WEYgmPMXfWDfgq1wH9nAdSBABE7F0f1dXm1x3u4DLmgDoRAf/OLE9nQL9eCdeG9GTgT+uJ1p
 I8rd9dh5rFDkzBLvq9jYfQZHp/DzmWh0icZeQhs4pVsqI/r6EbJeiSbRL4kFV8mCwjJ8L1nn
 4ESKt14Lr9KpZiFvZiDh5xzx4MrpCzN0MlvQz9P/8mcXwsh3HdOcmV47Cgk8tZPmSx4C/5OV
 yS6ERmjo/4dhrG8b4REKQrJ2tKLGA69XR55euHHregQjmCRqVm/FCgNGW6f6IYYK+ZGa8Iph
 I/x92TheeYe27Z3w/X1AELb55mwiKCQcmoBhiLFvMN29umOU6Uiq/v2fWNtl7MOHKGQnVdo5
 ZEe0wWZtlCjTdnrLRf6FnMdoXH5mQ/k1Vf5jl7kEXKwYbO2haDIX17
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="42955851"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fVSHbZ+AuFB66qVIV+dDETUr3T2iIvOQJ3KwteRPqFS0TD87Zi+cHRGTYG5MsGrDVSvUrhV2f0LbqV2KIOsaOR3x+ANVVgmoYItXYTlC16vsHOsn9V1egj7cal+2jvHAcqjmLqNkV7FbvAWpGhBXc8d2nWbk7yaesGsxtPVweNR+oeM5zvL2keRnqdqZMwvaE+3nBWlDN7okpLv0Q39Y6Z+GrTVXAAcEYbG4RnH9NrUn/US0hfjJ/ZlOTQdrIYa0tFzkW430gJdTu9Oi74C9NNKLetW1d7KkWc4sWt/KeGu7BZtMN67cVfWMqddWXcQmkZ1Z8mzbx9LWfUEIWi//Rw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZiXg4RaaWYgPdIkmGYs/6vFIpLjmbLaKb/fElO2iGok=;
 b=d8Dq5X21ymlAiJOcAeJ1XUnp6jbeGwAD4PGccB8i0tEmo5NwOshm+21jJqcWYZVK366Chk9rxHWEZ9GmF0ypYqCjHOXWD6w5GS0BrFu3g0M1mQ6Z9X7F+X26M5RSKHgOoZDbMJnc8F+G3SrHXx9NDdiYEQy0vh1AyaS0CVKB9mVVGw9oZTQJUchH62x6lbqdqLejIm2NZTD9wDab2Ev1uy84URzGa0cir+XTyO99v+ZbftTLgqJcTeOI4ntGbDdXhdUrSaCJ57Ov0Zuts/irxFKn9w8wzs8K0KLyFjBfVX6laAEXDkZXdrHcjbjplL/4bwGFt1p4ifJahgr6uVqFzQ==
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=ZiXg4RaaWYgPdIkmGYs/6vFIpLjmbLaKb/fElO2iGok=;
 b=eJ5xqxkLinkGPcsVXnwbLFJTrgzUeQ+MTtJ37UJGmIIDreHUBVkg6sYlD2yL18g8DJpT4v+oBj8tuysUTG/agGmFbR001zqax6aJpgfj7FYPOOKyxdmTkBoOXjlGjdRvwqraHnUScSD3DGkQgIV3H6STsfKgA+wgeh52jDuj420=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Jan Beulich
	<jbeulich@suse.com>
Subject: [PATCH v2 01/21] libxl: don't ignore the return value from xc_cpuid_apply_policy
Date: Tue, 13 Apr 2021 16:01:19 +0200
Message-ID: <20210413140140.73690-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0134.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::26) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: bb95fbd9-47ee-414c-36cd-08d8fe84b65d
X-MS-TrafficTypeDiagnostic: DM4PR03MB6096:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB6096243BD580571246CF70B68F4F9@DM4PR03MB6096.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Xu+ohUAqjLQ049XEbtMgfk8/5ndfnbzurHyGlWfu+0zqa8qT31L8xvJIwKU+CTopQMLL2PooOIVpCiA7u+Qw7B6NM4XcwFPMI3jbcOJGIvFnBDq0GJ9PacqV9wu35SLaB2LRRSQOByUmOr21hb2jrX0oK6u6v5IMhjHUgXfA9OsxJwXhP2cpQJBsWvRt4/6hN/NooclFIDN9hjjFkGYuce/Ksm7HLBUQSmO8ZCo9+czDdaQBEDYDsJ3O//6zPlCXTzzIPW5rt4IjdZej0WS1t6D2T7Zx47ZVM89q0dm5paBNqfwDNA691/z5T7ouvn1vpwhvFgwLnCYQke9Bw8l3rslvKLtNg9h3yFnRWSxla4IRtyuHEe3uBCLNjJpK0DSwZ80KLS6obBFQtHgWasdoUidUuWy0P1OPwTxj8QvSEXWT34Cqth6UvKI8zrN+arvPnN6r1mhBkCYcIBJJjFqjfJJ27v+gYDyQdFs0SW6LD9kGjD9EJmvQR+PTrsSn6OoHVbaTgEcLimGciAUGZNJ6UK32LybhR7Ras+dt4Dt3/wooGIv0tK2Dl/nfenlPlhzdSSBJ6Kw5iKGtV8Wm99Skbm9k7GaA+evCQHcDp++Y9kc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(39850400004)(396003)(346002)(26005)(6916009)(86362001)(36756003)(83380400001)(186003)(8676002)(6666004)(16526019)(66476007)(66556008)(54906003)(2616005)(6496006)(5660300002)(956004)(38100700002)(478600001)(1076003)(4326008)(2906002)(8936002)(6486002)(316002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?/t+1Joq3vJzBOThwZgViYFZjkOPydlFtR1TWN/+?=
X-MS-Exchange-CrossTenant-Network-Message-Id: bb95fbd9-47ee-414c-36cd-08d8fe84b65d
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:02.2690
 (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: Fi8tEj8wb3b41sumVcZ8BAFMe6WNwVKOX8Coevm0IIMsbxWTspotNiCZP50Gh3DgEUFfLKdNd6qWJiuK7rHk0w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6096
X-OriginatorOrg: citrix.com

Also change libxl__cpuid_legacy to propagate the error from
xc_cpuid_apply_policy into callers.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
Changes since 1:
 - Return ERROR_FAIL on error.
---
 tools/libs/light/libxl_cpuid.c    | 15 +++++++++++----
 tools/libs/light/libxl_create.c   |  5 +++--
 tools/libs/light/libxl_dom.c      |  2 +-
 tools/libs/light/libxl_internal.h |  4 ++--
 tools/libs/light/libxl_nocpuid.c  |  5 +++--
 5 files changed, 20 insertions(+), 11 deletions(-)

diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index 289c59c7420..539fc4869e6 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -419,11 +419,13 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
     return 0;
 }
 
-void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
-                         libxl_domain_build_info *info)
+int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
+                        libxl_domain_build_info *info)
 {
+    GC_INIT(ctx);
     bool pae = true;
     bool itsc;
+    int rc;
 
     /*
      * Gross hack.  Using libxl_defbool_val() here causes libvirt to crash in
@@ -462,8 +464,13 @@ void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
     itsc = (libxl_defbool_val(info->disable_migrate) ||
             info->tsc_mode == LIBXL_TSC_MODE_ALWAYS_EMULATE);
 
-    xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0,
-                          pae, itsc, nested_virt, info->cpuid);
+    rc = xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0,
+                               pae, itsc, nested_virt, info->cpuid);
+    if (rc)
+        LOGE(ERROR, "Failed to apply CPUID policy");
+
+    GC_FREE;
+    return rc ? ERROR_FAIL : 0;
 }
 
 static const char *input_names[2] = { "leaf", "subleaf" };
diff --git a/tools/libs/light/libxl_create.c b/tools/libs/light/libxl_create.c
index 0c64268f66d..2faa96d9c68 100644
--- a/tools/libs/light/libxl_create.c
+++ b/tools/libs/light/libxl_create.c
@@ -1443,6 +1443,7 @@ int libxl__srm_callout_callback_static_data_done(unsigned int missing,
 
     libxl_domain_config *d_config = dcs->guest_config;
     libxl_domain_build_info *info = &d_config->b_info;
+    int rc = 0;
 
     /*
      * CPUID/MSR information is not present in pre Xen-4.14 streams.
@@ -1452,9 +1453,9 @@ int libxl__srm_callout_callback_static_data_done(unsigned int missing,
      * stream doesn't contain any CPUID data.
      */
     if (missing & XGR_SDD_MISSING_CPUID)
-        libxl__cpuid_legacy(ctx, dcs->guest_domid, true, info);
+        rc = libxl__cpuid_legacy(ctx, dcs->guest_domid, true, info);
 
-    return 0;
+    return rc;
 }
 
 void libxl__srm_callout_callback_restore_results(xen_pfn_t store_mfn,
diff --git a/tools/libs/light/libxl_dom.c b/tools/libs/light/libxl_dom.c
index 842a51c86cb..e9f58ee4b2b 100644
--- a/tools/libs/light/libxl_dom.c
+++ b/tools/libs/light/libxl_dom.c
@@ -384,7 +384,7 @@ int libxl__build_pre(libxl__gc *gc, uint32_t domid,
      * being migrated-in/restored have CPUID handled during the
      * static_data_done() callback. */
     if (!state->restore)
-        libxl__cpuid_legacy(ctx, domid, false, info);
+        rc = libxl__cpuid_legacy(ctx, domid, false, info);
 
     return rc;
 }
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index c6a4a187f5b..44a2f3c8fe3 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -2052,8 +2052,8 @@ typedef yajl_gen_status (*libxl__gen_json_callback)(yajl_gen hand, void *);
 _hidden char *libxl__object_to_json(libxl_ctx *ctx, const char *type,
                                     libxl__gen_json_callback gen, void *p);
 
-_hidden void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool retore,
-                                 libxl_domain_build_info *info);
+_hidden int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool retore,
+                                libxl_domain_build_info *info);
 
 /* Calls poll() again - useful to check whether a signaled condition
  * is still true.  Cannot fail.  Returns currently-true revents. */
diff --git a/tools/libs/light/libxl_nocpuid.c b/tools/libs/light/libxl_nocpuid.c
index f47336565b9..0630959e760 100644
--- a/tools/libs/light/libxl_nocpuid.c
+++ b/tools/libs/light/libxl_nocpuid.c
@@ -34,9 +34,10 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
     return 0;
 }
 
-void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
-                         libxl_domain_build_info *info)
+int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
+                        libxl_domain_build_info *info)
 {
+    return 0;
 }
 
 yajl_gen_status libxl_cpuid_policy_list_gen_json(yajl_gen hand,
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109766.209493 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcA-0004q8-5R; Tue, 13 Apr 2021 14:02:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109766.209493; Tue, 13 Apr 2021 14: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 1lWJcA-0004q1-1Y; Tue, 13 Apr 2021 14:02:02 +0000
Received: by outflank-mailman (input) for mailman id 109766;
 Tue, 13 Apr 2021 14:02:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJc8-0004pg-Jj
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:00 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7b52452c-252f-4d3d-b91f-79a443dc3ae9;
 Tue, 13 Apr 2021 14:01: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: 7b52452c-252f-4d3d-b91f-79a443dc3ae9
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322519;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=17bFgb566j0C0p+YixRfsxwEwIatl3VHD5h5FglkB/Q=;
  b=eyHMFSieoICl6oAUw8yHyJ0cJziJ6478w65Qi47Uffbj9GhE/QRmM7GG
   lVmOUNbPmEI74p50SMR13DW9AeJIOZ8mb9X0RrGQLmlZe3r+0gbJ/CG6a
   skwKUmsM9Wv0/30lUrfaxK3Y7PfG02qwmjVabjLRaavbES2gde7qapine
   Y=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: rbawLs5aBlFA+zyCybKkI4eXJEjsv/akIxLZAWhmupSCLjcvmg3m3vZ3xNM0o/U3Y5ZUz0pRi6
 HCWQKVd5nKpt9nhmon9GDN3F3wZJzW6pBsUyyD0cK4a01NKnQVsuv8JArlmWr/DrSEgNJlj4zR
 erqkKQX4voV3/w/YSKTcQC6TIjvGBtprxGzGoC9TxIeeqxr3r28gF7lgWsBcI6SHCuNTWcZts6
 QuXdY2X/iv9vGyi5OL1dqld1RDH6G4WUxA+xW9VjT71XakA1YYAMx1Y5rnhnKtly1jdIjchjB7
 Lko=
X-SBRS: 5.2
X-MesageID: 41866802
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Fq043KuUnIwt9+rISDotHjvK7skCrIMji2hD6mlwRA09T+Wxi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybde544NMbC+GDT3oWfAFvAG0aLO4R3FXxf/+OlUyL
 t6f8FFYuHYIFBmga/BjzWQPM0nxLC8npyAocf74zNTQRpxa6dmhj0JaDqzNkFtXgFJCd4YOf
 OnhvZvnDardXQJYsnTPBBsM9TrnNHXiIngJScPGh9P0mKzpAm14733GQXw5GZ8bxpzx94ZkF
 TtokjCyYiI99q6zRLd0GG71eUtpPLRjuFtKebJpswcKjDHghulaoJ7S9S5zU0IidDq0nkGup
 3hpAohItRS5hrqDx2IiCqo4SbM+nIP7GLv0lCRi3eLm72HeBsKT/BvqKgcVzmx0TtFgPhMlJ
 hl8kjcir9sSTTHpyj578igbWATqmOE5UAMvMRWs2ZSSuIlGdhshL1axmx5OrEaEhn37Yg2ed
 Med/301bJtfVSWY2uxhBgI/PWcGnA6HhKxSkMfoMCi0z9PgHBjz0cDrfZv50s9yA==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41866802"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dbEi3TyS79tS264An7mVnZ2Y4Nj7OLRZVi3bsFQjwoETT9c2p+uZpI0BWDn23WUnBb10LYHcyZjaN/0f0hVDd+zGMTRUdyZ83Qm07xrRcPt6Mun5I3WDU+MMVpVx8hAkhov8j0SWwLWWVIc0/PC0gRE3qi4/7lai9w5Zkzd2278nuag3pqdEZmALdosqN0BfaMTCa0wse8cacnwznZ+/fsfwtzMmYB53V71ENItXr8AAXd9niaxg/dBrx1qv2ISpebFbfaGYwA/LjpHCBoXbwhJx+BAYdMBiS+T/8pCPynBVPZPUbGukk4pGUFAqgf6ULzRYew1zhIiLYJRC3kNpYQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6ltsHBeDJ2qJwdwl/SHwh1KG+uRV1emL1KyXCwmkrGU=;
 b=QXu0lwo9jc1kPiTynZvTYCNiQUkBnH4ayQnY3BE0kJA2+GmxOndV+bOUeYDgXriiyYIUW70V/bMtGzCmLVlkUvMarRLdA4hCpOUJ6DXKa9X0Mm4RDF5e/d6nqEupUb+ACsO2hHi2B5NG6bjYYDH6AYVsSTP9QGcF438C3BEQQrr4I81hGDbouI0ju1i6cCnMWTev3X1AOfnTJzRmY0mV6aGcDUdyl5ZnHZ5+8AUyiLKqde+T5TadTcV4B/WBYitfAK3Tep9iDn4uQe2i7iYwpbS7eCSxMaiwEBK4uFMyht0jiMeRphYgmPYbCvFZrV+5peKmsXDqt3bbeVPpnD4Fsw==
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=6ltsHBeDJ2qJwdwl/SHwh1KG+uRV1emL1KyXCwmkrGU=;
 b=RVZOqcBc8MTCmaKA1Ifa51EH5lGC9K6WDFluWZWO9LZ5H0ln1+YLEo71KkKa1/WNB2dGHehZrUFx8Nb6HhBo1wCQvttUPy2necA/yOYm+4MvXN9QB3gRkxhzxgIA+vslI7GJqJO62/tybMkdc8LDIfOv8uogzSJqkYonr4lPaIs=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Jan Beulich
	<jbeulich@suse.com>
Subject: [PATCH v2 00/21] libs/guest: new CPUID/MSR interface
Date: Tue, 13 Apr 2021 16:01:18 +0200
Message-ID: <20210413140140.73690-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0133.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::25) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0db51f0e-cfdc-438c-4f96-08d8fe84b353
X-MS-TrafficTypeDiagnostic: DM4PR03MB6096:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB60964C4C2B7DFAFC59C8B8208F4F9@DM4PR03MB6096.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: jsUpjjuIk7CXZ3UZgokQcW+NXWx+WT4ifcHY8IwqNi5SMDw18heCjRZFcAEZCz9wQ/4gd+EBqRT7isJgrGgCl0132VDfa3v5diazi+KN2kVJJI0VKDYXXIQ6fTTZm0chLv779HnB+jZas2azpxti3TtxlANQTane64tW15nG34kYVbtB3Wj0AJExN67AoT+UaOhRqw17f26c8mqsWxK4h9sJpFnpqFjHQHwzstpSd/OJ6XnFkaRdUfw/sAttrSb67RDPfoslYmJJkjqmO6JXhLxMf4/oXpNOBHkM82aLTXDrUzlT2rXOMwfw0bZobGtp3UBFlPJxGzzplILo0OZeyJEs6KcdUgsHnhj2/SqffKF4e9f4MyJ8/jPxt72xOsLSLsuHP0S6af9GebieZAhJaBMS0GhCmZlBDlGr5MF8Hc+DGPHNqOH3kw6U7evvDvpaApbff8CeehVm4R3V20VSFW+8P8sGhJXw4sugWrDg+n18phB9URvErt+Gi4Mgl4KvcFt7kWP6vzWWzhpbMhyyB+dnNtb6F5kLtZYRecPHe/Y83jsR7J+hE3X8oPMhtf2JS014VHD07fdjjU8qghPlxitjRU2zRJTalI0QsMf27W4=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(39850400004)(396003)(346002)(26005)(6916009)(86362001)(36756003)(83380400001)(186003)(8676002)(6666004)(16526019)(66476007)(66556008)(54906003)(2616005)(6496006)(5660300002)(956004)(38100700002)(478600001)(1076003)(4326008)(2906002)(8936002)(6486002)(316002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 0db51f0e-cfdc-438c-4f96-08d8fe84b353
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:01:57.1769
 (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: JiKDGJWo5lBg5AzKzvOG8FZT2l5aPVS+m3QGSEjz01tk4pCPTFFtsatO2ltO/iiNgIPmcthF9CexatWEW/B38A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6096
X-OriginatorOrg: citrix.com

Hello,

The following series introduces a new CPUID/MSR interface for the
xenguest library. Such interface handles both CPUID and MSRs using the
same opaque object, and provides some helpers for the user to peek or
modify such data without exposing the backing type. This is useful for
future development as CPUID and MSRs are closely related, so it makes
handling those much easier if they are inside the same object (ie: a
change to a CPUID bit might expose or hide an MSR).

In this patch series libxl and other in tree users have been switched to
use the new interface, so it shouldn't result in any functional change
from a user point of view.

Note there are still some missing pieces likely. The way to modify CPUID
data is not ideal, as it requires fetching a leaf and modifying it
directly. We might want some kind of interface in order to set specific
CPUID features more easily, but that's to be discussed, and would be
done as a follow up series.

Thanks, Roger.

Roger Pau Monne (21):
  libxl: don't ignore the return value from xc_cpuid_apply_policy
  libs/guest: rename xc_get_cpu_policy_size to xc_cpu_policy_get_size
  libs/guest: introduce xc_cpu_policy_t
  libs/guest: introduce helper to fetch a system cpu policy
  libs/guest: introduce helper to fetch a domain cpu policy
  libs/guest: introduce helper to serialize a cpu policy
  tools: switch existing users of xc_get_{system,domain}_cpu_policy
  libs/guest: introduce a helper to apply a cpu policy to a domain
  libs/guest: allow fetching a specific CPUID leaf from a cpu policy
  tests/cpu-policy: add sorted MSR test
  libs/guest: allow fetching a specific MSR entry from a cpu policy
  libs/guest: allow updating a cpu policy CPUID data
  libs/guest: allow updating a cpu policy MSR data
  libs/guest: introduce helper to check cpu policy compatibility
  libs/guest: obtain a compatible cpu policy from two input ones
  libs/guest: make a cpu policy compatible with older Xen versions
  libs/guest: introduce helper set cpu topology in cpu policy
  libs/guest: rework xc_cpuid_xend_policy
  libs/guest: apply a featureset into a cpu policy
  libs/{light,guest}: implement xc_cpuid_apply_policy in libxl
  libs/guest: (re)move xc_cpu_policy_apply_cpuid

 tools/include/libxl.h                    |   6 +-
 tools/include/xen-tools/libs.h           |   5 +
 tools/include/xenctrl.h                  | 102 ++--
 tools/libs/guest/Makefile                |   2 +-
 tools/libs/guest/xg_cpuid_x86.c          | 710 +++++++++++++++--------
 tools/libs/guest/xg_sr_common_x86.c      |  17 +-
 tools/libs/light/libxl_cpuid.c           | 230 +++++++-
 tools/libs/light/libxl_create.c          |   5 +-
 tools/libs/light/libxl_dom.c             |   2 +-
 tools/libs/light/libxl_internal.h        |  32 +-
 tools/libs/light/libxl_nocpuid.c         |   5 +-
 tools/misc/xen-cpuid.c                   |  23 +-
 tools/tests/cpu-policy/test-cpu-policy.c |  17 +
 13 files changed, 821 insertions(+), 335 deletions(-)

-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109769.209529 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcR-0004yg-2l; Tue, 13 Apr 2021 14:02:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109769.209529; Tue, 13 Apr 2021 14:02: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 1lWJcQ-0004yZ-Vt; Tue, 13 Apr 2021 14:02:18 +0000
Received: by outflank-mailman (input) for mailman id 109769;
 Tue, 13 Apr 2021 14:02:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJcP-0004rK-9I
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:17 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b347eacb-f47b-491a-b78f-e06b12b7d42f;
 Tue, 13 Apr 2021 14:02: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: b347eacb-f47b-491a-b78f-e06b12b7d42f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322536;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=mB4obio716LwGQbmmtPzikOtLnuYNlelD6BrKRg8sk0=;
  b=TPi/xwKM/R3lOCiAZgO4AXJI6IeT3BVy8uZgr0NiZpcU2wOb7Q4Q2mDU
   qr8tdslZkbBtnBZdZXuDatqenZS1yv8YAv8hK+qa9xjZGJNvnUa7mNla1
   C7xsJBR7TD7qqNs/Ng4Krb4I2wSw1EihWvlhoil139UIf4MCQEAPAgbCx
   A=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: NDbDpY8DBSNyLo8KErrFWsE7BS2gc3mmZsToRgTsST9nWEvtoJrbrgHJnu/IQLulH4eAgHb84k
 dx27Q6arg5IOdxoI4iFFqFLKUobTipHztRA/HUt3z3hg4Hqq4yaWFhrCwqHZ59fsR66vSj5LH0
 mk/F1aG42TLEcPiGxnZ5NPs3NNMV/HPjkPVGEgPKXtNQTOcp6WYHSGJ/BaGHPm7d94kVk6EBH4
 jE8shNYXuKTgmF1X4o8rJBFuDR0rsRB3IxjQ+wDcut8MA5Olb9VSnK6vNOvyzCKHQb2C8in/Dn
 0tM=
X-SBRS: 5.2
X-MesageID: 42955896
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:iDZwgKrpOz0K3Z/in5UjoKsaV5tgL9V00zAX/kB9WHVpW+afkN
 2jm+le8BfyhioYVn1Io6H4BICrR3TA+ZlppbQAJLvKZniDhEKEJJxvhLGSoAHINi3l7+hG1b
 phda87L9vsDVd7h87m4A++V+snqeP3i5yAqvzZyx5WIz1CT4FFw0NHBh2AEktwLTM2YKYRMJ
 aH/MJIq36BVB0sH6aGL0IIVeTCuNHH/aiOCXVtaCIP0hWEjj+j9dfBcySw4xYEXztDhZck/G
 TV+jaJgJmLjvfT8H7h/l6Wx4hKmdfn19tIDNGBh4woChiEsGqVTbUkf4fHgRcYj6WE7k0wnN
 zFvhE6Vv4Dk0/5TyWQqRvp1xKI6kdI11bSjWKzuEDOherFaBICYvAtub5k
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="42955896"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ASAOl0eFExnNjB0xuoLpv+GwXwvyI+xqCLF/qEhzFfzW0drWZpXMn/vjX8v4pqfuDNyP0IzKSjsS+05elakml8SiN1kCaopCQFkpGaAny8p0aX4QSd2G0RN4I+gj14J9lr07vYWYOJr3U0+4lP8RPyQbZKbKEg4CJvmNmsB/sZmrXV0r5YY1mjlGlCWr7G0zbIzXOXD/5psd9QpExolv0bAuHhTeMiuLPGCCQNPGtrbY7YhbXtEfOnM7XKujEH5BAcCVlm8+Ar5UrOdgbyMNa16qkvlHw7h+RwqRe+1qb3IlOZStzq6QWviPRQd4mlf7Y7mMwOcOaDCdUsu3RnjCJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XNG8CdU1lDvF/vM3JRvweREahb/itHxFfxS+2tlcVlw=;
 b=mMrkboakucD4rTbRTYx/xEp4kDys9RM8yZbVmAsm9GTLgAZL4A4OJHzt1lfRUEsZBWETzbpnP36WYhQCr4MtQkqESjamGudTlq8nkFcTfid4G+47JHhW3ZUv6LifiCG6ipM8ttP5322TpUu0QyX/qlmaybmdpklU+RsuKAai9+6v8jmxCk2EEdlU1nXQHcOhN9YOb5QlFfXWWPP7dkAavT40NRU1u6Y3SatSEkAranwvwH3dYVNZGdp6G7ASXBkCB1TS76V99X56iiFMLd7HXCGcN+12eSBrJs30VQk4nYpcB/qrOg7eYdB2m/3R3DzYt6diA2JEsPHZNztaJnVFeA==
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=XNG8CdU1lDvF/vM3JRvweREahb/itHxFfxS+2tlcVlw=;
 b=kSj7/KquCoH3eIcW8cFOntyBLOP9kU2axF95kXMTR1vgLqy+ZrCh/v1iJVx9QmeN81Y6NDD/cUe/bR+cZM9gsc2oJpN7NTvLA2sZbX0xjJksOCmCPxf7RQF3BN7745wTgVda78+uhr/yU4NhL/RAjBbrj0XdtpX470A/ekP95Cw=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 03/21] libs/guest: introduce xc_cpu_policy_t
Date: Tue, 13 Apr 2021 16:01:21 +0200
Message-ID: <20210413140140.73690-4-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0016.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::28) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6193172f-8a0f-4590-7d0c-08d8fe84bd26
X-MS-TrafficTypeDiagnostic: DS7PR03MB5542:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB554243726BF8E9F67F90CFEE8F4F9@DS7PR03MB5542.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4303;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: THCNHC3Qb1pEZ8hxvomoPX8bssJLx3MHz/qew1HspNkEtD0Wo8UN16nANoVb38WPXCU8wb9jTFldmrl06RCzez8NEf0T4GlxKWIca4Frp7JoEIYGej7/RBmO8B5rn78+mLDG8zkpmn6LJQXBIufId/McNn4ZJPq1snQC1dACK86qnjX9A9SXGE7p5yNaF/fOQxfu2G9I84vNeovEvnkZU2t7NDcUFvW6KP7roEpsk7LfwEhxCkdlygTIWqmYgZhZndf/EcxHcl+3ju8rvPtRVkSr12q6x7ozRBE4Ktk1AILHuE4S45GjuzkSOZXR7lJ4EBxbMq0FelVyTA3vExf7SFZmErI43IIKJrN1EcQTKzddYj8MjF4NFhcneL1FvEuTmWETfGERMjBwBo+vZrHSd5xFO7F+1JlffrtS0AVKvAiMnyejGoo3eKXZFujFwKw2IH77zF95BJYF2Urg49iKyIOtOOWmtqMyXt8PmVhD68arILFUfvLu4f6ExbAEN+0pepvBTvVxb0ZhAbznSb+DTh7DS3XEx+ZbOXOVUH3ZN2tQ2SPPjwn6gdmNAocTUbyef/60Rr/5Zf1blfRssh0O99ym1tUDTgHGar4wE/2EV/8=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(366004)(39850400004)(346002)(376002)(2906002)(6916009)(6486002)(36756003)(66946007)(54906003)(1076003)(6666004)(5660300002)(66476007)(316002)(66556008)(8936002)(478600001)(186003)(2616005)(16526019)(86362001)(6496006)(26005)(38100700002)(8676002)(956004)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 6193172f-8a0f-4590-7d0c-08d8fe84bd26
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:13.7615
 (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: oKs27sWmeiUOYRmUzxyqOuZ/c2MtVuOQzeqgAagUo/uFwawuHPUEwqRJgdoQVyB0c0SmnnzF270nnWO4nVsLUA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5542
X-OriginatorOrg: citrix.com

Introduce an opaque type that is used to store the CPUID and MSRs
policies of a domain. Such type uses the existing {cpuid,msr}_policy
structures to store the data, but doesn't expose the type to the users
of the xenguest library. There are also two arrays to allow for easier
serialization without requiring an allocation each time.

Introduce an allocation (init) and freeing function (destroy) to
manage the type.

Note the type is not yet used anywhere.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Introduce two arrays to store serialized versions.
---
 tools/include/xenctrl.h         |  6 ++++++
 tools/libs/guest/xg_cpuid_x86.c | 18 ++++++++++++++++++
 2 files changed, 24 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index e91ff92b9b1..1aba814f01c 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2590,6 +2590,12 @@ int xc_psr_get_domain_data(xc_interface *xch, uint32_t domid,
 int xc_psr_get_hw_info(xc_interface *xch, uint32_t socket,
                        xc_psr_feat_type type, xc_psr_hw_info *hw_info);
 
+typedef struct xc_cpu_policy *xc_cpu_policy_t;
+
+/* Create and free a xc_cpu_policy object. */
+xc_cpu_policy_t xc_cpu_policy_init(void);
+void xc_cpu_policy_destroy(xc_cpu_policy_t policy);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index cc5cae95725..8e3a1a8cbf2 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -39,6 +39,13 @@ enum {
 #define bitmaskof(idx)      (1u << ((idx) & 31))
 #define featureword_of(idx) ((idx) >> 5)
 
+struct xc_cpu_policy {
+    struct cpuid_policy cpuid;
+    struct msr_policy msr;
+    xen_cpuid_leaf_t leaves[CPUID_MAX_SERIALISED_LEAVES];
+    xen_msr_entry_t entries[MSR_MAX_SERIALISED_ENTRIES];
+};
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps)
 {
     DECLARE_SYSCTL;
@@ -660,3 +667,14 @@ out:
 
     return rc;
 }
+
+xc_cpu_policy_t xc_cpu_policy_init(void)
+{
+    return calloc(1, sizeof(struct xc_cpu_policy));
+}
+
+void xc_cpu_policy_destroy(xc_cpu_policy_t policy)
+{
+    if ( policy )
+        free(policy);
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109770.209541 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcX-00053U-CF; Tue, 13 Apr 2021 14:02:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109770.209541; Tue, 13 Apr 2021 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 1lWJcX-00053L-8Q; Tue, 13 Apr 2021 14:02:25 +0000
Received: by outflank-mailman (input) for mailman id 109770;
 Tue, 13 Apr 2021 14:02:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJcW-00052d-0C
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:24 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5b7db29d-1084-42cb-b665-9ae2c43f7373;
 Tue, 13 Apr 2021 14:02: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: 5b7db29d-1084-42cb-b665-9ae2c43f7373
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322543;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=ovr7/YsUP39oXdKzt7Kk8fSJbiorDCwX07ke7Osg8Gc=;
  b=fi2J8ld5ELHNbVU27V6f+ln7C3z/kPXjbZiW7nR11irfX1qfgYkSiHfJ
   wvtRsPMvRHn+xoXtkF9myjO/CYnLzR1G0fBjjF2a3WtFovIQmu6LdIQnK
   EdZWsUsQf4xt9sgH2tCv0ZUa4chCwFiCD0WgFOFx0Rtq1AiXhvrUEZqXd
   g=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Zp14r/kNJzYeinSih6yGez5dnzsPOTnNkIKP5E5mMjTg1o5KeUcGHsguFHr3TUpODXu4VG3zg1
 YOkX6ubrhaoW6cOwJIXybBgx34sRXytxxldUhUbrrKzxiIYacJKqgSEUDRyywOWjoe5/yu0mgu
 HG/+3LThxnEJKcZJHoLyscH55xho23jbw0pKtFplc57NQmBE3NVKYhq24Qan6Eth3RkpIclGhy
 ugqF9Oxme2JC9eT5TvEcKx/8q0cIbeO9EJEz8Cl08hSF6Zbw46NHg7XzLs+JNSy62UleUNxfxR
 V+o=
X-SBRS: 5.2
X-MesageID: 41866893
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:F72rGaF+VB3OFmT1pLqFMpHXdLJzesId70hD6mlYVQFVfsuEl8
 qngfQc0lvOhCwMXWw78OrsBICrR3TA+ZlppbQAJLvKZniChEKEDqFHqbHjzTrpBjHk+odmv5
 tIXqBiBLTLYmRSot395GCDfeoI5Pmi3OSWifzFz3FrJDsaCZ1IywtiEA6UHglXaWB9ZaYRL5
 aX6spZqzfIQx1+AviTPXUZQ/PF4+TCiZOOW3U7LiQ64wqDhy7A0s+YLzGk2H4lMg9n8PMZ3k
 Xu1yf44aiitP/T8G6n60bjq654tfGk5t9KBMmngtUYJDP2mm+TFflccozHhh8ZiqWC70srjc
 ntrn4bTrhOwkKURE6Zi1/M3BTtyzkn4XOK8y7mvVLT5fbXaRh/Lugpv/M8TjLpr3AOkfs57Y
 dwm0WejJZTBQOoplWE2/H4EytEu2DxnWAvioco/htieLpbUpB9h6oF8nhYFZ8RdRiKk7wPIa
 1VAMbQ6O0+SyL9U1np+m1mwNmbVn8uBBuxQk8bpsyP0zRN9UoJtncl+A==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41866893"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nQ4Y8ZA5AMUfBpf6/amurY82kCJ5uJ78eh6wrc8fxBKby1bc3SLKMiAk4a4mctw7yisEKfPoE6Vp7w3wex0cIlhhVIFRZbcuHObaPhEcisaUYgFc1PYleAvnqLNhToP+uSEo/rFWutEPgE5dKvjGIsigVADOgSPtHUkOjXVQWaFK29H87+qW/mEAkzjPxB05M22oAppWAq/vpJtBjBMirIgTuphxMgsaKoTSdNix3wODF0dUyhmVJdKMQI2248MkkEK9kRXxVOxb6EEIBlzmbJroRaBUVTesO6AwudZQQ6K15KeADU52kkYntgSNuQeGp5GLzAWesM/jcNFSKw+zXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6P/SnasJN8U82dOcBiB6I/f0U0K1k+7/Q7LtDAffDeY=;
 b=Pj733Uw5RGvl2LpBFwhJaKuG13CVHVXxGAgo1O3ZfG+9TdoRbBVL3xXzXFLnpLNThmk+jlIc4gb/vZBc+nKm8n2xWGMUP6WOGmyr7u0E+wgSDeZ6NB5V1Fl1wUqLu53juWYLTAvM9SYO1HslduTbFCvbFpTmAmcGmyj2U43UFGVsGpNEqOTcofTFQl+3xXDkID+Ja1TrPF1aMJglTOsmbPK2+5VEXKaTFZlSW33gH+TuI2xWznvclexaLII065X9jX8HL371qptqGffOpbu69x2DlqaDXA9BWTu4NY4kvGYXnU+NQiuCWD5g7F1kGhvoAbyfuhmuV2X0sFUZ/AUY9A==
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=6P/SnasJN8U82dOcBiB6I/f0U0K1k+7/Q7LtDAffDeY=;
 b=lX+TpiWF2XNzmwyxsDJpNCw6mqn5NIBWWbxvh15bItXOb39mRp5T8XZd4muaqxuxVha72ULeTQjqqp5tLtHlZ1w3rRsOtDa+17ArRCxIozyFcWgLq7vVXfT3gyw3sGCby8gzuhqrfoAjh6iJfwLWd5V2EwAClfSm0/7jzV5RB/A=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 04/21] libs/guest: introduce helper to fetch a system cpu policy
Date: Tue, 13 Apr 2021 16:01:22 +0200
Message-ID: <20210413140140.73690-5-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0010.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::22) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 921b7890-1c3a-4d82-4348-08d8fe84c01c
X-MS-TrafficTypeDiagnostic: DS7PR03MB5542:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB554260DEC25440E4FC50967B8F4F9@DS7PR03MB5542.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:127;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: c7IIScWxMDQ7+9qfzTz1pxH4VJMhjglcOkYkjJmuYmg+WpE44x8grGJ+OQ2Qs/LHaeZxT6sLIZ94WB10sqOGrFB0x8aV+/dD2dEgZR3j//GcjVupAFE+RvyPZ492mieBBTu6E3Ip70f/HbdbbabJk/0Vzl7tyZdez/B3VCr6NAEIyXLdfzO+9llkgHa8ahwmKc8v8foMXbzbNLMd60DqHmiHqeN7l4eSx2yWCsJacFssB/QHXO+WDAj5JlVENKzFIFOH8B4KYZRVdKeVnZRqKFQ8JXumcW47l/aizvz+DLJboFhzanrc5AgcVlfgpuWSK9u9SnJIACfFIz9DDPF54Hhnc1U5/BMdl0kfRqc0YnaCkj+RlnvgioUx34laLC/XpRF+1uqPL69UBoB9L9qljQe90k8PbQcWwDPm7iEpISKBwCAAX3VRjlyQd22O2c9its4geITHgzxzI2nPPKd6I1fZxFxTxT22E2AOiqywN6wTZvfI50bs9gah8UTPh42xfsmodCnvkEfFNtusMf2uLBqSbnnop8xAhvd6khceX4uRor6BGPkb4fQNqOeQM2RQpMjB7qUNTWLHppgSQmq7/sOSkmqNyIleYvICjkPd6Ew=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(366004)(39850400004)(346002)(376002)(2906002)(6916009)(6486002)(36756003)(66946007)(54906003)(83380400001)(1076003)(6666004)(5660300002)(66476007)(316002)(66556008)(8936002)(478600001)(186003)(2616005)(16526019)(86362001)(6496006)(26005)(38100700002)(8676002)(956004)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?RVN3dGpDSXJiTGtKR1p5a3VuRkpkNnk5NmxzUDVid1htZ0IvTzJHMklscENJ?=
 =?utf-8?B?TTdnblV1QUxPQ29lM21mcGhaNjdQUHBPM3NRUU5DVzVNZmRKdUZQZHpJQjJm?=
 =?utf-8?B?MHlJM3NXazhLWW1taHp3dUZIUnlhRmw1SWFrdHQrVjhBbnVMWm5XWXZIdDRN?=
 =?utf-8?B?WkdTTFdnSnk0ZmU5SEYyV0hKeUdpYVlIb1dnYnZ4TFBIc1QyMy94N3dTSll3?=
 =?utf-8?B?TE4yaVgwU1YwNk5CcWJleEo1SkpTbUEwZ2FIVjVET2NHVmFuY2w4K3p0ZEd6?=
 =?utf-8?B?SlNpMWNhSE5UbU5OMUp1clduSm1BT215L1luUmtIemN5eFdST1REN1l1Vk9p?=
 =?utf-8?B?QW9kSTJxbHE3YjBKdTMzeHJXL3YvZCt5Y1R6VVNXS1FsRWp5S0RpOWp4MS9x?=
 =?utf-8?B?YjU0WVpQNnhkUlZya2NOWmJ5dzZZM0JDMDFUM2E5SW9palJDeHhRZFE5eEsr?=
 =?utf-8?B?UWJxL245R1pGN3BILzJtQjFqZkZTZFhzQ1FxRXdCVVVubm5FMTloS2NVQXdK?=
 =?utf-8?B?UG9iTG9NR1VyNjVnRE9nTXNBaVJ0UW5CNE1CM0EwNGhES2JOa2tCeVIzRGdq?=
 =?utf-8?B?K1lhWm1VUVNyY0xIR2FDcEVvbHNzNFBUZVZuTHJEZ2hHbzV4TkF1ZW9YNkJk?=
 =?utf-8?B?ZmdIckJYRjlCWDArbkFnbHFiblBzdytaRnUvMU5FaG5TcElhdnlWa0NIWkZh?=
 =?utf-8?B?Nlg0VGZuaXZ0UzUvY1RMblFYRGVvM0lFMGhUcUFYWm9acCtrZEFhQW8yakVs?=
 =?utf-8?B?Z1UwUTRVRkdZQWZVWUJyK01NamtrWmRUbTVsemJDb1AxdDVnT3NodS9Xb3l1?=
 =?utf-8?B?RU1tQnVyVXhvbTBuWVFOVjFmNUtPOHFsYzFVbGdaaU5vR3JIcmhJS1NTTkY0?=
 =?utf-8?B?Rmo2TThiS05sWGJSbXJ0MUVWU3AwcFFSV2N1bzgzOHZwaFlxNyt6bkFYY3V4?=
 =?utf-8?B?R2lRYXR1dnRXMHdOU1NmalR3dXUzQlVId3djVUFLQVZ3c2VwbkRHT2N3K3l1?=
 =?utf-8?B?eW9VL1FRdU9DMFVhR0JaenUzeEpScDA0cC9obVZEcGovazlIVGNmd0U1VDhL?=
 =?utf-8?B?ZDNBR1ZSdnFzSmF6aktlSjNBcEsyU0ZsOTlnZTlDcUtRaU5iOEt3Yjl1RDJO?=
 =?utf-8?B?b0V3UmNPUHhRZG0zL0VuaGtiMmlTWXh2NGRpY3RaMjdmZ2hjaXdpemZ2dlNG?=
 =?utf-8?B?djJ1MzNkenQwT3N0dXFGT0dJMG9RRU9aUGdQc0w1WEdwNzFWRnAwR0dtL0c2?=
 =?utf-8?B?S2RGNWFqcWtGZS9nRXJvcUdhdHJ0Q1A5a0RCSjVjMWpGN1p6OW5uYWh1WUx6?=
 =?utf-8?B?UXd5ekpOcFBnbVhBSEtHWU9wNVhaeTJNdlA1c1hlR2RUQXRYYlFHd1d2ZHk2?=
 =?utf-8?B?azB4MjRiaytaTzZSaWUwVVVuNFNZYkNYVjhScllnM1NTZGE0OVVqbEhTVys3?=
 =?utf-8?B?QzF4Y1J6dHZhME9nSll2eCtTOFIvODYyYVkzWkRiSTRXRjBEWE90Nk1qZjBE?=
 =?utf-8?B?RnFvcUt1dHV6aWxKN3lmRnRnV3doZHVxZ2RnVlQwZjRCWXRYVkswUk1rWkFu?=
 =?utf-8?B?U0ZSUlV2UUlkZENHR3N0VG1yVk1RdGMyQmdHRTREMkE1d3dzdTY0MTVIN1NX?=
 =?utf-8?B?WUNvWFQ4OGR3THlJelZDdWJIamdYemhqKzRXSEdZK2kyeUpXNzJhSkdWSW1m?=
 =?utf-8?B?aUpDYVBIWVhuVlU5QkxQRGtZK3VHU1N4YTZhSzFYdU9rT3lBTVdnMHQ5OFhC?=
 =?utf-8?Q?tWa9A5Qo8YGm1jpajKo1NhuRTf3Ash3SVOGFl9n?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 921b7890-1c3a-4d82-4348-08d8fe84c01c
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:18.7221
 (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: YWytHuSaQZneGV5Bufk4+EMLRnRy4cHiOKQFthuuoWuvQQoHH56B4e8WU8yNenR/Zy2EaNgKXT7t/HZoE/07YQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5542
X-OriginatorOrg: citrix.com

Such helper is based on the existing functions to fetch a CPUID and
MSR policies, but uses the xc_cpu_policy_t type to return the data to
the caller.

Note some helper functions are introduced, those are split from
xc_cpu_policy_get_system because they will be used by other functions
also.

No user of the interface introduced on the patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Always return -1 on error from xc_cpu_policy_get_system.
 - Only print detailed error messages if err_leaf or err_msr is != -1.
 - Rename idx function parameter to policy_idx.
---
 tools/include/xenctrl.h         |  4 +++
 tools/libs/guest/xg_cpuid_x86.c | 54 +++++++++++++++++++++++++++++++++
 2 files changed, 58 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 1aba814f01c..187df5c5d2d 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2596,6 +2596,10 @@ typedef struct xc_cpu_policy *xc_cpu_policy_t;
 xc_cpu_policy_t xc_cpu_policy_init(void);
 void xc_cpu_policy_destroy(xc_cpu_policy_t policy);
 
+/* Retrieve a system policy, or get/set a domains policy. */
+int xc_cpu_policy_get_system(xc_interface *xch, unsigned int policy_idx,
+                             xc_cpu_policy_t policy);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 8e3a1a8cbf2..78fbc7db9d3 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -678,3 +678,57 @@ void xc_cpu_policy_destroy(xc_cpu_policy_t policy)
     if ( policy )
         free(policy);
 }
+
+static int deserialize_policy(xc_interface *xch, xc_cpu_policy_t policy,
+                              unsigned int nr_leaves, unsigned int nr_entries)
+{
+    uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
+    int rc;
+
+    rc = x86_cpuid_copy_from_buffer(&policy->cpuid, policy->leaves,
+                                    nr_leaves, &err_leaf, &err_subleaf);
+    if ( rc )
+    {
+        if ( err_leaf != -1 )
+            ERROR("Failed to deserialise CPUID (err leaf %#x, subleaf %#x) (%d = %s)",
+                  err_leaf, err_subleaf, -rc, strerror(-rc));
+        return rc;
+    }
+
+    rc = x86_msr_copy_from_buffer(&policy->msr, policy->entries,
+                                  nr_entries, &err_msr);
+    if ( rc )
+    {
+        if ( err_msr != -1 )
+            ERROR("Failed to deserialise MSR (err MSR %#x) (%d = %s)",
+                  err_msr, -rc, strerror(-rc));
+        return rc;
+    }
+
+    return 0;
+}
+
+int xc_cpu_policy_get_system(xc_interface *xch, unsigned int policy_idx,
+                             xc_cpu_policy_t policy)
+{
+    unsigned int nr_leaves = ARRAY_SIZE(policy->leaves);
+    unsigned int nr_entries = ARRAY_SIZE(policy->entries);
+    int rc;
+
+    rc = xc_get_system_cpu_policy(xch, policy_idx, &nr_leaves, policy->leaves,
+                                  &nr_entries, policy->entries);
+    if ( rc )
+    {
+        PERROR("Failed to obtain %u policy", policy_idx);
+        return rc;
+    }
+
+    rc = deserialize_policy(xch, policy, nr_leaves, nr_entries);
+    if ( rc )
+    {
+        errno = -rc;
+        rc = -1;
+    }
+
+    return rc;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109772.209553 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcb-00058B-SL; Tue, 13 Apr 2021 14:02:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109772.209553; Tue, 13 Apr 2021 14:02:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcb-000583-Oq; Tue, 13 Apr 2021 14:02:29 +0000
Received: by outflank-mailman (input) for mailman id 109772;
 Tue, 13 Apr 2021 14:02:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJca-00055v-O3
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:28 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 97c9e2fa-9949-4b1d-a14a-e3b47dc21392;
 Tue, 13 Apr 2021 14:02: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: 97c9e2fa-9949-4b1d-a14a-e3b47dc21392
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322547;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=WGVjcZJbLqz1e0K2Qv90XwMs+SAdnWmxpckssWf3UQY=;
  b=KnJRdZif6IhAZ05E7o7r9vSRM7Qixa/ypY4+thfB7LirB1Jl5SXtXbGj
   HSpXIwioa1o2RhkhMAIsdU2DS427G32aM70LdboyBaVsOVvyUC6LC2kTo
   +WQql1KVUhYdo0YHuAM98zzoiBe1KFJi6LwtyKb94/vRudp8igQWHqi2G
   0=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ny6wdbq1xxQnWPkZASog2YB8UKm3gHC6diJ52Ox5jdlkFtqBJ2O3/UIRIeELIKR3D6TqNGFlaW
 Uqp9Xb5S8xLrEIA6X1kfGoWDAFaltWtpW+5ojlm4auHn20dfQGqAc6F2ZGni5+FalMqZLA4MF5
 ePsuaVW2V+N1I+skYuIrMmId1UwYaDjQ6qf8+kJTmokH0YO8nYBP5Zk6pd83QLY9U+mDQgLjUh
 WcP3K+SC/fi+mHAjdpyn2nxrzjC8OxWZwAK7iwddoF0suc2Y5s3dRJlQVQtI0ASUojQTfHM8FC
 n+w=
X-SBRS: 5.2
X-MesageID: 41613815
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:25MGkK1424yXglONOf1kOwqjBTd3eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/FIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmtJ1/Z
 xLN5JzANiYNzVHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcBdxi1SYzzrdnFebg9AGJY/Cd
 6g/cJBvTWtYjA6ac68C3kDUYH41qH2vbjhZgMLAANi1RmWgVqTmcPHOjW7/jNbaTNAxr8+7X
 PI+jaW2oyPu+y2oyWssVP7wI9RnLLau7l+LeyKzvMYMzD9zjuvDb4RIIGqmBAQjKWR5E0xkN
 /Kyi1QT/hbz3/KZGm6rV/M9mDboU8TwkTvw1OZnnfvyPaRLFlRa7sj9PBkWyDU5EY6sNZ33L
 gj5RPii7NtAQ7dhyO43tDUVnhR5zuJiEA/mu0ehWE3a/p4VJZtq+UkjSZoOaZFNif75Ic7Kf
 JpHcHR6d1HGGnqEUzxjy1BxsehUW80GQrDak8eutaN2zwTp3xhyVAErfZv0ksoxdYYcd1p9u
 7EOqNnmPVnSdIXV7t0AKMkTdGsAmLAbBrQOAupUBvaPZBCH0iIh4/84b0z6u3vUocP1oEOlJ
 PIV04dnXIuemr1YPf+nKFjw1ToeiGQTD7twsZR69xSobvnXofmNiWFVRQHj9agmfMCGcfWMs
 zDea5+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49RhagucTOBor2tvHKUfraKbb3eAxUGF/XMz
 8mZnzeNc9A5kekVjvTmx7KQU7gfUT54NZRHcHhjq0u4blIErcJnhkeiFy/6M3OAyZFqLYKcE
 x3J66itqu6oGKx7FvZ9mkBAGsYMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYjhyUt3RCw
 wag1hs46q4I9ixyEkZepyaG1Pfq0FWiGOBTp8alKHGz9ziYIkEApEvX7E0Mx7KGRxzkQNDs3
 xCdwcAe0/aGlrV+OaYpa1RINuaW8h3gQ+tL8IRg2nYr1+gqcYmQWZeYySjSveNgQElRyNdg3
 p496N3usvGpR+fbU8ExMgoOlxFb2qaRJZLFh6Maolvlrf3Qw1oVmuRiTuGixY8R3ry+ywp9x
 /cBBzRXcuOLktWu3he3Kqvyl9ye2mHV29ba3xxs+RGZC/7k0c29dXOSru40mOXZFdH//oUNy
 vdZyAOZil0wcqs6RKTkDGeNHkvy5k0JNbBBLA7f7y74ALqFKS40YU9W9NE9pdsM97j9tIRWe
 WEYgmPMXfWDfgq1wH9nAdSBABE7F0f1dXm1x3u4DLmgDoRAf/OLE9nQL9eCdeG9GTgT+uJ1p
 I8rd9dh5rFDkzBLvq9jYfQZHp/DzmWh0icZeQhs4pVsqI/r6EbJeiSbRL4kFV8mCwjJ8L1nn
 4ESKt14Lr9KpZiFvZiDh5xzx4MrpCzN0MlvQz9P/8mcXwsh3HdOcmV47Cgk8tZPmSx4C/5OV
 yS6ERmjo/4dhrG8b4REKQrJ2tKLGA69XR55euHHregQjmCRqVm/FCgNGW6f6IYYK+ZGa8Iph
 I/x92TheeYe27Z3w/X1AELb55mwiKCQcmoBhiLFvMN29umOU6Uiq/v2fWNtl7MOHKGQnVdo5
 ZEe0wWZtlCjTdnrLRf6FnMdoXH5mQ/k1Vf5jl7kEXKwYbO2haDIX17
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41613815"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=S0UH35FCVfoJidA/NbGvIfQ3vUqiiuwkHizfhN7kk1PCBbY0ak1uc1hLgMNyCJQu1DcjqoSkOiVG929DUEtMzbyRKqR/npSRt5G2heuKv1vja9DpwDrRoKLP1cCM9uOK57O2fPhd1rGH7APqXW6uXREv/Chn1mF6EP2wGgJmZ4o90YfV4A9BRUjfxeVtxejr8aP4iS239Pa4Oe3HtZe09CvsIl3QdmPwXERqGItmSQboqPbFa85C4H+y76FGHRs6rG9UJujTJcqRbjrbTf+TeR1VpquUN5lZvRSIVPyHkxhT28XPkve2SBKONb6UFbX2APJHtrMQvVzzLyAPlTKR4w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7iRy9GuGFLyRtl5I3ssxtVqxdTgRXM3rmBhXql49R5s=;
 b=MoMjLFeu0eSqLBEE5jsaJGwqw91VgXzhDyNKaJCkxDk/dzuuoIxd2v2QsB+stqx+XE36pk9vYnBAIHm2PB7f2zfLWwemRZnTuv/J67xWMAyHOmLMGwwM3vJc+Ud0b71hjleeZzC2IiN3qTiwbuepmHARZ2RLp/0hrEKiseTLJFrh/JV2NnFrcG9+bYJDyXQ5MORivKUbs7vyD4NwsgU8P36kNp2NCQg4K1U5KL3Hr2ndm3M+0SjSpYfko/wt9qSWQpgt4SZKf0ftH5Iuj5/oiiGzlK2IjO8V/UWBOxDLSBDE/rBlxn5MzrWlVzcjGL8EChGyETiIOro/cy6CTcCMFw==
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=7iRy9GuGFLyRtl5I3ssxtVqxdTgRXM3rmBhXql49R5s=;
 b=TdtqAeIsDqDormoIW/dyYdtKqYId6j57wKMHCf4NxDyE2qIAJD3SWWP6CMUmEt/AuBNL/wCwpPhiSIHHfOi9nhJkw77tpNWAgyom23YV+3fG/2RxFI1BrI9DjYxLCPNYfqxRMpBeMeO2IFSAqsir3A8XsKIsFpsHS/PUbJOzfac=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 05/21] libs/guest: introduce helper to fetch a domain cpu policy
Date: Tue, 13 Apr 2021 16:01:23 +0200
Message-ID: <20210413140140.73690-6-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0022.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::34) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2b192e6b-f1bf-4f4a-8614-08d8fe84c39b
X-MS-TrafficTypeDiagnostic: DS7PR03MB5542:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5542C875554BAFF458C4DE428F4F9@DS7PR03MB5542.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:612;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: SwGd5gfYa7rwXBI15R6ZI7yv2qgTgGP5EgzHyQKonLf0/2PSmXFKh13n+JrjHhrjR+LwOE8mSlVR3DfdEGe7yj1nw9GXGD0M+odwFa0sKvJu0XTf4fc3u6dl7lKYhj+kiY/MFMBewLv9bquhk3gOwZBOvkELzSV2nJILiLh7IIYhDyMGKpF44P1WvCX7AO/VwnORwpfEoX9ET93GWiy5iTshH3tvoutdCwckoEc4ZlgX3GFHoPK2to8XBtm+d52/JcxC0s0u/wghy8A1bAm+g4JsZIYfrX4u9ggyNAoxow9a0FzDo+BVFvOt+8MG1YJpcMJQQW3tghomPWmvrM3myonIQiCNytuzCS9nNOFuQiNyYXieqQMQIajD5xPojLwOpEsVmb8dxXG5Aj9Oq41nddF11Ue0+TTYcaKmE0wZ0DggyGOnldx02hDfT4qKP0OW7fXe0Hj1WmjFluldwREtEMWJwPh22fXkLEmRl25Gec1NXMexXLeTvp0uoMtki0uVn3+JXYiXAQqmSeSNRb1RFtgnAMGjZh/MG+CsJM8zBCFnY+DpbgO9F8gSPBe1hZv7JV0EHRCE4n6GkNSgZZXfFRB4b+KX4MOfKAEFEB8DL4U=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(366004)(39850400004)(346002)(376002)(2906002)(6916009)(6486002)(36756003)(66946007)(54906003)(1076003)(5660300002)(66476007)(316002)(66556008)(8936002)(478600001)(186003)(2616005)(16526019)(86362001)(6496006)(26005)(38100700002)(8676002)(956004)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 2b192e6b-f1bf-4f4a-8614-08d8fe84c39b
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:24.5948
 (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: aBztJWLHqpR0WkZC30vqVhX+ZwEm99zFiE9cQZnhjmnxrLjEFXVDICUyOYhbmssHyuI/WFc63KNucr4pAp9O1g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5542
X-OriginatorOrg: citrix.com

Such helper is based on the existing functions to fetch a CPUID and
MSR policies, but uses the xc_cpu_policy_t type to return the data to
the caller.

No user of the interface introduced on the patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
Changes since v1:
 - Uniformly return -1 on error from xc_cpu_policy_get_domain.
---
 tools/include/xenctrl.h         |  2 ++
 tools/libs/guest/xg_cpuid_x86.c | 25 +++++++++++++++++++++++++
 2 files changed, 27 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 187df5c5d2d..34d979d11da 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2599,6 +2599,8 @@ void xc_cpu_policy_destroy(xc_cpu_policy_t policy);
 /* Retrieve a system policy, or get/set a domains policy. */
 int xc_cpu_policy_get_system(xc_interface *xch, unsigned int policy_idx,
                              xc_cpu_policy_t policy);
+int xc_cpu_policy_get_domain(xc_interface *xch, uint32_t domid,
+                             xc_cpu_policy_t policy);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 78fbc7db9d3..1394e503f3d 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -732,3 +732,28 @@ int xc_cpu_policy_get_system(xc_interface *xch, unsigned int policy_idx,
 
     return rc;
 }
+
+int xc_cpu_policy_get_domain(xc_interface *xch, uint32_t domid,
+                             xc_cpu_policy_t policy)
+{
+    unsigned int nr_leaves = ARRAY_SIZE(policy->leaves);
+    unsigned int nr_entries = ARRAY_SIZE(policy->entries);
+    int rc;
+
+    rc = xc_get_domain_cpu_policy(xch, domid, &nr_leaves, policy->leaves,
+                                  &nr_entries, policy->entries);
+    if ( rc )
+    {
+        PERROR("Failed to obtain domain %u policy", domid);
+        return rc;
+    }
+
+    rc = deserialize_policy(xch, policy, nr_leaves, nr_entries);
+    if ( rc )
+    {
+        errno = -rc;
+        rc = -1;
+    }
+
+    return rc;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109777.209565 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJci-0005EH-6o; Tue, 13 Apr 2021 14:02:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109777.209565; Tue, 13 Apr 2021 14:02: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 1lWJci-0005E8-34; Tue, 13 Apr 2021 14:02:36 +0000
Received: by outflank-mailman (input) for mailman id 109777;
 Tue, 13 Apr 2021 14:02:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJcg-0005DI-Om
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:34 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 65ef5357-2709-4ae1-a310-e4e06467e70e;
 Tue, 13 Apr 2021 14:02: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: 65ef5357-2709-4ae1-a310-e4e06467e70e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322553;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=6EB34yxtREKRpQgddSh15DRCHEJ1cQ8hc+zSM5cFzGo=;
  b=ep/PBnF/ttdYAjbyppsd1tzVkqIPg4GGJgbRgQ4yaWjSFg6fQ2Nz29ZV
   uz82ukvkRoGk2jKJvWH+38GGFt+rBhkW31ow0fOsOhVhAn8y7yveMGMPy
   9FdnOaz25TmcPjgGnOang6kxg994uVTRp2STTdBeUsAlwD2ouSh4KPOFi
   c=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Sj/Xa0h65LTdNTab4d1DHs0sDv20l4Se/NuzOXOEUPv86hEb+/+HxMH9JU5lvU/TiR9FRg3NIq
 ArJRa34fNTxQDGBWBmG6AXmK11Uk+ZyJH3SCKJDNZFAT4/9tx+/x787SUDTSCM8McvLQMck6L8
 st6Uq2bsa12otf0vA6FXePoNU7kGHi+XSMQjEw/DiqxQ3ewnZzEM5+AKopFiweZcxX42hT129L
 yvxfyZ5qH3BhY/2uBrKt6h4lXYAedggDTeiQCoV8ox4CGE3t5l3FmTNY0I6FCXNK9LKp+/39Xr
 ZH4=
X-SBRS: 5.2
X-MesageID: 41483804
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:LH1h+aGQWsRdwelIpLqFMpHXdLJzesId70hD6mlYVQFVfsuEl8
 qngfQc0lvOhCwMXWw78OrsBICrR3TA+ZlppbQAJLvKZniChEKEDqFHqbHjzTrpBjHk+odmv5
 tIXqBiBLTLYmRSot395GCDfeoI5Pmi3OSWifzFz3FrJDsaCZ1IywtiEA6UHglXaWB9ZaYRL5
 aX6spZqzfIQx1+AviTPXUZQ/PF4+TCiZOOW3U7LiQ64wqDhy7A0s+YLzGk2H4lMg9n8PMZ3k
 Xu1yf44aiitP/T8G6n60bjq654tfGk5t9KBMmngtUYJDP2mm+TFflccozHhh8ZiqWC70srjc
 ntrn4bTrhOwkKURE6Zi1/M3BTtyzkn4XOK8y7mvVLT5fbXaRh/Lugpv/M8TjLpr3AOkfs57Y
 dwm0WejJZTBQOoplWE2/H4EytEu2DxnWAvioco/htieLpbUpB9h6oF8nhYFZ8RdRiKk7wPIa
 1VAMbQ6O0+SyL9U1np+m1mwNmbVn8uBBuxQk8bpsyP0zRN9UoJtncl+A==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41483804"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=joEvALicDJ1p3S8vig9ZE65tnZQWRau/K/sqzSa/PSfs2X8bZbID+cgsA7JmnmBGuTXZWVyDmIzNO0iOCrEkAlTBU5zcFYrM1uOgo1IphCbcttEs9u4jdywXTTXv6i3TDAC1SDKIgQ55gllklStD8bltYuegYe+y5i560hoLEIEJ2fMWk/N3Eer2HNcC8EkJ/Ua+z2ZwZA0zTqQGFJq/7saRo7d0w0rpfHL9vUT+BGa0A7ktTYV0GC56Lmf7vR/CnzGF8d0fcRsizZrbERTBVDONa9CSttoL8cZFdqai+oq3lEoHks0ybULoh+npVU87tZkp+vURG9hR+RA0asMuqg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+C8NC1XmcgG+hR7rhDwEzRtSVqk3ZTRRhzEbmJGLd68=;
 b=e8x7s+BD5l63z9wD4u/e6dU5iwqd+JTcJXbfwRlsBd8vpsoctt56hjyA/clY4v18IdXT9+a8+BBD+ethVwo/XHFKadtLvk+01CCNaHo7/PUT3xXgP7oe3BcUq/NaIKT4+fLxES+grOYOITm9NHSa5lMkPpV64Zh4t1wTBU4+P4OW9cWVBDO64JEryhZ0VLUmDukQp00nfQcFCTRBJdjuhq6hO9RaVuOPJJHgpB2Dfb1bYYuYaV2kMVXCg5PlW6JaHyJNxa/LGXa+TFubFEADrD/80TxHc5zhcwD7/o3kFfOgxm8B3oYkpamrx2USo/OQhp9hLm3c8MYBlYkaP5jZ8w==
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=+C8NC1XmcgG+hR7rhDwEzRtSVqk3ZTRRhzEbmJGLd68=;
 b=pcRnrc531tj1Jbw7PBgmrV7/ez477ezNYVjyKGNYOAegRqGJjaEGmVZMnCFPNs3RziCciAqR6LauDKJ8FYwuVBJj0649rYRP75daVlv3fhwf2WTJ6BZ8okN/FPvufXN2gHrP+Hksz4DSwapKeaZnUOD3xaCz0VjqKr6AKhouBYI=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 06/21] libs/guest: introduce helper to serialize a cpu policy
Date: Tue, 13 Apr 2021 16:01:24 +0200
Message-ID: <20210413140140.73690-7-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0099.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::15) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 480a7cde-3a81-40d6-6add-08d8fe84c719
X-MS-TrafficTypeDiagnostic: DS7PR03MB5542:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB554207A5DF0BF7F679BF31588F4F9@DS7PR03MB5542.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: reCXnJjfy3n9vvTSfczOqbg4xaZvu9ikC2veci6I5QGYvjZds11ijWnwh75PR8bvI8oef+jjDd6KwiI4ejQeAjePp2z9rGNHR/xc8C13BiBD+ZDjZ+Vf4LoM48se8ajwyPzH2iPo7Tv/zmOQ8kiveBh9wrOz80mC0v4pzOhQIimbr02sMFyVNm5pMhOWPzQs5TN8CuSR0H+Su5kAP7vseBjprLwRXC5+xMjJ4XuVrFNULx+z5F/YBE25WKbgHG/Q/YpS7vBzyCaSoc6hAFcOsQ56y+J546xGbBTrXMnKwgj4SBMFFJ9P65X1q2WZ4NrYihFdXY3t1v6oyk+7UeR9bLvekAxK0kd9ub2vXLhDw1qZoa1ffdpKwm/+2F9F8vAwf1Lzh/07Y8ptV6+53UlATwF/qndy7Yf3PG3xyx4/pW6UuF7xIGamE0xvcOVaTVhtoe0zuUI7XTrdnVLKmpcU3diG2IL3qFsakjbZS2TbpzLYs1EREkjJjYmWU9h4v0FUn2ErddJ0mBByuVfr775nBhVBx1RJCrX9KR7q4KBHffaDl9+pU2tRJAKOuQJKgOFIBAqPL1v+rc+/GFset5fHTy8hncx99Ts8LthnQ3NXnwI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(366004)(39850400004)(346002)(376002)(2906002)(6916009)(6486002)(36756003)(66946007)(54906003)(83380400001)(1076003)(6666004)(5660300002)(66476007)(316002)(66556008)(8936002)(478600001)(186003)(2616005)(16526019)(86362001)(6496006)(26005)(38100700002)(8676002)(956004)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 480a7cde-3a81-40d6-6add-08d8fe84c719
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:30.4565
 (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: r69qJRuwc4bRB7kPxMRibOxmsJjOlInj41lHBDKVeD15e6tsxwImr56PK8imNcH5x4tEo/cvWc/3cWDXlIssJA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5542
X-OriginatorOrg: citrix.com

Such helper allow converting a cpu policy into an array of
xen_cpuid_leaf_t and xen_msr_entry_t elements, which matches the
current interface of the CPUID/MSR functions. This is required in
order for the user to be able to parse the CPUID/MSR data.

No user of the interface introduced in this patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/xenctrl.h         |  5 +++++
 tools/libs/guest/xg_cpuid_x86.c | 32 ++++++++++++++++++++++++++++++++
 2 files changed, 37 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 34d979d11da..a4827b1ae6a 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2602,6 +2602,11 @@ int xc_cpu_policy_get_system(xc_interface *xch, unsigned int policy_idx,
 int xc_cpu_policy_get_domain(xc_interface *xch, uint32_t domid,
                              xc_cpu_policy_t policy);
 
+/* Manipulate a policy via architectural representations. */
+int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t policy,
+                            xen_cpuid_leaf_t *leaves, uint32_t *nr_leaves,
+                            xen_msr_entry_t *msrs, uint32_t *nr_msrs);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 1394e503f3d..918591a128c 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -757,3 +757,35 @@ int xc_cpu_policy_get_domain(xc_interface *xch, uint32_t domid,
 
     return rc;
 }
+
+int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t p,
+                            xen_cpuid_leaf_t *leaves, uint32_t *nr_leaves,
+                            xen_msr_entry_t *msrs, uint32_t *nr_msrs)
+{
+    int rc;
+
+    if ( leaves )
+    {
+        rc = x86_cpuid_copy_to_buffer(&p->cpuid, leaves, nr_leaves);
+        if ( rc )
+        {
+            ERROR("Failed to serialize CPUID policy");
+            errno = -rc;
+            return -1;
+        }
+    }
+
+    if ( msrs )
+    {
+        rc = x86_msr_copy_to_buffer(&p->msr, msrs, nr_msrs);
+        if ( rc )
+        {
+            ERROR("Failed to serialize MSR policy");
+            errno = -rc;
+            return -1;
+        }
+    }
+
+    errno = 0;
+    return 0;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109781.209577 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJco-0005Jq-Hp; Tue, 13 Apr 2021 14:02:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109781.209577; Tue, 13 Apr 2021 14:02:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJco-0005Jh-Cn; Tue, 13 Apr 2021 14:02:42 +0000
Received: by outflank-mailman (input) for mailman id 109781;
 Tue, 13 Apr 2021 14:02:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJcm-0005DI-TH
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:40 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 443fcc63-a9ef-4fcc-b101-606f42864a7c;
 Tue, 13 Apr 2021 14:02: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: 443fcc63-a9ef-4fcc-b101-606f42864a7c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322559;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=xAaavw8tLgCKI5yDj7+ij6kDHsh9Urpoi2CfeTGi1ww=;
  b=PKxcJ8EgeIPpGDg5nI2ew8th5zs/t7FGpPRsdz/S1aVKC6SzXJq+BDbS
   Wi5+3f35QKNDbK/BOZ42k45QsHnbQx8KBazypUDOQpzzKb3YKvEhUHgLH
   Opek2BCBfU/yqyDjhW4rJmT8A835NITmNwxsQqOpZb/rObEe5BUgziBII
   w=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: mjzN2C9ug2pI8YZWOnJ8vtQRdzvPYsSriq45UkfvX5jS6Bn7WOPsCzVgA4LQ7MhbJuOGcjkUbW
 NOiGenB59l7jkEiRA4HhsYNJjc8E1pjLif6piuHmoLi6v4uXHgJ0udxlOD3XmSWJf6pT/8pJ1g
 Jl9z6ehzC8BuUChRUuZpRZuB4G21oxcOChY/9j5zQCnUC2DM5t0jmLrgR4DvlBjarGGgLFOHsK
 JByYgolWBgERtU2plNw2G18Kxozz/xKcOQfkuhx9+3cMdcMh0hBHfEu/wy/ryUxd4su9i6BQ2J
 oE0=
X-SBRS: 5.2
X-MesageID: 41476465
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:7fDn3K6Z/UHCc27tDQPXwU2EI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+LpT+jvfMk4/rZgNDOg4/5GC1/E6VwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLrCP0+HTU6/1t6bnc4/tFQPeBk80Ebgjr4zzYH7hJf52nkHQLrPq06FAs+e
 O80ysIG8ho8XveciWUjHLWqnDd+Q0j4XPj1lOU6EGLyaeSJENYerh8rLlUfRfD500rsMsU6t
 Mw40uju4dKFhSFpSzh5rHzJmBXv3Cpqnkvm/N7tQ05baIibtZq3Oki1XIQOpIBECXm0ZsgAe
 ljAerNjcwmD2+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoiPA3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QS2vCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSfGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erGs
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdUwoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtG4fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3DToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5ZvJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjYvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMZAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCU5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3iml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NAgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso6I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfCvA6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu+lZMfRmmIpA79Ij
 CkglVg1saAeyuIzrgBDa0sZUxQdUgn8XxnldnyPbH4OUGPd+tZ+kC9PWL4WLhBSLKdEbFVih
 ph+dmHk6u2cCX/sTqg8AdTE+Zr82y9R9m1Dx/JMelU88aiMVDJu5CU2qeI/X7KYAr+TV8Zi4
 1DfVERacoGqgBKtvxJ7gGCDortokwklFNC5ypAjVCF4Pn+3Fvm
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41476465"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=c+kWog2isXEbBsHil1Z7u11+uQFk/XcEz3JV90a+R6mao9tVCos8sWvDvYnMtj6uh2AC08JrTLicFgdF+co0FYmgzp8moOdZ+bOr3vVROxoCfDon7s2T5Wl9ISX29KS3cj2XuEULCLdbcldHruywJb4Y6V0Y52p1ZWMjZBK92KHHofGn+gjKHShuWqRc5CqF2nmIqwJOJykoB6lQ2/If9iqYo8IhRkPDQ1/ZkubYLwejZiaJNFOfP3D1QS4HabCK0i3Apms6v4Cc2ckJZliPfYOR/1AhLqmyji2BjeHYkqbqJj5ncJd3EVmy44ApZJy5NLy6RdcW5nmQcu2xdDI+2g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ts6808t8I7OOkQ2S6zJoNr6HGxOEnfocXKMyqX7zdFk=;
 b=Yn2Oy3fq2h1KILOwZ5/dyDq5MrbsDfbvucfuL0vFD+7Zcd7W7Kp0LIsaJjUWo4qyAnnJQWWLOPAF6zNlq/enYxKjkJ6/r2RNwsbSvlbYLpUcXmSjMhFk1RVEn5SLDkbGte9gDmEwqIf++vMtXm31L7haS3BnemKyrKLUl9zRTH2cWe/kL8zKkg2HWairAUiXAzg1FQ8x2lj46z9uu3eOXabMF1FrkUH8WDVhCvjlD+9Chucep8AUtpt7q7+6tH7L1p7AR74El3oZ/qoLlJ+mK6GwpGyWpXdSDOOvOX6P1L7bHEmSRm37jcUD5PBCEAKBxga1HX91NtLbWg6Ppqg5cw==
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=ts6808t8I7OOkQ2S6zJoNr6HGxOEnfocXKMyqX7zdFk=;
 b=neSQTFRItJsIKQNC7TcC8QEtw0WagpoZ4nSkQ79aphkQkyxq99ZAvGlKiUx6LP15q+sZMCr7gH6NM8d21KtRc0l6AQNA8gTJBmNAun3ZfJ+N6hHpn0eSaL1kfa6bsLhxDMc8uAWOv83bPZj6JZrN47UPlliBqNyh83fYfalSqg4=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 07/21] tools: switch existing users of xc_get_{system,domain}_cpu_policy
Date: Tue, 13 Apr 2021 16:01:25 +0200
Message-ID: <20210413140140.73690-8-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0110.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::26) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3a2014e0-48e7-4c92-b709-08d8fe84caea
X-MS-TrafficTypeDiagnostic: DM5PR03MB2553:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2553CBAC78CE4E95676D081E8F4F9@DM5PR03MB2553.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:76;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ltBqwAM+hGtRwnLp2PrwYzeLKzIMQgAtdgSrRE8pc3A0qPa6ZWl/fYCMgpbQI38rd6HJFc+It8c1wrlUWiSPyoChVtR5rskUaVAycK8kmp7pGXZ/MGphRwrTpqtrmUWXda+y6MFOnQU/PSoaZ1gb11tWxCIvDVU40p6gXewOG7pJbTi4aa2k8UA/VML1uJkd7qRpTxO1qAmpYJpd7JKEz6B/Zq2JcMyLFGsbn6hTfXbM9WLhBwGE/czv7qJODSXkUyxYQIcFfJedI66/keWTdQxBSnaiD7yU82/RwyxcsJfAYl41kRf1qBpYxyuXBe/zOAo7o0suSIK+5FHaxDmjdkRozCWLUpnOMNuTkjI0bugsBWYAPRu75YqlO5nndoptbnK8tfsmk9wFr9cj3fZzxN4EMULn6BIl8smvVSml6KOlKsHLXAJwJu9NPswCQCt1+k6xRGyg8aheSbXQtqaIDMyPgu9VkWp11I8hkpms7cOMhEnz9bU4XRIUGJkyYzQpVH3anG0m/7FTT9sK8FI/ubzH3rTR3dbjhMtUS6knk9I79WU0csMGTe9SeR3+6BX/Fz90tpc9m8umDsMRSr4aPxxtqmnUSztgZJ760MiZcsE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(396003)(346002)(39850400004)(8936002)(6496006)(186003)(83380400001)(38100700002)(2906002)(66476007)(86362001)(956004)(2616005)(8676002)(478600001)(66556008)(66946007)(6666004)(6486002)(16526019)(316002)(6916009)(36756003)(54906003)(1076003)(5660300002)(4326008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?TxrAmphWfN1N/1NpaNY9POEJGYdiW1dytAUvkQf?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3a2014e0-48e7-4c92-b709-08d8fe84caea
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:36.7508
 (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: TbxUlADcVmrjuv+lRwyJVr7d73HXfTPFtW7kHp1Zl5SmCsG+1qIP4TiYgep92qCEXHJnCatlds1KXzxbNia1uQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2553
X-OriginatorOrg: citrix.com

With the introduction of xc_cpu_policy_get_{system,domain} and
xc_cpu_policy_serialise the current users of
xc_get_{system,domain}_cpu_policy can be switched to the new
interface.

Note that xc_get_{system,domain}_cpu_policy is removed from the public
interface and the functions are made static, since there are still
internal consumers in xg_cpuid_x86.c

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/xenctrl.h             |  6 -----
 tools/libs/guest/xg_cpuid_x86.c     | 39 ++++++++++++++---------------
 tools/libs/guest/xg_sr_common_x86.c | 15 ++++++++---
 tools/misc/xen-cpuid.c              | 21 ++++++++++------
 4 files changed, 45 insertions(+), 36 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index a4827b1ae6a..e9a86d63bad 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2613,12 +2613,6 @@ int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
 
 int xc_cpu_policy_get_size(xc_interface *xch, uint32_t *nr_leaves,
                            uint32_t *nr_msrs);
-int xc_get_system_cpu_policy(xc_interface *xch, uint32_t index,
-                             uint32_t *nr_leaves, xen_cpuid_leaf_t *leaves,
-                             uint32_t *nr_msrs, xen_msr_entry_t *msrs);
-int xc_get_domain_cpu_policy(xc_interface *xch, uint32_t domid,
-                             uint32_t *nr_leaves, xen_cpuid_leaf_t *leaves,
-                             uint32_t *nr_msrs, xen_msr_entry_t *msrs);
 int xc_set_domain_cpu_policy(xc_interface *xch, uint32_t domid,
                              uint32_t nr_leaves, xen_cpuid_leaf_t *leaves,
                              uint32_t nr_msrs, xen_msr_entry_t *msrs,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 918591a128c..208a247bb6e 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -135,9 +135,9 @@ int xc_cpu_policy_get_size(xc_interface *xch, uint32_t *nr_leaves,
     return ret;
 }
 
-int xc_get_system_cpu_policy(xc_interface *xch, uint32_t index,
-                             uint32_t *nr_leaves, xen_cpuid_leaf_t *leaves,
-                             uint32_t *nr_msrs, xen_msr_entry_t *msrs)
+static int get_system_cpu_policy(xc_interface *xch, uint32_t index,
+                                 uint32_t *nr_leaves, xen_cpuid_leaf_t *leaves,
+                                 uint32_t *nr_msrs, xen_msr_entry_t *msrs)
 {
     struct xen_sysctl sysctl = {};
     DECLARE_HYPERCALL_BOUNCE(leaves,
@@ -173,9 +173,9 @@ int xc_get_system_cpu_policy(xc_interface *xch, uint32_t index,
     return ret;
 }
 
-int xc_get_domain_cpu_policy(xc_interface *xch, uint32_t domid,
-                             uint32_t *nr_leaves, xen_cpuid_leaf_t *leaves,
-                             uint32_t *nr_msrs, xen_msr_entry_t *msrs)
+static int get_domain_cpu_policy(xc_interface *xch, uint32_t domid,
+                                 uint32_t *nr_leaves, xen_cpuid_leaf_t *leaves,
+                                 uint32_t *nr_msrs, xen_msr_entry_t *msrs)
 {
     DECLARE_DOMCTL;
     DECLARE_HYPERCALL_BOUNCE(leaves,
@@ -329,7 +329,7 @@ static int xc_cpuid_xend_policy(
     /* Get the domain's current policy. */
     nr_msrs = 0;
     nr_cur = nr_leaves;
-    rc = xc_get_domain_cpu_policy(xch, domid, &nr_cur, cur, &nr_msrs, NULL);
+    rc = get_domain_cpu_policy(xch, domid, &nr_cur, cur, &nr_msrs, NULL);
     if ( rc )
     {
         PERROR("Failed to obtain d%d current policy", domid);
@@ -340,10 +340,9 @@ static int xc_cpuid_xend_policy(
     /* Get the domain type's default policy. */
     nr_msrs = 0;
     nr_def = nr_leaves;
-    rc = xc_get_system_cpu_policy(xch,
-                                  di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
-                                         : XEN_SYSCTL_cpu_policy_pv_default,
-                                  &nr_def, def, &nr_msrs, NULL);
+    rc = get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
+                                           : XEN_SYSCTL_cpu_policy_pv_default,
+                               &nr_def, def, &nr_msrs, NULL);
     if ( rc )
     {
         PERROR("Failed to obtain %s def policy", di.hvm ? "hvm" : "pv");
@@ -354,8 +353,8 @@ static int xc_cpuid_xend_policy(
     /* Get the host policy. */
     nr_msrs = 0;
     nr_host = nr_leaves;
-    rc = xc_get_system_cpu_policy(xch, XEN_SYSCTL_cpu_policy_host,
-                                  &nr_host, host, &nr_msrs, NULL);
+    rc = get_system_cpu_policy(xch, XEN_SYSCTL_cpu_policy_host,
+                               &nr_host, host, &nr_msrs, NULL);
     if ( rc )
     {
         PERROR("Failed to obtain host policy");
@@ -486,9 +485,9 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
 
     /* Get the domain's default policy. */
     nr_msrs = 0;
-    rc = xc_get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
-                                              : XEN_SYSCTL_cpu_policy_pv_default,
-                                  &nr_leaves, leaves, &nr_msrs, NULL);
+    rc = get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
+                                           : XEN_SYSCTL_cpu_policy_pv_default,
+                               &nr_leaves, leaves, &nr_msrs, NULL);
     if ( rc )
     {
         PERROR("Failed to obtain %s default policy", di.hvm ? "hvm" : "pv");
@@ -715,8 +714,8 @@ int xc_cpu_policy_get_system(xc_interface *xch, unsigned int policy_idx,
     unsigned int nr_entries = ARRAY_SIZE(policy->entries);
     int rc;
 
-    rc = xc_get_system_cpu_policy(xch, policy_idx, &nr_leaves, policy->leaves,
-                                  &nr_entries, policy->entries);
+    rc = get_system_cpu_policy(xch, policy_idx, &nr_leaves, policy->leaves,
+                               &nr_entries, policy->entries);
     if ( rc )
     {
         PERROR("Failed to obtain %u policy", policy_idx);
@@ -740,8 +739,8 @@ int xc_cpu_policy_get_domain(xc_interface *xch, uint32_t domid,
     unsigned int nr_entries = ARRAY_SIZE(policy->entries);
     int rc;
 
-    rc = xc_get_domain_cpu_policy(xch, domid, &nr_leaves, policy->leaves,
-                                  &nr_entries, policy->entries);
+    rc = get_domain_cpu_policy(xch, domid, &nr_leaves, policy->leaves,
+                               &nr_entries, policy->entries);
     if ( rc )
     {
         PERROR("Failed to obtain domain %u policy", domid);
diff --git a/tools/libs/guest/xg_sr_common_x86.c b/tools/libs/guest/xg_sr_common_x86.c
index 4982519e055..15265e7a331 100644
--- a/tools/libs/guest/xg_sr_common_x86.c
+++ b/tools/libs/guest/xg_sr_common_x86.c
@@ -48,6 +48,7 @@ int write_x86_cpu_policy_records(struct xc_sr_context *ctx)
     struct xc_sr_record cpuid = { .type = REC_TYPE_X86_CPUID_POLICY, };
     struct xc_sr_record msrs  = { .type = REC_TYPE_X86_MSR_POLICY, };
     uint32_t nr_leaves = 0, nr_msrs = 0;
+    xc_cpu_policy_t policy = NULL;
     int rc;
 
     if ( xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs) < 0 )
@@ -58,20 +59,27 @@ int write_x86_cpu_policy_records(struct xc_sr_context *ctx)
 
     cpuid.data = malloc(nr_leaves * sizeof(xen_cpuid_leaf_t));
     msrs.data  = malloc(nr_msrs   * sizeof(xen_msr_entry_t));
-    if ( !cpuid.data || !msrs.data )
+    policy = xc_cpu_policy_init();
+    if ( !cpuid.data || !msrs.data || !policy )
     {
         ERROR("Cannot allocate memory for CPU Policy");
         rc = -1;
         goto out;
     }
 
-    if ( xc_get_domain_cpu_policy(xch, ctx->domid, &nr_leaves, cpuid.data,
-                                  &nr_msrs, msrs.data) )
+    if ( xc_cpu_policy_get_domain(xch, ctx->domid, policy) )
     {
         PERROR("Unable to get d%d CPU Policy", ctx->domid);
         rc = -1;
         goto out;
     }
+    if ( xc_cpu_policy_serialise(xch, policy, cpuid.data, &nr_leaves,
+                                 msrs.data, &nr_msrs) )
+    {
+        PERROR("Unable to serialize d%d CPU Policy", ctx->domid);
+        rc = -1;
+        goto out;
+    }
 
     cpuid.length = nr_leaves * sizeof(xen_cpuid_leaf_t);
     if ( cpuid.length )
@@ -94,6 +102,7 @@ int write_x86_cpu_policy_records(struct xc_sr_context *ctx)
  out:
     free(cpuid.data);
     free(msrs.data);
+    xc_cpu_policy_destroy(policy);
 
     return rc;
 }
diff --git a/tools/misc/xen-cpuid.c b/tools/misc/xen-cpuid.c
index 52596c08c90..8ac25581d68 100644
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -458,9 +458,12 @@ int main(int argc, char **argv)
         uint32_t i, max_leaves, max_msrs;
 
         xc_interface *xch = xc_interface_open(0, 0, 0);
+        xc_cpu_policy_t policy = xc_cpu_policy_init();
 
         if ( !xch )
             err(1, "xc_interface_open");
+        if ( !policy )
+            err(1, "xc_cpu_policy_init");
 
         if ( xc_cpu_policy_get_size(xch, &max_leaves, &max_msrs) )
             err(1, "xc_get_cpu_policy_size(...)");
@@ -481,10 +484,11 @@ int main(int argc, char **argv)
             uint32_t nr_leaves = max_leaves;
             uint32_t nr_msrs = max_msrs;
 
-            if ( xc_get_domain_cpu_policy(xch, domid, &nr_leaves, leaves,
-                                          &nr_msrs, msrs) )
-                err(1, "xc_get_domain_cpu_policy(, %d, %d,, %d,)",
-                    domid, nr_leaves, nr_msrs);
+            if ( xc_cpu_policy_get_domain(xch, domid, policy) )
+                err(1, "xc_cpu_policy_get_domain(, %d, )", domid);
+            if ( xc_cpu_policy_serialise(xch, policy, leaves, &nr_leaves,
+                                         msrs, &nr_msrs) )
+                err(1, "xc_cpu_policy_serialise");
 
             snprintf(name, sizeof(name), "Domain %d", domid);
             print_policy(name, leaves, nr_leaves, msrs, nr_msrs);
@@ -497,8 +501,7 @@ int main(int argc, char **argv)
                 uint32_t nr_leaves = max_leaves;
                 uint32_t nr_msrs = max_msrs;
 
-                if ( xc_get_system_cpu_policy(xch, i, &nr_leaves, leaves,
-                                              &nr_msrs, msrs) )
+                if ( xc_cpu_policy_get_system(xch, i, policy) )
                 {
                     if ( errno == EOPNOTSUPP )
                     {
@@ -507,14 +510,18 @@ int main(int argc, char **argv)
                         continue;
                     }
 
-                    err(1, "xc_get_system_cpu_policy(, %s,,)", sys_policies[i]);
+                    err(1, "xc_cpu_policy_get_system(, %s, )", sys_policies[i]);
                 }
+                if ( xc_cpu_policy_serialise(xch, policy, leaves, &nr_leaves,
+                                             msrs, &nr_msrs) )
+                    err(1, "xc_cpu_policy_serialise");
 
                 print_policy(sys_policies[i], leaves, nr_leaves,
                              msrs, nr_msrs);
             }
         }
 
+        xc_cpu_policy_destroy(policy);
         free(leaves);
         free(msrs);
         xc_interface_close(xch);
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109784.209589 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcs-0005OY-23; Tue, 13 Apr 2021 14:02:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109784.209589; Tue, 13 Apr 2021 14:02:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcr-0005OQ-T8; Tue, 13 Apr 2021 14:02:45 +0000
Received: by outflank-mailman (input) for mailman id 109784;
 Tue, 13 Apr 2021 14:02:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJcq-0005IR-W3
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:45 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9de22b63-6d0a-48a1-aa5b-b42364ee1380;
 Tue, 13 Apr 2021 14:02: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: 9de22b63-6d0a-48a1-aa5b-b42364ee1380
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322563;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=+ccNt1NnUZB51wrF9lVtU6rnw0ezqCu7LtS/VwdmaXE=;
  b=ZFZ3EEM+dzJrqwI8IzwbWGCAy7wNqP4KCmaMMuU3cVA59mNQbN9dw3rK
   NTJxmJe5IDRfi1lkdTgLgabELnMaBHKXWRisGJi8HPq1icWb3jK7wR6QZ
   snfUxhLiu4kY1wKhyFgQTdSH0mIiWYo4S+0CLxo7mzR8BxML42oXA/3sN
   4=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 2NbV4rYqUDXgZ5UCmNABXCVnZ+KDdBd0ryP1I98GHYD1xaS79HzB4oY0jKiKqAkYMWROmm5tjr
 AtOhrPe8tde13VxDQo38sXg1sjULyNvM16ef19LppKCMQyJktyyQ8VkVe3lUtiNsTJHYfc5sjh
 iQ0oivb2GVlsQw3MNM/LMTD6tsN5lUAZxY5qe+2Sha2fdh+wFbaSRrnJ/KkkTK+we+XgzI5kzn
 wx3o3BkqnTAUmjF1XU9THVDApuIoC3G3jebACxyIKk8Oln3hYAzyU753UxlkgMpG4fzKPwp2zN
 wB4=
X-SBRS: 5.2
X-MesageID: 41322176
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:ohTAla1Jdk1/K7i/S073TwqjBWhyeYIsi2QD101hICF9WtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7LE/035hz/IUXIPOeTBDr0VHYSb1KwKnD53nbGyP4/vNAzq
 sIScJDIfD5EFQSt6nHySaiFdJI+re62YSJocub8Ht3VwFtbMhbnmVEIyKWCFd/SgUDJbdRLv
 qhz/FKrTahZngbB/7TbhU4dtPOusHRk9beaQMGbiRN1CC1kTiq5LTmeiLovSs2bjUn+9Yf2F
 mAqSPVzOGJs/a3yhjTvlWjlah+qZ/a5fZoQOCJgsgRAD3whgivf5QJYcz+gBkF5NuBxXxvvN
 7QowoxH8kb0QKsQkiF5SHD9iOl8DEy52TswVWV6EGT3vDRdXYBJOdqwad6GyGpj3YIjZVH/4
 9gm1+9jd5xCyjNmSzsjuK4Ly1Cpw6PjlcJ1dIIg2c3a/p4VJZh6bYx0WlyC5k6ECfz+OkcYZ
 JTJfCZ3vpQfF+ABkqp2FVH8ZipVnQ3KB+MXlIPjMyTyyRXh3B01SIjtbUioks=
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41322176"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ImeAnWUtT4HOIU1JcRi3DPv2dJlJVz26OK+V1BeChRMqR+Y/vglIbxDTXpU+Oos1lGhWSlmoKFPJhY/jjOxNFEoWxPrLpz/vybS/9wN/8M3TGwN2cAl+9akTy+kkYaRVNDVgwpVDvYqmQD6PQlymPKZ0rL+r7F8kqu5EbmWNqQANjGj9I2JdmuI3XNA/TiFMQWPWsg7MY0A+Y4eYok3fWciYRDITrA3AcA4zxjNvcEezV65j1M7eG+4lHuNuOJp6u+u77BnlhrHEEhVoqegotqM39PiPs4G3dWtBbEdpdRUC1xaIz22JBddNQMVcQH+SQqELnxmzvJOzht0uCwpSFQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ace5hGQHWZBVqrsl47aMLF18dvATzg1Wl0vS5Bxau5Y=;
 b=HNaOC0qzi5Cr+RUbJP1PcqV8zbsoxoyItSsm0qSQlcfX7oK80ZTY0zAGSJDUeZie8YiYzYzSMFlMq/qfEJhIQqCadVyJsX2UexC57CKBoFQRaODp04bJmCk1TU+anPDTRdw0nkqjtmtDGK3mIQMkal55l/YzeX0vaY3QCQP+zCdhcug3RfSmYzOig0xzut00JhZbIhCzlstY8VbkHM9ip6KZ+87R9wafqrtYDL3j35KWr0t/lUDOR18eJFfH4lUscpr7L6VHdhU3O8BoWma4nLavYIS/13VV2u3j09c0g32WjnToIsVH8L73EIXGi8uwiKiXMIiW8yvXOakc24dwYg==
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=Ace5hGQHWZBVqrsl47aMLF18dvATzg1Wl0vS5Bxau5Y=;
 b=nrSfj9EBW0fo0eS6hqr5Jw8o8mwkuA2WEZuotzLMM1/hLzr+GExpU/SXoHTlaFZLM7L+pqhXwghhgGZ9jDazwMiUAXlsZw2tsXUBR0KcqPjkGfXkmIO1KopAs99OpLs/sZRCPj0AR77dr0AZJJvckv3JHJeBn7/W4m2rkCE3Muw=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 08/21] libs/guest: introduce a helper to apply a cpu policy to a domain
Date: Tue, 13 Apr 2021 16:01:26 +0200
Message-ID: <20210413140140.73690-9-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0103.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::19) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c3f6c4db-9226-4c75-9e5a-08d8fe84cd99
X-MS-TrafficTypeDiagnostic: DM5PR03MB2553:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB25537061323BBB46BB2DE5C88F4F9@DM5PR03MB2553.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4941;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: QbaJTcdYwbS4Hftkmgy4BuKsisuCKehgtSzsiAqcrNddh4rGwloRznuiO+iyHaVQBEh1cXgSt98XjEFltXMs4jBuxWrdvb+3sgg4zpxdWPY36zqvJNFOBYgMVcnJz/PvM+WpZwNNdQRQTzKaPomCMVGJWeIHZo9LS+0gHIhZLFaCROMs2pmf9Fp1tG57lM/U2ZDcenHwCHg7IpOYW9sMpFlvBUf0K0mdeCQvi45POhDajb8vRnF+33jEIcJx4iRElxPe5nICCoqVw3in+UkQOhno8BV6ISxANgxFU7iGG+ZeOVEkZ7B2ps9HIFt6n8VzTd/lrRzVyD0d+b+Ak4msaPZ9N2DbBpmjPbnejRrTzFlvA6u61j/Sq7rLDFBc2tW0fJ17wSNS84vVIq5uyWRsyAJkjtZ+2Xsoe536D06JVVKHCmsDLUFRngVVX/oiWLTH+WuC3BZSYD/cgP9aRZc9F4s5s2GHfM7kYbGeWUHi/0sxRYTQa9fJgjSu6Xb1zJeS0x2lq4o3cvYH/I9dnD3yEy+f3dVDxoZYsUaX2q5kC1/hvqMiakAswUHVGipB+XOJuOsWR1GYke57E8XE5fdPW1D6nrjDKN7SdKVBUqQ3Z0I=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(396003)(346002)(39850400004)(8936002)(6496006)(186003)(38100700002)(2906002)(66476007)(86362001)(956004)(2616005)(8676002)(478600001)(66556008)(66946007)(6666004)(6486002)(16526019)(316002)(6916009)(36756003)(54906003)(1076003)(5660300002)(4326008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: c3f6c4db-9226-4c75-9e5a-08d8fe84cd99
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:41.2839
 (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: x0AO5Pq5+kolurdDtasd6/dgSgBN99V8Oh/C43+OSRqVuYZNeNbOg1RaXlAzQ9eFMoUxQUfjf3GoMyCvdsZZHQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2553
X-OriginatorOrg: citrix.com

Such helper is very similar to the existing xc_set_domain_cpu_policy
interface, but takes an opaque xc_cpu_policy_t instead of arrays of
CPUID leaves and MSRs.

No callers of the interface introduced in this patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/xenctrl.h         |  2 ++
 tools/libs/guest/xg_cpuid_x86.c | 29 +++++++++++++++++++++++++++++
 2 files changed, 31 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index e9a86d63bad..27cec1b93ff 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2601,6 +2601,8 @@ int xc_cpu_policy_get_system(xc_interface *xch, unsigned int policy_idx,
                              xc_cpu_policy_t policy);
 int xc_cpu_policy_get_domain(xc_interface *xch, uint32_t domid,
                              xc_cpu_policy_t policy);
+int xc_cpu_policy_set_domain(xc_interface *xch, uint32_t domid,
+                             const xc_cpu_policy_t policy);
 
 /* Manipulate a policy via architectural representations. */
 int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t policy,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 208a247bb6e..8b48c51a8ee 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -757,6 +757,35 @@ int xc_cpu_policy_get_domain(xc_interface *xch, uint32_t domid,
     return rc;
 }
 
+int xc_cpu_policy_set_domain(xc_interface *xch, uint32_t domid,
+                             const xc_cpu_policy_t policy)
+{
+    uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
+    unsigned int nr_leaves = ARRAY_SIZE(policy->leaves);
+    unsigned int nr_entries = ARRAY_SIZE(policy->entries);
+    int rc;
+
+    rc = xc_cpu_policy_serialise(xch, policy, policy->leaves, &nr_leaves,
+                                 policy->entries, &nr_entries);
+    if ( rc )
+        return rc;
+
+    rc = xc_set_domain_cpu_policy(xch, domid, nr_leaves, policy->leaves,
+                                  nr_entries, policy->entries,
+                                  &err_leaf, &err_subleaf, &err_msr);
+    if ( rc )
+    {
+        ERROR("Failed to set domain %u policy (%d = %s)", domid, -rc,
+              strerror(-rc));
+        if ( err_leaf != -1 )
+            ERROR("CPUID leaf %u subleaf %u", err_leaf, err_subleaf);
+        if ( err_msr != -1 )
+            ERROR("MSR index %#x\n", err_msr);
+    }
+
+    return rc;
+}
+
 int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t p,
                             xen_cpuid_leaf_t *leaves, uint32_t *nr_leaves,
                             xen_msr_entry_t *msrs, uint32_t *nr_msrs)
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109791.209600 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJcz-0005WY-A1; Tue, 13 Apr 2021 14:02:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109791.209600; Tue, 13 Apr 2021 14: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 1lWJcz-0005WO-6r; Tue, 13 Apr 2021 14:02:53 +0000
Received: by outflank-mailman (input) for mailman id 109791;
 Tue, 13 Apr 2021 14:02:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJcy-0005VP-88
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:52 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4c4f8e8f-c4e2-46cc-88fb-18f4bbd2e007;
 Tue, 13 Apr 2021 14:02: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: 4c4f8e8f-c4e2-46cc-88fb-18f4bbd2e007
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322571;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=LlfT1DWe4NTaP55AtYF0ZPiSw7w08SLaktbWPptC3lk=;
  b=ReSNqZ82stdFrOIXSPvUnQk/Lm8rW2FEszCM1Z2M4ahUasIBASaDwzAy
   UppZHgK3t0hqLdJWPVJe9GKLOzIBWtAr/v0fSM/oCUF3QKaRp+3nksfoD
   vudgZiEZ2l3EcMlXaZdzE4VeQPlgXOnW+voEZ4n7UmM+0zICBe7YldIsl
   Q=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 1jvGi0w09W/ulosaOf2u+LuUA9Un+Hj3/H7riKjtwACkTx69RrnJRy8JGt2HBoBDZw5B4zm8yi
 cndbThvbg3PmfINl05LA+y1Eb9tNiYDqYDS4f5fui1IdQEjRALmEOOJiNXtIglc53tG+ehiHU5
 CdTurR+xADd2YE2LeWFUh/cxCzqTm3n03n7rCYpWe7Ll8SA527NQRebCf/tIseZOM8nE6RRlJb
 Uc01aP4Xa64Y5JsN3We79LrznI/Su2XMVYN2MYOrp6q3mZaDznfL0CEMV61MHrE3DVuIWxyPHR
 2Wo=
X-SBRS: 5.2
X-MesageID: 41476493
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HljoC6qrjcCs8YOYIWVgQ9UaV5vxL9V00zAX/kB9WHVpW+SFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex7h3LRy5pQcOqrnYRn+tAKTXeRfxKbB4xmlIS3x8eZByb
 xtGpIVNPTcBUV35PyU3CCWCNAlqePozImNpcPzi0hgVhtrbaYI1XYaNi++HldtTAdLQboVfa
 D92uN9qzCteWsaY62AbxFoY8H5q8DWj5WjWBYaBnccgzWmty+i67LxDnGjr3Qjeg5IqI1CzU
 H11zbXy4/mmPG9xx/a2Qbonu5rseqk8PRvLoihjsAULx/llwqnYp9wMofywQwdkaWUx3sB1P
 XKvhc8L+R/gkmhAl2dkF/W9CTLlBYo9nP4xleTjRLY0LPEbQN/MeVtr8Z9UHLimi4dleA56o
 1n9SalkqASKhX6kCH097HzJmlXv3vxm1UOu6oulXBFOLFuD4N5nMgk025+NowPJy7+4JBPKp
 gUMOjsoMxbdl6XdBnizw9S6e3pWnwyGyGPSVQZtvqU1CBLnGt4w1Fw/r1noks9
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41476493"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Jc/rg7PTxVuMryOpNfOnTx6MKW5xHEACJNAVjF7sUjJaKMViygvNw6LTsl/q+OFX0xFJ9CWl+2dvSI7PPI4sfblY8fUuSQZVKhddNs0mwyexDL1iM6tnHCtYTTfx1XaEApEppKFATeICGQearybm7VMma+yNqrsUaVqDnh3lwiz0fci0zhhN4A6bLAWiCaDh1YW38GZ4ylZoG0X+0GBNZZ8BP6n8zWADjMWq0O2m4jSJFx8A8AOc5DIVvzFUF+6TjfM4VabLLX4wiDYb6y3zDTsWCGCYi8JkaX91+3bYC/Is3S/v8jTrBTysy6r5f9hV4+Q2mNvMmyqt4bME0yXXZw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=i3gNWM7lFDWsx1HrL86tq3Osjyogq5McpScOb4qDlhk=;
 b=fr7mU9a7uC95iKDbvQjRtR/mP95CAIUjOP2ULWOF9cx2rn5h/mF3vqSvtZpFU4qzmYBFN7e7somKfkJwM66F0jTgVh35eHQryV0vt5Hy5jIn8pL5IB30Ro4TIzEbadkQGbXSfoIqoUefQZX7Sl5BWWvNkl48GEzPR1fqQm+DZsUK7kZ2bXymTbeBBSy1ivmYjAT2unLYdc/uMmFH0cc9ITZlzW+b7r3aYctxtQn2Qsy0Wpv+nkWcS+cmJ4G3NiQ8SmO6BqLdZnEHkBweaIRGKf1joLU3LsppzIvaVziZHf9hdlhZdlqxJdjEi3cUwCtkeQEHjlyGxPpIpdcupUo9wA==
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=i3gNWM7lFDWsx1HrL86tq3Osjyogq5McpScOb4qDlhk=;
 b=ajx0fmlhrLENhLz3hLRHQAHuvTX7t5N2/8xz7FJWr0ORxd273ujV1RWmRn9uqfdIYjVQwzm9jXPE29H8mRq/iiOzQNsTZMetsjOOKfV7JgnhvP/eB5w+wDGYcxn7Ywzk/u8v1DG7DvQeF6/gmiWhjxA+6nh/qufHcnZ3Mia9HgY=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 09/21] libs/guest: allow fetching a specific CPUID leaf from a cpu policy
Date: Tue, 13 Apr 2021 16:01:27 +0200
Message-ID: <20210413140140.73690-10-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0117.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::33) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3d2b021c-64b8-4464-8754-08d8fe84d0d3
X-MS-TrafficTypeDiagnostic: DM5PR03MB2553:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB25532E47D27E9317EDE2FF388F4F9@DM5PR03MB2553.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: eUH13AqT7QdOPGOu+ebdMZelBXnIr19GCdgIiy8xEPia6uGTpuG43d01pFF3L2o4UauhteEqou+ETAuTZ3rZQS5WXgAF+ovKM/H1QqFqueCjcpw6yHr25Xcu/nSu+nazPHO7DfaPJHtadsgFo/xHxw4wWO/UZSLAJylgh3vnKyNG8ZAa9ucoDrnKphQ5RbkqQcSiwLOse5l9c8xORgvjNwfn+NAQ8CGxe26t8k/fw2VmXPJZUSJEaUAelCNPDpOEVIeY52JYaRpnilKh4OMCDeAZgJJelubwSvbqCil0dXyOHDE4y3d+5lyvrKmbD37UcT6+qZwnsCNvHbTHMQSf3BdPKi6KxqYLsuXt0AezRwqvMh1TpZ4lhLN0JO9lvKK9CkfZSRoBRT8nB76suM2R4jHyrgLjeXr6r3V4qRpIWHIDni4kLqDaJcnCf28M0Y+dLEievCnYhoINDbE7zCT4TxBMbWlSIyyo30/IUOFq5D8BrQubDYOdPlUWvuxzEnCxIwxUNMVohnV+AS2SHvftNbsVSyrWKOAPFcTVOp1gpYelalG8scwxh00I+rKsjJB0qPZRz+fpA7kskE8sPBhPNA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(396003)(346002)(39850400004)(8936002)(6496006)(186003)(83380400001)(38100700002)(2906002)(66476007)(86362001)(956004)(2616005)(8676002)(478600001)(66556008)(66946007)(6666004)(6486002)(16526019)(316002)(6916009)(36756003)(54906003)(1076003)(5660300002)(4326008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?AqyvNGZR8sp4qYp4n/nvnXFMN4MO+XP2zon8V+b?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3d2b021c-64b8-4464-8754-08d8fe84d0d3
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:46.7732
 (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: 1osmuPCmby5rrRI2DCxLFzboJ1+tLtDJfUTGOjHYNXo0FM3GBvPsp1JClQZir5IxPJJp9PP59r3vy3D2xPXaKA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2553
X-OriginatorOrg: citrix.com

Introduce an interface that returns a specific leaf/subleaf from a cpu
policy in xen_cpuid_leaf_t format.

This is useful to callers can peek data from the opaque
xc_cpu_policy_t type.

No caller of the interface introduced on this patch.

Note that callers of find_leaf need to be slightly adjusted to use the
new helper parameters.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Use find leaf.
---
 tools/include/xenctrl.h         |  3 +++
 tools/libs/guest/xg_cpuid_x86.c | 38 ++++++++++++++++++++++++++++-----
 2 files changed, 36 insertions(+), 5 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 27cec1b93ff..cbca7209e34 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2608,6 +2608,9 @@ int xc_cpu_policy_set_domain(xc_interface *xch, uint32_t domid,
 int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t policy,
                             xen_cpuid_leaf_t *leaves, uint32_t *nr_leaves,
                             xen_msr_entry_t *msrs, uint32_t *nr_msrs);
+int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
+                            uint32_t leaf, uint32_t subleaf,
+                            xen_cpuid_leaf_t *out);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 8b48c51a8ee..d146c5bbc99 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -280,9 +280,9 @@ static int compare_leaves(const void *l, const void *r)
 
 static xen_cpuid_leaf_t *find_leaf(
     xen_cpuid_leaf_t *leaves, unsigned int nr_leaves,
-    const struct xc_xend_cpuid *xend)
+    unsigned int leaf, unsigned int subleaf)
 {
-    const xen_cpuid_leaf_t key = { xend->leaf, xend->subleaf };
+    const xen_cpuid_leaf_t key = { leaf, subleaf };
 
     return bsearch(&key, leaves, nr_leaves, sizeof(*leaves), compare_leaves);
 }
@@ -365,9 +365,12 @@ static int xc_cpuid_xend_policy(
     rc = -EINVAL;
     for ( ; xend->leaf != XEN_CPUID_INPUT_UNUSED; ++xend )
     {
-        xen_cpuid_leaf_t *cur_leaf = find_leaf(cur, nr_cur, xend);
-        const xen_cpuid_leaf_t *def_leaf = find_leaf(def, nr_def, xend);
-        const xen_cpuid_leaf_t *host_leaf = find_leaf(host, nr_host, xend);
+        xen_cpuid_leaf_t *cur_leaf = find_leaf(cur, nr_cur,
+                                               xend->leaf, xend->subleaf);
+        const xen_cpuid_leaf_t *def_leaf = find_leaf(def, nr_def,
+                                                     xend->leaf, xend->subleaf);
+        const xen_cpuid_leaf_t *host_leaf = find_leaf(host, nr_host, xend->leaf,
+                                                      xend->subleaf);
 
         if ( cur_leaf == NULL || def_leaf == NULL || host_leaf == NULL )
         {
@@ -817,3 +820,28 @@ int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t p,
     errno = 0;
     return 0;
 }
+
+int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
+                            uint32_t leaf, uint32_t subleaf,
+                            xen_cpuid_leaf_t *out)
+{
+    unsigned int nr_leaves = ARRAY_SIZE(policy->leaves);
+    xen_cpuid_leaf_t *tmp;
+    int rc;
+
+    rc = xc_cpu_policy_serialise(xch, policy, policy->leaves, &nr_leaves,
+                                 NULL, 0);
+    if ( rc )
+        return rc;
+
+    tmp = find_leaf(policy->leaves, nr_leaves, leaf, subleaf);
+    if ( !tmp )
+    {
+        /* Unable to find a matching leaf. */
+        errno = ENOENT;
+        return -1;
+    }
+
+    *out = *tmp;
+    return 0;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:02:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:02:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109794.209613 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJd3-0005av-MC; Tue, 13 Apr 2021 14:02:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109794.209613; Tue, 13 Apr 2021 14:02:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJd3-0005am-IC; Tue, 13 Apr 2021 14:02:57 +0000
Received: by outflank-mailman (input) for mailman id 109794;
 Tue, 13 Apr 2021 14:02:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJd1-0005VP-Lw
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:02:55 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e7aa8d1c-a197-4003-8b03-da7179619109;
 Tue, 13 Apr 2021 14:02: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: e7aa8d1c-a197-4003-8b03-da7179619109
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322574;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=WrgzclkoEzTDmdIEIC5OF4WYt487TOXaBKzV0255Ehc=;
  b=cW1DwgZ2EH4UaWnCeb5YmY0ma/ucANYMiazLQj9leA1o7wQJIhnxp340
   XFLudQOYx9/IbZ54jg6GJfv2jlSY53wCsbM8DiaTnPghqRGYDPirdGeja
   tfWETNdq3p62MkCZSnzNg6uMt7QIRBkXxCiEHxMoSUAnvyYHUo+BdHUAZ
   w=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 9xL1XWWUHkQE602k0AFIqXPVi8BFPmApmrtre0or53xCSVo4VK9l4NvIEvvUpAmP94oQ1q5YVd
 3pAyPRn22vQf8wQh15DiL8tST94jxiW0X9pUxfnFqtinaWyVkhXgarB1FlMOji7lVqp5wHXGyl
 5dfDtbOmoSPsdxvcUxf+SMt4r9y9g5S5bHSQ+3QHL1mcPSJWaRXQMPmF0/d6P1H0n8t71yV+1s
 jO7vxeKYFD6Pjm1+Heb2SOdB/a9IwzYcZiamajbIz2lh/XcXI3KCUzOYOmWhA5lHsoFZhndlwF
 Oo8=
X-SBRS: 5.2
X-MesageID: 41476507
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:nS7wcq4XsyIXVmxItQPXwU2EI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+LpT+jvfMk4/rZgNDOg4/5GC1/E6VwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLrCP0+HTU6/1t6bnc4/tFQPeBk80Ebgjr4zzYH7hJf52nkHQLrPq06FAs+e
 O80ysIG8ho8XveciWUjHLWqnDd+Q0j4XPj1lOU6EGLyaeSJENYerh8rLlUfRfD500rsMsU6t
 Mw40uju4dKFhSFpSzh5rHzJmBXv3Cpqnkvm/N7tQ05baIibtZq3Oki1XIQOpIBECXm0ZsgAe
 ljAerNjcwmD2+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoiPA3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QS2vCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSfGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erGs
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdUwoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtG4fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3DToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5ZvJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjYvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMZAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCU5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3iml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NAgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso6I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfCvA6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu+lZMfRmmIpA79Ij
 CkglVg1saAeyuIzrgBDa0sZUxQdUgn8XxnldnyPbH4OUGPd+tZ+kC9PWL4WLhBSLKdEbFVih
 ph+dmHk6u2cCX/sTqg8AdTE+Zr82y9R9m1Dx/JMelU88aiMVDJu5CU2qeI/X7KYAr+TV8Zi4
 1DfVERacoGqgBKtvxJ7gGCDortokwklFNC5ypAjVCF4Pn+3Fvm
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41476507"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LhusGuN/wA9Tg9JPTTttwO4yzdLd7ohDdhBwi6H2xR0DtA2q6lspK3C7RgcAfN95f3PM35XUBaHdYb2swDfzcButSV61nJQwjNKnSSDztIWaNpGOBnMv70KQeSqyl0Af0eX4E6149+V8TDC0CZ16t/QSj4csESHaSQ820g18qnVzm08Vga0Oro7hSI3r6yQlPSLJ37ADB3c/saCTwr5WTjecA7kZVaqYB8bnXZzwagAJ1AZT4OqOEAnmFCh/egOH48hXGe5ACH3ICKTbSGtavUNjVnEnpxzjIY/FHE2XUwHJhdMRe8jFlQO5wcEgldfAI76TqJSla6Ms3Q5tN1ZB6w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QdjL53sxfL72OocLfvFBEO6t+rw9rfdKFRBd12scbro=;
 b=RzoL7xPis1aErWqhZMWfzxp0MhJGbRSVrXuX86GizC9zdFuKK5PrD4FW7oHCXQau+C6uQuOVvZH4brCz+uEb7+YKP8Pot+gOnl37hIRIja77ahoKD2fgjjZM0kD6nsTq7AespkDZxs7/b8O+fPwHhnfV3XztLiBomGtKguOsFJ3Iw6+vQDzEHqKHQVqKW1EtVGPp8mXg9QyXHoGBoJdzRu9xOgsLpXkudQQ+MwBrM1nF2hUH6BViTX3AwhV4r5kMxuOHY++sfnZ4zz3StiIDY7vS46ovsITJ4x7sfjqRd3CvgkkZWuMqklwGp76vOlFM8mz8XHDGy9pZ6ofWtlIdPQ==
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=QdjL53sxfL72OocLfvFBEO6t+rw9rfdKFRBd12scbro=;
 b=d5ZVAc8StDCLtYrb/sD8RTJpFjsT+PxBY/sqXVPPRX5ZE68VmABGglQRVQnqX4n9gW7BXO8tMDYRw0kF0YuGZpXLTcG6TLViEjy0mNyQXqD7HFNpEEP8U6fis/xsvqXFOeTuSHvtWBx/NBFZ7L13nK662I1Spt/g8ZQuzkug1BA=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Jan Beulich <jbeulich@suse.com>, Wei Liu
	<wl@xen.org>, Ian Jackson <iwj@xenproject.org>
Subject: [PATCH v2 10/21] tests/cpu-policy: add sorted MSR test
Date: Tue, 13 Apr 2021 16:01:28 +0200
Message-ID: <20210413140140.73690-11-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0114.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5d3d20d3-3ccb-41f1-7c39-08d8fe84d3f1
X-MS-TrafficTypeDiagnostic: DM5PR03MB2553:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2553617630EAD18D164BC9FE8F4F9@DM5PR03MB2553.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2276;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 48VIJXz3jh4b7mENzd/m/UVziWlbcSQy302XrYpX4/Nn51JaBAokO5ic5orHVyC/xAggYHIQJN/ufOaZJjPGe6kP/R1+vdmMtNLYwiNSmRwjR//0t0N3gVOs2asPfnazkKyNhFpsW7GhmtsR8nsHA2vcNNQ2tlMFeBgktQMyhAR04wTbbEpPp+YiSnk/DmWhLy2RLRjgU+1+A1tGqx5zAs8KtktPsMS0WOMmjmv9t5pHSGUZnYCcefj7sNnOFiL7OMWE40M0OwXqaYfqlRmMFQSQI9HUmZLGXpXg3lD6p0z8oFKhGLQzc1z8qeY0Rxl+ZQG0WWhgRWUtV1os0CaKk/YCSH+Hv1ISqrvUfs3pQ6tXrjRw4zkEeSETnzcxT4kf8RtbwyHKn3TSQwNjY4t4naPVVt6bX5M+AcA8CXJ2jOcyxK8wPXnkxs3eP9RxG5781ycloM1tzE0Fa6gfq8UKeGVJBinftOSMN3HCDXfka4IIGAJKN5rzVVTyGPOc3hKc7O3mMInGLiz0CJ2IWfSKexeEv5DVfnajMkniHIBOSe8X9WuQennAzCArsa5Ar+/w5MLBmKOrM7tQGayJSDWTFA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(396003)(346002)(39850400004)(8936002)(6496006)(186003)(38100700002)(2906002)(66476007)(86362001)(956004)(2616005)(8676002)(478600001)(66556008)(66946007)(6666004)(6486002)(16526019)(316002)(6916009)(36756003)(54906003)(1076003)(5660300002)(4326008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 5d3d20d3-3ccb-41f1-7c39-08d8fe84d3f1
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:51.9863
 (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: EmfiLvtKDedysUSzzvY4Jc2J7Ns8idIQXjQhlnoWFgXkGRrh2y1DJFMS0Qv2yCBzZ2gYqJYwgLmCYXqMvwYEfg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2553
X-OriginatorOrg: citrix.com

Further changes will rely on MSR entries being sorted, so add a test
to assert it.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - New in this version.
---
 tools/tests/cpu-policy/test-cpu-policy.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/tools/tests/cpu-policy/test-cpu-policy.c b/tools/tests/cpu-policy/test-cpu-policy.c
index 0fa209f1ea7..ed450a09970 100644
--- a/tools/tests/cpu-policy/test-cpu-policy.c
+++ b/tools/tests/cpu-policy/test-cpu-policy.c
@@ -86,6 +86,16 @@ static bool leaves_are_sorted(const xen_cpuid_leaf_t *leaves, unsigned int nr)
     return true;
 }
 
+static bool msrs_are_sorted(const xen_msr_entry_t *entries, unsigned int nr)
+{
+    for ( unsigned int i = 1; i < nr; ++i )
+        /* MSR index went backwards => not sorted. */
+        if ( entries[i - 1].idx > entries[i].idx )
+            return false;
+
+    return true;
+}
+
 static void test_cpuid_current(void)
 {
     struct cpuid_policy p;
@@ -270,6 +280,13 @@ static void test_msr_serialise_success(void)
             goto test_done;
         }
 
+        if ( !msrs_are_sorted(msrs, nr) )
+        {
+            fail("  Test %s, MSR entries not sorted\n",
+                 t->name);
+            goto test_done;
+        }
+
     test_done:
         free(msrs);
     }
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109798.209625 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJd8-0005h1-4R; Tue, 13 Apr 2021 14:03:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109798.209625; Tue, 13 Apr 2021 14: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 1lWJd8-0005gt-1A; Tue, 13 Apr 2021 14:03:02 +0000
Received: by outflank-mailman (input) for mailman id 109798;
 Tue, 13 Apr 2021 14:03:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJd7-0005gB-BP
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:01 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d74273ce-9fab-49c4-b216-cdc065d6f58d;
 Tue, 13 Apr 2021 14:03: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: d74273ce-9fab-49c4-b216-cdc065d6f58d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322580;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=JackXKtu3s4tq3Ai8UONDkNKZ36QopXBh8RsfgQrQMM=;
  b=bvkEMSWIpf+eqAWHvyk7yRy+AfkHksIf8ycrfqGLYoMSg71QlOjvgycx
   MRgq1hluWdnUly+Pj17QowuwiEqdy99x/UU8dgTauO3Xt1vrYR/B16I12
   qAmO+oGIZ5YjtVcesd7DU+rH+cijJK8PjMupxi/kpJedZXoLn0sHJxDMe
   o=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: LD/cCgzU20nEzbpxCDgNVbICS5WNqeiSyyqTo6PDtO4Z9Bwbk9Z3s5R1EU0QsipCkVHlLndAv1
 5XbpOlpILuTnalg0XQ7a+cgvjX0+OvjQ2YA2E0WdrojmwBMzby3vmHSAE9JG8LQSIvT/jBUdp7
 lxhhDl6DmoIPkEhrb/brB/3bsvlOPCz3zH1pyoPVHx58AZyFm/HkU21yre+2ouxEdpewNlJnCC
 Mh9M+7lcodjEk8p9sZgJ1odEwSEtNCbQqOfpjr9OtD/rnqb/5o0iGbC6U48X6ucK78O8Ax0A59
 +8M=
X-SBRS: 5.2
X-MesageID: 42956030
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:T0IZcKhMHAzHEeHXjV0CZE9l83BQX19w3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+YsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmuZ
 tIW5NVTOf9BV0St6vHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WZEIyywe3cGIDVuL5w/CZ
 aa+457vDKmY3sadYCWAXMCUujFqbTw5e7bSDQBAAMq7xTLsCOw5NfBYmWl9zo9cxcK+7ct9m
 DZjxf0j5/Mj9iXwgLRvlWjiah+t8DmzrJ4da6xo+gTbg7hkwO5ILlmMofyxwwdhMGKxBIUnM
 LXoxEmVv4Dm0/5Wm2uuxPi103B/V8Vmgbf4GSVi3fivsD1LQhSY6Eq5fM7A2nkwnEts91m3K
 VA03jxjessMTr6kDng/N+Nbhl2lyOP0AsfuNQOhH9SW5Z2Us43kaUj+ipuYfI9NRO/woUmHO
 5yNdrb9fZbfHiLBkqpwFVH8ZiCWG8+EQyBRVVHksuJ0yJOlHQ89EcAwtcD901wuK4Vet1h3a
 DpI65onLZBQos/ar98Pv4IRY+SBnbWSRzBHWqOKT3cZe46EkOIj6SyzKQ+5emsdpBN5oA1go
 79XFRRsnN3U17yCOWVtac7sizlcSGYZ3DA28te7592tvnXX7zwKxCOT1gojo+Jv+gfOMvGQP
 y+UagmQsPLHC/LI8Jkzgf+U55dJT01S8sOoOs2XFqIv4blMYvvmuvHcOvCBbbkHDo+M1mPQE
 crbXzWHoFt/0qrUnj3jFz6QHX2YHHy+pp2Dez78oEouc0wH7wJljJQpUWy58mNJzEHmLcxZl
 FCLLTulb7+gWG3+G3P/lh4IxY1NDcQ3JzQF1dx4SMaOUL9drgO//+Ff3pJ4XeBLhhjC+TbDR
 BYvFYy3a6sNZSfyWQDBrucQyynpkpWgEjPY4YXm6WF68ugUIg/FIwaVKt4EhiOMQd0lwZsoG
 JqcxQFWUfbKzPrhcye/d8pLdCaU+M5rBagIMZSp36an16bv9sTSnwSWCPrbdSamj80Rz1fhk
 R49ogWhLboo0fpFUIPxMADdHFcYmWeB7xLSCCIfp9dlLzQdAZsdmuSnjCBhxYvem3lylUKig
 XaXF6pUMCOJmAYlmFT067s/l8xTGmbck5qQl1RsIF2Fw39yz1O+N7OQpD2/3qaa1MEzO1YDS
 rMZiEKJBhyg/qt0gSOpTqEHXI655knM+DHFo4/e7XL1n7FEvzPqYg2W9tvuLp1PtHnteEGFd
 +FcwiONTXiFqcH3ReWqntNAlgDlFAU1dfTnDvr42iz0CRhXb78IFF6S6oaJN/ZxW7+XPqM2I
 h4i9VwnebYCBSEVve2jYXsKxhEIVfvhETzaccCg5Vdp7gzu7t+BIOza0qB6Fh3mDEFaP7pn0
 YfSplh6L/POoVTb9UfEhgpi2YBpZCqFg8XqQT4De81QEE1g1LaN92P5aDUqbBHODz3mCLAfX
 2W8yhQ5J7+LlO+/I9fL6I7OmJNbkcgrFxk4eOZboXVYT/aPd1rzR6fMnWndqVaR7XAMbIMrg
 xi69XNu+OMbSL31ETxujR8S5g+vlqPcIeXAAiWH/RP/MH/EVOQgrGy6Mr2tQzJc1KAGg0lrL
 wAU1cRYMRFgiQji4Ny8hHacN2JnmsV131E4T9mkVbx3JOB+2mzJzAeDTHk
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="42956030"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ndQWx12gb9xkL2GKqeL3NpeARs48k7hLbpNcwk5sEAnOrAH/6CNEiqgHWJ2JKBwrocnNULp4An71EFLVvdDE2xFfUejnZfjfT5qFbZXySOZ3ib+nWehsDf8dVnE4Dk8oHoBKF8gel+IyXcdhfus9rvpnV9Q41JySXvKU9+BJ4B+Ij8lch92rcsmRwaQVaklCLdiKUfV0GJzE2q7Thx8fT+ZvZhNYGKwPEv7TTAMBLoPuhyRpFWAo1D+M4q8MZGDPb0kh2c5CR4ThcDRdWYjrnKGMzZgrSvckBc6398bwhsnh17RffNCRo5host+px5DDiiwVpPQVehTi8vYiq409NQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hKIl+cZikbO/4WJIAGz+bxYAoaTNWAIK2jf+mYY0UCM=;
 b=OWJQpY6jCTciNieYCrLfl7LWvYD+ngeTTrArie6Jhj1UY5e9i0pskFgwDE4ZFJ9UCdvXYTzTYNWPBexneu78R6WGo6jUqktex5TZnRrSEwcSEluwMNqJuzDU6cNv79zu63IJW6eM56NpXJDZaVJKSm64WdUkn5peZNwYn91fHpYgc2LuQPOz/BBcn43rxYUBVYo6Sm/qkijnXsYVV6bCiGnjASC2XCTIPlrov2RGsdH1vGVetxGBRN8tXkCx6AZVK/ko+sko6eoJRmkWulnFVQuidhCKcSB3r9z0NnYhr8/BfXJ9xn7+IbWtdAz56whI/hxZ+b7bMNe2d3vOLFogvA==
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=hKIl+cZikbO/4WJIAGz+bxYAoaTNWAIK2jf+mYY0UCM=;
 b=iJfSfWWvXa8cTWHaS2XtydeYO1kTKtb5TZZNJPvMtZYU76hxq+38pBa3YBcJ5F5oa7+Ez8IkspvJA1b+vSGa7vCqQEWqEpgeQ+rDRAt4pELOYqjjrrs7YL33jzBpv5OJrg4YtRDfqcnwE3iQ5fMAnokF5jNjaVwwIq5CLEMGbcc=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 11/21] libs/guest: allow fetching a specific MSR entry from a cpu policy
Date: Tue, 13 Apr 2021 16:01:29 +0200
Message-ID: <20210413140140.73690-12-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0097.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::13) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 11df82a2-ed1d-4bc8-161a-08d8fe84d707
X-MS-TrafficTypeDiagnostic: DS7PR03MB5542:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB554256B3A5233FD9DE801E7D8F4F9@DS7PR03MB5542.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: QfpM/52ErScc9XWldGLD/ep+j1i1s8B6dJCe6IWKUmFBuMBT9OC15imF/TTXe8rQGOXNtfyRdJGzIK8atK4MKateV5BieaSsODa2T/0nqXQklFDwFW6cslTGsJArA7lYvj0v9jDrbiJ7hFa4aE5yGKAGRHxcLcVfKxiBjmOXXp2S8xS3SggbGgHi7KnUdtrOrBgvt/JZavkuDhm725VuAxubvpogyGK57WvuRooBDj6lPmOS4OzJ3mOyifDsUavzqhHkggE9A8HlgSpz2bAIqLZJZf6K61SiPEBj87WJXXri3IijLEs82Nve33+gBiqXtp92PE7mt7DSMOKzUocEcoqzGCH1i8QK4sJnE9mfAe/3bZ4cdbk63KC8TOwyN1jEnekD9vGLiQKrubXRyOl47ydpZrsWnipVIs+VHiXIlgqyvUBy6fBe9D1HFAp7gsBEoVzh5/TwzHn1DU8nCJ9yzgwEXxbhoUBkez5B6fLNxFvwLZiSxcQvL7q2iJDyU1EzwaDxKsnvK2DRr7sdC4dC9KJr0S9E4p9iiA1ckz0X2I3j5U/A4RqperxUVp3FSShv6Nl7XlAV5h3wBPNuYVPF/w==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(366004)(39850400004)(346002)(376002)(2906002)(6916009)(6486002)(36756003)(66946007)(54906003)(1076003)(6666004)(5660300002)(66476007)(316002)(66556008)(8936002)(478600001)(186003)(2616005)(16526019)(86362001)(6496006)(26005)(38100700002)(8676002)(956004)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?40r+TJXI9ScOmF6d/PXWr+Tu6pHgBYG/tgNUNkY?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 11df82a2-ed1d-4bc8-161a-08d8fe84d707
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:02:57.1685
 (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: GikvOeyyGXHpjAnq1J/cbYN1eHXKBeFMbZBMxwCnnXEdfQhc1+eEH8y89ekphtv8v5SQ0OG968DIbSG+OnluxA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5542
X-OriginatorOrg: citrix.com

Introduce an interface that returns a specific MSR entry from a cpu
policy in xen_msr_entry_t format. Provide a helper to perform a binary
search against an array of MSR entries.

This is useful to callers can peek data from the opaque
xc_cpu_policy_t type.

No caller of the interface introduced on this patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Introduce a helper to perform a binary search of the MSR entries
   array.
---
 tools/include/xenctrl.h         |  2 ++
 tools/libs/guest/xg_cpuid_x86.c | 42 +++++++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index cbca7209e34..605c632cf30 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2611,6 +2611,8 @@ int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t policy,
 int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
                             uint32_t leaf, uint32_t subleaf,
                             xen_cpuid_leaf_t *out);
+int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
+                          uint32_t msr, xen_msr_entry_t *out);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index d146c5bbc99..a4307d50ddb 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -845,3 +845,45 @@ int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
     *out = *tmp;
     return 0;
 }
+
+static int compare_entries(const void *l, const void *r)
+{
+    const xen_msr_entry_t *lhs = l;
+    const xen_msr_entry_t *rhs = r;
+
+    if ( lhs->idx == rhs->idx )
+        return 0;
+    return lhs->idx < rhs->idx ? -1 : 1;
+}
+
+static xen_msr_entry_t *find_entry(xen_msr_entry_t *entries,
+                                   unsigned int nr_entries, unsigned int index)
+{
+    const xen_msr_entry_t key = { index };
+
+    return bsearch(&key, entries, nr_entries, sizeof(*entries), compare_entries);
+}
+
+int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
+                          uint32_t msr, xen_msr_entry_t *out)
+{
+    unsigned int nr_entries = ARRAY_SIZE(policy->entries);
+    xen_msr_entry_t *tmp;
+    int rc;
+
+    rc = xc_cpu_policy_serialise(xch, policy, NULL, 0,
+                                 policy->entries, &nr_entries);
+    if ( rc )
+        return rc;
+
+    tmp = find_entry(policy->entries, nr_entries, msr);
+    if ( !tmp )
+    {
+        /* Unable to find a matching MSR. */
+        errno = ENOENT;
+        return -1;
+    }
+
+    *out = *tmp;
+    return 0;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109805.209637 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJdF-0005oO-H8; Tue, 13 Apr 2021 14:03:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109805.209637; Tue, 13 Apr 2021 14: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 1lWJdF-0005oB-Bk; Tue, 13 Apr 2021 14:03:09 +0000
Received: by outflank-mailman (input) for mailman id 109805;
 Tue, 13 Apr 2021 14:03:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJdD-0005mn-J4
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:07 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f7f60cad-cb01-4026-bd7d-e567c16b40d3;
 Tue, 13 Apr 2021 14:03: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: f7f60cad-cb01-4026-bd7d-e567c16b40d3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322586;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=v1Ot1zwenjTIlLCkVwXbZOBCpx4o6Tu0RqBs8/jb2LM=;
  b=A2AJXdgsVdUB4SMGrBjvDYrKN3V0PC4OGZxOAHLsl0ml6v45jxIizgO1
   ck1FCJg2s/fnGPnpvq+JrYuRTJmxVHxabP5loVuBsOa9fe6KCWwOwKu6q
   VM8c+Kozdh8HorjeOhkPXRA37544gtaELZ0yG8yyC/C53UZlEJXTpfGdd
   U=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: pads+fZocMdfPralEkVdCc7+eesbHaD5+4FC2xyB8mMd1S6CbO6VG6cN1myxqGjknYh9iMTHl8
 Gwuw8Nzte7JcZezhsJwQ7iYj56iwLMJeF68nTXwooOJjZROUJbq4ORbUbb2W/BXLM7SUFhwv3W
 D8v/KZh8t14m6aCj6H55sbf9iIsMSDBqKO6rc4v1x8RezKC1QHuvap8jJqgcN2MDiM/aLKlMRi
 VkdWq7ECKJzzAm9wQz+uqWtdP8AjM1M8Ws4N/J867cl3IVpC80+qNh5Ceo+TUA2F9m+p5jrASd
 pDE=
X-SBRS: 5.2
X-MesageID: 41476537
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HGH8daGPqsBE/THqpLqFbZTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76
 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYcNi+wFEpqSA5aQacjHJ
 2H6cZd4xamc3IbbsO0b0N1I9TrjdvNiZ7gfFo6FwcqgTP+8A+AxZzbN1yj3hkYWy5S2rtKyw
 b4uiHw+6nLiYDc9jbyzGnWhq4m+ufJ6twGP8CUj9hQFzOEsHfSWK1Ee5mv+A84u/uu7lFCqq
 i9nz4FM95o433cOkGZyCGdojXI6zol53/8xVLwuxKKyqaYNVFKefZpvo5XfgDU7EAtprhHod
 h29lmUqoZNClf4lDn9juK4Ji1CrFa+onYpjIco/htieLYZAYUhyLA3zQd+FZcNGz/C84Y3EO
 ViJ9G03ocpTXqqK1/epWVh29qqQzAaGQqHWFELvoiv3yFRh20R9TpV+OUv2lM7sL4tQZhN4O
 rJdoxuibF1V8cTKYZwHv0IT8ebAnHEKCi8f166EBDCLuUqKnjNo5n47PEe/+exYqEFy5M0hd
 DoTE5YnXRaQTOvNeS+mLlwtjzdSmS0WjrgjutE4YJih7H6TL33dQWeVVEVlde6qfl3OLybZ9
 +DfLZtR9PzJ2rnHohEmyfkXYNJFHUYWMoJ/vkhXVajpd/KN53KuuTXfO27HsuuLR8UHkfERl
 cTVjn6I8tNqmqxXGXjvRTXU3TxPmzzlKgAVZTyzqw28swgJ4dMug8ahRCS/ceQMwBPtaQwYQ
 9bKLPjmaWrmHmu8Q/zniFUEysYKnwQzKTrUntMqwNPGVjza6w/t9KWfn0X+3ebOBllTYfzHB
 REr1p6vYK7RqbgixwKOpaCCCa3nnETrHWFQ9M3gauY//rofZs+E9IBQ6x+FQLCEjRvggZ0oG
 J/aAsJL3WvVQ/GuOGAttg5Fevff95zjEOAOshPs0/Ssk2auIUSXHcBZiWvVsSWmA4qYDJRij
 RKgugiqYvFvQzqBXo0gew+PlEJTGiMGrpJAD6IY5hulqnxdBt9SnqLgjKmmwg+E1CahHk6ty
 jEF2m5aPvLCl1StjRj3qHm/EhdW0+dc0hzA0oK+rFVJCDjgDJewOWLbq283y+tcVME2PgaKy
 yASyAVOBlSy9e+0wO1lD6OGW49/IgnOvXQAd0YAvfu80LoDLfNubANHvdS8pogCcvntfUTV/
 mDPyCSNzH1BooSqnqoj0dgHBMxjnYqkfnlgkK4qEe52WMyGvrULhBNQaoBL9SV8mjjQLKp3f
 xC/KYIlNr1Fl+0TNiMjZzzRXpkDDj4pGatVeEmqZxOp8sJxfNONqiedQGN7W1N2RU1Edz9m0
 wfSplq+bypAP4bQ+UiPwZiumcznNuBLEEXohX7L+83c1YqlWLaNbqyks31gItqJkWAoQfqUG
 PvixF1zrPgXyGZ06QdBL91CWNKaFIk4HAKxpLJS6TgTCGrffpE5ly0LzuUd6JcUrGMHfE1og
 xh69+F28+ReCyQ4nGcgRJLZoZP+X2gW8W8HUalHvNJ6cWzPRC0uZSRifTDxQvfeH+ccEQXhY
 pMaEwWYIBis1AZ/fIK+xn3bLf2rEIjm0ZZ+hd9mDfWq9Gb3Fs=
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41476537"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D4E/0ncLbEbIkLHSD2QqM3yIsfsOLhM2+qSp4qUzcDBcRSaBBN+39IkVqlCDJlHtPmReY0NKy3oJ9YK7QijKfbwp7PeilRzPoDeolol/pMS30g5SRqfNan86l1MCkSamCCFwa6dVjQf7B7lh7NDAnaA6q4/8/a+AjoayjwFgZacF68G2iwBRgbO9yJFgBGaQQf31j5H6QfcgWZwridCa8FvMFu+URaRks6S26Nocaag3MRx45Nd2uECC3qYa8UmDpCucMr3PiSXkEe6Z0GjgWKcO5X3V6DUPD3Bbs2uVP62vdm5OrXpf9l2HgaxHWY+zUL1jS6bsZqruoEA93SbdJA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=V/ovcTNSHVs4ALtpeQdtZQbZnv807eSa9HwEL/5Y5Kk=;
 b=OIk8/JXv6dyo6+B4mwtv7mTTqqw/42zqXsvv6d1gJcF2QEnddLBbJLSgAxQDfzgo99Q7r9FjRo7y+5NQOTrJBBGjx3d6+/nB5S1gf1DwW1c8EYziis9owBVzhJXZB0yumXUvEbikYbUROu+qxfPyPJusMv4pMA+y+SQQLZXH/9bSm3OMLJtIANbH/tNzx74wVKZw/b0kBfI5KWZgjG+e+mut/9Qq6kE92GeF/XgGj5eNMIBn0ZVPamgZuDqAH9j9B8pZoP2HiedjIf6JccYZpBEikWFTMlNtuHunOIJmNLcU4HtNOf+9UDgOi9jyv9sTiT+uqC5Q4teJi3ayi2BhXw==
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/ovcTNSHVs4ALtpeQdtZQbZnv807eSa9HwEL/5Y5Kk=;
 b=HVDA1IQxW6jHGPa//4AWPRGfXRH4r5Q+Z0itqPBux3aiGYGsu2+dFmf6SFP3cX+yyZkbdGC0FYqAPPlf0yMGzL8+iS1PA9VM7FAzSzHjHqYIFyGJUutIQQWv2o5lKstyK/pyTOXg9nqBOy0xQmw4j3rQHOsK0gmVoU4CnUOl+kY=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 12/21] libs/guest: allow updating a cpu policy CPUID data
Date: Tue, 13 Apr 2021 16:01:30 +0200
Message-ID: <20210413140140.73690-13-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR1P264CA0027.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 56670b14-1ee3-446d-7d76-08d8fe84da9f
X-MS-TrafficTypeDiagnostic: DS7PR03MB5542:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB554238E9A1602DBCC58B98138F4F9@DS7PR03MB5542.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /A+yBMfMTlSkgIzffQiwtQ+cno9/ymEUVjzpGxbYCpXtNmZTOhSxrtWpNh2FR5rFidfeQ17WcnFvxbZth4JgRh6dEkz3XecfuJcel41s3qBmjPxy+SvXqsJx5mCvNaoUvgfhauvJ7fBxdJVWV+jfPOSYjvnKjR0j0VdIb5nj40gDE9NbS0xzxdK6yr7TFf9IooSKtZvUgb6sYgHYth6ktPVZLsXGRY5cBBjV0FFo2KIUmNPk2uCclJ2vNqu2Rk5aLpBvbh0zyDLTVjmTgmUH7GBfkA1bS6miEjDy6qiT1YbBSpWXAjLNuuK1Fru9L1BkRs4uzlON5CjMqwMWy8qdOwIA2x9zMhYQFcd+L0AiZ4VnG3r7dJa7gCRyEOpInDKWrnPj/8eVXUh+JD10eXHmecqsPo9xaoxPB+bL5H6pXEBbmUFS0xXH5MB0LMOsbysobnAWtSrUM+LIu1uqnPHeZEmbIgQnUqYXQ+X6qTR0ml8VGuPTh/w+F0vAWAMAyampHqihb5576dDOi6zy+Aeyt12aGVlRWC0YG2XLSkfkAS512hS3S66xxk2BQkEft3KUFVuLCk+8tKGhUSyjlF9fnQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(366004)(39850400004)(346002)(376002)(2906002)(6916009)(6486002)(36756003)(66946007)(54906003)(83380400001)(1076003)(6666004)(5660300002)(66476007)(316002)(66556008)(8936002)(478600001)(186003)(2616005)(16526019)(86362001)(6496006)(26005)(38100700002)(8676002)(956004)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 56670b14-1ee3-446d-7d76-08d8fe84da9f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:03.1964
 (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: 1jCtZfcposT+YiT2kwGKWYqN47kFkSdwv5TqDKGHQOsL0OJsZe52Zqi+PXu3HCL4fSL0gswaG/S/fIZDW6FdYA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5542
X-OriginatorOrg: citrix.com

Introduce a helper to update the CPUID policy using an array of
xen_cpuid_leaf_t entries. Note the leaves present in the input
xen_cpuid_leaf_t array will replace any existing leaves on the policy.

No user of the interface introduced on this patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Don't use memcpy.
 - Drop logic to update the leaf manually - x86_cpuid_copy_from_buffer
   already does it.
 - Only print a failure message if err_leaf != -1.
---
 tools/include/xenctrl.h         |  3 +++
 tools/libs/guest/xg_cpuid_x86.c | 20 ++++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 605c632cf30..49f919f16a7 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2613,6 +2613,9 @@ int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
                             xen_cpuid_leaf_t *out);
 int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
                           uint32_t msr, xen_msr_entry_t *out);
+int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
+                               const xen_cpuid_leaf_t *leaves,
+                               uint32_t nr);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index a4307d50ddb..00595e14cc3 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -887,3 +887,23 @@ int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
     *out = *tmp;
     return 0;
 }
+
+int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
+                               const xen_cpuid_leaf_t *leaves,
+                               uint32_t nr)
+{
+    unsigned int err_leaf = -1, err_subleaf = -1;
+    int rc = x86_cpuid_copy_from_buffer(&policy->cpuid, leaves, nr,
+                                        &err_leaf, &err_subleaf);
+
+    if ( rc )
+    {
+        if ( err_leaf != -1 )
+            ERROR("Failed to update CPUID (err leaf %#x, subleaf %#x) (%d = %s)",
+                  err_leaf, err_subleaf, -rc, strerror(-rc));
+        errno = -rc;
+        rc = -1;
+    }
+
+    return rc;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109807.209648 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJdK-0005uF-RA; Tue, 13 Apr 2021 14:03:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109807.209648; Tue, 13 Apr 2021 14: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 1lWJdK-0005u2-Ma; Tue, 13 Apr 2021 14:03:14 +0000
Received: by outflank-mailman (input) for mailman id 109807;
 Tue, 13 Apr 2021 14:03:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJdJ-0005sc-3M
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:13 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1fb40aef-70d4-467a-8144-dd57e73ae0be;
 Tue, 13 Apr 2021 14:03: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: 1fb40aef-70d4-467a-8144-dd57e73ae0be
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322592;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=uEN8vdruq4R26ejVTvoHnlj4zKLnkKaq8by+dBWlaWM=;
  b=X6QvBQVW6wgWmjPObBJpU3D3kSFDPDzGW8iarWPjLcJbbcM9c9Cvr1ZW
   p+Uvlr6/OobVTJLlj/oiu0X7OwDrvYmRXgNRIvBCG+F+qUCAiZXUW2FCE
   v+stWOC2GjGE/lGVd+Nt4SsSUsQfcsES4L59OTn+/1ZbEvyetkASSOBcI
   M=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: UvUOwl0n7404jnOeNInaf0XiQm+TDLJgyj1L8gyDMXm7gqmpkGJXB1DFE8eEr/Ow33Vzk131SN
 UEuZMtb8lMHd+2Hhy1Mhy4Q6F2ChXyZsHTq6Zy2chFtMWAWrpr5PS9IoiV+1udualNRPrfHjH4
 6Z1t6052sy0bl3lRJQUoRlylWW/vQYcw33FRaiafF5x2xko1PsHBJDD30ySSVHtm/KNYNRTC9/
 gUfsloqv/NLx0z0qJm1iXaAgNkuYzjg6szm2WAqwe+GZLkbm7N0iE4H8ieCJL7XvDyF6vcZAcv
 kqE=
X-SBRS: 5.2
X-MesageID: 41613953
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:muOtX6sSYC+vRwxdcLCfb3YS7skCrIMji2hD6mlwRA09T+Wxi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybde544NMbC+GDT3oWfAFvAG0aLO4R3FXxf/+OlUyL
 t6f8FFYuHYIFBmga/BjzWQPM0nxLC8npyAocf74zNTQRpxa6dmhj0JaDqzNkFtXgFJCd4YOf
 OnhvZvnDardXQJYsnTPBBsM9TrnNHXiIngJScPGh9P0mKzpAm14733GQXw5GZ8bxpzx94ZkF
 TtokjCyYiI99q6zRLd0GG71eUtpPLRjuFtKebJpswcKjDHghulaoJ7S9S5zU0IidDq0nkGup
 3hpAohItRS5hrqDx2IiCqo4SbM+nIP7GLv0lCRi3eLm72HeBsKT/BvqKgcVzmx0TtFgPhMlJ
 hl8kjcir9sSTTHpyj578igbWATqmOE5UAMvMRWs2ZSSuIlGdhshL1axmx5OrEaEhn37Yg2ed
 Med/301bJtfVSWY2uxhBgI/PWcGnA6HhKxSkMfoMCi0z9PgHBjz0cDrfZv50s9yA==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41613953"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZwVANm0qhv5f/T6gaMK7OXEZyxJVMIQrbyFB3AFurCCogxs0xoGNxk65NVG5I2jDuKckeGKJYwl9rwTAN4xT0xjSrswH6ncNjWYGJ6e4bgL/0K92oNlTvxOoxWiZQCQh1+MZQ5uwhpc5gTVDzOzoDMBmp2Q9K+XjwVj8hqRAqJ+B8UkWbTm0zIQVg0kSm3WN83w63Lvqozpn8WEraruWwzJl5AYHi83wdbKE+dhdAsTlH5BHiYyAcjGBU4OYhGltaGNSed9DOIJXF95o39dQ2wLFMaDccFwOUSf6qP0RXKgEPu/K+fZPWMhxIjv1XpFE8gqLkgMKbwJyLmxV9WKOkQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4zjRbsyq+DaWv6wnjrp/39MtyMLtRSSqzlhDBppNwHA=;
 b=dVwroCq1zzWGRtUBiZ+QSTsOACxThy4KsBpY5gobjrF5kOuf+n2c0JerA0+HwBQibTF0c3BifHaZUM2pdv8qdjIRrOVRwrVjRgvVwk0I4Ie1LGyckuE/8Dx3eMLWVG4q2QeESg/PZYHMR89hF5KUqznM8UIBRPgUJJsxbck2Y3ckjkvy2cU4NPaszXMqMqCC6k5cT0rxI1D1/rpXGs4k8nwzFt98VgYAOL6+RZE7qvhTBt/MRtN+sRRAbIxKMlVFsekx7bpY4hDHDE4ZyNEIGlH1dzTP4vP6+x8zRAkyS0EXXNu1oNRmBTs6HOUoa+5/goyvytiDWEoobMBxALWjnQ==
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=4zjRbsyq+DaWv6wnjrp/39MtyMLtRSSqzlhDBppNwHA=;
 b=ay8pvTHaaoefeJzIGKHYTPuWm1BkIiEYI+AqI9O6zbWlhSLBwgFqwFtX6HxnSOHX/Lfh4HmAUhGxzRi9DFjb9vuhM6qiKk1H+OauL/BDmW+ehZuk8PpAi6plAH7ZOXA+cI+SqyTFvmCmSF3qZg6arQPa45X7cD6Gh6RnlWH4nuw=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 13/21] libs/guest: allow updating a cpu policy MSR data
Date: Tue, 13 Apr 2021 16:01:31 +0200
Message-ID: <20210413140140.73690-14-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0157.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::20) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7c5831c7-9221-454a-6ee7-08d8fe84de13
X-MS-TrafficTypeDiagnostic: DM5PR03MB2553:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2553FBF104CC45392D5B91108F4F9@DM5PR03MB2553.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: iP48MwPvjkxfeHds+UhOHvvY78axBKbnoz9h6a9+hPhXTvp+Q1JtDhCFSEbbWOwlakS6tSOTVrVxSPc07piAhAcwZobLde6d74fDc5wtrWJc8fKU3dzfFiBoAIIZe97pbDFLT9k7XcFAXGPr0PUUWBXqsCGgxkRqk2sV5uhebrYYB2C/oOPoanD2ygl8gQL+VQygC+WSOs7S27oPoN5UvJI2DtqUT9uofrTlD1lhG5EGFuffRAUpkJyKjqAEF8BYvHNWSfSwQAh2X1QPDmcgpWsuj0u0IxqawOT95tzJR28zgtzOlVsSnfhB71e5T382eRLFxUKHaq1Q9ruMPvE2ntiT8DzttY44HBYCVvTQRHdseOJEM5TGUAU+N8R1NyrzHhNj5yPABDEIBdXocjWNNQttUvZAp5BY9bPTN629mLRyrN9JB83/eA+25t2j13YRls3IcR8FzE8p+A+V/XlAmES6EN+v8mLJhQ4nCUwJQzWad0FXR8+CZZda/1sxJ7eDMFQ7XUPIsJG1X1t9yB/wcgSfKE71j6HdC10CgSeR/Ifn36SaoSThXz5o8Hx7aH+5VLUwWiJL2BnVfifw/PzEGA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(396003)(346002)(39850400004)(8936002)(6496006)(186003)(83380400001)(38100700002)(2906002)(66476007)(86362001)(956004)(2616005)(8676002)(478600001)(66556008)(66946007)(6666004)(6486002)(16526019)(316002)(6916009)(36756003)(54906003)(1076003)(5660300002)(4326008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 7c5831c7-9221-454a-6ee7-08d8fe84de13
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:09.1632
 (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: pcWNFVqJ3mA7hl6vYTgE/RKSAyjN7eXZUXHdVq/x2mkJxmbhNov/vu/6x29R2IEGf2GCP7lcZgd5c/gtBY0QLw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2553
X-OriginatorOrg: citrix.com

Introduce a helper to update the MSR policy using an array of
xen_msr_entry_t entries. Note the MSRs present in the input
xen_msr_entry_t array will replace any existing entries on the
policy.

No user of the interface introduced on this patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Drop logic to update entries manually.
 - Only print failure message if err_msr != -1.
---
 tools/include/xenctrl.h         |  2 ++
 tools/libs/guest/xg_cpuid_x86.c | 18 ++++++++++++++++++
 2 files changed, 20 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 49f919f16a7..9a6d1b126d8 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2616,6 +2616,8 @@ int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
 int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
                                const xen_cpuid_leaf_t *leaves,
                                uint32_t nr);
+int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
+                              const xen_msr_entry_t *msrs, uint32_t nr);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 00595e14cc3..26b09322dfa 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -907,3 +907,21 @@ int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
 
     return rc;
 }
+
+int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
+                              const xen_msr_entry_t *msrs, uint32_t nr)
+{
+    unsigned int err_msr = -1;
+    int rc = x86_msr_copy_from_buffer(&policy->msr, msrs, nr, &err_msr);
+
+    if ( rc )
+    {
+        if ( err_msr != -1 )
+            ERROR("Failed to deserialise MSRS (err index %#x) (%d = %s)",
+                  err_msr, -rc, strerror(-rc));
+        errno = -rc;
+        rc = -1;
+    }
+
+    return rc;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109813.209661 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJdT-00063X-DX; Tue, 13 Apr 2021 14:03:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109813.209661; Tue, 13 Apr 2021 14:03: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 1lWJdT-00063O-91; Tue, 13 Apr 2021 14:03:23 +0000
Received: by outflank-mailman (input) for mailman id 109813;
 Tue, 13 Apr 2021 14:03:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJdS-0005sc-8T
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:22 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 51725715-d4ea-43f4-8528-1a696ba6d6ea;
 Tue, 13 Apr 2021 14:03: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: 51725715-d4ea-43f4-8528-1a696ba6d6ea
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322597;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=XX1SugVBrNifC3XmPT1UGL6ovBU2ay/gnB824DeP1Ik=;
  b=Cc39JWoKjqLiS8RspJv8a4hSpqHiTdGaoxgC9B3Do/IKBfPwydKX8hj3
   QmRZcxy31VqLsv1tNL77eiF2t12i/DavLPIkq8W8d9sU6zLqo+yc1542w
   Z7W5AxKSNBMFGx2tPeYqP8B6ieYi7YI2Q+2dgTo5K5VWmq85X8n+eLWYi
   w=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 3nWJMVmsW6HjXl3TYRVxnjG9n3P6b5QN3X9n711F0k7EzNNIPs08FxI4yGd+Vq4ZEdd9tEYyS9
 tx7/zvVk8ozmKcYOx1Bo2K4mTquEYaIhq/lKcH1rqdDuRZzzr5FlVozYvOT95t8tFyQ9R05hwM
 SdD0Tu5oRSMePyhFjsUAnR4QX9mSQIdXwzl0Wveo8nc8RyrY5cStaEFioHL54nd4BE4DhduNnD
 gsdY420euYuCh8652VYSRShBm6eBkURjJScd/RfYAXUZLmGEiTEUOFgNnjI3gDgSauuMF/AS1R
 r8U=
X-SBRS: 5.2
X-MesageID: 41476562
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:3XEvuqnR0tnhCZODHbm0AmYu1cbpDfOpj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN/AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 tdWoBEIpnLAVB+5PyW3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0ZNi+wOCRNNW17LLA+E4
 eR4dcCmiGpfm4ZYt/+Kn4OWeXCoNOjruObXTctARk75A6SyQ658bKSKWnk4j4ycRNqhY0j/2
 /MjhDj6syY3c2T5xfA2wbonvJrsfT7zN8rPr3vtuE0LXHWhh+sdMBdXdS5zUsIicWOzHpvr9
 XWuRcnOK1ImgPsV0W4uwHk1QWl8BtG0Q6a9XaijXHuodP0SVsBYqIr7+IpEWqq12MasN5xy6
 5N1W6C3qAndy/opyjh+8POEyhji0vcmwtSrccok3ddXYECAYUhyrA3wUU9KuZkIAvKrKojEO
 VoEfjG4udXfV6wfxnizxdS6e3pcXIpEhicRE8e/uSTzjhNhXh8i3AV3coFgx47hd4AYqgBw9
 6BHrVjlblIQMNTRaVhBN0ZSc/yLmDWWxrDPE+bPFyPLtBJB1v977rMpJkl7uCjf5IFiLEono
 7abV9evWkuP2rzFMynxvRwg1DwaVT4eQ6o5tBV5pB/tLG5bqHsKze/RFcnlNbli+kDA/fcR+
 24NPttcr7eBFqrPbwM8xz1WpFUJ3VbetYSoMwHV1WHpd+OBZbtssDdbfbPNJvgGTspQQrEcz
 k+dQm2AP8FwlGgW3f+jhSUcWjqYFbD8ZV5F7Wf3+V78vlJCqR89iwuzXip7MCCLjNP9oYsel
 FlHb/hmqSn4U2//WPC6XRVKgNQZ3wlpInIYjdvn0snIkn0ebEMt5G0YmZJxkaKIRd5UofwHB
 NAoU90vYa6NYaZyyxnK9/PCBPVs1Ij4FaxC7sMkKyK4snoPrkiCIw9ZaB3HQLXUzpvmQhrr2
 9HQBQeRlDWEw7vjanNtu1WOMjvM/1HxCu7K89drnzS8W+Go9s0e3cdVzmyFfKMjR0WXDpSjF
 1p+6o5iL6N8AzfblcXsaAdChlheW6XCLVJAECgaJ9Pkr7mQg12UFyHnCeXkR01Z2rs+XgDn2
 CJF1zmRdj7Rn5m/lxI2Kfj9115Ml+QeE99cVhWm4xwH2augAc57ca7Io6Il0eBYFoLxe8QdA
 zfaTwJOwV02pSczxiOgguPEn0g27QjNuHQF64YbrnWw3+hQbf4050uLrtxxtJIJdruuugEXa
 ajYAeTNir/EP5s9AqPpHopURME3kUMoLfN4lnC42e51nJkXqaXD1RiWr0BI9aTq0LjXO2F1Z
 1ljdQz+cu8W1+BHuKu+OXyVXpkLBiWnEudC8cPgrpQtbgptLRyE4LAOAG4nE1v7VEbFoPMiE
 gaQK5H+7jPNY9kQtwKd0tijy8UveXKCHFujxf/DeA/d2w8lnP3P9uG5LzTtLoka3fx0zfYCB
 26+y1Z8+ytZVr66ZcqT4YxK39Rck4y9TBL+/6DbZTZDGyRBqt+1Wv/Fn+2a7lGTqeZXZ0Wsx
 Zh+tmN28uabTDx1gyVnTx1JMt1giuaaPL3JAKHAuhT9dOmfXyKn6ux+ca2yA7NdgHTUTVQua
 R1MWoKbspCjTE+jIo4lgiKI5aH3X4Noh95+jFollnkx468xnzUdHs2aDHkvg==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41476562"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PP3ZwZ0VgTXT92mijYjp5LG19kcwVniCezFwajGVbGphd3PlLSP4v3MuRfIFaV8ySYIyYQxldv5U3iV9eU3rhJcLGFCgls4s4GcYN2EUp54/F6Qa4zqIRh1JXppB/cLGOY0P5kVNrzubtrQ2uvk8vBH1YSvm5H/F/DobhDbtnOE1ob+X3vz1RsfmSn0EUvhR9g3ncseqQgBpzAz7S6Vwh8R00+kj0v/VSPYIYpEuflnf0j9J9IehHiQeKGeRfsLifNPtyEBa1beX9GCnO7ptchp2w+XJHoykaOOTIBGWMpLTJUgumHpK9Y6up54RSTCEwLZKR2MStrjPuBaQfNdSpQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qDZhAJDB/rsUQo+Z4e8pQdhxsoyKmVpWA1PSI58wKuU=;
 b=h19POVAQunWfkCqXZGZn3OCtC00PQCc1Em8SuDn2A4Xia5cNNovmHEY9oebZFPEHTqBXyHewwOEeLeZNlAUALfgQBmJ45Mw/HtZCPeeOfgA1dvuquBgMZfagNpp2jTBUVbcr78l/8NNxV0/OiHoh/g4w+B8kBF4g5TdVKxMSkyJRfo2Mp/VtlmTh1/eKdIZm8VwXsjJrYnyuXcHh+sTwzGJRhsRDHDAMqp+9ZC+kHNfSTG2ycg+xLtJtMCq8+mtYpI0IAQKdjhs1wK4nk5XExJeYduuJOAHkGW8HJrGtWgP44R58G3kVun6++bZs4pPx/iNf86+JkyoSga4tvXk5Jg==
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=qDZhAJDB/rsUQo+Z4e8pQdhxsoyKmVpWA1PSI58wKuU=;
 b=cFxUb1fIRubkaC1putWAOfaK/NMLjcrZg3d5UyZ0wcVTgE+Sk7cUjf2xSOFmimilNkJAeOO9IeqAqbbq4KdDYtT/2IMN7bxUdzDdUq8KTG6SKOCA+wOa9pWI8W9peOSbB5h167Hs/H1rjlzQjjshwpe3o9W8+Xp0GeoavMlFHQ8=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 14/21] libs/guest: introduce helper to check cpu policy compatibility
Date: Tue, 13 Apr 2021 16:01:32 +0200
Message-ID: <20210413140140.73690-15-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR1P264CA0022.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::9) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: efdc4159-a63a-4dcf-9dda-08d8fe84e186
X-MS-TrafficTypeDiagnostic: DM5PR03MB2553:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2553B25E5BADE26E00F343E88F4F9@DM5PR03MB2553.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3513;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: a2oAP/yFTX6/8n6x/Hh76oJ9N2vaZXSPu44dvv1a+w8su5/0bzthNQFWZZkSLzQAXlHDDY/v2QPrB/eXP9uRaHROKHaFpQR7HDTLKx3lKAlPDIyk0xls8jmXa7I3hyXD5vhykpl/hjfbSeoGMLqlfinQC1XfIEsbhtiyi8FEGUq9NGyYq6X8oFUALNpOwC1VmZFtWO/f8x6EjxEoqoPBT2l2TcTk37kscKcf65b5rwamIjEZ55jhaXowySkvuBkvqgZTOkL04jrSNjMvGVBhG1p2ddMZVbZM6GmWt067TqcXiK3O9gQGED0Vypa35hd79bcRn4+vE5l5Fo1ayQFu/fT/hnSKUcEOGJkANifB5cBMCcVcJMywv4pELPcHgo9YETOIEAbuw2ADLL2zp7vWiMIXcjXj6Lc9EYO5Qu+RYensgsJBJJbaG3TcUnvY3jPpn8XDKe50WS+Fdl8aMv8+n4+Tia992VqkIb4/iei6Dtelo0V2iaImx2aX9fNoUJsPMuma9nRTCQPpZGXapKszCBuI6ZGIdmAGABA0InkYx/R2m/2UggD+mfCJfwtoIMgWe2dHBjgVMV41qa+P2z8LzgvDkZfIUG8o7TVwZbJXAKI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(396003)(346002)(39850400004)(8936002)(6496006)(186003)(83380400001)(38100700002)(2906002)(66476007)(86362001)(956004)(2616005)(8676002)(478600001)(66556008)(66946007)(6666004)(6486002)(16526019)(316002)(6916009)(36756003)(54906003)(1076003)(5660300002)(4326008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?bP6KInMj/McpyWCo6huqyllhxu1rNm0+oljgXCg?=
X-MS-Exchange-CrossTenant-Network-Message-Id: efdc4159-a63a-4dcf-9dda-08d8fe84e186
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:14.7785
 (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: 7hIOav2WbjNwSbrWFaROLkZYL4jnSDbZCBwqwAACZYCosVX65fF9DEWOdExlwvzzGtOYZ6MJPGK+1zWGwZmYbQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2553
X-OriginatorOrg: citrix.com

Such helpers is just a wrapper to the existing
x86_cpu_policies_are_compatible function. This requires building
policy.c from libx86 on user land also.

No user of the interface introduced.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Initialize err.
 - Explicitly name parameters as host and guest.
---
 tools/include/xenctrl.h         |  4 ++++
 tools/libs/guest/Makefile       |  2 +-
 tools/libs/guest/xg_cpuid_x86.c | 19 +++++++++++++++++++
 3 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 9a6d1b126d8..5f699c09509 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2619,6 +2619,10 @@ int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
 int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
                               const xen_msr_entry_t *msrs, uint32_t nr);
 
+/* Compatibility calculations. */
+bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
+                                 const xc_cpu_policy_t guest);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/Makefile b/tools/libs/guest/Makefile
index 604e1695d6a..6d2a1d5bbc0 100644
--- a/tools/libs/guest/Makefile
+++ b/tools/libs/guest/Makefile
@@ -40,7 +40,7 @@ $(patsubst %.c,%.opic,$(ELF_SRCS-y)): CFLAGS += -Wno-pointer-sign
 ifeq ($(CONFIG_X86),y) # Add libx86 to the build
 vpath %.c ../../../xen/lib/x86
 
-SRCS-y                 += cpuid.c msr.c
+SRCS-y                 += cpuid.c msr.c policy.c
 endif
 
 # new domain builder
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 26b09322dfa..bd2f31dd87f 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -925,3 +925,22 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
 
     return rc;
 }
+
+bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
+                                 const xc_cpu_policy_t guest)
+{
+    struct cpu_policy_errors err = INIT_CPU_POLICY_ERRORS;
+    struct cpu_policy h = { &host->cpuid, &host->msr };
+    struct cpu_policy g = { &guest->cpuid, &guest->msr };
+    int rc = x86_cpu_policies_are_compatible(&h, &g, &err);
+
+    if ( !rc )
+        return true;
+
+    if ( err.leaf != -1 )
+        ERROR("Leaf %#x subleaf %#x is not compatible", err.leaf, err.subleaf);
+    if ( err.msr != -1 )
+        ERROR("MSR index %#x is not compatible", err.msr);
+
+    return false;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109815.209672 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJdW-000682-PQ; Tue, 13 Apr 2021 14:03:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109815.209672; Tue, 13 Apr 2021 14: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 1lWJdW-00067r-Ko; Tue, 13 Apr 2021 14:03:26 +0000
Received: by outflank-mailman (input) for mailman id 109815;
 Tue, 13 Apr 2021 14:03:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJdU-00061C-ON
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:24 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 345d3bb5-816f-421f-9baf-99c1469d0a13;
 Tue, 13 Apr 2021 14:03: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: 345d3bb5-816f-421f-9baf-99c1469d0a13
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322602;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=P7vZegBKQVl+IyYesoWXa6XMSoDS3GTeMrPPYL+vXSg=;
  b=NYTw2J3LXRIZgUv/X+cBV//HyHSuuqZxjKm+WumfmB2GeGypxKT711j0
   AKzGYzqh7GVpXFT3MCzkXLVvi9DAq1yeXkKj8PvSvdaXoP03F6KSh0ZWu
   ZSzILfMEYhr7WWicmcRpTcxvH/VlpBAjcXjsL6tbQu/uUggvgJq1vwgG+
   I=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ReybT6KogXa0ELTILVm6G9a/Bu3uI0d3wWk4nXoA8A2cATtw0F9x3mOa/1VsVKZhl/gBI73nty
 8HoGnVC/MZDz5vZ4IiviSZ87My8OcMveOk7G217r/9ToWVkjRYKnN9K6DIfpFYD/j1gNVPHe9Z
 8jgH7gx6op+vAQ+vwf30NXc9+pq4IHAzNB74PUoH2atceXRWpCEh9Zk6qt4ulssXyk+j503UjK
 kJgixf5l3Jc8l1kI+b1JaAdA5T/R99l+5lHlZmKc9QMqWgMF8FKN+irXTQN6dw1iOtHxPcc4me
 oCw=
X-SBRS: 5.2
X-MesageID: 41613969
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:mdrh16o70XB3PVlHx5JIu4AaV5uuKtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQb3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIJg/I
 9aWexFBNX0ZGIWse/T/BS4H9E8wNOO7aCvgqPkw21wSBxxApsA0y5SIG+gYylLbSNBAoc0E4
 fZ29FOoCCudW9SQsOwAHQEWOarnay2qLvNZxkaCxk7rDSflD/A0s+GLzG0/Dc7FwlOz7Ar7H
 Tfn2XCiJmLnvmnxnbnpgnuxrtMnt+J8KogOOWtjYwvJizomkKUYu1aKsa/lRQUhM3q11owit
 nLpH4bTrROwlfcZHu8rxeo+ySI6kdW11bYxVWVgWTurKXCLVpQYaox5vMqTjLj50Utp9162q
 5QtljpzaZ/Nh/cgD/7o+HBShACrDvEnVMZjeURg3ZDOLFuD4N5kIp3xjIxLL4wWAj+6IwhDd
 B0CtDd6Pt8YTqhHg7kl1gq79q2UnspGBCaBmAEp8yOyjBT2Et01k0C2aUk7zs93aN4b6MBy/
 XPM6xumr0LZsgKbZhlDONEZcesEGTCTT/FLWr6GyWpKIg3f1b277Ln6rQ84++nPLYSyoEppZ
 jHWFRE8UYvZkPHE6S1rd122yGIZF/4cSXmy8lY6ZQ8kKb7XqDXPSqKT01ru9e8os8YHtbQV5
 +ISdNrKs6mCVGrNZdC3gX4VZUXA2IZStcpttEyXE/LjdnMLqHsq+zHYNfeLLfgCl8fKyHCK0
 pGeAK2CNRL70itVHO9qgPWQWnRdkv2+o81MKWyxZlX9KE9cql39iQFg1Ww4c+GbRdYtLYtQU
 d4KLT71oeypWy8+3f0/3xkUyAtSnp90fHFaTdntAUKO0T7ffIooNOEY11f23OBO1tZQ97JFh
 Vc43B647i+IZDV5S1KMaPoDkuqy18o4F6aRZYVnaOOoe3/fIkjM5ogUKttUSPRFxJ0ng5ugH
 xZaBANQ3LeEj+Gs9TnsLUkQMXkM/VsigaiJsBZ7VjFs1+HmM0pTnwHGwK1XdWvmgYoTTpMjl
 hX+6sS6YDw3gqHGC8auqAVIVdMYGOYDPZjAB6ebItZoLztZTp9VHyHnzCclhE1dFf77kl6vB
 2TEQSkPdXwRnZNsHFR1ajntGl5cWiQZGpcQHF3u48VLxWMhl9DlcuwIoaj2WqYbVUPhtwHOD
 beeD0IP0dF3NasziOYnz6ECFQrzpgjJfbmEbwmar3fs0ndbrGgpOUjJbt57ZxlPNfhvqs3Su
 qZYRaSNy69JOUz2QCZz0xVThVcmT0Bq7fP1xLk5mTjgyJ6LvrWPVh8R7YUZ/ub9HPpQv6U0J
 N/yfI51NHARlnZW5qj8+XwaTUGFzb45UiRZMssoYpPva0zuKBodqOrGQfg5TVi5lEGMMzwlE
 kiW6x177DKB593c6UpCldk12tssO7KEVAivQP3CNIvZF0Bj3fUONWS/rrDwIBfdXGplU/VMV
 mb/zY1xYa8YwKzkZobAbk3O2JYdQwV72lj5vqLc+TreU+XXtAG2FqxKXmmdrBBDICDBLULtx
 5/p/WFhfWeeSa9+Afeu1JAU+9z2lfiZcO5GwSXH+FUt/S8JFSXm6OvpPeJsw2fc0rzV20owa
 tfdUIRacxfij4tyK0PuxLCNZDfkwYCiFtR4TZui1j3/JOpiV2rRH17DQ==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41613969"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eo2nELJLnbLtqD6I6ancgn3nd7+YlTZZVTaddpd9oxnERrmbPHy0ExxA/HImm8Csz3rwtzzi2lHHHDzHVn6MB+JdDOqylm5ioR/7J4O8++Lb6CiKgzG4mwyZmoM2Ou+mC+ga1VY5EgQYHHT/YiuZp0xgWWdQH5b/VgAroQErdN9maZ1XIs4WYKKVDpCYQSd9TLv3I0w46hh+h/0lFwEu6I+ZccWrpoNTHd3HGbopdoPEkv/3bnuKcKVcuJjWpQGbwMmseqSicMFQm/bFA6OKe3wIXtDKc/0c64uIfN2X17eRtMAfXruAvzrHWQBA8fyarOb5B6L3VCJYvdS6HnODeQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Dc+lsGkoLxXeZ9V8GLxDMIl6AZXl0djGMA3EPzv8W5U=;
 b=aXrjwAYxCXP8eATPEZNKVBZykfxtVTaeZW9mbzlElmpoX8YKrQKILNF6d00/nepdgSCoE4Beye1kmn0IxGMDPSrpvZWEOXgsi3JgAJkV9xRi++c1Py63/R5w83d9gWYSCzBRglvEQld+GHBtR+cZ0sBwnNPahge0XV3gwbDBfO6sTiHlyM6ssrULKhHq6+JaCM1tF424QQ4N6iZpinQ0F/UXaY9tzinC+61O8QfDe3hDN6h5pTPacFFl2/FSs3spP5FSMHpDpKk2RqmRHT4ReV43lCR8GEgxwPq3Q9uX4mR1AXFCakQu3pLpmCZhDiS/2c7mC4C1MwRlt/QrYK0NGA==
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=Dc+lsGkoLxXeZ9V8GLxDMIl6AZXl0djGMA3EPzv8W5U=;
 b=VB/wgPdfL35wxlNKEjcNSClsN1dgRQbUZRyt/tvktA/sEeFL0PPf4TS7INl6N/NWCCyslkC9Ur0FbebfStqn8kgGm8vCpF303O3PPARg1PmRqSOesB+Wsu5TTrdgQcex0DzCmh0hVZXHQFEL/vBjqsiF9biR4Kw+NFQ6Zxc5gE8=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from two input ones
Date: Tue, 13 Apr 2021 16:01:33 +0200
Message-ID: <20210413140140.73690-16-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0093.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::33) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 958eb659-fce2-4b33-c0b1-08d8fe84e4b4
X-MS-TrafficTypeDiagnostic: DM5PR03MB2553:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB255312F6447F295E8556EFD38F4F9@DM5PR03MB2553.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: m+h8U+VU8zche7Jo+QHnYzhr1DKC3fH17YRgR/a2cnbWyucCKyYA9V3eQP/cZ8Xe+arhUU8Nvkl5EpD0DHDBjMy24gVRMiYQItntB8lThU5AvkBZME5l7APPjbcevpgZIkGsB/NsLbH4E60Xf1sGLC6e0K/82fuvrMUyWoGJMSZ1rAgA9AE1mjv3hGoCng3uI6k/JNOO+FNIbWdhHMgWbMPLapwL4YZ4GM5e1aRaZac00mN7J9OJ7lRBi0v4b2dvEUYr7wTrGicS763/EyKr7dHrdetlNy/EUEuRnInDgx1uirqzmF+wlK4+34RSWPQm5bLg3Sys+bt7TDF7ApTgkWmwKoCoWMQsgU4NU3QxT6mdxQjrd49gWBaA3kuzeWLx/XEVC+ust/4/tgxalIDMDR0bwoU9MvT6eqvY9pwmBqV5VLMQceXBrmETufNBZViEs/S05s29eF7HPxSQc1xyuUmvrCS/+SQ+czoPhPV10XzA4QfxW4qlTIGHeCi0TL93XJ5LPiWUntxOyVFoK4G667F7tf3tSBHqNYOt12kzkj4/bp9HHJ1QFkG4CF4iFfXPBULYBVHPM9ufhZu6MlFTNjlYLVgWHObKbLwQIMRV03A=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(136003)(396003)(346002)(39850400004)(8936002)(6496006)(186003)(83380400001)(107886003)(38100700002)(2906002)(66476007)(86362001)(956004)(2616005)(8676002)(478600001)(66556008)(66946007)(6666004)(6486002)(16526019)(316002)(6916009)(36756003)(54906003)(1076003)(5660300002)(4326008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?L8/XkFzxGzS0YAsUtiARm8oL/WAtasqor+yCJLw?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 958eb659-fce2-4b33-c0b1-08d8fe84e4b4
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:20.0448
 (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: r03MpPPP20qqMRWRm0h/hzzMKozKy009boBr8Z4xv4OLfHsYAI/INAM4ItL2CsXTnvJwIcPsHrT4W/9qDTCbxg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2553
X-OriginatorOrg: citrix.com

Introduce a helper to obtain a compatible cpu policy based on two
input cpu policies. Currently this is done by and'ing all CPUID leaves
and MSR entries, except for MSR_ARCH_CAPABILITIES which has the RSBA
bit or'ed.

The _AC macro is pulled from libxl_internal.h into xen-tools/libs.h
since it's required in order to use the msr-index.h header.

Note there's no need to place this helper in libx86, since the
calculation of a compatible policy shouldn't be done from the
hypervisor.

No callers of the interface introduced.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Only AND the feature parts of cpuid.
 - Use a binary search to find the matching leaves and msr entries.
 - Remove default case from MSR level function.
---
 tools/include/xen-tools/libs.h    |   5 ++
 tools/include/xenctrl.h           |   4 +
 tools/libs/guest/xg_cpuid_x86.c   | 128 ++++++++++++++++++++++++++++++
 tools/libs/light/libxl_internal.h |   2 -
 4 files changed, 137 insertions(+), 2 deletions(-)

diff --git a/tools/include/xen-tools/libs.h b/tools/include/xen-tools/libs.h
index a16e0c38070..b9e89f9a711 100644
--- a/tools/include/xen-tools/libs.h
+++ b/tools/include/xen-tools/libs.h
@@ -63,4 +63,9 @@
 #define ROUNDUP(_x,_w) (((unsigned long)(_x)+(1UL<<(_w))-1) & ~((1UL<<(_w))-1))
 #endif
 
+#ifndef _AC
+#define __AC(X,Y)   (X##Y)
+#define _AC(X,Y)    __AC(X,Y)
+#endif
+
 #endif	/* __XEN_TOOLS_LIBS__ */
diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 5f699c09509..c41d794683c 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2622,6 +2622,10 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
 /* Compatibility calculations. */
 bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
                                  const xc_cpu_policy_t guest);
+int xc_cpu_policy_calc_compatible(xc_interface *xch,
+                                  const xc_cpu_policy_t p1,
+                                  const xc_cpu_policy_t p2,
+                                  xc_cpu_policy_t out);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index bd2f31dd87f..6cfa4cb39d1 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -32,6 +32,7 @@ enum {
 #include <xen/arch-x86/cpufeatureset.h>
 };
 
+#include <xen/asm/msr-index.h>
 #include <xen/asm/x86-vendors.h>
 
 #include <xen/lib/x86/cpu-policy.h>
@@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
 
     return false;
 }
+
+static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
+{
+    uint64_t val = val1 & val2;;
+
+    switch ( index )
+    {
+    case MSR_ARCH_CAPABILITIES:
+        /*
+         * Set RSBA if present on any of the input values to notice the guest
+         * might run on vulnerable hardware at some point.
+         */
+        val |= (val1 | val2) & ARCH_CAPS_RSBA;
+        break;
+    }
+
+    return val;
+}
+
+static bool level_leaf(xen_cpuid_leaf_t *l1, xen_cpuid_leaf_t *l2,
+                       xen_cpuid_leaf_t *out)
+{
+    *out = (xen_cpuid_leaf_t){ };
+
+    switch ( l1->leaf )
+    {
+    case 0x1:
+    case 0x80000001:
+        out->c = l1->c & l2->c;
+        out->d = l1->d & l2->d;
+        return true;
+
+    case 0xd:
+        if ( l1->subleaf != 1 )
+            break;
+        out->a = l1->a & l2->a;
+        return true;
+
+    case 0x7:
+        switch ( l1->subleaf )
+        {
+        case 0:
+            out->b = l1->b & l2->b;
+            out->c = l1->c & l2->c;
+            out->d = l1->d & l2->d;
+            return true;
+
+        case 1:
+            out->a = l1->a & l2->a;
+            return true;
+        }
+        break;
+
+    case 0x80000007:
+        out->d = l1->d & l2->d;
+        return true;
+
+    case 0x80000008:
+        out->b = l1->b & l2->b;
+        return true;
+    }
+
+    return false;
+}
+
+int xc_cpu_policy_calc_compatible(xc_interface *xch,
+                                  const xc_cpu_policy_t p1,
+                                  const xc_cpu_policy_t p2,
+                                  xc_cpu_policy_t out)
+{
+    unsigned int nr_leaves, nr_msrs, i, index;
+    unsigned int p1_nr_leaves, p2_nr_leaves;
+    unsigned int p1_nr_entries, p2_nr_entries;
+    int rc;
+
+    p1_nr_leaves = p2_nr_leaves = ARRAY_SIZE(p1->leaves);
+    p1_nr_entries = p2_nr_entries = ARRAY_SIZE(p1->entries);
+
+    rc = xc_cpu_policy_serialise(xch, p1, p1->leaves, &p1_nr_leaves,
+                                 p1->entries, &p1_nr_entries);
+    if ( rc )
+        return rc;
+    rc = xc_cpu_policy_serialise(xch, p2, p2->leaves, &p2_nr_leaves,
+                                 p2->entries, &p2_nr_entries);
+    if ( rc )
+        return rc;
+
+    index = 0;
+    for ( i = 0; i < p1_nr_leaves; i++ )
+    {
+        xen_cpuid_leaf_t *l1 = &p1->leaves[i];
+        xen_cpuid_leaf_t *l2 = find_leaf(p2->leaves, p2_nr_leaves,
+                                         l1->leaf, l1->subleaf);
+
+        if ( l2 && level_leaf(&out->leaves[index], l1, l2) )
+        {
+            out->leaves[index].leaf = l1->leaf;
+            out->leaves[index].subleaf = l1->subleaf;
+            index++;
+        }
+    }
+    nr_leaves = index;
+
+    index = 0;
+    for ( i = 0; i < p1_nr_entries; i++ )
+    {
+        xen_msr_entry_t *l1 = &p1->entries[i];
+        xen_msr_entry_t *l2 = find_entry(p2->entries, p2_nr_entries, l1->idx);
+
+        if ( !l2 )
+            continue;
+
+        out->entries[index].idx = l1->idx;
+        out->entries[index].val = level_msr(l1->idx, l1->val, l2->val);
+        index++;
+    }
+    nr_msrs = index;
+
+    rc = deserialize_policy(xch, out, nr_leaves, nr_msrs);
+    if ( rc )
+    {
+        errno = -rc;
+        rc = -1;
+    }
+
+    return rc;
+}
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index 44a2f3c8fe3..5709bcb93fa 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -126,8 +126,6 @@
 #define PVSHIM_CMDLINE "pv-shim console=xen,pv"
 
 /* Size macros. */
-#define __AC(X,Y)   (X##Y)
-#define _AC(X,Y)    __AC(X,Y)
 #define MB(_mb)     (_AC(_mb, ULL) << 20)
 #define GB(_gb)     (_AC(_gb, ULL) << 30)
 
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109821.209685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJdb-0006E2-BH; Tue, 13 Apr 2021 14:03:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109821.209685; Tue, 13 Apr 2021 14: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 1lWJdb-0006Ds-6R; Tue, 13 Apr 2021 14:03:31 +0000
Received: by outflank-mailman (input) for mailman id 109821;
 Tue, 13 Apr 2021 14:03:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJdZ-00061C-RK
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:29 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e785078d-3c3f-4fef-b0cd-cc4fe7c3f96c;
 Tue, 13 Apr 2021 14: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: e785078d-3c3f-4fef-b0cd-cc4fe7c3f96c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322608;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=oXBqzDHS0FunQwg8diVLE6ArqyB8CJV5O3X62tjR+BM=;
  b=iNxJA4V3XzV47Qztg7qCwdzt0ppQXQY8JGq2h9eul3Xr9GKm/MMI1V2N
   gmWiFDSRDYtTqCN7JGceW0Hq1JA3rmEmaiaEleBS2O7GDe055osG0Qdzp
   OokhVV5rN3IW6vtcvY/FQc0sn0OBqN3IuQSMiVlGVPyaMIi6NVpD04M1x
   8=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: tfvxbq07lTg5oX2Z8AnOsJ5SekT4D10PZgd6qOPbJpRoOMS7CtAUfxzHKSeIPGRaPeSp/yB/yb
 RCWbSxMP7feK7HZIHOvjFwRGC954dK6KPyGfHhMdXT79WAzgXbQyhjAEu1kOtolVe+c4v9qBIb
 PQxtFOWG59rN+1L4gficCZ2VDpIlTYifIPXPzC1/oHnZLYxAHTmvn79N9BlyVEHkMreeaUz3vp
 cL1PySPC0eQDfRA/wULxMQj2VsWUjQkVBXc/jpFW+YkrDKqZ28bHe7xHTpDNnMlnURMMm3oDZP
 JBk=
X-SBRS: 5.2
X-MesageID: 41483950
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:LAhmla9j00Fi2w7nWtVuk+FdcL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmyybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUHD38Zn/+
 Nbf6B6YeecMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsKV4hLxW5Ce2KmO2dxQxRLAod8KY
 GV4dBJqyHlVXMcaMm6AXdtZZm+m/TgkpX6bRkaQyM28QXmt0LU1JfWMTi9mi0fXTRG3Ks4/Q
 H+/TDRy62/v5iAu3nh/kDJ6ZA+oqqC9vJiA4i2htEROnHQjG+TFf9ccpmjmBxwn+218lYtl7
 D30mcdFuB+8WnYcG3wgTaF4XiY7B8U53XvyUCVjBLYyKSTLlJKaLsyuatjfhTU8EYmtt1nuZ
 g7pV6xjJZLEQjG2B30+tmgbWAaqmOPvXEgneQP5kYvNrc2Vbk5l/17wGplVL0EHC789bk9Fv
 hvAMz29J9tAC2nRkGckW91zNO2WHMvWj+AX0gZo8SQlwNbhXZj0iIjtYAit0ZF0Kh4Z4hP5u
 zCPKgtvLZSTvUOZaY4IOsaW8O4BkHEXBqkChPcHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ
 PdFHtFqG8bYSvVeI2z9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykvGnv+4UDqTgKr
 eOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+dEmJpu7NN432ps3WePveP9PWYHQZc1K6Jk
 FGcCn4Jc1G4EzucGT/mgLtV3TkfVG63Z8YKtmew8EjjKw2cqFcuAkcjlq0ouuRLydZj6AwdE
 xiZJfukqaxo3iK7X/Fhl8ZfiZ1PwJw2vHNQnlKrQgFPwffarAYoeiSfmhUwT+hKgJgSdjVVC
 pSvU5+967yD5H4/1FtN/uXdkahy1cDrnODSJkR3oeZ493+R58+BpE6HIprFQvKEBRxsR1wqH
 hKbTIFQkO3LEKstYyVyLgvQM3Pfdh1hwmmZeROr2jEiEmarcYzAkcAUyWWSs6RiwY2Tz9yjl
 l8mpVvx4aoqHKKEy8Ske44OFpDZCCyDKhdBAqIXolSh4vmYRp9V2uMmDychSwiY2aCzTRguk
 XRaQmvPd3bCFtUvX5Vlpzn9155bU2xVUN9YHISi/w3KU32/lJIlcObbKu61GWcLmYYyuYGKT
 fffH85OQV13e260xaThRePHXgr3Y8VI+TYFbgvGoujnE+FGcmtr+UrDvVU9JFqOJTSqecNS/
 uYYBLQAzXiCe8lsjbl0EoNCW1Rkj0Dnvzp0hG+szT98347HPbIIFNpA5scOMqR6mD4R/COlL
 V15OhFydeYAyHUUJqhz6qSUhtobjX0ikSyR/szqZ9Vsbkp3YEDV6XzYH/t7jV/wB46LM3Ij0
 sQT6Rw3aDZNuZUDrkvUhMc2mBsqc+GI0QquDHnG+MSfVkiiHnAItOCioC43oYHMwmkrAv0NU
 L3yVwkw971Gw+C36UdEaQ+PCB/b1U98m1r+Iq5BsftITTvU+FI51yhNHChNJdbVaieAL0V6j
 J3+cuBkePSVy323mnrzHZGC5ML12asWsWpBg2QXcZO7tyhIFyJxpKQ3/Tbtka/dRKLL2IChY
 NEckQMbsNMzhka5bdHrRSae+jQuUIqk1xX/Dd9sEXis7LWuVvmIQ==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41483950"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Mw0oyHNjje/jnNrlW7IMhNEK4DNIa4Yl9gekwZ9Cku/CH7rGF13Sxiiv+iLnr8yeak/MoMoJdIgtxlnRLz42mAKTheROdtwu4HT/Ts14eOHOVxa2e+FAAFMHUpLGKyGvdMDRX1x0UpZwx0KK5yLwS9UFrgPQQtFyWJwy3hOhs8DQhMO3BBRIdwQdYaIUJWA2GZZB/MhpsuRFuRGpFe9unOo5X/LVgvXYR76NBsxrtP/sMQ14aeU8xJAjdNAVFEnB8dYlAjRgHDKGcDAOq92Di/41MNWl4IiGpyhlV9WTTHDD3D+eSoaeA6o1uz6E+Thlj6JZ7OVGfDaKBN0M0TObuQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2r1voEZpGxTx5Po9C2mMe1JKE7C2WQQb65ZrKzQeT0o=;
 b=glV+DgQuKchOE+Owvs8ukMAyWyGLm60a8z+fT8BVcBIfKBLDnMIYfPgBga0WGQV9PknHj/g6fQJWhrJVbUmIoXXdvZAQf3Bt+toxW2UKJjv3OKH6XaHTQLc3NP8zWrhvV+dBJs1Cujs+B3wcjf3UWRvRi7CoNmPhc1+w4yxtF6PXlaiy0n7QEdvAWY9yfZ+TboC0aAUI6doz3wAIl9bEdt5tdlpWRpkHSsplbJXmZhJjRMhrNnyjDBAk3ATxEZn0IsfkKDtcI2vVEkJWF6Oxniktuk/Ltdg7W/fJv4j0JuDneu0pP3bwhFvNMCoeJRavmtkvs0M7g3yNwr9B+PXV+A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2r1voEZpGxTx5Po9C2mMe1JKE7C2WQQb65ZrKzQeT0o=;
 b=Gf83JbncVahbefDOWWuoD/977ZIKlbJJEVs8bgq1pFs7FoJRBbPR4j/7Xrbd25GZ1awus5wNRVWmsJhhydsZFEoxKVSijKXmiqh5rgYavzMn4hGxyLVByBdErgWcLA3kFFt8LO/7kXcI7tmPC7mpl6iye3Mhva3O9xtTW82PIe4=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 16/21] libs/guest: make a cpu policy compatible with older Xen versions
Date: Tue, 13 Apr 2021 16:01:34 +0200
Message-ID: <20210413140140.73690-17-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0065.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::29) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4ef1e11a-8ce4-4995-71ab-08d8fe84e7d5
X-MS-TrafficTypeDiagnostic: DM5PR03MB2969:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB296938D2447A770A6BAFAC9A8F4F9@DM5PR03MB2969.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3513;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: NXVVVVErsVWXsrbZaV65auWhAu/+4nK+lxu9j00UhkQKRj6xxT5fZvpkmgbLZoSd/KBG16FXC2iFfpZtPJtHpCjNRRRcBklbClHVOu7PBMPPRE9FhX8TkhsYuRruYp+39PbadphbL+8Qp+9cD80iTPheI4evKdpZa3UkPlnXiU9Mp1z2llYDfh78w4ZEF50Q1Zj+l5Utb2IQ/W/S7IKqsg4VHoQW2a7CaJ5jhANQJRm0z/Fl0eUl8HfBlUzv2I76weq/no6MynAeD2lFyT5EW0N6iqbJSCN7XbaD4dYC0rT2+BeaZE2dw51FOERs7qEwPHD8RtDm3GjIGoU+6/xHFBmDEl8jPt16FqV/sMMa6cRnpvGvUW0SU+Ha14R7hG+bKxLMum3eLCN0G9TrOg/c+iCwyJuq6roYOc3B1ooMsf4hI7pVJfNZm58bPajFTGoRmNaVpjDk1dkO25eSh5+H8Ad0MDa4BMCaXUV2bL4AOQQNP28wsLxRP80GSg0hieEjORF9kjtRToAGb/a8bCNqpCrsFhydrhbLAkavvIVX0QkFUYMczZjZP2RqdrHzFWD/0QZkdKcvGInGSNQZi461RZbX+GclnJBD9zSkqsWmFrc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(346002)(136003)(39850400004)(366004)(83380400001)(186003)(6496006)(316002)(2906002)(4326008)(36756003)(54906003)(6916009)(2616005)(6666004)(16526019)(26005)(478600001)(6486002)(1076003)(8676002)(8936002)(5660300002)(66556008)(66946007)(86362001)(66476007)(38100700002)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ef1e11a-8ce4-4995-71ab-08d8fe84e7d5
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:25.3773
 (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: GhYTjPzilf0yuDTc/veKg6EmyHVexle5bJPzaBYVzAYPqTQ/ZdHKZ8uy5iy13NiEghJVY2od/Jod51IkZXPsnQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2969
X-OriginatorOrg: citrix.com

Older Xen versions used to expose some CPUID bits which are no longer
exposed by default. In order to keep a compatible behavior with
guests migrated from versions of Xen that don't encode the CPUID data
on the migration stream introduce a function that sets the same bits
as older Xen versions.

This is pulled out from xc_cpuid_apply_policy which already has this
logic present.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Move comments and explicitly mention pre-4.14 Xen.
---
 tools/include/xenctrl.h         |  4 +++
 tools/libs/guest/xg_cpuid_x86.c | 46 ++++++++++++++++++++++++++++-----
 2 files changed, 43 insertions(+), 7 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index c41d794683c..89a73fd6823 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2627,6 +2627,10 @@ int xc_cpu_policy_calc_compatible(xc_interface *xch,
                                   const xc_cpu_policy_t p2,
                                   xc_cpu_policy_t out);
 
+/* Make a policy compatible with pre-4.14 Xen versions. */
+int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
+                                  bool hvm);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 6cfa4cb39d1..6486ac4c673 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -446,6 +446,7 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
     unsigned int i, nr_leaves, nr_msrs;
     xen_cpuid_leaf_t *leaves = NULL;
     struct cpuid_policy *p = NULL;
+    struct xc_cpu_policy policy = { };
     uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
     uint32_t host_featureset[FEATURESET_NR_ENTRIES] = {};
     uint32_t len = ARRAY_SIZE(host_featureset);
@@ -509,17 +510,14 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
     }
 
     /*
-     * Account for feature which have been disabled by default since Xen 4.13,
+     * Account for features which have been disabled by default since Xen 4.13,
      * so migrated-in VM's don't risk seeing features disappearing.
      */
     if ( restore )
     {
-        p->basic.rdrand = test_bit(X86_FEATURE_RDRAND, host_featureset);
-
-        if ( di.hvm )
-        {
-            p->feat.mpx = test_bit(X86_FEATURE_MPX, host_featureset);
-        }
+        policy.cpuid = *p;
+        xc_cpu_policy_make_compatible(xch, &policy, di.hvm);
+        *p = policy.cpuid;
     }
 
     if ( featureset )
@@ -1072,3 +1070,37 @@ int xc_cpu_policy_calc_compatible(xc_interface *xch,
 
     return rc;
 }
+
+int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
+                                  bool hvm)
+{
+    xc_cpu_policy_t host;
+    int rc;
+
+    host = xc_cpu_policy_init();
+    if ( !host )
+    {
+        errno = ENOMEM;
+        return -1;
+    }
+
+    rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host);
+    if ( rc )
+    {
+        ERROR("Failed to get host policy");
+        goto out;
+    }
+
+    /*
+     * Account for features which have been disabled by default since Xen 4.13,
+     * so migrated-in VM's don't risk seeing features disappearing.
+     */
+    policy->cpuid.basic.rdrand = host->cpuid.basic.rdrand;
+
+    if ( hvm )
+        policy->cpuid.feat.mpx = host->cpuid.feat.mpx;
+
+ out:
+    xc_cpu_policy_destroy(host);
+    return rc;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109825.209697 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJdh-0006Lz-MA; Tue, 13 Apr 2021 14:03:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109825.209697; Tue, 13 Apr 2021 14:03: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 1lWJdh-0006Lp-IJ; Tue, 13 Apr 2021 14:03:37 +0000
Received: by outflank-mailman (input) for mailman id 109825;
 Tue, 13 Apr 2021 14:03:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJdg-0006KX-BV
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:36 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2658cdd3-a2f5-4515-ae80-ce5a6f63e98b;
 Tue, 13 Apr 2021 14:03: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: 2658cdd3-a2f5-4515-ae80-ce5a6f63e98b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322614;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=SvFuPv+ayBPXc00cwLumU7gxLcmcG3dejOnRxECnnd8=;
  b=eELQFL8YO/zKB/kODPpXxzwoEtff2uTpzXZIEN6BSjnsiB4rlgKbjnIs
   DtNCRwXA1rE1luQV8Jfj6RG6F68phkpf6e+R8ZQjC/QEtTb7PdaEHruJJ
   aY3H0iqeE/i07Dv1CYUJhxZ5VWi9Fev2HKRXYxWpIltxK7I+KO1QNWvkz
   A=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: D26REcR3/iU4c4pPJrBtRS3QJvmZQWYNmYmIAb2sHOES7gYATs6AznOgGsoutsYk4gQLcrGPSB
 AqbRuQMZaomyVYjywhOagrDEIsySkG4I+ZprMVbrfynCSuYUIXCo+u9a8L1NE0zOZbzIllPK8Z
 WI61Z5kNb7ZyGxpB8TaBOEiaDaoWL/IcCRV7g9HVcZs4dxxqL+RWh7EEIWkDiLD6FbwJicgB7g
 XFz0VGfnYu7rk7khPFBV/Izq5+gmBo8JaQOcv+x4KUSu4b4av0paKaSGad8m2FSuPGUaFzrbS6
 iYE=
X-SBRS: 5.2
X-MesageID: 41322379
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:lYZCGaobPwu9yePZCT5QHF0aV5uuKtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQb3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIJg/I
 9aWexFBNX0ZGIWse/T/BS4H9E8wNOO7aCvgqPkw21wSBxxApsA0y5SIG+gYylLbSNBAoc0E4
 fZ29FOoCCudW9SQsOwAHQEWOarnay2qLvNZxkaCxk7rDSflD/A0s+GLzG0/Dc7FwlOz7Ar7H
 Tfn2XCiJmLnvmnxnbnpgnuxrtMnt+J8KogOOWtjYwvJizomkKUYu1aKsa/lRQUhM3q11owit
 nLpH4bTrROwlfcZHu8rxeo+ySI6kdW11bYxVWVgWTurKXCLVpQYaox5vMqTjLj50Utp9162q
 5QtljpzaZ/Nh/cgD/7o+HBShACrDvEnVMZjeURg3ZDOLFuD4N5kIp3xjIxLL4wWAj+6IwhDd
 B0CtDd6Pt8YTqhHg7kl1gq79q2UnspGBCaBmAEp8yOyjBT2Et01k0C2aUk7zs93aN4b6MBy/
 XPM6xumr0LZsgKbZhlDONEZcesEGTCTT/FLWr6GyWpKIg3f1b277Ln6rQ84++nPLYSyoEppZ
 jHWFRE8UYvZkPHE6S1rd122yGIZF/4cSXmy8lY6ZQ8kKb7XqDXPSqKT01ru9e8os8YHtbQV5
 +ISdNrKs6mCVGrNZdC3gX4VZUXA2IZStcpttEyXE/LjdnMLqHsq+zHYNfeLLfgCl8fKyHCK0
 pGeAK2CNRL70itVHO9qgPWQWnRdkv2+o81MKWyxZlX9KE9cql39iQFg1Ww4c+GbRdYtLYtQU
 d4KLT71oeypWy8+3f0/3xkUyAtSnp90fHFaTdntAUKO0T7ffIooNOEY11f23OBO1tZQ97JFh
 Vc43B647i+IZDV5S1KMaPoDkuqy18o4F6aRZYVnaOOoe3/fIkjM5ogUKttUSPRFxJ0ng5ugH
 xZaBANQ3LeEj+Gs9TnsLUkQMXkM/VsigaiJsBZ7VjFs1+HmM0pTnwHGwK1XdWvmgYoTTpMjl
 hX+6sS6YDw3gqHGC8auqAVIVdMYGOYDPZjAB6ebItZoLztZTp9VHyHnzCclhE1dFf77kl6vB
 2TEQSkPdXwRnZNsHFR1ajntGl5cWiQZGpcQHF3u48VLxWMhl9DlcuwIoaj2WqYbVUPhtwHOD
 beeD0IP0dF3NasziOYnz6ECFQrzpgjJfbmEbwmar3fs0ndbrGgpOUjJbt57ZxlPNfhvqs3Su
 qZYRaSNy69JOUz2QCZz0xVThVcmT0Bq7fP1xLk5mTjgyJ6LvrWPVh8R7YUZ/ub9HPpQv6U0J
 N/yfI51NHARlnZW5qj8+XwaTUGFzb45UiRZMssoYpPva0zuKBodqOrGQfg5TVi5lEGMMzwlE
 kiW6x177DKB593c6UpCldk12tssO7KEVAivQP3CNIvZF0Bj3fUONWS/rrDwIBfdXGplU/VMV
 mb/zY1xYa8YwKzkZobAbk3O2JYdQwV72lj5vqLc+TreU+XXtAG2FqxKXmmdrBBDICDBLULtx
 5/p/WFhfWeeSa9+Afeu1JAU+9z2lfiZcO5GwSXH+FUt/S8JFSXm6OvpPeJsw2fc0rzV20owa
 tfdUIRacxfij4tyK0PuxLCNZDfkwYCiFtR4TZui1j3/JOpiV2rRH17DQ==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41322379"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aR8cZTscSsAQVIPiB/sMjmQCwS3wI2SJjQyWIS6OyzvOtsvO3KW9mj903n7dQIPLRmVGJh8pkyQPz8oXuFAjasI0O/fu/Sg19jXrJjD7SqrhK47hjfYGuxy0699P4bisbCo94rcL/h1zkvo8XBXzlVb6c7PCO5GMlI8zNqzmr00hmvhGVUOKnhG5treZKvxeJO0ETN2IZdAr4xzGPWIeo5DWEVXwVzCSmWUsIHy2EDqrx83RPRYcZZ/zEG9fOnT+d0BVGHudDsi2KP3b/MpZOLN6UqmSnyUDToCkhvXPHyxC2qXrXTMe3e156naDeJUGBfYtekSe9HRLqFjr5KBlUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ke3HLuqORzOFlUKMPs/d/zUjkzAyI5FfHtUyvohI96I=;
 b=U6y2YQ+WHjT3fKwWcLLKEvyYbEOjUsbBzDDz3C8qH/oLX+rN8AaeJZHoxByBqnacsNFAsVqhI37QhmD9A0UnJ4moSyCYBjuyRcj4tn58wc7OasqTtmSbx+ZksbIM66n80y83GgW2/GbU+b4snxEqunN6uVC0UvGadReLiuL9WtQlb8F/P5RDoxJgoVJPVg9Mg2BpHmBbOHQTo/O8cor4Zev68YephgANveVViNaHxed69dTGK5RHFBjvf47rgsJzkpTuEJmwiSFy2TIDNu6VFW7C9R8bYJsyU/TIGOuF3iaF2/f3aTWxNhqAXuEhsYdDk3QE/+WBqrRVgFOqJ+rvPg==
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=Ke3HLuqORzOFlUKMPs/d/zUjkzAyI5FfHtUyvohI96I=;
 b=GpYuKG/rdsVEI9/Wx71EDXV49WnbYWONniy0wvG2eOpVQWFS2f+rUNfcoz+V0+KFcqRF1aIvRswmFBKFeA5MbOvcIrJpPye+PP2xOhYkJyIhPC4QG033WvGPvg16RHYOvueA6pMrx9ci8gDLMLPGA6oHhWPsnC20EXONVOrw/Dg=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 17/21] libs/guest: introduce helper set cpu topology in cpu policy
Date: Tue, 13 Apr 2021 16:01:35 +0200
Message-ID: <20210413140140.73690-18-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0168.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::31) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8d39fafd-e6f1-409b-7c42-08d8fe84eb90
X-MS-TrafficTypeDiagnostic: DM5PR03MB2969:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2969662B3585DF91A60639C18F4F9@DM5PR03MB2969.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:1169;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: MVfyxhuEeeB1mL0HxJycAj3tyHOTCi85pXBevdaddypQCDwZt21xEzEt18HBF6+6Ii5twBFOMFMlvKvgE2ZSxbUwaCCtWDcVDG28T4XSM+bb1JMKRE8ll95IcgatU3gL/LxUJqtEJOZQPpnCeR9sbWhpA8+2NiYoNFjMYxUJf+7JVMUo3/HZW+6khVOBIRsu0SycAcod2e0ze+VGpTm5ZUA5RX32U8yltuCtrD1Cm6F8o2ZJZKhiy5IkHOJE7fC/hBiDC7/L230v17h9yz5ky9Tr3CJcDsnEXWAI91GpRT5lSJCg9iwMKu2ta6QHKuk06wcuvb2K4EdI8PO4sjhCfSkg6Odkrk1QF5u+z5fiyYP32OmsTQF5ZvKaNNj8VniMGu/8fhcfUL89LtVIRPrwncRDkvu8kWsjkFw5j7ZAAjGjg1f17h5DGiurG132SxLzDRfHJVrPMb8naZlKrLz3gUMdKpPBhl4uz5FiCALDuxF9/GavZ/nIc5lrhWUcACNmxCwE0bqCTrJgGXuwlWLvDqtdgnHdFt1dBnBqxXWWXTB4MwAnJQBxSIO3ALbHpTGgOtgkGI0+9w5s5fLQz3NI2CxCso3vkFLzbF/oSD92Jr0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(346002)(136003)(39850400004)(366004)(83380400001)(186003)(6496006)(316002)(2906002)(4326008)(36756003)(54906003)(6916009)(2616005)(16526019)(26005)(478600001)(6486002)(1076003)(8676002)(8936002)(5660300002)(66556008)(66946007)(86362001)(66476007)(38100700002)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?iomVmlZokOvA7LAWiUQeKI/qEltKBcgR4ZKEux+?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 8d39fafd-e6f1-409b-7c42-08d8fe84eb90
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:31.5547
 (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: TYvGGoYpb5NRfQVkIoItik3NkEJdt9azkHYAC2GFH7BhXmt0dCfW0yPot7SGlg0Cbhd8w0W/ighPtN1AvxUb0g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2969
X-OriginatorOrg: citrix.com

This logic is pulled out from xc_cpuid_apply_policy and placed into a
separate helper. Note the legacy part of the introduced function, as
long term Xen will require a proper topology setter function capable
of expressing a more diverse set of topologies.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 - s/xc_cpu_policy_topology/xc_cpu_policy_legacy_topology/
---
 tools/include/xenctrl.h         |   4 +
 tools/libs/guest/xg_cpuid_x86.c | 182 +++++++++++++++++---------------
 2 files changed, 103 insertions(+), 83 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 89a73fd6823..ec184bccd3f 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2631,6 +2631,10 @@ int xc_cpu_policy_calc_compatible(xc_interface *xch,
 int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
                                   bool hvm);
 
+/* Setup the legacy policy topology. */
+int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
+                                  bool hvm);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 6486ac4c673..83cd71148f7 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -443,13 +443,11 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
 {
     int rc;
     xc_dominfo_t di;
-    unsigned int i, nr_leaves, nr_msrs;
+    unsigned int nr_leaves, nr_msrs;
     xen_cpuid_leaf_t *leaves = NULL;
     struct cpuid_policy *p = NULL;
     struct xc_cpu_policy policy = { };
     uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
-    uint32_t host_featureset[FEATURESET_NR_ENTRIES] = {};
-    uint32_t len = ARRAY_SIZE(host_featureset);
 
     if ( xc_domain_getinfo(xch, domid, 1, &di) != 1 ||
          di.domid != domid )
@@ -472,22 +470,6 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
          (p = calloc(1, sizeof(*p))) == NULL )
         goto out;
 
-    /* Get the host policy. */
-    rc = xc_get_cpu_featureset(xch, XEN_SYSCTL_cpu_featureset_host,
-                               &len, host_featureset);
-    if ( rc )
-    {
-        /* Tolerate "buffer too small", as we've got the bits we need. */
-        if ( errno == ENOBUFS )
-            rc = 0;
-        else
-        {
-            PERROR("Failed to obtain host featureset");
-            rc = -errno;
-            goto out;
-        }
-    }
-
     /* Get the domain's default policy. */
     nr_msrs = 0;
     rc = get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
@@ -575,70 +557,11 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         }
     }
 
-    if ( !di.hvm )
-    {
-        /*
-         * On hardware without CPUID Faulting, PV guests see real topology.
-         * As a consequence, they also need to see the host htt/cmp fields.
-         */
-        p->basic.htt       = test_bit(X86_FEATURE_HTT, host_featureset);
-        p->extd.cmp_legacy = test_bit(X86_FEATURE_CMP_LEGACY, host_featureset);
-    }
-    else
-    {
-        /*
-         * Topology for HVM guests is entirely controlled by Xen.  For now, we
-         * hardcode APIC_ID = vcpu_id * 2 to give the illusion of no SMT.
-         */
-        p->basic.htt = true;
-        p->extd.cmp_legacy = false;
-
-        /*
-         * Leaf 1 EBX[23:16] is Maximum Logical Processors Per Package.
-         * Update to reflect vLAPIC_ID = vCPU_ID * 2, but make sure to avoid
-         * overflow.
-         */
-        if ( !(p->basic.lppp & 0x80) )
-            p->basic.lppp *= 2;
-
-        switch ( p->x86_vendor )
-        {
-        case X86_VENDOR_INTEL:
-            for ( i = 0; (p->cache.subleaf[i].type &&
-                          i < ARRAY_SIZE(p->cache.raw)); ++i )
-            {
-                p->cache.subleaf[i].cores_per_package =
-                    (p->cache.subleaf[i].cores_per_package << 1) | 1;
-                p->cache.subleaf[i].threads_per_cache = 0;
-            }
-            break;
-
-        case X86_VENDOR_AMD:
-        case X86_VENDOR_HYGON:
-            /*
-             * Leaf 0x80000008 ECX[15:12] is ApicIdCoreSize.
-             * Leaf 0x80000008 ECX[7:0] is NumberOfCores (minus one).
-             * Update to reflect vLAPIC_ID = vCPU_ID * 2.  But avoid
-             * - overflow,
-             * - going out of sync with leaf 1 EBX[23:16],
-             * - incrementing ApicIdCoreSize when it's zero (which changes the
-             *   meaning of bits 7:0).
-             *
-             * UPDATE: I addition to avoiding overflow, some
-             * proprietary operating systems have trouble with
-             * apic_id_size values greater than 7.  Limit the value to
-             * 7 for now.
-             */
-            if ( p->extd.nc < 0x7f )
-            {
-                if ( p->extd.apic_id_size != 0 && p->extd.apic_id_size < 0x7 )
-                    p->extd.apic_id_size++;
-
-                p->extd.nc = (p->extd.nc << 1) | 1;
-            }
-            break;
-        }
-    }
+    policy.cpuid = *p;
+    rc = xc_cpu_policy_legacy_topology(xch, &policy, di.hvm);
+    if ( rc )
+        goto out;
+    *p = policy.cpuid;
 
     rc = x86_cpuid_copy_to_buffer(p, leaves, &nr_leaves);
     if ( rc )
@@ -1104,3 +1027,96 @@ int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
     xc_cpu_policy_destroy(host);
     return rc;
 }
+
+int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
+                                  bool hvm)
+{
+    if ( !hvm )
+    {
+        xc_cpu_policy_t host;
+        int rc;
+
+        host = xc_cpu_policy_init();
+        if ( !host )
+        {
+            errno = ENOMEM;
+            return -1;
+        }
+
+        rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host);
+        if ( rc )
+        {
+            ERROR("Failed to get host policy");
+            xc_cpu_policy_destroy(host);
+            return rc;
+        }
+
+
+        /*
+         * On hardware without CPUID Faulting, PV guests see real topology.
+         * As a consequence, they also need to see the host htt/cmp fields.
+         */
+        policy->cpuid.basic.htt = host->cpuid.basic.htt;
+        policy->cpuid.extd.cmp_legacy = host->cpuid.extd.cmp_legacy;
+    }
+    else
+    {
+        unsigned int i;
+
+        /*
+         * Topology for HVM guests is entirely controlled by Xen.  For now, we
+         * hardcode APIC_ID = vcpu_id * 2 to give the illusion of no SMT.
+         */
+        policy->cpuid.basic.htt = true;
+        policy->cpuid.extd.cmp_legacy = false;
+
+        /*
+         * Leaf 1 EBX[23:16] is Maximum Logical Processors Per Package.
+         * Update to reflect vLAPIC_ID = vCPU_ID * 2, but make sure to avoid
+         * overflow.
+         */
+        if ( !(policy->cpuid.basic.lppp & 0x80) )
+            policy->cpuid.basic.lppp *= 2;
+
+        switch ( policy->cpuid.x86_vendor )
+        {
+        case X86_VENDOR_INTEL:
+            for ( i = 0; (policy->cpuid.cache.subleaf[i].type &&
+                          i < ARRAY_SIZE(policy->cpuid.cache.raw)); ++i )
+            {
+                policy->cpuid.cache.subleaf[i].cores_per_package =
+                  (policy->cpuid.cache.subleaf[i].cores_per_package << 1) | 1;
+                policy->cpuid.cache.subleaf[i].threads_per_cache = 0;
+            }
+            break;
+
+        case X86_VENDOR_AMD:
+        case X86_VENDOR_HYGON:
+            /*
+             * Leaf 0x80000008 ECX[15:12] is ApicIdCoreSize.
+             * Leaf 0x80000008 ECX[7:0] is NumberOfCores (minus one).
+             * Update to reflect vLAPIC_ID = vCPU_ID * 2.  But avoid
+             * - overflow,
+             * - going out of sync with leaf 1 EBX[23:16],
+             * - incrementing ApicIdCoreSize when it's zero (which changes the
+             *   meaning of bits 7:0).
+             *
+             * UPDATE: I addition to avoiding overflow, some
+             * proprietary operating systems have trouble with
+             * apic_id_size values greater than 7.  Limit the value to
+             * 7 for now.
+             */
+            if ( policy->cpuid.extd.nc < 0x7f )
+            {
+                if ( policy->cpuid.extd.apic_id_size != 0 &&
+                     policy->cpuid.extd.apic_id_size < 0x7 )
+                    policy->cpuid.extd.apic_id_size++;
+
+                policy->cpuid.extd.nc = (policy->cpuid.extd.nc << 1) | 1;
+            }
+            break;
+        }
+    }
+
+    return 0;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109829.209709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJdm-0006Rv-60; Tue, 13 Apr 2021 14:03:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109829.209709; Tue, 13 Apr 2021 14:03:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJdm-0006Rm-29; Tue, 13 Apr 2021 14:03:42 +0000
Received: by outflank-mailman (input) for mailman id 109829;
 Tue, 13 Apr 2021 14:03:41 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJdl-0006KX-5I
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:41 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 02147ad1-c3de-48ca-8106-a6755cb7693f;
 Tue, 13 Apr 2021 14: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: 02147ad1-c3de-48ca-8106-a6755cb7693f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322619;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=y5+wq5v92xJaRWVBJA3GfnjlX1XmtbKxgDkEMUjd/7g=;
  b=ZBzbBoLw7qUwCwwxaYsH/pxKvPxjI6LrwoMrf7O3IS0cqh2qRI9dp7Cy
   6vQ8R5XA9qYvmDz6lmWGbyu97nDP3/G0z43+uy+pk9DgaHqhOMs8M1jkM
   0Cfrdu1v+HkZIfPP5waf1tKMXkoQAPoC+L1mLqqz2VuoIGZ3Y+H0lg9wt
   0=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: CxjGfYuM1jq6+8dncgah+SBVUc8hssM40RcThgFGL8K0u1z9MCHjKpvKpa8gS8XtKdklvjEkwm
 /F9PQY4IDbmaglIRpMR3eg7Uw0ByVs1iS92vLl+o3tX8rbXfLaoSN7PZPd2pB63i5LSORav+bu
 KPuMMGPMeNTtk4uH4TIRCOXQDWimWqg+8SwSoHvYWpX+fhK7k7jI3lKgFkB7snrASnWG2piv01
 ON+wAId+VKAr28GKI32dgw2D6oo/zzZnNuWRv0e6VgI0n5Xbzqkqut9xnl/TJrhlNSAFZIZFbB
 Z8w=
X-SBRS: 5.2
X-MesageID: 41322412
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:elh6cqj7ZxQ6f4HiewMU9HpWmHBQX19w3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+YsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmuZ
 tIW5NVTOf9BV0St6vHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WZEIyywe3cGIDVuL5w/CZ
 aa+457vDKmY3sadYCWAXMCUujFqbTw5e7bSDQBAAMq7xTLsCOw5NfBYmWl9zo9cxcK+7ct9m
 DZjxf0j5/Mj9iXwgLRvlWjiah+t8DmzrJ4da6xo+gTbg7hkwO5ILlmMofyxwwdhMGKxBIUnM
 LXoxEmVv4Dm0/5Wm2uuxPi103B/V8Vmgbf4GSVi3fivsD1LQhSY6Eq5fM7A2nkwnEts91m3K
 VA03jxjessMTr6kDng/N+Nbhl2lyOP0AsfuNQOhH9SW5Z2Us43kaUj+ipuYfI9NRO/woUmHO
 5yNdrb9fZbfHiLBkqpwFVH8ZiCWG8+EQyBRVVHksuJ0yJOlHQ89EcAwtcD901wuK4Vet1h3a
 DpI65onLZBQos/ar98Pv4IRY+SBnbWSRzBHWqOKT3cZe46EkOIj6SyzKQ+5emsdpBN5oA1go
 79XFRRsnN3U17yCOWVtac7sizlcSGYZ3DA28te7592tvnXX7zwKxCOT1gojo+Jv+gfOMvGQP
 y+UagmQsPLHC/LI8Jkzgf+U55dJT01S8sOoOs2XFqIv4blMYvvmuvHcOvCBbbkHDo+M1mPQE
 crbXzWHoFt/0qrUnj3jFz6QHX2YHHy+pp2Dez78oEouc0wH7wJljJQpUWy58mNJzEHmLcxZl
 FCLLTulb7+gWG3+G3P/lh4IxY1NDcQ3JzQF1dx4SMaOUL9drgO//+Ff3pJ4XeBLhhjC+TbDR
 BYvFYy3a6sNZSfyWQDBrucQyynpkpWgEjPY4YXm6WF68ugUIg/FIwaVKt4EhiOMQd0lwZsoG
 JqcxQFWUfbKzPrhcye/d8pLdCaU+M5rBagIMZSp36an16bv9sTSnwSWCPrbdSamj80Rz1fhk
 R49ogWhLboo0fpFUIPxMADdHFcYmWeB7xLSCCIfp9dlLzQdAZsdmuSnjCBhxYvem3lylUKig
 XaXF6pUMCOJmAYlmFT067s/l8xTGmbck5qQl1RsIF2Fw39yz1O+N7OQpD2/3qaa1MEzO1YDS
 rMZiEKJBhyg/qt0gSOpTqEHXI655knM+DHFo4/e7XL1n7FEvzPqYg2W9tvuLp1PtHnteEGFd
 +FcwiONTXiFqcH3ReWqntNAlgDlFAU1dfTnDvr42iz0CRhXb78IFF6S6oaJN/ZxW7+XPqM2I
 h4i9VwnebYCBSEVve2jYXsKxhEIVfvhETzaccCg5Vdp7gzu7t+BIOza0qB6Fh3mDEFaP7pn0
 YfSplh6L/POoVTb9UfEhgpi2YBpZCqFg8XqQT4De81QEE1g1LaN92P5aDUqbBHODz3mCLAfX
 2W8yhQ5J7+LlO+/I9fL6I7OmJNbkcgrFxk4eOZboXVYT/aPd1rzR6fMnWndqVaR7XAMbIMrg
 xi69XNu+OMbSL31ETxujR8S5g+vlqPcIeXAAiWH/RP/MH/EVOQgrGy6Mr2tQzJc1KAGg0lrL
 wAU1cRYMRFgiQji4Ny8hHacN2JnmsV131E4T9mkVbx3JOB+2mzJzAeDTHk
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41322412"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D2JvE0+ooWjkoP4e95ADW87M15OBVrGy6sw408MBCeoy3tNmm7tKOjfqw3pS356UDXjpB9PMPmTytxZ5TonYzgO4A/TlXdqWQlGXue9hz6nLFrngPFg55Vr7D+Qk4o/e1CDThaoUhF18iGyD3Qt82tFlnM+5oUPT5aC5d73u/ePscoZKEXFFeBP/bFfQ1PwYp6RQiLkq4jmZ7fVHjR+tRRh3h5cFw3hwjB8LVAV6yhM53L1oW/uoFHU5dQ/eQMXDMI8pAteGyzkSz8iaedZ2g71cJeFabVAI42c8kf9FPPkvTDR3pLgwUYx8bWPsMwvbKnQuzFrl8x719TFGk61N3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dhDbUZkOllUWicuxg47GICno5ICsaetEMRtEl5iO2+0=;
 b=BKgnFeQa8/RVaVfkH6gEuL7rPWsNxtvv9MI2UlNgwQZRF6ofbv7SVAYNdc20vHlAjT71OhhGb4fLcTlRk3OjyJRSN65LNGkYNZbKNarhq9YsrroE/X51K+GVsIHT+YklYFrwU1h0HTcG6Y9xWLtiNvaTh7AjCxYZ+0h2kOPyMIeEYzMrZNT4vAZGGX28GEuxESlcFFijlxneiKQLIq48OkAOshxzhunmc0tBc7LdC91DDJNMZi7zbK2b3pluxDOLQhXN3h/VZboYHOuFF5DFow56jo+bltexGDLPzJeAT5Ez1AMBa+KxvUxQiO6yli5aV+aDbcIjY060DqY8BNrAAw==
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=dhDbUZkOllUWicuxg47GICno5ICsaetEMRtEl5iO2+0=;
 b=IFTJdP5kdWdvX1DO/Yw2nJIuP9le24n1HeV/+CaxNUp8Wxrea9N6DvUJsYTprC4xJC/DBXb9LC0kGsCbz3pIJxlG6TQICybF9/joiEKK8GZf+9hGYSQ+VRn0vh+FfKm6FM5sWW4bWLyMLyCi5J8VWmhk5O/MaAoAsX0+LgT1rEo=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 18/21] libs/guest: rework xc_cpuid_xend_policy
Date: Tue, 13 Apr 2021 16:01:36 +0200
Message-ID: <20210413140140.73690-19-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0163.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::26) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ebbfea3f-dcd6-4205-08a4-08d8fe84eef3
X-MS-TrafficTypeDiagnostic: DM5PR03MB2969:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB29699EF24F8BBA1366D96FEA8F4F9@DM5PR03MB2969.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:65;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: BNb3tyYF9AEA2J87W+GYK1OEjjC7FUwqNAjYvUC66HxgD76ltkDWvU53LETwA0G0JQTpfHykJaMZjsFR9OUawuSs9cC6bV5A5UliuRcZoYOAx68z/LMif2p1tIonFfU3goXmPLmLUEJy0q0SIPKFEAZafmVtIJ90/z6PJGx2v0MlJJxDFEvtekkYi2aoJSgrFE0kFBRSXsoD6Z1vm9DTOzPTgcj0A334sQKC1nGGfxpSlbkDV9/5FiN8VXlZUyCrz15OaXe0CAM2gls2XxqoYKTR8gEbTUVYiselUu0uXedYzsyq2r6jXutv3JQKUnrEwuMJgvkIoUMhR5nbGdmiLw3/2hs5Fux4DdfMkZdwFXa4cEp+NqxsntuDfNJ1s/L94nRvn6hIBAWyocwpSVhCMRHfE3yyPtCbhjA+0ctdgAs5vPcyZ98KZb0Yfts0Wt7LsOuZr9u6rXX7oV/ivvZvVMjUIFa8Rh/pGP3CVcazfXkqBeL343q3DdyVTP+0/FgIPdeh4+6e7Q5R8XBPCHgk1+Z+pRlXZIiIr4oYC2H3D3BeJHV1xyqKZs3e2c01qGZqtWMO6B6xawJPTlIP/GY2+YBFPRVN3gmP/fmqRgZ82dM=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(346002)(136003)(39850400004)(366004)(83380400001)(186003)(6496006)(316002)(2906002)(4326008)(36756003)(54906003)(6916009)(2616005)(16526019)(26005)(478600001)(6486002)(1076003)(8676002)(8936002)(5660300002)(66556008)(66946007)(86362001)(66476007)(38100700002)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: ebbfea3f-dcd6-4205-08a4-08d8fe84eef3
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:37.2237
 (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: vdQI8/0ShcO5vCUU8yRqMfMDVCB3C5aTDBNgAFguYRDA+o331dnaqHZgS6i1LUPfPHU8/nqZfhgN4a+ZBLXy5Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2969
X-OriginatorOrg: citrix.com

Rename xc_cpuid_xend_policy to xc_cpu_policy_apply_cpuid and make it
public. Modify the function internally to use the new xc_cpu_policy_*
set of functions. Also don't apply the passed policy to a domain
directly, and instead modify the provided xc_cpu_policy_t. The caller
will be responsible of applying the modified cpu policy to the domain.

Note that further patches will end up removing this function, as the
callers should have the necessary helpers to modify an xc_cpu_policy_t
themselves.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/xenctrl.h         |   4 +
 tools/libs/guest/xg_cpuid_x86.c | 182 ++++++++++++++------------------
 2 files changed, 84 insertions(+), 102 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index ec184bccd3f..ce0785f7654 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2635,6 +2635,10 @@ int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
 int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
                                   bool hvm);
 
+/* Apply an xc_xend_cpuid object to the policy. */
+int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
+                              const struct xc_xend_cpuid *cpuid, bool hvm);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 83cd71148f7..06e3e8131d7 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -288,124 +288,107 @@ static xen_cpuid_leaf_t *find_leaf(
     return bsearch(&key, leaves, nr_leaves, sizeof(*leaves), compare_leaves);
 }
 
-static int xc_cpuid_xend_policy(
-    xc_interface *xch, uint32_t domid, const struct xc_xend_cpuid *xend)
+int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
+                              const struct xc_xend_cpuid *cpuid, bool hvm)
 {
     int rc;
-    xc_dominfo_t di;
-    unsigned int nr_leaves, nr_msrs;
-    uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
-    /*
-     * Three full policies.  The host, default for the domain type,
-     * and domain current.
-     */
-    xen_cpuid_leaf_t *host = NULL, *def = NULL, *cur = NULL;
-    unsigned int nr_host, nr_def, nr_cur;
-
-    if ( xc_domain_getinfo(xch, domid, 1, &di) != 1 ||
-         di.domid != domid )
-    {
-        ERROR("Failed to obtain d%d info", domid);
-        rc = -ESRCH;
-        goto fail;
-    }
-
-    rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
-    if ( rc )
-    {
-        PERROR("Failed to obtain policy info size");
-        rc = -errno;
-        goto fail;
-    }
+    xc_cpu_policy_t host = NULL, def = NULL;
 
-    rc = -ENOMEM;
-    if ( (host = calloc(nr_leaves, sizeof(*host))) == NULL ||
-         (def  = calloc(nr_leaves, sizeof(*def)))  == NULL ||
-         (cur  = calloc(nr_leaves, sizeof(*cur)))  == NULL )
-    {
-        ERROR("Unable to allocate memory for %u CPUID leaves", nr_leaves);
-        goto fail;
-    }
-
-    /* Get the domain's current policy. */
-    nr_msrs = 0;
-    nr_cur = nr_leaves;
-    rc = get_domain_cpu_policy(xch, domid, &nr_cur, cur, &nr_msrs, NULL);
-    if ( rc )
+    host = xc_cpu_policy_init();
+    def = xc_cpu_policy_init();
+    if ( !host || !def )
     {
-        PERROR("Failed to obtain d%d current policy", domid);
-        rc = -errno;
-        goto fail;
+        PERROR("Failed to init policies");
+        rc = -ENOMEM;
+        goto out;
     }
 
     /* Get the domain type's default policy. */
-    nr_msrs = 0;
-    nr_def = nr_leaves;
-    rc = get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
+    rc = xc_cpu_policy_get_system(xch, hvm ? XEN_SYSCTL_cpu_policy_hvm_default
                                            : XEN_SYSCTL_cpu_policy_pv_default,
-                               &nr_def, def, &nr_msrs, NULL);
+                                  def);
     if ( rc )
     {
-        PERROR("Failed to obtain %s def policy", di.hvm ? "hvm" : "pv");
-        rc = -errno;
-        goto fail;
+        PERROR("Failed to obtain %s def policy", hvm ? "hvm" : "pv");
+        goto out;
     }
 
     /* Get the host policy. */
-    nr_msrs = 0;
-    nr_host = nr_leaves;
-    rc = get_system_cpu_policy(xch, XEN_SYSCTL_cpu_policy_host,
-                               &nr_host, host, &nr_msrs, NULL);
+    rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host);
     if ( rc )
     {
         PERROR("Failed to obtain host policy");
-        rc = -errno;
-        goto fail;
+        goto out;
     }
 
     rc = -EINVAL;
-    for ( ; xend->leaf != XEN_CPUID_INPUT_UNUSED; ++xend )
+    for ( ; cpuid->leaf != XEN_CPUID_INPUT_UNUSED; ++cpuid )
     {
-        xen_cpuid_leaf_t *cur_leaf = find_leaf(cur, nr_cur,
-                                               xend->leaf, xend->subleaf);
-        const xen_cpuid_leaf_t *def_leaf = find_leaf(def, nr_def,
-                                                     xend->leaf, xend->subleaf);
-        const xen_cpuid_leaf_t *host_leaf = find_leaf(host, nr_host, xend->leaf,
-                                                      xend->subleaf);
-
-        if ( cur_leaf == NULL || def_leaf == NULL || host_leaf == NULL )
+        xen_cpuid_leaf_t cur_leaf;
+        xen_cpuid_leaf_t def_leaf;
+        xen_cpuid_leaf_t host_leaf;
+
+        rc = xc_cpu_policy_get_cpuid(xch, policy, cpuid->leaf, cpuid->subleaf,
+                                     &cur_leaf);
+        if ( rc )
         {
-            ERROR("Missing leaf %#x, subleaf %#x", xend->leaf, xend->subleaf);
-            goto fail;
+            ERROR("Failed to get current policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            goto out;
+        }
+        rc = xc_cpu_policy_get_cpuid(xch, def, cpuid->leaf, cpuid->subleaf,
+                                     &def_leaf);
+        if ( rc )
+        {
+            ERROR("Failed to get def policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            goto out;
+        }
+        rc = xc_cpu_policy_get_cpuid(xch, host, cpuid->leaf, cpuid->subleaf,
+                                     &host_leaf);
+        if ( rc )
+        {
+            ERROR("Failed to get host policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            goto out;
         }
 
-        for ( unsigned int i = 0; i < ARRAY_SIZE(xend->policy); i++ )
+        for ( unsigned int i = 0; i < ARRAY_SIZE(cpuid->policy); i++ )
         {
-            uint32_t *cur_reg = &cur_leaf->a + i;
-            const uint32_t *def_reg = &def_leaf->a + i;
-            const uint32_t *host_reg = &host_leaf->a + i;
+            uint32_t *cur_reg = &cur_leaf.a + i;
+            const uint32_t *def_reg = &def_leaf.a + i;
+            const uint32_t *host_reg = &host_leaf.a + i;
 
-            if ( xend->policy[i] == NULL )
+            if ( cpuid->policy[i] == NULL )
                 continue;
 
             for ( unsigned int j = 0; j < 32; j++ )
             {
                 bool val;
 
-                if ( xend->policy[i][j] == '1' )
+                switch ( cpuid->policy[i][j] )
+                {
+                case '1':
                     val = true;
-                else if ( xend->policy[i][j] == '0' )
+                    break;
+
+                case '0':
                     val = false;
-                else if ( xend->policy[i][j] == 'x' )
+                    break;
+
+                case 'x':
                     val = test_bit(31 - j, def_reg);
-                else if ( xend->policy[i][j] == 'k' ||
-                          xend->policy[i][j] == 's' )
+                    break;
+
+                case 'k':
+                case 's':
                     val = test_bit(31 - j, host_reg);
-                else
-                {
+                    break;
+
+                default:
                     ERROR("Bad character '%c' in policy[%d] string '%s'",
-                          xend->policy[i][j], i, xend->policy[i]);
-                    goto fail;
+                          cpuid->policy[i][j], i, cpuid->policy[i]);
+                    goto out;
                 }
 
                 clear_bit(31 - j, cur_reg);
@@ -413,25 +396,19 @@ static int xc_cpuid_xend_policy(
                     set_bit(31 - j, cur_reg);
             }
         }
-    }
 
-    /* Feed the transformed currrent policy back up to Xen. */
-    rc = xc_set_domain_cpu_policy(xch, domid, nr_cur, cur, 0, NULL,
-                                  &err_leaf, &err_subleaf, &err_msr);
-    if ( rc )
-    {
-        PERROR("Failed to set d%d's policy (err leaf %#x, subleaf %#x, msr %#x)",
-               domid, err_leaf, err_subleaf, err_msr);
-        rc = -errno;
-        goto fail;
+        rc = xc_cpu_policy_update_cpuid(xch, policy, &cur_leaf, 1);
+        if ( rc )
+        {
+            PERROR("Failed to set policy leaf %#x subleaf %#x",
+                   cpuid->leaf, cpuid->subleaf);
+            goto out;
+        }
     }
 
-    /* Success! */
-
- fail:
-    free(cur);
-    free(def);
-    free(host);
+ out:
+    xc_cpu_policy_destroy(def);
+    xc_cpu_policy_destroy(host);
 
     return rc;
 }
@@ -439,7 +416,7 @@ static int xc_cpuid_xend_policy(
 int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
                           const uint32_t *featureset, unsigned int nr_features,
                           bool pae, bool itsc, bool nested_virt,
-                          const struct xc_xend_cpuid *xend)
+                          const struct xc_xend_cpuid *cpuid)
 {
     int rc;
     xc_dominfo_t di;
@@ -563,6 +540,10 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         goto out;
     *p = policy.cpuid;
 
+    rc = xc_cpu_policy_apply_cpuid(xch, &policy, cpuid, di.hvm);
+    if ( rc )
+        goto out;
+
     rc = x86_cpuid_copy_to_buffer(p, leaves, &nr_leaves);
     if ( rc )
     {
@@ -580,9 +561,6 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         goto out;
     }
 
-    if ( xend && (rc = xc_cpuid_xend_policy(xch, domid, xend)) )
-        goto out;
-
     rc = 0;
 
 out:
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109836.209721 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJds-0006a5-Fu; Tue, 13 Apr 2021 14:03:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109836.209721; Tue, 13 Apr 2021 14: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 1lWJds-0006Zx-Bt; Tue, 13 Apr 2021 14:03:48 +0000
Received: by outflank-mailman (input) for mailman id 109836;
 Tue, 13 Apr 2021 14:03:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJdr-0006KX-Bn
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:47 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c487b8b6-adbe-429a-bc33-38996c013ab6;
 Tue, 13 Apr 2021 14:03: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: c487b8b6-adbe-429a-bc33-38996c013ab6
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322626;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=cq7WRx5BpsCYjEAJzUUXhgmQH5KGs74ng/5qh4MPnF4=;
  b=PY3XZBHfGoA7tdRr7tO2ZPJZrJSPmiDv+j2Ok28y8tm3YR1Uw7oDSG8j
   Jyc+AwqAB25N8PteJeU2YUpM2f90me5ZIRXaJMGFQ0gAGrARvpYBoGd3C
   g3dR0JfhZJcq+FOQBm2UL31coOoCemSiWNL84ukdCD5Ffl3xfWisU3wYq
   A=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: xzoOk2dYXHI5sGJAd5bxzv5J5AgygmBVfQ1pUdlD+YkSHSsmqN3o7qAhg0mXGknDp3LqvPVAY3
 apgABNg3iyOhdj5uaJV0o9wBANuGLFM7WqM40QmgJRfC9IHA7RgcsZMR1IBiUvoq382qYt/UNR
 T4QEWK79eLxQqlW+QSUBtGkr5rQxQP7jW4I+Ik3rKV5cADXzDgqnTV44ncku254aojtPfGq1fw
 mvf2ltJG0N5kzhpj1bzKetMjxMFEFFi4H0PQxRGKc+exPmuWCkbe6FEr8p7K4FdSq7b3+nxSHw
 xW0=
X-SBRS: 5.2
X-MesageID: 41614008
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:PoNK06HcFfkz5oBxpLqFbZTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76
 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYcNi+wFEpqSA5aQacjHJ
 2H6cZd4xamc3IbbsO0b0N1I9TrjdvNiZ7gfFo6FwcqgTP+8A+AxZzbN1yj3hkYWy5S2rtKyw
 b4uiHw+6nLiYDc9jbyzGnWhq4m+ufJ6twGP8CUj9hQFzOEsHfSWK1Ee5mv+A84u/uu7lFCqq
 i9nz4FM95o433cOkGZyCGdojXI6zol53/8xVLwuxKKyqaYNVFKefZpvo5XfgDU7EAtprhHod
 h29lmUqoZNClf4lDn9juK4Ji1CrFa+onYpjIco/htieLYZAYUhyLA3zQd+FZcNGz/C84Y3EO
 ViJ9G03ocpTXqqK1/epWVh29qqQzAaGQqHWFELvoiv3yFRh20R9TpV+OUv2lM7sL4tQZhN4O
 rJdoxuibF1V8cTKYZwHv0IT8ebAnHEKCi8f166EBDCLuUqKnjNo5n47PEe/+exYqEFy5M0hd
 DoTE5YnXRaQTOvNeS+mLlwtjzdSmS0WjrgjutE4YJih7H6TL33dQWeVVEVlde6qfl3OLybZ9
 +DfLZtR9PzJ2rnHohEmyfkXYNJFHUYWMoJ/vkhXVajpd/KN53KuuTXfO27HsuuLR8UHkfERl
 cTVjn6I8tNqmqxXGXjvRTXU3TxPmzzlKgAVZTyzqw28swgJ4dMug8ahRCS/ceQMwBPtaQwYQ
 9bKLPjmaWrmHmu8Q/zniFUEysYKnwQzKTrUntMqwNPGVjza6w/t9KWfn0X+3ebOBllTYfzHB
 REr1p6vYK7RqbgixwKOpaCCCa3nnETrHWFQ9M3gauY//rofZs+E9IBQ6x+FQLCEjRvggZ0oG
 J/aAsJL3WvVQ/GuOGAttg5Fevff95zjEOAOshPs0/Ssk2auIUSXHcBZiWvVsSWmA4qYDJRij
 RKgugiqYvFvQzqBXo0gew+PlEJTGiMGrpJAD6IY5hulqnxdBt9SnqLgjKmmwg+E1CahHk6ty
 jEF2m5aPvLCl1StjRj3qHm/EhdW0+dc0hzA0oK+rFVJCDjgDJewOWLbq283y+tcVME2PgaKy
 yASyAVOBlSy9e+0wO1lD6OGW49/IgnOvXQAd0YAvfu80LoDLfNubANHvdS8pogCcvntfUTV/
 mDPyCSNzH1BooSqnqoj0dgHBMxjnYqkfnlgkK4qEe52WMyGvrULhBNQaoBL9SV8mjjQLKp3f
 xC/KYIlNr1Fl+0TNiMjZzzRXpkDDj4pGatVeEmqZxOp8sJxfNONqiedQGN7W1N2RU1Edz9m0
 wfSplq+bypAP4bQ+UiPwZiumcznNuBLEEXohX7L+83c1YqlWLaNbqyks31gItqJkWAoQfqUG
 PvixF1zrPgXyGZ06QdBL91CWNKaFIk4HAKxpLJS6TgTCGrffpE5ly0LzuUd6JcUrGMHfE1og
 xh69+F28+ReCyQ4nGcgRJLZoZP+X2gW8W8HUalHvNJ6cWzPRC0uZSRifTDxQvfeH+ccEQXhY
 pMaEwWYIBis1AZ/fIK+xn3bLf2rEIjm0ZZ+hd9mDfWq9Gb3Fs=
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41614008"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZOSJ6fs7Jda5qlJKKj1FRQheVCHhY02lQwEPzFZi5y7bl4SG4kqgvi+1VgkPDpWVhCCRCL56tZGsACXtYD3hF9tU9u4rMaokYpaqV0JweymuyUeWahY+HCEgKSVAgYPzCvPRQ2XyXSxWmIlHyRf2kLXfJoe11wZzGjQHMGiXncM30pRLEsiqs2ndE8LtcRilV/IE3dunNzlHmZV/TOEXrDmSDSdvfGOAqoEDXMnmryVSdxm0tz+Nv4Q8KDutGuPGmOeiS0BFPZGx4Y0QrCE+Ija8BY44QCjBhBfoIPHedFNUC/+9G1YvBex9F8k9mve4MZhV0ftLCzpswzDmt+1bag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yfg3EpqS4Xb7uB8bCvTSbNySuLEELrQoy2D2h5/WPGY=;
 b=bKxJukOyvWIKNlL6ThxCezHRGUu0aASvCJN9Wwlsm4mhJ1NCyN3Kb6CoK1lM5loHO+Rz3+ly4+kA6A8zVVTV7aj7SqMQCMTDw14sESRTbhNx+tm40tH+hosKlRsKTaWyA1kDXesIQ1BeaCNJkNJVs67JOUET/uPfy0pZ4B6S4Itw00bWIIoqbpmoMadoNmT3xFqVeYWS311dtyrZzNiJsUDgtiLJXnVELNXLDiHTUlIkous3s/KT+XM/zn70MVz3exCA8VXJVj12odTUwi1nT6D/TNS957grtDiBduU8DBAlcEeOYjB/uLLPxK9lnLoWFMsncUismloYDF57oMYPlw==
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=yfg3EpqS4Xb7uB8bCvTSbNySuLEELrQoy2D2h5/WPGY=;
 b=r2MA396HPbEKem0DYIL8tw+PEzo8w/8mWissdUQtIsS3unLfMorYieXtP4TPro/72MA/wUddLZWvUR4dqhhm1dt01dH8M37DAH+ASd6+qMh49sfMqh7hJMiXwm7pIJfpajpghzoiRuaXHOrsHRrroNqLY3Iayzx+WP3xeFCRkZI=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v2 19/21] libs/guest: apply a featureset into a cpu policy
Date: Tue, 13 Apr 2021 16:01:37 +0200
Message-ID: <20210413140140.73690-20-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0054.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::18) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4c20a9d9-7e3b-4209-de21-08d8fe84f22c
X-MS-TrafficTypeDiagnostic: DM5PR03MB2969:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB29691E83F2FCDA0113F5A4DF8F4F9@DM5PR03MB2969.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: eulKJr/ewBlWyflw6ePV2lqjWX3P+cnD3YBhymmCKOGwQs8NJW0D/Z/Zq8qgkvz2PNpxsa1aEgyYkootf71QKGwMbiqKlN5Bn/725TD3LKOGSVmSLDUMuwlVEqrrqbXiyBlWUo4+giD+EahfhgFLkEOQjA6mxH0qm/nYrC/9focEvHo9WSeq4q8hRFzr65+Gm/blsVKTC4xruyfGzN88QfuXTqY2CHpk5hkrB+tqTnTrK+9KPR9KfF6nqPcl6c2EvX3E+oJkZBCu8XIkDltBxmPRPknMe71puheHgQY4Ay/KYnXo7aVmjN/soH0JldcgM0AzJHUA2VrpTC4PKDTlbX8iiHelFnsB8M66BLXTMLCiyVhy6E6VlbgrHu5ktFsI1PkrFHjdT7zB/llJEtAxdxZ4I4FDyujSs6SX+ZPI5E43tuGkaoEeBUzNl/TK99CO9GrI+ZQ0835MzcZ6PcChJicsfbesOZ7/EtllGOrtpWgkYnt5zciGu0LUIbb0QtHmyGBEZpS7W3IvWBG916SvLyagJAfrBBirqo+9kejLSXw+Ea4buboCqU8+uN3jlPcoOsDVWh3rwKc8LEbfyAcxaUBLXjlgGHHx6cCzuWChjhc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(346002)(136003)(39850400004)(366004)(83380400001)(186003)(6496006)(316002)(2906002)(4326008)(36756003)(54906003)(6916009)(2616005)(6666004)(16526019)(26005)(478600001)(6486002)(1076003)(8676002)(8936002)(5660300002)(66556008)(66946007)(86362001)(66476007)(38100700002)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 4c20a9d9-7e3b-4209-de21-08d8fe84f22c
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:42.6608
 (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: MGU0y1qrO/qX0kBv+NqlI6W64RCq9WKxlhAbOxFCYCU0d/e11g+HRSiRedo/mO39ayuhwYbksOS3bBvmeA3ZAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2969
X-OriginatorOrg: citrix.com

Pull out the code from xc_cpuid_apply_policy that applies a featureset
to a cpu policy and place it on it's own standalone function that's
part of the public interface.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/xenctrl.h         |  5 ++
 tools/libs/guest/xg_cpuid_x86.c | 95 ++++++++++++++++++++-------------
 2 files changed, 62 insertions(+), 38 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index ce0785f7654..3fef954d1d1 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2639,6 +2639,11 @@ int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
 int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
                               const struct xc_xend_cpuid *cpuid, bool hvm);
 
+/* Apply a featureset to the policy. */
+int xc_cpu_policy_apply_featureset(xc_interface *xch, xc_cpu_policy_t policy,
+                                   const uint32_t *featureset,
+                                   unsigned int nr_features);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 06e3e8131d7..b0690d9799d 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -481,46 +481,15 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
 
     if ( featureset )
     {
-        uint32_t disabled_features[FEATURESET_NR_ENTRIES],
-            feat[FEATURESET_NR_ENTRIES] = {};
-        static const uint32_t deep_features[] = INIT_DEEP_FEATURES;
-        unsigned int i, b;
-
-        /*
-         * The user supplied featureset may be shorter or longer than
-         * FEATURESET_NR_ENTRIES.  Shorter is fine, and we will zero-extend.
-         * Longer is fine, so long as it only padded with zeros.
-         */
-        unsigned int user_len = min(FEATURESET_NR_ENTRIES + 0u, nr_features);
-
-        /* Check for truncated set bits. */
-        rc = -EOPNOTSUPP;
-        for ( i = user_len; i < nr_features; ++i )
-            if ( featureset[i] != 0 )
-                goto out;
-
-        memcpy(feat, featureset, sizeof(*featureset) * user_len);
-
-        /* Disable deep dependencies of disabled features. */
-        for ( i = 0; i < ARRAY_SIZE(disabled_features); ++i )
-            disabled_features[i] = ~feat[i] & deep_features[i];
-
-        for ( b = 0; b < sizeof(disabled_features) * CHAR_BIT; ++b )
+        policy.cpuid = *p;
+        rc = xc_cpu_policy_apply_featureset(xch, &policy, featureset,
+                                            nr_features);
+        if ( rc )
         {
-            const uint32_t *dfs;
-
-            if ( !test_bit(b, disabled_features) ||
-                 !(dfs = x86_cpuid_lookup_deep_deps(b)) )
-                continue;
-
-            for ( i = 0; i < ARRAY_SIZE(disabled_features); ++i )
-            {
-                feat[i] &= ~dfs[i];
-                disabled_features[i] &= ~dfs[i];
-            }
+            ERROR("Failed to apply featureset to policy");
+            goto out;
         }
-
-        cpuid_featureset_to_policy(feat, p);
+        *p = policy.cpuid;
     }
     else
     {
@@ -1098,3 +1067,53 @@ int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
 
     return 0;
 }
+
+int xc_cpu_policy_apply_featureset(xc_interface *xch, xc_cpu_policy_t policy,
+                                   const uint32_t *featureset,
+                                   unsigned int nr_features)
+{
+    uint32_t disabled_features[FEATURESET_NR_ENTRIES],
+        feat[FEATURESET_NR_ENTRIES] = {};
+    static const uint32_t deep_features[] = INIT_DEEP_FEATURES;
+    unsigned int i, b;
+
+    /*
+     * The user supplied featureset may be shorter or longer than
+     * FEATURESET_NR_ENTRIES.  Shorter is fine, and we will zero-extend.
+     * Longer is fine, so long as it only padded with zeros.
+     */
+    unsigned int user_len = min(FEATURESET_NR_ENTRIES + 0u, nr_features);
+
+    /* Check for truncated set bits. */
+    for ( i = user_len; i < nr_features; ++i )
+        if ( featureset[i] != 0 )
+        {
+            errno = EOPNOTSUPP;
+            return -1;
+        }
+
+    memcpy(feat, featureset, sizeof(*featureset) * user_len);
+
+    /* Disable deep dependencies of disabled features. */
+    for ( i = 0; i < ARRAY_SIZE(disabled_features); ++i )
+        disabled_features[i] = ~feat[i] & deep_features[i];
+
+    for ( b = 0; b < sizeof(disabled_features) * CHAR_BIT; ++b )
+    {
+        const uint32_t *dfs;
+
+        if ( !test_bit(b, disabled_features) ||
+             !(dfs = x86_cpuid_lookup_deep_deps(b)) )
+            continue;
+
+        for ( i = 0; i < ARRAY_SIZE(disabled_features); ++i )
+        {
+            feat[i] &= ~dfs[i];
+            disabled_features[i] &= ~dfs[i];
+        }
+    }
+
+    cpuid_featureset_to_policy(feat, &policy->cpuid);
+
+    return 0;
+}
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:03:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:03:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109844.209733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJe3-0006m0-2G; Tue, 13 Apr 2021 14:03:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109844.209733; Tue, 13 Apr 2021 14:03:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJe2-0006ll-St; Tue, 13 Apr 2021 14:03:58 +0000
Received: by outflank-mailman (input) for mailman id 109844;
 Tue, 13 Apr 2021 14:03:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJe1-0006KX-9G
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:03:57 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b22a6313-700b-47c6-8043-5dbf28a6fce9;
 Tue, 13 Apr 2021 14:03: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: b22a6313-700b-47c6-8043-5dbf28a6fce9
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322632;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=1ZGNdKBhjvThEnMln1+LkfE1eKjpN3KTfKSH625bhak=;
  b=PbnrFhLkr94vYr4zBfwP9MkXVN3fqcVMRWuxDLEqc6rWGX8h4X74vlkL
   xd3KUqJEOLZdaSY2lXX0cnBA5OdlH3vKWpRM2VG5x8GA8O+PvpbiXV0db
   czbMlKGCz3/lc94QKGo0PUu6KvzJQok7tPQBajpe5ED5pqWbbU5Dcbke+
   A=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 8gAufaKXGEGoDCe6F/F1z2FkpMfLa8gBEpX6ofA5UnhAwguadMcmbXbU/WFfe/EWUGwjieJXvv
 x2coIsckgwrbUJFpXsdOO4TurK1+uWGhMbzquwTDI6c+UoVFq9tvoAF4PqCXy08y4WW9bfoFRY
 9XVNkLBpGh+REAWLo02V99sOp/9og9GnpUqpwqCaXTslNp2tQQg+IwUe1vVWXV1sUKaPOV/wsl
 zjf/AZAZbl7zQlDKFqKO5tpOEzOach1AGPqw1/KbLcmf044A5xsMlW8btlCzNcYSQdzRDXxdHN
 C1w=
X-SBRS: 5.2
X-MesageID: 42956165
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:SDdhiq4TPknhxP4onAPXwU2EI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+LpT+jvfMk4/rZgNDOg4/5GC1/E6VwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLrCP0+HTU6/1t6bnc4/tFQPeBk80Ebgjr4zzYH7hJf52nkHQLrPq06FAs+e
 O80ysIG8ho8XveciWUjHLWqnDd+Q0j4XPj1lOU6EGLyaeSJENYerh8rLlUfRfD500rsMsU6t
 Mw40uju4dKFhSFpSzh5rHzJmBXv3Cpqnkvm/N7tQ05baIibtZq3Oki1XIQOpIBECXm0ZsgAe
 ljAerNjcwmD2+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoiPA3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QS2vCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSfGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erGs
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdUwoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtG4fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3DToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5ZvJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjYvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMZAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCU5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3iml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NAgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso6I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfCvA6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu+lZMfRmmIpA79Ij
 CkglVg1saAeyuIzrgBDa0sZUxQdUgn8XxnldnyPbH4OUGPd+tZ+kC9PWL4WLhBSLKdEbFVih
 ph+dmHk6u2cCX/sTqg8AdTE+Zr82y9R9m1Dx/JMelU88aiMVDJu5CU2qeI/X7KYAr+TV8Zi4
 1DfVERacoGqgBKtvxJ7gGCDortokwklFNC5ypAjVCF4Pn+3Fvm
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="42956165"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=k5BqyPvZiwpyD6PI1ufOTnddjTPosRJJEyWJ0egR42CDlnUs8beoy93a0rjgv42Jm5zzKOOfRa/OWAi2c4E8v8eEGaJuZN761EnV6rozJRD8VdTxIX9ezqroAwKSK1V/5GpTQ4UBOU2cJA1+K7xo6Tua0JcL389dNoTxGk1M9qcKH037zCxNQ99DL108v0gzGmvd9hgzTTZY1VNrjv0A5IXj8KQEFFmldq+CRMpNVKa6gaHHIxGp12eYtCwlqexRjvzjYHrEYlyN77g1Rrcz1lWiK7bPDnJBLfMpNSalCcebjn0GiXSvVNXyxMWli7Yj2l7vxPQUC9OolG1Xst6oJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ESxMv/ykLpGDWIhuuWTbo4Xni3atEDtt5kOgmKjenh0=;
 b=f72CMt1U9wmMlKLtcEZ8XsBxvyff6nCTjhS2PDPuhGebhJypXrh+L8aM2Q0PgqgULFcxv7L2yWYSq2k/juElJBmzQ8VLmwHalSEFLdNBdU+ytkOqamU3Vd7E4ZW1EfLGH23ADcbgJK6w/ZO/XAYyHVqiyO65ykSDVR22mLqM6ObknCwPsbV0mWhpCC81x+0Ecc0X2L1GWW4w1NOWy9Q1mmskomeEx7BIjHO94MEcxoZ4FVhmUkS/a2qHG+dz4WtKyh69CX+58lgSw9bch1YjtE88M/gfNI812osd5kwV8EvaN2JsIjDSE8hjb40GS5auDKFYlCuFXgQTUIe8nhNsNQ==
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=ESxMv/ykLpGDWIhuuWTbo4Xni3atEDtt5kOgmKjenh0=;
 b=MwHAdH5SouZ5jbYseZvDQB0wZplWETdAgm448rW+Yg/fE15VRD9aaq/XD+rqw4vzeF22Mi9Qi79TbJh8pqiG7xDm1EurKkP40/3vsIGIvkTon2RDEIE4+9JNAmsP65vb5z7LxhDrarkIJ5eRrmDIA5Fkhfdl6vTwK9moNkKetLw=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v2 20/21] libs/{light,guest}: implement xc_cpuid_apply_policy in libxl
Date: Tue, 13 Apr 2021 16:01:38 +0200
Message-ID: <20210413140140.73690-21-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0066.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ed5d0484-8858-4498-f588-08d8fe84f5e3
X-MS-TrafficTypeDiagnostic: DM5PR03MB2969:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB296952DE29665A669F5B2A6F8F4F9@DM5PR03MB2969.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:153;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: TwJ9A6UkPp042MAhw2pkMO0Q81Ql8aqmNaoBnPRHv+LRlGAildlwJXfL9byXCFY0B1b6M6IFJujjhwNPFSlWaWWF6s7xBS73V1sxMqZSLNVQ7HyQRIHDrIl1Tv6drohRrygFF4WWTUZd+vKeJgYGqddH60bZuw9B3JyqGRROI3sJpIpaCwqfcxS0UB0qCzpnWJgn8m9YigRA+NYRosyW8u4bfZPARkuf8TyZzPP8+ZVHZ6IFu4TXMETp3mtwvfhecxraaI7Ks8XN33758Fbvxbc1VGER9ODiDWVQ2V0xc0DcRzpBCQnfnDnR98w6zbCp05x99P4hBu1XvUjg0fWU/oGR48BOvCiRsE9kES2y/DMHN0Gzv3FLRWDAoHvwkVOS/azFbnxd6pzB0bCDVBJgm5sJgbKz/tFaLm2qKxOwmNR7vxrlidMGN1uE99YaQd+e9tc+YYZeiDaiwABFvG8RP98xNA73vDmwAhnZrS2UAXIEa9gGo90lDKS3ZNAAOghagEyC8RY2lUpoR2N2IoPCNL66LL5I/UbzF5NLeBwOLOstjKU3vj1HFcX7bG+wPqehSFaNP0OSB4723lli1W2Dg4VNPsmoaaDxVlEXHqYD6aE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(346002)(136003)(39850400004)(366004)(83380400001)(186003)(6496006)(316002)(2906002)(4326008)(36756003)(54906003)(6916009)(2616005)(6666004)(107886003)(16526019)(26005)(478600001)(6486002)(1076003)(8676002)(8936002)(5660300002)(66556008)(66946007)(86362001)(66476007)(38100700002)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?aTl1S2RFQ2J3TmFIYktQWXQrL1dZeTlZZkZITkxlSTBVMm1qWmZSS296NU5O?=
 =?utf-8?B?ZjVkSXhSbkh5ci9salFodkpDU1FIVkZxTHgxWUM3bFpMWEVBMWovQ0NGa2pS?=
 =?utf-8?B?dlR4Yk9KcnNlVXRIQk1jeXV4S0lxUG1lMXdyWTBTdHB1ajFxNzNQZlNsb3dY?=
 =?utf-8?B?cDdBZEd3UllOM1B6clBoTUZ3dHh0dDV5WnY0VUVMYXhQZkVDaUFVR1ZaOHBm?=
 =?utf-8?B?ckFOOG5lQUJMMERjMzhNczJNLzVoVXdBbVI4TGRPempPRHNIZktSLzVjYkM0?=
 =?utf-8?B?SjNNY0FjcW1va1RscnVVWXNVRGhnVVhVOENCc3FicnZzZHR3aUVmK3VnTnJV?=
 =?utf-8?B?NUMyNkJlWFFyM2hMa1h5NXplYkdLbmVKa3lDVHZFZ3Z6ZDM3V2x6NnlyNDBQ?=
 =?utf-8?B?THZwUTJ5QUp2NndqTnFaN2ZGTXpDR1JMMkIyMDdFMjFVZkM4ZnJ3TUxpQTNz?=
 =?utf-8?B?L3JiOEpFbDlNWVZjSUR5OFlOYkFGaTFVUHRmWng4bEtBcUJIcGtSc0xTalAw?=
 =?utf-8?B?VzBaRFI2VXJhclFWZWtac01ZWXFkQWw3RzJIMk5vQkRodWxNcXAram9uYlpQ?=
 =?utf-8?B?WFlLVHZmOCsrYjJRRVR1ejBIWTA4L0dWc3FFT2Y2anN0YzFOdDBKR2FJLzdI?=
 =?utf-8?B?Yk5vRnJTaTduUGkvWWdiSUpYZ2ZoKytyWGpGOUlCY2RUV2FXa2ZtdDVtd0xR?=
 =?utf-8?B?SXdQa2RtOHl2N2QrQjQyeXpPd3d2RFpaSURralJVci84ZE1vU0hVYTM0K3dE?=
 =?utf-8?B?ekR2L0o2eFJnU2JqQWM3TTRYU2h1M29HS3hBVExBQVRCQzMxTUtUN09XNlZQ?=
 =?utf-8?B?bmR1VXZzQ2pEWm1zb09LckdIRnIrWFdDT1gzM1JraWVZRlV1bnRWeHlENlA1?=
 =?utf-8?B?eUFsV215dndDUEVZa0tZMThlUFBSeDlrMGYwRFpvWHZvZlBqTHVnRUZ5Q29Q?=
 =?utf-8?B?YzBMVGV2dW5YMzdIdXh6NUM0dXJINEZpc1NRV3hqRGxKZDJ5MWlFOEdRVDVZ?=
 =?utf-8?B?QWlsU0FWamdjVTEvT09jdStMRHFVcVdRVnA3amVrWjlWNTRvcnAwTWMxRnhu?=
 =?utf-8?B?cy9iS1liUFBFdWRvdkpDZlh2UnB0aUhwN2VuWWN0TnFLK3F0VWY0clFFdC9x?=
 =?utf-8?B?ZkNMQ2NUcVhhRlhjVnB1WXl0OENHaGR4NGg4RWpCME1XWWZWY3BvY2Ywd1V5?=
 =?utf-8?B?bE9IK2JveVo4NW50bkU4N1lWWXpGZkVtRE9GNmVINTFuV2p2RTZMb3U1eTFT?=
 =?utf-8?B?L2dJZlMxREFvMk02Q0d2aEZMY0FiS25aRWNRTWV4SytIdWRlNVdxaTQ4cmsv?=
 =?utf-8?B?RW5hL2ppZHhtNWIrQVhBRENrV2o4c3FkVzJRRloreHdmTmNWVlZVbVpsK01S?=
 =?utf-8?B?MjROMWtDbWNGMWNHUjI1MFJkV1NuSDk5RmROUFpTNkNQRUlTYjJmbDZQQXND?=
 =?utf-8?B?SG8rMHpCMXJwM2RvUldtMHd5bXlmajgweUoyYnJkVmhZUHpUQStmYXR5c0dz?=
 =?utf-8?B?Y2dXZWl4dFllUkhxaklxaDNKVStlZlhsc0NCeVZDNXFVVDNOT3RDNU1FdkRZ?=
 =?utf-8?B?Z3hXWTVyU1loYXYya0hHNVU2ZWdkNldXMmlITVFxeTBmNHBFTDZFTi9VV0h6?=
 =?utf-8?B?ZmlwZEJmYmpnS1NjblA0a3N4U3Q5eVZEQ3cyZmRyQk96YUtlSERiQ1dWTlAz?=
 =?utf-8?B?ZXNnajVEME81OENXa0cvRTVqd0huQUhwc0RLUTJKWFhIQWdmSVFrYUlseVBU?=
 =?utf-8?Q?piqqdVyTc1+gyy2aV2doEFZrk0ytAO6KNRv91zr?=
X-MS-Exchange-CrossTenant-Network-Message-Id: ed5d0484-8858-4498-f588-08d8fe84f5e3
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:48.8545
 (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: ysKlc21lzfBBltJB+NthR0nry4CGKnA2jQxmMmQx5D6yOyy8CP7dsvTDeQEBRv5yBn/Vm17NVrlGrlvt+mgDjg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2969
X-OriginatorOrg: citrix.com

With the addition of the xc_cpu_policy_* now libxl can have better
control over the cpu policy, this allows removing the
xc_cpuid_apply_policy function and instead coding the required bits by
libxl in libxl__cpuid_legacy directly.

Remove xc_cpuid_apply_policy.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/xenctrl.h         |  18 -----
 tools/libs/guest/xg_cpuid_x86.c | 126 --------------------------------
 tools/libs/light/libxl_cpuid.c  |  87 +++++++++++++++++++++-
 3 files changed, 83 insertions(+), 148 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 3fef954d1d1..c6ee1142e8e 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -1890,24 +1890,6 @@ struct xc_xend_cpuid {
     char *policy[4];
 };
 
-/*
- * Make adjustments to the CPUID settings for a domain.
- *
- * This path is used in two cases.  First, for fresh boots of the domain, and
- * secondly for migrate-in/restore of pre-4.14 guests (where CPUID data was
- * missing from the stream).  The @restore parameter distinguishes these
- * cases, and the generated policy must be compatible with a 4.13.
- *
- * Either pass a full new @featureset (and @nr_features), or adjust individual
- * features (@pae, @itsc, @nested_virt).
- *
- * Then (optionally) apply legacy XEND overrides (@xend) to the result.
- */
-int xc_cpuid_apply_policy(xc_interface *xch,
-                          uint32_t domid, bool restore,
-                          const uint32_t *featureset,
-                          unsigned int nr_features, bool pae, bool itsc,
-                          bool nested_virt, const struct xc_xend_cpuid *xend);
 int xc_mca_op(xc_interface *xch, struct xen_mc *mc);
 int xc_mca_op_inject_v2(xc_interface *xch, unsigned int flags,
                         xc_cpumap_t cpumap, unsigned int nr_cpus);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index b0690d9799d..70ca4939392 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -413,132 +413,6 @@ int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
     return rc;
 }
 
-int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
-                          const uint32_t *featureset, unsigned int nr_features,
-                          bool pae, bool itsc, bool nested_virt,
-                          const struct xc_xend_cpuid *cpuid)
-{
-    int rc;
-    xc_dominfo_t di;
-    unsigned int nr_leaves, nr_msrs;
-    xen_cpuid_leaf_t *leaves = NULL;
-    struct cpuid_policy *p = NULL;
-    struct xc_cpu_policy policy = { };
-    uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
-
-    if ( xc_domain_getinfo(xch, domid, 1, &di) != 1 ||
-         di.domid != domid )
-    {
-        ERROR("Failed to obtain d%d info", domid);
-        rc = -ESRCH;
-        goto out;
-    }
-
-    rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
-    if ( rc )
-    {
-        PERROR("Failed to obtain policy info size");
-        rc = -errno;
-        goto out;
-    }
-
-    rc = -ENOMEM;
-    if ( (leaves = calloc(nr_leaves, sizeof(*leaves))) == NULL ||
-         (p = calloc(1, sizeof(*p))) == NULL )
-        goto out;
-
-    /* Get the domain's default policy. */
-    nr_msrs = 0;
-    rc = get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
-                                           : XEN_SYSCTL_cpu_policy_pv_default,
-                               &nr_leaves, leaves, &nr_msrs, NULL);
-    if ( rc )
-    {
-        PERROR("Failed to obtain %s default policy", di.hvm ? "hvm" : "pv");
-        rc = -errno;
-        goto out;
-    }
-
-    rc = x86_cpuid_copy_from_buffer(p, leaves, nr_leaves,
-                                    &err_leaf, &err_subleaf);
-    if ( rc )
-    {
-        ERROR("Failed to deserialise CPUID (err leaf %#x, subleaf %#x) (%d = %s)",
-              err_leaf, err_subleaf, -rc, strerror(-rc));
-        goto out;
-    }
-
-    /*
-     * Account for features which have been disabled by default since Xen 4.13,
-     * so migrated-in VM's don't risk seeing features disappearing.
-     */
-    if ( restore )
-    {
-        policy.cpuid = *p;
-        xc_cpu_policy_make_compatible(xch, &policy, di.hvm);
-        *p = policy.cpuid;
-    }
-
-    if ( featureset )
-    {
-        policy.cpuid = *p;
-        rc = xc_cpu_policy_apply_featureset(xch, &policy, featureset,
-                                            nr_features);
-        if ( rc )
-        {
-            ERROR("Failed to apply featureset to policy");
-            goto out;
-        }
-        *p = policy.cpuid;
-    }
-    else
-    {
-        p->extd.itsc = itsc;
-
-        if ( di.hvm )
-        {
-            p->basic.pae = pae;
-            p->basic.vmx = nested_virt;
-            p->extd.svm = nested_virt;
-        }
-    }
-
-    policy.cpuid = *p;
-    rc = xc_cpu_policy_legacy_topology(xch, &policy, di.hvm);
-    if ( rc )
-        goto out;
-    *p = policy.cpuid;
-
-    rc = xc_cpu_policy_apply_cpuid(xch, &policy, cpuid, di.hvm);
-    if ( rc )
-        goto out;
-
-    rc = x86_cpuid_copy_to_buffer(p, leaves, &nr_leaves);
-    if ( rc )
-    {
-        ERROR("Failed to serialise CPUID (%d = %s)", -rc, strerror(-rc));
-        goto out;
-    }
-
-    rc = xc_set_domain_cpu_policy(xch, domid, nr_leaves, leaves, 0, NULL,
-                                  &err_leaf, &err_subleaf, &err_msr);
-    if ( rc )
-    {
-        PERROR("Failed to set d%d's policy (err leaf %#x, subleaf %#x, msr %#x)",
-               domid, err_leaf, err_subleaf, err_msr);
-        rc = -errno;
-        goto out;
-    }
-
-    rc = 0;
-
-out:
-    free(p);
-    free(leaves);
-
-    return rc;
-}
-
 xc_cpu_policy_t xc_cpu_policy_init(void)
 {
     return calloc(1, sizeof(struct xc_cpu_policy));
diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index 539fc4869e6..cadc8b2a05e 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -423,6 +423,8 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
                         libxl_domain_build_info *info)
 {
     GC_INIT(ctx);
+    xc_cpu_policy_t policy = NULL;
+    bool hvm = info->type == LIBXL_DOMAIN_TYPE_HVM;
     bool pae = true;
     bool itsc;
     int rc;
@@ -436,6 +438,42 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
      */
     bool nested_virt = info->nested_hvm.val > 0;
 
+    policy = xc_cpu_policy_init();
+    if (!policy) {
+        LOGE(ERROR, "Failed to init CPU policy");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    rc = xc_cpu_policy_get_domain(ctx->xch, domid, policy);
+    if (rc) {
+        LOGE(ERROR, "Failed to fetch domain %u CPU policy", domid);
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    /*
+     * Account for feature which have been disabled by default since Xen 4.13,
+     * so migrated-in VM's don't risk seeing features disappearing.
+     */
+    if (restore) {
+        rc = xc_cpu_policy_make_compatible(ctx->xch, policy, hvm);
+        if (rc) {
+            LOGE(ERROR, "Failed to setup compatible CPU policy for domain  %u",
+                 domid);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+    }
+
+    rc = xc_cpu_policy_legacy_topology(ctx->xch, policy, hvm);
+    if (rc) {
+        LOGE(ERROR, "Failed to setup CPU policy topology for domain  %u",
+             domid);
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
     /*
      * For PV guests, PAE is Xen-controlled (it is the 'p' that differentiates
      * the xen-3.0-x86_32 and xen-3.0-x86_32p ABIs).  It is mandatory as Xen
@@ -446,8 +484,15 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
      *
      * HVM guests get a top-level choice of whether PAE is available.
      */
-    if (info->type == LIBXL_DOMAIN_TYPE_HVM)
+    if (hvm)
         pae = libxl_defbool_val(info->u.hvm.pae);
+    rc = libxl_cpuid_parse_config(&info->cpuid, GCSPRINTF("pae=%d", pae));
+    if (rc) {
+        LOG(ERROR, "Unable to set PAE CPUID flag: %d", rc);
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
 
     /*
      * Advertising Invariant TSC to a guest means that the TSC frequency won't
@@ -463,12 +508,46 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
      */
     itsc = (libxl_defbool_val(info->disable_migrate) ||
             info->tsc_mode == LIBXL_TSC_MODE_ALWAYS_EMULATE);
+    rc = libxl_cpuid_parse_config(&info->cpuid, GCSPRINTF("invtsc=%d", itsc));
+    if (rc) {
+        LOG(ERROR, "Unable to set Invariant TSC CPUID flag: %d", rc);
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    /* Set Nested virt CPUID bits for HVM. */
+    if (hvm) {
+        rc = libxl_cpuid_parse_config(&info->cpuid, GCSPRINTF("vmx=%d",
+                                                              nested_virt));
+        if (rc) {
+            LOG(ERROR, "Unable to set VMX CPUID flag: %d", rc);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+
+        rc = libxl_cpuid_parse_config(&info->cpuid, GCSPRINTF("svm=%d",
+                                                              nested_virt));
+        if (rc) {
+            LOG(ERROR, "Unable to set SVM CPUID flag: %d", rc);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+    }
+
+    /* Apply the bits from info->cpuid if any. */
+    rc = xc_cpu_policy_apply_cpuid(ctx->xch, policy, info->cpuid, hvm);
+    if (rc) {
+        LOGE(ERROR, "Failed to apply CPUID changes");
+        rc = ERROR_FAIL;
+        goto out;
+    }
 
-    rc = xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0,
-                               pae, itsc, nested_virt, info->cpuid);
+    rc = xc_cpu_policy_set_domain(ctx->xch, domid, policy);
     if (rc)
-        LOGE(ERROR, "Failed to apply CPUID policy");
+        LOGE(ERROR, "Failed to set domain %u CPUID policy", domid);
 
+ out:
+    xc_cpu_policy_destroy(policy);
     GC_FREE;
     return rc ? ERROR_FAIL : 0;
 }
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:04:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:04:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109846.209745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJe6-0006r0-DV; Tue, 13 Apr 2021 14:04:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109846.209745; Tue, 13 Apr 2021 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 1lWJe6-0006qs-8V; Tue, 13 Apr 2021 14:04:02 +0000
Received: by outflank-mailman (input) for mailman id 109846;
 Tue, 13 Apr 2021 14:04:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=51M0=JK=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWJe4-0006oj-KM
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:04:00 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a1dd7163-05d5-4bdb-a40b-534c9a1db758;
 Tue, 13 Apr 2021 14:03: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: a1dd7163-05d5-4bdb-a40b-534c9a1db758
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618322639;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=QzwwOkwqoS7FecsC8ab+hi6QGGGojhwL/w3/xIfFNS0=;
  b=d4ngdGa3rC9mqAEwYFODP5VHYeWvi6oNDwuzdKdXDK7xpOl0DgYxl0yv
   vknCFL5mf5Q40GDBjds9DMIN2MYr95cT+fv/TK2J+2omyO8NAWOcmkS95
   clLfyYGqt9uKOqlfu5TOQFtSCHI94GNw4SOSYnh9MqyG734N9AbFoRLIh
   o=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 801o5y8ArO4H+IwmsY+XelcXNY+C/snEXWlqK4dzbAL5TtOhFEToh7BTJWgcYlzYB5Blf+PVdl
 zTR4KnyAPF06hlJxfdB6XMQrDTr/dKZ3loG/Xtr1Bb0mdAlbYc7hntdUeX4PyE/ODRSq7LZu24
 IO1NTq17J3res4E6F6jI2KQLvMT+pwCMMDltUAQRaGHhS3OuFJ/1zZcA1Jh4ACMok0HGwgiVR/
 g+aKfggyIcfHarlLqNyWihJAov6dVmIxz/TOclOqBrWA/Ycze8VjZyfkEkdgM7na3AaLQqShV+
 jNY=
X-SBRS: 5.2
X-MesageID: 41322512
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:2x3PWa4k8s2QDmvRuQPXwTqFI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoewK+ybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIU3D38Zn/+
 Nbf6B6YeeQMXFTh8z3+RT9Nt4mzsWO/qzAv5au815GZ2hRGthdxi1+DRuWFVAzYQFAC4YwGp
 b03Ls2mxOLf3MLYsOnQkQURuSrnayKqLvKQz4jQyQm5g6HkC+y5NfBYnql9zoXTj8n+8ZezU
 HriAr8j5/T1M2T6hiZ7GPL6oQTpd2J8Ko8OOWpquw4bgrhkRypYoMJYczAgBkQrPu04Fgn1P
 ngyi1QQ/hb0H/acmGrrRaF4WCJu1pAhQ6GuDulqEDursDjSDUxB9Apv/MnTjLi90EisNtguZ
 g7p16xiptNARvM2AT76tTYPisa7HacnHs4neYfy0FYSIsVAYUh1rA3wUU9KuZnIAvKrKwXOs
 xHLOXx37JzXBexSVf3nkcH+q3xYl0DWjO9BmQSsM2c1DZb2FpjyVED+cAZlnAcsLogVpht/Y
 3/Q+ZVvYALavVTQbN2Be8HT8fyIHfKWwjwPGWbJkmiPL0bOkjKt4X87NwOlaSXUa1N6KF3tI
 XKUVteu2J3UVnpE9ey0JpC9Q2IZ2mhQzL3yIV764JisrPxAJrnWBfzDGwGoo+FmbEyE8fbU/
 G8NNZ9GPn4N1bjHo5PwknwQJ9XJX4CUNAEu9oyVl6Uy/i7bLHCh6j+SrL+NbDtGTErVifUGX
 0YRgX+I81G8wSqVxbD8UHsckKoXna60YN7EaDc8eRW4pMKLJdwvg8cjkn84smKLDZFo7EnZU
 cWGsK+roqL4U2NuUrY5WRgPRRQSmxP5q/7bn9MrQgWd0XucbgCvN2bcXtI3GSOIwJ+S8++Kn
 8Zm31HvYaMa7CAzyErDNyqdkiAiWEImX6MR5AA3rGY6dz9YZM+BJY+UKl3HQHGfiYFwjpCmS
 NmUkspV0XfHjThheGZl5QSHvjYbMQ5qhysO9RopXXWsli8qckjSmAAZSOnVdeajG8VNmBpr2
 w015VaobKb3R6zNGM0gY0DQS5xQVXSJIgDMSOoS8F/nKvxdAR5UGGQ7Abq+S0bSy7N7EUdhm
 voMCuOX+rEa2At50xw4+LW1BddTCGwRHgYUAEkjaRNUVnj/lt+1O+VarH26WuebVMe3voQWQ
 u1Mwc6E0dS45SS/D6x3A2vP1kH+bkCetH8KJhLSdvu80LoFanNsYknOrtpwLZJXeqCjsY7Fd
 +6UzW4aBfxFukp1wGvhltNAlgllFAU1c7N8CfIqFO1xmI7HJPpUQVbboBeHvW11UShePqSyp
 V+irsOzLWNG1S0V/qv842SXhBuDTn3h1KaJttY+qx8tb4utbd1ApnQWSbJ0nYCxxklMMLoji
 olMdFGyaGENYl1c8MIfSVFulIvidSUNUMu9hf7G+kkYDgW/jDmFsLM57rDsrw0BEKd4AP2JF
 mE6iVYls21EherxPofC6gqJ35RZ1V54HN+/Pmaf4mVDAmxbelM8B67NXC6GYUtBJStCPEVrh
 xg5cuPkPLSfy3k2BrItT8+O7lQ6Q+cMIuPKRPJHfQN/82xOFyKjKfv6MmvjC3vQT/+b0gDn4
 VKeUEZc8wrsEhtsKQnliypDqDnqEMslFVTpStqkVPgwYCq6mbWF0MuC3ySvrxGGT1IdnSYh8
 XM9uaVkGnn6D9ewJ/ZCQNeeMpNF9V4dPm3Ew5+bcwL+Lim8Kokjn4dPFMgD2sghCv82O0j17
 Gjw/nWU/DjD3CtOV9pw08yOqdk2igw7WdHeIyi6Jj4ZAMdHOsBGeE+6YBbiygBkCm503QMKx
 F28hU13YTMJEH9N3tyFaLyjZL76SJo05Sq+hlrvjFMgVuph1GXpkjtk8u0s3QyqXfBrgUPk9
 TVeBIhxCBDtgBmxqR9Mn2CFW70KEn1RG/K8A==
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41322512"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aWdJ2DwP8uIgdlJmVhozPuTRRWQ8SLY3fdwVH14LYUa3vN2apBJKg9mFOpF3gBZhnIfa5dMXsnT+iMyRKtV4wbZMyrZdNlXxs67dqAOS3ToK4RBzC1ohQfYWAdE6gLNpLxG3Rtq7sLYRH02XUDagwubqfmL40cOTUoLFo+GEIzGfdXcS627/y+HBSEhcW8/EYiynhIHE+pc7C6966cV8phEyqnkjpHdjNxlXf9WFixJJph12Ad94TwUI1laOlTJuwaDsoKNdl/BVEJ1QgXxHrA/+PIPGEMblE+9uJuPUTNxx7jAe+yF0KTF7XJLSxcolOLTa/IPlVpW7CEPZK2ZgvA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4Zx32cQTy4/2mKyZxLklN9EMm3hZTZZ5DreDlJpjcSA=;
 b=OK99UAP8k8ah3pMc43IR3IzuExZwFtzCS/pWH4MKblK0Tos+WiYzXn7PbXfXwcSa6lyxiDuyP2hNIrTHaoh25Wo8yj3DTAFZKU0WBvoRqXg+C3bXnrKbFMrxlLgL8AqnhTSvkq310BvDBVA7ReV62hgcANuXfVzLmqHNROzCUP9BX5UqblYOAMOfa7kUmQmX0Au2YlN4dBwHjmk2txZH3DBOPyYO/et0tDAzea2pND5qFbtDhpiXp27isSLlj4djRkapEeVIexaBKaZgJ5wGXWe7xmFM7YOJdzdei2kVVC+MmftUv3YvfHjOJAV2XI4fTwdKvXoBSDgmvSFM8cZHsA==
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=4Zx32cQTy4/2mKyZxLklN9EMm3hZTZZ5DreDlJpjcSA=;
 b=LcfVD4gILPZz5yOqcvX5q3DuG5XTuoG9alF6oGgxlfZjyLYuFPgv5fRlc3TE7PfPSouwqRVDzG3AKUheE5kV2LILKDJekXRp9EyqXOpeP/6t56KxTLOSP5PZZX/7j9nEbWfG2xS+Y0l+SGbU4hcK8HnYHXw10WijR3L4NaKtFT4=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v2 21/21] libs/guest: (re)move xc_cpu_policy_apply_cpuid
Date: Tue, 13 Apr 2021 16:01:39 +0200
Message-ID: <20210413140140.73690-22-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210413140140.73690-1-roger.pau@citrix.com>
References: <20210413140140.73690-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0063.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::27) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 27ab9fdf-274d-4f2e-da52-08d8fe84f961
X-MS-TrafficTypeDiagnostic: DS7PR03MB5605:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB56056E6278E4ED77DF4B69328F4F9@DS7PR03MB5605.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:272;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: LlUfZdAJqmO4QlEL5nF4y6iBRXrNLZMAxE5c9mSijVrh1fiRnD04KQabjZY6RAAKyS4wdZ32gifPJZ7+9zG2fzxx4LhPjAyWd+3DwI/CRLOowPCB5EOOLCKzuikWAXgYK8BhyD6jWlbq1yT24qYbHFcSjjFETX+rm2RCRaA/Poe7XTMHDFjIxuG4WSUMD2QlugJfaXiTEqdLxppf8R7j5UcKB/cLFNM++sO8EO70QgAy0VUPh+4GNZCaGRaQ/ulV6wdsBRbKGq8+A3jUU6yqw8in4PjMmjFVqreUlWdqxyn/spSskD3NPv1qWadWQJZ7s5SPEH7VC1sEdIcR/oNo3iFfFnClLV8QUGQDZGOj50HOySXaqKNv6kPKArfj5zmOrKKyi+0pMzgroNadPGguZ0w1T2E+QpDNLL5Hqh80Ci/mlQ2CYnv3Tnda7hXvUYIMmsjwW9xqUio6s7seJm+v/lpaN3bpmEc2LQEWPml8iDGb58/0Q9axdD7xSIEx1d614RIWUgBZAoaToXleoacqz/oTUxnqCeDcVLdMtKChfH51rJW85SEcxgtVioXDUTgVAQYCxMNn+16v+Z6KxNbt5g==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39850400004)(136003)(346002)(396003)(376002)(366004)(1076003)(6916009)(38100700002)(86362001)(478600001)(6496006)(6666004)(107886003)(2906002)(30864003)(83380400001)(956004)(26005)(66946007)(66556008)(66476007)(2616005)(16526019)(54906003)(36756003)(4326008)(8676002)(6486002)(8936002)(5660300002)(186003)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?9lj6bpj/xlsbYpjXvDrR/d+wy40Y5PBDFWmnKpe?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 27ab9fdf-274d-4f2e-da52-08d8fe84f961
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:03:54.8063
 (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: e0HOU1kVmtq6C/VQbTVYNrLsmqp9zGHyBmtdOfyme1Z2C8YFCZpWvdjAk8OdV/3+cOrkfeHcTs3eVRxg33V0Mw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5605
X-OriginatorOrg: citrix.com

Move the logic from xc_cpu_policy_apply_cpuid into libxl, now that the
xc_cpu_policy_* helpers allow modifying a cpu policy. By moving such
parsing into libxl directly we can get rid of xc_xend_cpuid, as libxl
will now implement it's own private type for storing CPUID
information, which currently matches xc_xend_cpuid.

Note the function logic is moved as-is, but requires adapting to the
libxl coding style.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/libxl.h             |   6 +-
 tools/include/xenctrl.h           |  30 -------
 tools/libs/guest/xg_cpuid_x86.c   | 125 ---------------------------
 tools/libs/light/libxl_cpuid.c    | 136 +++++++++++++++++++++++++++++-
 tools/libs/light/libxl_internal.h |  26 ++++++
 5 files changed, 162 insertions(+), 161 deletions(-)

diff --git a/tools/include/libxl.h b/tools/include/libxl.h
index ae7fe27c1f2..150b7ba85ac 100644
--- a/tools/include/libxl.h
+++ b/tools/include/libxl.h
@@ -1375,10 +1375,10 @@ void libxl_bitmap_init(libxl_bitmap *map);
 void libxl_bitmap_dispose(libxl_bitmap *map);
 
 /*
- * libxl_cpuid_policy is opaque in the libxl ABI.  Users of both libxl and
- * libxc may not make assumptions about xc_xend_cpuid.
+ * libxl_cpuid_policy is opaque in the libxl ABI. Users of libxl may not make
+ * assumptions about libxl__cpuid_policy.
  */
-typedef struct xc_xend_cpuid libxl_cpuid_policy;
+typedef struct libxl__cpuid_policy libxl_cpuid_policy;
 typedef libxl_cpuid_policy * libxl_cpuid_policy_list;
 void libxl_cpuid_dispose(libxl_cpuid_policy_list *cpuid_list);
 int libxl_cpuid_policy_list_length(const libxl_cpuid_policy_list *l);
diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index c6ee1142e8e..044d05321a3 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -1864,32 +1864,6 @@ int xc_domain_debug_control(xc_interface *xch,
 
 #if defined(__i386__) || defined(__x86_64__)
 
-/*
- * CPUID policy data, expressed in the legacy XEND format.
- *
- * Policy is an array of strings, 32 chars long:
- *   policy[0] = eax
- *   policy[1] = ebx
- *   policy[2] = ecx
- *   policy[3] = edx
- *
- * The format of the string is the following:
- *   '1' -> force to 1
- *   '0' -> force to 0
- *   'x' -> we don't care (use default)
- *   'k' -> pass through host value
- *   's' -> legacy alias for 'k'
- */
-struct xc_xend_cpuid {
-    union {
-        struct {
-            uint32_t leaf, subleaf;
-        };
-        uint32_t input[2];
-    };
-    char *policy[4];
-};
-
 int xc_mca_op(xc_interface *xch, struct xen_mc *mc);
 int xc_mca_op_inject_v2(xc_interface *xch, unsigned int flags,
                         xc_cpumap_t cpumap, unsigned int nr_cpus);
@@ -2617,10 +2591,6 @@ int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
 int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
                                   bool hvm);
 
-/* Apply an xc_xend_cpuid object to the policy. */
-int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
-                              const struct xc_xend_cpuid *cpuid, bool hvm);
-
 /* Apply a featureset to the policy. */
 int xc_cpu_policy_apply_featureset(xc_interface *xch, xc_cpu_policy_t policy,
                                    const uint32_t *featureset,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 70ca4939392..5144b186028 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -288,131 +288,6 @@ static xen_cpuid_leaf_t *find_leaf(
     return bsearch(&key, leaves, nr_leaves, sizeof(*leaves), compare_leaves);
 }
 
-int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
-                              const struct xc_xend_cpuid *cpuid, bool hvm)
-{
-    int rc;
-    xc_cpu_policy_t host = NULL, def = NULL;
-
-    host = xc_cpu_policy_init();
-    def = xc_cpu_policy_init();
-    if ( !host || !def )
-    {
-        PERROR("Failed to init policies");
-        rc = -ENOMEM;
-        goto out;
-    }
-
-    /* Get the domain type's default policy. */
-    rc = xc_cpu_policy_get_system(xch, hvm ? XEN_SYSCTL_cpu_policy_hvm_default
-                                           : XEN_SYSCTL_cpu_policy_pv_default,
-                                  def);
-    if ( rc )
-    {
-        PERROR("Failed to obtain %s def policy", hvm ? "hvm" : "pv");
-        goto out;
-    }
-
-    /* Get the host policy. */
-    rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host);
-    if ( rc )
-    {
-        PERROR("Failed to obtain host policy");
-        goto out;
-    }
-
-    rc = -EINVAL;
-    for ( ; cpuid->leaf != XEN_CPUID_INPUT_UNUSED; ++cpuid )
-    {
-        xen_cpuid_leaf_t cur_leaf;
-        xen_cpuid_leaf_t def_leaf;
-        xen_cpuid_leaf_t host_leaf;
-
-        rc = xc_cpu_policy_get_cpuid(xch, policy, cpuid->leaf, cpuid->subleaf,
-                                     &cur_leaf);
-        if ( rc )
-        {
-            ERROR("Failed to get current policy leaf %#x subleaf %#x",
-                  cpuid->leaf, cpuid->subleaf);
-            goto out;
-        }
-        rc = xc_cpu_policy_get_cpuid(xch, def, cpuid->leaf, cpuid->subleaf,
-                                     &def_leaf);
-        if ( rc )
-        {
-            ERROR("Failed to get def policy leaf %#x subleaf %#x",
-                  cpuid->leaf, cpuid->subleaf);
-            goto out;
-        }
-        rc = xc_cpu_policy_get_cpuid(xch, host, cpuid->leaf, cpuid->subleaf,
-                                     &host_leaf);
-        if ( rc )
-        {
-            ERROR("Failed to get host policy leaf %#x subleaf %#x",
-                  cpuid->leaf, cpuid->subleaf);
-            goto out;
-        }
-
-        for ( unsigned int i = 0; i < ARRAY_SIZE(cpuid->policy); i++ )
-        {
-            uint32_t *cur_reg = &cur_leaf.a + i;
-            const uint32_t *def_reg = &def_leaf.a + i;
-            const uint32_t *host_reg = &host_leaf.a + i;
-
-            if ( cpuid->policy[i] == NULL )
-                continue;
-
-            for ( unsigned int j = 0; j < 32; j++ )
-            {
-                bool val;
-
-                switch ( cpuid->policy[i][j] )
-                {
-                case '1':
-                    val = true;
-                    break;
-
-                case '0':
-                    val = false;
-                    break;
-
-                case 'x':
-                    val = test_bit(31 - j, def_reg);
-                    break;
-
-                case 'k':
-                case 's':
-                    val = test_bit(31 - j, host_reg);
-                    break;
-
-                default:
-                    ERROR("Bad character '%c' in policy[%d] string '%s'",
-                          cpuid->policy[i][j], i, cpuid->policy[i]);
-                    goto out;
-                }
-
-                clear_bit(31 - j, cur_reg);
-                if ( val )
-                    set_bit(31 - j, cur_reg);
-            }
-        }
-
-        rc = xc_cpu_policy_update_cpuid(xch, policy, &cur_leaf, 1);
-        if ( rc )
-        {
-            PERROR("Failed to set policy leaf %#x subleaf %#x",
-                   cpuid->leaf, cpuid->subleaf);
-            goto out;
-        }
-    }
-
- out:
-    xc_cpu_policy_destroy(def);
-    xc_cpu_policy_destroy(host);
-
-    return rc;
-}
-
 xc_cpu_policy_t xc_cpu_policy_init(void)
 {
     return calloc(1, sizeof(struct xc_cpu_policy));
diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index cadc8b2a05e..6be2d773d1d 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -291,7 +291,7 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str)
     char *sep, *val, *endptr;
     int i;
     const struct cpuid_flags *flag;
-    struct xc_xend_cpuid *entry;
+    struct libxl__cpuid_policy *entry;
     unsigned long num;
     char flags[33], *resstr;
 
@@ -369,7 +369,7 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
     char *endptr;
     unsigned long value;
     uint32_t leaf, subleaf = XEN_CPUID_INPUT_UNUSED;
-    struct xc_xend_cpuid *entry;
+    struct libxl__cpuid_policy *entry;
 
     /* parse the leaf number */
     value = strtoul(str, &endptr, 0);
@@ -419,6 +419,136 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
     return 0;
 }
 
+static int apply_cpuid(libxl_ctx *ctx, xc_cpu_policy_t policy,
+                       libxl_cpuid_policy_list cpuid, bool hvm)
+{
+    GC_INIT(ctx);
+    int rc;
+    xc_cpu_policy_t host = NULL, def = NULL;
+
+    host = xc_cpu_policy_init();
+    def = xc_cpu_policy_init();
+    if (!host || !def) {
+        LOG(ERROR, "Failed to init policies");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    /* Get the domain type's default policy. */
+    rc = xc_cpu_policy_get_system(ctx->xch,
+                                  hvm ? XEN_SYSCTL_cpu_policy_hvm_default
+                                      : XEN_SYSCTL_cpu_policy_pv_default,
+                                  def);
+    if (rc) {
+        LOGE(ERROR, "Failed to obtain %s def policy", hvm ? "hvm" : "pv");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    /* Get the host policy. */
+    rc = xc_cpu_policy_get_system(ctx->xch, XEN_SYSCTL_cpu_policy_host, host);
+    if (rc) {
+        LOGE(ERROR, "Failed to obtain host policy");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    for (; cpuid->leaf != XEN_CPUID_INPUT_UNUSED; ++cpuid) {
+        xen_cpuid_leaf_t cur_leaf;
+        xen_cpuid_leaf_t def_leaf;
+        xen_cpuid_leaf_t host_leaf;
+
+        rc = xc_cpu_policy_get_cpuid(ctx->xch, policy, cpuid->leaf,
+                                     cpuid->subleaf, &cur_leaf);
+        if (rc) {
+            LOGE(ERROR, "Failed to get current policy leaf %#x subleaf %#x",
+                 cpuid->leaf, cpuid->subleaf);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+        rc = xc_cpu_policy_get_cpuid(ctx->xch, def, cpuid->leaf, cpuid->subleaf,
+                                     &def_leaf);
+        if (rc) {
+            LOGE(ERROR, "Failed to get def policy leaf %#x subleaf %#x",
+                 cpuid->leaf, cpuid->subleaf);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+        rc = xc_cpu_policy_get_cpuid(ctx->xch, host, cpuid->leaf,
+                                     cpuid->subleaf, &host_leaf);
+        if (rc) {
+            LOGE(ERROR,"Failed to get host policy leaf %#x subleaf %#x",
+                 cpuid->leaf, cpuid->subleaf);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+
+        for (unsigned int i = 0; i < ARRAY_SIZE(cpuid->policy); i++)
+        {
+            uint32_t *cur_reg = &cur_leaf.a + i;
+            const uint32_t *def_reg = &def_leaf.a + i;
+            const uint32_t *host_reg = &host_leaf.a + i;
+
+            if (cpuid->policy[i] == NULL)
+                continue;
+
+#define test_bit(i, r) !!(*(r) & (1u << (i)))
+#define set_bit(i, r) (*(r) |= (1u << (i)))
+#define clear_bit(i, r)  (*(r) &= ~(1u << (i)))
+            for (unsigned int j = 0; j < 32; j++) {
+                bool val;
+
+                switch (cpuid->policy[i][j]) {
+                case '1':
+                    val = true;
+                    break;
+
+                case '0':
+                    val = false;
+                    break;
+
+                case 'x':
+                    val = test_bit(31 - j, def_reg);
+                    break;
+
+                case 'k':
+                case 's':
+                    val = test_bit(31 - j, host_reg);
+                    break;
+
+                default:
+                    LOG(ERROR,"Bad character '%c' in policy[%d] string '%s'",
+                        cpuid->policy[i][j], i, cpuid->policy[i]);
+                    rc = ERROR_FAIL;
+                    goto out;
+                }
+
+                clear_bit(31 - j, cur_reg);
+                if (val)
+                    set_bit(31 - j, cur_reg);
+            }
+#undef clear_bit
+#undef set_bit
+#undef test_bit
+        }
+
+        rc = xc_cpu_policy_update_cpuid(ctx->xch, policy, &cur_leaf, 1);
+        if ( rc )
+        {
+            LOGE(ERROR,"Failed to set policy leaf %#x subleaf %#x",
+                 cpuid->leaf, cpuid->subleaf);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+    }
+
+ out:
+    xc_cpu_policy_destroy(def);
+    xc_cpu_policy_destroy(host);
+    GC_FREE;
+    return rc;
+}
+
 int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
                         libxl_domain_build_info *info)
 {
@@ -535,7 +665,7 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
     }
 
     /* Apply the bits from info->cpuid if any. */
-    rc = xc_cpu_policy_apply_cpuid(ctx->xch, policy, info->cpuid, hvm);
+    rc = apply_cpuid(ctx, policy, info->cpuid, hvm);
     if (rc) {
         LOGE(ERROR, "Failed to apply CPUID changes");
         rc = ERROR_FAIL;
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index 5709bcb93fa..d130c073ac4 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -2050,6 +2050,32 @@ typedef yajl_gen_status (*libxl__gen_json_callback)(yajl_gen hand, void *);
 _hidden char *libxl__object_to_json(libxl_ctx *ctx, const char *type,
                                     libxl__gen_json_callback gen, void *p);
 
+/*
+ * CPUID policy data, expressed in the internal libxl format.
+ *
+ * Policy is an array of strings, 32 chars long:
+ *   policy[0] = eax
+ *   policy[1] = ebx
+ *   policy[2] = ecx
+ *   policy[3] = edx
+ *
+ * The format of the string is the following:
+ *   '1' -> force to 1
+ *   '0' -> force to 0
+ *   'x' -> we don't care (use default)
+ *   'k' -> pass through host value
+ *   's' -> legacy alias for 'k'
+ */
+struct libxl__cpuid_policy {
+    union {
+        struct {
+            uint32_t leaf, subleaf;
+        };
+        uint32_t input[2];
+    };
+    char *policy[4];
+};
+
 _hidden int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool retore,
                                 libxl_domain_build_info *info);
 
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:23:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:23:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109900.209765 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJwg-0000oY-E0; Tue, 13 Apr 2021 14:23:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109900.209765; Tue, 13 Apr 2021 14: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 1lWJwg-0000oR-Ak; Tue, 13 Apr 2021 14:23:14 +0000
Received: by outflank-mailman (input) for mailman id 109900;
 Tue, 13 Apr 2021 14:23:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UdUp=JK=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWJwf-0000oM-CT
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:23:13 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cb2e5442-f87f-4488-b876-1a7d01c1e3ad;
 Tue, 13 Apr 2021 14:23: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: cb2e5442-f87f-4488-b876-1a7d01c1e3ad
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618323791;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=ZdSNRhbCrabpYJb6OC8w0j5IxVxsEzH5aLwmt+cxV88=;
  b=LxibjYnXTHxZUBdYLNApdeupBiGe+L36p1UhsD7xIYOb013/DhkHdNpn
   ilpQo2WMJTxpJ9orxgD3kLBjIiI5s+8VXPdMoNnNoNGt3VBcbdVBbYDf2
   k8YbMd2mqBwBw6drzImThggMoQGJ8Tm/i249o71CmJhqNkL25koFyi7bf
   U=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: jIf+hu8lSZVODWZ4zgLvB+FzJEmeoL3JsQZNA84ob0IldinlyrATi05x9cZE9jQvpTZZxqromY
 t2pZNu4fumX+kLllCqhJLT2I2n8sMm+0h0sPSFDCBpLTjTIn5ZUIVI6n/IN3dPsqGDJsGUGFZt
 HeP34xoPmwnQnp3MX7cW+AmvENJKuFtyMO6HvHscjEbH06yRipSfj9kwNS5JsLP550BclFtYCG
 e4VIAyMKXv+9APjX7IS81k1ot70JMfWbEuGep2RwkbqlNuu3yJVX2CRLRwLVFHrIYq+KnhNa6S
 64Q=
X-SBRS: 5.2
X-MesageID: 41869228
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:aYMfDK47f+S0LwvHeAPXwWWEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4dHJ
 2T+sJIq1ObCAsqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+HLzGz2BACXzRThYoz6G
 StqX2F2oyPkdGejiXd2Wja8ohMlLLapOdrKcSQhqEuW03RoymyYoAJYczlgBkUp6WV5E8ugJ
 3wpX4bTr5OwlfwWk3wnhf3wQnn118Vmgzf4HuVm2Hqr8C8ZB9SMbs5uatjfhHU61UtsbhHuc
 ohtQLp1OsjMTr6kCvw/NTOXR1x/3DExkYKquIPk2dZFbIXdb45l/1uwGpuDJwCECjmgbpXct
 VGMce03ocyTXqndXzD+kFgzNuwN05DZSuucwwpv8yY1CVuh3Zpz0cU79x3pAZwyLsND7ZD/O
 jKKaJuifVnSdIXd7t0AKM7TdKwEXGle2OCDEuiZXDcUI0XMXPErJD6pJ0z+eGRYZQNiL8/go
 7IXl90vXM7EnieR/Gm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uu9HImYRdPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFOUIp9cAXU6UqM6jEPyrisXrNNLoYJb9GzctXW3yRl
 EZWiLoGclG5ke3HlDihhz8XG7sZ1zf8Zp8HLOyxZlX9KE9cql39iQFg1Ww4c+GbRdYtLYtQU
 d4KLT71oO3zFPGuVrg3iFMAF5wH0xV6LLvXzdhvgkRKX75dr4FppG6cWBW132XGw9nQ6rtYU
 lijmUy3ZjyA42bxCgkBd7iGHmdlWEvqHWDSIpZvaGf+8H/eNcdAow9UKJ8USXHfiYF2DpCmS
 NmUkspV0XfHjThheGOl5oPHtzScNF6nUOMOs5bqXXWsG2GvsExTn4nXzqjOPTnwzoGdn5xvB
 lc4qUfiL2PlXKEMm0kmtk1N1VKdSCqGr5cNR+EY49Vg7jvXwl1QQ6x9HqnoiB2XlCv21QZh2
 TnIyHRXf3QGFJStkpV1bvQ/Epuen+QeF9xbX5GoZRwfF62yEpb4KuuXO6ewmGRYlwNzqUmPD
 bJbSA7Dyluy9q0vSTl0gqqJDED/NEDL+bdBLMsf/XvwXurMpSPjrxDNeRT5oxZONfntfIrXe
 qTdxSOFi7xD/ok1mWu1y8YERgxjENhveLj2RXj4mT94WU2BuDKJk96A54cONOR4gHfNr+1+a
 Q8qehwm+S+Mm/8MIHbjY7WaiNOMRPVryqdSfoypZVdoKI1s/9SEvDgIEz1/UAC+C97CsH+0H
 46auBcxpvqP4d0Zcwcey5D5DMS5Z+yBXpuljazO/M0eFEmsmTSMNyI6YfZsLZHODz0mCLAfX
 2ktxBH9/jLXyG/xacXJqI5L2NRclU94h1ZjZW/XryVLAWhbOdY+lWmdle7bb9GUaCAcI9g4y
 pS0pWtn+WNcTD/1x2VlTxnIrhW+2LiZc+pGgqDFapp9NO9UG78zpeC0YqWjD3tTyG8ZFldrY
 pZdVYIZsAGswIctuQMo2CPY52yhFkknVtY6SxmkVCo+rHO2hakIWh2dSvDgptXWjFPNGOvls
 qty5nB6EjA
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41869228"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cPP8/KZliPksjvx7gwOdjcRMTaoNq78OlIILuYPFqpCkRwIkp1iQEP3do3OI0qwk+5v7qLWJEQANMJ2Kr2xAB2TpoPmPL+dFeLOlyBsSDD3AvLjdpt3B7muZvxqP1QlYTgmOSp9pdvq7XekBsLRQBxYJvMujb1EeNhyaTfxMdeGYjYfRm3YOX97FnU5aTayhbhj7Tls//EE/p2bQJWjk8efIU44FGWrPvIlFLAiBe3VhFmd9XIZFppcD92RAQczwpYQe197BlxzpQbHN9Qd9qOSK06vYfrYlxDhPQyC24U89FDFBVQTlxuYHZrVmUc63a4LQPL2dTTicjwZ37RD5cg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zcEcuGT5CzpfD8GdcPaNxvjGumol5BGSThm3KYSRq9Q=;
 b=FE8ncgMS95UBXe837rNUmEgOxGT53Mw7qrfHACym0AnJv3mnF6Jf3WeVD25L1BMh1YM4EV6cJu/sS7o9Xf/Y54PlS8/TFwwQxDluIFqUR2N2XlxirW8gIOve2F+PSGkAOHS9KKuTqDIpG55Lnq368C+JZ9xPhHNPaZzTyi0iHyOLeMTJXjgPlwK2xtZL3ycvVWmeMp7lp9oSt3CKUIo+TOSLogQ6MsMYsYoXPPlyZcbpJV6zt3Rt0ckgkjRek8Nj6zdrj0E5JSIP9t5i8Q6quqgON3H+h9FHVPGP5m6VEM8dCSXFR42FtlMLnjeS+zM9Mtsn34fh8BsPnyfUvh1SEQ==
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=zcEcuGT5CzpfD8GdcPaNxvjGumol5BGSThm3KYSRq9Q=;
 b=HEpKotszhxE6z0seXsvDVikqCLafzu+PtFr/AeJp43dvdGg8Ypj75gdtIPXK9+KwZrKRamAsLwI5qpvZ3Mz1iYjB9o3J/BQ5vdvkErDcTqQGQWlGWP/AjJhf81WCq0CZfMqyVwew1hI/zlb339nWw89RzavsHkAl+QgkBD4TF/4=
Subject: Re: [PATCH] libxl: User defined max_maptrack_frames in a stub domain
To: Jason Andryuk <jandryuk@gmail.com>, Wei Liu <wl@xen.org>
CC: Dmitry Fedorov <d.fedorov@tabit.pro>, xen-devel
	<xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, Anthony
 PERARD <anthony.perard@citrix.com>
References: <602469f5-1028-8f36-7195-f102b6d2af0c@tabit.pro>
 <427bfd62-48c0-5859-7300-c618331b4e5a@citrix.com>
 <20200922133047.4646b2ab62cszn46@liuwe-devbox-debian-v2>
 <CAKf6xpsOfM=PSFW6sUx5yozmEji9f5t2p+5+mrpX_2cOqGBOmQ@mail.gmail.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <301e8abc-f50f-0159-a373-d9eb54f9836b@citrix.com>
Date: Tue, 13 Apr 2021 15:23:01 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <CAKf6xpsOfM=PSFW6sUx5yozmEji9f5t2p+5+mrpX_2cOqGBOmQ@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0143.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:9f::35) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c2a57abf-109f-4e0e-6302-08d8fe87a8ef
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5534:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5534275EDFA8BBC2AF68CB1DBA4F9@SJ0PR03MB5534.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 2Bp7VO6PQuCB3TDxPfPu0fHKnPeYHEAFiDMmGqLjrSo44dnthdcoAZQXoMzjh5dexlFAAAJQeVIoXyKIaXgwqhb11rrp/ZlXLDOq0eDQfp4ASIIjGQymR/G/rzTVCGS27M0OazSvo15TbkrbCeOtZYVM6mlxHLK2HsmfErHGPqI1OMvErmPi6/J4d+6EqN9Ey1f5cJKqGdoVYjxaoScgEHmEdHhD7Bjgs3wSIkXuO6jAWLpwJR2vAQLvoXdltn13S/dWBVr/dqWdL24CLQXscdNlsGavPLeYoF9PUlWfP5Y9efCGCJd7voS25jnbgx+zkcvAfQKHNXsuYSMRy8A2YDAS+tt8prqAK8ocQZHMCRNYvlVreZq9Brhf8fEwhe5+NuxZnPdH9/wi6ofRljf6ae0V0roOXdsXqDwdgJdQK98rpM8+dhOPy2lakM0O07FxuuE6D4NvbFAl2q2gu7Upzr3MRZL3isB1tTmrX6FQXzBvX8vYmCE2jR5X28YHr8107GCurDuESEGQUy4H5FsOyAWweDITMbx1GRo1RhcGQM8z7+shcmDGvFXqC//h252F8Mny4wPCtglqihgXc+OmL59jqaqVsYDG1n9Dip27rOsUgbFDpSm8Q4AbL2Rcz6XCcyVqiioCa4Fl5GhtHZRLJTQgk42GkQxnu7Ad3uzSZFluxxiZAwvezpiPAJ0OY5Tl35ElkeAZ+L+TlGHkuTxgNv1kh5613zZqlR2LcvEvH1xlJsBiWMMbswA5izp2IDs/360QQ90hrDIRttmPyGDgpQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(366004)(376002)(39850400004)(396003)(54906003)(8936002)(316002)(86362001)(6666004)(6486002)(16526019)(107886003)(66556008)(966005)(31686004)(186003)(956004)(66946007)(110136005)(2906002)(26005)(5660300002)(2616005)(53546011)(38100700002)(4326008)(83380400001)(8676002)(31696002)(478600001)(16576012)(36756003)(66476007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?SuEiBVqhH8EaQzjA0Ny/mpQ2nRL8WIz6wrFEpqg?=
X-MS-Exchange-CrossTenant-Network-Message-Id: c2a57abf-109f-4e0e-6302-08d8fe87a8ef
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 14:23:08.4384
 (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: 5U7vjxVcPlk5u3O6vF912GsgayeYEuSmlpF5fmP7wFMtzrTMYWOLxl/ySSOOhKzKmelAdPe2UZOXyGcFcpNEHwlgvNMYNNUynjI6u7ZrLQ8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5534
X-OriginatorOrg: citrix.com

On 10/04/2021 16:55, Jason Andryuk wrote:
> On Tue, Sep 22, 2020 at 9:31 AM Wei Liu <wl@xen.org> wrote:
>> On Mon, Sep 14, 2020 at 04:27:45PM +0100, Andrew Cooper wrote:
>>> On 14/09/2020 15:50, Dmitry Fedorov wrote:
>>>> Hi,
>>>>
>>>> Implementing qrexec+usbip+qemu in Linux-based stub domain leads me to
>>>> an issue where a device model stub domain doesn't have maptrack entries.
>>>>
>>>> Would it be possible to apply a user defined max_maptrack_frames value
>>>> to dm_config in the same way as for max_grant_frames?
>>>>
>>>> Signed-off-by: Dmitry Fedorov <d.fedorov@tabit.pro>
>>> This looks entirely reasonable.
>>>
>>> CC'ing the maintainers for their opinion.
>>>
>> Looks fine to me.
>>
>> Acked-by: Wei Liu <wl@xen.org>
> Hi,
>
> Wei, looks like you Acked but did not apply this patch.  And after the
> libs rename, the file paths no longer match.  Do you want to fix this
> up, or should Dmitry re-submit?

Apologies for the process failure here.

I have committed
https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=80714e55042b2242cd82eccfb7405d671ecbebda

I take it that it wants flagging for backports?

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:24:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:24:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109904.209777 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWJxS-0000uO-Nr; Tue, 13 Apr 2021 14:24:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109904.209777; Tue, 13 Apr 2021 14:24: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 1lWJxS-0000uH-KX; Tue, 13 Apr 2021 14:24:02 +0000
Received: by outflank-mailman (input) for mailman id 109904;
 Tue, 13 Apr 2021 14:24: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 1lWJxR-0000u8-Fo; Tue, 13 Apr 2021 14:24: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 1lWJxR-0004zI-Ar; Tue, 13 Apr 2021 14:24: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 1lWJxQ-0004cU-WE; Tue, 13 Apr 2021 14:24:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWJxQ-0000ZU-Vi; Tue, 13 Apr 2021 14:24: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=ksWaVBzGjZ44Hth4uxYy1BUsVXHUgem+z6rFtjxhSC0=; b=NOz877APc6re1v5dt41aeI/b/H
	Wsmnw2ZeG01A+ETPo6QEcydiEFrDqsv5sMwHBAOrpGW0ic6dQeq3POSe+PUasK6RPgkIEXiTRYmuH
	HwArN7EKt84i3NGB08Ja7AnqZB6nFlq2AlwLJo51+lXScLY6c1mJH2FInH//tZ9NF0PI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161060-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161060: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 14:24:00 +0000

flight 161060 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161060/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

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

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-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-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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   55 days
Failing since        160128  2021-03-18 14:36:18 Z   25 days   32 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   24 days   30 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 14:33:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 14:33:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109913.209792 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWK6X-0001w8-Tw; Tue, 13 Apr 2021 14:33:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109913.209792; Tue, 13 Apr 2021 14:33: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 1lWK6X-0001w1-QC; Tue, 13 Apr 2021 14:33:25 +0000
Received: by outflank-mailman (input) for mailman id 109913;
 Tue, 13 Apr 2021 14:29:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=r8mK=JK=edu.unito.it=giuseppe.eletto@srs-us1.protection.inumbo.net>)
 id 1lWK2W-0001BM-Ct
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 14:29:16 +0000
Received: from mail-lf1-x12b.google.com (unknown [2a00:1450:4864:20::12b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f95248a4-3d69-458c-9ba7-e110332bf310;
 Tue, 13 Apr 2021 14:29:13 +0000 (UTC)
Received: by mail-lf1-x12b.google.com with SMTP id b4so27663587lfi.6
 for <xen-devel@lists.xenproject.org>; Tue, 13 Apr 2021 07:29: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: f95248a4-3d69-458c-9ba7-e110332bf310
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=edu.unito.it; s=edugoogle;
        h=mime-version:from:date:message-id:subject:to:cc
         :content-transfer-encoding;
        bh=+bH+jJMHvBtlSNFwyFrwdlffGh9P8q79opdB9jmfbZI=;
        b=cnUOk6juTbg28SsNd7RWukYGTwudOJLufvh6nEbxYExbCZmWvgVXWDZB3skk6g5vAu
         xqukbH4s/evxiOI7hdxC1+7dIkK4wj80oPMM+fUQN+gottjkDtJ1mlNO7OGwcmQtLB+y
         Bw2wbP6W8Ye1zp9NPXfuZNR+LegKOsFBf8EXM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc
         :content-transfer-encoding;
        bh=+bH+jJMHvBtlSNFwyFrwdlffGh9P8q79opdB9jmfbZI=;
        b=JVHScE/fdfaFL/AGuyLNNDC2aUnE6+uhtZSXICi1OAm8BKZ+qgg6FnlL4JdVRlaHpQ
         NjLQ2EONor8ficIlhEjbgNeyUEeEp5zh3HFVDuj6z0w36tOBq//Z8SaOwnm5LGwbVICI
         CxrL0URm/Nrh8v57MltHpJ4AYmWwZHCdAQog1AsU5yVIfizrF+N4tCRvIil8UaJfLhIU
         88VQiZVHD/JGTBPkDu8PhFa6C+RBAX0/K0OnjNpDBE5BJmgD1mTySbCoQbkeYp4bV646
         43hXaMuLO6Df0CPxEfx0M4YrPg3RzOan8OFq6lEDv6sNSl3UttOUNkkYSnTCtyk6OfPC
         ozEQ==
X-Gm-Message-State: AOAM530dqJCO6PAnvZNI9jyYcZfEU7dOligoQLcWckDc+I+OIzLsSjhU
	7UHHIdjgoqF/mDnQA/UQKlVyOxOIPfMUvkCVaJ3qkhWpUaSKMF24BCgpvpkCPTN3xRiMd8z+1Ad
	0k3UEEM5BmpaDeGCncK4Ed5CVOgwQ2Qwqf2gH
X-Google-Smtp-Source: ABdhPJxF1NNfPcCtW+UbtaU9uKYYR1jdlCW68sMOR5FUQw+Z7jEjT1CkWUshPASg+njaA2sR8x81MV6WQqyiXlkXn9Q=
X-Received: by 2002:a05:6512:11e9:: with SMTP id p9mr6488422lfs.20.1618324152441;
 Tue, 13 Apr 2021 07:29:12 -0700 (PDT)
MIME-Version: 1.0
From: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>
Date: Tue, 13 Apr 2021 16:28:36 +0200
Message-ID: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
Subject: =?UTF-8?Q?A_KernelShark_plugin_for_Xen_traces_analysis_=E2=80=8B?=
To: linux-trace-devel@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: Dario Faggioli <dfaggioli@suse.com>, Enrico Bini <enrico.bini@unito.it>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello,
I want to share with you a new plugin developed by me, under the
supervision of Dario Faggioli, which allows the new version of KernelShark
(the v2-beta) to open and view the Xen traces created using the "xentrace" =
tool.

In fact, KernelShark is a well known tool for graphical visualization
Linux kernel traces, obtained via "ftrace" and "trace-cmd". Anyway thanks
to its modular architecture, it is now possible to implement plugins which
open and display traces with arbitrary format, for example, as in in
this case, traces of the Xen hypervisor.

For more information on how to build the plugin and/or
to view the source code I leave the repository below:
https://github.com/giuseppe998e/kernelshark-xentrace-plugin


In short:

$ sudo apt install git build-essential libjson-c-dev
$ git clone --recurse-submodules
https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
$ cd kernelshark-xentrace-plugin/
$ make

$ export XEN_CPUHZ=3D3G # Sets the CPU frequency ((G)hz/(M)hz/(K)hz/hz)
$ kernelshark -p out/ks-xentrace.so trace.xen


You will need the development version of KernelShark, available here:
https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git

A screenshot of the plugin in action is available here:
https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/.git=
hub/img/ks-xentrace.png

I'm happy to receive whatever feedback you may have about it,
and to answer any question.

Kind regards,
Giuseppe Eletto.

--=20
------------------------



Indirizzo istituzionale di posta elettronica=20
degli studenti e dei laureati dell'Universit=C3=A0 degli Studi di TorinoOff=
icial=C2=A0
University of Turin=C2=A0email address=C2=A0for students and graduates=C2=
=A0


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 15:00:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 15:00:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109925.209816 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWKWU-0004gS-5K; Tue, 13 Apr 2021 15:00:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109925.209816; Tue, 13 Apr 2021 15:00:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWKWU-0004gL-1V; Tue, 13 Apr 2021 15:00:14 +0000
Received: by outflank-mailman (input) for mailman id 109925;
 Tue, 13 Apr 2021 15:00:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Ovpe=JK=citrix.com=christian.lindig@srs-us1.protection.inumbo.net>)
 id 1lWKWS-0004gG-Ue
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 15:00:12 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d8287e31-4cb0-4bb2-868c-c66c1fbdd3dd;
 Tue, 13 Apr 2021 15:00: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: d8287e31-4cb0-4bb2-868c-c66c1fbdd3dd
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618326012;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:mime-version;
  bh=ZQW+xYPh6pAcVZBk/yiOOXBIDl4Fenh/P1Mq6G9poHY=;
  b=HPQQo809LvxadtjeHHkOMoG52BfHyeDJOl6lu+ZjGJCpzs+3yS4oA8Fj
   +gBAAOqfp2ttuA7rhjCFpXKu3kkYI/08s9y7F60taGafUVpkPq1V2yKXH
   bfjgOnzypOZEeiasyccEybC1nY3TTVnD0QEhBJHGnIUmZfkzwV0uZ9KP2
   8=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Lcq8ByzOzGWas/782Fc6QBIujTlVoNAq1CcJXinhudrbLiB02EadTUJ2LB7e8nfR2yTFcpL5FG
 uiN3LPEMa9daBXmaVVWBfhE/gsQfw/3O7Quj9HPw89Ouil/5RDgjqoptY6QhWiMZZhleEMvyOL
 +BinOHJwrmabZswoIM09bKPwqq//A0SCd39ofxsWBNfZX2ssR6FUxs4e+4NskgIxAZDaEr2cgi
 ztZDXqJNuIRF6eakQkRrvduVUbw72P/HpfNYsNgWKUnZIl5rcIoFjVXKObCT808B46+60u8dNW
 /O4=
X-SBRS: 5.2
X-MesageID: 41620965
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HkBpVK0MOHdUm18MkU1yZAqjBWhyeYIsi2QD101hICF9WtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7LE/035hz/IUXIPOeTBDr0VHYSb1KwKnD53nbGyP4/vNAzq
 sIScJDIfD5EFQSt6nHySaiFdJI+re62YSJocub8Ht3VwFtbMhbnmVEIyKWCFd/SgUDJbdRLv
 qhz/FKrTahZngbB/7TbhU4dtPOusHRk9beaQMGbiRN1CC1kTiq5LTmeiLovSs2bjUn+9Yf2F
 mAqSPVzOGJs/a3yhjTvlWjlah+qZ/a5fZoQOCJgsgRAD3whgivf5QJYcz+gBkF5NuBxXxvvN
 7QowoxH8kb0QKsQkiF5SHD9iOl8DEy52TswVWV6EGT3vDRdXYBJOdqwad6GyGpj3YIjZVH/4
 9gm1+9jd5xCyjNmSzsjuK4Ly1Cpw6PjlcJ1dIIg2c3a/p4VJZh6bYx0WlyC5k6ECfz+OkcYZ
 JTJfCZ3vpQfF+ABkqp2FVH8ZipVnQ3KB+MXlIPjMyTyyRXh3B01SIjtbUioks=
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208,217";a="41620965"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=juqfoYocTJIVPJjaQBnk9kAiyLoCwqiN0oxZ86XNL5j57rO8aZnDcZJpheOfozPjihmG6Qj02CpErS/KcLQZFEYWOdj2wdnRQ0QtGlZ3+pPcgtejL7jhAc6JB372Ud0BobiDAywRqerxVRwVoGREhX16KCtJWIoP/jdR6JTSE9IUfqVwdFjsAURRGbYXRjDX+4Qyn9JMwYosLpQVzCNYy97pCLoKbti5KMwhxBsa7uLqm9uDJtIcqFMkm4+VfveXCxXrPaOvIYFgjXDoc3g6AGUooFKd6dr60oCuK5EUCvMSX+ztt4yBMJl3gG2IqgrqIYC9IoOb9j8+0Do5zSO/9w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZQW+xYPh6pAcVZBk/yiOOXBIDl4Fenh/P1Mq6G9poHY=;
 b=dP5ZQTO3fUwBYjNplAfJWCZr1xSiYi9gLkoAr5v7pTUfgod2wf+6WQKdxNDmboLFhrVHCQxIKG6kih9DXz/ACbUyVVMjdPNR1IArDdd0xG/MuBUIpd5EE/dRPU+PW1IQ27Cnfr+byy1RuPF7Kg/K1b9zruGJTqzg1UpCRKGsiA/FwURIoeZy85bmjEcFzg/UvEDinPuyDG6k6H9vrFBv+Anhgl6ASdVu7YhRfBhRAe3VdIK+5CbeZuyc+sqYozBFRdNSZdgvDlJq+/8yO0W9V2WMrQwHQxzeJfh80IGz2kXe6jE/f7qxfHxrHq4XDoL751JJtl2aCVLSj/mTJkQ19g==
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=ZQW+xYPh6pAcVZBk/yiOOXBIDl4Fenh/P1Mq6G9poHY=;
 b=O0EPeibZ7R2NR1JmiX9AflnxhBKCOgzxnOeMxJErQDcnYs9PMdMSM7Q7K2HZFfnNjlCcaiGKvcSR4Bp9TiEUTzt5b0BL5i6gpyOgjAw8+t568Sy3lqOzWtzv36/RvEn9t2KN1Xgl7NN+5IeS+AsFm82uLqQNovUSHGbIKV9Yz3I=
From: Christian Lindig <christian.lindig@citrix.com>
To: Juergen Gross <jgross@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Ian
 Jackson" <iwj@xenproject.org>, Wei Liu <wl@xen.org>, David Scott
	<dave@recoil.org>
Subject: Re: [PATCH v2 3/6] tools/libs/ctrl: use common p2m mapping code in
 xc_domain_resume_any()
Thread-Topic: [PATCH v2 3/6] tools/libs/ctrl: use common p2m mapping code in
 xc_domain_resume_any()
Thread-Index: AQHXL6/OkwM8g8S8xkOjh61WGG0vPaqyjAMA
Date: Tue, 13 Apr 2021 15:00:09 +0000
Message-ID: <A21C5456-8017-4A9A-9460-91D250E100FF@citrix.com>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-4-jgross@suse.com>
In-Reply-To: <20210412152236.1975-4-jgross@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.3608.120.23.2.4)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 4984bf97-078c-4173-d740-08d8fe8cd4f1
x-ms-traffictypediagnostic: MWHPR03MB2896:
x-microsoft-antispam-prvs: <MWHPR03MB2896D854B38FF8A4C84C272AF64F9@MWHPR03MB2896.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:7691;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: Un/0vl5Qw9ZM8Z0ivqyOVk9wEgQWzUehBzKSr8TTZbt9BpVl+RQ9h35gBw6NPm/U/0xuN2QjnCOP7saeiQDl0SLFX/aEZeSYynCOaxQ8NTzXxVw3/ml2nnCnnp+8fDM/d6nLL1zKYDlwmorGZuDD+dgiAeq4WBgiZbDDQLVsyN3bDx5MV2gCObhUyizwoFO4CCK4+qf1cXrhsu4EctGtOioHU6QzREcq5HgLvNSAn4lMuqJwXCFO+MjW8UPgDpkGTstgyeFGDK3BYP1Hc6FR8d7P/hFe/tx7WGIJdd50AYhJ8uvmZC/udFl/iU6BfD1Cs2JTO9yzE0FGWismdypysFQ1qwMcSY5AsFkYq5lhzxHzXeh7ae17Xp1Q0yGRqzQag+fEjhkL+J5OjmpeNVP6ZJykAfVgyhkkxBBYoR5RrHoPVjDAEeyeqbqjjjZC5K5n6zNrZlBc155OoGaND09zK/oHV9H8SQyhKzq3piCdW1XRkTPOXqXHaR7Adakn+qAbd4z82P0wkf5MKgWQYJj+L6U4nWfPWlwVcVMcQ3Lq078/WJN1JW75jDajT0tlxfq7z2hovJy7PvxPkpOTMURN3vEe2JIgCPh1laZ2lxWHa9B1F+cOlBfb2n0hfVrqIAV++b7dtvacT2v4nOLvSZt016885tJUfcwTgbr4BGHH08M=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR03MB2445.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(478600001)(44832011)(2616005)(86362001)(66556008)(36756003)(38100700002)(6486002)(53546011)(54906003)(64756008)(186003)(66946007)(4744005)(2906002)(4326008)(66476007)(5660300002)(33656002)(91956017)(6916009)(76116006)(6512007)(26005)(316002)(71200400001)(66446008)(8676002)(6506007)(8936002)(122000001)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: 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
 =?utf-8?Q?qf/+kvEUFx3OttXOLA0yrDgB3hZ92WuXc/MvkEF?=
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative;
	boundary="_000_A21C545680174A9A946091D250E100FFcitrixcom_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MWHPR03MB2445.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4984bf97-078c-4173-d740-08d8fe8cd4f1
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Apr 2021 15:00:09.3451
 (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: ome0eRhOo+Uv+5xakQWJJRgbWqOsWNkINIumjThthka3wfNjLhK/nQC7bPlBOBbyUlHj19gbrobUFIGFU0EPTDsVuSUH52fjSX+Y/JFrxLA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR03MB2896
X-OriginatorOrg: citrix.com

--_000_A21C545680174A9A946091D250E100FFcitrixcom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

DQoNCk9uIDEyIEFwciAyMDIxLCBhdCAxNjoyMiwgSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2Uu
Y29tPG1haWx0bzpqZ3Jvc3NAc3VzZS5jb20+PiB3cm90ZToNCg0KSW5zdGVhZCBvZiBvcGVuIGNv
ZGluZyB0aGUgbWFwcGluZyBvZiB0aGUgcDJtIGxpc3QgdXNlIHRoZSBhbHJlYWR5DQpleGlzdGlu
ZyB4Y19jb3JlX2FyY2hfbWFwX3AybSgpIGNhbGwsIGVzcGVjaWFsbHkgYXMgdGhlIGN1cnJlbnQg
Y29kZQ0KZG9lcyBub3Qgc3VwcG9ydCBndWVzdHMgd2l0aCB0aGUgbGluZWFyIHAybSBtYXAuIEl0
IHNob3VsZCBiZSBub3RlZA0KdGhhdCB0aGlzIGNvZGUgaXMgbmVlZGVkIGZvciBjb2xvL3JlbXVz
IG9ubHkuDQpbLi5dDQpkaWZmIC0tZ2l0IGEvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsX3N0
dWJzLmMgYi90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYw0KaW5kZXggZDA1ZDdi
YjMwZS4uNmU0YmM1NjdmNSAxMDA2NDQNCi0tLSBhL3Rvb2xzL29jYW1sL2xpYnMveGMveGVuY3Ry
bF9zdHVicy5jDQorKysgYi90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYw0KQEAg
LTMyLDYgKzMyLDcgQEANCg0KI2RlZmluZSBYQ19XQU5UX0NPTVBBVF9NQVBfRk9SRUlHTl9BUEkN
CiNpbmNsdWRlIDx4ZW5jdHJsLmg+DQorI2luY2x1ZGUgPHhlbmd1ZXN0Lmg+DQojaW5jbHVkZSA8
eGVuLXRvb2xzL2xpYnMuaD4NCg0KI2luY2x1ZGUgIm1tYXBfc3R1YnMuaCINCuKAlA0KMi4yNi4y
DQoNCkRvIHdlIG5lZWQgdGhpcyB3aGVuIHRoZXJlIGFyZSBubyBvdGhlciBjaGFuZ2VzIGluIHRo
ZSBmaWxlPw0KDQpBY2tlZC1ieTogQ2hyaXN0aWFuIExpbmRpZyA8Y2hyaXN0aWFuLmxpbmRpZ0Bj
aXRyaXguY29tPG1haWx0bzpjaHJpc3RpYW4ubGluZGlnQGNpdHJpeC5jb20+Pg0KDQoNCg==

--_000_A21C545680174A9A946091D250E100FFcitrixcom_
Content-Type: text/html; charset="utf-8"
Content-ID: <D5F23B481A60244995DF568646B6AA5A@namprd03.prod.outlook.com>
Content-Transfer-Encoding: base64

PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i
dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3b3JkLXdy
YXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgbGluZS1icmVhazogYWZ0
ZXItd2hpdGUtc3BhY2U7IiBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4NCjxkaXY+PGJyIGNsYXNz
PSIiPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2xhc3M9IiI+DQo8ZGl2IGNsYXNzPSIiPk9u
IDEyIEFwciAyMDIxLCBhdCAxNjoyMiwgSnVlcmdlbiBHcm9zcyAmbHQ7PGEgaHJlZj0ibWFpbHRv
Ompncm9zc0BzdXNlLmNvbSIgY2xhc3M9IiI+amdyb3NzQHN1c2UuY29tPC9hPiZndDsgd3JvdGU6
PC9kaXY+DQo8YnIgY2xhc3M9IkFwcGxlLWludGVyY2hhbmdlLW5ld2xpbmUiPg0KPGRpdiBjbGFz
cz0iIj4NCjxkaXYgY2xhc3M9IiI+SW5zdGVhZCBvZiBvcGVuIGNvZGluZyB0aGUgbWFwcGluZyBv
ZiB0aGUgcDJtIGxpc3QgdXNlIHRoZSBhbHJlYWR5PGJyIGNsYXNzPSIiPg0KZXhpc3RpbmcgeGNf
Y29yZV9hcmNoX21hcF9wMm0oKSBjYWxsLCBlc3BlY2lhbGx5IGFzIHRoZSBjdXJyZW50IGNvZGU8
YnIgY2xhc3M9IiI+DQpkb2VzIG5vdCBzdXBwb3J0IGd1ZXN0cyB3aXRoIHRoZSBsaW5lYXIgcDJt
IG1hcC4gSXQgc2hvdWxkIGJlIG5vdGVkPGJyIGNsYXNzPSIiPg0KdGhhdCB0aGlzIGNvZGUgaXMg
bmVlZGVkIGZvciBjb2xvL3JlbXVzIG9ubHkuPGJyIGNsYXNzPSIiPg0KWy4uXTxiciBjbGFzcz0i
Ij4NCmRpZmYgLS1naXQgYS90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYyBiL3Rv
b2xzL29jYW1sL2xpYnMveGMveGVuY3RybF9zdHVicy5jPGJyIGNsYXNzPSIiPg0KaW5kZXggZDA1
ZDdiYjMwZS4uNmU0YmM1NjdmNSAxMDA2NDQ8YnIgY2xhc3M9IiI+DQotLS0gYS90b29scy9vY2Ft
bC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYzxiciBjbGFzcz0iIj4NCisrKyBiL3Rvb2xzL29jYW1s
L2xpYnMveGMveGVuY3RybF9zdHVicy5jPGJyIGNsYXNzPSIiPg0KQEAgLTMyLDYgKzMyLDcgQEA8
YnIgY2xhc3M9IiI+DQo8YnIgY2xhc3M9IiI+DQojZGVmaW5lIFhDX1dBTlRfQ09NUEFUX01BUF9G
T1JFSUdOX0FQSTxiciBjbGFzcz0iIj4NCiNpbmNsdWRlICZsdDt4ZW5jdHJsLmgmZ3Q7PGJyIGNs
YXNzPSIiPg0KKyNpbmNsdWRlICZsdDt4ZW5ndWVzdC5oJmd0OzxiciBjbGFzcz0iIj4NCiNpbmNs
dWRlICZsdDt4ZW4tdG9vbHMvbGlicy5oJmd0OzxiciBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4N
CiNpbmNsdWRlICZxdW90O21tYXBfc3R1YnMuaCZxdW90OzxiciBjbGFzcz0iIj4NCuKAlDxiciBj
bGFzcz0iIj4NCjIuMjYuMjwvZGl2Pg0KPC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8ZGl2PjxiciBj
bGFzcz0iIj4NCjwvZGl2Pg0KPGRpdj5EbyB3ZSBuZWVkIHRoaXMgd2hlbiB0aGVyZSBhcmUgbm8g
b3RoZXIgY2hhbmdlcyBpbiB0aGUgZmlsZT88L2Rpdj4NCjxkaXY+PGJyIGNsYXNzPSIiPg0KPC9k
aXY+DQpBY2tlZC1ieTogQ2hyaXN0aWFuIExpbmRpZyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmNocmlz
dGlhbi5saW5kaWdAY2l0cml4LmNvbSIgY2xhc3M9IiI+Y2hyaXN0aWFuLmxpbmRpZ0BjaXRyaXgu
Y29tPC9hPiZndDs8YnIgY2xhc3M9IiI+DQo8YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxiciBjbGFz
cz0iIj4NCjwvYm9keT4NCjwvaHRtbD4NCg==

--_000_A21C545680174A9A946091D250E100FFcitrixcom_--


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 15:11:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 15:11:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109931.209828 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWKh8-0005gh-2n; Tue, 13 Apr 2021 15:11:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109931.209828; Tue, 13 Apr 2021 15:11:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWKh7-0005ga-Ve; Tue, 13 Apr 2021 15:11:13 +0000
Received: by outflank-mailman (input) for mailman id 109931;
 Tue, 13 Apr 2021 15:11:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=A51V=JK=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lWKh6-0005gV-6h
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 15:11:12 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3a09ad80-de26-4547-b336-720c1cc64498;
 Tue, 13 Apr 2021 15:11:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9C9A3AEE5;
 Tue, 13 Apr 2021 15:11: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: 3a09ad80-de26-4547-b336-720c1cc64498
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618326669; 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=x7rGm/jLz+ZBzNaJ0qeXzn5zJ6EqqFxKlX1Xuf2FMCo=;
	b=BYA4HgLArgjmbnp99iiGkufhdQwwIdhHszPUuWxXhi+k7pQgGtjFuF6cvPC6vZcx+xhVWt
	4Kc8FwYE+wPDd104OEgmJ5L++7bxheJR4QIGrnVGTDdqpHQ9WH70lGRFj++FyOcB20VUr4
	PDNfKeIxzaNWg0Wr5hNN+Tethdz51Go=
Subject: Re: [PATCH v2 3/6] tools/libs/ctrl: use common p2m mapping code in
 xc_domain_resume_any()
To: Christian Lindig <christian.lindig@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 David Scott <dave@recoil.org>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-4-jgross@suse.com>
 <A21C5456-8017-4A9A-9460-91D250E100FF@citrix.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <341cc353-b467-8335-ed0c-d5e054057e27@suse.com>
Date: Tue, 13 Apr 2021 17:11:08 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <A21C5456-8017-4A9A-9460-91D250E100FF@citrix.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="5jywfwWt8f6ryxKRUQqIAs3ti5NhzshlV"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--5jywfwWt8f6ryxKRUQqIAs3ti5NhzshlV
Content-Type: multipart/mixed; boundary="b4dwaPpfXpizgfC4WLSNmsp7267XBDFZu";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Christian Lindig <christian.lindig@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 David Scott <dave@recoil.org>
Message-ID: <341cc353-b467-8335-ed0c-d5e054057e27@suse.com>
Subject: Re: [PATCH v2 3/6] tools/libs/ctrl: use common p2m mapping code in
 xc_domain_resume_any()
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-4-jgross@suse.com>
 <A21C5456-8017-4A9A-9460-91D250E100FF@citrix.com>
In-Reply-To: <A21C5456-8017-4A9A-9460-91D250E100FF@citrix.com>

--b4dwaPpfXpizgfC4WLSNmsp7267XBDFZu
Content-Type: multipart/mixed;
 boundary="------------D425F7D73E410331C6FEC20E"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------D425F7D73E410331C6FEC20E
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 13.04.21 17:00, Christian Lindig wrote:
>=20
>=20
>> On 12 Apr 2021, at 16:22, Juergen Gross <jgross@suse.com=20
>> <mailto:jgross@suse.com>> wrote:
>>
>> Instead of open coding the mapping of the p2m list use the already
>> existing xc_core_arch_map_p2m() call, especially as the current code
>> does not support guests with the linear p2m map. It should be noted
>> that this code is needed for colo/remus only.
>> [..]
>> diff --git a/tools/ocaml/libs/xc/xenctrl_stubs.c=20
>> b/tools/ocaml/libs/xc/xenctrl_stubs.c
>> index d05d7bb30e..6e4bc567f5 100644
>> --- a/tools/ocaml/libs/xc/xenctrl_stubs.c
>> +++ b/tools/ocaml/libs/xc/xenctrl_stubs.c
>> @@ -32,6 +32,7 @@
>>
>> #define XC_WANT_COMPAT_MAP_FOREIGN_API
>> #include <xenctrl.h>
>> +#include <xenguest.h>
>> #include <xen-tools/libs.h>
>>
>> #include "mmap_stubs.h"
>> =E2=80=94
>> 2.26.2
>=20
> Do we need this when there are no other changes in the file?

Yes. Some definitions moved from xenctrl.h into xenguest.h.

>=20
> Acked-by: Christian Lindig <christian.lindig@citrix.com=20
> <mailto:christian.lindig@citrix.com>>

Thanks,

Juergen


--------------D425F7D73E410331C6FEC20E
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------D425F7D73E410331C6FEC20E--

--b4dwaPpfXpizgfC4WLSNmsp7267XBDFZu--

--5jywfwWt8f6ryxKRUQqIAs3ti5NhzshlV
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmB1tIwFAwAAAAAACgkQsN6d1ii/Ey+Z
Zwf/Y7pieIgAShLCiyuhD6XLfg7A8hIinNujYuJe2Of384bnOXY5WwMAzjOhYEyqxScyWasS+4gV
NtxB+0e+L9mS/GlJ9fzojsQ/4tuCLH90Xo+F/4eLsDgQQyL+0w8xTcuJSJaY9qeJQBFwIFUihLCL
UkMqxF7pvTk1xrPXVm4RobKo+H6BbfSX33rmVfiD+ukGXipH+6OzTznyL92qJ07RWC/JZNTmkktG
kF8eYqauPebJT69bCWwXrsoWz672Zh3ZauDFQaYIhcG91Vb7Qy0X1dqnWzaoZAtPYcElSfKZERGP
yLWtcpArAIE+jx67INgHFQn/O8qQkNN/SXe1dYvfKQ==
=bNyd
-----END PGP SIGNATURE-----

--5jywfwWt8f6ryxKRUQqIAs3ti5NhzshlV--


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 15:14:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 15:14:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109935.209840 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWKke-0005qL-IO; Tue, 13 Apr 2021 15:14:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109935.209840; Tue, 13 Apr 2021 15: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 1lWKke-0005qE-Es; Tue, 13 Apr 2021 15:14:52 +0000
Received: by outflank-mailman (input) for mailman id 109935;
 Tue, 13 Apr 2021 15:14:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=8rNj=JK=ipxe.org=mcb30@srs-us1.protection.inumbo.net>)
 id 1lWKkc-0005q8-Ji
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 15:14:50 +0000
Received: from blyat.fensystems.co.uk (unknown [54.246.183.96])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f2953e1c-8cd5-4c95-8b18-f77f74c554ce;
 Tue, 13 Apr 2021 15:14:49 +0000 (UTC)
Received: from dolphin.home (unknown
 [IPv6:2a00:23c6:5495:5e00:72b3:d5ff:feb1:e101])
 by blyat.fensystems.co.uk (Postfix) with ESMTPSA id DEBBC4427E;
 Tue, 13 Apr 2021 15:14: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: f2953e1c-8cd5-4c95-8b18-f77f74c554ce
Subject: Re: xen-netback hotplug-status regression bug
To: paul@xen.org, Wei Liu <wei.liu@kernel.org>,
 xen-devel@lists.xenproject.org, netdev@vger.kernel.org,
 Paul Durrant <pdurrant@amazon.com>
References: <afedd7cb-a291-e773-8b0d-4db9b291fa98@ipxe.org>
 <f469cdee-f97e-da3f-bcab-0be9ed8cd836@xen.org>
 <58ccc3b7-9ccb-b9bf-84e7-4a023ccb5c56@ipxe.org>
 <54659eec-e315-5dc5-1578-d91633a80077@xen.org>
From: Michael Brown <mcb30@ipxe.org>
Message-ID: <d452efde-a2cc-ee5e-bea8-a34e657e2f02@ipxe.org>
Date: Tue, 13 Apr 2021 16:14:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.0
MIME-Version: 1.0
In-Reply-To: <54659eec-e315-5dc5-1578-d91633a80077@xen.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00
	autolearn=ham autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on
	blyat.fensystems.co.uk

On 13/04/2021 11:55, Paul Durrant wrote:
> Ok, so it sound like this was probably my misunderstanding of xenstore 
> semantics in the first place (although I'm sure I remember watch 
> registration failing for non-existent nodes at some point in the past... 
> that may have been with a non-upstream version of oxenstored though).
> 
> Anyway... a reasonable fix would therefore be to read the node first and 
> only register the watch if it does exist.

Thanks.  Patch coming up shortly!

Michael



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 15:34:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 15:34:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109949.209852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWL3E-0007gn-F9; Tue, 13 Apr 2021 15:34:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109949.209852; Tue, 13 Apr 2021 15:34: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 1lWL3E-0007gg-C5; Tue, 13 Apr 2021 15:34:04 +0000
Received: by outflank-mailman (input) for mailman id 109949;
 Tue, 13 Apr 2021 15:34:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UdUp=JK=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWL3C-0007gb-Uf
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 15:34:03 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cdfb09fd-2ef2-4185-b838-a87af01e7a6f;
 Tue, 13 Apr 2021 15:34: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: cdfb09fd-2ef2-4185-b838-a87af01e7a6f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618328041;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=RS8r+hepWGJ0AWzCrrQfGIXP4pggmogp0/DOnbnhPbU=;
  b=O03kMQbQFeLJQh/FxPTASX+s9I2a0CjYj+KLYxsiHhd9C57hkZmDUnMH
   PJkHkPP7YPORTzcgrCQYKHR80qyqUJ5dPWVcROoMtBU27p39/c28yRUE1
   XiX7EAkJQYmRGKSXYpzSY54bBc9NVbieVKVe/RV57nRiT43qSwZ+/Tgje
   4=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 1YddLb718lvk0FEQHtnqqpYus3DsPocZlVLKbWl7mL6jiZslEEs75z++ENXP2A8lJ6rWKEyFGE
 ka1vLlxigFTq2kh82w6URaXeGma8RqU6cLaQJORD72yCD/THpcstgg0mybng8CquFoipeVjHfr
 r78jUZJMrIhXyQisEgb0uzD9sg7TaydILCJjcR7OhSPfIoWWgPVI2T32g7sKLCxgRWSAvGpV94
 ViCjiJmylF5ruGbCqyzZKdVGZw26IHTwHxjco3vryTR2dDsXk3UGOjtouAACriRpW1Cgeuza7N
 lfA=
X-SBRS: 5.2
X-MesageID: 41494926
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HZoeN6+egRj/3K368iNuk+EccL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUfD38Zn/+
 Nbf6B6YeeaMXFTh8z3+RT9Nt4mzsWO/qzAv5a5815GZ2hRC51IxQF/FwqdDwlSTA5JGZI2GP
 Onl7N6jhCnfmkaadn+O2kdU4H41pT2vb/vfBJuPW9C1CCgljWtgYSVLzG9/jMzFwxC2q0j92
 +tqX2w2oyGv+ugwhHRk0//hq4m/+fJ8ddICMyShsV9EFyF5mmVTb58UL6Pti1dmpDN1H8Wkc
 LBqxplH8N/52K5RBDRnTLR2hLt2Dtr1nn6yVXwuwqAneXFQlsBavZptMZ8SF/0+kAgtNZz3O
 ZgxGSCradaChvGgWDU+8XIfwsCrDv/nVMS1cooy1BPW4oXb7Fc6aYF+llOLZsGFCXmrKg6De
 hVCt3G7vo+SyLWU1np+k1UhPC8VHU6GRmLBmIYvNaO7jRQlHdli2wV2dIYhXVF0J4mUZFL66
 DlP81T5f1zZ/5TSZg4KPYKQMOxBGCIawnLKniuLVPuE7xCNGnKr5Lx/bUp9OCncJEF1/IJ6d
 r8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwb55URgMy8eJPbdQm4DHw+mcqppPsSRufBXe
 yoBZ5QC/j/aW/nGYND2RziS4BfQENuEPE9i5IeYRajs8jLIorluqjwa/DIPofgFj4iRyf4GX
 sMXD/6Ic1a9UC1UnrkgBzcMkmdNXDXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHlfqKAsZV
 B/J7nmi6u/omGz8Q/zniZUEysYKnwQzKTrUntMqwNPDlj9dqwbvc6DPUpI2mGcGxN5R8TKMQ
 JWqlht45irJ5iIyS1KMaPkDkuqy18o4FODVdM1h7CK78aNQOJBMr8WHIhKUTjtOzMwswBws2
 tHYBIDXSbkZ0jToJTgqocVCuHZf8R7myGxL6dv2DninE2BuMAiQWYaVTayUciRxR0jXSZQm0
 cZyd5kvJOQ3TmoMmcxm+I+LRlFb3mWGqtPCECfaJxTga2DQnAGcU6awTibgQo0YGzk6gEbgX
 HgNzSdfZjwcy9gk2Ed1qbh61VvcGqBO0p2d3BhqIV4UWDLoGx63+POZq291QKqGy8/6/BYND
 HOej0JJAxyg9ixyR6OgT6HUWw82Y9GBJ2sMJ0zN7XInn+9IoyBkq8LW/dS4ZZ+Ldjr9usGS/
 iWdQOZJC7xYtlZrTC9tzIgIm15uXMkmfTn1Fn+4G+00GU2DPDSLF5lLotrUe20/izhXbKFwZ
 95hdU6sa+sKW33cMeB0rySYDhZKB/fyFTGPt0AuNRRp+Y1u7RyFZWADmeN23FDwRkkLMD70E
 kZW7925bjdOolpO8weEhgpgWYBhZCKNg8stAezH+o1OVcqhHXfN8mS47XJpaE0a3fx1zfYKB
 2a6WlF4/zBXyGfzrYUBKI7PHROZCEHmQhf1fLHc5eVFR6jeO5C9kerK3OxcLdST66eBLUbxy
 wKne2gjquQbCr32AfZoDt9LOZP6g+cML6PPD4=
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41494926"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=azngMtQMfqvf41MhFRRM/ov4sbYud2k9POptzkPBcI+p3aowjFpgS7QjSz5/6aKNF5uhrjX1gQ4oWdmR52dDblmvcQvXl0T5gnDi0t5xiOB3bp5SwKLCuIJcc2VxuzIZ5Wd6V5txZmLmdPyyeRqrfP9ObSHGWZh6J+X9G28JPhlpgjnWfAxw1Uck3NglofTK+vqIzKtknC1kaVneosSxU5olPlQXFpV/Ev16VhKWvs9gs3/GzsTyVzQATW5IVlTeEOrvC2CTuH5hDFEWCwSWX9T2W5kE6wvX1fmitnwGi+RbaQyoFMEujjtZeHYLM2cpZhF9+BIAoIIavENjqkYO3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RS8r+hepWGJ0AWzCrrQfGIXP4pggmogp0/DOnbnhPbU=;
 b=RvY8l/SvKRXDvr4pLzy5rJbbA4VkmZbdusXcQMFJ43lpDRA1iUi9ehhwNkRW09XsbFYKViHZEMkqGavM8jGG3np4Xc+13LYLC0M9B00m7uYfBUaYKHWEvCm1VZ0eFZoki1Et6CZCjlMcoWZ3kZlY3TOnE+atDpFNoHS+gNDuXobVSI/shI0SFNiLDAkqYAqo3SWqH3S/nGvPYHOcQYD2CSbhjv9DHWNigN4b2jq88lStjjxKm3dmlja9mZlNEvYU0d56Hhpj+vJCv/BNIBKC+glcsOrP/p0ey9mVkdEuFo1NdoTRPmwSyE/D1PUhvP50RxUhvAe5fQTSKDse/v89CA==
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=RS8r+hepWGJ0AWzCrrQfGIXP4pggmogp0/DOnbnhPbU=;
 b=jYZ33dWX3b2AgePi5uxeQe/MWBYfUJPR1D+lo0915qXG3MZC7ioXhLnThcJyQLDv0KXC7fHJUckDeB41cI+Da7VNkNB1MbJEiNjTkVpTFYXV4JnUKlR6NJAHVxxm5NF652vj6K/KD8zX4TxH/rILl0naXSXawBfXuTrKXCdxvik=
To: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>,
	<linux-trace-devel@vger.kernel.org>, <xen-devel@lists.xenproject.org>
CC: Dario Faggioli <dfaggioli@suse.com>, Enrico Bini <enrico.bini@unito.it>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: =?UTF-8?Q?Re=3a_A_KernelShark_plugin_for_Xen_traces_analysis_?=
 =?UTF-8?B?4oCL?=
Message-ID: <f33b39a5-9bbd-934f-a9cd-c536a0ba7416@citrix.com>
Date: Tue, 13 Apr 2021 16:33:50 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0002.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:150::7) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d0a7f838-b224-41f4-22bf-08d8fe918d7b
X-MS-TrafficTypeDiagnostic: BY5PR03MB5048:
X-Microsoft-Antispam-PRVS: <BY5PR03MB5048B352DE8DFE316870321EBA4F9@BY5PR03MB5048.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: NUMtz8l1QSN7dVG3yKjdpfF1Y3qJfiX3LjaF7Q18HEXGhBEj7yJ+dKpvsIqH/ZPgKsStFPyduIVowDT+FfnyhfkK47Jd+68aRDlO5BH3F2wid40h/DjlJZP/mFLvDqJNGi07quMsRHmgiqW8lr5EHiLzR97daNDxNJ75jNqlsG5H4g3Cvp7hgdxaPOoXbYQTnuJNIltucp3vQ+JlNWhDFsRNsq52tj5Y3t48Xchjsa7TqtBHg3cXfmgk2T/PkExLL9iTitULHJUlNnGy3imBA9peFb7AZD01iWpy4nK3MmUNKNdrLgZGPUy8IEgGVK6gQPzH7wEV7WLkAFXgG/q3hT5jgU4Y7C5pJ/sv19HPbjuXqmJP9DbLtzhEx+PkzezmD0lye+Rkc3tx7EsDJPOj0uSdmtNhmYg4ISK4P6KobwtRiaU1m7W3DlbZAIpSDjP2moPkDEN57B3HVmzfrRTIRqCOunYNiKwswRn6lrsKtclPWGryD7vSAGunzIH27WXUooqRhO4o/RRKU4X+dRwAIYQ8OzLcnUBeXLemqr/Z3Qa9RPalC3FpZt/gihe9DhzLdVNuOlMU4g5ctwrRojvsp4dODg39X7ANYxCF5Z/PF5mB6zp9SFqQ5ahhCY5lk/e0yKNET6WVfEnHzpSOc43yUxC49ZGrIrSLYiCmjBVvKF3WQ0pnA89q3Vq9/uY2AHmASRGCdtaCG514bx2cffMkNfaFQsXVQUmhkG0yWj7T8lKTBGFXc9awgfqmiQKnoM1uAQBT7M7CVM/HvLYNDar9MA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(366004)(39860400002)(136003)(346002)(396003)(956004)(66556008)(54906003)(2906002)(966005)(2616005)(83380400001)(66574015)(316002)(186003)(6486002)(38100700002)(16576012)(8936002)(86362001)(5660300002)(4326008)(36756003)(478600001)(6666004)(66946007)(53546011)(16526019)(31686004)(26005)(31696002)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?/rPzXjtDK5x+lWSUConnJhzUWF4Gi8nbe08rKdp?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d0a7f838-b224-41f4-22bf-08d8fe918d7b
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 15:33:57.8191
 (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: CXNC7B+YloLqI/mNijBfB4qFzz+2P1cf/MbmoNDDKog/I8x1HVv+f5EwbG8VioT27crUTiFXsMekHEIhNVHSf5bo4uEbTkn5yyRZxk077oE=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5048
X-OriginatorOrg: citrix.com

On 13/04/2021 15:28, Giuseppe Eletto wrote:
> Hello,
> I want to share with you a new plugin developed by me, under the
> supervision of Dario Faggioli, which allows the new version of KernelShar=
k
> (the v2-beta) to open and view the Xen traces created using the "xentrace=
" tool.
>
> In fact, KernelShark is a well known tool for graphical visualization
> Linux kernel traces, obtained via "ftrace" and "trace-cmd". Anyway thanks
> to its modular architecture, it is now possible to implement plugins whic=
h
> open and display traces with arbitrary format, for example, as in in
> this case, traces of the Xen hypervisor.
>
> For more information on how to build the plugin and/or
> to view the source code I leave the repository below:
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin
>
>
> In short:
>
> $ sudo apt install git build-essential libjson-c-dev
> $ git clone --recurse-submodules
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
> $ cd kernelshark-xentrace-plugin/
> $ make
>
> $ export XEN_CPUHZ=3D3G # Sets the CPU frequency ((G)hz/(M)hz/(K)hz/hz)
> $ kernelshark -p out/ks-xentrace.so trace.xen
>
>
> You will need the development version of KernelShark, available here:
> https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git
>
> A screenshot of the plugin in action is available here:
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/.g=
ithub/img/ks-xentrace.png
>
> I'm happy to receive whatever feedback you may have about it,
> and to answer any question.

Very nice.

A couple of questions.=C2=A0 Which Xen libraries do you currently use map t=
he
frames?

There is a bug which prevents the mapping being usable in a PVH Dom0,
and I was proposing fixing it by switching to the Acquire Resource
interfaces.=C2=A0 A bonus of doing this is that it can be implemented on
exclusively stable hypercall interfaces, meaning that the plugin no
longer needs recompiling when you change the hypervisor.

To others on xen-devel, do we have firm statement on whether the trace
format itself is stable or not?=C2=A0 I think we've be somewhat nondescript
on this point in the past.

For the screenshot, there are a lot of examples where you have a
dom:vcpu pair, and a number rendered in hex.=C2=A0 Throughout the hyperviso=
r,
we're standardising on d$v$ as a format, and e.g. d[IDLE]v$ for some of
the magic domid's (0x7ff0 ... 0x7fff).

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 15:35:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 15:35:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109947.209864 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWL4g-0007qy-RE; Tue, 13 Apr 2021 15:35:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109947.209864; Tue, 13 Apr 2021 15:35: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 1lWL4g-0007qr-Ng; Tue, 13 Apr 2021 15:35:34 +0000
Received: by outflank-mailman (input) for mailman id 109947;
 Tue, 13 Apr 2021 15:25:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DehA=JK=fensystems.co.uk=mbrown@srs-us1.protection.inumbo.net>)
 id 1lWKuo-0006pY-Ko
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 15:25:22 +0000
Received: from blyat.fensystems.co.uk (unknown [54.246.183.96])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f7f3b076-0fb4-4ab2-aed3-e323e66d1b82;
 Tue, 13 Apr 2021 15:25:21 +0000 (UTC)
Received: from dolphin.home (unknown
 [IPv6:2a00:23c6:5495:5e00:72b3:d5ff:feb1:e101])
 by blyat.fensystems.co.uk (Postfix) with ESMTPSA id 5E5C044289;
 Tue, 13 Apr 2021 15:25: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: f7f3b076-0fb4-4ab2-aed3-e323e66d1b82
From: Michael Brown <mbrown@fensystems.co.uk>
To: paul@xen.org,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org,
	wei.liu@kernel.org,
	pdurrant@amazon.com
Cc: Michael Brown <mbrown@fensystems.co.uk>
Subject: [PATCH] xen-netback: Check for hotplug-status existence before watching
Date: Tue, 13 Apr 2021 16:25:12 +0100
Message-Id: <20210413152512.903750-1-mbrown@fensystems.co.uk>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <54659eec-e315-5dc5-1578-d91633a80077@xen.org>
References: <54659eec-e315-5dc5-1578-d91633a80077@xen.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00
	autolearn=ham autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on
	blyat.fensystems.co.uk

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
---
 drivers/net/xen-netback/xenbus.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index a5439c130130..d24b7a7993aa 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -824,11 +824,15 @@ static void connect(struct backend_info *be)
 	xenvif_carrier_on(be->vif);
 
 	unregister_hotplug_status_watch(be);
-	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
-				   hotplug_status_changed,
-				   "%s/%s", dev->nodename, "hotplug-status");
-	if (!err)
+	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
+		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
+					   NULL, hotplug_status_changed,
+					   "%s/%s", dev->nodename,
+					   "hotplug-status");
+		if (err)
+			goto err;
 		be->have_hotplug_status_watch = 1;
+	}
 
 	netif_tx_wake_all_queues(be->vif->dev);
 
-- 
2.29.2



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 15:46:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 15:46:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109959.209879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWLF5-0000P4-TB; Tue, 13 Apr 2021 15:46:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109959.209879; Tue, 13 Apr 2021 15: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 1lWLF5-0000Ox-PM; Tue, 13 Apr 2021 15:46:19 +0000
Received: by outflank-mailman (input) for mailman id 109959;
 Tue, 13 Apr 2021 15:46:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HRIN=JK=goodmis.org=rostedt@kernel.org>)
 id 1lWLF4-0000Os-3d
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 15:46:18 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5a96da6a-cb8f-4aaa-8f9e-8552fe8fa839;
 Tue, 13 Apr 2021 15:46:17 +0000 (UTC)
Received: from gandalf.local.home (cpe-66-24-58-225.stny.res.rr.com
 [66.24.58.225])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mail.kernel.org (Postfix) with ESMTPSA id 1B82E61353;
 Tue, 13 Apr 2021 15: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: 5a96da6a-cb8f-4aaa-8f9e-8552fe8fa839
Date: Tue, 13 Apr 2021 11:46:14 -0400
From: Steven Rostedt <rostedt@goodmis.org>
To: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>
Cc: linux-trace-devel@vger.kernel.org, xen-devel@lists.xenproject.org, Dario
 Faggioli <dfaggioli@suse.com>, Enrico Bini <enrico.bini@unito.it>
Subject: Re: A KernelShark plugin for Xen traces analysis
Message-ID: <20210413114614.4971caff@gandalf.local.home>
In-Reply-To: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit


Hi Giuseppe,

On Tue, 13 Apr 2021 16:28:36 +0200
Giuseppe Eletto <giuseppe.eletto@edu.unito.it> wrote:

> Hello,
> I want to share with you a new plugin developed by me, under the
> supervision of Dario Faggioli, which allows the new version of KernelShark
> (the v2-beta) to open and view the Xen traces created using the "xentrace" tool.
> 
> In fact, KernelShark is a well known tool for graphical visualization
> Linux kernel traces, obtained via "ftrace" and "trace-cmd". Anyway thanks
> to its modular architecture, it is now possible to implement plugins which
> open and display traces with arbitrary format, for example, as in in
> this case, traces of the Xen hypervisor.

I'm guessing you have trace events coming from Xen itself?


> 
> For more information on how to build the plugin and/or
> to view the source code I leave the repository below:
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin
> 
> 
> In short:
> 
> $ sudo apt install git build-essential libjson-c-dev
> $ git clone --recurse-submodules
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
> $ cd kernelshark-xentrace-plugin/
> $ make
> 
> $ export XEN_CPUHZ=3G # Sets the CPU frequency ((G)hz/(M)hz/(K)hz/hz)
> $ kernelshark -p out/ks-xentrace.so trace.xen
> 
> 
> You will need the development version of KernelShark, available here:
> https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git

This will soon be the main repository, as we are going to deprecate the
version in the trace-cmd.git repo soon. And because libtracecmd 1.0 has
already been released.


> 
> A screenshot of the plugin in action is available here:
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/.github/img/ks-xentrace.png
> 
> I'm happy to receive whatever feedback you may have about it,
> and to answer any question.
> 

Thanks for doing this. What would be nice is to have the xen traces along
side the linux tracing. Perhaps we can update trace-cmd agent to work with
Xen as well. Does xen implement vsock or some other way to communicate
between the guests and the Dom0 kernel? If not, we should add one. The you
could do the following:

 1. On each guest, run as root: trace-cmd agent --xen
 2. On Dom0 run: trace-cmd record -e (events on Dom0) \
     --xen (commands to do tracing in Xen HV) \
     -A <guest-name1> -e (events on guest)

And then you would get a trace.dat file for Dom0 and the guest, and also
have a trace file for Xen (however that is done). And then on KernelShark,
we have a KVM plugin in development that does this. But you can do the same
with Xen.

For KVM, we have:

 1. On each guest: trace-cmd agent
 2. On the host: trace-cmd record -e kvm -e sched -e irq \
      -A guest-name -e all
    The above produces trace.dat for the host trace, and 
     trace-<guest-name>.dat for the guest.
 3. kernelshark trace.dat -a trace-Fedora21.dat

(I have a guest called Fedora21).

  http://rostedt.org/private/kernelshark-kvm.png

Where you can see the kvm hypervisor task KVM-2356 is the host task running
the guest VCPU 0, and you see the switch between the two.

Perhaps we can do something like that with Xen as well. The plugin is still
in the works, but should be published soon. And when it is, you could use
that as a template for Xen.

-- Steve


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 16:06:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 16:06:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109970.209894 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWLYX-0002qz-Ju; Tue, 13 Apr 2021 16:06:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109970.209894; Tue, 13 Apr 2021 16: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 1lWLYX-0002qs-Gi; Tue, 13 Apr 2021 16:06:25 +0000
Received: by outflank-mailman (input) for mailman id 109970;
 Tue, 13 Apr 2021 16:06:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MzG+=JK=gmail.com=jandryuk@srs-us1.protection.inumbo.net>)
 id 1lWLYW-0002qn-7A
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 16:06:24 +0000
Received: from mail-lf1-x12c.google.com (unknown [2a00:1450:4864:20::12c])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a673bb3f-73fb-472f-8a2e-a21dc51dca85;
 Tue, 13 Apr 2021 16:06:23 +0000 (UTC)
Received: by mail-lf1-x12c.google.com with SMTP id w8so19706469lfr.0
 for <xen-devel@lists.xenproject.org>; Tue, 13 Apr 2021 09:06: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: a673bb3f-73fb-472f-8a2e-a21dc51dca85
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=e1fd25UFmEZ/ZTlF5UgodHjiEAkehs5Oy53Oboyxk4g=;
        b=kqanzS1LrM6Bu6VOWkYJ0ofYXh7Yth7t6N9jK0FYfqB/veeHBm9rmWg8hAyz35KjY9
         Ow+oHKtCkl6QkrWvu9Kwqni3Bt0w2Q9np1YBAk1zhc90qH77y6Q8Vr+P8fGtkbdiJSjv
         patj07mWM4ShBfqFvKlU8Gg9HdocLtEZZL+TKRE2NniIV9jpQPRgnaWaFsnbaSrj7boc
         BUEOGBEzg2jf/63CozpSvdPVeg85ZkLcOd0835TUq12B4Hnty5QsTNzpCrZbrZ/Nbeos
         iyTxA2ieBm183TJKv+bMJH0BU2jPFQTypAMfcc2Qy6ahExXpVAIMTExBtUWqqZyVmzxK
         5/+Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=e1fd25UFmEZ/ZTlF5UgodHjiEAkehs5Oy53Oboyxk4g=;
        b=p4i9rsjIYZAVIVoQcum2+5uXpnooScdw17Bnj6KVx/nwnnN+vnRl9EADQzXvEUQzOP
         iBFoRfCcffDAZvRQkW5ax5pNsAQOHF3TfqBem5Dc6zRnUdyg1dYVE7nLj6W+t03tst/6
         0dAQyQmtTvdfZCVumJY+8+6GjfOM3itzRekS+2P+X1+5mxkodZ+C3GeX3I4b6EJhTmBH
         4fWNr9Lr8UqRndoR2P3omdU/ZytKJ/cgijg1nKasRiwnOilLs6vIDh5xI6xh/JK/yogy
         hOBIOinHDprW3kGJMxqt7jhJY19g8rsC1bJbCr1W4rbEEarQ0h7t9cLfK7qm7roRwe/l
         sr6w==
X-Gm-Message-State: AOAM531PyG8WTQFarTHvO+ZiIsxs4fAfyuVGVM/R/x5DfLWtjKpjtCPV
	JFLGrBZ0SnZjPn2siB7y2fGtURIroVG7dcoDrPA=
X-Google-Smtp-Source: ABdhPJwgkA0IgrdjYFu/tkXFmMTchvqtVB2XrLQ/dwq1hgpccvnXLda/5YWGjrYyXmSuG/+Bzkzx9sVbwTQZNdsdr4M=
X-Received: by 2002:ac2:5083:: with SMTP id f3mr15015956lfm.562.1618329980772;
 Tue, 13 Apr 2021 09:06:20 -0700 (PDT)
MIME-Version: 1.0
References: <602469f5-1028-8f36-7195-f102b6d2af0c@tabit.pro>
 <427bfd62-48c0-5859-7300-c618331b4e5a@citrix.com> <20200922133047.4646b2ab62cszn46@liuwe-devbox-debian-v2>
 <CAKf6xpsOfM=PSFW6sUx5yozmEji9f5t2p+5+mrpX_2cOqGBOmQ@mail.gmail.com> <301e8abc-f50f-0159-a373-d9eb54f9836b@citrix.com>
In-Reply-To: <301e8abc-f50f-0159-a373-d9eb54f9836b@citrix.com>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Tue, 13 Apr 2021 12:06:08 -0400
Message-ID: <CAKf6xps7XihHRjMKUnng9z8Uvu1ERTS+Zn5LjB-+tEKhYXpDzg@mail.gmail.com>
Subject: Re: [PATCH] libxl: User defined max_maptrack_frames in a stub domain
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, Dmitry Fedorov <d.fedorov@tabit.pro>, 
	xen-devel <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, 
	Anthony PERARD <anthony.perard@citrix.com>
Content-Type: text/plain; charset="UTF-8"

On Tue, Apr 13, 2021 at 10:23 AM Andrew Cooper
<andrew.cooper3@citrix.com> wrote:
>
> On 10/04/2021 16:55, Jason Andryuk wrote:
> > On Tue, Sep 22, 2020 at 9:31 AM Wei Liu <wl@xen.org> wrote:
> >> On Mon, Sep 14, 2020 at 04:27:45PM +0100, Andrew Cooper wrote:
> >>> On 14/09/2020 15:50, Dmitry Fedorov wrote:
> >>>> Hi,
> >>>>
> >>>> Implementing qrexec+usbip+qemu in Linux-based stub domain leads me to
> >>>> an issue where a device model stub domain doesn't have maptrack entries.
> >>>>
> >>>> Would it be possible to apply a user defined max_maptrack_frames value
> >>>> to dm_config in the same way as for max_grant_frames?
> >>>>
> >>>> Signed-off-by: Dmitry Fedorov <d.fedorov@tabit.pro>
> >>> This looks entirely reasonable.
> >>>
> >>> CC'ing the maintainers for their opinion.
> >>>
> >> Looks fine to me.
> >>
> >> Acked-by: Wei Liu <wl@xen.org>
> > Hi,
> >
> > Wei, looks like you Acked but did not apply this patch.  And after the
> > libs rename, the file paths no longer match.  Do you want to fix this
> > up, or should Dmitry re-submit?
>
> Apologies for the process failure here.

No worries.

> I have committed
> https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=80714e55042b2242cd82eccfb7405d671ecbebda

Thank you, Andrew.

> I take it that it wants flagging for backports?

The Qubes qrexec+usbip+qemu feature isn't merged yet, but they have a
backport to 4.14 as part of the series.

Regards,
Jason


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 16:17:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 16:17:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109975.209906 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWLj8-0003qm-Lr; Tue, 13 Apr 2021 16:17:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109975.209906; Tue, 13 Apr 2021 16: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 1lWLj8-0003qf-H4; Tue, 13 Apr 2021 16:17:22 +0000
Received: by outflank-mailman (input) for mailman id 109975;
 Tue, 13 Apr 2021 16:17: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 1lWLj7-0003qa-QS
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 16:17: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 1lWLj7-0007Sx-9S; Tue, 13 Apr 2021 16:17:21 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWLj7-00070i-1s; Tue, 13 Apr 2021 16:17: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=GkceW10k83A2HTyah+YJ6/nafU0HIMcdaI/31a8rfIQ=; b=zGirWaOox1shZkh1wOaMVUf3mG
	9o4wmv1pADtEtQ+64izPMHlS31FmpPOU+NwkD1fw+Q5qPXUOe/npzQuGHzoH6GMUcHoFPjmO61sVs
	jq211oqoJJ0ImjsbH7ySCHc2PCvMwJmXv7rg/sifJJ5qOHQM29hABkMiO96cmAEOksho=;
Subject: Re: [xen-unstable bisection] complete test-armhf-armhf-xl-multivcpu
To: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>
Cc: xen-devel@lists.xenproject.org,
 osstest service owner <osstest-admin@xenproject.org>
References: <E1lVPaB-0007ue-Ho@osstest.test-lab.xenproject.org>
 <b7800c49-8106-e2cc-2fa3-9682305f333f@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <867e0bc1-ba0d-771a-0cfd-1e83fad431aa@xen.org>
Date: Tue, 13 Apr 2021 17:17:19 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <b7800c49-8106-e2cc-2fa3-9682305f333f@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 12/04/2021 09:53, Jan Beulich wrote:
> On 11.04.2021 04:12, osstest service owner wrote:
>> branch xen-unstable
>> xenbranch xen-unstable
>> job test-armhf-armhf-xl-multivcpu
>> testid guest-start/debian.repeat
>>
>> Tree: linux git://xenbits.xen.org/linux-pvops.git
>> Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
>> Tree: qemuu git://xenbits.xen.org/qemu-xen.git
>> Tree: xen git://xenbits.xen.org/xen.git
>>
>> *** Found and reproduced problem changeset ***
>>
>>    Bug is in tree:  xen git://xenbits.xen.org/xen.git
>>    Bug introduced:  9617d5f9c19d1d157629e1e436791509526e0ce5
>>    Bug not present: 5c3c410bd2ea8d2cc520e8e8f83ad143c9c5cff7
>>    Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/160931/
>>
>>
>>    commit 9617d5f9c19d1d157629e1e436791509526e0ce5
>>    Author: Julien Grall <jgrall@amazon.com>
>>    Date:   Sat Feb 20 17:54:13 2021 +0000
>>    
>>        xen/arm: mm: flush_page_to_ram() only need to clean to PoC
>>        
>>        At the moment, flush_page_to_ram() is both cleaning and invalidate to
>>        PoC the page.
>>        
>>        The goal of flush_page_to_ram() is to prevent corruption when the guest
>>        has disabled the cache (the cache line may be dirty) and the guest to
>>        read previous content.
>>        
>>        Per this definition, the invalidating the line is not necessary. So
>>        invalidating the cache is unnecessary. In fact, it may be counter-
>>        productive as the line may be (speculatively) accessed a bit after.
>>        So this will incurr an expensive access to the memory.
>>        
>>        More generally, we should avoid interferring too much with cache.
>>        Therefore, flush_page_to_ram() is updated to only clean to PoC the page.
>>        
>>        The performance impact of this change will depend on your
>>        workload/processor.
>>        
>>        Signed-off-by: Julien Grall <jgrall@amazon.com>
>>        Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
>>        Acked-by: Stefano Stabellini <sstabellini@kernel.org>
> 
> Is it possible that other code (guest one in particular considering the
> failure pattern, but possibly not limited to that) has developed a
> dependency on the prior behavior?

This is not a problem in the guest. I overlooked that 
flush_page_to_ram() is also used when emulating the instruction to 
invalidate by set/way the data cache.

We would need to tell flush_page_to_ram() which type of operation we 
want to do. I will not have time to work on it right now, so I have 
reverted the patch to unblock OssTest.

Sorry for the breakage.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 16:40:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 16:40:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109988.209922 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWM5I-0006SM-Hw; Tue, 13 Apr 2021 16:40:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109988.209922; Tue, 13 Apr 2021 16: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 1lWM5I-0006SF-Es; Tue, 13 Apr 2021 16:40:16 +0000
Received: by outflank-mailman (input) for mailman id 109988;
 Tue, 13 Apr 2021 16: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 1lWM5H-0006SA-72
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 16: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 1lWM5F-0007ok-Rk; Tue, 13 Apr 2021 16:40:13 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWM5F-0000cr-Kl; Tue, 13 Apr 2021 16:40: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=4FOCyyxakTCH5GBbZIi7H3l3A7bDKqQJuxjsBP8qsZg=; b=6zT/IE9vzSO0sw/h71X/9up55L
	HsUQMOyCX0aXFm8kpvAGT5phxrL/2zAL176yTyi6EcneN9TV+Gx3nWwFsnOlxKuPcsnUwDZZVFx0x
	F6REGO6J+WV7yPZ3axH/Y1HV6xSVRL8E939SJPilTMC4RB5og2EKsQFiH1MwFycnCAMU=;
Subject: Re: [PATCH v3 1/4] xen/arm: Move dom0 creation in domain_build.c
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-2-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <5a2f6160-d13b-b554-6e12-2318dfa3a5d3@xen.org>
Date: Tue, 13 Apr 2021 17:40:11 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210412105243.23354-2-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Luca,

On 12/04/2021 11:52, Luca Fancellu wrote:
> Move dom0 creation and start from setup.c to domain_build.c
> on a dedicate function.

s/dedicate/dedicated/

I would also suggest to add "No functional changes intended" to make 
clear this is only code movement.

> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> ---
> v3 changes:
> - move create_dom0 function after construct_dom0 and
>    make construct_dom0 static
> ---
>   xen/arch/arm/domain_build.c | 38 ++++++++++++++++++++++++++++++++++++-
>   xen/arch/arm/setup.c        | 29 +---------------------------
>   xen/include/asm-arm/setup.h |  2 +-
>   3 files changed, 39 insertions(+), 30 deletions(-)
> 
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 374bf655ee..359957dc1b 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -21,6 +21,7 @@
>   #include <asm/device.h>
>   #include <asm/kernel.h>
>   #include <asm/setup.h>
> +#include <asm/tee/tee.h>
>   #include <asm/platform.h>
>   #include <asm/psci.h>
>   #include <asm/setup.h>
> @@ -2520,7 +2521,7 @@ void __init create_domUs(void)
>       }
>   }
>   
> -int __init construct_dom0(struct domain *d)
> +static int __init construct_dom0(struct domain *d)

This wants a sentence in the commit message. How about the following 
commit message:

"
Move dom0 create and start from setup.c to a dedicated function in 
domain_build.c.

With this change, the function construct_dom0() is not used outside of 
domain_build.c anymore. So it is now a static function.

No functional changes intended.
"

If you agree with the new commit message. I can modify while commiting it:

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:01:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:01:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109995.209934 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMPO-0008Lo-90; Tue, 13 Apr 2021 17:01:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109995.209934; Tue, 13 Apr 2021 17:01:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMPO-0008Lh-63; Tue, 13 Apr 2021 17:01:02 +0000
Received: by outflank-mailman (input) for mailman id 109995;
 Tue, 13 Apr 2021 17:01:00 +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 1lWMPM-0008Lc-An
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:01:00 +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 1lWMPL-0008Au-AJ; Tue, 13 Apr 2021 17:00:59 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWMPL-0006ME-2B; Tue, 13 Apr 2021 17:00: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=ZKaAx2rVBDfFMgQG0yrLUc0McqH4VHph3Ridw7RwOYA=; b=pvSyyQlLW+AuvNOi7wR1h5pKxS
	fW1dECYO7cG2vXcyMOjJSMEDU1NjSLJxmuIJZiE3GTSIYM3Pc2SOgaxk43rUyzW7s/bSEUARnYCb4
	LwLQjVMMpUZk5FcvB9eBwPkOLj9wfuOeYwhv4s2PQsQvsXiXtVisVDK7tP45HgVSCUco=;
Subject: Re: [PATCH v3 3/4] xen/arm: Reserve domid 0 for Dom0
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-4-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <db54612f-e237-2084-f11e-ffd5e045c3dc@xen.org>
Date: Tue, 13 Apr 2021 18:00:57 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210412105243.23354-4-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Luca,

The title probably wants to be updated as you don't really reserve domid 
0. How about:

xen/arm: Clarify how the domid is decided in create_domUs()

On 12/04/2021 11:52, Luca Fancellu wrote:
> This patch adds a comment in create_domUs() right before
> domain_create() to explain the importance of the pre-increment
> operator on the variable max_init_domid, to ensure that the
> domid 0 is allocated only during start_xen() function by the
> create_dom0() and not on any other possible code path to the
> domain_create() function.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> ---
> Changes in v3:
> - removed check introduced in v2.
> ---
>   xen/arch/arm/domain_build.c | 5 +++++
>   1 file changed, 5 insertions(+)
> 
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 359957dc1b..b1d7b9849f 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -2508,6 +2508,11 @@ void __init create_domUs(void)
>                                            GUEST_VPL011_SPI - 32 + 1);
>           }
>   
> +        /*
> +         * The variable max_init_domid is initialized with zero, so here it's
> +         * very important to use the pre-increment operator to call
> +         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
> +         */
>           d = domain_create(++max_init_domid, &d_cfg, false);
>           if ( IS_ERR(d) )
>               panic("Error creating domain %s\n", dt_node_name(node));
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:02:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:02:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.109999.209946 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMQe-0008Tr-L3; Tue, 13 Apr 2021 17:02:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 109999.209946; Tue, 13 Apr 2021 17: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 1lWMQe-0008Tk-Gb; Tue, 13 Apr 2021 17:02:20 +0000
Received: by outflank-mailman (input) for mailman id 109999;
 Tue, 13 Apr 2021 17:02: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 1lWMQc-0008Td-Tr
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:02: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 1lWMQX-0008Dk-VI; Tue, 13 Apr 2021 17:02:13 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWMQX-0006OA-N5; Tue, 13 Apr 2021 17:02: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=DhazNOICkI7Ky79rqcMRK/X26f7ux6q+SiOjb1P5lQI=; b=6XozFQ9wrJyyZmpaiGJoh3rsd6
	lFPY4/5LTJrO0pVbTf19SC+IQBntX+iOypr9TT7FQC1IkOsSG9H2lqs/Ig0nd5SDnGq6YRCrAWj+a
	g0rhj7Voru6TLSg3phNCD3Yr3nkxsux4lLW4c0Hc9gLnDlpjfftOUoqLFf+widbIdocs=;
Subject: Re: [PATCH v3 4/4] xen/arm: Prevent Dom0 to be loaded when using
 dom0less
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-5-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <250ee5c2-93c9-a7ae-4038-746fa569166d@xen.org>
Date: Tue, 13 Apr 2021 18:02:10 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210412105243.23354-5-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 12/04/2021 11:52, Luca Fancellu wrote:
> This patch prevents the dom0 to be loaded skipping its
> building and going forward to build domUs when the dom0
> kernel is not found and at least one domU is present.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> ---
> v3 changes:
> - Rephrase documentation
> ---
>   docs/features/dom0less.pandoc |  7 +++---
>   xen/arch/arm/setup.c          | 42 ++++++++++++++++++++++++++++++++---
>   2 files changed, 43 insertions(+), 6 deletions(-)
> 
> diff --git a/docs/features/dom0less.pandoc b/docs/features/dom0less.pandoc
> index d798596cdf..c9edb529e1 100644
> --- a/docs/features/dom0less.pandoc
> +++ b/docs/features/dom0less.pandoc
> @@ -16,9 +16,10 @@ Multiboot specification has been extended to allow for multiple domains
>   to be passed to Xen. See docs/misc/arm/device-tree/booting.txt for more
>   information about the Multiboot specification and how to use it.
>   
> -Currently, a control domain ("dom0") is still required, but in the
> -future it will become unnecessary when all domains are created
> -directly from Xen. Instead of waiting for the control domain to be fully
> +Currently, a control domain ("dom0") is still required to manage the DomU
> +domains, but the system can start also without dom0 if the Device Tree
> +doesn't specify the dom0 kernel and it declares one or more domUs.
> +Instead of waiting for the control domain (when declared) to be fully
>   booted and the Xen tools to become available, domains created by Xen
>   this way are started right away in parallel. Hence, their boot time is
>   typically much shorter.
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index b405f58996..ecc4f0ae98 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -793,6 +793,38 @@ static void __init setup_mm(void)
>   }
>   #endif
>   
> +static bool __init is_dom0less_mode(void)
> +{
> +    struct bootmodules *mods = &bootinfo.modules;
> +    struct bootmodule *mod;
> +    unsigned int i;
> +    bool dom0found = false;
> +    bool domUfound = false;
> +
> +    /* Look into the bootmodules */
> +    for ( i = 0 ; i < mods->nr_mods ; i++ )
> +    {
> +        mod = &mods->module[i];
> +        /* Find if dom0 and domU kernels are present */
> +        if ( mod->kind == BOOTMOD_KERNEL )
> +        {
> +            if ( mod->domU == false )
> +            {
> +                dom0found = true;
> +                break;
> +            }
> +            else
> +                domUfound = true;
> +        }
> +    }
> +
> +    /*
> +     * If there is no dom0 kernel but at least one domU, then we are in
> +     * dom0less mode

NIT: missing full stop.

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:12:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:12:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110008.209957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMaK-00013Z-L6; Tue, 13 Apr 2021 17:12:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110008.209957; Tue, 13 Apr 2021 17:12:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMaK-00013S-I4; Tue, 13 Apr 2021 17:12:20 +0000
Received: by outflank-mailman (input) for mailman id 110008;
 Tue, 13 Apr 2021 17:12: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 1lWMaJ-00013N-L5
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:12: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 1lWMaD-0008Ng-E9; Tue, 13 Apr 2021 17:12:13 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWMaC-00076s-SB; Tue, 13 Apr 2021 17: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=Dw7T18QSECdo1ElHNtfLOev4aS0oSjPtMjpITKCawEE=; b=55vE7S+1oXziekxx71hh+hdQ+j
	jtW90uHQwVYtRXFHx5ur6TQuS8XGh9UsN8MvhHi8D8huqyBEkR3zJDboLxrL7SkC4H6bno+bPlkua
	bN2hWr1YrI8In+vRUfb6N+6s/H5dhwAUpfzpxumYBEjXOT94qQHGaXl8NmHbyLQotblM=;
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
From: Julien Grall <julien@xen.org>
Message-ID: <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
Date: Tue, 13 Apr 2021 18:12:10 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YHQlptvoC06rqNhQ@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Roger,

On 12/04/2021 11:49, Roger Pau Monné wrote:
> On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
>> MSI related code in the "passthrough/pci.c” file is not useful for ARM
>> when MSI interrupts are injected via GICv3 ITS.
>>
>> Therefore introducing the new flag CONFIG_PCI_MSI_INTERCEPT to gate the
>> MSI code for ARM in common code. Also move the arch-specific code to an
>> arch-specific directory and implement the stub version for the unused
>> code for ARM to avoid compilation error when HAS_PCI is enabled for ARM.
>>
>> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
>> ---
>> Changes since v1:
>>   - Rename CONFIG_HAS_PCI_MSI to CONFIG_PCI_MSI_INTERCEPT
>>   - Implement stub version of the unused function for ARM.
>>   - Move unneeded function to x86 file.
>> ---
>>   xen/arch/x86/msi.c            | 64 +++++++++++++++++++++++++++++++++++
>>   xen/drivers/passthrough/pci.c | 51 +++++++---------------------
>>   xen/drivers/pci/Kconfig       |  4 +++
>>   xen/drivers/vpci/Makefile     |  3 +-
>>   xen/drivers/vpci/header.c     | 19 +++--------
>>   xen/drivers/vpci/msix.c       | 25 ++++++++++++++
>>   xen/drivers/vpci/vpci.c       |  3 +-
>>   xen/include/asm-arm/msi.h     | 44 ++++++++++++++++++++++++
>>   xen/include/asm-x86/msi.h     |  4 +++
>>   xen/include/xen/pci.h         | 11 +++---
>>   xen/include/xen/vpci.h        | 24 ++++++++++++-
>>   xen/xsm/flask/hooks.c         |  8 ++---
>>   12 files changed, 195 insertions(+), 65 deletions(-)
>>   create mode 100644 xen/include/asm-arm/msi.h
>>
>> diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
>> index 5febc0ea4b..a6356f4a63 100644
>> --- a/xen/arch/x86/msi.c
>> +++ b/xen/arch/x86/msi.c
>> @@ -1411,6 +1411,70 @@ void __init early_msi_init(void)
>>           return;
>>   }
>>   
>> +int alloc_pci_msi(struct pci_dev *pdev)
> 
> I would rather name it pci_msi_init...
> 
>> +{
>> +    unsigned int pos;
>> +
>> +    INIT_LIST_HEAD(&pdev->msi_list);
>> +
>> +    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
>> +                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSI);
>> +    if ( pos )
>> +    {
>> +        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
>> +
>> +        pdev->msi_maxvec = multi_msi_capable(ctrl);
>> +    }
>> +
>> +    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
>> +                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSIX);
>> +    if ( pos )
>> +    {
>> +        struct arch_msix *msix = xzalloc(struct arch_msix);
>> +        uint16_t ctrl;
>> +
>> +        if ( !msix )
>> +            return -ENOMEM;
>> +
>> +        spin_lock_init(&msix->table_lock);
>> +
>> +        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
>> +        msix->nr_entries = msix_table_size(ctrl);
>> +
>> +        pdev->msix = msix;
>> +    }
>> +
>> +    return 0;
>> +}
>> +
>> +void free_pci_msi(struct pci_dev *pdev)
> 
> ...and pci_msi_free.
> 
>> +{
>> +    xfree(pdev->msix);
>> +}
>> +
>> +int pci_assign_msix_init(struct domain *d, struct pci_dev *pdev)
> 
> This kind of a confusing name - what about pci_msix_assign?
> 
>> +{
>> +    int rc;
>> +
>> +    if ( pdev->msix )
>> +    {
>> +        rc = pci_reset_msix_state(pdev);
>> +        if ( rc )
>> +            return rc;
>> +        msixtbl_init(d);
>> +    }
>> +
>> +    return 0;
>> +}
>> +
>> +void dump_pci_msi(struct pci_dev *pdev)
>> +{
>> +    struct msi_desc *msi;
>> +
>> +    list_for_each_entry ( msi, &pdev->msi_list, list )
>> +        printk("%d ", msi->irq);
>> +}
> 
> I wonder, those those function really want to be in a x86 specific
> file? There's nothing x86 specific about them AFAICT.
> 
> Would it make sense to create a separate msi-intercept.c file with
> those that gets included when CONFIG_PCI_MSI_INTERCEPT?
> 
>>   static void dump_msi(unsigned char key)
>>   {
>>       unsigned int irq;
>> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
>> index 705137f8be..1b473502a1 100644
>> --- a/xen/drivers/passthrough/pci.c
>> +++ b/xen/drivers/passthrough/pci.c
>> @@ -314,6 +314,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
>>   {
>>       struct pci_dev *pdev;
>>       unsigned int pos;
>> +    int rc;
>>   
>>       list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
>>           if ( pdev->bus == bus && pdev->devfn == devfn )
>> @@ -327,35 +328,12 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
>>       *((u8*) &pdev->bus) = bus;
>>       *((u8*) &pdev->devfn) = devfn;
>>       pdev->domain = NULL;
>> -    INIT_LIST_HEAD(&pdev->msi_list);
>> -
>> -    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
>> -                              PCI_CAP_ID_MSI);
>> -    if ( pos )
>> -    {
>> -        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
>> -
>> -        pdev->msi_maxvec = multi_msi_capable(ctrl);
>> -    }
>>   
>> -    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
>> -                              PCI_CAP_ID_MSIX);
>> -    if ( pos )
>> +    rc = alloc_pci_msi(pdev);
>> +    if ( rc )
>>       {
>> -        struct arch_msix *msix = xzalloc(struct arch_msix);
>> -        uint16_t ctrl;
>> -
>> -        if ( !msix )
>> -        {
>> -            xfree(pdev);
>> -            return NULL;
>> -        }
>> -        spin_lock_init(&msix->table_lock);
>> -
>> -        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
>> -        msix->nr_entries = msix_table_size(ctrl);
>> -
>> -        pdev->msix = msix;
>> +        xfree(pdev);
>> +        return NULL;
>>       }
>>   
>>       list_add(&pdev->alldevs_list, &pseg->alldevs_list);
>> @@ -449,7 +427,7 @@ static void free_pdev(struct pci_seg *pseg, struct pci_dev *pdev)
>>       }
>>   
>>       list_del(&pdev->alldevs_list);
>> -    xfree(pdev->msix);
>> +    free_pci_msi(pdev);
>>       xfree(pdev);
>>   }
>>   
>> @@ -1271,7 +1249,6 @@ bool_t pcie_aer_get_firmware_first(const struct pci_dev *pdev)
>>   static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
>>   {
>>       struct pci_dev *pdev;
>> -    struct msi_desc *msi;
>>   
>>       printk("==== segment %04x ====\n", pseg->nr);
>>   
>> @@ -1280,8 +1257,7 @@ static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
>>           printk("%pp - %pd - node %-3d - MSIs < ",
>>                  &pdev->sbdf, pdev->domain,
>>                  (pdev->node != NUMA_NO_NODE) ? pdev->node : -1);
>> -        list_for_each_entry ( msi, &pdev->msi_list, list )
>> -               printk("%d ", msi->irq);
>> +        dump_pci_msi(pdev);
>>           printk(">\n");
>>       }
>>   
>> @@ -1303,12 +1279,15 @@ static int __init setup_dump_pcidevs(void)
>>   }
>>   __initcall(setup_dump_pcidevs);
>>   
>> +
>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>   int iommu_update_ire_from_msi(
>>       struct msi_desc *msi_desc, struct msi_msg *msg)
>>   {
>>       return iommu_intremap
>>              ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>>   }
>> +#endif
> 
> This is not exactly related to MSI intercepts, the IOMMU interrupt
> remapping table will also be used for interrupt entries for devices
> being used by Xen directly, where no intercept is required.

On Arm, this is not tie to the IOMMU. Instead, this handled is a 
separate MSI controller (such as the ITS).

> 
> And then you also want to gate the hook from iommu_ops itself with
> CONFIG_PCI_MSI_INTERCEPT, if we want to got this route.


All the callers are in the x86 code. So how about moving the function in 
an x86 specific file?

>> diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
>> index 9f5b5d52e1..a6b12717b1 100644
>> --- a/xen/include/xen/vpci.h
>> +++ b/xen/include/xen/vpci.h
>> @@ -91,6 +91,7 @@ struct vpci {
>>           /* FIXME: currently there's no support for SR-IOV. */
>>       } header;
>>   
>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>       /* MSI data. */
>>       struct vpci_msi {
>>         /* Address. */
>> @@ -136,6 +137,7 @@ struct vpci {
>>               struct vpci_arch_msix_entry arch;
>>           } entries[];
>>       } *msix;
>> +#endif /* CONFIG_PCI_MSI_INTERCEPT */
> 
> Note that here you just remove two pointers from the struct, not that
> I'm opposed to it, but it's not that much space that's saved anyway.
> Ie: it might also be fine to just leave them as NULL unconditionally
> on Arm.

Can the two pointers be NULL on x86? If not, then I would prefer if they 
disappear on Arm so there is less chance to make any mistake (such as 
unconditionally accessing the pointer in common code).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:21:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:21:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110013.209969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMid-00020C-Gq; Tue, 13 Apr 2021 17:20:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110013.209969; Tue, 13 Apr 2021 17:20: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 1lWMid-000205-Do; Tue, 13 Apr 2021 17:20:55 +0000
Received: by outflank-mailman (input) for mailman id 110013;
 Tue, 13 Apr 2021 17:20:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=0w1+=JK=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lWMib-000200-Qk
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:20:54 +0000
Received: from mo6-p01-ob.smtp.rzone.de (unknown [2a01:238:400:200::7])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1e1d8a9f-9e38-4bb2-8047-276e6b4beff5;
 Tue, 13 Apr 2021 17:20:50 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.2 DYNA|AUTH)
 with ESMTPSA id 603b2dx3DHKU0Fs
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits))
 (Client did not present a certificate);
 Tue, 13 Apr 2021 19:20: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: 1e1d8a9f-9e38-4bb2-8047-276e6b4beff5
ARC-Seal: i=1; a=rsa-sha256; t=1618334431; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=cV70FsMfNO+YrPe17h6l/vUut1/vYbjeZ+TPodSaf+m515PMRv8HWKO1iKpg8Vuszc
    9XAEfxkviJAg7MBH2uEmD3RSIGf5Mlui3ILFV21Kv/F4JR6OQNuJl3U4fo1Bi2zTBlMN
    H/R0DsElJ6WTSRZwGo/1jTUsUaQQW9Fvvq0e6E/4n5Rtv13Ju432f4d1rAVGrqcaEtdS
    +6SyBCB7ZrFBaeK0r6ZyJ+G0Sa44/ICAJ3CAOo3Yznoi49/PU5iAW/TaA0+QNxDEbZ/U
    zhQ7bkhntSDbXWurykL5sYGxSk2RS0IOw0fxqBG80DCZCzHSHNFybR27L3MugXant3YH
    0uuw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1618334431;
    s=strato-dkim-0002; d=strato.com;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=js7V0qkPeIPRK2vtLzZ3PTSxhK7xxHnDtpKY6w5jAuo=;
    b=jSDYj5Mrcmft8iEqJhAfee+rP6CCEYr/1tgtg5XjIKsMMawUIpPyq7lfaN3Gtm9YR9
    3wGqe9PkJTKdrXgk+DFkdpoqR5KVs1y6Ng7q266Z/NkJmXHLBc25MTljL2eUnG+ANXgY
    XUvOo5lIrN/9LzHv5mmxO4QHkIbPTBjpbSdVPG1udpq1eMQT57ZQ4emJ0jEpTKxOQlTI
    Xr5z/HngfaTrkcO+4s2dYcEzjLmXu2AaDNH5dLqD9/SQLGSRyO6Ldi2GL9rsAH55cdhJ
    dbgb2iHf5gNob24oWGCG4Frq4OKWTrVdw7HQaGTWdGmth6WSCAFzhxdwF3YltYQsEsYD
    1PTA==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1618334431;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=js7V0qkPeIPRK2vtLzZ3PTSxhK7xxHnDtpKY6w5jAuo=;
    b=LBKJJy+gbAKZXVfmsdy98UZVHFPECklXSyk7gjHEAiLA+Pl1hMRjmfLtMQ39uDD1hH
    wzg/P0pQuhNdZZJpAJTrEsXAhU29j2uMZCyDQdZ0h3mwZMPxIcnbk+nIqjK/s1urUHKk
    7vAvJr6k6h/t7wuIAfkCgCQDYRRETxN4SLTKkxB6HnSdO+a/Hdq/A48JrZvcRKYNsxWf
    kgtzNCgyro6Yr/xoesdL+fhDGfVskzywEEKnxidVKHCwd8xS/7yLVwZ9/WD2euLQgp+W
    vF/4784SqNWL+ezj60zwCXvYIUxMuAx6w1kkZdeDUKk0USBe3DR6ecSUMQC8krFHBCJK
    cBSA==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzBW/OdlBZQ4AHSS3m8g"
X-RZG-CLASS-ID: mo00
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	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>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v3] tools: create libxensaverestore
Date: Tue, 13 Apr 2021 19:20:27 +0200
Message-Id: <20210413172028.29373-1-olaf@aepfle.de>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Move all save/restore related code from libxenguest.so into a separate
library libxensaverestore.so. The only consumer is libxl-save-helper.
There is no need to have the moved code mapped all the time in binaries
where libxenguest.so is used.

According to size(1) the change is:
   text	   data	    bss	    dec	    hex	filename
 187183	   4304	     48	 191535	  2ec2f	guest/libxenguest.so.4.15.0

 124106	   3376	     48	 127530	  1f22a	guest/libxenguest.so.4.15.0
  67841	   1872	      8	  69721	  11059	saverestore/libxensaverestore.so.4.15.0

Signed-off-by: Olaf Hering <olaf@aepfle.de>
---
v3:
- repost in time for 4.16
v2:
- copy also license header
- move xg_nomigrate.c
- add size(1) output to commit msg
- remove change from libxl_create.c

 .gitignore                                    |   2 +
 tools/include/xenguest.h                      | 186 ----------------
 tools/include/xensaverestore.h                | 208 ++++++++++++++++++
 tools/libs/Makefile                           |   1 +
 tools/libs/guest/Makefile                     |  11 -
 tools/libs/guest/xg_offline_page.c            |   1 -
 tools/libs/light/Makefile                     |   4 +-
 tools/libs/light/libxl_internal.h             |   1 +
 tools/libs/light/libxl_save_helper.c          |   1 +
 tools/libs/light/libxl_save_msgs_gen.pl       |   2 +-
 tools/libs/saverestore/Makefile               |  38 ++++
 .../{guest => saverestore}/xg_nomigrate.c     |   0
 .../{guest => saverestore}/xg_save_restore.h  |   2 -
 .../{guest => saverestore}/xg_sr_common.c     |   0
 .../{guest => saverestore}/xg_sr_common.h     |  12 +
 .../{guest => saverestore}/xg_sr_common_x86.c |   0
 .../{guest => saverestore}/xg_sr_common_x86.h |   0
 .../xg_sr_common_x86_pv.c                     |   0
 .../xg_sr_common_x86_pv.h                     |   0
 .../{guest => saverestore}/xg_sr_restore.c    |   0
 .../xg_sr_restore_x86_hvm.c                   |   0
 .../xg_sr_restore_x86_pv.c                    |   0
 .../libs/{guest => saverestore}/xg_sr_save.c  |   0
 .../xg_sr_save_x86_hvm.c                      |   0
 .../xg_sr_save_x86_pv.c                       |   0
 .../xg_sr_stream_format.h                     |   0
 tools/libs/uselibs.mk                         |   4 +-
 27 files changed, 269 insertions(+), 204 deletions(-)
 create mode 100644 tools/include/xensaverestore.h
 create mode 100644 tools/libs/saverestore/Makefile
 rename tools/libs/{guest => saverestore}/xg_nomigrate.c (100%)
 rename tools/libs/{guest => saverestore}/xg_save_restore.h (98%)
 rename tools/libs/{guest => saverestore}/xg_sr_common.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_common.h (98%)
 rename tools/libs/{guest => saverestore}/xg_sr_common_x86.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_common_x86.h (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_common_x86_pv.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_common_x86_pv.h (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_restore.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_restore_x86_hvm.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_restore_x86_pv.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_save.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_save_x86_hvm.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_save_x86_pv.c (100%)
 rename tools/libs/{guest => saverestore}/xg_sr_stream_format.h (100%)

diff --git a/.gitignore b/.gitignore
index 1c2fa1530b..95c5c02039 100644
--- a/.gitignore
+++ b/.gitignore
@@ -147,6 +147,8 @@ tools/libs/light/test_timedereg
 tools/libs/light/test_fdderegrace
 tools/libs/light/tmp.*
 tools/libs/light/xenlight.pc
+tools/libs/saverestore/libxensaverestore.map
+tools/libs/saverestore/xensaverestore.pc
 tools/libs/stat/_paths.h
 tools/libs/stat/headers.chk
 tools/libs/stat/libxenstat.map
diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h
index 217022b6e7..feb20dc375 100644
--- a/tools/include/xenguest.h
+++ b/tools/include/xenguest.h
@@ -24,9 +24,6 @@
 
 #define XC_NUMA_NO_NODE   (~0U)
 
-#define XCFLAGS_LIVE      (1 << 0)
-#define XCFLAGS_DEBUG     (1 << 1)
-
 #define X86_64_B_SIZE   64 
 #define X86_32_B_SIZE   32
 
@@ -433,189 +430,6 @@ static inline xen_pfn_t xc_dom_p2m(struct xc_dom_image *dom, xen_pfn_t pfn)
  */
 struct xenevtchn_handle;
 
-/* For save's precopy_policy(). */
-struct precopy_stats
-{
-    unsigned int iteration;
-    unsigned long total_written;
-    long dirty_count; /* -1 if unknown */
-};
-
-/*
- * A precopy_policy callback may not be running in the same address
- * space as libxc an so precopy_stats is passed by value.
- */
-typedef int (*precopy_policy_t)(struct precopy_stats, void *);
-
-/* callbacks provided by xc_domain_save */
-struct save_callbacks {
-    /*
-     * Called after expiration of checkpoint interval,
-     * to suspend the guest.
-     */
-    int (*suspend)(void *data);
-
-    /*
-     * Called before and after every batch of page data sent during
-     * the precopy phase of a live migration to ask the caller what
-     * to do next based on the current state of the precopy migration.
-     *
-     * Should return one of the values listed below:
-     */
-#define XGS_POLICY_ABORT          (-1) /* Abandon the migration entirely
-                                        * and tidy up. */
-#define XGS_POLICY_CONTINUE_PRECOPY 0  /* Remain in the precopy phase. */
-#define XGS_POLICY_STOP_AND_COPY    1  /* Immediately suspend and transmit the
-                                        * remaining dirty pages. */
-    precopy_policy_t precopy_policy;
-
-    /*
-     * Called after the guest's dirty pages have been
-     *  copied into an output buffer.
-     * Callback function resumes the guest & the device model,
-     *  returns to xc_domain_save.
-     * xc_domain_save then flushes the output buffer, while the
-     *  guest continues to run.
-     */
-    int (*postcopy)(void *data);
-
-    /*
-     * Called after the memory checkpoint has been flushed
-     * out into the network. Typical actions performed in this
-     * callback include:
-     *   (a) send the saved device model state (for HVM guests),
-     *   (b) wait for checkpoint ack
-     *   (c) release the network output buffer pertaining to the acked checkpoint.
-     *   (c) sleep for the checkpoint interval.
-     *
-     * returns:
-     * 0: terminate checkpointing gracefully
-     * 1: take another checkpoint
-     */
-    int (*checkpoint)(void *data);
-
-    /*
-     * Called after the checkpoint callback.
-     *
-     * returns:
-     * 0: terminate checkpointing gracefully
-     * 1: take another checkpoint
-     */
-    int (*wait_checkpoint)(void *data);
-
-    /* Enable qemu-dm logging dirty pages to xen */
-    int (*switch_qemu_logdirty)(uint32_t domid, unsigned enable, void *data); /* HVM only */
-
-    /* to be provided as the last argument to each callback function */
-    void *data;
-};
-
-/* Type of stream.  Plain, or using a continuous replication protocol? */
-typedef enum {
-    XC_STREAM_PLAIN,
-    XC_STREAM_REMUS,
-    XC_STREAM_COLO,
-} xc_stream_type_t;
-
-/**
- * This function will save a running domain.
- *
- * @param xch a handle to an open hypervisor interface
- * @param io_fd the file descriptor to save a domain to
- * @param dom the id of the domain
- * @param flags XCFLAGS_xxx
- * @param stream_type XC_STREAM_PLAIN if the far end of the stream
- *        doesn't use checkpointing
- * @param recv_fd Only used for XC_STREAM_COLO.  Contains backchannel from
- *        the destination side.
- * @return 0 on success, -1 on failure
- */
-int xc_domain_save(xc_interface *xch, int io_fd, uint32_t dom,
-                   uint32_t flags, struct save_callbacks *callbacks,
-                   xc_stream_type_t stream_type, int recv_fd);
-
-/* callbacks provided by xc_domain_restore */
-struct restore_callbacks {
-    /*
-     * Called once the STATIC_DATA_END record has been received/inferred.
-     *
-     * For compatibility with older streams, provides a list of static data
-     * expected to be found in the stream, which was missing.  A higher level
-     * toolstack is responsible for providing any necessary compatibiltiy.
-     */
-#define XGR_SDD_MISSING_CPUID (1 << 0)
-#define XGR_SDD_MISSING_MSR   (1 << 1)
-    int (*static_data_done)(unsigned int missing, void *data);
-
-    /* Called after a new checkpoint to suspend the guest. */
-    int (*suspend)(void *data);
-
-    /*
-     * Called after the secondary vm is ready to resume.
-     * Callback function resumes the guest & the device model,
-     * returns to xc_domain_restore.
-     */
-    int (*postcopy)(void *data);
-
-    /*
-     * A checkpoint record has been found in the stream.
-     * returns:
-     */
-#define XGR_CHECKPOINT_ERROR    0 /* Terminate processing */
-#define XGR_CHECKPOINT_SUCCESS  1 /* Continue reading more data from the stream */
-#define XGR_CHECKPOINT_FAILOVER 2 /* Failover and resume VM */
-    int (*checkpoint)(void *data);
-
-    /*
-     * Called after the checkpoint callback.
-     *
-     * returns:
-     * 0: terminate checkpointing gracefully
-     * 1: take another checkpoint
-     */
-    int (*wait_checkpoint)(void *data);
-
-    /*
-     * callback to send store gfn and console gfn to xl
-     * if we want to resume vm before xc_domain_save()
-     * exits.
-     */
-    void (*restore_results)(xen_pfn_t store_gfn, xen_pfn_t console_gfn,
-                            void *data);
-
-    /* to be provided as the last argument to each callback function */
-    void *data;
-};
-
-/**
- * This function will restore a saved domain.
- *
- * Domain is restored in a suspended state ready to be unpaused.
- *
- * @param xch a handle to an open hypervisor interface
- * @param io_fd the file descriptor to restore a domain from
- * @param dom the id of the domain
- * @param store_evtchn the xenstore event channel for this domain to use
- * @param store_mfn filled with the gfn of the store page
- * @param store_domid the backend domain for xenstore
- * @param console_evtchn the console event channel for this domain to use
- * @param console_mfn filled with the gfn of the console page
- * @param console_domid the backend domain for xenconsole
- * @param stream_type XC_STREAM_PLAIN if the far end of the stream is using
- *        checkpointing
- * @param callbacks non-NULL to receive a callback to restore toolstack
- *        specific data
- * @param send_back_fd Only used for XC_STREAM_COLO.  Contains backchannel to
- *        the source side.
- * @return 0 on success, -1 on failure
- */
-int xc_domain_restore(xc_interface *xch, int io_fd, uint32_t dom,
-                      unsigned int store_evtchn, unsigned long *store_mfn,
-                      uint32_t store_domid, unsigned int console_evtchn,
-                      unsigned long *console_mfn, uint32_t console_domid,
-                      xc_stream_type_t stream_type,
-                      struct restore_callbacks *callbacks, int send_back_fd);
-
 /**
  * This function will create a domain for a paravirtualized Linux
  * using file names pointing to kernel and ramdisk
diff --git a/tools/include/xensaverestore.h b/tools/include/xensaverestore.h
new file mode 100644
index 0000000000..0410f0469e
--- /dev/null
+++ b/tools/include/xensaverestore.h
@@ -0,0 +1,208 @@
+/******************************************************************************
+ * A library for guest domain save/restore/migration in Xen.
+ *
+ * Copyright (c) 2003-2004, K A Fraser.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation;
+ * version 2.1 of the License.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; If not, see <http://www.gnu.org/licenses/>.
+ */
+#ifndef XENSAVERESTORE_H
+#define XENSAVERESTORE_H
+
+#define XCFLAGS_LIVE      (1 << 0)
+#define XCFLAGS_DEBUG     (1 << 1)
+
+/* For save's precopy_policy(). */
+struct precopy_stats
+{
+    unsigned int iteration;
+    unsigned long total_written;
+    long dirty_count; /* -1 if unknown */
+};
+
+/*
+ * A precopy_policy callback may not be running in the same address
+ * space as libxc an so precopy_stats is passed by value.
+ */
+typedef int (*precopy_policy_t)(struct precopy_stats, void *);
+
+/* callbacks provided by xc_domain_save */
+struct save_callbacks {
+    /*
+     * Called after expiration of checkpoint interval,
+     * to suspend the guest.
+     */
+    int (*suspend)(void *data);
+
+    /*
+     * Called before and after every batch of page data sent during
+     * the precopy phase of a live migration to ask the caller what
+     * to do next based on the current state of the precopy migration.
+     *
+     * Should return one of the values listed below:
+     */
+#define XGS_POLICY_ABORT          (-1) /* Abandon the migration entirely
+                                        * and tidy up. */
+#define XGS_POLICY_CONTINUE_PRECOPY 0  /* Remain in the precopy phase. */
+#define XGS_POLICY_STOP_AND_COPY    1  /* Immediately suspend and transmit the
+                                        * remaining dirty pages. */
+    precopy_policy_t precopy_policy;
+
+    /*
+     * Called after the guest's dirty pages have been
+     *  copied into an output buffer.
+     * Callback function resumes the guest & the device model,
+     *  returns to xc_domain_save.
+     * xc_domain_save then flushes the output buffer, while the
+     *  guest continues to run.
+     */
+    int (*postcopy)(void *data);
+
+    /*
+     * Called after the memory checkpoint has been flushed
+     * out into the network. Typical actions performed in this
+     * callback include:
+     *   (a) send the saved device model state (for HVM guests),
+     *   (b) wait for checkpoint ack
+     *   (c) release the network output buffer pertaining to the acked checkpoint.
+     *   (c) sleep for the checkpoint interval.
+     *
+     * returns:
+     * 0: terminate checkpointing gracefully
+     * 1: take another checkpoint
+     */
+    int (*checkpoint)(void *data);
+
+    /*
+     * Called after the checkpoint callback.
+     *
+     * returns:
+     * 0: terminate checkpointing gracefully
+     * 1: take another checkpoint
+     */
+    int (*wait_checkpoint)(void *data);
+
+    /* Enable qemu-dm logging dirty pages to xen */
+    int (*switch_qemu_logdirty)(uint32_t domid, unsigned enable, void *data); /* HVM only */
+
+    /* to be provided as the last argument to each callback function */
+    void *data;
+};
+
+/* Type of stream.  Plain, or using a continuous replication protocol? */
+typedef enum {
+    XC_STREAM_PLAIN,
+    XC_STREAM_REMUS,
+    XC_STREAM_COLO,
+} xc_stream_type_t;
+
+/**
+ * This function will save a running domain.
+ *
+ * @param xch a handle to an open hypervisor interface
+ * @param io_fd the file descriptor to save a domain to
+ * @param dom the id of the domain
+ * @param flags XCFLAGS_xxx
+ * @param stream_type XC_STREAM_PLAIN if the far end of the stream
+ *        doesn't use checkpointing
+ * @param recv_fd Only used for XC_STREAM_COLO.  Contains backchannel from
+ *        the destination side.
+ * @return 0 on success, -1 on failure
+ */
+int xc_domain_save(xc_interface *xch, int io_fd, uint32_t dom,
+                   uint32_t flags, struct save_callbacks *callbacks,
+                   xc_stream_type_t stream_type, int recv_fd);
+
+/* callbacks provided by xc_domain_restore */
+struct restore_callbacks {
+    /*
+     * Called once the STATIC_DATA_END record has been received/inferred.
+     *
+     * For compatibility with older streams, provides a list of static data
+     * expected to be found in the stream, which was missing.  A higher level
+     * toolstack is responsible for providing any necessary compatibiltiy.
+     */
+#define XGR_SDD_MISSING_CPUID (1 << 0)
+#define XGR_SDD_MISSING_MSR   (1 << 1)
+    int (*static_data_done)(unsigned int missing, void *data);
+
+    /* Called after a new checkpoint to suspend the guest. */
+    int (*suspend)(void *data);
+
+    /*
+     * Called after the secondary vm is ready to resume.
+     * Callback function resumes the guest & the device model,
+     * returns to xc_domain_restore.
+     */
+    int (*postcopy)(void *data);
+
+    /*
+     * A checkpoint record has been found in the stream.
+     * returns:
+     */
+#define XGR_CHECKPOINT_ERROR    0 /* Terminate processing */
+#define XGR_CHECKPOINT_SUCCESS  1 /* Continue reading more data from the stream */
+#define XGR_CHECKPOINT_FAILOVER 2 /* Failover and resume VM */
+    int (*checkpoint)(void *data);
+
+    /*
+     * Called after the checkpoint callback.
+     *
+     * returns:
+     * 0: terminate checkpointing gracefully
+     * 1: take another checkpoint
+     */
+    int (*wait_checkpoint)(void *data);
+
+    /*
+     * callback to send store gfn and console gfn to xl
+     * if we want to resume vm before xc_domain_save()
+     * exits.
+     */
+    void (*restore_results)(xen_pfn_t store_gfn, xen_pfn_t console_gfn,
+                            void *data);
+
+    /* to be provided as the last argument to each callback function */
+    void *data;
+};
+
+/**
+ * This function will restore a saved domain.
+ *
+ * Domain is restored in a suspended state ready to be unpaused.
+ *
+ * @param xch a handle to an open hypervisor interface
+ * @param io_fd the file descriptor to restore a domain from
+ * @param dom the id of the domain
+ * @param store_evtchn the xenstore event channel for this domain to use
+ * @param store_mfn filled with the gfn of the store page
+ * @param store_domid the backend domain for xenstore
+ * @param console_evtchn the console event channel for this domain to use
+ * @param console_mfn filled with the gfn of the console page
+ * @param console_domid the backend domain for xenconsole
+ * @param stream_type XC_STREAM_PLAIN if the far end of the stream is using
+ *        checkpointing
+ * @param callbacks non-NULL to receive a callback to restore toolstack
+ *        specific data
+ * @param send_back_fd Only used for XC_STREAM_COLO.  Contains backchannel to
+ *        the source side.
+ * @return 0 on success, -1 on failure
+ */
+int xc_domain_restore(xc_interface *xch, int io_fd, uint32_t dom,
+                      unsigned int store_evtchn, unsigned long *store_mfn,
+                      uint32_t store_domid, unsigned int console_evtchn,
+                      unsigned long *console_mfn, uint32_t console_domid,
+                      xc_stream_type_t stream_type,
+                      struct restore_callbacks *callbacks, int send_back_fd);
+
+#endif /* XENSAVERESTORE_H */
diff --git a/tools/libs/Makefile b/tools/libs/Makefile
index 1afcd12e2b..ca43c66777 100644
--- a/tools/libs/Makefile
+++ b/tools/libs/Makefile
@@ -12,6 +12,7 @@ SUBDIRS-y += devicemodel
 SUBDIRS-y += ctrl
 SUBDIRS-y += guest
 SUBDIRS-y += hypfs
+SUBDIRS-y += saverestore
 SUBDIRS-y += store
 SUBDIRS-y += stat
 SUBDIRS-$(CONFIG_Linux) += vchan
diff --git a/tools/libs/guest/Makefile b/tools/libs/guest/Makefile
index 604e1695d6..7bb3d92553 100644
--- a/tools/libs/guest/Makefile
+++ b/tools/libs/guest/Makefile
@@ -10,18 +10,7 @@ SRCS-y += xg_private.c
 SRCS-y += xg_domain.c
 SRCS-y += xg_suspend.c
 ifeq ($(CONFIG_MIGRATE),y)
-SRCS-y += xg_sr_common.c
-SRCS-$(CONFIG_X86) += xg_sr_common_x86.c
-SRCS-$(CONFIG_X86) += xg_sr_common_x86_pv.c
-SRCS-$(CONFIG_X86) += xg_sr_restore_x86_pv.c
-SRCS-$(CONFIG_X86) += xg_sr_restore_x86_hvm.c
-SRCS-$(CONFIG_X86) += xg_sr_save_x86_pv.c
-SRCS-$(CONFIG_X86) += xg_sr_save_x86_hvm.c
-SRCS-y += xg_sr_restore.c
-SRCS-y += xg_sr_save.c
 SRCS-y += xg_offline_page.c
-else
-SRCS-y += xg_nomigrate.c
 endif
 
 CFLAGS += -I$(XEN_libxenctrl)
diff --git a/tools/libs/guest/xg_offline_page.c b/tools/libs/guest/xg_offline_page.c
index d4722f0e8c..e49ef55887 100644
--- a/tools/libs/guest/xg_offline_page.c
+++ b/tools/libs/guest/xg_offline_page.c
@@ -29,7 +29,6 @@
 
 #include "xc_private.h"
 #include "xg_private.h"
-#include "xg_save_restore.h"
 
 struct pte_backup_entry
 {
diff --git a/tools/libs/light/Makefile b/tools/libs/light/Makefile
index 7d8c51d492..68e51dd13c 100644
--- a/tools/libs/light/Makefile
+++ b/tools/libs/light/Makefile
@@ -179,7 +179,7 @@ $(ACPI_OBJS) $(ACPI_PIC_OBJS): CFLAGS += -I. -DLIBACPI_STDUTILS=\"$(CURDIR)/libx
 $(TEST_PROG_OBJS) _libxl.api-for-check: CFLAGS += $(CFLAGS_libxentoollog) $(CFLAGS_libxentoolcore)
 libxl_dom.o libxl_dom.opic: CFLAGS += -I$(XEN_ROOT)/tools  # include libacpi/x86.h
 libxl_x86_acpi.o libxl_x86_acpi.opic: CFLAGS += -I$(XEN_ROOT)/tools
-$(SAVE_HELPER_OBJS): CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenevtchn) $(CFLAGS_libxenguest)
+$(SAVE_HELPER_OBJS): CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenevtchn) $(CFLAGS_libxensaverestore)
 
 testidl.o: CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenlight)
 testidl.c: libxl_types.idl gentest.py $(XEN_INCLUDE)/libxl.h $(AUTOINCS)
@@ -241,7 +241,7 @@ test_%: test_%.o test_common.o libxenlight_test.so
 	$(CC) $(LDFLAGS) -o $@ $^ $(filter-out %libxenlight.so, $(LDLIBS_libxenlight)) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) -lyajl $(APPEND_LDFLAGS)
 
 libxl-save-helper: $(SAVE_HELPER_OBJS) libxenlight.so
-	$(CC) $(LDFLAGS) -o $@ $(SAVE_HELPER_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
+	$(CC) $(LDFLAGS) -o $@ $(SAVE_HELPER_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxenctrl) $(LDLIBS_libxensaverestore) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
 
 testidl: testidl.o libxenlight.so
 	$(CC) $(LDFLAGS) -o $@ testidl.o $(LDLIBS_libxenlight) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index c6a4a187f5..2889572888 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -56,6 +56,7 @@
 #define XC_WANT_COMPAT_MAP_FOREIGN_API
 #include <xenctrl.h>
 #include <xenguest.h>
+#include <xensaverestore.h>
 #include <xenhypfs.h>
 
 #include <xen-tools/libs.h>
diff --git a/tools/libs/light/libxl_save_helper.c b/tools/libs/light/libxl_save_helper.c
index 65dff389bf..896e845a2f 100644
--- a/tools/libs/light/libxl_save_helper.c
+++ b/tools/libs/light/libxl_save_helper.c
@@ -48,6 +48,7 @@
 
 #include "xenctrl.h"
 #include "xenguest.h"
+#include "xensaverestore.h"
 #include "_libxl_save_msgs_helper.h"
 
 /*----- logger -----*/
diff --git a/tools/libs/light/libxl_save_msgs_gen.pl b/tools/libs/light/libxl_save_msgs_gen.pl
index 9d425b1dee..f263ee01bb 100755
--- a/tools/libs/light/libxl_save_msgs_gen.pl
+++ b/tools/libs/light/libxl_save_msgs_gen.pl
@@ -72,7 +72,7 @@ END_BOTH
 END_CALLOUT
 
 #include <xenctrl.h>
-#include <xenguest.h>
+#include <xensaverestore.h>
 #include "_libxl_save_msgs_${ah}.h"
 
 END_HELPER
diff --git a/tools/libs/saverestore/Makefile b/tools/libs/saverestore/Makefile
new file mode 100644
index 0000000000..07c9ea7b75
--- /dev/null
+++ b/tools/libs/saverestore/Makefile
@@ -0,0 +1,38 @@
+XEN_ROOT = $(CURDIR)/../../..
+include $(XEN_ROOT)/tools/Rules.mk
+
+ifeq ($(CONFIG_MIGRATE),y)
+SRCS-y += xg_sr_common.c
+SRCS-$(CONFIG_X86) += xg_sr_common_x86.c
+SRCS-$(CONFIG_X86) += xg_sr_common_x86_pv.c
+SRCS-$(CONFIG_X86) += xg_sr_restore_x86_pv.c
+SRCS-$(CONFIG_X86) += xg_sr_restore_x86_hvm.c
+SRCS-$(CONFIG_X86) += xg_sr_save_x86_pv.c
+SRCS-$(CONFIG_X86) += xg_sr_save_x86_hvm.c
+SRCS-y += xg_sr_restore.c
+SRCS-y += xg_sr_save.c
+else
+SRCS-y += xg_nomigrate.c
+endif
+
+CFLAGS += -I$(XEN_libxenctrl)
+CFLAGS += -I$(XEN_libxenguest)
+
+-include $(XEN_TARGET_ARCH)/Makefile
+
+CFLAGS   += -Werror -Wmissing-prototypes
+CFLAGS   += -I. -I./include $(CFLAGS_xeninclude)
+CFLAGS   += -D__XEN_TOOLS__
+CFLAGS   += -include $(XEN_ROOT)/tools/config.h
+# Needed for asprintf()
+CFLAGS-$(CONFIG_Linux) += -D_GNU_SOURCE
+
+LIBHEADER := xensaverestore.h
+
+NO_HEADERS_CHK := y
+
+include $(XEN_ROOT)/tools/libs/libs.mk
+
+.PHONY: cleanlocal
+cleanlocal:
+	rm -f libxensaverestore.map
diff --git a/tools/libs/guest/xg_nomigrate.c b/tools/libs/saverestore/xg_nomigrate.c
similarity index 100%
rename from tools/libs/guest/xg_nomigrate.c
rename to tools/libs/saverestore/xg_nomigrate.c
diff --git a/tools/libs/guest/xg_save_restore.h b/tools/libs/saverestore/xg_save_restore.h
similarity index 98%
rename from tools/libs/guest/xg_save_restore.h
rename to tools/libs/saverestore/xg_save_restore.h
index 3dbbc8dcd2..20bd3d30a5 100644
--- a/tools/libs/guest/xg_save_restore.h
+++ b/tools/libs/saverestore/xg_save_restore.h
@@ -15,8 +15,6 @@
  * License along with this library; If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "xc_private.h"
-
 #include <xen/foreign/x86_32.h>
 #include <xen/foreign/x86_64.h>
 
diff --git a/tools/libs/guest/xg_sr_common.c b/tools/libs/saverestore/xg_sr_common.c
similarity index 100%
rename from tools/libs/guest/xg_sr_common.c
rename to tools/libs/saverestore/xg_sr_common.c
diff --git a/tools/libs/guest/xg_sr_common.h b/tools/libs/saverestore/xg_sr_common.h
similarity index 98%
rename from tools/libs/guest/xg_sr_common.h
rename to tools/libs/saverestore/xg_sr_common.h
index 617dc75add..5e22006504 100644
--- a/tools/libs/guest/xg_sr_common.h
+++ b/tools/libs/saverestore/xg_sr_common.h
@@ -1,7 +1,19 @@
 #ifndef __COMMON__H
 #define __COMMON__H
 
+#include <unistd.h>
+#include <errno.h>
 #include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/mman.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+
+#include "xc_private.h"
+#include "xenguest.h"
+#include "xensaverestore.h"
 
 #include "xg_private.h"
 #include "xg_save_restore.h"
diff --git a/tools/libs/guest/xg_sr_common_x86.c b/tools/libs/saverestore/xg_sr_common_x86.c
similarity index 100%
rename from tools/libs/guest/xg_sr_common_x86.c
rename to tools/libs/saverestore/xg_sr_common_x86.c
diff --git a/tools/libs/guest/xg_sr_common_x86.h b/tools/libs/saverestore/xg_sr_common_x86.h
similarity index 100%
rename from tools/libs/guest/xg_sr_common_x86.h
rename to tools/libs/saverestore/xg_sr_common_x86.h
diff --git a/tools/libs/guest/xg_sr_common_x86_pv.c b/tools/libs/saverestore/xg_sr_common_x86_pv.c
similarity index 100%
rename from tools/libs/guest/xg_sr_common_x86_pv.c
rename to tools/libs/saverestore/xg_sr_common_x86_pv.c
diff --git a/tools/libs/guest/xg_sr_common_x86_pv.h b/tools/libs/saverestore/xg_sr_common_x86_pv.h
similarity index 100%
rename from tools/libs/guest/xg_sr_common_x86_pv.h
rename to tools/libs/saverestore/xg_sr_common_x86_pv.h
diff --git a/tools/libs/guest/xg_sr_restore.c b/tools/libs/saverestore/xg_sr_restore.c
similarity index 100%
rename from tools/libs/guest/xg_sr_restore.c
rename to tools/libs/saverestore/xg_sr_restore.c
diff --git a/tools/libs/guest/xg_sr_restore_x86_hvm.c b/tools/libs/saverestore/xg_sr_restore_x86_hvm.c
similarity index 100%
rename from tools/libs/guest/xg_sr_restore_x86_hvm.c
rename to tools/libs/saverestore/xg_sr_restore_x86_hvm.c
diff --git a/tools/libs/guest/xg_sr_restore_x86_pv.c b/tools/libs/saverestore/xg_sr_restore_x86_pv.c
similarity index 100%
rename from tools/libs/guest/xg_sr_restore_x86_pv.c
rename to tools/libs/saverestore/xg_sr_restore_x86_pv.c
diff --git a/tools/libs/guest/xg_sr_save.c b/tools/libs/saverestore/xg_sr_save.c
similarity index 100%
rename from tools/libs/guest/xg_sr_save.c
rename to tools/libs/saverestore/xg_sr_save.c
diff --git a/tools/libs/guest/xg_sr_save_x86_hvm.c b/tools/libs/saverestore/xg_sr_save_x86_hvm.c
similarity index 100%
rename from tools/libs/guest/xg_sr_save_x86_hvm.c
rename to tools/libs/saverestore/xg_sr_save_x86_hvm.c
diff --git a/tools/libs/guest/xg_sr_save_x86_pv.c b/tools/libs/saverestore/xg_sr_save_x86_pv.c
similarity index 100%
rename from tools/libs/guest/xg_sr_save_x86_pv.c
rename to tools/libs/saverestore/xg_sr_save_x86_pv.c
diff --git a/tools/libs/guest/xg_sr_stream_format.h b/tools/libs/saverestore/xg_sr_stream_format.h
similarity index 100%
rename from tools/libs/guest/xg_sr_stream_format.h
rename to tools/libs/saverestore/xg_sr_stream_format.h
diff --git a/tools/libs/uselibs.mk b/tools/libs/uselibs.mk
index efd7a475ba..62a2990b95 100644
--- a/tools/libs/uselibs.mk
+++ b/tools/libs/uselibs.mk
@@ -20,6 +20,8 @@ LIBS_LIBS += ctrl
 USELIBS_ctrl := toollog call evtchn gnttab foreignmemory devicemodel
 LIBS_LIBS += guest
 USELIBS_guest := evtchn ctrl
+LIBS_LIBS += saverestore
+USELIBS_saverestore := guest ctrl
 LIBS_LIBS += store
 USELIBS_store := toolcore
 LIBS_LIBS += vchan
@@ -27,7 +29,7 @@ USELIBS_vchan := toollog store gnttab evtchn
 LIBS_LIBS += stat
 USELIBS_stat := ctrl store
 LIBS_LIBS += light
-USELIBS_light := toollog evtchn toolcore ctrl store hypfs guest
+USELIBS_light := toollog evtchn toolcore ctrl store hypfs guest saverestore
 LIBS_LIBS += util
 USELIBS_util := light
 FILENAME_util := xlutil


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:25:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:25:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110022.209984 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMmp-0002G5-7K; Tue, 13 Apr 2021 17:25:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110022.209984; Tue, 13 Apr 2021 17:25: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 1lWMmp-0002Fy-4M; Tue, 13 Apr 2021 17:25:15 +0000
Received: by outflank-mailman (input) for mailman id 110022;
 Tue, 13 Apr 2021 17:25:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aFP6=JK=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lWMmn-0002Ft-4y
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:25:13 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e602962d-fabd-4f00-be0e-cb381fdef53e;
 Tue, 13 Apr 2021 17:25: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: e602962d-fabd-4f00-be0e-cb381fdef53e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618334712;
  h=from:to:cc:subject:date:message-id:mime-version;
  bh=o4Ix7LV1Jb/xS2UvOPAA2Ov/njQHfZ5Ek7CWlt/G++U=;
  b=bzVp4DfyemQJylx5a4HWzrQyM9G9FJ1dWEhGtOfVjb1mq/AvbgT3KtRy
   4yqUqwyxIrU0xe7ZR1An+URkKV4+admmdVj5ryvFpWMjHTfr3aoCSwLHk
   0sA4MBUWXmFty8oAipv3TNQhNVRBczh2lqObntFxEGSkaddqU9rrRBxLi
   0=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: /sRVmIeUSEUWR6VTGHYsB8x405l0ZP2nvo5+8hWAN5hBObfxf643MkiWzgaF1XVSFcqwlsL1Yb
 dSM58swrn1kaDzfbTjGDUPewlfCufY8KS8EXp2vRXOB74tuLAa6itMkW/gRYS0C6iH49gbjIht
 XPp4tPyq1sSFzQFPLr2vLJDRXA8sb3Rkp2x/8xRnLnNayUv31u2iwW1OrxAwphKgFJv+KZ6EH8
 gqLrpuHYjX9/F0zeDar/6c53vggoFn4AmP2Cy37YFmPD8Q3UsMloUTbV8KxJOXhce2R9w3ujj8
 SSw=
X-SBRS: 4.0
X-MesageID: 41636314
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:jHRe3a4hhzu048Rf5wPXwRKBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3Xa6JJz/M0tLa6vNTOW3VeAAaNDyc/ZwzPmEzDj7eI178
 1dWoV3FdGYNzdHpOng5g3QKbgd6f2m1IztuuvE1XdqSmhRGsNdxiN0EBySHEEzZCQuP/oEPa
 GR7MZGuDasEE5/BqiGL0IIQvTZoJnznI/mCCRsOzcc9AKMgTm0gYSKcCSw4xF2aVJy6IZny0
 fpuUjT5qKvs/a0oyWsrVP73tBtt/bKjvdGDMyIoMAJJjvrkRbAXvUdZ5Sy+AobjcvqxFE2kM
 TdgxpIBbUO11rhOlubjDGo+w783C0g43XvoGXo/kfLkIjCax8RT+9i7LgpFifx2g4bk/xXlJ
 9v5Sa/saFaCBvR9R6Nn+TgZlVRuWef5UY5nfV7tQ05baIuLIV/gKY4501vHJIJDEvBmfsaOd
 grNs3a6fpMGGnqCUzxjy1qyNyoaHw5Ag2LdEgEotCUyDhbhhlCvjIl+PA=
X-IronPort-AV: E=Sophos;i="5.82,219,1613451600"; 
   d="scan'208";a="41636314"
From: Igor Druzhinin <igor.druzhinin@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: <jun.nakajima@intel.com>, <kevin.tian@intel.com>, <jbeulich@suse.com>,
	<andrew.cooper3@citrix.com>, <roger.pau@citrix.com>, <wl@xen.org>, "Igor
 Druzhinin" <igor.druzhinin@citrix.com>
Subject: [PATCH] x86/vPMU: Extend vPMU support to version 5
Date: Tue, 13 Apr 2021 18:25:01 +0100
Message-ID: <1618334701-8263-1-git-send-email-igor.druzhinin@citrix.com>
X-Mailer: git-send-email 2.7.4
MIME-Version: 1.0
Content-Type: text/plain

Version 5 is backwards compatible with version 3. This allows to enable
vPMU on Ice Lake CPUs.

Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index 6e97ce7..0dfc256 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -839,7 +839,7 @@ int vmx_vpmu_initialise(struct vcpu *v)
         return 0;
 
     if ( v->domain->arch.cpuid->basic.pmu_version <= 1 ||
-         v->domain->arch.cpuid->basic.pmu_version >= 5 )
+         v->domain->arch.cpuid->basic.pmu_version >= 6 )
         return -EINVAL;
 
     if ( (arch_pmc_cnt + fixed_pmc_cnt) == 0 )
@@ -909,8 +909,9 @@ int __init core2_vpmu_init(void)
     switch ( version )
     {
     case 4:
-        printk(XENLOG_INFO "VPMU: PMU version 4 is not fully supported. "
-               "Emulating version 3\n");
+    case 5:
+        printk(XENLOG_INFO "VPMU: PMU version %u is not fully supported. "
+               "Emulating version 3\n", version);
         /* FALLTHROUGH */
 
     case 2:
-- 
2.7.4



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:29:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:29:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110028.209999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMqT-0002QI-PE; Tue, 13 Apr 2021 17:29:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110028.209999; Tue, 13 Apr 2021 17: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 1lWMqT-0002QB-M2; Tue, 13 Apr 2021 17:29:01 +0000
Received: by outflank-mailman (input) for mailman id 110028;
 Tue, 13 Apr 2021 17:28: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 1lWMqR-0002Q1-Kk; Tue, 13 Apr 2021 17:28: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 1lWMqQ-0000Cz-J4; Tue, 13 Apr 2021 17:28: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 1lWMqQ-0005Zc-9P; Tue, 13 Apr 2021 17:28:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWMqQ-0001Xs-8t; Tue, 13 Apr 2021 17:28:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=UF1qRGDLu7fqF3qFPT802lNZ+kueHkFAd8tcR0mM3bw=; b=HaeCSxWyo3zcqDVsSNr6OYL2Ib
	Sx5PTUeg5l2Cq2fFChhV4ULnyy705KExJkRo38VXr40nMCJlOBwQpOlHniA0s63Fl6Dets1LSfGxJ
	zjmXwWZCNbyuYes1mO0HdjD1FvPwadSkN+ZQ2yTcghqIwWAekQtOwV8od3zPu2IE7B/I=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161096-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161096: 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=80714e55042b2242cd82eccfb7405d671ecbebda
X-Osstest-Versions-That:
    xen=3ccd796952deda179cb148606f7f7b3d6bea74b7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 17:28:58 +0000

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

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                  80714e55042b2242cd82eccfb7405d671ecbebda
baseline version:
 xen                  3ccd796952deda179cb148606f7f7b3d6bea74b7

Last test of basis   161085  2021-04-13 09:00:25 Z    0 days
Testing same since   161096  2021-04-13 15:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Dmitry Fedorov <d.fedorov@tabit.pro>
  Wei Liu <wl@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
   3ccd796952..80714e5504  80714e55042b2242cd82eccfb7405d671ecbebda -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:30:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:30:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110033.210015 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMri-0003F6-6w; Tue, 13 Apr 2021 17:30:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110033.210015; Tue, 13 Apr 2021 17:30:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMri-0003Ez-32; Tue, 13 Apr 2021 17:30:18 +0000
Received: by outflank-mailman (input) for mailman id 110033;
 Tue, 13 Apr 2021 17:30: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 1lWMrg-0003Ep-QV; Tue, 13 Apr 2021 17:30: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 1lWMrg-0000ES-N1; Tue, 13 Apr 2021 17:30: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 1lWMrg-0005bM-FW; Tue, 13 Apr 2021 17:30:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWMrg-00026U-Ey; Tue, 13 Apr 2021 17:30:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=quWqEkMmJHarie8HgrltaJPpDD/TNDgd/YUUjeUSXns=; b=jkQkcaiDHe7/V21K1TJO/0UMDe
	wtlVFw5N5Kh5ip+/xRUuf3ScHfJDU3lpetxNNZxmAc/sjxTrJZbrFaNNeCXVHqqwJCpy7L3bgGBWa
	i41V1FVIw1msJ2dpBQwjA8Q/cM19ryiwtS/l7n+9M0Vslg9vRO9vsgNRJIUg3OaXGWzE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161081-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161081: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=54211ab10fcd8532b49f4024ebdb601a8eb07e3e
X-Osstest-Versions-That:
    ovmf=2072c22a0d63c780b0cc6377f6d4ffb116ad6144
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 17:30:16 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 54211ab10fcd8532b49f4024ebdb601a8eb07e3e
baseline version:
 ovmf                 2072c22a0d63c780b0cc6377f6d4ffb116ad6144

Last test of basis   161054  2021-04-12 11:41:28 Z    1 days
Testing same since   161081  2021-04-13 05:19:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bret Barkelew <bret.barkelew@microsoft.com>
  Bret Barkelew <bret@corthon.com>
  Kun Qin <kuqin12@gmail.com>
  Michael D Kinney <michael.d.kinney@intel.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
   2072c22a0d..54211ab10f  54211ab10fcd8532b49f4024ebdb601a8eb07e3e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:33:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:33:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110040.210030 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWMuu-0003QU-OR; Tue, 13 Apr 2021 17:33:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110040.210030; Tue, 13 Apr 2021 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 1lWMuu-0003QN-Kc; Tue, 13 Apr 2021 17:33:36 +0000
Received: by outflank-mailman (input) for mailman id 110040;
 Tue, 13 Apr 2021 17:33:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=J6X8=JK=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lWMus-0003QF-UV
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:33:35 +0000
Received: from aserp2120.oracle.com (unknown [141.146.126.78])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 137e3283-c317-4ea2-b792-8ecb80613e20;
 Tue, 13 Apr 2021 17:33:34 +0000 (UTC)
Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1])
 by aserp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13DHSYFI042436;
 Tue, 13 Apr 2021 17:33:32 GMT
Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70])
 by aserp2120.oracle.com with ESMTP id 37u3ymfvfn-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Tue, 13 Apr 2021 17:33:32 +0000
Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1])
 by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13DHVfnX065599;
 Tue, 13 Apr 2021 17:33:31 GMT
Received: from nam10-mw2-obe.outbound.protection.outlook.com
 (mail-mw2nam10lp2100.outbound.protection.outlook.com [104.47.55.100])
 by aserp3020.oracle.com with ESMTP id 37unx035tx-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Tue, 13 Apr 2021 17:33:31 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by BYAPR10MB3574.namprd10.prod.outlook.com (2603:10b6:a03:119::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Tue, 13 Apr
 2021 17:33:29 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024%7]) with mapi id 15.20.4042.016; Tue, 13 Apr 2021
 17:33:29 +0000
Received: from [10.74.99.115] (138.3.201.51) by
 SJ0PR05CA0102.namprd05.prod.outlook.com (2603:10b6:a03:334::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.8 via Frontend
 Transport; Tue, 13 Apr 2021 17:33:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 137e3283-c317-4ea2-b792-8ecb80613e20
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc :
 references : from : message-id : date : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2020-01-29;
 bh=rSIENCFULaZ33oR3BUSZ4yKJ6d9Ag01uc49jK4wp90s=;
 b=xsSu4TPGPsxzwmkRPG0kx+MOqG10N9/HK/XmfCXN0Q/RPSlLA8zVkBjulEoAQ5uDz88T
 7M+aVKYsXFgLq4zG7I62LzNtxmfTo3ZVfoRjw+uGZSwf2jcnZYEX5MoMrFtyNN2Y493G
 vEmmEabtdLms/Kh1fYxGvUYX0etr99exyDCNuyNt1+Y34liyjuY1EFHNQUf/ezwlfmEv
 y9U++YC+UEY990h49wq9Cwgf+O8i+f0ywgMrkniEBtKKajR7TkP0T2eUTZiVic6Ckk8W
 JlfGP/1/jiubFTLIJNjV41IEmftfTBIRXA3TjcI35G51PPsImMPw9FXUFSLwFhC84rjs Qg== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WkP5IxYkTMJeJsCSqYsx4PO/SaUi8vX9siFtJYVqaylN1d3BzKjXtq68iYSnUSCq0dhQHhaRE9PF2VjhXX7lUYVrDg52XxGC9jGuB2Jb1drpSLtpMxtU9yIF53N0oxsl3wsDMoFynggNIc9d9Nbu6OMLBwuhwVL3OIsG80Dgl1GeTY5afvaBDUjJDyZ+HP5aHF10sNiY8nP4KO822P1kWRPwHrIxNfgUCHYyUaTkjvPNOjQQcvsPd8K7pXkL77Mbu0Lym0vI7nXz7M0R2k5IWUDws8MXinUmQb0j3ayJKOJRyDba+z07MAZ+JDW6lb51x3JFko8Ip2eNJ+LE8nB4Tw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rSIENCFULaZ33oR3BUSZ4yKJ6d9Ag01uc49jK4wp90s=;
 b=UqG6CURv/Nl+pYxnjWqGfY3THJsV6bR8mXP0loBoZTUHTjBuXdRALwGGy6OqMLlTIRkH/qYkIA6uctszIyTX4qqcAlmP5XZGjqGctPP9VZbPOYfTjYn/08u9R8BpM3shKvP1q9XuxpESqBVfUpLFPSk71lL2V1xFF1nLUHTy0H56o5C4aepRr84xw+okQSUWn71NxGhW/0ljpwmGXcWiXi67a7onpmL5pHIMXyhejH/bp8nraUMs/jgNAZlQ6+kmB9hXOQIW5sJWZ6RFJyLX/tO/8LfnCnNlJrJXZ+2S01xMsgGdfM2RN+L9ogFg+bLqNiz7QkXeyETcrJ47RVBlXw==
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=rSIENCFULaZ33oR3BUSZ4yKJ6d9Ag01uc49jK4wp90s=;
 b=aSJg5lBzQZ6kpvDhW5WuCyN9DUESKmk8bJ2GXXPJElgTm+mP4xotsfmRFyl7b+zWDs/abdZlgBoHD2DZbHWaumzZqRP1o9j780V/KK7foLHYtOeE0LEcUoL++I1yxT/1Jk3BVv1uWygBH+gY9eClxPx4rb53vX06s79tbREBQ7Y=
Authentication-Results: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=oracle.com;
Subject: Re: Support of old Xen versions in the Linux kernel
To: Juergen Gross <jgross@suse.com>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>
References: <1e4dc7c0-4364-1095-bb6b-c6341bc58e60@suse.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Message-ID: <b7684e00-8675-5768-b4b2-f9435620b34e@oracle.com>
Date: Tue, 13 Apr 2021 13:33:25 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
In-Reply-To: <1e4dc7c0-4364-1095-bb6b-c6341bc58e60@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Originating-IP: [138.3.201.51]
X-ClientProxiedBy: SJ0PR05CA0102.namprd05.prod.outlook.com
 (2603:10b6:a03:334::17) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: bad409d7-f466-4e66-74fd-08d8fea240a0
X-MS-TrafficTypeDiagnostic: BYAPR10MB3574:
X-Microsoft-Antispam-PRVS: 
	<BYAPR10MB35749E472D09C06ED695DF568A4F9@BYAPR10MB3574.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6430;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	Yf87TReA416NaPAHXHs+vv+Cpp4PvTbk0+7iqUXNFNrlYQm5/mtLQ9X1KrO3qgW4R0y2nId5PbuAxTteVV0YtrE60dRG2T2vuXE1HWpeG8JQhlF9RNoO7YrrSYNdFolqlLFmB6CaPn62e9tg1qY7z9e46IY4HAsn9QvA9pByGg/3ieuC3xXAhFNnNRyRnA77yHYRobWWDDo/b53eQvsy68iUDwjAAY4f/hjXOcRwXqfCiZcVL4+mV17/KJSnjrXM/Vb8j/34tHXMkGJisXaaULAklYITTOLLe/dOJtdkWeJmk1sEmAsu9FJ+pvWU+6aCTdFwbk0C43x1J52T5BA26yVxer4BXCjaXiz6tVetzRHSZ8Q2fTtFfX+anQZ/mqgeprMQsytGHIPjWxIR2iVUQLSLu199XKjZEaiKdFOi3W34/14skmMJhR01zQr9wXcMlb/n8nlcB14WTYuGZC5Ywq8Aa/aCtLLoKlMyRGTPAtQUJMo+3zvmEQv7bJlz3Uw7ooGUae1WF8+SbwVXJA9g9cdreJVOiuBrsJrBOgCcAy5GCu4jhHZOwptpP3m6muiPX4GCdYq/XaWI4N6fsCP2JVbKZpTxnppAyjvMr1XwXewSBo1UKyGqhN4vQe5cSyHCzKyHwUR8l3tgO+epqj7QNcQ1W/TvVbrimJj/0X6jBwrr625U8ffOdNWy6LROnSPw
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(396003)(366004)(39860400002)(136003)(346002)(376002)(38100700002)(316002)(31696002)(26005)(4326008)(4744005)(956004)(186003)(2906002)(16526019)(86362001)(5660300002)(44832011)(66476007)(31686004)(66946007)(6486002)(66556008)(8936002)(6666004)(53546011)(36756003)(2616005)(478600001)(110136005)(16576012)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	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
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bad409d7-f466-4e66-74fd-08d8fea240a0
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 17:33:29.6888
 (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: 8TOT7TgPxnUlDU+zpWwE01WeRvbChheF6XJRhJRnCC17N6a7mPv6ej6vTTdoZrfnXeSAcAtqeSHsxQinBq1lwHsm7a6FKPbUzekslZffkWU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR10MB3574
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9953 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 suspectscore=0
 mlxscore=0 malwarescore=0 adultscore=0 bulkscore=0 spamscore=0
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104130119
X-Proofpoint-GUID: -hE3ceXJ1IGsxjNyj3m1nCUIc2Eiyd9A
X-Proofpoint-ORIG-GUID: -hE3ceXJ1IGsxjNyj3m1nCUIc2Eiyd9A
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9953 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 mlxlogscore=999 spamscore=0
 impostorscore=0 priorityscore=1501 lowpriorityscore=0 adultscore=0
 bulkscore=0 phishscore=0 suspectscore=0 malwarescore=0 clxscore=1015
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104130119


On 4/13/21 2:14 AM, Juergen Gross wrote:
> In x86 kernel development the question came up whether we need to
> support XENFEAT_gnttab_map_avail_bits not being set when running as a PV
> guest.
>
> This feature is active for PV guests since Xen 3.4.
>
> So the basic question is: which is the oldest version of Xen we want to
> support in the Linux kernel? As far as I know there is no Xen based
> product in productive use with Xen older than 4.2.
>
> Would we be fine to drop support for older versions (feel free to
> suggest other versions than 4.2 as the first to be supported Xen
> version)?
>
> In case the answer is yes, I'd post some patches to clean up the kernel,
> including a safety net to bail out in case a feature needed isn't
> available.
>


Sounds good to me.



-boris



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:53:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:53:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110049.210042 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNDs-0005IO-E9; Tue, 13 Apr 2021 17:53:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110049.210042; Tue, 13 Apr 2021 17:53:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNDs-0005IH-As; Tue, 13 Apr 2021 17:53:12 +0000
Received: by outflank-mailman (input) for mailman id 110049;
 Tue, 13 Apr 2021 17:53:10 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=J6X8=JK=oracle.com=boris.ostrovsky@srs-us1.protection.inumbo.net>)
 id 1lWNDq-0005IC-Qq
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:53:10 +0000
Received: from aserp2130.oracle.com (unknown [141.146.126.79])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1510cb5f-176b-4422-9c99-97776ace3247;
 Tue, 13 Apr 2021 17:53:08 +0000 (UTC)
Received: from pps.filterd (aserp2130.oracle.com [127.0.0.1])
 by aserp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13DHa7or102589;
 Tue, 13 Apr 2021 17:53:06 GMT
Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79])
 by aserp2130.oracle.com with ESMTP id 37u1hbg3as-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Tue, 13 Apr 2021 17:53:05 +0000
Received: from pps.filterd (userp3020.oracle.com [127.0.0.1])
 by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13DHZT7F057159;
 Tue, 13 Apr 2021 17:53:05 GMT
Received: from nam12-bn8-obe.outbound.protection.outlook.com
 (mail-bn8nam12lp2176.outbound.protection.outlook.com [104.47.55.176])
 by userp3020.oracle.com with ESMTP id 37unssq9t9-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Tue, 13 Apr 2021 17:53:04 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com (2603:10b6:a03:156::21)
 by BY5PR10MB4020.namprd10.prod.outlook.com (2603:10b6:a03:1b5::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Tue, 13 Apr
 2021 17:53:01 +0000
Received: from BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024]) by BYAPR10MB3288.namprd10.prod.outlook.com
 ([fe80::819c:ca1f:448d:3024%7]) with mapi id 15.20.4042.016; Tue, 13 Apr 2021
 17:53:01 +0000
Received: from bostrovs-us.us.oracle.com (209.17.40.37) by
 SJ0PR03CA0313.namprd03.prod.outlook.com (2603:10b6:a03:39d::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Tue, 13 Apr 2021 17:53: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: 1510cb5f-176b-4422-9c99-97776ace3247
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc :
 subject : date : message-id : content-type : mime-version;
 s=corp-2020-01-29; bh=kSnrvwXMCO9TXXJnpjmYOHrl4EtOgHp4cDv8n1E/eYQ=;
 b=ma/NRMT8xa5qCasu9/YHP1tMiLRUfgWHXtbnaSirCM6OxzAGqr2yPtxCeRLACmU5Lr9y
 p6czOgHBf0/EQ6U/DKzKURCdmjxJhbNVsqyltvwG6/OWYOMeF1MBOVKUAUMTpUTVFX/M
 1Q98U2au4fgCPvYc68o2eK2ZKKGfCZjGPZy6/0Qq/4vEgybmTtoDrgQWjnL01gRqYZMY
 q1ooWzeDeF6XyW0+nKPBJq2RS2fqWS7tAVBL98FZTOC2UtRqXggwAB2R58lunsEvRd83
 L0POMxc0EHXNff7mGJ5knK4gKnPto5+1YY2AzfD4zuFXsoTSrvgeYTUPBw4PdVw4XY5j /g== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NMovgX6JF8j2Ok6GA7guX9ArUHjmiukdks68abnmnI9SsvvKH0gktDXnGBvji+yc2+/ItDyoFOpo0gr5gX3Q389HXIqcq5gWxmOBjzeqtjz4WSBVphxsOZzStqtfnir295iFFjdubjkeL6sihGmHc5nG9EuGZZtDAPyQPW7zMsTxOuSMGj+mJ7tjk5WlQbb97XFY/SCZzUasVc4uPwBxtwHINC0oJvNjLMyZKB7GyUHPeLQA14g6/ReLhFWV5+NvpGYHY4kT+uqy1+cCrcS/esJKjG759KugV83QrrB64I/UOezb2k5SqMxkIzvrco7W+yCWfhW3+4sQXnyHbFS7WQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kSnrvwXMCO9TXXJnpjmYOHrl4EtOgHp4cDv8n1E/eYQ=;
 b=nMT3Qkpa0y4KRw8eQ9iOfJixp5cX+tnXMh8rUJwXj2tU2q9bskm9ZE/ekMKR1xQIqbUgv9v7jTNpgwpPl1Hec+B3zXnqA5eB5v1/y7beNkjgYiJWS1NigAwfKQC/Dp2WTTupdGKraj/tFaN3Z//VkQmFLPZ1KL9HdA8j03WFJf876FDVYBSWzm311CUCW3OXMjK5ABU+fPLheU8ehnVAv3N1xix/DkNvrhB7308wjMyzXBiKwsfNh8v9P1Ab7zvHoOKeBIpZz1qlKWDnXhAwuun+EKz83NbOOgFsy0reX/ZkgWYEE4zzBBV/tX1zecN26HXD8EuDz0aTR6XnggDkSA==
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=kSnrvwXMCO9TXXJnpjmYOHrl4EtOgHp4cDv8n1E/eYQ=;
 b=Kzhay29y+G0kJfTTLoY2IssteVec8orv4yoWMxYQf/GoRlf/bfqA0FcVU3qyvJCjgxkA+nN6PYDG9XzxFKul6aQyDhlQXyoc2VuMRbkmsHpYRJd6hNMq8B/pPI8ElpO+p/IZxB+cqjaMXzwBaZGHu1ug4DuVR1hh3uar11b8JEk=
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=oracle.com;
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
To: xen-devel@lists.xenproject.org
Cc: jgross@suse.com, sstabellini@kernel.org, rafael@kernel.org,
        linux-kernel@vger.kernel.org
Subject: [PATCH] xen: Remove support for PV ACPI cpu/memory hotplug
Date: Tue, 13 Apr 2021 13:52:24 -0400
Message-Id: <1618336344-3162-1-git-send-email-boris.ostrovsky@oracle.com>
X-Mailer: git-send-email 1.8.3.1
Content-Type: text/plain
X-Originating-IP: [209.17.40.37]
X-ClientProxiedBy: SJ0PR03CA0313.namprd03.prod.outlook.com
 (2603:10b6:a03:39d::18) To BYAPR10MB3288.namprd10.prod.outlook.com
 (2603:10b6:a03:156::21)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c0147801-99ba-4eb5-fbaf-08d8fea4faf4
X-MS-TrafficTypeDiagnostic: BY5PR10MB4020:
X-Microsoft-Antispam-PRVS: 
	<BY5PR10MB4020F4C3FA9C4F9C30937B598A4F9@BY5PR10MB4020.namprd10.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:114;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	UJ//sgoLfgfX1TWrPWMVpXjGpUi9xio1j14hDXiM1upguwGtb7ogEbntQMKdgb+aHJLl1aV3n5qUw+gzcjiX036vQvpkDkj1utzXKV6fUkzjRJ5eGDCgmJC/ehKZj6t08CZokyzF41DMgFjtJY7xRsLOVHt0aFSZWhAjpEb5YJP7V7K19mLqF3X2vPRsJaByASwGg3GhC5chMM+1LP95Pg6G5DeNaEeRXAlrM2o1yS6S6mS+UAnIn25rLZWY/loUl3o1kCTQzxMlqdYjWarxtEcBs7JO3NpuXzGcd9mvgcAobCQ4ldNB+/MomP/WI/J2kW48/144+JyQAyhNulIbqD0aKIB4n8u/c63+xYPpCjNsjk6z81ONkgrYNK9TqSij/Yv+jcQVF3MgwHJ+7Gab/9wYqcKjg+w4PxLRw7K7WcJMMDVd3fRw7dQlfveWaUi1N5HzZ0sgjSwbUvOfvyeYaVA5Tk7ZdOhuV87RP1871RE2MNIYy73Y8KRPGBW7sBSxAdF/Od+I+DaBLs1O4TcubkEhAAduQ6L5g3TuuWL2kB/c+JK2qzeLZYJkWCZ2skqI4p4VNPVkspB0nlZEclQsb5scPWohR0sATUWJYIcWY3LAcECeGDi+k8ksxObPdt66xIS4S8txHuiJnzYwBtprFGUEOTQBF+C9vQUCsDLlhUo=
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB3288.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(376002)(136003)(39860400002)(366004)(396003)(30864003)(8676002)(38350700002)(2616005)(4326008)(38100700002)(16526019)(5660300002)(316002)(8936002)(956004)(478600001)(66946007)(66556008)(83380400001)(6916009)(66476007)(6666004)(36756003)(44832011)(186003)(2906002)(6486002)(26005)(52116002)(7696005)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 
	=?us-ascii?Q?3bikyFLpDxHFEkvURj1XtV3w2eCUshK0qfqLFtoeHK1co0bth270g2cX9qqT?=
 =?us-ascii?Q?cmpXIROVAmOJRm/2Hp/qhpE6S2f3w7EkNlmMxIEoG8oQGMQgtxn/B1a79ENM?=
 =?us-ascii?Q?h9CK1Qak0EtbpUxsw25xv4sDWz0TcTlb3MDeGD9oVgwWXyOMLBVNzM+bJSrA?=
 =?us-ascii?Q?JeY8ukuIEjrD2D8PzguDpq/a7VT+IZWF7xBERnN43w4FGYWq3GcE8KYNgN6n?=
 =?us-ascii?Q?fPkhAF6ZYV++oPHLWAS1NHN4WIcukidQQOmFc2ZIjy/QdMxewwe/GKNdl2a9?=
 =?us-ascii?Q?AW/mpzkQxhbYpXa6P70i02LRkqOs/NEzCUNkjbrdEotRwawDVkSN9jeiK5tl?=
 =?us-ascii?Q?dFvbpbAR6eEDt1ovc/RwJjHdo59cW8ZS056/ec2hD/wnTr7vEvwc3eVugzER?=
 =?us-ascii?Q?MKgCujcVE9GL/B5OWlp4AbjoHc2FuB7sA88hrqoW1nut/hd7qeX42AG1kZ4D?=
 =?us-ascii?Q?N7mP6thM7vit+sIKZGl8htWzJsaK9OjZv10lEPCKVPGzQks8aP7tV1BBVx4I?=
 =?us-ascii?Q?lMS56r2CGKgeEQzkw84ouB6ycddhldeJk2UWvSe30fmG2OtEmel3PN/vqf3l?=
 =?us-ascii?Q?l6x7XkoS4fD/5weZ7HkwoDGGDP4ySdMcdStXhQhAJj5aoNueUAgdmo71NLNq?=
 =?us-ascii?Q?2FdtC3TflKlCPqGVAix900mIkwZnsrAU1HfOFxl2yWaEk3ZoSQ3VXj3rwS1f?=
 =?us-ascii?Q?m6G01yO6uh/WhBWuoTaXQnpm0AXyGausy/7xClfQkJy4R6Ssv44+YZyirQpP?=
 =?us-ascii?Q?IKI1gHqVuekD8ES2nV/8cfoo+5GeM4ormsXhhjtzvA+1R2xtKMIVByIs3Es6?=
 =?us-ascii?Q?U04fD779pQfwui5o/v82vRbQinhJwVgDIwcdKhYm8aT/BT5YLsWKRXI3DLrm?=
 =?us-ascii?Q?tcN5ieNbmfex/CEH9xUYKiFZdu9xP4+06TvFmW5NklEJbiIiuQNScYkGm1N1?=
 =?us-ascii?Q?bUtVW9QYNKgXhfQDVR4WKX9Up3BOghqwoYHAv6/XapGYUVqmIiM01XAOB5zh?=
 =?us-ascii?Q?EmJsdLkBYKy8+9I0TuzLRq33LMlY5nVJtAsgvOfN7qokRjLsKzkyM3CcZF0j?=
 =?us-ascii?Q?MuPy8T+mV0JGTt+yZN3t+8fQXaWAyh+6X96pl6NFolQFsbq+554B0Rm4l/cK?=
 =?us-ascii?Q?uG3yr41dO44b96E33ixDgyFst8dPdEs8PgVhPeCwskGAcELGQmvTv4f8T7Z6?=
 =?us-ascii?Q?QZZ0dkUsPumQCwcr8O5CtoTKJT3/9AAKGcV+S7gpAp0C3NRUIYnwBUlHfgzx?=
 =?us-ascii?Q?IcdPqAUXF98nz+OzYwP+149RL5Jio34bb9ZmL/F/E0PWql8DaoeGHQpxvk1u?=
 =?us-ascii?Q?Fabtwov+KyASqkJCBj3ubQWv?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c0147801-99ba-4eb5-fbaf-08d8fea4faf4
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3288.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2021 17:53:01.7362
 (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: OvYqwG/7t//0uRr6kRs/wE2MQXMvv+BApcDNNQ3Qs5oiX+8nadvbN/8HYe/9wBoxlaO4LOrurJkAkxqkAYsBBJDRdv24/S3bWetb5yx6l5o=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR10MB4020
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9953 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 adultscore=0
 malwarescore=0 suspectscore=0 bulkscore=0 mlxscore=0 spamscore=0
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2104060000 definitions=main-2104130120
X-Proofpoint-GUID: dgaXhUrM5NuLCcK95dDs2AxGc-3YA715
X-Proofpoint-ORIG-GUID: dgaXhUrM5NuLCcK95dDs2AxGc-3YA715
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9953 signatures=668683
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 priorityscore=1501
 clxscore=1011 adultscore=0 mlxlogscore=999 impostorscore=0 malwarescore=0
 lowpriorityscore=0 spamscore=0 phishscore=0 bulkscore=0 suspectscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000
 definitions=main-2104130120

Commit 76fc253723ad ("xen/acpi-stub: Disable it b/c the acpi_processor_add
is no longer called.") declared as BROKEN support for Xen ACPI stub (which
is required for xen-acpi-{cpu|memory}-hotplug) and suggested that this
is temporary and will be soon fixed. This was in March 2013.

Further, commit cfafae940381 ("xen: rename dom0_op to platform_op")
renamed an interface used by memory hotplug code without updating that
code (as it was BROKEN and therefore not compiled). This was
in November 2015 and has gone unnoticed for over 5 year.

It is now clear that this code is of no interest to anyone and therefore
should be removed.

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
---
 drivers/xen/Kconfig               |  31 ---
 drivers/xen/Makefile              |   3 -
 drivers/xen/pcpu.c                |  35 ---
 drivers/xen/xen-acpi-cpuhotplug.c | 446 -----------------------------------
 drivers/xen/xen-acpi-memhotplug.c | 475 --------------------------------------
 drivers/xen/xen-stub.c            |  90 --------
 include/xen/acpi.h                |  35 ---
 7 files changed, 1115 deletions(-)
 delete mode 100644 drivers/xen/xen-acpi-cpuhotplug.c
 delete mode 100644 drivers/xen/xen-acpi-memhotplug.c
 delete mode 100644 drivers/xen/xen-stub.c

diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
index ea0efd290c37..5f1ce59b44b9 100644
--- a/drivers/xen/Kconfig
+++ b/drivers/xen/Kconfig
@@ -238,37 +238,6 @@ config XEN_PRIVCMD
 	depends on XEN
 	default m
 
-config XEN_STUB
-	bool "Xen stub drivers"
-	depends on XEN && X86_64 && BROKEN
-	help
-	  Allow kernel to install stub drivers, to reserve space for Xen drivers,
-	  i.e. memory hotplug and cpu hotplug, and to block native drivers loaded,
-	  so that real Xen drivers can be modular.
-
-	  To enable Xen features like cpu and memory hotplug, select Y here.
-
-config XEN_ACPI_HOTPLUG_MEMORY
-	tristate "Xen ACPI memory hotplug"
-	depends on XEN_DOM0 && XEN_STUB && ACPI
-	help
-	  This is Xen ACPI memory hotplug.
-
-	  Currently Xen only support ACPI memory hot-add. If you want
-	  to hot-add memory at runtime (the hot-added memory cannot be
-	  removed until machine stop), select Y/M here, otherwise select N.
-
-config XEN_ACPI_HOTPLUG_CPU
-	tristate "Xen ACPI cpu hotplug"
-	depends on XEN_DOM0 && XEN_STUB && ACPI
-	select ACPI_CONTAINER
-	help
-	  Xen ACPI cpu enumerating and hotplugging
-
-	  For hotplugging, currently Xen only support ACPI cpu hotadd.
-	  If you want to hotadd cpu at runtime (the hotadded cpu cannot
-	  be removed until machine stop), select Y/M here.
-
 config XEN_ACPI_PROCESSOR
 	tristate "Xen ACPI processor"
 	depends on XEN && XEN_DOM0 && X86 && ACPI_PROCESSOR && CPU_FREQ
diff --git a/drivers/xen/Makefile b/drivers/xen/Makefile
index c3621b9f4012..3434593455b2 100644
--- a/drivers/xen/Makefile
+++ b/drivers/xen/Makefile
@@ -26,9 +26,6 @@ obj-$(CONFIG_SWIOTLB_XEN)		+= swiotlb-xen.o
 obj-$(CONFIG_XEN_MCE_LOG)		+= mcelog.o
 obj-$(CONFIG_XEN_PCIDEV_BACKEND)	+= xen-pciback/
 obj-$(CONFIG_XEN_PRIVCMD)		+= xen-privcmd.o
-obj-$(CONFIG_XEN_STUB)			+= xen-stub.o
-obj-$(CONFIG_XEN_ACPI_HOTPLUG_MEMORY)	+= xen-acpi-memhotplug.o
-obj-$(CONFIG_XEN_ACPI_HOTPLUG_CPU)	+= xen-acpi-cpuhotplug.o
 obj-$(CONFIG_XEN_ACPI_PROCESSOR)	+= xen-acpi-processor.o
 obj-$(CONFIG_XEN_EFI)			+= efi.o
 obj-$(CONFIG_XEN_SCSI_BACKEND)		+= xen-scsiback.o
diff --git a/drivers/xen/pcpu.c b/drivers/xen/pcpu.c
index cdc6daa7a9f6..1bcdd5227771 100644
--- a/drivers/xen/pcpu.c
+++ b/drivers/xen/pcpu.c
@@ -345,41 +345,6 @@ static irqreturn_t xen_pcpu_interrupt(int irq, void *dev_id)
 	return IRQ_HANDLED;
 }
 
-/* Sync with Xen hypervisor after cpu hotadded */
-void xen_pcpu_hotplug_sync(void)
-{
-	schedule_work(&xen_pcpu_work);
-}
-EXPORT_SYMBOL_GPL(xen_pcpu_hotplug_sync);
-
-/*
- * For hypervisor presented cpu, return logic cpu id;
- * For hypervisor non-presented cpu, return -ENODEV.
- */
-int xen_pcpu_id(uint32_t acpi_id)
-{
-	int cpu_id = 0, max_id = 0;
-	struct xen_platform_op op;
-
-	op.cmd = XENPF_get_cpuinfo;
-	while (cpu_id <= max_id) {
-		op.u.pcpu_info.xen_cpuid = cpu_id;
-		if (HYPERVISOR_platform_op(&op)) {
-			cpu_id++;
-			continue;
-		}
-
-		if (acpi_id == op.u.pcpu_info.acpi_id)
-			return cpu_id;
-		if (op.u.pcpu_info.max_present > max_id)
-			max_id = op.u.pcpu_info.max_present;
-		cpu_id++;
-	}
-
-	return -ENODEV;
-}
-EXPORT_SYMBOL_GPL(xen_pcpu_id);
-
 static int __init xen_pcpu_init(void)
 {
 	int irq, ret;
diff --git a/drivers/xen/xen-acpi-cpuhotplug.c b/drivers/xen/xen-acpi-cpuhotplug.c
deleted file mode 100644
index 00ab1ece02e5..000000000000
--- a/drivers/xen/xen-acpi-cpuhotplug.c
+++ /dev/null
@@ -1,446 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * Copyright (C) 2012 Intel Corporation
- *    Author: Liu Jinsong <jinsong.liu@intel.com>
- *    Author: Jiang Yunhong <yunhong.jiang@intel.com>
- */
-
-#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
-
-#include <linux/kernel.h>
-#include <linux/module.h>
-#include <linux/init.h>
-#include <linux/types.h>
-#include <linux/cpu.h>
-#include <linux/acpi.h>
-#include <linux/uaccess.h>
-#include <acpi/processor.h>
-#include <xen/acpi.h>
-#include <xen/interface/platform.h>
-#include <asm/xen/hypercall.h>
-
-#define PREFIX "ACPI:xen_cpu_hotplug:"
-
-#define INSTALL_NOTIFY_HANDLER		0
-#define UNINSTALL_NOTIFY_HANDLER	1
-
-static acpi_status xen_acpi_cpu_hotadd(struct acpi_processor *pr);
-
-/* --------------------------------------------------------------------------
-				Driver Interface
--------------------------------------------------------------------------- */
-
-static int xen_acpi_processor_enable(struct acpi_device *device)
-{
-	acpi_status status = 0;
-	unsigned long long value;
-	union acpi_object object = { 0 };
-	struct acpi_buffer buffer = { sizeof(union acpi_object), &object };
-	struct acpi_processor *pr = acpi_driver_data(device);
-
-	if (!strcmp(acpi_device_hid(device), ACPI_PROCESSOR_OBJECT_HID)) {
-		/* Declared with "Processor" statement; match ProcessorID */
-		status = acpi_evaluate_object(pr->handle, NULL, NULL, &buffer);
-		if (ACPI_FAILURE(status)) {
-			pr_err(PREFIX "Evaluating processor object\n");
-			return -ENODEV;
-		}
-
-		pr->acpi_id = object.processor.proc_id;
-	} else {
-		/* Declared with "Device" statement; match _UID */
-		status = acpi_evaluate_integer(pr->handle, METHOD_NAME__UID,
-						NULL, &value);
-		if (ACPI_FAILURE(status)) {
-			pr_err(PREFIX "Evaluating processor _UID\n");
-			return -ENODEV;
-		}
-
-		pr->acpi_id = value;
-	}
-
-	pr->id = xen_pcpu_id(pr->acpi_id);
-
-	if (invalid_logical_cpuid(pr->id))
-		/* This cpu is not presented at hypervisor, try to hotadd it */
-		if (ACPI_FAILURE(xen_acpi_cpu_hotadd(pr))) {
-			pr_err(PREFIX "Hotadd CPU (acpi_id = %d) failed.\n",
-					pr->acpi_id);
-			return -ENODEV;
-		}
-
-	return 0;
-}
-
-static int xen_acpi_processor_add(struct acpi_device *device)
-{
-	int ret;
-	struct acpi_processor *pr;
-
-	if (!device)
-		return -EINVAL;
-
-	pr = kzalloc(sizeof(struct acpi_processor), GFP_KERNEL);
-	if (!pr)
-		return -ENOMEM;
-
-	pr->handle = device->handle;
-	strcpy(acpi_device_name(device), ACPI_PROCESSOR_DEVICE_NAME);
-	strcpy(acpi_device_class(device), ACPI_PROCESSOR_CLASS);
-	device->driver_data = pr;
-
-	ret = xen_acpi_processor_enable(device);
-	if (ret)
-		pr_err(PREFIX "Error when enabling Xen processor\n");
-
-	return ret;
-}
-
-static int xen_acpi_processor_remove(struct acpi_device *device)
-{
-	struct acpi_processor *pr;
-
-	if (!device)
-		return -EINVAL;
-
-	pr = acpi_driver_data(device);
-	if (!pr)
-		return -EINVAL;
-
-	kfree(pr);
-	return 0;
-}
-
-/*--------------------------------------------------------------
-		Acpi processor hotplug support
---------------------------------------------------------------*/
-
-static int is_processor_present(acpi_handle handle)
-{
-	acpi_status status;
-	unsigned long long sta = 0;
-
-
-	status = acpi_evaluate_integer(handle, "_STA", NULL, &sta);
-
-	if (ACPI_SUCCESS(status) && (sta & ACPI_STA_DEVICE_PRESENT))
-		return 1;
-
-	/*
-	 * _STA is mandatory for a processor that supports hot plug
-	 */
-	if (status == AE_NOT_FOUND)
-		pr_info(PREFIX "Processor does not support hot plug\n");
-	else
-		pr_info(PREFIX "Processor Device is not present");
-	return 0;
-}
-
-static int xen_apic_id(acpi_handle handle)
-{
-	struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL };
-	union acpi_object *obj;
-	struct acpi_madt_local_apic *lapic;
-	int apic_id;
-
-	if (ACPI_FAILURE(acpi_evaluate_object(handle, "_MAT", NULL, &buffer)))
-		return -EINVAL;
-
-	if (!buffer.length || !buffer.pointer)
-		return -EINVAL;
-
-	obj = buffer.pointer;
-	if (obj->type != ACPI_TYPE_BUFFER ||
-	    obj->buffer.length < sizeof(*lapic)) {
-		kfree(buffer.pointer);
-		return -EINVAL;
-	}
-
-	lapic = (struct acpi_madt_local_apic *)obj->buffer.pointer;
-
-	if (lapic->header.type != ACPI_MADT_TYPE_LOCAL_APIC ||
-	    !(lapic->lapic_flags & ACPI_MADT_ENABLED)) {
-		kfree(buffer.pointer);
-		return -EINVAL;
-	}
-
-	apic_id = (uint32_t)lapic->id;
-	kfree(buffer.pointer);
-	buffer.length = ACPI_ALLOCATE_BUFFER;
-	buffer.pointer = NULL;
-
-	return apic_id;
-}
-
-static int xen_hotadd_cpu(struct acpi_processor *pr)
-{
-	int cpu_id, apic_id, pxm;
-	struct xen_platform_op op;
-
-	apic_id = xen_apic_id(pr->handle);
-	if (apic_id < 0) {
-		pr_err(PREFIX "Failed to get apic_id for acpi_id %d\n",
-				pr->acpi_id);
-		return -ENODEV;
-	}
-
-	pxm = xen_acpi_get_pxm(pr->handle);
-	if (pxm < 0) {
-		pr_err(PREFIX "Failed to get _PXM for acpi_id %d\n",
-				pr->acpi_id);
-		return pxm;
-	}
-
-	op.cmd = XENPF_cpu_hotadd;
-	op.u.cpu_add.apic_id = apic_id;
-	op.u.cpu_add.acpi_id = pr->acpi_id;
-	op.u.cpu_add.pxm = pxm;
-
-	cpu_id = HYPERVISOR_platform_op(&op);
-	if (cpu_id < 0)
-		pr_err(PREFIX "Failed to hotadd CPU for acpi_id %d\n",
-				pr->acpi_id);
-
-	return cpu_id;
-}
-
-static acpi_status xen_acpi_cpu_hotadd(struct acpi_processor *pr)
-{
-	if (!is_processor_present(pr->handle))
-		return AE_ERROR;
-
-	pr->id = xen_hotadd_cpu(pr);
-	if (invalid_logical_cpuid(pr->id))
-		return AE_ERROR;
-
-	/*
-	 * Sync with Xen hypervisor, providing new /sys/.../xen_cpuX
-	 * interface after cpu hotadded.
-	 */
-	xen_pcpu_hotplug_sync();
-
-	return AE_OK;
-}
-
-static int acpi_processor_device_remove(struct acpi_device *device)
-{
-	pr_debug(PREFIX "Xen does not support CPU hotremove\n");
-
-	return -ENOSYS;
-}
-
-static void acpi_processor_hotplug_notify(acpi_handle handle,
-					  u32 event, void *data)
-{
-	struct acpi_processor *pr;
-	struct acpi_device *device = NULL;
-	u32 ost_code = ACPI_OST_SC_NON_SPECIFIC_FAILURE; /* default */
-	int result;
-
-	acpi_scan_lock_acquire();
-
-	switch (event) {
-	case ACPI_NOTIFY_BUS_CHECK:
-	case ACPI_NOTIFY_DEVICE_CHECK:
-		ACPI_DEBUG_PRINT((ACPI_DB_INFO,
-			"Processor driver received %s event\n",
-			(event == ACPI_NOTIFY_BUS_CHECK) ?
-			"ACPI_NOTIFY_BUS_CHECK" : "ACPI_NOTIFY_DEVICE_CHECK"));
-
-		if (!is_processor_present(handle))
-			break;
-
-		acpi_bus_get_device(handle, &device);
-		if (acpi_device_enumerated(device))
-			break;
-
-		result = acpi_bus_scan(handle);
-		if (result) {
-			pr_err(PREFIX "Unable to add the device\n");
-			break;
-		}
-		device = NULL;
-		acpi_bus_get_device(handle, &device);
-		if (!acpi_device_enumerated(device)) {
-			pr_err(PREFIX "Missing device object\n");
-			break;
-		}
-		ost_code = ACPI_OST_SC_SUCCESS;
-		break;
-
-	case ACPI_NOTIFY_EJECT_REQUEST:
-		ACPI_DEBUG_PRINT((ACPI_DB_INFO,
-				  "received ACPI_NOTIFY_EJECT_REQUEST\n"));
-
-		if (acpi_bus_get_device(handle, &device)) {
-			pr_err(PREFIX "Device don't exist, dropping EJECT\n");
-			break;
-		}
-		pr = acpi_driver_data(device);
-		if (!pr) {
-			pr_err(PREFIX "Driver data is NULL, dropping EJECT\n");
-			break;
-		}
-
-		/*
-		 * TBD: implement acpi_processor_device_remove if Xen support
-		 * CPU hotremove in the future.
-		 */
-		acpi_processor_device_remove(device);
-		break;
-
-	default:
-		ACPI_DEBUG_PRINT((ACPI_DB_INFO,
-				  "Unsupported event [0x%x]\n", event));
-
-		/* non-hotplug event; possibly handled by other handler */
-		goto out;
-	}
-
-	(void) acpi_evaluate_ost(handle, event, ost_code, NULL);
-
-out:
-	acpi_scan_lock_release();
-}
-
-static acpi_status is_processor_device(acpi_handle handle)
-{
-	struct acpi_device_info *info;
-	char *hid;
-	acpi_status status;
-
-	status = acpi_get_object_info(handle, &info);
-	if (ACPI_FAILURE(status))
-		return status;
-
-	if (info->type == ACPI_TYPE_PROCESSOR) {
-		kfree(info);
-		return AE_OK;	/* found a processor object */
-	}
-
-	if (!(info->valid & ACPI_VALID_HID)) {
-		kfree(info);
-		return AE_ERROR;
-	}
-
-	hid = info->hardware_id.string;
-	if ((hid == NULL) || strcmp(hid, ACPI_PROCESSOR_DEVICE_HID)) {
-		kfree(info);
-		return AE_ERROR;
-	}
-
-	kfree(info);
-	return AE_OK;	/* found a processor device object */
-}
-
-static acpi_status
-processor_walk_namespace_cb(acpi_handle handle,
-			    u32 lvl, void *context, void **rv)
-{
-	acpi_status status;
-	int *action = context;
-
-	status = is_processor_device(handle);
-	if (ACPI_FAILURE(status))
-		return AE_OK;	/* not a processor; continue to walk */
-
-	switch (*action) {
-	case INSTALL_NOTIFY_HANDLER:
-		acpi_install_notify_handler(handle,
-					    ACPI_SYSTEM_NOTIFY,
-					    acpi_processor_hotplug_notify,
-					    NULL);
-		break;
-	case UNINSTALL_NOTIFY_HANDLER:
-		acpi_remove_notify_handler(handle,
-					   ACPI_SYSTEM_NOTIFY,
-					   acpi_processor_hotplug_notify);
-		break;
-	default:
-		break;
-	}
-
-	/* found a processor; skip walking underneath */
-	return AE_CTRL_DEPTH;
-}
-
-static
-void acpi_processor_install_hotplug_notify(void)
-{
-	int action = INSTALL_NOTIFY_HANDLER;
-	acpi_walk_namespace(ACPI_TYPE_ANY,
-			    ACPI_ROOT_OBJECT,
-			    ACPI_UINT32_MAX,
-			    processor_walk_namespace_cb, NULL, &action, NULL);
-}
-
-static
-void acpi_processor_uninstall_hotplug_notify(void)
-{
-	int action = UNINSTALL_NOTIFY_HANDLER;
-	acpi_walk_namespace(ACPI_TYPE_ANY,
-			    ACPI_ROOT_OBJECT,
-			    ACPI_UINT32_MAX,
-			    processor_walk_namespace_cb, NULL, &action, NULL);
-}
-
-static const struct acpi_device_id processor_device_ids[] = {
-	{ACPI_PROCESSOR_OBJECT_HID, 0},
-	{ACPI_PROCESSOR_DEVICE_HID, 0},
-	{"", 0},
-};
-MODULE_DEVICE_TABLE(acpi, processor_device_ids);
-
-static struct acpi_driver xen_acpi_processor_driver = {
-	.name = "processor",
-	.class = ACPI_PROCESSOR_CLASS,
-	.ids = processor_device_ids,
-	.ops = {
-		.add = xen_acpi_processor_add,
-		.remove = xen_acpi_processor_remove,
-		},
-};
-
-static int __init xen_acpi_processor_init(void)
-{
-	int result = 0;
-
-	if (!xen_initial_domain())
-		return -ENODEV;
-
-	/* unregister the stub which only used to reserve driver space */
-	xen_stub_processor_exit();
-
-	result = acpi_bus_register_driver(&xen_acpi_processor_driver);
-	if (result < 0) {
-		xen_stub_processor_init();
-		return result;
-	}
-
-	acpi_processor_install_hotplug_notify();
-	return 0;
-}
-
-static void __exit xen_acpi_processor_exit(void)
-{
-	if (!xen_initial_domain())
-		return;
-
-	acpi_processor_uninstall_hotplug_notify();
-
-	acpi_bus_unregister_driver(&xen_acpi_processor_driver);
-
-	/*
-	 * stub reserve space again to prevent any chance of native
-	 * driver loading.
-	 */
-	xen_stub_processor_init();
-	return;
-}
-
-module_init(xen_acpi_processor_init);
-module_exit(xen_acpi_processor_exit);
-ACPI_MODULE_NAME("xen-acpi-cpuhotplug");
-MODULE_AUTHOR("Liu Jinsong <jinsong.liu@intel.com>");
-MODULE_DESCRIPTION("Xen Hotplug CPU Driver");
-MODULE_LICENSE("GPL");
diff --git a/drivers/xen/xen-acpi-memhotplug.c b/drivers/xen/xen-acpi-memhotplug.c
deleted file mode 100644
index f914b72557ef..000000000000
--- a/drivers/xen/xen-acpi-memhotplug.c
+++ /dev/null
@@ -1,475 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * Copyright (C) 2012 Intel Corporation
- *    Author: Liu Jinsong <jinsong.liu@intel.com>
- *    Author: Jiang Yunhong <yunhong.jiang@intel.com>
- */
-
-#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
-
-#include <linux/kernel.h>
-#include <linux/module.h>
-#include <linux/init.h>
-#include <linux/types.h>
-#include <linux/acpi.h>
-#include <xen/acpi.h>
-#include <xen/interface/platform.h>
-#include <asm/xen/hypercall.h>
-
-#define PREFIX "ACPI:xen_memory_hotplug:"
-
-struct acpi_memory_info {
-	struct list_head list;
-	u64 start_addr;		/* Memory Range start physical addr */
-	u64 length;		/* Memory Range length */
-	unsigned short caching;	/* memory cache attribute */
-	unsigned short write_protect;	/* memory read/write attribute */
-				/* copied from buffer getting from _CRS */
-	unsigned int enabled:1;
-};
-
-struct acpi_memory_device {
-	struct acpi_device *device;
-	struct list_head res_list;
-};
-
-static bool acpi_hotmem_initialized __read_mostly;
-
-static int xen_hotadd_memory(int pxm, struct acpi_memory_info *info)
-{
-	int rc;
-	struct xen_platform_op op;
-
-	op.cmd = XENPF_mem_hotadd;
-	op.u.mem_add.spfn = info->start_addr >> PAGE_SHIFT;
-	op.u.mem_add.epfn = (info->start_addr + info->length) >> PAGE_SHIFT;
-	op.u.mem_add.pxm = pxm;
-
-	rc = HYPERVISOR_dom0_op(&op);
-	if (rc)
-		pr_err(PREFIX "Xen Hotplug Memory Add failed on "
-			"0x%lx -> 0x%lx, _PXM: %d, error: %d\n",
-			(unsigned long)info->start_addr,
-			(unsigned long)(info->start_addr + info->length),
-			pxm, rc);
-
-	return rc;
-}
-
-static int xen_acpi_memory_enable_device(struct acpi_memory_device *mem_device)
-{
-	int pxm, result;
-	int num_enabled = 0;
-	struct acpi_memory_info *info;
-
-	if (!mem_device)
-		return -EINVAL;
-
-	pxm = xen_acpi_get_pxm(mem_device->device->handle);
-	if (pxm < 0)
-		return pxm;
-
-	list_for_each_entry(info, &mem_device->res_list, list) {
-		if (info->enabled) { /* just sanity check...*/
-			num_enabled++;
-			continue;
-		}
-
-		if (!info->length)
-			continue;
-
-		result = xen_hotadd_memory(pxm, info);
-		if (result)
-			continue;
-		info->enabled = 1;
-		num_enabled++;
-	}
-
-	if (!num_enabled)
-		return -ENODEV;
-
-	return 0;
-}
-
-static acpi_status
-acpi_memory_get_resource(struct acpi_resource *resource, void *context)
-{
-	struct acpi_memory_device *mem_device = context;
-	struct acpi_resource_address64 address64;
-	struct acpi_memory_info *info, *new;
-	acpi_status status;
-
-	status = acpi_resource_to_address64(resource, &address64);
-	if (ACPI_FAILURE(status) ||
-	    (address64.resource_type != ACPI_MEMORY_RANGE))
-		return AE_OK;
-
-	list_for_each_entry(info, &mem_device->res_list, list) {
-		if ((info->caching == address64.info.mem.caching) &&
-		    (info->write_protect == address64.info.mem.write_protect) &&
-		    (info->start_addr + info->length == address64.address.minimum)) {
-			info->length += address64.address.address_length;
-			return AE_OK;
-		}
-	}
-
-	new = kzalloc(sizeof(struct acpi_memory_info), GFP_KERNEL);
-	if (!new)
-		return AE_ERROR;
-
-	INIT_LIST_HEAD(&new->list);
-	new->caching = address64.info.mem.caching;
-	new->write_protect = address64.info.mem.write_protect;
-	new->start_addr = address64.address.minimum;
-	new->length = address64.address.address_length;
-	list_add_tail(&new->list, &mem_device->res_list);
-
-	return AE_OK;
-}
-
-static int
-acpi_memory_get_device_resources(struct acpi_memory_device *mem_device)
-{
-	acpi_status status;
-	struct acpi_memory_info *info, *n;
-
-	if (!list_empty(&mem_device->res_list))
-		return 0;
-
-	status = acpi_walk_resources(mem_device->device->handle,
-		METHOD_NAME__CRS, acpi_memory_get_resource, mem_device);
-
-	if (ACPI_FAILURE(status)) {
-		list_for_each_entry_safe(info, n, &mem_device->res_list, list)
-			kfree(info);
-		INIT_LIST_HEAD(&mem_device->res_list);
-		return -EINVAL;
-	}
-
-	return 0;
-}
-
-static int acpi_memory_get_device(acpi_handle handle,
-				  struct acpi_memory_device **mem_device)
-{
-	struct acpi_device *device = NULL;
-	int result = 0;
-
-	acpi_scan_lock_acquire();
-
-	acpi_bus_get_device(handle, &device);
-	if (acpi_device_enumerated(device))
-		goto end;
-
-	/*
-	 * Now add the notified device.  This creates the acpi_device
-	 * and invokes .add function
-	 */
-	result = acpi_bus_scan(handle);
-	if (result) {
-		pr_warn(PREFIX "ACPI namespace scan failed\n");
-		result = -EINVAL;
-		goto out;
-	}
-	device = NULL;
-	acpi_bus_get_device(handle, &device);
-	if (!acpi_device_enumerated(device)) {
-		pr_warn(PREFIX "Missing device object\n");
-		result = -EINVAL;
-		goto out;
-	}
-
-end:
-	*mem_device = acpi_driver_data(device);
-	if (!(*mem_device)) {
-		pr_err(PREFIX "driver data not found\n");
-		result = -ENODEV;
-		goto out;
-	}
-
-out:
-	acpi_scan_lock_release();
-	return result;
-}
-
-static int acpi_memory_check_device(struct acpi_memory_device *mem_device)
-{
-	unsigned long long current_status;
-
-	/* Get device present/absent information from the _STA */
-	if (ACPI_FAILURE(acpi_evaluate_integer(mem_device->device->handle,
-				"_STA", NULL, &current_status)))
-		return -ENODEV;
-	/*
-	 * Check for device status. Device should be
-	 * present/enabled/functioning.
-	 */
-	if (!((current_status & ACPI_STA_DEVICE_PRESENT)
-	      && (current_status & ACPI_STA_DEVICE_ENABLED)
-	      && (current_status & ACPI_STA_DEVICE_FUNCTIONING)))
-		return -ENODEV;
-
-	return 0;
-}
-
-static int acpi_memory_disable_device(struct acpi_memory_device *mem_device)
-{
-	pr_debug(PREFIX "Xen does not support memory hotremove\n");
-
-	return -ENOSYS;
-}
-
-static void acpi_memory_device_notify(acpi_handle handle, u32 event, void *data)
-{
-	struct acpi_memory_device *mem_device;
-	struct acpi_device *device;
-	u32 ost_code = ACPI_OST_SC_NON_SPECIFIC_FAILURE; /* default */
-
-	switch (event) {
-	case ACPI_NOTIFY_BUS_CHECK:
-		ACPI_DEBUG_PRINT((ACPI_DB_INFO,
-			"\nReceived BUS CHECK notification for device\n"));
-		fallthrough;
-	case ACPI_NOTIFY_DEVICE_CHECK:
-		if (event == ACPI_NOTIFY_DEVICE_CHECK)
-			ACPI_DEBUG_PRINT((ACPI_DB_INFO,
-			"\nReceived DEVICE CHECK notification for device\n"));
-
-		if (acpi_memory_get_device(handle, &mem_device)) {
-			pr_err(PREFIX "Cannot find driver data\n");
-			break;
-		}
-
-		ost_code = ACPI_OST_SC_SUCCESS;
-		break;
-
-	case ACPI_NOTIFY_EJECT_REQUEST:
-		ACPI_DEBUG_PRINT((ACPI_DB_INFO,
-			"\nReceived EJECT REQUEST notification for device\n"));
-
-		acpi_scan_lock_acquire();
-		if (acpi_bus_get_device(handle, &device)) {
-			acpi_scan_lock_release();
-			pr_err(PREFIX "Device doesn't exist\n");
-			break;
-		}
-		mem_device = acpi_driver_data(device);
-		if (!mem_device) {
-			acpi_scan_lock_release();
-			pr_err(PREFIX "Driver Data is NULL\n");
-			break;
-		}
-
-		/*
-		 * TBD: implement acpi_memory_disable_device and invoke
-		 * acpi_bus_remove if Xen support hotremove in the future
-		 */
-		acpi_memory_disable_device(mem_device);
-		acpi_scan_lock_release();
-		break;
-
-	default:
-		ACPI_DEBUG_PRINT((ACPI_DB_INFO,
-				  "Unsupported event [0x%x]\n", event));
-		/* non-hotplug event; possibly handled by other handler */
-		return;
-	}
-
-	(void) acpi_evaluate_ost(handle, event, ost_code, NULL);
-	return;
-}
-
-static int xen_acpi_memory_device_add(struct acpi_device *device)
-{
-	int result;
-	struct acpi_memory_device *mem_device = NULL;
-
-
-	if (!device)
-		return -EINVAL;
-
-	mem_device = kzalloc(sizeof(struct acpi_memory_device), GFP_KERNEL);
-	if (!mem_device)
-		return -ENOMEM;
-
-	INIT_LIST_HEAD(&mem_device->res_list);
-	mem_device->device = device;
-	sprintf(acpi_device_name(device), "%s", ACPI_MEMORY_DEVICE_NAME);
-	sprintf(acpi_device_class(device), "%s", ACPI_MEMORY_DEVICE_CLASS);
-	device->driver_data = mem_device;
-
-	/* Get the range from the _CRS */
-	result = acpi_memory_get_device_resources(mem_device);
-	if (result) {
-		kfree(mem_device);
-		return result;
-	}
-
-	/*
-	 * For booting existed memory devices, early boot code has recognized
-	 * memory area by EFI/E820. If DSDT shows these memory devices on boot,
-	 * hotplug is not necessary for them.
-	 * For hot-added memory devices during runtime, it need hypercall to
-	 * Xen hypervisor to add memory.
-	 */
-	if (!acpi_hotmem_initialized)
-		return 0;
-
-	if (!acpi_memory_check_device(mem_device))
-		result = xen_acpi_memory_enable_device(mem_device);
-
-	return result;
-}
-
-static int xen_acpi_memory_device_remove(struct acpi_device *device)
-{
-	struct acpi_memory_device *mem_device = NULL;
-
-	if (!device || !acpi_driver_data(device))
-		return -EINVAL;
-
-	mem_device = acpi_driver_data(device);
-	kfree(mem_device);
-
-	return 0;
-}
-
-/*
- * Helper function to check for memory device
- */
-static acpi_status is_memory_device(acpi_handle handle)
-{
-	char *hardware_id;
-	acpi_status status;
-	struct acpi_device_info *info;
-
-	status = acpi_get_object_info(handle, &info);
-	if (ACPI_FAILURE(status))
-		return status;
-
-	if (!(info->valid & ACPI_VALID_HID)) {
-		kfree(info);
-		return AE_ERROR;
-	}
-
-	hardware_id = info->hardware_id.string;
-	if ((hardware_id == NULL) ||
-	    (strcmp(hardware_id, ACPI_MEMORY_DEVICE_HID)))
-		status = AE_ERROR;
-
-	kfree(info);
-	return status;
-}
-
-static acpi_status
-acpi_memory_register_notify_handler(acpi_handle handle,
-				    u32 level, void *ctxt, void **retv)
-{
-	acpi_status status;
-
-	status = is_memory_device(handle);
-	if (ACPI_FAILURE(status))
-		return AE_OK;	/* continue */
-
-	status = acpi_install_notify_handler(handle, ACPI_SYSTEM_NOTIFY,
-					     acpi_memory_device_notify, NULL);
-	/* continue */
-	return AE_OK;
-}
-
-static acpi_status
-acpi_memory_deregister_notify_handler(acpi_handle handle,
-				      u32 level, void *ctxt, void **retv)
-{
-	acpi_status status;
-
-	status = is_memory_device(handle);
-	if (ACPI_FAILURE(status))
-		return AE_OK;	/* continue */
-
-	status = acpi_remove_notify_handler(handle,
-					    ACPI_SYSTEM_NOTIFY,
-					    acpi_memory_device_notify);
-
-	return AE_OK;	/* continue */
-}
-
-static const struct acpi_device_id memory_device_ids[] = {
-	{ACPI_MEMORY_DEVICE_HID, 0},
-	{"", 0},
-};
-MODULE_DEVICE_TABLE(acpi, memory_device_ids);
-
-static struct acpi_driver xen_acpi_memory_device_driver = {
-	.name = "acpi_memhotplug",
-	.class = ACPI_MEMORY_DEVICE_CLASS,
-	.ids = memory_device_ids,
-	.ops = {
-		.add = xen_acpi_memory_device_add,
-		.remove = xen_acpi_memory_device_remove,
-		},
-};
-
-static int __init xen_acpi_memory_device_init(void)
-{
-	int result;
-	acpi_status status;
-
-	if (!xen_initial_domain())
-		return -ENODEV;
-
-	/* unregister the stub which only used to reserve driver space */
-	xen_stub_memory_device_exit();
-
-	result = acpi_bus_register_driver(&xen_acpi_memory_device_driver);
-	if (result < 0) {
-		xen_stub_memory_device_init();
-		return -ENODEV;
-	}
-
-	status = acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
-				     ACPI_UINT32_MAX,
-				     acpi_memory_register_notify_handler,
-				     NULL, NULL, NULL);
-
-	if (ACPI_FAILURE(status)) {
-		pr_warn(PREFIX "walk_namespace failed\n");
-		acpi_bus_unregister_driver(&xen_acpi_memory_device_driver);
-		xen_stub_memory_device_init();
-		return -ENODEV;
-	}
-
-	acpi_hotmem_initialized = true;
-	return 0;
-}
-
-static void __exit xen_acpi_memory_device_exit(void)
-{
-	acpi_status status;
-
-	if (!xen_initial_domain())
-		return;
-
-	status = acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
-				     ACPI_UINT32_MAX,
-				     acpi_memory_deregister_notify_handler,
-				     NULL, NULL, NULL);
-	if (ACPI_FAILURE(status))
-		pr_warn(PREFIX "walk_namespace failed\n");
-
-	acpi_bus_unregister_driver(&xen_acpi_memory_device_driver);
-
-	/*
-	 * stub reserve space again to prevent any chance of native
-	 * driver loading.
-	 */
-	xen_stub_memory_device_init();
-	return;
-}
-
-module_init(xen_acpi_memory_device_init);
-module_exit(xen_acpi_memory_device_exit);
-ACPI_MODULE_NAME("xen-acpi-memhotplug");
-MODULE_AUTHOR("Liu Jinsong <jinsong.liu@intel.com>");
-MODULE_DESCRIPTION("Xen Hotplug Mem Driver");
-MODULE_LICENSE("GPL");
diff --git a/drivers/xen/xen-stub.c b/drivers/xen/xen-stub.c
deleted file mode 100644
index 3be4e74660b5..000000000000
--- a/drivers/xen/xen-stub.c
+++ /dev/null
@@ -1,90 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * xen-stub.c - stub drivers to reserve space for Xen
- *
- * Copyright (C) 2012 Intel Corporation
- *    Author: Liu Jinsong <jinsong.liu@intel.com>
- *    Author: Jiang Yunhong <yunhong.jiang@intel.com>
- *
- * Copyright (C) 2012 Oracle Inc
- *    Author: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/export.h>
-#include <linux/types.h>
-#include <linux/acpi.h>
-#include <xen/acpi.h>
-
-#ifdef CONFIG_ACPI
-
-/*--------------------------------------------
-	stub driver for Xen memory hotplug
---------------------------------------------*/
-
-static const struct acpi_device_id memory_device_ids[] = {
-	{ACPI_MEMORY_DEVICE_HID, 0},
-	{"", 0},
-};
-
-static struct acpi_driver xen_stub_memory_device_driver = {
-	/* same name as native memory driver to block native loaded */
-	.name = "acpi_memhotplug",
-	.class = ACPI_MEMORY_DEVICE_CLASS,
-	.ids = memory_device_ids,
-};
-
-int xen_stub_memory_device_init(void)
-{
-	if (!xen_initial_domain())
-		return -ENODEV;
-
-	/* just reserve space for Xen, block native driver loaded */
-	return acpi_bus_register_driver(&xen_stub_memory_device_driver);
-}
-EXPORT_SYMBOL_GPL(xen_stub_memory_device_init);
-subsys_initcall(xen_stub_memory_device_init);
-
-void xen_stub_memory_device_exit(void)
-{
-	acpi_bus_unregister_driver(&xen_stub_memory_device_driver);
-}
-EXPORT_SYMBOL_GPL(xen_stub_memory_device_exit);
-
-
-/*--------------------------------------------
-	stub driver for Xen cpu hotplug
---------------------------------------------*/
-
-static const struct acpi_device_id processor_device_ids[] = {
-	{ACPI_PROCESSOR_OBJECT_HID, 0},
-	{ACPI_PROCESSOR_DEVICE_HID, 0},
-	{"", 0},
-};
-
-static struct acpi_driver xen_stub_processor_driver = {
-	/* same name as native processor driver to block native loaded */
-	.name = "processor",
-	.class = ACPI_PROCESSOR_CLASS,
-	.ids = processor_device_ids,
-};
-
-int xen_stub_processor_init(void)
-{
-	if (!xen_initial_domain())
-		return -ENODEV;
-
-	/* just reserve space for Xen, block native driver loaded */
-	return acpi_bus_register_driver(&xen_stub_processor_driver);
-}
-EXPORT_SYMBOL_GPL(xen_stub_processor_init);
-subsys_initcall(xen_stub_processor_init);
-
-void xen_stub_processor_exit(void)
-{
-	acpi_bus_unregister_driver(&xen_stub_processor_driver);
-}
-EXPORT_SYMBOL_GPL(xen_stub_processor_exit);
-
-#endif
diff --git a/include/xen/acpi.h b/include/xen/acpi.h
index 4ddd7dc4a61e..b1e11863144d 100644
--- a/include/xen/acpi.h
+++ b/include/xen/acpi.h
@@ -40,41 +40,6 @@
 #include <xen/xen.h>
 #include <linux/acpi.h>
 
-#define ACPI_MEMORY_DEVICE_CLASS        "memory"
-#define ACPI_MEMORY_DEVICE_HID          "PNP0C80"
-#define ACPI_MEMORY_DEVICE_NAME         "Hotplug Mem Device"
-
-int xen_stub_memory_device_init(void);
-void xen_stub_memory_device_exit(void);
-
-#define ACPI_PROCESSOR_CLASS            "processor"
-#define ACPI_PROCESSOR_DEVICE_HID       "ACPI0007"
-#define ACPI_PROCESSOR_DEVICE_NAME      "Processor"
-
-int xen_stub_processor_init(void);
-void xen_stub_processor_exit(void);
-
-void xen_pcpu_hotplug_sync(void);
-int xen_pcpu_id(uint32_t acpi_id);
-
-static inline int xen_acpi_get_pxm(acpi_handle h)
-{
-	unsigned long long pxm;
-	acpi_status status;
-	acpi_handle handle;
-	acpi_handle phandle = h;
-
-	do {
-		handle = phandle;
-		status = acpi_evaluate_integer(handle, "_PXM", NULL, &pxm);
-		if (ACPI_SUCCESS(status))
-			return pxm;
-		status = acpi_get_parent(handle, &phandle);
-	} while (ACPI_SUCCESS(status));
-
-	return -ENXIO;
-}
-
 int xen_acpi_notify_hypervisor_sleep(u8 sleep_state,
 				     u32 pm1a_cnt, u32 pm1b_cnd);
 int xen_acpi_notify_hypervisor_extended_sleep(u8 sleep_state,
-- 
1.8.3.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:55:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:55:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110055.210053 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNFo-0005Ub-W8; Tue, 13 Apr 2021 17:55:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110055.210053; Tue, 13 Apr 2021 17:55:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNFo-0005UT-Sq; Tue, 13 Apr 2021 17:55:12 +0000
Received: by outflank-mailman (input) for mailman id 110055;
 Tue, 13 Apr 2021 17:55:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pApa=JK=gmail.com=rjwysocki@srs-us1.protection.inumbo.net>)
 id 1lWNFn-0005UO-Vk
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:55:12 +0000
Received: from mail-ot1-f43.google.com (unknown [209.85.210.43])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c90d3465-d1f4-44fc-941c-558d360a2840;
 Tue, 13 Apr 2021 17:55:11 +0000 (UTC)
Received: by mail-ot1-f43.google.com with SMTP id
 w31-20020a9d36220000b02901f2cbfc9743so16870839otb.7
 for <xen-devel@lists.xenproject.org>; Tue, 13 Apr 2021 10:55: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: c90d3465-d1f4-44fc-941c-558d360a2840
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=ATBG1ir6cjyAvTOr/1hnvLFMZ9qgc8BeePy3A7gPgqk=;
        b=VzWVL7FHiAjpFRnmQRndS+lsDSa6t5Ofy/RwrHGxo9zcYSNb17dujqyXAeohJdM55S
         p4SU3iFaHmBv0ijfbQPKe9/Xfv0PLzXFshQIqx9kwvQfSv9yc3Id1w4b0TAafvuDvCCG
         WeSBiW2tEt1rosOtu/uh5qxAVKaoWUINBm1UKFj6TH/W/vIs65CergG7GYmoRtUFLbIP
         6SzN6t00cj4MAHxYjSR5p1wz4KloTLPzRbFcwmdg6EJ82dacJyRF/UdPyAjN5Pz/9+Aj
         Wta1LMaxjT6bz9pJc41di0nDM3APTVLD1FOnGUta3E11WLJhxACOfgoFFgC9uhIA9hDL
         yo1w==
X-Gm-Message-State: AOAM532w0yo96t2uN8W467nKVoQWDmDHKwGisKEC2pi4wQ7ClN9k95l3
	TVMe2qPGEy2dcGLBS516YfS1S3izYwt1kqx+XGg=
X-Google-Smtp-Source: ABdhPJwSHa8XJWmssRDXA26PIQJlB2w9OlBXI/lIVdTDQWow9pgU/jVSFX4mgPp0lgqOuMffa59fODefgQvhQ5UOSYM=
X-Received: by 2002:a05:6830:55b:: with SMTP id l27mr29218763otb.260.1618336510456;
 Tue, 13 Apr 2021 10:55:10 -0700 (PDT)
MIME-Version: 1.0
References: <1618336344-3162-1-git-send-email-boris.ostrovsky@oracle.com>
In-Reply-To: <1618336344-3162-1-git-send-email-boris.ostrovsky@oracle.com>
From: "Rafael J. Wysocki" <rafael@kernel.org>
Date: Tue, 13 Apr 2021 19:54:59 +0200
Message-ID: <CAJZ5v0gOP+cLh0SNYRRsS7y+Z38NtpSQhks7-x3fwAJWRZDqXg@mail.gmail.com>
Subject: Re: [PATCH] xen: Remove support for PV ACPI cpu/memory hotplug
To: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: xen-devel@lists.xenproject.org, Juergen Gross <jgross@suse.com>, 
	Stefano Stabellini <sstabellini@kernel.org>, "Rafael J. Wysocki" <rafael@kernel.org>, 
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Content-Type: text/plain; charset="UTF-8"

On Tue, Apr 13, 2021 at 7:53 PM Boris Ostrovsky
<boris.ostrovsky@oracle.com> wrote:
>
> Commit 76fc253723ad ("xen/acpi-stub: Disable it b/c the acpi_processor_add
> is no longer called.") declared as BROKEN support for Xen ACPI stub (which
> is required for xen-acpi-{cpu|memory}-hotplug) and suggested that this
> is temporary and will be soon fixed. This was in March 2013.
>
> Further, commit cfafae940381 ("xen: rename dom0_op to platform_op")
> renamed an interface used by memory hotplug code without updating that
> code (as it was BROKEN and therefore not compiled). This was
> in November 2015 and has gone unnoticed for over 5 year.
>
> It is now clear that this code is of no interest to anyone and therefore
> should be removed.
>
> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>

Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Thanks for doing this!

> ---
>  drivers/xen/Kconfig               |  31 ---
>  drivers/xen/Makefile              |   3 -
>  drivers/xen/pcpu.c                |  35 ---
>  drivers/xen/xen-acpi-cpuhotplug.c | 446 -----------------------------------
>  drivers/xen/xen-acpi-memhotplug.c | 475 --------------------------------------
>  drivers/xen/xen-stub.c            |  90 --------
>  include/xen/acpi.h                |  35 ---
>  7 files changed, 1115 deletions(-)
>  delete mode 100644 drivers/xen/xen-acpi-cpuhotplug.c
>  delete mode 100644 drivers/xen/xen-acpi-memhotplug.c
>  delete mode 100644 drivers/xen/xen-stub.c
>
> diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
> index ea0efd290c37..5f1ce59b44b9 100644
> --- a/drivers/xen/Kconfig
> +++ b/drivers/xen/Kconfig
> @@ -238,37 +238,6 @@ config XEN_PRIVCMD
>         depends on XEN
>         default m
>
> -config XEN_STUB
> -       bool "Xen stub drivers"
> -       depends on XEN && X86_64 && BROKEN
> -       help
> -         Allow kernel to install stub drivers, to reserve space for Xen drivers,
> -         i.e. memory hotplug and cpu hotplug, and to block native drivers loaded,
> -         so that real Xen drivers can be modular.
> -
> -         To enable Xen features like cpu and memory hotplug, select Y here.
> -
> -config XEN_ACPI_HOTPLUG_MEMORY
> -       tristate "Xen ACPI memory hotplug"
> -       depends on XEN_DOM0 && XEN_STUB && ACPI
> -       help
> -         This is Xen ACPI memory hotplug.
> -
> -         Currently Xen only support ACPI memory hot-add. If you want
> -         to hot-add memory at runtime (the hot-added memory cannot be
> -         removed until machine stop), select Y/M here, otherwise select N.
> -
> -config XEN_ACPI_HOTPLUG_CPU
> -       tristate "Xen ACPI cpu hotplug"
> -       depends on XEN_DOM0 && XEN_STUB && ACPI
> -       select ACPI_CONTAINER
> -       help
> -         Xen ACPI cpu enumerating and hotplugging
> -
> -         For hotplugging, currently Xen only support ACPI cpu hotadd.
> -         If you want to hotadd cpu at runtime (the hotadded cpu cannot
> -         be removed until machine stop), select Y/M here.
> -
>  config XEN_ACPI_PROCESSOR
>         tristate "Xen ACPI processor"
>         depends on XEN && XEN_DOM0 && X86 && ACPI_PROCESSOR && CPU_FREQ
> diff --git a/drivers/xen/Makefile b/drivers/xen/Makefile
> index c3621b9f4012..3434593455b2 100644
> --- a/drivers/xen/Makefile
> +++ b/drivers/xen/Makefile
> @@ -26,9 +26,6 @@ obj-$(CONFIG_SWIOTLB_XEN)             += swiotlb-xen.o
>  obj-$(CONFIG_XEN_MCE_LOG)              += mcelog.o
>  obj-$(CONFIG_XEN_PCIDEV_BACKEND)       += xen-pciback/
>  obj-$(CONFIG_XEN_PRIVCMD)              += xen-privcmd.o
> -obj-$(CONFIG_XEN_STUB)                 += xen-stub.o
> -obj-$(CONFIG_XEN_ACPI_HOTPLUG_MEMORY)  += xen-acpi-memhotplug.o
> -obj-$(CONFIG_XEN_ACPI_HOTPLUG_CPU)     += xen-acpi-cpuhotplug.o
>  obj-$(CONFIG_XEN_ACPI_PROCESSOR)       += xen-acpi-processor.o
>  obj-$(CONFIG_XEN_EFI)                  += efi.o
>  obj-$(CONFIG_XEN_SCSI_BACKEND)         += xen-scsiback.o
> diff --git a/drivers/xen/pcpu.c b/drivers/xen/pcpu.c
> index cdc6daa7a9f6..1bcdd5227771 100644
> --- a/drivers/xen/pcpu.c
> +++ b/drivers/xen/pcpu.c
> @@ -345,41 +345,6 @@ static irqreturn_t xen_pcpu_interrupt(int irq, void *dev_id)
>         return IRQ_HANDLED;
>  }
>
> -/* Sync with Xen hypervisor after cpu hotadded */
> -void xen_pcpu_hotplug_sync(void)
> -{
> -       schedule_work(&xen_pcpu_work);
> -}
> -EXPORT_SYMBOL_GPL(xen_pcpu_hotplug_sync);
> -
> -/*
> - * For hypervisor presented cpu, return logic cpu id;
> - * For hypervisor non-presented cpu, return -ENODEV.
> - */
> -int xen_pcpu_id(uint32_t acpi_id)
> -{
> -       int cpu_id = 0, max_id = 0;
> -       struct xen_platform_op op;
> -
> -       op.cmd = XENPF_get_cpuinfo;
> -       while (cpu_id <= max_id) {
> -               op.u.pcpu_info.xen_cpuid = cpu_id;
> -               if (HYPERVISOR_platform_op(&op)) {
> -                       cpu_id++;
> -                       continue;
> -               }
> -
> -               if (acpi_id == op.u.pcpu_info.acpi_id)
> -                       return cpu_id;
> -               if (op.u.pcpu_info.max_present > max_id)
> -                       max_id = op.u.pcpu_info.max_present;
> -               cpu_id++;
> -       }
> -
> -       return -ENODEV;
> -}
> -EXPORT_SYMBOL_GPL(xen_pcpu_id);
> -
>  static int __init xen_pcpu_init(void)
>  {
>         int irq, ret;
> diff --git a/drivers/xen/xen-acpi-cpuhotplug.c b/drivers/xen/xen-acpi-cpuhotplug.c
> deleted file mode 100644
> index 00ab1ece02e5..000000000000
> --- a/drivers/xen/xen-acpi-cpuhotplug.c
> +++ /dev/null
> @@ -1,446 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0-or-later
> -/*
> - * Copyright (C) 2012 Intel Corporation
> - *    Author: Liu Jinsong <jinsong.liu@intel.com>
> - *    Author: Jiang Yunhong <yunhong.jiang@intel.com>
> - */
> -
> -#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> -
> -#include <linux/kernel.h>
> -#include <linux/module.h>
> -#include <linux/init.h>
> -#include <linux/types.h>
> -#include <linux/cpu.h>
> -#include <linux/acpi.h>
> -#include <linux/uaccess.h>
> -#include <acpi/processor.h>
> -#include <xen/acpi.h>
> -#include <xen/interface/platform.h>
> -#include <asm/xen/hypercall.h>
> -
> -#define PREFIX "ACPI:xen_cpu_hotplug:"
> -
> -#define INSTALL_NOTIFY_HANDLER         0
> -#define UNINSTALL_NOTIFY_HANDLER       1
> -
> -static acpi_status xen_acpi_cpu_hotadd(struct acpi_processor *pr);
> -
> -/* --------------------------------------------------------------------------
> -                               Driver Interface
> --------------------------------------------------------------------------- */
> -
> -static int xen_acpi_processor_enable(struct acpi_device *device)
> -{
> -       acpi_status status = 0;
> -       unsigned long long value;
> -       union acpi_object object = { 0 };
> -       struct acpi_buffer buffer = { sizeof(union acpi_object), &object };
> -       struct acpi_processor *pr = acpi_driver_data(device);
> -
> -       if (!strcmp(acpi_device_hid(device), ACPI_PROCESSOR_OBJECT_HID)) {
> -               /* Declared with "Processor" statement; match ProcessorID */
> -               status = acpi_evaluate_object(pr->handle, NULL, NULL, &buffer);
> -               if (ACPI_FAILURE(status)) {
> -                       pr_err(PREFIX "Evaluating processor object\n");
> -                       return -ENODEV;
> -               }
> -
> -               pr->acpi_id = object.processor.proc_id;
> -       } else {
> -               /* Declared with "Device" statement; match _UID */
> -               status = acpi_evaluate_integer(pr->handle, METHOD_NAME__UID,
> -                                               NULL, &value);
> -               if (ACPI_FAILURE(status)) {
> -                       pr_err(PREFIX "Evaluating processor _UID\n");
> -                       return -ENODEV;
> -               }
> -
> -               pr->acpi_id = value;
> -       }
> -
> -       pr->id = xen_pcpu_id(pr->acpi_id);
> -
> -       if (invalid_logical_cpuid(pr->id))
> -               /* This cpu is not presented at hypervisor, try to hotadd it */
> -               if (ACPI_FAILURE(xen_acpi_cpu_hotadd(pr))) {
> -                       pr_err(PREFIX "Hotadd CPU (acpi_id = %d) failed.\n",
> -                                       pr->acpi_id);
> -                       return -ENODEV;
> -               }
> -
> -       return 0;
> -}
> -
> -static int xen_acpi_processor_add(struct acpi_device *device)
> -{
> -       int ret;
> -       struct acpi_processor *pr;
> -
> -       if (!device)
> -               return -EINVAL;
> -
> -       pr = kzalloc(sizeof(struct acpi_processor), GFP_KERNEL);
> -       if (!pr)
> -               return -ENOMEM;
> -
> -       pr->handle = device->handle;
> -       strcpy(acpi_device_name(device), ACPI_PROCESSOR_DEVICE_NAME);
> -       strcpy(acpi_device_class(device), ACPI_PROCESSOR_CLASS);
> -       device->driver_data = pr;
> -
> -       ret = xen_acpi_processor_enable(device);
> -       if (ret)
> -               pr_err(PREFIX "Error when enabling Xen processor\n");
> -
> -       return ret;
> -}
> -
> -static int xen_acpi_processor_remove(struct acpi_device *device)
> -{
> -       struct acpi_processor *pr;
> -
> -       if (!device)
> -               return -EINVAL;
> -
> -       pr = acpi_driver_data(device);
> -       if (!pr)
> -               return -EINVAL;
> -
> -       kfree(pr);
> -       return 0;
> -}
> -
> -/*--------------------------------------------------------------
> -               Acpi processor hotplug support
> ---------------------------------------------------------------*/
> -
> -static int is_processor_present(acpi_handle handle)
> -{
> -       acpi_status status;
> -       unsigned long long sta = 0;
> -
> -
> -       status = acpi_evaluate_integer(handle, "_STA", NULL, &sta);
> -
> -       if (ACPI_SUCCESS(status) && (sta & ACPI_STA_DEVICE_PRESENT))
> -               return 1;
> -
> -       /*
> -        * _STA is mandatory for a processor that supports hot plug
> -        */
> -       if (status == AE_NOT_FOUND)
> -               pr_info(PREFIX "Processor does not support hot plug\n");
> -       else
> -               pr_info(PREFIX "Processor Device is not present");
> -       return 0;
> -}
> -
> -static int xen_apic_id(acpi_handle handle)
> -{
> -       struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL };
> -       union acpi_object *obj;
> -       struct acpi_madt_local_apic *lapic;
> -       int apic_id;
> -
> -       if (ACPI_FAILURE(acpi_evaluate_object(handle, "_MAT", NULL, &buffer)))
> -               return -EINVAL;
> -
> -       if (!buffer.length || !buffer.pointer)
> -               return -EINVAL;
> -
> -       obj = buffer.pointer;
> -       if (obj->type != ACPI_TYPE_BUFFER ||
> -           obj->buffer.length < sizeof(*lapic)) {
> -               kfree(buffer.pointer);
> -               return -EINVAL;
> -       }
> -
> -       lapic = (struct acpi_madt_local_apic *)obj->buffer.pointer;
> -
> -       if (lapic->header.type != ACPI_MADT_TYPE_LOCAL_APIC ||
> -           !(lapic->lapic_flags & ACPI_MADT_ENABLED)) {
> -               kfree(buffer.pointer);
> -               return -EINVAL;
> -       }
> -
> -       apic_id = (uint32_t)lapic->id;
> -       kfree(buffer.pointer);
> -       buffer.length = ACPI_ALLOCATE_BUFFER;
> -       buffer.pointer = NULL;
> -
> -       return apic_id;
> -}
> -
> -static int xen_hotadd_cpu(struct acpi_processor *pr)
> -{
> -       int cpu_id, apic_id, pxm;
> -       struct xen_platform_op op;
> -
> -       apic_id = xen_apic_id(pr->handle);
> -       if (apic_id < 0) {
> -               pr_err(PREFIX "Failed to get apic_id for acpi_id %d\n",
> -                               pr->acpi_id);
> -               return -ENODEV;
> -       }
> -
> -       pxm = xen_acpi_get_pxm(pr->handle);
> -       if (pxm < 0) {
> -               pr_err(PREFIX "Failed to get _PXM for acpi_id %d\n",
> -                               pr->acpi_id);
> -               return pxm;
> -       }
> -
> -       op.cmd = XENPF_cpu_hotadd;
> -       op.u.cpu_add.apic_id = apic_id;
> -       op.u.cpu_add.acpi_id = pr->acpi_id;
> -       op.u.cpu_add.pxm = pxm;
> -
> -       cpu_id = HYPERVISOR_platform_op(&op);
> -       if (cpu_id < 0)
> -               pr_err(PREFIX "Failed to hotadd CPU for acpi_id %d\n",
> -                               pr->acpi_id);
> -
> -       return cpu_id;
> -}
> -
> -static acpi_status xen_acpi_cpu_hotadd(struct acpi_processor *pr)
> -{
> -       if (!is_processor_present(pr->handle))
> -               return AE_ERROR;
> -
> -       pr->id = xen_hotadd_cpu(pr);
> -       if (invalid_logical_cpuid(pr->id))
> -               return AE_ERROR;
> -
> -       /*
> -        * Sync with Xen hypervisor, providing new /sys/.../xen_cpuX
> -        * interface after cpu hotadded.
> -        */
> -       xen_pcpu_hotplug_sync();
> -
> -       return AE_OK;
> -}
> -
> -static int acpi_processor_device_remove(struct acpi_device *device)
> -{
> -       pr_debug(PREFIX "Xen does not support CPU hotremove\n");
> -
> -       return -ENOSYS;
> -}
> -
> -static void acpi_processor_hotplug_notify(acpi_handle handle,
> -                                         u32 event, void *data)
> -{
> -       struct acpi_processor *pr;
> -       struct acpi_device *device = NULL;
> -       u32 ost_code = ACPI_OST_SC_NON_SPECIFIC_FAILURE; /* default */
> -       int result;
> -
> -       acpi_scan_lock_acquire();
> -
> -       switch (event) {
> -       case ACPI_NOTIFY_BUS_CHECK:
> -       case ACPI_NOTIFY_DEVICE_CHECK:
> -               ACPI_DEBUG_PRINT((ACPI_DB_INFO,
> -                       "Processor driver received %s event\n",
> -                       (event == ACPI_NOTIFY_BUS_CHECK) ?
> -                       "ACPI_NOTIFY_BUS_CHECK" : "ACPI_NOTIFY_DEVICE_CHECK"));
> -
> -               if (!is_processor_present(handle))
> -                       break;
> -
> -               acpi_bus_get_device(handle, &device);
> -               if (acpi_device_enumerated(device))
> -                       break;
> -
> -               result = acpi_bus_scan(handle);
> -               if (result) {
> -                       pr_err(PREFIX "Unable to add the device\n");
> -                       break;
> -               }
> -               device = NULL;
> -               acpi_bus_get_device(handle, &device);
> -               if (!acpi_device_enumerated(device)) {
> -                       pr_err(PREFIX "Missing device object\n");
> -                       break;
> -               }
> -               ost_code = ACPI_OST_SC_SUCCESS;
> -               break;
> -
> -       case ACPI_NOTIFY_EJECT_REQUEST:
> -               ACPI_DEBUG_PRINT((ACPI_DB_INFO,
> -                                 "received ACPI_NOTIFY_EJECT_REQUEST\n"));
> -
> -               if (acpi_bus_get_device(handle, &device)) {
> -                       pr_err(PREFIX "Device don't exist, dropping EJECT\n");
> -                       break;
> -               }
> -               pr = acpi_driver_data(device);
> -               if (!pr) {
> -                       pr_err(PREFIX "Driver data is NULL, dropping EJECT\n");
> -                       break;
> -               }
> -
> -               /*
> -                * TBD: implement acpi_processor_device_remove if Xen support
> -                * CPU hotremove in the future.
> -                */
> -               acpi_processor_device_remove(device);
> -               break;
> -
> -       default:
> -               ACPI_DEBUG_PRINT((ACPI_DB_INFO,
> -                                 "Unsupported event [0x%x]\n", event));
> -
> -               /* non-hotplug event; possibly handled by other handler */
> -               goto out;
> -       }
> -
> -       (void) acpi_evaluate_ost(handle, event, ost_code, NULL);
> -
> -out:
> -       acpi_scan_lock_release();
> -}
> -
> -static acpi_status is_processor_device(acpi_handle handle)
> -{
> -       struct acpi_device_info *info;
> -       char *hid;
> -       acpi_status status;
> -
> -       status = acpi_get_object_info(handle, &info);
> -       if (ACPI_FAILURE(status))
> -               return status;
> -
> -       if (info->type == ACPI_TYPE_PROCESSOR) {
> -               kfree(info);
> -               return AE_OK;   /* found a processor object */
> -       }
> -
> -       if (!(info->valid & ACPI_VALID_HID)) {
> -               kfree(info);
> -               return AE_ERROR;
> -       }
> -
> -       hid = info->hardware_id.string;
> -       if ((hid == NULL) || strcmp(hid, ACPI_PROCESSOR_DEVICE_HID)) {
> -               kfree(info);
> -               return AE_ERROR;
> -       }
> -
> -       kfree(info);
> -       return AE_OK;   /* found a processor device object */
> -}
> -
> -static acpi_status
> -processor_walk_namespace_cb(acpi_handle handle,
> -                           u32 lvl, void *context, void **rv)
> -{
> -       acpi_status status;
> -       int *action = context;
> -
> -       status = is_processor_device(handle);
> -       if (ACPI_FAILURE(status))
> -               return AE_OK;   /* not a processor; continue to walk */
> -
> -       switch (*action) {
> -       case INSTALL_NOTIFY_HANDLER:
> -               acpi_install_notify_handler(handle,
> -                                           ACPI_SYSTEM_NOTIFY,
> -                                           acpi_processor_hotplug_notify,
> -                                           NULL);
> -               break;
> -       case UNINSTALL_NOTIFY_HANDLER:
> -               acpi_remove_notify_handler(handle,
> -                                          ACPI_SYSTEM_NOTIFY,
> -                                          acpi_processor_hotplug_notify);
> -               break;
> -       default:
> -               break;
> -       }
> -
> -       /* found a processor; skip walking underneath */
> -       return AE_CTRL_DEPTH;
> -}
> -
> -static
> -void acpi_processor_install_hotplug_notify(void)
> -{
> -       int action = INSTALL_NOTIFY_HANDLER;
> -       acpi_walk_namespace(ACPI_TYPE_ANY,
> -                           ACPI_ROOT_OBJECT,
> -                           ACPI_UINT32_MAX,
> -                           processor_walk_namespace_cb, NULL, &action, NULL);
> -}
> -
> -static
> -void acpi_processor_uninstall_hotplug_notify(void)
> -{
> -       int action = UNINSTALL_NOTIFY_HANDLER;
> -       acpi_walk_namespace(ACPI_TYPE_ANY,
> -                           ACPI_ROOT_OBJECT,
> -                           ACPI_UINT32_MAX,
> -                           processor_walk_namespace_cb, NULL, &action, NULL);
> -}
> -
> -static const struct acpi_device_id processor_device_ids[] = {
> -       {ACPI_PROCESSOR_OBJECT_HID, 0},
> -       {ACPI_PROCESSOR_DEVICE_HID, 0},
> -       {"", 0},
> -};
> -MODULE_DEVICE_TABLE(acpi, processor_device_ids);
> -
> -static struct acpi_driver xen_acpi_processor_driver = {
> -       .name = "processor",
> -       .class = ACPI_PROCESSOR_CLASS,
> -       .ids = processor_device_ids,
> -       .ops = {
> -               .add = xen_acpi_processor_add,
> -               .remove = xen_acpi_processor_remove,
> -               },
> -};
> -
> -static int __init xen_acpi_processor_init(void)
> -{
> -       int result = 0;
> -
> -       if (!xen_initial_domain())
> -               return -ENODEV;
> -
> -       /* unregister the stub which only used to reserve driver space */
> -       xen_stub_processor_exit();
> -
> -       result = acpi_bus_register_driver(&xen_acpi_processor_driver);
> -       if (result < 0) {
> -               xen_stub_processor_init();
> -               return result;
> -       }
> -
> -       acpi_processor_install_hotplug_notify();
> -       return 0;
> -}
> -
> -static void __exit xen_acpi_processor_exit(void)
> -{
> -       if (!xen_initial_domain())
> -               return;
> -
> -       acpi_processor_uninstall_hotplug_notify();
> -
> -       acpi_bus_unregister_driver(&xen_acpi_processor_driver);
> -
> -       /*
> -        * stub reserve space again to prevent any chance of native
> -        * driver loading.
> -        */
> -       xen_stub_processor_init();
> -       return;
> -}
> -
> -module_init(xen_acpi_processor_init);
> -module_exit(xen_acpi_processor_exit);
> -ACPI_MODULE_NAME("xen-acpi-cpuhotplug");
> -MODULE_AUTHOR("Liu Jinsong <jinsong.liu@intel.com>");
> -MODULE_DESCRIPTION("Xen Hotplug CPU Driver");
> -MODULE_LICENSE("GPL");
> diff --git a/drivers/xen/xen-acpi-memhotplug.c b/drivers/xen/xen-acpi-memhotplug.c
> deleted file mode 100644
> index f914b72557ef..000000000000
> --- a/drivers/xen/xen-acpi-memhotplug.c
> +++ /dev/null
> @@ -1,475 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0-or-later
> -/*
> - * Copyright (C) 2012 Intel Corporation
> - *    Author: Liu Jinsong <jinsong.liu@intel.com>
> - *    Author: Jiang Yunhong <yunhong.jiang@intel.com>
> - */
> -
> -#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> -
> -#include <linux/kernel.h>
> -#include <linux/module.h>
> -#include <linux/init.h>
> -#include <linux/types.h>
> -#include <linux/acpi.h>
> -#include <xen/acpi.h>
> -#include <xen/interface/platform.h>
> -#include <asm/xen/hypercall.h>
> -
> -#define PREFIX "ACPI:xen_memory_hotplug:"
> -
> -struct acpi_memory_info {
> -       struct list_head list;
> -       u64 start_addr;         /* Memory Range start physical addr */
> -       u64 length;             /* Memory Range length */
> -       unsigned short caching; /* memory cache attribute */
> -       unsigned short write_protect;   /* memory read/write attribute */
> -                               /* copied from buffer getting from _CRS */
> -       unsigned int enabled:1;
> -};
> -
> -struct acpi_memory_device {
> -       struct acpi_device *device;
> -       struct list_head res_list;
> -};
> -
> -static bool acpi_hotmem_initialized __read_mostly;
> -
> -static int xen_hotadd_memory(int pxm, struct acpi_memory_info *info)
> -{
> -       int rc;
> -       struct xen_platform_op op;
> -
> -       op.cmd = XENPF_mem_hotadd;
> -       op.u.mem_add.spfn = info->start_addr >> PAGE_SHIFT;
> -       op.u.mem_add.epfn = (info->start_addr + info->length) >> PAGE_SHIFT;
> -       op.u.mem_add.pxm = pxm;
> -
> -       rc = HYPERVISOR_dom0_op(&op);
> -       if (rc)
> -               pr_err(PREFIX "Xen Hotplug Memory Add failed on "
> -                       "0x%lx -> 0x%lx, _PXM: %d, error: %d\n",
> -                       (unsigned long)info->start_addr,
> -                       (unsigned long)(info->start_addr + info->length),
> -                       pxm, rc);
> -
> -       return rc;
> -}
> -
> -static int xen_acpi_memory_enable_device(struct acpi_memory_device *mem_device)
> -{
> -       int pxm, result;
> -       int num_enabled = 0;
> -       struct acpi_memory_info *info;
> -
> -       if (!mem_device)
> -               return -EINVAL;
> -
> -       pxm = xen_acpi_get_pxm(mem_device->device->handle);
> -       if (pxm < 0)
> -               return pxm;
> -
> -       list_for_each_entry(info, &mem_device->res_list, list) {
> -               if (info->enabled) { /* just sanity check...*/
> -                       num_enabled++;
> -                       continue;
> -               }
> -
> -               if (!info->length)
> -                       continue;
> -
> -               result = xen_hotadd_memory(pxm, info);
> -               if (result)
> -                       continue;
> -               info->enabled = 1;
> -               num_enabled++;
> -       }
> -
> -       if (!num_enabled)
> -               return -ENODEV;
> -
> -       return 0;
> -}
> -
> -static acpi_status
> -acpi_memory_get_resource(struct acpi_resource *resource, void *context)
> -{
> -       struct acpi_memory_device *mem_device = context;
> -       struct acpi_resource_address64 address64;
> -       struct acpi_memory_info *info, *new;
> -       acpi_status status;
> -
> -       status = acpi_resource_to_address64(resource, &address64);
> -       if (ACPI_FAILURE(status) ||
> -           (address64.resource_type != ACPI_MEMORY_RANGE))
> -               return AE_OK;
> -
> -       list_for_each_entry(info, &mem_device->res_list, list) {
> -               if ((info->caching == address64.info.mem.caching) &&
> -                   (info->write_protect == address64.info.mem.write_protect) &&
> -                   (info->start_addr + info->length == address64.address.minimum)) {
> -                       info->length += address64.address.address_length;
> -                       return AE_OK;
> -               }
> -       }
> -
> -       new = kzalloc(sizeof(struct acpi_memory_info), GFP_KERNEL);
> -       if (!new)
> -               return AE_ERROR;
> -
> -       INIT_LIST_HEAD(&new->list);
> -       new->caching = address64.info.mem.caching;
> -       new->write_protect = address64.info.mem.write_protect;
> -       new->start_addr = address64.address.minimum;
> -       new->length = address64.address.address_length;
> -       list_add_tail(&new->list, &mem_device->res_list);
> -
> -       return AE_OK;
> -}
> -
> -static int
> -acpi_memory_get_device_resources(struct acpi_memory_device *mem_device)
> -{
> -       acpi_status status;
> -       struct acpi_memory_info *info, *n;
> -
> -       if (!list_empty(&mem_device->res_list))
> -               return 0;
> -
> -       status = acpi_walk_resources(mem_device->device->handle,
> -               METHOD_NAME__CRS, acpi_memory_get_resource, mem_device);
> -
> -       if (ACPI_FAILURE(status)) {
> -               list_for_each_entry_safe(info, n, &mem_device->res_list, list)
> -                       kfree(info);
> -               INIT_LIST_HEAD(&mem_device->res_list);
> -               return -EINVAL;
> -       }
> -
> -       return 0;
> -}
> -
> -static int acpi_memory_get_device(acpi_handle handle,
> -                                 struct acpi_memory_device **mem_device)
> -{
> -       struct acpi_device *device = NULL;
> -       int result = 0;
> -
> -       acpi_scan_lock_acquire();
> -
> -       acpi_bus_get_device(handle, &device);
> -       if (acpi_device_enumerated(device))
> -               goto end;
> -
> -       /*
> -        * Now add the notified device.  This creates the acpi_device
> -        * and invokes .add function
> -        */
> -       result = acpi_bus_scan(handle);
> -       if (result) {
> -               pr_warn(PREFIX "ACPI namespace scan failed\n");
> -               result = -EINVAL;
> -               goto out;
> -       }
> -       device = NULL;
> -       acpi_bus_get_device(handle, &device);
> -       if (!acpi_device_enumerated(device)) {
> -               pr_warn(PREFIX "Missing device object\n");
> -               result = -EINVAL;
> -               goto out;
> -       }
> -
> -end:
> -       *mem_device = acpi_driver_data(device);
> -       if (!(*mem_device)) {
> -               pr_err(PREFIX "driver data not found\n");
> -               result = -ENODEV;
> -               goto out;
> -       }
> -
> -out:
> -       acpi_scan_lock_release();
> -       return result;
> -}
> -
> -static int acpi_memory_check_device(struct acpi_memory_device *mem_device)
> -{
> -       unsigned long long current_status;
> -
> -       /* Get device present/absent information from the _STA */
> -       if (ACPI_FAILURE(acpi_evaluate_integer(mem_device->device->handle,
> -                               "_STA", NULL, &current_status)))
> -               return -ENODEV;
> -       /*
> -        * Check for device status. Device should be
> -        * present/enabled/functioning.
> -        */
> -       if (!((current_status & ACPI_STA_DEVICE_PRESENT)
> -             && (current_status & ACPI_STA_DEVICE_ENABLED)
> -             && (current_status & ACPI_STA_DEVICE_FUNCTIONING)))
> -               return -ENODEV;
> -
> -       return 0;
> -}
> -
> -static int acpi_memory_disable_device(struct acpi_memory_device *mem_device)
> -{
> -       pr_debug(PREFIX "Xen does not support memory hotremove\n");
> -
> -       return -ENOSYS;
> -}
> -
> -static void acpi_memory_device_notify(acpi_handle handle, u32 event, void *data)
> -{
> -       struct acpi_memory_device *mem_device;
> -       struct acpi_device *device;
> -       u32 ost_code = ACPI_OST_SC_NON_SPECIFIC_FAILURE; /* default */
> -
> -       switch (event) {
> -       case ACPI_NOTIFY_BUS_CHECK:
> -               ACPI_DEBUG_PRINT((ACPI_DB_INFO,
> -                       "\nReceived BUS CHECK notification for device\n"));
> -               fallthrough;
> -       case ACPI_NOTIFY_DEVICE_CHECK:
> -               if (event == ACPI_NOTIFY_DEVICE_CHECK)
> -                       ACPI_DEBUG_PRINT((ACPI_DB_INFO,
> -                       "\nReceived DEVICE CHECK notification for device\n"));
> -
> -               if (acpi_memory_get_device(handle, &mem_device)) {
> -                       pr_err(PREFIX "Cannot find driver data\n");
> -                       break;
> -               }
> -
> -               ost_code = ACPI_OST_SC_SUCCESS;
> -               break;
> -
> -       case ACPI_NOTIFY_EJECT_REQUEST:
> -               ACPI_DEBUG_PRINT((ACPI_DB_INFO,
> -                       "\nReceived EJECT REQUEST notification for device\n"));
> -
> -               acpi_scan_lock_acquire();
> -               if (acpi_bus_get_device(handle, &device)) {
> -                       acpi_scan_lock_release();
> -                       pr_err(PREFIX "Device doesn't exist\n");
> -                       break;
> -               }
> -               mem_device = acpi_driver_data(device);
> -               if (!mem_device) {
> -                       acpi_scan_lock_release();
> -                       pr_err(PREFIX "Driver Data is NULL\n");
> -                       break;
> -               }
> -
> -               /*
> -                * TBD: implement acpi_memory_disable_device and invoke
> -                * acpi_bus_remove if Xen support hotremove in the future
> -                */
> -               acpi_memory_disable_device(mem_device);
> -               acpi_scan_lock_release();
> -               break;
> -
> -       default:
> -               ACPI_DEBUG_PRINT((ACPI_DB_INFO,
> -                                 "Unsupported event [0x%x]\n", event));
> -               /* non-hotplug event; possibly handled by other handler */
> -               return;
> -       }
> -
> -       (void) acpi_evaluate_ost(handle, event, ost_code, NULL);
> -       return;
> -}
> -
> -static int xen_acpi_memory_device_add(struct acpi_device *device)
> -{
> -       int result;
> -       struct acpi_memory_device *mem_device = NULL;
> -
> -
> -       if (!device)
> -               return -EINVAL;
> -
> -       mem_device = kzalloc(sizeof(struct acpi_memory_device), GFP_KERNEL);
> -       if (!mem_device)
> -               return -ENOMEM;
> -
> -       INIT_LIST_HEAD(&mem_device->res_list);
> -       mem_device->device = device;
> -       sprintf(acpi_device_name(device), "%s", ACPI_MEMORY_DEVICE_NAME);
> -       sprintf(acpi_device_class(device), "%s", ACPI_MEMORY_DEVICE_CLASS);
> -       device->driver_data = mem_device;
> -
> -       /* Get the range from the _CRS */
> -       result = acpi_memory_get_device_resources(mem_device);
> -       if (result) {
> -               kfree(mem_device);
> -               return result;
> -       }
> -
> -       /*
> -        * For booting existed memory devices, early boot code has recognized
> -        * memory area by EFI/E820. If DSDT shows these memory devices on boot,
> -        * hotplug is not necessary for them.
> -        * For hot-added memory devices during runtime, it need hypercall to
> -        * Xen hypervisor to add memory.
> -        */
> -       if (!acpi_hotmem_initialized)
> -               return 0;
> -
> -       if (!acpi_memory_check_device(mem_device))
> -               result = xen_acpi_memory_enable_device(mem_device);
> -
> -       return result;
> -}
> -
> -static int xen_acpi_memory_device_remove(struct acpi_device *device)
> -{
> -       struct acpi_memory_device *mem_device = NULL;
> -
> -       if (!device || !acpi_driver_data(device))
> -               return -EINVAL;
> -
> -       mem_device = acpi_driver_data(device);
> -       kfree(mem_device);
> -
> -       return 0;
> -}
> -
> -/*
> - * Helper function to check for memory device
> - */
> -static acpi_status is_memory_device(acpi_handle handle)
> -{
> -       char *hardware_id;
> -       acpi_status status;
> -       struct acpi_device_info *info;
> -
> -       status = acpi_get_object_info(handle, &info);
> -       if (ACPI_FAILURE(status))
> -               return status;
> -
> -       if (!(info->valid & ACPI_VALID_HID)) {
> -               kfree(info);
> -               return AE_ERROR;
> -       }
> -
> -       hardware_id = info->hardware_id.string;
> -       if ((hardware_id == NULL) ||
> -           (strcmp(hardware_id, ACPI_MEMORY_DEVICE_HID)))
> -               status = AE_ERROR;
> -
> -       kfree(info);
> -       return status;
> -}
> -
> -static acpi_status
> -acpi_memory_register_notify_handler(acpi_handle handle,
> -                                   u32 level, void *ctxt, void **retv)
> -{
> -       acpi_status status;
> -
> -       status = is_memory_device(handle);
> -       if (ACPI_FAILURE(status))
> -               return AE_OK;   /* continue */
> -
> -       status = acpi_install_notify_handler(handle, ACPI_SYSTEM_NOTIFY,
> -                                            acpi_memory_device_notify, NULL);
> -       /* continue */
> -       return AE_OK;
> -}
> -
> -static acpi_status
> -acpi_memory_deregister_notify_handler(acpi_handle handle,
> -                                     u32 level, void *ctxt, void **retv)
> -{
> -       acpi_status status;
> -
> -       status = is_memory_device(handle);
> -       if (ACPI_FAILURE(status))
> -               return AE_OK;   /* continue */
> -
> -       status = acpi_remove_notify_handler(handle,
> -                                           ACPI_SYSTEM_NOTIFY,
> -                                           acpi_memory_device_notify);
> -
> -       return AE_OK;   /* continue */
> -}
> -
> -static const struct acpi_device_id memory_device_ids[] = {
> -       {ACPI_MEMORY_DEVICE_HID, 0},
> -       {"", 0},
> -};
> -MODULE_DEVICE_TABLE(acpi, memory_device_ids);
> -
> -static struct acpi_driver xen_acpi_memory_device_driver = {
> -       .name = "acpi_memhotplug",
> -       .class = ACPI_MEMORY_DEVICE_CLASS,
> -       .ids = memory_device_ids,
> -       .ops = {
> -               .add = xen_acpi_memory_device_add,
> -               .remove = xen_acpi_memory_device_remove,
> -               },
> -};
> -
> -static int __init xen_acpi_memory_device_init(void)
> -{
> -       int result;
> -       acpi_status status;
> -
> -       if (!xen_initial_domain())
> -               return -ENODEV;
> -
> -       /* unregister the stub which only used to reserve driver space */
> -       xen_stub_memory_device_exit();
> -
> -       result = acpi_bus_register_driver(&xen_acpi_memory_device_driver);
> -       if (result < 0) {
> -               xen_stub_memory_device_init();
> -               return -ENODEV;
> -       }
> -
> -       status = acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
> -                                    ACPI_UINT32_MAX,
> -                                    acpi_memory_register_notify_handler,
> -                                    NULL, NULL, NULL);
> -
> -       if (ACPI_FAILURE(status)) {
> -               pr_warn(PREFIX "walk_namespace failed\n");
> -               acpi_bus_unregister_driver(&xen_acpi_memory_device_driver);
> -               xen_stub_memory_device_init();
> -               return -ENODEV;
> -       }
> -
> -       acpi_hotmem_initialized = true;
> -       return 0;
> -}
> -
> -static void __exit xen_acpi_memory_device_exit(void)
> -{
> -       acpi_status status;
> -
> -       if (!xen_initial_domain())
> -               return;
> -
> -       status = acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
> -                                    ACPI_UINT32_MAX,
> -                                    acpi_memory_deregister_notify_handler,
> -                                    NULL, NULL, NULL);
> -       if (ACPI_FAILURE(status))
> -               pr_warn(PREFIX "walk_namespace failed\n");
> -
> -       acpi_bus_unregister_driver(&xen_acpi_memory_device_driver);
> -
> -       /*
> -        * stub reserve space again to prevent any chance of native
> -        * driver loading.
> -        */
> -       xen_stub_memory_device_init();
> -       return;
> -}
> -
> -module_init(xen_acpi_memory_device_init);
> -module_exit(xen_acpi_memory_device_exit);
> -ACPI_MODULE_NAME("xen-acpi-memhotplug");
> -MODULE_AUTHOR("Liu Jinsong <jinsong.liu@intel.com>");
> -MODULE_DESCRIPTION("Xen Hotplug Mem Driver");
> -MODULE_LICENSE("GPL");
> diff --git a/drivers/xen/xen-stub.c b/drivers/xen/xen-stub.c
> deleted file mode 100644
> index 3be4e74660b5..000000000000
> --- a/drivers/xen/xen-stub.c
> +++ /dev/null
> @@ -1,90 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0-or-later
> -/*
> - * xen-stub.c - stub drivers to reserve space for Xen
> - *
> - * Copyright (C) 2012 Intel Corporation
> - *    Author: Liu Jinsong <jinsong.liu@intel.com>
> - *    Author: Jiang Yunhong <yunhong.jiang@intel.com>
> - *
> - * Copyright (C) 2012 Oracle Inc
> - *    Author: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> - */
> -
> -#include <linux/kernel.h>
> -#include <linux/init.h>
> -#include <linux/export.h>
> -#include <linux/types.h>
> -#include <linux/acpi.h>
> -#include <xen/acpi.h>
> -
> -#ifdef CONFIG_ACPI
> -
> -/*--------------------------------------------
> -       stub driver for Xen memory hotplug
> ---------------------------------------------*/
> -
> -static const struct acpi_device_id memory_device_ids[] = {
> -       {ACPI_MEMORY_DEVICE_HID, 0},
> -       {"", 0},
> -};
> -
> -static struct acpi_driver xen_stub_memory_device_driver = {
> -       /* same name as native memory driver to block native loaded */
> -       .name = "acpi_memhotplug",
> -       .class = ACPI_MEMORY_DEVICE_CLASS,
> -       .ids = memory_device_ids,
> -};
> -
> -int xen_stub_memory_device_init(void)
> -{
> -       if (!xen_initial_domain())
> -               return -ENODEV;
> -
> -       /* just reserve space for Xen, block native driver loaded */
> -       return acpi_bus_register_driver(&xen_stub_memory_device_driver);
> -}
> -EXPORT_SYMBOL_GPL(xen_stub_memory_device_init);
> -subsys_initcall(xen_stub_memory_device_init);
> -
> -void xen_stub_memory_device_exit(void)
> -{
> -       acpi_bus_unregister_driver(&xen_stub_memory_device_driver);
> -}
> -EXPORT_SYMBOL_GPL(xen_stub_memory_device_exit);
> -
> -
> -/*--------------------------------------------
> -       stub driver for Xen cpu hotplug
> ---------------------------------------------*/
> -
> -static const struct acpi_device_id processor_device_ids[] = {
> -       {ACPI_PROCESSOR_OBJECT_HID, 0},
> -       {ACPI_PROCESSOR_DEVICE_HID, 0},
> -       {"", 0},
> -};
> -
> -static struct acpi_driver xen_stub_processor_driver = {
> -       /* same name as native processor driver to block native loaded */
> -       .name = "processor",
> -       .class = ACPI_PROCESSOR_CLASS,
> -       .ids = processor_device_ids,
> -};
> -
> -int xen_stub_processor_init(void)
> -{
> -       if (!xen_initial_domain())
> -               return -ENODEV;
> -
> -       /* just reserve space for Xen, block native driver loaded */
> -       return acpi_bus_register_driver(&xen_stub_processor_driver);
> -}
> -EXPORT_SYMBOL_GPL(xen_stub_processor_init);
> -subsys_initcall(xen_stub_processor_init);
> -
> -void xen_stub_processor_exit(void)
> -{
> -       acpi_bus_unregister_driver(&xen_stub_processor_driver);
> -}
> -EXPORT_SYMBOL_GPL(xen_stub_processor_exit);
> -
> -#endif
> diff --git a/include/xen/acpi.h b/include/xen/acpi.h
> index 4ddd7dc4a61e..b1e11863144d 100644
> --- a/include/xen/acpi.h
> +++ b/include/xen/acpi.h
> @@ -40,41 +40,6 @@
>  #include <xen/xen.h>
>  #include <linux/acpi.h>
>
> -#define ACPI_MEMORY_DEVICE_CLASS        "memory"
> -#define ACPI_MEMORY_DEVICE_HID          "PNP0C80"
> -#define ACPI_MEMORY_DEVICE_NAME         "Hotplug Mem Device"
> -
> -int xen_stub_memory_device_init(void);
> -void xen_stub_memory_device_exit(void);
> -
> -#define ACPI_PROCESSOR_CLASS            "processor"
> -#define ACPI_PROCESSOR_DEVICE_HID       "ACPI0007"
> -#define ACPI_PROCESSOR_DEVICE_NAME      "Processor"
> -
> -int xen_stub_processor_init(void);
> -void xen_stub_processor_exit(void);
> -
> -void xen_pcpu_hotplug_sync(void);
> -int xen_pcpu_id(uint32_t acpi_id);
> -
> -static inline int xen_acpi_get_pxm(acpi_handle h)
> -{
> -       unsigned long long pxm;
> -       acpi_status status;
> -       acpi_handle handle;
> -       acpi_handle phandle = h;
> -
> -       do {
> -               handle = phandle;
> -               status = acpi_evaluate_integer(handle, "_PXM", NULL, &pxm);
> -               if (ACPI_SUCCESS(status))
> -                       return pxm;
> -               status = acpi_get_parent(handle, &phandle);
> -       } while (ACPI_SUCCESS(status));
> -
> -       return -ENXIO;
> -}
> -
>  int xen_acpi_notify_hypervisor_sleep(u8 sleep_state,
>                                      u32 pm1a_cnt, u32 pm1b_cnd);
>  int xen_acpi_notify_hypervisor_extended_sleep(u8 sleep_state,
> --
> 1.8.3.1
>


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:59:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:59:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110063.210066 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNJR-0005gC-KP; Tue, 13 Apr 2021 17:58:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110063.210066; Tue, 13 Apr 2021 17:58:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNJR-0005g5-Gt; Tue, 13 Apr 2021 17:58:57 +0000
Received: by outflank-mailman (input) for mailman id 110063;
 Tue, 13 Apr 2021 17:58:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lWNJQ-0005g0-B5
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:58:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWNJO-0000hl-Tv; Tue, 13 Apr 2021 17:58:54 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWNJO-0001sR-Lx; Tue, 13 Apr 2021 17:58: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=uraZtCIEPhYLj2MqBtUg/XPqVnfYvBnV2LZ70VN7og0=; b=bR2Wa00gkIMH5nCsyHF1VEXsOg
	Cb42HwsIi9DGgsdgfHmlYRCxjpDk+lw1lqnGo3begnoGHAU5CodekxmY1lfkdAH4lvnGDILQ10lG3
	rWic8nu9+TpwWytNBfJxa671cAZzeH4cgPrb8G7DMpIyC4eOrMfzKtozjmjy0nsTC1kU=;
Subject: Re: [PATCH v2] xen/iommu: smmu: Silence clang in
 arm_smmu_device_dt_probe()
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Julien Grall <jgrall@amazon.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210402155106.15486-1-julien@xen.org>
 <alpine.DEB.2.21.2104061502010.31460@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <022a088a-b4ed-2d37-97bf-edd580b4389f@xen.org>
Date: Tue, 13 Apr 2021 18:58:53 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104061502010.31460@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 06/04/2021 23:02, Stefano Stabellini wrote:
> On Fri, 2 Apr 2021, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Clang 11 will throw the following error:
>>
>> smmu.c:2284:18: error: cast to smaller integer type 'enum arm_smmu_arch_version' from 'const void *' [-Werror,-Wvoid-pointer-to-enum-cast]
>>          smmu->version = (enum arm_smmu_arch_version)of_id->data;
>>                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>
>> The error can be prevented by initially casting to (uintptr_t) and then
>> enum.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Thanks! I have committed the patch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:59:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:59:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110064.210078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNJV-0005i3-Sb; Tue, 13 Apr 2021 17:59:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110064.210078; Tue, 13 Apr 2021 17: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 1lWNJV-0005ho-Of; Tue, 13 Apr 2021 17:59:01 +0000
Received: by outflank-mailman (input) for mailman id 110064;
 Tue, 13 Apr 2021 17:59:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1MWi=JK=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWNJU-0005hQ-7Y
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:59:00 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 62782047-4503-41e2-b0a3-e5d7cfc8fc58;
 Tue, 13 Apr 2021 17:58:59 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 5C413613B8;
 Tue, 13 Apr 2021 17:58: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: 62782047-4503-41e2-b0a3-e5d7cfc8fc58
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618336738;
	bh=ImhZWk7x78CTIS8U8sdIJlAltMyeY1Uabc6bAXjkZYU=;
	h=Date:From:To:cc:Subject:From;
	b=XE30a/gfovvwK/PyEOpzlyzYB3lqNXDqBat3ZsbV7JS4jurlBx4oFunxUln88L8/K
	 OcVSbDBWxAYqW8Am1dsKnBZ9JVlYI9udplss1/pZtI6zz2CSC9swedSUmrfmUNcb1i
	 woSbUnz4m7Crgv8CXmSQK0jGdnHkV0sX51EiETWfrNi+ixhZjZZF0q1fQ+FwFw97Dq
	 V3gua79Edi0UAzd9hpUVanFJ/OLA6OadWI5LYHFau0C9cS14nQe3Iz7P9dEbNCvJ8X
	 tV1PfuFYsZ4QG2czNGE5J8OB72pNfNPYvnu8d+voufW4Y8ta+pccwoDGv8c/B1jH9/
	 t4g4U6bLYBR8A==
Date: Tue, 13 Apr 2021 10:58:57 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: xen-devel <xen-devel@lists.xenproject.org>
cc: sstabellini@kernel.org, julien@xen.org, Bertrand.Marquis@arm.com, 
    Volodymyr_Babchuk@epam.com, rahul.singh@arm.com, brian.woods@xilinx.com
Subject: [PATCH RESEND v3 0/3] Generic SMMU Bindings
Message-ID: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Hi all,

This series introduces support for the generic SMMU bindings to
xen/drivers/passthrough/arm/smmu.c.

This is the same as the previous v3 version forward ported on top of
staging, plus Rahul's "xen/arm: smmuv1: Revert associating the group
pointer with the S2CR" patch
(https://marc.info/?l=xen-devel&m=161822284816587).

Cheers,

Stefano


Brian Woods (3):
      arm,smmu: switch to using iommu_fwspec functions
      arm,smmu: restructure code in preparation to new bindings support
      arm,smmu: add support for generic DT bindings. Implement add_device and dt_xlate.

 xen/drivers/passthrough/arm/smmu.c    | 145 ++++++++++++++++++++++++++--------
 xen/drivers/passthrough/device_tree.c |  24 ++----
 2 files changed, 118 insertions(+), 51 deletions(-)


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:59:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:59:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110065.210090 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNJe-0005nf-4o; Tue, 13 Apr 2021 17:59:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110065.210090; Tue, 13 Apr 2021 17: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 1lWNJe-0005nW-1O; Tue, 13 Apr 2021 17:59:10 +0000
Received: by outflank-mailman (input) for mailman id 110065;
 Tue, 13 Apr 2021 17:59:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1MWi=JK=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWNJc-0005mq-Nd
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:59:08 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id de480c82-f331-4900-b3f0-833cb310987d;
 Tue, 13 Apr 2021 17:59:08 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 190F16121E;
 Tue, 13 Apr 2021 17:59: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: de480c82-f331-4900-b3f0-833cb310987d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618336747;
	bh=fb7TEhjeFBPmRBGB+oiw0ddGl1l0kr2WnMWhDttG8J4=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=C0fhp2rd2+ve8G4cefVJHma9Kgsfz+xMVTXe3+zRLtUG3QSLOytK9Wi0ssdmewyhk
	 AnJOoUDx4VroWtRAGkvglQr4ZLp63M48rWNVmYR1eYTXRbmv5skJS0sPstA33cokNS
	 A2rnf2proLsu0CikX64mMoP1wjfpwQXpCIBKTSe/cS41UQVM4V9jsEJnl808XWn+nq
	 KsYqeomJyEsNwM3sEuhDIRfNY3GC+SGg9CeU2IbVLim2gf3DFWoSt2XvQXjjWVrNFX
	 shzNMxA183k/a4BT2rtY6/3fJA/blbFN/UEIanK+P4uxg7QwKCuiQ6xPdoastsqzPh
	 I7+80opVVV2Rg==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	julien@xen.org,
	Bertrand.Marquis@arm.com,
	Volodymyr_Babchuk@epam.com,
	rahul.singh@arm.com,
	brian.woods@xilinx.com,
	Stefano Stabellini <stefano.stabellini@xilinx.com>
Subject: [PATCH RESEND v3 1/3] arm,smmu: switch to using iommu_fwspec functions
Date: Tue, 13 Apr 2021 10:59:03 -0700
Message-Id: <20210413175905.15123-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>
References: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>

From: Brian Woods <brian.woods@xilinx.com>

Modify the smmu driver so that it uses the iommu_fwspec helper
functions.  This means both ARM IOMMU drivers will both use the
iommu_fwspec helper functions, making enabling generic device tree
bindings in the SMMU driver much cleaner.

Signed-off-by: Brian Woods <brian.woods@xilinx.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Reviewed-by: Rahul Singh <rahul.singh@arm.com>
---
 xen/drivers/passthrough/arm/smmu.c    | 75 ++++++++++++++++++---------
 xen/drivers/passthrough/device_tree.c |  7 +++
 2 files changed, 58 insertions(+), 24 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index 3456daa03f..ac75e23268 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -32,6 +32,9 @@
  *	- 4k and 64k pages, with contiguous pte hints.
  *	- Up to 48-bit addressing (dependent on VA_BITS)
  *	- Context fault reporting
+ *
+ * Changes compared to Linux driver:
+ *	- support for fwspec
  */
 
 
@@ -49,6 +52,7 @@
 #include <asm/atomic.h>
 #include <asm/device.h>
 #include <asm/io.h>
+#include <asm/iommu_fwspec.h>
 #include <asm/platform.h>
 
 /* Xen: The below defines are redefined within the file. Undef it */
@@ -615,13 +619,11 @@ struct arm_smmu_smr {
 
 struct arm_smmu_master_cfg {
 	struct arm_smmu_device		*smmu;
-	int				num_streamids;
-	u16				streamids[MAX_MASTER_STREAMIDS];
 	s16				smendx[MAX_MASTER_STREAMIDS];
 };
 #define INVALID_SMENDX			-1
-#define for_each_cfg_sme(cfg, i, idx) \
-	for (i = 0; idx = cfg->smendx[i], i < cfg->num_streamids; ++i)
+#define for_each_cfg_sme(cfg, i, idx, num) \
+	for (i = 0; idx = cfg->smendx[i], i < num; ++i)
 
 struct arm_smmu_master {
 	struct device_node		*of_node;
@@ -711,6 +713,14 @@ static struct arm_smmu_option_prop arm_smmu_options[] = {
 	{ 0, NULL},
 };
 
+static inline struct iommu_fwspec *
+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);
+}
+
 static void parse_driver_options(struct arm_smmu_device *smmu)
 {
 	int i = 0;
@@ -804,8 +814,9 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
 				struct device *dev,
 				struct of_phandle_args *masterspec)
 {
-	int i;
+	int i, ret = 0;
 	struct arm_smmu_master *master;
+	struct iommu_fwspec *fwspec;
 
 	master = find_smmu_master(smmu, masterspec->np);
 	if (master) {
@@ -815,24 +826,29 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
 		return -EBUSY;
 	}
 
-	if (masterspec->args_count > MAX_MASTER_STREAMIDS) {
-		dev_err(dev,
-			"reached maximum number (%d) of stream IDs for master device %s\n",
-			MAX_MASTER_STREAMIDS, masterspec->np->name);
-		return -ENOSPC;
-	}
-
 	master = devm_kzalloc(dev, sizeof(*master), GFP_KERNEL);
 	if (!master)
 		return -ENOMEM;
+	master->of_node = masterspec->np;
 
-	master->of_node			= masterspec->np;
-	master->cfg.num_streamids	= masterspec->args_count;
+	ret = iommu_fwspec_init(&master->of_node->dev, smmu->dev);
+	if (ret) {
+		kfree(master);
+		return ret;
+	}
+	fwspec = dev_iommu_fwspec_get(dev);
+
+	/* adding the ids here */
+	ret = iommu_fwspec_add_ids(&masterspec->np->dev,
+				   masterspec->args,
+				   masterspec->args_count);
+	if (ret)
+		return ret;
 
 	/* Xen: Let Xen know that the device is protected by an SMMU */
 	dt_device_set_protected(masterspec->np);
 
-	for (i = 0; i < master->cfg.num_streamids; ++i) {
+	for (i = 0; i < fwspec->num_ids; ++i) {
 		u16 streamid = masterspec->args[i];
 
 		if (!(smmu->features & ARM_SMMU_FEAT_STREAM_MATCH) &&
@@ -842,9 +858,9 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
 				masterspec->np->name, smmu->num_mapping_groups);
 			return -ERANGE;
 		}
-		master->cfg.streamids[i] = streamid;
 		master->cfg.smendx[i] = INVALID_SMENDX;
 	}
+
 	return insert_smmu_master(smmu, master);
 }
 
@@ -1498,22 +1514,23 @@ static int arm_smmu_master_alloc_smes(struct device *dev)
 	struct arm_smmu_device *smmu = cfg->smmu;
 	struct arm_smmu_smr *smrs = smmu->smrs;
 	int i, idx, ret;
+	struct iommu_fwspec *fwspec = arm_smmu_get_fwspec(cfg);
 
 	spin_lock(&smmu->stream_map_lock);
 	/* Figure out a viable stream map entry allocation */
-	for_each_cfg_sme(cfg, i, idx) {
+	for_each_cfg_sme(cfg, i, idx, fwspec->num_ids) {
 		if (idx != INVALID_SMENDX) {
 			ret = -EEXIST;
 			goto out_err;
 		}
 
-		ret = arm_smmu_find_sme(smmu, cfg->streamids[i], 0);
+		ret = arm_smmu_find_sme(smmu, fwspec->ids[i], 0);
 		if (ret < 0)
 			goto out_err;
 
 		idx = ret;
 		if (smrs && smmu->s2crs[idx].count == 0) {
-			smrs[idx].id = cfg->streamids[i];
+			smrs[idx].id = fwspec->ids[i];
 			smrs[idx].mask = 0; /* We don't currently share SMRs */
 			smrs[idx].valid = true;
 		}
@@ -1522,7 +1539,7 @@ static int arm_smmu_master_alloc_smes(struct device *dev)
 	}
 
 	/* It worked! Now, poke the actual hardware */
-	for_each_cfg_sme(cfg, i, idx) {
+	for_each_cfg_sme(cfg, i, idx, fwspec->num_ids) {
 		arm_smmu_write_sme(smmu, idx);
 	}
 
@@ -1542,9 +1559,10 @@ static void arm_smmu_master_free_smes(struct arm_smmu_master_cfg *cfg)
 {
     struct arm_smmu_device *smmu = cfg->smmu;
 	int i, idx;
+	struct iommu_fwspec *fwspec = arm_smmu_get_fwspec(cfg);
 
 	spin_lock(&smmu->stream_map_lock);
-	for_each_cfg_sme(cfg, i, idx) {
+	for_each_cfg_sme(cfg, i, idx, fwspec->num_ids) {
 		if (arm_smmu_free_sme(smmu, idx))
 			arm_smmu_write_sme(smmu, idx);
 		cfg->smendx[i] = INVALID_SMENDX;
@@ -1560,8 +1578,9 @@ static int arm_smmu_domain_add_master(struct arm_smmu_domain *smmu_domain,
 	enum arm_smmu_s2cr_type type = S2CR_TYPE_TRANS;
 	u8 cbndx = smmu_domain->cfg.cbndx;
 	int i, idx;
+	struct iommu_fwspec *fwspec = arm_smmu_get_fwspec(cfg);
 
-	for_each_cfg_sme(cfg, i, idx) {
+	for_each_cfg_sme(cfg, i, idx, fwspec->num_ids) {
 		if (type == s2cr[idx].type && cbndx == s2cr[idx].cbndx)
 			continue;
 
@@ -1960,6 +1979,7 @@ 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)
@@ -1967,19 +1987,26 @@ static int arm_smmu_add_device(struct device *dev)
 
 	if (dev_is_pci(dev)) {
 		struct pci_dev *pdev = to_pci_dev(dev);
+		struct iommu_fwspec *fwspec;
 
 		cfg = kzalloc(sizeof(*cfg), GFP_KERNEL);
 		if (!cfg) {
 			return -ENOMEM;
 		}
 
-		cfg->num_streamids = 1;
+		ret = iommu_fwspec_init(dev, smmu->dev);
+		if (ret) {
+			kfree(cfg);
+			return ret;
+		}
+		fwspec = dev_iommu_fwspec_get(dev);
+
 		/*
 		 * Assume Stream ID == Requester ID for now.
 		 * We need a way to describe the ID mappings in FDT.
 		 */
 		pci_for_each_dma_alias(pdev, __arm_smmu_get_pci_sid,
-				       &cfg->streamids[0]);
+				       &fwspec->ids[0]);
 		releasefn = __arm_smmu_release_pci_iommudata;
 		cfg->smmu = smmu;
 	} else {
diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 999b831d90..a51ae3c9c3 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -140,6 +140,13 @@ int iommu_add_dt_device(struct dt_device_node *np)
     if ( !ops )
         return -EINVAL;
 
+	/*
+	 * This is needed in case a device has both the iommus property and
+	 * also apperars in the mmu-masters list.
+	 */
+    if ( dt_device_is_protected(np) )
+        return 0;
+
     if ( dev_iommu_fwspec_get(dev) )
         return -EEXIST;
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:59:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:59:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110066.210102 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNJf-0005pj-FQ; Tue, 13 Apr 2021 17:59:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110066.210102; Tue, 13 Apr 2021 17: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 1lWNJf-0005pY-AJ; Tue, 13 Apr 2021 17:59:11 +0000
Received: by outflank-mailman (input) for mailman id 110066;
 Tue, 13 Apr 2021 17:59:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1MWi=JK=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWNJd-0005nM-S5
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:59:09 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8f1b751f-e028-4178-953d-27769545bd62;
 Tue, 13 Apr 2021 17:59:09 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 384F6613BD;
 Tue, 13 Apr 2021 17:59: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: 8f1b751f-e028-4178-953d-27769545bd62
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618336748;
	bh=cF48fhXe8VDxHIjdbmagHQp6WnPcptB+p2Y6Sw661xQ=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=rKoiWQR4KiJiUxVmFVzQnW5R89ABy843GDUxFHrAhEYtBrwqfAhkBOjC9rUZ7WRI+
	 nW6iPDU6d6/sQGAYukHjX+e239n3e2HStkLQuRzm7q2/Db8N1Z3cF7MkKAPAlMJed0
	 FpVFbmf0wpe3ZUKsqbMi24qeC6X+sBnr7zXXydkEcdogq49ZRqrv/RtunaLTz96fCd
	 mc0CuwlqohYaiHW65D0lazUXffXp708VR75vShkOqZIVhREzgsebR27JY+LS2R6fPp
	 i7+vv3/UgemCjPqOzude/GpNK+JVYqJpQU8v7+UykouILTMwJ/zhaajyu2ZQ+lh7dM
	 KiurFg4KLhxZQ==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	julien@xen.org,
	Bertrand.Marquis@arm.com,
	Volodymyr_Babchuk@epam.com,
	rahul.singh@arm.com,
	brian.woods@xilinx.com,
	Stefano Stabellini <stefano.stabellini@xilinx.com>
Subject: [PATCH RESEND v3 3/3] arm,smmu: add support for generic DT bindings. Implement add_device and dt_xlate.
Date: Tue, 13 Apr 2021 10:59:05 -0700
Message-Id: <20210413175905.15123-3-sstabellini@kernel.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>
References: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>

From: Brian Woods <brian.woods@xilinx.com>

Now that all arm iommu drivers support generic bindings we can remove
the workaround from iommu_add_dt_device().

Note that if both legacy bindings and generic bindings are present in
device tree, the legacy bindings are the ones that are used.

Signed-off-by: Brian Woods <brian.woods@xilinx.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Reviewed-by: Rahul Singh <rahul.singh@arm.com>
---
 xen/drivers/passthrough/arm/smmu.c    | 42 ++++++++++++++++++++++++++-
 xen/drivers/passthrough/device_tree.c | 17 +----------
 2 files changed, 42 insertions(+), 17 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index f949c110ad..b564851a56 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -254,6 +254,8 @@ struct iommu_group
 	atomic_t ref;
 };
 
+static struct arm_smmu_device *find_smmu(const struct device *dev);
+
 static struct iommu_group *iommu_group_alloc(void)
 {
 	struct iommu_group *group = xzalloc(struct iommu_group);
@@ -442,6 +444,8 @@ static struct iommu_group *iommu_group_get(struct device *dev)
 #define SMR_VALID			(1U << 31)
 #define SMR_MASK_SHIFT			16
 #define SMR_ID_SHIFT			0
+#define SMR_ID_MASK			0x7fff
+#define SMR_MASK_MASK			0x7fff
 
 #define ARM_SMMU_GR0_S2CR(n)		(0xc00 + ((n) << 2))
 #define S2CR_CBNDX_SHIFT		0
@@ -872,6 +876,40 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
 					     fwspec);
 }
 
+static int arm_smmu_dt_add_device_generic(u8 devfn, struct device *dev)
+{
+	struct arm_smmu_device *smmu;
+	struct iommu_fwspec *fwspec;
+
+	fwspec = dev_iommu_fwspec_get(dev);
+	if (fwspec == NULL)
+		return -ENXIO;
+
+	smmu = find_smmu(fwspec->iommu_dev);
+	if (smmu == NULL)
+		return -ENXIO;
+
+	return arm_smmu_dt_add_device_legacy(smmu, dev, fwspec);
+}
+
+static int arm_smmu_dt_xlate_generic(struct device *dev,
+				    const struct dt_phandle_args *spec)
+{
+	uint32_t mask, fwid = 0;
+
+	if (spec->args_count > 0)
+		fwid |= (SMR_ID_MASK & spec->args[0]) << SMR_ID_SHIFT;
+
+	if (spec->args_count > 1)
+		fwid |= (SMR_MASK_MASK & spec->args[1]) << SMR_MASK_SHIFT;
+	else if (!of_property_read_u32(spec->np, "stream-match-mask", &mask))
+		fwid |= (SMR_MASK_MASK & mask) << SMR_MASK_SHIFT;
+
+	return iommu_fwspec_add_ids(dev,
+				    &fwid,
+				    1);
+}
+
 static struct arm_smmu_device *find_smmu_for_device(struct device *dev)
 {
 	struct arm_smmu_device *smmu;
@@ -2836,6 +2874,7 @@ static void arm_smmu_iommu_domain_teardown(struct domain *d)
 static const struct iommu_ops arm_smmu_iommu_ops = {
     .init = arm_smmu_iommu_domain_init,
     .hwdom_init = arm_smmu_iommu_hwdom_init,
+    .add_device = arm_smmu_dt_add_device_generic,
     .teardown = arm_smmu_iommu_domain_teardown,
     .iotlb_flush = arm_smmu_iotlb_flush,
     .iotlb_flush_all = arm_smmu_iotlb_flush_all,
@@ -2843,9 +2882,10 @@ static const struct iommu_ops arm_smmu_iommu_ops = {
     .reassign_device = arm_smmu_reassign_dev,
     .map_page = arm_iommu_map_page,
     .unmap_page = arm_iommu_unmap_page,
+    .dt_xlate = arm_smmu_dt_xlate_generic,
 };
 
-static __init const struct arm_smmu_device *find_smmu(const struct device *dev)
+static struct arm_smmu_device *find_smmu(const struct device *dev)
 {
 	struct arm_smmu_device *smmu;
 	bool found = false;
diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index a51ae3c9c3..ae07f272e1 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -162,22 +162,7 @@ int iommu_add_dt_device(struct dt_device_node *np)
          * these callback implemented.
          */
         if ( !ops->add_device || !ops->dt_xlate )
-        {
-            /*
-             * Some Device Trees may expose both legacy SMMU and generic
-             * IOMMU bindings together. However, the SMMU driver is only
-             * supporting the former and will protect them during the
-             * initialization. So we need to skip them and not return
-             * error here.
-             *
-             * XXX: This can be dropped when the SMMU is able to deal
-             * with generic bindings.
-             */
-            if ( dt_device_is_protected(np) )
-                return 0;
-            else
-                return -EINVAL;
-        }
+            return -EINVAL;
 
         if ( !dt_device_is_available(iommu_spec.np) )
             break;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 17:59:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 17:59:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110068.210114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNJi-0005ts-Nw; Tue, 13 Apr 2021 17:59:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110068.210114; Tue, 13 Apr 2021 17: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 1lWNJi-0005tj-KK; Tue, 13 Apr 2021 17:59:14 +0000
Received: by outflank-mailman (input) for mailman id 110068;
 Tue, 13 Apr 2021 17:59:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1MWi=JK=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWNJh-0005mq-Kv
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 17:59:13 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 83ad58cc-c534-4bec-b2f5-aac17a5f7db3;
 Tue, 13 Apr 2021 17:59:08 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 9D5B4613BA;
 Tue, 13 Apr 2021 17:59: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: 83ad58cc-c534-4bec-b2f5-aac17a5f7db3
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618336748;
	bh=GPoJSocdsrvEwhHDE5FqQZWJ8Wf0LhPUhy+KObvq+MY=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=SJgdR9eqXI6OtzFJpsZ53jbb+ISgss34Mn6/Ysx84STntpdSsmX9C85F26xogi3N4
	 Z2Aq8HrqBntx+Z0OcTThf748vrJULUrplXvC2F5DYHGUDd0Dn8x3jLMHyJx6+tT3jR
	 uy7VRuIJKyhM/FkVTIKfyxhOKIqWY6HjJseadtEQ9mVq3mSdhul+2CutYYIA6vTG4h
	 IaTa6OfS10iYA+FmZvdJynd/9+aBdlXVg7YHQq0IeVr7zJ0zZaY1rs8uQbI99r7Aza
	 4JbTYvqD3WHB3Lq68bbRWqhFQR+eFPLu/PBOLlYpaJyvsMXCOB4n+ftGCj3f6wajQL
	 4xy2OWOQI/cTQ==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	julien@xen.org,
	Bertrand.Marquis@arm.com,
	Volodymyr_Babchuk@epam.com,
	rahul.singh@arm.com,
	brian.woods@xilinx.com,
	Stefano Stabellini <stefano.stabellini@xilinx.com>
Subject: [PATCH RESEND v3 2/3] arm,smmu: restructure code in preparation to new bindings support
Date: Tue, 13 Apr 2021 10:59:04 -0700
Message-Id: <20210413175905.15123-2-sstabellini@kernel.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>
References: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>

From: Brian Woods <brian.woods@xilinx.com>

Restructure some of the code and add supporting functions for adding
generic device tree (DT) binding support.  This will allow for using
current Linux device trees with just modifying the chosen field to
enable Xen.

Signed-off-by: Brian Woods <brian.woods@xilinx.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Reviewed-by: Rahul Singh <rahul.singh@arm.com>
---
 xen/drivers/passthrough/arm/smmu.c | 62 +++++++++++++++++-------------
 1 file changed, 35 insertions(+), 27 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index ac75e23268..f949c110ad 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -810,52 +810,36 @@ static int insert_smmu_master(struct arm_smmu_device *smmu,
 	return 0;
 }
 
-static int register_smmu_master(struct arm_smmu_device *smmu,
-				struct device *dev,
-				struct of_phandle_args *masterspec)
+static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu,
+					 struct device *dev,
+					 struct iommu_fwspec *fwspec)
 {
-	int i, ret = 0;
+	int i;
 	struct arm_smmu_master *master;
-	struct iommu_fwspec *fwspec;
+	struct device_node *dev_node = dev_get_dev_node(dev);
 
-	master = find_smmu_master(smmu, masterspec->np);
+	master = find_smmu_master(smmu, dev_node);
 	if (master) {
 		dev_err(dev,
 			"rejecting multiple registrations for master device %s\n",
-			masterspec->np->name);
+			dev_node->name);
 		return -EBUSY;
 	}
 
 	master = devm_kzalloc(dev, sizeof(*master), GFP_KERNEL);
 	if (!master)
 		return -ENOMEM;
-	master->of_node = masterspec->np;
-
-	ret = iommu_fwspec_init(&master->of_node->dev, smmu->dev);
-	if (ret) {
-		kfree(master);
-		return ret;
-	}
-	fwspec = dev_iommu_fwspec_get(dev);
-
-	/* adding the ids here */
-	ret = iommu_fwspec_add_ids(&masterspec->np->dev,
-				   masterspec->args,
-				   masterspec->args_count);
-	if (ret)
-		return ret;
+	master->of_node = dev_node;
 
 	/* Xen: Let Xen know that the device is protected by an SMMU */
-	dt_device_set_protected(masterspec->np);
+	dt_device_set_protected(dev_node);
 
 	for (i = 0; i < fwspec->num_ids; ++i) {
-		u16 streamid = masterspec->args[i];
-
 		if (!(smmu->features & ARM_SMMU_FEAT_STREAM_MATCH) &&
-		     (streamid >= smmu->num_mapping_groups)) {
+		     (fwspec->ids[i] >= smmu->num_mapping_groups)) {
 			dev_err(dev,
 				"stream ID for master device %s greater than maximum allowed (%d)\n",
-				masterspec->np->name, smmu->num_mapping_groups);
+				dev_node->name, smmu->num_mapping_groups);
 			return -ERANGE;
 		}
 		master->cfg.smendx[i] = INVALID_SMENDX;
@@ -864,6 +848,30 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
 	return insert_smmu_master(smmu, master);
 }
 
+static int register_smmu_master(struct arm_smmu_device *smmu,
+				struct device *dev,
+				struct of_phandle_args *masterspec)
+{
+	int ret = 0;
+	struct iommu_fwspec *fwspec;
+
+	ret = iommu_fwspec_init(&masterspec->np->dev, smmu->dev);
+	if (ret)
+		return ret;
+
+	fwspec = dev_iommu_fwspec_get(&masterspec->np->dev);
+
+	ret = iommu_fwspec_add_ids(&masterspec->np->dev,
+				   masterspec->args,
+				   masterspec->args_count);
+	if (ret)
+		return ret;
+
+	return arm_smmu_dt_add_device_legacy(smmu,
+					     &masterspec->np->dev,
+					     fwspec);
+}
+
 static struct arm_smmu_device *find_smmu_for_device(struct device *dev)
 {
 	struct arm_smmu_device *smmu;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 18:19:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 18:19:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110091.210136 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNdG-00087U-Jq; Tue, 13 Apr 2021 18:19:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110091.210136; Tue, 13 Apr 2021 18: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 1lWNdG-00087N-Gt; Tue, 13 Apr 2021 18:19:26 +0000
Received: by outflank-mailman (input) for mailman id 110091;
 Tue, 13 Apr 2021 18:19: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 1lWNdF-00087I-0c
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 18:19: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 1lWNdD-00018u-GE; Tue, 13 Apr 2021 18:19:23 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWNdD-0003QO-83; Tue, 13 Apr 2021 18:19: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=uHo4OxMK6flwM207WY7VYnJ0W6uAPtprU6t4eOqXek8=; b=FV0JnJisldGm5Wiw1uBa5bMKUm
	AvkVvbphaUUS+nW1HwoFJuYtR62Uke181sGjymVvcHBdJyYw1c18/dQgLmXztZrJR8iPkfugwRJYO
	tJ4Anm5szKL65xE/D8Pmkc5tGOIHGOG0yS17PRWdHd4HBti+K3LphIEaxVfQxPW5+heM=;
Subject: Re: [PATCH 11/11] Arm/optee: don't open-code xzalloc_flex_struct()
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <aad23304-c727-2921-59fe-ab3763f5da03@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <9f95c37b-dc4a-d2cf-01c1-98d2108fae88@xen.org>
Date: Tue, 13 Apr 2021 19:19:21 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <aad23304-c727-2921-59fe-ab3763f5da03@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 08/04/2021 13:23, Jan Beulich wrote:
> There is a difference in generated code: xzalloc_bytes() forces
> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
> actually don't want it.

So I think moving to xmalloc_flex_struct() is a pretty good move. But I 
am actually a bit confused with the argument used.

Could you provide some details why you think forcing the array to be 
aligned to the maximum cache line supported (128 bytes on Arm) is wrong?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 18:33:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 18:33:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110099.210147 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWNqF-0001Rb-U1; Tue, 13 Apr 2021 18:32:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110099.210147; Tue, 13 Apr 2021 18:32: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 1lWNqF-0001RU-R0; Tue, 13 Apr 2021 18:32:51 +0000
Received: by outflank-mailman (input) for mailman id 110099;
 Tue, 13 Apr 2021 18:32: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 1lWNqE-0001RM-Rm; Tue, 13 Apr 2021 18:32: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 1lWNqE-0001Mu-LK; Tue, 13 Apr 2021 18:32: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 1lWNqE-0007ex-9s; Tue, 13 Apr 2021 18:32:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWNqE-00029U-9Q; Tue, 13 Apr 2021 18:32:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=G58m/PrIC9UI+fE7pJmkRtuUZi3Z3b6m0EV+UWGwO7I=; b=RjzXvM7oOVwQmLbnJMvLxjBTik
	NN5HLEjr7M+vpxCDvx5GNgKNREvs47p4IYISZUk7qfPOoiLszLubIFTm4AODt/YHwP6IAw53a50FA
	BNWPR0+8uf2z/OVSeBd58gFaXTsRpBTHDoN++/aVBdRChWyx++HzNYAguZNlwnZwc3o0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161064-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161064: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-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-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-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-vhd: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=89698becf06d341a700913c3d89ce2a914af69a2
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 18:32:50 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                89698becf06d341a700913c3d89ce2a914af69a2
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  255 days
Failing since        152366  2020-08-01 20:49:34 Z  254 days  430 attempts
Testing same since   161064  2021-04-12 18:39:33 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1325253 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 19:12:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 19:12:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110112.210169 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWOSn-00059u-2b; Tue, 13 Apr 2021 19:12:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110112.210169; Tue, 13 Apr 2021 19: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 1lWOSm-00059n-UK; Tue, 13 Apr 2021 19:12:40 +0000
Received: by outflank-mailman (input) for mailman id 110112;
 Tue, 13 Apr 2021 19:12:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Zkz=JK=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lWOSl-00059i-Nz
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 19:12:39 +0000
Received: from mail-wm1-x331.google.com (unknown [2a00:1450:4864:20::331])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f1fe3d49-a8bf-494f-b213-7f60c7e5eb3f;
 Tue, 13 Apr 2021 19:12:38 +0000 (UTC)
Received: by mail-wm1-x331.google.com with SMTP id
 y20-20020a1c4b140000b029011f294095d3so11327709wma.3
 for <xen-devel@lists.xenproject.org>; Tue, 13 Apr 2021 12:12:38 -0700 (PDT)
Received: from [192.168.1.186]
 (host86-180-176-157.range86-180.btcentralplus.com. [86.180.176.157])
 by smtp.gmail.com with ESMTPSA id p16sm24398411wrt.54.2021.04.13.12.12.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 13 Apr 2021 12:12: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: f1fe3d49-a8bf-494f-b213-7f60c7e5eb3f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=UCAErql/3GJUYEPMVWfjyQstMGyTsmIR1XNUYPtAWYo=;
        b=FGl4Q82P6oyI9bGPAOBmg8PqSeOQD0Dd66S8UD4pI6IVwQ1e+hJLAC4ySP1pxTsnbr
         0PyBhhRqdZaCNxztxwlji33sdde/Mr9LeiiGyEu6yNV/YywdyAOStQbUtMr/lUI0fv0f
         FLIqOqinH9ZhlToeXv82PGnpC1kbUfWIEonzOnE1jUfEUh3WZkPrCY2mLb6x77H84B/j
         bc88jRZhh7Qmj1urPQ6yTb1SoHK2qJrHKJeTvXlVHGCgDR3HDoEYer9x3CUovgJCYpcn
         QMAMJyiuei6cYnLZHxXb4kPlP0ODbgVz21g85/tthXUsnhfgG34Ojp3zM4Feoou3NLF/
         EQZQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=UCAErql/3GJUYEPMVWfjyQstMGyTsmIR1XNUYPtAWYo=;
        b=OykiJncezLc4f2Eb/NMg9wCP8KxRGi9wndpnx7qpkeXolMFKoKfbCQIXvy9qkmWe5e
         wNX9kEIZ5yucLdKZBVNn2MGeTfqjdK3DWPoZJRlHMHVUWLRXTwARCLZUQZ1FABtjDtEC
         8E7Sittq+TOGxYam+05Xx6ztd+7I35CqlJfwxDoOC4PdnFwW220ItgfGQzR9+nOd6mC9
         pOJHTwiHfTeALd2ihu5aaZ0aJGfbAxFqJPnU+vLUUMvTVv82nfNgWbbp8Gyrrm1LVLYq
         2vbu4X4OroST48RqbFFcGf9f4ZAJYB3InHx1QIKtPqOWlrGF/Tmo2YPWPMhwdfSKXpfx
         +L/w==
X-Gm-Message-State: AOAM5321zwBmtcl+OP9q0uo4QQekuJ0qa33aRUDU3ZP8YvcdhpodlrYT
	JGXNBp8HoD09nEwmShpeASY=
X-Google-Smtp-Source: ABdhPJzzQ4Dai6tUIzDN9x5kCNiwCsxb63EEAEQvCWXFt18S9htvBA3AIXd2zsZ5QgDN71rb4HH11w==
X-Received: by 2002:a1c:7707:: with SMTP id t7mr1437466wmi.76.1618341158022;
        Tue, 13 Apr 2021 12:12:38 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH] xen-netback: Check for hotplug-status existence before
 watching
To: Michael Brown <mbrown@fensystems.co.uk>, xen-devel@lists.xenproject.org,
 netdev@vger.kernel.org, wei.liu@kernel.org, pdurrant@amazon.com
References: <54659eec-e315-5dc5-1578-d91633a80077@xen.org>
 <20210413152512.903750-1-mbrown@fensystems.co.uk>
Message-ID: <8bd038a2-b870-4f9b-733d-77efe7b9afe1@xen.org>
Date: Tue, 13 Apr 2021 20:12:35 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <20210413152512.903750-1-mbrown@fensystems.co.uk>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 13/04/2021 16:25, Michael Brown wrote:
> The logic in connect() is currently written with the assumption that
> xenbus_watch_pathfmt() will return an error for a node that does not
> exist.  This assumption is incorrect: xenstore does allow a watch to
> be registered for a nonexistent node (and will send notifications
> should the node be subsequently created).
> 
> As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
> has served its purpose"), this leads to a failure when a domU
> transitions into XenbusStateConnected more than once.  On the first
> domU transition into Connected state, the "hotplug-status" node will
> be deleted by the hotplug_status_changed() callback in dom0.  On the
> second or subsequent domU transition into Connected state, the
> hotplug_status_changed() callback will therefore never be invoked, and
> so the backend will remain stuck in InitWait.
> 
> This failure prevents scenarios such as reloading the xen-netfront
> module within a domU, or booting a domU via iPXE.  There is
> unfortunately no way for the domU to work around this dom0 bug.
> 
> Fix by explicitly checking for existence of the "hotplug-status" node,
> thereby creating the behaviour that was previously assumed to exist.
> 
> Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>

Reviewed-by: Paul Durrant <paul@xen.org>

> ---
>   drivers/net/xen-netback/xenbus.c | 12 ++++++++----
>   1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
> index a5439c130130..d24b7a7993aa 100644
> --- a/drivers/net/xen-netback/xenbus.c
> +++ b/drivers/net/xen-netback/xenbus.c
> @@ -824,11 +824,15 @@ static void connect(struct backend_info *be)
>   	xenvif_carrier_on(be->vif);
>   
>   	unregister_hotplug_status_watch(be);
> -	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
> -				   hotplug_status_changed,
> -				   "%s/%s", dev->nodename, "hotplug-status");
> -	if (!err)
> +	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
> +		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
> +					   NULL, hotplug_status_changed,
> +					   "%s/%s", dev->nodename,
> +					   "hotplug-status");
> +		if (err)
> +			goto err;
>   		be->have_hotplug_status_watch = 1;
> +	}
>   
>   	netif_tx_wake_all_queues(be->vif->dev);
>   
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 13 20:20:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 20:20:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110126.210187 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWPVp-0002Z5-4I; Tue, 13 Apr 2021 20:19:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110126.210187; Tue, 13 Apr 2021 20: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 1lWPVp-0002Yy-0I; Tue, 13 Apr 2021 20:19:53 +0000
Received: by outflank-mailman (input) for mailman id 110126;
 Tue, 13 Apr 2021 20:19: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 1lWPVn-0002Yq-EJ; Tue, 13 Apr 2021 20:19: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 1lWPVm-00038X-BO; Tue, 13 Apr 2021 20:19: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 1lWPVm-0004E0-4K; Tue, 13 Apr 2021 20:19:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWPVm-00076W-1N; Tue, 13 Apr 2021 20:19: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=t94fD7fYuLq6nL4wwDJZ+0ve0WExONT9w5jg3TcR3r8=; b=FtuXp5X1b5L/ElfPhAsBAV/400
	nnNTPjLO54gfn6vPNrs9KkDLBdjNBzqkH2fLz5vQkNVnQlJpBeC4ADnUG4gZzBTeN/FvZn4bACvT4
	i4yMZy7rAzxVv9AbmQLGdqsEhxsLdJQl+Et2naI66Vq4PdIRyBtv8O1dvsgtbZ6sU3Jc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161100-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161100: 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=264aa183ad85b2779b27d1312724a291259ccc9f
X-Osstest-Versions-That:
    xen=80714e55042b2242cd82eccfb7405d671ecbebda
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 13 Apr 2021 20:19:50 +0000

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

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                  264aa183ad85b2779b27d1312724a291259ccc9f
baseline version:
 xen                  80714e55042b2242cd82eccfb7405d671ecbebda

Last test of basis   161096  2021-04-13 15:00:26 Z    0 days
Testing same since   161100  2021-04-13 18:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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
   80714e5504..264aa183ad  264aa183ad85b2779b27d1312724a291259ccc9f -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 22:30:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 22:30:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110145.210214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWRXv-0006dv-Vp; Tue, 13 Apr 2021 22:30:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110145.210214; Tue, 13 Apr 2021 22:30:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWRXv-0006do-Sr; Tue, 13 Apr 2021 22:30:11 +0000
Received: by outflank-mailman (input) for mailman id 110145;
 Tue, 13 Apr 2021 22:30:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IdfB=JK=kernel.org=patchwork-bot+netdevbpf@srs-us1.protection.inumbo.net>)
 id 1lWRXu-0006dj-Pj
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 22:30:10 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a24e0a80-57ed-4609-a074-6b2492681b7b;
 Tue, 13 Apr 2021 22:30:10 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPS id 30F1B61164;
 Tue, 13 Apr 2021 22:30:09 +0000 (UTC)
Received: from pdx-korg-docbuild-2.ci.codeaurora.org (localhost.localdomain
 [127.0.0.1])
 by pdx-korg-docbuild-2.ci.codeaurora.org (Postfix) with ESMTP id 2294D609B9;
 Tue, 13 Apr 2021 22:30: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: a24e0a80-57ed-4609-a074-6b2492681b7b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618353009;
	bh=YDZSi70s3rOnFQkuC0w/GRNCFulrZjkk0ICdWBlUI9M=;
	h=Subject:From:Date:References:In-Reply-To:To:Cc:From;
	b=Jya3PSqkB5j9zQvQZXkopGm4IRx3Aa/oCPNlFr6iauzTfuDAfnECgecJ3WtMqS2Dc
	 JKbG9ZZZzqogG/o6WQxS/vezQs2vR0ppQTLyzOiBFPN68DnYxL8Z3TkYHFihURB3SB
	 JksbZJzK8pJldF8x3dUBKzQs7xNL7UZLI3xtm9yTwyj8wWi3HbcZ+os+BdgwZSFQ4v
	 /lcBPGZru3Q2yY/nCVwfUEjza87gY+yO8/7i/DGFUCBoFZE2Y1L0KNcOcACUMbfk0W
	 vYoWUbTpeIlTByRvcT3H8t7QfXNuYIyF36gv5hOFLGPDUbGNWyL9B74NukcTgZ+N7X
	 7OS9ZIB//sekQ==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: Re: [PATCH] xen-netback: Check for hotplug-status existence before
 watching
From: patchwork-bot+netdevbpf@kernel.org
Message-Id: 
 <161835300913.8271.8325193243665845147.git-patchwork-notify@kernel.org>
Date: Tue, 13 Apr 2021 22:30:09 +0000
References: <20210413152512.903750-1-mbrown@fensystems.co.uk>
In-Reply-To: <20210413152512.903750-1-mbrown@fensystems.co.uk>
To: Michael Brown <mbrown@fensystems.co.uk>
Cc: paul@xen.org, xen-devel@lists.xenproject.org, netdev@vger.kernel.org,
 wei.liu@kernel.org, pdurrant@amazon.com

Hello:

This patch was applied to netdev/net.git (refs/heads/master):

On Tue, 13 Apr 2021 16:25:12 +0100 you wrote:
> The logic in connect() is currently written with the assumption that
> xenbus_watch_pathfmt() will return an error for a node that does not
> exist.  This assumption is incorrect: xenstore does allow a watch to
> be registered for a nonexistent node (and will send notifications
> should the node be subsequently created).
> 
> As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
> has served its purpose"), this leads to a failure when a domU
> transitions into XenbusStateConnected more than once.  On the first
> domU transition into Connected state, the "hotplug-status" node will
> be deleted by the hotplug_status_changed() callback in dom0.  On the
> second or subsequent domU transition into Connected state, the
> hotplug_status_changed() callback will therefore never be invoked, and
> so the backend will remain stuck in InitWait.
> 
> [...]

Here is the summary with links:
  - xen-netback: Check for hotplug-status existence before watching
    https://git.kernel.org/netdev/net/c/2afeec08ab5c

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 Tue Apr 13 22:44:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 22:44:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110150.210226 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWRlG-0007gJ-7h; Tue, 13 Apr 2021 22:43:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110150.210226; Tue, 13 Apr 2021 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 1lWRlG-0007gC-4C; Tue, 13 Apr 2021 22:43:58 +0000
Received: by outflank-mailman (input) for mailman id 110150;
 Tue, 13 Apr 2021 22:43:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1MWi=JK=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWRlE-0007g7-Qs
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 22:43:56 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f7ae1fc6-9473-4259-bffe-92cf9b5162d8;
 Tue, 13 Apr 2021 22:43:56 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 14E68611EE;
 Tue, 13 Apr 2021 22:43: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: f7ae1fc6-9473-4259-bffe-92cf9b5162d8
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618353835;
	bh=3GKHVKoQucQ1+1UhAkBoWE46c9GK78k3u0Txs4vEtD4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DUKRkY0WOd9/+sVQkCHPfK+THpLht9B7KSSJ/pcZcMBZ0gWN1SFNX7yhi4i5XRZsZ
	 bc3TNZZKAtPC2sYCx+zIWf+uMIYxSXoF2yteGPjBpNEsxquFsjAlyA82NEDfzdEHMF
	 9iVzCvDVx0b9y0Mjs4CtYaYd0yLJsmD4XFYb2LikKlOhq+B2Xp6bNMFnL7IbaBPmTc
	 SmhqMsObuD26r49Lc5GuGNz8OSj6VGsmxlX/xz6CiEN7jPNfl2mLQmh9dGQdByQEG8
	 0yPZL0CG82mHhLZ2cOXfnwj/ohO8445d7N67oifq+LnTxNQuJ6PM26CNeq9WCV/65s
	 B5p2zfVjtxBDg==
Date: Tue, 13 Apr 2021 15:43:54 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Julien Grall <julien@xen.org>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, 
    ash.j.wilding@gmail.com, Julien Grall <jgrall@amazon.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    George Dunlap <george.dunlap@citrix.com>
Subject: Re: [PATCH] xen/arm: Ensure the vCPU context is seen before clearing
 the _VPF_down
In-Reply-To: <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
Message-ID: <alpine.DEB.2.21.2104131541370.4885@sstabellini-ThinkPad-T480s>
References: <20210226205158.20991-1-julien@xen.org> <alpine.DEB.2.21.2102261756280.2682@sstabellini-ThinkPad-T480s> <ca41bfbb-d942-d8fd-e96e-c464f6b3643f@xen.org> <alpine.DEB.2.21.2103191652450.439@sstabellini-ThinkPad-T480s>
 <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Sat, 20 Mar 2021, Julien Grall wrote:
> On 20/03/2021 00:01, Stefano Stabellini wrote:
> > On Sat, 27 Feb 2021, Julien Grall wrote:
> > > (+ Dario and George)
> > > 
> > > Hi Stefano,
> > > 
> > > I have added Dario and George to get some inputs from the scheduling part.
> > > 
> > > On 27/02/2021 01:58, Stefano Stabellini wrote:
> > > > On Fri, 26 Feb 2021, Julien Grall wrote:
> > > > > From: Julien Grall <jgrall@amazon.com>
> > > > > 
> > > > > A vCPU can get scheduled as soon as _VPF_down is cleared. As there is
> > > > > currently not ordering guarantee in arch_set_info_guest(), it may be
> > > > > possible that flag can be observed cleared before the new values of
> > > > > vCPU
> > > > > registers are observed.
> > > > > 
> > > > > Add an smp_mb() before the flag is cleared to prevent re-ordering.
> > > > > 
> > > > > Signed-off-by: Julien Grall <jgrall@amazon.com>
> > > > > 
> > > > > ---
> > > > > 
> > > > > Barriers should work in pair. However, I am not entirely sure whether
> > > > > to
> > > > > put the other half. Maybe at the beginning of context_switch_to()?
> > > > 
> > > > It should be right after VGCF_online is set or cleared, right?
> > > 
> > > vcpu_guest_context_t is variable allocated on the heap just for the
> > > purpose of
> > > this call. So an ordering with VGFC_online is not going to do anything.
> > > 
> > > > So it
> > > > would be:
> > > > 
> > > > xen/arch/arm/domctl.c:arch_get_info_guest
> > > > xen/arch/arm/vpsci.c:do_common_cpu_on
> > > > 
> > > > But I think it is impossible that either of them get called at the same
> > > > time as arch_set_info_guest, which makes me wonder if we actually need
> > > > the barrier...
> > > arch_get_info_guest() is called without the domain lock held and I can't
> > > see
> > > any other lock that could prevent it to be called in // of
> > > arch_set_info_guest().
> > > 
> > > So you could technically get corrupted information from
> > > XEN_DOMCTL_getvcpucontext. For this case, we would want a smp_wmb() before
> > > writing to v->is_initialised. The corresponding read barrier would be in
> > > vcpu_pause() -> vcpu_sleep_sync() -> sync_vcpu_execstate().
> > > 
> > > But this is not the issue I was originally trying to solve. Currently,
> > > do_common_cpu_on() will roughly do:
> > > 
> > >   1) domain_lock(d)
> > > 
> > >   2) v->arch.sctlr = ...
> > >      v->arch.ttbr0 = ...
> > > 
> > >   3) clear_bit(_VFP_down, &v->pause_flags);
> > > 
> > >   4) domain_unlock(d)
> > > 
> > >   5) vcpu_wake(v);
> > > 
> > > If we had only one pCPU on the system, then we would only wake the vCPU in
> > > step 5. We would be fine in this situation. But that's not the interesting
> > > case.
> > > 
> > > If you add a second pCPU in the story, it may be possible to have
> > > vcpu_wake()
> > > happening in // (see more below). As there is no memory barrier, step 3
> > > may be
> > > observed before 2. So, assuming the vcpu is runnable, we could start to
> > > schedule a vCPU before any update to the registers (step 2) are observed.
> > > 
> > > This means that when context_switch_to() is called, we may end up to
> > > restore
> > > some old values.
> > > 
> > > Now the question is can vcpu_wake() be called in // from another pCPU?
> > > AFAICT,
> > > it would be only called if a given flag in v->pause_flags is cleared (e.g.
> > > _VFP_blocked). But can we rely on that?
> > > 
> > > Even if we can rely on it, v->pause_flags has other flags in it. I
> > > couldn't
> > > rule out that _VPF_down cannot be set at the same time as the other
> > > _VPF_*.
> > > 
> > > Therefore, I think a barrier is necessary to ensure the ordering.
> > > 
> > > Do you agree with this analysis?
> >   Yes, I think this makes sense. The corresponding barrier in the
> > scheduling code would have to be after reading _VPF_down and before
> > reading v->arch.sctlr, etc.
> > 
> > 
> > > > > The issues described here is also quite theoritical because there are
> > > > > hundreds of instructions executed between the time a vCPU is seen
> > > > > runnable and scheduled. But better be safe than sorry :).
> > > > > ---
> > > > >    xen/arch/arm/domain.c | 7 +++++++
> > > > >    1 file changed, 7 insertions(+)
> > > > > 
> > > > > diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
> > > > > index bdd3d3e5b5d5..2b705e66be81 100644
> > > > > --- a/xen/arch/arm/domain.c
> > > > > +++ b/xen/arch/arm/domain.c
> > > > > @@ -914,7 +914,14 @@ int arch_set_info_guest(
> > > > >        v->is_initialised = 1;
> > > > >          if ( ctxt->flags & VGCF_online )
> > > > > +    {
> > > > > +        /*
> > > > > +         * The vCPU can be scheduled as soon as _VPF_down is cleared.
> > > > > +         * So clear the bit *after* the context was loaded.
> > > > > +         */
> > > > > +        smp_mb();
> > > 
> > >  From the discussion above, I would move this barrier before
> > > v->is_initialised.
> > > So we also take care of the issue with arch_get_info_guest().
> > > 
> > > This barrier also can be reduced to a smp_wmb() as we only expect an
> > > ordering
> > > between writes.
> > > 
> > > The barrier would be paired with the barrier in:
> > >     - sync_vcpu_execstate() in the case of arch_get_vcpu_info_guest().
> > >     - context_switch_to() in the case of scheduling (The exact barrier is
> > > TDB).
> > 
> > OK, this makes sense, but why before:
> > 
> >    v->is_initialised = 1;
> > 
> > instead of right after it? It is just v->pause_flags we care about,
> > right?
> 
> The issue I originally tried to address was a race with v->pause_flags. But I
> also discovered one with v->initialised while answering to your previous
> e-mail. This was only briefly mentioned so let me expand it.
> 
> A toolstack can take a snapshot of the vCPU context using
> XEN_DOMCTL_get_vcpucontext. The helper will bail out if v->is_initialized is
> 0.
> 
> If v->is_initialized is 1, it will temporarily pause the vCPU and then call
> arch_get_info_guest().
> 
> AFAICT, arch_get_info_guest() and arch_set_info_guest() (called from PSCI CPU
> on) can run concurrently.
> 
> If you put the barrier right after v->is_initialised, then a
> processor/compiler is allowed to re-order the write with what comes before.
> Therefore, the new value of v->is_initialised may be observed before
> v->arch.{sctlr, ttbr0,...}.
> 
> Hence, we need a barrier before setting v->is_initialized so the new value is
> observed *after* the changes to v->arch.{sctlr, ttbr0, ...) have been
> observed.
> 
> A single smp_wmb() barrier before v->is_initialized should be sufficient to
> cover the two problems discussed as I don't think we need to observe
> v->is_initialized *before* v->pause_flags.

I think your explanation is correct. However, don't we need a smp_rmb()
barrier after reading v->is_initialised in xen/common/domctl.c:do_domctl
? That would be the barrier that pairs with smp_wmb in regards to
v->is_initialised.


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 23:03:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 23:03:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110159.210244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWS41-0001Fq-UE; Tue, 13 Apr 2021 23:03:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110159.210244; Tue, 13 Apr 2021 23: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 1lWS41-0001Fj-Qv; Tue, 13 Apr 2021 23:03:21 +0000
Received: by outflank-mailman (input) for mailman id 110159;
 Tue, 13 Apr 2021 23:03:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1MWi=JK=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWS40-0001Fe-O7
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 23:03:20 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 56f824c8-3c4e-4da4-9478-41f22864a893;
 Tue, 13 Apr 2021 23:03:19 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id EB59161004;
 Tue, 13 Apr 2021 23:03: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: 56f824c8-3c4e-4da4-9478-41f22864a893
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618354999;
	bh=OOaTAEU5MBWrgvdvUPYnAMqFOQBmT64Oyuc6RLdAaC8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=sOXJRl3M7dynoym7ah9WNz2dtghaAkq4nNSsgoSLccqIC3R+C34UzOnEyE3V5IkrQ
	 vXq95oFobvHxajZoB+VBBHkfTqtCoa90JdfzX4OvJYyvU7tK3EvAe2DMR2AKRYKdCx
	 Ve/Zw2VXJ15UQcabu8FW7kql85khSbLzaADbIkLBde+SjNLzgyUQA/kpa8mIXb4sN1
	 boZ1Xy+5F5ocTeyc35EJ74cwRhQsloZbkhVtjQ5f/9pY/p6hjj7LoxAZ+esiBBUlNv
	 gyd6i7l98BArzIulofzg+VwlMNWTdwXsYCNnf83Pr+QZ21KJfUC4MoRinOrJRkHTyw
	 McEYmwz9tQg8w==
Date: Tue, 13 Apr 2021 16:03:18 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Julien Grall <julien@xen.org>
cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, 
    Julien Grall <jgrall@amazon.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v3 2/2] xen/arm64: Place a speculation barrier following
 an ret instruction
In-Reply-To: <20210401164444.20377-3-julien@xen.org>
Message-ID: <alpine.DEB.2.21.2104131558410.4885@sstabellini-ThinkPad-T480s>
References: <20210401164444.20377-1-julien@xen.org> <20210401164444.20377-3-julien@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 1 Apr 2021, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Some CPUs can speculate past a RET instruction and potentially perform
> speculative accesses to memory before processing the return.
> 
> There is no known gadget available after the RET instruction today.
> However some of the registers (such as in check_pending_guest_serror())
> may contain a value provided by the guest.
> 
> In order to harden the code, it would be better to add a speculation
> barrier after each RET instruction. The performance impact is meant to
> be negligeable as the speculation barrier is not meant to be
> architecturally executed.
> 
> Rather than manually inserting a speculation barrier, use a macro
> which overrides the mnemonic RET and replace with RET + SB. We need to
> use the opcode for RET to prevent any macro recursion.
> 
> This patch is only covering the assembly code. C code would need to be
> covered separately using the compiler support.
> 
> This is part of the work to mitigate straight-line speculation.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
> 
> ---
> 
> It is not clear to me whether Armv7 (we don't officially support 32-bit
> hypervisor on Armv8) is also affected by straight-line speculation.
> The LLVM website suggests it is: https://reviews.llvm.org/D92395
> 
> For now only focus on arm64.
> 
>     Changes in v3:
>         -  Add Bertrand's reviewed-by
> 
>     Changes in v2:
>         - Use a macro rather than inserting the speculation barrier
>         manually
>         - Remove mitigation for arm32
> ---
>  xen/arch/arm/arm32/entry.S         |  1 +
>  xen/arch/arm/arm32/lib/lib1funcs.S |  1 +
>  xen/include/asm-arm/arm64/macros.h |  6 ++++++
>  xen/include/asm-arm/macros.h       | 18 +++++++++---------
>  4 files changed, 17 insertions(+), 9 deletions(-)
> 
> diff --git a/xen/arch/arm/arm32/entry.S b/xen/arch/arm/arm32/entry.S
> index f2f1bc7a3158..d0a066484f13 100644
> --- a/xen/arch/arm/arm32/entry.S
> +++ b/xen/arch/arm/arm32/entry.S
> @@ -441,6 +441,7 @@ ENTRY(__context_switch)
>  
>          add     r4, r1, #VCPU_arch_saved_context
>          ldmia   r4, {r4 - sl, fp, sp, pc}       /* Load registers and return */
> +        sb
>  
>  /*
>   * Local variables:
> diff --git a/xen/arch/arm/arm32/lib/lib1funcs.S b/xen/arch/arm/arm32/lib/lib1funcs.S
> index f1278bd6c139..8c33ffbbcc4c 100644
> --- a/xen/arch/arm/arm32/lib/lib1funcs.S
> +++ b/xen/arch/arm/arm32/lib/lib1funcs.S
> @@ -382,5 +382,6 @@ UNWIND(.save {lr})
>  	bl	__div0
>  	mov	r0, #0			@ About as wrong as it could be.
>  	ldr	pc, [sp], #8
> +	sb
>  UNWIND(.fnend)
>  ENDPROC(Ldiv0)
> diff --git a/xen/include/asm-arm/arm64/macros.h b/xen/include/asm-arm/arm64/macros.h
> index f981b4f43e84..4614394b3dd5 100644
> --- a/xen/include/asm-arm/arm64/macros.h
> +++ b/xen/include/asm-arm/arm64/macros.h
> @@ -21,6 +21,12 @@
>      ldr     \dst, [\dst, \tmp]
>      .endm
>  
> +    .macro  ret
> +        // ret opcode

This series is very nice Julien! You can add my acked-by to both patches
and also commit them.

One minor request: could you please replace this comment with

/* ret opcode */

on commit?  // is not part of the coding style.


> +        .inst 0xd65f03c0
> +        sb
> +    .endm
>>  /*
>   * Register aliases.
>   */
> diff --git a/xen/include/asm-arm/macros.h b/xen/include/asm-arm/macros.h
> index 4833671f4ced..1aa373760f98 100644
> --- a/xen/include/asm-arm/macros.h
> +++ b/xen/include/asm-arm/macros.h
> @@ -5,6 +5,15 @@
>  # error "This file should only be included in assembly file"
>  #endif
>  
> +    /*
> +     * Speculative barrier
> +     * XXX: Add support for the 'sb' instruction
> +     */
> +    .macro sb
> +    dsb nsh
> +    isb
> +    .endm
> +
>  #if defined (CONFIG_ARM_32)
>  # include <asm/arm32/macros.h>
>  #elif defined(CONFIG_ARM_64)
> @@ -20,13 +29,4 @@
>      .endr
>      .endm
>  
> -    /*
> -     * Speculative barrier
> -     * XXX: Add support for the 'sb' instruction
> -     */
> -    .macro sb
> -    dsb nsh
> -    isb
> -    .endm
> -
>  #endif /* __ASM_ARM_MACROS_H */
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Apr 13 23:33:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 13 Apr 2021 23:33:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110164.210256 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWSWe-00047g-6f; Tue, 13 Apr 2021 23:32:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110164.210256; Tue, 13 Apr 2021 23:32: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 1lWSWe-00047Z-3T; Tue, 13 Apr 2021 23:32:56 +0000
Received: by outflank-mailman (input) for mailman id 110164;
 Tue, 13 Apr 2021 23:32:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1MWi=JK=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWSWc-00047U-Uz
 for xen-devel@lists.xenproject.org; Tue, 13 Apr 2021 23:32:54 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 16d6cc9f-0d1b-4a16-974c-979b6c1342d8;
 Tue, 13 Apr 2021 23:32:54 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 46F1A61222;
 Tue, 13 Apr 2021 23:32: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: 16d6cc9f-0d1b-4a16-974c-979b6c1342d8
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618356773;
	bh=PDWurdlRjIMbrz/aF4frD96uw6kSwSCdW9WLetMQJ2g=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=eeuhNogG6wddYtSlkqY1kbW3362Mq3rQbyckLffkXQRGwR3+0/CGNRxXsHqetDY0g
	 gqo/fXuPFNghVznGTNPoeKHpQF0syEU9/X7eAk6M9Yn9IiFfqTBybKfhyko1Xzg5uy
	 fsZ3tCNMZNRWcKkP8XLERt66sdgVW5qzihwxFfl6C51q7nmsx//T7vpOKTXCaX47/e
	 HefDbr0C32qp3gGRa3I9Xqy6A2Evo8pLCzrcOnjaY388eYUYJ7hyt85OhiwWMC3W2T
	 PrJkKKWnZRYlkFBH+sGs08UuMdMSwKPbV9F4JJ8bXFVBXx/pWZqnFigbDVJnJ+vZig
	 ig3wvHl9CFjvQ==
Date: Tue, 13 Apr 2021 16:32:52 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Boris Ostrovsky <boris.ostrovsky@oracle.com>
cc: Juergen Gross <jgross@suse.com>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: Support of old Xen versions in the Linux kernel
In-Reply-To: <b7684e00-8675-5768-b4b2-f9435620b34e@oracle.com>
Message-ID: <alpine.DEB.2.21.2104131631470.4885@sstabellini-ThinkPad-T480s>
References: <1e4dc7c0-4364-1095-bb6b-c6341bc58e60@suse.com> <b7684e00-8675-5768-b4b2-f9435620b34e@oracle.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 13 Apr 2021, Boris Ostrovsky wrote:
> On 4/13/21 2:14 AM, Juergen Gross wrote:
> > In x86 kernel development the question came up whether we need to
> > support XENFEAT_gnttab_map_avail_bits not being set when running as a PV
> > guest.
> >
> > This feature is active for PV guests since Xen 3.4.
> >
> > So the basic question is: which is the oldest version of Xen we want to
> > support in the Linux kernel? As far as I know there is no Xen based
> > product in productive use with Xen older than 4.2.
> >
> > Would we be fine to drop support for older versions (feel free to
> > suggest other versions than 4.2 as the first to be supported Xen
> > version)?
> >
> > In case the answer is yes, I'd post some patches to clean up the kernel,
> > including a safety net to bail out in case a feature needed isn't
> > available.
> 
> Sounds good to me.

For ARM, the Xen ABI became stable only with Xen 4.4.


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 00:02:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 00:02:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110172.210274 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWSz4-0007V0-By; Wed, 14 Apr 2021 00:02:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110172.210274; Wed, 14 Apr 2021 00: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 1lWSz4-0007Ut-8q; Wed, 14 Apr 2021 00:02:18 +0000
Received: by outflank-mailman (input) for mailman id 110172;
 Wed, 14 Apr 2021 00:02: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 1lWSz2-0007Ul-Q0; Wed, 14 Apr 2021 00:02: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 1lWSz2-0007MV-IS; Wed, 14 Apr 2021 00:02: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 1lWSz2-00087T-BF; Wed, 14 Apr 2021 00:02:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWSz2-0008RR-Al; Wed, 14 Apr 2021 00: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=23gQhNfntUO5lTDr8ihEz0VtB69wtpOar0jQDIxOyvU=; b=uned7kfeewm6mkqeETPrG/TTt9
	bpQiWvIrrsKD/xCop9CaEznEpT3vZZTm4SYA7+ZqhhWfbOIz8UDJHmmReSBvmzOUyiA0HLW7JnUjG
	y8cVDLAldgtyADi8wpgZIyldlxmyYWPQMKVW6yVJwof4veHBw7JauWWZOiAcWf0QN530=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161099-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161099: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=83876950ab3cf5278d0ae7542086bd4be75059d3
X-Osstest-Versions-That:
    ovmf=54211ab10fcd8532b49f4024ebdb601a8eb07e3e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 00:02:16 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 83876950ab3cf5278d0ae7542086bd4be75059d3
baseline version:
 ovmf                 54211ab10fcd8532b49f4024ebdb601a8eb07e3e

Last test of basis   161081  2021-04-13 05:19:44 Z    0 days
Testing same since   161099  2021-04-13 17:40:12 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anthony PERARD <anthony.perard@citrix.com>
  Joey Gouly <joey.gouly@arm.com>
  Laszlo Ersek <lersek@redhat.com>
  Pierre Gondois <Pierre.Gondois@arm.com>
  Tom Lendacky <thomas.lendacky@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
   54211ab10f..83876950ab  83876950ab3cf5278d0ae7542086bd4be75059d3 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 00:16:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 00:16:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110178.210289 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWTCw-0000C3-Mh; Wed, 14 Apr 2021 00:16:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110178.210289; Wed, 14 Apr 2021 00:16: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 1lWTCw-0000Bw-Ja; Wed, 14 Apr 2021 00:16:38 +0000
Received: by outflank-mailman (input) for mailman id 110178;
 Wed, 14 Apr 2021 00:16: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 1lWTCv-0000Bo-U6; Wed, 14 Apr 2021 00:16: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 1lWTCv-0007aD-Lp; Wed, 14 Apr 2021 00:16: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 1lWTCv-0000CZ-Dq; Wed, 14 Apr 2021 00:16:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWTCv-00065V-DN; Wed, 14 Apr 2021 00:16: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:Message-Id:Subject:To;
	bh=kV+1mOsUXp/XbKF7jAmXw76DXJXWci/hE5Dn+qHSUWs=; b=4zXQXHtrX9XRPP/SndWY+0PCxW
	xpZRfzVet6l0t/SWdN6GNv8Svmdjfv8PfxlBzQq+KL4VFf3iWaORI7Cs469xtma/WYrIgRaLqLKDZ
	xSljp00B5kw36F7/PuJDgDk8APtS/SYOHwV1gOABkVSSZU+UbuCPf+YluIbC15InwkW4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow
Message-Id: <E1lWTCv-00065V-DN@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 00:16:37 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161107/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow.guest-saverestore --summary-out=tmp/161107.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow guest-saverestore
Searching for failure / basis pass:
 161050 fail [host=pinot0] / 160125 [host=fiano0] 160119 [host=godello1] 160113 [host=huxelrebe1] 160104 [host=fiano1] 160097 [host=pinot1] 160091 [host=godello0] 160088 [host=elbling0] 160082 [host=godello1] 160079 [host=albana1] 160070 [host=chardonnay1] 160066 [host=chardonnay0] 160002 [host=huxelrebe1] 159947 [host=godello0] 159926 [host=elbling0] 159911 [host=fiano0] 159898 [host=albana0] 159888 [host=godello1] 159878 [host=godello0] 159869 [host=godello1] 159860 [host=albana1] 159853 [host\
 =elbling1] 159848 [host=huxelrebe1] 159842 [host=elbling0] 159834 [host=godello0] 159828 ok.
Failure / basis pass flights: 161050 / 159828
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 555249a59e9cdd6b58da103aba5cf3a2d45c899f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#ef91b07388e1c0a50c604e5350eeda98428ccea6-efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#cb90ecf9349198558569f6c86c4c27d215406095-555249a59e9cdd6b58da103aba5cf3a2d45c899f git://xenbits.xen.org/osstest/seabios.git#ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#243036df0d55673de59c214e240b9b914d278b65-b0976d5c0441378b6348f5bfedbf431055bd0147
>From git://cache:9419/git://xenbits.xen.org/osstest/ovmf
   54211ab10f..83876950ab  xen-tested-master -> origin/xen-tested-master
Loaded 43067 nodes in revision graph
Searching for test results:
 159828 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
 159834 [host=godello0]
 159842 [host=elbling0]
 159848 [host=huxelrebe1]
 159853 [host=elbling1]
 159860 [host=albana1]
 159869 [host=godello1]
 159878 [host=godello0]
 159888 [host=godello1]
 159898 [host=albana0]
 159911 [host=fiano0]
 159926 [host=elbling0]
 159947 [host=godello0]
 160002 [host=huxelrebe1]
 160048 []
 160050 []
 160057 []
 160062 []
 160064 []
 160066 [host=chardonnay0]
 160070 [host=chardonnay1]
 160079 [host=albana1]
 160082 [host=godello1]
 160088 [host=elbling0]
 160091 [host=godello0]
 160097 [host=pinot1]
 160104 [host=fiano1]
 160113 [host=huxelrebe1]
 160119 [host=godello1]
 160125 [host=fiano0]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160748 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f95cdd316c3d56e8f76b5044be54b9645e1dc60f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 11577d85b1a6939380bd16ed9a861653194de044 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160779 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160801 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4ac02962017c77bf38b462f970c884c2dc7931cf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d0d3dd401b70168a353450e031727affee828527 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160827 fail irrelevant
 160851 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 dc4d42302c22f012d78f6495ea23ceaa3e23842e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d8724020dd13c88a72fc391a6a2cf63abbd3dcca b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160883 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 471387aa1446e2583f372f79327cc0a8c802b4b4 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 160916 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 836b36af9340c42d5a6642070d99944329e388bc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 161018 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
 161035 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 836b36af9340c42d5a6642070d99944329e388bc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 161038 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161040 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161041 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161043 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 69259911f948ad2755bd1f2c999dd60ac322c890 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161044 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160980 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 836b36af9340c42d5a6642070d99944329e388bc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 161047 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161052 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2e51b27fed31eb7b2a2cb4245806c8c7859207f7 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0693602a23276b076a679b1e7ed9125a444336b6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161055 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161057 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161059 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161062 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 51204c2f188ec1e2a38f14718d38a3772f850a4b b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161063 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 773b0bc2838ede154c6de9d78401b91fafa91062 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5e8892db93f3fb6a7221f2d47f3c952a7e489737 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161068 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8e6bc6cdc82d45f203bc9fc4342c0452214c74fe b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161069 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 757acb9a8295e8be4a37b2cfc1cd947e357fd29c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161070 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9abda42bf2f5aa6ef403d3140fd3d7d88e8064e9 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 893103e286ac1c500d2ad113f55c41edb35e047c
 161072 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 0570d7f276dd20a3adee80ca44a5fe7daf7566cd
 161075 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 edd46cd407ea4a0adaa8d6ca86f550c2a4d5c507 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a557b00469bca61a058fc1db4855503cac1c3219 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 4e01c48886d9fbfee3bf7e481c4529a176331c78
 161076 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1941858448e76f83eb00614c4f34ac29e9a8e792 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 0570d7f276dd20a3adee80ca44a5fe7daf7566cd
 161077 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 edd46cd407ea4a0adaa8d6ca86f550c2a4d5c507 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 65a9d3807e9a0ffd9f9719416a07be41b6f39e94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
 161080 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 94fa95c8746c553324e8b69ea4a74af670075324 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e4341623a3b87e7eca87d42b7b88da967cd21c49 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 60c0444fae2148452f9ed0b7c49af1fa41f8f522
 161082 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d1929069e355afb809a50a7f6b6affdea399cc8c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 368096b9c4a273be58dd897e996e3e010bcfc21b
 161083 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b6d5996706ddb6082e3ea8de79849bfecf2aaa15 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e31b3a5c34c6e5be7ef60773e607f189eaa15f3 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161084 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161050 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 555249a59e9cdd6b58da103aba5cf3a2d45c899f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 161087 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ee2e67da8f882fcdef2c49fcc58e9962aa695f5a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161089 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
 161091 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 efa7f4df0f3b9e70d49dc41b397ec8400c1ad374 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 555249a59e9cdd6b58da103aba5cf3a2d45c899f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b0976d5c0441378b6348f5bfedbf431055bd0147
 161092 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f9c53a69edeb94ae8c65276b885c1a7efe4f613a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161095 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 283d845c9164f57f5dba020a4783bb290493802f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161097 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8becb36063fb14df1e3ae4916215667e2cb65fa2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161098 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161101 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161103 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161105 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161106 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161107 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 159828 (pass), for basis pass
 Result found: flight 161050 (fail), for basis failure
 Repro found: flight 161089 (pass), for basis pass
 Repro found: flight 161091 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 161098 (pass), for last pass
 Result found: flight 161101 (fail), for first failure
 Repro found: flight 161103 (pass), for last pass
 Repro found: flight 161105 (fail), for first failure
 Repro found: flight 161106 (pass), for last pass
 Repro found: flight 161107 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161107/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.887249 to fit
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
161107: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail baseline untested


jobs:
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    


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

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

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

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



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 01:18:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 01:18:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110188.210306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWUAn-00031T-D0; Wed, 14 Apr 2021 01:18:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110188.210306; Wed, 14 Apr 2021 01:18: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 1lWUAn-00031M-9x; Wed, 14 Apr 2021 01:18:29 +0000
Received: by outflank-mailman (input) for mailman id 110188;
 Wed, 14 Apr 2021 01:18: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 1lWUAm-00031D-1N; Wed, 14 Apr 2021 01:18: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 1lWUAl-0005Ou-T0; Wed, 14 Apr 2021 01:18: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 1lWUAl-0002Y4-MS; Wed, 14 Apr 2021 01:18:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWUAl-0004KD-Ly; Wed, 14 Apr 2021 01:18: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=mfUMprzKHy5CUlTlErIBhz9ZgSkTGjqZh08zp2UTsUk=; b=j8aLOMlBH799T/M4yc1HzIr+Ev
	eeOvYYkW4E6rB5yjK0z0rnWMdXtn/XS/bYQG3s+VQgdbc6kENIwqm1/RiqWx/fZHWK4kePdK2vSBk
	sT5DISALKlFTxx18abtd5f6ZBtnp8lJgCT+Xg2Lv3+J9mumwKP9VowESbKepQtwgIP4c=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161108-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161108: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=7cd8f381d0fe1736d00a568e1381956197e66699
X-Osstest-Versions-That:
    xtf=8ab15139728a8efd3ebbb60beb16a958a6a93fa1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 01:18:27 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  7cd8f381d0fe1736d00a568e1381956197e66699
baseline version:
 xtf                  8ab15139728a8efd3ebbb60beb16a958a6a93fa1

Last test of basis   156693  2020-11-12 00:13:53 Z  153 days
Testing same since   161108  2021-04-13 23:10:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Christopher Clark <christopher.clark6@baesystems.com>
  Christopher Clark <christopher.w.clark@gmail.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
   8ab1513..7cd8f38  7cd8f381d0fe1736d00a568e1381956197e66699 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 02:44:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 02:44:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110200.210340 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWVVt-00031I-1v; Wed, 14 Apr 2021 02:44:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110200.210340; Wed, 14 Apr 2021 02:44:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWVVs-000319-QE; Wed, 14 Apr 2021 02:44:20 +0000
Received: by outflank-mailman (input) for mailman id 110200;
 Wed, 14 Apr 2021 02:44:19 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lWVVr-000311-Je; Wed, 14 Apr 2021 02:44:19 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lWVVr-0007CA-Ej; Wed, 14 Apr 2021 02: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 1lWVVr-0006CU-70; Wed, 14 Apr 2021 02:44:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWVVr-0007ik-6V; Wed, 14 Apr 2021 02: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=e4slEL0+Xs875GOrpUWnmvVYs6/JVmQcps16Q5HKi+c=; b=lW5kmjn1kJXjMB/ihvrbKxAWzN
	kipezu8SG5cdo78gmGlQT+cr9+CnbQ5xFff/r8hPGle+MVZkJ2npAgUr2rNyt9MrbRVh0K7ITk3DD
	xAc2XY2bzDDOVUXs7zMgwjZJn5lQLXBhHDzv9VRRL9ccIq3d/A9lvmqRtv4HHV/I1Qsw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161113-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161113: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=4288d41183a6a14f328504d8b206ea27e9981266
X-Osstest-Versions-That:
    xtf=7cd8f381d0fe1736d00a568e1381956197e66699
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 02:44:19 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  4288d41183a6a14f328504d8b206ea27e9981266
baseline version:
 xtf                  7cd8f381d0fe1736d00a568e1381956197e66699

Last test of basis   161108  2021-04-13 23:10:06 Z    0 days
Testing same since   161113  2021-04-14 01:40:17 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Orzel <michal.orzel@arm.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
   7cd8f38..4288d41  4288d41183a6a14f328504d8b206ea27e9981266 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 03:21:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 03:21:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110207.210355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWW5L-0006ja-OQ; Wed, 14 Apr 2021 03:20:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110207.210355; Wed, 14 Apr 2021 03:20: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 1lWW5L-0006jT-LQ; Wed, 14 Apr 2021 03:20:59 +0000
Received: by outflank-mailman (input) for mailman id 110207;
 Wed, 14 Apr 2021 03:20: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 1lWW5K-0006jJ-8A; Wed, 14 Apr 2021 03:20: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 1lWW5J-0007oe-S4; Wed, 14 Apr 2021 03:20: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 1lWW5J-00005U-Jp; Wed, 14 Apr 2021 03:20:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWW5J-00017J-JH; Wed, 14 Apr 2021 03: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=TTTCf0ImJ8LGWgYysGbWC3rxa8l2yxkhHgR4rXzWKdA=; b=DY2Vy7WC4psPQml2Se58XUbfY6
	7hrY8cChwD79Ppl1HFDI7wN4CrJhryE7231n2OUbVj8xNf4tCJAXODT3CRmJ/lk4sRPQg1WKso9Vp
	0u3iFMMs4BVAZZr+7YPIW1QJIGRv2DB7SQgKrPy19uQBkn532FptSYYy0oFWqQANiOv8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161071-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161071: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-libvirt:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:regression
    xen-unstable:test-armhf-armhf-xl-vhd:debian-di-install:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:regression
    xen-unstable:test-armhf-armhf-xl-credit2:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-multivcpu:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:debian-di-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:allowable
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check: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-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=be167ac0f0268074880b961c936519f756ac045b
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 03:20:57 +0000

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

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. 160646
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-libvirt    18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail REGR. vs. 160646
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 161109 REGR. vs. 160646
 test-armhf-armhf-xl-vhd   12 debian-di-install fail in 161109 REGR. vs. 160646
 test-armhf-armhf-libvirt-raw 13 guest-start    fail in 161109 REGR. vs. 160646

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit2   8 xen-boot         fail in 161109 pass in 161071
 test-armhf-armhf-xl          14 guest-start      fail in 161109 pass in 161071
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 161109 pass in 161071
 test-armhf-armhf-libvirt      8 xen-boot         fail in 161109 pass in 161071
 test-armhf-armhf-xl-multivcpu  8 xen-boot           fail pass in 161109-retest
 test-armhf-armhf-xl-vhd       8 xen-boot            fail pass in 161109-retest
 test-armhf-armhf-libvirt-raw 12 debian-di-install   fail pass in 161109-retest

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10   fail REGR. vs. 160646
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 161109 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 161109 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  be167ac0f0268074880b961c936519f756ac045b
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z   12 days
Failing since        160665  2021-04-02 07:40:09 Z   11 days   16 attempts
Testing same since   161071  2021-04-12 22:37:43 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Ian Jackson <ian.jackson@eu.citrix.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@xen.org>
  Wei Liu <wl@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                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-armhf-armhf-xl-cubietruck                               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                                     fail    
 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                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 04:23:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 04:23:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110221.210376 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWX3s-000421-Pq; Wed, 14 Apr 2021 04:23:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110221.210376; Wed, 14 Apr 2021 04:23: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 1lWX3s-00041u-La; Wed, 14 Apr 2021 04:23:32 +0000
Received: by outflank-mailman (input) for mailman id 110221;
 Wed, 14 Apr 2021 04:23:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWX3r-00041p-Th
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 04:23:32 +0000
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.1.63]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 42f9fc25-541c-4d93-a9ff-86152b60fdef;
 Wed, 14 Apr 2021 04:23:28 +0000 (UTC)
Received: from DBBPR09CA0025.eurprd09.prod.outlook.com (2603:10a6:10:d4::13)
 by VI1PR0802MB2302.eurprd08.prod.outlook.com (2603:10a6:800:9e::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Wed, 14 Apr
 2021 04:23:22 +0000
Received: from DB5EUR03FT023.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:d4:cafe::d3) by DBBPR09CA0025.outlook.office365.com
 (2603:10a6:10:d4::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Wed, 14 Apr 2021 04:23:22 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT023.mail.protection.outlook.com (10.152.20.68) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 04:23:21 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Wed, 14 Apr 2021 04:23:21 +0000
Received: from 02fdcd940f54.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 6F500746-8BFC-4782-917A-B911113A60C4.1; 
 Wed, 14 Apr 2021 04:23:10 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 02fdcd940f54.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 04:23:10 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3343.eurprd08.prod.outlook.com (2603:10a6:803:46::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Wed, 14 Apr
 2021 04:23:06 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4020.022; Wed, 14 Apr 2021
 04:23:06 +0000
Received: from [192.168.0.11] (82.8.129.65) by
 LO2P265CA0367.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a3::19) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.21 via Frontend Transport; Wed, 14 Apr 2021 04:23: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: 42f9fc25-541c-4d93-a9ff-86152b60fdef
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sT+B/WxYxeliHMZY1kqp18MVG23xqileWEBiXhbJ4qg=;
 b=vHEc4joJ20pli5HSlsGUOgaUqVqjua+SJ9Uo0/xB/ukpjU7CazJk8OrzjxVeg/hFgWCeajZSYBSiVjL3z2dQqCWtT+3MclGDP4VZhrNgRTbPHI4EAoUH/nlqSbsl3vJN6KtoFKLiAlBz+OiaWwZXUCJYAAjLXMRkJgYKR/Pvd54=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: b8c121e8c0bd8ed1
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=N387U4VQGU9825so8WDoUUxf9AODYwLlUryruauTiaflbyXfkUw7YcwFfYUK0z8YAT2+GmmJP+s7nxiTBWW3aCml94BQHbCLdwQ+OyP3PkOqbMkkbOqavE7p7p1t/+WSk75h6CKhZKRJdE7k9nEazyiWivk7a0J7WIEBhdF76he0o+UQOL+0M4KsxeGV5YnxPIBFx3CeRolE3O5jmdMEVgLGg94Rz5srpGfkJXzrQmuRJcRFnEf76SABVH3IeEdXpOaOEKRt0fSKuWkvcn55pew9qjeVG85W1I2Rr2+P/czoTACCfL2AK2PsKeHxMx289b1sRpEmFv1jm9bTi0W2IQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sT+B/WxYxeliHMZY1kqp18MVG23xqileWEBiXhbJ4qg=;
 b=RHTYQJ1ozRxR/yZ7Kw+I+5FSAaLMCrWiHR6smdeJ6TRWMcA0b/VycASDQBiYdSfb4oYqH+y29BNNP8A34UVHsSH4QQKR3ewRRSSLWuPIGE3ox6u8NXAKPpeqaJiCqmrTkj/r2+cxKDLO9/54Ixsb+zanLtJuCmCLfRGt9XbdhgSBqvIjtPsPmJv4a6EantU3wQidtCtTvGzOq2LUBvu0dkUmM3Fb7JlKubKyENz3tqBKfbO5RUZoalVHsM8wDF07ENvgqlCAsVd1n+JQtOrjsS30h3AiA6qczLEj6SZCRLE9bJANyv2UyPxk4CNrPbs1gI+hSxtKgEjoE48u/o40OA==
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=sT+B/WxYxeliHMZY1kqp18MVG23xqileWEBiXhbJ4qg=;
 b=vHEc4joJ20pli5HSlsGUOgaUqVqjua+SJ9Uo0/xB/ukpjU7CazJk8OrzjxVeg/hFgWCeajZSYBSiVjL3z2dQqCWtT+3MclGDP4VZhrNgRTbPHI4EAoUH/nlqSbsl3vJN6KtoFKLiAlBz+OiaWwZXUCJYAAjLXMRkJgYKR/Pvd54=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=us-ascii
Subject: Re: [PATCH v3 1/4] xen/arm: Move dom0 creation in domain_build.c
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <5a2f6160-d13b-b554-6e12-2318dfa3a5d3@xen.org>
Date: Wed, 14 Apr 2021 05:22:55 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <28282330-02B8-4931-8670-690E86D26E9A@arm.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-2-luca.fancellu@arm.com>
 <5a2f6160-d13b-b554-6e12-2318dfa3a5d3@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P265CA0367.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a3::19) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 22a599bc-b0c7-47c2-b03e-08d8fefd09ef
X-MS-TrafficTypeDiagnostic: VI1PR08MB3343:|VI1PR0802MB2302:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR0802MB2302C07B2CCF6D6BB954541EE44E9@VI1PR0802MB2302.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Ish5wM+kEbgnTO7hVHZ0EEJwpfU5aPMX3YCFAj7yOVA7m9YZyrBbgylHXggajt4Ty5s3j5XOFlNuWjG/roRM9GKwG/4mrbkAbjVtfJDWQKKwb1TkLyStoi6p9XK6GmSaIw5skqqk0rvc1x6rI7cqoAlf7DD0iIrbFpBPp+gSu682C6ydPbTk87GoleQ7h9YyA9t2Ot523V0XdhawlR8utaESs/gRuYF9Hfw/eHo0DH6XerKuBQJXoTUMp14nTBHGNOoMBzL2X3j0r+C0QRoMRg17Et6N8Gd0CSbFe/DQmc2/AR9C52jwQH6u5n+6/l6iNpaHYq04Ivl1Snt9QJd60jpbVZVmJUen4XeReweBTTzLtjPqo4apjDj0h71E6Kl5uKCszQOwxQqxlNRMJ0zN0JFqr3PhZPpnuDWqvbP8aHk9TDJhYhudfJPKb8mlcIadeyPeYleXT2VQvIOKhskqZtGDqq6W0XBPt/tpGBKTfKTzzke7cA1as5pU1YT0Hib3DZUKaWR6JyExdFoh6UTX+g1fF8rEh9RpywUDbjZDiQ8VWVpLwfwcN3qrWZkpfwRpla8CdfIvVkIP8le0FTouNoNyUGLWGfOf5Owj52XbQh0M1MHTTrG9zZ5fuaZ9apezlgxX7vnxv/evOUGQkaTQxqLkTJKZii+Fky1/TW1cMnsc6Q7fGcPIxJgRSJVq5cNU
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39850400004)(346002)(136003)(396003)(366004)(33656002)(186003)(52116002)(478600001)(16526019)(956004)(53546011)(2616005)(66476007)(8936002)(6486002)(86362001)(8676002)(66946007)(6666004)(6916009)(66556008)(38350700002)(2906002)(316002)(54906003)(38100700002)(36756003)(4326008)(83380400001)(44832011)(16576012)(5660300002)(26005)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 =?us-ascii?Q?EVBYmOTA5zUsisI0MsYaLsLrZVNdYyT/FIW3j+hASi5GZIwLcgXjdcyFHAq0?=
 =?us-ascii?Q?bR7DpNn230Z7bJN4P3kHK065CUjV2OM0VSfknsW3GZVJ6W95TfbdtETZ0WBT?=
 =?us-ascii?Q?dN1Xumhxo9pw0w7yHfhKVB6UA8NCKhlEhN/R5nPXvy6/ar2FPju5k2jQ8XLO?=
 =?us-ascii?Q?jsqK+msUReaswsq9IDT91H8lqxKYr+6if+s1GCzi37ZUEqz23Mc8fyP2aHhd?=
 =?us-ascii?Q?ojTV76adVVdlkFXXPKy8+Y+u4/trw8QOMjoHGCQfXBhsqXNAxLECkF4+fB25?=
 =?us-ascii?Q?ghMzpaCiF9bJm7VrstZVFIIc9Hhb1goDKxxQkCKDtQUTZ86T/8dePVepwiol?=
 =?us-ascii?Q?q3z1MkEmXcDZyW6+BM40H6Dqtcm50E0wImotKOT2IRq4SQAIzmTLgQXiCB8B?=
 =?us-ascii?Q?TLLedGSUIK79PGPYL3J0orvWY0LQTAt4LI7iqkpg/8YmOakRt/H7IOVNk1zN?=
 =?us-ascii?Q?4LHQjyadQ1e75kGTf7KyOB6um1/KLoMkiw/edXBNtnHUA+XNwNzynGcl+IPt?=
 =?us-ascii?Q?hZsrUfcU3MXJ4E5zvvHYK5v8xLm3V7jsxNlZletiYgeBmXl8NASqHXkUzL0f?=
 =?us-ascii?Q?lNVP8GrTRYrx8+gIf36yolRaU0tin2nsjfo8KeqHNKEmnUlApWmU9kOeu8vG?=
 =?us-ascii?Q?Y+oIFiTD/rDxq+L73Ai1Vh7XIrBMPQlDZMI/N42ATk7nXmqpB+RMyd1cSfTh?=
 =?us-ascii?Q?YpuvD6ZDMVTvWgyMR/yUauycLIdwvFuqqllB3I8pKAgXSjXbTTQuX6gmWU2s?=
 =?us-ascii?Q?1XQFddY79CG4qHAX8vZdSaw5WnwfC6E55GYyIHGVyQ2xxUgUZILYN2rGrWR5?=
 =?us-ascii?Q?QXO5f2z8DBV803CoDI5o/yv/k4nL+A++1fEOiy51axMwK7HsjMXYHPI6CPa3?=
 =?us-ascii?Q?gTbb2HubeMGCJE0QFzAkhBa9GtYlY2zeccbH0XvVjXEPSXQIhjKWiKVSk5R7?=
 =?us-ascii?Q?4WKi3Ky1fjDmtR+cMVNwaJ8sZvRdPAFiAhJZS9Ug2zi0kMSDMFnHRavienOP?=
 =?us-ascii?Q?M0SzzFCYxxWmcvipmVPthgHR/DhX4aR7Y8Mo9Y9bUuCCGotZhPJL02vwiAIZ?=
 =?us-ascii?Q?1GXNXof7ghSvDPTvzOErRUmhyUonvk6lSW/dmCUDm5SHJCrNDrE7iHFByWGx?=
 =?us-ascii?Q?rfv3CglQWLKBpywxFM4y05fQMAzEQmWJ95fV7Nu77Sa4An2iEBuwqx80VN2o?=
 =?us-ascii?Q?wRxu5yTsWdHLh7aOWfzk0ElTBT6r2O0NSgqOX1z7jRi430wFId+du+WKZwZm?=
 =?us-ascii?Q?Hn+4UAS2+6am/IzUwg8npitFrbzJbCR/opt4AeGZVw0OTg9FpZBoQZVgUwWl?=
 =?us-ascii?Q?1JTrup9QHa1lwXIUqiqOlxV7?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3343
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT023.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b3fa310e-7832-4543-731e-08d8fefd0079
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MrrtACyzP7unaTjlOZA7lfLqXaB5Gl0S8YnpQ9mV3RN8bbaArzVK+g4PKEkkNjLVrXfmNZKRSzjYJUMG4TkJlvyT77jJSsS0grpJJgR5c6Z9Cwnvq1Vr79gfW5KvXyoMUSLCp+Y0+Oa6Uua3CgCF1l1zQqA6+B/QFBgTg17OQ5fTZOu0y09YLGNX8zcSeWbW0mLvUcJEyONC48b4xa9tru0SewPo/g5UhK5ktLZElSgkQmySz+Mq5KE5+8tjBIkRs8fVdbTe9zFzLd/+7l2VFGseyuHI9Rwn0r9NGG0sAHv8HlT3FX+M8rJpBn0g9jYgTnR8O3+vy+5CmnwiAMU4IpA+1+sYqqBQ0fTEZdMkDiEnxVMmRp1e2UdlscTU0ZNOlBdy0g74jBgw1syixbawf34suvAhhdhIwsX8eX+QhYOKPXuQEoSDdUH3L8WciNGULXEB/12CGD3O49+oCf+xEA/US9Ua8wGZpVgyZng6cl+58jMDUhKTAHHv05+593WeuwCQ822JlCjQaMNd8ADCgHvSJ9Ks+UJOaxhT4E3SYWs1F7HJ8OjblDjjf4Iox6Bh94kdFOPvd2RrfcAq0UAp+ZBOzj64sadhUAhwQzLVREhNyKpJuG/Zz4yuQsKG+Giq2n6o9UAFK/jGrJYeo1jZ2Q==
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:(4636009)(136003)(376002)(346002)(39850400004)(396003)(36840700001)(46966006)(86362001)(36860700001)(478600001)(82740400003)(26005)(47076005)(70206006)(6666004)(6862004)(956004)(44832011)(2906002)(54906003)(83380400001)(53546011)(5660300002)(16526019)(2616005)(70586007)(336012)(8936002)(316002)(8676002)(4326008)(81166007)(36756003)(356005)(186003)(82310400003)(16576012)(6486002)(107886003)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 04:23:21.9739
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 22a599bc-b0c7-47c2-b03e-08d8fefd09ef
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:
	DB5EUR03FT023.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2302



> On 13 Apr 2021, at 17:40, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Luca,
>=20
> On 12/04/2021 11:52, Luca Fancellu wrote:
>> Move dom0 creation and start from setup.c to domain_build.c
>> on a dedicate function.
>=20
> s/dedicate/dedicated/
>=20
> I would also suggest to add "No functional changes intended" to make clea=
r this is only code movement.
>=20
>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>> ---
>> v3 changes:
>> - move create_dom0 function after construct_dom0 and
>>   make construct_dom0 static
>> ---
>>  xen/arch/arm/domain_build.c | 38 ++++++++++++++++++++++++++++++++++++-
>>  xen/arch/arm/setup.c        | 29 +---------------------------
>>  xen/include/asm-arm/setup.h |  2 +-
>>  3 files changed, 39 insertions(+), 30 deletions(-)
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index 374bf655ee..359957dc1b 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -21,6 +21,7 @@
>>  #include <asm/device.h>
>>  #include <asm/kernel.h>
>>  #include <asm/setup.h>
>> +#include <asm/tee/tee.h>
>>  #include <asm/platform.h>
>>  #include <asm/psci.h>
>>  #include <asm/setup.h>
>> @@ -2520,7 +2521,7 @@ void __init create_domUs(void)
>>      }
>>  }
>>  -int __init construct_dom0(struct domain *d)
>> +static int __init construct_dom0(struct domain *d)
>=20
> This wants a sentence in the commit message. How about the following comm=
it message:
>=20
> "
> Move dom0 create and start from setup.c to a dedicated function in domain=
_build.c.
>=20
> With this change, the function construct_dom0() is not used outside of do=
main_build.c anymore. So it is now a static function.
>=20
> No functional changes intended.
> "
>=20
> If you agree with the new commit message. I can modify while commiting it=
:

Hi Julien, yes I agree, since I have to push a v4, I can add the modificati=
ons above in that

Cheers,
Luca

>=20
> Reviewed-by: Julien Grall <jgrall@amazon.com>
>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 04:23:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 04:23:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110222.210388 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWX48-00044w-1I; Wed, 14 Apr 2021 04:23:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110222.210388; Wed, 14 Apr 2021 04:23: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 1lWX47-00044m-U2; Wed, 14 Apr 2021 04:23:47 +0000
Received: by outflank-mailman (input) for mailman id 110222;
 Wed, 14 Apr 2021 04:23:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWX46-00044V-PF
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 04:23:46 +0000
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.3.88]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e5446e9f-2a32-4271-997e-ab558357917b;
 Wed, 14 Apr 2021 04:23:45 +0000 (UTC)
Received: from AM6PR04CA0008.eurprd04.prod.outlook.com (2603:10a6:20b:92::21)
 by DBBPR08MB4346.eurprd08.prod.outlook.com (2603:10a6:10:ca::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Wed, 14 Apr
 2021 04:23:43 +0000
Received: from AM5EUR03FT051.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:92:cafe::26) by AM6PR04CA0008.outlook.office365.com
 (2603:10a6:20b:92::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Wed, 14 Apr 2021 04:23:43 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT051.mail.protection.outlook.com (10.152.16.246) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 04:23:43 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Wed, 14 Apr 2021 04:23:43 +0000
Received: from be6b4dd75a0e.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 0F5B6655-C50D-491D-90ED-B15AD3D31F6B.1; 
 Wed, 14 Apr 2021 04:23:37 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id be6b4dd75a0e.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 04:23:37 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3343.eurprd08.prod.outlook.com (2603:10a6:803:46::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Wed, 14 Apr
 2021 04:23:34 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4020.022; Wed, 14 Apr 2021
 04:23:34 +0000
Received: from [192.168.0.11] (82.8.129.65) by
 LO2P265CA0367.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a3::19) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.21 via Frontend Transport; Wed, 14 Apr 2021 04:23: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: e5446e9f-2a32-4271-997e-ab558357917b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M/Dq2cy9NxK/tiUL1TVPJyz45kZREAyGBq8vIS5Uin8=;
 b=ZqiIH+2uECUQWmBHBptRsf0nyQ7o73MJk9DBS0B+yxPi2vYKr3ESPhOH3wifL3JBpNKMhDzQy8VWxZNoS3U/zK/4I0OFicjUvAR0soFFIxJodj6cC6tzUgLpTymY22CulMlvmNvHyerK47O2TW7TMg89Gfcth+wqN5twJPDo3gg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 75835d679b8bc0fb
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MOXlkl/qRmpBLQendHx2/r+AVcVyKygumxlSlgh2dJru4I8yuihaTYoNJfrZrwKW0jeuAYimQI6sD/naGEQhMMuIzowO+2kzv8kN5PQJyHFsSG5cO9NG65rYM7mGDIZwbopPQYEwH6UkAQBXXpzer798RZWA3dygRyD3NcBY8FAIKONdrMwYxCjrTtk4tPG+XOGJ0xHukgRsaBeVPrG8ln3zRnBKDFOLTOCbYO9rjcUzayXT2Le7Hg7ymlHPpN3k9aSCurdkt9CivTbIe3lBQxrbOmb2T8CNMxqnAjdu/PVhHsxTqI0KxJm57YiqEtoNVTNkZWNzojdzXU4DDIRmFw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M/Dq2cy9NxK/tiUL1TVPJyz45kZREAyGBq8vIS5Uin8=;
 b=b7PIXAL9+eihzrjZx7Si/SKcOQt+1RbrDaZWGhoYrXvKmfzsiV8vrK4TMjR0duoMb6LzmoeMIu9itQ1tlqMFRTLtcl3BbdchvYnPnxjkvnUeu4mPdJYEB9KUxLG4I7hGqB6hgOBnLmuKlXX1f747ZyaFZLcv3IJOQ9FfI5mJDeZ0tC1doOxqueTqe19cEzN2LL1y+JDA3co4MFK15oIbfZiKVnfo8ozK3kocjuz/JzBdhvrJrFWHGaBNfwoViRqoopaE2rKLA/x62afpHMGO0lAhxVe0FmZXkMQCkUk85VyeYxY32lxsAiQQXHZfYHsgGM94axn4VkAxzkIJaMnm5A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M/Dq2cy9NxK/tiUL1TVPJyz45kZREAyGBq8vIS5Uin8=;
 b=ZqiIH+2uECUQWmBHBptRsf0nyQ7o73MJk9DBS0B+yxPi2vYKr3ESPhOH3wifL3JBpNKMhDzQy8VWxZNoS3U/zK/4I0OFicjUvAR0soFFIxJodj6cC6tzUgLpTymY22CulMlvmNvHyerK47O2TW7TMg89Gfcth+wqN5twJPDo3gg=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v3 3/4] xen/arm: Reserve domid 0 for Dom0
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <db54612f-e237-2084-f11e-ffd5e045c3dc@xen.org>
Date: Wed, 14 Apr 2021 05:23:32 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <60A07B94-1499-4313-988C-60EE987B43AA@arm.com>
References: <20210412105243.23354-1-luca.fancellu@arm.com>
 <20210412105243.23354-4-luca.fancellu@arm.com>
 <db54612f-e237-2084-f11e-ffd5e045c3dc@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P265CA0367.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a3::19) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f2b9289f-92b3-47fc-551a-08d8fefd16a3
X-MS-TrafficTypeDiagnostic: VI1PR08MB3343:|DBBPR08MB4346:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DBBPR08MB4346AC3C841A06D8F67C82F5E44E9@DBBPR08MB4346.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 60JiIwDK6cTUtjtr/fa8dWhivLh8dbjoe0qko6oG3upidlqPmz6jFeb1nUvGdWHjhX7BFzJV3mpcceh/77VcdWEyKTIGJ1pPRVDF51prme6yRD6M2HGxoXZomGENzskN1jjidjUg9kNraAm0O9cax6lsjCUIFSUvK9soFMb0O45qBCNSwfhQAhZ2reB6RAhoosFTVR13TEdJ2zRZ35SQPKwmeUq1BGQ0T35PjGFZABg3rlt72HoVZ5eSH9iil9q+ANPuuhEyLu8M46seVI6zXLB2AuOcc4hcC/QpuMLiRr8BGrYG8I3xX8cNKpfde04/LtNvtwqLS9vohOGcpBs0oD7G3kJfytVnO0gIzNBdCeBQgonfSX4krc1iDHWq4efviZ62KlsaNDILsfmm2x6VYBeZDSKoSBZNWbIqAI6A6uWXrP9b5CkCdxdxFT+3WLg+pOwed60+NCra4zPE0WF/Jnx2ShYY/N5tpLOnFRrLlCrMxKSMNWXUZ7pgdiZ1Kyht5BewTuMWt49dWZfnQtp8l1L7KLy4R1yECtxYJBeh76opIqRUBbjCTkzdEMWZQMdidJrvlecarbG4UZJ7y35qaz1CXUdKJqAlVtH+DQkptneL6ssjImS72OUf0ocK2lCFaU5xGJ247sONwoKp/56HVWvZ3/wPuTWevtDtcN0Gna5j/C72kKGfq0ZR/4RZSRz0
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39850400004)(346002)(136003)(396003)(366004)(33656002)(186003)(52116002)(478600001)(16526019)(956004)(53546011)(2616005)(66476007)(8936002)(6486002)(86362001)(8676002)(66946007)(6916009)(66556008)(38350700002)(2906002)(316002)(54906003)(38100700002)(36756003)(4326008)(83380400001)(44832011)(16576012)(5660300002)(26005)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
 =?utf-8?Q?Qps5a4AJ6oOdAgPDjGu0PnmSYU/RieEcIBxjFxK?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3343
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	bcda8cc9-7fa0-4f9f-89ba-08d8fefd10cb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uncOkAislKRUAL+3jZDZT/YdpBWZsmvk3FJ52pd4ttVZDVJSnwP8ELlIymOjsNbdkh6zO0LW5IcLU1BuvMCzYFlp00nTQXypoThpe6wezEo2JqwDAQ/ifmpJOBQr41Cee0nw47ZyM1ai6B7jGJPAXU8dvtLwinwVsWoS+ck+rZgd5IYLwMNDjbFJfLOuTe/e5ZSXdUjQEm5XUhwWbAWPjdRD5NhpHvBMyN2nYvLOBTCbNBBogQGXC6PsVFOE8/DUSejcVtfXX1PwzrPaq8FvrQ7LKu2+qJN2H5lQSDmTj2ELYYItlbo87WeXr/lYYy/PSqy/m4JR/HtsjPJMLo70q/WjcB/G7sc7+9XndMoNKHmiJx6cqmZreuP+xKe2VFV/KFf9qGFyAxoPWelOk9vPnkviRpLKDk7DFvGWrtD4UKEy1LMtlv7pVmfIe8aykLSTMj2vHX9MkAV0SZzEKzy5n96a54f3iqv4Sdw/lODD1I2M1FVAgkyylIb1lMoeGNr+tFW3sQsI/k8gRtw6cTNT/l98JC9tE53XbGSyczZw0IdkDuZVjY2oXM6hriY5skEenjU5UVwNHRHh9A1wprfKi4VGMkvcCKjYFiC5gv2xAohBg6IIiu9E208fteBAmw6JTgcEukX8QJUTKB6qUO6c+StNoKN/lUmnPanaP0+xqWo=
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:(4636009)(39850400004)(136003)(396003)(346002)(376002)(36840700001)(46966006)(81166007)(36860700001)(47076005)(82740400003)(336012)(186003)(16526019)(8936002)(8676002)(5660300002)(478600001)(316002)(33656002)(70206006)(107886003)(70586007)(6862004)(2906002)(53546011)(16576012)(44832011)(956004)(82310400003)(4326008)(26005)(6486002)(83380400001)(36756003)(86362001)(2616005)(356005)(54906003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 04:23:43.2379
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f2b9289f-92b3-47fc-551a-08d8fefd16a3
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:
	AM5EUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4346



> On 13 Apr 2021, at 18:00, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Luca,
>=20
> The title probably wants to be updated as you don't really reserve domid =
0. How about:
>=20
> xen/arm: Clarify how the domid is decided in create_domUs()

Sure I=E2=80=99ll update in the v4 patch I will send soon

Cheers,
Luca

>=20
> On 12/04/2021 11:52, Luca Fancellu wrote:
>> This patch adds a comment in create_domUs() right before
>> domain_create() to explain the importance of the pre-increment
>> operator on the variable max_init_domid, to ensure that the
>> domid 0 is allocated only during start_xen() function by the
>> create_dom0() and not on any other possible code path to the
>> domain_create() function.
>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>> ---
>> Changes in v3:
>> - removed check introduced in v2.
>> ---
>>  xen/arch/arm/domain_build.c | 5 +++++
>>  1 file changed, 5 insertions(+)
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index 359957dc1b..b1d7b9849f 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -2508,6 +2508,11 @@ void __init create_domUs(void)
>>                                           GUEST_VPL011_SPI - 32 + 1);
>>          }
>>  +        /*
>> +         * The variable max_init_domid is initialized with zero, so her=
e it's
>> +         * very important to use the pre-increment operator to call
>> +         * domain_create() with a domid > 0. (domid =3D=3D 0 is reserve=
d for Dom0)
>> +         */
>>          d =3D domain_create(++max_init_domid, &d_cfg, false);
>>          if ( IS_ERR(d) )
>>              panic("Error creating domain %s\n", dt_node_name(node));
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 04:40:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 04:40:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110236.210403 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWXKM-0006BW-LJ; Wed, 14 Apr 2021 04:40:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110236.210403; Wed, 14 Apr 2021 04: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 1lWXKM-0006BP-IC; Wed, 14 Apr 2021 04:40:34 +0000
Received: by outflank-mailman (input) for mailman id 110236;
 Wed, 14 Apr 2021 04:40:33 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rCy3=JL=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lWXKL-0006BK-Do
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 04:40:33 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cc3d8946-8adf-4970-95b0-4883e46f8b72;
 Wed, 14 Apr 2021 04:40: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: cc3d8946-8adf-4970-95b0-4883e46f8b72
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618375231;
  h=from:to:cc:subject:date:message-id:mime-version;
  bh=v9rjf8g4wjjlqjwQfVzsd8itE2gmyK7VjaStkmMVrUs=;
  b=av7ti+y8eRdSEpbMsQVGzHwabWcmA0/KbdzmufTY6BN8NSLfHvk7LIBa
   BIRWv54RRhsCGdKDHRqtIRGxEHbivM8UbfwWOrvlJqUkdomdzxl/OgcJl
   p2aROrlRAr3YdXHyeSFPuGqQxNDLELlucKaAv4LozRLp4BbTzwYrahaHk
   g=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: djWu51CvWjQpY1Dj6+TdW2d2chcqBa7C2Ghh4p1tM5igYwWCBWzVCSwiiUiJ3fccrsiLrnrEuh
 o88TBJyWoaIXsmxZ3XDjnTZBepi3PDOBveUY3S+DGkHG+dGjSu285VfkF5uqIaDjDKGQ6PVAw7
 7uLYfZfrv3wHzGTrNkNxjQwv/funbN+fw4riVAJECke2V0r+1ABAR096U1xtQNnUzKqDtgB1hd
 qXRVRkmIX/WPepbF0L4AYSrroAhhvDBhrcdxoI/9rt/d8FkoI0WsgwUbTfKaHhvLEdc1DPhsUw
 1tU=
X-SBRS: 4.0
X-MesageID: 43016262
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Ttdt3qjW/o1SnGJ0iTiE/iURAHBQXh0ji2hD6mlwRA09T+Wzva
 mV/cgz/xnylToXRTUcicmNUZPwJ0/02JZp7eAqTNSfdSb8vm/AFu5fxK/D5xGlJCHk7O5a0s
 5bAs9DIfn9F0Jzg8q/wCTQKadD/PC9/KqlhfjTwh5WJGkAAcwN0y5DBhuGCUozfQFaBPMCZf
 6hz/BarDmtc2l/VKSGL0QCNtKsm/T70LbvYRsLHHccmWyzsQ8=
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="43016262"
From: Igor Druzhinin <igor.druzhinin@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: <jbeulich@suse.com>, <andrew.cooper3@citrix.com>, <roger.pau@citrix.com>,
	<wl@xen.org>, <jun.nakajima@intel.com>, <kevin.tian@intel.com>, "Igor
 Druzhinin" <igor.druzhinin@citrix.com>
Subject: [PATCH v4 1/2] x86/vtx: add LBR_SELECT to the list of LBR MSRs
Date: Wed, 14 Apr 2021 05:40:21 +0100
Message-ID: <1618375222-9283-1-git-send-email-igor.druzhinin@citrix.com>
X-Mailer: git-send-email 2.7.4
MIME-Version: 1.0
Content-Type: text/plain

This MSR exists since Nehalem and is actively used by Linux, for instance,
to improve sampling efficiency.

Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
---
New patch in v4 as suggested by Andrew.
---
 xen/arch/x86/hvm/vmx/vmx.c      | 7 +++++--
 xen/include/asm-x86/msr-index.h | 6 +++++-
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 835b905..5a4ca35 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -2915,14 +2915,16 @@ static const struct lbr_info {
 }, nh_lbr[] = {
     { MSR_IA32_LASTINTFROMIP,       1 },
     { MSR_IA32_LASTINTTOIP,         1 },
-    { MSR_C2_LASTBRANCH_TOS,        1 },
+    { MSR_NHL_LBR_SELECT,           1 },
+    { MSR_NHL_LASTBRANCH_TOS,       1 },
     { MSR_P4_LASTBRANCH_0_FROM_LIP, NUM_MSR_P4_LASTBRANCH_FROM_TO },
     { MSR_P4_LASTBRANCH_0_TO_LIP,   NUM_MSR_P4_LASTBRANCH_FROM_TO },
     { 0, 0 }
 }, sk_lbr[] = {
     { MSR_IA32_LASTINTFROMIP,       1 },
     { MSR_IA32_LASTINTTOIP,         1 },
-    { MSR_SKL_LASTBRANCH_TOS,       1 },
+    { MSR_NHL_LBR_SELECT,           1 },
+    { MSR_NHL_LASTBRANCH_TOS,       1 },
     { MSR_SKL_LASTBRANCH_0_FROM_IP, NUM_MSR_SKL_LASTBRANCH },
     { MSR_SKL_LASTBRANCH_0_TO_IP,   NUM_MSR_SKL_LASTBRANCH },
     { MSR_SKL_LASTBRANCH_0_INFO,    NUM_MSR_SKL_LASTBRANCH },
@@ -2937,6 +2939,7 @@ static const struct lbr_info {
 }, gm_lbr[] = {
     { MSR_IA32_LASTINTFROMIP,       1 },
     { MSR_IA32_LASTINTTOIP,         1 },
+    { MSR_GM_LBR_SELECT,            1 },
     { MSR_GM_LASTBRANCH_TOS,        1 },
     { MSR_GM_LASTBRANCH_0_FROM_IP,  NUM_MSR_GM_LASTBRANCH_FROM_TO },
     { MSR_GM_LASTBRANCH_0_TO_IP,    NUM_MSR_GM_LASTBRANCH_FROM_TO },
diff --git a/xen/include/asm-x86/msr-index.h b/xen/include/asm-x86/msr-index.h
index 43d26ef..25c4308 100644
--- a/xen/include/asm-x86/msr-index.h
+++ b/xen/include/asm-x86/msr-index.h
@@ -606,14 +606,18 @@
 #define NUM_MSR_C2_LASTBRANCH_FROM_TO	4
 #define NUM_MSR_ATOM_LASTBRANCH_FROM_TO	8
 
+/* Nehalem (and newer) last-branch recording */
+#define MSR_NHL_LBR_SELECT		0x000001c8
+#define MSR_NHL_LASTBRANCH_TOS		0x000001c9
+
 /* Skylake (and newer) last-branch recording */
-#define MSR_SKL_LASTBRANCH_TOS		0x000001c9
 #define MSR_SKL_LASTBRANCH_0_FROM_IP	0x00000680
 #define MSR_SKL_LASTBRANCH_0_TO_IP	0x000006c0
 #define MSR_SKL_LASTBRANCH_0_INFO	0x00000dc0
 #define NUM_MSR_SKL_LASTBRANCH		32
 
 /* Goldmont last-branch recording */
+#define MSR_GM_LBR_SELECT		0x000001c8
 #define MSR_GM_LASTBRANCH_TOS		0x000001c9
 #define MSR_GM_LASTBRANCH_0_FROM_IP	0x00000680
 #define MSR_GM_LASTBRANCH_0_TO_IP	0x000006c0
-- 
2.7.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 04:40:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 04:40:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110238.210415 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWXKS-0006Df-Tl; Wed, 14 Apr 2021 04:40:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110238.210415; Wed, 14 Apr 2021 04:40: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 1lWXKS-0006DX-Qe; Wed, 14 Apr 2021 04:40:40 +0000
Received: by outflank-mailman (input) for mailman id 110238;
 Wed, 14 Apr 2021 04:40:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rCy3=JL=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lWXKS-0006DK-5V
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 04:40:40 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dcf77da9-147a-4b09-896a-7b6f1e31c026;
 Wed, 14 Apr 2021 04:40: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: dcf77da9-147a-4b09-896a-7b6f1e31c026
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618375239;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version;
  bh=kHmdNeilZg/p0sQ7+gnQS7Iyi+YvCL5otA+t6Ipsfh4=;
  b=bH/Zhy5kcczj2mBLkd3df+Dg2Ep7jeq/KS42iR8jKVR9PMw89p2XhJQP
   +cxLfkBaeLR16rdqwnJwzu8cYUo/jkXVFvFWP1IkcJavvEFNWeqD7nuqq
   qhJo6iLDmql/3W2D4iuTQQds/wD3q2zZE9pqmSoTVM23q2lZl0YnTJpjU
   Q=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 737Ffi+JJYFgEfAHj89YiBMDJcHHWopOzx2QAzBzEYVYuERuevmS4FCbVlZVPcKDDiQDEXxfGs
 c05mWqIzszKRlSxMpP+qyd4ROqUZLfSZDEd/B7n76grfrwanydu4yhOIbra5kgXyMLWDsVw2fu
 zzqrRqJJow+rN0tYb2Su6L7lgvEAzo0JAbV3en9eKBHBqkjhsSyjjKT5GwnIsh4qbqyLukEO3o
 CD6G7CKSj83AWxZxEUQifzz6tOT3Xc3jOWronToEvF/94K4a4VoBKsK9CMJd3Vm0sho6aGwdL3
 zsU=
X-SBRS: 4.0
X-MesageID: 41922793
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:xH0SwaF54esV1gIqpLqEcMeALOonbusQ8zAX/mpaICY1TuWzkc
 eykPMHkSLlkTp5YgBZpfmsMLSNKEmslqJdzpIWOd6ZMzXOmGztF4166Jun/juIIVybysd49Y
 NNN5dzE8fxC18St7eC3CCdH8w7yNeKtICE7N2urUtFdg1hZ6F+4woRMG/yeScaKDVuPpY3GI
 GR4cBKvVObCBMqR/+2G2UfWKz7r8DL/aiWByIuPQIt6wWFkFqTiILSLh7w5HkjegIK5b8j9G
 Tf+jaJg5mejw==
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="41922793"
From: Igor Druzhinin <igor.druzhinin@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: <jbeulich@suse.com>, <andrew.cooper3@citrix.com>, <roger.pau@citrix.com>,
	<wl@xen.org>, <jun.nakajima@intel.com>, <kevin.tian@intel.com>, "Igor
 Druzhinin" <igor.druzhinin@citrix.com>
Subject: [PATCH v4 2/2] x86/intel: insert Ice Lake-SP and Ice Lake-D model numbers
Date: Wed, 14 Apr 2021 05:40:22 +0100
Message-ID: <1618375222-9283-2-git-send-email-igor.druzhinin@citrix.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1618375222-9283-1-git-send-email-igor.druzhinin@citrix.com>
References: <1618375222-9283-1-git-send-email-igor.druzhinin@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain

LBR, C-state MSRs should correspond to Ice Lake desktop according to
SDM rev. 74 for both models.

Ice Lake-SP is known to expose IF_PSCHANGE_MC_NO in IA32_ARCH_CAPABILITIES MSR
(as advisory tells and Whitley SDP confirms) which means the erratum is fixed
in hardware for that model and therefore it shouldn't be present in
has_if_pschange_mc list. Provisionally assume the same to be the case
for Ice Lake-D while advisory is not yet updated.

Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
---
Changes in v4:
- now based on SDM update
- new LBR (0x1e0)does not seem to be exposed in the docs

Changes in v3:
- Add Ice Lake-D model numbers
- Drop has_if_pschange_mc hunk following Tiger Lake related discussion
---
 xen/arch/x86/acpi/cpu_idle.c | 2 ++
 xen/arch/x86/hvm/vmx/vmx.c   | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c
index c092086..d788c8b 100644
--- a/xen/arch/x86/acpi/cpu_idle.c
+++ b/xen/arch/x86/acpi/cpu_idle.c
@@ -181,6 +181,8 @@ static void do_get_hw_residencies(void *arg)
     case 0x55:
     case 0x5E:
     /* Ice Lake */
+    case 0x6A:
+    case 0x6C:
     case 0x7D:
     case 0x7E:
     /* Tiger Lake */
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 5a4ca35..52469ca 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -2982,7 +2982,7 @@ static const struct lbr_info *last_branch_msr_get(void)
         /* Goldmont Plus */
         case 0x7a:
         /* Ice Lake */
-        case 0x7d: case 0x7e:
+        case 0x6a: case 0x6c: case 0x7d: case 0x7e:
         /* Tiger Lake */
         case 0x8c: case 0x8d:
         /* Tremont */
-- 
2.7.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 05:24:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 05:24:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110248.210430 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWY0P-0001vS-7r; Wed, 14 Apr 2021 05:24:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110248.210430; Wed, 14 Apr 2021 05: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 1lWY0P-0001vL-4f; Wed, 14 Apr 2021 05:24:01 +0000
Received: by outflank-mailman (input) for mailman id 110248;
 Wed, 14 Apr 2021 05:24: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 1lWY0O-0001vD-8P; Wed, 14 Apr 2021 05:24: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 1lWY0O-0001rM-0W; Wed, 14 Apr 2021 05:24: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 1lWY0N-0006D7-Jr; Wed, 14 Apr 2021 05:23:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWY0N-0008AY-JR; Wed, 14 Apr 2021 05:23: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=Lksan7Rk9ILhi/2FAq0udJ8UYK2mC4A9mNem+TjIe6A=; b=tZi6BS3P2zMxFmL/HKTtmVGOXO
	eJk7cQIkXS+GdO49GXpLb/L1zZ7AXOsyBgG0NCLaZCR/vuv5hD/M7L1SJuUlkp0RMd4jvF1Gc/Lzj
	QzE1LJOlwlJTFim9vLs0E63gawG9lxG8oJyCTjkOzgNaTYADKbF1HYZjeI+VcOefPt5w=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161088-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161088: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-vhd:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=c1e90def01bdb8fcbdbebd9d1eaa8e4827ece620
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 05:23:59 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-vhd 16 guest-saverestore        fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                c1e90def01bdb8fcbdbebd9d1eaa8e4827ece620
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  236 days
Failing since        152659  2020-08-21 14:07:39 Z  235 days  438 attempts
Testing same since   161088  2021-04-13 10:22:00 Z    0 days    1 attempts

------------------------------------------------------------
477 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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                                 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 141954 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 05:46:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 05:46:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110256.210444 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWYMA-0003wi-7m; Wed, 14 Apr 2021 05:46:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110256.210444; Wed, 14 Apr 2021 05:46:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWYMA-0003wb-4j; Wed, 14 Apr 2021 05:46:30 +0000
Received: by outflank-mailman (input) for mailman id 110256;
 Wed, 14 Apr 2021 05:46:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=PMC9=JL=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lWYM8-0003wW-Fw
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 05:46:28 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 38712bb9-4431-44bd-84b5-36c0842aaf84;
 Wed, 14 Apr 2021 05:46:26 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2F5E1B039;
 Wed, 14 Apr 2021 05:46: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: 38712bb9-4431-44bd-84b5-36c0842aaf84
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618379185; 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=0X0bXY2+cR1JJCl7IUHIDL/ZBxKz9pQW1O3/M7Xu2vw=;
	b=NcLroqAewYQem5QiXIcu9cnkcWyWxUX7Rkgmdyns32bVwwAhb/F0DZRxv4kexD9oy1M0/2
	8zHwPGuM7W3UMEDw8WUERtgxsgP0lwvAf/r6ikVPnernJiXaMCiQHY9zNF7aOzwefsCKQ+
	hXKJLnooMN0ON82cnoZZBFfhM1967Ew=
Subject: Re: [PATCH v3] tools: create libxensaverestore
To: Olaf Hering <olaf@aepfle.de>, 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>,
 Anthony PERARD <anthony.perard@citrix.com>
References: <20210413172028.29373-1-olaf@aepfle.de>
From: Juergen Gross <jgross@suse.com>
Message-ID: <5d483005-c6ca-88f1-0469-dd4a23c6752d@suse.com>
Date: Wed, 14 Apr 2021 07:46:24 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210413172028.29373-1-olaf@aepfle.de>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="p8R8959tKgimXeuNQwcquH6CJMIX0udgd"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--p8R8959tKgimXeuNQwcquH6CJMIX0udgd
Content-Type: multipart/mixed; boundary="8BhohdQI3IzQawKp9r3QwFlBv6WvClwxV";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Olaf Hering <olaf@aepfle.de>, 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>,
 Anthony PERARD <anthony.perard@citrix.com>
Message-ID: <5d483005-c6ca-88f1-0469-dd4a23c6752d@suse.com>
Subject: Re: [PATCH v3] tools: create libxensaverestore
References: <20210413172028.29373-1-olaf@aepfle.de>
In-Reply-To: <20210413172028.29373-1-olaf@aepfle.de>

--8BhohdQI3IzQawKp9r3QwFlBv6WvClwxV
Content-Type: multipart/mixed;
 boundary="------------60765A3A453500160586E88D"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------60765A3A453500160586E88D
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 13.04.21 19:20, Olaf Hering wrote:
> Move all save/restore related code from libxenguest.so into a separate
> library libxensaverestore.so. The only consumer is libxl-save-helper.
> There is no need to have the moved code mapped all the time in binaries=

> where libxenguest.so is used.
>=20
> According to size(1) the change is:
>     text	   data	    bss	    dec	    hex	filename
>   187183	   4304	     48	 191535	  2ec2f	guest/libxenguest.so.4.15.0
>=20
>   124106	   3376	     48	 127530	  1f22a	guest/libxenguest.so.4.15.0
>    67841	   1872	      8	  69721	  11059	saverestore/libxensaverestore.=
so.4.15.0
>=20
> Signed-off-by: Olaf Hering <olaf@aepfle.de>
> ---
> v3:
> - repost in time for 4.16
> v2:
> - copy also license header
> - move xg_nomigrate.c
> - add size(1) output to commit msg
> - remove change from libxl_create.c
>=20
>   .gitignore                                    |   2 +
>   tools/include/xenguest.h                      | 186 ----------------
>   tools/include/xensaverestore.h                | 208 +++++++++++++++++=
+
>   tools/libs/Makefile                           |   1 +
>   tools/libs/guest/Makefile                     |  11 -
>   tools/libs/guest/xg_offline_page.c            |   1 -
>   tools/libs/light/Makefile                     |   4 +-
>   tools/libs/light/libxl_internal.h             |   1 +
>   tools/libs/light/libxl_save_helper.c          |   1 +
>   tools/libs/light/libxl_save_msgs_gen.pl       |   2 +-
>   tools/libs/saverestore/Makefile               |  38 ++++
>   .../{guest =3D> saverestore}/xg_nomigrate.c     |   0
>   .../{guest =3D> saverestore}/xg_save_restore.h  |   2 -
>   .../{guest =3D> saverestore}/xg_sr_common.c     |   0
>   .../{guest =3D> saverestore}/xg_sr_common.h     |  12 +
>   .../{guest =3D> saverestore}/xg_sr_common_x86.c |   0
>   .../{guest =3D> saverestore}/xg_sr_common_x86.h |   0
>   .../xg_sr_common_x86_pv.c                     |   0
>   .../xg_sr_common_x86_pv.h                     |   0
>   .../{guest =3D> saverestore}/xg_sr_restore.c    |   0
>   .../xg_sr_restore_x86_hvm.c                   |   0
>   .../xg_sr_restore_x86_pv.c                    |   0
>   .../libs/{guest =3D> saverestore}/xg_sr_save.c  |   0
>   .../xg_sr_save_x86_hvm.c                      |   0
>   .../xg_sr_save_x86_pv.c                       |   0
>   .../xg_sr_stream_format.h                     |   0
>   tools/libs/uselibs.mk                         |   4 +-
>   27 files changed, 269 insertions(+), 204 deletions(-)
>   create mode 100644 tools/include/xensaverestore.h
>   create mode 100644 tools/libs/saverestore/Makefile
>   rename tools/libs/{guest =3D> saverestore}/xg_nomigrate.c (100%)
>   rename tools/libs/{guest =3D> saverestore}/xg_save_restore.h (98%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_common.c (100%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_common.h (98%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_common_x86.c (100%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_common_x86.h (100%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_common_x86_pv.c (100=
%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_common_x86_pv.h (100=
%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_restore.c (100%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_restore_x86_hvm.c (1=
00%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_restore_x86_pv.c (10=
0%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_save.c (100%)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_save_x86_hvm.c (100%=
)
>   rename tools/libs/{guest =3D> saverestore}/xg_sr_save_x86_pv.c (100%)=

>   rename tools/libs/{guest =3D> saverestore}/xg_sr_stream_format.h (100=
%)

What about dropping the "xg_" prefix from the filenames?


Juergen

--------------60765A3A453500160586E88D
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------60765A3A453500160586E88D--

--8BhohdQI3IzQawKp9r3QwFlBv6WvClwxV--

--p8R8959tKgimXeuNQwcquH6CJMIX0udgd
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmB2gbAFAwAAAAAACgkQsN6d1ii/Ey9V
ugf/YEo8ffIAF9/mdlc1LSbox7Vwfb0ZjW9zlXAL4IhetcO0EmMvpvqH+RNao6k4OjLCKbmT6YEZ
1n4JGoApn1tGTevMTAWTCfTDWGH3Z0hQMOogK499z7smtlHZkhrLIQGwnF5a6NXPOuy6nDgeGHwP
sFGztWX+CppKtkvK3qFnsHTFs3/oMR9Nfb5lSW47eonkL+BT2Y/8CvXQ5p6FpGIwBqWHB1T/Oyad
RfvrnJdkQAYCemVyFOKCBvD6Z04NblY951+2CCwyjA+EKtIbfMIbvVhgm4TeFTWU4mjSFHoGPBCO
XA6guUZSIHOMcKUW/f4fO4jyzf+XQgdoIjCzyspmcw==
=kV4s
-----END PGP SIGNATURE-----

--p8R8959tKgimXeuNQwcquH6CJMIX0udgd--


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 05:49:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 05:49:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110260.210457 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWYPQ-00046S-Ns; Wed, 14 Apr 2021 05:49:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110260.210457; Wed, 14 Apr 2021 05:49: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 1lWYPQ-00046L-Jp; Wed, 14 Apr 2021 05:49:52 +0000
Received: by outflank-mailman (input) for mailman id 110260;
 Wed, 14 Apr 2021 05:49: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 1lWYPO-00046C-RH; Wed, 14 Apr 2021 05:49: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 1lWYPO-0002GK-JX; Wed, 14 Apr 2021 05:49: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 1lWYPO-00078Q-BP; Wed, 14 Apr 2021 05:49:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWYPO-0004Lp-At; Wed, 14 Apr 2021 05:49: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=Huk5r2KApi5wLRsOXNdL/5DRCoaj6csI6Zo/+DArhJE=; b=3hW2A10W29a0npVuB/0BvwouHV
	ukTlOMxrxXY+yNp9arB88XrtQHDnZxRFmtt9jNlkPvQeC+WM4ltr/UgK3p6S1rKlSllvNW/XdNCgl
	qawHI2YiHT0+/oiD2Sp1IuopQJ8KlT2UiN1C0TtctJC0vn0eR6SReYMXSPCOU3AYr6F8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161114-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161114: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=037090cb7c0063bcb7788982cab73bf7c5b66924
X-Osstest-Versions-That:
    ovmf=83876950ab3cf5278d0ae7542086bd4be75059d3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 05:49:50 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 037090cb7c0063bcb7788982cab73bf7c5b66924
baseline version:
 ovmf                 83876950ab3cf5278d0ae7542086bd4be75059d3

Last test of basis   161099  2021-04-13 17:40:12 Z    0 days
Testing same since   161114  2021-04-14 01:56:04 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Takuto Naito <naitaku@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
   83876950ab..037090cb7c  037090cb7c0063bcb7788982cab73bf7c5b66924 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 06:22:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 06:22:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110270.210481 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWYuv-0007kt-9s; Wed, 14 Apr 2021 06:22:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110270.210481; Wed, 14 Apr 2021 06:22: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 1lWYuv-0007km-6J; Wed, 14 Apr 2021 06:22:25 +0000
Received: by outflank-mailman (input) for mailman id 110270;
 Wed, 14 Apr 2021 06:22: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 1lWYut-0007ke-Om; Wed, 14 Apr 2021 06:22: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 1lWYut-0002sp-Gz; Wed, 14 Apr 2021 06:22: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 1lWYut-0000BF-6v; Wed, 14 Apr 2021 06:22:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWYut-00018v-6N; Wed, 14 Apr 2021 06:22: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=3DKGA3qaso/SQPqcod/+Kq1kvBehonR5by9GcJ2NJTw=; b=gR5NqO11XaDkE+V4f2ByfCxrE1
	FfraheJSCAvukpy08TqJ3gQIVx50bAq/mChpIqSxSvJobdxGEu/+GciF/d98OUmJVuuFq34gPRbSW
	UPheR1kL+sHJy3tRFfQRCkeBG+cqLTOBfeVDjyQ8LfHxM7UOfQsbzt2OZjckiCTIoaU4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161119-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161119: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=5b56a288cab097896832dc9d4acb7f23dfca377c
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 06:22:23 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              5b56a288cab097896832dc9d4acb7f23dfca377c
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  278 days
Failing since        151818  2020-07-11 04:18:52 Z  277 days  270 attempts
Testing same since   161119  2021-04-14 04:19:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 07:01:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 07:01:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110279.210499 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWZWk-000364-7i; Wed, 14 Apr 2021 07:01:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110279.210499; Wed, 14 Apr 2021 07:01:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWZWk-00035x-4i; Wed, 14 Apr 2021 07:01:30 +0000
Received: by outflank-mailman (input) for mailman id 110279;
 Wed, 14 Apr 2021 07:01:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lWZWj-00035p-3Z; Wed, 14 Apr 2021 07:01:29 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lWZWi-0003Wu-Rd; Wed, 14 Apr 2021 07:01:28 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lWZWi-0002I7-Is; Wed, 14 Apr 2021 07:01:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWZWi-0000YY-IP; Wed, 14 Apr 2021 07:01:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Mm+ehttSMh7gLH7cCMYnCj4rnXOlA7JGOp+X3nqrG/Y=; b=u0NzYinjeVP5A0vh2dukWZCtA7
	EMDR6i4PIrRfcOxYAvoGT2ydcxK50l/V2cfvN7MUGKY9jIH0XKbzP5UV6rljzoQ4nBbZx64qH/hXJ
	3rKleNudZBsuiDObAaV4ine1301CZSmc9xy1qyjJt9qNk30JGWgD9LeOCDHhffot86Is=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161093-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161093: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 07:01:28 +0000

flight 161093 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161093/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 161015
 test-armhf-armhf-libvirt      8 xen-boot                   fail pass in 161060

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 161060 like 159418
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 161060 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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-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-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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   56 days
Failing since        160128  2021-03-18 14:36:18 Z   26 days   33 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   25 days   31 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     fail    
 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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 07:04:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 07:04:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110286.210514 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWZZD-0003GM-QG; Wed, 14 Apr 2021 07:04:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110286.210514; Wed, 14 Apr 2021 07:04: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 1lWZZD-0003GF-NK; Wed, 14 Apr 2021 07:04:03 +0000
Received: by outflank-mailman (input) for mailman id 110286;
 Wed, 14 Apr 2021 07:04:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWZZC-0003G9-KL
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 07:04:02 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 18b1592a-4221-42c3-bb14-d094061185f9;
 Wed, 14 Apr 2021 07:04:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 902AEABF6;
 Wed, 14 Apr 2021 07:03: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: 18b1592a-4221-42c3-bb14-d094061185f9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618383839; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=QzdCFqNXJM+Y7HaQG2lsIiWMMIlqEKnnRc2eLr1g0ts=;
	b=MyIi/aRQWnQfQ12JGs93AxdKfU5/aaJKs4BFnfd7JhZFNeB+CsXKGeanVJnFlIj45WRv+C
	RSx5vv3q85dSDFsPtrmEnY/pHyBRf4qaDjspz4WQMuGmRh9OYaDvX7ApiUARXlRoWS/fWL
	4D6B5H842gugP+TagdRhyFeOczSkp9k=
Subject: Re: [PATCH 11/11] Arm/optee: don't open-code xzalloc_flex_struct()
To: Julien Grall <julien@xen.org>
Cc: George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <aad23304-c727-2921-59fe-ab3763f5da03@suse.com>
 <9f95c37b-dc4a-d2cf-01c1-98d2108fae88@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1c9229ac-5491-313e-f053-bc5bee01c3de@suse.com>
Date: Wed, 14 Apr 2021 09:03:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <9f95c37b-dc4a-d2cf-01c1-98d2108fae88@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 13.04.2021 20:19, Julien Grall wrote:
> On 08/04/2021 13:23, Jan Beulich wrote:
>> There is a difference in generated code: xzalloc_bytes() forces
>> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
>> actually don't want it.
> 
> So I think moving to xmalloc_flex_struct() is a pretty good move. But I 
> am actually a bit confused with the argument used.
> 
> Could you provide some details why you think forcing the array to be 
> aligned to the maximum cache line supported (128 bytes on Arm) is wrong?

It is not "wrong" in that sense, but if this is intended it shouldn't
be arranged via use of xmalloc_bytes(). As also pointed out in a
similar discussion on another sub-thread, imo xmalloc_bytes(), being
type-unsafe, should go away altogether mid-term. If individual callers
have specific alignment requirements (which ought to be the exception),
they should explicitly request the needed alignment. If architectures
would prefer all allocations to have certain minimum alignment (e.g.
to avoid cacheline sharing, which was Andrew's argument) or other
"arrangement" (alignment by itself may not be that interesting due to
the bhdr placed ahead of the allocation), it should be the allocator
itself that provides for this, not individual callers.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 07:09:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 07:09:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110291.210525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWZdx-0003Wk-Cy; Wed, 14 Apr 2021 07:08:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110291.210525; Wed, 14 Apr 2021 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 1lWZdx-0003Wd-9k; Wed, 14 Apr 2021 07:08:57 +0000
Received: by outflank-mailman (input) for mailman id 110291;
 Wed, 14 Apr 2021 07:08:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWZdv-0003WY-OA
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 07:08:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3edbe01e-fd5c-449c-86bc-4c78dda82757;
 Wed, 14 Apr 2021 07:08:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 092C6ABF6;
 Wed, 14 Apr 2021 07:08: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: 3edbe01e-fd5c-449c-86bc-4c78dda82757
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618384134; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RiFrZyUPfSjBNn4B9b7ANfZDAeDCAhfH65U6rhgfmbI=;
	b=G4uLbLZXs0Tjk8cckPDDjnzNtZMjKFWxT0lUa9I9A7ZjobfWQx4i3HGSnV+20ghRUYJCxo
	i8Dmi5ZbrbwQaPIaUfKR7bhiZDzpucO2cpHIekgxJzNM0nxA3Ma/tpqV698giuhyjlJANB
	QuKN+eXBnYWGcCGky556p9A02V4Xju8=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>, Rahul Singh <rahul.singh@arm.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ca4bef26-0869-8a56-e96c-04d3b41ffcd6@suse.com>
Date: Wed, 14 Apr 2021 09:08:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 13.04.2021 19:12, Julien Grall wrote:
> On 12/04/2021 11:49, Roger Pau Monné wrote:
>> On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
>>> --- a/xen/include/xen/vpci.h
>>> +++ b/xen/include/xen/vpci.h
>>> @@ -91,6 +91,7 @@ struct vpci {
>>>           /* FIXME: currently there's no support for SR-IOV. */
>>>       } header;
>>>   
>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>>       /* MSI data. */
>>>       struct vpci_msi {
>>>         /* Address. */
>>> @@ -136,6 +137,7 @@ struct vpci {
>>>               struct vpci_arch_msix_entry arch;
>>>           } entries[];
>>>       } *msix;
>>> +#endif /* CONFIG_PCI_MSI_INTERCEPT */
>>
>> Note that here you just remove two pointers from the struct, not that
>> I'm opposed to it, but it's not that much space that's saved anyway.
>> Ie: it might also be fine to just leave them as NULL unconditionally
>> on Arm.
> 
> Can the two pointers be NULL on x86? If not, then I would prefer if they 
> disappear on Arm so there is less chance to make any mistake (such as 
> unconditionally accessing the pointer in common code).

Alternative proposal: How about making it effectively impossible to
de-reference the pointer on Arm by leaving the field there, but having
the struct definition available on non-Arm only?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 07:14:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 07:14:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110297.210538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWZjQ-0004Ox-2J; Wed, 14 Apr 2021 07:14:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110297.210538; Wed, 14 Apr 2021 07:14: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 1lWZjP-0004Oq-UQ; Wed, 14 Apr 2021 07:14:35 +0000
Received: by outflank-mailman (input) for mailman id 110297;
 Wed, 14 Apr 2021 07:14:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWZjO-0004Ol-KI
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 07:14:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 51ee62b7-55f4-4436-94db-68291943ca7b;
 Wed, 14 Apr 2021 07:14:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8EB60AC87;
 Wed, 14 Apr 2021 07:14: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: 51ee62b7-55f4-4436-94db-68291943ca7b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618384472; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=hdWr5/U5TTPs0RLXGmwsFsCGeIhFI3JzXBqGgU9LIFU=;
	b=ali0RsZLwqKGWLkfzCwjtn794SgIaFKWK2MRzorIKkO3rh4YqNuNIjvDmurEAYjKiXjz5/
	yq0N9AdKq10IuntufVJpfndiSdNGU88QolgaDcHKuELNHAZJJdqKRZc99692Xx1NjfC6Vf
	th8T3RcxxBLIWRhV9cgFodC8zkyFGOM=
Subject: Re: [PATCH v3] tools: create libxensaverestore
To: Juergen Gross <jgross@suse.com>, Olaf Hering <olaf@aepfle.de>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20210413172028.29373-1-olaf@aepfle.de>
 <5d483005-c6ca-88f1-0469-dd4a23c6752d@suse.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7c342ee1-c275-5cd2-8129-e384e0bcd827@suse.com>
Date: Wed, 14 Apr 2021 09:14:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <5d483005-c6ca-88f1-0469-dd4a23c6752d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 14.04.2021 07:46, Juergen Gross wrote:
> On 13.04.21 19:20, Olaf Hering wrote:
>> Move all save/restore related code from libxenguest.so into a separate
>> library libxensaverestore.so. The only consumer is libxl-save-helper.
>> There is no need to have the moved code mapped all the time in binaries
>> where libxenguest.so is used.
>>
>> According to size(1) the change is:
>>     text	   data	    bss	    dec	    hex	filename
>>   187183	   4304	     48	 191535	  2ec2f	guest/libxenguest.so.4.15.0
>>
>>   124106	   3376	     48	 127530	  1f22a	guest/libxenguest.so.4.15.0
>>    67841	   1872	      8	  69721	  11059	saverestore/libxensaverestore.so.4.15.0
>>
>> Signed-off-by: Olaf Hering <olaf@aepfle.de>
>> ---
>> v3:
>> - repost in time for 4.16
>> v2:
>> - copy also license header
>> - move xg_nomigrate.c
>> - add size(1) output to commit msg
>> - remove change from libxl_create.c
>>
>>   .gitignore                                    |   2 +
>>   tools/include/xenguest.h                      | 186 ----------------
>>   tools/include/xensaverestore.h                | 208 ++++++++++++++++++
>>   tools/libs/Makefile                           |   1 +
>>   tools/libs/guest/Makefile                     |  11 -
>>   tools/libs/guest/xg_offline_page.c            |   1 -
>>   tools/libs/light/Makefile                     |   4 +-
>>   tools/libs/light/libxl_internal.h             |   1 +
>>   tools/libs/light/libxl_save_helper.c          |   1 +
>>   tools/libs/light/libxl_save_msgs_gen.pl       |   2 +-
>>   tools/libs/saverestore/Makefile               |  38 ++++
>>   .../{guest => saverestore}/xg_nomigrate.c     |   0
>>   .../{guest => saverestore}/xg_save_restore.h  |   2 -
>>   .../{guest => saverestore}/xg_sr_common.c     |   0
>>   .../{guest => saverestore}/xg_sr_common.h     |  12 +
>>   .../{guest => saverestore}/xg_sr_common_x86.c |   0
>>   .../{guest => saverestore}/xg_sr_common_x86.h |   0
>>   .../xg_sr_common_x86_pv.c                     |   0
>>   .../xg_sr_common_x86_pv.h                     |   0
>>   .../{guest => saverestore}/xg_sr_restore.c    |   0
>>   .../xg_sr_restore_x86_hvm.c                   |   0
>>   .../xg_sr_restore_x86_pv.c                    |   0
>>   .../libs/{guest => saverestore}/xg_sr_save.c  |   0
>>   .../xg_sr_save_x86_hvm.c                      |   0
>>   .../xg_sr_save_x86_pv.c                       |   0
>>   .../xg_sr_stream_format.h                     |   0
>>   tools/libs/uselibs.mk                         |   4 +-
>>   27 files changed, 269 insertions(+), 204 deletions(-)
>>   create mode 100644 tools/include/xensaverestore.h
>>   create mode 100644 tools/libs/saverestore/Makefile
>>   rename tools/libs/{guest => saverestore}/xg_nomigrate.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_save_restore.h (98%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_common.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_common.h (98%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_common_x86.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_common_x86.h (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_common_x86_pv.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_common_x86_pv.h (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_restore.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_restore_x86_hvm.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_restore_x86_pv.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_save.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_save_x86_hvm.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_save_x86_pv.c (100%)
>>   rename tools/libs/{guest => saverestore}/xg_sr_stream_format.h (100%)
> 
> What about dropping the "xg_" prefix from the filenames?

To be honest, dropping xg_ here should not even be under question.
sr_ is what I would think should also be dropped, but which may
be controversial, seeing that some (but not all) of the libraries
under tools/libs/ use such redundant (with their directory's name)
prefixes. Besides being longer to read/write, these unnecessary
prefixes hamper name completion mechanisms.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 07:20:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 07:20:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110320.210568 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWZos-0005Xn-2E; Wed, 14 Apr 2021 07:20:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110320.210568; Wed, 14 Apr 2021 07:20:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWZor-0005Xg-VM; Wed, 14 Apr 2021 07:20:13 +0000
Received: by outflank-mailman (input) for mailman id 110320;
 Wed, 14 Apr 2021 07:20:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ow40=JL=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lWZoq-0005XY-Fl
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 07:20:12 +0000
Received: from mo6-p01-ob.smtp.rzone.de (unknown [2a01:238:400:200::2])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7abfd449-1df8-48af-9db5-5522493e3ff6;
 Wed, 14 Apr 2021 07:20:11 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.2 DYNA|AUTH)
 with ESMTPSA id 603b2dx3E7Jx1XU
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Wed, 14 Apr 2021 09:19: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: 7abfd449-1df8-48af-9db5-5522493e3ff6
ARC-Seal: i=1; a=rsa-sha256; t=1618384800; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=N+tS4NLrknEppOkm+Zoe/MMyjWzeo39Sc+MjrOZjc+DtjwSjN7Xtz+EadctWGSPt1s
    2H3xD1yWtAXbKvewiFeqpwvb1cQnX/7KhmplUkvB1gVtcdLCPjcg296W/ZKfZ1vjOUaE
    vQ15ntnnxWx9YRCUGlPlUvw3aKtkGvzdvv1gDE7XpYJXV/vd1sqm2yohjxWwCeEG2ndl
    tYm2IpAC2tjgbXvOp4Cin3CkDMkOaCiIVPXZ2u0x9vIcl5cRYwxPbzZB/wgewl9SoMTg
    spSEZET/vZAUx7OEbyMi+1rb792DCLaqR2T73NGgbGZwZiuOPN0myyoMqVCS4ZRty+eF
    ttAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1618384800;
    s=strato-dkim-0002; d=strato.com;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=Dd2Gix0oisdWq7KeY6Dqs8jNrF0K7WZF5HjPN/OKm0s=;
    b=d48l29suwGGdz7vkld9+N6nD61j2DEjGYGQlf3rLxeZ7V5VhinjDjvCjku/J0jvaoB
    Cyvejgj7icaSS5F346rWJ3h1CpBwqjFR8tu1X7CMY5lts9Mo/RVfYMSxEgs6/DA/mUnw
    pGDDl1QjUBAmgB89pVlvwAqPbVe+8ZkbzWKAYGCCt1Ri/ZZGBcQa7cLYQH6AKbvKtAcr
    CSYP6+JFzKAPrQYTq5mO2ohvRV9Rfm2S7yA5wWpqWYyteBIrc+judtfqo5KO3/GJML6o
    mzZOWCdMJ4qR+6ohvMdC/CqaeYh3MgB90Yw8ZMxrgFQoxo2m5u7QoA5EpA7Nxw23ym8q
    ormQ==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1618384800;
    s=strato-dkim-0002; d=aepfle.de;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=Dd2Gix0oisdWq7KeY6Dqs8jNrF0K7WZF5HjPN/OKm0s=;
    b=g1VSZ651JQAibYCPtRUGaUVwPs/w8EXXceuuXTxH995ypoSZDsaMzgHtpALkJOml87
    2tty8epXD2aVSQCJY+bcv6pHg556fRYEbZ+4hWFuGR+5JO2ZUOFlRpR43ni44Kla7OdM
    HpMmI3CzziXgrJaaYCY6mPi4Ai7decWfDXLbifBCze6QEVkcA2ziFEgpWy/SbewUPXv/
    th0n14pT9TpQPeekt3RysJoEACzngZaOE589EOfPjFqX7HsLSp/AOo7N+Ne+aLLfGYMO
    9lQb9oQsFa+5iXc92eMrBa3a7CKnxYPa9TpKXrx8E29so4pxM8hxTmuDGcNWR+DGEQ3b
    +tDg==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDXdoX8l8pYAcz5OTWeiX"
X-RZG-CLASS-ID: mo00
Date: Wed, 14 Apr 2021 09:19:45 +0200
From: Olaf Hering <olaf@aepfle.de>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, 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>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v3] tools: create libxensaverestore
Message-ID: <20210414091945.138b12f8.olaf@aepfle.de>
In-Reply-To: <5d483005-c6ca-88f1-0469-dd4a23c6752d@suse.com>
References: <20210413172028.29373-1-olaf@aepfle.de>
	<5d483005-c6ca-88f1-0469-dd4a23c6752d@suse.com>
X-Mailer: Claws Mail 2021.03.05 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 boundary="Sig_/hqFfU2YC3spdR8IeP0APbOY"; protocol="application/pgp-signature"

--Sig_/hqFfU2YC3spdR8IeP0APbOY
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Am Wed, 14 Apr 2021 07:46:24 +0200
schrieb Juergen Gross <jgross@suse.com>:

> What about dropping the "xg_" prefix from the filenames?

None of the other moved files where renamed during the move.

But sure, if this the single blocking issue, why not.


Olaf

--Sig_/hqFfU2YC3spdR8IeP0APbOY
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

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

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmB2l5IACgkQ86SN7mm1
DoDZSA//fgD+rsQi1Eb2b1VjdH+7aDvULQFpGaQrtymcOgmFJ60LLeVm7IkTeuPw
6mStOsIfW7m+bYYieKY409wllTODivj8h9SotSsZ79xtmas8ACo79ueP4yRnisAO
Ude+wS01OA5z3PkKBA8PCScJjRS18HzKSnT+7JiOAfNONWdZhy5n5lYkTyOeL9vG
MB+EXVwU5OFsV2QfsyHns6E/7UYBp5a7csD7K3c/O8DHT9qqwZfwpNemJHFl/tvr
lcpPJHJabFiWuI61E2VWouMZUYd/SkkgJPYBAQES4EbCIWPBwtDLuPSz8Z0CL3i+
XXg8uxU69mNJgSCq+jHqysLv31YzRXOt78jNnPsutqN7O6TCNY1bCiTWLISXoDAU
uL7LA/simkUkrdxWtrOr/SQ2h/800Nk8GH32LURykN8LJCk0zzIvoLUpbH7s9DPy
UC1uZYWPEOSv9qG19qEEY2tW/u/uaJpv7MMtUohiBUOo85Yr1sdLWyLKWCniC7qV
X/IVya6NswQOxJhT6u42/CvJ3z6QpgdQMpSP1o24A8yfJdy3VVtIFnMtdo516nQ4
ZBO7o+xIUhSghKT+gD2SKiqd1+YRoT1zNhUXnnbM6OWXd5xK20q4SIKmdmy0mInu
GFx04Z6/mIl4sZKDcWNiickcuF/6M4iqccaImsIfYLBGptvC348=
=g18a
-----END PGP SIGNATURE-----

--Sig_/hqFfU2YC3spdR8IeP0APbOY--


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 08:06:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 08:06:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110339.210586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWaXA-0001dh-Tk; Wed, 14 Apr 2021 08:06:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110339.210586; Wed, 14 Apr 2021 08: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 1lWaXA-0001da-Qb; Wed, 14 Apr 2021 08:06:00 +0000
Received: by outflank-mailman (input) for mailman id 110339;
 Wed, 14 Apr 2021 08:05:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O5rk=JL=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWaX9-0001dV-3p
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 08:05:59 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 36529e68-a244-4389-b87a-6c28204f77a8;
 Wed, 14 Apr 2021 08:05:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36529e68-a244-4389-b87a-6c28204f77a8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618387557;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=GaS/yoBcUppYnWnaJosLv4M67DmKrFpKzkhZKTieNP4=;
  b=MvBAzsi/0QyTeAatMMlr7UTrw0mkpZLUaefpjfSqX/MFqNV77V/Yr83b
   7k81Qxy8uTAUGh7r6dW2Up7hleDUancilF4Q8x++Sy8axyEXrvUVQN9tl
   AP8WPUPu2bi1W2FWO2xle+hA5/2vjwlR55NuIzvEBReAGzj0FhY52mtgF
   s=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: qI3sCWQeWxujgC8S1+OZwG8NyMOgZVCYLb0C+LLLKqo7FO0Mac8WbvMP2gJwoN0DpHwRADdpKm
 RwswCuOl3+i6yEgYgpmqTptqXP6hPjihuPpLYcILKkt1Q8pJOQRBldstubfHVHibc/DPdhNM4k
 hC1SX2X01MYRus+AQl2F4XBzjglJF6EG6i3T3lRfLA001jYvTkEP7iVlLVCT9e4lmy5Eb65VnW
 DUfUKy/U5RFS4cz/znG7oUQf2mi3kG/1uDxaE4AbU/3C/5uegmY3+emN8UYJe0UIGt/5Eupos/
 z5U=
X-SBRS: 5.2
X-MesageID: 43026145
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:gba91K704OtKBjWrqwPXwAfXdLJzesId70hD6mlaTxtJfsuE0/
 2/hfhz726StB89elEF3f+BPbSNWhrnn/FIyKQYILvKZmfbkUSyKoUK1+rf6hnBPwG7yeJHz6
 dndMFFebnNJHx3l9zz7gX9M/tI+qjkzImSie3Tz2hgQGhRAskKgmtEIz2WC0hnADRBbKBYKL
 On+sFFqzC8EE5nC/iTO39tZZmhm+H2
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="43026145"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gY9J5RibPtcF1iAJk82u3bac+PG+BnraYTgCan/2SwIOHF2h4tloEgWPz0IT6HDGEXpC0IYjm0l1G5xHRplrKcjW1bQ346DgqkIe1dTrxygD+3QpDIEUrnnkJQkuTz+JV/JfreSAIcv0JaSSJB9mp58xw7hwJwOdCKsfsV7bTfY8Y1u6vYdvt9RntP/MeylFUszXr2Q/mm21evBVnzk3BpprlPKrm3hD5DpX9VzlLEcqafXNouY/4dadYZ1Wx4bsAto2tuaRwijdTWniNYJVqmT59QovdOK0CXYz2gpQ9H9CGQv1uceDDKl77eoUFHzXssW2EtjlMiOpkeyNKvm7SQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zsHuwwBdQVd57mVYD2uKxQIAG8SOmWmvcteKsfY3zCc=;
 b=ag1WbcXVj8Qh3+qKY4GYuV2KgoqoFhsyvyF6RdR8EwFvqSB3dgMfv3NIzlQjZbomxCxLW6kVf9j9RFtZ0eQTQEI0KMs1/J53hfxVJW8Yugzksb/lLgDRhxMzFEbeCWbI3Iey8jS6pH8GTC1Zuzj/6TwDk3yupjQZka/Yrq3r246PZ9+kLtGSxwLmik8y1rrAaMEJnzsxWp3iFidp6ieLUmCg0p51ZHoWciOfFyTVYWA1BHVecLQmQGdBW2CH3TK3N+XDNNyccD2INF8uZ0KYw/cTlHzWnSaxfqww1/5/t4I8mGg2o94ZRmIo0a75Fsp949gCvOT9HRkMCo4eGfqzXg==
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=zsHuwwBdQVd57mVYD2uKxQIAG8SOmWmvcteKsfY3zCc=;
 b=TbaVjg7/lJBDKvqyrUM+psNDf/xTaTOgFwuGYPCDFPJz8LFwGCVJgo9IUctNfbNiZQvo1RsFhozpYtZThP10UaNwhRQCowu8FrML65/4GZbFF1LC8KnEaLfKf/A1BXIOXfZatFfMaY2WNMz/hE0wOCMIRBrcd4Q6aGRJPGtB1Bw=
Date: Wed, 14 Apr 2021 10:05:47 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
CC: Rahul Singh <rahul.singh@arm.com>, <xen-devel@lists.xenproject.org>,
	<bertrand.marquis@arm.com>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Message-ID: <YHaiW4xX0p6ov2Z9@Air-de-Roger>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
X-ClientProxiedBy: MR1P264CA0030.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 53cc4672-b76f-40b3-86fc-08d8ff1c208f
X-MS-TrafficTypeDiagnostic: DM4PR03MB5968:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB596800FDDC84F0677385A0A18F4E9@DM4PR03MB5968.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 4GCJcqYmNRe+4u56ftag9TACaNHa4MDXsas2tVlEYy9O9pU/wjHzCZE3Q/cOLpz9poTKIEXsfBETMwjrrASs55wlPOSuUKlwMQCvAfkGPGEmzkgnsR0JY+EY9tpxwCaSHMMBYYZuDUgoFvYBqDw5t3C8lcbcYbhxdNjoa1SG+5BABjCUG7LEQunR+HcVu2m+yVYyhzx8CJeY2SZgLAUOLjdm3pFR9SSeodOFyHVkFY+EG/V8lbOdRhzJh6P3ldEY6KxqWiVs6X/yKP9p16b3o0tamN1VsxswAfIrhQr5jzJUjlyDNP36zEiqrC0r1ITW6rKZbbfThNaHwjSMuHFFYuCMd/yjoY+M8Qa77nSe5yxxIoE+Y+lewnGUwZf7pqkV2btWfQDW0o1+mhpazMgyRb1Zoei9vFbpGQ3TCfpWSGVBExL8tM90jtxVnGdIbb8I6g6VTEgWAAHxBJ26FYbJl+gzRvQjVDwk8z1E4mBqXL1n74nJekdeuOEAVKyJH5GmFDZFuudzTTRbT8EsU1wBNUrfdCFBPfvKqbzp7Dio4Z/JOy/rhE98C4vFiYoSst44Kj/dIaUl/9zJsNYJCwkL+rEyC8JKjCNH9T7f0jA+tJc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(346002)(366004)(39860400002)(376002)(396003)(83380400001)(6666004)(9686003)(33716001)(86362001)(85182001)(16526019)(4326008)(8936002)(186003)(316002)(26005)(2906002)(6916009)(8676002)(66476007)(66556008)(53546011)(6496006)(66946007)(5660300002)(478600001)(38100700002)(956004)(54906003)(6486002)(7416002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 53cc4672-b76f-40b3-86fc-08d8ff1c208f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 08:05:54.4300
 (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: TSKmxl3QO7n6lop9GXim9E6w2heOCFRcGVYodZTUcQ5VwBkF6q8XyvDcZVeuS0ahQS3GNgPfBvsbZ9cwCfVgJQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5968
X-OriginatorOrg: citrix.com

On Tue, Apr 13, 2021 at 06:12:10PM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 12/04/2021 11:49, Roger Pau Monné wrote:
> > On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
> > > diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> > > index 705137f8be..1b473502a1 100644
> > > --- a/xen/drivers/passthrough/pci.c
> > > +++ b/xen/drivers/passthrough/pci.c
> > > @@ -1303,12 +1279,15 @@ static int __init setup_dump_pcidevs(void)
> > >   }
> > >   __initcall(setup_dump_pcidevs);
> > > +
> > > +#ifdef CONFIG_PCI_MSI_INTERCEPT
> > >   int iommu_update_ire_from_msi(
> > >       struct msi_desc *msi_desc, struct msi_msg *msg)
> > >   {
> > >       return iommu_intremap
> > >              ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
> > >   }
> > > +#endif
> > 
> > This is not exactly related to MSI intercepts, the IOMMU interrupt
> > remapping table will also be used for interrupt entries for devices
> > being used by Xen directly, where no intercept is required.
> 
> On Arm, this is not tie to the IOMMU. Instead, this handled is a separate
> MSI controller (such as the ITS).
> 
> > 
> > And then you also want to gate the hook from iommu_ops itself with
> > CONFIG_PCI_MSI_INTERCEPT, if we want to got this route.
> 
> 
> All the callers are in the x86 code. So how about moving the function in an
> x86 specific file?

Yes, that seems fine. Just place it in asm-x86/iommu.h. I wonder why
update_ire_from_msi wasn't moved when the rest of the x86 specific
functions where moved there. Was there an aim to use that in other
arches?

The hook in iommu_ops also need to be moved inside the x86 region.
Please do this iommu change in a separate patch.

> > > diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
> > > index 9f5b5d52e1..a6b12717b1 100644
> > > --- a/xen/include/xen/vpci.h
> > > +++ b/xen/include/xen/vpci.h
> > > @@ -91,6 +91,7 @@ struct vpci {
> > >           /* FIXME: currently there's no support for SR-IOV. */
> > >       } header;
> > > +#ifdef CONFIG_PCI_MSI_INTERCEPT
> > >       /* MSI data. */
> > >       struct vpci_msi {
> > >         /* Address. */
> > > @@ -136,6 +137,7 @@ struct vpci {
> > >               struct vpci_arch_msix_entry arch;
> > >           } entries[];
> > >       } *msix;
> > > +#endif /* CONFIG_PCI_MSI_INTERCEPT */
> > 
> > Note that here you just remove two pointers from the struct, not that
> > I'm opposed to it, but it's not that much space that's saved anyway.
> > Ie: it might also be fine to just leave them as NULL unconditionally
> > on Arm.
> 
> Can the two pointers be NULL on x86?

Yes, they can be NULL on x86.

> If not, then I would prefer if they
> disappear on Arm so there is less chance to make any mistake (such as
> unconditionally accessing the pointer in common code).

Any access to them needs to be protected anyway, or else we would be
in trouble. I don't think Xen ever accesses them based on the PCI
capabilities of the device.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 08:13:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 08:13:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110345.210598 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWadt-0002Wr-QE; Wed, 14 Apr 2021 08:12:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110345.210598; Wed, 14 Apr 2021 08:12: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 1lWadt-0002Wk-My; Wed, 14 Apr 2021 08:12:57 +0000
Received: by outflank-mailman (input) for mailman id 110345;
 Wed, 14 Apr 2021 08:12:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWads-0002Wf-VR
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 08:12:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a972c735-38d8-494d-84f7-7192c2df983d;
 Wed, 14 Apr 2021 08:12:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8A311AF23;
 Wed, 14 Apr 2021 08:12: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: a972c735-38d8-494d-84f7-7192c2df983d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618387973; 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=xGgUMLhYxbSWQ+m5eciReqTnaSl48J+ci2xi6DgcSqY=;
	b=sFM0PZSjUor5nF3b5rsVApRwkdkcIp4FvYFExfgY5FcwdlgRr5KiH2BUw7C5ludmJd9byD
	Mv/TNeu4ZqRYhuCiMohCNFmTPmkHgyIOA9rOqpjVwBx7AO+FoSfo74LMHIy4AGWiNOfuf3
	pfijwxyW6afu6REcuwUiR1Z3c6IvzBg=
Subject: Re: x86: memset() / clear_page() / page scrubbing
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
 <21c00073-86a8-a040-fa40-e99e2fb434eb@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <213c3706-5296-4673-dae2-12f9056ed73b@suse.com>
Date: Wed, 14 Apr 2021 10:12:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <21c00073-86a8-a040-fa40-e99e2fb434eb@citrix.com>
Content-Type: multipart/mixed;
 boundary="------------E9A009BC66E76B4D3F1D9EB6"
Content-Language: en-US

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

On 13.04.2021 15:17, Andrew Cooper wrote:
> Do you have actual numbers from these experiments?

Attached is the collected raw output from a number of systems.

>  I've seen your patch
> from the thread, but at a minimum its missing some hunks adding new
> CPUID bits.

It's not missing hunks - these additions are in a prereq patch that
I meant to post together with whatever this analysis would lead to.
If you think I should submit the prereqs ahead of time, I can of
course do so.

>  I do worry however whether the testing is likely to be
> realistic for non-idle scenarios.

Of course it's not going to be - in non-idle scenarios we'll always
be somewhere in the middle. Therefore I wanted to have numbers at
the edges (hot and cold cache respectively), as any other numbers
are going to be much harder to obtain in a way that they would
actually be meaningful (and hence reasonably stable).

> It is very little surprise that AVX-512 on Skylake is poor.  The
> frequency hit from using %zmm is staggering.  IceLake is expected to be
> better, but almost certainly won't exceed REP MOVSB, which is optimised
> in microcode for the data width of the CPU.

Right, much like AVX has improved but didn't get anywhere near
REP MOVS.

> For memset(), please don't move in the direction of memcpy().  memcpy()
> is problematic because the common case is likely to be a multiple of 8
> bytes, meaning that we feed 0 into the REP MOVSB, and this a hit wanting
> avoiding.

And you say this despite me having pointed out that REP STOSL may
be faster in a number of cases? Or do you mean to suggest we should
branch around the trailing REP {MOV,STO}SB?

>  The "Fast Zero length $FOO" bits on future parts indicate
> when passing %ecx=0 is likely to be faster than branching around the
> invocation.

IOW down the road we could use alternatives patching to remove such
branches. But this of course is only if we don't end up using
exclusively REP MOVSB / REP STOSB there anyway, as you seem to be
suggesting ...

> With ERMS/etc, our logic should be a REP MOVSB/STOSB only, without any
> cleverness about larger word sizes.  The Linux forms do this fairly well
> already, and probably better than Xen, although there might be some room
> for improvement IMO.

... here.

As to the Linux implementations - for memcpy_erms() I don't think
I see any room for improvement in the function itself. We could do
alternatives patching somewhat differently (and I probably would).
For memset_erms() the tiny bit of improvement over Linux'es code
that I would see is to avoid the partial register access when
loading %al. But to be honest - in both cases I wouldn't have
bothered looking at their code anyway, if you hadn't pointed me
there.

> It is worth nothing that we have extra variations of memset/memcpy where
> __builtin_memcpy() gets expanded inline, and the result is a
> compiler-chosen sequence, and doesn't hit any of our optimised
> sequences.  I'm not sure what to do about this, because there is surely
> a larger win from the cases which can be turned into a single mov, or an
> elided store/copy, than using a potentially inefficient sequence in the
> rare cases.  Maybe there is room for a fine-tuning option to say "just
> call memset() if you're going to expand it inline".

You mean "just call memset() instead of expanding it inline"?

If the inline expansion is merely REP STOS, I'm not sure we'd
actually gain anything from keeping the compiler from expanding it
inline. But if the inline construct was more complicated (as I
observe e.g. in map_vcpu_info() with gcc 10), then it would likely
be nice if there was such a control. I'll take note to see if I
can find anything.

But this isn't relevant for {clear,copy}_page().

> For all set/copy operations, whether you want non-temporal or not
> depends on when/where the lines are next going to be consumed.  Page
> scrubbing in idle context is the only example I can think of where we
> aren't plausibly going to consume the destination imminently.  Even
> clear/copy page in a hypercall doesn't want to be non-temporal, because
> chances are good that the vcpu is going to touch the page on return.

I'm afraid the situation isn't as black-and-white. Take HAP or
IOMMU page table allocations, for example: They need to clear the
full page, yes. But often this is just to then insert one single
entry, i.e. re-use exactly one of the cache lines. Or take initial
population of guest RAM: The larger the guest, the less likely it
is for every individual page to get accessed again before its
contents get evicted from the caches. Judging from what Ankur said,
once we get to around L3 capacity, MOVNT / CLZERO may be preferable
there.

I think in cases where we don't know how the page is going to be
used subsequently, we ought to favor latency over cache pollution
avoidance. But in cases where we know the subsequent usage pattern,
we may want to direct scrubbing / zeroing accordingly. Yet of
course it's not very helpful that there's no way to avoid
polluting caches and still have reasonably low latency, so using
some heuristics may be unavoidable.

And of course another goal of mine would be to avoid double zeroing
of pages: When scrubbing uses clear_page() anyway, there's no point
in the caller then calling clear_page() again. IMO, just like we
have xzalloc(), we should also have MEMF_zero. Internally the page
allocator can know whether a page was already scrubbed, and it
does know for sure whether scrubbing means zeroing.

Jan

--------------E9A009BC66E76B4D3F1D9EB6
Content-Type: text/plain; charset=UTF-8;
 name="xen-clear-page.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="xen-clear-page.txt"

QW9ydXMgKFNreWxha2UpOgoKKFhFTikgZXJtcz0xIGZzcm09MCBmenJtPTAgZnNycz0wIGZz
cmNzPTAgbDFkPTMyayBsMj0xMDI0awooWEVOKSBMMSB3L28gZmx1c2g6CihYRU4pICBwcmU9
NWFhIHNzZTI9MTdjOCBwb3N0PTQ2NgooWEVOKSAgcHJlPTMwMiBzdG9zYj01NDQgcG9zdD02
ZjIKKFhFTikgIHByZT0yZjYgc3Rvc2w9NGRlIHBvc3Q9NTAwCihYRU4pICBwcmU9MzA4IHN0
b3NxPTRiYyBwb3N0PTRiNgooWEVOKSAgcHJlPTMwMCBhdng9MTRkNCBwb3N0PTJmYQooWEVO
KSAgcHJlPTJlYSBhdng1MTI9MTFjYSBwb3N0PTMwMAooWEVOKSAgcHJlPTMyYyBzc2UyPTE2
MjAgcG9zdD0zMzAKKFhFTikgIHByZT0zMjYgc3Rvc2I9NTVhIHBvc3Q9NGIwCihYRU4pICBw
cmU9MzMyIHN0b3NsPTRmMiBwb3N0PTRhMgooWEVOKSAgcHJlPTMzNiBzdG9zcT00ZWMgcG9z
dD00N2MKKFhFTikgIHByZT0zMzIgYXZ4PTE0ZjQgcG9zdD0zMjQKKFhFTikgIHByZT0zYTIg
YXZ4NTEyPTEyMDQgcG9zdD0zNWMKKFhFTikgIHByZT0zMjIgc3NlMj0xNjA2IHBvc3Q9MzMw
CihYRU4pICBwcmU9MzI0IHN0b3NiPTU2NCBwb3N0PTQ2NgooWEVOKSAgcHJlPTMxZSBzdG9z
bD00ZjggcG9zdD00OWMKKFhFTikgIHByZT0zMjIgc3Rvc3E9NGZhIHBvc3Q9M2UwCihYRU4p
ICBwcmU9MzQwIGF2eD0xNGY2IHBvc3Q9MzI4CihYRU4pICBwcmU9MzI2IGF2eDUxMj0xMjBj
IHBvc3Q9MzIyCihYRU4pIEwxIHcvIGZsdXNoOgooWEVOKSAgcHJlPTJlNCBzc2UyPWMwMCBw
b3N0PTNlNgooWEVOKSAgcHJlPTM0YyBzdG9zYj05MTYgcG9zdD03MjIKKFhFTikgIHByZT0z
NTggc3Rvc2w9OTA4IHBvc3Q9N2I0CihYRU4pICBwcmU9MzYwIHN0b3NxPWE3MiBwb3N0PTcz
MgooWEVOKSAgcHJlPTMzZSBhdng9YjNjIHBvc3Q9MzNjCihYRU4pICBwcmU9MzQ4IGF2eDUx
Mj1hMzggcG9zdD0zNDIKKFhFTikgIHByZT0zNDIgc3NlMj1jMjQgcG9zdD0zM2UKKFhFTikg
IHByZT0zNGUgc3Rvc2I9OTk4IHBvc3Q9NzdjCihYRU4pICBwcmU9MzUyIHN0b3NsPTkxMCBw
b3N0PTZlNAooWEVOKSAgcHJlPTM1NiBzdG9zcT05NGMgcG9zdD03NGEKKFhFTikgIHByZT0z
MzQgYXZ4PWI0NCBwb3N0PTMzMgooWEVOKSAgcHJlPTM2ZSBhdng1MTI9YmNhIHBvc3Q9MzM2
CihYRU4pICBwcmU9MzU2IHNzZTI9YzFhIHBvc3Q9MzM2CihYRU4pICBwcmU9MzVjIHN0b3Ni
PTkyYSBwb3N0PTZmMAooWEVOKSAgcHJlPTMyZSBzdG9zbD05NzAgcG9zdD04NjQKKFhFTikg
IHByZT0zNTggc3Rvc3E9OTRjIHBvc3Q9NzU2CihYRU4pICBwcmU9MzQ0IGF2eD1iNGMgcG9z
dD0zMjYKKFhFTikgIHByZT0zNGMgYXZ4NTEyPWE1YyBwb3N0PTM3MgooWEVOKSBMMiB3L28g
Zmx1c2g6CihYRU4pICBwcmU9MTVmN2Mgc3NlMj0yZWZmOCBwb3N0PWMyNzIKKFhFTikgIHBy
ZT1jZjhjIHN0b3NiPWNiZjYgcG9zdD1jNmE0CihYRU4pICBwcmU9Y2U1YyBzdG9zbD1jYzdl
IHBvc3Q9YzZiYwooWEVOKSAgcHJlPWQzYjYgc3Rvc3E9N2Y1ZTYgcG9zdD1kODk4CihYRU4p
ICBwcmU9Y2Y1NiBhdng9MmQ3ZGUgcG9zdD1iZTFhCihYRU4pICBwcmU9Y2ZlNiBhdng1MTI9
MzQ5YzYgcG9zdD1jYWY4CihYRU4pICBwcmU9ZGNlZSBzc2UyPTJmOTNlIHBvc3Q9Yzk3ZQoo
WEVOKSAgcHJlPWRkNmUgc3Rvc2I9ZDAwMCBwb3N0PWQxMDIKKFhFTikgIHByZT1kYWQwIHN0
b3NsPWQwMzQgcG9zdD1kMTJlCihYRU4pICBwcmU9ZGIwMCBzdG9zcT1kMGVlIHBvc3Q9ZDBi
MgooWEVOKSAgcHJlPWRhYmMgYXZ4PTJkZWM4IHBvc3Q9YzgzMAooWEVOKSAgcHJlPWRjMDQg
YXZ4NTEyPTJkYmJlIHBvc3Q9YzhhYQooWEVOKSAgcHJlPWRiNzQgc3NlMj0yZjhlNiBwb3N0
PWM4OWUKKFhFTikgIHByZT1kZDRjIHN0b3NiPWQwYTYgcG9zdD1kMTZjCihYRU4pICBwcmU9
ZGE2YyBzdG9zbD1jZmQwIHBvc3Q9ZDM4OAooWEVOKSAgcHJlPWQ4Yzggc3Rvc3E9ZDA1NCBw
b3N0PWQwYjQKKFhFTikgIHByZT1kYjJlIGF2eD0yZGU3OCBwb3N0PWNiM2MKKFhFTikgIHBy
ZT1kOWVhIGF2eDUxMj0yZDlkNiBwb3N0PWM4ZjAKKFhFTikgTDIgdy8gZmx1c2g6CihYRU4p
ICBwcmU9MTYwMDAgc3NlMj0xNmNmMiBwb3N0PWJmYzQKKFhFTikgIHByZT0xNjA0YyBzdG9z
Yj0xMmFiOCBwb3N0PWM2NmMKKFhFTikgIHByZT0xNjA1NCBzdG9zbD0xMjYyNCBwb3N0PWM3
YTYKKFhFTikgIHByZT0xNjAwOCBzdG9zcT0xMjdiNCBwb3N0PWM1NGUKKFhFTikgIHByZT0x
NWY3YyBhdng9MTVhOTggcG9zdD1iZDUwCihYRU4pICBwcmU9MTYwNDYgYXZ4NTEyPTE1NzYw
IHBvc3Q9MTNjNTIKKFhFTikgIHByZT0xNWY4YSBzc2UyPTE2ZGMwIHBvc3Q9YmZiOAooWEVO
KSAgcHJlPTE1ZmI0IHN0b3NiPTEyOTNhIHBvc3Q9YzZkYQooWEVOKSAgcHJlPTE1ZjdjIHN0
b3NsPTEyNjcyIHBvc3Q9YzU3NAooWEVOKSAgcHJlPTE1ZmVlIHN0b3NxPTEyNDVlIHBvc3Q9
YzZmZQooWEVOKSAgcHJlPTE1ZmM4IGF2eD0xNWFhZSBwb3N0PWMwMWMKKFhFTikgIHByZT0x
NjA4YyBhdng1MTI9MWNhMzIgcG9zdD1jOWNlCihYRU4pICBwcmU9MTVmYmEgc3NlMj0xNmNk
YyBwb3N0PWMwNzYKKFhFTikgIHByZT0xNWZmZSBzdG9zYj0xMjk5MiBwb3N0PWM5YjAKKFhF
TikgIHByZT0xNjA1MCBzdG9zbD0xMjkwYSBwb3N0PWM1M2UKKFhFTikgIHByZT0xNjAwMiBz
dG9zcT0xMjlhNiBwb3N0PWM1NDAKKFhFTikgIHByZT0xNWY5OCBhdng9MTU5ZWUgcG9zdD1i
YzUwCihYRU4pICBwcmU9MTVmY2EgYXZ4NTEyPTE1OWJjIHBvc3Q9MTNkOWEKCgpSb21lOgoK
KFhFTikgZXJtcz0wIGZzcm09MCBmenJtPTAgZnNycz0wIGZzcmNzPTAgbDFkPTMyayBsMj01
MTJrCihYRU4pIEwxIHcvbyBmbHVzaDoKKFhFTikgIHByZT00YzQgc3NlMj1lZWMgcG9zdD0z
ODQKKFhFTikgIHByZT0zNWMgc3Rvc2I9MjMwIHBvc3Q9Mzk4CihYRU4pICBwcmU9MzVjIHN0
b3NsPTIzMCBwb3N0PTNkNAooWEVOKSAgcHJlPTM1YyBzdG9zcT0yNTggcG9zdD00MTAKKFhF
TikgIHByZT0zNzAgYXZ4PWRkNCBwb3N0PTM3MAooWEVOKSAgcHJlPTM3MCBjbHplcm89NzU4
IHBvc3Q9MzVjCihYRU4pICBwcmU9MzVjIHNzZTI9ZTEwIHBvc3Q9MzcwCihYRU4pICBwcmU9
MzVjIHN0b3NiPTIxYyBwb3N0PTM3MAooWEVOKSAgcHJlPTM1YyBzdG9zbD0yMzAgcG9zdD0z
ZmMKKFhFTikgIHByZT0zNWMgc3Rvc3E9MjFjIHBvc3Q9M2FjCihYRU4pICBwcmU9MzVjIGF2
eD1kOTggcG9zdD0zNWMKKFhFTikgIHByZT0zNWMgY2x6ZXJvPTc1OCBwb3N0PTM1YwooWEVO
KSAgcHJlPTM1YyBzc2UyPWUyNCBwb3N0PTM1YwooWEVOKSAgcHJlPTM1YyBzdG9zYj0yMWMg
cG9zdD0zZDQKKFhFTikgIHByZT0zNWMgc3Rvc2w9MjFjIHBvc3Q9M2Q0CihYRU4pICBwcmU9
MzcwIHN0b3NxPTIxYyBwb3N0PTNhYwooWEVOKSAgcHJlPTM1YyBhdng9ZDg0IHBvc3Q9MzVj
CihYRU4pICBwcmU9MzVjIGNsemVybz03NTggcG9zdD0zNzAKKFhFTikgTDEgdy8gZmx1c2g6
CihYRU4pICBwcmU9NDM4IHNzZTI9YTUwIHBvc3Q9MzVjCihYRU4pICBwcmU9NDM4IHN0b3Ni
PWQzNCBwb3N0PTM5OAooWEVOKSAgcHJlPTQzOCBzdG9zbD1kMGMgcG9zdD0zODQKKFhFTikg
IHByZT00Mzggc3Rvc3E9YWEwIHBvc3Q9Mzg0CihYRU4pICBwcmU9NDRjIGF2eD05MjQgcG9z
dD0zNzAKKFhFTikgIHByZT00NGMgY2x6ZXJvPTVmMCBwb3N0PTM3MAooWEVOKSAgcHJlPTQz
OCBzc2UyPWE1MCBwb3N0PTM1YwooWEVOKSAgcHJlPTQzOCBzdG9zYj1jMzAgcG9zdD0zOTgK
KFhFTikgIHByZT00NGMgc3Rvc2w9ZDIwIHBvc3Q9M2MwCihYRU4pICBwcmU9NDM4IHN0b3Nx
PWIwNCBwb3N0PTM3MAooWEVOKSAgcHJlPTQzOCBhdng9OTM4IHBvc3Q9MzcwCihYRU4pICBw
cmU9NDRjIGNsemVybz02ZjQgcG9zdD0zNWMKKFhFTikgIHByZT00Mzggc3NlMj1hM2MgcG9z
dD0zNWMKKFhFTikgIHByZT00NGMgc3Rvc2I9YWRjIHBvc3Q9Mzg0CihYRU4pICBwcmU9NDM4
IHN0b3NsPWFhMCBwb3N0PTNjMAooWEVOKSAgcHJlPTQ0YyBzdG9zcT1hM2MgcG9zdD0zNzAK
KFhFTikgIHByZT00MzggYXZ4PTkyNCBwb3N0PTM1YwooWEVOKSAgcHJlPTQzOCBjbHplcm89
NWM4IHBvc3Q9MzcwCihYRU4pIEwyIHcvbyBmbHVzaDoKKFhFTikgIHByZT02NzBjIHNzZTI9
ZmU4OCBwb3N0PTEwOGVjCihYRU4pICBwcmU9NmUyOCBzdG9zYj0yNGNjIHBvc3Q9MTQ1MDAK
KFhFTikgIHByZT03MTIwIHN0b3NsPTI0NjggcG9zdD0xNGQwYwooWEVOKSAgcHJlPTc0OTAg
c3Rvc3E9MjQ3YyBwb3N0PTE1MDdjCihYRU4pICBwcmU9N2E2YyBhdng9ZmM2YyBwb3N0PTEx
OWNjCihYRU4pICBwcmU9NzJiMCBjbHplcm89NzNmMCBwb3N0PTExOGI0CihYRU4pICBwcmU9
NzE4NCBzc2UyPWZkZmMgcG9zdD0xMWUyYwooWEVOKSAgcHJlPTZmMDQgc3Rvc2I9MjQ3YyBw
b3N0PTE0YjkwCihYRU4pICBwcmU9NzI4OCBzdG9zbD0yNTMwIHBvc3Q9MTUwNTQKKFhFTikg
IHByZT03NWQwIHN0b3NxPTI0YTQgcG9zdD0xNWIzMAooWEVOKSAgcHJlPTZmZTAgYXZ4PWZj
OTQgcG9zdD0xMTg2NAooWEVOKSAgcHJlPTcxOTggY2x6ZXJvPTc0Y2MgcG9zdD0xMWQ1MAoo
WEVOKSAgcHJlPTc1MWMgc3NlMj1mZGZjIHBvc3Q9MTIxYjAKKFhFTikgIHByZT03MzUwIHN0
b3NiPTI0Y2MgcG9zdD0xNTM2MAooWEVOKSAgcHJlPTZlNjQgc3Rvc2w9MjRiOCBwb3N0PTE0
ZjAwCihYRU4pICBwcmU9NzczOCBzdG9zcT0yNDQwIHBvc3Q9MTRhOGMKKFhFTikgIHByZT02
ZjkwIGF2eD1mY2Y4IHBvc3Q9MTFiYzAKKFhFTikgIHByZT03MjljIGNsemVybz03NDdjIHBv
c3Q9MTFhZTQKKFhFTikgTDIgdy8gZmx1c2g6CihYRU4pICBwcmU9NTgwYyBzc2UyPWE4NzAg
cG9zdD0xMDU1NAooWEVOKSAgcHJlPTU3NDQgc3Rvc2I9OWM3YyBwb3N0PTE1MmFjCihYRU4p
ICBwcmU9NTkyNCBzdG9zbD05YTI0IHBvc3Q9MTVjNDgKKFhFTikgIHByZT01NmNjIHN0b3Nx
PTlkZjggcG9zdD0xNTdmYwooWEVOKSAgcHJlPTU4OTggYXZ4PWE2NDAgcG9zdD0xMDMzOAoo
WEVOKSAgcHJlPTU5NzQgY2x6ZXJvPTY5ZGMgcG9zdD0xMGRlYwooWEVOKSAgcHJlPTViZTAg
c3NlMj1hODcwIHBvc3Q9MTBiYTgKKFhFTikgIHByZT01N2E4IHN0b3NiPTllZDQgcG9zdD0x
NWE0MAooWEVOKSAgcHJlPTU5NGMgc3Rvc2w9OWQ2YyBwb3N0PTE2MTk4CihYRU4pICBwcmU9
NTQzOCBzdG9zcT05ZGQwIHBvc3Q9MTU4NjAKKFhFTikgIHByZT01N2QwIGF2eD1hNDljIHBv
c3Q9MTBiODAKKFhFTikgIHByZT01MmJjIGNsemVybz02OWRjIHBvc3Q9ZjkzOAooWEVOKSAg
cHJlPTU2ZTAgc3NlMj1hYjU0IHBvc3Q9MTBiMDgKKFhFTikgIHByZT01NjU0IHN0b3NiPTlm
ODggcG9zdD0xNTg0YwooWEVOKSAgcHJlPTU2NTQgc3Rvc2w9YTAxNCBwb3N0PTE0YWI0CihY
RU4pICBwcmU9NThjMCBzdG9zcT05YTM4IHBvc3Q9MTVkYzQKKFhFTikgIHByZT01N2E4IGF2
eD1hNjQwIHBvc3Q9MTBjMGMKKFhFTikgIHByZT01NjE4IGNsemVybz02OWRjIHBvc3Q9MTA1
NTQKCgpQcmVjaXNpb24gNzgxMCAoSGFzd2VsbCk6CgooWEVOKSBlcm1zPTEgZnNybT0wIGZ6
cm09MCBmc3JzPTAgZnNyY3M9MCBsMWQ9MzJrIGwyPTI1NmsKKFhFTikgTDEgdy9vIGZsdXNo
OgooWEVOKSAgcHJlPTYxOCBzc2UyPTEzMjQgcG9zdD00MWMKKFhFTikgIHByZT0zYzQgc3Rv
c2I9NmZjIHBvc3Q9NzRjCihYRU4pICBwcmU9M2FjIHN0b3NsPTZjNCBwb3N0PTcyOAooWEVO
KSAgcHJlPTM5YyBzdG9zcT02YjAgcG9zdD03MjAKKFhFTikgIHByZT0zYWMgYXZ4PWRmNCBw
b3N0PTNlNAooWEVOKSAgcHJlPTM4YyBzc2UyPWY0YyBwb3N0PTNhOAooWEVOKSAgcHJlPTM4
YyBzdG9zYj02ZTQgcG9zdD03NDgKKFhFTikgIHByZT0zOTAgc3Rvc2w9Njk4IHBvc3Q9NmY4
CihYRU4pICBwcmU9MzgwIHN0b3NxPTZhYyBwb3N0PTZlYwooWEVOKSAgcHJlPTNhNCBhdng9
ZTI4IHBvc3Q9M2E4CihYRU4pICBwcmU9Mzg0IHNzZTI9ZjUwIHBvc3Q9Mzc0CihYRU4pICBw
cmU9Mzk4IHN0b3NiPTZlYyBwb3N0PTZkNAooWEVOKSAgcHJlPTM4MCBzdG9zbD02OWMgcG9z
dD03MDAKKFhFTikgIHByZT0zYjggc3Rvc3E9Njk4IHBvc3Q9NmNjCihYRU4pICBwcmU9Mzk0
IGF2eD1lNjQgcG9zdD0zOTAKKFhFTikgTDEgdy8gZmx1c2g6CihYRU4pICBwcmU9NDljIHNz
ZTI9MTA5YyBwb3N0PTM4MAooWEVOKSAgcHJlPTQ4MCBzdG9zYj0xYzA4IHBvc3Q9ODY0CihY
RU4pICBwcmU9NGQwIHN0b3NsPTFiYzggcG9zdD04MjAKKFhFTikgIHByZT00ODggc3Rvc3E9
MWJiOCBwb3N0PTgzNAooWEVOKSAgcHJlPTNhYyBhdng9ZGRjIHBvc3Q9Mzg4CihYRU4pICBw
cmU9NDk4IHNzZTI9ZWY4IHBvc3Q9Mzg0CihYRU4pICBwcmU9NDc0IHN0b3NiPTFjYjAgcG9z
dD04NWMKKFhFTikgIHByZT00YTQgc3Rvc2w9MWJjNCBwb3N0PTg1YwooWEVOKSAgcHJlPTQ3
YyBzdG9zcT0xYmNjIHBvc3Q9ODI4CihYRU4pICBwcmU9NDgwIGF2eD1kZjAgcG9zdD0zOGMK
KFhFTikgIHByZT00OTggc3NlMj1mMDggcG9zdD0zNzAKKFhFTikgIHByZT00ODAgc3Rvc2I9
MWVkNCBwb3N0PTg4MAooWEVOKSAgcHJlPTQ3YyBzdG9zbD0xYmIwIHBvc3Q9ODQ4CihYRU4p
ICBwcmU9NDhjIHN0b3NxPTFiYTAgcG9zdD04NTAKKFhFTikgIHByZT00ODggYXZ4PWRlNCBw
b3N0PTM5NAooWEVOKSBMMiB3L28gZmx1c2g6CihYRU4pICBwcmU9NjQ1MCBzc2UyPTdmNzgg
cG9zdD0zOWM4CihYRU4pICBwcmU9NTQ3OCBzdG9zYj0zYWI4IHBvc3Q9NGI3NAooWEVOKSAg
cHJlPTRmNjggc3Rvc2w9Mzk3OCBwb3N0PTRkODQKKFhFTikgIHByZT00Y2EwIHN0b3NxPTM5
NWMgcG9zdD00ZTYwCihYRU4pICBwcmU9NTJiNCBhdng9Nzk3NCBwb3N0PTNjODQKKFhFTikg
IHByZT00ZmE4IHNzZTI9N2YyNCBwb3N0PTNhODAKKFhFTikgIHByZT01MTE4IHN0b3NiPTNh
ZDggcG9zdD00ZTE4CihYRU4pICBwcmU9NGRmMCBzdG9zbD0zOTA4IHBvc3Q9NGNlOAooWEVO
KSAgcHJlPTUwMjggc3Rvc3E9Mzk2YyBwb3N0PTRlZjAKKFhFTikgIHByZT01MTEwIGF2eD03
OTY4IHBvc3Q9M2JhNAooWEVOKSAgcHJlPTUwODggc3NlMj03ZjIwIHBvc3Q9M2IxYwooWEVO
KSAgcHJlPTRkYjggc3Rvc2I9MzkwOCBwb3N0PTRlYzQKKFhFTikgIHByZT00ZWI0IHN0b3Ns
PTNhMDAgcG9zdD00YzAwCihYRU4pICBwcmU9NGY5MCBzdG9zcT0zOTcwIHBvc3Q9NGQ5OAoo
WEVOKSAgcHJlPTRmM2MgYXZ4PTc5NTAgcG9zdD0zYTc4CihYRU4pIEwyIHcvIGZsdXNoOgoo
WEVOKSAgcHJlPTYzODAgc3NlMj03ODZjIHBvc3Q9Mzk0OAooWEVOKSAgcHJlPTY0MDAgc3Rv
c2I9MTA0NzggcG9zdD00NzQwCihYRU4pICBwcmU9NjQzMCBzdG9zbD0xMDU2NCBwb3N0PTQ2
Y2MKKFhFTikgIHByZT02NDMwIHN0b3NxPTEwNjA4IHBvc3Q9NDZjNAooWEVOKSAgcHJlPTY0
OTggYXZ4PTc1NDggcG9zdD0zOTc4CihYRU4pICBwcmU9NjQxOCBzc2UyPTc4NjggcG9zdD0z
OTM0CihYRU4pICBwcmU9NjM1MCBzdG9zYj0xMDk4OCBwb3N0PTQ3OTgKKFhFTikgIHByZT02
NDEwIHN0b3NsPTEwNTA4IHBvc3Q9NDY3OAooWEVOKSAgcHJlPTYzZGMgc3Rvc3E9MTA1YTgg
cG9zdD00NmZjCihYRU4pICBwcmU9NjUwMCBhdng9NzU2NCBwb3N0PTM5ZDAKKFhFTikgIHBy
ZT02M2IwIHNzZTI9Nzg5MCBwb3N0PTM5N2MKKFhFTikgIHByZT02NDhjIHN0b3NiPTEwODY4
IHBvc3Q9NDdmMAooWEVOKSAgcHJlPTY0YTAgc3Rvc2w9MTA2ZjQgcG9zdD00NmI0CihYRU4p
ICBwcmU9NjQ2YyBzdG9zcT0xMDQ2OCBwb3N0PTQ3MzQKKFhFTikgIHByZT02M2VjIGF2eD03
NWM0IHBvc3Q9MzkzOAoKCkRpbmFyOgoKKFhFTikgZXJtcz0wIGZzcm09MCBmenJtPTAgZnNy
cz0wIGZzcmNzPTAgbDFkPTE2ayBsMj0yMDQ4awooWEVOKSBMMSB3L28gZmx1c2g6CihYRU4p
ICBwcmU9N2U2IHNzZTI9MWMwNiBwb3N0PTc5ZAooWEVOKSAgcHJlPTcwYSBzdG9zYj02Njgg
cG9zdD04NGYKKFhFTikgIHByZT02ZGMgc3Rvc2w9Njc2IHBvc3Q9ODNmCihYRU4pICBwcmU9
NmNmIHN0b3NxPTY1YiBwb3N0PTg3MgooWEVOKSAgcHJlPTZlMCBhdng9MWE4NCBwb3N0PTcw
NgooWEVOKSAgcHJlPTcwOSBzc2UyPTE5YWEgcG9zdD02Y2UKKFhFTikgIHByZT02Yjcgc3Rv
c2I9NjAxIHBvc3Q9ODQ0CihYRU4pICBwcmU9NmU4IHN0b3NsPTYxMyBwb3N0PTg1ZQooWEVO
KSAgcHJlPTZhMSBzdG9zcT02MTQgcG9zdD04MjQKKFhFTikgIHByZT02YjkgYXZ4PTFhNjYg
cG9zdD02OTUKKFhFTikgIHByZT02ZTIgc3NlMj0xOTliIHBvc3Q9NmFmCihYRU4pICBwcmU9
NmU3IHN0b3NiPTYwMiBwb3N0PTgzOQooWEVOKSAgcHJlPTZjYyBzdG9zbD02MWIgcG9zdD04
NDUKKFhFTikgIHByZT02YWQgc3Rvc3E9NjA3IHBvc3Q9ODE1CihYRU4pICBwcmU9NmFjIGF2
eD0xYTgxIHBvc3Q9NjkzCihYRU4pIEwxIHcvIGZsdXNoOgooWEVOKSAgcHJlPTgwNCBzc2Uy
PWM0OCBwb3N0PTZkYQooWEVOKSAgcHJlPTdjYSBzdG9zYj1lMTYgcG9zdD04MmIKKFhFTikg
IHByZT03YTMgc3Rvc2w9ZWYwIHBvc3Q9ODFlCihYRU4pICBwcmU9N2Q3IHN0b3NxPWRkZSBw
b3N0PTgyOQooWEVOKSAgcHJlPTdhZSBhdng9MTU2MiBwb3N0PTZjMAooWEVOKSAgcHJlPTdj
OSBzc2UyPWMzYSBwb3N0PTZkOAooWEVOKSAgcHJlPTdlYyBzdG9zYj1kYjAgcG9zdD04MmIK
KFhFTikgIHByZT03ZjAgc3Rvc2w9ZTNlIHBvc3Q9ODRkCihYRU4pICBwcmU9N2YxIHN0b3Nx
PWRlOCBwb3N0PTgyNwooWEVOKSAgcHJlPTdkZCBhdng9MTU3YSBwb3N0PTZiZAooWEVOKSAg
cHJlPTdkMiBzc2UyPWM0OSBwb3N0PTZjNAooWEVOKSAgcHJlPTdhNCBzdG9zYj1kZmUgcG9z
dD04NDgKKFhFTikgIHByZT03Y2Ugc3Rvc2w9ZThjIHBvc3Q9ODMxCihYRU4pICBwcmU9N2Iz
IHN0b3NxPWRhYSBwb3N0PTgxZAooWEVOKSAgcHJlPTdmOCBhdng9MTU2YiBwb3N0PTZkMAoo
WEVOKSBMMiB3L28gZmx1c2g6CihYRU4pICBwcmU9NWUyNGYgc3NlMj03ZmY2OSBwb3N0PTQw
YWY2CihYRU4pICBwcmU9M2M1MTUgc3Rvc2I9NGRkYzcgcG9zdD05ZjNiZgooWEVOKSAgcHJl
PTNjZmI5IHN0b3NsPTRkYTNjIHBvc3Q9OWVmY2IKKFhFTikgIHByZT0zYmM1YyBzdG9zcT00
ZGJkMyBwb3N0PTllYzFjCihYRU4pICBwcmU9M2M5MjcgYXZ4PWE2Y2MwIHBvc3Q9NDJhYTEK
KFhFTikgIHByZT0zY2Y2ZCBzc2UyPTdmZTk1IHBvc3Q9NDIyM2QKKFhFTikgIHByZT0zYzU1
ZiBzdG9zYj00ZTAzNSBwb3N0PTlmMjVkCihYRU4pICBwcmU9M2NkNjMgc3Rvc2w9NGRkOGIg
cG9zdD05ZjE0ZgooWEVOKSAgcHJlPTNiOGQzIHN0b3NxPTRkZTFmIHBvc3Q9OWYwNTAKKFhF
TikgIHByZT0zYzY2ZiBhdng9YTZjYWQgcG9zdD00Mzg4NgooWEVOKSAgcHJlPTNjOTkwIHNz
ZTI9N2ZlYjkgcG9zdD00MmE2ZAooWEVOKSAgcHJlPTNjMWEwIHN0b3NiPTRkZDQ1IHBvc3Q9
OWYwNGEKKFhFTikgIHByZT0zZDBhZSBzdG9zbD00ZGU2NCBwb3N0PTlmMDJiCihYRU4pICBw
cmU9M2MwYWUgc3Rvc3E9NGQ5ZGMgcG9zdD05ZWRiOAooWEVOKSAgcHJlPTNkMGI0IGF2eD1h
NmM5NyBwb3N0PTQxZTY3CihYRU4pIEwyIHcvIGZsdXNoOgooWEVOKSAgcHJlPTM5MTk0IHNz
ZTI9NTVlZmQgcG9zdD0zYTJhOQooWEVOKSAgcHJlPTM5MWNmIHN0b3NiPTVhOGJjIHBvc3Q9
OTVhMWQKKFhFTikgIHByZT0zOTEzYyBzdG9zbD01YTVhNyBwb3N0PThmY2VkCihYRU4pICBw
cmU9MzkzOGIgc3Rvc3E9NWE2OGIgcG9zdD05NjdkNAooWEVOKSAgcHJlPTM4MjMyIGF2eD05
ZDMyOCBwb3N0PTNhNGZlCihYRU4pICBwcmU9MzkzYTYgc3NlMj01NjAyNyBwb3N0PTNhMmZl
CihYRU4pICBwcmU9MzkxN2Egc3Rvc2I9NTlmM2YgcG9zdD05NTE4YQooWEVOKSAgcHJlPTM5
MGMyIHN0b3NsPTVhMGYzIHBvc3Q9OTUxYmMKKFhFTikgIHByZT0zOTIyZSBzdG9zcT01YTdm
NiBwb3N0PTk1MmRiCihYRU4pICBwcmU9Mzk0NDMgYXZ4PTlkNDA3IHBvc3Q9M2E0YzQKKFhF
TikgIHByZT0zODYzNSBzc2UyPTU1ZmI4IHBvc3Q9M2E1NTcKKFhFTikgIHByZT0zODIzNyBz
dG9zYj01YTJmYiBwb3N0PTkyZjNhCihYRU4pICBwcmU9MzkxNGUgc3Rvc2w9NWE4ZTUgcG9z
dD04YmI0OAooWEVOKSAgcHJlPTM5MDU4IHN0b3NxPTVhNWRjIHBvc3Q9OTY3MjYKKFhFTikg
IHByZT0zOTEzYyBhdng9OWQzM2QgcG9zdD0zYTJkMQoKClJvbWxleSAoU2FuZHlicmlkZ2Up
OgoKKFhFTikgZXJtcz0wIGZzcm09MCBmenJtPTAgZnNycz0wIGZzcmNzPTAgbDFkPTMyayBs
Mj0yNTZrCihYRU4pIEwxIHcvbyBmbHVzaDoKKFhFTikgIHByZT05NTQgc3NlMj0yOTU4IHBv
c3Q9Nzk4CihYRU4pICBwcmU9NzkyIHN0b3NiPWU3YyBwb3N0PWFmMgooWEVOKSAgcHJlPTcz
MiBzdG9zbD1iNzAgcG9zdD1iMjgKKFhFTikgIHByZT03Njggc3Rvc3E9YmRjIHBvc3Q9YWMy
CihYRU4pICBwcmU9NzRhIGF2eD0yNmFjIHBvc3Q9NzUwCihYRU4pICBwcmU9Nzc0IHNzZTI9
MjdkMiBwb3N0PTcwOAooWEVOKSAgcHJlPTczOCBzdG9zYj1lNGMgcG9zdD1hZGEKKFhFTikg
IHByZT03MTQgc3Rvc2w9YjIyIHBvc3Q9YTk4CihYRU4pICBwcmU9NzMyIHN0b3NxPWIzNCBw
b3N0PWFjMgooWEVOKSAgcHJlPTcxNCBhdng9MjczMCBwb3N0PTcxNAooWEVOKSAgcHJlPTcx
NCBzc2UyPTI3ZDggcG9zdD03MGUKKFhFTikgIHByZT03MmMgc3Rvc2I9ZTNhIHBvc3Q9YWIw
CihYRU4pICBwcmU9NzE0IHN0b3NsPWIwNCBwb3N0PWE3NAooWEVOKSAgcHJlPTczMiBzdG9z
cT1iMDQgcG9zdD1hOTIKKFhFTikgIHByZT03MTQgYXZ4PTRmYzggcG9zdD03MTQKKFhFTikg
TDEgdy8gZmx1c2g6CihYRU4pICBwcmU9N2M4IHNzZTI9Mjc4NCBwb3N0PTcwOAooWEVOKSAg
cHJlPTcyYyBzdG9zYj0yMTAwIHBvc3Q9Y2E4CihYRU4pICBwcmU9ODBhIHN0b3NsPTFlZDIg
cG9zdD1jMWUKKFhFTikgIHByZT03ZjIgc3Rvc3E9MjA1MiBwb3N0PWM5MAooWEVOKSAgcHJl
PTcxNCBhdng9MjY1MiBwb3N0PTcxNAooWEVOKSAgcHJlPTdkNCBzc2UyPTI3NzIgcG9zdD03
MzIKKFhFTikgIHByZT03Yzggc3Rvc2I9MjQ2NiBwb3N0PWJlMgooWEVOKSAgcHJlPTgyOCBz
dG9zbD0yMDA0IHBvc3Q9YzcyCihYRU4pICBwcmU9N2Q0IHN0b3NxPTIwYjIgcG9zdD1jOTYK
KFhFTikgIHByZT04MWMgYXZ4PTI2ODIgcG9zdD03MTQKKFhFTikgIHByZT03ZDQgc3NlMj0y
NzU0IHBvc3Q9NzJjCihYRU4pICBwcmU9N2M4IHN0b3NiPTIzNTggcG9zdD1iY2EKKFhFTikg
IHByZT04Mjggc3Rvc2w9MWVjYyBwb3N0PWM0OAooWEVOKSAgcHJlPTdjOCBzdG9zcT0yMGI4
IHBvc3Q9YzAwCihYRU4pICBwcmU9ODFjIGF2eD0yNmY0IHBvc3Q9NzE0CihYRU4pIEwyIHcv
byBmbHVzaDoKKFhFTikgIHByZT05Y2Y2IHNzZTI9MTRiOWUgcG9zdD01NzA2CihYRU4pICBw
cmU9N2NlMCBzdG9zYj02ZjAwIHBvc3Q9NzRhNgooWEVOKSAgcHJlPTc4ZWEgc3Rvc2w9NWUy
NiBwb3N0PTc5YzgKKFhFTikgIHByZT03OTI2IHN0b3NxPTVlYzIgcG9zdD03ODQ4CihYRU4p
ICBwcmU9NzkyMCBhdng9MTQxMGMgcG9zdD01YzcwCihYRU4pICBwcmU9N2JkZSBzc2UyPTE0
YTA2IHBvc3Q9NWRlYQooWEVOKSAgcHJlPTdhYjIgc3Rvc2I9NmRkYSBwb3N0PTc4YzAKKFhF
TikgIHByZT03YTZhIHN0b3NsPTVmMzQgcG9zdD03OTJjCihYRU4pICBwcmU9Nzc1MiBzdG9z
cT02MDU0IHBvc3Q9N2JmYwooWEVOKSAgcHJlPTc5NzQgYXZ4PTE0MTcyIHBvc3Q9NWRlNAoo
WEVOKSAgcHJlPTdhNzYgc3NlMj0xNGE1NCBwb3N0PTVkYzAKKFhFTikgIHByZT03N2Q2IHN0
b3NiPTZjZDggcG9zdD03NzlhCihYRU4pICBwcmU9Nzc0YyBzdG9zbD01ZGNjIHBvc3Q9N2Mz
OAooWEVOKSAgcHJlPTc4OGEgc3Rvc3E9NWU2MiBwb3N0PTdhMDQKKFhFTikgIHByZT03NzIy
IGF2eD0xNmFjYSBwb3N0PTVlMmMKKFhFTikgTDIgdy8gZmx1c2g6CihYRU4pICBwcmU9OWNl
YSBzc2UyPTE0MTcyIHBvc3Q9NTcxZQooWEVOKSAgcHJlPTljM2Mgc3Rvc2I9MTEzZTIgcG9z
dD02ZDUwCihYRU4pICBwcmU9OWQ1NiBzdG9zbD0xMDkyNiBwb3N0PTZjYTgKKFhFTikgIHBy
ZT05Y2EyIHN0b3NxPTEwOTUwIHBvc3Q9NmRiNgooWEVOKSAgcHJlPTlkNDQgYXZ4PTEzYjA2
IHBvc3Q9NTcwMAooWEVOKSAgcHJlPTlkZjggc3NlMj0xNDFjYyBwb3N0PTU2YTYKKFhFTikg
IHByZT05Y2MwIHN0b3NiPTExMmE0IHBvc3Q9NmNhOAooWEVOKSAgcHJlPTlkNTAgc3Rvc2w9
MTA5YzggcG9zdD02Y2EyCihYRU4pICBwcmU9OWM4NCBzdG9zcT0xMGExMCBwb3N0PTZjZjAK
KFhFTikgIHByZT05Yzg0IGF2eD0xM2IzMCBwb3N0PTU2ZTgKKFhFTikgIHByZT05Y2RlIHNz
ZTI9MTQxZWEgcG9zdD01NzljCihYRU4pICBwcmU9OWM3ZSBzdG9zYj0xMTM3MCBwb3N0PTZj
MmEKKFhFTikgIHByZT05ZDQ0IHN0b3NsPTEwOGRlIHBvc3Q9NmMzYwooWEVOKSAgcHJlPTli
ZjQgc3Rvc3E9MTA5NmUgcG9zdD02Y2NjCihYRU4pICBwcmU9OWM3ZSBhdng9MTNiMTggcG9z
dD01NmFjCgoKV2VzdG1lcmU6CgooWEVOKSBlcm1zPTAgZnNybT0wIGZ6cm09MCBmc3JzPTAg
ZnNyY3M9MCBsMWQ9MzJrIGwyPTI1NmsKKFhFTikgTDEgdy9vIGZsdXNoOgooWEVOKSAgcHJl
PTExODQgc3NlMj0yMDU4IHBvc3Q9YzYwCihYRU4pICBwcmU9YWQ0IHN0b3NiPWI2MCBwb3N0
PTFhMjQKKFhFTikgIHByZT05ZDQgc3Rvc2w9ODc0IHBvc3Q9MTM0OAooWEVOKSAgcHJlPTll
OCBzdG9zcT04ZDQgcG9zdD1kZDAKKFhFTikgIHByZT05ZGMgc3NlMj0xZGZjIHBvc3Q9OWU4
CihYRU4pICBwcmU9OWU4IHN0b3NiPWE2YyBwb3N0PWRhNAooWEVOKSAgcHJlPTlkNCBzdG9z
bD04NTQgcG9zdD1kZDQKKFhFTikgIHByZT05ZTggc3Rvc3E9OGE0IHBvc3Q9ZDNjCihYRU4p
ICBwcmU9OWQ4IHNzZTI9MWUxYyBwb3N0PTllYwooWEVOKSAgcHJlPTllOCBzdG9zYj1hNDQg
cG9zdD1jYzgKKFhFTikgIHByZT05ZDQgc3Rvc2w9ODFjIHBvc3Q9ZDBjCihYRU4pICBwcmU9
OWVjIHN0b3NxPTgxMCBwb3N0PWNjOAooWEVOKSBMMSB3LyBmbHVzaDoKKFhFTikgIHByZT1i
MTggc3NlMj0xOTZjIHBvc3Q9YTg0CihYRU4pICBwcmU9YjA4IHN0b3NiPTE1YjggcG9zdD0x
MTZjCihYRU4pICBwcmU9YjEwIHN0b3NsPTE0NDAgcG9zdD0xNjNjCihYRU4pICBwcmU9YTQ4
IHN0b3NxPTEzZDggcG9zdD0xM2I0CihYRU4pICBwcmU9YjFjIHNzZTI9MTk5YyBwb3N0PWEz
YwooWEVOKSAgcHJlPWJiOCBzdG9zYj0xNWM0IHBvc3Q9MTJlOAooWEVOKSAgcHJlPWIwYyBz
dG9zbD0xMzI0IHBvc3Q9MTQzMAooWEVOKSAgcHJlPWE0OCBzdG9zcT0xMzVjIHBvc3Q9MTJj
NAooWEVOKSAgcHJlPWIxYyBzc2UyPTE5OWMgcG9zdD1hM2MKKFhFTikgIHByZT1iMTggc3Rv
c2I9MTgxOCBwb3N0PTEzMjAKKFhFTikgIHByZT1iMTAgc3Rvc2w9MTMyNCBwb3N0PTExYmMK
KFhFTikgIHByZT1hNDggc3Rvc3E9MTM1YyBwb3N0PTEyMmMKKFhFTikgTDIgdy9vIGZsdXNo
OgooWEVOKSAgcHJlPThlMjAgc3NlMj1mNDkwIHBvc3Q9NTA0YwooWEVOKSAgcHJlPTc3YTQg
c3Rvc2I9NzgwNCBwb3N0PTY4NTQKKFhFTikgIHByZT03NzhjIHN0b3NsPTcyODAgcG9zdD02
MzZjCihYRU4pICBwcmU9NzU5NCBzdG9zcT03MjM0IHBvc3Q9NjBjOAooWEVOKSAgcHJlPTcw
YmMgc3NlMj1mM2M0IHBvc3Q9NTVlMAooWEVOKSAgcHJlPTcwMTQgc3Rvc2I9NzdlOCBwb3N0
PTVmNjgKKFhFTikgIHByZT03M2Y4IHN0b3NsPTcyNjQgcG9zdD02MmI4CihYRU4pICBwcmU9
NzJlYyBzdG9zcT03MjA4IHBvc3Q9NjJmYwooWEVOKSAgcHJlPTZkODAgc3NlMj1mMzcwIHBv
c3Q9NTFhMAooWEVOKSAgcHJlPTZlMzQgc3Rvc2I9NzgwNCBwb3N0PTVmODQKKFhFTikgIHBy
ZT03MDU4IHN0b3NsPTcyM2MgcG9zdD01ZmI4CihYRU4pICBwcmU9NmYxYyBzdG9zcT03MjVj
IHBvc3Q9NjE4OAooWEVOKSBMMiB3LyBmbHVzaDoKKFhFTikgIHByZT04ZTQ4IHNzZTI9Y2Jj
NCBwb3N0PTUwMzQKKFhFTikgIHByZT04ZDVjIHN0b3NiPTk5OWMgcG9zdD01OGQwCihYRU4p
ICBwcmU9OGRhMCBzdG9zbD05MTJjIHBvc3Q9NTkwYwooWEVOKSAgcHJlPThjMTAgc3Rvc3E9
OGY4MCBwb3N0PTVhMGMKKFhFTikgIHByZT04ZTEwIHNzZTI9Y2JkMCBwb3N0PTUwMzAKKFhF
TikgIHByZT04Y2IwIHN0b3NiPTk4NzggcG9zdD01OTYwCihYRU4pICBwcmU9OGRlNCBzdG9z
bD05MDYwIHBvc3Q9NThlNAooWEVOKSAgcHJlPThjMGMgc3Rvc3E9OGZhMCBwb3N0PTVhMTAK
KFhFTikgIHByZT04ZDRjIHNzZTI9Y2JkMCBwb3N0PTUwMmMKKFhFTikgIHByZT04Y2Y4IHN0
b3NiPTk4MzQgcG9zdD01OGYwCihYRU4pICBwcmU9OGRlNCBzdG9zbD05MGQwIHBvc3Q9NThl
NAooWEVOKSAgcHJlPThjMGMgc3Rvc3E9OTE3OCBwb3N0PTU5OTgKCgpMYXRpdHVkZSBFNjQx
MCAoU2FuZHlicmlkZ2UpOgoKKFhFTikgZXJtcz0wIGZzcm09MCBmenJtPTAgZnNycz0wIGZz
cmNzPTAgbDFkPTMyayBsMj0yNTZrCihYRU4pIEwxIHcvbyBmbHVzaDoKKFhFTikgIHByZT02
OGQgc3NlMj0zYzA2IHBvc3Q9NDYwCihYRU4pICBwcmU9NDFmIHN0b3NiPThhMCBwb3N0PTgy
MwooWEVOKSAgcHJlPTQxMyBzdG9zbD02YWUgcG9zdD03ODkKKFhFTikgIHByZT00MTMgc3Rv
c3E9NmUzIHBvc3Q9NzhmCihYRU4pICBwcmU9NDEzIHNzZTI9Mzk4OSBwb3N0PTQxMAooWEVO
KSAgcHJlPTQyMiBzdG9zYj04MWQgcG9zdD03NzEKKFhFTikgIHByZT00MTMgc3Rvc2w9Njc1
IHBvc3Q9NzdkCihYRU4pICBwcmU9M2Y5IHN0b3NxPTY2NyBwb3N0PTZmYgooWEVOKSAgcHJl
PTQzNyBzc2UyPTM4YjcgcG9zdD00MTYKKFhFTikgIHByZT00MDcgc3Rvc2I9ODAyIHBvc3Q9
NzI3CihYRU4pICBwcmU9NDA3IHN0b3NsPTY1ZSBwb3N0PTc1NAooWEVOKSAgcHJlPTQwNCBz
dG9zcT02NWIgcG9zdD02ZWYKKFhFTikgTDEgdy8gZmx1c2g6CihYRU4pICBwcmU9NWI0IHNz
ZTI9MjBjYSBwb3N0PTQzMwooWEVOKSAgcHJlPTU1ZiBzdG9zYj0xNWEyIHBvc3Q9ODYxCihY
RU4pICBwcmU9NTY1IHN0b3NsPTEyNTIgcG9zdD04NjEKKFhFTikgIHByZT01NTkgc3Rvc3E9
MTQ0NCBwb3N0PTg0ZAooWEVOKSAgcHJlPTU3YyBzc2UyPTIxYWUgcG9zdD00MzYKKFhFTikg
IHByZT01NWYgc3Rvc2I9MTU3ZSBwb3N0PTg5NwooWEVOKSAgcHJlPTU2ZCBzdG9zbD0xMjU1
IHBvc3Q9ODNiCihYRU4pICBwcmU9NjU3IHN0b3NxPTEyODIgcG9zdD04NmQKKFhFTikgIHBy
ZT01NjUgc3NlMj0yMWJkIHBvc3Q9NDNhCihYRU4pICBwcmU9NTdjIHN0b3NiPTE1M2QgcG9z
dD04OGQKKFhFTikgIHByZT01NmIgc3Rvc2w9MTI0NyBwb3N0PTg3YwooWEVOKSAgcHJlPTU3
MyBzdG9zcT0xMjU4IHBvc3Q9ODdmCihYRU4pIEwyIHcvbyBmbHVzaDoKKFhFTikgIHByZT02
MDJiIHNzZTI9MWQ0ZDQgcG9zdD0zNjY5CihYRU4pICBwcmU9NGE2YyBzdG9zYj00Yjc5IHBv
c3Q9NDRiNAooWEVOKSAgcHJlPTQ5NzYgc3Rvc2w9NDM4MyBwb3N0PTQ4ZDAKKFhFTikgIHBy
ZT00ZDk1IHN0b3NxPTQzNWQgcG9zdD00N2JhCihYRU4pICBwcmU9NGJmMyBzc2UyPTFkMzMz
IHBvc3Q9MzlmNwooWEVOKSAgcHJlPTRiZWQgc3Rvc2I9NGIzYyBwb3N0PTQ2NzEKKFhFTikg
IHByZT01MDAzIHN0b3NsPTQzNWQgcG9zdD00ZGU4CihYRU4pICBwcmU9NGYwYSBzdG9zcT00
Mzc3IHBvc3Q9NDg3NAooWEVOKSAgcHJlPTRkMWUgc3NlMj0xZDM2OCBwb3N0PTNlNmUKKFhF
TikgIHByZT00ZjI1IHN0b3NiPTRiNGEgcG9zdD00N2E1CihYRU4pICBwcmU9NGFiZiBzdG9z
bD00MzE2IHBvc3Q9NDdjYwooWEVOKSAgcHJlPTRmMTkgc3Rvc3E9NDM1MSBwb3N0PTQ4YmIK
KFhFTikgTDIgdy8gZmx1c2g6CihYRU4pICBwcmU9NjBjYiBzc2UyPTEwMzEwIHBvc3Q9MzY3
MgooWEVOKSAgcHJlPTYwY2Ugc3Rvc2I9OTU2YyBwb3N0PTQzNmIKKFhFTikgIHByZT02MDNk
IHN0b3NsPThhNzAgcG9zdD00MzhmCihYRU4pICBwcmU9NWZlMSBzdG9zcT04NzZkIHBvc3Q9
NDQyZgooWEVOKSAgcHJlPTYwZjggc3NlMj0xMDNkYyBwb3N0PTM2YWEKKFhFTikgIHByZT02
MDEwIHN0b3NiPTk0ZGIgcG9zdD00MzZlCihYRU4pICBwcmU9NjBmZSBzdG9zbD04YTdjIHBv
c3Q9NDNhNwooWEVOKSAgcHJlPTYwNWIgc3Rvc3E9ODc2ZCBwb3N0PTQ0NzMKKFhFTikgIHBy
ZT02MDkzIHNzZTI9MTA0ODUgcG9zdD0zNmI5CihYRU4pICBwcmU9NjA0YyBzdG9zYj05M2M0
IHBvc3Q9NDNiMwooWEVOKSAgcHJlPTYwYjMgc3Rvc2w9OGMwMyBwb3N0PTQzNWYKKFhFTikg
IHByZT02MDdlIHN0b3NxPTg5NWMgcG9zdD00M2ZjCgoKVHVsc2EgKEZhbTBmIFhlb24gKDcx
MDA/KSk6CgooWEVOKSBlcm1zPTAgZnNybT0wIGZ6cm09MCBmc3JzPTAgZnNyY3M9MCBsMWQ9
MTZrIGwyPTEwMjRrCihYRU4pIEwxIHcvbyBmbHVzaDoKKFhFTikgIHByZT1jYWYgc3NlMj0z
Y2Q0IHBvc3Q9YjM5CihYRU4pICBwcmU9YjI4IHN0b3NiPTE5MmIgcG9zdD0xNDg1CihYRU4p
ICBwcmU9YjlmIHN0b3NsPWQ3YiBwb3N0PWQzNwooWEVOKSAgcHJlPWIyOCBzdG9zcT1jNmIg
cG9zdD1jOGQKKFhFTikgIHByZT1iMTcgc3NlMj0zMjIzIHBvc3Q9YWU0CihYRU4pICBwcmU9
YThmIHN0b3NiPWJkMiBwb3N0PWI0YQooWEVOKSAgcHJlPWE4ZiBzdG9zbD1hYTAgcG9zdD1h
ZjUKKFhFTikgIHByZT1hYjEgc3Rvc3E9YThmIHBvc3Q9YmUzCihYRU4pICBwcmU9YWMyIHNz
ZTI9MzIxMiBwb3N0PWFlNAooWEVOKSAgcHJlPWE4ZiBzdG9zYj1iYzEgcG9zdD1hZTQKKFhF
TikgIHByZT1hYTAgc3Rvc2w9YTZkIHBvc3Q9YWQzCihYRU4pICBwcmU9YWEwIHN0b3NxPWE2
ZCBwb3N0PWFlNAooWEVOKSBMMSB3LyBmbHVzaDoKKFhFTikgIHByZT1iMDYgc3NlMj02Mjhj
IHBvc3Q9YzI3CihYRU4pICBwcmU9YWU0IHN0b3NiPTk1OGMgcG9zdD0xNGViCihYRU4pICBw
cmU9YjE3IHN0b3NsPTk1OWQgcG9zdD0xNmE1CihYRU4pICBwcmU9YjA2IHN0b3NxPTk2Njkg
cG9zdD0xNWQ5CihYRU4pICBwcmU9YWU0IHNzZTI9NjEyNyBwb3N0PWJjMQooWEVOKSAgcHJl
PWE3ZSBzdG9zYj05NjM2IHBvc3Q9MTViNwooWEVOKSAgcHJlPWFhMCBzdG9zbD05MmU0IHBv
c3Q9MTQ3NAooWEVOKSAgcHJlPWE4ZiBzdG9zcT05NWUxIHBvc3Q9MTYxZAooWEVOKSAgcHJl
PWFiMSBzc2UyPTYyYmYgcG9zdD1jMDUKKFhFTikgIHByZT1hOGYgc3Rvc2I9OTZlMCBwb3N0
PTE4MGEKKFhFTikgIHByZT1hOGYgc3Rvc2w9OTcwMiBwb3N0PTE1YTYKKFhFTikgIHByZT1h
YTAgc3Rvc3E9OTQzOCBwb3N0PTE1ZDkKKFhFTikgTDIgdy9vIGZsdXNoOgooWEVOKSAgcHJl
PTUzNDJkIHNzZTI9ZDQ5ZWQgcG9zdD0yMWM4YwooWEVOKSAgcHJlPTI1NDk4IHN0b3NiPTY5
ZDRiIHBvc3Q9MzE1YzUKKFhFTikgIHByZT0yNDliNCBzdG9zbD02OTgyZSBwb3N0PTMxNjZm
CihYRU4pICBwcmU9MjQ3MGMgc3Rvc3E9NjllMjggcG9zdD0zMGJiZQooWEVOKSAgcHJlPTIz
ZjI1IHNzZTI9ZDQ1MzYgcG9zdD0xZmIxNAooWEVOKSAgcHJlPTIzZTI2IHN0b3NiPTZhZDJh
IHBvc3Q9MzBhNmEKKFhFTikgIHByZT0yM2ZjZiBzdG9zbD02OGVkMSBwb3N0PTJmZDIyCihY
RU4pICBwcmU9MjNlNDggc3Rvc3E9NjliZTYgcG9zdD0zMDhlMwooWEVOKSAgcHJlPTIzZTlk
IHNzZTI9ZDQ0NTkgcG9zdD0yMGM5YwooWEVOKSAgcHJlPTIzZjY5IHN0b3NiPTZhNzBlIHBv
c3Q9MzBjOWIKKFhFTikgIHByZT0yNDAzNSBzdG9zbD02OTA2OSBwb3N0PTMwMmU5CihYRU4p
ICBwcmU9MjU4ZmEgc3Rvc3E9NjlhYTMgcG9zdD0zMGNiZAooWEVOKSBMMiB3LyBmbHVzaDoK
KFhFTikgIHByZT0yNjNjZCBzc2UyPTEzMDZhMiBwb3N0PTIxYmQxCihYRU4pICBwcmU9MjY1
ZmUgc3Rvc2I9MjdhZWIyIHBvc3Q9MzE3N2YKKFhFTikgIHByZT0yNjQ2NiBzdG9zbD0yN2Y1
MTYgcG9zdD0zMTFjOQooWEVOKSAgcHJlPTI2MDA0IHN0b3NxPTI3Y2I0MCBwb3N0PTMxNTNk
CihYRU4pICBwcmU9MjU2NDEgc3NlMj0xMzAzMWQgcG9zdD0yMWIxNgooWEVOKSAgcHJlPTI2
NDExIHN0b3NiPTI3ZjU3YyBwb3N0PTMxZWNkCihYRU4pICBwcmU9MjYyZjAgc3Rvc2w9Mjdi
NWJjIHBvc3Q9MzE1YTMKKFhFTikgIHByZT0yNWY0OSBzdG9zcT0yN2I5NzQgcG9zdD0zMTJh
NgooWEVOKSAgcHJlPTI1NTIwIHNzZTI9MTMxMGVkIHBvc3Q9MjFiMzgKKFhFTikgIHByZT0y
NjE3YSBzdG9zYj0yN2QxMDcgcG9zdD0zMTRkNwooWEVOKSAgcHJlPTI2MWFkIHN0b3NsPTI3
YmQ4MSBwb3N0PTMwOWYzCihYRU4pICBwcmU9MjVmZjMgc3Rvc3E9MjdkZmY4IHBvc3Q9MzE2
NGQK
--------------E9A009BC66E76B4D3F1D9EB6--


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 08:23:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 08:23:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110353.210613 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWanW-0003c6-Ul; Wed, 14 Apr 2021 08:22:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110353.210613; Wed, 14 Apr 2021 08:22:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWanW-0003bz-Qi; Wed, 14 Apr 2021 08:22:54 +0000
Received: by outflank-mailman (input) for mailman id 110353;
 Wed, 14 Apr 2021 08:22:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eQnP=JL=intel.com=chao.gao@srs-us1.protection.inumbo.net>)
 id 1lWanV-0003bu-Me
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 08:22:53 +0000
Received: from mga02.intel.com (unknown [134.134.136.20])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a9bee840-1f62-4592-8592-b75c6df97c02;
 Wed, 14 Apr 2021 08:22:50 +0000 (UTC)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 14 Apr 2021 01:22:49 -0700
Received: from unknown (HELO hyperv-sh4.sh.intel.com) ([10.239.48.33])
 by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 14 Apr 2021 01:22: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: a9bee840-1f62-4592-8592-b75c6df97c02
IronPort-SDR: pvkxHMBbtyE44qGu8d6Nhbc0mArhfvwKoXxtl9X1sd45oADEFoW3yhZTgsB5bTONii4SY1pPNZ
 V67DAbxloVrQ==
X-IronPort-AV: E=McAfee;i="6200,9189,9953"; a="181715370"
X-IronPort-AV: E=Sophos;i="5.82,221,1613462400"; 
   d="scan'208";a="181715370"
IronPort-SDR: dI9AmB6jIeR57Bskm5ThJiCmxAseeWAVFROpB20vOGLjevnoTZoWNckk1rcXLa0T2DQP5TGnwC
 xaUxAwHaArLA==
X-IronPort-AV: E=Sophos;i="5.82,221,1613462400"; 
   d="scan'208";a="418232839"
From: Chao Gao <chao.gao@intel.com>
To: xen-devel@lists.xenproject.org
Cc: Chao Gao <chao.gao@intel.com>,
	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>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [RFC PATCH] VT-d: Don't assume register-based invalidation is always supported
Date: Wed, 14 Apr 2021 08:55:26 +0800
Message-Id: <20210414005526.36760-1-chao.gao@intel.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

According to Intel VT-d SPEC rev3.3 Section 6.5, Register-based Invalidation
isn't supported by Intel VT-d version 6 and beyond.

This hardware change impacts following two scenarios: admin can disable
queued invalidation via 'qinval' cmdline and use register-based interface;
VT-d switches to register-based invalidation when queued invalidation needs
to be disabled, for example, during disabling x2apic or during system
suspension.

To deal with this hardware change, if register-based invalidation isn't
supported, queued invalidation cannot be disabled through Xen cmdline; and
if queued invalidation has to be disabled temporarily in some scenarios,
VT-d won't switch to register-based interface but use some dummy functions
to catch errors in case there is any invalidation request issued when queued
invalidation is disabled.

Signed-off-by: Chao Gao <chao.gao@intel.com>
---
I only tested Xen boot with qinval/no-qinval. I also want to do system
suspension and resumption to see if any unexpected error. But I don't
know how to trigger them. Any recommendation?
---
 docs/misc/xen-command-line.pandoc    |  4 ++-
 xen/drivers/passthrough/vtd/iommu.c  | 40 +++++++++++++++++++++++++---
 xen/drivers/passthrough/vtd/iommu.h  |  7 +++++
 xen/drivers/passthrough/vtd/qinval.c | 33 +++++++++++++++++++++--
 4 files changed, 77 insertions(+), 7 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index deef6d0b4c..4ff4a87844 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -1442,7 +1442,9 @@ The following options are specific to Intel VT-d hardware:
 *   The `qinval` boolean controls the Queued Invalidation sub-feature, and is
     active by default on compatible hardware.  Queued Invalidation is a
     feature in second-generation IOMMUs and is a functional prerequisite for
-    Interrupt Remapping.
+    Interrupt Remapping. Note that Xen disregards this setting for Intel VT-d
+    version 6 and greater as Registered-Based Invalidation isn't supported
+    by them.
 
 *   The `igfx` boolean is active by default, and controls whether the IOMMU in
     front of an Intel Graphics Device is enabled or not.
diff --git a/xen/drivers/passthrough/vtd/iommu.c b/xen/drivers/passthrough/vtd/iommu.c
index 6428c8fe3e..e738d04543 100644
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
 
     iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
     iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
+    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
+
+    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
+    {
+        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
+               iommu->index);
+        iommu_qinval = true;
+    }
 
     if ( iommu_verbose )
     {
@@ -2231,6 +2239,8 @@ static int __init vtd_setup(void)
     struct acpi_drhd_unit *drhd;
     struct vtd_iommu *iommu;
     int ret;
+    bool queued_inval_supported = true;
+    bool reg_inval_supported = true;
 
     if ( list_empty(&acpi_drhd_units) )
     {
@@ -2252,8 +2262,8 @@ static int __init vtd_setup(void)
     }
 
     /* We enable the following features only if they are supported by all VT-d
-     * engines: Snoop Control, DMA passthrough, Queued Invalidation, Interrupt
-     * Remapping, and Posted Interrupt
+     * engines: Snoop Control, DMA passthrough, Register-based Invalidation,
+     * Queued Invalidation, Interrupt Remapping, and Posted Interrupt.
      */
     for_each_drhd_unit ( drhd )
     {
@@ -2272,8 +2282,11 @@ static int __init vtd_setup(void)
         if ( iommu_hwdom_passthrough && !ecap_pass_thru(iommu->ecap) )
             iommu_hwdom_passthrough = false;
 
-        if ( iommu_qinval && !ecap_queued_inval(iommu->ecap) )
-            iommu_qinval = 0;
+        if ( reg_inval_supported && !has_register_based_invalidation(iommu) )
+            reg_inval_supported = false;
+
+        if ( queued_inval_supported && !ecap_queued_inval(iommu->ecap) )
+            queued_inval_supported = false;
 
         if ( iommu_intremap && !ecap_intr_remap(iommu->ecap) )
             iommu_intremap = iommu_intremap_off;
@@ -2301,6 +2314,25 @@ static int __init vtd_setup(void)
 
     softirq_tasklet_init(&vtd_fault_tasklet, do_iommu_page_fault, NULL);
 
+    if ( !queued_inval_supported && !reg_inval_supported )
+    {
+        dprintk(XENLOG_ERR VTDPREFIX, "No available invalidation interface.\n");
+        ret = -ENODEV;
+        goto error;
+    }
+
+    /*
+     * We cannot have !iommu_qinval && !reg_inval_supported here since
+     * iommu_qinval is set in iommu_alloc() if any iommu doesn't support
+     * Register-based Invalidation.
+     */
+    if ( iommu_qinval && !queued_inval_supported )
+    {
+        dprintk(XENLOG_WARNING VTDPREFIX, "Disable Queued Invalidation as "
+                "it isn't supported.\n");
+        iommu_qinval = false;
+    }
+
     if ( !iommu_qinval && iommu_intremap )
     {
         iommu_intremap = iommu_intremap_off;
diff --git a/xen/drivers/passthrough/vtd/iommu.h b/xen/drivers/passthrough/vtd/iommu.h
index 216791b3d6..644224051a 100644
--- a/xen/drivers/passthrough/vtd/iommu.h
+++ b/xen/drivers/passthrough/vtd/iommu.h
@@ -540,6 +540,7 @@ struct vtd_iommu {
     struct list_head ats_devices;
     unsigned long *domid_bitmap;  /* domain id bitmap */
     u16 *domid_map;               /* domain id mapping array */
+    u32 version;
 };
 
 #define INTEL_IOMMU_DEBUG(fmt, args...) \
@@ -549,4 +550,10 @@ struct vtd_iommu {
             dprintk(XENLOG_WARNING VTDPREFIX, fmt, ## args);    \
     } while(0)
 
+/* Register-based invalidation isn't supported by VT-d version 6 and beyond. */
+static inline bool has_register_based_invalidation(struct vtd_iommu *iommu)
+{
+    return VER_MAJOR(iommu->version) < 6;
+}
+
 #endif
diff --git a/xen/drivers/passthrough/vtd/qinval.c b/xen/drivers/passthrough/vtd/qinval.c
index 764ef9f0fc..1e90f50ff8 100644
--- a/xen/drivers/passthrough/vtd/qinval.c
+++ b/xen/drivers/passthrough/vtd/qinval.c
@@ -442,6 +442,23 @@ int enable_qinval(struct vtd_iommu *iommu)
     return 0;
 }
 
+static int vtd_flush_context_noop(struct vtd_iommu *iommu, uint16_t did,
+                                  uint16_t source_id, uint8_t function_mask,
+                                  uint64_t type, bool flush_non_present_entry)
+{
+    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush CONTEXT.\n");
+    return -EIO;
+}
+
+static int vtd_flush_iotlb_noop(struct vtd_iommu *iommu, uint16_t did,
+                                uint64_t addr, unsigned int size_order,
+                                uint64_t type, bool flush_non_present_entry,
+                                bool flush_dev_iotlb)
+{
+    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush IOTLB.\n");
+    return -EIO;
+}
+
 void disable_qinval(struct vtd_iommu *iommu)
 {
     u32 sts;
@@ -463,6 +480,18 @@ void disable_qinval(struct vtd_iommu *iommu)
 out:
     spin_unlock_irqrestore(&iommu->register_lock, flags);
 
-    iommu->flush.context = vtd_flush_context_reg;
-    iommu->flush.iotlb   = vtd_flush_iotlb_reg;
+    /*
+     * Assign callbacks to noop to catch errors if register-based invalidation
+     * isn't supported.
+     */
+    if ( has_register_based_invalidation(iommu) )
+    {
+        iommu->flush.context = vtd_flush_context_reg;
+        iommu->flush.iotlb   = vtd_flush_iotlb_reg;
+    }
+    else
+    {
+        iommu->flush.context = vtd_flush_context_noop;
+        iommu->flush.iotlb = vtd_flush_iotlb_noop;
+    }
 }
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 08:28:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 08:28:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110358.210628 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWasi-0003uj-Lf; Wed, 14 Apr 2021 08:28:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110358.210628; Wed, 14 Apr 2021 08:28: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 1lWasi-0003uc-He; Wed, 14 Apr 2021 08:28:16 +0000
Received: by outflank-mailman (input) for mailman id 110358;
 Wed, 14 Apr 2021 08:28:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O5rk=JL=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWash-0003uX-Fa
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 08:28:15 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a835bf1a-f0c9-4192-afb0-811f59152a4c;
 Wed, 14 Apr 2021 08:28: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: a835bf1a-f0c9-4192-afb0-811f59152a4c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618388894;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=XDLQGvHNZbdUsn2uHbWXlByxHynwWp+FQFUd4VeFLEA=;
  b=Omk6sCTsDDytm6Dc1ccLx9kHVmYWhxgixjIxtFd4Kr7H6Rv1rO0ARQEM
   TwPOkEaEdOV7Mxak/BbRaADESU7Qx2jdt7/UYcnF1AWbEeZep9ayHQ8+W
   FoekN81ARDiyJzurN/v53gax9AAfHGaqkSCHm8jN1fuzuPnkYFXgo6QBZ
   8=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: b4k2vgajPao5+jcBvWymnJ3hxYWxRvDiKAL1rtYZYq5ETVTT/d/mNFUBa7rkb9Fd141GfBIZyP
 j9V+U8CyMxx1gxKtfNlgGzN7QEoCjDIv8hP9UlHGjQ54dpHb43FHq4WLO5cqy1Ji5AKNhoesXv
 CBscc+v0QxQDYf7AHdV2pZxgPSSsqV2AnIDQy4O6fCTzCLlEgsMp84tOGVVAkMMe65P+Tm8yUd
 iVH31m7exVVxOzEU9tB17k/wMU6YOIZFxYAjkY3IMCDjCWnOirdYi1j+kKWufp1Hn4Uz6UFo9T
 8/Q=
X-SBRS: 5.2
X-MesageID: 41933573
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:IL79HaibUIagDS1O9kZbu7lVpnBQX2hw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+csFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmup
 tIW5NVTOf9BV0St6rHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WdEIyywe3cGIjVuL5w/CZ
 aa+45rpyC4f24Wc8S8ARA+LpX+jvfMk4/rZgNDOgUu7xOAgSjtxLnxFRWZ2Rl2aUIy/Z4J92
 /Znwvlopiyqv3T8G6n60b/zbRz3OHgxNxKGdCWhqEuSwnEpw60aO1aKti/lR8vpuXH0idPrP
 DtpFMaM913+zfteAiO0GTQ8i3B9Bpr1HP401+fhhLY0L/EbRY3EdBIi44cUjax0TtZgPhG3K
 hG332UuvNsZHuq9kmNhKmrJmRXv3G5rnY4nekYg2Y3a/pkVJZroZEC50QQKZ8cHUvBmfAaOd
 NzB8LR7us+SyLiU1nluABUsbuRd0V2NBKHTk8eg9eSwjhbkVtopnFotfA3rzMu8okwRIJD4P
 mBGqN0lKtWRstTVq5lAvwdKPHHRVDlcFbpCia/MF7nHKYINzbkrIP22qw84KWPdIYTxJU/tZ
 zdWDpjxCAPUnOrLffL8IxA8xjLTmn4dy/q0Nti659wvaC5bKb3MAWYIWpe0PeIkrE6OIn2Sv
 yzMJVZD7vINm31A7tE2AX4Rt17NWQeassIodw2Mmj+4v7jG8nPjKj2YfzTLL3iHXIPQWXkGE
 YOWzD1OYFu9UaudnjkgAXAen/kd0DllKgAVZTyzqw28swgJ4dMug8ahRCS/ceQMwBPtaQwYQ
 9fLdrc4+eGjFjz2VyNw3RiOxJbAEoQyq7nSWl2qQgDNF6xVb4Cvt6YaF1DxXfvHG45c+rmVC
 pk43hn86O+KJKdgQo4Dci8D26ch3wP4FWHUokbga/Gwcv+YJs3AtIHVcVKZET2Pi0wvTwvhH
 ZIaQcCSEOaPCjpk7+ZgJsdA/yaUcJ9jgetKct9smneqk2YmMEqShIgLnyTeP/SpTxraytfh1
 V3/aNaqqGHgyyTJWw2h/l9DEdBc12NALVNDB2MYaJdnryDQnA3cU66wRihzz0jcGvj8Esfwk
 jsNzedd/3wDl1BgXxAyarx/FRodmKSQlJoZhlBwP9APFWDnkw2/f6AZ6K13WfUUFcEz+0HGB
 zuYDcZIGpVtpqK/S/QvAzHOWQtx50oMOCYMa8qdKvL3GixbKeSk7sdIvNS9JF5Fdznv+MRS9
 iDcwuNID6QMZJx5yWl4lIefAVkongtlv3lnCD/5G+jxXglHL78Jk9lS7xzGaDU00HUA9KzlL
 N3gtI+sbHubiHfatuaxbrWaDAGABXJumKyR/wpr5cRna9ajsoFI7DrFR/zkFdA11ECCe2xsm
 U0aqFy+qrANY9iZNZ6QVMTwnMZ0PC0aHI2uQn3CNIkdV4jj3XnL8qEioC43YYHMwmknk/MIl
 GR/C1WwufdUwaC3bAcDbgsIW4+UjlL1F1SuMeDfZbXEgOkaqVq+0e7KGa0dNZmOeW4MIRVih
 Zx+NeTmeCLMwL+xQDLpDN+ZoZD6XyuT8/3IAWCH4dzgpCHEGXJpquh+8ioijjrDRO9dkQDnI
 VAMXUqUf4rsEhrsKQHlg6oSqL2pUo5k1xRpRFf/2SdpLSO0SP8BkFJMQrQn5NMeyJcW0L41f
 j4zQ==
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="41933573"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YLj744lvqO0k7DCESA4MI4K02OvJyYQDDOoyF8ie3SPrV+JFrWVtbs/QC6KB6Slf/kRGNgGzFz/6yM9U+c/ERJmWRqiyBMCmpjQqLuMjq3+HqqdpwTFb4NcPIH7x2QZ/K0GxXqCk/kxnnKRwL83r7XV8/8ihX0Iv5HMo8WMqxOlxC8y5tOVBAUFQURS7R7fW1llpccgI/lniF3rOvZqcidgHfu+iySh+zP+DisS/bOJEbRU7M4+3WAe9CB/Su7NTQp/ROjXT1OWX0H4Tp1FvzY/L8pGFLv/tgI6I5V/dbJHE+maTOzPTKn+wZPRM7AEnCTM5dY7/2WnWxE/dmU+Htw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DHQa6crf7cGH4mh1WlCZfYVOL3ATOFCP7uJntZ8rqHs=;
 b=LpGgAm/aWWHBrJMWDcDaNXJMmoT/wK2DuLSxG4kTAhB/EjWMLYWJi4A01IUJKEPW7noiEFX2sEReh7l6H/XoABSycMt67YrlyZAm1M3PEr5RoAxNTEYpa6IqytO7YWka2PHwn/MAcO3d7r1anZ+h4EMDN10EhV2DItuE5KtWp/uvp0IVfXOKwFIomBsa8DSJE3uJuqMinyRsnIJcAn+zienxghTkXxML5skWnHmGImydV76c0hMYXT7lW5BI8aaxkmOkozJwKRB+qYQfbHsisdc/WOYIkuLST+QbZW7g3GnfGx2jO6o4aVXFPisXZUK/k5ZmH7/m7jZwUEhj/rZR2A==
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=DHQa6crf7cGH4mh1WlCZfYVOL3ATOFCP7uJntZ8rqHs=;
 b=qbWxaXQdeIwWMPzMQjN3yKXECe1l4AMFMe3/QHou8gMHz1fuaIvjjg3z4ojSUKKTqVdRpVLJSyqGa0ry5LKj4zcMNMT77iJ9Rcf7u6mpaG7aFVaD7GlTgsKn0ge6StrjFLrFzCbQerDau1gzzB9rWTuXJaCJWVr7dju0bU1ceCg=
Date: Wed, 14 Apr 2021 10:28:04 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>,
	<bertrand.marquis@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>, "Wei
 Liu" <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Stefano Stabellini <sstabellini@kernel.org>, "Paul
 Durrant" <paul@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>, Rahul Singh <rahul.singh@arm.com>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Message-ID: <YHanlHbEvzXHbQoj@Air-de-Roger>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <ca4bef26-0869-8a56-e96c-04d3b41ffcd6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ca4bef26-0869-8a56-e96c-04d3b41ffcd6@suse.com>
X-ClientProxiedBy: MR2P264CA0096.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::36) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 809f86ac-dec2-4fe3-c083-08d8ff1f3cc5
X-MS-TrafficTypeDiagnostic: DM6PR03MB4058:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB405822C6CF469019121D6B468F4E9@DM6PR03MB4058.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: SFClCKh7Ki1ZxlxsdkTVeE9l1AtmIfuTvwNct6ZXI7ZFmE34S6F6Nd/8UMgghdg+gPrRwB+onyJWMURvfoMaxHtHNreX6fpwf8rC/kS4DEy6uY295CZM5bUw0AcxV0OKZnWgxhEGHGi7dGv2BxKIggTRUeJi9ruXEYL9D+M9c4cPGkpg4We95UBELZvz/6PAp0ZGBm6rTYAk5XDXbvzCD7T4VCl/sg3DuhDqI4UL01VWS3+oDC1XNxAYSWDWGpdj2gOqLS3aEKnRTEzgyc9bBlQrN88nMlSfzXh4ljO/kamAg427VyQg6rU9Z1bIsB1l4dl88LgnlFmTNesMniZHfhrkc/xTl/4FAeWcjNBgaHKy6mQI7PuzsuVDZzMRqoPYSC2ixqLpIAqT4bBAFXJlQhGVvuItWGAaZHLjtXtZRTB2rpcWs/3nsWLjK6Gd2iigFnC5VDnEHJAr7PvvQA4HtNKQVL5/Uq3qDn8uoCwfSOPhIsgKb7uM7eo4NL3Sdw+0U7G1N/I1loq44Ec8FEtzXbwCysmaukYfpWGFXhRZDlWcJESogCX0ooYICSsONW7ziuZvDNix6ttV3RPVmX+wGPp1DklOGHG3fuKdzX/RV6g=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(39860400002)(396003)(366004)(376002)(346002)(8936002)(38100700002)(956004)(2906002)(9686003)(186003)(16526019)(86362001)(8676002)(66476007)(4326008)(6486002)(6916009)(66556008)(53546011)(478600001)(85182001)(5660300002)(26005)(316002)(83380400001)(66946007)(33716001)(7416002)(54906003)(6496006)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?TGxNcVp5dzA4a21nYjRuZz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 809f86ac-dec2-4fe3-c083-08d8ff1f3cc5
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 08:28:10.3339
 (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: dogbcU7Z9SkyFifA0j79gBt2CadP8TLfZxJfVmWilCh5CpHJhSaXU0WuNu861JcfvWJn3BtxVQ/JRomNiO7TCg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4058
X-OriginatorOrg: citrix.com

On Wed, Apr 14, 2021 at 09:08:53AM +0200, Jan Beulich wrote:
> On 13.04.2021 19:12, Julien Grall wrote:
> > On 12/04/2021 11:49, Roger Pau Monné wrote:
> >> On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
> >>> --- a/xen/include/xen/vpci.h
> >>> +++ b/xen/include/xen/vpci.h
> >>> @@ -91,6 +91,7 @@ struct vpci {
> >>>           /* FIXME: currently there's no support for SR-IOV. */
> >>>       } header;
> >>>   
> >>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
> >>>       /* MSI data. */
> >>>       struct vpci_msi {
> >>>         /* Address. */
> >>> @@ -136,6 +137,7 @@ struct vpci {
> >>>               struct vpci_arch_msix_entry arch;
> >>>           } entries[];
> >>>       } *msix;
> >>> +#endif /* CONFIG_PCI_MSI_INTERCEPT */
> >>
> >> Note that here you just remove two pointers from the struct, not that
> >> I'm opposed to it, but it's not that much space that's saved anyway.
> >> Ie: it might also be fine to just leave them as NULL unconditionally
> >> on Arm.
> > 
> > Can the two pointers be NULL on x86? If not, then I would prefer if they 
> > disappear on Arm so there is less chance to make any mistake (such as 
> > unconditionally accessing the pointer in common code).
> 
> Alternative proposal: How about making it effectively impossible to
> de-reference the pointer on Arm by leaving the field there, but having
> the struct definition available on non-Arm only?

We could place the struct definitions somewhere else protected by
CONFIG_PCI_MSI_INTERCEPT, but I'm not sure that would be much
different than the current proposal, and overall I think I prefer this
approach then, as we keep the definition and the usage closer
together.

Maybe we could slightly modify the current layout so that
the field is always present, but the struct definition is made
conditional to CONFIG_PCI_MSI_INTERCEPT?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 08:28:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 08:28:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110360.210640 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWasx-0003yo-TF; Wed, 14 Apr 2021 08:28:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110360.210640; Wed, 14 Apr 2021 08: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 1lWasx-0003yg-Pv; Wed, 14 Apr 2021 08:28:31 +0000
Received: by outflank-mailman (input) for mailman id 110360;
 Wed, 14 Apr 2021 08:28: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 1lWasv-0003yI-Qe
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 08:28: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 1lWasp-0005dP-P8; Wed, 14 Apr 2021 08:28:23 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWasp-0005Dz-HO; Wed, 14 Apr 2021 08:28: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=PcUxa9JqaXK31h3i6FFECX0va0RkhCd5qUob+JgcV4U=; b=gUXke1UsGJduwrGFjrHEg/aoDm
	cc/csqpTOsJp8Bu25gXi4HflbxZlRDzVV4d45I4XPtmC9Y1DJV5zydb6kHGtkxXXvFGpQoQ1RH6o7
	tjxg7r05t7ck9pdF6BEnIIepSpAShTv3AbIofsyy5YbfzokK00cS7ymLKfKdwCGWissk=;
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>, Rahul Singh <rahul.singh@arm.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <ca4bef26-0869-8a56-e96c-04d3b41ffcd6@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <b6fa61e1-5e16-ad04-a052-89f617064a42@xen.org>
Date: Wed, 14 Apr 2021 09:28:20 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <ca4bef26-0869-8a56-e96c-04d3b41ffcd6@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Jan,

On 14/04/2021 08:08, Jan Beulich wrote:
> On 13.04.2021 19:12, Julien Grall wrote:
>> On 12/04/2021 11:49, Roger Pau Monné wrote:
>>> On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
>>>> --- a/xen/include/xen/vpci.h
>>>> +++ b/xen/include/xen/vpci.h
>>>> @@ -91,6 +91,7 @@ struct vpci {
>>>>            /* FIXME: currently there's no support for SR-IOV. */
>>>>        } header;
>>>>    
>>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>>>        /* MSI data. */
>>>>        struct vpci_msi {
>>>>          /* Address. */
>>>> @@ -136,6 +137,7 @@ struct vpci {
>>>>                struct vpci_arch_msix_entry arch;
>>>>            } entries[];
>>>>        } *msix;
>>>> +#endif /* CONFIG_PCI_MSI_INTERCEPT */
>>>
>>> Note that here you just remove two pointers from the struct, not that
>>> I'm opposed to it, but it's not that much space that's saved anyway.
>>> Ie: it might also be fine to just leave them as NULL unconditionally
>>> on Arm.
>>
>> Can the two pointers be NULL on x86? If not, then I would prefer if they
>> disappear on Arm so there is less chance to make any mistake (such as
>> unconditionally accessing the pointer in common code).
> 
> Alternative proposal: How about making it effectively impossible to
> de-reference the pointer on Arm by leaving the field there, but having
> the struct definition available on non-Arm only?

Meh, it making more difficult for the reader because it has to go 
through one more hop to find out why the structure is not defined.

IOW, I still prefer Rahul's version.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 08:47:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 08:47:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110369.210658 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbB5-00062g-GK; Wed, 14 Apr 2021 08:47:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110369.210658; Wed, 14 Apr 2021 08:47: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 1lWbB5-00062Z-D4; Wed, 14 Apr 2021 08:47:15 +0000
Received: by outflank-mailman (input) for mailman id 110369;
 Wed, 14 Apr 2021 08:47:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWbB4-00062U-VZ
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 08:47:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e4018436-0f9e-4935-ae33-8813a53348ec;
 Wed, 14 Apr 2021 08:47:13 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0A371ACC4;
 Wed, 14 Apr 2021 08:47: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: e4018436-0f9e-4935-ae33-8813a53348ec
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618390033; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=D4lEBVogTgQ1ZXXAYsO22rt4q6Shor33gD5YfZD62g4=;
	b=tdMnNQVkMbfZrfcNG65NCHpqwtNw5vmB2h4n05/8aSs6tqQyu9iAFzCJrYZzfqI6/8+ch8
	AXDJGnBZei3BT26URNaWHTBqqFXWMwrCtC4lDdhm89y0S/eT3Yro25oP1A1xD2Ph9pyFhC
	UNaBhT6v/83oESzocFnnEZ7RCpvL564=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org,
 bertrand.marquis@arm.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>, Rahul Singh <rahul.singh@arm.com>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <ca4bef26-0869-8a56-e96c-04d3b41ffcd6@suse.com>
 <YHanlHbEvzXHbQoj@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <026a9a34-b010-39eb-ad2c-e404f69cb4d4@suse.com>
Date: Wed, 14 Apr 2021 10:47:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHanlHbEvzXHbQoj@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 14.04.2021 10:28, Roger Pau Monné wrote:
> On Wed, Apr 14, 2021 at 09:08:53AM +0200, Jan Beulich wrote:
>> On 13.04.2021 19:12, Julien Grall wrote:
>>> On 12/04/2021 11:49, Roger Pau Monné wrote:
>>>> On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
>>>>> --- a/xen/include/xen/vpci.h
>>>>> +++ b/xen/include/xen/vpci.h
>>>>> @@ -91,6 +91,7 @@ struct vpci {
>>>>>           /* FIXME: currently there's no support for SR-IOV. */
>>>>>       } header;
>>>>>   
>>>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>>>>       /* MSI data. */
>>>>>       struct vpci_msi {
>>>>>         /* Address. */
>>>>> @@ -136,6 +137,7 @@ struct vpci {
>>>>>               struct vpci_arch_msix_entry arch;
>>>>>           } entries[];
>>>>>       } *msix;
>>>>> +#endif /* CONFIG_PCI_MSI_INTERCEPT */
>>>>
>>>> Note that here you just remove two pointers from the struct, not that
>>>> I'm opposed to it, but it's not that much space that's saved anyway.
>>>> Ie: it might also be fine to just leave them as NULL unconditionally
>>>> on Arm.
>>>
>>> Can the two pointers be NULL on x86? If not, then I would prefer if they 
>>> disappear on Arm so there is less chance to make any mistake (such as 
>>> unconditionally accessing the pointer in common code).
>>
>> Alternative proposal: How about making it effectively impossible to
>> de-reference the pointer on Arm by leaving the field there, but having
>> the struct definition available on non-Arm only?
> 
> We could place the struct definitions somewhere else protected by
> CONFIG_PCI_MSI_INTERCEPT, but I'm not sure that would be much
> different than the current proposal, and overall I think I prefer this
> approach then, as we keep the definition and the usage closer
> together.
> 
> Maybe we could slightly modify the current layout so that
> the field is always present, but the struct definition is made
> conditional to CONFIG_PCI_MSI_INTERCEPT?

You mean like this

    /* MSI data. */
    struct vpci_msi {
#ifdef CONFIG_PCI_MSI_INTERCEPT
        /* Address. */
...
            struct vpci_arch_msix_entry arch;
        } entries[];
#endif /* CONFIG_PCI_MSI_INTERCEPT */
    } *msix;

? I could live with it, but this would have the compiler not
refuse e.g. sizeof(struct vpci_msi) or instantiation of the
struct as a (local) variable, unlike my proposal.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 08:49:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 08:49:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110379.210670 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbDX-0006Dm-41; Wed, 14 Apr 2021 08:49:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110379.210670; Wed, 14 Apr 2021 08:49: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 1lWbDX-0006Df-11; Wed, 14 Apr 2021 08:49:47 +0000
Received: by outflank-mailman (input) for mailman id 110379;
 Wed, 14 Apr 2021 08:49: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 1lWbDV-0006Da-TJ
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 08:49: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 1lWbDQ-0005yL-3L; Wed, 14 Apr 2021 08:49:40 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWbDP-0007Bp-Qn; Wed, 14 Apr 2021 08:49: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=BJ/mrWa1vDI4MEX+z4BXgXxOBIj3SU4Xpw3gXYq0KgU=; b=4cQeyOMFNAFUdfW/CYS4YCzmap
	KwvVvAPqSVFOkXlZUhpx/tKP6GGOOgdmsVKMyStmUFzsv2b9fdmHk7LkYhMiomGeVIkCP7iR50pjM
	E9N18QcDRsLV10CQ18bfdJI8btv0HEloX0YQAmnJ58arY9vABjBBvwDJZpsDcNSTqtEA=;
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Rahul Singh <rahul.singh@arm.com>, xen-devel@lists.xenproject.org,
 bertrand.marquis@arm.com, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
From: Julien Grall <julien@xen.org>
Message-ID: <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
Date: Wed, 14 Apr 2021 09:49:37 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHaiW4xX0p6ov2Z9@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Roger,

On 14/04/2021 09:05, Roger Pau Monné wrote:
> On Tue, Apr 13, 2021 at 06:12:10PM +0100, Julien Grall wrote:
>> Hi Roger,
>>
>> On 12/04/2021 11:49, Roger Pau Monné wrote:
>>> On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
>>>> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
>>>> index 705137f8be..1b473502a1 100644
>>>> --- a/xen/drivers/passthrough/pci.c
>>>> +++ b/xen/drivers/passthrough/pci.c
>>>> @@ -1303,12 +1279,15 @@ static int __init setup_dump_pcidevs(void)
>>>>    }
>>>>    __initcall(setup_dump_pcidevs);
>>>> +
>>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>>>    int iommu_update_ire_from_msi(
>>>>        struct msi_desc *msi_desc, struct msi_msg *msg)
>>>>    {
>>>>        return iommu_intremap
>>>>               ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>>>>    }
>>>> +#endif
>>>
>>> This is not exactly related to MSI intercepts, the IOMMU interrupt
>>> remapping table will also be used for interrupt entries for devices
>>> being used by Xen directly, where no intercept is required.
>>
>> On Arm, this is not tie to the IOMMU. Instead, this handled is a separate
>> MSI controller (such as the ITS).
>>
>>>
>>> And then you also want to gate the hook from iommu_ops itself with
>>> CONFIG_PCI_MSI_INTERCEPT, if we want to got this route.
>>
>>
>> All the callers are in the x86 code. So how about moving the function in an
>> x86 specific file?
> 
> Yes, that seems fine. Just place it in asm-x86/iommu.h. I wonder why
> update_ire_from_msi wasn't moved when the rest of the x86 specific
> functions where moved there.

I am guessing it is because the function was protected by CONFIG_HAS_PCI 
rather than CONFIG_X86. So it was deferred until another arch enables 
CONFIG_HAS_PCI (it is easier to know what code should be moved).

> Was there an aim to use that in other
> arches?

In the future we may need to use MSIs in Xen (IIRC some SMMUs only 
support MSI interrupt). But I think the naming would be misleading as 
the IOMMU will not be used for the remapping.

So most likely, we would want a more generic name (maybe 
"arch_register_msi()"). This could call iommu_update_ire_from_msi() on 
x86 and the ITS on Arm.

I don't know how RISCv and PowerPC remap the interrupt. But if they are 
using the IOMMU then we could provide a generic helper protected by 
CONFIG_HAS_IOMMU_INTERRUPT_REMAP (or a similar name).

> 
> The hook in iommu_ops also need to be moved inside the x86 region.
> Please do this iommu change in a separate patch.

+1

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 09:14:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 09:14:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110391.210718 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbbV-0000f6-Ty; Wed, 14 Apr 2021 09:14:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110391.210718; Wed, 14 Apr 2021 09:14: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 1lWbbV-0000ex-Q5; Wed, 14 Apr 2021 09:14:33 +0000
Received: by outflank-mailman (input) for mailman id 110391;
 Wed, 14 Apr 2021 09:14:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWbbU-0000WW-8i
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 09:14:32 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 0ce19af9-f6a3-457b-b6d4-ff9b5050315a;
 Wed, 14 Apr 2021 09:14:18 +0000 (UTC)
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 461DF11B3;
 Wed, 14 Apr 2021 02:14:18 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 605463F73B;
 Wed, 14 Apr 2021 02:14: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: 0ce19af9-f6a3-457b-b6d4-ff9b5050315a
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v4 3/4] xen/arm: Clarify how the domid is decided in create_domUs()
Date: Wed, 14 Apr 2021 10:14:03 +0100
Message-Id: <20210414091404.14215-4-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210414091404.14215-1-luca.fancellu@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>

This patch adds a comment in create_domUs() right before
domain_create() to explain the importance of the pre-increment
operator on the variable max_init_domid, to ensure that the
domid 0 is allocated only during start_xen() function by the
create_dom0() and not on any other possible code path to the
domain_create() function.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
Changes in v4:
- Change to the commit title
Changes in v3:
- removed check introduced in v2.
---
 xen/arch/arm/domain_build.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 359957dc1b..b1d7b9849f 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2508,6 +2508,11 @@ void __init create_domUs(void)
                                          GUEST_VPL011_SPI - 32 + 1);
         }
 
+        /*
+         * The variable max_init_domid is initialized with zero, so here it's
+         * very important to use the pre-increment operator to call
+         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
+         */
         d = domain_create(++max_init_domid, &d_cfg, false);
         if ( IS_ERR(d) )
             panic("Error creating domain %s\n", dt_node_name(node));
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 09:14:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 09:14:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110388.210681 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbbH-0000Wl-2C; Wed, 14 Apr 2021 09:14:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110388.210681; Wed, 14 Apr 2021 09: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 1lWbbG-0000We-VU; Wed, 14 Apr 2021 09:14:18 +0000
Received: by outflank-mailman (input) for mailman id 110388;
 Wed, 14 Apr 2021 09:14:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWbbF-0000WW-Mt
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 09:14:17 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 0cc3622b-046f-4e48-917f-8521259862db;
 Wed, 14 Apr 2021 09:14:15 +0000 (UTC)
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 D540B11B3;
 Wed, 14 Apr 2021 02:14:14 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4C62C3F73B;
 Wed, 14 Apr 2021 02:14:13 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0cc3622b-046f-4e48-917f-8521259862db
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Rahul Singh <rahul.singh@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v4 0/4] xen/arm: Prevent Dom0 to be loaded when using dom0less
Date: Wed, 14 Apr 2021 10:14:00 +0100
Message-Id: <20210414091404.14215-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1

This is the v2 of xen/arm: Prevent Dom0 to be loaded when using dom0less
previously pushed.

The aim of this serie is to prevent the creation and run of the domain 0 (Dom0)
when the system configuration to be used is dom0less, that is when the device
tree declares at least one domU and no Dom0.

Changes in v2 are:
 - Moving the dom0 creation in a proper function
 - Handle the case of having an hardware_domain NULL
 - Be sure that the domain id 0 is never allocated
 - Modify documentation about dom0less

Changes in v3: minor fixes explained in each patches

Chenges in v4: minor fixes explained in each patches

Luca Fancellu (4):
  xen/arm: Move dom0 creation in domain_build.c
  xen/arm: Handle cases when hardware_domain is NULL
  xen/arm: Clarify how the domid is decided in create_domUs()
  xen/arm: Prevent Dom0 to be loaded when using dom0less

 docs/features/dom0less.pandoc            |  7 +--
 xen/arch/arm/domain_build.c              | 43 ++++++++++++++-
 xen/arch/arm/irq.c                       |  2 +-
 xen/arch/arm/setup.c                     | 69 +++++++++++++-----------
 xen/drivers/passthrough/arm/ipmmu-vmsa.c |  2 +-
 xen/drivers/passthrough/arm/smmu-v3.c    |  2 +-
 xen/drivers/passthrough/arm/smmu.c       |  2 +-
 xen/include/asm-arm/domain.h             |  2 +-
 xen/include/asm-arm/setup.h              |  2 +-
 9 files changed, 91 insertions(+), 40 deletions(-)

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 09:14:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 09:14:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110389.210694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbbM-0000Y6-9n; Wed, 14 Apr 2021 09:14:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110389.210694; Wed, 14 Apr 2021 09: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 1lWbbM-0000Xy-6l; Wed, 14 Apr 2021 09:14:24 +0000
Received: by outflank-mailman (input) for mailman id 110389;
 Wed, 14 Apr 2021 09:14:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWbbK-0000WW-8U
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 09:14:22 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id c7d372f0-ac64-4c8b-be3c-a9fe2ab04792;
 Wed, 14 Apr 2021 09:14:16 +0000 (UTC)
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 ED49111D4;
 Wed, 14 Apr 2021 02:14:15 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 12AE63F73B;
 Wed, 14 Apr 2021 02: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: c7d372f0-ac64-4c8b-be3c-a9fe2ab04792
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v4 1/4] xen/arm: Move dom0 creation in domain_build.c
Date: Wed, 14 Apr 2021 10:14:01 +0100
Message-Id: <20210414091404.14215-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210414091404.14215-1-luca.fancellu@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>

Move dom0 create and start from setup.c to a dedicated
function in domain_build.c.

With this change, the function construct_dom0() is not
used outside of domain_build.c anymore.
So it is now a static function.

No functional changes intended.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
v4 changes:
- changes to the commit message
v3 changes:
- move create_dom0 function after construct_dom0 and
  make construct_dom0 static
---
 xen/arch/arm/domain_build.c | 38 ++++++++++++++++++++++++++++++++++++-
 xen/arch/arm/setup.c        | 29 +---------------------------
 xen/include/asm-arm/setup.h |  2 +-
 3 files changed, 39 insertions(+), 30 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 374bf655ee..359957dc1b 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -21,6 +21,7 @@
 #include <asm/device.h>
 #include <asm/kernel.h>
 #include <asm/setup.h>
+#include <asm/tee/tee.h>
 #include <asm/platform.h>
 #include <asm/psci.h>
 #include <asm/setup.h>
@@ -2520,7 +2521,7 @@ void __init create_domUs(void)
     }
 }
 
-int __init construct_dom0(struct domain *d)
+static int __init construct_dom0(struct domain *d)
 {
     struct kernel_info kinfo = {};
     int rc;
@@ -2578,6 +2579,41 @@ int __init construct_dom0(struct domain *d)
     return construct_domain(d, &kinfo);
 }
 
+struct domain* __init create_dom0(void)
+{
+    struct domain *dom0;
+    struct xen_domctl_createdomain dom0_cfg = {
+        .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
+        .max_evtchn_port = -1,
+        .max_grant_frames = gnttab_dom0_frames(),
+        .max_maptrack_frames = -1,
+    };
+
+    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
+    dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
+    /*
+     * Xen vGIC supports a maximum of 992 interrupt lines.
+     * 32 are substracted to cover local IRQs.
+     */
+    dom0_cfg.arch.nr_spis = min(gic_number_lines(), (unsigned int) 992) - 32;
+    if ( gic_number_lines() > 992 )
+        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n");
+    dom0_cfg.arch.tee_type = tee_get_type();
+    dom0_cfg.max_vcpus = dom0_max_vcpus();
+
+    if ( iommu_enabled )
+        dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
+
+    dom0 = domain_create(0, &dom0_cfg, true);
+    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
+        panic("Error creating domain 0\n");
+
+    if ( construct_dom0(dom0) != 0)
+        panic("Could not set up DOM0 guest OS\n");
+
+    return dom0;
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 2532ec9739..b405f58996 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -51,7 +51,6 @@
 #include <asm/platform.h>
 #include <asm/procinfo.h>
 #include <asm/setup.h>
-#include <asm/tee/tee.h>
 #include <xsm/xsm.h>
 #include <asm/acpi.h>
 
@@ -805,12 +804,6 @@ void __init start_xen(unsigned long boot_phys_offset,
     const char *cmdline;
     struct bootmodule *xen_bootmodule;
     struct domain *dom0;
-    struct xen_domctl_createdomain dom0_cfg = {
-        .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
-        .max_evtchn_port = -1,
-        .max_grant_frames = gnttab_dom0_frames(),
-        .max_maptrack_frames = -1,
-    };
     int rc;
 
     dcache_line_bytes = read_dcache_line_bytes();
@@ -965,27 +958,7 @@ void __init start_xen(unsigned long boot_phys_offset,
     enable_errata_workarounds();
 
     /* Create initial domain 0. */
-    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
-    dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
-    /*
-     * Xen vGIC supports a maximum of 992 interrupt lines.
-     * 32 are substracted to cover local IRQs.
-     */
-    dom0_cfg.arch.nr_spis = min(gic_number_lines(), (unsigned int) 992) - 32;
-    if ( gic_number_lines() > 992 )
-        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n");
-    dom0_cfg.arch.tee_type = tee_get_type();
-    dom0_cfg.max_vcpus = dom0_max_vcpus();
-
-    if ( iommu_enabled )
-        dom0_cfg.flags |= XEN_DOMCTL_CDF_iommu;
-
-    dom0 = domain_create(0, &dom0_cfg, true);
-    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
-        panic("Error creating domain 0\n");
-
-    if ( construct_dom0(dom0) != 0)
-        panic("Could not set up DOM0 guest OS\n");
+    dom0 = create_dom0();
 
     heap_init_late();
 
diff --git a/xen/include/asm-arm/setup.h b/xen/include/asm-arm/setup.h
index 28bf622aa1..5283244015 100644
--- a/xen/include/asm-arm/setup.h
+++ b/xen/include/asm-arm/setup.h
@@ -93,8 +93,8 @@ void acpi_create_efi_mmap_table(struct domain *d,
 
 int acpi_make_efi_nodes(void *fdt, struct membank tbl_add[]);
 
-int construct_dom0(struct domain *d);
 void create_domUs(void);
+struct domain* create_dom0(void);
 
 void discard_initial_modules(void);
 void fw_unreserved_regions(paddr_t s, paddr_t e,
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 09:14:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 09:14:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110390.210706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbbQ-0000am-K3; Wed, 14 Apr 2021 09:14:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110390.210706; Wed, 14 Apr 2021 09:14: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 1lWbbQ-0000ad-GV; Wed, 14 Apr 2021 09:14:28 +0000
Received: by outflank-mailman (input) for mailman id 110390;
 Wed, 14 Apr 2021 09:14:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWbbP-0000WW-8g
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 09:14:27 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 92e6865c-ce27-4444-8413-6449d678ba19;
 Wed, 14 Apr 2021 09:14:17 +0000 (UTC)
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 2E04811FB;
 Wed, 14 Apr 2021 02:14:17 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2C1883F73B;
 Wed, 14 Apr 2021 02:14: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: 92e6865c-ce27-4444-8413-6449d678ba19
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Rahul Singh <rahul.singh@arm.com>
Subject: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is NULL
Date: Wed, 14 Apr 2021 10:14:02 +0100
Message-Id: <20210414091404.14215-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210414091404.14215-1-luca.fancellu@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>

Among the common and arm codebase there are few cases where
the hardware_domain variable is checked to see if the current
domain is equal to the hardware_domain, change this cases to
use is_hardware_domain() function instead.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
v4 changes:
- removed unneeded check for domain NULL from is_hardware_domain
  introduced in v3
v3 changes:
- removed unneeded parenthesis for macro is_domain_direct_mapped
- is_hardware_domain() checks for the passed domain and if it is
  NULL, it returns false.
- reverted back checks in the function late_hwdom_init
---
 xen/arch/arm/irq.c                       | 2 +-
 xen/drivers/passthrough/arm/ipmmu-vmsa.c | 2 +-
 xen/drivers/passthrough/arm/smmu-v3.c    | 2 +-
 xen/drivers/passthrough/arm/smmu.c       | 2 +-
 xen/include/asm-arm/domain.h             | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
index b71b099e6f..b761d90c40 100644
--- a/xen/arch/arm/irq.c
+++ b/xen/arch/arm/irq.c
@@ -412,7 +412,7 @@ bool is_assignable_irq(unsigned int irq)
  */
 bool irq_type_set_by_domain(const struct domain *d)
 {
-    return (d == hardware_domain);
+    return is_hardware_domain(d);
 }
 
 /*
diff --git a/xen/drivers/passthrough/arm/ipmmu-vmsa.c b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
index aef358d880..8b8e3a00ba 100644
--- a/xen/drivers/passthrough/arm/ipmmu-vmsa.c
+++ b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
@@ -1168,7 +1168,7 @@ static int ipmmu_reassign_device(struct domain *s, struct domain *t,
     int ret = 0;
 
     /* Don't allow remapping on other domain than hwdom */
-    if ( t && t != hardware_domain )
+    if ( t && !is_hardware_domain(t) )
         return -EPERM;
 
     if ( t == s )
diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c
index 53d150cdb6..d115df7320 100644
--- a/xen/drivers/passthrough/arm/smmu-v3.c
+++ b/xen/drivers/passthrough/arm/smmu-v3.c
@@ -3366,7 +3366,7 @@ 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 && t != hardware_domain)
+	if ( t && !is_hardware_domain(t) )
 		return -EPERM;
 
 	if (t == s)
diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index 3e8aa37866..932fdfd6dd 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -2670,7 +2670,7 @@ 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 && t != hardware_domain)
+	if ( t && !is_hardware_domain(t) )
 		return -EPERM;
 
 	if (t == s)
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 1da90f207d..0a74df9931 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -30,7 +30,7 @@ enum domain_type {
 #endif
 
 /* The hardware domain has always its memory direct mapped. */
-#define is_domain_direct_mapped(d) ((d) == hardware_domain)
+#define is_domain_direct_mapped(d) is_hardware_domain(d)
 
 struct vtimer {
     struct vcpu *v;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 09:14:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 09:14:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110394.210730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbbb-0000kJ-5z; Wed, 14 Apr 2021 09:14:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110394.210730; Wed, 14 Apr 2021 09:14:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbbb-0000kA-21; Wed, 14 Apr 2021 09:14:39 +0000
Received: by outflank-mailman (input) for mailman id 110394;
 Wed, 14 Apr 2021 09:14:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWbbZ-0000WW-8l
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 09:14:37 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 509b9bdd-2b28-4f00-b62a-231a8a4782a9;
 Wed, 14 Apr 2021 09:14:20 +0000 (UTC)
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 E728E11B3;
 Wed, 14 Apr 2021 02:14:19 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7A4443F73B;
 Wed, 14 Apr 2021 02: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: 509b9bdd-2b28-4f00-b62a-231a8a4782a9
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v4 4/4] xen/arm: Prevent Dom0 to be loaded when using dom0less
Date: Wed, 14 Apr 2021 10:14:04 +0100
Message-Id: <20210414091404.14215-5-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210414091404.14215-1-luca.fancellu@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>

This patch prevents the dom0 to be loaded skipping its
building and going forward to build domUs when the dom0
kernel is not found and at least one domU is present.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
v3 changes:
- Rephrase documentation
---
 docs/features/dom0less.pandoc |  7 +++---
 xen/arch/arm/setup.c          | 42 ++++++++++++++++++++++++++++++++---
 2 files changed, 43 insertions(+), 6 deletions(-)

diff --git a/docs/features/dom0less.pandoc b/docs/features/dom0less.pandoc
index d798596cdf..c9edb529e1 100644
--- a/docs/features/dom0less.pandoc
+++ b/docs/features/dom0less.pandoc
@@ -16,9 +16,10 @@ Multiboot specification has been extended to allow for multiple domains
 to be passed to Xen. See docs/misc/arm/device-tree/booting.txt for more
 information about the Multiboot specification and how to use it.
 
-Currently, a control domain ("dom0") is still required, but in the
-future it will become unnecessary when all domains are created
-directly from Xen. Instead of waiting for the control domain to be fully
+Currently, a control domain ("dom0") is still required to manage the DomU
+domains, but the system can start also without dom0 if the Device Tree
+doesn't specify the dom0 kernel and it declares one or more domUs.
+Instead of waiting for the control domain (when declared) to be fully
 booted and the Xen tools to become available, domains created by Xen
 this way are started right away in parallel. Hence, their boot time is
 typically much shorter.
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index b405f58996..ecc4f0ae98 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -793,6 +793,38 @@ static void __init setup_mm(void)
 }
 #endif
 
+static bool __init is_dom0less_mode(void)
+{
+    struct bootmodules *mods = &bootinfo.modules;
+    struct bootmodule *mod;
+    unsigned int i;
+    bool dom0found = false;
+    bool domUfound = false;
+
+    /* Look into the bootmodules */
+    for ( i = 0 ; i < mods->nr_mods ; i++ )
+    {
+        mod = &mods->module[i];
+        /* Find if dom0 and domU kernels are present */
+        if ( mod->kind == BOOTMOD_KERNEL )
+        {
+            if ( mod->domU == false )
+            {
+                dom0found = true;
+                break;
+            }
+            else
+                domUfound = true;
+        }
+    }
+
+    /*
+     * If there is no dom0 kernel but at least one domU, then we are in
+     * dom0less mode
+     */
+    return ( !dom0found && domUfound );
+}
+
 size_t __read_mostly dcache_line_bytes;
 
 /* C entry point for boot CPU */
@@ -803,7 +835,7 @@ void __init start_xen(unsigned long boot_phys_offset,
     int cpus, i;
     const char *cmdline;
     struct bootmodule *xen_bootmodule;
-    struct domain *dom0;
+    struct domain *dom0 = NULL;
     int rc;
 
     dcache_line_bytes = read_dcache_line_bytes();
@@ -958,7 +990,10 @@ void __init start_xen(unsigned long boot_phys_offset,
     enable_errata_workarounds();
 
     /* Create initial domain 0. */
-    dom0 = create_dom0();
+    if ( !is_dom0less_mode() )
+        dom0 = create_dom0();
+    else
+        printk(XENLOG_INFO "Xen dom0less mode detected\n");
 
     heap_init_late();
 
@@ -976,7 +1011,8 @@ void __init start_xen(unsigned long boot_phys_offset,
     if ( acpi_disabled )
         create_domUs();
 
-    domain_unpause_by_systemcontroller(dom0);
+    if ( dom0 )
+        domain_unpause_by_systemcontroller(dom0);
 
     /* Switch on to the dynamically allocated stack for the idle vcpu
      * since the static one we're running on is about to be freed. */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 09:28:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 09:28:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110415.210742 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWbpF-000298-LS; Wed, 14 Apr 2021 09:28:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110415.210742; Wed, 14 Apr 2021 09: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 1lWbpF-000291-IO; Wed, 14 Apr 2021 09:28:45 +0000
Received: by outflank-mailman (input) for mailman id 110415;
 Wed, 14 Apr 2021 09:26:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1bzM=JL=gmail.com=y.karadz@srs-us1.protection.inumbo.net>)
 id 1lWbme-00027M-LB
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 09:26:04 +0000
Received: from mail-wr1-x436.google.com (unknown [2a00:1450:4864:20::436])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e469b932-b144-412b-9f90-1f5a542d1e8c;
 Wed, 14 Apr 2021 09:26:00 +0000 (UTC)
Received: by mail-wr1-x436.google.com with SMTP id a4so19174467wrr.2
 for <xen-devel@lists.xenproject.org>; Wed, 14 Apr 2021 02:26:00 -0700 (PDT)
Received: from [192.168.0.109] ([95.87.199.115])
 by smtp.gmail.com with ESMTPSA id n2sm5743675wmb.32.2021.04.14.02.25.58
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 14 Apr 2021 02:25: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: e469b932-b144-412b-9f90-1f5a542d1e8c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=subject:to:cc:references:from:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=X8q3FgByrSYOUKQf7zOaaQGPFDPjXNgMRbp5mslJlTI=;
        b=Zf2nMU+As937UO+s2oZvogr/m8q7qVZZNdMAzRhwnLX/uNuCCLNH/uIDhU8ccpBucc
         2Z/FV4rYQlBMSe986tmKDVVE/6rnFmPGgx3MAGpyt3hoZnSVQQXHuScyK5kVEWxMhrMm
         VXQrUE+PorrIA8vnSEJ0fwzUVdGx086TPxe7/1lVBOJRtR34ERCDXVi2O7/Uud00vQfe
         N3dV+nIddzRSpDm++SZXRCnPj2jazZo+HDM34a7coKP6lcqhtCu9V7epH5rg5G4X5sBA
         Yt5uaiOwBsVG1onlZjsg4kAYyqZMfulS3CP0lMWfevJwZ7gkJ0N8VMj2865owpWhXmmU
         iJuA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:subject:to:cc:references:from:message-id:date
         :user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=X8q3FgByrSYOUKQf7zOaaQGPFDPjXNgMRbp5mslJlTI=;
        b=gWdA9Me2YUZlg3k4dmaxl6M9CMfJhAmNRfq0HDOCNMs09fxMd1y53I6WIQZM/jbZjs
         VYPsdh+D6eoNU7SmiRkKeqtQVVFSiemcA+OZIc+T8OyRMWUAcq68N2B+hpFflicH7GXa
         ZLzYsDHcB4XGg4MC0MgYkpe/Yqjce8OhYWBFmeMljls79s1tOiMohPlSoe6X/djYYB8R
         7LpWArbQFNIoJsz5xXsJ5YL7xMWrF6oo6W3dNKXnYXM1sTk4Bybw3opIYaw0/FlpnAcM
         vXJCF4X6P2+UBJpwdOa8bfGYlhlTIsAqnACcuxGYKiKTr95+APsyUd8YdElsR2AojB50
         amtQ==
X-Gm-Message-State: AOAM533amsfMeWMBH/8DO1ttaJowrR8NZxh+F61aewJvpNyXJEMyIijV
	6iBTDXQmIzkRNrajw+aMfTE=
X-Google-Smtp-Source: ABdhPJxtAHP+Bj4eAj+RP55I3r/5fkmKFZUWLkb1RgkSaI4Qa0KurGlBD3h/byGfoeOLOE/PwqPutA==
X-Received: by 2002:adf:ea09:: with SMTP id q9mr5221153wrm.235.1618392359416;
        Wed, 14 Apr 2021 02:25:59 -0700 (PDT)
Subject: =?UTF-8?Q?Re=3a_A_KernelShark_plugin_for_Xen_traces_analysis_?=
 =?UTF-8?B?4oCL?=
To: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>,
 linux-trace-devel@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: Dario Faggioli <dfaggioli@suse.com>, Enrico Bini <enrico.bini@unito.it>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
From: "Yordan Karadzhov (VMware)" <y.karadz@gmail.com>
Message-ID: <8b43ae47-9d7e-a95c-4573-852d09f99662@gmail.com>
Date: Wed, 14 Apr 2021 12:25:57 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.1
MIME-Version: 1.0
In-Reply-To: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Giuseppe,

It is great to see such progress in the development of the Xen plugin.

Can you share with us what are your plans for continuing this work. Is 
this a first prototype of the plugin, or it is an almost final version?

I was also thinking that maybe you can prepare a short tutorial on 
writing KernelShark plugins for data inputs. You have the best 
experience for this task, since you are the first to develop an external 
plugin. Ideally, this can even turn into a talk that you can give at 
some open source event.
What do you think?

Best,
Yordan


On 13.04.21 г. 17:28, Giuseppe Eletto wrote:
> Hello,
> I want to share with you a new plugin developed by me, under the
> supervision of Dario Faggioli, which allows the new version of KernelShark
> (the v2-beta) to open and view the Xen traces created using the "xentrace" tool.
> 
> In fact, KernelShark is a well known tool for graphical visualization
> Linux kernel traces, obtained via "ftrace" and "trace-cmd". Anyway thanks
> to its modular architecture, it is now possible to implement plugins which
> open and display traces with arbitrary format, for example, as in in
> this case, traces of the Xen hypervisor.
> 
> For more information on how to build the plugin and/or
> to view the source code I leave the repository below:
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin
> 
> 
> In short:
> 
> $ sudo apt install git build-essential libjson-c-dev
> $ git clone --recurse-submodules
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
> $ cd kernelshark-xentrace-plugin/
> $ make
> 
> $ export XEN_CPUHZ=3G # Sets the CPU frequency ((G)hz/(M)hz/(K)hz/hz)
> $ kernelshark -p out/ks-xentrace.so trace.xen
> 
> 
> You will need the development version of KernelShark, available here:
> https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git
> 
> A screenshot of the plugin in action is available here:
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/.github/img/ks-xentrace.png
> 
> I'm happy to receive whatever feedback you may have about it,
> and to answer any question.
> 
> Kind regards,
> Giuseppe Eletto.
> 


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 09:50:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 09:50:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110423.210760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWc9j-00048S-7X; Wed, 14 Apr 2021 09:49:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110423.210760; Wed, 14 Apr 2021 09:49: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 1lWc9j-00048L-3r; Wed, 14 Apr 2021 09:49:55 +0000
Received: by outflank-mailman (input) for mailman id 110423;
 Wed, 14 Apr 2021 09:49: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 1lWc9i-00048D-G3; Wed, 14 Apr 2021 09:49: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 1lWc9i-0006yo-A0; Wed, 14 Apr 2021 09:49: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 1lWc9i-0002Ag-1D; Wed, 14 Apr 2021 09:49:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWc9i-000673-0j; Wed, 14 Apr 2021 09:49: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=8EunPK5uDBxoqKX+I7VT3ROsVlujaR40L3WQxsm5lXU=; b=6JCdi8zbt18DSGHcczgyHyVBw6
	QAP+3pOG4wxKMG36vS07mtT4vEflV3FDYmWGDITtofUFv3dw82Pw96/44EngszC5rDSYtWMAl04mO
	w3EfUMaqy5ctcLBrSuoJSkm7gJIEHg75n6LxEvp45DhXPm72zZMqkQ09lyxQGAgu9LCk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161129-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-coverity test] 161129: all pass - PUSHED
X-Osstest-Versions-This:
    xen=264aa183ad85b2779b27d1312724a291259ccc9f
X-Osstest-Versions-That:
    xen=935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 09:49:54 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xen                  264aa183ad85b2779b27d1312724a291259ccc9f
baseline version:
 xen                  935d501ccbf5b8c4db1f6d0730a4a4c998e9e76a

Last test of basis   160967  2021-04-11 09:18:29 Z    3 days
Testing same since   161129  2021-04-14 09:19:54 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Dmitry Fedorov <d.fedorov@tabit.pro>
  Ian Jackson <ian.jackson@eu.citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Wei Liu <wl@xen.org>

jobs:
 coverity-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/xen.git
   935d501ccb..264aa183ad  264aa183ad85b2779b27d1312724a291259ccc9f -> coverity-tested/smoke


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:07:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:07:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110431.210774 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWcQN-00069m-Q1; Wed, 14 Apr 2021 10:07:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110431.210774; Wed, 14 Apr 2021 10:07: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 1lWcQN-00069f-Lp; Wed, 14 Apr 2021 10:07:07 +0000
Received: by outflank-mailman (input) for mailman id 110431;
 Wed, 14 Apr 2021 10:07:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWcQM-00069a-43
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:07:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 28c2ab46-5424-4db3-a9af-555ef1eb2a16;
 Wed, 14 Apr 2021 10:07:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 73D22AEC2;
 Wed, 14 Apr 2021 10:07:03 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 28c2ab46-5424-4db3-a9af-555ef1eb2a16
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618394823; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=P+BFNuRrnu/f/EndnfZG2/F8EA9Ao/8PPSJJTwXHVb4=;
	b=KKPFybKDW2qtdtA/Bfvrb9ceupyJGcLSbnMSrSe6++11af7BydC8ITSdiTST0Ijtr6cfNO
	ZqpK8voup5bpSXoDStpZeGMo4PTj6pYJCax6z+NF5h9qBVz5cfD/zINyeKPCCGvvjnJ/ZD
	QZXJnEj/WRR0X5kPTeUlK2Nu/uutuSA=
Subject: Re: [RFC PATCH] VT-d: Don't assume register-based invalidation is
 always supported
To: Chao Gao <chao.gao@intel.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
References: <20210414005526.36760-1-chao.gao@intel.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <568f7b59-57e0-7daf-c27d-b771869209c4@suse.com>
Date: Wed, 14 Apr 2021 12:07:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210414005526.36760-1-chao.gao@intel.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 14.04.2021 02:55, Chao Gao wrote:
> According to Intel VT-d SPEC rev3.3 Section 6.5, Register-based Invalidation
> isn't supported by Intel VT-d version 6 and beyond.
> 
> This hardware change impacts following two scenarios: admin can disable
> queued invalidation via 'qinval' cmdline and use register-based interface;
> VT-d switches to register-based invalidation when queued invalidation needs
> to be disabled, for example, during disabling x2apic or during system
> suspension.
> 
> To deal with this hardware change, if register-based invalidation isn't
> supported, queued invalidation cannot be disabled through Xen cmdline; and
> if queued invalidation has to be disabled temporarily in some scenarios,
> VT-d won't switch to register-based interface but use some dummy functions
> to catch errors in case there is any invalidation request issued when queued
> invalidation is disabled.
> 
> Signed-off-by: Chao Gao <chao.gao@intel.com>
> ---
> I only tested Xen boot with qinval/no-qinval. I also want to do system
> suspension and resumption to see if any unexpected error. But I don't
> know how to trigger them. Any recommendation?

Iirc, if your distro doesn't support a proper interface for this, it's
as simple as "echo mem >/sys/power/state".

> --- a/xen/drivers/passthrough/vtd/iommu.c
> +++ b/xen/drivers/passthrough/vtd/iommu.c
> @@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>  
>      iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
>      iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
> +    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
> +
> +    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
> +    {
> +        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
> +               iommu->index);
> +        iommu_qinval = true;
> +    }

With this I don't see ...

> @@ -2231,6 +2239,8 @@ static int __init vtd_setup(void)
>      struct acpi_drhd_unit *drhd;
>      struct vtd_iommu *iommu;
>      int ret;
> +    bool queued_inval_supported = true;
> +    bool reg_inval_supported = true;

... the need for the first variable here. You'd simply ...

> @@ -2272,8 +2282,11 @@ static int __init vtd_setup(void)
>          if ( iommu_hwdom_passthrough && !ecap_pass_thru(iommu->ecap) )
>              iommu_hwdom_passthrough = false;
>  
> -        if ( iommu_qinval && !ecap_queued_inval(iommu->ecap) )
> -            iommu_qinval = 0;

... clear iommu_qinval here again, and use that in the 1st if() you
add in the next hunk; the 2nd if() there would go away again.

> +        if ( reg_inval_supported && !has_register_based_invalidation(iommu) )
> +            reg_inval_supported = false;
> +
> +        if ( queued_inval_supported && !ecap_queued_inval(iommu->ecap) )
> +            queued_inval_supported = false;

I don't see the need for the left sides of the && in both of these
(or in fact any of the pre-existing) if()-s. (Of course this is not
a request to also adjust the ones that are already there.)

> @@ -2301,6 +2314,25 @@ static int __init vtd_setup(void)
>  
>      softirq_tasklet_init(&vtd_fault_tasklet, do_iommu_page_fault, NULL);
>  
> +    if ( !queued_inval_supported && !reg_inval_supported )
> +    {
> +        dprintk(XENLOG_ERR VTDPREFIX, "No available invalidation interface.\n");
> +        ret = -ENODEV;
> +        goto error;
> +    }
> +
> +    /*
> +     * We cannot have !iommu_qinval && !reg_inval_supported here since
> +     * iommu_qinval is set in iommu_alloc() if any iommu doesn't support
> +     * Register-based Invalidation.
> +     */
> +    if ( iommu_qinval && !queued_inval_supported )
> +    {
> +        dprintk(XENLOG_WARNING VTDPREFIX, "Disable Queued Invalidation as "
> +                "it isn't supported.\n");
> +        iommu_qinval = false;
> +    }
> +
>      if ( !iommu_qinval && iommu_intremap )
>      {
>          iommu_intremap = iommu_intremap_off;
> --- a/xen/drivers/passthrough/vtd/iommu.h
> +++ b/xen/drivers/passthrough/vtd/iommu.h
> @@ -540,6 +540,7 @@ struct vtd_iommu {
>      struct list_head ats_devices;
>      unsigned long *domid_bitmap;  /* domain id bitmap */
>      u16 *domid_map;               /* domain id mapping array */
> +    u32 version;

Nit: uint32_t please in new code, assuming a fixed-width value is
needed here in the first place (see ./CODING_STYLE).

> @@ -549,4 +550,10 @@ struct vtd_iommu {
>              dprintk(XENLOG_WARNING VTDPREFIX, fmt, ## args);    \
>      } while(0)
>  
> +/* Register-based invalidation isn't supported by VT-d version 6 and beyond. */
> +static inline bool has_register_based_invalidation(struct vtd_iommu *iommu)

"const" please

> @@ -463,6 +480,18 @@ void disable_qinval(struct vtd_iommu *iommu)
>  out:
>      spin_unlock_irqrestore(&iommu->register_lock, flags);
>  
> -    iommu->flush.context = vtd_flush_context_reg;
> -    iommu->flush.iotlb   = vtd_flush_iotlb_reg;
> +    /*
> +     * Assign callbacks to noop to catch errors if register-based invalidation
> +     * isn't supported.
> +     */
> +    if ( has_register_based_invalidation(iommu) )
> +    {
> +        iommu->flush.context = vtd_flush_context_reg;
> +        iommu->flush.iotlb   = vtd_flush_iotlb_reg;
> +    }
> +    else
> +    {
> +        iommu->flush.context = vtd_flush_context_noop;
> +        iommu->flush.iotlb = vtd_flush_iotlb_noop;

Nit: Would be nice if aligning (or not) the = operators was done
the same in both cases.

Seeing this part of the change I wonder whether you shouldn't also
alter the other place where the register-based invalidation hooks
get put in place: It can't be right to install them when enabling
qinval fails but register-based invalidation is also not available.
I guess, no matter how much we'd like to avoid such, panic() may be
needed there in this case, or IOMMU initialization as a whole needs
to be failed.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:07:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:07:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110435.210787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWcR1-0006Fh-4c; Wed, 14 Apr 2021 10:07:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110435.210787; Wed, 14 Apr 2021 10:07: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 1lWcR1-0006Fa-0b; Wed, 14 Apr 2021 10:07:47 +0000
Received: by outflank-mailman (input) for mailman id 110435;
 Wed, 14 Apr 2021 10:07:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWcQz-0006FU-Cn
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:07:45 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0175771a-44bb-4e4c-8227-16de56b3e425;
 Wed, 14 Apr 2021 10:07: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: 0175771a-44bb-4e4c-8227-16de56b3e425
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618394863;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=2wWofnh4V/YFvf1V0yFCh2agedo6orlxQGlqd2dW06A=;
  b=EdLdlvY2pCbKfszWg1Le1CYElb0UvjlVwxAglUBL4lW2mB3eqnFM5vV1
   4o3kKG7NxVPYGVM/pSoqTbCxLa4cX0A79u1pGHnS0Odbw7Lk6tnKq+pj2
   EEnyHz8UQhD5ER/IYVF8FXAGmdtpJ3CTA5OJ22owQ84e8N9MfvWkfn4Lb
   w=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: wpSsFsqjCaPjIzQc7lsD0dAcTyQ9n1/TkNSFlXSEgUUHRWUk0y0jupBO1VRp7kryNXWgbup0o6
 LKVxm/Wl4ZpaB1KnJicpz4qk27g1SnTwt2G8sVxeGKL/a3FtQtskrqfCD2l9ThaLM/v7Vv0934
 /VvijJqduZWgCbUiJbAVwI1RPyatW35rSMf4ukE9IuMEq2AEdyeHUwSOoHobY4f0cmvOYnmOyK
 4P+xOu9PUhxmOX79TAdpWvKv9U+Bmirhnc9c5eDJZF2Lj6uv7XnzCF8uB6OhGqVTyqPWWu+c6z
 gyw=
X-SBRS: 5.2
X-MesageID: 41556405
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fyEyK6GqtRkHpEC3pLqFY5TXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7L0/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeOJwTXzcQY76
 tpdsFFZOHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLT1CQYsI1XYcNi+wFEpqSA5aQb8wE5
 SB7sRKzgDQB0g/RMK9G3UDQqz/vNXNjp3relorABQg5QmIg1qTmcHHOjKf2QoTVC4K/Kc6/Q
 H+4nDEz4iAk9X+8B/T0GfP849b8eGB9vJvDNGB4/JlUQnEpR2vYO1aKtu/lRAz5Nqi8VM71O
 TLyi1QQvhbz1P0UiWLrQD22w/muQxemUPK7VODm3PsrYjYaVsBerJ8rLlUeBfY9EYs1esUuM
 kgshP7xvgneS/opyjz68PFUBtnjCOP0B0fuNUekmBFVs8mYKJRxLZvj399KosKHy7x9ekcYZ
 BTJfzbjcwmFG+yU2rUpS1GztCqQx0Ib227a3lHkMmU3z9KpWt+3ksVyecO901whK4Vet1q4f
 /JPb9vk6wLZsgKbbhlDONEesevDHfRKCi8f166EBDCLuUqKnjNo5n47PEc4/yrQoUByN8XlI
 7aWF1VmGYucyvVeIOz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykuO7ys9vQfHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYk8pss7YVSTucjGQ7ea9tDzQbL2Hv7AADwkUmTwDj
 8oRz7oPvhN6UitRzvWmx7Ud3TxelHu3J55HaTAltJjjbQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eaqACNjCL1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXWhT2XCANyJuVs++Kn
 8Zm31HvYaMa7CAzyErDNyqdkiAiWEImX6MR5AA3oqO+NniYZF9Kpo9QqR+GUHqGnVO6EdXgV
 YGTDVBal7UFzvoh6ngpocTHvvje951hxruB9VVp3LZvUC1vtouWXMfYj6rXaes8EQTbgsRom
 c0374UgbKGlzrqA3A4mv4EPFpFb3nSPKhLFz2fZIJfmqnifSZ5SWviv03dtzgDPk7Rs2kCjG
 3oKiOZPdXGGEBUtHxj3qH2y19sbWmGc0Vsand1jJ1lGQ39ywNO+N7OQpD2/3qaa1MEzO1YCj
 3DbDcICi5Fxty81neu6Xy/PERj4q9rEv3WDbwlfb2W52ikL5eQk7oaW9VO+ox+CdzouugXcO
 6WdgOPNgnkA+cx1wH9nAd9BABE7F0f1dXm1x3u4DLmgDoRAf/OLE9nQL9eCdeG9GTgT+uJ1p
 I8rd9dh5rHDkzBLvq9jYfQZHp/DzmWh0icZeQhs4pVsqI/r6EbJeiRbRL4kFV8mCwjJ8L1nn
 4ESKt14Lr9KpZiFvZiDB5xzx4MrpCzN0MlvQz9P/8mcXwsh3HdOcmV47Cgk8tnPmSx4C/xM0
 KY6StT4rPsWDaCz6cTD8sLUClrQXl5zHRp5+WZcYLMTC2sauFY5VK/dluwaqVURqTAObIeqH
 9Bkp21tt7SUyrzwwbLuzRnZopI7ma8WMu3RDu2JtQgya3zBX28xo2w4MCyiz/rSTy0L2Qg7L
 c1BHA4X4BkkTktjIo+zy6obLf4y3hVy2dj3Q==
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="41556405"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=J+a7+CNEKGwhkHYHYdqZ4tZr+fpTfL3SoOQKfJZEfMjCwnAK5RYgO+P/J3OPCMe8Vsf6nnsVgp2AuZUuph0xtoS1oa9QHZE+AMqZX06RAlCSgC8LsDznNToFdj5C0b6O0iWfCb/Q5oLu4JmKj+AviSivJCGIoLqWw3jVmHV+mrNgW/E5+HniQ2NoWlju12/fx6M5yeDkDv6Ml2/5CR7YTQ0/JqsebwZQUZDrvf0+J1I/VgO+glbb9zjjjy7b7NIZCgScARh5Kg6pn0UDta5jaqMLtPpd6dtSlrFLyFy0Drq6TC55JKO9c4kpEqzKK7VjBccpT1sMpQO1D5MNGVW2CA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0LC4EL6UtO6m71mh8ggyTrKDXYvhZDr87O/S0qcivkQ=;
 b=RTL6Yk73StAfU4Pzkq/gs2kjtqjGmnOjmN13tYgasWS0YwfpyAOtc3CUwT2gvPR0xj6KRodUotx6SwBrZFHdNGFIR9RhJxMFnGTv2SlSMo6WixPRC3lBbtHL3+jFniKaiPZejIMM5ziyetoqW5AD6NKF8jHj+mCHd10P0jigFvUPThl9V7uMIiob8vhJZ9Ds9ANTKFq4A8w9G/ZVrDsxSvytVFT0taQ32b2dCsqAZMoiDyaVCwqpnVrnbPn87MzeAEf1XB+l8cTnLx2c/iex+lK3Q15fOF78Nro8yWWLt9CSrawws+znsg/UvpIANjk0u/Mn28MECMNZGrv8j0bFGQ==
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=0LC4EL6UtO6m71mh8ggyTrKDXYvhZDr87O/S0qcivkQ=;
 b=FMOKhRyjPIHskHjhwQIQYxoOoGop6WHMiTQeXaPq/CBOW9DfB9TFGgGhsjWhdMR/R1/ZVCRV10iHdl9fK1N9UMqXeCrHT3DcIHLFpyKQ0/eRhXh29mWmRamOZe6a5EQgb6cFBweXqI2ab8ANn0ZDV6QOZbl9QxU4255sKe2OdOA=
To: Steven Rostedt <rostedt@goodmis.org>, Giuseppe Eletto
	<giuseppe.eletto@edu.unito.it>
CC: <linux-trace-devel@vger.kernel.org>, <xen-devel@lists.xenproject.org>,
	Dario Faggioli <dfaggioli@suse.com>, Enrico Bini <enrico.bini@unito.it>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
 <20210413114614.4971caff@gandalf.local.home>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
Message-ID: <094c4b3f-3988-c51f-3a69-cfbc8d6a45bf@citrix.com>
Date: Wed, 14 Apr 2021 11:07:33 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210413114614.4971caff@gandalf.local.home>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0003.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:a6::15) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 189d045c-f2cb-43b6-0fa1-08d8ff2d22e9
X-MS-TrafficTypeDiagnostic: BY5PR03MB5048:
X-Microsoft-Antispam-PRVS: <BY5PR03MB5048A97A6C688BB1E5B45A8EBA4E9@BY5PR03MB5048.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: G+bpiVGmKhHfr8Uiu7fIAk074Uw4DZt1d7FhwhlblSxysKXMk2rOFOHWKTDcAVvdIN1sIN+5gKA1Hl0Lj262UukSlX+ts0noyLpXoibcbsOvuO05Gc2NyLhosxhGGR+z00Q+Xf1Lfk2/3MtDznkPCqDTNDf9ECGi6VlgzdrnmfOHzn/Rp9se6+tkIUsA1ZFQe0P2kpLJgYGK8fulaSb5M7Rm4NQidcBcshfLbjykFn2sc7MutkpXN03JrDoh4c476s/D+eVGOeF7yhrOxF4TGv2ZgcNeSBfW1p144ALguCk/MBJpaPCf17YJuZSqzR8w2CFcp1+y9/ZXLaQnswQJ5iAFNRj44ZEtPZjGCyu4tgc/GzGh7xhmAdF6COMT5qTtFHarKlr+GkliPwZYDh1Rk/AgtL5xt7jCewSImxrpMDMxhIBsysZWw5BuM6RsNoVhEUyhm18AP/Hx4UJfIu8vKcBHSl42Xb0HVKxQHks4ldciUF8xsgz3i2A0vBX6Zkp7Y+xwYgs/N5pdgu7jHQDDoYgfz1kslGeOPXlGp61fjfvFU4YZTJqeXVJOTSNoyGzYZIKbF6YqvgoBfG1OBngwcM2dojUJRN8izAT121G1ASfirHu0SnUuT+PcZgbck0a+WRBdGon3EOTGf+fh/wf+yDPH1OTH6pG55v4aQ8hQP+sJfLiYhyTZZ/QefyoKYlcI5cJ6DaRiI3oXJ+rSoJbtYzuI4eU725RS3UaBvZNdR3e7a9vkOU0yJbjvYLiqdyIFMDgF1NrBjtctQKQti7LhFQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(39840400004)(366004)(346002)(396003)(376002)(110136005)(8676002)(53546011)(956004)(31686004)(54906003)(66556008)(66476007)(6486002)(2616005)(2906002)(38100700002)(66574015)(16576012)(6666004)(31696002)(316002)(86362001)(966005)(36756003)(83380400001)(4326008)(26005)(16526019)(186003)(66946007)(5660300002)(8936002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?N1BvZHRPZlZDNXlhMDZGdjg2bjBMd2l1WnZNdWdrZnNEVFlUbWorSWo2Sk9L?=
 =?utf-8?B?UU5NR0tSMEp1Tk9YVWxwVGhtUXY5TVB6cGozS1NkdXludEx4NksvNVBCdzFM?=
 =?utf-8?B?VVFLQWV6eDFBM0NwQnV1SkxBekFramY4ZlprV0M3V3FiQW5UdlM4TWZxZDRS?=
 =?utf-8?B?T1orQTFtclB4d1c1NWVwZVlhZXlKOUJzVUprK2VtOW04TENPd1phTmdtcVBn?=
 =?utf-8?B?alNyV0VXY29BN1g3N2JJWlV6djA4Nk00NHhZbVM4anFNNnlmcnc0Z2puYlBI?=
 =?utf-8?B?VTdsSHVOVncwM1dtaXlqZmhyclR4THcyRkE5MExSYm1TUzR1bXBTYThwUDlv?=
 =?utf-8?B?VmZ2M2dxTWMxYmdjazEwN2I1dzlZc1gxYUVKSEw0aThnQWdLa2s0SXBWSURC?=
 =?utf-8?B?R0JBbmp2dXYxdUtsV2dJVjFkUWZaQkErUTNZK3hUZGZ0SGl6Z2xGZDdWZFUz?=
 =?utf-8?B?N0pReG1ZZ05Ebzdic3FPZ0ptcno3d1BON0VlN0hnSzlQdW1kYTF0SVZ3QjVE?=
 =?utf-8?B?RFdFaEtjZWlHT3ZlSWYzcnk1L3d5TzF0Tmo1SFdrczFwUy96LzR2Wm9ibHV3?=
 =?utf-8?B?RnVMUzRIbUwycHAzNEVrVFlsOXJLcXIvd2trM0ZuZzYzWk54dENhdGJncHpV?=
 =?utf-8?B?NVAwNUhTWDBkWWtiT3RpWExtdE9VQ2NMNWRJSElyQUViQ0x0elgrN1lxaDNX?=
 =?utf-8?B?UnorKzdvUjZPR0lQdGFQRTlkTjMvNjVuMkhkK2piTmRqSGpuN2RNaGduN3Ru?=
 =?utf-8?B?QlVJYW5PRU50NWUyZjZNcE5nS0ZWWm44a2gvekFXMzZBYlJvRlRlV1NHTyt0?=
 =?utf-8?B?aDNlVWwrNmt3THZFOTRhSE1vSm9sV0lFZElydHMvUHh1dzJ2Wm91RkpvRHhB?=
 =?utf-8?B?S1hhQTUxaGYrTEtNSjY5UmpxRWNHZVdQeWZEcllleWN3NWwwOUE3Zy9TL2l5?=
 =?utf-8?B?dU1TTytYTTdpWWpCYUNIazNmVVNUQmJJRmNjbGVYcUpzRTRHNUQxSzNSSnVl?=
 =?utf-8?B?ZFZLSUZSZG1DQ1YzdWExMlA3YVB6aEFNV0tIZ2N6a1FCRWg3enFGam5JNGdV?=
 =?utf-8?B?akxzcUd6cmptU3ZzQjRTMjFidFVYWGVQVHdWZFJsalZGd1pPSlVoKy9Xd3RF?=
 =?utf-8?B?TzVsNjZNM0RESlFlWmFIeVFnNHcrOEx2anVPMEhtWG12WFJwZnNaeFQrUlB5?=
 =?utf-8?B?NFFFMllNS2dob0IvYy8rVTlHeFkvdG02YXIyTnluZS9MMWhhQlZRRlAwcWlV?=
 =?utf-8?B?elkzQlNXa2d2SVZXN3RyQmZoa3l3N0FxWGRDR2lLWFBuZ013THQ3NnRpQzlw?=
 =?utf-8?B?NGg0SVpURnA4VTNzWTBieHl3cCs1a1Q3SmJvZTNIbENpUmlqK3YrM1ZNWE1l?=
 =?utf-8?B?WUk4VjByU0ZHTkQyNXNVT0RydDJVTHduVzU4T2ZhN05PWng0ekdMOUNybzYz?=
 =?utf-8?B?UVpCcWd6WGRoVWNwc2lsZllIVmpzeDFxMGJTMXdFOWNmcEM4eXRML21jMjVm?=
 =?utf-8?B?dzJRSERwTTNTV2tuc0ZUWk5RcTk3a3Q4Y0F2ZjdBNFZuV29rRGs0eVkrNzZS?=
 =?utf-8?B?MHlYSDZ4WDdvdnJTL1NJUzM1TUk0bkI5dGxHcG5WdDFmL1U4UzVSNWR0L2t5?=
 =?utf-8?B?eklyOWpWTWxuZm1pa2E5N0NlM1hUZEZSTy96RXVWVXhSbkh1QkN6RlpKdlpX?=
 =?utf-8?B?SDV5REQ2Qm12MGZpT3IwRkNBOGE4OXU2b2M2OG11N1J6aCtUZ0dabDA4cXAz?=
 =?utf-8?Q?fQKxPiSePNnj4fv4YD1lpy5+oAkAb+impP6+qb0?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 189d045c-f2cb-43b6-0fa1-08d8ff2d22e9
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 10:07:40.0883
 (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: PWYTHCIXWskSdT8xg62psT5WvksD6HQgMocugVlUtvObseBgK1d+FG0Xf7w82csMYeFCQpt/Iorr/5ZK17PoiYpTHmFDgGzAPczKseVn66s=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5048
X-OriginatorOrg: citrix.com

On 13/04/2021 16:46, Steven Rostedt wrote:
> Hi Giuseppe,
>
> On Tue, 13 Apr 2021 16:28:36 +0200
> Giuseppe Eletto <giuseppe.eletto@edu.unito.it> wrote:
>
>> Hello,
>> I want to share with you a new plugin developed by me, under the
>> supervision of Dario Faggioli, which allows the new version of KernelSha=
rk
>> (the v2-beta) to open and view the Xen traces created using the "xentrac=
e" tool.
>>
>> In fact, KernelShark is a well known tool for graphical visualization
>> Linux kernel traces, obtained via "ftrace" and "trace-cmd". Anyway thank=
s
>> to its modular architecture, it is now possible to implement plugins whi=
ch
>> open and display traces with arbitrary format, for example, as in in
>> this case, traces of the Xen hypervisor.
> I'm guessing you have trace events coming from Xen itself?
>
>
>> For more information on how to build the plugin and/or
>> to view the source code I leave the repository below:
>> https://github.com/giuseppe998e/kernelshark-xentrace-plugin
>>
>>
>> In short:
>>
>> $ sudo apt install git build-essential libjson-c-dev
>> $ git clone --recurse-submodules
>> https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
>> $ cd kernelshark-xentrace-plugin/
>> $ make
>>
>> $ export XEN_CPUHZ=3D3G # Sets the CPU frequency ((G)hz/(M)hz/(K)hz/hz)
>> $ kernelshark -p out/ks-xentrace.so trace.xen
>>
>>
>> You will need the development version of KernelShark, available here:
>> https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git
> This will soon be the main repository, as we are going to deprecate the
> version in the trace-cmd.git repo soon. And because libtracecmd 1.0 has
> already been released.
>
>
>> A screenshot of the plugin in action is available here:
>> https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/.=
github/img/ks-xentrace.png
>>
>> I'm happy to receive whatever feedback you may have about it,
>> and to answer any question.
>>
> Thanks for doing this. What would be nice is to have the xen traces along
> side the linux tracing. Perhaps we can update trace-cmd agent to work wit=
h
> Xen as well. Does xen implement vsock or some other way to communicate
> between the guests and the Dom0 kernel? If not, we should add one. The yo=
u
> could do the following:
>
>  1. On each guest, run as root: trace-cmd agent --xen
>  2. On Dom0 run: trace-cmd record -e (events on Dom0) \
>      --xen (commands to do tracing in Xen HV) \
>      -A <guest-name1> -e (events on guest)
>
> And then you would get a trace.dat file for Dom0 and the guest, and also
> have a trace file for Xen (however that is done). And then on KernelShark=
,
> we have a KVM plugin in development that does this. But you can do the sa=
me
> with Xen.
>
> For KVM, we have:
>
>  1. On each guest: trace-cmd agent
>  2. On the host: trace-cmd record -e kvm -e sched -e irq \
>       -A guest-name -e all
>     The above produces trace.dat for the host trace, and=20
>      trace-<guest-name>.dat for the guest.
>  3. kernelshark trace.dat -a trace-Fedora21.dat
>
> (I have a guest called Fedora21).
>
>   http://rostedt.org/private/kernelshark-kvm.png
>
> Where you can see the kvm hypervisor task KVM-2356 is the host task runni=
ng
> the guest VCPU 0, and you see the switch between the two.
>
> Perhaps we can do something like that with Xen as well. The plugin is sti=
ll
> in the works, but should be published soon. And when it is, you could use
> that as a template for Xen.

A possibly tangential question.=C2=A0 Where does KernelShark's idea of CPUs
(i.e. real logical threads) come from?

In a Xen system, dom0 is just a VM, and particularly on larger servers,
may not be as many vcpus as the system has logical threads.

This causes major problems for `perf` support under Xen, which assumes
that the kernel's idea of CPUs matches that of the system.

When rendering a trace including Xen data, Xen can provide the real
system CPUs, and dom0 wants to be rendered as a VM under Xen, similar to
trace-Fedora21 in your screenshot above.=C2=A0 (Obviously, if you're doing
nested virt, things need to start nesting.)

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:14:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:14:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110443.210798 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWcXP-0007Gh-41; Wed, 14 Apr 2021 10:14:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110443.210798; Wed, 14 Apr 2021 10:14: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 1lWcXP-0007Ga-0k; Wed, 14 Apr 2021 10:14:23 +0000
Received: by outflank-mailman (input) for mailman id 110443;
 Wed, 14 Apr 2021 10:14:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=l1ra=JL=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lWcXO-0007GV-8G
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:14:22 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.14.84]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id df641db1-8f61-4bcf-904c-1582d8b0d7fe;
 Wed, 14 Apr 2021 10:14:19 +0000 (UTC)
Received: from DB6PR0601CA0048.eurprd06.prod.outlook.com (2603:10a6:4:17::34)
 by HE1PR0802MB2409.eurprd08.prod.outlook.com (2603:10a6:3:dc::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Wed, 14 Apr
 2021 10:14:17 +0000
Received: from DB5EUR03FT009.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:17:cafe::7) by DB6PR0601CA0048.outlook.office365.com
 (2603:10a6:4:17::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Wed, 14 Apr 2021 10:14:17 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT009.mail.protection.outlook.com (10.152.20.117) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 10:14:17 +0000
Received: ("Tessian outbound 82c2d58b350b:v90");
 Wed, 14 Apr 2021 10:14:17 +0000
Received: from 92eeb4409886.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 518B69E0-A48A-426C-9542-AF85E48060DA.1; 
 Wed, 14 Apr 2021 10:14:05 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 92eeb4409886.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 10:14:05 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB5423.eurprd08.prod.outlook.com (2603:10a6:803:133::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Wed, 14 Apr
 2021 10:14:04 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4020.023; Wed, 14 Apr 2021
 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: df641db1-8f61-4bcf-904c-1582d8b0d7fe
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4/R+0m4gSNWsYgl50iH/hgQwOTqS+iNGuxV4B48pqco=;
 b=dWwj0YZuh7T+xZVIR3slPxWPGCRADKj5So3G9I76ht1f/DnOomT2m0O2ueZOdhEG1bSvzpvbE+HVX/CKWVQXIg4Rd7Ixu4E5qIJgOE0e96yqgLEa+w8yC57i+WfSk9zleucpxD94ZrF6lHI8ZIXzSYx4H1vqjzoHqVkf8LPxWnI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: e79ea932a5d299c2
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PLLrPvW9BCpblHaGZd2yUpktjRdixNqe6TgMlvXPeoEQ0o4hRHseluNJDKm/9tLDciD5aDCPsH2htxpZla59bOKM6uosNkpb+sfkrWBl5JIT1E36ctyEuxTDZfE0FXNrmAsCm1Z9ub1ZPnGJ8IAIVP4QBvvW/aLhkIyCKWOWIOQKRUnieSgL3yaoLCCQhHZPUYvXzTmjFkOJeBTpX+dkJ0cXUkffK+5idbH0YQznceq0fINAm2VHjb8OJuQby4Op+eSnoogVV6iwwjGfN0+1zlMFK0fN/BwMLeW7SiCnBYWj+utSTcael7mqpjENjpC6P5JZvC1SIUICZoDVahvJwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4/R+0m4gSNWsYgl50iH/hgQwOTqS+iNGuxV4B48pqco=;
 b=XgqyF/2AmKOBkR6xwkC+VCHN/ZvixXOTR6hjDk5saknO9h0oiH1j07Ysfk8/4tnPUrX1IO+5ZOZ9/EtBpgPR1oQiR3cXK7iGCQYWd8ssZVLHV1MOH02oqtYxNnwBgUdo2V35taoOkQtmRio2ol0JF6Puun/xxhdq5HXnda1McNUKe54xcwaPYAoCPgf3wRm0B3fCrogAXTru37QMXEvVjUg4YreMfpdHtOAYx3WwcE/TRq73vDosejiG7OsB3ypYL6NHod0FuY8pKNpva48+wsfRM3E9SRjw0aOgtoZkrLSQmWfsGs9kwXGIDXT17UK+2CYZOkRTrSwKGzvyjnuoFg==
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=4/R+0m4gSNWsYgl50iH/hgQwOTqS+iNGuxV4B48pqco=;
 b=dWwj0YZuh7T+xZVIR3slPxWPGCRADKj5So3G9I76ht1f/DnOomT2m0O2ueZOdhEG1bSvzpvbE+HVX/CKWVQXIg4Rd7Ixu4E5qIJgOE0e96yqgLEa+w8yC57i+WfSk9zleucpxD94ZrF6lHI8ZIXzSYx4H1vqjzoHqVkf8LPxWnI=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v4 1/4] xen/arm: Move dom0 creation in domain_build.c
Thread-Topic: [PATCH v4 1/4] xen/arm: Move dom0 creation in domain_build.c
Thread-Index: AQHXMQ6QjNLHRw7HtkGQiqM6Rozk8qqzy60A
Date: Wed, 14 Apr 2021 10:14:04 +0000
Message-ID: <0C0DD0B8-D009-4E7D-9C92-1D009B832AED@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-2-luca.fancellu@arm.com>
In-Reply-To: <20210414091404.14215-2-luca.fancellu@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.3654.60.0.2.21)
Authentication-Results-Original: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: c04524e0-3259-4636-8e52-08d8ff2e0fde
x-ms-traffictypediagnostic: VI1PR08MB5423:|HE1PR0802MB2409:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<HE1PR0802MB24090FDC98CE977E82D046559D4E9@HE1PR0802MB2409.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:792;OLM:792;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 0Q3ByKPUvLKEtYohfjlkieP5GxoeX1u8AmC5ONHhxPVhuzf4Rgh95upIxVwWOTe59qPjuOF3ZN8RqicfGzUobrjZfHSV2oH7F73JNEMr2Ak48rQormdJisPkQEqvsvLSqhxDFBvikh3TliDBnQXWklqRGxBTy61RsnXSEDJ781TlB5Q2hK/laqNttX45JyF0/qqlNhwYmMet1982/bljITJVfI0GfvRSi5MG6VNtu0hFJS7pK+v5VFvgBzwdRazfjTImlkLY7Qj1KMehZbtiGdCcZd7qBId/X8aNl534j84n/9fbGUVSl+99I9jTkauQa9oW2NG9iN2cXAdRcy94bBSi37BtuHCO+Ip4Lbh3Y20OmvcJEHk1tSKJ7+iGv9RQ33+RXzR3sQOogeYaA9iV/wiKarosEoUw09kE/dDJyCct5s2BJbE+YR9lLyloIu4WMv3eMslzyv1dyq9Pwj6ctDoDGSE3Z/P+O/eYZviqz05MeX0pLocWGsqqsZEZf2B2fXVAwCHaqjAf7/oqIS4CW4WD0h3Yy9v6XwXxtjsDVIFkHlrbt+UnloGp6pgRAuXus7NlruUr3xW8+D7Yf7H3ODgvADjjHf0N30VWRq2HcBIZDbS2OyYCtIQEPnhbKlV9NqFnVtalJqkW3mixmXLDIA9jqfWAYsOVobDFnCZO63Y=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39860400002)(396003)(136003)(376002)(366004)(33656002)(54906003)(2906002)(6636002)(6506007)(26005)(316002)(83380400001)(66556008)(2616005)(122000001)(5660300002)(4326008)(38100700002)(91956017)(37006003)(36756003)(6862004)(66946007)(71200400001)(66446008)(66476007)(6486002)(6512007)(8936002)(53546011)(64756008)(478600001)(76116006)(86362001)(8676002)(186003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?KvZd9BgR+lft7O4uzeiUQB/04XKS0npgzKv/inCPSf9EzKJHdhVm9oVW7cVm?=
 =?us-ascii?Q?h0kVkRkPmTOF0AlyA2XHafnsKp1/dIWFzq8ITL+v8c3uL4lSyf3hWurdyO0w?=
 =?us-ascii?Q?mPux7Q81XtC/jfHL+U7JJdJ9mdHxqoCBnrbueyq953ZqK9pkNeK1N4B3YHx8?=
 =?us-ascii?Q?4OTGHWPxJ3wgjE7mJGV/XYdM2mWgYh/pi9M4ZiTBrRGwVNF9lEJ2tcz2HoAp?=
 =?us-ascii?Q?ULK4/+650ciMMJbSm8rNeBGuwLTpUdX3eV3v+Vle56JagqXCeGw3PF+7bcbL?=
 =?us-ascii?Q?uPZ15BqBeVjFYkx+p+VQUavWZ1CQiy5X6GHv8aOskASejEj6eZH9M3DcnbRD?=
 =?us-ascii?Q?my7A0EFb+OLlMIwVpIGRSywqQLps2hqSg3yWaqxrRqhrfdLBJM0wwsuNqyJQ?=
 =?us-ascii?Q?efPNZYzfGvP/uTiPJuiS8mhkc/MRpof0maxCO8YnyH+sKaCV2SxjqULLgFQc?=
 =?us-ascii?Q?lP3Qpi2hvw3EJnhaiZfwjlPywEEa6JVCsTytAdWyr8V4h48BhxutxkSvWeFu?=
 =?us-ascii?Q?VRCtjSH+87y9aoIMjsmz0RuFf1/QRlLXSEK5aws1u1S1ECpsP/kj3KmBc2uR?=
 =?us-ascii?Q?OTEwOP8/Ay3oGTGpW+g29+5+x+g5vAuaxMS8LA4ZPzOuOMNLC7MnoUvJWfsj?=
 =?us-ascii?Q?6BS7H8KEAr1UGIHPmU/+NhYkNEPuLO1+HsNDwZsmNcYAt6VjiwVPG6mIQaFE?=
 =?us-ascii?Q?hX8+hkaCY+zyRLY82oyqVx41/MeBuK9cVIj/lhbKqKW3+Hf6ePNTu02EsxvC?=
 =?us-ascii?Q?/HdybR+tnpJXCTPlKJaAS7QzCPor8INDZ5gbZp/N8+oofl5hMjMy/eTdePmb?=
 =?us-ascii?Q?aoMFYXpTgl/VtxNhXtjI8k7AFqS2x63AGKQTdvVCotblOU7efICUIXusTo29?=
 =?us-ascii?Q?h3WYoPb3JJbH5oMsiKqIfBbWMy6Eq/hK7hQYviz82GVSysqPxps0j30uT8Hq?=
 =?us-ascii?Q?1FEU0C0M4/MDS2GmplQ451+LdEwU3ycFA7OYdOOOWFZhDmZzIcfmc2UlFdZb?=
 =?us-ascii?Q?MPJwrY1FICXCPWiS02y0OOzkheqLUWEEXrXRYCWgxVM26BRuYUVwQmM5+n8u?=
 =?us-ascii?Q?ixHq99eR5B0c1tZqxACVl26yUgoPgGGoDpfbjMT1bA7uc4RlxeMAVYUNTM/W?=
 =?us-ascii?Q?J9bi7TaNNQsRumR4lyqNdGSHh0NU8HP6BcVlG5tX9SSy8WE3Et3nzArc7RGK?=
 =?us-ascii?Q?Jbl6M6MuTbhEPfKBU5M94H/guiO9nA2M/AAIdvSDrYcn2atg2umOaDpT1s7q?=
 =?us-ascii?Q?9cyvvbJADUj1SITDhkpUMz2pqmVKTzNkYTY3E6riDM23CygsefCywP/d2FvZ?=
 =?us-ascii?Q?9+owlXPxloV2dCM+B/dtLMaU1hQZEqsQaiKQzlXNrlUp2g=3D=3D?=
Content-Type: text/plain; charset="us-ascii"
Content-ID: <7FB6ABF235581A418D5DC4E0756716DD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5423
Original-Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT009.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3901ff77-9433-44f7-8287-08d8ff2e0881
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Zsjk3b+P7x08EWp74XTk+5J8fSYnjKwLOFRjpOyN9VD4AoxzsO6bHLHMyaq/64ZPhuaGrN6K1VCH/m6R5j5bmzNSoWPRbhjiOoh8qYUz1KzLORzFVOA1kpM3Lik0OPDGY5ZnWJHkZI9nQ1a4aTRnpWmPjy+eLgysPG5Dr58inGbARmnmMp+ghSdQG4bBAtEhVmeG2PNdQtCXYr0RxSoblEC1D3DDX72tMP62mu5tamqrBDcHjhHpI111uiI2UcOpdwOeACovT6LDpbhIZoxCX4d8ouou9ElbDfBf6jpA8fwUcDL6V96tRke7pqnO4BeOa2VCMFOAPWXNquhO2B5WnKum3wSaP3rbeswXOYoG9LR+e7HABMgmPLA7xOc6FdnZF0XKfX7rT86F+h5jGfd+QeBOQwidik9fdpw4e5XhiQ4M/nCanKGWrTGufrvnItIUsdqyLzr/MqyA3/ayoamVc5hsjWr0a0c9BtCDOduU4Vcl021hY995KzAZjO8dhxn3Mx11H1TUfDFVYbXEUhEn72X3sWUGr7eOZmoDaDdOB9KzMOeuQBguphhAVukq73XqGKVPnDxP7Kvvjj+3ocbCCY+u7utbwgsxY4WYOfQJvdQF/FN7H6bpaGcjJHcgcS30D5wOIuMk/qAIwvlXo2lsdo11tEJ7upFijgg7qroLi6s=
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:(4636009)(136003)(39860400002)(396003)(346002)(376002)(36840700001)(46966006)(107886003)(54906003)(83380400001)(2906002)(6636002)(6862004)(37006003)(8676002)(8936002)(6486002)(26005)(186003)(82740400003)(4326008)(2616005)(336012)(86362001)(316002)(6512007)(82310400003)(81166007)(5660300002)(47076005)(6506007)(70586007)(53546011)(33656002)(36756003)(36860700001)(478600001)(356005)(70206006);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 10:14:17.2672
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c04524e0-3259-4636-8e52-08d8ff2e0fde
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:
	DB5EUR03FT009.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2409

Hi Luca,

> On 14 Apr 2021, at 10:14, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
>=20
> Move dom0 create and start from setup.c to a dedicated
> function in domain_build.c.
>=20
> With this change, the function construct_dom0() is not
> used outside of domain_build.c anymore.
> So it is now a static function.
>=20
> No functional changes intended.
>=20
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> Reviewed-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers,
Bertrand

> ---
> v4 changes:
> - changes to the commit message
> v3 changes:
> - move create_dom0 function after construct_dom0 and
>  make construct_dom0 static
> ---
> xen/arch/arm/domain_build.c | 38 ++++++++++++++++++++++++++++++++++++-
> xen/arch/arm/setup.c        | 29 +---------------------------
> xen/include/asm-arm/setup.h |  2 +-
> 3 files changed, 39 insertions(+), 30 deletions(-)
>=20
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 374bf655ee..359957dc1b 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -21,6 +21,7 @@
> #include <asm/device.h>
> #include <asm/kernel.h>
> #include <asm/setup.h>
> +#include <asm/tee/tee.h>
> #include <asm/platform.h>
> #include <asm/psci.h>
> #include <asm/setup.h>
> @@ -2520,7 +2521,7 @@ void __init create_domUs(void)
>     }
> }
>=20
> -int __init construct_dom0(struct domain *d)
> +static int __init construct_dom0(struct domain *d)
> {
>     struct kernel_info kinfo =3D {};
>     int rc;
> @@ -2578,6 +2579,41 @@ int __init construct_dom0(struct domain *d)
>     return construct_domain(d, &kinfo);
> }
>=20
> +struct domain* __init create_dom0(void)
> +{
> +    struct domain *dom0;
> +    struct xen_domctl_createdomain dom0_cfg =3D {
> +        .flags =3D XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
> +        .max_evtchn_port =3D -1,
> +        .max_grant_frames =3D gnttab_dom0_frames(),
> +        .max_maptrack_frames =3D -1,
> +    };
> +
> +    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
> +    dom0_cfg.arch.gic_version =3D XEN_DOMCTL_CONFIG_GIC_NATIVE;
> +    /*
> +     * Xen vGIC supports a maximum of 992 interrupt lines.
> +     * 32 are substracted to cover local IRQs.
> +     */
> +    dom0_cfg.arch.nr_spis =3D min(gic_number_lines(), (unsigned int) 992=
) - 32;
> +    if ( gic_number_lines() > 992 )
> +        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n")=
;
> +    dom0_cfg.arch.tee_type =3D tee_get_type();
> +    dom0_cfg.max_vcpus =3D dom0_max_vcpus();
> +
> +    if ( iommu_enabled )
> +        dom0_cfg.flags |=3D XEN_DOMCTL_CDF_iommu;
> +
> +    dom0 =3D domain_create(0, &dom0_cfg, true);
> +    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) =3D=3D NULL) )
> +        panic("Error creating domain 0\n");
> +
> +    if ( construct_dom0(dom0) !=3D 0)
> +        panic("Could not set up DOM0 guest OS\n");
> +
> +    return dom0;
> +}
> +
> /*
>  * Local variables:
>  * mode: C
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index 2532ec9739..b405f58996 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -51,7 +51,6 @@
> #include <asm/platform.h>
> #include <asm/procinfo.h>
> #include <asm/setup.h>
> -#include <asm/tee/tee.h>
> #include <xsm/xsm.h>
> #include <asm/acpi.h>
>=20
> @@ -805,12 +804,6 @@ void __init start_xen(unsigned long boot_phys_offset=
,
>     const char *cmdline;
>     struct bootmodule *xen_bootmodule;
>     struct domain *dom0;
> -    struct xen_domctl_createdomain dom0_cfg =3D {
> -        .flags =3D XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
> -        .max_evtchn_port =3D -1,
> -        .max_grant_frames =3D gnttab_dom0_frames(),
> -        .max_maptrack_frames =3D -1,
> -    };
>     int rc;
>=20
>     dcache_line_bytes =3D read_dcache_line_bytes();
> @@ -965,27 +958,7 @@ void __init start_xen(unsigned long boot_phys_offset=
,
>     enable_errata_workarounds();
>=20
>     /* Create initial domain 0. */
> -    /* The vGIC for DOM0 is exactly emulating the hardware GIC */
> -    dom0_cfg.arch.gic_version =3D XEN_DOMCTL_CONFIG_GIC_NATIVE;
> -    /*
> -     * Xen vGIC supports a maximum of 992 interrupt lines.
> -     * 32 are substracted to cover local IRQs.
> -     */
> -    dom0_cfg.arch.nr_spis =3D min(gic_number_lines(), (unsigned int) 992=
) - 32;
> -    if ( gic_number_lines() > 992 )
> -        printk(XENLOG_WARNING "Maximum number of vGIC IRQs exceeded.\n")=
;
> -    dom0_cfg.arch.tee_type =3D tee_get_type();
> -    dom0_cfg.max_vcpus =3D dom0_max_vcpus();
> -
> -    if ( iommu_enabled )
> -        dom0_cfg.flags |=3D XEN_DOMCTL_CDF_iommu;
> -
> -    dom0 =3D domain_create(0, &dom0_cfg, true);
> -    if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) =3D=3D NULL) )
> -        panic("Error creating domain 0\n");
> -
> -    if ( construct_dom0(dom0) !=3D 0)
> -        panic("Could not set up DOM0 guest OS\n");
> +    dom0 =3D create_dom0();
>=20
>     heap_init_late();
>=20
> diff --git a/xen/include/asm-arm/setup.h b/xen/include/asm-arm/setup.h
> index 28bf622aa1..5283244015 100644
> --- a/xen/include/asm-arm/setup.h
> +++ b/xen/include/asm-arm/setup.h
> @@ -93,8 +93,8 @@ void acpi_create_efi_mmap_table(struct domain *d,
>=20
> int acpi_make_efi_nodes(void *fdt, struct membank tbl_add[]);
>=20
> -int construct_dom0(struct domain *d);
> void create_domUs(void);
> +struct domain* create_dom0(void);
>=20
> void discard_initial_modules(void);
> void fw_unreserved_regions(paddr_t s, paddr_t e,
> --=20
> 2.17.1
>=20



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:14:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:14:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110444.210811 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWcXc-0007K4-CS; Wed, 14 Apr 2021 10:14:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110444.210811; Wed, 14 Apr 2021 10:14: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 1lWcXc-0007Jx-9E; Wed, 14 Apr 2021 10:14:36 +0000
Received: by outflank-mailman (input) for mailman id 110444;
 Wed, 14 Apr 2021 10:14:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=l1ra=JL=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lWcXb-0007Jl-Kl
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:14:35 +0000
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.5.54]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b2a4d908-2bbb-4fc0-8920-40cfa16dd672;
 Wed, 14 Apr 2021 10:14:34 +0000 (UTC)
Received: from AM6PR10CA0101.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:8c::42)
 by HE1PR0802MB2602.eurprd08.prod.outlook.com (2603:10a6:3:e2::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.20; Wed, 14 Apr
 2021 10:14:32 +0000
Received: from AM5EUR03FT046.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8c:cafe::12) by AM6PR10CA0101.outlook.office365.com
 (2603:10a6:209:8c::42) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Wed, 14 Apr 2021 10:14:32 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT046.mail.protection.outlook.com (10.152.16.164) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 10:14:32 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Wed, 14 Apr 2021 10:14:31 +0000
Received: from e36d91158788.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 18E584F6-D9D2-4EA0-9FAF-A0DA6F7E4EEC.1; 
 Wed, 14 Apr 2021 10:14:21 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e36d91158788.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 10:14:21 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB5423.eurprd08.prod.outlook.com (2603:10a6:803:133::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Wed, 14 Apr
 2021 10:14:19 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4020.023; Wed, 14 Apr 2021
 10:14:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b2a4d908-2bbb-4fc0-8920-40cfa16dd672
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=56FXBxm/dLPCVztZyFYrmU7arC920SGoPVXAt2sJ9ds=;
 b=IrBYNyMfptueVbAMsyq12hIPxAsLvHOzNr3vMY9jM5Mue51WPFRqy+zCWkmndwtqhG9wC76fhGPk14eKvY7cvdS/XQOof84YHFmSt54HLRGJxmUmir/Br1kBL9crXw5mAsfhLx6l4vs9ccMIowTkBli2tHur5mrRAaStFN4Xi2E=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 5d2d8b8117520ca6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R98hwyTm4bxJn+pst4nX0T0N/x0m4XJ8MkLpLd1JKO7u8WqzoFpocvECZYrE0/nWGgkh4g7lBuRs0fiigARDDZyeQEQK4c2OM8x0MBmJPq/Z6XrE3yrNMuMaKGYb3f0wupM007UrHI9L/yQwoB8qhZ/3B9FKe9CE2mK4AQN1wNDq8KIR+OJSFzcTr/hIe6vLl22DQKJ59EgUXbvsN0GhIWqgyBZDh0pGTs8lDY+yrSz5222SZ2NPEUXhDTqDEovUCo0lEc6Qo7llswK0Hn5kzs9y95djYsj6eaxplmZlZaKfnEs04yV/2KuFnemKYL2zIr7Ja3bshy2sOvmiOjufaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=56FXBxm/dLPCVztZyFYrmU7arC920SGoPVXAt2sJ9ds=;
 b=cGizGDOHf4Gn7vuJ5XXyoXcAO0q7YaIWjfEWANymIqPYZ5753yRIfFrEOHKZSAcYAw/tI/28nnqXPs8g/hgt7kFFVq4SjyZKpWvG/9sPZJzON1oC2640FkKAiT4RAdBw8+IeK6LmdB1PpO6nbrx9MENOmzN6G6SZWG5w6+YgeKAqZVHBwe5njIfZxPXMD8oXnpYGplDxdj1PflKn9cxj54C603h2a94D0De+SwFTZqD+a9kkhHV/uhIpec9809RLd7FouM1Zi9JzMSh3mwSj0cZvhSF4aaA+J8Q88zlvVgQpfrHvTgVvkD0HJymewqNHNkVUTwZJ/9qRqtkfREZ+hQ==
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=56FXBxm/dLPCVztZyFYrmU7arC920SGoPVXAt2sJ9ds=;
 b=IrBYNyMfptueVbAMsyq12hIPxAsLvHOzNr3vMY9jM5Mue51WPFRqy+zCWkmndwtqhG9wC76fhGPk14eKvY7cvdS/XQOof84YHFmSt54HLRGJxmUmir/Br1kBL9crXw5mAsfhLx6l4vs9ccMIowTkBli2tHur5mrRAaStFN4Xi2E=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Wei
 Chen <Wei.Chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, Julien
 Grall <julien@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Rahul
 Singh <Rahul.Singh@arm.com>
Subject: Re: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is NULL
Thread-Topic: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is
 NULL
Thread-Index: AQHXMQ6Q3JcgcbdjF0OhB9yjIgtWraqzy74A
Date: Wed, 14 Apr 2021 10:14:19 +0000
Message-ID: <6FC0F527-B337-40ED-88E3-6E3AFB9BD3E3@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-3-luca.fancellu@arm.com>
In-Reply-To: <20210414091404.14215-3-luca.fancellu@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.3654.60.0.2.21)
Authentication-Results-Original: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 8faaa463-8fda-4df7-edc7-08d8ff2e18ca
x-ms-traffictypediagnostic: VI1PR08MB5423:|HE1PR0802MB2602:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<HE1PR0802MB26024C9353078E2BDD922EA09D4E9@HE1PR0802MB2602.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:2449;OLM:2449;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 dPhhd5aCzBaN92i3M/QTD9O8KNOVo5XwXF3wHphwJGVP4aDQohmVdFQ5xo7Kt6665bxLys3PAQaJYspYEpLGt/3LYnebJl/wA7Y4z59JUd7xfkL/LfcoM0rXbiAxd7JTlIFODWlQyXZPhjF1iSe3+8UD4POLDEeUVkPG6ysBu0RnTewzc/RYOIhMBZgTQfAUx1yarRHuuVNJ8rDrR8w+BApvI24xVC2n3H66OFabu2fivfqQIHo0XCPfCOAY/vnDVWlcZoy4taf1ZznvSOiMeOq3NLrY5o6rMp8wonAfBLoW4XHuegGytwvvev0t1HI6ykv1jVQM4kBmadDs+jXozinVtR2uMUU3PHCF5GzOrczspluqrE/hX/2b2BfDHqFbPxynjbY1Kil4xOcHCj4dWL3jP6mp8LDI96EPHF0tOG+bI4bDxNfvM7gH+tOKPXYcbHUfl+9nCDb/SZE7MBPJKNUn5KJuxm7925VauRoyQRtZ0XIU6ub8BzDV6OaNf8o2ALEZ3BWvZWGBdjfm+Eqyys8Oz44WcQlDuq/a59uDP/ctENERiif97xHVUFPd5FA+vzIyyW8tmcfX4BnPh0+eKoRr02LF/8I9ZETvun7RNseyxgGF/W3KjOarr5LbwLZpDbdm0peuV5JSBK2Umz1bErJReSk2rPzLqxTcceUuGKc=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39860400002)(396003)(136003)(376002)(366004)(33656002)(54906003)(2906002)(6636002)(6506007)(26005)(316002)(83380400001)(66556008)(2616005)(122000001)(5660300002)(4326008)(38100700002)(91956017)(37006003)(36756003)(6862004)(66946007)(71200400001)(66446008)(66476007)(6486002)(6512007)(8936002)(53546011)(64756008)(478600001)(76116006)(86362001)(8676002)(186003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?qx61JOXvqvMCOAjmQjhTExctWdMPb+XM1CCBc7ZM3E8mhVM1UiSdwXfVq7Zo?=
 =?us-ascii?Q?TqI1TtBkdlSEj2IzO0wh4Uo2Z/9PBGlh3QT/kZToG6tkTNStChELnU+/apxz?=
 =?us-ascii?Q?58ifFQ8VC+YKI2IyhmnabV3HYTiT3BG9Ej3iT+zj4U7fSWBmyqrKi8i/dcPP?=
 =?us-ascii?Q?qJemWD1382O6RS2a8+0oYrRpOi+xkyCEWMny8UhtUiscs7ISOac6QaSt48Iu?=
 =?us-ascii?Q?mt70rI/3vfjgFZN1I4oK1//gpFyT2nSL40qnWKG74swIbLQ/fVjopn5r3FI/?=
 =?us-ascii?Q?z6GYf7N6ceuidv0A6x8ceTmicmGpflHLWvICKi9yZnOSedMfU/A35EmAMf/y?=
 =?us-ascii?Q?hf6hcUzj4457nSASPcyHBA7etsKWxrsGzFK6rBlQTbbSp/5MhPnFsLdwAd1Z?=
 =?us-ascii?Q?2t5LMexuFwO7eek4ZJfwGNdinT9KhDalCJtUprDCdNwiIiKPf12lMNWTDHbc?=
 =?us-ascii?Q?qJNIk305gqC5EqXfVy6c9IrQO9zk1hSdUxbPAEsmrFoVekystsV3uW7SLVEu?=
 =?us-ascii?Q?PzUNYyYcarIeFNtp+oNm+mTGkQPKSLt6VlLGMWJXEyfGjmA9aERYnpylecBz?=
 =?us-ascii?Q?y6rhvG/9FDKSJ/Sxd1HwUdhjYoWg7FrnqTz7qDeD3Wto65ryvkFENcQu/rqh?=
 =?us-ascii?Q?2kL8shIarvWBYdHbkZrl/rmEBSkqW2hqiFjTV+HBZchph94Zem0d1s6P4mY0?=
 =?us-ascii?Q?C8BZ4JHjHPeLCjTC6mWdWuCjiNsud8pE24Ap+yWfDkPz+WTi0V2cQ7V/klyJ?=
 =?us-ascii?Q?UA69UN0gXpOKjuVw4evg7Wj7vl0b6y/SGNK4X5p/Oi9DAhvWdF+bLsuR+jvf?=
 =?us-ascii?Q?TMNuyRqhX7bJ8O6z30tbUngumMFc+UoUwdm+78MS/PK0IPpUB5Mpw2CJrMAY?=
 =?us-ascii?Q?muDwJgUHny6/tPzQFnbjAw2/OWYjxV65OU1qL3R1JU1AR99qbPAD/Ju8kwGf?=
 =?us-ascii?Q?IDB4LZx0WScGsXPg5XMNPGPrB/GChdpPwjJ9Kfbr5vWVt1TlJCUEcDoIovVO?=
 =?us-ascii?Q?M8g88uQrPu1hWuOFHXgKFa60TmT+K60xa/zUQs9/epASx1pkoR+gTxPa+I3j?=
 =?us-ascii?Q?ixeMkGSEt8Py8iMh6M2JmDGKgrZ7GvJjIRdtgq8FNQHsbhWogYVk6OtjpcDH?=
 =?us-ascii?Q?LbnhNGZutQ30Cl716jgcKbxrS3re/0IM6PQXkJApuY/sEcbU54EuG2iQSsMG?=
 =?us-ascii?Q?zoLAXL1rkPAbdJIRQDc0cStNfCTZVqeKwuOQN2lc4OrmbxhwyOEKUYSK8c0N?=
 =?us-ascii?Q?3gVCeWt1JvDhQAPfNca3KNnceiH6fsF0uEPJgPwTsXG6CIUkKGH7T5f6I7VZ?=
 =?us-ascii?Q?F9VP5RRXLd9lBGyJwlAOHbMQs+X4nS2XmsDMKfigZPsZ9g=3D=3D?=
Content-Type: text/plain; charset="us-ascii"
Content-ID: <CF4FBF361D10D845ACB236138E3185D3@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5423
Original-Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	a434482e-e1d6-4ef6-6660-08d8ff2e1118
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	//Xf+0xITKCEHfimGbY9Rt3PD9HRmMwGLGRdu4J2rUEamZEcNN4ecWIk6pLWxsutVd53LYZKlgiElWHVH8cH4V7hpCID5Zo2pILPnTHFSEIw8fSadqzpNmoKaIaiLm2FTamt+u4XClwZuYygQe6rQG/QJ796Zs/sZGIAflE/ZOL44E3F1zzcNAiQDeJbfY9zzvJOQI8OrHiy/vEUBA/Cwp6by6LFx82op2wy4jueTp63yIa6jVPoK3IreFx0KUS/vHHguqnIwHgBISeUOJ1glCs+t1sORKpAfSdj647TzhMJCxgsaUFagWtWXGvHLgOWs8Ly5j7sJrHgFXmOGpUGOJIfxNpNX3wODMKlLso9XwSyGk7gL5LD2b5P18qKAToxqJIGZT38/kzl4Ej7PH2Tcw+0Fy33H42iG5vfx/8Jt3SK18rHLco+Xc/czRG29JCHtcUssB8hPn58hyMnNmR2StRCl3logcLwtXcPRMyO9WtoG6hZdfaT5HKNc9XviamsYxFxt+ZUIb9dvy963CpCRi5kpdB/LpYTKH3wDATDBfSU5J52IlNV9d+X0xsp+uLi3PNPxQn5gDdh2udvDJsYnocsJ3A0luUAPEDfhFAo3scJUSOR6oRUKuZ+CQ+xHYz320PG8hH0ayzHH1SZw9SuO/4iEMZt8SqCzBkfcVNNGJ4=
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:(4636009)(136003)(39860400002)(346002)(376002)(396003)(46966006)(36840700001)(70206006)(82740400003)(37006003)(2906002)(6486002)(316002)(82310400003)(70586007)(8676002)(81166007)(336012)(6636002)(36756003)(186003)(6512007)(54906003)(83380400001)(356005)(5660300002)(36860700001)(47076005)(26005)(53546011)(2616005)(478600001)(86362001)(6862004)(8936002)(4326008)(6506007)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 10:14:32.1862
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8faaa463-8fda-4df7-edc7-08d8ff2e18ca
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:
	AM5EUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2602

Hi Luca,

> On 14 Apr 2021, at 10:14, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
>=20
> Among the common and arm codebase there are few cases where
> the hardware_domain variable is checked to see if the current
> domain is equal to the hardware_domain, change this cases to
> use is_hardware_domain() function instead.
>=20
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers,
Bertrand

> ---
> v4 changes:
> - removed unneeded check for domain NULL from is_hardware_domain
>  introduced in v3
> v3 changes:
> - removed unneeded parenthesis for macro is_domain_direct_mapped
> - is_hardware_domain() checks for the passed domain and if it is
>  NULL, it returns false.
> - reverted back checks in the function late_hwdom_init
> ---
> xen/arch/arm/irq.c                       | 2 +-
> xen/drivers/passthrough/arm/ipmmu-vmsa.c | 2 +-
> xen/drivers/passthrough/arm/smmu-v3.c    | 2 +-
> xen/drivers/passthrough/arm/smmu.c       | 2 +-
> xen/include/asm-arm/domain.h             | 2 +-
> 5 files changed, 5 insertions(+), 5 deletions(-)
>=20
> diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
> index b71b099e6f..b761d90c40 100644
> --- a/xen/arch/arm/irq.c
> +++ b/xen/arch/arm/irq.c
> @@ -412,7 +412,7 @@ bool is_assignable_irq(unsigned int irq)
>  */
> bool irq_type_set_by_domain(const struct domain *d)
> {
> -    return (d =3D=3D hardware_domain);
> +    return is_hardware_domain(d);
> }
>=20
> /*
> diff --git a/xen/drivers/passthrough/arm/ipmmu-vmsa.c b/xen/drivers/passt=
hrough/arm/ipmmu-vmsa.c
> index aef358d880..8b8e3a00ba 100644
> --- a/xen/drivers/passthrough/arm/ipmmu-vmsa.c
> +++ b/xen/drivers/passthrough/arm/ipmmu-vmsa.c
> @@ -1168,7 +1168,7 @@ static int ipmmu_reassign_device(struct domain *s, =
struct domain *t,
>     int ret =3D 0;
>=20
>     /* Don't allow remapping on other domain than hwdom */
> -    if ( t && t !=3D hardware_domain )
> +    if ( t && !is_hardware_domain(t) )
>         return -EPERM;
>=20
>     if ( t =3D=3D s )
> diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthro=
ugh/arm/smmu-v3.c
> index 53d150cdb6..d115df7320 100644
> --- a/xen/drivers/passthrough/arm/smmu-v3.c
> +++ b/xen/drivers/passthrough/arm/smmu-v3.c
> @@ -3366,7 +3366,7 @@ static int arm_smmu_reassign_dev(struct domain *s, =
struct domain *t,
> 	int ret =3D 0;
>=20
> 	/* Don't allow remapping on other domain than hwdom */
> -	if (t && t !=3D hardware_domain)
> +	if ( t && !is_hardware_domain(t) )
> 		return -EPERM;
>=20
> 	if (t =3D=3D s)
> diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough=
/arm/smmu.c
> index 3e8aa37866..932fdfd6dd 100644
> --- a/xen/drivers/passthrough/arm/smmu.c
> +++ b/xen/drivers/passthrough/arm/smmu.c
> @@ -2670,7 +2670,7 @@ static int arm_smmu_reassign_dev(struct domain *s, =
struct domain *t,
> 	int ret =3D 0;
>=20
> 	/* Don't allow remapping on other domain than hwdom */
> -	if (t && t !=3D hardware_domain)
> +	if ( t && !is_hardware_domain(t) )
> 		return -EPERM;
>=20
> 	if (t =3D=3D s)
> diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
> index 1da90f207d..0a74df9931 100644
> --- a/xen/include/asm-arm/domain.h
> +++ b/xen/include/asm-arm/domain.h
> @@ -30,7 +30,7 @@ enum domain_type {
> #endif
>=20
> /* The hardware domain has always its memory direct mapped. */
> -#define is_domain_direct_mapped(d) ((d) =3D=3D hardware_domain)
> +#define is_domain_direct_mapped(d) is_hardware_domain(d)
>=20
> struct vtimer {
>     struct vcpu *v;
> --=20
> 2.17.1
>=20



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:15:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:15:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110451.210823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWcY1-0007Yw-Sp; Wed, 14 Apr 2021 10:15:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110451.210823; Wed, 14 Apr 2021 10:15:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWcY1-0007Yp-Ok; Wed, 14 Apr 2021 10:15:01 +0000
Received: by outflank-mailman (input) for mailman id 110451;
 Wed, 14 Apr 2021 10:14:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=l1ra=JL=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lWcXz-0007WX-Sh
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:14:59 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1e::619])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a2a7baab-8cc1-45b2-a4a3-9b578428d329;
 Wed, 14 Apr 2021 10:14:55 +0000 (UTC)
Received: from MR2P264CA0042.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::30) by
 VI1PR08MB4382.eurprd08.prod.outlook.com (2603:10a6:803:f5::14) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.18; Wed, 14 Apr 2021 10:14:52 +0000
Received: from VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:500:0:cafe::73) by MR2P264CA0042.outlook.office365.com
 (2603:10a6:500::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 14 Apr 2021 10:14:52 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT031.mail.protection.outlook.com (10.152.18.69) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 10:14:52 +0000
Received: ("Tessian outbound 9bcb3c8d6cb1:v90");
 Wed, 14 Apr 2021 10:14:51 +0000
Received: from 96e67fce1e9e.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7C29FB28-EFC8-4427-9F87-35A65974067F.1; 
 Wed, 14 Apr 2021 10:14:41 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 96e67fce1e9e.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 10:14:41 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB3312.eurprd08.prod.outlook.com (2603:10a6:803:46::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Wed, 14 Apr
 2021 10:14:37 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4020.023; Wed, 14 Apr 2021
 10: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>
X-Inumbo-ID: a2a7baab-8cc1-45b2-a4a3-9b578428d329
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LAiUwCKuHt4rmaWRpICcakGzsNcTinl6FR0YNeTAW70=;
 b=zoW/OZf1k7kXGY4rlx8EZt8yIul1g+V++2JJ/W8Vn6e6jI8PkbrZqfZo23nHFwZXvQv4pL0yar+9CrrujTUsAVtov/3g6LQa/mZ/QekM5DJoR8VX4NFasjwgnfhah+IpitF/qqN5nBruAXc01nQEjkKLwj9HbBsl97h1oe0JI84=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 299993c982861b1b
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=J2NMpui5bafaLgaV14U0n6Z3GppZD/ZmM0umXYWR0h4fs0imanZ7rKpaVftLW5WFT8enyZKvjCB9T8jWGi3cCeRDLcLVNXdonZvUDW1je6L2fQM3rXmJmXWjunKUdn+ZySrryGKVIrdCiKygU0flKFX+pfDmkGb80r4g6+Gn6LHUBgITsdAcCbEH2mlCtXxsAHh6Pxie8Ei/OXcSGC0O+IVS7eulfLppIuhtP1+/KTbesafKf1iMvDjInqTJ2d2WMi/bjhYaX0Z6WmCzDYRLqROdH6/sV+iwxYmRP3n0HcmTJjXvrtnNi8YekoLMl5YvVp82YShtlHszFBywbt4UKA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LAiUwCKuHt4rmaWRpICcakGzsNcTinl6FR0YNeTAW70=;
 b=F60IzQb1Yxd8IwAInRcdTuyBMBrc3q1vBxyHnJZ5oxYK1gtfK/mI8BZeB9S77g+Y3EpZRF1kivrJJqPSKgZIadVSivGqyq53B+ksLvt6APbEQVTnPc06pcpDKRbtev9qDbPh5DHUDB0Rlo8E4f/Ofl55LQzhjkUkyNWYlfNrCtB83xk9slQhzFid8T5LYkAg9TiFc6uCVHlnWIRARDhWexZW9eowcPGEwOxfV+okwVdv/HGdd0FYoXlT3DOql96wcVek3Qg3vfqw1CqHByzwIryDIvSbHWyr44w2cFhSIAUEoP6GPqlBQ/QHJFpsrjdNUcf1XRKJZTN/iVtGKZe9YQ==
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=LAiUwCKuHt4rmaWRpICcakGzsNcTinl6FR0YNeTAW70=;
 b=zoW/OZf1k7kXGY4rlx8EZt8yIul1g+V++2JJ/W8Vn6e6jI8PkbrZqfZo23nHFwZXvQv4pL0yar+9CrrujTUsAVtov/3g6LQa/mZ/QekM5DJoR8VX4NFasjwgnfhah+IpitF/qqN5nBruAXc01nQEjkKLwj9HbBsl97h1oe0JI84=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Wei
 Chen <Wei.Chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, Julien
 Grall <julien@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v4 3/4] xen/arm: Clarify how the domid is decided in
 create_domUs()
Thread-Topic: [PATCH v4 3/4] xen/arm: Clarify how the domid is decided in
 create_domUs()
Thread-Index: AQHXMQ6fDaCb9krTZ0m5muPO6Ilq06qzy9WA
Date: Wed, 14 Apr 2021 10:14:37 +0000
Message-ID: <45357FA1-74FE-49E9-9BAB-8EF084975A2C@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-4-luca.fancellu@arm.com>
In-Reply-To: <20210414091404.14215-4-luca.fancellu@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.3654.60.0.2.21)
Authentication-Results-Original: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: a49ae406-bc12-4776-c631-08d8ff2e24a7
x-ms-traffictypediagnostic: VI1PR08MB3312:|VI1PR08MB4382:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR08MB4382B76DDC46E4268EF277759D4E9@VI1PR08MB4382.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:813;OLM:813;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 J1fGGA4D7db7ky9BXQtFFlzrQ1yh9fZO92cGri60dLjBXK4/60Gz9LGw6tL8kDGtterzIihWAdsYmYQblQIZY6eM0jouVdDiVPkGNIGL7KJ0lqGYB5dcviPgmF5nJE0Gpc4h2LqRoaOmpSfJiHgH0QC57/lRSt7Qn755a1ToHaur5Z4QZ8ZFHaxnnVu2XcBna0RY5veb04epg1agXzy47ceHkfNPuQwon4/67X8TzDbSjuFWq1Hpvs5OCHbEIHbXIql1dGRN3t75qCqs1vUwToJmGvbDtx0PxffHlMQb1R6QvijG+jN+M20fBxu/hVAdh7lc8klVeq3RdPGUyekmC60CqRhMe6RpAElNBogUerpss6VKHxlYV99yqRewHT40eNdx1rH65ZEygIjfPCW/taxdVTAl/0NDBeTG8VHAdMmM6Gup6AtQLu3n29gh5dpF9tWvsSxNhcooKY8JixQbdBd4QdT00U5bEgL+ocXp3XiDnXMLXBPz5SzUiQlcHsNjSt96il+DJX+7ZXyZa80JjYRCjoveBTvfiL/Ms548ik8/PCCMOR0hff3rRs9rp04Ey6skcKsWAAt4/4tYRgeHVkyTBcOfy03FPuXfZJDcKpT6RPepVcO5zdYZyIzXuD1aMFAqrltd4+HEWrnHwdxnxse8b7ZmqTVbYlqzhv0PFnI=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(136003)(376002)(396003)(346002)(39860400002)(2906002)(66476007)(66556008)(8936002)(316002)(66946007)(91956017)(76116006)(6512007)(37006003)(33656002)(6862004)(26005)(54906003)(66446008)(36756003)(6506007)(2616005)(8676002)(478600001)(64756008)(186003)(122000001)(5660300002)(6636002)(38100700002)(86362001)(71200400001)(4326008)(53546011)(6486002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?ngkVPbQpnB8w0CVw3xXkOaPatWWftqRTXbTR+VrvkkEqF8kv6r06fnIU1VNt?=
 =?us-ascii?Q?Qm4DyO2H7GsXjUMJ6dZws0wfP4t8sQBggC+tAxywc9RUHb88Z/XxBetS5Nqd?=
 =?us-ascii?Q?yW5ARQLSCj0UXzwjO7rY5M62TYinKt2rRM1BzgYDdR2LtlUIiW1lAnc4LrFx?=
 =?us-ascii?Q?+C+rf1ZzdZEF9t9KDWCuHP/dammRmSSUK0DtJ9JX8rmffcDbl8khqHZ0eBi9?=
 =?us-ascii?Q?5uS5NMkCrm2RspsZMFKG8k8prDOkjFhJkJz/SUrLtBeIRtLgaKB3udY9hhxH?=
 =?us-ascii?Q?eoy205PteneW1mjdD7t8jQAHPzGXJmmjJdRiE4/COoAY7Td69pL4siFx0Zsb?=
 =?us-ascii?Q?8/qGde68ckYbRZiaOabvrSdA57EmkXU3wQMB1sWitTBL75fS+1hOO9gebUNz?=
 =?us-ascii?Q?cQr00exUxcnqMApxRa0Xvwwa2qQAgZzPguG5c331oAVJgYN1wUuPzIEZtuWF?=
 =?us-ascii?Q?wnKYWxbsgUioDyVNjQ6sxaAM2H1ccNkMIOLBu4ag94guXze24F3jXj2yVWfR?=
 =?us-ascii?Q?uG3Bpjb8cumCwDyTdCebIbqLZoQ71KAc6HVMPWczzBZklSDgA+hjQtkLijgS?=
 =?us-ascii?Q?Jay4jDJRCZX1ZlwN460w4th3M3D8xbzxGCb67GiS4AhcQ4cCt1frHM8Qb933?=
 =?us-ascii?Q?LwJClEwDluG+DIDjqiUyXsF9fI7OLw8rW0NHAfN3UGKxj68b6NrOkxjtoaXb?=
 =?us-ascii?Q?cdpmY80VZrfUefQvn273SOmEMpI9kjiZ3TzBI+bie0rZDkm9g9faxsEHqd1G?=
 =?us-ascii?Q?iR1xpyiRTCYgSgMOQClq4O0iNrXU7mHt92QIl+akALisZGOaNKQKp4IPTxDO?=
 =?us-ascii?Q?dKrSh49GeD5DTzX1i8qbfRUudyvqDULr4D4yf2nPtyObuJiMyzlO3tHtvQKM?=
 =?us-ascii?Q?mBd3jZsmgEg39krIs6ueiydLBkSmUAWzcjMyAGmMOjNJdc6Zs6I6hQfgtF/C?=
 =?us-ascii?Q?r133V57fRcHeIaeliJ6bhYNfEG9G46G5Qc0vldHX/V1ii1pvMqGe6esx1IU/?=
 =?us-ascii?Q?SbvMuN4XvVZbWwvAGq1wCakcCnSeVfQ/eZlMUHjqL1trCS0oaSD6JPAQ0UaZ?=
 =?us-ascii?Q?/OVoO+ME/bUNEcdIsftp1t4wynEgOyMn2+lqT+pSE4WidDeQfntd3nDam4Tc?=
 =?us-ascii?Q?PuflUfQUnEKmwHoSfxrXcMm89oonkMbjljKda9F2qgbc2xTGQYMNhAiiwJor?=
 =?us-ascii?Q?suGNguBhcfo7NeC6rh7PJ0V38CVTtutzky/5zac9vUiF+L7sLYw9ncGBjfSF?=
 =?us-ascii?Q?X9hK7qryWklZ5dMXJdLcTn1hUytDtgXgsPBD6n//OwjIrMOGsxXfrboIx2M7?=
 =?us-ascii?Q?RFK1uIHGDAdFV9NuYx51LFAa7e1yOkQofFbUeklOlnS0gA=3D=3D?=
Content-Type: text/plain; charset="us-ascii"
Content-ID: <EDD590D0F1975D48B41F0BDB5EA8F930@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3312
Original-Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6b1d335d-ccb8-4e2d-d3dc-08d8ff2e1bfb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jnyaTkFv1/8n20DoyQip6TGinArX2eyKj6ILd30HBbmrjsA51BX7b+QoX7bozglPhZ3dJW3Y6yGjBrTarulMd4ldruWVDXBTourwtWwGFS58ufXVLbPWb6tQ/+RVtXMET+P3aGy2Uz1VxtEQf8Iuf4EfeQ6RJDZffrQbeeJia5BMXOeYHzg5xqBGBaD949B6lgd/ueTSfadd0On1DU9KaUnvGNx9QAShG4PPrrRKoCNQN2Z15Viwd+ZBA4KxCRAfbOoVHwfrzr6JasUUTOf3BGwHH5iSuvmZdElf6Bej+rSu9Mr2ZblKi1GYcUSTkSs7uY9rDywBLr5emhhM7eGBmSBmEdr1J+uQkozVnSb2FEz0dFLZaq6hnH1LFkbODJsYyUuW0rbTDVmHjlX9j+DCiMBFpe3yJj80RczQxl8mI/dUVDa8x15nicAguZGswNRLhm3QBY/tsGW8qPPQfT/ww9geAXBrzC09ZuO67067oe3Jq1xH//IojsITxwnMkOTpEPh54E15iyIaHdYJgTZtEJBALLERRBibkEqDedRMmSzslNFrFAh6t8z1fcxLmqJHzqXB234MChjFT+N7ETVwAhH4jo0R/BgzMjr/t8cIUpUyyf3nxG5KdR5+HZ9nftNX9oNmcEY9hv8AnDwYeegSQN9OrIOViP+qbxr1D08QAzg=
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:(4636009)(346002)(376002)(136003)(396003)(39860400002)(46966006)(36840700001)(82740400003)(356005)(86362001)(70586007)(36860700001)(6636002)(8676002)(316002)(2616005)(37006003)(4326008)(53546011)(36756003)(478600001)(6506007)(47076005)(186003)(33656002)(2906002)(6512007)(26005)(70206006)(8936002)(82310400003)(6486002)(107886003)(5660300002)(6862004)(54906003)(81166007)(336012);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 10:14:52.0229
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a49ae406-bc12-4776-c631-08d8ff2e24a7
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:
	VE1EUR03FT031.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4382

Hi Luca,

> On 14 Apr 2021, at 10:14, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
>=20
> This patch adds a comment in create_domUs() right before
> domain_create() to explain the importance of the pre-increment
> operator on the variable max_init_domid, to ensure that the
> domid 0 is allocated only during start_xen() function by the
> create_dom0() and not on any other possible code path to the
> domain_create() function.
>=20
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers,
Bertrand

> ---
> Changes in v4:
> - Change to the commit title
> Changes in v3:
> - removed check introduced in v2.
> ---
> xen/arch/arm/domain_build.c | 5 +++++
> 1 file changed, 5 insertions(+)
>=20
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 359957dc1b..b1d7b9849f 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -2508,6 +2508,11 @@ void __init create_domUs(void)
>                                          GUEST_VPL011_SPI - 32 + 1);
>         }
>=20
> +        /*
> +         * The variable max_init_domid is initialized with zero, so here=
 it's
> +         * very important to use the pre-increment operator to call
> +         * domain_create() with a domid > 0. (domid =3D=3D 0 is reserved=
 for Dom0)
> +         */
>         d =3D domain_create(++max_init_domid, &d_cfg, false);
>         if ( IS_ERR(d) )
>             panic("Error creating domain %s\n", dt_node_name(node));
> --=20
> 2.17.1
>=20
>=20



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:15:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:15:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110454.210834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWcYJ-0007em-4d; Wed, 14 Apr 2021 10:15:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110454.210834; Wed, 14 Apr 2021 10: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 1lWcYJ-0007ef-1a; Wed, 14 Apr 2021 10:15:19 +0000
Received: by outflank-mailman (input) for mailman id 110454;
 Wed, 14 Apr 2021 10:15:17 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=l1ra=JL=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lWcYH-0007eI-Hc
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:15:17 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.68]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 57171729-7814-42b7-86ba-202170ea9c43;
 Wed, 14 Apr 2021 10:15:17 +0000 (UTC)
Received: from AM6P193CA0082.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:88::23)
 by PAXPR08MB7230.eurprd08.prod.outlook.com (2603:10a6:102:1da::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.21; Wed, 14 Apr
 2021 10:15:07 +0000
Received: from VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:88:cafe::bb) by AM6P193CA0082.outlook.office365.com
 (2603:10a6:209:88::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Wed, 14 Apr 2021 10:15:07 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT042.mail.protection.outlook.com (10.152.19.62) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 10:15:06 +0000
Received: ("Tessian outbound 81a4524e9a48:v90");
 Wed, 14 Apr 2021 10:15:06 +0000
Received: from 9cdd780bd3f7.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 22ABDB8B-FA34-4E91-A6A5-A327134C9E9E.1; 
 Wed, 14 Apr 2021 10:14:55 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9cdd780bd3f7.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 10:14:55 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB3312.eurprd08.prod.outlook.com (2603:10a6:803:46::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Wed, 14 Apr
 2021 10:14:51 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4020.023; Wed, 14 Apr 2021
 10: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: 57171729-7814-42b7-86ba-202170ea9c43
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nHUA0qgAPsu2HYCT8bTV6W/Moacfs3YTvwBXZoQ4dK4=;
 b=T2POsae9+GeCZ1szo2VxnqzCyFDZ+gDDJk75WyhPRq+kB6u7J/hYCqMpJRBz9zXRbFSk16i+heRVNTPafp/boWcB1XF7s/Pr+jt6OGV4gYoYVdvkwdKzwBMf+ffQzreVhlIlnOEOcLCdVJf1CqAPrUA+UK/n7/ho0xySQ9j6CNE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: a107ba044f62111f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gV+F+V6sU02B1FIoqXEWWCNz33G3QMSchSUzDmmbr4zwZg5qhVO6JewNNA6ywAyRmSeB0G0a4HcxEJ3LTK2NvPZkKjP5/bQ8mNlAI1mPZPoPaiaoGBKMOEEG888Jne117GYQGhgMJO/TEKZl+atG5rVcohXMuMn40BuGEAOROeULYsvPqLCGaiOXdlZOY3cEJ3PQpcYbYyvaWiUw2FWh46x2zlu/NTVP99Wpd7lBdXoR+Si/+RJWm+xiOMzgiQ/y+OnXnL/hbkhRN9Zt7KXYPmkkITC+Vn04t1+dFsRM+hplBvsgi0aCNOzs85Axx9b010pvVAW357v9wiE9eadltQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nHUA0qgAPsu2HYCT8bTV6W/Moacfs3YTvwBXZoQ4dK4=;
 b=AEMFjiMnYaMlptI4FK/xb17s3Y1UxUQqEdfUTtmnO0UCn9TL/6byup7B5BPGQbdwBNgoqTFU6s/Cia5ctjBV+PnA7KVrlCDN5J0NyD3nJEGy3RCoS8Ci4MJdLx0YnHn67bEvyL5JtwrmUTNnYvenNwPSKTSdLBA90o+iZDMILktnW5Vj+XWV23fGmmboT/FnLcRK2erTnEIvCe24ddtlkkS8CO2iWtia9EtdzzbOdvDw/9iIRmOoTMlP37vFzHSSTi5T62cf3KMspbJv4G+qvEtT89iaZEPsm0PPTAV0ydzii6DbReGkgN5LLO8R+q5fRsTw0j8/w4ktAe7qUGcAPw==
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=nHUA0qgAPsu2HYCT8bTV6W/Moacfs3YTvwBXZoQ4dK4=;
 b=T2POsae9+GeCZ1szo2VxnqzCyFDZ+gDDJk75WyhPRq+kB6u7J/hYCqMpJRBz9zXRbFSk16i+heRVNTPafp/boWcB1XF7s/Pr+jt6OGV4gYoYVdvkwdKzwBMf+ffQzreVhlIlnOEOcLCdVJf1CqAPrUA+UK/n7/ho0xySQ9j6CNE=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@arm.com>,
	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>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v4 4/4] xen/arm: Prevent Dom0 to be loaded when using
 dom0less
Thread-Topic: [PATCH v4 4/4] xen/arm: Prevent Dom0 to be loaded when using
 dom0less
Thread-Index: AQHXMQ6SubMfZi/T90ypyknR3mHSW6qzy+WA
Date: Wed, 14 Apr 2021 10:14:51 +0000
Message-ID: <D94C1EE2-E8CA-4C0C-BCAA-737BC0A456C6@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-5-luca.fancellu@arm.com>
In-Reply-To: <20210414091404.14215-5-luca.fancellu@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.3654.60.0.2.21)
Authentication-Results-Original: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 3a9e096a-2a2b-4aa1-33bc-08d8ff2e2d5a
x-ms-traffictypediagnostic: VI1PR08MB3312:|PAXPR08MB7230:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<PAXPR08MB72306ACF9A04419A604220F59D4E9@PAXPR08MB7230.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 o33uCDgEn/KfGVz24hHPK0lg9IQd6JzjjkIuYrSW6X3mIY9EmutSeI3ztzY4K+y3+p78+gUK7OydJvojX4LDT6vOUe+dDm4lDJ9R8uYUzDo0SHA2CLMLousguwvkjSfjaLpPwh5vqjaF+YF+YF9e+VnxsN9p9+1RjUxMAU2NcqIl3t/auwkYLLDXZz3jgwQKedpkK/h4SvyRvJqdJANeS0UiMp7yVIAPgoEWPVkFNovbMHTSx5+kMvssZkdHxHDtdwWYkKdMST8UJxAXayACR7v9AOTDmsv6++avyzdf+xs0jiZbKh6FADUl9dW095wG6SZnRxVgNDpTslFHAfjHG8nht98UaZS9HMb1UxeZLOOQtfPIx41ZALG60kHsH/ryxCURELP2E+AaX5HL4YPll3jPMkQ2XRw8aO8MBf29unQvQt7dgfP3RElIODt5b0Yt+A/6tN5nHSgNtthVdFciC5MizDtKj4YaFudXqdOn18mDMiFUZEgUsCoVKD30q4hXeodxOTD3J9A4Iv/wgLbPQLGFpLdzEHsI4MSJALtq0SQS+O1b4WvLD+WrYEtA32k8u/a4N01ZZKrogzsZXzBeHAaji3uldeMYqPcsQjJGtTugA20ir8Zvs3mKldKMfxYHql7geN7kvNDY1nCa7pZ3f+mF9e57MkEA1fwZThlvc+FlORLIS5i3BiNz+Zui9WrI
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(136003)(376002)(396003)(346002)(39860400002)(2906002)(66476007)(66556008)(8936002)(316002)(66946007)(91956017)(76116006)(6512007)(37006003)(33656002)(6862004)(26005)(54906003)(66446008)(36756003)(6506007)(2616005)(8676002)(478600001)(83380400001)(64756008)(186003)(122000001)(5660300002)(6636002)(38100700002)(86362001)(71200400001)(4326008)(53546011)(6486002)(32563001)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?NhV8ayAazXxp0Q5FxTvqnG9TheqZwhbZbKJhRPmqMSWLQjzXeo1u2RX1emNY?=
 =?us-ascii?Q?Ff8AEZLU63YdNLBVlv+K55MZXhOnRoZFI4mJWeEsdZR2l9wedrZnXInaKOvi?=
 =?us-ascii?Q?k0v5H21qWn0agIfepUiXFGm/S0tgYKJL8RRYygtRng4LWqxLJfik2bWPwYcP?=
 =?us-ascii?Q?BVziTaKmAuodiSXjz6hUPkpVl8IrwStLg0JVo2EYJEDdRTs8inoZjULH3zEM?=
 =?us-ascii?Q?lInmhz8ojO01ZYvtowjPiiwULTU2uxbarlWYsmwdQhgrl13M8UBxmIAkS3J/?=
 =?us-ascii?Q?gOppnUI0lJQ9WtkvhdBeMR6hE3pSPXUee2wkH61MZa2R+1c4SlXAPNFMc2hl?=
 =?us-ascii?Q?XA8rPKv4qeY2Pr00o+1W4MKMcl38rDNg8jMNJu3aj/OlZuykMLHK++tBV4AU?=
 =?us-ascii?Q?EUhp5SEIOEoaZMXT/N8w5uy3yGfzI5ghW22r1pZuiQbqFXaSi2M8cvt16EVg?=
 =?us-ascii?Q?wlnxe0HO2A5Y1ptscEnNVaKQdJZ+wMqM5TELZVM8pqXnuJrJ8mrXjrPwx16d?=
 =?us-ascii?Q?82kIiPYhmT509Zq47U/T6ddrc/jSoO00ZxwVCTcP/cpepMZlZJBw3oLiaifU?=
 =?us-ascii?Q?k7vq1+/p+sniP1CS18N0mb8viVw8u+GEmzRXF1rlTw3BXNBELWHsgws8p3uV?=
 =?us-ascii?Q?s45Ko22EwsDzo16TsMSng2Ub1LVp4XTlSYESgd8rK5zuXOkttLIXMBORzlxd?=
 =?us-ascii?Q?A8nalFNgvzZ18n4s62rpdsGCEcBZpwI67H8sVk/tNfdpdKJUBVxPa65JqcCL?=
 =?us-ascii?Q?JBepyWgSQ/+b2nWN6FRaRZnbZTYJkIX/zzPT+d1pJ7sGzvj50fBtBBrfh1eq?=
 =?us-ascii?Q?wErRqcKWZWC266zqvHpUKsVl0fxvCfmZ+56Vg65tkmTEssUCdwY6IogYeY7g?=
 =?us-ascii?Q?lyNiDKFMuq+XvbQRW9KCgi7myRKGF7Bf7tZYmecYdZwC0DrW0GiNWgMAKWLd?=
 =?us-ascii?Q?F9kXtB2CBBB3rlK+9UwVCUr5rTaKmv7p337zpZNS6vC9q801mZKc09d92YKu?=
 =?us-ascii?Q?GkPXEvV3JsEfVzs5KSV3VUQa/L+IPaOVUpF5a8T6CBiVPaQVUWKMA8bJqF2n?=
 =?us-ascii?Q?vV32oiOaie+FGplNphmjXLNfAdSVc4cxYqYqYJ+Xe3LjyZZsPuxTEteoGj0k?=
 =?us-ascii?Q?yUEqTvL8v0kKM4LDceYgUBTEhMzSO3M9PPbwMWzgw8f6OYuy3rAvO4HeRSaI?=
 =?us-ascii?Q?mDtzjHAaWe6RCz6gIM28T/ql8OkzI5LA8u/CWejNPUjnto75PCE5LIfzy/Df?=
 =?us-ascii?Q?jRB0JXPLySZJfOPZPOaQjoPQyq8LlgQ7E9vv8vbYAO0KO1WKuT0N/BO/fkq1?=
 =?us-ascii?Q?i7aBJ1dntvxbL15l1ScNk+XQCDVJ71KqNd5Xw3CMAWqkRw=3D=3D?=
Content-Type: text/plain; charset="us-ascii"
Content-ID: <620AB50392A74C478797748C2BA55CAB@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3312
Original-Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	85507584-1e9b-40a8-66ba-08d8ff2e243e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	O+DzJ8Ggz7+za6rOWpPyBeEES2vtd4xs+md9QgXb6CvVDQqo3FByrhcOSW+0UfoxNEJyGymCDmgu0SuEloq9p6xCe7ROzkcUSl/uzYCp8J8q3hFaSI6P7AP2U1WfQecq4UlsX7NM/3upfs72C7pPWUGSoq/zpeGRFvxdj439NtC/xQ+sCMVMWIdKKZJ7BHJKeyWDhrlnSOBKP0Ld00hEgP98HcpSShmbP0KY1O92K4HPV/ibKGq93nSGNFDVhM+LSF7LZwLqU/pzDZjxMymMbPNOVIPfci1FpVSSa938iygYfkZEtT/yDjFsquv2qRVaVtNqU5dcuwIDCy+6ymAZpCz1IUsguV8LNc11ZqCOrRWtJHW72HO1OpxQzpEKUKXmF0RsoKYVmKRiVk3zVHdcCAxwjDMouMB3c+lRVRflMsP/1L+MEmkz2gEEu83dBfWIxwY+jHxhk285C/AAJ2MnIMqJ9v1yma6uLl10NEiTS8bmVcTlB0JM/6xW7bW8Rzq5DJhQhKlL0f+cLIqjAE8i2WnPDxw9qOUpwNeEkgK5xFv2nLR59WxI2AFyG5sI9RTfrFGZW3laWDtHXoAch2cCtNUDMcItFAbHfHqIpD9XBc2sPTUzdJke4QccYEOsMYO6+NyBYFYwIRsaX3UrpVpnJO11dW5q16jkcPiRc/JsSOz4HIhSQD9kjustOV6F4XbB
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:(4636009)(376002)(39860400002)(346002)(136003)(396003)(46966006)(36840700001)(2616005)(2906002)(70206006)(36860700001)(336012)(316002)(82310400003)(4326008)(70586007)(6862004)(37006003)(53546011)(6636002)(186003)(6506007)(54906003)(8936002)(36756003)(26005)(6512007)(8676002)(33656002)(107886003)(86362001)(478600001)(82740400003)(356005)(81166007)(83380400001)(5660300002)(47076005)(6486002)(32563001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 10:15:06.6080
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3a9e096a-2a2b-4aa1-33bc-08d8ff2e2d5a
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:
	VE1EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7230

Hi Luca,

> On 14 Apr 2021, at 10:14, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
>=20
> This patch prevents the dom0 to be loaded skipping its
> building and going forward to build domUs when the dom0
> kernel is not found and at least one domU is present.
>=20
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> Reviewed-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers,
Bertrand

> ---
> v3 changes:
> - Rephrase documentation
> ---
> docs/features/dom0less.pandoc |  7 +++---
> xen/arch/arm/setup.c          | 42 ++++++++++++++++++++++++++++++++---
> 2 files changed, 43 insertions(+), 6 deletions(-)
>=20
> diff --git a/docs/features/dom0less.pandoc b/docs/features/dom0less.pando=
c
> index d798596cdf..c9edb529e1 100644
> --- a/docs/features/dom0less.pandoc
> +++ b/docs/features/dom0less.pandoc
> @@ -16,9 +16,10 @@ Multiboot specification has been extended to allow for=
 multiple domains
> to be passed to Xen. See docs/misc/arm/device-tree/booting.txt for more
> information about the Multiboot specification and how to use it.
>=20
> -Currently, a control domain ("dom0") is still required, but in the
> -future it will become unnecessary when all domains are created
> -directly from Xen. Instead of waiting for the control domain to be fully
> +Currently, a control domain ("dom0") is still required to manage the Dom=
U
> +domains, but the system can start also without dom0 if the Device Tree
> +doesn't specify the dom0 kernel and it declares one or more domUs.
> +Instead of waiting for the control domain (when declared) to be fully
> booted and the Xen tools to become available, domains created by Xen
> this way are started right away in parallel. Hence, their boot time is
> typically much shorter.
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index b405f58996..ecc4f0ae98 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -793,6 +793,38 @@ static void __init setup_mm(void)
> }
> #endif
>=20
> +static bool __init is_dom0less_mode(void)
> +{
> +    struct bootmodules *mods =3D &bootinfo.modules;
> +    struct bootmodule *mod;
> +    unsigned int i;
> +    bool dom0found =3D false;
> +    bool domUfound =3D false;
> +
> +    /* Look into the bootmodules */
> +    for ( i =3D 0 ; i < mods->nr_mods ; i++ )
> +    {
> +        mod =3D &mods->module[i];
> +        /* Find if dom0 and domU kernels are present */
> +        if ( mod->kind =3D=3D BOOTMOD_KERNEL )
> +        {
> +            if ( mod->domU =3D=3D false )
> +            {
> +                dom0found =3D true;
> +                break;
> +            }
> +            else
> +                domUfound =3D true;
> +        }
> +    }
> +
> +    /*
> +     * If there is no dom0 kernel but at least one domU, then we are in
> +     * dom0less mode
> +     */
> +    return ( !dom0found && domUfound );
> +}
> +
> size_t __read_mostly dcache_line_bytes;
>=20
> /* C entry point for boot CPU */
> @@ -803,7 +835,7 @@ void __init start_xen(unsigned long boot_phys_offset,
>     int cpus, i;
>     const char *cmdline;
>     struct bootmodule *xen_bootmodule;
> -    struct domain *dom0;
> +    struct domain *dom0 =3D NULL;
>     int rc;
>=20
>     dcache_line_bytes =3D read_dcache_line_bytes();
> @@ -958,7 +990,10 @@ void __init start_xen(unsigned long boot_phys_offset=
,
>     enable_errata_workarounds();
>=20
>     /* Create initial domain 0. */
> -    dom0 =3D create_dom0();
> +    if ( !is_dom0less_mode() )
> +        dom0 =3D create_dom0();
> +    else
> +        printk(XENLOG_INFO "Xen dom0less mode detected\n");
>=20
>     heap_init_late();
>=20
> @@ -976,7 +1011,8 @@ void __init start_xen(unsigned long boot_phys_offset=
,
>     if ( acpi_disabled )
>         create_domUs();
>=20
> -    domain_unpause_by_systemcontroller(dom0);
> +    if ( dom0 )
> +        domain_unpause_by_systemcontroller(dom0);
>=20
>     /* Switch on to the dynamically allocated stack for the idle vcpu
>      * since the static one we're running on is about to be freed. */
> --=20
> 2.17.1
>=20



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:28:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:28:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110468.210847 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWclL-0000RS-IL; Wed, 14 Apr 2021 10:28:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110468.210847; Wed, 14 Apr 2021 10: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 1lWclL-0000RL-Es; Wed, 14 Apr 2021 10:28:47 +0000
Received: by outflank-mailman (input) for mailman id 110468;
 Wed, 14 Apr 2021 10:28:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWclJ-0000RG-WB
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:28:46 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0eab6827-1a23-482f-86a6-a43ad752a571;
 Wed, 14 Apr 2021 10:28:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F2430AF1B;
 Wed, 14 Apr 2021 10:28: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: 0eab6827-1a23-482f-86a6-a43ad752a571
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618396124; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Vx6yvnljraKb49dLF7QaTMGoGqZ18mU4KgqLll7LCrA=;
	b=ie2vTP0DjM+3mLAnruqP+eKmHUmSedrSRVw2MVJokR72+Gn6Qu5B9pB2k2UafAyEaN8iVC
	wfI0PvxY48/VR5eXSFo9/Pvnwli+XkPk8TCrFyHHSk2HFTYesT2k8SSK4pz0mxQav909hd
	SyXefyngSftc7KgQ7aMfrfXktrcTm3w=
Subject: Re: [PATCH v3 09/11] x86/vpt: switch interrupt injection model
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-10-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3cb01098-887b-c952-1f93-e89c443ba471@suse.com>
Date: Wed, 14 Apr 2021 12:28:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210331103303.79705-10-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 31.03.2021 12:33, Roger Pau Monne wrote:
> ---
>  xen/arch/x86/hvm/svm/intr.c   |   3 -
>  xen/arch/x86/hvm/vmx/intr.c   |  59 ------
>  xen/arch/x86/hvm/vpt.c        | 334 ++++++++++++++--------------------
>  xen/include/asm-x86/hvm/vpt.h |   5 +-
>  4 files changed, 143 insertions(+), 258 deletions(-)

Nice.

> @@ -285,189 +238,144 @@ static void pt_irq_fired(struct vcpu *v, struct periodic_time *pt)
>              list_del(&pt->list);
>          pt->on_list = false;
>          pt->pending_intr_nr = 0;
> +
> +        return;
>      }
> -    else if ( mode_is(v->domain, one_missed_tick_pending) ||
> -              mode_is(v->domain, no_missed_ticks_pending) )
> +
> +    if ( mode_is(v->domain, one_missed_tick_pending) ||
> +         mode_is(v->domain, no_missed_ticks_pending) )
>      {
> -        pt->last_plt_gtime = hvm_get_guest_time(v);
>          pt_process_missed_ticks(pt);
>          pt->pending_intr_nr = 0; /* 'collapse' all missed ticks */
> +    }
> +    else if ( !pt->pending_intr_nr )
> +        pt_process_missed_ticks(pt);

Did you lose a -- here? I.e. does the condition mean to match ...

> +    if ( !pt->pending_intr_nr )
>          set_timer(&pt->timer, pt->scheduled);
> +}
> +
> +static void pt_timer_fn(void *data)
> +{
> +    struct periodic_time *pt = data;
> +    struct vcpu *v;
> +    time_cb *cb = NULL;
> +    void *cb_priv;
> +    unsigned int irq;
> +
> +    pt_lock(pt);
> +
> +    v = pt->vcpu;
> +    irq = pt->irq;
> +
> +    if ( inject_interrupt(pt) )
> +    {
> +        pt->scheduled += pt->period;
> +        pt->do_not_freeze = 0;
> +        cb = pt->cb;
> +        cb_priv = pt->priv;
>      }
>      else
>      {
> -        pt->last_plt_gtime += pt->period;
> -        if ( --pt->pending_intr_nr == 0 )

... this original code? Otherwise I can't see why the condition
guards a pt_process_missed_ticks() invocation.

> @@ -617,20 +556,29 @@ void pt_adjust_global_vcpu_target(struct vcpu *v)
>      write_unlock(&pl_time->vhpet.lock);
>  }
>  
> -
>  static void pt_resume(struct periodic_time *pt)
>  {
> +    struct vcpu *v;
> +    time_cb *cb = NULL;
> +    void *cb_priv;
> +
>      if ( pt->vcpu == NULL )
>          return;
>  
>      pt_lock(pt);
> -    if ( pt->pending_intr_nr && !pt->on_list )
> +    if ( pt->pending_intr_nr && !pt->on_list && inject_interrupt(pt) )
>      {
> +        pt->pending_intr_nr--;
> +        cb = pt->cb;
> +        cb_priv = pt->priv;
> +        v = pt->vcpu;
>          pt->on_list = 1;
>          list_add(&pt->list, &pt->vcpu->arch.hvm.tm_list);
> -        vcpu_kick(pt->vcpu);
>      }
>      pt_unlock(pt);
> +
> +    if ( cb )
> +        cb(v, cb_priv);
>  }

I'm afraid until we raise our supported gcc versions baseline, v and
cb_priv will need an initializer at the top of the function just like
cb.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:38:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:38:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110473.210858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWcuf-0001TD-Fc; Wed, 14 Apr 2021 10:38:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110473.210858; Wed, 14 Apr 2021 10: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 1lWcuf-0001T6-Cf; Wed, 14 Apr 2021 10:38:25 +0000
Received: by outflank-mailman (input) for mailman id 110473;
 Wed, 14 Apr 2021 10:38:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWcud-0001T1-UY
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:38:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8609fa15-f795-4dd0-a19b-f4c8549d3359;
 Wed, 14 Apr 2021 10:38:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 62319AF75;
 Wed, 14 Apr 2021 10:38: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: 8609fa15-f795-4dd0-a19b-f4c8549d3359
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618396701; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mA4cvtp3ufmPQahQmwh9ZIHo4AajDsdr42Vr+LMZkVo=;
	b=b2GMgxpJbVgAni2cwCfkVuY6Tpe6Vl0DEjaAfQ8QaslttOdDCctoN23RQ+Lh1gluGL3m1d
	cWheOj1JeDU/jb14kV+1vlSlGkciivd7t+G3FnSx7ZaTVFYPgu+8vLSJCVJMlaizKamGSP
	o0Xj4FcB6zzB36g1SqnRCFzdaABgmBs=
Subject: Re: [PATCH v3 10/11] x86/vpt: remove vPT timers per-vCPU lists
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-11-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5d80d406-6275-3de4-8734-a0204151a34c@suse.com>
Date: Wed, 14 Apr 2021 12:38:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210331103303.79705-11-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 31.03.2021 12:33, Roger Pau Monne wrote:
> No longer add vPT timers to lists on specific vCPUs, since there's no
> need anymore to check if timer interrupts have been injected on return
> to HVM guest.
> 
> Such change allows to get rid of virtual timers vCPU migration, and
> also cleanup some of the virtual timers fields that are no longer
> required.
> 
> The model is also slightly different now in that timers are not
> stopped when a vCPU is de-scheduled. Such timers will continue
> running, and when triggered the function will try to inject the
> corresponding interrupt to the guest (which might be different than
> the currently running one). Note that the timer triggering when the
> guest is no longer running can only happen once, as the timer callback
> will not reset the interrupt to fire again. Such resetting if required
> will be done by the EOI callback.
> 
> Since virtual timers are no longer added to per-VCPU lists when active
> a new 'masked' field is added to the structure, to signal whether a
> timer has it's interrupt source currently masked.

I guess this paragraph has become stale with ...

> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> Changes since v2:
>  - Remove pt_{save/restore}_timer and instead use
>    pt_{freeze/thaw}_time.
>  - Remove the introduction of the 'masked' field, it's not needed.

... this change?

Other than this
Reviewed-by: Jan Beulich <jbeulich@suse.com>

>  - Rework pt_active to use timer_is_active.
> 
> Changes since v1:
>  - New in this version.
> ---
>  xen/arch/x86/domain.c          |   4 +-
>  xen/arch/x86/hvm/hvm.c         |   4 +-
>  xen/arch/x86/hvm/vlapic.c      |   1 -
>  xen/arch/x86/hvm/vpt.c         | 174 ++++-----------------------------
>  xen/include/asm-x86/hvm/vcpu.h |   3 +-
>  xen/include/asm-x86/hvm/vpt.h  |  12 +--
>  6 files changed, 27 insertions(+), 171 deletions(-)

Yet nicer than the previous one!

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 10:43:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 10:43:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110478.210870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWczN-0002Ks-36; Wed, 14 Apr 2021 10:43:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110478.210870; Wed, 14 Apr 2021 10:43: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 1lWczN-0002Kl-01; Wed, 14 Apr 2021 10:43:17 +0000
Received: by outflank-mailman (input) for mailman id 110478;
 Wed, 14 Apr 2021 10:43:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qIqP=JL=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lWczL-0002Kg-Jj
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 10:43:15 +0000
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.5.61]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b8263b61-75ca-43a9-92b2-9a1c2cf7c79d;
 Wed, 14 Apr 2021 10:43:13 +0000 (UTC)
Received: from AM6P191CA0072.EURP191.PROD.OUTLOOK.COM (2603:10a6:209:7f::49)
 by DB7PR08MB3835.eurprd08.prod.outlook.com (2603:10a6:10:75::28) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Wed, 14 Apr
 2021 10:43:08 +0000
Received: from AM5EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:7f:cafe::9) by AM6P191CA0072.outlook.office365.com
 (2603:10a6:209:7f::49) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 14 Apr 2021 10:43:08 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT048.mail.protection.outlook.com (10.152.17.177) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 10:43:07 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Wed, 14 Apr 2021 10:43:07 +0000
Received: from 10e18552462c.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 44E8F6D5-F7CC-4815-B0AF-F2353F4C6080.1; 
 Wed, 14 Apr 2021 10:42:47 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 10e18552462c.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 10:42:47 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DB8PR08MB5481.eurprd08.prod.outlook.com (2603:10a6:10:114::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Wed, 14 Apr
 2021 10:42:42 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.4020.022; Wed, 14 Apr 2021
 10:42: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: b8263b61-75ca-43a9-92b2-9a1c2cf7c79d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=97+r0VYzpHG4ENn7zvufoj9jrCt3fG5nukxidD6KqgM=;
 b=VlC2FF1jq4pbYDsKk+7DBKhyMxGwivqavlfpTFCVEBMGsvNwzwQLiQd0Dp2xVUa02cVsmD3puemIsiz94RXrddlE3eqUvJ3v2o264RAY5h+8yzYFr0P8nUe63tKmz4q/9BcVf35NsjzbDHGf5AihCF9ym3rE4B0eknNQKYlrCAg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: b879b3ed0ba67454
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lIlxx/o4HO/yFY28nS/7qZgfM+Z8jK/3ATIVONkNZS48x3sR92gTHlZzJ0WY6Lm8oZJLCEEloZBno1GQdKG3EF58yYivMIkzYX898WU32RDCJrdtetq8xZF/M84c6U1vJkxDMEQyTjz+bKXj0acaX3z+YRAN+sgUhpTU1naR4/vdwLyTETvc0H2xQqH61m++VUiKUdGqe+Nw54rBmd7Z6M4SSJkj2sO4FYqXylwwTXcWsiqYRPk52L4VZWQhQZ8F78u9t1cofmbhxbxdqy3ND7dq2xsZIE9ScTHXpkPDrmIWzN3lFg1JvMoZR19nEpyXzZWb2zeaTKxcD4Q0uOy/kg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=97+r0VYzpHG4ENn7zvufoj9jrCt3fG5nukxidD6KqgM=;
 b=kIXBZgrn8AImD21VLvh2Z344nsstzq/oPRKU9g57YiFrau+i2oo5Z9vhwFH38yVZvBCLwq1u5YUiae82JHbxlw150G3K9VQffIXdqfBDUZz5rfrvKJq4/e31fIgsrvEtS41gC0CQaMDcRv8GigJK3tO/lbVzNBQPGV8NcG45ekV15Db4Oh7nEzKB+19Vl+9p5z/t7A2zLXF8ftU1HiLJbAooHQs7i+RNGLsK0PrYgu76kJh+11PG8LZoZGkWtIchz1PoKPeXdp5wkhwtNdat0EF599Jr95rd4wE607sLXSsG2/kfDLrYU+2j5GvCmq31sZHRBXns/3cPgjNDkK5u5A==
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=97+r0VYzpHG4ENn7zvufoj9jrCt3fG5nukxidD6KqgM=;
 b=VlC2FF1jq4pbYDsKk+7DBKhyMxGwivqavlfpTFCVEBMGsvNwzwQLiQd0Dp2xVUa02cVsmD3puemIsiz94RXrddlE3eqUvJ3v2o264RAY5h+8yzYFr0P8nUe63tKmz4q/9BcVf35NsjzbDHGf5AihCF9ym3rE4B0eknNQKYlrCAg=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, "brian.woods@xilinx.com"
	<brian.woods@xilinx.com>
Subject: Re: [PATCH v3 0/3] Generic SMMU Bindings
Thread-Topic: [PATCH v3 0/3] Generic SMMU Bindings
Thread-Index:
 AQHW9DbnaDtcsjSAAUiKSXHzYBU+iaqmdrkAgAIitwCABL7WAIADyieAgADsxACAAj4sAA==
Date: Wed, 14 Apr 2021 10:42:42 +0000
Message-ID: <08200F6C-F266-4055-B7D9-8D927C4BCFF2@arm.com>
References: <alpine.DEB.2.21.2101261435550.2568@sstabellini-ThinkPad-T480s>
 <80de3eb5-b338-af4e-42eb-d358f51d0bd7@xen.org>
 <alpine.DEB.2.21.2104061606080.31460@sstabellini-ThinkPad-T480s>
 <alpine.DEB.2.21.2104091714270.4885@sstabellini-ThinkPad-T480s>
 <A64881AF-DAD6-4A14-A545-354A75FE1B4F@arm.com>
 <alpine.DEB.2.21.2104121724090.4885@sstabellini-ThinkPad-T480s>
In-Reply-To: <alpine.DEB.2.21.2104121724090.4885@sstabellini-ThinkPad-T480s>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: c2f7742e-d2ca-4e84-d290-08d8ff321766
x-ms-traffictypediagnostic: DB8PR08MB5481:|DB7PR08MB3835:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<DB7PR08MB383545501599261D8768C4C5FC4E9@DB7PR08MB3835.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 sd7+wi9iU9SG1C4Sn1O7AmRNjFh3dAszLLgk20G/LyhDgXz37tfmIM6ouG0EbGmlDHnqOUSBfq/5fvqT+2daw0DUmiGonQGgWBGFNl9Ml7cVzV9tlmwEMsSRgSTynmy/Cr2dV5VFAPNntIdm7/4lWQHt4p5OdXdOuqO003X/u6BZ5MTPIeScpEOU/o7Gt19gt1cky5JYJI+NBcbRX3ZuoAWehU7L7RsoNrVMjKwQc32h6TlD1i+6/6cJigs1afMQphsnvfdA1Qf12qVnKdjmBD0iAP4y4xWWJiFJQJQCWTq8d0w6lV0V1gdeG5/U8FySTCd9ZSXAf5mhSTZdRGvOB3IQ3lakn3X98LSuRijvggPfwDsiqx+cZETNbjHS8ittwMiI8tb2mDgVdofw1I/TZsMi7qi24eMzcXQyd4rZoljWbAsyO1Nf9clWdaDfoO6v49XdUGi+ZYJPV0s/GcM2YvSoYqf4rnDVCG/ZUixuIUdh9NOVZ2RnYMMIEJrCSwQprREn7ScuANxnJ6u+gsaF7nLROoYtMJ/NJVxdxPejCNRti2cYT4Em6St12caBjSVufXo/6Ocb0y/q5Mb4EZWBCrEz2QbYZdQZjIj4Gwzd+jHvWhXQeGKBZJhdPDNOQcDDSFxhCey9U7rq5kLnxpbZEu4/MWzJ6PIXWHFlBte2+GLxiD6Q0WPKJ9RsuzfdcaNSTFkdPKBsIr/CzE8g17rZOnouscPl4+VxlDLuPxEbQ9zq4PkhaG1fK0LtABnQDPTPPjyj8LALPyExyhqW+uTIQKiK4bjny+5/k5aKDDk+JQQ=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(396003)(136003)(39860400002)(346002)(366004)(71200400001)(83380400001)(6916009)(76116006)(86362001)(54906003)(8936002)(91956017)(38100700002)(6512007)(53546011)(478600001)(6486002)(5660300002)(66946007)(316002)(66556008)(186003)(26005)(66446008)(8676002)(122000001)(36756003)(2906002)(966005)(33656002)(66476007)(64756008)(2616005)(6506007)(4326008)(41533002)(45980500001)(6606295002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <7A6B1B9E8D0B49408C588D83AAD0C3E3@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5481
Original-Authentication-Results: kernel.org; dkim=none (message not signed)
 header.d=none;kernel.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT048.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3743657d-08fe-44d6-51fb-08d8ff320853
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5ATZIFuBMyXV2z137MOTAhB8uhhuN0w8tqpa8nQ6ryr/80Xb993vD+d70MXZ7pEd+RzpAzGEaqlAMssWp59VSNFYFf6il7yJ/ljGVhE7FAUUdfYh09eKL0dUY9Qi6Auhzb/K7h/zsFQYfm2b4FTHunkjEFYYKO/UVq0TGoMk264YqcxmsPmhX9mlFgIdwXCDoVeavCoTJdN8P68bcDRDeU0KIEWsgBjbjNsZBGSsYHh7GTN8vLnoEo96FOPDIETWNdfmkieQTkX/0ZaeEJD0cJm3elxnqfdixWwG0kL6lXlmE0hf2znMlMQAdLqlFP5iSux7gnMIR+/avHJfslcVp4JuyXvpSZ39M8+MKkc1SyTi9D/eI8pPeCxCZhaTt89xzWdkiwPMKW2p9vu3W2WB/mrT5rbxWTJde2z/kQLiTtHW/pdgratxyQDn4qm4pKr9Uu6+OGwnLmXC0TPJM1M9rnzHPoGmNLVTYQzxKKUzq5FZ14ExRFj/yRF/gogYNczVuEs/5DntH2xpEUpkY2TAgns6FFY9HvPfuo5sur27hMajsNws1RMnMNm19Jcn1A0z7UmAZ4seEMBy27HQDfo8/MAxlgRX7WQAtJMpvMCwDmrvWdsmkkjmWxM9dSTK3T3YgPd9pq4t1T1sAXVxI8hlwwyB7op75Irc69JuA+XpfK292v19xK74Y0D6Y3lmU35X5ZhAXaw9QGmjHQmvNE2/fWe9GB1aqeZg92BOWX9MpAwl9x5VloxG5GI92njSTiuCD5cHalWOh96duj5xaG0fSs1MuTmOJIpHk0KxblwZ1tw=
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:(4636009)(39860400002)(396003)(376002)(346002)(136003)(46966006)(36840700001)(6512007)(26005)(82740400003)(478600001)(6506007)(36860700001)(70206006)(53546011)(316002)(966005)(86362001)(6862004)(70586007)(81166007)(8676002)(54906003)(47076005)(83380400001)(2616005)(5660300002)(4326008)(2906002)(186003)(336012)(6486002)(356005)(107886003)(33656002)(8936002)(36756003)(82310400003)(41533002)(6606295002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 10:43:07.8337
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c2f7742e-d2ca-4e84-d290-08d8ff321766
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:
	AM5EUR03FT048.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3835

SEkgU3RlZmFubywNCg0KPiBPbiAxMyBBcHIgMjAyMSwgYXQgMToyNyBhbSwgU3RlZmFubyBTdGFi
ZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPiB3cm90ZToNCj4gDQo+IE9uIE1vbiwgMTIg
QXByIDIwMjEsIFJhaHVsIFNpbmdoIHdyb3RlOg0KPj4gSGkgU3RlZmFubywNCj4+IA0KPj4+IE9u
IDEwIEFwciAyMDIxLCBhdCAxOjI3IGFtLCBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5p
QGtlcm5lbC5vcmc+IHdyb3RlOg0KPj4+IA0KPj4+IE9uIFR1ZSwgNiBBcHIgMjAyMSwgU3RlZmFu
byBTdGFiZWxsaW5pIHdyb3RlOg0KPj4+PiBPbiBNb24sIDUgQXByIDIwMjEsIEp1bGllbiBHcmFs
bCB3cm90ZToNCj4+Pj4+IE9uIDI2LzAxLzIwMjEgMjI6NTgsIFN0ZWZhbm8gU3RhYmVsbGluaSB3
cm90ZToNCj4+Pj4+PiBIaSBhbGwsDQo+Pj4+PiANCj4+Pj4+IEhpIFN0ZWZhbm8sDQo+Pj4+PiAN
Cj4+Pj4+PiBUaGlzIHNlcmllcyBpbnRyb2R1Y2VzIHN1cHBvcnQgZm9yIHRoZSBnZW5lcmljIFNN
TVUgYmluZGluZ3MgdG8NCj4+Pj4+PiB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vc21tdS5j
Lg0KPj4+Pj4+IA0KPj4+Pj4+IFRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHNlcmllcyB3YXMNCj4+
Pj4+PiBodHRwczovL21hcmMuaW5mby8/bD14ZW4tZGV2ZWwmbT0xNTk1MzkwNTM0MDY2NDMNCj4+
Pj4+IFNvbWUgY2hhbmdlcyBpbiB0aGUgU01NVSBkcml2ZXJzIHdlbnQgaW4gcmVjZW50bHkuIEkg
YmVsaWV2ZSB0aGlzIHRvdWNoZWQNCj4+Pj4+IHNpbWlsYXIgYXJlYSB0byB0aGlzIHNlcmllcy4g
V291bGQgeW91IGJlIGFibGUgdG8gY2hlY2sgdGhhdCB0aGlzIHNlcmllcyBzdGlsbA0KPj4+Pj4g
d29yayBhcyBpbnRlbnRlZD8NCj4+Pj4gDQo+Pj4+IFRoYW5rcyBmb3IgdGhlIGhlYWRzIHVwLCBu
bywgdW5mb3J0dW5hdGVseSB0aGV5IGRvbid0IHdvcmsgOi0oDQo+Pj4+IA0KPj4+PiBUaGV5IGJh
ZGx5IGNsYXNoLiBJIGRpZCB0aGUgZm9yd2FyZCBwb3J0IG9mIHRoZSB0aHJlZSBwYXRjaGVzIGJ1
dCB0aGV5DQo+Pj4+IGZhaWwgYXQgcnVudGltZSBpbiBteSB0ZXN0cy4gSSByYW4gb3V0IG9mIHRp
bWUgdG8gZmlndXJlIG91dCB3aGF0IGlzIHRoZQ0KPj4+PiBwcm9ibGVtLCBhbmQgSSdsbCBoYXZl
IHRvIHBpY2sgaXQgdXAgYXQgc29tZSBwb2ludCBpbiB0aGUgZnV0dXJlIChpdA0KPj4+PiBtaWdo
dCBub3QgYmUgYW55IHRpbWUgc29vbiB1bmZvcnR1bmF0ZWx5KS4NCj4+Pj4gDQo+Pj4+IFJhaHVs
LCBpZiB5b3UgaGF2ZSBhbnkgaWRlYXMgYWJvdXQgd2hhdCB0aGUgcHJvYmxlbSBpcyBwbGVhc2Ug
bGV0IG1lDQo+Pj4+IGtub3cuIFRoaXMgaXMgdGhlIGJyYW5jaCB3aXRoIHRoZSBmb3J3YXJkIHBv
cnQ6DQo+Pj4+IA0KPj4+PiBodHRwOi8veGVuYml0cy54ZW5wcm9qZWN0Lm9yZy9naXQtaHR0cC9w
ZW9wbGUvc3N0YWJlbGxpbmkveGVuLXVuc3RhYmxlLmdpdCBzbW11LWdlbmVyaWMNCj4+PiANCj4+
PiBJIGRpZCBzb21lIG1vcmUgaW52ZXN0aWdhdGlvbiBhbmQgc3BvdHRlZCBhIG1pbm9yIGVycm9y
IGluIG15IGZvcndhcmQNCj4+PiBwb3J0LiBUaGlzIGFuIHVwZGF0ZWQgYnJhbmNoIGJhc2VkIG9u
IHN0YWdpbmc6DQo+Pj4gDQo+Pj4gaHR0cDovL3hlbmJpdHMueGVucHJvamVjdC5vcmcvZ2l0LWh0
dHAvcGVvcGxlL3NzdGFiZWxsaW5pL3hlbi11bnN0YWJsZS5naXQgc21tdS1nZW5lcmljLTINCj4+
PiANCj4+PiBIb3dldmVyLCB0aGUgcmVhbCBpc3N1ZSBpcyB0aGF0IFJhaHVsJ3MgcGF0Y2hlcyBi
cmVhayBTTU1VIHN1cHBvcnQgb24NCj4+PiBaeW5xTVAgZXZlbiB3aXRob3V0IG15IGNoYW5nZXMu
IEkgcmFuIGEgYmlzZWN0aW9uIGFuZCBmb3VuZCBvdXQgdGhhdA0KPj4+IHBhdGNoICMyIGlzIHRo
ZSBjdWxwcml0Og0KPj4+IA0KPj4+IDVlZTNmYTBiMjFlYSB4ZW4vYXJtOiBzbW11djE6IENvbnNv
bGlkYXRlIHN0cmVhbSBtYXAgZW50cnkgc3RhdGUNCj4+PiANCj4+PiBJdCBjYXVzZXMgdGhlIGFi
b3J0IGFwcGVuZGVkIGJlbG93LiBUaGUgcHJvYmxlbSBkb2Vzbid0IHNlZW0NCj4+PiBwYXJ0aWN1
bGFybHkgWnlucU1QIHNwZWNpZmljLiBSYWh1bCwgY2FuIHlvdSByZXByb2R1Y2UgaXQgb24geW91
ciBzaWRlPw0KPj4gDQo+PiBZZXMuIEkgY2FuIHJlcHJvZHVjZSB0aGUgaXNzdWUgb24gWGlsaW54
IFFFTVUgYXMgd2UgZG9u4oCZdCBoYXZlIGFjY2VzcyB0byBwaHlzaWNhbCBaeW5xTVAgYW5kIGZv
dW5kIG91dCB0aGF0DQo+PiBhc3NvY2lhdGluZyBhbiBpb21tdSBncm91cCBwb2ludGVyIHdpdGgg
dGhlIFMyQ1IgY2F1c2luZyB0aGUgaXNzdWUuDQo+PiANCj4+IEFzc29jaWF0aW5nIHRoZSBncm91
cCBwb2ludGVyIHdpdGggUzJDUiBpcyBwYXJ0IG9mIHRoZSBwYXRjaCAieGVuL2FybTogc21tdXYx
OiBJbnRlbGxpZ2VudCBTTVIgYWxsb2NhdGlvbuKAnS4NCj4+IA0KPj4gSSBqdXN0IHJldmVydCB0
aGF0IHBhcnQgb2YgdGhlIGNvZGUgZnJvbSB0aGUgcGF0Y2ggYW5kIGl0IHdvcmtzIGZpbmUgZm9y
IG1lLiBQbGVhc2UgZmluZCB0aGUgYXR0YWNoZWQgcGF0Y2ggZm9yIHRoZSBzYW1lLg0KPj4gDQo+
PiBBcyBwZXIgeW91ciBhbmFseXNpcyAiNWVlM2ZhMGIyMWVhIHhlbi9hcm06IHNtbXV2MTogQ29u
c29saWRhdGUgc3RyZWFtIG1hcCBlbnRyeSBzdGF0ZeKAnSBpcyBjYXVzaW5nIHRoZSBpc3N1ZSBi
dXQgd2hhdCBJIGZvdW5kIG91dCB0aGF0DQo+PiAieGVuL2FybTogc21tdXYxOiBJbnRlbGxpZ2Vu
dCBTTVIgYWxsb2NhdGlvbuKAnSBpcyBjYXVzaW5nIHRoZSBpc3N1ZS4NCj4+IENhbiB5b3UgcGxl
YXNlIHRlc3QgaXQgb24gdGhlIHBoeXNpY2FsIGRldmljZSBhbmQgbGV0IG1lIGtub3cgaWYgaXQg
d29ya3MgZm9yIHlvdSBhbHNvIHRvIG1ha2Ugc3VyZSB3ZSBib3RoIG9ic2VydmluZyB0aGUgc2Ft
ZSBpc3N1ZS4NCj4gDQo+IEdyZWF0ISBZZXMsIEkgY2FuIGNvbmZpcm0gdGhhdCB5b3VyIHBhdGNo
IGZpeGVkIHRoZSBpc3N1ZSwgbm93IEkgY2FuDQo+IGJvb3Qgc3RhZ2luZyBvbiBaeW5xTVAgd2l0
aG91dCBlcnJvcnMgYW5kIEkgY2FuIGRvIGRldmljZSBhc3NpZ25tZW50DQo+IHRvby4gVGhhbmsg
eW91IHNvIG11Y2ghDQo+IA0KPiBUaGUgb3RoZXIgZ29vZCBuZXdzIGlzIHRoYXQgdGhlIHRocmVl
ICJHZW5lcmljIFNNTVUgQmluZGluZ3MiIHBhdGNoZXMNCj4gd29yayB0b28gb24gdG9wIG9mIHlv
dXJzIHdpdGggdGhlIGZpeCENCj4gDQo+IElzIHRoZSBwYXRjaCB5b3Ugc3VibWl0dGVkIHRoZSB2
YWxpZCBmaXggZm9yIHRoZSBwcm9ibGVtPyBJbiBvdGhlciB3b3JkcywNCj4gc2hvdWxkIHdlIGdv
IGFoZWFkLCByZXZpZXcsIGFuZCBjb21taXQgdGhlIHBhdGNoIHlvdSBhdHRhY2hlZCBvciBkbyB5
b3UNCj4gd2FudCB0byBzZW5kIGEgZGlmZmVyZW50IHZlcnNpb24gb2YgdGhlIHBhdGNoIGZvciBp
bmNsdXNpb24gaW4gWGVuDQo+IHN0YWdpbmc/DQoNClRoYW5rIHlvdSBmb3IgdGVzdGluZyB0aGUg
cGF0Y2guIFBhdGNoIGFzIGl0IGlzIG9rIGZvciByZXZpZXcuIEkgd2lsbCBzZW5kIHRoZSBwYXRj
aCBmb3IgcmV2aWV3Lg0KDQpSZWdhcmRzLA0KUmFodWwNCg0K


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:05:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:05:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110487.210904 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdKv-0004Vs-Ca; Wed, 14 Apr 2021 11:05:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110487.210904; Wed, 14 Apr 2021 11: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 1lWdKv-0004Vl-8C; Wed, 14 Apr 2021 11:05:33 +0000
Received: by outflank-mailman (input) for mailman id 110487;
 Wed, 14 Apr 2021 11:05:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O5rk=JL=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWdKt-0004VO-T5
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:05:31 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id af2d35c6-e725-47db-8ce4-1c7cd1d3f697;
 Wed, 14 Apr 2021 11:05: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: af2d35c6-e725-47db-8ce4-1c7cd1d3f697
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618398329;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=VZIYLeSV0aN4XSzvaC8ife+MYqs04guLDyVOrAMIvpY=;
  b=h8Pp8zsk1LJ2IuuvDPYLpJriFZhyCY9f/Yx1vTihKQTmCp+Q2k+QHCHi
   tNlJq2CkYj5y8a7Xf7YWICZBTqEu44tzhzJgvUIQD4LlhoDlMTOodVorx
   uYLp5UrZqPDEQpC3W+JZ6vQ5Du6gToIIAyqQurjpjR90j0o2Mmyraq2BF
   c=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: zXKDX9ILNqWN/JyKuPLjvVqX7ZHcK7zH4hbSHXa8Bdt5Icw9ZTnqX+aIN7Kqd1HxQHHXJXwxDm
 ucOEsxPiK1U43HcHamlgoLbsIDfEgWLvQSIDd3lZuXeLta3OrBTM6ESlazM8RkF9lQVZNUrCpT
 uio/f6hUIihM/Oe1dHvuiRMbYenTJA2zEZvg6tnu0tinlRsy1HaKo5SJYJUMyDrdK2dwKP50E1
 Jhx04128J427iOnEOywI5x9WqrbVvXytStoueZ1M5q4kymSOR7/CB2WTZxZeMZU6qF65r+kW0U
 CTk=
X-SBRS: 5.2
X-MesageID: 41559652
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:0XFYFqCdMQN2w8XlHegptMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmNEIyycFVB7QxQDOIEwE4
 CS6tECiz2rf3kWacrTPAh4Y8HoodrXmJX6JSMXHhJP0njysRqEyp7fVyKZ0BAXTi9Vzd4Zn1
 TtvgTl6syYwpeG4zDG0Wu71eU1pPLAzZ95CNWImowpLFzX+32VTaBAf5HHgzwvuuGo7z8R4a
 nxijMtJd565X+UXkzdm2qV5yDa3Dwj62DvxDaj6BOJy6yJJ0NJN+N7iY1UaRff4UY71esMqp
 5j5G6Fq4FRSSrJgSWV3am4azhRikG2rXA++NRj6EB3bI12Us41kaUvuGlREJsGARvg7pEmHO
 REHKjnlYhrWGLfQHbDsmZ1xtuwGlw1AxedW0AH/veYyj5MgRlCvgcl7f1auk1F2IM2SpFC6e
 iBGqN0lItWRstTSa5mHu8OTea+F2Sle2OCDEuiZXDcUI0XMXPErJD6pJ8v4vuxRZAOxJwu3L
 zcTVJxrwcJCgLTIPzL+KcO3gHGQW27Uzio4NpZ/YJFtrr1Q6euGTGfSWopj9Crr5wkc4zmcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQlc08X36Iv8LXOqznvuHWa5/oVfjQOAdhflm6Lm
 oIXTD1KskFxFusQGXEjB/YXG6oWkGXx+M0LIHqu8wojKQdPIxFtQYYzX6j4NuQFDFEuqsqOG
 93ILbtlLKHtXC7lFy4q1lBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCR00GaYIAR8C+fbCh
 RWqVgy2a/fFe3f+QkST/acdk6KhXoao3yHC70GnLeY2MvjcpQkSrA8WKJwEg3PPwdvmRljrV
 pCbANsfD6dKhrezYGeyLAEDuDWcNdxxC2xJ9RPlH7ZvUKA4f00SmAjRD6oW86PiQMITz5Z72
 cBtJM3sf6lo3KCOGE/iOM3PBlpZH6MCLxLNgiDeb5Zg6vmYg12UGeMiwGLkh1bQBuYy2wiwk
 jaaQGEc/DCBVRQ/kpV1avn63tYXGSQdUAYUAEwjaRNUUD9/lpj2+6CYaS+l1aLYlwZ2+cHLX
 Xuej0JOD5jwNixyT+YkDuPDm8d250rJ+DRZY5TNY376zeIEsmlhKsGF/hb8NJZL9joqPYMSv
 /aVAmPLj/0YtlZrTC9lzIAAm1Tp3Ylm/+zh0Ggw2i8wXIlAf3dZH5hXKoWJtmA727iA9aEua
 8J+e4djK+VCCHWbNXD9IT8KxhkATnXqXStT+4ppYtP1JhC/IdbLt3+a3/wyHpD3B8CN8/6m0
 MVfbRj7Nn6S/pSVv1XXxgcw0Egm9uOJnY6qwDaAucxelc2kn/QVun5lIbgmP4KCk2FqBCYAy
 jmzwRtu9PEVTCEz7gUFuYZJnlXclE17B1Zjam/XryVLAWhbOdY+lWmdle7bb9GUaCAXZEdtA
 xz7d3Nv+iZcUPDqU3tlAo+BqJF6GC8R8yuRCqKBO5T6tS/fW22vZHC2r/7sB7HDR2ha0oZgo
 VZdUsfKuR74wNS87Ef42yVUaz4okUsjl1Exypo/2Sdg7Sb3A==
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="41559652"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ByKilPfKc1aWHxulc+pIAFbdkIBkPhYGSmwkvedYmi7wMEWnQGI/6IYmndjTBq4yQeQIprEIELqugvDk3j+LilNDeF10fqyVR0IvITypo+yjH1NtF+2RZ1PclU9SiqnjtYnmrPYb5pxu/7qZbMSGRfAPdBR+OVF2cRYMdkDGSu5u3mTkOeamAUq5mtIaqqTti1ckllpTwM+h73bRaI/JXEwkLKfktkEwspydj5OvsxV9YwNWgAKI4JPhMcf2Uw4oKOUGC50hGv0CmDAJ9GPB+PsDJw/fjUAp6X78Mh+Yax9Li3+yhs/P1wZN93Qrh27sPnJZsRVVczguel6NFlel5g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XHgQn41rDI5whB93Ym85E1U2wOPzHicCd0BkH1NVL9I=;
 b=RmmaUeI90iX9HQYUvchCry531vN+ktCo1wQ3aY30gH0TqNGDhVassjtQnJ44Hz5KYTcvFYTc41wUmfrfWlwkkzYUvdup/KDYf1zlkKXhrI7leFtiyBxfKPtJX94yZLBJhKGfa7TE8+AvkDpmS300RT8wf3Q9f049RNnQyg+gT+qi1KRPKQ79LY6ihw//L5c/PakTE2n3JCn9psUQoZ/oVkm3VIN7M/dPK4lMlDJVbuWQT1VejANil1j4FK1Xo8JW+tR4cDFGyQPMjs1vjXpmwwR4qoUs4tObYnQ20OXzvPC894EVMHe8+zgqHsIsdbh2p3biXrxo/52LaIvrOblyAQ==
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=XHgQn41rDI5whB93Ym85E1U2wOPzHicCd0BkH1NVL9I=;
 b=JDzbVUR2rvwzEYUZa+hctOeueYYRGNRSxYkik88rNu0kurwJs/NIFGgKtjQO3qSe+py9PPmojFkBlhNzZ24GfLqmltErU8IgYSi8cqy0IKt1SuGOoNmDIiz3J2YTb1bCY3aAHp9qt7uFthSPS9Tt6V+TVfGYTQfcnvizrnRwwNk=
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 1/2] x86/amd: split LFENCE dispatch serializing setup logic into helper
Date: Wed, 14 Apr 2021 13:04:32 +0200
Message-ID: <20210414110433.83084-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210414110433.83084-1-roger.pau@citrix.com>
References: <20210414110433.83084-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0006.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::18) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b5da8a8f-be1b-4a87-cb75-08d8ff35353a
X-MS-TrafficTypeDiagnostic: DM5PR03MB2842:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB284265E4B68824A37E6875468F4E9@DM5PR03MB2842.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ZcQEnS6t140d6uTg1uSOtlk9ixypH6Gd+o79IvnYOya5s3bggRi6WUqf01nYX0rAPiWo4RduyRUR4pcrFoJGEns5qzlI/Uqa3e/pzEsLcWOJKgiyd0kjDV2kzd1VaLj768MONMNIC1swUyXmslVJDZHZtGViUCEy6Sdu961Kq6KTxZtiFzP5W5Eu+xz/nirPQyW5YRIHSuVn0OJbpQM8pMV6J3/9LwzC7MQ1fUFAqQlspPhZbj35nsXH9ScEWXDGnJPedXEyeRvyODX34mdAKCHMYceYH19m0DaQzSUU2Rhk/ShUwDx3nc2mTVkBdDsbTGaNm6qhOICQNzKYyZYLPOwu6e14ufoIanbbVaXpbrKncrGqLBuqDQb5lJa1/3ADGhKpIg7QZI8/ezWP/BNZVHBAiO/CuIAmVBrzUDu6clWhf4r/T+vaCms7kXdD/eDJLE0TS8MB/TjQJgPqUg6XgO9NXp6W2RNjNBK8Gxsoc5U3vivGmJjZxzzfQZ8DlMfwc93KmN4boHdISuZQ/mG1IzpfTycCRKtlBj1rB0tSKw+ocmXOHzIipToajfFSTAuMDXjZjJdbpfNI1p82KEOZHrYfx15EObPbIsIy7yzfoRI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(366004)(136003)(396003)(376002)(956004)(83380400001)(2616005)(6916009)(316002)(6486002)(54906003)(8936002)(4326008)(38100700002)(8676002)(478600001)(6496006)(186003)(6666004)(16526019)(26005)(36756003)(5660300002)(1076003)(2906002)(66946007)(66556008)(66476007)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?ckpVaFhxYWMzYzBuWER5Zz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: b5da8a8f-be1b-4a87-cb75-08d8ff35353a
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 11:05:26.5649
 (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: 1WcTvLjFzEQ8cug6eimh+rdhNLAbqHHvTwziYPHXFS7kgRyzfYI96BgZznG0EJ4tpWpLnPCykWfasBidO6Z+gw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2842
X-OriginatorOrg: citrix.com

Split the logic to attempt to setup the LFENCE to be dispatch
serializing on AMD into a helper, so it can be shared with Hygon.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/cpu/amd.c   | 62 ++++++++++++++++++++++------------------
 xen/arch/x86/cpu/cpu.h   |  1 +
 xen/arch/x86/cpu/hygon.c | 27 +----------------
 3 files changed, 36 insertions(+), 54 deletions(-)

diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index 8bc51bec10d..9c8dcd91eef 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -642,6 +642,38 @@ void early_init_amd(struct cpuinfo_x86 *c)
 	ctxt_switch_levelling(NULL);
 }
 
+void amd_init_lfence(struct cpuinfo_x86 *c)
+{
+	uint64_t value;
+
+	/*
+	 * Attempt to set lfence to be Dispatch Serialising.  This MSR almost
+	 * certainly isn't virtualised (and Xen at least will leak the real
+	 * value in but silently discard writes), as well as being per-core
+	 * rather than per-thread, so do a full safe read/write/readback cycle
+	 * in the worst case.
+	 */
+	if (rdmsr_safe(MSR_AMD64_DE_CFG, value))
+		/* Unable to read.  Assume the safer default. */
+		__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
+			    c->x86_capability);
+	else if (value & AMD64_DE_CFG_LFENCE_SERIALISE)
+		/* Already dispatch serialising. */
+		__set_bit(X86_FEATURE_LFENCE_DISPATCH,
+			  c->x86_capability);
+	else if (wrmsr_safe(MSR_AMD64_DE_CFG,
+			    value | AMD64_DE_CFG_LFENCE_SERIALISE) ||
+		 rdmsr_safe(MSR_AMD64_DE_CFG, value) ||
+		 !(value & AMD64_DE_CFG_LFENCE_SERIALISE))
+		/* Attempt to set failed.  Assume the safer default. */
+		__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
+			    c->x86_capability);
+	else
+		/* Successfully enabled! */
+		__set_bit(X86_FEATURE_LFENCE_DISPATCH,
+			  c->x86_capability);
+}
+
 static void init_amd(struct cpuinfo_x86 *c)
 {
 	u32 l, h;
@@ -686,37 +718,11 @@ static void init_amd(struct cpuinfo_x86 *c)
 	if (c == &boot_cpu_data && !cpu_has(c, X86_FEATURE_RSTR_FP_ERR_PTRS))
 		setup_force_cpu_cap(X86_BUG_FPU_PTRS);
 
-	/*
-	 * Attempt to set lfence to be Dispatch Serialising.  This MSR almost
-	 * certainly isn't virtualised (and Xen at least will leak the real
-	 * value in but silently discard writes), as well as being per-core
-	 * rather than per-thread, so do a full safe read/write/readback cycle
-	 * in the worst case.
-	 */
 	if (c->x86 == 0x0f || c->x86 == 0x11)
 		/* Always dispatch serialising on this hardare. */
 		__set_bit(X86_FEATURE_LFENCE_DISPATCH, c->x86_capability);
-	else /* Implicily "== 0x10 || >= 0x12" by being 64bit. */ {
-		if (rdmsr_safe(MSR_AMD64_DE_CFG, value))
-			/* Unable to read.  Assume the safer default. */
-			__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
-				    c->x86_capability);
-		else if (value & AMD64_DE_CFG_LFENCE_SERIALISE)
-			/* Already dispatch serialising. */
-			__set_bit(X86_FEATURE_LFENCE_DISPATCH,
-				  c->x86_capability);
-		else if (wrmsr_safe(MSR_AMD64_DE_CFG,
-				    value | AMD64_DE_CFG_LFENCE_SERIALISE) ||
-			 rdmsr_safe(MSR_AMD64_DE_CFG, value) ||
-			 !(value & AMD64_DE_CFG_LFENCE_SERIALISE))
-			/* Attempt to set failed.  Assume the safer default. */
-			__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
-				    c->x86_capability);
-		else
-			/* Successfully enabled! */
-			__set_bit(X86_FEATURE_LFENCE_DISPATCH,
-				  c->x86_capability);
-	}
+	else /* Implicily "== 0x10 || >= 0x12" by being 64bit. */
+		amd_init_lfence(c);
 
 	/*
 	 * If the user has explicitly chosen to disable Memory Disambiguation
diff --git a/xen/arch/x86/cpu/cpu.h b/xen/arch/x86/cpu/cpu.h
index 1992596d1b2..1ac3b2867a0 100644
--- a/xen/arch/x86/cpu/cpu.h
+++ b/xen/arch/x86/cpu/cpu.h
@@ -20,3 +20,4 @@ extern bool detect_extended_topology(struct cpuinfo_x86 *c);
 
 void early_init_amd(struct cpuinfo_x86 *c);
 void amd_log_freq(const struct cpuinfo_x86 *c);
+void amd_init_lfence(struct cpuinfo_x86 *c);
diff --git a/xen/arch/x86/cpu/hygon.c b/xen/arch/x86/cpu/hygon.c
index 46293f1f367..2272e1113f1 100644
--- a/xen/arch/x86/cpu/hygon.c
+++ b/xen/arch/x86/cpu/hygon.c
@@ -32,32 +32,7 @@ static void init_hygon(struct cpuinfo_x86 *c)
 {
 	unsigned long long value;
 
-	/*
-	 * Attempt to set lfence to be Dispatch Serialising.  This MSR almost
-	 * certainly isn't virtualised (and Xen at least will leak the real
-	 * value in but silently discard writes), as well as being per-core
-	 * rather than per-thread, so do a full safe read/write/readback cycle
-	 * in the worst case.
-	 */
-	if (rdmsr_safe(MSR_AMD64_DE_CFG, value))
-		/* Unable to read.  Assume the safer default. */
-		__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
-			    c->x86_capability);
-	else if (value & AMD64_DE_CFG_LFENCE_SERIALISE)
-		/* Already dispatch serialising. */
-		__set_bit(X86_FEATURE_LFENCE_DISPATCH,
-			  c->x86_capability);
-	else if (wrmsr_safe(MSR_AMD64_DE_CFG,
-			    value | AMD64_DE_CFG_LFENCE_SERIALISE) ||
-		 rdmsr_safe(MSR_AMD64_DE_CFG, value) ||
-		 !(value & AMD64_DE_CFG_LFENCE_SERIALISE))
-		/* Attempt to set failed.  Assume the safer default. */
-		__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
-			    c->x86_capability);
-	else
-		/* Successfully enabled! */
-		__set_bit(X86_FEATURE_LFENCE_DISPATCH,
-			  c->x86_capability);
+	amd_init_lfence(c);
 
 	/*
 	 * If the user has explicitly chosen to disable Memory Disambiguation
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:05:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:05:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110486.210892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdKq-0004Tp-0a; Wed, 14 Apr 2021 11:05:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110486.210892; Wed, 14 Apr 2021 11:05:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdKp-0004Ti-Rl; Wed, 14 Apr 2021 11:05:27 +0000
Received: by outflank-mailman (input) for mailman id 110486;
 Wed, 14 Apr 2021 11:05:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O5rk=JL=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWdKo-0004Td-AX
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:05:26 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d7c4506d-fb7b-451c-b9bb-bf101925c334;
 Wed, 14 Apr 2021 11:05: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: d7c4506d-fb7b-451c-b9bb-bf101925c334
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618398324;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=r+Q+0wDEnDNI0qnDTnoulZ96ltKytfy6fcxFT1Gbbpk=;
  b=gzj8GONK61XLak5YiaEzEm5YmG/o+5jnjDtlooO1wBFW87M1otqC62pV
   NlHpG0hF6MdiQvGahXDENO4H2/Dp6vhUHhf+/XlhVrEHdrIg51ZHgXT70
   irGEo1i1xrywdGUTdJuBNzBf/OtNJIBSvCi+5rFAlCkNc199Jts6cZjtD
   g=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: FFhkR2oi8R2V9OOq5ylRA+4Orio33cPykvx17HR30CDLbu99IQkO61RnLlRELyCnnW0Q4gEQzl
 0Z/25UwfcGj1ae4As2K9ohh0qP9eRs4g8od5++LuonR281RpsnXaI0Hxqbhnt5YPsbl0cqi7uQ
 zSdpdMbj9OqNmEs1d7HRj6X0zH/KMRQjOKVMTlrspWKEHmoo1vs164I93QL488FRb2xJ8oxEe8
 nKydVZ1dqGh1kk8FjbBHg+lB6x5VEsXr7S7DkGZ+0SEuyUpFmNUbvo6CAi4/duo/jx4yAnPHzY
 u2Q=
X-SBRS: 5.2
X-MesageID: 41553637
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:NbEB5aACRq3dtlXlHeiHtceALOonbusQ8zAX/mh6QxBNb4i8n8
 ehgPwU2XbP+U0scVsnns2NP7TFZHva+4J874V5B8bZYCDNvmy0IIZ+qbbz2jGIIVykysdx94
 dFN5J/Btr5EERgga/BijWQPt48zLC8gceVrMjEyXMFd2FXQoFmqzx0EwOKVnBxLTM2faYRML
 q5yo55qyG7eXIRB/7LXEUte+TYvdXEmNbHTHc9dngawTKDhz+p97L2eiLwtnxyP1wgoIsKym
 TLnxf04a+uqZiAu2bh/lXO5JdbksaJ8KogOOWwi9MYIjipqgGkaJUJYczngBkJofqi4Ftvrd
 /Uox1IBbUX11rteAiO0HjQ8jil9Axrynf5jXeEnHPooKXCNU8HIvsEobgcTzz0xA4Luspm3K
 dCwmSD3qAncS/orWDF/N7PWAhtlk2o5VQfscN7tQ0CbaIuLIZLq4oR5UVUF4pFOhnbxsQILM
 lCZfusucp+QBeidHbesXBowNuwGk4rFhPDb0QessyRyVFt7S5E5npd/dcYmHgY8pI7Vt165/
 /ZKOBWmKpVTskQBJgNW9spSdC8TmTQXBPBN3+TK1z7FKcBf2nAsYLz/a9d3pDkRLUB15F3nJ
 jaSltXuSope0zoAdCTx5EjyGGAfEy0Rj6o0M1X4vFCy/DBbbL2LCyOT00vmcO8o/MZRtbWQe
 q3JYg+OY6dEULiG4ZMmxf/VZ5bNGUEXKQuy5gGckPLqJnTMYvhuvbAfPvUP7SFK0d9ZkrvRn
 QERzT9P8NG8wSiXWL5mgHYXzf3dlX45o8YKtmTw8EDjIwMPJZLqA4blBCw4dyKMyRLtsUNDT
 1DCaKilqOwvm+t+2nUq21vJxpGF05QpLHtSWlDqwNPM0T6d984ypyiUHEX2HuMPRlkSczKVA
 ZZulRs4Kqya4WK2jpKMaPUDkuKy38I4H6aRZYVnaOOoc/jZ5MjF54jHKh8Dx/CGRB5kRtjwV
 0zIzMsVwvaDHfjmK+lhJsbCKXUbN9nmhqmJsZStDbWqVicrdtHfApbYxe+FcqMxQo+TTtdgV
 N8t6UFhqCbhDqpIWwjxOwlLVxXbniNCr4uNnXEWKxE3rTwPA1gR2aDgjKXzxspfHDx6kkUjm
 v9aSKOf/XGBUdcp2BY3q7m/EgcTBTZQ2tgLnRh9YFtH2XPvXh+leWRYLCozmeXYlwehuERWQ
 u1JQc6M0dr3ZS6xRSVkDGNGTEt3ZM1JPHQC7wlbvXW0nOpI4uYiLEeE5ZvjdFYHcGrtvVOXf
 OUegeTIj+9AfguwRaJqnEsPzQxr3U4j/Xy2lng4HKj1HAyRfreSW4WBI0zMpWZ9SzpVvyI2J
 J2gZY+pu2rKHj8bdaA1OXQdD5MKhTapGasVOE2oZVIvaY/3YEDXaXzQH/NzjVKzR8+JMD7mA
 cVW6Jg+q3MPYdpYogPYS5D50Eok96ONUMvtQTzDoYFDBcQpm6eO8nM76vDqLIpDEHEvgf2NF
 WF+yBW/vvOXUK4pMknIrN1JX4TZFk36Xxk8u/HapbZDx+ycfpfuFCgNGWmbbNbQK+ZGLkZox
 pg+cuUl+uPeyeQ4nGIgRJrZqZVt2q3S8K7BwyBXfNS+9uhIFKWn++k5tWwgDqfc0rwV20IwY
 leMUoeYcRIhmN80Mk50i2uRrf2pUxgmV1E+j1jnkPs3I/j4GqzJzA3DSTJxpFNGT9UOTyUiM
 6A9+6S3nH0+iJE1pnOD104RKA7J/EACozsaz5zIs0RtqOy96Uhgi5fcA4jZlRM+QzVzqdjx/
 Olw/3cVO3pFGfwNV8A8TBDAJRoniZDkxAyT+GuqZS7ex4aEuoBBOc2449RiyxgsVWb1SxoUz
 x98goy1o/MKVT7P3NzUaj29LGG/iQlmA==
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="41553637"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bA8/1CrR8dynGl9vSw66kd3KjJkAHHLY7hIAfmU/Z8Col6SVN8gnzpOMDQA7XsiVeAeGWGVrNMYvoBJmOzFZLZdA+9DKklY0x8w2N8StytJfMkuVRWs4rV0B6KBwfp82yYp5sj19yYVYU33zl2xWP0/uq6+aRLmivFm8s8AroSBXUiqanF5vcbk13tJBkUgpGDLTympFMbk2zlGDGxCV8uAxZwxnhfLj1iVgUSbGnjoT4GfmDkE1TG+K/wWStVioHILEAI7BqjwiJOTPFPiyMzpDTq7eep282QcL20p75alSWjBY3MNJ7UknjBoUTo4iRYLKjkKx0cpyjAufhEVKUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6k+31nGFb+iXFVwUoejcH5kDAQ19bAnaFThuqFgmAQQ=;
 b=AxD2rV9oOg3TZyP0naOuGGZEOy541/y60bHCKUcEWWmi5A+kbClCuNQGqXYv58DtGhIW8PdiatTKynLSWssa9TD5COnZEoj7jCbJRYSIzuwnQzw+79qgOxjY3JHqWNnBaBy6KtJN0NyzpLs7nS+5QeCgh5G/lokLBR24Sk2Ujymt+86G10TN/8U/Zul+lFlREoNKbiTZR6F/Bv+HgpWP1yFtC6XrRfoZ5rYqyJqJhBlqb0t2d0HYNuYdyGheIjbBWPoUGFM6ZBYzEwX7EYNlg+lj1H1ta526YQHaUCSTr7N2yXRyORJjxalZiK0UsMmbzaZEbJ6m1PTaq6WFL/iMJA==
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=6k+31nGFb+iXFVwUoejcH5kDAQ19bAnaFThuqFgmAQQ=;
 b=UwHsyzTCoRULjTH2Mmnrcoy4Yq9QheW3V+WoZGVuuiJWe33F4SKj1QM073FDg93cw7Lexxh0B3PAter3hRrKZKLequHc+/BluL60/N9go9AkvfOYbPIbbIFmnnjjD3LGl2EL/OLUZXdU+DDK0pHPDT30p578bH/qI/wpL568o60=
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>, Ian Jackson
	<iwj@xenproject.org>
Subject: [PATCH 0/2] x86/amd: LFENCE always serializing CPUID bit
Date: Wed, 14 Apr 2021 13:04:31 +0200
Message-ID: <20210414110433.83084-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0083.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::23) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7e3f3435-90cf-4089-8ca9-08d8ff3531d2
X-MS-TrafficTypeDiagnostic: DM5PR03MB2842:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2842D6FA7E1ADB2196BE566D8F4E9@DM5PR03MB2842.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: jA5QhmVDV3KLEjBOTwMN93Mzte2smJ/gbCy3dg5Fx4zjSPHc7RYr07y2ibGOELAMyDeMnHWD12Tmpg3yTbKS5DEl6vkWnqFFll/WQ/1wO5Omg/nmRcz6tYRQ9DZX9ya7Vpcj2080cSNXFcrZmgPFmZ/9UztMYkO17qbcPeEvnuGF+2NwjboVSeDZHTvi1z3Pzo5Cl4naLrhY1OAl0T/wcLvj9u4+U2ItBNh3URe3HM0YPIQPf+K6h6xJtmI/GXS5URYskmYDgvs63MJB48CxzWFStGcqvUORKW2ePMkbbCENBJkjGy7DhJU7oXWIidWd1Z/jH2Lll2W2jORy+GteFaxsSTuaJegG2UZvhjQnRRFXKdfvrWBZAWSMQt03YNbKR3LhQpsjv7KCKbxoBNR8elsZR5DxNGE8+DdR30FdxTEKF+vc7nwTYJLUGU/ESnE5SCkHj78aqKLsxu4IYmy76/wWMqbsG7P0Wt8BiyI1FdYmKRX4K8/7ej6HOtdpmamMzeOfR0O37YKfsh72jnVLHEpBRUfyP5y+y17jg72tb1w/u1bO30F4IocUclP8L+xRKQHd/m2Kn3ZPKq8wc2TaFg1tYFZ32KSE+WiMFrcmHl4=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(366004)(136003)(396003)(376002)(956004)(83380400001)(2616005)(6916009)(316002)(6486002)(54906003)(8936002)(4326008)(38100700002)(8676002)(478600001)(6496006)(186003)(6666004)(16526019)(26005)(36756003)(4744005)(5660300002)(1076003)(2906002)(66946007)(66556008)(66476007)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?UEt6bWwybEkrRXBOSW1wUT09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 7e3f3435-90cf-4089-8ca9-08d8ff3531d2
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 11:05:20.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: tF56oEAjdXEinKmPzMDvjzOym+1UcTtxjjynyXwzdcGjoo1k4o+CWkVqSJdzUM4OOkCAyysYl6bQ4M/m9BF4wA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2842
X-OriginatorOrg: citrix.com

Hello,

The following patches aim to add support for the LFENCE always
serializing CPUID bit found in leaf 80000021.eax. In order to do that
the featureset needs to be expanded to support leaf 80000021.eax.

Thanks, Roger.

Roger Pau Monne (2):
  x86/amd: split LFENCE dispatch serializing setup logic into helper
  x86/cpuid: support LFENCE always serializing CPUID bit

 tools/misc/xen-cpuid.c                      |  6 ++
 xen/arch/x86/cpu/amd.c                      | 69 ++++++++++++---------
 xen/arch/x86/cpu/common.c                   |  3 +
 xen/arch/x86/cpu/cpu.h                      |  1 +
 xen/arch/x86/cpu/hygon.c                    | 27 +-------
 xen/include/asm-x86/cpufeatures.h           |  2 +-
 xen/include/public/arch-x86/cpufeatureset.h |  3 +
 xen/include/xen/lib/x86/cpuid.h             | 37 ++++++++++-
 8 files changed, 92 insertions(+), 56 deletions(-)

-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:06:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:06:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110491.210916 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdLN-0004eq-MT; Wed, 14 Apr 2021 11:06:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110491.210916; Wed, 14 Apr 2021 11: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 1lWdLN-0004ei-J7; Wed, 14 Apr 2021 11:06:01 +0000
Received: by outflank-mailman (input) for mailman id 110491;
 Wed, 14 Apr 2021 11:06:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O5rk=JL=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWdLM-0004dt-KK
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:06:00 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 32345ef8-5b80-48cd-ba1c-4ade80f65af8;
 Wed, 14 Apr 2021 11:05: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: 32345ef8-5b80-48cd-ba1c-4ade80f65af8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618398356;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=d63wDPoILdpretEejbAnyNXF8PmnALolZwq0ccOsIIo=;
  b=cGI2lpJt2tpRgQA9KgRfPgN9nX8cVMI3u9LhlvpgTYr/4Ts0dXmYtX8G
   NBS99Iyl3WrAgqFUMEj3Li18+Z43LhfKJGWqF5a4TQUl6oMqeVvbu+PVA
   vi/JNFVj9ewvh5qtjUtLAUXe11OvPua7sSlnxB5R1dCgrHbSH/A0d/5to
   g=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Eo9xcQdVdOVk4BsSVBQrm0A1LPBAIze0XBLD92ktVSTjZtn0wgjSvqSIXIlQV1a6P7VVqPmGi0
 9bBEFnqHeAaOWOCiQDSvjtOsiFV9Vv5Hmzn+b0wOxoomA1lq0BfL268bIpGr80N7h2EM6q4502
 zevp1tbwSZPshgE1RdgOXDueDvpRlmjQ0IO/KXrJy5l4bZ1a+EzxLABiXUQTWtN4xDuDd/GUys
 c7oW90EKqHBkYEdfEG3kehgOPvrRkJ76wINOxUGMNWI5W5zHbn86bj+anBIvAJE8yZk+7PIJ5h
 itw=
X-SBRS: 5.2
X-MesageID: 41690053
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:2GJp/KykilBv2K/4DD3iKrPxB+8kLtp033Aq2lEZdDV8eMaVjt
 3rufwd2wP9hjp5YgBapfmrPq6cTXTAsbt85ocMNbmvNTOWwleABodk8Ifk3nncCzTzn9Qtjp
 tIXopfLJnLDVZ8hdvn+wXQKbwd6fSO7azAv5a4815DVgdvApsB0y5YDUKhHlRyVE16A/MCZe
 Khz+5mgxblRngNdMS8ARA+LrL+jvnGjojvbxJDJzNP0njpsRqS5LT3EweV034lOlslrNtMnw
 n4ujf06am5v/awxgW07R6r071thNDjxtFfbfb86PQ9FzT2hg6kIKRnVrGS1QpFxN2H1VcwnN
 HA5yonJsR4gkmhG12dnB2F4XiC7B8er1vZjX6Rmz/KvNHwTjNSMbs9uatpNj/ir3cGkP45+q
 RRxG6dv4dQFnr77VjAzumNbgptkEWsp3okjKo8s1xzOLFuNIN5nMgn50VSH44HHCXmrKYdMM
 crIv39yZ9tAA6nRkGch3JoxtO0WHQ1A1O9W0AH/uGYzjBXmWoR9TpH+OUv2k4a8pQzUp9F4P
 mBDaRyiKsLccMMd6J6A446MJSKI2TXS1bFLH+SLVP7FKsOJnLKrNrt7K8o4fyxEaZ4g6cakI
 /KFFdVr3Q7dU6rE82B25VX7gvAKV/NEQjFwtpVo4J0sriUfsunDQSKVE0un8y8o/8WH83cXL
 KpNIhLBuL4RFGeZrph0g//X91JKXcYWNAIodpTYSPBnuvbboewr/fcevrIPrbhFy0rM1mPWk
 crTXz9It5N4VusXWK9iB/NW2n1cki65p5oFrPGltJjgLQlJ8lJsgIPj06+6dzOITpesrYudE
 8WGsKQroqr4W23933P9WNnJ15UCVtU+qzpVzdPqRURO035NbYFtNP3QxEa4FKXYht+RdjRCg
 hRuhB+/r+2NYWZwWQ6EM28W1jq/Uc7tTaPVdMRi6eD7cDqdtcxCYsnQrV4EUHOGwZukQhnpW
 9fYGY/NwTiPyKrjb/ggI0fBenZedU5ihysO9RIpXXWsljZrd0zR3MANgTeEPK/kEIrXX5Zl1
 dx+6gQjP6LgjC0M3Yyh+w+LRlFdHmXGrRbFw6IDb8k2ozDaUV1VyOHlDaagxY8di7h7EMJnH
 HsKiWSZLXFGVxYtndE0rv78V99e2mHFngAL0xSoMl4DyDLq3xz2eiEau64yG2KcEYPxekbLX
 XEbFIpU0dT7sHy0ATQlCeJFH0gyJlrNPfaFq4/f7ba3W7oLIWJkKoBDuJF5ZoNDqGojsYbFe
 aEPwOFJjLxDO0knwaPoGw+JSVyoH441fTlxQPi92r92HIkG/LdLBBnStggUpKhxnmhQ+zN3I
 RyjNozs+f1OH72cMSaxabeaCMGLAjSr26wR+QhsotVoqo2qbt2E/DgIHn1/WAC2A97INb/lU
 sYTqg+6qvGIJVzc8sbfD8c4kAkj82VLEwgshX/B+g3eV1FtQ6cA/qZp77T7bY/CEyIowX9fU
 OS9CBQ5P/JVSqO37xyMdNGHU1GLEwnrHhy9uKLcIPdTBiwf+ZY5VygLzu2a7lGUrWIHr0Wsx
 d369yFhPWMaiL9wQzc1AELe55m4iKiW4e/EQiMEelH/5imIlyKmLKt+9P2gzHtSze3An5oz7
 FtZAgVdIBEhTYjhoFsjXT3Razzv04/k1xRpTtgjUXg34C64GHdWUFKWDep8ql+TH1WKDyPi8
 +A7O2TkHL66zJB0YPYFEhRcspVcuJgOrTfPmNrM4wIoLWs/6AzmSxNbxclEn4khFnGrpJb9K
 b83O+XRvbrBnjpM08Q4DJJBoZ7mSowtGFLGvLOnq6Vc0EQEfcSD/867odLmDdnrEPs50YQBi
 8dwzAAx8XKNVzoP3N1CKjok8/3mXEj1da/12E=
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="41690053"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dAAO2zG2lGWnUp6iideDlmOqR/ZjP6ZVsCxCvkdwRf8ExiAOEoM2Q157sMJaocSrUIVWpbLes4/6TR1+IDwxpZskuna+OeZG+ogPX5H28c9nEkwJHTe9wT2mrKWIx0fIdKJ7Xwtvy0skqAMUMseDOMOBTexndYT9RFWmA7np2xdE9P1F48HbpqLJkODibQD1GBbDG6Xh745ftdWfC501YKRLTXYMkF8fC5XNE6BBCEnzpdMtcDtd0RDLiaTOi6aiGbPNs4D2w97amQLSHcnjDTVVKQ2klPeIXmX7udCyItQtVuNHAO9GZzCufxtlAAUrAnRmqToJ2IOS1LKi8/mfIg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=B1EnhQpxzdq1GIcElCsvj1rntwwV7ItPVmtb3wEEy3o=;
 b=NQn9zoaxCNJdwXq5daafpH1bW8jCDPpCEAHC4cPLyptJZUNaBODuvT2hggfDsv9BRnWegbCoC6brj/GFTFxsJx0/osrMrutTEhDT7XPl9ptmxAXlqQjxGasZhMW9I3kQCRDuN8hwdzhmYC/bUOhmnvFlL6aILJ4wupnMLhPaJxAjXBxcGyca/69+lQUwXzn88PH1lko19YvkifIllHDHF58oTD9H79g2dFwmOekTo1HfRoqKmv3OH15z4U0Zz7+uMfGdO+eGnn1zYtGdUAEcG3kjSMehBJDSjlE7hWBMTJVMWkDBOkEtHXOEXlqV0772zwdCuVkUs2+aiWvd5JWG8A==
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=B1EnhQpxzdq1GIcElCsvj1rntwwV7ItPVmtb3wEEy3o=;
 b=R3PSfHZ/NI0SrVYpf/UW5v6lJYkBXOgkPcbRulniHmrVayMLV6KUKmRomXsGurDQNO6nmtlLcxqQf7eggq5bvf5javU9bnb6PpnWMJwk5zKM+G1ZXD5GswYJE8P1JYUw9EugvWfvxvE8HFM+02YMtAQ8wFa8e7uqR5sV9sfBUcQ=
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>, Ian Jackson
	<iwj@xenproject.org>
Subject: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID bit
Date: Wed, 14 Apr 2021 13:04:33 +0200
Message-ID: <20210414110433.83084-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210414110433.83084-1-roger.pau@citrix.com>
References: <20210414110433.83084-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0090.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f4aa7328-fb6c-4bc9-f492-08d8ff353805
X-MS-TrafficTypeDiagnostic: DM5PR03MB2842:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB28420F50328397AB8021F33F8F4E9@DM5PR03MB2842.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: oSMXqTgXK/2y5I1QYAiJfS8Xh0QQZ6omwSzhfhWdb3LXB+sNj0iOuTj8hMIEdPXoBVQb7lVccXMjHTWitypnXczD8bAKVphq7hCfAcqrfWX1LnOXRnGlOCften69mU6D5a6dO/QJc5R26EYAT8HG2LRs9mdzt2yIti3uFXpTsHhxslhAAnLYBO4sMtK1DxP3Wc391nU02p7g5pFs9/eFRrUIOAghocJcKItoZY0D1la8/3p623DtK6VB8p2qkUlUUK7EZ07bey1aBo5oauVDnpJivo7DIqT2KQ0JEfwsXukAYQIgOLtjK8H99wrh2n4cyvHGAd8iL+MouIMjUUfNdKGcSS/Fu3thJD8fFvdQrHRxCg2ZwAs7aM+EVNsG8tp2OoDWED/yK6Mot8ncSfDmODX7AvTM/e18z6aF46uT6vQxhlynCHxv+jRSfiOd45lqvH1TrZbFF0CblpEdTE57lWQf9dE1m2aClI3hxmKDKcwqzcJVykbR5Ak50XZ52jkdLG6SujRTk3gmfYi6NPY/amct2mUa5w9uwSajn4A/qa5e4ZE1OP9vaKHsJbGrevqHLwMswCcp4lXGSvbPlMy5iajm3BNryBd1eatqVvn0VYs=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(366004)(136003)(396003)(376002)(956004)(83380400001)(2616005)(6916009)(316002)(6486002)(54906003)(8936002)(4326008)(38100700002)(8676002)(478600001)(6496006)(186003)(16526019)(26005)(36756003)(5660300002)(1076003)(2906002)(66946007)(66556008)(66476007)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?dm9sWGxnQ3MrSFZVQ0hrQT09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: f4aa7328-fb6c-4bc9-f492-08d8ff353805
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 11:05:31.2244
 (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: BrzGwf3Zy8E9CPAeQhrU0fDWwzZeh/ekpKJzd4OXOPqDtZu4kr6cEbqxsXMb1GGnj6Kruqntdn5ik0Lel2uWHQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2842
X-OriginatorOrg: citrix.com

Milan AMD CPUs have an LFENCE Always Serializing CPUID bit in leaf
80000021.eax. Previous AMD versions used to have a user settable bit
in DE_CFG MSR to select whether LFENCE was dispatch serializing, which
Xen always attempts to set.

In order to support this new CPUID bit move the LFENCE_DISPATCH
synthetic CPUID bit to map the hardware bit (leaving a hole in the
synthetic range) and either rely on the bit already being set by the
native CPUID output, or attempt to fake it in Xen by modifying the
DE_CFG MSR. This requires adding one more entry to the featureset to
support leaf 80000021.eax.

The bit is exposed to guests by default, as a way to signal that
LFENCE is always serializing, either because it's mandated by
hardware, or because Xen has performed the necessary arrangements.
Note that Xen doesn't allow guests to change the DE_CFG value, so once
set by Xen LFENCE will always be serializing.

Note that the access to DE_CFG by guests is left as-is: reads will
unconditionally return LFENCE_SERIALISE bit set, while writes are
silently dropped. The MSR is not present on AMD Milan hardware, but
I'm not sure there's any value in adding logic in Xen to also hide it
from guests when running on such hardware.

Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/misc/xen-cpuid.c                      |  6 ++++
 xen/arch/x86/cpu/amd.c                      |  7 ++++
 xen/arch/x86/cpu/common.c                   |  3 ++
 xen/include/asm-x86/cpufeatures.h           |  2 +-
 xen/include/public/arch-x86/cpufeatureset.h |  3 ++
 xen/include/xen/lib/x86/cpuid.h             | 37 ++++++++++++++++++++-
 6 files changed, 56 insertions(+), 2 deletions(-)

diff --git a/tools/misc/xen-cpuid.c b/tools/misc/xen-cpuid.c
index 2d04162d8d8..38406baadad 100644
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -178,6 +178,11 @@ static const char *const str_7a1[32] =
     [ 4] = "avx-vnni",      [ 5] = "avx512-bf16",
 };
 
+static const char *const str_e21a[32] =
+{
+    [ 2] = "lfence-always-serializing",
+};
+
 static const struct {
     const char *name;
     const char *abbr;
@@ -195,6 +200,7 @@ static const struct {
     { "0x80000008.ebx",   "e8b", str_e8b },
     { "0x00000007:0.edx", "7d0", str_7d0 },
     { "0x00000007:1.eax", "7a1", str_7a1 },
+    { "0x80000021.eax",  "e21a", str_e21a },
 };
 
 #define COL_ALIGN "18"
diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index 9c8dcd91eef..35f22c24762 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -646,6 +646,13 @@ void amd_init_lfence(struct cpuinfo_x86 *c)
 {
 	uint64_t value;
 
+	/*
+	 * Some hardware has LFENCE dispatch serializing always enabled,
+	 * nothing to do on that case.
+	 */
+	if (test_bit(X86_FEATURE_LFENCE_DISPATCH, c->x86_capability))
+		return;
+
 	/*
 	 * Attempt to set lfence to be Dispatch Serialising.  This MSR almost
 	 * certainly isn't virtualised (and Xen at least will leak the real
diff --git a/xen/arch/x86/cpu/common.c b/xen/arch/x86/cpu/common.c
index e5c3caf41d5..0eb364f8a65 100644
--- a/xen/arch/x86/cpu/common.c
+++ b/xen/arch/x86/cpu/common.c
@@ -412,6 +412,9 @@ static void generic_identify(struct cpuinfo_x86 *c)
 	if (c->extended_cpuid_level >= 0x80000008)
 		c->x86_capability[cpufeat_word(X86_FEATURE_CLZERO)]
 			= cpuid_ebx(0x80000008);
+	if (c->extended_cpuid_level >= 0x80000021)
+		c->x86_capability[cpufeat_word(X86_FEATURE_LFENCE_DISPATCH)]
+			= cpuid_eax(0x80000021);
 
 	/* Intel-defined flags: level 0x00000007 */
 	if ( c->cpuid_level >= 0x00000007 ) {
diff --git a/xen/include/asm-x86/cpufeatures.h b/xen/include/asm-x86/cpufeatures.h
index d7e42d9bb6a..6c8f432aee4 100644
--- a/xen/include/asm-x86/cpufeatures.h
+++ b/xen/include/asm-x86/cpufeatures.h
@@ -24,7 +24,7 @@ XEN_CPUFEATURE(APERFMPERF,        X86_SYNTH( 8)) /* APERFMPERF */
 XEN_CPUFEATURE(MFENCE_RDTSC,      X86_SYNTH( 9)) /* MFENCE synchronizes RDTSC */
 XEN_CPUFEATURE(XEN_SMEP,          X86_SYNTH(10)) /* SMEP gets used by Xen itself */
 XEN_CPUFEATURE(XEN_SMAP,          X86_SYNTH(11)) /* SMAP gets used by Xen itself */
-XEN_CPUFEATURE(LFENCE_DISPATCH,   X86_SYNTH(12)) /* lfence set as Dispatch Serialising */
+/* Bit 12 - unused. */
 XEN_CPUFEATURE(IND_THUNK_LFENCE,  X86_SYNTH(13)) /* Use IND_THUNK_LFENCE */
 XEN_CPUFEATURE(IND_THUNK_JMP,     X86_SYNTH(14)) /* Use IND_THUNK_JMP */
 XEN_CPUFEATURE(SC_BRANCH_HARDEN,  X86_SYNTH(15)) /* Conditional Branch Hardening */
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index a5014798209..c67cd07b26b 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -277,6 +277,9 @@ XEN_CPUFEATURE(SSBD,          9*32+31) /*A  MSR_SPEC_CTRL.SSBD available */
 XEN_CPUFEATURE(AVX_VNNI,     10*32+ 4) /*A  AVX-VNNI Instructions */
 XEN_CPUFEATURE(AVX512_BF16,  10*32+ 5) /*A  AVX512 BFloat16 Instructions */
 
+/* AMD-defined CPU features, CPUID level 0x80000021.eax, word 11 */
+XEN_CPUFEATURE(LFENCE_DISPATCH,    11*32+ 2) /*A  LFENCE always serializing */
+
 #endif /* XEN_CPUFEATURE */
 
 /* Clean up from a default include.  Close the enum (for C). */
diff --git a/xen/include/xen/lib/x86/cpuid.h b/xen/include/xen/lib/x86/cpuid.h
index f4ef8a9f2f0..a4d254ea96e 100644
--- a/xen/include/xen/lib/x86/cpuid.h
+++ b/xen/include/xen/lib/x86/cpuid.h
@@ -15,6 +15,7 @@
 #define FEATURESET_e8b    8 /* 0x80000008.ebx      */
 #define FEATURESET_7d0    9 /* 0x00000007:0.edx    */
 #define FEATURESET_7a1   10 /* 0x00000007:1.eax    */
+#define FEATURESET_e21a  11 /* 0x80000021.eax      */
 
 struct cpuid_leaf
 {
@@ -84,7 +85,7 @@ const char *x86_cpuid_vendor_to_str(unsigned int vendor);
 #define CPUID_GUEST_NR_TOPO       (1u + 1)
 #define CPUID_GUEST_NR_XSTATE     (62u + 1)
 #define CPUID_GUEST_NR_EXTD_INTEL (0x8u + 1)
-#define CPUID_GUEST_NR_EXTD_AMD   (0x1cu + 1)
+#define CPUID_GUEST_NR_EXTD_AMD   (0x21u + 1)
 #define CPUID_GUEST_NR_EXTD       MAX(CPUID_GUEST_NR_EXTD_INTEL, \
                                       CPUID_GUEST_NR_EXTD_AMD)
 
@@ -264,6 +265,38 @@ struct cpuid_policy
             };
             uint32_t nc:8, :4, apic_id_size:4, :16;
             uint32_t /* d */:32;
+
+            uint64_t :64, :64; /* Leaf 0x80000009. */
+            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and features. */
+            uint64_t :64, :64; /* Leaf 0x8000000b. */
+            uint64_t :64, :64; /* Leaf 0x8000000c. */
+            uint64_t :64, :64; /* Leaf 0x8000000d. */
+            uint64_t :64, :64; /* Leaf 0x8000000e. */
+            uint64_t :64, :64; /* Leaf 0x8000000f. */
+            uint64_t :64, :64; /* Leaf 0x80000010. */
+            uint64_t :64, :64; /* Leaf 0x80000011. */
+            uint64_t :64, :64; /* Leaf 0x80000012. */
+            uint64_t :64, :64; /* Leaf 0x80000013. */
+            uint64_t :64, :64; /* Leaf 0x80000014. */
+            uint64_t :64, :64; /* Leaf 0x80000015. */
+            uint64_t :64, :64; /* Leaf 0x80000016. */
+            uint64_t :64, :64; /* Leaf 0x80000017. */
+            uint64_t :64, :64; /* Leaf 0x80000018. */
+            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifiers. */
+            uint64_t :64, :64; /* Leaf 0x8000001a - Performance related info. */
+            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature information. */
+            uint64_t :64, :64; /* Leaf 0x8000001c. */
+            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties. */
+            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/Node IDs. */
+            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryption. */
+            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
+
+            /* Leaf 0x80000021 - Extended Feature 2 */
+            union {
+                uint32_t e21a;
+                struct { DECL_BITFIELD(e21a); };
+            };
+            uint32_t /* b */:32, /* c */:32, /* d */:32;
         };
     } extd;
 
@@ -293,6 +326,7 @@ static inline void cpuid_policy_to_featureset(
     fs[FEATURESET_e8b] = p->extd.e8b;
     fs[FEATURESET_7d0] = p->feat._7d0;
     fs[FEATURESET_7a1] = p->feat._7a1;
+    fs[FEATURESET_e21a] = p->extd.e21a;
 }
 
 /* Fill in a CPUID policy from a featureset bitmap. */
@@ -310,6 +344,7 @@ static inline void cpuid_featureset_to_policy(
     p->extd.e8b   = fs[FEATURESET_e8b];
     p->feat._7d0  = fs[FEATURESET_7d0];
     p->feat._7a1  = fs[FEATURESET_7a1];
+    p->extd.e21a  = fs[FEATURESET_e21a];
 }
 
 static inline uint64_t cpuid_policy_xcr0_max(const struct cpuid_policy *p)
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:11:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:11:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110508.210931 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdQp-0005cF-IP; Wed, 14 Apr 2021 11:11:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110508.210931; Wed, 14 Apr 2021 11:11:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdQp-0005c8-EX; Wed, 14 Apr 2021 11:11:39 +0000
Received: by outflank-mailman (input) for mailman id 110508;
 Wed, 14 Apr 2021 11:11:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWdQo-0005c3-6k
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:11:38 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b0ef1841-4c3f-4daa-a357-b43cc526e59c;
 Wed, 14 Apr 2021 11:11: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: b0ef1841-4c3f-4daa-a357-b43cc526e59c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618398697;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=M0KSdhxdbmY7WYtVzfLnZqivsWL3jfFP0YsE3yo6sMM=;
  b=Qd1IQlkY++tIfZukIq1LWls3rMitqLNcrhTqwBNrx8DJYXme5WNPj7u6
   lCgcuZZtzarqnSpwg0EjfL3A5Bi4JchRASzkBU6JGtbvE+D5NssW1EtCg
   XfZxheu1EyNpYqAgDbmLfNPJuOqBMMk5v9SnBlSDpqgWx5Rl42s8vY9zw
   8=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: mt4bSELrh4jLOQ+06n3Qf8o0BM/W4Prcmj/otBwo3myjbANkAt7jSEk30AaGdQcLJcAD06wAi+
 gTWnhoKHW40qGbjuIolxS1MrQMs8CU+Ko4avFA8tyAfpmBL+Db34J5EoV4V/P3ILjQCHcfnHqU
 t1CEqUp2EQeCjXTXsLl+kn0JFny+KePwwakzXT/YyfqjOYcCn9k8AuGFy9oJTgnfp3G2aahy04
 rZ30j5kmZmyvLOKNZB6burGN3wQgSs1mae74Rtpbj0uerzpS5cfRq9FggzJ3cAic8FuV/woOat
 E4g=
X-SBRS: 5.2
X-MesageID: 43037078
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:gseOVKvSS5v/uZBmNT+Rq1F+7skCpIMji2hD6mlwRA09T+Wxi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybde6+AqXYuKdg/gpWeuMcVe/ZLvqgeQfxHW28x88e
 Nbc6Z4AMDtFlQSt6zHySSxDtpI+ra62Y+yg+O29RlQZCVLT40l0AtjEAacFSRNNWx7LL40Do
 CV6MYChxfIQwV1Uu2BCnMIX/fOqrTw/fqLXTc8CwM68w7LtDu06dfBeCSw5AsUUD9E3N4ZgA
 r4ujH+j5/Dj9iLjiXy+kWWxJRQldvnxLJ4dbGxo/lQEBrAoEKFYIxgXpeLoTw6pvq+gWxa7O
 XkklMbEOlYr1/XY2GpsTvhsjOQrwoG2jvZ5nKzxVvlvMDjSzoxB6N69PxkWyqc0WUMlpVY8s
 twrgWknqsSNzzstmDBwuKNcBdQmk+9sRMZ4JUupk0aa6QyQvtst4AFlXkldqsoLWbBx60MNv
 JhN83Y7OY+SyLhU1np+lNix9GhRR0Ib267a3lHvsSU1g5fl2xiw30Zw9QCnmwB+IhVceg929
 j5
X-IronPort-AV: E=Sophos;i="5.82,221,1613451600"; 
   d="scan'208";a="43037078"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eMPxztCPWbH2lNlxQbpiJP04RcEB5MyTec0ulxC4B3VMgoyIuFs/emqtQiWW+dNraZ8x3Rnb/LiMXoa6LnIyGbOMq9ecfWJNG2oS90zGqSr+APTNbKb/bHvd0URuPX4DfgAvu10Hze60Lvag6+h/BcqweOqSS1bQL9kzBEQD35TPFpMoKF/7ZgZg+/qRF+rWy07z0MSVajA2IK9Mrma1iBxkx5Aunpapt7HO0HIklZy5JD7ylt8PvlzD3rQIYOkUe/xZ608yT4TPhY4dDmRud3FfRLpMnVZneozZ9oIQ4KtjQt0OD3dENP3p4N9h0dL/g77RAkaBz9vw0x9oQAhErA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M0KSdhxdbmY7WYtVzfLnZqivsWL3jfFP0YsE3yo6sMM=;
 b=R47QwC772sxF0dXc72XQRHAJPGNnSrMd6sOYgXrbs4bc9PekuOJY7NcvwogKNQrlG7oMgSOz29tcLIHoRhJfCpE+c/jp9tHVX6wgP4rMUaZSJa2B/zzAcQyO7GLjfy9KwAEPnY029pNJU68ZpAEF7g3lCwdzonaJTD/lwJyXh8Us3Tr/55VPum0su6ZC6CYtjIW0TNWhozj8aGvsCdF63ORRb/tEthhtO3gbNHSYb+ZvhCP+Y1T7OLG7QpJvY6n1fkvQkw86jm4t95uTA45u1He3FJX6Wxux14gws3GExqPi208zQkXSE/+IxZxBuhtWSbGoskKr39zoPbEGPDOqbw==
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=M0KSdhxdbmY7WYtVzfLnZqivsWL3jfFP0YsE3yo6sMM=;
 b=nRPVSSBC7VuYeUsNOHuOwkIWkCr920/v+XO5kDPBskevuGtQFqVDdzwx7uDjay4pb3GwIztDSlNg0qAkf1h02O+TDwIhF/yhMQqPoMCWHOwoPQumiVeYqCUBsFV9bRW7s4CYDtDzwM57Nr1N41ljhUJ620OOI4852FNOYQvwDT0=
Subject: Re: [PATCH 1/2] x86/amd: split LFENCE dispatch serializing setup
 logic into helper
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-2-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <fadf1eb2-6d9a-2488-14b9-a07885690ec6@citrix.com>
Date: Wed, 14 Apr 2021 12:11:25 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210414110433.83084-2-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0081.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:190::14) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: aea92d03-2748-42f6-49e0-08d8ff360f63
X-MS-TrafficTypeDiagnostic: BYAPR03MB3736:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3736F6204F52ECD0EFC2B7F3BA4E9@BYAPR03MB3736.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2449;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: uy1/wGAHSdvLk8nXiHnE63VkSnjmVrq6f+eRIjxF9oeZFGQbjUW4xzbTm3A3caDf/wkCLSzd6k6oU9UnzNm4jRyp7FRpLnYXzlx1sUQClWPt52B5dQJQU7H0IeQvHhhchV0LfH8dCjsc5BFk+PlsV/Bw+2tj9Y2dI6UdXQIQPfZZUTMZm/eWPXvCd1FTP6G3aydOrbpfRpg/rW5FFgUajKRgtzzGBRm9hfbhGQPHIrofDnTsT4Yq89D+AmakgB/HhRD3FiQRFkWzH+ib8Vc6IPRQT6gyKXlGmiyH0u9kwf4VARUrAsrTlmzIbdflpOfJ6PilA6+gRTnqc2R+wvjT/6bFBRkV7x0Pqli8azQMpksQq0+XadCZYOVjSUU43nQjy02uufB/1GberEeLsWSxhCrOEVob/OFkXg7YAom4S8hnLDc4r+qi+nq/wahBmpzu638yamCEEh91p7hcGIBRn86a1luYz5TK8OfAdWn9FXNRJTCnqRe+66pzc7RH1LGv3LtfDbbAem4d6UpJ1ENaJhzzwDORHzdxBDdDa1HJxqvWywzrMGDEu7Q2NhIHqFlXmGD1sAN7Wai2JFbTcr6mFAJkazVywe1hhN8nsHxLwAJg7k4GbE3WiohyVzHZjdfJsW8ljWAt4lF+njoH2fYYvVPMv6zJPcNaY4t1xs3CyHfGMR8CFMNMaPZ4XuP5fdxp
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39860400002)(136003)(396003)(346002)(366004)(186003)(8936002)(26005)(31696002)(6486002)(16526019)(66556008)(6666004)(53546011)(2616005)(2906002)(16576012)(8676002)(31686004)(4326008)(478600001)(316002)(54906003)(5660300002)(66946007)(66476007)(86362001)(4744005)(38100700002)(36756003)(956004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?MlxTvlVeV9ZjQdyp/vQHMg3rsUPYAnNknRiKawE?=
X-MS-Exchange-CrossTenant-Network-Message-Id: aea92d03-2748-42f6-49e0-08d8ff360f63
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 11:11:32.8265
 (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: 3bckq3Ai3Xj9TT5ra/d4AGvuZJJ2xX4m0J892ghULjGh7Tw/xA43JNbVhN0rRNWwmE1j0l5ZF8mQHEJDC6kxuUGBEB3rvmee7iKSSi4kEMY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3736
X-OriginatorOrg: citrix.com

On 14/04/2021 12:04, Roger Pau Monne wrote:
> Split the logic to attempt to setup the LFENCE to be dispatch

"the LFENCE instruction", or drop "the".

> serializing on AMD into a helper, so it can be shared with Hygon.
>
> No functional change intended.
>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:16:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:16:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110515.210943 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdVg-0005uF-5Y; Wed, 14 Apr 2021 11:16:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110515.210943; Wed, 14 Apr 2021 11:16: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 1lWdVg-0005u8-1U; Wed, 14 Apr 2021 11:16:40 +0000
Received: by outflank-mailman (input) for mailman id 110515;
 Wed, 14 Apr 2021 11:16: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 1lWdVe-0005u2-VU
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:16: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 1lWdVd-00005W-UU; Wed, 14 Apr 2021 11:16:37 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWdVd-00024V-LZ; Wed, 14 Apr 2021 11:16: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=Rm62n9DiP9EhMnVewb6N71g2+kOXxGxLy3nrnbCI3Yg=; b=0BgOy+d/RJyxABYUqIpSziDHih
	KMO6zZRn7Ntq1idYqrjS7O5E1VJFFJ+QRzwjL9/7OTpdBfv2Thm06N1Rg1sc0Suz+OCmhLIVSwA8P
	odUKtXNHYpjrjM2IPaEHcC3ZvQAf7/Iq2+18fZc4B1sFzVuf1rUuLFeNTCIwditJLfZ4=;
Subject: Re: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is NULL
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <rahul.singh@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-3-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <3424d24f-b189-c125-7b84-96848bbdcfd7@xen.org>
Date: Wed, 14 Apr 2021 12:16:35 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210414091404.14215-3-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Luca,

On 14/04/2021 10:14, Luca Fancellu wrote:
> Among the common and arm codebase there are few cases where
> the hardware_domain variable is checked to see if the current
> domain is equal to the hardware_domain, change this cases to
> use is_hardware_domain() function instead. >
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> ---
> v4 changes:
> - removed unneeded check for domain NULL from is_hardware_domain
>    introduced in v3

After this change, this patch is only avoid to open-code 
is_hardware_domain(). Although, it adds an extra speculation barrier.

I am not against the change, however I think the commit message needs to 
updated to match what the patch is doing.

Can you propose a new commit message?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:17:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:17:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110519.210955 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdWM-000603-F6; Wed, 14 Apr 2021 11:17:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110519.210955; Wed, 14 Apr 2021 11: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 1lWdWM-0005zw-Bs; Wed, 14 Apr 2021 11:17:22 +0000
Received: by outflank-mailman (input) for mailman id 110519;
 Wed, 14 Apr 2021 11:17: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 1lWdWL-0005zm-Ee
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:17: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 1lWdWK-00006G-Ft; Wed, 14 Apr 2021 11:17:20 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWdWK-00025j-AC; Wed, 14 Apr 2021 11:17:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=D5c/8o/eZLfGAZLoFP9EC7oaRs5hZaKezvClkIul5a0=; b=rwgXCg1qOUEMMB9hFRk5wt1gaD
	Z+tk0wxhk2zZQ8OHsEWnZqZ7CcfVwSjE0pjAqP6yY8Dq0CFhT6vXcVLy3KcI6/+7JICoOV/zKDK/k
	zH+7kl6U29VfjU7SO+IEZfYn913PCEQjIvCFRWlFvh/fxq3UfGs9IqYbBA03kPQS8f0k=;
Subject: Re: [PATCH v4 3/4] xen/arm: Clarify how the domid is decided in
 create_domUs()
To: Luca Fancellu <luca.fancellu@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-4-luca.fancellu@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <658c2c00-1caa-38ce-9d10-751a8caf09da@xen.org>
Date: Wed, 14 Apr 2021 12:17:18 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210414091404.14215-4-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 14/04/2021 10:14, Luca Fancellu wrote:
> This patch adds a comment in create_domUs() right before
> domain_create() to explain the importance of the pre-increment
> operator on the variable max_init_domid, to ensure that the
> domid 0 is allocated only during start_xen() function by the
> create_dom0() and not on any other possible code path to the
> domain_create() function.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>

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

> ---
> Changes in v4:
> - Change to the commit title
> Changes in v3:
> - removed check introduced in v2.
> ---
>   xen/arch/arm/domain_build.c | 5 +++++
>   1 file changed, 5 insertions(+)
> 
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 359957dc1b..b1d7b9849f 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -2508,6 +2508,11 @@ void __init create_domUs(void)
>                                            GUEST_VPL011_SPI - 32 + 1);
>           }
>   
> +        /*
> +         * The variable max_init_domid is initialized with zero, so here it's
> +         * very important to use the pre-increment operator to call
> +         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
> +         */
>           d = domain_create(++max_init_domid, &d_cfg, false);
>           if ( IS_ERR(d) )
>               panic("Error creating domain %s\n", dt_node_name(node));
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:30:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:30:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110525.210967 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdid-0007MD-K6; Wed, 14 Apr 2021 11:30:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110525.210967; Wed, 14 Apr 2021 11:30:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdid-0007Lg-GJ; Wed, 14 Apr 2021 11:30:03 +0000
Received: by outflank-mailman (input) for mailman id 110525;
 Wed, 14 Apr 2021 11:30:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWdib-00077W-NS
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:30:01 +0000
Received: from EUR02-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe06::613])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9cf8ab71-310e-4d43-8fc4-fb8195fc2b57;
 Wed, 14 Apr 2021 11:29:59 +0000 (UTC)
Received: from DB9PR05CA0021.eurprd05.prod.outlook.com (2603:10a6:10:1da::26)
 by AM0PR08MB5298.eurprd08.prod.outlook.com (2603:10a6:208:188::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.18; Wed, 14 Apr
 2021 11:29:56 +0000
Received: from DB5EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:1da:cafe::ae) by DB9PR05CA0021.outlook.office365.com
 (2603:10a6:10:1da::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 14 Apr 2021 11:29:56 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT048.mail.protection.outlook.com (10.152.21.28) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 11:29:56 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Wed, 14 Apr 2021 11:29:56 +0000
Received: from f17e551cd0cc.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 59110E80-2119-4219-8800-224243954ECE.1; 
 Wed, 14 Apr 2021 11:29:46 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f17e551cd0cc.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 11:29:46 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR0801MB1629.eurprd08.prod.outlook.com (2603:10a6:800:4f::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.18; Wed, 14 Apr
 2021 11:29:42 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4020.022; Wed, 14 Apr 2021
 11:29:42 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO2P123CA0032.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::20) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.21 via Frontend Transport; Wed, 14 Apr 2021 11:29: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: 9cf8ab71-310e-4d43-8fc4-fb8195fc2b57
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R/VN/GoQKR6zPj5D4Kg4MdD4GzHVKmR7F6Rx58LTb2E=;
 b=rDE3QfXZp5wxgeNUvYUWbtrGVL60gcIvzcy9sO1Ovk2A53WvdUuREHvqyuUlMxqzs6TEQdr8pGpfWBOiE0FHK3d8dB0vSCpshWG6ouhK81k1e7ws0HGfr85zImvtXIQFT9ZaabLpGfzDOohklyd7cs9qNAFvZiC7dO5KRGf8+YI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 5eb48d41946bce8d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=doeqdN87xrQskHcboqecBQWRylIvzZxucjEqW21FnYu9ClSQ9DaWWm/a8XG43ccblzgcZxCvmQDf+k7VuAW1X9IViGULg3OktBDGWfJ+Fav2yUiLbZSNEhw0il0JzljO640uGFunBrGDTGSoPH51nxx1V2r72/XLDBk6LM6aIzYmTswU3Z/dYeStmamqqyc7RLK1BumKXHE2p+Y8O3y4Xy0ZpLoG6vrWOGH5WeUH1o5o2i5TRONR3YVpIQ8FqvJTImCTG8UgfoCaqv5jJXme+YSymS7ie5cQTTo6NTXSiLKxAr6xoVwe5Vlt24Mx3pmb5H1+p3TCywXEqSeg+mc7cA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R/VN/GoQKR6zPj5D4Kg4MdD4GzHVKmR7F6Rx58LTb2E=;
 b=T/nGOUcachSsHHcBUdywpuIM83v2tc1fjbg8SOZaF41dVUfDRXNNuJX1N7WE+GpL3iFHOW/scHFpvAeF9vxVURuIgdd2KOjIDyN89PHT24R3i6C0Qy82mUzBha5mL6zbcawmSmznmwwXszszHot/zaR7y7iBgW+sRZ3bqJW+LA7AcDMsP910B7jtH4rn4PF/anRV3NBHZ87X5tNJfWU+rND81TPH7BSf5rq7aJzpQIWry+COi6fEhhWhlNj7d4WuOucV1C5hY1cAcUMuxvNhsev8VeJ9lKwb7SZH87m6b9pb3Z43ZEjm0Cn8hetap7u9+rUo7T7k0gE5g+YBGr+C+g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R/VN/GoQKR6zPj5D4Kg4MdD4GzHVKmR7F6Rx58LTb2E=;
 b=rDE3QfXZp5wxgeNUvYUWbtrGVL60gcIvzcy9sO1Ovk2A53WvdUuREHvqyuUlMxqzs6TEQdr8pGpfWBOiE0FHK3d8dB0vSCpshWG6ouhK81k1e7ws0HGfr85zImvtXIQFT9ZaabLpGfzDOohklyd7cs9qNAFvZiC7dO5KRGf8+YI=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=us-ascii
Subject: Re: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is NULL
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <3424d24f-b189-c125-7b84-96848bbdcfd7@xen.org>
Date: Wed, 14 Apr 2021 12:29:34 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <rahul.singh@arm.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <04326BA4-6E73-44BA-AB19-8F2B99000D8B@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-3-luca.fancellu@arm.com>
 <3424d24f-b189-c125-7b84-96848bbdcfd7@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P123CA0032.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::20)
 To VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b919a276-dc0e-47c2-4cfd-08d8ff38a19d
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1629:|AM0PR08MB5298:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AM0PR08MB5298D0C6D19A3280D95B85E3E44E9@AM0PR08MB5298.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:1751;OLM:1751;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 5sji58McAD1kQQ6H9bzd9cH+4FysWQi4I/++ZxzsO8mEkJ6F4T0zo4VmPrF9sZjmxQTdWSTc7zYAPW/fS1Ca3dvSEe39KxXal+q9Momkv6jHWZ6okXgLBZEqzXhuH0t8BEopNyNAMsaXSZOuY0wKVK69imTSOoVO9E2HLyoPYSXKy2IDN04bZurExejpV+RStQOBr6kR+u+Gr0vCCpANnOFtkNqvxJtR/cHzCcrzSoeItdmoB7oYsEUOqQgdskbzRaHanmUM3hxjjE8vK37iR+qkfarHikvthI65dtig1uGkFxHOce3L3gCtFClzkogkvtf9DBinnDKvhQpE9mNfN0XRqiAGqr+2UcOjHk7fBvmqRcQC17Z0w23u/gU2Tby90ko9tt9oT3el54xQUPfCuRIaF7VxfQG3XYHKCtDM+1OO+gScCMYnLDvzdB49dvwJAElU/b1cTVW2etkCqI7Nhd/vjec98Z17zz6D6BZgxbAOZE4+Dj7xkFlGbMSKZ+EfImX2MWACTkUsH/vMZWGdMN56yWuCY8o/tfaflKPAWnM5ltd8+zG2KckYd68HuSv/1wuvQJoxSakwFvNQ3/YFuP9cXNaQcILGRUb3aRhDjpDNorje2Dm+kTUYPEXiLNJUFCjlaX2FkgtveBhQTOmaoiYjcDsSpk4SLppmhnLw5pkV2DS4ShnHof5mbB2v2rMm
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39860400002)(366004)(346002)(396003)(136003)(186003)(7696005)(956004)(54906003)(6666004)(6486002)(26005)(16526019)(478600001)(8936002)(53546011)(66946007)(33656002)(2616005)(83380400001)(44832011)(316002)(66556008)(38100700002)(6916009)(66476007)(38350700002)(2906002)(5660300002)(4326008)(8676002)(52116002)(36756003)(86362001)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 =?us-ascii?Q?hLW3PpypUx+VNC2MuFeTZnvLtot0jYMsKBGVlFJALQIoXSmIjJN7sQtGd6oN?=
 =?us-ascii?Q?JRTYH0s0jX/pa+Em3Yvc2E0xnkVKTKINiEehSzLogAA2X/BYEkN+Twmshich?=
 =?us-ascii?Q?trys8SKn+YChRdgakOh51xQ+cKq18VceNr0E8DgIvi7X6clQPC8o8Zr561Nb?=
 =?us-ascii?Q?dIcrP3wKl+OnVxqu3G453A0iH83ii0zKlqhaTOaBIq3kXOmscgSDImaWwyNf?=
 =?us-ascii?Q?41PDDwITGky9Ddp7ws/qlC+2s2hOnPOKs57hi/EcmaQPCzCKXtsITNU9jomD?=
 =?us-ascii?Q?t2b++26oFlUPmsRiB1/moSeOZmgAp7tf2CzmT3+jTE5nkbrnF++1aqm1Jf0K?=
 =?us-ascii?Q?0JQ6PkiFnAjhphmgKd8s9MG/bUWQzodkNtBOHT6pcL/4TO3tO1VCeB3DQh27?=
 =?us-ascii?Q?YQ9rIIYAiq0Tycl3KRQ9c0W5lZ7AkiLyiPIbnqMASfORWE5hM0Hp2VI+mPtX?=
 =?us-ascii?Q?bSZsVvdEPvxJHUllSqmqmihtCGlhGJY5FG4STjZ/gXMjN2BF2OOq205vL85J?=
 =?us-ascii?Q?ySH4OiUH2JddzGwdT9qNjk9EWElzFEd3ggEa6dzqhVr3nVN6GKIAXY4iFxbq?=
 =?us-ascii?Q?6oosAMb3oh1UmUeuQlUqkLvy9qZwTOAaxD1mknqhRK9uwRkIRmXQwF7dMxWH?=
 =?us-ascii?Q?rLicnAXkagXO+/TrxYQLKlqxXaEBIRmp9m+uri0NXad0L5PSdudLXbS0Swk4?=
 =?us-ascii?Q?r+rBaoz6TMvqfNfQO+tIzmLFpYfztBg7nRbDN+q0Aoto2JT2rdaX/z91eIuq?=
 =?us-ascii?Q?oZ2DMLhev9jzCj7vQMjXnTbRXJ3lmVZtjXt3lt6hYhCnyMjgQQFsOtuvQFRt?=
 =?us-ascii?Q?xb8dYmTP0B66RL8wv+CCe8jf32fA/1wYVfkJQpXIQ7ye+lYUgYbXeneQB2g+?=
 =?us-ascii?Q?HRUlpI2ekfDvbDlV+iq5tH/4ceUu9IY12Aesawvw5q/Urot1nyM3lG2W+j0J?=
 =?us-ascii?Q?otE7mlWPY8BDLzzZHJnoDHOWI4jBw/PP4xoGNz8XBCqnE4iZfmJmo8m/R+8r?=
 =?us-ascii?Q?4+M460KZ1qFxodMyyUMRHXLZ181p+0QO80CeLxnP4Nqu94+SonDHQ9+tALfM?=
 =?us-ascii?Q?fDSe7JXhdbiQXtwkmoZkmYak8I15nYmf7TxP8vt8GV19WVbqiSI2tAkt5+xx?=
 =?us-ascii?Q?PQT3gddHW4z68ktFjaivnFswmdiFplsq7ZdEQtZAfK4575RClxrVjsQj5COX?=
 =?us-ascii?Q?4bM0biMz7F5vUWevqKyrXr1n4qxcraZ7C06T9Dk+wgnbm+COJxf9w54dJzlP?=
 =?us-ascii?Q?KFLJpNJixrLQNJGgKM+ixoAhhBCaQkDPM4wKSZLe2/Y1K1IejZ7K4SSnDqrO?=
 =?us-ascii?Q?bnVyFcABHx+hqR7W/wu1ffXP?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1629
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT048.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6cc2bdcf-4473-412f-b0be-08d8ff3898fd
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SU8s2PXMS8tDqNXrWqZ3cmlJxfS/kI4Mq8otRuTFQ0jR6QQ5Cg8DIEAcwrrd0/zi6BJ+Z2H0/BHtzA16sH6tNwqiwR+Lj7A+yhYgjrJOiYz2wRMJl10F1TYhBWjpeljhQqs7XcxE/IvWnBjriN/JEGa4wjJg6/dCRDvdcMczvRTtwmconVE+FjUdQE7zrIkjFkLZQ/HDchal2GHnfpVurJQyjQxcTd6tdrlhl1l2x4i+gKuZahjyxXiOYRlqm8yByMkgjdvu2Qsx/LSISiMiOZfRjc14c3xpOvc7fJ9tNKErz9RUs76O8zGojiWgCZLuRJdx48PCuzc1k1gF33ePk56v4fjqMNU+a0WcHku3Nd1J+YVUkfCqHJfn0uhu/nuQ0OUnWfE/TUoaXaW13/WH5ubbrZspFul+INUxyi1qrxj1r8aZ4Nvd0JhlWwzQbUIidmbDctNwMAKnsp+1f2uQnuYHWIStKH+Lft0LE0EOwj+rD0DMi3VRJl+jejlAls7UHr5cRrmr0B8Drv21pXy6FbTAxl0hDDFR0NgNhAFPqm+yHgwhORyXSKxc01acueBbY8pRcF7o/zD7uL+nqx4znB+Lz2q9rIAoJXEor3pBmFN5olOXdtiv2/zILYICqC2L3iWgzXh1YldXcxTdhWbYp2Tk8FjQs0WyLAy7qNa0a2M=
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:(4636009)(39860400002)(376002)(346002)(136003)(396003)(36840700001)(46966006)(44832011)(33656002)(336012)(8676002)(82310400003)(53546011)(70206006)(2906002)(6666004)(81166007)(2616005)(5660300002)(186003)(8936002)(26005)(54906003)(6486002)(70586007)(6862004)(36860700001)(47076005)(356005)(36756003)(316002)(7696005)(4326008)(83380400001)(86362001)(16526019)(478600001)(956004)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 11:29:56.7552
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b919a276-dc0e-47c2-4cfd-08d8ff38a19d
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:
	DB5EUR03FT048.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5298



> On 14 Apr 2021, at 12:16, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Luca,
>=20
> On 14/04/2021 10:14, Luca Fancellu wrote:
>> Among the common and arm codebase there are few cases where
>> the hardware_domain variable is checked to see if the current
>> domain is equal to the hardware_domain, change this cases to
>> use is_hardware_domain() function instead. >
>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>> ---
>> v4 changes:
>> - removed unneeded check for domain NULL from is_hardware_domain
>>   introduced in v3
>=20
> After this change, this patch is only avoid to open-code is_hardware_doma=
in(). Although, it adds an extra speculation barrier.
>=20
> I am not against the change, however I think the commit message needs to =
updated to match what the patch is doing.
>=20
> Can you propose a new commit message?

Hi Julien,

Yes I agree, what about:

xen/arm: Reinforce use of is_hardware_domain

Among the common and arm codebase there are few cases where
the hardware_domain variable is checked to see if the current
domain is equal to the hardware_domain, change this cases to
use is_hardware_domain() function instead.
In the eventuality that hardware_domain is NULL, is_hardware_domain
will return false because an analysis of the common and arm codebase
shows that is_hardware_domain is called always with a non NULL=20
domain pointer.

Cheers,
Luca

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:41:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:41:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110532.210978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWdtn-0000Rk-RO; Wed, 14 Apr 2021 11:41:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110532.210978; Wed, 14 Apr 2021 11: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 1lWdtn-0000Rd-OQ; Wed, 14 Apr 2021 11:41:35 +0000
Received: by outflank-mailman (input) for mailman id 110532;
 Wed, 14 Apr 2021 11:41:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWdtn-0000RY-52
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:41:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 521518c2-1467-43ce-a3d2-c023d0a525e3;
 Wed, 14 Apr 2021 11:41:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 99E85AF0F;
 Wed, 14 Apr 2021 11:41: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: 521518c2-1467-43ce-a3d2-c023d0a525e3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618400492; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nfgsXC/Q0hZwjUUeeGOOHh5Hf9Po5/M+RrswZyhgIvI=;
	b=hXznFt6Vzfxw8YsDj+/z1xxr9mv3r7+iH9drYLBSnrgBpMvJEm7XjE5l0kGlmArrAlhoRn
	DncDPAdyFpuA9HS/4M3Of8ktpJyIqdbDbVvtZ5eyvgEz2mJ5DtC4M/UUZWdk7LVKt1Xkuc
	+AVJeXAyC7wR2O8/ksLqccN8QOycVUI=
Subject: Re: [PATCH v4 1/2] x86/vtx: add LBR_SELECT to the list of LBR MSRs
To: Igor Druzhinin <igor.druzhinin@citrix.com>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, wl@xen.org,
 jun.nakajima@intel.com, kevin.tian@intel.com, xen-devel@lists.xenproject.org
References: <1618375222-9283-1-git-send-email-igor.druzhinin@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <871c259b-487e-4c67-e648-b1aefef55df3@suse.com>
Date: Wed, 14 Apr 2021 13:41:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <1618375222-9283-1-git-send-email-igor.druzhinin@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 14.04.2021 06:40, Igor Druzhinin wrote:
> --- a/xen/arch/x86/hvm/vmx/vmx.c
> +++ b/xen/arch/x86/hvm/vmx/vmx.c
> @@ -2915,14 +2915,16 @@ static const struct lbr_info {
>  }, nh_lbr[] = {
>      { MSR_IA32_LASTINTFROMIP,       1 },
>      { MSR_IA32_LASTINTTOIP,         1 },
> -    { MSR_C2_LASTBRANCH_TOS,        1 },
> +    { MSR_NHL_LBR_SELECT,           1 },
> +    { MSR_NHL_LASTBRANCH_TOS,       1 },
>      { MSR_P4_LASTBRANCH_0_FROM_LIP, NUM_MSR_P4_LASTBRANCH_FROM_TO },
>      { MSR_P4_LASTBRANCH_0_TO_LIP,   NUM_MSR_P4_LASTBRANCH_FROM_TO },
>      { 0, 0 }
>  }, sk_lbr[] = {
>      { MSR_IA32_LASTINTFROMIP,       1 },
>      { MSR_IA32_LASTINTTOIP,         1 },
> -    { MSR_SKL_LASTBRANCH_TOS,       1 },
> +    { MSR_NHL_LBR_SELECT,           1 },
> +    { MSR_NHL_LASTBRANCH_TOS,       1 },
>      { MSR_SKL_LASTBRANCH_0_FROM_IP, NUM_MSR_SKL_LASTBRANCH },
>      { MSR_SKL_LASTBRANCH_0_TO_IP,   NUM_MSR_SKL_LASTBRANCH },
>      { MSR_SKL_LASTBRANCH_0_INFO,    NUM_MSR_SKL_LASTBRANCH },
> @@ -2937,6 +2939,7 @@ static const struct lbr_info {
>  }, gm_lbr[] = {
>      { MSR_IA32_LASTINTFROMIP,       1 },
>      { MSR_IA32_LASTINTTOIP,         1 },
> +    { MSR_GM_LBR_SELECT,            1 },

What about Xeon Phi, Silvermont, and Airmont?

> --- a/xen/include/asm-x86/msr-index.h
> +++ b/xen/include/asm-x86/msr-index.h
> @@ -606,14 +606,18 @@
>  #define NUM_MSR_C2_LASTBRANCH_FROM_TO	4
>  #define NUM_MSR_ATOM_LASTBRANCH_FROM_TO	8
>  
> +/* Nehalem (and newer) last-branch recording */
> +#define MSR_NHL_LBR_SELECT		0x000001c8
> +#define MSR_NHL_LASTBRANCH_TOS		0x000001c9
> +
>  /* Skylake (and newer) last-branch recording */
> -#define MSR_SKL_LASTBRANCH_TOS		0x000001c9
>  #define MSR_SKL_LASTBRANCH_0_FROM_IP	0x00000680
>  #define MSR_SKL_LASTBRANCH_0_TO_IP	0x000006c0
>  #define MSR_SKL_LASTBRANCH_0_INFO	0x00000dc0
>  #define NUM_MSR_SKL_LASTBRANCH		32
>  
>  /* Goldmont last-branch recording */
> +#define MSR_GM_LBR_SELECT		0x000001c8
>  #define MSR_GM_LASTBRANCH_TOS		0x000001c9

Wouldn't it make sense to also re-use the NHL constants, like you
do for Skylake?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 11:58:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 11:58:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110540.210991 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWeAU-0001fL-9G; Wed, 14 Apr 2021 11:58:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110540.210991; Wed, 14 Apr 2021 11:58: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 1lWeAU-0001fE-6P; Wed, 14 Apr 2021 11:58:50 +0000
Received: by outflank-mailman (input) for mailman id 110540;
 Wed, 14 Apr 2021 11:58:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eQnP=JL=intel.com=chao.gao@srs-us1.protection.inumbo.net>)
 id 1lWeAT-0001f9-7F
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 11:58:49 +0000
Received: from mga05.intel.com (unknown [192.55.52.43])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f8019497-9c36-491b-b146-2eb922696768;
 Wed, 14 Apr 2021 11:58:46 +0000 (UTC)
Received: from orsmga008.jf.intel.com ([10.7.209.65])
 by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 14 Apr 2021 04:58:41 -0700
Received: from gao-cwp.sh.intel.com (HELO gao-cwp) ([10.239.159.149])
 by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 14 Apr 2021 04:58: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: f8019497-9c36-491b-b146-2eb922696768
IronPort-SDR: r0+/vT+D/+aLk1mUQ9DqFub21BRr7h28/Ebrrx5awxfsIjMSxyUD+qzoGyIRvEOF5+mK38Putk
 OMsRhYkvTSIQ==
X-IronPort-AV: E=McAfee;i="6200,9189,9953"; a="279934442"
X-IronPort-AV: E=Sophos;i="5.82,222,1613462400"; 
   d="scan'208";a="279934442"
IronPort-SDR: B38S8vVuqKzwYdq23hXPr8Sm0GFo+06Lx9MbaHDNBCb0zeb9hN++yIxTBZgCk3zpSr0i6vHTFq
 qSAMEHX5ekDA==
X-IronPort-AV: E=Sophos;i="5.82,222,1613462400"; 
   d="scan'208";a="424708734"
Date: Wed, 14 Apr 2021 20:02:49 +0800
From: Chao Gao <chao.gao@intel.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [RFC PATCH] VT-d: Don't assume register-based invalidation is
 always supported
Message-ID: <20210414120248.GA29028@gao-cwp>
References: <20210414005526.36760-1-chao.gao@intel.com>
 <568f7b59-57e0-7daf-c27d-b771869209c4@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <568f7b59-57e0-7daf-c27d-b771869209c4@suse.com>
User-Agent: Mutt/1.9.4 (2018-02-28)

On Wed, Apr 14, 2021 at 12:07:02PM +0200, Jan Beulich wrote:
>On 14.04.2021 02:55, Chao Gao wrote:
>> According to Intel VT-d SPEC rev3.3 Section 6.5, Register-based Invalidation
>> isn't supported by Intel VT-d version 6 and beyond.
>> 
>> This hardware change impacts following two scenarios: admin can disable
>> queued invalidation via 'qinval' cmdline and use register-based interface;
>> VT-d switches to register-based invalidation when queued invalidation needs
>> to be disabled, for example, during disabling x2apic or during system
>> suspension.
>> 
>> To deal with this hardware change, if register-based invalidation isn't
>> supported, queued invalidation cannot be disabled through Xen cmdline; and
>> if queued invalidation has to be disabled temporarily in some scenarios,
>> VT-d won't switch to register-based interface but use some dummy functions
>> to catch errors in case there is any invalidation request issued when queued
>> invalidation is disabled.
>> 
>> Signed-off-by: Chao Gao <chao.gao@intel.com>
>> ---
>> I only tested Xen boot with qinval/no-qinval. I also want to do system
>> suspension and resumption to see if any unexpected error. But I don't
>> know how to trigger them. Any recommendation?
>
>Iirc, if your distro doesn't support a proper interface for this, it's
>as simple as "echo mem >/sys/power/state".

Thanks. I will give it a try. And all your comments make a lot of sense.
Will fix all of them in the next version.

Chao


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 12:24:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 12:24:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110559.211009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWeZD-0004Vc-OK; Wed, 14 Apr 2021 12:24:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110559.211009; Wed, 14 Apr 2021 12:24:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWeZD-0004VV-Ky; Wed, 14 Apr 2021 12:24:23 +0000
Received: by outflank-mailman (input) for mailman id 110559;
 Wed, 14 Apr 2021 12:24:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWeZC-0004VQ-8T
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 12:24:22 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0a4ba0ce-54a5-4304-846f-fe6d4f4fb207;
 Wed, 14 Apr 2021 12:24:21 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 78276AFC1;
 Wed, 14 Apr 2021 12:24: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: 0a4ba0ce-54a5-4304-846f-fe6d4f4fb207
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618403060; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=+fJvyFXVddqOT3O88Gc5kGj2yAEhp5+dwg70m8mdMkw=;
	b=D1QodvSfVnvsCpQzKYQTrenIVYFx23ovaRxeucJd+p/RUwqSIH4jTbXQLFMW8l51De0Uwd
	vrBpdAZxlL6Y+CJf0XwLuMa3DbxD936mz59uHtwZDBiXkJPdnB6OUpCUmikHIhAvb1Ybu9
	ESTGCVEt57uNrLTP0lGaUvJzlyCxoos=
Subject: Re: [PATCH v4 2/2] x86/intel: insert Ice Lake-SP and Ice Lake-D model
 numbers
To: Igor Druzhinin <igor.druzhinin@citrix.com>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, wl@xen.org,
 jun.nakajima@intel.com, kevin.tian@intel.com, xen-devel@lists.xenproject.org
References: <1618375222-9283-1-git-send-email-igor.druzhinin@citrix.com>
 <1618375222-9283-2-git-send-email-igor.druzhinin@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d29db3ab-3e49-41cb-8380-a025d9ba4127@suse.com>
Date: Wed, 14 Apr 2021 14:24:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <1618375222-9283-2-git-send-email-igor.druzhinin@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 14.04.2021 06:40, Igor Druzhinin wrote:
> LBR, C-state MSRs should correspond to Ice Lake desktop according to
> SDM rev. 74 for both models.
> 
> Ice Lake-SP is known to expose IF_PSCHANGE_MC_NO in IA32_ARCH_CAPABILITIES MSR
> (as advisory tells and Whitley SDP confirms) which means the erratum is fixed
> in hardware for that model and therefore it shouldn't be present in
> has_if_pschange_mc list. Provisionally assume the same to be the case
> for Ice Lake-D while advisory is not yet updated.
> 
> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 12:28:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 12:28:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110563.211020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWeco-0004jb-83; Wed, 14 Apr 2021 12:28:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110563.211020; Wed, 14 Apr 2021 12:28: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 1lWeco-0004jU-53; Wed, 14 Apr 2021 12:28:06 +0000
Received: by outflank-mailman (input) for mailman id 110563;
 Wed, 14 Apr 2021 12:28:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWecn-0004jP-CN
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 12:28:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7268aa32-c543-4606-b8dc-18bb43fb3c6f;
 Wed, 14 Apr 2021 12:28:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E3479AFC8;
 Wed, 14 Apr 2021 12:28:03 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7268aa32-c543-4606-b8dc-18bb43fb3c6f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618403284; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=rL7wLMhNgh7IWoJn6L3M5DMMBb1G/b4OnanfaujhRkc=;
	b=NZYz0gybOhpxwiji3jVm2RtAcK8KUDHPR8uPlDpt4H24pv0Vvpe1f08SnYJ9aqcgOJ0nLE
	olFJ11kBmt1M23qJfPHSwZ3u1BgpbZv/p+KrN86WtJzIDj/HwugvrbIBKMjsTk2Vog8el0
	LNU/N6fKkkatMavFc+Dnse0NL2039ts=
Subject: Re: [PATCH] x86/vPMU: Extend vPMU support to version 5
To: Igor Druzhinin <igor.druzhinin@citrix.com>
Cc: jun.nakajima@intel.com, kevin.tian@intel.com, andrew.cooper3@citrix.com,
 roger.pau@citrix.com, wl@xen.org, xen-devel@lists.xenproject.org
References: <1618334701-8263-1-git-send-email-igor.druzhinin@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <01a59c84-c9ed-f9ca-1316-c9fc36ecde30@suse.com>
Date: Wed, 14 Apr 2021 14:28:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <1618334701-8263-1-git-send-email-igor.druzhinin@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 13.04.2021 19:25, Igor Druzhinin wrote:
> Version 5 is backwards compatible with version 3. This allows to enable
> vPMU on Ice Lake CPUs.
> 
> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 12:33:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 12:33:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110569.211032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWeiH-0005bl-Tn; Wed, 14 Apr 2021 12:33:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110569.211032; Wed, 14 Apr 2021 12:33: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 1lWeiH-0005be-QZ; Wed, 14 Apr 2021 12:33:45 +0000
Received: by outflank-mailman (input) for mailman id 110569;
 Wed, 14 Apr 2021 12:33:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWeiG-0005bZ-84
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 12:33:44 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id dc95bdf4-7117-4269-87d6-1544c5267d6c;
 Wed, 14 Apr 2021 12:33: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: dc95bdf4-7117-4269-87d6-1544c5267d6c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618403623;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=x/4uq8sCs71gnMpNhFE5GxSJeMIPrFbtZonWsS3o9IA=;
  b=CPn2JZGiKS96+vBYPpK6zSQtU1JVl7E4zFSLKUIIyKVOmQu3hZEPh5hu
   87KAbhuenHbC1PTp10v5HUxEVxK56gPYHgg+IXw9sf3hhd/nJX+m1J4fM
   MnMIqkFqtztDvEPlUqtdv+tSpnNUneNKYhB27jdlIp3EozMxNtmZabGzZ
   E=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Xf/smOsSuhyCyP71FZpm4HUpVU73+cGbDIZNaJ7Ol9XakCMREYUSMzy5o57V7DaKuWkWvkdmOO
 c96CaFfwoxgHmKgPra/GmROvV5Bb5U4aNYGKF8qCsZIdWWqrLxW5RTTRVkGbfVJdO6KDwfjVFq
 jDFNm+A4R40Wpc+ZP5CURNi0sRHApMQAiRfTL+tnXBmYRHooTOIEXz2hG5HSPY+uA2p9rN9oEr
 dN67lGREJI4nRYSTcaG1r2aEwYVDjFSNnIglg3UyflfqNuJiwhcUGZsAcyMwIT9wB2smBIb6RJ
 r1I=
X-SBRS: 5.2
X-MesageID: 41406973
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:FZqxr6OaWiLD08BcT2zw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsa9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrwHIMxbVstRQ3a
 IIScVDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RZQZCtBApsQijtRIACdD0FwWU1iDZ02CJ
 KT6qN81kWdUF4Qadm2AWRAYvPKoMfFmImjTRkNARMm7wfmt0LV1JfRFR+E0hACFw5e2LtKyx
 m5ryXVxIWG98u6xBjVynPJ4/1t9ufJ59NfCKW3+7AoAxr2jALAXvUHZ5Sju3QPrPir+BIWlr
 D30m0dFuBSz1+UQW2vuxvq3GDboUUTwlvv00WRj3emgeGRfkNCN+N7iYhUcgTU5iMb1bkWus
 I7vBPti7NtARzNhyj77dTTPisa8nacmnY+jfUVy0VWTIp2Us4gkaUk4EhXHJ0cdRiKjrwPLe
 8GNrC/2N9ra1+AK1jWsm5zqebcJUgbL1OtR0gPvdGtyD5GnHx15Ftw/r1vol4wsL06UJVK/O
 LCL+BBk6xPVNYfaeZHCP4GWtbfMB2DfTv8dEapZXj3HqAOPHzA77bx/bUO/emvPLgF1oE7lp
 jtWE5R3FRCNX7GOImr5tlm4xrNSGKyUXDG0cdF/aV0vbX6Wf7CLTCDYEpGqbrin9wvRungH9
 qjMpNfBPHuaUH0H5xS4gH4U55ObVEDTcwuvMohUV7mmLOKFqTa8sjgNNrDLrvkFjgpHknlBG
 EYYTT1LMJcqm+xXHvVhwXQRmPNdkTz8YkYKtmew8EjjKw2cqFcuAkcjlq0ouuRLydZj6AwdE
 xiZJPr+5nL4VWezCLt1SFEKxBdBkFa7PHLSHVRvzIHNEvybPIms9WbcmZC4WufKnZEPoTrOT
 8ag24y1bO8LpSWyyxnIcmgKHimg3wao2/PaJsAhKuZ54PAdokjBpgrHIx9fD+7ViBdqEJPki
 NueQUETkjQGnfFkqO+lqEZA+nZap1bmwekIcldrFrFrkWCrcQTRn8WNgTeE/K/sEILfX55l1
 dx+6gQjP6rgjC0M1Yyh+w+LRlxcmiNOalHCw6EfY1QvbjudGhLPCG3rA3fryt2Vnvh9k0UiG
 CkCSGPY/nEDmBQvW1i3r/w/El5cXiceExMeml32LcNZ1juizJW66umd6Cz22yeZh85zuYRPC
 rsTBESLgltrurHniK9qXKnLzEL158uNuvSAPAfaLnVwGqqM5DNv7oBBeVo8JFsM83OvucHXf
 mEQRKcKCr1BooSqlWoj0dgHBMxhGgvkPvu1hGg0XOx22QnB+HOZHthXLMWLrinniHZbsfN9K
 88q907veG9aDqsLvGHzLzadD5FJFf4p3WsQ+QhtJBTuuYTudJIbu7meAqN8EsC+hM0aPrQvg
 c5Zo9Q5bjaII9hf8AIYUtijxEUveXKCHFuixD8B+81QEokgHDaNe6Y+ragk8taPmSx4C/LfW
 SF+yJT//35TzKO+L4TBaU3O3lXYiEHmQJf1dLHU43bEwOxce5fuHK8L3+mabdYIZL1VIk4n1
 Jf49uSmfWQeDe98AfMvSFjKqYL12q8W8u9DEatHuFPmubKdWiks++P4MSpii3wRib+Q0MEhZ
 ddfUhVV/99sFAZ/cUK+xn3bLf2rEIjm0Zf5j8itmeF4PnZ3E7rWWdcMQPYhZ1KWyJ0KXbgt7
 WczdSl
X-IronPort-AV: E=Sophos;i="5.82,222,1613451600"; 
   d="scan'208";a="41406973"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cnJaHhP4LY9uTrkpPFya166EsEVgJ0RbRtfC51rfUQTe4KcwrUlF5XnnjKUdblRaM4UqqvCzscwc3h0EgePEuZvrpyr0IL5U9H2/ipmXvbuq1BGTAO6FtbO94bY79QQ7tlXHVIIxDL5LLGW4R4QzTTNT6nE7b/Rb+B56WcQ/MLtPRpL8SxxDqAGzzKcJgEL8PfWh2bEEAnHwKtsR3zoKpwDefil6zGOU08pNcJl4q6ldGz503/EMBSBIohUgBQBsK8+C6KHondlpcq40A5fa2zKiIStwRzTmXOIzia50FmzB3AVjPwCOUMUS9VyxKvyQaiANPM8XNYuAIJL6vCZtCA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YdrWTVRDpWGQ+ZmkwKViYjmCXaX2VRGaKGVPHDmvVBM=;
 b=jf62b4aKKYTPItqSHgbAaRiuBPe1d0OVB37mrFSIeu/4pFjwBQQggfxcrnHeJ3Ht9yOmtmyrXosDezSnSCJ92oRI2m6eduVEYbUafnfy4nGwKG9rPPwKjerXq0FeYuI4CohTeeAknDIFSrOVYoXxqqaeOtXXI+3nqgXxeLsObOaTajR/bqcxwNN8VHhRtE/cm9owpmrqLu1G4TYqodRwJ2A0lSAN50I0rNAPHtH9EDZaTLQCo1KwBgyLT5MSjgOUrAHb0nJdKJc+QZJsaUKeCZabkwXeROdh35idjvebmD+wDsnBkfmSgjM0vgSRb6O0qV9COljqB397EjeS8DzxyQ==
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=YdrWTVRDpWGQ+ZmkwKViYjmCXaX2VRGaKGVPHDmvVBM=;
 b=dPlUHV/iLMqhWPVRomocrnnMYA67SULKdnDorVnclfdnVvFUrxktkI4L4pbLRA4UYQoW7MbazD0lFlTWERGNWUeX9Gowcb8PmVgNvV0adH5dVVCT/ragr1rIKg3l2Tv7W7ZRiemWBltEqYa6mHliFt0TtKKFSGoaMSGrDxWuY+s=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>, Ian Jackson
	<iwj@xenproject.org>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
Message-ID: <97d443b0-f5c2-0183-74c1-ab16d3cf1e7d@citrix.com>
Date: Wed, 14 Apr 2021 13:33:33 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210414110433.83084-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0402.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:189::11) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d7df8db4-fe1b-4b6f-c1ed-08d8ff418863
X-MS-TrafficTypeDiagnostic: BYAPR03MB3496:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3496DA202D2641B69815E1B6BA4E9@BYAPR03MB3496.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: zVvTxO5HmoHdO2IC4ukwitHgE64OaBN59pieuY7h62/cTq4hKAfVpYzmj+9O8u1Bei4WXUIMwOLj/iZCTqHCMNR4EdAGFfti9jK7nefMOzL1v/T86C9poIWaNZ5Bbh2BphUJ1fHS/jiJyOgPgpPmRvZrbL6eOt6kRD2syMPZEElgXiL/29XtmZxMwInXvRRd+UT1E4TkkD/33+u0GiLa8JYpXmULHtdPX9TnVnLcUMiFWQdnNIb14dv6wHCbTSo/AdajnQhIEFdgnfKHKtFmDnHvpIZeSau5Rjs7jt31O0RI7qk3mBm3Ze7v0ODboiRLDmprerexzkHhvVUPKRWe+oa+mlQkc0XO9nDvL49Co8Od74yjSOw8pxXh9M9AW5oAKonTuAnvSXGuY1eS3VcHYzgbR6LUsmfA3C70PJt2V2dJsqSJNi0bxrJlscLLvHX8Vr6M8B5PyBYoyp84xzCnZyzEmqgqTcbmH5owLzMMYVnGnVN2NEbGI4DG0S9Z07+qGJhSHqZkejFrd+YeNL7wsTg5jKsJR1ODV5E5HiwM4bPultnjK5LKVUg6bkUqp+bLS7AUCXIb2wACAkMnls+yMAlhREdG7jo4jpE5i/syiF4EJQoOo82/GSwi0NgvjWOskOYSsoiyX8lK6NZZQaqmOuhf/zgYDfx2okArHSv0vu4fK+4vT23SfOYkuOk+DUmm
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(396003)(346002)(39850400004)(366004)(83380400001)(86362001)(31686004)(66946007)(956004)(36756003)(66476007)(38100700002)(31696002)(8936002)(2616005)(53546011)(16526019)(186003)(66556008)(316002)(6486002)(4326008)(16576012)(5660300002)(6666004)(26005)(54906003)(2906002)(478600001)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?mB/URKzAUUPN7e0kmc4ncXxthebshtToaWOrDtw?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d7df8db4-fe1b-4b6f-c1ed-08d8ff418863
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 12:33:40.0440
 (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: 2hGvfskBFsozqGiZeLKQ6WNkF/Cw4V7ETocr1o4EF1crVRorvyUJsTA0NNBTYdlbyGDX1aT8r+7WwtO9Ui6y+Wd136d86UYU6XNyuJxeWyE=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3496
X-OriginatorOrg: citrix.com

On 14/04/2021 12:04, Roger Pau Monne wrote:
> Milan AMD CPUs

I'd suggest "AMD Milan (Zen3) CPUs" for people who don't know the AMD
codenames inside/out.

>  have an LFENCE Always Serializing CPUID bit in leaf
> 80000021.eax.

Its probably worth noting that this is because of SEV-SNP, which is a
headline feature in Milan.

There must not be anything the VMM can do to impact the confidentiality
of an SEV-SNP VM, and breaking Spectre protections is definitely a
problem.=C2=A0 In a post-Spectre world, no system should be running without
LFENCE set to dispatch serialising.

>  Previous AMD versions used to have a user settable bit
> in DE_CFG MSR to select whether LFENCE was dispatch serializing, which
> Xen always attempts to set.
>
> In order to support this new CPUID bit move the LFENCE_DISPATCH
> synthetic CPUID bit to map the hardware bit (leaving a hole in the
> synthetic range) and either rely on the bit already being set by the
> native CPUID output, or attempt to fake it in Xen by modifying the
> DE_CFG MSR. This requires adding one more entry to the featureset to
> support leaf 80000021.eax.
>
> The bit is exposed to guests by default, as a way to signal that
> LFENCE is always serializing, either because it's mandated by
> hardware, or because Xen has performed the necessary arrangements.
> Note that Xen doesn't allow guests to change the DE_CFG value, so once
> set by Xen LFENCE will always be serializing.
>
> Note that the access to DE_CFG by guests is left as-is: reads will
> unconditionally return LFENCE_SERIALISE bit set, while writes are
> silently dropped. The MSR is not present on AMD Milan hardware

Not all MSRs are listed in the PPR.

This MSR does exist, and is my understanding that the bit still exists,
and is read-as-1/write-discard, so the past 3 years of software will
still conclude "lfence safe" when inspecting the MSR.

One of the speculation whitepapers says that this bit is going to remain
fixed in the future to simplify software needing to interact with it.

> , but
> I'm not sure there's any value in adding logic in Xen to also hide it
> from guests when running on such hardware.
>
> Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---
>  tools/misc/xen-cpuid.c                      |  6 ++++

Need to patch the translation table in libxl_cpuid.c too.=C2=A0 See c/s
23ccf530431561 for a reference.

>  xen/arch/x86/cpu/amd.c                      |  7 ++++
>  xen/arch/x86/cpu/common.c                   |  3 ++
>  xen/include/asm-x86/cpufeatures.h           |  2 +-
>  xen/include/public/arch-x86/cpufeatureset.h |  3 ++
>  xen/include/xen/lib/x86/cpuid.h             | 37 ++++++++++++++++++++-
>  6 files changed, 56 insertions(+), 2 deletions(-)
>
> diff --git a/tools/misc/xen-cpuid.c b/tools/misc/xen-cpuid.c
> index 2d04162d8d8..38406baadad 100644
> --- a/tools/misc/xen-cpuid.c
> +++ b/tools/misc/xen-cpuid.c
> @@ -178,6 +178,11 @@ static const char *const str_7a1[32] =3D
>      [ 4] =3D "avx-vnni",      [ 5] =3D "avx512-bf16",
>  };
> =20
> +static const char *const str_e21a[32] =3D
> +{
> +    [ 2] =3D "lfence-always-serializing",

This is a bit of a mouthful.=C2=A0 One problem is the fact that "serialisin=
g"
is an ambiguous term, because neither Intel nor AMD formally specify
what it means in the architecture.

There is a description of what "architecturally serialising" does, which
does occasionally move over time, and the name of this CPUID bit in the
PPR confusing at best, because it very much isn't "architecturally
serialising", and the term "dispatch serialising" isn't actually defined
anywhere.

Intel have now started referring to LFENCE as a "speculative execution
barrier", but this still doesn't have a precise definition.

I'm afraid I don't have a useful suggestion for something short and
concise, which also conveys the precise meaning.

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 12:45:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 12:45:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110575.211044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWetY-0006kv-WB; Wed, 14 Apr 2021 12:45:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110575.211044; Wed, 14 Apr 2021 12:45: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 1lWetY-0006ko-TF; Wed, 14 Apr 2021 12:45:24 +0000
Received: by outflank-mailman (input) for mailman id 110575;
 Wed, 14 Apr 2021 12:45:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWetX-0006ki-Lb
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 12:45:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7576103b-338c-4531-a21e-294f2563fe37;
 Wed, 14 Apr 2021 12:45:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0599FB024;
 Wed, 14 Apr 2021 12:45: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: 7576103b-338c-4531-a21e-294f2563fe37
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618404322; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mB7Hcpj8aW4pjU974L1agqDayu6bV6QLOWLnfSx1KnI=;
	b=NHOdQP5auUdFsXlCF7mJzih+9nnb2HPdhLCd8NkS0CVUoUF0F79Vd5WMk2DxD7MiMaNtOj
	LG+4KUrd2kkeiAvCzatMm+W2/Rz4alRhqv1VRzSz7rDXhKRkBOakioRz4IBx63YYL4Tjwu
	3PtrU9Nma03UWAhpJhqaT2TsGF7FYZc=
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Roger Pau Monne <roger.pau@citrix.com>
Cc: Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>,
 xen-devel@lists.xenproject.org
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
 <97d443b0-f5c2-0183-74c1-ab16d3cf1e7d@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <63738788-c7ed-13f7-acaa-c1ad102442a3@suse.com>
Date: Wed, 14 Apr 2021 14:45:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <97d443b0-f5c2-0183-74c1-ab16d3cf1e7d@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 14.04.2021 14:33, Andrew Cooper wrote:
> On 14/04/2021 12:04, Roger Pau Monne wrote:
>> --- a/tools/misc/xen-cpuid.c
>> +++ b/tools/misc/xen-cpuid.c
>> @@ -178,6 +178,11 @@ static const char *const str_7a1[32] =
>>      [ 4] = "avx-vnni",      [ 5] = "avx512-bf16",
>>  };
>>  
>> +static const char *const str_e21a[32] =
>> +{
>> +    [ 2] = "lfence-always-serializing",
> 
> This is a bit of a mouthful.  One problem is the fact that "serialising"
> is an ambiguous term, because neither Intel nor AMD formally specify
> what it means in the architecture.
> 
> There is a description of what "architecturally serialising" does, which
> does occasionally move over time, and the name of this CPUID bit in the
> PPR confusing at best, because it very much isn't "architecturally
> serialising", and the term "dispatch serialising" isn't actually defined
> anywhere.
> 
> Intel have now started referring to LFENCE as a "speculative execution
> barrier", but this still doesn't have a precise definition.
> 
> I'm afraid I don't have a useful suggestion for something short and
> concise, which also conveys the precise meaning.

How about "lfence+" or some such?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 12:49:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 12:49:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110581.211060 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWexI-0006uk-HO; Wed, 14 Apr 2021 12:49:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110581.211060; Wed, 14 Apr 2021 12: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 1lWexI-0006ud-EF; Wed, 14 Apr 2021 12:49:16 +0000
Received: by outflank-mailman (input) for mailman id 110581;
 Wed, 14 Apr 2021 12:49:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWexG-0006uF-MN
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 12:49:14 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5cad62ab-44b9-4d4a-a51f-d0e337609d4c;
 Wed, 14 Apr 2021 12:49: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: 5cad62ab-44b9-4d4a-a51f-d0e337609d4c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618404553;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=nD6m/a5puRLvonq8D8OwtcJStQyAjFf7jDmhlo6MCZc=;
  b=RaD/Fh/1UXmERIgeVFT5rr6ZsHjhQnK76y4+m4tnGGRs7tRKWaxCiqcV
   qncOOzuyhwit3p1W/+dOnsXqRBlP/uyD2IGSOOOZ5Gb4+ZCaQIuMEldHu
   85BM8Wf/KwvVB7lOKSZaqQdLiVjBicX6iPP0dLQemRRn2OCpiRt2WMDJ5
   Y=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: gjYc6yjXK7NpMaaq61jU0/UcZ4nb+215+gM6WqeeJHL+JA+l4GTqAHspiBuOQzuae2RgYUBIsj
 wPkoMbc+wRjLubpIznMlbgeLMtzs3e6DYzRcdvp1vMEyeGnJhe2gUkslF7iWwJwhys4Wt2H1Dx
 tHZOuKxKBa6TE0HgjaLvauzVcf9R13HVwd4vEo2h0ugxk7wxQlJcM+Bj29bR7xAmD+0qKJ3AS7
 gnDxxCJNzKEiRIDLwsGYh5R1HP69I/NiIKSmQZLBaLKsKhLJ8tlrc3p6BIqgEtteTdiXOiMyVz
 7zc=
X-SBRS: 5.2
X-MesageID: 41952102
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:drXaqqEasEuJ7VLxpLqFvZXXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7MBbh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1Tbak/D38Zn/+
 Nbf6B6YeeAbmRSpczx7BCkV/Mpx9ea+K6l7N2uv0tFZysCUdAZ0y5SDAGHHkpqACxPApQkHJ
 SRj/A31AaIU3IRc8i9Gz05RODFvdLGj9bLZhQBCh4h5mC1/HGVwZT9FAWV2QpbbiNXzd4ZgC
 v4uiHw+6nLiYDG9jbyzGnWhq4m/ufJ6twGP8CUj9hQFzOEsHfYWK1AQLuEhTYvvaWUxW1Cqr
 LxijMBG+g21H/LZGGypnLWqkzd+RIj8WXrx1PdoVaLm72HeBsAB8BMhZ1Uf3LigiJM0L4Tsc
 I7uxP/i7NtARzNhyj77dTTPisa6Hacm2YokuIYkhVkIPAjQYJRtoAW8Qd0F5oNDUvBmf0aOd
 RuF83V6bJqd0qbZRnizxNS6eGrN05DZyuucwwjocqT6j5MgTRQ8CIjrvA3rzMlztYQWpNE7+
 PLPuBDj7dVVPIbaqp7GaMoXda3Inale2OJDEuiZXDcUI0XMXPErJD6pJ8v4vuxRZAOxJwu3L
 zcTVJjs3IocU6GM7zI4LR7tjT2BEmtVzXkzc9To7JjvKfnebbtOSqfDHcjjtWnuPdaJsHAQf
 68NNZ3DpbYXC3TMLcM+ze7d4hZKHEYXsFQkM08QUiyrsXCLZCvuffcdPrVObrxATcpUm7yGR
 I4LWDODfQFynrudm7zgRDXVX+oUFf454hMHK/T+PVWyIVlDPwWjiElzXCCou2bIzxLtaI7OG
 FkJqn8r6+9rW6quWLB72BjPAtBHl9YiY+QCU9ilEsvCQfZYLwDs9KQdSR5x32cPCJySMvQDU
 pYvFR4+aW+KpSK3iA8A9e7MmaX5kFj/U6iftM5oOmu9M3lcpQ3AtINQ6pqDzjGEBRzhEJ3sm
 tZcRQFQUXeDzvqjq2ggPUvdbziXug5pD3uDd9fqHrZu0nZmNomQWEDWSWyFeSNhxw1ejZSjl
 pt0qMWjbaagwyzIW8njOlQCiwRVE2nRJZ9SCWMfsF9h63icgAYdxb5uRWqzzUIPlfM22pXrG
 r7NiGQcezMGTNmywVl+5ev1kh1eGWbd193cVZgv+RGZDv7k35uzO6GYbey2WONal0EhvoQKi
 3BfCF6GHIb+/mnkBGSgzqMDnMg29EnOfHcFq0qd/XJ1mqqM5Dgr9BGI9ZEuJJkPsvpqOkFTK
 aWfBKUNirxD4oSqkOoj2dgPCl/s38/l/z0nBXj8WijxXY6Rf7fOk5vSb1eI9aS6QHfNri1+Y
 Q8idI+pu2rNGrtLtaA1KHMdjZGbgrJvnTedZBjlblE+aYp8LdjFZjSVjXFkHlBwRUlNc/x0E
 cTWr5y7rzNMpJmFvZiOx5x7x4sjpCCPUErugv5DqslcVYhg2TSMtmJ77DLwIBfTnGptU/1Ix
 2S4idd9/DKU2+fzrYcEbs3OnkTZ04m6nhuldnyPLH4GUGvbaVE81W7OHPmL+MYR6iBBLkKrh
 F1p9uPhPSaciLk2AbW+Tt3S5g+ulqPUIe3GkaLH+UN7tmxfVKLiaGu6NSojDj2RSCgAn5oyL
 FtZAgVdIBbljImjIcrySC8Raz8v1I9nzJlkEdav0+o3pLj/XzSEk5HOxDIm5laXTFcNX6TkM
 TOmNLonEjV8XxCwpnMFEBZY9FIFZwRV+HMXlBTFfQ=
X-IronPort-AV: E=Sophos;i="5.82,222,1613451600"; 
   d="scan'208";a="41952102"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aZt6iwMGTfg5aMF3ZzTCMbsncj6e4uVJJ5q50Rxuyw4V5GdhN1dYQZ9zeABrmYSi/rzFb02QzwQKipOU5vRgoy4kRAivH6kF3NPNAGhaZu8XRCq5NDeKNajRwD0uXxmScrQFYgvjK0vpAHAEU1JoAWbD1h8nScODLhLGpo8aqUvdkjaINXElWsuA7QIxdPFKSLse121czEFCN24zQCmRwxWzxuRy9WeTyFpiEYx6D549WexFHmJCJu/FDJU9Ky82mechzHc7nhV5jnFctz+qNrqHXWgkvikSjOSTD1jlcNzfZ/nCQ6B0j/GrPXO1/qUe1rkyR12t9uzHGXzPCsxS8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OFe5AyKIYZ6R8ytjJFK0IlNDoqyNylHCztAikAkr3c8=;
 b=Hb1hCiHJOwQ8fe4MoqKdby/cBe1Q3fUKxZXpgqfLZfHCpb4fTD/tXBbuYIFEYPvU428LaOJTVNAEbouDt5wpFQuD+ziJwIM2CDMDwO+IQ95+BukBnyHROlK83KLGLWDBouXA27wAya0oB0Lj6T6p8a55jKfRW1WO5exBU2NQDSRqT3rf/tN3ICuFTqknAper+Yu4gdgMmcJh8kMx/wIh2shMNNJRNV5rZO3gUEgyGe7fIikN4cS1d3Kz5U7xBbSjr+4piK9TxogxVNMvu7cbs5/8E8KGkElMYgPTvnsNSyG3e3JEhUFdUuQm8eWxCZ1KdhnlHeDPqApKo2895y0Qyg==
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=OFe5AyKIYZ6R8ytjJFK0IlNDoqyNylHCztAikAkr3c8=;
 b=xKgBomUYK6K+uXR1tCW/PGlEBYMAVuAIN9NLHXj2HCUnBZUBfb7GqouJ3wcyIjGtRPVVGb7yCA5H7HKrWFD60CiIKlfGSpZM1FdTuhVMA+Ssml9XBd1GVVT4mYY5FLGjojMOgTdq1W95xIFllHN4SwAIqxXH+ol1TA/JVt0mZOw=
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
To: Jan Beulich <jbeulich@suse.com>, Roger Pau Monne <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>,
	<xen-devel@lists.xenproject.org>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
 <97d443b0-f5c2-0183-74c1-ab16d3cf1e7d@citrix.com>
 <63738788-c7ed-13f7-acaa-c1ad102442a3@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <84012b3b-9ed6-7724-8738-986570be6a44@citrix.com>
Date: Wed, 14 Apr 2021 13:49:04 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <63738788-c7ed-13f7-acaa-c1ad102442a3@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0369.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18e::14) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 935a22d5-2435-43c9-f7cc-08d8ff43b316
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5439:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5439E231851E56C3C0F4DEA1BA4E9@SJ0PR03MB5439.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: bMyMuxn1pEALHwJVKRFrhK3v+5r9XTYENcu3QArw4fBMNjfck4Rw7Lt55SaI8fVFZeLWgFbeIaHvICtobxgGTttIs7giY6+FQ9dz/uVss4PeyJlw83f0kId4hOxYRd3sS2tnjfOtZ62iVGrpmr0XVx2Z29Vr1E8NAajIIsf3aRB9J6/eDzazabp5narQd2CMHZpEsRpl9y8JpJIDBu0omyAy+RU1wWdajiZllJtCLVLV+UcfHQO7ICy9xShpLmwKnvY+QbGRudAMiGDgbdkqTJ8wo39MysS2jcG+yK1lfwjopn8sxAUMZb69zOHPIK8TA5kk5ywDpMZUrKvsRtS4HYaqk+IFLdJCWbMVB658SGcr6Qzdc2ETwCTv/ZyM8InBL/t5AdQDnP3HsFo3vRbyTSbyCFZ8yj4GIAmGsYE0DQ2yfnsvOaH7w54fm57d0TO5DRmMVPAaFpJK6+EjqM3CofHxToBS0onSDsKRLDyJTC0Ew+W2iTy7gQtTVZy7kmrozOOjMsumJQdYFlaiJW3A4wZPif1YfiH/jQZmsbzfmMIcuU8VMfGD16PXCNiWXN8aa9ZFh9SQMViW66gSTGYyeIbVNxGdpRmLXxUp4dfCkQKd0SH/OHg0TJDWL3HseZrNaqLw/d9L16ZsiEBMgzhcds/jT1umXP2YPjr6CBnO6ZBmsUOhLjFzdZUcC8+8cpz2
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(136003)(376002)(396003)(366004)(39860400002)(6486002)(2906002)(478600001)(66476007)(54906003)(110136005)(66556008)(86362001)(8936002)(31686004)(6636002)(5660300002)(36756003)(66946007)(186003)(16526019)(26005)(6666004)(2616005)(956004)(53546011)(16576012)(316002)(8676002)(38100700002)(31696002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 935a22d5-2435-43c9-f7cc-08d8ff43b316
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 12:49:10.6793
 (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: qixzGALB+dgCI3uVDke+tmF0vtoHAgWA+LRVUysW7yYy3BQ2BDcGNgPJh7k9jZcp01166D6i/RbZMh4a0nCkI52al/eMw7mwz8wX0qYzoe4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5439
X-OriginatorOrg: citrix.com

On 14/04/2021 13:45, Jan Beulich wrote:
> On 14.04.2021 14:33, Andrew Cooper wrote:
>> On 14/04/2021 12:04, Roger Pau Monne wrote:
>>> --- a/tools/misc/xen-cpuid.c
>>> +++ b/tools/misc/xen-cpuid.c
>>> @@ -178,6 +178,11 @@ static const char *const str_7a1[32] =
>>>      [ 4] = "avx-vnni",      [ 5] = "avx512-bf16",
>>>  };
>>>  
>>> +static const char *const str_e21a[32] =
>>> +{
>>> +    [ 2] = "lfence-always-serializing",
>> This is a bit of a mouthful.  One problem is the fact that "serialising"
>> is an ambiguous term, because neither Intel nor AMD formally specify
>> what it means in the architecture.
>>
>> There is a description of what "architecturally serialising" does, which
>> does occasionally move over time, and the name of this CPUID bit in the
>> PPR confusing at best, because it very much isn't "architecturally
>> serialising", and the term "dispatch serialising" isn't actually defined
>> anywhere.
>>
>> Intel have now started referring to LFENCE as a "speculative execution
>> barrier", but this still doesn't have a precise definition.
>>
>> I'm afraid I don't have a useful suggestion for something short and
>> concise, which also conveys the precise meaning.
> How about "lfence+" or some such?

Hmm yes - for xen-cpuid, that's probably fine, and for churn reasons, we
can keep X86_FEATURE_LFENCE_DISPATCH which was the best name I could
come up with at the time.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 12:57:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 12:57:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110589.211074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWf56-0007wz-II; Wed, 14 Apr 2021 12:57:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110589.211074; Wed, 14 Apr 2021 12:57: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 1lWf56-0007ws-FL; Wed, 14 Apr 2021 12:57:20 +0000
Received: by outflank-mailman (input) for mailman id 110589;
 Wed, 14 Apr 2021 12:57:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWf55-0007wl-4Y
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 12:57:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 11f5583c-a116-4fbf-b832-73ceabfbb1a3;
 Wed, 14 Apr 2021 12:57:18 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 15805AFAB;
 Wed, 14 Apr 2021 12:57: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: 11f5583c-a116-4fbf-b832-73ceabfbb1a3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618405037; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=WFHB6FeXYsE3JUVW6HvLSAh7TD4Xh+Sa+vkYwBwDxFU=;
	b=irMu8LLuoeeo5UytalZKNVdIEDs8oh6zOMZNht1x4rKwifLbBdF9TW1kx/oEmxZ5Pt4QyG
	CyFFB0SalKbrx3eDP7WBN615P9bdElXtKvom04sUYksw8D1ZX7WEWmcd2LeUICJGWqSJxt
	wqWgIWKKHxaxdkCOgUfAgtrxcJM90L4=
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Ian Jackson <iwj@xenproject.org>, xen-devel@lists.xenproject.org
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <29e8e2a4-3489-17b9-849b-ddfeed76451d@suse.com>
Date: Wed, 14 Apr 2021 14:57:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210414110433.83084-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 14.04.2021 13:04, Roger Pau Monne wrote:
> @@ -264,6 +265,38 @@ struct cpuid_policy
>              };
>              uint32_t nc:8, :4, apic_id_size:4, :16;
>              uint32_t /* d */:32;
> +
> +            uint64_t :64, :64; /* Leaf 0x80000009. */
> +            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and features. */
> +            uint64_t :64, :64; /* Leaf 0x8000000b. */
> +            uint64_t :64, :64; /* Leaf 0x8000000c. */
> +            uint64_t :64, :64; /* Leaf 0x8000000d. */
> +            uint64_t :64, :64; /* Leaf 0x8000000e. */
> +            uint64_t :64, :64; /* Leaf 0x8000000f. */
> +            uint64_t :64, :64; /* Leaf 0x80000010. */
> +            uint64_t :64, :64; /* Leaf 0x80000011. */
> +            uint64_t :64, :64; /* Leaf 0x80000012. */
> +            uint64_t :64, :64; /* Leaf 0x80000013. */
> +            uint64_t :64, :64; /* Leaf 0x80000014. */
> +            uint64_t :64, :64; /* Leaf 0x80000015. */
> +            uint64_t :64, :64; /* Leaf 0x80000016. */
> +            uint64_t :64, :64; /* Leaf 0x80000017. */
> +            uint64_t :64, :64; /* Leaf 0x80000018. */
> +            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifiers. */
> +            uint64_t :64, :64; /* Leaf 0x8000001a - Performance related info. */
> +            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature information. */
> +            uint64_t :64, :64; /* Leaf 0x8000001c. */
> +            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties. */
> +            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/Node IDs. */
> +            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryption. */
> +            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
> +
> +            /* Leaf 0x80000021 - Extended Feature 2 */
> +            union {
> +                uint32_t e21a;
> +                struct { DECL_BITFIELD(e21a); };
> +            };
> +            uint32_t /* b */:32, /* c */:32, /* d */:32;
>          };
>      } extd;

Due to the effect of this on what guests get to see, I think this
wants to take my "x86/CPUID: shrink max_{,sub}leaf fields according
to actual leaf contents" as a prereq, which in turn may better
remain on top of "x86/CPUID: adjust extended leaves out of range
clearing" (both are neighbors in that over 4 months old series,
fair parts of which could imo go in irrespective of the unsettled
dispute on xvmalloc() - unfortunately I had made that patch 2 of
the series, not expecting it to be blocked for so long, and then
presumably signaling to others that the rest of the series is also
blocked).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:05:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:05:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110594.211087 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfD2-0000aT-Ct; Wed, 14 Apr 2021 13:05:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110594.211087; Wed, 14 Apr 2021 13: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 1lWfD2-0000aM-9T; Wed, 14 Apr 2021 13:05:32 +0000
Received: by outflank-mailman (input) for mailman id 110594;
 Wed, 14 Apr 2021 13:05:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWfD1-0000aH-3n
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:05:31 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 819dec4d-1aae-4bb6-8afb-6541c768b4da;
 Wed, 14 Apr 2021 13:05: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: 819dec4d-1aae-4bb6-8afb-6541c768b4da
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618405528;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=DYipI0/rzdlhhi93aqgC+ctI/xPJdZ/8NS8g+JaO4KQ=;
  b=ZzW+TxEYloSWtY/D9pVnmutP9ahc58UzDVBLVAA/o2bib/BLGrgHF3Is
   +i8yv18o1/1i6quP3MryJsCDaa1d5TnjTNl6PhlOVtejrpPbw6bUZ4mqp
   4aBGEqaoeDBtVH11lQ+eDQkcNsZ6dM5Rpalt3Ro2lpwzOkYtjuQYagsU6
   I=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: l9M6ygpq9RYTA67GUbPSY+pLKZK9JvRiHdhU+CP4fuj77n2Bk01CkOAtSLddy3YfL+enZ1sf0Q
 Ht4tymAFaZuUyHMRB1u5kFzhlZ1rqrp0sV2SuUV8kCOf9gNEQHe/1MtDoIGu2RAN33jEteti3b
 f0LpaU97YN5xJaAPdGC/mDDo0q6P8RuRcabMgrRV2rXOiiVGOAxdIRBsuPGhFF/t7rN3Fqh870
 HY7MMEa1ovpo5VGlEAahvw8beatfuzDn04LSNhti3mnJ4oP3MCQOltFMzM6W7+kz/WlvPL83VT
 e6A=
X-SBRS: 5.2
X-MesageID: 41409838
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Ns+Cf6gpOfik5fyMLxtAZgmDl3BQX3Vw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+csFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmup
 tIW5NVTOf9BV0St6rHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WdEIyywe3cGIzVuL5w/CZ
 aa+45jrz2vZXwYYq2Adwc4dsLEoMDGk4+jXAUPAAQp5BLLoTSj7rP7FBbw5GZgbxpkx7A+/W
 /Z1zHo/6nLiYDG9jbw9U/2q65Xltzo18dZCKW36/Q9Bz3whm+TFf9ccpKYujRdmpDX1H8Ll5
 32rw4kL4BP7RrqDxyIiD/M/yWl7zo08X/lzjaj8AneiOj0XigzBcYEpa8xSGqg12MasNtx0L
 1G0gui3vI9Z36w/1Welqz1fipnmUaurX0pnfR7tQ04baIkZKJMtotaxUtJEf47bVHHwbo6G+
 pjBty03ocyTXqmaRnizw1S6eC3Um92NhmLRVVqgL3u7xFm2Fp9z0ce2fUFmGYB+J8XW/B/lp
 T5G5Utu7dUQsAMa6VhQM8HXMusE2TIBSnBKWSIPD3cZe86EkOIj6SyzKQ+5emsdpBN5JwumK
 7ZWFcdkWIpYUrhBeCHwZUjyGGNfEyNGRDWju1O7ZlwvbPxAJDxNzeYdVwom8y8590CH8zyQZ
 +ISdBrKs6mCVGrNZdC3gX4VZUXA2IZStcpttEyXE/Lit7XK7ftqvfQfJ/oVfnQOAdhflm6Lm
 oIXTD1KskFxFusQGXEjB/YXG6oVVf4+b52DajG78kewIUALeR3w0wooGX8wvvOBSxJs6Qwck
 c7CqjgiLmHqW6/+nuNz2gBAGsbMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYjt2T8bcFh
 9jt016kJjHaaC49GQHMZaKI2iah3wcqDahVJEHgJCO4s/jZ9ceAos5XrdyUSHGDQZ8lwoviG
 orUn5FembvUhfVzYm1hp0dA+/SM/Nmhh2wHMJSoXXD8WOGpc8uQXMfdyW0UdGehDsvQzY8vC
 w1z4YvxJ673Rq/I2o2h+o1dHdWbn6MPb5ABAOZILlPlqvTYwF2R2eSjTm8gxU+E1Carnk6ty
 jEF2m5aPvLCl1StjR93rzx+F15TGmbYnl9c2t3q4F7CGTAtEtiyOPjXNvH70KhLn85hs0NOj
 DMZjUfZjljwN26zza5sjePH3dO/ORiAsXtSJAYN53D0HKkL4OF0ZwcF/hP5ZB/KZTFqekQS9
 +SfAeTMRL1A+4kwBauu34gISV4wUNUyc/A6VnA1iyVzXQ/Cf3dLBBaXLkdOcib9HWhaPCS0p
 l15OhF9deYAyHUUJqhxq7WZTIYdU+Wjm6yUu0yqZdb+Yg1r6B+GpHHUT3OkFFLtS9OWvvcpQ
 c7euBc5ruEB6pEO+o1UAhd9kAylNuOIFAw2zaGSNMWTBUItTvjI9iN47D0srIhDU2KmRvoNT
 Ckglpg1saAexHG6KUTBK0xK1lHcUQQ6Hxt++WZao3bYT/aPt1rzR6fMnWndqVaR7XAMbIMrg
 xi69XgpZ7aSwPInCTRtyB8OKRA7iKORt6zGhuFHapt/8ahMVqBxous78jbtka5dRKLL2AZj5
 ZCb0oec4BqjSQjlpQ+1myKcZPMy3hV2Gd20HVAjV7i2o+v/WfdEwVnCGTi8+RrdAgWFGOJg8
 TD+fWfz1Ln7lF+qML+KHs=
X-IronPort-AV: E=Sophos;i="5.82,222,1613451600"; 
   d="scan'208";a="41409838"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z0WgOQAvkP/lNP1QaByBwvacIQ44rmTYi2GbVM5p78VIEFdZNdF60fLVnm8BH9tJCk8kMoX0DdgEMAdRaqBYpXAG5iAMwSLa+C3xlR4YTTUffQVPnbGPVaYbKaD7BwRrSKTloU5XDjqhQUCooPlfGpz8uBFffG9W6ym03FOelkp012ec0XEE/WIS5K3D4IT7pRY37RWixa84CQzdemrHswm6yG/a5Z72POeWvuEXBgtGcsK4H1Yss62HdXVDx3XcKZd5CqKPrtIHm7CVJ91SCjyXjoNWoG6QFKpr9nqci7cS3Nux7lkQF2ZzZbfDOApT3yJSJAf8Sd6TTpjIiMTw4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gPZzrhmhXmUS62/S96Vum7xVOSM8+MXrgg2yVqqPLQw=;
 b=gpF26wz1Y5VxwP5sHU7u4M5tLpkAzONE5SPVnJ4PwP3RtOE6KZhFouUwmx3MRt8vgm2bR68N1t1v+WyR153S5d5/zaov4QJr2P4+EA3gR+kZaP4RA5PYM/yFfyrUp3M+HqeSZz53fUB+fA6mbF5ocu1CV1pSsghgqcn8AybcXddTzfdOBLA97ZYgBj4WA6DKSbl6UoEFPaXKaJw4Oxkv+g4ONcxmxiT3SmRoak4s/8ZagxZJ+K70x4Bnsby74bPSyhyw71TKvuFFylRzg8FnoPV7t/6UnIbMVt11nXNgJi/zTzTIjSQhYNS9ZNNN/2MQNBfk3UxkW6NBgest1UeH7w==
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=gPZzrhmhXmUS62/S96Vum7xVOSM8+MXrgg2yVqqPLQw=;
 b=BedvjX/b+ie+4+AcZjgrWr8imq+YH/PNWtxqjq4nJE/Dpp1fNH4IpDV2d7r+jsRxj0mw/8MQHMUO0o3ZQYZLn7YS/G57s15U5CUd/s4dcI1UozKeRkQz2u5zDMZ/v9wMnUPRf0m1RMRJYo+Xg9B5KiRhuKN0C2KTNUCBAXRPJdU=
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
To: Jan Beulich <jbeulich@suse.com>, Roger Pau Monne <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>,
	<xen-devel@lists.xenproject.org>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
 <29e8e2a4-3489-17b9-849b-ddfeed76451d@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <5fa30ed1-967e-dcd1-b9cf-110708f2c069@citrix.com>
Date: Wed, 14 Apr 2021 14:05:17 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <29e8e2a4-3489-17b9-849b-ddfeed76451d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0166.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18a::9) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0e460e18-214d-4363-747f-08d8ff45f7d1
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6271:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB62719FF7ACE0A584E936724EBA4E9@SJ0PR03MB6271.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: j9BMvPA7FuEWax2X4qJH5TKwi+k0PcvtleMGbSSZSfXEsSj6WIk1L3L1nTBxX906UEEtZz3uVZ0DqsDjhmAJulEe/c4iybejg6Ap/zgGkNWqcvIH5jF0zJtDeCYOSPqmA3lfXETconkUJfCMX9C4qipLzUs/nM8pJHmQdIOHyu5zJSKPZqZeVPEovCAtHI7CV9HykHiB+8H/1SpNEi7EDAEW/PBQtqunpN76Nhdwoei6Vrp7+xhvYxIC6hpEyyMkIzgWG0hVGeHToZoPXUMJdXp2c1eGiyV1Av+g5JWyG8sEZ3B+h4OoUeSjN6eCksorLsP2Eu0+UR5duW7oen9yEXpzw5INP22+JIV6HnGOKnUNNodbrTgdXSZcfLNEtDS0JJhJMwtpZKamoYOqV8IiueVl+Sm4s3pKXR61B9C6Wgz+h5dOIXjob1qD3MXLV/6YEAFI96vpJSJheF06stRUD2xB/wQLK0tQKOo4VDFJvsD/TSjpHrBjwZ5PpHrxyoeQju24ZfKKcIR3HsSilriZ37qJRef5fnaoHQQ0dI4/zAyXfumEIGDHSRnmv8nMJ+vPaD0qHXwTqwBrcY5SGmN+/m8930iU7rKlhyEqZ8P5EWdgmAEL7yEZv+RtEBaZcV3Ln+SfKusq0+vO2XVM58IFsZBEZjbqAN+WOaM+9xE+rH1I4PQsnhpykwa5sCvex26Z
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(346002)(396003)(39860400002)(366004)(136003)(6486002)(16526019)(31696002)(316002)(53546011)(4326008)(16576012)(54906003)(26005)(478600001)(956004)(6636002)(31686004)(5660300002)(110136005)(36756003)(2616005)(38100700002)(83380400001)(6666004)(8936002)(66946007)(86362001)(2906002)(66476007)(8676002)(186003)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 0e460e18-214d-4363-747f-08d8ff45f7d1
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 13:05:25.0649
 (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: 0wI3+jiERy4H9YQ5ule03qBqtA2hHbR0VZAuIqzzgt1QOgAlX299pU82N8Q5Yl8YOqQvraDl+Lz27yQJ5NDwRH0Zg7cNroAfuvwLfxQI9y4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6271
X-OriginatorOrg: citrix.com

On 14/04/2021 13:57, Jan Beulich wrote:
> On 14.04.2021 13:04, Roger Pau Monne wrote:
>> @@ -264,6 +265,38 @@ struct cpuid_policy
>>              };
>>              uint32_t nc:8, :4, apic_id_size:4, :16;
>>              uint32_t /* d */:32;
>> +
>> +            uint64_t :64, :64; /* Leaf 0x80000009. */
>> +            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and features. */
>> +            uint64_t :64, :64; /* Leaf 0x8000000b. */
>> +            uint64_t :64, :64; /* Leaf 0x8000000c. */
>> +            uint64_t :64, :64; /* Leaf 0x8000000d. */
>> +            uint64_t :64, :64; /* Leaf 0x8000000e. */
>> +            uint64_t :64, :64; /* Leaf 0x8000000f. */
>> +            uint64_t :64, :64; /* Leaf 0x80000010. */
>> +            uint64_t :64, :64; /* Leaf 0x80000011. */
>> +            uint64_t :64, :64; /* Leaf 0x80000012. */
>> +            uint64_t :64, :64; /* Leaf 0x80000013. */
>> +            uint64_t :64, :64; /* Leaf 0x80000014. */
>> +            uint64_t :64, :64; /* Leaf 0x80000015. */
>> +            uint64_t :64, :64; /* Leaf 0x80000016. */
>> +            uint64_t :64, :64; /* Leaf 0x80000017. */
>> +            uint64_t :64, :64; /* Leaf 0x80000018. */
>> +            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifiers. */
>> +            uint64_t :64, :64; /* Leaf 0x8000001a - Performance related info. */
>> +            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature information. */
>> +            uint64_t :64, :64; /* Leaf 0x8000001c. */
>> +            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties. */
>> +            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/Node IDs. */
>> +            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryption. */
>> +            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
>> +
>> +            /* Leaf 0x80000021 - Extended Feature 2 */
>> +            union {
>> +                uint32_t e21a;
>> +                struct { DECL_BITFIELD(e21a); };
>> +            };
>> +            uint32_t /* b */:32, /* c */:32, /* d */:32;
>>          };
>>      } extd;
> Due to the effect of this on what guests get to see, I think this
> wants to take my "x86/CPUID: shrink max_{,sub}leaf fields according
> to actual leaf contents" as a prereq, which in turn may better
> remain on top of "x86/CPUID: adjust extended leaves out of range
> clearing" (both are neighbors in that over 4 months old series,
> fair parts of which could imo go in irrespective of the unsettled
> dispute on xvmalloc() - unfortunately I had made that patch 2 of
> the series, not expecting it to be blocked for so long, and then
> presumably signaling to others that the rest of the series is also
> blocked).

There is no shrinking to be done in this case.  The bit is set across
the board on AMD/Hygon hardware, even on older parts.

What does need changing however is the logic to trim max_extd_leaf down
to what hardware supports, so the bit is visible on Rome/older
hardware.  I.e. after this change, all VMs should get 0x80000021 by
default on AMD hardware.

(A curious observation of Milan hardware is that it actually advertises
0x80000023 as max_extd_leaf, and has two leaves of zeros at the end. 
I've got an open query about this.)

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:24:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:24:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110601.211105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfVI-0002Ox-4B; Wed, 14 Apr 2021 13:24:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110601.211105; Wed, 14 Apr 2021 13: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 1lWfVH-0002Oq-W2; Wed, 14 Apr 2021 13:24:23 +0000
Received: by outflank-mailman (input) for mailman id 110601;
 Wed, 14 Apr 2021 13:24:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWfVG-0002Ol-Ot
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:24:22 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 38abfd84-a7b4-4017-a1d2-e1570e15b0d8;
 Wed, 14 Apr 2021 13:24:21 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C1D3DAE93;
 Wed, 14 Apr 2021 13:24: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: 38abfd84-a7b4-4017-a1d2-e1570e15b0d8
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618406660; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=saCD+/ELWD4fJTlbh/RxNFMzhwrpGBGQxt5B8NLrGa4=;
	b=iWBt8tpRToqG0FW4oTMnCDGfqHlITrh61bZPb386mtBVMozmI8SnPk+6YZe61nKvAh7ITO
	v+e72K5PM3yd+sSIQfWDbTgbziWk88SwFN0qNLbhZ//xErXyUEhczxiNaIflwaIvjnicOB
	PQgxqjuri8Az784y5cGNg2KJkvFDcdg=
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>,
 xen-devel@lists.xenproject.org, Roger Pau Monne <roger.pau@citrix.com>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
 <29e8e2a4-3489-17b9-849b-ddfeed76451d@suse.com>
 <5fa30ed1-967e-dcd1-b9cf-110708f2c069@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6f9ef9fe-4e1e-ea1a-53f8-7c98e6bfdf24@suse.com>
Date: Wed, 14 Apr 2021 15:24:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <5fa30ed1-967e-dcd1-b9cf-110708f2c069@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 14.04.2021 15:05, Andrew Cooper wrote:
> On 14/04/2021 13:57, Jan Beulich wrote:
>> On 14.04.2021 13:04, Roger Pau Monne wrote:
>>> @@ -264,6 +265,38 @@ struct cpuid_policy
>>>              };
>>>              uint32_t nc:8, :4, apic_id_size:4, :16;
>>>              uint32_t /* d */:32;
>>> +
>>> +            uint64_t :64, :64; /* Leaf 0x80000009. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and features. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000b. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000c. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000d. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000e. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000f. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000010. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000011. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000012. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000013. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000014. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000015. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000016. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000017. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000018. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifiers. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001a - Performance related info. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature information. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001c. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/Node IDs. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryption. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
>>> +
>>> +            /* Leaf 0x80000021 - Extended Feature 2 */
>>> +            union {
>>> +                uint32_t e21a;
>>> +                struct { DECL_BITFIELD(e21a); };
>>> +            };
>>> +            uint32_t /* b */:32, /* c */:32, /* d */:32;
>>>          };
>>>      } extd;
>> Due to the effect of this on what guests get to see, I think this
>> wants to take my "x86/CPUID: shrink max_{,sub}leaf fields according
>> to actual leaf contents" as a prereq, which in turn may better
>> remain on top of "x86/CPUID: adjust extended leaves out of range
>> clearing" (both are neighbors in that over 4 months old series,
>> fair parts of which could imo go in irrespective of the unsettled
>> dispute on xvmalloc() - unfortunately I had made that patch 2 of
>> the series, not expecting it to be blocked for so long, and then
>> presumably signaling to others that the rest of the series is also
>> blocked).
> 
> There is no shrinking to be done in this case.  The bit is set across
> the board on AMD/Hygon hardware, even on older parts.
> 
> What does need changing however is the logic to trim max_extd_leaf down
> to what hardware supports, so the bit is visible on Rome/older
> hardware.  I.e. after this change, all VMs should get 0x80000021 by
> default on AMD hardware.

As to this last sentence - not really. Only if we managed to set the
flag (if it needs setting).

It's a two-way thing really: If the flag ends up set, I agree there's
no need to shrink max_extd_leaf. But if the flag ends up clear, the
issue we have today (hence my patch) becomes worse: Trailing all zero
leaves would result because we don't properly reduce the maximum from
what hardware reports to what is actually populated. In any event - I
think I'd much rather see issues with my patch pointed out, if any.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:26:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:26:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110605.211117 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfX4-0002c2-G4; Wed, 14 Apr 2021 13:26:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110605.211117; Wed, 14 Apr 2021 13: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 1lWfX4-0002bv-Cl; Wed, 14 Apr 2021 13:26:14 +0000
Received: by outflank-mailman (input) for mailman id 110605;
 Wed, 14 Apr 2021 13:26:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWfX2-0002bq-Cp
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:26:12 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7590ad4f-f908-4524-a8aa-63207ba40a51;
 Wed, 14 Apr 2021 13:26: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: 7590ad4f-f908-4524-a8aa-63207ba40a51
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618406771;
  h=subject:from:to:cc:references:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=bX85kvMi12EvwBxMQZB5CyPVH6t130G7c420bkKAagg=;
  b=QZkdmj5gv6TCjjmzmWCvhb4THDEJ4za58LXXAqTeldkberlDcdc2vpj2
   BjILoz11fS6V2ZVO7zIZgZhOv2VUGceC0OAPYfUW8D4GRi5ZyTVEBaZpN
   JN0QNYODkK/eAxQPjMtNc/PHpxbyJskPUbM3MHrKl4uao4KfqKKef8JPW
   I=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 5LmcrKHJelOhiep31vUMkR9e/WIuOpxmaOnT8iZN51wyOilSwoeTI6rJtqhkqoIBCgfjpMsCCR
 hDyMAfJRgZhVDlIBYK/nJDuT7OG73UwETdc7e/XYLRqmLPeINlZkDVxbjhJqdHinRcGQS9xLzE
 fOsKK99ykRaYLYrhqwEXX+Bi44A7jfX5l6BRFZBKG35112D9wchVzrIcy4sTewP5RufWAQgbz9
 OrlKpnVbAr7PmJ0SlRuxMxAURPhG7Dc04jv04S87v/On5RCNT6px0epsdZWr+sekCIy5df/HHO
 Nq8=
X-SBRS: 5.2
X-MesageID: 41703245
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:mgbOB6wItJeeN7UMAdULKrPxge4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmqJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheTysd07o
 0lSaR3DbTLYGRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRCp1IxS0RMHf9LmRdQg5aCZ0lUL
 +V4cRarzStEE5nEfiTLH8DQuTFupn3j5rgexELHFoK7wOJgDOu5tfBYmSl9z0ZVC5CxqpnzH
 jdn2XCl9iemtyY6juZ7W/c6JxKhMDso+EsOOWggtUYQw+c8jqAS59mX9S5zVUIicGprG0nid
 zd5yonVv4DkU/5WkGQjV/T1xL70DAogkWSumOwpXf4u8T2SHYbJqN69PtkWyDU4UYho91wuZ
 gjtwny1+s1fGb9tR/w6NTSWxZhmlDcmwtFrccpg2FCSoxbUbdNrOUkjTNoOa0dFyH34p1PKp
 gNMOjg4p9tADenRkzCsnIq6NKhWWlbJGb8fmEy/uaR0zRQgUljyVoZyME1jh47heMAYqgByO
 LePqtykrZSCucQcKJmHe8EBfC6E2rXXHv3QS2vCGWiMJtCF2PGqpbx7rlwzOa2eKYQxJ93vJ
 jaSltXuUM7ZkqGM7zB4LR7tjT2BEmtVzXkzc9To7JjvKfnebbtOSqfDHgzjsqJuZwkc47mcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQksonWmiJvtnAJuTRx6zmWceWAICoPScvW2v5DH
 dGdiP0Pt984keiXWK9rwPWX1/rZ0zj7bN9GKXX5IEouc0wH7wJljJQpUWy58mNJzEHmLcxZl
 FCLLTulb7+hWTexxeN00xZfj5mSmpF6rTpVH1H4SUQNVnvTLoFs9KDPURb3H6NIA5DX9rbeT
 Qv4GhfyOaSFdi91CoiA9WoPiaxlH0Ivk+HSJ8ah+ml6dr6fIg7SrIrQrZ4GwmONxEdo3cqlE
 5zLCs/AmPPHDLnjquoyLYOAvvEStV6iAC3ZehOqXzesk2Yjdo1RmQSWgOvVcL/u3dtexNkwn
 lKt4MPiruJnjiibUElhv4jDVFKYGOLRI5dAB+9f4VSkLDzcARWRWOH7AbqzS0bSy7PzQE/l2
 bhJSqbdbXuDkBGsn5V6Krs7Wh5b36QZU52d3B8v7BsDGiugAcA7ca7Io6Il0eBYFoLxe8QdA
 vIZjYfOStC7dG63hz9okfJKVwWgrEVesDNBrUqdL/enk63IIqTjKccArt/55B+Lu3jtecNTM
 OScwKYNynDFusswgCZz0xVYRVcmT0Bq7fFyRfl5G+30DoDGvLUOk1hXKxeDNeG7WToLsz4ma
 lRvJYQh6+XPWrwYNLdlv2SQD5HNx/JoWm5C8svsotZuKoutL11W7nXOAG4o01v7VEbFoPTkk
 hbfYFQpJbmEaVrd9YJey1Y8kEy/e7/Z3cDg0jTOKsGYVopj3XnJNuH7LrDlKo3DiS61X/NEG
 ja1xcYwuzMUCSC34MLEq4cIWxZb04n9XRpldnyAbH4OUGPd+tZ+kC9PWL4WLhBSLKdEbF4lG
 c23/i428uWfTH/wgbeoH9SJb9P6X+uRYeXDBiXEeBFt/y8NlLkuNrn3OeDyBP2QyC8cUIWmM
 lsclERdN1Kjn0at7IMuxLCApDfkwYCiFtR4TZui17r1MyH2Q7gbD97GDycpI5XUzlVOmWPlu
 Lf/4GjpSzA3AQ=
X-IronPort-AV: E=Sophos;i="5.82,222,1613451600"; 
   d="scan'208";a="41703245"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O+HJL/DVBwVkRjoV+rTNMef/XdKPf08E5rd/vkOTE0HtBrK3DJOX7HJp+g82ittMosltPQCDj1UZEBYTT+1QrwQFxGzQw1bXHD7+O0Z7jurmvjB7q3TPpbIQBRiM2BXBqNrpJMbDaLKmwK4v0v9R11ZV/zLhHooTGkIztX/XmIcYvYrMpH04agCHAC3tW8zgGl9d1rq68nm8dPTCRHCt7uceQ97y1Fn67uRLDMFxAJm5dLeuGk6D1yh/Qo26Gi09M7RqlwdPDrJg1PoCRrssUKLjFZLyazeubJ6HUyJxv/6YynDbj17XwFjEXYfXZ5Fl/k0jetWg9VzcKGZSiHPurw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CD3uwGRZGixIgUbWmlGZxvHhKFX92PHkE4UIamvxsK0=;
 b=SNiiW+1/W1MLdHJ0pICOycBbiFTYAzR6k6SExW+6B5S4+v6p21BrJJsM6V8yLtxuHQD+A4nTz7YApI9ogXekoFtHuW3GKJ4/efHk7osdyaMUq9iwSE/jwbPu5uxyCxx9S0kvflHdfv+2+0dtdPx0dRQPUCMNdCh71pKeYpJ5QWAcIRYZPRWl7F11QB5JfCOn7w6iaAz5spkgDdLSJ600AuDcSNcGIHpqutMIl7XbaTU5zcVWKsgdeXsvYoH5HYLhc29qTtcR8Y0F6+6nyD4X8TzHRwSXPgBATX5KKPxSO48UMuQxLIUZZr6awfBUoNV3NNtDK/xaM66u9xZ+nUQDAg==
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=CD3uwGRZGixIgUbWmlGZxvHhKFX92PHkE4UIamvxsK0=;
 b=HySJE+7Vc8v1GA0xODVSvuf6e1Omgqj0/5RM6979kdY8SOX0AwEMvHhbQehB6Ixr0clmaAVhFy0HhL9iZ3bznxBl/jrfken2OHELBkzF08C3MIuV2YANNrPaB7ZTb21CFIu1q16KlwV7BwjT+w1ZKveHbgi4ef/aK3US9D0F/Ug=
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Jan Beulich <jbeulich@suse.com>, Roger Pau Monne <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>,
	<xen-devel@lists.xenproject.org>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
 <29e8e2a4-3489-17b9-849b-ddfeed76451d@suse.com>
 <5fa30ed1-967e-dcd1-b9cf-110708f2c069@citrix.com>
Message-ID: <af2cb854-ca3f-22ee-a7b3-8c24fdecfb7e@citrix.com>
Date: Wed, 14 Apr 2021 14:25:56 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <5fa30ed1-967e-dcd1-b9cf-110708f2c069@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0203.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a5::10) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e344e03d-820c-4c76-0d5c-08d8ff48da0c
X-MS-TrafficTypeDiagnostic: BYAPR03MB4614:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4614775482F55639D3E94939BA4E9@BYAPR03MB4614.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: qgifHWJxHKTNI8/Zhu5tbcvc5d5pCjShy3JBKC178hzkL5YCHf+CVKKgzOWrkweXqW9tTqO6ROTTKJrf8rWIHn9exOpBqg3nEgOmSZQSrmZJNEBs5CTW79Zt56aWA5gPCA53R+CrVK4xb+zBeTqnYliADrw8Toaadq69hiDLVbZIF4VEogc+ICiolXDiXIYaVfoXMyj5OLyp6OeU6a83v3SbcU6VQYm+LOBBtsPgiuQEBKe05MojhkhRDO9jTv8QyRQXYBRy0yCxZjqsAQvmapEinWTTjUC7341/qP1vtyUSd++74ZutRnxC6OP1yxTTA5WKiNsmxhLJ5M3KW0eUI8vzIQgcS20DCulEgfXN2vHzJju7J5ddvyhbbdsGDSwQq0LGeKri0Mroqk8MogbbDA5PSFOdFq27a5XizXlqKjTi1Hx+TZDD+bxonUr+YCtBaNU3hXMg49hmdYY6berhHT+U1sfaYh3U+QwitUFMsnecJOFuq2ulyAXWBNel/EXFZkHahlU3MERGrArNgVShPFAsApnXIGsZ8HLJAAcAaMX47RHoJphYF33/sqB2Msj02F6YCFXkKWbWaVrWxsE+1bEqh1fd54EdxbTHbOEapN6YAJsE4TZ1ltuVV4SA4QDNFCbBUToUPtudpqksQEB1JzRDAEf6RyaRr8epQEIwiX6MfbzU36amgByn5ZySTrtf
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(136003)(366004)(376002)(346002)(396003)(2906002)(16526019)(5660300002)(6636002)(8676002)(86362001)(31696002)(53546011)(8936002)(66556008)(66946007)(38100700002)(478600001)(66476007)(6486002)(26005)(956004)(6666004)(36756003)(316002)(2616005)(4326008)(186003)(83380400001)(110136005)(16576012)(31686004)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?ICw+r0tY89tk3fv02droGC/O7nKq0Zd4XdO/kff?=
X-MS-Exchange-CrossTenant-Network-Message-Id: e344e03d-820c-4c76-0d5c-08d8ff48da0c
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 13:26:03.6045
 (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: A02o43I3XTMoYtZjhURaNGIWCz7bEJdklT4mrDASwxdUt5mEZM1+kKduDgjYuPrVnsjJnLvxOcgElaefb7gO4v17iFZaPGdAZLX1hboLsPQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4614
X-OriginatorOrg: citrix.com

On 14/04/2021 14:05, Andrew Cooper wrote:
> On 14/04/2021 13:57, Jan Beulich wrote:
>> On 14.04.2021 13:04, Roger Pau Monne wrote:
>>> @@ -264,6 +265,38 @@ struct cpuid_policy
>>>              };
>>>              uint32_t nc:8, :4, apic_id_size:4, :16;
>>>              uint32_t /* d */:32;
>>> +
>>> +            uint64_t :64, :64; /* Leaf 0x80000009. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and features. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000b. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000c. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000d. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000e. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000000f. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000010. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000011. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000012. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000013. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000014. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000015. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000016. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000017. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000018. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifiers. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001a - Performance related info. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature information. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001c. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/Node IDs. */
>>> +            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryption. */
>>> +            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
>>> +
>>> +            /* Leaf 0x80000021 - Extended Feature 2 */
>>> +            union {
>>> +                uint32_t e21a;
>>> +                struct { DECL_BITFIELD(e21a); };
>>> +            };
>>> +            uint32_t /* b */:32, /* c */:32, /* d */:32;
>>>          };
>>>      } extd;
>> Due to the effect of this on what guests get to see, I think this
>> wants to take my "x86/CPUID: shrink max_{,sub}leaf fields according
>> to actual leaf contents" as a prereq, which in turn may better
>> remain on top of "x86/CPUID: adjust extended leaves out of range
>> clearing" (both are neighbors in that over 4 months old series,
>> fair parts of which could imo go in irrespective of the unsettled
>> dispute on xvmalloc() - unfortunately I had made that patch 2 of
>> the series, not expecting it to be blocked for so long, and then
>> presumably signaling to others that the rest of the series is also
>> blocked).
> There is no shrinking to be done in this case.  The bit is set across
> the board on AMD/Hygon hardware, even on older parts.
>
> What does need changing however is the logic to trim max_extd_leaf down
> to what hardware supports, so the bit is visible on Rome/older
> hardware.  I.e. after this change, all VMs should get 0x80000021 by
> default on AMD hardware.
>
> (A curious observation of Milan hardware is that it actually advertises
> 0x80000023 as max_extd_leaf, and has two leaves of zeros at the end. 
> I've got an open query about this.)

Something like this:

diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 050cd5713e..d9eb2878c5 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -311,6 +311,7 @@ static void __init calculate_raw_policy(void)
 static void __init calculate_host_policy(void)
 {
     struct cpuid_policy *p = &host_cpuid_policy;
+    unsigned int max_extd_leaf;
 
     *p = raw_cpuid_policy;
 
@@ -318,7 +319,18 @@ static void __init calculate_host_policy(void)
         min_t(uint32_t, p->basic.max_leaf,   ARRAY_SIZE(p->basic.raw) - 1);
     p->feat.max_subleaf =
         min_t(uint32_t, p->feat.max_subleaf, ARRAY_SIZE(p->feat.raw) - 1);
-    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, p->extd.max_leaf &
0xffff,
+
+    max_extd_leaf = p->extd.max_leaf;
+
+    /*
+     * For AMD/Hygon hardware before Zen3, we modify LFENCE to be dispatch
+     * serialsing.  Extend max_extd_leaf beyond what hardware supports, to
+     * include the feature leaf containing this information.
+     */
+    if ( cpu_has_lfence_dispatch )
+        max_extd_leaf = max(max_extd_leaf, 0x80000021);
+
+    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, max_extd_leaf & 0xffff,
                                           ARRAY_SIZE(p->extd.raw) - 1);
 
     cpuid_featureset_to_policy(boot_cpu_data.x86_capability, p);



Only compile tested.  Needs checking on Zen2 or older.  The Raw policy
should have the real max_extd_leaf, while host and derived should have
0x80000021.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:26:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:26:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110606.211129 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfX7-0002eD-Tx; Wed, 14 Apr 2021 13:26:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110606.211129; Wed, 14 Apr 2021 13: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 1lWfX7-0002e4-QT; Wed, 14 Apr 2021 13:26:17 +0000
Received: by outflank-mailman (input) for mailman id 110606;
 Wed, 14 Apr 2021 13:26: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 1lWfX6-0002df-Du; Wed, 14 Apr 2021 13:26: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 1lWfX6-0002Ds-7n; Wed, 14 Apr 2021 13:26: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 1lWfX5-0005z5-Up; Wed, 14 Apr 2021 13:26:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWfX5-0006et-UJ; Wed, 14 Apr 2021 13:26: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=G6yx1ga5nte2exPBrZeYXp49QAgGPDrg6WvyuH+ZAUs=; b=0tXGP2XD+rOybRetAv8N6msp2i
	nQFE4sFTlUbiQM0wLTZ4adBcbYRWceVDh0DkkBemMY83G1JviZ9v0l4x739k+8BSJSeOW8Np8gOob
	k+JIYxZGfox3tKP2PCpuvOdOMd7EragKwCvsufme9brsSLGMg+erUXn8X47vVmG06U48=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161102-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161102: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-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-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=89698becf06d341a700913c3d89ce2a914af69a2
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 13:26:15 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                89698becf06d341a700913c3d89ce2a914af69a2
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  256 days
Failing since        152366  2020-08-01 20:49:34 Z  255 days  431 attempts
Testing same since   161064  2021-04-12 18:39:33 Z    1 days    2 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                 fail    
 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                                  fail    
 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                           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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1325253 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:28:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:28:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110620.211144 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfYx-0002rp-CY; Wed, 14 Apr 2021 13:28:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110620.211144; Wed, 14 Apr 2021 13:28:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfYx-0002ri-9X; Wed, 14 Apr 2021 13:28:11 +0000
Received: by outflank-mailman (input) for mailman id 110620;
 Wed, 14 Apr 2021 13:28:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWfYw-0002rc-33
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:28:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 23758cd2-c43a-403b-ac08-7390b9446401;
 Wed, 14 Apr 2021 13:28:09 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 72089B090;
 Wed, 14 Apr 2021 13:28: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: 23758cd2-c43a-403b-ac08-7390b9446401
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618406888; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Eswvml/h9CypC5NWorICAKrA1v1MHT8rqCegSLlllDg=;
	b=iQImrvLsnv0D+fNbfGm/B9Yv60Di5klOWI/yFQdZZARZzFZFhkhNMiZuOJtDaQcJHdKa2X
	GfpHZheQTBnvmTOc25zMaMLVXg7hGw+gwYw0OCa8YV8YDgbGgj47qjG1giP60fNkj/f2Ux
	6qwhbE9C1bkqkQbCHlvUFG3QhfzflKw=
Subject: Re: [PATCH v2 04/21] libs/guest: introduce helper to fetch a system
 cpu policy
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-5-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1e630294-56e1-ab04-06db-5b942269a0c0@suse.com>
Date: Wed, 14 Apr 2021 15:28:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210413140140.73690-5-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 13.04.2021 16:01, Roger Pau Monne wrote:
> Such helper is based on the existing functions to fetch a CPUID and
> MSR policies, but uses the xc_cpu_policy_t type to return the data to
> the caller.
> 
> Note some helper functions are introduced, those are split from
> xc_cpu_policy_get_system because they will be used by other functions
> also.
> 
> No user of the interface introduced on the patch.
> 
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

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


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:37:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:37:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110627.211156 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfhS-0003uP-8P; Wed, 14 Apr 2021 13:36:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110627.211156; Wed, 14 Apr 2021 13:36:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfhS-0003uI-51; Wed, 14 Apr 2021 13:36:58 +0000
Received: by outflank-mailman (input) for mailman id 110627;
 Wed, 14 Apr 2021 13:36:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWfhR-0003uD-0g
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:36:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f668348c-b336-42ee-8f8b-56c468d8ef25;
 Wed, 14 Apr 2021 13:36:55 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F41D0AEF8;
 Wed, 14 Apr 2021 13:36: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: f668348c-b336-42ee-8f8b-56c468d8ef25
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618407415; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=QwXYZUsNAPlU3TCDm0e4/thm+p5NJtUWnxek+st3b+c=;
	b=Ecdi9v41zn6eORTjiQA4va6umg/ccuTTdDX/ulg6smpJDXS79wj/JEOyCdGg8wLEJUZEk7
	xZ9WQeghiciM59Qbhh5RZPqQkFtZzc87Eqd3tsEoteO+1RzX+RJgzaqL3SzHUmFy49nUme
	pwvgAeOmGOAyqojdhxObxggvPpqr8j8=
Subject: Re: [PATCH v2 14/21] libs/guest: introduce helper to check cpu policy
 compatibility
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-15-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <f20144fb-9ed5-1819-1d00-13506ba2178e@suse.com>
Date: Wed, 14 Apr 2021 15:36:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210413140140.73690-15-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 13.04.2021 16:01, Roger Pau Monne wrote:
> --- a/tools/libs/guest/xg_cpuid_x86.c
> +++ b/tools/libs/guest/xg_cpuid_x86.c
> @@ -925,3 +925,22 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
>  
>      return rc;
>  }
> +
> +bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
> +                                 const xc_cpu_policy_t guest)
> +{
> +    struct cpu_policy_errors err = INIT_CPU_POLICY_ERRORS;
> +    struct cpu_policy h = { &host->cpuid, &host->msr };
> +    struct cpu_policy g = { &guest->cpuid, &guest->msr };
> +    int rc = x86_cpu_policies_are_compatible(&h, &g, &err);
> +
> +    if ( !rc )
> +        return true;
> +
> +    if ( err.leaf != -1 )
> +        ERROR("Leaf %#x subleaf %#x is not compatible", err.leaf, err.subleaf);
> +    if ( err.msr != -1 )
> +        ERROR("MSR index %#x is not compatible", err.msr);

Personally I'm against making assumptions like these ones about what
(in this case) INIT_CPU_POLICY_ERRORS actually expands to (i.e. three
times -1). I can see how alternatives to this are quickly going to
get ugly, so I'll leave it to others to judge.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:37:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:37:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110633.211167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfiG-00041M-M5; Wed, 14 Apr 2021 13:37:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110633.211167; Wed, 14 Apr 2021 13: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 1lWfiG-00041F-Iq; Wed, 14 Apr 2021 13:37:48 +0000
Received: by outflank-mailman (input) for mailman id 110633;
 Wed, 14 Apr 2021 13:37:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O5rk=JL=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWfiF-000419-A0
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:37:47 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 324f73a0-416a-40bf-bcac-8210dd6ae24b;
 Wed, 14 Apr 2021 13:37: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: 324f73a0-416a-40bf-bcac-8210dd6ae24b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618407466;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=m3G5bwKNdY5NDinTToRZFVdVjR9zU2NYqUMcnJvj7mg=;
  b=HDdKOtRQ0N2hxMed0XzL9OC0bFPqEajIUu4KvSBkZG9rLVrS7cVrcxvn
   9mbvuLJEKclChuAITKiG7dTQqbd4XiGIl876sLmR9oR/H5GDImpiRQKAs
   ViZc8h9/ofxp6PhahPxktPnwaoJg+gnshKKF4RknClQUBI+b/d+okmRER
   s=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: LerZZRyA23BiGxvBbmBlVPKkrljyB3yn3Z6NX0VMz2MTwSktBH+uyds8DjUDOWHtg5P90Fiu0Y
 GXGbDIrktv5nEVYOPhjiNvwzoSLfonJtm50Jf/GxSl8fbaLCgFJqskcIlwetIThTXRAKMej5bc
 HgEffIbKQYraz/7KBG7xqHTpQOjQiA9Dp3OPRyA7Zg80JuRkur9V8wH6HjU00fY8AHPzUlbwxh
 oMCvr8wqbVPjJvib/Zb/dCd6niZsv1vxwN8iGU7lRq8jlkP7cV79rc1WqKR3GzlKbUuvepr63C
 Uu0=
X-SBRS: 5.2
X-MesageID: 41570130
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Z8Xh+qn3Vi3398RNs050EgtJFj/pDfNRjmdD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLNhX4uKdDLN/E+lNptr44en+T3vHCXi6vVQvJ
 0QEJRWIObbSWJ3hcOS2mmFOv4rytWf7eSMjeDR039iQWhRGtBdxi1SYzzra3Febg9AGJY/Cd
 647s1IuzKvdR0sH7SGL1MCWPXOoMCOqYL+bXc9dl4awSSHkD/A0s+GLzG2xREbOgk/posK0W
 +AqADh47XmjvfT8G6j60by9JJQod371594KffksKMoAxHNrirtW4h7Qb2Fu1kO0aKSwXInis
 PFrRtlH+kb0QKsQkiPrRHg2xbt3V8VghePpjH48B6TxfDRfz40B9FMgohUaHLimjUdlepxzb
 5R2Cahv4dXZCmwwRjV3cTCVB1hiyOP0AIfuNMTlHBWXM8/b7JcvOUkjTloOaoABy7z5cQbFv
 BvBqjnlY1rWG6dBkqp2FVH8ZiNRXI1JxGcXwwrhaWuuQR+rTRc4WNd3tAVmncb7pI6TPB/it
 jsA+BNrvVjX8UWZaVyCKMqWs2sEFHARhrKLSa7PUnnPLtvAQOOl7fHpJEOoM26cp0By5U/3L
 7bVklDiGI0c0XyTeWTwZxw9AzXSmnVZ0Wp9uhuo7xC/pHsTrviNiOODHo0ldG7nvkZCsrHH9
 G+JYxRGP2mCWf1A45G00nfVvBpWD0jefxQnux+d0OFo8rNJIGvnPfcauzvKL3kFithVXj4Bn
 cFQTjvNMRN5k2mQRbD8V7sckKoXna60YN7EaDc8eRW4pMKLJdwvg8cjkn85szjE0wajoUGOG
 9FZJ/3mKKyome7uUzS6X9yBxZbBkFJpLHpU3ZAox4WI1r5GIxz4+m3SCR35j+qNxV/R8TZHE
 p0vFJs45+6KJSW2GQlENKoMmWTinMJv3KUR5IAmqmOjP2VPa8QP9IDYuhcBA/LHxt6lUJBs2
 FYcjIJQUfZC3fzk6m/lYcVA+vebtF4hw+uLadv2CninHTZgftqamoQXjaoX8LSvB0nQCBMgE
 Ztt4UFhqCbpDqpIWwjoegxPVFWcl6LCLZeAAntXvQPppnbPCVLCUaDn3izlgw6cGuCzTRguk
 XRaQmvPcztLnUYkHZCyaru+E5zbQymDjBNQ0E/l5Z8G2TAsmt0ysmRaMOIojSsQ2pH/8VYCh
 b5W38pBj5WrurHiCK9kCqeFHkg25UlNvHcCrNmaL3IxnaxMuSz5NQ7Nu4R85B/ON/0tOgXFe
 qZZg+ONTv9T/gkwgqPux8eSWdJgWhhlfPjwxv+6mekmHY5HPrJOVxjLotrb+20/izhR/yS1o
 9+gs9wteysMn/pYtrDza3MdTZMJlfSpmGxJttY5qx8rOY3tLFpGYPcXiaN3HZb3A8mJMOxjV
 gAWs1Akfv8E54qe9ZXdzNS/1IvmtjKJEw3shbuCut7eV02lXfUM96A/rKgk8tvPmSR4A/rfV
 WP+SxU+PnIGzGO0rMXEKo8K2VbYkpU0gUuwMqSM4nLTAm6feBK+1S3dmKneLhGUa6fBPEeqA
 1579zgpZ7eSwPonATL+T11LaJF/zz5HYe8AAeQFfVJ9NL/M1KWmaeu6NOyijCySTbTUTVvua
 RVMUgLKsJEgX0+iYdy1C64QKn+uFgknFtT+isPrC+m5qG2pGPAWVhbOgjYiIhMVTZdMnKUnd
 3ImNLoo0jV8XxAw93fD09ecdFFBsgIQoX2JyloL9IMvLTAxdtnvg1TJBE0D2A9jzjh3+Rpmb
 ehsc+iL9HfNQ==
X-IronPort-AV: E=Sophos;i="5.82,222,1613451600"; 
   d="scan'208";a="41570130"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dAmog8hdcOd9J5KLxGnhInijQpGp/4AyzRWDcOoXoWSrrPEDKgi0+D34/P9p063N4kJp91GzpbmoOLaopJpOCBEAIv8UQeCmfKhIHj6JC75cI2f9m9h5k6hkL4x7KB10o07ndwB3vasoZXDNf2pMgFcDYFr/rbxd5wwgHb+tx7X+GH/45aTKcbtEsxriU36/xHE8BhAOgQCY81MWS3qPj/mnlytr1l+apDqE7iToR+gAaffxlmYqH5cjg67RQnYP8XZfgV+TBxpO4U+bGtMcdNxWvmMyRQGzKmcS1ITpbdF4/JZ5dZKRX/0BlM7nSuLXYvFC0lbbRasZV0r13E4o4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Soq1EBdFHw/yXJPdksV/Nn1vxVrkLWEhIiQuluttx6w=;
 b=V0kCcxJYdI8Oq5t3jNEDWyfRqK4nMz4SXQXLoxPuhIte0Tb1mGQvWjOCnFk88KpwTH7PuQ0Iz02wrCL+0FNL3q1OXEAA5uBPTpmA9KDyn1VfBmkcPVqpTjLmfsVpnjgAKcyCPeOwgmtw+jF0rCTYo/T/esqHwDTmoycJrCvKOT8FNo7c+ccxF4aKp2gfl2BfzfRRPc43zcjHDGPl3I5ZLiosolE1j16cJs2Or+hBgnmM1seN91+vekZH9/ZE0n8emA5ZW7xEJcLvi+9fXHAZfpH4OjHgnxRv9f0hz1YVZigL52yE/AgMtzTUOdB5j35QQkwVIqh/S/U0vHjjVsQLag==
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=Soq1EBdFHw/yXJPdksV/Nn1vxVrkLWEhIiQuluttx6w=;
 b=Ts6VY5pembH5Ss6oXWK5R45smCFZ7dBCCruQwu2uJAJc0SFYcD7ImLDM3aE6/a5xuzwibMLTtVV9svG/PrFxlZWc0n8I5aik26Z3NMNtUIFKIa4NHfAs+PXQKIbObcW8aO28/8N5jVBVEbKhQyUxDEx1b4WSkrI3dHe2Pl0C0GI=
Date: Wed, 14 Apr 2021 15:37:36 +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>, Jun
 Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3 09/11] x86/vpt: switch interrupt injection model
Message-ID: <YHbwII1L1O7AjJhl@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-10-roger.pau@citrix.com>
 <3cb01098-887b-c952-1f93-e89c443ba471@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <3cb01098-887b-c952-1f93-e89c443ba471@suse.com>
X-ClientProxiedBy: MRXP264CA0040.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::28) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8bc9185b-ef96-4078-94fb-08d8ff4a7ab7
X-MS-TrafficTypeDiagnostic: DM8PR03MB6232:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM8PR03MB6232F67E8F282200FA8BA16A8F4E9@DM8PR03MB6232.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: JeFnfenPYJJj8C9koQZR+PYXdbhc6o/A0hL70CVmN9qmppAvPWHTq4X6yWA4I/RdtTYkAqmmQZFZlCZLZLV5eoqYWu0UAIsi5fb91MdaKYJcWncXhXyJPbwoThUrO8WX9nv0QYyqd4uLoXSRVYj8qZbcHbkHsbgpB/RBvl2JUcAEBeB+Y/EYVEwZGnjlD/SCCRKda9ZGz0QjjFxt/QzVSdOIc2e5Sg4mIAOZL2LCMkhmaZxrSJO3pcEivV6Lt5s7QfeRtJ3wOHluVTwjViA0Hcq+NJT0pTWaFGYG116KnnTXDgEoRtZDKoHQ230vpBAb9ByD2ItY1dTQGxRU535Bk77m01IyKQDT6dhx+UiYYQaD1TRnNqbRyI7hEZoooBNxo7ZZRw9vIyQwSUiOV+2yScQfIy0AKKbzA1PbRi37XlyH4tUe11xU+DNPkhfdbOG8Z7HRuTVWVnOmbAfhoweYkL74PN+U8vtpBPgWiJzgyS8AXuqr6ZAs5dTOjVJ/qW//2vp6icGv6/K2F2yU7jE4o8mahmTkVmie7/p5NFO93Gj1xX0ah9EqR975Tv9NaE2emwifDo9Okj2NLXJyUEKM3rQMJINIKFSYPkRS+avdmOE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(39860400002)(376002)(346002)(366004)(396003)(16526019)(5660300002)(53546011)(26005)(6496006)(186003)(83380400001)(38100700002)(478600001)(6486002)(4326008)(8936002)(956004)(33716001)(8676002)(54906003)(86362001)(85182001)(2906002)(66946007)(66556008)(66476007)(9686003)(6916009)(6666004)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?TGp5dVQxdTdhTTdMb3lsUT09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 8bc9185b-ef96-4078-94fb-08d8ff4a7ab7
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 13:37:42.6774
 (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: jOoFbBE5O3zKPbWF3B9M9wYTxRyuOe9lD94QYRHoqczudhxl83XwKtsFLeytGViG7krhPngSFsPm8aFAZ6ifDQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR03MB6232
X-OriginatorOrg: citrix.com

On Wed, Apr 14, 2021 at 12:28:43PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:33, Roger Pau Monne wrote:
> > ---
> >  xen/arch/x86/hvm/svm/intr.c   |   3 -
> >  xen/arch/x86/hvm/vmx/intr.c   |  59 ------
> >  xen/arch/x86/hvm/vpt.c        | 334 ++++++++++++++--------------------
> >  xen/include/asm-x86/hvm/vpt.h |   5 +-
> >  4 files changed, 143 insertions(+), 258 deletions(-)
> 
> Nice.
> 
> > @@ -285,189 +238,144 @@ static void pt_irq_fired(struct vcpu *v, struct periodic_time *pt)
> >              list_del(&pt->list);
> >          pt->on_list = false;
> >          pt->pending_intr_nr = 0;
> > +
> > +        return;
> >      }
> > -    else if ( mode_is(v->domain, one_missed_tick_pending) ||
> > -              mode_is(v->domain, no_missed_ticks_pending) )
> > +
> > +    if ( mode_is(v->domain, one_missed_tick_pending) ||
> > +         mode_is(v->domain, no_missed_ticks_pending) )
> >      {
> > -        pt->last_plt_gtime = hvm_get_guest_time(v);
> >          pt_process_missed_ticks(pt);
> >          pt->pending_intr_nr = 0; /* 'collapse' all missed ticks */
> > +    }
> > +    else if ( !pt->pending_intr_nr )
> > +        pt_process_missed_ticks(pt);
> 
> Did you lose a -- here? I.e. does the condition mean to match ...
> 
> > +    if ( !pt->pending_intr_nr )
> >          set_timer(&pt->timer, pt->scheduled);
> > +}
> > +
> > +static void pt_timer_fn(void *data)
> > +{
> > +    struct periodic_time *pt = data;
> > +    struct vcpu *v;
> > +    time_cb *cb = NULL;
> > +    void *cb_priv;
> > +    unsigned int irq;
> > +
> > +    pt_lock(pt);
> > +
> > +    v = pt->vcpu;
> > +    irq = pt->irq;
> > +
> > +    if ( inject_interrupt(pt) )
> > +    {
> > +        pt->scheduled += pt->period;
> > +        pt->do_not_freeze = 0;
> > +        cb = pt->cb;
> > +        cb_priv = pt->priv;
> >      }
> >      else
> >      {
> > -        pt->last_plt_gtime += pt->period;
> > -        if ( --pt->pending_intr_nr == 0 )
> 
> ... this original code? Otherwise I can't see why the condition
> guards a pt_process_missed_ticks() invocation.

I think the logic here changed enough to not match anymore. Certainly
pending_intr_nr shouldn't be decreased there, as pt_irq_fired is
invoked after an EOI in this patch, instead of being invoked when a
vpt related interrupt was injected. I think I should better rename
pt_irq_fired to pt_irq_eoi and that would make it clearer.

FWIW, decreasing pending_intr_nr should only be done after an
inject_interrupt call.

> > @@ -617,20 +556,29 @@ void pt_adjust_global_vcpu_target(struct vcpu *v)
> >      write_unlock(&pl_time->vhpet.lock);
> >  }
> >  
> > -
> >  static void pt_resume(struct periodic_time *pt)
> >  {
> > +    struct vcpu *v;
> > +    time_cb *cb = NULL;
> > +    void *cb_priv;
> > +
> >      if ( pt->vcpu == NULL )
> >          return;
> >  
> >      pt_lock(pt);
> > -    if ( pt->pending_intr_nr && !pt->on_list )
> > +    if ( pt->pending_intr_nr && !pt->on_list && inject_interrupt(pt) )
> >      {
> > +        pt->pending_intr_nr--;
> > +        cb = pt->cb;
> > +        cb_priv = pt->priv;
> > +        v = pt->vcpu;
> >          pt->on_list = 1;
> >          list_add(&pt->list, &pt->vcpu->arch.hvm.tm_list);
> > -        vcpu_kick(pt->vcpu);
> >      }
> >      pt_unlock(pt);
> > +
> > +    if ( cb )
> > +        cb(v, cb_priv);
> >  }
> 
> I'm afraid until we raise our supported gcc versions baseline, v and
> cb_priv will need an initializer at the top of the function just like
> cb.

Will add such initializations.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:41:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:41:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110639.211180 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWflh-0004tp-6t; Wed, 14 Apr 2021 13:41:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110639.211180; Wed, 14 Apr 2021 13:41: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 1lWflh-0004ti-3D; Wed, 14 Apr 2021 13:41:21 +0000
Received: by outflank-mailman (input) for mailman id 110639;
 Wed, 14 Apr 2021 13:41:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWflg-0004td-7a
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:41:20 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d9c2eea6-c43a-4c8e-a600-b9dd8353b2ed;
 Wed, 14 Apr 2021 13:41:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d9c2eea6-c43a-4c8e-a600-b9dd8353b2ed
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618407679;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=CuW4GChSy3K0inls+sGXpEmVhpze0Q8Itp50UrHtW+4=;
  b=E1eNU17gy0NR06SZc8CKsodxD/4KeNqhgQ8v2j7xBcPucCDrkY/bLPxZ
   wJFOIVhUB7/hcaPMiQDU8ApudwpO4bWX0VWqxbg/cvppIp5iHWdCOD2jI
   xNLyo8jex3dJnGQ4D+pLgKfbjk0MNXMsFBvRmjWsG2uLCJjUZUUalIPr9
   g=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 7Vbzq3/NvzhaMz4EpoN7aiFGUi3uCmgNlmU7+Loj6N43WWG98VW+5bX3OOeeV4nenURCzDecPv
 fje8JMXHN5W51Su9/O92YwaTQz6sK5NCf0i8DyXU40K1IbfezNrsB+BmOiB0sWC/FIWaHQ2AKo
 3NZXf8vSJ7THqd2Kxqnbt6glarL4s4E6/o+N9fbKZbcendN4a6T8GsBt+wnPVrqVb2dkAx/Q0D
 GOIM0Jqy27EAkiPYpXAL5HhGiz3ta4J6GSOwaRt7amTRD8ek0N5xmC6rYU90/iHGMfyt3ViD88
 VKg=
X-SBRS: 5.2
X-MesageID: 41570510
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HrZFgaOjpgB/H8BcT0jw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZqQHIMxbVstRQ3a
 IIScNDIfX7B1RikILe6A63D94vzLC8gduVrM31pk0dLj1CQadm8gt/F0K/Gkp5WAFJCfMCZe
 Chz+BAoCetfmlSU9SjChA+LqL+jvDotLajWx4JABY79BKD5AnF1JfWGwWVty1uNA9n7qwl9Q
 H+8jDRxqLmiP2jzw+Z6mm71eUvpPLE6v9uQPOBkdIULDKEsHfkWK1EV6eZtD445MGDgWxa9u
 XkmBsrM8Rt5365RAjcznXQ8jLt3zo053jpxUXwuwqbneXCWDk4B8Bd7LgpECfx1ks6sNlwlI
 JN0m6J3qAnaS/ooSXn69DEEyxtj0q/yEBS9NI7sno3a+sjQY4UibZa0FJeEZ8GEi6/wpsgCv
 NSAMbV4+sTWU+GbljC11Mfj+CEbzAWJFOrU0ICssua33x9h3Zi1XYVw8QZgzMp6I89cZ9Z/O
 7JW54Y2o1mf4szV+ZQFe0BScy4BijmWhTXKl+fJlzhCeUhN2/SrYX0pJE4/vujdpBN7JZaou
 WBbHpo8UoJP27+A8yH25NGtjrXRn+mYDjrwsZCo5djvLnxQ6fqLD2DRFgin9DImYRdPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFM0Z0+xLGW6mk4buEMnHp+bbePHcKP7GCjA/QF7yBX
 MFQXz2LMVE5Ua7R2/gjHHqKjbQU3262ag1PLnR/uAVxoRIHJZLqBIphVOw4dzOLyZDvKwwdE
 53O6jmjau/uGmz8Q/zniVUEysYKnwQzKTrUntMqwNPGVjza6w/t9KWfn0XwGGKPQZlT8TdEB
 dWolN+/a7fFe3V+QkST/acdk6KhXoao3yHC6oGkqqY/MH/Z9cTFZA9QpF8Eg3NCj14kQtns3
 14dQcBX0PTfwmezpmNvdgxPqX/f8M5qBq3KcRUwEivyHm0lIUKfD8neBKAFeSQmh0jQjJIgE
 YZyd5ivJOw3RC1KWU+h+wkNkZrc2r/OsMLMC2MeJhUlrf3eAt5UGeNgniAhwsuf3fxnn9i+V
 DJPGmaf+rGDUFavW0d2qH28ElsfmHYZE5obGtm2LcNXFjuqzJ20eWRYLC03HbUYlwewvsFOD
 WtW0pkHip+g9S23gWSgjCMCDEvwYgvJPXUCPAmf6vI0n2gbI2OmqduJY4jwL91cNTvuPQMS+
 SRZkucKy75Efog30iNvWk+URME2kUMgLftwlno/WK41HkwDb7bJ0lnXagSJ5WZ43L/T/iF3Z
 1lhbsOzKONG3S0bsTDxbDcbjZFJB+Wu2KwQu0yoZ1fvK45ttJIbu3meCqN0GsC0AQ1Lc/ymk
 9bXb9y56rZPJRzO8MVYCBU8zMS5Z+yBVputhazBOAwfVsg1SCGe9yI5qfFsropDAmKohDqNV
 yW7i1a+LPEUkK4pM4nIrN1JX4Tbk42rGlm9qeFcYbbDQ2xbeFN/FagKBaGAcpgYbnAHa9Vtw
 pw5tGDgvSeeCX50h3BpDcTGNM+z0+3BcepRB+WEeFG89amKU2Bj6uj7sm0lir2Q1KAGjclrJ
 wAc1cRYMRFgiQji4Ny0jHacN2Inn4Y
X-IronPort-AV: E=Sophos;i="5.82,222,1613451600"; 
   d="scan'208";a="41570510"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=g+XQo6Ac+dtLHQcSDk1MiAuHyOlN/Iz5Q0RbuK9V3A2M+mXgTv0sdcTXIY6FgJZ66PSRmlGRO7caILbAjAxfi0083l1RT7UmjeuCifgDRQZcPOO4aq8fXOFgRTj9PDWhrZJyR2e6fOjB2cE49TYy3Y3JLShiuQhuuIoFFFMIg5I/Mm2v6iGc4tYhAmJ0OKqrbGZP0N0GvDI9N50DFsZduGUtPEj6WhdYg2k5pQ3axob3tXqEMk1+M63jpPkU4KKHglwzr5WUPa051PI3X6nhSwZ3DsDTTa4ZWQWc4uMOo7ypUl9n2K/0yyMLCUy6WyRnX1WrHmdwptV2YoMFQledaA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dqtg7qa7mTbcV8PXzy13ZVTCs6LATias4ge66MlhjOk=;
 b=RtTARlLLoT7C3vJBYJVf19vyPLf3Rq862psqWFTptCxTADM0R4CkUqg5qaQQJKydna6Gg6VECwWuLCcI1oDuZgi7V33TUT9okSKTgIDJ5/U+0tMASf706KmB1mAKgUAmHT5KmRLKID7H4uBONNffuAxoYBL3HLUkeFJ/1qftXpQhnjLdwmnOarh5ZBwuLJyanHQIxQdTjrKlhu2GX1/98V52aTO+o+Zvjoo7vnLN9tdjqI7SSJawP1dlMK44JzHStoUvHRU42CpFHcR6D+plaCab6gvg1PYPY4zkO/TrzdqtM3PIxopiszgMsk4Sz/79RaaeqGACvbpOw6BxS62O6A==
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=dqtg7qa7mTbcV8PXzy13ZVTCs6LATias4ge66MlhjOk=;
 b=BUTiOjFUSBs05wVd5WDEXRqR3UeX1zg8hLMRBClsT97u+4u8MjvrSbu4+6ON25+KuPztRRU3NNdQs4q++TU+Bc9w+f1ne/NLLCJYK5Uh2WSkkxGuWPV6saP6/tnry2lPnp/725fnIh8J4v8VxZwKKrLW5ycbKGus7J75Wdl3SEI=
To: Jan Beulich <jbeulich@suse.com>
CC: Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>,
	<xen-devel@lists.xenproject.org>, Roger Pau Monne <roger.pau@citrix.com>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
 <29e8e2a4-3489-17b9-849b-ddfeed76451d@suse.com>
 <5fa30ed1-967e-dcd1-b9cf-110708f2c069@citrix.com>
 <6f9ef9fe-4e1e-ea1a-53f8-7c98e6bfdf24@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
Message-ID: <6bb29b7c-6918-6b2d-aedd-bcdc1bec2613@citrix.com>
Date: Wed, 14 Apr 2021 14:41:07 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <6f9ef9fe-4e1e-ea1a-53f8-7c98e6bfdf24@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0020.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:62::32) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 1a08b542-ddaa-4c9d-3590-08d8ff4af87c
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5438:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5438D03558BF81D153A8CC5FBA4E9@SJ0PR03MB5438.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 8D6q+SHpOrjSxrUzOaBE/w3ZG+eKSB9gYBzauhubivHRMQl8eVemNAyVtRUvX8jxe2SWZhMWW4Lgg9wtKWz8vsxC1cfKZjcDRwcXnt4F+qPOHyXqBgIqbSNnDU1V69TqzwTI6YkAQmCrOE7hV5sgvFEm8xFBputeTfpwYI3gE31kUl614T1tqdnKvzZFertcT7oLUY7V2PihWQ7/XI2digq4cycSlCvAfOPBACyaRWUyaDFK0kOMDuzuoL3SbPG48KKTpRd6rL5tQu4FMwg4ZPcA88P6gyy3bCtqJDuWyWUuiX1OKPaffpXpjXhLbHvnsWRH7X8m1ZN5uebC2CGyhD9WuLq3+Uq+w33o6G4lQeqYox+TWz4XmjpYklM+GaxbN/7RsG32yBUorLTUKh6NZtp0gvmXgyXf9dSIgvbuzxnzDsoedCehQjK5jvdSmuoVbR/gLqYy3B5dP8gn6zawRQXfA+8dzwY6XiTS0Ag24iqZzOKQVAPOmPmEsk9pacwczb2BKWlnM0eS4TW6PCDV1S/p9nIQhlZ1DTuSOQe0SF2fsEGohQr79H9Gef1UpLCkIU9rLLE4mACsSYQ9I3kFePF3+l1WinYsTS3Qfr8saqGcGnZ2S/MS3yPHItnNKWFbs/FY8srTxLERkuXme8pIFEQjwSD10D1VB63G5QylEXEVSPK+SuY/CsXAZweaswEP
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(346002)(39860400002)(136003)(396003)(376002)(2906002)(6916009)(26005)(31696002)(66476007)(66556008)(66946007)(53546011)(36756003)(38100700002)(8676002)(31686004)(956004)(2616005)(16576012)(86362001)(8936002)(107886003)(83380400001)(5660300002)(6486002)(316002)(4326008)(6666004)(54906003)(16526019)(186003)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 1a08b542-ddaa-4c9d-3590-08d8ff4af87c
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 13:41:13.6106
 (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: hDgCyPBl6rhhW8n8tBQXINMi7yQORkipZ9sVGepFARki77q0MVNObHcKaSTcA2cMyDmF22F29S35aAZ6QdfEx61CW42hsy5v2GOUPfq1dw4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5438
X-OriginatorOrg: citrix.com

On 14/04/2021 14:24, Jan Beulich wrote:
> On 14.04.2021 15:05, Andrew Cooper wrote:
>> On 14/04/2021 13:57, Jan Beulich wrote:
>>> On 14.04.2021 13:04, Roger Pau Monne wrote:
>>>> @@ -264,6 +265,38 @@ struct cpuid_policy
>>>>              };
>>>>              uint32_t nc:8, :4, apic_id_size:4, :16;
>>>>              uint32_t /* d */:32;
>>>> +
>>>> +            uint64_t :64, :64; /* Leaf 0x80000009. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and featu=
res. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000b. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000c. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000d. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000e. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000f. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000010. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000011. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000012. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000013. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000014. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000015. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000016. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000017. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000018. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifie=
rs. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001a - Performance relat=
ed info. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature infor=
mation. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001c. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties.=
 */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/No=
de IDs. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryp=
tion. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
>>>> +
>>>> +            /* Leaf 0x80000021 - Extended Feature 2 */
>>>> +            union {
>>>> +                uint32_t e21a;
>>>> +                struct { DECL_BITFIELD(e21a); };
>>>> +            };
>>>> +            uint32_t /* b */:32, /* c */:32, /* d */:32;
>>>>          };
>>>>      } extd;
>>> Due to the effect of this on what guests get to see, I think this
>>> wants to take my "x86/CPUID: shrink max_{,sub}leaf fields according
>>> to actual leaf contents" as a prereq, which in turn may better
>>> remain on top of "x86/CPUID: adjust extended leaves out of range
>>> clearing" (both are neighbors in that over 4 months old series,
>>> fair parts of which could imo go in irrespective of the unsettled
>>> dispute on xvmalloc() - unfortunately I had made that patch 2 of
>>> the series, not expecting it to be blocked for so long, and then
>>> presumably signaling to others that the rest of the series is also
>>> blocked).
>> There is no shrinking to be done in this case.=C2=A0 The bit is set acro=
ss
>> the board on AMD/Hygon hardware, even on older parts.
>>
>> What does need changing however is the logic to trim max_extd_leaf down
>> to what hardware supports, so the bit is visible on Rome/older
>> hardware.=C2=A0 I.e. after this change, all VMs should get 0x80000021 by
>> default on AMD hardware.
> As to this last sentence - not really. Only if we managed to set the
> flag (if it needs setting).

... or we find it already set.=C2=A0 Remember that we don't even offer an
option to let the user avoid this behaviour.

The only case where we'll boot with lfence not being dispatch
serialising is when we're virutalised under a pre-2018 hypervisor with
has no Spectre knowledge.=C2=A0 There are more important things in life, th=
an
to worry about this case.

> It's a two-way thing really: If the flag ends up set, I agree there's
> no need to shrink max_extd_leaf. But if the flag ends up clear, the
> issue we have today (hence my patch) becomes worse: Trailing all zero
> leaves would result because we don't properly reduce the maximum from
> what hardware reports to what is actually populated. In any event - I
> think I'd much rather see issues with my patch pointed out, if any.

I don't have a problem with the shrinking change in principle, but it is
definitely not a prereq to this change.

Trailing zeroes aren't going to cause guests to malfunction, even if
we'd ideally be neater about the result.

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:43:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:43:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110645.211191 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfnN-000525-NG; Wed, 14 Apr 2021 13:43:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110645.211191; Wed, 14 Apr 2021 13:43:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfnN-00051y-KH; Wed, 14 Apr 2021 13:43:05 +0000
Received: by outflank-mailman (input) for mailman id 110645;
 Wed, 14 Apr 2021 13:43:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=35og=JL=goodmis.org=rostedt@kernel.org>)
 id 1lWfnM-00051t-Ho
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:43:04 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cc90edb3-2595-4841-961f-4655d508c43f;
 Wed, 14 Apr 2021 13:43:03 +0000 (UTC)
Received: from gandalf.local.home (cpe-66-24-58-225.stny.res.rr.com
 [66.24.58.225])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mail.kernel.org (Postfix) with ESMTPSA id 7569E611AD;
 Wed, 14 Apr 2021 13:43: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: cc90edb3-2595-4841-961f-4655d508c43f
Date: Wed, 14 Apr 2021 09:43:00 -0400
From: Steven Rostedt <rostedt@goodmis.org>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>,
 <linux-trace-devel@vger.kernel.org>, <xen-devel@lists.xenproject.org>,
 Dario Faggioli <dfaggioli@suse.com>, Enrico Bini <enrico.bini@unito.it>
Subject: Re: A KernelShark plugin for Xen traces analysis
Message-ID: <20210414094300.7fbd6887@gandalf.local.home>
In-Reply-To: <094c4b3f-3988-c51f-3a69-cfbc8d6a45bf@citrix.com>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	<20210413114614.4971caff@gandalf.local.home>
	<094c4b3f-3988-c51f-3a69-cfbc8d6a45bf@citrix.com>
X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Wed, 14 Apr 2021 11:07:33 +0100
Andrew Cooper <andrew.cooper3@citrix.com> wrote:

> On 13/04/2021 16:46, Steven Rostedt wrote:
> > Hi Giuseppe,
> >
> > On Tue, 13 Apr 2021 16:28:36 +0200
> > Giuseppe Eletto <giuseppe.eletto@edu.unito.it> wrote:
> > =20
> >> Hello,
> >> I want to share with you a new plugin developed by me, under the
> >> supervision of Dario Faggioli, which allows the new version of KernelS=
hark
> >> (the v2-beta) to open and view the Xen traces created using the "xentr=
ace" tool.
> >>
> >> In fact, KernelShark is a well known tool for graphical visualization
> >> Linux kernel traces, obtained via "ftrace" and "trace-cmd". Anyway tha=
nks
> >> to its modular architecture, it is now possible to implement plugins w=
hich
> >> open and display traces with arbitrary format, for example, as in in
> >> this case, traces of the Xen hypervisor. =20
> > I'm guessing you have trace events coming from Xen itself?
> >
> > =20
> >> For more information on how to build the plugin and/or
> >> to view the source code I leave the repository below:
> >> https://github.com/giuseppe998e/kernelshark-xentrace-plugin
> >>
> >>
> >> In short:
> >>
> >> $ sudo apt install git build-essential libjson-c-dev
> >> $ git clone --recurse-submodules
> >> https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
> >> $ cd kernelshark-xentrace-plugin/
> >> $ make
> >>
> >> $ export XEN_CPUHZ=3D3G # Sets the CPU frequency ((G)hz/(M)hz/(K)hz/hz)
> >> $ kernelshark -p out/ks-xentrace.so trace.xen
> >>
> >>
> >> You will need the development version of KernelShark, available here:
> >> https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git =20
> > This will soon be the main repository, as we are going to deprecate the
> > version in the trace-cmd.git repo soon. And because libtracecmd 1.0 has
> > already been released.
> >
> > =20
> >> A screenshot of the plugin in action is available here:
> >> https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master=
/.github/img/ks-xentrace.png
> >>
> >> I'm happy to receive whatever feedback you may have about it,
> >> and to answer any question.
> >> =20
> > Thanks for doing this. What would be nice is to have the xen traces alo=
ng
> > side the linux tracing. Perhaps we can update trace-cmd agent to work w=
ith
> > Xen as well. Does xen implement vsock or some other way to communicate
> > between the guests and the Dom0 kernel? If not, we should add one. The =
you
> > could do the following:
> >
> >  1. On each guest, run as root: trace-cmd agent --xen
> >  2. On Dom0 run: trace-cmd record -e (events on Dom0) \
> >      --xen (commands to do tracing in Xen HV) \
> >      -A <guest-name1> -e (events on guest)
> >
> > And then you would get a trace.dat file for Dom0 and the guest, and also
> > have a trace file for Xen (however that is done). And then on KernelSha=
rk,
> > we have a KVM plugin in development that does this. But you can do the =
same
> > with Xen.
> >
> > For KVM, we have:
> >
> >  1. On each guest: trace-cmd agent
> >  2. On the host: trace-cmd record -e kvm -e sched -e irq \
> >       -A guest-name -e all
> >     The above produces trace.dat for the host trace, and=20
> >      trace-<guest-name>.dat for the guest.
> >  3. kernelshark trace.dat -a trace-Fedora21.dat
> >
> > (I have a guest called Fedora21).
> >
> >   http://rostedt.org/private/kernelshark-kvm.png
> >
> > Where you can see the kvm hypervisor task KVM-2356 is the host task run=
ning
> > the guest VCPU 0, and you see the switch between the two.
> >
> > Perhaps we can do something like that with Xen as well. The plugin is s=
till
> > in the works, but should be published soon. And when it is, you could u=
se
> > that as a template for Xen. =20
>=20
> A possibly tangential question.=C2=A0 Where does KernelShark's idea of CP=
Us
> (i.e. real logical threads) come from?

It comes from the plugin that parses the file.

KernelShark can take multiple inputs. We have a plugin internally at VMware
that can read trace data from ESX and produces CPUs and Tasks on top of
them. In ESX tasks are actually called "Worlds".

>=20
> In a Xen system, dom0 is just a VM, and particularly on larger servers,
> may not be as many vcpus as the system has logical threads.

Yes, I have some idea of how Xen works. When I was hired at Red Hat in
2006, my first job was to work on Xen. I even ported "logdev" (the
predecessor to ftrace) to the Xen hypervisor).

>=20
> This causes major problems for `perf` support under Xen, which assumes
> that the kernel's idea of CPUs matches that of the system.

Things are different with KernelShark.

>=20
> When rendering a trace including Xen data, Xen can provide the real
> system CPUs, and dom0 wants to be rendered as a VM under Xen, similar to
> trace-Fedora21 in your screenshot above.=C2=A0 (Obviously, if you're doing
> nested virt, things need to start nesting.)

Right.

What I would envision how this would work, is that you would produce a
set of tracing files. One for each guest (including Dom0), and one for the
Xen hypervisor itself. The trick is to have a way to synchronize the time
stamps. What we just did with KVM is to have all the tracing record the
CPUs TSC, including the shift and multiplier that the CPU might change for
the guests. Then we have a way to convert the TSC to nanoseconds. This way
all tracing data has the same clock. It's somewhat complicated to get
right, and requires access to how the guests clocks are modified by the CPU.

For KVM, each machine has a unique id and is stored in the trace.dat files.
We have the host store a mapping of what thread represents which guest VCPU
(virtual CPU). Then the "-a" option tells KernelShark to append the
tracing data as a dependency. I would imagine we can have something like
this:

 kernelshark xen.dat -a trace-dom0.dat -a trace-guest1.dat -a trace-guest2.=
dat

The Xen plugin would then need to read the how the threads in xen.dat map
to the virtual CPUs of each of the guest files. Which would give you the
layering.

To give you a better idea about the CPU mappings, before I enabled the KVM
combo plugin (that maps the VCPUS with the host threads), kernelshark comes
up like this:

  http://rostedt.org/private/kernel-shark-kvm2.png

Where the first 8 plots represent the host CPUs and the next two represent
the guest CPUs.

Finally, we have been thinking about nesting VMs. It's been in our thoughts
from the beginning, and we worked to make sure that the design can be
extended to handle it. We haven't done anything with nested VM mappings, as
we are trying to sort out all the issues with just mapping a single guest to
host. ;-)  But yes, when we do support nested VMs, We could show the host
thread, the guest-host thread, then the top guest CPU stacked on top of
each other.

As everything is done via plugins, the options are limitless ;-)

-- Steve


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:45:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:45:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110650.211203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfq9-0005Cd-4n; Wed, 14 Apr 2021 13:45:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110650.211203; Wed, 14 Apr 2021 13:45:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfq9-0005CW-1x; Wed, 14 Apr 2021 13:45:57 +0000
Received: by outflank-mailman (input) for mailman id 110650;
 Wed, 14 Apr 2021 13:45: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 1lWfq7-0005CP-GN
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:45: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 1lWfq6-0002XD-BA; Wed, 14 Apr 2021 13:45:54 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWfq6-0004zt-45; Wed, 14 Apr 2021 13:45: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=jm+fWQ+EH4Aa4ZewHwbynSWPdjUodwEPZuXrLz2X3J4=; b=KpnVVcYN36nl7oDuBkFFnjPBkd
	mOD8jQHcmzh6kJu1TJ9EJ/8NcEzCIIINp61GzKtWsjFJSsX2LW+cCPQzi605KsfhWgj1cwiHQfAeF
	siOtJMBnSBhRSyk3lboT/ZGmooWksIpFJzH/WBLjGcXdBFu6HohD3GwHG1IBFaTawnkk=;
Subject: Re: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is NULL
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <rahul.singh@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-3-luca.fancellu@arm.com>
 <3424d24f-b189-c125-7b84-96848bbdcfd7@xen.org>
 <04326BA4-6E73-44BA-AB19-8F2B99000D8B@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <269e20a7-9f2c-f989-0ea0-7ab6c6bb9c11@xen.org>
Date: Wed, 14 Apr 2021 14:45:52 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <04326BA4-6E73-44BA-AB19-8F2B99000D8B@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Luca,

On 14/04/2021 12:29, Luca Fancellu wrote:
>> On 14 Apr 2021, at 12:16, Julien Grall <julien@xen.org> wrote:
>>
>> Hi Luca,
>>
>> On 14/04/2021 10:14, Luca Fancellu wrote:
>>> Among the common and arm codebase there are few cases where
>>> the hardware_domain variable is checked to see if the current
>>> domain is equal to the hardware_domain, change this cases to
>>> use is_hardware_domain() function instead. >
>>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>>> ---
>>> v4 changes:
>>> - removed unneeded check for domain NULL from is_hardware_domain
>>>    introduced in v3
>>
>> After this change, this patch is only avoid to open-code is_hardware_domain(). Although, it adds an extra speculation barrier.
>>
>> I am not against the change, however I think the commit message needs to updated to match what the patch is doing.
>>
>> Can you propose a new commit message?
> 
> Hi Julien,
> 
> Yes I agree, what about:
> 
> xen/arm: Reinforce use of is_hardware_domain
> 
> Among the common and arm codebase there are few cases where

I would drop 'common' because you are only modifying the arm codebase.

> the hardware_domain variable is checked to see if the current
> domain is equal to the hardware_domain, change this cases to
> use is_hardware_domain() function instead.


> In the eventuality that hardware_domain is NULL, is_hardware_domain
> will return false because an analysis of the common and arm codebase
> shows that is_hardware_domain is called always with a non NULL
> domain pointer.

This paragraph seems to come out of the blue. I would drop it.

How about:

"
There are a few places on Arm where we use pretty much an open-coded 
version of is_hardware_domain(). The main difference, is the helper will 
also block speculation (not yet implemented on Arm).

The existing users are not in hot path, so blocking speculation would 
not hurt when it is implemented. So remove the open-coded version within 
the arm codebase.
"

If you are happy with the commit message, I will commit it the series 
tomorrow (to give an opportunity to Stefano to review).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:48:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:48:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110654.211216 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfsb-0005LP-Jp; Wed, 14 Apr 2021 13:48:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110654.211216; Wed, 14 Apr 2021 13:48:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWfsb-0005LI-GW; Wed, 14 Apr 2021 13:48:29 +0000
Received: by outflank-mailman (input) for mailman id 110654;
 Wed, 14 Apr 2021 13:48:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yF16=JL=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lWfsa-0005LD-45
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:48:28 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:7e1a::602])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e77d77cb-7106-4f02-867b-da82c25a2eda;
 Wed, 14 Apr 2021 13:48:25 +0000 (UTC)
Received: from DU2PR04CA0187.eurprd04.prod.outlook.com (2603:10a6:10:28d::12)
 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.4020.21; Wed, 14 Apr
 2021 13:48:23 +0000
Received: from DB5EUR03FT030.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:28d:cafe::1b) by DU2PR04CA0187.outlook.office365.com
 (2603:10a6:10:28d::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend
 Transport; Wed, 14 Apr 2021 13:48:23 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT030.mail.protection.outlook.com (10.152.20.144) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.17 via Frontend Transport; Wed, 14 Apr 2021 13:48:23 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Wed, 14 Apr 2021 13:48:23 +0000
Received: from 2d75c8666bb1.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4B508318-6164-43B2-9C90-B3196AB57037.1; 
 Wed, 14 Apr 2021 13:47:54 +0000
Received: from EUR03-AM5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2d75c8666bb1.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 14 Apr 2021 13:47:54 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VE1PR08MB5775.eurprd08.prod.outlook.com (2603:10a6:800:1a0::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17; Wed, 14 Apr
 2021 13:47:52 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4020.022; Wed, 14 Apr 2021
 13:47:52 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0049.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:152::18) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.21 via Frontend Transport; Wed, 14 Apr 2021 13:47: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: e77d77cb-7106-4f02-867b-da82c25a2eda
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Jv5tpFVsPfH2f4UuEmfi6lMjjnlbZkYldOCHFYrL/7A=;
 b=fnIVbJQrta9IB6Ou6uT4fyDxN5k1Yq742Fo5TLECPXiBuAIt+8ZNn32dFcg8V/bKA610rnZA4hEY13WInWVCwz3+wCjYUtYZfHxfaL6+zHNcJ0nN2aFQbr44azqk6JnhFKvdz0MMiDSU0pPrwwmGg98/Ulmau4SJDiQ+/oklMQw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 4016c72cc0b90b9b
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=M6AbnAIeO1NZOQv5JXPgfJRxRdi9J1P2J41Sz4s/HzTm/pevpbPRWCbpN/MaPWUrDlwCu9vfbXsIIGIKoNVengTu39vA7TmZ8h8eeV/HJiTR5xCXqWBy42AKKc+EKjrcy0tUOJpjwoNkthieGfcdwixgnY2ZIxSTJwlGqzRtnZP9KqkS6kR70D+pHduMZcwEfrNRMuwdgQVVpmAUfcQ3KMb3jFsMlFrnG+k1B8D97Ym7EGhAJq352VQT5RkD57r79Jkx/iJQFsyVkwBhaInT4Swk6JoWRqR9LYEekGWJZQVXLwaxYAY2AfCLS6hdnWG9mLmzS/8T/E3ynHok62O4MQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Jv5tpFVsPfH2f4UuEmfi6lMjjnlbZkYldOCHFYrL/7A=;
 b=IWM8MBqKGoO3sOwkcfwE0v+tKezzfnlXnpDWtaoAk9BLgLTMrm97BzgxVFy9XM4l3Uto+jLJryHSoJYvJFFDcIeIAE6g0jMjWqR/Dxcoe6zMYHUXgXZvvDkRWvxXmdQFY6kMwtr6QhFDJgNlcRvSCPxIeVoj8pxMZT4e87fuG5ANJw3z0q4X9qT0/KA0nupr+k9yIkMjhzEqbmWbR/Fv56NNKKnOVabm0JPVnjjzil1HgPyYBIzSb/wppd7aJjGkOLXm9B6Zjv2LB3hpejmALtCgfVzv4KFe9NaqUWFUXPujRak7Ww5wJuZn366F4oCIyAgYX+uWfkpGdjpWmrh69Q==
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=Jv5tpFVsPfH2f4UuEmfi6lMjjnlbZkYldOCHFYrL/7A=;
 b=fnIVbJQrta9IB6Ou6uT4fyDxN5k1Yq742Fo5TLECPXiBuAIt+8ZNn32dFcg8V/bKA610rnZA4hEY13WInWVCwz3+wCjYUtYZfHxfaL6+zHNcJ0nN2aFQbr44azqk6JnhFKvdz0MMiDSU0pPrwwmGg98/Ulmau4SJDiQ+/oklMQw=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=us-ascii
Subject: Re: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is NULL
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <269e20a7-9f2c-f989-0ea0-7ab6c6bb9c11@xen.org>
Date: Wed, 14 Apr 2021 14:47:45 +0100
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <rahul.singh@arm.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <F5760FAD-466F-46EC-A3A4-BAC2B5E73BC8@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-3-luca.fancellu@arm.com>
 <3424d24f-b189-c125-7b84-96848bbdcfd7@xen.org>
 <04326BA4-6E73-44BA-AB19-8F2B99000D8B@arm.com>
 <269e20a7-9f2c-f989-0ea0-7ab6c6bb9c11@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0049.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:152::18) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 79fc0931-b286-413b-3c3a-08d8ff4bf8f4
X-MS-TrafficTypeDiagnostic: VE1PR08MB5775:|AS8PR08MB6008:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AS8PR08MB60082BF76EA6DAB98CF232B3E44E9@AS8PR08MB6008.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 UScNSOzTRau4SVjSzueTjhAmTAKJewFW9KYH4KmPWRUn0AHX/xxjob6zm7gmhdyp62S70cCc0sWgjD7O4X1qwdnziw3uKZUIxgaTB43w/yH+jJvNFbuMi+Mor1ABrBGjz0NSxLgw28UL3nzrEXeFnZVt7RLk2iW8iRV6rbdxkyTqB7PatJAMyRfxmR14lY63kvMVJxTACy8Oee5T5EIEkfuxAVzXdA5//ifHGmroXCDPykhc0N/xvcWCkFTlfsPpnsu9Y3u40VZCcQbw3S+SEE5DwuKd3P4oWoRT7VAtGaAi9hqUuhoV7fNILH/T58YUD+h8wWf/CJN++V3iGUNWJU8y75u7Gjmbj89ByRCR1iQoxPXXomS/1jvgybtlvtmrjAEo30hafSTQHJRpC4t/nkLq3I9GFRlBDsTGOKvWGhJFsWqgct5W+0YUhsR+rOrndvB7lukmmzq76hAIjnj0npBS0pGXtzNYZMn+/M8GfFrI+/btKXNFjdtzu+oIlvVokVO2cLHythlAzo4CiDvRAHvMpZBYGBR1f5WlvFgCITmwBzBEh2sChs69RcC7+yd0pbVvoZriwpsFa19pFCyCUJar0N43QHbtpAKah0TDsTzKk7+8jAN7fM9DI7wuarIyDWj5XS5Sw2MFYEU6y0xcQpiiH+PT5JgnJTRMKZNBf5uzLIgLtxeG4xml7LdIY76x
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(44832011)(2906002)(54906003)(7696005)(52116002)(53546011)(2616005)(38350700002)(498600001)(38100700002)(186003)(5660300002)(86362001)(33656002)(16526019)(956004)(83380400001)(66476007)(8676002)(26005)(66946007)(8936002)(6486002)(6666004)(66556008)(36756003)(4326008)(6916009)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 =?us-ascii?Q?04UBOkP0CY/bjnGBQ9jQvLGxw8Sa//Qrz2pkBiSgNU89UrtcVq9sZUdbXuSO?=
 =?us-ascii?Q?xQcmjc18c6+kGnDCGdMGPfLIsP+DOi4tL9S0ZnjNjzcWmUyC98hqrt6e20tv?=
 =?us-ascii?Q?rWFcUaNXWsLNyaXS+diwA4E6pu4e6VFKMWueqTfxBs8IpCI1d80E1LT07oOv?=
 =?us-ascii?Q?HleATed0JIyM3sh3R+lBMYAdWP5OpCeMDrhZ/8rYVqDMQIguceKF4YXU8jgK?=
 =?us-ascii?Q?t0kw0FqFk422DlhsVve/q9TicUSGwfkVKuxP1gKzBsNGdAxNcTHkjDDS32a9?=
 =?us-ascii?Q?YXZ6s7YMDjC7KL90W9QAE8dfqNzPseIoTeADXslJkv1txw1YTwxQ2P/V4XOQ?=
 =?us-ascii?Q?wCDNx8OH0X7eKOdInBzHOwg3xPf6nvdTIv2hR7RwNBH98fBifzLx2g+DrB+B?=
 =?us-ascii?Q?hsZDaIiea9sZLg8D7AhzZhQoNst5YFBsTCrHdOZb3nrOXWV2IFTIm2vefqxq?=
 =?us-ascii?Q?pcnPo3+R17tiSjvQSvhht8HAIB0u6WVG4UmIVTeOfFkpOf9nLJlQjgsyzUlm?=
 =?us-ascii?Q?41Sw9t0b2xBniAJSl7B1ys0BR+X0raFOR8EE+LLSbS513PqkyaaH9SCRUQs4?=
 =?us-ascii?Q?C+dpYMejRusgga5uLMXRyPlbtU75Gz/IJMfND3s89D7ztpbm3z4Wvzv6PiM/?=
 =?us-ascii?Q?6rYoAhr4qn2tInBc7GlFnfQ/CRAF4bGYkw2UlsEe5tczExZHbvYgluPsY/rs?=
 =?us-ascii?Q?jrxmdePpJlslO+IaWBf3bGVXFT2yYKEJvRl5GlUIgPn73i6Saby5SFcFWFFa?=
 =?us-ascii?Q?e/WXZAi/VzGPzlSmJPdDXANrMajpHX3eLTnetxm52AtfnkSMwhFcBkdvfufQ?=
 =?us-ascii?Q?al1OrYrGR76dpeUvooCOGvjGUvUMAXKMVVAoOHz6SPVgHsqeUCllzQltSIe6?=
 =?us-ascii?Q?GLjAZ2nNrXjLjM7nwND82BJr+xOkOJ3hkYT1l/JUislbMRfJ4sSXPKgiCaX4?=
 =?us-ascii?Q?VxwpERndd58mMPs7HmUESh17sZRHHBFRSVeRY6AAWG8ukwuHHOFgfdFiaqJR?=
 =?us-ascii?Q?yRNelFniouRxzim+JHkF0JFW7jPwBd/shHal1TmDsrfx27t5XzNOIyqW/Ko3?=
 =?us-ascii?Q?7hYRPW/rRrHcVznVHkSVPl0zy7ELKCG+xDc09oqa+x+YsH2QId+Bew0sZdF7?=
 =?us-ascii?Q?R+DViYPv/hBK3+VbGlp8sm+uelfRCUMIs90CIFtmSL0v7+cJlQLfdw+xn/Pk?=
 =?us-ascii?Q?a43gJe/GZUcOloR+PQCwMtbNaNTO1hI12e9oOHZ8cR9wbhEwa5Vp4YNKIbnV?=
 =?us-ascii?Q?bKmG7WkZhJPBUD9/qK+PKvUl2zh1CH7iFHpURe4UigjUozKKb0tSjxcFfo7S?=
 =?us-ascii?Q?LKaS5sGE0gYm2Ovz9kl90EUW?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5775
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT030.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e94c4d86-9625-43bc-ec27-08d8ff4be65b
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oD81GxrhllmL+qmsdyusSIxSehoOEIaQnwEEl3vMGc0Ot9fow5FVXkQiabo3rhyl1PKO0aB3zY/O/o14j1ZOprU730oK+S07/y2wGFyFHMk1B/rfUE+4+GWF7vjzCmSCtxORY/BRnAobi06vlNmq/dC8GSGlnI7ZL9aNlcoslsVxn2qOLBICjRmJSakIsT8Ffs6tXhKkcXygVbJTzWYHaMqJYpW6eMrgPsV1XIbi3C3aEW0EXnaLqOg+orLjVok+Tv5R60Yb6kkiSubGJHrUFx3RDZzPFW6B7nYdcuT8gNHWUqXvjj/oIDvcZfi8AvN6FTlkZSpF5u/EsFKXftp9C/GMOWWhhVoxgj2NGVU5vA9l7717XTK5m6NE7tcUU9J3cgdReoKuoIPk8o67meq6OA+lRVUcXpqcnlTuaEve63+0uc4Lz+C8O1p16+EnXLzGAeEp36nvihz4gj0xHTouAREliAjCglZO1WoJLYP7ylrUA8m0Tv9FSVUQGp4f0EjQB67ozIoqQXA88lbtGm+wOBR+nqE1sFwrLcsp+eV7toiU7Sn9yB+c4wFh0jnviRC6YWBm9IEMXa51wpnbMZhmeZ8v2AlEzhRUKz1d4kcZ4FcDMqqzxW9nKvuAZxh8rYw26UW0miRhzoYyCxUUxfFHD8BucKSJ4Q3167qDfQM4t6E=
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:(4636009)(39830400003)(346002)(396003)(136003)(376002)(36840700001)(46966006)(356005)(36756003)(8936002)(8676002)(81166007)(6666004)(70586007)(86362001)(2616005)(316002)(44832011)(47076005)(26005)(478600001)(82310400003)(956004)(2906002)(336012)(186003)(70206006)(5660300002)(4326008)(16526019)(6486002)(53546011)(6862004)(83380400001)(36860700001)(33656002)(7696005)(54906003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 13:48:23.7246
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 79fc0931-b286-413b-3c3a-08d8ff4bf8f4
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:
	DB5EUR03FT030.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6008



> On 14 Apr 2021, at 14:45, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Luca,
>=20
> On 14/04/2021 12:29, Luca Fancellu wrote:
>>> On 14 Apr 2021, at 12:16, Julien Grall <julien@xen.org> wrote:
>>>=20
>>> Hi Luca,
>>>=20
>>> On 14/04/2021 10:14, Luca Fancellu wrote:
>>>> Among the common and arm codebase there are few cases where
>>>> the hardware_domain variable is checked to see if the current
>>>> domain is equal to the hardware_domain, change this cases to
>>>> use is_hardware_domain() function instead. >
>>>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>>>> ---
>>>> v4 changes:
>>>> - removed unneeded check for domain NULL from is_hardware_domain
>>>>   introduced in v3
>>>=20
>>> After this change, this patch is only avoid to open-code is_hardware_do=
main(). Although, it adds an extra speculation barrier.
>>>=20
>>> I am not against the change, however I think the commit message needs t=
o updated to match what the patch is doing.
>>>=20
>>> Can you propose a new commit message?
>> Hi Julien,
>> Yes I agree, what about:
>> xen/arm: Reinforce use of is_hardware_domain
>> Among the common and arm codebase there are few cases where
>=20
> I would drop 'common' because you are only modifying the arm codebase.
>=20
>> the hardware_domain variable is checked to see if the current
>> domain is equal to the hardware_domain, change this cases to
>> use is_hardware_domain() function instead.
>=20
>=20
>> In the eventuality that hardware_domain is NULL, is_hardware_domain
>> will return false because an analysis of the common and arm codebase
>> shows that is_hardware_domain is called always with a non NULL
>> domain pointer.
>=20
> This paragraph seems to come out of the blue. I would drop it.
>=20
> How about:
>=20
> "
> There are a few places on Arm where we use pretty much an open-coded vers=
ion of is_hardware_domain(). The main difference, is the helper will also b=
lock speculation (not yet implemented on Arm).
>=20
> The existing users are not in hot path, so blocking speculation would not=
 hurt when it is implemented. So remove the open-coded version within the a=
rm codebase.
> "
>=20
> If you are happy with the commit message, I will commit it the series tom=
orrow (to give an opportunity to Stefano to review).
>=20

Hi Julien,

Yes your version is much better, thank you very much!

Cheers,
Luca

> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:49:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:49:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110658.211228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWftA-0005Qx-TZ; Wed, 14 Apr 2021 13:49:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110658.211228; Wed, 14 Apr 2021 13:49:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWftA-0005Qq-QB; Wed, 14 Apr 2021 13:49:04 +0000
Received: by outflank-mailman (input) for mailman id 110658;
 Wed, 14 Apr 2021 13:49:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWftA-0005Qj-6l
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:49:04 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 37e6e066-d268-4e71-ba80-bba9dd57ddc6;
 Wed, 14 Apr 2021 13:49:03 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 62BD3AFD2;
 Wed, 14 Apr 2021 13:49: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: 37e6e066-d268-4e71-ba80-bba9dd57ddc6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618408142; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=oRPq2/vYACH6nua6suekQSNoK5M+eBcLDGoKFsrwq/4=;
	b=ggzKMge9FhetJABKNbrMfpDUJxjKIztlro9o0P63vN1EPku6lU6ByDgTc/7r85H1H2Cl5x
	5yQjS8PX6ZrFJcEdxKuD+LGqy+dK/YbA0TEgS+u61ai7uXfNSv+qqbWGukdq61phjJF5pC
	lAo1U01NQuio7mSfxlrD7WptuH5t2Fg=
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
Date: Wed, 14 Apr 2021 15:49:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210413140140.73690-16-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 13.04.2021 16:01, Roger Pau Monne wrote:
> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
>  
>      return false;
>  }
> +
> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
> +{
> +    uint64_t val = val1 & val2;;

For arbitrary MSRs this isn't going to do any good. If only very
specific MSRs are assumed to make it here, I think this wants
commenting on.

Also, nit: stray semicolon.

> +    switch ( index )
> +    {
> +    case MSR_ARCH_CAPABILITIES:
> +        /*
> +         * Set RSBA if present on any of the input values to notice the guest
> +         * might run on vulnerable hardware at some point.
> +         */
> +        val |= (val1 | val2) & ARCH_CAPS_RSBA;
> +        break;
> +    }
> +
> +    return val;
> +}
> +
> +static bool level_leaf(xen_cpuid_leaf_t *l1, xen_cpuid_leaf_t *l2,

const (twice)?

> +                       xen_cpuid_leaf_t *out)
> +{
> +    *out = (xen_cpuid_leaf_t){ };
> +
> +    switch ( l1->leaf )
> +    {
> +    case 0x1:
> +    case 0x80000001:
> +        out->c = l1->c & l2->c;
> +        out->d = l1->d & l2->d;
> +        return true;
> +
> +    case 0xd:
> +        if ( l1->subleaf != 1 )
> +            break;
> +        out->a = l1->a & l2->a;
> +        return true;

Could you explain your thinking behind this (a code comment would
likely help)? You effectively discard everything except subleaf 1
by returning false in that case, don't you?

> +    case 0x7:
> +        switch ( l1->subleaf )
> +        {
> +        case 0:
> +            out->b = l1->b & l2->b;
> +            out->c = l1->c & l2->c;
> +            out->d = l1->d & l2->d;
> +            return true;
> +
> +        case 1:
> +            out->a = l1->a & l2->a;
> +            return true;
> +        }
> +        break;

Can we perhaps assume all subleaves here are going to hold flags,
and hence and both sides together without regard to what subleaf
we're actually dealing with (subleaf 1 remaining special as to
EAX of course)? This would avoid having to remember to make yet
another mechanical change when enabling a new subleaf.

> +    case 0x80000007:
> +        out->d = l1->d & l2->d;
> +        return true;
> +
> +    case 0x80000008:
> +        out->b = l1->b & l2->b;
> +        return true;
> +    }
> +
> +    return false;
> +}

Considering your LFENCE-always-serializing patch, I assume
whichever ends up going in last will take care of adding handling
of that leaf here?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 13:57:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 13:57:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110669.211242 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWg1G-0006Xb-TT; Wed, 14 Apr 2021 13:57:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110669.211242; Wed, 14 Apr 2021 13:57: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 1lWg1G-0006XU-Qf; Wed, 14 Apr 2021 13:57:26 +0000
Received: by outflank-mailman (input) for mailman id 110669;
 Wed, 14 Apr 2021 13:57:25 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWg1F-0006XP-14
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 13:57:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8b2426b5-18a6-4385-829e-f63dac13effc;
 Wed, 14 Apr 2021 13:57:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E5FC1AE89;
 Wed, 14 Apr 2021 13:57: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: 8b2426b5-18a6-4385-829e-f63dac13effc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618408643; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=h6ETvXlbIYmiKaDbAn1EZgwXD9K6BRPPCZ0FtAWagqQ=;
	b=LHP81nxt86+zDXLGxKFI67B0tF9Qg37XsVJ7My2fd0fG0ucb8/f7GmOwoW7AZnBvNVY0QE
	B9z/Dt+JHUg5AB8gE7+gZqY0M9i8TTLYjsg4KKJoj0R04KmN+aEfGKQJjtyf1nTUbI1PCG
	FWMuwZtd1sEAHFQ1eDnBGxApR5+QZrw=
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, Ian Jackson <iwj@xenproject.org>,
 xen-devel@lists.xenproject.org, Roger Pau Monne <roger.pau@citrix.com>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
 <29e8e2a4-3489-17b9-849b-ddfeed76451d@suse.com>
 <5fa30ed1-967e-dcd1-b9cf-110708f2c069@citrix.com>
 <af2cb854-ca3f-22ee-a7b3-8c24fdecfb7e@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <12301367-e19a-5c89-5751-9937402ac099@suse.com>
Date: Wed, 14 Apr 2021 15:57:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <af2cb854-ca3f-22ee-a7b3-8c24fdecfb7e@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 14.04.2021 15:25, Andrew Cooper wrote:
> On 14/04/2021 14:05, Andrew Cooper wrote:
>> On 14/04/2021 13:57, Jan Beulich wrote:
>>> On 14.04.2021 13:04, Roger Pau Monne wrote:
>>>> @@ -264,6 +265,38 @@ struct cpuid_policy
>>>>              };
>>>>              uint32_t nc:8, :4, apic_id_size:4, :16;
>>>>              uint32_t /* d */:32;
>>>> +
>>>> +            uint64_t :64, :64; /* Leaf 0x80000009. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and features. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000b. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000c. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000d. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000e. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000000f. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000010. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000011. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000012. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000013. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000014. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000015. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000016. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000017. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000018. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifiers. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001a - Performance related info. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature information. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001c. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/Node IDs. */
>>>> +            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryption. */
>>>> +            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
>>>> +
>>>> +            /* Leaf 0x80000021 - Extended Feature 2 */
>>>> +            union {
>>>> +                uint32_t e21a;
>>>> +                struct { DECL_BITFIELD(e21a); };
>>>> +            };
>>>> +            uint32_t /* b */:32, /* c */:32, /* d */:32;
>>>>          };
>>>>      } extd;
>>> Due to the effect of this on what guests get to see, I think this
>>> wants to take my "x86/CPUID: shrink max_{,sub}leaf fields according
>>> to actual leaf contents" as a prereq, which in turn may better
>>> remain on top of "x86/CPUID: adjust extended leaves out of range
>>> clearing" (both are neighbors in that over 4 months old series,
>>> fair parts of which could imo go in irrespective of the unsettled
>>> dispute on xvmalloc() - unfortunately I had made that patch 2 of
>>> the series, not expecting it to be blocked for so long, and then
>>> presumably signaling to others that the rest of the series is also
>>> blocked).
>> There is no shrinking to be done in this case.  The bit is set across
>> the board on AMD/Hygon hardware, even on older parts.
>>
>> What does need changing however is the logic to trim max_extd_leaf down
>> to what hardware supports, so the bit is visible on Rome/older
>> hardware.  I.e. after this change, all VMs should get 0x80000021 by
>> default on AMD hardware.
>>
>> (A curious observation of Milan hardware is that it actually advertises
>> 0x80000023 as max_extd_leaf, and has two leaves of zeros at the end. 
>> I've got an open query about this.)
> 
> Something like this:
> 
> diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
> index 050cd5713e..d9eb2878c5 100644
> --- a/xen/arch/x86/cpuid.c
> +++ b/xen/arch/x86/cpuid.c
> @@ -311,6 +311,7 @@ static void __init calculate_raw_policy(void)
>  static void __init calculate_host_policy(void)
>  {
>      struct cpuid_policy *p = &host_cpuid_policy;
> +    unsigned int max_extd_leaf;
>  
>      *p = raw_cpuid_policy;
>  
> @@ -318,7 +319,18 @@ static void __init calculate_host_policy(void)
>          min_t(uint32_t, p->basic.max_leaf,   ARRAY_SIZE(p->basic.raw) - 1);
>      p->feat.max_subleaf =
>          min_t(uint32_t, p->feat.max_subleaf, ARRAY_SIZE(p->feat.raw) - 1);
> -    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, p->extd.max_leaf &
> 0xffff,
> +
> +    max_extd_leaf = p->extd.max_leaf;
> +
> +    /*
> +     * For AMD/Hygon hardware before Zen3, we modify LFENCE to be dispatch
> +     * serialsing.  Extend max_extd_leaf beyond what hardware supports, to
> +     * include the feature leaf containing this information.
> +     */
> +    if ( cpu_has_lfence_dispatch )
> +        max_extd_leaf = max(max_extd_leaf, 0x80000021);
> +
> +    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, max_extd_leaf & 0xffff,
>                                            ARRAY_SIZE(p->extd.raw) - 1);
>  
>      cpuid_featureset_to_policy(boot_cpu_data.x86_capability, p);

Well, why not set it to ARRAY_SIZE() and then have
x86_cpuid_policy_shrink_max_leaves() (from "x86/CPUID: shrink
max_{,sub}leaf fields according to actual leaf contents") have
a go? It'll recognize the non-zero leaf ... Otherwise, if we
gain a few more such special cases, things are going to get
ugly here.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 14:05:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 14:05:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110675.211258 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWg8y-0007ch-Lv; Wed, 14 Apr 2021 14:05:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110675.211258; Wed, 14 Apr 2021 14:05:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWg8y-0007ca-Ij; Wed, 14 Apr 2021 14:05:24 +0000
Received: by outflank-mailman (input) for mailman id 110675;
 Wed, 14 Apr 2021 14:05:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=WBRZ=JL=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWg8w-0007cV-Ms
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 14:05:22 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 364c1599-b3b0-4fbd-8721-12da8339a453;
 Wed, 14 Apr 2021 14:05:21 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A7F07AFC1;
 Wed, 14 Apr 2021 14: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: 364c1599-b3b0-4fbd-8721-12da8339a453
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618409120; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ueHHhtxP+TRnM85mm1rkJ25UyEPRi4fXY2kVSgrdGss=;
	b=oqaKGVWAjz+Ga0fN8LIzyYRu1rPObkfss30zCC0JWgBqJ9YeUquGzPmYsQsDbiS4cKN6af
	xXCmFxGch4FX2R0aI4xDrpX/gFwr5PHlM9p1WVk7Kk1UIVQGQi+bTgP/2WAfrS5QU6RW7e
	hEfOHxw78NS7qWb9dI7m9ZgZo3CREfM=
Subject: Re: [PATCH v3 09/11] x86/vpt: switch interrupt injection model
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>,
 Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-10-roger.pau@citrix.com>
 <3cb01098-887b-c952-1f93-e89c443ba471@suse.com>
 <YHbwII1L1O7AjJhl@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <4c65efcf-28fa-147d-8c82-7498cad19aeb@suse.com>
Date: Wed, 14 Apr 2021 16:05:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHbwII1L1O7AjJhl@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 14.04.2021 15:37, Roger Pau Monné wrote:
> On Wed, Apr 14, 2021 at 12:28:43PM +0200, Jan Beulich wrote:
>> On 31.03.2021 12:33, Roger Pau Monne wrote:
>>> ---
>>>  xen/arch/x86/hvm/svm/intr.c   |   3 -
>>>  xen/arch/x86/hvm/vmx/intr.c   |  59 ------
>>>  xen/arch/x86/hvm/vpt.c        | 334 ++++++++++++++--------------------
>>>  xen/include/asm-x86/hvm/vpt.h |   5 +-
>>>  4 files changed, 143 insertions(+), 258 deletions(-)
>>
>> Nice.
>>
>>> @@ -285,189 +238,144 @@ static void pt_irq_fired(struct vcpu *v, struct periodic_time *pt)
>>>              list_del(&pt->list);
>>>          pt->on_list = false;
>>>          pt->pending_intr_nr = 0;
>>> +
>>> +        return;
>>>      }
>>> -    else if ( mode_is(v->domain, one_missed_tick_pending) ||
>>> -              mode_is(v->domain, no_missed_ticks_pending) )
>>> +
>>> +    if ( mode_is(v->domain, one_missed_tick_pending) ||
>>> +         mode_is(v->domain, no_missed_ticks_pending) )
>>>      {
>>> -        pt->last_plt_gtime = hvm_get_guest_time(v);
>>>          pt_process_missed_ticks(pt);
>>>          pt->pending_intr_nr = 0; /* 'collapse' all missed ticks */
>>> +    }
>>> +    else if ( !pt->pending_intr_nr )
>>> +        pt_process_missed_ticks(pt);
>>
>> Did you lose a -- here? I.e. does the condition mean to match ...
>>
>>> +    if ( !pt->pending_intr_nr )
>>>          set_timer(&pt->timer, pt->scheduled);
>>> +}
>>> +
>>> +static void pt_timer_fn(void *data)
>>> +{
>>> +    struct periodic_time *pt = data;
>>> +    struct vcpu *v;
>>> +    time_cb *cb = NULL;
>>> +    void *cb_priv;
>>> +    unsigned int irq;
>>> +
>>> +    pt_lock(pt);
>>> +
>>> +    v = pt->vcpu;
>>> +    irq = pt->irq;
>>> +
>>> +    if ( inject_interrupt(pt) )
>>> +    {
>>> +        pt->scheduled += pt->period;
>>> +        pt->do_not_freeze = 0;
>>> +        cb = pt->cb;
>>> +        cb_priv = pt->priv;
>>>      }
>>>      else
>>>      {
>>> -        pt->last_plt_gtime += pt->period;
>>> -        if ( --pt->pending_intr_nr == 0 )
>>
>> ... this original code? Otherwise I can't see why the condition
>> guards a pt_process_missed_ticks() invocation.
> 
> I think the logic here changed enough to not match anymore. Certainly
> pending_intr_nr shouldn't be decreased there, as pt_irq_fired is
> invoked after an EOI in this patch, instead of being invoked when a
> vpt related interrupt was injected. I think I should better rename
> pt_irq_fired to pt_irq_eoi and that would make it clearer.

But pt_process_missed_ticks() should be called only when a tick was
missed, shouldn't it? Or actually, looking at the function, I guess
I'm confused. Does your patch change the meaning of the field?

> FWIW, decreasing pending_intr_nr should only be done after an
> inject_interrupt call.

Then this line (which you leave in place)

         pt->pending_intr_nr = 0; /* 'collapse' all missed ticks */

is contradicting the (new) model.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 14:20:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 14:20:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110680.211270 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWgNt-0000xW-2F; Wed, 14 Apr 2021 14:20:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110680.211270; Wed, 14 Apr 2021 14:20:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWgNs-0000xP-UZ; Wed, 14 Apr 2021 14:20:48 +0000
Received: by outflank-mailman (input) for mailman id 110680;
 Wed, 14 Apr 2021 14:20:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O5rk=JL=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWgNs-0000xK-6Z
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 14:20:48 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 662ee1a8-bb6d-4206-b433-ca25d34534db;
 Wed, 14 Apr 2021 14:20: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: 662ee1a8-bb6d-4206-b433-ca25d34534db
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618410046;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Bx8U9WCiCnp9KDHdKZ0/eZBBRcyxQ9CkasFIEwNdHL4=;
  b=THoW3t5gMXQ1A69iZKAiWzuNpS2e9mSCheWCeSrf1iQjvI3MyiQR01ve
   rHlzH2kQFblw//kRXXGdWPue08Wsg1El8utpalfUUJBN3BMk6y2MPsDAV
   zhjQx4sVs5XcjVuEaFK5h5FpWpGccvoJQK73c0A9+41tJmWpKDCFpqDyc
   0=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: aPhYVJrgD5peP8GxCxz5I6envNkuzYStdaCPAZOhKn3nl8MRnMmX57ZPZbbQStPES6V2YnJKYp
 83dnJPJv7CAIuilzydO/GNKmKeDa+Sm9Ylc+gQaM1vjlwTtNtfJWXM5R9h0Dxn1+W0vtjGl7Ve
 /qV4D/dUOb4yAg5EZu9ZC1oGpzPHgJjUhjgaPlNxi/rIUt0UacmlKFJr7Op6cQnvhaBr8ejQOC
 sVkaePrNIKqgXy7IpvGxAlOMoIGcYTtwxt/Q3l3KXZJTGB9E7TVv1sp2d90IGCUkjSBALeijMW
 NIU=
X-SBRS: 5.2
X-MesageID: 41710973
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:YEnOqKB3ixWHlyzlHegItMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmBEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVsUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbiSw9BEYTj9J3PMe4X
 HI+jaJnZmLntOa7lvn12HV54lLg9eJ8LV+LeGFl8R9EESPti+Gf4JkMofy2QwdgObq01oylc
 mJnhFIBbUO11r0XkWY5STgwBPh1jFG0Q6T9Xa9jWH4qcL0ABIWYvAx/L5xSRfS50o+sNwU6s
 sitAj4xvknfy/opyjz68PFUBtnjCOP0AIfuNUekmBFVs8mYKJRxLZvjX99KosKHy7x9ekcYY
 9TJfzbjcwmFW+yXjTyu2lix8GURXIjHhuKaVhqgL3q7xFm2F9+1EcW38oZgzMp8488UYBN46
 D+Pr1vj6wmdL5YUYtNQMItBfKtDGbAWwjBPQupUCLaPZBCH0iIh4/84b0z6u3vUJsUzKEqkJ
 CEdF9Dr2Y9d2/nFMXm5uwEzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQ2GKTgKr
 WOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+c06So/jMNpbhuoXgAbbuDYuoNQxhdnL0A3
 MFUjS2Dt5H9FqXVnjxhwWUdGjqfmD54JJsAInX9+Ue0+E2R8hxmzlQrW78ytCAKDVEvKBzVl
 B5OqnbnqSyonTz3Wug1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmF+OJhp1SdLqAB
 dSzm4Hvp6fHti1/2QPGtinOmWVgz84v3SRVaoRnaWF+IPDdo4nCI0lHIh8Dx/CGRAwuQsCkh
 YDVCY0AmvkUh/+g6Ssi5IZQMvFccNnvQutKclI7VTFtUudoskrbmABXyGnVPOWhQpGfUsXun
 RBt4skxJaQkzemLmUyxM4iNkdXVWiRCLVaSDieaJ5sgbDtcgFoRWKsjTiX4itDPFbCxgE3vC
 jMPCeUcfbEDh54tmpD2qjnyl9ya16QZll9cHx8rI17G1nXo3ob6575WoODl0+qLncSyOAUNz
 /IJQEfJQ5j3Pib/h+YkjTqLwRt+rweesjmSJgzebDa3X2gbLCSnaYdBvlO4dJOL9b1qNIGVu
 qZZi6YJD71EPkSxgSQv3opURME8UUMoLfN4lnI/WK41HkwDb7uO1xgXagcOMzZwG7+RfqEua
 8JxO4djK+VCCHWZdGHw62MMGIGBRPXvGKsT+Yn7bpTprk/sbNvH5/dFRvEvUs3qCkWHYPRrg
 c5Rq8+3ZXqfqlIVOYWczhC/lUomM+URXFb+TDeM6sbRxUVk3TfP9m1+LLGprokP12ZqGLLSC
 yi2hwY282AYjCK2rEbAZ8hOGh6aEAz73J54eOJHregfzmCRqVm/FCgNGW6f6IYYK+ZGa8Iph
 IS2aDEo8anMw750hvXpz11P+Zn9HumW9q7BEapFfRT+9K3fXSKja3C2r/+sB7HDR+6YV8fn4
 tLaAg5adlCkCAriMkP6ReJI5aH6n4Noh95+jFollnkx4ig7iP6JCh9QHLkq6QTeyJSPHiOhd
 nC6s6C2h3GkWB45aU=
X-IronPort-AV: E=Sophos;i="5.82,222,1613451600"; 
   d="scan'208";a="41710973"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KSAbnduxe27QuVjYqTgHHtgXF0BTX0qjOoOoCRmyjHL7xsr+dRUeeIeulimv0Hqi5tLhs1ME1dc3X2sanUIGUVhqapmsQIZtrskygQq7It7xKrNwL9psDmCTRVnybrs3iQaK+bz0SozAg4357DongIwwZDE33I14hpm7t59bcoTUexuPOBlmBcoF/7laafC0sQzoEgbN57teiCl7eod323VJzVPwPFue5QG4/MFoE0G+7oI5ZxLkNmVFbqNgyUMXYfolS+46fk67QCnQIeSOhdJVLgPtq1HqrIUhSpONg71z5gPHAZsPAkKL2al8tQuQfe15+MlYCoJRI+bNCC/ZNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Hv1DOxcKF9hGqxw18+zrAvM7H4IHqfWlC541wRvyglw=;
 b=lvx1ENjX8XvDD0Fxxy4y+/ntostu2TnVW3y43GOKS8TR08HtQaH7Y6F2CYfHdxZk+deDoxy3exwPbltorLyu0YWxupoJe6WPGm2tDvpFlxlHNzFV+qK9MeoV52pyFEEbfkeU6dfyw6khklM+MhYifZn3IwKBG2u8Ee/WghIL951GmgzAEPzLEPwymjTWz+J82s4cazYJUXs7iTI5ohWFrRCMhb92VmsIEwR/MZ4lxH9/ZxhTk0ak22ruvK2n2t0o9rWevUgW1AxxDkpemy/l4U13HGyzmAhTizwDNfXf8+wB1IupVv6YI9oJfy/wwIu0GVgP4Us5NKTo6EDHm7acIg==
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=Hv1DOxcKF9hGqxw18+zrAvM7H4IHqfWlC541wRvyglw=;
 b=o9C5FQbnXJD0sQynBIi9/2/CKQlZDUce0SiUxCeAhBkmyR9Gaf5v5s7TFxNWtFbCchKXPB4+flKz4t09gtoBNjGbITr1ajbtJfqrWRgBavcnFzfqsKn1rZUghJDJNcAb/KI8fUYlzgybltLNJ9vEsMMgPyYDCuxN4KNSfA3v0VA=
Date: Wed, 14 Apr 2021 16:20:38 +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>, Jun
 Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3 09/11] x86/vpt: switch interrupt injection model
Message-ID: <YHb6NvqwSjFzrCrt@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-10-roger.pau@citrix.com>
 <3cb01098-887b-c952-1f93-e89c443ba471@suse.com>
 <YHbwII1L1O7AjJhl@Air-de-Roger>
 <4c65efcf-28fa-147d-8c82-7498cad19aeb@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <4c65efcf-28fa-147d-8c82-7498cad19aeb@suse.com>
X-ClientProxiedBy: AM6P194CA0066.EURP194.PROD.OUTLOOK.COM
 (2603:10a6:209:84::43) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 48fc6a9d-c296-4a06-8d38-08d8ff507d71
X-MS-TrafficTypeDiagnostic: DM5PR03MB3372:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3372E8D2FFE441C48BE3E7F78F4E9@DM5PR03MB3372.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: bJPHDOWUZJVO2icg7TwLzK87CXZ+R6XXatwhNcrFz1i31GGzKxt28sHN2tGNu7eURrVHQra+lILx5xA0h3Fyz+wIzOd18gqXrDdJbYkjpmcgy57pjTiS/DlORKgDx5l7wCyZb4LwX8nylXWYw+t/gMyGkbEP9U4KTGkntyklMPFR+r6mw7X+dNbjiWWUzKUBYbnW4NeLdSBxCyknmNXhh9GiGVFc9bnXToNQJZgA9v3Nt6QQKcdSl+Ytz88JmUfVjTtcesu+8pEOcwypgXcF+eUS6qNyTjX4b7HKGT1wofarj7CVf0uOz4Rsl37o6yjVQtWNWBmeMnRsEhB+EWWKCTIziPuDHKfTS+lkCHSNDXobETyzrhQeJhsU8OQ7e100Z2QJaNL3Vfx+6Ha5BTaNDWeJT3Pk1+ECw0f9B/KFt1mIbDNtqqnCQMdmQt8tmIYpIPzjOImORxBJoGQKEj9mRz657EsT7ahxBUn3FBifEC84pbfuqKEU2U9suHpJyZpPMJjhg8a84epd4R/xNV2SBjGTJGFUUL9rfqkF6TkKDRvhfR16Ca5lcHDhoGaBhP3VTRV2dK2zPZl+3+vdDDnJh+zX48J0V4+FpOsXmzby/58=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(346002)(39860400002)(136003)(396003)(376002)(33716001)(53546011)(16526019)(38100700002)(26005)(85182001)(9686003)(66946007)(66556008)(66476007)(186003)(956004)(316002)(8936002)(4326008)(6916009)(5660300002)(54906003)(6496006)(86362001)(6666004)(2906002)(8676002)(6486002)(83380400001)(478600001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?HfwVot9peLfyxEtgVYi/gtSBiP3glUq2pfzLi4j?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 48fc6a9d-c296-4a06-8d38-08d8ff507d71
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 14:20:44.1414
 (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: 4jUu7RKKxrK6QEPuM4D6YN1fC4qDB3AE23M31Sr1ecZxOqey55fEIQeKjbTZoQWuRV9BljNRi53X59nIyR1o9Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3372
X-OriginatorOrg: citrix.com

On Wed, Apr 14, 2021 at 04:05:20PM +0200, Jan Beulich wrote:
> On 14.04.2021 15:37, Roger Pau Monné wrote:
> > On Wed, Apr 14, 2021 at 12:28:43PM +0200, Jan Beulich wrote:
> >> On 31.03.2021 12:33, Roger Pau Monne wrote:
> >>> ---
> >>>  xen/arch/x86/hvm/svm/intr.c   |   3 -
> >>>  xen/arch/x86/hvm/vmx/intr.c   |  59 ------
> >>>  xen/arch/x86/hvm/vpt.c        | 334 ++++++++++++++--------------------
> >>>  xen/include/asm-x86/hvm/vpt.h |   5 +-
> >>>  4 files changed, 143 insertions(+), 258 deletions(-)
> >>
> >> Nice.
> >>
> >>> @@ -285,189 +238,144 @@ static void pt_irq_fired(struct vcpu *v, struct periodic_time *pt)
> >>>              list_del(&pt->list);
> >>>          pt->on_list = false;
> >>>          pt->pending_intr_nr = 0;
> >>> +
> >>> +        return;
> >>>      }
> >>> -    else if ( mode_is(v->domain, one_missed_tick_pending) ||
> >>> -              mode_is(v->domain, no_missed_ticks_pending) )
> >>> +
> >>> +    if ( mode_is(v->domain, one_missed_tick_pending) ||
> >>> +         mode_is(v->domain, no_missed_ticks_pending) )
> >>>      {
> >>> -        pt->last_plt_gtime = hvm_get_guest_time(v);
> >>>          pt_process_missed_ticks(pt);
> >>>          pt->pending_intr_nr = 0; /* 'collapse' all missed ticks */
> >>> +    }
> >>> +    else if ( !pt->pending_intr_nr )
> >>> +        pt_process_missed_ticks(pt);
> >>
> >> Did you lose a -- here? I.e. does the condition mean to match ...
> >>
> >>> +    if ( !pt->pending_intr_nr )
> >>>          set_timer(&pt->timer, pt->scheduled);
> >>> +}
> >>> +
> >>> +static void pt_timer_fn(void *data)
> >>> +{
> >>> +    struct periodic_time *pt = data;
> >>> +    struct vcpu *v;
> >>> +    time_cb *cb = NULL;
> >>> +    void *cb_priv;
> >>> +    unsigned int irq;
> >>> +
> >>> +    pt_lock(pt);
> >>> +
> >>> +    v = pt->vcpu;
> >>> +    irq = pt->irq;
> >>> +
> >>> +    if ( inject_interrupt(pt) )
> >>> +    {
> >>> +        pt->scheduled += pt->period;
> >>> +        pt->do_not_freeze = 0;
> >>> +        cb = pt->cb;
> >>> +        cb_priv = pt->priv;
> >>>      }
> >>>      else
> >>>      {
> >>> -        pt->last_plt_gtime += pt->period;
> >>> -        if ( --pt->pending_intr_nr == 0 )
> >>
> >> ... this original code? Otherwise I can't see why the condition
> >> guards a pt_process_missed_ticks() invocation.
> > 
> > I think the logic here changed enough to not match anymore. Certainly
> > pending_intr_nr shouldn't be decreased there, as pt_irq_fired is
> > invoked after an EOI in this patch, instead of being invoked when a
> > vpt related interrupt was injected. I think I should better rename
> > pt_irq_fired to pt_irq_eoi and that would make it clearer.
> 
> But pt_process_missed_ticks() should be called only when a tick was
> missed, shouldn't it?

No, I think the purpose of the function is to update the
pending_intr_nr field, ie: calculate if and how many ticks have been
missed.

It's fine for pt_process_missed_ticks to return without having changed
pending_intr_nr at all if no ticks have been missed.

> Or actually, looking at the function, I guess
> I'm confused. Does your patch change the meaning of the field?

Not really, I think pt_process_missed_ticks has always had this logic.
The pending_intr_nr filed should still have the same logic, account
for the amount of missed ticks up to the value in the scheduled field.

> > FWIW, decreasing pending_intr_nr should only be done after an
> > inject_interrupt call.
> 
> Then this line (which you leave in place)
> 
>          pt->pending_intr_nr = 0; /* 'collapse' all missed ticks */
> 
> is contradicting the (new) model.

Oh, right, that's mode specific. no_missed_ticks_pending will just
drop any interrupts that haven't been injected when they should have
been. I had the 'account missed ticks' mode in mind when I wrote that.

I now have pt_irq_fired as:

static void irq_eoi(struct periodic_time *pt)
{
    if ( pt->one_shot )
    {
        pt->pending_intr_nr = 0;
        return;
    }

    pt_process_missed_ticks(pt);
    /* 'collapse' missed ticks according to the selected mode. */
    switch ( pt->vcpu->domain->arch.hvm.params[HVM_PARAM_TIMER_MODE] )
    {
    case HVMPTM_one_missed_tick_pending:
        pt->pending_intr_nr = min(pt->pending_intr_nr, 1u);
        break;

    case HVMPTM_no_missed_ticks_pending:
        pt->pending_intr_nr = 0;
        break;
    }

    if ( !pt->pending_intr_nr )
    {
        /* Make sure timer follows vCPU. */
        migrate_timer(&pt->timer, current->processor);
        set_timer(&pt->timer, pt->scheduled);
    }
}

But I think it's best if I post it as a new version, so you can see
the context.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 17:31:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 17:31:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110699.211300 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWjMH-0001uh-1O; Wed, 14 Apr 2021 17:31:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110699.211300; Wed, 14 Apr 2021 17:31: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 1lWjMG-0001ua-SY; Wed, 14 Apr 2021 17:31:20 +0000
Received: by outflank-mailman (input) for mailman id 110699;
 Wed, 14 Apr 2021 17:31:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2F6e=JL=suse.com=dfaggioli@srs-us1.protection.inumbo.net>)
 id 1lWjME-0001uC-Vp
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 17:31:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id faa5a814-f0ef-4a05-9c69-cadf835c9aad;
 Wed, 14 Apr 2021 17:31:18 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 31858B007;
 Wed, 14 Apr 2021 17:31: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: faa5a814-f0ef-4a05-9c69-cadf835c9aad
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618421477; 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=8AdUsV5+m18DdyjTG3g+kQeVCexQmrWCAmXwuTMijAQ=;
	b=Vd3sU9pDC4cBGP/+vh7Wp180dWo7vPTf7Hzq2wy0nr2Kwtd+J6Ijr3QAj+Dfb3Fx0vq6t+
	hcrZ6aCUMUNHy9HIWIPL5KoTcPw1utDQik1PPxFV2u2DTv1UywyXZga+OC31Xls6v79b4w
	wEIG1yOwTCpuCAICsr99LnDMfTXPtAw=
Message-ID: <eefc512b8c1ac26c4eaae81e79ee0243901a3de2.camel@suse.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
 =?UTF-8?Q?=E2=80=8B?=
From: Dario Faggioli <dfaggioli@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Giuseppe Eletto
	 <giuseppe.eletto@edu.unito.it>, linux-trace-devel@vger.kernel.org, 
	xen-devel@lists.xenproject.org
Cc: Enrico Bini <enrico.bini@unito.it>
Date: Wed, 14 Apr 2021 19:31:15 +0200
In-Reply-To: <f33b39a5-9bbd-934f-a9cd-c536a0ba7416@citrix.com>
References: 
	<CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	 <f33b39a5-9bbd-934f-a9cd-c536a0ba7416@citrix.com>
Content-Type: multipart/signed; micalg="pgp-sha256";
	protocol="application/pgp-signature"; boundary="=-qc+CrObLu0osWbgfz4gY"
User-Agent: Evolution 3.40.0 (by Flathub.org) 
MIME-Version: 1.0


--=-qc+CrObLu0osWbgfz4gY
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2021-04-13 at 16:33 +0100, Andrew Cooper wrote:
> On 13/04/2021 15:28, Giuseppe Eletto wrote:
> >=20
> > You will need the development version of KernelShark, available
> > here:
> > https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git
> >=20
> > A screenshot of the plugin in action is available here:
> > https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/=
.github/img/ks-xentrace.png
> >=20
> > I'm happy to receive whatever feedback you may have about it,
> > and to answer any question.
>=20
> Very nice.
>=20
> A couple of questions.=C2=A0 Which Xen libraries do you currently use map
> the
> frames?
>
Err... If I understood the question none, as the plugin loads and
parses a file, as it is produced by `xentrace`. :-)

But maybe I didn't understand the question?


> For the screenshot, there are a lot of examples where you have a
> dom:vcpu pair, and a number rendered in hex.=C2=A0 Throughout the
> hypervisor,
> we're standardising on d$v$ as a format, and e.g. d[IDLE]v$ for some
> of
> the magic domid's (0x7ff0 ... 0x7fff).
>=20
Yes, the content of the "info" column is currently a bit "raw". I
believe it should be made more similar to what `xenalyze --dump-all`
looks like, rather than to what xentrace_format` does (just to make and
example that people that have used these two tools can understand).

This is just due to the fact that we wanted to let the Xen and
KernelShark communities know about this work as soon as Giuseppe got it
working properly and reliably, to gather any kind of feedback, decide
where this should live, in the long run, (in Xen? In KS? In its own
project?), etc. :-)

Thanks and Regards
--=20
Dario Faggioli, Ph.D
http://about.me/dario.faggioli
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
-------------------------------------------------------------------
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

--=-qc+CrObLu0osWbgfz4gY
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

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

iQIzBAABCAAdFiEES5ssOj3Vhr0WPnOLFkJ4iaW4c+4FAmB3JuMACgkQFkJ4iaW4
c+5XohAAkqpWChAgyY1C4y+vXJwHP5m+MjpnA8Cf9bLtSdZW+Brpu1SNA1/Ru51J
FVzt28RrvInag6xEMdVBNv3CmEQKAsq21D0C293ldO7Xc/qcKwo+lxRHR1pUOpkc
+2PSO/mDl/z8pAgVfThyzD1r0cg9G4m2F/L0Yr+98Demc2d5q4Tdwsw89O86eohl
f9hdPgr3M/IavYZRCBvWW2muBVsE9QDTUCeoTpfJw/RslsUXlremEo7EqttYNJnv
/oKUX49DfTZTVZoA0scDnEzDgjfQHTkmmstNWKHT401niFfa9WYcUmaKLnVGnPJv
IGuXlY38RSEPO6WathL7yleQ0qJ2C7WzzdGKNrw21k+8JnHyTepMk5L3B1BI2Oj3
uaSLdfBmqSaC7QY3ym7VA0mEnSkG7o4tgst9DK/C4CSaktI/kZuQmYKu9jBerJlk
Iqr0IIboPuGgvyuGwPPfBdDQMFlH4efyr2l6s3veMQMhvgwmMTFNVXTXti+c/yNC
pMeNT/TejIL3yyuXihC8dsSUwd29V4MIIRl33mTkyCnMhhqC8eQnPCMAAKVm9Sfh
UMH5w4qyMV306+MHyOWYC1UZzPBTu6GLNvfGMjQOphaTAiRk3thRsfMvgorgNLXC
NzXPBq5e39GaHtCwMdo8yrc7Fp70YpxIjBTdF65CSo+5pM0k8wk=
=3hdl
-----END PGP SIGNATURE-----

--=-qc+CrObLu0osWbgfz4gY--



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 17:39:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 17:39:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110706.211311 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWjUU-0002D6-W2; Wed, 14 Apr 2021 17:39:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110706.211311; Wed, 14 Apr 2021 17: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 1lWjUU-0002Cz-Sm; Wed, 14 Apr 2021 17:39:50 +0000
Received: by outflank-mailman (input) for mailman id 110706;
 Wed, 14 Apr 2021 17:39: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 1lWjUU-0002Cr-2k; Wed, 14 Apr 2021 17:39: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 1lWjUT-0006tU-Mx; Wed, 14 Apr 2021 17:39: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 1lWjUT-00026H-AE; Wed, 14 Apr 2021 17:39:49 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWjUT-0000gl-9p; Wed, 14 Apr 2021 17:39: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=fFjt/5ruh2+xrOzpuUsIcz5BGxracdU4e/irYwVYsdw=; b=zyAziZerf3zy3hVT+DKefIIihy
	jlKXXNUQ4y6Unl2Q73kIOI7bs50994n70BFb70djve9RBgVwVY6HBDf1dn76GC9ZgNCgordF115xN
	Xayoc3V+9J6fwWTBqzMVCtrHijqF6jNmY40BwvsHU8DyvAwMdJZ3BuWcVuWK/Z31M/P8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161117-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161117: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:allowable
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-amd64-amd64-libvirt-vhd: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-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-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: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-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-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=264aa183ad85b2779b27d1312724a291259ccc9f
X-Osstest-Versions-That:
    xen=b0976d5c0441378b6348f5bfedbf431055bd0147
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 17:39:49 +0000

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

Failures :-/ but no regressions.

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

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10   fail REGR. vs. 160646

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160646
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160646
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160646
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160646
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160646
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160646
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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     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-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  264aa183ad85b2779b27d1312724a291259ccc9f
baseline version:
 xen                  b0976d5c0441378b6348f5bfedbf431055bd0147

Last test of basis   160646  2021-04-01 15:07:43 Z   13 days
Failing since        160665  2021-04-02 07:40:09 Z   12 days   17 attempts
Testing same since   161117  2021-04-14 03:22:45 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquis <bertrand.marquis@arm.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  Dmitry Fedorov <d.fedorov@tabit.pro>
  George Dunlap <george.dunlap@citrix.com>
  Ian Jackson <ian.jackson@citrix.com>
  Ian Jackson <ian.jackson@eu.citrix.com>
  Ian Jackson <iwj@xenproject.org>
  Jan Beulich <jbeulich@suse.com>
  Juergen Gross <jgross@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@arm.com>
  Norbert Manthey <nmanthey@amazon.de>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tim Deegan <tim@xen.org>
  Wei Liu <wl@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                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   b0976d5c04..264aa183ad  264aa183ad85b2779b27d1312724a291259ccc9f -> master


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 17:46:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 17:46:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110725.211382 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWjaZ-0003Ri-CV; Wed, 14 Apr 2021 17:46:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110725.211382; Wed, 14 Apr 2021 17:46:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWjaZ-0003Rb-9R; Wed, 14 Apr 2021 17:46:07 +0000
Received: by outflank-mailman (input) for mailman id 110725;
 Wed, 14 Apr 2021 17:46:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2F6e=JL=suse.com=dfaggioli@srs-us1.protection.inumbo.net>)
 id 1lWjaX-0003Qp-Fx
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 17:46:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a65ba570-1fcd-4250-aea4-6063e34510b8;
 Wed, 14 Apr 2021 17:46:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 06DBFAD8E;
 Wed, 14 Apr 2021 17:46: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: a65ba570-1fcd-4250-aea4-6063e34510b8
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618422364; 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=Z2g8ziAmus50KijmlfayMO50WIIrzdytTdjaNvghJ58=;
	b=ao2AhT7UTj0JIVaK5t4IyuMTfJKKRO7BIDbqsrzO0+mYsB8cwBzZaXLZqwLsxrD81gkvvK
	+GM7Htw8lIHLO/RSo86y7BrZL+MJ9Bv07sHDjiX6M1lCR80tcPxZ/gvdw4UCsQY+I2UzFl
	6LEWu9R/4jWoCRi8RRYoiZyh+MEbM/A=
Message-ID: <14510b1d24a35281362ebb0a904cd5753289f5a4.camel@suse.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
 =?UTF-8?Q?=E2=80=8B?=
From: Dario Faggioli <dfaggioli@suse.com>
To: "Yordan Karadzhov (VMware)" <y.karadz@gmail.com>, Giuseppe Eletto
	 <giuseppe.eletto@edu.unito.it>, linux-trace-devel@vger.kernel.org, 
	xen-devel@lists.xenproject.org
Cc: Enrico Bini <enrico.bini@unito.it>
Date: Wed, 14 Apr 2021 19:46:02 +0200
In-Reply-To: <8b43ae47-9d7e-a95c-4573-852d09f99662@gmail.com>
References: 
	<CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	 <8b43ae47-9d7e-a95c-4573-852d09f99662@gmail.com>
Content-Type: multipart/signed; micalg="pgp-sha256";
	protocol="application/pgp-signature"; boundary="=-8OcG1gDXAnyfPWWORqPr"
User-Agent: Evolution 3.40.0 (by Flathub.org) 
MIME-Version: 1.0


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

On Wed, 2021-04-14 at 12:25 +0300, Yordan Karadzhov (VMware) wrote:
> It is great to see such progress in the development of the Xen
> plugin.
>=20
> Can you share with us what are your plans for continuing this work.
> Is=20
> this a first prototype of the plugin, or it is an almost final
> version?
>=20
I'm only going to say that the plugin is working well with the traces
that we've thrown at it so far, so I'd say it's past the prototype
phase. :-P

As I was telling to Andrew on xen-devel, there is indeed some room for
improvement, e.g., the content of the 'Info' column is a bit "raw", and
can be made less cryptic and hence more useful.

To me (but this is just my personal opinion) a rather interesting thing
is whether something like this plugin should live in its own project or
will it be better be integrated in either Xen or KS sources...

And I'll now leave any further comments to Giuseppe himself. :-)

Thanks and Regards
--=20
Dario Faggioli, Ph.D
http://about.me/dario.faggioli
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
-------------------------------------------------------------------
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

--=-8OcG1gDXAnyfPWWORqPr
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

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

iQIzBAABCAAdFiEES5ssOj3Vhr0WPnOLFkJ4iaW4c+4FAmB3KloACgkQFkJ4iaW4
c+66HA/+LnOVRnSSmZcyQsHrM/cjOrh/o8lfz85ZhVRCpVNOVb4dfglzKsO5shw/
BPiOwcUc8nH4PA6ThZDYu0CkkzNS7ztOW65DhxW5i+LFRIosyeZFKdFUcn8Gbum5
FTHVGRyTeVtjNhufiDLqZnKsNC+nclTPhT/NDIaDFnomjgwJuHYu4EGwAnDhzAZp
DP8cz5XtM67NNO2CAiOuh1t4nDbNq6tSbmVeTexvyW4WHnpAIl2f73y0Ufhsq5Ff
effjPSil1+Y8zvyIhg+fueIKeyA8Zk7+scnBeS2y+apTNrLNmpqxG9ksAU2Fuf8i
CspVIdZl6sCiy+mdRPW+/zvOr5WSHdbgJJwreN+5WYdv3IkxZ0Nt1GzbvSG0206P
jV7+gwJTBIvmo+NfvmKMrvjpvNTt7hmPszx6XMQMnfUs57mVxgPNa7DyNQjtOS1t
CgRRbgZhI7dAnPI5HZ7rEOagkyXmum8c6W9wA3eiWDn8sJNrRADupQJiI1Vsj+MD
qLp3dHDCgA0rcXWqPHu3JfzAWh02dn+/2twVYKFeW0lT3Sn32N0Px2mMo3dLMxE0
joRDFG164T0HZsMxR+esTxE8LAuK++3t24bjgPDjN/FElqVq8b/4zdoi4mlkQNyu
+yli1UdpWqj+tszEgZTn4sDFDeoaLAl80rik1Zh5Oj3mPwlkfEU=
=OjGt
-----END PGP SIGNATURE-----

--=-8OcG1gDXAnyfPWWORqPr--



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 18:11:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 18:11:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110799.211667 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWjzB-0007bb-NK; Wed, 14 Apr 2021 18:11:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110799.211667; Wed, 14 Apr 2021 18:11:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWjzB-0007bU-KD; Wed, 14 Apr 2021 18:11:33 +0000
Received: by outflank-mailman (input) for mailman id 110799;
 Wed, 14 Apr 2021 18:11:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWjz9-0007bP-TH
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 18:11:32 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c040157b-a174-478f-9874-11aaaa4e1d21;
 Wed, 14 Apr 2021 18:11: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: c040157b-a174-478f-9874-11aaaa4e1d21
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618423890;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=vcZrNqJ9VmDj+8l2zxe5KkNojdJrNbMiA4zbm83u8lo=;
  b=ieK3f0OVoqHn57886+ZkX/LDEo1YK1RFEd/hMWWZBqbUlDHaj7dNm5j2
   YAaS7vOidTL1Z63wnv/jNHWtbjxCmymfnW9AQ2sZE7yK1guTWAE1lWMp4
   beh9qglNeuXJ3i+RbEpG5m0DagYSeLk4eYSeMuZtoNuS8apy1nYRXOZLA
   I=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: oUHz8YqNVH+nx6KaOu9U5VhmLgxVuvLZhQ/xAikp8igz/lN3vRNi4wMxyp1FNpjXRuaGV58NQ9
 32wQG18t16+zKV/scKftpHcpSneXtdLzk9o41ptIt63lZWkx+15h4AJRNDDbIZ5fsTmDXOrhHM
 MMN9fDU5Jll7DBO8JrlMbL6vMrlZClRRH88t+bhoj5GeeqGZD/romsT5z9byZ0RFe7ubI+Q8Jb
 T3Z3wJtXPX2rdUIj/LZipTp3bkc615UfDGbJ1HjlTw4ZBOtAjVon/Mq3K4oVCHPxrSQiDrSkvR
 Wag=
X-SBRS: 5.2
X-MesageID: 41991120
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Ik6NZ6G80ayqPVPkpLqFOpHXdLJzesId70hD6mlYVQFVfsuEl8
 qngfQc0lvOhCwMXWw78OrsBICrSxrnlaJdy48XILukQU3aqHKlRbsSibfK7h/BP2nF9uBb3b
 p9aKQWMrfNJHVzkMqS2maFOvk6xt3vys6VrMP/61socg1wcaFn6G5Ce2OmO2l7XhNPC5Z8NL
 f03LslmxOadX4abtu2CxA+NoCum/TxmI/7ehlDPhY76WC15g+A0qLwEBSTw34lIlFy6IolmF
 KlryXJop+Nntv+4R/a2m/V4f1t6abc4+oGPuOgoIw4Lj3tjyyheYhuXaaT1QpF3N2H2RIRv/
 Tn5zsmIsRv+1PdF1vF3ifF6k3b/xsFr1/k1FOCjnPoraXCNUwHIvsEv611WF/9ySMbzbZB+Z
 MO5U21nd5rKCmFuyLH693BR3hR5zGJiEtnq8E/pThiS4cEAYUhy7A3zQduP7orOjn104wjGP
 kGNrCn2N9mNWmXaH3UpQBUsaWRd0V2Gh+HR34LsdCO3w5Xm2hkz1AZyNZ3pAZ5yK4A
X-IronPort-AV: E=Sophos;i="5.82,223,1613451600"; 
   d="scan'208";a="41991120"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FZEStFxAinZbUmLcL0MSdpoeb0pNmKWLihrDGmV4BUacFyJBkVcQlxdhipUkETLdzRWZ5AREV3MuMe6qq1xzk7Hx0Go7z94aSTjnke9EaQM+QLwXwPHEpGQU/lcDs7FgXXkyTwlkd64CPAG01ZtZ0gCquSt+HpTBnrbhq4BumRb5Bs3GZAo3c3HHNPc9xhUSqJ39IhqmcaZ+18B1WF4tk3jxWAUFGLVEhDTKH6k5AZp6SJO2tJGNbkgU+mcuEGrF/fbo6TOlIXyzmnJPMbN6v7xYAtsSDuS3wpE+JUKLVhP6doGru58Ohd+roo65PBnc+12bT2WtAIYRbquRitey1w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vcZrNqJ9VmDj+8l2zxe5KkNojdJrNbMiA4zbm83u8lo=;
 b=CMCSjx4NGw3+4NOsQ/c4t6SMvh0ELhx9/4eegHP8Z+lg3yJKlFbHR1XiIUiUvgZv2w9EhiLGsoVf2u9fJUeVQONMdp6fZTrfPUeSSw5Jy9XePwj+p25yWUA3mjgHVdxoMCgZZEs/kVaCwoXzstPsqpwD06E9+jasXge7p2sC+z2sCUa++uVaZLPPGcLEp4N77wRhk2r0IyHpLNfy1uNL7R8BbwIcwWrfk6dcVL4xe7hxk5vxlpIrhQguRtEw94ijWUvBXWZ7JddzpYYerWB4HksLohwfBrxbgVe4AojOCuyjOX76ss9mSt6PaGQqQoVEk9BVQ9I81dP4pwcBPpMjQA==
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=vcZrNqJ9VmDj+8l2zxe5KkNojdJrNbMiA4zbm83u8lo=;
 b=oC/nES7YZXf3BIsoyLE/dmjW0Yow9x5HNdzr7T00t2KqtztZnelDK17oQA+cCMEHYiirtBhvlvUXgsv16ddsMkcqb5YYMY6b+YxJOJ0JtwcGIzVrOyr9exK39n3cRhdjubrN04gwnPl+6B9XCY0kkNS4DNARALj4v0YQrhfsUHY=
Subject: =?UTF-8?Q?Re=3a_A_KernelShark_plugin_for_Xen_traces_analysis_?=
 =?UTF-8?B?4oCL?=
To: Dario Faggioli <dfaggioli@suse.com>, Giuseppe Eletto
	<giuseppe.eletto@edu.unito.it>, <linux-trace-devel@vger.kernel.org>,
	<xen-devel@lists.xenproject.org>
CC: Enrico Bini <enrico.bini@unito.it>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
 <f33b39a5-9bbd-934f-a9cd-c536a0ba7416@citrix.com>
 <eefc512b8c1ac26c4eaae81e79ee0243901a3de2.camel@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <7184a7d7-6bca-4106-d70e-8cf9d5b227fb@citrix.com>
Date: Wed, 14 Apr 2021 19:11:19 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <eefc512b8c1ac26c4eaae81e79ee0243901a3de2.camel@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0075.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:138::8) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f9ef0f8d-0787-4f56-275b-08d8ff70b7d6
X-MS-TrafficTypeDiagnostic: BYAPR03MB4118:
X-Microsoft-Antispam-PRVS: <BYAPR03MB4118CDCA01209FB87AF5FE6CBA4E9@BYAPR03MB4118.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: oLaHpoZpTyEulUwHUkMdgonrMhYTrGdVmFVYdCVl1hJ0p5aRsF6PjLAjXiLPDSRkJTmMFLb6uhnltN0CLHkYlwNn32Fx+BdQDxYXsG0yhPhnpqhtV+dx4QWAHNnG+dRNFWexy2I+r2odzlqUPGBMmcfWBoGtp60pS8YyHhzswVNV3qwWJ8t+WDQ37slwiGb2Z9UE9oEa/XVBAU5OD+tmpbLuwqe85lMHwGOaWo0stS6s06ks1rflUvEXicUtogdyLA/E9XqwAHdh5R22wMi5RXrquh2Ro3bxGX3fYRjl1yCKrL8V4JzzISWDKmlo8l1+usnH7Q5diZ6Nu/ad7eNQOCPXCxZzlbzUlI4C9VLsAm2dLI0Pwb4HavKhIm95eEN3Mj0PlJtswDiC7uAvKWWIFjNBUjm2bjaUCWGXi2WnTrPCn71DDmiEqmWx3c8BnOnQnkPx6rgnvMi8wInNxaM2KvbyCLxCqoObLZidnnHDSiV8MPezSiDlzcCux9FF/h4u4JBig3f0IAdpk2OQSBhMzQvAf0p5EihMitbx0SvRbmfmYWK5M/Avv4taBvforvSAeQycn8JY9OFl8uXiPTRsRu3S14jof4TAgMhUekAPFDGrf9LHhK7Tv5A/IM7GWzvSBXYgAHBTndUvvoG9XPkLjZBP1jZgrl1ZKCFLJ4FcGJZ1vBAyxZkadpZxJmAA7Jl5C8/Dav9aT438eJY7Of0mrPrd8+8mePMk+gu5SxbTzcirunL+qPnxLKNiF6/xVZopA+Xsi+A0BcWyKXuoSyyTTw==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(366004)(136003)(376002)(39860400002)(186003)(4326008)(86362001)(16526019)(956004)(2906002)(26005)(5660300002)(66476007)(53546011)(478600001)(38100700002)(31696002)(2616005)(66556008)(66574015)(316002)(66946007)(16576012)(6666004)(966005)(83380400001)(6486002)(31686004)(36756003)(8936002)(110136005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f9ef0f8d-0787-4f56-275b-08d8ff70b7d6
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 18:11:26.0169
 (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: zYsLhDg7sZBNObpXNsqEJJs6hVmOZBSteEc0aOOSE9/I9E9MwA15LrUTifJiQHSIkR4qz5sRYUUUaqSgR0D4DKvHJm/RPDTT3P3XM1fLS+0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4118
X-OriginatorOrg: citrix.com

On 14/04/2021 18:31, Dario Faggioli wrote:
> On Tue, 2021-04-13 at 16:33 +0100, Andrew Cooper wrote:
>> On 13/04/2021 15:28, Giuseppe Eletto wrote:
>>> You will need the development version of KernelShark, available
>>> here:
>>> https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git
>>>
>>> A screenshot of the plugin in action is available here:
>>> https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/.github/img/ks-xentrace.png
>>>
>>> I'm happy to receive whatever feedback you may have about it,
>>> and to answer any question.
>> Very nice.
>>
>> A couple of questions.  Which Xen libraries do you currently use map
>> the
>> frames?
>>
> Err... If I understood the question none, as the plugin loads and
> parses a file, as it is produced by `xentrace`. :-)
>
> But maybe I didn't understand the question?

Ah no - that answer's my question.  I'd blindly assumed that the plugin
was talking directly to Xen to obtain the tracebuffer.

>> For the screenshot, there are a lot of examples where you have a
>> dom:vcpu pair, and a number rendered in hex.  Throughout the
>> hypervisor,
>> we're standardising on d$v$ as a format, and e.g. d[IDLE]v$ for some
>> of
>> the magic domid's (0x7ff0 ... 0x7fff).
>>
> Yes, the content of the "info" column is currently a bit "raw". I
> believe it should be made more similar to what `xenalyze --dump-all`
> looks like, rather than to what xentrace_format` does (just to make and
> example that people that have used these two tools can understand).
>
> This is just due to the fact that we wanted to let the Xen and
> KernelShark communities know about this work as soon as Giuseppe got it
> working properly and reliably, to gather any kind of feedback, decide
> where this should live, in the long run, (in Xen? In KS? In its own
> project?), etc. :-)

Where the plugin (ought to) live depends heavily on whether we consider
the trace format a stable ABI or not.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 19:08:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 19:08:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110810.211686 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWkrm-00040D-29; Wed, 14 Apr 2021 19:07:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110810.211686; Wed, 14 Apr 2021 19: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 1lWkrl-000406-Uy; Wed, 14 Apr 2021 19:07:57 +0000
Received: by outflank-mailman (input) for mailman id 110810;
 Wed, 14 Apr 2021 19:07:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=35og=JL=goodmis.org=rostedt@kernel.org>)
 id 1lWkrk-000401-HS
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 19:07:56 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e3f8c2c8-cd7c-43af-9b1e-27416318e556;
 Wed, 14 Apr 2021 19:07:55 +0000 (UTC)
Received: from gandalf.local.home (cpe-66-24-58-225.stny.res.rr.com
 [66.24.58.225])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mail.kernel.org (Postfix) with ESMTPSA id 4CAEF61042;
 Wed, 14 Apr 2021 19:07: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: e3f8c2c8-cd7c-43af-9b1e-27416318e556
Date: Wed, 14 Apr 2021 15:07:52 -0400
From: Steven Rostedt <rostedt@goodmis.org>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Dario Faggioli <dfaggioli@suse.com>, Giuseppe Eletto
 <giuseppe.eletto@edu.unito.it>, <linux-trace-devel@vger.kernel.org>,
 <xen-devel@lists.xenproject.org>, Enrico Bini <enrico.bini@unito.it>
Subject: Re: A KernelShark plugin for Xen traces analysis
Message-ID: <20210414150752.34366b99@gandalf.local.home>
In-Reply-To: <7184a7d7-6bca-4106-d70e-8cf9d5b227fb@citrix.com>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	<f33b39a5-9bbd-934f-a9cd-c536a0ba7416@citrix.com>
	<eefc512b8c1ac26c4eaae81e79ee0243901a3de2.camel@suse.com>
	<7184a7d7-6bca-4106-d70e-8cf9d5b227fb@citrix.com>
X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Wed, 14 Apr 2021 19:11:19 +0100
Andrew Cooper <andrew.cooper3@citrix.com> wrote:

> Where the plugin (ought to) live depends heavily on whether we consider
> the trace format a stable ABI or not.

Agreed. Like the VMware plugin to handle ESX traces. It's internal and not
published as the API is not stable.

But if it ever becomes stable, and you would like it to live with
KernelShark, we are looking to have a place to store third party plugins.

We are working to make sure that the API for KernelShark plugins remains
stable, so your plugins should always work too.

-- Steve


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 20:17:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 20:17:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110819.211704 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWlxF-00020N-Ai; Wed, 14 Apr 2021 20:17:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110819.211704; Wed, 14 Apr 2021 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 1lWlxF-00020G-7b; Wed, 14 Apr 2021 20:17:41 +0000
Received: by outflank-mailman (input) for mailman id 110819;
 Wed, 14 Apr 2021 20:17:39 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UoOq=JL=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lWlxD-00020B-Iz
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 20:17:39 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9d411bc6-9903-422a-ab00-631b13764300;
 Wed, 14 Apr 2021 20:17: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: 9d411bc6-9903-422a-ab00-631b13764300
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618431458;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=jbJcSC9Y49rd1Hmt+KGMvpYwBg/ekPhNi3SKFXx5FQY=;
  b=aK43B4epRmAXl4esGVMPgaCsMRa6taMP2yjHhI4AJWxHzvbKupJZe+vs
   RuK/lFhZDegyYTVvSdJTzK+1thozogVVIFyuR1hmb927yP30nkAB89MRq
   Swwsu49NbTg0vZmRdq/dXngS2EYxlsuhhwbhebEZZ7XWJp9F5kOor3qFD
   8=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 3rE2lE+2ixL/GAICBPbjoyMbDVOOVP0gbyqerQ0ubUSZPjHGMkzMGTfW6mB2h55RvZUat1bPuQ
 q9K1rN3JGKh9ms1x0/NHLwrHpFJgsob58f44E+duxjkhdrM0W6jU0zObQOwL/O8eLbJrAaeD8s
 O45GVLItZqy0AU+Efm9OLelBtDzk7gxi2wNUH0ih2FyvUY7jVipIaFMIBtBMaCc9xr7SNO74Tq
 /HVJz6c/OBzUSExKpWOp6oKDhOe2FCDWQzprAj/fchz+A5gOfleUrG2w7muClik8ETAx/mugj9
 RaY=
X-SBRS: 5.2
X-MesageID: 41618010
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9qlpYal8rLd/uwNU/n24GB/rlNjpDfOnj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN+AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 hdWoBEIpnLAVB+5PyX3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0YNi+wOCRNNW17LLA+E4
 eR4dcCgjKmd2geYMjTPAh6Y8HoodrXmJX6JSMcDxk85wWUyR+u4rj2Ex+Xty1uLA9n67Ek7G
 TDjkjF9ryu2svLtiP0+k3yy9BtmNXnwsZeH8DksKkoAxjllwrAXvUbZ5SspzYwydvfjmoCsN
 6JmBs4OtQ21nW5RBDJnTLI+y3NlAkj8GXjz1jwuwqQneXcSCghA8RMwaJ1GyGpk3YIh9133K
 JV02/xjfM+Znms7UeNham9azhQmkW5unYkm+II5kYvNrc2U7NNsZcZuHpcDZZoJlOI1KkcDO
 JsAMvAjcwmCG+yUnaxhBgL/PWRRHgpWj+JTk8e0/blqQR+rTRSyksVw9EnhXEQ9J4xYIks3Z
 W1Do1Y0J5JVcMYdqR7GaMoRta2EHXERVb2PHuVOkmPLtBJB1v977rMpJkl7uCjf5IFiLM0hZ
 T6SVtd8Uo/YVjnB8Gi1IBCmyq9DlmVbHDI8IVz9pJ5srrzSP7AKiuYUm0jlMOmvrE2HtDbc+
 zbAuMUP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5urWN4zRsPDBevq7HsusLR8UHkfERl
 cTVjn6I8tNqmqxXGXjvRTXU3TxPmPl+5ZdF7Xb4vgzxIABOpYkiHlRtX2JouWwbRFSuK0/e0
 VzZJn9lLmgmGWw9WHUq0VlUyAtSnp90fHFaTdntAUKO0T7ffIooNOEY11f23OBO1taR8PSGw
 hPmkRv9cuMXtut7BFnL+jiHnORjnMVqn7PZYwbgLe/6cDsfY59KZo6RqprF0HuGwZukQhn7E
 dPATV0B3P3J3fLs+GInZYUDObQe51XmwGwO/NZrnrZqAG7vsEgRnwSWha0Ss6JiQMSRz5Z72
 cBsZM3sf6lo3KCOGE/iOM3PBlnc2KMGo9LCwyDecFpgLzxQRpxSm2LnDSerBk2dgPRhgMvr1
 2kCRfRVeDAA1JbtHwd9qrx6lt7el+QeF9KZmlgvZdwEnnHvXhPwfaGD5DDple5Wx8n+KUwIT
 vFaTwdLkdVy9e72AW8tRyCGX8lr69edND1PfAGSfX+y3mtIIqHmeU6BPdS5o9iL82rmPQMS/
 ijdwicKy7YB+sl1xeOnGssPDB5pRAf4KrV8SygyFL9+nExAfDfegs7A54aJsyR9GjiSbKj1o
 5jgdc8oOu3NSHQZ7e9uNfqRg8GDimWh2i8C9wMg9Rzm4kZsbNoBZnVUTfSzhh8rV4DBfaxsH
 lbebhx5bDKB5RmcMMTcR9I51ZBrqX5EGIb9ijNRtIkdV4jj3XnL8qEzrrBp70oGFCArmLLSB
 Ci2hwY2/fORC2Y07EGT4o2PGRNcUA5gU4Ssd+qRsn1CA+wcftE80f/GnihcKVFQKzAPbkLtB
 5175WpmOCQHhCIlDz4jH9eIqhU9XygTt73KAWQGfRQ+9j/AG+yuMKRkYaOpQaybyC6ZUQejZ
 BEckJVTv0rsEhSsKQHlg6oSqL2pUo5lUB5+j8PrC+05rSb
X-IronPort-AV: E=Sophos;i="5.82,223,1613451600"; 
   d="scan'208";a="41618010"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BRq1RIDMKsAL3LXh9mEW03E+0RlzIpb5s6G1TBgKsLZBUpSm9H08PElq3KlSVB8V3POPnt5PEs4jkQ0/ZNWF5nC0/OiQ/+8qaOoa2wW0yTnCFrnDRqxG92BO/SxKRXmlM6UfNO4kyXC0OLVzpxkqJ2Z0644bxcCj2nulFBOV1oLLBDusfVUJYultX0HvWZcee8r4YA7PQKvdTzhqa8xZKr1MJZ2DaR1XyOTKqMt0lzOaWtBxPNxxLamDaIfM4lK1rTX7EerqsVzNmb178PqUoQmAKWpu4duFabuR/uql7K7jYQBtOvb0sSjvDi2C5O5eQtHdeJFyEt9M/71/o0Cavw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gkeqm/sH7FYDWFyVdqLE9SnwERsA0fQfcUkhFvqRAco=;
 b=eRq7Oqe5BuSoBwEv4JTyydvhiQ3EHVMSCjxIXHA7XS868w1ZL/ha2RjBEJ4/cfbXaRteXeu9X4N8yjh2M1BlzEXw80mqEdW04jwE4rkPT2kSoKV4C0n+26IBA4nXCTxpc32IMBPSlif8dSvcWZGVdVNZPfOn/ar6+Cs5aml6/pgkuk0agqYKkxZ/3eQHDuwR/+cCqQcmYpgZ6WjapGsR6Omxkvv6KfOnUdvJl0zGL3HyGS3H/hWJukzsGzkpTOXo6mlHQRHGxVTRSW+6il9ggUib3bM3LEluZBmovn0Ol9qfTtChThRWMk0ZI9G2BL2BXmjKpkTZeJLrDbQemazqBA==
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=gkeqm/sH7FYDWFyVdqLE9SnwERsA0fQfcUkhFvqRAco=;
 b=bOtNI4DGqF6hDMfBv2wpa4Qy/JB/JUPQkwT7l6IDst6Ck3Yg9EgegU8je6xbi8hhRyvB7Ikbg92grDUGJyWnY0DP6t5EWhUXNnuOT825V3NkGaazz69//VrlNVw10luTFV7Q8dgGFg89SCylq6P8jYL/FNOd6zPKRTVyXYTDPac=
To: Steven Rostedt <rostedt@goodmis.org>
CC: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>,
	<linux-trace-devel@vger.kernel.org>, <xen-devel@lists.xenproject.org>, "Dario
 Faggioli" <dfaggioli@suse.com>, Enrico Bini <enrico.bini@unito.it>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
 <20210413114614.4971caff@gandalf.local.home>
 <094c4b3f-3988-c51f-3a69-cfbc8d6a45bf@citrix.com>
 <20210414094300.7fbd6887@gandalf.local.home>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
Message-ID: <f44f994d-32da-0610-57d8-e3a30bbb278c@citrix.com>
Date: Wed, 14 Apr 2021 21:05:00 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210414094300.7fbd6887@gandalf.local.home>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0296.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::20) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ff63a021-f833-4443-9155-08d8ff809957
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5757:
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5757A13308F21EB0D6833C06BA4E9@SJ0PR03MB5757.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: EBD12tgaZMQeXZUJRBGP61jqlFtBTH0/j1aN/d4MggU63k7oBY7vg1QOhZn8lzAvzah9k91ixzzxlo1yoZB2Mhby3AnSRpw9vDU9/3Ked5co2jN+MRL3Sqp8yU2KtvR2ZjUfHn9ITcNw+poslgEQq2jpWXMqHr6T1JlbAAYh1z27pm4WjqTsW6lkRBIsvOrOBRMLvdg/Sbi+/Sioemx+daCZihuLrcBTRQLt8b+1LC8bydNO3JPCxZYLQRBJmIA4OEPZcIJoQsAn79WJ5pg194wwHYec2DqpA773MjScvxIOJ1UyXU8UskBrn0uUzVs4S39/1VkfCUh6dJNNU4DDSqGxAWfpNXX9MrdazEKdJl8NRi32WT26Azg5FMWtLSWmVzP8pvHa0MtK0SjeB3TYaR5x7EfVEcsDUnL3kKfGE7AGgfNgvA5yOvY/tLkSdDmSuKQS2rI8gZAUlo1sO1M5gOMiNtDl+nS28prY56cx9LF7Si9OXwXaRcJ0xJdsVGrm1PvzqFYfcCg/dL34kmn+5Q7G54gcsge7buQGvcnSoVRJeuMZmcsTyMbtB/chMBHqtn23f+fbyQ6ZL/9sXvi7sKoRJy/HftEQjXOYAC1+6ALJrtZhrxCPfbWyKBTx5LRYmtmYyX/aaH7MCmXzuvB0hWO3WpJN2xmX/Nufjqt9sxqoinpM6etSXasrJerFeqWQ
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(366004)(396003)(376002)(39860400002)(136003)(26005)(66556008)(66946007)(66476007)(66574015)(36756003)(186003)(478600001)(316002)(6666004)(2616005)(16526019)(53546011)(2906002)(6916009)(31696002)(5660300002)(956004)(8936002)(83380400001)(38100700002)(86362001)(16576012)(54906003)(4326008)(8676002)(31686004)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: ff63a021-f833-4443-9155-08d8ff809957
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 20:05:06.8003
 (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: 8BVuJbJv+z+/5wAmYZvix2eU7ocDoLHuYoCC4ltEaXCkeGbL4Lv4vkll4hUti/rQw0sU8REcAWXy5l2DaotIuJjpV3BiMqifQpeJK99KF50=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5757
X-OriginatorOrg: citrix.com

On 14/04/2021 14:43, Steven Rostedt wrote:
>> This causes major problems for `perf` support under Xen, which assumes
>> that the kernel's idea of CPUs matches that of the system.
> Things are different with KernelShark.

That is very encouraging to hear.

>> When rendering a trace including Xen data, Xen can provide the real
>> system CPUs, and dom0 wants to be rendered as a VM under Xen, similar to
>> trace-Fedora21 in your screenshot above.=C2=A0 (Obviously, if you're doi=
ng
>> nested virt, things need to start nesting.)
> Right.
>
> What I would envision how this would work, is that you would produce a
> set of tracing files. One for each guest (including Dom0), and one for th=
e
> Xen hypervisor itself. The trick is to have a way to synchronize the time
> stamps. What we just did with KVM is to have all the tracing record the
> CPUs TSC, including the shift and multiplier that the CPU might change fo=
r
> the guests. Then we have a way to convert the TSC to nanoseconds. This wa=
y
> all tracing data has the same clock. It's somewhat complicated to get
> right, and requires access to how the guests clocks are modified by the C=
PU.

Hmm.=C2=A0 In the past, I have had success by modifying Xen to refuse any
shift/scale settings, at which point VMs and the hypervisor have
directly-comparable raw TSC values.

Xen certainly has enough information to describe what TSC rate/epoch
each guest is seeing, but I doubt any of this is coherently exposed at
the moment.

> For KVM, each machine has a unique id and is stored in the trace.dat file=
s.
> We have the host store a mapping of what thread represents which guest VC=
PU
> (virtual CPU). Then the "-a" option tells KernelShark to append the
> tracing data as a dependency. I would imagine we can have something like
> this:
>
>  kernelshark xen.dat -a trace-dom0.dat -a trace-guest1.dat -a trace-guest=
2.dat
>
> The Xen plugin would then need to read the how the threads in xen.dat map
> to the virtual CPUs of each of the guest files. Which would give you the
> layering.

Looks good.=C2=A0 I suspect we might need to do a little work on Xen's trac=
e
data to make this mesh together nicely.=C2=A0 In particular, Xen doesn't ha=
ve
a terribly good scheme on unique IDs for "a VM".

We've got domain ID's which are Xen's unique instances of a running
"thing", but they change across VM reboot/migrate/etc.=C2=A0 I suspect we
have some atomicity problems with unique identification information and
VM-fork too.

There is a UUID field but we leave that entirely up to the toolstack to
manage.=C2=A0 (A good test for naive toolstack code comes on the a localhos=
t
live migrate, because suddenly the toolstack is presented with one
logical VM (=3D> one UUID) and two concurrent domid's.)


I'll try to have a play with the plugin in some copious free time, but
this work does look exciting.

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 20:36:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 20:36:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110823.211716 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWmEt-0003sQ-SQ; Wed, 14 Apr 2021 20:35:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110823.211716; Wed, 14 Apr 2021 20: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 1lWmEt-0003sJ-PG; Wed, 14 Apr 2021 20:35:55 +0000
Received: by outflank-mailman (input) for mailman id 110823;
 Wed, 14 Apr 2021 20:35:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L4Ps=JL=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWmEr-0003sE-Ky
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 20:35:53 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cf53aba5-7062-4694-bd22-72a3b9e26b29;
 Wed, 14 Apr 2021 20:35:52 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id C5FE961164;
 Wed, 14 Apr 2021 20:35: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: cf53aba5-7062-4694-bd22-72a3b9e26b29
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618432552;
	bh=QynS3xHiU6z/JoieIsEfA5J/DunL4t9vJbt89ndibAQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=o/8JFtZgjDyW3p6HIuzuRE+QcpEaA7QjCD/XlwS8p9n+yLI9ATLnUXHzeHP8qKWO1
	 fkpQmAr9HczESfMJfm6mjeLxlsDcjpFK+Rt7Kz+3DYupSRPG9gBSAm7A7KGf8bvk+Y
	 8ryN25nsIdNi4kfnBIriOdJWuCzcnEa3r7q2tErYxT30D4eASQKJzsY9FvJDnPkQz8
	 9uIdXSOgo4V1+bATnZjjhd7YrWipTplJ+0shkzlVt9Rju7c4Is2hC+H3voOpduQurq
	 CNXhXt0c3rAars8eBhkpJEX7z94b7Uehwe6sYYCsrtaiz/gLKr3KMGTNL3lfH/IByl
	 xOXugG11goGCQ==
Date: Wed, 14 Apr 2021 13:35:51 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Luca Fancellu <luca.fancellu@arm.com>
cc: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org, 
    Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Rahul Singh <rahul.singh@arm.com>
Subject: Re: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is
 NULL
In-Reply-To: <F5760FAD-466F-46EC-A3A4-BAC2B5E73BC8@arm.com>
Message-ID: <alpine.DEB.2.21.2104141334270.4885@sstabellini-ThinkPad-T480s>
References: <20210414091404.14215-1-luca.fancellu@arm.com> <20210414091404.14215-3-luca.fancellu@arm.com> <3424d24f-b189-c125-7b84-96848bbdcfd7@xen.org> <04326BA4-6E73-44BA-AB19-8F2B99000D8B@arm.com> <269e20a7-9f2c-f989-0ea0-7ab6c6bb9c11@xen.org>
 <F5760FAD-466F-46EC-A3A4-BAC2B5E73BC8@arm.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 14 Apr 2021, Luca Fancellu wrote:
> > On 14 Apr 2021, at 14:45, Julien Grall <julien@xen.org> wrote:
> > 
> > Hi Luca,
> > 
> > On 14/04/2021 12:29, Luca Fancellu wrote:
> >>> On 14 Apr 2021, at 12:16, Julien Grall <julien@xen.org> wrote:
> >>> 
> >>> Hi Luca,
> >>> 
> >>> On 14/04/2021 10:14, Luca Fancellu wrote:
> >>>> Among the common and arm codebase there are few cases where
> >>>> the hardware_domain variable is checked to see if the current
> >>>> domain is equal to the hardware_domain, change this cases to
> >>>> use is_hardware_domain() function instead. >
> >>>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> >>>> ---
> >>>> v4 changes:
> >>>> - removed unneeded check for domain NULL from is_hardware_domain
> >>>>   introduced in v3
> >>> 
> >>> After this change, this patch is only avoid to open-code is_hardware_domain(). Although, it adds an extra speculation barrier.
> >>> 
> >>> I am not against the change, however I think the commit message needs to updated to match what the patch is doing.
> >>> 
> >>> Can you propose a new commit message?
> >> Hi Julien,
> >> Yes I agree, what about:
> >> xen/arm: Reinforce use of is_hardware_domain
> >> Among the common and arm codebase there are few cases where
> > 
> > I would drop 'common' because you are only modifying the arm codebase.
> > 
> >> the hardware_domain variable is checked to see if the current
> >> domain is equal to the hardware_domain, change this cases to
> >> use is_hardware_domain() function instead.
> > 
> > 
> >> In the eventuality that hardware_domain is NULL, is_hardware_domain
> >> will return false because an analysis of the common and arm codebase
> >> shows that is_hardware_domain is called always with a non NULL
> >> domain pointer.
> > 
> > This paragraph seems to come out of the blue. I would drop it.
> > 
> > How about:
> > 
> > "
> > There are a few places on Arm where we use pretty much an open-coded version of is_hardware_domain(). The main difference, is the helper will also block speculation (not yet implemented on Arm).
> > 
> > The existing users are not in hot path, so blocking speculation would not hurt when it is implemented. So remove the open-coded version within the arm codebase.
> > "
> > 
> > If you are happy with the commit message, I will commit it the series tomorrow (to give an opportunity to Stefano to review).
> > 
> 
> Hi Julien,
> 
> Yes your version is much better, thank you very much!

It looks great, thanks for your work on this!


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 21:49:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 21:49:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110830.211733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWnO7-0001su-Vi; Wed, 14 Apr 2021 21:49:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110830.211733; Wed, 14 Apr 2021 21:49:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWnO7-0001sn-S4; Wed, 14 Apr 2021 21:49:31 +0000
Received: by outflank-mailman (input) for mailman id 110830;
 Wed, 14 Apr 2021 21:49: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 1lWnO6-0001sa-Da; Wed, 14 Apr 2021 21:49: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 1lWnO6-0002ms-4k; Wed, 14 Apr 2021 21:49: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 1lWnO5-0007hu-QL; Wed, 14 Apr 2021 21:49:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWnO5-00028I-Pt; Wed, 14 Apr 2021 21:49: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=PWuneIe2t9qI4bhVuK1tRfylyPVbySa54IrIn3XssC4=; b=t+aLLfVnn0S9ruPQ33swgWI4Cs
	H72gpmhVJEvq73GwhJj1haVVeSU+RZEEjUBPFL4qUs64l6UhmijLit9quVkfR6EsvNPwkW4YNIyF6
	2puirFc1I5Ssji09+WqWJbnS/F02fLW1ug66sa7PPH32ytVqiBDPK5zI3uYI9TEaV24o=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161121-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161121: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:allowable
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=db55d2c9239d445cb7f1fa8ede8e42bd339058f4
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 14 Apr 2021 21:49:29 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10   fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                db55d2c9239d445cb7f1fa8ede8e42bd339058f4
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  237 days
Failing since        152659  2020-08-21 14:07:39 Z  236 days  439 attempts
Testing same since   161121  2021-04-14 05:26:02 Z    0 days    1 attempts

------------------------------------------------------------
477 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142589 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 21:51:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 21:51:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110836.211749 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWnQ8-0002jd-HW; Wed, 14 Apr 2021 21:51:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110836.211749; Wed, 14 Apr 2021 21: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 1lWnQ8-0002jW-E0; Wed, 14 Apr 2021 21:51:36 +0000
Received: by outflank-mailman (input) for mailman id 110836;
 Wed, 14 Apr 2021 21:51:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2F6e=JL=suse.com=dfaggioli@srs-us1.protection.inumbo.net>)
 id 1lWnQ7-0002jR-4f
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 21:51:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 30c1b858-dbb4-47f2-a698-3a24efe2750e;
 Wed, 14 Apr 2021 21:51:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3BC9BAE78;
 Wed, 14 Apr 2021 21:51: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: 30c1b858-dbb4-47f2-a698-3a24efe2750e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618437093; 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=fyx9vlsOHGOYIIT42w0AhSKt3/73aRp0v4Jr2WTKp84=;
	b=I117XwifSnF/0PMJp99RVD37wz5ZP2iy37UyHu+b3086tUQfbsw5rte3lGDchwJGoSfnl0
	9sxMi5fAlddCJAUJtWPreMDMfbWu443eYu8wkq1QBZYRC62f65+SC0cRdOGENCNTa0OQeu
	6caZ70JI8fe0b6AcRnpbrH0zf1OXZFU=
Message-ID: <f99d5176df0298e8057e21f24a627832121b7aa8.camel@suse.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
 =?UTF-8?Q?=E2=80=8B?=
From: Dario Faggioli <dfaggioli@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Giuseppe Eletto
	 <giuseppe.eletto@edu.unito.it>, linux-trace-devel@vger.kernel.org, 
	xen-devel@lists.xenproject.org
Cc: Enrico Bini <enrico.bini@unito.it>
Date: Wed, 14 Apr 2021 23:51:31 +0200
In-Reply-To: <7184a7d7-6bca-4106-d70e-8cf9d5b227fb@citrix.com>
References: 
	<CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	 <f33b39a5-9bbd-934f-a9cd-c536a0ba7416@citrix.com>
	 <eefc512b8c1ac26c4eaae81e79ee0243901a3de2.camel@suse.com>
	 <7184a7d7-6bca-4106-d70e-8cf9d5b227fb@citrix.com>
Content-Type: multipart/signed; micalg="pgp-sha256";
	protocol="application/pgp-signature"; boundary="=-PG2JFKkoV8wEkuAFwNPi"
User-Agent: Evolution 3.40.0 (by Flathub.org) 
MIME-Version: 1.0


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

On Wed, 2021-04-14 at 19:11 +0100, Andrew Cooper wrote:
> On 14/04/2021 18:31, Dario Faggioli wrote:
> > > A couple of questions.=C2=A0 Which Xen libraries do you currently use
> > > map
> > > the
> > > frames?
> > >=20
> > Err... If I understood the question none, as the plugin loads and
> > parses a file, as it is produced by `xentrace`. :-)
> >=20
> > But maybe I didn't understand the question?
>=20
> Ah no - that answer's my question.=C2=A0 I'd blindly assumed that the
> plugin
> was talking directly to Xen to obtain the tracebuffer.
>=20
Right. No, KernelShark, for Linux, "just" reads trace-data file
produced by trace-cmd. So we adopted the same model and made it "just"
read a trace-data file, in our case produced by xentrace.

Regards
--=20
Dario Faggioli, Ph.D
http://about.me/dario.faggioli
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
-------------------------------------------------------------------
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

--=-PG2JFKkoV8wEkuAFwNPi
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

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

iQIzBAABCAAdFiEES5ssOj3Vhr0WPnOLFkJ4iaW4c+4FAmB3Y+MACgkQFkJ4iaW4
c+7q0w/+NlMki+7+D+3hMDgjz+dAjBpw5KL6YtcIGK2W8gZn+gwNORsAxPmq7HHN
PzEvkvGZSVn0sr9logV/Jq6Q9eABr6ueHYI8qQeccCeAj5QudTM4/ee9qK9SLDeZ
e/YPN1ya1u8UWvRj3xrJoL1OFhNdHR9OrhC2NeTmCL2zu199YORosUGjpBuXnPhJ
YcW5dcjwlwR3wD/lvB/Rh0N6Rt5JpMy/9h2qS/J62M8sLak9YGMns8tAjrTBhK2d
P4dHRfO1JjLlFaiPFdgUkTy33OQQ8kMfXDchUPeGUscrCFQ6yJbdvqc0l/zxQnWQ
wF0CKTuoQAGMMA39j/azawI4cYtT3+OzEvcXOeWljwjLiQqMGhfD1adiuiIyD6KO
OSue/fQ2pi1I5ur5zCFcM7vUrNSds0+v/BiLM5TzC+mtmzJxrkWw/fnCPJ6KazIu
lvqxnWi9APeDgnrwCiMtyYfdfWlS2qA9Z/WrjktYtdmPHwloeknx7gYIAoX0ndMt
HDjDhMRTG92z60VivEJEh5epRqraIo81lXa8LQRpC7orYvmi1sVz+opBfFuYYAjC
8x2OhF5VbAURQiZiSqFHJ/r6HQ1E3vBNn9oHeVJ9cHKE3MJAGwmlSCWGTEWk3Ub/
mHmlDMvvSyeR7t9P//wGLDk92FaPvkjZkjZ6lx7+h1uWs0JnsQQ=
=ZS6J
-----END PGP SIGNATURE-----

--=-PG2JFKkoV8wEkuAFwNPi--



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 22:11:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 22:11:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110841.211761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWnjW-0004f8-8b; Wed, 14 Apr 2021 22:11:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110841.211761; Wed, 14 Apr 2021 22:11: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 1lWnjW-0004f1-4C; Wed, 14 Apr 2021 22:11:38 +0000
Received: by outflank-mailman (input) for mailman id 110841;
 Wed, 14 Apr 2021 22:11:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2F6e=JL=suse.com=dfaggioli@srs-us1.protection.inumbo.net>)
 id 1lWnjU-0004ew-9n
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 22:11:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id eff6be59-3930-45dd-a9fc-a11bb7dd3917;
 Wed, 14 Apr 2021 22:11:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F3E5FAE86;
 Wed, 14 Apr 2021 22:11: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: eff6be59-3930-45dd-a9fc-a11bb7dd3917
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618438294; 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=ototsKWpm+5BByan6tp1rzhs5QnNDRMdNYZyyUEgVLY=;
	b=TVYZJgG8NalbpeoJA4Lf22cFi/ZaQH+YhSrsXoE5KLsysST+Ua8S1LMQCSsh2psVDp4PWR
	BKieVOCQFZcPe4lsLvHVzBUgZtErSq1XtsYxnGrxreCxToZUts3av18D0+ilEovPhQoGK2
	NN8NJtFg510JdNcoePV3MZzj6REIVpM=
Message-ID: <28ac9c046cc521cbaef9c2ff56911cd7b3100ac4.camel@suse.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
From: Dario Faggioli <dfaggioli@suse.com>
To: Steven Rostedt <rostedt@goodmis.org>, Giuseppe Eletto
	 <giuseppe.eletto@edu.unito.it>
Cc: linux-trace-devel@vger.kernel.org, xen-devel@lists.xenproject.org, 
	Enrico Bini <enrico.bini@unito.it>
Date: Thu, 15 Apr 2021 00:11:32 +0200
In-Reply-To: <20210413114614.4971caff@gandalf.local.home>
References: 
	<CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	 <20210413114614.4971caff@gandalf.local.home>
Content-Type: multipart/signed; micalg="pgp-sha256";
	protocol="application/pgp-signature"; boundary="=-SWdq9RPSIFU4w0o8/S2+"
User-Agent: Evolution 3.40.0 (by Flathub.org) 
MIME-Version: 1.0


--=-SWdq9RPSIFU4w0o8/S2+
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2021-04-13 at 11:46 -0400, Steven Rostedt wrote:
> On Tue, 13 Apr 2021 16:28:36 +0200
> Giuseppe Eletto <giuseppe.eletto@edu.unito.it> wrote:
> >=20
> > In fact, KernelShark is a well known tool for graphical
> > visualization
> > Linux kernel traces, obtained via "ftrace" and "trace-cmd". Anyway
> > thanks
> > to its modular architecture, it is now possible to implement
> > plugins which
> > open and display traces with arbitrary format, for example, as in
> > in
> > this case, traces of the Xen hypervisor.
>=20
> I'm guessing you have trace events coming from Xen itself?
>=20
Yes, basically, we can say that a Xen system has "its own trace-cmd".
It's called `xentrace`, you run it from Dom0 and you get a (binary)
file which contains a bunch of events.

Not that differently from a trace-cmd's "trace.dat" file, but the
events in there comes from tracepoints within the hypervisor (which, of
course, use a different tracing mechanism than ftrace).

>=20
> > A screenshot of the plugin in action is available here:
> > https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/=
.github/img/ks-xentrace.png
> >=20
> > I'm happy to receive whatever feedback you may have about it,
> > and to answer any question.
> >=20
>=20
> Thanks for doing this. What would be nice is to have the xen traces
> along
> side the linux tracing.=C2=A0
>
Indeed! :-P

> Perhaps we can update trace-cmd agent to work with
> Xen as well. Does xen implement vsock or some other way to
> communicate
> between the guests and the Dom0 kernel?=C2=A0
>
Not vsock, AFAIK. But we probably can use something else/come up with
something new.

> =C2=A01. On each guest, run as root: trace-cmd agent --xen
> =C2=A02. On Dom0 run: trace-cmd record -e (events on Dom0) \
> =C2=A0=C2=A0=C2=A0=C2=A0 --xen (commands to do tracing in Xen HV) \
> =C2=A0=C2=A0=C2=A0=C2=A0 -A <guest-name1> -e (events on guest)
>=20
> And then you would get a trace.dat file for Dom0 and the guest, and
> also
> have a trace file for Xen (however that is done).=C2=A0
>
Yep, and the implementation of the `--xen (commands to do tracing in
Xen HV)` part, can just "call-in" to xentrace (somehow), and we'll get
the trace.xen file that then can be interpreted with this plugin.

> And then on KernelShark,
> we have a KVM plugin in development that does this. But you can do
> the same
> with Xen.
>=20
I think that one of the trickiest aspects would be synchronizing the
timestamps in the 3 traces.

*I guess* that the dom0 trace and the guest traces could at least use
the PTP algorithm that is currently implemented in the trace-cmd
patches (but not KVM specific one). For synch'ing the Xen trace with
them, well, I don't really know... We'd have to think about it. :-P

> Perhaps we can do something like that with Xen as well.=C2=A0
>
Would be awesome, IMO. :-)

Thanks and Regards
--=20
Dario Faggioli, Ph.D
http://about.me/dario.faggioli
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
-------------------------------------------------------------------
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

--=-SWdq9RPSIFU4w0o8/S2+
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

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

iQIzBAABCAAdFiEES5ssOj3Vhr0WPnOLFkJ4iaW4c+4FAmB3aJQACgkQFkJ4iaW4
c+7RXA//QDd+3f6YkvAVoxHude8NxrB9QD/AlooIBOyWGuCWMeZUe7nXa79qMYDr
bmG0y/n4LLpDl+vTyShf781I1LLfckZMMEQmhH/J1JElYsUs33bqb+lvYZH99ZAe
1/PMZneaq8SpH8OsiOGtJ+5aSj+vfpJ8wm5reMIfJDbb2K3wQRIIF12ts5AQyaBU
/ptNHtBDSRFsmAYmo8V39yev1F9qKgSDfRDCUlWniCOxxEeccb6+rGwGw+rBYO5P
qfjCRKeLD+zFsF/kLRFmcrsxGQeTJf+1SzAq5t/KwPH8lQqDNfYXM/IXn4RjoQcK
J+CLgtNEiH9E2Lxl42yXDEI2YBJ5sZ674V/BFKCOUf0tZCESswExXX6bLWCKhGNo
d7SSpoDn1GKsNUXkRUbefPKmq7Gyz/tYGNZ56tRDJf5hkRKJQu0CLC9L3y5nmIPj
hGvNKcAWe+xiMqvuKcctjkcQId/RcVTIeUSiA469CdM1TRaYwtRdC9xw/i0M0Rml
MunZvDkUOeFXnfviWM9kE8rdN18eKVjkEifvBos5l16GAq08l8e1OOKgFupAFYtG
S7FCMh4zkdMxOvMzPykXtXEZxjIzj4ktPmBndvuUmlK0OmKXmSdNd8NpndauHNM+
BJfNDDmYR9pH1JsPEpRDRjwaploAPYXkO/9sojOZAlawKsAqFVs=
=Z0r0
-----END PGP SIGNATURE-----

--=-SWdq9RPSIFU4w0o8/S2+--



From xen-devel-bounces@lists.xenproject.org Wed Apr 14 22:25:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 22:25:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110850.211778 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWnwv-0005ml-Gh; Wed, 14 Apr 2021 22:25:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110850.211778; Wed, 14 Apr 2021 22: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 1lWnwv-0005me-Dl; Wed, 14 Apr 2021 22:25:29 +0000
Received: by outflank-mailman (input) for mailman id 110850;
 Wed, 14 Apr 2021 22:25:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=35og=JL=goodmis.org=rostedt@kernel.org>)
 id 1lWnwu-0005mZ-Lt
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 22:25:28 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 021aaba3-48f0-4fd2-a6f1-283672b117e3;
 Wed, 14 Apr 2021 22:25:27 +0000 (UTC)
Received: from gandalf.local.home (cpe-66-24-58-225.stny.res.rr.com
 [66.24.58.225])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mail.kernel.org (Postfix) with ESMTPSA id AD7EC600CD;
 Wed, 14 Apr 2021 22:25: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: 021aaba3-48f0-4fd2-a6f1-283672b117e3
Date: Wed, 14 Apr 2021 18:25:24 -0400
From: Steven Rostedt <rostedt@goodmis.org>
To: Dario Faggioli <dfaggioli@suse.com>
Cc: Giuseppe Eletto  <giuseppe.eletto@edu.unito.it>,
 linux-trace-devel@vger.kernel.org, xen-devel@lists.xenproject.org, Enrico
 Bini <enrico.bini@unito.it>
Subject: Re: A KernelShark plugin for Xen traces analysis
Message-ID: <20210414182524.0e51a520@gandalf.local.home>
In-Reply-To: <28ac9c046cc521cbaef9c2ff56911cd7b3100ac4.camel@suse.com>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	<20210413114614.4971caff@gandalf.local.home>
	<28ac9c046cc521cbaef9c2ff56911cd7b3100ac4.camel@suse.com>
X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Thu, 15 Apr 2021 00:11:32 +0200
Dario Faggioli <dfaggioli@suse.com> wrote:

=20
> Yes, basically, we can say that a Xen system has "its own trace-cmd".
> It's called `xentrace`, you run it from Dom0 and you get a (binary)
> file which contains a bunch of events.
>=20
> Not that differently from a trace-cmd's "trace.dat" file, but the
> events in there comes from tracepoints within the hypervisor (which, of
> course, use a different tracing mechanism than ftrace).

Right, that's exactly what the ESX trace did as well.

> > Perhaps we can update trace-cmd agent to work with
> > Xen as well. Does xen implement vsock or some other way to
> > communicate
> > between the guests and the Dom0 kernel?=C2=A0
> > =20
> Not vsock, AFAIK. But we probably can use something else/come up with
> something new.
>=20

Yeah, we would like to have trace-cmd agent work with more than just vsock.
Heck, we could just use networking as well. It's just a bit more overhead.


> > And then on KernelShark,
> > we have a KVM plugin in development that does this. But you can do
> > the same
> > with Xen.
> >  =20
> I think that one of the trickiest aspects would be synchronizing the
> timestamps in the 3 traces.
>=20
> *I guess* that the dom0 trace and the guest traces could at least use
> the PTP algorithm that is currently implemented in the trace-cmd
> patches (but not KVM specific one). For synch'ing the Xen trace with
> them, well, I don't really know... We'd have to think about it. :-P

Really, TSC is the way to go. All you would need to do is to have a way to
map all the TSCs together. Assuming the xen trace has a unmodified TSC, and
you can retrieve all the multipliers and shifts used for each guest, you
then will have a synchronized TSC. Then only one guest or the xen HV needs
to calculate the TSC to nanoseconds, and then have all use that. Probably
would need to be the xen HV as it would be the one without a modified TSC.

-- Steve


From xen-devel-bounces@lists.xenproject.org Wed Apr 14 23:13:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 14 Apr 2021 23:13:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110855.211791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWohF-0001sJ-9F; Wed, 14 Apr 2021 23:13:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110855.211791; Wed, 14 Apr 2021 23:13: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 1lWohF-0001sC-5e; Wed, 14 Apr 2021 23:13:21 +0000
Received: by outflank-mailman (input) for mailman id 110855;
 Wed, 14 Apr 2021 23:13:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rCy3=JL=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lWohD-0001s7-Js
 for xen-devel@lists.xenproject.org; Wed, 14 Apr 2021 23:13:19 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 11b0f9ed-a171-41ff-a185-6cce697e2ac0;
 Wed, 14 Apr 2021 23:13: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: 11b0f9ed-a171-41ff-a185-6cce697e2ac0
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618441998;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=MxiZcR8t5WTHKFr8BYaHpabUW3tVvLhrW1K0P7uJ9/o=;
  b=OQEVxmm5vT+ynuMlCVDfes6RPpRK4rxIrIGngv+iCLSCqRb3R4Yez8mj
   i2aK2ZoBWRcpDsmLKnf6g5w6LD8pUYuCrewOjvMO7ALNJmnvYH3NC5T6e
   apffzhcFj9QFhmT+6QsBYz5Q+7XgWF0Qu88VaueZ7vOHm9laxtr4hf8QP
   E=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: knLixlc8nRJxkAmEDNh77KF1klhIQ49Ckr+d+0rhngnsodcw13vNLFEnDEgdAJ7tZV8HxGBv7E
 0Fg68cAt1bsOYcUMlrtfQuuV63aHI/dlcf31UqkGkUpLTm2C+1te2SMPrnctjEZDH4Xy8pwJK0
 BAMTMccWWlQIN25yB3ZZ/kGUuaRuVd4zSUpM5gd+la8i57DKtt6IzSW/EpEqdeAE6qc1uorw1k
 OvruIYNgkUbV7OIS2Sqg/VRl+HshkCJOoCNWphvPqFkyA6T4FFdojzG+l877Xg5AII9Ev1CcYx
 22Q=
X-SBRS: 5.2
X-MesageID: 41464570
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:iJ0gA6Puy37AwcBcT5Dx55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsa9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrwHIMxbVstRQ3a
 IIScVDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RZQZCtBApsQiztRIACdD0FwWU1iDZ02CJ
 KT6qN81kadUF4Qadm2AWRAYvPKoMfFmImjTRkNARMm7wfmt0LW1JfRFR+E0hACFw5e2LtKyx
 m5ryXVxIWG98u6xBjVynPJ4/1t9ufJ59NfCKW3+7AoAxr2jALAXvUGZ5Sju3QPrPir+BIWlr
 D30m0dFuBSz1+UQW2vuxvq3GDboUUTwlvv00WRj3emgeGRfkNCN+N7iYhUcgTU5iMb1bkWus
 I7vBPti7NtARzNhyj77dTTPisa8XacmnY+jfUVy0VWTIp2Us4gkaUk4EhXHJ0cdRiKirwPLe
 8GNrC42N9ra1+AK1jWsm5zqebcJUgbL1OtR0gPvdGtyD5GnHx15Ftw/r1vol4wsL06UJVK/O
 LCL+BBk6xPVNYfaeZHCP4GWtbfMB2CfTv8dEe+ZW39EqsKIWjApvfMkfwIzdDvXKZN4Io5mZ
 zHXl8dnWkue3j2AcnL+JFQ6BjCTEi0QDyF8LAe27FJ/pnHAJb7OyyKT14j1+G6pe8EP8HdU/
 GvfLpLHv7KNwLVaMR09jy7f6MXBWgVUcUTtNp+cUmJuNj3JorjsfGeWOrPJYDqDS0vVgrEcz
 g+dQm2AP8FwlGgW3f+jhSUcWjqYFbD8ZV5F7Wf0PMUzKQLK41QoikYgVm0/aiwWHl/m51zWH
 E7DKLsk6u9q2Xz133P9X9VNh1UCVsQwLiIaQIMmSY6d2fPNZoTsdSWfm5fmFGdIAVkcs/QGA
 lD43B++ae9KY2s1TkvYujXdF6yvj82njanXp0ckqqM6YPOYZUjFKsrX6R3CEHtGwFqnx1p7E
 NOchUNSEOaNj6Gs9TksLUkQMXkM/VsigaiJsBZ7VjFs1+HmM0pTnwHGxi0UcCWhg4qbyFOhk
 J49pIehLboo0frFUIPxMADdHFcYmWeB7xLSC6fYp9Pp7ztcAZsCVuRiSeikBE1cGry/0A0jm
 jsRBfkIM3jMx54gDR1w6zq+FR7eiG4c1hrYn53i4F7CF/Lo21+y+ONe6q13VaAc1dq+JBuDB
 j1JR8pZi9+zdG+0xCY3AyPEngr3b0CFO3QBrZLScCf5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku+NzXjEd4k3ASTu1coMCR5s2MfjPvtwRHphVLIhEIXML73GhBLVrsbK9aT4yzYXP6Oyo
 x+ls9wku2qMGn9A+T2gZ3/XnpmEFf0rmG3Re1z9swRkqI2qbdpH57UFRHPz2pK2R0iLMHy0G
 MSKZ4Ll4zpC8tKRYg1fSkcw38C0PKoB2EvuhbtAuA/cUo25kWrde+h0v7tk/4XHkaFpAHMIl
 GR/C1WwufdU0K4pMonIpN1BV4TVVM153tj9t6TboH8CA2lcOdY4VqxW0XNBoN1eeygGb8KqA
 x97MzNt+iLdzDg0AS4h0o2Hot+t0KmS9i1GgSCBKph9MG7I02Fhu+P7NSohDn6DRu9ZEJwv/
 wLSWUgKuBCgCIllos5z2ybTbH2uFsslx9m2g5c/2SdkbSO0SP8BkFJMQrQn5VQU31yCxGz/L
 r42Nnd8m/87jhD0YTED2FKcLh1aoMtcrQ=
X-IronPort-AV: E=Sophos;i="5.82,223,1613451600"; 
   d="scan'208";a="41464570"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QBSea5Jzpj3qThF1M2CfA+Vj4cqE5xToc4VonFDftZlVh8Kc7sqS4UstUH4BsIw4lkn1Q3/UrNFp8WkDjA9KRgQmTxhINIgOyKjz+vqecs99injWVHuHE+1+dnQdA/Vb/DNJE3PGb7ZUAJiWt6yeoFgMlOiBJqYAAzDdu7sXKD0ne3FA0aV25i5fcLazfMHK7lEYN9vDQPvtBj2jZ+DOGaNNys1SlLftrZr1cZ+r05JVmd8PDJF1LZS60c2mD7cD5Ky9Ex88u9DL3B48BdKZ4o1ZR4qj+0zyNfA4m3w8IxwAN8rniFBysCt185k2LqxhynXuaE5qfb0N6GVZ02rDqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3UGsZZOB/YkxY1+sk5Tn33PUXOo/nFfeTk9yWYl3k5g=;
 b=alucKAD5PJbcvX/O3c7YdOIXfdaeiwzw0xC7MArEOs12cgeTCYVwuDZ5H25s9jGyxKDuX/39V0umj4Q0ekADYYy2cfdRDVqeuA17AfhAvBcyj8wnIY9iHW+yT/uZBjhsHbJWvbFZMFJpfk/UnkqfhRByrVU5Ja2tlyEqD6wmUJpmeEZKlC0oqAaVzvcnxriURK/YXKqgbWYsyxQk9iCYamDBov1r00KlcvmbzZemZn8Y5S+QR9yFSYoagiAwmeNOw5TtCBIVbKYfeH8+5GpW6AYzUfGS4VApFMQ9K6x74rjckCkN8Or73m5HYLiIZzXivkWyHefpQau/dWTP7Unogg==
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=3UGsZZOB/YkxY1+sk5Tn33PUXOo/nFfeTk9yWYl3k5g=;
 b=XKU4UtAITwBXS9lynOVcVOWSAxtxah4SMLSVWGQTwYb/hn3nO0/wrbGZ9R2inbX6ILufI/pk7kGsFb0KnYr/0nM38R3dBrr3TnLF/csBX5ELVNIkhlzt5GMKc1TIHTZvp3dwYz0JD+ccRuXZZoPF9L9Tz+VUrsLOh2z3L7FRQLE=
Subject: Re: [PATCH v4 1/2] x86/vtx: add LBR_SELECT to the list of LBR MSRs
To: Jan Beulich <jbeulich@suse.com>
CC: <andrew.cooper3@citrix.com>, <roger.pau@citrix.com>, <wl@xen.org>,
	<jun.nakajima@intel.com>, <kevin.tian@intel.com>,
	<xen-devel@lists.xenproject.org>
References: <1618375222-9283-1-git-send-email-igor.druzhinin@citrix.com>
 <871c259b-487e-4c67-e648-b1aefef55df3@suse.com>
From: Igor Druzhinin <igor.druzhinin@citrix.com>
Message-ID: <45ab2093-f140-1b91-f683-dc0ca17159c5@citrix.com>
Date: Thu, 15 Apr 2021 00:13:08 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
In-Reply-To: <871c259b-487e-4c67-e648-b1aefef55df3@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: LO2P265CA0450.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:e::30) To BN3PR03MB2401.namprd03.prod.outlook.com
 (2a01:111:e400:7bbc::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 67447c27-24e1-4adf-526a-08d8ff9ae19c
X-MS-TrafficTypeDiagnostic: BN7PR03MB4354:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN7PR03MB43543B8FF929D721CF89E380E44E9@BN7PR03MB4354.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: kR8AhP5cVyThWuVcITJkYEou6J/kTvCf159kmY/IXIAFY5e0qO95JJ8ioMQqJVGtIeX2UKXEN7VP6jWQz88+z5FD0qx8zJbZp089qZZO9LRiZT+SpsqsksGva8IGRrgAEZAvn6GaoO4ZWZu1pe7hrf2soLj3Nx64oXofc0UztuwFPS25qHlvVzdJt9JRYqIAfGxHaaLo6FO+ncEcCKhXpgvk8GDR01Y6GT7EOJM1NV2BM0raWrMpfiBU2AWvIMPVrVZS2nRTsVd/U/n9Uck0qap5X2bqYJlLmOfTuKDd1d3tmV2w6nAFoGdGya9iu7PUTHVBNcduYujPDMxtrn5NmPT3AzpyHWlFdTuWu6u3LgSNNm+EZrJGd+lzchGwKQssjFzrrBttQ6dKmEHkBchuSB2OBV0klUtXNB7VdmKvF3HR6854lXx9Oiqhcy1ceqwZPPHWszubZueeXl4mttHvEabBrWVj4w86ALZEML2ju5z3mAtE6ZFIgNbDt43gfMybnqdhx7ttxZExKduUSdR+N+UbSYLgODq6KPatJMhw4U6jyoJNnvChwRR1bOZVItOxINzj1+ZUBeXcwJuhhcqGzAhOasGpHu1+fIvN59WNXoP4mFDoLn9qeaqHO9I53Urcl0xS7bWNJr37dBN5JghB1k8FcMsfm4PAhi+QbBk9D6y99bCLkfy6M95Nhk2adFbt
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN3PR03MB2401.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(136003)(376002)(396003)(346002)(39860400002)(26005)(2616005)(956004)(53546011)(66476007)(6916009)(5660300002)(16576012)(38100700002)(44832011)(6666004)(186003)(86362001)(31696002)(36756003)(478600001)(31686004)(66556008)(316002)(2906002)(8676002)(66946007)(16526019)(6486002)(4326008)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 67447c27-24e1-4adf-526a-08d8ff9ae19c
X-MS-Exchange-CrossTenant-AuthSource: BN3PR03MB2401.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2021 23:13:15.1318
 (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: +gz6kot7IXVFX5Bv3UudBsbqyUf1IbUjn7/rU/cd8XK8GYKHqLaOfKj8UssyreTprnZ7NsDGqVMA35f7xNhJWGsytuDfZqgXW/aupyU16QU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR03MB4354
X-OriginatorOrg: citrix.com

On 14/04/2021 12:41, Jan Beulich wrote:
> On 14.04.2021 06:40, Igor Druzhinin wrote:
>> --- a/xen/arch/x86/hvm/vmx/vmx.c
>> +++ b/xen/arch/x86/hvm/vmx/vmx.c
>> @@ -2915,14 +2915,16 @@ static const struct lbr_info {
>>   }, nh_lbr[] = {
>>       { MSR_IA32_LASTINTFROMIP,       1 },
>>       { MSR_IA32_LASTINTTOIP,         1 },
>> -    { MSR_C2_LASTBRANCH_TOS,        1 },
>> +    { MSR_NHL_LBR_SELECT,           1 },
>> +    { MSR_NHL_LASTBRANCH_TOS,       1 },
>>       { MSR_P4_LASTBRANCH_0_FROM_LIP, NUM_MSR_P4_LASTBRANCH_FROM_TO },
>>       { MSR_P4_LASTBRANCH_0_TO_LIP,   NUM_MSR_P4_LASTBRANCH_FROM_TO },
>>       { 0, 0 }
>>   }, sk_lbr[] = {
>>       { MSR_IA32_LASTINTFROMIP,       1 },
>>       { MSR_IA32_LASTINTTOIP,         1 },
>> -    { MSR_SKL_LASTBRANCH_TOS,       1 },
>> +    { MSR_NHL_LBR_SELECT,           1 },
>> +    { MSR_NHL_LASTBRANCH_TOS,       1 },
>>       { MSR_SKL_LASTBRANCH_0_FROM_IP, NUM_MSR_SKL_LASTBRANCH },
>>       { MSR_SKL_LASTBRANCH_0_TO_IP,   NUM_MSR_SKL_LASTBRANCH },
>>       { MSR_SKL_LASTBRANCH_0_INFO,    NUM_MSR_SKL_LASTBRANCH },
>> @@ -2937,6 +2939,7 @@ static const struct lbr_info {
>>   }, gm_lbr[] = {
>>       { MSR_IA32_LASTINTFROMIP,       1 },
>>       { MSR_IA32_LASTINTTOIP,         1 },
>> +    { MSR_GM_LBR_SELECT,            1 },
> 
> What about Xeon Phi, Silvermont, and Airmont?

Yes, you're right - forgot about those. Will need to shuffle arrays a 
little.

>> --- a/xen/include/asm-x86/msr-index.h
>> +++ b/xen/include/asm-x86/msr-index.h
>> @@ -606,14 +606,18 @@
>>   #define NUM_MSR_C2_LASTBRANCH_FROM_TO	4
>>   #define NUM_MSR_ATOM_LASTBRANCH_FROM_TO	8
>>   
>> +/* Nehalem (and newer) last-branch recording */
>> +#define MSR_NHL_LBR_SELECT		0x000001c8
>> +#define MSR_NHL_LASTBRANCH_TOS		0x000001c9
>> +
>>   /* Skylake (and newer) last-branch recording */
>> -#define MSR_SKL_LASTBRANCH_TOS		0x000001c9
>>   #define MSR_SKL_LASTBRANCH_0_FROM_IP	0x00000680
>>   #define MSR_SKL_LASTBRANCH_0_TO_IP	0x000006c0
>>   #define MSR_SKL_LASTBRANCH_0_INFO	0x00000dc0
>>   #define NUM_MSR_SKL_LASTBRANCH		32
>>   
>>   /* Goldmont last-branch recording */
>> +#define MSR_GM_LBR_SELECT		0x000001c8
>>   #define MSR_GM_LASTBRANCH_TOS		0x000001c9
> 
> Wouldn't it make sense to also re-use the NHL constants, like you
> do for Skylake?

I didn't really see GM to be derived from NHL so decided to split those. 
Looks cleaner to me that way otherwise might be a little confusing to 
use NHL constants in GM definitions. Given the change above - I will 
have to reshuffle those anyway in v5.

Igor



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 00:14:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 00:14:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110864.211813 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWpdu-0007xt-KZ; Thu, 15 Apr 2021 00:13:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110864.211813; Thu, 15 Apr 2021 00: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 1lWpdu-0007xm-HZ; Thu, 15 Apr 2021 00:13:58 +0000
Received: by outflank-mailman (input) for mailman id 110864;
 Thu, 15 Apr 2021 00:13:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8wfo=JM=suse.com=dfaggioli@srs-us1.protection.inumbo.net>)
 id 1lWpds-0007xh-C3
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 00:13:56 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8be4a69a-a7d0-4898-8068-3a3ac8b4b033;
 Thu, 15 Apr 2021 00:13:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B5001AE04;
 Thu, 15 Apr 2021 00:13: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: 8be4a69a-a7d0-4898-8068-3a3ac8b4b033
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618445633; 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=Q0T+v6zL6GfHaLMvhXPI6g3D1DcmeL+8iTKHc7zBAv4=;
	b=iMxp4QmmGUM4z1OoLri/WglYFabgdfxgioiakrx2M/0rdCb5Mo3wGvGBhkunyzebdZgNPB
	XfOK4xlQOLNpZkHxBM4XiMIxYd1/XhK//r8n2Qgt6rbQsHK51HvCNrv4HTNBgO2NPEo7uR
	uJ63a/QzBkRVN6g4MHe4LPW6zvEBn/k=
Message-ID: <697db332afe1a229102ebc814139d90cda543446.camel@suse.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
From: Dario Faggioli <dfaggioli@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Steven Rostedt
	 <rostedt@goodmis.org>, Giuseppe Eletto <giuseppe.eletto@edu.unito.it>
Cc: linux-trace-devel@vger.kernel.org, xen-devel@lists.xenproject.org, 
	Enrico Bini <enrico.bini@unito.it>
Date: Thu, 15 Apr 2021 02:13:52 +0200
In-Reply-To: <094c4b3f-3988-c51f-3a69-cfbc8d6a45bf@citrix.com>
References: 
	<CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	 <20210413114614.4971caff@gandalf.local.home>
	 <094c4b3f-3988-c51f-3a69-cfbc8d6a45bf@citrix.com>
Content-Type: multipart/signed; micalg="pgp-sha256";
	protocol="application/pgp-signature"; boundary="=-3iO7aY7vV/PXkZmNNrYm"
User-Agent: Evolution 3.40.0 (by Flathub.org) 
MIME-Version: 1.0


--=-3iO7aY7vV/PXkZmNNrYm
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2021-04-14 at 11:07 +0100, Andrew Cooper wrote:
> On 13/04/2021 16:46, Steven Rostedt wrote:
> In a Xen system, dom0 is just a VM, and particularly on larger servers,
> may not be as many vcpus as the system has logical threads.
>=20
> This causes major problems for `perf` support under Xen, which assumes
> that the kernel's idea of CPUs matches that of the system.
>=20
Yeah, but we wouldn't need anything like that, in this case.

> When rendering a trace including Xen data, Xen can provide the real
> system CPUs, and dom0 wants to be rendered as a VM under Xen, similar
> to
> trace-Fedora21 in your screenshot above.=C2=A0 (Obviously, if you're doin=
g
> nested virt, things need to start nesting.)
>=20
Exactly!

So, basically, events captured with trace-cmd on Dom0 will end up in a,
say, trace-dom0.dat file. It will contain ftrace event records, each
one with a timestamp and the ID of the CPU where it occurred. Of
course, in this case, that ID would be the ID of one of the Dom0 vCPUs
(seen from inside Dom0 itself).

And the same for all the trace files collected inside any other guest.

In KVM, vCPUs are Linux task. In fact, in Steve's screenshot [1], you
can see a task called 'CPU 0/KVM', with PID 2356. Note, however, that
with the KVM-Combo view active, there's a special 'CPU 0/KVM-2356' plot
in the graph. That shows _when_ that particular task, which is vCPU 0
of the KVM VM, runs. It's special because it has a 'CPU 0' plot "glued"
to it. In that plot we see the tasks (and the events) that were running
inside the VM, on vCPU 0.

[1] http://rostedt.org/private/kernelshark-kvm.png

So, if task A run from time t1 to time t2 on vCPU 0 of the Fedora21 KVM
guest, which in turn was running on physical CPU 3, we will see a non-
white (magenta, in the screenshot) box between t1 and t2 in the 'CPU
0/KVM-2356'. And we will see a non-white box on the 'CPU 0' plot which
is "glued" to 'CPU 0/KVM-2356' (it will be of whatever color KS decides
decide to use for task A, say, blue).

If at time t2 task B starts to run on vCPU 0 of Fedora21, and runs
until t3, we'll still see the magenta box on the 'CPU 0/KVM-2356',
between t2 and t3, while on the 'CPU 0' plot glued to it, we'll see a
box of whatever color is chosen for B (say, yellow).

Note that you don't see, from just this plots, _where_ task 2356 is
running, as in on which physical CPU. That will be visible in the CPU
plots, which do not appear in Steve's screenshot. Basically, if 2356
(i.e., the task corresponding to vCPU 0 of the Fedora21 VM) was running
on physical CPU 3 between t1 and t3, we'll see a magenta box, between
t1 and t3, on the plot called 'CPU 3 (and this is a "single plot",
i.e., one that does not have any other plot "glued" to it, e.g., like
the ones that are visible in Giuseppe's screenshot).

In the case of Xen, it's not that different. vCPUs are modeled and
considered by the plugin as if they where Linux tasks. In fact, you see
in Giuseppe's screenshot [2] that the 'Task' column contains strings
such as "d0/v5" or "idle/v4".

[2]
https://raw.githubusercontent.com/giuseppe998e/kernelshark-xentrace-plugin/=
master/.github/img/ks-xentrace.png

We needed to come up with a PID, as KS not only wants to print it in
the relevant column, but it uses it for associating colors to tasks
(i.e., colors to vCPUs, in our case). Currently, the value stored in
that PID field is computed as a combination of domain ID and vCPU ID.

If d0v5 runs on CPU 6 from t1 to t3, we'll see a, let's say, green box
between t1 and t3 on the CPU plot CPU 6. And this is something that
Giuseppe's plugin can already tell (show! :-D) us.

If task A runs on vCPU 5 of Dom0 from t1 to t2 and that task B runs
there from t2 to t3 there will be events about that in our
trace-dom0.dat file (collected via trace-cmd), and the CPU-ID of these
events will be 5.

A "Xen-Combo" plugin will have to have a way to know that events from
the trace-dom0.dat file which have a CPU-IDs equal to 5 should be
matched with task 'd0/v5' from the trace.xen file (collected via
xentrace).

It will therefore draw, in addition to the CPU plots that are already
there in the current version of the plugin (what plots one wants to
visualize is configurable, BTW) some special plots, one for each vCPU
running on the system, including the ones of dom0 (or, at least, one
for each vCPUs of each domain for which we have a trace file).

Among these special plots, there will be a 'd0/v5' plot which will have
a green box between t1 and t3. And "glued" on top of it, there will be
a 'CPU 5' plot which will have, say, a blue box between t1 and t2 and a
yellow box between t2 and t3.

As for the KVM case, the CPU plots will tell you on what physical CPU
d0v5 runs. While the special 'CPU 5' plot that is "glued" to the
'd0/v5' one will tell you what tasks run on vCPU 5 of Dom0, at any
given point in time.

Regards
--=20
Dario Faggioli, Ph.D
http://about.me/dario.faggioli
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
-------------------------------------------------------------------
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

--=-3iO7aY7vV/PXkZmNNrYm
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

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

iQIzBAABCAAdFiEES5ssOj3Vhr0WPnOLFkJ4iaW4c+4FAmB3hUAACgkQFkJ4iaW4
c+7SkA/9HYRblHFkv8mNdeY+Y6xmNYvgNgGyKZog4mklvUA+eHKz16TF1phxAgai
hLiQlvJvXO6QMqssbE12jd57Hklp2qO3OnJSueFlMc0KUjiqupzWkccMzWp9pX3k
hgFuAtPhlZSy4RK14cdwfzUJyloaVh+C0sJh1mCVBwBa8veGv3zx+MsRDoMq9T1K
OKouHcMnz3Af/uOVhumnLjeKDupxdPRV6JIWX1MEBPMVouUPHXzPpuGw9D1qT9Wv
DiEsKV8IkNhTPveSa1tiMWFbAwjBYIFFhOPXZyARphXMTR1iSBLZpqq432nuBFDt
cSm3MG2MUbX+B+wq608/apbZTCZtEwN8Z26/yN31n+mSME5dk7aV5VqUoXkdwtpJ
f5dnhJybIzGYf5VgYSggNPV6L3m+3OFsv2fiq/74xQP75AVdopTNKYTOu20cGEfc
IJXki4s5AI67TFIgYuAjurk5zLaRKohhj89ndp5tyPNEQj6k5qAaLZu75xlyPFbq
V+6IVhKdmS6XGNhSty2NCNQoIOGtIOF5zjAn3ygSTHYfXdMnQj6sk8R54VT+Tn5Z
sV1nEGruY4RaWYT83RXOBfWMNX1HchqMUwlFCP6tdYNer7LrxAdMAmaeVbaoQwQ+
f1GFvYiF7Nsl6vn2IavyVhuo6Xqwf5A9vEq1Teq6wJw+Uq6EC/0=
=OL5f
-----END PGP SIGNATURE-----

--=-3iO7aY7vV/PXkZmNNrYm--



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 00:42:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 00:42:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110872.211825 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWq4w-0002Jk-3j; Thu, 15 Apr 2021 00:41:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110872.211825; Thu, 15 Apr 2021 00: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 1lWq4w-0002Jd-0F; Thu, 15 Apr 2021 00:41:54 +0000
Received: by outflank-mailman (input) for mailman id 110872;
 Thu, 15 Apr 2021 00:41:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8wfo=JM=suse.com=dfaggioli@srs-us1.protection.inumbo.net>)
 id 1lWq4v-0002JX-5k
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 00:41:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6ae5926f-5ee0-460c-be3f-5de70f87f92d;
 Thu, 15 Apr 2021 00:41:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 52938B0B8;
 Thu, 15 Apr 2021 00:41: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: 6ae5926f-5ee0-460c-be3f-5de70f87f92d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618447311; 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=u/7DWqK+KH2xCdJetKy2G8NR7twfetAs1zlOuqKquYk=;
	b=gcww7yqzF1KdJV+NjrAq7ro8n7W8HiEQJ6CcXoi9s7IKSwLmci25S36xUW2nOXa6PcnO3M
	7vYZQF2awBnpc1olvOyEOo+ge8iKdYOsYj/Gref3fvCg8PUZaEMefc30XB3SIoOd2P7ScX
	WodlTmgOBY8dbt/IqJDg+C6Ye2YKLic=
Message-ID: <6176e02b5b82e9be10351ea386ba2cb8573d7f5b.camel@suse.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
From: Dario Faggioli <dfaggioli@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Steven Rostedt
	 <rostedt@goodmis.org>
Cc: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>, 
 linux-trace-devel@vger.kernel.org, xen-devel@lists.xenproject.org, Enrico
 Bini <enrico.bini@unito.it>
Date: Thu, 15 Apr 2021 02:41:49 +0200
In-Reply-To: <f44f994d-32da-0610-57d8-e3a30bbb278c@citrix.com>
References: 
	<CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	 <20210413114614.4971caff@gandalf.local.home>
	 <094c4b3f-3988-c51f-3a69-cfbc8d6a45bf@citrix.com>
	 <20210414094300.7fbd6887@gandalf.local.home>
	 <f44f994d-32da-0610-57d8-e3a30bbb278c@citrix.com>
Content-Type: multipart/signed; micalg="pgp-sha256";
	protocol="application/pgp-signature"; boundary="=-42X2G7kQJlH4RwMaJMhn"
User-Agent: Evolution 3.40.0 (by Flathub.org) 
MIME-Version: 1.0


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

On Wed, 2021-04-14 at 21:05 +0100, Andrew Cooper wrote:
> On 14/04/2021 14:43, Steven Rostedt wrote:
> >=20
> > What I would envision how this would work, is that you would
> > produce a
> > set of tracing files. One for each guest (including Dom0), and one
> > for the
> > Xen hypervisor itself. The trick is to have a way to synchronize
> > the time
> > stamps. What we just did with KVM is to have all the tracing record
> > the
> > CPUs TSC, including the shift and multiplier that the CPU might
> > change for
> > the guests. Then we have a way to convert the TSC to nanoseconds.
> > This way
> > all tracing data has the same clock. It's somewhat complicated to
> > get
> > right, and requires access to how the guests clocks are modified by
> > the CPU.
>=20
> Xen certainly has enough information to describe what TSC rate/epoch
> each guest is seeing, but I doubt any of this is coherently exposed
> at
> the moment.
>=20
Yeah. In KVM its in, e.g.:

/sys/kernel/debug/kvm/85276-13/vcpu0/tsc-offset

Where 85276-13 is a combination of the PID of the main QEMU process and
one of the KVM file descriptors.

> > The Xen plugin would then need to read the how the threads in
> > xen.dat map
> > to the virtual CPUs of each of the guest files. Which would give
> > you the
> > layering.
>=20
> Looks good.=C2=A0 I suspect we might need to do a little work on Xen's
> trace
> data to make this mesh together nicely.=C2=A0 In particular, Xen doesn't
> have
> a terribly good scheme on unique IDs for "a VM".
>=20
True. However, Linux recycles PIDs too, doesn't it?

I mean, if PID 1234 is running when I start tracing and it dies and,
after a while, another task with PID 1234 is started KernelShark will
probably treat and display them as if they were the same task? Or
wouldn't it?

Currently, the Xen plugin combines the domain ID and the vCPU ID to
come up with a PID, that then will be used for assigning a color to
each vCPU.

This is pretty much arbitrary and can be changed, but it of course has
to be something that we can extract from from the trace event records
or, at least, from the trace file (e.g., as Andrew said, we do have
per-VM UUIDs, but they're currently not there).

Regards
--=20
Dario Faggioli, Ph.D
http://about.me/dario.faggioli
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
-------------------------------------------------------------------
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

--=-42X2G7kQJlH4RwMaJMhn
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

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

iQIzBAABCAAdFiEES5ssOj3Vhr0WPnOLFkJ4iaW4c+4FAmB3i80ACgkQFkJ4iaW4
c+5oSg//b6TIvtCT4ZzBV+RfogiF9rSsbjCz8gJdaRjw+qA2M9VHQBOt77FX64/3
7q2MA8N1sxnYWiOX7vesF0xqOmMfleiee0THrLNmLQPuZQanfVUHjrPDdb9GTZC4
czUHFQnn1jtoj2GY+Xmfbl+7K47EmRJEnGSOV2JXNjPd/tuuDcFCozwdkCqrIIyb
1kuUK+cnEHQTxUAqndpd0WNpwfwX1CfnKS5YNDkvkOmC3sRX790MtcJ8Mvloqk1r
A/+VIYwGiRBJf2ewHmWsmBpx2u7L+0WjSvZYQbSiNbXhbQMS+ml8UVK9u7dFKQ2k
Idcv0Z/BN7PWGrmhag60MelWc4YHFro5J6NLULtE8KmY0s85n4Hkph2UVGnefoWB
WCXPG4cGoTgLbiDxcL9A50JxOA7v6v/7lxkZCZWde1F86umKEU7Niphad5ikh4Pz
4dZzVhXIlfm+LtbS0DUnq1RiqXEFjATaBWImqvidSHHFPe2jl2apezQ7C+o3Tcdz
HsMCadTHSb3RX6MJ6d/kv46/e38CA5bYTj7C0hyaVyKHxet4xAGMCCbEDIVYRgzy
MtWlKu6swyoNLYfjH/Av02xMp+0areZm3xhY67HE7BD+N8/3JzkLbZQPlv70Y2aj
HZvxukeiED5862MPwVGk9IytB6sTaMD3mLK61AUyPIvpIsfjhbU=
=grG+
-----END PGP SIGNATURE-----

--=-42X2G7kQJlH4RwMaJMhn--



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 00:42:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 00:42:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110873.211837 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWq5D-0002Ns-CJ; Thu, 15 Apr 2021 00:42:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110873.211837; Thu, 15 Apr 2021 00:42:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWq5D-0002Nj-96; Thu, 15 Apr 2021 00:42:11 +0000
Received: by outflank-mailman (input) for mailman id 110873;
 Thu, 15 Apr 2021 00:42: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 1lWq5C-0002NL-5W; Thu, 15 Apr 2021 00:42: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 1lWq5B-0006At-VW; Thu, 15 Apr 2021 00:42: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 1lWq5B-0005NV-Jn; Thu, 15 Apr 2021 00:42:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWq5B-0005UK-JG; Thu, 15 Apr 2021 00: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=DsUl8nzdsbnFXnoGVlZKhToeEHKIU6gftycL4WS8Cpc=; b=PtbHXh1tLp5LmnPWV+sPNCyJAT
	E6hb3lx4uPgciiBjt0UarpiBDpS8Sqm7evNm7sif7yK6sC5E3rQFywhNyMm9E/IS4Q5NOVGcxwwc2
	jfZiv4DjquhUBCZgzIncRZjC7lCJEhztsU9Cd5oIkbIO6Ac6Y5dtLa0n2kwg/gzn6tNA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161124-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161124: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 00:42:09 +0000

flight 161124 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161124/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

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

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   57 days
Failing since        160128  2021-03-18 14:36:18 Z   27 days   34 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   25 days   32 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 00:51:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 00:51:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110881.211852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWqDi-0003P2-9S; Thu, 15 Apr 2021 00:50:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110881.211852; Thu, 15 Apr 2021 00:50: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 1lWqDi-0003Ov-5y; Thu, 15 Apr 2021 00:50:58 +0000
Received: by outflank-mailman (input) for mailman id 110881;
 Thu, 15 Apr 2021 00:50:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8wfo=JM=suse.com=dfaggioli@srs-us1.protection.inumbo.net>)
 id 1lWqDg-0003Oq-Ko
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 00:50:56 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b8fec132-a1ad-4145-96bf-5b44521ecfc7;
 Thu, 15 Apr 2021 00:50:55 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C5757AFE8;
 Thu, 15 Apr 2021 00: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: b8fec132-a1ad-4145-96bf-5b44521ecfc7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618447854; 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=dlYSapZ/7bzlynnCiHUirDDpulbBa6SiYnz7NV4uVao=;
	b=n630jxTO3aLbC2wjboZ60L7moOGNnolNdHh1blZtvfk4GLUPZFFWYgvlDWGdgEeiz4Z/4e
	OUDGbOipJwDiY/UfU9CQY6SpAc0NHz67prJuSd55aRDSH7oqEvKewwhrl5beOl990r1FLO
	xl7xK//mD0RN7rCf0GxY0/ZavnwiKLs=
Message-ID: <281ee74f5ce416feeafbca7cb8370889e0d2067f.camel@suse.com>
Subject: Re: A KernelShark plugin for Xen traces analysis
From: Dario Faggioli <dfaggioli@suse.com>
To: Steven Rostedt <rostedt@goodmis.org>, Andrew Cooper
	 <andrew.cooper3@citrix.com>
Cc: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>, 
 linux-trace-devel@vger.kernel.org, xen-devel@lists.xenproject.org, Enrico
 Bini <enrico.bini@unito.it>
Date: Thu, 15 Apr 2021 02:50:53 +0200
In-Reply-To: <20210414150752.34366b99@gandalf.local.home>
References: 
	<CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	 <f33b39a5-9bbd-934f-a9cd-c536a0ba7416@citrix.com>
	 <eefc512b8c1ac26c4eaae81e79ee0243901a3de2.camel@suse.com>
	 <7184a7d7-6bca-4106-d70e-8cf9d5b227fb@citrix.com>
	 <20210414150752.34366b99@gandalf.local.home>
Content-Type: multipart/signed; micalg="pgp-sha256";
	protocol="application/pgp-signature"; boundary="=-2AQ1hzKpsCodCCgwu1uf"
User-Agent: Evolution 3.40.0 (by Flathub.org) 
MIME-Version: 1.0


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

On Wed, 2021-04-14 at 15:07 -0400, Steven Rostedt wrote:
> On Wed, 14 Apr 2021 19:11:19 +0100
> Andrew Cooper <andrew.cooper3@citrix.com> wrote:
>=20
> > Where the plugin (ought to) live depends heavily on whether we
> > consider
> > the trace format a stable ABI or not.
>=20
> Agreed. Like the VMware plugin to handle ESX traces. It's internal
> and not
> published as the API is not stable.
>=20
Mmm... Does this imply that Linux's tracepoints should be considered a
stable ABI then? :-D :-D :-D

> But if it ever becomes stable, and you would like it to live with
> KernelShark, we are looking to have a place to store third party
> plugins.
>=20
Sure. TBH, either Xen or KernelShark main or plugin repositories would
be fine for me.

Which doesn't mean we should choose randomly, as clearly each solution
has pros and cons that needs to be evaluated.

I'm just saying that we would prefer the plugin to end up in one of
those places, rather than remaining its own project. And of course
we're up for maintaining it, wherever it lands. :-)

> We are working to make sure that the API for KernelShark plugins
> remains
> stable, so your plugins should always work too.
>=20
Great!

Regards
--=20
Dario Faggioli, Ph.D
http://about.me/dario.faggioli
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
-------------------------------------------------------------------
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

--=-2AQ1hzKpsCodCCgwu1uf
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

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

iQIzBAABCAAdFiEES5ssOj3Vhr0WPnOLFkJ4iaW4c+4FAmB3je0ACgkQFkJ4iaW4
c+4g1xAAyNZnLAMDBqCg/xvPLTBFwcx1vx9zIc4zYPKhCWbQwbhVPlVzwumZ+IN7
hNiPbSphYIi+AanJ1cLp0xHclH3Z/5DMFOAfHIh+tqPghWnASi6a/4/ah+4QNMWK
N862BrNCaCMj3Pt4ig35HgQoDNBnu+tp4pcSpSrDPTXEEv5aTqmx8a1kBMqYacba
suoePMzpZ8ksXdaMATQ375dDKxtEihXfwiGP4Si94Rfebvp/fAJZ41yZO2qRv6wp
vG+PSRQrT723U9HEnW3bO2mrGAm1giLrL004zQE8TvdgzYG7eLvOkGFqSOkOpafT
DliJSRNdQC3/jMVprby/A1ypmVTmUm34RGhDq2os5b8BqYwQHx180odgD+KCf7/4
ZqqkwewMDRQelqCM5a8OB3TvhbfM3PRjekDIiiAy+7ExRihtIb6pqtj2I0d/ubB7
VwsViousoUQidt9+uPYUCZxwLOaUCyb/SKsFcJEfs4xJ5C3mFv9YNv0DoWX+nvSR
+m03nc/M+P1BL44qUpcpHhG/9kp5sCz1LvqTIyOmU7Eaf2LgKQ4pz6Zm/bomDUcX
TJBzJzhYNKqCvCBOwQn4q6VsUX62uAyuX5quLVtOM6ybe2nWuQzqmSvhBpkuNgXX
NUT4gclT4bdE5cM7TQgpddgB8p5BO4uRcEmAd3S8Nj3Fz/lCpdY=
=SC4N
-----END PGP SIGNATURE-----

--=-2AQ1hzKpsCodCCgwu1uf--



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 01:11:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 01:11:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110887.211864 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWqXi-0002cu-4l; Thu, 15 Apr 2021 01:11:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110887.211864; Thu, 15 Apr 2021 01:11: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 1lWqXi-0002cn-18; Thu, 15 Apr 2021 01:11:38 +0000
Received: by outflank-mailman (input) for mailman id 110887;
 Thu, 15 Apr 2021 01:11:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=clmd=JM=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lWqXh-0002ci-BD
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 01:11:37 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8129c747-bd19-45f7-8cc5-ddadf3afe090;
 Thu, 15 Apr 2021 01:11:36 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id A3B5D61029;
 Thu, 15 Apr 2021 01:11: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: 8129c747-bd19-45f7-8cc5-ddadf3afe090
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618449095;
	bh=nN5vxw7wu7IXl4SI40VE6V1scdLwwyhGyhvUjTu+P4o=;
	h=From:To:Cc:Subject:Date:From;
	b=parpw4CwFAlLxAz2JjWa8g1RVei0h9H2t5E0VKwdfAmYc77/QdgKeB0V7R6lVR1dw
	 1OK6zmaNwD3KD3uAXwltfN2U1ZaMcW4c5DUpfAv+E4kwOQ7dNwwUglD3mQsNK+zvgr
	 Y9UIg0AxPXp0lOsfBFh4B1EHqLI0tCfd6HZA1Fr3G1ARvyFARN1zqjSYC1Kfv2rLnK
	 kUCl539BNGaSWwkh6CnxhcSThb3RrNS3SkxKxG9VSRAmyTROHbApXC5I0l4Az5xAC1
	 xJ/AVdaWSZRKwPHzFUfWXbUZZhNYpx1PhlSR+Z99WErbMnHLhZoYOMnEcXaqJobSuo
	 xiKNZM41QR0Dg==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	wl@xen.org,
	cardoe@cardoe.com,
	andrew.cooper3@citrix.com,
	Stefano Stabellini <stefano.stabellini@xilinx.com>
Subject: [PATCH v2] automation: add arm32 cross-build tests for Xen
Date: Wed, 14 Apr 2021 18:11:33 -0700
Message-Id: <20210415011133.24000-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.17.1

Add a debian build container with cross-gcc for arm32 installed.
Add build jobs to cross-compile Xen-only for arm32.

Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Acked-by: Wei Liu <wl@xen.org>
---

Rebased on top of staging, using the new "hypervisor_only" option.

---
 .../debian/unstable-arm32-gcc.dockerfile      | 24 +++++++++
 automation/gitlab-ci/build.yaml               | 50 +++++++++++++++++++
 automation/scripts/build                      |  5 ++
 3 files changed, 79 insertions(+)
 create mode 100644 automation/build/debian/unstable-arm32-gcc.dockerfile

diff --git a/automation/build/debian/unstable-arm32-gcc.dockerfile b/automation/build/debian/unstable-arm32-gcc.dockerfile
new file mode 100644
index 0000000000..b41a57f197
--- /dev/null
+++ b/automation/build/debian/unstable-arm32-gcc.dockerfile
@@ -0,0 +1,24 @@
+FROM debian:unstable
+LABEL maintainer.name="The Xen Project" \
+      maintainer.email="xen-devel@lists.xenproject.org"
+
+ENV DEBIAN_FRONTEND=noninteractive
+ENV USER root
+ENV CROSS_COMPILE /usr/bin/arm-linux-gnueabihf-
+
+RUN mkdir /build
+WORKDIR /build
+
+# build depends
+RUN apt-get update && \
+    apt-get --quiet --yes install \
+        build-essential \
+        flex \
+        bison \
+        git \
+        gcc-arm-linux-gnueabihf \
+        && \
+        apt-get autoremove -y && \
+        apt-get clean && \
+        rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/*
+
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index cca2c310e2..57bf2c7f80 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -117,6 +117,33 @@
   variables:
     <<: *clang
 
+.arm32-cross-build-tmpl:
+  <<: *build
+  variables:
+    XEN_TARGET_ARCH: arm32
+  tags:
+    - x86_64
+
+.arm32-cross-build:
+  extends: .arm32-cross-build-tmpl
+  variables:
+    debug: n
+
+.arm32-cross-build-debug:
+  extends: .arm32-cross-build-tmpl
+  variables:
+    debug: y
+
+.gcc-arm32-cross-build:
+  extends: .arm32-cross-build
+  variables:
+    <<: *gcc
+
+.gcc-arm32-cross-build-debug:
+  extends: .arm32-cross-build-debug
+  variables:
+    <<: *gcc
+
 .arm64-build-tmpl:
   <<: *build
   variables:
@@ -450,6 +477,29 @@ alpine-3.12-clang-debug:
   variables:
     CONTAINER: alpine:3.12
 
+# Arm32 cross-build
+
+debian-unstable-gcc-arm32:
+  extends: .gcc-arm32-cross-build
+  variables:
+    CONTAINER: debian:unstable-arm32-gcc
+
+debian-unstable-gcc-arm32-debug:
+  extends: .gcc-arm32-cross-build-debug
+  variables:
+    CONTAINER: debian:unstable-arm32-gcc
+
+debian-unstable-gcc-arm32-randconfig:
+  extends: .gcc-arm32-cross-build
+  variables:
+    CONTAINER: debian:unstable-arm32-gcc
+    RANDCONFIG: y
+
+debian-unstable-gcc-arm32-debug-randconfig:
+  extends: .gcc-arm32-cross-build-debug
+  variables:
+    CONTAINER: debian:unstable-arm32-gcc
+    RANDCONFIG: y
 
 # Arm builds
 
diff --git a/automation/scripts/build b/automation/scripts/build
index 1b752edfe6..eaf70b11d1 100755
--- a/automation/scripts/build
+++ b/automation/scripts/build
@@ -16,6 +16,11 @@ else
     make -j$(nproc) -C xen defconfig
 fi
 
+# arm32 only cross-compiles the hypervisor
+if [[ "${XEN_TARGET_ARCH}" = "arm32" ]]; then
+    hypervisor_only="y"
+fi
+
 # build up our configure options
 cfgargs=()
 cfgargs+=("--enable-docs")
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 02:55:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 02:55:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110897.211888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWsAD-0003j0-30; Thu, 15 Apr 2021 02:55:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110897.211888; Thu, 15 Apr 2021 02:55: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 1lWsAC-0003ir-SW; Thu, 15 Apr 2021 02:55:28 +0000
Received: by outflank-mailman (input) for mailman id 110897;
 Thu, 15 Apr 2021 02:55: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 1lWsAC-0003ij-66; Thu, 15 Apr 2021 02:55: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 1lWsAC-0005ac-04; Thu, 15 Apr 2021 02:55: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 1lWsAB-0002iS-Kl; Thu, 15 Apr 2021 02:55:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWsAB-0006uR-KI; Thu, 15 Apr 2021 02: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=wHr+Si6qzHALXZkhPeiqjQF3g2FTtTrNbNiLHPq/A6k=; b=Qjc+M1ERhAWbwsa3c5B/tnP08J
	MZ3lbDxZTmbzOc/OcYODKQv+m9j9gXyeE9K4LTZ/1IBQBlolZ22yxbiWwFDptltZNW3aKaFoBVaaP
	mF5JuMPDKh0hZ170/s5qAPtL6vI0iHHozYq9UWQ4Z5oBR+h5tnavVqLikr+QLF+rzLNA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161125-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 161125: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    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-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm: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-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-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=8f55ad4daf001b6ee8ddf672e14475a35403b258
X-Osstest-Versions-That:
    linux=a49e5ea5e0450a3feb1aaae2554dcbc3d20eee38
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 02:55:27 +0000

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

Failures :-/ but no regressions.

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

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160939
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160939
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160939
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160939
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160939
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160939
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160939
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160939
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 160939
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160939
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160939
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160939
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      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-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-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-vhd 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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 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-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                8f55ad4daf001b6ee8ddf672e14475a35403b258
baseline version:
 linux                a49e5ea5e0450a3feb1aaae2554dcbc3d20eee38

Last test of basis   160939  2021-04-11 04:44:49 Z    3 days
Testing same since   161125  2021-04-14 07:10:15 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adrian Hunter <adrian.hunter@intel.com>
  Ahmed S. Darwish <a.darwish@linutronix.de>
  Al Viro <viro@zeniv.linux.org.uk>
  Aleksandr Loktionov <aleksandr.loktionov@intel.com>
  Alexander Aring <aahringo@redhat.com>
  Alexander Gordeev <agordeev@linux.ibm.com>
  Andrew Morton <akpm@linux-foundation.org>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Anirudh Rayabharam <mail@anirudhrb.com>
  Arkadiusz Kubalewski <arkadiusz.kubalewski@intel.com>
  Arnaldo Carvalho de Melo <acme@redhat.com>
  Arnd Bergmann <arnd@arndb.de>
  Aya Levin <ayal@nvidia.com>
  Bart Van Assche <bvanassche@acm.org>
  Bastian Germann <bage@linutronix.de>
  Bean Huo <beanhuo@micron.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  Borislav Petkov <bp@suse.de>
  Can Guo <cang@codeaurora.org>
  Charles Keepax <ckeepax@opensource.cirrus.com>
  Claudiu Beznea <claudiu.beznea@microchip.com>
  Claudiu Manoil <claudiu.manoil@nxp.com>
  Daniel Borkmann <daniel@iogearbox.net>
  Daniel Jurgens <danielj@mellanox.com>
  Dave Switzer <david.switzer@intel.com>
  David S. Miller <davem@davemloft.net>
  Dawid Lukwinski <dawid.lukwinski@intel.com>
  Dinh Nguyen <dinguyen@kernel.org>
  Du Cheng <ducheng2@gmail.com>
  Eddie James <eajames@linux.ibm.com>
  Eric Dumazet <edumazet@google.com>
  Eryk Rybak <eryk.roch.rybak@intel.com>
  Eyal Birger <eyal.birger@gmail.com>
  Fabio Pricoco <fabio.pricoco@intel.com>
  Fabrice Gasnier <fabrice.gasnier@foss.st.com>
  Florian Fainelli <f.fainelli@gmail.com>
  Gao Xiang <hsiangkao@redhat.com>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Greentime Hu <green.hu@gmail.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Gregory CLEMENT <gregory.clement@bootlin.com>
  Grzegorz Szczurek <grzegorzx.szczurek@intel.com>
  Guangbin Huang <huangguangbin2@huawei.com>
  Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
  Guenter Roeck <linux@roeck-us.net>
  Haiyue Wang <haiyue.wang@intel.com>
  Hans de Goede <hdegoede@redhat.com>
  Hauke Mehrtens <hauke@hauke-m.de>
  Heiko Carstens <hca@linux.ibm.com>
  Helge Deller <deller@gmx.de>
  Huazhong Tan <tanhuazhong@huawei.com>
  Hulk Robot <hulkrobot@huawei.com>
  Ilya Leoshkevich <iii@linux.ibm.com>
  Ilya Maximets <i.maximets@ovn.org>
  Jacek Bułatek <jacekx.bulatek@intel.com>
  Jack Qiu <jack.qiu@huawei.com>
  Jason Gunthorpe <jgg@nvidia.com>
  Jason Self <jason@bluehome.net>
  Jason Wang <jasowang@redhat.com>
  Jiri Olsa <jolsa@redhat.com>
  Johannes Berg <johannes.berg@intel.com>
  John Fastabend <john.fastabend@gmail.com>
  Jon Hunter <jonathanh@nvidia.com>
  Jonas Holmberg <jonashg@axis.com>
  Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Klaus Kudielka <klaus.kudielka@gmail.com>
  Konrad Jankowski <konrad0.jankowski@intel.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
  Kumar Kartikeya Dwivedi <memxor@gmail.com>
  Kurt Kanzenbach <kurt@linutronix.de>
  Kurt Van Dijck <dev.kurt@vandijck-laurijssen.be>
  Leon Romanovsky <leonro@nvidia.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Louis Peens <louis.peens@corigine.com>
  Luca Fancellu <luca.fancellu@arm.com>
  Lukasz Bartosik <lb@semihalf.com>
  Lv Yunlong <lyl2019@mail.ustc.edu.cn>
  Maciej Żenczykowski <maze@google.com>
  Marc Kleine-Budde <mkl@pengutronix.de>
  Marek Behún <kabel@kernel.org>
  Mark Bloch <mbloch@nvidia.com>
  Mark Brown <broonie@kernel.org>
  Martin Blumenstingl <martin.blumenstingl@googlemail.com>
  Martin K. Petersen <martin.petersen@oracle.com>
  Mateusz Palczewski <mateusz.palczewski@intel.com>
  Michael S. Tsirkin <mst@redhat.com>
  Mike Rapoport <rppt@linux.ibm.com>
  Milton Miller <miltonm@us.ibm.com>
  Muhammad Usama Anjum <musamaanjum@gmail.com>
  Nick Desaulniers <ndesaulniers@google.com>
  Nicolas Ferre <nicolas.ferre@microchip.com>
  Norman Maurer <norman_maurer@apple.com>
  Oliver Hartkopp <socketcan@hartkopp.net>
  Oliver Stäbler <oliver.staebler@bytesatwork.ch>
  Paolo Abeni <pabeni@redhat.com>
  Pavel Skripkin <paskripkin@gmail.com>
  Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
  Payal Kshirsagar <payalskshirsagar1234@gmail.com>
  Phillip Potter <phil@philpotter.co.uk>
  Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
  Potnuri Bharat Teja <bharat@chelsio.com>
  Prasad Sodagudi <psodagud@quicinc.com>
  Raed Salem <raeds@nvidia.com>
  Rafał Miłecki <rafal@milecki.pl>
  Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
  Richard Weinberger <richard@nod.at>
  Rob Clark <robdclark@chromium.org>
  Rob Herring <robh@kernel.org>
  Robert Malz <robertx.malz@intel.com>
  Rodrigo Vivi <rodrigo.vivi@intel.com>
  Rui Salvaterra <rsalvaterra@gmail.com>
  Saeed Mahameed <saeedm@nvidia.com>
  Sasha Levin <sashal@kernel.org>
  Sergei Trofimovich <slyfox@gentoo.org>
  Shawn Guo <shawnguo@kernel.org>
  Shengjiu Wang <shengjiu.wang@nxp.com>
  Shuah Khan <skhan@linuxfoundation.org>
  Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
  Simon Horman <simon.horman@netronome.com>
  Stefan Riedmueller <s.riedmueller@phytec.de>
  Stefan Schmidt <stefan@datenfreihafen.org>
  Steffen Klassert <steffen.klassert@secunet.com>
  Stephen Boyd <sboyd@kernel.org>
  Stephen Boyd <swboyd@chromium.org>
  Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
  Sudip Mukherjee <sudipm.mukherjee@gmail.com>
  Sven Eckelmann <sven@narfation.org>
  syzbot <syzbot+50ee810676e6a089487b@syzkaller.appspotmail.com>
  syzbot+c49fe6089f295a05e6f8@syzkaller.appspotmail.com
  Takashi Iwai <tiwai@suse.de>
  Tejun Heo <tj@kernel.org>
  Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
  Toke Høiland-Jørgensen <toke@redhat.com>
  Tom Lendacky <thomas.lendacky@amd.com>
  Tonghao Zhang <xiangxia.m.yue@gmail.com>
  Tony Brelinski <tonyx.brelinski@intel.com>
  Tony Nguyen <anthony.l.nguyen@intel.com>
  Venkat Gopalakrishnan <venkatg@codeaurora.org>
  Ville Syrjälä <ville.syrjala@linux.intel.com>
  Wengang Wang <wen.gang.wang@oracle.com>
  William Breathitt Gray <vilhelm.gray@gmail.com>
  William Roche <william.roche@oracle.com>
  Wolfram Sang <wsa+renesas@sang-engineering.com>
  Wolfram Sang <wsa@kernel.org>
  Xiaoming Ni <nixiaoming@huawei.com>
  Xin Long <lucien.xin@gmail.com>
  Yinjun Zhang <yinjun.zhang@corigine.com>
  Yuya Kusakabe <yuya.kusakabe@gmail.com>
  Zheng Yongjun <zhengyongjun3@huawei.com>
  Zqiang <qiang.zhang@windriver.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                              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                                  fail    
 test-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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
   a49e5ea5e045..8f55ad4daf00  8f55ad4daf001b6ee8ddf672e14475a35403b258 -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 03:55:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 03:55:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110906.211908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWt5o-0000xa-RZ; Thu, 15 Apr 2021 03:55:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110906.211908; Thu, 15 Apr 2021 03: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 1lWt5o-0000xT-O7; Thu, 15 Apr 2021 03:55:00 +0000
Received: by outflank-mailman (input) for mailman id 110906;
 Thu, 15 Apr 2021 03:54: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 1lWt5n-0000xI-DM; Thu, 15 Apr 2021 03:54: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 1lWt5n-0006Xk-60; Thu, 15 Apr 2021 03:54: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 1lWt5m-0004xA-Ti; Thu, 15 Apr 2021 03:54:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWt5m-0004et-TF; Thu, 15 Apr 2021 03: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=93BpiAqjRKJ3VBgoISFlWzXXlFRx5DKd8eETSsSiAjE=; b=dYmex/6qWZgpQ0fwbcrOYhJC/v
	sMK+LD/M+XXKFvhjxBdT5QGOiDEXlTJcCcocqK37TLmAQo0uhmbZZ53PwzBLys2T9xB25njC+7lNQ
	QTg+YC8snPkYr8IxHD2P9IKOL1eUOmW5MZvlpou7h/8RPevODVJpHAZhnz/CdSTa99uY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161150-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161150: 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=ed3ea7e95b0d94cc92a0fcf6c57e784ddfb24c97
X-Osstest-Versions-That:
    xen=264aa183ad85b2779b27d1312724a291259ccc9f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 03:54:58 +0000

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

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                  ed3ea7e95b0d94cc92a0fcf6c57e784ddfb24c97
baseline version:
 xen                  264aa183ad85b2779b27d1312724a291259ccc9f

Last test of basis   161100  2021-04-13 18:00:26 Z    1 days
Testing same since   161150  2021-04-15 01:01:32 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Wei Liu <wl@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
   264aa183ad..ed3ea7e95b  ed3ea7e95b0d94cc92a0fcf6c57e784ddfb24c97 -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 05:24:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 05:24:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110914.211929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWuUh-0001QU-Dw; Thu, 15 Apr 2021 05:24:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110914.211929; Thu, 15 Apr 2021 05: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 1lWuUh-0001QN-At; Thu, 15 Apr 2021 05:24:47 +0000
Received: by outflank-mailman (input) for mailman id 110914;
 Thu, 15 Apr 2021 05: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 1lWuUg-0001QF-8B; Thu, 15 Apr 2021 05: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 1lWuUg-0008US-4B; Thu, 15 Apr 2021 05: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 1lWuUf-000337-S1; Thu, 15 Apr 2021 05:24:45 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWuUf-0002YB-RY; Thu, 15 Apr 2021 05:24:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=mlxQhfXeTRgRY2Bdwrj3rISMA5t57D+MiqtbfnHKju4=; b=O/Xih4LS/bP0HH4xgSqaAZb0qf
	26cKfNh1NwbDffZbHMh8Q3MnOxU60IhGx5yBJP+llScaNLqvV2EiV69vMbyEq1qT6aesYSjcESAa0
	0PRP8JguQwkVpVQ2ym6JJyx6DL5qZR+/YR/1s91JS+QAfZ/xE2souZ1AhHYnHNvEtrDQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161141-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161141: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=c055be5b82d3591c531ced88965523dfdbe1b9ae
X-Osstest-Versions-That:
    ovmf=037090cb7c0063bcb7788982cab73bf7c5b66924
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 05:24:45 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 c055be5b82d3591c531ced88965523dfdbe1b9ae
baseline version:
 ovmf                 037090cb7c0063bcb7788982cab73bf7c5b66924

Last test of basis   161114  2021-04-14 01:56:04 Z    1 days
Testing same since   161141  2021-04-14 16:40:19 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   037090cb7c..c055be5b82  c055be5b82d3591c531ced88965523dfdbe1b9ae -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 06:04:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 06:04:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110922.211951 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWv7N-0005CI-IQ; Thu, 15 Apr 2021 06:04:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110922.211951; Thu, 15 Apr 2021 06: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 1lWv7N-0005CB-E5; Thu, 15 Apr 2021 06:04:45 +0000
Received: by outflank-mailman (input) for mailman id 110922;
 Thu, 15 Apr 2021 06:04: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 1lWv7M-00057F-6Y; Thu, 15 Apr 2021 06:04: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 1lWv7M-0000mI-1C; Thu, 15 Apr 2021 06:04: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 1lWv7L-0005nB-Ld; Thu, 15 Apr 2021 06:04:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWv7L-0001WJ-L7; Thu, 15 Apr 2021 06:04: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=hvXXppn3NE2++C4LvbFdBkd5qL7wFPViRTJmo3aoxaw=; b=0FutxEDw2TgyKbkTWLetQN1zOi
	JE/OmB74Cmtthba69Jt8I63R9E8FyAiU6Wh/IhZz+Pe533T13jjnbHlF3jYHuxU27TD7gkE/vu410
	N585GdSwslRBIIFmfH7jfy1o7bEzdjMT3Ycikd7qcRlwZu/mmmsHEFc4p7tab8xoGLac=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161136-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161136: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-qemuu-freebsd12-amd64:guest-localmigrate/x10:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:guest-start/debian.repeat: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-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=50987beca096a7ed4f453a6da245fd6a2fadedeb
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 06:04:43 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-qemuu-freebsd12-amd64 19 guest-localmigrate/x10 fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-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-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-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                50987beca096a7ed4f453a6da245fd6a2fadedeb
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  257 days
Failing since        152366  2020-08-01 20:49:34 Z  256 days  432 attempts
Testing same since   161136  2021-04-14 13:28:53 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1325322 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 08:29:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 08:29:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110940.211978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWxN8-0002AY-QQ; Thu, 15 Apr 2021 08:29:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110940.211978; Thu, 15 Apr 2021 08:29: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 1lWxN8-0002AR-NK; Thu, 15 Apr 2021 08:29:10 +0000
Received: by outflank-mailman (input) for mailman id 110940;
 Thu, 15 Apr 2021 08:29: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 1lWxN7-0002AJ-IH; Thu, 15 Apr 2021 08:29: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 1lWxN7-0003bX-Cq; Thu, 15 Apr 2021 08:29: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 1lWxN7-0004E6-5i; Thu, 15 Apr 2021 08:29:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lWxN7-0002iS-5D; Thu, 15 Apr 2021 08:29: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=K/Wbpqt0faOR9X2zYCLHbzg0hdnLCPdaC5fgkGvGPgE=; b=Bziphs2FzOSbEMGvqeEcXFMQg7
	cF8Hw7xtZhwobHKj9Bb04InRTSWTuOAMTGlSIWU76G8dcuUMMetJqwSTw8OupbpswnTnKrpE0Kqmy
	SYe9BWy0yPgljZCGBQzLngjsXMKBaKcneBqXCw4T2lOtl4JGIogoWnLkMRtQ0l+bKhYM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161157-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161157: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=27e1779f0895c3a7e523fa61a5764806275b7e5b
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 08:29:09 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              27e1779f0895c3a7e523fa61a5764806275b7e5b
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  279 days
Failing since        151818  2020-07-11 04:18:52 Z  278 days  271 attempts
Testing same since   161157  2021-04-15 04:20:10 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:01:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:01:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110948.211998 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWxsl-0005iD-Il; Thu, 15 Apr 2021 09:01:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110948.211998; Thu, 15 Apr 2021 09:01:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWxsl-0005i6-Ft; Thu, 15 Apr 2021 09:01:51 +0000
Received: by outflank-mailman (input) for mailman id 110948;
 Thu, 15 Apr 2021 09:01:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWxsk-0005i1-4R
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:01:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2147e1ec-440b-4527-9fa2-b88d7d6a551f;
 Thu, 15 Apr 2021 09:01:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 22FA5B1C8;
 Thu, 15 Apr 2021 09:01: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: 2147e1ec-440b-4527-9fa2-b88d7d6a551f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618477308; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=aJhsFj8MoezBXk55AScqMMgujbMia8lGW5o+U8IiPCw=;
	b=n5Xmmz6QogDUpGT3pIjh6zPIN6DncfFIL+cZ2DmVIaAOyrWQeDuG4CoNV1SoJbfSwIA1Fk
	ASCpAm4QfvlzRIuBHf9kl7qo8Qd2hna2rpgQO7XGf9DzCXvTWtKx2UGLVnV6xirc2Z74/i
	zZpJwJYiSU2qxb88VbgmWJrJ6lMwwDI=
Subject: Re: [PATCH v4 1/2] x86/vtx: add LBR_SELECT to the list of LBR MSRs
To: Igor Druzhinin <igor.druzhinin@citrix.com>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, wl@xen.org,
 jun.nakajima@intel.com, kevin.tian@intel.com, xen-devel@lists.xenproject.org
References: <1618375222-9283-1-git-send-email-igor.druzhinin@citrix.com>
 <871c259b-487e-4c67-e648-b1aefef55df3@suse.com>
 <45ab2093-f140-1b91-f683-dc0ca17159c5@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6acd1b4b-761e-4835-e28c-c1f504113af7@suse.com>
Date: Thu, 15 Apr 2021 11:01:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <45ab2093-f140-1b91-f683-dc0ca17159c5@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 01:13, Igor Druzhinin wrote:
> On 14/04/2021 12:41, Jan Beulich wrote:
>> On 14.04.2021 06:40, Igor Druzhinin wrote:
>>> --- a/xen/include/asm-x86/msr-index.h
>>> +++ b/xen/include/asm-x86/msr-index.h
>>> @@ -606,14 +606,18 @@
>>>   #define NUM_MSR_C2_LASTBRANCH_FROM_TO	4
>>>   #define NUM_MSR_ATOM_LASTBRANCH_FROM_TO	8
>>>   
>>> +/* Nehalem (and newer) last-branch recording */
>>> +#define MSR_NHL_LBR_SELECT		0x000001c8
>>> +#define MSR_NHL_LASTBRANCH_TOS		0x000001c9
>>> +
>>>   /* Skylake (and newer) last-branch recording */
>>> -#define MSR_SKL_LASTBRANCH_TOS		0x000001c9
>>>   #define MSR_SKL_LASTBRANCH_0_FROM_IP	0x00000680
>>>   #define MSR_SKL_LASTBRANCH_0_TO_IP	0x000006c0
>>>   #define MSR_SKL_LASTBRANCH_0_INFO	0x00000dc0
>>>   #define NUM_MSR_SKL_LASTBRANCH		32
>>>   
>>>   /* Goldmont last-branch recording */
>>> +#define MSR_GM_LBR_SELECT		0x000001c8
>>>   #define MSR_GM_LASTBRANCH_TOS		0x000001c9
>>
>> Wouldn't it make sense to also re-use the NHL constants, like you
>> do for Skylake?
> 
> I didn't really see GM to be derived from NHL so decided to split those. 

Hmm, yes - fair argument.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:20:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:20:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110953.212011 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyAe-0007bF-5K; Thu, 15 Apr 2021 09:20:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110953.212011; Thu, 15 Apr 2021 09: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 1lWyAe-0007b8-0l; Thu, 15 Apr 2021 09:20:20 +0000
Received: by outflank-mailman (input) for mailman id 110953;
 Thu, 15 Apr 2021 09:20:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWyAc-0007b3-Ds
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:20:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 538bf3b6-4af8-4ecb-8dcd-e435f190b1f6;
 Thu, 15 Apr 2021 09:20:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0259BADE2;
 Thu, 15 Apr 2021 09:20: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: 538bf3b6-4af8-4ecb-8dcd-e435f190b1f6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618478416; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=o0Dfw2BFGeAW6FKyMK+ubP4DsFBTX35TDYTYDC+4iLA=;
	b=Wjft7KMAtX4mbgQBcvtrKWbcvGqFjHLZI6km9ZbxPceT+v0/8Er7KLA2m3Afi+oRIHOxSJ
	FrSlOdBaQQ839xbdhH6UJaLDgrudCf+L/xtwifAArucAxCnwG1GdrREfEXDhScA7RfuQYU
	/XKaot9yk2u1bJvKm8mKeqsb/wGIfT0=
Subject: Ping: [PATCH v3 00/15] zstd decompression for DomU-s + fallout /
 consolidation
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
Message-ID: <ff096d95-c074-2558-ba7b-adf702e3d239@suse.com>
Date: Thu, 15 Apr 2021 11:20:15 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.01.2021 10:46, Jan Beulich wrote:
> Only patches 1 and 2 are strictly intended for 4.15, paralleling
> the recent Dom0 side work (and re-using many of the files
> introduced there, for the stubdom build), but ones up to at least
> patch 6 may still want considering (and 4 already has a release
> ack).
> 
> 01: libxenguest: add get_unaligned_le32()
> 02: libxenguest: support zstd compressed kernels
> 03: xen/decompress: make helper symbols static
> 04: libxenguest: "standardize" LZO kernel decompression code
> 05: libxenguest: drop redundant decompression declarations
> 06: libxenguest: simplify kernel decompression
> 07: gunzip: drop INIT{,DATA} and STATIC

While these have all gone in, ...

> 08: bunzip: replace INIT
> 09: unlzo: replace INIT
> 10: unlzma: replace INIT
> 11: unlz4: replace INIT
> 12: unxz: replace INIT{,DATA} and STATIC
> 13: unzstd: replace INIT{,DATA} and STATIC
> 14: xen/decompress: drop STATIC and INIT
> 15: unzstd: make helper symbols static

... may I please ask for an ack (or otherwise) on these?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:27:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:27:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110958.212023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyHt-0007tM-SW; Thu, 15 Apr 2021 09:27:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110958.212023; Thu, 15 Apr 2021 09: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 1lWyHt-0007tF-PW; Thu, 15 Apr 2021 09:27:49 +0000
Received: by outflank-mailman (input) for mailman id 110958;
 Thu, 15 Apr 2021 09:27:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWyHs-0007tA-HZ
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:27:48 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4f854273-b158-463c-bd1c-22f1e298a680;
 Thu, 15 Apr 2021 09:27:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C8B02B1E9;
 Thu, 15 Apr 2021 09:27: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: 4f854273-b158-463c-bd1c-22f1e298a680
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618478866; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=L0Xbu4+aWtjIIvopxYQT1lfxhOX2yVXGUX8zzjEMWzc=;
	b=RBhz4vrZrmAZUllCfh9GMR9XmMFQFOQTqvlBmLD6idEWmNSgp4xrJ64cioFGUYv9mlsxLW
	x7yS8MHbZb1vvEney+qxlZeOGr7WJEb3zGZHKjIRZW4SfKNugWjlhHCiAZ1ToYEqtG/N8n
	VJO8K2zV+nX9ja7OSxVYGWVtfCLgzlo=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v4] x86/shim: don't permit HVM and PV_SHIM_EXCLUSIVE at the
 same time
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>
References: <d09b0690-c5e0-a90b-b4c0-4396a5f62c59@suse.com>
Message-ID: <164d8e67-fd65-9e98-53ef-51187310de0b@suse.com>
Date: Thu, 15 Apr 2021 11:27:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <d09b0690-c5e0-a90b-b4c0-4396a5f62c59@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

This combination doesn't really make sense (and there likely are more);
in particular even if the code built with both options set, HVM guests
wouldn't work (and I think one wouldn't be able to create one in the
first place). The alternative here would be some presumably intrusive
#ifdef-ary to get this combination to actually build (but still not
work) again.

Fixes: 8b5b49ceb3d9 ("x86: don't include domctl and alike in shim-exclusive builds")
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Roger Pau Monné <roger.pau@citrix.com>
---
v4: Default HVM to !PV_SHIM, as suggested by Jürgen.
v2: Restore lost default setting.

--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -23,7 +23,7 @@ config X86
 	select HAS_PDX
 	select HAS_SCHED_GRANULARITY
 	select HAS_UBSAN
-	select HAS_VPCI if !PV_SHIM_EXCLUSIVE && HVM
+	select HAS_VPCI if HVM
 	select NEEDS_LIBELF
 	select NUMA
 
@@ -90,9 +90,10 @@ config PV_LINEAR_PT
          If unsure, say Y.
 
 config HVM
-	def_bool !PV_SHIM_EXCLUSIVE
+	bool "HVM support"
+	depends on !PV_SHIM_EXCLUSIVE
+	default !PV_SHIM
 	select IOREQ_SERVER
-	prompt "HVM support"
 	---help---
 	  Interfaces to support HVM domains.  HVM domains require hardware
 	  virtualisation extensions (e.g. Intel VT-x, AMD SVM), but can boot


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:33:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:33:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110962.212035 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyN3-0000Jw-GI; Thu, 15 Apr 2021 09:33:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110962.212035; Thu, 15 Apr 2021 09: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 1lWyN3-0000Jp-Ct; Thu, 15 Apr 2021 09:33:09 +0000
Received: by outflank-mailman (input) for mailman id 110962;
 Thu, 15 Apr 2021 09:33:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWyN2-0000Jk-5J
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:33:08 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6e46d24e-532e-41b7-93cf-ff3160e497d6;
 Thu, 15 Apr 2021 09:33:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 04F3BB1E9;
 Thu, 15 Apr 2021 09:33: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: 6e46d24e-532e-41b7-93cf-ff3160e497d6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618479186; 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=cu8lOUmCNVpGaa9ENLLh2dwSXaGH+rjyXb081TNyKoY=;
	b=Zos+HhiHRRHoZSbC5GS8N1b2iGTO8lPUQ+gTduIi8jaj0IZ3pxJzVINtBtvxxti+ga7NYV
	L7wP1PE40CxINv2+++f8at/kShKNp5CO28oM4fsvJqKoZpxhR7rT7qEk3B/akzjychZCDv
	gqyS793B8y5HBvZQ3yP1QReVTB76CxE=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 0/2] x86: is_pv*domain() adjustments
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>
Message-ID: <3bc868c1-1003-2f80-1617-d64a1e7441bc@suse.com>
Date: Thu, 15 Apr 2021 11:33:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

1: correct is_pv_domain() when !CONFIG_PV
2: use is_pv_64bit_domain() to avoid double evaluate_nospec()

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:34:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:34:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110965.212046 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyOo-0000W8-SO; Thu, 15 Apr 2021 09:34:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110965.212046; Thu, 15 Apr 2021 09:34: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 1lWyOo-0000W1-PM; Thu, 15 Apr 2021 09:34:58 +0000
Received: by outflank-mailman (input) for mailman id 110965;
 Thu, 15 Apr 2021 09:34:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWyOn-0000Vu-RP
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:34:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 67ad9175-5a57-447f-bf28-a4aebe0782d1;
 Thu, 15 Apr 2021 09:34:56 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 01283ADE2;
 Thu, 15 Apr 2021 09:34: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: 67ad9175-5a57-447f-bf28-a4aebe0782d1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618479296; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=b2H4p7dALtvE/muoT/1PGg30/6tjbt6ZpulXXjA46kY=;
	b=Hgvu3MI0IbuCWteaiNu3/BDKULMQnA4DtY+3VuvUZvtYxsqT2R0IIsQds2Cq8smZihYGIZ
	+oXvGxo8AHMoJJO5a+isbijA8viNKnY+dHoSEHzQaeyCMop/qDp0BOS+ufShcuxrrssaS2
	gx4hRsllZnf4OOKOYKYKSd881/Fvk+Q=
Subject: [PATCH v2 1/2] x86: correct is_pv_domain() when !CONFIG_PV
From: Jan Beulich <jbeulich@suse.com>
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>
References: <3bc868c1-1003-2f80-1617-d64a1e7441bc@suse.com>
Message-ID: <9667345e-835e-7c55-8d6d-2774008b0017@suse.com>
Date: Thu, 15 Apr 2021 11:34:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <3bc868c1-1003-2f80-1617-d64a1e7441bc@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On x86, idle and other system domains are implicitly PV. While I
couldn't spot any cases where this is actively a problem, some cases
required quite close inspection to be certain there couldn't e.g. be
some ASSERT_UNREACHABLE() that would trigger in this case. Let's be on
the safe side and make sure these always have is_pv_domain() returning
true.

For the build to still work, this requires a few adjustments elsewhere.
In particular is_pv_64bit_domain() now gains a CONFIG_PV dependency,
which means that is_pv_32bit_domain() || is_pv_64bit_domain() is no
longer guaranteed to be the same as is_pv_domain().

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

--- a/xen/arch/x86/dom0_build.c
+++ b/xen/arch/x86/dom0_build.c
@@ -571,7 +571,7 @@ int __init construct_dom0(struct domain
 
     if ( is_hvm_domain(d) )
         rc = dom0_construct_pvh(d, image, image_headroom, initrd, cmdline);
-    else if ( is_pv_domain(d) )
+    else if ( is_pv_64bit_domain(d) || is_pv_32bit_domain(d) )
         rc = dom0_construct_pv(d, image, image_headroom, initrd, cmdline);
     else
         panic("Cannot construct Dom0. No guest interface available\n");
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1564,6 +1564,7 @@ arch_do_vcpu_op(
  */
 static void load_segments(struct vcpu *n)
 {
+#ifdef CONFIG_PV
     struct cpu_user_regs *uregs = &n->arch.user_regs;
     unsigned long gsb = 0, gss = 0;
     bool compat = is_pv_32bit_vcpu(n);
@@ -1729,6 +1730,7 @@ static void load_segments(struct vcpu *n
         regs->cs            = FLAT_KERNEL_CS;
         regs->rip           = pv->failsafe_callback_eip;
     }
+#endif
 }
 
 /*
@@ -1743,6 +1745,7 @@ static void load_segments(struct vcpu *n
  */
 static void save_segments(struct vcpu *v)
 {
+#ifdef CONFIG_PV
     struct cpu_user_regs *regs = &v->arch.user_regs;
 
     read_sregs(regs);
@@ -1768,6 +1771,7 @@ static void save_segments(struct vcpu *v
         else
             v->arch.pv.gs_base_user = gs_base;
     }
+#endif
 }
 
 void paravirt_ctxt_switch_from(struct vcpu *v)
--- a/xen/arch/x86/domctl.c
+++ b/xen/arch/x86/domctl.c
@@ -457,13 +457,13 @@ long arch_do_domctl(
     case XEN_DOMCTL_set_address_size:
         if ( is_hvm_domain(d) )
             ret = -EOPNOTSUPP;
+        else if ( is_pv_64bit_domain(d) && domctl->u.address_size.size == 32 )
+            ret = switch_compat(d);
         else if ( is_pv_domain(d) )
         {
             if ( ((domctl->u.address_size.size == 64) && !d->arch.pv.is_32bit) ||
                  ((domctl->u.address_size.size == 32) &&  d->arch.pv.is_32bit) )
                 ret = 0;
-            else if ( domctl->u.address_size.size == 32 )
-                ret = switch_compat(d);
             else
                 ret = -EINVAL;
         }
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -1036,9 +1036,14 @@ static always_inline bool is_control_dom
 
 #define VM_ASSIST(d, t) (test_bit(VMASST_TYPE_ ## t, &(d)->vm_assist))
 
+/*
+ * Note that is_pv_domain() can return true (for system domains) even when
+ * both is_pv_64bit_domain() and is_pv_32bit_domain() return false. IOW
+ * system domains can be considered PV without specific bitness.
+ */
 static always_inline bool is_pv_domain(const struct domain *d)
 {
-    return IS_ENABLED(CONFIG_PV) &&
+    return IS_ENABLED(CONFIG_X86) &&
         evaluate_nospec(!(d->options & XEN_DOMCTL_CDF_hvm));
 }
 
@@ -1064,7 +1069,7 @@ static always_inline bool is_pv_32bit_vc
 
 static always_inline bool is_pv_64bit_domain(const struct domain *d)
 {
-    if ( !is_pv_domain(d) )
+    if ( !IS_ENABLED(CONFIG_PV) || !is_pv_domain(d) )
         return false;
 
 #ifdef CONFIG_PV32



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:36:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:36:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110970.212058 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyQ9-0000eB-BW; Thu, 15 Apr 2021 09:36:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110970.212058; Thu, 15 Apr 2021 09:36: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 1lWyQ9-0000e4-8R; Thu, 15 Apr 2021 09:36:21 +0000
Received: by outflank-mailman (input) for mailman id 110970;
 Thu, 15 Apr 2021 09:36:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWyQ7-0000dz-Vx
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:36:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 134a56f0-6a61-4d79-8555-d25dc367ff24;
 Thu, 15 Apr 2021 09:36:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 78BB3AE20;
 Thu, 15 Apr 2021 09:36: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: 134a56f0-6a61-4d79-8555-d25dc367ff24
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618479378; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=G/5Eub7i28khsTuwh3nWTwZqC3zdUYeBWRQMxCnEONg=;
	b=WW8fmwq61mPt+uklg/D5vj+gi+6/3ED6ZGmPSVUa33/jWegPGiTSVcSocXuNIKnavGUYM3
	geIfv3WtSPXNgJw8xQPzUx0poaUVjmNdNFb5EXar+zGez8qHUuunCJu5bVrXi8UTv2uhHd
	PMSxEgzyKAG9o58sEWOrHgyxH84TOg0=
Subject: [PATCH v2 2/2] x86: use is_pv_64bit_domain() to avoid double
 evaluate_nospec()
From: Jan Beulich <jbeulich@suse.com>
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>
References: <3bc868c1-1003-2f80-1617-d64a1e7441bc@suse.com>
Message-ID: <1d5cb279-203c-4188-5910-7b01dde4239e@suse.com>
Date: Thu, 15 Apr 2021 11:36:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <3bc868c1-1003-2f80-1617-d64a1e7441bc@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

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

--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1105,7 +1105,7 @@ int arch_set_info_guest(
           * update_cr3(), sh_update_cr3(), sh_walk_guest_tables(), and
           * shadow_one_bit_disable() for why that is.
           */
-         !is_hvm_domain(d) && !is_pv_32bit_domain(d) )
+         is_pv_64bit_domain(d) )
         v->arch.flags &= ~TF_kernel_mode;
 
     vcpu_setup_fpu(v, v->arch.xsave_area,
@@ -1251,7 +1251,7 @@ int arch_set_info_guest(
          * correct initial RO_MPT_VIRT_{START,END} L4 entry).
          */
         if ( d != current->domain && !VM_ASSIST(d, m2p_strict) &&
-             is_pv_domain(d) && !is_pv_32bit_domain(d) &&
+             is_pv_64bit_domain(d) &&
              test_bit(VMASST_TYPE_m2p_strict, &c.nat->vm_assist) &&
              atomic_read(&d->arch.pv.nr_l4_pages) )
         {
@@ -1980,8 +1980,7 @@ static void __context_switch(void)
 
 #if defined(CONFIG_PV) && defined(CONFIG_HVM)
     /* Prefetch the VMCB if we expect to use it later in the context switch */
-    if ( cpu_has_svm && is_pv_domain(nd) && !is_pv_32bit_domain(nd) &&
-         !is_idle_domain(nd) )
+    if ( cpu_has_svm && is_pv_64bit_domain(nd) && !is_idle_domain(nd) )
         svm_load_segs_prefetch();
 #endif
 



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:41:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:41:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110976.212070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyV9-0001Wq-UG; Thu, 15 Apr 2021 09:41:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110976.212070; Thu, 15 Apr 2021 09:41:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyV9-0001Wj-RS; Thu, 15 Apr 2021 09:41:31 +0000
Received: by outflank-mailman (input) for mailman id 110976;
 Thu, 15 Apr 2021 09:41:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWyV9-0001We-6G
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:41:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 87f9c48e-6b83-45f4-b161-bd061daff44d;
 Thu, 15 Apr 2021 09:41:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 38852AC87;
 Thu, 15 Apr 2021 09:41: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: 87f9c48e-6b83-45f4-b161-bd061daff44d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618479689; 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=DJ55pGTV1Ycmrz3jU7NCoDWaPsEth8XN2XbbDgtsXps=;
	b=VMdxY6pVbLmlOd8UNH5jMmtZrZlbg6cpeJARtuShvfJ64cctg7gEptccF9PlI13E7QaDjo
	jBTocpRsma0J43aTzw7uptnEY0wqlfflfaqy1YX2XQIwfnrc9hMCjen4r4ieeNbzs6+KDZ
	MQl7WfFmVT2ovdTRtRoeKxqZPc8X+Ho=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v3] gnttab: defer allocation of status frame tracking array
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Message-ID: <d2397cd4-040e-3cc0-22d8-3f65d01f9326@suse.com>
Date: Thu, 15 Apr 2021 11:41:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This array can be large when many grant frames are permitted; avoid
allocating it when it's not going to be used anyway, by doing this only
in gnttab_populate_status_frames().

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: Drop smp_wmb(). Re-base.
v2: Defer allocation to when a domain actually switches to the v2 grant
    API.

--- a/xen/common/grant_table.c
+++ b/xen/common/grant_table.c
@@ -1747,6 +1747,17 @@ gnttab_populate_status_frames(struct dom
     /* Make sure, prior version checks are architectural visible */
     block_speculation();
 
+    if ( gt->status == ZERO_BLOCK_PTR )
+    {
+        gt->status = xzalloc_array(grant_status_t *,
+                                   grant_to_status_frames(gt->max_grant_frames));
+        if ( !gt->status )
+        {
+            gt->status = ZERO_BLOCK_PTR;
+            return -ENOMEM;
+        }
+    }
+
     for ( i = nr_status_frames(gt); i < req_status_frames; i++ )
     {
         if ( (gt->status[i] = alloc_xenheap_page()) == NULL )
@@ -1767,18 +1778,23 @@ status_alloc_failed:
         free_xenheap_page(gt->status[i]);
         gt->status[i] = NULL;
     }
+    if ( !nr_status_frames(gt) )
+    {
+        xfree(gt->status);
+        gt->status = ZERO_BLOCK_PTR;
+    }
     return -ENOMEM;
 }
 
 static int
 gnttab_unpopulate_status_frames(struct domain *d, struct grant_table *gt)
 {
-    unsigned int i;
+    unsigned int i, n = nr_status_frames(gt);
 
     /* Make sure, prior version checks are architectural visible */
     block_speculation();
 
-    for ( i = 0; i < nr_status_frames(gt); i++ )
+    for ( i = 0; i < n; i++ )
     {
         struct page_info *pg = virt_to_page(gt->status[i]);
         gfn_t gfn = gnttab_get_frame_gfn(gt, true, i);
@@ -1833,12 +1849,11 @@ gnttab_unpopulate_status_frames(struct d
         page_set_owner(pg, NULL);
     }
 
-    for ( i = 0; i < nr_status_frames(gt); i++ )
-    {
-        free_xenheap_page(gt->status[i]);
-        gt->status[i] = NULL;
-    }
     gt->nr_status_frames = 0;
+    for ( i = 0; i < n; i++ )
+        free_xenheap_page(gt->status[i]);
+    xfree(gt->status);
+    gt->status = ZERO_BLOCK_PTR;
 
     return 0;
 }
@@ -1969,11 +1984,11 @@ int grant_table_init(struct domain *d, i
     if ( gt->shared_raw == NULL )
         goto out;
 
-    /* Status pages for grant table - for version 2 */
-    gt->status = xzalloc_array(grant_status_t *,
-                               grant_to_status_frames(gt->max_grant_frames));
-    if ( gt->status == NULL )
-        goto out;
+    /*
+     * Status page tracking array for v2 gets allocated on demand. But don't
+     * leave a NULL pointer there.
+     */
+    gt->status = ZERO_BLOCK_PTR;
 
     grant_write_lock(gt);
 
@@ -4047,11 +4062,12 @@ int gnttab_acquire_resource(
         if ( gt->gt_version != 2 )
             break;
 
+        rc = gnttab_get_status_frame_mfn(d, final_frame, &tmp);
+
         /* Check that void ** is a suitable representation for gt->status. */
         BUILD_BUG_ON(!__builtin_types_compatible_p(
                          typeof(gt->status), grant_status_t **));
         vaddrs = (void **)gt->status;
-        rc = gnttab_get_status_frame_mfn(d, final_frame, &tmp);
         break;
     }
 


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:47:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:47:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110980.212082 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWybE-0001oJ-Ku; Thu, 15 Apr 2021 09:47:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110980.212082; Thu, 15 Apr 2021 09:47: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 1lWybE-0001oC-I0; Thu, 15 Apr 2021 09:47:48 +0000
Received: by outflank-mailman (input) for mailman id 110980;
 Thu, 15 Apr 2021 09:47:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWybC-0001o7-Uf
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:47:46 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9e887bfc-ba1e-452a-955e-f9949b1fa5f5;
 Thu, 15 Apr 2021 09:47:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3AAF4AC6E;
 Thu, 15 Apr 2021 09: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: 9e887bfc-ba1e-452a-955e-f9949b1fa5f5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618480063; 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=C1WuecZvFVoj/VnhrJMJzS4ctgWjU/yD+5pVHn5exnI=;
	b=MEIESnydyjkuBaiR/G2czJ06kCM0DBIy20P6NLtPyaQHYR9VQEA+g1Zwcio6/fJ7UjCbJu
	UnrMF29vooO4M9Wx/rA0Ks/MJIwLa+hNWPF2RCTr1ET08DSOAVzmaK2oada2s0FkTxjLUg
	xDI1f6tYUKzG25LAlhKPsDL/rA+uCcI=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v4] x86/HVM: support emulated UMIP
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>,
 Kevin Tian <kevin.tian@intel.com>, Jun Nakajima <jun.nakajima@intel.com>
Message-ID: <581a90d5-a168-5445-6a6d-ab20cc43b944@suse.com>
Date: Thu, 15 Apr 2021 11:47:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There are three noteworthy drawbacks:
1) The intercepts we need to enable here are CPL-independent, i.e. we
   now have to emulate certain instructions for ring 0.
2) On VMX there's no intercept for SMSW, so the emulation isn't really
   complete there.
3) The CR4 write intercept on SVM is lower priority than all exception
   checks, so we need to intercept #GP in order to allow guests to set
   CR4.UMIP.
Therefore this emulation doesn't get offered to guests by default.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
---
v4: Address re-basing oversight in v3. Check !cpu_has_umip first in multi-
    part conditionals. Add ! marker to UMIP in cpufeatureset.h. Extend a
    comment. Style. Re-base.
v3: Don't offer emulation by default. Re-base.
v2: Split off the x86 insn emulator part. Re-base. Use hvm_featureset
    in hvm_cr4_guest_reserved_bits().

--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -462,6 +462,13 @@ static void __init calculate_hvm_max_pol
     __set_bit(X86_FEATURE_NO_LMSL, hvm_featureset);
 
     /*
+     * Xen can often provide UMIP emulation to HVM guests even if the host
+     * doesn't have such functionality.
+     */
+    if ( hvm_funcs.set_descriptor_access_exiting )
+        __set_bit(X86_FEATURE_UMIP, hvm_featureset);
+
+    /*
      * On AMD, PV guests are entirely unable to use SYSENTER as Xen runs in
      * long mode (and init_amd() has cleared it out of host capabilities), but
      * HVM guests are able if running in protected mode.
@@ -513,6 +520,10 @@ static void __init calculate_hvm_def_pol
     for ( i = 0; i < ARRAY_SIZE(hvm_featureset); ++i )
         hvm_featureset[i] &= hvm_featuremask[i];
 
+    /* Don't offer UMIP emulation by default. */
+    if ( !cpu_has_umip )
+        __clear_bit(X86_FEATURE_UMIP, hvm_featureset);
+
     guest_common_feature_adjustments(hvm_featureset);
     guest_common_default_feature_adjustments(hvm_featureset);
 
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -3732,6 +3732,13 @@ int hvm_descriptor_access_intercept(uint
     struct vcpu *curr = current;
     struct domain *currd = curr->domain;
 
+    if ( (is_write || (curr->arch.hvm.guest_cr[4] & X86_CR4_UMIP)) &&
+         hvm_get_cpl(curr) )
+    {
+        hvm_inject_hw_exception(TRAP_gp_fault, 0);
+        return X86EMUL_OKAY;
+    }
+
     if ( currd->arch.monitor.descriptor_access_enabled )
     {
         ASSERT(curr->arch.vm_event);
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -547,6 +547,28 @@ void svm_update_guest_cr(struct vcpu *v,
             value &= ~(X86_CR4_SMEP | X86_CR4_SMAP);
         }
 
+        if ( !cpu_has_umip && v->domain->arch.cpuid->feat.umip )
+        {
+            u32 general1_intercepts = vmcb_get_general1_intercepts(vmcb);
+
+            if ( v->arch.hvm.guest_cr[4] & X86_CR4_UMIP )
+            {
+                value &= ~X86_CR4_UMIP;
+                ASSERT(vmcb_get_cr_intercepts(vmcb) & CR_INTERCEPT_CR0_READ);
+                general1_intercepts |= GENERAL1_INTERCEPT_IDTR_READ |
+                                       GENERAL1_INTERCEPT_GDTR_READ |
+                                       GENERAL1_INTERCEPT_LDTR_READ |
+                                       GENERAL1_INTERCEPT_TR_READ;
+            }
+            else if ( !v->domain->arch.monitor.descriptor_access_enabled )
+                general1_intercepts &= ~(GENERAL1_INTERCEPT_IDTR_READ |
+                                         GENERAL1_INTERCEPT_GDTR_READ |
+                                         GENERAL1_INTERCEPT_LDTR_READ |
+                                         GENERAL1_INTERCEPT_TR_READ);
+
+            vmcb_set_general1_intercepts(vmcb, general1_intercepts);
+        }
+
         vmcb_set_cr4(vmcb, value);
         break;
     default:
@@ -883,7 +905,14 @@ static void svm_set_descriptor_access_ex
     if ( enable )
         general1_intercepts |= mask;
     else
+    {
         general1_intercepts &= ~mask;
+        if ( !cpu_has_umip && (v->arch.hvm.guest_cr[4] & X86_CR4_UMIP) )
+            general1_intercepts |= GENERAL1_INTERCEPT_IDTR_READ |
+                                   GENERAL1_INTERCEPT_GDTR_READ |
+                                   GENERAL1_INTERCEPT_LDTR_READ |
+                                   GENERAL1_INTERCEPT_TR_READ;
+    }
 
     vmcb_set_general1_intercepts(vmcb, general1_intercepts);
 }
@@ -1781,6 +1810,16 @@ static void svm_vmexit_do_cr_access(
         __update_guest_eip(regs, vmcb->nextrip - vmcb->rip);
 }
 
+static bool is_cr4_write(const struct x86_emulate_state *state,
+                         const struct x86_emulate_ctxt *ctxt)
+{
+    unsigned int cr;
+
+    return ctxt->opcode == X86EMUL_OPC(0x0f, 0x22) &&
+           x86_insn_modrm(state, NULL, &cr) == 3 &&
+           cr == 4;
+}
+
 static void svm_dr_access(struct vcpu *v, struct cpu_user_regs *regs)
 {
     struct vmcb_struct *vmcb = vcpu_nestedhvm(v).nv_n1vmcx;
@@ -2738,6 +2777,19 @@ void svm_vmexit_handler(struct cpu_user_
         svm_fpu_dirty_intercept();
         break;
 
+    case VMEXIT_EXCEPTION_GP:
+        HVMTRACE_1D(TRAP, TRAP_gp_fault);
+        /*
+         * We only get here when emulating UMIP, and only because of #GP
+         * resulting from the guest trying to set invalid bits (i.e. CR4.UMIP
+         * when hardware doesn't support UMIP) takes precedence over #VMEXIT.
+         * Hence we only care about ring 0 faults with error code zero.
+         */
+        if ( vmcb->exitinfo1 || vmcb_get_cpl(vmcb) ||
+             !hvm_emulate_one_insn(is_cr4_write, "CR4 write") )
+            hvm_inject_hw_exception(TRAP_gp_fault, vmcb->exitinfo1);
+        break;
+
     case VMEXIT_EXCEPTION_PF:
     {
         unsigned long va;
@@ -2883,7 +2935,16 @@ void svm_vmexit_handler(struct cpu_user_
             hvm_inject_hw_exception(TRAP_gp_fault, 0);
         break;
 
-    case VMEXIT_CR0_READ ... VMEXIT_CR15_READ:
+    case VMEXIT_CR0_READ:
+        if ( (v->arch.hvm.guest_cr[4] & X86_CR4_UMIP) &&
+             vmcb_get_cpl(vmcb) )
+        {
+            ASSERT(!cpu_has_umip);
+            hvm_inject_hw_exception(TRAP_gp_fault, 0);
+            break;
+        }
+        /* fall through */
+    case VMEXIT_CR1_READ ... VMEXIT_CR15_READ:
     case VMEXIT_CR0_WRITE ... VMEXIT_CR15_WRITE:
         if ( cpu_has_svm_decode && (vmcb->exitinfo1 & (1ULL << 63)) )
             svm_vmexit_do_cr_access(vmcb, regs);
--- a/xen/arch/x86/hvm/svm/vmcb.c
+++ b/xen/arch/x86/hvm/svm/vmcb.c
@@ -141,6 +141,10 @@ static int construct_vmcb(struct vcpu *v
         HVM_TRAP_MASK |
         (v->arch.fully_eager_fpu ? 0 : (1U << TRAP_no_device));
 
+    /* For UMIP emulation intercept #GP to catch faulting CR4 writes. */
+    if ( !cpu_has_umip && v->domain->arch.cpuid->feat.umip )
+        vmcb->_exception_intercepts |= 1U << TRAP_gp_fault;
+
     if ( paging_mode_hap(v->domain) )
     {
         vmcb->_np_enable = 1; /* enable nested paging */
--- a/xen/arch/x86/hvm/vmx/vmcs.c
+++ b/xen/arch/x86/hvm/vmx/vmcs.c
@@ -1087,7 +1087,8 @@ static int construct_vmcs(struct vcpu *v
 
     /*
      * Disable features which we don't want active by default:
-     *  - Descriptor table exiting only if wanted by introspection
+     *  - Descriptor table exiting only if needed for CR4.UMIP write
+     *    emulation or wanted by introspection
      *  - x2APIC - default is xAPIC mode
      *  - VPID settings chosen at VMEntry time
      *  - VMCS Shadowing only when in nested VMX mode
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -1304,7 +1304,7 @@ static void vmx_set_descriptor_access_ex
     if ( enable )
         v->arch.hvm.vmx.secondary_exec_control |=
             SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING;
-    else
+    else if ( cpu_has_umip || !(v->arch.hvm.guest_cr[4] & X86_CR4_UMIP) )
         v->arch.hvm.vmx.secondary_exec_control &=
             ~SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING;
 
@@ -1554,6 +1554,21 @@ static void vmx_update_guest_cr(struct v
             v->arch.hvm.hw_cr[4] &= ~(X86_CR4_SMEP | X86_CR4_SMAP);
         }
 
+        if ( !cpu_has_umip && v->domain->arch.cpuid->feat.umip )
+        {
+            if ( (v->arch.hvm.guest_cr[4] & X86_CR4_UMIP) )
+            {
+                ASSERT(cpu_has_vmx_dt_exiting);
+                v->arch.hvm.hw_cr[4] &= ~X86_CR4_UMIP;
+                v->arch.hvm.vmx.secondary_exec_control |=
+                    SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING;
+            }
+            else if ( !v->domain->arch.monitor.descriptor_access_enabled )
+                v->arch.hvm.vmx.secondary_exec_control &=
+                    ~SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING;
+            vmx_update_secondary_exec_control(v);
+        }
+
         __vmwrite(GUEST_CR4, v->arch.hvm.hw_cr[4]);
 
         /*
@@ -1577,6 +1592,7 @@ static void vmx_update_guest_cr(struct v
                                              (X86_CR4_PSE | X86_CR4_SMEP |
                                               X86_CR4_SMAP)
                                              : 0;
+            v->arch.hvm.vmx.cr4_host_mask |= cpu_has_umip ? 0 : X86_CR4_UMIP;
             if ( v->domain->arch.monitor.write_ctrlreg_enabled &
                  monitor_ctrlreg_bitmask(VM_EVENT_X86_CR4) )
                 v->arch.hvm.vmx.cr4_host_mask |=
--- a/xen/include/asm-x86/cpufeature.h
+++ b/xen/include/asm-x86/cpufeature.h
@@ -112,6 +112,7 @@
 
 /* CPUID level 0x00000007:0.ecx */
 #define cpu_has_avx512_vbmi     boot_cpu_has(X86_FEATURE_AVX512_VBMI)
+#define cpu_has_umip            boot_cpu_has(X86_FEATURE_UMIP)
 #define cpu_has_avx512_vbmi2    boot_cpu_has(X86_FEATURE_AVX512_VBMI2)
 #define cpu_has_gfni            boot_cpu_has(X86_FEATURE_GFNI)
 #define cpu_has_vaes            boot_cpu_has(X86_FEATURE_VAES)
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -228,7 +228,7 @@ XEN_CPUFEATURE(AVX512VL,      5*32+31) /
 /* Intel-defined CPU features, CPUID level 0x00000007:0.ecx, word 6 */
 XEN_CPUFEATURE(PREFETCHWT1,   6*32+ 0) /*A  PREFETCHWT1 instruction */
 XEN_CPUFEATURE(AVX512_VBMI,   6*32+ 1) /*A  AVX-512 Vector Byte Manipulation Instrs */
-XEN_CPUFEATURE(UMIP,          6*32+ 2) /*S  User Mode Instruction Prevention */
+XEN_CPUFEATURE(UMIP,          6*32+ 2) /*!S User Mode Instruction Prevention */
 XEN_CPUFEATURE(PKU,           6*32+ 3) /*H  Protection Keys for Userspace */
 XEN_CPUFEATURE(OSPKE,         6*32+ 4) /*!  OS Protection Keys Enable */
 XEN_CPUFEATURE(AVX512_VBMI2,  6*32+ 6) /*A  Additional AVX-512 Vector Byte Manipulation Instrs */


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:50:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:50:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110983.212095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyeH-0002d3-3W; Thu, 15 Apr 2021 09:50:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110983.212095; Thu, 15 Apr 2021 09:50: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 1lWyeH-0002cw-0R; Thu, 15 Apr 2021 09:50:57 +0000
Received: by outflank-mailman (input) for mailman id 110983;
 Thu, 15 Apr 2021 09:50:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWyeF-0002cq-FU
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:50:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a2122c7f-4665-4a1f-bf16-856dc446566b;
 Thu, 15 Apr 2021 09:50:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 14B89AC6E;
 Thu, 15 Apr 2021 09:50: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: a2122c7f-4665-4a1f-bf16-856dc446566b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618480252; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=PEu2ec80qPjQcDNvmutq0WG4ppPMpFxo48oriouP9So=;
	b=ri2JEnXxsk0RllbvAn30RsBE9iytwduQz/Ih86j7XOjS7uno3kEZT+5G4LV3mShrO+DwkU
	iLY8cAkjpMUnutTHDnl9Bu7ZEqFNjSzoU3w1fCyvMOALc64Hhl7nk2eQfGHlAUmUxyV6vZ
	oVMvWZQOdrjIxZvq3ijR2ZSPM8G25/M=
Subject: Ping: [PATCH] build: centralize / unify asm-offsets generation
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 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>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
Message-ID: <6ce134f1-1bca-ad5f-400f-f4213ea03865@suse.com>
Date: Thu, 15 Apr 2021 11:50:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 10:33, Jan Beulich wrote:
> Except for an additional prereq Arm and x86 have the same needs here,
> and Arm can also benefit from the recent x86 side improvement. Recurse
> into arch/*/ only for a phony include target (doing nothing on Arm),
> and handle asm-offsets itself entirely locally to xen/Makefile.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Comments / acks, anyone?

Thanks, Jan

> --- a/.gitignore
> +++ b/.gitignore
> @@ -318,7 +318,6 @@
>  xen/arch/x86/efi/check.efi
>  xen/arch/x86/efi/mkreloc
>  xen/arch/*/xen.lds
> -xen/arch/*/asm-offsets.s
>  xen/arch/*/efi/boot.c
>  xen/arch/*/efi/compat.c
>  xen/arch/*/efi/ebmalloc.c
> @@ -325,6 +324,7 @@
>  xen/arch/*/efi/efi.h
>  xen/arch/*/efi/pe.c
>  xen/arch/*/efi/runtime.c
> +xen/asm-offsets.s
>  xen/common/config_data.S
>  xen/common/config.gz
>  xen/include/headers*.chk
> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -341,7 +341,7 @@ _clean: delete-unfresh-files
>  	find . \( -name "*.o" -o -name ".*.d" -o -name ".*.d2" \
>  		-o -name "*.gcno" -o -name ".*.cmd" \) -exec rm -f {} \;
>  	rm -f include/asm $(TARGET) $(TARGET).gz $(TARGET).efi $(TARGET).efi.map $(TARGET)-syms $(TARGET)-syms.map *~ core
> -	rm -f include/asm-*/asm-offsets.h
> +	rm -f asm-offsets.s include/asm-*/asm-offsets.h
>  	rm -f .banner
>  
>  .PHONY: _distclean
> @@ -362,7 +362,7 @@ $(TARGET): delete-unfresh-files
>  		done; \
>  		true
>  	$(MAKE) -f $(BASEDIR)/Rules.mk -C include
> -	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) asm-offsets.s
> +	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) include
>  	$(MAKE) -f $(BASEDIR)/Rules.mk include/asm-$(TARGET_ARCH)/asm-offsets.h
>  	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) $@
>  
> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
>  	@mv -f $@.new $@
>  
> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
> +	$(call move-if-changed,$@.new,$@)
> +
> +include/asm-$(TARGET_ARCH)/asm-offsets.h: asm-offsets.s
>  	@(set -e; \
>  	  echo "/*"; \
>  	  echo " * DO NOT MODIFY."; \
> --- a/xen/arch/arm/Makefile
> +++ b/xen/arch/arm/Makefile
> @@ -131,8 +131,8 @@ $(TARGET)-syms: prelink.o xen.lds
>  		>$(@D)/$(@F).map
>  	rm -f $(@D)/.$(@F).[0-9]*
>  
> -asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c
> -	$(CC) $(filter-out -flto,$(c_flags)) -S -o $@ $<
> +.PHONY: include
> +include:
>  
>  xen.lds: xen.lds.S
>  	$(CPP) -P $(a_flags) -MQ $@ -o $@ $<
> @@ -141,6 +141,6 @@ dtb.o: $(CONFIG_DTB_FILE)
>  
>  .PHONY: clean
>  clean::
> -	rm -f asm-offsets.s xen.lds
> +	rm -f xen.lds
>  	rm -f $(BASEDIR)/.xen-syms.[0-9]*
>  	rm -f $(TARGET).efi
> --- a/xen/arch/x86/Makefile
> +++ b/xen/arch/x86/Makefile
> @@ -244,9 +244,8 @@ endif
>  efi/buildid.o efi/relocs-dummy.o: $(BASEDIR)/arch/x86/efi/built_in.o
>  efi/buildid.o efi/relocs-dummy.o: ;
>  
> -asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c $(BASEDIR)/include/asm-x86/asm-macros.h
> -	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
> -	$(call move-if-changed,$@.new,$@)
> +.PHONY: include
> +include: $(BASEDIR)/include/asm-x86/asm-macros.h
>  
>  asm-macros.i: CFLAGS-y += -D__ASSEMBLY__ -P
>  
> @@ -276,7 +275,7 @@ hweight.o: CFLAGS-y += $(foreach reg,cx
>  
>  .PHONY: clean
>  clean::
> -	rm -f asm-offsets.s *.lds *.new boot/*.o boot/*~ boot/core boot/mkelf32
> +	rm -f *.lds *.new boot/*.o boot/*~ boot/core boot/mkelf32
>  	rm -f asm-macros.i $(BASEDIR)/include/asm-x86/asm-macros.*
>  	rm -f $(BASEDIR)/.xen-syms.[0-9]* boot/.*.d $(BASEDIR)/.xen.elf32
>  	rm -f $(BASEDIR)/.xen.efi.[0-9]* efi/*.efi efi/mkreloc
> 



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:52:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:52:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110987.212107 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWygB-0002m7-Hi; Thu, 15 Apr 2021 09:52:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110987.212107; Thu, 15 Apr 2021 09:52: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 1lWygB-0002m0-DE; Thu, 15 Apr 2021 09:52:55 +0000
Received: by outflank-mailman (input) for mailman id 110987;
 Thu, 15 Apr 2021 09:52:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWyg9-0002lv-Mo
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:52:53 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6052db49-096c-465b-9e92-c25906d690bd;
 Thu, 15 Apr 2021 09:52:51 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6052db49-096c-465b-9e92-c25906d690bd
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618480371;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=4mIXoq7b+tcKk2B3leGu3DPY3B3fYa+xv1YTP2oSz4c=;
  b=A3XBADMWTOMmgRC+OPyq9rfUwuBHOCxsnRlwIxIVwLz7xHeNO5yvPiIC
   vgZ+5ti7ZZzlp1aZXLtKDxSTcsG8ymyw/Z97s2ssV2CotjiYDDYQ8GlY9
   DqaWx+X+4VcaxojzMI7+Q8xezsxoOb59OcrSSAo63ay87Lo2Sagktye3u
   Y=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: LcaneTw1UysLlbOGzArNnXpFZ1IbrRTKnsWzYEm7KDgPD+qiDt3hHZk1e8RmDB1jCc16qWppkN
 SPDax19cFxLPcqmQ2n2AFhi1GNHJwumJwr/PaSwNsyAtBfJUb5a9ysWDXQgaaDH62VV9obl+gz
 Pbz5NVO1149f5MMIE8OI7oQNK4mn7FO9vC/u42w4tymbeOMqIpXPwUwyd/1K/f9bzu0pHe5AeT
 1DAE9PLVnbq/7JeAXKVbcm21IvtWG2ye9DzNLlXbQFoNfKp80NHlJyyxH0D1o87ZyVI7tUF1Zc
 BBE=
X-SBRS: 5.2
X-MesageID: 41657404
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:JHpctq6RmsgqRVfG1APXwbKBI+orLtY04lQ7vn1ZYRZeftWE0+
 Wnm/oG3RH54QxhP00Is/roAse9aFnb8oN45pRUGL+kUhXvtmfAFvAF0aLJxTr8FyristNMzK
 sISdkFNPTcBUV35PyKgjWQPM0nxLC8nJyAocf74zNTQRpxa6dmhj0JdzqzNkFtXgFJCd4YOf
 Onl696jgGtc3gWcci3b0NtN4OoyuHjr57obQULABQq8mC1/FeVwYTnGBuV1Ap2aVJy6Ioi6m
 TMnkjY4aiuopiAu3zh/lLT9JhflZ/dzMJCDqW36vQ9FzOEsGmVTbUkf4fHnTgu5Mmz9V4hkb
 D30m4dFvU2z0mUQ0aYjl/G3RL63DMn9nn4oGXo+UfLsIj+XzI1C81ImIJffF/Y8iMbzapB7J
 4=
X-IronPort-AV: E=Sophos;i="5.82,223,1613451600"; 
   d="scan'208";a="41657404"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YItFRQvvWIy2YlI8sMTSKMMyCr2ViIdw9jCQ8/1/ixeRlEP5EacyoaRs1sz96qYk8E+TEIO6ZwtwsuBOtWbSNYhFa5+tRwJd0bdkZ1J1mnPtp/eXeyoISynwoLtbOy/JxYpEju6rt288eVlyE9j8CKpa8VJwefG6YJBOPsOEwg/4R6UlkuXU+PTvuuCMDLqgzw2BV4+Jqt1l32QmaGaHfOapW4ForwME4q0RWytJUX+6j9ae3Iwd571jw3iPXvLOPDNph/UK2tZ5AeUfS9JDA91jDEuN41A3SEr38mpt/3lV4xL03gb4EqMgIwBKWwYSPufXJVuMqSt6Vl+eGQGXoQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lK2xeTZd+7jZuCsIbVtq7R8ilQ8WPn7dcsZtznw+4iY=;
 b=Qso7W14UE92RRYlAU0ica3TAcxYARX2IJhkyEyScXLSXIfdFY7hCBiIXU6xOe5pUTw2/rR3SqVBFQGuMSAXNDTuc4oiQodRHqKYr5yLWAL71os+YTcQORHAOE2AHCH69CC7QmA3clqUrw/hF7lZ15Dn3QZ93FyzaNyaJ/egTgmQMdnTXLGZJWBniwu9ykBb0aF4iBQCRqSX8E4FBYQxZCZ79DUqh9CXOWrX/0jLJZL6Z0uoKs2ahuHr03KSdXhzcj28r6jrGj1kAncBxAmclFMoHpSxi+EGaaKXQyjre8xxiilkeHUuccHE7IAhB7LK2OpsJs75tFA9FDx3ezEUFVA==
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=lK2xeTZd+7jZuCsIbVtq7R8ilQ8WPn7dcsZtznw+4iY=;
 b=JkYLYPjSYEYNokSqI47jEpkXdF1LZ2NDMpCUC1o9QJozagMgkCmLdUD6k0myhEDNMILVRSTGwSnRT1rWsboFFgOUKbJlSlXDhWoux9PLQJX/ZwzPfKuZNg2UG7p5BmGDLZJ5ywo1xcxkzRpc2Kucf+Fq0ZJpwnK+BjMPIPNtK5w=
Date: Thu, 15 Apr 2021 11:52:41 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 12/17] x86/CPUID: shrink max_{,sub}leaf fields
 according to actual leaf contents
Message-ID: <YHgM6eTT2OJY89aU@Air-de-Roger>
References: <255f466c-3c95-88c5-3e55-0f04c9ae1b12@suse.com>
 <2aaffa0e-e17f-6581-6003-e58d2c9fc1d7@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <2aaffa0e-e17f-6581-6003-e58d2c9fc1d7@suse.com>
X-ClientProxiedBy: AM5PR0101CA0011.eurprd01.prod.exchangelabs.com
 (2603:10a6:206:16::24) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0a8863c3-8bfe-4395-789a-08d8fff4398c
X-MS-TrafficTypeDiagnostic: DM6PR03MB3578:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB3578309FA0FCE6C40C684FEE8F4D9@DM6PR03MB3578.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: w4tvPW1sI0yJCz82i6tYni9LmruG0XbqTzjSdmP6NiKin/XBC/TExPSJlGYUseOD7LDcXcS4+l6tnS3/ANpzxPL5NBB6nEnRviEKYzMhRl8DlApzTV0HPyK+A+VLRbqqBCsXOXuG1YYMrrgl4F+16ixCrr8H9OhL0HcQD/5VRoKf412u/iRalZOl5Hkc02b+EMorEsp7nSh4hZtaIhjOO4B9sef/PCH85O9wK8vUCpPOSC4JdRMfenU75tbJEthuXHj1pPDwU34CRKuhAa0rshF3jhzm4GZToa0CIQGJupBB98DcEvvLoRGe5umJNZIzqAeLT3EzwnMxTfPeatCBEHZw6hAOzPKAqH3DA8aGCP9pcCsRaqWYiGNLp2outEs3rbtJIp3TwmP0cfr49XckfUCgspABTdx6hPNmU8C7GDxx8M0EcqvBCPPIvJ8l8sIAkGtupkn20x4fJR8VItU/HFnO92NtqcrTMfCZ1VxpoRXisY+QAfud2UXfUGZXBCHYAih7MNWjZ2MatM7soJKySnpH+Gd8+Lq5L3o0NS7ZXioLn+yUFn8rQsshWerd5r4C/vZVzvgjF3ErU1oECdXAUCmROVIpbwoKojeMYkxwOU/G1r+EqHgY/eryb6HnKFev4jO+FU6eIxWgBmmz5Igp8w==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(136003)(346002)(39860400002)(396003)(366004)(6666004)(2906002)(956004)(316002)(66556008)(478600001)(8676002)(4326008)(6486002)(54906003)(33716001)(6496006)(66476007)(38100700002)(86362001)(85182001)(6916009)(8936002)(9686003)(26005)(5660300002)(16526019)(186003)(66946007)(83380400001)(473944003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 0a8863c3-8bfe-4395-789a-08d8fff4398c
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 09:52:47.7437
 (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: vL0kX7Cc/W5KMCShcx4jqitdff9IqYXCjv2e0PbwTenok+U/DEVgS1l9xdY5OWfVfBnsW1UUQigZsddSlP8FpA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3578
X-OriginatorOrg: citrix.com

On Mon, Nov 23, 2020 at 03:33:03PM +0100, Jan Beulich wrote:
> Zapping leaf data for out of range leaves is just one half of it: To
> avoid guests (bogusly or worse) inferring information from mere leaf
> presence, also shrink maximum indicators such that the respective
> trailing entry is not all blank (unless of course it's the initial
> subleaf of a leaf that's not the final one).
> 
> This is also in preparation of bumping the maximum basic leaf we
> support, to ensure guests not getting exposed related features won't
> observe a change in behavior.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v2: New.
> 
> --- a/tools/tests/cpu-policy/test-cpu-policy.c
> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
> @@ -8,10 +8,13 @@
>  #include <err.h>
>  
>  #include <xen-tools/libs.h>
> +#include <xen/asm/x86-defns.h>
>  #include <xen/asm/x86-vendors.h>
>  #include <xen/lib/x86/cpu-policy.h>
>  #include <xen/domctl.h>
>  
> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)

This gets used only once...

> +
>  static unsigned int nr_failures;
>  #define fail(fmt, ...)                          \
>  ({                                              \
> @@ -564,6 +567,103 @@ static void test_cpuid_out_of_range_clea
>      }
>  }
>  
> +static void test_cpuid_maximum_leaf_shrinking(void)
> +{
> +    static const struct test {
> +        const char *name;
> +        struct cpuid_policy p;
> +    } tests[] = {
> +        {
> +            .name = "basic",
> +            .p = {
> +                /* Very basic information only. */
> +                .basic.max_leaf = 1,
> +                .basic.raw_fms = 0xc2,
> +            },
> +        },
> +        {
> +            .name = "cache",
> +            .p = {
> +                /* Cache subleaves present. */
> +                .basic.max_leaf = 4,
> +                .cache.subleaf[0].type = 1,
> +            },
> +        },
> +        {
> +            .name = "feat#0",
> +            .p = {
> +                /* Subleaf 0 only with some valid bit. */
> +                .basic.max_leaf = 7,
> +                .feat.max_subleaf = 0,
> +                .feat.fsgsbase = 1,
> +            },
> +        },
> +        {
> +            .name = "feat#1",
> +            .p = {
> +                /* Subleaf 1 only with some valid bit. */
> +                .basic.max_leaf = 7,
> +                .feat.max_subleaf = 1,
> +                .feat.avx_vnni = 1,
> +            },
> +        },
> +        {
> +            .name = "topo",
> +            .p = {
> +                /* Topology subleaves present. */
> +                .basic.max_leaf = 0xb,
> +                .topo.subleaf[0].type = 1,
> +            },
> +        },
> +        {
> +            .name = "xstate",
> +            .p = {
> +                /* First subleaf always valid (and then non-zero). */
> +                .basic.max_leaf = 0xd,
> +                .xstate.xcr0_low = XSTATE_FP_SSE,

...here. And then I also wonder whether this requires having any
specific values rather than just using ~0 or any random non-0 value.

> +            },
> +        },
> +        {
> +            .name = "extd",
> +            .p = {
> +                /* Commonly available information only. */
> +                .extd.max_leaf = 0x80000008,
> +                .extd.maxphysaddr = 0x28,
> +                .extd.maxlinaddr = 0x30,
> +            },
> +        },
> +    };
> +
> +    printf("Testing CPUID maximum leaf shrinking:\n");
> +
> +    for ( size_t i = 0; i < ARRAY_SIZE(tests); ++i )
> +    {
> +        const struct test *t = &tests[i];
> +        struct cpuid_policy *p = memdup(&t->p);
> +
> +        p->basic.max_leaf = ARRAY_SIZE(p->basic.raw) - 1;
> +        p->feat.max_subleaf = ARRAY_SIZE(p->feat.raw) - 1;
> +        p->extd.max_leaf = 0x80000000 | (ARRAY_SIZE(p->extd.raw) - 1);
> +
> +        x86_cpuid_policy_shrink_max_leaves(p);
> +
> +        /* Check the the resulting max (sub)leaf values against expecations. */
> +        if ( p->basic.max_leaf != t->p.basic.max_leaf )
> +             fail("  Test %s basic fail - expected %#x, got %#x\n",
> +                  t->name, t->p.basic.max_leaf, p->basic.max_leaf);
> +
> +        if ( p->extd.max_leaf != t->p.extd.max_leaf )
> +             fail("  Test %s extd fail - expected %#x, got %#x\n",
> +                  t->name, t->p.extd.max_leaf, p->extd.max_leaf);
> +
> +        if ( p->feat.max_subleaf != t->p.feat.max_subleaf )
> +             fail("  Test %s feat fail - expected %#x, got %#x\n",
> +                  t->name, t->p.feat.max_subleaf, p->feat.max_subleaf);
> +
> +        free(p);
> +    }
> +}
> +
>  static void test_is_compatible_success(void)
>  {
>      static struct test {
> @@ -679,6 +779,7 @@ int main(int argc, char **argv)
>      test_cpuid_serialise_success();
>      test_cpuid_deserialise_failure();
>      test_cpuid_out_of_range_clearing();
> +    test_cpuid_maximum_leaf_shrinking();
>  
>      test_msr_serialise_success();
>      test_msr_deserialise_failure();
> --- a/xen/arch/x86/cpuid.c
> +++ b/xen/arch/x86/cpuid.c
> @@ -346,6 +346,8 @@ static void __init calculate_host_policy
>          p->extd.raw[0xa].d |= ((1u << SVM_FEATURE_VMCBCLEAN) |
>                                 (1u << SVM_FEATURE_TSCRATEMSR));
>      }
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  static void __init guest_common_default_feature_adjustments(uint32_t *fs)
> @@ -415,6 +417,8 @@ static void __init calculate_pv_max_poli
>      recalculate_xstate(p);
>  
>      p->extd.raw[0xa] = EMPTY_LEAF; /* No SVM for PV guests. */
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  static void __init calculate_pv_def_policy(void)
> @@ -435,6 +439,8 @@ static void __init calculate_pv_def_poli
>      sanitise_featureset(pv_featureset);
>      cpuid_featureset_to_policy(pv_featureset, p);
>      recalculate_xstate(p);
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  static void __init calculate_hvm_max_policy(void)
> @@ -494,6 +500,8 @@ static void __init calculate_hvm_max_pol
>      sanitise_featureset(hvm_featureset);
>      cpuid_featureset_to_policy(hvm_featureset, p);
>      recalculate_xstate(p);
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  static void __init calculate_hvm_def_policy(void)
> @@ -518,6 +526,8 @@ static void __init calculate_hvm_def_pol
>      sanitise_featureset(hvm_featureset);
>      cpuid_featureset_to_policy(hvm_featureset, p);
>      recalculate_xstate(p);
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  void __init init_host_cpuid(void)
> @@ -704,6 +714,8 @@ void recalculate_cpuid_policy(struct dom
>  
>      if ( !p->extd.page1gb )
>          p->extd.raw[0x19] = EMPTY_LEAF;
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  int init_domain_cpuid_policy(struct domain *d)
> --- a/xen/arch/x86/hvm/viridian/viridian.c
> +++ b/xen/arch/x86/hvm/viridian/viridian.c
> @@ -121,7 +121,9 @@ void cpuid_viridian_leaves(const struct
>      switch ( leaf )
>      {
>      case 0:
> -        res->a = 0x40000006; /* Maximum leaf */
> +        /* Maximum leaf */
> +        cpuid_viridian_leaves(v, 0x40000006, 0, res);
> +        res->a = res->a | res->b | res->c | res->d ? 0x40000006 : 0x40000004;

I think you would need to adjust this chunk to also take into account
leaf 0x40000005 now.

I also wonder whether we should actually limit HyperV leaves. I think
it's perfectly fine to report up to the maximum supported by Xen, even
if it turns out none of the advertised feat are present, as in: Xen
supports those leaves, but none of the features exposed are
available.

>          memcpy(&res->b, "Micr", 4);
>          memcpy(&res->c, "osof", 4);
>          memcpy(&res->d, "t Hv", 4);
> --- a/xen/arch/x86/traps.c
> +++ b/xen/arch/x86/traps.c
> @@ -964,13 +964,15 @@ void cpuid_hypervisor_leaves(const struc
>      uint32_t base = is_viridian_domain(d) ? 0x40000100 : 0x40000000;
>      uint32_t idx  = leaf - base;
>      unsigned int limit = is_viridian_domain(d) ? p->hv2_limit : p->hv_limit;
> +    unsigned int dflt = is_pv_domain(d) ? XEN_CPUID_MAX_PV_NUM_LEAVES
> +                                        : XEN_CPUID_MAX_HVM_NUM_LEAVES;
>  
>      if ( limit == 0 )
>          /* Default number of leaves */
> -        limit = XEN_CPUID_MAX_NUM_LEAVES;
> +        limit = dflt;
>      else
>          /* Clamp toolstack value between 2 and MAX_NUM_LEAVES. */
> -        limit = min(max(limit, 2u), XEN_CPUID_MAX_NUM_LEAVES + 0u);
> +        limit = min(max(limit, 2u), dflt);
>  
>      if ( idx > limit )
>          return;
> --- a/xen/include/public/arch-x86/cpuid.h
> +++ b/xen/include/public/arch-x86/cpuid.h
> @@ -113,6 +113,10 @@
>  /* Max. address width in bits taking memory hotplug into account. */
>  #define XEN_CPUID_MACHINE_ADDRESS_WIDTH_MASK (0xffu << 0)
>  
> -#define XEN_CPUID_MAX_NUM_LEAVES 5
> +#define XEN_CPUID_MAX_PV_NUM_LEAVES 5
> +#define XEN_CPUID_MAX_HVM_NUM_LEAVES 4
> +#define XEN_CPUID_MAX_NUM_LEAVES \
> +    (XEN_CPUID_MAX_PV_NUM_LEAVES > XEN_CPUID_MAX_HVM_NUM_LEAVES ? \
> +     XEN_CPUID_MAX_PV_NUM_LEAVES : XEN_CPUID_MAX_HVM_NUM_LEAVES)

I guess we don't have any form of max macro available here to use?

>  
>  #endif /* __XEN_PUBLIC_ARCH_X86_CPUID_H__ */
> --- a/xen/include/xen/lib/x86/cpuid.h
> +++ b/xen/include/xen/lib/x86/cpuid.h
> @@ -351,6 +351,13 @@ void x86_cpuid_policy_fill_native(struct
>   */
>  void x86_cpuid_policy_clear_out_of_range_leaves(struct cpuid_policy *p);
>  
> +/**
> + * Shrink max leaf/subleaf values such that the last respective valid entry
> + * isn't all blank.  While permitted by the spec, such extraneous leaves may
> + * provide undue "hints" to guests.
> + */
> +void x86_cpuid_policy_shrink_max_leaves(struct cpuid_policy *p);
> +
>  #ifdef __XEN__
>  #include <public/arch-x86/xen.h>
>  typedef XEN_GUEST_HANDLE_64(xen_cpuid_leaf_t) cpuid_leaf_buffer_t;
> --- a/xen/lib/x86/cpuid.c
> +++ b/xen/lib/x86/cpuid.c
> @@ -238,6 +238,45 @@ void x86_cpuid_policy_clear_out_of_range
>                  ARRAY_SIZE(p->extd.raw) - 1);
>  }
>  
> +void x86_cpuid_policy_shrink_max_leaves(struct cpuid_policy *p)
> +{
> +    unsigned int i;
> +
> +    p->basic.raw[0x4] = p->cache.raw[0];
> +
> +    for ( i = p->feat.max_subleaf; i; --i )
> +        if ( p->feat.raw[i].a | p->feat.raw[i].b |
> +             p->feat.raw[i].c | p->feat.raw[i].d )
> +            break;
> +    p->feat.max_subleaf = i;
> +    p->basic.raw[0x7] = p->feat.raw[0];

Do you need to use p->feat.raw[i] to assure the basic 0x7 leaf is seen
as populated?

I think in theory raw[0] could be clear while raw[i] cannot as long as
there's a populated leaf > 0 due to the check above.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:53:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:53:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110992.212119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWygt-0002su-Vf; Thu, 15 Apr 2021 09:53:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110992.212119; Thu, 15 Apr 2021 09:53: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 1lWygt-0002sn-SU; Thu, 15 Apr 2021 09:53:39 +0000
Received: by outflank-mailman (input) for mailman id 110992;
 Thu, 15 Apr 2021 09:53:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWygs-0002sf-MS
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:53:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f7f8d2ac-d923-4433-8d05-fee7326a7c97;
 Thu, 15 Apr 2021 09:53:38 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2F1ECAC6E;
 Thu, 15 Apr 2021 09:53: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: f7f8d2ac-d923-4433-8d05-fee7326a7c97
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618480417; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=2wBm2EHrTG/WlZZxGtTQH9QKJ5lIyf6rcYXncKSBmvg=;
	b=qOsx8DHtIWnpPROMPfATuG5IkdWTBQgtDzP0PiZsnDgVO2eJRvBYqllImb1f8K+DAWkcGj
	gqDzFklYuUGr02bUNoqlbA2qHfZ3WOI/+CgIhMDhoVUX2AVBUOOQeQUWE42IotdYyIro2O
	FDnBpK3cgQ9+o+ENr1o3jV72s1+NPsU=
Subject: Ping: [PATCH 0/8] x86/EFI: build adjustments
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Message-ID: <3e844d0d-a061-52f9-c33a-f28c4952524d@suse.com>
Date: Thu, 15 Apr 2021 11:53:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 11:43, Jan Beulich wrote:
> So far we've taken care of just the immediate breakage caused by
> binutils 2.36. But we can also take advantage, in particular to
> avoid "manually" creating base relocations for xen.efi. Since it
> was requested and is possible with up-to-date binutils, inclusion
> of debug info in xen.efi is another part here. The other changes
> here are cleanup related to both the work here as well as the one
> to make binutils fit for our purposes.
> 
> 1: EFI: drop stale section special casing when generating base relocs
> 2: EFI: sections may not live at VA 0 in PE binaries
> 3: EFI: program headers are an ELF concept
> 4: EFI: redo .reloc section bounds determination
> 5: drop use of prelink-efi.o
> 6: EFI: avoid use of GNU ld's --disable-reloc-section when possible
> 7: EFI: keep debug info in xen.efi
> 8: EFI: don't have an overly large image size

Only the first patch here has been acked (and has gone in). Any chance
of getting acks (or otherwise) for the rest?

Thanks, Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:54:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:54:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.110997.212131 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyi6-00035u-Aw; Thu, 15 Apr 2021 09:54:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 110997.212131; Thu, 15 Apr 2021 09: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 1lWyi6-00035n-73; Thu, 15 Apr 2021 09:54:54 +0000
Received: by outflank-mailman (input) for mailman id 110997;
 Thu, 15 Apr 2021 09:54:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWyi5-00035h-D2
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:54:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ad353301-eb3d-4cd8-8ec9-15f377c0ad37;
 Thu, 15 Apr 2021 09:54:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 00926AC6E;
 Thu, 15 Apr 2021 09:54: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: ad353301-eb3d-4cd8-8ec9-15f377c0ad37
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618480492; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ghAjuzN7t+Osm3igbv0deLUXN/vrvvOvgrdVz/kYnLQ=;
	b=c5Fm/Ut/vQZ2zxCWaBPhDUbSvv2qd6VPIBYugHnVvg9jLA9YUQ9DicU+w57I6IjZS3LvR9
	S+rFXfFVu4WAwFafImUO+lb1QhOf3Ua2nMl8AlCR84bYcMnkv9nsclLKSah1cvNRKd59ZQ
	BzjKk3BTTFt9Oe1f+u/sCR10cf9niyE=
Subject: Ping: [PATCH v4 0/3] x86/time: calibration rendezvous adjustments
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Message-ID: <4823d7ff-ad6e-979a-914a-3aa438d57a5c@suse.com>
Date: Thu, 15 Apr 2021 11:54:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 11:53, Jan Beulich wrote:
> The first patch was, under a different title and with a different
> approach, already part of the prior series of the same subject.
> The other two patches are new, resulting from me spotting further
> room for improvement (or so I hope).
> 
> 1: latch to-be-written TSC value early in rendezvous loop
> 2: yield to hyperthreads after updating TSC during rendezvous
> 3: avoid reading the platform timer in rendezvous functions

Ping?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 09:57:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 09:57:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111002.212143 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWykR-0003GE-Ni; Thu, 15 Apr 2021 09:57:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111002.212143; Thu, 15 Apr 2021 09: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 1lWykR-0003G7-KF; Thu, 15 Apr 2021 09:57:19 +0000
Received: by outflank-mailman (input) for mailman id 111002;
 Thu, 15 Apr 2021 09:57:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWykP-0003G0-U0
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 09:57:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b2342e67-f05a-4888-bc1b-5b9ee5cdf3bf;
 Thu, 15 Apr 2021 09:57:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 59EE0AC6E;
 Thu, 15 Apr 2021 09:57: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: b2342e67-f05a-4888-bc1b-5b9ee5cdf3bf
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618480636; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=1gi6LpB2ay90wHL0MaNprbc+A0YjlFknSp+NBnOGvwc=;
	b=Vw1Kvl7UytkqrctMlpfr3B+3kVy3w3Q8dMAObpByBujol6sMgMfDYOEfIwgEz+d5SYJhTG
	P5oYxEPGMS4fmkxLw6642LDYgXWR9Dxk5p3PC5rucFIBdvuJ/bEAo1xhaAQBrtnk6SEW0y
	7SY+DiOX+tLpzDcFLgLbzwlc+m+bLP0=
Subject: Re: [PATCH] x86/viridian: EOI MSR should always happen in affected
 vCPU context
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Roger Pau Monne <roger.pau@citrix.com>, paul@xen.org
References: <20210401102252.95196-1-roger.pau@citrix.com>
 <5b4ec824-8cfa-8795-3a96-fb18527d3c18@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <910fcf36-a0c6-9f1e-a402-9afa6a5c4a1f@suse.com>
Date: Thu, 15 Apr 2021 11:57:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <5b4ec824-8cfa-8795-3a96-fb18527d3c18@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 01.04.2021 12:50, Paul Durrant wrote:
> On 01/04/2021 11:22, Roger Pau Monne wrote:
>> The HV_X64_MSR_EOI wrmsr should always happen with the target vCPU
>> as current, as there's no support for EOI'ing interrupts on a remote
>> vCPU.
>>
>> While there also turn the unconditional assert at the top of the
>> function into an error on non-debug builds.
>>
>> No functional change intended.
>>
>> Requested-by: Jan Beulich <jbeulich@suse.com>
>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Reviewed-by: Paul Durrant <paul@xen.org>

Andrew,

can you please clarify whether your concern was addressed and this can
go in as-is, or (if not) reply to what Roger and I have said in response?

Thanks, Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 10:00:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 10:00:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111007.212155 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWynb-0004Ce-6L; Thu, 15 Apr 2021 10:00:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111007.212155; Thu, 15 Apr 2021 10:00: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 1lWynb-0004CX-3E; Thu, 15 Apr 2021 10:00:35 +0000
Received: by outflank-mailman (input) for mailman id 111007;
 Thu, 15 Apr 2021 10:00:33 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWynZ-0004CS-Ix
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 10:00:33 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 601d5360-3883-4a65-90f1-342a65b5c9aa;
 Thu, 15 Apr 2021 10:00:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D28EFAC6E;
 Thu, 15 Apr 2021 10:00: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: 601d5360-3883-4a65-90f1-342a65b5c9aa
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618480831; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ioUWuPsbx/s6giZpQsdPZKdLpDXqGxqPVk3s4U++FZM=;
	b=lvYyWxxTca7lzABZZRnLf80qD52vq2MUYgYt1peLOlUjGi9ScKJjqxFIp3M2X35txeb7rB
	ftKGIwsEqxEiAf+82VFMSJiX2cvY+NDA0BmV2KDQiaqlGi5cB4cJo2MzpIcI5Om3JkZkqr
	hUkbmZ5cDlDYlgt5wMKqGuZyWGi0KQc=
Subject: Ping (x86): [PATCH 01/23] lib: move muldiv64()
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <d798d6c4-fbbd-966d-df22-42a22ed6b260@suse.com>
Message-ID: <48621f47-4c7b-a249-014a-9f5bc65abaaf@suse.com>
Date: Thu, 15 Apr 2021 12:00:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <d798d6c4-fbbd-966d-df22-42a22ed6b260@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2021 12:19, Jan Beulich wrote:
> Make this a separate archive member under lib/. While doing so, don't
> move latently broken x86 assembly though: Fix the constraints, such
> that properly extending inputs to 64-bit won't just be a side effect of
> needing to copy registers, and such that we won't fail to clobber %rdx.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

While this is a change to common code, there being a specific x86
aspect here I can understand that Julien would prefer to not ack
this without an x86 maintainer having reviewed the change. May I
ask for feedback here, as I'd prefer to commit at least the first
few patches of this series before re-posting the rest.

Thanks, Jan

> --- a/xen/common/lib.c
> +++ b/xen/common/lib.c
> @@ -393,35 +393,6 @@ s64 __ldivmod_helper(s64 a, s64 b, s64 *
>  }
>  #endif /* BITS_PER_LONG == 32 */
>  
> -/* Compute with 96 bit intermediate result: (a*b)/c */
> -uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c)
> -{
> -#ifdef CONFIG_X86
> -    asm ( "mul %%rdx; div %%rcx" : "=a" (a) : "0" (a), "d" (b), "c" (c) );
> -    return a;
> -#else
> -    union {
> -        uint64_t ll;
> -        struct {
> -#ifdef WORDS_BIGENDIAN
> -            uint32_t high, low;
> -#else
> -            uint32_t low, high;
> -#endif            
> -        } l;
> -    } u, res;
> -    uint64_t rl, rh;
> -
> -    u.ll = a;
> -    rl = (uint64_t)u.l.low * (uint64_t)b;
> -    rh = (uint64_t)u.l.high * (uint64_t)b;
> -    rh += (rl >> 32);
> -    res.l.high = rh / c;
> -    res.l.low = (((rh % c) << 32) + (rl & 0xffffffff)) / c;
> -    return res.ll;
> -#endif
> -}
> -
>  /*
>   * Local variables:
>   * mode: C
> --- a/xen/lib/Makefile
> +++ b/xen/lib/Makefile
> @@ -4,6 +4,7 @@ lib-y += bsearch.o
>  lib-y += ctors.o
>  lib-y += ctype.o
>  lib-y += list-sort.o
> +lib-y += muldiv64.o
>  lib-y += parse-size.o
>  lib-y += rbtree.o
>  lib-y += sort.o
> --- /dev/null
> +++ b/xen/lib/muldiv64.c
> @@ -0,0 +1,44 @@
> +#include <xen/lib.h>
> +
> +/* Compute with 96 bit intermediate result: (a*b)/c */
> +uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c)
> +{
> +#ifdef CONFIG_X86
> +    asm ( "mulq %1; divq %2" : "+a" (a)
> +                             : "rm" ((uint64_t)b), "rm" ((uint64_t)c)
> +                             : "rdx" );
> +
> +    return a;
> +#else
> +    union {
> +        uint64_t ll;
> +        struct {
> +#ifdef WORDS_BIGENDIAN
> +            uint32_t high, low;
> +#else
> +            uint32_t low, high;
> +#endif
> +        } l;
> +    } u, res;
> +    uint64_t rl, rh;
> +
> +    u.ll = a;
> +    rl = (uint64_t)u.l.low * (uint64_t)b;
> +    rh = (uint64_t)u.l.high * (uint64_t)b;
> +    rh += (rl >> 32);
> +    res.l.high = rh / c;
> +    res.l.low = (((rh % c) << 32) + (rl & 0xffffffff)) / c;
> +
> +    return res.ll;
> +#endif
> +}
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * tab-width: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> 
> 



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 10:04:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 10:04:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111012.212173 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyrV-0004Nl-Rv; Thu, 15 Apr 2021 10:04:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111012.212173; Thu, 15 Apr 2021 10:04: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 1lWyrV-0004Ne-NR; Thu, 15 Apr 2021 10:04:37 +0000
Received: by outflank-mailman (input) for mailman id 111012;
 Thu, 15 Apr 2021 10:04:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=C/wI=JM=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lWyrU-0004NU-N2
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 10:04:36 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 564343f5-6711-48bd-bd92-18067bf0bcc3;
 Thu, 15 Apr 2021 10:04: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: 564343f5-6711-48bd-bd92-18067bf0bcc3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618481075;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version;
  bh=36FTba6wXpKsrGSytruNVcKh7iyTzyBZ7hcdmzqIxUw=;
  b=djDs4sktKJoLmtJ1hTp5BXN7BQdMZ40V+7kPCkKlH0CvngmM3LaQ59gL
   1ZcLDuq8H2njJ0Hlzq0MVfdeptKY9llJ17Q/oZ9aJo9MuSb4VNQsb5QT2
   KjptvlftmhUEJDrqJZqgtq9dTME7v97cgGq8pZmJKnNM7NlWKS4swRnoR
   o=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 50X7pzc+yaPzBHTOPz+2vLHLRv+wIDS7xksK3+oZDNUsQ0r2P38fvtcQjMgl4udd8iazdOBx1O
 RvQYMzb7HPatbBT/G3osYqywFovXhJHe2nMLFRhW1YzJ5mjhp6VXnXWwSfSIZ3uoCQ9nGAr3xm
 fKznlRMO28a3Cvl+n7lJu6ijw76p7TQm1P9SvvIRXI6mtwCf6aNbvaBQmdzOXWLcFbR0vQUptQ
 D4CEkg4lAnWDkszuZVlcCIjrJRJhq5Omp3ZGf8pTJkimmy8evDbbduAoo1E3jmtLRU22pwhwn9
 zVg=
X-SBRS: 4.0
X-MesageID: 41658484
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:mibTiK7301shrSv0ngPXwC7XdLJzesId70hD6mlaY3VuHPCwvc
 aogfgdyFvImC8cMUtQ4OyoFaGcTRrnlaJdzpIWOd6ZMDXOmGztF4166Jun/juIIVyaysd49Y
 NNN5dzE8fxC18St7ed3CCdH8w7yNeKtICE7N2urEtFdg1hZ6F+4woRMG/yeScaeCB8CZU0D5
 aa7MZczgDQHUg/VcinGmIDG9HKutyjruOAXTc9GxUl5AOS5AnI1JfGFXGjsSs2Yndqybcm/X
 OtqX2a2pme
X-IronPort-AV: E=Sophos;i="5.82,223,1613451600"; 
   d="scan'208";a="41658484"
From: Igor Druzhinin <igor.druzhinin@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: <jun.nakajima@intel.com>, <kevin.tian@intel.com>, <jbeulich@suse.com>,
	<andrew.cooper3@citrix.com>, <roger.pau@citrix.com>, <wl@xen.org>, "Igor
 Druzhinin" <igor.druzhinin@citrix.com>
Subject: [PATCH v5 2/2] x86/intel: insert Ice Lake-SP and Ice Lake-D model numbers
Date: Thu, 15 Apr 2021 11:04:22 +0100
Message-ID: <1618481062-16094-2-git-send-email-igor.druzhinin@citrix.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1618481062-16094-1-git-send-email-igor.druzhinin@citrix.com>
References: <1618481062-16094-1-git-send-email-igor.druzhinin@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain

LBR, C-state MSRs should correspond to Ice Lake desktop according to
SDM rev. 74 for both models.

Ice Lake-SP is known to expose IF_PSCHANGE_MC_NO in IA32_ARCH_CAPABILITIES MSR
(as advisory tells and Whitley SDP confirms) which means the erratum is fixed
in hardware for that model and therefore it shouldn't be present in
has_if_pschange_mc list. Provisionally assume the same to be the case
for Ice Lake-D.

Reviewed-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
---
No changes in v5.

Changes in v4:
- now based on SDM update
- new LBR (0x1e0)does not seem to be exposed in the docs

Changes in v3:
- Add Ice Lake-D model numbers
- Drop has_if_pschange_mc hunk following Tiger Lake related discussion
---
 xen/arch/x86/acpi/cpu_idle.c | 2 ++
 xen/arch/x86/hvm/vmx/vmx.c   | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c
index c092086..d788c8b 100644
--- a/xen/arch/x86/acpi/cpu_idle.c
+++ b/xen/arch/x86/acpi/cpu_idle.c
@@ -181,6 +181,8 @@ static void do_get_hw_residencies(void *arg)
     case 0x55:
     case 0x5E:
     /* Ice Lake */
+    case 0x6A:
+    case 0x6C:
     case 0x7D:
     case 0x7E:
     /* Tiger Lake */
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 30c6a57..91cba19 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -2990,7 +2990,7 @@ static const struct lbr_info *last_branch_msr_get(void)
         /* Goldmont Plus */
         case 0x7a:
         /* Ice Lake */
-        case 0x7d: case 0x7e:
+        case 0x6a: case 0x6c: case 0x7d: case 0x7e:
         /* Tiger Lake */
         case 0x8c: case 0x8d:
         /* Tremont */
-- 
2.7.4



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 10:04:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 10:04:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111015.212185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyrk-0004TE-6N; Thu, 15 Apr 2021 10:04:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111015.212185; Thu, 15 Apr 2021 10:04:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWyrk-0004T5-2A; Thu, 15 Apr 2021 10:04:52 +0000
Received: by outflank-mailman (input) for mailman id 111015;
 Thu, 15 Apr 2021 10:04:51 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=C/wI=JM=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lWyrj-0004Sv-5m
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 10:04:51 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9ae1a2da-2134-4fb3-a202-dc69953984f8;
 Thu, 15 Apr 2021 10:04: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: 9ae1a2da-2134-4fb3-a202-dc69953984f8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618481089;
  h=from:to:cc:subject:date:message-id:mime-version;
  bh=XM/KC8VilFwVpZaPc2wNIuqDGK9utm8Pm2v2UbjAvFI=;
  b=BQjVTd2ingDFFR7yLGc82TtUku9ie639hi8qMCz1piIgyxcR+wUWF58F
   9wF8ZWMv66+LguzUXusnVBjzREoPHwsby0yg2zpacMxlGMBRHycUJMHuA
   YZCgpuDrlc6Qzcx6av7nlgt5YsX423JKJtPbYl/PlIVHcvhuxloEU8J8c
   8=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 96QOzxdbZpGNDreiqxcT08JvuAmgfU27g96unckYg1kCfLyhRfZKpx2XU3adRS6IHc8KhRpxQ4
 6ACu6xYaHke17zZOfhzkMcuEQhXXjcF2ubTl4YU8lHZsaL9NKu4vc8YI/oAcJ/VJfdqhamrC0X
 kInQWBXP19ognevZ0COV8dvpGlEpj6PKN6O+DYOeLqp6XS3wnJlGkzzGOffim8BFxDFNY/zGrh
 8FKysYsros8OadRGZrQDXvjwhXsqEpEe8ft2PSxA37MUxkRlpYViV6fWNVBQ3vkmrJtheB/hih
 llA=
X-SBRS: 4.0
X-MesageID: 41492243
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:wpaSEaOZ925J7cBcTgSjsMiAIKoaSvp033AA/SlKJyB9WMqeis
 yogbAnxQb54QxhP00ItNicNMC7IU/02oVy5eAqUYuKeCnDlC+WIJp57Y3kqgeQfxHW0uJGz6
 9vf+xfJbTLfDtHpP336gW5DNosqePvmMvD6Nv29HtxURpsL5hp8gYRMHf/LmRNWAJECZAlfa
 D82uN7oVObFkg/X4CeDnkBU/OrnayoqK7b
X-IronPort-AV: E=Sophos;i="5.82,223,1613451600"; 
   d="scan'208";a="41492243"
From: Igor Druzhinin <igor.druzhinin@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: <jun.nakajima@intel.com>, <kevin.tian@intel.com>, <jbeulich@suse.com>,
	<andrew.cooper3@citrix.com>, <roger.pau@citrix.com>, <wl@xen.org>, "Igor
 Druzhinin" <igor.druzhinin@citrix.com>
Subject: [PATCH v5 1/2] x86/vtx: add LBR_SELECT to the list of LBR MSRs
Date: Thu, 15 Apr 2021 11:04:21 +0100
Message-ID: <1618481062-16094-1-git-send-email-igor.druzhinin@citrix.com>
X-Mailer: git-send-email 2.7.4
MIME-Version: 1.0
Content-Type: text/plain

This MSR exists since Nehalem / Silvermont and is actively used by Linux,
for instance, to improve sampling efficiency.

Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
---
Changes in v5:
- added Silvermont+ LBR_SELECT support

New patch in v4 as suggested by Andrew.
---
 xen/arch/x86/hvm/vmx/vmx.c      | 20 ++++++++++++++++----
 xen/include/asm-x86/msr-index.h | 10 ++++++++--
 2 files changed, 24 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 835b905..30c6a57 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -2915,14 +2915,16 @@ static const struct lbr_info {
 }, nh_lbr[] = {
     { MSR_IA32_LASTINTFROMIP,       1 },
     { MSR_IA32_LASTINTTOIP,         1 },
-    { MSR_C2_LASTBRANCH_TOS,        1 },
+    { MSR_NHL_LBR_SELECT,           1 },
+    { MSR_NHL_LASTBRANCH_TOS,       1 },
     { MSR_P4_LASTBRANCH_0_FROM_LIP, NUM_MSR_P4_LASTBRANCH_FROM_TO },
     { MSR_P4_LASTBRANCH_0_TO_LIP,   NUM_MSR_P4_LASTBRANCH_FROM_TO },
     { 0, 0 }
 }, sk_lbr[] = {
     { MSR_IA32_LASTINTFROMIP,       1 },
     { MSR_IA32_LASTINTTOIP,         1 },
-    { MSR_SKL_LASTBRANCH_TOS,       1 },
+    { MSR_NHL_LBR_SELECT,           1 },
+    { MSR_NHL_LASTBRANCH_TOS,       1 },
     { MSR_SKL_LASTBRANCH_0_FROM_IP, NUM_MSR_SKL_LASTBRANCH },
     { MSR_SKL_LASTBRANCH_0_TO_IP,   NUM_MSR_SKL_LASTBRANCH },
     { MSR_SKL_LASTBRANCH_0_INFO,    NUM_MSR_SKL_LASTBRANCH },
@@ -2934,10 +2936,19 @@ static const struct lbr_info {
     { MSR_C2_LASTBRANCH_0_FROM_IP,  NUM_MSR_ATOM_LASTBRANCH_FROM_TO },
     { MSR_C2_LASTBRANCH_0_TO_IP,    NUM_MSR_ATOM_LASTBRANCH_FROM_TO },
     { 0, 0 }
+}, sm_lbr[] = {
+    { MSR_IA32_LASTINTFROMIP,       1 },
+    { MSR_IA32_LASTINTTOIP,         1 },
+    { MSR_SM_LBR_SELECT,            1 },
+    { MSR_SM_LASTBRANCH_TOS,        1 },
+    { MSR_C2_LASTBRANCH_0_FROM_IP,  NUM_MSR_ATOM_LASTBRANCH_FROM_TO },
+    { MSR_C2_LASTBRANCH_0_TO_IP,    NUM_MSR_ATOM_LASTBRANCH_FROM_TO },
+    { 0, 0 }
 }, gm_lbr[] = {
     { MSR_IA32_LASTINTFROMIP,       1 },
     { MSR_IA32_LASTINTTOIP,         1 },
-    { MSR_GM_LASTBRANCH_TOS,        1 },
+    { MSR_SM_LBR_SELECT,            1 },
+    { MSR_SM_LASTBRANCH_TOS,        1 },
     { MSR_GM_LASTBRANCH_0_FROM_IP,  NUM_MSR_GM_LASTBRANCH_FROM_TO },
     { MSR_GM_LASTBRANCH_0_TO_IP,    NUM_MSR_GM_LASTBRANCH_FROM_TO },
     { 0, 0 }
@@ -2991,6 +3002,7 @@ static const struct lbr_info *last_branch_msr_get(void)
             return sk_lbr;
         /* Atom */
         case 0x1c: case 0x26: case 0x27: case 0x35: case 0x36:
+            return at_lbr;
         /* Silvermont */
         case 0x37: case 0x4a: case 0x4d: case 0x5a: case 0x5d:
         /* Xeon Phi Knights Landing */
@@ -2999,7 +3011,7 @@ static const struct lbr_info *last_branch_msr_get(void)
         case 0x85:
         /* Airmont */
         case 0x4c:
-            return at_lbr;
+            return sm_lbr;
         /* Goldmont */
         case 0x5c: case 0x5f:
             return gm_lbr;
diff --git a/xen/include/asm-x86/msr-index.h b/xen/include/asm-x86/msr-index.h
index 43d26ef..020908f 100644
--- a/xen/include/asm-x86/msr-index.h
+++ b/xen/include/asm-x86/msr-index.h
@@ -606,15 +606,21 @@
 #define NUM_MSR_C2_LASTBRANCH_FROM_TO	4
 #define NUM_MSR_ATOM_LASTBRANCH_FROM_TO	8
 
+/* Nehalem (and newer) last-branch recording */
+#define MSR_NHL_LBR_SELECT		0x000001c8
+#define MSR_NHL_LASTBRANCH_TOS		0x000001c9
+
 /* Skylake (and newer) last-branch recording */
-#define MSR_SKL_LASTBRANCH_TOS		0x000001c9
 #define MSR_SKL_LASTBRANCH_0_FROM_IP	0x00000680
 #define MSR_SKL_LASTBRANCH_0_TO_IP	0x000006c0
 #define MSR_SKL_LASTBRANCH_0_INFO	0x00000dc0
 #define NUM_MSR_SKL_LASTBRANCH		32
 
+/* Silvermont (and newer) last-branch recording */
+#define MSR_SM_LBR_SELECT		0x000001c8
+#define MSR_SM_LASTBRANCH_TOS		0x000001c9
+
 /* Goldmont last-branch recording */
-#define MSR_GM_LASTBRANCH_TOS		0x000001c9
 #define MSR_GM_LASTBRANCH_0_FROM_IP	0x00000680
 #define MSR_GM_LASTBRANCH_0_TO_IP	0x000006c0
 #define NUM_MSR_GM_LASTBRANCH_FROM_TO	32
-- 
2.7.4



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 10:26:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 10:26:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111021.212197 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWzCS-0006UY-2W; Thu, 15 Apr 2021 10:26:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111021.212197; Thu, 15 Apr 2021 10: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 1lWzCR-0006UR-VO; Thu, 15 Apr 2021 10:26:15 +0000
Received: by outflank-mailman (input) for mailman id 111021;
 Thu, 15 Apr 2021 10:26:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lWzCP-0006UM-SQ
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 10:26: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 1lWzCP-0005nz-Jn; Thu, 15 Apr 2021 10:26:13 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lWzCP-00010I-AA; Thu, 15 Apr 2021 10:26:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=NZ07Qcw1Cctb6iKARQGabUrJslVL16xSSfmjvDjEfmQ=; b=k7StNO7A8s8cRusMz7QXsQY76t
	f8tWcHeeoA03pSMvheHzbhF2eio5ffTu8xpaxwH51BOSo73yErW/jpsRKXJNymwF42WANHuXExD44
	erOEqZUZK0vG8KLWmrvvNw/xim17t8TMyWjTd4K91t6eydbC2YFq/75UyshFnA1/PzGw=;
Subject: Re: [PATCH 11/11] Arm/optee: don't open-code xzalloc_flex_struct()
To: Jan Beulich <jbeulich@suse.com>
Cc: George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <aad23304-c727-2921-59fe-ab3763f5da03@suse.com>
 <9f95c37b-dc4a-d2cf-01c1-98d2108fae88@xen.org>
 <1c9229ac-5491-313e-f053-bc5bee01c3de@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <7945a56e-337d-3c84-ecfd-2be759adda4a@xen.org>
Date: Thu, 15 Apr 2021 11:26:11 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <1c9229ac-5491-313e-f053-bc5bee01c3de@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 14/04/2021 08:03, Jan Beulich wrote:
> On 13.04.2021 20:19, Julien Grall wrote:
>> On 08/04/2021 13:23, Jan Beulich wrote:
>>> There is a difference in generated code: xzalloc_bytes() forces
>>> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
>>> actually don't want it.
>>
>> So I think moving to xmalloc_flex_struct() is a pretty good move. But I
>> am actually a bit confused with the argument used.
>>
>> Could you provide some details why you think forcing the array to be
>> aligned to the maximum cache line supported (128 bytes on Arm) is wrong?
> 
> It is not "wrong" in that sense, but if this is intended it shouldn't
> be arranged via use of xmalloc_bytes().

This is not very clear from the commit message (or even the cover 
letter). How about:

"
The current use xzalloc_bytes() in optee is nearly an open-coded version 
of xzalloc_flex_struct() which was introduced after the driver was merged.

The main difference is xzalloc_bytes() will also force the allocation to 
be SMP_CACHE_BYTES aligned and therefore avoid sharing the cache line.

While sharing the cache line can have an impact on the performance, this 
is also true for most of the other users of  x*alloc_flex_struct(). So 
if we want to prevent sharing a cache line, it should be part of 
x*alloc_flex_struct().

In this case, we don't need stricter alignment than what the allocator 
does. So the call to xzalloc_bytes() is now replaced with a call 
xzalloc_flex_Struct().
"

Ideally, we want the same sort of the commit message in the other patches.

> As also pointed out in a
> similar discussion on another sub-thread, imo xmalloc_bytes(), being
> type-unsafe, should go away altogether mid-term.

And I will support dropping xmalloc_bytes().

> If individual callers
> have specific alignment requirements (which ought to be the exception),
> they should explicitly request the needed alignment. If architectures
> would prefer all allocations to have certain minimum alignment (e.g.
> to avoid cacheline sharing, which was Andrew's argument) or other
> "arrangement" (alignment by itself may not be that interesting due to
> the bhdr placed ahead of the allocation), it should be the allocator
> itself that provides for this, not individual callers.

And I agree that the allocator should do the alignment if this benefits 
every allocation.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 10:37:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 10:37:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111029.212209 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWzNE-0007W1-79; Thu, 15 Apr 2021 10:37:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111029.212209; Thu, 15 Apr 2021 10:37: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 1lWzNE-0007Vu-3h; Thu, 15 Apr 2021 10:37:24 +0000
Received: by outflank-mailman (input) for mailman id 111029;
 Thu, 15 Apr 2021 10:37:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWzND-0007Vm-0O
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 10:37:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ae82d845-a420-4158-a76b-ff42f5fa249a;
 Thu, 15 Apr 2021 10:37:21 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F2810AF0D;
 Thu, 15 Apr 2021 10:37: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: ae82d845-a420-4158-a76b-ff42f5fa249a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618483041; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=PZgtjRjd+QptCS+hz4J79vjWeyIF+1+OxhjgLaACvdM=;
	b=gpB01kSCFFgTN1G2IXK/YWxHJsvwngfg+b/ayhqtM7obqGfau8yRz/6/PkKrDTuUT2aJtm
	q/tYFj3KHB3GZw2i+29keoHT4XEX7AhfQPqnwGJEpqZzLh5mp6YtqIUbiDdErTPrFE6z+o
	h7DxOuVNm5kCgkWXjy/TBDgdUCF1JoA=
Subject: Re: [PATCH v2 12/17] x86/CPUID: shrink max_{,sub}leaf fields
 according to actual leaf contents
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>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>
References: <255f466c-3c95-88c5-3e55-0f04c9ae1b12@suse.com>
 <2aaffa0e-e17f-6581-6003-e58d2c9fc1d7@suse.com>
 <YHgM6eTT2OJY89aU@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1862ca8d-c16c-8f47-1999-15809fcacdfe@suse.com>
Date: Thu, 15 Apr 2021 12:37:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHgM6eTT2OJY89aU@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 11:52, Roger Pau Monné wrote:
> On Mon, Nov 23, 2020 at 03:33:03PM +0100, Jan Beulich wrote:
>> --- a/tools/tests/cpu-policy/test-cpu-policy.c
>> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
>> @@ -8,10 +8,13 @@
>>  #include <err.h>
>>  
>>  #include <xen-tools/libs.h>
>> +#include <xen/asm/x86-defns.h>
>>  #include <xen/asm/x86-vendors.h>
>>  #include <xen/lib/x86/cpu-policy.h>
>>  #include <xen/domctl.h>
>>  
>> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
> 
> This gets used only once...
> 
>> +
>>  static unsigned int nr_failures;
>>  #define fail(fmt, ...)                          \
>>  ({                                              \
>> @@ -564,6 +567,103 @@ static void test_cpuid_out_of_range_clea
>>      }
>>  }
>>  
>> +static void test_cpuid_maximum_leaf_shrinking(void)
>> +{
>> +    static const struct test {
>> +        const char *name;
>> +        struct cpuid_policy p;
>> +    } tests[] = {
>> +        {
>> +            .name = "basic",
>> +            .p = {
>> +                /* Very basic information only. */
>> +                .basic.max_leaf = 1,
>> +                .basic.raw_fms = 0xc2,
>> +            },
>> +        },
>> +        {
>> +            .name = "cache",
>> +            .p = {
>> +                /* Cache subleaves present. */
>> +                .basic.max_leaf = 4,
>> +                .cache.subleaf[0].type = 1,
>> +            },
>> +        },
>> +        {
>> +            .name = "feat#0",
>> +            .p = {
>> +                /* Subleaf 0 only with some valid bit. */
>> +                .basic.max_leaf = 7,
>> +                .feat.max_subleaf = 0,
>> +                .feat.fsgsbase = 1,
>> +            },
>> +        },
>> +        {
>> +            .name = "feat#1",
>> +            .p = {
>> +                /* Subleaf 1 only with some valid bit. */
>> +                .basic.max_leaf = 7,
>> +                .feat.max_subleaf = 1,
>> +                .feat.avx_vnni = 1,
>> +            },
>> +        },
>> +        {
>> +            .name = "topo",
>> +            .p = {
>> +                /* Topology subleaves present. */
>> +                .basic.max_leaf = 0xb,
>> +                .topo.subleaf[0].type = 1,
>> +            },
>> +        },
>> +        {
>> +            .name = "xstate",
>> +            .p = {
>> +                /* First subleaf always valid (and then non-zero). */
>> +                .basic.max_leaf = 0xd,
>> +                .xstate.xcr0_low = XSTATE_FP_SSE,
> 
> ...here.

For now, yes. I'm introducing the constant because I think it wants
using in other places too, to avoid using literal numbers. See e.g.

                .xstate.xcr0_low = 7,

in test_cpuid_serialise_success().

> And then I also wonder whether this requires having any
> specific values rather than just using ~0 or any random non-0 value.

I'm afraid I don't understand: There's no ~0 here and no random
non-zero value - all other structure elements are left default-
initialized.

>> --- a/xen/arch/x86/hvm/viridian/viridian.c
>> +++ b/xen/arch/x86/hvm/viridian/viridian.c
>> @@ -121,7 +121,9 @@ void cpuid_viridian_leaves(const struct
>>      switch ( leaf )
>>      {
>>      case 0:
>> -        res->a = 0x40000006; /* Maximum leaf */
>> +        /* Maximum leaf */
>> +        cpuid_viridian_leaves(v, 0x40000006, 0, res);
>> +        res->a = res->a | res->b | res->c | res->d ? 0x40000006 : 0x40000004;
> 
> I think you would need to adjust this chunk to also take into account
> leaf 0x40000005 now.

Hmm, yes, looks like I failed to take note that I need to re-base
over that addition.

> I also wonder whether we should actually limit HyperV leaves. I think
> it's perfectly fine to report up to the maximum supported by Xen, even
> if it turns out none of the advertised feat are present, as in: Xen
> supports those leaves, but none of the features exposed are
> available.

Well, if the Viridian maintainers (I realize I failed to Cc Paul on the
original submission) think I should leave the Viridian leaves alone
(rather than handling consistently with other leaves), I can drop this
part of the change.

>> --- a/xen/include/public/arch-x86/cpuid.h
>> +++ b/xen/include/public/arch-x86/cpuid.h
>> @@ -113,6 +113,10 @@
>>  /* Max. address width in bits taking memory hotplug into account. */
>>  #define XEN_CPUID_MACHINE_ADDRESS_WIDTH_MASK (0xffu << 0)
>>  
>> -#define XEN_CPUID_MAX_NUM_LEAVES 5
>> +#define XEN_CPUID_MAX_PV_NUM_LEAVES 5
>> +#define XEN_CPUID_MAX_HVM_NUM_LEAVES 4
>> +#define XEN_CPUID_MAX_NUM_LEAVES \
>> +    (XEN_CPUID_MAX_PV_NUM_LEAVES > XEN_CPUID_MAX_HVM_NUM_LEAVES ? \
>> +     XEN_CPUID_MAX_PV_NUM_LEAVES : XEN_CPUID_MAX_HVM_NUM_LEAVES)
> 
> I guess we don't have any form of max macro available here to use?

I'm not aware of one that could be used in pre-processor directives
as well.

>> --- a/xen/lib/x86/cpuid.c
>> +++ b/xen/lib/x86/cpuid.c
>> @@ -238,6 +238,45 @@ void x86_cpuid_policy_clear_out_of_range
>>                  ARRAY_SIZE(p->extd.raw) - 1);
>>  }
>>  
>> +void x86_cpuid_policy_shrink_max_leaves(struct cpuid_policy *p)
>> +{
>> +    unsigned int i;
>> +
>> +    p->basic.raw[0x4] = p->cache.raw[0];
>> +
>> +    for ( i = p->feat.max_subleaf; i; --i )
>> +        if ( p->feat.raw[i].a | p->feat.raw[i].b |
>> +             p->feat.raw[i].c | p->feat.raw[i].d )
>> +            break;
>> +    p->feat.max_subleaf = i;
>> +    p->basic.raw[0x7] = p->feat.raw[0];
> 
> Do you need to use p->feat.raw[i] to assure the basic 0x7 leaf is seen
> as populated?
> 
> I think in theory raw[0] could be clear while raw[i] cannot as long as
> there's a populated leaf > 0 due to the check above.

Hmm, yes, this may not be very likely, but is definitely possible.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 10:53:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 10:53:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111033.212221 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWzcc-0000si-JY; Thu, 15 Apr 2021 10:53:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111033.212221; Thu, 15 Apr 2021 10: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 1lWzcc-0000sb-GQ; Thu, 15 Apr 2021 10:53:18 +0000
Received: by outflank-mailman (input) for mailman id 111033;
 Thu, 15 Apr 2021 10:53:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lWzcb-0000sW-8J
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 10:53:17 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 52a3d781-664c-430a-93a5-70d4103a84e2;
 Thu, 15 Apr 2021 10: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: 52a3d781-664c-430a-93a5-70d4103a84e2
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618483995;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=DmWqUnuqg8rSnyHiqtekdV3WBtWtFjdhj/fA9aDJstI=;
  b=Lblvth4M4T/dOe0qVGojjjq+VqlJMDT4QoocMwkI5kiNnT4enmG+dSgu
   wuOu2IcKWbanzP3+xEfs2yv4vvk1Kr6szQLOmdf4Ya8glEx9H6BUtpcyy
   7Nygg6ePI9TjkTiQRleHe2+K4a5NXosSOVuevGgissJxlnpSKjEVMT94s
   M=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: g0HMG15E3+ihH/3TFl7J5XbJ0AkVj7b+ijIjSI0yJd55AW/ffBH1Zix5JhVKOg+fVHlJvvhKT4
 Qfbf0vLIyTQotwty7qaxVpQZ3kg6Sb76DFNgTtkd30hhs3BNtUPGMfI3GCAxf0CLDkLXHS2b4G
 Pz8/PeQ09YCVfEuzivnTJqFEvTBEQfCRHQCWJO9J7RYIwdt+3Rm2U/IQMgpjN1asMANaIiTpx3
 vf19S+r3NX74gy2X0BfEwnqi8Qy6I/lOVs2HYfLj7Lve1HeRocdFWz+K+RsfFAVM4PzcFXiP7h
 9/Q=
X-SBRS: 5.2
X-MesageID: 41654599
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:tSNGYqBzAFrwT97lHeg/tMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPvfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VLdMgXE3Kpm2a
 9kGpITNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0McShBQchbnmFEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVrUu2QAH4ZU+/f4+DajZ6OW299OzcLyimryQmp5rnzDgSC0n4lMg9n7L8+/Q
 H+4mnEz4q5tfXT8G6560by6NBslMLl2p9/AqW3+7QoAxHNrirtW4h7Qb2Fu1kO0ZGSwXInis
 PFrRtlH+kb0QKoQkiPrRHg2xbt3V8VgheIozLo4gqA0L7EbQk3BMZbiYVSfgGx0TtagPhG3L
 9WxGXcjpJLDHr77VXAzuLVXBJnnFfcmwtarccviRVkIOwjQY4Uh4ke8ERJKYwHDSL35as2ed
 Mecv301bJ4d0iXYGveuXQq6NuwXm4rFhPDeUQavNeJugIm0ExR/g89/ogyj30A/JUyR91t4P
 nFCL1hkPVrQtUNZaxwKe8dSaKMeyPwaCOJFFjXDUXsFakBNX6IgYXw+q8J6Oajf4FN5Icumb
 zaOWko9VIaSgbLM4mjzZdL+hfCTCGWRjL20PxT4JB/p/nVWKfrCyueU1oj+vHQ4sk3M4n+Yb
 KeKZhWC/jsIS/FAoBSxTDzXJFUND0wS8sQltEnW0+fg87CJ4Hw39arMsr7Ff7IK3IJS2n/Cn
 wMUHzYP8Nb9H2mXXf+nVzwVhrWCwnC1KM1NJKf0/kYyYALOIEJmBMSk06F6saCLiAHlqQ3eU
 B5MY72i6/TnxjzwU/4q0FSfjZNBEdc57vtF1lQoxURDk/yebEf//KSZH5Vx3nCAhNkVcvZHE
 p+qj1MiOyKBq3V4RpnJ8OsM2qcgXdWjmmNVY0glqqK4tqgXIg5AJYgUKlYDh7KCBRxpAZvpA
 54GUw5b36aMgmrpbSujZQSCu2aXcJ7mh2XLcldrm+aiV+Rvvg1RnwQXyenVOmehQpGfUsSun
 RBt4skxJaQkzemLmUyxMA1KkdFZmisDLVaNwidf4lPlrf3eAZ/cHeSiVWh+mIOU1uv039Xqn
 3qLCWSd/2OOFZbt3xC+ovB8V9/dAymDglNQ0E/lbc4OXXNu3513+POW7G61HGJbEAehssHNi
 veXDcUKgRy5ty+2RKPggyeHXE+yphGBJ2aMJ0TN5Xonl+9IoyBkq8LW8JO9JF+Ldb0r6slV/
 mcdwL9FkKPN8oZnyiu4lArNyl/pCN6zbfG2Bj54HO523B6K/zIO1hiT6waJdbZz2WMfYf97L
 xJyfYO+c23OSHNT/TD74f9RTtKMAnSrm67VPtAk+EdgYsC8J9IW6DGWj7J3kxd1BowLM3IhF
 oTKZ4LlYzpC8tKRYguYCpX8VoiqcSXIGYqugLwBPUifVtFtQ6tA/q5p57Jo6EoGEuPuU/ZPk
 Se6TRU+57+LmG+/I9fL6I7OmJNbkcgrFxk4eOZboXVTCGnbftK8lb/EnizdtZmOeW4MIRVih
 Zx+NeTmeCLMwL+xQDLpDN+Zpt0zFzPe7L6PCu8XchS89K7PlyQgqylpO6L5Q2HNgeTWgA/no
 1KdUsZc8JZrCIt5bdHixSPdg==
X-IronPort-AV: E=Sophos;i="5.82,223,1613451600"; 
   d="scan'208";a="41654599"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cXOrejAbdRxOfQ+w8h/ZiGusRtukTzQV98v9hvGcCTFOoqUDlNYjmTJZ7xmMmEim+tNGEgUimgfVzEuNwHssJ2iAG+d1I8/qwOt0chfX318jjCp8dHhmjZbF+KoojLuHwlD6U7q3+y5bnlb4DOFlc1uKQB3Ub6z/TMJZCgGbiVGUpcezaF0NDApXe5ESFzAZvRSac1aK05R5zyJx2ZrBcVqYfB/N4k/AwfD6V/J3ehA+7QGhTHu1xdVJE6GjDGb8t1T/JW9XHjGMv0deP4K8xESrZo9pp+g8tFrFeq4JeR+lgK/RxH22d3ENL+GCL63RhaA98fVjySzq4mUDb2p9Nw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=s+bnCOuqyrlT2GlTpm6EFhRjWFvQaeXnuOrSnm6KZGM=;
 b=GMmw8PQVW+QLFU4EcpN2fDRkAAqKXvMOMVxRkPc7nUHyfxcTGebilePQYM8HrZsGjdQmYDTdOg+vPnG6rW4soo+y3F78HaPvLLcPl5nPZ3KPH5Dqmm84NRUjMkqZgvOwsq+mIPAu62BYIL+vOA+TmfFk/7jqI59P4P+MrMymBpq/akjddfLR/WLKrax609j985AdRIxTXFgHapYQUAMSq61l9Z+31Bklo/m6aKwO0M7E7jksSTXgC2aYb5GOS9Il/fKJ7+UF2RtcIrHsABInTm+4th1B+CwOuPTdObw8rbLiRCSWULv2H8584+pZ/dWpLbn/8yqzVXIJBON+ytiGbw==
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=s+bnCOuqyrlT2GlTpm6EFhRjWFvQaeXnuOrSnm6KZGM=;
 b=bgk0lAK16PYRBqo8bWyrP31GyGAcVKEzcV4Z1KVkc8Zj1ryUtVMe97LQp93GvF5WcIYT46Rs2+ty83iayLqzlUw+Ec7JdbMu2DHe9m3uH4TSxbuy502MAditK1K4fng0FNk9PlSuKk3EsM7TZsz+Nd+raP6+NLYLAQgONtECKJI=
Date: Thu, 15 Apr 2021 12:53:07 +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 v2 1/2] x86: correct is_pv_domain() when !CONFIG_PV
Message-ID: <YHgbE8Vxb67nYkuC@Air-de-Roger>
References: <3bc868c1-1003-2f80-1617-d64a1e7441bc@suse.com>
 <9667345e-835e-7c55-8d6d-2774008b0017@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <9667345e-835e-7c55-8d6d-2774008b0017@suse.com>
X-ClientProxiedBy: PR0P264CA0120.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:19::36) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 18dd8cb3-4ce2-44e2-edb5-08d8fffca9df
X-MS-TrafficTypeDiagnostic: DS7PR03MB5605:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB560520D9DBA7FBD06B5FD62C8F4D9@DS7PR03MB5605.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 4SVk8Oyc9Vm434bc+tm9lW72voS9AFxqFmxjX8sjKWNn3AQddqIhjbWQ36onyouxJhEA2lHCyqxY9Il9lHfoc0KP8Rl4oQFLypT8HkzGXxvozm0JHbflzrVx5JyASq/kgXW+Ri+I1g8/9aam9qvMUl6noCLBUcXtf6nDthQoiJKPtGG/y0RaY64yWF04bpvx19m/gHa5m/m80DMNgs5RysR2PpcDMva9+85A7GBTV0EehgdTTRO4zQ0lyNem9BYxFT4LIFCK3tyiD/zeM0ghXhLoONS0HbCFjbCrzlU5XVCQzZfXtRZZHe4i8GhGLCTkag8ZHN+kXR4xd9iBv5ySbgbqp8+2nJrTh2HjAzMOWTdFmbOBHLRqdQO9j7mLvaFT1eJsh6IbYaZ/Fy0nnikpRED1326wsty0ZygbT7sa9Bf+ailw067FiE+DrpVLeCe81yK7kN4jbx4kIbZu86YzCNZr0qeJHd1gAXV8OfMkBFxZMAQy0eVJq2c3lWnkCPfKzN6P1DcsXOM3DaO/6eb3LsMpB90O6iHzIkm4MTlkO05iK8Ag2kUYjVGYA9sPByaxJBIG1Qi9DZ61NO0aCDPPAIpZO/+Krei5gZOFhFjNC0I=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(396003)(39860400002)(376002)(366004)(346002)(6496006)(9686003)(2906002)(38100700002)(5660300002)(6486002)(316002)(956004)(8936002)(85182001)(6666004)(54906003)(33716001)(16526019)(83380400001)(478600001)(66476007)(86362001)(66946007)(4326008)(8676002)(186003)(6916009)(66556008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?IuafLGiX3HYdLfI/mfqBJe3hdz2itnxDG0u/AUK?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 18dd8cb3-4ce2-44e2-edb5-08d8fffca9df
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 10:53:12.1653
 (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: KTS6vRBjXndCvbylKNE3plbXLvjcmjXprQ+ptglFnTFhtYXm9rBBpevPjkX9SNOhsPE/MgeRgH26eNH8til8WQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5605
X-OriginatorOrg: citrix.com

On Thu, Apr 15, 2021 at 11:34:55AM +0200, Jan Beulich wrote:
> On x86, idle and other system domains are implicitly PV. While I
> couldn't spot any cases where this is actively a problem, some cases
> required quite close inspection to be certain there couldn't e.g. be
> some ASSERT_UNREACHABLE() that would trigger in this case. Let's be on
> the safe side and make sure these always have is_pv_domain() returning
> true.
> 
> For the build to still work, this requires a few adjustments elsewhere.
> In particular is_pv_64bit_domain() now gains a CONFIG_PV dependency,
> which means that is_pv_32bit_domain() || is_pv_64bit_domain() is no
> longer guaranteed to be the same as is_pv_domain().
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v2: Add comment.

Sorry for not replying earlier, I've been thinking about this because
I don't really like this approach as I think it makes code harder to
follow for two reasons, first is_pv_32bit_domain() ||
is_pv_64bit_domain() != is_pv_domain(), which I could live with, and
then also is_pv_64bit_domain() returning different values for system
domains depending on whether CONFIG_PV is enabled.

Given that AFAICT this patch is not fixing any actively identified
issue I would rather prefer to introduce is_system_domain and use it
when appropriate?

I think that would be clearer long term, and avoid tying ourselves
deeper into aliasing system domain with PV domains.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:02:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:02:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111037.212233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lWzlU-0001sb-Hs; Thu, 15 Apr 2021 11:02:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111037.212233; Thu, 15 Apr 2021 11:02: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 1lWzlU-0001sU-Dp; Thu, 15 Apr 2021 11:02:28 +0000
Received: by outflank-mailman (input) for mailman id 111037;
 Thu, 15 Apr 2021 11:02:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lWzlT-0001sM-4U
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:02:27 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id edfcb0fc-9513-4558-9271-cdde0f896783;
 Thu, 15 Apr 2021 11:02:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 04BE0AE20;
 Thu, 15 Apr 2021 11:02: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: edfcb0fc-9513-4558-9271-cdde0f896783
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618484545; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=fnBw5AmjMcypZK2aM256O5v0FMYFa84ebyQvoKu1egY=;
	b=h03NqA+eGI03Cs6J7bxrGTv1Fpgic9hCz4XprlltCxL6NosZiCLmvNrtkKSHZt5EVsLKW7
	TwP2IOZcsA/7+X+fIl30e/x6Aq1o3EEZMCio6P/eaIape+4BMTYPKEG8ZDaUH8n3BTPXT8
	63jNbdl41kmLkFQ5JsZ1Cs68xJLRDyk=
Subject: Re: [PATCH 11/11] Arm/optee: don't open-code xzalloc_flex_struct()
To: Julien Grall <julien@xen.org>
Cc: George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <aad23304-c727-2921-59fe-ab3763f5da03@suse.com>
 <9f95c37b-dc4a-d2cf-01c1-98d2108fae88@xen.org>
 <1c9229ac-5491-313e-f053-bc5bee01c3de@suse.com>
 <7945a56e-337d-3c84-ecfd-2be759adda4a@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3b0bd499-2f1a-904c-2383-c301cad2608d@suse.com>
Date: Thu, 15 Apr 2021 13:02:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <7945a56e-337d-3c84-ecfd-2be759adda4a@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 12:26, Julien Grall wrote:
> Hi Jan,
> 
> On 14/04/2021 08:03, Jan Beulich wrote:
>> On 13.04.2021 20:19, Julien Grall wrote:
>>> On 08/04/2021 13:23, Jan Beulich wrote:
>>>> There is a difference in generated code: xzalloc_bytes() forces
>>>> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
>>>> actually don't want it.
>>>
>>> So I think moving to xmalloc_flex_struct() is a pretty good move. But I
>>> am actually a bit confused with the argument used.
>>>
>>> Could you provide some details why you think forcing the array to be
>>> aligned to the maximum cache line supported (128 bytes on Arm) is wrong?
>>
>> It is not "wrong" in that sense, but if this is intended it shouldn't
>> be arranged via use of xmalloc_bytes().
> 
> This is not very clear from the commit message (or even the cover 
> letter). How about:
> 
> "
> The current use xzalloc_bytes() in optee is nearly an open-coded version 
> of xzalloc_flex_struct() which was introduced after the driver was merged.
> 
> The main difference is xzalloc_bytes() will also force the allocation to 
> be SMP_CACHE_BYTES aligned and therefore avoid sharing the cache line.
> 
> While sharing the cache line can have an impact on the performance, this 
> is also true for most of the other users of  x*alloc_flex_struct(). So 
> if we want to prevent sharing a cache line, it should be part of 
> x*alloc_flex_struct().
> 
> In this case, we don't need stricter alignment than what the allocator 
> does. So the call to xzalloc_bytes() is now replaced with a call 
> xzalloc_flex_Struct().
> "

Well, okay, I've inserted a slightly edited version of this into
the patch. But ...

> Ideally, we want the same sort of the commit message in the other patches.

... I disagree here: In particular because of the recurring
pattern, I dislike repeated overly verbose descriptions. I could
perhaps see them as being not seen as overly verbose when looking
at every commit on its own (like would happen when someone tries
to do some archaeology later on), but in the context of such a
series this is potentially harmful: If almost a dozen patches
have almost the same sufficiently verbose description, possible
differences may not be paid attention to.

Plus, granted possibly controversial as well, I'm afraid I'm not
happy to (repeatedly) state obvious facts. The abuse (in almost
all cases) of x[mz]alloc_bytes() is, afaict, in no way attributed
to the resulting higher alignment, but rather in the desire to
get away easily without needing to think about using a type-safe
flavor. This said I will admit that prior to the introduction of
x[mz]alloc_flex_struct() I can see how alternatives could quickly
have got quite ugly. And for the few (if any) users which
actually care about this higher alignment, it should have been
noted at the time of introducing the use that the specific need
for certain alignment shouldn't be implied by using this function,
but rather be made explicit. This is even more so as it's not
written down anywhere that x[mz]alloc_bytes() guarantees a certain
alignment (i.e. if the plan wasn't anyway to phase out its use, it
should have been permissible to change the alignment it requests
from the underlying implementation without first auditing all
users).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:21:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:21:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111046.212251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX03M-0003nN-7I; Thu, 15 Apr 2021 11:20:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111046.212251; Thu, 15 Apr 2021 11: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 1lX03M-0003nG-4H; Thu, 15 Apr 2021 11:20:56 +0000
Received: by outflank-mailman (input) for mailman id 111046;
 Thu, 15 Apr 2021 11:20:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX03K-0003nB-1K
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:20:54 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 52b1f467-edde-4c3b-b15d-821d0e1f4e50;
 Thu, 15 Apr 2021 11:20:53 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3B549ABED;
 Thu, 15 Apr 2021 11:20: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: 52b1f467-edde-4c3b-b15d-821d0e1f4e50
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618485652; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nzWoeqZph8kYWDV1FOhOloCGqq61wyPO63k6a11U0no=;
	b=LlQiRsGdloWPSa90Olc439Dawmy/QspZqfFPIDPCd+Xi5FJLYvyeS/zK4DLrPV7HPo5erU
	F845cbk2/EAOkGPjvIVd4DMYs69AByg1bqSJ2gvw2PPY1W0fFBZmogn67Y60Q+FQhwh8nW
	Pbbwbl8cHHD1EVPE4waeeIJwcxGz9b0=
Subject: Re: [PATCH v2 1/2] x86: correct is_pv_domain() when !CONFIG_PV
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: <3bc868c1-1003-2f80-1617-d64a1e7441bc@suse.com>
 <9667345e-835e-7c55-8d6d-2774008b0017@suse.com>
 <YHgbE8Vxb67nYkuC@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ab7923af-ee8c-18f7-c2da-f29cf85191d7@suse.com>
Date: Thu, 15 Apr 2021 13:20:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHgbE8Vxb67nYkuC@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 12:53, Roger Pau Monné wrote:
> On Thu, Apr 15, 2021 at 11:34:55AM +0200, Jan Beulich wrote:
>> On x86, idle and other system domains are implicitly PV. While I
>> couldn't spot any cases where this is actively a problem, some cases
>> required quite close inspection to be certain there couldn't e.g. be
>> some ASSERT_UNREACHABLE() that would trigger in this case. Let's be on
>> the safe side and make sure these always have is_pv_domain() returning
>> true.
>>
>> For the build to still work, this requires a few adjustments elsewhere.
>> In particular is_pv_64bit_domain() now gains a CONFIG_PV dependency,
>> which means that is_pv_32bit_domain() || is_pv_64bit_domain() is no
>> longer guaranteed to be the same as is_pv_domain().
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> v2: Add comment.
> 
> Sorry for not replying earlier, I've been thinking about this because
> I don't really like this approach as I think it makes code harder to
> follow for two reasons, first is_pv_32bit_domain() ||
> is_pv_64bit_domain() != is_pv_domain(), which I could live with, and
> then also is_pv_64bit_domain() returning different values for system
> domains depending on whether CONFIG_PV is enabled.

Well, okay, I'll consider the patch rejected then, despite thinking
that it could save us from subtle issues down the road.

> Given that AFAICT this patch is not fixing any actively identified
> issue I would rather prefer to introduce is_system_domain and use it
> when appropriate?
> 
> I think that would be clearer long term, and avoid tying ourselves
> deeper into aliasing system domain with PV domains.

Of course, but it won't help until we've audited and (if needed)
amended all code using is_pv_*() or e.g. implying PV when !is_hvm_*().

Patch 2, while grouped with this one, is technically independent.
Therefore I'd still appreciate separate feedback there.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:29:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:29:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111052.212263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0C0-00047M-7I; Thu, 15 Apr 2021 11:29:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111052.212263; Thu, 15 Apr 2021 11: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 1lX0C0-00047F-49; Thu, 15 Apr 2021 11:29:52 +0000
Received: by outflank-mailman (input) for mailman id 111052;
 Thu, 15 Apr 2021 11:29:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX0By-00047A-Ny
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:29:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 19b47889-7762-4300-bab7-f0106133c823;
 Thu, 15 Apr 2021 11:29:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B960CAF21;
 Thu, 15 Apr 2021 11:29: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: 19b47889-7762-4300-bab7-f0106133c823
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618486188; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=aY1fFPLe38xV6UqK1llnCTUoM75VF5m0en74SE/ft70=;
	b=Wdi5W7Wm9lxTmMZfAIVANVFpNglpgkePIeoi0XN406TiQd5e7udjZav73kX9cDh+rDGd/v
	4f754izy+A0m5de2C46hzj2Q3EL0Z102Oh3dGHOl4kyTGW0tJGXkQypALEn/rZuN0LZDF6
	GpwcU9FaI/JN+10SMleKipOzPei6zvI=
Subject: Re: [PATCH] x86/vPMU: Extend vPMU support to version 5
From: Jan Beulich <jbeulich@suse.com>
To: Igor Druzhinin <igor.druzhinin@citrix.com>, andrew.cooper3@citrix.com,
 roger.pau@citrix.com, kevin.tian@intel.com, jun.nakajima@intel.com
Cc: wl@xen.org, xen-devel@lists.xenproject.org
References: <1618334701-8263-1-git-send-email-igor.druzhinin@citrix.com>
 <01a59c84-c9ed-f9ca-1316-c9fc36ecde30@suse.com>
Message-ID: <51316c95-f65c-565c-b8a9-3af52a4852e4@suse.com>
Date: Thu, 15 Apr 2021 13:29:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <01a59c84-c9ed-f9ca-1316-c9fc36ecde30@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 14.04.2021 14:28, Jan Beulich wrote:
> On 13.04.2021 19:25, Igor Druzhinin wrote:
>> Version 5 is backwards compatible with version 3. This allows to enable
>> vPMU on Ice Lake CPUs.
>>
>> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
> 
> Acked-by: Jan Beulich <jbeulich@suse.com>

Actually I've just noticed that I can't ack this, as the source file
is deemed part of VT-x. I wonder whether we should drop this, as it's
been quite a while since vPMU code was made HVM-independent.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:31:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:31:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111055.212275 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0D9-0004uT-Hj; Thu, 15 Apr 2021 11:31:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111055.212275; Thu, 15 Apr 2021 11:31: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 1lX0D9-0004uM-Ec; Thu, 15 Apr 2021 11:31:03 +0000
Received: by outflank-mailman (input) for mailman id 111055;
 Thu, 15 Apr 2021 11:31: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 1lX0D8-0004uG-Kw
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:31: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 1lX0D8-0006r5-BX; Thu, 15 Apr 2021 11:31:02 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX0D8-0007Za-12; Thu, 15 Apr 2021 11:31: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=MdOoZ0jwYpzuYjIP+Bv7AtLD0+9vCdfWXl3i12mQJJM=; b=lk00T2HvYmA4PaEq+ho/LHdOwR
	OHvv8NtkTP8yU+URmVQfAbQwMwRMIBndNoIYN57kv/T60DxjTPvUPNCUMvKsyoCc5wjyHPSx9UY8W
	Xud3BbGq+lfM8CF/ykuqWPoBDfeRfYRq9u9TvbddVkOxXt2a7w3VmqAsp+5Yo0M5bPAI=;
Subject: Re: [PATCH 11/11] Arm/optee: don't open-code xzalloc_flex_struct()
To: Jan Beulich <jbeulich@suse.com>
Cc: George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <a3fef3b0-c9f3-208e-3728-62ca9cff70ba@suse.com>
 <aad23304-c727-2921-59fe-ab3763f5da03@suse.com>
 <9f95c37b-dc4a-d2cf-01c1-98d2108fae88@xen.org>
 <1c9229ac-5491-313e-f053-bc5bee01c3de@suse.com>
 <7945a56e-337d-3c84-ecfd-2be759adda4a@xen.org>
 <3b0bd499-2f1a-904c-2383-c301cad2608d@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <13f51f91-b73d-2e40-ab62-d1b79598eefc@xen.org>
Date: Thu, 15 Apr 2021 12:31:00 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <3b0bd499-2f1a-904c-2383-c301cad2608d@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 15/04/2021 12:02, Jan Beulich wrote:
> On 15.04.2021 12:26, Julien Grall wrote:
>> Hi Jan,
>>
>> On 14/04/2021 08:03, Jan Beulich wrote:
>>> On 13.04.2021 20:19, Julien Grall wrote:
>>>> On 08/04/2021 13:23, Jan Beulich wrote:
>>>>> There is a difference in generated code: xzalloc_bytes() forces
>>>>> SMP_CACHE_BYTES alignment. I think we not only don't need this here, but
>>>>> actually don't want it.
>>>>
>>>> So I think moving to xmalloc_flex_struct() is a pretty good move. But I
>>>> am actually a bit confused with the argument used.
>>>>
>>>> Could you provide some details why you think forcing the array to be
>>>> aligned to the maximum cache line supported (128 bytes on Arm) is wrong?
>>>
>>> It is not "wrong" in that sense, but if this is intended it shouldn't
>>> be arranged via use of xmalloc_bytes().
>>
>> This is not very clear from the commit message (or even the cover
>> letter). How about:
>>
>> "
>> The current use xzalloc_bytes() in optee is nearly an open-coded version
>> of xzalloc_flex_struct() which was introduced after the driver was merged.
>>
>> The main difference is xzalloc_bytes() will also force the allocation to
>> be SMP_CACHE_BYTES aligned and therefore avoid sharing the cache line.
>>
>> While sharing the cache line can have an impact on the performance, this
>> is also true for most of the other users of  x*alloc_flex_struct(). So
>> if we want to prevent sharing a cache line, it should be part of
>> x*alloc_flex_struct().
>>
>> In this case, we don't need stricter alignment than what the allocator
>> does. So the call to xzalloc_bytes() is now replaced with a call
>> xzalloc_flex_Struct().
>> "
> 
> Well, okay, I've inserted a slightly edited version of this into
> the patch. But ...
> 
>> Ideally, we want the same sort of the commit message in the other patches.
> 
> ... I disagree here: In particular because of the recurring
> pattern, I dislike repeated overly verbose descriptions. I could
> perhaps see them as being not seen as overly verbose when looking
> at every commit on its own (like would happen when someone tries
> to do some archaeology later on), but in the context of such a
> series this is potentially harmful: If almost a dozen patches
> have almost the same sufficiently verbose description, possible
> differences may not be paid attention to.

There are two part to take into account:

1) Reviewer
2) Future reader

For reviewer, I agree that the information is redundant. Although, it is 
not like the cover letter (in this case) contain more information about 
the reasoning... ;)

However, such information is not redundant for a future reader. Patches 
in a series may be applied separately, in a different order, title 
mangled...

> 
> Plus, granted possibly controversial as well, I'm afraid I'm not
> happy to (repeatedly) state obvious facts.
I should probably remind you that what's obvious for you may not be for 
the other.

In particular, writing "I think we only don't need this here, but 
actually don't want it" is very unhelpful because it can be interpreted 
differently (my original answer is an example).

It doesn't cost much to write clear commit message. But it will cost a 
lot for the future reader (or even reviewer) to figure out the original 
intention.

> The abuse (in almost
> all cases) of x[mz]alloc_bytes() is, afaict, in no way attributed
> to the resulting higher alignment, but rather in the desire to
> get away easily without needing to think about using a type-safe
> flavor. This said I will admit that prior to the introduction of
> x[mz]alloc_flex_struct() I can see how alternatives could quickly
> have got quite ugly. And for the few (if any) users which
> actually care about this higher alignment, it should have been
> noted at the time of introducing the use that the specific need
> for certain alignment shouldn't be implied by using this function,
> but rather be made explicit. This is even more so as it's not
> written down anywhere that x[mz]alloc_bytes() guarantees a certain
> alignment (i.e. if the plan wasn't anyway to phase out its use, it
> should have been permissible to change the alignment it requests
> from the underlying implementation without first auditing all
> users).
I don't think it is really helpful to argue on whether the developper 
did it by lazyness/lack of helpers or else.

As I wrote, dropping xmalloc_bytes() is a good move. But we should 
documenting our reasoning rather than hoping that everyone know your 
"obvious facts".

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:50:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:50:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111062.212299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0W0-0006qu-7J; Thu, 15 Apr 2021 11:50:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111062.212299; Thu, 15 Apr 2021 11: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 1lX0W0-0006qn-42; Thu, 15 Apr 2021 11:50:32 +0000
Received: by outflank-mailman (input) for mailman id 111062;
 Thu, 15 Apr 2021 11:50: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 1lX0Vz-0006qH-5A
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:50: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 1lX0Vx-00079B-3y; Thu, 15 Apr 2021 11:50:29 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX0Vw-0001Fy-Rs; Thu, 15 Apr 2021 11:50: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=b23a0dhkmTntpY5sTLh/giodqpqTBLVfH1In9PFj6jY=; b=35jtKJNKAc4+pg/DJkJdRIK4OR
	bTOYCz4H/8cP+L1KnGn1wGSSGAcG27iYPEE0jCc/oDMQWWpOGgVNOy0hz0YV7IW0j3U6nRNs6h2mo
	xGyNIRsa7N5XqBZ8FrgtfHM1ForThI2DBJ70QIPpvVWJgK79ZXkKJmmsSlt6gaFQl5b0=;
Subject: Re: [PATCH v3 08/15] bunzip: replace INIT
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <9069acc9-7e86-a0c7-5ec9-e12d674bb834@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <280602b3-3bb4-f476-34c3-890b4a62248e@xen.org>
Date: Thu, 15 Apr 2021 12:50:26 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <9069acc9-7e86-a0c7-5ec9-e12d674bb834@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 26/01/2021 09:51, Jan Beulich wrote:
> While tools/libs/guest/xg_private.h has its own (non-conflicting for our
> purposes) __init, which hence needs to be #undef-ed, there's no other
> need for this abstraction.
> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

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

Cheers,

> ---
> v3: New.
> 
> --- a/xen/common/decompress.h
> +++ b/xen/common/decompress.h
> @@ -23,6 +23,10 @@
>   #define INIT
>   #define INITDATA
>   
> +#undef __init /* tools/libs/guest/xg_private.h has its own one */
> +#define __init
> +#define __initdata
> +
>   #define large_malloc malloc
>   #define large_free free
>   
> --- a/xen/common/bunzip2.c
> +++ b/xen/common/bunzip2.c
> @@ -104,7 +104,7 @@ struct bunzip_data {
>   
>   /* Return the next nnn bits of input.  All reads from the compressed input
>      are done through this function.  All reads are big endian */
> -static unsigned int INIT get_bits(struct bunzip_data *bd, char bits_wanted)
> +static unsigned int __init get_bits(struct bunzip_data *bd, char bits_wanted)
>   {
>   	unsigned int bits = 0;
>   
> @@ -144,7 +144,7 @@ static unsigned int INIT get_bits(struct
>   
>   /* Unpacks the next block and sets up for the inverse burrows-wheeler step. */
>   
> -static int INIT get_next_block(struct bunzip_data *bd)
> +static int __init get_next_block(struct bunzip_data *bd)
>   {
>   	struct group_data *hufGroup = NULL;
>   	int *base = NULL;
> @@ -509,7 +509,7 @@ got_huff_bits:
>      are ignored, data is written to out_fd and return is RETVAL_OK or error.
>   */
>   
> -static int INIT read_bunzip(struct bunzip_data *bd, unsigned char *outbuf, int len)
> +static int __init read_bunzip(struct bunzip_data *bd, unsigned char *outbuf, int len)
>   {
>   	const unsigned int *dbuf;
>   	int pos, xcurrent, previous, gotcount;
> @@ -607,7 +607,7 @@ decode_next_byte:
>   	goto decode_next_byte;
>   }
>   
> -static int INIT nofill(void *buf, unsigned int len)
> +static int __init nofill(void *buf, unsigned int len)
>   {
>   	return -1;
>   }
> @@ -615,8 +615,8 @@ static int INIT nofill(void *buf, unsign
>   /* Allocate the structure, read file header.  If in_fd ==-1, inbuf must contain
>      a complete bunzip file (len bytes long).  If in_fd!=-1, inbuf and len are
>      ignored, and data is read from file handle into temporary buffer. */
> -static int INIT start_bunzip(struct bunzip_data **bdp, void *inbuf, int len,
> -			     int (*fill)(void*, unsigned int))
> +static int __init start_bunzip(struct bunzip_data **bdp, void *inbuf, int len,
> +			       int (*fill)(void*, unsigned int))
>   {
>   	struct bunzip_data *bd;
>   	unsigned int i, j, c;
> @@ -665,11 +665,11 @@ static int INIT start_bunzip(struct bunz
>   
>   /* Example usage: decompress src_fd to dst_fd.  (Stops at end of bzip2 data,
>      not end of file.) */
> -int INIT bunzip2(unsigned char *buf, unsigned int len,
> -		 int(*fill)(void*, unsigned int),
> -		 int(*flush)(void*, unsigned int),
> -		 unsigned char *outbuf, unsigned int *pos,
> -		 void(*error)(const char *x))
> +int __init bunzip2(unsigned char *buf, unsigned int len,
> +		   int(*fill)(void*, unsigned int),
> +		   int(*flush)(void*, unsigned int),
> +		   unsigned char *outbuf, unsigned int *pos,
> +		   void(*error)(const char *x))
>   {
>   	struct bunzip_data *bd;
>   	int i = -1;
> 
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:50:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:50:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111061.212287 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0Vv-0006pH-0T; Thu, 15 Apr 2021 11:50:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111061.212287; Thu, 15 Apr 2021 11:50:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0Vu-0006pA-Rg; Thu, 15 Apr 2021 11:50:26 +0000
Received: by outflank-mailman (input) for mailman id 111061;
 Thu, 15 Apr 2021 11:50:25 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX0Vt-0006p5-GP
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:50:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 06ce98a9-32db-4bd0-af27-1988426c7628;
 Thu, 15 Apr 2021 11:50:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D4492AE20;
 Thu, 15 Apr 2021 11:50: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: 06ce98a9-32db-4bd0-af27-1988426c7628
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618487423; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0Lv3VaxOeFc4OKtSDkCOchgWnDe16hKDL40OiHVUNIg=;
	b=LAY/wsSH4FiUPzQ4Mo1fg3OH+kix7CZ1pdeZ+XavvdS8VgnCFeGlBQ5AtVjZMECucbq/30
	cX5cknpzarTdVzYWv0PuAH5s1Ux6CJobfxJUorvysYuFE/HqGjCFIGXT9Mq/VsQc0xTbd5
	DXuG82hEy88YIbSmQVWf74O9ooFpq74=
Subject: Re: [PATCH v5 1/2] x86/vtx: add LBR_SELECT to the list of LBR MSRs
To: Igor Druzhinin <igor.druzhinin@citrix.com>, xen-devel@lists.xenproject.org
Cc: jun.nakajima@intel.com, kevin.tian@intel.com, andrew.cooper3@citrix.com,
 roger.pau@citrix.com, wl@xen.org
References: <1618481062-16094-1-git-send-email-igor.druzhinin@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a5df57ae-1349-7d56-4431-91addcedd91a@suse.com>
Date: Thu, 15 Apr 2021 13:50:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <1618481062-16094-1-git-send-email-igor.druzhinin@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 12:04, Igor Druzhinin wrote:
> This MSR exists since Nehalem / Silvermont and is actively used by Linux,
> for instance, to improve sampling efficiency.
> 
> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>

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


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:51:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:51:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111067.212311 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0Wo-000709-Il; Thu, 15 Apr 2021 11:51:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111067.212311; Thu, 15 Apr 2021 11: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 1lX0Wo-000702-F7; Thu, 15 Apr 2021 11:51:22 +0000
Received: by outflank-mailman (input) for mailman id 111067;
 Thu, 15 Apr 2021 11:51: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 1lX0Wm-0006zq-PC
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:51: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 1lX0Wm-0007Bg-OR
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:51:20 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lX0Wm-0001LZ-IS
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:51:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:To:Subject;
	bh=49t4gg66rxXpVTVH70Dr+CDg8hlZIiBQiCLx/3tJU6M=; b=g2B8ScnrWGYsOkoHbhf5RujOQs
	UT3MCC7CqzHLawKhDGym8slaAOQFPwAh6/y91OYH7hpweyabEvLDZe66B9ClCfSZjKEfrJ9qKJo+2
	n1dVrrxUOiHmUcBw8/TqYYAe2DaH/jSOrGuPwy7QxVB2bmdopMmvKmYrfexKJi46i1RY=;
Subject: Re: [PATCH v3 09/15] unlzo: replace INIT
To: xen-devel@lists.xenproject.org
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <e9f80b21-dff6-d6f0-3e69-c42219a3aaa9@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <a1146d08-da82-649b-c24c-3091621b0a78@xen.org>
Date: Thu, 15 Apr 2021 12:51:19 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <e9f80b21-dff6-d6f0-3e69-c42219a3aaa9@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 26/01/2021 09:51, Jan Beulich wrote:
> There's no need for this abstraction.
> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

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

Cheers,

> ---
> v3: New.
> 
> --- a/xen/common/lzo.c
> +++ b/xen/common/lzo.c
> @@ -135,8 +135,8 @@
>    */
>   #define MAX_255_COUNT      ((((size_t)~0) / 255) - 2)
>   
> -int INIT lzo1x_decompress_safe(const unsigned char *in, size_t in_len,
> -                               unsigned char *out, size_t *out_len)
> +int __init lzo1x_decompress_safe(const unsigned char *in, size_t in_len,
> +                                 unsigned char *out, size_t *out_len)
>   {
>       unsigned char *op;
>       const unsigned char *ip;
> --- a/xen/common/unlzo.c
> +++ b/xen/common/unlzo.c
> @@ -57,7 +57,7 @@ static const unsigned char lzop_magic[]
>   #define HEADER_SIZE_MIN       (9 + 7     + 4 + 8     + 1       + 4)
>   #define HEADER_SIZE_MAX       (9 + 7 + 1 + 8 + 8 + 4 + 1 + 255 + 4)
>   
> -static int INIT parse_header(u8 *input, int *skip, int in_len)
> +static int __init parse_header(u8 *input, int *skip, int in_len)
>   {
>   	int l;
>   	u8 *parse = input;
> @@ -114,11 +114,11 @@ static int INIT parse_header(u8 *input,
>   	return 1;
>   }
>   
> -int INIT unlzo(unsigned char *input, unsigned int in_len,
> -	       int (*fill) (void *, unsigned int),
> -	       int (*flush) (void *, unsigned int),
> -	       unsigned char *output, unsigned int *posp,
> -	       void (*error) (const char *x))
> +int __init unlzo(unsigned char *input, unsigned int in_len,
> +		 int (*fill) (void *, unsigned int),
> +		 int (*flush) (void *, unsigned int),
> +		 unsigned char *output, unsigned int *posp,
> +		 void (*error) (const char *x))
>   {
>   	u8 r = 0;
>   	int skip = 0;
> 
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:52:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:52:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111070.212323 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0Xv-00078v-U2; Thu, 15 Apr 2021 11:52:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111070.212323; Thu, 15 Apr 2021 11:52: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 1lX0Xv-00078o-Pp; Thu, 15 Apr 2021 11:52:31 +0000
Received: by outflank-mailman (input) for mailman id 111070;
 Thu, 15 Apr 2021 11:52: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 1lX0Xv-00078R-Cb
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:52: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 1lX0Xt-0007Cp-MB; Thu, 15 Apr 2021 11:52:29 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX0Xt-0001Pg-GN; Thu, 15 Apr 2021 11:52: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=MfaNIzeEzsMkbYOee2F7qQu9gQ03I3wA+XCjlqPFb7Y=; b=AljS9ckfQARn400mXdG66N4cP3
	//vMFShviUbTxPTPL0V01e6aW/WVEvK8l1s1hLpSuFIq83lXn4MBe2GDjYPJ9GvJbvNgPW57/DpJi
	juAWVYW77W2oQVbLwxUcG05m4oOVuNhWb9tgugoK9/3OLroJsQXnZe3qB239KhGGVRkA=;
Subject: Re: [PATCH v3 10/15] unlzma: replace INIT
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <b955d146-d9dd-daa2-984b-c50d38c714d7@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <3f11195a-3494-7868-66b5-28ced9a389d8@xen.org>
Date: Thu, 15 Apr 2021 12:52:27 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <b955d146-d9dd-daa2-984b-c50d38c714d7@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 26/01/2021 09:51, Jan Beulich wrote:
> There's no need for this abstraction.
> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:56:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:56:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111081.212351 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0bl-0007Us-Li; Thu, 15 Apr 2021 11:56:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111081.212351; Thu, 15 Apr 2021 11:56: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 1lX0bl-0007Ul-Gu; Thu, 15 Apr 2021 11:56:29 +0000
Received: by outflank-mailman (input) for mailman id 111081;
 Thu, 15 Apr 2021 11:56: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 1lX0bk-0007Ug-4B
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:56: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 1lX0bi-0007Hj-Ai; Thu, 15 Apr 2021 11:56:26 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX0bi-0001u2-46; Thu, 15 Apr 2021 11:56: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=w3fgonEXH9ZOuMXV3DlyhlbO8TaCM4qIvMPXljsIut4=; b=iuanXKsTQlOgE79+F9p0TqkjD6
	wxikzkWe9EpfPtrPyCvWS6e+ydHnYmIGeYrSetEFSSeSP/SwElhmYEeeU5SypC8wX4p4Fzbg/ayH9
	hoTarh/AYfyPO6xnum+STYVEo0avTdV73Emuzam0eALsw+pBpdq8QE9yOKbAg3gTVprc=;
Subject: Re: [PATCH v3 11/15] unlz4: replace INIT
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <febeee3c-80f4-4568-9d27-4f243b11cce3@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <853dd045-cb19-0ab5-18d0-62a048a2de5c@xen.org>
Date: Thu, 15 Apr 2021 12:56:24 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <febeee3c-80f4-4568-9d27-4f243b11cce3@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 26/01/2021 09:52, Jan Beulich wrote:
> There's no need for this abstraction.
> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:58:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:58:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111084.212363 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0dn-0007dy-0k; Thu, 15 Apr 2021 11:58:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111084.212363; Thu, 15 Apr 2021 11: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 1lX0dm-0007dr-Ty; Thu, 15 Apr 2021 11:58:34 +0000
Received: by outflank-mailman (input) for mailman id 111084;
 Thu, 15 Apr 2021 11:58: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 1lX0dl-0007dm-0c
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:58: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 1lX0dj-0007JF-BW; Thu, 15 Apr 2021 11:58:31 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX0dj-00023S-3a; Thu, 15 Apr 2021 11:58:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=CqdkjC25UykkGQLczqtnl9eBgTTm5LetzIlumNnw4LI=; b=dv8prgrtF3NtAkgCYU1TPfkXZU
	u6GSOQoW5TjMLkgt6QHV7hVDrpY/2eFHIqO7H6cfFeCI8wVorSjFUBGDVr/eROdnrs6jesVvCMUFl
	r+R/Zkr9VYrF1Dvj/T6Gywc5d1gbi5J78oC71OVJuXzOEkUBUSF4Ef6uHTazzo9BjRIE=;
Subject: Re: [PATCH v3 12/15] unxz: replace INIT{,DATA} and STATIC
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <4e0a0db2-db34-a738-2f5e-1d5cd2c37e19@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <c52c9670-d87e-79f9-0104-e6e074419c31@xen.org>
Date: Thu, 15 Apr 2021 12:58:29 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <4e0a0db2-db34-a738-2f5e-1d5cd2c37e19@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 26/01/2021 09:52, Jan Beulich wrote:
> With xen/common/decompress.h now agreeing in both build modes about
> what STATIC expands to, there's no need for this abstraction anymore.
> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v3: New.
> 
> --- a/xen/common/decompress.h
> +++ b/xen/common/decompress.h
> @@ -9,7 +9,6 @@
>   
>   #define STATIC static
>   #define INIT __init
> -#define INITDATA __initdata
>   
>   #define malloc xmalloc_bytes
>   #define free xfree
> @@ -21,7 +20,6 @@
>   
>   #define STATIC static
>   #define INIT
> -#define INITDATA

Shouldn't the two changes be part of patch #14?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 11:59:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 11:59:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111090.212375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0f2-0007mI-Fo; Thu, 15 Apr 2021 11:59:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111090.212375; Thu, 15 Apr 2021 11:59: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 1lX0f2-0007mB-CJ; Thu, 15 Apr 2021 11:59:52 +0000
Received: by outflank-mailman (input) for mailman id 111090;
 Thu, 15 Apr 2021 11:59: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 1lX0f1-0007m6-3q
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 11:59: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 1lX0ez-0007Ka-5k; Thu, 15 Apr 2021 11:59:49 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX0ey-00027t-IS; Thu, 15 Apr 2021 11:59: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=qikvwjDaWZPMjLIsf/lGdnzuUl/YRS5fKFfVpZHvCcg=; b=Vo9xDzRvGvvqVvCFR3JoGkSw3d
	L3s8TeqSYIQ1AhgieAMmcSTpTRSCyw62p86CQPMrd5nbd0NUheGd0p8H4WGNRhCyfye0aS4tPCwd9
	TNO5st2I/nS7rrdJVLssJx+q+sa6/CxuBf//nZhfV/H3pKklDVW4J+SUjAYtGVWxGGcs=;
Subject: Re: [PATCH v3 13/15] unzstd: replace INIT{,DATA} and STATIC
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <19f12930-df0e-5a00-9e5e-53edffcf51d7@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <467ed62e-e5c3-0a08-b9a7-5b4e913b3c90@xen.org>
Date: Thu, 15 Apr 2021 12:59:46 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <19f12930-df0e-5a00-9e5e-53edffcf51d7@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 26/01/2021 09:52, Jan Beulich wrote:
> With xen/common/decompress.h now agreeing in both build modes about
> what STATIC expands to, there's no need for this abstraction anymore.

Shouldn't you also mention "INIT" and "INITDATA" here?

Cheers,

> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v3: New.
> 
> --- a/xen/common/unzstd.c
> +++ b/xen/common/unzstd.c
> @@ -71,7 +71,7 @@
>    */
>   #define ZSTD_IOBUF_SIZE		(1 << 17)
>   
> -static int INIT handle_zstd_error(size_t ret, void (*error)(const char *x))
> +static int __init handle_zstd_error(size_t ret, void (*error)(const char *x))
>   {
>   	const int err = ZSTD_getErrorCode(ret);
>   
> @@ -102,9 +102,9 @@ static int INIT handle_zstd_error(size_t
>    * We can allocate less memory (no circular buffer for the sliding window),
>    * and avoid some memcpy() calls.
>    */
> -static int INIT decompress_single(const u8 *in_buf, long in_len, u8 *out_buf,
> -				  long out_len, unsigned int *in_pos,
> -				  void (*error)(const char *x))
> +static int __init decompress_single(const u8 *in_buf, long in_len, u8 *out_buf,
> +				    long out_len, unsigned int *in_pos,
> +				    void (*error)(const char *x))
>   {
>   	const size_t wksp_size = ZSTD_DCtxWorkspaceBound();
>   	void *wksp = large_malloc(wksp_size);
> @@ -142,11 +142,11 @@ out:
>   	return err;
>   }
>   
> -int INIT unzstd(unsigned char *in_buf, unsigned int in_len,
> -	        int (*fill)(void*, unsigned int),
> -	        int (*flush)(void*, unsigned int),
> -	        unsigned char *out_buf, unsigned int *in_pos,
> -	        void (*error)(const char *x))
> +int __init unzstd(unsigned char *in_buf, unsigned int in_len,
> +		  int (*fill)(void*, unsigned int),
> +		  int (*flush)(void*, unsigned int),
> +		  unsigned char *out_buf, unsigned int *in_pos,
> +		  void (*error)(const char *x))
>   {
>   	ZSTD_inBuffer in;
>   	ZSTD_outBuffer out;
> --- a/xen/common/zstd/decompress.c
> +++ b/xen/common/zstd/decompress.c
> @@ -46,7 +46,7 @@
>   /*_*******************************************************
>   *  Memory operations
>   **********************************************************/
> -static void INIT ZSTD_copy4(void *dst, const void *src) { memcpy(dst, src, 4); }
> +static void __init ZSTD_copy4(void *dst, const void *src) { memcpy(dst, src, 4); }
>   
>   /*-*************************************************************
>   *   Context management
> @@ -98,12 +98,12 @@ struct ZSTD_DCtx_s {
>   	BYTE headerBuffer[ZSTD_FRAMEHEADERSIZE_MAX];
>   }; /* typedef'd to ZSTD_DCtx within "zstd.h" */
>   
> -STATIC size_t INIT ZSTD_DCtxWorkspaceBound(void)
> +static size_t __init ZSTD_DCtxWorkspaceBound(void)
>   {
>   	return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DCtx));
>   }
>   
> -STATIC size_t INIT ZSTD_decompressBegin(ZSTD_DCtx *dctx)
> +static size_t __init ZSTD_decompressBegin(ZSTD_DCtx *dctx)
>   {
>   	dctx->expected = ZSTD_frameHeaderSize_prefix;
>   	dctx->stage = ZSTDds_getFrameHeaderSize;
> @@ -123,7 +123,7 @@ STATIC size_t INIT ZSTD_decompressBegin(
>   	return 0;
>   }
>   
> -STATIC ZSTD_DCtx *INIT ZSTD_createDCtx_advanced(ZSTD_customMem customMem)
> +static ZSTD_DCtx *__init ZSTD_createDCtx_advanced(ZSTD_customMem customMem)
>   {
>   	ZSTD_DCtx *dctx;
>   
> @@ -138,13 +138,13 @@ STATIC ZSTD_DCtx *INIT ZSTD_createDCtx_a
>   	return dctx;
>   }
>   
> -STATIC ZSTD_DCtx *INIT ZSTD_initDCtx(void *workspace, size_t workspaceSize)
> +static ZSTD_DCtx *__init ZSTD_initDCtx(void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
>   	return ZSTD_createDCtx_advanced(stackMem);
>   }
>   
> -size_t INIT ZSTD_freeDCtx(ZSTD_DCtx *dctx)
> +size_t __init ZSTD_freeDCtx(ZSTD_DCtx *dctx)
>   {
>   	if (dctx == NULL)
>   		return 0; /* support free on NULL */
> @@ -153,15 +153,15 @@ size_t INIT ZSTD_freeDCtx(ZSTD_DCtx *dct
>   }
>   
>   #ifdef BUILD_DEAD_CODE
> -void INIT ZSTD_copyDCtx(ZSTD_DCtx *dstDCtx, const ZSTD_DCtx *srcDCtx)
> +void __init ZSTD_copyDCtx(ZSTD_DCtx *dstDCtx, const ZSTD_DCtx *srcDCtx)
>   {
>   	size_t const workSpaceSize = (ZSTD_BLOCKSIZE_ABSOLUTEMAX + WILDCOPY_OVERLENGTH) + ZSTD_frameHeaderSize_max;
>   	memcpy(dstDCtx, srcDCtx, sizeof(ZSTD_DCtx) - workSpaceSize); /* no need to copy workspace */
>   }
>   #endif
>   
> -STATIC size_t ZSTD_findFrameCompressedSize(const void *src, size_t srcSize);
> -STATIC size_t ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict,
> +static size_t ZSTD_findFrameCompressedSize(const void *src, size_t srcSize);
> +static size_t ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict,
>   	size_t dictSize);
>   
>   static void ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict);
> @@ -176,7 +176,7 @@ static void ZSTD_refDDict(ZSTD_DCtx *dst
>    *  Note : Frame Identifier is 4 bytes. If `size < 4`, @return will always be 0.
>    *  Note 2 : Legacy Frame Identifiers are considered valid only if Legacy Support is enabled.
>    *  Note 3 : Skippable Frame Identifiers are considered valid. */
> -unsigned INIT ZSTD_isFrame(const void *buffer, size_t size)
> +unsigned __init ZSTD_isFrame(const void *buffer, size_t size)
>   {
>   	if (size < 4)
>   		return 0;
> @@ -194,7 +194,7 @@ unsigned INIT ZSTD_isFrame(const void *b
>   /** ZSTD_frameHeaderSize() :
>   *   srcSize must be >= ZSTD_frameHeaderSize_prefix.
>   *   @return : size of the Frame Header */
> -static size_t INIT ZSTD_frameHeaderSize(const void *src, size_t srcSize)
> +static size_t __init ZSTD_frameHeaderSize(const void *src, size_t srcSize)
>   {
>   	if (srcSize < ZSTD_frameHeaderSize_prefix)
>   		return ERROR(srcSize_wrong);
> @@ -212,7 +212,7 @@ static size_t INIT ZSTD_frameHeaderSize(
>   *   @return : 0, `fparamsPtr` is correctly filled,
>   *            >0, `srcSize` is too small, result is expected `srcSize`,
>   *             or an error code, which can be tested using ZSTD_isError() */
> -STATIC size_t INIT ZSTD_getFrameParams(ZSTD_frameParams *fparamsPtr, const void *src, size_t srcSize)
> +static size_t __init ZSTD_getFrameParams(ZSTD_frameParams *fparamsPtr, const void *src, size_t srcSize)
>   {
>   	const BYTE *ip = (const BYTE *)src;
>   
> @@ -303,7 +303,7 @@ STATIC size_t INIT ZSTD_getFrameParams(Z
>   *   @return : decompressed size of the single frame pointed to be `src` if known, otherwise
>   *             - ZSTD_CONTENTSIZE_UNKNOWN if the size cannot be determined
>   *             - ZSTD_CONTENTSIZE_ERROR if an error occurred (e.g. invalid magic number, srcSize too small) */
> -unsigned long long INIT ZSTD_getFrameContentSize(const void *src, size_t srcSize)
> +unsigned long long __init ZSTD_getFrameContentSize(const void *src, size_t srcSize)
>   {
>   	{
>   		ZSTD_frameParams fParams;
> @@ -325,7 +325,7 @@ unsigned long long INIT ZSTD_getFrameCon
>    *  `srcSize` must be the exact length of some number of ZSTD compressed and/or
>    *      skippable frames
>    *  @return : decompressed size of the frames contained */
> -unsigned long long INIT ZSTD_findDecompressedSize(const void *src, size_t srcSize)
> +unsigned long long __init ZSTD_findDecompressedSize(const void *src, size_t srcSize)
>   {
>   	{
>   		unsigned long long totalDstSize = 0;
> @@ -379,7 +379,7 @@ unsigned long long INIT ZSTD_findDecompr
>   /** ZSTD_decodeFrameHeader() :
>   *   `headerSize` must be the size provided by ZSTD_frameHeaderSize().
>   *   @return : 0 if success, or an error code, which can be tested using ZSTD_isError() */
> -static size_t INIT ZSTD_decodeFrameHeader(ZSTD_DCtx *dctx, const void *src, size_t headerSize)
> +static size_t __init ZSTD_decodeFrameHeader(ZSTD_DCtx *dctx, const void *src, size_t headerSize)
>   {
>   	size_t const result = ZSTD_getFrameParams(&(dctx->fParams), src, headerSize);
>   	if (ZSTD_isError(result))
> @@ -401,7 +401,7 @@ typedef struct {
>   
>   /*! ZSTD_getcBlockSize() :
>   *   Provides the size of compressed block from block header `src` */
> -STATIC size_t INIT ZSTD_getcBlockSize(const void *src, size_t srcSize, blockProperties_t *bpPtr)
> +static size_t __init ZSTD_getcBlockSize(const void *src, size_t srcSize, blockProperties_t *bpPtr)
>   {
>   	if (srcSize < ZSTD_blockHeaderSize)
>   		return ERROR(srcSize_wrong);
> @@ -419,7 +419,7 @@ STATIC size_t INIT ZSTD_getcBlockSize(co
>   	}
>   }
>   
> -static size_t INIT ZSTD_copyRawBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +static size_t __init ZSTD_copyRawBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	if (srcSize > dstCapacity)
>   		return ERROR(dstSize_tooSmall);
> @@ -427,7 +427,7 @@ static size_t INIT ZSTD_copyRawBlock(voi
>   	return srcSize;
>   }
>   
> -static size_t INIT ZSTD_setRleBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize, size_t regenSize)
> +static size_t __init ZSTD_setRleBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize, size_t regenSize)
>   {
>   	if (srcSize != 1)
>   		return ERROR(srcSize_wrong);
> @@ -439,7 +439,7 @@ static size_t INIT ZSTD_setRleBlock(void
>   
>   /*! ZSTD_decodeLiteralsBlock() :
>   	@return : nb of bytes read from src (< srcSize ) */
> -STATIC size_t INIT ZSTD_decodeLiteralsBlock(ZSTD_DCtx *dctx, const void *src, size_t srcSize) /* note : srcSize < BLOCKSIZE */
> +static size_t __init ZSTD_decodeLiteralsBlock(ZSTD_DCtx *dctx, const void *src, size_t srcSize) /* note : srcSize < BLOCKSIZE */
>   {
>   	if (srcSize < MIN_CBLOCK_SIZE)
>   		return ERROR(corruption_detected);
> @@ -759,10 +759,10 @@ static const FSE_decode_t4 OF_defaultDTa
>   	@return : nb bytes read from src,
>   			  or an error code if it fails, testable with ZSTD_isError()
>   */
> -static size_t INIT ZSTD_buildSeqTable(FSE_DTable *DTableSpace, const FSE_DTable **DTablePtr,
> -				      symbolEncodingType_e type, U32 max, U32 maxLog, const void *src,
> -				      size_t srcSize, const FSE_decode_t4 *defaultTable,
> -				      U32 flagRepeatTable, void *workspace, size_t workspaceSize)
> +static size_t __init ZSTD_buildSeqTable(FSE_DTable *DTableSpace, const FSE_DTable **DTablePtr,
> +					symbolEncodingType_e type, U32 max, U32 maxLog, const void *src,
> +					size_t srcSize, const FSE_decode_t4 *defaultTable,
> +					U32 flagRepeatTable, void *workspace, size_t workspaceSize)
>   {
>   	const void *const tmpPtr = defaultTable; /* bypass strict aliasing */
>   	switch (type) {
> @@ -803,7 +803,7 @@ static size_t INIT ZSTD_buildSeqTable(FS
>   	}
>   }
>   
> -STATIC size_t INIT ZSTD_decodeSeqHeaders(ZSTD_DCtx *dctx, int *nbSeqPtr, const void *src, size_t srcSize)
> +static size_t __init ZSTD_decodeSeqHeaders(ZSTD_DCtx *dctx, int *nbSeqPtr, const void *src, size_t srcSize)
>   {
>   	const BYTE *const istart = (const BYTE *const)src;
>   	const BYTE *const iend = istart + srcSize;
> @@ -940,7 +940,7 @@ size_t ZSTD_execSequenceLast7(BYTE *op,
>   	return sequenceLength;
>   }
>   
> -static seq_t INIT ZSTD_decodeSequence(seqState_t *seqState)
> +static seq_t __init ZSTD_decodeSequence(seqState_t *seqState)
>   {
>   	seq_t seq;
>   
> @@ -1102,7 +1102,7 @@ size_t ZSTD_execSequence(BYTE *op, BYTE
>   	return sequenceLength;
>   }
>   
> -static size_t INIT ZSTD_decompressSequences(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
> +static size_t __init ZSTD_decompressSequences(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
>   {
>   	const BYTE *ip = (const BYTE *)seqStart;
>   	const BYTE *const iend = ip + seqSize;
> @@ -1262,7 +1262,7 @@ FORCE_INLINE seq_t ZSTD_decodeSequenceLo
>   	return seq;
>   }
>   
> -static seq_t INIT ZSTD_decodeSequenceLong(seqState_t *seqState, unsigned const windowSize)
> +static seq_t __init ZSTD_decodeSequenceLong(seqState_t *seqState, unsigned const windowSize)
>   {
>   	if (ZSTD_highbit32(windowSize) > STREAM_ACCUMULATOR_MIN) {
>   		return ZSTD_decodeSequenceLong_generic(seqState, 1);
> @@ -1272,9 +1272,9 @@ static seq_t INIT ZSTD_decodeSequenceLon
>   }
>   
>   FORCE_INLINE
> -size_t INIT ZSTD_execSequenceLong(BYTE *op, BYTE *const oend, seq_t sequence, const BYTE **litPtr,
> -				  const BYTE *const litLimit, const BYTE *const base,
> -				  const BYTE *const vBase, const BYTE *const dictEnd)
> +size_t __init ZSTD_execSequenceLong(BYTE *op, BYTE *const oend, seq_t sequence, const BYTE **litPtr,
> +				    const BYTE *const litLimit, const BYTE *const base,
> +				    const BYTE *const vBase, const BYTE *const dictEnd)
>   {
>   	BYTE *const oLitEnd = op + sequence.litLength;
>   	size_t const sequenceLength = sequence.litLength + sequence.matchLength;
> @@ -1358,7 +1358,7 @@ size_t INIT ZSTD_execSequenceLong(BYTE *
>   	return sequenceLength;
>   }
>   
> -static size_t INIT ZSTD_decompressSequencesLong(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
> +static size_t __init ZSTD_decompressSequencesLong(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
>   {
>   	const BYTE *ip = (const BYTE *)seqStart;
>   	const BYTE *const iend = ip + seqSize;
> @@ -1455,7 +1455,7 @@ static size_t INIT ZSTD_decompressSequen
>   	return op - ostart;
>   }
>   
> -static size_t INIT ZSTD_decompressBlock_internal(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +static size_t __init ZSTD_decompressBlock_internal(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   { /* blockType == blockCompressed */
>   	const BYTE *ip = (const BYTE *)src;
>   
> @@ -1479,7 +1479,7 @@ static size_t INIT ZSTD_decompressBlock_
>   	return ZSTD_decompressSequences(dctx, dst, dstCapacity, ip, srcSize);
>   }
>   
> -static void INIT ZSTD_checkContinuity(ZSTD_DCtx *dctx, const void *dst)
> +static void __init ZSTD_checkContinuity(ZSTD_DCtx *dctx, const void *dst)
>   {
>   	if (dst != dctx->previousDstEnd) { /* not contiguous */
>   		dctx->dictEnd = dctx->previousDstEnd;
> @@ -1490,7 +1490,7 @@ static void INIT ZSTD_checkContinuity(ZS
>   }
>   
>   #ifdef BUILD_DEAD_CODE
> -size_t INIT ZSTD_decompressBlock(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +size_t __init ZSTD_decompressBlock(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	size_t dSize;
>   	ZSTD_checkContinuity(dctx, dst);
> @@ -1501,7 +1501,7 @@ size_t INIT ZSTD_decompressBlock(ZSTD_DC
>   
>   /** ZSTD_insertBlock() :
>   	insert `src` block into `dctx` history. Useful to track uncompressed blocks. */
> -size_t INIT ZSTD_insertBlock(ZSTD_DCtx *dctx, const void *blockStart, size_t blockSize)
> +size_t __init ZSTD_insertBlock(ZSTD_DCtx *dctx, const void *blockStart, size_t blockSize)
>   {
>   	ZSTD_checkContinuity(dctx, blockStart);
>   	dctx->previousDstEnd = (const char *)blockStart + blockSize;
> @@ -1509,7 +1509,7 @@ size_t INIT ZSTD_insertBlock(ZSTD_DCtx *
>   }
>   #endif /* BUILD_DEAD_CODE */
>   
> -STATIC size_t INIT ZSTD_generateNxBytes(void *dst, size_t dstCapacity, BYTE byte, size_t length)
> +static size_t __init ZSTD_generateNxBytes(void *dst, size_t dstCapacity, BYTE byte, size_t length)
>   {
>   	if (length > dstCapacity)
>   		return ERROR(dstSize_tooSmall);
> @@ -1522,7 +1522,7 @@ STATIC size_t INIT ZSTD_generateNxBytes(
>    *  `src` must point to the start of a ZSTD frame, ZSTD legacy frame, or skippable frame
>    *  `srcSize` must be at least as large as the frame contained
>    *  @return : the compressed size of the frame starting at `src` */
> -STATIC size_t INIT ZSTD_findFrameCompressedSize(const void *src, size_t srcSize)
> +static size_t __init ZSTD_findFrameCompressedSize(const void *src, size_t srcSize)
>   {
>   	if (srcSize >= ZSTD_skippableHeaderSize && (ZSTD_readLE32(src) & 0xFFFFFFF0U) == ZSTD_MAGIC_SKIPPABLE_START) {
>   		return ZSTD_skippableHeaderSize + ZSTD_readLE32((const BYTE *)src + 4);
> @@ -1578,7 +1578,7 @@ STATIC size_t INIT ZSTD_findFrameCompres
>   
>   /*! ZSTD_decompressFrame() :
>   *   @dctx must be properly initialized */
> -static size_t INIT ZSTD_decompressFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void **srcPtr, size_t *srcSizePtr)
> +static size_t __init ZSTD_decompressFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void **srcPtr, size_t *srcSizePtr)
>   {
>   	const BYTE *ip = (const BYTE *)(*srcPtr);
>   	BYTE *const ostart = (BYTE * const)dst;
> @@ -1655,7 +1655,7 @@ static size_t INIT ZSTD_decompressFrame(
>   static const void *ZSTD_DDictDictContent(const ZSTD_DDict *ddict);
>   static size_t ZSTD_DDictDictSize(const ZSTD_DDict *ddict);
>   
> -static size_t INIT ZSTD_decompressMultiFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize,
> +static size_t __init ZSTD_decompressMultiFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize,
>   					const ZSTD_DDict *ddict)
>   {
>   	void *const dststart = dst;
> @@ -1719,12 +1719,12 @@ static size_t INIT ZSTD_decompressMultiF
>   	return (BYTE *)dst - (BYTE *)dststart;
>   }
>   
> -STATIC size_t INIT ZSTD_decompress_usingDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize)
> +static size_t __init ZSTD_decompress_usingDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize)
>   {
>   	return ZSTD_decompressMultiFrame(dctx, dst, dstCapacity, src, srcSize, dict, dictSize, NULL);
>   }
>   
> -STATIC size_t INIT ZSTD_decompressDCtx(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +static size_t __init ZSTD_decompressDCtx(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	return ZSTD_decompress_usingDict(dctx, dst, dstCapacity, src, srcSize, NULL, 0);
>   }
> @@ -1733,12 +1733,12 @@ STATIC size_t INIT ZSTD_decompressDCtx(Z
>   *   Advanced Streaming Decompression API
>   *   Bufferless and synchronous
>   ****************************************/
> -STATIC size_t INIT ZSTD_nextSrcSizeToDecompress(ZSTD_DCtx *dctx)
> +static size_t __init ZSTD_nextSrcSizeToDecompress(ZSTD_DCtx *dctx)
>   {
>   	return dctx->expected;
>   }
>   
> -STATIC ZSTD_nextInputType_e INIT ZSTD_nextInputType(ZSTD_DCtx *dctx)
> +static ZSTD_nextInputType_e __init ZSTD_nextInputType(ZSTD_DCtx *dctx)
>   {
>   	switch (dctx->stage) {
>   	default: /* should not happen */
> @@ -1753,12 +1753,12 @@ STATIC ZSTD_nextInputType_e INIT ZSTD_ne
>   	}
>   }
>   
> -int INIT ZSTD_isSkipFrame(ZSTD_DCtx *dctx) { return dctx->stage == ZSTDds_skipFrame; } /* for zbuff */
> +int __init ZSTD_isSkipFrame(ZSTD_DCtx *dctx) { return dctx->stage == ZSTDds_skipFrame; } /* for zbuff */
>   
>   /** ZSTD_decompressContinue() :
>   *   @return : nb of bytes generated into `dst` (necessarily <= `dstCapacity)
>   *             or an error code, which can be tested using ZSTD_isError() */
> -STATIC size_t INIT ZSTD_decompressContinue(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +static size_t __init ZSTD_decompressContinue(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	/* Sanity check */
>   	if (srcSize != dctx->expected)
> @@ -1877,7 +1877,7 @@ STATIC size_t INIT ZSTD_decompressContin
>   	}
>   }
>   
> -static size_t INIT ZSTD_refDictContent(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
> +static size_t __init ZSTD_refDictContent(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
>   {
>   	dctx->dictEnd = dctx->previousDstEnd;
>   	dctx->vBase = (const char *)dict - ((const char *)(dctx->previousDstEnd) - (const char *)(dctx->base));
> @@ -1889,7 +1889,7 @@ static size_t INIT ZSTD_refDictContent(Z
>   /* ZSTD_loadEntropy() :
>    * dict : must point at beginning of a valid zstd dictionary
>    * @return : size of entropy tables read */
> -static size_t INIT ZSTD_loadEntropy(ZSTD_entropyTables_t *entropy, const void *const dict, size_t const dictSize)
> +static size_t __init ZSTD_loadEntropy(ZSTD_entropyTables_t *entropy, const void *const dict, size_t const dictSize)
>   {
>   	const BYTE *dictPtr = (const BYTE *)dict;
>   	const BYTE *const dictEnd = dictPtr + dictSize;
> @@ -1958,7 +1958,7 @@ static size_t INIT ZSTD_loadEntropy(ZSTD
>   	return dictPtr - (const BYTE *)dict;
>   }
>   
> -static size_t INIT ZSTD_decompress_insertDictionary(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
> +static size_t __init ZSTD_decompress_insertDictionary(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
>   {
>   	if (dictSize < 8)
>   		return ZSTD_refDictContent(dctx, dict, dictSize);
> @@ -1984,7 +1984,7 @@ static size_t INIT ZSTD_decompress_inser
>   	return ZSTD_refDictContent(dctx, dict, dictSize);
>   }
>   
> -STATIC size_t INIT ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
> +static size_t __init ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
>   {
>   	CHECK_F(ZSTD_decompressBegin(dctx));
>   	if (dict && dictSize)
> @@ -2005,14 +2005,14 @@ struct ZSTD_DDict_s {
>   }; /* typedef'd to ZSTD_DDict within "zstd.h" */
>   
>   #ifdef BUILD_DEAD_CODE
> -size_t INIT ZSTD_DDictWorkspaceBound(void) { return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DDict)); }
> +size_t __init ZSTD_DDictWorkspaceBound(void) { return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DDict)); }
>   #endif
>   
> -static const void *INIT ZSTD_DDictDictContent(const ZSTD_DDict *ddict) { return ddict->dictContent; }
> +static const void *__init ZSTD_DDictDictContent(const ZSTD_DDict *ddict) { return ddict->dictContent; }
>   
> -static size_t INIT ZSTD_DDictDictSize(const ZSTD_DDict *ddict) { return ddict->dictSize; }
> +static size_t __init ZSTD_DDictDictSize(const ZSTD_DDict *ddict) { return ddict->dictSize; }
>   
> -static void INIT ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict)
> +static void __init ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict)
>   {
>   	ZSTD_decompressBegin(dstDCtx); /* init */
>   	if (ddict) {		       /* support refDDict on NULL */
> @@ -2039,7 +2039,7 @@ static void INIT ZSTD_refDDict(ZSTD_DCtx
>   }
>   
>   #ifdef BUILD_DEAD_CODE
> -static size_t INIT ZSTD_loadEntropy_inDDict(ZSTD_DDict *ddict)
> +static size_t __init ZSTD_loadEntropy_inDDict(ZSTD_DDict *ddict)
>   {
>   	ddict->dictID = 0;
>   	ddict->entropyPresent = 0;
> @@ -2058,7 +2058,7 @@ static size_t INIT ZSTD_loadEntropy_inDD
>   	return 0;
>   }
>   
> -static ZSTD_DDict *INIT ZSTD_createDDict_advanced(const void *dict, size_t dictSize, unsigned byReference, ZSTD_customMem customMem)
> +static ZSTD_DDict *__init ZSTD_createDDict_advanced(const void *dict, size_t dictSize, unsigned byReference, ZSTD_customMem customMem)
>   {
>   	if (!customMem.customAlloc || !customMem.customFree)
>   		return NULL;
> @@ -2101,14 +2101,14 @@ static ZSTD_DDict *INIT ZSTD_createDDict
>   *   Create a digested dictionary, to start decompression without startup delay.
>   *   `dict` content is copied inside DDict.
>   *   Consequently, `dict` can be released after `ZSTD_DDict` creation */
> -ZSTD_DDict *INIT ZSTD_initDDict(const void *dict, size_t dictSize, void *workspace, size_t workspaceSize)
> +ZSTD_DDict *__init ZSTD_initDDict(const void *dict, size_t dictSize, void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
>   	return ZSTD_createDDict_advanced(dict, dictSize, 1, stackMem);
>   }
>   #endif /* BUILD_DEAD_CODE */
>   
> -size_t INIT ZSTD_freeDDict(ZSTD_DDict *ddict)
> +size_t __init ZSTD_freeDDict(ZSTD_DDict *ddict)
>   {
>   	if (ddict == NULL)
>   		return 0; /* support free on NULL */
> @@ -2125,7 +2125,7 @@ size_t INIT ZSTD_freeDDict(ZSTD_DDict *d
>    *  Provides the dictID stored within dictionary.
>    *  if @return == 0, the dictionary is not conformant with Zstandard specification.
>    *  It can still be loaded, but as a content-only dictionary. */
> -unsigned INIT ZSTD_getDictID_fromDict(const void *dict, size_t dictSize)
> +unsigned __init ZSTD_getDictID_fromDict(const void *dict, size_t dictSize)
>   {
>   	if (dictSize < 8)
>   		return 0;
> @@ -2138,7 +2138,7 @@ unsigned INIT ZSTD_getDictID_fromDict(co
>    *  Provides the dictID of the dictionary loaded into `ddict`.
>    *  If @return == 0, the dictionary is not conformant to Zstandard specification, or empty.
>    *  Non-conformant dictionaries can still be loaded, but as content-only dictionaries. */
> -unsigned INIT ZSTD_getDictID_fromDDict(const ZSTD_DDict *ddict)
> +unsigned __init ZSTD_getDictID_fromDDict(const ZSTD_DDict *ddict)
>   {
>   	if (ddict == NULL)
>   		return 0;
> @@ -2155,7 +2155,7 @@ unsigned INIT ZSTD_getDictID_fromDDict(c
>    *  - `srcSize` is too small, and as a result, the frame header could not be decoded (only possible if `srcSize < ZSTD_FRAMEHEADERSIZE_MAX`).
>    *  - This is not a Zstandard frame.
>    *  When identifying the exact failure cause, it's possible to used ZSTD_getFrameParams(), which will provide a more precise error code. */
> -unsigned INIT ZSTD_getDictID_fromFrame(const void *src, size_t srcSize)
> +unsigned __init ZSTD_getDictID_fromFrame(const void *src, size_t srcSize)
>   {
>   	ZSTD_frameParams zfp = {0, 0, 0, 0};
>   	size_t const hError = ZSTD_getFrameParams(&zfp, src, srcSize);
> @@ -2168,7 +2168,7 @@ unsigned INIT ZSTD_getDictID_fromFrame(c
>   /*! ZSTD_decompress_usingDDict() :
>   *   Decompression using a pre-digested Dictionary
>   *   Use dictionary without significant overhead. */
> -STATIC size_t INIT ZSTD_decompress_usingDDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const ZSTD_DDict *ddict)
> +static size_t __init ZSTD_decompress_usingDDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const ZSTD_DDict *ddict)
>   {
>   	/* pass content and size in case legacy frames are encountered */
>   	return ZSTD_decompressMultiFrame(dctx, dst, dstCapacity, src, srcSize, NULL, 0, ddict);
> @@ -2205,7 +2205,7 @@ struct ZSTD_DStream_s {
>   	U32 hostageByte;
>   }; /* typedef'd to ZSTD_DStream within "zstd.h" */
>   
> -STATIC size_t INIT ZSTD_DStreamWorkspaceBound(size_t maxWindowSize)
> +static size_t __init ZSTD_DStreamWorkspaceBound(size_t maxWindowSize)
>   {
>   	size_t const blockSize = MIN(maxWindowSize, ZSTD_BLOCKSIZE_ABSOLUTEMAX);
>   	size_t const inBuffSize = blockSize;
> @@ -2213,7 +2213,7 @@ STATIC size_t INIT ZSTD_DStreamWorkspace
>   	return ZSTD_DCtxWorkspaceBound() + ZSTD_ALIGN(sizeof(ZSTD_DStream)) + ZSTD_ALIGN(inBuffSize) + ZSTD_ALIGN(outBuffSize);
>   }
>   
> -static ZSTD_DStream *INIT ZSTD_createDStream_advanced(ZSTD_customMem customMem)
> +static ZSTD_DStream *__init ZSTD_createDStream_advanced(ZSTD_customMem customMem)
>   {
>   	ZSTD_DStream *zds;
>   
> @@ -2235,7 +2235,7 @@ static ZSTD_DStream *INIT ZSTD_createDSt
>   	return zds;
>   }
>   
> -STATIC ZSTD_DStream *INIT ZSTD_initDStream(size_t maxWindowSize, void *workspace, size_t workspaceSize)
> +static ZSTD_DStream *__init ZSTD_initDStream(size_t maxWindowSize, void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
>   	ZSTD_DStream *zds = ZSTD_createDStream_advanced(stackMem);
> @@ -2269,7 +2269,7 @@ STATIC ZSTD_DStream *INIT ZSTD_initDStre
>   }
>   
>   #ifdef BUILD_DEAD_CODE
> -ZSTD_DStream *INIT ZSTD_initDStream_usingDDict(size_t maxWindowSize, const ZSTD_DDict *ddict, void *workspace, size_t workspaceSize)
> +ZSTD_DStream *__init ZSTD_initDStream_usingDDict(size_t maxWindowSize, const ZSTD_DDict *ddict, void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_DStream *zds = ZSTD_initDStream(maxWindowSize, workspace, workspaceSize);
>   	if (zds) {
> @@ -2279,7 +2279,7 @@ ZSTD_DStream *INIT ZSTD_initDStream_usin
>   }
>   #endif
>   
> -size_t INIT ZSTD_freeDStream(ZSTD_DStream *zds)
> +size_t __init ZSTD_freeDStream(ZSTD_DStream *zds)
>   {
>   	if (zds == NULL)
>   		return 0; /* support free on null */
> @@ -2301,11 +2301,11 @@ size_t INIT ZSTD_freeDStream(ZSTD_DStrea
>   /* *** Initialization *** */
>   
>   #ifdef BUILD_DEAD_CODE
> -size_t INIT ZSTD_DStreamInSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX + ZSTD_blockHeaderSize; }
> -size_t INIT ZSTD_DStreamOutSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX; }
> +size_t __init ZSTD_DStreamInSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX + ZSTD_blockHeaderSize; }
> +size_t __init ZSTD_DStreamOutSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX; }
>   #endif
>   
> -STATIC size_t INIT ZSTD_resetDStream(ZSTD_DStream *zds)
> +static size_t __init ZSTD_resetDStream(ZSTD_DStream *zds)
>   {
>   	zds->stage = zdss_loadHeader;
>   	zds->lhSize = zds->inPos = zds->outStart = zds->outEnd = 0;
> @@ -2316,14 +2316,14 @@ STATIC size_t INIT ZSTD_resetDStream(ZST
>   
>   /* *****   Decompression   ***** */
>   
> -ZSTD_STATIC size_t INIT ZSTD_limitCopy(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +ZSTD_STATIC size_t __init ZSTD_limitCopy(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	size_t const length = MIN(dstCapacity, srcSize);
>   	memcpy(dst, src, length);
>   	return length;
>   }
>   
> -STATIC size_t INIT ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inBuffer *input)
> +static size_t __init ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inBuffer *input)
>   {
>   	const char *const istart = (const char *)(input->src) + input->pos;
>   	const char *const iend = (const char *)(input->src) + input->size;
> --- a/xen/common/zstd/entropy_common.c
> +++ b/xen/common/zstd/entropy_common.c
> @@ -46,17 +46,17 @@
>   #include "mem.h"
>   
>   /*===   Version   ===*/
> -unsigned INIT FSE_versionNumber(void) { return FSE_VERSION_NUMBER; }
> +unsigned __init FSE_versionNumber(void) { return FSE_VERSION_NUMBER; }
>   
>   /*===   Error Management   ===*/
> -unsigned INIT FSE_isError(size_t code) { return ERR_isError(code); }
> +unsigned __init FSE_isError(size_t code) { return ERR_isError(code); }
>   
> -unsigned INIT HUF_isError(size_t code) { return ERR_isError(code); }
> +unsigned __init HUF_isError(size_t code) { return ERR_isError(code); }
>   
>   /*-**************************************************************
>   *  FSE NCount encoding-decoding
>   ****************************************************************/
> -size_t INIT FSE_readNCount(short *normalizedCounter, unsigned *maxSVPtr, unsigned *tableLogPtr, const void *headerBuffer, size_t hbSize)
> +size_t __init FSE_readNCount(short *normalizedCounter, unsigned *maxSVPtr, unsigned *tableLogPtr, const void *headerBuffer, size_t hbSize)
>   {
>   	const BYTE *const istart = (const BYTE *)headerBuffer;
>   	const BYTE *const iend = istart + hbSize;
> @@ -164,7 +164,7 @@ size_t INIT FSE_readNCount(short *normal
>   	@return : size read from `src` , or an error Code .
>   	Note : Needed by HUF_readCTable() and HUF_readDTableX?() .
>   */
> -size_t INIT HUF_readStats_wksp(BYTE *huffWeight, size_t hwSize, U32 *rankStats, U32 *nbSymbolsPtr, U32 *tableLogPtr, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_readStats_wksp(BYTE *huffWeight, size_t hwSize, U32 *rankStats, U32 *nbSymbolsPtr, U32 *tableLogPtr, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
>   {
>   	U32 weightTotal;
>   	const BYTE *ip = (const BYTE *)src;
> --- a/xen/common/zstd/error_private.h
> +++ b/xen/common/zstd/error_private.h
> @@ -67,9 +67,9 @@ typedef ZSTD_ErrorCode ERR_enum;
>   ******************************************/
>   #define ERROR(name) ((size_t)-PREFIX(name))
>   
> -ERR_STATIC unsigned INIT ERR_isError(size_t code) { return (code > ERROR(maxCode)); }
> +ERR_STATIC unsigned __init ERR_isError(size_t code) { return (code > ERROR(maxCode)); }
>   
> -ERR_STATIC ERR_enum INIT ERR_getErrorCode(size_t code)
> +ERR_STATIC ERR_enum __init ERR_getErrorCode(size_t code)
>   {
>   	if (!ERR_isError(code))
>   		return (ERR_enum)0;
> @@ -82,7 +82,7 @@ ERR_STATIC ERR_enum INIT ERR_getErrorCod
>    *
>    * Return: Non-zero iff the code is an error.
>    */
> -static __attribute__((unused)) unsigned int INIT ZSTD_isError(size_t code)
> +static __attribute__((unused)) unsigned int __init ZSTD_isError(size_t code)
>   {
>   	return code > (size_t)-ZSTD_error_maxCode;
>   }
> @@ -94,7 +94,7 @@ static __attribute__((unused)) unsigned
>    * Return:          The ZSTD_ErrorCode corresponding to the functionResult or 0
>    *                  if the functionResult isn't an error.
>    */
> -static __attribute__((unused)) ZSTD_ErrorCode INIT ZSTD_getErrorCode(
> +static __attribute__((unused)) ZSTD_ErrorCode __init ZSTD_getErrorCode(
>   	size_t functionResult)
>   {
>   	if (!ZSTD_isError(functionResult))
> --- a/xen/common/zstd/fse_decompress.c
> +++ b/xen/common/zstd/fse_decompress.c
> @@ -82,7 +82,7 @@
>   
>   /* Function templates */
>   
> -size_t INIT FSE_buildDTable_wksp(FSE_DTable *dt, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void *workspace, size_t workspaceSize)
> +size_t __init FSE_buildDTable_wksp(FSE_DTable *dt, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void *workspace, size_t workspaceSize)
>   {
>   	void *const tdPtr = dt + 1; /* because *dt is unsigned, 32-bits aligned on 32-bits */
>   	FSE_DECODE_TYPE *const tableDecode = (FSE_DECODE_TYPE *)(tdPtr);
> @@ -157,7 +157,7 @@ size_t INIT FSE_buildDTable_wksp(FSE_DTa
>   /*-*******************************************************
>   *  Decompression (Byte symbols)
>   *********************************************************/
> -size_t INIT FSE_buildDTable_rle(FSE_DTable *dt, BYTE symbolValue)
> +size_t __init FSE_buildDTable_rle(FSE_DTable *dt, BYTE symbolValue)
>   {
>   	void *ptr = dt;
>   	FSE_DTableHeader *const DTableH = (FSE_DTableHeader *)ptr;
> @@ -174,7 +174,7 @@ size_t INIT FSE_buildDTable_rle(FSE_DTab
>   	return 0;
>   }
>   
> -size_t INIT FSE_buildDTable_raw(FSE_DTable *dt, unsigned nbBits)
> +size_t __init FSE_buildDTable_raw(FSE_DTable *dt, unsigned nbBits)
>   {
>   	void *ptr = dt;
>   	FSE_DTableHeader *const DTableH = (FSE_DTableHeader *)ptr;
> @@ -269,7 +269,7 @@ FORCE_INLINE size_t FSE_decompress_using
>   	return op - ostart;
>   }
>   
> -size_t INIT FSE_decompress_usingDTable(void *dst, size_t originalSize, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt)
> +size_t __init FSE_decompress_usingDTable(void *dst, size_t originalSize, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt)
>   {
>   	const void *ptr = dt;
>   	const FSE_DTableHeader *DTableH = (const FSE_DTableHeader *)ptr;
> @@ -281,7 +281,7 @@ size_t INIT FSE_decompress_usingDTable(v
>   	return FSE_decompress_usingDTable_generic(dst, originalSize, cSrc, cSrcSize, dt, 0);
>   }
>   
> -size_t INIT FSE_decompress_wksp(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, unsigned maxLog, void *workspace, size_t workspaceSize)
> +size_t __init FSE_decompress_wksp(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, unsigned maxLog, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *const istart = (const BYTE *)cSrc;
>   	const BYTE *ip = istart;
> --- a/xen/common/zstd/huf_decompress.c
> +++ b/xen/common/zstd/huf_decompress.c
> @@ -68,7 +68,7 @@ typedef struct {
>   	BYTE reserved;
>   } DTableDesc;
>   
> -static DTableDesc INIT HUF_getDTableDesc(const HUF_DTable *table)
> +static DTableDesc __init HUF_getDTableDesc(const HUF_DTable *table)
>   {
>   	DTableDesc dtd;
>   	memcpy(&dtd, table, sizeof(dtd));
> @@ -84,7 +84,7 @@ typedef struct {
>   	BYTE nbBits;
>   } HUF_DEltX2; /* single-symbol decoding */
>   
> -size_t INIT HUF_readDTableX2_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_readDTableX2_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
>   {
>   	U32 tableLog = 0;
>   	U32 nbSymbols = 0;
> @@ -152,7 +152,7 @@ size_t INIT HUF_readDTableX2_wksp(HUF_DT
>   	return iSize;
>   }
>   
> -static BYTE INIT HUF_decodeSymbolX2(BIT_DStream_t *Dstream, const HUF_DEltX2 *dt, const U32 dtLog)
> +static BYTE __init HUF_decodeSymbolX2(BIT_DStream_t *Dstream, const HUF_DEltX2 *dt, const U32 dtLog)
>   {
>   	size_t const val = BIT_lookBitsFast(Dstream, dtLog); /* note : dtLog >= 1 */
>   	BYTE const c = dt[val].byte;
> @@ -193,7 +193,7 @@ FORCE_INLINE size_t HUF_decodeStreamX2(B
>   	return pEnd - pStart;
>   }
>   
> -static size_t INIT HUF_decompress1X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +static size_t __init HUF_decompress1X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	BYTE *op = (BYTE *)dst;
>   	BYTE *const oend = op + dstSize;
> @@ -218,7 +218,7 @@ static size_t INIT HUF_decompress1X2_usi
>   	return dstSize;
>   }
>   
> -size_t INIT HUF_decompress1X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress1X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
>   	if (dtd.tableType != 0)
> @@ -226,7 +226,7 @@ size_t INIT HUF_decompress1X2_usingDTabl
>   	return HUF_decompress1X2_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress1X2_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress1X2_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *ip = (const BYTE *)cSrc;
>   
> @@ -241,7 +241,7 @@ size_t INIT HUF_decompress1X2_DCtx_wksp(
>   	return HUF_decompress1X2_usingDTable_internal(dst, dstSize, ip, cSrcSize, DCtx);
>   }
>   
> -static size_t INIT HUF_decompress4X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +static size_t __init HUF_decompress4X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	/* Check */
>   	if (cSrcSize < 10)
> @@ -349,7 +349,7 @@ static size_t INIT HUF_decompress4X2_usi
>   	}
>   }
>   
> -size_t INIT HUF_decompress4X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress4X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
>   	if (dtd.tableType != 0)
> @@ -357,7 +357,7 @@ size_t INIT HUF_decompress4X2_usingDTabl
>   	return HUF_decompress4X2_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *ip = (const BYTE *)cSrc;
>   
> @@ -388,7 +388,7 @@ typedef struct {
>   
>   /* HUF_fillDTableX4Level2() :
>    * `rankValOrigin` must be a table of at least (HUF_TABLELOG_MAX + 1) U32 */
> -static void INIT HUF_fillDTableX4Level2(HUF_DEltX4 *DTable, U32 sizeLog, const U32 consumed, const U32 *rankValOrigin, const int minWeight,
> +static void __init HUF_fillDTableX4Level2(HUF_DEltX4 *DTable, U32 sizeLog, const U32 consumed, const U32 *rankValOrigin, const int minWeight,
>   					const sortedSymbol_t *sortedSymbols, const U32 sortedListSize, U32 nbBitsBaseline, U16 baseSeq)
>   {
>   	HUF_DEltX4 DElt;
> @@ -434,7 +434,7 @@ static void INIT HUF_fillDTableX4Level2(
>   typedef U32 rankVal_t[HUF_TABLELOG_MAX][HUF_TABLELOG_MAX + 1];
>   typedef U32 rankValCol_t[HUF_TABLELOG_MAX + 1];
>   
> -static void INIT HUF_fillDTableX4(HUF_DEltX4 *DTable, const U32 targetLog, const sortedSymbol_t *sortedList,
> +static void __init HUF_fillDTableX4(HUF_DEltX4 *DTable, const U32 targetLog, const sortedSymbol_t *sortedList,
>   				  const U32 sortedListSize, const U32 *rankStart,
>   			          rankVal_t rankValOrigin, const U32 maxWeight, const U32 nbBitsBaseline)
>   {
> @@ -477,7 +477,7 @@ static void INIT HUF_fillDTableX4(HUF_DE
>   	}
>   }
>   
> -size_t INIT HUF_readDTableX4_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_readDTableX4_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
>   {
>   	U32 tableLog, maxW, sizeOfSort, nbSymbols;
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
> @@ -590,7 +590,7 @@ size_t INIT HUF_readDTableX4_wksp(HUF_DT
>   	return iSize;
>   }
>   
> -static U32 INIT HUF_decodeSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
> +static U32 __init HUF_decodeSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
>   {
>   	size_t const val = BIT_lookBitsFast(DStream, dtLog); /* note : dtLog >= 1 */
>   	memcpy(op, dt + val, 2);
> @@ -598,7 +598,7 @@ static U32 INIT HUF_decodeSymbolX4(void
>   	return dt[val].length;
>   }
>   
> -static U32 INIT HUF_decodeLastSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
> +static U32 __init HUF_decodeLastSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
>   {
>   	size_t const val = BIT_lookBitsFast(DStream, dtLog); /* note : dtLog >= 1 */
>   	memcpy(op, dt + val, 1);
> @@ -650,7 +650,7 @@ FORCE_INLINE size_t HUF_decodeStreamX4(B
>   	return p - pStart;
>   }
>   
> -static size_t INIT HUF_decompress1X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +static size_t __init HUF_decompress1X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	BIT_DStream_t bitD;
>   
> @@ -679,7 +679,7 @@ static size_t INIT HUF_decompress1X4_usi
>   	return dstSize;
>   }
>   
> -size_t INIT HUF_decompress1X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress1X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
>   	if (dtd.tableType != 1)
> @@ -687,7 +687,7 @@ size_t INIT HUF_decompress1X4_usingDTabl
>   	return HUF_decompress1X4_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress1X4_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress1X4_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *ip = (const BYTE *)cSrc;
>   
> @@ -702,7 +702,7 @@ size_t INIT HUF_decompress1X4_DCtx_wksp(
>   	return HUF_decompress1X4_usingDTable_internal(dst, dstSize, ip, cSrcSize, DCtx);
>   }
>   
> -static size_t INIT HUF_decompress4X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +static size_t __init HUF_decompress4X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	if (cSrcSize < 10)
>   		return ERROR(corruption_detected); /* strict minimum : jump table + 1 byte per stream */
> @@ -812,7 +812,7 @@ static size_t INIT HUF_decompress4X4_usi
>   	}
>   }
>   
> -size_t INIT HUF_decompress4X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress4X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
>   	if (dtd.tableType != 1)
> @@ -820,7 +820,7 @@ size_t INIT HUF_decompress4X4_usingDTabl
>   	return HUF_decompress4X4_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *ip = (const BYTE *)cSrc;
>   
> @@ -839,14 +839,14 @@ size_t INIT HUF_decompress4X4_DCtx_wksp(
>   /* Generic decompression selector */
>   /* ********************************/
>   
> -size_t INIT HUF_decompress1X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress1X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc const dtd = HUF_getDTableDesc(DTable);
>   	return dtd.tableType ? HUF_decompress1X4_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable)
>   			     : HUF_decompress1X2_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress4X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress4X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc const dtd = HUF_getDTableDesc(DTable);
>   	return dtd.tableType ? HUF_decompress4X4_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable)
> @@ -882,7 +882,7 @@ static const algo_time_t algoTime[16 /*
>   *   based on a set of pre-determined metrics.
>   *   @return : 0==HUF_decompress4X2, 1==HUF_decompress4X4 .
>   *   Assumption : 0 < cSrcSize < dstSize <= 128 KB */
> -U32 INIT HUF_selectDecoder(size_t dstSize, size_t cSrcSize)
> +U32 __init HUF_selectDecoder(size_t dstSize, size_t cSrcSize)
>   {
>   	/* decoder timing evaluation */
>   	U32 const Q = (U32)(cSrcSize * 16 / dstSize); /* Q < 16 since dstSize > cSrcSize */
> @@ -896,7 +896,7 @@ U32 INIT HUF_selectDecoder(size_t dstSiz
>   
>   typedef size_t (*decompressionAlgo)(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize);
>   
> -size_t INIT HUF_decompress4X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress4X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	/* validation checks */
>   	if (dstSize == 0)
> @@ -919,7 +919,7 @@ size_t INIT HUF_decompress4X_DCtx_wksp(H
>   	}
>   }
>   
> -size_t INIT HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	/* validation checks */
>   	if (dstSize == 0)
> @@ -934,7 +934,7 @@ size_t INIT HUF_decompress4X_hufOnly_wks
>   	}
>   }
>   
> -size_t INIT HUF_decompress1X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress1X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	/* validation checks */
>   	if (dstSize == 0)
> --- a/xen/common/zstd/zstd_common.c
> +++ b/xen/common/zstd/zstd_common.c
> @@ -31,7 +31,7 @@
>   		(stack)->ptr <= (stack)->end ? ptr : NULL;      \
>   	})
>   
> -ZSTD_customMem INIT ZSTD_initStack(void *workspace, size_t workspaceSize)
> +ZSTD_customMem __init ZSTD_initStack(void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_customMem stackMem = {ZSTD_stackAlloc, ZSTD_stackFree, workspace};
>   	ZSTD_stack *stack = (ZSTD_stack *)workspace;
> @@ -47,27 +47,27 @@ ZSTD_customMem INIT ZSTD_initStack(void
>   	return stackMem;
>   }
>   
> -void *INIT ZSTD_stackAllocAll(void *opaque, size_t *size)
> +void *__init ZSTD_stackAllocAll(void *opaque, size_t *size)
>   {
>   	ZSTD_stack *stack = (ZSTD_stack *)opaque;
>   	*size = (BYTE const *)stack->end - (BYTE *)ZSTD_PTR_ALIGN(stack->ptr);
>   	return stack_push(stack, *size);
>   }
>   
> -void *INIT ZSTD_stackAlloc(void *opaque, size_t size)
> +void *__init ZSTD_stackAlloc(void *opaque, size_t size)
>   {
>   	ZSTD_stack *stack = (ZSTD_stack *)opaque;
>   	return stack_push(stack, size);
>   }
> -void INIT ZSTD_stackFree(void *opaque, void *address)
> +void __init ZSTD_stackFree(void *opaque, void *address)
>   {
>   	(void)opaque;
>   	(void)address;
>   }
>   
> -void *INIT ZSTD_malloc(size_t size, ZSTD_customMem customMem) { return customMem.customAlloc(customMem.opaque, size); }
> +void *__init ZSTD_malloc(size_t size, ZSTD_customMem customMem) { return customMem.customAlloc(customMem.opaque, size); }
>   
> -void INIT ZSTD_free(void *ptr, ZSTD_customMem customMem)
> +void __init ZSTD_free(void *ptr, ZSTD_customMem customMem)
>   {
>   	if (ptr != NULL)
>   		customMem.customFree(customMem.opaque, ptr);
> --- a/xen/common/zstd/zstd_internal.h
> +++ b/xen/common/zstd/zstd_internal.h
> @@ -21,7 +21,7 @@
>   *  Compiler specifics
>   *********************************************************/
>   #define FORCE_INLINE static always_inline
> -#define FORCE_NOINLINE static noinline INIT
> +#define FORCE_NOINLINE static noinline __init
>   
>   /*-*************************************
>   *  Dependencies
> 
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 12:10:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 12:10:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111097.212387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0ok-0000Pm-Ld; Thu, 15 Apr 2021 12:09:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111097.212387; Thu, 15 Apr 2021 12:09:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX0ok-0000Pf-Id; Thu, 15 Apr 2021 12:09:54 +0000
Received: by outflank-mailman (input) for mailman id 111097;
 Thu, 15 Apr 2021 12:09: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 1lX0oj-0000Pa-Dw
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 12:09: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 1lX0oh-0007We-Fc; Thu, 15 Apr 2021 12:09:51 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX0oh-0003DH-5R; Thu, 15 Apr 2021 12:09: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=5iomQNcg8ceRQda8d9lZMqjsuvVk2iKKS/A/xg+5G4E=; b=SO1hhmXASZJK1fV6Ex7Elv2HcN
	nczY7MsFutKs5+Dqf3WxMWIrSuszzYncuvFbZn2LVvmxonr79bwAtrzFNxqshxMdkmf/sY0f2yjOJ
	dZs9X+yeboxQimue7hf1CUTYij6zEpw0Br9mMpV0XY3sIQfaMHhB8+0LCMw+Czm48SxM=;
Subject: Re: [PATCH v3 15/15] unzstd: make helper symbols static
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <22549ef3-62a7-955e-e2ad-8bd47f832b68@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <8b5313db-1445-7d70-ac04-d8609d042108@xen.org>
Date: Thu, 15 Apr 2021 13:09:49 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <22549ef3-62a7-955e-e2ad-8bd47f832b68@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 26/01/2021 09:53, Jan Beulich wrote:
> While for the original library's purposes these functions of course want
> to be externally exposed, we don't need this, and we also don't want
> this both to prevent unintended use and to keep the name space tidy.
> (When functions have no callers at all, wrap them with a suitable
> #ifdef.) This has the added benefit of reducing the resulting binary
> size - while this is all .init code, it's still desirable to not carry
> dead code.

So why do we keep the code if it is not used? Do you expect it to be 
re-used in the future?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 12:26:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 12:26:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111102.212399 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX14S-0002GM-5H; Thu, 15 Apr 2021 12:26:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111102.212399; Thu, 15 Apr 2021 12: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 1lX14S-0002GF-18; Thu, 15 Apr 2021 12:26:08 +0000
Received: by outflank-mailman (input) for mailman id 111102;
 Thu, 15 Apr 2021 12:26:06 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX14Q-0002GA-IQ
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 12:26:06 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 90076cb5-6bb8-47f2-bf43-520b773215e9;
 Thu, 15 Apr 2021 12:26: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: 90076cb5-6bb8-47f2-bf43-520b773215e9
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618489565;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=zxhkqwoa0zLwrwg5FgmIMZlxI6mJ/dX4grJonJJzTlA=;
  b=K/kA8wxSoFpGYEpyRwG4AUFCTiIG/03ayyEDnZ13sEuUyb1McwoZYCpB
   rk69GdNDWtgqx5QE+5hMttpDgDOh9VAGCjCWbVk1DJe2wYNLQqpgkRoFS
   WQUaEbp3yZ4LE8lidXK6Y8pcy8kXIETPmOykZ7STuCUNxjHWFx4FEGXAa
   A=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 2lx5JxxVqRpT6QhNxXjXfJQpLO8y5hPxS3A4s1tEL9e451qxzBrVLo6EeRp9uruAnpZw7R41Cc
 aFmpkXDsq/Sr85IuUOk7E9w+WHvJgFHHJxAQhO3N3/CMFoOpyHbGFO44hkAk/CsYa6cZ43sV3F
 EcjCNA+odRvdUH9ItefEMYBdn7JQ0XhvmynJt/aOwUJHQdzhM9uDIaCnZXAve6ZV5pwMjwCwcx
 4ad9qQFItEsC753RnNANmQnRY0KmzwSOtprrwVV1nkw+T6mK2HqvrV++B1oQTibk+cJD4DwYUK
 BeM=
X-SBRS: 5.2
X-MesageID: 43146561
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:JmAhaq79q7NmgAFDHAPXwRqBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3m0z/5IyKMWOqqvWxSjhXuwIOhZnO/f6hDDOwm7zO5S0q
 98b7NzYeebMXFWhdv3iTPWL/8O29+CmZrHuc7771NACT5ncLth6QARMHf/LmRTSBNdDZQ0UL
 qwj/A3xAaIQngcYsSlCnRtZYGqy+Hjr576fQUAQycu9Qjmt1iVwYTnGBuV1Ap2aUIs/Z4e9w
 H+8jDR1+GYnNyQjjTd0GLS6Jo+oqqd9vJzQPaip+JQBjHligODbJlsVbuYrFkO0Z2SwWdvqv
 bgiVMNONly9mPwcwiO0GTQ8jil6hkCwTvDzkKVmnTqq8CRfkNFN+Nxwbh3XzGczmhIhqAa7I
 t7m1i3mrASMDb72AP63NTMXwECrDvOnVMS1dQ9olYabZETc9Zq3Ooi1XIQKrgsNgTg5rsqFe
 F/Zfusnsp+QBehY3fVsnIH+q3UYl0DWhOPQk01sseIyTRhnHdg00sCxMAE901wjK4Adw==
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="43146561"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Wf6u+vptNOyoluZTjIU3xdsPmslclTOmoELPEc78NyjcswU8rcr0E4FvCfII7YMV48Wt2KiFshN0nJFUvMlqLv0w3xBjHcDXf++i8WZ4FOkoRR2PdfSebw89SyV1em14rxswiSZTpifkXPsyVujrFlJXi/2hY7YJuK/s3bvWi9gjeXIoAVot73DlLvzGfwooGvVGuKp46c5/0mlmatUQVPgFZd+XE9tvZnSq1IcSFUKwNz5EciX13sn1XFVBRNOi4AFQzHsWc0a7EuZsKfpvA/OHav6CMAv3kJjx/v1OSH9efHZ9ZexRUDTzyxEZXbl4TYBXD5kXRjD6erpvcLDv7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zxhkqwoa0zLwrwg5FgmIMZlxI6mJ/dX4grJonJJzTlA=;
 b=eUsA3kdpZ//KNgZJH67PqMaD/9d3cCUlq+KlTKHa1qVO1Q5ZTRugOmu18FeLrKk/55IsTatU/K9QqgOumD3kW21GIwgyp1XogNr/o/LNZSXKRmkDiWGR0BjqSlxWr4SNE+eGGjuplblOVgYUgKLQIMnQco/V9OhKiLetXPsVo6CPCLYhtJEDrqHYQRcT6GKabgJBVGfxx7SWqQl9ltUobivXnLNVFm5JvEKlx1WTq9bZ6Y6QtdhxKFAcbMW7Y3Aj2u3wjj4wOKc0G3xN3wEgknOxx0ndw9L4oQZl3pxZQjQoWR/xwHzWjmIXZaq8BlYjRkjSXclq50R/050+sNjTfA==
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=zxhkqwoa0zLwrwg5FgmIMZlxI6mJ/dX4grJonJJzTlA=;
 b=qPyPtIF9SY5aWd7AayRq9a4O00q8HZIb9FVMCdvzDznqbGMsgovMPzHvpjqb22UjtKv73hSEpYovmDDaqpdr0Zv6Yg2VyJQNB8nGFpEIvk+VQtvCKcXkFBHi2FaE7cfU8vAoiOqIi8dF8zkVIl3p7Ad9kbDNdYcwV/wbCM5rqLQ=
Date: Thu, 15 Apr 2021 14:25:55 +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 v2 2/2] x86: use is_pv_64bit_domain() to avoid double
 evaluate_nospec()
Message-ID: <YHgw0/FzaUUgO8HF@Air-de-Roger>
References: <3bc868c1-1003-2f80-1617-d64a1e7441bc@suse.com>
 <1d5cb279-203c-4188-5910-7b01dde4239e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <1d5cb279-203c-4188-5910-7b01dde4239e@suse.com>
X-ClientProxiedBy: PR3P193CA0018.EURP193.PROD.OUTLOOK.COM
 (2603:10a6:102:50::23) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3b638d55-c9f2-41ad-07b2-08d90009a1a1
X-MS-TrafficTypeDiagnostic: DM4PR03MB5998:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB599891D547BA498BF679AFA98F4D9@DM4PR03MB5998.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:311;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: lIPQ7oHjkVlU00er8bfRq7hnysDsf3V9tWQ+YGgmqp1Xb6tCoV6UcvFunxGXXdL6Fu6uVKW9adoCpYhnrinjN5BtKoA94gg7APjQ1SJhjsP0lMCIG/Ko0Ta6qsziAN7HeQdLhZ5pbaB4D5ukfB5gxx/tjSFepWJvcVpmo1arvV7xud7xrI3Xe2Kd3hjsLHMwOav5hTGS56ITEhPi2jmdp7pkR43eo2/AK5+NVG1BT7oFp2i0bPzKgWADM88sE5fXmQt1FLQ3S3DDU3KQFZOVVNWUApvZ4EI2UQlNLCzB8Oleh7SwfVB0LI0peQ5e9cg58v+IWYZ2KHmEmLe9PaagbiQjJrpaP7mbd7PKRuCwZUuFc15fj/V1JLkm1fjiAOweBTlLLRZKQpkmYpLzSircSZvfF7b030D49HznRNfJ9CxL94Uqu/eEdKe0ZUtUVjLkDIKrW9BbeKhR2xuwyvEfx/1VvYwCVOgay5GfA1Q8N83hxmKEmtgOROfT9AOhUVvEJgANJpyt3u+KXxU2eftEWK1hiRvkgqNMV1236HZiKrCbW4H1ZFX1DQ32KC0iDHtuy+kxKvbkRKSFaHsACIAXR0THWmD21fQv2HGq2+xooPw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(39860400002)(346002)(396003)(366004)(136003)(186003)(33716001)(316002)(6496006)(38100700002)(4326008)(558084003)(86362001)(66476007)(66556008)(6666004)(6916009)(66946007)(6486002)(16526019)(9686003)(8936002)(26005)(5660300002)(2906002)(54906003)(8676002)(478600001)(956004)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 3b638d55-c9f2-41ad-07b2-08d90009a1a1
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 12:26:01.7196
 (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: dplifANH9xjqNiYhPEVmE3140mLXmVzfDq7qpFcvMFi1fqMRD+tC6ndMZUwXAMK5IHOnLAco/Ihk9p7V3OdlZw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5998
X-OriginatorOrg: citrix.com

On Thu, Apr 15, 2021 at 11:36:18AM +0200, Jan Beulich wrote:
> 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 Thu Apr 15 12:30:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 12:30:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111108.212417 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX191-00038j-Ok; Thu, 15 Apr 2021 12:30:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111108.212417; Thu, 15 Apr 2021 12:30: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 1lX191-00038c-Lg; Thu, 15 Apr 2021 12:30:51 +0000
Received: by outflank-mailman (input) for mailman id 111108;
 Thu, 15 Apr 2021 12:30:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX190-00038X-E8
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 12:30:50 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b0dc4399-bb19-46eb-8b93-25a109f73b3e;
 Thu, 15 Apr 2021 12:30: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: b0dc4399-bb19-46eb-8b93-25a109f73b3e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618489848;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=zog7RNOgZDmUjuW58MsfRScWxniaentKP/jFGyYtoh0=;
  b=cwDlVOL+oWVRVTnvud72orMxeaaVgFtG6X+ekv6UggpnjfKZyWR8+fDO
   sj1jNEHgxZqvvBH+EX+SbH8uG2/dvSudonb+8Tgyr/I3AvDYoNYGU4auN
   YjfdvH/oST7EKAi57hustsoPdyjurY897WF/RNzUoO1en8Ydc/NjP8v5J
   Q=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: W02RO8fTsQUGweKhxN8QP6HuihXV3PmqmtzDQBQ6BjRBxRbAJi/2Xkuitj+p4iMSRd3qlWnIuP
 1X/bHx4PB7x+I+NcPCffGl8BhW9fb39BbJ3ZnB43d0MibNiHDi1gzYmjWMgLRvMqmqBK9oOMfK
 NBGHOtATZXw/hgiR0EUcXEOUNyXOoBDNn4ngNoHczzuA4DjmlqVn+fnXT2gQP9FBkCAPW6+fCF
 UtkWnN6ylc1rzqDmLkFctrmiZqPuAEUZUgmZGk3OhCrNFNOp2ExiB6XeR3/pwSgc/Tq4EOOv1Q
 ys8=
X-SBRS: 5.2
X-MesageID: 41501218
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fEGhy6ytmR86uncEvOh2KrPxnu4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnm6JdybI6eZOvRhPvtmftFoFt6oP+3ybtcheQysd07o
 0lSaR3DbTLYWRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRC51IxS0RMHf8LmRdQg5aCZ0lUL
 ed/NNAvTq8eXIRB/7Le0Utde7FutHNidbaehYAHREq802jijmv5b78HXGjr2sjehlIxqov9n
 WArhzh6syYwouG4zL/90uW1ZRZn9P91sBObfbstuE5Iijh4zzYAbhJdKaFuFkO0YWSwXYs1O
 LBuhIxe/l0gkmhAV2dhTvI903e3C0163nkoGXo8kfLhcDiXjo1B45gqOtiA2PkwnEttt19z6
 5Htljx3/E8YGKi7UaNkuTgbB1kmlG5pnAvi4co/gdieLATdaNLqsgn9F5Vea1wbB7S0pwtE+
 VlEajnlY9rWG6dBkqp2VVH8ZiHW3Q+GQq+WU4SusCZ+Cg+pgEJ82IogOMYhXsO75Q7Vt1t4P
 nFKL1hkPV0QtYRdr8VPpZPfeKHTkj2BT7cOmObJlrqUIkBJnL2spbypJE4/vujdpAkxIY78a
 6xHm9whCoXQQbDGMeO1JpE/lTmW2OmRwngzclY+txQpqD8bKCDC1zBdHke1++b59kPCMzSXP
 i+fLhMBeX4EGfoEYFVmyXjRphpL2UEWsF9gKd6Z3u+5ubwbqH6vO3Sd/jeYJD3Fyw/Z2/5Cn
 wfGBfpIsFt6V2qR2/YjBDdV2iFQD27wbtAVIzhu8QDwokEMYNB9iIPj06i282NITpe9ow6FX
 EOZI/Po+eeny2b7GzI52JmNl52FUBO+ojtVHtMuEsvO0PwerAThsWHdQlprTy6Dy46a/mTPB
 9Uplxx967yBYeX3zoeB9WuNX/fqHcPunSQTdM5lreY7cnoPrM0Z6xWGZBZJEHuLVhYiAxqoG
 BMZEsvXUnEDA7jjq2jkdgzH+HQd951hS+xOs5KoXfjtUGRzPtfBEczbnqLa4q6kAwuTz1bih
 la6KkEmoeNnj6pNC8CmugiCUZNb26WGbpCKwyAaOxv6/bWUTA1aV3PqS2Rihk1dGav00kJnG
 TuIReZfuzxDkNHtmpV1bvr911IZnyQFngAGExSgMlYLyDrq3xz2eiEau6I32ydZkAr78sdPD
 vGCAFiaD9G9pSS7lq4iTyCHXIpytESJeTbFq0kaKyW8GiqMpe0maYPGOJ08J5pOMv1iPICVf
 uSdmauXWrFItJs/zbQimcuOSFypnVhrOjh3wf96nOkmFE4GvjfLT1dNvgmCuDZy1KhYfmG0J
 90141o+cSxN3j8cd6Ax+X8aSVZJhbavG6xSKUJpPlvzNUPnYo2O6Oedz3CkExj9lEZCuzfkU
 sFWqR14LzbIOZUDocvUhMc2mBsrciFKUsgjxf/DeA/d2w8lnOzBaL835P47Z4URnCbrAT+OV
 Oj4zRQ0vfMUSyEz6MbAcsLUBJrQXl5zHRp5+WZcYLMTC2sauFY5VK/W0XNPYN1eeygGb8KqA
 x97MzNt+iLdzDg0ASVmTdgOKpB/yKGRsy1aTj8VdJgwpifOV6WhLGt79P2pDDrSSGjY0BdvL
 Z7TyUrH4x+owhnqpY23Ci0QrH2pUxgs2I220AYqnfdnq684GnaGklaNxb+mZs+Z0gKDkS1
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="41501218"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z2Nx6dVMiRAgyOVXjTAUenM9eoaLPvXQfyOIVwd9Q4TUgo1VcT3HrvTsNJh4oTssJ3MhM3eUbuPUIERVpTvQXV7pqJSLQlNU9F0UEw3jK3wnw8Ydv2qGhF2eEZYS8lwdqxIQ4HnA+Kzx2r4wHcd7wnUgrPud/FBmcK+yAGqO7GmhmPgd9hCDAnPka9++m0MoFxa4PbvBbd+Yxx0bwNf/ZTPTcIQZ35n/p93ZwUk01ZqzYOhEgd/RH979h49tRSBfz4Qj3eekqbmd7M+2p9e+6MVGsq1Z4eRcqloprjYMC269Ydx+YHoZN7GGI0cWSE0iEwr0WPi7diIfiLKHbcr1nA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RpBiGRW58QxtP6gqTw0pLfZYB9sWumOIfXiyVFUVVRs=;
 b=dd+I61jXPIodFii8JaGPzJIh+SXtCRiq8yE11XqjH9D9s4AY3CmwesIScutInOuGGUbsni/LgT6YmuVdWiCysACZUTEDliNPEeoOlRGKJAu+DF4YlxK8eCXci2i8N5G2Q19rgob2895KnxfLMMUyNfHdjhyIY3gF3qtmdtzwL7a4bS9nq3h9lJRR3PNNjEjiWZTYc+kX7ivXJpEXRRxqJoD9vkB95AUG5bQkajY9JNqh6x+Q6DVm/5c4bClJhRf6HGE1nI2jH6iSDuxZEDYR3dQnPSE1HdQ7QwNYDcZxnVC7Bef0yFdjlkk2DKUxsJ47RExtnDSUUauOsjHwsXEDQQ==
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=RpBiGRW58QxtP6gqTw0pLfZYB9sWumOIfXiyVFUVVRs=;
 b=ESTXBsT0eW4jpvqZMqkopRpicR85GJ/dY/6v6W9SZXaShT1DPP02fQC/AdyhRXo5dkb37R2L0V3FpaUWc0SYA6YOQxBvQz1aojk7gukbKn3P1wBvchHPRH6+TQYC2LhuwzCbVjilWUD0mH8KUenvmLxVQlHMzMAHQ4Ebe7OXDvM=
Date: Thu, 15 Apr 2021 14:30:40 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Andrew
 Cooper" <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v2 12/17] x86/CPUID: shrink max_{,sub}leaf fields
 according to actual leaf contents
Message-ID: <YHgx8M06ZC1+MpEK@Air-de-Roger>
References: <255f466c-3c95-88c5-3e55-0f04c9ae1b12@suse.com>
 <2aaffa0e-e17f-6581-6003-e58d2c9fc1d7@suse.com>
 <YHgM6eTT2OJY89aU@Air-de-Roger>
 <1862ca8d-c16c-8f47-1999-15809fcacdfe@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <1862ca8d-c16c-8f47-1999-15809fcacdfe@suse.com>
X-ClientProxiedBy: MR2P264CA0077.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a2b2c6f1-a5fd-4d8c-f1c6-08d9000a4aac
X-MS-TrafficTypeDiagnostic: DM8PR03MB6216:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM8PR03MB6216ADBF71B520DA38B70A838F4D9@DM8PR03MB6216.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: QZYTULpa8slIWHcc6H4K5VfKGERI7TlqIxkj7rojyhAMjPSodAKlW4h7D0fNClx9Cu1PyvYodE2R6HdTGYt49UfIdJeeRdjqjNkn+2w7OmTi6DMSRF9mANk2m50YPlFzuvXUK+mj9oYCaw1XOTZBXUqJtwLuGUjYK1ypSJEOdJstPwLe3r6rQVT/fUjScOhcz7TuPqA3IF/aunVrkc3m6tOgt90fcvTcTEFVNA8390Y24NXE60VkuVEw5zUCOOL0NBX31VJH0d1sK7XRRvVXWgfZOycAsSRhTpg0/zJM4tU09+T3fDc51MpnQPg/8F7cdCGlaISJW8ov2gIB14U1Ab8CxnjNzbs0inA9DCOzGtPEWbc+AWMfRowTgWUhhkLK3WBVfRv4wKNGSqT12up0g7qo7aGthh15LeOoLYFz/PdpAsmHLGFTnwHlctw9U1L/Kdg7vNsgx7MdT/vpnUUScz/Gh+ZBj+BLdSNF/3n1EGPiUke2ReaycAvB9Njts63Hb/+nrXGSlQ+2qoZWNMx8KCS9cRsaw5yQeWD1OlAfdaHgr8wJCblp2gogvy7P1ZdqmvaRR3GvskRxgJKUNONuZfgOzj2XV3ZoqV9DFEwpVdgY+7c6FY6EVrF3frMfux8X4L6MVWkCBMh3o/lbTPc5Tg==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(39860400002)(346002)(396003)(366004)(136003)(186003)(33716001)(316002)(6496006)(38100700002)(4326008)(86362001)(66476007)(66556008)(6666004)(6916009)(66946007)(6486002)(83380400001)(16526019)(9686003)(53546011)(8936002)(26005)(5660300002)(2906002)(54906003)(8676002)(478600001)(956004)(85182001)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?SXNiczdrdUlhTnp3NEpva0tuOGtVeW9TczRTaWRVVlQ0MGNJMnJTSWJZZHRN?=
 =?utf-8?B?WVRkWWk0bUxUdWZRNVNBVkdVdk1wR2dzdTZxZ3plN2c5VzY3MFhiZHJPTFRs?=
 =?utf-8?B?V0g4RjBiTTZ6WUJOanh3NXh0YVZodzdJSXhmSFBoMVNKNWdPRk9jNFdqLzlJ?=
 =?utf-8?B?emxDOExIR3dSa0d4UldCUUEyRW50ZXczMHBqREx3cjFOK0FTdmtIZmlUOFZk?=
 =?utf-8?B?YlEyYXVjWFhJVWJkRlBGalRXUkxKK1YyOTdIRnZsRGw2RGdQTzVzL1VIVDgr?=
 =?utf-8?B?cUhHazQwTzJVNmZaY0N0WXZMQ1g5ZVVsOG8xS2NEaGNRZm5nd1NLZWMrb0xj?=
 =?utf-8?B?NUFGbUtQOUl1Mmt1SitWeTgydmNIemFnWmpBMjZqa2pqWjBrOGxzSnY3RjZp?=
 =?utf-8?B?VWdBMUJZVFdrU05NNjJmVHp4bkVyd3dpOGw4OUJFNWVJNEE1RkkrNU5EY0pE?=
 =?utf-8?B?ejJEejVrY2ZiZ3JhRjkxeU45eXgxQkw2YlFwM0pKZzkrWlppQzdSSlVicXV4?=
 =?utf-8?B?ZDFqQXh4ZmVvdXV4T1ZYcHVoVHFoS2ZnVGJPcHpSSUZwMzBQbHlPMlFRbzJa?=
 =?utf-8?B?SEoxMi9pTnRKbFFKV05sMFVlSW5UVy82WWdyZXg3Mi9HdHpURE0rZ2h0NVdR?=
 =?utf-8?B?UHErSFMzOU9CMXhTdkFDUFpLclJrSy90eGs4amsvQjBMMjFnc3IvUWl0djQx?=
 =?utf-8?B?Rkd6VXRJdkZKU2FHUWNzNStJZjFjMGdFdUFsRkYzZ1gwQjZqcFZMTzJTTmVW?=
 =?utf-8?B?OE91WnRTSnh6ZS81U0tMd0Y1SkRLQWllUmcreU9HT1c2dEphbG01SUU3M2oz?=
 =?utf-8?B?TFJOZlIyV2ZWRDdwSll4bG1SOFIvSG1YY3hkUzVucXdlNjEwelh6NEJLdm1C?=
 =?utf-8?B?TUE2cUZlOHFWejN4bW5sQTkzNSs3YWVUYTN6UGFJZlZNQng5eFZZM2VtUEVJ?=
 =?utf-8?B?aURrOEFuUTlmSlFid1g2SWNFV0s4bHZsbVZzbXpUY21nd1lSTnNlb0RCQVcx?=
 =?utf-8?B?RkYrdXpwb1UrSUlHV1RLVVU4TDNvNGRMUDc4b3dxRWFsWHM2TVBnbElPZ1BR?=
 =?utf-8?B?WndLQjRhdnJQMTNUMUdxOGNyRElOWnRjR2hldisxN0ZCUDIvRFZONkd5bFF1?=
 =?utf-8?B?bFUvZGl0K24wMTI1UkZRbld3blhkdWM2TXprM005SUErcm1vR0dMeERoVzFX?=
 =?utf-8?B?VFY3c1R2U0xEaUNjRDV6ZjdaQ2Y5R0lBN3o4enRLcVdtREVIN285L0lmL0xI?=
 =?utf-8?B?Mk1HbDVtVkZEZTdyelNXQTlQdnQ2ZDF3aW5wR1pUeHpFblp0TWF2a0xiNS9k?=
 =?utf-8?B?VXBadVpzdkRBWlhmU1FDR0MvZEU5aUZzOVlhMFc3Wll5aXozaHFseG84V015?=
 =?utf-8?B?V0hSakE0MG12S3ZHQW42NkdXU3g4WHZ5bi9wVlh4dUYwZTZLa2tzLzJBWVYz?=
 =?utf-8?B?REpRN1BFV0YvUzV1TEhPWE80eGg5V0dhWUJDUTFWUnNtNnNFaTdUZHA4bWdI?=
 =?utf-8?B?THdJcVUyc0tuTmZDOS9yanpZOERzRE1JQ3pRS0dDZ2tHOEhpZHpWTWxrV3Bz?=
 =?utf-8?B?UkVZQnlKZldWQ3I2R3BYSlBYS0ExYW43ZFY4NUZQZUU5SDZSMWtQbjkzcVhw?=
 =?utf-8?B?K1J4OVE2am5Nb1U3aFBmTU9kWmFLY2hWSGNnUEFUVUZFWmlKWnBRb0cyS1N1?=
 =?utf-8?B?ck1SSnM0bGtydHVhT2pTZ1lVbEhweGFDbTNjTERiRlJNV2FmdWhZUGdxYXA3?=
 =?utf-8?Q?QcMcYcxlA+dglVkwMflVmjl//rbiLbTgLzgpo6f?=
X-MS-Exchange-CrossTenant-Network-Message-Id: a2b2c6f1-a5fd-4d8c-f1c6-08d9000a4aac
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 12:30:45.3242
 (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: 9bcla2XYIUBMTYet9sQHF2KBsRoZvjXj8g4tE8S40wCMUwZbS5xVnIIWHmlyTVV/tz7we/hrCqG6z3H5CWUUXQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR03MB6216
X-OriginatorOrg: citrix.com

On Thu, Apr 15, 2021 at 12:37:20PM +0200, Jan Beulich wrote:
> On 15.04.2021 11:52, Roger Pau Monné wrote:
> > On Mon, Nov 23, 2020 at 03:33:03PM +0100, Jan Beulich wrote:
> >> --- a/tools/tests/cpu-policy/test-cpu-policy.c
> >> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
> >> @@ -8,10 +8,13 @@
> >>  #include <err.h>
> >>  
> >>  #include <xen-tools/libs.h>
> >> +#include <xen/asm/x86-defns.h>
> >>  #include <xen/asm/x86-vendors.h>
> >>  #include <xen/lib/x86/cpu-policy.h>
> >>  #include <xen/domctl.h>
> >>  
> >> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
> > 
> > This gets used only once...
> > 
> >> +
> >>  static unsigned int nr_failures;
> >>  #define fail(fmt, ...)                          \
> >>  ({                                              \
> >> @@ -564,6 +567,103 @@ static void test_cpuid_out_of_range_clea
> >>      }
> >>  }
> >>  
> >> +static void test_cpuid_maximum_leaf_shrinking(void)
> >> +{
> >> +    static const struct test {
> >> +        const char *name;
> >> +        struct cpuid_policy p;
> >> +    } tests[] = {
> >> +        {
> >> +            .name = "basic",
> >> +            .p = {
> >> +                /* Very basic information only. */
> >> +                .basic.max_leaf = 1,
> >> +                .basic.raw_fms = 0xc2,
> >> +            },
> >> +        },
> >> +        {
> >> +            .name = "cache",
> >> +            .p = {
> >> +                /* Cache subleaves present. */
> >> +                .basic.max_leaf = 4,
> >> +                .cache.subleaf[0].type = 1,
> >> +            },
> >> +        },
> >> +        {
> >> +            .name = "feat#0",
> >> +            .p = {
> >> +                /* Subleaf 0 only with some valid bit. */
> >> +                .basic.max_leaf = 7,
> >> +                .feat.max_subleaf = 0,
> >> +                .feat.fsgsbase = 1,
> >> +            },
> >> +        },
> >> +        {
> >> +            .name = "feat#1",
> >> +            .p = {
> >> +                /* Subleaf 1 only with some valid bit. */
> >> +                .basic.max_leaf = 7,
> >> +                .feat.max_subleaf = 1,
> >> +                .feat.avx_vnni = 1,
> >> +            },
> >> +        },
> >> +        {
> >> +            .name = "topo",
> >> +            .p = {
> >> +                /* Topology subleaves present. */
> >> +                .basic.max_leaf = 0xb,
> >> +                .topo.subleaf[0].type = 1,
> >> +            },
> >> +        },
> >> +        {
> >> +            .name = "xstate",
> >> +            .p = {
> >> +                /* First subleaf always valid (and then non-zero). */
> >> +                .basic.max_leaf = 0xd,
> >> +                .xstate.xcr0_low = XSTATE_FP_SSE,
> > 
> > ...here.
> 
> For now, yes. I'm introducing the constant because I think it wants
> using in other places too, to avoid using literal numbers. See e.g.
> 
>                 .xstate.xcr0_low = 7,
> 
> in test_cpuid_serialise_success().
> 
> > And then I also wonder whether this requires having any
> > specific values rather than just using ~0 or any random non-0 value.
> 
> I'm afraid I don't understand: There's no ~0 here and no random
> non-zero value - all other structure elements are left default-
> initialized.

Oh, I've worded that sentence wrongly I think. What I meant to say is
that for the purposes of the test here you could just fill the fields
with ~0 instead of using things like XSTATE_FP_SSE?

> >> --- a/xen/arch/x86/hvm/viridian/viridian.c
> >> +++ b/xen/arch/x86/hvm/viridian/viridian.c
> >> @@ -121,7 +121,9 @@ void cpuid_viridian_leaves(const struct
> >>      switch ( leaf )
> >>      {
> >>      case 0:
> >> -        res->a = 0x40000006; /* Maximum leaf */
> >> +        /* Maximum leaf */
> >> +        cpuid_viridian_leaves(v, 0x40000006, 0, res);
> >> +        res->a = res->a | res->b | res->c | res->d ? 0x40000006 : 0x40000004;
> > 
> > I think you would need to adjust this chunk to also take into account
> > leaf 0x40000005 now.
> 
> Hmm, yes, looks like I failed to take note that I need to re-base
> over that addition.
> 
> > I also wonder whether we should actually limit HyperV leaves. I think
> > it's perfectly fine to report up to the maximum supported by Xen, even
> > if it turns out none of the advertised feat are present, as in: Xen
> > supports those leaves, but none of the features exposed are
> > available.
> 
> Well, if the Viridian maintainers (I realize I failed to Cc Paul on the
> original submission) think I should leave the Viridian leaves alone
> (rather than handling consistently with other leaves), I can drop this
> part of the change.

As I understand this is change is partially motivated to avoid leaking
the hardware max number of leaves when not required. With Viridian
it's all software based, so we are not leaking any hardware details
AFAICT, and hence I would be fine with just using a fixed value.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 12:33:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 12:33:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111111.212429 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX1C0-0003IF-7y; Thu, 15 Apr 2021 12:33:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111111.212429; Thu, 15 Apr 2021 12: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 1lX1C0-0003I8-4k; Thu, 15 Apr 2021 12:33:56 +0000
Received: by outflank-mailman (input) for mailman id 111111;
 Thu, 15 Apr 2021 12:33:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX1Bz-0003I2-L3
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 12:33:55 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8b8714a2-f938-4946-ade8-44dbeec7d891;
 Thu, 15 Apr 2021 12:33: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: 8b8714a2-f938-4946-ade8-44dbeec7d891
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618490034;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=gPJ1DoyW9oArFci0OPl/MBWFoY/sflxknzK44uOhkW0=;
  b=Bs6FD/kxFoJyj4Ls/mfDHjfKmq9OYm5ePZEP+LUQM0gYP9mXjcYQJ7/V
   wCOJX1T50py2qgBxIo9u7+sb73TmDgmLEpT6Re/1iZlArFwPNWaQdWTAk
   7GV95hep0NVR4r2j2QUb+UoaN3XyKfvf+P7DefP/SPucrLXo/uznY6X44
   Q=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: pVEOgEhNR9s1+ii5gvrCAEIDgg/R3c4u9dRxF5dq7STB0JknjKmPFfo5yHzl3McU69LK7FH+R2
 47yAXWH24yF6MK4c3wHCHTk0X2j2r+jsTt4M2fH5OuzEthHDck0Ja5kzdNG3a1Fg3i+zHioFrm
 Z2PnSmP52OQDPkAURUy8wNXHEBXryyZ8/zaLNa93LjmA3WDkUT8UXjvaXrdUzP8AooYSKy0fEs
 GBEhUR76Z8lW/Gl3bYhdYpAXMhYiO2O5wBz4WXmDnWiEuODi5mwjh9AHNHoXILXBeXrM7RUWNZ
 XMc=
X-SBRS: 5.2
X-MesageID: 41501466
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:nEEayKhOTcNADHiQqPOzz2tSwnBQX/h13DAbvn1ZSRFFG/Gwv8
 qlkO0HkTr9jzgMUH8t8OrwXZWoa3Xa6JJz/M01NbCtQAHptAKTXeVfxKHlxCDtHDC7y/5F2c
 5bAtJDIfD5EFQSt7eY3CCWCNAlqePqzImNpcPzi0hgVhtrbaYI1XYFNi++HldtTAdLQboVfa
 DshPZvnDardXQJYsnTPBBsNIKvm/TwiJnkbRQabiRI1CCyjCil4LO/Mx+U0gZ2aVNy6Ioi6m
 TMnkjF4LyiuZiAqyP06mm71ftrseqk7uEGJcSXzuAJNz3ni2+TFeNccozHmApwncaCxxIBls
 LWrxIpIsJpgkmhGF2dkF/X8SnblB4l9n/lzjaj8AfeiN28QCh/B9tKhIpffBec70Y7ptlz3L
 hG2H+Du4NNAQnNmzn84NbURwhn/3DE2EYKgKoWlThSQIEeYLheocgD50tTCo4HBz+/55sgFO
 VoEcHA9PdbeV6XdBnizxFS6c3pWG8yEBeASlUDvcLQ0yE+pgED83cl
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="41501466"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JDiIXghETKyKrZ51rkUmk/tKz7+Rt8t8esnp25+2RpiTO1Po2edJ7C8wYNhcwaqlSrA5tR8q4NV7Fu7BaFVatXFU9CChM+B4UtPRFm0cs2NUXWrdQZ3cKd5roXMIei/VDpjKWALj/UG7aTf8Fnd3Mh5MFz8/820O19R8KMtlc6FOBFb+qFc6X/qTL6Rps/5+v44urWHDZ2cpQhfGiQLDCUfgGQgh2gdj504dkAjlsAKwXx8114FToHAb/IUowUnqIqyGKSq25yJdVfXKg9xe0+4D2T8ML9+0vBfOuWrrOxCeqsg1Ps36fYMAb6SV2MDymRw4gMpMhYqJ+ILchl/S1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=P0mjW4C4qQjRrAUqsf1uZsa6jGtT7ww02hPQnyPmLiQ=;
 b=CKQeNRrnphNyPZrmSLHZcCJJiM3RCsMViT+kBWj71APEPN3XLjX8METpOjp9RNnQJl8aJf1e3pXSd797G2jpYxrY7P08d4ua1I01D9DsFl6j3Us+OKTh1DkxrCcjdt70dCdFVPmJEijQtSdFHJgiXQalUs890rr4mWxUm/hy+I3F0zdvhYMT/Id08ablNqo5Str58U1LUgL7P/iMN6dlx10kDXnlSPf9lzZtcMO2P9t5p6ulY5ry0oN6oFnJs922vjf7gBwTqllVgIfku5DxgCOtbGMe0pSXr/+XqJHQAZzli7pz56U9OkPTZsI+c7iXZkp8DLBZg4vimV12a4tAPw==
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=P0mjW4C4qQjRrAUqsf1uZsa6jGtT7ww02hPQnyPmLiQ=;
 b=cdj02p3bUsSNmNEjvbnCT39wzmQXR0BMD7h+idD/BPNLiIvhoqWk+T4Gtd1jEQSGdTe7cul3ectIHJc96qSY4YjJYISOYViwuoiMzZ4BEH9vkXq8tq5cHME0o8NC409dEFHtXHVHY5JYmxfOhmKzE5oQmaVKNGRbyT1wVKJCk0I=
Date: Thu, 15 Apr 2021 14:33:47 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Andrew
 Cooper" <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 11/17] x86/CPUID: adjust extended leaves out of range
 clearing
Message-ID: <YHgyqyMf09MuFPOH@Air-de-Roger>
References: <255f466c-3c95-88c5-3e55-0f04c9ae1b12@suse.com>
 <0f04f568-e55a-ef20-aa97-fbb199dfae37@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <0f04f568-e55a-ef20-aa97-fbb199dfae37@suse.com>
X-ClientProxiedBy: MR1P264CA0023.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::10) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ea429f82-8008-41b9-2af0-08d9000aba38
X-MS-TrafficTypeDiagnostic: DM6PR03MB5066:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5066327B764315478D5329928F4D9@DM6PR03MB5066.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Z3xvDgx0Yrf9C3ohaSOUKp8IOMc9cth4JkkHMrTtq9xWBy6NA6tAD6KscaxzZUy3u8H52PodnbbZ1rSwWBGg/EnAeQurVvX/xUHpfC6BRqOy3WIsrLNIFSbxCVtJFhlMImboy6MJ10zpnd0Y3/aeCZDnAlZ32cvLw7OQOaMZ76SOPZHuWKkjwpZABilKkOdRP0qd7MhibC2JAxKQoq6Yi2L2VYz6gYSfEHc+omo/+Z3gGR1ozBgAlOYc63CooY72PuCXHLEn4Ofjg98sGcRgLqh5v2Y2sx4A3G14/WeaIGyNNA+J7mRtVyi68r/ugx4q8dvyz/Jk7fypjWu1IdOAJUFYaiQgStjg8pi4mqcpD/AZN9fZG71akCcj7z4JtXzsZcAnKXifxQKsLKJfNwzAfTaSJ+T58YTwlBn46SiqRjxQ2gTOnUsKBwODurZ5JGF5KxfQlCxpx3hurPeWS1S0St8TH6w1jIoJVsOqlQ5hG9UFq+7RXLG7vWpLrVBwjZZXMw24MjPqMDKHigwJMRZL2ozNkvNDEpbwQkSOonayyn4z6yZgT2cMdnkiSrdKGTUWBdXUwGrc07BWLX46pBK4J/lqVDzRSH053D35Bcb4OZU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(136003)(376002)(346002)(39860400002)(396003)(478600001)(6666004)(4326008)(8676002)(85182001)(8936002)(6496006)(86362001)(26005)(9686003)(2906002)(6486002)(66946007)(66556008)(38100700002)(956004)(66476007)(5660300002)(16526019)(6916009)(4744005)(54906003)(316002)(186003)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: ea429f82-8008-41b9-2af0-08d9000aba38
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 12:33:52.4363
 (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: 3exL0LfE7jGj4jf0hdMOApyBgFxHcbbE+bKyhbFcSGOVafbbJ42P+O9FwK+SHgoh18sv1Dtt4eaPsiGzt6p+qA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5066
X-OriginatorOrg: citrix.com

On Mon, Nov 23, 2020 at 03:32:35PM +0100, Jan Beulich wrote:
> A maximum extended leaf input value with the high half different from
> 0x8000 should not be considered valid - all leaves should be cleared in
> this case.
> 
> 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 Thu Apr 15 12:34:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 12:34:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111116.212441 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX1Cb-0003P8-LE; Thu, 15 Apr 2021 12:34:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111116.212441; Thu, 15 Apr 2021 12: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 1lX1Cb-0003P1-HS; Thu, 15 Apr 2021 12:34:33 +0000
Received: by outflank-mailman (input) for mailman id 111116;
 Thu, 15 Apr 2021 12: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 1lX1CZ-0003OX-Rw; Thu, 15 Apr 2021 12: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 1lX1CZ-0007ux-Ir; Thu, 15 Apr 2021 12:34: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 1lX1CZ-0002H1-9t; Thu, 15 Apr 2021 12:34:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lX1CZ-0002Zb-9Q; Thu, 15 Apr 2021 12:34: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=O0FpL2sOydAlGPmEeCPLdwuI7SEvx95Eyp4xPGCh4fI=; b=WqHMDY1IVBiAkbEtQEqanZXWZ6
	f/FOsLzD99qDs7nH5QonXelhyQmA4n8rWBI6PYi+FJy0TQK0K7UCHRxUFu88+HlDEteW94E/V8jmL
	544B+qgfItuhvf2v02PKu/9GQfTaMdfj5B+E/P11AfRMu97B3e3eSD/eWhhbcX7HUvYc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161159-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161159: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=2ad22420a710dc07e3b644f91a5b55c09c39ecf3
X-Osstest-Versions-That:
    ovmf=c055be5b82d3591c531ced88965523dfdbe1b9ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 12:34:31 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 2ad22420a710dc07e3b644f91a5b55c09c39ecf3
baseline version:
 ovmf                 c055be5b82d3591c531ced88965523dfdbe1b9ae

Last test of basis   161141  2021-04-14 16:40:19 Z    0 days
Testing same since   161159  2021-04-15 05:25:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   c055be5b82..2ad22420a7  2ad22420a710dc07e3b644f91a5b55c09c39ecf3 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 12:46:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 12:46:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111123.212455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX1O8-0004XM-PF; Thu, 15 Apr 2021 12:46:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111123.212455; Thu, 15 Apr 2021 12:46:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX1O8-0004XF-MG; Thu, 15 Apr 2021 12:46:28 +0000
Received: by outflank-mailman (input) for mailman id 111123;
 Thu, 15 Apr 2021 12:46:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX1O7-0004XA-7T
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 12:46:27 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b1619926-a3a7-41b0-a306-6a779a20f591;
 Thu, 15 Apr 2021 12:46: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: b1619926-a3a7-41b0-a306-6a779a20f591
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618490785;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=TageWBaQNcow6iilb7TjdboFTKCMkZAAfpQa21XZHOc=;
  b=TJKTVRdespWmQ9ZkP6oTRgl2HNHiNhIhaBwtYk5r3zKNOfEzTc8UPIMC
   aLziyoTiJB+Nxar5nQfrv4yzEnmDioFpKF94W4TQMVhsJA3fBCpUZTXlf
   rCEDSzIvj9QEAAtfoXwysN2QdJ1UsiPYuBZAgY+fkAE8LVpmNvO9DxVgp
   U=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: l7rovpN1BuNLo/b/wYG0JsZnD2oHJFh3qehThdlOmyrG3oj8gfPmEGZuePIIXZPuR/8xDPsuqb
 r7HQASy/sQyRHnm1SCtebjybc1SKfT2P32JbgSqwmgeSyhZT6WIAtQyVksNAcJ3va8HTdE4chw
 WhLJDcQX3ApQtW4yQqphcJizcxp2cAtK0MPCKqHAwD1MFk0W9zgA4DiE6JsNXucTjwfYZXmz/w
 AJCEfoZEMyfDTXnbTjhSkOFUe2NT7QtFNXZJ4ggoRaPKA55mCTrs1Tiot/6HTfFZbsC/sOMhz8
 uBg=
X-SBRS: 5.2
X-MesageID: 41669514
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:tl7qrqzhVN2H16e4C/rpKrPxnO4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmqJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheTysd07o
 0lSaR3DbTLYGRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRCp1IxS0RMHf9LmRdQg5aCZ0lUL
 ed/NNAvTq8eXIRB/7LfEUtde7FutHNidbaehYAHREq802jijmv5b78HXGjr2ojehlIxqov9n
 WArhzh6syYwoqG4zL/90uW1ZRZn9P91sBObfbjtuE5Iijh4zzYBrhJdKaFuFkO0YSSwXYs1O
 LBuhIxe/l0gkmhAl2dhTvI903e3C0163nkoGXo8UfLhcDiXjo1B45gqOtiA2LkwnEttt19z6
 5Htljx3/E8bWKi7VbAzuPFWB1wmk2/rWBKq59qs1VlXZYDc7gUlIQD/SpuYeY9NRjn44MqGv
 QGNrC72N9qdzqhHhTkl1gq6tmtUnMvJwyBU0gPt+eEugIm4kxR/g82wtcSkWwH8494Y55Y5/
 7cOqAtr71WSNQKBJgNSNspcI+SMCjgUBjMOGWdLRDOE7wGAWvEr9rS7K8u7O+nVZQUxPIJ6d
 v8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwbz4Rlu5XnLYCbcRGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJgwxD+YZ9PMnMTOfdl++oTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8tRz72CMJc7l26e3PxjRTLMkmdOHDXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHljv8UNDQ
 5DCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PgQcLNkjzYIsSotn3QxEX4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dkWXkmUUv3DPa5sHgKWM6YPEd/oDf9gbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgqocVCuHZf9xVmxyqPsZQlHLauSyn1IISb0peewTrfd+cgA4oSTYRrE
 Z26bUjjL2JnivqFXEym90iMFpHaH2eBZVPCAjtXvQSppnbPCVLCUuajz2TjB8+Pk7n7V8biG
 DaISqIQv3TGVZGtndE0qHlzUNsegymDjFNQ0E/lbc4OXXNu3513+POXKa13meLQnYpw+0WMl
 j+EHAvCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N5vJ3Gm2FYGOnaYaPvNd8Zp/LuryuusTXe
 /3QX7SEBrIT8cSnyCFrHcsPyd57EQ+mfTzwRv/8SyW2mU8Dfe6GiURe5grZ/Wnq07qSPaD3M
 8n0ZYbve6sPn7wbdDD46fNdDJHIg7Sp2nzb+xAk+EhgYsC8J9IW7/cWn/08VsC+jMUBsL9jl
 kfT6R2+6qpAP4mQ+UiPwZiumM0n9GOJnYxugP4AuUCbUgg5kWrSu+h0v7tk/4TGUWPqwv7BE
 mH/wBc9/nDWTGf1bRyMdNGHU1mLGw94m9l5uWMasn5DxirbfhK+DOBQzWAWY4YbKiOArMLqB
 lmp/mOgu+MbiL9nCTdpyFyLK4L02GpR6qJcU+xMN8N19yxIlKXhKS2pOa1kTfsUDO+L30iur
 ctTz1YUu1zzh84jIM21SCuSqv45mId+mEung1PpxrKwYip4GDSAEdcFxbW668mBAVuDg==
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="41669514"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eme6SZsiIYGdX83lgqIgG9edYmv3oQKhRVF1mjtWzUnokdy3VqhLI25gCv6AVZxVyUqKWYwtxkEobUu2rY97o7j3UeEw4yT1qPzjGYxioqTMiXJ9MGVbKM238oS+hw9yKNzgFsA5hDhkmJmi12xBRhDXF7Y/niY71GIIF3uLlVqR6QwKaGd2Bq4aQfETX3fNIZD9JjZvj321AcqdISYScIWu2OzBZpe+3z6tOnh9ndewawOiYAH3uFAEoo+UKL6XQfGU87Y72lm03iuopxelCxeOwY4WmarNkshLFVl15ZOPWL/dotALV8iHLeO3tp/bRvcc3NVYvR5lzXQJv3dexA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0HVj338G8RxlxPsXCf5ua0ZvTgrAv3ErtyYYEVOinVA=;
 b=N4rNg0snP5+3zwPgNceC59LhyMcnDESRgvdJK49yxYpFN8XrA4jc/yQyAMQbb3THiKMiYc8l0xtPmPCnNKOzxo1UGFYR6m4OIjYCyi5oLJt1sSW483dacNgl+ngrloQVWVH+EZ4vhCV1q0LXmU5EXO6KBIklamvhdFqbi1+wgIaPwwPAwGuxm9+QhElBPmZL+lloowTKzTzPxqJFe8mMxQeRhaTGV9vuMVv/rC4vMieghiFPlPiuSxkhwyMsTD4O5FeClIF6ljwlh2xIQE42tjaZat/wKsCkm7wGusHvomSf9/xyih06t3UwWqabhSLpucwl23mkM9llsAg6Rb0Jpg==
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=0HVj338G8RxlxPsXCf5ua0ZvTgrAv3ErtyYYEVOinVA=;
 b=kERtZ1m80rgBLlf6S2REL6XqYvP7kI6B6hA08nZN8TdKf5nkJOHXp3Kwhy74htCGTvSJRWgzmMu6iMzbcgSehGZUI7zpGRNJJ8RIJRVUa6/bZlhoez3FqTFt1CKO47s/q6pz5/gAuz5ZvI1S1x3n+R5lQqm5OfApkpgX/u1TSdE=
Date: Thu, 15 Apr 2021 14:46:15 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 01/23] lib: move muldiv64()
Message-ID: <YHg1l8DIMymj8PmF@Air-de-Roger>
References: <c53a6802-8bae-1dc6-5ac4-6238e122aaa4@suse.com>
 <d798d6c4-fbbd-966d-df22-42a22ed6b260@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <d798d6c4-fbbd-966d-df22-42a22ed6b260@suse.com>
X-ClientProxiedBy: AM6P192CA0106.EURP192.PROD.OUTLOOK.COM
 (2603:10a6:209:8d::47) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2fb792fc-725c-407e-71a5-08d9000c77ec
X-MS-TrafficTypeDiagnostic: DM5PR03MB2779:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB277937E0C37EE25FCA411E2B8F4D9@DM5PR03MB2779.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4125;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: rH7DV68tsRWk1m1alI+JWkANBl0aRFlsCG4EPN+CKfJGtuFGP2EeTrdEUkPjXN6r8wqKeSPfCtEx9vyTbX+6i2Dx6hqDbAe2WBEjhK59hWvaCzXTyk2hexs2U3SNzMMimHXvKDx9a/YRnzKYtvMTkRTBfkWLEY8hOzxq1NWpuGrixwIaEptAOQq8HJLbjaPF8Z+aijZ7kV0oRwZf2cnm49vQPlnrNC6Lj+nIfjHoLXaPV8XxfeDSfI03O20C1u5ZOheDY3zNQfeZg64BvOnFLApAf9ApUVKZdDTJwlmdfkgXzWmcdRVa2CFHCIZ7wiaVtJLEvCA1/4y0twC/NrzvkcU5Dsq9X2oj97SI1AT23xCApFfhtrlX6TyTDYs06S9vq52QY+WoTgX4hNhDDyUQyKrZgBaoqcvLwKr6QJ0YC8EWDIsjuwgKAjqOQrlHZL3f2976fAh6bsX794RQkQ+U9onhWS1MllhV6mO82Nv3384HvpARRdeFCvPlFNgtXdHUzOCjDPEFnyovW8PxEgn6MNPc3jgIxMdkTpG0RMpZ3i2c1wRldLPdxAz9cu4dOZ4JxcAUwPpYR7TlD3dTdJUxF+Qb2LumCm8lEjqcr4epZlI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(39860400002)(376002)(346002)(366004)(396003)(136003)(6496006)(16526019)(2906002)(66946007)(478600001)(956004)(66556008)(66476007)(4326008)(33716001)(6916009)(316002)(38100700002)(8676002)(6486002)(4744005)(26005)(54906003)(6666004)(8936002)(85182001)(9686003)(5660300002)(186003)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?ekswMVdZZGxQOUFFZi94dz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 2fb792fc-725c-407e-71a5-08d9000c77ec
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 12:46:20.2183
 (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: u4xWf7quuO85kIBK9qiSeLQOiKPR72c0C11Mms9BXaIPZ9Q2fzQi8E1yCkUfKZTnrgVkou48sr5tTHl3uyaQxA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2779
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 12:19:16PM +0200, Jan Beulich wrote:
> Make this a separate archive member under lib/. While doing so, don't
> move latently broken x86 assembly though: Fix the constraints, such
> that properly extending inputs to 64-bit won't just be a side effect of
> needing to copy registers, and such that we won't fail to clobber %rdx.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

The x86 part LGTM:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 12:48:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 12:48:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111127.212468 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX1QI-0004gT-6x; Thu, 15 Apr 2021 12:48:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111127.212468; Thu, 15 Apr 2021 12:48: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 1lX1QI-0004gM-3G; Thu, 15 Apr 2021 12:48:42 +0000
Received: by outflank-mailman (input) for mailman id 111127;
 Thu, 15 Apr 2021 12:48:40 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6tgI=JM=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lX1QG-0004gF-Oq
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 12:48:40 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 19b07e72-9be5-457e-b23f-57d01c48b1e1;
 Thu, 15 Apr 2021 12:48: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: 19b07e72-9be5-457e-b23f-57d01c48b1e1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618490919;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=ekwyJseyljH2XbpIJ3tMAlAffd8mbZvroe6B+XGiLvg=;
  b=KBpq0kJrIeSbVddrTiWWiGZVk4YtrEw5twmUkJZghk85CFQwHXLSH+Kk
   OGx32jb/m0TCH7Hs6cO+VCCdwl0Cl3qIH59ulexbPOaxV504u7m3mhnIB
   tZRnEqv45f5MRUTPjA+2kCqNC2y/BVooVUckP0SqXHLEkLkPy2cDCy0Re
   0=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: TkUbduWemakaSRtMxGs9BArr25Pf5Lu//IfnaiWoPZu8tF8QGVoOqg2hPr7guA6o2bEK0ELdBe
 MmxB7+hFGEA8vPTifsLlNtuo9EK3+Efuqn2nMAX414FyeXm3tysaiuuK01gZkGP2pMc/lgzvTz
 S+IRngrvq3KqRXppHKWFg3WZhq4JJfYXn0oOKyRjJDBeAyzYq1T3eRommhExrrlWelM9Nsfjut
 8FEo/AHAdK8YyYoIMYUuue3UblF32Fd5Vy8OXkBaWbK91bHeTNm+OJZ9jg65oF4BWzjym2d7WF
 odQ=
X-SBRS: 5.2
X-MesageID: 41669640
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:kgFCqq+UTwLIdztgTqNuk+F1cL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmyybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUHD38Zn/+
 Nbf6B6YeecMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsKV4hLxW5Ce2OmO2dxQxRLAod8MZ
 Ka6NZOqTbIQwVpUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbySw9BEYTj9J3PMe4X
 HI+jaJm5mLntOa7lvn12HV54lLg9eJ8LV+LeGFl8R9EESVti+Gf4JkMofy2wwdgObq01oylc
 mJnhFIBbUI11r0XkWY5STgwBPh1jFG0Q6Q9Xa9jWH4qcL0ABIWYvAx/L5xSRfS50o+sNwU6s
 sitAj4xvkneC/opyjz68PFUBtnjCOP0B4fuNUekmBFVs8mYKJRxLZvjH99KosKHy7x9ekcYY
 9TJfzbjcwmE2+yU2rUpS1GztCqQx0Ib2y7a3lHkMmU3z9KpWt+3ksVyecO901wha4Vet1q4f
 /JPb9vk6wLZsgKbbhlDONEesevDHfRKCi8f166EBDCLuUqKnjNo5n47PEc4/yrQoUByN8XlI
 7aWF1VmGYucyvVeIOz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykuO7ys9vQfHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYk8pss7YVSTucjGQ7ea9tDzQbL2Hv7AADwkUmTwDj
 8oRz7oPvhN6UitRzvWmx7Ud3TxelHu3J55HaTAltJjjbQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eaqACNjCL1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXWhT2XCANyJuVs++Kn
 8Zm31HvYaMa7CAzyErDNyqdkiAiWEImX6MR5AA3oqO+NniYZF9Kpo9QqR+GUHqGnVO6EdXgV
 YGTDVBal7UFzvoh6ngpocTHvvje951hxruB9VVp3LZvUC1vtouWXMfYj6rXaes8EQTbgsRom
 c0374UgbKGlzrqA3A4mv4EPFpFb3nSPKhLFz2fZIJfmqnifSZ5SWviv03dtzgDPk7Rs2kCjG
 3oKiOZPdXGGEBUtHxj3qH2y19sbWmGc0Vsand1jJ1lGQ39ywRO+N7OQpD2/3qaa1MEzO1YCj
 3DbDcICi5Fxty81neu6Xy/PERj4q9rEv3WDbwlfb2W52ikL5eQk7oaW9VO+ox+CdzouugXcO
 6WdgOPNgnkA+cx1wH9nAd9BABE7F0f1d/40hzs62a1mEMlCf3JOVJ8WvU1Jcqf42WMfYfA7L
 xJyfYO+c2+PWX6ZoTYleX5bztfJgjSpmDzZecyspxQtb8zsrw2P5Sza0q+6Fh3mDEFaOHznw
 ciZY4+xpbrEIpmZdYTdCJU5UBBrqXFEGIb9ijNRtYjdlQshULBN9yH47D0uaMia3fx0DfYCB
 26yWlh5P/LUCuI6K4CB48xKWpQblIg6H4KxpL1S6TgTCGrffpE5ly0LzuUd6JcUrGMHdwr31
 tHyuDNu++cbCzj3g/M+RN9P6JV6m6iBee/GhiFF+IN09u0Pz238+eXyf/2qDf8Uj2gbUsEwa
 VDaEwLd8xGzgAYs7df6Fn7doXH5mQ/k1Vf5jl7llninqieiV2rY31uAEn+mZVZXT5aL36Sq9
 /KmNLojEjA3A==
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="41669640"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BjLqw3sIthSMQrSHNCBv/bGJlyKrNnCo3oeTGTIEQpGN+Dwa3MvQc3ec+0cu0C6uexjpO2e+AwCN3BNCXqbzILu2WTT2dVIcnUHbIGsZB3ZPltRWwYXqbJvMlgqDN34kIYEltDOXVF4zJkKgCuC+/f6EFoxwP8P5LeyqipmMc7SVDAGwgAPTr+B/kOrF+OYmp4L+FBXtC8UAsOrO3/r1Xdv97WSmbeeE4IDYsyzhae+HiLpHuYPer4VQpbJuMMZwSdXTX8KCSIRGW3HE00APz8bqqF3gbFbv20Wi6zf+CGKQaSXXVw9R9K940z0vL/BzUK0Tx+xARDCRe4QpCb+3bA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FVC9u1l/9s+vS6XdXeRhEWRzR2M/Rz7i3vJKa57ewTM=;
 b=hUbUIEbeeGCUdWiyK0kBQgQHDJPkvRWZxpRBNXXWIsWUbfL9Jz2SZ0HvBaKRTS+phi+OV5w7urBGNzeC434dGxmQJXovagzWk8k1mHn1qNlI0Ksd7ayNBeMO99McE8H1z7L0j5+zhEUVdVlb7D4flbN14IOypF+GLTY7vAimGCB8ABjAf0hmHYsxsU9M/UTiq3GGHo5sbDi2EkBhmtHxQ3wVkI/Z91WnJTs5SxF0+eC5RczisicnHrVov72EFiRlO9qkDiCATgEEFS+lEOYPpzoZA5T9kaz1uwzlXbMB1Enu9WhltWZXBCZEZb5o7PEJ80wsQtDib26MwNvuBPdURg==
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=FVC9u1l/9s+vS6XdXeRhEWRzR2M/Rz7i3vJKa57ewTM=;
 b=ciZVZtrXWZwRXpRun9R98OQ25mVHHE2hLijbbNA81dSrqRLKSCvXghCG8hVIZQkFv+UmOiprqY4VI2d0n7S6/e7qGvlQaLSSg05f1qa3OqiLwJoyaClhYEuLFBaOZi1TsRDFRb9RTbfK8wFFV7/dxydCVSwYGaKgszGc0VTglyU=
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <255f466c-3c95-88c5-3e55-0f04c9ae1b12@suse.com>
 <0f04f568-e55a-ef20-aa97-fbb199dfae37@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 11/17] x86/CPUID: adjust extended leaves out of range
 clearing
Message-ID: <b8960b03-4671-8653-2897-7d1b116e599b@citrix.com>
Date: Thu, 15 Apr 2021 13:48:22 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <0f04f568-e55a-ef20-aa97-fbb199dfae37@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0268.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:194::21) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8b509301-1ee0-4719-8ce1-08d9000cc479
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5534:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5534FFA69939BE7D07199792BA4D9@SJ0PR03MB5534.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: tAnrvYaLE9sC5uxGbFhKWeuxlaT5wM3pjy/FVagY07BLp5RhEaKWrTmfXsV+MJQt9IWDFl4Gmv6NrJUoxsp0ZEadtv9Yb4I9bgx8PdCHg83UI62tJnwZAWdorZcoJW0hyIwdFjs5PgDuKuPRZfS3uCmGkym4RmWsWJKAOKyFw12NJkYoi0cHFVBE4vO08uH4/9PhDRaQ5mfhdO/TDmh3YA8Rteok20WRNQD2O79vy2vLpOZ3OJpxzCcxD4nOXh6lZNiPrZrj1YvEG2fsm/n1gkq82rvUKD+bekAc7LBPbnWBNu1r9j4LU/AqPgi3CyDLVxH7Y3dJKoIAu5K0grGPyZpN9Ltu+5y5Z2qklGV2icJtYgxd+p0xuTNklHMyE8FyWSCyS+Yzd4S7Ie9dskycy9HQbbYZKm2yCZEs/D9NCOzcdm32jYQofJPkHPlAZWoBYnrJyb3I+jORa93+4k8H0KQt3OFWnFh7MpycdCJkhZy03GeQQmh6SF2sQ+EHOhjtsoBJR7YBK49i+Ck+vviE26YkckIJcvVzpJlt7b70unBIOIvvsAfEkzwkE/xz7Zxo8dchgGrzEt8956N/3QS2mHwn2ytdxheE13pqRCG/gJkiSKqeFBJV5fAhe99jxX2sH3kZwOykw1GpljEHYsyDT4r0xDmFjTz3OipjbpHQwCQxuSqPd4qgruHwhs1r2196
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(39860400002)(346002)(396003)(366004)(86362001)(31686004)(2906002)(38100700002)(186003)(54906003)(16576012)(26005)(6666004)(110136005)(36756003)(2616005)(956004)(6486002)(316002)(8676002)(66476007)(66556008)(16526019)(53546011)(107886003)(8936002)(4326008)(31696002)(478600001)(5660300002)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?DT0FuYzCtIQ6p+kJ5TQh9+5eSxP/l4PNfMHd0ik?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 8b509301-1ee0-4719-8ce1-08d9000cc479
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 12:48:28.7782
 (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: leFX3v2cWAXVZQ1v7Q0wmjieqNWiYJ4GV2EcdhPUoXQZhubrznKG+xM8TGmM/yJOjz2nChO6Yg9nN2ReT+kizLBJzZ6Muw+cCp8XD5Db91s=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5534
X-OriginatorOrg: citrix.com

On 23/11/2020 14:32, Jan Beulich wrote:
> A maximum extended leaf input value with the high half different from
> 0x8000 should not be considered valid - all leaves should be cleared in
> this case.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v2: Integrate into series.
>
> --- a/tools/tests/cpu-policy/test-cpu-policy.c
> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
> @@ -516,11 +516,22 @@ static void test_cpuid_out_of_range_clea
>              },
>          },
>          {
> +            .name =3D "no extd",
> +            .nr_markers =3D 0,
> +            .p =3D {
> +                /* Clears all markers. */
> +                .extd.max_leaf =3D 0,
> +
> +                .extd.vendor_ebx =3D 0xc2,
> +                .extd.raw_fms =3D 0xc2,
> +            },
> +        },
> +        {
>              .name =3D "extd",
>              .nr_markers =3D 1,
>              .p =3D {
>                  /* Retains marker in leaf 0.  Clears others. */
> -                .extd.max_leaf =3D 0,
> +                .extd.max_leaf =3D 0x80000000,
>                  .extd.vendor_ebx =3D 0xc2,
> =20
>                  .extd.raw_fms =3D 0xc2,
> --- a/xen/lib/x86/cpuid.c
> +++ b/xen/lib/x86/cpuid.c
> @@ -232,7 +232,9 @@ void x86_cpuid_policy_clear_out_of_range
>                      ARRAY_SIZE(p->xstate.raw) - 1);
>      }
> =20
> -    zero_leaves(p->extd.raw, (p->extd.max_leaf & 0xffff) + 1,
> +    zero_leaves(p->extd.raw,
> +                ((p->extd.max_leaf >> 16) =3D=3D 0x8000
> +                 ? (p->extd.max_leaf & 0xffff) + 1 : 0),
>                  ARRAY_SIZE(p->extd.raw) - 1);

Honestly, this is unnecessary complexity and overhead, and the logic is
already hard enough to follow.

There won't be extd.max_leaf with the high half !=3D 0x8000 in real
policies, because of how we fill them.=C2=A0 Nor ought there to be, given t=
he
intended meaning of this part of the union.

I think we simply forbid this case, rather than taking extra complexity
to cope with it.=C2=A0 Approximately all VMs will have 0x80000008 as a
minimum, and I don't think catering to pre-64bit Intel CPUs is worth our
effort either.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:12:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:12:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111132.212480 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX1mw-0007Lc-5H; Thu, 15 Apr 2021 13:12:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111132.212480; Thu, 15 Apr 2021 13:12: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 1lX1mw-0007LV-2C; Thu, 15 Apr 2021 13:12:06 +0000
Received: by outflank-mailman (input) for mailman id 111132;
 Thu, 15 Apr 2021 13:12:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Y61X=JM=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lX1mu-0007LQ-NG
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 13:12:05 +0000
Received: from mo6-p01-ob.smtp.rzone.de (unknown [2a01:238:400:200::6])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 50c3bbea-705f-48c5-85fc-356d25b6e22e;
 Thu, 15 Apr 2021 13:12:01 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.3 DYNA|AUTH)
 with ESMTPSA id g00c91x3FDBf0xb
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits))
 (Client did not present a certificate);
 Thu, 15 Apr 2021 15:11: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: 50c3bbea-705f-48c5-85fc-356d25b6e22e
ARC-Seal: i=1; a=rsa-sha256; t=1618492301; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=ftXG1W7EjNc2k8vl7lwEqLQfe0sf1b6BXpAX9qlA10DuBkWCnkmhy5iy/8Ghnx06CC
    FbAx9dZ7w6FcmyddOf3J3JLL8QGuJiiiwilgmZ1N8A8NQ/vdz9m1+DTqK3nNdLLZ7UTG
    ciOkI+D07QyIsHvYyIAhHKm/pHOIavjKWCBSaqEH3CaDZlyO6v4WTWFlh5ZdLnYX3hln
    kSJFMILSO1cLRg/VavPxKswVJgLCc7hXpRncFdmva4kWmRxszkJbl6fpYUjQRcQMfI0O
    +E5ygOd9+IKdntsuxvzoSd5P94uutMH+8IWorHEnPPolR7Ju4VoCVinEq/4SN6J/4hwa
    JJBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1618492301;
    s=strato-dkim-0002; d=strato.com;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=4pWkBeNVVN7WJH/yySZwACbmsXWYMXdRFWGMZIINQC8=;
    b=O+qRRDbg7ojNnwADb6NUBiV8aL3V6ciOwkjNwe2sPDZQR15J77P72QwfMWZEIV8/cV
    AYfqq/RWfhTcL3W5sorTMFbFUQxAg73amwIcoU+s+wip41nH5+J92Kv2rwEBqqc896QC
    XBXaFNIlzUG4p+Cn6Tp81jc/Ojpv67zF7ZTjN32V9g1pj6o0/eeLuHVqD+Mk6uIuEClL
    d+PCdEPjewei8xDe2IlZtifPpS/vjveDj/Q/7H345eJz4bPmT639evIp7kQaH3cAX16H
    /Qm5jRAnQdpiTnjJOjxO7I2uGnd2RxSF13JmIrbKcQroG/1NSgz3DJe0I0mXU1gqJipl
    br9w==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1618492301;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=4pWkBeNVVN7WJH/yySZwACbmsXWYMXdRFWGMZIINQC8=;
    b=DvFcvJ8wo8/HKG10SyaQVUPxvvdSD9xmgwA6EuwbCcPTU5c5V3K0VnfaowR2xBZkMx
    Gbub2HiNIC3hEr4iIAdE3cKP9qWop3H+oUUmOrwYaJMVPk4ClIRGKQpL9KeSZJNUGjSO
    W0NuoMB39RxsGjqV3H6vI+NRdg8VtuN3LXIgQBsC6YrqKHKYc49ufDkDyfMMKN0/0jbs
    UkvRMGfzDd+ikZANfgX8CbCRUUAhXqzS1g7uPJsuldbBAVWbqXx/K7kWgU3/H3sfgUp5
    NQYkL2+9s/SZ6Q50qbKD7v3VyJWqZ6gOxVid8U6uKF/sSBCTkBnNkU1NjKfR3wlfduTe
    muRA==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzBW/OdlBZQ4AHSS3m8g"
X-RZG-CLASS-ID: mo00
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	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>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v4] tools: create libxensaverestore
Date: Thu, 15 Apr 2021 15:11:38 +0200
Message-Id: <20210415131138.8709-1-olaf@aepfle.de>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Move all save/restore related code from libxenguest.so into a separate
library libxensaverestore.so. The only consumer is libxl-save-helper.
There is no need to have the moved code mapped all the time in binaries
where libxenguest.so is used.

According to size(1) the change is:
   text	   data	    bss	    dec	    hex	filename
 187183	   4304	     48	 191535	  2ec2f	guest/libxenguest.so.4.15.0

 124106	   3376	     48	 127530	  1f22a	guest/libxenguest.so.4.15.0
  67841	   1872	      8	  69721	  11059	saverestore/libxensaverestore.so.4.15.0

While touching the files anyway, take the opportunity to drop the
reduntant xg_sr_ filename prefix.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
---
v4:
- drop xg_ prefix from filenames (jgross)
- drop sr_ prefix from filenames (jbeulich)
v3:
- repost in time for 4.16
v2:
- copy also license header
- move xg_nomigrate.c
- add size(1) output to commit msg
- remove change from libxl_create.c

 .gitignore                                    |   2 +
 tools/include/xenguest.h                      | 186 ----------------
 tools/include/xensaverestore.h                | 208 ++++++++++++++++++
 tools/libs/Makefile                           |   1 +
 tools/libs/guest/Makefile                     |  11 -
 tools/libs/guest/xg_offline_page.c            |   1 -
 tools/libs/light/Makefile                     |   4 +-
 tools/libs/light/libxl_internal.h             |   1 +
 tools/libs/light/libxl_save_helper.c          |   1 +
 tools/libs/light/libxl_save_msgs_gen.pl       |   2 +-
 tools/libs/saverestore/Makefile               |  38 ++++
 .../xg_sr_common.c => saverestore/common.c}   |   2 +-
 .../xg_sr_common.h => saverestore/common.h}   |  16 +-
 .../common_x86.c}                             |   2 +-
 .../common_x86.h}                             |   2 +-
 .../common_x86_pv.c}                          |   2 +-
 .../common_x86_pv.h}                          |   2 +-
 .../nomigrate.c}                              |   0
 .../xg_sr_restore.c => saverestore/restore.c} |   2 +-
 .../restore_x86_hvm.c}                        |   2 +-
 .../restore_x86_pv.c}                         |   2 +-
 .../xg_sr_save.c => saverestore/save.c}       |   2 +-
 .../save_restore.h}                           |   2 -
 .../save_x86_hvm.c}                           |   2 +-
 .../save_x86_pv.c}                            |   2 +-
 .../stream_format.h}                          |   0
 tools/libs/uselibs.mk                         |   4 +-
 27 files changed, 282 insertions(+), 217 deletions(-)
 create mode 100644 tools/include/xensaverestore.h
 create mode 100644 tools/libs/saverestore/Makefile
 rename tools/libs/{guest/xg_sr_common.c => saverestore/common.c} (99%)
 rename tools/libs/{guest/xg_sr_common.h => saverestore/common.h} (98%)
 rename tools/libs/{guest/xg_sr_common_x86.c => saverestore/common_x86.c} (99%)
 rename tools/libs/{guest/xg_sr_common_x86.h => saverestore/common_x86.h} (98%)
 rename tools/libs/{guest/xg_sr_common_x86_pv.c => saverestore/common_x86_pv.c} (99%)
 rename tools/libs/{guest/xg_sr_common_x86_pv.h => saverestore/common_x86_pv.h} (98%)
 rename tools/libs/{guest/xg_nomigrate.c => saverestore/nomigrate.c} (100%)
 rename tools/libs/{guest/xg_sr_restore.c => saverestore/restore.c} (99%)
 rename tools/libs/{guest/xg_sr_restore_x86_hvm.c => saverestore/restore_x86_hvm.c} (99%)
 rename tools/libs/{guest/xg_sr_restore_x86_pv.c => saverestore/restore_x86_pv.c} (99%)
 rename tools/libs/{guest/xg_sr_save.c => saverestore/save.c} (99%)
 rename tools/libs/{guest/xg_save_restore.h => saverestore/save_restore.h} (98%)
 rename tools/libs/{guest/xg_sr_save_x86_hvm.c => saverestore/save_x86_hvm.c} (99%)
 rename tools/libs/{guest/xg_sr_save_x86_pv.c => saverestore/save_x86_pv.c} (99%)
 rename tools/libs/{guest/xg_sr_stream_format.h => saverestore/stream_format.h} (100%)

diff --git a/.gitignore b/.gitignore
index 1c2fa1530b..95c5c02039 100644
--- a/.gitignore
+++ b/.gitignore
@@ -147,6 +147,8 @@ tools/libs/light/test_timedereg
 tools/libs/light/test_fdderegrace
 tools/libs/light/tmp.*
 tools/libs/light/xenlight.pc
+tools/libs/saverestore/libxensaverestore.map
+tools/libs/saverestore/xensaverestore.pc
 tools/libs/stat/_paths.h
 tools/libs/stat/headers.chk
 tools/libs/stat/libxenstat.map
diff --git a/tools/include/xenguest.h b/tools/include/xenguest.h
index 217022b6e7..feb20dc375 100644
--- a/tools/include/xenguest.h
+++ b/tools/include/xenguest.h
@@ -24,9 +24,6 @@
 
 #define XC_NUMA_NO_NODE   (~0U)
 
-#define XCFLAGS_LIVE      (1 << 0)
-#define XCFLAGS_DEBUG     (1 << 1)
-
 #define X86_64_B_SIZE   64 
 #define X86_32_B_SIZE   32
 
@@ -433,189 +430,6 @@ static inline xen_pfn_t xc_dom_p2m(struct xc_dom_image *dom, xen_pfn_t pfn)
  */
 struct xenevtchn_handle;
 
-/* For save's precopy_policy(). */
-struct precopy_stats
-{
-    unsigned int iteration;
-    unsigned long total_written;
-    long dirty_count; /* -1 if unknown */
-};
-
-/*
- * A precopy_policy callback may not be running in the same address
- * space as libxc an so precopy_stats is passed by value.
- */
-typedef int (*precopy_policy_t)(struct precopy_stats, void *);
-
-/* callbacks provided by xc_domain_save */
-struct save_callbacks {
-    /*
-     * Called after expiration of checkpoint interval,
-     * to suspend the guest.
-     */
-    int (*suspend)(void *data);
-
-    /*
-     * Called before and after every batch of page data sent during
-     * the precopy phase of a live migration to ask the caller what
-     * to do next based on the current state of the precopy migration.
-     *
-     * Should return one of the values listed below:
-     */
-#define XGS_POLICY_ABORT          (-1) /* Abandon the migration entirely
-                                        * and tidy up. */
-#define XGS_POLICY_CONTINUE_PRECOPY 0  /* Remain in the precopy phase. */
-#define XGS_POLICY_STOP_AND_COPY    1  /* Immediately suspend and transmit the
-                                        * remaining dirty pages. */
-    precopy_policy_t precopy_policy;
-
-    /*
-     * Called after the guest's dirty pages have been
-     *  copied into an output buffer.
-     * Callback function resumes the guest & the device model,
-     *  returns to xc_domain_save.
-     * xc_domain_save then flushes the output buffer, while the
-     *  guest continues to run.
-     */
-    int (*postcopy)(void *data);
-
-    /*
-     * Called after the memory checkpoint has been flushed
-     * out into the network. Typical actions performed in this
-     * callback include:
-     *   (a) send the saved device model state (for HVM guests),
-     *   (b) wait for checkpoint ack
-     *   (c) release the network output buffer pertaining to the acked checkpoint.
-     *   (c) sleep for the checkpoint interval.
-     *
-     * returns:
-     * 0: terminate checkpointing gracefully
-     * 1: take another checkpoint
-     */
-    int (*checkpoint)(void *data);
-
-    /*
-     * Called after the checkpoint callback.
-     *
-     * returns:
-     * 0: terminate checkpointing gracefully
-     * 1: take another checkpoint
-     */
-    int (*wait_checkpoint)(void *data);
-
-    /* Enable qemu-dm logging dirty pages to xen */
-    int (*switch_qemu_logdirty)(uint32_t domid, unsigned enable, void *data); /* HVM only */
-
-    /* to be provided as the last argument to each callback function */
-    void *data;
-};
-
-/* Type of stream.  Plain, or using a continuous replication protocol? */
-typedef enum {
-    XC_STREAM_PLAIN,
-    XC_STREAM_REMUS,
-    XC_STREAM_COLO,
-} xc_stream_type_t;
-
-/**
- * This function will save a running domain.
- *
- * @param xch a handle to an open hypervisor interface
- * @param io_fd the file descriptor to save a domain to
- * @param dom the id of the domain
- * @param flags XCFLAGS_xxx
- * @param stream_type XC_STREAM_PLAIN if the far end of the stream
- *        doesn't use checkpointing
- * @param recv_fd Only used for XC_STREAM_COLO.  Contains backchannel from
- *        the destination side.
- * @return 0 on success, -1 on failure
- */
-int xc_domain_save(xc_interface *xch, int io_fd, uint32_t dom,
-                   uint32_t flags, struct save_callbacks *callbacks,
-                   xc_stream_type_t stream_type, int recv_fd);
-
-/* callbacks provided by xc_domain_restore */
-struct restore_callbacks {
-    /*
-     * Called once the STATIC_DATA_END record has been received/inferred.
-     *
-     * For compatibility with older streams, provides a list of static data
-     * expected to be found in the stream, which was missing.  A higher level
-     * toolstack is responsible for providing any necessary compatibiltiy.
-     */
-#define XGR_SDD_MISSING_CPUID (1 << 0)
-#define XGR_SDD_MISSING_MSR   (1 << 1)
-    int (*static_data_done)(unsigned int missing, void *data);
-
-    /* Called after a new checkpoint to suspend the guest. */
-    int (*suspend)(void *data);
-
-    /*
-     * Called after the secondary vm is ready to resume.
-     * Callback function resumes the guest & the device model,
-     * returns to xc_domain_restore.
-     */
-    int (*postcopy)(void *data);
-
-    /*
-     * A checkpoint record has been found in the stream.
-     * returns:
-     */
-#define XGR_CHECKPOINT_ERROR    0 /* Terminate processing */
-#define XGR_CHECKPOINT_SUCCESS  1 /* Continue reading more data from the stream */
-#define XGR_CHECKPOINT_FAILOVER 2 /* Failover and resume VM */
-    int (*checkpoint)(void *data);
-
-    /*
-     * Called after the checkpoint callback.
-     *
-     * returns:
-     * 0: terminate checkpointing gracefully
-     * 1: take another checkpoint
-     */
-    int (*wait_checkpoint)(void *data);
-
-    /*
-     * callback to send store gfn and console gfn to xl
-     * if we want to resume vm before xc_domain_save()
-     * exits.
-     */
-    void (*restore_results)(xen_pfn_t store_gfn, xen_pfn_t console_gfn,
-                            void *data);
-
-    /* to be provided as the last argument to each callback function */
-    void *data;
-};
-
-/**
- * This function will restore a saved domain.
- *
- * Domain is restored in a suspended state ready to be unpaused.
- *
- * @param xch a handle to an open hypervisor interface
- * @param io_fd the file descriptor to restore a domain from
- * @param dom the id of the domain
- * @param store_evtchn the xenstore event channel for this domain to use
- * @param store_mfn filled with the gfn of the store page
- * @param store_domid the backend domain for xenstore
- * @param console_evtchn the console event channel for this domain to use
- * @param console_mfn filled with the gfn of the console page
- * @param console_domid the backend domain for xenconsole
- * @param stream_type XC_STREAM_PLAIN if the far end of the stream is using
- *        checkpointing
- * @param callbacks non-NULL to receive a callback to restore toolstack
- *        specific data
- * @param send_back_fd Only used for XC_STREAM_COLO.  Contains backchannel to
- *        the source side.
- * @return 0 on success, -1 on failure
- */
-int xc_domain_restore(xc_interface *xch, int io_fd, uint32_t dom,
-                      unsigned int store_evtchn, unsigned long *store_mfn,
-                      uint32_t store_domid, unsigned int console_evtchn,
-                      unsigned long *console_mfn, uint32_t console_domid,
-                      xc_stream_type_t stream_type,
-                      struct restore_callbacks *callbacks, int send_back_fd);
-
 /**
  * This function will create a domain for a paravirtualized Linux
  * using file names pointing to kernel and ramdisk
diff --git a/tools/include/xensaverestore.h b/tools/include/xensaverestore.h
new file mode 100644
index 0000000000..0410f0469e
--- /dev/null
+++ b/tools/include/xensaverestore.h
@@ -0,0 +1,208 @@
+/******************************************************************************
+ * A library for guest domain save/restore/migration in Xen.
+ *
+ * Copyright (c) 2003-2004, K A Fraser.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation;
+ * version 2.1 of the License.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; If not, see <http://www.gnu.org/licenses/>.
+ */
+#ifndef XENSAVERESTORE_H
+#define XENSAVERESTORE_H
+
+#define XCFLAGS_LIVE      (1 << 0)
+#define XCFLAGS_DEBUG     (1 << 1)
+
+/* For save's precopy_policy(). */
+struct precopy_stats
+{
+    unsigned int iteration;
+    unsigned long total_written;
+    long dirty_count; /* -1 if unknown */
+};
+
+/*
+ * A precopy_policy callback may not be running in the same address
+ * space as libxc an so precopy_stats is passed by value.
+ */
+typedef int (*precopy_policy_t)(struct precopy_stats, void *);
+
+/* callbacks provided by xc_domain_save */
+struct save_callbacks {
+    /*
+     * Called after expiration of checkpoint interval,
+     * to suspend the guest.
+     */
+    int (*suspend)(void *data);
+
+    /*
+     * Called before and after every batch of page data sent during
+     * the precopy phase of a live migration to ask the caller what
+     * to do next based on the current state of the precopy migration.
+     *
+     * Should return one of the values listed below:
+     */
+#define XGS_POLICY_ABORT          (-1) /* Abandon the migration entirely
+                                        * and tidy up. */
+#define XGS_POLICY_CONTINUE_PRECOPY 0  /* Remain in the precopy phase. */
+#define XGS_POLICY_STOP_AND_COPY    1  /* Immediately suspend and transmit the
+                                        * remaining dirty pages. */
+    precopy_policy_t precopy_policy;
+
+    /*
+     * Called after the guest's dirty pages have been
+     *  copied into an output buffer.
+     * Callback function resumes the guest & the device model,
+     *  returns to xc_domain_save.
+     * xc_domain_save then flushes the output buffer, while the
+     *  guest continues to run.
+     */
+    int (*postcopy)(void *data);
+
+    /*
+     * Called after the memory checkpoint has been flushed
+     * out into the network. Typical actions performed in this
+     * callback include:
+     *   (a) send the saved device model state (for HVM guests),
+     *   (b) wait for checkpoint ack
+     *   (c) release the network output buffer pertaining to the acked checkpoint.
+     *   (c) sleep for the checkpoint interval.
+     *
+     * returns:
+     * 0: terminate checkpointing gracefully
+     * 1: take another checkpoint
+     */
+    int (*checkpoint)(void *data);
+
+    /*
+     * Called after the checkpoint callback.
+     *
+     * returns:
+     * 0: terminate checkpointing gracefully
+     * 1: take another checkpoint
+     */
+    int (*wait_checkpoint)(void *data);
+
+    /* Enable qemu-dm logging dirty pages to xen */
+    int (*switch_qemu_logdirty)(uint32_t domid, unsigned enable, void *data); /* HVM only */
+
+    /* to be provided as the last argument to each callback function */
+    void *data;
+};
+
+/* Type of stream.  Plain, or using a continuous replication protocol? */
+typedef enum {
+    XC_STREAM_PLAIN,
+    XC_STREAM_REMUS,
+    XC_STREAM_COLO,
+} xc_stream_type_t;
+
+/**
+ * This function will save a running domain.
+ *
+ * @param xch a handle to an open hypervisor interface
+ * @param io_fd the file descriptor to save a domain to
+ * @param dom the id of the domain
+ * @param flags XCFLAGS_xxx
+ * @param stream_type XC_STREAM_PLAIN if the far end of the stream
+ *        doesn't use checkpointing
+ * @param recv_fd Only used for XC_STREAM_COLO.  Contains backchannel from
+ *        the destination side.
+ * @return 0 on success, -1 on failure
+ */
+int xc_domain_save(xc_interface *xch, int io_fd, uint32_t dom,
+                   uint32_t flags, struct save_callbacks *callbacks,
+                   xc_stream_type_t stream_type, int recv_fd);
+
+/* callbacks provided by xc_domain_restore */
+struct restore_callbacks {
+    /*
+     * Called once the STATIC_DATA_END record has been received/inferred.
+     *
+     * For compatibility with older streams, provides a list of static data
+     * expected to be found in the stream, which was missing.  A higher level
+     * toolstack is responsible for providing any necessary compatibiltiy.
+     */
+#define XGR_SDD_MISSING_CPUID (1 << 0)
+#define XGR_SDD_MISSING_MSR   (1 << 1)
+    int (*static_data_done)(unsigned int missing, void *data);
+
+    /* Called after a new checkpoint to suspend the guest. */
+    int (*suspend)(void *data);
+
+    /*
+     * Called after the secondary vm is ready to resume.
+     * Callback function resumes the guest & the device model,
+     * returns to xc_domain_restore.
+     */
+    int (*postcopy)(void *data);
+
+    /*
+     * A checkpoint record has been found in the stream.
+     * returns:
+     */
+#define XGR_CHECKPOINT_ERROR    0 /* Terminate processing */
+#define XGR_CHECKPOINT_SUCCESS  1 /* Continue reading more data from the stream */
+#define XGR_CHECKPOINT_FAILOVER 2 /* Failover and resume VM */
+    int (*checkpoint)(void *data);
+
+    /*
+     * Called after the checkpoint callback.
+     *
+     * returns:
+     * 0: terminate checkpointing gracefully
+     * 1: take another checkpoint
+     */
+    int (*wait_checkpoint)(void *data);
+
+    /*
+     * callback to send store gfn and console gfn to xl
+     * if we want to resume vm before xc_domain_save()
+     * exits.
+     */
+    void (*restore_results)(xen_pfn_t store_gfn, xen_pfn_t console_gfn,
+                            void *data);
+
+    /* to be provided as the last argument to each callback function */
+    void *data;
+};
+
+/**
+ * This function will restore a saved domain.
+ *
+ * Domain is restored in a suspended state ready to be unpaused.
+ *
+ * @param xch a handle to an open hypervisor interface
+ * @param io_fd the file descriptor to restore a domain from
+ * @param dom the id of the domain
+ * @param store_evtchn the xenstore event channel for this domain to use
+ * @param store_mfn filled with the gfn of the store page
+ * @param store_domid the backend domain for xenstore
+ * @param console_evtchn the console event channel for this domain to use
+ * @param console_mfn filled with the gfn of the console page
+ * @param console_domid the backend domain for xenconsole
+ * @param stream_type XC_STREAM_PLAIN if the far end of the stream is using
+ *        checkpointing
+ * @param callbacks non-NULL to receive a callback to restore toolstack
+ *        specific data
+ * @param send_back_fd Only used for XC_STREAM_COLO.  Contains backchannel to
+ *        the source side.
+ * @return 0 on success, -1 on failure
+ */
+int xc_domain_restore(xc_interface *xch, int io_fd, uint32_t dom,
+                      unsigned int store_evtchn, unsigned long *store_mfn,
+                      uint32_t store_domid, unsigned int console_evtchn,
+                      unsigned long *console_mfn, uint32_t console_domid,
+                      xc_stream_type_t stream_type,
+                      struct restore_callbacks *callbacks, int send_back_fd);
+
+#endif /* XENSAVERESTORE_H */
diff --git a/tools/libs/Makefile b/tools/libs/Makefile
index 1afcd12e2b..ca43c66777 100644
--- a/tools/libs/Makefile
+++ b/tools/libs/Makefile
@@ -12,6 +12,7 @@ SUBDIRS-y += devicemodel
 SUBDIRS-y += ctrl
 SUBDIRS-y += guest
 SUBDIRS-y += hypfs
+SUBDIRS-y += saverestore
 SUBDIRS-y += store
 SUBDIRS-y += stat
 SUBDIRS-$(CONFIG_Linux) += vchan
diff --git a/tools/libs/guest/Makefile b/tools/libs/guest/Makefile
index 604e1695d6..7bb3d92553 100644
--- a/tools/libs/guest/Makefile
+++ b/tools/libs/guest/Makefile
@@ -10,18 +10,7 @@ SRCS-y += xg_private.c
 SRCS-y += xg_domain.c
 SRCS-y += xg_suspend.c
 ifeq ($(CONFIG_MIGRATE),y)
-SRCS-y += xg_sr_common.c
-SRCS-$(CONFIG_X86) += xg_sr_common_x86.c
-SRCS-$(CONFIG_X86) += xg_sr_common_x86_pv.c
-SRCS-$(CONFIG_X86) += xg_sr_restore_x86_pv.c
-SRCS-$(CONFIG_X86) += xg_sr_restore_x86_hvm.c
-SRCS-$(CONFIG_X86) += xg_sr_save_x86_pv.c
-SRCS-$(CONFIG_X86) += xg_sr_save_x86_hvm.c
-SRCS-y += xg_sr_restore.c
-SRCS-y += xg_sr_save.c
 SRCS-y += xg_offline_page.c
-else
-SRCS-y += xg_nomigrate.c
 endif
 
 CFLAGS += -I$(XEN_libxenctrl)
diff --git a/tools/libs/guest/xg_offline_page.c b/tools/libs/guest/xg_offline_page.c
index d4722f0e8c..e49ef55887 100644
--- a/tools/libs/guest/xg_offline_page.c
+++ b/tools/libs/guest/xg_offline_page.c
@@ -29,7 +29,6 @@
 
 #include "xc_private.h"
 #include "xg_private.h"
-#include "xg_save_restore.h"
 
 struct pte_backup_entry
 {
diff --git a/tools/libs/light/Makefile b/tools/libs/light/Makefile
index 7d8c51d492..68e51dd13c 100644
--- a/tools/libs/light/Makefile
+++ b/tools/libs/light/Makefile
@@ -179,7 +179,7 @@ $(ACPI_OBJS) $(ACPI_PIC_OBJS): CFLAGS += -I. -DLIBACPI_STDUTILS=\"$(CURDIR)/libx
 $(TEST_PROG_OBJS) _libxl.api-for-check: CFLAGS += $(CFLAGS_libxentoollog) $(CFLAGS_libxentoolcore)
 libxl_dom.o libxl_dom.opic: CFLAGS += -I$(XEN_ROOT)/tools  # include libacpi/x86.h
 libxl_x86_acpi.o libxl_x86_acpi.opic: CFLAGS += -I$(XEN_ROOT)/tools
-$(SAVE_HELPER_OBJS): CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenevtchn) $(CFLAGS_libxenguest)
+$(SAVE_HELPER_OBJS): CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenevtchn) $(CFLAGS_libxensaverestore)
 
 testidl.o: CFLAGS += $(CFLAGS_libxenctrl) $(CFLAGS_libxenlight)
 testidl.c: libxl_types.idl gentest.py $(XEN_INCLUDE)/libxl.h $(AUTOINCS)
@@ -241,7 +241,7 @@ test_%: test_%.o test_common.o libxenlight_test.so
 	$(CC) $(LDFLAGS) -o $@ $^ $(filter-out %libxenlight.so, $(LDLIBS_libxenlight)) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) -lyajl $(APPEND_LDFLAGS)
 
 libxl-save-helper: $(SAVE_HELPER_OBJS) libxenlight.so
-	$(CC) $(LDFLAGS) -o $@ $(SAVE_HELPER_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
+	$(CC) $(LDFLAGS) -o $@ $(SAVE_HELPER_OBJS) $(LDLIBS_libxentoollog) $(LDLIBS_libxenctrl) $(LDLIBS_libxensaverestore) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
 
 testidl: testidl.o libxenlight.so
 	$(CC) $(LDFLAGS) -o $@ testidl.o $(LDLIBS_libxenlight) $(LDLIBS_libxentoollog) $(LDLIBS_libxentoolcore) $(APPEND_LDFLAGS)
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index c6a4a187f5..2889572888 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -56,6 +56,7 @@
 #define XC_WANT_COMPAT_MAP_FOREIGN_API
 #include <xenctrl.h>
 #include <xenguest.h>
+#include <xensaverestore.h>
 #include <xenhypfs.h>
 
 #include <xen-tools/libs.h>
diff --git a/tools/libs/light/libxl_save_helper.c b/tools/libs/light/libxl_save_helper.c
index 65dff389bf..896e845a2f 100644
--- a/tools/libs/light/libxl_save_helper.c
+++ b/tools/libs/light/libxl_save_helper.c
@@ -48,6 +48,7 @@
 
 #include "xenctrl.h"
 #include "xenguest.h"
+#include "xensaverestore.h"
 #include "_libxl_save_msgs_helper.h"
 
 /*----- logger -----*/
diff --git a/tools/libs/light/libxl_save_msgs_gen.pl b/tools/libs/light/libxl_save_msgs_gen.pl
index 9d425b1dee..f263ee01bb 100755
--- a/tools/libs/light/libxl_save_msgs_gen.pl
+++ b/tools/libs/light/libxl_save_msgs_gen.pl
@@ -72,7 +72,7 @@ END_BOTH
 END_CALLOUT
 
 #include <xenctrl.h>
-#include <xenguest.h>
+#include <xensaverestore.h>
 #include "_libxl_save_msgs_${ah}.h"
 
 END_HELPER
diff --git a/tools/libs/saverestore/Makefile b/tools/libs/saverestore/Makefile
new file mode 100644
index 0000000000..48728b3be2
--- /dev/null
+++ b/tools/libs/saverestore/Makefile
@@ -0,0 +1,38 @@
+XEN_ROOT = $(CURDIR)/../../..
+include $(XEN_ROOT)/tools/Rules.mk
+
+ifeq ($(CONFIG_MIGRATE),y)
+SRCS-y += common.c
+SRCS-$(CONFIG_X86) += common_x86.c
+SRCS-$(CONFIG_X86) += common_x86_pv.c
+SRCS-$(CONFIG_X86) += restore_x86_pv.c
+SRCS-$(CONFIG_X86) += restore_x86_hvm.c
+SRCS-$(CONFIG_X86) += save_x86_pv.c
+SRCS-$(CONFIG_X86) += save_x86_hvm.c
+SRCS-y += restore.c
+SRCS-y += save.c
+else
+SRCS-y += nomigrate.c
+endif
+
+CFLAGS += -I$(XEN_libxenctrl)
+CFLAGS += -I$(XEN_libxenguest)
+
+-include $(XEN_TARGET_ARCH)/Makefile
+
+CFLAGS   += -Werror -Wmissing-prototypes
+CFLAGS   += -I. -I./include $(CFLAGS_xeninclude)
+CFLAGS   += -D__XEN_TOOLS__
+CFLAGS   += -include $(XEN_ROOT)/tools/config.h
+# Needed for asprintf()
+CFLAGS-$(CONFIG_Linux) += -D_GNU_SOURCE
+
+LIBHEADER := xensaverestore.h
+
+NO_HEADERS_CHK := y
+
+include $(XEN_ROOT)/tools/libs/libs.mk
+
+.PHONY: cleanlocal
+cleanlocal:
+	rm -f libxensaverestore.map
diff --git a/tools/libs/guest/xg_sr_common.c b/tools/libs/saverestore/common.c
similarity index 99%
rename from tools/libs/guest/xg_sr_common.c
rename to tools/libs/saverestore/common.c
index 17567ab133..77128bc747 100644
--- a/tools/libs/guest/xg_sr_common.c
+++ b/tools/libs/saverestore/common.c
@@ -1,6 +1,6 @@
 #include <assert.h>
 
-#include "xg_sr_common.h"
+#include "common.h"
 
 #include <xen-tools/libs.h>
 
diff --git a/tools/libs/guest/xg_sr_common.h b/tools/libs/saverestore/common.h
similarity index 98%
rename from tools/libs/guest/xg_sr_common.h
rename to tools/libs/saverestore/common.h
index 617dc75add..56286f3c8e 100644
--- a/tools/libs/guest/xg_sr_common.h
+++ b/tools/libs/saverestore/common.h
@@ -1,13 +1,25 @@
 #ifndef __COMMON__H
 #define __COMMON__H
 
+#include <unistd.h>
+#include <errno.h>
 #include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/mman.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+
+#include "xc_private.h"
+#include "xenguest.h"
+#include "xensaverestore.h"
 
 #include "xg_private.h"
-#include "xg_save_restore.h"
+#include "save_restore.h"
 #include "xc_bitops.h"
 
-#include "xg_sr_stream_format.h"
+#include "stream_format.h"
 
 /* String representation of Domain Header types. */
 const char *dhdr_type_to_str(uint32_t type);
diff --git a/tools/libs/guest/xg_sr_common_x86.c b/tools/libs/saverestore/common_x86.c
similarity index 99%
rename from tools/libs/guest/xg_sr_common_x86.c
rename to tools/libs/saverestore/common_x86.c
index 3168c5485f..6d706a2d94 100644
--- a/tools/libs/guest/xg_sr_common_x86.c
+++ b/tools/libs/saverestore/common_x86.c
@@ -1,4 +1,4 @@
-#include "xg_sr_common_x86.h"
+#include "common_x86.h"
 
 int write_x86_tsc_info(struct xc_sr_context *ctx)
 {
diff --git a/tools/libs/guest/xg_sr_common_x86.h b/tools/libs/saverestore/common_x86.h
similarity index 98%
rename from tools/libs/guest/xg_sr_common_x86.h
rename to tools/libs/saverestore/common_x86.h
index b55758c96d..3a2d91dcb8 100644
--- a/tools/libs/guest/xg_sr_common_x86.h
+++ b/tools/libs/saverestore/common_x86.h
@@ -1,7 +1,7 @@
 #ifndef __COMMON_X86__H
 #define __COMMON_X86__H
 
-#include "xg_sr_common.h"
+#include "common.h"
 
 /*
  * Obtains a domains TSC information from Xen and writes a X86_TSC_INFO record
diff --git a/tools/libs/guest/xg_sr_common_x86_pv.c b/tools/libs/saverestore/common_x86_pv.c
similarity index 99%
rename from tools/libs/guest/xg_sr_common_x86_pv.c
rename to tools/libs/saverestore/common_x86_pv.c
index cd33406aab..caf3cc588f 100644
--- a/tools/libs/guest/xg_sr_common_x86_pv.c
+++ b/tools/libs/saverestore/common_x86_pv.c
@@ -1,6 +1,6 @@
 #include <assert.h>
 
-#include "xg_sr_common_x86_pv.h"
+#include "common_x86_pv.h"
 
 xen_pfn_t mfn_to_pfn(struct xc_sr_context *ctx, xen_pfn_t mfn)
 {
diff --git a/tools/libs/guest/xg_sr_common_x86_pv.h b/tools/libs/saverestore/common_x86_pv.h
similarity index 98%
rename from tools/libs/guest/xg_sr_common_x86_pv.h
rename to tools/libs/saverestore/common_x86_pv.h
index 953b5bfb8d..a9f8c970e3 100644
--- a/tools/libs/guest/xg_sr_common_x86_pv.h
+++ b/tools/libs/saverestore/common_x86_pv.h
@@ -1,7 +1,7 @@
 #ifndef __COMMON_X86_PV_H
 #define __COMMON_X86_PV_H
 
-#include "xg_sr_common_x86.h"
+#include "common_x86.h"
 
 /* Virtual address ranges reserved for hypervisor. */
 #define HYPERVISOR_VIRT_START_X86_64 0xFFFF800000000000ULL
diff --git a/tools/libs/guest/xg_nomigrate.c b/tools/libs/saverestore/nomigrate.c
similarity index 100%
rename from tools/libs/guest/xg_nomigrate.c
rename to tools/libs/saverestore/nomigrate.c
diff --git a/tools/libs/guest/xg_sr_restore.c b/tools/libs/saverestore/restore.c
similarity index 99%
rename from tools/libs/guest/xg_sr_restore.c
rename to tools/libs/saverestore/restore.c
index b57a787519..be259a1c6b 100644
--- a/tools/libs/guest/xg_sr_restore.c
+++ b/tools/libs/saverestore/restore.c
@@ -2,7 +2,7 @@
 
 #include <assert.h>
 
-#include "xg_sr_common.h"
+#include "common.h"
 
 /*
  * Read and validate the Image and Domain headers.
diff --git a/tools/libs/guest/xg_sr_restore_x86_hvm.c b/tools/libs/saverestore/restore_x86_hvm.c
similarity index 99%
rename from tools/libs/guest/xg_sr_restore_x86_hvm.c
rename to tools/libs/saverestore/restore_x86_hvm.c
index d6ea6f3012..bd63bd2818 100644
--- a/tools/libs/guest/xg_sr_restore_x86_hvm.c
+++ b/tools/libs/saverestore/restore_x86_hvm.c
@@ -1,7 +1,7 @@
 #include <assert.h>
 #include <arpa/inet.h>
 
-#include "xg_sr_common_x86.h"
+#include "common_x86.h"
 
 /*
  * Process an HVM_CONTEXT record from the stream.
diff --git a/tools/libs/guest/xg_sr_restore_x86_pv.c b/tools/libs/saverestore/restore_x86_pv.c
similarity index 99%
rename from tools/libs/guest/xg_sr_restore_x86_pv.c
rename to tools/libs/saverestore/restore_x86_pv.c
index dc50b0f5a8..96608e5231 100644
--- a/tools/libs/guest/xg_sr_restore_x86_pv.c
+++ b/tools/libs/saverestore/restore_x86_pv.c
@@ -1,6 +1,6 @@
 #include <assert.h>
 
-#include "xg_sr_common_x86_pv.h"
+#include "common_x86_pv.h"
 
 static xen_pfn_t pfn_to_mfn(const struct xc_sr_context *ctx, xen_pfn_t pfn)
 {
diff --git a/tools/libs/guest/xg_sr_save.c b/tools/libs/saverestore/save.c
similarity index 99%
rename from tools/libs/guest/xg_sr_save.c
rename to tools/libs/saverestore/save.c
index 6652730f6f..63881814c2 100644
--- a/tools/libs/guest/xg_sr_save.c
+++ b/tools/libs/saverestore/save.c
@@ -2,7 +2,7 @@
 #include <arpa/inet.h>
 #include <time.h>
 
-#include "xg_sr_common.h"
+#include "common.h"
 
 /*
  * Writes an Image header and Domain header into the stream.
diff --git a/tools/libs/guest/xg_save_restore.h b/tools/libs/saverestore/save_restore.h
similarity index 98%
rename from tools/libs/guest/xg_save_restore.h
rename to tools/libs/saverestore/save_restore.h
index 3dbbc8dcd2..20bd3d30a5 100644
--- a/tools/libs/guest/xg_save_restore.h
+++ b/tools/libs/saverestore/save_restore.h
@@ -15,8 +15,6 @@
  * License along with this library; If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "xc_private.h"
-
 #include <xen/foreign/x86_32.h>
 #include <xen/foreign/x86_64.h>
 
diff --git a/tools/libs/guest/xg_sr_save_x86_hvm.c b/tools/libs/saverestore/save_x86_hvm.c
similarity index 99%
rename from tools/libs/guest/xg_sr_save_x86_hvm.c
rename to tools/libs/saverestore/save_x86_hvm.c
index 1634a7bc43..91c2cb99ab 100644
--- a/tools/libs/guest/xg_sr_save_x86_hvm.c
+++ b/tools/libs/saverestore/save_x86_hvm.c
@@ -1,6 +1,6 @@
 #include <assert.h>
 
-#include "xg_sr_common_x86.h"
+#include "common_x86.h"
 
 #include <xen/hvm/params.h>
 
diff --git a/tools/libs/guest/xg_sr_save_x86_pv.c b/tools/libs/saverestore/save_x86_pv.c
similarity index 99%
rename from tools/libs/guest/xg_sr_save_x86_pv.c
rename to tools/libs/saverestore/save_x86_pv.c
index 4964f1f7b8..92f77fad0f 100644
--- a/tools/libs/guest/xg_sr_save_x86_pv.c
+++ b/tools/libs/saverestore/save_x86_pv.c
@@ -1,7 +1,7 @@
 #include <assert.h>
 #include <limits.h>
 
-#include "xg_sr_common_x86_pv.h"
+#include "common_x86_pv.h"
 
 /* Check a 64 bit virtual address for being canonical. */
 static inline bool is_canonical_address(xen_vaddr_t vaddr)
diff --git a/tools/libs/guest/xg_sr_stream_format.h b/tools/libs/saverestore/stream_format.h
similarity index 100%
rename from tools/libs/guest/xg_sr_stream_format.h
rename to tools/libs/saverestore/stream_format.h
diff --git a/tools/libs/uselibs.mk b/tools/libs/uselibs.mk
index efd7a475ba..62a2990b95 100644
--- a/tools/libs/uselibs.mk
+++ b/tools/libs/uselibs.mk
@@ -20,6 +20,8 @@ LIBS_LIBS += ctrl
 USELIBS_ctrl := toollog call evtchn gnttab foreignmemory devicemodel
 LIBS_LIBS += guest
 USELIBS_guest := evtchn ctrl
+LIBS_LIBS += saverestore
+USELIBS_saverestore := guest ctrl
 LIBS_LIBS += store
 USELIBS_store := toolcore
 LIBS_LIBS += vchan
@@ -27,7 +29,7 @@ USELIBS_vchan := toollog store gnttab evtchn
 LIBS_LIBS += stat
 USELIBS_stat := ctrl store
 LIBS_LIBS += light
-USELIBS_light := toollog evtchn toolcore ctrl store hypfs guest
+USELIBS_light := toollog evtchn toolcore ctrl store hypfs guest saverestore
 LIBS_LIBS += util
 USELIBS_util := light
 FILENAME_util := xlutil


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:21:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:21:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111139.212492 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX1wR-0008Mt-AV; Thu, 15 Apr 2021 13:21:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111139.212492; Thu, 15 Apr 2021 13:21: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 1lX1wR-0008Mm-5U; Thu, 15 Apr 2021 13:21:55 +0000
Received: by outflank-mailman (input) for mailman id 111139;
 Thu, 15 Apr 2021 13:21:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6tgI=JM=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lX1wQ-0008Mh-3f
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 13:21:54 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7604fffd-f6af-4dc4-b945-03da505ac276;
 Thu, 15 Apr 2021 13:21: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: 7604fffd-f6af-4dc4-b945-03da505ac276
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618492912;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=EuZjVgTs1RGf6RYFevxNPocg2+RLqaQH1XJCdtIEg2g=;
  b=f5TSZ3g6ycmfzCwa38MLtN2OgBDjGciuK5THOyGurzCSyVZchUZyh46f
   HAwE0AQeJKD4rC2rnRJDgsT+I9VfOZk4CCo57L2uYTl5SVqHF6nA3ft9d
   8YlWyOFJHa5BW/lIXlkn9Z/4370Dmwe0xNIaMd4XU3PueO4YEzevVq2uM
   A=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: lFHVpWXrjbG/Ta+PKY9FQM3aMVMHJtNs06F9MRVYoR1Uk6bEU/25RG8xtzJEIRRVOA68r7sY5+
 vbYlrTecfVmJgyUwjtTiFIkvt6b8fFuBrkfFx/i4hvW+H7eFtmk5cvM0iafHZxwMhZ2zlRawlv
 e952uTQwhz3JQUBmVyHbKx8pkok8fRc64s7e+JkgCoEIPDgzSPMVEcE4qXizzRsU04vtmUORmM
 91L8iGf8rEeLoKBrLNI7UQSeuRtjXm45O1TfqZy1b/O1iNxZNA/AvHWJWXJ9LGHzyNI6SE9OHF
 oDg=
X-SBRS: 4.0
X-MesageID: 41507035
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:vYs7XqNWl1n2zsBcT9z255DYdL4zR+YMi2QD/0p6RQVJNumRkM
 6zlPoWvCWE+Qo5cltIo6H4BICrR3TA+ZlppawYOrm/VAfr0VHYXL1Kx43k3jHmBmnC5vdQvJ
 0QBJRWJf/RKRxBjcj86BSlCNpI+rS62Y2hmOu29QYRcShGbaVp7wBaBhbeKE15QwFaGYE0fa
 D32uNpvDylEE5nCfiTJn5AZOTbos2OqZSOW295OzcG8w+ItDWy9frBPiPw5Hgjehdu5Ztnzm
 TfiQz+4cyYwoeG4zvRzXXa4ZgTuPaJ8Ko+OOW2hsIYKirhh2+TDewLN8zhzVVFxN2H01oknM
 LBpB0tJa1ImgzsV1uoqhjg0RSI6kdX11beyESViXamgcv1SCNSMbs6uatlcwDU40dlgddk0K
 gj5RPji7NrC3r77ULAzumNfxVy0mW1pHZnrfcXiXRTXYZ2Us4zkaUvuGtQCdM6EDjn7Z1PKo
 lTJfCZxO1RdmqddG2cllYH+rLMYl0DWjO9BmkLoIi8ziVflnER9Tpq+OUv2lM7sK8bZ7YBze
 LeKahsnKxJVaYtHNBALdZEfvKSTkDra1b2HEyzBXiPLtBMB1v976HPxPEa38eXQdgp4fIJ6d
 /8eWIdilcXP2PJM/Dm5uwCzjn9BFqFeXDM8IV+17NDmpCUfsunDQSzDG8Wt4+FmdtaIuCzYY
 f7BLtGR/v4aWf+E4dA2APzH4RIIX4FScsPp5I1QFSLrsXXKpD7t+DSffrJTYCdZAoMSyf4GX
 sMXD/6OcVG4ASqQxbD8WzsZ08=
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="41507035"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86/pv: Rename hypercall_table_t to pv_hypercall_table_t
Date: Thu, 15 Apr 2021 14:21:38 +0100
Message-ID: <20210415132138.29007-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

The type is no longer appropriate for anything other than PV, and therefore
should not retain its generic name.

Fixes: 527922008bc ("x86: slim down hypercall handling when !PV32")
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/pv/hypercall.c     | 2 +-
 xen/arch/x86/pv/shim.c          | 2 +-
 xen/include/asm-x86/hypercall.h | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/pv/hypercall.c b/xen/arch/x86/pv/hypercall.c
index 5d02eebc8d..e30c59b628 100644
--- a/xen/arch/x86/pv/hypercall.c
+++ b/xen/arch/x86/pv/hypercall.c
@@ -40,7 +40,7 @@
 
 #define do_arch_1             paging_domctl_continuation
 
-const hypercall_table_t pv_hypercall_table[] = {
+const pv_hypercall_table_t pv_hypercall_table[] = {
     COMPAT_CALL(set_trap_table),
     HYPERCALL(mmu_update),
     COMPAT_CALL(set_gdt),
diff --git a/xen/arch/x86/pv/shim.c b/xen/arch/x86/pv/shim.c
index 92cb1adeed..62201ae182 100644
--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -204,7 +204,7 @@ void __init pv_shim_setup_dom(struct domain *d, l4_pgentry_t *l4start,
                               unsigned long console_va, unsigned long vphysmap,
                               start_info_t *si)
 {
-    hypercall_table_t *rw_pv_hypercall_table;
+    pv_hypercall_table_t *rw_pv_hypercall_table;
     uint64_t param = 0;
     long rc;
 
diff --git a/xen/include/asm-x86/hypercall.h b/xen/include/asm-x86/hypercall.h
index 39e7ab7022..0ae3b8b043 100644
--- a/xen/include/asm-x86/hypercall.h
+++ b/xen/include/asm-x86/hypercall.h
@@ -20,7 +20,7 @@ typedef struct {
 #ifdef CONFIG_PV32
     hypercall_fn_t *compat;
 #endif
-} hypercall_table_t;
+} pv_hypercall_table_t;
 
 typedef struct {
     uint8_t native;
@@ -32,7 +32,7 @@ typedef struct {
 extern const hypercall_args_t hypercall_args_table[NR_hypercalls];
 
 #ifdef CONFIG_PV
-extern const hypercall_table_t pv_hypercall_table[];
+extern const pv_hypercall_table_t pv_hypercall_table[];
 void pv_hypercall(struct cpu_user_regs *regs);
 #endif
 
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:26:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:26:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111144.212504 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX20f-0000BD-Qu; Thu, 15 Apr 2021 13:26:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111144.212504; Thu, 15 Apr 2021 13: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 1lX20f-0000B6-MQ; Thu, 15 Apr 2021 13:26:17 +0000
Received: by outflank-mailman (input) for mailman id 111144;
 Thu, 15 Apr 2021 13:26:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX20d-0000B1-RN
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 13:26:16 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 026b49f7-2b58-40e3-9583-11df7003d1d7;
 Thu, 15 Apr 2021 13:26: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: 026b49f7-2b58-40e3-9583-11df7003d1d7
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618493174;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ICHFW6ezo+kuLVJEG33yvmmTwE37qtEiEk1OdNDqfgU=;
  b=MWvZNUBE48LgNE9t1rz/hikmVw0EOtuP4Ixi3gCUuKPudYeX15je66RC
   MF+sXZVNB7GXwuNntL0v9swLXSpIUYlyTBbUznucnnfXSq1gzNfCEq5BT
   Q8O4JK9MTBK+SwW2822GFBZZSyntmMQMBTSRyRF2jjJyXPbvJhNwwTE9f
   k=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: qO2iktrbtbX4Ze2MBoRpbQzfwPLYUuZJOImC6T4AnbzCTQkQzgurixXKYOCM0cbk0qkveB0Zy+
 3VuVBAUfAlMGMMXW+7r9fDIUv0/vX/ZG+nTBuCCuEG+1sWsnF/dREdfz+x2XWAMvfFsph36EbS
 nHp6Vl10xcRxJLf5UCC1NA1nXtqTdMO/Gb+unWpxh+mecKgIZsK0sQDWobhzYBv+FRe+XIFUFa
 xtXWXHLrH3BXRRC0Qxsjqg5p9ioh5nOW/FOsKvrrNc1LpJseWu874J0vQrpWmbPp5N9G1NqLvM
 auQ=
X-SBRS: 5.2
X-MesageID: 42054482
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:LwTNw6NyUuMnNMBcT3Hw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsa9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrwHIMxbVstRQ3a
 IIScVDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RZQZCtBApsQiDtRIACdD0FwWU1qBYAhEo
 Cd+8pAoFObCA4qR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+GLzGz2BACXzRThYoz6G
 StqX2D2oyPkdGejiXd2Wja8ohMlLLapOdrKcSQhqEuW1fRoymyYoAJYczmgBkUp6WV5E8ugJ
 3wpX4bTrhOwlfwWk3wnhf3wQnn118Vmg/f4HuVm2Hqr8C8ZB9SMbs5uatjfhHU61UtsbhHuc
 ohtQLp1OskMTr6kCvw/NTOXR1x/3DE2UYKquIPk2dZFbIXdb45l/1vwGpuDJwCECjmgbpXdt
 VGMce03oczTXqqK1rdvmVp3eW2WGUyEhqsUiE5y7Ko+gkTs3Zjw0QCwssD2l8G6ZImUpFBo9
 /JK6Jyidh1P4MrRJM4IN1Ebdq8C2TLTx6JGGWOIW7/HKVCH37WsZb47Jg8+enCQu1G8LIC3L
 D6FH9Iv287fEzjTeeU2odQzxzLSGKhGRzw18B3/fFCy/3BbYuuFRfGZEElksOmrflaKNbcQe
 yPNJVfBOKmBXfyGLxOwxb1V/BpWDgjefxQnux+d0OFo8rNJIGvnPfcauzvKL3kFithdXj4Bl
 cFQTjvNORN5k2mQRbD8VrsckKoXna60YN7EaDc8eRW4pMKLJdwvg8cjkn8xszjE0wGjoUGOG
 9FZJ/3mKKyome7uUzS6X9yBxZbBkFJpJHpU3ZAox42I1r5GIxz/+m3SCR35j+qNxV/R8TZHE
 p0vFJs45+6KJSW2GQEB8+4NHmZy18evmiDQZtZuqDr37aqRroISrIdHIBhHwTCEBJ43Sxwrn
 1YVQMCTkjDUhX0iauki5QQLPrFd8Z1hTqqJcI8kwOdiWys4eUUAlcLVT+nVsCaxSw0QSBPu1
 F3+6gDxIablS2XMms5iuQgOFhqYGCaaYg2SzitVcFxoPTGaQtwRWCFiXi/hwsocmTnzUkUm1
 fsNDaZY/3NH1pbtE1Jy6qCyiIGSkytO2ZLLlxqu4x0EmrL/kx+1uKGfYKf+WqcYFlq+JBXDB
 j1JR8pZi9+zdG+0xCY3AuYHXI935M0I6j2F7I4aYze3XurNayFnawLBOVv4Z5gLdzi29V7F9
 63SkuwFnfVGukp0wuaqjIZIyFysmAjiu6t9xv/7mS0tURPd8b6ERBDffU8LN6d5WS/GKrN/5
 V9kN4vvey/dk/2ccWLzKnLbzhFbjPfyFTGO90AmNRxh+YVsrA2IrzwFR3v/1tD1A8lLMj1mF
 gFKZ4LqIzpC8tKRYgqZyld/lAVj9yBI0sgjxzuDoYFDCQQpk6eG+nM3qHBprUuCHCQvQfcOV
 GQ9CtG4vfONhHzooIyOuYVIW5MblI752kn1OSed5fIAAHCTZAIwHOKdlu8eqRaUq6LBPE5qQ
 t7+ciBm6uyezDj0A7d+Rt9LaQmyRfrfeqCRCaNE/VP6dq0JBClhbar+te6iHPPcgSAAn5ozL
 FtRAg3dcRMij4rkY0x3GyTc8XM0z0YumobxypmmF7r0pWh+0HBEyh9QFTkvqk=
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="42054482"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Zp/RkU+Qd99NiXMmR5DdB8DEBOJKEYj3BAcIAUD3T2eiKEwcEnpT9MwGCxQ7ZZG8N/vsYs9tN7J+3cUcYDmDmmAKO74mYpg0xVpefIyFzBCzzsadmil1ZJ9Ozf1qlcOFyoUxxGO8l/nQZlBoBJK7n8aMjcxm5NaChHSxDmJ9WRkWawer5q2S3nb/i5NSZpX5Wt/XN5eYIF4v/MSebpwtWsLR7nLRFoSS6PYvhhnN+mLwfBD5ziUeItd7Z4uIbOsJul4mGGrVTbn8EiHM9PlL3fT9HkZjUbxffqsKV02EmR8uQd3I+aUmwxbjPRufonXU96QF5KJvMGchV1t5F1lmlw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=d1l51CG56aHNvtKJYuTpSQmSe+EouQr16Sczlo1cgeY=;
 b=VAj3RREV//tpbEc6+/xzmuzwkCckS8JLI58G+7ttJPqyspiAmCF2jO8xa0x486976qPhaeBu9WXa7fUC/W98iPfaPAM8ch1s2ughT1P6lqa9LxZ9S0zO47bZzP20WYrT8cvwsRrGc8y0WqOKYCsSu+DIa1lDEG8dsOMD+p2aWzvi0RNhSjYjYT1oF/jTV4u5ALnUSVRmiru287tk75sa6lypg1WvF/bQy1ONMFBR40h0XshOLFl5yVa25YvWvjKLnfmnlamR7FAnrqrXNqlcjEsYjMgOGT63RFGgLbTJ0jCno/YHYozrKal2+d2tVXBEin7S65s9L2/aUUojeDk5VA==
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=d1l51CG56aHNvtKJYuTpSQmSe+EouQr16Sczlo1cgeY=;
 b=kI19S03OujByLllUwQXtrgVqa9CpovE/92BXtSTbPzz2uLe1NOLJWSLNypLC3m//ZRgZi72DSrXtKcXhul7L7pJiJUT3uHyDfTubTwr+DtuSxMus/1ve2+P01ZL86OpQhFZ8573n8DCjwT6EcaapcjFnVfgorme+0lqg8uAkw8A=
Date: Thu, 15 Apr 2021 15:26:02 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
CC: Rahul Singh <rahul.singh@arm.com>, <xen-devel@lists.xenproject.org>,
	<bertrand.marquis@arm.com>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Message-ID: <YHg+6rLN0rBWXcTs@Air-de-Roger>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
X-ClientProxiedBy: MRXP264CA0027.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::15) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 00852c4b-76bc-47e9-cd7b-08d9001207b7
X-MS-TrafficTypeDiagnostic: DM6PR03MB4297:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB429776DD52DACD8290C0832F8F4D9@DM6PR03MB4297.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: QFPdbfh/t8EBpSXdvnYo9PE0uBGp0/cmp5EUQrNmitlcP6upm994RjAw5H7lkJnHeWodrlFQealDZZW2x6L9aDhO5rw/TDrduiP2KuuA90Rk31yVZxeFlwBu2wF4jA/JsfDIQEDlkkfSS2uYwxH0LtptmGKs08+XdMVIh4zt1vnULTcx64Jk8gB+EmnaG31RSf2GzEjijsyj+dGS9HSCfegxkbAAbsM2RO3PWyL/HkP7zbpvcxldkyGhpN1KqekmHk42xZesuc/1xOedw7kwThrXAqOaNbJ1X0yLmDPoSlFLnlR5ucbpdNZXIcZc8Exvr0QTL9mD4cAYvoZnh5glxKhFdjqBeGYrB2NS3lOHsdaQYf4coScQ9q563XpSr87yDRT8sKYPwB4c2FlFVxqgjQR4e2sRf+gjeBoUm38zdF+TiZwcaXi6Su7wRYf677AW0IB4XfRFzai1WQ3nTnrej46u0DeQdhsnTG4xxXDzHy6jnGDB85L/L6hDtw3bj68Hn35K6FezaCzq5Cxj7inOX6TSyG+tjqq2lvyosc+mUp2AQ8YwUmx05MpScU24WvhrBDcKYPopmiEYXQxAHQt84fp8kAs1APttzxRkULkjGgz4Xh7Bn+ZNJiOgMS3jhCkb8WFq+sRvGOCJTgvZpxvZgg==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(136003)(376002)(396003)(39860400002)(346002)(316002)(186003)(5660300002)(66946007)(478600001)(7416002)(54906003)(6916009)(38100700002)(8676002)(83380400001)(4326008)(2906002)(16526019)(956004)(85182001)(33716001)(9686003)(6486002)(8936002)(26005)(86362001)(66556008)(66476007)(6496006)(6666004)(53546011)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?QXJsVzRSd1pROEorRUdBUT09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 00852c4b-76bc-47e9-cd7b-08d9001207b7
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 13:26:09.0743
 (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: JYmQcUoDIZjkLDQ3DX+QPQJswGd/cXEeVhr2u/HL3EkYBHJD7gUNVmGUlO73VIt3vKzKnXNADkuSGqLxBuiaNw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4297
X-OriginatorOrg: citrix.com

On Wed, Apr 14, 2021 at 09:49:37AM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 14/04/2021 09:05, Roger Pau Monné wrote:
> > On Tue, Apr 13, 2021 at 06:12:10PM +0100, Julien Grall wrote:
> > > Hi Roger,
> > > 
> > > On 12/04/2021 11:49, Roger Pau Monné wrote:
> > > > On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
> > > > > diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> > > > > index 705137f8be..1b473502a1 100644
> > > > > --- a/xen/drivers/passthrough/pci.c
> > > > > +++ b/xen/drivers/passthrough/pci.c
> > > > > @@ -1303,12 +1279,15 @@ static int __init setup_dump_pcidevs(void)
> > > > >    }
> > > > >    __initcall(setup_dump_pcidevs);
> > > > > +
> > > > > +#ifdef CONFIG_PCI_MSI_INTERCEPT
> > > > >    int iommu_update_ire_from_msi(
> > > > >        struct msi_desc *msi_desc, struct msi_msg *msg)
> > > > >    {
> > > > >        return iommu_intremap
> > > > >               ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
> > > > >    }
> > > > > +#endif
> > > > 
> > > > This is not exactly related to MSI intercepts, the IOMMU interrupt
> > > > remapping table will also be used for interrupt entries for devices
> > > > being used by Xen directly, where no intercept is required.
> > > 
> > > On Arm, this is not tie to the IOMMU. Instead, this handled is a separate
> > > MSI controller (such as the ITS).
> > > 
> > > > 
> > > > And then you also want to gate the hook from iommu_ops itself with
> > > > CONFIG_PCI_MSI_INTERCEPT, if we want to got this route.
> > > 
> > > 
> > > All the callers are in the x86 code. So how about moving the function in an
> > > x86 specific file?
> > 
> > Yes, that seems fine. Just place it in asm-x86/iommu.h. I wonder why
> > update_ire_from_msi wasn't moved when the rest of the x86 specific
> > functions where moved there.
> 
> I am guessing it is because the function was protected by CONFIG_HAS_PCI
> rather than CONFIG_X86. So it was deferred until another arch enables
> CONFIG_HAS_PCI (it is easier to know what code should be moved).
> 
> > Was there an aim to use that in other
> > arches?
> 
> In the future we may need to use MSIs in Xen (IIRC some SMMUs only support
> MSI interrupt).

Then I think some of the bits that are moved from
xen/drivers/passthrough/pci.c (alloc_pci_msi, free_pci_msi and
dump_pci_msi) need to be protected by a Kconfig option different than
CONFIG_PCI_MSI_INTERCEPT, as those are not related to MSI interception,
but to MSI handling in general (ie: Xen devices using MSI need
those). The same with the msi_list and msix fields of pci_dev, those
are not only used for MSI interception.

Or at least might be worth mentioning that the functions will be
needed for Xen to be able to use MSI interrupts itself, even if not
for interception purposes.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:29:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:29:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111148.212516 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX23S-0000LJ-8F; Thu, 15 Apr 2021 13:29:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111148.212516; Thu, 15 Apr 2021 13:29: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 1lX23S-0000LC-4t; Thu, 15 Apr 2021 13:29:10 +0000
Received: by outflank-mailman (input) for mailman id 111148;
 Thu, 15 Apr 2021 13:29:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=sSSh=JM=goodmis.org=rostedt@kernel.org>)
 id 1lX23Q-0000L6-PO
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 13:29:08 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4e866fcc-821c-4b4f-b474-a43636560e06;
 Thu, 15 Apr 2021 13:29:08 +0000 (UTC)
Received: from gandalf.local.home (cpe-66-24-58-225.stny.res.rr.com
 [66.24.58.225])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mail.kernel.org (Postfix) with ESMTPSA id D4926611F1;
 Thu, 15 Apr 2021 13:29: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: 4e866fcc-821c-4b4f-b474-a43636560e06
Date: Thu, 15 Apr 2021 09:29:05 -0400
From: Steven Rostedt <rostedt@goodmis.org>
To: Dario Faggioli <dfaggioli@suse.com>
Cc: Andrew Cooper  <andrew.cooper3@citrix.com>, Giuseppe Eletto
 <giuseppe.eletto@edu.unito.it>, linux-trace-devel@vger.kernel.org,
 xen-devel@lists.xenproject.org, Enrico Bini <enrico.bini@unito.it>
Subject: Re: A KernelShark plugin for Xen traces analysis
Message-ID: <20210415092905.5c2d7aad@gandalf.local.home>
In-Reply-To: <281ee74f5ce416feeafbca7cb8370889e0d2067f.camel@suse.com>
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
	<f33b39a5-9bbd-934f-a9cd-c536a0ba7416@citrix.com>
	<eefc512b8c1ac26c4eaae81e79ee0243901a3de2.camel@suse.com>
	<7184a7d7-6bca-4106-d70e-8cf9d5b227fb@citrix.com>
	<20210414150752.34366b99@gandalf.local.home>
	<281ee74f5ce416feeafbca7cb8370889e0d2067f.camel@suse.com>
X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Thu, 15 Apr 2021 02:50:53 +0200
Dario Faggioli <dfaggioli@suse.com> wrote:

> On Wed, 2021-04-14 at 15:07 -0400, Steven Rostedt wrote:
> > On Wed, 14 Apr 2021 19:11:19 +0100
> > Andrew Cooper <andrew.cooper3@citrix.com> wrote:
> >   
> > > Where the plugin (ought to) live depends heavily on whether we
> > > consider
> > > the trace format a stable ABI or not.  
> > 
> > Agreed. Like the VMware plugin to handle ESX traces. It's internal
> > and not
> > published as the API is not stable.
> >   
> Mmm... Does this imply that Linux's tracepoints should be considered a
> stable ABI then? :-D :-D :-D

Some already are. Like the sched_switch tracepoint. That's one of the
reasons Peter Zijlstra now hates exported tracepoints.

> 
> > But if it ever becomes stable, and you would like it to live with
> > KernelShark, we are looking to have a place to store third party
> > plugins.
> >   
> Sure. TBH, either Xen or KernelShark main or plugin repositories would
> be fine for me.
> 
> Which doesn't mean we should choose randomly, as clearly each solution
> has pros and cons that needs to be evaluated.
> 
> I'm just saying that we would prefer the plugin to end up in one of
> those places, rather than remaining its own project. And of course
> we're up for maintaining it, wherever it lands. :-)

Like I said, we can have a third party repository within the KernelShark
repo (or along side of it). As a claws-mail user, I like their method. They
have a bunch of plugins you can add that they have in their repo, but those
plugins are maintained by different people.

-- Steve


> 
> > We are working to make sure that the API for KernelShark plugins
> > remains
> > stable, so your plugins should always work too.
> >   
> Great!
> 
> Regards



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:31:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:31:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111153.212528 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX25f-00019v-NO; Thu, 15 Apr 2021 13:31:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111153.212528; Thu, 15 Apr 2021 13: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 1lX25f-00019o-IP; Thu, 15 Apr 2021 13:31:27 +0000
Received: by outflank-mailman (input) for mailman id 111153;
 Thu, 15 Apr 2021 13:31: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 1lX25f-00019j-29
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 13:31: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 1lX25Y-0000SY-3p; Thu, 15 Apr 2021 13:31:20 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX25X-0001sx-ID; Thu, 15 Apr 2021 13:31: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=DqsX+LfO2Qc+1KbTD1msTfiRaFiBnsHRKFpXG1msmPU=; b=RQX6RiWZhuM/944bC8Vjs9znQy
	0AcJ5vvOGm7F3t1vm1d6weF2yy5RbUHqcK93nKCRbc8qcCiAgzrraWgmDlMyGniQ61JlIRrpA1UIM
	NJ4kbVpYClCwzEmVnS1jcU37E1kp2spdKvL1c2FtWQj/zh4WQFA6wbSzqskMBp2YfrVs=;
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Rahul Singh <rahul.singh@arm.com>, xen-devel@lists.xenproject.org,
 bertrand.marquis@arm.com, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
From: Julien Grall <julien@xen.org>
Message-ID: <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
Date: Thu, 15 Apr 2021 14:31:15 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHg+6rLN0rBWXcTs@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Roger,

On 15/04/2021 14:26, Roger Pau Monné wrote:
> On Wed, Apr 14, 2021 at 09:49:37AM +0100, Julien Grall wrote:
>> Hi Roger,
>>
>> On 14/04/2021 09:05, Roger Pau Monné wrote:
>>> On Tue, Apr 13, 2021 at 06:12:10PM +0100, Julien Grall wrote:
>>>> Hi Roger,
>>>>
>>>> On 12/04/2021 11:49, Roger Pau Monné wrote:
>>>>> On Fri, Apr 09, 2021 at 05:00:41PM +0100, Rahul Singh wrote:
>>>>>> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
>>>>>> index 705137f8be..1b473502a1 100644
>>>>>> --- a/xen/drivers/passthrough/pci.c
>>>>>> +++ b/xen/drivers/passthrough/pci.c
>>>>>> @@ -1303,12 +1279,15 @@ static int __init setup_dump_pcidevs(void)
>>>>>>     }
>>>>>>     __initcall(setup_dump_pcidevs);
>>>>>> +
>>>>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>>>>>     int iommu_update_ire_from_msi(
>>>>>>         struct msi_desc *msi_desc, struct msi_msg *msg)
>>>>>>     {
>>>>>>         return iommu_intremap
>>>>>>                ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>>>>>>     }
>>>>>> +#endif
>>>>>
>>>>> This is not exactly related to MSI intercepts, the IOMMU interrupt
>>>>> remapping table will also be used for interrupt entries for devices
>>>>> being used by Xen directly, where no intercept is required.
>>>>
>>>> On Arm, this is not tie to the IOMMU. Instead, this handled is a separate
>>>> MSI controller (such as the ITS).
>>>>
>>>>>
>>>>> And then you also want to gate the hook from iommu_ops itself with
>>>>> CONFIG_PCI_MSI_INTERCEPT, if we want to got this route.
>>>>
>>>>
>>>> All the callers are in the x86 code. So how about moving the function in an
>>>> x86 specific file?
>>>
>>> Yes, that seems fine. Just place it in asm-x86/iommu.h. I wonder why
>>> update_ire_from_msi wasn't moved when the rest of the x86 specific
>>> functions where moved there.
>>
>> I am guessing it is because the function was protected by CONFIG_HAS_PCI
>> rather than CONFIG_X86. So it was deferred until another arch enables
>> CONFIG_HAS_PCI (it is easier to know what code should be moved).
>>
>>> Was there an aim to use that in other
>>> arches?
>>
>> In the future we may need to use MSIs in Xen (IIRC some SMMUs only support
>> MSI interrupt).
> 
> Then I think some of the bits that are moved from
> xen/drivers/passthrough/pci.c (alloc_pci_msi, free_pci_msi and
> dump_pci_msi) need to be protected by a Kconfig option different than
> CONFIG_PCI_MSI_INTERCEPT, as those are not related to MSI interception,
> but to MSI handling in general (ie: Xen devices using MSI need
> those).

Well... x86-specific devices yes. We don't know in what form MSI will be 
added on for other arch-specific devices.

  The same with the msi_list and msix fields of pci_dev, those
> are not only used for MSI interception.
> 
> Or at least might be worth mentioning that the functions will be
> needed for Xen to be able to use MSI interrupts itself, even if not
> for interception purposes.

My preference would be to comment in the commit message (although, there 
is no promise they will ever get re-used). We can then modify the #ifdef 
once we introduce any use.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:31:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:31:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111154.212540 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX25j-0001C6-1U; Thu, 15 Apr 2021 13:31:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111154.212540; Thu, 15 Apr 2021 13: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 1lX25i-0001By-U4; Thu, 15 Apr 2021 13:31:30 +0000
Received: by outflank-mailman (input) for mailman id 111154;
 Thu, 15 Apr 2021 13:31:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX25i-0001Bh-23
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 13:31:30 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3a6c5009-3b56-43c6-8c24-fd45a1402bce;
 Thu, 15 Apr 2021 13:31: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: 3a6c5009-3b56-43c6-8c24-fd45a1402bce
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618493488;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=k20bNRLvp0VqnwJzPPXyOP2jvprM/TnY23QM4KXIT/8=;
  b=NdKw0XBiJz8jIFRDak4Wd/Czp4xPkBmS6Jp2vqFJAl2groXkGTHp5Rzd
   M7BX9acAiZ3xL+2hdZpI9mhUim4myC/cPUYdGJH9bAfnviGLU2I532RSP
   G8tvQtFAafj9dTDujxnKIQ+B5MI4WugMKoWg0MYkEXn+rOW1ls8AYhQgy
   s=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: lW3m7Vf3qU58HxPiHgqlmW60L8Pegctbcdon6jEu+k6chU3ExAJbPb4qgmAJlJNGS4HgGA5gVB
 YS3Q08Sl7wd9WbxPByoMd/hbSjlRR/ItaZgm9nLpO6efKWNL2DWsw9tOAWIX6Qr5ndHJyb2SD1
 auyXiL7xm3+4FZNxlLHCvPjdvAov+BBmPyZ0dTnei0D2M6s4HuTDYWpteB67RpKbtpr53rkcwK
 FoP8BuZnP2WserqjY95gTKGPYQy0rD3ciY+WOLJxIsOgyj49uQxj6/3HdstHnNvF+H7TZJGIJf
 vnE=
X-SBRS: 5.2
X-MesageID: 43154377
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:FmM6iK6I+n2F1bmpRgPXwXqEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbDqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH7mGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnl4j41VTRTzbA+tV
 XUigCR3NTYj9iX6D/5k1XS4ZNfhcf7xrJ4ZfCkp8AJJlzX+2OVTat7XbnqhkFQnMiO7xIQnM
 DIs1McOa1ImgzsV0WUhTeo5AX6yjYp7BbZuCylqF/uu9bwSj5/K+cpv/MgTjLj50AtvM5x3c
 twtgrz3fcnbmKj7VHAzuPFWB1wmk2/rWBKq59ps1VlXZYDc7gUlIQD/SpuYec9NRjn44MqGv
 QGNrCk2N9qdzqhHhfkl1gq6tmtUnMvJwyBU0gPt+eEugIm7UxR/g82wtcSkWwH8494Y55Y5/
 7cOqAtr71WSNQKBJgNS9spcI+SMCjgUBjMOGWdLRDOE7wGAWvEr9rS7K8u7O+nVZQUxPIJ6d
 r8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwbz4Rlu5XnLYCbchGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJgwxD+YZ9PMnMTOfdl+uoTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8tRz72CMJc7l26e3PxjRTLMkmdP3DXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHljv8UNDQ
 9DCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PgQcLNkjzYIsSotn3QxEU4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dkWXkmUUv3DPa5sHgKWM6YPEd/oDf9cbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgqocVCuHZf9xVmxyqPsZQlHLauSyn1IMSb0peewTrfd+cgA4oSTYRrE
 Z26bUjjL2JnivqFXEym90iMFpHaH2eBZVPCAjtXvQTppnbPCVLCUuajz2TjB8+Pk7n7V8biG
 DaISqIQv3TGVZGtndE0qHlzUNsegymDjBNQ0E/lbc4OXXNu3513+POXKa13meLQnYpw+0WMl
 j+EHEvCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N5vJ3Gm2FYGOnaYaPvNd8Zp/LuryuusTXe
 /3QX7NEBrIT8cSnyCFrHcsPyd57EQ+mfTzwRv/8SyW2mU8Dfe6GiUue5grZ/Wnq07qSPaD3M
 8n0ZYbve6sPn7wbdDD46fNdDJHIg7Sp2nzb+xAk+EigYsC8J9IW7/cWn/08VsC+jMUBsL9jl
 kfT6R2+6qpAP4lQ+UiPwZiumM0n9GOJnYxugP4AuUCbUgg5kWrS++h0v7tk/4TGUWPqwv7BE
 mH/wBc9/nDWTGf1bRyMdNHHU1mLGw94m9l5uWMasn5DxirbfhK+DOBQzKAWY4YbKiOArMLqB
 lmp/mOgu+MbiL9nCTdpyFyLK4L02GpR6qJcU6xMN8N19yxIlKXhKS2pOa1kTfsUDO+L30iur
 ctTz1ZUu1zzh84jIM21SCuSqv45mId+mEunw1PpxrKwYip4GDSAEdcFxbW668mBQVuDg==
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="43154377"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nqeZngYPiL9uybW7DXHkbRSJ5PSNO/HeQD//SowSTMQpLYC2cxUVgxGVtTWFN+aSuUN3Co6jK7HMUMTZXMqAhaOgw9aUK1EWgDb2C5Q8kwH94NvhDY3c6rqSQpg+SCAbij7orXh/4CZMwIphvxpuDkfz/HbyUYykbXhYenmoxKZUVkphkbQwLwbuG37Ggl2eURJNyEPI6dgbTSTPiLS2IsQMgFvweAmXM0QmmE56nlkoYWQomFcaDR3sp/eZ8CKR0+CmXmQ7w7ttOuzl2VrUKKiC2poJAcX7mJU+DrOMKYXSb23xV4Z462qOUQvV+pezhprgLYzNwA96jfjSfzBowQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mixK3H5yKy8vkzxJMSMbjHfRcDAWkTugFFXd2m9beUo=;
 b=ITGwLDkjr3kGVngnHe76xpNL+PMaBZN7tK6EBAJBDooyMhQ3dN+Z3EjAaoh14Nji+xX4mdpUSSBfR0gbCraD0Jceq7G5SxR7kAur5cZSEW6lRKD5PpWb9KOL1E2urHze/OGIJw8bdXr1AN273tRRD4wOMIwqIW4tbjBSBWgeN4tLvJMtX5+7yrANHUzLv9WS6RQutkeilwu4FKr3dHJsVTL20XB7ckyV4AHV0vYJco54zUTZwt0fv2QB7ayYxHRNI1zBJkrBJ71ta/ler5ZeV5jy0s/e5PVeB+KlKw55h0lCY7lLdbuJRICKTaQx/setrQQQ6CphQ5ZHwMECtJG7iQ==
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=mixK3H5yKy8vkzxJMSMbjHfRcDAWkTugFFXd2m9beUo=;
 b=TO+536uVL7tOxTAIhbh1iJXGxTNaS5gYTu/d3l6AT9MFrCE2i1YR4cUUjwwl8ZYLepTizt/oETF7XMkY9cxBj3nOlAOsEFzUY1msDLRsa0C7KKY7nUDy/RJ145CasDIsevgnEOjA6zwSVMizYfxAJXuI7Jq59DQrhNkMpFSlQP4=
Date: Thu, 15 Apr 2021 15:31: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>, "Ian
 Jackson" <iwj@xenproject.org>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
Message-ID: <YHhAJrTSMgLg/Bna@Air-de-Roger>
References: <20210414110433.83084-1-roger.pau@citrix.com>
 <20210414110433.83084-3-roger.pau@citrix.com>
 <29e8e2a4-3489-17b9-849b-ddfeed76451d@suse.com>
 <5fa30ed1-967e-dcd1-b9cf-110708f2c069@citrix.com>
 <af2cb854-ca3f-22ee-a7b3-8c24fdecfb7e@citrix.com>
 <12301367-e19a-5c89-5751-9937402ac099@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <12301367-e19a-5c89-5751-9937402ac099@suse.com>
X-ClientProxiedBy: MR2P264CA0131.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::23) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 71d8ed0a-8c88-477f-2c8b-08d90012c399
X-MS-TrafficTypeDiagnostic: DM5PR03MB2779:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2779724C4B653483BB45A64B8F4D9@DM5PR03MB2779.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 0K+rb3a5cPUF9N6z3FImLzN2gthc7Y0kLwXF5x4OiXbMT68Qt/5SvNF+WRupwil8zmDM+dEm1QR/M2L4+DtUjOaG+6D2uJtBSzIdXYKoTQTp2+NtzTSyHpgauvCJ5xquQQcdgbXNBDIBQ1FwEJsZbfH36HIjBQHa49r/Dkqi9AJNi715QB4E5xziROgydtpfl7nhop8qYaLjsPXplBdas1cibjeBaykOXmOzmqLqkWNtJz/ZQqNbrFZ2nljm5qy8kHGYa/SXfe8GZq73uyiPZ/M+AMloLopbyBhuzP6lqHbxLwCkDrfr0uQ8oD6qI7XW5d40ASWSlQN/D68UkaGQ+jwrQGDC/rq9ubavaYcl8ilZ2eqLWG4Ah+E8WZ6z/3dOHt4nrVuV6g9cclmdkvqsf+kR3NfSH45pcDFjjWTyWCyzeEqXqBLidklBMBIR2Wa3kJTJhpxsX44qUWW3qAUpZKIFTrWego8Y1AWXF4Dh+udhAXiHwKLM/+ZnekIxPrQDXKHaG1g5/ve0kNyILyA2Fe2hAD4Xc/quAZLxh56FSR50pVauuT96W1HzZuHAQVOprEFrPMAbAe8l33DnKhIdUk78VOcVp6Q7Zte84cLvOIc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(376002)(346002)(39860400002)(396003)(366004)(316002)(6486002)(38100700002)(8676002)(26005)(6916009)(83380400001)(86362001)(53546011)(6666004)(8936002)(54906003)(9686003)(5660300002)(186003)(85182001)(66946007)(478600001)(956004)(16526019)(2906002)(6496006)(33716001)(4326008)(66556008)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?L2RkOCtOLzI4aElJMmJaZz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 71d8ed0a-8c88-477f-2c8b-08d90012c399
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 13:31:24.2131
 (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: 1RpL+D0zBMnMzS1h8BqFPwyFs1TXm8Qbu4avSQtWxIoobHeuqAeg7t4er30ZFdR+Ss+syHtG7NLWWXL3B9gk5w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2779
X-OriginatorOrg: citrix.com

On Wed, Apr 14, 2021 at 03:57:22PM +0200, Jan Beulich wrote:
> On 14.04.2021 15:25, Andrew Cooper wrote:
> > On 14/04/2021 14:05, Andrew Cooper wrote:
> >> On 14/04/2021 13:57, Jan Beulich wrote:
> >>> On 14.04.2021 13:04, Roger Pau Monne wrote:
> >>>> @@ -264,6 +265,38 @@ struct cpuid_policy
> >>>>              };
> >>>>              uint32_t nc:8, :4, apic_id_size:4, :16;
> >>>>              uint32_t /* d */:32;
> >>>> +
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000009. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and features. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000000b. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000000c. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000000d. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000000e. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000000f. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000010. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000011. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000012. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000013. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000014. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000015. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000016. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000017. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000018. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifiers. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000001a - Performance related info. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature information. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000001c. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/Node IDs. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryption. */
> >>>> +            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
> >>>> +
> >>>> +            /* Leaf 0x80000021 - Extended Feature 2 */
> >>>> +            union {
> >>>> +                uint32_t e21a;
> >>>> +                struct { DECL_BITFIELD(e21a); };
> >>>> +            };
> >>>> +            uint32_t /* b */:32, /* c */:32, /* d */:32;
> >>>>          };
> >>>>      } extd;
> >>> Due to the effect of this on what guests get to see, I think this
> >>> wants to take my "x86/CPUID: shrink max_{,sub}leaf fields according
> >>> to actual leaf contents" as a prereq, which in turn may better
> >>> remain on top of "x86/CPUID: adjust extended leaves out of range
> >>> clearing" (both are neighbors in that over 4 months old series,
> >>> fair parts of which could imo go in irrespective of the unsettled
> >>> dispute on xvmalloc() - unfortunately I had made that patch 2 of
> >>> the series, not expecting it to be blocked for so long, and then
> >>> presumably signaling to others that the rest of the series is also
> >>> blocked).
> >> There is no shrinking to be done in this case.  The bit is set across
> >> the board on AMD/Hygon hardware, even on older parts.
> >>
> >> What does need changing however is the logic to trim max_extd_leaf down
> >> to what hardware supports, so the bit is visible on Rome/older
> >> hardware.  I.e. after this change, all VMs should get 0x80000021 by
> >> default on AMD hardware.
> >>
> >> (A curious observation of Milan hardware is that it actually advertises
> >> 0x80000023 as max_extd_leaf, and has two leaves of zeros at the end. 
> >> I've got an open query about this.)
> > 
> > Something like this:
> > 
> > diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
> > index 050cd5713e..d9eb2878c5 100644
> > --- a/xen/arch/x86/cpuid.c
> > +++ b/xen/arch/x86/cpuid.c
> > @@ -311,6 +311,7 @@ static void __init calculate_raw_policy(void)
> >  static void __init calculate_host_policy(void)
> >  {
> >      struct cpuid_policy *p = &host_cpuid_policy;
> > +    unsigned int max_extd_leaf;
> >  
> >      *p = raw_cpuid_policy;
> >  
> > @@ -318,7 +319,18 @@ static void __init calculate_host_policy(void)
> >          min_t(uint32_t, p->basic.max_leaf,   ARRAY_SIZE(p->basic.raw) - 1);
> >      p->feat.max_subleaf =
> >          min_t(uint32_t, p->feat.max_subleaf, ARRAY_SIZE(p->feat.raw) - 1);
> > -    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, p->extd.max_leaf &
> > 0xffff,
> > +
> > +    max_extd_leaf = p->extd.max_leaf;
> > +
> > +    /*
> > +     * For AMD/Hygon hardware before Zen3, we modify LFENCE to be dispatch
> > +     * serialsing.  Extend max_extd_leaf beyond what hardware supports, to
> > +     * include the feature leaf containing this information.
> > +     */
> > +    if ( cpu_has_lfence_dispatch )
> > +        max_extd_leaf = max(max_extd_leaf, 0x80000021);
> > +
> > +    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, max_extd_leaf & 0xffff,
> >                                            ARRAY_SIZE(p->extd.raw) - 1);
> >  
> >      cpuid_featureset_to_policy(boot_cpu_data.x86_capability, p);
> 
> Well, why not set it to ARRAY_SIZE() and then have
> x86_cpuid_policy_shrink_max_leaves() (from "x86/CPUID: shrink
> max_{,sub}leaf fields according to actual leaf contents") have
> a go? It'll recognize the non-zero leaf ... Otherwise, if we
> gain a few more such special cases, things are going to get
> ugly here.

I will wait for Jan to post the updated version of his shrink patch
and then rebase mine on top in order to set extd.max_leaf to
ARRAY_SIZE and let the shrink logic deal with it.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:56:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:56:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111168.212558 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2Tp-0003MF-6B; Thu, 15 Apr 2021 13:56:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111168.212558; Thu, 15 Apr 2021 13: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 1lX2Tp-0003M8-3D; Thu, 15 Apr 2021 13:56:25 +0000
Received: by outflank-mailman (input) for mailman id 111168;
 Thu, 15 Apr 2021 13:56:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LGOb=JM=gmail.com=charles.fg@srs-us1.protection.inumbo.net>)
 id 1lX2Tn-0003M2-Ov
 for xen-devel@lists.xen.org; Thu, 15 Apr 2021 13:56:23 +0000
Received: from mail-wm1-x32b.google.com (unknown [2a00:1450:4864:20::32b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c36663f6-8410-4192-b21e-f5d4e99b6809;
 Thu, 15 Apr 2021 13:56:22 +0000 (UTC)
Received: by mail-wm1-x32b.google.com with SMTP id
 t14-20020a05600c198eb029012eeb3edfaeso2320854wmq.2
 for <xen-devel@lists.xen.org>; Thu, 15 Apr 2021 06: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: c36663f6-8410-4192-b21e-f5d4e99b6809
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:from:date:message-id:subject:to;
        bh=byRvgTFGO9ucYURh1Ie6umYu+Fuaut31wnKr8l4qWTM=;
        b=ndSNjVobAnwoYIIzedy+pEgJF10VGFdyLqgHv3fBgVcjG9xDgSrpV6ngnvdNx6o8Kr
         8MmcLrYja4HfccN55eo7LjpFIDO8QZD15CvP7zz58IEB6QPtqifBLjZnJjWAVDCChrWC
         acpYEj69CuVgZBRwdWLMu4iHltesd5iWC4N/NpIWt/ctva6dOhZj3cR72Gw1z2fVNIHS
         ciAvUhk4ZHPGHNboUgKlyNxYQVKgfBZ2tqjGPn4iCHrh7bG4izQ/JE1HmJgf7EjJiEDT
         qUaOimfOnwzH9VXUNPmd8m+29RCddS7/LCcAaxbFcmdJ0EyFIzMWQ3iMjRs7KbXiPHof
         0UKg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=byRvgTFGO9ucYURh1Ie6umYu+Fuaut31wnKr8l4qWTM=;
        b=EjP2xCicRhhQx6myMR75H+rym64gDITxdLeHxc7qUvJhVFIhLaxNu3FUhb/C+MU68/
         JSvtJ/vJdPDNh3/2MuVFZZHOcqyJ/WSAbUE/iljOo4/jmX10m7zNz8bWfSMI5GZi81CZ
         nuTjDG+jIm5ZSYzUkDDZ9hU7EWu+NIkSp+GqU3JpvQMa+9B9MeuZGDLOQv0GbNQ8QAGV
         iKpi5UqG7CV6EodmXD2tFFV3m0X9aDZlVGZFUBogFxz3keajs5pVV4Iach0IgM4jTJyu
         zXuHAKw5ImAQyzX0xeyScKwhxrsDVD7+a9sJswcitxKNbnLJOFT3jnJEaoKmjoZOx1sN
         ej8A==
X-Gm-Message-State: AOAM530GVgMa0NMxT5pEjbxJp/g9RJFjTKrq/YeJn53PGLNrz1vJ3TWF
	KY5CFDyco03WcMaP8PYhW9UgqslbiamSnUpBfueKNr8Dygp/qg==
X-Google-Smtp-Source: ABdhPJwgriCMcbcDpzZdT3UXoMsrOqzlmHyHnS1ge/FCUdBIJCseL/HcjD47aHXwmem/taqyideGtaHLtMvVCMxoKdo=
X-Received: by 2002:a1c:9d90:: with SMTP id g138mr3292521wme.156.1618494981057;
 Thu, 15 Apr 2021 06:56:21 -0700 (PDT)
MIME-Version: 1.0
From: =?UTF-8?Q?Charles_Gon=C3=A7alves?= <charles.fg@gmail.com>
Date: Thu, 15 Apr 2021 14:55:45 +0100
Message-ID: <CAAQRGoD4yEEhiQk8LkKuOU_F2As3BsichHNY_ijoiVWwd3JZPw@mail.gmail.com>
Subject: Failed to enable debug messages in xen 4.13
To: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="0000000000006ab15c05c0033add"

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

Hello Guys,

I've enabled the log_lvl=3Dall guest_loglvl=3Dall, tried the xl debug-key +=
,
configured the build with
./configure --enable-debug

Do I miss something?

xl info

                                                      6:15
host                   : xendev
release                : 4.4.0-148-generic
version                : #174~14.04.1-Ubuntu SMP Thu May 9 08:17:37 UTC 201=
9
machine                : x86_64
nr_cpus                : 16
max_cpu_id             : 15
nr_nodes               : 1
cores_per_socket       : 8
threads_per_core       : 2
cpu_mhz                : 2994.413
hw_caps                :
178bf3ff:f6d8320b:2e500800:244033ff:0000000f:209c01a9:00000000:00000500
virt_caps              : pv hvm hvm_directio pv_directio hap shadow
total_memory           : 32699
free_memory            : 28229
sharing_freed_memory   : 0
sharing_used_memory    : 0
outstanding_claims     : 0
free_cpus              : 0
xen_major              : 4
xen_minor              : 13
xen_extra              : .0
xen_version            : 4.13.0
xen_caps               : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32
hvm-3.0-x86_32p hvm-3.0-x86_64
xen_scheduler          : credit2
xen_pagesize           : 4096
platform_params        : virt_start=3D0xffff800000000000
xen_changeset          : Tue Dec 17 14:19:49 2019 +0000 git:a2e84d8-dirty
xen_commandline        : placeholder dom0_mem=3D2048M,max:2048M log_lvl=3Da=
ll
guest_loglvl=3Dall dom0_max_vcpus=3D2 dom0_vcpus_pin
cc_compiler            : gcc (Ubuntu 7.5.0-3ubuntu1~14.04.1) 7.5.0
cc_compile_by          : root
cc_compile_domain      :
cc_compile_date        : Wed Apr 14 05:13:56 WEST 2021
build_id               : 428bb9223a72819e497d6b06a396034ab3b5280d
xend_config_format     : 4





Atenciosamente,
*Charles Ferreira Gon=C3=A7alves *

--0000000000006ab15c05c0033add
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: base64

PGRpdiBkaXI9Imx0ciI+SGVsbG8gR3V5cyzCoDxkaXY+PGJyPjwvZGl2PjxkaXY+SSYjMzk7dmUg
ZW5hYmxlZCB0aGXCoGxvZ19sdmw9YWxsIGd1ZXN0X2xvZ2x2bD1hbGwsIHRyaWVkwqB0aGUgDQoN
CnhsIGRlYnVnLWtleSArLCBjb25maWd1cmVkIHRoZSBidWlsZCB3aXRowqA8L2Rpdj48ZGl2Pi4v
Y29uZmlndXJlIC0tZW5hYmxlLWRlYnVnPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5EbyBJIG1p
c3Mgc29tZXRoaW5nPzwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+eGwgaW5mbyDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC
oCA2OjE1PGJyPmhvc3QgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgOiB4ZW5kZXY8YnI+cmVs
ZWFzZSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoDogNC40LjAtMTQ4LWdlbmVyaWM8YnI+dmVyc2lv
biDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoDogIzE3NH4xNC4wNC4xLVVidW50dSBTTVAgVGh1IE1h
eSA5IDA4OjE3OjM3IFVUQyAyMDE5PGJyPm1hY2hpbmUgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqA6
IHg4Nl82NDxicj5ucl9jcHVzIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgOiAxNjxicj5tYXhfY3B1
X2lkIMKgIMKgIMKgIMKgIMKgIMKgIDogMTU8YnI+bnJfbm9kZXMgwqAgwqAgwqAgwqAgwqAgwqAg
wqAgOiAxPGJyPmNvcmVzX3Blcl9zb2NrZXQgwqAgwqAgwqAgOiA4PGJyPnRocmVhZHNfcGVyX2Nv
cmUgwqAgwqAgwqAgOiAyPGJyPmNwdV9taHogwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqA6IDI5OTQu
NDEzPGJyPmh3X2NhcHMgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqA6IDE3OGJmM2ZmOmY2ZDgzMjBi
OjJlNTAwODAwOjI0NDAzM2ZmOjAwMDAwMDBmOjIwOWMwMWE5OjAwMDAwMDAwOjAwMDAwNTAwPGJy
PnZpcnRfY2FwcyDCoCDCoCDCoCDCoCDCoCDCoCDCoDogcHYgaHZtIGh2bV9kaXJlY3RpbyBwdl9k
aXJlY3RpbyBoYXAgc2hhZG93PGJyPnRvdGFsX21lbW9yeSDCoCDCoCDCoCDCoCDCoCA6IDMyNjk5
PGJyPmZyZWVfbWVtb3J5IMKgIMKgIMKgIMKgIMKgIMKgOiAyODIyOTxicj5zaGFyaW5nX2ZyZWVk
X21lbW9yeSDCoCA6IDA8YnI+c2hhcmluZ191c2VkX21lbW9yeSDCoCDCoDogMDxicj5vdXRzdGFu
ZGluZ19jbGFpbXMgwqAgwqAgOiAwPGJyPmZyZWVfY3B1cyDCoCDCoCDCoCDCoCDCoCDCoCDCoDog
MDxicj54ZW5fbWFqb3IgwqAgwqAgwqAgwqAgwqAgwqAgwqA6IDQ8YnI+eGVuX21pbm9yIMKgIMKg
IMKgIMKgIMKgIMKgIMKgOiAxMzxicj54ZW5fZXh0cmEgwqAgwqAgwqAgwqAgwqAgwqAgwqA6IC4w
PGJyPnhlbl92ZXJzaW9uIMKgIMKgIMKgIMKgIMKgIMKgOiA0LjEzLjA8YnI+eGVuX2NhcHMgwqAg
wqAgwqAgwqAgwqAgwqAgwqAgOiB4ZW4tMy4wLXg4Nl82NCB4ZW4tMy4wLXg4Nl8zMnAgaHZtLTMu
MC14ODZfMzIgaHZtLTMuMC14ODZfMzJwIGh2bS0zLjAteDg2XzY0IDxicj54ZW5fc2NoZWR1bGVy
IMKgIMKgIMKgIMKgIMKgOiBjcmVkaXQyPGJyPnhlbl9wYWdlc2l6ZSDCoCDCoCDCoCDCoCDCoCA6
IDQwOTY8YnI+cGxhdGZvcm1fcGFyYW1zIMKgIMKgIMKgIMKgOiB2aXJ0X3N0YXJ0PTB4ZmZmZjgw
MDAwMDAwMDAwMDxicj54ZW5fY2hhbmdlc2V0IMKgIMKgIMKgIMKgIMKgOiBUdWUgRGVjIDE3IDE0
OjE5OjQ5IDIwMTkgKzAwMDAgZ2l0OmEyZTg0ZDgtZGlydHk8YnI+eGVuX2NvbW1hbmRsaW5lIMKg
IMKgIMKgIMKgOiBwbGFjZWhvbGRlciBkb20wX21lbT0yMDQ4TSxtYXg6MjA0OE0gbG9nX2x2bD1h
bGwgZ3Vlc3RfbG9nbHZsPWFsbCBkb20wX21heF92Y3B1cz0yIGRvbTBfdmNwdXNfcGluPGJyPmNj
X2NvbXBpbGVyIMKgIMKgIMKgIMKgIMKgIMKgOiBnY2MgKFVidW50dSA3LjUuMC0zdWJ1bnR1MX4x
NC4wNC4xKSA3LjUuMDxicj5jY19jb21waWxlX2J5IMKgIMKgIMKgIMKgIMKgOiByb290PGJyPmNj
X2NvbXBpbGVfZG9tYWluIMKgIMKgIMKgOiA8YnI+Y2NfY29tcGlsZV9kYXRlIMKgIMKgIMKgIMKg
OiBXZWQgQXByIDE0IDA1OjEzOjU2IFdFU1QgMjAyMTxicj5idWlsZF9pZCDCoCDCoCDCoCDCoCDC
oCDCoCDCoCA6IDQyOGJiOTIyM2E3MjgxOWU0OTdkNmIwNmEzOTYwMzRhYjNiNTI4MGQ8YnI+eGVu
ZF9jb25maWdfZm9ybWF0IMKgIMKgIDogNDxicj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2Pjxi
cj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PjxiciBjbGVhcj0iYWxsIj48ZGl2PjxkaXYgZGly
PSJsdHIiIGNsYXNzPSJnbWFpbF9zaWduYXR1cmUiIGRhdGEtc21hcnRtYWlsPSJnbWFpbF9zaWdu
YXR1cmUiPjxkaXYgZGlyPSJsdHIiPjxkaXY+PGJyPjwvZGl2PjxkaXY+QXRlbmNpb3NhbWVudGUs
PC9kaXY+PGI+Q2hhcmxlcyBGZXJyZWlyYSBHb27Dp2FsdmVzIDwvYj48YnI+PGZvbnQgY29sb3I9
IiM2NjY2NjYiPjxicj48L2ZvbnQ+PGZvbnQgY29sb3I9IiM2NjY2NjYiIHNpemU9IjEiPjxicj48
L2ZvbnQ+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+DQo=
--0000000000006ab15c05c0033add--


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:56:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:56:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111170.212570 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2UE-0003RA-FY; Thu, 15 Apr 2021 13:56:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111170.212570; Thu, 15 Apr 2021 13:56: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 1lX2UE-0003R3-Bk; Thu, 15 Apr 2021 13:56:50 +0000
Received: by outflank-mailman (input) for mailman id 111170;
 Thu, 15 Apr 2021 13:56:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2UD-0003Qw-23
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 13:56:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ff141ed0-e8c6-43d0-968d-eea0c8639df6;
 Thu, 15 Apr 2021 13:56:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D879EAFBF;
 Thu, 15 Apr 2021 13:56: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: ff141ed0-e8c6-43d0-968d-eea0c8639df6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618495007; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=XNJeB01swBoa7frEzDJ795xvk8RU/K28iYVC5K/YFP0=;
	b=mR/TMh/hsyW/diHxKS7LSx3CK34nSk5cHcULhkM9PKCPD75n+f5+nQPJgNHBIP8B3SSKVD
	8sKnzYemnmCqHo9Hd704IkzF9YK45p6MQfx/O3Mqbij3h8N4HVQK87SewaIL5jajQcCMNb
	j8cRt2Q5AbRVo8TmZ2CtKFSbhV88E+A=
Subject: Re: [PATCH v2 11/17] x86/CPUID: adjust extended leaves out of range
 clearing
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, 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: <255f466c-3c95-88c5-3e55-0f04c9ae1b12@suse.com>
 <0f04f568-e55a-ef20-aa97-fbb199dfae37@suse.com>
 <b8960b03-4671-8653-2897-7d1b116e599b@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <2cca15ba-b704-c038-5b3d-63435d3c6e80@suse.com>
Date: Thu, 15 Apr 2021 15:56:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <b8960b03-4671-8653-2897-7d1b116e599b@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 14:48, Andrew Cooper wrote:
> On 23/11/2020 14:32, Jan Beulich wrote:
>> --- a/xen/lib/x86/cpuid.c
>> +++ b/xen/lib/x86/cpuid.c
>> @@ -232,7 +232,9 @@ void x86_cpuid_policy_clear_out_of_range
>>                      ARRAY_SIZE(p->xstate.raw) - 1);
>>      }
>>  
>> -    zero_leaves(p->extd.raw, (p->extd.max_leaf & 0xffff) + 1,
>> +    zero_leaves(p->extd.raw,
>> +                ((p->extd.max_leaf >> 16) == 0x8000
>> +                 ? (p->extd.max_leaf & 0xffff) + 1 : 0),
>>                  ARRAY_SIZE(p->extd.raw) - 1);
> 
> Honestly, this is unnecessary complexity and overhead, and the logic is
> already hard enough to follow.
> 
> There won't be extd.max_leaf with the high half != 0x8000 in real
> policies, because of how we fill them.  Nor ought there to be, given the
> intended meaning of this part of the union.
> 
> I think we simply forbid this case, rather than taking extra complexity
> to cope with it.  Approximately all VMs will have 0x80000008 as a
> minimum, and I don't think catering to pre-64bit Intel CPUs is worth our
> effort either.

"Forbid" has got to mean something other than "assume all input is fine".
Aiui guest config files can restrict the maximum sub-leaves exposed to a
guest. If we don't want to handle the case here, where else to you
suggest we at least and complain about the broken assumption? (IOW I'd
be okay dropping this patch if your "forbid" actually means some
enforcement elsewhere, and then perhaps a comment pointing there ahead
of the zero_leaves() invocation here.)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:57:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:57:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111176.212582 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2V0-0003Yp-RH; Thu, 15 Apr 2021 13:57:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111176.212582; Thu, 15 Apr 2021 13:57: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 1lX2V0-0003Yi-Md; Thu, 15 Apr 2021 13:57:38 +0000
Received: by outflank-mailman (input) for mailman id 111176;
 Thu, 15 Apr 2021 13:57:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uKzl=JM=kroah.com=greg@srs-us1.protection.inumbo.net>)
 id 1lX2Uz-0003Ya-Sn
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 13:57:38 +0000
Received: from out2-smtp.messagingengine.com (unknown [66.111.4.26])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 833c651a-936c-433b-9c72-cfaf311eca7b;
 Thu, 15 Apr 2021 13:57:36 +0000 (UTC)
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id 88B1E5C0194;
 Thu, 15 Apr 2021 09:57:36 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Thu, 15 Apr 2021 09:57:36 -0400
Received: from localhost (83-86-74-64.cable.dynamic.v4.ziggo.nl [83.86.74.64])
 by mail.messagingengine.com (Postfix) with ESMTPA id ADEC0240057;
 Thu, 15 Apr 2021 09:57: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: 833c651a-936c-433b-9c72-cfaf311eca7b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kroah.com; h=
	date:from:to:cc:subject:message-id:references:mime-version
	:content-type:in-reply-to; s=fm3; bh=jfSg5duuUTsC7Zu0OFnc3g37Jmr
	ZtyX1JeECNWT8APg=; b=eJw02QP5SgDmfUXxhsua6b3XvtLIq9aVxluANpWttRs
	Z7V1t9B6eqcN/B4gD7Uq7tF176lw3J7A1glyl/dKHqij09uXsqfN9ArvCYgqEHMi
	Kc+76/HlA7wk0JauDvco/5pFhAaJHEsTMSqbmMqDVss4NKwmp+5iu0Jj243E1iJO
	IL1BiBWftqpIlHEmPPyJN7pL8k3h6UUZNIUMNm4RRW4bwrQcbfkP3HuJb59EP0+J
	p//23UO7Izc6+mnpIz4mwHlNhjjj0goUzZnVqt9BgHgdfUu1W8GZatA/RYNzuOQD
	afEYvkEafvGinyJRI95BXl0k3FClWkqgbsSH9Nilq7Q==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-type:date:from:in-reply-to
	:message-id:mime-version:references:subject:to:x-me-proxy
	:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=jfSg5d
	uuUTsC7Zu0OFnc3g37JmrZtyX1JeECNWT8APg=; b=BDVbxagipk3EkwKdf9ucJr
	Xntythxjk2r4IBWfDCPtIvH1WjOhQIaeho9jGjss8za7zhY9PmSML1QEoKhUl1+K
	mKla9G+IPbm4JF2c9GnOrvrzmbPYIVN7mo5Rf7cym5ILXtzd3nXN/pJhE+Vw52gA
	UyFMx6CEgzKZC9DWrm4zmxoJ6TIo1Y+BuiZDmYXrZ5uRDZk3iqkP8wqAra/q6KSx
	3xJeTJfz47d+YY19kSLUfWsflelQ+USAN+AwJUdWTZa86sej/26vWdG7+mUJCDbU
	JMTEzIbfRsKENN9qMTVSmoTj0i4SrYYRylPUlFrTGpvKmDflN+Okx6OFNqLjEDmQ
	==
X-ME-Sender: <xms:T0Z4YBRnKDhOmXcowo_JglIbZz22p8nU99lcIQKp3weLGch7F8fykg>
    <xme:T0Z4YKz3NdyTsu5b-6LeyzoRb-NOvdmqycCF9yQkj1RwIsIC4HiDkz4ot12S5Ib8F
    2njL7ujF8apqA>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrudelfedgjeegucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepfffhvffukfhfgggtuggjsehttdertddttddvnecuhfhrohhmpefirhgvghcu
    mffjuceoghhrvghgsehkrhhorghhrdgtohhmqeenucggtffrrghtthgvrhhnpeevueehje
    fgfffgiedvudekvdektdelleelgefhleejieeugeegveeuuddukedvteenucfkphepkeef
    rdekiedrjeegrdeigeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrih
    hlfhhrohhmpehgrhgvgheskhhrohgrhhdrtghomh
X-ME-Proxy: <xmx:T0Z4YG1Ub7HDFpw-MSJ_PQn6GD0aB3SQqlPTXR1RnjyhSdMT7BifJg>
    <xmx:T0Z4YJBMoDFFTT_GzQw7P0IsLVs2twWbjPGmDO96yKKRAZVOnH7MrQ>
    <xmx:T0Z4YKi9DdfzYbcKBRn4tzZgx68s2kJinVXFpN2Z_ODJo3uu-Ibajg>
    <xmx:UEZ4YNvXo7_PRAacA12fLSOkT1IwBBUjRWux3Z7jSiyh1h7BFT95xA>
Date: Thu, 15 Apr 2021 15:57:33 +0200
From: Greg KH <greg@kroah.com>
To: Juergen Gross <jgross@suse.com>
Cc: stable@vger.kernel.org, Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] xen/events: fix setting irq affinity
Message-ID: <YHhGTZFXzPg+FaEq@kroah.com>
References: <20210412062845.13946-1-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210412062845.13946-1-jgross@suse.com>

On Mon, Apr 12, 2021 at 08:28:45AM +0200, Juergen Gross wrote:
> The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
> unmask an event channel when an eoi is pending") introduced a
> regression for stable kernels 5.10 and older: setting IRQ affinity for
> IRQs related to interdomain events would no longer work, as moving the
> IRQ to its new cpu was not included in the irq_ack callback for those
> events.
> 
> Fix that by adding the needed call.
> 
> Note that kernels 5.11 and later don't need the explicit moving of the
> IRQ to the target cpu in the irq_ack callback, due to a rework of the
> affinity setting in kernel 5.11.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
> This patch should be applied to all stable kernel branches up to
> (including) linux-5.10.y, where upstream patch 25da4618af240fbec61 has
> been added.

Now queued up, thanks.

greg k-h


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 13:58:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 13:58:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111182.212593 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2W9-0003jG-9x; Thu, 15 Apr 2021 13:58:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111182.212593; Thu, 15 Apr 2021 13: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 1lX2W9-0003j9-6e; Thu, 15 Apr 2021 13:58:49 +0000
Received: by outflank-mailman (input) for mailman id 111182;
 Thu, 15 Apr 2021 13:58:48 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6tgI=JM=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lX2W8-0003j0-9b
 for xen-devel@lists.xen.org; Thu, 15 Apr 2021 13:58:48 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 55aa4e45-6a94-4c27-8615-2bed12ed8031;
 Thu, 15 Apr 2021 13:58: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: 55aa4e45-6a94-4c27-8615-2bed12ed8031
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618495126;
  h=subject:to:references:from:message-id:date:in-reply-to:
   content-transfer-encoding:mime-version;
  bh=kkbL/tScrPOyWx7fIQmOpVT96XQUsbYpPCsTcJx5ujE=;
  b=YutkaH4ruBamgSHK6HYwRbBPmM7S6rdWGPa92SQpCxWNrn7iwh5mARxf
   W+vWeE8eADKZMfaakS3Lx+3Bgj5UUlzyssTqtKNxhrjtAbgB0m0TfQdkc
   LhzFVvbT+qfmISp0+6MaxfuQ0Bqnh/kzCcyiN7BT40Yit1KVwfxuqVQQT
   k=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: +JwQ6GrMA/3dmWcS7O58MVQcq6665alhDTR5zZu5T/v/jhOZQAOErLl0brBZa6IkZZUjw+HrrM
 LwqxRYgbLki16amtLv4JdADOOy1HBr/oaWK6ZwJ7ek9tIZVxuJx9PK2L18gGgsbvxUeLFyGVET
 4V9zB6oSQhdBazfDO+ooGEtBZw8mv/7FoPlT7h7L/KKZsd443hAKv6UEW7Rw6pW+eFC7y4Cpmq
 ke3MuxHj4hFlCX9bsvgjdkWPSOeRDXUdurvpIR63c5wHW9Ev1tlZz8WHpabMrr8whP7tCjdWfa
 /aI=
X-SBRS: 5.2
X-MesageID: 41677721
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:GT0xZ6M1HgJNr8BcT1Dw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsa9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrwHIMxbVstRQ3a
 IIScVDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RZQZCttbLxt6Bo8Lw6dHFF/SgUuP+tEKL
 O34M1bqz28PUkNZsOgCXUfG8TFrdvHlJXpCCR2eiIPwg+IkD+u9frGAwGVty1uKQ9n7JUD1S
 z+kwL/7ri+qP3T8HHh/kLa8pg+oqqZ9vJtH8qJ4/JlTQnEqgHtX4h5Xq3HgTZdmpDV1H8PsP
 3h5ygtJN5y7XS5RBDEnTLI1xP72Dgjr1/OoGXo50fLmsDySDIkB8cpv+swGXG4milQzu1U66
 5F03mUsJBaF3r77UDAzuPFSg1wkQ6MqWci+NRj/kB3a5cUa7NasOUkjSFoOaoHdRiKjbwPLP
 NjF4X16vpQbDqhHgjkl1gq6tmtUnMvJwyBU0gPt+eEugIm4kxR/g82wtcSkWwH8494Y55Y5/
 7cOqAtr71WSNQKBJgNSdspcI+SMCjgUBjMOGWdLRDOE7wGAWvEr9rS7K8u7O+nVZQUxPIJ6d
 j8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwbz4Rlu5XnLYCbcBGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJgwxD+YZ9PMnMTOfdl9OoTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8tRz72CMJc7l26e3PxjRTLMkmdOXDXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHljv8UNDQ
 lDCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PgQcLNkjzYIsSotn3QxEW4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dkWXkmUUv3DPa5sHgKWM6YPEd/oDf9kbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgqocVCuHZf9xVmxyqPsZQlHLauSyn1IESb0peewTrfd+cgA4oSTYRrE
 Z26bUjjL2JnivqFXEym90iMFpHaH2eBZVPCAjtXvQRppnbPCVLCUuajz2TjB8+Pk7n7V8biG
 DaISqIQv3TGVZGtndE0qHlzUNsegymDjFNQ0E/lbc4OXXNu3513+POXKa13meLQnYpw+0WMl
 j+EHMvCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N5vJ3Gm2FYGOnaYaPvNd8Zp/LuryuusTXe
 /3QX7TEBrIT8cSnyqbqXYuNHMq9D0Kkfb01Abk62b99nglGvbWKElnQbZeA9z01RmRe9+4lL
 FCyfQytq+MF0+0TPis46TedSRCJRPeunTedZBglblk+YYJ8IJuFJzaWwbS3H5J3B8CPN75/X
 luNZhT0fTkAMtTZMQcdCJSw0oxmPmOJEUttBbqAuVWRyBbs1bre/eI6aHPs7whHwmooxbxI0
 CW90Rmjrz4dhrG8b4REKQrJ2tKLGA69XR55euHM6ndEh+jee0G3F20NBaGAfVgYZnAPbUbtR
 Bh5d6U28eRairjwQjV+QJBHZgmyRfQfeqCRCSWGeBJ9NSmOVODxouSifTD8wvfeH+ccEQXhY
 pMaEoKSN9M4wNSyrEK7g==
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="41677721"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ABVTwdpiKjIzQBoMsY6LFWFypK2bK6I+o0535vQ3ez82OmtUdKPY/dm3Rax9Ntv8Lj3wYsE1LfIFXUQKDVmRpe0lZT8wWGuSWxCtHjUCV01+AN5YjmvmJTqs3Wn0VbakitoDb7ENzgpCMP8rD+DpLFfxoGQOsW1lJHxCUyUygUim8VSC19ch7OC5f4axnGjkSNUvxas/rNcCbzabU00jOdDNBpEdimkW9C0QIyJxoXUA9Sx63FEgpJB+6TQuXsDCyyMOLJQ0l79a8fuHGXYLrfWHHUUOEFEKAjME0Hq7u1CaNAOepUQsUYT+ioVZR5g9Qz5r9a2mGNUuAFMBIAtE1A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kkbL/tScrPOyWx7fIQmOpVT96XQUsbYpPCsTcJx5ujE=;
 b=UAure3G+FVmpa8E0lCVDnDVMmEx+KsWYlDKjGcwkwR1eNhanJW5VVCRUyPCW43ArtJ9jr0+A8ouPTYtmzUlkhoM6ruqPdhkE+hHr0GunfvW9MK3WjbRl+x6hA1HBUQ3v8fzuOsgDnzXGZ9k/J1VDPsuliglfyW4z2P90MaO9GKUd9Ta6wqoPWDu9HkwocefNgTBtQ1NMM+PGR9BJbh1oB2uytUN95SCDojXnA3BMlL/rEL7QQ8zp6b9Nd03fc9MliUDdHEdb9/MNIEd3qhUDjUaG3wPIuyx6vxB3JtpYK7CaBaKAuV3fftj9HLv7MARc47TbKMsSLJgXaVKKmx5SVQ==
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=kkbL/tScrPOyWx7fIQmOpVT96XQUsbYpPCsTcJx5ujE=;
 b=pGirRNwXonk+m/ORQHJ2nnoHWP7l4uu5cN15E28g1xrezMaNnUPZyDP0Ok2nATYhoMsqB/tFbLzst4cpEOqbI3HUUmjlzg7uHEVTCCM17wUs5UWX8O/McBtYzdh2lKz4bE6kbKtlRXSlzwkpHSm7R4h6y1lGie8Rrxlhg0qWgAw=
Subject: Re: Failed to enable debug messages in xen 4.13
To: =?UTF-8?Q?Charles_Gon=c3=a7alves?= <charles.fg@gmail.com>,
	<xen-devel@lists.xen.org>
References: <CAAQRGoD4yEEhiQk8LkKuOU_F2As3BsichHNY_ijoiVWwd3JZPw@mail.gmail.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <37044b5d-3395-a252-01b2-f457deb43edb@citrix.com>
Date: Thu, 15 Apr 2021 14:58:20 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <CAAQRGoD4yEEhiQk8LkKuOU_F2As3BsichHNY_ijoiVWwd3JZPw@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0312.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::36) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a5ae35b4-f686-42f8-e376-08d900168a15
X-MS-TrafficTypeDiagnostic: BY5PR03MB5348:
X-Microsoft-Antispam-PRVS: <BY5PR03MB53481BAFEB638FFB0D35D0EBBA4D9@BY5PR03MB5348.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4714;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 7diDuFLM+QGKLL8Wd2WRBjwUeVGS5C/+M/GtvwvoV50cQijNDxHYtjbvlB2xnd0qrm5dvO5Uo9fMXmz/VMlemMEu/2dAAuWpWUI7ilSi6x5nIqSxTRBE7ZkRbsgk6UWTt5pNOFeXY7p8vZ3Oe2zzWJZ9TwiFYOKItBbm4eDIrOUmI/3ao+BYDm0z9N2M5T31CJjxCgnadZQWZ+q85j2x0gYHiiEJCBSVkjLxWDbtvXicYE5+IOjnTFc54YRVXqaH2YKI5XdlsCjRz9maWSJPxGzHkuvj1lywrWY23WTseH+0qJzpMPnGl0Ap2WlgNzLGCvBLUGt0Tf5gIlrXfT90CzIgMoUk135S3BRbG3AkWBu4LHy53Ca8I0wd8NKRPCE1XfAu3bTlMUaIitl1RIhfgpNNGyppVUtRI9X5K+Z2rySQ6u/5w1BrIImrM6kxWAz8ViSaV/UV2eCcI4+8b8M7cCdM/yeXxhskIiK9Ae5NqLUBj3OU9TfucBbqnwSKgPH4bmuRMf3KpnjymLRK6bCGjV1dBtG+WAx+CKVJioO4SLUKjNI6HUgXD5WzV54BmUWQCJqXB8DKq7eRy66XD5UPXcm7Am7VIjuKYsHclw+2QwJnl67ECdF/udrBY7craJRc9vlAHVcVEKQeqgnwEzhlH2dqxQm0LhkufEkVXOh7iOZLqVybsf9DctcuOmboUn0r
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(396003)(366004)(136003)(346002)(376002)(2906002)(478600001)(26005)(31696002)(5660300002)(36756003)(8676002)(16526019)(16576012)(4744005)(316002)(6486002)(186003)(66556008)(86362001)(8936002)(66946007)(6666004)(66476007)(956004)(38100700002)(2616005)(53546011)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/RGRwzQ?=
X-MS-Exchange-CrossTenant-Network-Message-Id: a5ae35b4-f686-42f8-e376-08d900168a15
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 13:58:25.8914
 (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: QpxwI+flktKLHsNuoIET3Ciy8+YI4st1LItCwdi3JqQUnYGkgrVMXhgsqHQYGghpjCcGcSGojNlzu7XzoSiBXeChavkNfHu6115Je5xB3AE=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5348
X-OriginatorOrg: citrix.com

On 15/04/2021 14:55, Charles Gonçalves wrote:
> Hello Guys, 
>
> I've enabled the log_lvl=all guest_loglvl=all, tried the xl debug-key
> +, configured the build with 
> ./configure --enable-debug
>
> Do I miss something?

./configure is for the userspace tools.

You want `make -C xen menuconfig` and select CONFIG_DEBUG to build a
debug hypervisor.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:01:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:01:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111189.212606 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2YY-0004dt-Nu; Thu, 15 Apr 2021 14:01:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111189.212606; Thu, 15 Apr 2021 14: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 1lX2YY-0004dm-Kn; Thu, 15 Apr 2021 14:01:18 +0000
Received: by outflank-mailman (input) for mailman id 111189;
 Thu, 15 Apr 2021 14:01:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2YX-0004dh-2m
 for xen-devel@lists.xen.org; Thu, 15 Apr 2021 14:01:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c574ad02-c730-498b-8600-86717c1a2968;
 Thu, 15 Apr 2021 14:01:16 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 904C7AFAB;
 Thu, 15 Apr 2021 14:01: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: c574ad02-c730-498b-8600-86717c1a2968
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618495275; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=uxTtTuySnsDyqsCR0lMb0cEKRyC26Dy4kIi+JxtD2BU=;
	b=eCkifXH04nqoY1IRazpfmXvz94uVRkMEzIHd4yrx4OowJIQgUKXXKERGd+3gVknupLw6Pz
	0oDuooXO4bfKphptXjF1O5QV6/kYoEJvMCAuSYTyiVnV25wbWaFJPNAIl+VgS/0yA642C1
	D1WNbkznw6ro9hQwSoRIpQar1IV7pmk=
Subject: Re: Failed to enable debug messages in xen 4.13
To: =?UTF-8?Q?Charles_Gon=c3=a7alves?= <charles.fg@gmail.com>
References: <CAAQRGoD4yEEhiQk8LkKuOU_F2As3BsichHNY_ijoiVWwd3JZPw@mail.gmail.com>
Cc: xen-devel@lists.xen.org
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e8c69e6e-e600-7f78-fb66-eddec17d618a@suse.com>
Date: Thu, 15 Apr 2021 16:01:15 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <CAAQRGoD4yEEhiQk8LkKuOU_F2As3BsichHNY_ijoiVWwd3JZPw@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 15:55, Charles Gonçalves wrote:
> I've enabled the log_lvl=all guest_loglvl=all,

The first one is mis-spelled and needs to be "loglvl=".

> tried the xl debug-key +,

If this didn't help, did you perhaps not do a debug build of Xen?
Debug messages get completely compiled out of release builds.

> configured the build with
> ./configure --enable-debug

This, in any event, has an effect on the tool stack build only.
The hypervisor build gets configured via kconfig, with the settings
tracked in xen/.config.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:03:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:03:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111194.212618 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2ah-0004n2-5n; Thu, 15 Apr 2021 14:03:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111194.212618; Thu, 15 Apr 2021 14: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 1lX2ah-0004mv-26; Thu, 15 Apr 2021 14:03:31 +0000
Received: by outflank-mailman (input) for mailman id 111194;
 Thu, 15 Apr 2021 14:03:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGSX=JM=linuxfoundation.org=gregkh@srs-us1.protection.inumbo.net>)
 id 1lX2ag-0004mq-MC
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:03:30 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 51fd7181-b13e-4c3c-9600-45695482b06d;
 Thu, 15 Apr 2021 14:03:30 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 144B861153;
 Thu, 15 Apr 2021 14:03: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: 51fd7181-b13e-4c3c-9600-45695482b06d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1618495409;
	bh=ZDr2iCLXq/Dm3x1h2HJT0EW5xg+P1+nlEjfwME9Zb9Y=;
	h=Subject:To:Cc:From:Date:In-Reply-To:From;
	b=taXqHanyVODia3AB9t7a/aIZTG+4wJ7AOX0Sl7KhYf+SjOYz4gN0iyva0kDV0r+Ey
	 Dhx0TwGFgbp3Qzxy+7IgfALftOg57UfDk0li7bgI9C+H+mM2R+XRNZj/Ny4GgRB4/+
	 hrefACFpRI3BlmAwQayurPiyI+Rcx1CXuzyyzsNA=
Subject: Patch "xen/events: fix setting irq affinity" has been added to the 4.4-stable tree
To: boris.ostrovsky@oracle.com,gregkh@linuxfoundation.org,jgross@suse.com,sstabellini@kernel.org,xen-devel@lists.xenproject.org
Cc: <stable-commits@vger.kernel.org>
From: <gregkh@linuxfoundation.org>
Date: Thu, 15 Apr 2021 16:03:19 +0200
In-Reply-To: <20210412062845.13946-1-jgross@suse.com>
Message-ID: <161849539917394@kroah.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=ANSI_X3.4-1968
Content-Transfer-Encoding: 8bit
X-stable: commit
X-Patchwork-Hint: ignore 


This is a note to let you know that I've just added the patch titled

    xen/events: fix setting irq affinity

to the 4.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     xen-events-fix-setting-irq-affinity.patch
and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From jgross@suse.com  Thu Apr 15 15:56:08 2021
From: Juergen Gross <jgross@suse.com>
Date: Mon, 12 Apr 2021 08:28:45 +0200
Subject: xen/events: fix setting irq affinity
To: stable@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Message-ID: <20210412062845.13946-1-jgross@suse.com>

From: Juergen Gross <jgross@suse.com>

The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
unmask an event channel when an eoi is pending") introduced a
regression for stable kernels 5.10 and older: setting IRQ affinity for
IRQs related to interdomain events would no longer work, as moving the
IRQ to its new cpu was not included in the irq_ack callback for those
events.

Fix that by adding the needed call.

Note that kernels 5.11 and later don't need the explicit moving of the
IRQ to the target cpu in the irq_ack callback, due to a rework of the
affinity setting in kernel 5.11.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/xen/events/events_base.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1779,7 +1779,7 @@ static void lateeoi_ack_dynirq(struct ir
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 
@@ -1790,7 +1790,7 @@ static void lateeoi_mask_ack_dynirq(stru
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EXPLICIT);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 


Patches currently in stable-queue which might be from jgross@suse.com are

queue-4.4/xen-events-fix-setting-irq-affinity.patch


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:03:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:03:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111195.212630 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2aw-0004rL-EV; Thu, 15 Apr 2021 14:03:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111195.212630; Thu, 15 Apr 2021 14:03:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2aw-0004rD-B5; Thu, 15 Apr 2021 14:03:46 +0000
Received: by outflank-mailman (input) for mailman id 111195;
 Thu, 15 Apr 2021 14:03:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGSX=JM=linuxfoundation.org=gregkh@srs-us1.protection.inumbo.net>)
 id 1lX2av-0004r0-Kz
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:03:45 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1cb40a3b-6727-4ad1-bb69-744614a44f0d;
 Thu, 15 Apr 2021 14:03:45 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 2902261153;
 Thu, 15 Apr 2021 14:03: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: 1cb40a3b-6727-4ad1-bb69-744614a44f0d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1618495424;
	bh=qYgds9DkMKnk9aiJ+ZaUFK/fxoVRJ+jGB3McwoldzKE=;
	h=Subject:To:Cc:From:Date:In-Reply-To:From;
	b=h0IaIMNGbgEr3p1Gm048RchdIWCemZ42yteCgU4aLmWVTnV0NSUp408DEgjQd8kke
	 uxpDFVC9PPfiIyF8UlJJZ2weH8cn9qoESSXYichnbYNAHhJOCYqsLNVrgDKz5Q+F/4
	 YxtSQWsG4zwrRHUEXfCuJjryeFu3gBXaFqIQUQqo=
Subject: Patch "xen/events: fix setting irq affinity" has been added to the 4.9-stable tree
To: boris.ostrovsky@oracle.com,gregkh@linuxfoundation.org,jgross@suse.com,sstabellini@kernel.org,xen-devel@lists.xenproject.org
Cc: <stable-commits@vger.kernel.org>
From: <gregkh@linuxfoundation.org>
Date: Thu, 15 Apr 2021 16:03:34 +0200
In-Reply-To: <20210412062845.13946-1-jgross@suse.com>
Message-ID: <161849541422621@kroah.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=ANSI_X3.4-1968
Content-Transfer-Encoding: 8bit
X-stable: commit
X-Patchwork-Hint: ignore 


This is a note to let you know that I've just added the patch titled

    xen/events: fix setting irq affinity

to the 4.9-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     xen-events-fix-setting-irq-affinity.patch
and it can be found in the queue-4.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From jgross@suse.com  Thu Apr 15 15:56:08 2021
From: Juergen Gross <jgross@suse.com>
Date: Mon, 12 Apr 2021 08:28:45 +0200
Subject: xen/events: fix setting irq affinity
To: stable@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Message-ID: <20210412062845.13946-1-jgross@suse.com>

From: Juergen Gross <jgross@suse.com>

The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
unmask an event channel when an eoi is pending") introduced a
regression for stable kernels 5.10 and older: setting IRQ affinity for
IRQs related to interdomain events would no longer work, as moving the
IRQ to its new cpu was not included in the irq_ack callback for those
events.

Fix that by adding the needed call.

Note that kernels 5.11 and later don't need the explicit moving of the
IRQ to the target cpu in the irq_ack callback, due to a rework of the
affinity setting in kernel 5.11.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/xen/events/events_base.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1780,7 +1780,7 @@ static void lateeoi_ack_dynirq(struct ir
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 
@@ -1791,7 +1791,7 @@ static void lateeoi_mask_ack_dynirq(stru
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EXPLICIT);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 


Patches currently in stable-queue which might be from jgross@suse.com are

queue-4.9/xen-events-fix-setting-irq-affinity.patch


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:04:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:04:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111198.212642 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2bC-0004wk-P6; Thu, 15 Apr 2021 14:04:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111198.212642; Thu, 15 Apr 2021 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 1lX2bC-0004wb-Jt; Thu, 15 Apr 2021 14:04:02 +0000
Received: by outflank-mailman (input) for mailman id 111198;
 Thu, 15 Apr 2021 14:04:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGSX=JM=linuxfoundation.org=gregkh@srs-us1.protection.inumbo.net>)
 id 1lX2bA-0004wE-TV
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:04:00 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 516207dd-c719-4615-8140-68da640f7a32;
 Thu, 15 Apr 2021 14:04:00 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 212C561222;
 Thu, 15 Apr 2021 14:03: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: 516207dd-c719-4615-8140-68da640f7a32
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1618495439;
	bh=ZMD2AHRmPSgbm8MpL2i0lM66+/iwoZLs04+Me4ZyMfI=;
	h=Subject:To:Cc:From:Date:In-Reply-To:From;
	b=RfKTHZ/Jj0LHqkdmzsEz4FKpcxI2tHQdXpNmuIFbnK7fc+z8+B5Fj/pQ7joyW9Rb+
	 4lsBHQb7DBbqkDJ4IceRzELsdtwUiLOXRDQm2aBtm4Tobw5NroqMpnd9s+Mfwcv4C2
	 dxsNc+vGv5jpT+lnEbhs75cEZ93oXG39ZxR/Tfag=
Subject: Patch "xen/events: fix setting irq affinity" has been added to the 4.14-stable tree
To: boris.ostrovsky@oracle.com,gregkh@linuxfoundation.org,jgross@suse.com,sstabellini@kernel.org,xen-devel@lists.xenproject.org
Cc: <stable-commits@vger.kernel.org>
From: <gregkh@linuxfoundation.org>
Date: Thu, 15 Apr 2021 16:03:49 +0200
In-Reply-To: <20210412062845.13946-1-jgross@suse.com>
Message-ID: <161849542930243@kroah.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=ANSI_X3.4-1968
Content-Transfer-Encoding: 8bit
X-stable: commit
X-Patchwork-Hint: ignore 


This is a note to let you know that I've just added the patch titled

    xen/events: fix setting irq affinity

to the 4.14-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     xen-events-fix-setting-irq-affinity.patch
and it can be found in the queue-4.14 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From jgross@suse.com  Thu Apr 15 15:56:08 2021
From: Juergen Gross <jgross@suse.com>
Date: Mon, 12 Apr 2021 08:28:45 +0200
Subject: xen/events: fix setting irq affinity
To: stable@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Message-ID: <20210412062845.13946-1-jgross@suse.com>

From: Juergen Gross <jgross@suse.com>

The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
unmask an event channel when an eoi is pending") introduced a
regression for stable kernels 5.10 and older: setting IRQ affinity for
IRQs related to interdomain events would no longer work, as moving the
IRQ to its new cpu was not included in the irq_ack callback for those
events.

Fix that by adding the needed call.

Note that kernels 5.11 and later don't need the explicit moving of the
IRQ to the target cpu in the irq_ack callback, due to a rework of the
affinity setting in kernel 5.11.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/xen/events/events_base.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1782,7 +1782,7 @@ static void lateeoi_ack_dynirq(struct ir
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 
@@ -1793,7 +1793,7 @@ static void lateeoi_mask_ack_dynirq(stru
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EXPLICIT);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 


Patches currently in stable-queue which might be from jgross@suse.com are

queue-4.14/xen-events-fix-setting-irq-affinity.patch


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:04:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:04:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111204.212654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2bV-00053C-1J; Thu, 15 Apr 2021 14:04:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111204.212654; Thu, 15 Apr 2021 14: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 1lX2bU-000535-TG; Thu, 15 Apr 2021 14:04:20 +0000
Received: by outflank-mailman (input) for mailman id 111204;
 Thu, 15 Apr 2021 14:04:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGSX=JM=linuxfoundation.org=gregkh@srs-us1.protection.inumbo.net>)
 id 1lX2bT-00052i-4t
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:04:19 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 11f2237f-ac21-44b3-bc7b-fbe4fc6764d1;
 Thu, 15 Apr 2021 14:04:18 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 2BD96611AD;
 Thu, 15 Apr 2021 14:04: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: 11f2237f-ac21-44b3-bc7b-fbe4fc6764d1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1618495457;
	bh=HPeQUgz2LZg+X3+n9xnOcb7OSYnzeyabXbD4uoDwaMA=;
	h=Subject:To:Cc:From:Date:In-Reply-To:From;
	b=ucSuwCf7prcPe5chX1WbHP8TpwaCPe0A/q6FYVh3s8AP6UBKdAs8R3deOJrUcvVO3
	 5WOrRVh83wvI2kYy9THcEfAQNP93nXB5UsU8dOAIYWh2mFYs3JZu8x9cnSCHXcoXFs
	 EX1EphsEXRTVwaiyfHhW9jFdNUT9j/BGsobgWug0=
Subject: Patch "xen/events: fix setting irq affinity" has been added to the 4.19-stable tree
To: boris.ostrovsky@oracle.com,gregkh@linuxfoundation.org,jgross@suse.com,sstabellini@kernel.org,xen-devel@lists.xenproject.org
Cc: <stable-commits@vger.kernel.org>
From: <gregkh@linuxfoundation.org>
Date: Thu, 15 Apr 2021 16:04:04 +0200
In-Reply-To: <20210412062845.13946-1-jgross@suse.com>
Message-ID: <161849544423478@kroah.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=ANSI_X3.4-1968
Content-Transfer-Encoding: 8bit
X-stable: commit
X-Patchwork-Hint: ignore 


This is a note to let you know that I've just added the patch titled

    xen/events: fix setting irq affinity

to the 4.19-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     xen-events-fix-setting-irq-affinity.patch
and it can be found in the queue-4.19 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From jgross@suse.com  Thu Apr 15 15:56:08 2021
From: Juergen Gross <jgross@suse.com>
Date: Mon, 12 Apr 2021 08:28:45 +0200
Subject: xen/events: fix setting irq affinity
To: stable@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Message-ID: <20210412062845.13946-1-jgross@suse.com>

From: Juergen Gross <jgross@suse.com>

The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
unmask an event channel when an eoi is pending") introduced a
regression for stable kernels 5.10 and older: setting IRQ affinity for
IRQs related to interdomain events would no longer work, as moving the
IRQ to its new cpu was not included in the irq_ack callback for those
events.

Fix that by adding the needed call.

Note that kernels 5.11 and later don't need the explicit moving of the
IRQ to the target cpu in the irq_ack callback, due to a rework of the
affinity setting in kernel 5.11.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/xen/events/events_base.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1782,7 +1782,7 @@ static void lateeoi_ack_dynirq(struct ir
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 
@@ -1793,7 +1793,7 @@ static void lateeoi_mask_ack_dynirq(stru
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EXPLICIT);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 


Patches currently in stable-queue which might be from jgross@suse.com are

queue-4.19/xen-events-fix-setting-irq-affinity.patch


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:04:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:04:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111206.212665 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2be-00057w-Df; Thu, 15 Apr 2021 14:04:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111206.212665; Thu, 15 Apr 2021 14:04: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 1lX2be-00057p-AY; Thu, 15 Apr 2021 14:04:30 +0000
Received: by outflank-mailman (input) for mailman id 111206;
 Thu, 15 Apr 2021 14:04:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2bd-00056O-2b
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:04:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fda751b7-4037-4823-b745-c1355004c85d;
 Thu, 15 Apr 2021 14:04:26 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id EB181AEF8;
 Thu, 15 Apr 2021 14:04: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: fda751b7-4037-4823-b745-c1355004c85d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618495466; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=s4PGmQw7SMQXUd5UEs/Lx5oZG1BOnRE2MPqMYkj4vGQ=;
	b=oZF/wvhcdRwWKkWAlEQi9+O4eSjPBl21ih38KKzMC7++bZbHNF4xMtGQZYxESGv8jjLRuq
	JAzZE5kJNj5P522c892V8habuK+cCrqpdU4KLFqtjS/Qi7tEFS1kNr+rxkMeRu8x/Bz1RD
	30gXTkrxmm1OC9fwqWQOxPlAZJy/avE=
Subject: Re: [PATCH] x86/pv: Rename hypercall_table_t to pv_hypercall_table_t
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210415132138.29007-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d553a6f2-157c-a4ab-02ef-fdd1ad6b9638@suse.com>
Date: Thu, 15 Apr 2021 16:04:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210415132138.29007-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 15:21, Andrew Cooper wrote:
> The type is no longer appropriate for anything other than PV, and therefore
> should not retain its generic name.
> 
> Fixes: 527922008bc ("x86: slim down hypercall handling when !PV32")
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

I'm not convinced this warrants a Fixes: tag (afaict there's no breakage),
but in any event
Reviewed-by: Jan Beulich <jbeulich@suse.com>
I had considered doing the rename at the same time, but then decided to
save on the extra code churn. I'm sorry if this was the wrong choice.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:04:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:04:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111208.212678 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2bn-0005Dx-OJ; Thu, 15 Apr 2021 14:04:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111208.212678; Thu, 15 Apr 2021 14: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 1lX2bn-0005Dp-Jy; Thu, 15 Apr 2021 14:04:39 +0000
Received: by outflank-mailman (input) for mailman id 111208;
 Thu, 15 Apr 2021 14:04:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGSX=JM=linuxfoundation.org=gregkh@srs-us1.protection.inumbo.net>)
 id 1lX2bm-0005DJ-Ml
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:04:38 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 61f85623-bfab-4ec5-ac67-dd6e0049dbd4;
 Thu, 15 Apr 2021 14:04:38 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id D9190611AD;
 Thu, 15 Apr 2021 14:04: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: 61f85623-bfab-4ec5-ac67-dd6e0049dbd4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1618495477;
	bh=Wdz8Aa9qdJDiwAN8b8SMYaoOnBF5VIObjL/JbA05IYw=;
	h=Subject:To:Cc:From:Date:In-Reply-To:From;
	b=K0DK3m3dGaFczhd9OyDsenGdUjULmso5HQ39/TUKyZlc5WiGxomGAYUwyqPLXdTtk
	 yxZDmX2yfSXpBiOxtXc6VGvvc1+8A4bioh+zEsu35jwmLF1lEWKQbQsJDPTrO0hWwc
	 EZIOda/bk8TNDlyQmAF0R9Lq8DinbKI04ZWInu3g=
Subject: Patch "xen/events: fix setting irq affinity" has been added to the 5.4-stable tree
To: boris.ostrovsky@oracle.com,gregkh@linuxfoundation.org,jgross@suse.com,sstabellini@kernel.org,xen-devel@lists.xenproject.org
Cc: <stable-commits@vger.kernel.org>
From: <gregkh@linuxfoundation.org>
Date: Thu, 15 Apr 2021 16:04:20 +0200
In-Reply-To: <20210412062845.13946-1-jgross@suse.com>
Message-ID: <1618495460134238@kroah.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=ANSI_X3.4-1968
Content-Transfer-Encoding: 8bit
X-stable: commit
X-Patchwork-Hint: ignore 


This is a note to let you know that I've just added the patch titled

    xen/events: fix setting irq affinity

to the 5.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     xen-events-fix-setting-irq-affinity.patch
and it can be found in the queue-5.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From jgross@suse.com  Thu Apr 15 15:56:08 2021
From: Juergen Gross <jgross@suse.com>
Date: Mon, 12 Apr 2021 08:28:45 +0200
Subject: xen/events: fix setting irq affinity
To: stable@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Message-ID: <20210412062845.13946-1-jgross@suse.com>

From: Juergen Gross <jgross@suse.com>

The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
unmask an event channel when an eoi is pending") introduced a
regression for stable kernels 5.10 and older: setting IRQ affinity for
IRQs related to interdomain events would no longer work, as moving the
IRQ to its new cpu was not included in the irq_ack callback for those
events.

Fix that by adding the needed call.

Note that kernels 5.11 and later don't need the explicit moving of the
IRQ to the target cpu in the irq_ack callback, due to a rework of the
affinity setting in kernel 5.11.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/xen/events/events_base.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1783,7 +1783,7 @@ static void lateeoi_ack_dynirq(struct ir
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 
@@ -1794,7 +1794,7 @@ static void lateeoi_mask_ack_dynirq(stru
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EXPLICIT);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 


Patches currently in stable-queue which might be from jgross@suse.com are

queue-5.4/xen-events-fix-setting-irq-affinity.patch


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:04:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:04:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111212.212690 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2c2-0005R7-0c; Thu, 15 Apr 2021 14:04:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111212.212690; Thu, 15 Apr 2021 14:04:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2c1-0005Qz-TI; Thu, 15 Apr 2021 14:04:53 +0000
Received: by outflank-mailman (input) for mailman id 111212;
 Thu, 15 Apr 2021 14:04:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGSX=JM=linuxfoundation.org=gregkh@srs-us1.protection.inumbo.net>)
 id 1lX2c0-0005QS-H3
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:04:52 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e48585a6-b32a-45d2-9d93-ae5ed314f5b3;
 Thu, 15 Apr 2021 14:04:52 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id E07DE611F1;
 Thu, 15 Apr 2021 14:04: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: e48585a6-b32a-45d2-9d93-ae5ed314f5b3
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1618495491;
	bh=InKw4zxjZjE30ezO3My2+utu1Qvgljuk6Zk+g4yv8Fs=;
	h=Subject:To:Cc:From:Date:In-Reply-To:From;
	b=dqbuVDi5ZtdqBE74NwCxQ2zLUCUETjljPb0PJHkx+ASjhwbykWGST3wpFmVcK07VP
	 ndy2QtAup5ZRgzAHa3rOAFbIAmYhzRCXv3ZFLrNWvVTd4M/r9f9MxGLcLE9eSEiV5N
	 PgtMK0cBcQdQJs0QS3gOnuNAsnVsz5dpYNayciT4=
Subject: Patch "xen/events: fix setting irq affinity" has been added to the 5.10-stable tree
To: boris.ostrovsky@oracle.com,gregkh@linuxfoundation.org,jgross@suse.com,sstabellini@kernel.org,xen-devel@lists.xenproject.org
Cc: <stable-commits@vger.kernel.org>
From: <gregkh@linuxfoundation.org>
Date: Thu, 15 Apr 2021 16:04:36 +0200
In-Reply-To: <20210412062845.13946-1-jgross@suse.com>
Message-ID: <16184954768817@kroah.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=ANSI_X3.4-1968
Content-Transfer-Encoding: 8bit
X-stable: commit
X-Patchwork-Hint: ignore 


This is a note to let you know that I've just added the patch titled

    xen/events: fix setting irq affinity

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     xen-events-fix-setting-irq-affinity.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From jgross@suse.com  Thu Apr 15 15:56:08 2021
From: Juergen Gross <jgross@suse.com>
Date: Mon, 12 Apr 2021 08:28:45 +0200
Subject: xen/events: fix setting irq affinity
To: stable@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Message-ID: <20210412062845.13946-1-jgross@suse.com>

From: Juergen Gross <jgross@suse.com>

The backport of upstream patch 25da4618af240fbec61 ("xen/events: don't
unmask an event channel when an eoi is pending") introduced a
regression for stable kernels 5.10 and older: setting IRQ affinity for
IRQs related to interdomain events would no longer work, as moving the
IRQ to its new cpu was not included in the irq_ack callback for those
events.

Fix that by adding the needed call.

Note that kernels 5.11 and later don't need the explicit moving of the
IRQ to the target cpu in the irq_ack callback, due to a rework of the
affinity setting in kernel 5.11.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/xen/events/events_base.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1809,7 +1809,7 @@ static void lateeoi_ack_dynirq(struct ir
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EOI_PENDING);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 
@@ -1820,7 +1820,7 @@ static void lateeoi_mask_ack_dynirq(stru
 
 	if (VALID_EVTCHN(evtchn)) {
 		do_mask(info, EVT_MASK_REASON_EXPLICIT);
-		event_handler_exit(info);
+		ack_dynirq(data);
 	}
 }
 


Patches currently in stable-queue which might be from jgross@suse.com are

queue-5.10/xen-events-fix-setting-irq-affinity.patch


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:10:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:10:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111232.212702 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2hn-0006Tz-MA; Thu, 15 Apr 2021 14:10:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111232.212702; Thu, 15 Apr 2021 14: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 1lX2hn-0006Ts-IK; Thu, 15 Apr 2021 14:10:51 +0000
Received: by outflank-mailman (input) for mailman id 111232;
 Thu, 15 Apr 2021 14:10:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2hl-0006Tn-RV
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:10:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1a2d2088-5e3a-4a74-b685-c5522fe8416b;
 Thu, 15 Apr 2021 14:10:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D421EAEF8;
 Thu, 15 Apr 2021 14:10: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: 1a2d2088-5e3a-4a74-b685-c5522fe8416b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618495847; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0TTFh9Dr2yyhOlKHTxLwq9LZ9NWKFoQiijCwiK7xK3o=;
	b=hC+kwsmsJcsUaN/OFNxAFYc+oPiN4pNAoVhnMnUILTsJtTjiLikaWzJ5y1wgQjychrv3ht
	s8IwfX3ZJv2LcGShxCC1Nmt7Z20k2w/8KoiuORypmN8EzDnX7OSAc1RcrlrMUEM8U7Jg4z
	Lqt3hqTONirGQEsw0n+42IDhOxLhiR0=
Subject: Re: [PATCH v2 12/17] x86/CPUID: shrink max_{,sub}leaf fields
 according to actual leaf contents
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>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>
References: <255f466c-3c95-88c5-3e55-0f04c9ae1b12@suse.com>
 <2aaffa0e-e17f-6581-6003-e58d2c9fc1d7@suse.com>
 <YHgM6eTT2OJY89aU@Air-de-Roger>
 <1862ca8d-c16c-8f47-1999-15809fcacdfe@suse.com>
 <YHgx8M06ZC1+MpEK@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <61be9da8-943e-81b7-e198-481e76255574@suse.com>
Date: Thu, 15 Apr 2021 16:10:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHgx8M06ZC1+MpEK@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 14:30, Roger Pau Monné wrote:
> On Thu, Apr 15, 2021 at 12:37:20PM +0200, Jan Beulich wrote:
>> On 15.04.2021 11:52, Roger Pau Monné wrote:
>>> On Mon, Nov 23, 2020 at 03:33:03PM +0100, Jan Beulich wrote:
>>>> --- a/tools/tests/cpu-policy/test-cpu-policy.c
>>>> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
>>>> @@ -8,10 +8,13 @@
>>>>  #include <err.h>
>>>>  
>>>>  #include <xen-tools/libs.h>
>>>> +#include <xen/asm/x86-defns.h>
>>>>  #include <xen/asm/x86-vendors.h>
>>>>  #include <xen/lib/x86/cpu-policy.h>
>>>>  #include <xen/domctl.h>
>>>>  
>>>> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
>>>
>>> This gets used only once...
>>>
>>>> +
>>>>  static unsigned int nr_failures;
>>>>  #define fail(fmt, ...)                          \
>>>>  ({                                              \
>>>> @@ -564,6 +567,103 @@ static void test_cpuid_out_of_range_clea
>>>>      }
>>>>  }
>>>>  
>>>> +static void test_cpuid_maximum_leaf_shrinking(void)
>>>> +{
>>>> +    static const struct test {
>>>> +        const char *name;
>>>> +        struct cpuid_policy p;
>>>> +    } tests[] = {
>>>> +        {
>>>> +            .name = "basic",
>>>> +            .p = {
>>>> +                /* Very basic information only. */
>>>> +                .basic.max_leaf = 1,
>>>> +                .basic.raw_fms = 0xc2,
>>>> +            },
>>>> +        },
>>>> +        {
>>>> +            .name = "cache",
>>>> +            .p = {
>>>> +                /* Cache subleaves present. */
>>>> +                .basic.max_leaf = 4,
>>>> +                .cache.subleaf[0].type = 1,
>>>> +            },
>>>> +        },
>>>> +        {
>>>> +            .name = "feat#0",
>>>> +            .p = {
>>>> +                /* Subleaf 0 only with some valid bit. */
>>>> +                .basic.max_leaf = 7,
>>>> +                .feat.max_subleaf = 0,
>>>> +                .feat.fsgsbase = 1,
>>>> +            },
>>>> +        },
>>>> +        {
>>>> +            .name = "feat#1",
>>>> +            .p = {
>>>> +                /* Subleaf 1 only with some valid bit. */
>>>> +                .basic.max_leaf = 7,
>>>> +                .feat.max_subleaf = 1,
>>>> +                .feat.avx_vnni = 1,
>>>> +            },
>>>> +        },
>>>> +        {
>>>> +            .name = "topo",
>>>> +            .p = {
>>>> +                /* Topology subleaves present. */
>>>> +                .basic.max_leaf = 0xb,
>>>> +                .topo.subleaf[0].type = 1,
>>>> +            },
>>>> +        },
>>>> +        {
>>>> +            .name = "xstate",
>>>> +            .p = {
>>>> +                /* First subleaf always valid (and then non-zero). */
>>>> +                .basic.max_leaf = 0xd,
>>>> +                .xstate.xcr0_low = XSTATE_FP_SSE,
>>>
>>> ...here.
>>
>> For now, yes. I'm introducing the constant because I think it wants
>> using in other places too, to avoid using literal numbers. See e.g.
>>
>>                 .xstate.xcr0_low = 7,
>>
>> in test_cpuid_serialise_success().
>>
>>> And then I also wonder whether this requires having any
>>> specific values rather than just using ~0 or any random non-0 value.
>>
>> I'm afraid I don't understand: There's no ~0 here and no random
>> non-zero value - all other structure elements are left default-
>> initialized.
> 
> Oh, I've worded that sentence wrongly I think. What I meant to say is
> that for the purposes of the test here you could just fill the fields
> with ~0 instead of using things like XSTATE_FP_SSE?

The test would perhaps be fine, at least right now. But ~0 is not
really a legitimate value, especially if - for consistency - also
putting it in .xcr0_high. I wanted to have a well-defined, always
valid value here, avoiding the risk of needing to change the value
again later on.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:11:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:11:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111233.212714 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2i1-0006XR-TB; Thu, 15 Apr 2021 14:11:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111233.212714; Thu, 15 Apr 2021 14: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 1lX2i1-0006XJ-Q0; Thu, 15 Apr 2021 14:11:05 +0000
Received: by outflank-mailman (input) for mailman id 111233;
 Thu, 15 Apr 2021 14:11: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 1lX2hz-0006Wr-U4; Thu, 15 Apr 2021 14:11: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 1lX2hz-0001Dl-OQ; Thu, 15 Apr 2021 14:11: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 1lX2hz-0006ZU-Dr; Thu, 15 Apr 2021 14:11:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lX2hz-0008Ee-D4; Thu, 15 Apr 2021 14: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=OkuIj+EuEyjhx083TZcX23Hsi0EBuL4+AysdiqORtaQ=; b=LtsAvphpV1QOSOixC9+li1DXr8
	RAWDJYrNBBNEz2BFohRDxmTX5cFf48koabpgwlsZ5+Z+z5smHLtqtNJik+62M4w3sfjQEJydJzKKN
	SurUQC9MkG5fU/tYfmAesJqc+5THnvayIoBFoqttNWfCvu81F3W/CW8LqnicaiynJC2M=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161147-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161147: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=8fe9f1f891eff4e37f82622b7480ee748bf4af74
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 14:11:03 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 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-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          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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                8fe9f1f891eff4e37f82622b7480ee748bf4af74
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  238 days
Failing since        152659  2020-08-21 14:07:39 Z  237 days  440 attempts
Testing same since   161147  2021-04-14 22:08:02 Z    0 days    1 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142656 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:16:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:16:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111245.212729 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2nG-0006sa-Nf; Thu, 15 Apr 2021 14:16:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111245.212729; Thu, 15 Apr 2021 14:16: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 1lX2nG-0006sT-KG; Thu, 15 Apr 2021 14:16:30 +0000
Received: by outflank-mailman (input) for mailman id 111245;
 Thu, 15 Apr 2021 14:16:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2nF-0006sO-5f
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:16:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 61ecff16-404a-45cb-8c13-b8cf10c25968;
 Thu, 15 Apr 2021 14:16:28 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7D0D5AF79;
 Thu, 15 Apr 2021 14:16: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: 61ecff16-404a-45cb-8c13-b8cf10c25968
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618496187; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ElXCpLA80YzBPbKA3GmvpipwV4grraEafX/LpVG753I=;
	b=dClnI25p2Ulh07vO97M2ocZlF3MphSlxC547Ae3asHm07WbS2Efy7Ph06YMfjLfnmV4Ykg
	9rMddCa5q49vbAJX0KE7veZrMnC0S5v7fzuXTF+GjRqA9mzCK3PBvXzHW4zdVrTty4czPd
	0ZuxolozDAr0eYF1bcNePreoj+6xr4w=
Subject: Re: [PATCH v3 12/15] unxz: replace INIT{,DATA} and STATIC
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <4e0a0db2-db34-a738-2f5e-1d5cd2c37e19@suse.com>
 <c52c9670-d87e-79f9-0104-e6e074419c31@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a9adf993-0f2d-acb1-b671-7b8c3b15b4d8@suse.com>
Date: Thu, 15 Apr 2021 16:16:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <c52c9670-d87e-79f9-0104-e6e074419c31@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 13:58, Julien Grall wrote:
> On 26/01/2021 09:52, Jan Beulich wrote:
>> --- a/xen/common/decompress.h
>> +++ b/xen/common/decompress.h
>> @@ -9,7 +9,6 @@
>>   
>>   #define STATIC static
>>   #define INIT __init
>> -#define INITDATA __initdata
>>   
>>   #define malloc xmalloc_bytes
>>   #define free xfree
>> @@ -21,7 +20,6 @@
>>   
>>   #define STATIC static
>>   #define INIT
>> -#define INITDATA
> 
> Shouldn't the two changes be part of patch #14?

One could do it that way, sure, but the last uses are gone here,
and hence I wanted to get rid of this one item right away.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:19:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:19:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111249.212741 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2pg-00071t-4S; Thu, 15 Apr 2021 14:19:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111249.212741; Thu, 15 Apr 2021 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 1lX2pg-00071m-1V; Thu, 15 Apr 2021 14:19:00 +0000
Received: by outflank-mailman (input) for mailman id 111249;
 Thu, 15 Apr 2021 14:18: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 1lX2pe-00071g-UM
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:18: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 1lX2pd-0001LK-JK; Thu, 15 Apr 2021 14:18:57 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX2pd-00065b-CY; Thu, 15 Apr 2021 14:18: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=LQ3C8SV37WgeSukHdHPFX7tGilymL5AjEM/hlxsdtC8=; b=5DqDs0sVjK3MO5VsjShgsH9MAZ
	VsAOBVPkcxrPz1gOsK3L5eJhGWqML/ZP4yFWPecR4MDQGgQFlaMrKdgQsqxk1Js8aRrV8m2umkudr
	6rHLH3lhmLQeigOTXPHkLdMZlG+Xq0lGHJ4AXI0VOenDpnJgEFoD3pIt4nqigr9OfLdw=;
Subject: Re: [PATCH v3 12/15] unxz: replace INIT{,DATA} and STATIC
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <4e0a0db2-db34-a738-2f5e-1d5cd2c37e19@suse.com>
 <c52c9670-d87e-79f9-0104-e6e074419c31@xen.org>
 <a9adf993-0f2d-acb1-b671-7b8c3b15b4d8@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <eaf819a8-985f-d33f-902d-58320c99a8d8@xen.org>
Date: Thu, 15 Apr 2021 15:18:55 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <a9adf993-0f2d-acb1-b671-7b8c3b15b4d8@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 15/04/2021 15:16, Jan Beulich wrote:
> On 15.04.2021 13:58, Julien Grall wrote:
>> On 26/01/2021 09:52, Jan Beulich wrote:
>>> --- a/xen/common/decompress.h
>>> +++ b/xen/common/decompress.h
>>> @@ -9,7 +9,6 @@
>>>    
>>>    #define STATIC static
>>>    #define INIT __init
>>> -#define INITDATA __initdata
>>>    
>>>    #define malloc xmalloc_bytes
>>>    #define free xfree
>>> @@ -21,7 +20,6 @@
>>>    
>>>    #define STATIC static
>>>    #define INIT
>>> -#define INITDATA
>>
>> Shouldn't the two changes be part of patch #14?
> 
> One could do it that way, sure, but the last uses are gone here,
> and hence I wanted to get rid of this one item right away.

AFAICT, the same is true for STATIC and INIT. So it doesn't sense to not 
be consistent in the way you treat them.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:21:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:21:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111254.212753 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2rm-0007qX-IT; Thu, 15 Apr 2021 14:21:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111254.212753; Thu, 15 Apr 2021 14: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 1lX2rm-0007qQ-EU; Thu, 15 Apr 2021 14:21:10 +0000
Received: by outflank-mailman (input) for mailman id 111254;
 Thu, 15 Apr 2021 14:21: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 1lX2rk-0007qL-Gh
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:21: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 1lX2ri-0001Oh-Dz; Thu, 15 Apr 2021 14:21:06 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX2ri-0006IB-7L; Thu, 15 Apr 2021 14:21: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=+uVQDutjgs9HFtTvZJCsDAxLH4DRxrhwezFtx44M4JY=; b=DywMfr/f+QSOD+Peuz0+JXGcC6
	+apB7c8XIKknmS17T4uoKasDL0Ijl7MuBj4IxF3csR8MQpmm5M5sdafO99n8EvcguNUBNx8uk3oKo
	77egiibCco6p/GbvvrooLiVrNFGEZf6Sg96jBtYMaCNp+iJ+yhGbFG8iXAVb0M5YVvNE=;
Subject: Re: [PATCH v3 14/15] xen/decompress: drop STATIC and INIT
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <b9410d49-8767-a6f2-ccbe-c94e451c60ba@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <e36f9026-edb6-5eb3-fdb2-cd00750b3ee7@xen.org>
Date: Thu, 15 Apr 2021 15:21:04 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <b9410d49-8767-a6f2-ccbe-c94e451c60ba@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 26/01/2021 09:53, Jan Beulich wrote:
> All users have been removed in earlier changes.

This is not entirely correct given there is a still a user of...

> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v3: New.
> 
> --- a/xen/arch/arm/efi/efi-dom0.c
> +++ b/xen/arch/arm/efi/efi-dom0.c
> @@ -28,7 +28,7 @@
>   #include <asm/setup.h>
>   #include <asm/acpi.h>
>   #include "../../../common/decompress.h"
> -#define XZ_EXTERN STATIC
> +#define XZ_EXTERN static

STATIC here. So maybe you want to say "all but one users"?

Also, for consistency, I think you want to either remove INITDATA here 
or remove INIT in the patch that drop the last user.

Cheers,

>   #include "../../../common/xz/crc32.c"
>   
>   /* Constant to indicate "Xen" in unicode u16 format */
> --- a/xen/common/decompress.h
> +++ b/xen/common/decompress.h
> @@ -7,9 +7,6 @@
>   #include <xen/types.h>
>   #include <xen/xmalloc.h>
>   
> -#define STATIC static
> -#define INIT __init
> -
>   #define malloc xmalloc_bytes
>   #define free xfree
>   
> @@ -18,9 +15,6 @@
>   
>   #else
>   
> -#define STATIC static
> -#define INIT
> -
>   #undef __init /* tools/libs/guest/xg_private.h has its own one */
>   #define __init
>   #define __initdata
> 
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:21:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:21:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111257.212765 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2s8-0007vZ-T2; Thu, 15 Apr 2021 14:21:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111257.212765; Thu, 15 Apr 2021 14: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 1lX2s8-0007vS-Ni; Thu, 15 Apr 2021 14:21:32 +0000
Received: by outflank-mailman (input) for mailman id 111257;
 Thu, 15 Apr 2021 14:21:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2s7-0007vJ-UQ
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:21:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 880cbd17-fbc2-48e6-b507-3e14bec4bcdf;
 Thu, 15 Apr 2021 14:21:31 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6E5EEAEF8;
 Thu, 15 Apr 2021 14:21: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: 880cbd17-fbc2-48e6-b507-3e14bec4bcdf
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618496490; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=anHE6BTBhvz0gOu6r8Dzkje9MyEAsFLAqlnyUUHGgUw=;
	b=BPaSxddSSm3w4YJLWLoXGqKC6u6CLIooR2ZLo5NjSgvreBEhM5qm2is8rlityMoL95Q+sN
	13fRQEWCTJTvyE61dToDgn1SYVZVQcTn/D7IQbSyUX+0n5KgQ60+qPfKg3u3L1ObWTEDNC
	x72rUkNZhglceQsUbSPWC+Jg9NB+s+8=
Subject: Re: [PATCH v3 13/15] unzstd: replace INIT{,DATA} and STATIC
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <19f12930-df0e-5a00-9e5e-53edffcf51d7@suse.com>
 <467ed62e-e5c3-0a08-b9a7-5b4e913b3c90@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e1d08ced-c2e8-22e3-2da3-8116b69cb627@suse.com>
Date: Thu, 15 Apr 2021 16:21:30 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <467ed62e-e5c3-0a08-b9a7-5b4e913b3c90@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 13:59, Julien Grall wrote:
> On 26/01/2021 09:52, Jan Beulich wrote:
>> With xen/common/decompress.h now agreeing in both build modes about
>> what STATIC expands to, there's no need for this abstraction anymore.
> 
> Shouldn't you also mention "INIT" and "INITDATA" here?

Two parts: INITDATA was mistakenly mentioned in the title. I've
dropped that. And what I'm saying about STATIC does not apply to
INIT - for it, we replace the extra level of abstraction by
directly using __init, just like was done in the earlier patches.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:22:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:22:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111263.212777 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2tG-00084P-5n; Thu, 15 Apr 2021 14:22:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111263.212777; Thu, 15 Apr 2021 14:22: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 1lX2tG-00084I-2H; Thu, 15 Apr 2021 14:22:42 +0000
Received: by outflank-mailman (input) for mailman id 111263;
 Thu, 15 Apr 2021 14:22:41 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2tF-00084C-Fl
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:22:41 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 36129436-dbe9-4e4b-a0ba-1ad624e744c2;
 Thu, 15 Apr 2021 14:22:40 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0DE2DAF79;
 Thu, 15 Apr 2021 14:22: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: 36129436-dbe9-4e4b-a0ba-1ad624e744c2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618496560; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=1IPtRFErwYfDHMEq0K5fG1FI5xXzh8w7kMgqtY5TcfI=;
	b=iUgEL7lMyfqCWi7w1BObpr+AjAt2ySaAa3e6YS20prxMdhB78ZAGwS/7rDWDS3K6YsM1ch
	YLL/YIljh4h8/SQiJbRbwATcj3b4qKj//A0O2vXfW9JOT1H/YZOQSH9uJQ+7T9KCRM/wtT
	ZPFy23Et0I0OAxcm/dVWa0H7GULVcuM=
Subject: Re: [PATCH v3 12/15] unxz: replace INIT{,DATA} and STATIC
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <4e0a0db2-db34-a738-2f5e-1d5cd2c37e19@suse.com>
 <c52c9670-d87e-79f9-0104-e6e074419c31@xen.org>
 <a9adf993-0f2d-acb1-b671-7b8c3b15b4d8@suse.com>
 <eaf819a8-985f-d33f-902d-58320c99a8d8@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1a3f4d72-d57a-dde3-fb46-c91508f09b2a@suse.com>
Date: Thu, 15 Apr 2021 16:22:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <eaf819a8-985f-d33f-902d-58320c99a8d8@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 16:18, Julien Grall wrote:
> 
> 
> On 15/04/2021 15:16, Jan Beulich wrote:
>> On 15.04.2021 13:58, Julien Grall wrote:
>>> On 26/01/2021 09:52, Jan Beulich wrote:
>>>> --- a/xen/common/decompress.h
>>>> +++ b/xen/common/decompress.h
>>>> @@ -9,7 +9,6 @@
>>>>    
>>>>    #define STATIC static
>>>>    #define INIT __init
>>>> -#define INITDATA __initdata
>>>>    
>>>>    #define malloc xmalloc_bytes
>>>>    #define free xfree
>>>> @@ -21,7 +20,6 @@
>>>>    
>>>>    #define STATIC static
>>>>    #define INIT
>>>> -#define INITDATA
>>>
>>> Shouldn't the two changes be part of patch #14?
>>
>> One could do it that way, sure, but the last uses are gone here,
>> and hence I wanted to get rid of this one item right away.
> 
> AFAICT, the same is true for STATIC and INIT. So it doesn't sense to not 
> be consistent in the way you treat them.

No, further uses of STATIC and INIT get dropped by later patches.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:22:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:22:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111264.212789 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2tU-00088d-D2; Thu, 15 Apr 2021 14:22:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111264.212789; Thu, 15 Apr 2021 14:22: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 1lX2tU-00088W-9s; Thu, 15 Apr 2021 14:22:56 +0000
Received: by outflank-mailman (input) for mailman id 111264;
 Thu, 15 Apr 2021 14:22: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 1lX2tT-00088H-4o
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:22: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 1lX2tS-0001QP-6e; Thu, 15 Apr 2021 14:22:54 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX2tS-0006YT-0N; Thu, 15 Apr 2021 14:22: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=Ruvd+8zvkdIsMnH5VGmqt0lchqWBosqLUo+AkEVEfgE=; b=ON41oBqNX+yYWkoPF+bTBRdJyU
	O+qtfkrbhoSlQTJwO4buUjVH/ewsUFttIko2yKgCSn5TLixC8mS7EWLggiIGEzMO+ACDj+gtUv/zx
	2qb9g+a1qMkJF8Fyl022GF1czvBfyrEQ1G4Ye98C4OglBqi6XXw3ncUCsiYRYDjjFJKY=;
Subject: Re: [PATCH v3 13/15] unzstd: replace INIT{,DATA} and STATIC
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <19f12930-df0e-5a00-9e5e-53edffcf51d7@suse.com>
 <467ed62e-e5c3-0a08-b9a7-5b4e913b3c90@xen.org>
 <e1d08ced-c2e8-22e3-2da3-8116b69cb627@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <e861b617-7b9f-317d-9941-0fd7577147cb@xen.org>
Date: Thu, 15 Apr 2021 15:22:52 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <e1d08ced-c2e8-22e3-2da3-8116b69cb627@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 15/04/2021 15:21, Jan Beulich wrote:
> On 15.04.2021 13:59, Julien Grall wrote:
>> On 26/01/2021 09:52, Jan Beulich wrote:
>>> With xen/common/decompress.h now agreeing in both build modes about
>>> what STATIC expands to, there's no need for this abstraction anymore.
>>
>> Shouldn't you also mention "INIT" and "INITDATA" here?
> 
> Two parts: INITDATA was mistakenly mentioned in the title. I've
> dropped that. 

Ok.

And what I'm saying about STATIC does not apply to
> INIT - for it, we replace the extra level of abstraction by
> directly using __init, just like was done in the earlier patches.

This should be mention in the commit message.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:23:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:23:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111269.212801 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2tl-0008FD-MD; Thu, 15 Apr 2021 14:23:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111269.212801; Thu, 15 Apr 2021 14: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 1lX2tl-0008F5-If; Thu, 15 Apr 2021 14:23:13 +0000
Received: by outflank-mailman (input) for mailman id 111269;
 Thu, 15 Apr 2021 14:23:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=RRZF=JM=edu.unito.it=giuseppe.eletto@srs-us1.protection.inumbo.net>)
 id 1lX2tj-0008DP-Gh
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:23:12 +0000
Received: from mail-lf1-x135.google.com (unknown [2a00:1450:4864:20::135])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 34b13bb7-bd72-43f1-90ca-058c8960a5cd;
 Thu, 15 Apr 2021 14:23:08 +0000 (UTC)
Received: by mail-lf1-x135.google.com with SMTP id w8so31022436lfr.0
 for <xen-devel@lists.xenproject.org>; Thu, 15 Apr 2021 07:23: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: 34b13bb7-bd72-43f1-90ca-058c8960a5cd
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=edu.unito.it; s=edugoogle;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=Z0ZvhMxQ5AxilYloOQntOhFVKwyvNhhQ1tS5K+D4F0A=;
        b=Go9FiogcWjc/ReFrPzeUL9+l1xpfzjOKSyhQrhkcI5dkmPYU3DCRKXnv/MQ+7ZGKQy
         vuJHi5ddG6Np9jhKHr7ph2RXgRtllkBvWIapJfbb54iromcUaQC/0Xzzu3ZyGh3dfc3Q
         gsOZnwwiudChPWj9/9anjxKeMdjSqpPK3Gxd8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=Z0ZvhMxQ5AxilYloOQntOhFVKwyvNhhQ1tS5K+D4F0A=;
        b=PrtabqM0/JHO9AT5EX60x8dHFBxeDYFXvIK7USIaspvG+aNiekPJvusfw3ZhpofRXv
         vBCLPQPqtCxHdeWOHM0yB9RNlOzdtloPuPwD366O9UWz0OEFvyf8ofL9sw1K2OBKHKAA
         7VPTP4zmejvfediD79X2VRRz0d3zR2eItnOhhZzSmi+vIxtYnssEoJv7MgHE80UqRcOz
         gNT0Oy3nVUkJU7SDvLd7sTzElF7nmlE6IYboXjFb+1nOELNHlVUg6rwbW1hM6k6C/cfI
         nAcqCuX/PsQ0Db23f+Yair+7SrYG7nJwq209alMkdtewGMkGAaI/0CLaMgGrlNTQiuYx
         KLug==
X-Gm-Message-State: AOAM53164YvCjJXM53lRaly9O5rOObp8pNuMGtbX3bpvxytC8PIO5JTk
	tT7q9XV19P1PvWsgVLhKlM4Md5xtr3oseIjfPPdjeL1d3pHw2hgBk69wid5TRwXo35gUSY7LUCP
	Eel6cXbUgns3pyA8O9vxZ0V95AyhIu4SmGr7z
X-Google-Smtp-Source: ABdhPJwZDmkgbf/X3L18Zed483uV4EvC/L/YkfRpHI49oSOVA4yNF3lGy256ROaJuKV7hQwz+yLSXfQaDWpspHUj73o=
X-Received: by 2002:ac2:55ba:: with SMTP id y26mr2668880lfg.590.1618496587259;
 Thu, 15 Apr 2021 07:23:07 -0700 (PDT)
MIME-Version: 1.0
References: <CALTQNB5X1+G33Qoh5nNxttQe_GkzKvJFLfEXQszsc6XYr+NgUA@mail.gmail.com>
 <8b43ae47-9d7e-a95c-4573-852d09f99662@gmail.com>
In-Reply-To: <8b43ae47-9d7e-a95c-4573-852d09f99662@gmail.com>
From: Giuseppe Eletto <giuseppe.eletto@edu.unito.it>
Date: Thu, 15 Apr 2021 16:22:30 +0200
Message-ID: <CALTQNB7-cj8x1y5Xy_xJf-wYfQVFsYZkqwCmM-MAHt19Gy-9xQ@mail.gmail.com>
Subject: =?UTF-8?Q?Re=3A_A_KernelShark_plugin_for_Xen_traces_analysis_=E2=80=8B?=
To: "Yordan Karadzhov (VMware)" <y.karadz@gmail.com>, xen-devel@lists.xenproject.org, 
	linux-trace-devel@vger.kernel.org
Cc: Dario Faggioli <dfaggioli@suse.com>, Enrico Bini <enrico.bini@unito.it>
Content-Type: multipart/alternative; boundary="0000000000002779b605c0039afe"

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

Hi,

As Dario already said, the plugin seems to work well with all the traces we
fed to it.
The largest trace was nearly 500MB, but still it had no trouble showing it.

The only minor troubles I encountered writing the plugin is with the
different data
types between KShark and XenTrace: for example regarding the "event_id"
field of
the "struct kshark_entry" structure which in KShark has type "int16_t"
while XenTrace
has events of the type "uint32_t" at 28 bits.
But since there are functions like "get_event_id" these differences can be
bypassed without seemingly creating problems.

So yes, the plugin is still a prototype. The main purpose so far was to
create
something that works: in fact, as mr. @Andrew_Cooper pointed out, the
couple
"dom:vcpu" is still displayed as a HEX number without any kind of
formatting.
This is because at the moment I have copied the same formatting as the
"xentrace_format" tool.
So a future plan for updating this plugin could be to improve its output.

As for the tutorial, I wouldn't mind trying, but right now I'm busy writing
the thesis for the graduation...

Kind regards,
Giuseppe Eletto.

Il giorno mer 14 apr 2021 alle ore 11:26 Yordan Karadzhov (VMware) <
y.karadz@gmail.com> ha scritto:

> Hi Giuseppe,
>
> It is great to see such progress in the development of the Xen plugin.
>
> Can you share with us what are your plans for continuing this work. Is
> this a first prototype of the plugin, or it is an almost final version?
>
> I was also thinking that maybe you can prepare a short tutorial on
> writing KernelShark plugins for data inputs. You have the best
> experience for this task, since you are the first to develop an external
> plugin. Ideally, this can even turn into a talk that you can give at
> some open source event.
> What do you think?
>
> Best,
> Yordan
>
>
> On 13.04.21 =D0=B3. 17:28, Giuseppe Eletto wrote:
> > Hello,
> > I want to share with you a new plugin developed by me, under the
> > supervision of Dario Faggioli, which allows the new version of
> KernelShark
> > (the v2-beta) to open and view the Xen traces created using the
> "xentrace" tool.
> >
> > In fact, KernelShark is a well known tool for graphical visualization
> > Linux kernel traces, obtained via "ftrace" and "trace-cmd". Anyway than=
ks
> > to its modular architecture, it is now possible to implement plugins
> which
> > open and display traces with arbitrary format, for example, as in in
> > this case, traces of the Xen hypervisor.
> >
> > For more information on how to build the plugin and/or
> > to view the source code I leave the repository below:
> > https://github.com/giuseppe998e/kernelshark-xentrace-plugin
> >
> >
> > In short:
> >
> > $ sudo apt install git build-essential libjson-c-dev
> > $ git clone --recurse-submodules
> > https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
> > $ cd kernelshark-xentrace-plugin/
> > $ make
> >
> > $ export XEN_CPUHZ=3D3G # Sets the CPU frequency ((G)hz/(M)hz/(K)hz/hz)
> > $ kernelshark -p out/ks-xentrace.so trace.xen
> >
> >
> > You will need the development version of KernelShark, available here:
> > https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git
> >
> > A screenshot of the plugin in action is available here:
> >
> https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/.g=
ithub/img/ks-xentrace.png
> >
> > I'm happy to receive whatever feedback you may have about it,
> > and to answer any question.
> >
> > Kind regards,
> > Giuseppe Eletto.
> >
>

--=20
------------------------



Indirizzo istituzionale di posta elettronica=20
degli studenti e dei laureati dell'Universit=C3=A0 degli Studi di TorinoOff=
icial=C2=A0
University of Turin=C2=A0email address=C2=A0for students and graduates=C2=
=A0

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

<div dir=3D"ltr"><div>Hi,<br><br></div><div>As Dario already said, the plug=
in seems to work well with all the traces we fed to it.<br></div><div>The l=
argest trace was nearly 500MB, but still it had no trouble showing it.</div=
><div><br></div><div>The only minor troubles I encountered writing the plug=
in is with the different data</div><div> types between KShark and XenTrace:=
 for example regarding the &quot;event_id&quot; field of</div><div> the &qu=
ot;struct kshark_entry&quot; structure which in KShark has type &quot;int16=
_t&quot; while XenTrace</div><div>has events of the type &quot;uint32_t&quo=
t; at 28 bits.</div><div><span class=3D"gmail-VIiyi" lang=3D"en"><span clas=
s=3D"gmail-JLqJ4b gmail-ChMk0b"><span>But since there are functions like &q=
uot;get_event_id&quot; these differences can be</span></span></span></div><=
div><span class=3D"gmail-VIiyi" lang=3D"en"><span class=3D"gmail-JLqJ4b gma=
il-ChMk0b"><span>bypassed without seemingly creating problems.</span></span=
></span></div><div><br></div><div>So yes, the plugin is still a prototype. =
The main purpose so far was to create</div><div>something that works: in fa=
ct, as mr. @Andrew_Cooper pointed out, the couple <br></div><div>&quot;dom:=
vcpu&quot; is still displayed as a HEX number without any kind of formattin=
g.</div><div>This is because at the moment I have copied the same formattin=
g as the</div><div>&quot;xentrace_format&quot; tool.</div><div>So a future =
plan for updating this plugin could be to improve its output.</div><div><br=
></div><div>As for the tutorial, I wouldn&#39;t mind trying, but right now =
I&#39;m busy writing the thesis for the graduation...</div><br> Kind regard=
s,<br>Giuseppe Eletto.<br><br><div class=3D"gmail_quote"><div dir=3D"ltr" c=
lass=3D"gmail_attr">Il giorno mer 14 apr 2021 alle ore 11:26 Yordan Karadzh=
ov (VMware) &lt;<a href=3D"mailto:y.karadz@gmail.com">y.karadz@gmail.com</a=
>&gt; ha scritto:<br></div><blockquote class=3D"gmail_quote" style=3D"margi=
n:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex=
">Hi Giuseppe,<br>
<br>
It is great to see such progress in the development of the Xen plugin.<br>
<br>
Can you share with us what are your plans for continuing this work. Is <br>
this a first prototype of the plugin, or it is an almost final version?<br>
<br>
I was also thinking that maybe you can prepare a short tutorial on <br>
writing KernelShark plugins for data inputs. You have the best <br>
experience for this task, since you are the first to develop an external <b=
r>
plugin. Ideally, this can even turn into a talk that you can give at <br>
some open source event.<br>
What do you think?<br>
<br>
Best,<br>
Yordan<br>
<br>
<br>
On 13.04.21 =D0=B3. 17:28, Giuseppe Eletto wrote:<br>
&gt; Hello,<br>
&gt; I want to share with you a new plugin developed by me, under the<br>
&gt; supervision of Dario Faggioli, which allows the new version of KernelS=
hark<br>
&gt; (the v2-beta) to open and view the Xen traces created using the &quot;=
xentrace&quot; tool.<br>
&gt; <br>
&gt; In fact, KernelShark is a well known tool for graphical visualization<=
br>
&gt; Linux kernel traces, obtained via &quot;ftrace&quot; and &quot;trace-c=
md&quot;. Anyway thanks<br>
&gt; to its modular architecture, it is now possible to implement plugins w=
hich<br>
&gt; open and display traces with arbitrary format, for example, as in in<b=
r>
&gt; this case, traces of the Xen hypervisor.<br>
&gt; <br>
&gt; For more information on how to build the plugin and/or<br>
&gt; to view the source code I leave the repository below:<br>
&gt; <a href=3D"https://github.com/giuseppe998e/kernelshark-xentrace-plugin=
" rel=3D"noreferrer" target=3D"_blank">https://github.com/giuseppe998e/kern=
elshark-xentrace-plugin</a><br>
&gt; <br>
&gt; <br>
&gt; In short:<br>
&gt; <br>
&gt; $ sudo apt install git build-essential libjson-c-dev<br>
&gt; $ git clone --recurse-submodules<br>
&gt; <a href=3D"https://github.com/giuseppe998e/kernelshark-xentrace-plugin=
.git" rel=3D"noreferrer" target=3D"_blank">https://github.com/giuseppe998e/=
kernelshark-xentrace-plugin.git</a><br>
&gt; $ cd kernelshark-xentrace-plugin/<br>
&gt; $ make<br>
&gt; <br>
&gt; $ export XEN_CPUHZ=3D3G # Sets the CPU frequency ((G)hz/(M)hz/(K)hz/hz=
)<br>
&gt; $ kernelshark -p out/ks-xentrace.so trace.xen<br>
&gt; <br>
&gt; <br>
&gt; You will need the development version of KernelShark, available here:<=
br>
&gt; <a href=3D"https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark=
.git" rel=3D"noreferrer" target=3D"_blank">https://git.kernel.org/pub/scm/u=
tils/trace-cmd/kernel-shark.git</a><br>
&gt; <br>
&gt; A screenshot of the plugin in action is available here:<br>
&gt; <a href=3D"https://github.com/giuseppe998e/kernelshark-xentrace-plugin=
/raw/master/.github/img/ks-xentrace.png" rel=3D"noreferrer" target=3D"_blan=
k">https://github.com/giuseppe998e/kernelshark-xentrace-plugin/raw/master/.=
github/img/ks-xentrace.png</a><br>
&gt; <br>
&gt; I&#39;m happy to receive whatever feedback you may have about it,<br>
&gt; and to answer any question.<br>
&gt; <br>
&gt; Kind regards,<br>
&gt; Giuseppe Eletto.<br>
&gt; <br>
</blockquote></div></div>

<br>
<div style=3D"font-size:1.3em">------------------------</div><span style=3D=
"font-size:small"><div><img src=3D"http://www.unito.it/sites/default/files/=
logounito.png"></div><div><span style=3D"font-size:small"><br></span></div>=
Indirizzo istituzionale di posta elettronica degli studenti e dei laureati =
dell&#39;Universit=C3=A0 degli Studi di Torino</span><div><font size=3D"2">=
Official=C2=A0University of Turin=C2=A0email address=C2=A0for students and =
graduates=C2=A0</font></div>
--0000000000002779b605c0039afe--


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:24:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:24:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111279.212813 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2v9-0008SV-6C; Thu, 15 Apr 2021 14:24:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111279.212813; Thu, 15 Apr 2021 14: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 1lX2v9-0008SO-1e; Thu, 15 Apr 2021 14:24:39 +0000
Received: by outflank-mailman (input) for mailman id 111279;
 Thu, 15 Apr 2021 14:24: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 1lX2v7-0008SG-94
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:24: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 1lX2v6-0001SC-FU; Thu, 15 Apr 2021 14:24:36 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX2v6-0006fG-6X; Thu, 15 Apr 2021 14:24: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=rJsZ9cugQTqN6PO9ZWiF2oGJDWsogfk/HOVQ+eBQuRA=; b=Ie40d7u2u+1zIm9O+tK5WkPzcH
	LrsWXdJ0QCFjhOxR8tBvL6Juu6U01dD6z/E6h2Y3c5Yfj0cXG2v8KQ6ueFUnbtqSuCm4WYSMXIINs
	m22jqKcxqsD+ehOpgj9ui0ySAfU9QCIUVLkQW6xg4ACBHCJLAP0RxZZXI6rMfABlzsiU=;
Subject: Re: [PATCH v3 12/15] unxz: replace INIT{,DATA} and STATIC
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <4e0a0db2-db34-a738-2f5e-1d5cd2c37e19@suse.com>
 <c52c9670-d87e-79f9-0104-e6e074419c31@xen.org>
 <a9adf993-0f2d-acb1-b671-7b8c3b15b4d8@suse.com>
 <eaf819a8-985f-d33f-902d-58320c99a8d8@xen.org>
 <1a3f4d72-d57a-dde3-fb46-c91508f09b2a@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <3642f590-e3b9-ce65-7dce-04681dbfb02f@xen.org>
Date: Thu, 15 Apr 2021 15:24:34 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <1a3f4d72-d57a-dde3-fb46-c91508f09b2a@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 15/04/2021 15:22, Jan Beulich wrote:
> On 15.04.2021 16:18, Julien Grall wrote:
>>
>>
>> On 15/04/2021 15:16, Jan Beulich wrote:
>>> On 15.04.2021 13:58, Julien Grall wrote:
>>>> On 26/01/2021 09:52, Jan Beulich wrote:
>>>>> --- a/xen/common/decompress.h
>>>>> +++ b/xen/common/decompress.h
>>>>> @@ -9,7 +9,6 @@
>>>>>     
>>>>>     #define STATIC static
>>>>>     #define INIT __init
>>>>> -#define INITDATA __initdata
>>>>>     
>>>>>     #define malloc xmalloc_bytes
>>>>>     #define free xfree
>>>>> @@ -21,7 +20,6 @@
>>>>>     
>>>>>     #define STATIC static
>>>>>     #define INIT
>>>>> -#define INITDATA
>>>>
>>>> Shouldn't the two changes be part of patch #14?
>>>
>>> One could do it that way, sure, but the last uses are gone here,
>>> and hence I wanted to get rid of this one item right away.
>>
>> AFAICT, the same is true for STATIC and INIT. So it doesn't sense to not
>> be consistent in the way you treat them.
> 
> No, further uses of STATIC and INIT get dropped by later patches.

I think you misundertood my comment. What I meant is you drop INIT in 
patch #14 when the last caller was dropped in a previous patch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:25:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:25:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111283.212825 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2vi-0000DE-Ej; Thu, 15 Apr 2021 14:25:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111283.212825; Thu, 15 Apr 2021 14: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 1lX2vi-0000D7-BY; Thu, 15 Apr 2021 14:25:14 +0000
Received: by outflank-mailman (input) for mailman id 111283;
 Thu, 15 Apr 2021 14:25:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2vh-0000D0-6p
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:25:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8502ef35-dee2-4977-95d7-b2dcbe46d0e0;
 Thu, 15 Apr 2021 14:25:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C0CA0B1F3;
 Thu, 15 Apr 2021 14:25: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: 8502ef35-dee2-4977-95d7-b2dcbe46d0e0
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618496711; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=2vzOXjNV5hIaoiD6hs76FLM7uxOXtU+G1Sj2hvj/RSQ=;
	b=V2QYAth32jUeIkyLLYGCYoKSBkBnPb06qR+sh8sY0WGDidZDb8FifWuBz7W9swYZK94yUZ
	+g3ZWSelayTIPbt/kjjDibUTJjbevSJOoWz692rNf53kb6aYOWh1ZgNIrAT+xnPJbdGGmj
	v1Dsx+2wdOB9wfqg4oDzw7dJZbUeA20=
Subject: Re: [PATCH v3 13/15] unzstd: replace INIT{,DATA} and STATIC
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <19f12930-df0e-5a00-9e5e-53edffcf51d7@suse.com>
 <467ed62e-e5c3-0a08-b9a7-5b4e913b3c90@xen.org>
 <e1d08ced-c2e8-22e3-2da3-8116b69cb627@suse.com>
 <e861b617-7b9f-317d-9941-0fd7577147cb@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <950e7ec1-3d4a-594d-ce8f-62d9d5930265@suse.com>
Date: Thu, 15 Apr 2021 16:25:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <e861b617-7b9f-317d-9941-0fd7577147cb@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 16:22, Julien Grall wrote:
> On 15/04/2021 15:21, Jan Beulich wrote:
>> On 15.04.2021 13:59, Julien Grall wrote:
>>> On 26/01/2021 09:52, Jan Beulich wrote:
>>>> With xen/common/decompress.h now agreeing in both build modes about
>>>> what STATIC expands to, there's no need for this abstraction anymore.
>>>
>>> Shouldn't you also mention "INIT" and "INITDATA" here?
>>
>> Two parts: INITDATA was mistakenly mentioned in the title. I've
>> dropped that. 
> 
> Ok.
> 
> And what I'm saying about STATIC does not apply to
>> INIT - for it, we replace the extra level of abstraction by
>> directly using __init, just like was done in the earlier patches.
> 
> This should be mention in the commit message.

It already is by what is being said after the comma. May I direct
you back to the commit messages of earlier patches in this series
(when talk was of just INIT)?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:28:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:28:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111292.212837 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX2z6-0000QM-Vs; Thu, 15 Apr 2021 14:28:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111292.212837; Thu, 15 Apr 2021 14: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 1lX2z6-0000QF-SD; Thu, 15 Apr 2021 14:28:44 +0000
Received: by outflank-mailman (input) for mailman id 111292;
 Thu, 15 Apr 2021 14:28:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX2z5-0000QA-V0
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:28:43 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f75b17db-1389-4e07-9505-d6186d97db51;
 Thu, 15 Apr 2021 14:28:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 66DD2AF1F;
 Thu, 15 Apr 2021 14:28: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: f75b17db-1389-4e07-9505-d6186d97db51
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618496922; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=T8PbSeELSq3i/ET+RhIXIVZHrkQorWfYNJyfxRnGXeU=;
	b=KcbEPhEhscwMSxFQP/8dmMQrtKTw+ZXDKpXgh0bMHGk76pqMgsoy8Nh73VN8oeL+t+ekj3
	DvqXpnjKVp6W3yzVdMhwOapij47yPn+HudjnANcy2S9xW8m7qWuZIfwYLtdKfHAO/ZzFEL
	LdCyPLeW5JTDz21Cvg8lCYzSVlZHBy0=
Subject: Re: [PATCH v3 12/15] unxz: replace INIT{,DATA} and STATIC
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <4e0a0db2-db34-a738-2f5e-1d5cd2c37e19@suse.com>
 <c52c9670-d87e-79f9-0104-e6e074419c31@xen.org>
 <a9adf993-0f2d-acb1-b671-7b8c3b15b4d8@suse.com>
 <eaf819a8-985f-d33f-902d-58320c99a8d8@xen.org>
 <1a3f4d72-d57a-dde3-fb46-c91508f09b2a@suse.com>
 <3642f590-e3b9-ce65-7dce-04681dbfb02f@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a76656e4-1b19-df2f-aba0-e7b26b3ab968@suse.com>
Date: Thu, 15 Apr 2021 16:28:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <3642f590-e3b9-ce65-7dce-04681dbfb02f@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 16:24, Julien Grall wrote:
> 
> 
> On 15/04/2021 15:22, Jan Beulich wrote:
>> On 15.04.2021 16:18, Julien Grall wrote:
>>>
>>>
>>> On 15/04/2021 15:16, Jan Beulich wrote:
>>>> On 15.04.2021 13:58, Julien Grall wrote:
>>>>> On 26/01/2021 09:52, Jan Beulich wrote:
>>>>>> --- a/xen/common/decompress.h
>>>>>> +++ b/xen/common/decompress.h
>>>>>> @@ -9,7 +9,6 @@
>>>>>>     
>>>>>>     #define STATIC static
>>>>>>     #define INIT __init
>>>>>> -#define INITDATA __initdata
>>>>>>     
>>>>>>     #define malloc xmalloc_bytes
>>>>>>     #define free xfree
>>>>>> @@ -21,7 +20,6 @@
>>>>>>     
>>>>>>     #define STATIC static
>>>>>>     #define INIT
>>>>>> -#define INITDATA
>>>>>
>>>>> Shouldn't the two changes be part of patch #14?
>>>>
>>>> One could do it that way, sure, but the last uses are gone here,
>>>> and hence I wanted to get rid of this one item right away.
>>>
>>> AFAICT, the same is true for STATIC and INIT. So it doesn't sense to not
>>> be consistent in the way you treat them.
>>
>> No, further uses of STATIC and INIT get dropped by later patches.
> 
> I think you misundertood my comment. What I meant is you drop INIT in 
> patch #14 when the last caller was dropped in a previous patch.

Now this and some other of your comments are getting really nitpicky.
The end result is the same. I can certainly move removals around
further, but I think I ought to have some leeway on how exactly I
achieve an identical end result. Things would be different, I agree,
if the end result was not suitably consistent.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:30:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:30:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111296.212848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX30j-0001EI-BL; Thu, 15 Apr 2021 14:30:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111296.212848; Thu, 15 Apr 2021 14:30:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX30j-0001EB-8H; Thu, 15 Apr 2021 14:30:25 +0000
Received: by outflank-mailman (input) for mailman id 111296;
 Thu, 15 Apr 2021 14:30: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 1lX30i-0001E6-6A
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:30: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 1lX30h-0001Yf-7q; Thu, 15 Apr 2021 14:30:23 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX30g-0006tl-Uk; Thu, 15 Apr 2021 14:30:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=VuLWvDMiu59wCnGBCK8F/vMf6sIRwoC7SubguMFQhXs=; b=GTMOlV0q51S51b9f/crWnuBNVa
	QmbDPknZOmylH+N+pXsIIJhaXwCHPgpvoh03Y55lxlLlCYVu5TUqRv9CbsoC7XT8jfXm3th3ELOdp
	AfgVIwkMo4QA5XjPmeJjVnW2A45morMyhMX1qe126xB/4ZWuafOCNiOqi/uuAFGimpQU=;
Subject: Re: [PATCH v3 13/15] unzstd: replace INIT{,DATA} and STATIC
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <19f12930-df0e-5a00-9e5e-53edffcf51d7@suse.com>
 <467ed62e-e5c3-0a08-b9a7-5b4e913b3c90@xen.org>
 <e1d08ced-c2e8-22e3-2da3-8116b69cb627@suse.com>
 <e861b617-7b9f-317d-9941-0fd7577147cb@xen.org>
 <950e7ec1-3d4a-594d-ce8f-62d9d5930265@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <75195be2-ca13-28c2-b871-992c0168e1e7@xen.org>
Date: Thu, 15 Apr 2021 15:30:21 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <950e7ec1-3d4a-594d-ce8f-62d9d5930265@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 15/04/2021 15:25, Jan Beulich wrote:
> On 15.04.2021 16:22, Julien Grall wrote:
>> On 15/04/2021 15:21, Jan Beulich wrote:
>>> On 15.04.2021 13:59, Julien Grall wrote:
>>>> On 26/01/2021 09:52, Jan Beulich wrote:
>>>>> With xen/common/decompress.h now agreeing in both build modes about
>>>>> what STATIC expands to, there's no need for this abstraction anymore.
>>>>
>>>> Shouldn't you also mention "INIT" and "INITDATA" here?
>>>
>>> Two parts: INITDATA was mistakenly mentioned in the title. I've
>>> dropped that.
>>
>> Ok.
>>
>> And what I'm saying about STATIC does not apply to
>>> INIT - for it, we replace the extra level of abstraction by
>>> directly using __init, just like was done in the earlier patches.
>>
>> This should be mention in the commit message.
> 
> It already is by what is being said after the comma. May I direct
> you back to the commit messages of earlier patches in this series
> (when talk was of just INIT)?
 From the way the commit message is written it sounds like more you are 
referring to STATIC only. This is a clearer on the other commit messages 
because there is no other way to interpret "this".

So I would suggest to clarify it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:32:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111301.212861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX32L-0001Lo-NI; Thu, 15 Apr 2021 14:32:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111301.212861; Thu, 15 Apr 2021 14:32: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 1lX32L-0001Lh-KK; Thu, 15 Apr 2021 14:32:05 +0000
Received: by outflank-mailman (input) for mailman id 111301;
 Thu, 15 Apr 2021 14:32:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX32J-0001Lc-I1
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:32:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5f18d728-6f08-4b9e-91b7-b73037d5d50e;
 Thu, 15 Apr 2021 14:32:02 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6C7ADB08C;
 Thu, 15 Apr 2021 14:32: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: 5f18d728-6f08-4b9e-91b7-b73037d5d50e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618497121; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=HV5IjmRketPtETJcxwA0VcHFqdedR5sscSBS5gWQYbk=;
	b=dG9+dEg76iBlZFhVK1L4Ppbc9NfV6pYt7oDBVEmvp73OCj7rHlYj/2mILAlWCgzwCPTIiN
	MRFF5Y372QMtBZzlalb5IFaGlOseq2CQs330/VVBlqSj4JC1NGO4FKjg2NJQkRx+vzBr9U
	eLXSaNP7S5ngZhxVlFYdRTN8LmbRf1A=
Subject: Re: [PATCH v3 14/15] xen/decompress: drop STATIC and INIT
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <b9410d49-8767-a6f2-ccbe-c94e451c60ba@suse.com>
 <e36f9026-edb6-5eb3-fdb2-cd00750b3ee7@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <39c092fe-052c-5900-74ef-310e0ae15453@suse.com>
Date: Thu, 15 Apr 2021 16:32:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <e36f9026-edb6-5eb3-fdb2-cd00750b3ee7@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 16:21, Julien Grall wrote:
> On 26/01/2021 09:53, Jan Beulich wrote:
>> All users have been removed in earlier changes.
> 
> This is not entirely correct given there is a still a user of...
> 
>>
>> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> v3: New.
>>
>> --- a/xen/arch/arm/efi/efi-dom0.c
>> +++ b/xen/arch/arm/efi/efi-dom0.c
>> @@ -28,7 +28,7 @@
>>   #include <asm/setup.h>
>>   #include <asm/acpi.h>
>>   #include "../../../common/decompress.h"
>> -#define XZ_EXTERN STATIC
>> +#define XZ_EXTERN static
> 
> STATIC here. So maybe you want to say "all but one users"?

Sigh. Of course I re-word this. But does it really matter? The
more that the thing here is more of an abuse than a proper use
anyway? I didn't create this hackery ... In fact this odd use
is why I made this a separate patch in the first place.

> Also, for consistency, I think you want to either remove INITDATA here 
> or remove INIT in the patch that drop the last user.

See my other reply - what matters, I think, is a consistent
end result. I would really like to ask that I be left with some
room on how precisely to get there.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:34:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:34:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111306.212872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX34F-0001VF-3l; Thu, 15 Apr 2021 14:34:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111306.212872; Thu, 15 Apr 2021 14:34: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 1lX34F-0001V8-0h; Thu, 15 Apr 2021 14:34:03 +0000
Received: by outflank-mailman (input) for mailman id 111306;
 Thu, 15 Apr 2021 14:34:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX34D-0001V3-Nb
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:34:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5693ba94-da35-4e7b-b03b-869434eb5c7f;
 Thu, 15 Apr 2021 14:34:01 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2C447AF1F;
 Thu, 15 Apr 2021 14: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: 5693ba94-da35-4e7b-b03b-869434eb5c7f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618497240; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=3F0VvfsM1VnCdVFqBirA6O0TM+Ymi8FAq8gt90i8NXY=;
	b=a9N5qM+I9RM53cKB7CwZQh/Q7b+glrmhrbk2Cc1ZcknoQs4Uy4rS1VJD4O3/I4qnMeFITI
	spx88pe041iLwmDtepCTZTsgFiYmjncbTD0l28Lnplr6LP+13OhKb+CJKsHQAMPOci5auA
	px9XUkJcqdR+bwM75ct6ppiYLSTVBqs=
Subject: Re: [PATCH v3 13/15] unzstd: replace INIT{,DATA} and STATIC
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <19f12930-df0e-5a00-9e5e-53edffcf51d7@suse.com>
 <467ed62e-e5c3-0a08-b9a7-5b4e913b3c90@xen.org>
 <e1d08ced-c2e8-22e3-2da3-8116b69cb627@suse.com>
 <e861b617-7b9f-317d-9941-0fd7577147cb@xen.org>
 <950e7ec1-3d4a-594d-ce8f-62d9d5930265@suse.com>
 <75195be2-ca13-28c2-b871-992c0168e1e7@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <71658edb-2cb5-09c2-708f-06c6fca9253d@suse.com>
Date: Thu, 15 Apr 2021 16:34:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <75195be2-ca13-28c2-b871-992c0168e1e7@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 16:30, Julien Grall wrote:
> On 15/04/2021 15:25, Jan Beulich wrote:
>> On 15.04.2021 16:22, Julien Grall wrote:
>>> On 15/04/2021 15:21, Jan Beulich wrote:
>>>> On 15.04.2021 13:59, Julien Grall wrote:
>>>>> On 26/01/2021 09:52, Jan Beulich wrote:
>>>>>> With xen/common/decompress.h now agreeing in both build modes about
>>>>>> what STATIC expands to, there's no need for this abstraction anymore.
>>>>>
>>>>> Shouldn't you also mention "INIT" and "INITDATA" here?
>>>>
>>>> Two parts: INITDATA was mistakenly mentioned in the title. I've
>>>> dropped that.
>>>
>>> Ok.
>>>
>>> And what I'm saying about STATIC does not apply to
>>>> INIT - for it, we replace the extra level of abstraction by
>>>> directly using __init, just like was done in the earlier patches.
>>>
>>> This should be mention in the commit message.
>>
>> It already is by what is being said after the comma. May I direct
>> you back to the commit messages of earlier patches in this series
>> (when talk was of just INIT)?
>  From the way the commit message is written it sounds like more you are 
> referring to STATIC only. This is a clearer on the other commit messages 
> because there is no other way to interpret "this".

If the commit message is taken together with the title, I think
all is clear.

> So I would suggest to clarify it.

And I would like to avoid doing so. As a compromise, I'll change
"this abstraction" to "these abstractions".

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:37:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:37:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111311.212885 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX37A-0001k5-Jg; Thu, 15 Apr 2021 14:37:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111311.212885; Thu, 15 Apr 2021 14: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 1lX37A-0001jy-Fx; Thu, 15 Apr 2021 14:37:04 +0000
Received: by outflank-mailman (input) for mailman id 111311;
 Thu, 15 Apr 2021 14:37:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX379-0001jt-Bp
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:37:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d86dc4cd-7cdc-4d3d-acb1-dee3387dc1f2;
 Thu, 15 Apr 2021 14:37:02 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F1C1DAEF8;
 Thu, 15 Apr 2021 14:37: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: d86dc4cd-7cdc-4d3d-acb1-dee3387dc1f2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618497422; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ZlS98NHmwDXI5M5NUNK41/xF6syR9ld807hzb3h5W60=;
	b=X9BFV+RDQIOhhbZzNoXbzY7ccsPFWz+2VOhcZVr8eZqfNaZOAVszZmKZX82cVOvqB19naa
	vJCRO7RFwT9Fj+tpK4/TG9j1CLjhOhnFra3uqyEVIOILEzDJMHUHmHAhI9l9stKjOLWAO/
	NmUOZAkR1IlMpmX8X8IhOZJvkIeX7eA=
Subject: Re: [PATCH v3 15/15] unzstd: make helper symbols static
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <22549ef3-62a7-955e-e2ad-8bd47f832b68@suse.com>
 <8b5313db-1445-7d70-ac04-d8609d042108@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <95a83c6a-8828-d0c5-36cd-a5659da290a5@suse.com>
Date: Thu, 15 Apr 2021 16:37:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <8b5313db-1445-7d70-ac04-d8609d042108@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 14:09, Julien Grall wrote:
> On 26/01/2021 09:53, Jan Beulich wrote:
>> While for the original library's purposes these functions of course want
>> to be externally exposed, we don't need this, and we also don't want
>> this both to prevent unintended use and to keep the name space tidy.
>> (When functions have no callers at all, wrap them with a suitable
>> #ifdef.) This has the added benefit of reducing the resulting binary
>> size - while this is all .init code, it's still desirable to not carry
>> dead code.
> 
> So why do we keep the code if it is not used? Do you expect it to be 
> re-used in the future?

I expect future patch imports from Linux to be easier to apply when the
code is at least fundamentally the same as what we took from there
originally.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:45:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:45:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111318.212900 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3Fj-0002mE-HJ; Thu, 15 Apr 2021 14:45:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111318.212900; Thu, 15 Apr 2021 14: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 1lX3Fj-0002m7-EH; Thu, 15 Apr 2021 14:45:55 +0000
Received: by outflank-mailman (input) for mailman id 111318;
 Thu, 15 Apr 2021 14:45: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 1lX3Fi-0002m2-Df
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:45: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 1lX3Fh-0001pY-D5; Thu, 15 Apr 2021 14:45:53 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX3Fh-0008A7-3a; Thu, 15 Apr 2021 14:45: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=bwrtqTabdqwBUteMA3h8oCrjrdDQq7TNKoYz4L8jTSI=; b=rOaO6t2iDIAXSTimYxps/5R6do
	ufcDeR1w7Yt1dNtyY63rfsjxr89R/7t9HrVuSPTnthZhaUFNjUoeQq2V/nrrNZ6SYLWM+4IoodAvB
	ODqZIiitxwBUJm1dF44vdmPuUYUVd9AG67/suvc1wwx2QTKsnhd9mTvQ+Dz19FfWGv7A=;
Subject: Re: [PATCH v3 14/15] xen/decompress: drop STATIC and INIT
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <b9410d49-8767-a6f2-ccbe-c94e451c60ba@suse.com>
 <e36f9026-edb6-5eb3-fdb2-cd00750b3ee7@xen.org>
 <39c092fe-052c-5900-74ef-310e0ae15453@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <4bc3913a-89ba-5b5d-9cf2-301bf10cbf14@xen.org>
Date: Thu, 15 Apr 2021 15:45:51 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <39c092fe-052c-5900-74ef-310e0ae15453@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 15/04/2021 15:32, Jan Beulich wrote:
> On 15.04.2021 16:21, Julien Grall wrote:
>> On 26/01/2021 09:53, Jan Beulich wrote:
>>> All users have been removed in earlier changes.
>>
>> This is not entirely correct given there is a still a user of...
>>
>>>
>>> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>> ---
>>> v3: New.
>>>
>>> --- a/xen/arch/arm/efi/efi-dom0.c
>>> +++ b/xen/arch/arm/efi/efi-dom0.c
>>> @@ -28,7 +28,7 @@
>>>    #include <asm/setup.h>
>>>    #include <asm/acpi.h>
>>>    #include "../../../common/decompress.h"
>>> -#define XZ_EXTERN STATIC
>>> +#define XZ_EXTERN static
>>
>> STATIC here. So maybe you want to say "all but one users"?
> 
> Sigh. Of course I re-word this. But does it really matter? 

Just consistency between the diff and the commit message.

> The
> more that the thing here is more of an abuse than a proper use
> anyway? I didn't create this hackery ... In fact this odd use
> is why I made this a separate patch in the first place.
>> Also, for consistency, I think you want to either remove INITDATA here
>> or remove INIT in the patch that drop the last user.
> 
> See my other reply - what matters, I think, is a consistent
> end result. I would really like to ask that I be left with some
> room on how precisely to get there.

I thought I would point out because we often request to shuffle code to 
make a series more logical.

This is not a must to me. The code is fine it is.

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:47:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:47:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111324.212916 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3HR-0002uj-4x; Thu, 15 Apr 2021 14:47:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111324.212916; Thu, 15 Apr 2021 14:47: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 1lX3HQ-0002uc-Vj; Thu, 15 Apr 2021 14:47:40 +0000
Received: by outflank-mailman (input) for mailman id 111324;
 Thu, 15 Apr 2021 14:47: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 1lX3HP-0002uX-N0
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:47: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 1lX3HO-0001sj-SF; Thu, 15 Apr 2021 14:47:38 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX3HO-0008E7-LR; Thu, 15 Apr 2021 14:47: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=5TlB75kf/qDr9Khh2QJL8G/y3DImPl9rSzt9GOnvfhs=; b=lXjzpVoLzZBOn5wqDDu+6vMEzs
	vXy1BE57DwlV9NY/19qPtbX1AmdwtXVDhPBySiqlP4m9MWXUiOof2DDxrrRIo6s2TRJuT4/vszOyx
	TNRaRMxxRcYRd+EAhwhsmuPBTMarg7Vt5t1Pdqhybw+CrfMicDTTTzCOdnT/SUdOBWe8=;
Subject: Re: [PATCH v3 13/15] unzstd: replace INIT{,DATA} and STATIC
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <19f12930-df0e-5a00-9e5e-53edffcf51d7@suse.com>
 <467ed62e-e5c3-0a08-b9a7-5b4e913b3c90@xen.org>
 <e1d08ced-c2e8-22e3-2da3-8116b69cb627@suse.com>
 <e861b617-7b9f-317d-9941-0fd7577147cb@xen.org>
 <950e7ec1-3d4a-594d-ce8f-62d9d5930265@suse.com>
 <75195be2-ca13-28c2-b871-992c0168e1e7@xen.org>
 <71658edb-2cb5-09c2-708f-06c6fca9253d@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <7d33d499-19a6-dbea-7e37-59eeb5b47263@xen.org>
Date: Thu, 15 Apr 2021 15:47:36 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <71658edb-2cb5-09c2-708f-06c6fca9253d@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 15/04/2021 15:34, Jan Beulich wrote:
> On 15.04.2021 16:30, Julien Grall wrote:
>> On 15/04/2021 15:25, Jan Beulich wrote:
>>> On 15.04.2021 16:22, Julien Grall wrote:
>>>> On 15/04/2021 15:21, Jan Beulich wrote:
>>>>> On 15.04.2021 13:59, Julien Grall wrote:
>>>>>> On 26/01/2021 09:52, Jan Beulich wrote:
>>>>>>> With xen/common/decompress.h now agreeing in both build modes about
>>>>>>> what STATIC expands to, there's no need for this abstraction anymore.
>>>>>>
>>>>>> Shouldn't you also mention "INIT" and "INITDATA" here?
>>>>>
>>>>> Two parts: INITDATA was mistakenly mentioned in the title. I've
>>>>> dropped that.
>>>>
>>>> Ok.
>>>>
>>>> And what I'm saying about STATIC does not apply to
>>>>> INIT - for it, we replace the extra level of abstraction by
>>>>> directly using __init, just like was done in the earlier patches.
>>>>
>>>> This should be mention in the commit message.
>>>
>>> It already is by what is being said after the comma. May I direct
>>> you back to the commit messages of earlier patches in this series
>>> (when talk was of just INIT)?
>>   From the way the commit message is written it sounds like more you are
>> referring to STATIC only. This is a clearer on the other commit messages
>> because there is no other way to interpret "this".
> 
> If the commit message is taken together with the title, I think
> all is clear.

I have to admit, I view the commit title as a one line summary. So I 
often read them separately.

> 
>> So I would suggest to clarify it.
> 
> And I would like to avoid doing so. As a compromise, I'll change
> "this abstraction" to "these abstractions".

Sounds good to me.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:48:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:48:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111327.212927 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3Hu-00030B-C6; Thu, 15 Apr 2021 14:48:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111327.212927; Thu, 15 Apr 2021 14:48:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3Hu-000304-8n; Thu, 15 Apr 2021 14:48:10 +0000
Received: by outflank-mailman (input) for mailman id 111327;
 Thu, 15 Apr 2021 14:48:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX3Hs-0002zw-N2
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:48:09 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3f933612-cdc0-48d4-8bec-85f2f644acf2;
 Thu, 15 Apr 2021 14: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: 3f933612-cdc0-48d4-8bec-85f2f644acf2
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618498087;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=faeL7iddZjGiUuXtncg8AcnuzvRxtBBFJDXiAyWZ/fY=;
  b=LnPnzo9WfKsXGM7O6yqz/ieDHOuoP3IcFBru6xCu7jERUDwph6sHnIzO
   NH54BY+Mszc7Ysogftgf6NEyo3yoDFE55IXbmKMgzGBvjBvBEJCTtffVD
   qKzNFXla3xQ/4pEoCM65KaNRXTW9SumcOSKC1RS37JJ9mRBRULjomk5A7
   0=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: DRdExUtJcUY0SpYEBuKp+xlgyMDwGarvJIm3pxcWxWC5xQXbLUDzsX+cb8ah8ziHgKqPTUiq69
 Nnsfr+VpVr4cAZ48+BjYlqC1jl8WJgZgtMR2eGeL/DH6FWmw1icW9FGioYcX5ScqQo445MnvD5
 x5sYCVuY1gvhXj+qAzAS+CNvm0L1Z6hSVIoi2Mcb8SWYBoAU1b12yEfeyIOvd99QStcsPq2yEl
 Sh3JaLOlCgShgebopULtGW9HL0M2OC+jJowBwNrZFWjYd9mb8NTxTe6qyU02g7de08R3BUzRZr
 1WI=
X-SBRS: 5.2
X-MesageID: 43163646
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9hJLqq/+DLfNbamCN0duk+E+cL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmzybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIULD38Zn/+
 Nbf6B6YeedMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsLV4hLxW5Ce2GmO2dxQxRLAod8KY
 GV4dBJqyHlVXMcaMm6AXdtZZm/m/TgkpX6bRkaQyM28QXmt0LT1JfWMTi9mi0fXTRG3Ks4/Q
 H+8jDRy62/v5iAu2bh/kDJ6ZA+oqqF9vJmJOihzvcYMS/tjAHAXvURZ5SnsCouqO+irHYG+e
 O82ysIBMh453PPcmzdm3KEsGOMoVVeiQ6Q9XaijWb+usu8fTomCqN69PxkWyHE4EkttswU6t
 Ms40ulsfNsfHf9tRW4zd3JWxZ2r1GzsHovnMUC5kYvLrc2Wft/q5cS81hSF4pFNCXm6Jo/GO
 0rN83E4u1KGGnqIkzxjy1K+piBT34zFhCJTgwrvdGU6SFfmDRcw1EDzMISs38c/PsGOtV5zt
 WBFp4tuKBFT8cQY644LvwGW9GLBmvERg+JGH6OIHz8fZt3ek7lmtrS2vEY9euqcJsHwN8Zg5
 LaSm5VsmY0ZgbHFdCO5ptW6RrAKV/NEwjF+4V73dxUq7f8TL3kPWmoU1Y1ifatpP0ZH4n1QP
 C2FJVKA+LyDGfnFIpTtjeOGKV6GD07aok4q9w7U1WBrobgMYvxrNHWd/7VOf7MHF8fKyHCK0
 pGeAK2CNRL70itVHO9qgPWQWnRdkv2+o81NKDb+uMU2bUcL4EkiHlRtX2JouWwbRFSuK0/e0
 VzZJn9lLmgmGWw9WHUq0JkJwRaFUQQxLn7SXtFqUsrPirPAPk+kuTaXVoX8GqMJxd5Qc+TOh
 VYvU5L9aW+KIHV4zsjBdKhOmezlGASu3qOcpcZlsS4lIfYU6J9KqxjdL16FA3NGRAwsx1tsn
 1/ZAgNQVKaKinjkpy/jJsfBPjWcv51hAvDG78RlVvv8WGn4e0/THoSWDCjFeqamxwnSTZvil
 ptyKMHm7ablTGzKWwwvfQgPDR3GRSqKYMDKD7ASJRfm7jtdg01d2uMiDCAozwYe2bh9Swp9y
 TcBBzRXcuOLktWu3he3KqvzUh9cX+FeVlsLlpgt5dmKGjAsnFv8OOCa6apyVGNYl8azux1Ck
 CDXRIiZidVg/yn3h+cnziPUUg8zpI1J+rHEfANdarQ1n7FEvz+qYg2W9tvuLBrO9DlvrVVDa
 axewqJICj5DO1s8QqPvXohMDR1rn5hsf6A4myR0EGImFoERdzVKxBaYpteBfe2xW3tXeyJ35
 V0lshdh5r4DkzBLvq9jZjKZDtCIC7JqWG4T+sUuYlZ1JhCxodbLt3+a3/0z3lJ0xU1EdfsmG
 4fSKp95qrdOoUHRb1nRwtpun4glNGCNyIQw3fLK957WVEmlHnAOdyVp5LOtLo0G0WEzTGAcm
 W3wml4//3fWTGE2qNfI6UsIX5OYEx5zHh55uuNe8nxDwqtHtsztmaSAzuYcLVHTrKCFqhVhh
 Fm48uQl+vSThHG4mnrzE1GC5ML1X2mT8O0CB+NHuAN0+XSAyXxvoKapOipjDn2TjOnbV8/no
 MtTz1XUvh+
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="43163646"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Vfm+8u4tfJ3YSPyuXoJvFsdLLfUyWQB2lXjT8tMuBSanqUJGIpaG/vBIB41YKXXNr1DCxkT8zAbNryfiI8kLoeAX63KywQZEpmX25cKqk3NGmjwLbOOJ16tqMGmEQPKZ4gB/YssKT4b88XY6BoGQcDrjeATh+YczQzUsKuOAHV5GOlAwvNIcAdFVN8KaNaSExsqbVru4E6SgnGJhnIqXsrI/3sUganlk6/swXTQDQ49iuPKG1xj8tv2mhWCKq9xoJfeQfoTsSaIyRKyO4Lq/U5yBuwU+pMFBiOhEap0oyAM70dHgKcAXtsoUKAvBZC+gIGwDW9ynZNLX54AhvBrSEw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nMDcqqnOZfcCV9m8aPgUdHoikxshxCw4e5B1OOrT0OM=;
 b=acb/FDL3Ch2M6A4xJxTBQDHalRkAFIoYOWD3P8yv1cn3jAPY4YcCGJqw69biQIGvtegw8jGiD2LdK2yZc+zTVZnvTFQtiY20yI7HWb7f4xTzMXUkYBrFhpmhpMMBGg5/GYmWP0R+nbUQh+vxwyKf5cgAwUWefwze1EuIOr7uZgQtZpVteCC96IVyysnFdmE0IIeI10H532HEcwU5cOQBRW7nOZg3pE0xEReQ/gKznai3UFkhuWR/kKpijfbGh5Q1RPdZVjrf+OdvjcraMYuZ8aPXfqVDnC+T/BnWtVeeqw9h5WSuZ0Xfsh0Nj9WXouleyK1RD/cha4EKzxcHMfxD6g==
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=nMDcqqnOZfcCV9m8aPgUdHoikxshxCw4e5B1OOrT0OM=;
 b=tSnFXlH+IcQQ4aZTGk7dtdvGJusIKr5LFek51gWD4kOjpcFHmjNJd7u9IErETrIh6ymqY8BFipSXCdJrffGeomTZPB1/zfDHGNMOFh0ejmi5cVgJDx9VxkmdbWKcJ/bKJMMMC0Bq+McxgdoXSX3KNuln+2RIKgWum3yNDtxI1Qg=
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>, Ian Jackson
	<iwj@xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v2 0/2] x86/amd: LFENCE always serializing CPUID bit
Date: Thu, 15 Apr 2021 16:47:29 +0200
Message-ID: <20210415144731.3356-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0007.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::19) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8378e9e1-48b9-477d-c17c-08d9001d794d
X-MS-TrafficTypeDiagnostic: DM5PR03MB2843:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB284368D0A4D36197D5A43E928F4D9@DM5PR03MB2843.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: +JWRvlCyRUOP41CRUy8oO2uMLs1390bmC/mHjXDRo9nZT9wrZWoVWEHwoWGvqBG0FWZ6tY9QAoJ7d8MXEVCW4RwenMd3DJk6x2mr3GJw26kXB5/ukSauvE18sxvtDm3OiWDAUFBOLGebdXAIq50dDA79EHIDDeljkvReHURnDGTczaXWRkhM5UcC9EFNdKclJiTiOixbOhL3tJK072Bwc6EY2/yfitN/OREmltzHuvn4bMrLXfrNBRylRVoFkn6BNClsuNlNf8TGPsyoIxI6DEv9v9lTWbISep7t1cWCaySIYPRIuT8bZOHGYp0S6cEvpdo1HkSTP6NR5QyVaXsa3IU8a430kFcbnoFibRbjEJM7AiIuLCNq4kzaeA1JLQqeCuo7+31bR3Aofr6bPeV/JooqlHyhslopnlGttKb9zTXdW+y34y8bQpEoGYudA4MdvXzM/rBb+pS3bL6Gqou7/Woka0BGNx0aP2j2JEY4pdOQy0yrlaXFXMDFkl8kMkVxryn5sJhKqNZr+ujIupBlz2cDbyFICCoDAVZ1pmq11/nn56w3raSVWV5R0xvkMqLAgp7gqKO60U9YTV/Qd5wvSE4Qx/wwe06QpdcnXSAl/xw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(366004)(376002)(39860400002)(136003)(956004)(478600001)(38100700002)(8676002)(6666004)(5660300002)(1076003)(8936002)(66946007)(2616005)(66476007)(66556008)(26005)(2906002)(6496006)(6916009)(6486002)(107886003)(83380400001)(36756003)(4326008)(86362001)(316002)(54906003)(16526019)(186003)(4744005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?SmxJSldJWnByZU1JZEVZZz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 8378e9e1-48b9-477d-c17c-08d9001d794d
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 14:48:04.0036
 (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: 5e7iP75opToByPDp+QXnppM5NXz7GsyBKjpoNl2jZSrMFutVq0K2zGH3n9L12agG83lsm2IKTS2F4eEqyGWCOg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2843
X-OriginatorOrg: citrix.com

Hello,

The following patches aim to add support for the LFENCE always
serializing CPUID bit found in leaf 80000021.eax. In order to do that
the featureset needs to be expanded to support leaf 80000021.eax.

Thanks, Roger.

Roger Pau Monne (2):
  x86/amd: split LFENCE dispatch serializing setup logic into helper
  x86/cpuid: support LFENCE always serializing CPUID bit

 tools/libs/light/libxl_cpuid.c              |  2 +
 tools/misc/xen-cpuid.c                      |  6 ++
 xen/arch/x86/cpu/amd.c                      | 69 ++++++++++++---------
 xen/arch/x86/cpu/common.c                   |  3 +
 xen/arch/x86/cpu/cpu.h                      |  1 +
 xen/arch/x86/cpu/hygon.c                    | 27 +-------
 xen/include/asm-x86/cpufeatures.h           |  2 +-
 xen/include/public/arch-x86/cpufeatureset.h |  3 +
 xen/include/xen/lib/x86/cpuid.h             | 37 ++++++++++-
 9 files changed, 94 insertions(+), 56 deletions(-)

-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:48:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:48:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111328.212939 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3I1-00033G-Ka; Thu, 15 Apr 2021 14:48:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111328.212939; Thu, 15 Apr 2021 14:48:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3I1-000339-HD; Thu, 15 Apr 2021 14:48:17 +0000
Received: by outflank-mailman (input) for mailman id 111328;
 Thu, 15 Apr 2021 14:48:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX3I0-00032q-On
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:48:16 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 636f3f57-afef-4453-82f4-e8ec4e66ea69;
 Thu, 15 Apr 2021 14:48: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: 636f3f57-afef-4453-82f4-e8ec4e66ea69
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618498095;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=cd3CoYPuX3aw4POTIwakPsHJdWcXzR23STMzF2A8Gxg=;
  b=dxZCOVXaztatAZycjsW7KWiGOhFLnrceOx2KJaVtIRtHGi8fiAq8nwlp
   mLxL2/jFqLQAT7lcQQrOboIrT7NkDiI1dDlUJdmUxp8CZQZt2Xz/Sl8Mh
   Rn/Uxr/cTnjBSlJFWjipcFM2WtszYeF0bXvhky4Z9QDGgnPxob4QQsB3R
   8=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: MSxrH3aSPgtVH+NdE4xYn9oXog9R0vvuNeeioSsvCurZ58i3UO1iu4ue43Ag/7/fOuIUqH0WaZ
 6Oh5lK98YuqloLN8CDhO4fgxDOROOzdvbUHTrAw7oRbf6HoYkFyJE+xu13tOBITEI8itT0loBd
 /HL5ChFlWeD0s6n12931fccHJ10MmHxLYIRGyzuI/rhOs7qYswW45oKoYo78/b9MX0Fwsg32O3
 jYtg0Ixp+mBA52sd0YozhJKeal30rucfXMUJIoWDtUOGmyOM3Y79Mpf/ntkocydlIZHpdP6zqw
 o/8=
X-SBRS: 5.2
X-MesageID: 42063248
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:7GzHpq3tLbHCxB2Q/wjQxgqjBTd3eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/FIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmtJ1/Z
 xLN5JzANiYNzVHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcBdxi1SYzzrdnFebg9AGJY/Cd
 6g/cJBvTWtYjA6ac68C3kDUYH41qH2vbjhZgMLAANi1RmWgVqTmcPHOjW7/jNbaTNAxr8+7X
 PI+jaW2oyPu+y2oyWssVP7wI9RnLLau7l+LeyKzvMYMzD9zjuvDb4RIIGqmBAQjKWR5E0xkN
 /Kyi1QT/hbz3/KZGm6rV/M9mDboU8TwkTvw1OZnnfvyPaRLFlRa7sj9PBkWyDU5EY6sNZ33L
 gj5RPii7NtAQ7dhyO43tDUVnhR5zuJiEA/mu0ehWE3a/p4VJZtq+UkjSZoOaZFNif75Ic7Kf
 JpHcHR6d1HGGnqEUzxjy1BxsehUW80GQrDak8eutaN2zwTp3xhyVAErfZv0ksoxdYYcd1p9u
 7EOqNnmPVnSdIXV7t0AKMkTdGsAmLAbBrQOAupUBvaPZBCH0iIh4/84b0z6u3vUocP1oEOlJ
 PIV04dnXIuemr1YPf+nKFjw1ToeiGQTD7twsZR69xSobvnXofmNiWFVRQHj9agmfMCGcfWMs
 zDea5+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49RhagucTOBor2tvHKUfraKbb3eAxUGF/XMz
 8mZnzeNc9A5kekVjvTmx7KQU7gfUT54NZRHcHhjq0u4blIErcJnhkeiFy/6M3OAyZFqLYKcE
 x3J66itqu6oGKx7FvZ9mkBAGsYMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYjhyUt3RCw
 wag1hs46q4I9ixyEkZepyaG1Pfq0FWiGOBTp8alKHGz9ziYIkEApEvX7E0Mx7KGRxzkQNDs3
 xCdwcAe0/aGlrV+OaYpa1RINuaW8h3gQ+tL8IRg2nYr1+gqcYmQWZeYySjSveNgQElRyNdg3
 p496N3usvGpR+fbU8ExMgoOlxFb2qaRJZLFh6Maolvlrf3Qw1oVmuRiTuGixY8R3ry+ywp9x
 /cBBzRXcuOLktWu3he3Kqvyl9ye2mHV29ba3xxs+RGZC/7k0c29dXOSru40mOXZFdH//oUNy
 vdZyAOZil0wcqs6RKTkDGeNHkvy5k0JNbBBLA7f7y74ALqFKS40YU9W9NE9pdsM97j9tIRWe
 WEYgmPMXfWDfgq1wH9nAdSBABE7F0f1dXm1x3u4DLmgDoRAf/OLE9nQL9eCdeG9GTgT+uJ1p
 I8rd9dh5rFDkzBLvq9jYfQZHp/DzmWh0icZeQhs4pVsqI/r6EbJeiSbRL4kFV8mCwjJ8L1nn
 4ESKt14Lr9KpZiFvZiDh5xzx4MrpCzN0MlvQz9P/8mcXwsh3HdOcmV47Cgk8tZPmSx4C/5OV
 yS6ERmjo/4dhrG8b4REKQrJ2tKLGA69XR55euHHregQjmCRqVm/FCgNGW6f6IYYK+ZGa8Iph
 I/x92TheeYe27Z3w/X1AELb55mwiKCQcmoBhiLFvMN29umOU6Uiq/v2fWNtl7MOHKGQnVdo5
 ZEe0wWZtlCjTdnrLRf6FnMdoXH5mQ/k1Vf5jl7kEXKwYbO2haDIX17
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="42063248"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eu3d2bpmFRGe6lIT2/uzTKh+x+7uSTvY9+by+wK49IVfnGA/FpG0RFmiw6tf7ODc5UnVmxyFPKsKw4fPckivj3LCOu564Odwtamit3NcJgy8iHAgw0QitA6pjyuPYA8Qw0RPLWFIbLqv5NiiyXMwca4ezXIN18KchTa6KV/1/7Xj9TpcJWjmZ538wHFdgh5cxbeM2UABRIa6erOSsujRHbNyY/1f9dS6OXeB+gEu9l9mA4+999KdxezLhnI0BHlG2F0Pg9u5ycHhTAYcZ6cvJK593OqQrjbkjeuZHUDx4EidyrrE5b0In2jVn44WRzl7xmLOTlkEPC1h0EDc2BOQBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UwyYue/XhqLfsb2rqRAARfa6x/vmze08A9OfANytI5g=;
 b=em+XRa27kQZBPzF/kO2KzlZTx1K76oBJGlXrNoPKJ6A0G/A+qnd5ThmhV0aDV8+D7Qz/Vf7YmH0AOO0pbv2EA7X4Z0PIP9JqoOduyV/FwS6yNPPi+UYtUiL8HPPcX/6YNti6P4VQHQ6+4vgxsxDhRwLXkyOmPyxk/1+lXhVMbbY3gNDkCR+tOWZjlN1xt6Ho/iAFmyl9/J2pekEBXA9ONetA3kphWorkupbMtqptDl8h1iZpo6ZJeniBkCRFVXs6zMXxd0M/TPy+m4/B7jiMHOrCDbkogO/vpp+lakisyJbqtUFHgnVpmOkeEDFys7DfpvuelVKkvxzFQCdBWg6umA==
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=UwyYue/XhqLfsb2rqRAARfa6x/vmze08A9OfANytI5g=;
 b=JwGj4kzlXyu9mS9h8m4BqHSxtisGu16lf2P4AQa+4Vf8hZ44XF2NsQ8hqxiQBsUzpgEMm3gysU2QRAbHWgjBCSBlGll+5Rra3XDZXemw0oTyPfEfu1c+4oKrENmK0SmlyGINd7msTyxKl4V6jKKzJjq9B4IGnF/L65bDfx4K3P0=
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 1/2] x86/amd: split LFENCE dispatch serializing setup logic into helper
Date: Thu, 15 Apr 2021 16:47:30 +0200
Message-ID: <20210415144731.3356-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210415144731.3356-1-roger.pau@citrix.com>
References: <20210415144731.3356-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0034.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::22)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c9f4d596-5332-45fe-6375-08d9001d7c91
X-MS-TrafficTypeDiagnostic: DM5PR03MB2843:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2843EAC7709CA86FCF8CE45F8F4D9@DM5PR03MB2843.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3513;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: rHN73m3+DJp2fBe1TB3iF6vCRhrih70InOCOrLA6exbXz8hRwh1FltfpoZwyBkh4NTcOnulf4hsAAEwZUS42TG7i18iZPzO8ir+VhoGfHPdqGPGwBf6mBbbr89mS99xaX1t3OAzh3I3R+FfSGJOt6Kjt+gssXfbx7mEvPlbyb94iwwPvsxv0ZT5UezuxSNMlOH7FFHN8n5QU3ixlNtlv/usij77vfc2KpnFjvI8tnwGBjHMx2AuDwab4Thm7cK6fAV9xp6GcfBhsez8C+pLLOs8gg44Xby6GXX50UqsZZItyU5g6+STfpFGdcrKzQKAy707C3FHkTazp1F2PQsqH9H9ZIoMbxufYxqXSx4Rr7iV5ePMEMl9MvBX+Git+j8Ui3x8m8y4Dq0XjtijiT16DrngOSfG0ysuqirV22qEqtTCuar8RhtS7ZvVcUFeqj0O80aLbVYzTI8avAC28LZHdLVS6RwBukA/nyeU1ctOh6kK+lMiXaB95wJ5JZFtPhCiJmwcO8MLUkqZPeIfdtn9gN/5tf9JMO74AYrYQUR2FYcsDUga9qFBUq1t9TVGkHEJZvoR7ZaSunRYuvkp0QdvZWYO3DMTvXl+O3vjHrPV6Iuw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(366004)(376002)(39860400002)(136003)(956004)(478600001)(38100700002)(8676002)(6666004)(5660300002)(1076003)(8936002)(66946007)(2616005)(66476007)(66556008)(26005)(2906002)(6496006)(6916009)(6486002)(83380400001)(36756003)(4326008)(86362001)(316002)(54906003)(16526019)(186003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?MFV3YjNKVG14c0lDZlErZz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: c9f4d596-5332-45fe-6375-08d9001d7c91
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 14:48:09.4640
 (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: IoA1qmNjF0fG0R8JKbabjlhkNO2NGEV9Mq53HYwTeXkGmYWE0xCcYP+phEHhjr14CcqMMjyl0HKxExckm8d66A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2843
X-OriginatorOrg: citrix.com

Split the logic to attempt to setup LFENCE to be dispatch serializing
on AMD into a helper, so it can be shared with Hygon.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
Changes since v1:
 - Fix typo in commit message.
---
 xen/arch/x86/cpu/amd.c   | 62 ++++++++++++++++++++++------------------
 xen/arch/x86/cpu/cpu.h   |  1 +
 xen/arch/x86/cpu/hygon.c | 27 +----------------
 3 files changed, 36 insertions(+), 54 deletions(-)

diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index 8bc51bec10d..9c8dcd91eef 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -642,6 +642,38 @@ void early_init_amd(struct cpuinfo_x86 *c)
 	ctxt_switch_levelling(NULL);
 }
 
+void amd_init_lfence(struct cpuinfo_x86 *c)
+{
+	uint64_t value;
+
+	/*
+	 * Attempt to set lfence to be Dispatch Serialising.  This MSR almost
+	 * certainly isn't virtualised (and Xen at least will leak the real
+	 * value in but silently discard writes), as well as being per-core
+	 * rather than per-thread, so do a full safe read/write/readback cycle
+	 * in the worst case.
+	 */
+	if (rdmsr_safe(MSR_AMD64_DE_CFG, value))
+		/* Unable to read.  Assume the safer default. */
+		__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
+			    c->x86_capability);
+	else if (value & AMD64_DE_CFG_LFENCE_SERIALISE)
+		/* Already dispatch serialising. */
+		__set_bit(X86_FEATURE_LFENCE_DISPATCH,
+			  c->x86_capability);
+	else if (wrmsr_safe(MSR_AMD64_DE_CFG,
+			    value | AMD64_DE_CFG_LFENCE_SERIALISE) ||
+		 rdmsr_safe(MSR_AMD64_DE_CFG, value) ||
+		 !(value & AMD64_DE_CFG_LFENCE_SERIALISE))
+		/* Attempt to set failed.  Assume the safer default. */
+		__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
+			    c->x86_capability);
+	else
+		/* Successfully enabled! */
+		__set_bit(X86_FEATURE_LFENCE_DISPATCH,
+			  c->x86_capability);
+}
+
 static void init_amd(struct cpuinfo_x86 *c)
 {
 	u32 l, h;
@@ -686,37 +718,11 @@ static void init_amd(struct cpuinfo_x86 *c)
 	if (c == &boot_cpu_data && !cpu_has(c, X86_FEATURE_RSTR_FP_ERR_PTRS))
 		setup_force_cpu_cap(X86_BUG_FPU_PTRS);
 
-	/*
-	 * Attempt to set lfence to be Dispatch Serialising.  This MSR almost
-	 * certainly isn't virtualised (and Xen at least will leak the real
-	 * value in but silently discard writes), as well as being per-core
-	 * rather than per-thread, so do a full safe read/write/readback cycle
-	 * in the worst case.
-	 */
 	if (c->x86 == 0x0f || c->x86 == 0x11)
 		/* Always dispatch serialising on this hardare. */
 		__set_bit(X86_FEATURE_LFENCE_DISPATCH, c->x86_capability);
-	else /* Implicily "== 0x10 || >= 0x12" by being 64bit. */ {
-		if (rdmsr_safe(MSR_AMD64_DE_CFG, value))
-			/* Unable to read.  Assume the safer default. */
-			__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
-				    c->x86_capability);
-		else if (value & AMD64_DE_CFG_LFENCE_SERIALISE)
-			/* Already dispatch serialising. */
-			__set_bit(X86_FEATURE_LFENCE_DISPATCH,
-				  c->x86_capability);
-		else if (wrmsr_safe(MSR_AMD64_DE_CFG,
-				    value | AMD64_DE_CFG_LFENCE_SERIALISE) ||
-			 rdmsr_safe(MSR_AMD64_DE_CFG, value) ||
-			 !(value & AMD64_DE_CFG_LFENCE_SERIALISE))
-			/* Attempt to set failed.  Assume the safer default. */
-			__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
-				    c->x86_capability);
-		else
-			/* Successfully enabled! */
-			__set_bit(X86_FEATURE_LFENCE_DISPATCH,
-				  c->x86_capability);
-	}
+	else /* Implicily "== 0x10 || >= 0x12" by being 64bit. */
+		amd_init_lfence(c);
 
 	/*
 	 * If the user has explicitly chosen to disable Memory Disambiguation
diff --git a/xen/arch/x86/cpu/cpu.h b/xen/arch/x86/cpu/cpu.h
index 1992596d1b2..1ac3b2867a0 100644
--- a/xen/arch/x86/cpu/cpu.h
+++ b/xen/arch/x86/cpu/cpu.h
@@ -20,3 +20,4 @@ extern bool detect_extended_topology(struct cpuinfo_x86 *c);
 
 void early_init_amd(struct cpuinfo_x86 *c);
 void amd_log_freq(const struct cpuinfo_x86 *c);
+void amd_init_lfence(struct cpuinfo_x86 *c);
diff --git a/xen/arch/x86/cpu/hygon.c b/xen/arch/x86/cpu/hygon.c
index 46293f1f367..2272e1113f1 100644
--- a/xen/arch/x86/cpu/hygon.c
+++ b/xen/arch/x86/cpu/hygon.c
@@ -32,32 +32,7 @@ static void init_hygon(struct cpuinfo_x86 *c)
 {
 	unsigned long long value;
 
-	/*
-	 * Attempt to set lfence to be Dispatch Serialising.  This MSR almost
-	 * certainly isn't virtualised (and Xen at least will leak the real
-	 * value in but silently discard writes), as well as being per-core
-	 * rather than per-thread, so do a full safe read/write/readback cycle
-	 * in the worst case.
-	 */
-	if (rdmsr_safe(MSR_AMD64_DE_CFG, value))
-		/* Unable to read.  Assume the safer default. */
-		__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
-			    c->x86_capability);
-	else if (value & AMD64_DE_CFG_LFENCE_SERIALISE)
-		/* Already dispatch serialising. */
-		__set_bit(X86_FEATURE_LFENCE_DISPATCH,
-			  c->x86_capability);
-	else if (wrmsr_safe(MSR_AMD64_DE_CFG,
-			    value | AMD64_DE_CFG_LFENCE_SERIALISE) ||
-		 rdmsr_safe(MSR_AMD64_DE_CFG, value) ||
-		 !(value & AMD64_DE_CFG_LFENCE_SERIALISE))
-		/* Attempt to set failed.  Assume the safer default. */
-		__clear_bit(X86_FEATURE_LFENCE_DISPATCH,
-			    c->x86_capability);
-	else
-		/* Successfully enabled! */
-		__set_bit(X86_FEATURE_LFENCE_DISPATCH,
-			  c->x86_capability);
+	amd_init_lfence(c);
 
 	/*
 	 * If the user has explicitly chosen to disable Memory Disambiguation
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:48:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:48:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111329.212951 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3I7-00037X-6V; Thu, 15 Apr 2021 14:48:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111329.212951; Thu, 15 Apr 2021 14: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 1lX3I7-00037O-25; Thu, 15 Apr 2021 14:48:23 +0000
Received: by outflank-mailman (input) for mailman id 111329;
 Thu, 15 Apr 2021 14:48:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX3I5-00032q-MK
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:48:21 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ba634281-d9ce-4cc2-95b1-2ebe5457b840;
 Thu, 15 Apr 2021 14:48: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: ba634281-d9ce-4cc2-95b1-2ebe5457b840
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618498096;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=Kunq9PfgxSdHoMHI/h5eyL0p/6ZQDQ9CXx7r1toiMfM=;
  b=RpTca5FHx9WpZjxlLdlAE5XQJyhdj/5Xz2g94icGZ0DcXK8dD/0Sx8v6
   j2ya/9rNGI04zI2bZ1ngOjn2FdR2FWPpw6CgbKon0u/0TjT6VqfXkQZuH
   i4DG8vPDsGrZ4XBxseTcOc7cnurCYcojCU4Bxt4DaQ6rbVDTBY97T5Vna
   8=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: FEbPpeL8df1hy1rsFcLMO3YI3udxTCCFg6dhO9v9eOznpAVdz5FcHV4sl7P15zEZq8dR8UHZmA
 OvVgbiklyasegMrCVPZ0+x7GDO/3i8ggPe31C0tmhr6si9Z0ZKyR7z5d/tost+Drcc96iOTJt9
 be1hmZznwyNwE1ZwWa0N1tEu8vEhId4Uwpfk2GJYQyLL5nTvQmhgiHIrLMw2EKEDCj/5AdpJfy
 O5XTRqlP6jBL7uUuAUs+kgz5z3Q4stViB3ivKZOVQBmJsdCN5Z2K9FALYFxmGr70oXElkUqkhO
 leA=
X-SBRS: 5.2
X-MesageID: 42063254
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:tc1wfqgoMcpzAgN7FZ4RXlguL3BQXzxw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+csFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmup
 tIW5NVTOf9BV0St6rHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WdEIyywe3cGIzVuL5w/CZ
 aa+457vDKmY3sadYCWAXMCUujFqbTw5e/bSDQBAAMq7xTLsCOw5NfBYmKl9zo9cxcK+7ct9m
 DZjxf0j5/Dj9iXwgLRvlWjlqh+t8DmzrJ4damxo+w0DhmptQqyfoRmXNS5zUEIicWi8kwjnt
 WJgzpIBbUK11rrcmu4oQTg1mDbuV5EgRKSqi778AjeiPf0WS4gDI55jZ9ZGyGplXYIhs1206
 5AwguixvxqJC7H9R6Ng+TgZlVBk0q5pmcaiugDj3BTept2Us4vkaUvuGxSC5sOByT89cQOF/
 RvFtjV4LJsfUqddG2xhBgj/PWcGlAIWjuWSEkLvcKYlxBQgXBC1kMdgOgShG0J+p4RQ4RNjt
 60fphApfVrdIs7fKh9DOAOTY+cEWrWWy/BN2qUPBDOCLwHE2ilke+33JwFoMWRPLAYxpo7n5
 rMFHlCs3QpRk7oAcqSmLVW7xH2RnmnVziF8LAR27FJ/pnHAJb7OyyKT14j1+G6pe8EP8HdU/
 GvfL1MBfvOKnbvBJZp0wXyV4I6EwhcbOQl/vIAH36eqMPCLYPn8sbBduzIGbbrGTE4HkPza0
 FzHgTbFYFl1ASGS3X4iB/eVzfGYUrk5699F6Dc4qw2wIgJPYtcjxgNhT2Cl4S2AAwHlpZzUF
 p1IbvhnK/+j3Kx53z042JgPQcYKUpJ/rP6UTdvqRURO035NZYP0u/vNlx67T+iHFtSXsnWGA
 lQqxBc4qSsNaGdwigkFpaAKWKVj3waoVqQVJcCkqi/5cPoE6lITqoOaehUL0HmBhZ1kQFlpC
 NocwkfXHLSETvolOGYlpAOPfrecNN9mQ+vBsZRpRvkxAGhjPBqYkFecy+lUMaRjwprYzZPnF
 V+/5USh6e6lS+1JXEyh/k5N1NweH2aaYg2fDitVcFxoPTGaQtwRWCFiXihhxY/dnHD2m8Sim
 biRBfkMc3jMx54gDR1w6zq+FR7eiGhZEp2cGl9qpA4P3/BoGxP3eiCYbeT32OdZkAZ+PwUNC
 jIbFIpU0RT7uHy8CTQtCeJFH0gyJlrA/fUC647darPnlyqM4+FmMg9bohp1acgEOqrlOAFUe
 iSIVDIaBz5Dv4kwAyTqDIOPjJupHwtjPPv31nE4QGDrQsCKMuXBG4jYbcRZ+y4xSzDYd2j1Z
 1il9I7veeqKAzKG5e74JCSSwQGEw/ZpG69cvohpp9Vt58jrbcbJeiobRL4kFV8mCgkJMj6lE
 kiUL12zbDINIhoZdETcUtijy4UveXKCEMqtwDsa9VOBm0Fvjv+P9mT5aDPpqdqKkqdpBHoMV
 33yVwXw971Gw+C36UdEaQ+PCB/b1U98m1r+Kene5fLAAunM8FF81zSCA72TJZtDIyEE64XtB
 B0/pWhmPKWbTPx3ETohgRAS5g+hVqPcIeVGwKDGelB7ty8NxCtu8KRkbKOpQaybyC6ZUQejZ
 BCbmoKYK14+38fsLE=
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="42063254"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OL6HwFSEdUhn36uyypCEs90+eC/dHYiZx9cltDvjwN/dBSiUZAHYlyERN+G/jYAOYRTrh2LKi1ij3wwYSbHneArn48qpNCYLIJRgHwMclujQxAJjnM39np38qWbGTyzCtG7TQPkHHrg6chx8GS7glOjCFSRKyndbVnID1QoF2KUukRPZhC71Py1yOBdAfdNcFPdxN6JBRr7jldVhiuuAsoMgjA7ZYAMiSpbmdY2fW5kwQ0QAbos+palp2YwOam2EdH7gk98v230846gef7nFgvVnXURM3v58HJmU8mMzSgpCg4s/Q7tZQzqrvFGhJG8DErPRYu+MDUpRGg52q0tnJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JOwBr5KtW140gDg1QrHVd6cRRXtjGL3eSjcb7YdoXo4=;
 b=eg92DNrqdeaqo/mVLYLavp2KI7ptwOw8/4MYC2Su+8kQnSEk/Q571aaKDz8y9ZDlH7tJJiaNE5ZjYvaHMP7a/wifhVnAl/47MHOQzHyLWkZxjjnzGP/Tb4UjIX6uAM9HlvxqbzcldUqzRNg2nQ33eOaGaGUdsEDsUd6y8uE1uwX9JEw8eT8cpHymGV3LJ633jowmBjdkO2492tZm3c4nt0BaN927r3j/4XDsKIwVUo8Iw4VrS1/IMCbGq61MiqY3wQmArNNzdceP0UfYEJ/FCjPwi0bp3nD4fVWs3QFdqV4JY+99BBBM8+MJHgNyJSQUdE+kco3dP7t+PwsS72rr+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=JOwBr5KtW140gDg1QrHVd6cRRXtjGL3eSjcb7YdoXo4=;
 b=m1CZ4Wuvv8pZfsX7eraohBhTXUZWpiBmZSCExXc2DeS2KoX7MJN2vvt716pWtUMgQrt2n2upxOQNzmt9X6GE+SHStJUV/iU7rWIJDu838oBlbGf42CslOryr4ZtYzKPJW1W6rf3C4mbqNFAVzGslVXGsebXrz97iCumzS5zM9Oo=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Roger Pau Monne <roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: [PATCH v2 2/2] x86/cpuid: support LFENCE always serializing CPUID bit
Date: Thu, 15 Apr 2021 16:47:31 +0200
Message-ID: <20210415144731.3356-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210415144731.3356-1-roger.pau@citrix.com>
References: <20210415144731.3356-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0122.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5316dbc0-40a7-4017-02e3-08d9001d7f8d
X-MS-TrafficTypeDiagnostic: DM6PR03MB5273:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5273C6D876E51F4DC6521A038F4D9@DM6PR03MB5273.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5236;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: VlxIf4Ami62kJKjfLvVpn/OvsqpY17gIJcFykPHUsUm4QuPD7r3kaZGKnrEgquO8pgWY7f7/Qxqtz8UTMuefHKiBjKoFa2MzXiL98rubL3WTiSlNQUaU7vP2PeMJmnm72NNww0X1C/zJlHyO+pyM6U7QQekTncUqFmeZ13xFUAQzD5ivTZ030bkjoiNLn8hWkbMa5yvZjD38J1DCrp5173KrU5jsMk7n/USgEQcGugRLVHPDjMOpCjswRElnTjDruiCvbjenDwKHKHxklcGh4eKF95SCCS7xy279KVF5Fti3iX98ZgfjapI24JJw2YxAGUNC6FO1s9hGgZBkfIGSFbg+8QqdJvpIdvR5d3ro5w5lSFd2d1Y2fweabMj/FqTCG/QZk9DC82kO+3pLU6wyj+yEU/dllzWilnPne1YDK6iw3GPn+Y+TJQ/MxYsiGHOyjtD9IC5Dlle4+B96y4QFgRzIrRxn4Cuti+n2sCrIKIRXA6Uatxz1kJ1Ohapi4RLKgJQ2TIs+Ce+kH+30EjpNEJlgt1+5hnyKT0R/EzMH4JCmMAHds6/48Pnwa4RGvnVil6tbxENusc0wD2XEbfvg+2H5GEHVax0UtHo/+ZKs2I0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39860400002)(136003)(366004)(376002)(346002)(66556008)(66476007)(4326008)(36756003)(6666004)(66946007)(478600001)(54906003)(38100700002)(5660300002)(1076003)(316002)(83380400001)(2616005)(6486002)(186003)(8676002)(6916009)(86362001)(16526019)(26005)(8936002)(107886003)(2906002)(956004)(6496006);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?N09vV0JvTFNxa01qODB2dz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 5316dbc0-40a7-4017-02e3-08d9001d7f8d
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 14:48:14.4894
 (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: 6iZpcfzhz5IGQSRCN/MXPHX0xucbqDzNUwyOs+uXxiKKb3+mBoM1ifIL92UiDJ2z/qD/74mlt7WZsrx5n9+Cvw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5273
X-OriginatorOrg: citrix.com

AMD Milan (Zen3) CPUs have an LFENCE Always Serializing CPUID bit in
leaf 80000021.eax. Previous AMD versions used to have a user settable
bit in DE_CFG MSR to select whether LFENCE was dispatch serializing,
which Xen always attempts to set. The forcefully always on setting is
due to the addition of SEV-SNP so that a VMM cannot break the
confidentiality of a guest.

In order to support this new CPUID bit move the LFENCE_DISPATCH
synthetic CPUID bit to map the hardware bit (leaving a hole in the
synthetic range) and either rely on the bit already being set by the
native CPUID output, or attempt to fake it in Xen by modifying the
DE_CFG MSR. This requires adding one more entry to the featureset to
support leaf 80000021.eax.

The bit is exposed to guests by default if the underlying hardware
supports leaf 80000021, as a way to signal that LFENCE is always
serializing. Hardware that doesn't have the leaf might also get the
bit set because Xen has performed the necessary arrangements, but
that's not yet exposed to guests. Note that Xen doesn't allow guests
to change the DE_CFG value, so once set by Xen LFENCE will always be
serializing.

Note that the access to DE_CFG by guests is left as-is: reads will
unconditionally return LFENCE_SERIALISE bit set, while writes are
silently dropped.

Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Rename to lfence+.
 - Add feature to libxl_cpuid.c.
 - Reword commit message.
---
Note this doesn't yet expose the bit on hardware that doesn't support
leaf 80000021. It's still TBD whether we want to hardcode this support
manually, or instead rely on a more general approach like the one
suggested by the shrink max CPUID leaf patch from Jan.
---
 tools/libs/light/libxl_cpuid.c              |  2 ++
 tools/misc/xen-cpuid.c                      |  6 ++++
 xen/arch/x86/cpu/amd.c                      |  7 ++++
 xen/arch/x86/cpu/common.c                   |  3 ++
 xen/include/asm-x86/cpufeatures.h           |  2 +-
 xen/include/public/arch-x86/cpufeatureset.h |  3 ++
 xen/include/xen/lib/x86/cpuid.h             | 37 ++++++++++++++++++++-
 7 files changed, 58 insertions(+), 2 deletions(-)

diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index aee28b0430d..d3ab66b9a71 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -284,6 +284,8 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str)
         {"svm_decode",   0x8000000a, NA, CPUID_REG_EDX,  7,  1},
         {"svm_pausefilt",0x8000000a, NA, CPUID_REG_EDX, 10,  1},
 
+        {"lfence+",      0x80000021, NA, CPUID_REG_EAX,  2,  1},
+
         {"maxhvleaf",    0x40000000, NA, CPUID_REG_EAX,  0,  8},
 
         {NULL, 0, NA, CPUID_REG_INV, 0, 0}
diff --git a/tools/misc/xen-cpuid.c b/tools/misc/xen-cpuid.c
index 628e8f5aa25..9a47237f4a8 100644
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -179,6 +179,11 @@ static const char *const str_7a1[32] =
     [ 4] = "avx-vnni",      [ 5] = "avx512-bf16",
 };
 
+static const char *const str_e21a[32] =
+{
+    [ 2] = "lfence+",
+};
+
 static const struct {
     const char *name;
     const char *abbr;
@@ -196,6 +201,7 @@ static const struct {
     { "0x80000008.ebx",   "e8b", str_e8b },
     { "0x00000007:0.edx", "7d0", str_7d0 },
     { "0x00000007:1.eax", "7a1", str_7a1 },
+    { "0x80000021.eax",  "e21a", str_e21a },
 };
 
 #define COL_ALIGN "18"
diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index 9c8dcd91eef..35f22c24762 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -646,6 +646,13 @@ void amd_init_lfence(struct cpuinfo_x86 *c)
 {
 	uint64_t value;
 
+	/*
+	 * Some hardware has LFENCE dispatch serializing always enabled,
+	 * nothing to do on that case.
+	 */
+	if (test_bit(X86_FEATURE_LFENCE_DISPATCH, c->x86_capability))
+		return;
+
 	/*
 	 * Attempt to set lfence to be Dispatch Serialising.  This MSR almost
 	 * certainly isn't virtualised (and Xen at least will leak the real
diff --git a/xen/arch/x86/cpu/common.c b/xen/arch/x86/cpu/common.c
index e5c3caf41d5..0eb364f8a65 100644
--- a/xen/arch/x86/cpu/common.c
+++ b/xen/arch/x86/cpu/common.c
@@ -412,6 +412,9 @@ static void generic_identify(struct cpuinfo_x86 *c)
 	if (c->extended_cpuid_level >= 0x80000008)
 		c->x86_capability[cpufeat_word(X86_FEATURE_CLZERO)]
 			= cpuid_ebx(0x80000008);
+	if (c->extended_cpuid_level >= 0x80000021)
+		c->x86_capability[cpufeat_word(X86_FEATURE_LFENCE_DISPATCH)]
+			= cpuid_eax(0x80000021);
 
 	/* Intel-defined flags: level 0x00000007 */
 	if ( c->cpuid_level >= 0x00000007 ) {
diff --git a/xen/include/asm-x86/cpufeatures.h b/xen/include/asm-x86/cpufeatures.h
index d7e42d9bb6a..6c8f432aee4 100644
--- a/xen/include/asm-x86/cpufeatures.h
+++ b/xen/include/asm-x86/cpufeatures.h
@@ -24,7 +24,7 @@ XEN_CPUFEATURE(APERFMPERF,        X86_SYNTH( 8)) /* APERFMPERF */
 XEN_CPUFEATURE(MFENCE_RDTSC,      X86_SYNTH( 9)) /* MFENCE synchronizes RDTSC */
 XEN_CPUFEATURE(XEN_SMEP,          X86_SYNTH(10)) /* SMEP gets used by Xen itself */
 XEN_CPUFEATURE(XEN_SMAP,          X86_SYNTH(11)) /* SMAP gets used by Xen itself */
-XEN_CPUFEATURE(LFENCE_DISPATCH,   X86_SYNTH(12)) /* lfence set as Dispatch Serialising */
+/* Bit 12 - unused. */
 XEN_CPUFEATURE(IND_THUNK_LFENCE,  X86_SYNTH(13)) /* Use IND_THUNK_LFENCE */
 XEN_CPUFEATURE(IND_THUNK_JMP,     X86_SYNTH(14)) /* Use IND_THUNK_JMP */
 XEN_CPUFEATURE(SC_BRANCH_HARDEN,  X86_SYNTH(15)) /* Conditional Branch Hardening */
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index 42bc8d4279d..732990f2cc0 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -278,6 +278,9 @@ XEN_CPUFEATURE(SSBD,          9*32+31) /*A  MSR_SPEC_CTRL.SSBD available */
 XEN_CPUFEATURE(AVX_VNNI,     10*32+ 4) /*A  AVX-VNNI Instructions */
 XEN_CPUFEATURE(AVX512_BF16,  10*32+ 5) /*A  AVX512 BFloat16 Instructions */
 
+/* AMD-defined CPU features, CPUID level 0x80000021.eax, word 11 */
+XEN_CPUFEATURE(LFENCE_DISPATCH,    11*32+ 2) /*A  LFENCE always serializing */
+
 #endif /* XEN_CPUFEATURE */
 
 /* Clean up from a default include.  Close the enum (for C). */
diff --git a/xen/include/xen/lib/x86/cpuid.h b/xen/include/xen/lib/x86/cpuid.h
index f4ef8a9f2f0..a4d254ea96e 100644
--- a/xen/include/xen/lib/x86/cpuid.h
+++ b/xen/include/xen/lib/x86/cpuid.h
@@ -15,6 +15,7 @@
 #define FEATURESET_e8b    8 /* 0x80000008.ebx      */
 #define FEATURESET_7d0    9 /* 0x00000007:0.edx    */
 #define FEATURESET_7a1   10 /* 0x00000007:1.eax    */
+#define FEATURESET_e21a  11 /* 0x80000021.eax      */
 
 struct cpuid_leaf
 {
@@ -84,7 +85,7 @@ const char *x86_cpuid_vendor_to_str(unsigned int vendor);
 #define CPUID_GUEST_NR_TOPO       (1u + 1)
 #define CPUID_GUEST_NR_XSTATE     (62u + 1)
 #define CPUID_GUEST_NR_EXTD_INTEL (0x8u + 1)
-#define CPUID_GUEST_NR_EXTD_AMD   (0x1cu + 1)
+#define CPUID_GUEST_NR_EXTD_AMD   (0x21u + 1)
 #define CPUID_GUEST_NR_EXTD       MAX(CPUID_GUEST_NR_EXTD_INTEL, \
                                       CPUID_GUEST_NR_EXTD_AMD)
 
@@ -264,6 +265,38 @@ struct cpuid_policy
             };
             uint32_t nc:8, :4, apic_id_size:4, :16;
             uint32_t /* d */:32;
+
+            uint64_t :64, :64; /* Leaf 0x80000009. */
+            uint64_t :64, :64; /* Leaf 0x8000000a - SVM rev and features. */
+            uint64_t :64, :64; /* Leaf 0x8000000b. */
+            uint64_t :64, :64; /* Leaf 0x8000000c. */
+            uint64_t :64, :64; /* Leaf 0x8000000d. */
+            uint64_t :64, :64; /* Leaf 0x8000000e. */
+            uint64_t :64, :64; /* Leaf 0x8000000f. */
+            uint64_t :64, :64; /* Leaf 0x80000010. */
+            uint64_t :64, :64; /* Leaf 0x80000011. */
+            uint64_t :64, :64; /* Leaf 0x80000012. */
+            uint64_t :64, :64; /* Leaf 0x80000013. */
+            uint64_t :64, :64; /* Leaf 0x80000014. */
+            uint64_t :64, :64; /* Leaf 0x80000015. */
+            uint64_t :64, :64; /* Leaf 0x80000016. */
+            uint64_t :64, :64; /* Leaf 0x80000017. */
+            uint64_t :64, :64; /* Leaf 0x80000018. */
+            uint64_t :64, :64; /* Leaf 0x80000019 - TLB 1GB Identifiers. */
+            uint64_t :64, :64; /* Leaf 0x8000001a - Performance related info. */
+            uint64_t :64, :64; /* Leaf 0x8000001b - IBS feature information. */
+            uint64_t :64, :64; /* Leaf 0x8000001c. */
+            uint64_t :64, :64; /* Leaf 0x8000001d - Cache properties. */
+            uint64_t :64, :64; /* Leaf 0x8000001e - Extd APIC/Core/Node IDs. */
+            uint64_t :64, :64; /* Leaf 0x8000001f - AMD Secure Encryption. */
+            uint64_t :64, :64; /* Leaf 0x80000020 - Platform QoS. */
+
+            /* Leaf 0x80000021 - Extended Feature 2 */
+            union {
+                uint32_t e21a;
+                struct { DECL_BITFIELD(e21a); };
+            };
+            uint32_t /* b */:32, /* c */:32, /* d */:32;
         };
     } extd;
 
@@ -293,6 +326,7 @@ static inline void cpuid_policy_to_featureset(
     fs[FEATURESET_e8b] = p->extd.e8b;
     fs[FEATURESET_7d0] = p->feat._7d0;
     fs[FEATURESET_7a1] = p->feat._7a1;
+    fs[FEATURESET_e21a] = p->extd.e21a;
 }
 
 /* Fill in a CPUID policy from a featureset bitmap. */
@@ -310,6 +344,7 @@ static inline void cpuid_featureset_to_policy(
     p->extd.e8b   = fs[FEATURESET_e8b];
     p->feat._7d0  = fs[FEATURESET_7d0];
     p->feat._7a1  = fs[FEATURESET_7a1];
+    p->extd.e21a  = fs[FEATURESET_e21a];
 }
 
 static inline uint64_t cpuid_policy_xcr0_max(const struct cpuid_policy *p)
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:54:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111342.212962 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3OI-0004DG-UW; Thu, 15 Apr 2021 14:54:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111342.212962; Thu, 15 Apr 2021 14:54: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 1lX3OI-0004D9-RH; Thu, 15 Apr 2021 14:54:46 +0000
Received: by outflank-mailman (input) for mailman id 111342;
 Thu, 15 Apr 2021 14:54: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 1lX3OH-0004D1-EV; Thu, 15 Apr 2021 14:54: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 1lX3OH-0001zp-Aj; Thu, 15 Apr 2021 14:54: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 1lX3OH-000800-2p; Thu, 15 Apr 2021 14:54:45 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lX3OH-0002HI-2L; Thu, 15 Apr 2021 14:54: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=X7fO4z19kTIjrSCdZj5hTcQQvzwbVT1ZUBj2ei0g6lM=; b=BeqmYE/mF+GOvArO0/a4ANXsyC
	KOEZDhkTjHZG2KT78oSxWgJ/6hfJsBhMShx9Teu2aG7HujoMLAauRHt9wHt0mmhq0GotlPb0Qo9ev
	mHFVQWH8gSzRWbeHIzlB6ypbDhpZFwndMwZ7KcvGPLH4yFYvD11aXJ2HtnSglo+dxZjQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161167-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161167: 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=3e9460ec93341fa6a80ecf99832aa5d9975339c9
X-Osstest-Versions-That:
    xen=ed3ea7e95b0d94cc92a0fcf6c57e784ddfb24c97
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 14:54:45 +0000

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

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                  3e9460ec93341fa6a80ecf99832aa5d9975339c9
baseline version:
 xen                  ed3ea7e95b0d94cc92a0fcf6c57e784ddfb24c97

Last test of basis   161150  2021-04-15 01:01:32 Z    0 days
Testing same since   161167  2021-04-15 12:01:32 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
   ed3ea7e95b..3e9460ec93  3e9460ec93341fa6a80ecf99832aa5d9975339c9 -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 14:55:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 14:55:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111347.212978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3PM-0004NN-99; Thu, 15 Apr 2021 14:55:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111347.212978; Thu, 15 Apr 2021 14:55: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 1lX3PM-0004NG-63; Thu, 15 Apr 2021 14:55:52 +0000
Received: by outflank-mailman (input) for mailman id 111347;
 Thu, 15 Apr 2021 14:55: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 1lX3PK-0004NA-UW
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 14:55: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 1lX3PJ-00020U-UP; Thu, 15 Apr 2021 14:55:49 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX3PJ-0000Vy-Ln; Thu, 15 Apr 2021 14:55: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=g0oeXqtScPDkBsnqkFi22FqfWRL9wdHvI2x2GPtJMJM=; b=ZwA4k6vyILnRixKnG44D9mTQBv
	ZSHH2W2UI+gT6jwgozM+FWa+xZCHqYjTNVdUAB2bmSnaADbxX7yMwX4ffHDHv2LfPxo0ZIeIkjsM4
	glll/8gCylRRbU5ZQOQ5nVdHi+QXZ+E6JKOYfmeR5HClLwuF/gall+lS77u7mISNXyRw=;
Subject: Re: [PATCH v3 12/15] unxz: replace INIT{,DATA} and STATIC
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2db91183-a7de-0c43-2fef-feb3523ed19b@suse.com>
 <4e0a0db2-db34-a738-2f5e-1d5cd2c37e19@suse.com>
 <c52c9670-d87e-79f9-0104-e6e074419c31@xen.org>
 <a9adf993-0f2d-acb1-b671-7b8c3b15b4d8@suse.com>
 <eaf819a8-985f-d33f-902d-58320c99a8d8@xen.org>
 <1a3f4d72-d57a-dde3-fb46-c91508f09b2a@suse.com>
 <3642f590-e3b9-ce65-7dce-04681dbfb02f@xen.org>
 <a76656e4-1b19-df2f-aba0-e7b26b3ab968@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <ffbe985e-c8a7-331c-cb6d-6f4621b5c71c@xen.org>
Date: Thu, 15 Apr 2021 15:55:47 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <a76656e4-1b19-df2f-aba0-e7b26b3ab968@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 15/04/2021 15:28, Jan Beulich wrote:
> On 15.04.2021 16:24, Julien Grall wrote:
>>
>>
>> On 15/04/2021 15:22, Jan Beulich wrote:
>>> On 15.04.2021 16:18, Julien Grall wrote:
>>>>
>>>>
>>>> On 15/04/2021 15:16, Jan Beulich wrote:
>>>>> On 15.04.2021 13:58, Julien Grall wrote:
>>>>>> On 26/01/2021 09:52, Jan Beulich wrote:
>>>>>>> --- a/xen/common/decompress.h
>>>>>>> +++ b/xen/common/decompress.h
>>>>>>> @@ -9,7 +9,6 @@
>>>>>>>      
>>>>>>>      #define STATIC static
>>>>>>>      #define INIT __init
>>>>>>> -#define INITDATA __initdata
>>>>>>>      
>>>>>>>      #define malloc xmalloc_bytes
>>>>>>>      #define free xfree
>>>>>>> @@ -21,7 +20,6 @@
>>>>>>>      
>>>>>>>      #define STATIC static
>>>>>>>      #define INIT
>>>>>>> -#define INITDATA
>>>>>>
>>>>>> Shouldn't the two changes be part of patch #14?
>>>>>
>>>>> One could do it that way, sure, but the last uses are gone here,
>>>>> and hence I wanted to get rid of this one item right away.
>>>>
>>>> AFAICT, the same is true for STATIC and INIT. So it doesn't sense to not
>>>> be consistent in the way you treat them.
>>>
>>> No, further uses of STATIC and INIT get dropped by later patches.
>>
>> I think you misundertood my comment. What I meant is you drop INIT in
>> patch #14 when the last caller was dropped in a previous patch.
> 
> Now this and some other of your comments are getting really nitpicky.

You misundertood my question, so I was clarifying what I meant.

> The end result is the same. I can certainly move removals around
> further, but I think I ought to have some leeway on how exactly I
> achieve an identical end result. Things would be different, I agree,
> if the end result was not suitably consistent.

As I mentionned in patch #14, this is not very different from requesting 
to reshuffle the code. I find a bit surprising you are complaining about 
this...

I guess I could have add NIT in front to make clearer this was only a 
suggestion.

 From your answer, I am assuming this is a no which is fair:

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 15:27:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 15:27:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111355.212990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX3tk-0007IS-Vx; Thu, 15 Apr 2021 15:27:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111355.212990; Thu, 15 Apr 2021 15: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 1lX3tk-0007IL-SR; Thu, 15 Apr 2021 15:27:16 +0000
Received: by outflank-mailman (input) for mailman id 111355;
 Thu, 15 Apr 2021 15:27:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LGOb=JM=gmail.com=charles.fg@srs-us1.protection.inumbo.net>)
 id 1lX3ti-0007IG-S2
 for xen-devel@lists.xen.org; Thu, 15 Apr 2021 15:27:14 +0000
Received: from mail-wr1-x433.google.com (unknown [2a00:1450:4864:20::433])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id be441f65-7826-4946-8fc6-0c5d6491afaa;
 Thu, 15 Apr 2021 15:27:13 +0000 (UTC)
Received: by mail-wr1-x433.google.com with SMTP id h4so14680065wrt.12
 for <xen-devel@lists.xen.org>; Thu, 15 Apr 2021 08:27: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: be441f65-7826-4946-8fc6-0c5d6491afaa
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=2i7ATkMG7IFwB9WeGIbn7By6DeWuN11jgSSqiHd955k=;
        b=nhqECUeIjHxCoVf+FjzFiv75yMIo2Ew6mMBhXMdmZfu3kwzr940PTzgc7qdslOduZ8
         zlp4ov5XnsbTpPhikaTINZ/AJftYk8hG54J8rwZhwO0DEIgYRbPzgHS/h4xBrTdasCMJ
         KZjSbQ8nAgnJTtArPpEvekBEmboB4o50bxjD2jwHSUe6bDbafp19R1Dd3j3G3I6kpQCQ
         CACdyhXE2HTSvBc3HekX3SdwnZkt04K1S9KgusnX9G6MzekSVjZRvtggFLW3IckNvcYE
         gFev1EPyKdiVrOicOGdJhxFvLKpHwia5ofVw9O/2Ivv3N9DriRGn9C6QPhPpudT+3m5z
         +OfQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=2i7ATkMG7IFwB9WeGIbn7By6DeWuN11jgSSqiHd955k=;
        b=c0+2/TGl2cPduY/OKBNZekYgvVm2fs+uLHiN2Cvv6R9BUND9hcuLDTUCLpnzO3MfAq
         rrM4Lgxc9hODe6uLGdlOsBOso56JFa1TQvdETBb9ki1QeYrdXKERfmYM6O9TjsDCeh/P
         J9HqdILokObAmIwqw8x+lU33gMh5OKrYuU1UfWyGDvsrJBzjQQ+h7PznJgG/fKZVhWXn
         E/1UZbJeUOD1IDMNjWdvx1sPsxbP1FZoRLc8hPPjJiedl/20ChPc5ixG2PAUv86aaQJG
         HQGguA/6rcFHrN5NHwgpsEno+DaweD6XaYUJqhUQRaG+qQfr87anUJxa0riemaECBdsF
         jvaw==
X-Gm-Message-State: AOAM533bNk8ymfI6/LbLytXhp/ag1Bf3RICPFvw36xoOokWVpf9LYNLl
	CsZmp7wfD4YJ/zmKQFibxCvLOXcRA3/r13zKogo=
X-Google-Smtp-Source: ABdhPJxpEmHpgA6Og6ZoYis5brH0ytDZPhaPB8iUUmERHYtn+Ruyyn6nYBnFOm6QtHTfCBpN0d1nHSEd2JxbowLUAxE=
X-Received: by 2002:a5d:4851:: with SMTP id n17mr4167550wrs.215.1618500432785;
 Thu, 15 Apr 2021 08:27:12 -0700 (PDT)
MIME-Version: 1.0
References: <CAAQRGoD4yEEhiQk8LkKuOU_F2As3BsichHNY_ijoiVWwd3JZPw@mail.gmail.com>
 <e8c69e6e-e600-7f78-fb66-eddec17d618a@suse.com>
In-Reply-To: <e8c69e6e-e600-7f78-fb66-eddec17d618a@suse.com>
From: =?UTF-8?Q?Charles_Gon=C3=A7alves?= <charles.fg@gmail.com>
Date: Thu, 15 Apr 2021 16:26:36 +0100
Message-ID: <CAAQRGoAyxTCOGTnoapqnRG__xmpoCM+2RjJEmeB2CnG2-WX3JQ@mail.gmail.com>
Subject: Re: Failed to enable debug messages in xen 4.13
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="0000000000005d73b005c0047f5f"

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

Thanks, @Jan and  @Andrew


`make -C xen menuconfig` helped a lot ....
And indeed there a typo in the grub line

It's working now!

Thanks for helping with this question!




Atenciosamente,
*Charles Ferreira Gon=C3=A7alves *




On Thu, Apr 15, 2021 at 3:01 PM Jan Beulich <jbeulich@suse.com> wrote:

> On 15.04.2021 15:55, Charles Gon=C3=A7alves wrote:
> > I've enabled the log_lvl=3Dall guest_loglvl=3Dall,
>
> The first one is mis-spelled and needs to be "loglvl=3D".
>
> > tried the xl debug-key +,
>
> If this didn't help, did you perhaps not do a debug build of Xen?
> Debug messages get completely compiled out of release builds.
>
> > configured the build with
> > ./configure --enable-debug
>
> This, in any event, has an effect on the tool stack build only.
> The hypervisor build gets configured via kconfig, with the settings
> tracked in xen/.config.
>
> Jan
>

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

<div dir=3D"ltr">Thanks, @Jan and=C2=A0

@Andrew=20

<div><br></div><div><br></div><div>`make -C xen menuconfig` helped a lot ..=
..</div><div>And indeed there a typo in the grub line</div><div><br></div><=
div>It&#39;s working now!</div><div><br></div><div>Thanks for helping with =
this question!</div><div><br></div><div><br></div><div><br clear=3D"all"><d=
iv><div dir=3D"ltr" class=3D"gmail_signature" data-smartmail=3D"gmail_signa=
ture"><div dir=3D"ltr"><div><br></div><div>Atenciosamente,</div><b>Charles =
Ferreira Gon=C3=A7alves </b><br><font color=3D"#666666"><br></font><font co=
lor=3D"#666666" size=3D"1"><br></font></div></div></div><br></div></div><br=
><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, A=
pr 15, 2021 at 3:01 PM Jan Beulich &lt;<a href=3D"mailto:jbeulich@suse.com"=
>jbeulich@suse.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote=
" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);=
padding-left:1ex">On 15.04.2021 15:55, Charles Gon=C3=A7alves wrote:<br>
&gt; I&#39;ve enabled the log_lvl=3Dall guest_loglvl=3Dall,<br>
<br>
The first one is mis-spelled and needs to be &quot;loglvl=3D&quot;.<br>
<br>
&gt; tried the xl debug-key +,<br>
<br>
If this didn&#39;t help, did you perhaps not do a debug build of Xen?<br>
Debug messages get completely compiled out of release builds.<br>
<br>
&gt; configured the build with<br>
&gt; ./configure --enable-debug<br>
<br>
This, in any event, has an effect on the tool stack build only.<br>
The hypervisor build gets configured via kconfig, with the settings<br>
tracked in xen/.config.<br>
<br>
Jan<br>
</blockquote></div>

--0000000000005d73b005c0047f5f--


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 15:59:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 15:59:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111381.213020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4Oq-0001yo-T2; Thu, 15 Apr 2021 15:59:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111381.213020; Thu, 15 Apr 2021 15:59: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 1lX4Oq-0001yh-PF; Thu, 15 Apr 2021 15:59:24 +0000
Received: by outflank-mailman (input) for mailman id 111381;
 Thu, 15 Apr 2021 15:59:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EEd9=JM=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lX4Op-0001yc-ME
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 15:59:23 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ffbe45f5-159c-409b-9c96-d90ce670d948;
 Thu, 15 Apr 2021 15:59:22 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lX4Ol-0008Kk-BQ; Thu, 15 Apr 2021 15:59: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: ffbe45f5-159c-409b-9c96-d90ce670d948
Date: Thu, 15 Apr 2021 16:59:19 +0100
From: Tim Deegan <tim@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [PATCH] x86/shadow: adjust callback arrays
Message-ID: <YHhi19OqHN2cqMBA@deinos.phlegethon.org>
References: <621aa6f6-d7f8-25eb-9aeb-f181a9cb3bbc@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <621aa6f6-d7f8-25eb-9aeb-f181a9cb3bbc@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 12:42 +0200 on 12 Apr (1618231332), Jan Beulich wrote:
> Some of them have entries with stale comments. Rather than correcting
> these comments, re-arrange how these arrays get populated, shrinking
> their sizes at the same time (by omitting trailing NULL entries: Use
> dedicated element initializers, serving the purpose of what the
> comments did so far. This then also makes these arrays independent of
> the actual ordering of the individual SH_type_*.
> 
> While tightening respective ASSERT()s in hash_{vcpu,domain}_foreach(),
> also tighten related ones in shadow_hash_{insert,delete}().
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Looks good, but please leave the arrays at full size.  With the full
array, a bug could lead to an assertion failure or NULL deref; with
a short array it could mean following a bogus funtion pointer.

With that change, Acked-by: Tim Deegan <tim@xen.org>

Cheers,

Tim.

> --- a/xen/arch/x86/mm/shadow/common.c
> +++ b/xen/arch/x86/mm/shadow/common.c
> @@ -1565,7 +1565,7 @@ void shadow_hash_insert(struct domain *d
>  
>      ASSERT(paging_locked_by_me(d));
>      ASSERT(d->arch.paging.shadow.hash_table);
> -    ASSERT(t);
> +    ASSERT(t >= SH_type_min_shadow && t <= SH_type_max_shadow);
>  
>      sh_hash_audit(d);
>  
> @@ -1590,7 +1590,7 @@ void shadow_hash_delete(struct domain *d
>  
>      ASSERT(paging_locked_by_me(d));
>      ASSERT(d->arch.paging.shadow.hash_table);
> -    ASSERT(t);
> +    ASSERT(t >= SH_type_min_shadow && t <= SH_type_max_shadow);
>  
>      sh_hash_audit(d);
>  
> @@ -1668,7 +1668,7 @@ static void hash_vcpu_foreach(struct vcp
>          {
>              if ( callback_mask & (1 << x->u.sh.type) )
>              {
> -                ASSERT(x->u.sh.type < SH_type_unused);
> +                ASSERT(x->u.sh.type <= SH_type_max_shadow);
>                  ASSERT(callbacks[x->u.sh.type] != NULL);
>                  done = callbacks[x->u.sh.type](v, page_to_mfn(x),
>                                                 callback_mfn);
> @@ -1715,7 +1715,7 @@ static void hash_domain_foreach(struct d
>          {
>              if ( callback_mask & (1 << x->u.sh.type) )
>              {
> -                ASSERT(x->u.sh.type < SH_type_unused);
> +                ASSERT(x->u.sh.type <= SH_type_max_shadow);
>                  ASSERT(callbacks[x->u.sh.type] != NULL);
>                  done = callbacks[x->u.sh.type](d, page_to_mfn(x),
>                                                 callback_mfn);
> @@ -1819,26 +1819,16 @@ int sh_remove_write_access(struct domain
>                             unsigned long fault_addr)
>  {
>      /* Dispatch table for getting per-type functions */
> -    static const hash_domain_callback_t callbacks[SH_type_unused] = {
> -        NULL, /* none    */
> +    static const hash_domain_callback_t callbacks[] = {
>  #ifdef CONFIG_HVM
> -        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 2), /* l1_32   */
> -        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 2), /* fl1_32  */
> -        NULL, /* l2_32   */
> -        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 3), /* l1_pae  */
> -        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 3), /* fl1_pae */
> -        NULL, /* l2_pae  */
> +        [SH_type_l1_32_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 2),
> +        [SH_type_fl1_32_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 2),
> +        [SH_type_l1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 3),
> +        [SH_type_fl1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 3),
>  #endif
> -        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 4), /* l1_64   */
> -        SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 4), /* fl1_64  */
> -        NULL, /* l2_64   */
> -        NULL, /* l2h_64  */
> -        NULL, /* l3_64   */
> -        NULL, /* l4_64   */
> -        NULL, /* p2m     */
> -        NULL  /* unused  */
> +        [SH_type_l1_64_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 4),
> +        [SH_type_fl1_64_shadow] = SHADOW_INTERNAL_NAME(sh_rm_write_access_from_l1, 4),
>      };
> -
>      static const unsigned int callback_mask = SHF_L1_ANY | SHF_FL1_ANY;
>      struct page_info *pg = mfn_to_page(gmfn);
>  #if SHADOW_OPTIMIZATIONS & SHOPT_WRITABLE_HEURISTIC
> @@ -2044,26 +2034,16 @@ int sh_remove_all_mappings(struct domain
>      struct page_info *page = mfn_to_page(gmfn);
>  
>      /* Dispatch table for getting per-type functions */
> -    static const hash_domain_callback_t callbacks[SH_type_unused] = {
> -        NULL, /* none    */
> +    static const hash_domain_callback_t callbacks[] = {
>  #ifdef CONFIG_HVM
> -        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 2), /* l1_32   */
> -        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 2), /* fl1_32  */
> -        NULL, /* l2_32   */
> -        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 3), /* l1_pae  */
> -        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 3), /* fl1_pae */
> -        NULL, /* l2_pae  */
> +        [SH_type_l1_32_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 2),
> +        [SH_type_fl1_32_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 2),
> +        [SH_type_l1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 3),
> +        [SH_type_fl1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 3),
>  #endif
> -        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 4), /* l1_64   */
> -        SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 4), /* fl1_64  */
> -        NULL, /* l2_64   */
> -        NULL, /* l2h_64  */
> -        NULL, /* l3_64   */
> -        NULL, /* l4_64   */
> -        NULL, /* p2m     */
> -        NULL  /* unused  */
> +        [SH_type_l1_64_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 4),
> +        [SH_type_fl1_64_shadow] = SHADOW_INTERNAL_NAME(sh_rm_mappings_from_l1, 4),
>      };
> -
>      static const unsigned int callback_mask = SHF_L1_ANY | SHF_FL1_ANY;
>  
>      perfc_incr(shadow_mappings);
> @@ -2189,45 +2169,27 @@ void sh_remove_shadows(struct domain *d,
>  
>      /* Dispatch table for getting per-type functions: each level must
>       * be called with the function to remove a lower-level shadow. */
> -    static const hash_domain_callback_t callbacks[SH_type_unused] = {
> -        NULL, /* none    */
> +    static const hash_domain_callback_t callbacks[] = {
>  #ifdef CONFIG_HVM
> -        NULL, /* l1_32   */
> -        NULL, /* fl1_32  */
> -        SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 2), /* l2_32   */
> -        NULL, /* l1_pae  */
> -        NULL, /* fl1_pae */
> -        SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 3), /* l2_pae  */
> +        [SH_type_l2_32_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 2),
> +        [SH_type_l2_pae_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 3),
>  #endif
> -        NULL, /* l1_64   */
> -        NULL, /* fl1_64  */
> -        SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 4), /* l2_64   */
> -        SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 4), /* l2h_64  */
> -        SHADOW_INTERNAL_NAME(sh_remove_l2_shadow, 4), /* l3_64   */
> -        SHADOW_INTERNAL_NAME(sh_remove_l3_shadow, 4), /* l4_64   */
> -        NULL, /* p2m     */
> -        NULL  /* unused  */
> +        [SH_type_l2_64_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 4),
> +        [SH_type_l2h_64_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l1_shadow, 4),
> +        [SH_type_l3_64_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l2_shadow, 4),
> +        [SH_type_l4_64_shadow] = SHADOW_INTERNAL_NAME(sh_remove_l3_shadow, 4),
>      };
>  
>      /* Another lookup table, for choosing which mask to use */
> -    static const unsigned int masks[SH_type_unused] = {
> -        0, /* none    */
> +    static const unsigned int masks[SH_type_max_shadow + 1] = {
>  #ifdef CONFIG_HVM
> -        SHF_L2_32, /* l1_32   */
> -        0, /* fl1_32  */
> -        0, /* l2_32   */
> -        SHF_L2_PAE, /* l1_pae  */
> -        0, /* fl1_pae */
> -        0, /* l2_pae  */
> +        [SH_type_l1_32_shadow] = SHF_L2_32,
> +        [SH_type_l1_pae_shadow] = SHF_L2_PAE,
>  #endif
> -        SHF_L2H_64 | SHF_L2_64, /* l1_64   */
> -        0, /* fl1_64  */
> -        SHF_L3_64, /* l2_64   */
> -        SHF_L3_64, /* l2h_64  */
> -        SHF_L4_64, /* l3_64   */
> -        0, /* l4_64   */
> -        0, /* p2m     */
> -        0  /* unused  */
> +        [SH_type_l1_64_shadow] = SHF_L2H_64 | SHF_L2_64,
> +        [SH_type_l2_64_shadow] = SHF_L3_64,
> +        [SH_type_l2h_64_shadow] = SHF_L3_64,
> +        [SH_type_l3_64_shadow] = SHF_L4_64,
>      };
>  
>      ASSERT(!(all && fast));
> @@ -2356,24 +2318,8 @@ static int sh_clear_up_pointer(struct vc
>  
>  void sh_reset_l3_up_pointers(struct vcpu *v)
>  {
> -    static const hash_vcpu_callback_t callbacks[SH_type_unused] = {
> -        NULL, /* none    */
> -#ifdef CONFIG_HVM
> -        NULL, /* l1_32   */
> -        NULL, /* fl1_32  */
> -        NULL, /* l2_32   */
> -        NULL, /* l1_pae  */
> -        NULL, /* fl1_pae */
> -        NULL, /* l2_pae  */
> -#endif
> -        NULL, /* l1_64   */
> -        NULL, /* fl1_64  */
> -        NULL, /* l2_64   */
> -        NULL, /* l2h_64  */
> -        sh_clear_up_pointer, /* l3_64   */
> -        NULL, /* l4_64   */
> -        NULL, /* p2m     */
> -        NULL  /* unused  */
> +    static const hash_vcpu_callback_t callbacks[] = {
> +        [SH_type_l3_64_shadow] = sh_clear_up_pointer,
>      };
>      static const unsigned int callback_mask = SHF_L3_64;
>  
> @@ -3381,25 +3327,23 @@ int shadow_domctl(struct domain *d,
>  void shadow_audit_tables(struct vcpu *v)
>  {
>      /* Dispatch table for getting per-type functions */
> -    static const hash_vcpu_callback_t callbacks[SH_type_unused] = {
> -        NULL, /* none    */
> +    static const hash_vcpu_callback_t callbacks[] = {
>  #if SHADOW_AUDIT & (SHADOW_AUDIT_ENTRIES | SHADOW_AUDIT_ENTRIES_FULL)
>  # ifdef CONFIG_HVM
> -        SHADOW_INTERNAL_NAME(sh_audit_l1_table, 2),  /* l1_32   */
> -        SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 2), /* fl1_32  */
> -        SHADOW_INTERNAL_NAME(sh_audit_l2_table, 2),  /* l2_32   */
> -        SHADOW_INTERNAL_NAME(sh_audit_l1_table, 3),  /* l1_pae  */
> -        SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 3), /* fl1_pae */
> -        SHADOW_INTERNAL_NAME(sh_audit_l2_table, 3),  /* l2_pae  */
> +        [SH_type_l1_32_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l1_table, 2),
> +        [SH_type_fl1_32_shadow] = SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 2),
> +        [SH_type_l2_32_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l2_table, 2),
> +        [SH_type_l1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l1_table, 3),
> +        [SH_type_fl1_pae_shadow] = SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 3),
> +        [SH_type_l2_pae_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l2_table, 3),
>  # endif
> -        SHADOW_INTERNAL_NAME(sh_audit_l1_table, 4),  /* l1_64   */
> -        SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 4), /* fl1_64  */
> -        SHADOW_INTERNAL_NAME(sh_audit_l2_table, 4),  /* l2_64   */
> -        SHADOW_INTERNAL_NAME(sh_audit_l2_table, 4),  /* l2h_64   */
> -        SHADOW_INTERNAL_NAME(sh_audit_l3_table, 4),  /* l3_64   */
> -        SHADOW_INTERNAL_NAME(sh_audit_l4_table, 4),  /* l4_64   */
> +        [SH_type_l1_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l1_table, 4),
> +        [SH_type_fl1_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_fl1_table, 4),
> +        [SH_type_l2_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l2_table, 4),
> +        [SH_type_l2h_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l2_table, 4),
> +        [SH_type_l3_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l3_table, 4),
> +        [SH_type_l4_64_shadow] = SHADOW_INTERNAL_NAME(sh_audit_l4_table, 4),
>  #endif
> -        NULL  /* All the rest */
>      };
>      unsigned int mask;
>  
> @@ -3427,7 +3371,9 @@ void shadow_audit_tables(struct vcpu *v)
>          }
>      }
>  
> -    HASH_CALLBACKS_CHECK(SHF_page_type_mask);
> +    HASH_CALLBACKS_CHECK(SHADOW_AUDIT & (SHADOW_AUDIT_ENTRIES |
> +                                         SHADOW_AUDIT_ENTRIES_FULL)
> +                         ? SHF_page_type_mask : 0);
>      hash_vcpu_foreach(v, mask, callbacks, INVALID_MFN);
>  }
>  


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:03:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:03:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111385.213032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4Su-0003Ll-CQ; Thu, 15 Apr 2021 16:03:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111385.213032; Thu, 15 Apr 2021 16: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 1lX4Su-0003Le-9Q; Thu, 15 Apr 2021 16:03:36 +0000
Received: by outflank-mailman (input) for mailman id 111385;
 Thu, 15 Apr 2021 16:03:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x7n8=JM=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lX4Ss-0003LW-QV
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 16:03:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8b7448f6-069a-43e6-baf1-1f028ef5f7de;
 Thu, 15 Apr 2021 16:03:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3C532B2D8;
 Thu, 15 Apr 2021 16:03: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: 8b7448f6-069a-43e6-baf1-1f028ef5f7de
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618502613; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=UzfE0PaUp7J2RT+ZAV06P54hrkqD2rJJVto8fz06cZg=;
	b=U+ktEh0BNlYGlOjWJvAMbePAvLnmwlnpaqTg54GRltPe9yVosLpgbnohbnh1fSC5hRBeiW
	ZQ8RiRDYsHM/ZTnk/bH6oN4Q5M/egIzVb2HHcmRwYeiQ5gC+zQv1D1hI864Lnr3kbcJyZb
	2T9dOhkkrfKHKregWPXscqq9Nx1h8zE=
Subject: Re: [PATCH] x86/shadow: adjust callback arrays
To: Tim Deegan <tim@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 George Dunlap <george.dunlap@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <621aa6f6-d7f8-25eb-9aeb-f181a9cb3bbc@suse.com>
 <YHhi19OqHN2cqMBA@deinos.phlegethon.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <20c9d5b3-6194-0e55-d6a1-94fd3323bb69@suse.com>
Date: Thu, 15 Apr 2021 18:03:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHhi19OqHN2cqMBA@deinos.phlegethon.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 17:59, Tim Deegan wrote:
> At 12:42 +0200 on 12 Apr (1618231332), Jan Beulich wrote:
>> Some of them have entries with stale comments. Rather than correcting
>> these comments, re-arrange how these arrays get populated, shrinking
>> their sizes at the same time (by omitting trailing NULL entries: Use
>> dedicated element initializers, serving the purpose of what the
>> comments did so far. This then also makes these arrays independent of
>> the actual ordering of the individual SH_type_*.
>>
>> While tightening respective ASSERT()s in hash_{vcpu,domain}_foreach(),
>> also tighten related ones in shadow_hash_{insert,delete}().
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Looks good, but please leave the arrays at full size.  With the full
> array, a bug could lead to an assertion failure or NULL deref; with
> a short array it could mean following a bogus funtion pointer.
> 
> With that change, Acked-by: Tim Deegan <tim@xen.org>

Thanks, but let me ask back about which of the two possble meanings
of "full" you mean: Dimensioned by SH_type_unused, or dimensioned
by SH_type_max_shadow + 1? The former would leave the arrays as they
are now, while the latter would shrink them a little.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:04:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:04:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111389.213044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4To-0003TF-NG; Thu, 15 Apr 2021 16:04:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111389.213044; Thu, 15 Apr 2021 16: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 1lX4To-0003T8-K2; Thu, 15 Apr 2021 16:04:32 +0000
Received: by outflank-mailman (input) for mailman id 111389;
 Thu, 15 Apr 2021 16:04:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4R4=JM=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lX4Tm-0003T2-Sp
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 16:04:31 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e8715df4-56da-4fdc-8024-6aba5e1e9ae3;
 Thu, 15 Apr 2021 16:04: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: e8715df4-56da-4fdc-8024-6aba5e1e9ae3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618502669;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=y4M9E2J0FRPacWxjx2V4/4B5HUfCbZikSGH56bcGJgw=;
  b=Hm4oUr+nwwqPev7onsRK/RlmEpEjkYnUMGmHDQgvDi8xo9HwSnRkXbAs
   3gM5OuC8uItYCZdMHag/hGmH1aQ8vZWOhad1M5uOxDQkesmeKbFVNqMEw
   nEA9x5SEL9KeUdMKH1y49ZYGtjXVJdxh3QBzP4Y6bDdC2/lt2mZP/jy1x
   8=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: l0Zhbn+qt6/I3DWAZT68vtAj21Qas5+XoyLxof99nVr0lKCd8ZJIpxghuaosPPHVrbMiY4DCxv
 lsqsBf7winQIMC/AtPqqhmGKfqXVYbjnT0D7BdQOcB1w0vKvtsyk9hNi7Wx5F9mydciBjrr7xA
 UpKCzCc2+tSVlR+4yUps4Irp8l6n9dnMbJyCMKQlCOCp2qtH4Nn8+ElgrQcYQTfeM5dyIbDuDs
 JKKVz7U8M7QC4BKkEehusnZ+5zk8Yt0JdjxywgEnsGp/gaJv+qSbvdf330PoGB5Cco+fM4l87I
 wxk=
X-SBRS: 5.2
X-MesageID: 41526040
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:s75IZq0VwynR58jHxa+7jAqjBWhyeYIsi2QD101hICF9WtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7LE/035hz/IUXIPOeTBDr0VHYSb1KwKnD53nbGyP4/vNAzq
 sIScJDIfD5EFQSt6nHySaiFdJI+re62YSJocub8Ht3VwFtbMhbnmVEIyKWCFd/SgUDJbdRLv
 qhz/FKrTahZngbB/7TbhU4dtPOusHRk9beaQMGbiRN1CC1kTiq5LTmeiLovSs2bjUn+9Yf2F
 mAqSPVzOGJs/a3yhjTvlWjlah+qZ/a5fZoQOCJgsgRAD3whgivf5QJYcz+gBkF5NuBxXxvvN
 7QowoxH8kb0QKsQkiF5SHD9iOl8DEy52TswVWV6EGT3vDRdXYBJOdqwad6GyGpj3YIjZVH/4
 9gm1+9jd5xCyjNmSzsjuK4Ly1Cpw6PjlcJ1dIIg2c3a/p4VJZh6bYx0WlyC5k6ECfz+OkcYZ
 JTJfCZ3vpQfF+ABkqp2FVH8ZipVnQ3KB+MXlIPjMyTyyRXh3B01SIjtbUioks=
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="41526040"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IvPjyTk78iTjHrmJjvztf08qbwg6SjEbvU/GYa/aD13DtxRBSBi+ys8CaF8Fu31qiHhtD5MrfoEuMSItOvcOpLwse2VMm1LzwJhVM9PMRsriEHoBU7cqEtAqWm4LFKdwF4niS5WN53djMuaY1972T4FjOS3hcbXZwOhx+QtAinxdrUW5VQnGG1RKo/alDoEwl1/uEc/FisZuzc/n1+EqUEGhikO1SW1JYf+DygZb7kZZbNCsafa+gU4P2zbktQ3B2ZW11Jh6r35/GoeAGEDD8xqigeT3yIvYnH9CjqlU18/4Gopayxc2lGWJ9ACFYVAFj7WSRZ9gTtjwmNeI0A02Ng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6SjXWGrp9x1UQTfhOryqES6S9F26Ex2hBlUeJ3sK+Go=;
 b=DyMsoU7aSzgH3yrns7sBu+ILAEoHGtcWuEtiSBOVmG4s3MOan2DHoisSEhSr7SOYUn3VRNe8lkEDgZgrALLEEVLAL8/8Y3e71OrLRLxVO+IvqpjogYLSei/5ld8DuTw9H8iZfBumN6NBMDsgkbJsLCr9Zdt2QAI2QUbRQBSWsUeDwfBs+E0xMGEvRJ4iG/6z7Pb6juAty7s7yQEtMLpjoh0ATbr+JfAWN4AKdJeGMNsQxY2/fBeyJcPGUYCtS4oTYuJHcOR1g/wy3LhjVYiu7dYfxqoRatFbmK8Xy+Ui/HtdcHqPaQ0bfM/8s/32uiXnOoXilzTTqt8/3+pgVZ6Qig==
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=6SjXWGrp9x1UQTfhOryqES6S9F26Ex2hBlUeJ3sK+Go=;
 b=GuWXj/IUSZ4DPeJ6mMoqf7giiinpzykLZcHQNgCbqddwvmPPGUMd1nc9X4PWMS2CenYkS1GKuI2SkMUa3vputvUzrHLbFihsTFr0TQTzJEcHEBxJ2YfnE9A3i5EFNhk2PR9guRwHppYPSZPZvpoObClQxBM0spEf6SdjLWEgq5M=
Date: Thu, 15 Apr 2021 18:04:20 +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 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
Message-ID: <YHhkBBaXgBQMrov/@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
 <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
 <YG3m9nW6xPeL7MPr@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <YG3m9nW6xPeL7MPr@Air-de-Roger>
X-ClientProxiedBy: MR2P264CA0004.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::16) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 45392631-019f-44ae-8fcd-08d9002824b9
X-MS-TrafficTypeDiagnostic: DM6PR03MB5289:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB52896B8850971C1DFD03308A8F4D9@DM6PR03MB5289.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: fh26Wnoa0RnlWUQWeYsH9hOrslpnN2shlxxYh1+JrCB9acFixjnV0MjfWbHkukV+8Mz4pCMmZ+F+vptkjVh9VLI61ZkEO5f3Y7Xlydwfv5jEo85RkoljdRgyK9EK9tPgTRQHcLXaAQmBonaWrDx6YYKLPqtf6VXGUKiS9wCh7eBrGge2CPWKIhCtdxgUvls6zwq6FQDeIZWL363uRN95yztdjaWaxMxQLGEHAzfzPted/wH6Z9piwK6xPHQ4cH9zCVb+AxBvFEOsXYKZZ8gdlUDtGseWzRZ7ZcV4eOYZjsnOzz6JTsJX8ujUewgkZjCpvFX58HEb09dbi2A5XYP6sXyoiAZRl4w6ndJRdBezjQeEm1HRjcBOECQzBekEOcRk+EgVbnfzNyyIyV+8lRsdxZ0TpGYjvCOZEhqgEMdyN1cKQHTaGCTEoIdyKj7eaNSI4EdDmF6jypTsQ0seKnTgh/wNW7nweUHsKQRlLnPoZE3UyHxL2/5N6UrFV5ky0bB5cZIiYwdhF4TaUUOf4vILXHWg8879Ra9aDx4DaJU6oJ47FcJ8dIKJDICbVCftqfXSdT0WyR9Yb+UXL4+Y8Poc6Xx7Kd+bJmPXJxi10tM+8JY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(39860400002)(376002)(396003)(136003)(366004)(53546011)(86362001)(2906002)(6486002)(85182001)(33716001)(8676002)(6666004)(38100700002)(9686003)(6496006)(6916009)(83380400001)(4326008)(5660300002)(8936002)(186003)(478600001)(16526019)(316002)(26005)(54906003)(66556008)(66946007)(66476007)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?B?S1hWY0lYalRKWnpSTU9CZz09?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 45392631-019f-44ae-8fcd-08d9002824b9
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 16:04:26.6653
 (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: ypehRpi/FdSBy7B4GgWUJU4XN/crif6p0xChK7TWPI7SxrHyS6NzhAm+szuGkj0+TvYEnrQSZyznvi2xZoTK2g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5289
X-OriginatorOrg: citrix.com

On Wed, Apr 07, 2021 at 07:08:06PM +0200, Roger Pau Monné wrote:
> On Wed, Apr 07, 2021 at 05:51:14PM +0200, Jan Beulich wrote:
> > On 31.03.2021 12:32, Roger Pau Monne wrote:
> > > --- a/xen/arch/x86/hvm/irq.c
> > > +++ b/xen/arch/x86/hvm/irq.c
> > > +void hvm_gsi_execute_callbacks(unsigned int gsi)
> > > +{
> > > +    struct hvm_irq *hvm_irq = hvm_domain_irq(current->domain);
> > > +    struct hvm_gsi_eoi_callback *cb;
> > > +
> > > +    read_lock(&hvm_irq->gsi_callbacks_lock);
> > > +    list_for_each_entry ( cb, &hvm_irq->gsi_callbacks[gsi], list )
> > > +        cb->callback(gsi, cb->data);
> > > +    read_unlock(&hvm_irq->gsi_callbacks_lock);
> > > +}
> > 
> > Just as an observation (for now at least) - holding the lock here
> > means the callbacks cannot re-register themselves.
> 
> Well, re-registering would be weird, as the callback is not
> unregistered after execution. What is likely more relevant is that the
> callback cannot unregister itself. I haven't found a need for this so
> far, so I think it's fine.

I'm afraid I was wrong here - rtc_pf_callback could attempt to
unregister the timer, and thus end up calling
hvm_gsi_unregister_callback inside of a callback.

I need to figure a way to solve this. We already run the RTC in no ack
mode (which is correct because of the flag we expose in the WAET ACPI
table), and hence I wonder if we still need to keep the code for the
strict_mode around, since it's not used at all. Would you be OK with
me removing the mode_strict related code?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:10:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:10:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111398.213056 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4Zw-0004U2-L5; Thu, 15 Apr 2021 16:10:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111398.213056; Thu, 15 Apr 2021 16:10: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 1lX4Zw-0004Tv-HV; Thu, 15 Apr 2021 16:10:52 +0000
Received: by outflank-mailman (input) for mailman id 111398;
 Thu, 15 Apr 2021 16:10:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EEd9=JM=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lX4Zv-0004Tq-VK
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 16:10:51 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f14fbfb4-0376-46bc-9228-7bbfe8c13213;
 Thu, 15 Apr 2021 16:10:50 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lX4Zt-0008MW-Iz; Thu, 15 Apr 2021 16:10: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: f14fbfb4-0376-46bc-9228-7bbfe8c13213
Date: Thu, 15 Apr 2021 17:10:49 +0100
From: Tim Deegan <tim@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [PATCH 0/2] x86/shadow: shadow_get_page_from_l1e() adjustments
Message-ID: <YHhliTZoR/UxpPn2@deinos.phlegethon.org>
References: <e410c8e6-351d-bd98-7485-eb57268dc378@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <e410c8e6-351d-bd98-7485-eb57268dc378@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 13:46 +0200 on 12 Apr (1618235218), Jan Beulich wrote:
> The aspect of the function the second patch here changes has been
> puzzling me for many years. I finally thought I ought to make an
> attempt at reducing this to just a single get_page_from_l1e()
> invocation. The first patch mainly helps readability (of the code
> in general as well as the second patch).
> 
> Note that the first patch here takes "VMX: use a single, global APIC
> access page" as a prereq; it could be re-based ahead of that one.
> 
> 1: re-use variables in shadow_get_page_from_l1e()
> 2: streamline shadow_get_page_from_l1e()

Acked-by: Tim Deegan <tim@xen.org>

Thanks,

Tim.



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:12:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:12:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111402.213068 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4bM-0004af-Vt; Thu, 15 Apr 2021 16:12:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111402.213068; Thu, 15 Apr 2021 16:12:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4bM-0004aY-Sh; Thu, 15 Apr 2021 16:12:20 +0000
Received: by outflank-mailman (input) for mailman id 111402;
 Thu, 15 Apr 2021 16:12:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EEd9=JM=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lX4bL-0004aS-7P
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 16:12:19 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e5e8f163-cc83-4c59-b42d-6a572eefc5f2;
 Thu, 15 Apr 2021 16:12:18 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lX4bJ-0008N1-QH; Thu, 15 Apr 2021 16:12: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: e5e8f163-cc83-4c59-b42d-6a572eefc5f2
Date: Thu, 15 Apr 2021 17:12:17 +0100
From: Tim Deegan <tim@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [PATCH] x86/shadow: adjust callback arrays
Message-ID: <YHhl4dej9GnFakkj@deinos.phlegethon.org>
References: <621aa6f6-d7f8-25eb-9aeb-f181a9cb3bbc@suse.com>
 <YHhi19OqHN2cqMBA@deinos.phlegethon.org>
 <20c9d5b3-6194-0e55-d6a1-94fd3323bb69@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <20c9d5b3-6194-0e55-d6a1-94fd3323bb69@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 18:03 +0200 on 15 Apr (1618509812), Jan Beulich wrote:
> On 15.04.2021 17:59, Tim Deegan wrote:
> > At 12:42 +0200 on 12 Apr (1618231332), Jan Beulich wrote:
> >> Some of them have entries with stale comments. Rather than correcting
> >> these comments, re-arrange how these arrays get populated, shrinking
> >> their sizes at the same time (by omitting trailing NULL entries: Use
> >> dedicated element initializers, serving the purpose of what the
> >> comments did so far. This then also makes these arrays independent of
> >> the actual ordering of the individual SH_type_*.
> >>
> >> While tightening respective ASSERT()s in hash_{vcpu,domain}_foreach(),
> >> also tighten related ones in shadow_hash_{insert,delete}().
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> > 
> > Looks good, but please leave the arrays at full size.  With the full
> > array, a bug could lead to an assertion failure or NULL deref; with
> > a short array it could mean following a bogus funtion pointer.
> > 
> > With that change, Acked-by: Tim Deegan <tim@xen.org>
> 
> Thanks, but let me ask back about which of the two possble meanings
> of "full" you mean: Dimensioned by SH_type_unused, or dimensioned
> by SH_type_max_shadow + 1? The former would leave the arrays as they
> are now, while the latter would shrink them a little.

As they are now, please.

Cheers,

Tim.


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:21:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:21:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111411.213086 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4k8-0005db-VD; Thu, 15 Apr 2021 16:21:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111411.213086; Thu, 15 Apr 2021 16:21: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 1lX4k8-0005dU-RO; Thu, 15 Apr 2021 16:21:24 +0000
Received: by outflank-mailman (input) for mailman id 111411;
 Thu, 15 Apr 2021 16:21:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6tgI=JM=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lX4k7-0005dO-3L
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 16:21:23 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 30b87765-250d-420a-96e6-cd91258bf850;
 Thu, 15 Apr 2021 16:21:21 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 30b87765-250d-420a-96e6-cd91258bf850
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618503681;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=yaTgXHbxWtss1Sz1hnv8d4uwdsysdt73FH6fveeYwpM=;
  b=SiB0dahqsOZhLN9dGmNqsdHWDJnghuRC1BuLedcsayebWiBw3C7JA+8/
   Uz6OZjK0dGQjnkhuybsW9WjBsY5QMKhElBY54QlzImDgfutGxM/we/M5z
   ppCNB0f3XzkQ4Sqnb/p9vocKroYAjTj7OzwlxBPbRrg56BBxsCLiqaiR1
   A=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: qdZ+ZkHy4m62mHd92HbBnfT5Rlwp2g5ySDNN5Gt2W65k7MkFC2q4zm3HsE1hgFAx+RuxCnnIeA
 GiE9gao95W1ugix7GZG1t635t+Qc43Fbw/N/QimBU95An7ph0mK/QCJsQUWpsb1mhpERXaWTQd
 xb8QFvcs2BP9ynk+exxHTjRYH7yag6PB1tvCYnlIc97eiMuAMbXQe2aCT1ULUJEuYDreclDXq1
 2+ckYSVwUVYd0RzaGd0h3TZOeAk/4zK3RTWFBPGRzxYxIV3BrUj5x4XrlW8RnRJZ+WYuHKRORK
 gEI=
X-SBRS: 5.2
X-MesageID: 41688739
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:bKlV96N2Suc+rcBcT27w55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAse9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrAHIMxbVstRQ3a
 IIScRDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RdQZCtBApsQiztRIACdD0FwWU1iDZ02CJ
 KT6qN81kSdUF4Qadm2AWRAYvPKoMfFmImjTRkNARMm7wfmt0LW1JfRFR+E0hACFw5e2LtKyx
 m4ryXVxIWG98u6xBjVynPJ4/1t+efJ59NfCKW3+7MoAxr2jALAXvUGZ5Sju3QPrPir+BIWlr
 D30modFuBSz1+UQW2vuxvq3GDboUQTwlvv00WRj3emgeGRfkNDN+N7iYhUcgTU5iMb1bkWus
 87vBP6xu5qJCjNkyjn69/DWwsCrDvSnVMYnfMOlHsaaIMCadZq3P8i1XlIG5QNFj+S0vFfLM
 BSCqjnlZNrWG+BY2uclmdix8HEZAVIIj62BmIGusCTzgFMmmF4w0Yy1KUk7wc93aN4ZJ9e6+
 veNKN00JlIU88NdKp4QNwMWM2tFwX2MFzxGVPXBW6iOLAMOnrLpZKyyLIp5NuycJhN6Jcpgp
 zOXH5RqGZaQTOuNeS+mLlwtjzdSmS0WjrgjutE4YJih7H6TL33dQWeVVEHiaKb0rciK/yef8
 z2FINdAvflI2erM51OxRfCV55bLmRbeNEJu+w8R0mFrqvwW87Xn92eVMyWCKvmED4iVG+6KG
 AERiLPKMJJ6V3udWT/hDTXRnPxam3y9Z99C8Hhjqwu4blIErcJnhkeiFy/6M3OAyZFqLYKcE
 x3J66isq7TnxjwwU/4q0FSfjZNBEdc57vtF1lQoxURDk/yebEf//GWeWVY2mq7NgZyJvmmVj
 J3lhBSw+aaPpaQzSctB5aMKWSBlUYeo3qMUtM6lrCc49zmPrc1FIwvVqA0NQijLW00pS9a7E
 N4LCMUTE7WET3jzY+/ioYPOe3Zf95gxCGxIcBVrnrbnV6Gpd4mQ0YaWzLGa7/TvS8eAx5vwn
 Fh+a4Wh7SN3Ry1L3Ekveg+OFpQLFiMDKl+FwSDboVMkrXNcAV9JF363ACyulUWQC7H5k8Sjm
 vuIWmxdevQClRQgHxez53n6Uh5bGmbYkJ2ZE1rqIEVLxWyhl9DlcuwIoaj2WqYbVUPhtsQNz
 zIehM+CAJjzdLf7m/ZpB+yUVEdgrk+NO3UC7ouN4zJ0nS2MYuSiOUtBPlP5qtoM9jor84GWe
 +SYBWuMTv9Eu8lsjbl/koNCW1Rkj0JgPno0Brq4CyEx3Y5G+PVO0kjaLcBId2QhlKUD8qg4d
 Fct5YSsuSxOGmqNYLD5qHTcjJZKhTc5USxVPolrJhIvaQ08Jt/dqOrJwfg5TVi5lEZKsyxqW
 Y1BIJcy5rFMpV0f8MTdzlCl2BZ3uinHQ8OiEjOHuQ6fVsRlHfVMNOC3qrQpdMUczq8jTq1HW
 PazjZU8PjEVRaSzLI2C6o/JmJNdUg3gU4Std+qRsn1CA+wcftE80f/GnihcKVFQKztI8Rdkj
 9Kp/WJlfSQbSz2xUT5uiZ6OLtH9yKCTdmpCAyBXc5O/NrSAyXCvoKapOqyhizwUz21dgAxgp
 BEb1UZaoB7sQYZ5bdHmRSae+jQuUIqk1xX/DFhmBrM4+GdkRbmNHADFxbYjJVQVSRUKV6Sg6
 3+gLOl6Eg=
X-IronPort-AV: E=Sophos;i="5.82,225,1613451600"; 
   d="scan'208";a="41688739"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ui1FjuFCk+UsUfhZFI+u3+dyrqh2Qiuq/Y5NfT7YC8oXOHAkLEaZoLmF8+cZlWS/TNSzkxOufci8pxttiTyA7wCTIqjPlB1hbA3bdUihkgl2YQxEcgTXtaVrW3vgjUkD0WTjTdm2aGPjvL/5H2FQMnXAkLzuRNLM8rEeU4IaW4IdaSlSVZ+mgB5fWjZ+TEhQA6uzG9p4MEBWs6cQjOc7npbLgOALYC8Hjn6EnosMEA3/0J5Rm6m6iMJ2f5oyvDBdY2Ap7Xwe+nBxvpbaulCXRRaTPDVDTGH17AY62UUJskfwGOday4qYuMGPaO1mU/ep6hnHRvr4S6k0YhuKu9cvJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yaTgXHbxWtss1Sz1hnv8d4uwdsysdt73FH6fveeYwpM=;
 b=ETWSmTctGHGfL2QZkQ9nsXpV8RW0cqmoHJLsYkj91CgTiyof6YsHSJ/jWJUGK/FeVxl1AKAwF9H/RzmBLP1KJ1/cVVLTI/7qDmnZ9l8p7bEaEv5jOeG+t3PITQyTya8197xtpNYec8oqQx8mMR2VfU4zy5AmyshdW+U+DzGV5osEBIGXVYFNhM/bIld1jiNHBRuLG4fXOXIhJ3LemreEugS3Apl1yigYiLxeOr6x3+ir+vrOEnSptOgeTUer4EXSHgVujGcQcDmt/HbAeeVDTPjQ2rhc4Dsd26XVWeiETGRRW3KlgYUKWjpu4GCybj1fGzvGICb1piJPC8gIlFOJ5Q==
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=yaTgXHbxWtss1Sz1hnv8d4uwdsysdt73FH6fveeYwpM=;
 b=wpAgV1IY7VN9u0G0n6j8CsS6zS2xlNyBaGx+C1uYjZsHwEGXpDd0tkqnhpEYfmu/myoTYd67XffxwGPXL7eq9uUauJa3FY+4wBBz/Yo23Ii8ucj3b/jZnZin1ZBcGUbZueFuwC9ROZCuL7My5bnjHg0S97nIUfOsqVAkY6PmdyU=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
 <21c00073-86a8-a040-fa40-e99e2fb434eb@citrix.com>
 <213c3706-5296-4673-dae2-12f9056ed73b@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: x86: memset() / clear_page() / page scrubbing
Message-ID: <843e5c66-65e9-3b0b-8bcb-ad1d7df89d78@citrix.com>
Date: Thu, 15 Apr 2021 17:21:09 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <213c3706-5296-4673-dae2-12f9056ed73b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0415.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a0::19) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 16ae1f7c-6ed0-4b2b-af4e-08d9002a7ed0
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5776:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB57760436EF88023E4507F873BA4D9@SJ0PR03MB5776.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: NI+jGLFcLqmFO8lz3uMyBGwMdKUDEBom6746b8o43kVxU9VVpHTXYfH0quLNG0pgA1dLvpZ0ALRkxot1U32uwewVo/jRfOQ8heR9tf1g/Eq/fx4ObIlEhv6FGiXmOa5yiAWm5pKXqbqDUuGXWLwokfc8tVxeDCIn4wE/5OuOzEOCOyvAqvJJkaPON2VafqW0qNlmKGskthzWra10gSRydErnSjz8Jq5L7B7kRyhRHL50LTVTHmljiCvRrOhG0kDkp9Oy7HHi4jVbMihJnyx+CZndZy4paZQDBwlGYWLESUVtXYTMI8bPRZnfQBKIu2UrsHhyMEU+y5kFFU2cbKSbeyWtA9VcOa64Tq5rJXg2Y7cvWC7c7dejJ4VHfYKVg5PPLt9t8oCzf2u1eM2akg1kc5SsE70jnaG3TvL+ht9VMUCUdHiB5JjEt7xDFc4umz1V3w/ou5jcI9o1XsRtIoyUKHQhwBLMmCsJnVAORA/EZWQ/ludeBF5NfsXNjyXwsRHbYcmUiLhRSysDZzg571KmGZ5J1j30hpxEe9ap8EjtXS3EZot3CU3JPIW4XAxiIppI2eqkO1kWzgaeqaY+ypOZaPDP3BC+kMqHKoRHPd8mXrq9Dbn4IBGdzp9/IjOI8kzWcUQCrhNhAAn8TrjeMv21s6vs53xMD3rdx5zyqpoVMbOBCdFvNEfIYrO5ycWu3O83
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39860400002)(366004)(136003)(376002)(396003)(2906002)(86362001)(31696002)(6486002)(66476007)(6666004)(16576012)(83380400001)(6916009)(38100700002)(53546011)(186003)(5660300002)(478600001)(16526019)(31686004)(36756003)(30864003)(4326008)(54906003)(316002)(2616005)(956004)(66946007)(66556008)(8676002)(8936002)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?d1JRNzViTzZ5RVZJazN6SmJMMjFTT24vY09aRjRVYXBCdnhVQ2tXdjRWcDMr?=
 =?utf-8?B?OUlTaXFwTnZIK0hvUmIvdVJQbzVCdjNoajNCVjJ5Tm9iUUp1azVQaDhDUVd3?=
 =?utf-8?B?VGUyMW5LMXZUTEM4eFJ4VGJEMUdHMzlLdUxuRUdGU2I3VEdnc1ZYNEVETkcv?=
 =?utf-8?B?VG14QS9ZckpqUkxmQVlIQ1Y1STFxQnlzUmlMT0tZM1UzOVMyK0w5T0lPZUI4?=
 =?utf-8?B?VWx5RWxidGtXdVZUODVwN1dhdElXN1VYTHp2ZWY2ZmwyZkU3d0swZ0NuL2Ry?=
 =?utf-8?B?SXpJcVRIbk1CLzJJZjAvTXpvNmpmZndSS0lTaFk1WThtMDJjelpLeVBBU3lF?=
 =?utf-8?B?d0gwb0E3VC9ZcVAyNGF4NzhBZXpLMDRpZVdzNkhxRGFOUGduaWpsUXBwZ3p4?=
 =?utf-8?B?SjYxajhCbTlCWitvNHpwVmN0aGMwOWdWRnZjMjhra3hLbWhXQjl0aHpuMXFC?=
 =?utf-8?B?ZzYrdkJyeEpBaWxxT3k5OGYzV1RSMWVhVWVDY2dvSy92Zk92cFZtWHlrdm9U?=
 =?utf-8?B?VDM0K280ajBMUndidGVpZ3FkR3NhRFgxanRXdnovMHE2TTZxdHhzYlVKUHdn?=
 =?utf-8?B?WDBsZ2JsaUFWUmRrZ0dleTl1UnRraThIdkdPSDFZMXBnL2ZzNzNDMXNNK3VH?=
 =?utf-8?B?ajFmM2J4blhjeGlVeE1RSFRVVmU2N1pmZlhEaG1tMWdjbnFxaXFtMGlyWS9N?=
 =?utf-8?B?a0lUTUgyOGhkTis1Tm1UVS9kUjFmanJZTk1uUXdFTmFrRko5YXdxRXd1STJ1?=
 =?utf-8?B?YW96ODFIakgvT3dpcWhwM3lrY01YNU51dGdLODcwUURhTFgwRm8wSGVEekNn?=
 =?utf-8?B?SVhaZjdqbjNvYVlLbWtjTzEwbFFWaGI0R0VZczUrenpEVTBIajFld3VIY3NP?=
 =?utf-8?B?Nk4zSVNORFExWlJ3djlkVVQ1MmhYTlNwdk5kRmthaGJDNDBtOUtpZVJhNHZL?=
 =?utf-8?B?cnlrU3RBeFdvOUw4K3VLQ2tXZFNEQ1ZaSW11akN5eGxSWjZCRDkwdmh3bEZM?=
 =?utf-8?B?VVA1SlhaTXJsMmhNUm00RG5Kalg1QmNPTHYyOFF0VENFUGl3WkNOOGRCSWVS?=
 =?utf-8?B?Z0tOMzNuSkRCSk52T0xjdi9ZRmFQQmw5RWhiVit5YW1VYXBGbFJKc2FabnA2?=
 =?utf-8?B?bkxUY1R0ZEFDZ2lhTUN0b1drRkxNdHBnWlRPTURSa0l3amFwZkdTSkp2SHQ0?=
 =?utf-8?B?dm1ZYlhFN1FvWHdVTlBwTDFIV1ZRM0x2bDFaK3hkUHBsUHBHVk1qSTVnQUxW?=
 =?utf-8?B?b0I4bGhtbEdKQ0F2QUR0L0kzVHp4aW41QXh6OG5UMzREZU9PbFRiTGY2YzF6?=
 =?utf-8?B?Tm9FTC8yVEZMQ3p4OXpWMVlhQWxIYnZ2TE9YTlRDdlNzYy8zeGVWdU9FWFp1?=
 =?utf-8?B?RUNuYjZQYjJIbElJb1hjNUlVWkpsMG8wanF4dHFCK09QUzR1LzdPaFlqMzFN?=
 =?utf-8?B?VnUvSlkyWGZtL2dBbHJJNjJPeVlOQ3g2SG44cHJRWFh4Sndjck5SbFV5UVd6?=
 =?utf-8?B?Q2tkTWJVcHczUmY4Z0UrZWpvaEUxVE5ocmx0a21CR0lQUk5RVS95QWRGeTlG?=
 =?utf-8?B?czBHWXlYS1VvalFjVkZ0M0I1b1l3LzQ2VGEwTnZNSi9MbkRYaHF4VTF3MDcy?=
 =?utf-8?B?RENDVnZrbE1pYVZaN1NvajdldmVNL1Z6RGd4UkVlUVpBekRKWlcrSTlKamZW?=
 =?utf-8?B?ODFEK21ackdncnU0NWVUd0tnV01jZmQvUWl2RFRMYjMzREpmNzd3d0NFTXZG?=
 =?utf-8?Q?vHsNE/hdY0eGCbmFXSqH10UD8SvUGPNydDbn21t?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 16ae1f7c-6ed0-4b2b-af4e-08d9002a7ed0
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2021 16:21:16.8026
 (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: ccdCrhpd1UwQNzDR6Wjq7nhDVVCYdu9ELbI9hY7A3kQI5XCdIVO0Swle3sHhydnmGw+snhP+dsraquIRYAdMKoOVmLtqRLF1zpAWFkBfaG0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5776
X-OriginatorOrg: citrix.com

On 14/04/2021 09:12, Jan Beulich wrote:
> On 13.04.2021 15:17, Andrew Cooper wrote:
>> Do you have actual numbers from these experiments?
> Attached is the collected raw output from a number of systems.

Wow Tulsa is vintage.=C2=A0 Is that new enough to have nonstop_tsc ?

It's also quite possibly old enough to fail Linux's REP_GOOD check which
is something we're missing in Xen.

>> =C2=A0 I've seen your patch
>> from the thread, but at a minimum its missing some hunks adding new
>> CPUID bits.
> It's not missing hunks - these additions are in a prereq patch that
> I meant to post together with whatever this analysis would lead to.
> If you think I should submit the prereqs ahead of time, I can of
> course do so.

Well - its necessary for anyone wanting to compile your patch.

All the bits seem like they're ones we ought to mirror through to guests
irrespective of optimisations taken in Xen, so I don't see a problem
with such a patch going in stand-alone.

>> =C2=A0 I do worry however whether the testing is likely to be
>> realistic for non-idle scenarios.
> Of course it's not going to be - in non-idle scenarios we'll always
> be somewhere in the middle. Therefore I wanted to have numbers at
> the edges (hot and cold cache respectively), as any other numbers
> are going to be much harder to obtain in a way that they would
> actually be meaningful (and hence reasonably stable).

In non-idle scenarios, all numbers can easily be worse across the board
than as measured.

Cachline snoops, and in particular, repeated snoops during the
clear/copy operation will cause far worse overheads than simply being
cache-cold to begin with.

>> It is very little surprise that AVX-512 on Skylake is poor.=C2=A0 The
>> frequency hit from using %zmm is staggering.=C2=A0 IceLake is expected t=
o be
>> better, but almost certainly won't exceed REP MOVSB, which is optimised
>> in microcode for the data width of the CPU.
> Right, much like AVX has improved but didn't get anywhere near
> REP MOVS.

The other thing I forgot to mention is the legacy/VEX pipeline stall
penalty, which will definitely dwarf short operations, and on some CPUs
doesn't even amortise itself over a 4k operation.

Whether a vector algorithm suffers a stall or not typically depends on
the instructions last executed in guest context.

Furthermore, while on the current CPU you might manage to get a vector
algorithm to be faster than an integer one, you will be forcing a
frequency drop on every other CPU in the socket, and the net hit to the
system can be worse than just using the integer algorithm to being with.


IMO, vector optimised algorithms are a minefield we don't want to go
wandering in, particularly as ERMS is common these days, and here to stay.

>> For memset(), please don't move in the direction of memcpy().=C2=A0 memc=
py()
>> is problematic because the common case is likely to be a multiple of 8
>> bytes, meaning that we feed 0 into the REP MOVSB, and this a hit wanting
>> avoiding.
> And you say this despite me having pointed out that REP STOSL may
> be faster in a number of cases? Or do you mean to suggest we should
> branch around the trailing REP {MOV,STO}SB?
>
>> =C2=A0 The "Fast Zero length $FOO" bits on future parts indicate
>> when passing %ecx=3D0 is likely to be faster than branching around the
>> invocation.
> IOW down the road we could use alternatives patching to remove such
> branches. But this of course is only if we don't end up using
> exclusively REP MOVSB / REP STOSB there anyway, as you seem to be
> suggesting ...
>
>> With ERMS/etc, our logic should be a REP MOVSB/STOSB only, without any
>> cleverness about larger word sizes.=C2=A0 The Linux forms do this fairly=
 well
>> already, and probably better than Xen, although there might be some room
>> for improvement IMO.
> ... here.
>
> As to the Linux implementations - for memcpy_erms() I don't think
> I see any room for improvement in the function itself. We could do
> alternatives patching somewhat differently (and I probably would).
> For memset_erms() the tiny bit of improvement over Linux'es code
> that I would see is to avoid the partial register access when
> loading %al. But to be honest - in both cases I wouldn't have
> bothered looking at their code anyway, if you hadn't pointed me
> there.

Answering multiple of the points together.

Yes, the partial register access on %al was one thing I spotted, and
movbzl would be an improvement.=C2=A0 The alternatives are a bit weird, but
they're best as they are IMO.=C2=A0 It makes a useful enough difference to
backtraces/etc, and unconditional jmp's are about as close to free as
you can get these days.

On an ERMS system, we want to use REP MOVSB unilaterally.=C2=A0 It is my
understanding that it is faster across the board than any algorithm
variation trying to use wider accesses.

For non ERMS systems,=C2=A0 the split MOVSQ/MOVSB is still a win, but my
expectation is that conditionally jumping over the latter MOVSB would be
a win.

The "Fast zero length" CPUID bits don't exist for no reason, and while
passing 0 into memcpy/cmp() is exceedingly rare - possibly non-existent
- and not worth optimising, passing a multiple of 8 in probably is worth
optimising.=C2=A0 (Obviously, this depends on the underlying mem*() functio=
ns
seeing a multiple of 8 for a meaningful number of their inputs, but I'd
expect this to be the case).

>> It is worth nothing that we have extra variations of memset/memcpy where
>> __builtin_memcpy() gets expanded inline, and the result is a
>> compiler-chosen sequence, and doesn't hit any of our optimised
>> sequences.=C2=A0 I'm not sure what to do about this, because there is su=
rely
>> a larger win from the cases which can be turned into a single mov, or an
>> elided store/copy, than using a potentially inefficient sequence in the
>> rare cases.=C2=A0 Maybe there is room for a fine-tuning option to say "j=
ust
>> call memset() if you're going to expand it inline".
> You mean "just call memset() instead of expanding it inline"?

I think want I really mean is "if the result of optimising memset() is
going to result in a REP instruction, call memset() instead".

You want the compiler to do conversion to single mov's/etc, but you
don't want is ...

> If the inline expansion is merely REP STOS, I'm not sure we'd
> actually gain anything from keeping the compiler from expanding it
> inline. But if the inline construct was more complicated (as I
> observe e.g. in map_vcpu_info() with gcc 10), then it would likely
> be nice if there was such a control. I'll take note to see if I
> can find anything.

... this.=C2=A0 What GCC currently expands inline is a REP MOVS{L,Q}, with
the first and final element done manually ahead of the REP, presumably
for prefetching/pagewalk reasons.

The exact sequence varies due to the surrounding code, and while its
probably a decent stab for -O2/3 on "any arbitrary 64bit CPU", its not
helpful when we've got a system-optimised mem*() to hand.

> But this isn't relevant for {clear,copy}_page().
>
>> For all set/copy operations, whether you want non-temporal or not
>> depends on when/where the lines are next going to be consumed.=C2=A0 Pag=
e
>> scrubbing in idle context is the only example I can think of where we
>> aren't plausibly going to consume the destination imminently.=C2=A0 Even
>> clear/copy page in a hypercall doesn't want to be non-temporal, because
>> chances are good that the vcpu is going to touch the page on return.
> I'm afraid the situation isn't as black-and-white. Take HAP or
> IOMMU page table allocations, for example: They need to clear the
> full page, yes. But often this is just to then insert one single
> entry, i.e. re-use exactly one of the cache lines.

I consider this an orthogonal problem.=C2=A0 When we're not double-scrubbin=
g
most memory Xen uses, most of this goes away.

Even if we do need to scrub a pagetable to use, we're never(?) complete
at the end of the scrub, and need to make further writes imminently.=C2=A0
These never want non-temporal accesses, because you never want to write
into recently-evicted line, and there's no plausible way that trying to
mix and match temporal and non-temporal stores is going to be a
worthwhile optimisation to try.

> Or take initial
> population of guest RAM: The larger the guest, the less likely it
> is for every individual page to get accessed again before its
> contents get evicted from the caches. Judging from what Ankur said,
> once we get to around L3 capacity, MOVNT / CLZERO may be preferable
> there.

Initial population of guests doesn't matter at all, because nothing
(outside of the single threaded toolstack process issuing the
construction hypercalls) is going to touch the pages until the VM is
unpaused.=C2=A0 The only async accesses I can think of are xenstored and
xenconsoled starting up, and those are after the RAM is populated.

In cases like this, current might be a good way of choosing between
temporal and non-temporal accesses.

As before, not double scrubbing will further improve things.

> I think in cases where we don't know how the page is going to be
> used subsequently, we ought to favor latency over cache pollution
> avoidance.

I broadly agree.=C2=A0 I think the cases where its reasonably safe to use t=
he
pollution-avoidance are fairly obvious, and there is a steep cost to
wrongly-using non-temporal accesses.

> But in cases where we know the subsequent usage pattern,
> we may want to direct scrubbing / zeroing accordingly. Yet of
> course it's not very helpful that there's no way to avoid
> polluting caches and still have reasonably low latency, so using
> some heuristics may be unavoidable.

I don't think any heuristics beyond current, or possibly
d->creation_finished are going to be worthwhile, but I think these alone
can net us a decent win.

> And of course another goal of mine would be to avoid double zeroing
> of pages: When scrubbing uses clear_page() anyway, there's no point
> in the caller then calling clear_page() again. IMO, just like we
> have xzalloc(), we should also have MEMF_zero. Internally the page
> allocator can know whether a page was already scrubbed, and it
> does know for sure whether scrubbing means zeroing.

I think we've discussed this before.=C2=A0 I'm in favour, but I'm absolutel=
y
certain that that wants be spelled MEMF_dirty (or equiv), so forgetting
it fails safe, and code which is using dirty allocations is clearly
identified and can be audited easily.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:22:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:22:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111415.213098 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4l5-0005jf-7Z; Thu, 15 Apr 2021 16:22:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111415.213098; Thu, 15 Apr 2021 16:22: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 1lX4l5-0005jY-4a; Thu, 15 Apr 2021 16:22:23 +0000
Received: by outflank-mailman (input) for mailman id 111415;
 Thu, 15 Apr 2021 16:22:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EEd9=JM=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lX4l3-0005jM-96
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 16:22:21 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 982fdcd8-68fd-4fd7-ac22-1de86a65d654;
 Thu, 15 Apr 2021 16:22:20 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lX4l0-0008OK-Q6; Thu, 15 Apr 2021 16:22: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: 982fdcd8-68fd-4fd7-ac22-1de86a65d654
Date: Thu, 15 Apr 2021 17:22:18 +0100
From: Tim Deegan <tim@xen.org>
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>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>
Subject: Re: [PATCH v2 03/12] x86/mm: the gva_to_gfn() hook is HVM-only
Message-ID: <YHhoOkSSsoZ7jthP@deinos.phlegethon.org>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <ff26a66b-3cee-5f92-01a4-6096e7d28556@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <ff26a66b-3cee-5f92-01a4-6096e7d28556@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 16:07 +0200 on 12 Apr (1618243630), Jan Beulich wrote:
> As is the adjacent ga_to_gfn() one as well as paging_gva_to_gfn().
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Tim Deegan <tim@xen.org>


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:22:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:22:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111418.213110 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4lK-0005pT-Kf; Thu, 15 Apr 2021 16:22:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111418.213110; Thu, 15 Apr 2021 16: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 1lX4lK-0005pM-HQ; Thu, 15 Apr 2021 16:22:38 +0000
Received: by outflank-mailman (input) for mailman id 111418;
 Thu, 15 Apr 2021 16:22:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EEd9=JM=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lX4lJ-0005pA-HA
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 16:22:37 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ca6d4e66-28b9-4107-a8f1-3a0fab6e7eb1;
 Thu, 15 Apr 2021 16:22:36 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lX4lI-0008OY-6G; Thu, 15 Apr 2021 16:22: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: ca6d4e66-28b9-4107-a8f1-3a0fab6e7eb1
Date: Thu, 15 Apr 2021 17:22:36 +0100
From: Tim Deegan <tim@xen.org>
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>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>
Subject: Re: [PATCH v2 11/12] x86/p2m: write_p2m_entry_{pre,post} hooks are
 HVM-only
Message-ID: <YHhoTDlVhAA9SFKu@deinos.phlegethon.org>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <507182a8-38c3-cda3-d921-7494a5df63a7@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <507182a8-38c3-cda3-d921-7494a5df63a7@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 16:13 +0200 on 12 Apr (1618244032), Jan Beulich wrote:
> Move respective shadow code to its HVM-only source file, thus making it
> possible to exclude the hooks as well. This then shows that
> shadow_p2m_init() also isn't needed in !HVM builds.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Tim Deegan <tim@xen.org>


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:28:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:28:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111428.213122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4rA-0006AS-8c; Thu, 15 Apr 2021 16:28:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111428.213122; Thu, 15 Apr 2021 16: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 1lX4rA-0006AL-5E; Thu, 15 Apr 2021 16:28:40 +0000
Received: by outflank-mailman (input) for mailman id 111428;
 Thu, 15 Apr 2021 16:28: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 1lX4r9-0006AD-0k; Thu, 15 Apr 2021 16:28: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 1lX4r8-0004Pt-Pa; Thu, 15 Apr 2021 16:28: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 1lX4r8-0003KH-Fw; Thu, 15 Apr 2021 16:28:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lX4r8-0007SB-FW; Thu, 15 Apr 2021 16: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=6rrJdOhPT5DZhskjrf+RFcsBB2/AGmIgjA/H7fQdpzQ=; b=WUjwIU6Z/xwQVQmbGeTJVKgoFx
	saOTzs5Bui1HCXQ1OAvyMc8rb5/UuC4NPx7nQvqypdoKIKuSIwGbBueLqV/sbv2eMd+pn42URmG4m
	duWCGe7EPrDocl6P4t1u/t35b4FPjq9uvGpjyUPh0bD7Mj1KB0SE/Z7Dcw4i7Gi4vVS4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161151-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161151: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 16:28:38 +0000

flight 161151 xen-4.12-testing real [real]
flight 161173 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161151/
http://logs.test-lab.xenproject.org/osstest/logs/161173/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161124 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 161124 pass in 161151
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161124

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-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-vhd 14 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-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
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   58 days
Failing since        160128  2021-03-18 14:36:18 Z   28 days   35 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   26 days   33 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 16:31:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 16:31:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111433.213136 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4tp-00071t-PP; Thu, 15 Apr 2021 16:31:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111433.213136; Thu, 15 Apr 2021 16:31:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX4tp-00071m-MN; Thu, 15 Apr 2021 16:31:25 +0000
Received: by outflank-mailman (input) for mailman id 111433;
 Thu, 15 Apr 2021 16:31: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 1lX4to-00071e-60; Thu, 15 Apr 2021 16:31: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 1lX4tn-0004UR-UB; Thu, 15 Apr 2021 16:31: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 1lX4tn-0003Nd-ND; Thu, 15 Apr 2021 16:31:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lX4tn-0000to-Mi; Thu, 15 Apr 2021 16:31:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=1994qxJezLtvub3ACalghDUFqCtRLLLciofrY9hXsxU=; b=LMqg0IDZmzgieL5taN/lRnx+Wz
	1CYpzf/DwwnYXilfa/DgIWt5WSF9W/2BdptXaBalpAVWwzdMN90kBCo2j10zD6nYJBIt7OY0kqxyg
	wVwS6/pxzRlnueL6wHI/tk3KyDjGypMUCe2MGhiwDdQOZ5lNvr5g+4IFlM6YUBz9BE3g=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161169-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161169: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=7cc8cd7b588964348013a3a01edf38c0182eca10
X-Osstest-Versions-That:
    ovmf=2ad22420a710dc07e3b644f91a5b55c09c39ecf3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 16:31:23 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 7cc8cd7b588964348013a3a01edf38c0182eca10
baseline version:
 ovmf                 2ad22420a710dc07e3b644f91a5b55c09c39ecf3

Last test of basis   161159  2021-04-15 05:25:16 Z    0 days
Testing same since   161169  2021-04-15 12:40:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abner Chang <abner.chang@hpe.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   2ad22420a7..7cc8cd7b58  7cc8cd7b588964348013a3a01edf38c0182eca10 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 17:17:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 17:17:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111440.213152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX5c4-0002Yk-CB; Thu, 15 Apr 2021 17:17:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111440.213152; Thu, 15 Apr 2021 17: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 1lX5c4-0002Yd-8Y; Thu, 15 Apr 2021 17:17:08 +0000
Received: by outflank-mailman (input) for mailman id 111440;
 Thu, 15 Apr 2021 17:17: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 1lX5c3-0002YY-Pi
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 17:17: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 1lX5c3-0005Fh-Ee; Thu, 15 Apr 2021 17:17:07 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lX5c3-0007ja-6U; Thu, 15 Apr 2021 17:17: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=FtpiYvwaV35MTuaioH/zUPTNobvubeCSJAJbMaENIbk=; b=N849VEWRhGSAAOPLx2XIY11lEG
	FSCJjxr0lKhHtyVuyO7qUs04B6rbWfK+0ZUdT4pG6qQZuVUD/kNc2QRiSn8bdMyGPH/zrXm7iuLeC
	9bJfMIy47NLFONk1zIFzfkYMdCKshScj33iytpLW8Fi8Uiy01n8B0HYy7g0tBCllDh6c=;
Subject: Re: [PATCH v4 2/4] xen/arm: Handle cases when hardware_domain is NULL
To: Stefano Stabellini <sstabellini@kernel.org>,
 Luca Fancellu <luca.fancellu@arm.com>
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <rahul.singh@arm.com>
References: <20210414091404.14215-1-luca.fancellu@arm.com>
 <20210414091404.14215-3-luca.fancellu@arm.com>
 <3424d24f-b189-c125-7b84-96848bbdcfd7@xen.org>
 <04326BA4-6E73-44BA-AB19-8F2B99000D8B@arm.com>
 <269e20a7-9f2c-f989-0ea0-7ab6c6bb9c11@xen.org>
 <F5760FAD-466F-46EC-A3A4-BAC2B5E73BC8@arm.com>
 <alpine.DEB.2.21.2104141334270.4885@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <e4d32712-3e02-10e6-3273-a8d0253ffcd7@xen.org>
Date: Thu, 15 Apr 2021 18:17:05 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104141334270.4885@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

On 14/04/2021 21:35, Stefano Stabellini wrote:
> On Wed, 14 Apr 2021, Luca Fancellu wrote:
>>> On 14 Apr 2021, at 14:45, Julien Grall <julien@xen.org> wrote:
>>>
>>> Hi Luca,
>>>
>>> On 14/04/2021 12:29, Luca Fancellu wrote:
>>>>> On 14 Apr 2021, at 12:16, Julien Grall <julien@xen.org> wrote:
>>>>>
>>>>> Hi Luca,
>>>>>
>>>>> On 14/04/2021 10:14, Luca Fancellu wrote:
>>>>>> Among the common and arm codebase there are few cases where
>>>>>> the hardware_domain variable is checked to see if the current
>>>>>> domain is equal to the hardware_domain, change this cases to
>>>>>> use is_hardware_domain() function instead. >
>>>>>> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
>>>>>> ---
>>>>>> v4 changes:
>>>>>> - removed unneeded check for domain NULL from is_hardware_domain
>>>>>>    introduced in v3
>>>>>
>>>>> After this change, this patch is only avoid to open-code is_hardware_domain(). Although, it adds an extra speculation barrier.
>>>>>
>>>>> I am not against the change, however I think the commit message needs to updated to match what the patch is doing.
>>>>>
>>>>> Can you propose a new commit message?
>>>> Hi Julien,
>>>> Yes I agree, what about:
>>>> xen/arm: Reinforce use of is_hardware_domain
>>>> Among the common and arm codebase there are few cases where
>>>
>>> I would drop 'common' because you are only modifying the arm codebase.
>>>
>>>> the hardware_domain variable is checked to see if the current
>>>> domain is equal to the hardware_domain, change this cases to
>>>> use is_hardware_domain() function instead.
>>>
>>>
>>>> In the eventuality that hardware_domain is NULL, is_hardware_domain
>>>> will return false because an analysis of the common and arm codebase
>>>> shows that is_hardware_domain is called always with a non NULL
>>>> domain pointer.
>>>
>>> This paragraph seems to come out of the blue. I would drop it.
>>>
>>> How about:
>>>
>>> "
>>> There are a few places on Arm where we use pretty much an open-coded version of is_hardware_domain(). The main difference, is the helper will also block speculation (not yet implemented on Arm).
>>>
>>> The existing users are not in hot path, so blocking speculation would not hurt when it is implemented. So remove the open-coded version within the arm codebase.
>>> "
>>>
>>> If you are happy with the commit message, I will commit it the series tomorrow (to give an opportunity to Stefano to review).
>>>
>>
>> Hi Julien,
>>
>> Yes your version is much better, thank you very much!
> 
> It looks great, thanks for your work on this!

I have committed the series. Thanks for the work!

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 18:24:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 18:24:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111459.213198 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX6eg-0000kI-VQ; Thu, 15 Apr 2021 18:23:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111459.213198; Thu, 15 Apr 2021 18:23: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 1lX6eg-0000kB-SU; Thu, 15 Apr 2021 18:23:54 +0000
Received: by outflank-mailman (input) for mailman id 111459;
 Thu, 15 Apr 2021 18:23: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 1lX6ef-0000jz-2c; Thu, 15 Apr 2021 18:23: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 1lX6ee-0006Na-MZ; Thu, 15 Apr 2021 18:23: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 1lX6ee-0000XS-BF; Thu, 15 Apr 2021 18:23:52 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lX6ee-0006h6-Ak; Thu, 15 Apr 2021 18:23: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=B7oObXX/simdGvh47/uxYvFPBrVygzWwsudxMIHzDSI=; b=Oizlwtu/t3AxN1znDiGKFFtRpG
	2jx9gqNyjapoX6gFoP6fz7FGByyh75oRgOC1aF/TbecSjbEqGgG1qjKGzA2T/1ya1um3kHIta5ET6
	6D9XxntkbH/6WjzrYNYC9voPpOpn8hWK3HNqXfy2tHyQVMeeV9pbP0BxaoAWtW5Xwj2E=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161153-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161153: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd: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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl: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: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-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=264aa183ad85b2779b27d1312724a291259ccc9f
X-Osstest-Versions-That:
    xen=264aa183ad85b2779b27d1312724a291259ccc9f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 18:23:52 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-rtds 20 guest-localmigrate/x10 fail in 161117 pass in 161153
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 161117 pass in 161153
 test-amd64-amd64-examine      4 memdisk-try-append         fail pass in 161117

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

version targeted for testing:
 xen                  264aa183ad85b2779b27d1312724a291259ccc9f
baseline version:
 xen                  264aa183ad85b2779b27d1312724a291259ccc9f

Last test of basis   161153  2021-04-15 01:52: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                 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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Thu Apr 15 21:29:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 21:29:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111497.213249 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX9YG-00014o-Ry; Thu, 15 Apr 2021 21:29:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111497.213249; Thu, 15 Apr 2021 21:29:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lX9YG-00014h-O7; Thu, 15 Apr 2021 21:29:28 +0000
Received: by outflank-mailman (input) for mailman id 111497;
 Thu, 15 Apr 2021 21:29: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 1lX9YG-00014X-4i; Thu, 15 Apr 2021 21:29: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 1lX9YF-00010B-Vi; Thu, 15 Apr 2021 21:29: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 1lX9YF-0001Ye-NL; Thu, 15 Apr 2021 21:29:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lX9YF-0008Q0-Mv; Thu, 15 Apr 2021 21:29: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=jQnO69JBogGUwr43AuQieXZp8hHrBmMevnAcnEMKlq4=; b=k0RRtdYa6+WXQu9t2HHHNKSW7i
	C/k5ydLxPNKxlwup9b6vRKBBNAb6vgTvVB3I5gKSzTh1lO1pOZcrcnBBvuEVj4Xm28UeEstW09LaV
	2D0ze3t/ykWxVriESotMIcZhPSth10/11IDlC66A93pvB3H6qU/+uopKcOwUIQU4iflU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161179-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161179: 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=b53173e7cdafb7a318a239d557478fd73734a86a
X-Osstest-Versions-That:
    xen=3e9460ec93341fa6a80ecf99832aa5d9975339c9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 21:29:27 +0000

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

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                  b53173e7cdafb7a318a239d557478fd73734a86a
baseline version:
 xen                  3e9460ec93341fa6a80ecf99832aa5d9975339c9

Last test of basis   161167  2021-04-15 12:01:32 Z    0 days
Testing same since   161179  2021-04-15 18:00:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Frédéric Pierret <frederic.pierret@qubes-os.org>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Luca Fancellu <luca.fancellu@arm.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   3e9460ec93..b53173e7cd  b53173e7cdafb7a318a239d557478fd73734a86a -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 22:24:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 22:24:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111505.213263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXAPf-0006bt-7t; Thu, 15 Apr 2021 22:24:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111505.213263; Thu, 15 Apr 2021 22: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 1lXAPf-0006bm-3j; Thu, 15 Apr 2021 22:24:39 +0000
Received: by outflank-mailman (input) for mailman id 111505;
 Thu, 15 Apr 2021 22:24: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 1lXAPd-0006bM-PS; Thu, 15 Apr 2021 22:24: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 1lXAPd-0001t3-EE; Thu, 15 Apr 2021 22:24:37 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXAPd-0003X3-8e; Thu, 15 Apr 2021 22:24:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXAPd-0002fd-8E; Thu, 15 Apr 2021 22:24:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=S2726kdY1qy6Wyr5d8P0yMNAVsD3RSCiImemBckTyjo=; b=4X4UT+2jX1IUhJTQnAW2zqrEo0
	L5xsr3Y6dUXG+hHZyueItmHWEhWqpEV5N9KCGVwWpUBwtp+AEK4Cb2EnG4jwWy40TNXuTiHkMl6em
	9S7xtWURv9yJzdUaSg3bnhehtxU+D5GFpqqn5DUR8lyyw2J+BpI8+KksaRXruWvJ99iI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-amd64-xl-qemuu-debianhvm-amd64
Message-Id: <E1lXAPd-0002fd-8E@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 22:24:37 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-amd64-xl-qemuu-debianhvm-amd64
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161183/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-amd64.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-amd64.guest-saverestore --summary-out=tmp/161183.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-xl-qemuu-debianhvm-amd64 guest-saverestore
Searching for failure / basis pass:
 161147 fail [host=pinot0] / 160125 [host=fiano0] 160119 [host=godello1] 160113 [host=chardonnay0] 160104 [host=fiano1] 160097 [host=pinot1] 160091 [host=godello0] 160088 [host=elbling0] 160082 [host=albana0] 160079 [host=albana1] 160070 [host=chardonnay1] 160066 [host=chardonnay0] 160002 [host=huxelrebe1] 159947 [host=godello0] 159926 [host=elbling0] 159911 [host=fiano0] 159898 [host=albana0] 159888 [host=godello1] 159878 [host=godello0] 159869 [host=chardonnay1] 159860 [host=albana1] 159853 [h\
 ost=elbling1] 159848 [host=huxelrebe1] 159842 [host=elbling0] 159834 [host=godello0] 159828 ok.
Failure / basis pass flights: 161147 / 159828
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 037090cb7c0063bcb7788982cab73bf7c5b66924 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#ef91b07388e1c0a50c604e5350eeda98428ccea6-037090cb7c0063bcb7788982cab73bf7c5b66924 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#cb90ecf9349198558569f6c86c4c27d215406095-8fe9f1f891eff4e37f82622b7480ee748bf4af74 git://xenbits.xen.org/osstest/seabios.git#ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#243036df0d55673de59c214e240b9b914d278b65-264aa183ad85b2779b27d1312724a291259ccc9f
>From git://cache:9419/git://xenbits.xen.org/xen
   3e9460ec93..b53173e7cd  smoke      -> origin/smoke
Loaded 43106 nodes in revision graph
Searching for test results:
 159828 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
 159834 [host=godello0]
 159842 [host=elbling0]
 159848 [host=huxelrebe1]
 159853 [host=elbling1]
 159860 [host=albana1]
 159869 [host=chardonnay1]
 159878 [host=godello0]
 159888 [host=godello1]
 159898 [host=albana0]
 159911 [host=fiano0]
 159926 [host=elbling0]
 159947 [host=godello0]
 160002 [host=huxelrebe1]
 160048 []
 160050 []
 160057 []
 160062 []
 160064 []
 160066 [host=chardonnay0]
 160070 [host=chardonnay1]
 160079 [host=albana1]
 160082 [host=albana0]
 160088 [host=elbling0]
 160091 [host=godello0]
 160097 [host=pinot1]
 160104 [host=fiano1]
 160113 [host=chardonnay0]
 160119 [host=godello1]
 160125 [host=fiano0]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail irrelevant
 160748 fail irrelevant
 160779 fail irrelevant
 160801 fail irrelevant
 160827 fail irrelevant
 160851 fail irrelevant
 160883 fail irrelevant
 160916 fail irrelevant
 160980 fail irrelevant
 161050 fail irrelevant
 161111 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
 161112 fail irrelevant
 161115 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161118 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161088 fail irrelevant
 161120 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161122 fail irrelevant
 161126 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 69259911f948ad2755bd1f2c999dd60ac322c890 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161127 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161130 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161132 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2e51b27fed31eb7b2a2cb4245806c8c7859207f7 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0693602a23276b076a679b1e7ed9125a444336b6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161133 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161135 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161137 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161138 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 51204c2f188ec1e2a38f14718d38a3772f850a4b b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161142 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 773b0bc2838ede154c6de9d78401b91fafa91062 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5e8892db93f3fb6a7221f2d47f3c952a7e489737 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161143 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8e6bc6cdc82d45f203bc9fc4342c0452214c74fe b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161144 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 757acb9a8295e8be4a37b2cfc1cd947e357fd29c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161145 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9abda42bf2f5aa6ef403d3140fd3d7d88e8064e9 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 893103e286ac1c500d2ad113f55c41edb35e047c
 161121 fail irrelevant
 161146 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 0570d7f276dd20a3adee80ca44a5fe7daf7566cd
 161148 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
 161149 fail irrelevant
 161152 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 edd46cd407ea4a0adaa8d6ca86f550c2a4d5c507 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a557b00469bca61a058fc1db4855503cac1c3219 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 4e01c48886d9fbfee3bf7e481c4529a176331c78
 161155 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1941858448e76f83eb00614c4f34ac29e9a8e792 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 0570d7f276dd20a3adee80ca44a5fe7daf7566cd
 161156 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 edd46cd407ea4a0adaa8d6ca86f550c2a4d5c507 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 65a9d3807e9a0ffd9f9719416a07be41b6f39e94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
 161158 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 94fa95c8746c553324e8b69ea4a74af670075324 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e4341623a3b87e7eca87d42b7b88da967cd21c49 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 60c0444fae2148452f9ed0b7c49af1fa41f8f522
 161160 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d1929069e355afb809a50a7f6b6affdea399cc8c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 368096b9c4a273be58dd897e996e3e010bcfc21b
 161162 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b6d5996706ddb6082e3ea8de79849bfecf2aaa15 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e31b3a5c34c6e5be7ef60773e607f189eaa15f3 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161163 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161164 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ee2e67da8f882fcdef2c49fcc58e9962aa695f5a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161165 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f9c53a69edeb94ae8c65276b885c1a7efe4f613a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161166 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 283d845c9164f57f5dba020a4783bb290493802f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161168 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8becb36063fb14df1e3ae4916215667e2cb65fa2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 037090cb7c0063bcb7788982cab73bf7c5b66924 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161170 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161172 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 037090cb7c0063bcb7788982cab73bf7c5b66924 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161174 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161178 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161181 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161182 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161183 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 159828 (pass), for basis pass
 Result found: flight 161147 (fail), for basis failure (at ancestor ~3)
 Repro found: flight 161148 (pass), for basis pass
 Repro found: flight 161172 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 161170 (pass), for last pass
 Result found: flight 161174 (fail), for first failure
 Repro found: flight 161178 (pass), for last pass
 Repro found: flight 161181 (fail), for first failure
 Repro found: flight 161182 (pass), for last pass
 Repro found: flight 161183 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161183/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.739278 to fit
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-debianhvm-amd64.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
161183: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail baseline untested


jobs:
 test-amd64-amd64-xl-qemuu-debianhvm-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 Thu Apr 15 22:32:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 22:32:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111515.213282 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXAXM-0007eK-9D; Thu, 15 Apr 2021 22:32:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111515.213282; Thu, 15 Apr 2021 22: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 1lXAXM-0007eD-6F; Thu, 15 Apr 2021 22:32:36 +0000
Received: by outflank-mailman (input) for mailman id 111515;
 Thu, 15 Apr 2021 22:32:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=clmd=JM=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lXAXL-0007e8-KB
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 22:32:35 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2d6c84b4-9ef6-4ebb-b8f5-5d01052538de;
 Thu, 15 Apr 2021 22:32:34 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id CE9E4610FB;
 Thu, 15 Apr 2021 22:32: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: 2d6c84b4-9ef6-4ebb-b8f5-5d01052538de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618525954;
	bh=Yco3/ZrSA35N5drUJsJpua5yUrh1ZrhfpMmLaz+V8H0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=MHyw0xOPXDyc52Zw/pF2IOjef0BKgGi2LRvoReHN7Ccc8IHiwFPpgh7N7md0S0HeT
	 7gcCfipl+yFZ8UmnsM4YYZL6uhMOD+wQpxfXNU0sdUKxWi7RX5ENWPgwHhO+zu1PEu
	 lBosEP7gU8JM4jKVqJbmQidQlrR1LDP0HjF+7fvSZZqWLPqZGeBMCOhCy03KZqQnTd
	 3lS3Qto9W3Xo3oUeusMHdwP54PGHKxsTF74eUWOecJHkoZim0oM5OUlyZJyvsu4O+q
	 gdD6a71BelxhDdN5W4mLgyD+RJ23L22QKgXrB/colSpethnUloHlJnxKSoysJ5C3Aj
	 Jwvu3r4ORR2bw==
Date: Thu, 15 Apr 2021 15:32:33 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Julien Grall <julien@xen.org>
cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, 
    Julien Grall <jgrall@amazon.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Julien Grall <julien@amazon.com>
Subject: Re: [PATCH] xen/arm: guest_walk: Only generate necessary
 offsets/masks
In-Reply-To: <20210405162046.9353-1-julien@xen.org>
Message-ID: <alpine.DEB.2.21.2104151532190.4885@sstabellini-ThinkPad-T480s>
References: <20210405162046.9353-1-julien@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 5 Apr 2021, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> At the moment, we are computing offsets/masks for each level and
> granularity. This is a bit of waste given that we only need to
> know the offsets/masks for the granularity used by the guest.
> 
> All the LPAE information can easily be inferred with just the
> page shift for a given granularity and the level.
> 
> So rather than providing a set of helpers per granularity, we can
> provide a single set that takes the granularity and the level in
> parameters.
> 
> With the new helpers in place, we can rework guest_walk_ld() to
> only compute necessary information.
> 
> Signed-off-by: Julien Grall <julien@amazon.com>

Very nice!!

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


> ---
>  xen/arch/arm/guest_walk.c  | 37 ++---------------
>  xen/include/asm-arm/lpae.h | 82 +++++++++++++-------------------------
>  2 files changed, 30 insertions(+), 89 deletions(-)
> 
> diff --git a/xen/arch/arm/guest_walk.c b/xen/arch/arm/guest_walk.c
> index b4496c4c86c6..87de40d0cb68 100644
> --- a/xen/arch/arm/guest_walk.c
> +++ b/xen/arch/arm/guest_walk.c
> @@ -372,38 +372,6 @@ static bool guest_walk_ld(const struct vcpu *v,
>      register_t tcr = READ_SYSREG(TCR_EL1);
>      struct domain *d = v->domain;
>  
> -#define OFFSETS(gva, gran)              \
> -{                                       \
> -    zeroeth_table_offset_##gran(gva),   \
> -    first_table_offset_##gran(gva),     \
> -    second_table_offset_##gran(gva),    \
> -    third_table_offset_##gran(gva)      \
> -}
> -
> -    const paddr_t offsets[3][4] = {
> -        OFFSETS(gva, 4K),
> -        OFFSETS(gva, 16K),
> -        OFFSETS(gva, 64K)
> -    };
> -
> -#undef OFFSETS
> -
> -#define MASKS(gran)                     \
> -{                                       \
> -    zeroeth_size(gran) - 1,             \
> -    first_size(gran) - 1,               \
> -    second_size(gran) - 1,              \
> -    third_size(gran) - 1                \
> -}
> -
> -    static const paddr_t masks[3][4] = {
> -        MASKS(4K),
> -        MASKS(16K),
> -        MASKS(64K)
> -    };
> -
> -#undef MASKS
> -
>      static const unsigned int grainsizes[3] = {
>          PAGE_SHIFT_4K,
>          PAGE_SHIFT_16K,
> @@ -519,7 +487,7 @@ static bool guest_walk_ld(const struct vcpu *v,
>           * Add offset given by the GVA to the translation table base address.
>           * Shift the offset by 3 as it is 8-byte aligned.
>           */
> -        paddr |= offsets[gran][level] << 3;
> +        paddr |= LPAE_TABLE_INDEX_GS(grainsizes[gran], level, gva) << 3;
>  
>          /* Access the guest's memory to read only one PTE. */
>          ret = access_guest_memory_by_ipa(d, paddr, &pte, sizeof(lpae_t), false);
> @@ -572,7 +540,8 @@ static bool guest_walk_ld(const struct vcpu *v,
>  
>      /* Make sure that the lower bits of the PTE's base address are zero. */
>      mask = GENMASK_ULL(47, grainsizes[gran]);
> -    *ipa = (pfn_to_paddr(pte.walk.base) & mask) | (gva & masks[gran][level]);
> +    *ipa = (pfn_to_paddr(pte.walk.base) & mask) |
> +        (gva & (LEVEL_SIZE_GS(grainsizes[gran], level) - 1));
>  
>      /*
>       * Set permissions so that the caller can check the flags by herself. Note
> diff --git a/xen/include/asm-arm/lpae.h b/xen/include/asm-arm/lpae.h
> index 4797f9cee494..e94de2e7d8e8 100644
> --- a/xen/include/asm-arm/lpae.h
> +++ b/xen/include/asm-arm/lpae.h
> @@ -160,63 +160,35 @@ static inline bool lpae_is_superpage(lpae_t pte, unsigned int level)
>  #define lpae_set_mfn(pte, mfn)  ((pte).walk.base = mfn_x(mfn))
>  
>  /*
> - * AArch64 supports pages with different sizes (4K, 16K, and 64K). To enable
> - * page table walks for various configurations, the following helpers enable
> - * walking the translation table with varying page size granularities.
> + * AArch64 supports pages with different sizes (4K, 16K, and 64K).
> + * Provide a set of generic helpers that will compute various
> + * information based on the page granularity.
> + *
> + * Note the parameter 'gs' is the page shift of the granularity used.
> + * Some macro will evaluate 'gs' twice rather than storing in a
> + * variable. This is to allow using the macros in assembly.
> + */
> +
> +/*
> + * Granularity | PAGE_SHIFT | LPAE_SHIFT
> + * -------------------------------------
> + * 4K          | 12         | 9
> + * 16K         | 14         | 11
> + * 64K         | 16         | 13
> + *
> + * This is equivalent to LPAE_SHIFT = PAGE_SHIFT - 3
>   */
> +#define LPAE_SHIFT_GS(gs)         ((gs) - 3)
> +#define LPAE_ENTRIES_GS(gs)       (_AC(1, U) << LPAE_SHIFT_GS(gs))
> +#define LPAE_ENTRIES_MASK_GS(gs)  (LPAE_ENTRIES_GS(gs) - 1)
> +
> +#define LEVEL_ORDER_GS(gs, lvl)   ((3 - (lvl)) * LPAE_SHIFT_GS(gs))
> +#define LEVEL_SHIFT_GS(gs, lvl)   (LEVEL_ORDER_GS(gs, lvl) + (gs))
> +#define LEVEL_SIZE_GS(gs, lvl)    (_AT(paddr_t, 1) << LEVEL_SHIFT_GS(gs, lvl))
>  
> -#define LPAE_SHIFT_4K           (9)
> -#define LPAE_SHIFT_16K          (11)
> -#define LPAE_SHIFT_64K          (13)
> -
> -#define lpae_entries(gran)      (_AC(1,U) << LPAE_SHIFT_##gran)
> -#define lpae_entry_mask(gran)   (lpae_entries(gran) - 1)
> -
> -#define third_shift(gran)       (PAGE_SHIFT_##gran)
> -#define third_size(gran)        ((paddr_t)1 << third_shift(gran))
> -
> -#define second_shift(gran)      (third_shift(gran) + LPAE_SHIFT_##gran)
> -#define second_size(gran)       ((paddr_t)1 << second_shift(gran))
> -
> -#define first_shift(gran)       (second_shift(gran) + LPAE_SHIFT_##gran)
> -#define first_size(gran)        ((paddr_t)1 << first_shift(gran))
> -
> -/* Note that there is no zeroeth lookup level with a 64K granule size. */
> -#define zeroeth_shift(gran)     (first_shift(gran) + LPAE_SHIFT_##gran)
> -#define zeroeth_size(gran)      ((paddr_t)1 << zeroeth_shift(gran))
> -
> -#define TABLE_OFFSET(offs, gran)      (offs & lpae_entry_mask(gran))
> -#define TABLE_OFFSET_HELPERS(gran)                                          \
> -static inline paddr_t third_table_offset_##gran##K(paddr_t va)              \
> -{                                                                           \
> -    return TABLE_OFFSET((va >> third_shift(gran##K)), gran##K);             \
> -}                                                                           \
> -                                                                            \
> -static inline paddr_t second_table_offset_##gran##K(paddr_t va)             \
> -{                                                                           \
> -    return TABLE_OFFSET((va >> second_shift(gran##K)), gran##K);            \
> -}                                                                           \
> -                                                                            \
> -static inline paddr_t first_table_offset_##gran##K(paddr_t va)              \
> -{                                                                           \
> -    return TABLE_OFFSET((va >> first_shift(gran##K)), gran##K);             \
> -}                                                                           \
> -                                                                            \
> -static inline paddr_t zeroeth_table_offset_##gran##K(paddr_t va)            \
> -{                                                                           \
> -    /* Note that there is no zeroeth lookup level with 64K granule sizes. */\
> -    if ( gran == 64 )                                                       \
> -        return 0;                                                           \
> -    else                                                                    \
> -        return TABLE_OFFSET((va >> zeroeth_shift(gran##K)), gran##K);       \
> -}                                                                           \
> -
> -TABLE_OFFSET_HELPERS(4);
> -TABLE_OFFSET_HELPERS(16);
> -TABLE_OFFSET_HELPERS(64);
> -
> -#undef TABLE_OFFSET
> -#undef TABLE_OFFSET_HELPERS
> +/* Offset in the table at level 'lvl' */
> +#define LPAE_TABLE_INDEX_GS(gs, lvl, addr)   \
> +    (((addr) >> LEVEL_SHIFT_GS(gs, lvl)) & LPAE_ENTRIES_MASK_GS(gs))
>  
>  /* Generate an array @var containing the offset for each level from @addr */
>  #define DECLARE_OFFSETS(var, addr)          \
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 22:34:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 22:34:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111519.213294 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXAYh-0007l5-Mi; Thu, 15 Apr 2021 22:33:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111519.213294; Thu, 15 Apr 2021 22:33: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 1lXAYh-0007ky-II; Thu, 15 Apr 2021 22:33:59 +0000
Received: by outflank-mailman (input) for mailman id 111519;
 Thu, 15 Apr 2021 22:33:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ByZD=JM=gmail.com=christopher.w.clark@srs-us1.protection.inumbo.net>)
 id 1lXAYg-0007kq-D2
 for xen-devel@lists.xenproject.org; Thu, 15 Apr 2021 22:33:58 +0000
Received: from mail-oi1-x235.google.com (unknown [2607:f8b0:4864:20::235])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f58cb268-38cb-448b-a700-20650fd0b951;
 Thu, 15 Apr 2021 22:33:57 +0000 (UTC)
Received: by mail-oi1-x235.google.com with SMTP id d12so25897936oiw.12
 for <xen-devel@lists.xenproject.org>; Thu, 15 Apr 2021 15:33: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: f58cb268-38cb-448b-a700-20650fd0b951
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=FV+gdqUn0A036xmpndUBZcIkZFxF01wHkgn1UQCMFrQ=;
        b=ElSAmkoRHFPwfz9iTj+VjDS414UiRd3U3fzWYBDWCJKojcoOEGNXaYNsdBWu1DLR/F
         13KNZBKqcOJ+XkUgTAnHRcazRCLeRkAMc81CfpXdC+Z0KvJPcgt3ENeMYL3BA1e/VYvu
         hrFRy1zuBThMloXd1z1VE5iXL6DwujilBb9TB1uAQgd8F/oGnUJoAb/8nXfo1QHXsHq2
         19zeqjmwx+u7w2v58Y74h2r33f8gKr/tmFTOAPKjQ/UzyHTrYagVxGa/4J0M9YJvI7MW
         EV1OOb260xb8Zy0OFF0GI76p0/GNZMJ2o205ykudVTpfF0U1nmd4+KK++8taO+SQ88ZA
         piqA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=FV+gdqUn0A036xmpndUBZcIkZFxF01wHkgn1UQCMFrQ=;
        b=olprYvg0FU4gauH+Qd6PMEGbhiZzvApylCpskvvps+84/tq2esYriw4cmUhkqTnM7R
         MTomAWLj0koUxgHzzeZq2xyG9b/TSmTPG2uYazrWb2AwH++NQgM+V+qSGh61LgweMRpa
         nRFIxcBOqpFkyrivwEeS4V0nZPsTaQZb8rQcVHrawVOGVX71IVU8W+h0LLRkdesOHyBJ
         c3RkkvcsRfrNeVmqI2wx+5hTPJ99Ipn2dWCxEEjcrLu0nOoJXyo/g5Y/+Ep7eNRKSbHN
         pDiej62PRYeX8+q8jOJGwc4tJncb/7XdNfddTqV3igl01P/Cg6x277uMVhT8vIu9ueoz
         q7Hg==
X-Gm-Message-State: AOAM530BP1wsYiM9QNFG1knQDPby/4rrUSS+oDItJotbm376hBi3R/8F
	WBAz6Wof1LdHyRLl3TPjgGu1WTOz567uopw1uWE=
X-Google-Smtp-Source: ABdhPJzfvrejgbAE1Xf8wsZ9NPYxeaVqf6t1fFnffzc5c7NKwPiCspQi+TZxua9832f0vMI1Ix/3kCglqJL64ON3rKs=
X-Received: by 2002:aca:534d:: with SMTP id h74mr4177827oib.152.1618526036967;
 Thu, 15 Apr 2021 15:33:56 -0700 (PDT)
MIME-Version: 1.0
References: <20210316031814.10311-1-dpsmith@apertussolutions.com>
 <6314f50f-b4fc-e472-4c9a-3591e168d2c3@apertussolutions.com>
 <bd61f993-f719-ec87-638f-f53d6e983c3e@suse.com> <CACMJ4GY1QpTYUYV5oG5zOfah_PzPq_-__K3-F3qUfzX95R3w8g@mail.gmail.com>
 <2651d116-7c44-261e-8561-c9b3b5a4aab8@suse.com>
In-Reply-To: <2651d116-7c44-261e-8561-c9b3b5a4aab8@suse.com>
From: Christopher Clark <christopher.w.clark@gmail.com>
Date: Thu, 15 Apr 2021 15:33:45 -0700
Message-ID: <CACMJ4GbEEAkpA-aynWa=nw41HBxqENmx6NNXAhqmVxkTNB5kEw@mail.gmail.com>
Subject: Re: [PATCH 0/2] Introducing hyperlaunch capability design (formerly:
 DomB mode of dom0less)
To: Jan Beulich <jbeulich@suse.com>
Cc: "Daniel P. Smith" <dpsmith@apertussolutions.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Stefano Stabellini <stefano.stabellini@xilinx.com>, Julien Grall <jgrall@amazon.com>, 
	Julien Grall <Julien.grall.oss@gmail.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, 
	George Dunlap <george.dunlap@citrix.com>, Rich Persaud <persaur@gmail.com>, 
	Bertrand Marquis <Bertrand.Marquis@arm.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	luca.fancellu@arm.com, paul@xen.org, Adam Schwalm <adam.schwalm@starlab.io>, 
	xen-devel <xen-devel@lists.xenproject.org>
Content-Type: text/plain; charset="UTF-8"

On Wed, Apr 7, 2021 at 10:56 PM Jan Beulich <jbeulich@suse.com> wrote:
>
> On 07.04.2021 21:23, Christopher Clark wrote:
> > On Tue, Mar 30, 2021 at 7:31 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>
> >> On 16.03.2021 04:56, Daniel P. Smith wrote:
> >>> To assist in reading, please find attached rendered copies of the design
> >>> docs. It should be noted that due to poor rendering by pandoc, we forced
> >>> the tables to stay as ASCII tables in the patches whereas the attached
> >>> docs have the tables rendered properly by rst2pdf.
> >>
> >> In section 3.6 I found "As a result, on x86 the hyperlaunch capability does
> >> not rely on nor preclude any specific BIOS boot protocol, i.e legacy BIOS
> >> boot or UEFI boot. The only requirement is that the boot loader supports
> >> the Multiboot2 (MB2) protocol." I'm afraid the two sentences contradict
> >> one another, as UEFI on its own doesn't provide MB2 functionality. It is
> >> my understanding that you don't require this anyway - what you need is a
> >> way to load modules beyond just Dom0 kernel and an initrd.
> >
> > Thanks - we'll amend the doc. Given the already sizeable scope of the
> > project, our current approach for host UEFI is to recommend use of
> > GRUB.efi to load Xen and the initial domains via the multiboot2 method.
> >
> >> I'm also struggling to see how you mean to associate the (MB2) modules
> >> passed to Xen with the individual functions. I.e. I don't see how it will
> >> be ensure that the embedded mb-index is in sync with the order or modules
> >> actually supplied.
> >
> > To make sure I'm following the concern raised here, my understanding is:
> >
> > - the multiboot module list is ordered and stable, so that the order
> >   that the bootloader provides the modules in is the same order in which
> >   Xen receives them, in the multiboot data structure, so the modules can
> >   be referenced by an index into that list
>
> In a separate context (parallel ongoing discussion under "multiboot2
> and module2 boot issues via GRUB2") Andrew raised the (imo valid)
> point of this getting the more fragile the more modules there are.

It is a separate context though: ie. your (controversial!) proposal to
use the Xen command line to direct the hypervisor to concatenate
multiboot modules to form a single initrd before assembling a domain.

Boot via Multiboot2 relies on the positional correctness (ie. ordering)
of the modules supplied.

Andrew's first message in the thread describes Xen's longstanding
convention for handling the multiboot modules that it receives:

    Xen is capable of taking various things via modules, such as an
    XSM/Flask policy, or microcode, so has logic to identify these if
    present and separate them from "other stuff".  However, there is a
    hardcoded expectation that the first module is the dom0 kernel, and
    the next unrecognised module, if present, is *the* initrd.

We are proposing to make that hardcoded expectation become configurable
via the definition provided in the Launch Control Module. The modules
supplied will have to be correctly ordered, matching that definition.

Xen has behaviour today for when the boot materials are incorrect
(eg. when dom0 initrd is supplied before the dom0 kernel) and that is
reasonable, and the same can apply to misconfigured systems in future
too.

> > - for a given Launch Control Module file (expressed in a Device Tree, as
> >   described in our second design document), the provided multiboot
> >   modules will need to match, both in type (kernel, ramdisk, microcode,
> >   xsm policy) and order
>
> "Need to match" meaning what? You don't clarify how boot loader
> config and device tree blob are meant to be kept in sync.

A given Launch Control Module (or device tree blob) defines the
expectation for boot module ordering. The boot loader config needs to be
written with an awareness of that ordering.

Tooling to support that synchronization can be provided - as noted here:

> > - we think that at some point the LCM will end up being dynamically
> >   generated by an enlightened bootloader, assembling it from the
> >   bootloader config file, which will list the modules and their types

which should help address usability concerns.

> >> As to modules - iirc there are placement restrictions by at least some
> >> boot loaders (below 4Gb). If that's correct, do you have any thoughts
> >> towards dealing with the limited space available to hold these modules?
> >> I've seem systems with lots of memory, but with as little as just 1Gb
> >> below the 4Gb boundary.
> >
> > At this point, I don't think that we'll break anything that currently
> > works, and that hardware or platform limitations can always constrain
> > what is deployable.
>
> I'm not concerned of you breaking anything. I merely raised a possible
> scalability issue of your current proposal.

Fair. Thanks for the review.

Christopher


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 23:00:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 23:00:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111526.213306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXAxq-0001U7-Rp; Thu, 15 Apr 2021 22:59:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111526.213306; Thu, 15 Apr 2021 22: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 1lXAxq-0001U0-OW; Thu, 15 Apr 2021 22:59:58 +0000
Received: by outflank-mailman (input) for mailman id 111526;
 Thu, 15 Apr 2021 22:59:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXAxo-0001Tq-SQ; Thu, 15 Apr 2021 22:59:57 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXAxo-0002R6-J1; Thu, 15 Apr 2021 22:59: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 1lXAxo-0005Mv-8H; Thu, 15 Apr 2021 22:59:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXAxo-0005Cj-7m; Thu, 15 Apr 2021 22:59:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=FEx1r9ztJz6Yn8P9PnzDrMPDSOYhSBV67JhK/DlNN5I=; b=dQT6pNnHluOotaW88oV4e28OsE
	YmdtUTWXKakMHfJ+Dcsr562HgZSZw7CgtfC/8+F6O7o64of+IL95WuPqzz8GUtyJiE8bk/uK6+PKE
	NYj9wAEL+xWEFbCLlRpgNOA0ikQ0SafmBy4g9ToQfnIrWnc3iFBC57anpFz8/owX6vu8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161161-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161161: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=7f75285ca572eaabc028cf78c6ab5473d0d160be
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 22:59:56 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                7f75285ca572eaabc028cf78c6ab5473d0d160be
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  258 days
Failing since        152366  2020-08-01 20:49:34 Z  257 days  433 attempts
Testing same since   161161  2021-04-15 06:09:04 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1325826 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 23:47:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 23:47:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111536.213324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXBhU-0006Bq-RY; Thu, 15 Apr 2021 23:47:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111536.213324; Thu, 15 Apr 2021 23: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 1lXBhU-0006Bj-O4; Thu, 15 Apr 2021 23:47:08 +0000
Received: by outflank-mailman (input) for mailman id 111536;
 Thu, 15 Apr 2021 23:47: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 1lXBhT-0006Bb-I5; Thu, 15 Apr 2021 23:47: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 1lXBhT-0003Cz-AA; Thu, 15 Apr 2021 23:47: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 1lXBhS-0000OH-Vx; Thu, 15 Apr 2021 23:47:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXBhS-000501-VU; Thu, 15 Apr 2021 23:47: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=DgB2rwEaYTMfu6P288rZWDwNmQndyVfztZVHlMWm+H4=; b=YU0w5Fid4FtjHZxUcoB1MdJSge
	o3L5NiCxaeqsQVbx7v+/Ye/YXBHB4JZjcD9VJ+U6M9RmnpIvEsLXNN/c2TRLJyZI98taCVKi2iORV
	6lPjrJ87Y6r+ne5d8l8mr+91AjTPVD36Ue9pbGDvvDQa2uENUj1+3pgcFWbk5IgNn1vE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161177-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161177: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=90320d569b830666afc369992a507a61f0668534
X-Osstest-Versions-That:
    xtf=4288d41183a6a14f328504d8b206ea27e9981266
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 23:47:06 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  90320d569b830666afc369992a507a61f0668534
baseline version:
 xtf                  4288d41183a6a14f328504d8b206ea27e9981266

Last test of basis   161113  2021-04-14 01:40:17 Z    1 days
Testing same since   161177  2021-04-15 17:41:37 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
   4288d41..90320d5  90320d569b830666afc369992a507a61f0668534 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 15 23:58:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 15 Apr 2021 23:58:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111543.213341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXBs9-0007Fd-U3; Thu, 15 Apr 2021 23:58:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111543.213341; Thu, 15 Apr 2021 23:58: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 1lXBs9-0007FW-R7; Thu, 15 Apr 2021 23:58:09 +0000
Received: by outflank-mailman (input) for mailman id 111543;
 Thu, 15 Apr 2021 23: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 1lXBs8-0007FO-47; Thu, 15 Apr 2021 23: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 1lXBs7-0003Mz-VS; Thu, 15 Apr 2021 23:58: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 1lXBs7-0000sM-Md; Thu, 15 Apr 2021 23:58:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXBs7-0004sg-MB; Thu, 15 Apr 2021 23: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/hCH4pD/DVbZxQJGMKJTfBEHuhYUUF3yOLyRBoEMhfk=; b=1o19kjSY+jQ4oLw+scaEXan9j3
	Fisz3IfPCNBzArbc4DNBr2WZEUsPcHgB7NU0OvQPS4D9zj3GyLLN1mWyDNbbFCDwjSw8SXfhF3hmF
	hCHKipPlnWfdfnhCjNZ7MejgsOQvG1USg72IuHUDagQSIDBmLBPY0PnMViXI4lWiKd0A=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161176-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161176: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=3c13938079886e0e49031ab29a4f1ed7a4ceab68
X-Osstest-Versions-That:
    ovmf=7cc8cd7b588964348013a3a01edf38c0182eca10
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 15 Apr 2021 23:58:07 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 3c13938079886e0e49031ab29a4f1ed7a4ceab68
baseline version:
 ovmf                 7cc8cd7b588964348013a3a01edf38c0182eca10

Last test of basis   161169  2021-04-15 12:40:08 Z    0 days
Testing same since   161176  2021-04-15 16:40:13 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   7cc8cd7b58..3c13938079  3c13938079886e0e49031ab29a4f1ed7a4ceab68 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 02:01:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 02:01:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111553.213369 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXDnD-0000yE-4k; Fri, 16 Apr 2021 02:01:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111553.213369; Fri, 16 Apr 2021 02:01: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 1lXDnC-0000y6-Va; Fri, 16 Apr 2021 02:01:10 +0000
Received: by outflank-mailman (input) for mailman id 111553;
 Fri, 16 Apr 2021 02:01:10 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=tgR2=JN=invisiblethingslab.com=marmarek@srs-us1.protection.inumbo.net>)
 id 1lXDnC-0000y1-AT
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 02:01:10 +0000
Received: from out4-smtp.messagingengine.com (unknown [66.111.4.28])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id be0891ad-d479-450f-92fe-261c642593ef;
 Fri, 16 Apr 2021 02:01:09 +0000 (UTC)
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id BDED95C0065
 for <xen-devel@lists.xenproject.org>; Thu, 15 Apr 2021 22:01:08 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Thu, 15 Apr 2021 22:01:08 -0400
Received: from mail-itl (ip5b434f04.dynamic.kabel-deutschland.de [91.67.79.4])
 by mail.messagingengine.com (Postfix) with ESMTPA id 4A4EF24005A
 for <xen-devel@lists.xenproject.org>; Thu, 15 Apr 2021 22:01:08 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: be0891ad-d479-450f-92fe-261c642593ef
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=content-type:date:from:message-id
	:mime-version:subject:to:x-me-proxy:x-me-proxy:x-me-sender
	:x-me-sender:x-sasl-enc; s=fm2; bh=ER5ob46IhoIPdLqiOw6y/LsjmCgWz
	DAdOxZJUDKZVPg=; b=oSRXTBMyPh+qwovt+Oj5xN/0vrvG9WBxumUvnfWMz55JC
	GwokOBg/4FJ6z39iTymiOeiPsIw3/qSKyLccpAaOmWScpNgEG0LW7xtFtrwHYll9
	LYAw/T81lSCOdA8tAXrcWdVgBr1C7emFRG7C86xmmC/ckiW0Bft/TCveCh52nFui
	s28v00Zh1cVU5aEqstTjrMV+9NfWdlPxpcjgS9OLzx7jp0UnSYoglq35AZHiCvuJ
	V6IWTPGvA1ToFa3IE8BvS4Y7nL6FaO1RebfeW83yCeFOk8QKSfeZ6vwWpEPNZghE
	6UasxxOAMjpIqss36pNicZrOGODGMkhBVy4t3jGGw==
X-ME-Sender: <xms:5O94YFMonH2egrX4s3ulq86MmZstifeabbqstKzCyVM4_ObwVEsX2Q>
    <xme:5O94YH4-sVaKL55PGVhaAQV4zITfyAroNWQP8ZonPKftxdozGkA-45m4ma8xT2iSL
    hr95eAYRNxFcA>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrudelgedgheegucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvuffkgggtugesghdtreertd
    dtjeenucfhrhhomhepofgrrhgvkhcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhi
    uceomhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqne
    cuggftrfgrthhtvghrnhepgfdvfffhiedvvdejleejfeehvdegffduhfekveejffehudeg
    leeutdeuleejvdelnecuffhomhgrihhnpehkvghrnhgvlhdrohhrghdpmhgrrhhkmhgrih
    hlrdhorhhgpdhgihhthhhusgdrtghomhenucfkphepledurdeijedrjeelrdegnecuvehl
    uhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvg
    hksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:5O94YBLF6aioaKnJ-GHm_noIlHBzu9t_dlWIdpW0kUGWl18wv0oPwA>
    <xmx:5O94YJcB2vxvovtoJeA00DRAgpJd8U0rqq0DUg8ixYdZbGKZgqKC-g>
    <xmx:5O94YMdgc_5d4POVxTxa-RsOpHbJpRCN_ERdPD04LMarGwQaU5Q6lg>
    <xmx:5O94YNFC8y0fld-cJe0HhWuyerL1OmuSOIjYaotUPjjYoyMAu5IcQQ>
Date: Fri, 16 Apr 2021 04:01:03 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel <xen-devel@lists.xenproject.org>
Subject: Slow HVM start with direct kernel boot
Message-ID: <YHjv4DGpEmyJjpei@mail-itl>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="GYUzbTmlz0P1c9cp"
Content-Disposition: inline


--GYUzbTmlz0P1c9cp
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Fri, 16 Apr 2021 04:01:03 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel <xen-devel@lists.xenproject.org>
Subject: Slow HVM start with direct kernel boot

Hi,

I observe much slower HVM start time than PVH, on Xen 4.14. It is using
qemu in (linux) stubdomain and direct kernel boot. The overall
difference is ~50s vs ~20s on some not particularly new laptop. On a
newer one I get 24s vs 6s, but I choose to debug it on the older one, as
the difference is more apparent. My measurements are taken with `time
qvm-start <vmname>`, which includes some (constant time) preparation,
starting the domain via libvirt and then waiting until system is fully
started.

I've identified several factors:
1. qemu is running in stubdomain there - it needs to start, and also
   get all domU's disk attached - slowness of block script is doubled
   here (4 disks, configured as block devices so the simplest case - it
   takes nearly 2s to run all the scripts)
2. Linux in HVM takes 64MB for SWIOTLB, which is significant given the
   domU has 400MB in total - this makes later system startup slower
   (less page cache, some swapping)
3. Finally, there is a huge delay between starting qemu (actually,
   last line of SeaBIOS output) and first output from Linux - about 10s or
   more.

For part of the debugging I've switched to qemu in dom0 - which reduced
point 1 above, but other points still applies.

What I've got so far for the above:

1. Some solutions discussed in
https://lore.kernel.org/xen-devel/YGyCECo8O0rwS8Z5@mail-itl/ and
https://xen.markmail.org/thread/ytikjjbs4kpihzi5. I've made the simplest
test of replacing the whole block script with a one-liner xenstore-write
(no locking, no sharing check etc), but it didn't helped much.

2. I don't have PCI passthrough there. Is the SWIOTLB needed there? Can
I disable it (I know how to reduce its size with swiotlb=3D, but is there
an option for disabling?)

3. This one, I discussed on IRC today and Anthony gave me this link:
https://lore.kernel.org/xen-devel/20180216204031.000052e9@gmail.com/
I've applied the change to qemu (fw_cfg_init_io -> fw_cfg_init_io_dma),
without any mentioned further work, and it does wonders already. The
kernel loading time is reduced from 10-15s, down to 1-2s.

That said, I/O handling in qemu seems to be slow. For example, a large
amount of time is spent on locking/unlocking map-cache. I believe this
may add to subjectively HVM feeling slower than PVH. Here is 'perf'
report collected while domU was loading kernel (via fw_cfg apparently):
https://gist.github.com/marmarek/350158269b77ebb8492d7c9392db686f


--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

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

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

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmB47+AACgkQ24/THMrX
1yyA+Qf/e4NkxDojZqQs29TKY23p/i+WMVFnvTFyR9EpOvwCoF85gv8zrRXmiELZ
rd4GC5z3mm1XJ7HvTbc8I9bbrarI+A23U1c5iS4m5HjeSsZxFizH2aFNGWPQEP+L
2D94FOBrYMTDpQ6w5PcDSSU1oBKd1DqIyANkVPZxzaTWHuEgvKUoHy+IS3KlrUrl
u9nsVKYF2o10KJ/P4tN+1JHIuPWBl4tn7aLpdVKuDTypJzVimGAaZUw2467vnMns
ZgpY1AsUF0DN787D9IMELiDBOZ3gcdSclvs+Hv71UJxqvuaE9dWpOfO9byo9GHo6
MxY3s0m9tFBsxFa49PkR7bkH/e2jEQ==
=+Usq
-----END PGP SIGNATURE-----

--GYUzbTmlz0P1c9cp--


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 03:09:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 03:09:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111562.213387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXEr0-0006ni-9W; Fri, 16 Apr 2021 03:09:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111562.213387; Fri, 16 Apr 2021 03:09: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 1lXEr0-0006nb-5c; Fri, 16 Apr 2021 03:09:10 +0000
Received: by outflank-mailman (input) for mailman id 111562;
 Fri, 16 Apr 2021 03:09: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 1lXEqz-0006nT-0Y; Fri, 16 Apr 2021 03:09: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 1lXEqy-0004LI-On; Fri, 16 Apr 2021 03:09: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 1lXEqy-00047W-H8; Fri, 16 Apr 2021 03:09:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXEqy-0008Nf-Ge; Fri, 16 Apr 2021 03:09:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=AjXGx1WAa7YBv+31yqXvSr3vpymVbYIeMfyTRxKOvZM=; b=p9E0xlyZNm1oUjyQy9yP2GbJUR
	r0qlVJPYKz/P3pRYqYsachTEFHGrHuWZPdRKccVlKyWYcyLDne7FjnQgYOiy312IsrtjzjRZoatYp
	M3IrLaBteA1oAIr+y8vDEG0VwmqEzzVbq8Rs2xV4s5/z5+TsSEAm4fRVAoipJ8F0ivV0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161171-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161171: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=8fe9f1f891eff4e37f82622b7480ee748bf4af74
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 03:09:08 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-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-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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                8fe9f1f891eff4e37f82622b7480ee748bf4af74
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  238 days
Failing since        152659  2020-08-21 14:07:39 Z  237 days  441 attempts
Testing same since   161147  2021-04-14 22:08:02 Z    1 days    2 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142656 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 06:29:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 06:29:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111580.213414 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXHyO-0000rd-2S; Fri, 16 Apr 2021 06:29:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111580.213414; Fri, 16 Apr 2021 06: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 1lXHyN-0000rW-VW; Fri, 16 Apr 2021 06:28:59 +0000
Received: by outflank-mailman (input) for mailman id 111580;
 Fri, 16 Apr 2021 06:28: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 1lXHyN-0000rO-ES; Fri, 16 Apr 2021 06:28: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 1lXHyN-00083f-8D; Fri, 16 Apr 2021 06:28: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 1lXHyM-0007AM-T8; Fri, 16 Apr 2021 06:28:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXHyM-0007yH-Se; Fri, 16 Apr 2021 06:28:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=utB4BzyEeWQseYfy9b93mRQftQD3jIMORJybf7hKh7A=; b=RkGTk4jpKwXFVdcFWHAMTLJbhK
	44T0FcvbC0yPlLb8DWs2ltdLORoxt6KCY7THc1csCvTvemo8XEN6p08Z5IKSw74jf8QcZpJwm9Nbp
	db8MtJEjWHVrsfyskjZI0vh0X24crz+c9DvnrKSVZfYmTpiciljTajfGZu8XW+ASaIgQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161175-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161175: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 06:28:58 +0000

flight 161175 xen-4.12-testing real [real]
flight 161194 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161175/
http://logs.test-lab.xenproject.org/osstest/logs/161194/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   58 days
Failing since        160128  2021-03-18 14:36:18 Z   28 days   36 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   27 days   34 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 07:29:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 07:29:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111591.213434 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXIuv-0006XL-Ir; Fri, 16 Apr 2021 07:29:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111591.213434; Fri, 16 Apr 2021 07: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 1lXIuv-0006XE-Fq; Fri, 16 Apr 2021 07:29:29 +0000
Received: by outflank-mailman (input) for mailman id 111591;
 Fri, 16 Apr 2021 07:29:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXIuu-0006X9-IF
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 07:29:28 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a8e87d96-04d3-4cf5-891d-6e192b6fe7ee;
 Fri, 16 Apr 2021 07:29:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C5CBAAD22;
 Fri, 16 Apr 2021 07:29: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: a8e87d96-04d3-4cf5-891d-6e192b6fe7ee
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618558166; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=NjBUATrJ4HaJr0N2E31I3t1vVMual2GF0Nc5shyI48I=;
	b=uWIkvik9MSh/9z58w5+hhy+SHyifZjvOT94ZsuJnpzw+inLeAM7A6EeqgKCfzcB46gxtrD
	d+Vcyf/N8tVU0CR/LSEvsrAML0+nqCxOqqvjxbnMDbDjWt+xc6zz4u/ORbb/8zDOh+wyvj
	q453sRwhKXkNeRRIeSLPyNVMZ6ZfYrQ=
Subject: Re: [PATCH v3 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
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: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
 <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
 <YG3m9nW6xPeL7MPr@Air-de-Roger> <YHhkBBaXgBQMrov/@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <afb9ad03-d946-55c3-5f51-62683b69f0dc@suse.com>
Date: Fri, 16 Apr 2021 09:29:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHhkBBaXgBQMrov/@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 18:04, Roger Pau Monné wrote:
> On Wed, Apr 07, 2021 at 07:08:06PM +0200, Roger Pau Monné wrote:
>> On Wed, Apr 07, 2021 at 05:51:14PM +0200, Jan Beulich wrote:
>>> On 31.03.2021 12:32, Roger Pau Monne wrote:
>>>> --- a/xen/arch/x86/hvm/irq.c
>>>> +++ b/xen/arch/x86/hvm/irq.c
>>>> +void hvm_gsi_execute_callbacks(unsigned int gsi)
>>>> +{
>>>> +    struct hvm_irq *hvm_irq = hvm_domain_irq(current->domain);
>>>> +    struct hvm_gsi_eoi_callback *cb;
>>>> +
>>>> +    read_lock(&hvm_irq->gsi_callbacks_lock);
>>>> +    list_for_each_entry ( cb, &hvm_irq->gsi_callbacks[gsi], list )
>>>> +        cb->callback(gsi, cb->data);
>>>> +    read_unlock(&hvm_irq->gsi_callbacks_lock);
>>>> +}
>>>
>>> Just as an observation (for now at least) - holding the lock here
>>> means the callbacks cannot re-register themselves.
>>
>> Well, re-registering would be weird, as the callback is not
>> unregistered after execution. What is likely more relevant is that the
>> callback cannot unregister itself. I haven't found a need for this so
>> far, so I think it's fine.
> 
> I'm afraid I was wrong here - rtc_pf_callback could attempt to
> unregister the timer, and thus end up calling
> hvm_gsi_unregister_callback inside of a callback.
> 
> I need to figure a way to solve this. We already run the RTC in no ack
> mode (which is correct because of the flag we expose in the WAET ACPI
> table), and hence I wonder if we still need to keep the code for the
> strict_mode around, since it's not used at all. Would you be OK with
> me removing the mode_strict related code?

Not sure, to be honest. Years ago I did submit a patch correcting this
("x86/HVM: tie RTC emulation mode to enabling of Viridian emulation"),
as we shouldn't assume all guests to even know of WAET. Hence running
uniformly in rtc_mode_no_ack isn't really correct. I'm still carrying
this patch, as Tim (iirc) had asked not to tie the behavior to the
Viridian param, but give it its own one. Which I still didn't get to.

Of course, if we decided to drop mode_strict support, I could also
drop that patch ...

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 07:43:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 07:43:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111595.213447 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXJ8j-0008K1-SD; Fri, 16 Apr 2021 07:43:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111595.213447; Fri, 16 Apr 2021 07:43: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 1lXJ8j-0008Ju-PF; Fri, 16 Apr 2021 07:43:45 +0000
Received: by outflank-mailman (input) for mailman id 111595;
 Fri, 16 Apr 2021 07:43:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXJ8i-0008JW-Bd
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 07:43:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e93b783f-5f54-4c01-b8b6-1244e27e2afc;
 Fri, 16 Apr 2021 07:43:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D20B9AEC6;
 Fri, 16 Apr 2021 07:43: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: e93b783f-5f54-4c01-b8b6-1244e27e2afc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618559022; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=hbhUFvMxmVRl+ja1apV7tD9GarBYF9Mcgz2qXZWu/hQ=;
	b=CsDtoHMHqNay1eJXdemleFq889NkmJC6u+oBwg2xXoMd96KNgtuhz+EKygcqo1GIwsKWJ1
	ChW0stULj2UZQaeV8CyqK41QsewUY5v8DJe7ujQOcaMYXh5hGKZLaou/I0AOuUrARIqUyk
	8HK2jo4NtSce58hI0FuXLqOGies5Xpo=
Subject: Re: [PATCH 0/2] x86/shadow: shadow_get_page_from_l1e() adjustments
To: Tim Deegan <tim@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 George Dunlap <george.dunlap@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e410c8e6-351d-bd98-7485-eb57268dc378@suse.com>
 <YHhliTZoR/UxpPn2@deinos.phlegethon.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c5078494-f492-5734-2c34-9410cdb2aed8@suse.com>
Date: Fri, 16 Apr 2021 09:43:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHhliTZoR/UxpPn2@deinos.phlegethon.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 18:10, Tim Deegan wrote:
> At 13:46 +0200 on 12 Apr (1618235218), Jan Beulich wrote:
>> The aspect of the function the second patch here changes has been
>> puzzling me for many years. I finally thought I ought to make an
>> attempt at reducing this to just a single get_page_from_l1e()
>> invocation. The first patch mainly helps readability (of the code
>> in general as well as the second patch).
>>
>> Note that the first patch here takes "VMX: use a single, global APIC
>> access page" as a prereq; it could be re-based ahead of that one.
>>
>> 1: re-use variables in shadow_get_page_from_l1e()
>> 2: streamline shadow_get_page_from_l1e()
> 
> Acked-by: Tim Deegan <tim@xen.org>

Thanks. Any thoughts on the shadow part of the prereq patch mentioned
above?

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 07:55:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 07:55:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111599.213459 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXJJl-00012H-Td; Fri, 16 Apr 2021 07:55:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111599.213459; Fri, 16 Apr 2021 07: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 1lXJJl-00012A-Qd; Fri, 16 Apr 2021 07:55:09 +0000
Received: by outflank-mailman (input) for mailman id 111599;
 Fri, 16 Apr 2021 07:55: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 1lXJJk-000121-Co; Fri, 16 Apr 2021 07:55: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 1lXJJk-00010R-44; Fri, 16 Apr 2021 07:55: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 1lXJJj-0003Hg-Kw; Fri, 16 Apr 2021 07:55:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXJJj-00084G-KP; Fri, 16 Apr 2021 07:55:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=AuDnxE7spwKLw0HHuYGa+UcUNmo5YN9UYquoCpJzhzA=; b=L++DJ3zY3tZpdz8ICmE7KcZ7ty
	OohVQ0fn3Ph63GuTH4b1mIbQCHG7rmRc9C1Vz6N02Y3ziyUXbvoivZhcnLK8awHI/sMyr+RfFqD1Y
	8XugdERZsNjNk+QlYGHq6oTgGmf8Kd9mCg8ON55S/JKA91wnc7xb+LQEZ6VDy5xLxRzc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161192-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161192: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=a0491637e142b0230c1d524a194cc2695d3c7556
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 07:55:07 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              a0491637e142b0230c1d524a194cc2695d3c7556
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  280 days
Failing since        151818  2020-07-11 04:18:52 Z  279 days  272 attempts
Testing same since   161192  2021-04-16 04:20:03 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 08:17:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 08:17:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111609.213474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXJep-0003c6-6v; Fri, 16 Apr 2021 08:16:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111609.213474; Fri, 16 Apr 2021 08:16:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXJep-0003bz-3a; Fri, 16 Apr 2021 08:16:55 +0000
Received: by outflank-mailman (input) for mailman id 111609;
 Fri, 16 Apr 2021 08:16:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXJeo-0003bu-1I
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 08:16:54 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8abe918f-21f7-473b-ad69-12215b15f60b;
 Fri, 16 Apr 2021 08:16:53 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 581E7ABB1;
 Fri, 16 Apr 2021 08:16: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: 8abe918f-21f7-473b-ad69-12215b15f60b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618561012; 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=x0U9FHyUNigBHzYhsFpXIYxIwplEkdHqqAxiB5sYbdg=;
	b=gyaU5M517b4NPxx3APwSZ9bBQnplN2nRF7qGZMmIvF/4JhsqoeYLfx28okRR9wh7F39tgf
	T61du70Yh5Pui0hqN+8awa1FsR2VbL0SctULr/7Ya09PST2aO3EkSYhb2CaTvp3XVs6WMf
	pCIGhXVw+fa6sqLMmrKz/eaZKqcooh8=
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/oprof: fix !HVM && !PV32 build
Message-ID: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
Date: Fri, 16 Apr 2021 10:16:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

clang, at the very least, doesn't like unused inline functions, unless
their definitions live in a header.

Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/oprofile/backtrace.c
+++ b/xen/arch/x86/oprofile/backtrace.c
@@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
     return head->ebp;
 }
 
+#ifdef CONFIG_COMPAT
 static inline int is_32bit_vcpu(struct vcpu *vcpu)
 {
     if (is_hvm_vcpu(vcpu))
@@ -50,6 +51,7 @@ static inline int is_32bit_vcpu(struct v
     else
         return is_pv_32bit_vcpu(vcpu);
 }
+#endif
 
 static struct frame_head *
 dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 08:34:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 08:34:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111619.213506 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXJvr-0005eL-2w; Fri, 16 Apr 2021 08:34:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111619.213506; Fri, 16 Apr 2021 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 1lXJvq-0005eE-VQ; Fri, 16 Apr 2021 08:34:30 +0000
Received: by outflank-mailman (input) for mailman id 111619;
 Fri, 16 Apr 2021 08:34: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 1lXJvp-0005e1-GD; Fri, 16 Apr 2021 08:34: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 1lXJvp-0002B0-A9; Fri, 16 Apr 2021 08:34: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 1lXJvp-0004xq-2a; Fri, 16 Apr 2021 08:34:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXJvp-00041r-24; Fri, 16 Apr 2021 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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/q4oC2/FdZlppZa4ONl3CtGCaqXMQtJneDj4GzbFevU=; b=VeFeXxmfq7vOO1PGcfC5/25Dan
	BmBJUBpQDQ5CiYEHpZWZPaF/SIC/hNAnSVMfs3zKWgMOF13u8hlrYir2D2ufGXzcSK3PKPPvflj6D
	QjoCfgMtvG/zQBkbhuMmv5tIJWXPI4oa+MNAO0rlhQgsaKf+9dgFii8w9sKqxBrfYBYk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161180-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161180: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl: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-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-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-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-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=3e9460ec93341fa6a80ecf99832aa5d9975339c9
X-Osstest-Versions-That:
    xen=264aa183ad85b2779b27d1312724a291259ccc9f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 08:34:29 +0000

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

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 161153
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161153
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161153
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161153
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161153
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161153
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161153
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161153
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161153
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161153
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161153
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-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-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 xen                  3e9460ec93341fa6a80ecf99832aa5d9975339c9
baseline version:
 xen                  264aa183ad85b2779b27d1312724a291259ccc9f

Last test of basis   161153  2021-04-15 01:52:41 Z    1 days
Testing same since   161180  2021-04-15 18:37:52 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Wei Liu <wl@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                           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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   264aa183ad..3e9460ec93  3e9460ec93341fa6a80ecf99832aa5d9975339c9 -> master


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 11:25:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 11:25:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111660.213538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXMb6-000511-73; Fri, 16 Apr 2021 11:25:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111660.213538; Fri, 16 Apr 2021 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 1lXMb6-00050u-46; Fri, 16 Apr 2021 11:25:16 +0000
Received: by outflank-mailman (input) for mailman id 111660;
 Fri, 16 Apr 2021 11:25:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZDfs=JN=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lXMb4-00050o-Un
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 11:25:14 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 77247f3f-4bec-4f82-8c00-71fb2616c192;
 Fri, 16 Apr 2021 11:25:13 +0000 (UTC)
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 EDF50106F;
 Fri, 16 Apr 2021 04:25:12 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 1083D3F85F;
 Fri, 16 Apr 2021 04:25: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: 77247f3f-4bec-4f82-8c00-71fb2616c192
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH] xen/arm: smmuv1: Revert associating the group pointer with the S2CR
Date: Fri, 16 Apr 2021 12:25:02 +0100
Message-Id: <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Revert the code that associates the group pointer with the S2CR as this
code causing an issue when the SMMU device has more than one master
device.

This code is merged with the commit  "xen/arm: smmuv1: Intelligent
SMR allocation”.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
 xen/drivers/passthrough/arm/smmu.c | 44 +++---------------------------
 1 file changed, 4 insertions(+), 40 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index 24ac4f3a80..1a68c2ab3b 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -597,7 +597,6 @@ enum arm_smmu_arch_version {
 };
 
 struct arm_smmu_s2cr {
-	struct iommu_group		*group;
 	int				count;
 	enum arm_smmu_s2cr_type		type;
 	enum arm_smmu_s2cr_privcfg	privcfg;
@@ -1498,7 +1497,6 @@ static int arm_smmu_master_alloc_smes(struct device *dev)
 	struct arm_smmu_master_cfg *cfg = find_smmu_master_cfg(dev);
 	struct arm_smmu_device *smmu = cfg->smmu;
 	struct arm_smmu_smr *smrs = smmu->smrs;
-	struct iommu_group *group;
 	int i, idx, ret;
 
 	spin_lock(&smmu->stream_map_lock);
@@ -1523,19 +1521,9 @@ static int arm_smmu_master_alloc_smes(struct device *dev)
 		cfg->smendx[i] = (s16)idx;
 	}
 
-	group = iommu_group_get(dev);
-	if (!group)
-		group = ERR_PTR(-ENOMEM);
-	if (IS_ERR(group)) {
-		ret = PTR_ERR(group);
-		goto out_err;
-	}
-	iommu_group_put(group);
-
 	/* It worked! Now, poke the actual hardware */
 	for_each_cfg_sme(cfg, i, idx) {
 		arm_smmu_write_sme(smmu, idx);
-		smmu->s2crs[idx].group = group;
 	}
 
 	spin_unlock(&smmu->stream_map_lock);
@@ -1966,27 +1954,6 @@ static void __arm_smmu_release_pci_iommudata(void *data)
 	kfree(data);
 }
 
-static struct iommu_group *arm_smmu_device_group(struct
-						arm_smmu_master_cfg *cfg)
-{
-	struct arm_smmu_device *smmu = cfg->smmu;
-	struct iommu_group *group = NULL;
-	int i, idx;
-
-	for_each_cfg_sme(cfg, i, idx) {
-		if (group && smmu->s2crs[idx].group &&
-		    group != smmu->s2crs[idx].group)
-			return ERR_PTR(-EINVAL);
-
-		group = smmu->s2crs[idx].group;
-	}
-
-	if (group)
-		return group;
-
-	return NULL;
-}
-
 static int arm_smmu_add_device(struct device *dev)
 {
 	struct arm_smmu_device *smmu;
@@ -2027,13 +1994,10 @@ static int arm_smmu_add_device(struct device *dev)
 		cfg->smmu = smmu;
 	}
 
-	group = arm_smmu_device_group(cfg);
-	if (!group) {
-		group = iommu_group_alloc();
-		if (IS_ERR(group)) {
-			dev_err(dev, "Failed to allocate IOMMU group\n");
-			return PTR_ERR(group);
-		}
+	group = iommu_group_alloc();
+	if (IS_ERR(group)) {
+		dev_err(dev, "Failed to allocate IOMMU group\n");
+		return PTR_ERR(group);
 	}
 
 	iommu_group_set_iommudata(group, cfg, releasefn);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 16 11:47:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 11:47:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111671.213551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXMw5-0006z4-QC; Fri, 16 Apr 2021 11:46:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111671.213551; Fri, 16 Apr 2021 11: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 1lXMw5-0006yx-MH; Fri, 16 Apr 2021 11:46:57 +0000
Received: by outflank-mailman (input) for mailman id 111671;
 Fri, 16 Apr 2021 11:46:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2kml=JN=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lXMw4-0006ys-Pk
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 11:46:56 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 37f231ac-028d-4ad7-9694-ba8d70f38483;
 Fri, 16 Apr 2021 11:46: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: 37f231ac-028d-4ad7-9694-ba8d70f38483
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618573615;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=NkMCqHSKHFLMvJNKqGMYWZ26r6posdAwvMoxLS0/D9A=;
  b=TqwetfnNwPAwAomSCRRFCby5tomR0p6y1Bdtm/7z9H6LSK47/n0LCRrR
   QZtPYDGg6ZdTKq4p0qBJZcHIOfIXCMLOGuBqwGVy2/wnQurEWKPiZQRaw
   3nPo15JjV26I39xV+p4xIMTbsfVAIo+NYflo3EnUzPsD/rRoNvv6Lvol/
   Q=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: PutT/HHvpnFA/3eZTflPqJXQCzpn4S6t5tzuCWQv17wP9dUQrRemk4nrcY8Rez5zn/t1/EHeAo
 TcBmvolntGEYa+KVHoHwTWLY0yGYgnTR7xC0IaFaLLlkntb7FnugaB9AVmM9/VM5k3i7bTToqf
 PwSyEsvKdRq0xmlDFV4LvoUiEHkLVMvj7z1FGkP+dOJ2ol3k6bJ6MMOQYGtk6pB12eG93Rv6uW
 7HODQrsJbIbSahpPeVCxl/vl4KTbVPshL3cuzew6/dhrtUCD1ZtIWouhSYzhTwAoganL+C4mfg
 iyo=
X-SBRS: 4.0
X-MesageID: 42132913
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:3dRZKaFNWcxjUNBWpLqF+ZXXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7MBXh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbakrD38Zn/+
 Nbf6B6YeeAaWRSpczx7BCkV/Mpx9ea+K6l7N2uuktFZysCUdAc0y5SDAGHHkpqACxPApQkHJ
 SRj/A30waIU3IRc8i9Gz05T/HOzue7067OTDwnI1oc6AeIhS6187KSKXOl9zoXTj8n+8ZSzU
 HriAr8j5/TyM2T6hiZ7GPL6oQTpd2J8KowOOWtkc4TEzP2l0KTSb8JYdftgBkQgMWCrGkni8
 PNpRBIBbU011r0cnuuqRXgnynMuQxem0PK8lOTjXv9rcGRfltTZLsl9PspCifx0EYusMpx16
 hGxQuixulqJCndlyfw7cWgbWAXqmOIoGEvmeNWr3tTXZp2Us4ukaUj/VhYGJpFISTi6IpPKp
 gQMOjg4p9tACmnRkGclEZuxcGhRR0Ib0S7a3lHkMmSzzVtkGtnz0EVrfZv/EsoxdYQWoRg4e
 Lcas1T9Y1mf4s3dqR7PeEbXI+eNQX2LH6tQQGvCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieUfGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erAM
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IdV0+RpNnIbqnnrPbSfvqWBLeFK0d/ZkrPRl
 84GBTjLsRJ6U6mHlXihgLKZn/rckvjuZ1qFqzX+PUS1ZgNOoVAvhN9syXk2ui7bRl59oAmdk
 p3J73q1omho3OtwGrO52J1fhpRZ3wlv4nIYjdvn0snIkn0ebEMt5G0YmZJxkaKIRd5UofTGA
 5brFJn5LKvI/WrtH4fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjXrdwGwXNHxl8gh1rt2
 9HdQ8BSibkZ27ToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqWmEWRCe0UcmcgR8nQj1dgl
 EZyd5PvJOw3RKUbUcviuUxN1NBLFmNCLVdFQKfecF/gbbwYjx9Sm+MmB2Xgxw+YXDR6k0Xn2
 DtRBfkKc3jMx54gDR42ryv2E5ofm+dFngAHUxSgMlYLyD6nVpdlcWMfbG+1mONbEBq+JBqDB
 j1JR0IIg1vwNir0gWygzjqLwR++rwnIvHdALM/c7vax3OqL8mSmbsbGuJPlawVfezGo6sFV/
 mSdBSSKy69A+Q12xaNrnJgIyVsrmI4+MmYmiHN/Sy80TonGvzZLE59S7xzGaDR00H0A/KJ2o
 5+l9Q7oK+5NXjwcMePzcjsHn5+AwKWpW69VOczr59I+ao0qbtoBpHeFT/FzmtO0hl7LMD6ki
 olMedGyaGEPo9kZMoJfS1FulIvidSUNUMu9hXsHfVWRyBjs1bLe9eSp7bYo7smBUOM4AP2JF
 mE6iVYu/PIRTGK27IWA785SF4mLXQU+TBn5qePZofQAAKle6VY8F22PmS0fbVdRKKGcI9g7y
 pS8pWNhauaZiD40AffsX9nOapI6X+gWt73DwSWG+JEmubKfWikk++v+oq0gzj2QzfgNBhdio
 1BaEAKbsNMzjMll5Y61yCuSqrx5kIp+mEuqw1PhxrowMyh5myeAERNdQveiZ9SVSNIMneJgd
 /emNLomkjV8XxAw93bCExUfttSANAeQYj8Mjd2JaErzfWV1rtqhj4GfQwnAGE9gi3sxu9q3b
 +23/PJRu3pYE2YdG4p6HpCHY57nisitGFGfYy/9PuGE00qKtI=
X-IronPort-AV: E=Sophos;i="5.82,226,1613451600"; 
   d="scan'208";a="42132913"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86/pv: Improve dom0_update_physmap() with CONFIG_SPECULATIVE_HARDEN_BRANCH
Date: Fri, 16 Apr 2021 12:46:45 +0100
Message-ID: <20210416114645.21530-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

dom0_update_physmap() is mostly called in two tight loops, where the lfences
hidden in is_pv_32bit_domain() have a substantial impact.

None of the boot time construction needs protection against malicious
speculation, so use a local variable and calculate is_pv_32bit_domain() just
once.

Reformat the some of the code for legibility, now that the volume has reduced,
and removal of some gratuitous negations.

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>

I appear to written this patch ages ago, and never got aroudn to sending it.

I haven't perf tested this, but it is faster without a shadow of a doubt.
---
 xen/arch/x86/pv/dom0_build.c     | 52 +++++++++++++++++++---------------------
 xen/arch/x86/pv/shim.c           |  6 +++--
 xen/include/asm-x86/dom0_build.h |  2 +-
 3 files changed, 30 insertions(+), 30 deletions(-)

diff --git a/xen/arch/x86/pv/dom0_build.c b/xen/arch/x86/pv/dom0_build.c
index 265f56a3f8..44ed3dafd2 100644
--- a/xen/arch/x86/pv/dom0_build.c
+++ b/xen/arch/x86/pv/dom0_build.c
@@ -31,10 +31,10 @@
 #define L3_PROT (BASE_PROT|_PAGE_DIRTY)
 #define L4_PROT (BASE_PROT|_PAGE_DIRTY)
 
-void __init dom0_update_physmap(struct domain *d, unsigned long pfn,
+void __init dom0_update_physmap(bool compat, unsigned long pfn,
                                 unsigned long mfn, unsigned long vphysmap_s)
 {
-    if ( !is_pv_32bit_domain(d) )
+    if ( !compat )
         ((unsigned long *)vphysmap_s)[pfn] = mfn;
     else
         ((unsigned int *)vphysmap_s)[pfn] = mfn;
@@ -289,7 +289,7 @@ int __init dom0_construct_pv(struct domain *d,
                              char *cmdline)
 {
     int i, rc, order, machine;
-    bool compatible;
+    bool compatible, compat;
     struct cpu_user_regs *regs;
     unsigned long pfn, mfn;
     unsigned long nr_pages;
@@ -380,6 +380,8 @@ int __init dom0_construct_pv(struct domain *d,
     }
 #endif
 
+    compat = is_pv_32bit_domain(d);
+
     if ( elf_64bit(&elf) && machine == EM_X86_64 )
         compatible = true;
 
@@ -463,9 +465,9 @@ int __init dom0_construct_pv(struct domain *d,
         vinitrd_end    = vinitrd_start + initrd_len;
         vphysmap_start = round_pgup(vinitrd_end);
     }
-    vphysmap_end     = vphysmap_start + (nr_pages * (!is_pv_32bit_domain(d) ?
-                                                     sizeof(unsigned long) :
-                                                     sizeof(unsigned int)));
+    vphysmap_end = vphysmap_start +
+        (nr_pages * (compat ? sizeof(unsigned int) : sizeof(unsigned long)));
+
     if ( parms.p2m_base != UNSET_ADDR )
         vphysmap_end = vphysmap_start;
     vstartinfo_start = round_pgup(vphysmap_end);
@@ -496,9 +498,9 @@ int __init dom0_construct_pv(struct domain *d,
 #define NR(_l,_h,_s) \
     (((((_h) + ((1UL<<(_s))-1)) & ~((1UL<<(_s))-1)) - \
        ((_l) & ~((1UL<<(_s))-1))) >> (_s))
-        if ( (!is_pv_32bit_domain(d) + /* # L4 */
+        if ( (!compat + /* # L4 */
               NR(v_start, v_end, L4_PAGETABLE_SHIFT) + /* # L3 */
-              (!is_pv_32bit_domain(d) ?
+              (!compat ?
                NR(v_start, v_end, L3_PAGETABLE_SHIFT) : /* # L2 */
                4) + /* # compat L2 */
               NR(v_start, v_end, L2_PAGETABLE_SHIFT))  /* # L1 */
@@ -600,23 +602,22 @@ int __init dom0_construct_pv(struct domain *d,
         mpt_alloc -= PAGE_ALIGN(initrd_len);
 
     /* Overlap with Xen protected area? */
-    if ( !is_pv_32bit_domain(d) ?
-         ((v_start < HYPERVISOR_VIRT_END) &&
-          (v_end > HYPERVISOR_VIRT_START)) :
-         (v_end > HYPERVISOR_COMPAT_VIRT_START(d)) )
+    if ( compat
+         ? v_end > HYPERVISOR_COMPAT_VIRT_START(d)
+         : (v_start < HYPERVISOR_VIRT_END) && (v_end > HYPERVISOR_VIRT_START) )
     {
         printk("DOM0 image overlaps with Xen private area.\n");
         rc = -EINVAL;
         goto out;
     }
 
-    if ( is_pv_32bit_domain(d) )
+    if ( compat )
     {
         v->arch.pv.failsafe_callback_cs = FLAT_COMPAT_KERNEL_CS;
         v->arch.pv.event_callback_cs    = FLAT_COMPAT_KERNEL_CS;
     }
 
-    if ( !is_pv_32bit_domain(d) )
+    if ( !compat )
     {
         maddr_to_page(mpt_alloc)->u.inuse.type_info = PGT_l4_page_table;
         l4start = l4tab = __va(mpt_alloc); mpt_alloc += PAGE_SIZE;
@@ -677,8 +678,7 @@ int __init dom0_construct_pv(struct domain *d,
             mfn = pfn++;
         else
             mfn = initrd_mfn++;
-        *l1tab = l1e_from_pfn(mfn, (!is_pv_32bit_domain(d) ?
-                                    L1_PROT : COMPAT_L1_PROT));
+        *l1tab = l1e_from_pfn(mfn, compat ? COMPAT_L1_PROT : L1_PROT);
         l1tab++;
 
         page = mfn_to_page(_mfn(mfn));
@@ -687,7 +687,7 @@ int __init dom0_construct_pv(struct domain *d,
             BUG();
     }
 
-    if ( is_pv_32bit_domain(d) )
+    if ( compat )
     {
         l2_pgentry_t *l2t;
 
@@ -806,7 +806,7 @@ int __init dom0_construct_pv(struct domain *d,
         if ( pfn > REVERSE_START && (vinitrd_start || pfn < initrd_pfn) )
             mfn = alloc_epfn - (pfn - REVERSE_START);
 #endif
-        dom0_update_physmap(d, pfn, mfn, vphysmap_start);
+        dom0_update_physmap(compat, pfn, mfn, vphysmap_start);
         if ( !(pfn & 0xfffff) )
             process_pending_softirqs();
     }
@@ -818,12 +818,12 @@ int __init dom0_construct_pv(struct domain *d,
         BUG_ON(SHARED_M2P(get_gpfn_from_mfn(mfn)));
         if ( get_gpfn_from_mfn(mfn) >= count )
         {
-            BUG_ON(is_pv_32bit_domain(d));
+            BUG_ON(compat);
             if ( !page->u.inuse.type_info &&
                  !get_page_and_type(page, d, PGT_writable_page) )
                 BUG();
 
-            dom0_update_physmap(d, pfn, mfn, vphysmap_start);
+            dom0_update_physmap(compat, pfn, mfn, vphysmap_start);
             ++pfn;
             if ( !(pfn & 0xfffff) )
                 process_pending_softirqs();
@@ -843,7 +843,7 @@ int __init dom0_construct_pv(struct domain *d,
 #ifndef NDEBUG
 #define pfn (nr_pages - 1 - (pfn - (alloc_epfn - alloc_spfn)))
 #endif
-            dom0_update_physmap(d, pfn, mfn, vphysmap_start);
+            dom0_update_physmap(compat, pfn, mfn, vphysmap_start);
 #undef pfn
             page++; pfn++;
             if ( !(pfn & 0xfffff) )
@@ -878,7 +878,7 @@ int __init dom0_construct_pv(struct domain *d,
                           vphysmap_start, si);
 
 #ifdef CONFIG_COMPAT
-    if ( is_pv_32bit_domain(d) )
+    if ( compat )
         xlat_start_info(si, pv_shim ? XLAT_start_info_console_domU
                                     : XLAT_start_info_console_dom0);
 #endif
@@ -899,11 +899,9 @@ int __init dom0_construct_pv(struct domain *d,
      */
     regs = &v->arch.user_regs;
     regs->ds = regs->es = regs->fs = regs->gs =
-        !is_pv_32bit_domain(d) ? FLAT_KERNEL_DS : FLAT_COMPAT_KERNEL_DS;
-    regs->ss = (!is_pv_32bit_domain(d) ?
-                FLAT_KERNEL_SS : FLAT_COMPAT_KERNEL_SS);
-    regs->cs = (!is_pv_32bit_domain(d) ?
-                FLAT_KERNEL_CS : FLAT_COMPAT_KERNEL_CS);
+               (compat ? FLAT_COMPAT_KERNEL_DS : FLAT_KERNEL_DS);
+    regs->ss = (compat ? FLAT_COMPAT_KERNEL_SS : FLAT_KERNEL_SS);
+    regs->cs = (compat ? FLAT_COMPAT_KERNEL_CS : FLAT_KERNEL_CS);
     regs->rip = parms.virt_entry;
     regs->rsp = vstack_end;
     regs->rsi = vstartinfo_start;
diff --git a/xen/arch/x86/pv/shim.c b/xen/arch/x86/pv/shim.c
index 92cb1adeed..1b86fc247e 100644
--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -204,6 +204,7 @@ void __init pv_shim_setup_dom(struct domain *d, l4_pgentry_t *l4start,
                               unsigned long console_va, unsigned long vphysmap,
                               start_info_t *si)
 {
+    bool compat = is_pv_32bit_domain(d);
     hypercall_table_t *rw_pv_hypercall_table;
     uint64_t param = 0;
     long rc;
@@ -217,7 +218,8 @@ void __init pv_shim_setup_dom(struct domain *d, l4_pgentry_t *l4start,
     {                                                                          \
         share_xen_page_with_guest(mfn_to_page(_mfn(param)), d, SHARE_rw);      \
         replace_va_mapping(d, l4start, va, _mfn(param));                       \
-        dom0_update_physmap(d, PFN_DOWN((va) - va_start), param, vphysmap);    \
+        dom0_update_physmap(compat,                                            \
+                            PFN_DOWN((va) - va_start), param, vphysmap);       \
     }                                                                          \
     else                                                                       \
     {                                                                          \
@@ -244,7 +246,7 @@ void __init pv_shim_setup_dom(struct domain *d, l4_pgentry_t *l4start,
         si->console.domU.mfn = mfn_x(console_mfn);
         share_xen_page_with_guest(mfn_to_page(console_mfn), d, SHARE_rw);
         replace_va_mapping(d, l4start, console_va, console_mfn);
-        dom0_update_physmap(d, (console_va - va_start) >> PAGE_SHIFT,
+        dom0_update_physmap(compat, (console_va - va_start) >> PAGE_SHIFT,
                             mfn_x(console_mfn), vphysmap);
         consoled_set_ring_addr(page);
     }
diff --git a/xen/include/asm-x86/dom0_build.h b/xen/include/asm-x86/dom0_build.h
index 0b797b5806..a5f8c9e67f 100644
--- a/xen/include/asm-x86/dom0_build.h
+++ b/xen/include/asm-x86/dom0_build.h
@@ -26,7 +26,7 @@ int dom0_construct_pvh(struct domain *d, const module_t *image,
 unsigned long dom0_paging_pages(const struct domain *d,
                                 unsigned long nr_pages);
 
-void dom0_update_physmap(struct domain *d, unsigned long pfn,
+void dom0_update_physmap(bool compat, unsigned long pfn,
                          unsigned long mfn, unsigned long vphysmap_s);
 
 #endif	/* _DOM0_BUILD_H_ */
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Fri Apr 16 11:56:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 11:56:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111682.213563 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXN5E-0007zi-R9; Fri, 16 Apr 2021 11:56:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111682.213563; Fri, 16 Apr 2021 11:56: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 1lXN5E-0007zb-O8; Fri, 16 Apr 2021 11:56:24 +0000
Received: by outflank-mailman (input) for mailman id 111682;
 Fri, 16 Apr 2021 11:56:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXN5D-0007zV-5G
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 11:56:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e86ddbf6-cfce-43d4-92ed-178d4597916c;
 Fri, 16 Apr 2021 11:56:21 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E9683B029;
 Fri, 16 Apr 2021 11:56: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: e86ddbf6-cfce-43d4-92ed-178d4597916c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618574181; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=fGV6IPy8h7/5/vucFEBYXMXSfW7vDCPowawTfXA3TIQ=;
	b=nrHv+DuKJBeEptyJgVDaie/8CbNTTGShnvDFvoAYUmhY7/8W5qX1wjYmbfQtnn1U60QZGC
	a78Sxzr/mwKVMekU5OZ00KunLweGIe2iFsLju6FJTd35prqg7vaVRuO5yGBmUBvWq/XJiG
	MJ6fDidsBjeNN5rAMfiN+ceDZqXHdyo=
Subject: Re: [PATCH] x86/pv: Improve dom0_update_physmap() with
 CONFIG_SPECULATIVE_HARDEN_BRANCH
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210416114645.21530-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <77003550-ad73-ce4d-faa4-31128aaf0283@suse.com>
Date: Fri, 16 Apr 2021 13:56:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210416114645.21530-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 16.04.2021 13:46, Andrew Cooper wrote:
> dom0_update_physmap() is mostly called in two tight loops, where the lfences
> hidden in is_pv_32bit_domain() have a substantial impact.
> 
> None of the boot time construction needs protection against malicious
> speculation, so use a local variable and calculate is_pv_32bit_domain() just
> once.
> 
> Reformat the some of the code for legibility, now that the volume has reduced,
> and removal of some gratuitous negations.
> 
> No functional change.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>
with one mior remark:

> @@ -463,9 +465,9 @@ int __init dom0_construct_pv(struct domain *d,
>          vinitrd_end    = vinitrd_start + initrd_len;
>          vphysmap_start = round_pgup(vinitrd_end);
>      }
> -    vphysmap_end     = vphysmap_start + (nr_pages * (!is_pv_32bit_domain(d) ?
> -                                                     sizeof(unsigned long) :
> -                                                     sizeof(unsigned int)));
> +    vphysmap_end = vphysmap_start +
> +        (nr_pages * (compat ? sizeof(unsigned int) : sizeof(unsigned long)));
> +
>      if ( parms.p2m_base != UNSET_ADDR )
>          vphysmap_end = vphysmap_start;
>      vstartinfo_start = round_pgup(vphysmap_end);

I think a blank line as separator would make more sense ahead of
and/or after the full setting of vphysmap_end, but not so much
between the two parts of it.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 11:59:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 11:59:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111685.213575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXN8M-0008AM-AG; Fri, 16 Apr 2021 11:59:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111685.213575; Fri, 16 Apr 2021 11: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 1lXN8M-0008AF-7H; Fri, 16 Apr 2021 11:59:38 +0000
Received: by outflank-mailman (input) for mailman id 111685;
 Fri, 16 Apr 2021 11:59: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 1lXN8L-0008A7-Op; Fri, 16 Apr 2021 11:59: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 1lXN8L-0005Xr-GL; Fri, 16 Apr 2021 11:59: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 1lXN8L-00070R-5P; Fri, 16 Apr 2021 11:59:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXN8L-0007nj-4P; Fri, 16 Apr 2021 11:59: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=Degz0rQrzkzYg/NN7kvXG18yyThUJpKlygtx+6OJXS8=; b=OdNdIWk3STzsBaV2/aqrT98BAX
	dVhBcs1q3y7gQm3b9tSjLJqD6CoyFH9bvq2tEgzX6BPVeSOdK+/mAhPI/sGoade3AL53o5TlumE4Y
	0I4TtlUiB7QLe+JE7hwl57P4ed8ajnb2pA9+0sNFyZ/Cl7+u+KB9Ds7yFNhA/RDtya/Q=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161185-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161185: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-vhd: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=7e25f40eab52c57ff6772d27d2aef3640a3237d7
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 11:59:37 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 152332

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

version targeted for testing:
 linux                7e25f40eab52c57ff6772d27d2aef3640a3237d7
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  258 days
Failing since        152366  2020-08-01 20:49:34 Z  257 days  434 attempts
Testing same since   161185  2021-04-15 23:10:59 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1326207 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 12:00:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 12:00:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111694.213589 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXN9d-0000cW-0g; Fri, 16 Apr 2021 12:00:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111694.213589; Fri, 16 Apr 2021 12: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 1lXN9c-0000cP-U2; Fri, 16 Apr 2021 12:00:56 +0000
Received: by outflank-mailman (input) for mailman id 111694;
 Fri, 16 Apr 2021 12:00: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 1lXN9b-0000cH-O4; Fri, 16 Apr 2021 12:00: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 1lXN9b-0005b1-KV; Fri, 16 Apr 2021 12:00: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 1lXN9b-00073j-Ch; Fri, 16 Apr 2021 12:00:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXN9b-0000oS-CD; Fri, 16 Apr 2021 12:00: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=ifCTHtI9v7IcKlvLh6BjMQ4v54BJpxbYBa5YBi9d+aU=; b=drljubLVuWlcehc0W+dfKTDSJd
	n6qB8Fi/Q6FD7vJvRGnYH3Qsy5yF644X1BeuazqWCQcqz0/V0g3EgJ5Ycn19ttUIgrUQxchIAMI7Z
	WN7pEWpGWLLH2GfMrrlfCQosPbUFNQ3qVUQc5QjdOO8hpWJEPeyODdi+0ZPtgeRgOAyE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161187-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161187: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=96479947bcd7b425e4f2196b06701fd8ec3da595
X-Osstest-Versions-That:
    ovmf=3c13938079886e0e49031ab29a4f1ed7a4ceab68
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 12:00:55 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 96479947bcd7b425e4f2196b06701fd8ec3da595
baseline version:
 ovmf                 3c13938079886e0e49031ab29a4f1ed7a4ceab68

Last test of basis   161176  2021-04-15 16:40:13 Z    0 days
Testing same since   161187  2021-04-16 00:11:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Pierre Gondois <Pierre.Gondois@arm.com>
  Vijayenthiran Subramaniam <vijayenthiran.subramaniam@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
   3c13938079..96479947bc  96479947bcd7b425e4f2196b06701fd8ec3da595 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 12:33:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 12:33:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111705.213604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXNeT-0003YX-Iu; Fri, 16 Apr 2021 12:32:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111705.213604; Fri, 16 Apr 2021 12:32: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 1lXNeT-0003YQ-G2; Fri, 16 Apr 2021 12:32:49 +0000
Received: by outflank-mailman (input) for mailman id 111705;
 Fri, 16 Apr 2021 12:32:48 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXNeS-0003Y5-7w
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 12:32:48 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c042834a-9e3c-4f6e-89cb-f8573e2a81cc;
 Fri, 16 Apr 2021 12:32:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 324B5B036;
 Fri, 16 Apr 2021 12:32: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: c042834a-9e3c-4f6e-89cb-f8573e2a81cc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618576366; 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=luWHCLnoFFFinXHoizhCXTY+5bpKvS2q8+7RdusGvw0=;
	b=GaEpyH71PbpNaW+fkt5r40fHBTpzAfMdsXHncACEMFSIY1s7q8fabxwUvw/sJOfNYZ4mzh
	kRRRAw6kUPpaZ0DJGg3g3ij18yHHBhgP32q8ArjS0QUIWyWt506GC5jFRax6kj3fKR2dBZ
	8I6r4eqBydXY4m83zT1zLeb8ZMNinQo=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Tim Deegan <tim@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 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/shadow: depend on PV || HVM
Message-ID: <eee69a8e-36d5-b9eb-d8f1-1a7e1c3dfdc0@suse.com>
Date: Fri, 16 Apr 2021 14:32:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

With the building of guest_?.o now depending on PV or HVM, without
further #ifdef-ary shadow code won't link anymore when !PV && !HVM.
Since this isn't a useful configuration anyway, exclude shadow code from
being built in this case.

Fixes: aff8bf94ce65 ("x86/shadow: only 4-level guest code needs building when !HVM")
Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -121,6 +121,7 @@ config XEN_SHSTK
 config SHADOW_PAGING
 	bool "Shadow Paging"
 	default !PV_SHIM_EXCLUSIVE
+	depends on PV || HVM
 	---help---
 
           Shadow paging is a software alternative to hardware paging support


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 12:40:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 12:40:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111711.213623 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXNlQ-0003rG-Da; Fri, 16 Apr 2021 12:40:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111711.213623; Fri, 16 Apr 2021 12:40:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXNlQ-0003r9-AL; Fri, 16 Apr 2021 12:40:00 +0000
Received: by outflank-mailman (input) for mailman id 111711;
 Fri, 16 Apr 2021 12:39:59 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2kml=JN=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lXNlP-0003r4-3Y
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 12:39:59 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6da3faa0-a645-43e0-8011-7c881d3f471f;
 Fri, 16 Apr 2021 12:39: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: 6da3faa0-a645-43e0-8011-7c881d3f471f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618576797;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=JYl/U9O+A3xqVq06iwolLVk7+Eq5sjB/GzqdOgXsDnY=;
  b=WwKmbYlgDmoDW4U/rtovSKhArz8aF/JXJV3bx8wM9KkOiCaQ2CvSeNty
   lA51mb0KaUS+PfqqcFhECkJL6SippIho7SdoxaqRWSihKgP/PoUDTT13d
   B8FlEOkwa7UMUzSrTMWHwJ/9BO8VLjbmq09Gg5IxukCoMfBYDOxVOOQ3W
   c=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 2L8maLC4Q1IDxkfK0SCKD7zwimL29WwBM8hv1yvs/6e6z+IGFqaQQgIkXKPFOwJIeIR3KtuKu6
 lYABoPYKHLwCLlsTSdryL01dN6pA5pEOKm4zWMjG5FjhPlnYbBX7H43scmbfycQFkqQ3l46Lj8
 1DW6l74GHUF9gO7zpQUTQ9ZqDv/9I5OtKZanvhHfZ4xOm/lVFMMPguTO20Dl8nv+AZoYgPqTe5
 GF5QPJH2+Y5sxp4UfXFtwY7immx+ESTfjUbXHjvHYRvthfLkr5GwBRyKF7tMT6j2WZu/6rkEms
 4yM=
X-SBRS: 5.2
X-MesageID: 41588383
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fdUJ+64G8x3CObArQwPXwE/XdLJzesId70hD6mlaTxtJfsuE0/
 20lPMA2hPuzBoXUncsmdePUZPwI0/035hz/IUXIPOeTBDr0VHYT71KwKnD53nbGyP4/vNAzq
 sIScNDIfD5EFQSt6fHySaiFdJI+ra62YSJocub8Ht3VwFtbMhbgztRLgqACEV5SE1nKPMCea
 a03cZMqzq+dXl/VK3SOlA/U/XevNqOrZr6YHc9dnsawTOThjCl4qOSKXil9yoZOgkg/Z4StU
 Xmsyi83KWstP2hoyWss1P73tBzop/A0dtYQOiBl8A5Iijl4zzDWLhc
X-IronPort-AV: E=Sophos;i="5.82,226,1613451600"; 
   d="scan'208";a="41588383"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VUXJACR7dDhOPU6YwLx1XPmzPw/kzix6eB61WmpYEM+ZO1CytNl3UAjCTHJ910ekvc+EnQSLCO8Kx3jMkJ1zpwBvf3zuyZIb1jk59WmggMF0edtx8VNcnFdYg4LGeF5l6/kT5Ai6Hn9KbG+x2k1SqdZiwPgK9NO2qLHJk5JDEKpKiPOl3Pl7yWb2utcezeqR+F4cM5xEyNHd3xGIZO71sDtVkZxkbr1lzDTQBgtOUundfSiMD3beGuFc5mmvc7umvyn+dR253F331WO6a+GH6AeQhCFmwe0sPxHTwSkoLbFlnWICxUuxKvgAhwT5BfXjjo+xCRHJoIoKefbeotdhxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CWT/WvE4NsIYkSJ0fpZlKaClUjGKSr0epflWnBbSMxY=;
 b=B9wTXBRM//Q9DlMLFL8GT13+szpQ/123rvljjwNs4HaCFGqKN7vwf7ici7w+4gnH8/teMLBfL69f3i9gWDZwyID56krImFq2xP8Mj/GnT9p5gHUJfMPDEQxAkpIoQVDxTVJMi7/ZZcUuCq4M+8OHFWIgI/mjboU2D0vh10jOoT6AbDPckZyAMUuur0n0UvIL6wIsCR7MK9QQnpJtbXQDIpO2pcIO+tIOAMqN5gp3Sq0Y/ycQe9O0hhEKw9iKS0MnsBVeeUmB8Qk5M3+eMnmP40xhaTXYUlnD/bxLEZihF5f5WdnTaC+DYD4vEW+YtIRUlmyPY6Iv+7wzavbrIt4G1A==
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=CWT/WvE4NsIYkSJ0fpZlKaClUjGKSr0epflWnBbSMxY=;
 b=wlt4yQwWHXkwM7LEvE2jmHZHOdEdwIT/69Ct9RrvdvA4i6Bn5n3mF9qYf4cLDr4sjGrXLdyGjtX2e7vSD5hBYJtEF/O/DHCyYjByXjJ4WeTtI35ApCg+2bG1U9HvnYQvQmzR10yUgR9bg8dIGpKhGGfA7VKnfEU4iX6lUnsq9uw=
Subject: Re: [PATCH] x86/shadow: depend on PV || HVM
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Tim Deegan <tim@xen.org>, George Dunlap <george.dunlap@citrix.com>, "Wei
 Liu" <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <eee69a8e-36d5-b9eb-d8f1-1a7e1c3dfdc0@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <4cab02d4-121a-4898-d0af-7c992b157785@citrix.com>
Date: Fri, 16 Apr 2021 13:39:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <eee69a8e-36d5-b9eb-d8f1-1a7e1c3dfdc0@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0018.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:a6::30) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d7d8cc5b-a5ef-477c-4949-08d900d4bb3a
X-MS-TrafficTypeDiagnostic: BY5PR03MB5169:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB51694E4E485770EDE5E5B6BDBA4C9@BY5PR03MB5169.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: rqrE60qMdGB/eHBUY3XlKozksNysqZK4qxP8/04DyKE3H/ROJh76eedrncr3Ztd1YZXNM/EdQ8xJaVDlPFRuebA3+cQ0rshEKR9Jer+IiWjj7Gw3Z9xvtUbMtZiSHf/9pW6ZZnnfE7ED3qrqgCRvqCAfqiRK28dFgies3sn2P7WrNtnblwWU3MxzCGNQbJfqf+qRpL2g8/4gBD/7yKJVbsZc6YQ28Yxox0EuzkXp2Up8YCP9N7v//V4aIXaF7iplaW81ymv33xsav0L+li0P3axEfIujDdN4BWSP89sgjcnxXOncWplSUIRVLwO9GDyt0f+7o1pedefOPn2MeReUbrvh2+2D/QgDAQ7aXCuS5VkdIEUFZ8uouaS32F+xkqvbKe1O23lGwitki+lJzh0Pltkh3CXnUkJYgmuoDLjNvRXh5Yff4OZi35J/GhakhA88h+2F77CekqO8qwIChM689jgLsNLbkR8ipDJWRKw/ntywuP6e808PVqOj7nxTEEe1qosxDVvxJ6AE3TIEIZ6dYnuoXAYhMXs03zq6YsDEn37ufB6jCq76wfe2l6yCdyJtagiAhdEDrTMjsVEQQYBEv/eYPVTnXTLfWBf88gx4dkJWw2OJIizyOBtbI1CnOSo1AWx11UBmFGMnQYF3pimBq6Br1xldmqw1Osdo5ufy92+oXbDeu+ug+iYQMorbJzQe
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(396003)(136003)(346002)(39860400002)(366004)(83380400001)(31686004)(31696002)(38100700002)(36756003)(16526019)(478600001)(86362001)(8936002)(54906003)(110136005)(66476007)(66556008)(316002)(8676002)(66946007)(6666004)(2616005)(186003)(6486002)(53546011)(2906002)(16576012)(4326008)(956004)(5660300002)(107886003)(26005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?ZI0Caas6tpAiBRvAIJ/5YwCjCa5aTFHnpmoewg7?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d7d8cc5b-a5ef-477c-4949-08d900d4bb3a
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 12:39:52.4961
 (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: wl9zWUrIeU1dtlpZ0y212bY5Z+V8JtwyA/RKH2aYXUSpr0rF2F8SITZ5p0gOHfGBn0/N6eO0JKz47JvwHfqX15sOTV7+v7eJHExL88Wv1Kk=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5169
X-OriginatorOrg: citrix.com

On 16/04/2021 13:32, Jan Beulich wrote:
> With the building of guest_?.o now depending on PV or HVM, without
> further #ifdef-ary shadow code won't link anymore when !PV && !HVM.
> Since this isn't a useful configuration anyway, exclude shadow code from
> being built in this case.
>
> Fixes: aff8bf94ce65 ("x86/shadow: only 4-level guest code needs building when !HVM")
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>
> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -121,6 +121,7 @@ config XEN_SHSTK
>  config SHADOW_PAGING
>  	bool "Shadow Paging"
>  	default !PV_SHIM_EXCLUSIVE

Hang on - this is bug, and is what needs dropping.

PV Shim uses Shadow, in default configurations, for L1TF protections to
keep userspace out of the guest kernel.  Without it, the shim'd guest
will be crashed when it writes an L1TF-vulnerable PTE.

OSSTest ought to have blocked this as a regression, but I suspect its
not running the XTF PV guests in shim mode.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 12:49:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 12:49:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111715.213635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXNuD-0004rb-AU; Fri, 16 Apr 2021 12:49:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111715.213635; Fri, 16 Apr 2021 12:49:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXNuD-0004rU-7K; Fri, 16 Apr 2021 12:49:05 +0000
Received: by outflank-mailman (input) for mailman id 111715;
 Fri, 16 Apr 2021 12:49:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXNuC-0004rP-G5
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 12:49:04 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0b46c08a-3eac-41a0-a191-ef09ae074a6b;
 Fri, 16 Apr 2021 12:49:03 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 51C62B0B3;
 Fri, 16 Apr 2021 12:49: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: 0b46c08a-3eac-41a0-a191-ef09ae074a6b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618577342; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RE3KhTF6xhoyS2gvohxFvwhNUtvcN0Jh9rO3BalleBE=;
	b=rYE78VhIlAwMgD1q7gWn1s//IrV7ApTwTslkbkqxZhskalZh1mqqrc2Amx7+7cwhRcSuB+
	17MmXfhaQ+aDn/R0+bVTGe8hHdWB8tvV9+sK9OrtZ8+EQAOfHQTMpMeH7ys2AoTP6X246e
	BgRXLr7IxX2FCcHiaUdC15sEx1LsfNo=
Subject: Re: [PATCH] x86/shadow: depend on PV || HVM
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Tim Deegan <tim@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 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: <eee69a8e-36d5-b9eb-d8f1-1a7e1c3dfdc0@suse.com>
 <4cab02d4-121a-4898-d0af-7c992b157785@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0dd00856-a7fa-da3d-9328-cf87e1adbafe@suse.com>
Date: Fri, 16 Apr 2021 14:49:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <4cab02d4-121a-4898-d0af-7c992b157785@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 16.04.2021 14:39, Andrew Cooper wrote:
> On 16/04/2021 13:32, Jan Beulich wrote:
>> With the building of guest_?.o now depending on PV or HVM, without
>> further #ifdef-ary shadow code won't link anymore when !PV && !HVM.
>> Since this isn't a useful configuration anyway, exclude shadow code from
>> being built in this case.
>>
>> Fixes: aff8bf94ce65 ("x86/shadow: only 4-level guest code needs building when !HVM")
>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
>> --- a/xen/arch/x86/Kconfig
>> +++ b/xen/arch/x86/Kconfig
>> @@ -121,6 +121,7 @@ config XEN_SHSTK
>>  config SHADOW_PAGING
>>  	bool "Shadow Paging"
>>  	default !PV_SHIM_EXCLUSIVE
> 
> Hang on - this is bug, and is what needs dropping.
> 
> PV Shim uses Shadow, in default configurations, for L1TF protections to
> keep userspace out of the guest kernel.  Without it, the shim'd guest
> will be crashed when it writes an L1TF-vulnerable PTE.
> 
> OSSTest ought to have blocked this as a regression, but I suspect its
> not running the XTF PV guests in shim mode.

One thing at a time please - if there's an issue here, this wants
addressing in a separate change (which then also may need
backporting).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 13:16:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 13:16:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111727.213678 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXOKz-0007qd-VE; Fri, 16 Apr 2021 13:16:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111727.213678; Fri, 16 Apr 2021 13: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 1lXOKz-0007qW-S2; Fri, 16 Apr 2021 13:16:45 +0000
Received: by outflank-mailman (input) for mailman id 111727;
 Fri, 16 Apr 2021 13:16:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXOKy-0007qR-Qh
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 13:16:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c300a326-e2b3-450e-a3c5-07e2c361dd49;
 Fri, 16 Apr 2021 13:16:42 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 814A7B158;
 Fri, 16 Apr 2021 13:16:41 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c300a326-e2b3-450e-a3c5-07e2c361dd49
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618579001; 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=GWMb2nTdNosSGv/vN708YUhwk/cUBkUU7Dm5oA2g0ak=;
	b=TiPKevv+YZISbB/1tAI83CYNOHrlDe/gQMDsUO/Nj1u23w7K/ifDMhONg+wB2YKSf/RgSR
	KHusAZ+mXwQWBK4Q5nz2Lx0N2n54nMkW5/VSE9KL3XEMPhje5aJb3gIV6M2eJhhCV14wik
	FeTp1B/prMnW1Byec+GhQG9DY7kBBcM=
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 v3] x86/CPUID: shrink max_{,sub}leaf fields according to
 actual leaf contents
Message-ID: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
Date: Fri, 16 Apr 2021 15:16:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Zapping leaf data for out of range leaves is just one half of it: To
avoid guests (bogusly or worse) inferring information from mere leaf
presence, also shrink maximum indicators such that the respective
trailing entry is not all blank (unless of course it's the initial
subleaf of a leaf that's not the final one).

This is also in preparation of bumping the maximum basic leaf we
support, to ensure guests not getting exposed related features won't
observe a change in behavior.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: Record the actual non-empty subleaf in p->basic.raw[0x7], rather
    than subleaf 0. Re-base over Viridian leaf 40000005 addition.
v2: New.

--- a/tools/tests/cpu-policy/test-cpu-policy.c
+++ b/tools/tests/cpu-policy/test-cpu-policy.c
@@ -8,10 +8,13 @@
 #include <err.h>
 
 #include <xen-tools/libs.h>
+#include <xen/asm/x86-defns.h>
 #include <xen/asm/x86-vendors.h>
 #include <xen/lib/x86/cpu-policy.h>
 #include <xen/domctl.h>
 
+#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
+
 static unsigned int nr_failures;
 #define fail(fmt, ...)                          \
 ({                                              \
@@ -553,6 +556,103 @@ static void test_cpuid_out_of_range_clea
     }
 }
 
+static void test_cpuid_maximum_leaf_shrinking(void)
+{
+    static const struct test {
+        const char *name;
+        struct cpuid_policy p;
+    } tests[] = {
+        {
+            .name = "basic",
+            .p = {
+                /* Very basic information only. */
+                .basic.max_leaf = 1,
+                .basic.raw_fms = 0xc2,
+            },
+        },
+        {
+            .name = "cache",
+            .p = {
+                /* Cache subleaves present. */
+                .basic.max_leaf = 4,
+                .cache.subleaf[0].type = 1,
+            },
+        },
+        {
+            .name = "feat#0",
+            .p = {
+                /* Subleaf 0 only with some valid bit. */
+                .basic.max_leaf = 7,
+                .feat.max_subleaf = 0,
+                .feat.fsgsbase = 1,
+            },
+        },
+        {
+            .name = "feat#1",
+            .p = {
+                /* Subleaf 1 only with some valid bit. */
+                .basic.max_leaf = 7,
+                .feat.max_subleaf = 1,
+                .feat.avx_vnni = 1,
+            },
+        },
+        {
+            .name = "topo",
+            .p = {
+                /* Topology subleaves present. */
+                .basic.max_leaf = 0xb,
+                .topo.subleaf[0].type = 1,
+            },
+        },
+        {
+            .name = "xstate",
+            .p = {
+                /* First subleaf always valid (and then non-zero). */
+                .basic.max_leaf = 0xd,
+                .xstate.xcr0_low = XSTATE_FP_SSE,
+            },
+        },
+        {
+            .name = "extd",
+            .p = {
+                /* Commonly available information only. */
+                .extd.max_leaf = 0x80000008,
+                .extd.maxphysaddr = 0x28,
+                .extd.maxlinaddr = 0x30,
+            },
+        },
+    };
+
+    printf("Testing CPUID maximum leaf shrinking:\n");
+
+    for ( size_t i = 0; i < ARRAY_SIZE(tests); ++i )
+    {
+        const struct test *t = &tests[i];
+        struct cpuid_policy *p = memdup(&t->p);
+
+        p->basic.max_leaf = ARRAY_SIZE(p->basic.raw) - 1;
+        p->feat.max_subleaf = ARRAY_SIZE(p->feat.raw) - 1;
+        p->extd.max_leaf = 0x80000000 | (ARRAY_SIZE(p->extd.raw) - 1);
+
+        x86_cpuid_policy_shrink_max_leaves(p);
+
+        /* Check the the resulting max (sub)leaf values against expecations. */
+        if ( p->basic.max_leaf != t->p.basic.max_leaf )
+             fail("  Test %s basic fail - expected %#x, got %#x\n",
+                  t->name, t->p.basic.max_leaf, p->basic.max_leaf);
+
+        if ( p->extd.max_leaf != t->p.extd.max_leaf )
+             fail("  Test %s extd fail - expected %#x, got %#x\n",
+                  t->name, t->p.extd.max_leaf, p->extd.max_leaf);
+
+        if ( p->feat.max_subleaf != t->p.feat.max_subleaf )
+             fail("  Test %s feat fail - expected %#x, got %#x\n",
+                  t->name, t->p.feat.max_subleaf, p->feat.max_subleaf);
+
+        free(p);
+    }
+}
+
 static void test_is_compatible_success(void)
 {
     static struct test {
@@ -668,6 +768,7 @@ int main(int argc, char **argv)
     test_cpuid_serialise_success();
     test_cpuid_deserialise_failure();
     test_cpuid_out_of_range_clearing();
+    test_cpuid_maximum_leaf_shrinking();
 
     test_msr_serialise_success();
     test_msr_deserialise_failure();
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -341,6 +341,8 @@ static void __init calculate_host_policy
         p->extd.raw[0xa].d |= ((1u << SVM_FEATURE_VMCBCLEAN) |
                                (1u << SVM_FEATURE_TSCRATEMSR));
     }
+
+    x86_cpuid_policy_shrink_max_leaves(p);
 }
 
 static void __init guest_common_default_feature_adjustments(uint32_t *fs)
@@ -410,6 +412,8 @@ static void __init calculate_pv_max_poli
     recalculate_xstate(p);
 
     p->extd.raw[0xa] = EMPTY_LEAF; /* No SVM for PV guests. */
+
+    x86_cpuid_policy_shrink_max_leaves(p);
 }
 
 static void __init calculate_pv_def_policy(void)
@@ -430,6 +434,8 @@ static void __init calculate_pv_def_poli
     sanitise_featureset(pv_featureset);
     cpuid_featureset_to_policy(pv_featureset, p);
     recalculate_xstate(p);
+
+    x86_cpuid_policy_shrink_max_leaves(p);
 }
 
 static void __init calculate_hvm_max_policy(void)
@@ -495,6 +501,8 @@ static void __init calculate_hvm_max_pol
     sanitise_featureset(hvm_featureset);
     cpuid_featureset_to_policy(hvm_featureset, p);
     recalculate_xstate(p);
+
+    x86_cpuid_policy_shrink_max_leaves(p);
 }
 
 static void __init calculate_hvm_def_policy(void)
@@ -519,6 +527,8 @@ static void __init calculate_hvm_def_pol
     sanitise_featureset(hvm_featureset);
     cpuid_featureset_to_policy(hvm_featureset, p);
     recalculate_xstate(p);
+
+    x86_cpuid_policy_shrink_max_leaves(p);
 }
 
 void __init init_guest_cpuid(void)
@@ -699,6 +709,8 @@ void recalculate_cpuid_policy(struct dom
 
     if ( !p->extd.page1gb )
         p->extd.raw[0x19] = EMPTY_LEAF;
+
+    x86_cpuid_policy_shrink_max_leaves(p);
 }
 
 int init_domain_cpuid_policy(struct domain *d)
--- a/xen/arch/x86/hvm/viridian/viridian.c
+++ b/xen/arch/x86/hvm/viridian/viridian.c
@@ -124,7 +124,15 @@ void cpuid_viridian_leaves(const struct
     switch ( leaf )
     {
     case 0:
-        res->a = 0x40000006; /* Maximum leaf */
+        /* Maximum leaf */
+        cpuid_viridian_leaves(v, 0x40000006, 0, res);
+        if ( res->a | res->b | res->c | res->d )
+            res->a = 0x40000006;
+        else
+        {
+            cpuid_viridian_leaves(v, 0x40000005, 0, res);
+            res->a = 0x40000005 - !(res->a | res->b | res->c | res->d);
+        }
         memcpy(&res->b, "Micr", 4);
         memcpy(&res->c, "osof", 4);
         memcpy(&res->d, "t Hv", 4);
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -964,13 +964,15 @@ void cpuid_hypervisor_leaves(const struc
     uint32_t base = is_viridian_domain(d) ? 0x40000100 : 0x40000000;
     uint32_t idx  = leaf - base;
     unsigned int limit = is_viridian_domain(d) ? p->hv2_limit : p->hv_limit;
+    unsigned int dflt = is_pv_domain(d) ? XEN_CPUID_MAX_PV_NUM_LEAVES
+                                        : XEN_CPUID_MAX_HVM_NUM_LEAVES;
 
     if ( limit == 0 )
         /* Default number of leaves */
-        limit = XEN_CPUID_MAX_NUM_LEAVES;
+        limit = dflt;
     else
         /* Clamp toolstack value between 2 and MAX_NUM_LEAVES. */
-        limit = min(max(limit, 2u), XEN_CPUID_MAX_NUM_LEAVES + 0u);
+        limit = min(max(limit, 2u), dflt);
 
     if ( idx > limit )
         return;
--- a/xen/include/public/arch-x86/cpuid.h
+++ b/xen/include/public/arch-x86/cpuid.h
@@ -113,6 +113,10 @@
 /* Max. address width in bits taking memory hotplug into account. */
 #define XEN_CPUID_MACHINE_ADDRESS_WIDTH_MASK (0xffu << 0)
 
-#define XEN_CPUID_MAX_NUM_LEAVES 5
+#define XEN_CPUID_MAX_PV_NUM_LEAVES 5
+#define XEN_CPUID_MAX_HVM_NUM_LEAVES 4
+#define XEN_CPUID_MAX_NUM_LEAVES \
+    (XEN_CPUID_MAX_PV_NUM_LEAVES > XEN_CPUID_MAX_HVM_NUM_LEAVES ? \
+     XEN_CPUID_MAX_PV_NUM_LEAVES : XEN_CPUID_MAX_HVM_NUM_LEAVES)
 
 #endif /* __XEN_PUBLIC_ARCH_X86_CPUID_H__ */
--- a/xen/include/xen/lib/x86/cpuid.h
+++ b/xen/include/xen/lib/x86/cpuid.h
@@ -351,6 +351,13 @@ void x86_cpuid_policy_fill_native(struct
  */
 void x86_cpuid_policy_clear_out_of_range_leaves(struct cpuid_policy *p);
 
+/**
+ * Shrink max leaf/subleaf values such that the last respective valid entry
+ * isn't all blank.  While permitted by the spec, such extraneous leaves may
+ * provide undue "hints" to guests.
+ */
+void x86_cpuid_policy_shrink_max_leaves(struct cpuid_policy *p);
+
 #ifdef __XEN__
 #include <public/arch-x86/xen.h>
 typedef XEN_GUEST_HANDLE_64(xen_cpuid_leaf_t) cpuid_leaf_buffer_t;
--- a/xen/lib/x86/cpuid.c
+++ b/xen/lib/x86/cpuid.c
@@ -236,6 +236,45 @@ void x86_cpuid_policy_clear_out_of_range
                 ARRAY_SIZE(p->extd.raw) - 1);
 }
 
+void x86_cpuid_policy_shrink_max_leaves(struct cpuid_policy *p)
+{
+    unsigned int i;
+
+    p->basic.raw[0x4] = p->cache.raw[0];
+
+    for ( i = p->feat.max_subleaf; i; --i )
+        if ( p->feat.raw[i].a | p->feat.raw[i].b |
+             p->feat.raw[i].c | p->feat.raw[i].d )
+            break;
+    p->feat.max_subleaf = i;
+    p->basic.raw[0x7] = p->feat.raw[i];
+
+    p->basic.raw[0xb] = p->topo.raw[0];
+
+    /*
+     * Due to the way xstate gets handled in the hypervisor (see
+     * recalculate_xstate()) there is (for now at least) no need to fiddle
+     * with the xstate subleaves (IOW we assume they're already in consistent
+     * shape, for coming from either hardware or recalculate_xstate()).
+     */
+    p->basic.raw[0xd] = p->xstate.raw[0];
+
+    for ( i = p->basic.max_leaf; i; --i )
+        if ( p->basic.raw[i].a | p->basic.raw[i].b |
+             p->basic.raw[i].c | p->basic.raw[i].d )
+            break;
+    p->basic.max_leaf = i;
+
+    for ( i = p->extd.max_leaf & 0xffff; i; --i )
+        if ( p->extd.raw[i].a | p->extd.raw[i].b |
+             p->extd.raw[i].c | p->extd.raw[i].d )
+            break;
+    if ( i | p->extd.raw[0].b | p->extd.raw[0].c | p->extd.raw[0].d )
+        p->extd.max_leaf = 0x80000000 | i;
+    else
+        p->extd.max_leaf = 0;
+}
+
 const uint32_t *x86_cpuid_lookup_deep_deps(uint32_t feature)
 {
     static const uint32_t deep_features[] = INIT_DEEP_FEATURES;


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 13:20:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 13:20:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111732.213691 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXOOI-0000J1-Hm; Fri, 16 Apr 2021 13:20:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111732.213691; Fri, 16 Apr 2021 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 1lXOOI-0000Iu-EV; Fri, 16 Apr 2021 13:20:10 +0000
Received: by outflank-mailman (input) for mailman id 111732;
 Fri, 16 Apr 2021 13:20:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXOOH-0000Io-EC
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 13:20:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b56f86bc-1101-4907-82e2-99d0d9f5d287;
 Fri, 16 Apr 2021 13:20:08 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 953C1B1BD;
 Fri, 16 Apr 2021 13:20:07 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b56f86bc-1101-4907-82e2-99d0d9f5d287
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618579207; 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=ufOnfHp0O3E+Vzmx++SRiq0i7FViNrJkcL0Lqmis+28=;
	b=sVzyghNDqdAJnWjuJlB2F2Lozc1my8GqDYUe2F38JEkK3x/c7DHeaGxGNg4lCgVNsgjBqX
	qJa8G1gbOBfHej6yJnHWwL4T4/VwRIiFcaovF8COkPFhsuh1wSHzEtIqFOQWk9AE7JnxC1
	M0CrMJhL1HaygMw1G+XbIlYN6FyNVWg=
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/AMD: also determine L3 cache size
Message-ID: <7ffeec9f-2ce4-9122-4699-32c3ffb06a5d@suse.com>
Date: Fri, 16 Apr 2021 15:20:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

For Intel CPUs we record L3 cache size, hence we should also do so for
AMD and alike.

While making these additions, also make sure (throughout the function)
that we don't needlessly overwrite prior values when the new value to be
stored is zero.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
I have to admit though that I'm not convinced the sole real use of the
field (in flush_area_local()) is a good one - flushing an entire L3's
worth of lines via CLFLUSH may not be more efficient than using WBINVD.
But I didn't measure it (yet).

--- a/xen/arch/x86/cpu/common.c
+++ b/xen/arch/x86/cpu/common.c
@@ -240,28 +240,41 @@ int get_model_name(struct cpuinfo_x86 *c
 
 void display_cacheinfo(struct cpuinfo_x86 *c)
 {
-	unsigned int dummy, ecx, edx, l2size;
+	unsigned int dummy, ecx, edx, size;
 
 	if (c->extended_cpuid_level >= 0x80000005) {
 		cpuid(0x80000005, &dummy, &dummy, &ecx, &edx);
-		if (opt_cpu_info)
-			printk("CPU: L1 I cache %dK (%d bytes/line),"
-			              " D cache %dK (%d bytes/line)\n",
-			       edx>>24, edx&0xFF, ecx>>24, ecx&0xFF);
-		c->x86_cache_size=(ecx>>24)+(edx>>24);	
+		if ((edx | ecx) >> 24) {
+			if (opt_cpu_info)
+				printk("CPU: L1 I cache %uK (%u bytes/line),"
+				              " D cache %uK (%u bytes/line)\n",
+				       edx >> 24, edx & 0xFF, ecx >> 24, ecx & 0xFF);
+			c->x86_cache_size = (ecx >> 24) + (edx >> 24);
+		}
 	}
 
 	if (c->extended_cpuid_level < 0x80000006)	/* Some chips just has a large L1. */
 		return;
 
-	ecx = cpuid_ecx(0x80000006);
-	l2size = ecx >> 16;
-	
-	c->x86_cache_size = l2size;
-
-	if (opt_cpu_info)
-		printk("CPU: L2 Cache: %dK (%d bytes/line)\n",
-		       l2size, ecx & 0xFF);
+	cpuid(0x80000006, &dummy, &dummy, &ecx, &edx);
+
+	size = ecx >> 16;
+	if (size) {
+		c->x86_cache_size = size;
+
+		if (opt_cpu_info)
+			printk("CPU: L2 Cache: %uK (%u bytes/line)\n",
+			       size, ecx & 0xFF);
+	}
+
+	size = edx >> 18;
+	if (size) {
+		c->x86_cache_size = size * 512;
+
+		if (opt_cpu_info)
+			printk("CPU: L3 Cache: %uM (%u bytes/line)\n",
+			       (size + (size & 1)) >> 1, edx & 0xFF);
+	}
 }
 
 static inline u32 _phys_pkg_id(u32 cpuid_apic, int index_msb)


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 13:22:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 13:22:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111736.213702 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXOQm-0000SN-V7; Fri, 16 Apr 2021 13:22:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111736.213702; Fri, 16 Apr 2021 13:22:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXOQm-0000SG-S6; Fri, 16 Apr 2021 13:22:44 +0000
Received: by outflank-mailman (input) for mailman id 111736;
 Fri, 16 Apr 2021 13:22:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXOQm-0000SA-2r
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 13:22:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 05dbe689-415d-4549-8847-7e2fc4ddd9ae;
 Fri, 16 Apr 2021 13:22:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 54ADDAF4F;
 Fri, 16 Apr 2021 13:22: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: 05dbe689-415d-4549-8847-7e2fc4ddd9ae
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618579362; 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=V74WwRMWMSOh03GoTQjxwrPJS93n0Ufbhy6GbCB7rbE=;
	b=CpRKwvkT3rjiLYM86zXiAPJgkJ3w0gvBHsCSWMOnovXjd11VfltazG4UsO7dtL+S9a1h/p
	Amu1rBfX2OzLtF3xF0hYScMoTvhd1i/npkB5swvD1GdJTjVddM+iAG6oVT9OfMzzay+8cB
	h6in6DZNY6xJlMMPvOC5ik1yvBAAS08=
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>,
 Ian Jackson <iwj@xenproject.org>, Anthony Perard <anthony.perard@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] x86/CPUID: add further "fast repeated string ops" feature
 flags
Message-ID: <c4e5fad5-0468-fe9f-aa6f-1a4efce72cc4@suse.com>
Date: Fri, 16 Apr 2021 15:22:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Like ERMS this can always be exposed to guests, but I guess once we
introduce full validation we want to make sure we don't reject incoming
policies with any of these set when in the raw/host policies they're
clear.

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

--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -215,6 +215,7 @@ int libxl_cpuid_parse_config(libxl_cpuid
 
         {"avx512-4vnniw",0x00000007,  0, CPUID_REG_EDX,  2,  1},
         {"avx512-4fmaps",0x00000007,  0, CPUID_REG_EDX,  3,  1},
+        {"fsrm",         0x00000007,  0, CPUID_REG_EDX,  4,  1},
         {"avx512-vp2intersect",0x00000007,0,CPUID_REG_EDX,8, 1},
         {"srbds-ctrl",   0x00000007,  0, CPUID_REG_EDX,  9,  1},
         {"md-clear",     0x00000007,  0, CPUID_REG_EDX, 10,  1},
@@ -229,6 +230,9 @@ int libxl_cpuid_parse_config(libxl_cpuid
 
         {"avx-vnni",     0x00000007,  1, CPUID_REG_EAX,  4,  1},
         {"avx512-bf16",  0x00000007,  1, CPUID_REG_EAX,  5,  1},
+        {"fzrm",         0x00000007,  1, CPUID_REG_EAX, 10,  1},
+        {"fsrs",         0x00000007,  1, CPUID_REG_EAX, 11,  1},
+        {"fsrcs",        0x00000007,  1, CPUID_REG_EAX, 12,  1},
 
         {"lahfsahf",     0x80000001, NA, CPUID_REG_ECX,  0,  1},
         {"cmplegacy",    0x80000001, NA, CPUID_REG_ECX,  1,  1},
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -177,6 +177,9 @@ static const char *const str_7d0[32] =
 static const char *const str_7a1[32] =
 {
     [ 4] = "avx-vnni",      [ 5] = "avx512-bf16",
+
+    [10] = "fzrm",          [11] = "fsrs",
+    [12] = "fsrcs",
 };
 
 static const struct {
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -261,6 +261,7 @@ XEN_CPUFEATURE(SSB_NO,        8*32+26) /
 /* Intel-defined CPU features, CPUID level 0x00000007:0.edx, word 9 */
 XEN_CPUFEATURE(AVX512_4VNNIW, 9*32+ 2) /*A  AVX512 Neural Network Instructions */
 XEN_CPUFEATURE(AVX512_4FMAPS, 9*32+ 3) /*A  AVX512 Multiply Accumulation Single Precision */
+XEN_CPUFEATURE(FSRM,          9*32+ 4) /*A  Fast Short REP MOVS */
 XEN_CPUFEATURE(AVX512_VP2INTERSECT, 9*32+8) /*a  VP2INTERSECT{D,Q} insns */
 XEN_CPUFEATURE(SRBDS_CTRL,    9*32+ 9) /*   MSR_MCU_OPT_CTRL and RNGDS_MITG_DIS. */
 XEN_CPUFEATURE(MD_CLEAR,      9*32+10) /*A  VERW clears microarchitectural buffers */
@@ -277,6 +278,9 @@ XEN_CPUFEATURE(SSBD,          9*32+31) /
 /* Intel-defined CPU features, CPUID level 0x00000007:1.eax, word 10 */
 XEN_CPUFEATURE(AVX_VNNI,     10*32+ 4) /*A  AVX-VNNI Instructions */
 XEN_CPUFEATURE(AVX512_BF16,  10*32+ 5) /*A  AVX512 BFloat16 Instructions */
+XEN_CPUFEATURE(FZRM,         10*32+10) /*A  Fast Zero-length REP MOVSB */
+XEN_CPUFEATURE(FSRS,         10*32+11) /*A  Fast Short REP STOSB */
+XEN_CPUFEATURE(FSRCS,        10*32+12) /*A  Fast Short REP CMPSB/SCASB */
 
 #endif /* XEN_CPUFEATURE */
 


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 13:39:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 13:39:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111750.213714 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXOgS-0001fD-8U; Fri, 16 Apr 2021 13:38:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111750.213714; Fri, 16 Apr 2021 13: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 1lXOgS-0001f6-5Z; Fri, 16 Apr 2021 13:38:56 +0000
Received: by outflank-mailman (input) for mailman id 111750;
 Fri, 16 Apr 2021 13:38:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2kml=JN=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lXOgQ-0001f1-OV
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 13:38:54 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8a71a68a-5430-482e-a5b0-3dc69c1067ed;
 Fri, 16 Apr 2021 13:38: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: 8a71a68a-5430-482e-a5b0-3dc69c1067ed
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618580333;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=nbO0UYxMPN49lUgfPa/AOG9MNqxUbjVd/4U7g9nz5T8=;
  b=E7/sGavd7G4/WUtmfQxY2czVSSbnCF9l6p/UXeFyD0uQBHntSEvc2Q5r
   7dUgv6dD7FFgLWsjJVz/ZnlrztENvdhKCeXDO2/+v3CBGGy54B+9kmlys
   0ocyIRALuY5cQoqQZrrfnHf8R7FEMxyBwcPCm9IHzExNN4Cjvt8xmbkw0
   s=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: xaoYQ3NZf8djGSwE4DiGWqbA00/SqpNknjX/uu7kaUVxmh0o33oK4ZND2Sq4aWB3bk3FQcDHPh
 C7eatzJbasog+DrkNSmdZ0X7ujo0ozLgyaMkLNaTkMeM7K1rfV0ctfck6PG2Rs6IhOT9NqwugR
 ESevpuxpvENwx+OJHpiTKfHQJ8HN+MAbQ495HSM+h29zahcmVbvJ0DtHZ16B5U6M6RWVyCCMMo
 YgPnydw4DbvCQPJTjvuK7gU224QQDOI8ereIL57DFo1464rUzPeYwx8ip6oiDw3BZsoOUhwiDJ
 FRw=
X-SBRS: 5.2
X-MesageID: 42141542
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:ycGq16M2Y3p1FsBcT1Dw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZqQHIMxbVstRQ3a
 IIScNDIfX7B1RikILe6A63D94vzLC8gdiVrM3ZyGpgShwvTqlm4RtwBArzKDwMeCBtA50lGJ
 2AovdWvjbIQwVdUu2XJFkgG9LCqdrCiY78bXc9ayIPxQGSgVqTmdrHOjeC2BN2aVJy6JcktV
 PIignoopik2svLsyP080/2w9BolMD6yt1Fbfb8wPQ9Djn3kA6naMBAdtS5zVcIidqi4lorj9
 XAyi1IV6sc11rrcm64uhfr0QX7uQxejUPK80OSgnfovKXCNVEHIvdBno5Qf1/47EctrbhHoc
 d29l+ZrJZeAFf8mj387bHzJnNXv3ezyEBDrccjy1hkFacOYr5YqoISuGlPFo0bIS784Ic7VM
 FzEcD1/p9tAB+nRkGcmlMq7M2nX3w1EBvDaFMFoNap3z9fm20851cExfYYgmwL+PsGOtZ5zt
 WBFp4tuKBFT8cQY644LvwGW9GLBmvERg+JF26OP1L9FuUiN2jWo5D6pJU5jdvaNqAg/d8Xot
 DsQVlYvWk9dwbFEsuVxqBG9RjLXSGzRjLoxsZC54Vou7H1SbbxWBfzCGwGoo+FmbEyE8fbU/
 G8NNZ9GPn4N1bjHo5Pwkn/VvBpWDojefxQnux+d0OFo8rNJIGvnPfcauzvKL3kFithXmv+B3
 AETSXiPcko1DHoZlbIxDzqH1/9cE32+px9VILA+fII9YQLPopQ9g4PiVq44cmPISZYsrM/eV
 Z/JL+PqNL7mUCGuULzq0l5MBtUCUhYpJ/6VWlRmAMMO0ToNaoYt86HYmBU1nufLhp5R8fbeT
 Qv4mhfyOaSFdi91CoiA9WoPiamlHMVvmuNVIpZsLaE/93ZdpQxCYsGVKR9GR7QLQF8nR9npQ
 54GUs5b36aMgmrqK2+yLQIGenUdrBH8X2WCP8RjUiaiGKxioUEQGABUzunTMiN6DxeOgZ8tx
 lW6K8QgL2JhDC1D3Aw6d5IfWFkYHiLAb5AEQSObJhVnLeuYw1rUWKWn1Wh+m0OU3uv+EMIim
 P7KyqIPfnNH1pGo3hdlr3n6VVuawymDjRNQ2E/tY12DmLdvHlvleeNe6qoymOUA2Fytt01IX
 XAYTEIJBlpyM3y3BmJmCyaHXFjwpk1JOTSAPAidL7Us0ndX7GghOUDH/VO+oxiO82ruugXUf
 iHcwvQNSjmEYoSqn+oj2dgPDMxpGgvkPvu1hGg5G+k3GQnCf6XJFh9XbkUL9yV8mCMfYfA7L
 xpydYu+eegOGT4bdCLjbvaaDNOMRvfq2+7ReNAk+EggYsi8L9oW5XLWzrB039KmAgkJMDvjU
 UEXeB15qvCNoIHRb1bRwtJul4y0NKBI0sgvlaoXqswfVQxg2TaON3M6bzSsrYrClCAogy1OV
 T3yVwtw97VGy+YkbgdAOYsJG4Tbk424nFr5vmDeI3dEx/CTZAwwHOqdnumNKZAQ62EE6gKph
 l049uUj/aaHhCIpjz4rH9+OOZS6G6pTsO5HRKUFeNJ+9K8P06QgqHC2r/CsB7nDT2ha0oZgo
 VZdUsfKsRb4wNS87EK7g==
X-IronPort-AV: E=Sophos;i="5.82,226,1613451600"; 
   d="scan'208";a="42141542"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XTlekXfP1436M76orI2OHfkRSwR2iKkjwFzoJyTu/BqrWnl2CkPZIm6yBR8gBw+UQMd3bqke0BzAYB7fvOPYrQjDz7/LnrqNT9uOC0CB9sH9i9KPQVKiO+r8Kn5aq9DZ00Mn6y59KtsUD2ler0lU2WVMAgH+UIWUUc3CduBeqQvyQk/E6yHNUGKNBFjQtfJr8+gCURuPq45+O4IdsbhISfwCwpNbL4drWQzCI/pHGyAHUgORs7YjXY5joRfDhbnbu+2AWcbDaSDXf0stppj/Sb9/7FCKvR4aZOiztdnDwlbkcIwiio4Bt0DduHnRuy6grr8ILjK6TurNlMwbcoQs1w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nbO0UYxMPN49lUgfPa/AOG9MNqxUbjVd/4U7g9nz5T8=;
 b=mT+v7Kw/ldIEgYjjC7tgkFwY4zdj33WZR2YGmCS0flSaVJRkTVsnNEmQZLhR4YId5oEAOQSIAj3XuvxVUA+7XX0jZ6QlfWQstia+Z6j6vU0SZpoCJgK6LHFtr/Y5DEX0sY9ZKL2V28imwMrGe2jAejH8btP+aKpWw7W6GbE+RDMlNMaJLPfuiVED7uV0Nx+/kY/xz0z+pKlH9cZ0algTud8kuszlN43yuJ7i/fQVi2OOFQwZzuSC15Prg8gHCHs3pePzlCXaRtmqPKlq1Mr01eroFwfk2uGRuB5ilsC+HaVFwH+lxBO4RitQafZT6SGGW2HF7P7pdits+8ORV4/SLQ==
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=nbO0UYxMPN49lUgfPa/AOG9MNqxUbjVd/4U7g9nz5T8=;
 b=ZZmVka0hfTHKhsqpWmmojouAdwXiXTDUHyLi5O+D+jK+1y1TdFGpcfWsVZSlV2rJeVLki50FCMR0R9tElknZrgekN5mQs4CaStHl6+LRnB3UAAddM1JVhGT5BeHJ/ZOvCgOx85IrVUxQ78oP9lvvMsVyvoIUY/6UlP6rGaRUEfM=
Subject: Re: [PATCH] x86/CPUID: add further "fast repeated string ops" feature
 flags
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>, Ian Jackson <iwj@xenproject.org>, Anthony Perard
	<anthony.perard@citrix.com>
References: <c4e5fad5-0468-fe9f-aa6f-1a4efce72cc4@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <3124157e-a180-3c66-4bb6-6c451b8436de@citrix.com>
Date: Fri, 16 Apr 2021 14:38:42 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <c4e5fad5-0468-fe9f-aa6f-1a4efce72cc4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0491.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13a::16) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2e0ce5bf-edb1-4f1d-6b6c-08d900dcf723
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5534:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB553494E9793F026BE21C810CBA4C9@SJ0PR03MB5534.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6430;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: NgglXXqycn/1yy0Y9VZ1IxqUwhp3YiI1ua1uMpAz0pFX++FGfpG0OzPlvBaOM2pLgOgZ2fc4luDEuiPmIi7/+gnWqYl5vLijYqE98P5eh0OWfa/XUajpN5Kh9z6trx8y7tvaSfk+5L6NSJY4Jy+o4uLEtl+Cue598RdsweVii/IGNeG9osjUzBiiaAyTWzxFJEocb4H5+b19Ir6qLT9crsU3AJs+bL4P7a/PeRwQvKwSR2qwOVnX99JJ43WSQbZwXlZ/kSn0Xd0301Abxrj+nYvG3SJJhN0CGxUUhSo6OuX7W7EqIc7AZFUDC+hEn7U0rAWwK0tzpKiCyMoXIaEREsAG+WCZPBA4Ec/YsS9XDJ7m6BGTOVv3YrD96fFIw9YjDOffcl9HyRDdDQIM6fOz8GPXNWWfkxu5l/w98VNGe3eeHAf9TrVihfuBWjFf5F7E0a2LPc8++MpQahcAOI4j8VTkEeXd0OC6GLhVRr2rMUzN/+opRv2PS+NzrysrLr4xb9nKshxPMvaQjGHHmwG1EmIvC61oXAOZReIFn9xUVuifP19dKqsH9dhc1tuVk9QRC4w7C4SGAELYO9NzuX5nRx2maU0BTo9o6hIicVxV9AacDTLDNPEbG9vw4saxd2LZ/zeGfJ+u8Y/i1wbe5jJXI0JM7FSK9GTVkw52y37Ya9TQKnWoHWH3AAX1ShWTtYiy
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(366004)(396003)(346002)(376002)(136003)(107886003)(53546011)(4326008)(186003)(26005)(66476007)(5660300002)(66946007)(8936002)(66556008)(16526019)(31696002)(6486002)(8676002)(86362001)(31686004)(316002)(36756003)(2616005)(16576012)(2906002)(956004)(478600001)(6666004)(4744005)(54906003)(110136005)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?YP9Vrtk6Y/508h34wqU+y6NfQusZtpPUoIaWqAp?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 2e0ce5bf-edb1-4f1d-6b6c-08d900dcf723
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 13:38:49.0543
 (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: l52KruLeaOzV2zlVtSKyRbs9TR5HkOwmQFabmN3mBq7Ok31MShGfmpDaVUK/IbAAVBtrNLNiOjr2ghWQxCV5KJCh0yfXZMX0pdgwvAdoxKw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5534
X-OriginatorOrg: citrix.com

On 16/04/2021 14:22, Jan Beulich wrote:
> Like ERMS this can always be exposed to guests, but I guess once we
> introduce full validation we want to make sure we don't reject incoming
> policies with any of these set when in the raw/host policies they're
> clear.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>

Like *everything* right now, there's no safety checking and rejection of
bad incoming policy data.  Xen will still zero out the bits it doesn't
like, and fixing this something which Roger and I are working on.  Its
basically the last piece of the "move to a new, better interface"
toolstack work.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 13:42:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 13:42:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111753.213727 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXOjY-0002VX-Oq; Fri, 16 Apr 2021 13:42:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111753.213727; Fri, 16 Apr 2021 13: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 1lXOjY-0002VQ-La; Fri, 16 Apr 2021 13:42:08 +0000
Received: by outflank-mailman (input) for mailman id 111753;
 Fri, 16 Apr 2021 13:42:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2kml=JN=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lXOjW-0002V7-WA
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 13:42:07 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cc84b4b2-4df4-4903-8c0a-57855bba457e;
 Fri, 16 Apr 2021 13:42: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: cc84b4b2-4df4-4903-8c0a-57855bba457e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618580525;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Zf3L37ioT5E4VpIlU4TBg7q0SjAb69aYynp8jqd1Gfs=;
  b=JoUljDyweh4cmlK2oZmXHzlUeJxsQ2wylX6gdUTxYj+plktH6Pu8R2NK
   dVpbm46H/Wf2bsD8jIbLXUrw38cWyWjWcGL/daBPEkSdbfATSppnBU4tZ
   +m9zpISO9OASB1G+B8xbo++mLY+kTytff82/1+G+geHdqsR4og9ZfFo32
   E=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ICjlh5Dc5G8OMGlVv/UVWrsj5540Z7XRm9CCPEPzmciN0uRna3YPIR67Lcj57q+2fpl0z5ibBJ
 4+R/cO7CbbJHsoy+fSgUDeUq8vmwsOEfqqbkwOxNf45TMGXANlP0tdxaN7XH6rJCf3irykME54
 JzSUZBowqfz+gf7iKaxM5eCB31/RsyMUtebdjk4bqUqn4xALypUZlwA19PYo7VUzlCJb3ZGVoD
 hWSCDXS9larIPyNcp99UnJnBFMndVBQJy/FJUAv8zSoyql2SDkwFUTnPcn/XcwkqKplpZID8mM
 Pv4=
X-SBRS: 5.2
X-MesageID: 43244135
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:3ztwGKGD+Y06eapRpLqFRZTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76
 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYdNi+wFEpqSA5aQb8wE5
 SB7sRKzgDQBkg/RMK9G3UDQqz/vNXNjp3relorABQg5QmIg1qTmcLHOjKf2QoTVC4K/Kc6/Q
 H+4nHEz4iAk9X+8B/T0GfP849b8eGO9vJvDNGB4/JlUgnEpR2vYO1aKtq/lRAz5Nqi8VM71O
 TLyi1QRfhbz1P0UiWLrQD22w/muQxemEPK7VODm3PsrYjYaVsBerN8rLlUeBfY9EYs1esUuM
 kgvxP7xu9qJCjNkyjn69/DWwsCrDvRnVMYnfMOlHsaaIMCadZq3Pwi1XlIG5QNFj+S0vFALM
 BSCqjnlZRrWG+BY2uclmdix8HEZAVJIj62BmIGusCTzgFMmmF4w0Yy1KUk7wY93aN4ZJ9e6+
 veNKN00JlIU88NdKp4QNwMWM2tFwX2MF3xGVPXBW6iOLAMOnrLpZKyyLIp5NuycJhN6Jcpgp
 zOXH5RqGZaQTOhNeS+mLlwtjzdSmS0WjrgjutE4YJih7H6TL33dQWeVVEHiaKb0rYiK/yef8
 z2FINdAvflI2erM51OxRfCV55bLmRbeNEJu+w8R0mFrqvwW83Xn92eVMyWCKvmED4iVG+6KG
 AERiLPKMJJ6V3udWT/hDTXRnPxam3y9Z99C8Hhjq0u4blIErcJnhkeiFy/6M3OAyZFqLYKcE
 x3J66isq7TnxjzwU/4q0FSfjZNBEdc57vtF1lQoxURDk/yebEf//GWeWVY2mq7NgZyJvmmVz
 J3lhBSw+aaPpaQzSctB5aMKWSBlUYeo3qMUtM6lrCc49zmPrc1FIwvVqA0NQijLW01pS9a7E
 N4LCMUTE7WET3jzY+/ioYPOe3Zf95gxCGxIcBVrnrbnV6Gpd4mQ0YaWzLGa7/UvS8eAx5vwn
 Fh+a4Wh7SN3Ry1L3Ekveg+OFpQLFiMDKl+FwSDboVMkrXNcAV9JF36wwCyulUWQC7H5k8Sjm
 vuIWmxdevQClRQgHxez53n6Uh5bGmbYkJ2ZE1rqIEVLxW1hl9DlcuwIoaj2WqYbVUPhtsQNz
 zIehM+CAJjzdLf7m/epB+yUVEdgrk+NO3UC7ouN4zJ0nS2MYuSiOUtBPlP5qtoM9jor84GWe
 +SYBWuMTv9Eu8lsjbl/0oNCW1Rkj0JgPno0Brq4CyEx3Y5G+PVO0kjaLcBId2QhlKUDsqg4d
 Fct5YSsuSxOGmqNYLD5qHTcjJZKhTc5USxVPolrJhIvaQ08Jt/dqOrJgfg5TVi5lEZKsyxqW
 Y1BIJcy5rFMpV0f8MTdzlCl2BZ3+inHQ8OiEjOHuQ6fVsRlHfVMNOC3qrQpdMUczm8jTq1HW
 PazjZU8PjEVRaSzLI2C6o/JmJNdUg3gU4Sit+qRsn1CA+wcftE80f/GnihcKVFQKztI8Rckj
 9Kp/WJlfSQbSz2xUT5uiZ6OLtH9yKCTdmpCAyBXc5O/NrSAyXBvoKapOqyhizwUz21dgAxgp
 BEb1UZaoB7sQYZ5bdHmhSae+jQuUIqk1xX/DFhmBrM4+GdkRnmNHADFxbYjJVQVSRUKV6Sg6
 3+gLCl6Eg=
X-IronPort-AV: E=Sophos;i="5.82,226,1613451600"; 
   d="scan'208";a="43244135"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=J9it81w3jqQV98uE8u/2i/WRQlI3PzCLCKy+WN3iDI4IZkkclJajW6F1I0cs3M1W67592k2tROqn7sQnN6EYjW1dfuSvCStLRgEAm3kIV4w8jhjnZ1IdXDZuzI0GT6vFs9Va0hyjcHt09yGRdl5kMnZbta0zD2id/fjdgcVMCt9V8nhWAmM//2A11ppMDfmDZyX8TGtO4f7tWSorjylb8UcjnMtMnCKmV99AVZCYv6RppnW4/JTpwSLh7ds8ANZ5jjWiygq5Z6JmnYiuLSQz1iwp0934Xa0Z7EpeXBcYsjA4YML7lwmgQTYw3+T9dtqx07KB1wJgpHePs2SrQcQEwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qXhPfiG0SayL8xY9zIMH8XBMLF2Wd+VFrEKVsHjucGc=;
 b=fgf3kMD7z0qebvEznVfsUoXmUzVbQQSvX9SjhJE+w0A29cdCNHLxy/0Zpdw6EEbtT4KcuMy68bz7GZkS3bM5gtYs6nSTKSzTicPdYbFVI0HcdSzj0zOxFTBByG7GjcAqk0uxpquLvWKacTMZV6ogEpZxrgaGUgda+A2j8rYA+7BxjPZdNTbxXkQSWcUl75EboJTSP1rrBSpXQ/lu0VY0Gjw/tgvPkwlmEseAnH5+01YzHEtwJECDRiaFZvO6jVKDuAgxsR3zysnlC7NdVIKUUVibYQGyf2VwAhe8qHXwaQeG++l9Q1eZB6TD1R5gFjIlkxriF5Gt+wSOOTITiK+Lxg==
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=qXhPfiG0SayL8xY9zIMH8XBMLF2Wd+VFrEKVsHjucGc=;
 b=X8E0tSijYTfExMfDGn99MPjR8YrwjS3XdRYRZGEejcp817qol5rT80pzViAncPdSCDYd/vczDhDQ+F9hEqJ7uqy23pm10HWQG4vmfvYPIeZBRU7WViLJy/gKUM0pT0LNLuD7Dm7ZhGs5RGHHX4guBlRPStPXJXsBx6jUQ6RbFEM=
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: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/oprof: fix !HVM && !PV32 build
Message-ID: <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
Date: Fri, 16 Apr 2021 14:41:56 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0079.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:190::12) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a41bfe78-119e-4104-c0cf-08d900dd6ab2
X-MS-TrafficTypeDiagnostic: BY5PR03MB5220:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB522070AD2E8EE82F7D46A6F7BA4C9@BY5PR03MB5220.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6430;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: TFoiJ59aLmEpgUmVHljZryr+8v+oKxGcSMeiMQn8jivarBBNhNK1C1VhHZ7Qi1A+nV52dl+wrI2RDT309HtnSPm31DqsUfgEP5MvLKK/VkJ/aQvmgLLkqrNCNH0S/CVYosIhUoIeqYlLKjRFQeKGjP24BsItV/fky2G9OMI38gl/UAPJI2awcp979+F0CcqzwMSZcKEAoiPHwPtpAUN4YAACfxXauBBLR6taTXMxL42KAvFbjWjcMSca0GvvrOmjic7IpmdY3il0WnyUxg+oACUSAXTbl+j5qDyOrASs74VyBV4yg+bll2tzRkdBOXcPPsFD30vMB1wI7BjbJh2xK01JtFm1hG3Gckh1eHM1oNgeGywC4WUsst+jGK53rTaandbyXE6xlzKMzXywDbPtkWorawo0Fna9yrUzxOWQGHAg+hySK7d9qOKc/gKZLSbuVFnSFfHcKqrS2dEos1xNjqrK6SxNxov1wP2gm2yVWoPPYr6tqIQzSW4ZcspZ77mmzFramHawex9n+qhioLm/NuofBLJKpBFeKPSLEE5y/BaTL2bIUHlzwZ1XjF4LNAtqAR8Y44sgcfT1/Zunly1Ob49rpi6AaucC1vluEcRLR0N6o7LVvJpC1Ibve9Ztc40EvXdI++yV2laWojhmwIB8a079XTvKUj0QIhMzi+aQyLxsX0nKhpWqCx8Np0XpsJ/r
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(396003)(366004)(39860400002)(376002)(31686004)(2906002)(16576012)(316002)(66556008)(26005)(6666004)(38100700002)(16526019)(66946007)(8936002)(36756003)(110136005)(8676002)(53546011)(186003)(86362001)(54906003)(31696002)(107886003)(6486002)(2616005)(956004)(66476007)(5660300002)(478600001)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: a41bfe78-119e-4104-c0cf-08d900dd6ab2
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 13:42:02.8667
 (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: C5X8jzkc8uwA0E4/l/ywsZ6pt6Zj/lZKLcRQY3H0FrFlMRZhn+IHlQ8jDwIz2kpIwvxLZy0dYCIgDC1AI9ynbAoEUSalNocExhNP8kHBfa8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5220
X-OriginatorOrg: citrix.com

On 16/04/2021 09:16, Jan Beulich wrote:
> clang, at the very least, doesn't like unused inline functions, unless
> their definitions live in a header.
>
> Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

I agree this will fix the build.=C2=A0 However, looking at the code, I'm no=
t
sure the original CONFIG_COMPAT was correct.=C2=A0 In particular, ...

>
> --- a/xen/arch/x86/oprofile/backtrace.c
> +++ b/xen/arch/x86/oprofile/backtrace.c
> @@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
>      return head->ebp;
>  }
> =20
> +#ifdef CONFIG_COMPAT
>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
>  {
>      if (is_hvm_vcpu(vcpu))

... this chunk of logic demonstrates that what oprofile is doing isn't
related to the Xen ABI in the slightest.

I think OProfile is misusing the guest handle infrastructure, and
shouldn't be using it for this task.

~Andrew

> @@ -50,6 +51,7 @@ static inline int is_32bit_vcpu(struct v
>      else
>          return is_pv_32bit_vcpu(vcpu);
>  }
> +#endif




From xen-devel-bounces@lists.xenproject.org Fri Apr 16 13:52:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 13:52:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111763.213745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXOt8-0003XU-Uw; Fri, 16 Apr 2021 13:52:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111763.213745; Fri, 16 Apr 2021 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 1lXOt8-0003XN-Ql; Fri, 16 Apr 2021 13:52:02 +0000
Received: by outflank-mailman (input) for mailman id 111763;
 Fri, 16 Apr 2021 13:52:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2kml=JN=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lXOt7-0003XI-TE
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 13:52:01 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 23b2ea9d-f621-48dc-a7fd-b08feca78864;
 Fri, 16 Apr 2021 13:52: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: 23b2ea9d-f621-48dc-a7fd-b08feca78864
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618581120;
  h=subject:to:references:from:message-id:date:in-reply-to:
   content-transfer-encoding:mime-version;
  bh=aeohhhKKAm6meSXtE59Iz6vTz0lHGCF2S1wRzPflROM=;
  b=U+GXx6HitB3BRzBlmM7MGjUS2L3rpqcxZdyGFrrUQD5BWK55XI/3nDnj
   c/oCN3jydNcTs9jOvoDPFaQyaEf79o0KfghGYJDx557tb7IyTNoxWQbD0
   BpgdBWwAcV7E1A/jiSSUQ9/j8SPJZYWjz5LULACJbnaTaikcVluSTq8wr
   A=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: vcUSk5pFwH9+ajPhtSmr8CticifXUW8WoylxarKijn3CnJfZc86dIW9stfhGxoGtnq7V/Ym7sR
 m/pjAYOAuSaELQWiu6mwlBVfK73CUmLOQ25GYsH3pU1V2PAMlz8v+/IvOaN9KE9Ujr3UflX5HH
 6xWJEIiaLrMFeokZ+nwu39Es4dihJ5f5HEfa+BVxTIgrtIk69wdhbwEul79CiSEJQXi8armeu4
 KXkOrVaQtCBLoGyUd4xeOMDwaolUGibDzGk6t+9SxK2UEhBXOPOobu+4XbNAtXUZwgC2t6u+yR
 qTw=
X-SBRS: 5.2
X-MesageID: 41763928
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:mRhZkqBwkw/UvBrlHekQ55DYdL4zR+YMi2QD/UZ3VBBTb4ikh9
 mj9c516TbYgCscMUtBpfmuI6+FKEmxybdU5s0rMa6mTE3avgKTXeRfxK/v2SfpFSG71uM179
 YFT4FbCNn9SWd3ltz75g7QKbgd6eKK+qypmuvSpk0FJWpXQppt4AtjBgGQHlcefngkObMCCJ
 Ge6sBbzgDARV0raK2Adxs4dtmGjfniuNbPZhYCFwQm8mC15w+A2frRNzC1mjsYTD9Lx64vmF
 K19TDR1+GGu/G/xgS07R61071m3OHM4Od5KPahsfc4EXHFoCyUDb4NZ4G/
X-IronPort-AV: E=Sophos;i="5.82,226,1613451600"; 
   d="scan'208";a="41763928"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TXeMmXYQ93pYD8A/vy8k5x6xn9DmKAbd5pKyHoZBzlnXaFntLDSR8OIB1B15F/hbE6IzRA8gnDSSnojaQdznIOC+O1D0CTaSPVH+uUkPozTq9kXVnXAovqDA9gfQFXuVp/8rWc8vxuQo5KKVXaCXpMqxgXLjSIGWtpOJHF4Kg58dClXFlyv3IBmvLWPc2OA6LWMWKBM2jGt9Lof80Hr5hXaDVW5O8wkfPxbUrAz7Ytv0R7PiPtfhMQeXTV7YiGxsRZDDfo4P74L31q+U9Q5WfIfROsBL79zMOw6Zt3bprAeVaDeB4BZSc7ZJGCg2ErDTuPRjZZyIU2Cpkma/yzLLHQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aeohhhKKAm6meSXtE59Iz6vTz0lHGCF2S1wRzPflROM=;
 b=fY6Tw5zHNsKavdkrT3w2QngpcjJtKKpLoVFojy0moBmVoUdT6iCpsdoKQjz6aRW/C4CIlgsjSxXI2ZRkKowJItlMYqxBuOXIMQuznfVh/JXlCqfWn9oJC8fvs0utEHnO3oGQlq6qczdmD5LgS3u7tdDxvDjk05cWs6rNmhmnE+8jZ5OtioNCojkk4JeNMWNckvZbcyHBhnBPgbxjoZW85dN9jk7dfNs/W2t60FGG+ZXqL7bhKEgVYwLwygynIBzdepQ0UArXC49tnr8A5Ib6oHOqrg0bftA75MDBlmGOr7ZzDJHSbXoJZBL3qxoS5ZaqgWEDjmEckhEI6GL3KYDNdA==
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=aeohhhKKAm6meSXtE59Iz6vTz0lHGCF2S1wRzPflROM=;
 b=WQC7NsDQlwI1fc8dH6ehturjib/0WAvIrLyreiFDMXGFOHE1OvLuQhCJq7jU+HkXjLoQX4IbTPcgGUCZetZe1eCMnhbkc9r6xoMY/yPqj1SEoDIrtkscLhH0vbv1UItXp9ZG4/M2vRBQaFi1bO05sAsvkm2oaXYE/a4KM4wjsig=
Subject: Re: [PATCH] x86/pv: Rename hypercall_table_t to pv_hypercall_table_t
To: <xen-devel@lists.xenproject.org>
References: <20210415132138.29007-1-andrew.cooper3@citrix.com>
 <d553a6f2-157c-a4ab-02ef-fdd1ad6b9638@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <84a1b313-2d9e-a4de-4819-82e9e4657302@citrix.com>
Date: Fri, 16 Apr 2021 14:51:41 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <d553a6f2-157c-a4ab-02ef-fdd1ad6b9638@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0500.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13b::7) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8522ca41-e449-420d-3820-08d900decd13
X-MS-TrafficTypeDiagnostic: BYAPR03MB3991:
X-Microsoft-Antispam-PRVS: <BYAPR03MB3991A46E68BF0F36400EAE59BA4C9@BYAPR03MB3991.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: PhBIlIpUVifTgBdcUknqo/O960pJ0BNuOEtoELeX0W0ChR5t/zxQKXJB9PtAeOH+5Tf1ssFJVz6SW5gmHGF3CsDws0pJnnlRPX9F+yIp2ABjwKBvOre3K9ruMzK89s39d/ocPDRUrxjbhQ1exVto8RECc/k69/eTcI81Ya4Ka8tjsqRAkS2JaU65NzJkVazSiTkm5IL6TmSwtM0Do6vgmxkMfH8HZlwq9dkaxTyTSf1vv+A2PhW3U1u6WW+/I51tYZyyVlXpGF9ohXknZ1axfNZljc+JZp9QP+ZPxuCFxyGN3t41wZ7DPTYPR+O96I5X5GfiNvGUhPjKWOmQ3+XUVllROfIjsW0eERntWdrWerUn3ILvPIGThvAq4ekCep2fOIs2fNW8cC8nqjSe9q4xqcBp4ErygYeWx+fnU+Q6TQCDuc2DPzGT1FCYQ7AqNTWvOloXdoEw7Mk80FXHSb94AQGIUjIhBfDihQhOXfRkNReNB6jLHLlBytuBwazW0ZCMnzrtTHMWJxAQwxGKn2aaSxnu1Sfo4oogY3fsSa688GEZRiJtmskhn+cU1RM68ZZf5dgWYj/1NBcTcKBH/dugYKK0xJjH/lb+1vpuejb5nFYEwSQdU2G4QDQplX+tblo67VnICI60lsr2HNlvn5/yh535lq9SwQ7s+larmnDKYD39a19CIQdCJRL4eH9k/3j6
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(376002)(136003)(366004)(39860400002)(31686004)(2906002)(6486002)(38100700002)(16576012)(8936002)(956004)(2616005)(66476007)(6666004)(66946007)(316002)(86362001)(83380400001)(5660300002)(26005)(16526019)(8676002)(186003)(478600001)(53546011)(31696002)(6916009)(36756003)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 8522ca41-e449-420d-3820-08d900decd13
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 13:51:57.4813
 (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: HGGouUWzhen3xiIf+Ia4wQunTDA1iBwG523bprPImmw0yM0fdq1uwE5FrnWPpHun3z2IySHOiGoThzheggUIk9A3qjsIdzezzDn84z+gkrI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3991
X-OriginatorOrg: citrix.com

On 15/04/2021 15:04, Jan Beulich wrote:
> On 15.04.2021 15:21, Andrew Cooper wrote:
>> The type is no longer appropriate for anything other than PV, and therefore
>> should not retain its generic name.
>>
>> Fixes: 527922008bc ("x86: slim down hypercall handling when !PV32")
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> I'm not convinced this warrants a Fixes: tag (afaict there's no breakage),
> but in any event
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> I had considered doing the rename at the same time, but then decided to
> save on the extra code churn. I'm sorry if this was the wrong choice.

I would have requested the change on code review.  Not necessarily part
of that patch, if it were easier to split out into an adjacent change,
but the patch did fundamentally change the purpose of the type.

Part of me still wonders whether it would be better to drop the type
entirely, as on the HVM side.  However, whichever way you rewrite this,
you've always got an ugly plumbing problem with the pvshim alterations.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 14:21:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 14:21:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111784.213765 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPLG-0006V7-Dr; Fri, 16 Apr 2021 14:21:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111784.213765; Fri, 16 Apr 2021 14:21: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 1lXPLG-0006V0-8m; Fri, 16 Apr 2021 14:21:06 +0000
Received: by outflank-mailman (input) for mailman id 111784;
 Fri, 16 Apr 2021 14:21:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXPLE-0006Uv-Te
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 14:21:04 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 73bc7459-4586-439d-bb99-7c6addd46744;
 Fri, 16 Apr 2021 14:21:01 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E013AB2EC;
 Fri, 16 Apr 2021 14:20: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: 73bc7459-4586-439d-bb99-7c6addd46744
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618582860; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=CO6+K32az/5ynCNoY8dlOJq1QiDtv0BWjVq2zi18FrE=;
	b=oRfOIAIzJcCr2JVcboadkfv3DVj0kfDN+jUOGKs9gJzcm53BwITdqxDLarPYF5FOMKZMgS
	i35QGdSyhdzO/Ev7Q6tGDMr4SNFAKrJobvHGXmJgvRNDTjpl/RWuptOrp9SCydJvQDPKZ7
	YNQue8bDcp/nkzmeW/dMO79zK3CGXhw=
Subject: Re: [PATCH] x86/oprof: fix !HVM && !PV32 build
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: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
 <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <caab96a2-3949-9ddb-e6ab-9a95c958e4d6@suse.com>
Date: Fri, 16 Apr 2021 16:20:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 16.04.2021 15:41, Andrew Cooper wrote:
> On 16/04/2021 09:16, Jan Beulich wrote:
>> clang, at the very least, doesn't like unused inline functions, unless
>> their definitions live in a header.
>>
>> Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> I agree this will fix the build.  However, looking at the code, I'm not
> sure the original CONFIG_COMPAT was correct.  In particular, ...
> 
>>
>> --- a/xen/arch/x86/oprofile/backtrace.c
>> +++ b/xen/arch/x86/oprofile/backtrace.c
>> @@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
>>      return head->ebp;
>>  }
>>  
>> +#ifdef CONFIG_COMPAT
>>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
>>  {
>>      if (is_hvm_vcpu(vcpu))
> 
> ... this chunk of logic demonstrates that what oprofile is doing isn't
> related to the Xen ABI in the slightest.
> 
> I think OProfile is misusing the guest handle infrastructure, and
> shouldn't be using it for this task.

I'm afraid I consider this something for another day. Both the
original #ifdef and the one getting added here are merely
measures to get things to build.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 14:21:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 14:21:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111786.213777 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPLa-0006ZJ-KN; Fri, 16 Apr 2021 14:21:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111786.213777; Fri, 16 Apr 2021 14:21: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 1lXPLa-0006ZC-HF; Fri, 16 Apr 2021 14:21:26 +0000
Received: by outflank-mailman (input) for mailman id 111786;
 Fri, 16 Apr 2021 14:21:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2kml=JN=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lXPLZ-0006Yy-B3
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 14:21:25 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id be150543-f36b-4b4d-99ef-480368d2b169;
 Fri, 16 Apr 2021 14: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: be150543-f36b-4b4d-99ef-480368d2b169
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618582884;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=TS4K04nzW27cq6sYeA1GsnoF5qXEBZPiikDGGWvrla0=;
  b=AJckSucdqQsEq6890bC1W3h0rHyfoGc4X5AKR6aCXoW5TntSkpgV6m/C
   vVW0Ez4qSz2LhUMg50CpB1xDf/uH7Fdafu99GNEMDwQVNxKaQJ6ViJVV7
   wi4OfhbzbLgAuAoeHoKZfqfZmt95K/Xtg16vecax2jEi3k6Ad8ttoThn4
   8=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: sUcZt3QaDMLDz6ITqMrCoHBKqNTxAsFuHVP+j6U2Ca6gc+hJmoxVu4tz3E7tCDdt20JZm/aBxY
 EPsMtZR9v4f45QPcgJUc6dDoNTWWopBzvPAyCTdknBSfza8zqQWaPaX7pKaxjchmdFL51tgILW
 lHSwhIsvgCOOoP5v1oGVGhsTvcghstjFRsaeWNOv7HDiMIyVjNq0ps6gCeUAIrJPUX4KVAh/zG
 ep9OL5WyCId6dwCdP7lCS32EyaatIOUUHrd7kXyDN6hlkIiqEJ9hv68IarnQ/Sw4WWdodTsyXR
 +Sg=
X-SBRS: 5.2
X-MesageID: 41766731
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:5BytvqEd1nvevSOzpLqFR5TXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7L0/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeOJwTXzcQY76
 tpdsFFZOHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLT1CQYsI1XYcNi+wFEpqSA5aQb8wE5
 SB7sRKzgDQB0g/RMK9G3UDQqz/vNXNjp3relorABQg5QmIg1qTmcHHOjKf2QoTVC4K/Kc6/Q
 H+4nDEz4iAk9X+8B/T0GfP849b8eGB9vJvDNGB4/JlUQnEpR2vYO1aKtu/lRAz5Nqi8VM71O
 TLyi1QQvhbz1P0UiWLrQD22w/muQxemUPK7VODm3PsrYjYaVsBerJ8rLlUeBfY9EYs1esUuM
 kgshP7xvgneS/opyjz68PFUBtnjCOP0B0fuNUekmBFVs8mYKJRxLZvj399KosKHy7x9ekcYZ
 BTJfzbjcwmFG+yU2rUpS1GztCqQx0Ib227a3lHkMmU3z9KpWt+3ksVyecO901whK4Vet1q4f
 /JPb9vk6wLZsgKbbhlDONEesevDHfRKCi8fl66EBDCLuUqKnjNo5n47PEc4/yrQoUByN8XlI
 7aWF1VmGYucyvVeIyz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykuO7ys9vQPHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYk8pss7YVSTucjGQ7ea9dDzQbL2Hv7AADwkUmTwDj
 8oRz7oPvhN6UitRzvWmx7Ud3TxelHu3J55HaTAltJjjLQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eaqACNjCH1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXWhT2XCANyJuVs++Kn
 8Ym31HvYaMa7CAzyErDNyqdkiAiWEImX6MR5AA3oqO+NniYZF9Kpo9QqR+GUHqGnVO6EZXgV
 YGTDVBal7UFzvoh6ngpocTHvvje951hxruB9VVp3LZvUC1vtouWXMfYj6rXaes8EMTbgsRom
 c0374UgbKGlzrqA3A4mv4EPFpFb3nSPKhLFz2fZIJfmqnifSZ5SWviv03CtzgDPk7Rs2kCjG
 3oKiOZPdXGGEBUtHxj3qH2y19sbWmGc0Vsand1jJ1lGQ39ywNO+N7OQpD2/3qaa1MEzO1YCj
 3DbDcICi5Fxty81neu6Xu/PERj4q9rEv3WDbwlfb2W52ikL5eQk7oaW9VO+ox+CdzouugXcO
 6WdgOPNgnkA+cx1wH9nAd8BABE7F0f1d/40hzs62a1mEMlCf3JOVJ8WvU1Jcqf42WMfYfB7L
 xJyfYO+c2+PWX6ZoTYleX5bztfJgjSpmDzZecyspxQtb8zsrw2P5Sza0q/6Fh3mDEFaOHznw
 ciZY4+xpbrEIpmZdYTdCJU5UBBrqXEEGIb9ijNRtYjdlQshULBN9yH47D0uaMia3fx0zfYCB
 26yWlh5P/LUCuI6K4CB48xKWpQblIg6H4KxpLKS6TgTCGrffpE5ly0LzuUd6JcUrGMHdwr31
 pHyuDNu++cbCzj3g/M+RN9P6JV6m6iBee/GhiFF+IN09u0Pz238+SXyf/2qDf8Uj2gbUsEwa
 VDaEwLd8xGzgAYs7df6Fn4doXH5mQ/k1Vf5jl7llninqieiV2rbH1uAEn+mZVZXT5aL36Sq9
 /KmNLoj0jA3A==
X-IronPort-AV: E=Sophos;i="5.82,226,1613451600"; 
   d="scan'208";a="41766731"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nr/RPSeBC8DMK2S2TDySqAqp5v35PzTyuULwGm6H/0u8OrPO+jhZ966rB2lga8G2DvkUmRg/1ihvQfcDX8ezTng/PqdlhcULIBXSFeP0b6Rp64pPM4NlJ/zH6iZ/CCZGvIiYvM6J4y88Wu208vx0nWKjM22pM+K2eCpB5K88zNS/pQLQNjIzL27Zq3s4ZliVTE3F/zVn25hwIABjILsTNH2ZOxORDRuJ63calpy57QOJU/zu76nB9bBmwIS4cDE1fxk5SKZk9Z1lIY9Ny2Jf9vOoPYqZ1CVehm2GssGZcSF6tTGILfXxpuzltfsfYCU5sWP5wsrePHiXEwqydFZYwg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TS4K04nzW27cq6sYeA1GsnoF5qXEBZPiikDGGWvrla0=;
 b=YIvIUNb73jfM2dyiJdtKzS94rbP9OYJyGpAW7849XNdKaIFFnnjUT6FyBppwgDFFWocfHCoMKZm992A10tYRnldomQf9HBsPw72RjaKpGIPp5nuMyskKajry0FHfPgsZzLxmnd5fe6KlgjBwKVpEus5Rz0/vnqZZg/f8zw1YPzzyXsOaCoJxqbPi0LVcAESLwEwInKiGSMX+JgYzhAKYfZ9JuYJuzHJ7Sm0t38Q4orbgdwHFrKNRNJFzlBIfSuTFMMxsHHMdLz28yCl0gtfubt85Gv9T8gjnVSQ3BQ30dj+ikd0M/Be/asP7w5aJ/V5ZsC1S7kAXUeRkhm5LRe3XEw==
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=TS4K04nzW27cq6sYeA1GsnoF5qXEBZPiikDGGWvrla0=;
 b=oFSw58DP6SUWxHn/QjGWr4WEsbaNQrq6wMACY+wxaqFAbV7+QV0M+CfeIxRxrrFos6VlYNfSzMThwxRQwBqSuIg9GfR+7MYpyvgxgaXyTpvDCfNX14pN7hLzzo397PeBuwoagm87rblGgnlLyO8pFwHW9DfxCjPf9WlqoW0raSU=
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: <7ffeec9f-2ce4-9122-4699-32c3ffb06a5d@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/AMD: also determine L3 cache size
Message-ID: <3ff79e34-da70-85c3-0324-efa50313d5b4@citrix.com>
Date: Fri, 16 Apr 2021 15:21:01 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <7ffeec9f-2ce4-9122-4699-32c3ffb06a5d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0294.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::18) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 38889546-ee66-415b-522e-08d900e2e057
X-MS-TrafficTypeDiagnostic: BYAPR03MB4245:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4245F438467485C1830BA031BA4C9@BYAPR03MB4245.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 6NJUxWAMVQoYG/oxbMgb6eW2uU2ZZwGfNCzkN/pZl93GL+392WOWiHUZ058pYAkUWbIeMVrs0hRPR3sTLkPVNxUbqdYBqHgoZKJATXYy73Pv9fy39kmE/Wdyii35IwwpOq6iDt+cSkwELRmti/FMD4slwCICBHDZ6cMD/Pnnum2heqUqiamTBv2DcOSMaECY+IB7sXuLjStrrzTtxwCf4y6V594P8hnaB1pSpSDpp/m2s0+DjXc8nl2JHxXDGqa7rsWlQagxwnCrck37puI3E3etT2ECPEdJnJAO3LCDJlaB3OMFcejQqrK3cGkAE3PuG9Q+hPjwK0AKeSBY421BgoyKkcIy4aPYeLh+mCTS2Dyc1m1+fw770xoXpwShbqQQv5HI5kNdCH/kMbwYznTWIsR7GSboLI+nVqeSJDVPrEXZ8PPk7UHdt/iLCl8wCPEsuxVvuFW/hOKZyWMjs3BbUaY/IT/NU4zxQ4Hy7u5wc7jpaIRwhRpd7PeXla9sJD/nBLnv73oehc+/jOA0FsBX0dW7yahbTSKHlNoC4qxDU4C1WT6e4REDBpaFIAb0VpVCnK3TFxaiPpNpYU5CfQB/h1+NogLJDDctQElp4ozoIvo=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39860400002)(366004)(136003)(376002)(346002)(31686004)(54906003)(16576012)(316002)(110136005)(6666004)(956004)(2616005)(31696002)(2906002)(478600001)(86362001)(107886003)(4326008)(66476007)(66556008)(66946007)(36756003)(6486002)(53546011)(16526019)(186003)(26005)(8936002)(8676002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?gijo8N6M/m+/uM5cvXRdx1ux+fMk07G3BgHwRjf?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 38889546-ee66-415b-522e-08d900e2e057
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 14:21:07.7452
 (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: 2trk0WAwN04/hJSRrlr16nEQsl9svw9IUdfRFKyzR9NjBldzjjBgtSfanUX++A9DlgrcLuM5ZPuq6kDoNH8zQEKPiTzyeUY651NQa5U5uS4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4245
X-OriginatorOrg: citrix.com

On 16/04/2021 14:20, Jan Beulich wrote:
> For Intel CPUs we record L3 cache size, hence we should also do so for
> AMD and alike.
>
> While making these additions, also make sure (throughout the function)
> that we don't needlessly overwrite prior values when the new value to be
> stored is zero.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> I have to admit though that I'm not convinced the sole real use of the
> field (in flush_area_local()) is a good one - flushing an entire L3's
> worth of lines via CLFLUSH may not be more efficient than using WBINVD.
> But I didn't measure it (yet).

WBINVD always needs a broadcast IPI to work correctly.

CLFLUSH and friends let you do this from a single CPU, using cache
coherency to DTRT with the line, wherever it is.


Looking at that logic in flush_area_local(), I don't see how it can be
correct.=C2=A0 The WBINVD path is a decomposition inside the IPI, but in th=
e
higher level helpers, I don't see how the "area too big, convert to
WBINVD" can be safe.

All users of FLUSH_CACHE are flush_all(), except two PCI
Passthrough-restricted cases. MMUEXT_FLUSH_CACHE_GLOBAL looks to be
safe, while vmx_do_resume() has very dubious reasoning, and is dead code
I think, because I'm not aware of a VT-x capable CPU without WBINVD-exiting=
.

~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Apr 16 14:27:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 14:27:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111795.213788 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPRB-0006tV-A4; Fri, 16 Apr 2021 14:27:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111795.213788; Fri, 16 Apr 2021 14:27:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPRB-0006tO-5t; Fri, 16 Apr 2021 14:27:13 +0000
Received: by outflank-mailman (input) for mailman id 111795;
 Fri, 16 Apr 2021 14:27:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vDum=JN=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lXPR9-0006sY-Ur
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 14:27:11 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2c7e847e-31b5-4606-b55d-44ef278c3195;
 Fri, 16 Apr 2021 14:27:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 959CCAF5A;
 Fri, 16 Apr 2021 14:27: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: 2c7e847e-31b5-4606-b55d-44ef278c3195
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618583229; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=GylRYSn4CD84amdEG3hItwQp+TxPmiUdhQSku1Wh9os=;
	b=Cx1wfpn9BAd52jNygKTPlo/wB4jqZckQBRkNeJTjYtX/RnVSZHXVhB/lpKNXN0xBUWDUeN
	AssQIAhgt8O/kMXmVqKS+dAG+CzTO/5m4vSXA8wEHxJNCAAvlBigqI/9KUCUK4oGeIlruk
	erCjyX71AjFYGxMO5PKEk7UH1BVHCLc=
Subject: Re: [PATCH] x86/AMD: also determine L3 cache size
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: <7ffeec9f-2ce4-9122-4699-32c3ffb06a5d@suse.com>
 <3ff79e34-da70-85c3-0324-efa50313d5b4@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <db533351-a11b-639e-5def-0cc99faf58c6@suse.com>
Date: Fri, 16 Apr 2021 16:27:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <3ff79e34-da70-85c3-0324-efa50313d5b4@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 16.04.2021 16:21, Andrew Cooper wrote:
> On 16/04/2021 14:20, Jan Beulich wrote:
>> For Intel CPUs we record L3 cache size, hence we should also do so for
>> AMD and alike.
>>
>> While making these additions, also make sure (throughout the function)
>> that we don't needlessly overwrite prior values when the new value to be
>> stored is zero.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> I have to admit though that I'm not convinced the sole real use of the
>> field (in flush_area_local()) is a good one - flushing an entire L3's
>> worth of lines via CLFLUSH may not be more efficient than using WBINVD.
>> But I didn't measure it (yet).
> 
> WBINVD always needs a broadcast IPI to work correctly.
> 
> CLFLUSH and friends let you do this from a single CPU, using cache
> coherency to DTRT with the line, wherever it is.
> 
> 
> Looking at that logic in flush_area_local(), I don't see how it can be
> correct.  The WBINVD path is a decomposition inside the IPI, but in the
> higher level helpers, I don't see how the "area too big, convert to
> WBINVD" can be safe.

Would you mind giving an example? I'm struggling to understand what
exactly you mean to point out.

Jan

> All users of FLUSH_CACHE are flush_all(), except two PCI
> Passthrough-restricted cases. MMUEXT_FLUSH_CACHE_GLOBAL looks to be
> safe, while vmx_do_resume() has very dubious reasoning, and is dead code
> I think, because I'm not aware of a VT-x capable CPU without WBINVD-exiting.
> 
> ~Andrew
> 



From xen-devel-bounces@lists.xenproject.org Fri Apr 16 14:29:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 14:29:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111800.213801 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPSy-00072U-Pf; Fri, 16 Apr 2021 14:29:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111800.213801; Fri, 16 Apr 2021 14: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 1lXPSy-00072N-M1; Fri, 16 Apr 2021 14:29:04 +0000
Received: by outflank-mailman (input) for mailman id 111800;
 Fri, 16 Apr 2021 14:29:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=tm2+=JN=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lXPSw-00072I-Vh
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 14:29:03 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown
 [40.107.21.85]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8230bf5c-fa80-4e45-b5cf-028424f81772;
 Fri, 16 Apr 2021 14:29:01 +0000 (UTC)
Received: from AM6PR01CA0052.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:e0::29) by AM8PR08MB6468.eurprd08.prod.outlook.com
 (2603:10a6:20b:360::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Fri, 16 Apr
 2021 14:28:59 +0000
Received: from AM5EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:e0:cafe::be) by AM6PR01CA0052.outlook.office365.com
 (2603:10a6:20b:e0::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Fri, 16 Apr 2021 14:28:59 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT016.mail.protection.outlook.com (10.152.16.142) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Fri, 16 Apr 2021 14:28:58 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Fri, 16 Apr 2021 14:28:58 +0000
Received: from addbca057cb3.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4DFB7C95-D522-4CEF-8702-BADA653DEB8F.1; 
 Fri, 16 Apr 2021 14:28:51 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id addbca057cb3.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 16 Apr 2021 14:28:51 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB5421.eurprd08.prod.outlook.com (2603:10a6:803:132::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19; Fri, 16 Apr
 2021 14:28:50 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4042.019; Fri, 16 Apr 2021
 14:28: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: 8230bf5c-fa80-4e45-b5cf-028424f81772
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rLoCrhU05SB41bqOWVg+Hxm8NldNj2WvUXUJiMRpR+4=;
 b=Nw6VV4e0CJ/HL8sJ6UORhtE0RxYtYozraUkJT5Rxka+dmih9v9CKXlBAcKomaRizmSD5wudhTVqRk0uhyOdlCsdcYU+NJFn1D3pltmnu8jl6jZ68HNWDZkELwaaGcQyeZ2qSnWKWR/svl3cFnIvvNzYuMntuWNRDWnXK1ghAlf4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7a0ea13b4fdba13e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=noKrk6kzsHxfzer6buoUC/gATjQCWqfdrww5JgOgS7K63tQQEtsMmtYpDJviZ3NRPZV0zTt+U+62Kgh4bzvNaDVjlDEucaug8qZC/oaXfGuAO2Z80HKR6KEkhAiDqA7pB8oysmNWjZBKWAJFD1Wxc171FMKY/ZxBn+XT9O66tH4VFOFMf4/eQgheCKZ0QcbF2u9DM8bkGBR6X7GgVQyc22b5IEKFH7PBUgOcGysA6DAomxxsdChtBKP9R7LFOGzJAmD9UKnz9Jvl4TEY+NdOHYnHUC/QOwZbv7I+yXWEtTRpdO7luMZE9ZLuJmxqMZ3BZk+dDq+Co0Pgtw5E3vBpSw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rLoCrhU05SB41bqOWVg+Hxm8NldNj2WvUXUJiMRpR+4=;
 b=SxyWiKb2240cV7TgZ1G+8KbR7CCcCzzOYFENen5o9MUoM7giKQJrjdJSqChB2l6m8ine5A7RKoYbYhTzuM+22/MgaJjzPuwlV9si37N9+QxwIYO5BdNUj0TS7QAzRBEdzc0umfhfWnjjNg5T2Ds1d2Mx2iefQNEDWKwJ4J9zshqGSzpFYY7TbthL5utGNA0ocXNYi+nCv/MJsLE1E1SzbB+ouDXFgz6fYehGRDg8NqDRApYkiqMWvxk/1zT0rmIdGMS7GInh6iDWoEO2cfdDkGG3CF2jBO/NJaGAi4U/pb4kBAcJuXMoaHNsxjB1pzka8K6BjXNN9oIiS8NPYr+gdg==
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=rLoCrhU05SB41bqOWVg+Hxm8NldNj2WvUXUJiMRpR+4=;
 b=Nw6VV4e0CJ/HL8sJ6UORhtE0RxYtYozraUkJT5Rxka+dmih9v9CKXlBAcKomaRizmSD5wudhTVqRk0uhyOdlCsdcYU+NJFn1D3pltmnu8jl6jZ68HNWDZkELwaaGcQyeZ2qSnWKWR/svl3cFnIvvNzYuMntuWNRDWnXK1ghAlf4=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Rahul Singh <Rahul.Singh@arm.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Topic: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Index: AQHXMrMxWiLHM7/9fEaAK+771/NYWqq3NDuA
Date: Fri, 16 Apr 2021 14:28:49 +0000
Message-ID: <E46F097B-B4DC-4FBB-8068-FC9F178F8BF7@arm.com>
References:
 <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
In-Reply-To:
 <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@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.3654.60.0.2.21)
Authentication-Results-Original: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 9ea36aeb-e1bf-4a76-ab10-08d900e3f926
x-ms-traffictypediagnostic: VI1PR08MB5421:|AM8PR08MB6468:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM8PR08MB6468F9562DD8236C1A7082AE9D4C9@AM8PR08MB6468.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:366;OLM:366;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 wzvNybsJ/0Y36wpyfjMhjK/Qas/pMkSvgosGnI7fUvSXlZS19owLAv3z63K1msmzk9i611zuiS7hf336EI67x5rjHvJBhvxfPHK8oNxmVV+U7BlkwqiiadS4c1ai4DMDjlwVwn97QGBl0ECcl2KBjC/+nDgu86t14ucG1DQXnGcyZ/W+NLP6qPX8bUsjgUsfyzGY3s8lVUJuts85bwpjQEB3jOo/83FVUErRX8B01o1vIrjJksVlZ5W5hnKHR5A4+pFDL7L7Tw9x+zxrSZ+GmZQpOgP6DWbtq8FTlkcM/I8JADDcKmZ/pmGtek/O5JzpYLxkMq6px8wgOp6TUGOJjZshS92LC/Z4nu3yf3DT0HDD9QZ7+aaGXDpg2l6fZR2eT44v0uVaz8HJoAILXINLGXgkYhx7tErbUBG0lETejs6avTVDd0aqeUC9HLwWS1TYUP3aeJRU+Gu5+5BXjJx4YlZcowj5SOAf/2IWisNAsaa0OEU5YnoWSzz6J906EhB39RJeTjtjO8tJQg6aHmaZH1AsJ1cYQ5jEU53sCUPco7EMBgEIwG4l1bAy5nNDqbO9Fd9aQkFcH5+uEtQ3VOwV2onKqh1RZQ6Nqx1PpWYwyjLCR1u/VZ/NvfIbr+zYPVXxjOpX665s7tq1sehu4wA8yMymHdrM5XDDgJVz9ncBd+4=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(136003)(376002)(396003)(366004)(39850400004)(478600001)(6636002)(6506007)(53546011)(38100700002)(37006003)(6862004)(2906002)(4326008)(71200400001)(316002)(122000001)(83380400001)(64756008)(54906003)(8676002)(8936002)(86362001)(91956017)(5660300002)(6512007)(186003)(26005)(2616005)(66446008)(66556008)(66946007)(66476007)(36756003)(6486002)(33656002)(76116006)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
 =?utf-8?B?dnV0eStIN1p2TDhVMkl3dz09?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <0B01751C7F647845B372E65C6738CA68@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5421
Original-Authentication-Results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT016.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	c22001cd-c05e-418b-7083-08d900e3f3e2
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EAbi4KUxBUgGSS+CxN4qG3oS3KExzQS7Vq9paQf8Wf0TizBwqmaz6H+kqJM3/A83jql5v3Dt9VAtqAzYrShvhOUjhQ1NDhCwCWxwtmFA/qENfGh4YONrSqLg5OMwfYF2NHCwqo9mKltlFPvDe/yrisM7k5pz/rmmY8JNEN77YFjUubk38h3h6N+p2w2RRrh9C39/O/K8HAQ/gRAwX7I5jaPBU5HTnWrXVdWiwAjeuFenAEbTWEqjJtJd/cHvzCzossL7ssgOh+5ESVIut2Vd/aqLKOuaFWq4r7nIZPYd65Bs0+JU2bczAbtkzb4a27OdOi08bv9g87GuztjdsLHfsAMb13hpvII2NkvYslYNvOPSIfcmEfYOZDMo6QWPVQVbsAxNNEFNtdHD/Y0vhjpmVOSXCeQqHfpBBR7+VTbiFlQF1zikBT3xBMDXWYxtWEC3f7jO6KkALHcyQdc/+5KAfD99UDIpSj4nTkpKKHS+xLaWd7cZUSdsiLSb87pvs2SffCmjSs9cdXXEcjPP0XQe49kHdQXGCM/IfI9/a5b58J/GTxHFyUQqb0fjYUBxqRxboLk8M0HwlATjo6pW5WUDH3j3T0m1bYGqR91gpnVNgitpmfCN+Ii2tLLZW86heB3YQ2C74gADDMYwH6j2Z0yd8lppXfyMmCo5Z1tMH5o48jc=
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:(4636009)(376002)(346002)(136003)(396003)(39850400004)(36840700001)(46966006)(186003)(70206006)(478600001)(26005)(70586007)(86362001)(5660300002)(33656002)(6486002)(47076005)(2616005)(82310400003)(336012)(6862004)(81166007)(54906003)(2906002)(83380400001)(4326008)(356005)(36756003)(82740400003)(6512007)(53546011)(36860700001)(8676002)(6506007)(8936002)(316002)(6636002)(107886003)(37006003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 14:28:58.6743
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9ea36aeb-e1bf-4a76-ab10-08d900e3f926
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:
	AM5EUR03FT016.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6468

SGkgUmFodWwsDQoNCj4gT24gMTYgQXByIDIwMjEsIGF0IDEyOjI1LCBSYWh1bCBTaW5naCA8cmFo
dWwuc2luZ2hAYXJtLmNvbT4gd3JvdGU6DQo+IA0KPiBSZXZlcnQgdGhlIGNvZGUgdGhhdCBhc3Nv
Y2lhdGVzIHRoZSBncm91cCBwb2ludGVyIHdpdGggdGhlIFMyQ1IgYXMgdGhpcw0KPiBjb2RlIGNh
dXNpbmcgYW4gaXNzdWUgd2hlbiB0aGUgU01NVSBkZXZpY2UgaGFzIG1vcmUgdGhhbiBvbmUgbWFz
dGVyDQo+IGRldmljZS4NCj4gDQo+IFRoaXMgY29kZSBpcyBtZXJnZWQgd2l0aCB0aGUgY29tbWl0
ICAieGVuL2FybTogc21tdXYxOiBJbnRlbGxpZ2VudA0KPiBTTVIgYWxsb2NhdGlvbuKAnS4NCj4g
DQo+IFNpZ25lZC1vZmYtYnk6IFJhaHVsIFNpbmdoIDxyYWh1bC5zaW5naEBhcm0uY29tPg0KUmV2
aWV3ZWQtYnk6IEJlcnRyYW5kIE1hcnF1aXMgPGJlcnRyYW5kLm1hcnF1aXNAYXJtLmNvbT4NCg0K
Q2hlZXJzLA0KQmVydHJhbmQNCg0KPiAtLS0NCj4geGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJt
L3NtbXUuYyB8IDQ0ICsrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAxIGZpbGUgY2hh
bmdlZCwgNCBpbnNlcnRpb25zKCspLCA0MCBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQg
YS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vc21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Ro
cm91Z2gvYXJtL3NtbXUuYw0KPiBpbmRleCAyNGFjNGYzYTgwLi4xYTY4YzJhYjNiIDEwMDY0NA0K
PiAtLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vc21tdS5jDQo+ICsrKyBiL3hlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11LmMNCj4gQEAgLTU5Nyw3ICs1OTcsNiBAQCBlbnVt
IGFybV9zbW11X2FyY2hfdmVyc2lvbiB7DQo+IH07DQo+IA0KPiBzdHJ1Y3QgYXJtX3NtbXVfczJj
ciB7DQo+IC0Jc3RydWN0IGlvbW11X2dyb3VwCQkqZ3JvdXA7DQo+IAlpbnQJCQkJY291bnQ7DQo+
IAllbnVtIGFybV9zbW11X3MyY3JfdHlwZQkJdHlwZTsNCj4gCWVudW0gYXJtX3NtbXVfczJjcl9w
cml2Y2ZnCXByaXZjZmc7DQo+IEBAIC0xNDk4LDcgKzE0OTcsNiBAQCBzdGF0aWMgaW50IGFybV9z
bW11X21hc3Rlcl9hbGxvY19zbWVzKHN0cnVjdCBkZXZpY2UgKmRldikNCj4gCXN0cnVjdCBhcm1f
c21tdV9tYXN0ZXJfY2ZnICpjZmcgPSBmaW5kX3NtbXVfbWFzdGVyX2NmZyhkZXYpOw0KPiAJc3Ry
dWN0IGFybV9zbW11X2RldmljZSAqc21tdSA9IGNmZy0+c21tdTsNCj4gCXN0cnVjdCBhcm1fc21t
dV9zbXIgKnNtcnMgPSBzbW11LT5zbXJzOw0KPiAtCXN0cnVjdCBpb21tdV9ncm91cCAqZ3JvdXA7
DQo+IAlpbnQgaSwgaWR4LCByZXQ7DQo+IA0KPiAJc3Bpbl9sb2NrKCZzbW11LT5zdHJlYW1fbWFw
X2xvY2spOw0KPiBAQCAtMTUyMywxOSArMTUyMSw5IEBAIHN0YXRpYyBpbnQgYXJtX3NtbXVfbWFz
dGVyX2FsbG9jX3NtZXMoc3RydWN0IGRldmljZSAqZGV2KQ0KPiAJCWNmZy0+c21lbmR4W2ldID0g
KHMxNilpZHg7DQo+IAl9DQo+IA0KPiAtCWdyb3VwID0gaW9tbXVfZ3JvdXBfZ2V0KGRldik7DQo+
IC0JaWYgKCFncm91cCkNCj4gLQkJZ3JvdXAgPSBFUlJfUFRSKC1FTk9NRU0pOw0KPiAtCWlmIChJ
U19FUlIoZ3JvdXApKSB7DQo+IC0JCXJldCA9IFBUUl9FUlIoZ3JvdXApOw0KPiAtCQlnb3RvIG91
dF9lcnI7DQo+IC0JfQ0KPiAtCWlvbW11X2dyb3VwX3B1dChncm91cCk7DQo+IC0NCj4gCS8qIEl0
IHdvcmtlZCEgTm93LCBwb2tlIHRoZSBhY3R1YWwgaGFyZHdhcmUgKi8NCj4gCWZvcl9lYWNoX2Nm
Z19zbWUoY2ZnLCBpLCBpZHgpIHsNCj4gCQlhcm1fc21tdV93cml0ZV9zbWUoc21tdSwgaWR4KTsN
Cj4gLQkJc21tdS0+czJjcnNbaWR4XS5ncm91cCA9IGdyb3VwOw0KPiAJfQ0KPiANCj4gCXNwaW5f
dW5sb2NrKCZzbW11LT5zdHJlYW1fbWFwX2xvY2spOw0KPiBAQCAtMTk2NiwyNyArMTk1NCw2IEBA
IHN0YXRpYyB2b2lkIF9fYXJtX3NtbXVfcmVsZWFzZV9wY2lfaW9tbXVkYXRhKHZvaWQgKmRhdGEp
DQo+IAlrZnJlZShkYXRhKTsNCj4gfQ0KPiANCj4gLXN0YXRpYyBzdHJ1Y3QgaW9tbXVfZ3JvdXAg
KmFybV9zbW11X2RldmljZV9ncm91cChzdHJ1Y3QNCj4gLQkJCQkJCWFybV9zbW11X21hc3Rlcl9j
ZmcgKmNmZykNCj4gLXsNCj4gLQlzdHJ1Y3QgYXJtX3NtbXVfZGV2aWNlICpzbW11ID0gY2ZnLT5z
bW11Ow0KPiAtCXN0cnVjdCBpb21tdV9ncm91cCAqZ3JvdXAgPSBOVUxMOw0KPiAtCWludCBpLCBp
ZHg7DQo+IC0NCj4gLQlmb3JfZWFjaF9jZmdfc21lKGNmZywgaSwgaWR4KSB7DQo+IC0JCWlmIChn
cm91cCAmJiBzbW11LT5zMmNyc1tpZHhdLmdyb3VwICYmDQo+IC0JCSAgICBncm91cCAhPSBzbW11
LT5zMmNyc1tpZHhdLmdyb3VwKQ0KPiAtCQkJcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7DQo+IC0N
Cj4gLQkJZ3JvdXAgPSBzbW11LT5zMmNyc1tpZHhdLmdyb3VwOw0KPiAtCX0NCj4gLQ0KPiAtCWlm
IChncm91cCkNCj4gLQkJcmV0dXJuIGdyb3VwOw0KPiAtDQo+IC0JcmV0dXJuIE5VTEw7DQo+IC19
DQo+IC0NCj4gc3RhdGljIGludCBhcm1fc21tdV9hZGRfZGV2aWNlKHN0cnVjdCBkZXZpY2UgKmRl
dikNCj4gew0KPiAJc3RydWN0IGFybV9zbW11X2RldmljZSAqc21tdTsNCj4gQEAgLTIwMjcsMTMg
KzE5OTQsMTAgQEAgc3RhdGljIGludCBhcm1fc21tdV9hZGRfZGV2aWNlKHN0cnVjdCBkZXZpY2Ug
KmRldikNCj4gCQljZmctPnNtbXUgPSBzbW11Ow0KPiAJfQ0KPiANCj4gLQlncm91cCA9IGFybV9z
bW11X2RldmljZV9ncm91cChjZmcpOw0KPiAtCWlmICghZ3JvdXApIHsNCj4gLQkJZ3JvdXAgPSBp
b21tdV9ncm91cF9hbGxvYygpOw0KPiAtCQlpZiAoSVNfRVJSKGdyb3VwKSkgew0KPiAtCQkJZGV2
X2VycihkZXYsICJGYWlsZWQgdG8gYWxsb2NhdGUgSU9NTVUgZ3JvdXBcbiIpOw0KPiAtCQkJcmV0
dXJuIFBUUl9FUlIoZ3JvdXApOw0KPiAtCQl9DQo+ICsJZ3JvdXAgPSBpb21tdV9ncm91cF9hbGxv
YygpOw0KPiArCWlmIChJU19FUlIoZ3JvdXApKSB7DQo+ICsJCWRldl9lcnIoZGV2LCAiRmFpbGVk
IHRvIGFsbG9jYXRlIElPTU1VIGdyb3VwXG4iKTsNCj4gKwkJcmV0dXJuIFBUUl9FUlIoZ3JvdXAp
Ow0KPiAJfQ0KPiANCj4gCWlvbW11X2dyb3VwX3NldF9pb21tdWRhdGEoZ3JvdXAsIGNmZywgcmVs
ZWFzZWZuKTsNCj4gLS0gDQo+IDIuMTcuMQ0KPiANCg0K


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 14:35:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 14:35:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111821.213834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPYs-0008BT-S6; Fri, 16 Apr 2021 14:35:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111821.213834; Fri, 16 Apr 2021 14:35: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 1lXPYs-0008BM-P9; Fri, 16 Apr 2021 14:35:10 +0000
Received: by outflank-mailman (input) for mailman id 111821;
 Fri, 16 Apr 2021 14:35: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 1lXPYr-0008BG-J5
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 14:35: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 1lXPYq-0008EL-GS; Fri, 16 Apr 2021 14:35:08 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lXPYq-0008Hr-1O; Fri, 16 Apr 2021 14:35: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=3KAeZ0PxqUnHyQxAynro00Zq8BtxXDyHD3cVH0TTUS4=; b=sZKN5dwPA4o9KL9rDkcpb3aU5T
	cQqdKALHJZ1WiF43+eQvFCaOs5tiCn4iLbb45y3p6ZCLYJLN8lOKpdtSqNQi2pfT9rJaRHbbF5sFz
	isrUvQaYv9XVNsFf171QT3o2eztykjgCWoFBVk9IN1T/DBG3eQY6j5noTF7B5fkSzlkk=;
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
To: Rahul Singh <rahul.singh@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
Date: Fri, 16 Apr 2021 15:35:05 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi,

On 16/04/2021 12:25, Rahul Singh wrote:
> Revert the code that associates the group pointer with the S2CR as this
> code causing an issue when the SMMU device has more than one master
> device.

It is not clear to me why this change was first added. Are we missing 
any feature when reverting it?

> This code is merged with the commit  "xen/arm: smmuv1: Intelligent
> SMR allocation”.
> 

This wants a fixes tag. Can be added on commit if there is nothing else 
to change.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 14:59:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 14:59:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111841.213851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPwD-0001s7-1E; Fri, 16 Apr 2021 14:59:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111841.213851; Fri, 16 Apr 2021 14:59: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 1lXPwC-0001s0-UV; Fri, 16 Apr 2021 14:59:16 +0000
Received: by outflank-mailman (input) for mailman id 111841;
 Fri, 16 Apr 2021 14:59:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rlMZ=JN=gmail.com=charles.fg@srs-us1.protection.inumbo.net>)
 id 1lXPwC-0001rv-8o
 for xen-devel@lists.xen.org; Fri, 16 Apr 2021 14:59:16 +0000
Received: from mail-wr1-x42a.google.com (unknown [2a00:1450:4864:20::42a])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9e2757b8-cfe9-420d-a7bf-0413cf3e5a29;
 Fri, 16 Apr 2021 14:59:15 +0000 (UTC)
Received: by mail-wr1-x42a.google.com with SMTP id s7so26892385wru.6
 for <xen-devel@lists.xen.org>; Fri, 16 Apr 2021 07:59: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: 9e2757b8-cfe9-420d-a7bf-0413cf3e5a29
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:from:date:message-id:subject:to;
        bh=/vd7ZDiBMdvbmddFsNi+e9A5Ho6DEA4uIlue5mzgY3c=;
        b=NlT9w9ChZDAQvUgMZxxFDI+du/YTBkdrUTL9BPfaNH/CSv4mll0x5RemPbRhfIdWtg
         AqiP2q6hK8VmRFXO7IukwnWH1EYceSTFZFSaOCTZ54+qoPYcO2e+L+y3u3jPeKlhXkRR
         FldLzA5fnsGcoyGEnzSgx6y7p5uGG8lQXrzc8jkwKzMiVRRPHSwDsc31cxJdDmVRlrG8
         4RDgl/9VnvETrlXR5hPyVhOwzsqXBg06BAj0xCRKv+wPBSlOx+26GMg0oXYpyiV8Ihz4
         IbLp8H/R/7YtjCf5gcf1ZGSd6khNEvKevv3FWFfjmM+X3DSuqbZrrjw/nL1QhVmTLBuO
         /qyw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=/vd7ZDiBMdvbmddFsNi+e9A5Ho6DEA4uIlue5mzgY3c=;
        b=TPDWavXeze+V4sjzwB4J+S+tTSD+n8zLIL6smFbSTaJaa4lqrAsG1NqEu6GDgqg1Hw
         mOYPaJyWrRZZ/v85QvnkrxmpeH8DAMsWGGptY5XMPEhh/kgJMF8CfLtUfVvPHCH7ihs5
         lLqqx15TTc/4ZwBFnbahss4w5kK4t0oJhfjg9Vm8gOPXFxLhNVVNscRZaw84L9y/NxkZ
         T61BtAKPkqJQQJqNWn/BpAOiuGlkOCI+G1drl37HfZ29gZhVdlNBBlaBHOK4wRfQxNQY
         tjobX2y4N/6qrWow0UvmCM4+KXztMv2mUvyy5wCcjPrn8zqHQ4u0jmy53t/3yPXjR+vJ
         1HPw==
X-Gm-Message-State: AOAM5336lKfkYZBzvF0elrIbfSHO9VCDCKYu03pm0idaJyVcOLdhXNwP
	6hVVqxxvF+J7zhPoQsYbsjRWwgjSAaxARYyga4xtSFNPPcGr8Q==
X-Google-Smtp-Source: ABdhPJyGScmugxdHXBQCmO9otJlB2QmMK090t3U3RvGpCzHRvd0eZcVjo6FOGw8C3KgjI9TnVw6bhzbHEFynAW7zclc=
X-Received: by 2002:adf:ea09:: with SMTP id q9mr9886232wrm.235.1618585154210;
 Fri, 16 Apr 2021 07:59:14 -0700 (PDT)
MIME-Version: 1.0
From: =?UTF-8?Q?Charles_Gon=C3=A7alves?= <charles.fg@gmail.com>
Date: Fri, 16 Apr 2021 15:58:38 +0100
Message-ID: <CAAQRGoBV4noq8n=k0a-h8T0ZFnKUnAQQr-=VywCaXzbWxPsgZg@mail.gmail.com>
Subject: Memory Layout on Dom0 in PV
To: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="00000000000027d08005c01839ec"

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

Hello Guys,

Does memory on Dom0 also mapped to gpfn or it is mapped directly to mfn?

 If mapped to gpfn, how can I access its p2m mapping?

I'm trying to use the xen-mfndump but it is not working with dom0

./xen-mfndump dump-p2m 0
xc: error: Could not map the shared info frame (MFN 0xddfe9) (3 =3D No
such process): Internal error
xc: error: Could not map domain 0 memory information: Internal error

The problem that I'm wanting to solve is:

Given a va in a process on dom0, I can get its physical representation (mfn
or gpfn depending on how this works on PV) using /proc/pid/pagemap and with
this I can access its real mfn.

This works perfectly with domU but not with dom0, why?

Atenciosamente,
*Charles Ferreira Gon=C3=A7alves *

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

<div dir=3D"ltr"><p></p>
<p>Hello Guys,</p>
<p>Does memory on Dom0 also mapped to gpfn or it is mapped directly to mfn?=
=C2=A0</p><p>=C2=A0If mapped to gpfn, how can I access its=C2=A0p2m mapping=
?</p>
<p>I&#39;m trying to use the xen-mfndump but it is not working with dom0</p=
>
<pre><code class=3D"gmail-language-c">./xen-mfndump dump-p2m 0             =
                                                            =20
xc: error: Could not map the shared info frame (MFN 0xddfe9) (3 =3D No such=
 process): Internal error
xc: error: Could not map domain 0 memory information: Internal error
</code></pre>
<p>The problem that I&#39;m wanting to solve is:</p>
<p>Given a va in a process on dom0, I can get its physical representation (=
mfn or gpfn depending on how this works on PV) using <code>/proc/pid/pagema=
p</code>  and with this I can access its real mfn.</p>
<p>This works perfectly with domU but not with dom0, why?</p><div><div dir=
=3D"ltr" class=3D"gmail_signature" data-smartmail=3D"gmail_signature"><div =
dir=3D"ltr"><div><br></div><div>Atenciosamente,</div><b>Charles Ferreira Go=
n=C3=A7alves </b><br><font color=3D"#666666"><br></font><font color=3D"#666=
666" size=3D"1"><br></font></div></div></div></div>

--00000000000027d08005c01839ec--


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 15:01:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 15:01:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111844.213862 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPyh-0002iL-FP; Fri, 16 Apr 2021 15:01:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111844.213862; Fri, 16 Apr 2021 15:01:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXPyh-0002iE-C2; Fri, 16 Apr 2021 15:01:51 +0000
Received: by outflank-mailman (input) for mailman id 111844;
 Fri, 16 Apr 2021 15:01:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZDfs=JN=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lXPyg-0002i8-1n
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 15:01:50 +0000
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.1.61]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c2e5fb95-a268-4ac3-ac66-91e5ba6373a4;
 Fri, 16 Apr 2021 15:01:47 +0000 (UTC)
Received: from AM5PR1001CA0022.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:206:2::35)
 by AM8PR08MB6578.eurprd08.prod.outlook.com (2603:10a6:20b:36a::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Fri, 16 Apr
 2021 15:01:41 +0000
Received: from AM5EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:2:cafe::f7) by AM5PR1001CA0022.outlook.office365.com
 (2603:10a6:206:2::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Fri, 16 Apr 2021 15:01:41 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT042.mail.protection.outlook.com (10.152.17.168) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Fri, 16 Apr 2021 15:01:41 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Fri, 16 Apr 2021 15:01:40 +0000
Received: from e7781772ac7d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8AF1D36E-8F90-4EAB-8872-4C3421EDA344.1; 
 Fri, 16 Apr 2021 15:01:29 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e7781772ac7d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 16 Apr 2021 15:01:29 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DB7PR08MB3465.eurprd08.prod.outlook.com (2603:10a6:10:50::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Fri, 16 Apr
 2021 15:01:26 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.4020.023; Fri, 16 Apr 2021
 15: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: c2e5fb95-a268-4ac3-ac66-91e5ba6373a4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nDmZAzQAwjX5fR3hIfSDu8J5LL13NXkZlKJzJ9q1YsY=;
 b=dWPiCL7pGGGrZ7ls/OOtz9j95qs0zAWos8I07n2q3n/j289oOAvkUkwcnnCwOqG/Fopfdn5Z/13ZzH+1VGDkYLFfkErZlwj7uxgVUEXMJIYSIOPsAfuostOORInDs9z1mldL75HGdv+2Is85LX4UF6TuVVjRxCddERl25t51yTs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 09277a2c4f65e877
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bzRT8zXnBGm2DqyqfuAga/HtTmc3ofnpkWfsMqcCV8ZWlW5Q+5js0wq7oNbLZ7jhD8+6iyyPRGBDe0k1LIcRU9ujxZOnTEb940CKHleKhZJgVuKNOIA7F/4aG0iwkquCBQUDB1DvQQh2n3poefr/gTAvg7m4u/KkvTA+2l/7vTsiz6mBKUgfA2ECajRH5jG4tC7xEsjLiTqcjx9RTVVs3bdT6acOA46JeIrFDzjki6wI+nBMEqJXLAeRQbmf5vaZ4zVZkigBI9oKHjxNig4KghoMipf12/SosWtA9VHFSiblbdWwyEYzfL4SC8Zfyyicm3bPEM6ax8oSgTTIW4h9ZA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nDmZAzQAwjX5fR3hIfSDu8J5LL13NXkZlKJzJ9q1YsY=;
 b=cZh5AMMoRGItIHqUXRObSVq0r0lms0pVDcoucoqyB3YNFKXa11wqfEq69fm6dPVbgDFzVio6R9dY15dgnkQXM+iCbeClwL0mpV4I7gtVPgZgE0PwKftW0jIffhW/ayw9EKmavL3iXSjN2kYuTA/rl2sx0/VzYzWXM3jsn3OMVbvFLFLdj6jLKI5WxVts40nBzU+7TjpwtvQ9MXozh/pIbGYSfHharkU6bE4C9wCVT4z9dcosB9cNETkjRuRdtWoQXT43Zz9wSNIpMUkUP2dmvcHR3lRb391wV3+TT9cJ9EK7b0E9MgAc8uqfMKxDNVpnS/2RN8SPGS1eAN5BheZJEg==
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=nDmZAzQAwjX5fR3hIfSDu8J5LL13NXkZlKJzJ9q1YsY=;
 b=dWPiCL7pGGGrZ7ls/OOtz9j95qs0zAWos8I07n2q3n/j289oOAvkUkwcnnCwOqG/Fopfdn5Z/13ZzH+1VGDkYLFfkErZlwj7uxgVUEXMJIYSIOPsAfuostOORInDs9z1mldL75HGdv+2Is85LX4UF6TuVVjRxCddERl25t51yTs=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Julien Grall <julien@xen.org>
CC: xen-devel <xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Topic: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Index: AQHXMrMxW8Hpcs9A7Ei4/6fuLjr236q3NfuAgAAHXIA=
Date: Fri, 16 Apr 2021 15:01:26 +0000
Message-ID: <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
References:
 <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
In-Reply-To: <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 9a5cddba-fbbc-454b-4c37-08d900e88adc
x-ms-traffictypediagnostic: DB7PR08MB3465:|AM8PR08MB6578:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM8PR08MB65785E57AE6FCE297B7833B2FC4C9@AM8PR08MB6578.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:5516;OLM:5516;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 a2sB8+9efZQpP3ZXndbaTDXpA6e3HDcOJFTvcHyKcF6Odals+/bfNGnqaRXbNTVNVyglN/+4L+WvkdmhrWW2lVXJGfCpeY3hcC6DVU70LaPqLPaOchEVNPgWHdqa6QgaXE48SeyFP+DM8c4kBZe12hruXGju59UBbYeg2sxsjBbV8fCELTe+bFyffjAcgKhNWIVWgb+RMZMr6hh7AlR6T1MTFM0IgLWHmmOe5I9PenB1org0tNsstznSS8SNYPcCuNJ4knTRZAudpaHtrmbTwDpeL64r+8/QBUfH6RvRTmEbTA63BiKshB2r/P+0JzOENCdXj3fG4KzFDeVJMoKJlw6K3ecPMcFJhSgwTV/U1O3hw9g24GvIFnylAG1zVVXtrBpw+72bbS4PlH/zZ9JXa3kdB1Ri4GnhMaXzTsVpMcQwH8y8AnKWbv/Sj/4LyumZRDmSAiAQWH5SO2fGAxI/+SQXEExAy4lpRjXaZwreK31eITM7bsuqJHpWk1pV/ADE7yD4msEuBKVxW+ZK4mgwP0Hx8PSvv2wRqHX/wJAI3cxtw6tZvXMlPrl5sFTXtX4a+c6m47z/rcB7+Vu1xQ9cAzbb/+Ia9ylleiGedCyAzI40L+KBsXcAqnqfjqzFjrwkpoT7NCCuDgaQZKX1e4ZjM8VPx/NbslIbKTH5RSUNNUs=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39860400002)(136003)(366004)(346002)(376002)(6512007)(86362001)(5660300002)(6916009)(71200400001)(36756003)(2906002)(316002)(8676002)(26005)(66446008)(64756008)(66556008)(66476007)(6486002)(122000001)(91956017)(2616005)(76116006)(53546011)(6506007)(38100700002)(4326008)(186003)(33656002)(54906003)(478600001)(66946007)(8936002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <FF1ECE36BC41D34ABB6974DD0AA77C52@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3465
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	752c6b05-9af2-440c-5f49-08d900e8822e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5qkLQ9O5ZJSdTf34RSzaoiE6rfm+6oJaae2DKDy2q9ocwL1oV0PRY/umtAhKDJzQQltcKIL90LfEb2EZ8aV3Kqc0WYHOTy4R1PPaEGN0Y2UhRdV5Br7iFT+Nj1hy02FTNEqEIdGdAK97GhGw4Apq1VOH0o39WsljOjGY4rhmw5LSEo20a82lxP0xQ7IZBp/ruzCgdPypoVIJvvbZw9DVAEOp5P8edY0qco9UHw6CoEzGu/iXmbQXX7sXBFMttDFgrpGVCtVHDOQRDTRJJCI+r5cZJl7u0N07DNDt1bl1GV5RHqSfUdWtiUbEdYLuav4cDcaA5NSLtWKOUoAxbwHYf1UqyEVrFbhM1nGOqxcuplYkpMxWidRDypTiNugw9q7V7vIZ2QotPkJABk+H3gRxOtxikX0feD/bRUh8pDhdrGcrdJDb4p+UuRNzAzSuMjee+8pTiaPR7n/6J2pDEavP6JoVCgh8ErHq/NWNYm1mKBL/N9wKG2Mr/jm3vOKKGk2IezxypjBJsaHufNY6j9cVuWfgpb+qC2mFVIhcwkggODiE5TVkDSFupGF97uF0d69giUq0MJf5ikxMu+tmrhnWCnDloPi1TUVIq60xq+HJ0YOcZGEEGAF926/JYz1gganH9mvoOu6wuX7DrsuBkELa3Ao9nyFFFZN6/2gJ9UpGWag=
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:(4636009)(136003)(376002)(346002)(396003)(39860400002)(46966006)(36840700001)(47076005)(107886003)(6862004)(54906003)(36756003)(33656002)(8936002)(8676002)(336012)(6512007)(82310400003)(86362001)(6506007)(53546011)(4326008)(36860700001)(2616005)(478600001)(82740400003)(5660300002)(26005)(316002)(2906002)(6486002)(70586007)(81166007)(356005)(70206006)(186003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 15:01:41.1167
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9a5cddba-fbbc-454b-4c37-08d900e88adc
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:
	AM5EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6578

SGkgSnVsaWVuLA0KDQo+IE9uIDE2IEFwciAyMDIxLCBhdCAzOjM1IHBtLCBKdWxpZW4gR3JhbGwg
PGp1bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4gDQo+IEhpLA0KPiANCj4gT24gMTYvMDQvMjAyMSAx
MjoyNSwgUmFodWwgU2luZ2ggd3JvdGU6DQo+PiBSZXZlcnQgdGhlIGNvZGUgdGhhdCBhc3NvY2lh
dGVzIHRoZSBncm91cCBwb2ludGVyIHdpdGggdGhlIFMyQ1IgYXMgdGhpcw0KPj4gY29kZSBjYXVz
aW5nIGFuIGlzc3VlIHdoZW4gdGhlIFNNTVUgZGV2aWNlIGhhcyBtb3JlIHRoYW4gb25lIG1hc3Rl
cg0KPj4gZGV2aWNlLg0KPiANCj4gSXQgaXMgbm90IGNsZWFyIHRvIG1lIHdoeSB0aGlzIGNoYW5n
ZSB3YXMgZmlyc3QgYWRkZWQuIEFyZSB3ZSBtaXNzaW5nIGFueSBmZWF0dXJlIHdoZW4gcmV2ZXJ0
aW5nIGl0Pw0KDQpUaGlzIGZlYXR1cmUgd2FzIGFkZGVkIHdoZW4gd2UgYmFja3BvcnRlZCB0aGUg
Y29kZSBmcm9tIExpbnV4IHRvIGZpeCB0aGUgc3RyZWFtIG1hdGNoIGNvbmZsaWN0IGlzc3VlDQph
cyBwYXJ0IG9mIGNvbW1pdCAieGVuL2FybTogc21tdXYxOiBJbnRlbGxpZ2VudCBTTVIgYWxsb2Nh
dGlvbuKAnS4gDQoNClRoaXMgaXMgYW4gZXh0cmEgZmVhdHVyZSBhZGRlZCB0byBhbGxvY2F0ZSBJ
T01NVSBncm91cCBiYXNlZCBvbiBzdHJlYW0taWQuIElmIHR3byBkZXZpY2UgaGFzIHRoZQ0Kc2Ft
ZSBzdHJlYW0taWQgdGhlbiB3ZSBhc3NpZ24gdGhvc2UgZGV2aWNlcyB0byB0aGUgc2FtZSBncm91
cC4gVGhpcyBjb2RlIHdhcyByZW1vdmVkIGZyb20gTGludXgNCmxhdGVyIHBvaW50IGluIHRpbWUg
d2hlbiBJT01NVSBncm91cCBoYW5kbGluZyBpcyBkb25lIGJ5IExpbnV4IGNvZGUgbm90IGJ5IGEg
c3BlY2lmaWMgSU9NTVUgZHJpdmVyLg0KVGhlcmVmb3JlIEkgdGhpbmsgaXQgaXMgb2sgcmV2ZXJ0
IHRoZSBjb2RlLg0KDQo+IA0KPj4gVGhpcyBjb2RlIGlzIG1lcmdlZCB3aXRoIHRoZSBjb21taXQg
ICJ4ZW4vYXJtOiBzbW11djE6IEludGVsbGlnZW50DQo+PiBTTVIgYWxsb2NhdGlvbuKAnS4NCj4g
DQo+IFRoaXMgd2FudHMgYSBmaXhlcyB0YWcuIENhbiBiZSBhZGRlZCBvbiBjb21taXQgaWYgdGhl
cmUgaXMgbm90aGluZyBlbHNlIHRvIGNoYW5nZS4NCg0KWWVzLiBUaGF0IHdpbGwgYmUgZ3JlYXQu
IFRoaXMgZml4ZXMgdGhlIGNvbW1pdCDigJwwNDM1Nzg0Y2M3NWRjZmVmM2I1ZjU5YzI5ZGViMWRi
Yjg0MjY1ZGRiOnhlbi9hcm06IHNtbXV2MTogSW50ZWxsaWdlbnQgU01SIGFsbG9jYXRpb27igJ0N
Cg0KUmVnYXJkcywNClJhaHVsDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiAtLSANCj4gSnVsaWVuIEdy
YWxsDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 15:12:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 15:12:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111853.213878 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQ8b-0003la-NR; Fri, 16 Apr 2021 15:12:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111853.213878; Fri, 16 Apr 2021 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 1lXQ8b-0003lT-JG; Fri, 16 Apr 2021 15:12:05 +0000
Received: by outflank-mailman (input) for mailman id 111853;
 Fri, 16 Apr 2021 15:12:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2kml=JN=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lXQ8Z-0003lO-NM
 for xen-devel@lists.xen.org; Fri, 16 Apr 2021 15:12:04 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a1fea41d-7179-4b55-b4f6-f59219e7fdd0;
 Fri, 16 Apr 2021 15:12: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: a1fea41d-7179-4b55-b4f6-f59219e7fdd0
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618585922;
  h=subject:to:references:from:message-id:date:in-reply-to:
   mime-version;
  bh=kSNEGdVM3ieUEZml9qQNX9aIqxX6E4vvHZoyPh0hJ/c=;
  b=ZbaPG1FtOm2cVPkeUcAw1BU53gD6P6cxG+Hv92LLMMx9iVnSkcVlq6ny
   Ysl8G9TSsFZeiQgyMkXeqTu798tVk2g1SeudsxBG+gm8f1DJQaRHR1308
   4RsSwtHyZNFNnYqawt9mRZpbBOGqIwHBDTgIej33xvRE7Ee86fmJ4MoDz
   4=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 5+ac5G0MjFHFuc+soWDQmrr9avdV9LvjyMGnz/vDi7LS9GRma1UUL+lLdA2P7TlwydRXh1fnUM
 InmORrNl1eTa+vIfRTGl+TP5OQGlv70XznWB0uHmkRvAGmVpiFU5dwEGneTXODErrp4Lcfvtq4
 s46mTdE/FQeHuNy3vaA3Q8gY+EOgVmN/POyjU95m9VoOa6SV6BFjiWs/uv9w8kPeWRI9Tc2J9R
 egRbVo2rLEkE16LHhG905ryRp3w7W0fzATaIuuVlmw4psEBN9I5jipVxTokqNqzapGypnah+Kz
 K60=
X-SBRS: 5.2
X-MesageID: 41771429
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:h3+NdaxFXabKVmFFnURsKrPx9uskLtp033Aq2lEZdDV8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr385lp7Y4NeYqzRQWOghrMEKhOz6vHhwfhFSr36/JH2c
 5bGZRWJdXsATFB4vrSzxK/F78bruWv1ICNqaPgw2x2TQdsApsQjTtRLgqACEV5SE1nKPMCdK
 a03cZMqzq+dXl/VK3SakUtZOTfu8bN0KvvfB9uPXUawTOThjCl4qOSKWn64j4iVVp0oIsKwC
 z+vCHSoo6itPy6zRG07R6o071m3OHP5/EGKMiFis0+IijhhACydO1aKsC/lQFwms6DwhIHl8
 TNvgcBMq1Img/sV1DwmzTB8U3B1ysj8HDrw1PwuwqdneXJAAgUJuAEoKAxSGq812MQ+OtS/Y
 gO4kei871QNh/ElDSV3amxazha0nCajFBnrfQelBVkIOwjQY4Ul6Mz1mVPHqwNGSrrgbpXa9
 VGPYXn6PFafUjyVQG+gkBfhNilXnEEFhybWEQ1usuMzzhMnHxipnFovfAiog==
X-IronPort-AV: E=Sophos;i="5.82,226,1613451600"; 
   d="scan'208,217";a="41771429"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RR85N4wQfMz5b05TdS8i+ymT8heTaiZtlTtUzFMPWSH+C/84B/iDfrsH2DWJTOz4jyA3C6S5ERFe5/Cgzht5g7+238kl24QCtgBwV3siIGF6/g+J+d6E+b+cwK4Axd7zRpsnQ7t1+lcK8h3M5IrxtZtQZ/sbRbz2Uw+jm/KuxI4KVTGciMqqiTcQcWg5V+uBRGzPskwAXEzbbLigeJpZRlOVJfbtZaoOwdVff3OEMTOtvUkKmTy9gtsAMMTSqiz91VAUDakqDWkB2iV+n3m7+5TbO96KpbZMp3NbeMt8ydeh/zqtXpruM++FBuSgqhGCN8+YDGnf82142KZibVVN+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-SenderADCheck;
 bh=KWWL7CR8EoXv923pllvuDqD9L8dNPnts1UxMNYePXE0=;
 b=CGzyA+85s9dpgao6a7d3Ia+WC5cimiEzejCFsZ3h8hYcYrigtvLXGCTX7/khjqy7PeUWNyty4xvDKC0K47Gn3gUeXMVQo+tKRRYI0zIpmupnUJm1WTYZN1oyywjMr3RKPPThXxf8o7ik67gZUwDKrmm2VLPaCOY96ejofHuG1O+iTW3nsWgDYS+N4MxjDEHFLwnLiSTZjDPFFQ7zH3S7XTgAfDPmUGw/yLQqJ0wOFI97QAuzK4j9ZCc0sPGcrMWHNO14nQ/ftVHa0Lnta731rVl1grmPI8MzTun6YRjulhEMqZMdD+cG1u7CCOkkB2ObJFHkr0coaNvFDoLjRNtjag==
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=KWWL7CR8EoXv923pllvuDqD9L8dNPnts1UxMNYePXE0=;
 b=saD4LoeLtl/xP1qpoXMdBzQIB3qjfBzvQieqS4BxmmSHe7lMOryUh64Uc9EFGGrGv5rW3mc4uGpKJLL+uuMkUCJ8UZxqwl/lnKeRQJqGLafSjKJpaHrXYP0OzjWlz2lyNITijbYzEMGUpZPSLYfk4OEUr4kCv2M6rIPYTPUZ/ss=
Subject: Re: Memory Layout on Dom0 in PV
To: =?UTF-8?Q?Charles_Gon=c3=a7alves?= <charles.fg@gmail.com>,
	<xen-devel@lists.xen.org>
References: <CAAQRGoBV4noq8n=k0a-h8T0ZFnKUnAQQr-=VywCaXzbWxPsgZg@mail.gmail.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <472aeb46-ded9-e5d2-edd8-b680d95d47ae@citrix.com>
Date: Fri, 16 Apr 2021 16:11:52 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <CAAQRGoBV4noq8n=k0a-h8T0ZFnKUnAQQr-=VywCaXzbWxPsgZg@mail.gmail.com>
Content-Type: multipart/alternative;
 boundary="------------5E1E09620F961E6385EADD59"
Content-Language: en-GB
X-ClientProxiedBy: LO3P265CA0018.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:bb::23) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8d22eec6-3ef2-4b24-d50b-08d900e9fade
X-MS-TrafficTypeDiagnostic: BYAPR03MB3672:
X-Microsoft-Antispam-PRVS: <BYAPR03MB3672D146FA7F92B5C3953BB9BA4C9@BYAPR03MB3672.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: vaM+dSwjpcnrQzIH1qIQZRslRlW3XAkufoRmAfCDEdbXgwZ8zHO2fCfePmJukvjxwplBKS5/pT4M1hEOAKcR925McVwVbHELgim0HXpHu6yNfhvvHx2aBkSYPaTh7dwpu4XtvGOXAyuVkdvdWqJbOXyLLrYNTpzZ41EXeQD/oz8eT8Sh6VrhHR/2Ab7U70qTsATR9ylVvlgIz5r7C+sJv0iyPrWyCfMyaNntxTr7y108bQRgC0tbvSCVKS1OSqmfZOEiHx8khPdsQqZa8TIZlUK3+1k5S+kPr9c0eWCsaVnkjB83zyA9DRHWR0cPoqqsjZCSUz8+vaqnlO7C6HBsNPk9deQaZYxw6f4hyqbU+hYjp353xMjwMuz2lE5kvyc8rzXYvBbx8S8fJa72Dzja31ZUfcUY2ioFvXujndpy6S6+Ylfyx5cPU2DEMm2dxeBft4DBKjm7zGxEqn2ox7wpMRGesO+1ogslch/cG+4lXIqkzlp1Gm/Jz7r2p4ZdE9bGAZ1PfRp9KaOov2ASfGYNcOvaaevXK2AORegMneoXDG+buOdx6weKH6TPDy/QHCTCrMf94Y9HprAilPK/upazwk+ghQqjgLmpQdjIJqXTjw2NP593F6bMo9+hMVrVYWHgBW/kIpLG465D65wcBB4irVz5/dFH8m9OMo3n0+LfkSVXBcniHMGnUj/+wKymFGV4
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(366004)(39860400002)(346002)(376002)(31696002)(83380400001)(956004)(16576012)(6666004)(66946007)(316002)(86362001)(66476007)(2616005)(66574015)(5660300002)(2906002)(186003)(26005)(16526019)(31686004)(478600001)(66556008)(38100700002)(36756003)(8676002)(8936002)(33964004)(53546011)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Mt6uJ4fmHATHq/FsfoOP0P481+7Q+4YL7rj48aE?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 8d22eec6-3ef2-4b24-d50b-08d900e9fade
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 15:11:58.8571
 (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: +/mAOo3MYuYra4iYm+D4g28NdMqZrT12QK9XuOTuRVGkwJh/k2rvMvNh/5jZlWKY1Sdq00Y82FJ4N0poT2ahf+HpwRljWRGIwYmO9p0cq4U=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3672
X-OriginatorOrg: citrix.com

--------------5E1E09620F961E6385EADD59
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit

On 16/04/2021 15:58, Charles Gonçalves wrote:
>
> Hello Guys,
>
> Does memory on Dom0 also mapped to gpfn or it is mapped directly to mfn? 
>
>  If mapped to gpfn, how can I access its p2m mapping?
>
> I'm trying to use the xen-mfndump but it is not working with dom0
>
> |./xen-mfndump dump-p2m 0 xc: error: Could not map the shared info
> frame (MFN 0xddfe9) (3 = No such process): Internal error xc: error:
> Could not map domain 0 memory information: Internal error |
>
> The problem that I'm wanting to solve is:
>
> Given a va in a process on dom0, I can get its physical representation
> (mfn or gpfn depending on how this works on PV) using
> |/proc/pid/pagemap| and with this I can access its real mfn.
>
> This works perfectly with domU but not with dom0, why?
>

There are a lot of operations you're not permitted to perform on
yourself, to prevent problems.

I think in this case, Xen is rejecting dom0's attempt to foreign map
itself (although -EINVAL would be better than -ESRCH to fail with, IMO),
because otherwise we get into reference counting issues IIRC.

You'll probably have an easier time asking the dom0 kernel to dump the
p2m.  After all, its a kernel-owned datastructure, not a Xen-owned
structure.

~Andrew

--------------5E1E09620F961E6385EADD59
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 16/04/2021 15:58, Charles Gonçalves
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:CAAQRGoBV4noq8n=k0a-h8T0ZFnKUnAQQr-=VywCaXzbWxPsgZg@mail.gmail.com">
      
      <div dir="ltr">
        <p>Hello Guys,</p>
        <p>Does memory on Dom0 also mapped to gpfn or it is mapped
          directly to mfn?&nbsp;</p>
        <p>&nbsp;If mapped to gpfn, how can I access its&nbsp;p2m mapping?</p>
        <p>I'm trying to use the xen-mfndump but it is not working with
          dom0</p>
        <pre><code class="gmail-language-c">./xen-mfndump dump-p2m 0                                                                          
xc: error: Could not map the shared info frame (MFN 0xddfe9) (3 = No such process): Internal error
xc: error: Could not map domain 0 memory information: Internal error
</code></pre>
        <p>The problem that I'm wanting to solve is:</p>
        <p>Given a va in a process on dom0, I can get its physical
          representation (mfn or gpfn depending on how this works on PV)
          using <code>/proc/pid/pagemap</code> and with this I can
          access its real mfn.</p>
        <p>This works perfectly with domU but not with dom0, why?</p>
      </div>
    </blockquote>
    <br>
    There are a lot of operations you're not permitted to perform on
    yourself, to prevent problems.<br>
    <br>
    I think in this case, Xen is rejecting dom0's attempt to foreign map
    itself (although -EINVAL would be better than -ESRCH to fail with,
    IMO), because otherwise we get into reference counting issues IIRC.<br>
    <br>
    You'll probably have an easier time asking the dom0 kernel to dump
    the p2m.&nbsp; After all, its a kernel-owned datastructure, not a
    Xen-owned structure.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------5E1E09620F961E6385EADD59--


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 15:22:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 15:22:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111859.213893 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQIB-0004n9-MU; Fri, 16 Apr 2021 15:21:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111859.213893; Fri, 16 Apr 2021 15: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 1lXQIB-0004n2-JO; Fri, 16 Apr 2021 15:21:59 +0000
Received: by outflank-mailman (input) for mailman id 111859;
 Fri, 16 Apr 2021 15:21: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 1lXQIA-0004mu-K5; Fri, 16 Apr 2021 15:21: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 1lXQIA-0000a7-Cs; Fri, 16 Apr 2021 15:21: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 1lXQIA-0002OI-0V; Fri, 16 Apr 2021 15:21:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXQIA-0005p3-00; Fri, 16 Apr 2021 15: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=iX9NcFKRA9M90VGfhKq8EMppJW1P6+I1vjUyT1u6ZJc=; b=yesR6o70PjaYcSACLFEnnpOn4m
	AaXnqgQU/e7lk145nAfMonszBCU7z85kLPfU/2TtToB7tqGzjjcuTBcSTsvsLULnWfnAkQu2YmOdU
	UiIQwCZedd0peFbYA+lupnl3A5YaXoPa+aIyD8b0WPFr/G98XoLQEbX1t2bagNiL54u8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161206-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161206: 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=9b47be876f2a9521bb1f247d855603c00bc99465
X-Osstest-Versions-That:
    xen=b53173e7cdafb7a318a239d557478fd73734a86a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 15:21:58 +0000

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

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                  9b47be876f2a9521bb1f247d855603c00bc99465
baseline version:
 xen                  b53173e7cdafb7a318a239d557478fd73734a86a

Last test of basis   161179  2021-04-15 18:00:25 Z    0 days
Testing same since   161206  2021-04-16 13:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.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
   b53173e7cd..9b47be876f  9b47be876f2a9521bb1f247d855603c00bc99465 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 15:23:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 15:23:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111863.213908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQJk-0004vj-2S; Fri, 16 Apr 2021 15:23:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111863.213908; Fri, 16 Apr 2021 15:23:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQJj-0004vc-Vd; Fri, 16 Apr 2021 15:23:35 +0000
Received: by outflank-mailman (input) for mailman id 111863;
 Fri, 16 Apr 2021 15:23: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 1lXQJi-0004vU-Ru
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 15:23: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 1lXQJh-0000b6-ML; Fri, 16 Apr 2021 15:23:33 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lXQJh-00041R-EI; Fri, 16 Apr 2021 15:23: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=id6bSkFigLGMm1fydDiXIgZj0L0d3um9KFzHEjDyr0o=; b=ss6a7HT/pHjPP3u2zU+LDCTMlA
	VXRyliwxTgnryzYysQlJqqzyQQQ2+6XdZAyN/jS4V+64EG1TWjIz5MLU8DJWYQmZ0L9wAEDgissht
	WRKnYIW2kxv2pnKixXm65ypres5lAjMIRSIEUoxFhThLaJYnL990oAJOTu4P8Lyfij2k=;
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
To: Rahul Singh <Rahul.Singh@arm.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
 <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
Date: Fri, 16 Apr 2021 16:23:31 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 16/04/2021 16:01, Rahul Singh wrote:
> Hi Julien,

Hi Rahul,

> 
>> On 16 Apr 2021, at 3:35 pm, Julien Grall <julien@xen.org> wrote:
>>
>> Hi,
>>
>> On 16/04/2021 12:25, Rahul Singh wrote:
>>> Revert the code that associates the group pointer with the S2CR as this
>>> code causing an issue when the SMMU device has more than one master
>>> device.
>>
>> It is not clear to me why this change was first added. Are we missing any feature when reverting it?
> 
> This feature was added when we backported the code from Linux to fix the stream match conflict issue
> as part of commit "xen/arm: smmuv1: Intelligent SMR allocation”.
> 
> This is an extra feature added to allocate IOMMU group based on stream-id. If two device has the
> same stream-id then we assign those devices to the same group. 

If we revert the patch, then it would not be possible to use the SMMU if 
two devices use the same stream-id. Is that correct?

> This code was removed from Linux
> later point in time when IOMMU group handling is done by Linux code not by a specific IOMMU driver.

Right.... But Linux still support that option. Is that correct?

> Therefore I think it is ok revert the code.

I am ok with the principle of (partially) reverting patch to unblock the 
situation. But I have to admit, I don't quite understand why this is 
reverted rather than fixed.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 15:59:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 15:59:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111882.213924 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQs5-0007yy-SP; Fri, 16 Apr 2021 15:59:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111882.213924; Fri, 16 Apr 2021 15: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 1lXQs5-0007yq-PF; Fri, 16 Apr 2021 15:59:05 +0000
Received: by outflank-mailman (input) for mailman id 111882;
 Fri, 16 Apr 2021 15:59: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 1lXQs4-0007yi-36; Fri, 16 Apr 2021 15:59: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 1lXQs3-0001Bc-Pq; Fri, 16 Apr 2021 15:59: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 1lXQs3-0004Vg-Et; Fri, 16 Apr 2021 15:59:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXQs3-0004bB-EQ; Fri, 16 Apr 2021 15:59:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=T1DpvyCS2M34lITgzWa/JHU7+FeqcbceeHRc0f1N8HY=; b=PCEqYljecSrPRVOI/dJ+F6yEuB
	oXpOn1wf66JC7uBG4TSIcfjMmhZM8HSvOVxH7UmV2O7XD7TFPQt4xBxT1xgTwKidZFkEW6Mv4HKAO
	76gQaiBr4jxNsLPJvwKmwIcwvJPLYd/Nc0ycgDSCI/Nmxl3gwjUOKvrubIU9kjjvSBdQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161191-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161191: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=8fe9f1f891eff4e37f82622b7480ee748bf4af74
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 15:59:03 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  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-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-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-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass

version targeted for testing:
 qemuu                8fe9f1f891eff4e37f82622b7480ee748bf4af74
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  239 days
Failing since        152659  2020-08-21 14:07:39 Z  238 days  442 attempts
Testing same since   161147  2021-04-14 22:08:02 Z    1 days    3 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142656 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 15:59:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 15:59:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111886.213939 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQsX-00085M-CV; Fri, 16 Apr 2021 15:59:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111886.213939; Fri, 16 Apr 2021 15:59:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQsX-00085F-9B; Fri, 16 Apr 2021 15:59:33 +0000
Received: by outflank-mailman (input) for mailman id 111886;
 Fri, 16 Apr 2021 15:59:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rlMZ=JN=gmail.com=charles.fg@srs-us1.protection.inumbo.net>)
 id 1lXQsV-00084z-Um
 for xen-devel@lists.xen.org; Fri, 16 Apr 2021 15:59:32 +0000
Received: from mail-wr1-x433.google.com (unknown [2a00:1450:4864:20::433])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ba70f58e-dc26-4a86-b28a-ba60a0ffd6df;
 Fri, 16 Apr 2021 15:59:30 +0000 (UTC)
Received: by mail-wr1-x433.google.com with SMTP id w4so23449241wrt.5
 for <xen-devel@lists.xen.org>; Fri, 16 Apr 2021 08:59: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: ba70f58e-dc26-4a86-b28a-ba60a0ffd6df
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=X6jRCBOot1PLmSiX5Dit74TKCb0Ju9W4QZwBXaOBR38=;
        b=D5EOLIAMfeYyN5/XZaetRbiaLdNTEgVxhv/CYT6FNY0n952mwgtNyocaT5mQEFssuo
         xjvfN+4I7tv+txATpNVEVa6Y7ujod5nTsBsmymdJZc6LfBYeMhqFB+KSdE5SB29Ep75I
         MnRoEmyplzrZtmOjIc9lgY5I/WUTHPoGbquluXdzUMN1wHeAe423rciDXGN0HaFgtnoi
         CAIHr86h7t7At2QR67NlVBNdL8iYBIiCzctQWbDP6QObSlo+0eDNnOXJ41FynuP0j4Sm
         EDzOZ0muji8oJKjEmAXlVxzJIWFYQ5If3APjiajPO6iohrDvk6OZt3ydFoG7MLaIYW+q
         Pw/g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=X6jRCBOot1PLmSiX5Dit74TKCb0Ju9W4QZwBXaOBR38=;
        b=efjVTDhaZpDQHYZ41fbRzV/FiO/WzjSwG6O30qLeet9I1xdiNvW6HPqSMPAVrlFXOh
         VlvgBDv3OeTzDbABIv7HxSftC4CEyKCAkLUBW3BCi4lZKZFgLvaH8MPkMMV2+jsWiM4R
         TLpf7UDk2zcBI4Sb4UfAEgHcETo3ZIMTaelGjVcE7bCXSYkx/gWP70Ji9FHj5uTi+XD4
         wNOXgC7JC892KN1N0tOdQp4WmF9E0JFgRoSQiYooGDb4yvHXuhrG3csFsEO8RBd0j1S9
         iHs211dkZGryeQRjfev2YF34j4DIeXQaJi9ipzrbZ1Y/8eGnvbbH2yFfn+6e89M/MPUo
         p2KA==
X-Gm-Message-State: AOAM531M1fY1RAZq7XZGZgJkKv2sILX0878iD2TrXsvKT6JeOFdvZJ4g
	ojroJ3fgRLDNzm1imNHuRVA9qjMUXO5WZhKEsZ4=
X-Google-Smtp-Source: ABdhPJx+2OM3//7+rHxf/GDMCtxb7iXsH7RPCPsIOhij+ZVTX7Zb2zssirsuumoRBoQXYd/mafgRu4awFDRcJ21y+NI=
X-Received: by 2002:adf:ea09:: with SMTP id q9mr10189144wrm.235.1618588769949;
 Fri, 16 Apr 2021 08:59:29 -0700 (PDT)
MIME-Version: 1.0
References: <CAAQRGoBV4noq8n=k0a-h8T0ZFnKUnAQQr-=VywCaXzbWxPsgZg@mail.gmail.com>
 <472aeb46-ded9-e5d2-edd8-b680d95d47ae@citrix.com>
In-Reply-To: <472aeb46-ded9-e5d2-edd8-b680d95d47ae@citrix.com>
From: =?UTF-8?Q?Charles_Gon=C3=A7alves?= <charles.fg@gmail.com>
Date: Fri, 16 Apr 2021 16:58:53 +0100
Message-ID: <CAAQRGoATOiDCBXSGD7m3y2B2=v7mcN12K6g9A1tQ42+_Vj7=Pg@mail.gmail.com>
Subject: Re: Memory Layout on Dom0 in PV
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="000000000000ab997905c0191054"

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

Thanks @Andrew,

A LKM to dump the arch->p2m_vaddr solved the issue and answered my
questions!

Atenciosamente,
*Charles Ferreira Gon=C3=A7alves *




On Fri, Apr 16, 2021 at 4:12 PM Andrew Cooper <andrew.cooper3@citrix.com>
wrote:

> On 16/04/2021 15:58, Charles Gon=C3=A7alves wrote:
>
> Hello Guys,
>
> Does memory on Dom0 also mapped to gpfn or it is mapped directly to mfn?
>
>  If mapped to gpfn, how can I access its p2m mapping?
>
> I'm trying to use the xen-mfndump but it is not working with dom0
>
> ./xen-mfndump dump-p2m 0
> xc: error: Could not map the shared info frame (MFN 0xddfe9) (3 =3D No su=
ch process): Internal error
> xc: error: Could not map domain 0 memory information: Internal error
>
> The problem that I'm wanting to solve is:
>
> Given a va in a process on dom0, I can get its physical representation
> (mfn or gpfn depending on how this works on PV) using /proc/pid/pagemap
> and with this I can access its real mfn.
>
> This works perfectly with domU but not with dom0, why?
>
>
> There are a lot of operations you're not permitted to perform on yourself=
,
> to prevent problems.
>
> I think in this case, Xen is rejecting dom0's attempt to foreign map
> itself (although -EINVAL would be better than -ESRCH to fail with, IMO),
> because otherwise we get into reference counting issues IIRC.
>
> You'll probably have an easier time asking the dom0 kernel to dump the
> p2m.  After all, its a kernel-owned datastructure, not a Xen-owned
> structure.
>
> ~Andrew
>

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

<div dir=3D"ltr">Thanks @Andrew,=C2=A0<div><br></div><div>A LKM to dump the=
 arch-&gt;p2m_vaddr solved the issue and answered my questions!=C2=A0<br cl=
ear=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature" data-smartmail=
=3D"gmail_signature"><div dir=3D"ltr"><div><br></div><div>Atenciosamente,</=
div><b>Charles Ferreira Gon=C3=A7alves </b><br><font color=3D"#666666"><br>=
</font><font color=3D"#666666" size=3D"1"><br></font></div></div></div><br>=
</div></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_=
attr">On Fri, Apr 16, 2021 at 4:12 PM Andrew Cooper &lt;<a href=3D"mailto:a=
ndrew.cooper3@citrix.com">andrew.cooper3@citrix.com</a>&gt; wrote:<br></div=
><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border=
-left:1px solid rgb(204,204,204);padding-left:1ex">

 =20
  <div>
    <div>On 16/04/2021 15:58, Charles Gon=C3=A7alves
      wrote:<br>
    </div>
    <blockquote type=3D"cite">
     =20
      <div dir=3D"ltr">
        <p>Hello Guys,</p>
        <p>Does memory on Dom0 also mapped to gpfn or it is mapped
          directly to mfn?=C2=A0</p>
        <p>=C2=A0If mapped to gpfn, how can I access its=C2=A0p2m mapping?<=
/p>
        <p>I&#39;m trying to use the xen-mfndump but it is not working with
          dom0</p>
        <pre><code>./xen-mfndump dump-p2m 0                                =
                                         =20
xc: error: Could not map the shared info frame (MFN 0xddfe9) (3 =3D No such=
 process): Internal error
xc: error: Could not map domain 0 memory information: Internal error
</code></pre>
        <p>The problem that I&#39;m wanting to solve is:</p>
        <p>Given a va in a process on dom0, I can get its physical
          representation (mfn or gpfn depending on how this works on PV)
          using <code>/proc/pid/pagemap</code> and with this I can
          access its real mfn.</p>
        <p>This works perfectly with domU but not with dom0, why?</p>
      </div>
    </blockquote>
    <br>
    There are a lot of operations you&#39;re not permitted to perform on
    yourself, to prevent problems.<br>
    <br>
    I think in this case, Xen is rejecting dom0&#39;s attempt to foreign ma=
p
    itself (although -EINVAL would be better than -ESRCH to fail with,
    IMO), because otherwise we get into reference counting issues IIRC.<br>
    <br>
    You&#39;ll probably have an easier time asking the dom0 kernel to dump
    the p2m.=C2=A0 After all, its a kernel-owned datastructure, not a
    Xen-owned structure.<br>
    <br>
    ~Andrew<br>
  </div>

</blockquote></div>

--000000000000ab997905c0191054--


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 16:00:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 16:00:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111892.213951 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQt0-0000BS-Ov; Fri, 16 Apr 2021 16:00:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111892.213951; Fri, 16 Apr 2021 16:00: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 1lXQt0-00009a-K4; Fri, 16 Apr 2021 16:00:02 +0000
Received: by outflank-mailman (input) for mailman id 111892;
 Fri, 16 Apr 2021 16:00:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2kml=JN=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lXQsz-0008GA-Si
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 16:00:01 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 26e5a2a0-22f1-437a-ae68-1823a4628f45;
 Fri, 16 Apr 2021 16:00: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: 26e5a2a0-22f1-437a-ae68-1823a4628f45
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618588800;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=za/SREf9oZvlS20TUv3QJjA9r1M3Ryy8U2rNawKnKzo=;
  b=e1DcMhDU+TBB7L/SkAbs4y5WSf456xN0D8nepVxaGUqULMlj7IU/uX9u
   Z3AhWYj7v9KhzyYYNNCpJk3fsk7sW3UcbnaMfzcWHGBwY4+ZD3jCFdOMN
   hVclmO5G7StJh074ZFftWLtPa7W0xhk26R/JS9I6j4saEGL+WeHB7aRgi
   A=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: p70reUZBzNMeOnw4zDx9u2g3m/tYSya1S9DLvxoo+4n8KaLdWqhqUl29oNzOdKD1EXvtHb9LCE
 NqLclbZrtJhKXNGxTFUe/gOTO/Vwopkk8oE88YLzmuZKQK3fBY2tZfi2Bw30r2tBy0ym1x2uDw
 joZMAHrVZwzNOJ+JMVTY3wGUXSfG9mofCQkcYg65ycKr0hFIPAlfniUatYJv38pI5FN/cKJUt3
 XcQ9WjuVLSgGoWI8Dq+GJfilYKXb3FYH9vSy8giauHtxivJlrU7OGr301cpGPxt9WKZXVeVdy2
 x54=
X-SBRS: 4.0
X-MesageID: 41900411
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:h0eUn6ojNkHfKqVZJnGl2zcaV5oHeYIsi2QD101hICF9X+65s4
 SVnPod3QLpkzp5YhpLpfmsMLSNKEmxybdb+o8UVI3CYCDDtHGzJI9vqavuqgeOJwTE+uRQ1b
 htfsFFYbWcY2RStsri5Rn9LtBI+qjlzImTmezcw31xJDsaCZ1I0gERMGamLnE=
X-IronPort-AV: E=Sophos;i="5.82,226,1613451600"; 
   d="scan'208";a="41900411"
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>, Ian Jackson <iwj@xenproject.org>, Jan Beulich
	<JBeulich@suse.com>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Julien Grall <julien@xen.org>, Juergen Gross <jgross@suse.com>
Subject: [PATCH] tools: Drop XGETTEXT from Tools.mk.in
Date: Fri, 16 Apr 2021 16:59:41 +0100
Message-ID: <20210416155941.15454-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

This hunk was missing from the work to drop gettext as a build dependency.

Fixes: e21a6a4f96 ("tools: Drop gettext as a build dependency")
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Ian Jackson <iwj@xenproject.org>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Julien Grall <julien@xen.org>
CC: Juergen Gross <jgross@suse.com>
---
 config/Tools.mk.in | 1 -
 1 file changed, 1 deletion(-)

diff --git a/config/Tools.mk.in b/config/Tools.mk.in
index d47936686b..934d899967 100644
--- a/config/Tools.mk.in
+++ b/config/Tools.mk.in
@@ -12,7 +12,6 @@ PYTHON              := @PYTHON@
 PYTHON_PATH         := @PYTHONPATH@
 PY_NOOPT_CFLAGS     := @PY_NOOPT_CFLAGS@
 PERL                := @PERL@
-XGETTTEXT           := @XGETTEXT@
 AS86                := @AS86@
 LD86                := @LD86@
 BCC                 := @BCC@
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Fri Apr 16 16:05:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 16:05:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111899.213963 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQxu-0001J9-Bo; Fri, 16 Apr 2021 16:05:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111899.213963; Fri, 16 Apr 2021 16: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 1lXQxu-0001J2-81; Fri, 16 Apr 2021 16:05:06 +0000
Received: by outflank-mailman (input) for mailman id 111899;
 Fri, 16 Apr 2021 16:05:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=tm2+=JN=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lXQxs-0001Ix-Pk
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 16:05:04 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (unknown
 [40.107.6.78]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ab4dbcf2-2439-43e5-b5ad-50ba054c872c;
 Fri, 16 Apr 2021 16:05:02 +0000 (UTC)
Received: from AM6PR0502CA0057.eurprd05.prod.outlook.com
 (2603:10a6:20b:56::34) by AS8PR08MB7045.eurprd08.prod.outlook.com
 (2603:10a6:20b:345::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Fri, 16 Apr
 2021 16:05:01 +0000
Received: from VE1EUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:56:cafe::52) by AM6PR0502CA0057.outlook.office365.com
 (2603:10a6:20b:56::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19 via Frontend
 Transport; Fri, 16 Apr 2021 16:05:01 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT044.mail.protection.outlook.com (10.152.19.106) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Fri, 16 Apr 2021 16:05:00 +0000
Received: ("Tessian outbound 9bcb3c8d6cb1:v90");
 Fri, 16 Apr 2021 16:05:00 +0000
Received: from 914cdf3e778f.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 BF33E2CF-17E4-4358-B3E6-606C16F788AF.1; 
 Fri, 16 Apr 2021 16:04:51 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 914cdf3e778f.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 16 Apr 2021 16:04:51 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR0802MB2333.eurprd08.prod.outlook.com (2603:10a6:800:9f::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Fri, 16 Apr
 2021 16:04:49 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4042.019; Fri, 16 Apr 2021
 16:04: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: ab4dbcf2-2439-43e5-b5ad-50ba054c872c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HXqBPmRtrTxv65RFtb2V6PD9vCaVGJ6A0iv/qJkl4Mo=;
 b=2ul2CX+bWdza83eCPqMli2ih7vHO8Wj4EQs4huWyyZfaNIeRgpNrBSMnqnKxZZCfUGi0o0QZewP0GY1sfANYPOp1UBWRh0T53joCpFn5uZF3Zuolc9Xb3zRDCjNDoaaLMM6yXdj+gFEBo5kTyORrRGxCcihmncQSWXTW0dQoKHY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3a726e488d8344c9
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IulZrKUopanTRkgjSUwFHNzzNxOvry83LmutINzMrm9nXd56CRW7Wd6H2SucCpF72MHnI0Ck8AgceeAic+hdDP7aot5iGJhqrEkr6km+kbfdTCg/PwXM27t2czOAWWYS9c276CxIlHGiPclSRsUsQ0ZW+/vX6SajOIgtU8W6F7Tnh3F6cogRy7YOx0Z2edAidIzoLqJriHM3zNjRgg19SEOk3HHJ5KD91+mg/FOHijvSMXQorVoRcktAUiQkSser6sKk5YMn9p2pr4HOgTafIYtlnGQ3lC6zBhCRFIQdLhj8v2ORKthEP1p2UPnxmQKq2Ghy8RqeSg1JT5frD6FKug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HXqBPmRtrTxv65RFtb2V6PD9vCaVGJ6A0iv/qJkl4Mo=;
 b=AnoUhqwITrtDcj4HQqsDkaadlne+CduiKxGmoHShd9YdWnH/DC0tg2n18tBtpHiw6BdLPNAlx/o9u0NS4LwurbZFmS1pZIL9tdfOkKdRO3wHPEGPMcrRgVeAQTJnIjYm1Eq8ri1F5SwSFz/4/b3dYlL8b7iYDdvNFOrnaHr1V3hHO5h+cgaZOMQpVkgK/Y4ZkOWcXJVSR8r1V6rvbYjKzeEkmz1U55bwubRFjs5Gz+6qTam+YFdXKa8OgX0j+Vrj2NQxTh6pfI1NVXed+BBuFMYxhlRSrytnuNh5k9GKlsphgtUQyjNiY5YWNlGR2KlZSK/WQpHdyTXLcHBCDf/eng==
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=HXqBPmRtrTxv65RFtb2V6PD9vCaVGJ6A0iv/qJkl4Mo=;
 b=2ul2CX+bWdza83eCPqMli2ih7vHO8Wj4EQs4huWyyZfaNIeRgpNrBSMnqnKxZZCfUGi0o0QZewP0GY1sfANYPOp1UBWRh0T53joCpFn5uZF3Zuolc9Xb3zRDCjNDoaaLMM6yXdj+gFEBo5kTyORrRGxCcihmncQSWXTW0dQoKHY=
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>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Julien Grall
	<julien@amazon.com>
Subject: Re: [PATCH] xen/arm: guest_walk: Only generate necessary
 offsets/masks
Thread-Topic: [PATCH] xen/arm: guest_walk: Only generate necessary
 offsets/masks
Thread-Index: AQHXKjesiGPIh/24CEW4HMn8sjGqgKq3YAMA
Date: Fri, 16 Apr 2021 16:04:48 +0000
Message-ID: <964513D8-D6CD-4419-9804-CF77363B81FD@arm.com>
References: <20210405162046.9353-1-julien@xen.org>
In-Reply-To: <20210405162046.9353-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.3654.60.0.2.21)
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 56407a45-4679-477a-88cc-08d900f163c8
x-ms-traffictypediagnostic: VI1PR0802MB2333:|AS8PR08MB7045:
X-Microsoft-Antispam-PRVS:
	<AS8PR08MB70452D38F1AF6D8CE9684F249D4C9@AS8PR08MB7045.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 jR4PWYnLnKVVmOrhbYkruJDOhKQ+o3wX3O7y0vQ/ECS88y52zgNMGjFKHrxgV+uu1qmPA7OH1WNOrPjZgUuepX6/XooDBGjJpX6wBXWO53er7ByCfp2d8wFSOyXW8q+oB64nHBitBP8rGKP0xJpWNAbh+hbND0LBv5nTgh3xiDM4Cx6LHCthYsyn/L1/ih6HssfMJzbaw35V+INrzpZzEh2TNcwQS52NlAErJVeP+UCiZiIgX+q8Yqt+Grw8X+8dBtQQkOfC8bjx6nzBDXxlsFr3NJOB1EGZH2xLO4fQLDFEEgY3WFZXSVX1lljuLf2RRFjxtCWL5YqXogmj/vr6evUNh5+mKuBfP03ZKsFJXBTP0hWD0PQ/S9GB13CN2pBey6aCN972pX/S6aNnzP0IyId9leLBE4azWiKRvM5sQcKsSpbf2pCFLlkihNi45VLe0QoXFTfl4/dA7t41ZgE4pMK6eStuZ/MsXPL/ecPFCbGiDGzFkewWr24g29PJhYjn+A6K//Gxzu1ei+ciwmHE+xRmoexv3iK2ZfSHmHADVkLAMhEqS9xNPrNcsedI3fYUECcGUznQWtHKKwaPcrK8GXZHojHGXt97+50fap2t05gXMp0c0FHSrTaF1e/aY0+nJwh2tHbmQICsSCh036HTEUV6IfM0zFH5dU5WdwXD+3s=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(346002)(136003)(39860400002)(366004)(54906003)(6506007)(6512007)(478600001)(122000001)(6486002)(66556008)(64756008)(53546011)(8936002)(8676002)(38100700002)(186003)(5660300002)(4326008)(316002)(26005)(2906002)(33656002)(86362001)(71200400001)(83380400001)(66476007)(66946007)(76116006)(66446008)(91956017)(6916009)(2616005)(36756003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?EqW6SMOfoFqsiN9/mV4qqbNh8/zRYU93gc57kPjH7XUN/0Hh4S4iwPxyqMuz?=
 =?us-ascii?Q?WQGFlSWM1ucE5iTvd90b+ul13KTUbeq+aCyhf1f8as3PNHhS3uv6wo6ct05+?=
 =?us-ascii?Q?MseZpSwjViCUogDrPstULrQE0Qjz951qjEM1KGACjlbtVYLAEf7cKJgmHByv?=
 =?us-ascii?Q?01Avlwo87MDSSGYGGuvSEbj8oxci82G9jmJ38sfX34w4gPRG65ocdQBFEWI4?=
 =?us-ascii?Q?l4UbpNWy43gWUCpyCjQAHN7XhDXjxHXNNU+h6X12y0FG9cPXQTH6T2aE3lZK?=
 =?us-ascii?Q?tUk3R0sJvLjGIZN2DfCou4PCzpNAZDchSMW8SoWzDfqjn/u8xYIQX8Pbn/U1?=
 =?us-ascii?Q?8tzQRUL7jlP4zeJ8vClCb61FQo/DcwhCSzHWszlrADngtDKun5wYe8HWWwEO?=
 =?us-ascii?Q?OqSl4TGl7jH7ktefSELEPSzwbpFWzfisKYHX9sP4xMLScUigFB4aSnaIbEV0?=
 =?us-ascii?Q?iBfYa2lbF166j15STv2jsw9dpkWZBkO4mdPbcXtQrlpSK+R8lVp7bqvJ0EgZ?=
 =?us-ascii?Q?Hp/0RmBOzcBezk94FjxP3ykFXptzIv6jJb7wrrillNAdlptWIVU4akMkIlhM?=
 =?us-ascii?Q?++uMgAQM4B6zDsFNwUtMtDF4AcJ3m8MW+MtVdXbH9t7xbGs9PsKGfHJjzMXE?=
 =?us-ascii?Q?Nhsf4sSbZU1xNSYOpe0IoQcuxoFzGQCIEBHF8bxywqqGPh/88IQ7svLNmK9P?=
 =?us-ascii?Q?g13dfv2efFBhi49HbQzEJZ4WUuOUStz+Jy7T7zQ5WkvERZAFliPJmZNLIPTJ?=
 =?us-ascii?Q?Qi7iGPj12XFeaGN4gGTCsS+IrnLqnBUOq1MD+qq+Y5bs7Js87XY+V2dDfIvo?=
 =?us-ascii?Q?uD9Sca2KxfYD4iSItfWH5Wny9pUg0uGvRKrbAX90g14s2GP7ivu4T1d8sdI8?=
 =?us-ascii?Q?3lwK7DZMyRfidQX3kObS3Yjf+I4tSXZr5WqmGDu73N+AYCtc2indcPRj9TDB?=
 =?us-ascii?Q?t8i76ltcbLUvQou9/GYtIV3rT4qZzprZZyC4QGpviFv4iAw9NzqR/IbTI9BL?=
 =?us-ascii?Q?87qRCa4KXI7gB8PdXkg21jzTNFu1+F6Yl7/iKJoFbUH/ezGzGF5PJBArF999?=
 =?us-ascii?Q?AMN1EsvvaaZf1O/4/RVrgZk9qsUaB1SbwQA2jn05vQygsvnNFbbp6AApneT0?=
 =?us-ascii?Q?OD+/PBndJ7S1udxMv+yvfoOQSr4kLZr68EmHOVXExXcXb10P3MvvLF4Mh7tM?=
 =?us-ascii?Q?f7VCE/lJdMGy2n/mC2rvKJrr5r99N2tcg5uF+rHa5g25nUgGa40yQAcbfgdW?=
 =?us-ascii?Q?oYtCKJ9MEQBfQKYsRrT1ZltcBOAjh7riq7Lr0m4mvWyKEuUlpAYtf6khw+aX?=
 =?us-ascii?Q?CqJfGC5XNE1Mm0YTvmXeiRs8qv0xLpoHOx0aD2TqaRBXKQ=3D=3D?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-ID: <D394565FBD6AB9419B0FC95FFB77A2A5@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2333
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6cd849cb-aa26-4b20-9769-08d900f15c81
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jZO5LzOpIK75XWK1Zf98X6geZML1jdA1k4eoB+eiRs/xha4GUk5UDB5GoLXAaCTt9sJup8CsQdMwATQWeObshGiwOUG+kKBZjxxEB1lsfl/OQ5Q9rn75ZPhdnWMaTTb2Waxr8gy0NQstSzmXuO6OpisYX8pdc9oWJdLCCftrfuX4ER8tdGc67aEbsJ2o2IgZp+B+5lsFY/UAi8dLeQqdxEYSEE/+EMbCHSFU9/t2xd80c13FNn9NbwyR8zn4MWJxkA1hhuTS/izxuUVkEb+pPAPQ6toZCNgOwQhu5DV+sGwquKCI51g+ZX6exWe35isPMnJYvROjwuLlMRW2Gs1ytgN5q9KO4O4sHxzGXDg5cgx1xWHXQAJIlgp3LV2VNicQcSkPlTriytRBKGTegliLp0T9EC0JwBu5WJR67G18DY1aYsjZHiL4hSYC8pX/Uv60OZD0NMpPJFUUA1Zi0ToxXX9u7tm9bsWu8uZIsmsg9pwS0lPWfBNu6d/+yOpGZNJhZv3uz0feddeicby6EJ4FyFDc5gCkt1Hc+vGp+dzmT0lAyhq0NuV/AGfEx8hzvrbZIZcocGku3O+dggLFVXH1iuZhhRDT06OQqj3OIrAz2ZpTpZh9+iPKHEzYc75FdWnDwyxd8n19TJaZYCpYoMEB0xlOmAs/1jnRH2v/m8a6Fl8=
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:(4636009)(136003)(346002)(396003)(39860400002)(376002)(36840700001)(46966006)(47076005)(186003)(54906003)(6862004)(36756003)(33656002)(81166007)(8676002)(82310400003)(53546011)(70586007)(4326008)(336012)(82740400003)(70206006)(36860700001)(478600001)(356005)(83380400001)(6512007)(6486002)(5660300002)(107886003)(2906002)(26005)(316002)(6506007)(2616005)(86362001)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 16:05:00.9121
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 56407a45-4679-477a-88cc-08d900f163c8
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:
	VE1EUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7045

Hi Julien,

> On 5 Apr 2021, at 17:20, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> At the moment, we are computing offsets/masks for each level and
> granularity. This is a bit of waste given that we only need to
> know the offsets/masks for the granularity used by the guest.
>=20
> All the LPAE information can easily be inferred with just the
> page shift for a given granularity and the level.
>=20
> So rather than providing a set of helpers per granularity, we can
> provide a single set that takes the granularity and the level in
> parameters.
>=20
> With the new helpers in place, we can rework guest_walk_ld() to
> only compute necessary information.
>=20
> Signed-off-by: Julien Grall <julien@amazon.com>

Very nice cleanup.

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Tested-by: Bertrand Marquis <bertrand.marquis@arm.com>

I validated the changes on arm64 but not on arm32.

Regards
Bertrand

> ---
> xen/arch/arm/guest_walk.c  | 37 ++---------------
> xen/include/asm-arm/lpae.h | 82 +++++++++++++-------------------------
> 2 files changed, 30 insertions(+), 89 deletions(-)
>=20
> diff --git a/xen/arch/arm/guest_walk.c b/xen/arch/arm/guest_walk.c
> index b4496c4c86c6..87de40d0cb68 100644
> --- a/xen/arch/arm/guest_walk.c
> +++ b/xen/arch/arm/guest_walk.c
> @@ -372,38 +372,6 @@ static bool guest_walk_ld(const struct vcpu *v,
>     register_t tcr =3D READ_SYSREG(TCR_EL1);
>     struct domain *d =3D v->domain;
>=20
> -#define OFFSETS(gva, gran)              \
> -{                                       \
> -    zeroeth_table_offset_##gran(gva),   \
> -    first_table_offset_##gran(gva),     \
> -    second_table_offset_##gran(gva),    \
> -    third_table_offset_##gran(gva)      \
> -}
> -
> -    const paddr_t offsets[3][4] =3D {
> -        OFFSETS(gva, 4K),
> -        OFFSETS(gva, 16K),
> -        OFFSETS(gva, 64K)
> -    };
> -
> -#undef OFFSETS
> -
> -#define MASKS(gran)                     \
> -{                                       \
> -    zeroeth_size(gran) - 1,             \
> -    first_size(gran) - 1,               \
> -    second_size(gran) - 1,              \
> -    third_size(gran) - 1                \
> -}
> -
> -    static const paddr_t masks[3][4] =3D {
> -        MASKS(4K),
> -        MASKS(16K),
> -        MASKS(64K)
> -    };
> -
> -#undef MASKS
> -
>     static const unsigned int grainsizes[3] =3D {
>         PAGE_SHIFT_4K,
>         PAGE_SHIFT_16K,
> @@ -519,7 +487,7 @@ static bool guest_walk_ld(const struct vcpu *v,
>          * Add offset given by the GVA to the translation table base addr=
ess.
>          * Shift the offset by 3 as it is 8-byte aligned.
>          */
> -        paddr |=3D offsets[gran][level] << 3;
> +        paddr |=3D LPAE_TABLE_INDEX_GS(grainsizes[gran], level, gva) << =
3;
>=20
>         /* Access the guest's memory to read only one PTE. */
>         ret =3D access_guest_memory_by_ipa(d, paddr, &pte, sizeof(lpae_t)=
, false);
> @@ -572,7 +540,8 @@ static bool guest_walk_ld(const struct vcpu *v,
>=20
>     /* Make sure that the lower bits of the PTE's base address are zero. =
*/
>     mask =3D GENMASK_ULL(47, grainsizes[gran]);
> -    *ipa =3D (pfn_to_paddr(pte.walk.base) & mask) | (gva & masks[gran][l=
evel]);
> +    *ipa =3D (pfn_to_paddr(pte.walk.base) & mask) |
> +        (gva & (LEVEL_SIZE_GS(grainsizes[gran], level) - 1));
>=20
>     /*
>      * Set permissions so that the caller can check the flags by herself.=
 Note
> diff --git a/xen/include/asm-arm/lpae.h b/xen/include/asm-arm/lpae.h
> index 4797f9cee494..e94de2e7d8e8 100644
> --- a/xen/include/asm-arm/lpae.h
> +++ b/xen/include/asm-arm/lpae.h
> @@ -160,63 +160,35 @@ static inline bool lpae_is_superpage(lpae_t pte, un=
signed int level)
> #define lpae_set_mfn(pte, mfn)  ((pte).walk.base =3D mfn_x(mfn))
>=20
> /*
> - * AArch64 supports pages with different sizes (4K, 16K, and 64K). To en=
able
> - * page table walks for various configurations, the following helpers en=
able
> - * walking the translation table with varying page size granularities.
> + * AArch64 supports pages with different sizes (4K, 16K, and 64K).
> + * Provide a set of generic helpers that will compute various
> + * information based on the page granularity.
> + *
> + * Note the parameter 'gs' is the page shift of the granularity used.
> + * Some macro will evaluate 'gs' twice rather than storing in a
> + * variable. This is to allow using the macros in assembly.
> + */
> +
> +/*
> + * Granularity | PAGE_SHIFT | LPAE_SHIFT
> + * -------------------------------------
> + * 4K          | 12         | 9
> + * 16K         | 14         | 11
> + * 64K         | 16         | 13
> + *
> + * This is equivalent to LPAE_SHIFT =3D PAGE_SHIFT - 3
>  */
> +#define LPAE_SHIFT_GS(gs)         ((gs) - 3)
> +#define LPAE_ENTRIES_GS(gs)       (_AC(1, U) << LPAE_SHIFT_GS(gs))
> +#define LPAE_ENTRIES_MASK_GS(gs)  (LPAE_ENTRIES_GS(gs) - 1)
> +
> +#define LEVEL_ORDER_GS(gs, lvl)   ((3 - (lvl)) * LPAE_SHIFT_GS(gs))
> +#define LEVEL_SHIFT_GS(gs, lvl)   (LEVEL_ORDER_GS(gs, lvl) + (gs))
> +#define LEVEL_SIZE_GS(gs, lvl)    (_AT(paddr_t, 1) << LEVEL_SHIFT_GS(gs,=
 lvl))
>=20
> -#define LPAE_SHIFT_4K           (9)
> -#define LPAE_SHIFT_16K          (11)
> -#define LPAE_SHIFT_64K          (13)
> -
> -#define lpae_entries(gran)      (_AC(1,U) << LPAE_SHIFT_##gran)
> -#define lpae_entry_mask(gran)   (lpae_entries(gran) - 1)
> -
> -#define third_shift(gran)       (PAGE_SHIFT_##gran)
> -#define third_size(gran)        ((paddr_t)1 << third_shift(gran))
> -
> -#define second_shift(gran)      (third_shift(gran) + LPAE_SHIFT_##gran)
> -#define second_size(gran)       ((paddr_t)1 << second_shift(gran))
> -
> -#define first_shift(gran)       (second_shift(gran) + LPAE_SHIFT_##gran)
> -#define first_size(gran)        ((paddr_t)1 << first_shift(gran))
> -
> -/* Note that there is no zeroeth lookup level with a 64K granule size. *=
/
> -#define zeroeth_shift(gran)     (first_shift(gran) + LPAE_SHIFT_##gran)
> -#define zeroeth_size(gran)      ((paddr_t)1 << zeroeth_shift(gran))
> -
> -#define TABLE_OFFSET(offs, gran)      (offs & lpae_entry_mask(gran))
> -#define TABLE_OFFSET_HELPERS(gran)                                      =
    \
> -static inline paddr_t third_table_offset_##gran##K(paddr_t va)          =
    \
> -{                                                                       =
    \
> -    return TABLE_OFFSET((va >> third_shift(gran##K)), gran##K);         =
    \
> -}                                                                       =
    \
> -                                                                        =
    \
> -static inline paddr_t second_table_offset_##gran##K(paddr_t va)         =
    \
> -{                                                                       =
    \
> -    return TABLE_OFFSET((va >> second_shift(gran##K)), gran##K);        =
    \
> -}                                                                       =
    \
> -                                                                        =
    \
> -static inline paddr_t first_table_offset_##gran##K(paddr_t va)          =
    \
> -{                                                                       =
    \
> -    return TABLE_OFFSET((va >> first_shift(gran##K)), gran##K);         =
    \
> -}                                                                       =
    \
> -                                                                        =
    \
> -static inline paddr_t zeroeth_table_offset_##gran##K(paddr_t va)        =
    \
> -{                                                                       =
    \
> -    /* Note that there is no zeroeth lookup level with 64K granule sizes=
. */\
> -    if ( gran =3D=3D 64 )                                               =
        \
> -        return 0;                                                       =
    \
> -    else                                                                =
    \
> -        return TABLE_OFFSET((va >> zeroeth_shift(gran##K)), gran##K);   =
    \
> -}                                                                       =
    \
> -
> -TABLE_OFFSET_HELPERS(4);
> -TABLE_OFFSET_HELPERS(16);
> -TABLE_OFFSET_HELPERS(64);
> -
> -#undef TABLE_OFFSET
> -#undef TABLE_OFFSET_HELPERS
> +/* Offset in the table at level 'lvl' */
> +#define LPAE_TABLE_INDEX_GS(gs, lvl, addr)   \
> +    (((addr) >> LEVEL_SHIFT_GS(gs, lvl)) & LPAE_ENTRIES_MASK_GS(gs))
>=20
> /* Generate an array @var containing the offset for each level from @addr=
 */
> #define DECLARE_OFFSETS(var, addr)          \
> --=20
> 2.17.1
>=20
>=20



From xen-devel-bounces@lists.xenproject.org Fri Apr 16 16:05:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 16:05:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111904.213974 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXQyV-0001PM-Ox; Fri, 16 Apr 2021 16:05:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111904.213974; Fri, 16 Apr 2021 16: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 1lXQyV-0001PE-Lo; Fri, 16 Apr 2021 16:05:43 +0000
Received: by outflank-mailman (input) for mailman id 111904;
 Fri, 16 Apr 2021 16:05:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZDfs=JN=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lXQyU-0001Or-Cz
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 16:05:42 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.7.52]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6c10c664-d123-4823-8b7d-b9f1a868642b;
 Fri, 16 Apr 2021 16:05:37 +0000 (UTC)
Received: from AM6P192CA0046.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:82::23)
 by AM6PR08MB3176.eurprd08.prod.outlook.com (2603:10a6:209:46::25) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Fri, 16 Apr
 2021 16:05:35 +0000
Received: from AM5EUR03FT035.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:82::4) by AM6P192CA0046.outlook.office365.com
 (2603:10a6:209:82::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Fri, 16 Apr 2021 16:05:35 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT035.mail.protection.outlook.com (10.152.16.119) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Fri, 16 Apr 2021 16:05:35 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Fri, 16 Apr 2021 16:05:35 +0000
Received: from 960b9dbb921f.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D6329339-139F-4889-84A6-E250668077F9.1; 
 Fri, 16 Apr 2021 16:05:29 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 960b9dbb921f.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 16 Apr 2021 16:05:28 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DB7PR08MB3609.eurprd08.prod.outlook.com (2603:10a6:10:42::25) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.18; Fri, 16 Apr
 2021 16:05:27 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.4020.023; Fri, 16 Apr 2021
 16: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: 6c10c664-d123-4823-8b7d-b9f1a868642b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8KFReuE0FmVr3GvtQBInnd0NKFlbfuUdNy9x3RKwJ6g=;
 b=iAuoDfk+pOn7svbsemv8D1y9ZxRdzIhoJ/ztW+gbXbj2KNZPxLoCBOlBVpDHppqxAlA7EmNqugM/Epuf921zo3T7xga4AjgPmDl0VPA6vwR8oibZ1hiqRdytdFbaVLO6ZUWVN7lvaPCpBbVhXYc8H38/4T6oQJjsmTE5shuBjQE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 9be9b89c10df6db4
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kuKpRaLkTCFwnM5nbDYbaBJZ7KRNfcTv9yMNTNNtK2Pq4W2lNtfNSNTCcHwXm3ZKYYp472ItpgT5EkUBJ0+IRa/VnDJje0XyHz+1uWK/v+d4JTxzO+cEDTgk1/coQ0htdRofqY71F6mpnKLj+xb50a+rCajBzBTWUQK1mq9MAUgpxZPqkDoceTFVo+Lz9S1Ilh43iuxE2xEUoeRkVseTIaulMyOlwuNdckURPFeV4OvHO6Xw6WxuftB7NzFsFJ075VxDXRwH7aMOB1v9VehySUVrz3oqMjagHRQ5ZZqCTuMPtdFQs3tuLitKGHOGN2a8V48H7VHqffilpbbOTjE6kw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8KFReuE0FmVr3GvtQBInnd0NKFlbfuUdNy9x3RKwJ6g=;
 b=ktDQtScD5ROVsUQN3YQ+5sGTqsP57aJHwugM8rgHUvTg3l/LCS0qUVFUfWa7M2+otOJYFhJcLmRQJFXdidav/CyFMikKmwMBbzcaEnd0R8vzdMJDo5LCqsM9eHTitjb1BNzuUphxLZrXKkrsMggo1dZD9DBqJMObZKAkaYuh55QpYuZfh3iu50plfyjcY9BBAyViiej1EmT4PWDWuGMziLrFjPFywWIqgSQ4E6xWOtR7TkSHSmHdmee+qeGulGuH/iVy6SsH1yMhardVIKwxZT9WBIMEV7v5e8/7zjZvRq+YWTsQlMOQq7lVNdlehA/arhqarvEG/qwD9Nu5XYfcXw==
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=8KFReuE0FmVr3GvtQBInnd0NKFlbfuUdNy9x3RKwJ6g=;
 b=iAuoDfk+pOn7svbsemv8D1y9ZxRdzIhoJ/ztW+gbXbj2KNZPxLoCBOlBVpDHppqxAlA7EmNqugM/Epuf921zo3T7xga4AjgPmDl0VPA6vwR8oibZ1hiqRdytdFbaVLO6ZUWVN7lvaPCpBbVhXYc8H38/4T6oQJjsmTE5shuBjQE=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Julien Grall <julien@xen.org>
CC: xen-devel <xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Topic: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Index: AQHXMrMxW8Hpcs9A7Ei4/6fuLjr236q3NfuAgAAHXICAAAYsgIAAC7YA
Date: Fri, 16 Apr 2021 16:05:26 +0000
Message-ID: <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
References:
 <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
 <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
 <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
In-Reply-To: <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 96b44b8d-a36a-4bf5-bca5-08d900f1783d
x-ms-traffictypediagnostic: DB7PR08MB3609:|AM6PR08MB3176:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM6PR08MB3176DF8031A36F67A9C0ED72FC4C9@AM6PR08MB3176.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 xstj2cs7nTa345REmqlhpyScrfN/2xgQnRvIAGu76kGq1d2GfY3XTNUP8Uht6HUw3Uge/lWJyVfDVSzPfM+Hy8DO3fiZHD5zW8tG7IteWtFy5FB3JiMUY3e/Ize3p93me1mxvGLNTQyiBCVoS7TZilLnrC1HVAZRRhXp32YQnc6wU6m48PzqS+0xeNRHbwui3QHVZYrj2F+g0DD6Zsd92uXI6VeutU08D6o3obj6BzRCS7IIsbxAa665dA+7674K/eLtP01K9VpucVoledWVPV19LhY2XSLrv1uR1Wslm3wB9T5WnJNN1Azbnhzse/8g7KQ7jBL5MD8d19y36G/j0Nm/We+IKff1LX1GYyE5hm6YRLQiRm8/ZPeH6Kw9xsf6ySOUp/hW2U5IPhKyezF/8cD6SgCaoCjaWzPHlSE8oHJbObcRxzCfZ46R3D2OgnDMdsMPEgYNIJZH2+6hNdLXQYGEnL/sq16sAofTvL21RLUdWdB87f4Uow0Pkw3DKrcZR6Fsv5wWUbrLnFOJEo6Z2eJAdrQR4g2Ct2UDBCPF0A3AHVlmr65pTBaQ4ep9h5oHWnwiA5ZTBZvFiGps+keV3AQFgtq+SC2n4k20oUry/t2ZKYqZKSeq4xxLAJjDgPJblUT63fXNM3ZIC09RrehNzJpwl3VjbhgupSclpmbmhRc=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39860400002)(346002)(136003)(396003)(366004)(64756008)(36756003)(66556008)(66946007)(66476007)(186003)(66446008)(4326008)(122000001)(8676002)(54906003)(26005)(6512007)(2906002)(5660300002)(316002)(38100700002)(91956017)(2616005)(478600001)(76116006)(33656002)(53546011)(71200400001)(6506007)(6486002)(83380400001)(8936002)(6916009)(86362001)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?utf-8?B?alYrMkNlWjdORXk5bjBYUnR3UmM4aVNDL0lNUGxZVWQrRm81aTF5UFVkZjli?=
 =?utf-8?B?NFF2YVZKTnBpbXhEK0Y4OWhGQ0xvenp4SG1iNmVOdzN1Nkx4ZThFSWFMbm1u?=
 =?utf-8?B?TS93eEM1b1hRVlRhN1paeWdVaDllL1N4cUNObUlTdHlJeXNraEYvQk9YMG5L?=
 =?utf-8?B?WHczcEYzS2dwNVpDTHMrZnRuTlhFaXVlSGdBcUpNRlBWaTl3TFNsck9NVEwy?=
 =?utf-8?B?WFJ3VmpoMXlvdDMyZDdrL2NuaGtVZlMrTGZPZ3NFT1dMc0RFcmNQallNdHZN?=
 =?utf-8?B?UHhETklHSzE1NzlMM3ZLcVhJQ0dQaUlMUW9xVkNoMXovZ3FkbXhudXFIWWNk?=
 =?utf-8?B?SGY1N0pKanljR2R5cU9wUWV1ekhoNDY0S2ZraC9Ka0dOeURjaDRoRTEwaFBE?=
 =?utf-8?B?c2lkeGhISzZBR3ZFU2RCT2FId1dJL3lYMjcrKzhvL3dZa2ZRcEMzOEtVV0ZB?=
 =?utf-8?B?M3FsZGRXckZpRnVBckduc25qV0c0RFpmYmRSTy9PUmFtWFdZNmk2SE8vQ250?=
 =?utf-8?B?RzhKdUlWRVdlczl4RFNqeGx6Tk5HRW41NGxqZ0FPQVJSTlhIL0l3ZitpUTJk?=
 =?utf-8?B?NFZpajV2T3hLSFpFN1ZlaWFqN1VTWUVHVzhuQW4wci91Y0R1L1NScmVpVWlW?=
 =?utf-8?B?R2MwRFdvak56aVJQNDFFZVI3bUhUWVRFTkIyS0FHYmpJb2sxY2VtVFpVc1Vo?=
 =?utf-8?B?NnA0cEQxTUFoNFQrMTZiWVZZMVRER01XNjdzZ0Q2UUZGbWxqRG0yVldENkZV?=
 =?utf-8?B?ckJMdC9UU3orblpXeXpnc3UyOGJwcnVNa1FYSnRyYjg4MkdVTmxYVVdGZVB6?=
 =?utf-8?B?UjRIbW8xQjkycUVaWFF1QzdScG5kL05xRmZhMEVzTmNBMERZb05zTVJjV1hO?=
 =?utf-8?B?WmRtMkVKQWQrMU1JN1pmb0JjZWVoWkdYdWJEMFBibWhGQUhqWmhMcTYrMXRM?=
 =?utf-8?B?RWg0R2V2R1Y1ay8zTjlMY1NXMzBBUGo5TjluKzBScm1taGtYMXhnV0hTd1Ju?=
 =?utf-8?B?NStRNGRKY2x4YTZwa2lnaW8xaFhvUmJOVGxZNUxMTXJDVlVjcGswRkdiZjB4?=
 =?utf-8?B?K0lMSGhjQTJ1b05oK0ZBeXdWR3hDQnYwbStPZXpqVUwwemVWeFMyQ05vbm1Y?=
 =?utf-8?B?c0NCYWdiQytCV0c0UkVHNklCdEFHS3pxZ1NKTkNGQ3AwUTBDS1cvUVVsZ25o?=
 =?utf-8?B?MTVRdHkrU1V2M3kvdXVqamVWM3FpVXpod1dIZ3JJSmxSbGtrc2FnUXh2RnJK?=
 =?utf-8?B?S25iNjRhKzc0WEthWDZpSzV4UDdkUG1TQjRrNHJpWDNUZW1paE1YT0xBTG9t?=
 =?utf-8?B?akxMQzJidVllSXQ2Y21uUlh2MWMwOG5HcWswb3ZyUzhJbndhUHVZTnlOUi8r?=
 =?utf-8?B?N1g4enhiNnBvSHJjaFBkalRCS082cWFIZlVHTFNxTVhLTkJzTFlLOXpIbTN6?=
 =?utf-8?B?T3VSdlhFdUpENXQ0azRrK2tkSGh6cjBzVVB3OElBaXZPdlJCY01KckNMVWZW?=
 =?utf-8?B?TkwrSDhwNEdvTTlzV2RUSnNGOXl3R0k0eHZmQThUQ2R5RE9YYnFRN1JTcU1p?=
 =?utf-8?B?a0w4NngxdGhReGYvM0xpLzV3YklJZ3k5TjlVU3ZNU2V4bTRMdlVUVHJuRHc3?=
 =?utf-8?B?czdoMnhiSVc1Ym1kRmk1NFZzbUY5ak9hMUNuTjZzb2xrSlNydzZRL0RYVWYw?=
 =?utf-8?B?N3VLZkh2K3ppLzg1V2wreW5JQURGSkdhSXJ5aGhRZ01FY0Q4eVpPRGgvTEo4?=
 =?utf-8?Q?kc82D1IMlNOJ4hYuT+wp63HojLE1tgY+CWo8xX/?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <01A9DE35E919BA428FD72EF31933D049@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3609
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT035.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6c4fbbdf-be2c-443c-5ea5-08d900f1733f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hLnsiBgf9ay62PJEw2BkAiksZ3JYHC3tFbVkOrv+Grh18vhMeYNpF4oPmP1B1kQw0SEMyObKOYf4KKGhy+c+1F4DmC5ObBWED0e6SoH8igI6nvEj6JO91s48Zd2hXVd+SJ7jWi1mnCtzkQhEufgUI1VRk1Ar6gsP1ehHRbbpoUZB8uGtuAXye+KIdE5aTkhYH4AAKvNOBPUWE1PWZN5kXwPdTooyLqMZNfyHq5Xx9DM7iuNnPHKtTbS9lNWOAwWpBxXFjqNkV9oBvbDSzTOqTOzxvKddqmb7OFQu4SSal8bIEeKFjmacz3BMFpR4yzfLE713DZYVcY0bwmebiq63g69qkMBqpFMMA8lgQRBHSyvDrDEBNC8u+HiH5PgCPLNn4OtGTWnhSUuKhJWH1zBzqCAMIszezkq+YkGSyWx2+vg+wU5W35lPFf/1gGTqw7fXp71PoJe+JRRd1yJGv0bMk7WEZ5xCgaMlmbs/3s2mkuqUz22fPYpp8Boqc3UYZMlENcwWPcMTzNSXe4G3cIR+5JXfPkzaKRcNkrMBoDmRC+Y0XGtMEG8yGuDSkZAqDVjADhRcB4CsdBae+g3WaS2Wr0hygvSJBDmfWSleW04qKWQR9lYs/AalEhBLh5IFCyncMYcjise1TCSg9H6U8o09k6U1+vmgxlj8i8z36Ty/M/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:(4636009)(396003)(376002)(136003)(39860400002)(346002)(36840700001)(46966006)(8936002)(5660300002)(54906003)(33656002)(6486002)(316002)(86362001)(356005)(83380400001)(53546011)(36756003)(336012)(47076005)(6506007)(26005)(2616005)(8676002)(70206006)(36860700001)(82740400003)(478600001)(82310400003)(6512007)(186003)(107886003)(6862004)(70586007)(81166007)(2906002)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 16:05:35.3486
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 96b44b8d-a36a-4bf5-bca5-08d900f1783d
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:
	AM5EUR03FT035.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB3176

SGkgSnVsZWluDQoNCj4gT24gMTYgQXByIDIwMjEsIGF0IDQ6MjMgcG0sIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gDQo+IA0KPiBPbiAxNi8wNC8yMDIxIDE2OjAx
LCBSYWh1bCBTaW5naCB3cm90ZToNCj4+IEhpIEp1bGllbiwNCj4gDQo+IEhpIFJhaHVsLA0KPiAN
Cj4+PiBPbiAxNiBBcHIgMjAyMSwgYXQgMzozNSBwbSwgSnVsaWVuIEdyYWxsIDxqdWxpZW5AeGVu
Lm9yZz4gd3JvdGU6DQo+Pj4gDQo+Pj4gSGksDQo+Pj4gDQo+Pj4gT24gMTYvMDQvMjAyMSAxMjoy
NSwgUmFodWwgU2luZ2ggd3JvdGU6DQo+Pj4+IFJldmVydCB0aGUgY29kZSB0aGF0IGFzc29jaWF0
ZXMgdGhlIGdyb3VwIHBvaW50ZXIgd2l0aCB0aGUgUzJDUiBhcyB0aGlzDQo+Pj4+IGNvZGUgY2F1
c2luZyBhbiBpc3N1ZSB3aGVuIHRoZSBTTU1VIGRldmljZSBoYXMgbW9yZSB0aGFuIG9uZSBtYXN0
ZXINCj4+Pj4gZGV2aWNlLg0KPj4+IA0KPj4+IEl0IGlzIG5vdCBjbGVhciB0byBtZSB3aHkgdGhp
cyBjaGFuZ2Ugd2FzIGZpcnN0IGFkZGVkLiBBcmUgd2UgbWlzc2luZyBhbnkgZmVhdHVyZSB3aGVu
IHJldmVydGluZyBpdD8NCj4+IFRoaXMgZmVhdHVyZSB3YXMgYWRkZWQgd2hlbiB3ZSBiYWNrcG9y
dGVkIHRoZSBjb2RlIGZyb20gTGludXggdG8gZml4IHRoZSBzdHJlYW0gbWF0Y2ggY29uZmxpY3Qg
aXNzdWUNCj4+IGFzIHBhcnQgb2YgY29tbWl0ICJ4ZW4vYXJtOiBzbW11djE6IEludGVsbGlnZW50
IFNNUiBhbGxvY2F0aW9u4oCdLg0KPj4gVGhpcyBpcyBhbiBleHRyYSBmZWF0dXJlIGFkZGVkIHRv
IGFsbG9jYXRlIElPTU1VIGdyb3VwIGJhc2VkIG9uIHN0cmVhbS1pZC4gSWYgdHdvIGRldmljZSBo
YXMgdGhlDQo+PiBzYW1lIHN0cmVhbS1pZCB0aGVuIHdlIGFzc2lnbiB0aG9zZSBkZXZpY2VzIHRv
IHRoZSBzYW1lIGdyb3VwLiANCj4gDQo+IElmIHdlIHJldmVydCB0aGUgcGF0Y2gsIHRoZW4gaXQg
d291bGQgbm90IGJlIHBvc3NpYmxlIHRvIHVzZSB0aGUgU01NVSBpZiB0d28gZGV2aWNlcyB1c2Ug
dGhlIHNhbWUgc3RyZWFtLWlkLiBJcyB0aGF0IGNvcnJlY3Q/DQoNCk5vLiBJZiB3ZSByZXZlcnQg
dGhlIHBhdGNoIHdlIGNhbiB1c2UgdGhlIFNNTVUgaWYgdHdvIGRldmljZXMgdXNlIHRoZSBzYW1l
IHN0cmVhbS1pZCB3aXRob3V0IGFueSBpc3N1ZSBidXQgZWFjaCBkZXZpY2Ugd2lsbCBiZSBpbiBh
IHNlcGFyYXRlIGdyb3VwLlRoaXMgaXMgc2FtZSBiZWhhdmlvdXIgYmVmb3JlIHRoZSBjb2RlIGlz
IG1lcmdlZC4NCiANCj4gDQo+PiBUaGlzIGNvZGUgd2FzIHJlbW92ZWQgZnJvbSBMaW51eA0KPj4g
bGF0ZXIgcG9pbnQgaW4gdGltZSB3aGVuIElPTU1VIGdyb3VwIGhhbmRsaW5nIGlzIGRvbmUgYnkg
TGludXggY29kZSBub3QgYnkgYSBzcGVjaWZpYyBJT01NVSBkcml2ZXIuDQo+IA0KPiBSaWdodC4u
Li4gQnV0IExpbnV4IHN0aWxsIHN1cHBvcnQgdGhhdCBvcHRpb24uIElzIHRoYXQgY29ycmVjdD8N
Cg0KWWVzIExpbnV4IHN1cHBvcnQgSU9NTVUgZ3JvdXBzIGhhbmRsaW5nIGF0IExpbnV4IGNvZGUg
bGV2ZWwgYW5kIG5vdCBieSBldmVyeSBJT01NVSBkcml2ZXIuIA0KVGhhdCB3aHkgSSB0aG91Z2gg
d2hlbiB3ZSBhZGQgdGhlIHN1cHBvcnQgZm9yIElPTU1VIGdyb3VwIGF0IFhFTiBsZXZlbCB3ZSBj
YW4gYWRkIHRoaXMgZnVuY3Rpb25hbGl0eS4NCg0KPiANCj4+IFRoZXJlZm9yZSBJIHRoaW5rIGl0
IGlzIG9rIHJldmVydCB0aGUgY29kZS4NCj4gDQo+IEkgYW0gb2sgd2l0aCB0aGUgcHJpbmNpcGxl
IG9mIChwYXJ0aWFsbHkpIHJldmVydGluZyBwYXRjaCB0byB1bmJsb2NrIHRoZSBzaXR1YXRpb24u
IEJ1dCBJIGhhdmUgdG8gYWRtaXQsIEkgZG9uJ3QgcXVpdGUgdW5kZXJzdGFuZCB3aHkgdGhpcyBp
cyByZXZlcnRlZCByYXRoZXIgdGhhbiBmaXhlZC4NCg0KQXMgSSBtZW50aW9uIGVhcmxpZXIgSSBy
ZXZlcnRlZCB0aGlzIHBhdGNoIHVudGlsIHdlIGhhdmUgcHJvcGVyIHN1cHBvcnQgZm9yIElPTU1V
IGdyb3VwcyBmb3IgQVJNLiBPbmNlIHdlIGhhdmUgSU9NTVUgZ3JvdXAgc3VwcG9ydCBmb3IgQVJN
IHdlIGNhbiBhZGQgdGhpcyBmdW5jdGlvbmFsaXR5Lg0KDQpSZWdhcmRzLA0KUmFodWwNCj4gDQo+
IENoZWVycywNCj4gDQo+IC0tIA0KPiBKdWxpZW4gR3JhbGwNCg0K


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 16:09:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 16:09:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111910.213987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXR1j-0001at-8l; Fri, 16 Apr 2021 16:09:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111910.213987; Fri, 16 Apr 2021 16:09: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 1lXR1j-0001am-5q; Fri, 16 Apr 2021 16:09:03 +0000
Received: by outflank-mailman (input) for mailman id 111910;
 Fri, 16 Apr 2021 16:09: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 1lXR1i-0001ah-PV
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 16:09: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 1lXR1h-0001uS-Mf; Fri, 16 Apr 2021 16:09:01 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lXR1h-00085X-Fw; Fri, 16 Apr 2021 16:09: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=orFF7aaepF8eXlbSp7s24PPTR892b/JKbx/l2YTPOTg=; b=kqAogKeYO18B4HmRnx+KdYbDuy
	X6OSPDuL3NSVGaI4DDcxKv+z2JE4ZEaHpC2a+RJwgktKwF9F/oFtCVcXOdwQSfWMdwevBXYRewQBf
	uu/DzDHjUZCnvGtpO9t4DZ4KN3NPOtxfxiu6Hd0piCC73fEz5PWbJaIb6AlzAkJnTLaE=;
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
To: Rahul Singh <Rahul.Singh@arm.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
 <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
 <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
 <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <78c30978-c3be-4357-fecc-5b2f24bf563f@xen.org>
Date: Fri, 16 Apr 2021 17:08:59 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 16/04/2021 17:05, Rahul Singh wrote:
>> On 16 Apr 2021, at 4:23 pm, Julien Grall <julien@xen.org> wrote:
>>
>>
>>
>> On 16/04/2021 16:01, Rahul Singh wrote:
>>> Hi Julien,
>>
>> Hi Rahul,
>>
>>>> On 16 Apr 2021, at 3:35 pm, Julien Grall <julien@xen.org> wrote:
>>>>
>>>> Hi,
>>>>
>>>> On 16/04/2021 12:25, Rahul Singh wrote:
>>>>> Revert the code that associates the group pointer with the S2CR as this
>>>>> code causing an issue when the SMMU device has more than one master
>>>>> device.
>>>>
>>>> It is not clear to me why this change was first added. Are we missing any feature when reverting it?
>>> This feature was added when we backported the code from Linux to fix the stream match conflict issue
>>> as part of commit "xen/arm: smmuv1: Intelligent SMR allocation”.
>>> This is an extra feature added to allocate IOMMU group based on stream-id. If two device has the
>>> same stream-id then we assign those devices to the same group.
>>
>> If we revert the patch, then it would not be possible to use the SMMU if two devices use the same stream-id. Is that correct?
> 
> No. If we revert the patch we can use the SMMU if two devices use the same stream-id without any issue but each device will be in a separate group.This is same behaviour before the code is merged.

Ok. So there is no change in behavior. Good. Can you propose a commit 
message clarifying that?

OOI why was the code added if it doesn't make any difference?

Anyway, thanks for the explanation!

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 16:41:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 16:41:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111923.214013 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXRXB-0005Bi-0T; Fri, 16 Apr 2021 16:41:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111923.214013; Fri, 16 Apr 2021 16:41: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 1lXRXA-0005Bb-TF; Fri, 16 Apr 2021 16:41:32 +0000
Received: by outflank-mailman (input) for mailman id 111923;
 Fri, 16 Apr 2021 16:41:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZDfs=JN=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lXRX9-0005BW-Ly
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 16:41:31 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:7d00::615])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2da70aab-cf7b-4d2f-abb0-152d0f141e6a;
 Fri, 16 Apr 2021 16:41:28 +0000 (UTC)
Received: from DB6PR0801CA0063.eurprd08.prod.outlook.com (2603:10a6:4:2b::31)
 by PA4PR08MB5933.eurprd08.prod.outlook.com (2603:10a6:102:f0::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Fri, 16 Apr
 2021 16:41:26 +0000
Received: from DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:2b:cafe::3c) by DB6PR0801CA0063.outlook.office365.com
 (2603:10a6:4:2b::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Fri, 16 Apr 2021 16:41:26 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT010.mail.protection.outlook.com (10.152.20.96) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Fri, 16 Apr 2021 16:41:26 +0000
Received: ("Tessian outbound b610e7b4d771:v90");
 Fri, 16 Apr 2021 16:41:26 +0000
Received: from d8c9c61a2189.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E2AE2F66-0DF3-4F60-B1FF-F3AE462EC591.1; 
 Fri, 16 Apr 2021 16:41:20 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d8c9c61a2189.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 16 Apr 2021 16:41:20 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 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.4042.18; Fri, 16 Apr
 2021 16:41:18 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::5959:35df:3647:b78d%7]) with mapi id 15.20.4020.023; Fri, 16 Apr 2021
 16: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: 2da70aab-cf7b-4d2f-abb0-152d0f141e6a
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4aXCwxtgSCgRaKJh63xVnLb+qqhcSFbSL4vGT++2Wvc=;
 b=t/yozJs5UzkPXqtwgs/CK38v7oyL+xEG+P7NN7DicQPLfPp6sUUc1zjWdt3R4V8k9S7QQbkmXN6tHc9WaswANMPW2b1LQdWJ2zoyLTRuf/TtCkrrOpWGCuqwbs9AYmvYxPZDsN4ySQwIYbWnL/6m++f0y/0xcFVv8H2tfOs/cpk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: dc74617730c392d7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VRQz2HSpvfaOVC7b7NPpuFeBMzZbEiFNdpzD9chW2mUkfq5OfQgP/HyKSA10GlOwGMO4kNACCrXmtkcVFEDASp2XxjH/5vqJ14SBqN4B6BJXjY4UjXsgMrYaNpfRqGzw+lGPecxv/Ez1WHuvKhGGyla08bouW9JSTVMM8H6XARzlu3WNMiO4QbFFnoWfNvQ0cIS+kLtbKaxzXPi/meT25iQRvgOOUbKDbFsBA8VJ+nJPAWfzEu6Vx7Da+6fKvt8o2Bi3RqZiI23OEm0EtNVqSZy3LsUfMEsV3a7KYa12Nc5f+TL/SDKbeg14Exv9kGBbfzG8CMnH5wDfxYlVZStPfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4aXCwxtgSCgRaKJh63xVnLb+qqhcSFbSL4vGT++2Wvc=;
 b=AzAlo57BVl3cRPZy64CNla2k1tEZSFbgxuQeVC+mA223m2k/YK09E4E9+CtxfIQCoxO8wKKqxtrV0tvS/2zotN/n/KEcXWtlWoT/YUvwW9fC+oDYKn08yAOEVB7Fb9KtXnay2Q3gmxGrMYk8cyFWfSZ6GVSKgmpzdOp4OewGp/ccFJhuEM0A528ci/ToLBx7A1LCHky9uZrpKWuoMhmFc+1bVALO5ExukId8gO1q6EXX7QDRE3iGws6f8gGqNQPnC6JPBUZPB9vKPfQ+gObYgQCsgV3a+vXagI9rxbZi6CKOB/QILsqiWv9EQWjXwfg7sWcTwxHWzse2smORx+tpig==
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=4aXCwxtgSCgRaKJh63xVnLb+qqhcSFbSL4vGT++2Wvc=;
 b=t/yozJs5UzkPXqtwgs/CK38v7oyL+xEG+P7NN7DicQPLfPp6sUUc1zjWdt3R4V8k9S7QQbkmXN6tHc9WaswANMPW2b1LQdWJ2zoyLTRuf/TtCkrrOpWGCuqwbs9AYmvYxPZDsN4ySQwIYbWnL/6m++f0y/0xcFVv8H2tfOs/cpk=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Julien Grall <julien@xen.org>
CC: xen-devel <xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Topic: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Index:
 AQHXMrMxW8Hpcs9A7Ei4/6fuLjr236q3NfuAgAAHXICAAAYsgIAAC7YAgAAA/oCAAAkFAA==
Date: Fri, 16 Apr 2021 16:41:17 +0000
Message-ID: <348C921E-1150-4247-A693-1D81933FC3F7@arm.com>
References:
 <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
 <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
 <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
 <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
 <78c30978-c3be-4357-fecc-5b2f24bf563f@xen.org>
In-Reply-To: <78c30978-c3be-4357-fecc-5b2f24bf563f@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: cd9387ca-88fd-464d-c2fa-08d900f67a54
x-ms-traffictypediagnostic: DB8PR08MB5484:|PA4PR08MB5933:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<PA4PR08MB5933F9D34E5B7491DC0D42ABFC4C9@PA4PR08MB5933.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 1z4NO8ygQAi8SXot6MtNKPZoY5yosBBb2AP/ubXFPg7KakQg5eyd6wxNpxG0rEZ1LEjNoFwmtUZYkPQRF/GB7FftTL0cWEUQZmBpdcEEKSfbPVYffaoaOu4EL6jxvaOFXGCv58W8zgGT5/0M0EdprdPZdbSAeBp21OjYFRxplErRrZcNOL+Ey0UEi5RZZviiIOb0lNO0cKNHkIRsRU03XWwEPr6YkQEOS2ier4wlAmPqhOCZVsUt9uApy08+4Piy19DuKcENph5vSoHVRhno/atpaWCdB2JjCa4bAjtn/BMAf4ZyXaViVRSm5q9SRE+9VdUK9emPlPq+MIxD7xomWTfZIX44QspoKA8ajfzIcLZTqnbTEZhEvlGKTr1pmcmn8thE38mvKU3ZcoxS6QvQN+DhohIRfudC3G1C+jTUck6lP28vlHvEqLA3ILZXWZqDHzJlSzCePjZY4sp5y0Vp9rZ5h55z0OKT3QdR2+h+5EL7vxiT7ovuXKxEkOrS5F9kn96lLHXGR1YM/8PLTvfNHyKef3OpXHKTrIKvfC/ppMXZ+XCJEpLhlKyD42fawy12nhXRpuiUgwckXM9PUJtPCj6ya1dh+0rnMx5GjooOdng6UKyWnmgJJhxrbz2uqc42TpH7L6+MEN4Q9bPhadm/y8W3eSv2LYCPz+REBtOhYR0uHqAx2oH297/lY+X3C9lnh/uK94qyMvIGknzyk7DYXOXrtpSC6D3+a5RBXmnmZXZ8cIIqsaXVwhVPsroNfMJd
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39860400002)(6512007)(26005)(186003)(71200400001)(4326008)(966005)(54906003)(86362001)(8676002)(316002)(2616005)(6486002)(122000001)(8936002)(38100700002)(53546011)(64756008)(66946007)(36756003)(76116006)(91956017)(66556008)(66446008)(66476007)(478600001)(5660300002)(33656002)(6916009)(6506007)(2906002)(83380400001)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <FB59BF0244538D428C6AE551E3701963@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5484
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3386e85d-1e24-4cdf-a621-08d900f67566
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UgN5u0SwgOkW3NFO2BnD2nud0OygodSvC1aDhMwfL9CDzYYTKASjwlYnAZnuH17HBliAQWjJUzqMZnrXiqwLN9X6H2YH1MAZYp06kQSejxGSGmLLx7JmZSpEZtl6odYk2PUP2tHjEhQOCTpiGyHMiBBS/BU8ymY+cSCFmkV+kOgK3hGEeC23FqCWw5NPLNAsTajXELqewCPmq/N0m98tbglzk+wVhbBKsioDqcUJX2/oYEAsIwGpZWHfUfdJCVygNS0uhGAYokQ0I9wt0hIxlSUfdj9u37yKiy7GmTmZtboQYlqWGv3bea38i0Io1zEmgMFkbPxH1ZkELPIF2NP0vxWrdLGvkxvNDGhAjAF497IHM+KBVLzELBG5hq8PrwWhge5ySOPzNeSyMyD/EOYMPtU/JdAHtKtxxHXpubFJRP7My3tpotKDHVslHbwM0wX4YQO6Yjydzwis1oA/q0UZaNc2CkThTJrJxc5wmCT7HPk7KRIX47N258h6O5bBeRxFhf6UVhRvk8dRi/wY6Jrfl1Sjsxe3l4U0LpM6x/y44QgtQe11jYgF9WMW7aFLuvGzhHQrfRwQ2dJ78aGYur029POdJUQB6YuFkpUh2ll8O0ASyp5EvuHCE/AZZ8JLbCYaRP62yYxkuwszI49hZgDaKMsWDchPcqW6FcZYYPeDNusOMXxuwLHWMXiD1l7UpEJ86S0P8gj0idsL0UHaShG2BOgg3z8hHsJEM98PY/iYHOA=
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:(4636009)(346002)(396003)(376002)(136003)(39860400002)(46966006)(36840700001)(54906003)(8936002)(86362001)(36756003)(186003)(36860700001)(70586007)(83380400001)(336012)(47076005)(316002)(33656002)(6486002)(8676002)(70206006)(82310400003)(6506007)(6862004)(356005)(2906002)(478600001)(6512007)(5660300002)(107886003)(81166007)(966005)(53546011)(2616005)(4326008)(82740400003)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Apr 2021 16:41:26.3895
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: cd9387ca-88fd-464d-c2fa-08d900f67a54
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:
	DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5933

SGkgSnVsaWVuDQoNCj4gT24gMTYgQXByIDIwMjEsIGF0IDU6MDggcG0sIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gDQo+IA0KPiBPbiAxNi8wNC8yMDIxIDE3OjA1
LCBSYWh1bCBTaW5naCB3cm90ZToNCj4+PiBPbiAxNiBBcHIgMjAyMSwgYXQgNDoyMyBwbSwgSnVs
aWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+Pj4gDQo+Pj4gDQo+Pj4gDQo+Pj4g
T24gMTYvMDQvMjAyMSAxNjowMSwgUmFodWwgU2luZ2ggd3JvdGU6DQo+Pj4+IEhpIEp1bGllbiwN
Cj4+PiANCj4+PiBIaSBSYWh1bCwNCj4+PiANCj4+Pj4+IE9uIDE2IEFwciAyMDIxLCBhdCAzOjM1
IHBtLCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4+Pj4+IA0KPj4+Pj4g
SGksDQo+Pj4+PiANCj4+Pj4+IE9uIDE2LzA0LzIwMjEgMTI6MjUsIFJhaHVsIFNpbmdoIHdyb3Rl
Og0KPj4+Pj4+IFJldmVydCB0aGUgY29kZSB0aGF0IGFzc29jaWF0ZXMgdGhlIGdyb3VwIHBvaW50
ZXIgd2l0aCB0aGUgUzJDUiBhcyB0aGlzDQo+Pj4+Pj4gY29kZSBjYXVzaW5nIGFuIGlzc3VlIHdo
ZW4gdGhlIFNNTVUgZGV2aWNlIGhhcyBtb3JlIHRoYW4gb25lIG1hc3Rlcg0KPj4+Pj4+IGRldmlj
ZS4NCj4+Pj4+IA0KPj4+Pj4gSXQgaXMgbm90IGNsZWFyIHRvIG1lIHdoeSB0aGlzIGNoYW5nZSB3
YXMgZmlyc3QgYWRkZWQuIEFyZSB3ZSBtaXNzaW5nIGFueSBmZWF0dXJlIHdoZW4gcmV2ZXJ0aW5n
IGl0Pw0KPj4+PiBUaGlzIGZlYXR1cmUgd2FzIGFkZGVkIHdoZW4gd2UgYmFja3BvcnRlZCB0aGUg
Y29kZSBmcm9tIExpbnV4IHRvIGZpeCB0aGUgc3RyZWFtIG1hdGNoIGNvbmZsaWN0IGlzc3VlDQo+
Pj4+IGFzIHBhcnQgb2YgY29tbWl0ICJ4ZW4vYXJtOiBzbW11djE6IEludGVsbGlnZW50IFNNUiBh
bGxvY2F0aW9u4oCdLg0KPj4+PiBUaGlzIGlzIGFuIGV4dHJhIGZlYXR1cmUgYWRkZWQgdG8gYWxs
b2NhdGUgSU9NTVUgZ3JvdXAgYmFzZWQgb24gc3RyZWFtLWlkLiBJZiB0d28gZGV2aWNlIGhhcyB0
aGUNCj4+Pj4gc2FtZSBzdHJlYW0taWQgdGhlbiB3ZSBhc3NpZ24gdGhvc2UgZGV2aWNlcyB0byB0
aGUgc2FtZSBncm91cC4NCj4+PiANCj4+PiBJZiB3ZSByZXZlcnQgdGhlIHBhdGNoLCB0aGVuIGl0
IHdvdWxkIG5vdCBiZSBwb3NzaWJsZSB0byB1c2UgdGhlIFNNTVUgaWYgdHdvIGRldmljZXMgdXNl
IHRoZSBzYW1lIHN0cmVhbS1pZC4gSXMgdGhhdCBjb3JyZWN0Pw0KPj4gTm8uIElmIHdlIHJldmVy
dCB0aGUgcGF0Y2ggd2UgY2FuIHVzZSB0aGUgU01NVSBpZiB0d28gZGV2aWNlcyB1c2UgdGhlIHNh
bWUgc3RyZWFtLWlkIHdpdGhvdXQgYW55IGlzc3VlIGJ1dCBlYWNoIGRldmljZSB3aWxsIGJlIGlu
IGEgc2VwYXJhdGUgZ3JvdXAuVGhpcyBpcyBzYW1lIGJlaGF2aW91ciBiZWZvcmUgdGhlIGNvZGUg
aXMgbWVyZ2VkLg0KPiANCj4gT2suIFNvIHRoZXJlIGlzIG5vIGNoYW5nZSBpbiBiZWhhdmlvci4g
R29vZC4gQ2FuIHlvdSBwcm9wb3NlIGEgY29tbWl0IG1lc3NhZ2UgY2xhcmlmeWluZyB0aGF0PyAN
Cg0KUGxlYXNlIGhhdmUgYSBsb29rIGlmIGl0IG1ha2Ugc2Vuc2UuDQoNCnhlbi9hcm06IHNtbXV2
MTogUmV2ZXJ0IGFzc29jaWF0aW5nIHRoZSBncm91cCBwb2ludGVyIHdpdGggdGhlIFMyQ1INCg0K
UmV2ZXJ0IHRoZSBjb2RlIHRoYXQgYXNzb2NpYXRlcyB0aGUgZ3JvdXAgcG9pbnRlciB3aXRoIHRo
ZSBTMkNSIGFzIHRoaXMNCmNvZGUgY2F1c2luZyBhbiBpc3N1ZSB3aGVuIHRoZSBTTU1VIGRldmlj
ZSBoYXMgbW9yZSB0aGFuIG9uZSBtYXN0ZXINCmRldmljZSB3aXRoIHNhbWUgc3RyZWFtLWlkLiBU
aGlzIGlzc3VlIGlzIGludHJvZHVjZWQgYnkgdGhlIGJlbG93IGNvbW1pdDoNCg0K4oCcMDQzNTc4
NGNjNzVkY2ZlZjNiNWY1OWMyOWRlYjFkYmI4NDI2NWRkYjp4ZW4vYXJtOiBzbW11djE6IEludGVs
bGlnZW50IFNNUiBhbGxvY2F0aW9u4oCdDQogDQpSZXZlcnRpbmcgdGhlIGNvZGUgd2lsbCBub3Qg
aW1wYWN0IHRvIHVzZSBvZiBTTU1VIGlmIHR3byBkZXZpY2VzIHVzZSB0aGUNCnNhbWUgc3RyZWFt
LWlkIGJ1dCBlYWNoIGRldmljZSB3aWxsIGJlIGluIGEgc2VwYXJhdGUgZ3JvdXAuIFRoaXMgaXMg
dGhlIHNhbWUNCmJlaGF2aW91ciBiZWZvcmUgdGhlIGNvZGUgaXMgbWVyZ2VkLg0KDQo+IA0KPiBP
T0kgd2h5IHdhcyB0aGUgY29kZSBhZGRlZCBpZiBpdCBkb2Vzbid0IG1ha2UgYW55IGRpZmZlcmVu
Y2U/DQoNClRoaXMgY29kZSBpcyBwYXJ0IG9mIHRoZSBjb2RlIGluIExpbnV4IGNvbW1pdCB0byBm
aXggc3RyZWFtIG1hdGNoIGNvbmZsaWN0IGlzc3VlIHdoZW4gdHdvIGRldmljZXMgaGF2ZSB0aGUg
c2FtZSBzdHJlYW0taWQuIFNlZSBMaW51eCBjb21taXQgbWVzc2FnZS4NCmh0dHBzOi8vZ2l0Lmtl
cm5lbC5vcmcvcHViL3NjbS9saW51eC9rZXJuZWwvZ2l0L3N0YWJsZS9saW51eC5naXQvY29tbWl0
L2RyaXZlcnMvaW9tbXUvYXJtLXNtbXUuYz9oPWxpbnV4LTUuOC55JmlkPTU4ODg4OGE3Mzk5ZGIz
NTJkMmIxYTQxYzlkNWIzYmYwZmQ0ODIzOTANCg0KV2hlbiBJIHRlc3RlZCB0aGUgY29kZSBvbiBK
dW5vIGJvYXJkIEkgZGlkbuKAmXQgIG9ic2VydmUgYW55IGlzc3VlIHNvIEkgdGhvdWdodCBpdCBp
cyBvayB0byBtZXJnZSB0aGlzIGNvZGUgdG8gaGF2ZSBjbGVhbiBiYWNrcG9ydC4NCg0KUmVnYXJk
cywNClJhaHVsDQoNCj4gDQo+IEFueXdheSwgdGhhbmtzIGZvciB0aGUgZXhwbGFuYXRpb24hDQo+
IA0KPiBDaGVlcnMsDQo+IA0KPiAtLSANCj4gSnVsaWVuIEdyYWxsDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 18:06:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 18:06:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111933.214031 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXSqf-0004Q0-HA; Fri, 16 Apr 2021 18:05:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111933.214031; Fri, 16 Apr 2021 18: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 1lXSqf-0004Pt-DU; Fri, 16 Apr 2021 18:05:45 +0000
Received: by outflank-mailman (input) for mailman id 111933;
 Fri, 16 Apr 2021 18:05: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 1lXSqe-0004Pl-GO; Fri, 16 Apr 2021 18:05: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 1lXSqe-0003qo-9A; Fri, 16 Apr 2021 18:05: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 1lXSqe-0003ix-1z; Fri, 16 Apr 2021 18:05:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXSqe-00068m-1T; Fri, 16 Apr 2021 18:05: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=on67LrB/9sU2ieLLLxoXI4K4JZzoePKTcsJYUI+adUo=; b=r/6mwUyV+/zpaslQmabrscrYmv
	vlIryMVg9dE/sKrhZ3pOlFT7lgiG+KBljqO9OG2j4NW7g0CILV28/ZRMVgMIE+P55OzaHnpSVJ5zi
	JLuDb5d/AYhejoBhfVLKkChULVbe8hS1igcAUl8iHCe3k2qJ09IcXVjQC+tb7deTLbNY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161209-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161209: 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=dd22a64de7e02b48312839a15179528c8f7db5c6
X-Osstest-Versions-That:
    xen=9b47be876f2a9521bb1f247d855603c00bc99465
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 18:05:44 +0000

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

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                  dd22a64de7e02b48312839a15179528c8f7db5c6
baseline version:
 xen                  9b47be876f2a9521bb1f247d855603c00bc99465

Last test of basis   161206  2021-04-16 13:00:27 Z    0 days
Testing same since   161209  2021-04-16 16:01:30 Z    0 days    1 attempts

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

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   9b47be876f..dd22a64de7  dd22a64de7e02b48312839a15179528c8f7db5c6 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 18:21:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 18:21:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111939.214046 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXT6D-0006C2-SX; Fri, 16 Apr 2021 18:21:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111939.214046; Fri, 16 Apr 2021 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 1lXT6D-0006Bv-P9; Fri, 16 Apr 2021 18:21:49 +0000
Received: by outflank-mailman (input) for mailman id 111939;
 Fri, 16 Apr 2021 18:21: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 1lXT6C-0006Bq-EG
 for xen-devel@lists.xenproject.org; Fri, 16 Apr 2021 18:21: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 1lXT67-00047K-B6; Fri, 16 Apr 2021 18:21:43 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lXT66-0006Wk-TY; Fri, 16 Apr 2021 18:21: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=tnclYvkX4VcnfkAKxyCBDpaPTSyUQ85vYR89NoseVOc=; b=Fwz4jYeGEODvjZIe9PE7Gppofl
	6wmLebp60uOtLGJgEJDqyNYB8Fs7QBLsENzZgB2azZgrM4iEpf/l8QLSbKz5PBP9eWqYV3eMUiIbV
	hOr7t5FBZtLu7W3mgsSTqJ1caXLerQnepk95gxKyzIDN5UmmUWHN/2eL5eTgTDvE+9ss=;
Subject: Re: [PATCH] xen/arm: Ensure the vCPU context is seen before clearing
 the _VPF_down
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 ash.j.wilding@gmail.com, Julien Grall <jgrall@amazon.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Dario Faggioli <dfaggioli@suse.com>, George Dunlap <george.dunlap@citrix.com>
References: <20210226205158.20991-1-julien@xen.org>
 <alpine.DEB.2.21.2102261756280.2682@sstabellini-ThinkPad-T480s>
 <ca41bfbb-d942-d8fd-e96e-c464f6b3643f@xen.org>
 <alpine.DEB.2.21.2103191652450.439@sstabellini-ThinkPad-T480s>
 <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
 <alpine.DEB.2.21.2104131541370.4885@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <ebcaad65-a155-6979-9754-a8ef0ece3590@xen.org>
Date: Fri, 16 Apr 2021 19:21:40 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104131541370.4885@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 13/04/2021 23:43, Stefano Stabellini wrote:
> On Sat, 20 Mar 2021, Julien Grall wrote:
>> On 20/03/2021 00:01, Stefano Stabellini wrote:
>>> On Sat, 27 Feb 2021, Julien Grall wrote:
>>>> (+ Dario and George)
>>>>
>>>> Hi Stefano,
>>>>
>>>> I have added Dario and George to get some inputs from the scheduling part.
>>>>
>>>> On 27/02/2021 01:58, Stefano Stabellini wrote:
>>>>> On Fri, 26 Feb 2021, Julien Grall wrote:
>>>>>> From: Julien Grall <jgrall@amazon.com>
>>>>>>
>>>>>> A vCPU can get scheduled as soon as _VPF_down is cleared. As there is
>>>>>> currently not ordering guarantee in arch_set_info_guest(), it may be
>>>>>> possible that flag can be observed cleared before the new values of
>>>>>> vCPU
>>>>>> registers are observed.
>>>>>>
>>>>>> Add an smp_mb() before the flag is cleared to prevent re-ordering.
>>>>>>
>>>>>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>>>>>
>>>>>> ---
>>>>>>
>>>>>> Barriers should work in pair. However, I am not entirely sure whether
>>>>>> to
>>>>>> put the other half. Maybe at the beginning of context_switch_to()?
>>>>>
>>>>> It should be right after VGCF_online is set or cleared, right?
>>>>
>>>> vcpu_guest_context_t is variable allocated on the heap just for the
>>>> purpose of
>>>> this call. So an ordering with VGFC_online is not going to do anything.
>>>>
>>>>> So it
>>>>> would be:
>>>>>
>>>>> xen/arch/arm/domctl.c:arch_get_info_guest
>>>>> xen/arch/arm/vpsci.c:do_common_cpu_on
>>>>>
>>>>> But I think it is impossible that either of them get called at the same
>>>>> time as arch_set_info_guest, which makes me wonder if we actually need
>>>>> the barrier...
>>>> arch_get_info_guest() is called without the domain lock held and I can't
>>>> see
>>>> any other lock that could prevent it to be called in // of
>>>> arch_set_info_guest().
>>>>
>>>> So you could technically get corrupted information from
>>>> XEN_DOMCTL_getvcpucontext. For this case, we would want a smp_wmb() before
>>>> writing to v->is_initialised. The corresponding read barrier would be in
>>>> vcpu_pause() -> vcpu_sleep_sync() -> sync_vcpu_execstate().
>>>>
>>>> But this is not the issue I was originally trying to solve. Currently,
>>>> do_common_cpu_on() will roughly do:
>>>>
>>>>    1) domain_lock(d)
>>>>
>>>>    2) v->arch.sctlr = ...
>>>>       v->arch.ttbr0 = ...
>>>>
>>>>    3) clear_bit(_VFP_down, &v->pause_flags);
>>>>
>>>>    4) domain_unlock(d)
>>>>
>>>>    5) vcpu_wake(v);
>>>>
>>>> If we had only one pCPU on the system, then we would only wake the vCPU in
>>>> step 5. We would be fine in this situation. But that's not the interesting
>>>> case.
>>>>
>>>> If you add a second pCPU in the story, it may be possible to have
>>>> vcpu_wake()
>>>> happening in // (see more below). As there is no memory barrier, step 3
>>>> may be
>>>> observed before 2. So, assuming the vcpu is runnable, we could start to
>>>> schedule a vCPU before any update to the registers (step 2) are observed.
>>>>
>>>> This means that when context_switch_to() is called, we may end up to
>>>> restore
>>>> some old values.
>>>>
>>>> Now the question is can vcpu_wake() be called in // from another pCPU?
>>>> AFAICT,
>>>> it would be only called if a given flag in v->pause_flags is cleared (e.g.
>>>> _VFP_blocked). But can we rely on that?
>>>>
>>>> Even if we can rely on it, v->pause_flags has other flags in it. I
>>>> couldn't
>>>> rule out that _VPF_down cannot be set at the same time as the other
>>>> _VPF_*.
>>>>
>>>> Therefore, I think a barrier is necessary to ensure the ordering.
>>>>
>>>> Do you agree with this analysis?
>>>    Yes, I think this makes sense. The corresponding barrier in the
>>> scheduling code would have to be after reading _VPF_down and before
>>> reading v->arch.sctlr, etc.
>>>
>>>
>>>>>> The issues described here is also quite theoritical because there are
>>>>>> hundreds of instructions executed between the time a vCPU is seen
>>>>>> runnable and scheduled. But better be safe than sorry :).
>>>>>> ---
>>>>>>     xen/arch/arm/domain.c | 7 +++++++
>>>>>>     1 file changed, 7 insertions(+)
>>>>>>
>>>>>> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
>>>>>> index bdd3d3e5b5d5..2b705e66be81 100644
>>>>>> --- a/xen/arch/arm/domain.c
>>>>>> +++ b/xen/arch/arm/domain.c
>>>>>> @@ -914,7 +914,14 @@ int arch_set_info_guest(
>>>>>>         v->is_initialised = 1;
>>>>>>           if ( ctxt->flags & VGCF_online )
>>>>>> +    {
>>>>>> +        /*
>>>>>> +         * The vCPU can be scheduled as soon as _VPF_down is cleared.
>>>>>> +         * So clear the bit *after* the context was loaded.
>>>>>> +         */
>>>>>> +        smp_mb();
>>>>
>>>>   From the discussion above, I would move this barrier before
>>>> v->is_initialised.
>>>> So we also take care of the issue with arch_get_info_guest().
>>>>
>>>> This barrier also can be reduced to a smp_wmb() as we only expect an
>>>> ordering
>>>> between writes.
>>>>
>>>> The barrier would be paired with the barrier in:
>>>>      - sync_vcpu_execstate() in the case of arch_get_vcpu_info_guest().
>>>>      - context_switch_to() in the case of scheduling (The exact barrier is
>>>> TDB).
>>>
>>> OK, this makes sense, but why before:
>>>
>>>     v->is_initialised = 1;
>>>
>>> instead of right after it? It is just v->pause_flags we care about,
>>> right?
>>
>> The issue I originally tried to address was a race with v->pause_flags. But I
>> also discovered one with v->initialised while answering to your previous
>> e-mail. This was only briefly mentioned so let me expand it.
>>
>> A toolstack can take a snapshot of the vCPU context using
>> XEN_DOMCTL_get_vcpucontext. The helper will bail out if v->is_initialized is
>> 0.
>>
>> If v->is_initialized is 1, it will temporarily pause the vCPU and then call
>> arch_get_info_guest().
>>
>> AFAICT, arch_get_info_guest() and arch_set_info_guest() (called from PSCI CPU
>> on) can run concurrently.
>>
>> If you put the barrier right after v->is_initialised, then a
>> processor/compiler is allowed to re-order the write with what comes before.
>> Therefore, the new value of v->is_initialised may be observed before
>> v->arch.{sctlr, ttbr0,...}.
>>
>> Hence, we need a barrier before setting v->is_initialized so the new value is
>> observed *after* the changes to v->arch.{sctlr, ttbr0, ...) have been
>> observed.
>>
>> A single smp_wmb() barrier before v->is_initialized should be sufficient to
>> cover the two problems discussed as I don't think we need to observe
>> v->is_initialized *before* v->pause_flags.
> 
> I think your explanation is correct. However, don't we need a smp_rmb()
> barrier after reading v->is_initialised in xen/common/domctl.c:do_domctl
> ? That would be the barrier that pairs with smp_wmb in regards to
> v->is_initialised.

There is already a smp_mb() in sync_vcpu_exec_state() which is called 
from vcpu_pause() -> vcpu_sleep_sync().

I don't think we can ever remove the memory barrier in 
sync_vcpu_exec_state() because the vCPU paused may have run (or 
initialized) on a different pCPU. So I would like to rely on the barrier 
rather than adding an extra one (even thought it is not a fast path).

I am thinking to add a comment on top of vcpu_pause() to clarify that 
after the call, the vCPU context will be observed without extra 
synchronization required.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 16 20:52:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 16 Apr 2021 20:52:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111954.214070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXVS5-0003Kv-6r; Fri, 16 Apr 2021 20:52:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111954.214070; Fri, 16 Apr 2021 20: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 1lXVS5-0003Ko-3n; Fri, 16 Apr 2021 20:52:33 +0000
Received: by outflank-mailman (input) for mailman id 111954;
 Fri, 16 Apr 2021 20:52:32 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXVS4-0003Kg-Lx; Fri, 16 Apr 2021 20:52:32 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXVS4-0006Zl-Ad; Fri, 16 Apr 2021 20:52:32 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXVS4-0005W8-07; Fri, 16 Apr 2021 20:52:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXVS3-0004Nv-Vr; Fri, 16 Apr 2021 20:52: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=5nqpYR5FJ0j11T+vAYZK0elt9RPhlgQK+SekHtXdgLU=; b=DdnorlmAzl/D8M9sDcK5qwmjVY
	QXnHYsxAlL8ugfhpgWZOPboSLq1ilaB5i17Ee8BchthiKzUM+laW6kFHTuKn4avdD2Rn/GIRdMT9G
	O8IeWmn1kqop1H+MRX/NTozoqIaXB3FIz/p57NhAR6jJHGNiAt1TdIx7Rzs8lG0k4qds=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161196-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161196: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 16 Apr 2021 20:52:31 +0000

flight 161196 xen-4.12-testing real [real]
flight 161214 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161196/
http://logs.test-lab.xenproject.org/osstest/logs/161214/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   59 days
Failing since        160128  2021-03-18 14:36:18 Z   29 days   37 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   27 days   35 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 00:36:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 00:36:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111970.214097 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXYwP-0007Y5-Q3; Sat, 17 Apr 2021 00:36:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111970.214097; Sat, 17 Apr 2021 00:36: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 1lXYwP-0007Xy-Mt; Sat, 17 Apr 2021 00:36:05 +0000
Received: by outflank-mailman (input) for mailman id 111970;
 Sat, 17 Apr 2021 00:36: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 1lXYwN-0007Xq-Qq; Sat, 17 Apr 2021 00:36: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 1lXYwN-0002Lo-J0; Sat, 17 Apr 2021 00:36: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 1lXYwN-0000tl-6Z; Sat, 17 Apr 2021 00:36:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXYwN-0000mg-65; Sat, 17 Apr 2021 00:36: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:Message-Id:Subject:To;
	bh=kd+nCd6hIt2hwaOo1Kzjbxmqad+B9jQbXEEzZI3Pbww=; b=wx+Ptvl6HfzESp5SCO3uyr0OF1
	C3/Kt5Bww/CAiBogBOws3JyeadOjhaTJVPgD5CqRtSfj0tpRN9uOismLaTxkj0+BuvxYu7lawa/xj
	H7zscPOotwn7TPyN05blQfmi4jndRjz9UzoDDRjgMLFi6E4ahiT54NwsmjbN+182g4YA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-amd64-xl-qemuu-win7-amd64
Message-Id: <E1lXYwN-0000mg-65@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 00:36:03 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-amd64-xl-qemuu-win7-amd64
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8a40754bca14df63c6d2ffe473b68a270dc50679
  Bug not present: dc04d25e2f3f7e26f7f97b860992076b5f04afdb
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161212/


  (Revision log too long, omitted.)


*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  1b507e55f8199eaad99744613823f6929e4d57c6
  Bug not present: 4083904bc9fe5da580f7ca397b1e828fbc322732
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161218/


  commit 1b507e55f8199eaad99744613823f6929e4d57c6
  Merge: 4083904bc9 8d17adf34f
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   Thu Mar 18 19:00:49 2021 +0000
  
      Merge remote-tracking branch 'remotes/berrange-gitlab/tags/dep-many-pull-request' into staging
      
      Remove many old deprecated features
      
      The following features have been deprecated for well over the 2
      release cycle we promise
      
        ``-drive file=json:{...{'driver':'file'}}`` (since 3.0)
        ``-vnc acl`` (since 4.0.0)
        ``-mon ...,control=readline,pretty=on|off`` (since 4.1)
        ``migrate_set_downtime`` and ``migrate_set_speed`` (since 2.8.0)
        ``query-named-block-nodes`` result ``encryption_key_missing`` (since 2.10.0)
        ``query-block`` result ``inserted.encryption_key_missing`` (since 2.10.0)
        ``migrate-set-cache-size`` and ``query-migrate-cache-size`` (since 2.11.0)
        ``query-named-block-nodes`` and ``query-block`` result dirty-bitmaps[i].status (since 4.0)
        ``query-cpus`` (since 2.12.0)
        ``query-cpus-fast`` ``arch`` output member (since 3.0.0)
        ``query-events`` (since 4.0)
        chardev client socket with ``wait`` option (since 4.0)
        ``acl_show``, ``acl_reset``, ``acl_policy``, ``acl_add``, ``acl_remove`` (since 4.0.0)
        ``ide-drive`` (since 4.2)
        ``scsi-disk`` (since 4.2)
      
      # gpg: Signature made Thu 18 Mar 2021 09:23:39 GMT
      # gpg:                using RSA key DAF3A6FDB26B62912D0E8E3FBE86EBB415104FDF
      # gpg: Good signature from "Daniel P. Berrange <dan@berrange.com>" [full]
      # gpg:                 aka "Daniel P. Berrange <berrange@redhat.com>" [full]
      # Primary key fingerprint: DAF3 A6FD B26B 6291 2D0E  8E3F BE86 EBB4 1510 4FDF
      
      * remotes/berrange-gitlab/tags/dep-many-pull-request:
        block: remove support for using "file" driver with block/char devices
        block: remove 'dirty-bitmaps' field from 'BlockInfo' struct
        block: remove dirty bitmaps 'status' field
        block: remove 'encryption_key_missing' flag from QAPI
        hw/scsi: remove 'scsi-disk' device
        hw/ide: remove 'ide-drive' device
        chardev: reject use of 'wait' flag for socket client chardevs
        machine: remove 'arch' field from 'query-cpus-fast' QMP command
        machine: remove 'query-cpus' QMP command
        migrate: remove QMP/HMP commands for speed, downtime and cache size
        monitor: remove 'query-events' QMP command
        monitor: raise error when 'pretty' option is used with HMP
        ui, monitor: remove deprecated VNC ACL option and HMP commands
      
      Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
  
  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit e67d8e2928200e24ecb47c7be3ea8270077f2996
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 19:22:36 2021 +0000
  
      block: remove 'dirty-bitmaps' field from 'BlockInfo' struct
      
      The same data is available in the 'BlockDeviceInfo' struct.
      
      Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 81cbfd5088690c53541ffd0d74851c8ab055a829
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 19:19:54 2021 +0000
  
      block: remove dirty bitmaps 'status' field
      
      The same information is available via the 'recording' and 'busy' fields.
      
      Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit ad1324e044240ae9fcf67e4c215481b7a35591b9
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 18:53:17 2021 +0000
  
      block: remove 'encryption_key_missing' flag from QAPI
      
      This has been hardcoded to "false" since 2.10.0, since secrets required
      to unlock block devices are now always provided up front instead of using
      interactive prompts.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 879be3af49132d232602e0ca783ec9b4112530fa
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:40:56 2021 +0000
  
      hw/scsi: remove 'scsi-disk' device
      
      The 'scsi-hd' and 'scsi-cd' devices provide suitable alternatives.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit b50101833987b47e0740f1621de48637c468c3d1
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:40:56 2021 +0000
  
      hw/ide: remove 'ide-drive' device
      
      The 'ide-hd' and 'ide-cd' devices provide suitable alternatives.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 24e13a4dc1eb1630eceffc7ab334145d902e763d
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:47:17 2021 +0000
  
      chardev: reject use of 'wait' flag for socket client chardevs
      
      This only makes sense conceptually when used with listener chardevs.
      
      Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 445a5b4087567bf4d4ce76d394adf78d9d5c88a5
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:29:31 2021 +0000
  
      machine: remove 'arch' field from 'query-cpus-fast' QMP command
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 18:40:12 2021 +0000
  
      migrate: remove QMP/HMP commands for speed, downtime and cache size
      
      The generic 'migrate_set_parameters' command handle all types of param.
      
      Only the QMP commands were documented in the deprecations page, but the
      rationale for deprecating applies equally to HMP, and the replacements
      exist. Furthermore the HMP commands are just shims to the QMP commands,
      so removing the latter breaks the former unless they get re-implemented.
      
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 8becb36063fb14df1e3ae4916215667e2cb65fa2
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:35:15 2021 +0000
  
      monitor: remove 'query-events' QMP command
      
      The code comment suggests removing QAPIEvent_(str|lookup) symbols too,
      however, these are both auto-generated as standard for any enum in
      QAPI. As such it they'll exist whether we use them or not.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 283d845c9164f57f5dba020a4783bb290493802f
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 17:56:13 2021 +0000
  
      monitor: raise error when 'pretty' option is used with HMP
      
      This is only semantically useful for QMP.
      
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 5994dcb8d8525ac044a31913c6bceeee788ec700
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 17:47:31 2021 +0000
  
      ui, monitor: remove deprecated VNC ACL option and HMP commands
      
      The VNC ACL concept has been replaced by the pluggable "authz" framework
      which does not use monitor commands.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-win7-amd64.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-win7-amd64.guest-saverestore --summary-out=tmp/161218.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-xl-qemuu-win7-amd64 guest-saverestore
Searching for failure / basis pass:
 161191 fail [host=godello1] / 160125 ok.
Failure / basis pass flights: 161191 / 160125
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3c13938079886e0e49031ab29a4f1ed7a4ceab68 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b12498fc575f2ad30f09fe78badc7fef526e2d76 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#030ba3097a6e7d08b99f8a9d19a322f61409c1f6-3c13938079886e0e49031ab29a4f1ed7a4ceab68 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#b12498fc575f2ad30f09fe78badc7fef526e2d76-8fe9f1f891eff4e37f82622b7480ee748bf4af74 git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#21657ad4f01a634beac570c64c0691e51b9cf366-264aa183ad85b2779b27d1312724a291259ccc9f
Loaded 35057 nodes in revision graph
Searching for test results:
 160125 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b12498fc575f2ad30f09fe78badc7fef526e2d76 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail irrelevant
 160748 fail irrelevant
 160779 fail irrelevant
 160801 fail irrelevant
 160827 fail irrelevant
 160851 fail irrelevant
 160883 fail irrelevant
 160916 fail irrelevant
 160980 fail irrelevant
 161050 fail irrelevant
 161088 fail irrelevant
 161121 fail irrelevant
 161147 fail irrelevant
 161184 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b12498fc575f2ad30f09fe78badc7fef526e2d76 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161186 fail irrelevant
 161188 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161189 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 17422da082ffcecb38bd1f2e2de6d56a61e8cd9c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161171 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2ad22420a710dc07e3b644f91a5b55c09c39ecf3 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161190 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 dc04d25e2f3f7e26f7f97b860992076b5f04afdb b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161193 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2ad22420a710dc07e3b644f91a5b55c09c39ecf3 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161195 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0f418a207696b37f05d38f978c8873ee0a4f9815 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161197 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161199 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161200 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 87a80dc4f2f5e51894db143685a5e39c8ce6f651 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161202 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161205 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1b507e55f8199eaad99744613823f6929e4d57c6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161207 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 dc04d25e2f3f7e26f7f97b860992076b5f04afdb b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161191 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3c13938079886e0e49031ab29a4f1ed7a4ceab68 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161208 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161211 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 dc04d25e2f3f7e26f7f97b860992076b5f04afdb b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161212 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161213 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161215 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1b507e55f8199eaad99744613823f6929e4d57c6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161217 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161218 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1b507e55f8199eaad99744613823f6929e4d57c6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
Searching for interesting versions
 Result found: flight 160125 (pass), for basis pass
 Result found: flight 161171 (fail), for basis failure (at ancestor ~10)
 Repro found: flight 161184 (pass), for basis pass
 Repro found: flight 161191 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
No revisions left to test, checking graph state.
 Result found: flight 161190 (pass), for last pass
 Result found: flight 161199 (fail), for first failure
 Repro found: flight 161207 (pass), for last pass
 Repro found: flight 161208 (fail), for first failure
 Repro found: flight 161211 (pass), for last pass
 Repro found: flight 161212 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8a40754bca14df63c6d2ffe473b68a270dc50679
  Bug not present: dc04d25e2f3f7e26f7f97b860992076b5f04afdb
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161212/


  (Revision log too long, omitted.)

 Result found: flight 161202 (pass), for last pass
 Result found: flight 161205 (fail), for first failure
 Repro found: flight 161213 (pass), for last pass
 Repro found: flight 161215 (fail), for first failure
 Repro found: flight 161217 (pass), for last pass
 Repro found: flight 161218 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  1b507e55f8199eaad99744613823f6929e4d57c6
  Bug not present: 4083904bc9fe5da580f7ca397b1e828fbc322732
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161218/


  commit 1b507e55f8199eaad99744613823f6929e4d57c6
  Merge: 4083904bc9 8d17adf34f
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   Thu Mar 18 19:00:49 2021 +0000
  
      Merge remote-tracking branch 'remotes/berrange-gitlab/tags/dep-many-pull-request' into staging
      
      Remove many old deprecated features
      
      The following features have been deprecated for well over the 2
      release cycle we promise
      
        ``-drive file=json:{...{'driver':'file'}}`` (since 3.0)
        ``-vnc acl`` (since 4.0.0)
        ``-mon ...,control=readline,pretty=on|off`` (since 4.1)
        ``migrate_set_downtime`` and ``migrate_set_speed`` (since 2.8.0)
        ``query-named-block-nodes`` result ``encryption_key_missing`` (since 2.10.0)
        ``query-block`` result ``inserted.encryption_key_missing`` (since 2.10.0)
        ``migrate-set-cache-size`` and ``query-migrate-cache-size`` (since 2.11.0)
        ``query-named-block-nodes`` and ``query-block`` result dirty-bitmaps[i].status (since 4.0)
        ``query-cpus`` (since 2.12.0)
        ``query-cpus-fast`` ``arch`` output member (since 3.0.0)
        ``query-events`` (since 4.0)
        chardev client socket with ``wait`` option (since 4.0)
        ``acl_show``, ``acl_reset``, ``acl_policy``, ``acl_add``, ``acl_remove`` (since 4.0.0)
        ``ide-drive`` (since 4.2)
        ``scsi-disk`` (since 4.2)
      
      # gpg: Signature made Thu 18 Mar 2021 09:23:39 GMT
      # gpg:                using RSA key DAF3A6FDB26B62912D0E8E3FBE86EBB415104FDF
      # gpg: Good signature from "Daniel P. Berrange <dan@berrange.com>" [full]
      # gpg:                 aka "Daniel P. Berrange <berrange@redhat.com>" [full]
      # Primary key fingerprint: DAF3 A6FD B26B 6291 2D0E  8E3F BE86 EBB4 1510 4FDF
      
      * remotes/berrange-gitlab/tags/dep-many-pull-request:
        block: remove support for using "file" driver with block/char devices
        block: remove 'dirty-bitmaps' field from 'BlockInfo' struct
        block: remove dirty bitmaps 'status' field
        block: remove 'encryption_key_missing' flag from QAPI
        hw/scsi: remove 'scsi-disk' device
        hw/ide: remove 'ide-drive' device
        chardev: reject use of 'wait' flag for socket client chardevs
        machine: remove 'arch' field from 'query-cpus-fast' QMP command
        machine: remove 'query-cpus' QMP command
        migrate: remove QMP/HMP commands for speed, downtime and cache size
        monitor: remove 'query-events' QMP command
        monitor: raise error when 'pretty' option is used with HMP
        ui, monitor: remove deprecated VNC ACL option and HMP commands
      
      Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
  
  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit e67d8e2928200e24ecb47c7be3ea8270077f2996
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 19:22:36 2021 +0000
  
      block: remove 'dirty-bitmaps' field from 'BlockInfo' struct
      
      The same data is available in the 'BlockDeviceInfo' struct.
      
      Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 81cbfd5088690c53541ffd0d74851c8ab055a829
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 19:19:54 2021 +0000
  
      block: remove dirty bitmaps 'status' field
      
      The same information is available via the 'recording' and 'busy' fields.
      
      Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit ad1324e044240ae9fcf67e4c215481b7a35591b9
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 18:53:17 2021 +0000
  
      block: remove 'encryption_key_missing' flag from QAPI
      
      This has been hardcoded to "false" since 2.10.0, since secrets required
      to unlock block devices are now always provided up front instead of using
      interactive prompts.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 879be3af49132d232602e0ca783ec9b4112530fa
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:40:56 2021 +0000
  
      hw/scsi: remove 'scsi-disk' device
      
      The 'scsi-hd' and 'scsi-cd' devices provide suitable alternatives.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit b50101833987b47e0740f1621de48637c468c3d1
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:40:56 2021 +0000
  
      hw/ide: remove 'ide-drive' device
      
      The 'ide-hd' and 'ide-cd' devices provide suitable alternatives.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 24e13a4dc1eb1630eceffc7ab334145d902e763d
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:47:17 2021 +0000
  
      chardev: reject use of 'wait' flag for socket client chardevs
      
      This only makes sense conceptually when used with listener chardevs.
      
      Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 445a5b4087567bf4d4ce76d394adf78d9d5c88a5
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:29:31 2021 +0000
  
      machine: remove 'arch' field from 'query-cpus-fast' QMP command
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 18:40:12 2021 +0000
  
      migrate: remove QMP/HMP commands for speed, downtime and cache size
      
      The generic 'migrate_set_parameters' command handle all types of param.
      
      Only the QMP commands were documented in the deprecations page, but the
      rationale for deprecating applies equally to HMP, and the replacements
      exist. Furthermore the HMP commands are just shims to the QMP commands,
      so removing the latter breaks the former unless they get re-implemented.
      
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 8becb36063fb14df1e3ae4916215667e2cb65fa2
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:35:15 2021 +0000
  
      monitor: remove 'query-events' QMP command
      
      The code comment suggests removing QAPIEvent_(str|lookup) symbols too,
      however, these are both auto-generated as standard for any enum in
      QAPI. As such it they'll exist whether we use them or not.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 283d845c9164f57f5dba020a4783bb290493802f
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 17:56:13 2021 +0000
  
      monitor: raise error when 'pretty' option is used with HMP
      
      This is only semantically useful for QMP.
      
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 5994dcb8d8525ac044a31913c6bceeee788ec700
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 17:47:31 2021 +0000
  
      ui, monitor: remove deprecated VNC ACL option and HMP commands
      
      The VNC ACL concept has been replaced by the pluggable "authz" framework
      which does not use monitor commands.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

pnmtopng: 219 colors found
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-win7-amd64.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
161218: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail baseline untested


jobs:
 test-amd64-amd64-xl-qemuu-win7-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 Sat Apr 17 01:31:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 01:31:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111982.214115 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXZny-0001on-E6; Sat, 17 Apr 2021 01:31:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111982.214115; Sat, 17 Apr 2021 01: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 1lXZny-0001of-7P; Sat, 17 Apr 2021 01:31:26 +0000
Received: by outflank-mailman (input) for mailman id 111982;
 Sat, 17 Apr 2021 01:31: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 1lXZnw-0001oX-Ln; Sat, 17 Apr 2021 01:31: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 1lXZnw-0008VG-CZ; Sat, 17 Apr 2021 01:31: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 1lXZnv-00046j-UU; Sat, 17 Apr 2021 01:31:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXZnv-0003th-U3; Sat, 17 Apr 2021 01:31:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=LAxd/F+itArmf6tunIh7qyqwE+WJzuV1m7/vlh3UOyk=; b=4JHD5M7Bj2AlJkkePSXJvDoPIU
	UZRDMwWLA4a2lQGpxXCaICIg4LZYOSFanRei3TNHVzVRHaVps4jez/vNHcS3zkEKrni95WziHoKY/
	DtiOqbi++7fWSs+ifnNHc5j4ncgWmMvKn1Rb+QaxkCKDSQvqMDUOt4N9LBX5rfkl3khI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161198-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161198: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-arm64-arm64-xl-credit1:xen-boot:fail:heisenbug
    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-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-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-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-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-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b53173e7cdafb7a318a239d557478fd73734a86a
X-Osstest-Versions-That:
    xen=3e9460ec93341fa6a80ecf99832aa5d9975339c9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 01:31:23 +0000

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

Failures :-/ but no regressions.

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

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

version targeted for testing:
 xen                  b53173e7cdafb7a318a239d557478fd73734a86a
baseline version:
 xen                  3e9460ec93341fa6a80ecf99832aa5d9975339c9

Last test of basis   161180  2021-04-15 18:37:52 Z    1 days
Testing same since   161198  2021-04-16 08:37:56 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Frédéric Pierret <frederic.pierret@qubes-os.org>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Luca Fancellu <luca.fancellu@arm.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 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                                  fail    
 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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   3e9460ec93..b53173e7cd  b53173e7cdafb7a318a239d557478fd73734a86a -> master


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 02:50:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 02:50:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.111996.214158 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXb2G-0001El-Hm; Sat, 17 Apr 2021 02:50:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 111996.214158; Sat, 17 Apr 2021 02:50:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXb2G-0001Ee-Cn; Sat, 17 Apr 2021 02:50:16 +0000
Received: by outflank-mailman (input) for mailman id 111996;
 Sat, 17 Apr 2021 02:50: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 1lXb2F-0001EW-Mg; Sat, 17 Apr 2021 02:50: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 1lXb2F-0001lV-Bp; Sat, 17 Apr 2021 02:50: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 1lXb2F-0008S0-2H; Sat, 17 Apr 2021 02:50:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXb2F-0002DY-1h; Sat, 17 Apr 2021 02:50: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=UmwTEuEjzhnZ1HqIQ+LmPqaPDUAoErXFVVxcy5qlrDs=; b=FIvapj6MaBEcLTOQLiFmcTCG76
	NrPbR7tZpvBlVPDyWrzX4XFyRRq93PBjiAtR1tTeQ6iYoEiL/CQRQV6lVmAmnZTHfRWiXB6kG7Zj+
	ovx+T4Vaj7V/FCiRfdtYY12tgIceBUyM/YWS5kVM0+2CBu9vE7KSv2rb12brCh7btfIE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161201-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 161201: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-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-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-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-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-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-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=ab3bed80f9d34641966eaa329fc7b296a21dab07
X-Osstest-Versions-That:
    linux=8f55ad4daf001b6ee8ddf672e14475a35403b258
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 02:50:15 +0000

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

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 161125
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161125
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161125
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161125
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161125
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161125
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161125
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 161125
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161125
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161125
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161125
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161125
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      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-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                ab3bed80f9d34641966eaa329fc7b296a21dab07
baseline version:
 linux                8f55ad4daf001b6ee8ddf672e14475a35403b258

Last test of basis   161125  2021-04-14 07:10:15 Z    2 days
Testing same since   161201  2021-04-16 10:12:43 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andreas Gruenbacher <agruenba@redhat.com>
  Arnaldo Carvalho de Melo <acme@redhat.com>
  Arnd Bergmann <arnd@arndb.de>
  Bob Peterson <rpeterso@redhat.com>
  Chris Wilson <chris@chris-wilson.co.uk>
  Dmitry Osipenko <digetx@gmail.com>
  Florian Fainelli <f.fainelli@gmail.com>
  Florian Westphal <fw@strlen.de>
  Georgi Djakov <georgi.djakov@linaro.org>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Hulk Robot <hulkrobot@huawei.com>
  Jason Self <jason@bluehome.net>
  Jens Axboe <axboe@kernel.dk>
  Jia-Ju Bai <baijiaju1990@gmail.com>
  Jiri Olsa <jolsa@kernel.org>
  Jiri Olsa <jolsa@redhat.com>
  Jon Hunter <jonathanh@nvidia.com>
  Juergen Gross <jgross@suse.com>
  Marc Zyngier <maz@kernel.org>
  Matthew Wilcox (Oracle) <willy@infradead.org>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Palmer Dabbelt <palmerdabbelt@google.com>
  Pavel Begunkov <asml.silence@gmail.com>
  Philipp Zabel <p.zabel@pengutronix.de>
  Saravana Kannan <saravanak@google.com>
  Sasha Levin <sashal@kernel.org>
  Shuah Khan <skhan@linuxfoundation.org>
  Suzuki K Poulose <suzuki.poulose@arm.com>
  Thierry Reding <treding@nvidia.com>
  Yufen Yu <yuyufen@huawei.com>
  Zihao Yu <yuzihao@ict.ac.cn>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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
   8f55ad4daf00..ab3bed80f9d3  ab3bed80f9d34641966eaa329fc7b296a21dab07 -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 06:00:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 06:00:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112013.214173 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXe0A-0002L8-H0; Sat, 17 Apr 2021 06:00:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112013.214173; Sat, 17 Apr 2021 06: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 1lXe0A-0002L1-DM; Sat, 17 Apr 2021 06:00:18 +0000
Received: by outflank-mailman (input) for mailman id 112013;
 Sat, 17 Apr 2021 06:00:17 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXe09-0002Kt-EG; Sat, 17 Apr 2021 06:00:17 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXe07-0005LM-Ir; Sat, 17 Apr 2021 06:00: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 1lXe07-00080C-8s; Sat, 17 Apr 2021 06:00:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXe07-0001Ax-8A; Sat, 17 Apr 2021 06:00: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=6CeurQ0ZM+s6pN2OnvI8Oe1p8Rql8wX+TuWCXvekrXU=; b=4ZjAvDeHclIdoFGzJa2lfvDWw0
	D7K1ZjENhZl9SY8xBdmaFrCFfZcB06EabZ93V/DyQJ5+FzdzrIKAfuUMQay76P+zV/2HAZsUuHbu5
	8D9W7AGoJuIkD5YqlL+nIE/cdr+Cc3BkeZAyLZy+iy1DcRLLTioxDV+Pre+vPx7pep2s=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161203-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161203: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=7e25f40eab52c57ff6772d27d2aef3640a3237d7
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 06:00:15 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                7e25f40eab52c57ff6772d27d2aef3640a3237d7
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  259 days
Failing since        152366  2020-08-01 20:49:34 Z  258 days  435 attempts
Testing same since   161185  2021-04-15 23:10:59 Z    1 days    2 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1326207 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 06:58:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 06:58:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112023.214194 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXeu2-0007AQ-Tg; Sat, 17 Apr 2021 06:58:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112023.214194; Sat, 17 Apr 2021 06:58:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXeu2-0007AJ-QS; Sat, 17 Apr 2021 06:58:02 +0000
Received: by outflank-mailman (input) for mailman id 112023;
 Sat, 17 Apr 2021 06:58: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 1lXeu1-0007AB-LT; Sat, 17 Apr 2021 06:58: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 1lXeu1-0006F0-EE; Sat, 17 Apr 2021 06:58: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 1lXeu1-0001WK-64; Sat, 17 Apr 2021 06:58:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXeu1-0001Ha-5Y; Sat, 17 Apr 2021 06:58: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=EFaZDaHr4hJDOKPQ3kN/zsWXF6bbZknVtVbaCHvA1TA=; b=OoEeUkBsuxxo/egjuhBMpt/e7b
	Z9dBv8lkyQpKpk/fE12nnCobk7tvzQHnOzMEtlJ/tN9wxElYSVIM15cewO/7xP6HfxeHol+B0Giv4
	4mzA3e+ZqOF7niwq9zeKkYuWIpMjt5jDfjJ8wOdzwkv968CnEIrPlW2/22VVMokQZTtA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161204-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161204: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=99e7e48cc7117c37fc1c08a741872d0875595796
X-Osstest-Versions-That:
    ovmf=96479947bcd7b425e4f2196b06701fd8ec3da595
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 06:58:01 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 99e7e48cc7117c37fc1c08a741872d0875595796
baseline version:
 ovmf                 96479947bcd7b425e4f2196b06701fd8ec3da595

Last test of basis   161187  2021-04-16 00:11:21 Z    1 days
Testing same since   161204  2021-04-16 12:04:01 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abner Chang <abner.chang@hpe.com>
  Jiewen Yao <Jiewen.yao@intel.com>
  Laszlo Ersek <lersek@redhat.com>
  Wenyi Xie <xiewenyi2@huawei.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
   96479947bc..99e7e48cc7  99e7e48cc7117c37fc1c08a741872d0875595796 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 10:33:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 10:33:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112062.214226 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXiGD-0002RD-Oy; Sat, 17 Apr 2021 10:33:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112062.214226; Sat, 17 Apr 2021 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 1lXiGD-0002R6-Lq; Sat, 17 Apr 2021 10:33:09 +0000
Received: by outflank-mailman (input) for mailman id 112062;
 Sat, 17 Apr 2021 10:33: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 1lXiGC-0002Qy-Pj; Sat, 17 Apr 2021 10:33: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 1lXiGC-0001t4-Ds; Sat, 17 Apr 2021 10:33: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 1lXiGC-00043W-65; Sat, 17 Apr 2021 10:33:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXiGC-0006sP-5X; Sat, 17 Apr 2021 10:33: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=8Lhq8zfKutVFMgO/4yYAwTELd6J4Y77+581rHNHjtmQ=; b=l5G2VWaMExcAeQzvPTigiwmdD9
	QTQ1Nv/jTAqKR0ljZHmP1ZJjIxcIAejuSRc7kTlTHKfEGor9btsUSpG7nlJMebLKB74tUx3BRPfvw
	zc6KvLOw6l+13qhw8fxbgcu/TSZXu224rbMlNY5am0T/c1JsgA9yTpxmaAF+2uqOc1sc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161219-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161219: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=8893fd89044e99e1894f8856d72893ea598d32d8
X-Osstest-Versions-That:
    xtf=90320d569b830666afc369992a507a61f0668534
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 10:33:08 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  8893fd89044e99e1894f8856d72893ea598d32d8
baseline version:
 xtf                  90320d569b830666afc369992a507a61f0668534

Last test of basis   161177  2021-04-15 17:41:37 Z    1 days
Testing same since   161219  2021-04-16 23:10:06 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
   90320d5..8893fd8  8893fd89044e99e1894f8856d72893ea598d32d8 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 11:02:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 11:02:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112075.214242 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXiio-0005OO-BE; Sat, 17 Apr 2021 11:02:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112075.214242; Sat, 17 Apr 2021 11:02:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXiio-0005OH-87; Sat, 17 Apr 2021 11:02:42 +0000
Received: by outflank-mailman (input) for mailman id 112075;
 Sat, 17 Apr 2021 11:02: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 1lXiin-0005O9-75; Sat, 17 Apr 2021 11:02: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 1lXiim-0002NF-Vz; Sat, 17 Apr 2021 11:02: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 1lXiim-00054i-MP; Sat, 17 Apr 2021 11:02:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXiim-0008VF-Lv; Sat, 17 Apr 2021 11: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=slT3jMG9Ht+a/J9qm61Z2MfjzXqzWRFcIzahXSNOpJo=; b=Piro+hbqiNqPLSShWAJKiFWggw
	WoSmDALZfO2huLnCnV3C+Uix39EX2UXwfS/YnDC4mipgpMVEzNstXwpjH5TDt1g1Kl+A2x1M80v62
	CR7VsNjNv54oA1viBl+oR4oBUj/1sDf7cv7a75wdUAYTLkP2FiBlI0aT4lvFkIeky+yI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161223-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161223: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=ac87f612ba8e4eb44f8dad34503f8673dc846db3
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 11:02:40 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              ac87f612ba8e4eb44f8dad34503f8673dc846db3
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  281 days
Failing since        151818  2020-07-11 04:18:52 Z  280 days  273 attempts
Testing same since   161223  2021-04-17 04:21:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 13:03:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 13:03:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112112.214270 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXkbT-0008CT-Iy; Sat, 17 Apr 2021 13:03:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112112.214270; Sat, 17 Apr 2021 13:03: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 1lXkbT-0008CM-Da; Sat, 17 Apr 2021 13:03:15 +0000
Received: by outflank-mailman (input) for mailman id 112112;
 Sat, 17 Apr 2021 13:03: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 1lXkbS-0008CE-RX; Sat, 17 Apr 2021 13:03: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 1lXkbS-0004HX-LP; Sat, 17 Apr 2021 13:03: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 1lXkbS-0005hd-Ae; Sat, 17 Apr 2021 13:03:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXkbS-0005kO-A9; Sat, 17 Apr 2021 13:03: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=oq9d0XHkBAqpxpPu6tQodEhsRnDYaQ95zorUOsZwoyA=; b=Hq4BVqhFq27plVHZWEkHOIUXbf
	AOLOz1Avx2akh7hUvt++dmjNXXCyU4VAG4m2qpqh1o5P4RUikzaNbnqF+YFz92Io6H4nRbCqZC9L7
	p+/QaoaU84gr5jfVdwW1bfNjceOcXYNe4BQxjHbvnzSubxSuxaFsFokqPdi+/8cnuP+8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161210-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161210: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt-raw:xen-boot:fail:heisenbug
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=8fe9f1f891eff4e37f82622b7480ee748bf4af74
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 13:03:14 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631

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

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 161191 like 152631
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 161191 never pass
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  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-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-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-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                8fe9f1f891eff4e37f82622b7480ee748bf4af74
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  240 days
Failing since        152659  2020-08-21 14:07:39 Z  238 days  443 attempts
Testing same since   161147  2021-04-14 22:08:02 Z    2 days    4 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142656 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 16:39:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 16:39:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112188.214301 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXnyk-0002nI-54; Sat, 17 Apr 2021 16:39:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112188.214301; Sat, 17 Apr 2021 16:39:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXnyk-0002nB-21; Sat, 17 Apr 2021 16:39:30 +0000
Received: by outflank-mailman (input) for mailman id 112188;
 Sat, 17 Apr 2021 16:39:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TfWQ=JO=amd.com=thomas.lendacky@srs-us1.protection.inumbo.net>)
 id 1lXnyi-0002n4-Ao
 for xen-devel@lists.xenproject.org; Sat, 17 Apr 2021 16:39:28 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (unknown
 [40.107.237.50]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d628ac31-0e2d-4522-a5ed-4aa909096ad9;
 Sat, 17 Apr 2021 16:39:27 +0000 (UTC)
Received: from DM5PR12MB1355.namprd12.prod.outlook.com (2603:10b6:3:6e::7) by
 DM6PR12MB3689.namprd12.prod.outlook.com (2603:10b6:5:1c7::32) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16; Sat, 17 Apr 2021 16:39:25 +0000
Received: from DM5PR12MB1355.namprd12.prod.outlook.com
 ([fe80::b914:4704:ad6f:aba9]) by DM5PR12MB1355.namprd12.prod.outlook.com
 ([fe80::b914:4704:ad6f:aba9%12]) with mapi id 15.20.4042.023; Sat, 17 Apr
 2021 16:39:25 +0000
Received: from office-linux.texastahm.com (67.79.209.213) by
 SA9PR13CA0116.namprd13.prod.outlook.com (2603:10b6:806:24::31) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.7 via Frontend Transport; Sat, 17 Apr 2021 16: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: d628ac31-0e2d-4522-a5ed-4aa909096ad9
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=khxElySUEluQqP2D7CPByFXt4UOhs898e51DK38tqSTM/Pcuj9yMKBQBhsHHzy0OfmX/3mecebOq5UYrH4ZZ9qXyD7YofDPBd9wPMSEEtuQNjGx4KWHZh9qJ6iAruJBWV57fGiLFi2Y+d+/CZnMAmuRxZhLiumud1zrgKsFSo8qj7mMhcekRAC5B3iVoP9YS9M0ruF3Ky+HN23kor1vANioQ8UiaaL+9LpEYoZRtWLpJCdRKlUdJ7jkZuVcWFQz1+Mp2ieAZpzoP35TvTBlvzHWWplNVVYjiqJLNLQ3i2DR4ZW6etyAPXBOH61MvwtiYfMXFtRVNIQYeiosGI3McYA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GcdyVj41BYl03/aaPnzYLcCOx8MhOm28yR14v2uQR+w=;
 b=lrUHkoSYrhCM3NmHBP9O8JHXMyQHi4GsaC0wrMWL5dNlqvXOWwArLXIHpckispr2w51KIUdgS7budnpn05wqmIizZT59jN4DHq9GH6WInwegJ5oETU6jNe/Zk/nbkDzpY1Gwor+pVdk53nXScaPcBgl/efXEEembIYVE1LMhyaFq6nwf5LnosJ+Ti0uQSTSQV3/QhDM/kTRR4Ev2V3KtE9SqUMvaUNnApvxNWpCMDNxmxySgLmBY7DmND9yYmLKMkprta2vqSZbXVk7RsGROKpT0ZI7pPjL5kgnaqoyRGdg4QmKpHt6vo6zeDw2a5VGxeVCOY6EVCQjCOhSzaR16Xg==
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=GcdyVj41BYl03/aaPnzYLcCOx8MhOm28yR14v2uQR+w=;
 b=badXPY9phegisUEBClssjYYohEaZz4yLl1n8SpbPn1ZJec+eFrD5I3qkf83iD7VZgeeUcmrlzvhPEfu2OyBtCbxiUrHl8kuqVhoi8zY80kLhc0rQoFrQXWRTb2TRmVehW2KRzlljC7R6BaoRAfjqeifKu4NfeRaCm9EZ5GpeN10=
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=amd.com;
To: hch@lst.de
Cc: dongli.zhang@oracle.com, iommu@lists.linux-foundation.org,
 konrad.wilk@oracle.com, linuxppc-dev@lists.ozlabs.org, mpe@ellerman.id.au,
 tientzu@chromium.org, xen-devel@lists.xenproject.org
References: <20210318161424.489045-1-hch@lst.de>
Subject: Re: swiotlb cleanups v3
From: Tom Lendacky <thomas.lendacky@amd.com>
Message-ID: <0349082c-59c5-20d7-f324-279981c3f6ea@amd.com>
Date: Sat, 17 Apr 2021 11:39:22 -0500
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.1
In-Reply-To: <20210318161424.489045-1-hch@lst.de>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [67.79.209.213]
X-ClientProxiedBy: SA9PR13CA0116.namprd13.prod.outlook.com
 (2603:10b6:806:24::31) To DM5PR12MB1355.namprd12.prod.outlook.com
 (2603:10b6:3:6e::7)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 92959cdb-4aa4-4f89-cbe2-08d901bf5c3b
X-MS-TrafficTypeDiagnostic: DM6PR12MB3689:
X-Microsoft-Antispam-PRVS:
	<DM6PR12MB36895F1CD908FB2E40C5D8B4EC4B9@DM6PR12MB3689.namprd12.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	huVjYoaOSJHa7Ew0HZyYelFBkCIyFN1oRgWpSLIsN3F2QYYHlMCURlZJu5IjmdujzWyAG4w64pCjaMIY8RaFA6E0+7fDXI/tmvXKAc6C9rg8f3Ip7ONBb7d4ynYZEba6DZw2Q+wwuPcRoqxeL9TTCBpo16blNIA4bWunSMUkiB2xW6dreiy6xYsu8S9zUpqZ7rhDc1FVe+PkS3JfOVoL/FyDGPr07adJW/6GckvGFKKdEzC6mDMgoN6tIqOC80JhSRLKcBIBctOxjhEehjh5G7A+lxZX/SAx86itVjBD2GFDOVqMJUf5hDfVYt1vNDYVEwCEg3HKFqh/uV0hVJHG4eG+r+InRzI76oOhfSHANiOPqBuz5RHYHtC5/BoYliQQIVjF/puKAQIqzT3QdH56BBAq2HhyDha/+/g1te+oeQApa9DeDvMGtFC4ENcSHOrV/1Jq6JMr0yrZ1JjR3SHxXjoQn0KB8F5jpeLL3gZbDf8kZSDRPE7VHqeg6DMJk6yyIfFtobDklMbWbyI8Kgrew8kzt90y7cWOphmFZz8oIfCU4IDOOxG6iCzuum48tZF0+Wqw9/VqtVmOFXSttReq7pV2JQisSnhNbgdggIhJz0fitu1srm/pZKHB0ecWA0U6EAzq87iD34lp79IPN/EP9wbuLziJhW93k0zBLKrIkwnhhruIXpgiUuJ8g0OkbRuR
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR12MB1355.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(376002)(366004)(39860400002)(136003)(31686004)(6512007)(6916009)(5660300002)(31696002)(7116003)(316002)(36756003)(2906002)(86362001)(6506007)(38100700002)(478600001)(66946007)(66476007)(66556008)(2616005)(956004)(8676002)(6486002)(186003)(26005)(4326008)(16526019)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
	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
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 92959cdb-4aa4-4f89-cbe2-08d901bf5c3b
X-MS-Exchange-CrossTenant-AuthSource: DM5PR12MB1355.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2021 16:39:25.1018
 (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: IinspRQYFEhv3YVR8hU+E9fVUc8XqNu2pACwTe9i9GThqegGjDyTSh5NPY9xJTR/A309b/Mw6U5jxyxWt1TWWw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3689

> Hi Konrad,
>
> this series contains a bunch of swiotlb cleanups, mostly to reduce the
> amount of internals exposed to code outside of swiotlb.c, which should
> helper to prepare for supporting multiple different bounce buffer pools.

Somewhere between the 1st and 2nd patch, specifying a specific swiotlb
for an SEV guest is no longer honored. For example, if I start an SEV
guest with 16GB of memory and specify swiotlb=131072 I used to get a
256MB SWIOTLB. However, after the 2nd patch, the swiotlb=131072 is no
longer honored and I get a 982MB SWIOTLB (as set via sev_setup_arch() in
arch/x86/mm/mem_encrypt.c).

I can't be sure which patch caused the issue since an SEV guest fails to
boot with the 1st patch but can boot with the 2nd patch, at which point
the SWIOTLB comes in at 982MB (I haven't had a chance to debug it and so
I'm hoping you might be able to quickly spot what's going on).

Thanks,
Tom

>
> Changes since v2:
>  - fix a bisetion hazard that did not allocate the alloc_size array
>  - dropped all patches already merged
>
> Changes since v1:
>  - rebased to v5.12-rc1
>  - a few more cleanups
>  - merge and forward port the patch from Claire to move all the global
>    variables into a struct to prepare for multiple instances



From xen-devel-bounces@lists.xenproject.org Sat Apr 17 17:54:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 17:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112217.214319 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXp9Q-0001XR-U1; Sat, 17 Apr 2021 17:54:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112217.214319; Sat, 17 Apr 2021 17:54: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 1lXp9Q-0001XK-R6; Sat, 17 Apr 2021 17:54:36 +0000
Received: by outflank-mailman (input) for mailman id 112217;
 Sat, 17 Apr 2021 17:54: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 1lXp9P-0001XC-TQ; Sat, 17 Apr 2021 17:54:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lXp9P-00011G-JV; Sat, 17 Apr 2021 17:54: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 1lXp9P-0004uk-9Q; Sat, 17 Apr 2021 17:54:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXp9P-0007dO-8u; Sat, 17 Apr 2021 17:54: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=NVh59LEHrPpv+Et3qpCJSw7uuWt/jXDX5H9rb60+kUk=; b=XXXnbcHa8HWTG3+9RMsaUwecw/
	6CIKKf8dCYylBOiDOSXwOdFxlamM+N6q9uQjPfk1ELKTCL02eQ7RTNYqpKLNa4O3kIYZRcuDlKr4d
	KH/lGuhdAku5WnXboOOeCPEHin3R8T6ehk0e7z3WkwJjnTc5iTNZRfgtIm1CSmPsbRSo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161216-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161216: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 17:54:35 +0000

flight 161216 xen-4.12-testing real [real]
flight 161236 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161216/
http://logs.test-lab.xenproject.org/osstest/logs/161236/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   60 days
Failing since        160128  2021-03-18 14:36:18 Z   30 days   38 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   28 days   36 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 18:06:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 18:06:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112229.214335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXpKf-0002iK-2J; Sat, 17 Apr 2021 18:06:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112229.214335; Sat, 17 Apr 2021 18:06: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 1lXpKe-0002iD-Va; Sat, 17 Apr 2021 18:06:12 +0000
Received: by outflank-mailman (input) for mailman id 112229;
 Sat, 17 Apr 2021 18:06: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 1lXpKd-0002i5-N6; Sat, 17 Apr 2021 18:06: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 1lXpKd-0001K3-IN; Sat, 17 Apr 2021 18:06: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 1lXpKd-0005Sj-BH; Sat, 17 Apr 2021 18:06:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXpKd-0007sh-Am; Sat, 17 Apr 2021 18:06: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=6tJAM+4u0jlAKFmuNfMMMQtDRPq4Yd7yis5TrDmC5aI=; b=TcloBaRMs9OwBrSsjHBWpqvp0o
	hXctC6VvVHDtMQczqgXFDABiPv+n4xuUaw1iCY0OOaP0+B88d+/T1x+NYh6OE99ZkStKtc1R3pA5q
	iyHMyjVh7/9RLE7kX656FUscjrqz/qRR3/5ALNMe8LAtbKIv53aUglczfyAwfFOYXLno=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161229-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161229: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=2f655c0c74439805ce6dbc6fd1f2e7defdaf33e5
X-Osstest-Versions-That:
    xtf=8893fd89044e99e1894f8856d72893ea598d32d8
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 18:06:11 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  2f655c0c74439805ce6dbc6fd1f2e7defdaf33e5
baseline version:
 xtf                  8893fd89044e99e1894f8856d72893ea598d32d8

Last test of basis   161219  2021-04-16 23:10:06 Z    0 days
Testing same since   161229  2021-04-17 10:33:36 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
   8893fd8..2f655c0  2f655c0c74439805ce6dbc6fd1f2e7defdaf33e5 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 19:25:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 19:25:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112247.214355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXqYs-0001fG-TH; Sat, 17 Apr 2021 19:24:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112247.214355; Sat, 17 Apr 2021 19: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 1lXqYs-0001f9-Q9; Sat, 17 Apr 2021 19:24:58 +0000
Received: by outflank-mailman (input) for mailman id 112247;
 Sat, 17 Apr 2021 19:24:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uePU=JO=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lXqYq-0001f4-ND
 for xen-devel@lists.xenproject.org; Sat, 17 Apr 2021 19:24:56 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a744a3c5-97c7-4303-8738-523ba71ecffa;
 Sat, 17 Apr 2021 19:24:55 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lXqYi-000LTl-T2; Sat, 17 Apr 2021 19:24: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: a744a3c5-97c7-4303-8738-523ba71ecffa
Date: Sat, 17 Apr 2021 20:24:48 +0100
From: Tim Deegan <tim@xen.org>
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>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Jun Nakajima <jun.nakajima@intel.com>
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
Message-ID: <YHs2AJ6pqrAw7uew@deinos.phlegethon.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

Hi,

Apologies for not sending comments before, and thanks for the ping.

At 12:40 +0200 on 12 Apr (1618231248), Jan Beulich wrote:
> The address of this page is used by the CPU only to recognize when to
> access the virtual APIC page instead. No accesses would ever go to this
> page. It only needs to be present in the (CPU) page tables so that
> address translation will produce its address as result for respective
> accesses.
> 
> By making this page global, we also eliminate the need to refcount it,
> or to assign it to any domain in the first place.

What is the aim here?  To save 4k per domain?  It seems to come out
about even for adding and removing code. 

> --- a/xen/arch/x86/mm/shadow/set.c
> +++ b/xen/arch/x86/mm/shadow/set.c
> @@ -94,6 +94,22 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
>      ASSERT(!sh_l1e_is_magic(sl1e));
>      ASSERT(shadow_mode_refcounts(d));
>  
> +    /*
> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
> +     * get accessed, and hence there's no need to refcount it (and refcounting
> +     * would fail, due to the page having no owner).
> +     */
> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )

Would it be better to check specifically for mfn == apic_access_mfn
(and apic_access_mfn != 0, I guess)?  If we want this behaviour for
for all un-owned PGC_extra MFNs it would be good to explain that in the
comments.

Cheers,

Tim.


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 21:21:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 21:21:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112266.214374 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXsNH-0003we-9H; Sat, 17 Apr 2021 21:21:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112266.214374; Sat, 17 Apr 2021 21: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 1lXsNH-0003wX-61; Sat, 17 Apr 2021 21:21:07 +0000
Received: by outflank-mailman (input) for mailman id 112266;
 Sat, 17 Apr 2021 21:21:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TfWQ=JO=amd.com=thomas.lendacky@srs-us1.protection.inumbo.net>)
 id 1lXsNG-0003wS-3J
 for xen-devel@lists.xenproject.org; Sat, 17 Apr 2021 21:21:06 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com (unknown
 [40.107.94.48]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3a04c822-dd61-4087-b45e-44f305fcc4e6;
 Sat, 17 Apr 2021 21:21:03 +0000 (UTC)
Received: from DM5PR12MB1355.namprd12.prod.outlook.com (2603:10b6:3:6e::7) by
 DM5PR12MB1771.namprd12.prod.outlook.com (2603:10b6:3:110::22) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4020.18; Sat, 17 Apr 2021 21:21:00 +0000
Received: from DM5PR12MB1355.namprd12.prod.outlook.com
 ([fe80::b914:4704:ad6f:aba9]) by DM5PR12MB1355.namprd12.prod.outlook.com
 ([fe80::b914:4704:ad6f:aba9%12]) with mapi id 15.20.4042.023; Sat, 17 Apr
 2021 21:20:59 +0000
Received: from office-linux.texastahm.com (67.79.209.213) by
 SN4PR0501CA0092.namprd05.prod.outlook.com (2603:10b6:803:22::30) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.8 via Frontend
 Transport; Sat, 17 Apr 2021 21:20: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: 3a04c822-dd61-4087-b45e-44f305fcc4e6
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bl+5+HRXFW/MakV5JzouCezfNzKY6yiCeu2MgA+E8mRSpm1GAwjaH9zUDtzYI0noB/BpY8KLxssLxN/1shTBCETP8uhhEMyFrkiPTYPaSup77eZ89GgCJpmZyN1SFh5cnP5mDWmkY6h741r9/oiI7r4FkK8ULIP3TzNWDqTtGz6JdgH6fz2WbIb9H1O6EFG59+VXuhtTQzfhy7xoblpkS50hpksf+YXXEZmEL0Z6dQhwtWNcmm2mfJAG5WgXimgrvdPlR8fgO4S8Ew3oRAQKQzWWRc0c47Z8NURlEp7xDzaiR/ufg4QjB16OoWgdr2352aT0SKAIghP2+8aySpO7lw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KMRCQAz62yxAxQYydZ3OIU/kAdlPzJGamQ+EZHW0nQc=;
 b=WGCf+sZRFbsLCRSwBXppYref1BB/W0w5kcjwu6jUBGl9eAS1usJtcsr5RecVaMbXfXtKr+T5jSC6wuv1ZaHDPLqY38DzZkKXj6SOc2y4G26t0LVINOOG5Su0nybf24tW2mru5w4LRw8ROsTMF66I7PNPVRAbB9fWzFHM+RT8+Q7bn+afa4Tk0w0mj8tsujLK4BDZ9eWcoukw/EdBxtQNWp9hzsSoGcgG2U7nUWBPvuQVwRfOtlQtDqJJvqpaozuuIyweLd12G0ViXD18uE5KAAo8gbAl3kzpzdaFM22fMsnodwOFnQ2vO9Bsx8ETDt4aLFHxBI+tdWIQpG8wIVmZBQ==
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=KMRCQAz62yxAxQYydZ3OIU/kAdlPzJGamQ+EZHW0nQc=;
 b=nHQ55oHrAKkxuZNApL6nacP+W1rU98a4c/ph+s0UUplS8z3vQgBFtyKk6PiYEs7goDaZqn9tSeA2LuD2cMadYJoAQy35/ETUFaxifyVl/Isv76nDft9114ai8nepfwHr1iNwKxw1hdwc9CzVO5IRDvy2PI0VaVExJtXP+R1Ioqk=
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=amd.com;
Subject: Re: swiotlb cleanups v3
From: Tom Lendacky <thomas.lendacky@amd.com>
To: hch@lst.de
Cc: dongli.zhang@oracle.com, iommu@lists.linux-foundation.org,
 konrad.wilk@oracle.com, linuxppc-dev@lists.ozlabs.org, mpe@ellerman.id.au,
 tientzu@chromium.org, xen-devel@lists.xenproject.org
References: <20210318161424.489045-1-hch@lst.de>
 <0349082c-59c5-20d7-f324-279981c3f6ea@amd.com>
Message-ID: <5a7dc9af-980f-f580-8a51-aac72c9c3c21@amd.com>
Date: Sat, 17 Apr 2021 16:20:57 -0500
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.1
In-Reply-To: <0349082c-59c5-20d7-f324-279981c3f6ea@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [67.79.209.213]
X-ClientProxiedBy: SN4PR0501CA0092.namprd05.prod.outlook.com
 (2603:10b6:803:22::30) To DM5PR12MB1355.namprd12.prod.outlook.com
 (2603:10b6:3:6e::7)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ccaa76a2-2eb4-46e6-8b85-08d901e6b230
X-MS-TrafficTypeDiagnostic: DM5PR12MB1771:
X-Microsoft-Antispam-PRVS:
	<DM5PR12MB17717D36093BA282C199D672EC4B9@DM5PR12MB1771.namprd12.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5516;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ceCX6hzwZDUxlavMtsl545irSjjUfLPyc57HobYCM8pdEQNPqmTkEoa3Rv3EjiWPLpqcZajSG6/VwT19ZLuAS77hQiKexUcMvZtN7Dtd5j8i91F4v4OmI6y+EnNlgWLd/eH/uipUBEVz5lhY6tHqV//8ao73VAruCDrZcUu04HmJbtBzAAqO412HEAz8BbV+I/ZbPT510vFE8HSvMkq/z7M0WEHAdpKOnOrkOAdI/y3waAtSYFZRGwJn0rkF6EOQ5seEjxf7/VbTjiHUl4M8fw+yHaCOrZrBK5xQ4JW74gfjLRj+B6b56ZpyFop2UXAXzhjNYJZmlwQJTVmKPWlbGJDbEiBFUS9c9DLmvbJggIH6bs6Ub6P6zLXERYZhgW1/6d8Ejxyy9bHl2i2COgvZHvlqeJD0AYnLQH+6wE4EOLgPfQ0l46MyUIvwMe4lvj5gwAFKIqv570YV9gObBvQHcQjepC+zgGYr9yVGqeFNXIMWYGL4jKvnZfJowg3mF7Q9byyHdLnO5mBupW98sZGzhtJedFAIrqiu3Fr1KdtTjObfcesMu5dJ8vRF1PR62OIeZZcn0onnt9sdR9aIcnoqz83E7zUiHHFJAPbvtLwevEjmBWZJFUiBnCt9vQv5qg74qXB2Wxg7s7HxR9zaznoy9j/415x9L7pVPcl6FaIw3h9k327wx7feiagdWo97k5dF
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR12MB1355.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(366004)(376002)(39860400002)(136003)(31696002)(6512007)(26005)(4326008)(66946007)(8936002)(7116003)(31686004)(5660300002)(186003)(6506007)(956004)(66556008)(66476007)(316002)(36756003)(6486002)(83380400001)(478600001)(6916009)(2616005)(2906002)(38100700002)(8676002)(16526019)(53546011)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
	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
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ccaa76a2-2eb4-46e6-8b85-08d901e6b230
X-MS-Exchange-CrossTenant-AuthSource: DM5PR12MB1355.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2021 21:20:59.5936
 (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: PN2AELms0UZzCOfAq94JFJbNCDLqIgYmVHKcdL1fwxk+RHClPejHRlOlK2T5p8wdKfgUxVxfvqpARm1fvjIZfg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR12MB1771

On 4/17/21 11:39 AM, Tom Lendacky wrote:
>> Hi Konrad,
>>
>> this series contains a bunch of swiotlb cleanups, mostly to reduce the
>> amount of internals exposed to code outside of swiotlb.c, which should
>> helper to prepare for supporting multiple different bounce buffer pools.
> 
> Somewhere between the 1st and 2nd patch, specifying a specific swiotlb
> for an SEV guest is no longer honored. For example, if I start an SEV
> guest with 16GB of memory and specify swiotlb=131072 I used to get a
> 256MB SWIOTLB. However, after the 2nd patch, the swiotlb=131072 is no
> longer honored and I get a 982MB SWIOTLB (as set via sev_setup_arch() in
> arch/x86/mm/mem_encrypt.c).
> 
> I can't be sure which patch caused the issue since an SEV guest fails to
> boot with the 1st patch but can boot with the 2nd patch, at which point
> the SWIOTLB comes in at 982MB (I haven't had a chance to debug it and so
> I'm hoping you might be able to quickly spot what's going on).

Ok, I figured out the 1st patch boot issue (which is gone when the
second patch is applied). Here's the issue if anyone is interested:

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index d9c097f0f78c..dbe369674afe 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -226,7 +226,7 @@ int __init swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose)
 
 	alloc_size = PAGE_ALIGN(mem->nslabs * sizeof(size_t));
 	mem->alloc_size = memblock_alloc(alloc_size, PAGE_SIZE);
-	if (mem->alloc_size)
+	if (!mem->alloc_size)
 		panic("%s: Failed to allocate %zu bytes align=0x%lx\n",
 		      __func__, alloc_size, PAGE_SIZE);
 

The 1st patch still allowed the command line specified size of 256MB
SWIOTLB. So that means the 2nd patch causes the command line specified
256MB SWIOTLB size to be ignored and results in a 982MB SWIOTLB size
for the 16GB guest.

Thanks,
Tom

> 
> Thanks,
> Tom
> 
>>
>> Changes since v2:
>>  - fix a bisetion hazard that did not allocate the alloc_size array
>>  - dropped all patches already merged
>>
>> Changes since v1:
>>  - rebased to v5.12-rc1
>>  - a few more cleanups
>>  - merge and forward port the patch from Claire to move all the global
>>    variables into a struct to prepare for multiple instances
> 


From xen-devel-bounces@lists.xenproject.org Sat Apr 17 22:37:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 17 Apr 2021 22:37:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112295.214438 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXtZ3-0002FP-Io; Sat, 17 Apr 2021 22:37:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112295.214438; Sat, 17 Apr 2021 22: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 1lXtZ3-0002FI-FH; Sat, 17 Apr 2021 22:37:21 +0000
Received: by outflank-mailman (input) for mailman id 112295;
 Sat, 17 Apr 2021 22:37: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 1lXtZ2-0002FA-S4; Sat, 17 Apr 2021 22: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 1lXtZ2-0005i6-Lz; Sat, 17 Apr 2021 22: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 1lXtZ2-0000r4-Di; Sat, 17 Apr 2021 22:37:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXtZ2-0004X2-DC; Sat, 17 Apr 2021 22:37: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=xKZ6xVv1QFIYAYYGoJUB5R2pY97ch1PmC1VF7DJSFLw=; b=Fr2WjKf4CmM/FLx/ufYenZrTrN
	HNgvqsxZrYOUOCdefvWKsKA29QTWdR2+dgjize90E5AMMEin28FxNWgKubfd7ex5uIZwFJAk6Bond
	+b/dEdY4Dt3ofBJgb/GfXJui01NmfRLaez1sCWYcrCjrRjXYMge0zxIQBhxUOkl39naM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161222-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161222: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-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-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-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-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-amd64-libvirt-vhd: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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
X-Osstest-Versions-That:
    xen=b53173e7cdafb7a318a239d557478fd73734a86a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 17 Apr 2021 22:37:20 +0000

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

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

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 161198

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

version targeted for testing:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6
baseline version:
 xen                  b53173e7cdafb7a318a239d557478fd73734a86a

Last test of basis   161198  2021-04-16 08:37:56 Z    1 days
Testing same since   161222  2021-04-17 01:38:18 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.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                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   b53173e7cd..dd22a64de7  dd22a64de7e02b48312839a15179528c8f7db5c6 -> master


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 02:15:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 02:15:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112314.214471 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lXwxR-0003LI-Db; Sun, 18 Apr 2021 02:14:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112314.214471; Sun, 18 Apr 2021 02: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 1lXwxR-0003L9-5f; Sun, 18 Apr 2021 02:14:45 +0000
Received: by outflank-mailman (input) for mailman id 112314;
 Sun, 18 Apr 2021 02:14: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 1lXwxP-0003Gp-W2; Sun, 18 Apr 2021 02:14: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 1lXwxP-00072X-QU; Sun, 18 Apr 2021 02:14: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 1lXwxP-0002wd-HD; Sun, 18 Apr 2021 02:14:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lXwxP-00032G-Gl; Sun, 18 Apr 2021 02:14: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=wR6hgaeARmJQw2Qq3XnWZWhBqLO6+cUUc5yY2LNeLjY=; b=JGVdvNyBPEDopJ87lPsPUJyG2X
	S6ZrDKJumWU7MbR7Y6/HVvyNUGHtSTiwg3CIKRDoN9f2nPO45ZWlR6j/b2Oie234DqaACaSiNPRvE
	NqxeOQrt28YlovqniSDi+6szKUfABvOYsCezR4d2oujz3GLclgYsiuoBmvTXXzNVeDb8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161224-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161224: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=9cdbf6467424045617cd6e79dcaad06bb8efa31c
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 18 Apr 2021 02:14:43 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                9cdbf6467424045617cd6e79dcaad06bb8efa31c
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  260 days
Failing since        152366  2020-08-01 20:49:34 Z  259 days  436 attempts
Testing same since   161224  2021-04-17 06:03:08 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1326522 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 08:01:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 08:01:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112361.214516 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY2MT-0001sP-Uz; Sun, 18 Apr 2021 08:00:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112361.214516; Sun, 18 Apr 2021 08:00: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 1lY2MT-0001sI-Rq; Sun, 18 Apr 2021 08:00:57 +0000
Received: by outflank-mailman (input) for mailman id 112361;
 Sun, 18 Apr 2021 08:00: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 1lY2MS-0001sA-MM; Sun, 18 Apr 2021 08:00: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 1lY2MS-0005SV-CP; Sun, 18 Apr 2021 08:00: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 1lY2MS-00057K-5Y; Sun, 18 Apr 2021 08:00:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lY2MS-0002QW-51; Sun, 18 Apr 2021 08:00: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=uhS1UNfbP7K6eTEZdFOIMwaeF8ZmIwOLZEsSrtO75/0=; b=SwXvyWxvIeWv+pd6UJYixAkVL5
	FWZv5OD3OPH3SRC165cwG4XvHVcYqZ+vbBA6g4gkTxLThldk5Oe8//VdwFppC2X/oFRTU/HabW+3q
	5ERg440euxuvyW3alma5gKi6bZzYm7Ju9bokQRTOSweFTTizbdKA2ORYXB3BaWkATfpM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161251-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161251: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=ac87f612ba8e4eb44f8dad34503f8673dc846db3
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 18 Apr 2021 08:00:56 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              ac87f612ba8e4eb44f8dad34503f8673dc846db3
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  282 days
Failing since        151818  2020-07-11 04:18:52 Z  281 days  274 attempts
Testing same since   161223  2021-04-17 04:21:08 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 09:18:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 09:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112383.214537 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY3Ys-0008KL-Rf; Sun, 18 Apr 2021 09:17:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112383.214537; Sun, 18 Apr 2021 09:17:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY3Ys-0008KE-OB; Sun, 18 Apr 2021 09:17:50 +0000
Received: by outflank-mailman (input) for mailman id 112383;
 Sun, 18 Apr 2021 09:17: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 1lY3Yr-0008K6-AR; Sun, 18 Apr 2021 09:17: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 1lY3Yr-0006hz-0e; Sun, 18 Apr 2021 09:17: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 1lY3Yq-00085z-NN; Sun, 18 Apr 2021 09:17:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lY3Yq-0004XI-Mw; Sun, 18 Apr 2021 09:17: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=IR2a5k4KTdA2TQl+REhrKLKqVkFD/iP9NP1uzGwWkmE=; b=cw+0jAoJ4AAnNzaS5/AmQ4u1ll
	I1Uv1yypt5hXGKt3QeNe28gIHGkBlewm5+ydNcHPf+Q/cMfegroNWB5Kx9FXG21rqyUt0HmmWiJLQ
	7p5+F/pskGi4exCdNagOXN/R3DJFj4hTazYG1HA8jTBprUBn9FIhU+oV1t9lxiwZY/Pg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161232-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161232: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=8fe9f1f891eff4e37f82622b7480ee748bf4af74
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 18 Apr 2021 09:17:48 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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

version targeted for testing:
 qemuu                8fe9f1f891eff4e37f82622b7480ee748bf4af74
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  241 days
Failing since        152659  2020-08-21 14:07:39 Z  239 days  444 attempts
Testing same since   161147  2021-04-14 22:08:02 Z    3 days    5 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142656 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 10:20:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 10:20:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112402.214557 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY4XX-0006Ag-MX; Sun, 18 Apr 2021 10:20:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112402.214557; Sun, 18 Apr 2021 10: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 1lY4XX-0006AZ-Jd; Sun, 18 Apr 2021 10:20:31 +0000
Received: by outflank-mailman (input) for mailman id 112402;
 Sun, 18 Apr 2021 10:20: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 1lY4XX-0006AR-3U; Sun, 18 Apr 2021 10:20: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 1lY4XW-0007lZ-Sd; Sun, 18 Apr 2021 10:20: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 1lY4XW-0003B7-KL; Sun, 18 Apr 2021 10:20:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lY4XW-000105-Jq; Sun, 18 Apr 2021 10: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=c0IH6Oi48nfwR97NxjFBBbSGfdqZppJ+0T6EQYGjATc=; b=ZRCzE5u8Os2+buCQBeAoCXKEv3
	cDum71ACqbiKE17gesfB8FpnCQF5sFftVGEQQVecDzWNftcgawTUITumqww8P/YG/3bqGlJcLcPO+
	wZXkpFZpxeyA1u3Y3GbdAp2hE37T2Yg4g/WxNAlxPf8x2XbCSBCM5YK9QC8LQalGPi98=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161257-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-coverity test] 161257: all pass - PUSHED
X-Osstest-Versions-This:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
X-Osstest-Versions-That:
    xen=264aa183ad85b2779b27d1312724a291259ccc9f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 18 Apr 2021 10:20:30 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6
baseline version:
 xen                  264aa183ad85b2779b27d1312724a291259ccc9f

Last test of basis   161129  2021-04-14 09:19:54 Z    4 days
Testing same since   161257  2021-04-18 09:19:39 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Frédéric Pierret <frederic.pierret@qubes-os.org>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Luca Fancellu <luca.fancellu@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Wei Liu <wl@xen.org>

jobs:
 coverity-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/xen.git
   264aa183ad..dd22a64de7  dd22a64de7e02b48312839a15179528c8f7db5c6 -> coverity-tested/smoke


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 11:41:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 11:41:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112429.214579 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY5nP-0004vR-Oe; Sun, 18 Apr 2021 11:40:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112429.214579; Sun, 18 Apr 2021 11: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 1lY5nP-0004vK-L7; Sun, 18 Apr 2021 11:40:59 +0000
Received: by outflank-mailman (input) for mailman id 112429;
 Sun, 18 Apr 2021 11:40: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 1lY5nO-0004vC-F8; Sun, 18 Apr 2021 11:40: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 1lY5nO-0000c9-6U; Sun, 18 Apr 2021 11:40: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 1lY5nN-0006Gn-Vd; Sun, 18 Apr 2021 11:40:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lY5nN-00076l-V6; Sun, 18 Apr 2021 11:40: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=LG1qz2r934LCJ90a9Jwa/CdC61pNlFeBNg4PTYvshl8=; b=so1yH6KvQFGwacUxtfqOMHYPMJ
	ftJy+avWBJR/2CUevL5qEb2zMwguUn5ZksxIvlFm6ChkYMwbuMsk7HQiBQAaPukKUSsFNmTAlSQv9
	sac3sTsZ9lnvrMIEgmo+UQv4PXginwU7CZ632qnqT6Aca24UbaQKuIuWBH0r/jSJo7vw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161238-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161238: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 18 Apr 2021 11:40:57 +0000

flight 161238 xen-4.12-testing real [real]
flight 161259 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161238/
http://logs.test-lab.xenproject.org/osstest/logs/161259/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   60 days
Failing since        160128  2021-03-18 14:36:18 Z   30 days   39 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   29 days   37 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 14:11:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 14:11:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112475.214606 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY88b-0001Ux-Ox; Sun, 18 Apr 2021 14:11:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112475.214606; Sun, 18 Apr 2021 14:11:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY88b-0001Uq-Lp; Sun, 18 Apr 2021 14:11:01 +0000
Received: by outflank-mailman (input) for mailman id 112475;
 Sun, 18 Apr 2021 14:11: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 1lY88a-0001Ui-Eg; Sun, 18 Apr 2021 14:11: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 1lY88a-0003ED-6x; Sun, 18 Apr 2021 14:11: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 1lY88Z-00054v-UZ; Sun, 18 Apr 2021 14:10:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lY88Z-0006ds-U3; Sun, 18 Apr 2021 14:10: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=wcxDpTFkzgEuBKKpHM8vlCBPBiac7Q+1Wg6BCfjIz58=; b=iGzDVifPpENwI4fnb8PnvJ+/Sq
	yEfdwm0YpXmPoGXWxxRzKKXE8NQrTMYMJ1qtUE8dBEGmR/lYmmbOazlJfe3UdF2tx83O+4kMrkJDL
	AL+MCVS/Th+UGwfpqun3IBbILCRysRv9tArxtuwQJ66plc1ISWN2Ofm/Ib1ZU7fHaMx8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161244-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161244: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-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-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-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-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-amd64-libvirt-vhd: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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
X-Osstest-Versions-That:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 18 Apr 2021 14:10:59 +0000

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

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 161222
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161222
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161222
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161222
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161222
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161222
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161222
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161222
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161222
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161222
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161222
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-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-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-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-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-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-amd64-amd64-libvirt-vhd 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6
baseline version:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6

Last test of basis   161244  2021-04-17 22:39:33 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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sun Apr 18 14:44:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 14:44:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112482.214621 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY8ek-0004Ee-Ck; Sun, 18 Apr 2021 14:44:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112482.214621; Sun, 18 Apr 2021 14:44:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lY8ek-0004EX-9l; Sun, 18 Apr 2021 14:44:14 +0000
Received: by outflank-mailman (input) for mailman id 112482;
 Sun, 18 Apr 2021 14:44:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f0kj=JP=invisiblethingslab.com=marmarek@srs-us1.protection.inumbo.net>)
 id 1lY8ei-0004ES-To
 for xen-devel@lists.xenproject.org; Sun, 18 Apr 2021 14:44:13 +0000
Received: from out3-smtp.messagingengine.com (unknown [66.111.4.27])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 938ca1c8-140c-41f0-911c-da4675981beb;
 Sun, 18 Apr 2021 14:44:11 +0000 (UTC)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id D3FDD5C072D
 for <xen-devel@lists.xenproject.org>; Sun, 18 Apr 2021 10:44:10 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute3.internal (MEProxy); Sun, 18 Apr 2021 10:44:10 -0400
Received: from mail-itl (ip5b434f04.dynamic.kabel-deutschland.de [91.67.79.4])
 by mail.messagingengine.com (Postfix) with ESMTPA id 1B09124005B
 for <xen-devel@lists.xenproject.org>; Sun, 18 Apr 2021 10:44:09 -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: 938ca1c8-140c-41f0-911c-da4675981beb
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=content-type:date:from:message-id
	:mime-version:subject:to:x-me-proxy:x-me-proxy:x-me-sender
	:x-me-sender:x-sasl-enc; s=fm2; bh=/DaDmn2YnvDnYuPUgAyzxj0zONTY5
	uW5qD4rJ+cMzac=; b=peqsJXqAKSdm8FKmQDrI0ZsKjOaqXg4o/EGNz6sEePAdO
	6bLZXIy2yzc+NyxLhYYAzy/Zc1qzbOvqh5mK8N7dYWDfzIfY6B+TJ1JGEvzjozBp
	dieMz2+gJi3DHClyxnCaE06PcPBuuZcZlX2RMj2bnuJnEtc7qbplDHTvfK6iqjkd
	NB3Ki1lTVnjQA91W8mSDxbfgmmQav7qtHD0BL6JUBDL+LNRD7qjuKgODmhOnGXR1
	FdQyGOP6PUq5chEr9Qd5wx6D1sIqgYxcYwdX78FAy2WSGNleFpi2Bi4UOxEZ90xU
	F7b3eZRf8K3R71SUnsotUsBeJtPKU6wPpUR/zzL0Q==
X-ME-Sender: <xms:ukV8YJWN5QWCvIKDkxu-LxGb1HiO0IQsYteqHb9lOnQxXBPshnPO7Q>
    <xme:ukV8YJlCQ8MbWIxvIJm4EC5ZzqBXswQCEnFgKvtzzMhvCpTtwMnL0_PGNjnF0zKif
    oR9th4OSYOzFQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvddttddguddtucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvuffkgggtugesghdtreertd
    dtjeenucfhrhhomhepofgrrhgvkhcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhi
    uceomhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqne
    cuggftrfgrthhtvghrnheptddugfetudevudeiveevgfetueejlefggffghffhhfehtdff
    feefgfduueegfefhnecukfhppeeluddrieejrdejledrgeenucevlhhushhtvghrufhiii
    gvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhesihhnvhhishhi
    sghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:ukV8YFYp5Zu7VoAIRtcO-gQ16DfPHDgtepevVjgm8iS4ySzilvx4mA>
    <xmx:ukV8YMVJ4TceV99kPtbCHVbK21OBcjltvALMfMXDEFV0nMTWqfAWeQ>
    <xmx:ukV8YDkrE0d6i1emtxxc3N338sJgEgnzTE0RJhO08Lkms9Erx9yihA>
    <xmx:ukV8YNmrXpxeAi-UOnlEx7PUUaDgccMBoUSo4QqKs2etPVnHiMyyew>
Date: Sun, 18 Apr 2021 16:44:06 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel <xen-devel@lists.xenproject.org>
Subject: kernel NULL pointer dereference in gntdev_mmap ->
 mmu_interval_notifier_remove
Message-ID: <YHxFtj3dyjFbeusP@mail-itl>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="2+6I+Dj4NzXKj/UC"
Content-Disposition: inline


--2+6I+Dj4NzXKj/UC
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Sun, 18 Apr 2021 16:44:06 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel <xen-devel@lists.xenproject.org>
Subject: kernel NULL pointer dereference in gntdev_mmap ->
 mmu_interval_notifier_remove

Hi,

I've recently got the crash like below. I'm not sure what exactly
triggers it (besides grant table mapping as seen in the call trace), and
also I don't have reliable reproducer. It happened once for about ~30
startups.

Previous version tested was 5.10.25 and it didn't happened there, but
since reproduction rate is not great, it could be just luck...

[ 1053.550389] BUG: kernel NULL pointer dereference, address: 0000000000000=
3b0
[ 1053.557844] #PF: supervisor read access in kernel mode
[ 1053.557847] #PF: error_code(0x0000) - not-present page
[ 1053.557851] PGD 0 P4D 0=20
[ 1053.557858] Oops: 0000 [#1] SMP NOPTI
[ 1053.557863] CPU: 1 PID: 8806 Comm: Xorg Tainted: G        W         5.10=
=2E28-1.fc32.qubes.x86_64 #1
[ 1053.557865] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS =
0.0.0 02/06/2015
[ 1053.557876] RIP: e030:mmu_interval_notifier_remove+0x2e/0x190
[ 1053.557879] Code: 00 41 55 41 54 55 48 89 fd 53 48 83 ec 30 4c 8b 67 38 =
65 48 8b 04 25 28 00 00 00 48 89 44 24 28 31 c0 48 c7 04 24 00 00 00 00 <49=
> 8b 9c 24 b0 03 00 00 48 c7 44 24 08 00 00 00 00 48 c7 44 24 10
[ 1053.557881] RSP: e02b:ffffc90041617d18 EFLAGS: 00010246
[ 1053.557883] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00000000000=
00000
[ 1053.557884] RDX: 0000000000000001 RSI: ffffffff81c3e9a0 RDI: ffff8881258=
8b700
[ 1053.557885] RBP: ffff88812588b700 R08: 7fffffffffffffff R09: 00000000000=
00000
[ 1053.557886] R10: ffff8881088d4708 R11: ffff888108aa6180 R12: 00000000000=
00000
[ 1053.557887] R13: 00000000fffffffc R14: ffff888106a3ec00 R15: ffff888106a=
3ec10
[ 1053.557913] FS:  0000716f7f9a3a40(0000) GS:ffff888140300000(0000) knlGS:=
0000000000000000
[ 1053.557915] CS:  e030 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1053.557916] CR2: 00000000000003b0 CR3: 0000000105cf4000 CR4: 00000000000=
00660
[ 1053.557919] Call Trace:
[ 1053.557944]  gntdev_mmap+0x275/0x2f9 [xen_gntdev]
[ 1053.557950]  mmap_region+0x47e/0x720
[ 1053.557953]  do_mmap+0x438/0x540
[ 1053.557959]  ? security_mmap_file+0x81/0xd0
[ 1053.557963]  vm_mmap_pgoff+0xdf/0x130
[ 1053.557967]  ksys_mmap_pgoff+0x1d6/0x240
[ 1053.557973]  do_syscall_64+0x33/0x40
[ 1053.557977]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 1053.557981] RIP: 0033:0x716f7fe8c2e6
[ 1053.557985] Code: 01 00 66 90 f3 0f 1e fa 41 f7 c1 ff 0f 00 00 75 2b 55 =
48 89 fd 53 89 cb 48 85 ff 74 37 41 89 da 48 89 ef b8 09 00 00 00 0f 05 <48=
> 3d 00 f0 ff ff 77 62 5b 5d c3 0f 1f 80 00 00 00 00 48 8b 05 79
[ 1053.557986] RSP: 002b:00007ffcb4ef35c8 EFLAGS: 00000246 ORIG_RAX: 000000=
0000000009
[ 1053.557988] RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 0000716f7fe=
8c2e6
[ 1053.557989] RDX: 0000000000000001 RSI: 0000000000001000 RDI: 00000000000=
00000
[ 1053.557990] RBP: 0000000000000000 R08: 0000000000000009 R09: 00000000000=
00000
[ 1053.557991] R10: 0000000000000001 R11: 0000000000000246 R12: 00007ffcb4e=
f35e0
[ 1053.557992] R13: 0000000000000001 R14: 0000000000000009 R15: 00000000000=
00001
[ 1053.557995] Modules linked in: loop nf_tables nfnetlink vfat fat xfs snd=
_hda_codec_generic ledtrig_audio snd_hda_intel snd_intel_dspcfg soundwire_i=
ntel soundwire_generic_allocation ppdev snd_soc_core snd_compress snd_pcm_d=
maengine soundwire_cadence joydev snd_hda_codec snd_hda_core ac97_bus snd_h=
wdep snd_seq snd_seq_device snd_pcm edac_mce_amd snd_timer pcspkr snd sound=
core e1000e i2c_piix4 parport_pc parport xenfs fuse ip_tables dm_crypt boch=
s_drm drm_vram_helper drm_kms_helper cec drm_ttm_helper ttm serio_raw drm v=
irtio_scsi virtio_console ehci_pci ehci_hcd ata_generic pata_acpi floppy qe=
mu_fw_cfg xen_privcmd xen_pciback xen_blkback xen_gntalloc xen_gntdev xen_e=
vtchn uinput
[ 1053.558040] CR2: 00000000000003b0
[ 1053.558135] ---[ end trace 3c5c2ca63aac717a ]---
[ 1054.277085] snd_hda_intel 0000:00:03.0: IRQ timing workaround is activat=
ed for card #0. Suggest a bigger bdl_pos_adj.
[ 1054.927022] RIP: e030:mmu_interval_notifier_remove+0x2e/0x190
[ 1054.929170] Code: 00 41 55 41 54 55 48 89 fd 53 48 83 ec 30 4c 8b 67 38 =
65 48 8b 04 25 28 00 00 00 48 89 44 24 28 31 c0 48 c7 04 24 00 00 00 00 <49=
> 8b 9c 24 b0 03 00 00 48 c7 44 24 08 00 00 00 00 48 c7 44 24 10
[ 1054.937800] RSP: e02b:ffffc90041617d18 EFLAGS: 00010246
[ 1054.947281] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00000000000=
00000
[ 1054.949535] RDX: 0000000000000001 RSI: ffffffff81c3e9a0 RDI: ffff8881258=
8b700
[ 1054.973016] RBP: ffff88812588b700 R08: 7fffffffffffffff R09: 00000000000=
00000
[ 1054.976678] R10: ffff8881088d4708 R11: ffff888108aa6180 R12: 00000000000=
00000
[ 1054.978850] R13: 00000000fffffffc R14: ffff888106a3ec00 R15: ffff888106a=
3ec10
[ 1054.980751] FS:  0000716f7f9a3a40(0000) GS:ffff888140300000(0000) knlGS:=
0000000000000000
[ 1054.982878] CS:  e030 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1054.984509] CR2: 00000000000003b0 CR3: 0000000105cf4000 CR4: 00000000000=
00660
[ 1054.990508] Kernel panic - not syncing: Fatal exception
[ 1054.991967] Kernel Offset: disabled
(XEN) Hardware Dom0 crashed: rebooting machine in 5 seconds.

Looking at the surrounding code, it is access to 0x3b0(%r12), which is
0x38(%rdi):

ffffffff812f5930 <mmu_interval_notifier_remove>:
ffffffff812f5930:       e8 8b 09 d7 ff          callq  ffffffff810662c0 <__=
fentry__>
ffffffff812f5935:       41 55                   push   %r13
ffffffff812f5937:       41 54                   push   %r12
ffffffff812f5939:       55                      push   %rbp
ffffffff812f593a:       48 89 fd                mov    %rdi,%rbp
ffffffff812f593d:       53                      push   %rbx
ffffffff812f593e:       48 83 ec 30             sub    $0x30,%rsp
ffffffff812f5942:       4c 8b 67 38             mov    0x38(%rdi),%r12
ffffffff812f5946:       65 48 8b 04 25 28 00    mov    %gs:0x28,%rax
ffffffff812f594d:       00 00=20
ffffffff812f594f:       48 89 44 24 28          mov    %rax,0x28(%rsp)
ffffffff812f5954:       31 c0                   xor    %eax,%eax
ffffffff812f5956:       48 c7 04 24 00 00 00    movq   $0x0,(%rsp)
ffffffff812f595d:       00=20
ffffffff812f595e:       49 8b 9c 24 b0 03 00    mov    0x3b0(%r12),%rbx
ffffffff812f5965:       00=20

If my calculation is right, it means map->notifier->mm is NULL.

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--2+6I+Dj4NzXKj/UC
Content-Type: application/pgp-signature; name="signature.asc"

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

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmB8RbcACgkQ24/THMrX
1yxybAf/SM0WYhntjqU25pnhyY45urc8C7+N4+K1pfiYhvQay9yE9hjw5ADCEGjA
fRK22UAs7b8X6SWBMmRZcRT/3iI+VhNpSPluqDgY+xkk0uvtt5dl3jKC28yrlonI
b6XFhzR49X2kfNBqI8h0O19/LVOG2RKEHNypTwKFAb/7rpbwjkTyFdYwpwono9jA
rd7OnI8g5JRcggROuSLUEUSLm84qfNTfitjcoaNgXJYHZZ71vMN13+rtZkArqc1x
j4Q+U7iaT7nsjeq3wp/z7xDfG2i8yb+I+RXb0bAs8ycFSghfS4lQHPuRVuaV8mlO
Caf0nTHd8jMY/ZJI+4KHawTPCQahnA==
=I7Hh
-----END PGP SIGNATURE-----

--2+6I+Dj4NzXKj/UC--


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 17:49:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 17:49:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112514.214645 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYBXS-0003zm-P1; Sun, 18 Apr 2021 17:48:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112514.214645; Sun, 18 Apr 2021 17:48: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 1lYBXS-0003zf-Lo; Sun, 18 Apr 2021 17:48:54 +0000
Received: by outflank-mailman (input) for mailman id 112514;
 Sun, 18 Apr 2021 17:48: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 1lYBXR-0003zW-GQ
 for xen-devel@lists.xenproject.org; Sun, 18 Apr 2021 17:48: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 1lYBXQ-0007CI-8x; Sun, 18 Apr 2021 17:48:52 +0000
Received: from home.octic.net ([81.187.162.82]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYBXP-0001PL-Lt; Sun, 18 Apr 2021 17:48: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=bqpfq4FaJMHpUPMHAIiFk2xa9WG+tbnsoVdh5jHUY7k=; b=o3NkmSGpWFS6fh60aAA2QHw/mr
	29ENt2XsNAQDo+iavGmovwuWhgZJMhCBcwPV8zTAgyDxBijtijI1nZGr0d16KhqhdBmL5bqMYItvl
	fDlkXEwHtaZjVVFyGrvNCmTttFCfcOtGs+/8MT4TCxiOVcqj1IdBPwknjo8W42IHlMBA=;
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
To: Rahul Singh <Rahul.Singh@arm.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
 <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
 <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
 <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
 <78c30978-c3be-4357-fecc-5b2f24bf563f@xen.org>
 <348C921E-1150-4247-A693-1D81933FC3F7@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <996b5db1-da59-f03c-9e04-9ac283aa38f2@xen.org>
Date: Sun, 18 Apr 2021 18:48:49 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <348C921E-1150-4247-A693-1D81933FC3F7@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 16/04/2021 17:41, Rahul Singh wrote:
> Hi Julien

Hi Rahul,

>> On 16 Apr 2021, at 5:08 pm, Julien Grall <julien@xen.org> wrote:
>>
>>
>>
>> On 16/04/2021 17:05, Rahul Singh wrote:
>>>> On 16 Apr 2021, at 4:23 pm, Julien Grall <julien@xen.org> wrote:
>>>>
>>>>
>>>>
>>>> On 16/04/2021 16:01, Rahul Singh wrote:
>>>>> Hi Julien,
>>>>
>>>> Hi Rahul,
>>>>
>>>>>> On 16 Apr 2021, at 3:35 pm, Julien Grall <julien@xen.org> wrote:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> On 16/04/2021 12:25, Rahul Singh wrote:
>>>>>>> Revert the code that associates the group pointer with the S2CR as this
>>>>>>> code causing an issue when the SMMU device has more than one master
>>>>>>> device.
>>>>>>
>>>>>> It is not clear to me why this change was first added. Are we missing any feature when reverting it?
>>>>> This feature was added when we backported the code from Linux to fix the stream match conflict issue
>>>>> as part of commit "xen/arm: smmuv1: Intelligent SMR allocation”.
>>>>> This is an extra feature added to allocate IOMMU group based on stream-id. If two device has the
>>>>> same stream-id then we assign those devices to the same group.
>>>>
>>>> If we revert the patch, then it would not be possible to use the SMMU if two devices use the same stream-id. Is that correct?
>>> No. If we revert the patch we can use the SMMU if two devices use the same stream-id without any issue but each device will be in a separate group.This is same behaviour before the code is merged.
>>
>> Ok. So there is no change in behavior. Good. Can you propose a commit message clarifying that?
> 
> Please have a look if it make sense.
> 
> xen/arm: smmuv1: Revert associating the group pointer with the S2CR
> 
> Revert the code that associates the group pointer with the S2CR as this
> code causing an issue when the SMMU device has more than one master
> device with same stream-id. This issue is introduced by the below commit:
> 
> “0435784cc75dcfef3b5f59c29deb1dbb84265ddb:xen/arm: smmuv1: Intelligent SMR allocation”
>   
> Reverting the code will not impact to use of SMMU if two devices use the
> same stream-id but each device will be in a separate group. This is the same
> behaviour before the code is merged.

Look good to me. Is this patch to be applied on top of Stefano's series? 
If not, is there going to be more clash?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 18:03:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 18:03:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112521.214663 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYBlk-0005oV-4c; Sun, 18 Apr 2021 18:03:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112521.214663; Sun, 18 Apr 2021 18: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 1lYBlk-0005oO-1N; Sun, 18 Apr 2021 18:03:40 +0000
Received: by outflank-mailman (input) for mailman id 112521;
 Sun, 18 Apr 2021 18:03: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 1lYBli-0005oJ-D2
 for xen-devel@lists.xenproject.org; Sun, 18 Apr 2021 18:03: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 1lYBlh-0007XW-O1; Sun, 18 Apr 2021 18:03:37 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYBlh-0002Xn-D6; Sun, 18 Apr 2021 18:03: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=Message-Id:Date:Subject:Cc:To:From;
	bh=96wmvVmUvk1SAzPK9gUn+uB2sa5vhjbL3WN2g/dsoxA=; b=aZxBt3iu9qMEaW70ai9d/CTUqF
	ziUlpMM79w9T5GlIQNcigUelWKDSlHPYKwCE9g0O4varWnpJ34brmfwuLma4LTKEqm0xF5ZXlnHup
	TbcO9IyFUpbU0mW23JDz884z9D+f8sx/gsryL73l06X0DZcKZWTVIr5Wjxnjlj+f+6+g=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v4] xen/arm64: Place a speculation barrier following an ret instruction
Date: Sun, 18 Apr 2021 19:03:34 +0100
Message-Id: <20210418180334.7829-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

Some CPUs can speculate past a RET instruction and potentially perform
speculative accesses to memory before processing the return.

There is no known gadget available after the RET instruction today.
However some of the registers (such as in check_pending_guest_serror())
may contain a value provided by the guest.

In order to harden the code, it would be better to add a speculation
barrier after each RET instruction. The performance impact is meant to
be negligeable as the speculation barrier is not meant to be
architecturally executed.

Rather than manually inserting a speculation barrier, use a macro
which overrides the mnemonic RET and replace with RET + SB. We need to
use the opcode for RET to prevent any macro recursion.

This patch is only covering the assembly code. C code would need to be
covered separately using the compiler support.

Note that the definition of the macros sb needs to be moved earlier in
asm-arm/macros.h so it can be used by the new macro.

This is part of the work to mitigate straight-line speculation.

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

---

It is not clear to me whether Armv7 (we don't officially support 32-bit
hypervisor on Armv8) is also affected by straight-line speculation.
The LLVM website suggests it is: https://reviews.llvm.org/D92395

For now only focus on arm64.

    Changes in v4:
        - Remove Bertand's reviewed-by
        - Use /* ... */ rather than // for comments
        - Remove arm32 changes
        - Explain why the macro sb is moved around

    Changes in v3:
        -  Add Bertrand's reviewed-by

    Changes in v2:
        - Use a macro rather than inserting the speculation barrier
        manually
        - Remove mitigation for arm32
---
 xen/include/asm-arm/arm64/macros.h |  6 ++++++
 xen/include/asm-arm/macros.h       | 18 +++++++++---------
 2 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/xen/include/asm-arm/arm64/macros.h b/xen/include/asm-arm/arm64/macros.h
index f981b4f43e84..5ad66efd6ba4 100644
--- a/xen/include/asm-arm/arm64/macros.h
+++ b/xen/include/asm-arm/arm64/macros.h
@@ -21,6 +21,12 @@
     ldr     \dst, [\dst, \tmp]
     .endm
 
+    .macro  ret
+        /* ret opcode */
+        .inst 0xd65f03c0
+        sb
+    .endm
+
 /*
  * Register aliases.
  */
diff --git a/xen/include/asm-arm/macros.h b/xen/include/asm-arm/macros.h
index 4833671f4ced..1aa373760f98 100644
--- a/xen/include/asm-arm/macros.h
+++ b/xen/include/asm-arm/macros.h
@@ -5,6 +5,15 @@
 # error "This file should only be included in assembly file"
 #endif
 
+    /*
+     * Speculative barrier
+     * XXX: Add support for the 'sb' instruction
+     */
+    .macro sb
+    dsb nsh
+    isb
+    .endm
+
 #if defined (CONFIG_ARM_32)
 # include <asm/arm32/macros.h>
 #elif defined(CONFIG_ARM_64)
@@ -20,13 +29,4 @@
     .endr
     .endm
 
-    /*
-     * Speculative barrier
-     * XXX: Add support for the 'sb' instruction
-     */
-    .macro sb
-    dsb nsh
-    isb
-    .endm
-
 #endif /* __ASM_ARM_MACROS_H */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 18 18:04:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 18:04:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112524.214676 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYBmq-0005yC-H0; Sun, 18 Apr 2021 18:04:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112524.214676; Sun, 18 Apr 2021 18:04: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 1lYBmq-0005y5-Bb; Sun, 18 Apr 2021 18:04:48 +0000
Received: by outflank-mailman (input) for mailman id 112524;
 Sun, 18 Apr 2021 18:04: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 1lYBmo-0005xw-61
 for xen-devel@lists.xenproject.org; Sun, 18 Apr 2021 18:04: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 1lYBmn-0007YN-1e; Sun, 18 Apr 2021 18:04:45 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYBmm-0002cB-OZ; Sun, 18 Apr 2021 18:04: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=RUOwWtlLaQC3izBU8Lx7a8oS+ie2Ya8Rso3dy+hoJ8k=; b=TmRN5anIhtWiv3dOtK9WW26MM0
	DQiRm/1/Sgb/Or1m8PG8tArrA5lJmcSUeMn4dPbkpXddBAp1tQVPaCiNqHKGkfnJy957X3ghffDvZ
	o44xO30hIH5P2zv2Fbc7RBizqcsfve+MwGHN4XObEF1wm9ViaXc/LBpZ3Kr3tF0F7Sk4=;
Subject: Re: [PATCH v3 2/2] xen/arm64: Place a speculation barrier following
 an ret instruction
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Julien Grall <jgrall@amazon.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210401164444.20377-1-julien@xen.org>
 <20210401164444.20377-3-julien@xen.org>
 <alpine.DEB.2.21.2104131558410.4885@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <84c127d0-557c-9161-8696-f227d6c18658@xen.org>
Date: Sun, 18 Apr 2021 19:04:43 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104131558410.4885@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 14/04/2021 00:03, Stefano Stabellini wrote:
> On Thu, 1 Apr 2021, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Some CPUs can speculate past a RET instruction and potentially perform
>> speculative accesses to memory before processing the return.
>>
>> There is no known gadget available after the RET instruction today.
>> However some of the registers (such as in check_pending_guest_serror())
>> may contain a value provided by the guest.
>>
>> In order to harden the code, it would be better to add a speculation
>> barrier after each RET instruction. The performance impact is meant to
>> be negligeable as the speculation barrier is not meant to be
>> architecturally executed.
>>
>> Rather than manually inserting a speculation barrier, use a macro
>> which overrides the mnemonic RET and replace with RET + SB. We need to
>> use the opcode for RET to prevent any macro recursion.
>>
>> This patch is only covering the assembly code. C code would need to be
>> covered separately using the compiler support.
>>
>> This is part of the work to mitigate straight-line speculation.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
>>
>> ---
>>
>> It is not clear to me whether Armv7 (we don't officially support 32-bit
>> hypervisor on Armv8) is also affected by straight-line speculation.
>> The LLVM website suggests it is: https://reviews.llvm.org/D92395
>>
>> For now only focus on arm64.
>>
>>      Changes in v3:
>>          -  Add Bertrand's reviewed-by
>>
>>      Changes in v2:
>>          - Use a macro rather than inserting the speculation barrier
>>          manually
>>          - Remove mitigation for arm32
>> ---
>>   xen/arch/arm/arm32/entry.S         |  1 +
>>   xen/arch/arm/arm32/lib/lib1funcs.S |  1 +
>>   xen/include/asm-arm/arm64/macros.h |  6 ++++++
>>   xen/include/asm-arm/macros.h       | 18 +++++++++---------
>>   4 files changed, 17 insertions(+), 9 deletions(-)
>>
>> diff --git a/xen/arch/arm/arm32/entry.S b/xen/arch/arm/arm32/entry.S
>> index f2f1bc7a3158..d0a066484f13 100644
>> --- a/xen/arch/arm/arm32/entry.S
>> +++ b/xen/arch/arm/arm32/entry.S
>> @@ -441,6 +441,7 @@ ENTRY(__context_switch)
>>   
>>           add     r4, r1, #VCPU_arch_saved_context
>>           ldmia   r4, {r4 - sl, fp, sp, pc}       /* Load registers and return */
>> +        sb
>>   
>>   /*
>>    * Local variables:
>> diff --git a/xen/arch/arm/arm32/lib/lib1funcs.S b/xen/arch/arm/arm32/lib/lib1funcs.S
>> index f1278bd6c139..8c33ffbbcc4c 100644
>> --- a/xen/arch/arm/arm32/lib/lib1funcs.S
>> +++ b/xen/arch/arm/arm32/lib/lib1funcs.S
>> @@ -382,5 +382,6 @@ UNWIND(.save {lr})
>>   	bl	__div0
>>   	mov	r0, #0			@ About as wrong as it could be.
>>   	ldr	pc, [sp], #8
>> +	sb
>>   UNWIND(.fnend)
>>   ENDPROC(Ldiv0)
>> diff --git a/xen/include/asm-arm/arm64/macros.h b/xen/include/asm-arm/arm64/macros.h
>> index f981b4f43e84..4614394b3dd5 100644
>> --- a/xen/include/asm-arm/arm64/macros.h
>> +++ b/xen/include/asm-arm/arm64/macros.h
>> @@ -21,6 +21,12 @@
>>       ldr     \dst, [\dst, \tmp]
>>       .endm
>>   
>> +    .macro  ret
>> +        // ret opcode
> 
> This series is very nice Julien! You can add my acked-by to both patches
> and also commit them.

I have realized that I left a couple of arm32 specific code in the 
patch. I will commit the first one and respin this one.

> 
> One minor request: could you please replace this comment with
> 
> /* ret opcode */
> 
> on commit?  // is not part of the coding style.

I have modified it in the new version.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 18:07:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 18:07:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112528.214687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYBpp-00068S-Un; Sun, 18 Apr 2021 18:07:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112528.214687; Sun, 18 Apr 2021 18: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 1lYBpp-00068L-Qs; Sun, 18 Apr 2021 18:07:53 +0000
Received: by outflank-mailman (input) for mailman id 112528;
 Sun, 18 Apr 2021 18:07: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 1lYBpp-00068G-3O
 for xen-devel@lists.xenproject.org; Sun, 18 Apr 2021 18:07: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 1lYBpm-0007cR-Ip; Sun, 18 Apr 2021 18:07:50 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYBpm-0002nr-Bf; Sun, 18 Apr 2021 18:07:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=8sRyFLG3IlmitXTRR+QCtfzBsz66JAL4/9EdrbCNtp4=; b=SponDqYZQ+QNNUAvLupHooJqVg
	JHLoFkT2NQZwlM4Rbop5VnkGL6+xbBbIheUUqHcd8uXSNxUuc7EcEFnMoDR85CKj6M08KLnAAAcGn
	mX1PTa/ZadmJ6G7HymV2Q8eRtFbXlHQyVFvIquT9YO6vUGBgfb4aFeDsiaEwn16gi0vE=;
Subject: Re: [PATCH] tools: Drop XGETTEXT from Tools.mk.in
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Ian Jackson <iwj@xenproject.org>, 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>,
 Juergen Gross <jgross@suse.com>
References: <20210416155941.15454-1-andrew.cooper3@citrix.com>
From: Julien Grall <julien@xen.org>
Message-ID: <b9526156-a3d3-1434-0419-de5cebcf1d6c@xen.org>
Date: Sun, 18 Apr 2021 19:07:48 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210416155941.15454-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Andrew,

On 16/04/2021 16:59, Andrew Cooper wrote:
> This hunk was missing from the work to drop gettext as a build dependency.
> 
> Fixes: e21a6a4f96 ("tools: Drop gettext as a build dependency")
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

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

Cheers,

> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Ian Jackson <iwj@xenproject.org>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> CC: Julien Grall <julien@xen.org>
> CC: Juergen Gross <jgross@suse.com>
> ---
>   config/Tools.mk.in | 1 -
>   1 file changed, 1 deletion(-)
> 
> diff --git a/config/Tools.mk.in b/config/Tools.mk.in
> index d47936686b..934d899967 100644
> --- a/config/Tools.mk.in
> +++ b/config/Tools.mk.in
> @@ -12,7 +12,6 @@ PYTHON              := @PYTHON@
>   PYTHON_PATH         := @PYTHONPATH@
>   PY_NOOPT_CFLAGS     := @PY_NOOPT_CFLAGS@
>   PERL                := @PERL@
> -XGETTTEXT           := @XGETTEXT@
>   AS86                := @AS86@
>   LD86                := @LD86@
>   BCC                 := @BCC@
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 18:16:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 18:16:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112535.214703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYBxt-00077j-Qa; Sun, 18 Apr 2021 18:16:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112535.214703; Sun, 18 Apr 2021 18:16:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYBxt-00077c-N8; Sun, 18 Apr 2021 18:16:13 +0000
Received: by outflank-mailman (input) for mailman id 112535;
 Sun, 18 Apr 2021 18:16: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 1lYBxs-00077X-3B
 for xen-devel@lists.xenproject.org; Sun, 18 Apr 2021 18:16: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 1lYBxq-0007lQ-Cy; Sun, 18 Apr 2021 18:16:10 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYBxq-0003L9-48; Sun, 18 Apr 2021 18:16: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=d1xI2QBGA8TUkJqsn9+3Kgp2Knm72XkvGHgR70xZ9Bw=; b=PRFP1ESe7pGzL36dRsn9ZTkqcM
	I3kfS3HNiYzk+tdXmGJ0ydsHlN1scMDoXTdodmau8UXtmuXxBH31hi/uyDVy9L7VzW+W74tD/uGCl
	93k3zUQoL9mpR/941mQKE0Y2m0H73CodC1kD+6mgcHYs2UdZIXUx3DvM/1LZR4L/dCsk=;
Subject: Re: [PATCH] xen/arm: guest_walk: Only generate necessary
 offsets/masks
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Julien Grall <jgrall@amazon.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Julien Grall <julien@amazon.com>
References: <20210405162046.9353-1-julien@xen.org>
 <964513D8-D6CD-4419-9804-CF77363B81FD@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <87889996-0dc8-f8d8-0b0f-ea68dd82e3f5@xen.org>
Date: Sun, 18 Apr 2021 19:16:08 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <964513D8-D6CD-4419-9804-CF77363B81FD@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Bertrand,

On 16/04/2021 17:04, Bertrand Marquis wrote:
>> On 5 Apr 2021, at 17:20, Julien Grall <julien@xen.org> wrote:
>>
>> From: Julien Grall <jgrall@amazon.com>
>>
>> At the moment, we are computing offsets/masks for each level and
>> granularity. This is a bit of waste given that we only need to
>> know the offsets/masks for the granularity used by the guest.
>>
>> All the LPAE information can easily be inferred with just the
>> page shift for a given granularity and the level.
>>
>> So rather than providing a set of helpers per granularity, we can
>> provide a single set that takes the granularity and the level in
>> parameters.
>>
>> With the new helpers in place, we can rework guest_walk_ld() to
>> only compute necessary information.
>>
>> Signed-off-by: Julien Grall <julien@amazon.com>
> 
> Very nice cleanup.

I have a couple of more cleanup in that area to send. So far, we are 
using a completely different set of macros for Xen page-tables. I would 
like to introduce a new set that will just pass PAGE_SHIFT to the 
existing helper.

The nice part is this means it will be easier to support other page 
granularity if we wanted :).

> 
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
> Tested-by: Bertrand Marquis <bertrand.marquis@arm.com>

Thanks! I have committed the patch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 18:26:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 18:26:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112544.214718 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYC7a-00087k-RE; Sun, 18 Apr 2021 18:26:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112544.214718; Sun, 18 Apr 2021 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 1lYC7a-00087d-NW; Sun, 18 Apr 2021 18:26:14 +0000
Received: by outflank-mailman (input) for mailman id 112544;
 Sun, 18 Apr 2021 18:26: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 1lYC7Z-00087Y-Er
 for xen-devel@lists.xenproject.org; Sun, 18 Apr 2021 18:26: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 1lYC7Z-0007v5-5C; Sun, 18 Apr 2021 18:26:13 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYC7Y-00044d-TP; Sun, 18 Apr 2021 18: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=xCeqe2qzkmXuPMgLqo0adcs82fb9T2Lp6dKCofvqgZk=; b=IQdE5xzfW0MU404U1LHrpk8Igq
	+quuWh9AyZodsJzQ2Yth0fJcvT7aqxfzDMnphaKD7yiTvaOlM1xDEZ0Vbvqnefsfp+jZ6K62yJLEr
	jERwknqS8yXOfsMCYVuhTf4ok4h4z18SIbrGalgGoMWyUjWWY8N04cU24qq7RUiO4Y/E=;
Subject: Re: [PATCH v2] xen/arm: kernel: Propagate the error if we fail to
 decompress the kernel
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, Julien Grall <jgrall@amazon.com>
References: <20210406191554.12012-1-julien@xen.org>
 <591603c5-ebcb-e9d6-74a0-bed921458a69@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <6c8133a5-dc78-083b-0cec-69860e46daf7@xen.org>
Date: Sun, 18 Apr 2021 19:26:11 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <591603c5-ebcb-e9d6-74a0-bed921458a69@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 12/04/2021 07:45, Michal Orzel wrote:
> On 06.04.2021 21:15, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Currently, we are ignoring any error from perform_gunzip() and replacing
>> the compressed kernel with the "uncompressed" kernel.
>>
>> If there is a gzip failure, then it means that the output buffer may
>> contain garbagge. So it can result to various sort of behavior that may
>> be difficult to root cause.
>>
>> In case of failure, free the output buffer and propagate the error.
>> We also need to adjust the return check for kernel_compress() as
>> perform_gunzip() may return a positive value.
>>
>> Take the opportunity to adjust the code style for the check.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>
>> ---
>>      Changes in v2:
>>          - Fix build
>> ---
> 
> Reviewed-by: Michal Orzel <michal.orzel@arm.com>

Thanks! @Stefano, can I get your acked-by?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 19:02:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 19:02:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112554.214736 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYCfx-0003DG-MT; Sun, 18 Apr 2021 19:01:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112554.214736; Sun, 18 Apr 2021 19: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 1lYCfx-0003D9-JN; Sun, 18 Apr 2021 19:01:45 +0000
Received: by outflank-mailman (input) for mailman id 112554;
 Sun, 18 Apr 2021 19:01: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 1lYCfw-0003D1-DU; Sun, 18 Apr 2021 19:01: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 1lYCfw-0008Ul-59; Sun, 18 Apr 2021 19:01: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 1lYCfv-0002j0-S9; Sun, 18 Apr 2021 19:01:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYCfv-0005bT-Rg; Sun, 18 Apr 2021 19:01: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=7UIICMpw4NKg9iXGMTgJ/4xdH6gV776D6cHCoPYaX2Q=; b=euXsd3LF8UOcqAY9nDH03P9+bq
	SgPeVkPYcyslKd6AKUy5dSCdAZyJGVAhX3hUS+UaU/RllQXr8I5S8j2XYMvMVSh3ha1BkPSVk14XT
	IbkGU/9FxJLsoQxcjkglrR/Fwppanp5fIsO6hGDWTgeZLhbrvC0PelBtTk6q5Yft/GS0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161248-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161248: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx: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-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-vhd: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-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=194cf4825638256e9afe1d360831aa5379b3517a
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 18 Apr 2021 19:01:43 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                194cf4825638256e9afe1d360831aa5379b3517a
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  260 days
Failing since        152366  2020-08-01 20:49:34 Z  259 days  437 attempts
Testing same since   161248  2021-04-18 02:17:32 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1328661 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 18 22:50:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 18 Apr 2021 22:50:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112593.214770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYGF8-0006YB-L5; Sun, 18 Apr 2021 22:50:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112593.214770; Sun, 18 Apr 2021 22: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 1lYGF8-0006Y4-HZ; Sun, 18 Apr 2021 22:50:18 +0000
Received: by outflank-mailman (input) for mailman id 112593;
 Sun, 18 Apr 2021 22: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 1lYGF7-0006Xw-Ai; Sun, 18 Apr 2021 22: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 1lYGF7-0003n6-29; Sun, 18 Apr 2021 22: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 1lYGF6-00086D-P9; Sun, 18 Apr 2021 22:50:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYGF6-0002JF-Oe; Sun, 18 Apr 2021 22: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=HzUo6ndaBuppyBEXxFbhKIa7/K58ZF1VKbqxZ5qv7tA=; b=x8b1q3ejKdaEOtnLZgwsV3xQS9
	L/NTLsJreMb5qnlke+u/2KKxvPFkO/xOqAoGpzwK3sub/DQsQ6hx36/xY7vqTScpWqEXVEGHFaPp/
	syS/n3O6o17pncUclclkvTxHb7yLL7p1Vy+RjXyYn7aHwvqK/UpdIST8AJAkqdGnVR2Q=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161269-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161269: 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=05031fa87357fad155f659cfc2dcce6614834684
X-Osstest-Versions-That:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 18 Apr 2021 22:50:16 +0000

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

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                  05031fa87357fad155f659cfc2dcce6614834684
baseline version:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6

Last test of basis   161209  2021-04-16 16:01:30 Z    2 days
Testing same since   161269  2021-04-18 19:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquish <bertrand.marquis@arm.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
   dd22a64de7..05031fa873  05031fa87357fad155f659cfc2dcce6614834684 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 00:00:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 00:00:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112607.214791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYHL3-0004wa-SL; Mon, 19 Apr 2021 00:00:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112607.214791; Mon, 19 Apr 2021 00:00: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 1lYHL3-0004wT-Oa; Mon, 19 Apr 2021 00:00:29 +0000
Received: by outflank-mailman (input) for mailman id 112607;
 Mon, 19 Apr 2021 00:00: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 1lYHL1-0004w2-Rr; Mon, 19 Apr 2021 00:00: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 1lYHL1-0005ZA-JA; Mon, 19 Apr 2021 00:00: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 1lYHL1-0002pB-95; Mon, 19 Apr 2021 00:00:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYHL1-00019T-8c; Mon, 19 Apr 2021 00:00: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:Message-Id:Subject:To;
	bh=Tk4BDVYlbcnyLRwYK4wdNA5LEEjr4/cqwCvJkwOrG1k=; b=a0V/6lIuqNY+R0a5M6Rqg+aGZY
	ex2KKlVeG/BRI2VbdjSYRCwwVpnsNmqNo+LLeSF5inLNBUPE2NTET8qq3ZKfOtwYS5RxZb88O2tcQ
	Td/D0dU1pG7cAOS9xrktbQx9K2FThEDm88/832sDiUosqFKn6f18FhHDuqE3Rf7AfbO4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-amd64-xl-qemuu-ovmf-amd64
Message-Id: <E1lYHL1-00019T-8c@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 00:00:27 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-amd64-xl-qemuu-ovmf-amd64
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161274/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-ovmf-amd64.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-ovmf-amd64.guest-saverestore --summary-out=tmp/161274.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-xl-qemuu-ovmf-amd64 guest-saverestore
Searching for failure / basis pass:
 161232 fail [host=pinot0] / 160125 [host=albana0] 160119 [host=godello1] 160113 [host=huxelrebe1] 160104 [host=fiano1] 160097 [host=pinot1] 160091 [host=godello0] 160088 [host=elbling0] 160082 [host=albana0] 160079 [host=albana1] 160070 [host=chardonnay1] 160066 [host=chardonnay0] 160002 [host=huxelrebe1] 159947 [host=godello0] 159926 [host=godello0] 159911 [host=fiano0] 159898 [host=albana0] 159888 [host=godello1] 159878 [host=godello0] 159869 [host=godello1] 159860 [host=albana1] 159853 [host\
 =elbling1] 159848 [host=huxelrebe1] 159842 [host=elbling0] 159834 [host=godello0] 159828 ok.
Failure / basis pass flights: 161232 / 159828
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b53173e7cdafb7a318a239d557478fd73734a86a
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#ef91b07388e1c0a50c604e5350eeda98428ccea6-99e7e48cc7117c37fc1c08a741872d0875595796 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#cb90ecf9349198558569f6c86c4c27d215406095-8fe9f1f891eff4e37f82622b7480ee748bf4af74 git://xenbits.xen.org/osstest/seabios.git#ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#243036df0d55673de59c214e240b9b914d278b65-b53173e7cdafb7a318a239d557478fd73734a86a
Loaded 43006 nodes in revision graph
Searching for test results:
 159828 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
 159834 [host=godello0]
 159842 [host=elbling0]
 159848 [host=huxelrebe1]
 159853 [host=elbling1]
 159860 [host=albana1]
 159869 [host=godello1]
 159878 [host=godello0]
 159888 [host=godello1]
 159898 [host=albana0]
 159911 [host=fiano0]
 159926 [host=godello0]
 159947 [host=godello0]
 160002 [host=huxelrebe1]
 160048 []
 160050 []
 160057 []
 160062 []
 160064 []
 160066 [host=chardonnay0]
 160070 [host=chardonnay1]
 160079 [host=albana1]
 160082 [host=albana0]
 160088 [host=elbling0]
 160091 [host=godello0]
 160097 [host=pinot1]
 160104 [host=fiano1]
 160113 [host=huxelrebe1]
 160119 [host=godello1]
 160125 [host=albana0]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail irrelevant
 160748 fail irrelevant
 160779 fail irrelevant
 160801 fail irrelevant
 160827 fail irrelevant
 160851 fail irrelevant
 160883 fail irrelevant
 160916 fail irrelevant
 160980 fail irrelevant
 161050 fail irrelevant
 161088 fail irrelevant
 161121 fail irrelevant
 161147 fail irrelevant
 161171 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2ad22420a710dc07e3b644f91a5b55c09c39ecf3 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161191 fail irrelevant
 161220 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ef91b07388e1c0a50c604e5350eeda98428ccea6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cb90ecf9349198558569f6c86c4c27d215406095 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 243036df0d55673de59c214e240b9b914d278b65
 161225 fail irrelevant
 161226 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161227 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161228 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161230 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 69259911f948ad2755bd1f2c999dd60ac322c890 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161210 fail irrelevant
 161231 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161233 fail irrelevant
 161234 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161235 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2e51b27fed31eb7b2a2cb4245806c8c7859207f7 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0693602a23276b076a679b1e7ed9125a444336b6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161237 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161239 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161255 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 d1929069e355afb809a50a7f6b6affdea399cc8c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 368096b9c4a273be58dd897e996e3e010bcfc21b
 161240 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2615a5e433aeb812c300d3a48e1a88e1303e2339 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161242 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 51204c2f188ec1e2a38f14718d38a3772f850a4b b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161243 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 773b0bc2838ede154c6de9d78401b91fafa91062 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 5e8892db93f3fb6a7221f2d47f3c952a7e489737 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161245 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8e6bc6cdc82d45f203bc9fc4342c0452214c74fe b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161246 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 757acb9a8295e8be4a37b2cfc1cd947e357fd29c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161247 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9abda42bf2f5aa6ef403d3140fd3d7d88e8064e9 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 893103e286ac1c500d2ad113f55c41edb35e047c
 161249 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6f34661b6c97a37a5efc27d31c037ddeda4547e2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 0570d7f276dd20a3adee80ca44a5fe7daf7566cd
 161250 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 edd46cd407ea4a0adaa8d6ca86f550c2a4d5c507 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a557b00469bca61a058fc1db4855503cac1c3219 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 4e01c48886d9fbfee3bf7e481c4529a176331c78
 161252 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1941858448e76f83eb00614c4f34ac29e9a8e792 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 0570d7f276dd20a3adee80ca44a5fe7daf7566cd
 161253 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 edd46cd407ea4a0adaa8d6ca86f550c2a4d5c507 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 65a9d3807e9a0ffd9f9719416a07be41b6f39e94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e4bdcc8aef6707027168ea29caed844a7da67b4d
 161254 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 94fa95c8746c553324e8b69ea4a74af670075324 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e4341623a3b87e7eca87d42b7b88da967cd21c49 ef88eeaf052c8a7d28c5f85e790c5e45bcffa45e 60c0444fae2148452f9ed0b7c49af1fa41f8f522
 161232 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b53173e7cdafb7a318a239d557478fd73734a86a
 161274 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161258 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b6d5996706ddb6082e3ea8de79849bfecf2aaa15 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e31b3a5c34c6e5be7ef60773e607f189eaa15f3 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161260 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161262 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ee2e67da8f882fcdef2c49fcc58e9962aa695f5a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161263 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f9c53a69edeb94ae8c65276b885c1a7efe4f613a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161265 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 283d845c9164f57f5dba020a4783bb290493802f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161266 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8becb36063fb14df1e3ae4916215667e2cb65fa2 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161267 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161268 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161271 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161272 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161273 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 159828 (pass), for basis pass
 Result found: flight 161171 (fail), for basis failure (at ancestor ~53)
 Repro found: flight 161220 (pass), for basis pass
 Repro found: flight 161232 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 161267 (pass), for last pass
 Result found: flight 161268 (fail), for first failure
 Repro found: flight 161271 (pass), for last pass
 Repro found: flight 161272 (fail), for first failure
 Repro found: flight 161273 (pass), for last pass
 Repro found: flight 161274 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161274/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.693393 to fit
pnmtopng: 255 colors found
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-xl-qemuu-ovmf-amd64.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
161274: tolerable ALL FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail baseline untested


jobs:
 test-amd64-amd64-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



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 00:49:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 00:49:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112620.214808 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYI6Q-0000FQ-NA; Mon, 19 Apr 2021 00:49:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112620.214808; Mon, 19 Apr 2021 00:49:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYI6Q-0000FJ-K8; Mon, 19 Apr 2021 00:49:26 +0000
Received: by outflank-mailman (input) for mailman id 112620;
 Mon, 19 Apr 2021 00:49:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYI6P-0000FB-Sf; Mon, 19 Apr 2021 00:49:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYI6P-0006VG-JP; Mon, 19 Apr 2021 00:49:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYI6P-0005tf-CF; Mon, 19 Apr 2021 00:49:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYI6P-00024J-Bj; Mon, 19 Apr 2021 00:49: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=gSihLW8DndZ8cixzLNk+wx/PH4ROu/2YrXfJyklr5h4=; b=J7QOlo3xorePEDDDzJbO/udXyZ
	4g6xEN8ZC9Y/EfKpScKm00kLAInrboIdNbMoJgoUp3Q+z2phU9sLvYemwo2zfZcampgFwImzmi1AT
	5hRvLKVlk1peZgEIEOQ/f3/10g+pRkmBB1T4+DmR1qtWQn1YUrOewqazj9mEKZtzglbE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161256-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161256: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=8fe9f1f891eff4e37f82622b7480ee748bf4af74
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 00:49:25 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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

version targeted for testing:
 qemuu                8fe9f1f891eff4e37f82622b7480ee748bf4af74
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  241 days
Failing since        152659  2020-08-21 14:07:39 Z  240 days  445 attempts
Testing same since   161147  2021-04-14 22:08:02 Z    4 days    6 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142656 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 03:25:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 03:25:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112637.214830 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYKXS-0003w6-S2; Mon, 19 Apr 2021 03:25:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112637.214830; Mon, 19 Apr 2021 03:25: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 1lYKXS-0003vx-Km; Mon, 19 Apr 2021 03:25:30 +0000
Received: by outflank-mailman (input) for mailman id 112637;
 Mon, 19 Apr 2021 03:25: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 1lYKXR-0003vZ-2X; Mon, 19 Apr 2021 03:25: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 1lYKXQ-0006ot-OQ; Mon, 19 Apr 2021 03:25: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 1lYKXQ-0003bu-Cs; Mon, 19 Apr 2021 03:25:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYKXQ-0004tB-CM; Mon, 19 Apr 2021 03: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=QYCne7a23OgOBm6bFu5pyoD/pSs1meyrJL7Dcfh96Z0=; b=wnOkmDTxv/QfLsW4xeoI29TNgy
	+7tIBLStb5aPCo2bwgB5drZ3rFdVO1he9Rx8VakwD8GdMArfcVGiW0WKdvYt9MpWoaUQGJ0JM1gD1
	fiXtcY0VJ+hTgiFw2vHDGdHSfL5PcEjZVUwng/l3HiQh5Cg1tEVRBlX4TIkM0JDcJ84A=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161261-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161261: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 03:25:28 +0000

flight 161261 xen-4.12-testing real [real]
flight 161278 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161261/
http://logs.test-lab.xenproject.org/osstest/logs/161278/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   61 days
Failing since        160128  2021-03-18 14:36:18 Z   31 days   40 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   29 days   38 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 04:12:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 04:12:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112647.214850 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYLH9-0008P5-CJ; Mon, 19 Apr 2021 04:12:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112647.214850; Mon, 19 Apr 2021 04:12:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYLH9-0008Oy-9E; Mon, 19 Apr 2021 04:12:43 +0000
Received: by outflank-mailman (input) for mailman id 112647;
 Mon, 19 Apr 2021 04:12: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 1lYLH7-0008Oq-GQ; Mon, 19 Apr 2021 04:12: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 1lYLH7-0007ek-6m; Mon, 19 Apr 2021 04:12: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 1lYLH6-0005Nu-RZ; Mon, 19 Apr 2021 04:12:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYLH6-0004KG-R4; Mon, 19 Apr 2021 04:12: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=dPGinEt3Mn1kIvtkixoJVGXjDkDVCN7DvLRa1Yu2Ink=; b=xFn3XTQUzkLj6A28/dDA4IYztU
	/fiLlQGqUhPy0isIogKc6OIhG3+0tuL3Ia9f76k2LAkMuE9UW0fk8vnblXOs8Ku+ESErhWQroxbiG
	GBmrUOt/igvcJauPgtGSEM5gGgBscceDJAl7LM/cTmeutV+UMyHUdScCbx3OE5+J0uAw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161264-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161264: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
X-Osstest-Versions-That:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 04:12:40 +0000

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

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 161244
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161244
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161244
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161244
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161244
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161244
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161244
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161244
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161244
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161244
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161244
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-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-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6
baseline version:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6

Last test of basis   161264  2021-04-18 14:12:52 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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 06:33:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 06:33:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112664.214872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYNT0-0004KX-No; Mon, 19 Apr 2021 06:33:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112664.214872; Mon, 19 Apr 2021 06:33:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYNT0-0004KO-Ke; Mon, 19 Apr 2021 06:33:06 +0000
Received: by outflank-mailman (input) for mailman id 112664;
 Mon, 19 Apr 2021 06:33:05 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYNSz-0004KG-AN; Mon, 19 Apr 2021 06:33:05 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYNSz-0001wz-02; Mon, 19 Apr 2021 06:33:05 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYNSy-0005MP-MM; Mon, 19 Apr 2021 06:33:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYNSy-0002lG-Ls; Mon, 19 Apr 2021 06: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Bw0fRuafmqyR5SyzO78YrlaDwusGmapdJhQPbCUMlfo=; b=A2MzGOKIsbOhNtGmdQKEuRDkT1
	lAeFCtWn+heJdvQHoYKi4bL6KD6qDQ8tsh9fBPdQWGXgK7bOmOxkD3hlf96WqhKUWQ0Wc3MzZQ33L
	b2P/9Gw8D+5ZQobEUlhFH1fPSxqZnvya+t6aKjFECiuHrw1dEvGukS1DDws5xgw0lhSI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161270-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161270: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=f5ce0466dc96326e07b52b8fc170c91bc234beb3
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 06:33:04 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

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

version targeted for testing:
 linux                f5ce0466dc96326e07b52b8fc170c91bc234beb3
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  261 days
Failing since        152366  2020-08-01 20:49:34 Z  260 days  438 attempts
Testing same since   161270  2021-04-18 19:10:53 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1328982 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 07:17:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 07:17:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112672.214887 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYO9k-00085v-UZ; Mon, 19 Apr 2021 07:17:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112672.214887; Mon, 19 Apr 2021 07: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 1lYO9k-00085o-RO; Mon, 19 Apr 2021 07:17:16 +0000
Received: by outflank-mailman (input) for mailman id 112672;
 Mon, 19 Apr 2021 07:17:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jNU4=JQ=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lYO9i-00085j-SO
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 07:17:15 +0000
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.3.61]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0ca0aa6b-ada7-499f-92b6-cc0a67f19f73;
 Mon, 19 Apr 2021 07:17:08 +0000 (UTC)
Received: from AS8PR04CA0166.eurprd04.prod.outlook.com (2603:10a6:20b:331::21)
 by PA4PR08MB5933.eurprd08.prod.outlook.com (2603:10a6:102:f0::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr
 2021 07:17:05 +0000
Received: from VE1EUR03FT022.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:331:cafe::c7) by AS8PR04CA0166.outlook.office365.com
 (2603:10a6:20b:331::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Mon, 19 Apr 2021 07:17:05 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT022.mail.protection.outlook.com (10.152.18.64) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 07:17:05 +0000
Received: ("Tessian outbound 9bcb3c8d6cb1:v90");
 Mon, 19 Apr 2021 07:17:04 +0000
Received: from d4a814bb0871.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 2D30D09D-C51E-484B-A9FF-C62731EBC33E.1; 
 Mon, 19 Apr 2021 07:16:53 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d4a814bb0871.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 19 Apr 2021 07:16:53 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DB8PR08MB5482.eurprd08.prod.outlook.com (2603:10a6:10:116::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Mon, 19 Apr
 2021 07:16:52 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::8957:8ec1:e77f:f34e]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::8957:8ec1:e77f:f34e%3]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021
 07:16: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: 0ca0aa6b-ada7-499f-92b6-cc0a67f19f73
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YoKdU2VMFlNwXP19o9K8VMJuJDahd7Bp3b3fiXkrdPg=;
 b=4Rxi4Dk0JJp0xysD13VudLFXTe0sUJJPtzsO/GUoGTl5pT0yR5LEuI9AIR8RCN0RVUekobXdRwf636BE3x053mHNYOVafhxOsjHz1L/OQSzuwjVK0QaNM2ixCG1oHPQQfJOxN6einftNibXY/DghVnnPAE4ym81WhRSNcKjJVXE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 36d9e9f6e7013930
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=llY8Rqt1ECH1/8CePR/QpOrjJNk1pqz13m5ystYEXvZpjZC0dUfDIm2YJTMIgqoOkSgYNPkHJFv8sMVJm8Ir73Ua1Pm4Ta7A64NHf79bw66vFuhM6hgGF4+3d0YUX2gmaE/1E+yrmXbzrhieSghNq8pArx5KweacCTdE9ZXMMyQuwBgDXS23DY9MW0Ql1NqzDgBNFdiP4xcLviv/2r2tw2aXg29Uowh4y2MxOhtfgW0k7R9DruTXs01wmNgGQ6Ds1SPzZxSGvNW48ieU5/ZldbiGeKG27wGz5w7E6EX7vitczO5zvgwxZ31tnN3NDND28BAUldEZjCn1vioTMsyd8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YoKdU2VMFlNwXP19o9K8VMJuJDahd7Bp3b3fiXkrdPg=;
 b=CL1scc8ppTwpL6am3B53DiuCxVWI6rq5lmMd22oaDL7UIjsgojmE6xaeXOOe09f4gH20EpsKQi3OAI0QYmIvAWdzQKdL0QtPrKxKOBD3ERP8X+syVNSSDdIChIa2DtJ6Jk2nIodNjt+u88XHLYZlhuE9uPI2q3YMw6rfYc+lsHEgxHReYftN8voWvGQ1twKh1EAXI7qhJDxXFhQOomg3MYu4neDlQdX9Dpeg2zWxV1G/CBD1qksuFgf5wdo8rNEhGUiSPQcm6iA7PLpg41YJQT+upZBqaMrOTufNcpI16+Xix6mY6f3L/trYMH2/blWLtcwZ6DpFiZ6QNMvc/4mnKg==
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=YoKdU2VMFlNwXP19o9K8VMJuJDahd7Bp3b3fiXkrdPg=;
 b=4Rxi4Dk0JJp0xysD13VudLFXTe0sUJJPtzsO/GUoGTl5pT0yR5LEuI9AIR8RCN0RVUekobXdRwf636BE3x053mHNYOVafhxOsjHz1L/OQSzuwjVK0QaNM2ixCG1oHPQQfJOxN6einftNibXY/DghVnnPAE4ym81WhRSNcKjJVXE=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Julien Grall <julien@xen.org>
CC: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, xen-devel
	<xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Topic: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Index:
 AQHXLVmJnBz/2T+xZEqfD4R39q2wV6qwuDwAgAH9VwCAAPmtgIAADD+AgAHfkACAAAF1gIAF4LkA
Date: Mon, 19 Apr 2021 07:16:52 +0000
Message-ID: <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
References:
 <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
In-Reply-To: <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 9a495487-e138-4b60-8867-08d9030322f6
x-ms-traffictypediagnostic: DB8PR08MB5482:|PA4PR08MB5933:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<PA4PR08MB593359A54B3A30073D106646FC499@PA4PR08MB5933.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 FvKapBszVtwecqglxzVmcIowe0leQYg7u8ucp3NZHiLjCgx1E0HTmGaONNBrr5mVC1yAQRCy49XQaz05qbRnTRuCckhGX+E0FCN9KxWgKzPZPCu2zICM3/6qfIsZBKC3lgtxwNcJYdeRD0ZgmUx42+khhq9Q7oBKMdstpaKg50li2bbkX2x5d7i25SdfPShjWlwbYRtxd7bYLT8V4TanlH/280hucBHxxOBVFf6PalAZiGwE6NpQYWmQvLRK6Y6eIpB8165VD4yRw7ysdSy/APeT58RCZQdHyXqj42twk6ypdMSF04N1cyerYNZQ15Rg8/iE+Ln3yrPPObsJ7wShl4KcFo9+OgurNYat84w8iJCBNoceqodim8e7yctZRUvuf6Jd5/cRFsSjEmms/W955HuZqHdHsS4tvU42zsUtKOY3osg0kZrkfCEQSBEl2aOBVG26Lb/R7Ld+uNkL+DYwqB/aJ2O8wkRReY1wL2qbQVLNv9dM8aC6gFKZwPdIWGgtu086vr+Bw7jKBl89Wczd0R4gnfV2Qz74QloorCj2Yy2jdsZ2wFZgvaIfZueUKophtucA9vyBbZk6u4o0rBbyOiQTwkTsBltLK4C0pTH7LikW4nOCC44cEYr1kl74TESDU2M/jxCdYtnPk10u0+8qD1Q9eqlKXuf/GyOg/jyk8k4=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(39850400004)(346002)(136003)(376002)(2906002)(33656002)(6486002)(36756003)(76116006)(4326008)(86362001)(478600001)(26005)(186003)(83380400001)(2616005)(5660300002)(8936002)(6916009)(7416002)(66446008)(6506007)(6512007)(71200400001)(8676002)(91956017)(122000001)(38100700002)(66556008)(66946007)(64756008)(53546011)(66476007)(54906003)(316002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
 =?utf-8?Q?6hIOjDSnRWuUzIkofnY/enS8tslmy9kT+eg9vLy?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <FE999A7810DF42449F8A1DDEB290B14A@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5482
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	45163250-58b3-4d61-cb20-08d903031b3f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MyBteJ0qlqJjCAcb4I3tsMk+zRRlxCwRvOuK3JYc3g0YoQMWvshTqkRhLe8FBZH0CRUJ4MeoCSzFiH2ysmoeOc9KjbdiB1jNbReGpjhexBDXYjlJ/7LwWdmnGO2nvZ/i29ZrGS8YoO/rdQf0nDDNzIyl89wYBkcxRJi/4TCOjQTq4Dfj430A0h3ROK1s0hFURDMKnq5A3RQxZJi4mc+HjiXmBeNy31KhdEYRdUVTHvch7dcUccp5yNOpLv0oMUyORBnF+GP3QlbrerEHBohUrPAHErfiLfuOOS3UGwoqTloAgz65J8hDZufYlSX1LBfGtcgEPw77yZVgcb/6F4D8GtOyg93w1pMVNhfzIFJSf1S8biT0igTJLgFLTOa2D4kHB0h4KkEQs9QaYZ1csyxTm8B+l4X+YmEmsVqAjRvNjlxHiZk1A5jjjmNEXo2IjEkSQbJOJTHZfKvbdKOBUSeDrcriqsbftq/1eqKRCUGTEVqYLYU7nZRGxDkcCCX/sDHH3VOkNhwAqHeueYmIa726oVMnUp2NbTvkUs7lb9L4jc9h86gvax2DnS9IQg7aiC8XeaaRV/ZGOk3TrQDCkFZenwveqXRdmdEANtxRVtgUoaprohmuXdYUYJBouOybulpTjlzCQvY/MtvFs9qxvw6ZlQ==
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:(4636009)(39850400004)(346002)(396003)(376002)(136003)(36840700001)(46966006)(26005)(82310400003)(5660300002)(8936002)(36756003)(478600001)(6512007)(81166007)(2906002)(36860700001)(6486002)(54906003)(316002)(86362001)(8676002)(2616005)(47076005)(70206006)(6506007)(70586007)(6862004)(336012)(83380400001)(33656002)(186003)(4326008)(82740400003)(356005)(53546011);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 07:17:05.4253
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9a495487-e138-4b60-8867-08d9030322f6
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:
	VE1EUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5933

SGkgQWxsLA0KDQo+IE9uIDE1IEFwciAyMDIxLCBhdCAyOjMxIHBtLCBKdWxpZW4gR3JhbGwgPGp1
bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4gDQo+IEhpIFJvZ2VyLA0KPiANCj4gT24gMTUvMDQvMjAy
MSAxNDoyNiwgUm9nZXIgUGF1IE1vbm7DqSB3cm90ZToNCj4+IE9uIFdlZCwgQXByIDE0LCAyMDIx
IGF0IDA5OjQ5OjM3QU0gKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4+PiBIaSBSb2dlciwN
Cj4+PiANCj4+PiBPbiAxNC8wNC8yMDIxIDA5OjA1LCBSb2dlciBQYXUgTW9ubsOpIHdyb3RlOg0K
Pj4+PiBPbiBUdWUsIEFwciAxMywgMjAyMSBhdCAwNjoxMjoxMFBNICswMTAwLCBKdWxpZW4gR3Jh
bGwgd3JvdGU6DQo+Pj4+PiBIaSBSb2dlciwNCj4+Pj4+IA0KPj4+Pj4gT24gMTIvMDQvMjAyMSAx
MTo0OSwgUm9nZXIgUGF1IE1vbm7DqSB3cm90ZToNCj4+Pj4+PiBPbiBGcmksIEFwciAwOSwgMjAy
MSBhdCAwNTowMDo0MVBNICswMTAwLCBSYWh1bCBTaW5naCB3cm90ZToNCj4+Pj4+Pj4gZGlmZiAt
LWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jIGIveGVuL2RyaXZlcnMvcGFzc3Ro
cm91Z2gvcGNpLmMNCj4+Pj4+Pj4gaW5kZXggNzA1MTM3ZjhiZS4uMWI0NzM1MDJhMSAxMDA2NDQN
Cj4+Pj4+Pj4gLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCj4+Pj4+Pj4gKysr
IGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCj4+Pj4+Pj4gQEAgLTEzMDMsMTIgKzEy
NzksMTUgQEAgc3RhdGljIGludCBfX2luaXQgc2V0dXBfZHVtcF9wY2lkZXZzKHZvaWQpDQo+Pj4+
Pj4+ICAgIH0NCj4+Pj4+Pj4gICAgX19pbml0Y2FsbChzZXR1cF9kdW1wX3BjaWRldnMpOw0KPj4+
Pj4+PiArDQo+Pj4+Pj4+ICsjaWZkZWYgQ09ORklHX1BDSV9NU0lfSU5URVJDRVBUDQo+Pj4+Pj4+
ICAgIGludCBpb21tdV91cGRhdGVfaXJlX2Zyb21fbXNpKA0KPj4+Pj4+PiAgICAgICAgc3RydWN0
IG1zaV9kZXNjICptc2lfZGVzYywgc3RydWN0IG1zaV9tc2cgKm1zZykNCj4+Pj4+Pj4gICAgew0K
Pj4+Pj4+PiAgICAgICAgcmV0dXJuIGlvbW11X2ludHJlbWFwDQo+Pj4+Pj4+ICAgICAgICAgICAg
ICAgPyBpb21tdV9jYWxsKCZpb21tdV9vcHMsIHVwZGF0ZV9pcmVfZnJvbV9tc2ksIG1zaV9kZXNj
LCBtc2cpIDogMDsNCj4+Pj4+Pj4gICAgfQ0KPj4+Pj4+PiArI2VuZGlmDQo+Pj4+Pj4gDQo+Pj4+
Pj4gVGhpcyBpcyBub3QgZXhhY3RseSByZWxhdGVkIHRvIE1TSSBpbnRlcmNlcHRzLCB0aGUgSU9N
TVUgaW50ZXJydXB0DQo+Pj4+Pj4gcmVtYXBwaW5nIHRhYmxlIHdpbGwgYWxzbyBiZSB1c2VkIGZv
ciBpbnRlcnJ1cHQgZW50cmllcyBmb3IgZGV2aWNlcw0KPj4+Pj4+IGJlaW5nIHVzZWQgYnkgWGVu
IGRpcmVjdGx5LCB3aGVyZSBubyBpbnRlcmNlcHQgaXMgcmVxdWlyZWQuDQo+Pj4+PiANCj4+Pj4+
IE9uIEFybSwgdGhpcyBpcyBub3QgdGllIHRvIHRoZSBJT01NVS4gSW5zdGVhZCwgdGhpcyBoYW5k
bGVkIGlzIGEgc2VwYXJhdGUNCj4+Pj4+IE1TSSBjb250cm9sbGVyIChzdWNoIGFzIHRoZSBJVFMp
Lg0KPj4+Pj4gDQo+Pj4+Pj4gDQo+Pj4+Pj4gQW5kIHRoZW4geW91IGFsc28gd2FudCB0byBnYXRl
IHRoZSBob29rIGZyb20gaW9tbXVfb3BzIGl0c2VsZiB3aXRoDQo+Pj4+Pj4gQ09ORklHX1BDSV9N
U0lfSU5URVJDRVBULCBpZiB3ZSB3YW50IHRvIGdvdCB0aGlzIHJvdXRlLg0KPj4+Pj4gDQo+Pj4+
PiANCj4+Pj4+IEFsbCB0aGUgY2FsbGVycyBhcmUgaW4gdGhlIHg4NiBjb2RlLiBTbyBob3cgYWJv
dXQgbW92aW5nIHRoZSBmdW5jdGlvbiBpbiBhbg0KPj4+Pj4geDg2IHNwZWNpZmljIGZpbGU/DQo+
Pj4+IA0KPj4+PiBZZXMsIHRoYXQgc2VlbXMgZmluZS4gSnVzdCBwbGFjZSBpdCBpbiBhc20teDg2
L2lvbW11LmguIEkgd29uZGVyIHdoeQ0KPj4+PiB1cGRhdGVfaXJlX2Zyb21fbXNpIHdhc24ndCBt
b3ZlZCB3aGVuIHRoZSByZXN0IG9mIHRoZSB4ODYgc3BlY2lmaWMNCj4+Pj4gZnVuY3Rpb25zIHdo
ZXJlIG1vdmVkIHRoZXJlLg0KPj4+IA0KPj4+IEkgYW0gZ3Vlc3NpbmcgaXQgaXMgYmVjYXVzZSB0
aGUgZnVuY3Rpb24gd2FzIHByb3RlY3RlZCBieSBDT05GSUdfSEFTX1BDSQ0KPj4+IHJhdGhlciB0
aGFuIENPTkZJR19YODYuIFNvIGl0IHdhcyBkZWZlcnJlZCB1bnRpbCBhbm90aGVyIGFyY2ggZW5h
Ymxlcw0KPj4+IENPTkZJR19IQVNfUENJIChpdCBpcyBlYXNpZXIgdG8ga25vdyB3aGF0IGNvZGUg
c2hvdWxkIGJlIG1vdmVkKS4NCj4+PiANCj4+Pj4gV2FzIHRoZXJlIGFuIGFpbSB0byB1c2UgdGhh
dCBpbiBvdGhlcg0KPj4+PiBhcmNoZXM/DQo+Pj4gDQo+Pj4gSW4gdGhlIGZ1dHVyZSB3ZSBtYXkg
bmVlZCB0byB1c2UgTVNJcyBpbiBYZW4gKElJUkMgc29tZSBTTU1VcyBvbmx5IHN1cHBvcnQNCj4+
PiBNU0kgaW50ZXJydXB0KS4NCj4+IFRoZW4gSSB0aGluayBzb21lIG9mIHRoZSBiaXRzIHRoYXQg
YXJlIG1vdmVkIGZyb20NCj4+IHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jIChhbGxvY19w
Y2lfbXNpLCBmcmVlX3BjaV9tc2kgYW5kDQo+PiBkdW1wX3BjaV9tc2kpIG5lZWQgdG8gYmUgcHJv
dGVjdGVkIGJ5IGEgS2NvbmZpZyBvcHRpb24gZGlmZmVyZW50IHRoYW4NCj4+IENPTkZJR19QQ0lf
TVNJX0lOVEVSQ0VQVCwgYXMgdGhvc2UgYXJlIG5vdCByZWxhdGVkIHRvIE1TSSBpbnRlcmNlcHRp
b24sDQo+PiBidXQgdG8gTVNJIGhhbmRsaW5nIGluIGdlbmVyYWwgKGllOiBYZW4gZGV2aWNlcyB1
c2luZyBNU0kgbmVlZA0KPj4gdGhvc2UpLg0KPiANCj4gV2VsbC4uLiB4ODYtc3BlY2lmaWMgZGV2
aWNlcyB5ZXMuIFdlIGRvbid0IGtub3cgaW4gd2hhdCBmb3JtIE1TSSB3aWxsIGJlIGFkZGVkIG9u
IGZvciBvdGhlciBhcmNoLXNwZWNpZmljIGRldmljZXMuDQo+IA0KPiBUaGUgc2FtZSB3aXRoIHRo
ZSBtc2lfbGlzdCBhbmQgbXNpeCBmaWVsZHMgb2YgcGNpX2RldiwgdGhvc2UNCj4+IGFyZSBub3Qg
b25seSB1c2VkIGZvciBNU0kgaW50ZXJjZXB0aW9uLg0KPj4gT3IgYXQgbGVhc3QgbWlnaHQgYmUg
d29ydGggbWVudGlvbmluZyB0aGF0IHRoZSBmdW5jdGlvbnMgd2lsbCBiZQ0KPj4gbmVlZGVkIGZv
ciBYZW4gdG8gYmUgYWJsZSB0byB1c2UgTVNJIGludGVycnVwdHMgaXRzZWxmLCBldmVuIGlmIG5v
dA0KPj4gZm9yIGludGVyY2VwdGlvbiBwdXJwb3Nlcy4NCj4gDQo+IE15IHByZWZlcmVuY2Ugd291
bGQgYmUgdG8gY29tbWVudCBpbiB0aGUgY29tbWl0IG1lc3NhZ2UgKGFsdGhvdWdoLCB0aGVyZSBp
cyBubyBwcm9taXNlIHRoZXkgd2lsbCBldmVyIGdldCByZS11c2VkKS4gV2UgY2FuIHRoZW4gbW9k
aWZ5IHRoZSAjaWZkZWYgb25jZSB3ZSBpbnRyb2R1Y2UgYW55IHVzZS4NCj4gDQoNClRoYW5rcyB5
b3UgZXZlcnlvbmUgZm9yIHJldmlld2luZyB0aGUgY29kZS4gSSB3aWxsIHN1bW1hcmlzZSB3aGF0
IEkgaGF2ZSB1bmRlcnN0b29kIGZyb20gYWxsIHRoZSBjb21tZW50cyANCmFuZCB3aGF0IEkgd2ls
bCBiZSBkb2luZyBmb3IgdGhlIG5leHQgdmVyc2lvbiBvZiB0aGUgcGF0Y2guICBQbGVhc2UgbGV0
IG1lIGtub3cgeW91ciB2aWV3IG9uIHRoaXMuDQoNCjEuIENyZWF0ZSBhIHNlcGFyYXRlIG5vbi1h
cmNoIHNwZWNpZmljIGZpbGUgIm1zaS1pbnRlcmNlcHQuYyIgIGZvciB0aGUgYmVsb3cgbmV3bHkg
aW50cm9kdWNlZCBmdW5jdGlvbiBhbmQgDQogICAgY29tcGlsZSB0aGF0IGZpbGUgaWYgQ09ORklH
X1BDSV9NU0lfSU5URVJDRVBUIGlzIGVuYWJsZWQuQ09ORklHX1BDSV9NU0lfSU5URVJDRVBUICB3
aWxsICBiZSANCiAgICBlbmFibGVkIGZvciB4ODYgYnkgZGVmYXVsdC4gQWxzbyBNZW50aW9uIGlu
IHRoZSBjb21taXQgbWVzc2FnZSB0aGF0IHRoZXNlIGZ1bmN0aW9uIHdpbGwgYmUgbmVlZGVkIGZv
ciBYZW4gdG8gDQogICAgc3VwcG9ydCBNU0kgaW50ZXJydXB0IHdpdGhpbiBYRU4uDQoNCglwZGV2
X21zaV9pbml0aSguLikNCglwZGV2X21zaV9kZWluaXRpKC4uKQ0KCXBkZXZfZHVtcF9tc2koLi4p
LA0KCXBkZXZfbXNpeF9hc3NpZ24oLi4pDQoNCjIuIENyZWF0ZSBzZXBhcmF0ZSBwYXRjaCBmb3Ig
aW9tbXVfdXBkYXRlX2lyZV9mcm9tX21zaSgpIHJlbGF0ZWQgY29kZS4gVGhlcmUgYXJlIHR3byBz
dWdnZXN0aW9uIHBsZWFzZSBoZWxwIG1lIHdoaWNoIG9uZSB0byBjaG9vc2UuIA0KIA0KICAgICAt
IE1vdmUgdGhlIGlvbW11X3VwZGF0ZV9pcmVfZnJvbV9tc2koKSBmdW5jdGlvbiB0byBhc20teDg2
L2lvbW11LmggYW5kIGFsc28gbW92ZSB0aGUgaG9vayBmcm9tIGlvbW11X29wcyB1bmRlciBDT05G
SUdfWDg2Lg0KDQogICAgICAtIEltcGxlbWVudCBhIG1vcmUgZ2VuZXJpYyBmdW5jdGlvbiAiYXJj
aF9yZWdpc3Rlcl9tc2koKSIpLiBUaGlzIGNvdWxkIGNhbGwgaW9tbXVfdXBkYXRlX2lyZV9mcm9t
X21zaSgpIG9uIHg4NiBhbmQgdGhlIA0KICAgICAgICBJVFMgcmVsYXRlZCBjb2RlIG9uY2UgaW1w
bGVtZW50ZWQgb24gQXJtLiBJbnRyb2R1Y2UgdGhlIG5ldyBLY29uZmlnIENPTkZJR19IQVNfSU9N
TVVfSU5URVJSVVBUX1JFTUFQIGZvciB0aGlzIG9wdGlvbi4NCg0KMy4gQXMgcGVyIHRoZSBkaXNj
dXNzaW9uIEkgd2lsbCBnYXRlIHRoZSBzdHJ1Y3QgdnBjaV9tc2kgey4ufSBhbmQgc3RydWN0IHZw
Y2lfbXNpeHsuLn0gdXNpbmcgQ09ORklHX1BDSV9NU0lfSU5URVJDRVBUIHNvIHRoYXQgDQogICAg
dGhleSB3aWxsIG5vdCB3aWxsIGJlIGFjY2Vzc2libGUgb24gQVJNLg0KDQpSZWdhcmRzLA0KUmFo
dWwNCj4gQ2hlZXJzLA0KPiANCj4gLS0gDQo+IEp1bGllbiBHcmFsbA0KDQo=


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 07:50:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 07:50:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112679.214898 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYOfr-00035W-LV; Mon, 19 Apr 2021 07:50:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112679.214898; Mon, 19 Apr 2021 07:50: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 1lYOfr-00035P-Ic; Mon, 19 Apr 2021 07:50:27 +0000
Received: by outflank-mailman (input) for mailman id 112679;
 Mon, 19 Apr 2021 07:50:25 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UO6R=JQ=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lYOfp-00035K-EG
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 07:50:25 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.14.88]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 32a090dc-1b3e-4de0-b290-bb6558cd75af;
 Mon, 19 Apr 2021 07:50:23 +0000 (UTC)
Received: from AM6P191CA0069.EURP191.PROD.OUTLOOK.COM (2603:10a6:209:7f::46)
 by VI1PR0802MB2430.eurprd08.prod.outlook.com (2603:10a6:800:b1::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19; Mon, 19 Apr
 2021 07:50:21 +0000
Received: from VE1EUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:7f:cafe::eb) by AM6P191CA0069.outlook.office365.com
 (2603:10a6:209:7f::46) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Mon, 19 Apr 2021 07:50:20 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT010.mail.protection.outlook.com (10.152.18.113) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 07:50:20 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Mon, 19 Apr 2021 07:50:20 +0000
Received: from ce6c7fc30df5.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 AA545712-9929-4109-A97C-445C3120850F.1; 
 Mon, 19 Apr 2021 07:50:13 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ce6c7fc30df5.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 19 Apr 2021 07:50:13 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB4493.eurprd08.prod.outlook.com (2603:10a6:803:ff::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Mon, 19 Apr
 2021 07:50:10 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021
 07:50: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: 32a090dc-1b3e-4de0-b290-bb6558cd75af
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lLumaIzRwjH8iZm1aCsVPawv5Cjn3kN69UEi02oIoOw=;
 b=kuhb+W0VkUZQ8RM0laTjIzjYMPBYZcvwbklVMM5mkvCc2j/K95Hv8Ne6LbimEFV9Q3BFixjiK4LqWDuctIy02myv7zB9koSETBu4WhTu/1ARHCsPZZDTY3QnkTdc26ZYFSxXrMM9eXdR6xlf32Mz1UxF43fx59WhLYnfbMXyuNA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7774d707d912a93d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FB0+81I6xuaaxtNN/m5rjLpL9Wrfrq1zHoI3my63KCxM0wD00YvPobR/EAhWFrXlsebFPfVLNtOqjfUo348QckpzS4Dtp/Xcs9960PB7lE9DDOF13x0/9JZreJtJaVfebI+U1e90l3lvGpAezFaWQUQwt9kG6VU980e36oJogxgRJbYnSWH7oDeTO9rNDuPrJVdLjqV0SjuH4tyf0lTcbDua3pEz7mk5+KGK9JwJOFR/o45oFPu4yVw9kpxlEilMjrGOKaY7OQuf68yM1CLgoS90c3Ml5RwPyQ1W4XSASFPMO2XnY5dw/H9Xf6a8nlWggJghGIo07XqvGNAG8qwbHA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lLumaIzRwjH8iZm1aCsVPawv5Cjn3kN69UEi02oIoOw=;
 b=SphXLt6udT/BJI/9gx7OfQ6MXyMTDqIkiwxoRHjGbsUdzlyPQgXbzXmDpU9qvyCAA6aJO0HK/IJhDUqfz+xYjw9RQI/v7F8sAYhNTeEzisB0nesBprdmvJjljj7FsdxjFNUc7nH7mzxugTDFujEfcqBjkPZmCB+K+NQZOIg20K0zlM5ka25tzZ9E22DysIRKowUwH7cI5hvOJ91jzSv8L2eC1eCE0vR8u4LKrvBci5Q1enT3yrgwOZZwiW7DrhzcrD94Nm8UIqV+HeBi6INyOqo+MfLeF4D/WRJJM1o13WfDKq28PgqwIHfn7e+bMmrPymeVzd5RnxcCKIKt/8E2pg==
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=lLumaIzRwjH8iZm1aCsVPawv5Cjn3kN69UEi02oIoOw=;
 b=kuhb+W0VkUZQ8RM0laTjIzjYMPBYZcvwbklVMM5mkvCc2j/K95Hv8Ne6LbimEFV9Q3BFixjiK4LqWDuctIy02myv7zB9koSETBu4WhTu/1ARHCsPZZDTY3QnkTdc26ZYFSxXrMM9eXdR6xlf32Mz1UxF43fx59WhLYnfbMXyuNA=
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>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Julien Grall
	<julien@amazon.com>
Subject: Re: [PATCH] xen/arm: guest_walk: Only generate necessary
 offsets/masks
Thread-Topic: [PATCH] xen/arm: guest_walk: Only generate necessary
 offsets/masks
Thread-Index: AQHXKjesiGPIh/24CEW4HMn8sjGqgKq3YAMAgANJXACAAONvgA==
Date: Mon, 19 Apr 2021 07:50:10 +0000
Message-ID: <6803DD6A-69C1-48A5-8633-AB9D09DC9335@arm.com>
References: <20210405162046.9353-1-julien@xen.org>
 <964513D8-D6CD-4419-9804-CF77363B81FD@arm.com>
 <87889996-0dc8-f8d8-0b0f-ea68dd82e3f5@xen.org>
In-Reply-To: <87889996-0dc8-f8d8-0b0f-ea68dd82e3f5@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.3654.60.0.2.21)
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 25f5abc4-b5e4-43f2-88ca-08d90307c7fb
x-ms-traffictypediagnostic: VI1PR08MB4493:|VI1PR0802MB2430:
X-Microsoft-Antispam-PRVS:
	<VI1PR0802MB2430AE764B8380CED7ED13939D499@VI1PR0802MB2430.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 G3wIMykV1iO7XVJNzv3cLMWzc/amPQ07d5bGnG/Cdgi80Sm06ae112J5oJyAYeMkWDe2XlIfcNmbp7OzwDn6HgnJlb8LRqlX8oXxp8NRW7Z1X3L+x2wL9jWi8ocdLfC4ShaQLSgUJETpE/4sckx2lBofFaWbM6rUm0OVj3jiQpHIzW/bplUHpm+0MVsIaVyrRjmINu+J66ogsfbia19nbCleVLoC2FmDHBA167CIyckq5/5yo1FYJaBZ1jJYpXsamGLl8HuRc1fAzfd2Y1FtFdfi38JPKHxUttlA4qRez/t3+wOPp4b+0ZvK5UO30ILlSpSZBh3vfaShYCM83fzXAHFlWEonVr8m8aPTWEbnG+eme6TyPDFAx1wfAGBSPl+iaonTVoGWLsWD9R+rRTElh0rYDbeAfRbxFBQrYc5WLuxc74k1EDKTW/R5gh9UKqd0qKmXh7nVKDPHIdxr/F9Vk7W8kAijCGCWM12OCHaG031su6PAhfp4Ubmdk2ugiVf+sjMpAWGeCx5E6TWgB8+RehsmQPa1TMPPCbPN6dSRrRq/tj8eQKo94S1xrSeAATeFWbbSwCFAWg+JZzjpesOap8FVJi97Ejte7vMcgWZcSOgTwlMM4ywuLS8RRo53RW/hQPVEjOGfvLgSkNMyA2QwkpQCb5Ooy7kuq1BwECz+bMI=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(136003)(366004)(376002)(396003)(66476007)(71200400001)(316002)(6486002)(2616005)(36756003)(66946007)(8936002)(478600001)(4326008)(76116006)(5660300002)(8676002)(64756008)(66446008)(91956017)(66556008)(38100700002)(33656002)(54906003)(6512007)(2906002)(86362001)(6916009)(53546011)(186003)(122000001)(6506007)(26005)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?98QFVM80uTymbx1xqS9wtnbgcQHjbxgbYJr+IMmB3+ryHjnG5rOk4vV6lZIK?=
 =?us-ascii?Q?KaaUASmWapmUpXPpOb/DRYSkE6iwj7bFy81XS0iKDvGl20BAQ92QOuZ/yhWg?=
 =?us-ascii?Q?UL2C19j947QkciRGhemIaodCFO4IrGrKYV/4VaX3VplX8tHcjKS6sqnOeNMI?=
 =?us-ascii?Q?GC/qW4N9WbZZkFLrNELdTQStkp42Xl5p0DbrleQILILpCvUYJYoZUl3aCK3G?=
 =?us-ascii?Q?9oEJCJuX4aFEr1OBjBPX5uccMxNex/tnUrILMmfTAiEDijU9pJ8GRFBZyehL?=
 =?us-ascii?Q?xXKxg1AFf0QfN9S5t8Ow7mWsQTdzkLX0hGNhbOn9OpRpTvcm1yq4dFFhMxkz?=
 =?us-ascii?Q?491JuQHQi5STdVjN1y99KBpIAHX5KoE2EUWjz6hZJ//T0vC/TX9TiC4+POvO?=
 =?us-ascii?Q?DT6vMakx0G4l5gQm+NONFTj0cLZvcJonhLPEvexMzBZ9zYxa2sl/YspAtOV4?=
 =?us-ascii?Q?04cHYLHsgL5YrB++B/UrqJP9XuWS9Op6rsqhE4mVvkQlIwbAlDsOMCoJ2Y00?=
 =?us-ascii?Q?5YGCAsUEKUhOFrUy/RIlOcHkTyhzoyE3WlduLk+p4OYq37alWKVBA/aMfGD8?=
 =?us-ascii?Q?n99txN+rgEtmiPP4O9sHzZhtJOFqXNeyAwnRX4e824tVuj2dY77szQ4wkDzw?=
 =?us-ascii?Q?Uut7qqou9IPPcgF9Us0ELhvxiYeY8O+9bZl3bEjrUC6M+/oOFZtmE9FuoBy5?=
 =?us-ascii?Q?uCzLeTrcAaze+oum4vZ41b8G/nISsXkabqkObm1ByiLpjoa19cCBqAlA/3Lq?=
 =?us-ascii?Q?eOZ+/LBulz06UAaK6rjf/922wBXiDMVa7xxchhZLebMCuctOR9DC554rakdU?=
 =?us-ascii?Q?/TjOQ96YcapvOD8ANRBOBBM4mh5SfV8gT3h5WgJCd7Ty+qBlvjbvV4yueLcA?=
 =?us-ascii?Q?jix91PrRCeE62fqQ16VABKv8x0nKV2nZFQMG/TzCKA6JU+USbV3UZ7zR3HZ3?=
 =?us-ascii?Q?DY+wvRyGW/IexAb+e5lU+4MovCZuSKbGt7Tjy4HzR8sFHkP4K+hI9aL+kgC5?=
 =?us-ascii?Q?KOIPk9DmoVEUuk084bRwwZdxR5nOb85z1I6Qw/99mhgmqnr1l9ZNzj+cmLYE?=
 =?us-ascii?Q?SNZyGmZociWerz0cnAdhXUIzjmdvg+M0zZ59fBWj8m0Xe0HW1Y+40ZpH3sAB?=
 =?us-ascii?Q?5z7AcmWEQ9sNZl9pjeCtndEn2Dqkv5MQonJlEK/VZ0uqX4CbSnZoOzDP6fX8?=
 =?us-ascii?Q?SlWt053GjJB9HfaY7pH7sSZcMjPNmm1j8MPBJyDEGWwVSL4GdqGny+hhF5M/?=
 =?us-ascii?Q?EVhzaS9t33k4jlCqTWqBWJ818iBhW2iTWwV1vzM7j7vcrAHZGADZwMbCiSjZ?=
 =?us-ascii?Q?E+bO2H0xQXWD8MgBY0Qo5jXWhPBJQ/sGgSL/qR6xjTXLEA=3D=3D?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-ID: <D8907C8E7107E940A15A6D7483701C9D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4493
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3c1cc2a4-151c-4ee7-64be-08d90307c210
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	58mhICqK5So3RuVsrN/dirPZ0nDl1yoKP1xy67+wX/pnH2uz7t9cU/+DcdJxRku1tyMsbOs9R/MpLDWepiL/WZfZG8P+hmGV6QLBeoX4cJE3SSR65cp4UsDf8uVmIiBIu0uzTVt5wU4MDh/7zOD1R/tz8hPbBTlxBzqDlS15vNTiXQwATbKk1o5H0pOUIGspVSyP6v0KSU6/5lL5AZbtuaKoT14nfhRaTeLnwPbop+HvnFM5Uq83h3wqEqscZEx0gdEweDh5FEvju8gDxaE3Jl1wqeJoC829iqVHZoIemcvAF3XVngY9t5cNCMBHDcALRtUqlRvYfDbMaKHRzoS7QrzYj60f19aLEZCVAxgEP1sHYHQuzpGW6YxReLG/P0gE4tyWTc7mdTZ0qU5HzEdsXqcNjhLQaz6UpVmIhkDtXaMSu/f4W8bbVuckC9TSIGCxcg0apgGHP7BA0CaXCkXnKT+FR0FJpW1ZiIOUYQWW1I7fnowbqxbaHJ3u4XNRjF5i78VOapFQqHoTX/PQFFJ9QeSHE/HONJBOZc8On0s/SZ1X9DB/rY261KNtVtN8qSSaK5Jq1L/YjgSCPVRztX/FpUYjFRBUslgpESU7MGoHi0a7GvXF/Qn3xvWPGfwvcpVDnAe39vKSR/KqsKgkrj/ToA==
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:(4636009)(39860400002)(136003)(396003)(346002)(376002)(46966006)(36840700001)(86362001)(54906003)(316002)(6486002)(8676002)(107886003)(70586007)(186003)(336012)(6862004)(2906002)(70206006)(36860700001)(478600001)(81166007)(5660300002)(6506007)(4326008)(47076005)(53546011)(26005)(356005)(2616005)(82740400003)(36756003)(82310400003)(6512007)(33656002)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 07:50:20.2691
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 25f5abc4-b5e4-43f2-88ca-08d90307c7fb
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:
	VE1EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2430

Hi Julien,

> On 18 Apr 2021, at 19:16, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Bertrand,
>=20
> On 16/04/2021 17:04, Bertrand Marquis wrote:
>>> On 5 Apr 2021, at 17:20, Julien Grall <julien@xen.org> wrote:
>>>=20
>>> From: Julien Grall <jgrall@amazon.com>
>>>=20
>>> At the moment, we are computing offsets/masks for each level and
>>> granularity. This is a bit of waste given that we only need to
>>> know the offsets/masks for the granularity used by the guest.
>>>=20
>>> All the LPAE information can easily be inferred with just the
>>> page shift for a given granularity and the level.
>>>=20
>>> So rather than providing a set of helpers per granularity, we can
>>> provide a single set that takes the granularity and the level in
>>> parameters.
>>>=20
>>> With the new helpers in place, we can rework guest_walk_ld() to
>>> only compute necessary information.
>>>=20
>>> Signed-off-by: Julien Grall <julien@amazon.com>
>> Very nice cleanup.
>=20
> I have a couple of more cleanup in that area to send. So far, we are usin=
g a completely different set of macros for Xen page-tables. I would like to=
 introduce a new set that will just pass PAGE_SHIFT to the existing helper.
>=20
> The nice part is this means it will be easier to support other page granu=
larity if we wanted :).

That would be awesome.
Do not hesitate to ping me if you need some help.

>=20
>> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
>> Tested-by: Bertrand Marquis <bertrand.marquis@arm.com>
>=20
> Thanks! I have committed the patch.
Great,

Cheers
Bertrand

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 08:18:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 08:18:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112690.214910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYP6q-0005qp-4Y; Mon, 19 Apr 2021 08:18:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112690.214910; Mon, 19 Apr 2021 08:18:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYP6q-0005qi-1c; Mon, 19 Apr 2021 08:18:20 +0000
Received: by outflank-mailman (input) for mailman id 112690;
 Mon, 19 Apr 2021 08:18: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 1lYP6p-0005qa-C5; Mon, 19 Apr 2021 08:18: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 1lYP6p-00049e-5f; Mon, 19 Apr 2021 08:18: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 1lYP6o-0001P2-Rz; Mon, 19 Apr 2021 08:18:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYP6o-0003mm-RQ; Mon, 19 Apr 2021 08:18: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=EZej1DfDFTLQg4cIwf3i/7fwrn0+EPWGQA07Z0pZulE=; b=L+om6zkyLOADiIu7a7j/s169gM
	w2atvCLCJ3TJbGfrCiAfb68sq1fJx7IXF/BQ10N5Js52F5xqdiuZa9+dBZ4mzKiZcQbHCju+2Hv0D
	DeJOsoek5D+IOqWbGYLHbASDl6QKfDMEiwba/qOepf/+DlBbhnvFLeWO4P2wsvo2Q2Sk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161282-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161282: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=ac87f612ba8e4eb44f8dad34503f8673dc846db3
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 08:18:18 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              ac87f612ba8e4eb44f8dad34503f8673dc846db3
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  283 days
Failing since        151818  2020-07-11 04:18:52 Z  282 days  275 attempts
Testing same since   161223  2021-04-17 04:21:08 Z    2 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 08:20:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 08:20:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112694.214926 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYP8y-0006fa-IP; Mon, 19 Apr 2021 08:20:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112694.214926; Mon, 19 Apr 2021 08:20: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 1lYP8y-0006fT-Ew; Mon, 19 Apr 2021 08:20:32 +0000
Received: by outflank-mailman (input) for mailman id 112694;
 Mon, 19 Apr 2021 08:20:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=6e0X=JQ=riomar.se=rio@srs-us1.protection.inumbo.net>)
 id 1lYP8x-0006fM-7a
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 08:20:31 +0000
Received: from mail2.riocities.com (unknown [185.20.14.89])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3b415107-6a44-4747-a3bc-714eba19c6e4;
 Mon, 19 Apr 2021 08:20:30 +0000 (UTC)
Received: from mail.riomar.se (81-230-197-241-no510.tbcn.telia.com
 [81.230.197.241])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client did not present a certificate)
 by mail2.riocities.com (Postfix) with ESMTPSA id 2C7E6403B2;
 Mon, 19 Apr 2021 10:20: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: 3b415107-6a44-4747-a3bc-714eba19c6e4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=riomar.se; s=mail;
	t=1618820429; bh=dAvRtOAtF82txCYx8CqXAHZFc1ZLErZRiETcAItRFaM=;
	h=Date:From:To:Subject:In-Reply-To:References:From;
	b=TmwRxydKlvXSY8dmyIlOj7F27Gbjk2fe0ZXnspmk5M0Bs22RkODtCJVS52jr7bRqD
	 Hibp52vKDlT+9sdcnWrKyZmndNH66a+QAd/4fqlaE2mUK0LCvw0xCFI9/4Rs19rrcO
	 yZG7l6lhOs6VgZPB7UMQFG2Fu52ActWkRTerq55s=
Date: Mon, 19 Apr 2021 10:20:28 +0200
From: Henrik Riomar <rio@riomar.se>
To: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org
Subject: Re: xenstore utils dropped support for -s in 4.15
Message-Id: <20210419102028.2159633400d98830a54d4d0a@riomar.se>
In-Reply-To: <6340da5e-a604-1ca3-4d89-0319e6ad12bc@suse.com>
References: <20210411000215.0d0f4015bbfab8b1f20876bb@riomar.se>
	<215bcc74-baff-6345-73ed-16f7da266a1b@suse.com>
	<20210411091734.09ef653bf97aa954fecac079@riomar.se>
	<6340da5e-a604-1ca3-4d89-0319e6ad12bc@suse.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Sun, 11 Apr 2021 11:17:38 +0200
Juergen Gross <jgross@suse.com> wrote:

> On 11.04.21 09:17, Henrik Riomar wrote:
> > On Sun, 11 Apr 2021 07:34:16 +0200
> > Juergen Gross <jgross@suse.com> wrote:
> > 
> >> On 11.04.21 00:02, Henrik Riomar wrote:
> >>> Hi,
> >>>
> >>> In Alpine and Debian (probably elsewhere as well), the -s flag removed in these two commits:
> >>>    * https://github.com/xen-project/xen/commit/fa06cb8c38832aafe597d719040ba1d216e367b8
> >>>    * https://github.com/xen-project/xen/commit/c65687ed16d2289ec91036ec2862a4b4bd34ea4f
> >>> is actually used in the init scripts.
> > 
> >>> Reverting the two commits mentioned above restores a booting system.
> >>>
> >>> The -s flag was introduced in 2005 or so, so I guess you can say that dropping it should
> >>> at least be mentioned in the release notices, and an alternative be described, or
> >>> -s functionally should be brought back.
> >>
> >> The -s served exactly no purpose.
> > 
> > yes its used by dists to check that the socket is actually accessible (without falling back to
> > direct access to /dev/xen/xenbus).
> 
> There are Xen configurations where the socket is never accessible,
> as it is not existing.

sure, but this is in the start script for the daemon it self we use "xenstore-read -s /"
so it will also work if that script is used in a domain only running xenstored, right?

> 
> >> It was meant to force socket usage. A socket will be used anyway in
> >> case xenstored is running in dom0, so specifying -s won't change
> >> anything in this case.
> > 
> > yes reverting the to commits above and using -s, brings back the original behavior, returning
> > with failure if the socket is not there.
> 
> And returning failure when Xenstore is running fine, but not in dom0.

sure, -s means access via local socket so yes.

> 
> > There are two issues here I think:
> >   1. dists actually use -s to check if the daemon is up (and been doing this for a long time)
> 
> This should be changed, as it is based on wrong assumptions.

changed to what exactly? check for a pid file? that also only works locally just like
-s.

> 
> >   2. Reads of /dev/xen/xenbus (via xenstore-read -s /), blocks for ever in 4.15
> 
> So you are basically saying that you'd like to have a test "is Xenstore
> running", and this test should work with the "-s" flag.
> 
> I can look into that, but reverting the "access via socket" removal flag
> is not the way to go.
> 

Ok, so what should dists packaging 4.15 do? can the release notices be updated with this?

Thanks,
 Henrik


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 08:31:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 08:31:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112702.214937 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYPJi-0007fx-Mx; Mon, 19 Apr 2021 08:31:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112702.214937; Mon, 19 Apr 2021 08:31:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYPJi-0007fq-Jm; Mon, 19 Apr 2021 08:31:38 +0000
Received: by outflank-mailman (input) for mailman id 112702;
 Mon, 19 Apr 2021 08:31:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2xPN=JQ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYPJg-0007fl-Q4
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 08:31:37 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 50bd4eb1-9b71-47a4-9935-84e23ef87e7c;
 Mon, 19 Apr 2021 08: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: 50bd4eb1-9b71-47a4-9935-84e23ef87e7c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618821095;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Ag/uJSZmel7PBdinj9gHVRWmJInudpYHYRM0NO4xvUI=;
  b=IGTRl0FTEvbe0/8yNDjI22pcsg10n8PIx0IZ7WUNFq/NwiNTf9cOiWM5
   vCdpeYLU8L5stt7q5s4qBSHcmN8Y46KNeExPh1VVaEvCqpvCKIsWnbG4H
   fha0NOkG29/AFNz8cNCZ7fTmc6sgCnL2WUJSWSglfBch0lw8Z9j5+WDoe
   A=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: DVlt1wLN5EQ8Q2U0sQ/uYOS3Y8AFQckWFiOvnjr+Q4Iu/yLl1GpVfDIoOXc+72aGy+VEHuhm31
 7M7hThMBl7lDbmrFymDclS+gyvZ8jfougzm21SU8yO2L0C+jQ+jD/EbkPYxdFeoXSC8MY0tZmH
 zMPNysHLoPQNFcawG/vm9ppRwgEDBcJYuQwWVWllMPnB+OD6LGTak0mTSPPv5eWBrAThGOHhVH
 ZtFNgszADfymTRYR+S9FRPUPpSS4v3CZUunfGSW9I9RfC6WtSZSLeXufS/dETAh+TQwfpgYOK+
 I6E=
X-SBRS: 5.2
X-MesageID: 42248054
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:57sgZaD8267ZegzlHeh+sceALOonbusQ8zAX/mhsVB1YddGZnc
 iynPIdkST5kioVRWtIo729EYOLKEm9ybde544NMbC+GDT3oWfAFvAH0aLO4R3FXxf/+OlUyL
 t6f8FFYuHYIFBmga/BjzWQPM0nxLC8npyAocf74zNTQRpxa6dmhj0JbzqzNkFtXgFJCd4YOf
 Onl6l6jgGtc3gWcci3b0NtN4T+jubGiY78Zlo+DwMngTPksRqT9LX4HxKEty1uMQ9n/LFKyw
 n4uj283IqPmbWRyhjQ12jchq4m5efJ+594K+GnzuQQIjXooA60aIpmQK3qhkFInMifrGwEvf
 OJjxA8P9liy365RBDLnTLdnzPO/Rxry3j+xUSWiXHuyPaJOg4SOo56qq9yNj76gnBQ2+1U4e
 Zw8E+y86dzN1fmmh/w4tDZPisa7XackD4ZvsM4y0BEXZB2Us42kaUvuHl7Pb0nByzA5IUuAI
 BVfbvhzccTS1+cYnzD11MfueCEbzA2FheCdEAIptaY5ThQhGx41EsV3qUk7w89yK4=
X-IronPort-AV: E=Sophos;i="5.82,233,1613451600"; 
   d="scan'208";a="42248054"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BqG6wAI7cMX8JI31X+yygXum8gMneodcgSR7zx2cfqQOq6fVV3QsNS6RQO3ZG5W/1soKjF3NBxP4Cmv9oJbbBEXkvheEheAK4wL2rC/LXyGCkPnqtlU4GtbaCEpgjSBq1sPb45H1JkO7E7w3Qy1aSQFct6+C8HuptV+L3xUcWaifrUXjPT/vSfEzSFvOw18T7JCitIHngmJHjWDTd/yYCfDRj+L0JUkRm9wubhkgrQ3X4eu9S+tpf4hYbxfTLOsy8twi5hy1XvGMuvsM4aPEFKH8/NwLMB5Qf4MPPoHP+q1NQXrm9GSWC4zIxigXDCKpiODGVrXlTjcs1wpotAAzkQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fE4fqxepWG1lQFu4oIhhEc4JBOmCI95lUCTjTFdFK+4=;
 b=IG3k5zRM3+Udvo2Jyc4OZIWko/CgNXDG3jMJK/D4pGhGBe4uEmJPM4zjM9e8Dr2F9BrO7H0pDiHRBBfMRvtCiip88bEGb8sn2WooPcPYDwEOP/VwvywqnTfM/CzTtVHESIhyKc0hg3MS1eVlnrE+5sSTG3mB+2F0Pytz3NErjwjpxyo362znPvuDOm0klgq+4i43C62KkMBaY9I76EFy5E1W6CX5DKVi/FN7Ym5qrPkrCwGKhvU8tT5Q0l1j9XbXhINq4tpmKzcEU3aphRzEzGApOaz/RRLv9hSOfs3wV0KDxbyH9iM1GeRyeY3HzyCFoZ7bQbydZXO3OxTW+z4Gig==
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=fE4fqxepWG1lQFu4oIhhEc4JBOmCI95lUCTjTFdFK+4=;
 b=nGIBt8LGU3UIDBuKfkkXOuU1/qlNaqdXpIQouS9Nq+B53X30F8MdzMKe1xO567yn+flLZWSzPSxWWL/rEFlt6XbAKU1c2xroIyv4kSCTTS4EBnEdoU92k4tAN5pmST0M2c+lFpsqB1eEJg8DilPWcfXZvBL1oOuo9jgmffOMZrU=
Date: Mon, 19 Apr 2021 10:31:26 +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 06/11] x86/hvm: allowing registering EOI callbacks for
 GSIs
Message-ID: <YH0/3v6WKEQOQoay@Air-de-Roger>
References: <20210331103303.79705-1-roger.pau@citrix.com>
 <20210331103303.79705-7-roger.pau@citrix.com>
 <a57f0f75-341d-e6e1-823c-2083184a8f08@suse.com>
 <YG3m9nW6xPeL7MPr@Air-de-Roger> <YHhkBBaXgBQMrov/@Air-de-Roger>
 <afb9ad03-d946-55c3-5f51-62683b69f0dc@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <afb9ad03-d946-55c3-5f51-62683b69f0dc@suse.com>
X-ClientProxiedBy: MR1P264CA0003.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2e::8) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4727d4f0-3a24-4815-4549-08d9030d8921
X-MS-TrafficTypeDiagnostic: DM5PR03MB2554:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2554031FF605B6D382245ACD8F499@DM5PR03MB2554.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: L7ZSkVlneCpOwn6qt4fB37FxEzjgdRzdWidIUgOV01njqFskEruCtlyeUoyFbfVBIfDDm6NZv0zjf4gBADFGvRTf/aRFeuSasGfzH+pH7faMLKx/IwdlFKFRGLuSQkQzV0BzWPQV5NHhLEDR0D7hbUkE6cZ9IDqEcRVNN+p2+AWhoWAdr1n6dwMfqSTZJEXQ/uu5mIraQM8QBs6ieEPeYNKlV96+CxEQcp77owtREBE1NRFkI+K1yEW5IzNNtlCrG6tivooqzcO/aLvr2+q1luS7gsYn8HETa8LizmEjkAIFUKTEpHoFFZmUU46RXxKvpM91T2bcBvbwXxnr9YBBzEDD5g1EijtFa1wVP4ZCWv31kzfUz2HrKnhJe8W3g5TTPk1HsUFg9qKVrz2a+aVMwBcgJhcEjYw7/GX12IIF3/1mGFFs5xvysmADaxf6fy5UVkFi3Ok+vGUZjH9c6/cKoAo1QkKxvnTPKBd8VzBT5E4GekTsOAFtVPkZUdNV4Aua7FfAanygNh+3XilWfd8s8w2v2A17O8b19dPEEQOki9DPfDhsOBvB3bgLPlpV5FeQW0r7vrIilmhRhlggsIACsNBvqpz96HWW5eCTCfIxc+U=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(39850400004)(376002)(396003)(346002)(136003)(86362001)(8676002)(8936002)(85182001)(38100700002)(54906003)(83380400001)(316002)(66946007)(2906002)(66476007)(478600001)(66556008)(6666004)(6496006)(53546011)(956004)(6486002)(4326008)(26005)(5660300002)(6916009)(33716001)(9686003)(16526019)(186003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?rzhovSakoKkUxdoTPjeFP/PFzn6jyxLmCf1sVjT?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 4727d4f0-3a24-4815-4549-08d9030d8921
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 08:31:32.1146
 (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: ib/AM8V7v8lOMcsOJQ/exJmb338m3Z25BJGMa7Jt9LlJsmmeT2fWAEdPfMI7pG05QuHUx67qZSN3icag219DPw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2554
X-OriginatorOrg: citrix.com

On Fri, Apr 16, 2021 at 09:29:26AM +0200, Jan Beulich wrote:
> On 15.04.2021 18:04, Roger Pau Monné wrote:
> > On Wed, Apr 07, 2021 at 07:08:06PM +0200, Roger Pau Monné wrote:
> >> On Wed, Apr 07, 2021 at 05:51:14PM +0200, Jan Beulich wrote:
> >>> On 31.03.2021 12:32, Roger Pau Monne wrote:
> >>>> --- a/xen/arch/x86/hvm/irq.c
> >>>> +++ b/xen/arch/x86/hvm/irq.c
> >>>> +void hvm_gsi_execute_callbacks(unsigned int gsi)
> >>>> +{
> >>>> +    struct hvm_irq *hvm_irq = hvm_domain_irq(current->domain);
> >>>> +    struct hvm_gsi_eoi_callback *cb;
> >>>> +
> >>>> +    read_lock(&hvm_irq->gsi_callbacks_lock);
> >>>> +    list_for_each_entry ( cb, &hvm_irq->gsi_callbacks[gsi], list )
> >>>> +        cb->callback(gsi, cb->data);
> >>>> +    read_unlock(&hvm_irq->gsi_callbacks_lock);
> >>>> +}
> >>>
> >>> Just as an observation (for now at least) - holding the lock here
> >>> means the callbacks cannot re-register themselves.
> >>
> >> Well, re-registering would be weird, as the callback is not
> >> unregistered after execution. What is likely more relevant is that the
> >> callback cannot unregister itself. I haven't found a need for this so
> >> far, so I think it's fine.
> > 
> > I'm afraid I was wrong here - rtc_pf_callback could attempt to
> > unregister the timer, and thus end up calling
> > hvm_gsi_unregister_callback inside of a callback.
> > 
> > I need to figure a way to solve this. We already run the RTC in no ack
> > mode (which is correct because of the flag we expose in the WAET ACPI
> > table), and hence I wonder if we still need to keep the code for the
> > strict_mode around, since it's not used at all. Would you be OK with
> > me removing the mode_strict related code?
> 
> Not sure, to be honest. Years ago I did submit a patch correcting this
> ("x86/HVM: tie RTC emulation mode to enabling of Viridian emulation"),
> as we shouldn't assume all guests to even know of WAET.

It's very likely guest that don't even know about WAET to continue
working fine even in the no_ack mode. In fact the current code for
strict_mode will inject 10 interrupts without REG_C being read, as
there's no check for the value of REG_C before injecting the
interrupt.

> Hence running
> uniformly in rtc_mode_no_ack isn't really correct. I'm still carrying
> this patch, as Tim (iirc) had asked not to tie the behavior to the
> Viridian param, but give it its own one. Which I still didn't get to.
> 
> Of course, if we decided to drop mode_strict support, I could also
> drop that patch ...

AFAICT the no_ack mode it's been used since Xen 4.3, and so far we had
no complains, so I think it's safe to just remove the code for
strict_mode. It can always be fetched from the repository history if
there's a need to support strict_mode in the future.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 08:40:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 08:40:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112709.214955 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYPSc-0000Dj-K5; Mon, 19 Apr 2021 08:40:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112709.214955; Mon, 19 Apr 2021 08: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 1lYPSc-0000Dc-Gq; Mon, 19 Apr 2021 08:40:50 +0000
Received: by outflank-mailman (input) for mailman id 112709;
 Mon, 19 Apr 2021 08:40:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2xPN=JQ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYPSb-0000DW-6J
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 08:40:49 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 199c554f-ac9a-43a3-a809-fbc8fddb458e;
 Mon, 19 Apr 2021 08:40: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: 199c554f-ac9a-43a3-a809-fbc8fddb458e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618821647;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Yt9mOtrVJgub3xZSeJFeYv+LL9w6HVYBBgwiR5K3YyQ=;
  b=GLRyvH1c9PLx1QyjCR/Zmv9v6GiF+EfdMR6BZhpSokf/X9aB06MOgjiK
   QfVgDAf5qTv3ASdKz6vJdTIjuCGZvFnjDfi5bJ3imp1VBKeaXq6t90qOo
   yye7OyXbezWDXYX0VHg0tsQjPWftvc8heiPjl5MXpTsNMhc5b9zqO5i8L
   o=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 6B/JiIUQhOJSR15BmUZebsFPhJgD8Ub/VwG3v8K3VIKzOFaVIizwuWnfFvy1kov1Bj8IGfaIiG
 rY96Brl+f4kmH2eRoMxdRbp3UyJFLJ0/5X79cj72/46o4tHR6d0G6Otpy+KQmpcu9pHWj2lIPI
 emRqEk1KeylCt391y7UQ4AsY7nZzYHd73OMCuVvVDm7ZPWXBdQBP7WegrYJCFhIMs8SzSvgR/o
 Er9OapWofvsEARSqqOKSvqm9bpG7areXZ5pbyp8J4bSmumd31+YmNCU6Em+uW+p62zCjYzlBq8
 DqA=
X-SBRS: 5.2
X-MesageID: 43351947
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:VrOMPaPx8Fay6cBcTxv155DYdL4zR+YMi2QD/1xtSBBTb8yTn9
 2vmvNe7hPvlDMNQhgb9OyoEq+GXH/a6NpJ8ZAcVI3SOTXOlUmJCMVZ7YXkyyD9ACGWzIRg/I
 ppbqQWMrLNJHdgi8KS2meFOvIB5PXCz6yyn+fZyB5WPGNXQoVt9R1wBAreMmAefml7LKE0Hp
 ad+cZLzgDIERgqR/+2G2UfWKz7r8DL/aiMXTc9GxUl5AOS5AnYi4LSLh7w5HYjegIK+5gO2y
 zvkwv15qKs2svLsCP05ivowLl93PfkwttHLsSQhsYSMSWEsHfUWK1RH4eskRpwjOaz6Es7sN
 SkmWZdA+1Dr0n/U0vwgRzx1xLu2DwjgkWStmOwsD/YjuHSABcZYvAx4b5xQ1/ixGcL+OxY6u
 Zt2VmUspJGZCmw5BjV1pzzeDxB0navrWFKq591s1VvFbEwRZV2toIl8EZcAP47bVnHwbFiKu
 VoAc3GjcwmF2+yXjTctmlr9tSmQm4+KBeAWlQDocyYyVFt7QlE83c=
X-IronPort-AV: E=Sophos;i="5.82,233,1613451600"; 
   d="scan'208";a="43351947"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XAaT5tfj9uAyl8yKWuIymw9ZvcTed47W1o/+/06/tSbj71cWyWhEG7r0PYqxmTl1XJc/uX7b5NHDxiPkdTqMldN1ZXbB1wqGPSLQDEIruvUwHy1BYJ+5w60OE6bEKzJOeg7n7EoqiJgRNvoBFlW3FNfA5fHV66fnwK8QirVETl1e36dBAm7YW3uCChElIkAuUs8XtykwaH5VNDA/RReOBqwQpQrc/yb9PBNV3cVw5gFxkk9yvVcVQEmnWa34bOEb2XN7Xm377BjZb5Q22h/CH8q2auEtSWI1psvqYtB2aPsYab2Ijz/O+slhqVA1YL3l9CdsiDU/t222qeGHB/CR6g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qS4qYbsKAhBbTBxZ05PrDEpCYVl/1g8QT1mGJsea8+M=;
 b=LMnm+L6t2al1raxSwhLu6cw1hLFIkw0+LCxt31kIf1mMSZv1uiFdgtAmgnqsoxiL4BjY2bJRcm08kd3XsXAZwRqkH2rkxK90sZhc55JqJpcIFyXPhxYV2eic6sganPUJGPYm7Wd44v3Bs73QtRqEOfP0cDkHC7quprZfKJ89v1yBnQtpUVCNOg1q7pdSAhGKz49OP2G+gkGdAVd+YW/K/aC7UOOTJJV1DxpqgjW0V7JXmMRzHtEbk0Rpj/Jqh0RVNvGVLbPJsa9j2YYngx/M9aPtwnP+oM7bUmZ2tzTL5cnHVP80kDH6eIzANhfgEu8oVW65RLfdZ1m+Zjs1ofT29A==
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=qS4qYbsKAhBbTBxZ05PrDEpCYVl/1g8QT1mGJsea8+M=;
 b=FDewZpzI0RLSoTaLYgYY8UdBdCjDNno2cXXLXvEMSEWhYKEncFK1h2CsaG5Kiw5AqcdcS4NkGDio8DpJ+jFzokZreJAY7og/XnSdRJNDkMNmPGg0qLdVhESLSK8GmiBY+Mx/SHIc/wi22FbIxxhylKXccwZYCK3Py9rbmnXN484=
Date: Mon, 19 Apr 2021 10:40:36 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Rahul Singh <Rahul.Singh@arm.com>
CC: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, "George
 Dunlap" <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
	"Stefano Stabellini" <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
	"Volodymyr Babchuk" <Volodymyr_Babchuk@epam.com>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Message-ID: <YH1CBP8At7lVoHCz@Air-de-Roger>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
X-ClientProxiedBy: PR0P264CA0233.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:1e::29) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 90916fed-9bf9-4cae-9629-08d9030ed09f
X-MS-TrafficTypeDiagnostic: DM6PR03MB4539:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB45397FA6C33E1B99F26E86F98F499@DM6PR03MB4539.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: dYzP3Y5JrsPAE4/kfPNQdHAAEDiYwf22a02eIDaRrZ4iS7fr8GWIuFGVVaJ/KMR/80Cmd48f+Cgfx2W254Ic9vSDFqYhzQVez9pkeHX94HDnGTUEGLRIKAj1RFRxyjq8nHtWOURCGxqCPcKYLl6aehbk3aT5gs++5JleXaUOHmq9aKhSh8HBPn1PMq04ffqW16CmX7TUU8WZPQsezHrkcYFp3XLrvLDMpUyBeUvAfq1jzFvvgqiXfF1uCQpl935BjwZ5L2SfZpowzBB8OdIK9euEgvFwR7n8+HE/Y7HDi9K3Yg64w1FdREMyLQYfqaEmd0t4pESu1hgwLQl40Vez2EfvIhDLU62dSYYpadB/tiW/ptaRiWobteIhJxSwTPxPdWywyxRvVICP/SoOJyOJVKugmmSMt3ZJY0mv3dooabL9yJIfMLHfAaDe/jvneDY7uwfZZy85ey+z/hONaEuaJbyW0yeOd7FnrQ4EYkaeKk8qYCMjnjzzQRJtx+623dDEeT2EY6xLanT+725Nx0Gv19c/GJn3fMOFiuA+5wfw5aMBM8iudbHm2RsbVx+5IO759QGgKfXTtC+UABIwxEHWAhjgmBDxsLUwmGNPdfuxYvU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(39850400004)(376002)(136003)(366004)(396003)(2906002)(83380400001)(186003)(9686003)(26005)(316002)(16526019)(956004)(8676002)(54906003)(4326008)(8936002)(478600001)(33716001)(38100700002)(66476007)(6496006)(6666004)(85182001)(86362001)(6486002)(7416002)(66556008)(5660300002)(6916009)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 90916fed-9bf9-4cae-9629-08d9030ed09f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 08:40:41.5634
 (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: Btp83+SL0cCy6CbLjPrV+foeZV214vPnfXKibcNFPcOkRf1dSzN4ZehMgG4zeFHA1v5O2NsTSc/H9K8LF6merw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4539
X-OriginatorOrg: citrix.com

On Mon, Apr 19, 2021 at 07:16:52AM +0000, Rahul Singh wrote:
> Thanks you everyone for reviewing the code. I will summarise what I have understood from all the comments 
> and what I will be doing for the next version of the patch.  Please let me know your view on this.
> 
> 1. Create a separate non-arch specific file "msi-intercept.c"  for the below newly introduced function and 
>     compile that file if CONFIG_PCI_MSI_INTERCEPT is enabled.CONFIG_PCI_MSI_INTERCEPT  will  be 
>     enabled for x86 by default. Also Mention in the commit message that these function will be needed for Xen to 
>     support MSI interrupt within XEN.
> 
> 	pdev_msi_initi(..)
> 	pdev_msi_deiniti(..)

I would drop the last 'i' from both function names above, as we use
init/deinit in the rest of the code base.

> 	pdev_dump_msi(..),
> 	pdev_msix_assign(..)
> 
> 2. Create separate patch for iommu_update_ire_from_msi() related code. There are two suggestion please help me which one to choose. 
>  
>      - Move the iommu_update_ire_from_msi() function to asm-x86/iommu.h and also move the hook from iommu_ops under CONFIG_X86.

I would go for this one.

> 
>       - Implement a more generic function "arch_register_msi()"). This could call iommu_update_ire_from_msi() on x86 and the 
>         ITS related code once implemented on Arm. Introduce the new Kconfig CONFIG_HAS_IOMMU_INTERRUPT_REMAP for this option.

I think it's best to introduce this hook when you actually have to
implement the Arm version of it.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 08:55:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 08:55:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112717.214968 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYPgI-0001JT-T7; Mon, 19 Apr 2021 08:54:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112717.214968; Mon, 19 Apr 2021 08: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 1lYPgI-0001JM-Q0; Mon, 19 Apr 2021 08:54:58 +0000
Received: by outflank-mailman (input) for mailman id 112717;
 Mon, 19 Apr 2021 08:54: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 1lYPgH-0001JE-Ih; Mon, 19 Apr 2021 08:54: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 1lYPgH-0004lF-7D; Mon, 19 Apr 2021 08:54: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 1lYPgG-0003MA-UI; Mon, 19 Apr 2021 08:54:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYPgG-0002rB-Tp; Mon, 19 Apr 2021 08:54:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=N2czWRnmL7ZK+Kg5QG2x5nEXfXke8uHU0nzbFp12ALQ=; b=XcE9sCJKhs6NuIgYi3Tgf1a7nf
	IFWb28eXZ3h/lNdtZtiHEdQBJJ3JqpEH/DN47xz3kwjQ5SL1B8M6wRdpM7N21amT4at5l5eY7e3Bd
	gXoeopG7cchQNn0Njgj72OKYg17ZeSI54o47+BkCyrY0T5pJExgtlCUA7J/V5kCK72HA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161279-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161279: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:build-amd64:xen-build:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-amd64-pvgrub:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-i386-pvgrub:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-livepatch:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-livepatch:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-3:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-4:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-5:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 08:54:56 +0000

flight 161279 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161279/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64                   6 xen-build                fail REGR. vs. 159418

Tests which did not succeed, but are not blocking:
 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-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-xtf-amd64-amd64-1        1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  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-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-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
 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-amd64-pvgrub  1 build-check(1)               blocked  n/a
 test-amd64-amd64-i386-pvgrub  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-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-raw        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-amd64-i386-libvirt-pair  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-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 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   61 days
Failing since        160128  2021-03-18 14:36:18 Z   31 days   41 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   30 days   39 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  fail    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          blocked 
 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                                       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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 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                                 blocked 
 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                            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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                blocked 
 test-amd64-amd64-i386-pvgrub                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 09:12:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 09:12:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112729.214986 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYPxX-0003DD-Kb; Mon, 19 Apr 2021 09:12:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112729.214986; Mon, 19 Apr 2021 09: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 1lYPxX-0003D6-Hc; Mon, 19 Apr 2021 09:12:47 +0000
Received: by outflank-mailman (input) for mailman id 112729;
 Mon, 19 Apr 2021 09:12:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=euet=JQ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lYPxV-0003Cu-P9
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 09:12:45 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id bb84ad2f-0015-461e-b3c8-2e03172f841b;
 Mon, 19 Apr 2021 09:12:43 +0000 (UTC)
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 323921FB;
 Mon, 19 Apr 2021 02:12:43 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id D423D3F85F;
 Mon, 19 Apr 2021 02:12: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: bb84ad2f-0015-461e-b3c8-2e03172f841b
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH v2 0/3] Use Doxygen and sphinx for html documentation
Date: Mon, 19 Apr 2021 10:12:28 +0100
Message-Id: <20210419091231.55684-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1

This serie introduce doxygen in the sphinx html docs generation.
One benefit is to keep most of the documentation in the source
files of xen so that it's more maintainable, on the other hand
there are some limitation of doxygen that should be addressed
modifying the current codebase (for example doxygen can't parse
anonymous structure/union).

To reproduce the documentation xen must be compiled because
most of the headers are generated on compilation time from
the makefiles.

Here follows the steps to generate the sphinx html docs, some
package may be required on your machine, everything is suggested
by the autoconf script.
Here I'm building the arm64 docs (the only introduced for now by
this serie):

./configure
make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-" menuconfig
make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-"
make -C docs XEN_TARGET_ARCH="arm64" sphinx-html

now in docs/sphinx/html/ we have the generated docs starting
from the index.html page.


Luca Fancellu (3):
  docs: add doxygen support for html documentation
  docs: hypercalls sphinx skeleton for generated html
  docs/doxygen: doxygen documentation for grant_table.h

 .gitignore                                    |    7 +
 config/Docs.mk.in                             |    2 +
 docs/Makefile                                 |   51 +-
 docs/conf.py                                  |   48 +-
 docs/configure                                |  258 ++
 docs/configure.ac                             |   15 +
 docs/hypercall-interfaces/arm32.rst           |    4 +
 docs/hypercall-interfaces/arm64.rst           |   33 +
 .../arm64/grant_tables.rst                    |    8 +
 docs/hypercall-interfaces/index.rst.in        |    7 +
 docs/hypercall-interfaces/x86_64.rst          |    4 +
 docs/index.rst                                |    8 +
 docs/xen-doxygen/customdoxygen.css            |   36 +
 docs/xen-doxygen/doxy_input.list              |    1 +
 docs/xen-doxygen/doxy_input_template.in       |   21 +
 docs/xen-doxygen/footer.html                  |   21 +
 docs/xen-doxygen/header.html                  |   56 +
 docs/xen-doxygen/mainpage.md                  |    5 +
 docs/xen-doxygen/xen_project_logo_165x67.png  |  Bin 0 -> 18223 bytes
 docs/xen.doxyfile.in                          | 2314 +++++++++++++++++
 m4/ax_python_module.m4                        |   56 +
 m4/docs_tool.m4                               |    9 +
 xen/include/public/grant_table.h              |   97 +-
 23 files changed, 3021 insertions(+), 40 deletions(-)
 create mode 100644 docs/hypercall-interfaces/arm32.rst
 create mode 100644 docs/hypercall-interfaces/arm64.rst
 create mode 100644 docs/hypercall-interfaces/arm64/grant_tables.rst
 create mode 100644 docs/hypercall-interfaces/index.rst.in
 create mode 100644 docs/hypercall-interfaces/x86_64.rst
 create mode 100644 docs/xen-doxygen/customdoxygen.css
 create mode 100644 docs/xen-doxygen/doxy_input.list
 create mode 100644 docs/xen-doxygen/doxy_input_template.in
 create mode 100644 docs/xen-doxygen/footer.html
 create mode 100644 docs/xen-doxygen/header.html
 create mode 100644 docs/xen-doxygen/mainpage.md
 create mode 100644 docs/xen-doxygen/xen_project_logo_165x67.png
 create mode 100644 docs/xen.doxyfile.in
 create mode 100644 m4/ax_python_module.m4

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 09:12:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 09:12:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112730.214998 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYPxZ-0003EI-TX; Mon, 19 Apr 2021 09:12:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112730.214998; Mon, 19 Apr 2021 09:12: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 1lYPxZ-0003EB-Q5; Mon, 19 Apr 2021 09:12:49 +0000
Received: by outflank-mailman (input) for mailman id 112730;
 Mon, 19 Apr 2021 09:12:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=euet=JQ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lYPxX-0003D5-Gr
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 09:12:47 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id cb0aa968-21a3-4dc2-ad06-8fe080ea1b52;
 Mon, 19 Apr 2021 09:12:45 +0000 (UTC)
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 2EC95ED1;
 Mon, 19 Apr 2021 02:12:45 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 651063F85F;
 Mon, 19 Apr 2021 02:12: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: cb0aa968-21a3-4dc2-ad06-8fe080ea1b52
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH v2 1/3] docs: add doxygen support for html documentation
Date: Mon, 19 Apr 2021 10:12:29 +0100
Message-Id: <20210419091231.55684-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210419091231.55684-1-luca.fancellu@arm.com>
References: <20210419091231.55684-1-luca.fancellu@arm.com>

Add doxygen support to build html documentation with sphinx,
to do that the following modification are applied:

1) Modify docs/configure.ac and consequently configure script
   to check, through the ./configure script, the presence in
   the system of the sphinx-build binary, if it is found then
   it checks also the presence of the doxygen binary, breathe
   and sphinx-rtd-theme python packages.
   Doxygen and the packages are required only if sphinx-build
   is found, otherwise the Makefile will simply skip the
   sphinx html generation.
   The ax_python_module.m4 support is needed to check for
   python packages.
2) Add doxygen templates and configuration file
3) Modify docs/Makefile to call in sequence doxygen and
   sphinx-build, the doxygen configuration file will be
   modified to include the xen absolute path and
   a list of folder to check.
   A doxygen_input.h file is generated to include every
   header listed in the doxy_input.list file.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
v2 changes:
- Fix bug in Makefile when sphinx is not found in the system
---
 .gitignore                                   |    6 +
 config/Docs.mk.in                            |    2 +
 docs/Makefile                                |   47 +-
 docs/conf.py                                 |   48 +-
 docs/configure                               |  258 ++
 docs/configure.ac                            |   15 +
 docs/xen-doxygen/customdoxygen.css           |   36 +
 docs/xen-doxygen/doxy_input.list             |    0
 docs/xen-doxygen/doxy_input_template.in      |   21 +
 docs/xen-doxygen/footer.html                 |   21 +
 docs/xen-doxygen/header.html                 |   56 +
 docs/xen-doxygen/mainpage.md                 |    5 +
 docs/xen-doxygen/xen_project_logo_165x67.png |  Bin 0 -> 18223 bytes
 docs/xen.doxyfile.in                         | 2314 ++++++++++++++++++
 m4/ax_python_module.m4                       |   56 +
 m4/docs_tool.m4                              |    9 +
 16 files changed, 2888 insertions(+), 6 deletions(-)
 create mode 100644 docs/xen-doxygen/customdoxygen.css
 create mode 100644 docs/xen-doxygen/doxy_input.list
 create mode 100644 docs/xen-doxygen/doxy_input_template.in
 create mode 100644 docs/xen-doxygen/footer.html
 create mode 100644 docs/xen-doxygen/header.html
 create mode 100644 docs/xen-doxygen/mainpage.md
 create mode 100644 docs/xen-doxygen/xen_project_logo_165x67.png
 create mode 100644 docs/xen.doxyfile.in
 create mode 100644 m4/ax_python_module.m4

diff --git a/.gitignore b/.gitignore
index 1c2fa1530b..a5eebf1213 100644
--- a/.gitignore
+++ b/.gitignore
@@ -58,6 +58,12 @@ docs/man7/
 docs/man8/
 docs/pdf/
 docs/txt/
+docs/doxygen-output
+docs/sphinx
+docs/xen.doxyfile
+docs/xen.doxyfile.tmp
+docs/doxygen_input.h
+docs/doxygen_input.h.tmp
 extras/mini-os*
 install/*
 stubdom/*-minios-config.mk
diff --git a/config/Docs.mk.in b/config/Docs.mk.in
index e76e5cd5ff..dfd4a02838 100644
--- a/config/Docs.mk.in
+++ b/config/Docs.mk.in
@@ -7,3 +7,5 @@ POD2HTML            := @POD2HTML@
 POD2TEXT            := @POD2TEXT@
 PANDOC              := @PANDOC@
 PERL                := @PERL@
+SPHINXBUILD         := @SPHINXBUILD@
+DOXYGEN             := @DOXYGEN@
diff --git a/docs/Makefile b/docs/Makefile
index 8de1efb6f5..a736a1714f 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -17,6 +17,22 @@ TXTSRC-y := $(sort $(shell find misc -name '*.txt' -print))
 
 PANDOCSRC-y := $(sort $(shell find designs/ features/ misc/ process/ specs/ \( -name '*.pandoc' -o -name '*.md' \) -print))
 
+# Directory in which the doxygen documentation is created
+# This must be kept in sync with breathe_projects value in conf.py
+DOXYGEN_OUTPUT = doxygen-output
+
+# Doxygen input headers from xen-doxygen/doxy_input.list file
+DOXY_LIST_SOURCES != cat "xen-doxygen/doxy_input.list"
+DOXY_LIST_SOURCES := $(realpath $(addprefix $(XEN_ROOT)/,$(DOXY_LIST_SOURCES)))
+
+# Get folder path for all input headers and delete duplicates
+DOXY_LIST_DIRS := $(foreach inc,$(DOXY_LIST_SOURCES),$(dir $(realpath $(inc))))
+DOXY_LIST_DIRS := $(sort $(DOXY_LIST_DIRS))
+
+DOXY_DEPS := xen.doxyfile \
+			 xen-doxygen/mainpage.md \
+			 doxygen_input.h
+
 # Documentation targets
 $(foreach i,$(MAN_SECTIONS), \
   $(eval DOC_MAN$(i) := $(patsubst man/%.$(i),man$(i)/%.$(i), \
@@ -46,8 +62,29 @@ all: build
 build: html txt pdf man-pages figs
 
 .PHONY: sphinx-html
-sphinx-html:
-	sphinx-build -b html . sphinx/html
+sphinx-html: $(DOXY_DEPS) $(DOXY_LIST_SOURCES)
+ifneq ($(SPHINXBUILD),no)
+	$(DOXYGEN) xen.doxyfile
+	XEN_ROOT=$(realpath $(XEN_ROOT)) $(SPHINXBUILD) -b html . sphinx/html
+else
+	@echo "Sphinx is not installed; skipping sphinx-html documentation."
+endif
+
+xen.doxyfile: xen.doxyfile.in xen-doxygen/doxy_input.list
+	@echo "Generating $@"
+	@sed -e "s,@XEN_BASE@,$(realpath $(XEN_ROOT)),g" $< \
+		| sed -e "s,@DOXY_OUT@,$(DOXYGEN_OUTPUT),g" > $@.tmp
+	@$(foreach dir,\
+		$(DOXY_LIST_DIRS),\
+		echo "INCLUDE_PATH += \"$(dir)\"" >> $@.tmp; \
+	)
+	mv $@.tmp $@
+
+doxygen_input.h: xen-doxygen/doxy_input_template.in xen-doxygen/doxy_input.list
+	@echo "Generating $@"
+	@sed -e "s,@XEN_BASE@,$(realpath $(XEN_ROOT)),g" $< > $@.tmp
+	@$(foreach inc,$(DOXY_LIST_SOURCES),cat "$(inc)" >> $@.tmp;)
+	@mv $@.tmp $@
 
 .PHONY: html
 html: $(DOC_HTML) html/index.html
@@ -71,7 +108,11 @@ clean: clean-man-pages
 	$(MAKE) -C figs 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
+	rm -rf html txt pdf sphinx $(DOXYGEN_OUTPUT)
+	rm -f xen.doxyfile
+	rm -f xen.doxyfile.tmp
+	rm -f doxygen_input.h
+	rm -f doxygen_input.h.tmp
 
 .PHONY: distclean
 distclean: clean
diff --git a/docs/conf.py b/docs/conf.py
index 50e41501db..a48de42331 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -13,13 +13,17 @@
 # add these directories to sys.path here. If the directory is relative to the
 # documentation root, use os.path.abspath to make it absolute, like shown here.
 #
-# import os
-# import sys
+import os
+import sys
 # sys.path.insert(0, os.path.abspath('.'))
 
 
 # -- Project information -----------------------------------------------------
 
+if "XEN_ROOT" not in os.environ:
+    sys.exit("$XEN_ROOT environment variable undefined.")
+XEN_ROOT = os.path.abspath(os.environ["XEN_ROOT"])
+
 project = u'Xen'
 copyright = u'2019, The Xen development community'
 author = u'The Xen development community'
@@ -35,6 +39,7 @@ try:
             xen_subver = line.split(u"=")[1].strip()
         elif line.startswith(u"export XEN_EXTRAVERSION"):
             xen_extra = line.split(u"=")[1].split(u"$", 1)[0].strip()
+
 except:
     pass
 finally:
@@ -44,6 +49,15 @@ finally:
     else:
         version = release = u"unknown version"
 
+try:
+    xen_doxygen_output = None
+
+    for line in open(u"Makefile"):
+        if line.startswith(u"DOXYGEN_OUTPUT"):
+                xen_doxygen_output = line.split(u"=")[1].strip()
+except:
+    sys.exit("DOXYGEN_OUTPUT variable undefined.")
+
 # -- General configuration ---------------------------------------------------
 
 # If your documentation needs a minimal Sphinx version, state it here.
@@ -53,7 +67,8 @@ needs_sphinx = '1.4'
 # Add any Sphinx extension module names here, as strings. They can be
 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
 # ones.
-extensions = []
+# breathe -> extension that integrates doxygen xml output with sphinx
+extensions = ['breathe']
 
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']
@@ -175,6 +190,33 @@ texinfo_documents = [
      'Miscellaneous'),
 ]
 
+# -- Options for Breathe extension -------------------------------------------
+
+breathe_projects = {
+    "Xen": "{}/docs/{}/xml".format(XEN_ROOT, xen_doxygen_output)
+}
+breathe_default_project = "Xen"
+
+breathe_domain_by_extension = {
+    "h": "c",
+    "c": "c",
+}
+breathe_separate_member_pages = True
+breathe_show_enumvalue_initializer = True
+breathe_show_define_initializer = True
+
+# Qualifiers to a function are causing Sphihx/Breathe to warn about
+# Error when parsing function declaration and more.  This is a list
+# of strings that the parser additionally should accept as
+# attributes.
+cpp_id_attributes = [
+    '__syscall', '__deprecated', '__may_alias',
+    '__used', '__unused', '__weak',
+    '__DEPRECATED_MACRO', 'FUNC_NORETURN',
+    '__subsystem',
+]
+c_id_attributes = cpp_id_attributes
+
 
 # -- Options for Epub output -------------------------------------------------
 
diff --git a/docs/configure b/docs/configure
index 569bd4c2ff..0ebf046a79 100755
--- a/docs/configure
+++ b/docs/configure
@@ -588,6 +588,8 @@ ac_unique_file="misc/xen-command-line.pandoc"
 ac_subst_vars='LTLIBOBJS
 LIBOBJS
 PERL
+DOXYGEN
+SPHINXBUILD
 PANDOC
 POD2TEXT
 POD2HTML
@@ -673,6 +675,7 @@ POD2MAN
 POD2HTML
 POD2TEXT
 PANDOC
+DOXYGEN
 PERL'
 
 
@@ -1318,6 +1321,7 @@ Some influential environment variables:
   POD2HTML    Path to pod2html tool
   POD2TEXT    Path to pod2text tool
   PANDOC      Path to pandoc tool
+  DOXYGEN     Path to doxygen tool
   PERL        Path to Perl parser
 
 Use these variables to override the choices made by `configure' or to help
@@ -1800,6 +1804,7 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
 
+
 case "$host_os" in
 *freebsd*) XENSTORED_KVA=/dev/xen/xenstored ;;
 *) XENSTORED_KVA=/proc/xen/xsd_kva ;;
@@ -1812,6 +1817,53 @@ case "$host_os" in
 esac
 
 
+# ===========================================================================
+#     https://www.gnu.org/software/autoconf-archive/ax_python_module.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_PYTHON_MODULE(modname[, fatal, python])
+#
+# DESCRIPTION
+#
+#   Checks for Python module.
+#
+#   If fatal is non-empty then absence of a module will trigger an error.
+#   The third parameter can either be "python" for Python 2 or "python3" for
+#   Python 3; defaults to Python 3.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Andrew Collier
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved. This file is offered as-is, without any
+#   warranty.
+
+#serial 9
+
+# This is what autoupdate's m4 run will expand.  It fires
+# the warning (with _au_warn_XXX), outputs it into the
+# updated configure.ac (with AC_DIAGNOSE), and then outputs
+# the replacement expansion.
+
+
+# This is an auxiliary macro that is also run when
+# autoupdate runs m4.  It simply calls m4_warning, but
+# we need a wrapper so that each warning is emitted only
+# once.  We break the quoting in m4_warning's argument in
+# order to expand this macro's arguments, not AU_DEFUN's.
+
+
+# Finally, this is the expansion that is picked up by
+# autoconf.  It tells the user to run autoupdate, and
+# then outputs the replacement expansion.  We do not care
+# about autoupdate's warning because that contains
+# information on what to do *after* running autoupdate.
+
+
 
 
 test "x$prefix" = "xNONE" && prefix=$ac_default_prefix
@@ -2232,6 +2284,212 @@ $as_echo "$as_me: WARNING: pandoc is not available so some documentation won't b
 fi
 
 
+# If sphinx is installed, make sure to have also the dependencies to build
+# Sphinx documentation.
+for ac_prog in sphinx-build
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_SPHINXBUILD+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$SPHINXBUILD"; then
+  ac_cv_prog_SPHINXBUILD="$SPHINXBUILD" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_SPHINXBUILD="$ac_prog"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+SPHINXBUILD=$ac_cv_prog_SPHINXBUILD
+if test -n "$SPHINXBUILD"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SPHINXBUILD" >&5
+$as_echo "$SPHINXBUILD" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+  test -n "$SPHINXBUILD" && break
+done
+test -n "$SPHINXBUILD" || SPHINXBUILD="no"
+
+    if test "x$SPHINXBUILD" = xno; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: sphinx-build is not available so sphinx documentation \
+won't be built" >&5
+$as_echo "$as_me: WARNING: sphinx-build is not available so sphinx documentation \
+won't be built" >&2;}
+else
+
+            # Extract the first word of "sphinx-build", so it can be a program name with args.
+set dummy sphinx-build; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_SPHINXBUILD+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $SPHINXBUILD in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SPHINXBUILD="$SPHINXBUILD" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SPHINXBUILD="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+SPHINXBUILD=$ac_cv_path_SPHINXBUILD
+if test -n "$SPHINXBUILD"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SPHINXBUILD" >&5
+$as_echo "$SPHINXBUILD" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+
+
+    # Extract the first word of "doxygen", so it can be a program name with args.
+set dummy doxygen; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_DOXYGEN+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $DOXYGEN in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_DOXYGEN="$DOXYGEN" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_DOXYGEN="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+DOXYGEN=$ac_cv_path_DOXYGEN
+if test -n "$DOXYGEN"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DOXYGEN" >&5
+$as_echo "$DOXYGEN" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+    if ! test -x "$ac_cv_path_DOXYGEN"; then :
+
+        as_fn_error $? "doxygen is needed" "$LINENO" 5
+
+fi
+
+
+    if test -z $PYTHON;
+    then
+        if test -z "";
+        then
+            PYTHON="python3"
+        else
+            PYTHON=""
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking $PYTHON_NAME module: breathe" >&5
+$as_echo_n "checking $PYTHON_NAME module: breathe... " >&6; }
+    $PYTHON -c "import breathe" 2>/dev/null
+    if test $? -eq 0;
+    then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        eval HAVE_PYMOD_BREATHE=yes
+    else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+        eval HAVE_PYMOD_BREATHE=no
+        #
+        if test -n "yes"
+        then
+            as_fn_error $? "failed to find required module breathe" "$LINENO" 5
+            exit 1
+        fi
+    fi
+
+
+    if test -z $PYTHON;
+    then
+        if test -z "";
+        then
+            PYTHON="python3"
+        else
+            PYTHON=""
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking $PYTHON_NAME module: sphinx_rtd_theme" >&5
+$as_echo_n "checking $PYTHON_NAME module: sphinx_rtd_theme... " >&6; }
+    $PYTHON -c "import sphinx_rtd_theme" 2>/dev/null
+    if test $? -eq 0;
+    then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        eval HAVE_PYMOD_SPHINX_RTD_THEME=yes
+    else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+        eval HAVE_PYMOD_SPHINX_RTD_THEME=no
+        #
+        if test -n "yes"
+        then
+            as_fn_error $? "failed to find required module sphinx_rtd_theme" "$LINENO" 5
+            exit 1
+        fi
+    fi
+
+
+
+fi
+
 
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
diff --git a/docs/configure.ac b/docs/configure.ac
index c2e5edd3b3..a2ff55f30a 100644
--- a/docs/configure.ac
+++ b/docs/configure.ac
@@ -20,6 +20,7 @@ m4_include([../m4/docs_tool.m4])
 m4_include([../m4/path_or_fail.m4])
 m4_include([../m4/features.m4])
 m4_include([../m4/paths.m4])
+m4_include([../m4/ax_python_module.m4])
 
 AX_XEN_EXPAND_CONFIG()
 
@@ -29,6 +30,20 @@ AX_DOCS_TOOL_PROG([POD2HTML], [pod2html])
 AX_DOCS_TOOL_PROG([POD2TEXT], [pod2text])
 AX_DOCS_TOOL_PROG([PANDOC], [pandoc])
 
+# If sphinx is installed, make sure to have also the dependencies to build
+# Sphinx documentation.
+AC_CHECK_PROGS([SPHINXBUILD], [sphinx-build], [no])
+    AS_IF([test "x$SPHINXBUILD" = xno],
+        [AC_MSG_WARN(sphinx-build is not available so sphinx documentation \
+won't be built)],
+        [
+            AC_PATH_PROG([SPHINXBUILD], [sphinx-build])
+            AX_DOCS_TOOL_REQ_PROG([DOXYGEN], [doxygen])
+            AX_PYTHON_MODULE([breathe],[yes])
+            AX_PYTHON_MODULE([sphinx_rtd_theme], [yes])
+        ]
+    )
+
 AC_ARG_VAR([PERL], [Path to Perl parser])
 AX_PATH_PROG_OR_FAIL([PERL], [perl])
 
diff --git a/docs/xen-doxygen/customdoxygen.css b/docs/xen-doxygen/customdoxygen.css
new file mode 100644
index 0000000000..4735e41cf5
--- /dev/null
+++ b/docs/xen-doxygen/customdoxygen.css
@@ -0,0 +1,36 @@
+/* Custom CSS for Doxygen-generated HTML
+ * Copyright (c) 2015 Intel Corporation
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+code {
+  font-family: Monaco,Menlo,Consolas,"Courier New",monospace;
+  background-color: #D8D8D8;
+  padding: 0 0.25em 0 0.25em;
+}
+
+pre.fragment {
+  display: block;
+  font-family: Monaco,Menlo,Consolas,"Courier New",monospace;
+  padding: 1rem;
+  word-break: break-all;
+  word-wrap: break-word;
+  white-space: pre;
+  background-color: #D8D8D8;
+}
+
+#projectlogo
+{
+  vertical-align: middle;
+}
+
+#projectname
+{
+  font: 200% Tahoma, Arial,sans-serif;
+  color: #3D578C;
+}
+
+#projectbrief
+{
+  color: #3D578C;
+}
diff --git a/docs/xen-doxygen/doxy_input.list b/docs/xen-doxygen/doxy_input.list
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/docs/xen-doxygen/doxy_input_template.in b/docs/xen-doxygen/doxy_input_template.in
new file mode 100644
index 0000000000..fc7565ab5b
--- /dev/null
+++ b/docs/xen-doxygen/doxy_input_template.in
@@ -0,0 +1,21 @@
+#define __XEN__
+
+#include "@XEN_BASE@/xen/include/xen/config.h"
+
+#if defined(CONFIG_X86_64)
+
+#define __x86_64__ 1
+
+#elif defined(CONFIG_ARM_64)
+
+#define __aarch64__ 1
+
+#elif defined(CONFIG_ARM_32)
+
+#define __arm__ 1
+
+#else
+
+#error Architecture not supported/recognized.
+
+#endif
diff --git a/docs/xen-doxygen/footer.html b/docs/xen-doxygen/footer.html
new file mode 100644
index 0000000000..a24bf2b9b4
--- /dev/null
+++ b/docs/xen-doxygen/footer.html
@@ -0,0 +1,21 @@
+<!-- HTML footer for doxygen 1.8.13-->
+<!-- start footer part -->
+<!--BEGIN GENERATE_TREEVIEW-->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    $navpath
+    <li class="footer">$generatedby
+    <a href="http://www.doxygen.org/index.html">
+    <img class="footer" src="$relpath^doxygen.png" alt="doxygen"/></a> $doxygenversion </li>
+  </ul>
+</div>
+<!--END GENERATE_TREEVIEW-->
+<!--BEGIN !GENERATE_TREEVIEW-->
+<hr class="footer"/><address class="footer"><small>
+$generatedby &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="$relpath^doxygen.png" alt="doxygen"/>
+</a> $doxygenversion
+</small></address>
+<!--END !GENERATE_TREEVIEW-->
+</body>
+</html>
diff --git a/docs/xen-doxygen/header.html b/docs/xen-doxygen/header.html
new file mode 100644
index 0000000000..83ac2f1835
--- /dev/null
+++ b/docs/xen-doxygen/header.html
@@ -0,0 +1,56 @@
+<!-- HTML header for doxygen 1.8.13-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen $doxygenversion"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<!--BEGIN PROJECT_NAME--><title>$projectname: $title</title><!--END PROJECT_NAME-->
+<!--BEGIN !PROJECT_NAME--><title>$title</title><!--END !PROJECT_NAME-->
+<link href="$relpath^tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="$relpath^jquery.js"></script>
+<script type="text/javascript" src="$relpath^dynsections.js"></script>
+$treeview
+$search
+$mathjax
+<link href="$relpath^$stylesheet" rel="stylesheet" type="text/css" />
+$extrastylesheet
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+
+<!--BEGIN TITLEAREA-->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <!--BEGIN PROJECT_LOGO-->
+  <td id="projectlogo"><img alt="Logo" src="$relpath^$projectlogo"/></td>
+  <!--END PROJECT_LOGO-->
+  <!--BEGIN PROJECT_NAME-->
+  <td id="projectalign" style="padding-left: 1em;">
+   <div id="projectname">$projectname
+   <!--BEGIN PROJECT_NUMBER-->&#160;<span id="projectnumber">$projectnumber</span><!--END PROJECT_NUMBER-->
+   </div>
+   <!--BEGIN PROJECT_BRIEF--><div id="projectbrief">$projectbrief</div><!--END PROJECT_BRIEF-->
+  </td>
+  <!--END PROJECT_NAME-->
+  <!--BEGIN !PROJECT_NAME-->
+   <!--BEGIN PROJECT_BRIEF-->
+    <td style="padding-left: 0.5em;">
+    <div id="projectbrief">$projectbrief</div>
+    </td>
+   <!--END PROJECT_BRIEF-->
+  <!--END !PROJECT_NAME-->
+  <!--BEGIN DISABLE_INDEX-->
+   <!--BEGIN SEARCHENGINE-->
+   <td>$searchbox</td>
+   <!--END SEARCHENGINE-->
+  <!--END DISABLE_INDEX-->
+ </tr>
+ </tbody>
+</table>
+</div>
+<!--END TITLEAREA-->
+<!-- end header part -->
diff --git a/docs/xen-doxygen/mainpage.md b/docs/xen-doxygen/mainpage.md
new file mode 100644
index 0000000000..ff548b87fc
--- /dev/null
+++ b/docs/xen-doxygen/mainpage.md
@@ -0,0 +1,5 @@
+# API Documentation   {#index}
+
+## Introduction
+
+## Licensing
diff --git a/docs/xen-doxygen/xen_project_logo_165x67.png b/docs/xen-doxygen/xen_project_logo_165x67.png
new file mode 100644
index 0000000000000000000000000000000000000000..7244959d59cdeb9f23c5202160ea45508dfc7265
GIT binary patch
literal 18223
zcmV+NKn=f%P)<h;3K|Lk000e1NJLTq005-`002V>1^@s6{Wir#00004XF*Lt006O$
zeEU(80000WV@Og>004&%004{+008|`004nN004b?008NW002DY000@xb3BE2000U(
zX+uL$P-t&-Z*ypGa3D!TLm+T+Z)Rz1WdHz3$DNjUR8-d%htIutdZEoQ0#b(FyTAa_
zdy`&8VVD_UC<6{NG_fI~0ue<-nj%P0#DLLIBvwSR5EN9f2P6n6F&ITuEN@2Ei>|D^
z_ww@l<E(G(v-i3C?7h!g7XXr{FPE1FO97C|6YzsPoaqsfQFQD8fB_z0fGGe>Rz|vC
zuzLs)$;-`!o*{AqUjza0dRV*yaMRE;fKCVhpQKsoe1Yhg01=zBIT<Vw7l=3|OOP(M
z&x)8Dmn>!&C1$=TK@rP|Ibo3vKKm@PqnO#LJhq6%Ij6Hz*<$V$@wQAMN5qJ)hzm2h
zoGcOF60t^#FqJFfH{#e-4l@G)6iI9sa9D{VHW4w29}?su;^hF~NC{tY+*d5%WDCTX
za!E_i;d2ub1#}&jF5T4HnnCyEWTkKf0>c0%E1Ah>(_PY1)0w;+02c53Su*0<(nUqK
zG_|(0G&D0Z{i;y^b@OjZ+}lNZ8Th$p5Uu}<?XUdO8USF-iE6X+i!H7SfX*!d$ld#5
z(>MTtq^NHl*T1?CO*}7&0ztZsv2j*bmJyf3G7=Z`5B*PvzoD<bXCyxEkMhu6Iq^(k
zihwSz8!Ig(O~|Kbq%&C@y5XOP_#X%Ubsh#moOlkO!xKe>iKdLpOAxi2$L0#SX*@cY
z_n(^h55xYX#km%V()bZjV~l{*bt*u9?FT3d5g^g~#a;iSZ@&02Abxq_DwB(I|L-^b
zXThc7C4-yrInE_0gw7K3GZ**7&k~>k0Z0NWkO#^@9q0f<U<Ry!EpP;Gz#I635D*Dg
z0~SaGseli%Kpxlx3PCa03HE?$PzM@8GiU|JK_@r`&Vx(f8n^*&gZp3<On_%#7Q6-v
z5CmZ%GDLyoAr(jy(ud3-24oMpLB3EB6bZ#b2@nqwLV3_;s2D1Ps-b$Q8TuYN37v<o
zK!ea-XbhT$euv({2uy;huoA2V8^a9P3HE_Q;8kz}yavvN3*a4aCENfXg*)K$@HO~0
zJPJR9=MaDp5gMY37$OYB1@T9ska&cTtVfEF3ZwyPMY@qb<R&tT%ph-37!(CXM;W4Q
zQJ$z!6brQmwH{T1szx0~b)b4tH&J7#S=2`~8Lf!cN86yi&=KeabQZc0U4d>wx1%qj
zZ=)yBuQ3=54Wo^*!gyjLF-e%Um=erBOdIALW)L%unZshS@>qSW9o8Sq#0s#5*edK%
z>{;v(b^`kbN5rY%%y90wC>#%$kE_5P!JWYk;U;klcqzOl-UjcFXXA75rT9jCH~u<)
z0>40zCTJ7v2qA<d!X`o`p_Oov@PP1=NF=Het%-p|E^#BVl6Z`GnK(v#OOhe!kz7d8
zBq3=B=@980=`QIdnM~FqJCdWw0`d-WGx-Af5&4Y-MZ!qJOM)%2L83;YLt;qcxg=gv
zQ_@LtwPdbjh2#mz>yk54cquI@7b&LHdZ`+zlTss6bJ7%PQ)z$cROu4wBhpu-r)01)
zS~6}jY?%U?gEALn#wiFzo#H}aQ8rT=DHkadR18&{>P1bW7E`~Y4p3)hWn`DhhRJ5j
z*2tcg9i<^OEt(fCg;q*CP8+7ZTcWhYX$fb^_9d-LhL+6BEtPYW<H!}swaML<dnZqq
zcau++-zDEE|4;#?pr;V1kfpF+;iAIKQtDFMrL3hzOOG$TrwA+RDF!L7RXnKJuQ;cq
ztmL7Tu2iLTL1{*rrtGMkq+G6iMtNF=qGGSYRVi0FtMZgCOLwBD&@1V^^jTF!RZmr+
zYQ5@!>VlfKTBusSTASKKb%HuWJzl+By+?gkLq)?+BTu76<DMp7lcAZYxmUAKb6!hZ
zD_m=<R;SjKww$(?cCL1d_5&TVj)Tq`od%s-x)@!CZnEw^-5Ywao`qhbUX9*$eOTX8
zpR2!5f6xGJU~RxNXfPNtBpEsxW*W8_jv3L6e2wyrI*pziYZylv?=tQ){%B%hl48<m
za^F<O)Y~-QwA=J|Gd(kwS&i8(bF#U+`3CbY^B2qXmvNTuUv|fWV&P}8)uPAZgQb-v
z-?G(m+DgMJ)~eQOgh6ElFiIGgt<l!b)*Gx(S--Whv=P`GxB1Q1&^Foji0#yJ?d6>1
zjmyXF)a;mc^>(B7bo*HQ1NNg1st!zt28YLv>W*y3CdWx9U8f|cqfXDAO`Q48?auQq
zHZJR2&bcD49<D{M18y>Ip>EY~kKEPV6Wm+eXFV)D)_R=tM0@&p?(!V*Qu1PXHG9o^
zTY0bZ?)4%01p8F`JoeS|<@<K~!G7L;yZs)l&|JY=(diHTz5I9kKMc?gSQGGLASN&%
zuqN<HkZDj}P+u@5I41Z=@aqugkkXL*p*o?$(4H{Ku;{Snu=#M;@UrmH2;+!#5!WIW
zBDs-WQP`-ksHUj7m2NBdtel9ph%SsCUZuS%d)1ZI3ae9ApN^4?VaA+@MaPE69*KR=
z^k+6O=i<ELYU5^EF08$*XKY7yIeVI8$0_4X#@of0#ZM*JCG1X^PIO4DNSxuiaI3j5
zl01{@lID~BlMf|-N(oPCOU0$erk>=<@RE7GY07EYX@lwd>4oW|Yi!o+Su@M`;WuSK
z8LKk71XR(_RKHM1xJ5XYX`fk>`6eqY>qNG6HZQwBM=xi4&Sb88?zd}EYguc1@>KIS
z<&CX#T35dwS|7K*XM_5Nf(;WJJvJWRMA($P>8E^?{IdL4o5MGE7bq2MEEwP7v8AO@
zqL5!WvekBL-8R%V?zVyL=G&{be=K4bT`e{#t|)$A!YaA?jp;X)-+bB;zhj`(vULAW
z%ue3U;av{94wp%n<(7@__S@Z2PA@Mif3+uO&y|X06?J<Fdxd*PD}5`wsx+#0R=uxI
ztiE02T+>#oSi8M;ejj_^(0<4Lt#wLu#dYrva1Y$6_o(k^&}yhSh&h;f@JVA>W8b%o
zZ=0JGnu?n~9O4}sJsfnnx7n(>`H13?(iXTy*fM=I`sj`CT)*pTHEgYKqqP+u1IL8N
zo_-(u{qS+0<2@%BCt82d{Gqm;(q7a7b>wu+b|!X?c13m#p7cK1({0<`{-e>4hfb-U
zsyQuty7Ua;Ou?B?XLHZaol8GAb3Wnxcu!2v{R<HnZuJKC4qWuPc=?k1r3-ydeP=J*
zT|RZi=E}*djH{j3EU$I+TlBa8Wbsq`faO5Pb*t-LH>_`T4=x`(GvqLI{-*2AOSimk
zUAw*F_TX^n@STz9k<mNsJ5zU4?!LH}d2iwV#s}yJMGvJORy<OC)bO+J&uycYqo>DQ
z$NC=!KfXWC8h`dn#xL(D3Z9UkR7|Q&Hcy#Notk!^zVUSB(}`#4&lYA1f0h2V_PNgU
zAAWQEt$#LRcH#y9#i!p(Udq2b^lI6wp1FXzN3T;~FU%Lck$-deE#qz9yYP3D3t8{6
z?<+s(e(3(_^YOu_)K8!O1p}D#{JO;G(*OVf32;bRa{vGf4*&oQ4*`<-1El}}02*{f
zSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv002BXNkl<ZcwX&&2Ur%z_P#e7
z6Qi+fqA~V@E%vU7y^D&10wPTTDJm);MHEC76-DVCL_kmw?7jDbz4s2N*c<Kq-*@37
z#Au5Dn|t;CJm2#^yWj4#-8pmSoS8GTMLrU$3Dg1V0S)qxwSgKyRp2vyrhkMg0%Wkd
zKntJ?&<p4b^aln21A#&LNB-{z@P1FA6VMc>1$+-w06x=a`rA|vr~**(wFP<rWHvJ1
z+fW~4G{)LwjHRuWrIk&K7A;2c+FM}=GH^GbB|rwP43q&r(`WiaDhp7WH3WVE3K+3O
zi4q#qr%!j?xN+0UGiS~ozkBEIovf@Z$;`}>#~E32=hh>6`k4PSh1Z`vdHU@7wd+^*
z?%lU7ARy4EXV0EvkdBI3DMdQ~?D{JKrGd}%nSMu<T$GGI14?&XzI^%No}LTlpE-Rt
z<;|PSY>>im&!4}Ld-qc1+`03zf8TytnYc<qg2QFa>h*H?@DaIi{(_{Yrpb#JFO=|E
zS&WyBYw34aC9jU}(WB>Bq)!HAH&01S-IQv=XXgA&3Y7=gowf(q#gZ8{6ILWFefi?m
zi=3QX0Yl2ehmXK)mt@z@J(7@+D3Oto;^X5hvuDqiY15{Ot*xy<lFGb!^CU1ZP-3EE
zWYwxwvTxr3xpe7@JbLs*NhdoyM{=@r1&n@V`0(LY$dAm~2WSQS2vBwS2KY?>M~Pi0
zyJ{LP>{f?_hJ^ZOJbd&pCtJWoSqd}Vx^-JFT(}^|jvWJ&?UVKE*GpVnoP>mg$btn6
z#MRYRoSd9w)~s2wXwf1G4GmT9uUofHcJACMM~)m(q$;H=r7RgUH%EZnoC60AZ12*g
zi>hm<?n*13#!yM%GyNYTc9XQIX-!i)4t92);db|K>g{Yuu}m=I^Jg!?kdGxJ;}N9f
zLon1mxpL)-!eC@hV)N$Bl9-q$HOYuPMn^}>#*G_g|Ni}Q>eMMoNlB3tCr-%Kt5+pG
zJzbtXd!}^hxw%q6Z$O(iZAz|MwdzQeh5BY=fDPs|WBwl@TD;W(4%JY19GaB4CNc9(
zj=X-IDNmm~lSdhk!IaMxqa_#IL*0-Jb?Ve<*}8SBczJor`0?XKPft$<4<0PNdi4@W
zJL%rNy9^jGKr}Tq#n8}Drc9Y4OO`B=-Me?o_3Jla{5+9YuU<(`4#ec!1SY+E_wLO;
zefn6SOl&C4fbW1(z-Rg&CQ3*e6|}6?t5m6?bNJBllxI(0%Hzk+APv*xe)@fMvCkDg
zfdG@+w{I)bjuJ6EJY2lJy~V}FMXar@MPFZEh7KJny?ghTK7IO1zkdBiU0q#9j2Iy%
zCMF6~y1BW@;>C-VxLdYtQKT&;<=e#WoV@zv@zZCMCQX`w@=={=18_9pGh_ab(zgI5
zq{5KhyY;lVaQ^C@jEtv}mYObCuUu2QXi7yg<;|Nnm9Co1xMIZ$S+;DM!dQO3{^IB`
zJ=Z|rI9o?&RF<xe?kgiBqvvL3X3xNg&kPI<UXB_yI!jN_AZv`VY4)sH9=V~RVM@22
zl$0bJHf&JzQb@&ob|f?AD2z&7Q&AsYXJ>~5hlZe>LjW=+M+QE3<^N;E3jG1-45({q
zYTI49c;i`m+5@?M?WUYPdrofL$m?Ej-MXbPV@ynp0vap{2?^rk?U!w3W&Og`)HD@F
z&FO^;7j6#-2uO&ChzO63ja{^S`SN+d0x)kdbj!G)prDN~dX6|dJ6{LGKD4#5e-#(E
zJcs%w^hZVSgps4D1srN(xBl|QOQ;ZU6f6Dps~lOgYQt)jmyF2)cMchSw#xs9h(-e?
z&Y*T}J6N1Je(uT58@J`mnR9aZ@L@TB{=6a?j~+cLU@Qp^4i+$*BHe-lgR;#`&F+B_
zkDwcl0mIEmPEOX}yLayZ#Os!kk<kgdXFCYIHbC2#FJE?q6#V(@*|WV49z3WC2AqI2
zef|CYx7yp=UqaXXaMh|+xog+16{I68SFThHB1&ka1tz@@!zx3bK79e*_N4^+M?|CC
zg8>>p94`7A_)MQT(Xin#OaH1>f6(8yWpC=GOIM*M9#@8Is4tQ!XpH#!`YQULpP!!u
z2ZiRKJ5B{7?E^zCTC--2{^`@FyMcLHg83Q(wSj5?8U8nvf4vsa0B8mY+#Y!hg>;+_
zD}4iW%?m&V8Ip{z=$o6j$b$zD6dm^Z_3M%f{WedMr-`$Zn=g{3Rn8e8>cw9HpXn1N
zcH7h=y92`m1D700NjWLowr&@6xys-+CDzKsmCE3^gM)+2m@z}_Y#m>Y9z8k*U2iCu
z)Er%MA9UgEAw8QQ9Zp4l`>%if>r2qTaQ>Hw3<@dQ77}#mx^?T^U@&b4)1M0q4a??O
zCk-M>=rd=|$e}}rWbfX6N@F>C<hX3#y8m^H=B*r&3`Yytz-atXY8D2|#Rm8d%2pJ|
z&-9TJ2ccU7LoCfFM{U@!4NSORJUl$a#>Pe_PoAs{?a+EAIK0!P%P%i*epy>vdn*i>
zXhTE85HP48ENu@0hRkepb92YirAt#CC=15?f*Ji40%MlUXU+~MPMk1>L{8|^rOR18
zJ-y6f!-mPAL4#!M*s;ni5od>-ojF4^UuHPFilxQGr~Uf%OGda59UUDn#F?)u6Jcy@
z>}G9kJsD~SJ(EiQod)xn{&Per$?3zs)vMPu3k!*UwPVLlRQ3#6jBfh;wQJyy52wiJ
z=mSW*Go(_fzsmrShV{I>yn3svt1m<so{^vA2h$}OX%~TA2M*jEpsqd?S^TZW@|pf~
zL@7yWHr(EB=CKXyH^Ycop)e(-ViYXvOV_W-g{xQO<oR=wa_XcUIe9{k0z7{o&R)8x
zFhWjFPOi4D?oy=Rv}n<y#hKxs5t$c63%XI)u3cwdzI^#H(>j0U@;mb)SRR&(;D46&
z+~rG3*)QF=ro=sa`68wNm69b(+9K^1#flaC_A^s{e8h^U_jm7>E!xfSobMx>Hg1uH
z3l}PL)n;a9^1}~5$lm??<=*}KayLC)uEW5%1nGJ4>Q%W6L*tK-@${*}nAdLKe$}v1
zqp8T}M=-%3>T&r@LY=R}gb5R(pFMl_hG|@d)z5t2m5-`CJTlzPyLXlHrote)hce&7
z|C1+A=4feYokO~AKriI;1MoHQx%>Xeh)VxYfaVw@t204?q2li!AfBF{io*mQCu-HI
zC2DGFas?Hhp7Btgym+qQ;giSm;PE3c-V+6no;@vq>KgB>Xz$*=cae_<Q2u?4kk61D
z0Pi0X5^^v<s-!)9pybUwRe7oMC|nMf>*>oE%6(o-y`QdF>6<of%4*oK;Sr=uhU|}g
zY6Fy#pADUlj5v-*ukmgT)tXGRpX!pEup&`mM7otxTEb9~jvYJ7_uqdn0|yR#miFMj
zJVNEa%zPu9m8P%6`#@rtOwJ4D)BO4KRr=*Og&C9QUwrWeyY`yZt5+X;@ZiB4`BCH<
znCx|SmXa2!aQcPw%go7^7jIt4Q#P9C&*Wi7hB9Qdc=6&_Ft#=!Z5yZ$oskzMWC`GN
zxBU?k4IDb_4$&B*y~AUUrvwHD%gmWG6{hs_^^+bwdMM5l9ou(G{pzc)b~-ydKL$zm
zyBsC{0%c`o<!ESVa9U6e4Duxlk<Xkg%TF+9Jnr4Qm)GZi0OjQ7%Inv!mD!(j=g!d)
zBp2!K0<57wwgtXJe#P_i{7fGqad5c_D$3AgjMcM{kZ_qc%~|nz<X9jbDY|v*CPRm6
z<o4^=FQ8AKJ~I$DCN?(q1>MT%74#u=^XAPLwQJWNkG!jbIf~)PvBNHoj*f}1UcLIg
z2gY9{&Wm%lhjZn-cI}ep&6~>)RjZ3ygGO7?0Qvw`07Zv{RHl?<PeJvC9!4Ca<p>19
zbE*)fAkm9`3=GV2;6VMK<t0?(tsHCRz5f}aCwcpynzr(?w3s9zAz?COhKtgD)8&j3
z5|*zF)6lwUV`DSU-rl}<<;s=E0Lgpy?8zbnd?;gX+qUgG^5&3?T8R=RhQ-Cj9nZh@
zLBu(6N^nkr(pR%$#fs9qcOMxzKwZ=aX<b4-oPMP4Ot1B>fO>}x9V`tD4CYLlG$|PR
z^J=Io>j-rBt4vKzeKa*Soe^#rK!;+E;gVs?fU)1JhmwIooJFGl0P~_#3-ja3&UX3N
z=$l#?%>g=4Q<b7x@vr<mC^R@T)e#tkUc}bW(9pf`IPkDx!)QG6*|-{j2J0t1?yAx!
z`}gWGaNFcbcCfa+6jw8L-|p`2ij?G#P{)p)=c1y!g@uLHXbnOfGf1KRmoHz=Wmoy3
zj5%k{oWu3%)mwDp#EE<Pm;N>}Z@SIhhoyZDh8P%3%9k&%lsiw-_mukenq)R<(j;ug
zj2WxfuU~)W%9ShksYc`{@u!rUn)+nt&Yc&1eSJ4}?%a7Yo}Ua>jm-Bp1K>ZIsj8)=
zr6bCdcJ=Djbmm9w-o5)W^M4x~Hf%V(Wy_XhXc!)dOU7rtv_YB8{QdnmpE`Bw_RE(q
zl@W+{5uQIA@9-A%^_Aaz^9>j9{gAJpe{xg;;5wI)n#1(&I63Ccim1A7yi`R>jvA$x
zHDJI1&Ev<9*FSpnXc@fpvUp&&cKgAD2VWpF(82dZ2=Q`J;ji-l{%s;dqO!;|oR`m~
zWJkFaAI-jf`zn&2&vEkP$^01q9)hlV50aE~?37>?@J<R0CY)1BwuMf<H$V7aB0dXx
zr|pQV3kf}Y>(;I3$ZYwy|1#aUaU-LD|Nc%$rw)XzqO*TWL`hk_SkYoeqxDR(X1cnI
zOMchQp&(W&nR0}d_7z=S-A>RUE8&@GF;mB)YZzBDdZ0^BfAr{)(tZ9XiTWe;TDs4z
zS+gb!68B8Sij{KMZMSOG3JuIzVc7Q(nSg1qK`E|q2uq2}=lH9Vf8)lD=c-n%s*U$h
z1@A=Z(s86OD(CEfbprj1q@$yA7}EIU-;v_)A{dG<)YR0>Q4Sh)pVSBgC1sszKh$tC
zG%yp-`FV@FIG0R)l3h2^s#UvS3k!?-cvj9uE8P`9>y_(vxa>6$UHkK=PoFB4{C6l9
zznntDMSn&N`})mm1$15GaL<AT3!bCP+K6(@uT`_w6EY+nHB|H_^NkXo$IPru1!Ov^
z9jY#$R{GhqX9enrB6Z2245Run-|U=hB`(wAxr)x8Kc8NuN)>LZP#N!psvr#{i`%zv
zE8Q*Qs=#=Kk(HgLluJeErr+6$ScbxRzD=t8ET8fpWe*7nIfHU^LYY1(FDY7bYCkn?
z9WYAQ2s-2(MUSKd1_#c`kQ@#wS+dkHbVZf%tX~2uX+XxL70cxkTF~JVH*MaOdHe1i
zx&QD%0Ukce_#GZ(Je2eY_Y2Nd;Z$*W?d|{f(o*Hto!fHl#&x;M>CTH6<jmPKTw=k&
z_=u7vOLF<G6%2s~D(T3w+_-g9iFfDTT_ugQ`{@NB^KII+DO*EBBdtuCGDi`Accn^|
zQlP4&K~2diTozTCQ`6JrZt6WHO+rP>;^NLD{x48#xD=yq%T}$t8D5o!3aV#PL6s)&
zJ>moajw~C?e)IM%B@gDOdLM<;QlW79_>4^NHl7y^_6^FSU#wU$TIinyQKVB+Hfhtk
z)AG@JW5A4a6^7*aB$<=?*zn<+)X}=c$H$kzyZ=o$0EYYmD2azw!(Wp+b?ffhzI%7h
zNl2ZPQ>WxOq}2&XpLgNd>C;LWLUqogDh`jTG*X}s9yoeb_8vSaJNE36&D*z2d_qEY
z^A;^mBHy{lUlT|5zWw^epc~G8imvz|!XHdYkt4^C7o?-YiTq<+Lc*JGOPA*O<$S;b
z5>6jSOTY(Ab>Y<c^95!7UD;5kLrDMdv14-M?p^-RZP~gt*9y`4Z9i)C=xu2aA1dKh
z&si9S(<F|bIH8o8&$xZpF4?$kn?%LN<|M9KmCI|#5J#1_DsEw@(p05&6y-Z};eyny
zTh|rFSTza}l<T7>)fio~4(+<G)gL`Z=Fjs~7?Shd)GK@T>?wwZMjUwNFa}-8e)nK_
z*rEW3NI0xv)4fNJbK7?A0`u&ZUHkUS?)?Ye3*Ik`x9{!PvrjqSzI%^s*s@htt=}L?
zYu3t4_t~$?SE#TV`Po4-(f6}W^%^zo($dmiK6vs>wjlp)yLQXYy?OC@WLiA#IdD)x
z%E{BxxJi>kh&vhO{~1sNIPKU7X>t)-`1(zovsn(tD_lm^k!fy4UfcPs_^&-`)EdO&
z4jzM?oSm<vXFO5DsN((+Ht*Oe>o#qcgjK6^hiVLa`0cmfayoP?u(y4Oj;VYeRaoZz
zHh7)oRAJA-LvrZoF=^De@nWRG=lUe{N-`LS44QZ9(0$9OQAP?=a$1qz<Qx*>Qdl#y
zaoGq%@1gfT6dss{PX)9{F2i-#H!@D!unjMH%QjiNdFuyZ&897~X5(h%xN5^DiBC+D
z*cFMQJ6iuC^5Bw(v5=6h(HJ;<GGK<=tSdC(lh<uj!YgSY{^|`#14mVwYd39`Qx~tu
z`YqdEB3>de0pPlx-T=oUx%<XwAoA#$bJ^=QZ&T8E8_Xkl{YK?{!?qo=X~!-Zp`$~o
zOC8(9CouTQ-Xkf>{ld>x7zNJ=EKgo7A(2rzU?Qpk{(u#pPZ#fW9L}R$X1PCSS>BaS
zVJK+=49hZ=D_?#N8d;rBg(*p#1!&x{efKSTU`mfUbCo5r1SKWM`NoYKmxC}Il;zOE
zd%FNUGz}jP7LNc{dk2NQiC?uwmL;wFV8pIWmS`~JQZS=mXhcrycI`O;&XzwMc~P>_
z-L8JK7A+R<ICM0Z`Nbq8DRFs>AtNIVRa*SNeDzv6ef0)6Ovr|D^YqfCOBt#$L=|xD
zA@AMFcp^*USG*UI%i<*h;CURFYRE9neSH3srAoOjO<0-ByqIU<XDSR;nON4y_~p`f
zz`$FGKO0Qc56{*Js0naT-CBRl*gJpaeX5=r`AcwAOeW$^MH<zCPon!KvGp`)+xq9V
zx;h3j8-@<o+xYwY(`iB(5*j<!gxxm>ifO^Ux3%F#@_zk_6)R3&vu4fRhgpIbogiVc
z@gI!vWy^6~E-tg@Wqx0!%6_Cj9g?GWer3^Fn1)(cQ_Jxe_oSSX;H9w=8WSfWOP49f
z!fC0l^E@Pa8PZ-Mu}N!W1te?I#;uYJ$-*O%uzr(7tw@rfs2K4JUm^h!OWz6qh$!(1
zi4ecAB}(2s`t;q2@));l(>8(WheRV!pl~?~gZEgjV3cQ3U`P(6eiY)9AvyI*Ba*5S
zhu(Db$C}<qgw%akIw~m7sH7P$K}%x9YO?JE#5F}49IpEKnUY3JzK&SCWs45Wb#?Nr
z@1UR{W$g>4W&i&Dl??<ChFub!C4M)x#)k!wIT}N<&b)f{YR2OnkuX$BU}TI0E{Xjh
z1Vw>?mL;IF<8n)U^9}VY2UHq|H~4~CVKlPnZ>j6-KIchf{7NN1e=y5C^ToA*$Y|y0
z8y+RzA>lxT_=2GrCm=trUsx0vF-kf235^8PMJi$52JbQcqQFq`3JAfqNNLr!{aTb~
z!cff-CpYXl@cy#omq)pebLM9?#qJ5>+Toe%0R^)}IC6e_l=W1{^yTX|y+1ty_xOwi
z%h;n&KN^BVkOrrcKYjv376mBXsx)fYJV0}}t~feQld!NbWw|U@3=SMPP(jtI)l3nN
zFNfWIfwaWK@|=v(aq{HJu`gb{$UJiXI$AB6DPBQn%<>OHSnLW}w_~4VWQ$C&wZDTr
z%m7Nr!WG7qkrRTJEXxgxS)s%WiGF{cED!JdM?`~}!o<@zP!{+FgQ>#sKU}<k1^&Sb
zc+P9@!s4JjFrKGRpv+zD4`z<eEmyt*RSP?7JIB;DJNBddq~v;cd3ZhV{j5;RGkExj
z%ZRIuXX03=>iOt2!bNXZUjAXPmnJ~({FCS7F=#2IFY>PTWA!-1?SOPBP(FSFLly%#
zrdIZcsx|C}Ym5>r%LxiIMny$Qe0;pJFpG=B3=PN7AgBhAi4|!HsYM2*XU(9<$jBo|
zOSbG!k?^=giNecMVQJ!;LiqK1-o3Z){}!>y>*e;7Ou6$kQ-*43(-*QGDv2WoN`;{e
zKb9?9&Lw8$x`Mp^DBb9lNHb}@jJ2Hbs!qN7x9T=fyHHQ9;aQ@7A-w&+@b$vsmGcH_
zJU`l`S&Nk@78|d#PgvBOgbmvY%JgpJzXM>&@+4{6yybet{RPj(*&u~*&PHGVr{*m~
zmaW==@~>6my*s^MpFINUc?E`1pLE4LYJhY;ovB9fQMts##LC5r7E>QOSSL$=w2?$c
zL@GO7aFYRUNX5N>X3UtGhTvQ-OE)g|*JRE*jT<+%IC}J`GJ>42Zkt5L!6?CtSq5f`
zNnEQi0MB_O<M0}fh5xI<ybUD`?yuUso5{<LLnpGDwQTK)eCy&JE3RZ<(3+LM``&|j
zM#j^y$xE+rK84d?zGjmoZrCAOx}#H(PB1V9PzK%eL07to0I$>Y#{MsW;W(W~3%*bF
z8a4gnR&A6xFp(<%cR^LY=!7*A616-Bmi9b6PZK;B->pJ8=jcdBjS)Hr_MSMe#8JJQ
zcY)8nEO`SA!_{JK>qvca9MYgO^LuT9kB(5+<sLnH#KGRyy?PG5J3>oWSq8xc|6J$I
zHQgE-8ZvdNJ%@!jRKn>q>L)FAbaWP_r>DQTl=?(MqtRucy9kR-1al<Ah)9%(xRuIz
z1Q?a)s{g#laCz5M_h@}4{|3Cqusl!Nv{PYBbe&JimMd?9{5hXn6ct$=aPkXZn&Tf4
z14CwcK^#?{zamNES8rA@+Sv3a(y&GvtpQr`1l`8C-OFHgb@jPinu})-`y(Js=!g*`
zd^Jaov_?Ey$vt}aAGB@Nmc74uhPR<A504?yE5vS^>tn>7h%(ShF3{U?&Yo<@1RMKX
zTMry7c&<NAGf7FapZd_#h^v7#J`H_RMX2X*ftnpUbZF7G^)I_dXz9r;H+O|8xj_{r
zrk0i#odl$BpZ;?Zg)VCY=FFM1iQX$~p*ML2P|u2h;vWU&Iy&zd3WFgW1_l1}TmjA(
z2S+O5RdEXL<%chfg1AbWOJ&9SZF2vW$aouvD=Y(04lkTTP!q;k+dQ4?9Uz{5AxhfJ
zM^&DJw1BYKm2&*@J#qC|_z3ZA0M0~FC#Hp49~kWB=C)C30e^wwAbFX-fyp@PZtO|a
z4NT0htlN1IMo`{+Q04s_;5y5<I5<icLN6UMeB@Qcr9N2+D6o>z;5g(p)_tMxOETM^
zrOEq?f+CP^gw(22kLm;s!%st>R1w~5DWI08r)T?mbs8<y($tr6<18R0mnj=naqk{l
z-*f|;GQ~E%RH;%ft5>hS$c_Je!eV9Sd>?UJ;3u;e1<IVoK{y5|$2s0Wq5r(ka18G<
zcM-5yT<3W!*BJIU@d_h9uIjjQ%RbqB;H2~$q(S$t_UP`Y=jt?Q)a2MScTbr<XQ9mS
zK>G8L{(Ntl>6uqP_l5rA?iHZqvwVG?)J3Dai0AS{eEnX%dO2{#<e@`{ZqemEC^}II
zTR3mVpS92r@JE`yO8J?Wwf*!bUw>VKT|XtI@gzr=CthGS-e>;r1>S`#%IW6mD-E0c
z#M!CtV4%YKB$=~jC8#I!eM4myo<sFa?*s2MUq?5OEW~w#KFJ>7)AOlB9sF?k@ZnCi
zYSq#lqOS8?M_W%B7UIrn1n0tk`Q;aB)~p#lSe|W8xg^u(ERv}+=ZT~H0_EIkwwD5)
zzx|&_`<e5_&SkFHx_HPG=h<R2eU8`?xaR1-uppc&eqpH6BAoHUHy%1Gi^F1b8a8RB
z@@1qh7uKR}hnLn)Zb;u9>CYD18BE_p0rR$V1(f_2NND^zd7-f8uf+e6Nn6BazHdRk
z3`;o70^B^s-fg~2MLJVZ_Q}Y{*lNnlij}{MLH^vdwMB_<zM1AQ%QM#=@8<0?{0_Kh
zH^T$rJaWG%TGSJIdQ&h^VSSQ@WUDqEx@>Us3KAQHC*GMB!Sr~X?jc%wV>s(&i8MIp
z{pskFDneaUc>MTrYdbr;kzG3V-mjx=Aof!olzk@IjdQxOXRlsz<>5nF9JN}k>}LUP
zGQn}SSWlZP6P)JAL}Hpp9`gSy_YlT%s+*YGx{A4ti<nHBCdT8ZN~312o^|fg@0GcY
ztBiMWD~O|tR~Q9p;>h&u+!o84gO|j@&h>fevgPRjVF1jmU%!4%UA4wyU@=9;T04sA
zWM>&?GadQPz%d_FW}qxCO8HfJsnS-Rk9Tla?pxZ;MA>IDAH;PLvnkWX#M((rCOV0}
zxlL}Hj$PBf_@XGMI}Opzvg>YNuVK?TzMpXjtDtb+Z@~;@F`eWr!*s_yMO@Cm*8mFZ
zlXRBp(`(T1OP2OCmHhua&FNx>=SJB$RmoW|cK@Fqfho%Zjgyj+hBs^0%3W7`Ozvn{
z;XXb-Vr69|4({%<>w2b4a`O>`@s46J!AXoK%@E_sGsI}pbmcf^vWs$5uIJw~oH$MN
z5q`9ly^J!q6J0YK89LfLr^=5tFCyEd;$MBWXYeS~tkG5uO4zs4D-6{=p7UrubFqZ3
zKPm%98q<oNYi@3Ng0oLGYu1#KrAkYiF1=)!frX41V=W_1CX0^g6wxsQ#@UGOI9t)P
zn5sO7k+pLHl=7l1dMqo#X(P@^lSxQpqG%e8ml4Jjr1ub=%=%4Q+$;8F@eRm#HZTko
z&n}YVr5)P-+<UJ!;%Ffb<NYxvDCxKPxfiESM=%YbK%d09;wU^o%kaU7vDSYv&51G!
z&sXKgS}PEj`sAm(qcNEB$IF*5_Z>HG+$31xm-_S`C@osH5zm;l;=S^)j2b^fG{@S=
z2(zi8ZSEl2;~Zq<IQzVFb4TS^@E`ZIOzo8L!^cb(4a12tM1Q<=9XRq$snTWXu)wK8
zx`;V^|6}bF!;B}1<`^)5Szi3#rdt@l-s5rNtN@wrzfyi`_sdPrJZWodi@m+QvYSVn
zHf`j~;$KOPdX43$wq2!5f32K;BgW<q(j6xQfkC?FGFZ=2hKwFBLks{M)kj$Z7Pyxe
zroXnCbm}woO`}$w9{*6Y?zQ4ym)MOmQ!=^$x~TB>0Ig+CchZ<>UZ+uup!!YQoUYTT
z`K{Uwo2C5`5aw=!W^K<^`0fX9#N_~Yfj&vXe=Zp7-l$c_O?4Z$yofk=-%jIg)NRz_
zR>Kw@jw7BK^li=zeUfW*6arIL;+~MuB_~w*{)gn6YOQiZc3cvB?|2z*YAYIGn&BpP
zq6KF76<|IbHNi{-|7)5~m0@7Up~hfFFq^vm1R11nB`rJmc~Z1!u>@o_4qY89vpyJ;
z^XYEQI`()l)MygYw=GC3FTM9e6ODuUIf5z8oEJ%@s?}xW$dMAYBuZJu$Tc}_+qRS1
zHS0;SqF;0Rj?-=XzA05YrF`Wo=YFi)=vFPYW~uo|%SURB`c3ZO{sk}!!_$+U`l1)W
zu}C`0_C?uS0i0RlrdV`B;dEzlJP+48@l!7RFaXsG?!r+RGvC5AfU{KHVUSSwE6^uN
z_|K_ZuE*zUPYyY;F}$6|+u*n<8$5@)*maZ9IpoKoE_!-#*o&hUAHSZ-LZUKTjvhVQ
zX_&G3`Gix?#d204m<)^v1{g_6W$6S=%LmU@$h*cc3`^!34#v~~W2!?6)oap<Q-nc)
z4)WpPFt=;rIv=jq8-V&;+GoVrOy)HLjP`4qh4WBBm49A-de*KoKW?wm7zPg=rc94=
zeAURvNQP^S5cPqYS)Dp{-mIaaF}G#QmS*35_Z=CA1LUkcGEU(NWu<em6&b(;l12+<
z>;rTJXoS=PI0Z<_NGjaba>k@O(jQo@S~aUGRjSwnj)h=fwrp7r%Ig7r!N8P^Edb88
zd=Kz_e35eMWDy0YPbq1FxJZw>W@Dfwzy|S0_z9q!8W*y$>sAX33yVofNx6FT=+SFS
zVq%UpP*dxSM)39N^XH44ICEOb@5qT`MGhZJDRTHkN|B={Pbk-U|J>z^Mb2Njtbpfd
zE}SoN^4uAvd<Ag;p7R>-F&>Y|pYMkajg5mtcLc{wf4BPccZ34c%BxzdPMxuSF)>%R
zTz(}J-Mqzc5_CD6nKH(9mU1+j;;J0q2Co}J*E4`#rVqVL4|=37bT$n`tL*Qq)!+aw
z$2SL|Ae@O&_U&Pz0IqH3dgd`zs@FQAHy#GWMCf+ZA>WZtVW`T&vQ2XLm#7`*(Cv;D
zOX$E*LBz;#tQZ?v$iM-^PFq`ByDnO^sE?_sDJzW5uG9f}PNpbaq5R(rpvxG`%1yY)
zgk%hs^}QPs;5w&1JD}n(K7aoFH8<mW8xJ2oe1ZEn%+1Z&K=~n5I+l<bNnhMbO)Wy)
zPD?9tJ3U>gRDgN15*dzbx&I6dM`x8{s8=q57_xHh+WRNYof9yN>^X2C1NR0);+IK#
z^r*-k<fG*G7I>ZaAH4-$yL<osJL9m-yq}&Q4*9U5)|oM5hU>zG3zvI)d&j!FyK|Sj
zf(3TJBiulP{TD5~1|2(gv^#U=Oxor%sp2><Ky2K+WU`B=SUcxgzZ0gxLghKYYbq$$
zc;CrG#yiax3s~CYU}+B@ZThBknQ}Xjwml?HSLDU+Ns$Ih<{+K}WpJMZ@~*%18Fb&u
z(H-gKS;KGV^}9R~j{m2itiJIZW%c1Jf;6OkyAEP#XeI{wmd{L0&B9l$S~cwD%a=c7
zWMq)J*dW;DlF8mx(Y#J3ATzLhf83(;2@FvFn{U1uee~F|XK5J^l#RF^a?>r~!IQ_5
zn(<KXrl&zm%A@%B_+yCHjuH!hsXo0InVFdiLqNTH=Y17;U&TBuH|V<#9Xd?8$#qJ%
zZz&rz%$qllyUh*6{j!fAKQ8j-&6{_oMHEi2Fwp4U8J@_=$tm*m=~E?t)N7dv6)Frz
zV^qFp!_CIR!^5{Be@gw|>$>?boBBpu6BCnARM@NS$FGWqUxaW>%*E4BrqA<{X&#Hk
z*~43$=Xxvu-v!=d7>+mE&+?T1L$#h4EA}Ow3#Q<ub3mBV=A9xN*I4;<>gbP?CF3SL
zX8u`zDk$NA8S{K)j&HaexR5Gq_nZ{9#y?5FzQeP%N9yi`O5$++`gQKP{=0qF|6PRg
zv!T_fSFheIyvM9JS((ZzOEmJ_Lx&FK9653%hhI<QO3xRs@)oqEr>AE%Y0|_F@i_R;
zvQc+z#B>18F0rel{>MdmR2NhYghGTXNV&@gzv@fpYlf=~CRFxDBID$jsalO1HOxni
z8nu7u(4iN#w6sn)Yu3z%@o=9#78#e!!Tgv8m%K1N4sU%|I6Z>QhN80pQp#}_jJ+HM
z3RfFYU*-4Rxh#e~FI9)OFgOFisLEPpeqyG3_wK5%cW|`;pCym-3(Ps}K2}rgcgL;U
zni~)mC*Gk;Wl>P1EbtGN`M$w2&nHOc;mGqp0>gML4wPA5zS6d17cMd2a0y-Tbtnb#
zaD36s?{~z92H4&30gda_Z;&!)ae&PA4SHu@Z$ni^mf1TrT0&x1icfg7RH#_#KDzPH
zy?gie!u$9U_{UcBq3o=Lmiqeo>-h4yZX69E7fg4%Ql&~qDp#(2pjNF~7kqqtUh*E7
zzCsG|V^&Fs*LBR8G2_>*TXz5w{V4QdR+{d#Y12ZFA3uH(|Ci%`9lS$Ua*fiZOZRtj
za*Eixb?aGfh5*LDla!QnOixdbIx*KsmCk>sEK@z`((ZwQfz125gM$NoQVqd0RAI;v
zbVY2Vt*z~nkdSbMJ8+yofBxQ<En7}Q#h8bCG>#PJef|2iQdjuTay0JRwW~#NaPU?%
zx@(s&UrvY4dSmI*rMrIm=_eXloUU!@>+8F2|Ni|2-2<LIH!d#jHu5@+uADA@+^Z>%
zP^jXKnl^1UXQB78$hZ{}xP*?ak>aiR2L{OkKl&KvVWIz@!z&<I+~&>~=%j+~g3Bl}
z&CJX~@glh_f*<wd+80{dd`PxPG9X(Dr38=l5SA@Y7YNZ9F*4&_`Me8-%ego(L;@nB
zWXbYGnYY-79|myRxpQYDypMm>AtAql`#^8Kz?aYEz5Dj<%fx$LhU;AaLwB}$sK|3%
z6VHtfC`k<r4Csny6c7+lu>U3)Edv#%Y~=wxlnya$;Cy$TEG#ViE?&Htt^@=X-YkI|
z7l28qE^&s7j6@x`y=sRJ=6L}6B(9BsK1l<!8XAmNVq)TP+(S~iiX>B|$qV!6&*$hv
zD+m^<G?b1N%atqFZ^42E8|gQjAMQ8hK#%am(9n?E&X_@6DA@Hx6^75x=R!Bm2Esbe
zBV<5}s6nO5l}%f=ZnL~`lcsyr8a6s!Urp@{eFO8*;9}kS^{>{cSMM&E?QyNzbzaq|
zRVx>ew}Eidu3bB2NQR$G=4X=Wi;0SPk(`{&Zk!u0DIccK2c0S2#t<+jEmNoB#fz^%
z{+IqJ&-VdwGEx4tZasQ#)*C%qFDfdE7V}@y3qO=l$&|vQQR&Lgu-xzq@8CYJ*&^@O
zxZf1#hLC2;=3U$X0Tq^`rl!WF4-R|w?77eDB(58xH035;+{O^yUj)J!LF(+{ebx4c
z+&qCgBAHvYT@EYW%F2pESPhXcrQpyF8#X9AbWnAG6;976EucZurcK8{!rdp6a5IK0
zSFZ5;NZCxAd61wx=5*=Og`0b+RE$B8eAn{t$(=iQlyY!)5`H>{arp&0dwcu!RjO2(
z&yU8kY%CYkWEhs29|eOXW@DqOkVhymsUnzw4g{2B#sG&(3i}mWRjXEQT8kDf=JxH|
zH?CK&UdI|YYI3`GuR+;^25QKlL4(D}$XFa59hJ2_bPC?FV}~3(cu-caUafq-jz@mp
zWc&8*a^%R-H@J5d*H@#^9G_#pDkfF;_xJZh7q)NBnl<T=968*e3X(+ePNFjiEoujQ
z2W1-;y3_G<DRe&W-o1x(@77Ct^yn{5o3?z4#&M!&&z`~k`}a41w5CN()!-jv%KWse
zHE7Vl?Z&NJS(FE?1S2CO8WbFQqLk~^xN&1IRA>gm$kprD`A(?j%tPgQU$}fZD-{*`
z01TFnisOzS=$_xKSh0fskPFSmjoV5_xPAAo!T`{dU!Xp2v~Jz{s*R1!<LjtoZkv4{
zOt5R$uKQ@z9M`N@v0}w3r_Y{!{qWHvg?Xn;nZl6}e)U%)A~NzU)4Y?K%6fYZ=DSp;
zOqs)|>$|t^+{w*Aqj(O9k9WNn;eSTM>gg8{ph$3*0}?wIb@8Ze+qPGJ{`uz{kkT)>
zZ8uaH8gO>it5<i$`@e+e&3TLlaTob`dV0Rn)YQBKwI!u)-MSo-qYj-%c#*U~X?b#5
zi(_E*0hLeTZ!mW3*lsZ6wa`*srca-~Y4~u>%T^Xs-#9zDiSsm9Wlawm@AT=@%F9ek
zOH*3;rAwEUk3aFdJ76^BJKpQpuU9^0$ImMh{1_;~uiWy;dt_vKC(-+z>xAfN%&<(0
zpI+X!ZJPuI1<O>ssWRTm8kj6r7Ph%)DEH7^ZvwMULqiz=iQOFKXE#RO>K~*0^qUMA
zI53f$C0xKeAX7#}MBGDnej+F+=n$U$0=lfst$2oHyoYso);|6E9Y#C{95?Mda)e*0
zke&PX$-2#(bARd9?KaX)#{C7QN|o|WTD$humYq9=m}Fx^M+@qr+&p0pkZ5af|717f
z?}0$redthD{RRy<*4h>6MDIO(SoWu+$N`{DyLMbZWH4mdu;pYfUfZ~Rdls1S1g=xU
z1_GO0-QAxaI&ne{9X~Gf7B0MoYsQ^AclNywX50+Hvu)3w+-^O3(AAC~Rd5G9P~Na6
zO`B5xr8^*dKHb`N>TG1*e7?Ph4oTBy&A5dOXRqiF+X;+L1NT=#B2<QH(b4)P(b9S+
zz;JaS-aA2=wSYuSw6wH5Gu~?IGvCD#;^Q5Ht|~+l6IaTmi<cAyUa>OKg;8XaL9boA
zu6#O=l9UXrVo-hvl#IylE)pt9O9p4Rz^;HyPO(o3!TY|xe&XilE^e-K08g>Ab<5Nq
zIqEW)Fg`judJN*Xg7VL)zrQu4^Pz<FsS0%&I$Uet=AC<GdGZ?BxO0zOyZb=s0(a)h
z4M|wDUZSA8hb)Pf!0;ux>KemXp{{_1p^53a9S06ed{W-h;QoWuInh81nFfO)(%pOF
z{1u5!TqWU4<FYD$_uV>NAA@|m0NnF(QqMkpFRom-QC6&8CvhuRW&c>C26eiT+Ipi?
z4jezFTt~i{rM~@^3}NLm+vDz`6K7=4(c^OA!iCJx(9qOn%a+}MFt`R|<<5cQr(eh8
zIpUMn%H*jIHxS2loaMv|2Tq)pWr@k+;pO!L*Mia0a&m!|d<W>A+z_HC^k@$7)6h{L
zrZqC<$mt7`xOSr~iCvyuu3Y&gxIP&7Dex!|OW^;96W(tP=m#yJ$ZA2F`MJ2b92sM5
zmNwJHD=R2qse}YAk?^o3vSssDxpDo5qU@6?sUK0vrtU%sLQv6VcS4<mM>3r%Jddh#
z>MhiFjzR)OL`2F0&xJC7-Xigw?<;d>`{$aOT0b*08+Qg0DHzgLGc`4}3Cc+&{y#=|
zv7GZBq(9c|O7dnjn$SpD96~2!7>z-pvM3-FhFA~`FMqL|Z2OXHc@UlqNwvjf!j!4^
zLSvT;R~}BZwO1+|P)E8P^3k<%bWTm)x>LAZ*W7wCrKAfa3<vo+E5>Kl9jT{(jmwaI
zLL<b*!}B?q#R1nXr#LvLEd?_NM#YNNBwNOH`l4u2huK~}&$&`GXz4NuiCM1P=Sogx
zHD@?SV8WC#^Voa9K$drr`$F&MT;CKPmmnG=w8^Me$e%qd$9`$?a|WrR>KylnTTgYo
z8<V_Nf{~A{({y^)+o0@>!(Lhu8o2iVN2qXqKd~{SS1(w#PUxC8TU%RSH5qI1c)|RT
zoUo8(5*iHaH!@lh(drK#JOriorov!k%s(PBEv-Lp$45rx=j_(6-yk6&q5K-IEb{Ub
z??re~USVQA!SNOJ+1t=}wn1{c9y@ldKcur7lKE|S@E;(&WLowHGv_aQ#Fd1;s8oAb
z_iP=5F)v0LnLO3eH-6lIutsV<wT9HS!h!LSDqRqd#*ew{yoHZLVpf15Vx{lE!Stx-
z8f^~Qa0R2D^Xz#_x``XN%VfvtG@d3Reho+@O6b}pOO<k5wQbKUzldn@$9o^5Ir0M2
z{klYn>GOSqUPUfX2IH*|^<kRy%(6iEnG5_w-ULT4m&oNwVq!J%*+@NuG;IUp+bHkt
zk$Q%A)HO6yhiU7kqwLqdt5VgkM2QmKi-N;5BjS@}DHwCaD1FtcOWGx>X+$;<G9;I%
zR6zO0dMx&P9u}7<kt>q9CW>)%aIZ4T|Nqa7ZxbrN9;8`2FwO|*iwhPnUcAS`!s5nw
zt0^zMy&`fWLYGTK*fLof6)(|C`I+S;=!ARa*s<es?dml}_hffW>y4Hex8CEYnqh^?
z+BNGSaU=QhQ3-&Q3Gk1QK>sKS^otgUsqSw^k2bhBb?VgpFowL){p%o|wkS^>;2#?t
ze;?(y^y<}X)SMl$JSm&2I74DrNT*-A(VcD;zz+>@JdR_C<4_meWPr079J8(WeU++i
zp)o76!sAy$0<DxzKX=`O>vZ^_qX!4HN7*{NJfJi?b0bZjym*nLuCC5ir5w%ZQm0NG
z8yHNtqgJez;AoCBM`o4!wlpQ}i0U<K`G6U6maST^FjD(YU6hSji+}aiG*7>v*UWSG
z@w3vi-++6#PD_|00nuQxHKwMfbVi8<_-#v_ufP7<ZJtlSYc89<55xSx$urOJEc6>-
zm)(P7q)@-Mlq^}2Lw|g>>XpCy-Wd%ob0r$n@yoXa<z}OtsHUdYwN|ZK%K9q&|MwD@
zfCJKvAk{iUQt890_FuSg;Snn<t29%SaWCxcre*mo3dxO*N|vQd5+!D70vL2T7&T5|
z)R<^8EEzXeqL##>dyWP(E(M|`EF=a@9S>%Vkr~tHW}BOhe`RE7lnx_?pK1<(@nir-
z?g-U@U&iIk$A5+JVmY_lvUArS>-;0)WUhCR%=Zq;tx>Z!H>Dbj+dTm~b0~Tiz{=oM
zCdUw)x9|LOvUl(jna6lO!MQbS*QHyWYQ%uUO#M6m(*5XcFMpZm6D%C`gN~jF<L?|S
z^V3jQo^!%uu6Ll!oVzHyO@~hGYR3Wto40I}5EQjSn7&s)L~fmW4OHIo=Hn*VJn~o+
zAiGj7P*uwD_xHc)<m7b1%ggH`1cs8Pp^3%mFN+t~f@I@Z;@IIMN8RyQ8~~Lh5~UFC
z<Czf|8F>PR=VgwOhD0ZbowM873Kc7Hw4rhBy7hhL`G(~BghmVJur6J?^Z`8v!ucXR
zF8Pk@yv1j}EnSAsND2GT5b~=5G=c8-%Yg$2j8?8(xiBOoWFsv03lk<xxNmGc=J`}x
zhio^O**WNbbC*UYNL+NX#Kk6qQS(5?jm6Q|I~=;ASMD@Nmu!o1Rxgc>jqigI&(EDZ
zcOxwEg<wYGbLY<e0-cn)Bi+RQtArOzMZNc6P2I~jGiJ*q$C+X>-tINJF3x7rb&Se9
zbuKa@r&(2wC}heW1BQ+`&v=ua+{9#p?JLA_MqK(pQs1K68i(xMwDgRhO>}S(+v&5#
z(cMd?&&!)$wRfE-Q=DgsrHxZ|{f13a5Y`Toj#GZ>y#@?94pFHrL$R`Re)IL$CESrd
zcY_;Pvv$3W7B)_~)($h3r4tUbJjHR=0%f_#B$Q>6(=5>%J?32T;$P82O8KI3`3jX{
z%qBVHaJdPWT;xsf`iS$K#WEFn*dxA?x%IWuWy(@lZeF!o^+jBk!t^FP&lX!(4<!$6
zLlauyT-*N7FJ=Ri@LSzY(em2EqU(niWCH0qFFZUvY5x5A$DEy=Z$kfkXkudW%+S#A
zrGbILYfB5uH(<Qi`uh50z-Q*><_~OaY;HhTJhouLf~2spFpq?U1QUL|{`T$L9UvLW
zjK5Az{g(+ZmQ!wh`VJd)edwsMZ-$IA$?VcwokJ*kxJOTzcj`|071FcM5S=TGH&o9I
z@dnc(r{gf)*i@q;oa0t6Rl00+o6bER4AC8%r8{nlj5fEE(UwzXu=beO?Ys85U#46I
zcE22op*7wN7^i7um2Ny~x)_XiklsUeXykDHcU>?h=d~@X)vUX}TYrt`T85Un+GDLn
z*L1RsFdm=Xd+^A|4V$&$Yzy7&=t)%$(o&fM{=Qm`9l!J)@(gL`j><2Gj@gu)K0|e$
zG-=hIT|RwITO*H##fp7t*12c@JHzzNb4HGxDB30ybMbzj)UMw+3}M<J-T&+gOE3;~
zye44KwpXrP>A7pyu9553t+ND!%|O?)AU;0cFE%z7{2IO#T|h*1bhLj=OpIq-T-<cr
zw_3Y)t<I4nM|z{HYK?R_O-P2P;{Q=m{)=q}&3-&2lphd)|C4~WxJL>3&fzFrrxa{f
z?91X-h~o=z+duknva(cj*914CrIQ0c88{o^lgd@9a;S3E>c`8JuSETmdLNf$=z$U1
z7cE+>ZS#&j9CXIdI5;gZDR-#RWEld~ZQ7ci=p2fnV+^-zr1J!wivvo2TV`9uDnA~r
zROQD*B}#tF;U=!`<e)$I>tq8_R0*U{W;X(SN|gF`3&J0(_<gmMZ@w+VRhZOc`P|(Q
zmKz_it~vuwNOM)$3Y8C_VKLkSKoe=vkW+R!`L7U|sV2|>XbR9<hlWXeFl@)WckliT
zowQSCW@dX_YXh_ZC=I!{dUb%3=%XdPSdQbei>3oGE0N$iuf2B}0`KLAp~JH(9?z9{
z=F=AzF?050ICl5+5aI+!J1`TyYseU!OCOD{o-SzZ0L7P}e5LOVM@^XadeWRA(Kfdi
zP17kdP}l6u*WZ-n_$1W{su9ea!#8SRc=~km0|L}T#{irc?}2-K1~Me)yeYLw^j5Er
z`;^9<s$_V^8;NVwohemS{-Hz_TqpCh%$z>f#D6{~9gr0(9oIfS0@GCm{-fiH|4zb-
zWra~!q*UY>oobwp760C058eab8_y#srie#CbP;#IC56M%BIovilrnTc=5h=&4%47+
zTcbgvpXN+)oiF2^+{I$5ix^qiX4bCXkZYoJ!4RBKASoV102zn*@;VuXpi?uik$D;B
zU$gzASO&&X%>t648BP_4@!6Odhs3a|GLw;6W;QDN(=u(<809}YsqvZqCau`8waD^y
zn~N-4y|GA4^7<mN$s3Bqt=WWYTZ$xX++HMc^UflPo3`hN+fpQM^(GZ#u(Da91exTE
z*i{>Nk5Z?4!zMr3>KU6{8m>Jmwa)<cTUD!7<FukBx=TtiMJ-sdev6WKemoVk6;AVC
z%#Zmpf0joThvnt{{BZA%ql877@jSc^u*^zX`Jd^0rvC%PN(XVAmU<i=Yq-{k4i6)6
mojw4Z{rN|I06vV06#0L0BQaiPgq42)0000<MNUMnLSTY`z}`*(

literal 0
HcmV?d00001

diff --git a/docs/xen.doxyfile.in b/docs/xen.doxyfile.in
new file mode 100644
index 0000000000..c0a7d93f41
--- /dev/null
+++ b/docs/xen.doxyfile.in
@@ -0,0 +1,2314 @@
+# Doxyfile 1.8.13
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project.
+#
+# All text after a double hash (##) is considered a comment and is placed in
+# front of the TAG it is preceding.
+#
+# All text after a single hash (#) is considered a comment and will be ignored.
+# The format is:
+# TAG = value [value, ...]
+# For lists, items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (\" \").
+#
+# This file is base on doc/zephyr.doxyfile.in zephry 2.3
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all text
+# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
+# built into libc) for the transcoding. See
+# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
+# The default value is: UTF-8.
+
+DOXYFILE_ENCODING      = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
+# double-quotes, unless you are using Doxywizard) that should identify the
+# project for which the documentation is generated. This name is used in the
+# title of most generated pages and in a few other places.
+# The default value is: My Project.
+
+PROJECT_NAME           = "Xen Project"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
+# could be handy for archiving the generated documentation or if some version
+# control system is used.
+
+PROJECT_NUMBER         =
+
+# Using the PROJECT_BRIEF tag one can provide an optional one line description
+# for a project that appears at the top of each page and should give viewer a
+# quick idea about the purpose of the project. Keep the description short.
+
+PROJECT_BRIEF          = "An Open Source Type 1 Hypervisor"
+
+# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
+# in the documentation. The maximum height of the logo should not exceed 55
+# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
+# the logo to the output directory.
+
+PROJECT_LOGO           = "xen-doxygen/xen_project_logo_165x67.png"
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
+# into which the generated documentation will be written. If a relative path is
+# entered, it will be relative to the location where doxygen was started. If
+# left blank the current directory will be used.
+
+OUTPUT_DIRECTORY       = @DOXY_OUT@
+
+# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
+# directories (in 2 levels) under the output directory of each output format and
+# will distribute the generated files over these directories. Enabling this
+# option can be useful when feeding doxygen a huge amount of source files, where
+# putting all generated files in the same directory would otherwise causes
+# performance problems for the file system.
+# The default value is: NO.
+
+CREATE_SUBDIRS         = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
+# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
+# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
+# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
+# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
+# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
+# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
+# Ukrainian and Vietnamese.
+# The default value is: English.
+
+OUTPUT_LANGUAGE        = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
+# descriptions after the members that are listed in the file and class
+# documentation (similar to Javadoc). Set to NO to disable this.
+# The default value is: YES.
+
+BRIEF_MEMBER_DESC      = YES
+
+# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
+# description of a member or function before the detailed description
+#
+# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+# The default value is: YES.
+
+REPEAT_BRIEF           = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator that is
+# used to form the text in various listings. Each string in this list, if found
+# as the leading text of the brief description, will be stripped from the text
+# and the result, after processing the whole list, is used as the annotated
+# text. Otherwise, the brief description is used as-is. If left blank, the
+# following values are used ($name is automatically replaced with the name of
+# the entity):The $name class, The $name widget, The $name file, is, provides,
+# specifies, contains, represents, a, an and the.
+
+ABBREVIATE_BRIEF       = YES
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# doxygen will generate a detailed section even if there is only a brief
+# description.
+# The default value is: NO.
+
+ALWAYS_DETAILED_SEC    = YES
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+# The default value is: NO.
+
+INLINE_INHERITED_MEMB  = YES
+
+# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
+# before files name in the file list and in the header files. If set to NO the
+# shortest path that makes the file name unique will be used
+# The default value is: YES.
+
+FULL_PATH_NAMES        = YES
+
+# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
+# Stripping is only done if one of the specified strings matches the left-hand
+# part of the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the path to
+# strip.
+#
+# Note that you can specify absolute paths here, but also relative paths, which
+# will be relative from the directory where doxygen is started.
+# This tag requires that the tag FULL_PATH_NAMES is set to YES.
+
+STRIP_FROM_PATH        = @XEN_BASE@
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
+# path mentioned in the documentation of a class, which tells the reader which
+# header file to include in order to use a class. If left blank only the name of
+# the header file containing the class definition is used. Otherwise one should
+# specify the list of include paths that are normally passed to the compiler
+# using the -I flag.
+
+STRIP_FROM_INC_PATH    =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
+# less readable) file names. This can be useful is your file systems doesn't
+# support long names like on DOS, Mac, or CD-ROM.
+# The default value is: NO.
+
+SHORT_NAMES            = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
+# first line (until the first dot) of a Javadoc-style comment as the brief
+# description. If set to NO, the Javadoc-style will behave just like regular Qt-
+# style comments (thus requiring an explicit @brief command for a brief
+# description.)
+# The default value is: NO.
+
+JAVADOC_AUTOBRIEF      = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
+# line (until the first dot) of a Qt-style comment as the brief description. If
+# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
+# requiring an explicit \brief command for a brief description.)
+# The default value is: NO.
+
+QT_AUTOBRIEF           = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
+# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
+# a brief description. This used to be the default behavior. The new default is
+# to treat a multi-line C++ comment block as a detailed description. Set this
+# tag to YES if you prefer the old behavior instead.
+#
+# Note that setting this tag to YES also means that rational rose comments are
+# not recognized any more.
+# The default value is: NO.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
+# documentation from any documented member that it re-implements.
+# The default value is: YES.
+
+INHERIT_DOCS           = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
+# page for each member. If set to NO, the documentation of a member will be part
+# of the file/class/namespace that contains it.
+# The default value is: NO.
+
+SEPARATE_MEMBER_PAGES  = YES
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
+# uses this value to replace tabs by spaces in code fragments.
+# Minimum value: 1, maximum value: 16, default value: 4.
+
+TAB_SIZE               = 8
+
+# This tag can be used to specify a number of aliases that act as commands in
+# the documentation. An alias has the form:
+# name=value
+# For example adding
+# "sideeffect=@par Side Effects:\n"
+# will allow you to put the command \sideeffect (or @sideeffect) in the
+# documentation, which will result in a user-defined paragraph with heading
+# "Side Effects:". You can put \n's in the value part of an alias to insert
+# newlines.
+
+ALIASES                = "rst=\verbatim embed:rst:leading-asterisk" \
+                         "endrst=\endverbatim"
+
+ALIASES += req{1}="\ref XEN_\1 \"XEN-\1\" "
+ALIASES += satisfy{1}="\xrefitem satisfy \"Satisfies requirement\" \"Requirement Implementation\" \1"
+ALIASES += verify{1}="\xrefitem verify \"Verifies requirement\" \"Requirement Verification\" \1"
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C. For
+# instance, some of the names that are used will be different. The list of all
+# members will be omitted, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_FOR_C  = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
+# Python sources only. Doxygen will then generate output that is more tailored
+# for that language. For instance, namespaces will be presented as packages,
+# qualified scopes will look different, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_JAVA   = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources. Doxygen will then generate output that is tailored for Fortran.
+# The default value is: NO.
+
+OPTIMIZE_FOR_FORTRAN   = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for VHDL.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_VHDL   = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension, and
+# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
+# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
+# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
+# Fortran. In the later case the parser tries to guess whether the code is fixed
+# or free formatted code, this is the default for Fortran type files), VHDL. For
+# instance to make doxygen treat .inc files as Fortran files (default is PHP),
+# and .f files as C (default is Fortran), use: inc=Fortran f=C.
+#
+# Note: For files without extension you can use no_extension as a placeholder.
+#
+# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
+# the files are not read by doxygen.
+
+EXTENSION_MAPPING      =
+
+# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
+# according to the Markdown format, which allows for more readable
+# documentation. See http://daringfireball.net/projects/markdown/ for details.
+# The output of markdown processing is further processed by doxygen, so you can
+# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
+# case of backward compatibilities issues.
+# The default value is: YES.
+
+MARKDOWN_SUPPORT       = YES
+
+# When enabled doxygen tries to link words that correspond to documented
+# classes, or namespaces to their corresponding documentation. Such a link can
+# be prevented in individual cases by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
+# The default value is: YES.
+
+AUTOLINK_SUPPORT       = YES
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should set this
+# tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string);
+# versus func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+# The default value is: NO.
+
+BUILTIN_STL_SUPPORT    = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+# The default value is: NO.
+
+CPP_CLI_SUPPORT        = YES
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
+# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen
+# will parse them like normal C++ but will assume all classes use public instead
+# of private inheritance when no explicit protection keyword is present.
+# The default value is: NO.
+
+SIP_SUPPORT            = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES will make
+# doxygen to replace the get and set methods by a property in the documentation.
+# This will only work if the methods are indeed getting or setting a simple
+# type. If this is not the case, or you want to show the methods anyway, you
+# should set this option to NO.
+# The default value is: YES.
+
+IDL_PROPERTY_SUPPORT   = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+# The default value is: NO.
+
+DISTRIBUTE_GROUP_DOC   = NO
+
+# Set the SUBGROUPING tag to YES to allow class member groups of the same type
+# (for instance a group of public functions) to be put as a subgroup of that
+# type (e.g. under the Public Functions section). Set it to NO to prevent
+# subgrouping. Alternatively, this can be done per class using the
+# \nosubgrouping command.
+# The default value is: YES.
+
+SUBGROUPING            = YES
+
+# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
+# are shown inside the group in which they are included (e.g. using \ingroup)
+# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
+# and RTF).
+#
+# Note that this feature does not work in combination with
+# SEPARATE_MEMBER_PAGES.
+# The default value is: NO.
+
+INLINE_GROUPED_CLASSES = NO
+
+# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
+# with only public data fields or simple typedef fields will be shown inline in
+# the documentation of the scope in which they are defined (i.e. file,
+# namespace, or group documentation), provided this scope is documented. If set
+# to NO, structs, classes, and unions are shown on a separate page (for HTML and
+# Man pages) or section (for LaTeX and RTF).
+# The default value is: NO.
+
+INLINE_SIMPLE_STRUCTS  = YES
+
+# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
+# enum is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically be
+# useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+# The default value is: NO.
+
+TYPEDEF_HIDES_STRUCT   = NO
+
+# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
+# cache is used to resolve symbols given their name and scope. Since this can be
+# an expensive process and often the same symbol appears multiple times in the
+# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
+# doxygen will become slower. If the cache is too large, memory is wasted. The
+# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
+# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
+# symbols. At the end of a run doxygen will report the cache usage and suggest
+# the optimal cache size from a speed point of view.
+# Minimum value: 0, maximum value: 9, default value: 0.
+
+LOOKUP_CACHE_SIZE      = 9
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
+# documentation are documented, even if no documentation was available. Private
+# class members and static file members will be hidden unless the
+# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
+# Note: This will also disable the warnings about undocumented members that are
+# normally produced when WARNINGS is set to YES.
+# The default value is: NO.
+
+EXTRACT_ALL            = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
+# be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIVATE        = NO
+
+# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
+# scope will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PACKAGE        = YES
+
+# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
+# included in the documentation.
+# The default value is: NO.
+
+EXTRACT_STATIC         = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
+# locally in source files will be included in the documentation. If set to NO,
+# only classes defined in header files are included. Does not have any effect
+# for Java sources.
+# The default value is: YES.
+
+EXTRACT_LOCAL_CLASSES  = YES
+
+# This flag is only useful for Objective-C code. If set to YES, local methods,
+# which are defined in the implementation section but not in the interface are
+# included in the documentation. If set to NO, only methods in the interface are
+# included.
+# The default value is: NO.
+
+EXTRACT_LOCAL_METHODS  = YES
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base name of
+# the file that contains the anonymous namespace. By default anonymous namespace
+# are hidden.
+# The default value is: NO.
+
+EXTRACT_ANON_NSPACES   = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
+# undocumented members inside documented classes or files. If set to NO these
+# members will be included in the various overviews, but no documentation
+# section is generated. This option has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_MEMBERS     = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy. If set
+# to NO, these classes will be included in the various overviews. This option
+# has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_CLASSES     = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
+# (class|struct|union) declarations. If set to NO, these declarations will be
+# included in the documentation.
+# The default value is: NO.
+
+HIDE_FRIEND_COMPOUNDS  = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
+# documentation blocks found inside the body of a function. If set to NO, these
+# blocks will be appended to the function's detailed documentation block.
+# The default value is: NO.
+
+HIDE_IN_BODY_DOCS      = NO
+
+# The INTERNAL_DOCS tag determines if documentation that is typed after a
+# \internal command is included. If the tag is set to NO then the documentation
+# will be excluded. Set it to YES to include the internal documentation.
+# The default value is: NO.
+
+INTERNAL_DOCS          = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
+# names in lower-case letters. If set to YES, upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+# The default value is: system dependent.
+
+CASE_SENSE_NAMES       = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
+# their full class and namespace scopes in the documentation. If set to YES, the
+# scope will be hidden.
+# The default value is: NO.
+
+HIDE_SCOPE_NAMES       = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
+# the files that are included by a file in the documentation of that file.
+# The default value is: YES.
+
+SHOW_INCLUDE_FILES     = YES
+
+# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
+# grouped member an include statement to the documentation, telling the reader
+# which file to include in order to use the member.
+# The default value is: NO.
+
+SHOW_GROUPED_MEMB_INC  = YES
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
+# files with double quotes in the documentation rather than with sharp brackets.
+# The default value is: NO.
+
+FORCE_LOCAL_INCLUDES   = NO
+
+# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
+# documentation for inline members.
+# The default value is: YES.
+
+INLINE_INFO            = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
+# (detailed) documentation of file and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order.
+# The default value is: YES.
+
+SORT_MEMBER_DOCS       = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
+# descriptions of file, namespace and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order. Note that
+# this will also influence the order of the classes in the class list.
+# The default value is: NO.
+
+SORT_BRIEF_DOCS        = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
+# (brief and detailed) documentation of class members so that constructors and
+# destructors are listed first. If set to NO the constructors will appear in the
+# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
+# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
+# member documentation.
+# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
+# detailed member documentation.
+# The default value is: NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
+# of group names into alphabetical order. If set to NO the group names will
+# appear in their defined order.
+# The default value is: NO.
+
+SORT_GROUP_NAMES       = YES
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
+# fully-qualified names, including namespaces. If set to NO, the class list will
+# be sorted only by class name, not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the alphabetical
+# list.
+# The default value is: NO.
+
+SORT_BY_SCOPE_NAME     = YES
+
+# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
+# type resolution of all parameters of a function it will reject a match between
+# the prototype and the implementation of a member function even if there is
+# only one candidate or it is obvious which candidate to choose by doing a
+# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
+# accept a match between prototype and implementation in such cases.
+# The default value is: NO.
+
+STRICT_PROTO_MATCHING  = YES
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
+# list. This list is created by putting \todo commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TODOLIST      = NO
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
+# list. This list is created by putting \test commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TESTLIST      = NO
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
+# list. This list is created by putting \bug commands in the documentation.
+# The default value is: YES.
+
+GENERATE_BUGLIST       = NO
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
+# the deprecated list. This list is created by putting \deprecated commands in
+# the documentation.
+# The default value is: YES.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional documentation
+# sections, marked by \if <section_label> ... \endif and \cond <section_label>
+# ... \endcond blocks.
+
+ENABLED_SECTIONS       = YES
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
+# initial value of a variable or macro / define can have for it to appear in the
+# documentation. If the initializer consists of more lines than specified here
+# it will be hidden. Use a value of 0 to hide initializers completely. The
+# appearance of the value of individual variables and macros / defines can be
+# controlled using \showinitializer or \hideinitializer command in the
+# documentation regardless of this setting.
+# Minimum value: 0, maximum value: 10000, default value: 30.
+
+MAX_INITIALIZER_LINES  = 300
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
+# the bottom of the documentation of classes and structs. If set to YES, the
+# list will mention the files that were used to generate the documentation.
+# The default value is: YES.
+
+SHOW_USED_FILES        = YES
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
+# will remove the Files entry from the Quick Index and from the Folder Tree View
+# (if specified).
+# The default value is: YES.
+
+SHOW_FILES             = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
+# page. This will remove the Namespaces entry from the Quick Index and from the
+# Folder Tree View (if specified).
+# The default value is: YES.
+
+SHOW_NAMESPACES        = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command command input-file, where command is the value of the
+# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
+# by doxygen. Whatever the program writes to standard output is used as the file
+# version. For an example see the documentation.
+
+FILE_VERSION_FILTER    =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. To create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option. You can
+# optionally specify a file name after the option, if omitted DoxygenLayout.xml
+# will be used as the name of the layout file.
+#
+# Note that if you run doxygen from a directory containing a file called
+# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
+# tag is left empty.
+
+LAYOUT_FILE            =
+
+# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
+# the reference definitions. This must be a list of .bib files. The .bib
+# extension is automatically appended if omitted. This requires the bibtex tool
+# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
+# For LaTeX the style of the bibliography can be controlled using
+# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
+# search path. See also \cite for info how to create references.
+
+CITE_BIB_FILES         =
+
+#---------------------------------------------------------------------------
+# Configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated to
+# standard output by doxygen. If QUIET is set to YES this implies that the
+# messages are off.
+# The default value is: NO.
+
+QUIET                  = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
+# this implies that the warnings are on.
+#
+# Tip: Turn warnings on while writing the documentation.
+# The default value is: YES.
+
+WARNINGS               = YES
+
+# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
+# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
+# will automatically be disabled.
+# The default value is: YES.
+
+WARN_IF_UNDOCUMENTED   = YES
+
+# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some parameters
+# in a documented function, or documenting parameters that don't exist or using
+# markup commands wrongly.
+# The default value is: YES.
+
+WARN_IF_DOC_ERROR      = YES
+
+# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
+# are documented, but have no documentation for their parameters or return
+# value. If set to NO, doxygen will only warn about wrong or incomplete
+# parameter documentation, but not about the absence of documentation.
+# The default value is: NO.
+
+WARN_NO_PARAMDOC       = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that doxygen
+# can produce. The string should contain the $file, $line, and $text tags, which
+# will be replaced by the file and line number from which the warning originated
+# and the warning text. Optionally the format may contain $version, which will
+# be replaced by the version of the file (if it could be obtained via
+# FILE_VERSION_FILTER)
+# The default value is: $file:$line: $text.
+
+WARN_FORMAT            = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning and error
+# messages should be written. If left blank the output is written to standard
+# error (stderr).
+
+WARN_LOGFILE           =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag is used to specify the files and/or directories that contain
+# documented source files. You may enter file names like myfile.cpp or
+# directories like /usr/src/myproject. Separate the files or directories with
+# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
+# Note: If this tag is empty the current directory is searched.
+
+INPUT                  = "@XEN_BASE@/docs/xen-doxygen/mainpage.md" \
+                         "@XEN_BASE@/docs/doxygen_input.h"
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
+# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
+# documentation (see: https://www.gnu.org/software/libiconv/) for the list of
+# possible encodings.
+# The default value is: UTF-8.
+
+INPUT_ENCODING         = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
+# *.h) to filter out the source-files in the directories.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# read by doxygen.
+#
+# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
+# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
+# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
+# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08,
+# *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf and *.qsf.
+
+# This MUST be kept in sync with DOXY_SOURCES in doc/CMakeLists.txt
+# for incremental (and faster) builds to work correctly.
+FILE_PATTERNS          = "*.c" \
+                         "*.h" \
+                         "*.S" \
+                         "*.md"
+
+# The RECURSIVE tag can be used to specify whether or not subdirectories should
+# be searched for input files as well.
+# The default value is: NO.
+
+RECURSIVE              = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should be
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+#
+# Note that relative paths are relative to the directory from which doxygen is
+# run.
+
+EXCLUDE                = @XEN_BASE@/include/nothing.h
+
+# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+# directories that are symbolic links (a Unix file system feature) are excluded
+# from the input.
+# The default value is: NO.
+
+EXCLUDE_SYMLINKS       = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories for example use the pattern */test/*
+
+EXCLUDE_PATTERNS       =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories use the pattern */test/*
+
+# Hide internal names (starting with an underscore, and doxygen-generated names
+# for nested unnamed unions that don't generate meaningful sphinx output anyway.
+EXCLUDE_SYMBOLS        =
+# _*  *.__unnamed__ z_* Z_*
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or directories
+# that contain example code fragments that are included (see the \include
+# command).
+
+EXAMPLE_PATH           =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
+# *.h) to filter out the source-files in the directories. If left blank all
+# files are included.
+
+EXAMPLE_PATTERNS       =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude commands
+# irrespective of the value of the RECURSIVE tag.
+# The default value is: NO.
+
+EXAMPLE_RECURSIVE      = YES
+
+# The IMAGE_PATH tag can be used to specify one or more files or directories
+# that contain images that are to be included in the documentation (see the
+# \image command).
+
+IMAGE_PATH             =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command:
+#
+# <filter> <input-file>
+#
+# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
+# name of an input file. Doxygen will then use the output that the filter
+# program writes to standard output. If FILTER_PATTERNS is specified, this tag
+# will be ignored.
+#
+# Note that the filter must not add or remove lines; it is applied before the
+# code is scanned, but not when the output code is generated. If lines are added
+# or removed, the anchors will not be placed correctly.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+INPUT_FILTER           =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form: pattern=filter
+# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
+# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
+# patterns match the file name, INPUT_FILTER is applied.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+FILTER_PATTERNS        =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will also be used to filter the input files that are used for
+# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
+# The default value is: NO.
+
+FILTER_SOURCE_FILES    = NO
+
+# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
+# it is also possible to disable source filtering for a specific pattern using
+# *.ext= (so without naming a filter).
+# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
+
+FILTER_SOURCE_PATTERNS =
+
+# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+# is part of the input, its contents will be placed on the main page
+# (index.html). This can be useful if you have a project on for instance GitHub
+# and want to reuse the introduction page also for the doxygen output.
+
+USE_MDFILE_AS_MAINPAGE = "mainpage.md"
+
+#---------------------------------------------------------------------------
+# Configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
+# generated. Documented entities will be cross-referenced with these sources.
+#
+# Note: To get rid of all source code in the generated output, make sure that
+# also VERBATIM_HEADERS is set to NO.
+# The default value is: NO.
+
+SOURCE_BROWSER         = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body of functions,
+# classes and enums directly into the documentation.
+# The default value is: NO.
+
+INLINE_SOURCES         = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
+# special comment blocks from generated source code fragments. Normal C, C++ and
+# Fortran comments will always remain visible.
+# The default value is: YES.
+
+STRIP_CODE_COMMENTS    = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
+# function all documented functions referencing it will be listed.
+# The default value is: NO.
+
+REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES then for each documented function
+# all documented entities called/used by that function will be listed.
+# The default value is: NO.
+
+REFERENCES_RELATION    = NO
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
+# to YES then the hyperlinks from functions in REFERENCES_RELATION and
+# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
+# link to the documentation.
+# The default value is: YES.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
+# source code will show a tooltip with additional information such as prototype,
+# brief description and links to the definition and documentation. Since this
+# will make the HTML file larger and loading of large files a bit slower, you
+# can opt to disable this feature.
+# The default value is: YES.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+SOURCE_TOOLTIPS        = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code will
+# point to the HTML generated by the htags(1) tool instead of doxygen built-in
+# source browser. The htags tool is part of GNU's global source tagging system
+# (see https://www.gnu.org/software/global/global.html). You will need version
+# 4.8.6 or higher.
+#
+# To use it do the following:
+# - Install the latest version of global
+# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
+# - Make sure the INPUT points to the root of the source tree
+# - Run doxygen as normal
+#
+# Doxygen will invoke htags (and that will in turn invoke gtags), so these
+# tools must be available from the command line (i.e. in the search path).
+#
+# The result: instead of the source browser generated by doxygen, the links to
+# source code will now point to the output of htags.
+# The default value is: NO.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+USE_HTAGS              = NO
+
+# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
+# verbatim copy of the header file for each class for which an include is
+# specified. Set to NO to disable this.
+# See also: Section \class.
+# The default value is: YES.
+
+VERBATIM_HEADERS       = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
+# compounds will be generated. Enable this if the project contains a lot of
+# classes, structs, unions or interfaces.
+# The default value is: YES.
+
+ALPHABETICAL_INDEX     = YES
+
+# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
+# which the alphabetical index list will be split.
+# Minimum value: 1, maximum value: 20, default value: 5.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+COLS_IN_ALPHA_INDEX    = 2
+
+# In case all classes in a project start with a common prefix, all classes will
+# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
+# can be used to specify a prefix (or a list of prefixes) that should be ignored
+# while generating the index headers.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+IGNORE_PREFIX          =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
+# The default value is: YES.
+
+GENERATE_HTML          = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_OUTPUT            = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
+# generated HTML page (for example: .htm, .php, .asp).
+# The default value is: .html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FILE_EXTENSION    = .html
+
+# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
+# each generated HTML page. If the tag is left blank doxygen will generate a
+# standard header.
+#
+# To get valid HTML the header file that includes any scripts and style sheets
+# that doxygen needs, which is dependent on the configuration options used (e.g.
+# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
+# default header using
+# doxygen -w html new_header.html new_footer.html new_stylesheet.css
+# YourConfigFile
+# and then modify the file new_header.html. See also section "Doxygen usage"
+# for information on how to generate the default header that doxygen normally
+# uses.
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. For a description
+# of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_HEADER            = xen-doxygen/header.html
+
+# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+# generated HTML page. If the tag is left blank doxygen will generate a standard
+# footer. See HTML_HEADER for more information on how to generate a default
+# footer and what special commands can be used inside the footer. See also
+# section "Doxygen usage" for information on how to generate the default footer
+# that doxygen normally uses.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FOOTER            =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
+# sheet that is used by each HTML page. It can be used to fine-tune the look of
+# the HTML output. If left blank doxygen will generate a default style sheet.
+# See also section "Doxygen usage" for information on how to generate the style
+# sheet that doxygen normally uses.
+# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
+# it is more robust and this tag (HTML_STYLESHEET) will in the future become
+# obsolete.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_STYLESHEET        =
+
+# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# cascading style sheets that are included after the standard style sheets
+# created by doxygen. Using this option one can overrule certain style aspects.
+# This is preferred over using HTML_STYLESHEET since it does not replace the
+# standard style sheet and is therefore more robust against future updates.
+# Doxygen will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list). For an example see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_STYLESHEET  = xen-doxygen/customdoxygen.css
+
+# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the HTML output directory. Note
+# that these files will be copied to the base HTML output directory. Use the
+# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
+# files will be copied as-is; there are no commands or markers available.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_FILES       =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
+# will adjust the colors in the style sheet and background images according to
+# this color. Hue is specified as an angle on a colorwheel, see
+# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
+# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
+# purple, and 360 is red again.
+# Minimum value: 0, maximum value: 359, default value: 220.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_HUE    =
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
+# in the HTML output. For a value of 0 the output will use grayscales only. A
+# value of 255 will produce the most vivid colors.
+# Minimum value: 0, maximum value: 255, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_SAT    =
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
+# luminance component of the colors in the HTML output. Values below 100
+# gradually make the output lighter, whereas values above 100 make the output
+# darker. The value divided by 100 is the actual gamma applied, so 80 represents
+# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
+# change the gamma.
+# Minimum value: 40, maximum value: 240, default value: 80.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_GAMMA  =
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting this
+# to YES can help to show when doxygen was last run and thus if the
+# documentation is up to date.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_TIMESTAMP         = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_SECTIONS  = YES
+
+# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
+# shown in the various tree structured indices initially; the user can expand
+# and collapse entries dynamically later on. Doxygen will expand the tree to
+# such a level that at most the specified number of entries are visible (unless
+# a fully collapsed tree already exceeds this amount). So setting the number of
+# entries 1 will produce a full collapsed tree by default. 0 is a special value
+# representing an infinite number of entries and will result in a full expanded
+# tree by default.
+# Minimum value: 0, maximum value: 9999, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_INDEX_NUM_ENTRIES = 100
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files will be
+# generated that can be used as input for Apple's Xcode 3 integrated development
+# environment (see: https://developer.apple.com/tools/xcode/), introduced with
+# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
+# Makefile in the HTML output directory. Running make will produce the docset in
+# that directory and running make install will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
+# startup. See https://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+# for more information.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_DOCSET        = YES
+
+# This tag determines the name of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# The default value is: Doxygen generated docs.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDNAME        = "Doxygen generated docs"
+
+# This tag specifies a string that should uniquely identify the documentation
+# set bundle. This should be a reverse domain-name style string, e.g.
+# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+
+# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+# The default value is: org.doxygen.Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
+
+# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+# The default value is: Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_NAME  = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
+# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
+# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
+# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
+# Windows.
+#
+# The HTML Help Workshop contains a compiler that can convert all HTML output
+# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
+# files are now used as the Windows 98 help format, and will replace the old
+# Windows help format (.hlp) on all Windows platforms in the future. Compressed
+# HTML files also contain an index, a table of contents, and you can search for
+# words in the documentation. The HTML workshop also contains a viewer for
+# compressed HTML files.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_HTMLHELP      = NO
+
+# The CHM_FILE tag can be used to specify the file name of the resulting .chm
+# file. You can add a path in front of the file if the result should not be
+# written to the html output directory.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_FILE               = NO
+
+# The HHC_LOCATION tag can be used to specify the location (absolute path
+# including file name) of the HTML help compiler (hhc.exe). If non-empty,
+# doxygen will try to run the HTML help compiler on the generated index.hhp.
+# The file has to be specified with full path.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+HHC_LOCATION           =
+
+# The GENERATE_CHI flag controls if a separate .chi index file is generated
+# (YES) or that it should be included in the master .chm file (NO).
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+GENERATE_CHI           = NO
+
+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
+# and project file content.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_INDEX_ENCODING     =
+
+# The BINARY_TOC flag controls whether a binary table of contents is generated
+# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
+# enables the Previous and Next buttons.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+BINARY_TOC             = YES
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members to
+# the table of contents of the HTML help documentation and to the tree view.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+TOC_EXPAND             = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
+# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
+# (.qch) of the generated HTML documentation.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_QHP           = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
+# the file name of the resulting .qch file. The path specified is relative to
+# the HTML output folder.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QCH_FILE               =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
+# Project output. For more information please see Qt Help Project / Namespace
+# (see: http://doc.qt.io/qt-4.8/qthelpproject.html#namespace).
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_NAMESPACE          = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
+# Help Project output. For more information please see Qt Help Project / Virtual
+# Folders (see: http://doc.qt.io/qt-4.8/qthelpproject.html#virtual-folders).
+# The default value is: doc.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_VIRTUAL_FOLDER     = doc
+
+# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
+# filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_NAME   =
+
+# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_ATTRS  =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's filter section matches. Qt Help Project / Filter Attributes (see:
+# http://doc.qt.io/qt-4.8/qthelpproject.html#filter-attributes).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_SECT_FILTER_ATTRS  =
+
+# The QHG_LOCATION tag can be used to specify the location of Qt's
+# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
+# generated .qhp file.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHG_LOCATION           =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
+# generated, together with the HTML files, they form an Eclipse help plugin. To
+# install this plugin and make it available under the help contents menu in
+# Eclipse, the contents of the directory containing the HTML and XML files needs
+# to be copied into the plugins directory of eclipse. The name of the directory
+# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
+# After copying Eclipse needs to be restarted before the help appears.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_ECLIPSEHELP   = NO
+
+# A unique identifier for the Eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have this
+# name. Each documentation set should have its own identifier.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
+
+ECLIPSE_DOC_ID         = org.doxygen.Project
+
+# If you want full control over the layout of the generated HTML pages it might
+# be necessary to disable the index and replace it with your own. The
+# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
+# of each HTML page. A value of NO enables the index and the value YES disables
+# it. Since the tabs in the index contain the same information as the navigation
+# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+DISABLE_INDEX          = NO
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information. If the tag
+# value is set to YES, a side panel will be generated containing a tree-like
+# index structure (just like the one that is generated for HTML Help). For this
+# to work a browser that supports JavaScript, DHTML, CSS and frames is required
+# (i.e. any modern browser). Windows users are probably better off using the
+# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
+# further fine-tune the look of the index. As an example, the default style
+# sheet generated by doxygen has an example that shows how to put an image at
+# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
+# the same information as the tab index, you could consider setting
+# DISABLE_INDEX to YES when enabling this option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_TREEVIEW      = YES
+
+# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
+# doxygen will group on one line in the generated HTML documentation.
+#
+# Note that a value of 0 will completely suppress the enum values from appearing
+# in the overview section.
+# Minimum value: 0, maximum value: 20, default value: 4.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+ENUM_VALUES_PER_LINE   = 4
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
+# to set the initial width (in pixels) of the frame in which the tree is shown.
+# Minimum value: 0, maximum value: 1500, default value: 250.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+TREEVIEW_WIDTH         = 250
+
+# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
+# external symbols imported via tag files in a separate window.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+EXT_LINKS_IN_WINDOW    = NO
+
+# Use this tag to change the font size of LaTeX formulas included as images in
+# the HTML documentation. When you change the font size after a successful
+# doxygen run you need to manually remove any form_*.png images from the HTML
+# output directory to force them to be regenerated.
+# Minimum value: 8, maximum value: 50, default value: 10.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_FONTSIZE       = 10
+
+# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are not
+# supported properly for IE 6.0, but are supported on all modern browsers.
+#
+# Note that when changing this option you need to delete any form_*.png files in
+# the HTML output directory before the changes have effect.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_TRANSPARENT    = YES
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# https://www.mathjax.org) which uses client side Javascript for the rendering
+# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX            = NO
+
+# When MathJax is enabled you can set the default output format to be used for
+# the MathJax output. See the MathJax site (see:
+# http://docs.mathjax.org/en/latest/output.html) for more details.
+# Possible values are: HTML-CSS (which is slower, but has the best
+# compatibility), NativeMML (i.e. MathML) and SVG.
+# The default value is: HTML-CSS.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_FORMAT         = HTML-CSS
+
+# When MathJax is enabled you need to specify the location relative to the HTML
+# output directory using the MATHJAX_RELPATH option. The destination directory
+# should contain the MathJax.js script. For instance, if the mathjax directory
+# is located at the same level as the HTML output directory, then
+# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
+# Content Delivery Network so you can quickly see the result without installing
+# MathJax. However, it is strongly recommended to install a local copy of
+# MathJax from https://www.mathjax.org before deployment.
+# The default value is: http://cdn.mathjax.org/mathjax/latest.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_RELPATH        = http://cdn.mathjax.org/mathjax/latest
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+# extension names that should be enabled during MathJax rendering. For example
+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_EXTENSIONS     =
+
+# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
+# of code that will be used on startup of the MathJax code. See the MathJax site
+# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
+# example see the documentation.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_CODEFILE       =
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
+# the HTML output. The underlying search engine uses javascript and DHTML and
+# should work on any modern browser. Note that when using HTML help
+# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
+# there is already a search function so this one should typically be disabled.
+# For large projects the javascript based search engine can be slow, then
+# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
+# search using the keyboard; to jump to the search box use <access key> + S
+# (what the <access key> is depends on the OS and browser, but it is typically
+# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
+# key> to jump into the search results window, the results can be navigated
+# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
+# the search. The filter options can be selected when the cursor is inside the
+# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
+# to select a filter and <Enter> or <escape> to activate or cancel the filter
+# option.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+SEARCHENGINE           = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a web server instead of a web client using Javascript. There
+# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
+# setting. When disabled, doxygen will generate a PHP script for searching and
+# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
+# and searching needs to be provided by external tools. See the section
+# "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SERVER_BASED_SEARCH    = NO
+
+# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+# script for searching. Instead the search results are written to an XML file
+# which needs to be processed by an external indexer. Doxygen will invoke an
+# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
+# search results.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: https://xapian.org/).
+#
+# See the section "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH        = NO
+
+# The SEARCHENGINE_URL should point to a search engine hosted by a web server
+# which will return the search results when EXTERNAL_SEARCH is enabled.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: https://xapian.org/). See the section "External Indexing and
+# Searching" for details.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHENGINE_URL       =
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+# search data is written to a file for indexing by an external tool. With the
+# SEARCHDATA_FILE tag the name of this file can be specified.
+# The default file is: searchdata.xml.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHDATA_FILE        = searchdata.xml
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
+# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
+# projects and redirect the results back to the right project.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH_ID     =
+
+# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+# projects other than the one defined by this configuration file, but that are
+# all added to the same external search index. Each project needs to have a
+# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
+# to a relative location where the documentation can be found. The format is:
+# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTRA_SEARCH_MAPPINGS  =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
+# The default value is: YES.
+
+GENERATE_LATEX         = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_OUTPUT           = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked.
+#
+# Note that when enabling USE_PDFLATEX this option is only used for generating
+# bitmaps for formulas in the HTML output, but not in the Makefile that is
+# written to the output directory.
+# The default file is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_CMD_NAME         = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+# index for LaTeX.
+# The default file is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+MAKEINDEX_CMD_NAME     = makeindex
+
+# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+COMPACT_LATEX          = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used by the
+# printer.
+# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
+# 14 inches) and executive (7.25 x 10.5 inches).
+# The default value is: a4.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PAPER_TYPE             = a4
+
+# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
+# that should be included in the LaTeX output. The package can be specified just
+# by its name or with the correct syntax as to be used with the LaTeX
+# \usepackage command. To get the times font for instance you can specify :
+# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}
+# To use the option intlimits with the amsmath package you can specify:
+# EXTRA_PACKAGES=[intlimits]{amsmath}
+# If left blank no extra packages will be included.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+EXTRA_PACKAGES         =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
+# generated LaTeX document. The header should contain everything until the first
+# chapter. If it is left blank doxygen will generate a standard header. See
+# section "Doxygen usage" for information on how to let doxygen write the
+# default header to a separate file.
+#
+# Note: Only use a user-defined header if you know what you are doing! The
+# following commands have a special meaning inside the header: $title,
+# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
+# $projectbrief, $projectlogo. Doxygen will replace $title with the empty
+# string, for the replacement values of the other commands the user is referred
+# to HTML_HEADER.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HEADER           =
+
+# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
+# generated LaTeX document. The footer should contain everything after the last
+# chapter. If it is left blank doxygen will generate a standard footer. See
+# LATEX_HEADER for more information on how to generate a default footer and what
+# special commands can be used inside the footer.
+#
+# Note: Only use a user-defined footer if you know what you are doing!
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_FOOTER           =
+
+# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the LATEX_OUTPUT output
+# directory. Note that the files will be copied as-is; there are no commands or
+# markers available.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_FILES      =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
+# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
+# contain links (just like the HTML output) instead of page references. This
+# makes the output suitable for online browsing using a PDF viewer.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PDF_HYPERLINKS         = YES
+
+# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
+# the PDF file directly from the LaTeX files. Set this option to YES, to get a
+# higher quality PDF documentation.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+USE_PDFLATEX           = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
+# command to the generated LaTeX files. This will instruct LaTeX to keep running
+# if errors occur, instead of asking the user for help. This option is also used
+# when generating formulas in HTML.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BATCHMODE        = NO
+
+# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
+# index chapters (such as File Index, Compound Index, etc.) in the output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HIDE_INDICES     = NO
+
+# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
+# code with syntax highlighting in the LaTeX output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_SOURCE_CODE      = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. See
+# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+# The default value is: plain.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BIB_STYLE        = plain
+
+#---------------------------------------------------------------------------
+# Configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
+# RTF output is optimized for Word 97 and may not look too pretty with other RTF
+# readers/editors.
+# The default value is: NO.
+
+GENERATE_RTF           = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: rtf.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_OUTPUT             = rtf
+
+# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+COMPACT_RTF            = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
+# contain hyperlink fields. The RTF file will contain links (just like the HTML
+# output) instead of page references. This makes the output suitable for online
+# browsing using Word or some other Word compatible readers that support those
+# fields.
+#
+# Note: WordPad (write) and others do not support links.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_HYPERLINKS         = YES
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's config
+# file, i.e. a series of assignments. You only have to provide replacements,
+# missing definitions are set to their default value.
+#
+# See also section "Doxygen usage" for information on how to generate the
+# default style sheet that doxygen normally uses.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_STYLESHEET_FILE    =
+
+# Set optional variables used in the generation of an RTF document. Syntax is
+# similar to doxygen's config file. A template extensions file can be generated
+# using doxygen -e rtf extensionFile.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_EXTENSIONS_FILE    =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
+# classes and files.
+# The default value is: NO.
+
+GENERATE_MAN           = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it. A directory man3 will be created inside the directory specified by
+# MAN_OUTPUT.
+# The default directory is: man.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_OUTPUT             = man
+
+# The MAN_EXTENSION tag determines the extension that is added to the generated
+# man pages. In case the manual section does not start with a number, the number
+# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
+# optional.
+# The default value is: .3.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_EXTENSION          = .3
+
+# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
+# will generate one additional man file for each entity documented in the real
+# man page(s). These additional files only source the real man page, but without
+# them the man command would be unable to find the correct page.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_LINKS              = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
+# captures the structure of the code including all documentation.
+# The default value is: NO.
+
+GENERATE_XML           = YES
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: xml.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_OUTPUT             = xml
+
+# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
+# listings (including syntax highlighting and cross-referencing information) to
+# the XML output. Note that enabling this will significantly increase the size
+# of the XML output.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_PROGRAMLISTING     = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the DOCBOOK output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
+# that can be used to generate PDF.
+# The default value is: NO.
+
+GENERATE_DOCBOOK       = NO
+
+# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
+# front of it.
+# The default directory is: docbook.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_OUTPUT         = docbook
+
+#---------------------------------------------------------------------------
+# Configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
+# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
+# the structure of the code including all documentation. Note that this feature
+# is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_AUTOGEN_DEF   = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
+# file that captures the structure of the code including all documentation.
+#
+# Note that this feature is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_PERLMOD       = NO
+
+# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
+# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
+# output from the Perl module output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_LATEX          = NO
+
+# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
+# formatted so it can be parsed by a human reader. This is useful if you want to
+# understand what is going on. On the other hand, if this tag is set to NO, the
+# size of the Perl module output will be much smaller and Perl will parse it
+# just the same.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_PRETTY         = YES
+
+# The names of the make variables in the generated doxyrules.make file are
+# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
+# so different doxyrules.make files included by the same Makefile don't
+# overwrite each other's variables.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
+# C-preprocessor directives found in the sources and include files.
+# The default value is: YES.
+
+ENABLE_PREPROCESSING   = YES
+
+# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
+# in the source code. If set to NO, only conditional compilation will be
+# performed. Macro expansion can be done in a controlled way by setting
+# EXPAND_ONLY_PREDEF to YES.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+MACRO_EXPANSION        = YES
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
+# the macro expansion is limited to the macros specified with the PREDEFINED and
+# EXPAND_AS_DEFINED tags.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_ONLY_PREDEF     = NO
+
+# If the SEARCH_INCLUDES tag is set to YES, the include files in the
+# INCLUDE_PATH will be searched if a #include is found.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SEARCH_INCLUDES        = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by the
+# preprocessor.
+# This tag requires that the tag SEARCH_INCLUDES is set to YES.
+
+INCLUDE_PATH           = "@XEN_BASE@/xen/include/generated" \
+                         "@XEN_BASE@/xen/include/"
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will be
+# used.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+INCLUDE_FILE_PATTERNS  =
+
+# The PREDEFINED tag can be used to specify one or more macro names that are
+# defined before the preprocessor is started (similar to the -D option of e.g.
+# gcc). The argument of the tag is a list of macros of the form: name or
+# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
+# is assumed. To prevent a macro definition from being undefined via #undef or
+# recursively expanded use the := operator instead of the = operator.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+PREDEFINED             = __attribute__(x)= \
+                         DOXYGEN
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
+# tag can be used to specify a list of macro names that should be expanded. The
+# macro definition that is found in the sources will be used. Use the PREDEFINED
+# tag if you want to use a different macro definition that overrules the
+# definition found in the source code.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_AS_DEFINED      =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
+# remove all references to function-like macros that are alone on a line, have
+# an all uppercase name, and do not end with a semicolon. Such function macros
+# are typically used for boiler-plate code, and will confuse the parser if not
+# removed.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SKIP_FUNCTION_MACROS   = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tag files. For each tag
+# file the location of the external documentation should be added. The format of
+# a tag file without this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where loc1 and loc2 can be relative or absolute paths or URLs. See the
+# section "Linking to external documentation" for more information about the use
+# of tag files.
+# Note: Each tag file must have a unique name (where the name does NOT include
+# the path). If a tag file is not located in the directory in which doxygen is
+# run, you must also specify the path to the tagfile here.
+
+TAGFILES               =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
+# tag file that is based on the input files it reads. See section "Linking to
+# external documentation" for more information about the usage of tag files.
+
+GENERATE_TAGFILE       =
+
+# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
+# the class index. If set to NO, only the inherited external classes will be
+# listed.
+# The default value is: NO.
+
+ALLEXTERNALS           = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will be
+# listed.
+# The default value is: YES.
+
+EXTERNAL_GROUPS        = YES
+
+# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
+# the related pages index. If set to NO, only the current project's pages will
+# be listed.
+# The default value is: YES.
+
+EXTERNAL_PAGES         = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram
+# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
+# NO turns the diagrams off. Note that this option also works with HAVE_DOT
+# disabled, but it is recommended to install and use dot, since it yields more
+# powerful graphs.
+# The default value is: YES.
+
+CLASS_DIAGRAMS         = NO
+
+# You can include diagrams made with dia in doxygen documentation. Doxygen will
+# then run dia to produce the diagram and insert it in the documentation. The
+# DIA_PATH tag allows you to specify the directory where the dia binary resides.
+# If left empty dia is assumed to be found in the default search path.
+
+DIA_PATH               =
+
+# If set to YES the inheritance and collaboration graphs will hide inheritance
+# and usage relations if the target is undocumented or is not a class.
+# The default value is: YES.
+
+HIDE_UNDOC_RELATIONS   = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz (see:
+# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
+# Bell Labs. The other options in this section have no effect if this option is
+# set to NO
+# The default value is: NO.
+
+HAVE_DOT               = NO
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
+# to run in parallel. When set to 0 doxygen will base this on the number of
+# processors available in the system. You can set it explicitly to a value
+# larger than 0 to get control over the balance between CPU load and processing
+# speed.
+# Minimum value: 0, maximum value: 32, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_NUM_THREADS        = 0
+
+# When you want a differently looking font in the dot files that doxygen
+# generates you can specify the font name using DOT_FONTNAME. You need to make
+# sure dot is able to find the font, which can be done by putting it in a
+# standard location or by setting the DOTFONTPATH environment variable or by
+# setting DOT_FONTPATH to the directory containing the font.
+# The default value is: Helvetica.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTNAME           = Helvetica
+
+# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
+# dot graphs.
+# Minimum value: 4, maximum value: 24, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTSIZE           = 10
+
+# By default doxygen will tell dot to use the default font as specified with
+# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
+# the path where dot can find it using this tag.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTPATH           =
+
+# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
+# each documented class showing the direct and indirect inheritance relations.
+# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CLASS_GRAPH            = YES
+
+# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
+# graph for each documented class showing the direct and indirect implementation
+# dependencies (inheritance, containment, and class references variables) of the
+# class with other documented classes.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+COLLABORATION_GRAPH    = YES
+
+# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
+# groups, showing the direct groups dependencies.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GROUP_GRAPHS           = YES
+
+# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LOOK               = NO
+
+# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
+# class node. If there are many fields or methods and many nodes the graph may
+# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
+# number of items for each type to make the size more manageable. Set this to 0
+# for no limit. Note that the threshold may be exceeded by 50% before the limit
+# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
+# but if the number exceeds 15, the total amount of fields shown is limited to
+# 10.
+# Minimum value: 0, maximum value: 100, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LIMIT_NUM_FIELDS   = 10
+
+# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
+# collaboration graphs will show the relations between templates and their
+# instances.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+TEMPLATE_RELATIONS     = NO
+
+# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
+# YES then doxygen will generate a graph for each documented file showing the
+# direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDE_GRAPH          = YES
+
+# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
+# set to YES then doxygen will generate a graph for each documented file showing
+# the direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDED_BY_GRAPH      = YES
+
+# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command. Disabling a call graph can be
+# accomplished by means of the command \hidecallgraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALL_GRAPH             = NO
+
+# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable caller graphs for selected
+# functions only using the \callergraph command. Disabling a caller graph can be
+# accomplished by means of the command \hidecallergraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALLER_GRAPH           = NO
+
+# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
+# hierarchy of all classes instead of a textual one.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GRAPHICAL_HIERARCHY    = YES
+
+# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
+# dependencies a directory has on other directories in a graphical way. The
+# dependency relations are determined by the #include relations between the
+# files in the directories.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DIRECTORY_GRAPH        = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. For an explanation of the image formats see the section
+# output formats in the documentation of the dot tool (Graphviz (see:
+# http://www.graphviz.org/)).
+# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
+# to make the SVG files visible in IE 9+ (other browsers do not have this
+# requirement).
+# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,
+# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
+# png:gdiplus:gdiplus.
+# The default value is: png.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_IMAGE_FORMAT       = png
+
+# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+# enable generation of interactive SVG images that allow zooming and panning.
+#
+# Note that this requires a modern browser other than Internet Explorer. Tested
+# and working are Firefox, Chrome, Safari, and Opera.
+# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
+# the SVG files visible. Older versions of IE do not have SVG support.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INTERACTIVE_SVG        = NO
+
+# The DOT_PATH tag can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_PATH               =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the \dotfile
+# command).
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOTFILE_DIRS           =
+
+# The MSCFILE_DIRS tag can be used to specify one or more directories that
+# contain msc files that are included in the documentation (see the \mscfile
+# command).
+
+MSCFILE_DIRS           =
+
+# The DIAFILE_DIRS tag can be used to specify one or more directories that
+# contain dia files that are included in the documentation (see the \diafile
+# command).
+
+DIAFILE_DIRS           =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
+# that will be shown in the graph. If the number of nodes in a graph becomes
+# larger than this value, doxygen will truncate the graph, which is visualized
+# by representing a node as a red box. Note that doxygen if the number of direct
+# children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
+# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+# Minimum value: 0, maximum value: 10000, default value: 50.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_GRAPH_MAX_NODES    = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
+# generated by dot. A depth value of 3 means that only nodes reachable from the
+# root by following a path via at most 3 edges will be shown. Nodes that lay
+# further from the root node will be omitted. Note that setting this option to 1
+# or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+# Minimum value: 0, maximum value: 1000, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+MAX_DOT_GRAPH_DEPTH    = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not seem
+# to support this out of the box.
+#
+# Warning: Depending on the platform used, enabling this option may lead to
+# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+# read).
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_TRANSPARENT        = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10) support
+# this, this feature is disabled by default.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_MULTI_TARGETS      = NO
+
+# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
+# explaining the meaning of the various boxes and arrows in the dot generated
+# graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GENERATE_LEGEND        = YES
+
+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
+# files that are used to generate the various graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_CLEANUP            = YES
diff --git a/m4/ax_python_module.m4 b/m4/ax_python_module.m4
new file mode 100644
index 0000000000..107d88264a
--- /dev/null
+++ b/m4/ax_python_module.m4
@@ -0,0 +1,56 @@
+# ===========================================================================
+#     https://www.gnu.org/software/autoconf-archive/ax_python_module.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_PYTHON_MODULE(modname[, fatal, python])
+#
+# DESCRIPTION
+#
+#   Checks for Python module.
+#
+#   If fatal is non-empty then absence of a module will trigger an error.
+#   The third parameter can either be "python" for Python 2 or "python3" for
+#   Python 3; defaults to Python 3.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Andrew Collier
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved. This file is offered as-is, without any
+#   warranty.
+
+#serial 9
+
+AU_ALIAS([AC_PYTHON_MODULE], [AX_PYTHON_MODULE])
+AC_DEFUN([AX_PYTHON_MODULE],[
+    if test -z $PYTHON;
+    then
+        if test -z "$3";
+        then
+            PYTHON="python3"
+        else
+            PYTHON="$3"
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    AC_MSG_CHECKING($PYTHON_NAME module: $1)
+    $PYTHON -c "import $1" 2>/dev/null
+    if test $? -eq 0;
+    then
+        AC_MSG_RESULT(yes)
+        eval AS_TR_CPP(HAVE_PYMOD_$1)=yes
+    else
+        AC_MSG_RESULT(no)
+        eval AS_TR_CPP(HAVE_PYMOD_$1)=no
+        #
+        if test -n "$2"
+        then
+            AC_MSG_ERROR(failed to find required module $1)
+            exit 1
+        fi
+    fi
+])
\ No newline at end of file
diff --git a/m4/docs_tool.m4 b/m4/docs_tool.m4
index 3e8814ac8d..39aa348026 100644
--- a/m4/docs_tool.m4
+++ b/m4/docs_tool.m4
@@ -15,3 +15,12 @@ dnl
         AC_MSG_WARN([$2 is not available so some documentation won't be built])
     ])
 ])
+
+AC_DEFUN([AX_DOCS_TOOL_REQ_PROG], [
+dnl
+    AC_ARG_VAR([$1], [Path to $2 tool])
+    AC_PATH_PROG([$1], [$2])
+    AS_IF([! test -x "$ac_cv_path_$1"], [
+        AC_MSG_ERROR([$2 is needed])
+    ])
+])
\ No newline at end of file
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 09:12:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 09:12:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112731.215010 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYPxd-0003H9-D4; Mon, 19 Apr 2021 09:12:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112731.215010; Mon, 19 Apr 2021 09: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 1lYPxd-0003H2-9o; Mon, 19 Apr 2021 09:12:53 +0000
Received: by outflank-mailman (input) for mailman id 112731;
 Mon, 19 Apr 2021 09:12:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=euet=JQ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lYPxc-0003D5-Dp
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 09:12:52 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 4b91a093-40e1-48bf-96df-9e6ac0698ae6;
 Mon, 19 Apr 2021 09:12:47 +0000 (UTC)
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 B37931FB;
 Mon, 19 Apr 2021 02:12:46 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 61EEC3F85F;
 Mon, 19 Apr 2021 02:12: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: 4b91a093-40e1-48bf-96df-9e6ac0698ae6
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH v2 2/3] docs: hypercalls sphinx skeleton for generated html
Date: Mon, 19 Apr 2021 10:12:30 +0100
Message-Id: <20210419091231.55684-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210419091231.55684-1-luca.fancellu@arm.com>
References: <20210419091231.55684-1-luca.fancellu@arm.com>

Create a skeleton for the documentation about hypercalls

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 .gitignore                             |  1 +
 docs/Makefile                          |  4 ++++
 docs/hypercall-interfaces/arm32.rst    |  4 ++++
 docs/hypercall-interfaces/arm64.rst    | 32 ++++++++++++++++++++++++++
 docs/hypercall-interfaces/index.rst.in |  7 ++++++
 docs/hypercall-interfaces/x86_64.rst   |  4 ++++
 docs/index.rst                         |  8 +++++++
 7 files changed, 60 insertions(+)
 create mode 100644 docs/hypercall-interfaces/arm32.rst
 create mode 100644 docs/hypercall-interfaces/arm64.rst
 create mode 100644 docs/hypercall-interfaces/index.rst.in
 create mode 100644 docs/hypercall-interfaces/x86_64.rst

diff --git a/.gitignore b/.gitignore
index a5eebf1213..dd3ca96b6f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -64,6 +64,7 @@ docs/xen.doxyfile
 docs/xen.doxyfile.tmp
 docs/doxygen_input.h
 docs/doxygen_input.h.tmp
+docs/hypercall-interfaces/index.rst
 extras/mini-os*
 install/*
 stubdom/*-minios-config.mk
diff --git a/docs/Makefile b/docs/Makefile
index a736a1714f..7ec209e502 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -65,6 +65,9 @@ build: html txt pdf man-pages figs
 sphinx-html: $(DOXY_DEPS) $(DOXY_LIST_SOURCES)
 ifneq ($(SPHINXBUILD),no)
 	$(DOXYGEN) xen.doxyfile
+	@echo "Generating hypercall-interfaces/index.rst"
+	@sed -e "s,@XEN_TARGET_ARCH@,$(XEN_TARGET_ARCH),g" \
+		hypercall-interfaces/index.rst.in > hypercall-interfaces/index.rst
 	XEN_ROOT=$(realpath $(XEN_ROOT)) $(SPHINXBUILD) -b html . sphinx/html
 else
 	@echo "Sphinx is not installed; skipping sphinx-html documentation."
@@ -113,6 +116,7 @@ clean: clean-man-pages
 	rm -f xen.doxyfile.tmp
 	rm -f doxygen_input.h
 	rm -f doxygen_input.h.tmp
+	rm -f hypercall-interfaces/index.rst
 
 .PHONY: distclean
 distclean: clean
diff --git a/docs/hypercall-interfaces/arm32.rst b/docs/hypercall-interfaces/arm32.rst
new file mode 100644
index 0000000000..4e973fbbaf
--- /dev/null
+++ b/docs/hypercall-interfaces/arm32.rst
@@ -0,0 +1,4 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - arm32
+============================
diff --git a/docs/hypercall-interfaces/arm64.rst b/docs/hypercall-interfaces/arm64.rst
new file mode 100644
index 0000000000..5e701a2adc
--- /dev/null
+++ b/docs/hypercall-interfaces/arm64.rst
@@ -0,0 +1,32 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - arm64
+============================
+
+Starting points
+---------------
+.. toctree::
+   :maxdepth: 2
+
+
+
+Functions
+---------
+
+
+Structs
+-------
+
+
+Enums and sets of #defines
+--------------------------
+
+
+Typedefs
+--------
+
+
+Enum values and individual #defines
+-----------------------------------
+
+
diff --git a/docs/hypercall-interfaces/index.rst.in b/docs/hypercall-interfaces/index.rst.in
new file mode 100644
index 0000000000..e4dcc5db8d
--- /dev/null
+++ b/docs/hypercall-interfaces/index.rst.in
@@ -0,0 +1,7 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces
+====================
+
+.. toctree::
+   @XEN_TARGET_ARCH@
diff --git a/docs/hypercall-interfaces/x86_64.rst b/docs/hypercall-interfaces/x86_64.rst
new file mode 100644
index 0000000000..3ed70dff95
--- /dev/null
+++ b/docs/hypercall-interfaces/x86_64.rst
@@ -0,0 +1,4 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - x86_64
+=============================
diff --git a/docs/index.rst b/docs/index.rst
index b75487a05d..52226a42d8 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -53,6 +53,14 @@ kind of development environment.
    hypervisor-guide/index
 
 
+Hypercall Interfaces documentation
+----------------------------------
+
+.. toctree::
+   :maxdepth: 2
+
+   hypercall-interfaces/index
+
 Miscellanea
 -----------
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 09:12:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 09:12:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112732.215022 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYPxi-0003LS-Nx; Mon, 19 Apr 2021 09:12:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112732.215022; Mon, 19 Apr 2021 09: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 1lYPxi-0003LG-JY; Mon, 19 Apr 2021 09:12:58 +0000
Received: by outflank-mailman (input) for mailman id 112732;
 Mon, 19 Apr 2021 09:12:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=euet=JQ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lYPxh-0003D5-Dk
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 09:12:57 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id d8286f12-9daf-4062-8e85-fe3e40dcc95d;
 Mon, 19 Apr 2021 09:12:48 +0000 (UTC)
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 4467DED1;
 Mon, 19 Apr 2021 02:12:48 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E6F2A3F85F;
 Mon, 19 Apr 2021 02:12: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: d8286f12-9daf-4062-8e85-fe3e40dcc95d
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH v2 3/3] docs/doxygen: doxygen documentation for grant_table.h
Date: Mon, 19 Apr 2021 10:12:31 +0100
Message-Id: <20210419091231.55684-4-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210419091231.55684-1-luca.fancellu@arm.com>
References: <20210419091231.55684-1-luca.fancellu@arm.com>

Modification to include/public/grant_table.h:

1) Add doxygen tags to:
 - Create Grant tables section
 - include variables in the generated documentation
2) Add .rst file for grant table for Arm64

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
v2 changes:
- Revert back to anonymous union/struct
- add doxygen tags to skip anonymous union/struct
---
 docs/hypercall-interfaces/arm64.rst           |  1 +
 .../arm64/grant_tables.rst                    |  8 ++
 docs/xen-doxygen/doxy_input.list              |  1 +
 xen/include/public/grant_table.h              | 97 ++++++++++++-------
 4 files changed, 73 insertions(+), 34 deletions(-)
 create mode 100644 docs/hypercall-interfaces/arm64/grant_tables.rst

diff --git a/docs/hypercall-interfaces/arm64.rst b/docs/hypercall-interfaces/arm64.rst
index 5e701a2adc..c30a7142b1 100644
--- a/docs/hypercall-interfaces/arm64.rst
+++ b/docs/hypercall-interfaces/arm64.rst
@@ -8,6 +8,7 @@ Starting points
 .. toctree::
    :maxdepth: 2
 
+   arm64/grant_tables
 
 
 Functions
diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hypercall-interfaces/arm64/grant_tables.rst
new file mode 100644
index 0000000000..8955ec5812
--- /dev/null
+++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
@@ -0,0 +1,8 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Grant Tables
+============
+
+.. doxygengroup:: grant_table
+   :project: Xen
+   :members:
diff --git a/docs/xen-doxygen/doxy_input.list b/docs/xen-doxygen/doxy_input.list
index e69de29bb2..233d692fa7 100644
--- a/docs/xen-doxygen/doxy_input.list
+++ b/docs/xen-doxygen/doxy_input.list
@@ -0,0 +1 @@
+xen/include/public/grant_table.h
diff --git a/xen/include/public/grant_table.h b/xen/include/public/grant_table.h
index 84b1d26b36..51c8d85822 100644
--- a/xen/include/public/grant_table.h
+++ b/xen/include/public/grant_table.h
@@ -25,15 +25,19 @@
  * Copyright (c) 2004, K A Fraser
  */
 
-#ifndef __XEN_PUBLIC_GRANT_TABLE_H__
+/**
+ * @file
+ * @brief Interface for granting foreign access to page frames, and receiving
+ * page-ownership transfers.
+ */
+
+#if !defined(__XEN_PUBLIC_GRANT_TABLE_H__) || defined(DOXYGEN)
 #define __XEN_PUBLIC_GRANT_TABLE_H__
 
 #include "xen.h"
 
-/*
- * `incontents 150 gnttab Grant Tables
- *
- * Xen's grant tables provide a generic mechanism to memory sharing
+/**
+ * @brief Xen's grant tables provide a generic mechanism to memory sharing
  * between domains. This shared memory interface underpins the split
  * device drivers for block and network IO.
  *
@@ -51,13 +55,10 @@
  * know the real machine address of a page it is sharing. This makes
  * it possible to share memory correctly with domains running in
  * fully virtualised memory.
- */
-
-/***********************************
+ *
  * GRANT TABLE REPRESENTATION
- */
-
-/* Some rough guidelines on accessing and updating grant-table entries
+ *
+ * Some rough guidelines on accessing and updating grant-table entries
  * in a concurrency-safe manner. For more information, Linux contains a
  * reference implementation for guest OSes (drivers/xen/grant_table.c, see
  * http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=drivers/xen/grant-table.c;hb=HEAD
@@ -66,6 +67,7 @@
  *     compiler barrier will still be required.
  *
  * Introducing a valid entry into the grant table:
+ * @code
  *  1. Write ent->domid.
  *  2. Write ent->frame:
  *      GTF_permit_access:   Frame to which access is permitted.
@@ -73,20 +75,25 @@
  *                           frame, or zero if none.
  *  3. Write memory barrier (WMB).
  *  4. Write ent->flags, inc. valid type.
+ * @endcode
  *
  * Invalidating an unused GTF_permit_access entry:
+ * @code
  *  1. flags = ent->flags.
  *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
  *  NB. No need for WMB as reuse of entry is control-dependent on success of
  *      step 3, and all architectures guarantee ordering of ctrl-dep writes.
+ * @endcode
  *
  * Invalidating an in-use GTF_permit_access entry:
+ *
  *  This cannot be done directly. Request assistance from the domain controller
  *  which can set a timeout on the use of a grant entry and take necessary
  *  action. (NB. This is not yet implemented!).
  *
  * Invalidating an unused GTF_accept_transfer entry:
+ * @code
  *  1. flags = ent->flags.
  *  2. Observe that !(flags & GTF_transfer_committed). [*]
  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
@@ -97,47 +104,55 @@
  *      transferred frame is written. It is safe for the guest to spin waiting
  *      for this to occur (detect by observing GTF_transfer_completed in
  *      ent->flags).
+ * @endcode
  *
  * Invalidating a committed GTF_accept_transfer entry:
  *  1. Wait for (ent->flags & GTF_transfer_completed).
  *
  * Changing a GTF_permit_access from writable to read-only:
+ *
  *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writing.
  *
  * Changing a GTF_permit_access from read-only to writable:
+ *
  *  Use SMP-safe bit-setting instruction.
- */
-
-/*
- * Reference to a grant entry in a specified domain's grant table.
- */
-typedef uint32_t grant_ref_t;
-
-/*
+ *
  * A grant table comprises a packed array of grant entries in one or more
  * page frames shared between Xen and a guest.
+ *
  * [XEN]: This field is written by Xen and read by the sharing guest.
+ *
  * [GST]: This field is written by the guest and read by Xen.
+ *
+ * @addtogroup grant_table Grant Tables
+ * @{
  */
 
-/*
- * Version 1 of the grant table entry structure is maintained purely
- * for backwards compatibility.  New guests should use version 2.
+/**
+ * Reference to a grant entry in a specified domain's grant table.
  */
+typedef uint32_t grant_ref_t;
+
 #if __XEN_INTERFACE_VERSION__ < 0x0003020a
 #define grant_entry_v1 grant_entry
 #define grant_entry_v1_t grant_entry_t
 #endif
+/**
+ * Version 1 of the grant table entry structure is maintained purely
+ * for backwards compatibility.  New guests should use version 2.
+ */
 struct grant_entry_v1 {
-    /* GTF_xxx: various type and flag information.  [XEN,GST] */
+    /** GTF_xxx: various type and flag information.  [XEN,GST] */
     uint16_t flags;
-    /* The domain being granted foreign privileges. [GST] */
+    /** The domain being granted foreign privileges. [GST] */
     domid_t  domid;
-    /*
+    /**
+     * @code
      * GTF_permit_access: GFN that @domid is allowed to map and access. [GST]
      * GTF_accept_transfer: GFN that @domid is allowed to transfer into. [GST]
      * GTF_transfer_completed: MFN whose ownership transferred by @domid
      *                         (non-translated guests only). [XEN]
+     * @endcode
      */
     uint32_t frame;
 };
@@ -243,23 +258,27 @@ union grant_entry_v2 {
      * In that case, the frame field has the same semantics as the
      * field of the same name in the V1 entry structure.
      */
+    /** @cond skip anonymous struct/union for doxygen */
     struct {
         grant_entry_header_t hdr;
         uint32_t pad0;
         uint64_t frame;
     } full_page;
+    /** @endcond */
 
     /*
      * If the grant type is GTF_grant_access and GTF_sub_page is set,
      * @domid is allowed to access bytes [@page_off,@page_off+@length)
      * in frame @frame.
      */
+    /** @cond skip anonymous struct/union for doxygen */
     struct {
         grant_entry_header_t hdr;
         uint16_t page_off;
         uint16_t length;
         uint64_t frame;
     } sub_page;
+    /** @endcond */
 
     /*
      * If the grant is GTF_transitive, @domid is allowed to use the
@@ -270,12 +289,14 @@ union grant_entry_v2 {
      * The current version of Xen does not allow transitive grants
      * to be mapped.
      */
+    /** @cond skip anonymous struct/union for doxygen */
     struct {
         grant_entry_header_t hdr;
         domid_t trans_domid;
         uint16_t pad0;
         grant_ref_t gref;
     } transitive;
+    /** @endcond */
 
     uint32_t __spacer[4]; /* Pad to a power of two */
 };
@@ -433,7 +454,12 @@ typedef struct gnttab_transfer gnttab_transfer_t;
 DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
 
 
-/*
+#define _GNTCOPY_source_gref      (0)
+#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
+#define _GNTCOPY_dest_gref        (1)
+#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
+
+/**
  * GNTTABOP_copy: Hypervisor based copy
  * source and destinations can be eithers MFNs or, for foreign domains,
  * grant references. the foreign domain has to grant read/write access
@@ -451,18 +477,15 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
  * bytes to be copied.
  */
 
-#define _GNTCOPY_source_gref      (0)
-#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
-#define _GNTCOPY_dest_gref        (1)
-#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
-
 struct gnttab_copy {
     /* IN parameters. */
     struct gnttab_copy_ptr {
+        /** @cond skip anonymous struct/union for doxygen */
         union {
             grant_ref_t ref;
             xen_pfn_t   gmfn;
         } u;
+        /** @endcond */
         domid_t  domid;
         uint16_t offset;
     } source, dest;
@@ -579,17 +602,19 @@ struct gnttab_swap_grant_ref {
 typedef struct gnttab_swap_grant_ref gnttab_swap_grant_ref_t;
 DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
 
-/*
+/**
  * Issue one or more cache maintenance operations on a portion of a
  * page granted to the calling domain by a foreign domain.
  */
 struct gnttab_cache_flush {
+    /** @cond skip anonymous struct/union for doxygen */
     union {
         uint64_t dev_bus_addr;
         grant_ref_t ref;
     } a;
-    uint16_t offset; /* offset from start of grant */
-    uint16_t length; /* size within the grant */
+    /** @endcond */
+    uint16_t offset; /**< offset from start of grant */
+    uint16_t length; /**< size within the grant */
 #define GNTTAB_CACHE_CLEAN          (1u<<0)
 #define GNTTAB_CACHE_INVAL          (1u<<1)
 #define GNTTAB_CACHE_SOURCE_GREF    (1u<<31)
@@ -673,6 +698,10 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_cache_flush_t);
     "operation not done; try again"             \
 }
 
+/**
+ * @}
+*/
+
 #endif /* __XEN_PUBLIC_GRANT_TABLE_H__ */
 
 /*
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 09:16:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 09:16:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112747.215034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYQ1C-0003ke-7b; Mon, 19 Apr 2021 09:16:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112747.215034; Mon, 19 Apr 2021 09:16:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYQ1C-0003kX-4Z; Mon, 19 Apr 2021 09:16:34 +0000
Received: by outflank-mailman (input) for mailman id 112747;
 Mon, 19 Apr 2021 09:16:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2xPN=JQ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYQ1A-0003kR-3d
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 09:16:32 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id edf516cd-bed8-4b87-978d-7f2f8548a714;
 Mon, 19 Apr 2021 09:16: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: edf516cd-bed8-4b87-978d-7f2f8548a714
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618823791;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=nq6VMSDq3Hg9M4OVHynOZLLxvIBm7lu4U6CkezA0eB0=;
  b=NPXSDf5Qss1YyaUI3jHQL7bdvpK6i0YWBCu2mEZdNiNbyr8OtxHVJxMZ
   K/UgfvHIIItZdBTccbnsKv3ePXIrFdzBoNvdJHnNsqic6e7r35UUpELGz
   BSdSXFenuu+4evXOqHQCaPyJs89s8fSwuWbbX5kGg0bTdXsoOKVaNJQ3S
   A=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: MX7KVcCsGh5U0FRapQiRICjmg3Tc5tUhf3H7vHz6cKqE3h/s+0NlWr4HBFv6HzJKMggbtHddl5
 wHfwzulkov3oQ2+rW27hn38DoOdQANw1z3QsdVi5mEM8Bcwh/xEBUPgYkKLmodRnAAOLw8D3pE
 NkJDTMDLr82dm2df76qgJPXLWyxkyhlHssk+0Xeub6O8xPi7qGDRTS8HL51EZ7nPDLuA4L1IeX
 dIa96SSEzNRh0rSHluehWWY285QUXIMwRoAjXinoHwVpE+KtEO7jzS7xmrPgUBroLHwQzio3Ru
 /Z4=
X-SBRS: 5.2
X-MesageID: 41870793
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:a5htuqzOAU4gtFMvsWj4KrPx/uskLtp033Aq2lEZdDV8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr3//dOgbU5F7GkQQXgpS+UPJhvhLGSpwHINg/f0qpm1a
 lme7VjE9GYNzJHpOvz/QXQKbkd6fad9qTAv4nj5lNMaS0vVK169Qd+DW+gYyhLbS1LH4AwGp
 bZxucvnUvCRV0tYs62BmYIUoH4zrWmqLvcbQMbHBli0QGSjFqTg4LSKQSS3RsVTlp0sNUf2F
 XC+jaZ2oyT98uV5zWZ/G/V4pRQlrLau6Z+Lf3JsOc5AHHBjg6pYa5oRrGNuiskydvflGoCoZ
 33jDoLe+h19nPNbkG5yCGdpDXI4XIVxFLJjX+enHf5rsTySFsBerR8rLMcSDT1wQ4EnrhHoc
 V29lPcjbV7J1f8uR64wN7yWxRjhiOP0AEfuN9WtVNze88jcrNLxLZvmn99IdM7Mw/RzpsoK+
 VqBNG03octTXqqK0rUuWRi27WXLw0ONybDRkADv/qc2CRNkEZ4yFMFxNcekm1ozuNEd6V5
X-IronPort-AV: E=Sophos;i="5.82,233,1613451600"; 
   d="scan'208";a="41870793"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RT18DcPMLPQFayN/O4ekb8HxsBXjvF7Zsa/4gDyE+gNcyJ4O4UkQSY3LNK2KtoOKh5Wp/yWfR4WMa48B3c/BI0zYPObOCraCPHQOTWTN9MgqItbx67gKkgq8FY2m9J1YfUdKGWK9MXW3ljIIfs3pJxmQr6wMM4XsCLHw5IugFpHEDlg2K62ZW3y04yQuEw58KViO5zNXRBEKwWsZtHhBF0nPS9w+3xobKftLvwQE28YuKJhTGMS2zH7yCB8aLYe0uls/YeQyw793mg8a04dvSQ5KF89hvgvvpPmbKVS3ly+bb8qy4f00l1p0cyQUCUk1hKOkdNeD/5rXAvzHs3E4cQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6PLY0aKOfIuDgUiZ8ThRy7y/O7VBHTAieLUwYA6ba14=;
 b=oMgBGZW6wOQebqolBItz4K+3g/fnegTLDG5xPFyssjHy88ojov8SBCSkbtPrQGeCOidmloOW4RXiZyijdY0iRsAYWb8NGED+QVwk0/c97bGEp169fcrG8CTDYBZdrnClVyUR+CsfDu77Z1QZ6zdopevmpVrOCDHE2OjU6yIuu+40pNRfFw1Bp6qjYxUqQ7Y4ie/8pxFrua97FuZTaFxAF3og2Cu6ZKJrazpASgDivdAHMLQ/QWh9Vo7M0Sr4Jc51khyOYn5UPjpUv2TLc0z2HqQwW4SJy8eVvPLURJN+6QKhM3YCcDfHwLSpvihxDpO0ngul/6RW9YF06F0rFzkV7g==
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=6PLY0aKOfIuDgUiZ8ThRy7y/O7VBHTAieLUwYA6ba14=;
 b=Nr0sZ4CW5E/fjDhEaFlltaUZkOCg98A9JGVxtyp3dbmVnmX08+CMEG24sTC6WTbs33sx1v4iZOajB67WYcrHhdjjIhLD2tf6eS7fa2tw0XDbffpuEhM6ubHE5pNoDpLWYNjLU/cXRBW6rli4u9hWRi36MTto22f9BMqBhEa7bKU=
Date: Mon, 19 Apr 2021 11:16:22 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Andrew
 Cooper" <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, Paul Durrant
	<paul@xen.org>
Subject: Re: [PATCH v3] x86/CPUID: shrink max_{,sub}leaf fields according to
 actual leaf contents
Message-ID: <YH1KZhLrC6anI/Hm@Air-de-Roger>
References: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
X-ClientProxiedBy: MR2P264CA0031.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::19)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a519f0ce-0b8b-429f-e1ac-08d90313d06a
X-MS-TrafficTypeDiagnostic: DS7PR03MB5606:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB560601E04D1D0390EDB7B9D18F499@DS7PR03MB5606.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: XzrM8lw73HqGYr04N3NKDD6f3LnRsib3X5o4kWEziLKR0cEQED5owW7E7t/ekDmi+eETpaWP9O7EiuZgL9bj2ItjEVH8WN8TvRDAouNcw2I/WBF14JVaqVQyEUeqMLNXn6jg4YHuXzV8UW9WgqQeavoQ9y78M3VtY6sbW6i719tyhWROfy9b+yf2Boi/+2wnm7mhIxDcus0gne55KvFZsENgm1SjIEuzBvoGu1PFdfDd0uu6JUVowBRrusH9VXo5r4d4/ayhaFgQ62AEVc83dFwkPRayftfifBB8IJU4hSdMuB/6XKX/IcExhDcBzXRIyYnH6EDzlK5Sm3bCxyHORbVAyCeyKNrXM/gH3+KdZsGV8fmSsQBLPrPl5iQYAJQfD7r8pU7czSnRjcVCs4AL/8aVUp6eCiEljlogqSOAqa24Q+q1KJF3lE4VRGSfrPjBBXJkIwor0O6YOL1kXpnomXuBSdpJlQhWWAQwLzyIMIgUjc5CBy2rLwnREwByjRfTutQIuivE+WV97xPSfZPiKNXan8OK6kKZ9ZWXq1sgo+0tp+aTsBM+HCQfV5ksLNFw8LFPtDqKKtQ0FLoEt/PPpCGV4mqOHIEq3cQFQwj/Bfo=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(39850400004)(396003)(346002)(136003)(366004)(376002)(9686003)(6916009)(54906003)(38100700002)(5660300002)(85182001)(2906002)(86362001)(6496006)(66946007)(16526019)(83380400001)(8676002)(66476007)(8936002)(66556008)(33716001)(956004)(6486002)(186003)(478600001)(316002)(6666004)(4326008)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: a519f0ce-0b8b-429f-e1ac-08d90313d06a
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 09:16:28.6678
 (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: mQGmd7qxzkdFQwr1slSfDD6U+/LkXusHC5DyYCtoef5Mc2QoRcKKLofUuZbxXZ1LiFid5JeBLQe5gKqzXbzCAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5606
X-OriginatorOrg: citrix.com

Adding Paul also for the Viridian part.

On Fri, Apr 16, 2021 at 03:16:41PM +0200, Jan Beulich wrote:
> Zapping leaf data for out of range leaves is just one half of it: To
> avoid guests (bogusly or worse) inferring information from mere leaf
> presence, also shrink maximum indicators such that the respective
> trailing entry is not all blank (unless of course it's the initial
> subleaf of a leaf that's not the final one).
> 
> This is also in preparation of bumping the maximum basic leaf we
> support, to ensure guests not getting exposed related features won't
> observe a change in behavior.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v3: Record the actual non-empty subleaf in p->basic.raw[0x7], rather
>     than subleaf 0. Re-base over Viridian leaf 40000005 addition.
> v2: New.
> 
> --- a/tools/tests/cpu-policy/test-cpu-policy.c
> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
> @@ -8,10 +8,13 @@
>  #include <err.h>
>  
>  #include <xen-tools/libs.h>
> +#include <xen/asm/x86-defns.h>
>  #include <xen/asm/x86-vendors.h>
>  #include <xen/lib/x86/cpu-policy.h>
>  #include <xen/domctl.h>
>  
> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
> +
>  static unsigned int nr_failures;
>  #define fail(fmt, ...)                          \
>  ({                                              \
> @@ -553,6 +556,103 @@ static void test_cpuid_out_of_range_clea
>      }
>  }
>  
> +static void test_cpuid_maximum_leaf_shrinking(void)
> +{
> +    static const struct test {
> +        const char *name;
> +        struct cpuid_policy p;
> +    } tests[] = {
> +        {
> +            .name = "basic",
> +            .p = {
> +                /* Very basic information only. */
> +                .basic.max_leaf = 1,
> +                .basic.raw_fms = 0xc2,
> +            },
> +        },
> +        {
> +            .name = "cache",
> +            .p = {
> +                /* Cache subleaves present. */
> +                .basic.max_leaf = 4,
> +                .cache.subleaf[0].type = 1,

On a private conversation with Andrew he raised the issue that the
shrinking might be overly simplistic. For example if the x2APIC
feature bit in leaf 1 is set then the max leaf should be at least 0xb
in order to be able to fetch the x2APIC ID, even if it's 0.

I also wonder if we are shrinking the leaves too much, for example we
should always report up to 0x40000000 (or 0x40000100) plus the Xen
leaves, as we never hide those and it's also documented in the public
headers?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 09:21:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 09:21:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112755.215046 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYQ6C-0004fr-W8; Mon, 19 Apr 2021 09:21:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112755.215046; Mon, 19 Apr 2021 09:21: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 1lYQ6C-0004fk-SJ; Mon, 19 Apr 2021 09:21:44 +0000
Received: by outflank-mailman (input) for mailman id 112755;
 Mon, 19 Apr 2021 09:21:43 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2Een=JQ=alstadheim.priv.no=hakon@srs-us1.protection.inumbo.net>)
 id 1lYQ6B-0004fd-Ef
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 09:21:43 +0000
Received: from asav21.altibox.net (unknown [109.247.116.8])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d8a92f5e-cac7-4a65-ab37-564368d7b05c;
 Mon, 19 Apr 2021 09:21:37 +0000 (UTC)
Received: from postfix-relay.alstadheim.priv.no
 (148-252-98.210.3p.ntebredband.no [148.252.98.210])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 (Authenticated sender: hakon.alstadheim@ntebb.no)
 by asav21.altibox.net (Postfix) with ESMTPSA id CA3B8800AA
 for <xen-devel@lists.xenproject.org>; Mon, 19 Apr 2021 11:21:36 +0200 (CEST)
Received: from smtps.alstadheim.priv.no (localhost [127.0.0.1])
 by postfix-relay.alstadheim.priv.no (Postfix) with ESMTP id 55DBA7AD0A00
 for <xen-devel@lists.xenproject.org>; Mon, 19 Apr 2021 11:21:36 +0200 (CEST)
Received: from [192.168.2.201] (unknown [192.168.2.201])
 (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested) (Authenticated sender: hakon)
 by smtps.alstadheim.priv.no (Postfix) with ESMTPSA id 2D98E7AD09DF
 for <xen-devel@lists.xenproject.org>; Mon, 19 Apr 2021 11:21: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: d8a92f5e-cac7-4a65-ab37-564368d7b05c
X-Finnesikke-B-A-I-T: finnesikke@alstadheim.priv.no
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=alstadheim.priv.no;
	s=smtp; t=1618824096;
	bh=A+MwSe9ceK/L9ZbSNXj5UgRsVT3kU2mZXKSPM3y05oo=;
	h=To:From:Subject:Date:From;
	b=mD+/Mxp3i5R+DL31LCWULmIldiO/adQEyD1UJUNJ5C1CTUHl/uyyCeV07R58EIFKJ
	 tGuXLzc4Czdzv6zKNCVQzlwG8vKOqSD/2ZXHHZZCoVJlGJ3KFvfKgkeKIkv3l3COTk
	 Lr8yzOunCXo0OW+lPiVdGAa6VToRPsqGNJCa9+2k=
To: xen-devel@lists.xenproject.org
From: =?UTF-8?Q?H=c3=a5kon_Alstadheim?= <hakon@alstadheim.priv.no>
Subject: [BUG] pv on hvm, possibly xen net , current master versions.
Message-ID: <ccd93fd0-769f-8ffd-100f-704a7e1ac9d6@alstadheim.priv.no>
Date: Mon, 19 Apr 2021 11:21:35 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Content-Language: en-US
X-CMAE-Score: 0
X-CMAE-Analysis: v=2.3 cv=PJ4hB8iC c=1 sm=1 tr=0
	a=Ln9STfmRvcQJFdEeVvPm9g==:117 a=Ln9STfmRvcQJFdEeVvPm9g==:17
	a=IkcTkHD0fZMA:10 a=3YhXtTcJ-WEA:10 a=M51BFTxLslgA:10 a=JqEG_dyiAAAA:8
	a=1LAGLpD2db2b__W52wUA:9 a=MLYMDZ-2A5Aj8NF2:21 a=dONGFr-RRhtEa6FM:21
	a=QEXdDO2ut3YA:10

I follow the bleeding edge on Dom0 kernels and Xen pretty closely, and 
for the past 6 months I have been encountering increasingly frequent 
hangs&crashes in the most heavily used domUs. I have tried downgrading 
both dom0 kernel and xen, but can't seem to find any where the bug does 
not materialize.

The final domU crash varies, but always involves skb. If I disable 
xen_platform_pci in domU, I do not get theese crashes. My most heavily 
used domUs all involve pcie cards passed through to guest, and various 
insanitary practices to ignore the cards stepping where they should not, 
but this feels like something else.

Currently I mostly run Xen 4.15 (stable-4.15 from git)  and 
linux-5.11.14 (gentoo-sources latest testing), but I have dom0 kernels 
back to linux-5.4.8 able to boot and run. Not, alas the exact ones I 
used to run back then. I have recently started using f2fs in dom0, and I 
don't know which version of gcc I ran at the time linux-5.4.8 was 
current, but I am fairly sure that this did not happen back then. Either 
because of dumb luck, or because something running on the system is 
stressing it more now.

My easiest way to reproduce is to start a world build in the domU, wait 
for load to reach 3 and fire up thunderbird and "firefox 
http://twitter.com/"

Logs show:

--dom0, times in UTC,----

(XEN) [2021-04-19 07:08:10] grant_table.c:1861:d7v2 Expanding d7 grant 
table from 6 to 7 frames
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v3 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:24] grant_table.c:803:d0v5 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:25] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:26] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:27] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:31] grant_table.c:803:d0v2 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:37] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
(XEN) [2021-04-19 07:21:51] grant_table.c:803:d0v6 Bad flags (0) or dom 
(0); expected d0
-------

---domU, times in UTC+2---

april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:24 gt kernel: net eth0: rx->offset: 0, size: -1
april 19 09:21:31 gt kernel: net_ratelimit: 14 callbacks suppressed
april 19 09:21:31 gt kernel: net eth0: rx->offset: 0, size: -1
0:root@gt ~ #

--- jounald logs end here--

Same crash from console log from domU, captured in dom0, so the actual 
crash is captured. I believe I tried to shut down the vm after the hang, 
hence the hci disconnects. Does not prevent the crash however :-(

---domU console log: ---

[  803.886272] net eth0: rx->offset: 0, size: -1
[  803.890313] net eth0: rx->offset: 0, size: -1
[  803.894102] net eth0: rx->offset: 0, size: -1
[  803.897930] net eth0: rx->offset: 0, size: -1
[  803.901969] net eth0: rx->offset: 0, size: -1
[  803.905799] net eth0: rx->offset: 0, size: -1
[  803.909465] net eth0: rx->offset: 0, size: -1
[  803.913490] net eth0: rx->offset: 0, size: -1
[  803.917935] net eth0: rx->offset: 0, size: -1
[  803.921962] net eth0: rx->offset: 0, size: -1
[  810.814568] net_ratelimit: 14 callbacks suppressed
[  810.814576] net eth0: rx->offset: 0, size: -1
[  817.470513] net eth0: rx->offset: 0, size: -1
[  830.782419] net eth0: rx->offset: 0, size: -1
[  856.960323] vhci_hcd vhci_hcd.0: remove, state 4
[  856.967407] usb usb4: USB disconnect, device number 1
[  856.975816] vhci_hcd: stop threads
[  856.981073] vhci_hcd: release socket
[  856.985665] vhci_hcd: disconnect device
[  856.991283] vhci_hcd: stop threads
[  856.995670] vhci_hcd: release socket
[  857.000261] vhci_hcd: disconnect device
[  857.006147] vhci_hcd: stop threads
[  857.011314] vhci_hcd: release socket
[  857.017048] vhci_hcd: disconnect device
[  857.023417] vhci_hcd: stop threads
[  857.028090] vhci_hcd: release socket
[  857.034141] vhci_hcd: disconnect device
[  857.039998] vhci_hcd: stop threads
[  857.045146] vhci_hcd: release socket
[  857.050833] vhci_hcd: disconnect device
[  857.057291] vhci_hcd: stop threads
[  857.063897] vhci_hcd: release socket
[  857.072376] vhci_hcd: disconnect device
[  857.082009] vhci_hcd: stop threads
[  857.088005] vhci_hcd: release socket
[  857.097783] vhci_hcd: disconnect device
[  857.106913] vhci_hcd: stop threads
[  857.111278] vhci_hcd: release socket
[  857.116596] vhci_hcd: disconnect device
[  857.124270] vhci_hcd vhci_hcd.0: USB bus 4 deregistered
[  857.132600] vhci_hcd vhci_hcd.0: remove, state 4
[  857.138275] usb usb3: USB disconnect, device number 1
[  857.147421] vhci_hcd: stop threads
[  857.152899] vhci_hcd: release socket
[  857.156908] vhci_hcd: disconnect device
[  857.162545] vhci_hcd: stop threads
[  857.167551] vhci_hcd: release socket
[  857.171597] vhci_hcd: disconnect device
[  857.175772] vhci_hcd: stop threads
[  857.179275] vhci_hcd: release socket
[  857.183213] vhci_hcd: disconnect device
[  857.187729] vhci_hcd: stop threads
[  857.191459] vhci_hcd: release socket
[  857.195862] vhci_hcd: disconnect device
[  857.200532] vhci_hcd: stop threads
[  857.205231] vhci_hcd: release socket
[  857.210515] vhci_hcd: disconnect device
[  857.214987] vhci_hcd: stop threads
[  857.218180] vhci_hcd: release socket
[  857.221749] vhci_hcd: disconnect device
[  857.225507] vhci_hcd: stop threads
[  857.229364] vhci_hcd: release socket
[  857.233023] vhci_hcd: disconnect device
[  857.236829] vhci_hcd: stop threads
[  857.240090] vhci_hcd: release socket
[  857.243346] vhci_hcd: disconnect device
[  857.247099] vhci_hcd vhci_hcd.0: USB bus 3 deregistered
[  857.432952] BUG: kernel NULL pointer dereference, address: 
0000000000000000
[  857.445411] #PF: supervisor read access in kernel mode
[  857.451705] #PF: error_code(0x0000) - not-present page
[  857.456703] PGD 0 P4D 0
[  857.459369] Oops: 0000 [#1] SMP NOPTI
[  857.463253] CPU: 2 PID: 0 Comm: swapper/2 Not tainted 
5.11.15-gentoo-x86_64 #1
[  857.471047] Hardware name: Xen HVM domU, BIOS 4.15.0-rc 03/28/2021
[  857.477482] RIP: 0010:__skb_ext_put+0x5/0x40
[  857.481762] Code: dc 5b 5d c3 be 01 00 00 00 e8 97 fd bd ff eb e9 be 
02 00 00 00 e8 8b fd bd ff eb dd 66 0f 1f 84 00 00 00 00 00 0f 1f 44 00 
00 <8b> 07 83 f8 01 74 13 b8 ff ff ff ff f0 0f c1 07 83 f8 01 74 05 85
[  857.501888] RSP: 0018:ffffc90000128cf8 EFLAGS: 00010282
[  857.507714] RAX: 0000000000000000 RBX: ffff888132af9800 RCX: 
dead0000000000ff
[  857.515513] RDX: ffffffffa00a0ab5 RSI: 0000000000000003 RDI: 
0000000000000000
[  857.523113] RBP: ffff88810647fa00 R08: 0000000000001000 R09: 
0000000000001000
[  857.530366] R10: 00000000000002c0 R11: 0000000000000001 R12: 
0000000000000372
[  857.540094] R13: 0000000000000072 R14: ffff8881064d16c0 R15: 
ffff888106d14730
[  857.551126] FS:  0000000000000000(0000) GS:ffff88856c480000(0000) 
knlGS:0000000000000000
[  857.563423] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  857.570698] CR2: 0000000000000000 CR3: 0000000113e50002 CR4: 
00000000001706e0
[  857.578138] Call Trace:
[  857.580733]  <IRQ>
[  857.582858]  kfree_skb+0x49/0xc0
[  857.586930]  xennet_poll+0x9d5/0x11a0 [xen_netfront]
[  857.596853]  ? find_held_lock+0x2b/0x80
[  857.603096]  net_rx_action+0xfd/0x400
[  857.608844]  __do_softirq+0xe3/0x2b1
[  857.615134]  asm_call_irq_on_stack+0x12/0x20
[  857.621888]  </IRQ>
[  857.624585]  do_softirq_own_stack+0x37/0x40
[  857.629326]  irq_exit_rcu+0x8e/0xc0
[  857.633122]  sysvec_xen_hvm_callback+0x36/0x80
[  857.637877]  asm_sysvec_xen_hvm_callback+0x12/0x20
[  857.642360] RIP: 0010:native_safe_halt+0xe/0x20
[  857.646527] Code: 02 20 48 8b 00 a8 08 75 c4 e9 7b ff ff ff cc cc cc 
cc cc cc cc cc cc cc cc cc cc cc e9 07 00 00 00 0f 00 2d d6 97 55 00 fb 
f4 <c3> 66 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 e9 07 00 00
[  857.665573] RSP: 0018:ffffc9000009fe80 EFLAGS: 00000246
[  857.670324] RAX: 0000000000004000 RBX: 0000000000000001 RCX: 
ffff88856c4aea00
[  857.676811] RDX: ffff88856c480000 RSI: ffff888100b9c400 RDI: 
ffff888100b9c464
[  857.685222] RBP: ffff888100b9c464 R08: ffffffff8329d1a0 R09: 
0000000000000001
[  857.693682] R10: 0000000000080000 R11: 0000000000000001 R12: 
0000000000000001
[  857.703029] R13: ffffffff8329d220 R14: 0000000000000001 R15: 
0000000000000000
[  857.709627]  acpi_idle_do_entry+0x46/0x60
[  857.713661]  acpi_idle_enter+0x86/0xc0
[  857.717210]  cpuidle_enter_state+0x9b/0x360
[  857.722055]  cpuidle_enter+0x29/0x40
[  857.727651]  do_idle+0x1ef/0x2c0
[  857.732383]  cpu_startup_entry+0x19/0x20
[  857.736064]  secondary_startup_64_no_verify+0xb0/0xbb
[  857.740756] Modules linked in: xen_front_pgdir_shbuf xenfs 
xen_privcmd xen_scsifront snd_hda_codec_hdmi snd_hda_intel 
snd_intel_dspcfg snd_hda_codec snd_hda_core snd_hwdep hid_generic 
snd_pcm snd_timer usbhid hid xen_kbdfront snd atkbd soundcore amdgpu 
drm_ttm_helper ttm gpu_sched xhci_pci xhci_pci_renesas xhci_hcd 
xen_netfront xen_blkfront usbcore [last unloaded: usbip_core]
[  857.781302] CR2: 0000000000000000
[  857.784927] BUG: unable to handle page fault for address: 
ffff888135bf20e8
[  857.784931] ---[ end trace b17114bccdbf02ab ]---
[  857.784934] RIP: 0010:__skb_ext_put+0x5/0x40
[  857.794195] #PF: supervisor read access in kernel mode
[  857.798850] Code: dc 5b 5d c3 be 01 00 00 00 e8 97 fd bd ff eb e9 be 
02 00 00 00 e8 8b fd bd ff eb dd 66 0f 1f 84 00 00 00 00 00 0f 1f 44 00 
00 <8b> 07 83 f8 01 74 13 b8 ff ff ff ff f0 0f c1 07 83 f8 01 74 05 85
[  857.798854] RSP: 0018:ffffc90000128cf8 EFLAGS: 00010282
[  857.803619] #PF: error_code(0x0009) - reserved bit violation
[  857.803622] PGD 4201067
[  857.808423]
[  857.808425] RAX: 0000000000000000 RBX: ffff888132af9800 RCX: 
dead0000000000ff
[  857.829492] P4D 4201067
[  857.835931] RDX: ffffffffa00a0ab5 RSI: 0000000000000003 RDI: 
0000000000000000
[  857.843234] PUD 100ad6063
[  857.846921] RBP: ffff88810647fa00 R08: 0000000000001000 R09: 
0000000000001000
[  857.848756] PMD 1064af063 PTE 322d5b20200a5d29
[  857.848761] Oops: 0009 [#2] SMP NOPTI
[  857.848765] CPU: 3 PID: 2997 Comm: accounts-daemon Tainted: G      
D           5.11.15-gentoo-x86_64 #1
[  857.848768] Hardware name: Xen HVM domU, BIOS 4.15.0-rc 03/28/2021
[  857.860911] R10: 00000000000002c0 R11: 0000000000000001 R12: 
0000000000000372
[  857.863855] RIP: 0010:___slab_alloc+0x8f/0x600
[  857.875714] R13: 0000000000000072 R14: ffff8881064d16c0 R15: 
ffff888106d14730
[  857.878777] Code: 44 c7 48 8b 00 a8 20 0f 85 07 01 00 00 4d 8b 04 24 
4d 85 c0 74 53 41 8b 56 28 4c 01 c2 48 89 d0 48 0f c8 49 33 86 b8 00 00 
00 <48> 33 02 49 83 44 24 08 01 49 89 04 24 48 8d 65 d0 4c 89 c0 5b 41
[  857.878781] RSP: 0018:ffffc9000168bbf0 EFLAGS: 00010002
[  857.878785] RAX: 552237ab89cb40a4 RBX: 0000000000000002 RCX: 
0000000080100010
[  857.878786] RDX: ffff888135bf20e8 RSI: ffffffff813a1600 RDI: 
ffff888100215980
[  857.878788] RBP: ffffc9000168bca0 R08: ffff888135bf2000 R09: 
0000000000000000
[  857.878789] R10: ffffea0004d6fc88 R11: 0000000000000000 R12: 
ffff88856c4f2680
[  857.878791] R13: 0000000000000dc0 R14: ffff888100214100 R15: 
ffffea0004d6fc80
[  857.890376] FS:  0000000000000000(0000) GS:ffff88856c480000(0000) 
knlGS:0000000000000000
[  857.895071] FS:  00007f11f985d7c0(0000) GS:ffff88856c4c0000(0000) 
knlGS:0000000000000000
[  857.895075] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  857.895076] CR2: ffff888135bf20e8 CR3: 0000000113eb0003 CR4: 
00000000001706e0
[  857.895080] Call Trace:
[  857.895087]  ? __alloc_file+0x23/0x120
[  857.900731] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  857.909423]  ? __alloc_file+0x23/0x120
[  857.918831] CR2: 0000000000000000 CR3: 0000000113e50002 CR4: 
00000000001706e0
[  857.926389]  ? __slab_alloc+0x1c/0x40
[  857.926396]  __slab_alloc+0x1c/0x40
[  857.926399]  kmem_cache_alloc+0x286/0x2e0
[  857.926402]  __alloc_file+0x23/0x120
[  857.926405]  alloc_empty_file+0x41/0xc0
[  857.926408]  path_openat+0x49/0xa40
[  857.926415]  do_filp_open+0x88/0x140
[  857.926419]  ? getname_flags.part.0+0x29/0x1a0
[  857.926422]  ? do_raw_spin_unlock+0x4b/0xa0
[  857.926428]  ? _raw_spin_unlock+0x1f/0x40
[  857.926434]  do_sys_openat2+0x97/0x160
[  857.932852] Kernel panic - not syncing: Fatal exception in interrupt
[  857.944180]  __x64_sys_openat+0x54/0xa0
[  858.143313]  do_syscall_64+0x33/0x80
[  858.146814]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[  858.151276] RIP: 0033:0x7f11f9da9dc8
[  858.154919] Code: 24 18 31 c0 41 83 e2 40 75 40 89 f0 25 00 00 41 00 
3d 00 00 41 00 74 32 44 89 c2 4c 89 ce bf 9c ff ff ff b8 01 01 00 00 0f 
05 <48> 3d 00 f0 ff ff 77 40 48 8b 4c 24 18 64 48 2b 0c 25 28 00 00 00
[  858.172336] RSP: 002b:00007ffe8ca24ce0 EFLAGS: 00000287 ORIG_RAX: 
0000000000000101
[  858.178817] RAX: ffffffffffffffda RBX: 0000565116fc4200 RCX: 
00007f11f9da9dc8
[  858.184885] RDX: 0000000000080000 RSI: 00007f11f869017e RDI: 
00000000ffffff9c
[  858.190930] RBP: 0000000000000008 R08: 0000000000080000 R09: 
00007f11f869017e
[  858.196936] R10: 0000000000000000 R11: 0000000000000287 R12: 
0000565116fc4200
[  858.203248] R13: 00007f11f9e44e96 R14: 0000000000000400 R15: 
0000565116e885a5
[  858.209544] Modules linked in: xen_front_pgdir_shbuf xenfs 
xen_privcmd xen_scsifront snd_hda_codec_hdmi snd_hda_intel 
snd_intel_dspcfg snd_hda_codec snd_hda_core snd_hwdep hid_generic 
snd_pcm snd_timer usbhid hid xen_kbdfront snd atkbd soundcore amdgpu 
drm_ttm_helper ttm gpu_sched xhci_pci xhci_pci_renesas xhci_hcd 
xen_netfront xen_blkfront usbcore [last unloaded: usbip_core]
[  858.240109] CR2: ffff888135bf20e8
[  858.243629] ---[ end trace b17114bccdbf02ac ]---
[  858.243633] BUG: unable to handle page fault for address: 
ffff888135a5ee80
[  858.248174] RIP: 0010:__skb_ext_put+0x5/0x40
[  858.259898] #PF: supervisor read access in kernel mode
[  858.264602] Code: dc 5b 5d c3 be 01 00 00 00 e8 97 fd bd ff eb e9 be 
02 00 00 00 e8 8b fd bd ff eb dd 66 0f 1f 84 00 00 00 00 00 0f 1f 44 00 
00 <8b> 07 83 f8 01 74 13 b8 ff ff ff ff f0 0f c1 07 83 f8 01 74 05 85
[  858.271910] #PF: error_code(0x0000) - not-present page
[  858.271913] PGD 4201067
[  858.296011] RSP: 0018:ffffc90000128cf8 EFLAGS: 00010282
[  858.296018] RAX: 0000000000000000 RBX: ffff888132af9800 RCX: 
dead0000000000ff
[  858.296020] RDX: ffffffffa00a0ab5 RSI: 0000000000000003 RDI: 
0000000000000000
[  858.296021] RBP: ffff88810647fa00 R08: 0000000000001000 R09: 
0000000000001000
[  858.296023] R10: 00000000000002c0 R11: 0000000000000001 R12: 
0000000000000372
[  858.296024] R13: 0000000000000072 R14: ffff8881064d16c0 R15: 
ffff888106d14730
[  858.296026] FS:  00007f11f985d7c0(0000) GS:ffff88856c4c0000(0000) 
knlGS:0000000000000000
[  858.296028] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  858.296029] CR2: ffff888135bf20e8 CR3: 0000000113eb0003 CR4: 
00000000001706e0
[  858.415544] P4D 4201067 PUD 100ad6063 PMD 1064af063 PTE 5e282935435e3538
[  858.430590] Oops: 0000 [#3] SMP NOPTI
[  858.435244] CPU: 4 PID: 3279 Comm: thunderbird Tainted: G D           
5.11.15-gentoo-x86_64 #1
[  858.450079] Hardware name: Xen HVM domU, BIOS 4.15.0-rc 03/28/2021
[  858.462333] RIP: 0010:__kmalloc+0xad/0x280
[  858.469631] Code: e8 c6 7e 49 8b 00 49 83 78 10 00 48 89 04 24 0f 84 
b4 01 00 00 48 85 c0 0f 84 ab 01 00 00 41 8b 4c 24 28 49 8b 3c 24 48 01 
c1 <48> 8b 19 48 89 ce 49 33 9c 24 b8 00 00 00 48 0f ce 48 8d 4a 01 48
[  858.515667] RSP: 0018:ffffc900016eb958 EFLAGS: 00010282
[  858.523681] RAX: ffff888135a5ee00 RBX: ffffc900016ebb10 RCX: 
ffff888135a5ee80
[  858.533780] RDX: 000000000000067b RSI: 0000000000000dc0 RDI: 
00000000000311b0
[  858.543968] RBP: 0000000000000dc0 R08: ffff88856c5311b0 R09: 
0000000000000000
[  858.558046] R10: 0000000000000014 R11: 0000000000000001 R12: 
ffff888100041700
[  858.566724] R13: ffff888100041700 R14: 0000000000000100 R15: 
ffffffff8155ce19
[  858.574967] FS:  00007f936125d780(0000) GS:ffff88856c500000(0000) 
knlGS:0000000000000000
[  858.584880] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  858.591405] CR2: ffff888135a5ee80 CR3: 0000000113d8c003 CR4: 
00000000001706e0
[  858.599914] Call Trace:
[  858.603362]  nfs_generic_pgio+0x299/0x380
[  858.607950]  ? nfs_readhdr_alloc+0x16/0x40
[  858.611649]  ? kmem_cache_alloc+0x17d/0x2e0
[  858.615543]  nfs_generic_pg_pgios+0x4e/0xc0
[  858.619448]  nfs_pageio_doio+0x3d/0x80
[  858.622883]  nfs_pageio_complete+0x79/0x140
[  858.627471]  nfs_readpages+0x120/0x1e0
[  858.630958]  read_pages+0x1b7/0x200
[  858.634170]  page_cache_ra_unbounded+0x199/0x1e0
[  858.638185]  generic_file_buffered_read_get_pages+0x1ac/0x780
[  858.643158]  generic_file_buffered_read+0xf9/0x3a0
[  858.647767]  ? do_raw_spin_unlock+0x4b/0xa0
[  858.654527]  ? _raw_spin_unlock+0x1f/0x40
[  858.658387]  nfs_file_read+0x6d/0xa0
[  858.661903]  new_sync_read+0x118/0x1a0
[  858.666579]  vfs_read+0xfa/0x180
[  858.670349]  ksys_read+0x68/0xe0
[  858.673861]  do_syscall_64+0x33/0x80
[  858.677965]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[  858.684324] RIP: 0033:0x7f936136c5cc
[  858.688496] Code: ec 28 48 89 54 24 18 48 89 74 24 10 89 7c 24 08 e8 
a9 72 f8 ff 48 8b 54 24 18 48 8b 74 24 10 41 89 c0 8b 7c 24 08 31 c0 0f 
05 <48> 3d 00 f0 ff ff 77 34 44 89 c7 48 89 44 24 08 e8 ff 72 f8 ff 48
[  858.714230] RSP: 002b:00007ffc4ccb5830 EFLAGS: 00000246 ORIG_RAX: 
0000000000000000
[  858.721429] RAX: ffffffffffffffda RBX: 00007f934a848020 RCX: 
00007f936136c5cc
[  858.729338] RDX: 0000000000002000 RSI: 00007f93433fd000 RDI: 
000000000000002a
[  858.737584] RBP: 00007ffc4ccb58b0 R08: 0000000000000000 R09: 
00007f93433ff000
[  858.743835] R10: 0000000000000000 R11: 0000000000000246 R12: 
00007f936143f340
[  858.750273] R13: 00007f934345c325 R14: 00007f936143e740 R15: 
0000000000000d68
[  858.757015] Modules linked in: xen_front_pgdir_shbuf xenfs 
xen_privcmd xen_scsifront snd_hda_codec_hdmi snd_hda_intel 
snd_intel_dspcfg snd_hda_codec snd_hda_core snd_hwdep hid_generic 
snd_pcm snd_timer usbhid hid xen_kbdfront snd atkbd soundcore amdgpu 
drm_ttm_helper ttm gpu_sched xhci_pci xhci_pci_renesas xhci_hcd 
xen_netfront xen_blkfront usbcore [last unloaded: usbip_core]
[  858.788555] CR2: ffff888135a5ee80
[  858.791475] ---[ end trace b17114bccdbf02ad ]---
[  858.791503] BUG: unable to handle page fault for address: 
ffff888135b1add0
[  858.795691] RIP: 0010:__skb_ext_put+0x5/0x40
[  858.807456] #PF: supervisor read access in kernel mode
[  858.807461] #PF: error_code(0x0000) - not-present page
[  858.807464] PGD 4201067 P4D 4201067 PUD 100ad6063 PMD 1064af063 PTE 
202020200a294544
[  858.807471] Oops: 0000 [#4] SMP NOPTI
[  858.807475] CPU: 0 PID: 3283 Comm: firefox Tainted: G D           
5.11.15-gentoo-x86_64 #1
[  858.807477] Hardware name: Xen HVM domU, BIOS 4.15.0-rc 03/28/2021
[  858.807479] RIP: 0010:__list_add_valid+0x10/0x40
[  858.807492] Code: 80 68 00 49 c7 07 00 00 00 00 41 c7 47 08 00 00 00 
00 e9 60 ff ff ff cc cc cc 49 89 d0 48 8b 52 08 48 39 f2 0f 85 c0 71 64 
00 <4c> 8b 0a 4d 39 c1 0f 85 dc 71 64 00 48 39 d7 0f 84 bc 71 64 00 4c
[  858.807495] RSP: 0018:ffffc90001803d68 EFLAGS: 00010046
[  858.807497] RAX: ffff888108b70000 RBX: ffff8881464155d0 RCX: 
ffff888120785000
[  858.807499] RDX: ffff888135b1add0 RSI: ffff888135b1add0 RDI: 
ffff8881464155d0
[  858.807500] RBP: ffff888108b705d0 R08: ffff888108b705d0 R09: 
0000000000000000
[  858.807501] R10: ffff8881342b6260 R11: ffffc90001803d00 R12: 
ffff888135b1add0
[  858.807503] R13: ffffc90001803ed0 R14: ffff88810326f600 R15: 
ffff888146415000
[  858.817577] Code: dc 5b 5d c3 be 01 00 00 00 e8 97 fd bd ff eb e9 be 
02 00 00 00 e8 8b fd bd ff eb dd 66 0f 1f 84 00 00 00 00 00 0f 1f 44 00 
00 <8b> 07 83 f8 01 74 13 b8 ff ff ff ff f0 0f c1 07 83 f8 01 74 05 85
[  858.817584] RSP: 0018:ffffc90000128cf8 EFLAGS: 00010282
[  858.817586] RAX: 0000000000000000 RBX: ffff888132af9800 RCX: 
dead0000000000ff
[  858.817588] RDX: ffffffffa00a0ab5 RSI: 0000000000000003 RDI: 
0000000000000000
[  858.817589] RBP: ffff88810647fa00 R08: 0000000000001000 R09: 
0000000000001000
[  858.817591] R10: 00000000000002c0 R11: 0000000000000001 R12: 
0000000000000372
[  858.828621] FS:  00007f761a2a9780(0000) GS:ffff88856c400000(0000) 
knlGS:0000000000000000
[  858.835801] R13: 0000000000000072 R14: ffff8881064d16c0 R15: 
ffff888106d14730
[  858.835805] FS:  00007f936125d780(0000) GS:ffff88856c500000(0000) 
knlGS:0000000000000000
[  858.835807] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  858.835809] CR2: ffff888135a5ee80 CR3: 0000000113d8c003 CR4: 
00000000001706e0
[  859.101108] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  859.109060] CR2: ffff888135b1add0 CR3: 000000012436e001 CR4: 
00000000001706f0
[  859.119030] Call Trace:
[  859.122595]  __list_add_rcu+0x12/0x40
[  859.128085] Shutting down cpus with NMI
----

Other recent test-runs ended like:

---

# grep 'BUG\|Oops' gt.*

gt-crash.1.log:[ 4488.233093] BUG: kernel NULL pointer dereference, 
address: 0000000000000000
gt-crash.1.log:[ 4488.249659] Oops: 0000 [#1] SMP NOPTI
gt.1.log:[  857.432952] BUG: kernel NULL pointer dereference, address: 
0000000000000000
gt.1.log:[  857.459369] Oops: 0000 [#1] SMP NOPTI
gt.1.log:[  857.784927] BUG: unable to handle page fault for address: 
ffff888135bf20e8
gt.1.log:[  857.848761] Oops: 0009 [#2] SMP NOPTI
gt.1.log:[  858.243633] BUG: unable to handle page fault for address: 
ffff888135a5ee80
gt.1.log:[  858.430590] Oops: 0000 [#3] SMP NOPTI
gt.1.log:[  858.791503] BUG: unable to handle page fault for address: 
ffff888135b1add0
gt.1.log:[  858.807471] Oops: 0000 [#4] SMP NOPTI
gt.4.log:[  393.847136] BUG: kernel NULL pointer dereference, address: 
0000000000000000
gt.4.log:[  393.872365] Oops: 0000 [#1] SMP NOPTI
0:root@gentoo xen-consoles #

-----

For completeness (I don't normally run the dom0 on linux-5.12) :

xl info
host                   : gentoo
release                : 5.12.0-rc8-x86_64
version                : #1 SMP Mon Apr 19 03:23:10 CEST 2021
machine                : x86_64
nr_cpus                : 12
max_cpu_id             : 11
nr_nodes               : 2
cores_per_socket       : 6
threads_per_core       : 1
cpu_mhz                : 2471.974
hw_caps                : 
bfebfbff:77fef3ff:2c100800:00000021:00000001:000037ab:00000000:00000100
virt_caps              : pv hvm hvm_directio pv_directio hap 
iommu_hap_pt_share
total_memory           : 130953
free_memory            : 9990
sharing_freed_memory   : 0
sharing_used_memory    : 0
outstanding_claims     : 0
free_cpus              : 0
xen_major              : 4
xen_minor              : 15
xen_extra              : .0-rc
xen_version            : 4.15.0-rc
xen_caps               : xen-3.0-x86_64 hvm-3.0-x86_32 hvm-3.0-x86_32p 
hvm-3.0-x86_64
xen_scheduler          : credit2
xen_pagesize           : 4096
platform_params        : virt_start=0xffff800000000000
xen_changeset          : Wed Mar 24 11:34:32 2021 +0100 git:7fa14f3f52-dirty
xen_commandline        : xen.cfg xen-marker-135 console_timestamps=date 
iommu=1 com1=115200,8n1 console=com1 conswitch=lx 
cpufreq=xen:performance,verbose smt=0 core_parking=power nmi=dom0 
gnttab_max_frames=512 gnttab_max_maptrack_frames=1024 
vcpu_migration_delay=2000 tickle_one_idle_cpu=1 spec-ctrl=no-xen 
sched=credit2 timer_slop=5000 max_cstate=2 dom0=msr-relaxed=1 
loglvl=warning/all guest_loglvl=warning/all dom0_mem=16G,max:16G 
dom0_max_vcpus=8 ept=exec_sp=1
cc_compiler            : gcc (Gentoo 10.2.0-r5 p6) 10.2.0
cc_compile_by          : hakon
cc_compile_domain      : alstadheim.priv.no
cc_compile_date        : Mon Mar 29 23:39:11 CEST 2021
build_id               : 6bf2f3c9ede45631d9f7d5201b1472a0
xend_config_format     : 4
0:root@gentoo xen-consoles #

---




From xen-devel-bounces@lists.xenproject.org Mon Apr 19 09:33:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 09:33:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112766.215058 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYQHc-0005kz-3i; Mon, 19 Apr 2021 09:33:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112766.215058; Mon, 19 Apr 2021 09:33: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 1lYQHc-0005ks-01; Mon, 19 Apr 2021 09:33:32 +0000
Received: by outflank-mailman (input) for mailman id 112766;
 Mon, 19 Apr 2021 09:33:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=D7mL=JQ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lYQHa-0005kn-P8
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 09:33:30 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b8409c26-af7f-474c-a9be-557b40a7574e;
 Mon, 19 Apr 2021 09:33:29 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8049EAF27;
 Mon, 19 Apr 2021 09:33: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: b8409c26-af7f-474c-a9be-557b40a7574e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618824808; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=4JLndugxS8nFtww4Gr3ZdxVHql0xCLCm/rEDFNpIy94=;
	b=HGraXLn+Ugg87nGh1nGuVXsHWPbGjmyyouQS2LEo/T5b6e++GzsugU2bSiamTtPu/rZn5t
	RetbYJzMq0aaRC7AksFkMLn9a39yxDWeaeVsbnSPylaz/GQs0ahCPUYdi8jc8sP4ZJVMFk
	XQXPCixm0+D0mE6TleFwFB8XZhuy1gE=
Subject: Re: kernel NULL pointer dereference in gntdev_mmap ->
 mmu_interval_notifier_remove
To: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel <xen-devel@lists.xenproject.org>
References: <YHxFtj3dyjFbeusP@mail-itl>
From: Juergen Gross <jgross@suse.com>
Message-ID: <68f4d2e3-4b25-58a6-d690-d5854c509354@suse.com>
Date: Mon, 19 Apr 2021 11:33:27 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <YHxFtj3dyjFbeusP@mail-itl>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="dOpKLHRg8ubRsmkbk1m7eSci79BJsaX8G"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--dOpKLHRg8ubRsmkbk1m7eSci79BJsaX8G
Content-Type: multipart/mixed; boundary="ZpEtNdtBqjZPGD27gNPIwBrGeJkCcbaoi";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel <xen-devel@lists.xenproject.org>
Message-ID: <68f4d2e3-4b25-58a6-d690-d5854c509354@suse.com>
Subject: Re: kernel NULL pointer dereference in gntdev_mmap ->
 mmu_interval_notifier_remove
References: <YHxFtj3dyjFbeusP@mail-itl>
In-Reply-To: <YHxFtj3dyjFbeusP@mail-itl>

--ZpEtNdtBqjZPGD27gNPIwBrGeJkCcbaoi
Content-Type: multipart/mixed;
 boundary="------------76E967BB506C0B05BD62E4E7"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------76E967BB506C0B05BD62E4E7
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 18.04.21 16:44, Marek Marczykowski-G=C3=B3recki wrote:
> Hi,
>=20
> I've recently got the crash like below. I'm not sure what exactly
> triggers it (besides grant table mapping as seen in the call trace), an=
d
> also I don't have reliable reproducer. It happened once for about ~30
> startups.
>=20
> Previous version tested was 5.10.25 and it didn't happened there, but
> since reproduction rate is not great, it could be just luck...
>=20
> [ 1053.550389] BUG: kernel NULL pointer dereference, address: 000000000=
00003b0
> [ 1053.557844] #PF: supervisor read access in kernel mode
> [ 1053.557847] #PF: error_code(0x0000) - not-present page
> [ 1053.557851] PGD 0 P4D 0
> [ 1053.557858] Oops: 0000 [#1] SMP NOPTI
> [ 1053.557863] CPU: 1 PID: 8806 Comm: Xorg Tainted: G        W         =
5.10.28-1.fc32.qubes.x86_64 #1
> [ 1053.557865] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), B=
IOS 0.0.0 02/06/2015
> [ 1053.557876] RIP: e030:mmu_interval_notifier_remove+0x2e/0x190
> [ 1053.557879] Code: 00 41 55 41 54 55 48 89 fd 53 48 83 ec 30 4c 8b 67=
 38 65 48 8b 04 25 28 00 00 00 48 89 44 24 28 31 c0 48 c7 04 24 00 00 00 =
00 <49> 8b 9c 24 b0 03 00 00 48 c7 44 24 08 00 00 00 00 48 c7 44 24 10
> [ 1053.557881] RSP: e02b:ffffc90041617d18 EFLAGS: 00010246
> [ 1053.557883] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000=
000000000
> [ 1053.557884] RDX: 0000000000000001 RSI: ffffffff81c3e9a0 RDI: ffff888=
12588b700
> [ 1053.557885] RBP: ffff88812588b700 R08: 7fffffffffffffff R09: 0000000=
000000000
> [ 1053.557886] R10: ffff8881088d4708 R11: ffff888108aa6180 R12: 0000000=
000000000
> [ 1053.557887] R13: 00000000fffffffc R14: ffff888106a3ec00 R15: ffff888=
106a3ec10
> [ 1053.557913] FS:  0000716f7f9a3a40(0000) GS:ffff888140300000(0000) kn=
lGS:0000000000000000
> [ 1053.557915] CS:  e030 DS: 0000 ES: 0000 CR0: 0000000080050033
> [ 1053.557916] CR2: 00000000000003b0 CR3: 0000000105cf4000 CR4: 0000000=
000000660
> [ 1053.557919] Call Trace:
> [ 1053.557944]  gntdev_mmap+0x275/0x2f9 [xen_gntdev]
> [ 1053.557950]  mmap_region+0x47e/0x720
> [ 1053.557953]  do_mmap+0x438/0x540
> [ 1053.557959]  ? security_mmap_file+0x81/0xd0
> [ 1053.557963]  vm_mmap_pgoff+0xdf/0x130
> [ 1053.557967]  ksys_mmap_pgoff+0x1d6/0x240
> [ 1053.557973]  do_syscall_64+0x33/0x40
> [ 1053.557977]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
> [ 1053.557981] RIP: 0033:0x716f7fe8c2e6
> [ 1053.557985] Code: 01 00 66 90 f3 0f 1e fa 41 f7 c1 ff 0f 00 00 75 2b=
 55 48 89 fd 53 89 cb 48 85 ff 74 37 41 89 da 48 89 ef b8 09 00 00 00 0f =
05 <48> 3d 00 f0 ff ff 77 62 5b 5d c3 0f 1f 80 00 00 00 00 48 8b 05 79
> [ 1053.557986] RSP: 002b:00007ffcb4ef35c8 EFLAGS: 00000246 ORIG_RAX: 00=
00000000000009
> [ 1053.557988] RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 0000716=
f7fe8c2e6
> [ 1053.557989] RDX: 0000000000000001 RSI: 0000000000001000 RDI: 0000000=
000000000
> [ 1053.557990] RBP: 0000000000000000 R08: 0000000000000009 R09: 0000000=
000000000
> [ 1053.557991] R10: 0000000000000001 R11: 0000000000000246 R12: 00007ff=
cb4ef35e0
> [ 1053.557992] R13: 0000000000000001 R14: 0000000000000009 R15: 0000000=
000000001
> [ 1053.557995] Modules linked in: loop nf_tables nfnetlink vfat fat xfs=
 snd_hda_codec_generic ledtrig_audio snd_hda_intel snd_intel_dspcfg sound=
wire_intel soundwire_generic_allocation ppdev snd_soc_core snd_compress s=
nd_pcm_dmaengine soundwire_cadence joydev snd_hda_codec snd_hda_core ac97=
_bus snd_hwdep snd_seq snd_seq_device snd_pcm edac_mce_amd snd_timer pcsp=
kr snd soundcore e1000e i2c_piix4 parport_pc parport xenfs fuse ip_tables=
 dm_crypt bochs_drm drm_vram_helper drm_kms_helper cec drm_ttm_helper ttm=
 serio_raw drm virtio_scsi virtio_console ehci_pci ehci_hcd ata_generic p=
ata_acpi floppy qemu_fw_cfg xen_privcmd xen_pciback xen_blkback xen_gntal=
loc xen_gntdev xen_evtchn uinput
> [ 1053.558040] CR2: 00000000000003b0
> [ 1053.558135] ---[ end trace 3c5c2ca63aac717a ]---
> [ 1054.277085] snd_hda_intel 0000:00:03.0: IRQ timing workaround is act=
ivated for card #0. Suggest a bigger bdl_pos_adj.
> [ 1054.927022] RIP: e030:mmu_interval_notifier_remove+0x2e/0x190
> [ 1054.929170] Code: 00 41 55 41 54 55 48 89 fd 53 48 83 ec 30 4c 8b 67=
 38 65 48 8b 04 25 28 00 00 00 48 89 44 24 28 31 c0 48 c7 04 24 00 00 00 =
00 <49> 8b 9c 24 b0 03 00 00 48 c7 44 24 08 00 00 00 00 48 c7 44 24 10
> [ 1054.937800] RSP: e02b:ffffc90041617d18 EFLAGS: 00010246
> [ 1054.947281] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000=
000000000
> [ 1054.949535] RDX: 0000000000000001 RSI: ffffffff81c3e9a0 RDI: ffff888=
12588b700
> [ 1054.973016] RBP: ffff88812588b700 R08: 7fffffffffffffff R09: 0000000=
000000000
> [ 1054.976678] R10: ffff8881088d4708 R11: ffff888108aa6180 R12: 0000000=
000000000
> [ 1054.978850] R13: 00000000fffffffc R14: ffff888106a3ec00 R15: ffff888=
106a3ec10
> [ 1054.980751] FS:  0000716f7f9a3a40(0000) GS:ffff888140300000(0000) kn=
lGS:0000000000000000
> [ 1054.982878] CS:  e030 DS: 0000 ES: 0000 CR0: 0000000080050033
> [ 1054.984509] CR2: 00000000000003b0 CR3: 0000000105cf4000 CR4: 0000000=
000000660
> [ 1054.990508] Kernel panic - not syncing: Fatal exception
> [ 1054.991967] Kernel Offset: disabled
> (XEN) Hardware Dom0 crashed: rebooting machine in 5 seconds.
>=20
> Looking at the surrounding code, it is access to 0x3b0(%r12), which is
> 0x38(%rdi):
>=20
> ffffffff812f5930 <mmu_interval_notifier_remove>:
> ffffffff812f5930:       e8 8b 09 d7 ff          callq  ffffffff810662c0=
 <__fentry__>
> ffffffff812f5935:       41 55                   push   %r13
> ffffffff812f5937:       41 54                   push   %r12
> ffffffff812f5939:       55                      push   %rbp
> ffffffff812f593a:       48 89 fd                mov    %rdi,%rbp
> ffffffff812f593d:       53                      push   %rbx
> ffffffff812f593e:       48 83 ec 30             sub    $0x30,%rsp
> ffffffff812f5942:       4c 8b 67 38             mov    0x38(%rdi),%r12
> ffffffff812f5946:       65 48 8b 04 25 28 00    mov    %gs:0x28,%rax
> ffffffff812f594d:       00 00
> ffffffff812f594f:       48 89 44 24 28          mov    %rax,0x28(%rsp)
> ffffffff812f5954:       31 c0                   xor    %eax,%eax
> ffffffff812f5956:       48 c7 04 24 00 00 00    movq   $0x0,(%rsp)
> ffffffff812f595d:       00
> ffffffff812f595e:       49 8b 9c 24 b0 03 00    mov    0x3b0(%r12),%rbx=

> ffffffff812f5965:       00
>=20
> If my calculation is right, it means map->notifier->mm is NULL.
>=20

Could you try the attached patch?


Juergen

--------------76E967BB506C0B05BD62E4E7
Content-Type: text/x-patch; charset=UTF-8;
 name="0001-xen-gntdev-fix-gntdev_mmap-error-exit-path.patch"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="0001-xen-gntdev-fix-gntdev_mmap-error-exit-path.patch"

=46rom 7ff3c32b36279aacef9cf80f4103fc6050759c10 Mon Sep 17 00:00:00 2001
From: Juergen Gross <jgross@suse.com>
Date: Mon, 19 Apr 2021 11:15:59 +0200
Subject: [PATCH] xen/gntdev: fix gntdev_mmap() error exit path
MIME-Version: 1.0
Content-Type: text/plain; charset=3DUTF-8
Content-Transfer-Encoding: 8bit

Commit d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
introduced an error in gntdev_mmap(): in case the call of
mmu_interval_notifier_insert_locked() fails the exit path should not
call mmu_interval_notifier_remove().

One reason for failure is e.g. a signal pending for the running
process.

Fixes: d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
Cc: stable@vger.kernel.org
Reported-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingslab=
=2Ecom>
Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/gntdev.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
index f01d58c7a042..a3e7be96527d 100644
--- a/drivers/xen/gntdev.c
+++ b/drivers/xen/gntdev.c
@@ -1017,8 +1017,10 @@ static int gntdev_mmap(struct file *flip, struct v=
m_area_struct *vma)
 		err =3D mmu_interval_notifier_insert_locked(
 			&map->notifier, vma->vm_mm, vma->vm_start,
 			vma->vm_end - vma->vm_start, &gntdev_mmu_ops);
-		if (err)
+		if (err) {
+			map->vma =3D NULL;
 			goto out_unlock_put;
+		}
 	}
 	mutex_unlock(&priv->lock);
=20
--=20
2.26.2


--------------76E967BB506C0B05BD62E4E7
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------76E967BB506C0B05BD62E4E7--

--ZpEtNdtBqjZPGD27gNPIwBrGeJkCcbaoi--

--dOpKLHRg8ubRsmkbk1m7eSci79BJsaX8G
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmB9TmcFAwAAAAAACgkQsN6d1ii/Ey+b
Qgf+Jl87H0yOSclfw7mCqkIdLXBFVxn5NBH8hEzGXQkV27gzvJYRef/sXJO3WojXMSYpAlOL5Odb
qQNJP1pYWLANDBwvb3V+M4Mbp1w3iUFoJRVwZZhcQFVHCIlLF162+OZdIatsKjBvgfs8T0LL2qaN
shXJypO+kbXGxgB2EdyqHrpMfM1BHPwMTjCpgJZL08xq6xxai0cHUV7pHCWpEsu1JCs8ro56Fmfs
ljcMlxI7/t//pDJxfYkkA/3vIfV/zuu886rAa9n79rw4TgugoEH7WXmMf4IHHPgaRtH+bp/7O00c
iJLItxVo7WwY2csadwvGvgwQLN2A+zrsnDk1YUI+FA==
=WhGj
-----END PGP SIGNATURE-----

--dOpKLHRg8ubRsmkbk1m7eSci79BJsaX8G--


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 11:02:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 11:02:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112804.215102 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYRfk-0005Ur-GT; Mon, 19 Apr 2021 11:02:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112804.215102; Mon, 19 Apr 2021 11: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 1lYRfk-0005Uk-Bv; Mon, 19 Apr 2021 11:02:32 +0000
Received: by outflank-mailman (input) for mailman id 112804;
 Mon, 19 Apr 2021 11:02:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jNU4=JQ=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lYRfj-0005Uc-Je
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 11:02:31 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (unknown
 [40.107.6.77]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6c9d7597-7daa-47c7-a517-de5995542fd1;
 Mon, 19 Apr 2021 11:02:28 +0000 (UTC)
Received: from DB8PR03CA0013.eurprd03.prod.outlook.com (2603:10a6:10:be::26)
 by DB8PR08MB3932.eurprd08.prod.outlook.com (2603:10a6:10:a2::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr
 2021 11:02:26 +0000
Received: from DB5EUR03FT029.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:be:cafe::f3) by DB8PR03CA0013.outlook.office365.com
 (2603:10a6:10:be::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Mon, 19 Apr 2021 11:02:26 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT029.mail.protection.outlook.com (10.152.20.131) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 11:02:26 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Mon, 19 Apr 2021 11:02:26 +0000
Received: from ec593825496a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 C4AC0E32-829B-4990-B9C2-E9055AE815D8.1; 
 Mon, 19 Apr 2021 11:02:19 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ec593825496a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 19 Apr 2021 11:02:19 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com (2603:10a6:10:49::10)
 by DBBPR08MB6012.eurprd08.prod.outlook.com (2603:10a6:10:205::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19; Mon, 19 Apr
 2021 11:02:18 +0000
Received: from DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::8957:8ec1:e77f:f34e]) by DB7PR08MB3500.eurprd08.prod.outlook.com
 ([fe80::8957:8ec1:e77f:f34e%3]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021
 11:02:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6c9d7597-7daa-47c7-a517-de5995542fd1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IhKBcJdFIOkj799DhDRNcBVy0hfGBY2bh7C2KK6g9pE=;
 b=OEDIkcm5xYXxsOD4gyJgFVFtoFosAsVOFt/YxbnuV1+4nUmfvSrsDFnyhjFCdpnWCMVZgKoz9gQh9PjzmGRTwXi+v2vU7Huy3pJlFJnR4UPDjhxAqM9LN4+fsrjHfP6vdLQYasoeh2aNTMjYFCV67mFMUz4/FaxuRxTWD0JMXwk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: b9282143c47319cd
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=X+qj2khMyh9/Y11O/TEBreuVi+l2vmJ/P5Jo+dvCn8uJTj9+FjDIr75my0wxv4O+7ToZkOZ7wC1QhcVZegXYPdporXyI9zohenMBvLp1viY2v6f0WnazvGeBq7/1xnd4+2EhPuSh/E4YHtZI4unR3ctewd488bVI/2gaLIWA9mT8yOt0aPS+8kJNbFWnDsHSXGhaWfDjGX16KpotNAfymWBCREIzhmqU+bX9foe1lhOL/H/x380tAkup64LSj8W9sbRB4vEqlhuOjH5N6KZ/UaPzZJ41fk5abRCKw0S+HPDk3EHMVpyGOJ8OQ8C4G4jcTUe38PlyR0jLWgr7ve1miQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IhKBcJdFIOkj799DhDRNcBVy0hfGBY2bh7C2KK6g9pE=;
 b=PqD8qPq7DkXlqwQ/JOc0aBIYKBRjWdrJyPrZyfdOTWtll1CkyOEoJh11kQGfcTO1s16uM4k57NjL7g+Y4esKlWXfDdm2P/42cRgtvxjbBoW9MKbkW23MyFi0sjPmcXeqKgTngTrygOhiDMaWVQvGMpPsoNb1UEovbw7V9c4NvoDkd/vpD/kOPR+5ITrnMgxWo6/IGZVGrBwjHTJOaf44R0SpKz8aoXRs0kAD3I29Rr0LOgkS+yfUZGG5ri2gTG8G0t233hpdkvrEIyN6W0dTWtHLF8Zo8Xj8iyHiKtULW8cXBJLEswgelZ4tXupoMCSJltFUqQTcUj6hI7IKm9iJ5w==
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=IhKBcJdFIOkj799DhDRNcBVy0hfGBY2bh7C2KK6g9pE=;
 b=OEDIkcm5xYXxsOD4gyJgFVFtoFosAsVOFt/YxbnuV1+4nUmfvSrsDFnyhjFCdpnWCMVZgKoz9gQh9PjzmGRTwXi+v2vU7Huy3pJlFJnR4UPDjhxAqM9LN4+fsrjHfP6vdLQYasoeh2aNTMjYFCV67mFMUz4/FaxuRxTWD0JMXwk=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Julien Grall <julien@xen.org>
CC: xen-devel <xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Topic: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Index:
 AQHXMrMxW8Hpcs9A7Ei4/6fuLjr236q3NfuAgAAHXICAAAYsgIAAC7YAgAAA/oCAAAkFAIADN4qAgAEgwAA=
Date: Mon, 19 Apr 2021 11:02:18 +0000
Message-ID: <279F74CA-647D-458B-97C0-968E1795E494@arm.com>
References:
 <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
 <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
 <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
 <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
 <78c30978-c3be-4357-fecc-5b2f24bf563f@xen.org>
 <348C921E-1150-4247-A693-1D81933FC3F7@arm.com>
 <996b5db1-da59-f03c-9e04-9ac283aa38f2@xen.org>
In-Reply-To: <996b5db1-da59-f03c-9e04-9ac283aa38f2@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 69f0b28a-9094-4fdd-2dc0-08d903229dd2
x-ms-traffictypediagnostic: DBBPR08MB6012:|DB8PR08MB3932:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<DB8PR08MB39324286D1538FC2FA73BC9DFC499@DB8PR08MB3932.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 TYKIrEEP8gd0XCxmZDYFJav1ozJJ2A/I157226Qmc81om5UBFcDZ5elbwECTIK16NVBzC3im+WO2DM9JQsi9On9eG4AlDVG51tDJvNpHIjXrHv1rRXe0Vq0I1t9UK1rGwehJbtwrWNNlEXwiElT1tEUL3YvmU0FUw/hxi9Ej0BOnZHXu78E6Fz0JehHkavDW7MwSBB6V0GTOjC/BG4xPV5GYJfZf6vt4HYdf0BpPrm/7W6xhayYjcXpMph8Fz02voPqDjhoWbtWWu3dDhyGiPV4OkQmhC5vMW33g9gDnXzqXesTlh52TO5orimWXikb4uBWqMrehILwtHS5gsJwisIagX7NLiSx76o3zDQgiDeIVYi3wtR4WHbF4uHyByepMrS1tvcElcgDm2rrnu4lB+HoTXkCTp5+SNFUId470zSPZ91jfORwnFtaCbBeQg3hBg1lN+CaT1hcBbvWUJN3s/k2zTKJ1i9hUpp48McCTItg6xliWppFjsB1bAFXKLtfERE3tMeZKC4Kf+BJAyrlFnQLtUDwffV2HWAZRBhdu6shK6d3ZwOKVfVXfWvev6O+LH/xhIZ8lv2gSWNhmmVGfwgErMA7IsIP9texXBD6o5pnYrKrp59NteQoAo0Rcdp+TRo5cHLRKp0fLXHl4mGqfyDINvCJW6E9a1H3mBeTU0UE=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3500.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39860400002)(366004)(396003)(136003)(346002)(83380400001)(316002)(26005)(478600001)(186003)(54906003)(6486002)(4326008)(5660300002)(2906002)(6512007)(86362001)(76116006)(71200400001)(6916009)(66946007)(53546011)(91956017)(36756003)(66556008)(66446008)(8936002)(2616005)(66476007)(6506007)(64756008)(38100700002)(122000001)(8676002)(33656002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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/FTAD?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <D848BCE62DFF68479B6D00C0D2A7289D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6012
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT029.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	c46187fa-07d4-411e-334a-08d903229987
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0gMpJmlOQ3E9uLm3cbN+N9CKVUIpIW7C297R3zFl/WtCE71o6lQor7QFyg6tDbfGDHc+R+K6ned6aLRKZXSqWcXeTkjB1A2tcnWJXCiD/AcNkj8UwN53l8HTvnJHRiyShamAj3A+pvnesGgcEDn9TKk3Y65l6rvH4+IcCI2AjNJ7bN5QA0s+MUL/KKhEIlXxTzTBTfdHi9wsGrajFrg9y9fXGOUd3L3DlqRosMO4uIK0EFs5qhRcQ9X7nJUXl/u8nM5jIuVVmebfMuBNYaMNj+Hk34LqpGya+LF+4FdGdT7P8p0IkPzXRSxCKbIaR0ZeDXnsXiD3qpY15i2+kvG3KtuCrvYFdPWDCkFjJKbiTrlMlEdUoFUkefm4zvmaNTsWYjmi9UlNAKyZlTyuahhSZwnT2/muf4rCma6JOLs3irhJzUdtNSE1XzgDAy+VSugI+TJ3iYVxkLwMXjcHrLXIVmCxGV5laWDqeyXDhE93oHX5/NhtYYaKD7KVYm3DQgi8ZwkniM/jZW5mrgCwtym/kifhVkYQUpvM+bMlmoaTLGshftLhz3Ji647RH5icnJDYHQN0+juVK9X++VgrryljlewxrBH0TPJ7+0oL6qUKWvskEyFC5Q5HcYOXnQ9cSh5UC91FV13gknYfcMiH3roUC8M6Apk7jFzhgdYwqbe9Wvk=
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:(4636009)(346002)(396003)(136003)(39860400002)(376002)(46966006)(36840700001)(82310400003)(336012)(33656002)(6486002)(2906002)(83380400001)(86362001)(36756003)(47076005)(82740400003)(54906003)(2616005)(356005)(70206006)(6862004)(8676002)(6506007)(53546011)(70586007)(6512007)(316002)(478600001)(4326008)(36860700001)(81166007)(26005)(5660300002)(107886003)(8936002)(186003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 11:02:26.1139
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 69f0b28a-9094-4fdd-2dc0-08d903229dd2
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:
	DB5EUR03FT029.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB3932

SGkgSnVsaWVuLA0KDQo+IE9uIDE4IEFwciAyMDIxLCBhdCA2OjQ4IHBtLCBKdWxpZW4gR3JhbGwg
PGp1bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4gDQo+IA0KPiANCj4gT24gMTYvMDQvMjAyMSAxNzo0
MSwgUmFodWwgU2luZ2ggd3JvdGU6DQo+PiBIaSBKdWxpZW4NCj4gDQo+IEhpIFJhaHVsLA0KPiAN
Cj4+PiBPbiAxNiBBcHIgMjAyMSwgYXQgNTowOCBwbSwgSnVsaWVuIEdyYWxsIDxqdWxpZW5AeGVu
Lm9yZz4gd3JvdGU6DQo+Pj4gDQo+Pj4gDQo+Pj4gDQo+Pj4gT24gMTYvMDQvMjAyMSAxNzowNSwg
UmFodWwgU2luZ2ggd3JvdGU6DQo+Pj4+PiBPbiAxNiBBcHIgMjAyMSwgYXQgNDoyMyBwbSwgSnVs
aWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+Pj4+PiANCj4+Pj4+IA0KPj4+Pj4g
DQo+Pj4+PiBPbiAxNi8wNC8yMDIxIDE2OjAxLCBSYWh1bCBTaW5naCB3cm90ZToNCj4+Pj4+PiBI
aSBKdWxpZW4sDQo+Pj4+PiANCj4+Pj4+IEhpIFJhaHVsLA0KPj4+Pj4gDQo+Pj4+Pj4+IE9uIDE2
IEFwciAyMDIxLCBhdCAzOjM1IHBtLCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4ub3JnPiB3cm90
ZToNCj4+Pj4+Pj4gDQo+Pj4+Pj4+IEhpLA0KPj4+Pj4+PiANCj4+Pj4+Pj4gT24gMTYvMDQvMjAy
MSAxMjoyNSwgUmFodWwgU2luZ2ggd3JvdGU6DQo+Pj4+Pj4+PiBSZXZlcnQgdGhlIGNvZGUgdGhh
dCBhc3NvY2lhdGVzIHRoZSBncm91cCBwb2ludGVyIHdpdGggdGhlIFMyQ1IgYXMgdGhpcw0KPj4+
Pj4+Pj4gY29kZSBjYXVzaW5nIGFuIGlzc3VlIHdoZW4gdGhlIFNNTVUgZGV2aWNlIGhhcyBtb3Jl
IHRoYW4gb25lIG1hc3Rlcg0KPj4+Pj4+Pj4gZGV2aWNlLg0KPj4+Pj4+PiANCj4+Pj4+Pj4gSXQg
aXMgbm90IGNsZWFyIHRvIG1lIHdoeSB0aGlzIGNoYW5nZSB3YXMgZmlyc3QgYWRkZWQuIEFyZSB3
ZSBtaXNzaW5nIGFueSBmZWF0dXJlIHdoZW4gcmV2ZXJ0aW5nIGl0Pw0KPj4+Pj4+IFRoaXMgZmVh
dHVyZSB3YXMgYWRkZWQgd2hlbiB3ZSBiYWNrcG9ydGVkIHRoZSBjb2RlIGZyb20gTGludXggdG8g
Zml4IHRoZSBzdHJlYW0gbWF0Y2ggY29uZmxpY3QgaXNzdWUNCj4+Pj4+PiBhcyBwYXJ0IG9mIGNv
bW1pdCAieGVuL2FybTogc21tdXYxOiBJbnRlbGxpZ2VudCBTTVIgYWxsb2NhdGlvbuKAnS4NCj4+
Pj4+PiBUaGlzIGlzIGFuIGV4dHJhIGZlYXR1cmUgYWRkZWQgdG8gYWxsb2NhdGUgSU9NTVUgZ3Jv
dXAgYmFzZWQgb24gc3RyZWFtLWlkLiBJZiB0d28gZGV2aWNlIGhhcyB0aGUNCj4+Pj4+PiBzYW1l
IHN0cmVhbS1pZCB0aGVuIHdlIGFzc2lnbiB0aG9zZSBkZXZpY2VzIHRvIHRoZSBzYW1lIGdyb3Vw
Lg0KPj4+Pj4gDQo+Pj4+PiBJZiB3ZSByZXZlcnQgdGhlIHBhdGNoLCB0aGVuIGl0IHdvdWxkIG5v
dCBiZSBwb3NzaWJsZSB0byB1c2UgdGhlIFNNTVUgaWYgdHdvIGRldmljZXMgdXNlIHRoZSBzYW1l
IHN0cmVhbS1pZC4gSXMgdGhhdCBjb3JyZWN0Pw0KPj4+PiBOby4gSWYgd2UgcmV2ZXJ0IHRoZSBw
YXRjaCB3ZSBjYW4gdXNlIHRoZSBTTU1VIGlmIHR3byBkZXZpY2VzIHVzZSB0aGUgc2FtZSBzdHJl
YW0taWQgd2l0aG91dCBhbnkgaXNzdWUgYnV0IGVhY2ggZGV2aWNlIHdpbGwgYmUgaW4gYSBzZXBh
cmF0ZSBncm91cC5UaGlzIGlzIHNhbWUgYmVoYXZpb3VyIGJlZm9yZSB0aGUgY29kZSBpcyBtZXJn
ZWQuDQo+Pj4gDQo+Pj4gT2suIFNvIHRoZXJlIGlzIG5vIGNoYW5nZSBpbiBiZWhhdmlvci4gR29v
ZC4gQ2FuIHlvdSBwcm9wb3NlIGEgY29tbWl0IG1lc3NhZ2UgY2xhcmlmeWluZyB0aGF0Pw0KPj4g
UGxlYXNlIGhhdmUgYSBsb29rIGlmIGl0IG1ha2Ugc2Vuc2UuDQo+PiB4ZW4vYXJtOiBzbW11djE6
IFJldmVydCBhc3NvY2lhdGluZyB0aGUgZ3JvdXAgcG9pbnRlciB3aXRoIHRoZSBTMkNSDQo+PiBS
ZXZlcnQgdGhlIGNvZGUgdGhhdCBhc3NvY2lhdGVzIHRoZSBncm91cCBwb2ludGVyIHdpdGggdGhl
IFMyQ1IgYXMgdGhpcw0KPj4gY29kZSBjYXVzaW5nIGFuIGlzc3VlIHdoZW4gdGhlIFNNTVUgZGV2
aWNlIGhhcyBtb3JlIHRoYW4gb25lIG1hc3Rlcg0KPj4gZGV2aWNlIHdpdGggc2FtZSBzdHJlYW0t
aWQuIFRoaXMgaXNzdWUgaXMgaW50cm9kdWNlZCBieSB0aGUgYmVsb3cgY29tbWl0Og0KPj4g4oCc
MDQzNTc4NGNjNzVkY2ZlZjNiNWY1OWMyOWRlYjFkYmI4NDI2NWRkYjp4ZW4vYXJtOiBzbW11djE6
IEludGVsbGlnZW50IFNNUiBhbGxvY2F0aW9u4oCdDQo+PiAgUmV2ZXJ0aW5nIHRoZSBjb2RlIHdp
bGwgbm90IGltcGFjdCB0byB1c2Ugb2YgU01NVSBpZiB0d28gZGV2aWNlcyB1c2UgdGhlDQo+PiBz
YW1lIHN0cmVhbS1pZCBidXQgZWFjaCBkZXZpY2Ugd2lsbCBiZSBpbiBhIHNlcGFyYXRlIGdyb3Vw
LiBUaGlzIGlzIHRoZSBzYW1lDQo+PiBiZWhhdmlvdXIgYmVmb3JlIHRoZSBjb2RlIGlzIG1lcmdl
ZC4NCj4gDQo+IExvb2sgZ29vZCB0byBtZS4gSXMgdGhpcyBwYXRjaCB0byBiZSBhcHBsaWVkIG9u
IHRvcCBvZiBTdGVmYW5vJ3Mgc2VyaWVzPyBJZiBub3QsIGlzIHRoZXJlIGdvaW5nIHRvIGJlIG1v
cmUgY2xhc2g/DQo+IA0KDQpBcyBwZXIgU3RlZmFubydzIG1haWwgaGUgYWxyZWFkeSB0ZXN0ZWQg
aGlzIHBhdGNoIHNlcmllcyBvbiB0b3Agb2YgdGhpcyBwYXRjaC4gSSB0aGluayB0aGlzIHBhdGNo
IGhhcyB0byBtZXJnZWQgYmVmb3JlIFN0ZWZhbm/igJlzIHBhdGNoIHNlcmllcyANCkxldCBTdGVm
YW5vIGFsc28gY29uZmlybSB0aGF0Lg0KDQpJIHRoaW5rIHRoZXJlIHdpbGwgYmUgbm8gbW9yZSBj
bGFzaGVzLg0KDQoNClJlZ2FyZHMsDQpSYWh1bA0KDQo+IENoZWVycywNCj4gDQo+IC0tIA0KPiBK
dWxpZW4gR3JhbGwNCg0K


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 11:05:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 11:05:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112816.215114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYRif-0005it-0u; Mon, 19 Apr 2021 11:05:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112816.215114; Mon, 19 Apr 2021 11: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 1lYRie-0005im-Tj; Mon, 19 Apr 2021 11:05:32 +0000
Received: by outflank-mailman (input) for mailman id 112816;
 Mon, 19 Apr 2021 11:05:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYRid-0005ih-41
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 11:05:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fdc463aa-2e78-4b7c-a242-54ee924ffe45;
 Mon, 19 Apr 2021 11:05:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 654ADACC5;
 Mon, 19 Apr 2021 11:05: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: fdc463aa-2e78-4b7c-a242-54ee924ffe45
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618830329; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=20RvxJy0hcSKzsIFHAOY2mPKDfKYj1qJeJetM4NZSE8=;
	b=IIBOD6CysGm3eN8cp/c3TY2fDvp3yOc6zSyxECyMpk/lfM7Llsji5LD1jc7JfuA3v0qAO6
	IBbrm19Og3hwbzNtbgi9+IOWpjdpbQXmFYGiPJNxBkJ8ggkVWhdXzALawJHC8WEVaj4/uz
	2cDl9JF+9ERzDN+HEAo2QKzXwb0S3TE=
Subject: Re: [PATCH v2 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210419091231.55684-1-luca.fancellu@arm.com>
 <20210419091231.55684-4-luca.fancellu@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
Date: Mon, 19 Apr 2021 13:05:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210419091231.55684-4-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 19.04.2021 11:12, Luca Fancellu wrote:
> Modification to include/public/grant_table.h:
> 
> 1) Add doxygen tags to:
>  - Create Grant tables section
>  - include variables in the generated documentation
> 2) Add .rst file for grant table for Arm64

I'm missing some reasoning about at least some of the changes done
to grant_table.h. Looking at this and the earlier patches I also
couldn't spot any general outline of what is acceptable or even
necessary in such a header to be understood by doxygen. Without
this written down somewhere (or, if documented elsewhere, a
pointer provided to that doc) I'm afraid things might get screwed
up again later on.

> --- a/docs/hypercall-interfaces/arm64.rst
> +++ b/docs/hypercall-interfaces/arm64.rst
> @@ -8,6 +8,7 @@ Starting points
>  .. toctree::
>     :maxdepth: 2
>  
> +   arm64/grant_tables
>  
>  
>  Functions
> diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hypercall-interfaces/arm64/grant_tables.rst
> new file mode 100644
> index 0000000000..8955ec5812
> --- /dev/null
> +++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
> @@ -0,0 +1,8 @@
> +.. SPDX-License-Identifier: CC-BY-4.0
> +
> +Grant Tables
> +============
> +
> +.. doxygengroup:: grant_table

Why is this Arm64-specific?

> @@ -73,20 +75,25 @@
>   *                           frame, or zero if none.
>   *  3. Write memory barrier (WMB).
>   *  4. Write ent->flags, inc. valid type.
> + * @endcode
>   *
>   * Invalidating an unused GTF_permit_access entry:
> + * @code
>   *  1. flags = ent->flags.
>   *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
>   *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>   *  NB. No need for WMB as reuse of entry is control-dependent on success of
>   *      step 3, and all architectures guarantee ordering of ctrl-dep writes.
> + * @endcode
>   *
>   * Invalidating an in-use GTF_permit_access entry:
> + *
>   *  This cannot be done directly. Request assistance from the domain controller
>   *  which can set a timeout on the use of a grant entry and take necessary
>   *  action. (NB. This is not yet implemented!).
>   *
>   * Invalidating an unused GTF_accept_transfer entry:
> + * @code
>   *  1. flags = ent->flags.
>   *  2. Observe that !(flags & GTF_transfer_committed). [*]
>   *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
> @@ -97,47 +104,55 @@
>   *      transferred frame is written. It is safe for the guest to spin waiting
>   *      for this to occur (detect by observing GTF_transfer_completed in
>   *      ent->flags).
> + * @endcode
>   *
>   * Invalidating a committed GTF_accept_transfer entry:
>   *  1. Wait for (ent->flags & GTF_transfer_completed).
>   *
>   * Changing a GTF_permit_access from writable to read-only:
> + *
>   *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writing.
>   *
>   * Changing a GTF_permit_access from read-only to writable:
> + *
>   *  Use SMP-safe bit-setting instruction.

For example - are the blank lines you add necessary or merely nice
to have in your personal opinion?

> - */
> -
> -/*
> - * Reference to a grant entry in a specified domain's grant table.
> - */
> -typedef uint32_t grant_ref_t;

Why does this get moved ...

> -
> -/*
> + *
>   * A grant table comprises a packed array of grant entries in one or more
>   * page frames shared between Xen and a guest.
> + *
>   * [XEN]: This field is written by Xen and read by the sharing guest.
> + *
>   * [GST]: This field is written by the guest and read by Xen.
> + *
> + * @addtogroup grant_table Grant Tables
> + * @{
>   */
>  
> -/*
> - * Version 1 of the grant table entry structure is maintained purely
> - * for backwards compatibility.  New guests should use version 2.
> +/**
> + * Reference to a grant entry in a specified domain's grant table.
>   */
> +typedef uint32_t grant_ref_t;

... here, past a comment unrelated to it?

> @@ -243,23 +258,27 @@ union grant_entry_v2 {
>       * In that case, the frame field has the same semantics as the
>       * field of the same name in the V1 entry structure.
>       */
> +    /** @cond skip anonymous struct/union for doxygen */
>      struct {
>          grant_entry_header_t hdr;
>          uint32_t pad0;
>          uint64_t frame;
>      } full_page;
> +    /** @endcond */
>  
>      /*
>       * If the grant type is GTF_grant_access and GTF_sub_page is set,
>       * @domid is allowed to access bytes [@page_off,@page_off+@length)
>       * in frame @frame.
>       */
> +    /** @cond skip anonymous struct/union for doxygen */
>      struct {
>          grant_entry_header_t hdr;
>          uint16_t page_off;
>          uint16_t length;
>          uint64_t frame;
>      } sub_page;
> +    /** @endcond */
>  
>      /*
>       * If the grant is GTF_transitive, @domid is allowed to use the
> @@ -270,12 +289,14 @@ union grant_entry_v2 {
>       * The current version of Xen does not allow transitive grants
>       * to be mapped.
>       */
> +    /** @cond skip anonymous struct/union for doxygen */
>      struct {
>          grant_entry_header_t hdr;
>          domid_t trans_domid;
>          uint16_t pad0;
>          grant_ref_t gref;
>      } transitive;
> +    /** @endcond */

While already better than the introduction of strange struct tags,
I'm still not convinced we want this extra clutter (sorry). Plus -
don't these additions mean the sub-structures then won't be
represented in the generated doc, rendering it (partly) useless?

> @@ -433,7 +454,12 @@ typedef struct gnttab_transfer gnttab_transfer_t;
>  DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>  
>  
> -/*
> +#define _GNTCOPY_source_gref      (0)
> +#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
> +#define _GNTCOPY_dest_gref        (1)
> +#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
> +
> +/**
>   * GNTTABOP_copy: Hypervisor based copy
>   * source and destinations can be eithers MFNs or, for foreign domains,
>   * grant references. the foreign domain has to grant read/write access
> @@ -451,18 +477,15 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>   * bytes to be copied.
>   */
>  
> -#define _GNTCOPY_source_gref      (0)
> -#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
> -#define _GNTCOPY_dest_gref        (1)
> -#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
> -
>  struct gnttab_copy {

Again the question - why the movement?

> @@ -579,17 +602,19 @@ struct gnttab_swap_grant_ref {
>  typedef struct gnttab_swap_grant_ref gnttab_swap_grant_ref_t;
>  DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
>  
> -/*
> +/**
>   * Issue one or more cache maintenance operations on a portion of a
>   * page granted to the calling domain by a foreign domain.
>   */
>  struct gnttab_cache_flush {
> +    /** @cond skip anonymous struct/union for doxygen */
>      union {
>          uint64_t dev_bus_addr;
>          grant_ref_t ref;
>      } a;
> -    uint16_t offset; /* offset from start of grant */
> -    uint16_t length; /* size within the grant */
> +    /** @endcond */
> +    uint16_t offset; /**< offset from start of grant */
> +    uint16_t length; /**< size within the grant */

Skipping just part of a struct is perhaps even more confusing than
omitting it altogether.

Also, what's the significance of "/**<" ?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 11:17:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 11:17:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112823.215128 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYRtj-0006iq-2n; Mon, 19 Apr 2021 11:16:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112823.215128; Mon, 19 Apr 2021 11:16: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 1lYRti-0006ij-WE; Mon, 19 Apr 2021 11:16:59 +0000
Received: by outflank-mailman (input) for mailman id 112823;
 Mon, 19 Apr 2021 11:16:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYRth-0006ie-2h
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 11:16:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 28dcf9b6-0366-4953-81f7-ab4f549764a5;
 Mon, 19 Apr 2021 11:16:56 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3D382ACC5;
 Mon, 19 Apr 2021 11:16:55 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 28dcf9b6-0366-4953-81f7-ab4f549764a5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618831015; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=jGMheD6SbVw9Oz7pBnA433BAXdpfUVVQaeY4C+E0vJo=;
	b=hgMi6AwU6NoC4XupaSfZX+KPEDSoFISo4g6z0ADegnzaWyhfW/+OTk28KMWO/kDOjGnpHM
	/y0elwMKoqE8iyEJ+Q4tmK8KTuDxCfnWjdhpBgANMPAPmRKrvYmKt5cs0mpQ5ixrmB7rFs
	b9RmYbjfSTBmV+WOUea2OQwsy5DYzFs=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: Rahul Singh <Rahul.Singh@arm.com>
Cc: Julien Grall <julien@xen.org>, xen-devel
 <xen-devel@lists.xenproject.org>, Bertrand Marquis
 <Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
Date: Mon, 19 Apr 2021 13:16:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YH1CBP8At7lVoHCz@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 19.04.2021 10:40, Roger Pau Monné wrote:
> On Mon, Apr 19, 2021 at 07:16:52AM +0000, Rahul Singh wrote:
>> Thanks you everyone for reviewing the code. I will summarise what I have understood from all the comments 
>> and what I will be doing for the next version of the patch.  Please let me know your view on this.
>>
>> 1. Create a separate non-arch specific file "msi-intercept.c"  for the below newly introduced function and 
>>     compile that file if CONFIG_PCI_MSI_INTERCEPT is enabled.CONFIG_PCI_MSI_INTERCEPT  will  be 
>>     enabled for x86 by default.

Everything up to here wants to be separate from ...

>> Also Mention in the commit message that these function will be needed for Xen to 
>>     support MSI interrupt within XEN.
>>
>> 	pdev_msi_initi(..)
>> 	pdev_msi_deiniti(..)

... this (if all of these functions really are needed beyond the
purpose of intercepting MSI accesses).

> I would drop the last 'i' from both function names above, as we use
> init/deinit in the rest of the code base.

+1

>> 	pdev_dump_msi(..),
>> 	pdev_msix_assign(..)
>>
>> 2. Create separate patch for iommu_update_ire_from_msi() related code. There are two suggestion please help me which one to choose. 
>>  
>>      - Move the iommu_update_ire_from_msi() function to asm-x86/iommu.h and also move the hook from iommu_ops under CONFIG_X86.
> 
> I would go for this one.

Strictly speaking this isn't x86-specific and hence shouldn't move there.
It merely depends on whether full MSI support is wanted by an arch. I'd
therefore guard the declaration by an #ifdef (if needed at all - have a
declaration without implementation isn't really that problematic). For
the definition question is going to be whether you introduce another new
file for the pdev_*() functions above. If not, #ifdef may again be better
than moving to an x86-specific file.

>>       - Implement a more generic function "arch_register_msi()"). This could call iommu_update_ire_from_msi() on x86 and the 
>>         ITS related code once implemented on Arm. Introduce the new Kconfig CONFIG_HAS_IOMMU_INTERRUPT_REMAP for this option.
> 
> I think it's best to introduce this hook when you actually have to
> implement the Arm version of it.

Plus arch_register_msi() sounds like a one-time operation, whereas (iirc)
iommu_update_ire_from_msi() may get called many times during the lifetime
of a single MSI interrupt.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 11:25:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 11:25:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112834.215144 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYS1t-0007kf-W5; Mon, 19 Apr 2021 11:25:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112834.215144; Mon, 19 Apr 2021 11:25:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYS1t-0007kY-Sp; Mon, 19 Apr 2021 11:25:25 +0000
Received: by outflank-mailman (input) for mailman id 112834;
 Mon, 19 Apr 2021 11:25:25 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYS1t-0007kT-E9
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 11:25:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dad37287-4a49-4c8c-a024-569cd7487eba;
 Mon, 19 Apr 2021 11:25:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CE60DABF6;
 Mon, 19 Apr 2021 11:25: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: dad37287-4a49-4c8c-a024-569cd7487eba
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618831523; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=U5jL5WB1SrCrFB7x/v5N03v5tJ1qpdpNOObKsdvfKDY=;
	b=dqf4YctOQCa7xDaSG6rGx5NdgBd512RNmd/O993+XYSlr4U4RSfxtmMurHS7tHR6jNzU3W
	/x3t65Vpinc9u0ccNsnPHLtSgO96mk+2VWQKBG86lr0ck0mLq3n4CfcsZEbRe0wKuhKrXy
	zM1luZabvuyoBhWIAvJa7/xeqt5O3/E=
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
To: Tim Deegan <tim@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
 <YHs2AJ6pqrAw7uew@deinos.phlegethon.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d698a29e-fb4e-a650-9e48-ad209e64c800@suse.com>
Date: Mon, 19 Apr 2021 13:25:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YHs2AJ6pqrAw7uew@deinos.phlegethon.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 17.04.2021 21:24, Tim Deegan wrote:
> At 12:40 +0200 on 12 Apr (1618231248), Jan Beulich wrote:
>> The address of this page is used by the CPU only to recognize when to
>> access the virtual APIC page instead. No accesses would ever go to this
>> page. It only needs to be present in the (CPU) page tables so that
>> address translation will produce its address as result for respective
>> accesses.
>>
>> By making this page global, we also eliminate the need to refcount it,
>> or to assign it to any domain in the first place.
> 
> What is the aim here?  To save 4k per domain?  It seems to come out
> about even for adding and removing code. 

True, but still it looks wrong to me to use a page per guest when one
her host suffices. Think about many tiny, short-lived VMs (as in
Tamas'es VM forking).

>> --- a/xen/arch/x86/mm/shadow/set.c
>> +++ b/xen/arch/x86/mm/shadow/set.c
>> @@ -94,6 +94,22 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
>>      ASSERT(!sh_l1e_is_magic(sl1e));
>>      ASSERT(shadow_mode_refcounts(d));
>>  
>> +    /*
>> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
>> +     * get accessed, and hence there's no need to refcount it (and refcounting
>> +     * would fail, due to the page having no owner).
>> +     */
>> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
> 
> Would it be better to check specifically for mfn == apic_access_mfn
> (and apic_access_mfn != 0, I guess)?

Roger did ask about the same - I neither want to expose apic_access_mfn
outside its CU, nor do I want to introduce an accessor function. Both
feel like layering violations to me.

>  If we want this behaviour for
> for all un-owned PGC_extra MFNs it would be good to explain that in the
> comments.

This is hard to tell without knowing which (or even if) further such
PGC_extra pages will appear. Hence any comment to that effect would be
guesswork at best. Of course I can add e.g. "Other pages with the same
properties would be treated the same", if that's what you're after?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 11:39:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 11:39:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112840.215156 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYSFm-0000MX-6I; Mon, 19 Apr 2021 11:39:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112840.215156; Mon, 19 Apr 2021 11:39:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYSFm-0000MQ-32; Mon, 19 Apr 2021 11:39:46 +0000
Received: by outflank-mailman (input) for mailman id 112840;
 Mon, 19 Apr 2021 11:39: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 1lYSFk-0000MG-Kr; Mon, 19 Apr 2021 11:39: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 1lYSFk-0007w3-Dz; Mon, 19 Apr 2021 11:39: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 1lYSFk-0005G4-10; Mon, 19 Apr 2021 11:39:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYSFk-0003xY-0V; Mon, 19 Apr 2021 11:39: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=4UwhXca6Styu3KoWeEAUgwzRPMrq1LdwEAEgMu+Y26c=; b=hd/TKIfxyhVB6w/u065Smz2Jvs
	P3ngI74iQniBu9ke470j/IdmMIqoXwrS0CmDMUzJx0Ly6MaDc1OuMbw+7NPmUk4tgphCFnf1kwXle
	IyYuzyiAQm9FLTfI5MxwpjaplUyV88iMLBAQn3JQmRs8Fk0smPoCR02v8G4oy6kcbp08=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161276-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161276: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=8fe9f1f891eff4e37f82622b7480ee748bf4af74
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 11:39:44 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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

version targeted for testing:
 qemuu                8fe9f1f891eff4e37f82622b7480ee748bf4af74
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  242 days
Failing since        152659  2020-08-21 14:07:39 Z  240 days  446 attempts
Testing same since   161147  2021-04-14 22:08:02 Z    4 days    7 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142656 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 11:46:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 11:46:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112849.215171 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYSLr-0001JZ-4S; Mon, 19 Apr 2021 11:46:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112849.215171; Mon, 19 Apr 2021 11: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 1lYSLq-0001JS-W9; Mon, 19 Apr 2021 11:46:02 +0000
Received: by outflank-mailman (input) for mailman id 112849;
 Mon, 19 Apr 2021 11:46:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYSLp-0001JN-Fu
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 11:46:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c9d57a44-3484-4d8d-9d6a-6a11bfb2aa53;
 Mon, 19 Apr 2021 11:46:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D16DDAF3D;
 Mon, 19 Apr 2021 11:45: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: c9d57a44-3484-4d8d-9d6a-6a11bfb2aa53
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618832759; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RCGs1l9yEBWDJEBTNgcVgb5Q71nS/XvSkI1mkCSsAA8=;
	b=LVDFerTI8469gRHj4hzcbwcQUL8frE9UaEqFmCqv7aZvm/sE4Q05u7jXaMbQOyclMMAMAH
	suv843QFWKY0jiwrsbN4SpHLfjlFt9nV/1KdekRPKJt/Gr6foVOTeNrJU3k355km94oG/S
	aj5jWIkSY0HS6CfwMjaM2qeyre3VF2E=
Subject: Re: [PATCH v3] x86/CPUID: shrink max_{,sub}leaf fields according to
 actual leaf contents
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Liu <wl@xen.org>, Paul Durrant <paul@xen.org>
References: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
 <YH1KZhLrC6anI/Hm@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1612e2ac-87ad-4f7f-aaed-05486365b9dc@suse.com>
Date: Mon, 19 Apr 2021 13:46:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YH1KZhLrC6anI/Hm@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 19.04.2021 11:16, Roger Pau Monné wrote:
> Adding Paul also for the Viridian part.
> 
> On Fri, Apr 16, 2021 at 03:16:41PM +0200, Jan Beulich wrote:
>> Zapping leaf data for out of range leaves is just one half of it: To
>> avoid guests (bogusly or worse) inferring information from mere leaf
>> presence, also shrink maximum indicators such that the respective
>> trailing entry is not all blank (unless of course it's the initial
>> subleaf of a leaf that's not the final one).
>>
>> This is also in preparation of bumping the maximum basic leaf we
>> support, to ensure guests not getting exposed related features won't
>> observe a change in behavior.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> v3: Record the actual non-empty subleaf in p->basic.raw[0x7], rather
>>     than subleaf 0. Re-base over Viridian leaf 40000005 addition.
>> v2: New.
>>
>> --- a/tools/tests/cpu-policy/test-cpu-policy.c
>> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
>> @@ -8,10 +8,13 @@
>>  #include <err.h>
>>  
>>  #include <xen-tools/libs.h>
>> +#include <xen/asm/x86-defns.h>
>>  #include <xen/asm/x86-vendors.h>
>>  #include <xen/lib/x86/cpu-policy.h>
>>  #include <xen/domctl.h>
>>  
>> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
>> +
>>  static unsigned int nr_failures;
>>  #define fail(fmt, ...)                          \
>>  ({                                              \
>> @@ -553,6 +556,103 @@ static void test_cpuid_out_of_range_clea
>>      }
>>  }
>>  
>> +static void test_cpuid_maximum_leaf_shrinking(void)
>> +{
>> +    static const struct test {
>> +        const char *name;
>> +        struct cpuid_policy p;
>> +    } tests[] = {
>> +        {
>> +            .name = "basic",
>> +            .p = {
>> +                /* Very basic information only. */
>> +                .basic.max_leaf = 1,
>> +                .basic.raw_fms = 0xc2,
>> +            },
>> +        },
>> +        {
>> +            .name = "cache",
>> +            .p = {
>> +                /* Cache subleaves present. */
>> +                .basic.max_leaf = 4,
>> +                .cache.subleaf[0].type = 1,
> 
> On a private conversation with Andrew he raised the issue that the
> shrinking might be overly simplistic. For example if the x2APIC
> feature bit in leaf 1 is set then the max leaf should be at least 0xb
> in order to be able to fetch the x2APIC ID, even if it's 0.

But in such a case the "type" field of leaf 0xb's first sub-leaf is
going to be non-zero, isn't it?

> I also wonder if we are shrinking the leaves too much, for example we
> should always report up to 0x40000000 (or 0x40000100) plus the Xen
> leaves, as we never hide those and it's also documented in the public
> headers?

Not sure I follow - I'm likely confused by you quoting 0x40000000
and 0x40000100 rather than 0x400000nn and 0x400001nn, as elsewhere
you suggested we may not want to clip sub-leaves there. Can you
clarify whether you really mean only the first sub-leaves (each)
here, and if so why you say "up to"? Furthermore for the Xen leaves
I don't think I do excessive clipping ...

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 11:55:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 11:55:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112855.215183 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYSUT-0002Fy-W5; Mon, 19 Apr 2021 11:54:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112855.215183; Mon, 19 Apr 2021 11: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 1lYSUT-0002Fr-Sv; Mon, 19 Apr 2021 11:54:57 +0000
Received: by outflank-mailman (input) for mailman id 112855;
 Mon, 19 Apr 2021 11:54:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lYSUS-0002Em-7s
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 11:54:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYSUL-0008HN-S5; Mon, 19 Apr 2021 11:54:49 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYSUL-0002aR-HI; Mon, 19 Apr 2021 11:54:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=6wbZMU6F53nhJ6Ik1I9Gy9Zvrv8Ewa5Qk/CdC8a4w1M=; b=XXjJlwElKnQ6lsjuOnbxiFGaPr
	S+cy/Lh3eW6lbIARnBXmK9oLlKyRQOdk1ALHH6CRZjJRw+PjE4iofU/zGkxQj6Z2pQHRg9IAqIK0I
	d3fSwyiI59ji+L7DtPq2bRDXCRHZj+MkIG5kizUVJrYJkXZknhgOx9ffPs9F3MQV0GcM=;
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: Jan Beulich <jbeulich@suse.com>, Rahul Singh <Rahul.Singh@arm.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
Date: Mon, 19 Apr 2021 12:54:46 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 19/04/2021 12:16, Jan Beulich wrote:
> On 19.04.2021 10:40, Roger Pau Monné wrote:
>> On Mon, Apr 19, 2021 at 07:16:52AM +0000, Rahul Singh wrote:
>>> Thanks you everyone for reviewing the code. I will summarise what I have understood from all the comments
>>> and what I will be doing for the next version of the patch.  Please let me know your view on this.
>>>
>>> 1. Create a separate non-arch specific file "msi-intercept.c"  for the below newly introduced function and
>>>      compile that file if CONFIG_PCI_MSI_INTERCEPT is enabled.CONFIG_PCI_MSI_INTERCEPT  will  be
>>>      enabled for x86 by default.
> 
> Everything up to here wants to be separate from ...
> 
>>> Also Mention in the commit message that these function will be needed for Xen to
>>>      support MSI interrupt within XEN.
>>>
>>> 	pdev_msi_initi(..)
>>> 	pdev_msi_deiniti(..)
> 
> ... this (if all of these functions really are needed beyond the
> purpose of intercepting MSI accesses).
> 
>> I would drop the last 'i' from both function names above, as we use
>> init/deinit in the rest of the code base.
> 
> +1
> 
>>> 	pdev_dump_msi(..),
>>> 	pdev_msix_assign(..)
>>>
>>> 2. Create separate patch for iommu_update_ire_from_msi() related code. There are two suggestion please help me which one to choose.
>>>   
>>>       - Move the iommu_update_ire_from_msi() function to asm-x86/iommu.h and also move the hook from iommu_ops under CONFIG_X86.
>>
>> I would go for this one.
> 
> Strictly speaking this isn't x86-specific and hence shouldn't move there.
> It merely depends on whether full MSI support is wanted by an arch. 

As I pointed out before, Arm doesn't use the IOMMU to setup the MSIs. So 
the naming and using an IOMMU callback is definitely wrong for Arm.

> I'd
> therefore guard the declaration by an #ifdef (if needed at all - have a
> declaration without implementation isn't really that problematic). For
> the definition question is going to be whether you introduce another new
> file for the pdev_*() functions above. If not, #ifdef may again be better
> than moving to an x86-specific file.
AFAIK, this helper is only called by x86 specific code and it will not 
be used as-is by Arm.

I can't tell for other arch (e.g RISCv, PowerPC). However... we can take 
the decision to move the code back to common back when it is necessary.

For the time being, I think move this code in x86 is a lot better than 
#ifdef or keep the code in common code.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 12:09:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 12:09:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112869.215195 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYSia-0003N9-Fl; Mon, 19 Apr 2021 12:09:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112869.215195; Mon, 19 Apr 2021 12: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 1lYSia-0003N2-CK; Mon, 19 Apr 2021 12:09:32 +0000
Received: by outflank-mailman (input) for mailman id 112869;
 Mon, 19 Apr 2021 12:09:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2xPN=JQ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYSiZ-0003Mx-9F
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 12:09:31 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5dcc46a7-e688-43c1-99fb-7c969fd83997;
 Mon, 19 Apr 2021 12:09:29 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5dcc46a7-e688-43c1-99fb-7c969fd83997
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618834169;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=IfOMr70CGHdVMioh/jkGgS4BbYoZNQybDqZZOe2QBeU=;
  b=F62DAVpJbgh0ANxl3pB1TVzQJ/3PV27W1KSJY/uFv9Y+z9MSrLXEplff
   GjSf5QkqwhRnAkUMjRYg3G5v5H2+TkUkJQlpjd1NsiqIVixLcfcBlyIcn
   cvz/ZpiIhlCQY1nh0MoWp91HYI44rm8wxddQJqiSO80eh3cHULCBaRLsk
   k=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: dJRFgUpiOrHc7pkAH2pxkEMzbjZDjSQdOoeT53QwC6CVAgSw26WGactIQ+fZ7/es9aPWvbz410
 kOmKnmVaEwEOpD27+gf1bu77K5/9A9HwlDAnbJ+noVC7ETBtL9akVt+knSUs0lfvvm/4QfErRE
 km/pTMFGMhZr0H/zm/KUzkeIf/ZvCTj5Y/fDEmr5mlwuFLsu9XDORZx5p2A+1sADS6x/6E8zCw
 LNrV4FA6UG/5ZgR5wLETdu6caAxdyaiNaMgMV0tuophHSlRlicaalz85hSLMKemS2wuIe8fFs9
 WTc=
X-SBRS: 5.2
X-MesageID: 41881256
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:yzhXWK4jq++D5NABSAPXwXiEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbTqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH76GL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnk4j41VTRTzbA+tV
 XUigCR3NTZj9iX6D/5k1XS4ZNfhcf7xrJ4avCkp8AJJlzX+2SVTat7XbnqhkFRnMiO7xIQnM
 DIs1McOa1Img/sV0WUhTeo5AX6yjYp7BbZuC+lqF/uu9bwSj5/K+cpv/MhTjLj50AtvM5x3c
 twtgrz3fonbmKzoA3H69fFTB1snEavyEBS6dI7tHBDTZAYLIZYsI13xjIlLL47ACn45Io7ed
 Meav302fA+SyL/U1np+kNrwNCqQ00pGAaHTkUoqqWuokZrtUE84E0CyMMFmHAcsLo7Vplf/u
 zBdp9ljbdUU6YtHO5ALdZEZfHyJn3GQBrKPm7XCVP7FJsfM3aIj5Ls+r066MyjZZRg9up8pL
 3xFHdj8UIicUPnDsODmLdR9ArWfWm7VTPxjulD+plQoNTHNfrWGBzGbGprv9qrov0ZDMGece
 20IohqD/jqKnarMZpV3jf5R4JZJRAlIYwok+d+f2jLjtPAK4XsuOCeWu3UPqDRHTEtXX66LW
 AEWBT1OcVc/mGmUnL1m3HqKjHQU3262ag1PLnR/uAVxoRIHJZLqBIphVOw4dzOCTAqiN1yQG
 JOZJfc1o+rr2i/+mjFq09zPABGM0pT6LL8F1dDpQoANVLIYa8O0u/vPVx67T+iHFtSXsnWGA
 lQqxBc4qSsNaGdwigkFpaBPn+FiWAQ4FaHVY0VlKHGxcqNQOJ3Mr8WHIhKUSnbHR18nghn7E
 1ZbhUfe0PZHjTyzYO/jJIVA+nbX8JmgBiiJPNVrX63jzTemegfAl8gGxK+W8+ehggjAxBOgE
 dqzqMZiL2c3Qq0JXAHm+Q+Ol1UYGGxCLZLZT71I7l8q/TOQkVdXG2KjTuVh1UWdnDx/0sfvG
 DnMBaZYOrGGFZbp3Be3Jv76V8cTBTvQ2tALlRB9aFtH2XPvXh+ldWGYae+yEO9QFoPyON1Ck
 CPXRIiZidVg/yn3h+cnziPUUg8zpI1J+rHEfAIaLfIwE6gL4WOiIALF/JZ54xeKdjrq+MHON
 jvPTO9HXfdMacEygaVrnEqNG1Is3Eii+rvwwCgw26i3nIzaMCiVmhOdvU+GZW74GflTfrTj8
 k8otIxoOeqMmL+LvSB0rraajZfKhXV5U66JttY3ax8jOYXjv9UGZKebB7jkFdg9z86JN3vlE
 wfTL9giYqxcrNHTog3QWZh4lEtlN6zN0MlvQz9P/8mcTgW/grmFuLMx4CNlKEmDUKArjbhIF
 Wz8yVS+PHeQiuIvIRqfJ4YECBzaEIm7m5l8/7HX4rMCB+yf+UrxivxDlaNNJtcQrOCA7Mes1
 JT5MyJhfaec27d1BrLtTV2ZoJI/GDPe7L+PCu8XcpJ+ce9I1KCn++D59Oyli7+TX+DUHsj7L
 c1PHA4X4BkkTktjIo+zyi0ROjWmyse4iRjyAAisEXs1Iig6HrcBmdcP2Ti88xrYQU=
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="41881256"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Fmu/aOPB15x2Ibj37jBhamj0jD4F0dYtiTD2146J7u8PTKH+A4UwwG6MhSTLSZNlgkIVvj6WxkKTChkz/aXQScwI20QR8VtkfEl43KB8dzkL01ojJfNeXdmrGwuGOoaScqNyneFiHB35013G3gVpxTfflaxLhvrt2gFXK8cD0edAj8UkdU2pvIkrYifsLI6yBII7NDZAdmIcutiyDVCgaojJ6ngb00iwVr01p9LcnHvBM0dA1RI7AnNk/s1fAVhzGYPiqLRFaZDMYM/7IVhaGch0llfY+Nc8aj7OfYl7zBHJLOkDwhXI9HDdf/K3xTS+g+ipH3jsT6f6NOqXuU3z1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gFrDvQtT16meA9IXm631mZxvxWqIJj2tLdTG0EEf+48=;
 b=hltnYRqiXDrMLmInIgYMmkyhmH70S5IVYkIFX7yj9xk6pkm/s7b7QwGhkLBCeY2xzigcl5W/3XD+HfMEg4NwzDgW2VW9zIiOOBUfOkRmS78bXJuG/bGUKUIoewos1QhTWD7jiO2Do3WVlyyqqeDpuxWKqCo6tjTmu73vuQsha/q5tVZ5rtWE5JATUmM52RU+0z8JTa6Nyv8ZtZI2yhzchA6QQljpa4pI4Y6apMsecr2iY8jhncvgyNNqSRoLtDyVWDufQ+z6UlfgzTwDW2lizAYML6YP7+9K5ULMSm5gUlpQ4C9yr3r9/R4abFDINJ1ZhNnupq7jZqDLFUppFnHJMg==
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=gFrDvQtT16meA9IXm631mZxvxWqIJj2tLdTG0EEf+48=;
 b=dKyH5iN3r6BaS1CCfC4ZtEp7F85xzA3KUqO/odKeVt0oJg2uJY0FU37yFVLPjAIYOz+PumwbJwS0A0n8yR21vJmoYPek7wXMy5VYiy59kqjFt43EPOkZd7rPv3aLe9bem2BmnDYD+2GXqFK39g2rRGt7SCrzGuZrLA+QcO40ga4=
Date: Mon, 19 Apr 2021 14:09: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>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Wei Liu
	<wl@xen.org>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v3] x86/CPUID: shrink max_{,sub}leaf fields according to
 actual leaf contents
Message-ID: <YH1y7pFbtz/aWMJ2@Air-de-Roger>
References: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
 <YH1KZhLrC6anI/Hm@Air-de-Roger>
 <1612e2ac-87ad-4f7f-aaed-05486365b9dc@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <1612e2ac-87ad-4f7f-aaed-05486365b9dc@suse.com>
X-ClientProxiedBy: MR2P264CA0035.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::23)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f39bcf40-6f10-4b43-a480-08d9032bf917
X-MS-TrafficTypeDiagnostic: DM6PR03MB4220:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB42207D8850F0287AD7D095AA8F499@DM6PR03MB4220.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: x9h3/43+0RK7QLPqWKZbKQtZ4xpJXsHV1XwyB4Viheq2QuzWAsahjYkKBzzculZvt1wCl16eZGdAiJ/L4Vmm3KZfoyR2FtVOEWcUdLkVGAPp/Vt0SELqoQFnNf17WSIS4kHZqHr0bGos9z9u1KFlZBvMrScjhN87NGih/vb0nelCQkPcDeuHIAG6cUXFRU946jC2kA9m1Ej8L9Cnda3MzsHBOCIDKLCAKGPie37H1CcshqiVWPVegFiT69sxXMUehVLBBwbDGlm1RmorsApRAq+z4ONBkQB+oaL1BF7petn5hoCoywSS+ejd9gd1HiveWkCPDsakYBy7NKXINNdZ6G8txzSSbObmlkuvcU5fGSLLKhCmG94HUPFEpA4q9fZ9hTNMV6WG86nwK8kByM+O1uVE4/PmqdBU+V/m3zdfv9Duyay3VsCctZvQ12Ic+metaaC7aA2IWS8MC7mWC9D7+JNdY21xfw+HJSY+J4n9zCrwk7nH87JYuXRpLXZ6hWl2ufrVOICkEwwf9ddIpdG+oAVeU39FeU45Dm/D0zFDPbR6E5NinoC8Va9PIELr3FvtrgMhnSeZ6ZW/c8MDDzDZf8VoJoRncSj50J6v6cZc6+4=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(39860400002)(366004)(376002)(396003)(346002)(6666004)(33716001)(8936002)(54906003)(5660300002)(316002)(9686003)(8676002)(6486002)(85182001)(6916009)(6496006)(956004)(86362001)(66556008)(66476007)(53546011)(4326008)(83380400001)(38100700002)(16526019)(66946007)(186003)(2906002)(478600001)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f39bcf40-6f10-4b43-a480-08d9032bf917
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 12:09:24.8742
 (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: HLihlHaNlHbOubSvi9cc3C1br7hL2MfN18IgYfbUR8h9MnDpHLdVQk+EmG3NhSA92YoWMntJ/LXLsFIVPYDFjA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4220
X-OriginatorOrg: citrix.com

On Mon, Apr 19, 2021 at 01:46:02PM +0200, Jan Beulich wrote:
> On 19.04.2021 11:16, Roger Pau Monné wrote:
> > Adding Paul also for the Viridian part.
> > 
> > On Fri, Apr 16, 2021 at 03:16:41PM +0200, Jan Beulich wrote:
> >> Zapping leaf data for out of range leaves is just one half of it: To
> >> avoid guests (bogusly or worse) inferring information from mere leaf
> >> presence, also shrink maximum indicators such that the respective
> >> trailing entry is not all blank (unless of course it's the initial
> >> subleaf of a leaf that's not the final one).
> >>
> >> This is also in preparation of bumping the maximum basic leaf we
> >> support, to ensure guests not getting exposed related features won't
> >> observe a change in behavior.
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> >> ---
> >> v3: Record the actual non-empty subleaf in p->basic.raw[0x7], rather
> >>     than subleaf 0. Re-base over Viridian leaf 40000005 addition.
> >> v2: New.
> >>
> >> --- a/tools/tests/cpu-policy/test-cpu-policy.c
> >> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
> >> @@ -8,10 +8,13 @@
> >>  #include <err.h>
> >>  
> >>  #include <xen-tools/libs.h>
> >> +#include <xen/asm/x86-defns.h>
> >>  #include <xen/asm/x86-vendors.h>
> >>  #include <xen/lib/x86/cpu-policy.h>
> >>  #include <xen/domctl.h>
> >>  
> >> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
> >> +
> >>  static unsigned int nr_failures;
> >>  #define fail(fmt, ...)                          \
> >>  ({                                              \
> >> @@ -553,6 +556,103 @@ static void test_cpuid_out_of_range_clea
> >>      }
> >>  }
> >>  
> >> +static void test_cpuid_maximum_leaf_shrinking(void)
> >> +{
> >> +    static const struct test {
> >> +        const char *name;
> >> +        struct cpuid_policy p;
> >> +    } tests[] = {
> >> +        {
> >> +            .name = "basic",
> >> +            .p = {
> >> +                /* Very basic information only. */
> >> +                .basic.max_leaf = 1,
> >> +                .basic.raw_fms = 0xc2,
> >> +            },
> >> +        },
> >> +        {
> >> +            .name = "cache",
> >> +            .p = {
> >> +                /* Cache subleaves present. */
> >> +                .basic.max_leaf = 4,
> >> +                .cache.subleaf[0].type = 1,
> > 
> > On a private conversation with Andrew he raised the issue that the
> > shrinking might be overly simplistic. For example if the x2APIC
> > feature bit in leaf 1 is set then the max leaf should be at least 0xb
> > in order to be able to fetch the x2APIC ID, even if it's 0.
> 
> But in such a case the "type" field of leaf 0xb's first sub-leaf is
> going to be non-zero, isn't it?

Right, as type 0 is invalid according to Intel SDM, so you will never
be able to shrink below 0xb while having x2APIC set.

I still wonder however if there's any other such dependency, where
shrinking the max cpuid leaf could force us to drop features exposed
in inferior leaves.

> > I also wonder if we are shrinking the leaves too much, for example we
> > should always report up to 0x40000000 (or 0x40000100) plus the Xen
> > leaves, as we never hide those and it's also documented in the public
> > headers?
> 
> Not sure I follow - I'm likely confused by you quoting 0x40000000
> and 0x40000100 rather than 0x400000nn and 0x400001nn, as elsewhere
> you suggested we may not want to clip sub-leaves there. Can you
> clarify whether you really mean only the first sub-leaves (each)
> here, and if so why you say "up to"? Furthermore for the Xen leaves
> I don't think I do excessive clipping ...

No, sorry, I was confused. What you do is fine, I would even (as said
in the previous patch) just report the max leaf unconditionally even
if empty, as we are not leaking any hardware state in this case.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 12:29:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 12:29:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112880.215207 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYT24-0005DA-6v; Mon, 19 Apr 2021 12:29:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112880.215207; Mon, 19 Apr 2021 12: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 1lYT24-0005D3-3g; Mon, 19 Apr 2021 12:29:40 +0000
Received: by outflank-mailman (input) for mailman id 112880;
 Mon, 19 Apr 2021 12:29:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYT22-0005Cs-57
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 12:29:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6466cc0f-6eca-4514-8b69-a7efca784128;
 Mon, 19 Apr 2021 12:29:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0D8BEB2F1;
 Mon, 19 Apr 2021 12:29: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: 6466cc0f-6eca-4514-8b69-a7efca784128
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618835376; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=dKVZCcur7dYkxqBWWCDRpG2QQQciZKjflbkXTg8Hxf0=;
	b=hn4D2UrMEduv0+1yXPwutQOdrobQAE28pVwxzpMXTeRzBOfx76Opk+JmKfQcVKNtZYvFGg
	KSewHtqBhdPLExvpViGrF4xv/c+dOTQaJOcVPGNTKQAAYgqiuZKaBVa53aGsTWxykRDKhM
	kATqjqaZxZV9aQQxW2YiIYgBSQqR06k=
Subject: Re: [PATCH v3] x86/CPUID: shrink max_{,sub}leaf fields according to
 actual leaf contents
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Liu <wl@xen.org>, Paul Durrant <paul@xen.org>
References: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
 <YH1KZhLrC6anI/Hm@Air-de-Roger>
 <1612e2ac-87ad-4f7f-aaed-05486365b9dc@suse.com>
 <YH1y7pFbtz/aWMJ2@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <8c3fb7b9-2ca6-ade8-70b7-482822cc1c22@suse.com>
Date: Mon, 19 Apr 2021 14:29:38 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <YH1y7pFbtz/aWMJ2@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 19.04.2021 14:09, Roger Pau Monné wrote:
> On Mon, Apr 19, 2021 at 01:46:02PM +0200, Jan Beulich wrote:
>> On 19.04.2021 11:16, Roger Pau Monné wrote:
>>> Adding Paul also for the Viridian part.
>>>
>>> On Fri, Apr 16, 2021 at 03:16:41PM +0200, Jan Beulich wrote:
>>>> Zapping leaf data for out of range leaves is just one half of it: To
>>>> avoid guests (bogusly or worse) inferring information from mere leaf
>>>> presence, also shrink maximum indicators such that the respective
>>>> trailing entry is not all blank (unless of course it's the initial
>>>> subleaf of a leaf that's not the final one).
>>>>
>>>> This is also in preparation of bumping the maximum basic leaf we
>>>> support, to ensure guests not getting exposed related features won't
>>>> observe a change in behavior.
>>>>
>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>> ---
>>>> v3: Record the actual non-empty subleaf in p->basic.raw[0x7], rather
>>>>     than subleaf 0. Re-base over Viridian leaf 40000005 addition.
>>>> v2: New.
>>>>
>>>> --- a/tools/tests/cpu-policy/test-cpu-policy.c
>>>> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
>>>> @@ -8,10 +8,13 @@
>>>>  #include <err.h>
>>>>  
>>>>  #include <xen-tools/libs.h>
>>>> +#include <xen/asm/x86-defns.h>
>>>>  #include <xen/asm/x86-vendors.h>
>>>>  #include <xen/lib/x86/cpu-policy.h>
>>>>  #include <xen/domctl.h>
>>>>  
>>>> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
>>>> +
>>>>  static unsigned int nr_failures;
>>>>  #define fail(fmt, ...)                          \
>>>>  ({                                              \
>>>> @@ -553,6 +556,103 @@ static void test_cpuid_out_of_range_clea
>>>>      }
>>>>  }
>>>>  
>>>> +static void test_cpuid_maximum_leaf_shrinking(void)
>>>> +{
>>>> +    static const struct test {
>>>> +        const char *name;
>>>> +        struct cpuid_policy p;
>>>> +    } tests[] = {
>>>> +        {
>>>> +            .name = "basic",
>>>> +            .p = {
>>>> +                /* Very basic information only. */
>>>> +                .basic.max_leaf = 1,
>>>> +                .basic.raw_fms = 0xc2,
>>>> +            },
>>>> +        },
>>>> +        {
>>>> +            .name = "cache",
>>>> +            .p = {
>>>> +                /* Cache subleaves present. */
>>>> +                .basic.max_leaf = 4,
>>>> +                .cache.subleaf[0].type = 1,
>>>
>>> On a private conversation with Andrew he raised the issue that the
>>> shrinking might be overly simplistic. For example if the x2APIC
>>> feature bit in leaf 1 is set then the max leaf should be at least 0xb
>>> in order to be able to fetch the x2APIC ID, even if it's 0.
>>
>> But in such a case the "type" field of leaf 0xb's first sub-leaf is
>> going to be non-zero, isn't it?
> 
> Right, as type 0 is invalid according to Intel SDM, so you will never
> be able to shrink below 0xb while having x2APIC set.
> 
> I still wonder however if there's any other such dependency, where
> shrinking the max cpuid leaf could force us to drop features exposed
> in inferior leaves.

My take is that, just like for the x2APIC case, such leaves won't be
all blank if the qualifying bit is set. Or if one ends up being all
blank, a bug likely sits elsewhere.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 12:33:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 12:33:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112885.215219 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYT5X-00063i-OC; Mon, 19 Apr 2021 12:33:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112885.215219; Mon, 19 Apr 2021 12: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 1lYT5X-00063b-JR; Mon, 19 Apr 2021 12:33:15 +0000
Received: by outflank-mailman (input) for mailman id 112885;
 Mon, 19 Apr 2021 12:33:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYT5V-00063W-Qr
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 12:33:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7333ed3b-c18d-47bd-8863-b70392d22516;
 Mon, 19 Apr 2021 12:33:13 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 67C9DB2F1;
 Mon, 19 Apr 2021 12:33: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: 7333ed3b-c18d-47bd-8863-b70392d22516
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618835592; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=t03M4jUAZ+QoCH0ewLO/1575kRUEHCkE5EB40iuS948=;
	b=XUx3TrXQ11JeHZbwB5dt5Y4jaVkmcr1VCnYmEQExIuVK4BzlknHwlHWyVUQFJ46CHK/Xwc
	jjvr3S+MuhRoXYRuP5Qw7gMdidGrrbUaArWzPOGr3EuNkc+/YpUN8mAZ8z6rAaFmdBO3dC
	srPKxC4GQdMd29hz+tuCI3F5bRh3hUQ=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: Julien Grall <julien@xen.org>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Rahul Singh <Rahul.Singh@arm.com>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
Date: Mon, 19 Apr 2021 14:33:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 19.04.2021 13:54, Julien Grall wrote:
> For the time being, I think move this code in x86 is a lot better than 
> #ifdef or keep the code in common code.

Well, I would perhaps agree if it ended up being #ifdef CONFIG_X86.
I would perhaps not agree if there was a new CONFIG_* which other
(future) arch-es could select if desired.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 13:02:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 13:02:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112900.215231 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYTXH-0000Kz-0i; Mon, 19 Apr 2021 13:01:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112900.215231; Mon, 19 Apr 2021 13: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 1lYTXG-0000Ks-TW; Mon, 19 Apr 2021 13:01:54 +0000
Received: by outflank-mailman (input) for mailman id 112900;
 Mon, 19 Apr 2021 13:01:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=B3mF=JQ=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lYTXF-0000Kj-TS
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 13:01:53 +0000
Received: from mx.upb.ro (unknown [141.85.13.200])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 50124ff3-ad54-47c9-9f1c-e51125f8ae7e;
 Mon, 19 Apr 2021 13:01:52 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id C6E48B560053;
 Mon, 19 Apr 2021 16:01:50 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id GJZW3Ua5WQdA; Mon, 19 Apr 2021 16:01:48 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id CF696B5600AE;
 Mon, 19 Apr 2021 16:01:48 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id QFE4my-dm-kM; Mon, 19 Apr 2021 16:01:48 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 6FD45B560053;
 Mon, 19 Apr 2021 16:01:48 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 50124ff3-ad54-47c9-9f1c-e51125f8ae7e
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH] tools/libs/light: Remove unnecessary libxl_list_vm() call
Date: Mon, 19 Apr 2021 16:01:42 +0300
Message-Id: <cf7c0f8869a087008fbe10888ebf96336b1ccb7b.1618837159.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

The removed lines were initially added by commit 314e64084d31, but the
subsequent code which was using the nb_vm variable was later removed by
commit 2ba368d13893, which makes these lines of code an overlooked
reminiscence. Moreover, the call becomes very expensive when there is a
considerable number of VMs (~1000 instances) running on the host.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/libs/light/libxl_create.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/tools/libs/light/libxl_create.c b/tools/libs/light/libxl_cre=
ate.c
index 0c64268f66..43e9ba9c63 100644
--- a/tools/libs/light/libxl_create.c
+++ b/tools/libs/light/libxl_create.c
@@ -578,7 +578,7 @@ int libxl__domain_make(libxl__gc *gc, libxl_domain_co=
nfig *d_config,
                        uint32_t *domid, bool soft_reset)
 {
     libxl_ctx *ctx =3D libxl__gc_owner(gc);
-    int ret, rc, nb_vm;
+    int ret, rc;
     const char *dom_type;
     char *uuid_string;
     char *dom_path, *vm_path, *libxl_path;
@@ -586,7 +586,6 @@ int libxl__domain_make(libxl__gc *gc, libxl_domain_co=
nfig *d_config,
     struct xs_permissions rwperm[1];
     struct xs_permissions noperm[1];
     xs_transaction_t t =3D 0;
-    libxl_vminfo *vm_list;
=20
     /* convenience aliases */
     libxl_domain_create_info *info =3D &d_config->c_info;
@@ -869,14 +868,6 @@ retry_transaction:
                         ARRAY_SIZE(rwperm));
     }
=20
-    vm_list =3D libxl_list_vm(ctx, &nb_vm);
-    if (!vm_list) {
-        LOGD(ERROR, *domid, "cannot get number of running guests");
-        rc =3D ERROR_FAIL;
-        goto out;
-    }
-    libxl_vminfo_list_free(vm_list, nb_vm);
-
     xs_write(ctx->xsh, t, GCSPRINTF("%s/uuid", vm_path), uuid_string, st=
rlen(uuid_string));
     xs_write(ctx->xsh, t, GCSPRINTF("%s/name", vm_path), info->name, str=
len(info->name));
=20
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 13:12:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 13:12:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112905.215243 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYTh7-0001LB-Qa; Mon, 19 Apr 2021 13:12:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112905.215243; Mon, 19 Apr 2021 13: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 1lYTh7-0001L4-NB; Mon, 19 Apr 2021 13:12:05 +0000
Received: by outflank-mailman (input) for mailman id 112905;
 Mon, 19 Apr 2021 13:12:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYTh6-0001Ku-Go; Mon, 19 Apr 2021 13:12:04 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYTh6-0001C9-6m; Mon, 19 Apr 2021 13:12:04 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYTh5-0000RG-Tp; Mon, 19 Apr 2021 13:12:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYTh5-0002eH-TH; Mon, 19 Apr 2021 13:12:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=CuKg8lQ/0IbFnUiPZsurQtG0dWIYNhMv0zbYUm6EZ/c=; b=adwMxwbgxlNgzQWaXEDwWpPejA
	XwFNzqVGO6wTtpu50iWr97RejqmoO+JWokCATTg6eIENH57GYL5DdGBIRhR5bgOhw6JTSneqAoJrp
	B2+MLcfjoR8s17paSDwvgTs9trIT4Kp5zsZfnkV6hZ9evpdTLnbGR6HUah39FvRptS8E=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161288-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161288: 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=b5b93627dd1c398a90b832af765b4720fc71814e
X-Osstest-Versions-That:
    xen=05031fa87357fad155f659cfc2dcce6614834684
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 13:12:03 +0000

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

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                  b5b93627dd1c398a90b832af765b4720fc71814e
baseline version:
 xen                  05031fa87357fad155f659cfc2dcce6614834684

Last test of basis   161269  2021-04-18 19:00:28 Z    0 days
Testing same since   161288  2021-04-19 11:00:27 Z    0 days    1 attempts

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

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   05031fa873..b5b93627dd  b5b93627dd1c398a90b832af765b4720fc71814e -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:01:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:01:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112931.215292 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTG-000608-G7; Mon, 19 Apr 2021 14:01:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112931.215292; Mon, 19 Apr 2021 14:01:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTG-000600-C5; Mon, 19 Apr 2021 14:01:50 +0000
Received: by outflank-mailman (input) for mailman id 112931;
 Mon, 19 Apr 2021 14:01:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYUTF-0005yZ-Du
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:01:49 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 98467370-7f61-41ad-84a3-b50c4d4368dc;
 Mon, 19 Apr 2021 14:01: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: 98467370-7f61-41ad-84a3-b50c4d4368dc
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618840908;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=u9A8Xbp2f28xpiyEql1FXS9QDyMZHqIW8dHroVxEQz0=;
  b=damj74y7thsnEtJgAqNQsH7qvba371RodFW5o/h4CozHQDXSOT3Gb4+n
   WteTk3aS4KWEquTli3301epwJQTUxy3XPi2KI3yVnRSGG6qJfSh+bumh9
   EaHZ13HnvqwKwH0FeTjQ2kp0An+DLxfdi/x3jIGkSr7yZTmFrP0xDNuci
   A=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 9dLxGOaIsnB66Fuzg95ph/S9+suSyg6IWMg+z9hhurXGdoZA5tb3pUkQGGadGtQyIqHDplGWwY
 aJ1/XU0bwious1VjmOyp+YBy6PF+VAIbBtt0OtKuCAGqcH/br8zyTuqIReMFLee4fTHtjBwCSP
 4OWoy7wOC8ksgqyluh4Hjh2LKdtXFEux4H1aMrA59k4hkJlp6LTJWby5wv2SMD8RFujrULqmpQ
 BzNP/37eL4OdmULPuRYn/BR3Hq5iYK4MBslA8oGjtOOZL5LVZ67heT6c60m2h5ygNTlFds2KQB
 X/E=
X-SBRS: 5.1
X-MesageID: 42271885
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HRN7aaCJLywv6UHlHekp55DYdL4zR+YMi2QD/WoZc3JoW+afkN
 2jm+le6AT9jywfVGpltdeLPqSBRn20z+8N3aA6O7C+UA76/Fa5NY0K1/qF/xTMEzDzn9Q86Y
 5OaK57YeedMXFbioLA7BC8A5IcxrC8gcWVrMP/61socg1wcaFn6G5Ce2GmO2l7XhNPC5Z8NL
 f03LslmxOadX4abtu2CxA+NoCpzbD2vanrbhIcCxks5BPmt0LN1JfAHwWFxRBbajtTwN4ZgB
 D4ujbk7aauuezT8H7h/lLUhq44pPLRjv9KBMmBkaEuW1fRtjo=
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="42271885"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 2/7] x86/shim: Fix compilation at -Og
Date: Mon, 19 Apr 2021 15:01:27 +0100
Message-ID: <20210419140132.16909-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210419140132.16909-1-andrew.cooper3@citrix.com>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

When compiling at -Og:

  shim.c: In function ‘write_start_info’:
  shim.c:288:22: error: ‘param’ may be used uninitialized in this function[-Werror=maybe-uninitialized]
       si->store_evtchn = param;
       ~~~~~~~~~~~~~~~~~^~~~~~~

and a slew of knock-on failures.  All are caused by
xen_hypercall_hvm_get_param(), and presumably insufficient analysis to observe
that *value is always written on the ret=0 path.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/pv/shim.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/pv/shim.c b/xen/arch/x86/pv/shim.c
index d16c0048c0..a05aaa7bcc 100644
--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -282,7 +282,7 @@ static void write_start_info(struct domain *d)
     struct cpu_user_regs *regs = guest_cpu_user_regs();
     start_info_t *si = map_domain_page(_mfn(is_pv_32bit_domain(d) ? regs->edx
                                                                   : regs->rdx));
-    uint64_t param;
+    uint64_t param = 0;
 
     snprintf(si->magic, sizeof(si->magic), "xen-3.0-x86_%s",
              is_pv_32bit_domain(d) ? "32p" : "64");
@@ -311,8 +311,8 @@ int pv_shim_shutdown(uint8_t reason)
     struct domain *d = current->domain;
     struct vcpu *v;
     unsigned int i;
-    uint64_t old_store_pfn, old_console_pfn = 0, store_pfn, console_pfn;
-    uint64_t store_evtchn, console_evtchn;
+    uint64_t old_store_pfn = 0, old_console_pfn = 0, store_pfn = 0, console_pfn = 0;
+    uint64_t store_evtchn = 0, console_evtchn = 0;
     long rc;
 
     if ( reason != SHUTDOWN_suspend )
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:01:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:01:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112930.215280 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTC-0005yl-60; Mon, 19 Apr 2021 14:01:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112930.215280; Mon, 19 Apr 2021 14:01: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 1lYUTC-0005ye-2j; Mon, 19 Apr 2021 14:01:46 +0000
Received: by outflank-mailman (input) for mailman id 112930;
 Mon, 19 Apr 2021 14:01:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYUTA-0005yZ-Ji
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:01:44 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 225eb134-52f5-4e19-af05-b938bc818daf;
 Mon, 19 Apr 2021 14:01: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: 225eb134-52f5-4e19-af05-b938bc818daf
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618840903;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=hcLgQnEv5YmedkPX8SbOT7ZGxyV1UCkJYZPD9Rw+m9g=;
  b=c2bizUnp9I5wGUjuP8s5/uyZPMrrS6uPF/m+LaLfp3YSxKQTswehNfy1
   B/LyuzIiBf4ErvFHny0iBaFHv1lRwkRJqlR6M/00sgRWATfn9v1C24TKI
   VUfwzI/UHMQNbuWvayEEEAOixH0zn8FjEylce1XuSzCmCqeNJ/j7j/NrP
   4=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: om/z81jF28FP3gxWxSZ+xEi5v7Shp1AbS7DkTVM3TYfsjotMHqzlrs8dMSr/86rbZ+L/3CChf8
 N4OJF2JbUKYC+EQ93hyNK/yjKTlqOE4ZujxtKjVuq+AyiQtbq4HU9mJtGD3hQtkWlLVDpQmhs6
 Jy6aLYwn7tGMcu8URxqjgPeBsO+yi970oBusAsNZ6DqVP/Mzh/5yla2pG+az5T0+FxcGz1GGDW
 xd09XOwUvGF+JnZ7qETjpE5Gy+vY6whVekEKNT83+U1LaxnaOfbGoydgPTdmiPWlNb/bObB7oY
 gmY=
X-SBRS: 5.1
X-MesageID: 42017027
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:5vWkZ6EsrGgLMSGBpLqEDseALOonbusQ8zAX/mpaICY1TuWzkc
 eykPMHkSLugDEKV3063fyGMq+MQXTTnKQFh7U5F7GkQQXgpS+UPJhvhLGSpAHINiXi+odmpM
 RdWodkDtmYNzdHpOLbxCX9LNo62tmA98mT9IPj5lNgVxtjZa0lzyoRMHf4LmRMSANLBYU0Gf
 Onj6ItzVfNRV0tYtmmHX5AZuDfprTw5evbSCQbDB0q4hTmt1OVwYP9eiL34j4uFxdGwbIv6g
 H+4mnE2pk=
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="42017027"
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>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Juergen Gross <jgross@suse.com>, Tim Deegan
	<tim@xen.org>
Subject: [PATCH 0/7] xen: Switch to using -Og for debug builds
Date: Mon, 19 Apr 2021 15:01:25 +0100
Message-ID: <20210419140132.16909-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

As with the toolstack side, we ought to use -Og for debug builds.

All fixes are trivial.  The first 3 are understandable, given reduced
optimisations.  The next 3 are, AFAICT, bogus diagnostics.

Andrew Cooper (7):
  xen/arm: Make make_cpus_node() compile at -Og
  x86/shim: Fix compilation at -Og
  x86/sysctl: Make arch_do_sysctl() compile at -Og
  x86/irq: Make create_irq() compile at -Og
  xen/efi: Make efi_start() compile at -Og
  x86/shadow: Make _shadow_prealloc() compile at -Og
  xen: Use -Og for debug builds when available

 xen/Makefile                    | 4 +++-
 xen/arch/arm/domain_build.c     | 2 +-
 xen/arch/x86/irq.c              | 2 +-
 xen/arch/x86/mm/shadow/common.c | 2 +-
 xen/arch/x86/pv/shim.c          | 6 +++---
 xen/arch/x86/sysctl.c           | 4 ++--
 xen/common/efi/boot.c           | 2 +-
 7 files changed, 12 insertions(+), 10 deletions(-)

-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:01:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:01:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112932.215304 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTI-00062Q-P4; Mon, 19 Apr 2021 14:01:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112932.215304; Mon, 19 Apr 2021 14:01:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTI-00062H-LC; Mon, 19 Apr 2021 14:01:52 +0000
Received: by outflank-mailman (input) for mailman id 112932;
 Mon, 19 Apr 2021 14:01:51 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYUTH-00061N-Ga
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:01:51 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ecb8b980-4f33-41e0-a0f6-492d4d5acdf7;
 Mon, 19 Apr 2021 14:01: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: ecb8b980-4f33-41e0-a0f6-492d4d5acdf7
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618840909;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=TA5ZKAuUwi4CHsYgJ25Kg8HIPW9/JmPHtVST3zPieb0=;
  b=cDQ75ETNDtCEjGA/sxnJFDdZxJPCtjwZp16m6/C1FAU9obRRxsDPfzgF
   /dNHaW70bpSu+iw1v+Qev1MzzcwDtnnCJx8QqXdb50tQ05VsdQO+lAFXJ
   J/aoc9++NPMReO/XYUytwMj2/YMsRUmKkbBvz2iCkCM1XcN8EIe2WESDc
   8=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: nKAw0paORZWMn2xzxBZJ2gUU4K0T24s3gCftZ+WLUFp7Wc7pFBsBftdOgcZEd9J0sgnBF31DiR
 SSIyoOJ4OQ/xIwm/ShX4wGAFGRFnhtH2svdemK1CK9cBWQqxtrFhKq5waGiPTf81k3ZyfsRusH
 EIm0FKVkByrusRU7vH4wKhyEvIbfkP5GP8E6AgC6NUMO2JYXfGKoGsJPYDiIHPin0YZFvMHqjO
 AC/ApiRRfIvXlLFENcv6m5ExEpvGhVW4r2ZbKikcRreLDiilHvpK33F4BQbYJ1NZaXLavKNV6D
 E5s=
X-SBRS: 5.1
X-MesageID: 41892058
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Rd5jdKopNcXHAQ2UlMnTX4YaV5u6KtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQZ3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIRg/I
 9aWexFBNX0ZGIQse/T6gO1Cstl5dGB/ryhi+u29QYUcShBbaZ84wBlTiOSFUNrTAdLbKBJb6
 a0zMxBujamZDArft22b0N1FNTriv/qsNbdYRAADwM68wXmt1+VwZPzDhTw5GZ7bxph2rEnmF
 KlryXY4eGZv+i/2lvg0Qbonu1rsf/A7vcGO8CWkMgSLVzX+0yVTaBsQaeLsjxwgMzH0idMrP
 D2rx0tP9t+5hrqFwnbzyfF4AXu3C0j7HXv0zaj8B3eiPbkTzE3Adcpv/M7TjLl6lEttNw58K
 VH03PxjeszMTr8nT/w79WNahdylkDcmwtBrccviRVkMbc2Wft0l8gy7UlVGJAPEGbR84Y8Ct
 RjC8na+bJ/bU6aR2qxhBgi/PWcGlAIWjuWSEkLvcKYlxJMmmpi8kcezMsD2l8d6ZMGTYVe7e
 isCNUmqJh+CustKY5tDuYIRsW6TkbXRwjXDW6UKVP7UIYKJmzKsJyyxLku/umldNgpwfIJ6d
 r8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwb6IN+vrH6Wbr3ISyOQF0jiKKb0rUiK/yef8
 z2FINdAvflI2erM51OxRfCV55bLmRbUMB9gKd5Z3u+5ubwbqH6vO3Sd/jeYJD3Fyw/Z2/5Cn
 wfGDz6JMBK6FG3Smb16SKhGU/FSwjax9ZdAaLa9+8cxMwmLYtXqDUYjly/+4WMMj1Nsqs/eU
 NkO7P5mqanpW27lFy4rllBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCRPxnedPwR+SMnXCQ
 ZboFxy9cuMXtmt7BFnL+jiHnORjnMVqn7PcowVnbeb49z5PrkiCIw9ZaB3HQLXNhB8lApwsl
 1fYAscSkK3LEKrtYyVyLgvQMDWbZ1VnRqiK888kwOkiWys4eUUAkY9cxHre8iNmgoqTydTnT
 RKgtIiqYvFvy2uJ2s5iPk/K3tWZg2scf97JQyYeYRZna3qcglsTWGMwSeXkQ03Z3CCzTRvuk
 XxaSKTYv3FGVxbpzRR1bvr6kp9ciGHc1t3cW0Si/wKKU3W/nJy2/SMfKy9zi+YbUYD2PgUNF
 j+EE8vCxIrw9C8zxiOnjmeUX0g25U1J+TYSLAuaava1H/oKIqGk8g9bohp1YcgMNDlqekQV+
 2DPweTMTPjEussnxWPuWxNAlgGlFA01ffznBH15mmx23AyRfLUPVR9XrkeZ9WR9XLtSfqE2I
 hw5OhF9NeYIyH0cJqL2KvXZzlMJlfIrWm6Q/ohpJpUsagx3YEDaqXzQH/NzjVKzR8+JMD7mA
 cCW6x9+qnGIZIqcMoIeS5Vl2BZ3OinPQ8uqEjxDeA/d1120COeMNON/rbSqb0gRkeGvxD9PF
 GD8ytbu/fJNhHzpIIyGuY1OyBRbkN59XFpuOWFfIfUAB+xd+5C8EGhW0XNAoN1WeyAA/EIsh
 1+49uUhOeZeCrzxRDIsVJAU9xz2nfiRdn3HRmFFuFJ+cGrIFiAgqOl58iokTf8IAHLG3gwlM
 lCbkwfbsNKlzkkgsk2y0GJO9PKnn4=
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="41892058"
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>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Juergen Gross <jgross@suse.com>
Subject: [PATCH 7/7] xen: Use -Og for debug builds when available
Date: Mon, 19 Apr 2021 15:01:32 +0100
Message-ID: <20210419140132.16909-8-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210419140132.16909-1-andrew.cooper3@citrix.com>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

The recommended optimisation level for debugging is -Og, and is what tools
such as gdb prefer.  In practice, it equates to -01 with a few specific
optimisations turned off.

While the use of gdb isn't necessarily very helpful for Xen, the disassembly
will have fewer structural transformations vs C, and therefore will be easier
to follow.

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: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>
CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
CC: Juergen Gross <jgross@suse.com>

Successful CI runs:
  https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/287769787
  https://cirrus-ci.com/build/5086280275984384
---
 xen/Makefile | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/xen/Makefile b/xen/Makefile
index 9f3be7766d..128de93f5e 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -195,7 +195,9 @@ include/config/%.conf include/config/%.conf.cmd: $(KCONFIG_CONFIG)
 	$(MAKE) $(kconfig) syncconfig
 
 ifeq ($(CONFIG_DEBUG),y)
-CFLAGS += -O1
+# Use -Og if available, -O1 otherwise
+dbg_opt_level := $(call cc-option,$(CC),-Og,-O1)
+CFLAGS += $(dbg_opt_level)
 else
 CFLAGS += -O2
 endif
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:01:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:01:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112933.215315 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTM-00065Z-1V; Mon, 19 Apr 2021 14:01:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112933.215315; Mon, 19 Apr 2021 14:01: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 1lYUTL-00065S-UN; Mon, 19 Apr 2021 14:01:55 +0000
Received: by outflank-mailman (input) for mailman id 112933;
 Mon, 19 Apr 2021 14:01:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYUTK-0005yZ-EA
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:01:54 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f6bedd42-5dc3-48a5-932f-a3843df327d4;
 Mon, 19 Apr 2021 14:01: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: f6bedd42-5dc3-48a5-932f-a3843df327d4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618840910;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version;
  bh=c90n3UWvZdBwaNrzfvCy7mTTendEDQlhzxhGFVDknR8=;
  b=MPL87x1DMhqWgltjz6XXLEN57+nhEy/dzRd8XG/s6Mlg6Wgu7oYd67Yr
   ca1fyD+hOCUj8U+vqwN/PSEudkbFhqEJP1WgVBz9h92H17wOb311axzgk
   HwUY8tLkPntmvyWgtX9/cfhC4X4gMrCZEGiueIVwELFq30JnPLsHS28zU
   A=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: iXgvNWFjzftq9wYGBW4oTykAuHznRLeVbKnWNBvkEotkRAa7LkhsKGKva+s+305aXAaJlabshm
 IU6D7u32Pb1HhvtT+UTsSrSAzHa16UmyUZJPPZ6EOMkH5+3NDLV+chuPzdfdkqfM+MRsW1/YZG
 yFcpbkZBFGHNMTZ6qWKBb8MXY9cYJZa3AaeAKTXaODDerlNxzTyZ+c1OlNBBirJTul8AD60g/a
 LKPt4G4z+3Cx034+kv1/cQdG+0JXkbt+pAB+j3ApuJfX8pqQtmxmf+Zy8HPPxXMLRi1q4qrngx
 TYQ=
X-SBRS: 5.1
X-MesageID: 41885044
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Ye+oyarXkTvSLtWJtdAfZY8aV5qzeYIsi2QD101hICF9WObwra
 GTtd4c0gL5jytUZWE4lbm7SdG9aF7V6JId2/hzAZ6MRw/j0VHGEKhD6s/YzyTkC2nC8IdmpM
 NdWoxfLPG1MlRgl8b952CDYq8d6f2K6rqhi+ub71oFd3AJV4ha4w10ChmWHyRNLWEsb/dUKL
 Om6sVKvDamc3gMB/7LYUUtZOTfu8bN0KvvfB9uPW9A1CC1kTiq5LTmeiL54j4iVVp0r4sKwC
 zgmwz96r7LiYDf9iPh
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="41885044"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: [PATCH 1/7] xen/arm: Make make_cpus_node() compile at -Og
Date: Mon, 19 Apr 2021 15:01:26 +0100
Message-ID: <20210419140132.16909-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210419140132.16909-1-andrew.cooper3@citrix.com>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain

When compiling at -Og:

  domain_build.c: In function 'make_cpus_node':
  domain_build.c:926:12: error: 'clock_valid' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    926 |         if ( clock_valid )
        |            ^

The compiler hasn't spotted that clock_valid is always initialised after the
"if ( !compatible )" check.  Initialise clock_valid to false.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>
CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
---
 xen/arch/arm/domain_build.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index b1d7b9849f..b10f5c8f85 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -831,7 +831,7 @@ static int __init make_cpus_node(const struct domain *d, void *fdt)
     /* Placeholder for cpu@ + a 32-bit hexadecimal number + \0 */
     char buf[13];
     u32 clock_frequency;
-    bool clock_valid;
+    bool clock_valid = false;
     uint64_t mpidr_aff;
 
     dt_dprintk("Create cpus node\n");
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:01:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:01:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112934.215328 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTO-00068V-BA; Mon, 19 Apr 2021 14:01:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112934.215328; Mon, 19 Apr 2021 14:01:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTO-00068L-7g; Mon, 19 Apr 2021 14:01:58 +0000
Received: by outflank-mailman (input) for mailman id 112934;
 Mon, 19 Apr 2021 14:01:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYUTM-00061N-7t
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:01:56 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3d8c9cff-9d38-4858-b45b-5293e1ff64da;
 Mon, 19 Apr 2021 14:01: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: 3d8c9cff-9d38-4858-b45b-5293e1ff64da
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618840911;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version;
  bh=WbuAM+uwsh6c1saV41wYeADSZOzR/5RKAn88if8bPyM=;
  b=A8pT1l5vjedITgUCkmCs9lPQ4pVvKscfCeN/F2Ve4eRuD7lrqco60qae
   hDxc4njU+pwSf3JbF29KVzQlredxfGcGCcN0rCHZcfgaltrh1iuDzsbsO
   fhb1sCQBNUD7gIrf6YtJ11JtXLKnasLnbKQUjMvHEH3AAJonmMbgVuooM
   I=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: P6yr2jg8xyhDuopW+En6ofy7BsjwOLPEi/Ca3SB/Td7eg3ZR5tda6w7jBiEIQJOYR72MSpS4Dt
 7nqi6xygM0kS6eqqRCjGgcPgLKUiGMevz9omQE4ZagNdRcUL6U0u/cZJFSbbXNXxKXU8GmGjPb
 CBZIFcJhvgLoub85fN79EewHu6uMkCWxV11uwWrLYJcz+qbgJo1NAwb6J4cATgihCjEm0L8cNP
 bsWmSemPxSINgi443qDy5TPpCk0NXXviH+Vg8gmrxC37em49CfsjhwbF43d8WqCCyxmhCoo/Yi
 laM=
X-SBRS: 5.1
X-MesageID: 41892062
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:0KAQoKB9VSieYVLlHeh+sceALOonbusQ8zAX/mhsVB1YddGZnc
 iynPIdkST5kioVRWtIo729EYOLKEm9ybde544NMbC+GDT3oWfAFvAH0aLO4R3FXxf/+OlUyL
 t6f8FFYuHYIFBmga/BjzWQPM0nxLC8npyAocf74zNTQRpxa6dmhj0JbzqzNkFtXgFJCd4YOf
 Onl6l6jgGtc3gWcci3b0NtN4T+jubGiY78Zlo+DwMngTPksRqT9LX4HxKEty1uMQ9n/LFKyw
 n4uj283IqPmbWRyhjQ12jchq4m5efJ+594K+GnzuQQIjXooA60aIpmQK3qhkFInMifrGwEvf
 OJjxA8P9liy365RBDLnTLdnzPO/Rxry3j+xUSWiXHuyPaJOg4SOo56qq9yNj76gnBQ2+1U4e
 Zw8E+y86dzN1fmmh/w4tDZPisa7XackD4ZvsM4y0BEXZB2Us42kaUvuHl7Pb0nByzA5IUuAI
 BVfbvhzccTS1+cYnzD11MfueCEbzA2FheCdEAIptaY5ThQhGx41EsV3qUk7w89yK4=
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="41892062"
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>
Subject: [PATCH 5/7] xen/efi: Make efi_start() compile at -Og
Date: Mon, 19 Apr 2021 15:01:30 +0100
Message-ID: <20210419140132.16909-6-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210419140132.16909-1-andrew.cooper3@citrix.com>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain

When compiling at -Og:

  boot.c: In function 'efi_start':
  boot.c:1339:9: error: 'argc' may be used uninitialized in this function [-Werror=maybe-uninitialized]
   1339 |         efi_arch_handle_cmdline(argc ? *argv : NULL, options, name.s);
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

although this appears to be limited to the ARM build only.  It also seems to
be bogus, because it is immediately preceding by a read of argc which doesn't
yield a diagnostic.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
---
 xen/common/efi/boot.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 63e289ab85..f1e7a5267c 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -1126,7 +1126,7 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
     static EFI_GUID __initdata shim_lock_guid = SHIM_LOCK_PROTOCOL_GUID;
     EFI_LOADED_IMAGE *loaded_image;
     EFI_STATUS status;
-    unsigned int i, argc;
+    unsigned int i, argc = 0;
     CHAR16 **argv, *file_name, *cfg_file_name = NULL, *options = NULL;
     UINTN gop_mode = ~0;
     EFI_SHIM_LOCK_PROTOCOL *shim_lock;
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:02:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:02:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112935.215340 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTQ-0006Bb-L4; Mon, 19 Apr 2021 14:02:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112935.215340; Mon, 19 Apr 2021 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 1lYUTQ-0006BS-Hh; Mon, 19 Apr 2021 14:02:00 +0000
Received: by outflank-mailman (input) for mailman id 112935;
 Mon, 19 Apr 2021 14:01:59 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYUTP-0005yZ-EP
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:01:59 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1a82269e-fe70-47a8-9879-c76ff1e105b8;
 Mon, 19 Apr 2021 14: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: 1a82269e-fe70-47a8-9879-c76ff1e105b8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618840914;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=6BUv+N6okA8eie29SW3frkmwZ8F2KRqBim4h2q/ANWM=;
  b=GeVz/Jgr1jzbMApAonIcLm1STwz1KWUlgDq42uy7M5D/C8j0DlGKJtVX
   S05y4G7ekjxcj9zX5qK/BgCb27ZyrO1AUXScdpaKmqqKPdWXzHd8eTICh
   HQiUzvx0P44/dbokgHmAne74xL2bLfxV65xDhry5RjPxrDH3w0+Dqr+cm
   A=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 2gZqkBYH1WeWqjKj9X9QFQDsCYxJLRAsGlWbdyIOlKNIXNu7DPePxXjniCpR4YIUoXnja2wAfv
 Jhskh1lGM37FwZPP+EUkGDJ7zy5VJMKFwwEneXji6w/KYrdnA+bhuCwYN6I4ZdGF9ddJLigRLJ
 +PH8GI+FMk8wv7u3MCCaA237dF9bJ2WCye1l3flV1Wnctzh7h/6MExASKBSqPTE7n9XxeZ2jxo
 t8+9AQZK8z4G+vpOo/8lhibZTPV0chl6qF9J3oz2K6Vi/+5cYHf66jBHaBexhSyRzYxDus12KK
 nsk=
X-SBRS: 5.1
X-MesageID: 42271924
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:JzmgOqEN8ZxqED95pLqFP5HXdLJzesId70hD6mlaTxtJfsuE0/
 2/hfhz726ItB89UGwt8OrhBICuWnXZnKQZ3aAwOvOYUBDiqC+UKuhZnO7f6hnBPwG7yeJHz6
 dndMFFeaHNJHx3l9zz7gX9M/tI+qjlzImSie3Tz2hgQGhRAskKhTtRMQqVHlZ7QwNLH/MCZf
 ihz/BarDmtc2l/VKuGL0QFROTKqpnqk5/rcHc9ZiIP1QiUgTukrIP9ChiTty1xbxpzx94ZnV
 TtokjQ+rik98q20Abb0HXeq65LgcL7xsFYbfb87fQ9G3HJsEKFdY5hU7qNsHQUp+qo+RIQjN
 zBuVMEOcJrgkmhGF2dkF/I4U3A2Cxrw2L+wVWY6EGTxfDRdXYfMY59oq53NjHe8FEtudlg1r
 kj5RPhi7NeEQ7H2D7g7NzJSgxnmyOP0AEfuP9Wi2YaXZoVabdXo4Ba8k9THIwJAS72rIQqCv
 NnAs2Z/vBLalmXBkqpxFVH0ZipRDA+Dx2GSk8NtoiN2yNbm208y0cD3sQQkjMB+fsGOuF529
 g=
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="42271924"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 4/7] x86/irq: Make create_irq() compile at -Og
Date: Mon, 19 Apr 2021 15:01:29 +0100
Message-ID: <20210419140132.16909-5-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210419140132.16909-1-andrew.cooper3@citrix.com>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

When compiling at -Og:

  irq.c: In function ‘create_irq’:
  irq.c:310:38: error: ‘desc’ may be used uninitialized in this function[-Werror=maybe-uninitialized]
               desc->arch.creator_domid = currd->domain_id;
               ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~

This diagnostic is bogus, because desc is already read on earlier paths.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/irq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index a1693f92dd..72b86c6155 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -264,7 +264,7 @@ void __init clear_irq_vector(int irq)
 int create_irq(nodeid_t node, bool grant_access)
 {
     int irq, ret;
-    struct irq_desc *desc;
+    struct irq_desc *desc = NULL;
 
     for (irq = nr_irqs_gsi; irq < nr_irqs; irq++)
     {
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:02:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:02:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112936.215352 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTS-0006FW-Vb; Mon, 19 Apr 2021 14:02:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112936.215352; Mon, 19 Apr 2021 14: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 1lYUTS-0006FK-S2; Mon, 19 Apr 2021 14:02:02 +0000
Received: by outflank-mailman (input) for mailman id 112936;
 Mon, 19 Apr 2021 14:02:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYUTR-00061N-8E
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:02:01 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 665d3f7c-ab3f-4023-ab3e-e0dc9239117f;
 Mon, 19 Apr 2021 14:01: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: 665d3f7c-ab3f-4023-ab3e-e0dc9239117f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618840911;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=1jko2KVCpjzrndGXx0YAEFP0pnOv6quT6EsQagA40cw=;
  b=AHNLTHPdaI0BZhchszAI9lV3MSwZnS1EHxVEMnuKJ1dbjjVOjtDe13xN
   KVGH7CR/b06qQHkvbScwNhkRNNzCb/K3ck14hpyd0VUCctHMwPBuCCQvt
   BhBTpAdAlXyJtNBNlGeDM4TZpetbBL0X5YBtd+WHgw8reWjFJflqSTy/W
   c=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 4dw8FPQQdflBDRcafRhL0AdCLPex3/yZ9EWa56O9Ip9Lx67CF9Puw1pAF6geEP8bZYpRBLFagD
 EsRqPZHTaZGt0poXjK79QmTWY611BSqyBKPxwQVNz00N4ZC8TbwXPtKvXLJdQYaOAJdq1c3w2N
 BdUSskXTOvp9ormIvJY2RFppqJZko8MdrmOghVKlRYu90jU/QufkCWG05Tig5pCsCeymO9MLfR
 Ga34BGL+ZeB+xtr2nmbtAsVPFsn/6VEVal/O1nTKxjq1Ake/zQQSUpDPPEKY743ab6EOGIvHpf
 +VI=
X-SBRS: 5.1
X-MesageID: 41892066
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:t6oF1qgSpEjUF7F8VFLowa1vMHBQXwh13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy4N5B9efdSPhv3alK5wn0Jv6z1TbaknD38N+9Y
 MlSahxD9XsEUN35PyR3CCUG8stqePpzImGnuHbpk0CcShPS4VNqzh0ERyaFEoefngiObMcGI
 CH7sRK4xqMEE5nDfiTPXUOU+jdq9CjrvuPDSIuPBI79BKIyQqh9b+SKXOl9y0DWDBCy6pKyx
 mmryXF4MyY0s2T+1vn+EL4q79Xn9bgzdUrPr3wtuElbg/CpyztSIBoW7iptC04rue1+D8R4a
 XxiiZlBetfwTf8eXy0vAvM1mDboUkTwk6n83C0qz/CptH0Xz0zAcYpv/MmTjLpr3AOkfs59Y
 Aj5RP/i7NnSSnusQ642v3zEzZtrUawqWpKq59ps1VvFbEwRZUUkZYS5ypuYfE9NRO/0q8LOs
 90AvrR4f5HGGnqFUzxjy1UzNugUm9bJGb+fmEy/sic0z1hlHtk1UcvxMsGgnca9J4mIqM0n9
 j5Dg==
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="41892066"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Tim Deegan <tim@xen.org>, "Jan
 Beulich" <JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 6/7] x86/shadow: Make _shadow_prealloc() compile at -Og
Date: Mon, 19 Apr 2021 15:01:31 +0100
Message-ID: <20210419140132.16909-7-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210419140132.16909-1-andrew.cooper3@citrix.com>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

When compiling at -Og:

  In file included from
  /builds/xen-project/people/andyhhp/xen/xen/include/asm/domain.h:4:0,
                   from /builds/xen-project/people/andyhhp/xen/xen/include/xen/domain.h:8,
                   from /builds/xen-project/people/andyhhp/xen/xen/include/xen/sched.h:11,
                   from /builds/xen-project/people/andyhhp/xen/xen/include/xen/ioreq.h:22,
                   from common.c:23:
  common.c: In function '_shadow_prealloc':
  /builds/xen-project/people/andyhhp/xen/xen/include/xen/mm.h:252:55: error: 't' may be used uninitialized in this function [-Werror=maybe-uninitialized]
       return page != head->next ? pdx_to_page(page->list.prev) : NULL;
                                                         ^
  common.c:933:28: note: 't' was declared here
       struct page_info *sp, *t;
                              ^

I'm not certain the analysis is correct.  't' is a temporary variable, and is
clearly initialised before use in foreach_pinned_shadow().  Either way,
initialising it to NULL placates the compiler.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Tim Deegan <tim@xen.org>
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/mm/shadow/common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/mm/shadow/common.c b/xen/arch/x86/mm/shadow/common.c
index b99ca14e71..737e6b365a 100644
--- a/xen/arch/x86/mm/shadow/common.c
+++ b/xen/arch/x86/mm/shadow/common.c
@@ -931,7 +931,7 @@ static inline void trace_shadow_prealloc_unpin(struct domain *d, mfn_t smfn)
 static void _shadow_prealloc(struct domain *d, unsigned int pages)
 {
     struct vcpu *v;
-    struct page_info *sp, *t;
+    struct page_info *sp, *t = NULL;
     mfn_t smfn;
     int i;
 
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:02:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:02:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112938.215364 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUTe-0006S3-G8; Mon, 19 Apr 2021 14:02:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112938.215364; Mon, 19 Apr 2021 14:02: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 1lYUTe-0006Rv-CA; Mon, 19 Apr 2021 14:02:14 +0000
Received: by outflank-mailman (input) for mailman id 112938;
 Mon, 19 Apr 2021 14:02:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYUTc-0006QM-Bo
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:02:12 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b13ecffd-e884-429d-bb22-b875312286bf;
 Mon, 19 Apr 2021 14:02: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: b13ecffd-e884-429d-bb22-b875312286bf
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618840931;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=u6xZF4AS6Juh0CnMhBXmEKwxg8OoZ/J9DOH4kfOLJfA=;
  b=c53hk5+W4kVJ8d4ZUrD7cWHx8i8edF5z4sXmuXo4rGBz++MYLy+RwJn5
   Y/ZI8lIix7D9I9dsdVoGpqG8gXotvRLIofGryHP+YGj2bSNs1snLhD6iu
   XfF4SkKCv2lO4X209PSgpO5PDdQoNbNqSJc5YWv9v3YfFEnzIqx2aMmyq
   8=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: NU+hIBYOJW1NTGbSS7SOmO7OVY1i25GCM83QCTxO9ZPCfx8JHafeLE4RGDGTRu8x/LCCSx629+
 oAxidGLERL13DGoEsuDuWD4s6YDieuMHtsrGSFtAj9iTeRSboSq7AKde4UNaC42Kqy7Vh5zg/5
 qAQ11u/sPWlf1rKj3dPp612g1TRUYn62DsTxrxNUmpX77ZZKRjKorgXexZsuw5oL7mLfpMvBDH
 2p+q4KfJPf6HvfTC1+D7vm+LCTK//C7ZgDfMvM47e1MRcwD8sXULqx7s4CHveQ5MZfrLrvFUZG
 4sE=
X-SBRS: 5.1
X-MesageID: 42017041
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HA/5Oativ8mr/VQn9PmpCrD17skD89V00zAX/kB9WHVpW+az/v
 rBoN0w0xjohDENHEw6kdebN6WaBV/a/5h54Y4eVI3SJTXOkm2uMY1k8M/e0yTtcheOkNJ1+K
 98f8FFaOHYIkN9ia/BjDWQM9Fl+9Wf9bDtuOG29QYJcShPS4VNqzh0ERyaFEoefnggObMcGI
 CH7sRK4xqMEE5nDfiTPXUOU+jdq9CjrvuPCnRqOzcd5AaDlj+u4rLheiLouis2aD9T3awktV
 HMjg2R3NTaj9iA1hTe22XPhq42pPLdzLJ4a/Cku4wwIjXohh3AXvUCZ4G/
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="42017041"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 3/7] x86/sysctl: Make arch_do_sysctl() compile at -Og
Date: Mon, 19 Apr 2021 15:01:28 +0100
Message-ID: <20210419140132.16909-4-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210419140132.16909-1-andrew.cooper3@citrix.com>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

When compiling at -Og:

  sysctl.c: In function ‘arch_do_sysctl’:
  sysctl.c:197:19: error: ‘hcpu’ may be used uninitialized in this function[-Werror=maybe-uninitialized]
               ret = continue_hypercall_on_cpu(0, fn, hcpu);
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  sysctl.c: In function ‘arch_do_sysctl’:
  sysctl.c:197:19: error: ‘fn’ may be used uninitialized in this function[-Werror=maybe-uninitialized]
               ret = continue_hypercall_on_cpu(0, fn, hcpu);
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

These look to be caused by insufficient analysis around the !ret conditionals.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/sysctl.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/sysctl.c b/xen/arch/x86/sysctl.c
index aff52a13f3..6ac09bac79 100644
--- a/xen/arch/x86/sysctl.c
+++ b/xen/arch/x86/sysctl.c
@@ -150,8 +150,8 @@ 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 *);
-        void *hcpu;
+        long (*fn)(void *) = NULL;
+        void *hcpu = NULL;
 
         switch ( op )
         {
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:13:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:13:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.112997.215376 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUeJ-0007pT-LL; Mon, 19 Apr 2021 14:13:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 112997.215376; Mon, 19 Apr 2021 14:13:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYUeJ-0007pG-GQ; Mon, 19 Apr 2021 14:13:15 +0000
Received: by outflank-mailman (input) for mailman id 112997;
 Mon, 19 Apr 2021 14:13:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UO6R=JQ=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lYUeI-0007oW-Ks
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:13:14 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.7.55]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 35401092-0d09-4897-9b1b-8119f9b8f723;
 Mon, 19 Apr 2021 14:13:12 +0000 (UTC)
Received: from DU2PR04CA0090.eurprd04.prod.outlook.com (2603:10a6:10:232::35)
 by DBBPR08MB6218.eurprd08.prod.outlook.com (2603:10a6:10:209::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Mon, 19 Apr
 2021 14:13:10 +0000
Received: from DB5EUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:232:cafe::e0) by DU2PR04CA0090.outlook.office365.com
 (2603:10a6:10:232::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Mon, 19 Apr 2021 14:13:10 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT044.mail.protection.outlook.com (10.152.21.167) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Mon, 19 Apr 2021 14:13:09 +0000
Received: ("Tessian outbound 700fd1fc53d5:v90");
 Mon, 19 Apr 2021 14:13:09 +0000
Received: from c24b3c6c2a24.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B2FFAC11-0175-421C-A124-347A2A5876AE.1; 
 Mon, 19 Apr 2021 14:13:03 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c24b3c6c2a24.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 19 Apr 2021 14:13:03 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR0801MB1869.eurprd08.prod.outlook.com (2603:10a6:800:88::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Mon, 19 Apr
 2021 14:13:00 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4042.024; Mon, 19 Apr 2021
 14:13:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 35401092-0d09-4897-9b1b-8119f9b8f723
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pptalEV3k+fmXr4wxakCQXvd6uX8C5aeE2ux0ApGNTA=;
 b=jrEeP1HQxXglBQ7V/TgWPjk8QSQ1lymqGhZg/szVYo64PIqy3HEMD1REuhzwCbWTczmH9uyajegLxaZ7DOwu2UtwTec9xOU7QWWZPz81Pi5p3tOo8ZjNfvDgbOoUE20nnFj8OpAOf4ntVBNvpgq2/ztC0HfXu7dq63nuDy77rOc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 0f4740b781314c57
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=B4Eu3X5d/2EZ85/+URIfUmnSnDbv//ZYUj4mvr1cpRza/lwz12jZ1XFC/BZwzkpsgYjvFy16u0ipTPHACFDXMV6EB1gr8d2IcPEZjyc+W2IdKVyKsxnqX0kV64SiY8NkCLvfMAi3Pks/QGO5+jty62wB/prHvKqKW4bxXWC3iCpgtDH10LVnwdgPDbSD3nZ3NWj13yiIZoRYJN7iG9Z83htSJMmIM4O02tjNgKyazX8Igq9vOePD5tuxFOnEHK2irmGF5Zi1UnDl0zQi4E1R39KyPx4ZY5RXFyx0LKZXd8fNoZ5W9zz8feBujNNJaDlgG9acL0tHVUJfqrIqfVetiw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pptalEV3k+fmXr4wxakCQXvd6uX8C5aeE2ux0ApGNTA=;
 b=fQ62jR+nPtJLaH8M06ttKoGp8iFnOz9D/wCAMv76+6oNH1vFPzICuTtP9oC7gkz3LN+yzoGMRNxHAA8M4HLO4V9x0a2IzNZlmLTBh+hhIzuhw4K9WesBG5wf5zIxLjX5MNYK7SRQbQpoVNEsyE5Ef2zXPw74tNhLJq75SsCv+G2kiQZPb+VnCGRxLkpNTwP2NJl6UibwE8YamtGj8nkrxvmkt14QBsxNW0JOMGMIfRg5ETaTgQ+mDfHqNQV2sqzvoXztxDcWrLqYDIwhMI8jyOyyTsU0jMAvrvLQ8eug10ADe/SnbXkMfHTnYLeGOXzldOwEwlqpDSMLa57PLoCkJg==
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=pptalEV3k+fmXr4wxakCQXvd6uX8C5aeE2ux0ApGNTA=;
 b=jrEeP1HQxXglBQ7V/TgWPjk8QSQ1lymqGhZg/szVYo64PIqy3HEMD1REuhzwCbWTczmH9uyajegLxaZ7DOwu2UtwTec9xOU7QWWZPz81Pi5p3tOo8ZjNfvDgbOoUE20nnFj8OpAOf4ntVBNvpgq2/ztC0HfXu7dq63nuDy77rOc=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Julien Grall
	<jgrall@amazon.com>, Stefano Stabellini <sstabellini@kernel.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v4] xen/arm64: Place a speculation barrier following an
 ret instruction
Thread-Topic: [PATCH v4] xen/arm64: Place a speculation barrier following an
 ret instruction
Thread-Index: AQHXNH0siWlslQGzzkGg4Th8zeJ9hKq74zoA
Date: Mon, 19 Apr 2021 14:13:00 +0000
Message-ID: <0433E681-2E59-42B2-88FB-94A56EF2E303@arm.com>
References: <20210418180334.7829-1-julien@xen.org>
In-Reply-To: <20210418180334.7829-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.3654.60.0.2.21)
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: e290eada-e659-4815-165f-08d9033d42b9
x-ms-traffictypediagnostic: VI1PR0801MB1869:|DBBPR08MB6218:
X-Microsoft-Antispam-PRVS:
	<DBBPR08MB621894D2509404FB26E377139D499@DBBPR08MB6218.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 fmPcw4Qd2FfmgWHS/Mra74BoKs7xTBWtfDwJTVWPOr5xiub0FgMUo/g+/sX6luRoSRWZWLWtUdEC/hM6NY4dz2HyWQbLTHYXFkhVs2FGizy2C2Q96ir5UJiiiaNj8nTrGUD1tIqYxMDbcgC1Cj7QIe9iNbNmi0wPMTpfDZp747gYSDShzcw0+NpQ/ovfjfaAuKwHpFlR0F3+3/fcMJHWfrfJuN7CDL/6lEhRLVGPXTafAMolAR0w73ynGOnqx6mnxwxYOH7utu8KOuKPLWe0pGP0enPh4dbI2YI0dmZSIzjbRBX94r2GI6MvxXSu4P3OiI/qIUkEN/CbUt+AkvABPAut61DK6fI4ZKyPVMG9OMnXgbnf4HxsQk2BB4ThKVZkqQvr0Hzd1wz/4nRYoTP+weWWrTfNcUbwsGf170uTMr0du96RB36mcrRkhXJCMBkFSf7wNT5DytrwzX+ljRFDB6lE4QOe72UHa9SsDLvYI2SroTfl1hM6Dlupr//X+Znp26cKRGRWHwGT3X3vgIlyyEy9uvIJn08Cn2W6ggWbUvPtAaVykgOy7XIvE4sX/zeDayHr5dNgeoOerdjpr2zMX8z45bbdzPga1CvuqUUwa7md2Fv/BVefPGSo9mj4pHTYb0ln8Spm63Qydw6v01rTSN0Kok3ygCj6XMB6xtyWy2H+tn3c6m9U38W1kFTbGJmzpRWxZqir2I4MUDsG3cNJN4ErROe5qhq86H/r0EEYDj4k5lFndK1oHuEkoolmJDGXp+0fGT34IHBzJTar4mqv8Q==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(39860400002)(376002)(346002)(396003)(4326008)(6512007)(91956017)(186003)(66476007)(86362001)(71200400001)(26005)(8936002)(76116006)(478600001)(8676002)(6486002)(64756008)(66446008)(6506007)(33656002)(66946007)(122000001)(316002)(53546011)(5660300002)(54906003)(6916009)(83380400001)(66556008)(2906002)(2616005)(36756003)(966005)(38100700002)(21314003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?BriTdPeW/82zvQ+SoxUXFq0EopQ1cty0r5uoHh69UUgEzMdglZk/jnAD2rdu?=
 =?us-ascii?Q?fDF9+a6D4Oaj5zY1CJcMRlxzIVFqkr+He7aMUnk77sgi13XO9pgj2MMn7w4j?=
 =?us-ascii?Q?y6cfcdgAIHOaTx+kK4DBFU9E//OZECmIR1hYnV3h1Lng+sFJ/BXvVuyYcTYq?=
 =?us-ascii?Q?KR7EIBZR3lgmBMN4WrYA8I306TUbodLO+pacnsz1W3eJQHsDxSia51BnTrr2?=
 =?us-ascii?Q?pOHjwVNohNZuzsxtzI3hyBm2YF8c4n77avqEqmp3BXzjtFDuTSJc/WsrshQ+?=
 =?us-ascii?Q?VtzZ3iZdQYR1DixMDros/S7/FcFwItSw+oFFoNkFawsYarZ9CdTg/SmmKqCa?=
 =?us-ascii?Q?2LxWRYhgGii3DKpCREYqPqe63VyPqeOjbiL4p4KM/4YzSv3p3P8UhA+/NaWD?=
 =?us-ascii?Q?HBo0ketCI9rQDMeBB6imGN2gZPPrvrhl6oEWtu5sM1UFreHmpnHCqcIZqOj7?=
 =?us-ascii?Q?pzzYFngtFnRIOMc3BGbwZ07EOwdfvQ8IC5UAkI2bXS+WxQhV6a13Ls7UseoQ?=
 =?us-ascii?Q?GAz2s5m+TKERBbPRaLSguwwpSs6tTkPYlqIhv8dfGqdDjACe6k8KtvzgU++a?=
 =?us-ascii?Q?qJjL8IwltIYgM+//PBp8UMpsnJdeYfhxqvKf1eU51qaH+vM/Wb7iJWo3e5YX?=
 =?us-ascii?Q?UZiKvRfimZLi/+X2AwIibPGw6RU6Er2vO1togklF0BsVdb/GkOiw8BlWblRh?=
 =?us-ascii?Q?r/j9+1TgiO9F/EQ/HdqYm03EduWj46JIni2dzQ1QBBMmnUTi02QLRmK6yJTB?=
 =?us-ascii?Q?d3HWlCJR+VPrN6G87m2YmIsk4YGJ8Xq4c4mS50gzbRYsk8X3NFXeLfsvSzGm?=
 =?us-ascii?Q?XVAnlSpSlXJnjqFTrdahpBJEbDPGdsTgEX4PkwBrdoGSaATA6gjlYWejxzCZ?=
 =?us-ascii?Q?+33MA3a16E9BMh/gLEOTG7YRt27nKkoKUKtrUStgnQy0nt9kURzQfY0JoxLW?=
 =?us-ascii?Q?FQNpsi+aUblirPoyi8DoLVhP5XNnbsKHz5l5C7JCidsn1t4LwJ4ScpJqP30p?=
 =?us-ascii?Q?yQ/ruInPTDwUFa+x+6B7BZtD/IWcEWjJ+2jUIZFImtruvqmzJrHZecgGeJ3+?=
 =?us-ascii?Q?0jNk5f5cZ4YGFrr2Zv6+TydjeHvrVpuTF9f7iG7Lpcsw3jFvk6Khfkenv4bn?=
 =?us-ascii?Q?oTipHIwXAcu+dMyNhUv1/a35z1hH0JVzD51rFuiEUZb12lPkm0RQmeBNrOim?=
 =?us-ascii?Q?hsbY/+OPSIo6hvrehzdJNX2b1dVR0gcr1+s1gYdpvdhvhbjrZVSnT75/gOUP?=
 =?us-ascii?Q?NIpHPVmzLAWORLF3Oefayzn8U4hxeCLpxt/yK9a16KTAuyOwr4MFIULhDSe/?=
 =?us-ascii?Q?SpAf36vkN5qP4P9/fq038mri1/H95uX/TDfdlI2yd+9Jig=3D=3D?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-ID: <D4A61751F6064846B09CC466EB3A2F90@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1869
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	57b2d680-d61e-41a2-33c2-08d9033d3d3f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	URdb2YsWHFzvsys7EiFUz3nsTyP77zA5XROPL4BBL9eBNWPnXeZE2fBdK0A4yuT4rO/GCQ0SVhhUD6iS0YsDsysrCprkZy8nvXrg9XjqNcAUNvOq8QPhib4BQ5KwlzuyjLWzawnbmEE/4QECCLY/m0hTuJ8VfW82hq8wsNPXOmXDnjeIG+0JpXAPsrRsGbClu6if9rWoBr+EShL+R0YaEnPWxSCfI95oDCnD75l56/z9EMOLeJeCQBWv8XVF8rK1K+gUJ5jWTU7ZyAV29F9/XPOk9mOxPXVJLuiARn1VMVXA45DLNVlD/xQSym9rRon70vNNocaDQDOT8G37OQc4GsxKMIAbUpk/vaFG6qlKanxYblGeP2pGl+Vo0i0Lv9ndcYiWPakceol4sX5jd8A3Cc+6gcd5ZigASRxPGIhCY4X4HSjgq1eLHUaMfxCun3xh9BJLMSSKnDikCRDurRiIy/R1guFuhSBjQr30ztRd1w/oiwevOiUbsf69nxjXHYnzKkqv+gVqcqheZV2kGg421pBr666HebDg1021ca36F8vrpG7PBjTldg4Z31zeSxp0YehJ0XRovS4doK7tWnU4nskcleR7eBeFQT32FyHv8fGdZfIe0Bimlmlq65CQCGboK0KUs5dozVjqgmU/8eIua6q7xaegkfO4IVuIY1so66Wm0u1NNtob1s9AqZOjBVnSahCvIgTbd4TaLzntzfyfBeC4dCrAXZXdVhiwL0nCvqCE7b+B3/Zv6ZhDE46ZsfGR
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:(4636009)(39860400002)(376002)(396003)(346002)(136003)(36840700001)(46966006)(5660300002)(186003)(47076005)(83380400001)(966005)(478600001)(107886003)(53546011)(82740400003)(82310400003)(6512007)(36860700001)(26005)(356005)(336012)(2906002)(316002)(86362001)(6862004)(4326008)(2616005)(54906003)(6486002)(8936002)(70586007)(70206006)(33656002)(8676002)(6506007)(81166007)(36756003)(21314003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 14:13:09.6810
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e290eada-e659-4815-165f-08d9033d42b9
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:
	DB5EUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6218

Hi Julien,

> On 18 Apr 2021, at 19:03, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> Some CPUs can speculate past a RET instruction and potentially perform
> speculative accesses to memory before processing the return.
>=20
> There is no known gadget available after the RET instruction today.
> However some of the registers (such as in check_pending_guest_serror())
> may contain a value provided by the guest.
>=20
> In order to harden the code, it would be better to add a speculation
> barrier after each RET instruction. The performance impact is meant to
> be negligeable as the speculation barrier is not meant to be
> architecturally executed.
>=20
> Rather than manually inserting a speculation barrier, use a macro
> which overrides the mnemonic RET and replace with RET + SB. We need to
> use the opcode for RET to prevent any macro recursion.
>=20
> This patch is only covering the assembly code. C code would need to be
> covered separately using the compiler support.
>=20
> Note that the definition of the macros sb needs to be moved earlier in
> asm-arm/macros.h so it can be used by the new macro.
>=20
> This is part of the work to mitigate straight-line speculation.
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

>=20
> ---
>=20
> It is not clear to me whether Armv7 (we don't officially support 32-bit
> hypervisor on Armv8) is also affected by straight-line speculation.
> The LLVM website suggests it is: https://reviews.llvm.org/D92395
>=20
> For now only focus on arm64.
>=20
>    Changes in v4:
>        - Remove Bertand's reviewed-by
>        - Use /* ... */ rather than // for comments
>        - Remove arm32 changes
>        - Explain why the macro sb is moved around
>=20
>    Changes in v3:
>        -  Add Bertrand's reviewed-by
>=20
>    Changes in v2:
>        - Use a macro rather than inserting the speculation barrier
>        manually
>        - Remove mitigation for arm32
> ---
> xen/include/asm-arm/arm64/macros.h |  6 ++++++
> xen/include/asm-arm/macros.h       | 18 +++++++++---------
> 2 files changed, 15 insertions(+), 9 deletions(-)
>=20
> diff --git a/xen/include/asm-arm/arm64/macros.h b/xen/include/asm-arm/arm=
64/macros.h
> index f981b4f43e84..5ad66efd6ba4 100644
> --- a/xen/include/asm-arm/arm64/macros.h
> +++ b/xen/include/asm-arm/arm64/macros.h
> @@ -21,6 +21,12 @@
>     ldr     \dst, [\dst, \tmp]
>     .endm
>=20
> +    .macro  ret
> +        /* ret opcode */
> +        .inst 0xd65f03c0
> +        sb
> +    .endm
> +
> /*
>  * Register aliases.
>  */
> diff --git a/xen/include/asm-arm/macros.h b/xen/include/asm-arm/macros.h
> index 4833671f4ced..1aa373760f98 100644
> --- a/xen/include/asm-arm/macros.h
> +++ b/xen/include/asm-arm/macros.h
> @@ -5,6 +5,15 @@
> # error "This file should only be included in assembly file"
> #endif
>=20
> +    /*
> +     * Speculative barrier
> +     * XXX: Add support for the 'sb' instruction
> +     */
> +    .macro sb
> +    dsb nsh
> +    isb
> +    .endm
> +
> #if defined (CONFIG_ARM_32)
> # include <asm/arm32/macros.h>
> #elif defined(CONFIG_ARM_64)
> @@ -20,13 +29,4 @@
>     .endr
>     .endm
>=20
> -    /*
> -     * Speculative barrier
> -     * XXX: Add support for the 'sb' instruction
> -     */
> -    .macro sb
> -    dsb nsh
> -    isb
> -    .endm
> -
> #endif /* __ASM_ARM_MACROS_H */
> --=20
> 2.17.1
>=20



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:45:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:45:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113024.215396 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYV9s-0002EQ-Ax; Mon, 19 Apr 2021 14:45:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113024.215396; Mon, 19 Apr 2021 14: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 1lYV9s-0002EJ-7r; Mon, 19 Apr 2021 14:45:52 +0000
Received: by outflank-mailman (input) for mailman id 113024;
 Mon, 19 Apr 2021 14:45:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYV9q-0002EE-Te
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:45:50 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 40005a1f-10d4-45cc-91bb-1baa02fb3e09;
 Mon, 19 Apr 2021 14:45: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: 40005a1f-10d4-45cc-91bb-1baa02fb3e09
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618843549;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=Ty0T50ZwLIJw8cIZQrlAqYvyqKtKe+HTjC7QJM0MA1Y=;
  b=fWpwuLaf5tgOcPbkxxRSOs+8d7/SKEmeJEVVO3/tOP90+WebzPg9d0bm
   O/g4SX1KTTaSqUGelT7kyATcXVENOMzUh0uQ02bXAk1GJBAmSHLSYgUuo
   TWWQi78bQe+aKWhCSOBlc7TLUzkxrgrWp9dPPbbK/pUNE9cKLfJ5m5HLw
   I=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: JqQVed7TemJvuZL8HoVTxIOoU/YNzr5MICt/7gf1H5ciFYPibWlSQ6LNLLpqJI0p+r4H5lLFqb
 6im0kdC4CldH0N5lXBtYXLW5sELPW6hEE5c9P1Hn1KFdnWQV517et94x/M61FPLTOaq9+PYF2C
 iMTfXg7OzpjIrRg+CgO3K2W3ZYZZ9+hW8yHZg4Udk2/MilaW7c8f8EosTf2OW1hUzfIpFX0/qU
 iwgYRBaWL2EoxVABJnS3z6RQziNEnEaIdnmfowAeoxrdJdpgy8lVAzbMSKq69lJsn2pTuxgcpC
 fDY=
X-SBRS: 5.1
X-MesageID: 41896375
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:3JbJnaCImuQccivlHeh2sceALOonbusQ8zAX/mhsVB1YddGZnc
 iynPIdkST5kioVRWtIo729EYOHRm7R8oMw3JkJMd6ZLWzbkUaLDKUn14vtxDX8Bzbzn9Q26Y
 5Me7VzYeeeMXFUlsD/iTPXL/8F4P2qtJ+lnv3fyXAFd3AJV4hF4x1iAgiWVm1aLTMnObMDGJ
 CR5tVKqlObEBx6Uu2BCmQYRO+GntXXlfvdCiIuPQIt6wWFkFqTmd3HOiWfty1+bxp/hY0M3E
 KAuAz/66WlvZiAu2Xh/l6W1bt6sp/MztNCAeaFl8QaLC794zzYGbhJavm5kx0e5M2p9VY2gP
 nAyi1QQ/hb2jfqUUye5TvrxgX63z4l5xbZuCClqEqmm+PVbnYeKaN69OZkWyqc0WUMlpVA9Z
 gO+GSju59eHXr77VzAzumNbT5GvA6Ju3Y4+NRj6EB3YM8lR5J6i5cQx09RGIdoJlOA1KkXVN
 NjC8zR/59tADWnRkGcumFuxeqlVWgoEiGHRVAfuteU3yI+pgEB83cl
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="41896375"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86/shim: Simplify compat handling in write_start_info()
Date: Mon, 19 Apr 2021 15:45:24 +0100
Message-ID: <20210419144524.32608-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Factor out a compat boolean to remove the lfence overhead from multiple
is_pv_32bit_domain() calls.

For a compat guest, the upper 32 bits of rdx are zero, so there is no need to
have any conditional logic at all when mapping the start info page.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/pv/shim.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/pv/shim.c b/xen/arch/x86/pv/shim.c
index d16c0048c0..533c194eef 100644
--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -280,12 +280,12 @@ void __init pv_shim_setup_dom(struct domain *d, l4_pgentry_t *l4start,
 static void write_start_info(struct domain *d)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
-    start_info_t *si = map_domain_page(_mfn(is_pv_32bit_domain(d) ? regs->edx
-                                                                  : regs->rdx));
+    bool compat = is_pv_32bit_domain(d);
+    start_info_t *si = map_domain_page(_mfn(regs->rdx));
     uint64_t param;
 
     snprintf(si->magic, sizeof(si->magic), "xen-3.0-x86_%s",
-             is_pv_32bit_domain(d) ? "32p" : "64");
+             compat ? "32p" : "64");
     si->nr_pages = domain_tot_pages(d);
     si->shared_info = virt_to_maddr(d->shared_info);
     si->flags = 0;
@@ -300,7 +300,7 @@ static void write_start_info(struct domain *d)
                                           &si->console.domU.mfn) )
         BUG();
 
-    if ( is_pv_32bit_domain(d) )
+    if ( compat )
         xlat_start_info(si, XLAT_start_info_console_domU);
 
     unmap_domain_page(si);
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 14:45:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 14:45:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113025.215408 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYV9x-0002GD-K9; Mon, 19 Apr 2021 14:45:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113025.215408; Mon, 19 Apr 2021 14:45:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYV9x-0002Fw-Fm; Mon, 19 Apr 2021 14:45:57 +0000
Received: by outflank-mailman (input) for mailman id 113025;
 Mon, 19 Apr 2021 14:45:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYV9v-0002EE-SH
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 14:45:55 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id bcd3ca13-4f37-475a-9f8d-1e47120a74bc;
 Mon, 19 Apr 2021 14:45: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: bcd3ca13-4f37-475a-9f8d-1e47120a74bc
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618843550;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=nOQSoQs1TITAXQmOKdz/0x9ELGXH9h+Z3/1L3J87LV0=;
  b=htRE/+2ZyEt6LPHJCye49qBiCA/RBO1FsRrGUZ83+HMo4vPPgFLc1Vjg
   h+ouAYNFkhlXkK7vRN4rTDxUTzszJ1POFrpowDqpGdGLx4eJrFS4TkZ0H
   RQlOIbosbg2ZU7aAVr+nGiVU+aHBHcqXePFyV6fg0PNry5vIL8Z1TsYgj
   8=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: lmefLMuL0TWaSLNn1CmkCHo/heNOMhdehFGMFTk3fL0AGWjO/ypUVFnX3L9Z29NcV1HGFykjDU
 /FQCdATxDkRUPwoOkRu9Do7yUMa4crmEeDkETeb29Ss1Gfrhsm2D+KZARpbi2wYxc7bCiZJYPw
 49uMmbRJHnU1FvAxdBtQjawxmAk+H9Sh1ZpbscuppUeYk5sAerRzxYVnltWEMkrUlBfdn1k3f4
 2b8ULalUCc9ysXLBRhWQ3mtExvkb726pbfacSi69l63WQmhDgxFD+rvyNwVyvBA/qNep5kOI4Y
 gmo=
X-SBRS: 5.1
X-MesageID: 41896377
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:4tO3i6Gau51hla97pLqEDseALOonbusQ8zAX/mpaICY1TuWzkc
 eykPMHkSLugDEKV3063fyGMq+MQXTTnKQFh7U5F7GkQQXgpS+UPJhvhLGSpAHINiXi+odmpM
 RdWodkDtmYNzdHpOLbxCX9LNo62tmA98mT9IPj5lNgVxtjZa0lzyoRMHf4LmRMSANLBYU0Gf
 Onj6ItzVfNRV0tYtmmHX5AZuDfprTw5evbSCQbDB0q4hTmt1OVwYP9eiL34j4uFxdGwbIv6g
 H+4mnE2pk=
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="41896377"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86/pv: Fold adjacent paths in dom0_construct_pv()
Date: Mon, 19 Apr 2021 15:45:40 +0100
Message-ID: <20210419144540.546-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

This removes a visually-werid layout of conditionals.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/pv/dom0_build.c | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/xen/arch/x86/pv/dom0_build.c b/xen/arch/x86/pv/dom0_build.c
index e0801a9e6d..0ea906d6f8 100644
--- a/xen/arch/x86/pv/dom0_build.c
+++ b/xen/arch/x86/pv/dom0_build.c
@@ -615,9 +615,14 @@ int __init dom0_construct_pv(struct domain *d,
     {
         v->arch.pv.failsafe_callback_cs = FLAT_COMPAT_KERNEL_CS;
         v->arch.pv.event_callback_cs    = FLAT_COMPAT_KERNEL_CS;
-    }
 
-    if ( !compat )
+        /* Monitor table already created by switch_compat(). */
+        l4start = l4tab = __va(pagetable_get_paddr(v->arch.guest_table));
+        /* See public/xen.h on why the following is needed. */
+        maddr_to_page(mpt_alloc)->u.inuse.type_info = PGT_l3_page_table;
+        l3start = __va(mpt_alloc); mpt_alloc += PAGE_SIZE;
+    }
+    else
     {
         maddr_to_page(mpt_alloc)->u.inuse.type_info = PGT_l4_page_table;
         l4start = l4tab = __va(mpt_alloc); mpt_alloc += PAGE_SIZE;
@@ -626,14 +631,6 @@ int __init dom0_construct_pv(struct domain *d,
                           d, INVALID_MFN, true);
         v->arch.guest_table = pagetable_from_paddr(__pa(l4start));
     }
-    else
-    {
-        /* Monitor table already created by switch_compat(). */
-        l4start = l4tab = __va(pagetable_get_paddr(v->arch.guest_table));
-        /* See public/xen.h on why the following is needed. */
-        maddr_to_page(mpt_alloc)->u.inuse.type_info = PGT_l3_page_table;
-        l3start = __va(mpt_alloc); mpt_alloc += PAGE_SIZE;
-    }
 
     l4tab += l4_table_offset(v_start);
     pfn = alloc_spfn;
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 15:31:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 15:31:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113049.215424 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYVrZ-0006hk-7F; Mon, 19 Apr 2021 15:31:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113049.215424; Mon, 19 Apr 2021 15:31:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYVrZ-0006hd-4N; Mon, 19 Apr 2021 15:31:01 +0000
Received: by outflank-mailman (input) for mailman id 113049;
 Mon, 19 Apr 2021 15:31:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYVrY-0006hX-Au
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 15:31:00 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e9f7834b-e88a-481e-818d-7a585226c64c;
 Mon, 19 Apr 2021 15:30:59 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8CBEBAD09;
 Mon, 19 Apr 2021 15:30: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: e9f7834b-e88a-481e-818d-7a585226c64c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618846258; 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=sHNcOcJ9rIpDXtzuCOh89Oka1MXiX02W2jGlstGd3bw=;
	b=PgSgFLjiHL1MtmUVxMqMULnCrn4i6rNfS2opHN8VEtQ+aqvATDqdIDpEvYDeKuuDOBB34S
	EiWNc5Cr8SQZ+QRA0qMU+S8iwKWWRUWTlXm23W9CGRc+68ghwm0Pv7I6OwIBSmnwTBKdY0
	w9Zwzq4qH1KdR7YYoNWEEtsXz8+SMKI=
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] x86emul: fix test harness build for gas 2.36
Message-ID: <723af87e-329d-6f52-ece4-fc3314796960@suse.com>
Date: Mon, 19 Apr 2021 17:30:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

All of the sudden, besides .text and .rodata and alike, an always
present .note.gnu.property section has appeared. This section, when
converting to binary format output, gets placed according to its
linked address, causing the resulting blobs to be about 128Mb in size.
The resulting headers with a C representation of the binary blobs then
are, of course all a multiple of that size (and take accordingly long
to create). I didn't bother waiting to see what size the final
test_x86_emulator binary then would have had.

See also https://sourceware.org/bugzilla/show_bug.cgi?id=27753.

Rather than figuring out whether gas supports -mx86-used-note=, simply
remove the section while creating *.bin.

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

--- a/tools/tests/x86_emulator/testcase.mk
+++ b/tools/tests/x86_emulator/testcase.mk
@@ -12,11 +12,11 @@ all: $(TESTCASE).bin
 %.bin: %.c
 	$(CC) $(filter-out -M% .%,$(CFLAGS)) -c $<
 	$(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x100000 -o $*.tmp $*.o
-	$(OBJCOPY) -O binary $*.tmp $@
+	$(OBJCOPY) -O binary -R .note.gnu.property $*.tmp $@
 	rm -f $*.tmp
 
 %-opmask.bin: opmask.S
 	$(CC) $(filter-out -M% .%,$(CFLAGS)) -c $< -o $(basename $@).o
 	$(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x100000 -o $(basename $@).tmp $(basename $@).o
-	$(OBJCOPY) -O binary $(basename $@).tmp $@
+	$(OBJCOPY) -O binary -R .note.gnu.property $(basename $@).tmp $@
 	rm -f $(basename $@).tmp


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 15:41:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 15:41:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113055.215435 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYW1j-0007l1-5C; Mon, 19 Apr 2021 15:41:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113055.215435; Mon, 19 Apr 2021 15:41:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYW1j-0007ku-1s; Mon, 19 Apr 2021 15:41:31 +0000
Received: by outflank-mailman (input) for mailman id 113055;
 Mon, 19 Apr 2021 15:41:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYW1h-0007kp-Ri
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 15:41:30 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d3681165-6bfb-431f-8bce-f4129a8f96ee;
 Mon, 19 Apr 2021 15:41: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: d3681165-6bfb-431f-8bce-f4129a8f96ee
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618846889;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=fvvP7whCMD3duNYZRY6vaDfvwuIp0piOan+hidIYSW0=;
  b=cjq5KPci7f33/L8yJIIJ3iu583aGJZ1SUfnWz8qaQEy2RmypsLTVFK0a
   42ilMp2xqTZjie+39lJIIH09LDhx8CnrkOe4eCoUT1mMiobY3xkdT3r8m
   tAs/Vppr9YT37OqVfgRLX/HuXCOLAdxQpp2OAt6znbMjGB9iI/0w1BXrq
   k=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Fy0JXK6NypPBzdSGRLwDU+DRFfNBH+CI2iIQs1qQaUU4LrE6HB8FtI6lFg7wV8vyHhLPVF0TXZ
 Mq5OGdXItE3TMLe5esPt+sZodqieMKZU7eXsgvnBZKwFp559dwM+Q4BC/XKpWFIFNUXuIEgvsZ
 cB7biaSKqmHSNF7iYTWqsjUuXl7IWvaBZrg1A3Ojlqnv6Ryemui8zlS9zUglmsmE9DtgBOyH6E
 k5mG6mOQp6/v1uUvMQSxP2OgxAveMQUY7FxANVoM2808J3grj4WOXPAJRdQJMk2TRL1S8cpkl8
 pmM=
X-SBRS: 5.2
X-MesageID: 43385309
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:gyNs2KgKSWAyMrWQFiuR/cVUC3BQXwh13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy4N5B9efdSPhv3alK5wn0Jv6z1TbaknD38N+9Y
 MlSahxD9XsEUN35PyR3CCUG8stqePpzImGnuHbpk0CcShPS4VNqzh0ERyaFEoefngiObMcGI
 CH7sRK4xqMEE5nDfiTPXUOU+jdq9CjrvuPDSIuPBI79BKIyQqh9b+SKXOl9y0DWDBCy6pKyx
 mmryXF4MyY0s2T+1vn+EL4q79Xn9bgzdUrPr3wtuElbg/CpyztSIBoW7iptC04rue1+D8R4a
 XxiiZlBetfwTf8eXy0vAvM1mDboUkTwk6n83C0qz/CptH0Xz0zAcYpv/MmTjLpr3AOkfs59Y
 Aj5RP/i7NnSSnusQ642v3zEzZtrUawqWpKq59ps1VvFbEwRZUUkZYS5ypuYfE9NRO/0q8LOs
 90AvrR4f5HGGnqFUzxjy1UzNugUm9bJGb+fmEy/sic0z1hlHtk1UcvxMsGgnca9J4mIqM0n9
 j5Dg==
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="43385309"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BLP+Jsd6Ch6nkW5eMMkET2vcaFnz9tIc9aD5H3OPQZ31MPlVGRZGnEHaM/fHI5WV0F5ySQ8TuytAITSBDPYT8ZT6k2Kjg4+4sXGy5tqkvv8T0ECGZSWceHgHCafsOfzO3bgmuivGMjJHhXu0Ag5wZuXLyJ40x0ffMi2E/UW3o1IaH2N5SuyBVpi2GUcYi2SWfTp/xBRmARswMwuF8m3SxHkJE2AyvXkxqMxXfQOipeXU70p1BMOLJP8lzc2YoLd2h9nuMUX7FRkWxGx4EzA0vMG/WgN0qV/iow0C7Fmb4p3IKq8wjs96Zc9QCRVCWVmNyVKoze/aLSctl0Ak4iYxtg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Lu0ZOfWDtogrq3BaA/5ECWt1npO6miuYolO18GQiwzE=;
 b=B2pzsr6L3dVcrinSwG5IhVsnuowjBFGGmW4C4vRofFOhzDqbfkzdIv1o4CE0x2c7OY3cIb1ICOWZ+94B/df+r+l/s4dsxzGmI6Iy2eu0g4Pb68EpTuG9qLdQj5dhzstbaf+pjSkQxRLGj+vBUO9EMgULZv4BGbFcRFh0Q20PQk3Snn3ngXBugaB84jLSZ9iXE9HqEXV25L9f2XrByVLLzvy3Msycb46MFwPf/R24YqCmb5AloXjzgJlaUdrfmkZI215nN96LHDaEBBNWc4wcwcb5CbX3ifDoetPy543chxUdQxIOugbGd9BVwYyn6jYB575FDvaIxemGkHtzNubMbQ==
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=Lu0ZOfWDtogrq3BaA/5ECWt1npO6miuYolO18GQiwzE=;
 b=gdPPbLpr5p1rdNW6NRBOvgPC6PoSYeRfFvJ1u5rKFyskt4YRmtvRVx3nb/1qPyHzUu17g/vryYXz2EYhyp6rdv6oMKY30jbgrxsgWsy9wbk32AArCvXSDLmpjl1n30qUslGUbMorxkG1769fCbvuBTQg7xRR3SPZ027mZKyFU+I=
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: <723af87e-329d-6f52-ece4-fc3314796960@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86emul: fix test harness build for gas 2.36
Message-ID: <5e6f7769-ba07-bccb-9d73-4c7c0db67f89@citrix.com>
Date: Mon, 19 Apr 2021 16:41:20 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <723af87e-329d-6f52-ece4-fc3314796960@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0322.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:197::21) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: cc5f8020-c2ea-4f88-1190-08d90349973a
X-MS-TrafficTypeDiagnostic: BYAPR03MB3734:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB37341BE855857D0D4A353281BA499@BYAPR03MB3734.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5236;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: dZrU3Wmdut62If/o7KccnFNXCSVmCgE/GxnMja+K0YDda+2KFvJ0Ybq24aLdplMpjNwfl5LMofD+VN1HLXzzaB/EWrb70PFWHIJbOrVTO4OsdpfND59Dp2T7wT7VTeekuISfqzFRAA4OiVwhaOeNRCRjJtcHlFQ9D+Vm/vdQZpCkOM5SKilOsLL87XC17Fw15PY0a8XryMceDN08Bzi/qoJ6iwMLSegVNdi5aahJapFmZFapAdYwrsOOIq0WDpvoG4aW/kM4CgbJF52X2AuiJuQFNy2K9nhTXZIGvzwX4k6bGePkSiY7UawucFBCymwzh6gTSS2GfdEgs2u3P1vdJcK+I1OYdSOsImXBxjTENL/NtbdSnzJU+KlUj3Xo+UVBL27vNb3ptccWYns306OttJbdecN2whZ90C+mHuU+Squ18ep6nax/ykNkmZD/VdDyBpwyQ/7/yTtjh0hjCjTQVbiBeWDKW0/2sAO+LQRyGH/WJlsrFpPk/CHIrG3TuF2G1OIs33bMcLfuXdTlJVJxtOtVhj97QZyRqlzFEN6hUtJ3HlZWAd6qN1fVxdoIOL1o9kMZjwi02RYmqu81BsGhZ+qVnR4oXPOhzyDOZstZ3yYqiCLLi/CndABLp9a9ApDCBs+sPDA4AWJv/aYsyB+anb/pB0Mnpalh2ikcdT8k9KJs3Fh1+YHRxblQct8OZ/QheTEmiXc+b7IuTZstUj5N0aKj6X0IUozuquKznG7gcFRumWBWJQ0Kh9drEsSMltmrk7+AdIRfvaB85k4b+OS0LQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(396003)(346002)(366004)(39860400002)(136003)(16576012)(316002)(6486002)(31686004)(53546011)(54906003)(4326008)(2616005)(16526019)(26005)(107886003)(8676002)(8936002)(110136005)(956004)(186003)(38100700002)(86362001)(66476007)(66946007)(66556008)(36756003)(6666004)(966005)(2906002)(5660300002)(31696002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Jw7E2y5WEeg7Y51Zlee4BRyeI/PKZSl1FVgM98w?=
X-MS-Exchange-CrossTenant-Network-Message-Id: cc5f8020-c2ea-4f88-1190-08d90349973a
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 15:41:25.5876
 (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: ee+EqA3N1R9r1Qy/AIZau1uHhcutgpzkOSYT/6t3NNKrziZdUu1C5mRVQ+TEE+uGi3j0GBOoTInlUvvUHa6LUY7+Z4+jN3IwuREkuAlXDvg=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3734
X-OriginatorOrg: citrix.com

On 19/04/2021 16:30, Jan Beulich wrote:
> All of the sudden, besides .text and .rodata and alike, an always
> present .note.gnu.property section has appeared. This section, when
> converting to binary format output, gets placed according to its
> linked address, causing the resulting blobs to be about 128Mb in size.
> The resulting headers with a C representation of the binary blobs then
> are, of course all a multiple of that size (and take accordingly long
> to create). I didn't bother waiting to see what size the final
> test_x86_emulator binary then would have had.
>
> See also https://sourceware.org/bugzilla/show_bug.cgi?id=3D27753.
>
> Rather than figuring out whether gas supports -mx86-used-note=3D, simply
> remove the section while creating *.bin.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>
> --- a/tools/tests/x86_emulator/testcase.mk
> +++ b/tools/tests/x86_emulator/testcase.mk
> @@ -12,11 +12,11 @@ all: $(TESTCASE).bin
>  %.bin: %.c
>  	$(CC) $(filter-out -M% .%,$(CFLAGS)) -c $<
>  	$(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x100000 -o $*.tmp $*.o
> -	$(OBJCOPY) -O binary $*.tmp $@
> +	$(OBJCOPY) -O binary -R .note.gnu.property $*.tmp $@
>  	rm -f $*.tmp
> =20
>  %-opmask.bin: opmask.S
>  	$(CC) $(filter-out -M% .%,$(CFLAGS)) -c $< -o $(basename $@).o
>  	$(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x100000 -o $(basename $@).tmp $(base=
name $@).o
> -	$(OBJCOPY) -O binary $(basename $@).tmp $@
> +	$(OBJCOPY) -O binary -R .note.gnu.property $(basename $@).tmp $@
>  	rm -f $(basename $@).tmp

Hmm - this is very ugly.=C2=A0 We don't really want to be stripping this
information, because it covers various properties of the binary which
need not to be lost, including stack-clash mitigations, and CET status.

We might be able to get away with saying that we're operating strictly
with defaults, and folding these *.bin's back into a program which is
also linked with defaults, at which point the resulting binary ought to
end up with a compatible .note.gnu.property section, but I'm not sure
how convinced I am by this argument.

~Andrew



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 15:45:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 15:45:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113060.215447 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYW5x-0007y6-Me; Mon, 19 Apr 2021 15:45:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113060.215447; Mon, 19 Apr 2021 15: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 1lYW5x-0007xz-Jg; Mon, 19 Apr 2021 15:45:53 +0000
Received: by outflank-mailman (input) for mailman id 113060;
 Mon, 19 Apr 2021 15:45:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYW5w-0007xu-6H
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 15:45:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 55c515eb-0af6-41dd-ab2c-729b281ae986;
 Mon, 19 Apr 2021 15:45:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BC064AD09;
 Mon, 19 Apr 2021 15:45: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: 55c515eb-0af6-41dd-ab2c-729b281ae986
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618847150; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=SmFUX0bpp/j7HuRVkXtDDoLa9R5T6dj1sa/aoJttEmc=;
	b=Tn7DKcSYhIkj7NvY7ydbNc0HYvspuwNtr3X0JWFgz4UasI+y9YO+fbvPn1bL011uH5rdV2
	kr1+V5oU7o22puLOkVnb8qbxYv/A4e9gQ30aTgLn2mkUGr0TccdDxCMpJdvpDmB0INQGyF
	26Z5462ScQTQNfCoxDlbdxH8ds24AKU=
Subject: Re: [PATCH 0/7] xen: Switch to using -Og for debug builds
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>, Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>, Volodymyr Babchuk
 <Volodymyr_Babchuk@epam.com>, Juergen Gross <jgross@suse.com>,
 Tim Deegan <tim@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <9e8e116a-f4c3-e6bf-edee-d48e76a3d005@suse.com>
Date: Mon, 19 Apr 2021 17:45:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210419140132.16909-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 19.04.2021 16:01, Andrew Cooper wrote:
> As with the toolstack side, we ought to use -Og for debug builds.
> 
> All fixes are trivial.  The first 3 are understandable, given reduced
> optimisations.  The next 3 are, AFAICT, bogus diagnostics.
> 
> Andrew Cooper (7):
>   xen/arm: Make make_cpus_node() compile at -Og
>   x86/shim: Fix compilation at -Og
>   x86/sysctl: Make arch_do_sysctl() compile at -Og
>   x86/irq: Make create_irq() compile at -Og
>   xen/efi: Make efi_start() compile at -Og
>   x86/shadow: Make _shadow_prealloc() compile at -Og
>   xen: Use -Og for debug builds when available

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

I'd like to ask though that at least for the bogus warnings you
amend the commit messages with the gcc version these were observed
with. Perhaps even those seemingly bogus initializers would
benefit from a very brief comment (or else there's a fair chance
of them getting removed again at some point).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 15:51:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 15:51:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113066.215462 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYWBL-0000Pj-CJ; Mon, 19 Apr 2021 15:51:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113066.215462; Mon, 19 Apr 2021 15: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 1lYWBL-0000Pc-9S; Mon, 19 Apr 2021 15:51:27 +0000
Received: by outflank-mailman (input) for mailman id 113066;
 Mon, 19 Apr 2021 15:51:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYWBK-0000PW-9D
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 15:51:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 20f196cd-ac77-45c9-83a4-ccb9ee16191a;
 Mon, 19 Apr 2021 15:51:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 61C8AAFF1;
 Mon, 19 Apr 2021 15:51: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: 20f196cd-ac77-45c9-83a4-ccb9ee16191a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618847484; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=pZfsYvpNpnGJvslmtcU4w2bkSM+831755N7p3kfqFvo=;
	b=Bx3fxCKh65qlegKphxZbsSiWG+I3wpStBS6sqlJUmXqpDZ+1Tsu/Fvc6mPInTW+ggY4g+7
	BoyDecX2p1ytSW5BdYCNS3112/mHB0WexQGrKw8GlNAHR4dmXZECo1GL/miffjDfSJCWNL
	874Vh+PxSVHwoIi1GwW9IDPGQOJm5AU=
Subject: Re: [PATCH] x86emul: fix test harness build for gas 2.36
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: <723af87e-329d-6f52-ece4-fc3314796960@suse.com>
 <5e6f7769-ba07-bccb-9d73-4c7c0db67f89@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <62d6134b-cf49-275e-d1a8-1b47d9152888@suse.com>
Date: Mon, 19 Apr 2021 17:51:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <5e6f7769-ba07-bccb-9d73-4c7c0db67f89@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 19.04.2021 17:41, Andrew Cooper wrote:
> On 19/04/2021 16:30, Jan Beulich wrote:
>> All of the sudden, besides .text and .rodata and alike, an always
>> present .note.gnu.property section has appeared. This section, when
>> converting to binary format output, gets placed according to its
>> linked address, causing the resulting blobs to be about 128Mb in size.
>> The resulting headers with a C representation of the binary blobs then
>> are, of course all a multiple of that size (and take accordingly long
>> to create). I didn't bother waiting to see what size the final
>> test_x86_emulator binary then would have had.
>>
>> See also https://sourceware.org/bugzilla/show_bug.cgi?id=27753.
>>
>> Rather than figuring out whether gas supports -mx86-used-note=, simply
>> remove the section while creating *.bin.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
>> --- a/tools/tests/x86_emulator/testcase.mk
>> +++ b/tools/tests/x86_emulator/testcase.mk
>> @@ -12,11 +12,11 @@ all: $(TESTCASE).bin
>>  %.bin: %.c
>>  	$(CC) $(filter-out -M% .%,$(CFLAGS)) -c $<
>>  	$(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x100000 -o $*.tmp $*.o
>> -	$(OBJCOPY) -O binary $*.tmp $@
>> +	$(OBJCOPY) -O binary -R .note.gnu.property $*.tmp $@
>>  	rm -f $*.tmp
>>  
>>  %-opmask.bin: opmask.S
>>  	$(CC) $(filter-out -M% .%,$(CFLAGS)) -c $< -o $(basename $@).o
>>  	$(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x100000 -o $(basename $@).tmp $(basename $@).o
>> -	$(OBJCOPY) -O binary $(basename $@).tmp $@
>> +	$(OBJCOPY) -O binary -R .note.gnu.property $(basename $@).tmp $@
>>  	rm -f $(basename $@).tmp
> 
> Hmm - this is very ugly.  We don't really want to be stripping this
> information, because it covers various properties of the binary which
> need not to be lost, including stack-clash mitigations, and CET status.

Could you clarify who you think wants to consume this information from
these format-less binary blobs? They're strictly internal to the test
harness.

> We might be able to get away with saying that we're operating strictly
> with defaults, and folding these *.bin's back into a program which is
> also linked with defaults, at which point the resulting binary ought to
> end up with a compatible .note.gnu.property section, but I'm not sure
> how convinced I am by this argument.

Well, if we want to make it complicated, we could of course extract
the notes into a separate ELF object, and include that object in the
linking process. But these notes are wrong anyway: Whichever insns the
blobs use, test_x86_emulator does _not_ need CPU support for them, as
it'll suitably avoid executing any of the blobs. Similarly stack and
CET related information is not of interest for the blobs, only for the
"normal" object files.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 15:55:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 15:55:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113077.215478 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYWFK-0000fA-Ve; Mon, 19 Apr 2021 15:55:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113077.215478; Mon, 19 Apr 2021 15: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 1lYWFK-0000f3-Sg; Mon, 19 Apr 2021 15:55:34 +0000
Received: by outflank-mailman (input) for mailman id 113077;
 Mon, 19 Apr 2021 15:55:33 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYWFJ-0000ex-FC
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 15:55:33 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4f50f4fd-a19b-4a08-a9db-bc182e882eef;
 Mon, 19 Apr 2021 15:55:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 224A9AF35;
 Mon, 19 Apr 2021 15: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: 4f50f4fd-a19b-4a08-a9db-bc182e882eef
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618847732; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RYCU9eeifG8uo6Ntpdp3zFmbaF9Ujr1GBSnf+RV8s6w=;
	b=odVmxvd2kDYAM+CMK7z/+jxQak80kW4eO+Dex5pz1frCxa7oBdfPNnVajfbbYD7iNe5xd9
	7QmBDfC1hhGLoyz61mrXPpknWnCbRRUpvnl6sGxUbxGQpmBeP6yDic8IjyEK+qbgsnCIHB
	tranmfur/4+fICKiysRGNBUGGCh+lmc=
Subject: Re: [PATCH] x86/shim: Simplify compat handling in write_start_info()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210419144524.32608-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a048d155-085d-b942-40cc-00624b5bbd11@suse.com>
Date: Mon, 19 Apr 2021 17:55:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210419144524.32608-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 19.04.2021 16:45, Andrew Cooper wrote:
> Factor out a compat boolean to remove the lfence overhead from multiple
> is_pv_32bit_domain() calls.
> 
> For a compat guest, the upper 32 bits of rdx are zero, so there is no need to
> have any conditional logic at all when mapping the start info page.

Iirc the contents of the upper halves hold unspecified contents after
a switch from compat to 64-bit mode. Therefore only with this part of
the change dropped ...

> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

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

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 15:57:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 15:57:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113081.215490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYWH2-0000ml-Br; Mon, 19 Apr 2021 15:57:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113081.215490; Mon, 19 Apr 2021 15:57: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 1lYWH2-0000me-8a; Mon, 19 Apr 2021 15:57:20 +0000
Received: by outflank-mailman (input) for mailman id 113081;
 Mon, 19 Apr 2021 15:57:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l5R=JQ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYWH1-0000mY-OZ
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 15:57:19 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 308c7ec9-da4e-427a-84b4-fe381d34b98e;
 Mon, 19 Apr 2021 15:57: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: 308c7ec9-da4e-427a-84b4-fe381d34b98e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618847838;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=lKlsn+loLttTWD4lESSRfE5KPdGp6q1jrppI+ykWaNs=;
  b=Ve8mqpSi3229H0xkrDrsCwaYJ6++o4tu/o+ZI76OUQVmzTFVF7zpxNBN
   N5pQkjw3uph10h3GQ2z3qFFveHUVftcM9R4lO5QKjlSY2nfPabmQd58QD
   6J9AQiXlW/wTjL+xH4H3NAyToZCWsHwOlk50w1BxDFytKtXiP5q+rS22v
   Q=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: hF7jpr3M0ey9WNlxIzaqyQ01qpxz6xMYYB9PzRvHTMcQxnTKjFTQYMYqRZKPrPEyZ6DOu8oBnM
 FtphFju0RffFUY16BBL9OXYWX1ajsM89JsZ7vGDtYCvhM08Rb/WYoGzsWohYo75OO4avsIk4NL
 RE9h1XZQck35q9seuhz6+AxOaI5buxod+3/CozBxQ+lWb+lQCqkShh2EjXU5Jbw9NCMBFvQEFU
 sApkHUSQ/WGYxQlFLhXqXBWfEJfrP2+4pbpY3E1HD7sem2wp4t5WHMOMtT2RX9epa9nY39Nctf
 1Z8=
X-SBRS: 5.2
X-MesageID: 43386812
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:scyPe6gZyoW77sqYr20EaOYDuHBQX3dw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+YsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmuZ
 tIW5NVTOf9BV0St6vHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WZEIyywe3cGIDVuL5w/CZ
 aa+45jrz2vZXwYYq2AdwY4dsLEoMDGk4+jXAUPAAQp5BLLoTSj7rP7FBbw5GZjbxpkx7A+/W
 /Z1zHo/6nLiYDH9jbw9U/2q65Xltzo18dZCKW35PQ9Bz3whm+TFfxccpKYujRdmpDI1H8Ll5
 32rw4kL4BP7RrqDxuIiD/M/yWl7zo08X/lzjaj8AjeiOj0XigzBcYEpa8xSGqh12MasNtx0L
 1G0gui3vI9Z3Ow/1WJ2/HyWx5njUayq3Y5+NRj6EB3aocCdKRX6bUW4UI9KuZxIAvB9IslHO
 NyZfushsp+TFXyVQG9gkBS2tC2Glw8EhCaK3JywfC94nx9mXB0yFYg38oPnnsM34JVceg028
 30dotvj71AVckQcOZUA/oAW9K+Dij3TQvLK3/6GyWpKIg3f1b277Ln6rQ84++nPLQO0ZsJgZ
 zEFHdVr3Q7dU7CAdCHtac7vCzlcSGYZ3DA28te7592tvnXX7zwKxCOT1gojo+Jv+gfKtezYY
 fxBLtmR9vYaUf+E4dA2APzH7NIL2MFbcETstEnH3qTv8PwLJHwvOCzSoeSGJPdVRIfHk/vCH
 oKWzb+YO9a6FqwZ3P+iB/NH1z3fEjS+o9xDbj68+AfxJNlDPwIjiElzXCCou2bIzxLtaI7OG
 FkJqn8r6+9rW6quUbEhl8ZfiZ1PwJw2vHNQnlKrQgFPwffarAYoeiSfmhUwT+iLh97RMXGLR
 5Hqz1MiOWKBq3V4RpnJ8OsM2qcgXdWjmmNVY0glqqK4tqgXZ8kEJA8WuhUGR/QHxJ43SZmwV
 0zKTMsdwv6LHfDmK+lhJsbCKX0bN9nmjqmJsZStDb4rkWTpcYmQ1MBRD6wWcurgQIjLgAkxG
 FZwus6uv6tiDyvIWwwjKATK1tXclmaB7pAEUC4folOo6vqfwtxVG+OojSfh3gICyzX3nRXol
 akATyfePnNDFYYnnxDyK7l/Gl5cXinc1tqZmp3tpB8Emr6qm9+uNX7FJab4i+0UB8v0+sdOD
 bKbX8pLgRiy8ue+TSVlDyBfE9WjKkGD6j4NvAOYrvT0nSiJMm0jqkABeZT54sgHsvpqPU3Xe
 WWfBK1IDv0B/gy4RGcom8oNUBP2SAZuMKt/CegwHmz3XY5D/aXHU9vQKsDJcqAq0fjXPSF3f
 xC/JsIlNr1Fl+0TNGIyavaNWEebjzSpHO7VOEup9R/u7kouL56ApncVn/p2Rh8rWIDBfaxsH
 lbZqJxpI3lEMtIWec5fipC5FonlNiVNiIQw0fLK957WWtotmPROtOC3qHBprUuCHCQvQeYAy
 jqzwRtu9P+GxaZ3bEUC6gMMX1bRUg15nNl5v6DfeTreXOXXtAG2FqxKXmmdrBBDICDBLULtx
 5/iuv40tO/Rm7d2ArKuyF8Lb8L22G7QdmqCAbJPeJT6dS1NRCthaStifTDwAvfeH+ea04Cg5
 dCelFVRsNfiiM6hIly6xOMcMXM0woYumobxypmmF7r0pWn52mePXguC3ymvrxmGR9JMnaJis
 zZ9/O/z3qV2kkc5aX+
X-IronPort-AV: E=Sophos;i="5.82,234,1613451600"; 
   d="scan'208";a="43386812"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CCMQpoAr7n/6inFin/OxBPxUOTdsIGeBVa3QR+XrwLQ97rUbHgr0YIp7kzJpxF16GRuk1Yiumyfa/WgDgTkBoBNNPY1qqkE1zeRf2fD74/Zs9DanU+aLAtKsN52aK6ngeAZRBgiksbEsBBJZgQadiLJa/XzHI7m0nb4XNBlmSHYkz1cs3WTETLgnfMVaL5uIwI7PlExyyt5ljYIfUv4uxIfLPI6GKyszH6xND1KQTJch1JTjX+6kIJOXa8y+g3lpR5lgyJWgviwl+NRz9hKo0PbahPdcdqkayJetC1gX9S0NHy7H8ELBry7DF7c2PdE/y64Vf0cwnOIV5sSeu8FZjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lKlsn+loLttTWD4lESSRfE5KPdGp6q1jrppI+ykWaNs=;
 b=fTXTHS5kWBtVxalUcEqYYuTa2JStaoVG3tYLkWVanwh5w0FdQA+u7XuMder9FY7BbA9FCvV318j8oQAFSABY7IiWgmWHNclPRKxhNu7i5e6cAFNzHcCfAIGEP/3SphDQstgM1Amw49W7kOmcqZNRQ9Outy7SWMgN4aVtnRIIHfCCUO+qqp9mM97b3Icg9Z+2Fl1pNyOxBTMJrehWGs+zMdCasiyD1T2HGsBeIitkvNj93ccLN5yRbXOrJqESbA/pwNW6Mncoo4/ycyOgftsDM1HqCQ4TcI64SzcsB1a65U8PMrJ3s1SwwfK7I+UDx4UFhgkFK80HiHOnS1DKxpK5Ww==
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=lKlsn+loLttTWD4lESSRfE5KPdGp6q1jrppI+ykWaNs=;
 b=QTvh9VGuYPo2bFdC2OtuVT4L5PDWZn06uisRTi4qCpLngmOmnyy7ZmssZqCmWXF3jxH+0jn6GbuG7pAgOGIPAd57opvOP0ReoyV+8RBxkdteQjE33TXZG/t05nrGfF7XSNRDSa/rdYLz+pQ/Sx3EBswb2Z5aUvsLD3LGpILc0r8=
Subject: Re: [PATCH] x86/shim: Simplify compat handling in write_start_info()
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210419144524.32608-1-andrew.cooper3@citrix.com>
 <a048d155-085d-b942-40cc-00624b5bbd11@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <faff3047-66e3-0d6f-1878-e1dac47b7c06@citrix.com>
Date: Mon, 19 Apr 2021 16:57:04 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <a048d155-085d-b942-40cc-00624b5bbd11@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0305.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::29) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 66497a3e-8591-417f-c1f8-08d9034bca2a
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5759:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5759D268B3748B8D4B84401CBA499@SJ0PR03MB5759.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4714;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: VgJ8JRWdC4dg8fEIhAIT0WUDY6c8SG+TWnTRybyaVnyMYlCLNKfNqCC3rvtWlaCFxDCOJTbO8RrfQZ+exjb7ffuwIg6ilGxXIOORdVbZeoJqm4/B1fmSXwmt/OaXL/C8+dJpJZPb83vkrC+JcTbfIav0xBrns0tsXar2+z9n6lhvAu6UV7qyKQIbrBqdQEczyK6cbP9VxMFOG5z1aM+Gem1zW7OSSPni+XeE54peYWNUcR9P3S6MaLzNFQCG6SWQq3UfocPppr3qUj61XTCzyvotT1uPV3xLNvLKRmVQVOxJti/RvVtn5J08QlWWXerWQxo7o847mxPV7smYtk+HQWx0zey/teDGDKrHDop29ORV2r+sDArCFaT91LEGxhwjR1JYDsmnvF85AP73QORfO8VJZG3FHImEybMIk6YiIEPUTJPm5n6LPplO2kbNwxff0krJazCMZpYCCtDokWVe9haW2dBfPhOLRclHU6xg06KAdmpSAzbY+sOdFFqAhWbVodKfllaQdCUBDteDgKVmiCdK+ckIM/it7HlyvlouxEk5sycb+bud0P3n7PeBjkDWg71vknyoq++BprI8qARdCis+PL5e3dHtJ3tPwRDEJXihLRtk/eE8wP3AAQbtV9Luz9hDmOnBYXu3v0BC/5HoOFrN2iecH87uBzPnQ/fUY71xwUOfywz/4nAa7A/TwQoz
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(136003)(376002)(396003)(366004)(346002)(8936002)(316002)(8676002)(16576012)(4744005)(4326008)(956004)(2616005)(5660300002)(6916009)(16526019)(66476007)(2906002)(6486002)(186003)(38100700002)(54906003)(6666004)(31686004)(66556008)(36756003)(478600001)(26005)(53546011)(31696002)(86362001)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?WcKb+Wl0vRnJbeFsw/brOcJM3vi5B6R3oJ05FG3?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 66497a3e-8591-417f-c1f8-08d9034bca2a
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2021 15:57:10.0435
 (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: GpH93IdWNok03vrW/1XdycwTCGat09vniXh5iYFFgCRt14GnglrvtWJ9IJ+sgjyrTZTzQN0N+J2Qo+2GSxAET6udsjiVt+wdAPoB8jK+7ls=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5759
X-OriginatorOrg: citrix.com

On 19/04/2021 16:55, Jan Beulich wrote:
> On 19.04.2021 16:45, Andrew Cooper wrote:
>> Factor out a compat boolean to remove the lfence overhead from multiple
>> is_pv_32bit_domain() calls.
>>
>> For a compat guest, the upper 32 bits of rdx are zero, so there is no need to
>> have any conditional logic at all when mapping the start info page.
> Iirc the contents of the upper halves hold unspecified contents after
> a switch from compat to 64-bit mode. Therefore only with this part of
> the change dropped ...

But we're shim, so will never ever mix compat and non-compat guests.

~Andrew

>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>
> Jan



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 15:58:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 15:58:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113088.215501 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYWHn-0000uK-Q1; Mon, 19 Apr 2021 15:58:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113088.215501; Mon, 19 Apr 2021 15: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 1lYWHn-0000uD-N6; Mon, 19 Apr 2021 15:58:07 +0000
Received: by outflank-mailman (input) for mailman id 113088;
 Mon, 19 Apr 2021 15:58:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYWHm-0000u6-Ib
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 15:58:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 600e0aa6-5948-46d3-a078-e5efbbe54940;
 Mon, 19 Apr 2021 15:58:05 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 188D1AF48;
 Mon, 19 Apr 2021 15:58: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: 600e0aa6-5948-46d3-a078-e5efbbe54940
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618847885; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=psaEqpE8zrc4xwskyEVicSJzoyrus4OBSQ2rqz64IDU=;
	b=eMhkWPOWO6fCLOxXXBJAnKPElVITF1KYYY86N1xfZ2790q9eQ1iQrfyvCSlIpnP671XNQf
	IDjVZxZJobeI1CiNsyMZTYzBuVMYjKQfU56h3uC2nAg5bgPmMPJvQpkb3AipLlDojbu8rY
	CflSwM88gi3cNJYrKP7tERWhOZ1MbaQ=
Subject: Re: [PATCH] x86/pv: Fold adjacent paths in dom0_construct_pv()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210419144540.546-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <63b88425-fe1b-8785-6c89-8106a1697ed9@suse.com>
Date: Mon, 19 Apr 2021 17:58:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210419144540.546-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 19.04.2021 16:45, Andrew Cooper wrote:
> This removes a visually-werid layout of conditionals.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

I don't mind the rearrangement, so
Acked-by: Jan Beulich <jbeulich@suse.com>
but I think it was done for a reason - to keep separate steps
separate.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 16:00:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 16:00:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113094.215513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYWKY-0002Kk-7r; Mon, 19 Apr 2021 16:00:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113094.215513; Mon, 19 Apr 2021 16: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 1lYWKY-0002Kd-4q; Mon, 19 Apr 2021 16:00:58 +0000
Received: by outflank-mailman (input) for mailman id 113094;
 Mon, 19 Apr 2021 16:00:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EHwQ=JQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYWKW-0002KS-GA
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 16:00:56 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6ec992a8-9bcc-4739-bfc7-1aab5a54da46;
 Mon, 19 Apr 2021 16:00:55 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 20672AF35;
 Mon, 19 Apr 2021 16:00: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: 6ec992a8-9bcc-4739-bfc7-1aab5a54da46
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618848055; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=oIuELSFZXR96S1oKPJlsusqOvaata/PLNROEUBemQI0=;
	b=vWT7MGFcfjVdSqxs5eXKGvUIxTHlZMJ6+Uv/Uhsc/CvV45jVWRyyMVHyC5PW+B/0lCu8K8
	PTz9NbmN+SgpY3Z9KLKv5SQ0+nbdto3eByLg6ayAh1R6pRf0hPjGMRTwp8lfzImDnubFNu
	YY8RPxg6lqngkqoXKLsgSxHtRwwxGRk=
Subject: Re: [PATCH] x86/shim: Simplify compat handling in write_start_info()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210419144524.32608-1-andrew.cooper3@citrix.com>
 <a048d155-085d-b942-40cc-00624b5bbd11@suse.com>
 <faff3047-66e3-0d6f-1878-e1dac47b7c06@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <398b912d-d19f-8321-815a-362c6da6d70d@suse.com>
Date: Mon, 19 Apr 2021 18:00:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <faff3047-66e3-0d6f-1878-e1dac47b7c06@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 19.04.2021 17:57, Andrew Cooper wrote:
> On 19/04/2021 16:55, Jan Beulich wrote:
>> On 19.04.2021 16:45, Andrew Cooper wrote:
>>> Factor out a compat boolean to remove the lfence overhead from multiple
>>> is_pv_32bit_domain() calls.
>>>
>>> For a compat guest, the upper 32 bits of rdx are zero, so there is no need to
>>> have any conditional logic at all when mapping the start info page.
>> Iirc the contents of the upper halves hold unspecified contents after
>> a switch from compat to 64-bit mode. Therefore only with this part of
>> the change dropped ...
> 
> But we're shim, so will never ever mix compat and non-compat guests.

That's not the point: A compat guest will still cause the CPU to
transition back and forth between 64-bit and compat modes. It is
this transitioning which leaves the upper halves of all GPRs in
undefined state (even if in reality a CPU would likely need to go
through extra hoops to prevent them from being zero if they were
written to in compat mode).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 16:21:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 16:21:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113105.215525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYWe6-0004Bc-UP; Mon, 19 Apr 2021 16:21:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113105.215525; Mon, 19 Apr 2021 16: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 1lYWe6-0004BV-RV; Mon, 19 Apr 2021 16:21:10 +0000
Received: by outflank-mailman (input) for mailman id 113105;
 Mon, 19 Apr 2021 16:21:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aVye=JQ=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lYWe4-0004BQ-Ob
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 16:21:08 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9db34f7d-4839-434d-89a0-16044daa4a19;
 Mon, 19 Apr 2021 16:21:07 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id CAF9361246;
 Mon, 19 Apr 2021 16: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: 9db34f7d-4839-434d-89a0-16044daa4a19
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618849267;
	bh=WI3RkHdr+OBEgjLchokCSMN8ZQnV3hwStpgM65Af574=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gOGs4cC0yJeXPqlvNYDgblnFl7FRIXwC3Z4MmvV01xgysRGWXF4mi0HpivgUh4EPw
	 04jMX1NipOnFy5LwZMcZZ0W34unH3M+mbnvFVau4KT4fQalb/b6cC2W2/mdpcW/va+
	 H9lwy1jCh4YAY98IsU5zUXPScNSkov6F86cpA0ah948gd9b1j16XZT7NexfaIrN3Qm
	 zAmotymzUfNfbzW4B/qcNTuVmCL/Pn13ZcO7uKjsufRxGAAd+OTvOygkqm+SSzmsT+
	 uUpII/UUvLeYEWnLPO8UJPhQambQegEybu/kIzLheNiIhM7htOIjsRdrVRR7W6Yeey
	 o38ig5Qtbc7wg==
Date: Mon, 19 Apr 2021 09:21:05 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Rahul Singh <Rahul.Singh@arm.com>
cc: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
In-Reply-To: <279F74CA-647D-458B-97C0-968E1795E494@arm.com>
Message-ID: <alpine.DEB.2.21.2104190920160.4885@sstabellini-ThinkPad-T480s>
References: <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com> <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org> <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com> <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org> <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
 <78c30978-c3be-4357-fecc-5b2f24bf563f@xen.org> <348C921E-1150-4247-A693-1D81933FC3F7@arm.com> <996b5db1-da59-f03c-9e04-9ac283aa38f2@xen.org> <279F74CA-647D-458B-97C0-968E1795E494@arm.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1474068950-1618849267=:4885"

  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-1474068950-1618849267=:4885
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Mon, 19 Apr 2021, Rahul Singh wrote:
> Hi Julien,
> 
> > On 18 Apr 2021, at 6:48 pm, Julien Grall <julien@xen.org> wrote:
> > 
> > 
> > 
> > On 16/04/2021 17:41, Rahul Singh wrote:
> >> Hi Julien
> > 
> > Hi Rahul,
> > 
> >>> On 16 Apr 2021, at 5:08 pm, Julien Grall <julien@xen.org> wrote:
> >>> 
> >>> 
> >>> 
> >>> On 16/04/2021 17:05, Rahul Singh wrote:
> >>>>> On 16 Apr 2021, at 4:23 pm, Julien Grall <julien@xen.org> wrote:
> >>>>> 
> >>>>> 
> >>>>> 
> >>>>> On 16/04/2021 16:01, Rahul Singh wrote:
> >>>>>> Hi Julien,
> >>>>> 
> >>>>> Hi Rahul,
> >>>>> 
> >>>>>>> On 16 Apr 2021, at 3:35 pm, Julien Grall <julien@xen.org> wrote:
> >>>>>>> 
> >>>>>>> Hi,
> >>>>>>> 
> >>>>>>> On 16/04/2021 12:25, Rahul Singh wrote:
> >>>>>>>> Revert the code that associates the group pointer with the S2CR as this
> >>>>>>>> code causing an issue when the SMMU device has more than one master
> >>>>>>>> device.
> >>>>>>> 
> >>>>>>> It is not clear to me why this change was first added. Are we missing any feature when reverting it?
> >>>>>> This feature was added when we backported the code from Linux to fix the stream match conflict issue
> >>>>>> as part of commit "xen/arm: smmuv1: Intelligent SMR allocation”.
> >>>>>> This is an extra feature added to allocate IOMMU group based on stream-id. If two device has the
> >>>>>> same stream-id then we assign those devices to the same group.
> >>>>> 
> >>>>> If we revert the patch, then it would not be possible to use the SMMU if two devices use the same stream-id. Is that correct?
> >>>> No. If we revert the patch we can use the SMMU if two devices use the same stream-id without any issue but each device will be in a separate group.This is same behaviour before the code is merged.
> >>> 
> >>> Ok. So there is no change in behavior. Good. Can you propose a commit message clarifying that?
> >> Please have a look if it make sense.
> >> xen/arm: smmuv1: Revert associating the group pointer with the S2CR
> >> Revert the code that associates the group pointer with the S2CR as this
> >> code causing an issue when the SMMU device has more than one master
> >> device with same stream-id. This issue is introduced by the below commit:
> >> “0435784cc75dcfef3b5f59c29deb1dbb84265ddb:xen/arm: smmuv1: Intelligent SMR allocation”
> >>  Reverting the code will not impact to use of SMMU if two devices use the
> >> same stream-id but each device will be in a separate group. This is the same
> >> behaviour before the code is merged.
> > 
> > Look good to me. Is this patch to be applied on top of Stefano's series? If not, is there going to be more clash?
> > 
> 
> As per Stefano's mail he already tested his patch series on top of this patch. I think this patch has to merged before Stefano’s patch series 
> Let Stefano also confirm that.
> 
> I think there will be no more clashes.

Yes, this patch is to be committed *before* my series and I have already
tested this patch alone and with my series on top. Both cases work fine.
--8323329-1474068950-1618849267=:4885--


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 16:54:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 16:54:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113115.215538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYXA7-0006uW-Ip; Mon, 19 Apr 2021 16:54:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113115.215538; Mon, 19 Apr 2021 16: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 1lYXA7-0006uP-F0; Mon, 19 Apr 2021 16:54:15 +0000
Received: by outflank-mailman (input) for mailman id 113115;
 Mon, 19 Apr 2021 16:54: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 1lYXA5-0006uH-MA; Mon, 19 Apr 2021 16:54: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 1lYXA5-0005yO-CM; Mon, 19 Apr 2021 16:54: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 1lYXA4-0002h5-Ui; Mon, 19 Apr 2021 16:54:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYXA4-0002UM-UA; Mon, 19 Apr 2021 16:54:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=do1NtFZ3B2rry15Iak4M4Ay6z1TK3wFNpWSy9pDfS1k=; b=e0BpKPACR5yhp3NzE8fF2sTkFF
	EvfJg6f7mISqeWV3CKE4Ttpvt4/FSm7y8eCqgUlvYnbIXcXRspz0yzEgYkM4F5vQ69TNiL21JI2qI
	NbLqPC3yg3aoYwz4nWg/VlWHpe/E8XbjTb56ZvgE1kno+/JCxJtPnX31tztw1HGyx900=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161281-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161281: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-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-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-qemuu-debianhvm-amd64-xsm:migrate-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-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
X-Osstest-Versions-This:
    xen=05031fa87357fad155f659cfc2dcce6614834684
X-Osstest-Versions-That:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 16:54:12 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail like 161222
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161264
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161264
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161264
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161264
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161264
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161264
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161264
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161264
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161264
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161264
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161264
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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-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-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-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

version targeted for testing:
 xen                  05031fa87357fad155f659cfc2dcce6614834684
baseline version:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6

Last test of basis   161264  2021-04-18 14:12:52 Z    1 days
Testing same since   161281  2021-04-19 04:14:43 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquish <bertrand.marquis@arm.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                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   dd22a64de7..05031fa873  05031fa87357fad155f659cfc2dcce6614834684 -> master


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 17:44:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 17:44:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113134.215567 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYXx1-00032A-UI; Mon, 19 Apr 2021 17:44:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113134.215567; Mon, 19 Apr 2021 17: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 1lYXx1-000323-QY; Mon, 19 Apr 2021 17:44:47 +0000
Received: by outflank-mailman (input) for mailman id 113134;
 Mon, 19 Apr 2021 17: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 1lYXx0-00031v-W5; Mon, 19 Apr 2021 17: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 1lYXx0-0006nD-PL; Mon, 19 Apr 2021 17: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 1lYXx0-0004qY-I3; Mon, 19 Apr 2021 17:44:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYXx0-0002L6-HX; Mon, 19 Apr 2021 17: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=9to/Rc0yFkGhNgdlNaljet6Y5o37c2/KCGb5PJoQw6g=; b=4Z0XAAbi2bXUIgTqcjDDeqIsWw
	yHRHrf8Ly3Ai4rpGchUEqQ0kap+KEl82et0jsEXhpfqKjdXelzIomnigIDn4YBo39D+ca4PXt4TzH
	15ZslWR46Hh+ucwcxxo96hE9qBTtc6IUell/+rC5OlwYPKZxqyZpq8p/1qkL1ftfJDDM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161293-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161293: 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=a8c532be6a44c7faa54ac777a717f4aa65e3a806
X-Osstest-Versions-That:
    xen=b5b93627dd1c398a90b832af765b4720fc71814e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 17:44:46 +0000

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

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                  a8c532be6a44c7faa54ac777a717f4aa65e3a806
baseline version:
 xen                  b5b93627dd1c398a90b832af765b4720fc71814e

Last test of basis   161288  2021-04-19 11:00:27 Z    0 days
Testing same since   161293  2021-04-19 14:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Tamas K Lengyel <tamas@tklengyel.com>
  Tim Deegan <tim@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
   b5b93627dd..a8c532be6a  a8c532be6a44c7faa54ac777a717f4aa65e3a806 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 18:25:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 18:25:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113144.215581 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYYZx-0006da-Kb; Mon, 19 Apr 2021 18:25:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113144.215581; Mon, 19 Apr 2021 18: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 1lYYZx-0006dT-HS; Mon, 19 Apr 2021 18:25:01 +0000
Received: by outflank-mailman (input) for mailman id 113144;
 Mon, 19 Apr 2021 18:25:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aVye=JQ=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lYYZw-0006dN-0e
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 18:25:00 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 23c9dfd5-a75d-4d84-a10d-4850bc5870ca;
 Mon, 19 Apr 2021 18:24:55 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 339A861370;
 Mon, 19 Apr 2021 18:24: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: 23c9dfd5-a75d-4d84-a10d-4850bc5870ca
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618856694;
	bh=Ckd53ZRVukdXyTdKKqcxF2Vz6VC+57XJ03WIbdOLans=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gZYO1zESC3jx51q7Ap3VuMT0b9YR588QnWlz46FnHHo1F8R4EkS4PSLyI9N6Hg2Yz
	 FsMK4LPZm+LkEArElyUdvvQOm8Pq9VvAy+xIAYQGfY9p3kSqHjnAUt6njZ4Z7QJxSF
	 +8ATZWbeEnpkBC6FddArJGgJc6Z/4X6BreOiRpjIm7G+9yGLyYMUFyy6lUTerXlTHT
	 pYqqvwJV79ghf6mRviNwHSyPhqzHhVxsd45M9NMpqX1TLiH51ac6xh7ofHxvVdpE+q
	 TWlqUEg2ocOrfZnTZIQB3kSvrLfl53AYqkkRJ8mO1fsvYGMjNdYKkBmbNqIeNdsuwg
	 XDR3tlKpTlYKg==
Date: Mon, 19 Apr 2021 11:24:53 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
cc: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>, 
    Julien Grall <jgrall@amazon.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v4] xen/arm64: Place a speculation barrier following an
 ret instruction
In-Reply-To: <0433E681-2E59-42B2-88FB-94A56EF2E303@arm.com>
Message-ID: <alpine.DEB.2.21.2104191124440.4885@sstabellini-ThinkPad-T480s>
References: <20210418180334.7829-1-julien@xen.org> <0433E681-2E59-42B2-88FB-94A56EF2E303@arm.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 19 Apr 2021, Bertrand Marquis wrote:
> Hi Julien,
> 
> > On 18 Apr 2021, at 19:03, Julien Grall <julien@xen.org> wrote:
> > 
> > From: Julien Grall <jgrall@amazon.com>
> > 
> > Some CPUs can speculate past a RET instruction and potentially perform
> > speculative accesses to memory before processing the return.
> > 
> > There is no known gadget available after the RET instruction today.
> > However some of the registers (such as in check_pending_guest_serror())
> > may contain a value provided by the guest.
> > 
> > In order to harden the code, it would be better to add a speculation
> > barrier after each RET instruction. The performance impact is meant to
> > be negligeable as the speculation barrier is not meant to be
> > architecturally executed.
> > 
> > Rather than manually inserting a speculation barrier, use a macro
> > which overrides the mnemonic RET and replace with RET + SB. We need to
> > use the opcode for RET to prevent any macro recursion.
> > 
> > This patch is only covering the assembly code. C code would need to be
> > covered separately using the compiler support.
> > 
> > Note that the definition of the macros sb needs to be moved earlier in
> > asm-arm/macros.h so it can be used by the new macro.
> > 
> > This is part of the work to mitigate straight-line speculation.
> > 
> > Signed-off-by: Julien Grall <jgrall@amazon.com>
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

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


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 19:02:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 19:02:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113149.215594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYZ9d-0001hQ-JG; Mon, 19 Apr 2021 19:01:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113149.215594; Mon, 19 Apr 2021 19:01: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 1lYZ9d-0001hJ-GB; Mon, 19 Apr 2021 19:01:53 +0000
Received: by outflank-mailman (input) for mailman id 113149;
 Mon, 19 Apr 2021 19:01: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 1lYZ9b-0001hB-Li; Mon, 19 Apr 2021 19:01: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 1lYZ9b-0008Kr-HQ; Mon, 19 Apr 2021 19:01: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 1lYZ9b-0000EU-62; Mon, 19 Apr 2021 19:01:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYZ9b-0004Ti-5W; Mon, 19 Apr 2021 19:01: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=xTXb0FU6svDwlu04IZRDi9qtXHUlgqgL/5lNLg+QMxI=; b=KpZ2cKHCLkFQ6ycLv9lApovzXs
	yhcdepkqAp1fzuAIjFcp95ShTkjMpknAgH87nEb1ObwdxnRhn/7VT0lAoG9z4o59AkVFzb3IvDsEb
	YnniSw5tQJ6CXAqeEGHYbAF3kwRS0bed61d4FX40z0+YQ46oSkbTQAmYHuJdrRQnC8VY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161284-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161284: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-examine:memdisk-try-append:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=bf05bf16c76bb44ab5156223e1e58e26dfe30a88
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 19:01:51 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-examine      4 memdisk-try-append       fail REGR. vs. 152332

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

version targeted for testing:
 linux                bf05bf16c76bb44ab5156223e1e58e26dfe30a88
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  261 days
Failing since        152366  2020-08-01 20:49:34 Z  260 days  439 attempts
Testing same since   161284  2021-04-19 06:37:16 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1329253 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 20:35:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 20:35:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113164.215614 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYacD-0001Nk-Ph; Mon, 19 Apr 2021 20:35:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113164.215614; Mon, 19 Apr 2021 20: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 1lYacD-0001Nd-Mj; Mon, 19 Apr 2021 20:35:29 +0000
Received: by outflank-mailman (input) for mailman id 113164;
 Mon, 19 Apr 2021 20:35: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 1lYacC-0001NV-UD; Mon, 19 Apr 2021 20:35: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 1lYacC-0001Wd-Km; Mon, 19 Apr 2021 20:35: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 1lYacC-00055D-Dy; Mon, 19 Apr 2021 20:35:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYacC-0007gE-DN; Mon, 19 Apr 2021 20: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=PaTqCX89ywiSAV+EIwRttt/bUR0ZPoazY9R1oIoCQFg=; b=BkVa29s087QxJW6MZh02rG8vR1
	cPl6mRMoQmgJImyrdpA7VL4Cv2bd54xvFrooFs49gSBw+NJNWYJIPj1HFyfA6D++NhJHt8Mzrnrh3
	gcs6/8av9QFOGimq3XApDAgF1rYqGdq4/MI1ekTKePKul3Gflb0sASTutFBIs/MdHPoI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161294-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161294: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=b0bc49846c154b79243f39d461a4515804bcaf53
X-Osstest-Versions-That:
    xtf=2f655c0c74439805ce6dbc6fd1f2e7defdaf33e5
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 20:35:28 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  b0bc49846c154b79243f39d461a4515804bcaf53
baseline version:
 xtf                  2f655c0c74439805ce6dbc6fd1f2e7defdaf33e5

Last test of basis   161229  2021-04-17 10:33:36 Z    2 days
Testing same since   161294  2021-04-19 14:41:20 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
   2f655c0..b0bc498  b0bc49846c154b79243f39d461a4515804bcaf53 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 20:44:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 20:44:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113170.215629 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYakb-0002HF-Kh; Mon, 19 Apr 2021 20:44:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113170.215629; Mon, 19 Apr 2021 20: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 1lYakb-0002H8-HI; Mon, 19 Apr 2021 20:44:09 +0000
Received: by outflank-mailman (input) for mailman id 113170;
 Mon, 19 Apr 2021 20:44:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rQOg=JQ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lYakZ-0002H3-Ng
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 20:44:07 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ccbcec68-a49d-4072-a355-dcec347277ca;
 Mon, 19 Apr 2021 20:44:06 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id E524161104;
 Mon, 19 Apr 2021 20:44: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: ccbcec68-a49d-4072-a355-dcec347277ca
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618865045;
	bh=3m3lFg+7CrTJgU9IHDfJ4YqA/Dn5bG9FWVMD5FrUKY4=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=MDBJgDB5j4W5MX9rnasxo5ZovYtRzLaWDg8FkZ2qabfBW8FAcW7PN0ZyWZfQ8DGAo
	 bYLGwAryKjzHGRxKNrTfILehYFJUleLHcuWhJJGDLhhTggjYb9L1OoVf6ck8fbwwXU
	 04ti7rq1BPZxuZdVUfjiwU+zManH2EithFeAps3v5TbyHHrBUwewsigzq7enmgf/mK
	 KEaMjcpCK5dk2BSUKeeho9v69Kk76PBzEw/ZHRnSfwVNnAsOArxLQriZIRMNerl9ZC
	 UNJ8mqzk4Pf5RMnuSTPD/hNmiMNWoFGwbYj/tIB1qLupRv4gwDUfsKXVDZAy4mvVed
	 dNoMJwe3vs9Og==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Michael Brown <mbrown@fensystems.co.uk>,
	Paul Durrant <paul@xen.org>,
	"David S . Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 5.11 15/23] xen-netback: Check for hotplug-status existence before watching
Date: Mon, 19 Apr 2021 16:43:34 -0400
Message-Id: <20210419204343.6134-15-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210419204343.6134-1-sashal@kernel.org>
References: <20210419204343.6134-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Michael Brown <mbrown@fensystems.co.uk>

[ Upstream commit 2afeec08ab5c86ae21952151f726bfe184f6b23d ]

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/xen-netback/xenbus.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index 6f10e0998f1c..94d19158efc1 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -824,11 +824,15 @@ static void connect(struct backend_info *be)
 	xenvif_carrier_on(be->vif);
 
 	unregister_hotplug_status_watch(be);
-	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
-				   hotplug_status_changed,
-				   "%s/%s", dev->nodename, "hotplug-status");
-	if (!err)
+	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
+		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
+					   NULL, hotplug_status_changed,
+					   "%s/%s", dev->nodename,
+					   "hotplug-status");
+		if (err)
+			goto err;
 		be->have_hotplug_status_watch = 1;
+	}
 
 	netif_tx_wake_all_queues(be->vif->dev);
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 20:44:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 20:44:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113172.215642 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYal9-0002OI-Tx; Mon, 19 Apr 2021 20:44:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113172.215642; Mon, 19 Apr 2021 20: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 1lYal9-0002OA-QS; Mon, 19 Apr 2021 20:44:43 +0000
Received: by outflank-mailman (input) for mailman id 113172;
 Mon, 19 Apr 2021 20:44:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rQOg=JQ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lYal7-0002Nj-S9
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 20:44:41 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8de676fc-9445-413b-94ea-c8c1f56202ad;
 Mon, 19 Apr 2021 20:44:40 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 1426E613CD;
 Mon, 19 Apr 2021 20:44: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: 8de676fc-9445-413b-94ea-c8c1f56202ad
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618865080;
	bh=3m3lFg+7CrTJgU9IHDfJ4YqA/Dn5bG9FWVMD5FrUKY4=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=m102HFEubWW3ryNRgpffLrYoAwE94wVbM6k1dd5RUnYRsXz1GEBW4OAdbJTAOrVdS
	 nR9MW8zabxqkCJbpc2MBQ9kwFlNj2zNoTqy+l3wsYMhgFWJdpOkt/b5llTEIMuSXw/
	 /YFSrBHR+dQ5RCsFEoY+/+CTGiEc8QMLV8ASwCSDNyOf1/EjVRGq3ot7bO2wlb2WFW
	 GOgCvTTuaWfcMCUghJ6tWI8i8hoIlOraT00uhWMHHeBGP9o4LJZu9cI2Ju7IBfYSZH
	 bK+1TqE0jvvGrkyoeXaK0rWzeioNRDlDBEBy2uklDjEg9KKYnUv1sjVTd/4Gt0nEDx
	 u9fcSzEnP9aCw==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Michael Brown <mbrown@fensystems.co.uk>,
	Paul Durrant <paul@xen.org>,
	"David S . Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 5.10 13/21] xen-netback: Check for hotplug-status existence before watching
Date: Mon, 19 Apr 2021 16:44:11 -0400
Message-Id: <20210419204420.6375-13-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210419204420.6375-1-sashal@kernel.org>
References: <20210419204420.6375-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Michael Brown <mbrown@fensystems.co.uk>

[ Upstream commit 2afeec08ab5c86ae21952151f726bfe184f6b23d ]

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/xen-netback/xenbus.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index 6f10e0998f1c..94d19158efc1 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -824,11 +824,15 @@ static void connect(struct backend_info *be)
 	xenvif_carrier_on(be->vif);
 
 	unregister_hotplug_status_watch(be);
-	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
-				   hotplug_status_changed,
-				   "%s/%s", dev->nodename, "hotplug-status");
-	if (!err)
+	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
+		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
+					   NULL, hotplug_status_changed,
+					   "%s/%s", dev->nodename,
+					   "hotplug-status");
+		if (err)
+			goto err;
 		be->have_hotplug_status_watch = 1;
+	}
 
 	netif_tx_wake_all_queues(be->vif->dev);
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 20:45:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 20:45:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113176.215654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYalZ-0002Wy-6K; Mon, 19 Apr 2021 20:45:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113176.215654; Mon, 19 Apr 2021 20:45:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYalZ-0002Wr-33; Mon, 19 Apr 2021 20:45:09 +0000
Received: by outflank-mailman (input) for mailman id 113176;
 Mon, 19 Apr 2021 20:45:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rQOg=JQ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lYalX-0002Wm-52
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 20:45:07 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4e6e8aa3-7a56-4a18-8e3b-ea134e16b075;
 Mon, 19 Apr 2021 20:45:06 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id CADB0613C8;
 Mon, 19 Apr 2021 20:45: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: 4e6e8aa3-7a56-4a18-8e3b-ea134e16b075
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618865105;
	bh=hfnn5x2akktqak++VJChzBVIiGX8W28jFNoDTYZIixI=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=euNo6YjoIKZlJQSCNAw5YP6XXZlunL3mAbT+azAfUDunwxZbIegBWMqbzWMubo/FC
	 sEPQvq9fdWxQChgEBOEfLAh8G/2+W4DKvp/liXn+oYAzGGkwa/8TbW/gQdT1q7vh/x
	 CTMFNikx5arDZNj9GHiwVP5KNfHynfrQvPmUHoSn8HPL1g6bFN9xOdPnSrJY2Ktk44
	 1tcoQVhjix+veo4QzsNc/OalyLlW72agKi6gr4uJIUgCoM7TGW/OH8PK0WqBaYJXqH
	 6opAlMYG/+6f3a9AdV30bwq5MUakUN5nHca1QJlfShm39ie8FcZZwV2XEpX5mz1klL
	 EjMoGPQLBoDIA==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Michael Brown <mbrown@fensystems.co.uk>,
	Paul Durrant <paul@xen.org>,
	"David S . Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 5.4 07/14] xen-netback: Check for hotplug-status existence before watching
Date: Mon, 19 Apr 2021 16:44:47 -0400
Message-Id: <20210419204454.6601-7-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210419204454.6601-1-sashal@kernel.org>
References: <20210419204454.6601-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Michael Brown <mbrown@fensystems.co.uk>

[ Upstream commit 2afeec08ab5c86ae21952151f726bfe184f6b23d ]

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/xen-netback/xenbus.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index 9e61a6f29464..416305e6d093 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -979,11 +979,15 @@ static void connect(struct backend_info *be)
 	xenvif_carrier_on(be->vif);
 
 	unregister_hotplug_status_watch(be);
-	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
-				   hotplug_status_changed,
-				   "%s/%s", dev->nodename, "hotplug-status");
-	if (!err)
+	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
+		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
+					   NULL, hotplug_status_changed,
+					   "%s/%s", dev->nodename,
+					   "hotplug-status");
+		if (err)
+			goto err;
 		be->have_hotplug_status_watch = 1;
+	}
 
 	netif_tx_wake_all_queues(be->vif->dev);
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 20:45:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 20:45:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113181.215665 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYalu-0002dJ-G6; Mon, 19 Apr 2021 20:45:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113181.215665; Mon, 19 Apr 2021 20:45: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 1lYalu-0002dC-DD; Mon, 19 Apr 2021 20:45:30 +0000
Received: by outflank-mailman (input) for mailman id 113181;
 Mon, 19 Apr 2021 20:45:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rQOg=JQ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lYalt-0002d2-Qa
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 20:45:29 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3ac99ebf-ac69-4a4a-8ab9-f42df83f3816;
 Mon, 19 Apr 2021 20:45:29 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 7EE98613D5;
 Mon, 19 Apr 2021 20:45: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: 3ac99ebf-ac69-4a4a-8ab9-f42df83f3816
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618865128;
	bh=YW3vYxnGOhg3+Kycggdg534bAnAV6eoJFWmNIQVXieA=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=K9TYCxGLIY+pqb0D1V8jokw0yBXWMpGJ5NottRjQZ+TP1MUOsLvjEXGPYZmZ/Y2aO
	 vtlWC9kud8Eo9kj9U1mg5DMyy2nymBOEDYuuFBLvQhLutFuk1InPQuIu8lAvUFGwhx
	 RAzEW+Gh2t2ksNQAiEl3M9paAVBaNI+1OtOJQ8Y0TQw70rR8rUPFEvAdtU4O1m6fuV
	 LkaLeBtVUG3d/ksLcVP4ia6zVsXoJJwumhjApKwvf5FEgu5pS40nPFCyx4lk/M7/dE
	 Bj253pCFE2UHDbrTwvK2sJPhvUCzRDa4+0U511gFkFfWTxhFK/O97Qv6OXJVfBynSB
	 rbSt7k4x3BJJw==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Michael Brown <mbrown@fensystems.co.uk>,
	Paul Durrant <paul@xen.org>,
	"David S . Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 4.19 07/12] xen-netback: Check for hotplug-status existence before watching
Date: Mon, 19 Apr 2021 16:45:12 -0400
Message-Id: <20210419204517.6770-7-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210419204517.6770-1-sashal@kernel.org>
References: <20210419204517.6770-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Michael Brown <mbrown@fensystems.co.uk>

[ Upstream commit 2afeec08ab5c86ae21952151f726bfe184f6b23d ]

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/xen-netback/xenbus.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index 107bbd4ae825..78c56149559c 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -1043,11 +1043,15 @@ static void connect(struct backend_info *be)
 	xenvif_carrier_on(be->vif);
 
 	unregister_hotplug_status_watch(be);
-	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
-				   hotplug_status_changed,
-				   "%s/%s", dev->nodename, "hotplug-status");
-	if (!err)
+	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
+		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
+					   NULL, hotplug_status_changed,
+					   "%s/%s", dev->nodename,
+					   "hotplug-status");
+		if (err)
+			goto err;
 		be->have_hotplug_status_watch = 1;
+	}
 
 	netif_tx_wake_all_queues(be->vif->dev);
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 20:45:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 20:45:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113184.215678 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYamH-0002jv-RZ; Mon, 19 Apr 2021 20:45:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113184.215678; Mon, 19 Apr 2021 20: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 1lYamH-0002jo-Mw; Mon, 19 Apr 2021 20:45:53 +0000
Received: by outflank-mailman (input) for mailman id 113184;
 Mon, 19 Apr 2021 20:45:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rQOg=JQ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lYamG-0002ix-9W
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 20:45:52 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 77a93e31-99ba-441c-a5cc-b12d0767a4e0;
 Mon, 19 Apr 2021 20:45:47 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id BE3A1613E0;
 Mon, 19 Apr 2021 20:45: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: 77a93e31-99ba-441c-a5cc-b12d0767a4e0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618865146;
	bh=g2eIx8Az/Bb0zYkng6cw8qgVnkYdIcpHR3F4HJvjseM=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=HVHoUgIOgeMzoFRTP7nT9R0wGfeCVoxdQeItsOJAtZNHYbIi7xlNA/FHrmNfRVWUi
	 HjLV4f6uvuMS+IklEY9DjbuaKyiLNiC3d9uDaJ3gHGGV6aeJIqN/mtDCviDYlyugKE
	 opcJiU75hDfOa6jS3lCXRD0/Qkw9uAWteFEA65Re1BYQdT7GbRfTtHK7unZ6gCeEj6
	 kkrDg9j9LIpbP9Gct3goLjAsWkrIm1kIyAkkxvV0D9usPJ6n8VwtRsu5HI6jbduWrI
	 Q7cb2ysVBSJrnU0N9HtBi65D6KscDDxu2Sb7GCX8LgInfIBYveehqUnv8bejxvMcnH
	 dwIjtz323nCCg==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Michael Brown <mbrown@fensystems.co.uk>,
	Paul Durrant <paul@xen.org>,
	"David S . Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 4.14 06/11] xen-netback: Check for hotplug-status existence before watching
Date: Mon, 19 Apr 2021 16:45:31 -0400
Message-Id: <20210419204536.6924-6-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210419204536.6924-1-sashal@kernel.org>
References: <20210419204536.6924-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Michael Brown <mbrown@fensystems.co.uk>

[ Upstream commit 2afeec08ab5c86ae21952151f726bfe184f6b23d ]

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/xen-netback/xenbus.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index 910322b442bd..9092b55e087f 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -1043,11 +1043,15 @@ static void connect(struct backend_info *be)
 	xenvif_carrier_on(be->vif);
 
 	unregister_hotplug_status_watch(be);
-	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
-				   hotplug_status_changed,
-				   "%s/%s", dev->nodename, "hotplug-status");
-	if (!err)
+	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
+		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
+					   NULL, hotplug_status_changed,
+					   "%s/%s", dev->nodename,
+					   "hotplug-status");
+		if (err)
+			goto err;
 		be->have_hotplug_status_watch = 1;
+	}
 
 	netif_tx_wake_all_queues(be->vif->dev);
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 20:46:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 20:46:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113187.215690 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYamT-0002oD-38; Mon, 19 Apr 2021 20:46:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113187.215690; Mon, 19 Apr 2021 20:46: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 1lYamS-0002o5-Vf; Mon, 19 Apr 2021 20:46:04 +0000
Received: by outflank-mailman (input) for mailman id 113187;
 Mon, 19 Apr 2021 20:46:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rQOg=JQ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lYamR-0002nc-8H
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 20:46:03 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 19ef78b4-582f-4b26-92b6-cdb25fe2a616;
 Mon, 19 Apr 2021 20:46:02 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id D70AC613BC;
 Mon, 19 Apr 2021 20:46: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: 19ef78b4-582f-4b26-92b6-cdb25fe2a616
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618865161;
	bh=84fEXRoir9ZD96qpuD0HzoQzv/MQfRsgEFL6wgpLaVs=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=bovD9TbPz4fToghmomQ8kN8P2iR20mw7lUdwxCWVz3uMRga7LcjffHIVDy1+kWfH6
	 mTXuUOa8c/PJ2NfddB2moA1i1I/o9KC1ynwohPsM1z50EulRuU+QTPzUzF/8aMaYsj
	 NFf4XI550QfRmnlgVVFz33ICh04xuXCoxzfB9SOcpsq43U37ogbRiqHYeOjmqQGK/u
	 Jso9SgebJfKW6QnrzT8mu89ju0mYtPxRN7eoF2OuORy+AtcywXGsGc0AZszM2AQaKa
	 xhPW7CS2Vggab9ln7S4GdHyFdpzV7GpF/iZSxZwdVO3dNkNbwYzldyFIUcGxRW6is5
	 BWYEm/sRZlgtA==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Michael Brown <mbrown@fensystems.co.uk>,
	Paul Durrant <paul@xen.org>,
	"David S . Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 4.9 4/8] xen-netback: Check for hotplug-status existence before watching
Date: Mon, 19 Apr 2021 16:45:50 -0400
Message-Id: <20210419204554.7071-4-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210419204554.7071-1-sashal@kernel.org>
References: <20210419204554.7071-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Michael Brown <mbrown@fensystems.co.uk>

[ Upstream commit 2afeec08ab5c86ae21952151f726bfe184f6b23d ]

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/xen-netback/xenbus.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index 78788402edd8..e6646c8a7bdb 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -1040,11 +1040,15 @@ static void connect(struct backend_info *be)
 	xenvif_carrier_on(be->vif);
 
 	unregister_hotplug_status_watch(be);
-	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
-				   hotplug_status_changed,
-				   "%s/%s", dev->nodename, "hotplug-status");
-	if (!err)
+	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
+		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
+					   NULL, hotplug_status_changed,
+					   "%s/%s", dev->nodename,
+					   "hotplug-status");
+		if (err)
+			goto err;
 		be->have_hotplug_status_watch = 1;
+	}
 
 	netif_tx_wake_all_queues(be->vif->dev);
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 20:46:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 20:46:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113190.215702 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYame-0002v1-Ha; Mon, 19 Apr 2021 20:46:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113190.215702; Mon, 19 Apr 2021 20:46:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYame-0002uu-Dw; Mon, 19 Apr 2021 20:46:16 +0000
Received: by outflank-mailman (input) for mailman id 113190;
 Mon, 19 Apr 2021 20:46:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rQOg=JQ=kernel.org=sashal@srs-us1.protection.inumbo.net>)
 id 1lYamd-0002ud-QF
 for xen-devel@lists.xenproject.org; Mon, 19 Apr 2021 20:46:15 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 75fcf60e-9d07-45da-8452-3c063aef1731;
 Mon, 19 Apr 2021 20:46:15 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 73F13613F9;
 Mon, 19 Apr 2021 20:46: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: 75fcf60e-9d07-45da-8452-3c063aef1731
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618865174;
	bh=LNmDORbHzwjYQgKNtkXmiz0lTOoSO02E+FDmaI6F82M=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=Wb6AqxaCi4a8rPeH6RaL8l0Q1iSlsGQVUYMsbsdtkoF1mdPVzBXldMgxrMFN5+RAO
	 /y2gY3dm4LicU3kpTVwEWBn6gzX1aye6brxacDp8mmdVistyzW67ez7lo27kMfyfNw
	 3LS/gicY7NAB8VxmL9F/qyyLZ3P5JnJNzDK1j0s2ezJK4SjkDkpfp719xHp5wVnKBb
	 4kpWlnFcVFx0hl+1Y6KybMT1QKVRCKDWQRE4Q1rjVwG8bzNXRohCmF6JBzv1+mB8MX
	 deI4Yh3+qmaCeS/bRgNtvvGagK6NKS5K2/jI3kb7XMYj5USZ1uy4p1qXqdTDG0Ql6q
	 szIPIPRAtItbw==
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org,
	stable@vger.kernel.org
Cc: Michael Brown <mbrown@fensystems.co.uk>,
	Paul Durrant <paul@xen.org>,
	"David S . Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 4.4 3/7] xen-netback: Check for hotplug-status existence before watching
Date: Mon, 19 Apr 2021 16:46:04 -0400
Message-Id: <20210419204608.7191-3-sashal@kernel.org>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20210419204608.7191-1-sashal@kernel.org>
References: <20210419204608.7191-1-sashal@kernel.org>
MIME-Version: 1.0
X-stable: review
X-Patchwork-Hint: Ignore
Content-Transfer-Encoding: 8bit

From: Michael Brown <mbrown@fensystems.co.uk>

[ Upstream commit 2afeec08ab5c86ae21952151f726bfe184f6b23d ]

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/xen-netback/xenbus.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/xen-netback/xenbus.c b/drivers/net/xen-netback/xenbus.c
index 21c8e2720b40..683fd8560f2b 100644
--- a/drivers/net/xen-netback/xenbus.c
+++ b/drivers/net/xen-netback/xenbus.c
@@ -849,11 +849,15 @@ static void connect(struct backend_info *be)
 	xenvif_carrier_on(be->vif);
 
 	unregister_hotplug_status_watch(be);
-	err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch, NULL,
-				   hotplug_status_changed,
-				   "%s/%s", dev->nodename, "hotplug-status");
-	if (!err)
+	if (xenbus_exists(XBT_NIL, dev->nodename, "hotplug-status")) {
+		err = xenbus_watch_pathfmt(dev, &be->hotplug_status_watch,
+					   NULL, hotplug_status_changed,
+					   "%s/%s", dev->nodename,
+					   "hotplug-status");
+		if (err)
+			goto err;
 		be->have_hotplug_status_watch = 1;
+	}
 
 	netif_tx_wake_all_queues(be->vif->dev);
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Apr 19 21:29:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 21:29:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113211.215720 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYbSV-0006g5-Oi; Mon, 19 Apr 2021 21:29:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113211.215720; Mon, 19 Apr 2021 21:29:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYbSV-0006fy-La; Mon, 19 Apr 2021 21:29:31 +0000
Received: by outflank-mailman (input) for mailman id 113211;
 Mon, 19 Apr 2021 21:29: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 1lYbSV-0006fq-1Y; Mon, 19 Apr 2021 21:29: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 1lYbSU-0002Pj-Pu; Mon, 19 Apr 2021 21:29: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 1lYbSU-0000dr-Hv; Mon, 19 Apr 2021 21:29:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYbSU-0008Ay-HO; Mon, 19 Apr 2021 21:29: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=3CQadhMXX+zrzfUplCoASAkPOW2QYcBB9lb0gGz5WpM=; b=Qbc5xM8rT4vGjRY0+M/POiAjkV
	4xkkRoR/Ql5MigFTs6Kco4nnXalCXE/6WnT6/JUYhw2AXim3zRViC3dW/79zAd2jne8GjQp/1gJ7C
	4wZ6agRvE7mjqZFDMANBLn1pf2/C0P6ElkNiAkkQ4+2vzA2Wn/04oL2kypH2qeLbbc98=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161291-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161291: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=8c75a0720800e934c29aae75e3fb1cb42c0d0728
X-Osstest-Versions-That:
    ovmf=99e7e48cc7117c37fc1c08a741872d0875595796
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 21:29:30 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 8c75a0720800e934c29aae75e3fb1cb42c0d0728
baseline version:
 ovmf                 99e7e48cc7117c37fc1c08a741872d0875595796

Last test of basis   161204  2021-04-16 12:04:01 Z    3 days
Testing same since   161291  2021-04-19 13:43:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Joey Gouly <joey.gouly@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
   99e7e48cc7..8c75a07208  8c75a0720800e934c29aae75e3fb1cb42c0d0728 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Apr 19 22:09:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 19 Apr 2021 22:09:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113223.215737 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYc4w-0001oh-TP; Mon, 19 Apr 2021 22:09:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113223.215737; Mon, 19 Apr 2021 22:09:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYc4w-0001oa-QO; Mon, 19 Apr 2021 22:09:14 +0000
Received: by outflank-mailman (input) for mailman id 113223;
 Mon, 19 Apr 2021 22:09:13 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYc4v-0001oS-Pc; Mon, 19 Apr 2021 22:09:13 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYc4v-00038O-Ij; Mon, 19 Apr 2021 22:09:13 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYc4v-0002BP-95; Mon, 19 Apr 2021 22:09:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYc4v-0005gx-8c; Mon, 19 Apr 2021 22:09: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=PzjganPCdF4vYEWDD0ZMMbLjL7fHQP9JSbJIA3SzNCk=; b=lagAoQTzBopZCqX9pLKm9YBDxI
	MKeh+E42rNT1RwyTenGA9RQcPi+7mOj12bQvLDRsuRNEE2c83fDGzKvedY3s84CzGDPeqngHqsXwT
	vtQZSbhR+uUHzRGYTefKnfR2s0WQyhmYM/1qQkw7Mb2g43iBMGlGqLSHxeazh7P7njpo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161286-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161286: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:build-armhf:xen-build:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-armhf-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 19 Apr 2021 22:09:13 +0000

flight 161286 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161286/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf                   6 xen-build                fail REGR. vs. 159418
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161261 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161261

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-cubietruck  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 161261 like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 161261 like 159418
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 161261 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 161261 never pass
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 161261 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 161261 never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check fail in 161261 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 161261 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 161261 never pass
 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 161261 never pass
 test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 161261 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 161261 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-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

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   62 days
Failing since        160128  2021-03-18 14:36:18 Z   32 days   42 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   30 days   40 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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                                                  fail    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          blocked 
 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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          blocked 
 test-amd64-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-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                                  blocked 
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  blocked 
 test-armhf-armhf-xl-cubietruck                               blocked 
 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-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     blocked 
 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                                blocked 
 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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     blocked 
 test-arm64-arm64-xl-seattle                                  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-armhf-armhf-xl-vhd                                      blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 02:12:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 02:12:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113255.215776 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYfri-0004xA-GF; Tue, 20 Apr 2021 02:11:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113255.215776; Tue, 20 Apr 2021 02: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 1lYfri-0004x3-Ce; Tue, 20 Apr 2021 02:11:50 +0000
Received: by outflank-mailman (input) for mailman id 113255;
 Tue, 20 Apr 2021 02:11: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 1lYfrg-0004wv-VF; Tue, 20 Apr 2021 02:11: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 1lYfrg-0005sa-Qu; Tue, 20 Apr 2021 02:11: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 1lYfrg-00015l-H0; Tue, 20 Apr 2021 02:11:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYfrg-0001xP-GU; Tue, 20 Apr 2021 02:11: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=yrS5odk+db28DbsqbwA8c1CQJHQuYE4dICKKCxEYbEo=; b=GKJsUvWHplscK/JC0kgmH0qiD2
	WXauSMVJVN2HwPhfOoKa/5DBNOwiykMTD9ohVuGMgapzVCj9Ng7LF3lmG8PyKv20qTEE9PyfiSoln
	t8szPmgLmlgrWgkQUt83KNNO5zwf27tqLPcwtIes+bBL/5naTcS5zkDdYJ1VAw4GJGVk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161290-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161290: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=8fe9f1f891eff4e37f82622b7480ee748bf4af74
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 02:11:48 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

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

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 161276 like 152631
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 161276 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 161276 never pass
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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

version targeted for testing:
 qemuu                8fe9f1f891eff4e37f82622b7480ee748bf4af74
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  242 days
Failing since        152659  2020-08-21 14:07:39 Z  241 days  447 attempts
Testing same since   161147  2021-04-14 22:08:02 Z    5 days    8 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-armhf-armhf-xl-vhd                                      fail    


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 03:35:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 03:35:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113264.215798 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYhAS-0003au-Tq; Tue, 20 Apr 2021 03:35:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113264.215798; Tue, 20 Apr 2021 03:35:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYhAS-0003an-QX; Tue, 20 Apr 2021 03:35:16 +0000
Received: by outflank-mailman (input) for mailman id 113264;
 Tue, 20 Apr 2021 03:35:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Qt+d=JR=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lYhAQ-0003ag-T1
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 03:35:15 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 194c755f-38c6-460f-b3ed-eebf57910933;
 Tue, 20 Apr 2021 03:35: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: 194c755f-38c6-460f-b3ed-eebf57910933
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618889713;
  h=from:to:cc:subject:date:message-id:mime-version;
  bh=4OCw2BlETeIJ5/zMETI/C9VjE7n4iGuT4GJGVZlI2tU=;
  b=EcBWB95qQ7w2BmyLoB6v9nsIFL0m2a9LVkimZr27TgUjluhTxg8AWfeI
   vbw+3z5UPLsL3U/k8DvqDmGScTShStb+hYQ/5oUyOvbmYCm1xTsodgy/E
   cNAf0t+2lZDT/X7rmSZQZe1dx5zWHZpoM1+ksQr+pWZJz6tw+r7eqwV0N
   w=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: feFMM1VAyrKGKMq/I/3hGcUuM6DYGTxTonCWKap2CE2QC5mu7bltxyxCPER9cU60UT1pGEmhBU
 mdIeDTseJKrnUTUdtwd7XtwI7x9wjSOm00T5g/VUSIrH6H/su3BK3pcos1ftp/b5RIvKPT00oB
 R3MZ8Up4grBpW39oKUCZdI8nBf3KnOTPhaIGSZprMlXOnEHuoJQnd5POAjVjN+LkxnLaPAQsO/
 SlauEB2IG5V5brf1ghYDp1ivo0XYuQhzyHxB8RVXvtmQlV21POJbwmxSD23t3DCjAoWfHhkGIS
 8jw=
X-SBRS: 5.1
X-MesageID: 42068993
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:/M1IuqmuRAaPF6ULGJ/OBpfkkrzpDfPfimdD5ilNYBxZY6Wkvu
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKMaVI3DYCDNvmy0IIZ+qbbz2jGIIVyZysdx94
 dFN5J/Btr5EERgga/BijWQPt48zLC8n5yAqvzZyx5WIz1CS6Yl1AthDxbeL0sefnglObMcNL
 6xovVKvCChf3N/VLXdOlAgU/LYr9PG0LLKCCR2ZCIP0wWFgTO25LOSKXHxsis2aD9Bzawv9m
 LIiWXCl8Cemsq21wPG0Cvr54lW8eGL9vJ4GMeOhsIJQw+c7jqAWYIJYdy/lQFwms6DwhIAkN
 7AoxAvVv4DlE/5TyWOjjbGnyXl2DYqwXf+xVGfmmuLm72GeBsKT/BvqKgcXhzF61cxnNwU6t
 M740up86B5IDmFvCPh68PGXxtn/3DE0UYKoKoooFF0Fa49AYUh1LA3zQduP7orWB/e0sQBFt
 JjCcnNjcwmDG+yXjTikUREhOC3Um9bJGb/fmEy/va7/hJxh35Dw04R1KUk7ws93aN4cZVC6u
 jeW54Y741mf4sTZaJ5Mu8LXdG6PGzLWQ7NK2KfOz3cZds6B04=
X-IronPort-AV: E=Sophos;i="5.82,235,1613451600"; 
   d="scan'208";a="42068993"
From: Igor Druzhinin <igor.druzhinin@citrix.com>
To: <qemu-devel@nongnu.org>, <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <anthony.perard@citrix.com>, <paul@xen.org>,
	<mst@redhat.com>, <marcel.apfelbaum@gmail.com>, <pbonzini@redhat.com>,
	<richard.henderson@linaro.org>, <ehabkost@redhat.com>, Igor Druzhinin
	<igor.druzhinin@citrix.com>
Subject: [PATCH] xen-mapcache: avoid a race on memory map while using MAP_FIXED
Date: Tue, 20 Apr 2021 04:35:02 +0100
Message-ID: <1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com>
X-Mailer: git-send-email 2.7.4
MIME-Version: 1.0
Content-Type: text/plain

When we're replacing the existing mapping there is possibility of a race
on memory map with other threads doing mmap operations - the address being
unmapped/re-mapped could be occupied by another thread in between.

Linux mmap man page recommends keeping the existing mappings in place to
reserve the place and instead utilize the fact that the next mmap operation
with MAP_FIXED flag passed will implicitly destroy the existing mappings
behind the chosen address. This behavior is guaranteed by POSIX / BSD and
therefore is portable.

Note that it wouldn't make the replacement atomic for parallel accesses to
the replaced region - those might still fail with SIGBUS due to
xenforeignmemory_map not being atomic. So we're still not expecting those.

Tested-by: Anthony PERARD <anthony.perard@citrix.com>
Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
---
 hw/i386/xen/xen-mapcache.c | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/hw/i386/xen/xen-mapcache.c b/hw/i386/xen/xen-mapcache.c
index 5b120ed..e82b7dc 100644
--- a/hw/i386/xen/xen-mapcache.c
+++ b/hw/i386/xen/xen-mapcache.c
@@ -171,7 +171,20 @@ static void xen_remap_bucket(MapCacheEntry *entry,
         if (!(entry->flags & XEN_MAPCACHE_ENTRY_DUMMY)) {
             ram_block_notify_remove(entry->vaddr_base, entry->size);
         }
-        if (munmap(entry->vaddr_base, entry->size) != 0) {
+
+        /*
+         * If an entry is being replaced by another mapping and we're using
+         * MAP_FIXED flag for it - there is possibility of a race for vaddr
+         * address with another thread doing an mmap call itself
+         * (see man 2 mmap). To avoid that we skip explicit unmapping here
+         * and allow the kernel to destroy the previous mappings by replacing
+         * them in mmap call later.
+         *
+         * Non-identical replacements are not allowed therefore.
+         */
+        assert(!vaddr || (entry->vaddr_base == vaddr && entry->size == size));
+
+        if (!vaddr && munmap(entry->vaddr_base, entry->size) != 0) {
             perror("unmap fails");
             exit(-1);
         }
-- 
2.7.4



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 03:39:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 03:39:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113269.215809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYhEy-0003oL-Fk; Tue, 20 Apr 2021 03:39:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113269.215809; Tue, 20 Apr 2021 03:39: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 1lYhEy-0003oE-Co; Tue, 20 Apr 2021 03:39:56 +0000
Resent-Date: Tue, 20 Apr 2021 03:39:56 +0000
Resent-Message-Id: <E1lYhEy-0003oE-Co@lists.xenproject.org>
Received: by outflank-mailman (input) for mailman id 113269;
 Tue, 20 Apr 2021 03:39:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6lN=JR=patchew.org=no-reply@srs-us1.protection.inumbo.net>)
 id 1lYhEy-0003o9-2u
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 03:39:56 +0000
Received: from sender4-of-o53.zoho.com (unknown [136.143.188.53])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f4f18e9d-6f80-4657-8471-ea9f6300e638;
 Tue, 20 Apr 2021 03:39:54 +0000 (UTC)
Received: from [172.17.0.3] (23.253.156.214 [23.253.156.214]) by
 mx.zohomail.com with SMTPS id 1618889985395467.22472703895255;
 Mon, 19 Apr 2021 20:39:45 -0700 (PDT)
Resent-From: 
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f4f18e9d-6f80-4657-8471-ea9f6300e638
ARC-Seal: i=1; a=rsa-sha256; t=1618889987; cv=none; 
	d=zohomail.com; s=zohoarc; 
	b=QIvzL7usUtL4dhzHiGEA89NB6uW9/CAjwXCsJ0uPg34vtTBsZNO22e0mo0TpcVihcLwFztF0XTlm1XJhbymki0Kj7knkssuNQgzw0DxiE9EzCSleSNRJcqy6K6vN4tyTT3g2hIvsr+GXYhETrKahWZMiNr3FL1oAMXRg7ytnvVI=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; 
	t=1618889987; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:Reply-To:Subject:To; 
	bh=k/i9pMyzbbL66W8AobDSTWTw23Y5fGWmoXJcFgFc2gg=; 
	b=AVnZji1QLw9DS+HfY73wOiA+jmIgvAXaqR/OxXNhM7BJDS08ZSfz48a+AGoPqSto9OS3KKsH6QRMiZhfA2tCdh9hGRBQ8o/gWHbcBJaCjcebHuaVNPGs8Wg2cWNPGS5bp0owbhSAjCL4HdU+xzLwL6UfDaqeX66qX3zqMqI2TRM=
ARC-Authentication-Results: i=1; mx.zohomail.com;
	spf=pass  smtp.mailfrom=no-reply@patchew.org;
	dmarc=pass header.from=<no-reply@patchew.org> header.from=<no-reply@patchew.org>
In-Reply-To: <1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com>
Reply-To: <qemu-devel@nongnu.org>
Subject: Re: [PATCH] xen-mapcache: avoid a race on memory map while using MAP_FIXED
Message-ID: <161888998361.15979.8661085658302494664@72b6d80f974b>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
From: no-reply@patchew.org
To: qemu-devel@nongnu.org
Cc: qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, sstabellini@kernel.org, anthony.perard@citrix.com, paul@xen.org, mst@redhat.com, marcel.apfelbaum@gmail.com, pbonzini@redhat.com, richard.henderson@linaro.org, ehabkost@redhat.com, igor.druzhinin@citrix.com
Date: Mon, 19 Apr 2021 20:39:45 -0700 (PDT)
X-ZohoMailClient: External

UGF0Y2hldyBVUkw6IGh0dHBzOi8vcGF0Y2hldy5vcmcvUUVNVS8xNjE4ODg5NzAyLTEzMTA0LTEt
Z2l0LXNlbmQtZW1haWwtaWdvci5kcnV6aGluaW5AY2l0cml4LmNvbS8KCgoKSGksCgpUaGlzIHNl
cmllcyBzZWVtcyB0byBoYXZlIHNvbWUgY29kaW5nIHN0eWxlIHByb2JsZW1zLiBTZWUgb3V0cHV0
IGJlbG93IGZvcgptb3JlIGluZm9ybWF0aW9uOgoKVHlwZTogc2VyaWVzCk1lc3NhZ2UtaWQ6IDE2
MTg4ODk3MDItMTMxMDQtMS1naXQtc2VuZC1lbWFpbC1pZ29yLmRydXpoaW5pbkBjaXRyaXguY29t
ClN1YmplY3Q6IFtQQVRDSF0geGVuLW1hcGNhY2hlOiBhdm9pZCBhIHJhY2Ugb24gbWVtb3J5IG1h
cCB3aGlsZSB1c2luZyBNQVBfRklYRUQKCj09PSBURVNUIFNDUklQVCBCRUdJTiA9PT0KIyEvYmlu
L2Jhc2gKZ2l0IHJldi1wYXJzZSBiYXNlID4gL2Rldi9udWxsIHx8IGV4aXQgMApnaXQgY29uZmln
IC0tbG9jYWwgZGlmZi5yZW5hbWVsaW1pdCAwCmdpdCBjb25maWcgLS1sb2NhbCBkaWZmLnJlbmFt
ZXMgVHJ1ZQpnaXQgY29uZmlnIC0tbG9jYWwgZGlmZi5hbGdvcml0aG0gaGlzdG9ncmFtCi4vc2Ny
aXB0cy9jaGVja3BhdGNoLnBsIC0tbWFpbGJhY2sgYmFzZS4uCj09PSBURVNUIFNDUklQVCBFTkQg
PT09CgpVcGRhdGluZyAzYzhjZjVhOWMyMWZmODc4MjE2NGQxZGVmN2Y0NGJkODg4NzEzMzg0CkZy
b20gaHR0cHM6Ly9naXRodWIuY29tL3BhdGNoZXctcHJvamVjdC9xZW11CiAqIFtuZXcgdGFnXSAg
ICAgICAgIHBhdGNoZXcvMTYxODg4OTcwMi0xMzEwNC0xLWdpdC1zZW5kLWVtYWlsLWlnb3IuZHJ1
emhpbmluQGNpdHJpeC5jb20gLT4gcGF0Y2hldy8xNjE4ODg5NzAyLTEzMTA0LTEtZ2l0LXNlbmQt
ZW1haWwtaWdvci5kcnV6aGluaW5AY2l0cml4LmNvbQpTd2l0Y2hlZCB0byBhIG5ldyBicmFuY2gg
J3Rlc3QnCjMxMDI1MTkgeGVuLW1hcGNhY2hlOiBhdm9pZCBhIHJhY2Ugb24gbWVtb3J5IG1hcCB3
aGlsZSB1c2luZyBNQVBfRklYRUQKCj09PSBPVVRQVVQgQkVHSU4gPT09CkVSUk9SOiBBdXRob3Ig
ZW1haWwgYWRkcmVzcyBpcyBtYW5nbGVkIGJ5IHRoZSBtYWlsaW5nIGxpc3QKIzI6IApBdXRob3I6
IElnb3IgRHJ1emhpbmluIHZpYSA8cWVtdS1kZXZlbEBub25nbnUub3JnPgoKdG90YWw6IDEgZXJy
b3JzLCAwIHdhcm5pbmdzLCAyMSBsaW5lcyBjaGVja2VkCgpDb21taXQgMzEwMjUxOTlhMWI0ICh4
ZW4tbWFwY2FjaGU6IGF2b2lkIGEgcmFjZSBvbiBtZW1vcnkgbWFwIHdoaWxlIHVzaW5nIE1BUF9G
SVhFRCkgaGFzIHN0eWxlIHByb2JsZW1zLCBwbGVhc2UgcmV2aWV3LiAgSWYgYW55IG9mIHRoZXNl
IGVycm9ycwphcmUgZmFsc2UgcG9zaXRpdmVzIHJlcG9ydCB0aGVtIHRvIHRoZSBtYWludGFpbmVy
LCBzZWUKQ0hFQ0tQQVRDSCBpbiBNQUlOVEFJTkVSUy4KPT09IE9VVFBVVCBFTkQgPT09CgpUZXN0
IGNvbW1hbmQgZXhpdGVkIHdpdGggY29kZTogMQoKClRoZSBmdWxsIGxvZyBpcyBhdmFpbGFibGUg
YXQKaHR0cDovL3BhdGNoZXcub3JnL2xvZ3MvMTYxODg4OTcwMi0xMzEwNC0xLWdpdC1zZW5kLWVt
YWlsLWlnb3IuZHJ1emhpbmluQGNpdHJpeC5jb20vdGVzdGluZy5jaGVja3BhdGNoLz90eXBlPW1l
c3NhZ2UuCi0tLQpFbWFpbCBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBQYXRjaGV3IFtodHRw
czovL3BhdGNoZXcub3JnL10uClBsZWFzZSBzZW5kIHlvdXIgZmVlZGJhY2sgdG8gcGF0Y2hldy1k
ZXZlbEByZWRoYXQuY29t


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 04:55:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 04:55:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113282.215827 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYiQD-0002YQ-D9; Tue, 20 Apr 2021 04:55:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113282.215827; Tue, 20 Apr 2021 04:55: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 1lYiQD-0002YJ-9x; Tue, 20 Apr 2021 04:55:37 +0000
Received: by outflank-mailman (input) for mailman id 113282;
 Tue, 20 Apr 2021 04:55: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 1lYiQC-0002YB-2h; Tue, 20 Apr 2021 04:55: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 1lYiQB-0000ND-Ol; Tue, 20 Apr 2021 04:55: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 1lYiQB-00083E-EX; Tue, 20 Apr 2021 04:55:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYiQB-0000fn-E0; Tue, 20 Apr 2021 04:55: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=C5QCit5+h0G5fH5U1XZAa5d2bojInyCnBVKjIhZrgqU=; b=KJ2McPACQm+2z4T/yaCmH4vVpV
	Y185VNPRxJKkdwmppMrXNxGCU6pDKlUXHR7AIqS5lBXdBp+ayqIXyvYRSrkR/UXTVnaisWrPpsXrm
	A/9AdqnOMP6/TflUsHsLdLMCYqiUukZPf7v8qhXStkUzXfQzehjBoY7K3Zpwi4k193Dg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161301-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161301: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=64138c95db5a7a3e4768d8a01ba71dc3475e6524
X-Osstest-Versions-That:
    ovmf=8c75a0720800e934c29aae75e3fb1cb42c0d0728
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 04:55:35 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 64138c95db5a7a3e4768d8a01ba71dc3475e6524
baseline version:
 ovmf                 8c75a0720800e934c29aae75e3fb1cb42c0d0728

Last test of basis   161291  2021-04-19 13:43:27 Z    0 days
Testing same since   161301  2021-04-19 21:40:07 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

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


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

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

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

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


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   8c75a07208..64138c95db  64138c95db5a7a3e4768d8a01ba71dc3475e6524 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 05:05:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 05:05:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113288.215843 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYiZG-0003pH-CK; Tue, 20 Apr 2021 05:04:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113288.215843; Tue, 20 Apr 2021 05:04:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYiZG-0003pA-7i; Tue, 20 Apr 2021 05:04:58 +0000
Received: by outflank-mailman (input) for mailman id 113288;
 Tue, 20 Apr 2021 05:04: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 1lYiZE-0003p2-PE; Tue, 20 Apr 2021 05:04: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 1lYiZE-0000rg-Fl; Tue, 20 Apr 2021 05:04: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 1lYiZE-0008KJ-9w; Tue, 20 Apr 2021 05:04:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYiZE-0007Is-9R; Tue, 20 Apr 2021 05:04: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=KhL8j7fyf4EUnX9vW10Zm5QIzbL3MJ3kBn5Cu5Q9040=; b=0BNELUD7Qlf+nuMdz7WwDA1uZ+
	xrCZjpekNqlVFoJbQz3m1iRUNp5u3qLkJG1a76vIelraktlQaOpsu+3Lw0wJnpZC1qg2v08oog/0R
	KCM/rTIe6AyTYjyIP0n6DHWeUpuTDrKz/B8EIkwTMT7Pa+GvmAH/jNk36FZ68DcAlL58=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161302-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161302: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=0395a690c921cb195619b689ba0c0b687531c64c
X-Osstest-Versions-That:
    xtf=b0bc49846c154b79243f39d461a4515804bcaf53
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 05:04:56 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  0395a690c921cb195619b689ba0c0b687531c64c
baseline version:
 xtf                  b0bc49846c154b79243f39d461a4515804bcaf53

Last test of basis   161294  2021-04-19 14:41:20 Z    0 days
Testing same since   161302  2021-04-19 21:40:10 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
   b0bc498..0395a69  0395a690c921cb195619b689ba0c0b687531c64c -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:04:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:04:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113301.215870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkQH-00065A-7l; Tue, 20 Apr 2021 07:03:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113301.215870; Tue, 20 Apr 2021 07:03:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkQH-000653-4h; Tue, 20 Apr 2021 07:03:49 +0000
Received: by outflank-mailman (input) for mailman id 113301;
 Tue, 20 Apr 2021 07:03:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=N909=JR=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lYkQF-00064i-Uq
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:03:48 +0000
Received: from mail-wr1-x42c.google.com (unknown [2a00:1450:4864:20::42c])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 94e5059b-bb5d-426e-90f4-d7db59f96b73;
 Tue, 20 Apr 2021 07:03:46 +0000 (UTC)
Received: by mail-wr1-x42c.google.com with SMTP id r7so24407014wrm.1
 for <xen-devel@lists.xenproject.org>; Tue, 20 Apr 2021 00:03:46 -0700 (PDT)
Received: from [192.168.1.186]
 (host86-180-176-157.range86-180.btcentralplus.com. [86.180.176.157])
 by smtp.gmail.com with ESMTPSA id n9sm25761566wrq.86.2021.04.20.00.03.44
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 20 Apr 2021 00:03:45 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94e5059b-bb5d-426e-90f4-d7db59f96b73
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:cc:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=z0qlnC9FQLAYaUfbzjwveKndRqxMBnneIPTllI02ItA=;
        b=hCCPYMXGdUsCAS6vyVjzwk4D/dBhqlKrvFqivZmP6ldu0r5XUM9lfCzwo+R0aqTra4
         Fp1SbxXbpiYGidu1zBLZJ3uo1eKKsUylIVVz1mVX4OVkQcKWMN2W7SVmtElqLgEWRa5h
         FDgBoPKwIwp5++UNE2GKjQcuLTzlrVry+ptJFl4GBOtwZnHf3T9d+l8dB+lsDoIwBsop
         9D0uj8TGXhOf6ytsyqHgh4neU6YJFJFctT2ZFU/VKYv6mrpiZrPEY4KdOqloO1JgikiM
         o2zsjFMKpm+xWR/h9bcVgQXfik1OwsCjxNYjqwgotz1fON1m2qKLwEf7BhTtu26Odae8
         li7g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:cc:references
         :message-id:date:user-agent:mime-version:in-reply-to
         :content-language:content-transfer-encoding;
        bh=z0qlnC9FQLAYaUfbzjwveKndRqxMBnneIPTllI02ItA=;
        b=n0PLaYpy0BYbuZDUxuvGqJNK93YB9kbKCcG5+m3CxNzNRNTJxY+7RxK6vNDWnNc9K3
         o8+ze+1uCy3i48paDoXvb6BjAo/sLq5hU9F1rPHKAjOvn/AFyYTgoqROqrPvRXXDpabr
         zfsnS7Ki2S7bLXtjaTo53HSjnI4ThC+iGYVt2b0xwb9+6mQnSwxU48pUmUzclRXc+0ME
         Bax+IIDxVAfJCMJyH1HZqGQ8FM3OUTAK+V0hItkV062fxepVzF0z6F9Fc4CFCpBtWOWl
         ke50J0VPDLoW0ULzU/G+cOptMG737cxmgegfOMVdgk4/GOpVtkOaOCKJKo/ksXB8z/J1
         PNug==
X-Gm-Message-State: AOAM531iHJxUJrPJSX0rYj0R6+2JAfQg3fx14Fy1U+gx3rlStEmfEuxW
	52fpsh7r7c6tLuA37BTVa6Y=
X-Google-Smtp-Source: ABdhPJwZlSRYmjIazA6Om37onLUUl6ivvSf7z8zRum+4Pjxaj9lJNZiWZW4i5AzFsakd4iL8sDqYag==
X-Received: by 2002:adf:e483:: with SMTP id i3mr19436550wrm.286.1618902225921;
        Tue, 20 Apr 2021 00:03:45 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH] xen-mapcache: avoid a race on memory map while using
 MAP_FIXED
To: Igor Druzhinin <igor.druzhinin@citrix.com>, qemu-devel@nongnu.org,
 xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, anthony.perard@citrix.com, mst@redhat.com,
 marcel.apfelbaum@gmail.com, pbonzini@redhat.com,
 richard.henderson@linaro.org, ehabkost@redhat.com
References: <1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com>
Message-ID: <37547f5e-5b75-d31a-f973-f8ccedbe4167@xen.org>
Date: Tue, 20 Apr 2021 08:03:44 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 20/04/2021 04:35, Igor Druzhinin wrote:
> When we're replacing the existing mapping there is possibility of a race
> on memory map with other threads doing mmap operations - the address being
> unmapped/re-mapped could be occupied by another thread in between.
> 
> Linux mmap man page recommends keeping the existing mappings in place to
> reserve the place and instead utilize the fact that the next mmap operation
> with MAP_FIXED flag passed will implicitly destroy the existing mappings
> behind the chosen address. This behavior is guaranteed by POSIX / BSD and
> therefore is portable.
> 
> Note that it wouldn't make the replacement atomic for parallel accesses to
> the replaced region - those might still fail with SIGBUS due to
> xenforeignmemory_map not being atomic. So we're still not expecting those.
> 
> Tested-by: Anthony PERARD <anthony.perard@citrix.com>
> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>

Reviewed-by: Paul Durrant <paul@xen.org>

> ---
>   hw/i386/xen/xen-mapcache.c | 15 ++++++++++++++-
>   1 file changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/i386/xen/xen-mapcache.c b/hw/i386/xen/xen-mapcache.c
> index 5b120ed..e82b7dc 100644
> --- a/hw/i386/xen/xen-mapcache.c
> +++ b/hw/i386/xen/xen-mapcache.c
> @@ -171,7 +171,20 @@ static void xen_remap_bucket(MapCacheEntry *entry,
>           if (!(entry->flags & XEN_MAPCACHE_ENTRY_DUMMY)) {
>               ram_block_notify_remove(entry->vaddr_base, entry->size);
>           }
> -        if (munmap(entry->vaddr_base, entry->size) != 0) {
> +
> +        /*
> +         * If an entry is being replaced by another mapping and we're using
> +         * MAP_FIXED flag for it - there is possibility of a race for vaddr
> +         * address with another thread doing an mmap call itself
> +         * (see man 2 mmap). To avoid that we skip explicit unmapping here
> +         * and allow the kernel to destroy the previous mappings by replacing
> +         * them in mmap call later.
> +         *
> +         * Non-identical replacements are not allowed therefore.
> +         */
> +        assert(!vaddr || (entry->vaddr_base == vaddr && entry->size == size));
> +
> +        if (!vaddr && munmap(entry->vaddr_base, entry->size) != 0) {
>               perror("unmap fails");
>               exit(-1);
>           }
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113307.215888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVS-0006KL-6n; Tue, 20 Apr 2021 07:09:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113307.215888; Tue, 20 Apr 2021 07:09: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 1lYkVS-0006K8-0q; Tue, 20 Apr 2021 07:09:10 +0000
Received: by outflank-mailman (input) for mailman id 113307;
 Tue, 20 Apr 2021 07:09:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVQ-0006Ja-SC
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:08 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 2ebb22f9-8efc-4ea3-be65-27adb0a2ee55;
 Tue, 20 Apr 2021 07:09:05 +0000 (UTC)
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 0C3AB1435;
 Tue, 20 Apr 2021 00:09:05 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id EBA9B3F85F;
 Tue, 20 Apr 2021 00:09: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: 2ebb22f9-8efc-4ea3-be65-27adb0a2ee55
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 0/9] xen/arm64: Get rid of READ/WRITE_SYSREG32
Date: Tue, 20 Apr 2021 09:08:44 +0200
Message-Id: <20210420070853.8918-1-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The purpose of this patch series is to remove 32bit helper
macros READ/WRITE_SYSREG32 on arm64 as the idea of them is
not following the latest ARMv8 specification and mrs/msr instructions
are expecting 64bit values.
According to ARM DDI 0487G.a all the AArch64 system registers
are 64bit wide even though many of them have upper 32bit reserved.
This does not mean that in the newer versions of ARMv8 or in the next
architecture, some of the sysregs will get widen.
Also when dealing with system registers we should use register_t
type.

This patch series removes the use of READ/WRITE_SYSREG32
and replaces these calls with READ/WRITE_SYSREG. The change was
splited into several small patches to make the review proces easier.

This patch series focuses on removing READ/WRITE_SYSREG32.
There are still some AArch64 system registers defined as 32bit like cpsr
that should be changed later on. They were not changed as they did not appear
inside READ/WRITE_SYSREG32. The next thing to do is to also get rid of
vreg_emulate_sysreg32.

Michal Orzel (9):
  arm64/vfp: Get rid of READ/WRITE_SYSREG32
  arm/domain: Get rid of READ/WRITE_SYSREG32
  arm/gic: Get rid of READ/WRITE_SYSREG32
  arm/p2m: Get rid of READ/WRITE_SYSREG32
  arm/mm: Get rid of READ/WRITE_SYSREG32
  arm/page: Get rid of READ/WRITE_SYSREG32
  arm/time,vtimer: Get rid of READ/WRITE_SYSREG32
  arm: Change type of hsr to register_t
  xen/arm64: Remove READ/WRITE_SYSREG32 helper macros

 xen/arch/arm/arm64/entry.S            |  2 +-
 xen/arch/arm/arm64/traps.c            |  2 +-
 xen/arch/arm/arm64/vfp.c              | 12 ++--
 xen/arch/arm/arm64/vsysreg.c          |  3 +-
 xen/arch/arm/domain.c                 | 20 +++---
 xen/arch/arm/gic-v3-lpi.c             |  2 +-
 xen/arch/arm/gic-v3.c                 | 96 ++++++++++++++-------------
 xen/arch/arm/mm.c                     |  2 +-
 xen/arch/arm/p2m.c                    |  8 +--
 xen/arch/arm/time.c                   | 28 ++++----
 xen/arch/arm/traps.c                  | 24 ++++---
 xen/arch/arm/vcpreg.c                 | 29 ++++++--
 xen/arch/arm/vtimer.c                 | 10 +--
 xen/include/asm-arm/arm32/processor.h |  2 +-
 xen/include/asm-arm/arm64/processor.h |  5 +-
 xen/include/asm-arm/arm64/sysregs.h   |  5 --
 xen/include/asm-arm/arm64/vfp.h       |  6 +-
 xen/include/asm-arm/domain.h          |  6 +-
 xen/include/asm-arm/gic.h             |  6 +-
 xen/include/asm-arm/hsr.h             | 34 +++++++++-
 xen/include/asm-arm/page.h            |  4 +-
 21 files changed, 179 insertions(+), 127 deletions(-)

-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113306.215882 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVR-0006Jq-SI; Tue, 20 Apr 2021 07:09:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113306.215882; Tue, 20 Apr 2021 07:09: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 1lYkVR-0006Jj-P4; Tue, 20 Apr 2021 07:09:09 +0000
Received: by outflank-mailman (input) for mailman id 113306;
 Tue, 20 Apr 2021 07:09:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVQ-0006JZ-O2
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:08 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id ddd762a6-cff2-4cb9-bc60-b9d5982ce356;
 Tue, 20 Apr 2021 07:09:06 +0000 (UTC)
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 6AEB21474;
 Tue, 20 Apr 2021 00:09:06 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 512883F85F;
 Tue, 20 Apr 2021 00:09: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: ddd762a6-cff2-4cb9-bc60-b9d5982ce356
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 1/9] arm64/vfp: Get rid of READ/WRITE_SYSREG32
Date: Tue, 20 Apr 2021 09:08:45 +0200
Message-Id: <20210420070853.8918-2-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of FPCR, FPSR, FPEXC32_EL2 to register_t.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/arm64/vfp.c        | 12 ++++++------
 xen/include/asm-arm/arm64/vfp.h |  6 +++---
 2 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/xen/arch/arm/arm64/vfp.c b/xen/arch/arm/arm64/vfp.c
index 999a0d58a5..47885e76ba 100644
--- a/xen/arch/arm/arm64/vfp.c
+++ b/xen/arch/arm/arm64/vfp.c
@@ -26,10 +26,10 @@ void vfp_save_state(struct vcpu *v)
                  "stp q30, q31, [%1, #16 * 30]\n\t"
                  : "=Q" (*v->arch.vfp.fpregs) : "r" (v->arch.vfp.fpregs));
 
-    v->arch.vfp.fpsr = READ_SYSREG32(FPSR);
-    v->arch.vfp.fpcr = READ_SYSREG32(FPCR);
+    v->arch.vfp.fpsr = READ_SYSREG(FPSR);
+    v->arch.vfp.fpcr = READ_SYSREG(FPCR);
     if ( is_32bit_domain(v->domain) )
-        v->arch.vfp.fpexc32_el2 = READ_SYSREG32(FPEXC32_EL2);
+        v->arch.vfp.fpexc32_el2 = READ_SYSREG(FPEXC32_EL2);
 }
 
 void vfp_restore_state(struct vcpu *v)
@@ -55,8 +55,8 @@ void vfp_restore_state(struct vcpu *v)
                  "ldp q30, q31, [%1, #16 * 30]\n\t"
                  : : "Q" (*v->arch.vfp.fpregs), "r" (v->arch.vfp.fpregs));
 
-    WRITE_SYSREG32(v->arch.vfp.fpsr, FPSR);
-    WRITE_SYSREG32(v->arch.vfp.fpcr, FPCR);
+    WRITE_SYSREG(v->arch.vfp.fpsr, FPSR);
+    WRITE_SYSREG(v->arch.vfp.fpcr, FPCR);
     if ( is_32bit_domain(v->domain) )
-        WRITE_SYSREG32(v->arch.vfp.fpexc32_el2, FPEXC32_EL2);
+        WRITE_SYSREG(v->arch.vfp.fpexc32_el2, FPEXC32_EL2);
 }
diff --git a/xen/include/asm-arm/arm64/vfp.h b/xen/include/asm-arm/arm64/vfp.h
index 6ab5d36c6c..e6e8c363bc 100644
--- a/xen/include/asm-arm/arm64/vfp.h
+++ b/xen/include/asm-arm/arm64/vfp.h
@@ -7,9 +7,9 @@
 struct vfp_state
 {
     uint64_t fpregs[64] __vfp_aligned;
-    uint32_t fpcr;
-    uint32_t fpexc32_el2;
-    uint32_t fpsr;
+    register_t fpcr;
+    register_t fpexc32_el2;
+    register_t fpsr;
 };
 
 #endif /* _ARM_ARM64_VFP_H */
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113308.215906 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVX-0006OF-Cf; Tue, 20 Apr 2021 07:09:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113308.215906; Tue, 20 Apr 2021 07:09: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 1lYkVX-0006O6-9J; Tue, 20 Apr 2021 07:09:15 +0000
Received: by outflank-mailman (input) for mailman id 113308;
 Tue, 20 Apr 2021 07:09:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVV-0006Ja-NO
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:13 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id aa01ec39-8aab-4e59-b44c-5e2fe6ec18a6;
 Tue, 20 Apr 2021 07:09:08 +0000 (UTC)
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 CA30814BF;
 Tue, 20 Apr 2021 00:09:07 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B348E3F85F;
 Tue, 20 Apr 2021 00:09: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: aa01ec39-8aab-4e59-b44c-5e2fe6ec18a6
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 2/9] arm/domain: Get rid of READ/WRITE_SYSREG32
Date: Tue, 20 Apr 2021 09:08:46 +0200
Message-Id: <20210420070853.8918-3-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of registers: actlr, cntkctl to register_t.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/domain.c        | 20 ++++++++++----------
 xen/include/asm-arm/domain.h |  4 ++--
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index bdd3d3e5b5..c021a03c61 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -113,13 +113,13 @@ static void ctxt_switch_from(struct vcpu *p)
     p->arch.tpidr_el1 = READ_SYSREG(TPIDR_EL1);
 
     /* Arch timer */
-    p->arch.cntkctl = READ_SYSREG32(CNTKCTL_EL1);
+    p->arch.cntkctl = READ_SYSREG(CNTKCTL_EL1);
     virt_timer_save(p);
 
     if ( is_32bit_domain(p->domain) && cpu_has_thumbee )
     {
-        p->arch.teecr = READ_SYSREG32(TEECR32_EL1);
-        p->arch.teehbr = READ_SYSREG32(TEEHBR32_EL1);
+        p->arch.teecr = READ_SYSREG(TEECR32_EL1);
+        p->arch.teehbr = READ_SYSREG(TEEHBR32_EL1);
     }
 
 #ifdef CONFIG_ARM_32
@@ -175,7 +175,7 @@ static void ctxt_switch_from(struct vcpu *p)
 
 static void ctxt_switch_to(struct vcpu *n)
 {
-    uint32_t vpidr;
+    register_t vpidr;
 
     /* When the idle VCPU is running, Xen will always stay in hypervisor
      * mode. Therefore we don't need to restore the context of an idle VCPU.
@@ -183,8 +183,8 @@ static void ctxt_switch_to(struct vcpu *n)
     if ( is_idle_vcpu(n) )
         return;
 
-    vpidr = READ_SYSREG32(MIDR_EL1);
-    WRITE_SYSREG32(vpidr, VPIDR_EL2);
+    vpidr = READ_SYSREG(MIDR_EL1);
+    WRITE_SYSREG(vpidr, VPIDR_EL2);
     WRITE_SYSREG(n->arch.vmpidr, VMPIDR_EL2);
 
     /* VGIC */
@@ -257,8 +257,8 @@ static void ctxt_switch_to(struct vcpu *n)
 
     if ( is_32bit_domain(n->domain) && cpu_has_thumbee )
     {
-        WRITE_SYSREG32(n->arch.teecr, TEECR32_EL1);
-        WRITE_SYSREG32(n->arch.teehbr, TEEHBR32_EL1);
+        WRITE_SYSREG(n->arch.teecr, TEECR32_EL1);
+        WRITE_SYSREG(n->arch.teehbr, TEEHBR32_EL1);
     }
 
 #ifdef CONFIG_ARM_32
@@ -274,7 +274,7 @@ static void ctxt_switch_to(struct vcpu *n)
 
     /* This is could trigger an hardware interrupt from the virtual
      * timer. The interrupt needs to be injected into the guest. */
-    WRITE_SYSREG32(n->arch.cntkctl, CNTKCTL_EL1);
+    WRITE_SYSREG(n->arch.cntkctl, CNTKCTL_EL1);
     virt_timer_restore(n);
 }
 
@@ -330,7 +330,7 @@ static void schedule_tail(struct vcpu *prev)
 
 static void continue_new_vcpu(struct vcpu *prev)
 {
-    current->arch.actlr = READ_SYSREG32(ACTLR_EL1);
+    current->arch.actlr = READ_SYSREG(ACTLR_EL1);
     processor_vcpu_initialise(current);
 
     schedule_tail(prev);
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 0a74df9931..2d4f38c669 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -156,7 +156,7 @@ struct arch_vcpu
 
     /* Control Registers */
     register_t sctlr;
-    uint32_t actlr;
+    register_t actlr;
     uint32_t cpacr;
 
     uint32_t contextidr;
@@ -190,7 +190,7 @@ struct arch_vcpu
     struct vgic_cpu vgic;
 
     /* Timer registers  */
-    uint32_t cntkctl;
+    register_t cntkctl;
 
     struct vtimer phys_timer;
     struct vtimer virt_timer;
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113309.215918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVb-0006Sp-SI; Tue, 20 Apr 2021 07:09:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113309.215918; Tue, 20 Apr 2021 07: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 1lYkVb-0006Sg-OA; Tue, 20 Apr 2021 07:09:19 +0000
Received: by outflank-mailman (input) for mailman id 113309;
 Tue, 20 Apr 2021 07:09:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVa-0006RY-Ef
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:18 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 827889b3-273a-4a00-a68b-589de8dfa309;
 Tue, 20 Apr 2021 07:09:16 +0000 (UTC)
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 711D11474;
 Tue, 20 Apr 2021 00:09:16 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3619B3F85F;
 Tue, 20 Apr 2021 00:09: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: 827889b3-273a-4a00-a68b-589de8dfa309
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 8/9] arm: Change type of hsr to register_t
Date: Tue, 20 Apr 2021 09:08:52 +0200
Message-Id: <20210420070853.8918-9-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of hsr to register_t.
When on AArch64 add 32bit RES0 members to structures inside hsr union.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/arm64/entry.S            |  2 +-
 xen/arch/arm/arm64/traps.c            |  2 +-
 xen/arch/arm/arm64/vsysreg.c          |  3 ++-
 xen/arch/arm/traps.c                  | 20 +++++++++-------
 xen/arch/arm/vcpreg.c                 | 13 +++++-----
 xen/include/asm-arm/arm32/processor.h |  2 +-
 xen/include/asm-arm/arm64/processor.h |  5 ++--
 xen/include/asm-arm/hsr.h             | 34 ++++++++++++++++++++++++++-
 8 files changed, 59 insertions(+), 22 deletions(-)

diff --git a/xen/arch/arm/arm64/entry.S b/xen/arch/arm/arm64/entry.S
index ab9a65fc14..218b063c97 100644
--- a/xen/arch/arm/arm64/entry.S
+++ b/xen/arch/arm/arm64/entry.S
@@ -155,7 +155,7 @@
         add     x21, sp, #UREGS_CPSR
         mrs     x22, spsr_el2
         mrs     x23, esr_el2
-        stp     w22, w23, [x21]
+        stp     x22, x23, [x21]
 
         .endm
 
diff --git a/xen/arch/arm/arm64/traps.c b/xen/arch/arm/arm64/traps.c
index babfc1d884..9113a15c7a 100644
--- a/xen/arch/arm/arm64/traps.c
+++ b/xen/arch/arm/arm64/traps.c
@@ -36,7 +36,7 @@ void do_bad_mode(struct cpu_user_regs *regs, int reason)
     union hsr hsr = { .bits = regs->hsr };
 
     printk("Bad mode in %s handler detected\n", handler[reason]);
-    printk("ESR=0x%08"PRIx32":  EC=%"PRIx32", IL=%"PRIx32", ISS=%"PRIx32"\n",
+    printk("ESR=%#"PRIregister":  EC=%"PRIx32", IL=%"PRIx32", ISS=%"PRIx32"\n",
            hsr.bits, hsr.ec, hsr.len, hsr.iss);
 
     local_irq_disable();
diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c
index 41f18612c6..3c10d464e7 100644
--- a/xen/arch/arm/arm64/vsysreg.c
+++ b/xen/arch/arm/arm64/vsysreg.c
@@ -368,7 +368,8 @@ void do_sysreg(struct cpu_user_regs *regs,
                      sysreg.op2,
                      sysreg.read ? "=>" : "<=",
                      sysreg.reg, regs->pc);
-            gdprintk(XENLOG_ERR, "unhandled 64-bit sysreg access %#x\n",
+            gdprintk(XENLOG_ERR, "unhandled 64-bit sysreg access"
+                     " %#"PRIregister"\n",
                      hsr.bits & HSR_SYSREG_REGS_MASK);
             inject_undef_exception(regs, hsr);
             return;
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index e7384381cc..db15a2c647 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -546,7 +546,7 @@ void inject_undef64_exception(struct cpu_user_regs *regs, int instr_len)
         PSR_IRQ_MASK | PSR_DBG_MASK;
     regs->pc = handler;
 
-    WRITE_SYSREG32(esr.bits, ESR_EL1);
+    WRITE_SYSREG(esr.bits, ESR_EL1);
 }
 
 /* Inject an abort exception into a 64 bit guest */
@@ -580,7 +580,7 @@ static void inject_abt64_exception(struct cpu_user_regs *regs,
     regs->pc = handler;
 
     WRITE_SYSREG(addr, FAR_EL1);
-    WRITE_SYSREG32(esr.bits, ESR_EL1);
+    WRITE_SYSREG(esr.bits, ESR_EL1);
 }
 
 static void inject_dabt64_exception(struct cpu_user_regs *regs,
@@ -919,7 +919,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
     printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
     printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
     printk("\n");
-    printk("   ESR_EL2: %08"PRIx32"\n", regs->hsr);
+    printk("   ESR_EL2: %"PRIregister"\n", regs->hsr);
     printk(" HPFAR_EL2: %"PRIregister"\n", READ_SYSREG(HPFAR_EL2));
 
 #ifdef CONFIG_ARM_32
@@ -2004,13 +2004,15 @@ static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs,
 
         break;
     default:
-        gprintk(XENLOG_WARNING, "Unsupported FSC: HSR=%#x DFSC=%#x\n",
+        gprintk(XENLOG_WARNING, "Unsupported FSC:"
+                " HSR=%#"PRIregister" DFSC=%#x\n",
                 hsr.bits, xabt.fsc);
     }
 
 inject_abt:
-    gdprintk(XENLOG_DEBUG, "HSR=0x%x pc=%#"PRIregister" gva=%#"PRIvaddr
-             " gpa=%#"PRIpaddr"\n", hsr.bits, regs->pc, gva, gpa);
+    gdprintk(XENLOG_DEBUG, "HSR=%#"PRIregister" pc=%#"PRIregister""
+             " gva=%#"PRIvaddr" gpa=%#"PRIpaddr"\n",
+             hsr.bits, regs->pc, gva, gpa);
     if ( is_data )
         inject_dabt_exception(regs, gva, hsr.len);
     else
@@ -2204,7 +2206,8 @@ void do_trap_guest_sync(struct cpu_user_regs *regs)
 
     default:
         gprintk(XENLOG_WARNING,
-                "Unknown Guest Trap. HSR=0x%x EC=0x%x IL=%x Syndrome=0x%"PRIx32"\n",
+                "Unknown Guest Trap. HSR=%#"PRIregister" EC=0x%x IL=%x"
+                " Syndrome=0x%"PRIx32"\n",
                 hsr.bits, hsr.ec, hsr.len, hsr.iss);
         inject_undef_exception(regs, hsr);
     }
@@ -2242,7 +2245,8 @@ void do_trap_hyp_sync(struct cpu_user_regs *regs)
         break;
     }
     default:
-        printk("Hypervisor Trap. HSR=0x%x EC=0x%x IL=%x Syndrome=0x%"PRIx32"\n",
+        printk("Hypervisor Trap. HSR=%#"PRIregister" EC=0x%x IL=%x"
+               " Syndrome=0x%"PRIx32"\n",
                hsr.bits, hsr.ec, hsr.len, hsr.iss);
         do_unexpected_trap("Hypervisor", regs);
     }
diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c
index 55351fc087..c7f516ee0a 100644
--- a/xen/arch/arm/vcpreg.c
+++ b/xen/arch/arm/vcpreg.c
@@ -385,7 +385,7 @@ void do_cp15_32(struct cpu_user_regs *regs, const union hsr hsr)
                  "%s p15, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
                  cp32.read ? "mrc" : "mcr",
                  cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
-        gdprintk(XENLOG_ERR, "unhandled 32-bit CP15 access %#x\n",
+        gdprintk(XENLOG_ERR, "unhandled 32-bit CP15 access %#"PRIregister"\n",
                  hsr.bits & HSR_CP32_REGS_MASK);
         inject_undef_exception(regs, hsr);
         return;
@@ -454,7 +454,8 @@ void do_cp15_64(struct cpu_user_regs *regs, const union hsr hsr)
                      "%s p15, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
                      cp64.read ? "mrrc" : "mcrr",
                      cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
-            gdprintk(XENLOG_ERR, "unhandled 64-bit CP15 access %#x\n",
+            gdprintk(XENLOG_ERR, "unhandled 64-bit CP15 access"
+                     " %#"PRIregister"\n",
                      hsr.bits & HSR_CP64_REGS_MASK);
             inject_undef_exception(regs, hsr);
             return;
@@ -585,7 +586,7 @@ void do_cp14_32(struct cpu_user_regs *regs, const union hsr hsr)
                  "%s p14, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
                   cp32.read ? "mrc" : "mcr",
                   cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
-        gdprintk(XENLOG_ERR, "unhandled 32-bit cp14 access %#x\n",
+        gdprintk(XENLOG_ERR, "unhandled 32-bit cp14 access %#"PRIregister"\n",
                  hsr.bits & HSR_CP32_REGS_MASK);
         inject_undef_exception(regs, hsr);
         return;
@@ -627,7 +628,7 @@ void do_cp14_64(struct cpu_user_regs *regs, const union hsr hsr)
              "%s p14, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
              cp64.read ? "mrrc" : "mcrr",
              cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
-    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 access %#x\n",
+    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 access %#"PRIregister"\n",
              hsr.bits & HSR_CP64_REGS_MASK);
     inject_undef_exception(regs, hsr);
 }
@@ -658,7 +659,7 @@ void do_cp14_dbg(struct cpu_user_regs *regs, const union hsr hsr)
              "%s p14, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
              cp64.read ? "mrrc" : "mcrr",
              cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
-    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 DBG access %#x\n",
+    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 DBG access %#"PRIregister"\n",
              hsr.bits & HSR_CP64_REGS_MASK);
 
     inject_undef_exception(regs, hsr);
@@ -692,7 +693,7 @@ void do_cp10(struct cpu_user_regs *regs, const union hsr hsr)
                  "%s p10, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
                  cp32.read ? "mrc" : "mcr",
                  cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
-        gdprintk(XENLOG_ERR, "unhandled 32-bit CP10 access %#x\n",
+        gdprintk(XENLOG_ERR, "unhandled 32-bit CP10 access %#"PRIregister"\n",
                  hsr.bits & HSR_CP32_REGS_MASK);
         inject_undef_exception(regs, hsr);
         return;
diff --git a/xen/include/asm-arm/arm32/processor.h b/xen/include/asm-arm/arm32/processor.h
index 4e679f3273..395ce10692 100644
--- a/xen/include/asm-arm/arm32/processor.h
+++ b/xen/include/asm-arm/arm32/processor.h
@@ -37,7 +37,7 @@ struct cpu_user_regs
         uint32_t pc, pc32;
     };
     uint32_t cpsr; /* Return mode */
-    uint32_t hsr;  /* Exception Syndrome */
+    register_t hsr;  /* Exception Syndrome */
 
     /* Outer guest frame only from here on... */
 
diff --git a/xen/include/asm-arm/arm64/processor.h b/xen/include/asm-arm/arm64/processor.h
index 81dfc5e615..40f628d216 100644
--- a/xen/include/asm-arm/arm64/processor.h
+++ b/xen/include/asm-arm/arm64/processor.h
@@ -64,8 +64,9 @@ struct cpu_user_regs
     /* Return address and mode */
     __DECL_REG(pc,           pc32);             /* ELR_EL2 */
     uint32_t cpsr;                              /* SPSR_EL2 */
-    uint32_t hsr;                               /* ESR_EL2 */
+    register_t hsr;                             /* ESR_EL2 */
 
+    register_t pad1; /* Doubleword-align the user half of the frame */
     /* Outer guest frame only from here on... */
 
     union {
@@ -73,8 +74,6 @@ struct cpu_user_regs
         uint32_t spsr_svc;       /* AArch32 */
     };
 
-    uint32_t pad1; /* Doubleword-align the user half of the frame */
-
     /* AArch32 guests only */
     uint32_t spsr_fiq, spsr_irq, spsr_und, spsr_abt;
 
diff --git a/xen/include/asm-arm/hsr.h b/xen/include/asm-arm/hsr.h
index 29d4531f40..7424402c6e 100644
--- a/xen/include/asm-arm/hsr.h
+++ b/xen/include/asm-arm/hsr.h
@@ -16,11 +16,14 @@ enum dabt_size {
 };
 
 union hsr {
-    uint32_t bits;
+    register_t bits;
     struct {
         unsigned long iss:25;  /* Instruction Specific Syndrome */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     };
 
     /* Common to all conditional exception classes (0x0N, except 0x00). */
@@ -30,6 +33,9 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } cond;
 
     struct hsr_wfi_wfe {
@@ -39,6 +45,9 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } wfi_wfe;
 
     /* reg, reg0, reg1 are 4 bits on AArch32, the fifth bit is sbzp. */
@@ -53,6 +62,9 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } cp32; /* HSR_EC_CP15_32, CP14_32, CP10 */
 
     struct hsr_cp64 {
@@ -66,6 +78,9 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;    /* Instruction length */
         unsigned long ec:6;     /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } cp64; /* HSR_EC_CP15_64, HSR_EC_CP14_64 */
 
      struct hsr_cp {
@@ -77,6 +92,9 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;    /* Instruction length */
         unsigned long ec:6;     /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } cp; /* HSR_EC_CP */
 
     /*
@@ -94,6 +112,9 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } smc32; /* HSR_EC_SMC32 */
 
 #ifdef CONFIG_ARM_64
@@ -108,6 +129,7 @@ union hsr {
         unsigned long res0:3;
         unsigned long len:1;    /* Instruction length */
         unsigned long ec:6;
+        unsigned long _res0:32;
     } sysreg; /* HSR_EC_SYSREG */
 #endif
 
@@ -121,6 +143,9 @@ union hsr {
         unsigned long res2:14;
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } iabt; /* HSR_EC_INSTR_ABORT_* */
 
     struct hsr_dabt {
@@ -143,6 +168,9 @@ union hsr {
         unsigned long valid:1; /* Syndrome Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } dabt; /* HSR_EC_DATA_ABORT_* */
 
     /* Contain the common bits between DABT and IABT */
@@ -156,6 +184,9 @@ union hsr {
         unsigned long pad3:14;  /* Not common */
         unsigned long len:1;    /* Instruction length */
         unsigned long ec:6;     /* Exception Class */
+#ifdef CONFIG_ARM_64
+        unsigned long _res0:32;
+#endif
     } xabt;
 
 #ifdef CONFIG_ARM_64
@@ -164,6 +195,7 @@ union hsr {
         unsigned long res0:9;
         unsigned long len:1;        /* Instruction length */
         unsigned long ec:6;         /* Exception Class */
+        unsigned long _res0:32;
     } brk;
 #endif
 };
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113310.215923 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVc-0006TZ-9T; Tue, 20 Apr 2021 07:09:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113310.215923; Tue, 20 Apr 2021 07:09:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVc-0006TB-22; Tue, 20 Apr 2021 07:09:20 +0000
Received: by outflank-mailman (input) for mailman id 113310;
 Tue, 20 Apr 2021 07:09:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVa-0006Ja-Na
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:18 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 96ea6986-5d1d-4ec3-a367-d26f9eb199db;
 Tue, 20 Apr 2021 07:09:09 +0000 (UTC)
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 5695C1435;
 Tue, 20 Apr 2021 00:09:09 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 1D0B13F85F;
 Tue, 20 Apr 2021 00:09: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: 96ea6986-5d1d-4ec3-a367-d26f9eb199db
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 3/9] arm/gic: Get rid of READ/WRITE_SYSREG32
Date: Tue, 20 Apr 2021 09:08:47 +0200
Message-Id: <20210420070853.8918-4-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify types of following members of struct gic_v3 to register_t:
-hcr(not used at all in Xen)
-vmcr
-sre_el1
-apr0
-apr1

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/gic-v3-lpi.c |  2 +-
 xen/arch/arm/gic-v3.c     | 96 ++++++++++++++++++++-------------------
 xen/include/asm-arm/gic.h |  6 +--
 3 files changed, 54 insertions(+), 50 deletions(-)

diff --git a/xen/arch/arm/gic-v3-lpi.c b/xen/arch/arm/gic-v3-lpi.c
index 869bc97fa1..e1594dd20e 100644
--- a/xen/arch/arm/gic-v3-lpi.c
+++ b/xen/arch/arm/gic-v3-lpi.c
@@ -178,7 +178,7 @@ void gicv3_do_LPI(unsigned int lpi)
     irq_enter();
 
     /* EOI the LPI already. */
-    WRITE_SYSREG32(lpi, ICC_EOIR1_EL1);
+    WRITE_SYSREG(lpi, ICC_EOIR1_EL1);
 
     /* Find out if a guest mapped something to this physical LPI. */
     hlpip = gic_get_host_lpi(lpi);
diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
index ac28013c19..0634013a67 100644
--- a/xen/arch/arm/gic-v3.c
+++ b/xen/arch/arm/gic-v3.c
@@ -246,12 +246,12 @@ static void gicv3_ich_write_lr(int lr, uint64_t val)
  */
 static void gicv3_enable_sre(void)
 {
-    uint32_t val;
+    register_t val;
 
-    val = READ_SYSREG32(ICC_SRE_EL2);
+    val = READ_SYSREG(ICC_SRE_EL2);
     val |= GICC_SRE_EL2_SRE;
 
-    WRITE_SYSREG32(val, ICC_SRE_EL2);
+    WRITE_SYSREG(val, ICC_SRE_EL2);
     isb();
 }
 
@@ -315,16 +315,16 @@ static void restore_aprn_regs(const union gic_state_data *d)
     switch ( gicv3.nr_priorities )
     {
     case 7:
-        WRITE_SYSREG32(d->v3.apr0[2], ICH_AP0R2_EL2);
-        WRITE_SYSREG32(d->v3.apr1[2], ICH_AP1R2_EL2);
+        WRITE_SYSREG(d->v3.apr0[2], ICH_AP0R2_EL2);
+        WRITE_SYSREG(d->v3.apr1[2], ICH_AP1R2_EL2);
         /* Fall through */
     case 6:
-        WRITE_SYSREG32(d->v3.apr0[1], ICH_AP0R1_EL2);
-        WRITE_SYSREG32(d->v3.apr1[1], ICH_AP1R1_EL2);
+        WRITE_SYSREG(d->v3.apr0[1], ICH_AP0R1_EL2);
+        WRITE_SYSREG(d->v3.apr1[1], ICH_AP1R1_EL2);
         /* Fall through */
     case 5:
-        WRITE_SYSREG32(d->v3.apr0[0], ICH_AP0R0_EL2);
-        WRITE_SYSREG32(d->v3.apr1[0], ICH_AP1R0_EL2);
+        WRITE_SYSREG(d->v3.apr0[0], ICH_AP0R0_EL2);
+        WRITE_SYSREG(d->v3.apr1[0], ICH_AP1R0_EL2);
         break;
     default:
         BUG();
@@ -338,16 +338,16 @@ static void save_aprn_regs(union gic_state_data *d)
     switch ( gicv3.nr_priorities )
     {
     case 7:
-        d->v3.apr0[2] = READ_SYSREG32(ICH_AP0R2_EL2);
-        d->v3.apr1[2] = READ_SYSREG32(ICH_AP1R2_EL2);
+        d->v3.apr0[2] = READ_SYSREG(ICH_AP0R2_EL2);
+        d->v3.apr1[2] = READ_SYSREG(ICH_AP1R2_EL2);
         /* Fall through */
     case 6:
-        d->v3.apr0[1] = READ_SYSREG32(ICH_AP0R1_EL2);
-        d->v3.apr1[1] = READ_SYSREG32(ICH_AP1R1_EL2);
+        d->v3.apr0[1] = READ_SYSREG(ICH_AP0R1_EL2);
+        d->v3.apr1[1] = READ_SYSREG(ICH_AP1R1_EL2);
         /* Fall through */
     case 5:
-        d->v3.apr0[0] = READ_SYSREG32(ICH_AP0R0_EL2);
-        d->v3.apr1[0] = READ_SYSREG32(ICH_AP1R0_EL2);
+        d->v3.apr0[0] = READ_SYSREG(ICH_AP0R0_EL2);
+        d->v3.apr1[0] = READ_SYSREG(ICH_AP1R0_EL2);
         break;
     default:
         BUG();
@@ -371,15 +371,15 @@ static void gicv3_save_state(struct vcpu *v)
     dsb(sy);
     gicv3_save_lrs(v);
     save_aprn_regs(&v->arch.gic);
-    v->arch.gic.v3.vmcr = READ_SYSREG32(ICH_VMCR_EL2);
-    v->arch.gic.v3.sre_el1 = READ_SYSREG32(ICC_SRE_EL1);
+    v->arch.gic.v3.vmcr = READ_SYSREG(ICH_VMCR_EL2);
+    v->arch.gic.v3.sre_el1 = READ_SYSREG(ICC_SRE_EL1);
 }
 
 static void gicv3_restore_state(const struct vcpu *v)
 {
-    uint32_t val;
+    register_t val;
 
-    val = READ_SYSREG32(ICC_SRE_EL2);
+    val = READ_SYSREG(ICC_SRE_EL2);
     /*
      * Don't give access to system registers when the guest is using
      * GICv2
@@ -388,7 +388,7 @@ static void gicv3_restore_state(const struct vcpu *v)
         val &= ~GICC_SRE_EL2_ENEL1;
     else
         val |= GICC_SRE_EL2_ENEL1;
-    WRITE_SYSREG32(val, ICC_SRE_EL2);
+    WRITE_SYSREG(val, ICC_SRE_EL2);
 
     /*
      * VFIQEn is RES1 if ICC_SRE_EL1.SRE is 1. This causes a Group0
@@ -398,9 +398,9 @@ static void gicv3_restore_state(const struct vcpu *v)
      * want before starting to mess with the rest of the GIC, and
      * VMCR_EL1 in particular.
      */
-    WRITE_SYSREG32(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
+    WRITE_SYSREG(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
     isb();
-    WRITE_SYSREG32(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
+    WRITE_SYSREG(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
     restore_aprn_regs(&v->arch.gic);
     gicv3_restore_lrs(v);
 
@@ -468,24 +468,25 @@ static void gicv3_mask_irq(struct irq_desc *irqd)
 static void gicv3_eoi_irq(struct irq_desc *irqd)
 {
     /* Lower the priority */
-    WRITE_SYSREG32(irqd->irq, ICC_EOIR1_EL1);
+    WRITE_SYSREG(irqd->irq, ICC_EOIR1_EL1);
     isb();
 }
 
 static void gicv3_dir_irq(struct irq_desc *irqd)
 {
     /* Deactivate */
-    WRITE_SYSREG32(irqd->irq, ICC_DIR_EL1);
+    WRITE_SYSREG(irqd->irq, ICC_DIR_EL1);
     isb();
 }
 
 static unsigned int gicv3_read_irq(void)
 {
-    unsigned int irq = READ_SYSREG32(ICC_IAR1_EL1);
+    register_t irq = READ_SYSREG(ICC_IAR1_EL1);
 
     dsb(sy);
 
-    return irq;
+    /* Number of IRQs do not exceed 32bit. */
+    return (unsigned int)irq;
 }
 
 /*
@@ -857,16 +858,16 @@ static int gicv3_cpu_init(void)
     gicv3_enable_sre();
 
     /* No priority grouping */
-    WRITE_SYSREG32(0, ICC_BPR1_EL1);
+    WRITE_SYSREG(0, ICC_BPR1_EL1);
 
     /* Set priority mask register */
-    WRITE_SYSREG32(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
+    WRITE_SYSREG(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
 
     /* EOI drops priority, DIR deactivates the interrupt (mode 1) */
-    WRITE_SYSREG32(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
+    WRITE_SYSREG(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
 
     /* Enable Group1 interrupts */
-    WRITE_SYSREG32(1, ICC_IGRPEN1_EL1);
+    WRITE_SYSREG(1, ICC_IGRPEN1_EL1);
 
     /* Sync at once at the end of cpu interface configuration */
     isb();
@@ -876,15 +877,15 @@ static int gicv3_cpu_init(void)
 
 static void gicv3_cpu_disable(void)
 {
-    WRITE_SYSREG32(0, ICC_CTLR_EL1);
+    WRITE_SYSREG(0, ICC_CTLR_EL1);
     isb();
 }
 
 static void gicv3_hyp_init(void)
 {
-    uint32_t vtr;
+    register_t vtr;
 
-    vtr = READ_SYSREG32(ICH_VTR_EL2);
+    vtr = READ_SYSREG(ICH_VTR_EL2);
     gicv3_info.nr_lrs  = (vtr & ICH_VTR_NRLRGS) + 1;
     gicv3.nr_priorities = ((vtr >> ICH_VTR_PRIBITS_SHIFT) &
                           ICH_VTR_PRIBITS_MASK) + 1;
@@ -892,8 +893,8 @@ static void gicv3_hyp_init(void)
     if ( !((gicv3.nr_priorities > 4) && (gicv3.nr_priorities < 8)) )
         panic("GICv3: Invalid number of priority bits\n");
 
-    WRITE_SYSREG32(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
-    WRITE_SYSREG32(GICH_HCR_EN, ICH_HCR_EL2);
+    WRITE_SYSREG(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
+    WRITE_SYSREG(GICH_HCR_EN, ICH_HCR_EL2);
 }
 
 /* Set up the per-CPU parts of the GIC for a secondary CPU */
@@ -917,11 +918,11 @@ out:
 
 static void gicv3_hyp_disable(void)
 {
-    uint32_t hcr;
+    register_t hcr;
 
-    hcr = READ_SYSREG32(ICH_HCR_EL2);
+    hcr = READ_SYSREG(ICH_HCR_EL2);
     hcr &= ~GICH_HCR_EN;
-    WRITE_SYSREG32(hcr, ICH_HCR_EL2);
+    WRITE_SYSREG(hcr, ICH_HCR_EL2);
     isb();
 }
 
@@ -1140,39 +1141,42 @@ static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
 
 static void gicv3_hcr_status(uint32_t flag, bool status)
 {
-    uint32_t hcr;
+    register_t hcr;
 
-    hcr = READ_SYSREG32(ICH_HCR_EL2);
+    hcr = READ_SYSREG(ICH_HCR_EL2);
     if ( status )
-        WRITE_SYSREG32(hcr | flag, ICH_HCR_EL2);
+        WRITE_SYSREG(hcr | flag, ICH_HCR_EL2);
     else
-        WRITE_SYSREG32(hcr & (~flag), ICH_HCR_EL2);
+        WRITE_SYSREG(hcr & (~flag), ICH_HCR_EL2);
     isb();
 }
 
 static unsigned int gicv3_read_vmcr_priority(void)
 {
-   return ((READ_SYSREG32(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
+   return ((READ_SYSREG(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
             ICH_VMCR_PRIORITY_MASK);
 }
 
 /* Only support reading GRP1 APRn registers */
 static unsigned int gicv3_read_apr(int apr_reg)
 {
+    register_t apr;
     switch ( apr_reg )
     {
     case 0:
         ASSERT(gicv3.nr_priorities > 4 && gicv3.nr_priorities < 8);
-        return READ_SYSREG32(ICH_AP1R0_EL2);
+        apr = READ_SYSREG(ICH_AP1R0_EL2);
     case 1:
         ASSERT(gicv3.nr_priorities > 5 && gicv3.nr_priorities < 8);
-        return READ_SYSREG32(ICH_AP1R1_EL2);
+        apr = READ_SYSREG(ICH_AP1R1_EL2);
     case 2:
         ASSERT(gicv3.nr_priorities > 6 && gicv3.nr_priorities < 8);
-        return READ_SYSREG32(ICH_AP1R2_EL2);
+        apr = READ_SYSREG(ICH_AP1R2_EL2);
     default:
         BUG();
     }
+    /* Number of priority levels do not exceed 32bit */
+    return (unsigned int)apr;
 }
 
 static bool gicv3_read_pending_state(struct irq_desc *irqd)
diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
index ad0f7452d0..d750d070b4 100644
--- a/xen/include/asm-arm/gic.h
+++ b/xen/include/asm-arm/gic.h
@@ -171,9 +171,9 @@
  * GICv3 registers that needs to be saved/restored
  */
 struct gic_v3 {
-    uint32_t hcr, vmcr, sre_el1;
-    uint32_t apr0[4];
-    uint32_t apr1[4];
+    register_t hcr, vmcr, sre_el1;
+    register_t apr0[4];
+    register_t apr1[4];
     uint64_t lr[16];
 };
 #endif
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113311.215933 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVc-0006Ue-OU; Tue, 20 Apr 2021 07:09:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113311.215933; Tue, 20 Apr 2021 07:09:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVc-0006UO-FZ; Tue, 20 Apr 2021 07:09:20 +0000
Received: by outflank-mailman (input) for mailman id 113311;
 Tue, 20 Apr 2021 07:09:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVa-0006RY-VL
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:18 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id da5caf71-00df-4133-af6e-706a268879af;
 Tue, 20 Apr 2021 07:09:18 +0000 (UTC)
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 CF3F01435;
 Tue, 20 Apr 2021 00:09:17 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B9E773F85F;
 Tue, 20 Apr 2021 00:09: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: da5caf71-00df-4133-af6e-706a268879af
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 9/9] xen/arm64: Remove READ/WRITE_SYSREG32 helper macros
Date: Tue, 20 Apr 2021 09:08:53 +0200
Message-Id: <20210420070853.8918-10-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

As there are no other places in the code using READ/WRITE_SYSREG32,
remove the helper macros.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/vcpreg.c               | 16 ++++++++++++++++
 xen/include/asm-arm/arm64/sysregs.h |  5 -----
 2 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c
index c7f516ee0a..6cb7f3108c 100644
--- a/xen/arch/arm/vcpreg.c
+++ b/xen/arch/arm/vcpreg.c
@@ -48,6 +48,7 @@
  */
 
 /* The name is passed from the upper macro to workaround macro expansion. */
+#ifdef CONFIG_ARM_32
 #define TVM_REG(sz, func, reg...)                                           \
 static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
 {                                                                           \
@@ -61,6 +62,21 @@ static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
                                                                             \
     return true;                                                            \
 }
+#else /* CONFIG_ARM_64 */
+#define TVM_REG(sz, func, reg...)                                           \
+static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
+{                                                                           \
+    struct vcpu *v = current;                                               \
+    bool cache_enabled = vcpu_has_cache_enabled(v);                         \
+                                                                            \
+    GUEST_BUG_ON(read);                                                     \
+    WRITE_SYSREG(*r, reg);                                                  \
+                                                                            \
+    p2m_toggle_cache(v, cache_enabled);                                     \
+                                                                            \
+    return true;                                                            \
+}
+#endif
 
 #define TVM_REG32(regname, xreg) TVM_REG(32, vreg_emulate_##regname, xreg)
 #define TVM_REG64(regname, xreg) TVM_REG(64, vreg_emulate_##regname, xreg)
diff --git a/xen/include/asm-arm/arm64/sysregs.h b/xen/include/asm-arm/arm64/sysregs.h
index 077fd95fb7..83a1157ac4 100644
--- a/xen/include/asm-arm/arm64/sysregs.h
+++ b/xen/include/asm-arm/arm64/sysregs.h
@@ -86,11 +86,6 @@
 #endif
 
 /* Access to system registers */
-
-#define READ_SYSREG32(name) ((uint32_t)READ_SYSREG64(name))
-
-#define WRITE_SYSREG32(v, name) WRITE_SYSREG64((uint64_t)v, name)
-
 #define WRITE_SYSREG64(v, name) do {                    \
     uint64_t _r = v;                                    \
     asm volatile("msr "__stringify(name)", %0" : : "r" (_r));       \
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113312.215954 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVh-0006dH-Ec; Tue, 20 Apr 2021 07:09:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113312.215954; Tue, 20 Apr 2021 07:09: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 1lYkVh-0006d8-9n; Tue, 20 Apr 2021 07:09:25 +0000
Received: by outflank-mailman (input) for mailman id 113312;
 Tue, 20 Apr 2021 07:09:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVf-0006Ja-Nh
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:23 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 8d41fb0d-5c6c-4ba9-9ceb-8412447acf09;
 Tue, 20 Apr 2021 07:09:11 +0000 (UTC)
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 B40481474;
 Tue, 20 Apr 2021 00:09:10 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 9EC213F85F;
 Tue, 20 Apr 2021 00:09: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: 8d41fb0d-5c6c-4ba9-9ceb-8412447acf09
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 4/9] arm/p2m: Get rid of READ/WRITE_SYSREG32
Date: Tue, 20 Apr 2021 09:08:48 +0200
Message-Id: <20210420070853.8918-5-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of vtcr to register_t.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/p2m.c   | 8 ++++----
 xen/arch/arm/traps.c | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index ac50312620..d414c4feb9 100644
--- a/xen/arch/arm/p2m.c
+++ b/xen/arch/arm/p2m.c
@@ -1973,11 +1973,11 @@ void __init p2m_restrict_ipa_bits(unsigned int ipa_bits)
 }
 
 /* VTCR value to be configured by all CPUs. Set only once by the boot CPU */
-static uint32_t __read_mostly vtcr;
+static register_t __read_mostly vtcr;
 
 static void setup_virt_paging_one(void *data)
 {
-    WRITE_SYSREG32(vtcr, VTCR_EL2);
+    WRITE_SYSREG(vtcr, VTCR_EL2);
 
     /*
      * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from
@@ -2000,7 +2000,7 @@ static void setup_virt_paging_one(void *data)
 void __init setup_virt_paging(void)
 {
     /* Setup Stage 2 address translation */
-    unsigned long val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA;
+    register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA;
 
 #ifdef CONFIG_ARM_32
     if ( p2m_ipa_bits < 40 )
@@ -2089,7 +2089,7 @@ void __init setup_virt_paging(void)
            pa_range_info[pa_range].pabits,
            ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8);
 #endif
-    printk("P2M: %d levels with order-%d root, VTCR 0x%lx\n",
+    printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n",
            4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val);
 
     p2m_vmid_allocator_init();
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index ccc0827107..c7acdb2087 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -911,7 +911,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
         show_registers_32(regs, ctxt, guest_mode, v);
 #endif
     }
-    printk("  VTCR_EL2: %08"PRIx32"\n", READ_SYSREG32(VTCR_EL2));
+    printk("  VTCR_EL2: %"PRIregister"\n", READ_SYSREG(VTCR_EL2));
     printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
     printk("\n");
 
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113314.215966 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVm-0006kh-Pa; Tue, 20 Apr 2021 07:09:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113314.215966; Tue, 20 Apr 2021 07: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 1lYkVm-0006kX-LP; Tue, 20 Apr 2021 07:09:30 +0000
Received: by outflank-mailman (input) for mailman id 113314;
 Tue, 20 Apr 2021 07:09:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVk-0006Ja-Nu
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:28 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id c0dce763-5849-4b01-a9c2-2b35e0483262;
 Tue, 20 Apr 2021 07:09:12 +0000 (UTC)
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 24EB91435;
 Tue, 20 Apr 2021 00:09:12 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 05F603F85F;
 Tue, 20 Apr 2021 00:09: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: c0dce763-5849-4b01-a9c2-2b35e0483262
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 5/9] arm/mm: Get rid of READ/WRITE_SYSREG32
Date: Tue, 20 Apr 2021 09:08:49 +0200
Message-Id: <20210420070853.8918-6-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify SCTLR_EL2 accesses to use READ/WRITE_SYSREG.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/mm.c    | 2 +-
 xen/arch/arm/traps.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 59f8a3f15f..0e07335291 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -613,7 +613,7 @@ void __init remove_early_mappings(void)
  */
 static void xen_pt_enforce_wnx(void)
 {
-    WRITE_SYSREG32(READ_SYSREG32(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2);
+    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.
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index c7acdb2087..e7384381cc 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -915,7 +915,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
     printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
     printk("\n");
 
-    printk(" SCTLR_EL2: %08"PRIx32"\n", READ_SYSREG32(SCTLR_EL2));
+    printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));
     printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
     printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
     printk("\n");
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113318.215978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVr-0006rs-78; Tue, 20 Apr 2021 07:09:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113318.215978; Tue, 20 Apr 2021 07: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 1lYkVr-0006rc-2e; Tue, 20 Apr 2021 07:09:35 +0000
Received: by outflank-mailman (input) for mailman id 113318;
 Tue, 20 Apr 2021 07:09:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVp-0006Ja-OD
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:33 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 7712d985-1e7d-4a66-9b7f-6dea885bf582;
 Tue, 20 Apr 2021 07:09:13 +0000 (UTC)
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 80A631474;
 Tue, 20 Apr 2021 00:09:13 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6C7C13F85F;
 Tue, 20 Apr 2021 00:09: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: 7712d985-1e7d-4a66-9b7f-6dea885bf582
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 6/9] arm/page: Get rid of READ/WRITE_SYSREG32
Date: Tue, 20 Apr 2021 09:08:50 +0200
Message-Id: <20210420070853.8918-7-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify accesses to CTR_EL0 to use READ/WRITE_SYSREG.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/include/asm-arm/page.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/include/asm-arm/page.h b/xen/include/asm-arm/page.h
index 131507a517..c6f9fb0d4e 100644
--- a/xen/include/asm-arm/page.h
+++ b/xen/include/asm-arm/page.h
@@ -137,10 +137,10 @@ extern size_t dcache_line_bytes;
 
 static inline size_t read_dcache_line_bytes(void)
 {
-    uint32_t ctr;
+    register_t ctr;
 
     /* Read CTR */
-    ctr = READ_SYSREG32(CTR_EL0);
+    ctr = READ_SYSREG(CTR_EL0);
 
     /* Bits 16-19 are the log2 number of words in the cacheline. */
     return (size_t) (4 << ((ctr >> 16) & 0xf));
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 07:09:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 07:09:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113323.215989 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYkVw-0006zn-IM; Tue, 20 Apr 2021 07:09:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113323.215989; Tue, 20 Apr 2021 07: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 1lYkVw-0006ze-Dx; Tue, 20 Apr 2021 07:09:40 +0000
Received: by outflank-mailman (input) for mailman id 113323;
 Tue, 20 Apr 2021 07:09:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8gRw=JR=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lYkVu-0006Ja-On
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 07:09:38 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 688e8b74-06fa-4c04-a5ff-56709e86b728;
 Tue, 20 Apr 2021 07:09:15 +0000 (UTC)
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 DB8291474;
 Tue, 20 Apr 2021 00:09:14 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.29.239])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C6CD83F85F;
 Tue, 20 Apr 2021 00:09: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: 688e8b74-06fa-4c04-a5ff-56709e86b728
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH 7/9] arm/time,vtimer: Get rid of READ/WRITE_SYSREG32
Date: Tue, 20 Apr 2021 09:08:51 +0200
Message-Id: <20210420070853.8918-8-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210420070853.8918-1-michal.orzel@arm.com>
References: <20210420070853.8918-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 system registers are 64bit whereas AArch32 ones
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 sysregs have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of vtimer structure's member: ctl to register_t.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/time.c          | 28 ++++++++++++++--------------
 xen/arch/arm/vtimer.c        | 10 +++++-----
 xen/include/asm-arm/domain.h |  2 +-
 3 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
index b0021c2c69..e6c96eb90c 100644
--- a/xen/arch/arm/time.c
+++ b/xen/arch/arm/time.c
@@ -145,7 +145,7 @@ void __init preinit_xen_time(void)
         preinit_acpi_xen_time();
 
     if ( !cpu_khz )
-        cpu_khz = READ_SYSREG32(CNTFRQ_EL0) / 1000;
+        cpu_khz = (unsigned long)(READ_SYSREG(CNTFRQ_EL0) / 1000);
 
     res = platform_init_time();
     if ( res )
@@ -205,13 +205,13 @@ int reprogram_timer(s_time_t timeout)
 
     if ( timeout == 0 )
     {
-        WRITE_SYSREG32(0, CNTHP_CTL_EL2);
+        WRITE_SYSREG(0, CNTHP_CTL_EL2);
         return 1;
     }
 
     deadline = ns_to_ticks(timeout) + boot_count;
     WRITE_SYSREG64(deadline, CNTHP_CVAL_EL2);
-    WRITE_SYSREG32(CNTx_CTL_ENABLE, CNTHP_CTL_EL2);
+    WRITE_SYSREG(CNTx_CTL_ENABLE, CNTHP_CTL_EL2);
     isb();
 
     /* No need to check for timers in the past; the Generic Timer fires
@@ -223,23 +223,23 @@ int reprogram_timer(s_time_t timeout)
 static void timer_interrupt(int irq, void *dev_id, struct cpu_user_regs *regs)
 {
     if ( irq == (timer_irq[TIMER_HYP_PPI]) &&
-         READ_SYSREG32(CNTHP_CTL_EL2) & CNTx_CTL_PENDING )
+         READ_SYSREG(CNTHP_CTL_EL2) & CNTx_CTL_PENDING )
     {
         perfc_incr(hyp_timer_irqs);
         /* Signal the generic timer code to do its work */
         raise_softirq(TIMER_SOFTIRQ);
         /* Disable the timer to avoid more interrupts */
-        WRITE_SYSREG32(0, CNTHP_CTL_EL2);
+        WRITE_SYSREG(0, CNTHP_CTL_EL2);
     }
 
     if ( irq == (timer_irq[TIMER_PHYS_NONSECURE_PPI]) &&
-         READ_SYSREG32(CNTP_CTL_EL0) & CNTx_CTL_PENDING )
+         READ_SYSREG(CNTP_CTL_EL0) & CNTx_CTL_PENDING )
     {
         perfc_incr(phys_timer_irqs);
         /* Signal the generic timer code to do its work */
         raise_softirq(TIMER_SOFTIRQ);
         /* Disable the timer to avoid more interrupts */
-        WRITE_SYSREG32(0, CNTP_CTL_EL0);
+        WRITE_SYSREG(0, CNTP_CTL_EL0);
     }
 }
 
@@ -260,8 +260,8 @@ static void vtimer_interrupt(int irq, void *dev_id, struct cpu_user_regs *regs)
 
     perfc_incr(virt_timer_irqs);
 
-    current->arch.virt_timer.ctl = READ_SYSREG32(CNTV_CTL_EL0);
-    WRITE_SYSREG32(current->arch.virt_timer.ctl | CNTx_CTL_MASK, CNTV_CTL_EL0);
+    current->arch.virt_timer.ctl = READ_SYSREG(CNTV_CTL_EL0);
+    WRITE_SYSREG(current->arch.virt_timer.ctl | CNTx_CTL_MASK, CNTV_CTL_EL0);
     vgic_inject_irq(current->domain, current, current->arch.virt_timer.irq, true);
 }
 
@@ -297,9 +297,9 @@ void init_timer_interrupt(void)
     /* Sensible defaults */
     WRITE_SYSREG64(0, CNTVOFF_EL2);     /* No VM-specific offset */
     /* Do not let the VMs program the physical timer, only read the physical counter */
-    WRITE_SYSREG32(CNTHCTL_EL2_EL1PCTEN, CNTHCTL_EL2);
-    WRITE_SYSREG32(0, CNTP_CTL_EL0);    /* Physical timer disabled */
-    WRITE_SYSREG32(0, CNTHP_CTL_EL2);   /* Hypervisor's timer disabled */
+    WRITE_SYSREG(CNTHCTL_EL2_EL1PCTEN, CNTHCTL_EL2);
+    WRITE_SYSREG(0, CNTP_CTL_EL0);    /* Physical timer disabled */
+    WRITE_SYSREG(0, CNTHP_CTL_EL2);   /* Hypervisor's timer disabled */
     isb();
 
     request_irq(timer_irq[TIMER_HYP_PPI], 0, timer_interrupt,
@@ -320,8 +320,8 @@ void init_timer_interrupt(void)
  */
 static void deinit_timer_interrupt(void)
 {
-    WRITE_SYSREG32(0, CNTP_CTL_EL0);    /* Disable physical timer */
-    WRITE_SYSREG32(0, CNTHP_CTL_EL2);   /* Disable hypervisor's timer */
+    WRITE_SYSREG(0, CNTP_CTL_EL0);    /* Disable physical timer */
+    WRITE_SYSREG(0, CNTHP_CTL_EL2);   /* Disable hypervisor's timer */
     isb();
 
     release_irq(timer_irq[TIMER_HYP_PPI], NULL);
diff --git a/xen/arch/arm/vtimer.c b/xen/arch/arm/vtimer.c
index c2b27915c6..167fc6127a 100644
--- a/xen/arch/arm/vtimer.c
+++ b/xen/arch/arm/vtimer.c
@@ -138,8 +138,8 @@ void virt_timer_save(struct vcpu *v)
 {
     ASSERT(!is_idle_vcpu(v));
 
-    v->arch.virt_timer.ctl = READ_SYSREG32(CNTV_CTL_EL0);
-    WRITE_SYSREG32(v->arch.virt_timer.ctl & ~CNTx_CTL_ENABLE, CNTV_CTL_EL0);
+    v->arch.virt_timer.ctl = READ_SYSREG(CNTV_CTL_EL0);
+    WRITE_SYSREG(v->arch.virt_timer.ctl & ~CNTx_CTL_ENABLE, CNTV_CTL_EL0);
     v->arch.virt_timer.cval = READ_SYSREG64(CNTV_CVAL_EL0);
     if ( (v->arch.virt_timer.ctl & CNTx_CTL_ENABLE) &&
          !(v->arch.virt_timer.ctl & CNTx_CTL_MASK))
@@ -159,7 +159,7 @@ void virt_timer_restore(struct vcpu *v)
 
     WRITE_SYSREG64(v->domain->arch.virt_timer_base.offset, CNTVOFF_EL2);
     WRITE_SYSREG64(v->arch.virt_timer.cval, CNTV_CVAL_EL0);
-    WRITE_SYSREG32(v->arch.virt_timer.ctl, CNTV_CTL_EL0);
+    WRITE_SYSREG(v->arch.virt_timer.ctl, CNTV_CTL_EL0);
 }
 
 static bool vtimer_cntp_ctl(struct cpu_user_regs *regs, uint32_t *r, bool read)
@@ -347,7 +347,7 @@ bool vtimer_emulate(struct cpu_user_regs *regs, union hsr hsr)
 }
 
 static void vtimer_update_irq(struct vcpu *v, struct vtimer *vtimer,
-                              uint32_t vtimer_ctl)
+                              register_t vtimer_ctl)
 {
     bool level;
 
@@ -389,7 +389,7 @@ void vtimer_update_irqs(struct vcpu *v)
      * but this requires reworking the arch timer to implement this.
      */
     vtimer_update_irq(v, &v->arch.virt_timer,
-                      READ_SYSREG32(CNTV_CTL_EL0) & ~CNTx_CTL_MASK);
+                      READ_SYSREG(CNTV_CTL_EL0) & ~CNTx_CTL_MASK);
 
     /* For the physical timer we rely on our emulated state. */
     vtimer_update_irq(v, &v->arch.phys_timer, v->arch.phys_timer.ctl);
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 2d4f38c669..c9277b5c6d 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -36,7 +36,7 @@ struct vtimer {
     struct vcpu *v;
     int irq;
     struct timer timer;
-    uint32_t ctl;
+    register_t ctl;
     uint64_t cval;
 };
 
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 08:11:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 08:11:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113374.216019 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYlTR-0005sn-DA; Tue, 20 Apr 2021 08:11:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113374.216019; Tue, 20 Apr 2021 08:11:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYlTR-0005sg-AD; Tue, 20 Apr 2021 08:11:09 +0000
Received: by outflank-mailman (input) for mailman id 113374;
 Tue, 20 Apr 2021 08:11: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 1lYlTP-0005sY-MS; Tue, 20 Apr 2021 08:11: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 1lYlTP-0004ar-EZ; Tue, 20 Apr 2021 08:11:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lYlTP-0000De-2A; Tue, 20 Apr 2021 08:11:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYlTP-0002pW-1h; Tue, 20 Apr 2021 08:11:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=wocApOOs+ys8aDhOzKKk7XvZtaDW878Seq0gcUfDE3E=; b=a+JFO/5thrxpYEmXAdyGDPL5tI
	CXmmgqhslguEpLZO3Keb6CqfN3J2KpafGB+AgP2q+JQfbnM5j6QJ3vQvn7vQT1pqcwPkn6Tj5iKFH
	IRU/CT2vI4wft725kYvnQQmbJcCcXf8ACHpN8nHH/ak0z+LQ18dVSlMt9jhOO8a9wkQ0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161296-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161296: 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-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-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-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-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b5b93627dd1c398a90b832af765b4720fc71814e
X-Osstest-Versions-That:
    xen=05031fa87357fad155f659cfc2dcce6614834684
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 08:11:07 +0000

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

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

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

version targeted for testing:
 xen                  b5b93627dd1c398a90b832af765b4720fc71814e
baseline version:
 xen                  05031fa87357fad155f659cfc2dcce6614834684

Last test of basis   161281  2021-04-19 04:14:43 Z    1 days
Testing same since   161296  2021-04-19 17:07:45 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@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                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   05031fa873..b5b93627dd  b5b93627dd1c398a90b832af765b4720fc71814e -> master


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 08:41:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 08:41:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113387.216041 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYlx6-0000BD-79; Tue, 20 Apr 2021 08:41:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113387.216041; Tue, 20 Apr 2021 08:41: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 1lYlx6-0000B6-3Y; Tue, 20 Apr 2021 08:41:48 +0000
Received: by outflank-mailman (input) for mailman id 113387;
 Tue, 20 Apr 2021 08:41:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYlx5-0000B1-5W
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 08:41:47 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5db8b742-74ba-4e74-b6c0-acfa526c4fc8;
 Tue, 20 Apr 2021 08:41: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: 5db8b742-74ba-4e74-b6c0-acfa526c4fc8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618908105;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=wMYZRUza6bY6ZY+bXaPdUEmR93fkDE+UWoKqPNWQj4w=;
  b=b4gNiwxTDDhzHhYlVsTtPmU/MpEYT1xF5hx45RtF4afDP5DbEdrHvSdI
   DqrpWq1jzZ8fQ7pipLfHggshmS8BZlVVDkBpV82KPLhfntFVDAwhO9UcE
   H4/mV2VoN6X3U9cHyqFdgWSCS0FoYF/cod9D+cH6yxgYxsfHeDC9r7qQh
   s=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Y7X9lGTq0oY4u7gtZSUeGxDUEEXLmq1XtX/WkJYhOy2NtZrve5R8JL4HZMr0Sbo1gIBZpmWsoD
 gs7VnjhvPFoqtrsUCOM4HJKoDyZpzLbuP/7t87W+WJHgwNU3B1ooQ95NfChQy4Lk7L4u08+4LH
 Ni9GruKmriWYWLGZtLMNfNKlzhqXKsQr7QL6HaL/0UH4m1TOWMt3bPTMq/zNYJo+SA2yKkNhUe
 NDgKCgsMC5PN/KAr42tFEYugh5ENtJL/9IABqbBRtqqIHor8ll5EnGr9e5vpLL1CKRG0zOaDFN
 wYU=
X-SBRS: 5.2
X-MesageID: 42085134
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:uTpniK6ybjtNuGDW7wPXwXqEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbDqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH7mGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnl4j41VTRTzbA+tV
 XUigCR3NTYj9iX6D/5k1XS4ZNfhcf7xrJ4ZfCkp8AJJlzX+2OVTat7XbnqhkFQnMiO7xIQnM
 DIs1McOa1ImgzsV0WUhTeo5AX6yjYp7BbZuCylqF/uu9bwSj5/K+cpv/MgTjLj50AtvM5x3c
 twtgrz3fcnbmKj7VHAzuPFWB1wmk2/rWBKq59ps1VlXZYDc7gUlIQD/SpuYec9NRjn44MqGv
 QGNrCk2N9qdzqhHhfkl1gq6tmtUnMvJwyBU0gPt+eEugIm7UxR/g82wtcSkWwH8494Y55Y5/
 7cOqAtr71WSNQKBJgNS9spcI+SMCjgUBjMOGWdLRDOE7wGAWvEr9rS7K8u7O+nVZQUxPIJ6d
 r8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwbz4Rlu5XnLYCbchGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJgwxD+YZ9PMnMTOfdl+uoTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8tRz72CMJc7l26e3PxjRTLMkmdP3DXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHljv8UNDQ
 9DCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PgQcLNkjzYIsSotn3QxEU4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dkWXkmUUv3DPa5sHgKWM6YPEd/oDf9cbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgqocVCuHZf9xVmxyqPsZQlHLauSyn1IMSb0peewTrfd+cgA4oSTYRrE
 Z26bUjjL2JnivqFXEym90iMFpHaH2eBZVPCAjtXvQTppnbPCVLCUuajz2TjB8+Pk7n7V8biG
 DaISqIQv3TGVZGtndE0qHlzUNsegymDjBNQ0E/lbc4OXXNu3513+POXKa13meLQnYpw+0WMl
 j+EHEvCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N5vJ3Gm2FYGOnaYaPvNd8Zp/LuryuusTXe
 /3QX7NEBrIT8cSnyCFrHcsPyd57EQ+mfTzwRv/8SyW2mU8Dfe6GiUue5grZ/Wnq07qSPaD3M
 8n0ZYbve6sPn7wbdDD46fNdDJHIg7Sp2nzb+xAk+EigYsC8J9IW7/cWn/08VsC+jMUBsL9jl
 kfT6R2+6qpAP4lQ+UiPwZiumM0n9GOJnYxugP4AuUCbUgg5kWrS++h0v7tk/4TGUWPqwv7BE
 mH/wBc9/nDWTGf1bRyMdNHHU1mLGw94m9l5uWMasn5DxirbfhK+DOBQzKAWY4YbKiOArMLqB
 lmp/mOgu+MbiL9nCTdpyFyLK4L02GpR6qJcU6xMN8N19yxIlKXhKS2pOa1kTfsUDO+L30iur
 ctTz1ZUu1zzh84jIM21SCuSqv45mId+mEunw1PpxrKwYip4GDSAEdcFxbW668mBQVuDg==
X-IronPort-AV: E=Sophos;i="5.82,236,1613451600"; 
   d="scan'208";a="42085134"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=du+hIS8LrZAxFj+TzIib407gwfzfCllDkcMuMnAgomXgx149CgfHnhOGEhSMxCk3yrng9zWKNTvE7g1O8syes/zcLXHNYUJ/GqLxg7n9oXgn/Dh8dxNtgE7vzqYyA4zEvlQfuYUjpcckJY3WsFbY0U2s1aBu/HuNWK2n/vK/8CUQCiW8c6iX7ZEoClah+EZ/evUib70Mkj6N+pt7ba8WTD2uQuDJEWOzK+rCHS+C54Nwj9EbZqL9NiDXZUUTizyGhX5WGyVP0w9T6J3jTIZIycCKVzKeT2xhOPGrhji3oJRecQvFj5W7h7jcBklEA6X5kcJcFH4KrAppC/VLRd+2kw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0FTGKve+mIVo6Wdh2PnAJXmIHEw1Ia0RVE5qAT5dKs8=;
 b=oH0MS8Gpj1q3xx2QFUXSAHGVVCH9qgTYEBtsYR5cY156RIcZ/JGmU+4hHotc2L7haToRcjJf3cyhmkBRPljX5v3CSpSFtLw6r+qSIhuTt0fdsnsGAIRUV7v8GhxpOUzAg4vkYjlEnq9lPuPJuqv8yl6LUS1rJNwwMn1uugbmzXoQADxVlvczWulwlepAZikGV9C7cc3joFlGftvtaaI5O1TivAXHhi+TQqLwJTnVFom/tZxVJpe7MIA54y1hnsLZzSyM8Td39TOqmJqXZrkeUk0orxPn6KG0j+o9HLhM50F3dDYwRWiSUZhCAfRcTDT++gdJRN8xiTbgnc5a5bGJDg==
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=0FTGKve+mIVo6Wdh2PnAJXmIHEw1Ia0RVE5qAT5dKs8=;
 b=mOa7gYMpwx7Dnia9FAuQK5S6JEYRvoAakFXRJIo7Qe2sQGxa5Fweqgat6WiqkZZ+f4FrMJA3Xu+7t3OlO8AUlFHefjaUuUt4yh9GMpP8E7JzY962ouqx/2nHGSYNYKcNzOm3Be56plPOsTU/x6HHraErxwCQD3676xZlLbl2Ujo=
Date: Tue, 20 Apr 2021 10:41:35 +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@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Wei Liu
	<wl@xen.org>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v3] x86/CPUID: shrink max_{,sub}leaf fields according to
 actual leaf contents
Message-ID: <YH6TvzSEbBEg0Nuf@Air-de-Roger>
References: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
 <YH1KZhLrC6anI/Hm@Air-de-Roger>
 <1612e2ac-87ad-4f7f-aaed-05486365b9dc@suse.com>
 <YH1y7pFbtz/aWMJ2@Air-de-Roger>
 <8c3fb7b9-2ca6-ade8-70b7-482822cc1c22@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8c3fb7b9-2ca6-ade8-70b7-482822cc1c22@suse.com>
X-ClientProxiedBy: AM6P195CA0050.EURP195.PROD.OUTLOOK.COM
 (2603:10a6:209:87::27) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 17b67518-8a0a-4469-d50c-08d903d81eae
X-MS-TrafficTypeDiagnostic: DM4PR03MB6095:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB6095D7547129053D74B41CEA8F489@DM4PR03MB6095.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: QxiaVBYF6WoKPJj79FgTa2KhiuInqn9ab1jHjaPeWNru8S4FWGKQ9evqqZuMQTzPIvbMrPJhDwyyxTaNrusrT8B7JUkchpQPoRJTqsvVv6yxsrZuQV1NMjTJzuPA34+12dGvC3wLMTpRwy4jCen+cg228HvatEDrSWUjeMiO9T3QVZYI8a/TDiwL+9NV/pNlDra5zcv/sker6EO+VS9OK4vtp5kkpKCKQ03LW380b5LrIX/Xmh6TK1rZF/QGIpn7BrqU5BfmDcFXYpOwgZZGgoTUdMcI5S5oiAfHH8Bv9Kt7kRcS+sg4DiiHxWx9+Mqu65QyIhTLrHo/0KLGmfwminOOKoNw6l1yZDdzbWYCK4wBFXPWBuVwfamN97WT9IpvSRmLiS8HsEDWEHHbxvlYVwvBT28ameZ7xgwm2cQ77AL5sC3D0A9qBAWksO7C/IT3hd5to7YKYHz299sRU0R4/Ku1YNY4NWJ1EZSwfcWnZLLv6l+86mUPuN6q6BurUa5tHjPYZUkuE0idjWLbfUHNq39NMcwXDO96XhKyBcTvrIMb/yZ7xBNZkFp26SITexnUbjRkJEXPpd5r2zwbkuZVllj5GR8BMrBBaJB/sv+BvQE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(346002)(39860400002)(396003)(366004)(376002)(66476007)(66946007)(66556008)(2906002)(478600001)(4326008)(956004)(83380400001)(186003)(16526019)(26005)(8936002)(8676002)(6916009)(6496006)(85182001)(53546011)(316002)(54906003)(6666004)(9686003)(33716001)(86362001)(5660300002)(6486002)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?XnJj1xr/gpA0RilXp1YMFkdAfM2TpBz3KUp4Ogh?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 17b67518-8a0a-4469-d50c-08d903d81eae
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 08:41:41.3842
 (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: DPubETCjNnf/7XnZRd75Ch6P/kaDIMnwL7vJ0ov5LxCc888dCcyEtmEqjqMflKE/nESDn4Civ3V+iGQj1+WhKg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6095
X-OriginatorOrg: citrix.com

On Mon, Apr 19, 2021 at 02:29:38PM +0200, Jan Beulich wrote:
> On 19.04.2021 14:09, Roger Pau Monné wrote:
> > On Mon, Apr 19, 2021 at 01:46:02PM +0200, Jan Beulich wrote:
> >> On 19.04.2021 11:16, Roger Pau Monné wrote:
> >>> Adding Paul also for the Viridian part.
> >>>
> >>> On Fri, Apr 16, 2021 at 03:16:41PM +0200, Jan Beulich wrote:
> >>>> Zapping leaf data for out of range leaves is just one half of it: To
> >>>> avoid guests (bogusly or worse) inferring information from mere leaf
> >>>> presence, also shrink maximum indicators such that the respective
> >>>> trailing entry is not all blank (unless of course it's the initial
> >>>> subleaf of a leaf that's not the final one).
> >>>>
> >>>> This is also in preparation of bumping the maximum basic leaf we
> >>>> support, to ensure guests not getting exposed related features won't
> >>>> observe a change in behavior.
> >>>>
> >>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> >>>> ---
> >>>> v3: Record the actual non-empty subleaf in p->basic.raw[0x7], rather
> >>>>     than subleaf 0. Re-base over Viridian leaf 40000005 addition.
> >>>> v2: New.
> >>>>
> >>>> --- a/tools/tests/cpu-policy/test-cpu-policy.c
> >>>> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
> >>>> @@ -8,10 +8,13 @@
> >>>>  #include <err.h>
> >>>>  
> >>>>  #include <xen-tools/libs.h>
> >>>> +#include <xen/asm/x86-defns.h>
> >>>>  #include <xen/asm/x86-vendors.h>
> >>>>  #include <xen/lib/x86/cpu-policy.h>
> >>>>  #include <xen/domctl.h>
> >>>>  
> >>>> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
> >>>> +
> >>>>  static unsigned int nr_failures;
> >>>>  #define fail(fmt, ...)                          \
> >>>>  ({                                              \
> >>>> @@ -553,6 +556,103 @@ static void test_cpuid_out_of_range_clea
> >>>>      }
> >>>>  }
> >>>>  
> >>>> +static void test_cpuid_maximum_leaf_shrinking(void)
> >>>> +{
> >>>> +    static const struct test {
> >>>> +        const char *name;
> >>>> +        struct cpuid_policy p;
> >>>> +    } tests[] = {
> >>>> +        {
> >>>> +            .name = "basic",
> >>>> +            .p = {
> >>>> +                /* Very basic information only. */
> >>>> +                .basic.max_leaf = 1,
> >>>> +                .basic.raw_fms = 0xc2,
> >>>> +            },
> >>>> +        },
> >>>> +        {
> >>>> +            .name = "cache",
> >>>> +            .p = {
> >>>> +                /* Cache subleaves present. */
> >>>> +                .basic.max_leaf = 4,
> >>>> +                .cache.subleaf[0].type = 1,
> >>>
> >>> On a private conversation with Andrew he raised the issue that the
> >>> shrinking might be overly simplistic. For example if the x2APIC
> >>> feature bit in leaf 1 is set then the max leaf should be at least 0xb
> >>> in order to be able to fetch the x2APIC ID, even if it's 0.
> >>
> >> But in such a case the "type" field of leaf 0xb's first sub-leaf is
> >> going to be non-zero, isn't it?
> > 
> > Right, as type 0 is invalid according to Intel SDM, so you will never
> > be able to shrink below 0xb while having x2APIC set.
> > 
> > I still wonder however if there's any other such dependency, where
> > shrinking the max cpuid leaf could force us to drop features exposed
> > in inferior leaves.
> 
> My take is that, just like for the x2APIC case, such leaves won't be
> all blank if the qualifying bit is set. Or if one ends up being all
> blank, a bug likely sits elsewhere.

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

I'm not able to spot any more dependencies ATM, so worse case we
discover some of those along the way and add the missing logic if
required, in any case seems like a fine starting point.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 08:47:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 08:47:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113392.216053 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYm2K-0000PI-Rm; Tue, 20 Apr 2021 08:47:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113392.216053; Tue, 20 Apr 2021 08:47: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 1lYm2K-0000PB-Nq; Tue, 20 Apr 2021 08:47:12 +0000
Received: by outflank-mailman (input) for mailman id 113392;
 Tue, 20 Apr 2021 08:47:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/4LT=JR=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lYm2J-0000P6-EV
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 08:47:11 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown
 [40.107.21.43]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b3b8f326-e4f4-4c35-a5e0-129f1eb66bfa;
 Tue, 20 Apr 2021 08:47:08 +0000 (UTC)
Received: from DB6PR1001CA0038.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:4:55::24)
 by AM7PR08MB5302.eurprd08.prod.outlook.com (2603:10a6:20b:103::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19; Tue, 20 Apr
 2021 08:47:06 +0000
Received: from DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:55:cafe::a6) by DB6PR1001CA0038.outlook.office365.com
 (2603:10a6:4:55::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend
 Transport; Tue, 20 Apr 2021 08:47:06 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT036.mail.protection.outlook.com (10.152.20.185) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Tue, 20 Apr 2021 08:47:06 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Tue, 20 Apr 2021 08:47:05 +0000
Received: from 06c2448771e8.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E66EDBB3-71E4-4D75-B08A-48D4DB7E584C.1; 
 Tue, 20 Apr 2021 08:46:54 +0000
Received: from EUR03-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 06c2448771e8.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 20 Apr 2021 08:46:54 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3984.eurprd08.prod.outlook.com (2603:10a6:803:e9::27)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Tue, 20 Apr
 2021 08:46:51 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4042.024; Tue, 20 Apr 2021
 08:46:51 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0440.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a9::13) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.19 via Frontend Transport; Tue, 20 Apr 2021 08:46:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b3b8f326-e4f4-4c35-a5e0-129f1eb66bfa
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vhqrjjVWf5RYo5qRfmT4X90AeDm9BwL8JQdF4Qd8064=;
 b=lJCD+uZxk+p3vn6Cesb06pBfDb2McNAL8BkJbY5JzNHH9XXsH1tEZOVct7qhB7fOGa4oftQDRPwWV+RIZJpACdd0ziTfGjJCcNdH+xNiEgb60wphTLPx2nBJvoBZS9IrC9Qk2CggsVy8frx+AnMSYzV719KkBYiULvHNWVy8zMU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7a07f7b1d88f0f1d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gpwnan+T37ovopAU2HrPU27vuv6Pe/nkgrSP1hFzvT1o6RpCkJe+FPTMQVSlsDZRKM46vzbTC1xQppHtZXi61RSZJHjR7cb5sz7eSQ1w0tB1/xFfQdcButCvjcrdbN5rTcxRi5gMIqDZwMYpEsF+Yf/ZvMvwr1ePIcUHA1QtqBunzP//ob9K5xOR4+kJxDEriJGTLVHNkr3ly5nSHCaPcZa3XVsaGJO0Z2tIXPenMdiE3xQgIT7s08ChOma7Y7Ab2TRIlvHF3KTOvpUUTYt4ZGhjHoZl4mGorAYGiIQChUkDS+03TeeolqiNwt/KsiI/xcB29vmQVSmdE5YbpV1i4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vhqrjjVWf5RYo5qRfmT4X90AeDm9BwL8JQdF4Qd8064=;
 b=azG12MxyT8vJ4/rK1aFpskrQLHXf7AenPK64Wpiq6HbkFrwThSCRLGK0BaVvGNtsyruVSmKZv2S4wn3qYEQ4U2Xr7pmeROTFxFvH3qlilFO6iK4RKZsUIdwJ+PwADJ9Tg5zZTogTLhqnqFMcfNgSFboQ/OueZXHTKwVR6i0jNOsOL+SJbgwoZ5ON927Z2ilLMEyzr3uGqjnUOSHQSr12G5G/AJFann/O9M0nLQeJxV6a0m4UORDWEvde2ECpo+3nbaiE1Z9goU+Ldz2s4C+eTP6YwF1ancCtIl8oJfHPXJKI9ot7RNL3DL3uCUF7gfaBViD3tWtydveD+/vmuXmhig==
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=vhqrjjVWf5RYo5qRfmT4X90AeDm9BwL8JQdF4Qd8064=;
 b=lJCD+uZxk+p3vn6Cesb06pBfDb2McNAL8BkJbY5JzNHH9XXsH1tEZOVct7qhB7fOGa4oftQDRPwWV+RIZJpACdd0ziTfGjJCcNdH+xNiEgb60wphTLPx2nBJvoBZS9IrC9Qk2CggsVy8frx+AnMSYzV719KkBYiULvHNWVy8zMU=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v2 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
Date: Tue, 20 Apr 2021 09:46:44 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <0F26E53E-0C0A-4596-AC88-F803BC7A0493@arm.com>
References: <20210419091231.55684-1-luca.fancellu@arm.com>
 <20210419091231.55684-4-luca.fancellu@arm.com>
 <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0440.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a9::13) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 913f08eb-b67d-48b2-9c1c-08d903d8e045
X-MS-TrafficTypeDiagnostic: VI1PR08MB3984:|AM7PR08MB5302:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AM7PR08MB5302C874457E31C48BA82C86E4489@AM7PR08MB5302.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 x5OQI8oM/2vdMc8tp0QsLsj/o9uYKbAIXipabt2xN1pbvAn58nePRp0IVvnvypzwT8OmnFbQdCAVChGgA3CNiBKaIQyQGcE3CwB3j2NCXNF8hhwaC1Zsv60ngSGfYNPMAOUNBQpIh78RqG5UtV+qfv6sZlU00HhGeh+KfSiHgTR5oSjxectyRuTqWfu3Xusul/bOT2LeJUtNYluLT3mAly7JZ0TTOhir1ZixqSsXR1Dl0cwZMKns/A0MUrU7Q2gP0B0yLaX0ljnOmIroNeAzgMHsj79zw+YvHd1uwVhmBvOOV1W0PC7VZlnrlkfZz2SJAgGKNNHykbJ7Re6NvDtp5gMfZnXs2knsgGzi7tSbdeqN9bxuoVMMUlk2VBR4dLZoiMgKZaR1FQAz0lYW2QOl0tisZFPbclECPcW6vb6kYf96j0PtQmTarZOoBl3iOqsqECcRQa3n/oKakCjDWqhFLMXrx4FUFINdA2Oc9pgYgtPffu5vR+5SPcmAsBluIi3CR0lTdnPwPyubYKD+FORxBXg5/B9fnI5Nyvil6Ys7sh0vrVTAaSgIafySNMw0JLV+3PXMg0tyFpPHWP/adhrFdbOpBJmZ7hqlT98XI7B75IoHSMvKmbJOZ4XwpGhuy3NGcoKghchQeNbMGdmL/REZTXEF8/2UptWWFz4FKett/YH+GYY3fQ0KjOguu1F9i3TX0itZlJYYQ+Mqvxkgbu7wykI+6p4cC1VwUa/wSh87kCrtfq5D+BaLxRmDtS41adqYWk14iwd+EGGijf3W/jTfdA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(346002)(366004)(136003)(396003)(39860400002)(44832011)(66946007)(8936002)(33656002)(38100700002)(186003)(2616005)(6916009)(8676002)(956004)(53546011)(83380400001)(478600001)(6486002)(66476007)(316002)(36756003)(2906002)(66556008)(86362001)(4326008)(54906003)(966005)(7696005)(6666004)(26005)(52116002)(16526019)(5660300002)(38350700002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3984
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	d60fdd22-f241-4c1b-e45a-08d903d8d75a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zEd76CuvHjRUHVlreUZR+JQadKi0mHLoe7evhZzABU2ceJvh8TIwMrxoNSmW8dBAq7EvwTmPa3oZBYmecV2SKcLJgXKBQqd8Ne34qtKqBLfbMCzNmalvti31pZDIySGT8SQek4BFR6oN5NvD+rhhOTy5mOGXNboOMOyWlxirfjfp42fjz2MnOO4qxyFbC8vD71Iy/0Epc/zIre75vItBLxmdn3JQjr1MIJqA4zpLP0DuI1XrqcpxCl3yYmohslgFeD86cnzKzTT5oJTp6HRDGYltXeyWX2LZuoiGdTSb+wWDGLd9CoVtmQYBN2jisyexw5HlF3I7ok2YflNMn5Krqxm0foJmfPla0AVYA9ikxGQj6RylUjtZgbe9m81NURhxkvBlrE2i/gbObYdhglIdGWkGbQowlBOzhYnt5RK1E4UL+QwWL4Ah4xzHNGZ3BgrFKBJOt4hgs+Okiipe1DkQvNampzvmgSshsfM6h37Cj5uQEYUVj39elFA/3hLdmdagsRkB2tQ9wuwWmxuO6CGDJTFmHsvx4apIIqVuUiTK7XEbES4ulTy52yH3w8G0nzJpgwK+lASrc/fy81cmUufrGR/qKzHQV3gMrzmDuNP6ys3zmh4z5mTrhG2x1voVOzl5Av9/l53DTCwRrHyEyOXyWicXxbLZUFBwq7/zHGCrQbDjf/+L6fOE/QCHMyhR20u85upuXFmj+W2lilSYYMktmbCdT8SSGHfy7zGBzeXlsuI=
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:(4636009)(136003)(396003)(376002)(39860400002)(346002)(36840700001)(46966006)(16526019)(6486002)(2616005)(186003)(70206006)(966005)(478600001)(54906003)(26005)(70586007)(8936002)(33656002)(53546011)(336012)(6666004)(956004)(7696005)(36860700001)(82740400003)(47076005)(8676002)(86362001)(5660300002)(83380400001)(44832011)(82310400003)(2906002)(356005)(36756003)(4326008)(81166007)(6862004)(316002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 08:47:06.0033
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 913f08eb-b67d-48b2-9c1c-08d903d8e045
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:
	DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5302



> On 19 Apr 2021, at 12:05, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 19.04.2021 11:12, Luca Fancellu wrote:
>> Modification to include/public/grant_table.h:
>>=20
>> 1) Add doxygen tags to:
>> - Create Grant tables section
>> - include variables in the generated documentation
>> 2) Add .rst file for grant table for Arm64
>=20
> I'm missing some reasoning about at least some of the changes done
> to grant_table.h. Looking at this and the earlier patches I also
> couldn't spot any general outline of what is acceptable or even
> necessary in such a header to be understood by doxygen. Without
> this written down somewhere (or, if documented elsewhere, a
> pointer provided to that doc) I'm afraid things might get screwed
> up again later on.

Hi Jan,

Doxygen is a tool that generates documentation based on parsing the source =
code comments, it recognises some
commands in the comments and builds the documentation sticking to what you =
wrote.

Here the doxygen docs: https://www.doxygen.nl/manual/docblocks.html

Basically it doesn=E2=80=99t react to all comments, it parses only some wel=
l crafted comments as explained in its documentation.

>=20
>> --- a/docs/hypercall-interfaces/arm64.rst
>> +++ b/docs/hypercall-interfaces/arm64.rst
>> @@ -8,6 +8,7 @@ Starting points
>> .. toctree::
>>    :maxdepth: 2
>>=20
>> +   arm64/grant_tables
>>=20
>>=20
>> Functions
>> diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hyp=
ercall-interfaces/arm64/grant_tables.rst
>> new file mode 100644
>> index 0000000000..8955ec5812
>> --- /dev/null
>> +++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
>> @@ -0,0 +1,8 @@
>> +.. SPDX-License-Identifier: CC-BY-4.0
>> +
>> +Grant Tables
>> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>> +
>> +.. doxygengroup:: grant_table
>=20
> Why is this Arm64-specific?

This particular one is Arm64 specific, but it doesn=E2=80=99t mean that gra=
nt tables are arm specific, it is only that for now I=E2=80=99m
Introducing a partial documentation in the arm side. Any other user can in =
the future add more documentation for
each platform.

>=20
>> @@ -73,20 +75,25 @@
>>  *                           frame, or zero if none.
>>  *  3. Write memory barrier (WMB).
>>  *  4. Write ent->flags, inc. valid type.
>> + * @endcode
>>  *
>>  * Invalidating an unused GTF_permit_access entry:
>> + * @code
>>  *  1. flags =3D ent->flags.
>>  *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
>>  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>  *  NB. No need for WMB as reuse of entry is control-dependent on succes=
s of
>>  *      step 3, and all architectures guarantee ordering of ctrl-dep wri=
tes.
>> + * @endcode
>>  *
>>  * Invalidating an in-use GTF_permit_access entry:
>> + *
>>  *  This cannot be done directly. Request assistance from the domain con=
troller
>>  *  which can set a timeout on the use of a grant entry and take necessa=
ry
>>  *  action. (NB. This is not yet implemented!).
>>  *
>>  * Invalidating an unused GTF_accept_transfer entry:
>> + * @code
>>  *  1. flags =3D ent->flags.
>>  *  2. Observe that !(flags & GTF_transfer_committed). [*]
>>  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>> @@ -97,47 +104,55 @@
>>  *      transferred frame is written. It is safe for the guest to spin w=
aiting
>>  *      for this to occur (detect by observing GTF_transfer_completed in
>>  *      ent->flags).
>> + * @endcode
>>  *
>>  * Invalidating a committed GTF_accept_transfer entry:
>>  *  1. Wait for (ent->flags & GTF_transfer_completed).
>>  *
>>  * Changing a GTF_permit_access from writable to read-only:
>> + *
>>  *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writin=
g.
>>  *
>>  * Changing a GTF_permit_access from read-only to writable:
>> + *
>>  *  Use SMP-safe bit-setting instruction.
>=20
> For example - are the blank lines you add necessary or merely nice
> to have in your personal opinion?

The blank lines makes the docs output more good looking

>=20
>> - */
>> -
>> -/*
>> - * Reference to a grant entry in a specified domain's grant table.
>> - */
>> -typedef uint32_t grant_ref_t;
>=20
> Why does this get moved ...
>=20
>> -
>> -/*
>> + *
>>  * A grant table comprises a packed array of grant entries in one or mor=
e
>>  * page frames shared between Xen and a guest.
>> + *
>>  * [XEN]: This field is written by Xen and read by the sharing guest.
>> + *
>>  * [GST]: This field is written by the guest and read by Xen.
>> + *
>> + * @addtogroup grant_table Grant Tables
>> + * @{
>>  */
>>=20
>> -/*
>> - * Version 1 of the grant table entry structure is maintained purely
>> - * for backwards compatibility.  New guests should use version 2.
>> +/**
>> + * Reference to a grant entry in a specified domain's grant table.
>>  */
>> +typedef uint32_t grant_ref_t;
>=20
> ... here, past a comment unrelated to it?

The comment =E2=80=9CVersion 1 of the grant table entry [=E2=80=A6]=E2=80=
=9D was moved on top of the struct grant_entry_v1, in this way
Doxygen associate the comment to that structure.

The comment =E2=80=9CReference to a grant entry in a specified domain's gra=
nt table.=E2=80=9D Is moved on top of typedef uint32_t grant_ref_t
for the same reason above

>=20
>> @@ -243,23 +258,27 @@ union grant_entry_v2 {
>>      * In that case, the frame field has the same semantics as the
>>      * field of the same name in the V1 entry structure.
>>      */
>> +    /** @cond skip anonymous struct/union for doxygen */
>>     struct {
>>         grant_entry_header_t hdr;
>>         uint32_t pad0;
>>         uint64_t frame;
>>     } full_page;
>> +    /** @endcond */
>>=20
>>     /*
>>      * If the grant type is GTF_grant_access and GTF_sub_page is set,
>>      * @domid is allowed to access bytes [@page_off,@page_off+@length)
>>      * in frame @frame.
>>      */
>> +    /** @cond skip anonymous struct/union for doxygen */
>>     struct {
>>         grant_entry_header_t hdr;
>>         uint16_t page_off;
>>         uint16_t length;
>>         uint64_t frame;
>>     } sub_page;
>> +    /** @endcond */
>>=20
>>     /*
>>      * If the grant is GTF_transitive, @domid is allowed to use the
>> @@ -270,12 +289,14 @@ union grant_entry_v2 {
>>      * The current version of Xen does not allow transitive grants
>>      * to be mapped.
>>      */
>> +    /** @cond skip anonymous struct/union for doxygen */
>>     struct {
>>         grant_entry_header_t hdr;
>>         domid_t trans_domid;
>>         uint16_t pad0;
>>         grant_ref_t gref;
>>     } transitive;
>> +    /** @endcond */
>=20
> While already better than the introduction of strange struct tags,
> I'm still not convinced we want this extra clutter (sorry). Plus -
> don't these additions mean the sub-structures then won't be
> represented in the generated doc, rendering it (partly) useless?

Are you suggesting to remove the structure from docs?

>=20
>> @@ -433,7 +454,12 @@ typedef struct gnttab_transfer gnttab_transfer_t;
>> DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>>=20
>>=20
>> -/*
>> +#define _GNTCOPY_source_gref      (0)
>> +#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
>> +#define _GNTCOPY_dest_gref        (1)
>> +#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
>> +
>> +/**
>>  * GNTTABOP_copy: Hypervisor based copy
>>  * source and destinations can be eithers MFNs or, for foreign domains,
>>  * grant references. the foreign domain has to grant read/write access
>> @@ -451,18 +477,15 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>>  * bytes to be copied.
>>  */
>>=20
>> -#define _GNTCOPY_source_gref      (0)
>> -#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
>> -#define _GNTCOPY_dest_gref        (1)
>> -#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
>> -
>> struct gnttab_copy {
>=20
> Again the question - why the movement?

Doxygen takes the comment just above the data structure to build the docs, =
so here we are moving the
Comment just on top of the described structure.

>=20
>> @@ -579,17 +602,19 @@ struct gnttab_swap_grant_ref {
>> typedef struct gnttab_swap_grant_ref gnttab_swap_grant_ref_t;
>> DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
>>=20
>> -/*
>> +/**
>>  * Issue one or more cache maintenance operations on a portion of a
>>  * page granted to the calling domain by a foreign domain.
>>  */
>> struct gnttab_cache_flush {
>> +    /** @cond skip anonymous struct/union for doxygen */
>>     union {
>>         uint64_t dev_bus_addr;
>>         grant_ref_t ref;
>>     } a;
>> -    uint16_t offset; /* offset from start of grant */
>> -    uint16_t length; /* size within the grant */
>> +    /** @endcond */
>> +    uint16_t offset; /**< offset from start of grant */
>> +    uint16_t length; /**< size within the grant */
>=20
> Skipping just part of a struct is perhaps even more confusing than
> omitting it altogether.
>=20
> Also, what's the significance of "/**<" ?

It is a doxygen pattern that tells it to use the comment as a field related=
 documentation.
If you build the documentation you will find the result, I encourage you to=
 see it to
realize the power of the tool and the benefits that Xen can get with it.

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 08:53:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 08:53:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113400.216065 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYm8O-0001IF-Mp; Tue, 20 Apr 2021 08:53:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113400.216065; Tue, 20 Apr 2021 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 1lYm8O-0001I8-Jg; Tue, 20 Apr 2021 08:53:28 +0000
Received: by outflank-mailman (input) for mailman id 113400;
 Tue, 20 Apr 2021 08:53:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYm8O-0001I3-46
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 08:53:28 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fad1b858-4a0a-4be0-b633-d98b56aac069;
 Tue, 20 Apr 2021 08:53: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: fad1b858-4a0a-4be0-b633-d98b56aac069
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618908806;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=aiTeHtN7Ds2HYKnXRpCTwsu1eOuzbmckNVUkwW1JGvA=;
  b=S0J5jXLLvWIudvxg+V4OAa3Hcmxbzo1Xl6bqD242jW9wMfRksD2UOXpj
   BrHKTnmaXI6EBn0GW0WtUT8ibc2REcwiAkQeO+Qrag/DLW33qwEtZFnme
   rilWXIPEJR4Ad57+sCYWVq6nr7vXb8W7rxEYMH4dJ4kDUS9Tnr4PF7FbJ
   w=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: OqbIk8G9te/lcu8jWfcHpJaEJUW9FDpZi3hijgy1wt2yO4dx4J4vJt/Z1NadPqv1x0HKHFsK7z
 huNfM4QXSGWXmH+W+INVJbw1VjSxK8ax8wuP/hqnYhjOa5dp6dApSeGr7RruiHSPOmtoXigeYC
 Wopi6c3Dr367+FpxlCsrutmVWl0zxvYr0FUVOtbF0LaoBakPNufW4rto2uzgZjGUjFjSdIUfnw
 IOG27h3PVgB0pAEkVkNOOWqJNejeP4SCMGfxDfOHCFjlxBV0JBbwFH5l0OPYtrUpvkw9ywKfRJ
 5IE=
X-SBRS: 5.2
X-MesageID: 41955054
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:MIkmDq76w2RxdbelkAPXwWqEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBxh8ri/U2cG9Ev3NGI/MmT9Jzj5l1GJDsaCJ1IxQF/FwqdDwlSTA5JGZI2GP
 Onl7B6jhCnfmkaadn+O2kdU4H41pf2vb/FQTpDPR4o7wGSkSilgYSVLzG01goTOgk/posK3n
 PCl2XCh5mLk/b+8RPE0n+W0pI+oqqY9vJiH8qKs84PN3HXpz3AXu9ccpmjmBxwn+218lYtl7
 D30lodFuB+8WnYcG3wgTaF4XiH7B8U53XvyUCVjBLYyKTEbQk3BMZbiYVSfgGx0TtYgPhHzK
 lJ02iF3qAnby/ooSXn69DEEzFsm0akyEBS9dI7sn1FXYMSLIJWtIwUlXkldasoISSS0uAaOd
 grJNzA7PxWdV+ccjTXvmxix9SpUh0IdCuucwwngIi4wjJWlHd2ww8z38oEhEoN85o7Vt1t+/
 nEGr4ArsAAcuYmKYZGQMsRS8q+DWLABTjWNniJHFjhHKYbf1rQtp/M5qkv7u3CQu1H8LIC3L
 D6FH9Iv287fEzjTeeU2odQzxzLSGKhGRPg199Z/Jo8nrHnXrLkPWmiRTkV4oqdisRaJveed+
 e4OZpQDfOmB3DpA5x10wr3XIQXJmIZVMETp9YnS1ODqs/GMeTRx6/mWceWAICoPScvW2v5DH
 dGdiP0Pt984keiXWK9gBW5YQKuRmXPubZLVITK9ekaz4YAcqdWtBIOtFi/7saXbTlLsqk8el
 piMKrq+5nL4FWezCLt1SFEKxBdBkFa7PHLSHVRvzIHNEvybPIEoNWQeWdb2XOdPR9hR8bKEA
 pSzm4HuZ6fHti1/2QPGtinOmWVgz84v3SRVaoRnaWF+IP4YJ8iF40nX6ZwDA3PEBRwlW9R2S
 N+QT5BYnWaOiLliK2jgpBROfrWcMNkhhy3ZeROr2jEiEmarcYzZ3cSUjK0S/SLiQI2Szc8vC
 w3z4YvxJ673RemMy8WnfkxOlwkUhXrPJt2SCC+ILhytp+uUgdqVmuOjSGdkHgICxbX3nRXoH
 fgIy2ScezMGXxHtBljo+rX2Vtpa2SQeF9xYHhmsYt7UX/LoGp3zPXjXNvN70KBLlQF2e0TKz
 fDfH8bJR5v3cm+0FqPlC+FDmhO/ORnAsXNSLAiearUwHWjNcmBkrwHBeZd+P9eRabTm/5OVe
 KUYAmOKjzkT+svxgyOv34gfC15smMtn/+t2Brr6gGDrTcCKOuXJFRtXLcAJd6Aq2DiWvaTyZ
 18ycsvovHYCBSFVveWjaXMKzJTIBLapmC7C+kutJBPpKo38L9+BYPSXzfE3GxOtS9OZ/vchQ
 cbWuB28brBMohgc4gJdyVV8kEgmd6PIEEo2zaGddMWbBUolTvWLtmJ673Hpf4zGUWHvhL3Ik
 Ta/CtH/fvJNhHzp4IyGuY1OyBRZ0c94ng5o7/HeI3UFQmwd+ZMuFC9KWSwdbdBSK6DXbUcxy
 wKk+2gjquSbW7/3guVoD5wZqRJ+GyjSdmpAA2NFfVTmubKTWikk++v+oqrkDzzSTGncEwWio
 1OaFwIYq14+0gfpZxy1jL3V7f+rU0kmUZP+D1rllbi3Y69/WfQdHs2QjHxk9FRRjlcMn+BkM
 TD/6yZzR3GkUZ45aU=
X-IronPort-AV: E=Sophos;i="5.82,236,1613451600"; 
   d="scan'208";a="41955054"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MzPhU/GX/7X0NxhS4KKzF6q3OhKCmLjfZe0Q67Vam+SuHl8jRCocYEWF9wVesLhY3i0tLXETKJWs55yKNMGGGJcDlL84D2uMOsqhkgN9KKoPJ+2rX2soFzyJ7VB4dDuhTffmcLYgZeott79nfyzTj+b7gIO1ZyrOX95lJ27NbrlTljPzGZxkBTkcLb8B3Af0LhQILnwaLSSuUJ2XAfMiQpxiww01qXUcWwCUob/LmTp4g2L/pk29D5CgRz1ckVVBBhxfCu5Q4UmX2rQTuBe+4pjhLeFIysXZJoaXNq3A7ZHKzZ6NjVTxvEYekbHk+resNcumnGHtT5L0K6buHBpSvg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7Ey7G9XXPAB/E/8vkwVSZWrgLstwMk9KN77MQwqGHJw=;
 b=dWG5HGkTy4P8TwAvb9e2dIpIcDTpP/HxVyYrLBVGotuAdmrTxSl9GLLbelvoVvGv1To/KGhE7Eu29TdQDx2FtbGjiAJRvb95s55BwFKQClkQwH0gX0ncPjSvHoR69/vMHbppv7xJK/5dZGi4J5gBNrWzVa1xmrQXA0sDbuQsidqgH/BirGu586q6mgrIXBmiblCUWz+sw5n7ZXUbDssRE5SJVi1nU6sURKRpENIkjgxPKb38SYsjI9QE3V+bzgJ5dpKA2KK7qUZicDTMjZV2jDkiNvC+4Ms0XcxP2WL57QmT40+fx96Hl9VCiu5r88gk5JlifSyLle93cpsSVJ3KFQ==
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=7Ey7G9XXPAB/E/8vkwVSZWrgLstwMk9KN77MQwqGHJw=;
 b=esvS9JtNjQthw53zmF3lhQGc/fZEDMwP6wl5vFs8QoM6kjsCZY6g4mGKfPZe8vdNIWzoJrV4OqBoNB70DjqlmuhqLUSYQk6jQmN5Ey0eY3jIvBE5WrvoN7B+51KkDruEU46JeohVS5OL8BA8iSrzSQwMLkRJLOGaAyrujJ73o2g=
Date: Tue, 20 Apr 2021 10:53:18 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Igor Druzhinin <igor.druzhinin@citrix.com>
CC: <qemu-devel@nongnu.org>, <xen-devel@lists.xenproject.org>,
	<sstabellini@kernel.org>, <anthony.perard@citrix.com>, <paul@xen.org>,
	<mst@redhat.com>, <marcel.apfelbaum@gmail.com>, <pbonzini@redhat.com>,
	<richard.henderson@linaro.org>, <ehabkost@redhat.com>
Subject: Re: [PATCH] xen-mapcache: avoid a race on memory map while using
 MAP_FIXED
Message-ID: <YH6WfgdFpFaMYtvC@Air-de-Roger>
References: <1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com>
X-ClientProxiedBy: PR0P264CA0087.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:18::27) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f0a7ebaf-ba79-4ceb-3cd5-08d903d9c14b
X-MS-TrafficTypeDiagnostic: DM6PR03MB5324:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5324C38E75597C9AC5A209C88F489@DM6PR03MB5324.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: J/DkqTXxL5hmmuHyOGIgRLZZj7lYlwze/7kd797INZ7/EaIskEXAZeEM8L98Lw4Gg0h7geF62OZGsyNVnJ0gVdv/hx2vdQkvdztkC7GvHUYkm2gFJOlYk+gcxZt3HxpSj4cpN6FFxbkT3FTa5lZHWTggYItlcfN0iyhTJFi5KTSocpA9jC8A0VYh5nQ3vVgSqCoDOYs6NOPCRNcveqMbbLmAJMSCmU4HP8xFnML02KsbpKBvITU0vY8CHvktXM9ynDrpEn0vp3TfSb2ukCYVsJn9HWpojRI4O/saLCWASMg35WYB3M55kl1key3BMp/ztrmnn2108hEXxWPgkUdfXNwiI4h8mHmPyQlCN/xvfUJljMkfyhlfH0QYChasx+lk9GULvyFC4i81z+bpvba4N0LokKySzWjAf7O8zQgiBViP7q/4A50e9wXcr7tCjRFVNRdNvMzzqEJIARois0P9SE4NApxgWQE7eoUysCtbn8Zzj9JCUqcQQYr5jwC1rQ8LqrQC3RVagusk5jQownJ6ixLpXS1Y5bvxPrgKj9STdJs996PuuSqUjnqGJoN4y50DMAkYbooG6TAMqdGPJRE/vISHUG3snnV1msTaj10hqM8=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(376002)(39860400002)(396003)(346002)(136003)(4326008)(186003)(16526019)(478600001)(6636002)(8676002)(5660300002)(2906002)(86362001)(38100700002)(83380400001)(6486002)(66476007)(8936002)(316002)(9686003)(956004)(6666004)(26005)(6496006)(85182001)(6862004)(66556008)(33716001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?PLyihoGKPLc/2XBQQZh2V7xTT+v5GPIgCg0rsgd?=
X-MS-Exchange-CrossTenant-Network-Message-Id: f0a7ebaf-ba79-4ceb-3cd5-08d903d9c14b
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 08:53:23.6660
 (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: /QedRFRjYJuIjUE6ukXkb29lWDtO5ji3o7vX9EaqkZ8XCN7zCYCuvh2m7necC56m6IrH1ZOPgEpLlCk3FtSa1g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5324
X-OriginatorOrg: citrix.com

On Tue, Apr 20, 2021 at 04:35:02AM +0100, Igor Druzhinin wrote:
> When we're replacing the existing mapping there is possibility of a race
> on memory map with other threads doing mmap operations - the address being
> unmapped/re-mapped could be occupied by another thread in between.
> 
> Linux mmap man page recommends keeping the existing mappings in place to
> reserve the place and instead utilize the fact that the next mmap operation
> with MAP_FIXED flag passed will implicitly destroy the existing mappings
> behind the chosen address. This behavior is guaranteed by POSIX / BSD and
> therefore is portable.
> 
> Note that it wouldn't make the replacement atomic for parallel accesses to
> the replaced region - those might still fail with SIGBUS due to
> xenforeignmemory_map not being atomic. So we're still not expecting those.
> 
> Tested-by: Anthony PERARD <anthony.perard@citrix.com>
> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>

Should we add a 'Fixes: 759235653de ...' or similar tag here?

> ---
>  hw/i386/xen/xen-mapcache.c | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/i386/xen/xen-mapcache.c b/hw/i386/xen/xen-mapcache.c
> index 5b120ed..e82b7dc 100644
> --- a/hw/i386/xen/xen-mapcache.c
> +++ b/hw/i386/xen/xen-mapcache.c
> @@ -171,7 +171,20 @@ static void xen_remap_bucket(MapCacheEntry *entry,
>          if (!(entry->flags & XEN_MAPCACHE_ENTRY_DUMMY)) {
>              ram_block_notify_remove(entry->vaddr_base, entry->size);
>          }
> -        if (munmap(entry->vaddr_base, entry->size) != 0) {
> +
> +        /*
> +         * If an entry is being replaced by another mapping and we're using
> +         * MAP_FIXED flag for it - there is possibility of a race for vaddr
> +         * address with another thread doing an mmap call itself
> +         * (see man 2 mmap). To avoid that we skip explicit unmapping here
> +         * and allow the kernel to destroy the previous mappings by replacing
> +         * them in mmap call later.
> +         *
> +         * Non-identical replacements are not allowed therefore.
> +         */
> +        assert(!vaddr || (entry->vaddr_base == vaddr && entry->size == size));
> +
> +        if (!vaddr && munmap(entry->vaddr_base, entry->size) != 0) {

Oh, so remappings of foreign addresses must always use the same
virtual address space, I somehow assumed that you could remap an
existing foreign map (or dummy mapping) into a different virtual
address if you so wanted.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 09:14:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:14:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113410.216084 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYmSj-0003Eg-Kb; Tue, 20 Apr 2021 09:14:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113410.216084; Tue, 20 Apr 2021 09: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 1lYmSj-0003EZ-H8; Tue, 20 Apr 2021 09:14:29 +0000
Received: by outflank-mailman (input) for mailman id 113410;
 Tue, 20 Apr 2021 09:14:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYmSi-0003EU-Io
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 09:14:28 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 07e20466-2c81-4e25-bcec-a1cdf9778306;
 Tue, 20 Apr 2021 09:14:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A60B7AEE7;
 Tue, 20 Apr 2021 09:14: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: 07e20466-2c81-4e25-bcec-a1cdf9778306
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618910066; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Kbcl8vcjPy9kXVmjDwpVpgdRC4aOqedP4eAuRtc4iQY=;
	b=LQ565028EfdQ7y7OHUZHXahiU1QXWNhooSLizbCofygvy3wysG3u+cJOKzYlo7w17ccrsq
	x5IzgosdN7S+Wn/ofOfsbqN0SMqTrAp6Zyc0fzM+P7++0BiVFcl3jDlJNZt1/CK9gtjrFw
	q+GaESDUQlUxCI/iIVoKavrjADT8DpA=
Subject: Re: [PATCH v2 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210419091231.55684-1-luca.fancellu@arm.com>
 <20210419091231.55684-4-luca.fancellu@arm.com>
 <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
 <0F26E53E-0C0A-4596-AC88-F803BC7A0493@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c6d80a92-b8e7-703a-e051-18dc845b242a@suse.com>
Date: Tue, 20 Apr 2021 11:14:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <0F26E53E-0C0A-4596-AC88-F803BC7A0493@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 10:46, Luca Fancellu wrote:
>> On 19 Apr 2021, at 12:05, Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 19.04.2021 11:12, Luca Fancellu wrote:
>>> Modification to include/public/grant_table.h:
>>>
>>> 1) Add doxygen tags to:
>>> - Create Grant tables section
>>> - include variables in the generated documentation
>>> 2) Add .rst file for grant table for Arm64
>>
>> I'm missing some reasoning about at least some of the changes done
>> to grant_table.h. Looking at this and the earlier patches I also
>> couldn't spot any general outline of what is acceptable or even
>> necessary in such a header to be understood by doxygen. Without
>> this written down somewhere (or, if documented elsewhere, a
>> pointer provided to that doc) I'm afraid things might get screwed
>> up again later on.
> 
> Doxygen is a tool that generates documentation based on parsing the source code comments, it recognises some
> commands in the comments and builds the documentation sticking to what you wrote.
> 
> Here the doxygen docs: https://www.doxygen.nl/manual/docblocks.html
> 
> Basically it doesn’t react to all comments, it parses only some well crafted comments as explained in its documentation.

Providing this link somewhere might be helpful. However, also seeing
some of your further comments, it feels like to edit a public header
enabled for doxygen one has to know fair parts of this documentation.
While I'm certainly in favor of having a way to generate docs from
the headers, I'm afraid I don't think such knowledge should become a
prereq to e.g. adding a new sub-function of a hypercall. So far I was
assuming that the formatting requirements would be quite limited, and
that it would hence be possible to just glean them from existing code.
But e.g. the "/**<" notation isn't going to be obvious to spot.

>>> --- a/docs/hypercall-interfaces/arm64.rst
>>> +++ b/docs/hypercall-interfaces/arm64.rst
>>> @@ -8,6 +8,7 @@ Starting points
>>> .. toctree::
>>>    :maxdepth: 2
>>>
>>> +   arm64/grant_tables
>>>
>>>
>>> Functions
>>> diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hypercall-interfaces/arm64/grant_tables.rst
>>> new file mode 100644
>>> index 0000000000..8955ec5812
>>> --- /dev/null
>>> +++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
>>> @@ -0,0 +1,8 @@
>>> +.. SPDX-License-Identifier: CC-BY-4.0
>>> +
>>> +Grant Tables
>>> +============
>>> +
>>> +.. doxygengroup:: grant_table
>>
>> Why is this Arm64-specific?
> 
> This particular one is Arm64 specific, but it doesn’t mean that grant tables are arm specific, it is only that for now I’m
> Introducing a partial documentation in the arm side. Any other user can in the future add more documentation for
> each platform.

I'm of the pretty strong opinion that common hypercalls should be
documented as common, and hence not live in an arch-specific
section.

>>> @@ -73,20 +75,25 @@
>>>  *                           frame, or zero if none.
>>>  *  3. Write memory barrier (WMB).
>>>  *  4. Write ent->flags, inc. valid type.
>>> + * @endcode
>>>  *
>>>  * Invalidating an unused GTF_permit_access entry:
>>> + * @code
>>>  *  1. flags = ent->flags.
>>>  *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
>>>  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>>  *  NB. No need for WMB as reuse of entry is control-dependent on success of
>>>  *      step 3, and all architectures guarantee ordering of ctrl-dep writes.
>>> + * @endcode
>>>  *
>>>  * Invalidating an in-use GTF_permit_access entry:
>>> + *
>>>  *  This cannot be done directly. Request assistance from the domain controller
>>>  *  which can set a timeout on the use of a grant entry and take necessary
>>>  *  action. (NB. This is not yet implemented!).
>>>  *
>>>  * Invalidating an unused GTF_accept_transfer entry:
>>> + * @code
>>>  *  1. flags = ent->flags.
>>>  *  2. Observe that !(flags & GTF_transfer_committed). [*]
>>>  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>> @@ -97,47 +104,55 @@
>>>  *      transferred frame is written. It is safe for the guest to spin waiting
>>>  *      for this to occur (detect by observing GTF_transfer_completed in
>>>  *      ent->flags).
>>> + * @endcode
>>>  *
>>>  * Invalidating a committed GTF_accept_transfer entry:
>>>  *  1. Wait for (ent->flags & GTF_transfer_completed).
>>>  *
>>>  * Changing a GTF_permit_access from writable to read-only:
>>> + *
>>>  *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writing.
>>>  *
>>>  * Changing a GTF_permit_access from read-only to writable:
>>> + *
>>>  *  Use SMP-safe bit-setting instruction.
>>
>> For example - are the blank lines you add necessary or merely nice
>> to have in your personal opinion?
> 
> The blank lines makes the docs output more good looking

I'm inclined to suggest to split beautification from basic enabling.

>>> - */
>>> -
>>> -/*
>>> - * Reference to a grant entry in a specified domain's grant table.
>>> - */
>>> -typedef uint32_t grant_ref_t;
>>
>> Why does this get moved ...
>>
>>> -
>>> -/*
>>> + *
>>>  * A grant table comprises a packed array of grant entries in one or more
>>>  * page frames shared between Xen and a guest.
>>> + *
>>>  * [XEN]: This field is written by Xen and read by the sharing guest.
>>> + *
>>>  * [GST]: This field is written by the guest and read by Xen.
>>> + *
>>> + * @addtogroup grant_table Grant Tables
>>> + * @{
>>>  */
>>>
>>> -/*
>>> - * Version 1 of the grant table entry structure is maintained purely
>>> - * for backwards compatibility.  New guests should use version 2.
>>> +/**
>>> + * Reference to a grant entry in a specified domain's grant table.
>>>  */
>>> +typedef uint32_t grant_ref_t;
>>
>> ... here, past a comment unrelated to it?
> 
> The comment “Version 1 of the grant table entry […]” was moved on top of the struct grant_entry_v1, in this way
> Doxygen associate the comment to that structure.
> 
> The comment “Reference to a grant entry in a specified domain's grant table.” Is moved on top of typedef uint32_t grant_ref_t
> for the same reason above

But it's the other comment ("A grant table comprises ...") that I
was asking about.

>>> @@ -243,23 +258,27 @@ union grant_entry_v2 {
>>>      * In that case, the frame field has the same semantics as the
>>>      * field of the same name in the V1 entry structure.
>>>      */
>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>     struct {
>>>         grant_entry_header_t hdr;
>>>         uint32_t pad0;
>>>         uint64_t frame;
>>>     } full_page;
>>> +    /** @endcond */
>>>
>>>     /*
>>>      * If the grant type is GTF_grant_access and GTF_sub_page is set,
>>>      * @domid is allowed to access bytes [@page_off,@page_off+@length)
>>>      * in frame @frame.
>>>      */
>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>     struct {
>>>         grant_entry_header_t hdr;
>>>         uint16_t page_off;
>>>         uint16_t length;
>>>         uint64_t frame;
>>>     } sub_page;
>>> +    /** @endcond */
>>>
>>>     /*
>>>      * If the grant is GTF_transitive, @domid is allowed to use the
>>> @@ -270,12 +289,14 @@ union grant_entry_v2 {
>>>      * The current version of Xen does not allow transitive grants
>>>      * to be mapped.
>>>      */
>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>     struct {
>>>         grant_entry_header_t hdr;
>>>         domid_t trans_domid;
>>>         uint16_t pad0;
>>>         grant_ref_t gref;
>>>     } transitive;
>>> +    /** @endcond */
>>
>> While already better than the introduction of strange struct tags,
>> I'm still not convinced we want this extra clutter (sorry). Plus -
>> don't these additions mean the sub-structures then won't be
>> represented in the generated doc, rendering it (partly) useless?
> 
> Are you suggesting to remove the structure from docs?

Just yet I'm not suggesting anything here - I was merely guessing at
the effect of "@cond" and the associated "skip ..." to mean that this
construct makes doxygen skip the enclosed section. If that's not the
effect, then maybe the comment wants rewording? (And then - what does
@cond mean?)

>>> @@ -433,7 +454,12 @@ typedef struct gnttab_transfer gnttab_transfer_t;
>>> DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>>>
>>>
>>> -/*
>>> +#define _GNTCOPY_source_gref      (0)
>>> +#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
>>> +#define _GNTCOPY_dest_gref        (1)
>>> +#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
>>> +
>>> +/**
>>>  * GNTTABOP_copy: Hypervisor based copy
>>>  * source and destinations can be eithers MFNs or, for foreign domains,
>>>  * grant references. the foreign domain has to grant read/write access
>>> @@ -451,18 +477,15 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>>>  * bytes to be copied.
>>>  */
>>>
>>> -#define _GNTCOPY_source_gref      (0)
>>> -#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
>>> -#define _GNTCOPY_dest_gref        (1)
>>> -#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
>>> -
>>> struct gnttab_copy {
>>
>> Again the question - why the movement?
> 
> Doxygen takes the comment just above the data structure to build the docs, so here we are moving the
> Comment just on top of the described structure.

Well, okay, this then is an explanation _that_ the #define-s want
moving, but not an explanation for where they got moved (father
away from what they actually relate to). Personally I consider it
good practice to have such #define-s next to the field they relate
to (and we have such placement elsewhere). Perhaps worth
considering to move them down rather than up?

Jan

>>> @@ -579,17 +602,19 @@ struct gnttab_swap_grant_ref {
>>> typedef struct gnttab_swap_grant_ref gnttab_swap_grant_ref_t;
>>> DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
>>>
>>> -/*
>>> +/**
>>>  * Issue one or more cache maintenance operations on a portion of a
>>>  * page granted to the calling domain by a foreign domain.
>>>  */
>>> struct gnttab_cache_flush {
>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>     union {
>>>         uint64_t dev_bus_addr;
>>>         grant_ref_t ref;
>>>     } a;
>>> -    uint16_t offset; /* offset from start of grant */
>>> -    uint16_t length; /* size within the grant */
>>> +    /** @endcond */
>>> +    uint16_t offset; /**< offset from start of grant */
>>> +    uint16_t length; /**< size within the grant */
>>
>> Skipping just part of a struct is perhaps even more confusing than
>> omitting it altogether.
>>
>> Also, what's the significance of "/**<" ?
> 
> It is a doxygen pattern that tells it to use the comment as a field related documentation.
> If you build the documentation you will find the result, I encourage you to see it to
> realize the power of the tool and the benefits that Xen can get with it.
> 
> Cheers,
> Luca


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 09:21:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:21:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113415.216096 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYmZU-0004BS-Bo; Tue, 20 Apr 2021 09:21:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113415.216096; Tue, 20 Apr 2021 09: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 1lYmZU-0004BL-8u; Tue, 20 Apr 2021 09:21:28 +0000
Received: by outflank-mailman (input) for mailman id 113415;
 Tue, 20 Apr 2021 09:21: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 1lYmZT-0004BD-5m; Tue, 20 Apr 2021 09:21: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 1lYmZT-0005lW-0e; Tue, 20 Apr 2021 09:21: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 1lYmZS-0002hk-OW; Tue, 20 Apr 2021 09:21:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYmZS-0006ae-O2; Tue, 20 Apr 2021 09:21:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=wQ8hmB0zh1Sfol7RsOsx7ExbVnvkiiJeNi1d5Tnph0o=; b=3oik9zeHHUUeEYRazmwgCvrifS
	EdSA0TgRc89Px1xQYDQN7Mvi8mw0toWOdLCqoMS0I5ghE6DsbSfB6R5TKjtEL7S6xTfYK7iwKRQJO
	SRB8o2kWndlF0Nt+cATH3714+QnFgMRUdXdj6B6zaL/g+Tsnis3+CuF84kNmEVJXF+Eg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161311-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161311: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=1c34211c22de28127a509edbf2cf2f44cb0d891e
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 09:21:26 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              1c34211c22de28127a509edbf2cf2f44cb0d891e
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  284 days
Failing since        151818  2020-07-11 04:18:52 Z  283 days  276 attempts
Testing same since   161311  2021-04-20 04:18:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


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

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

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

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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 09:23:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:23:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113423.216111 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYmbF-0004KJ-Tg; Tue, 20 Apr 2021 09:23:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113423.216111; Tue, 20 Apr 2021 09: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 1lYmbF-0004KC-Qf; Tue, 20 Apr 2021 09:23:17 +0000
Received: by outflank-mailman (input) for mailman id 113423;
 Tue, 20 Apr 2021 09:23:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EmVi=JR=lst.de=hch@srs-us1.protection.inumbo.net>)
 id 1lYmbE-0004K7-MG
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 09:23:16 +0000
Received: from verein.lst.de (unknown [213.95.11.211])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 26be06d4-a72d-475a-886d-a39189cab290;
 Tue, 20 Apr 2021 09:23:14 +0000 (UTC)
Received: by verein.lst.de (Postfix, from userid 2407)
 id 59ECA68C4E; Tue, 20 Apr 2021 11: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: 26be06d4-a72d-475a-886d-a39189cab290
Date: Tue, 20 Apr 2021 11:23:12 +0200
From: Christoph Hellwig <hch@lst.de>
To: Tom Lendacky <thomas.lendacky@amd.com>
Cc: hch@lst.de, dongli.zhang@oracle.com, iommu@lists.linux-foundation.org,
	konrad.wilk@oracle.com, linuxppc-dev@lists.ozlabs.org,
	mpe@ellerman.id.au, tientzu@chromium.org,
	xen-devel@lists.xenproject.org
Subject: Re: swiotlb cleanups v3
Message-ID: <20210420092312.GB26092@lst.de>
References: <20210318161424.489045-1-hch@lst.de> <0349082c-59c5-20d7-f324-279981c3f6ea@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <0349082c-59c5-20d7-f324-279981c3f6ea@amd.com>
User-Agent: Mutt/1.5.17 (2007-11-01)

On Sat, Apr 17, 2021 at 11:39:22AM -0500, Tom Lendacky wrote:
> Somewhere between the 1st and 2nd patch, specifying a specific swiotlb
> for an SEV guest is no longer honored. For example, if I start an SEV
> guest with 16GB of memory and specify swiotlb=131072 I used to get a
> 256MB SWIOTLB. However, after the 2nd patch, the swiotlb=131072 is no
> longer honored and I get a 982MB SWIOTLB (as set via sev_setup_arch() in
> arch/x86/mm/mem_encrypt.c).
> 
> I can't be sure which patch caused the issue since an SEV guest fails to
> boot with the 1st patch but can boot with the 2nd patch, at which point
> the SWIOTLB comes in at 982MB (I haven't had a chance to debug it and so
> I'm hoping you might be able to quickly spot what's going on).

Can you try this patch?

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 0a5b6f7e75bce6..ac81ef97df32f5 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -71,15 +71,17 @@ struct io_tlb_mem *io_tlb_default_mem;
  */
 static unsigned int max_segment;
 
-static unsigned long default_nslabs = IO_TLB_DEFAULT_SIZE >> IO_TLB_SHIFT;
+static unsigned long swiotlb_cmdline_size;
 
 static int __init
 setup_io_tlb_npages(char *str)
 {
 	if (isdigit(*str)) {
 		/* avoid tail segment of size < IO_TLB_SEGSIZE */
-		default_nslabs =
-			ALIGN(simple_strtoul(str, &str, 0), IO_TLB_SEGSIZE);
+		unsigned long nslabs = simple_strtoul(str, &str, 0);
+
+		swiotlb_cmdline_size =
+			ALIGN(nslabs, IO_TLB_SEGSIZE) << IO_TLB_SHIFT;
 	}
 	if (*str == ',')
 		++str;
@@ -108,7 +110,9 @@ void swiotlb_set_max_segment(unsigned int val)
 
 unsigned long swiotlb_size_or_default(void)
 {
-	return default_nslabs << IO_TLB_SHIFT;
+	if (swiotlb_cmdline_size)
+		return swiotlb_cmdline_size;
+	return IO_TLB_DEFAULT_SIZE;
 }
 
 void __init swiotlb_adjust_size(unsigned long size)
@@ -118,9 +122,10 @@ void __init swiotlb_adjust_size(unsigned long size)
 	 * architectures such as those supporting memory encryption to
 	 * adjust/expand SWIOTLB size for their use.
 	 */
-	size = ALIGN(size, IO_TLB_SIZE);
-	default_nslabs = ALIGN(size >> IO_TLB_SHIFT, IO_TLB_SEGSIZE);
-	pr_info("SWIOTLB bounce buffer size adjusted to %luMB", size >> 20);
+	if (!swiotlb_cmdline_size)
+		swiotlb_cmdline_size = ALIGN(size, IO_TLB_SIZE);
+	pr_info("SWIOTLB bounce buffer size adjusted to %luMB",
+		swiotlb_cmdline_size >> 20);
 }
 
 void swiotlb_print_info(void)
@@ -209,7 +214,7 @@ int __init swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose)
 void  __init
 swiotlb_init(int verbose)
 {
-	size_t bytes = PAGE_ALIGN(default_nslabs << IO_TLB_SHIFT);
+	size_t bytes = PAGE_ALIGN(swiotlb_size_or_default());
 	void *tlb;
 
 	if (swiotlb_force == SWIOTLB_NO_FORCE)
@@ -219,7 +224,7 @@ swiotlb_init(int verbose)
 	tlb = memblock_alloc_low(bytes, PAGE_SIZE);
 	if (!tlb)
 		goto fail;
-	if (swiotlb_init_with_tbl(tlb, default_nslabs, verbose))
+	if (swiotlb_init_with_tbl(tlb, bytes >> IO_TLB_SHIFT, verbose))
 		goto fail_free_mem;
 	return;
 


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 09:30:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:30:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113429.216122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYmiM-0005G7-Mv; Tue, 20 Apr 2021 09:30:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113429.216122; Tue, 20 Apr 2021 09:30: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 1lYmiM-0005G0-Jc; Tue, 20 Apr 2021 09:30:38 +0000
Received: by outflank-mailman (input) for mailman id 113429;
 Tue, 20 Apr 2021 09: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 1lYmiL-0005Fs-Qa; Tue, 20 Apr 2021 09: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 1lYmiL-0005tX-FU; Tue, 20 Apr 2021 09: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 1lYmiL-00031N-7E; Tue, 20 Apr 2021 09:30:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYmiL-0004zo-6j; Tue, 20 Apr 2021 09:30:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=CLemuXyWMwYgPNq2GQSPHBbigYxw8i5l4ONswVASeyg=; b=orJlDtjjCLFK8j+Ob0msGDdJqY
	m/yAD09Iv78Hnl+tzM3HMJlMV2T4t69509QnX3tAH2fwMwye5CJc0ZYDsyO8u1t9qi17YfAt35YJm
	oSGcXDHBscEsdHy/zoDnW8307Cb9+k0Dfx7CM7xCFbHML5Nyejy0Dn8hfaQ4C4WY2dUc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-arm64-arm64-libvirt-xsm
Message-Id: <E1lYmiL-0004zo-6j@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 09:30:37 +0000

branch xen-unstable
xenbranch xen-unstable
job test-arm64-arm64-libvirt-xsm
testid guest-start

Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161318/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-arm64-arm64-libvirt-xsm.guest-start.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-arm64-arm64-libvirt-xsm.guest-start --summary-out=tmp/161318.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-arm64-arm64-libvirt-xsm guest-start
Searching for failure / basis pass:
 161290 fail [host=rochester1] / 160125 [host=laxton0] 160119 [host=rochester0] 160113 [host=laxton1] 160104 ok.
Failure / basis pass flights: 161290 / 160104
Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
Basis pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f3bdfc41866edf7c256e689deb9d091a950c8fca 5b7f5586d182b0cafb1f8d558992a14763e2953e b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/libvirt.git#2c846fa6bcc11929c9fb857a22430fb9945654ad-2c846fa6bcc11929c9fb857a22430fb9945654ad https://gitlab.com/keycodemap/keycodemapdb.git#27acf0ef828bf719b2053ba398b195829413dbdd-27acf0ef828bf719b2053ba398b195829413dbdd git://xenbits.xen.org/linux-pvops.git#a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9-a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\
 dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#f3bdfc41866edf7c256e689deb9d091a950c8fca-99e7e48cc7117c37fc1c08a741872d0875595796 git://git.qemu.org/qemu.git#5b7f5586d182b0cafb1f8d558992a14763e2953e-8fe9f1f891eff4e37f82622b7480ee748bf4af74 git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#b4011741e6b39a8fd0ed5aded96c16c45ead5888-dd22a64de7e02b48312839a1\
 5179528c8f7db5c6
Loaded 44247 nodes in revision graph
Searching for test results:
 160104 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f3bdfc41866edf7c256e689deb9d091a950c8fca 5b7f5586d182b0cafb1f8d558992a14763e2953e b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 160113 [host=laxton1]
 160119 [host=rochester0]
 160125 [host=laxton0]
 160134 fail irrelevant
 160147 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail irrelevant
 160748 fail irrelevant
 160779 fail irrelevant
 160801 fail irrelevant
 160827 fail irrelevant
 160851 fail irrelevant
 160883 fail irrelevant
 160916 fail irrelevant
 160980 fail irrelevant
 161050 fail irrelevant
 161088 fail irrelevant
 161121 fail irrelevant
 161147 fail irrelevant
 161171 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2ad22420a710dc07e3b644f91a5b55c09c39ecf3 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161191 fail irrelevant
 161210 fail irrelevant
 161232 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b53173e7cdafb7a318a239d557478fd73734a86a
 161256 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161275 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f3bdfc41866edf7c256e689deb9d091a950c8fca 5b7f5586d182b0cafb1f8d558992a14763e2953e b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161277 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161280 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161283 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161285 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161276 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161289 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 87a80dc4f2f5e51894db143685a5e39c8ce6f651 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161292 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 758b96b61d5cbc19204f340012d5a325f0a2105b b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161295 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161297 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ce6c2b0016c2f68b6008acea1f24ed966b647147 56b89f455894e4628ad7994fe5dd348145d1a9c5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161299 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 879be3af49132d232602e0ca783ec9b4112530fa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161300 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3e1da158c47f3a6f5d48794f99fe01096531ec2e b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161305 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161290 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161307 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 81cbfd5088690c53541ffd0d74851c8ab055a829 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161309 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161310 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161313 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161314 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161316 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161318 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160104 (pass), for basis pass
 Result found: flight 161171 (fail), for basis failure (at ancestor ~63)
 Repro found: flight 161275 (pass), for basis pass
 Repro found: flight 161276 (fail), for basis failure
 0 revisions at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 161309 (pass), for last pass
 Result found: flight 161310 (fail), for first failure
 Repro found: flight 161313 (pass), for last pass
 Repro found: flight 161314 (fail), for first failure
 Repro found: flight 161316 (pass), for last pass
 Repro found: flight 161318 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161318/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

pnmtopng: 231 colors found
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-arm64-arm64-libvirt-xsm.guest-start.{dot,ps,png,html,svg}.
----------------------------------------
161318: tolerable FAIL

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

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-arm64-arm64-libvirt-xsm 14 guest-start             fail baseline untested


jobs:
 build-arm64-libvirt                                          pass    
 test-arm64-arm64-libvirt-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 Tue Apr 20 09:32:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:32:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113434.216137 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYmkb-0005PT-4H; Tue, 20 Apr 2021 09:32:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113434.216137; Tue, 20 Apr 2021 09:32:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYmkb-0005PM-1S; Tue, 20 Apr 2021 09:32:57 +0000
Received: by outflank-mailman (input) for mailman id 113434;
 Tue, 20 Apr 2021 09:32:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYmkZ-0005PH-TH
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 09:32:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id eeac016e-3059-45e2-a553-4235ac8e2138;
 Tue, 20 Apr 2021 09:32:55 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7074FB2D8;
 Tue, 20 Apr 2021 09:32: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: eeac016e-3059-45e2-a553-4235ac8e2138
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618911174; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mk8fDefez7G4plutkn94gH7g6EomInHaL6VBkm/kkcE=;
	b=WauKVrHV40lFYcQsIIN5s5h+voRxSCnVUsUyHUGcNyX+v77tQfehh0Qft5TvMdg3QlC8zH
	5Bi2We/+1rOzCiNOGwrfi5GE/EM4h0WmeOx2lI/OsA8UCi6xbHfeXmpO+XSmyNSUOYcCLz
	ah5Ronne9yRIYJq/H2+7ksl0C95c3ms=
Subject: Re: [PATCH v3 5/6] x86/vpic: issue dpci EOI for cleared pins at ICW1
From: Jan Beulich <jbeulich@suse.com>
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: <20210126134521.25784-1-roger.pau@citrix.com>
 <20210126134521.25784-6-roger.pau@citrix.com>
 <f20953be-ee22-c336-bca5-8da84af49261@suse.com>
Message-ID: <23ceee47-a69d-5aaa-d5ad-e12fae1f62cf@suse.com>
Date: Tue, 20 Apr 2021 11:32:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <f20953be-ee22-c336-bca5-8da84af49261@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 26.01.2021 17:57, Jan Beulich wrote:
> On 26.01.2021 14:45, Roger Pau Monne wrote:
>> When pins are cleared from either ISR or IRR as part of the
>> initialization sequence forward the clearing of those pins to the dpci
>> EOI handler, as it is equivalent to an EOI. Not doing so can bring the
>> interrupt controller state out of sync with the dpci handling logic,
>> that expects a notification when a pin has been EOI'ed.
>>
>> Fixes: 7b3cb5e5416 ('IRQ injection changes for HVM PCI passthru.')
>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> As said before, under the assumption that the clearing of IRR
> and ISR that we do is correct, I agree with the change. I'd
> like to give it some time though before giving my R-b here, for
> the inquiry to hopefully get answered. After all there's still
> the possibility of us needing to instead squash that clearing
> (which then would seem to result in getting things in sync the
> other way around).

Still haven't heard anything, so

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

In the worst case we'd need to consider reverting later on.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 09:42:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:42:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113441.216152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYmu7-0006RA-5P; Tue, 20 Apr 2021 09:42:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113441.216152; Tue, 20 Apr 2021 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 1lYmu7-0006R3-2O; Tue, 20 Apr 2021 09:42:47 +0000
Received: by outflank-mailman (input) for mailman id 113441;
 Tue, 20 Apr 2021 09:42:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/4LT=JR=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lYmu6-0006Qy-0F
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 09:42:46 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.14.49]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 02fe63df-d64a-42bd-b101-6b5184836f2f;
 Tue, 20 Apr 2021 09:42:44 +0000 (UTC)
Received: from AM6P193CA0082.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:88::23)
 by VI1PR08MB5421.eurprd08.prod.outlook.com (2603:10a6:803:132::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19; Tue, 20 Apr
 2021 09:42:40 +0000
Received: from VE1EUR03FT021.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:88:cafe::9a) by AM6P193CA0082.outlook.office365.com
 (2603:10a6:209:88::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20 via Frontend
 Transport; Tue, 20 Apr 2021 09:42:40 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT021.mail.protection.outlook.com (10.152.18.117) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Tue, 20 Apr 2021 09:42:39 +0000
Received: ("Tessian outbound b610e7b4d771:v90");
 Tue, 20 Apr 2021 09:42:39 +0000
Received: from 767d2bb96a2f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3497F03F-04E1-4521-87C3-CA4CE957980D.1; 
 Tue, 20 Apr 2021 09:42:12 +0000
Received: from EUR02-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 767d2bb96a2f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 20 Apr 2021 09:42:12 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR0801MB1632.eurprd08.prod.outlook.com (2603:10a6:800:57::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19; Tue, 20 Apr
 2021 09:42:08 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4042.024; Tue, 20 Apr 2021
 09:42:08 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0393.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18f::20) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.21 via Frontend Transport; Tue, 20 Apr 2021 09:42: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: 02fe63df-d64a-42bd-b101-6b5184836f2f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=q0qZM+69xz6DI0UHt9HHGYiNRpRswYbQO4hvdtFAYuo=;
 b=AvhhtkhlYOCW0138u6Op1iJ5nkT52S6+Brw6HGMxPtkEsHGJ+6atH4ouW848qqKG5KPYSVfrAu4InlpqZmM2Guq8ThI73qiPR713zlR7/ZIPs/Jj+Ebo5Ug18ZEDMAgfQRYfJ7YMFb6vfAkuIQEGgz8h8jETjmoHRFOplHPBqZU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: b18cf0e1f38b3203
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HJ9Bi0xr7Bgy8dv9pMbyTQXV0Aga/sDMqSzmTJr8HhW+oxwlgL4ZS4Ew34lkDcNoTVd+IxokX9d3uf0XNbUqvI50i8dcs3NCd0d4NYRs6cwJfzFCccjBUhKhoYW74hNzLykPsgGTGybVbSKJvq6aARxklLmriTvgBEuTAb2ZGgOkFqsg9bQluvN0R4DjQBrJAugO+BdD5mnsVgBhtV0RAKnZP9dNvQec86jl44LU3h4s5lxdcwTerUegTe3bss6Js1M/ycSkO4fzB+oU+G4VLtTFnzFnWg8W1dYsUBeX6wJoyZdVklRDABhXU9XRjNTg3kV+v+ZpxA9zZg3RteRhLQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=q0qZM+69xz6DI0UHt9HHGYiNRpRswYbQO4hvdtFAYuo=;
 b=VHPmwwXvgjhV+xNmyoJSQAZG3Wug7jhfG2B4cuxyuSkm9zWH2a4qSK1gOelL91ERdMZ96t1dsfVFFjPu5LsXSDTHUDpJORWyEZr5XlHQMCF96VCGgJ1GX3/BSO6006lSJsFM/KRG87kzvpObcLl1DLLR0Reicdeppu63sgfrDyK5cpEgCZ8OCrmWR1lwVGnXO0fSk8/ZVA3lAmuFvO6DMMLEvwb6NdiKzKkkFHN+l4b2j/+T8kYoaJVpKrSVZtqyjaZj8dQI8W++0ggX+PNAd4VbDvj1yL9Iwy9uc9rLsd21ZxsHmmcGWmYeOgYmFtZeiqkYYLYnEkatOFBuxdI3XQ==
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=q0qZM+69xz6DI0UHt9HHGYiNRpRswYbQO4hvdtFAYuo=;
 b=AvhhtkhlYOCW0138u6Op1iJ5nkT52S6+Brw6HGMxPtkEsHGJ+6atH4ouW848qqKG5KPYSVfrAu4InlpqZmM2Guq8ThI73qiPR713zlR7/ZIPs/Jj+Ebo5Ug18ZEDMAgfQRYfJ7YMFb6vfAkuIQEGgz8h8jETjmoHRFOplHPBqZU=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v2 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <c6d80a92-b8e7-703a-e051-18dc845b242a@suse.com>
Date: Tue, 20 Apr 2021 10:42:00 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <ADF98BE7-02CA-48C1-B0CF-E4C7B4C0E828@arm.com>
References: <20210419091231.55684-1-luca.fancellu@arm.com>
 <20210419091231.55684-4-luca.fancellu@arm.com>
 <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
 <0F26E53E-0C0A-4596-AC88-F803BC7A0493@arm.com>
 <c6d80a92-b8e7-703a-e051-18dc845b242a@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0393.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18f::20) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 193d6f94-b435-44fb-8cdc-08d903e0a368
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1632:|VI1PR08MB5421:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR08MB5421AF01D14D7AA680EBFE86E4489@VI1PR08MB5421.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:5797;OLM:5797;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Tv3jLXPtp++mK507S4En5kqXWfzrdI28e3J4hoiiHFXzdrkReh2Qb40E2D9k4WeZOhEcWf4k1YXPlMJLnF+1/W14tDbGsO5vbgB5IabJd9BgO3OzX9MNpbAvEQEvwPrOQ7Tqb5C52KsmttJarcBPXZkMFg/tXYviWkoJcRx1bWPFt1FJP+PZUyWfJSWsJ4EfrFg0iJ4XS4LV95j9iIE6LNSmT2Wo5B3AERBBNxJJQTxhTSZWTqy0iTKNKMLzQniwceIsnFWxKAvzLSJK2AgxQ5v20kjECgrzCurf5nMKsVxnwF8+JhVlr4o7MFiig5yeo7+QYPEYEAHGh96VXKD5wMk+7ZcN1PI02NJR7rhf75jMaEA3Zksy5j+8C8GabRGJBmsZ49MxoOEkAiuqgNRU01TBGbEpytOiN2VJheJYn5gbBplTa5Wb4MKzQBpEwONP5Ft3rrGhSEK4z0ORTFFUQzRDC4KxEmlUmHCmT4Ga3/RWlyoLRrXd5zb+0kvcgJT52LPf+0XcTMbcjlhSLTQLu1JWkZRfpIGQs4FjbmbAUGqMI/TSmq3XvF61bB551ouezbmhpSOh6I+FWTuz1fQljLOcmO56oF37FHvVUyQG3FrbUAHULyfFNnJWcyIprCuNTikeNDdrSdX95CmqiGx+lWwFnpcJmu7hVTpU3Mh3TxA8aBwlrhgvh7ENhNk69+upBHt2Gy4bYmV/AfBh8MIC52mgyRl0QLl7u5aMdMJ/GwiaB8/5G6/3Bxs3oAKTtoWU/l5lIW0NwRwGKq9ztU4v2w==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(346002)(366004)(39860400002)(396003)(316002)(966005)(2616005)(26005)(86362001)(186003)(38350700002)(8676002)(2906002)(38100700002)(83380400001)(66476007)(6916009)(66556008)(6486002)(54906003)(53546011)(6666004)(956004)(4326008)(16526019)(52116002)(66946007)(478600001)(33656002)(7696005)(8936002)(30864003)(5660300002)(36756003)(44832011)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
 =?utf-8?Q?9+7kbUN1prfgJh0CbQIzxcGAb3Z/wHM9xcVrXLS?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1632
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT021.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	301b544f-7a71-4982-89c3-08d903e090be
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RnRVCL9xLTsXjPTIY6US5ssdCGk2r/FcXHNnCmyIhmJUCRReNlUHVYxvtdZQWGJwArDnNzeQ0WJb5rFTWtoF0HIvMQ0ikn2jD5xj/OezU6zJZFloelz7jfKT8bo5pGDka+UVOQV4L9C7PKksOhtYTMk+/KQfeE/5nkvFGrkIcrBlMYUfUbHLszkxzkhaIRVxHV9aeaDRneEZQjamMuQ5D8kZc8ZSB1dOXKb4Cpwutd3xMxO2rB0sEeke9bGr5fIoDFScRB9/DnRMrfM8blvPd50AnsdULMd5TeLuCuC/fmNjJSXWAyyxZwfjq3NgYq88ZCV0H+TZvyfh4Pgx1xSYGm4ctS0E7ZvjbF0fj7p4xRptGXA07tZYS3f57hwtx/ucKCkQT5XD1M4Qf+rEBdj15HKQc6K0tPEL3udjWM20vq/2q1JrM6DBPZxfiMl4/Jl1csVu2ZHcW74xtkp1uvv/0YDxtZ1C02ULElUUAz0X/rjCPeilwMeWuc7il+MB6qPJHUwmJltM20cac7tLhoH2pr2f1SE5gkeW3kSbzYrnbVPiojc6Qso3D8pIVQafVlth/KO+8uNzjhk0E2CCQhuuPi0hJfn5lQir9d2Hs9lOk3RhGrS7Q7IdWhUOqFXWS7bUXfkdbZqP1Z3iQU7nKObaON8P6ffg6F4/p8jii7I1RqSJycPYKuImKFu68w711NL2GeaE/Fjlvt0GdWrBr4WvWjZmabqBiKV7mQIkdQiXH8I=
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:(4636009)(346002)(376002)(39860400002)(396003)(136003)(36840700001)(46966006)(47076005)(186003)(26005)(70586007)(336012)(16526019)(956004)(30864003)(2616005)(6486002)(70206006)(36860700001)(54906003)(8676002)(86362001)(5660300002)(36756003)(44832011)(33656002)(83380400001)(82310400003)(8936002)(2906002)(4326008)(966005)(7696005)(478600001)(82740400003)(316002)(356005)(53546011)(6666004)(81166007)(6862004);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 09:42:39.6922
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 193d6f94-b435-44fb-8cdc-08d903e0a368
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:
	VE1EUR03FT021.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5421



> On 20 Apr 2021, at 10:14, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 20.04.2021 10:46, Luca Fancellu wrote:
>>> On 19 Apr 2021, at 12:05, Jan Beulich <jbeulich@suse.com> wrote:
>>>=20
>>> On 19.04.2021 11:12, Luca Fancellu wrote:
>>>> Modification to include/public/grant_table.h:
>>>>=20
>>>> 1) Add doxygen tags to:
>>>> - Create Grant tables section
>>>> - include variables in the generated documentation
>>>> 2) Add .rst file for grant table for Arm64
>>>=20
>>> I'm missing some reasoning about at least some of the changes done
>>> to grant_table.h. Looking at this and the earlier patches I also
>>> couldn't spot any general outline of what is acceptable or even
>>> necessary in such a header to be understood by doxygen. Without
>>> this written down somewhere (or, if documented elsewhere, a
>>> pointer provided to that doc) I'm afraid things might get screwed
>>> up again later on.
>>=20
>> Doxygen is a tool that generates documentation based on parsing the sour=
ce code comments, it recognises some
>> commands in the comments and builds the documentation sticking to what y=
ou wrote.
>>=20
>> Here the doxygen docs: https://www.doxygen.nl/manual/docblocks.html
>>=20
>> Basically it doesn=E2=80=99t react to all comments, it parses only some =
well crafted comments as explained in its documentation.
>=20
> Providing this link somewhere might be helpful. However, also seeing
> some of your further comments, it feels like to edit a public header
> enabled for doxygen one has to know fair parts of this documentation.
> While I'm certainly in favor of having a way to generate docs from
> the headers, I'm afraid I don't think such knowledge should become a
> prereq to e.g. adding a new sub-function of a hypercall. So far I was
> assuming that the formatting requirements would be quite limited, and
> that it would hence be possible to just glean them from existing code.
> But e.g. the "/**<" notation isn't going to be obvious to spot.

Yes I see, some knowledge of the documentation tool is required but I=E2=80=
=99m sure that if anyone is able to
put his/her hands on the xen code, he/she will be able to use some of the d=
oxygen tag too, as you can
see from this patch the usage is easy and some less obvious thing can be un=
derstood looking the source
code and the corresponding generated doc page.


>=20
>>>> --- a/docs/hypercall-interfaces/arm64.rst
>>>> +++ b/docs/hypercall-interfaces/arm64.rst
>>>> @@ -8,6 +8,7 @@ Starting points
>>>> .. toctree::
>>>>   :maxdepth: 2
>>>>=20
>>>> +   arm64/grant_tables
>>>>=20
>>>>=20
>>>> Functions
>>>> diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/h=
ypercall-interfaces/arm64/grant_tables.rst
>>>> new file mode 100644
>>>> index 0000000000..8955ec5812
>>>> --- /dev/null
>>>> +++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
>>>> @@ -0,0 +1,8 @@
>>>> +.. SPDX-License-Identifier: CC-BY-4.0
>>>> +
>>>> +Grant Tables
>>>> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>>>> +
>>>> +.. doxygengroup:: grant_table
>>>=20
>>> Why is this Arm64-specific?
>>=20
>> This particular one is Arm64 specific, but it doesn=E2=80=99t mean that =
grant tables are arm specific, it is only that for now I=E2=80=99m
>> Introducing a partial documentation in the arm side. Any other user can =
in the future add more documentation for
>> each platform.
>=20
> I'm of the pretty strong opinion that common hypercalls should be
> documented as common, and hence not live in an arch-specific
> section.

Yes sure, I agree, but this is the first step to enable a kind of documenta=
tion, it=E2=80=99s a work in progress.
On a future serie this can be modify. For now I=E2=80=99ve tried to reprodu=
ce this page: https://xenbits.xen.org/docs/unstable/
In the section =E2=80=9CHypercall Interfaces"

>=20
>>>> @@ -73,20 +75,25 @@
>>>> *                           frame, or zero if none.
>>>> *  3. Write memory barrier (WMB).
>>>> *  4. Write ent->flags, inc. valid type.
>>>> + * @endcode
>>>> *
>>>> * Invalidating an unused GTF_permit_access entry:
>>>> + * @code
>>>> *  1. flags =3D ent->flags.
>>>> *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
>>>> *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>>> *  NB. No need for WMB as reuse of entry is control-dependent on succe=
ss of
>>>> *      step 3, and all architectures guarantee ordering of ctrl-dep wr=
ites.
>>>> + * @endcode
>>>> *
>>>> * Invalidating an in-use GTF_permit_access entry:
>>>> + *
>>>> *  This cannot be done directly. Request assistance from the domain co=
ntroller
>>>> *  which can set a timeout on the use of a grant entry and take necess=
ary
>>>> *  action. (NB. This is not yet implemented!).
>>>> *
>>>> * Invalidating an unused GTF_accept_transfer entry:
>>>> + * @code
>>>> *  1. flags =3D ent->flags.
>>>> *  2. Observe that !(flags & GTF_transfer_committed). [*]
>>>> *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>>> @@ -97,47 +104,55 @@
>>>> *      transferred frame is written. It is safe for the guest to spin =
waiting
>>>> *      for this to occur (detect by observing GTF_transfer_completed i=
n
>>>> *      ent->flags).
>>>> + * @endcode
>>>> *
>>>> * Invalidating a committed GTF_accept_transfer entry:
>>>> *  1. Wait for (ent->flags & GTF_transfer_completed).
>>>> *
>>>> * Changing a GTF_permit_access from writable to read-only:
>>>> + *
>>>> *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writi=
ng.
>>>> *
>>>> * Changing a GTF_permit_access from read-only to writable:
>>>> + *
>>>> *  Use SMP-safe bit-setting instruction.
>>>=20
>>> For example - are the blank lines you add necessary or merely nice
>>> to have in your personal opinion?
>>=20
>> The blank lines makes the docs output more good looking
>=20
> I'm inclined to suggest to split beautification from basic enabling.

I will take this into consideration

>=20
>>>> - */
>>>> -
>>>> -/*
>>>> - * Reference to a grant entry in a specified domain's grant table.
>>>> - */
>>>> -typedef uint32_t grant_ref_t;
>>>=20
>>> Why does this get moved ...
>>>=20
>>>> -
>>>> -/*
>>>> + *
>>>> * A grant table comprises a packed array of grant entries in one or mo=
re
>>>> * page frames shared between Xen and a guest.
>>>> + *
>>>> * [XEN]: This field is written by Xen and read by the sharing guest.
>>>> + *
>>>> * [GST]: This field is written by the guest and read by Xen.
>>>> + *
>>>> + * @addtogroup grant_table Grant Tables
>>>> + * @{
>>>> */
>>>>=20
>>>> -/*
>>>> - * Version 1 of the grant table entry structure is maintained purely
>>>> - * for backwards compatibility.  New guests should use version 2.
>>>> +/**
>>>> + * Reference to a grant entry in a specified domain's grant table.
>>>> */
>>>> +typedef uint32_t grant_ref_t;
>>>=20
>>> ... here, past a comment unrelated to it?
>>=20
>> The comment =E2=80=9CVersion 1 of the grant table entry [=E2=80=A6]=E2=
=80=9D was moved on top of the struct grant_entry_v1, in this way
>> Doxygen associate the comment to that structure.
>>=20
>> The comment =E2=80=9CReference to a grant entry in a specified domain's =
grant table.=E2=80=9D Is moved on top of typedef uint32_t grant_ref_t
>> for the same reason above
>=20
> But it's the other comment ("A grant table comprises ...") that I
> was asking about.

I thought it was part of the brief about grant tables, am I wrong? For that=
 reason I moved it.

>=20
>>>> @@ -243,23 +258,27 @@ union grant_entry_v2 {
>>>>     * In that case, the frame field has the same semantics as the
>>>>     * field of the same name in the V1 entry structure.
>>>>     */
>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>    struct {
>>>>        grant_entry_header_t hdr;
>>>>        uint32_t pad0;
>>>>        uint64_t frame;
>>>>    } full_page;
>>>> +    /** @endcond */
>>>>=20
>>>>    /*
>>>>     * If the grant type is GTF_grant_access and GTF_sub_page is set,
>>>>     * @domid is allowed to access bytes [@page_off,@page_off+@length)
>>>>     * in frame @frame.
>>>>     */
>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>    struct {
>>>>        grant_entry_header_t hdr;
>>>>        uint16_t page_off;
>>>>        uint16_t length;
>>>>        uint64_t frame;
>>>>    } sub_page;
>>>> +    /** @endcond */
>>>>=20
>>>>    /*
>>>>     * If the grant is GTF_transitive, @domid is allowed to use the
>>>> @@ -270,12 +289,14 @@ union grant_entry_v2 {
>>>>     * The current version of Xen does not allow transitive grants
>>>>     * to be mapped.
>>>>     */
>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>    struct {
>>>>        grant_entry_header_t hdr;
>>>>        domid_t trans_domid;
>>>>        uint16_t pad0;
>>>>        grant_ref_t gref;
>>>>    } transitive;
>>>> +    /** @endcond */
>>>=20
>>> While already better than the introduction of strange struct tags,
>>> I'm still not convinced we want this extra clutter (sorry). Plus -
>>> don't these additions mean the sub-structures then won't be
>>> represented in the generated doc, rendering it (partly) useless?
>>=20
>> Are you suggesting to remove the structure from docs?
>=20
> Just yet I'm not suggesting anything here - I was merely guessing at
> the effect of "@cond" and the associated "skip ..." to mean that this
> construct makes doxygen skip the enclosed section. If that's not the
> effect, then maybe the comment wants rewording? (And then - what does
> @cond mean?)

Yes you were right, in the documentation the structure grant_entry_v2 won=
=E2=80=99t display the
anonymous union.

>=20
>>>> @@ -433,7 +454,12 @@ typedef struct gnttab_transfer gnttab_transfer_t;
>>>> DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>>>>=20
>>>>=20
>>>> -/*
>>>> +#define _GNTCOPY_source_gref      (0)
>>>> +#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
>>>> +#define _GNTCOPY_dest_gref        (1)
>>>> +#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
>>>> +
>>>> +/**
>>>> * GNTTABOP_copy: Hypervisor based copy
>>>> * source and destinations can be eithers MFNs or, for foreign domains,
>>>> * grant references. the foreign domain has to grant read/write access
>>>> @@ -451,18 +477,15 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>>>> * bytes to be copied.
>>>> */
>>>>=20
>>>> -#define _GNTCOPY_source_gref      (0)
>>>> -#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
>>>> -#define _GNTCOPY_dest_gref        (1)
>>>> -#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
>>>> -
>>>> struct gnttab_copy {
>>>=20
>>> Again the question - why the movement?
>>=20
>> Doxygen takes the comment just above the data structure to build the doc=
s, so here we are moving the
>> Comment just on top of the described structure.
>=20
> Well, okay, this then is an explanation _that_ the #define-s want
> moving, but not an explanation for where they got moved (father
> away from what they actually relate to). Personally I consider it
> good practice to have such #define-s next to the field they relate
> to (and we have such placement elsewhere). Perhaps worth
> considering to move them down rather than up?

Sure they can be moved down without problem.

>=20
> Jan
>=20
>>>> @@ -579,17 +602,19 @@ struct gnttab_swap_grant_ref {
>>>> typedef struct gnttab_swap_grant_ref gnttab_swap_grant_ref_t;
>>>> DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
>>>>=20
>>>> -/*
>>>> +/**
>>>> * Issue one or more cache maintenance operations on a portion of a
>>>> * page granted to the calling domain by a foreign domain.
>>>> */
>>>> struct gnttab_cache_flush {
>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>    union {
>>>>        uint64_t dev_bus_addr;
>>>>        grant_ref_t ref;
>>>>    } a;
>>>> -    uint16_t offset; /* offset from start of grant */
>>>> -    uint16_t length; /* size within the grant */
>>>> +    /** @endcond */
>>>> +    uint16_t offset; /**< offset from start of grant */
>>>> +    uint16_t length; /**< size within the grant */
>>>=20
>>> Skipping just part of a struct is perhaps even more confusing than
>>> omitting it altogether.
>>>=20
>>> Also, what's the significance of "/**<" ?
>>=20
>> It is a doxygen pattern that tells it to use the comment as a field rela=
ted documentation.
>> If you build the documentation you will find the result, I encourage you=
 to see it to
>> realize the power of the tool and the benefits that Xen can get with it.
>>=20
>> Cheers,
>> Luca



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 09:45:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:45:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113452.216181 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYmwS-0006ii-Ud; Tue, 20 Apr 2021 09:45:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113452.216181; Tue, 20 Apr 2021 09:45: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 1lYmwS-0006ib-RV; Tue, 20 Apr 2021 09:45:12 +0000
Received: by outflank-mailman (input) for mailman id 113452;
 Tue, 20 Apr 2021 09:45:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Qt+d=JR=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lYmwS-0006iW-1X
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 09:45:12 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5148627c-bfac-4dfa-850a-114d467657af;
 Tue, 20 Apr 2021 09:45: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: 5148627c-bfac-4dfa-850a-114d467657af
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618911910;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=UKojnfHF9gNH7BNW20kJaYWN/y874lHbSG8rjBK/yZI=;
  b=OAC4n4DK2EyZKW2XXCG++LV6b3s8r0RF2tCcY/kXnUTmseX/zxOAUdAU
   ngeOESdjd2UAq15TJhOLGRGUfioPC+PoWV1ZBbXf/FwAoGUWYWYz++F5t
   NilM8V02vgoxzssL2x7JVD7Pmi33bk4jLF12UKwpzasCm7etUsbLwIfcU
   E=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: NYkUu6Sl9rA7jmFJlf7u8F9v5hWaP7HvKzrM5oBFAIKiTj5Ktub4EoPjwVd07SjlA7/uZBgZ5j
 iBi+Z7CWRF1RxppBcf3z0U/8LUnt+GuwfeOMLytty1h3+DyMv2GlZfx3tCemKu/KqQPa8Naddi
 GLBmPh7IKb0lUUB8uIFc9n/UrNTqE77Z4TE9ZJm0YL9hqfHkC9Wt2fGZx2b3OTO8xXn8dd2MCD
 e7GtrVSwTqS1LPYYxvdcfgK1kq0st0RgicT5NqFLFPi56gy0/TD0FG3HBLaCdQ+eOHc3xsprWB
 BXU=
X-SBRS: 5.2
X-MesageID: 41965223
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:/AP9hqnLYDnBF1jNt3mNUfd9L2PpDfOFimdD5ilNYBxZY6Wkvu
 illvgDyFvQgDEeRHkvlbm7Sc+9aFvB6J945pQQN7++XA/g/FClNp1m8JGK+UyfJwTV8OlB2a
 B8N413D9PtBVZ35PyKkzWQOdAm3dWB7eSUlf7Tpk0dPz1CRql8425Ce2SmO2JsQg0uP/UEPb
 qaovFKvj+xPUkQB/7LYUUte8jmi5n1mIn9YRgAbiRXlzWmqT+z8rb1H1y5834lIlZy6Iwv+2
 TEjAD1j5/L25rXpiP07GPd449bn9Hs0LJ4daixo/IIITbhgBvAXuVccoCCpzw8raWO71sngb
 D30nQdFvlz8H/YcyWJpwLs0WDbsAoG1nmK8zGlqEqmhea8eDU7E9ZM7LgyTjLpr24b+PB1yu
 Ziwn+QvZs/N2K4oA3No/zzEyxMumXxi3w4iuIXh2FYSuIlGcdshL1a2ENQHJ0JBj+/zpsmHu
 loBNzb/59tACOnRkGcmmlqzNalRGl2JA6PRgw5sMqP31Ft7QFE5lpdyN0Um38B8J4nD51Io+
 /FPbhynrlSTskQKaJ7HvoIRsG6Y1a9PC7kISafMF7jHKECN2mIr5Oy6rMz6+GlEaZ4tqcaid
 DMQVlcvW43d1mrDcDLxpFC6RrNBGewTV3Wu71jzok8vKb9SrrtOTCCT15rk9LImYRlPvHm
X-IronPort-AV: E=Sophos;i="5.82,236,1613451600"; 
   d="scan'208";a="41965223"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mBPIPHfumyHrYVzz5Weilh2/xWfCzv+0vG0TMOTsaDIF+T13LIxR4lAR/oHlwQYnuFpUM+BPN/9YKPAkXUaueYb6FcbLguy+1S5qgj6iXbsS5Qo7qAwZGYMG/d0S2a1GNROxh5o65g4RVb5aec7ld34mbUnz2RHtLOli0+2nJjTA6e6Kuw/lG0POfQB3RHIAssR+K8U11vHOGey71ksh/DVhV/Z3B+KSGsYgY1a0+rSW4Dce6smPIKXEd/ogJRlLc+2PT8JXFgvf5jmwckaUBzRJ9mGzd9PE2tzRf3YtLrXu+aj4OGohWB9wYCibLcFsqCR8nTUwmlyDNGHO4NgiRw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sOVTIxGK8axq+Xxi2TZ+Jjqa+ohX+QH4QqjR4m5CteI=;
 b=M/uVZKiFZS803Y80OlUsb53Up2LrLb7bA1TGeJZ4uCRHgkGACg8k98+nNisPUwejjNupUbXUfF/lQkjeZVABlr1MqIPv6qnY1MHhElu/D1aFqN6riZejKazK6ojIUZTtoLXpg072lJvoIbZHV0uotxokeLqswbUeAMh2M6zUrSFOKl7LfHterUiNBplbBCPJRR6VIQLXysVvcLsCrnZz1VF+H5aMA45ajRTCLcNx4HqafzK305VQ/RMZDSejKHN+Uns6EW8d/4TG19QwkSar1xISut0diK+SJUoOYe+OYt7HOwgnLM+yiFKW6hr5jdG+Iyd8QtP84RH1hm3GlbjiLg==
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=sOVTIxGK8axq+Xxi2TZ+Jjqa+ohX+QH4QqjR4m5CteI=;
 b=YtnQ9K2Y4glGXZ2FCYS+5Og/HpU3RqiuNktq0P/9j9GRLH1+S2kD+I4p8ehD8uCH0LEYyAEmwGTzwDPeEPf7Nj5azbQ9K736chG0L1d5l7V8e/EkEGAaEJ9nUo6k1dAB+ZmI9gB3O3FvTM7EIl5Ie7hPoU5++F+mnsxBmpcPdRs=
Subject: Re: [PATCH] xen-mapcache: avoid a race on memory map while using
 MAP_FIXED
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
CC: <qemu-devel@nongnu.org>, <xen-devel@lists.xenproject.org>,
	<sstabellini@kernel.org>, <anthony.perard@citrix.com>, <paul@xen.org>,
	<mst@redhat.com>, <marcel.apfelbaum@gmail.com>, <pbonzini@redhat.com>,
	<richard.henderson@linaro.org>, <ehabkost@redhat.com>
References: <1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com>
 <YH6WfgdFpFaMYtvC@Air-de-Roger>
From: Igor Druzhinin <igor.druzhinin@citrix.com>
Message-ID: <8cd5ae50-dff8-2ccd-0036-f27b82242f74@citrix.com>
Date: Tue, 20 Apr 2021 10:45:03 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
In-Reply-To: <YH6WfgdFpFaMYtvC@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0486.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a8::23) To BN3PR03MB2401.namprd03.prod.outlook.com
 (2a01:111:e400:7bbc::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ae1218b7-350c-450e-3cbb-08d903e0fb1f
X-MS-TrafficTypeDiagnostic: BN7PR03MB4354:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN7PR03MB4354438D699BC392AA61BF07E4489@BN7PR03MB4354.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4303;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: WUDeTIT3tZqXAr+AkyngZteTVb/E3l+DF0dZSJreDSF9yOteskOyHCLVGQDK6/fFaFIfdJtZQoPXGgTWqXcylIxg+8SRq73VgaYu1Px15VzYUl2QsFcFwXHIzYiIP201BH/rm96L/i4LFrkEi+0wTxIEbO/O1qFqOMVCfTpaVNJ8vZ3Ei9uzuSLp56JUagK4GerMmAXOF5swM9Sj0Phb0g52+qpRGrc1p/ovPvfngEXgLceAcRRy0wPW3GPgnOi9/43Xd5UnnUr99xL9P/EbRp/9rkt8gcXteA9X8JrrBFyVgEayKdnePWqC8ygTx5J5aFqh2LtM5i/vUjNr4betFMFUm4vxV2IQBKQvYULpovQVa8uDRbvoYNQrivwRscTj9YqUCoR5DiELrt1r4PadWQXzZrnt4yzC+ynWXum2pISZjJhqLjY/LI3V7QxBYKCauqXqpnQi0Bpdhda05bLJcrujJGc0JgbyUVy3vwIT2TPna4jqcwTbu4NXqSvddxcXRa0IwdZHXfUZ/upznIa5Ysda+zLBu2rC5ypt4gpFpjeAzNqXFWOMeFe54RsP3oL2/sDjA/AjbFQ18xFEiIm6PisKWUhkdwWTS2YAUNvzdg7b2JKe/5V1w/h0qz2zOd7sUNqankHQUJs4t3PCnuC6mgOajn8kTAhTLIdb845BRwTVltyxedh4l/Gm14cU4H+k
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN3PR03MB2401.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(136003)(39860400002)(346002)(396003)(376002)(2906002)(66556008)(6486002)(53546011)(86362001)(83380400001)(478600001)(5660300002)(38100700002)(66946007)(31696002)(956004)(2616005)(31686004)(4326008)(44832011)(6862004)(36756003)(16576012)(8936002)(37006003)(16526019)(8676002)(186003)(26005)(66476007)(6636002)(316002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: ae1218b7-350c-450e-3cbb-08d903e0fb1f
X-MS-Exchange-CrossTenant-AuthSource: BN3PR03MB2401.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 09:45:07.2111
 (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: p8HF+VpxXlYm+oYZOg7H7R9CExoq61sf9vQXvPMN9Xu2BEB2Zme2qkzaSS/0T07urLwHF+qeQERVdVVx+gLqFbLS2RhVgYbrJVaj95Zk7JA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR03MB4354
X-OriginatorOrg: citrix.com

On 20/04/2021 09:53, Roger Pau Monné wrote:
> On Tue, Apr 20, 2021 at 04:35:02AM +0100, Igor Druzhinin wrote:
>> When we're replacing the existing mapping there is possibility of a race
>> on memory map with other threads doing mmap operations - the address being
>> unmapped/re-mapped could be occupied by another thread in between.
>>
>> Linux mmap man page recommends keeping the existing mappings in place to
>> reserve the place and instead utilize the fact that the next mmap operation
>> with MAP_FIXED flag passed will implicitly destroy the existing mappings
>> behind the chosen address. This behavior is guaranteed by POSIX / BSD and
>> therefore is portable.
>>
>> Note that it wouldn't make the replacement atomic for parallel accesses to
>> the replaced region - those might still fail with SIGBUS due to
>> xenforeignmemory_map not being atomic. So we're still not expecting those.
>>
>> Tested-by: Anthony PERARD <anthony.perard@citrix.com>
>> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
> 
> Should we add a 'Fixes: 759235653de ...' or similar tag here?

I was thinking about it and decided - no. There wasn't a bug here until 
QEMU introduced usage of iothreads at the state loading phase. 
Originally this process was totally single-threaded. And it's hard to 
pinpoint the exact moment when it happened which is also not directly 
related to the change here.

Igor


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 09:52:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:52:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113458.216193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYn33-0007dG-Ot; Tue, 20 Apr 2021 09:52:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113458.216193; Tue, 20 Apr 2021 09: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 1lYn33-0007d9-KF; Tue, 20 Apr 2021 09:52:01 +0000
Received: by outflank-mailman (input) for mailman id 113458;
 Tue, 20 Apr 2021 09:52:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Qt+d=JR=citrix.com=igor.druzhinin@srs-us1.protection.inumbo.net>)
 id 1lYn32-0007d4-7A
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 09:52:00 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d038f68d-b12b-40d7-a495-1a68dc996287;
 Tue, 20 Apr 2021 09:51: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: d038f68d-b12b-40d7-a495-1a68dc996287
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618912318;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=N9fJbDgLGOngQziq23gVUBSC97A1kZ8gfRwwjPrXTCs=;
  b=geHQzGFdQ2jpMQttr3grk4j0uXy5mb8u2QpGY8UG5ky21j7+kOnI7kMb
   8PpnLlsf5L2745ZnhY62TF5r82HjvcJMyc0p0jcTB6vPZdp84RUwFWYHC
   qEQDn2Cwe+TiGASK7/sS/DDekTeNz3BDuED/rd3KQz6eyM4N8LpZqoRn3
   M=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: hz+oqp6Y5UDMSMeQHky7ukxusaKUPvCr+nVDCIwOYpmPjUFhZ7xCBrmNSrbv6xr/ao20ivPtll
 bu4vPntDQo6ZpMODkKunEXJH8tHbpz7oAd3f4lu31Gb2YC9nv5wLvZzTOOyjz97VCxykWvbQl4
 iYJymfwwBnyut0PMlt9B0VXfsNwhM1mqVdnWP6e+ZfRi9pTQQwkyXjO8X+zEJZ5xYpp/LC/WDO
 0IvhJxursKSx2GxDCAG/arQu77XNDfmtBv6NJKS2jSGgjsP5M/MXaE6QgmER9UYNxn+qW5K9pb
 AAU=
X-SBRS: 5.2
X-MesageID: 41958512
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:8bZDpalXECVSdlVqeRMJvuUM/QvpDfODj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN+AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 hdWoBEIpnLAVB+5PyX3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0YNi+wOCRNNW57LLA+E4
 eR4dcCgjKmd2geYMjTPAh7Y8HoodrXmJX6JSMcDxk85wWUyR+u4rj2Ex+Xty1uLQ9n67Ek7G
 TDjkjF9ryu2svLtiP0+k3yy9BtmNXnwsZeH8DksKkoAxjllwrAXvUbZ5SspzYwydvfkWoCsN
 6JmBs4OtQ21nW5RBDJnTLI+y3NlAkj8GXjz1jwuwqQneXcSCghA8RMwaJ1GyGpk3YIh9133K
 JV02/xjfM+Znms7UeNham9azhQmkW5unYkm+II5kYvN7c2U7NNsZcZuHpcDZZoJlOI1KkcDO
 JsAMvAjcwmFG+yUnaxhBgK/PWRRHgpWj+JTk8e0/blqQR+rTRSyksVw9EnhXEQ9J4xYIks3Z
 W1Do1Y0J5JVcMYdqR7GaMoRta2EHXERVb2PHuVOkmPLtBIB1v977rMpJkl7uCjf5IFiLM0hZ
 T6SVtd8Uo/YVjnB8Gi1IBCmyq9AVmVbHDI8IVz9pJ5srrzSP7AKiuYUm0jlMOmvrE2HtDbc+
 zbAuMVP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5urWN4zRsPDBevq7HsuvLR8UHkfERl
 cTVjn6I8tNqmqxXGXjvRTXU3TxPmPl+5ZdF7Xb4vgzxIABOpYkiHlQtX2JouWwbRFSuK0/e0
 VzZJn9lLmgmGWw9WHUq0VlUyAtSXp90fHFaTdntAUKO0T7ffIooNOEY11f23OBO1taR8PSGw
 hPmkRv9cuMXtqt7BFnL+jiHnORjnMVqn7PZYwbgLe/6cDsfY59KZo6RqprF0HuGwZukQhn7E
 dPATV0BnP3J3fLs+GInZYUDObQe51XmwGwO/NZrnrZqAG7vsEgRnwSWha0Ss6JiQMSRz5Z72
 cBtpM3sf6lo3KCOGE/iOM3PBlnc2KMGo9LCwyDecFpgLzxQRpxSm2LnDSerBk2dgPRhhwvr1
 2kCRfRVeDAA1JbtHwd9qrx6lt7el+QeF9KZmlgvZdwEnnHvXhPwfaGD5DDple5Wx8n+KUwIT
 vFaTwdLkdVy9e72AW8tRyCGX8lr69ec9D1PfAGSfX+y3mtIIqHmeU6BPdS5o9iL82rmPQMS/
 ijdwicKy7YB+sl1xeOnGssPDB5pRAf4KvV8SygyFL98G80APLULlgjeqoSJMuE6XP4A9mPy5
 d0gLsOzKONG1S0TuTD767ZbzROcEyO5UG3SvwlspBSs+YZsqBpE5zSTDvP0zVm0XwFXbHJvX
 JbZJ4+xrbLfrJLVYg1XQly+1IyjtSBLEcxqGXNc6UDVGBoq0WeBs+D5rrDlKEmDUKArjbhIF
 X3yVwrw971Gw+4kYMAA60+IW5qeFExxXRr8uSFbZDRAmyRBqh+1Wv/Fn+2a7lGTqeZXZ0Wsx
 Zh+tmN9tXnOxbQ6UT1vTFhJLhJ/HviacSuABiUEeoN19ChI1yDju+L58G05Q2HBgeTWgA9hY
 dfc1YXYdkGoj4+jJcv2iz3c5fJmCse4hBjyAAisEXs1Iig6HraGk8DETSxuOQmYRBjdl6Sjc
 rE9uCE0m/a+zYt4+iZKHtt
X-IronPort-AV: E=Sophos;i="5.82,236,1613451600"; 
   d="scan'208";a="41958512"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OyGpvH/lK0yNVnJ5TTwnmSkhGsZbuwe9tXm2mLFBx1csg+hxFXbe6IysDRkTIfV56vxK0MiSMySHwDzp+9To5sLvmeKUz1rrHh2mnnp93DFvmeQCc87Q51SoC4LSZ9J6irwfVqgCxUwIRbeFZ1EQRZTFUzDUR5SfpaaLTG7BX+EIMI80oifkpLzbY0HJDL5y4Uz+n5DRTZnK9tUWn066tm6VTpx6Sy4SGdKy4berC12PCkwGuGPwaT8ovM3fBpqaJWQhaCLjOFO6ruhX8loQsoB+433BqpThykJIoBhJdgs5WTL3DyZuzE7eR1VkxIZiMPsV52x95sH7JgIH9ajI2Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2xhBfndjzOI6Bx3CmiqjD1VqkS8zdHxSFSRNYVPhurQ=;
 b=IOvQGzqg3SjBYsL+MOYAlaca9PIbzBoFrQy+7TxbBk8J4oP3+/mh4vgMwehJakeLziVAidq+qfN8fQk/l3di3xBg8iYejgta8BExxKH1ZID8kRYMe9OID8myYNa5akYMjn5Vqusw/OZw7r0MIi6ZGzREO5RX2nYK3+5NPGxkfZA9u31xsGrhMit24y9yOwHYylxUIN7TBfkIt8YnLEZ5gqFT/N13Avtd7vLiCBVL23duNrPVCCnswhjzQlwpxzPd0FLt5Mq7GhvSfwXUXrH35r+YoH/C59xHeEMVcwzqK82D0EHF802yUqK5eh1LFz3WHLO7N650tzQpfLW6k2XvZA==
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=2xhBfndjzOI6Bx3CmiqjD1VqkS8zdHxSFSRNYVPhurQ=;
 b=IBHyxred1QuV3+QJ+R52XvhgB/6Pcf+jm26wOchFZGQV12umLk3NbjxBDsTW859H4N+W/JS6syMhgF3x2zDpEGR04gRPiPcgdhr3zfde44Ft/rCOwUrOO2bD+Gk3HU759RSy22tg1YvSY8uAWSG7lwHx/mq1hqlOu2HaGpeZzos=
Subject: Re: [PATCH] xen-mapcache: avoid a race on memory map while using
 MAP_FIXED
To: <qemu-devel@nongnu.org>, <anthony.perard@citrix.com>
CC: <xen-devel@lists.xenproject.org>, <sstabellini@kernel.org>,
	<paul@xen.org>, <mst@redhat.com>, <marcel.apfelbaum@gmail.com>,
	<pbonzini@redhat.com>, <richard.henderson@linaro.org>, <ehabkost@redhat.com>
References: <161888998361.15979.8661085658302494664@72b6d80f974b>
From: Igor Druzhinin <igor.druzhinin@citrix.com>
Message-ID: <91dc07bd-fc34-56fa-4c3e-684626a2e8d5@citrix.com>
Date: Tue, 20 Apr 2021 10:51:47 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
In-Reply-To: <161888998361.15979.8661085658302494664@72b6d80f974b>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: LO4P123CA0273.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:195::8) To BN3PR03MB2401.namprd03.prod.outlook.com
 (2a01:111:e400:7bbc::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 26859240-e944-4bf0-74a1-08d903e1ec0d
X-MS-TrafficTypeDiagnostic: BN8PR03MB4756:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BN8PR03MB4756E01AE6DB4AE522DFC4FAE4489@BN8PR03MB4756.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: JxRTskovc5TcabncqQX3uMCq9gPfaI65AC3+14D6/2WH57y+qObjkS0XzWbKovJhQt6X1z87WbbU27PhyZtLmw7NiAAJ12iK2w2oFF8RKRvauTvUJYqstNxgugUPYaAszKom0hZAi3xSpyCVIU0rQwSt4JEtaMpiaTRKUaoeA6tsbslSbftLPCYpc7L/gc2q3lQGpHmHJdQfcWiu3npbrGFJLyUUA2Jf/5P2BvW9lgN3MiC2YEB20QTHh7mqEVISxLMsoEqfioIeG9UxYHCy74iVAo3QRn6npbWnQnJVuBH6Kk9IaN3600ZoFDOxyEUhu+GzK8i+rXCzu0FY6/5C5/ky6bjEIKuIrIiCAvGtAv64J6w2bp/f7LJcOf/3UhxaFaSCFtu3C2tx8lIOkGAbJoqyhX2TbB9PrFI1Xud0sIDCEJhzibNjLDf/yoZM7jjBhWP0lYDvQsxyLPhLetr4+jvbd1LSredOXUCmkKWdsnvJg/FiBenQbuf4w2AX5cy/ObgYwOINHddxv+1pwa0ODbzzXUvKrjmvIL0j20tdcNU+o13yYAMYrQX9eiHKk/BKnhxpaj+VlBIlwl65XW+zLbmAfa+hjSEz82rUZiI17vq3J4qOpb/Dy2h0+VfxToHNpXcxWiad0VKIgfcBuZjZh8RbqR/uxipG2BrKx4SGYRv+stQvFNUIJApOdboTuo3C/z2iX8D5InSU0zS+8fdGqHYLt9Ofl6VN6UHB46ynESAsS3ykqdi1XKRst9GE4yWhirGg3nbSpt/OwCf154kwmQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN3PR03MB2401.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(376002)(366004)(136003)(396003)(66476007)(8676002)(66556008)(66946007)(83380400001)(956004)(2906002)(31696002)(6666004)(6636002)(38100700002)(316002)(8936002)(44832011)(16526019)(2616005)(16576012)(186003)(31686004)(478600001)(6486002)(53546011)(26005)(36756003)(4326008)(86362001)(966005)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?QkpKUStDc3pyZ3drdHVJeTloOUJ3R3EySlhRNkM4UjY1SmduZlNsRDJyT2xx?=
 =?utf-8?B?cnY0MkpZVzJCaWZwM1o0ME5nTnpJaGJwZkdySytQQk4rUVU0UVlLcHM0ZmI1?=
 =?utf-8?B?SXIwNm8yMG5XMENiNitjb2VkMmVETXNpWjcrWFIvMGtjRFdUUHpNdEdpMlJ3?=
 =?utf-8?B?L0tBaEVkUVFCUU15WlpINjJMTUI2blJyNFBLMTZmclFYcVErUmthdjhLOXRK?=
 =?utf-8?B?NDFDazdnSUs1YjQrMGh2RzlDSWNWcURldWo3eU5sK2xSSjdSOEc2NXZ4ZUdP?=
 =?utf-8?B?ZElRUEJRQ2V4eDQvd0JJNUU0eGpZTkppYzZTeG0zcFNpSnMxN3NaWHMzdVVY?=
 =?utf-8?B?b043UHpLQjArVnpGSmdVZUtIQmpES3BHeWVtNUtiMXNHeHBMWmpQVE5rV3RW?=
 =?utf-8?B?a0VmanVibU96dm1UWjQzK1hReTZLSDlsMVdFbC9KMm9Ba3JLa0ppVGg0WVVX?=
 =?utf-8?B?S2FXcHRWNlZscFI4TUtVVEhyL3JWNCtpUVZIT3JJMFBtblhURUtZNE96My9U?=
 =?utf-8?B?d29pZUFhbE5lNmRNaDc5eWt5UTBrdEFnZU1hQWhDWGRMYjJNNUMzZC9wVGln?=
 =?utf-8?B?REUvbkJSTkdMeTMzdXo2K1lQalp4S3BSZEN2dTNDUVpQMnZvdEhrRnk0L0k1?=
 =?utf-8?B?ckYveEZsZUZQSHIzNWtDMXoyNFVsNFB0ano0ZVlWVEQrTWtvMmFNK1RncmQ4?=
 =?utf-8?B?ZUZEOFp4VjhBWHFpM0llbUV6ZGlLaWIrdVYzd1ZleGlQU2F6dFNCQmw1VzAx?=
 =?utf-8?B?NFIvanZWZjEyT3YyS29aTnFLQi9meGI1ZmhkWi80WVc0Mk1aaEF6YlpuVkxj?=
 =?utf-8?B?b09IMmxsQTErMmFCRWlEQXI0b0t0NTRWTmdGbTlIT2I4ajFwYVBVc3lZd1hl?=
 =?utf-8?B?a2U4c2s5VkR6dndZM0NWS1FHUGtHNEFGNFhrZnNvT1p3MHlXUEJoaHFVTmdF?=
 =?utf-8?B?RlRzRlJCKzkzaVlEWEMxYjlRSG1VM0NrTGNQN0tvQzY0bk1Qb2h3Ky9IbVBL?=
 =?utf-8?B?RDlaV05Tcjlwd0tBcDNTUHVhbmY4WnRnbVd6eGJiVWFIYWp1M3JOcm5jaHd5?=
 =?utf-8?B?ODcvd1EyRTJSNkczdGE1Nkh1WEJZNGtXUjlXalM0Rk9MekdBdk1XNTM2MDdG?=
 =?utf-8?B?TW5scU5CT3BOTWZKUlB2QU5Mb3RHalNWdGhUZndzSlh2QU1rZ3NKa3N2L3gy?=
 =?utf-8?B?TTU2bG0wSWF1STVWNEMxVWhxTTlyUXdlN09teHRpOVVXWjVleFlvZmVFUkIz?=
 =?utf-8?B?Z3JmaGVxMlE1YzRFdFRTOEhudVpMV0preXlzUjNXN1VBWW80ci9uUkxoL1RX?=
 =?utf-8?B?eHFvWVhDdFlnemY3aFRUSUhyRkd3ZS9CNFBEc2ZHWlVhTTN3dkhSUVExNVRQ?=
 =?utf-8?B?L1JOM0NqMit4Wnp3NTN2T0NEMFdYMmgza3JpeitNNDdqU0U3L2R0Yy9UQkxE?=
 =?utf-8?B?UkVGL0N6K29uWkw2N3A1TTAwRk5zeXU1R0syYmUwSVJXMnMzUVRMdGVwOEFJ?=
 =?utf-8?B?cC9aaUZEQ0Y0emw1RkllelplOE9vTlIvRUZoSWorZlRKT2dBTVpjWjJvNysw?=
 =?utf-8?B?ZGNodHVtcjMyN2NWcG1QVnIvYXA0SWxJejhqU01udW1tb3pwNGRra1ltcWRl?=
 =?utf-8?B?S0NVc0djV2lxSDZFRFVEWWUvZHUzaE00cDhxZnIxL2xmbXo1U2lWeUE4V1NG?=
 =?utf-8?B?Tm5hYjAxNTBwOE14UkdlVy9NR2ZneHNYQTVGbWtjQjE4UGRkOTdibGRtNity?=
 =?utf-8?Q?trr2xyV2tBCuaYEp/b6pZlTsdIVOWsazKAcqJrq?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 26859240-e944-4bf0-74a1-08d903e1ec0d
X-MS-Exchange-CrossTenant-AuthSource: BN3PR03MB2401.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 09:51:51.4024
 (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: I5deqkWI6obFmvDUIRrF60TEZtHoJ2Q1A9FynKLDQlJWonJhOcnebyW42VvauNbeVHnQVXXqnrLGKI3x5po4CxQu3PotG/DOBpcc+2tqlcw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB4756
X-OriginatorOrg: citrix.com

On 20/04/2021 04:39, no-reply@patchew.org wrote:
> Patchew URL: https://patchew.org/QEMU/1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com/
> 
> 
> 
> Hi,
> 
> This series seems to have some coding style problems. See output below for
> more information:
> 
> Type: series
> Message-id: 1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com
> Subject: [PATCH] xen-mapcache: avoid a race on memory map while using MAP_FIXED
> 
> === TEST SCRIPT BEGIN ===
> #!/bin/bash
> git rev-parse base > /dev/null || exit 0
> git config --local diff.renamelimit 0
> git config --local diff.renames True
> git config --local diff.algorithm histogram
> ./scripts/checkpatch.pl --mailback base..
> === TEST SCRIPT END ===
> 
> Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
>  From https://github.com/patchew-project/qemu
>   * [new tag]         patchew/1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com -> patchew/1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com
> Switched to a new branch 'test'
> 3102519 xen-mapcache: avoid a race on memory map while using MAP_FIXED
> 
> === OUTPUT BEGIN ===
> ERROR: Author email address is mangled by the mailing list
> #2:
> Author: Igor Druzhinin via <qemu-devel@nongnu.org>
> 
> total: 1 errors, 0 warnings, 21 lines checked
>

Anthony,

Is there any action required from me here? I don't completely understand 
how that happened. But I found this:

"In some cases the Author: email address in patches submitted to the
list gets mangled such that it says

     John Doe via Qemu-devel <qemu-devel@nongnu.org>

This change is a result of workarounds for DMARC policies.

Subsystem maintainers accepting patches need to catch these and fix
them before sending pull requests, so a checkpatch.pl test is highly
desirable."

Igor


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 09:59:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 09:59:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113463.216205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYn9k-0007ro-FN; Tue, 20 Apr 2021 09:58:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113463.216205; Tue, 20 Apr 2021 09:58:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYn9k-0007rh-CE; Tue, 20 Apr 2021 09:58:56 +0000
Received: by outflank-mailman (input) for mailman id 113463;
 Tue, 20 Apr 2021 09:58: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 1lYn9j-0007rZ-4J; Tue, 20 Apr 2021 09:58: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 1lYn9i-0006P6-Uv; Tue, 20 Apr 2021 09:58: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 1lYn9i-0004au-Js; Tue, 20 Apr 2021 09:58:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYn9i-0004PP-JO; Tue, 20 Apr 2021 09:58: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=rqtPNqWzMxA2/QF3kelmAAZ2Ab4WbMLV9JEYyD9FnjE=; b=uTaiSYibuL62NDhST3AhF6AcRL
	56kUcg/Pwsuz8u5PyPbMinVrK5MG+vDaf1YViesTbwYoIbaChcONqxZ/1lv+kRyBjgOoecWPPUsBN
	dzs7w5GFXxn5vXLQf792o94GCYCEWjX7ge28LVoNLMvxBjqZeIrFAAJU6jobTQNfpfjc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161298-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161298: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=bf05bf16c76bb44ab5156223e1e58e26dfe30a88
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 09:58:54 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-examine    4 memdisk-try-append fail in 161284 pass in 161298
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 161284

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                bf05bf16c76bb44ab5156223e1e58e26dfe30a88
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  262 days
Failing since        152366  2020-08-01 20:49:34 Z  261 days  440 attempts
Testing same since   161284  2021-04-19 06:37:16 Z    1 days    2 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1329253 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 10:27:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 10:27:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113504.216331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYnar-0002py-9V; Tue, 20 Apr 2021 10:26:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113504.216331; Tue, 20 Apr 2021 10:26:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYnar-0002pr-6M; Tue, 20 Apr 2021 10:26:57 +0000
Received: by outflank-mailman (input) for mailman id 113504;
 Tue, 20 Apr 2021 10:26:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYnap-0002pm-QJ
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 10:26:55 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d356a048-d14f-45da-b1bc-62d2412fa1dd;
 Tue, 20 Apr 2021 10:26: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: d356a048-d14f-45da-b1bc-62d2412fa1dd
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618914414;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=V1G/ly4vKIcR4VuoZp8yZ2n7j0haqeMWA0nzlJG577Q=;
  b=SMq+psIuJwwGm+Fyy4ezgaq3Niaw+XIRnpvty6/24JlZtaYB9gpLdHpb
   9XyoePYq2OO/S3slDNk4xFvKpwTuhmBRM6ztR9prOjXHFFyhM0l0ENu4s
   2k+oWaLzfPPCQr4pYfNj9fjUUUqVGpk9oEvu+fJCK4PhgYxVNl+1F1nhS
   c=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: SgYqYk9E/02wCfi7S6/YPYFuO2zCXtPzS48MtR/wzUA/tQZ7m5qqnxfKVJyONl7gZe37/turJk
 x1yzIQyhB8LoVBygCeBBNoZpeKrEaI9ylwmDPDMBegQrAEA08mLr9/ax4+pQqvo8ruflfwBiNh
 dgYuq5CWGkoThrXhe3o00ixCxODjgH3BrFHu6b+M9ylScwxUjduSaYlAl/gV3lz1nH+UkRCGlb
 zki2C9Ob/j3pp0/MQUuYR/n8O8l//ySp+lw6xvlp2cvh8ax9l03O7CdE2LFfiKsKY0xftjW2i4
 S1M=
X-SBRS: 5.2
X-MesageID: 43451651
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:kYS7RKOs0m4BEcBcTjajsMiAIKoaSvp033AA3SlKKSB9WMqeis
 yogbAnxQb54QxhPE0ItPKhHO27QX3a/YNo+oV5B9yfdSTvpWfAFu1fxKT4xTmIIULD38p88Y
 slTKRkEt33CjFB/KPHyS21CcwpztXC0I3Av5a8815XQQtna75t4m5CY273LmRMSBBCFd4FEv
 OniPZvnSaqengcc62Adxs4dtXEzuerqLvWJT4cARkf7hKSyRuWgYSRLySl
X-IronPort-AV: E=Sophos;i="5.82,236,1613451600"; 
   d="scan'208";a="43451651"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NuZdLOglEfg1R2vL9OStc4gXVWH57GUkFORr6Ygu+6VOnFmH4BiYFCgC1pL+hvAn1XVsg3uyvZdlYlPJUlncfFX8fe6q9ZkGAkw6t33vUEetiVR3TOQESoR82KbmhVn3+yBznyCPYvY4TxxN6qMOeXn3p4zscmzfpX3MfRkRJ5Ie31863Ra8hG9OM7jbTUcsA7ppvp0L09aQjCZllJyfwhGIsINtQlUL3lpeESBuaYt/ZozUXFHJlyifxhe5AM9we/1cTodTgah3dbJMGCTwIyoTpmqwN6g95XtomBjMwtg1JQDZATe6dZNIzMeUUklgTKo0V7u9C8z/6a9+THGaXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jpWLRdkqxEup8pvZVCLInMLs+8avjXBNMuSlaH9B3QU=;
 b=N4R6G9SawBQtzp8fBbp7wYpJvjHkImWliO2Pp40aFOrO5lq8G6YaMsASdFvCzcMzPAFenRCA3ULs/DaaoS1sFiD+lCPKLh71c6YCE70sh3qdUnMprYqLWRSCAue/YEiKQxhrr9xRx5c4zLJXzIZpbTzQtumCM53mY57eA/TbvIg6j19j6567RpxTa3IPZhTQ+aXjx92FA6m2Fpr+bDZ1k/zGhfG8IbEnaHBvcdFI7TBcaD1CwD4l1f1WIfggT5iTAxl8FzcPdghZHUZcSF47PZ/b/iH4UHmMMZLefzJRPGfpVHDLunn9Q4T6sgIbwYyd4VMmE+YQNQjMl551YWKuzw==
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=jpWLRdkqxEup8pvZVCLInMLs+8avjXBNMuSlaH9B3QU=;
 b=aN5bnDHunXdqelD1N8MK4GIl7+W6YcpL28REOJ66kidRRW1y8t+CWmuyuEZoX8r0I/R2wD/TrLknJpUYITN/2/ype/Hl3CLw3zC8AwiBrb5ILFVjFKObIn/9wvPPdqUA935J/kOImkWWnrTmrnV1rmKVi3M6vv5PtAGI7sXBnD4=
Date: Tue, 20 Apr 2021 12:26:45 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Igor Druzhinin <igor.druzhinin@citrix.com>
CC: <qemu-devel@nongnu.org>, <xen-devel@lists.xenproject.org>,
	<sstabellini@kernel.org>, <anthony.perard@citrix.com>, <paul@xen.org>,
	<mst@redhat.com>, <marcel.apfelbaum@gmail.com>, <pbonzini@redhat.com>,
	<richard.henderson@linaro.org>, <ehabkost@redhat.com>
Subject: Re: [PATCH] xen-mapcache: avoid a race on memory map while using
 MAP_FIXED
Message-ID: <YH6sZZUH/zD74dB9@Air-de-Roger>
References: <1618889702-13104-1-git-send-email-igor.druzhinin@citrix.com>
 <YH6WfgdFpFaMYtvC@Air-de-Roger>
 <8cd5ae50-dff8-2ccd-0036-f27b82242f74@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8cd5ae50-dff8-2ccd-0036-f27b82242f74@citrix.com>
X-ClientProxiedBy: AM7PR04CA0016.eurprd04.prod.outlook.com
 (2603:10a6:20b:110::26) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: aadac849-5ea2-4766-a05e-08d903e6cf90
X-MS-TrafficTypeDiagnostic: DM6PR03MB3738:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB373871FFF5D99B6C5BFA66428F489@DM6PR03MB3738.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:608;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: d3Z4FXcwHq3tHKvSUJjTWdnQ8SJN/jTM0lLVvVxfp3321IzPZ697Eo4Usl+KDfuDQ1ZOaEhFUElJR07skelYZOxEfqogCdhUtd33cmQm5ub3pDHWgRQ592ove7eAzLTDeBj4Td0S4rpXj5ZaXvf9Dkpqvuj9i8cNM85cL0K5qH7pHpbG03O2k8g/8xXJofYQvcxbRolm2gJ3yYXHABJgRFmYW6EV68eaNZxSOyxCpvYkpitu9tC8THNLKfPUQrGUJfZtx0CwRu5KycRXinmnpUSuVyV/g05TWN3ViQw2o9rM/VrR9LYUN05VljQ5d5ueFnMms7MrM2zji3DuebYIJiG6TkHXYW88ufe+x7H3ls4foHlwy8YEKoZfJNGJlWDo8XGdNiyJNGUilO1R4ip+At8KPutONzuoamxQVRvMbrF/kIwXSWJ9+z9roZWZrYNC0GGv+TxVFxvZXOpcn60wZUnwz3m0+e+F5w1tulG+XvjsJB4zYEfVzNdYTnbb0mA95wAQv7Mylt89S+Yftf6y9uRPDkEqQ+pi1MH/eYbJMVpe2TKliO+IDst+K38KlWR2aHhh9gdusUpWsAX35J674jiDEWuBF8j8NjGfI6ZbaTw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(396003)(136003)(376002)(346002)(39860400002)(316002)(6862004)(86362001)(956004)(2906002)(478600001)(16526019)(5660300002)(26005)(8936002)(33716001)(186003)(53546011)(83380400001)(9686003)(6636002)(6496006)(38100700002)(6666004)(85182001)(6486002)(66556008)(66946007)(66476007)(8676002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: aadac849-5ea2-4766-a05e-08d903e6cf90
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 10:26:51.1669
 (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: 3Ywsx9h3/TWA3VCG+Tte19vaNvBFKvE0DMWv2UiZYkcCOLVY23ypLKPyCgL/sZDQGr+DLXoXxT6FXCFw8KBuYg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3738
X-OriginatorOrg: citrix.com

On Tue, Apr 20, 2021 at 10:45:03AM +0100, Igor Druzhinin wrote:
> On 20/04/2021 09:53, Roger Pau Monné wrote:
> > On Tue, Apr 20, 2021 at 04:35:02AM +0100, Igor Druzhinin wrote:
> > > When we're replacing the existing mapping there is possibility of a race
> > > on memory map with other threads doing mmap operations - the address being
> > > unmapped/re-mapped could be occupied by another thread in between.
> > > 
> > > Linux mmap man page recommends keeping the existing mappings in place to
> > > reserve the place and instead utilize the fact that the next mmap operation
> > > with MAP_FIXED flag passed will implicitly destroy the existing mappings
> > > behind the chosen address. This behavior is guaranteed by POSIX / BSD and
> > > therefore is portable.
> > > 
> > > Note that it wouldn't make the replacement atomic for parallel accesses to
> > > the replaced region - those might still fail with SIGBUS due to
> > > xenforeignmemory_map not being atomic. So we're still not expecting those.
> > > 
> > > Tested-by: Anthony PERARD <anthony.perard@citrix.com>
> > > Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
> > 
> > Should we add a 'Fixes: 759235653de ...' or similar tag here?
> 
> I was thinking about it and decided - no. There wasn't a bug here until QEMU
> introduced usage of iothreads at the state loading phase. Originally this
> process was totally single-threaded. And it's hard to pinpoint the exact
> moment when it happened which is also not directly related to the change
> here.

Right, might be worth mentioning in the commit message then, that the
code was designed to be used without any parallelism, and that the
addition of iothreads is what actually triggered the bug here.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 10:27:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 10:27:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113505.216343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYnb6-0002tJ-Ir; Tue, 20 Apr 2021 10:27:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113505.216343; Tue, 20 Apr 2021 10: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 1lYnb6-0002tB-Fb; Tue, 20 Apr 2021 10:27:12 +0000
Received: by outflank-mailman (input) for mailman id 113505;
 Tue, 20 Apr 2021 10:27:10 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYnb4-0002se-Se
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 10:27:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id eea5a426-0991-4969-8d3d-7da4aaaa313a;
 Tue, 20 Apr 2021 10:27:09 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E8C4BAF52;
 Tue, 20 Apr 2021 10:27: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: eea5a426-0991-4969-8d3d-7da4aaaa313a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618914429; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=yffckpk3BqX5vurVRTrGEdkk+6tlpR/jJQPmz9si//I=;
	b=oiAyvSImdjTmdgHqH0Cl3sh5XuUgxOeF5RDvFgafjNu0UxOedMYqZQnRYHN1rIPT8RHBQC
	eoyhDSjE74Z4b+PWmBACaLnNSGVWpimZIKtdMYeeaGS+nAR4kP0Z7bPNcKQ1Qdj0XanXo4
	k+GPQ03VGu5DnozlKjGo/nwwao0yw1U=
Subject: Re: [PATCH v2 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210419091231.55684-1-luca.fancellu@arm.com>
 <20210419091231.55684-4-luca.fancellu@arm.com>
 <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
 <0F26E53E-0C0A-4596-AC88-F803BC7A0493@arm.com>
 <c6d80a92-b8e7-703a-e051-18dc845b242a@suse.com>
 <ADF98BE7-02CA-48C1-B0CF-E4C7B4C0E828@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <dbcf10ef-0d40-a687-d242-f01a01bca342@suse.com>
Date: Tue, 20 Apr 2021 12:27:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <ADF98BE7-02CA-48C1-B0CF-E4C7B4C0E828@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 11:42, Luca Fancellu wrote:
>> On 20 Apr 2021, at 10:14, Jan Beulich <jbeulich@suse.com> wrote:
>> On 20.04.2021 10:46, Luca Fancellu wrote:
>>>> On 19 Apr 2021, at 12:05, Jan Beulich <jbeulich@suse.com> wrote:
>>>> On 19.04.2021 11:12, Luca Fancellu wrote:
>>>>> - */
>>>>> -
>>>>> -/*
>>>>> - * Reference to a grant entry in a specified domain's grant table.
>>>>> - */
>>>>> -typedef uint32_t grant_ref_t;
>>>>
>>>> Why does this get moved ...
>>>>
>>>>> -
>>>>> -/*
>>>>> + *
>>>>> * A grant table comprises a packed array of grant entries in one or more
>>>>> * page frames shared between Xen and a guest.
>>>>> + *
>>>>> * [XEN]: This field is written by Xen and read by the sharing guest.
>>>>> + *
>>>>> * [GST]: This field is written by the guest and read by Xen.
>>>>> + *
>>>>> + * @addtogroup grant_table Grant Tables
>>>>> + * @{
>>>>> */
>>>>>
>>>>> -/*
>>>>> - * Version 1 of the grant table entry structure is maintained purely
>>>>> - * for backwards compatibility.  New guests should use version 2.
>>>>> +/**
>>>>> + * Reference to a grant entry in a specified domain's grant table.
>>>>> */
>>>>> +typedef uint32_t grant_ref_t;
>>>>
>>>> ... here, past a comment unrelated to it?
>>>
>>> The comment “Version 1 of the grant table entry […]” was moved on top of the struct grant_entry_v1, in this way
>>> Doxygen associate the comment to that structure.
>>>
>>> The comment “Reference to a grant entry in a specified domain's grant table.” Is moved on top of typedef uint32_t grant_ref_t
>>> for the same reason above
>>
>> But it's the other comment ("A grant table comprises ...") that I
>> was asking about.
> 
> I thought it was part of the brief about grant tables, am I wrong? For that reason I moved it.

Well, the comment talks about grant table entries (the layout of which
gets defined immediately below, as visible in the original patch), not
grant references.

>>>>> @@ -243,23 +258,27 @@ union grant_entry_v2 {
>>>>>     * In that case, the frame field has the same semantics as the
>>>>>     * field of the same name in the V1 entry structure.
>>>>>     */
>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>    struct {
>>>>>        grant_entry_header_t hdr;
>>>>>        uint32_t pad0;
>>>>>        uint64_t frame;
>>>>>    } full_page;
>>>>> +    /** @endcond */
>>>>>
>>>>>    /*
>>>>>     * If the grant type is GTF_grant_access and GTF_sub_page is set,
>>>>>     * @domid is allowed to access bytes [@page_off,@page_off+@length)
>>>>>     * in frame @frame.
>>>>>     */
>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>    struct {
>>>>>        grant_entry_header_t hdr;
>>>>>        uint16_t page_off;
>>>>>        uint16_t length;
>>>>>        uint64_t frame;
>>>>>    } sub_page;
>>>>> +    /** @endcond */
>>>>>
>>>>>    /*
>>>>>     * If the grant is GTF_transitive, @domid is allowed to use the
>>>>> @@ -270,12 +289,14 @@ union grant_entry_v2 {
>>>>>     * The current version of Xen does not allow transitive grants
>>>>>     * to be mapped.
>>>>>     */
>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>    struct {
>>>>>        grant_entry_header_t hdr;
>>>>>        domid_t trans_domid;
>>>>>        uint16_t pad0;
>>>>>        grant_ref_t gref;
>>>>>    } transitive;
>>>>> +    /** @endcond */
>>>>
>>>> While already better than the introduction of strange struct tags,
>>>> I'm still not convinced we want this extra clutter (sorry). Plus -
>>>> don't these additions mean the sub-structures then won't be
>>>> represented in the generated doc, rendering it (partly) useless?
>>>
>>> Are you suggesting to remove the structure from docs?
>>
>> Just yet I'm not suggesting anything here - I was merely guessing at
>> the effect of "@cond" and the associated "skip ..." to mean that this
>> construct makes doxygen skip the enclosed section. If that's not the
>> effect, then maybe the comment wants rewording? (And then - what does
>> @cond mean?)
> 
> Yes you were right, in the documentation the structure grant_entry_v2 won’t display the
> anonymous union.

In which case I'm now completely unclear about your prior question.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 10:36:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 10:36:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113514.216356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYnjZ-0003t3-FA; Tue, 20 Apr 2021 10:35:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113514.216356; Tue, 20 Apr 2021 10: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 1lYnjZ-0003sw-By; Tue, 20 Apr 2021 10:35:57 +0000
Received: by outflank-mailman (input) for mailman id 113514;
 Tue, 20 Apr 2021 10:35:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYnjX-0003sr-T5
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 10:35:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7a186eec-d33f-410f-bb32-6aa6e881e8fb;
 Tue, 20 Apr 2021 10:35:55 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 25E16AF52;
 Tue, 20 Apr 2021 10:35: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: 7a186eec-d33f-410f-bb32-6aa6e881e8fb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618914954; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=QXahhzb8eZ5xffxGx1A0hTYeL2KgyADLIWmmAtxKyv4=;
	b=ac2NQ2+Rvzk7165DK4A6KNHbavxowQGrDjIIhKDzKsxWKKlUe/ls5M5ftNKJ34uYv5XX0m
	oiTML/UDFgCW69MRzmlbrBRrd4odm7tWSt+koMouQh+aJmj3YGV+dzVgalR5JuKLvRpI6z
	LCfzO/KmodxYf9Ve2uO4z+OeQvguJ/M=
Subject: Re: [PATCH v2 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <20210415144731.3356-1-roger.pau@citrix.com>
 <20210415144731.3356-3-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1bcda034-b08d-ec06-05fa-2d0f5cb26339@suse.com>
Date: Tue, 20 Apr 2021 12:35:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210415144731.3356-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 16:47, Roger Pau Monne wrote:
> AMD Milan (Zen3) CPUs have an LFENCE Always Serializing CPUID bit in
> leaf 80000021.eax. Previous AMD versions used to have a user settable
> bit in DE_CFG MSR to select whether LFENCE was dispatch serializing,
> which Xen always attempts to set. The forcefully always on setting is
> due to the addition of SEV-SNP so that a VMM cannot break the
> confidentiality of a guest.
> 
> In order to support this new CPUID bit move the LFENCE_DISPATCH
> synthetic CPUID bit to map the hardware bit (leaving a hole in the
> synthetic range) and either rely on the bit already being set by the
> native CPUID output, or attempt to fake it in Xen by modifying the
> DE_CFG MSR. This requires adding one more entry to the featureset to
> support leaf 80000021.eax.
> 
> The bit is exposed to guests by default if the underlying hardware
> supports leaf 80000021, as a way to signal that LFENCE is always
> serializing. Hardware that doesn't have the leaf might also get the
> bit set because Xen has performed the necessary arrangements, but
> that's not yet exposed to guests. Note that Xen doesn't allow guests
> to change the DE_CFG value, so once set by Xen LFENCE will always be
> serializing.
> 
> Note that the access to DE_CFG by guests is left as-is: reads will
> unconditionally return LFENCE_SERIALISE bit set, while writes are
> silently dropped.
> 
> Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

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

> ---
> Note this doesn't yet expose the bit on hardware that doesn't support
> leaf 80000021. It's still TBD whether we want to hardcode this support
> manually, or instead rely on a more general approach like the one
> suggested by the shrink max CPUID leaf patch from Jan.

I'd like to give Andrew a day or two more to respond there in case he
continues to see an issue, before I commit that with your R-b and this
one here. I'll assume you'll subsequently take care of that missing
piece then - if not, i.e. if e.g. I should, please let me know.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 10:48:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 10:48:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113525.216370 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYnvN-0004uR-Kp; Tue, 20 Apr 2021 10:48:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113525.216370; Tue, 20 Apr 2021 10:48: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 1lYnvN-0004uK-Hl; Tue, 20 Apr 2021 10:48:09 +0000
Received: by outflank-mailman (input) for mailman id 113525;
 Tue, 20 Apr 2021 10:48:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYnvM-0004uF-8q
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 10:48:08 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 283ed0ad-6e40-453c-bdd5-8dccc43d932d;
 Tue, 20 Apr 2021 10: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: 283ed0ad-6e40-453c-bdd5-8dccc43d932d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618915686;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=KCQxEqnBNB58sxclw3tKgYZHwrzxTPV2N7WrUMvHlWg=;
  b=YCTFKqEYodcOo97isGIqN4PYS6wopuT8KW6Y0n7JfW6wzo5MjxEkdO8o
   kQRs0++W2Ma/k/4r7CZl5cufhSYirvYFBoUSSfV4t01xB43EW1r1AHUJ1
   6Q7N2DEKweRqbmfr4V7rXUJchRlh5qdUW5q0/RbS90CbVLDhK2RPVPuky
   c=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Hsx6ey/JqP5MGtoCkb9UdfYcls7yfi2jePRSnlpsj6wjt47siP8OG414rZZ7CMTvwelC22Qn+l
 IE8m/EE6zcUCMeqnBJ4sMh8o+Y451sf+o4m8b2t5UtZebeHKPb35v50xepB8PF1L2Kgxhcbqgv
 PlMTq89PGVtqxta+sCDwtB1ih3sGPeAVMdUf5YqMif3KLlkpzIEvPpYOnH0QRR2oXc7X10vbps
 DtDN071O6B0deRd35ff3yuMl5wQJdxibkwSG8qbyIHdsmcnMNeZkFTELpolvpOnvqWxn1vhSMp
 bjg=
X-SBRS: 5.2
X-MesageID: 41969143
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:IToQaKFDnVQoNcDPpLqFWJTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76
 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYfNi+wFEpqSA5aQbc4Do
 Ob/MpbpzymEE5nFPiTLH8DQuTFupn3j5rgexELHFoK7wOJgDOu5tfBYmWl9z0ZVC5CxqpnzH
 jdn2XCl96emtyY6juZ7W/c6JxKhMDso+EsOOWggtUYQw+c6DqAS59mX9S5zVUIicGprG0nid
 zd5yonVv4Dl0/5WkGQjV/T1xL70DAogkWSuWOwpXf4u8T2SHYbJqN69PtkWyDU4UYho91wuZ
 gjtwny1+s1fGH9tR/w6NTSWxZhmlDcmwtbrccpg2FCSoxbUbdNrOUkjTJoOa0dFyH34p1PKp
 gJMOjg4p9tADenRkGclGxuzNuwZ280DxeLT2MT0/blrQR+rTRXyVAVy9cYmWpF3JUhS4Nc7+
 CBCahwkqpSJ/VmIZ5VNaMke4+aG2bNSRXDPCa7JknmLrgOPzbop4Ts6Ls4yem2cPUzvdQPsa
 WEdGkdmX85ekroB8HL9oZM6ArxTGK0Wimo4t1C5rBi04eMBIbDAGmmchQDgsGgq/IQDonwQP
 CoIq9bBPflMC/HBZtJ5QvjQJNfQENuEfE9i5IeYRajs8jLIorluqjwa/DIPofgFj4iRyfRGX
 0GcD/vJNhRz0yiV3Pi6SKhGU/FSwjax9ZdAaLa9+8cxMwmLYtXqDUYjly/+4WqJFR5w+kLVX
 o7BImivrKwpGGw82qNxX5uIABhAkFc56ild3tLoAQNIn7laLprgaTaRUlimF+8YjNvRcLfFw
 BS435t/7isEpCWzSc+T/WqL3ydlHlWgH6RVZ8Tlumi6K7eC90FJ6djfJY0ORTAFhRzlwovgn
 xEchU4SkjWES6rr76kgpwSDOT2bMJ9nw+vHM5RpRvkxAahjPBqYkFecy+lUMaRjwprbSFTnE
 dN/6gWh6fFpSyiMlIlgOMzMERFbUOeBL4uNnXDWKxk3pTQPC1gR2aDgjKXzzU+YHDj+Ukpim
 v9FiGMYv3QDl1BundX77by/DpPBxagVnM1Tko/nZx2FGzAtHo26+ONa6ap+0a6a1cJwIgmQX
 r4SApXBjkr68G81RaTljrHKG4vwY82OPfBSJ45davI53+rIIqUtK0PEvNO5qx5PNT2vuJja5
 PYRyalaBfDT8850Q2coXgofBRuoH4/iPXyxVnL6nO70HNXO4ulHH1WA5UgZ/eS4GjvS6zWjN
 FXjdcpsfCxNWu0QNic0q3TZyNCLBSWgWPedZBdlblk+YYJ8J10FN3ndBGN8ldt9hA3Nt31m0
 MTW74T2sGIBqZfO+gpPxtE9V8onumVJEQlsgbKEvYzFGtd+kPzDpes2f70srIhDU2KmRvoNX
 Se+yNb+e3ZXyHr789sN4sAZUBXYlM78nJs4aercJDREhyjc4h4jRCHG074VL9WU66eH7oM6j
 58/tGThueSMw71whrZszc+AqVA9Q+cMI6PKTPJPe5D6NqhP1uQxoOs/c6olT/yDQKBVH5wv/
 wNSWUgKuJZijcji4Ur0i+9DozPy3hV7Gd20HVAjV7i2o+v/WHBO1pJWDep26lrYQ==
X-IronPort-AV: E=Sophos;i="5.82,236,1613451600"; 
   d="scan'208";a="41969143"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nfypSUCS/6a6slyMzqt8QS/I9kHOl2Amu8RgeJgprrW6ridGwE4E8bjC/cbdTjMxkKYCs0ZWirG4N9AzNR/N+3+hBJrFTsMeUtz4vLrjpPRziNOvQIHTi8Vk8Oo6DSwMFip/8MXKp+MWvbqRHcf/2Q/G+sXK+KD9mpaFuxscyRlfD3ZYiOiyV/R0KnbOKohG3Q4AaTmyziyXiT7QZnUwT/+jWVb2w5DWKGVmDoRd1XvEBUXrFDb3YTuoTM5FjOFUlzrmLbDFKuYxvvanpdo3OTGu7OZf1UVmG2Ornl08o/Wwl9Smi1cN9Ng/opPrqHzECZ8T5izDzYg617Yxn9tWAw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KSZM1C9NwkA2kYkTZnqODAYhFVafX95CVM/xLgHsC4A=;
 b=Lif2UuP8XRZYqIhboQra7naGtWR3KUP6bqhQ937JleCLF9p4XKTLzmgPQwt7iK/6CZCTPApC8USZr7fjk3iv5CIRKjmgxzCA7mGBI//UALyTWHrZ4ofGFInqb/Z+s4DsW/FV+flD+bP5DBQU+0MdWc68C2XrwKkIhqVcLTKAjbWPcfUXWwra18J+n2WnfrboByE3gRnG5NVnuvAXI8Z4XzDYwHjyhEXrzLnthTvELBnNwjRO/S3OfXlPf1TkSM0gaecdIWfSJKWcNY1uz0hTT+GgCeDUciRVhsQUeJWv25kn7WGv110mcEm7/UFrj5xjaL++qj8y33GfNa4tLc6EfA==
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=KSZM1C9NwkA2kYkTZnqODAYhFVafX95CVM/xLgHsC4A=;
 b=KJXI6pqvnKGrVvF/YiaQWMU1grBUu1j//13GBGeLyHV7VZNV30+KzL4lfpIKyZdr72sT2gyJleZ6ZjjTXrQEsR3oEJeAvIKyGlZSqLyRRTE7mBgVHqI0ic6BMGN7daeVnu2nSEPP08Umh2AGzJg7cTxdtrbKP7AXDBd8wzqYi2E=
Date: Tue, 20 Apr 2021 12:47:57 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 2/2] x86/cpuid: support LFENCE always serializing
 CPUID bit
Message-ID: <YH6xXeYVTEKsswQp@Air-de-Roger>
References: <20210415144731.3356-1-roger.pau@citrix.com>
 <20210415144731.3356-3-roger.pau@citrix.com>
 <1bcda034-b08d-ec06-05fa-2d0f5cb26339@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <1bcda034-b08d-ec06-05fa-2d0f5cb26339@suse.com>
X-ClientProxiedBy: MR2P264CA0174.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::13)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: aef37349-0fe7-47d4-cee4-08d903e9c600
X-MS-TrafficTypeDiagnostic: DS7PR03MB5608:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB56086B6402F6ECBA2C74651B8F489@DS7PR03MB5608.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 7u5QsCvrnPLV6jmSB8aygfAqBG69ZukjRSbK4eLsWUBj7y398oMBc+VKuCJAVXC0XSDpOH7HVCbNPpBPQadr7ryKqOhltSwYEE7qT0CnyecHEe77ObfDVZNIW6gx9egBaUPdWyygYkSLuD9NmHvleJl2F0ktCQpIVU9FjuxvBEYhKga3TSRF7B3twhbSoVHUWkHJvLs3LubtOcX1CEbJSV1xrYJ5s31i3UiMydoxfT1xRRkzoMvGqSA59rOzco+Eg0nWITtIWqDap0mTBQpqqeP89D0ll0sAJ675HaEKtq8Gyc7hgUgZiDc57UBRAQ4qQ6J2vnL4NLUtbqYWGI3mbsBGarNp+wRL44oF+8BCzaerf0JOTpdq4IagJZBDOHVOKJjC9/qDTAhTEsI135mC7w49ibe86uwBHwSHNE7TP/B8HoAiXXoGsX0UaDOWMpGIaimEWsVZ5ldrvBldCav+TYrKeriU+pmA0QKdlDidklT5jeOIZQiScSqBjm9ZKP+H64W05+0gcmYN3HdTFuNNBC659nT85cpp0RTX4Y9tQ+uKSPmrBTe4wS5Cx5hE32JQpVnAApXNpwALbfUvQSqtJnLwhkV+rHciTL+fMQGvoP4=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(39860400002)(346002)(136003)(396003)(376002)(186003)(16526019)(6666004)(6496006)(316002)(4326008)(9686003)(478600001)(26005)(38100700002)(53546011)(66476007)(66946007)(54906003)(66556008)(2906002)(6916009)(85182001)(8936002)(86362001)(6486002)(33716001)(8676002)(5660300002)(83380400001)(956004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: aef37349-0fe7-47d4-cee4-08d903e9c600
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 10:48:03.6011
 (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: ye5941WnWbUemEv/4MbIaQz9oUV0PZjBkiDCkdnLqNfGJC3UlNvacIYNEGyER1ceWvdJ6gNq663aFPC0E0OcnA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5608
X-OriginatorOrg: citrix.com

On Tue, Apr 20, 2021 at 12:35:54PM +0200, Jan Beulich wrote:
> On 15.04.2021 16:47, Roger Pau Monne wrote:
> > AMD Milan (Zen3) CPUs have an LFENCE Always Serializing CPUID bit in
> > leaf 80000021.eax. Previous AMD versions used to have a user settable
> > bit in DE_CFG MSR to select whether LFENCE was dispatch serializing,
> > which Xen always attempts to set. The forcefully always on setting is
> > due to the addition of SEV-SNP so that a VMM cannot break the
> > confidentiality of a guest.
> > 
> > In order to support this new CPUID bit move the LFENCE_DISPATCH
> > synthetic CPUID bit to map the hardware bit (leaving a hole in the
> > synthetic range) and either rely on the bit already being set by the
> > native CPUID output, or attempt to fake it in Xen by modifying the
> > DE_CFG MSR. This requires adding one more entry to the featureset to
> > support leaf 80000021.eax.
> > 
> > The bit is exposed to guests by default if the underlying hardware
> > supports leaf 80000021, as a way to signal that LFENCE is always
> > serializing. Hardware that doesn't have the leaf might also get the
> > bit set because Xen has performed the necessary arrangements, but
> > that's not yet exposed to guests. Note that Xen doesn't allow guests
> > to change the DE_CFG value, so once set by Xen LFENCE will always be
> > serializing.
> > 
> > Note that the access to DE_CFG by guests is left as-is: reads will
> > unconditionally return LFENCE_SERIALISE bit set, while writes are
> > silently dropped.
> > 
> > Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> 
> > ---
> > Note this doesn't yet expose the bit on hardware that doesn't support
> > leaf 80000021. It's still TBD whether we want to hardcode this support
> > manually, or instead rely on a more general approach like the one
> > suggested by the shrink max CPUID leaf patch from Jan.
> 
> I'd like to give Andrew a day or two more to respond there in case he
> continues to see an issue, before I commit that with your R-b and this
> one here. I'll assume you'll subsequently take care of that missing
> piece then - if not, i.e. if e.g. I should, please let me know.

I think it should be something like the above, in fact I think it
would be perfectly fine to merge that chunk into your patch?

Thanks, Roger.
---8<---
diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 050cd5713e2..daf501779fe 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -314,12 +314,9 @@ static void __init calculate_host_policy(void)
 
     *p = raw_cpuid_policy;
 
-    p->basic.max_leaf =
-        min_t(uint32_t, p->basic.max_leaf,   ARRAY_SIZE(p->basic.raw) - 1);
-    p->feat.max_subleaf =
-        min_t(uint32_t, p->feat.max_subleaf, ARRAY_SIZE(p->feat.raw) - 1);
-    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, p->extd.max_leaf & 0xffff,
-                                          ARRAY_SIZE(p->extd.raw) - 1);
+    p->basic.max_leaf = ARRAY_SIZE(p->basic.raw) - 1;
+    p->feat.max_subleaf = ARRAY_SIZE(p->feat.raw) - 1;
+    p->extd.max_leaf = 0x80000000 | ARRAY_SIZE(p->extd.raw) - 1;
 
     cpuid_featureset_to_policy(boot_cpu_data.x86_capability, p);
     recalculate_xstate(p);



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 10:51:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 10:51:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113532.216383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYnyo-0005mB-9S; Tue, 20 Apr 2021 10:51:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113532.216383; Tue, 20 Apr 2021 10:51: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 1lYnyo-0005m4-6M; Tue, 20 Apr 2021 10:51:42 +0000
Received: by outflank-mailman (input) for mailman id 113532;
 Tue, 20 Apr 2021 10:51:40 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AJT2=JR=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lYnym-0005lz-OJ
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 10:51:40 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 870df810-2938-4bdd-bd71-a03c49a993ed;
 Tue, 20 Apr 2021 10:51: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: 870df810-2938-4bdd-bd71-a03c49a993ed
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618915900;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=r2GvvTFs1FzifLgk5G62sYYj93zFWYsDLtHCLOMWAdY=;
  b=Gv7eAZi1xHI6bzZOz98ukJWT902GvTsWi55RPo63i4ovC0ZQD8Wyrnbu
   SNh4nHoZ+TMZwB8Y93C5t1Gjah647FEq4GIIEM2DQ9RlmC9khPjn+NEyT
   aboH5bmdVCqAsCijV58gFL1Pgj+RCEjt9dGeHmrBsCGaLUHSdEi5ukaN/
   I=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: FGkKX9wB4UugATYgZTNpiMY0igFSNGJREYzTy8bX5Fq3sWrChHI1kBFJDL3KdgfNqExizNhDtJ
 odIvYaRELlNyMbmnLZ/t0YM9G4IxFNX6qOQ+5QGxc1lUu7mKzt3fNb72c1sJIu+qtSBRR8Z4Uy
 YeQ262k6swB3JX8WjSHWz40WgFR0mIC0MHWWZf4/8Uvx1FyD+h2Z4B2zz7ZFfJJNFyif+Dgua5
 lTz0J5OBKzXb8whXhfxX+L2zZ5187Db8Q+LSPVcuHa6npgNcKV9eD+zzRkqx/I7KAKe0k4ugJo
 QdU=
X-SBRS: 5.1
X-MesageID: 41799571
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:GMsmdqpM5h64NcpKirjuIAcaV5q6eYIsi2QD101hICF9WObwra
 GTtd4c0gL5jytUdXE7gNabOLSBR3S0z+8T3aA6O7C+UA76/Fa5NY0K1/qH/xTMEzDzn9Qw6Y
 5OaK57YeeeMXFbioLA7BC8A5IcxrC8gcaVrMP/61socg1wcaFn6G5Ce2OmO2l7XhNPC5Z8NL
 f03LslmxOadX4abtu2CxA+NoCpzbD2vanrbhIcCxks5BPmt0LL1JfAHwWFxRBbajtTwN4ZgB
 H4ujbk7aauuezT8H/h/lLUhq45pOfc
X-IronPort-AV: E=Sophos;i="5.82,236,1613451600"; 
   d="scan'208";a="41799571"
Date: Tue, 20 Apr 2021 11:51:35 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Igor Druzhinin <igor.druzhinin@citrix.com>
CC: <qemu-devel@nongnu.org>, <xen-devel@lists.xenproject.org>,
	<sstabellini@kernel.org>, <paul@xen.org>, <mst@redhat.com>,
	<marcel.apfelbaum@gmail.com>, <pbonzini@redhat.com>,
	<richard.henderson@linaro.org>, <ehabkost@redhat.com>
Subject: Re: [PATCH] xen-mapcache: avoid a race on memory map while using
 MAP_FIXED
Message-ID: <YH6yNxOtvuFcuQsy@perard>
References: <161888998361.15979.8661085658302494664@72b6d80f974b>
 <91dc07bd-fc34-56fa-4c3e-684626a2e8d5@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <91dc07bd-fc34-56fa-4c3e-684626a2e8d5@citrix.com>

On Tue, Apr 20, 2021 at 10:51:47AM +0100, Igor Druzhinin wrote:
> On 20/04/2021 04:39, no-reply@patchew.org wrote:
> > === OUTPUT BEGIN ===
> > ERROR: Author email address is mangled by the mailing list
> > #2:
> > Author: Igor Druzhinin via <qemu-devel@nongnu.org>
> > 
> > total: 1 errors, 0 warnings, 21 lines checked
> > 
> 
> Anthony,
> 
> Is there any action required from me here? I don't completely understand how
> that happened. But I found this:

No action, I just need to remember to fix the patch's author before
submitting a pull request.

Citrix's policy is just too strict and don't even allow space changes in
some headers.

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 11:24:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 11:24:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113542.216395 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYoUK-0000Eb-S6; Tue, 20 Apr 2021 11:24:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113542.216395; Tue, 20 Apr 2021 11: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 1lYoUK-0000EU-OC; Tue, 20 Apr 2021 11:24:16 +0000
Received: by outflank-mailman (input) for mailman id 113542;
 Tue, 20 Apr 2021 11:24:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yMJ0=JR=intel.com=chao.gao@srs-us1.protection.inumbo.net>)
 id 1lYoUJ-0000EP-F8
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 11:24:15 +0000
Received: from mga09.intel.com (unknown [134.134.136.24])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 06e7b8f9-5c9f-4d61-917e-4e114251e99a;
 Tue, 20 Apr 2021 11:24:11 +0000 (UTC)
Received: from orsmga008.jf.intel.com ([10.7.209.65])
 by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Apr 2021 04:24:09 -0700
Received: from unknown (HELO hyperv-sh4.sh.intel.com) ([10.239.48.4])
 by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Apr 2021 04:24:06 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 06e7b8f9-5c9f-4d61-917e-4e114251e99a
IronPort-SDR: nfxf8grSGS+y1g/Dkv2K7o8KUzxNmEysMGrFRHbW8o+Xhvah1jD+LCBvIW5DsPatJYESgBixQA
 c9FAWa8rGoLA==
X-IronPort-AV: E=McAfee;i="6200,9189,9959"; a="195602879"
X-IronPort-AV: E=Sophos;i="5.82,236,1613462400"; 
   d="scan'208";a="195602879"
IronPort-SDR: NFvZiueHB7EhKG5h4td+Dv1fsHhgtscf2mOqmw1v8akSyO9f0pTd3eQF/IAUpvFaG4cTURYLSP
 abUMsPfEmARQ==
X-IronPort-AV: E=Sophos;i="5.82,236,1613462400"; 
   d="scan'208";a="426886743"
From: Chao Gao <chao.gao@intel.com>
To: xen-devel@lists.xenproject.org
Cc: Chao Gao <chao.gao@intel.com>,
	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>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH v2] VT-d: Don't assume register-based invalidation is always supported
Date: Thu,  2 Apr 2020 04:06:06 +0800
Message-Id: <20200401200606.48752-1-chao.gao@intel.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

According to Intel VT-d SPEC rev3.3 Section 6.5, Register-based Invalidation
isn't supported by Intel VT-d version 6 and beyond.

This hardware change impacts following two scenarios: admin can disable
queued invalidation via 'qinval' cmdline and use register-based interface;
VT-d switches to register-based invalidation when queued invalidation needs
to be disabled, for example, during disabling x2apic or during system
suspension or after enabling queued invalidation fails.

To deal with this hardware change, if register-based invalidation isn't
supported, queued invalidation cannot be disabled through Xen cmdline; and
if queued invalidation has to be disabled temporarily in some scenarios,
VT-d won't switch to register-based interface but use some dummy functions
to catch errors in case there is any invalidation request issued when queued
invalidation is disabled.

Signed-off-by: Chao Gao <chao.gao@intel.com>
---
Changes in v2:
 - verify system suspension and resumption with this patch applied
 - don't fall back to register-based interface if enabling qinval failed.
   see the change in init_vtd_hw().
 - remove unnecessary "queued_inval_supported" variable
 - constify the "struct vtd_iommu *" of has_register_based_invalidation()
 - coding-style changes
---
 docs/misc/xen-command-line.pandoc    |  4 +++-
 xen/drivers/passthrough/vtd/iommu.c  | 27 +++++++++++++++++++++--
 xen/drivers/passthrough/vtd/iommu.h  |  7 ++++++
 xen/drivers/passthrough/vtd/qinval.c | 33 ++++++++++++++++++++++++++--
 4 files changed, 66 insertions(+), 5 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index deef6d0b4c..4ff4a87844 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -1442,7 +1442,9 @@ The following options are specific to Intel VT-d hardware:
 *   The `qinval` boolean controls the Queued Invalidation sub-feature, and is
     active by default on compatible hardware.  Queued Invalidation is a
     feature in second-generation IOMMUs and is a functional prerequisite for
-    Interrupt Remapping.
+    Interrupt Remapping. Note that Xen disregards this setting for Intel VT-d
+    version 6 and greater as Registered-Based Invalidation isn't supported
+    by them.
 
 *   The `igfx` boolean is active by default, and controls whether the IOMMU in
     front of an Intel Graphics Device is enabled or not.
diff --git a/xen/drivers/passthrough/vtd/iommu.c b/xen/drivers/passthrough/vtd/iommu.c
index 6428c8fe3e..94d1372903 100644
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
 
     iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
     iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
+    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
+
+    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
+    {
+        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
+               iommu->index);
+        iommu_qinval = true;
+    }
 
     if ( iommu_verbose )
     {
@@ -2141,6 +2149,10 @@ static int __must_check init_vtd_hw(bool resume)
          */
         if ( enable_qinval(iommu) != 0 )
         {
+            /* Ensure register-based invalidation is available */
+            if ( !has_register_based_invalidation(iommu) )
+                return -EIO;
+
             iommu->flush.context = vtd_flush_context_reg;
             iommu->flush.iotlb   = vtd_flush_iotlb_reg;
         }
@@ -2231,6 +2243,7 @@ static int __init vtd_setup(void)
     struct acpi_drhd_unit *drhd;
     struct vtd_iommu *iommu;
     int ret;
+    bool reg_inval_supported = true;
 
     if ( list_empty(&acpi_drhd_units) )
     {
@@ -2252,8 +2265,8 @@ static int __init vtd_setup(void)
     }
 
     /* We enable the following features only if they are supported by all VT-d
-     * engines: Snoop Control, DMA passthrough, Queued Invalidation, Interrupt
-     * Remapping, and Posted Interrupt
+     * engines: Snoop Control, DMA passthrough, Register-based Invalidation,
+     * Queued Invalidation, Interrupt Remapping, and Posted Interrupt.
      */
     for_each_drhd_unit ( drhd )
     {
@@ -2275,6 +2288,9 @@ static int __init vtd_setup(void)
         if ( iommu_qinval && !ecap_queued_inval(iommu->ecap) )
             iommu_qinval = 0;
 
+        if ( !has_register_based_invalidation(iommu) )
+            reg_inval_supported = false;
+
         if ( iommu_intremap && !ecap_intr_remap(iommu->ecap) )
             iommu_intremap = iommu_intremap_off;
 
@@ -2301,6 +2317,13 @@ static int __init vtd_setup(void)
 
     softirq_tasklet_init(&vtd_fault_tasklet, do_iommu_page_fault, NULL);
 
+    if ( !iommu_qinval && !reg_inval_supported )
+    {
+        dprintk(XENLOG_ERR VTDPREFIX, "No available invalidation interface.\n");
+        ret = -ENODEV;
+        goto error;
+    }
+
     if ( !iommu_qinval && iommu_intremap )
     {
         iommu_intremap = iommu_intremap_off;
diff --git a/xen/drivers/passthrough/vtd/iommu.h b/xen/drivers/passthrough/vtd/iommu.h
index 216791b3d6..57737b1a4a 100644
--- a/xen/drivers/passthrough/vtd/iommu.h
+++ b/xen/drivers/passthrough/vtd/iommu.h
@@ -540,6 +540,7 @@ struct vtd_iommu {
     struct list_head ats_devices;
     unsigned long *domid_bitmap;  /* domain id bitmap */
     u16 *domid_map;               /* domain id mapping array */
+    uint32_t version;
 };
 
 #define INTEL_IOMMU_DEBUG(fmt, args...) \
@@ -549,4 +550,10 @@ struct vtd_iommu {
             dprintk(XENLOG_WARNING VTDPREFIX, fmt, ## args);    \
     } while(0)
 
+/* Register-based invalidation isn't supported by VT-d version 6 and beyond. */
+static inline bool has_register_based_invalidation(const struct vtd_iommu *vtd)
+{
+    return VER_MAJOR(vtd->version) < 6;
+}
+
 #endif
diff --git a/xen/drivers/passthrough/vtd/qinval.c b/xen/drivers/passthrough/vtd/qinval.c
index 764ef9f0fc..166c754b21 100644
--- a/xen/drivers/passthrough/vtd/qinval.c
+++ b/xen/drivers/passthrough/vtd/qinval.c
@@ -442,6 +442,23 @@ int enable_qinval(struct vtd_iommu *iommu)
     return 0;
 }
 
+static int vtd_flush_context_noop(struct vtd_iommu *iommu, uint16_t did,
+                                  uint16_t source_id, uint8_t function_mask,
+                                  uint64_t type, bool flush_non_present_entry)
+{
+    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush CONTEXT.\n");
+    return -EIO;
+}
+
+static int vtd_flush_iotlb_noop(struct vtd_iommu *iommu, uint16_t did,
+                                uint64_t addr, unsigned int size_order,
+                                uint64_t type, bool flush_non_present_entry,
+                                bool flush_dev_iotlb)
+{
+    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush IOTLB.\n");
+    return -EIO;
+}
+
 void disable_qinval(struct vtd_iommu *iommu)
 {
     u32 sts;
@@ -463,6 +480,18 @@ void disable_qinval(struct vtd_iommu *iommu)
 out:
     spin_unlock_irqrestore(&iommu->register_lock, flags);
 
-    iommu->flush.context = vtd_flush_context_reg;
-    iommu->flush.iotlb   = vtd_flush_iotlb_reg;
+    /*
+     * Assign callbacks to noop to catch errors if register-based invalidation
+     * isn't supported.
+     */
+    if ( has_register_based_invalidation(iommu) )
+    {
+        iommu->flush.context = vtd_flush_context_reg;
+        iommu->flush.iotlb   = vtd_flush_iotlb_reg;
+    }
+    else
+    {
+        iommu->flush.context = vtd_flush_context_noop;
+        iommu->flush.iotlb   = vtd_flush_iotlb_noop;
+    }
 }
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 11:28:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 11:28:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113550.216407 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYoYj-0000Sv-Dw; Tue, 20 Apr 2021 11:28:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113550.216407; Tue, 20 Apr 2021 11:28:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYoYj-0000So-AC; Tue, 20 Apr 2021 11:28:49 +0000
Received: by outflank-mailman (input) for mailman id 113550;
 Tue, 20 Apr 2021 11:28:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYoYh-0000Sj-DT
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 11:28:47 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f157fb83-a4e2-4008-93b2-ece1b8f341b2;
 Tue, 20 Apr 2021 11:28:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8FE17AF98;
 Tue, 20 Apr 2021 11:28: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: f157fb83-a4e2-4008-93b2-ece1b8f341b2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618918125; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=lRmWvHXX3TgjY2Zoj9JrTfd/UE48CQS1mOvA3YQ4IiE=;
	b=iz50U2V611fdqXAnyaqTMOdA9E7DdED5grCVotBRt4DEU4UYqPlaMUq6k2CyN/5yRjEVjl
	UmpbLi1JXpUw5nw1sOQY9zccdhblx+3LeCJgOWpogoVlG7XA1qsZZlMuO1JwjlPZB74k7c
	JjbR1BWIHOjSiCNPbqW4saCAbXFVA1Y=
Subject: Re: [PATCH v2 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <20210415144731.3356-1-roger.pau@citrix.com>
 <20210415144731.3356-3-roger.pau@citrix.com>
 <1bcda034-b08d-ec06-05fa-2d0f5cb26339@suse.com>
 <YH6xXeYVTEKsswQp@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <131cdf88-7942-9cc5-ff7d-ec538055ea9f@suse.com>
Date: Tue, 20 Apr 2021 13:28:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH6xXeYVTEKsswQp@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 12:47, Roger Pau Monné wrote:
> On Tue, Apr 20, 2021 at 12:35:54PM +0200, Jan Beulich wrote:
>> I'd like to give Andrew a day or two more to respond there in case he
>> continues to see an issue, before I commit that with your R-b and this
>> one here. I'll assume you'll subsequently take care of that missing
>> piece then - if not, i.e. if e.g. I should, please let me know.
> 
> I think it should be something like the above,

Right (assuming you meant "below).

> in fact I think it
> would be perfectly fine to merge that chunk into your patch?

I'd rather not, so that this change can have its own reasoning in its
description.

Jan

> diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
> index 050cd5713e2..daf501779fe 100644
> --- a/xen/arch/x86/cpuid.c
> +++ b/xen/arch/x86/cpuid.c
> @@ -314,12 +314,9 @@ static void __init calculate_host_policy(void)
>  
>      *p = raw_cpuid_policy;
>  
> -    p->basic.max_leaf =
> -        min_t(uint32_t, p->basic.max_leaf,   ARRAY_SIZE(p->basic.raw) - 1);
> -    p->feat.max_subleaf =
> -        min_t(uint32_t, p->feat.max_subleaf, ARRAY_SIZE(p->feat.raw) - 1);
> -    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, p->extd.max_leaf & 0xffff,
> -                                          ARRAY_SIZE(p->extd.raw) - 1);
> +    p->basic.max_leaf = ARRAY_SIZE(p->basic.raw) - 1;
> +    p->feat.max_subleaf = ARRAY_SIZE(p->feat.raw) - 1;
> +    p->extd.max_leaf = 0x80000000 | ARRAY_SIZE(p->extd.raw) - 1;
>  
>      cpuid_featureset_to_policy(boot_cpu_data.x86_capability, p);
>      recalculate_xstate(p);
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 11:38:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 11:38:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113560.216419 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYoi6-0001RW-B6; Tue, 20 Apr 2021 11:38:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113560.216419; Tue, 20 Apr 2021 11:38: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 1lYoi6-0001RP-6M; Tue, 20 Apr 2021 11:38:30 +0000
Received: by outflank-mailman (input) for mailman id 113560;
 Tue, 20 Apr 2021 11:38:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYoi4-0001RK-C0
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 11:38:28 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0f149d5f-2b32-4e6e-a54f-bbb5f9a5ec6a;
 Tue, 20 Apr 2021 11:38:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 88048AF52;
 Tue, 20 Apr 2021 11:38: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: 0f149d5f-2b32-4e6e-a54f-bbb5f9a5ec6a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618918706; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=o46pYuyr1Fj8rLslI2UzFnxj0+NBg4CnXwVdzT0j2mw=;
	b=SmwyKflvLprWZbRn/9A2RQttJ8jgHnmBPpLPWyXF7IS0QFw9nAwQ/vCbiInmFyTUrZiLkZ
	oB/8Cqz0GWaevXcMlK+Y7Kf9T8lZP2EIB4qKOTmloa9aLkdUropNQCmpl8+fEdC1YrqQVx
	/81mYzIGs2Pun7/ZySX4BF7N9qyvGxA=
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
To: Chao Gao <chao.gao@intel.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
References: <20200401200606.48752-1-chao.gao@intel.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
Date: Tue, 20 Apr 2021 13:38:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20200401200606.48752-1-chao.gao@intel.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 01.04.2020 22:06, Chao Gao wrote:
> According to Intel VT-d SPEC rev3.3 Section 6.5, Register-based Invalidation
> isn't supported by Intel VT-d version 6 and beyond.
> 
> This hardware change impacts following two scenarios: admin can disable
> queued invalidation via 'qinval' cmdline and use register-based interface;
> VT-d switches to register-based invalidation when queued invalidation needs
> to be disabled, for example, during disabling x2apic or during system
> suspension or after enabling queued invalidation fails.
> 
> To deal with this hardware change, if register-based invalidation isn't
> supported, queued invalidation cannot be disabled through Xen cmdline; and
> if queued invalidation has to be disabled temporarily in some scenarios,
> VT-d won't switch to register-based interface but use some dummy functions
> to catch errors in case there is any invalidation request issued when queued
> invalidation is disabled.
> 
> Signed-off-by: Chao Gao <chao.gao@intel.com>

In principle (with a minor nit further down)
Reviewed-by: Jan Beulich <jbeulich@suse.com>

However, ...

> ---
> Changes in v2:
>  - verify system suspension and resumption with this patch applied
>  - don't fall back to register-based interface if enabling qinval failed.
>    see the change in init_vtd_hw().
>  - remove unnecessary "queued_inval_supported" variable
>  - constify the "struct vtd_iommu *" of has_register_based_invalidation()
>  - coding-style changes

... while this suggests this is v2 of a recently sent patch, the
submission is dated a little over a year ago. This is confusing.
It is additionally confusing that there were two copies of it in
my inbox, despite mails coming from a list normally getting
de-duplicated somewhere at our end (I believe).

> --- a/xen/drivers/passthrough/vtd/iommu.c
> +++ b/xen/drivers/passthrough/vtd/iommu.c
> @@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>  
>      iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
>      iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
> +    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
> +
> +    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
> +    {
> +        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
> +               iommu->index);

Here (and at least once more yet further down): We don't normally end
log messages with a full stop. Easily addressable while committing, of
course.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:14:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:14:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113578.216437 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpGl-0004zK-Di; Tue, 20 Apr 2021 12:14:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113578.216437; Tue, 20 Apr 2021 12: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 1lYpGl-0004zD-Ae; Tue, 20 Apr 2021 12:14:19 +0000
Received: by outflank-mailman (input) for mailman id 113578;
 Tue, 20 Apr 2021 12:14:17 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lYpGj-0004z8-M8
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:14:17 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYpGg-0000NB-3Q; Tue, 20 Apr 2021 12:14:14 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYpGf-00045F-Q7; Tue, 20 Apr 2021 12: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=QDcuO5Mcis7ZmlgNi2zO7XmSLa4hHxPbkBvAXhYEbCE=; b=waNtOfOYlhlTUEb0N6xUDDEDPl
	IFhKNQ7SR9/sL+rEvU+aWYvU28C2P8PsU+8KropWVIZYv9ZA6IDy1735lU0PoFmWYfioOa1lqDObd
	h0Da4laidGaYKhaD+bFbT7WiTNoV55bDDv2JH7Q3OyuT/AOuz8C9G95vtZACmtivPmRM=;
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
To: Jan Beulich <jbeulich@suse.com>, Chao Gao <chao.gao@intel.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
References: <20200401200606.48752-1-chao.gao@intel.com>
 <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <148ad77f-d447-0800-d48b-9ba8c758b905@xen.org>
Date: Tue, 20 Apr 2021 13:14:11 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

It is not really my area of expertise but I wanted to jump on one 
comment below...

On 20/04/2021 12:38, Jan Beulich wrote:
> On 01.04.2020 22:06, Chao Gao wrote:
>> ---
>> Changes in v2:
>>   - verify system suspension and resumption with this patch applied
>>   - don't fall back to register-based interface if enabling qinval failed.
>>     see the change in init_vtd_hw().
>>   - remove unnecessary "queued_inval_supported" variable
>>   - constify the "struct vtd_iommu *" of has_register_based_invalidation()
>>   - coding-style changes
> 
> ... while this suggests this is v2 of a recently sent patch, the
> submission is dated a little over a year ago. This is confusing.
> It is additionally confusing that there were two copies of it in
> my inbox, despite mails coming from a list normally getting
> de-duplicated somewhere at our end (I believe).
> 
>> --- a/xen/drivers/passthrough/vtd/iommu.c
>> +++ b/xen/drivers/passthrough/vtd/iommu.c
>> @@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>>   
>>       iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
>>       iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
>> +    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
>> +
>> +    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
>> +    {
>> +        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
>> +               iommu->index);
> 
> Here (and at least once more yet further down): We don't normally end
> log messages with a full stop. Easily addressable while committing, of
> course.

I can find a large number of cases where log messages are ended with a 
full stop... Actually it looks more natural to me than your suggestion.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:17:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:17:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113582.216448 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpJh-0005Bg-SD; Tue, 20 Apr 2021 12:17:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113582.216448; Tue, 20 Apr 2021 12:17: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 1lYpJh-0005BZ-PI; Tue, 20 Apr 2021 12:17:21 +0000
Received: by outflank-mailman (input) for mailman id 113582;
 Tue, 20 Apr 2021 12:17: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 1lYpJg-0005BU-6k
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:17: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 1lYpJe-0000RI-OU; Tue, 20 Apr 2021 12:17:18 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYpJe-0004Fp-IH; Tue, 20 Apr 2021 12: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=GYaLSacBOXJid1sKdnIt3sLJgN4/gjSCd/oSZzGcFYU=; b=qUv6abHlmL2pTh/oRx6sgDW1Zq
	xygZKd+QcyRyO4JEwLbMuryzfmcDq+jmFyPBX4jglMWb8Kq+G+r6RpzNrtY22JAQnig5RWJnEvBOm
	3M12v6n6aNAAseQn23FlJ53bs3kVOmAEnoi6ToqahEBU21V6kNXpmMVjHk9OO4gRvDWE=;
Subject: Re: [PATCH v4] xen/arm64: Place a speculation barrier following an
 ret instruction
To: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Julien Grall <jgrall@amazon.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210418180334.7829-1-julien@xen.org>
 <0433E681-2E59-42B2-88FB-94A56EF2E303@arm.com>
 <alpine.DEB.2.21.2104191124440.4885@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <7e83049f-7a22-5322-e5c7-c2faf4caaf57@xen.org>
Date: Tue, 20 Apr 2021 13:17:17 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104191124440.4885@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

On 19/04/2021 19:24, Stefano Stabellini wrote:
> On Mon, 19 Apr 2021, Bertrand Marquis wrote:
>> Hi Julien,
>>
>>> On 18 Apr 2021, at 19:03, Julien Grall <julien@xen.org> wrote:
>>>
>>> From: Julien Grall <jgrall@amazon.com>
>>>
>>> Some CPUs can speculate past a RET instruction and potentially perform
>>> speculative accesses to memory before processing the return.
>>>
>>> There is no known gadget available after the RET instruction today.
>>> However some of the registers (such as in check_pending_guest_serror())
>>> may contain a value provided by the guest.
>>>
>>> In order to harden the code, it would be better to add a speculation
>>> barrier after each RET instruction. The performance impact is meant to
>>> be negligeable as the speculation barrier is not meant to be
>>> architecturally executed.
>>>
>>> Rather than manually inserting a speculation barrier, use a macro
>>> which overrides the mnemonic RET and replace with RET + SB. We need to
>>> use the opcode for RET to prevent any macro recursion.
>>>
>>> This patch is only covering the assembly code. C code would need to be
>>> covered separately using the compiler support.
>>>
>>> Note that the definition of the macros sb needs to be moved earlier in
>>> asm-arm/macros.h so it can be used by the new macro.
>>>
>>> This is part of the work to mitigate straight-line speculation.
>>>
>>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
> 
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Thanks both! I have committed the patch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:17:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:17:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113584.216461 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpK1-0005Gf-4x; Tue, 20 Apr 2021 12:17:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113584.216461; Tue, 20 Apr 2021 12: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 1lYpK1-0005GX-1L; Tue, 20 Apr 2021 12:17:41 +0000
Received: by outflank-mailman (input) for mailman id 113584;
 Tue, 20 Apr 2021 12:17:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYpJz-0005GN-Fm
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:17:39 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 23a1bf1a-19ec-480f-88a6-1478a11a6020;
 Tue, 20 Apr 2021 12:17:38 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A299DB2E1;
 Tue, 20 Apr 2021 12:17: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: 23a1bf1a-19ec-480f-88a6-1478a11a6020
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618921057; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=c/+zxE0uiFPvIFS0I1UuwDxDqhSw5DNLUUOpC3KlqYk=;
	b=kXzHnZIt/7osW8X9ZeC3VLod0N510FEpmfX0F+hNai/nY1BXSUNja7mFTu7XLJZDYoMDKC
	DDRLE37Ap86z0U98GQEwu8iDu3D6He8kT6WYHNeXhpoQPEQxeOCZObYxM0QPXjR2a8apr9
	kzpM372ylqmjTTNPS6JTq2RHxVHu4rE=
Subject: Re: [PATCH v9 01/13] x86/mm: rewrite virt_to_xen_l*e
To: Hongyan Xia <hx242@xen.org>
Cc: jgrall@amazon.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
References: <cover.1617706782.git.hongyxia@amazon.com>
 <b70cc7c0854a6a25b00624b5fa83684a20916ca3.1617706782.git.hongyxia@amazon.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <fbc4a42f-549b-515f-279f-92466f89af79@suse.com>
Date: Tue, 20 Apr 2021 14:17:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <b70cc7c0854a6a25b00624b5fa83684a20916ca3.1617706782.git.hongyxia@amazon.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 13:05, Hongyan Xia wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Rewrite those functions to use the new APIs. Modify its callers to unmap
> the pointer returned. Since alloc_xen_pagetable_new() is almost never
> useful unless accompanied by page clearing and a mapping, introduce a
> helper alloc_map_clear_xen_pt() for this sequence.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
> 
> ---
> Changed in v9:
> - use domain_page_map_to_mfn() around the L3 table locking logic.
> - remove vmap_to_mfn() changes since we now use xen_map_to_mfn().
> 
> Changed in v8:
> - s/virtual address/linear address/.
> - BUG_ON() on NULL return in vmap_to_mfn().
> 
> Changed in v7:
> - remove a comment.
> - use l1e_get_mfn() instead of converting things back and forth.
> - add alloc_map_clear_xen_pt().

I realize this was in v7 already, but at v6 time the name I suggested
was

void *alloc_mapped_pagetable(mfn_t *mfn);

"alloc_map_clear_xen", for my taste at least, is too strange. It
doesn't really matter whether it's a page table for Xen's own use
(it typically will be), so "xen" could be dropped. Clearing of a
page table ought to also be the rule rather than the exception, so
I'd see "clear" also dropped. I'd be fine with alloc_map_pt() or
about any intermediate variant between that and my originally
suggested name.

> @@ -5108,7 +5140,8 @@ int map_pages_to_xen(
>      unsigned int flags)
>  {
>      bool locking = system_state > SYS_STATE_boot;
> -    l2_pgentry_t *pl2e, ol2e;
> +    l3_pgentry_t *pl3e = NULL, ol3e;
> +    l2_pgentry_t *pl2e = NULL, ol2e;
>      l1_pgentry_t *pl1e, ol1e;
>      unsigned int  i;
>      int rc = -ENOMEM;
> @@ -5132,15 +5165,16 @@ int map_pages_to_xen(
>  
>      while ( nr_mfns != 0 )
>      {
> -        l3_pgentry_t *pl3e, ol3e;
> -
> +        /* Clean up the previous iteration. */
>          L3T_UNLOCK(current_l3page);
> +        UNMAP_DOMAIN_PAGE(pl3e);
> +        UNMAP_DOMAIN_PAGE(pl2e);

Doing this here suggests the lower-case equivalent is needed at the
out label, even without looking at the rest of the function (doing
so confirms the suspicion, as there's at least one "goto out" with
pl2e clearly still mapped).

> @@ -5305,6 +5339,8 @@ int map_pages_to_xen(
>                  pl1e = virt_to_xen_l1e(virt);
>                  if ( pl1e == NULL )
>                      goto out;
> +
> +                UNMAP_DOMAIN_PAGE(pl1e);
>              }

Unmapping the page right after mapping it looks suspicious. I see that
further down we have

            pl1e  = l2e_to_l1e(*pl2e) + l1_table_offset(virt);

but don't you need to also change that? Actually, you do in patch 2,
but the latest then the double mapping should imo be avoided.

> @@ -5505,6 +5542,7 @@ int populate_pt_range(unsigned long virt, unsigned long nr_mfns)
>  int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
>  {
>      bool locking = system_state > SYS_STATE_boot;
> +    l3_pgentry_t *pl3e = NULL;
>      l2_pgentry_t *pl2e;
>      l1_pgentry_t *pl1e;
>      unsigned int  i;

And here we have the opposite situation: You don't set pl2e to NULL
and the function only uses l3e_to_l2e() to initialize the variable,
yet ...

> @@ -5761,6 +5799,8 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
>  
>   out:
>      L3T_UNLOCK(current_l3page);
> +    unmap_domain_page(pl2e);
> +    unmap_domain_page(pl3e);

... here you try to unmap it. Did the two respective hunks somehow
magically get swapped?

> --- a/xen/common/vmap.c
> +++ b/xen/common/vmap.c
> @@ -1,6 +1,7 @@
>  #ifdef VMAP_VIRT_START
>  #include <xen/bitmap.h>
>  #include <xen/cache.h>
> +#include <xen/domain_page.h>

Why is this needed? (Looks like a now stale change.)

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:25:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:25:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113594.216477 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpRS-0006GG-0l; Tue, 20 Apr 2021 12:25:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113594.216477; Tue, 20 Apr 2021 12: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 1lYpRR-0006G9-Sj; Tue, 20 Apr 2021 12:25:21 +0000
Received: by outflank-mailman (input) for mailman id 113594;
 Tue, 20 Apr 2021 12:25:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYpRR-0006G4-2n
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:25:21 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b702b8bb-5fdb-43fb-8b1c-d08452c4b0ca;
 Tue, 20 Apr 2021 12:25:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CBE21B1C8;
 Tue, 20 Apr 2021 12:25: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: b702b8bb-5fdb-43fb-8b1c-d08452c4b0ca
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618921518; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=/wNjX459WkUJ9/R/swWQqsYVVM5tsoev69GCjDWOFg0=;
	b=eqOdScP1iX/mI22pUE5ScyIpeIbzZlg52XNiBk54XMs11AfiIgtRwPu5GHfU0XDz/GxhWT
	a67PLXlHHkan6q2faQk9PtICoNurvKS8dqaheGE4UtgN4pJpfIXfwDst7yVc5KJXGG8A3k
	C6z++0CJhQ6MAJX1WJfnnODw3VfnuYk=
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org,
 Chao Gao <chao.gao@intel.com>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
 <148ad77f-d447-0800-d48b-9ba8c758b905@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b89c8443-4df6-485b-2b5b-d89360a6969a@suse.com>
Date: Tue, 20 Apr 2021 14:25:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <148ad77f-d447-0800-d48b-9ba8c758b905@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 20.04.2021 14:14, Julien Grall wrote:
> Hi,
> 
> It is not really my area of expertise but I wanted to jump on one 
> comment below...
> 
> On 20/04/2021 12:38, Jan Beulich wrote:
>> On 01.04.2020 22:06, Chao Gao wrote:
>>> ---
>>> Changes in v2:
>>>   - verify system suspension and resumption with this patch applied
>>>   - don't fall back to register-based interface if enabling qinval failed.
>>>     see the change in init_vtd_hw().
>>>   - remove unnecessary "queued_inval_supported" variable
>>>   - constify the "struct vtd_iommu *" of has_register_based_invalidation()
>>>   - coding-style changes
>>
>> ... while this suggests this is v2 of a recently sent patch, the
>> submission is dated a little over a year ago. This is confusing.
>> It is additionally confusing that there were two copies of it in
>> my inbox, despite mails coming from a list normally getting
>> de-duplicated somewhere at our end (I believe).
>>
>>> --- a/xen/drivers/passthrough/vtd/iommu.c
>>> +++ b/xen/drivers/passthrough/vtd/iommu.c
>>> @@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>>>   
>>>       iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
>>>       iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
>>> +    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
>>> +
>>> +    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
>>> +    {
>>> +        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
>>> +               iommu->index);
>>
>> Here (and at least once more yet further down): We don't normally end
>> log messages with a full stop. Easily addressable while committing, of
>> course.
> 
> I can find a large number of cases where log messages are ended with a 
> full stop... Actually it looks more natural to me than your suggestion.

Interesting. From purely a language perspective it indeed looks more
natural, I agree. But when considering (serial) console bandwidth, we
ought to try to eliminate _any_ output that's there without conveying
information or making the conveyed information understandable. In fact
I recall a number of cases (without having commit hashes to hand)
where we deliberately dropped full stops. (The messages here aren't at
risk of causing bandwidth issues, but as with any such generic item I
think the goal ought to be consistency, and hence either full stops
everywhere, or nowhere. If bandwidth was an issue here, I might also
have suggested to shorten "Queued Invalidation" to just "QI".)

Also, when you say "large number" - did you compare to the number of
cases where there are no full stops? (I sincerely hope we don't have
that many full stops left.)

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:30:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:30:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113599.216489 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpVq-0006Qj-K5; Tue, 20 Apr 2021 12:29:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113599.216489; Tue, 20 Apr 2021 12: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 1lYpVq-0006Qc-F5; Tue, 20 Apr 2021 12:29:54 +0000
Received: by outflank-mailman (input) for mailman id 113599;
 Tue, 20 Apr 2021 12:29:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYpVp-0006QX-65
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:29:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0e653e5a-1c09-4653-8d7a-5657df5b3c26;
 Tue, 20 Apr 2021 12:29:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E7AB4B4AF;
 Tue, 20 Apr 2021 12:29: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: 0e653e5a-1c09-4653-8d7a-5657df5b3c26
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618921791; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=F7ALtqgMP9KRHpx2uUqP3u8ppq+7kB/7+HY0Unnv9vE=;
	b=S0VW/a/SnBC30Oa0TnM8CD37PER+qUIv+izEhOEZCE50S4QgiZiRXhGKoZfmF/bnZ5nyAq
	Cto8MimUdF3HsHX/aMswB93yfqiY48CUXI1pfwpdIg7UnRuypIxJNVTLqT8J697iihgbNr
	eyHqthMimY+XpQtP4UyED/MOyCudrik=
Subject: Re: [PATCH v9 09/13] x86/smpboot: add exit path for clone_mapping()
To: Hongyan Xia <hx242@xen.org>
Cc: jgrall@amazon.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1617706782.git.hongyxia@amazon.com>
 <1277cb7cb71edbb03a13f9db8fe07810e68c7248.1617706782.git.hongyxia@amazon.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <fdf3f018-4eff-1323-c510-bd035afbfe9f@suse.com>
Date: Tue, 20 Apr 2021 14:29:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <1277cb7cb71edbb03a13f9db8fe07810e68c7248.1617706782.git.hongyxia@amazon.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 13:05, Hongyan Xia wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> We will soon need to clean up page table mappings in the exit path.
> 
> No functional change.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Signed-off-by: Hongyan Xia <hongyxia@amazon.com>

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


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:32:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:32:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113603.216500 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpYj-0007HG-0Q; Tue, 20 Apr 2021 12:32:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113603.216500; Tue, 20 Apr 2021 12:32:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpYi-0007H9-Tk; Tue, 20 Apr 2021 12:32:52 +0000
Received: by outflank-mailman (input) for mailman id 113603;
 Tue, 20 Apr 2021 12:32:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYpYh-0007Gl-2G
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:32:51 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fdb9ad0c-b35f-4107-8f88-7526e3f83690;
 Tue, 20 Apr 2021 12:32:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4A8D4B2E2;
 Tue, 20 Apr 2021 12:32: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: fdb9ad0c-b35f-4107-8f88-7526e3f83690
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618921969; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=hzJ2zvxaFBZEyJ0VfIKGlqu6FRZCu862q22MyiJu+rw=;
	b=JzU43WafOKQqIbkeGqy8fYj5opIEFiQDgCN0Ezi7CTGeNay2XbC0OMdnVSb11SnvkDtYfc
	Hyfksasn3xJ83paWoW0eM30vSlj4rCySYmJll597Z7rU4z9fOMMu5irXpKSQK0P/Ff2+m5
	dqBK2lY6EN2Ak3jdLUX75f375ijBAIY=
Subject: Re: [PATCH v9 10/13] x86/smpboot: switch clone_mapping() to new APIs
To: Hongyan Xia <hx242@xen.org>
Cc: jgrall@amazon.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1617706782.git.hongyxia@amazon.com>
 <d55bcecc33df5b277bc3e1dbb48826bc816d8d10.1617706782.git.hongyxia@amazon.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <de0df262-6c83-41d2-02d6-ce56d484baa2@suse.com>
Date: Tue, 20 Apr 2021 14:32:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <d55bcecc33df5b277bc3e1dbb48826bc816d8d10.1617706782.git.hongyxia@amazon.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 06.04.2021 13:05, Hongyan Xia wrote:
> @@ -742,51 +742,58 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
>          }
>      }
>  
> +    UNMAP_DOMAIN_PAGE(pl1e);
> +    UNMAP_DOMAIN_PAGE(pl2e);
> +    UNMAP_DOMAIN_PAGE(pl3e);

Just one minor remark: A pedantic(?) compiler might warn about the
setting to NULL of pl3e here, when

>      if ( !(root_get_flags(rpt[root_table_offset(linear)]) & _PAGE_PRESENT) )
>      {
> -        pl3e = alloc_xen_pagetable();
> +        mfn_t l3mfn;
> +
> +        pl3e = alloc_map_clear_xen_pt(&l3mfn);
>          rc = -ENOMEM;
>          if ( !pl3e )
>              goto out;
> -        clear_page(pl3e);
>          l4e_write(&rpt[root_table_offset(linear)],
> -                  l4e_from_paddr(__pa(pl3e), __PAGE_HYPERVISOR));
> +                  l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR));
>      }
>      else
> -        pl3e = l4e_to_l3e(rpt[root_table_offset(linear)]);
> +        pl3e = map_l3t_from_l4e(rpt[root_table_offset(linear)]);

... it is guaranteed to get initialized again before any further
consumption. IOW strictly speaking the last of those three would
want to be unmap_domain_page(), just like you have ...

> @@ -802,6 +809,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
>  
>      rc = 0;
>   out:
> +    unmap_domain_page(pl1e);
> +    unmap_domain_page(pl2e);
> +    unmap_domain_page(pl3e);
>      return rc;
>  }

... here.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:35:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:35:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113609.216513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpb9-0007SL-Ej; Tue, 20 Apr 2021 12:35:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113609.216513; Tue, 20 Apr 2021 12: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 1lYpb9-0007SE-B1; Tue, 20 Apr 2021 12:35:23 +0000
Received: by outflank-mailman (input) for mailman id 113609;
 Tue, 20 Apr 2021 12: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 1lYpb7-0007S6-Ad; Tue, 20 Apr 2021 12: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 1lYpb7-0000jF-6M; Tue, 20 Apr 2021 12: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 1lYpb6-0004lO-Si; Tue, 20 Apr 2021 12:35:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYpb6-0002nc-SE; Tue, 20 Apr 2021 12: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=O6qMETFo2APbB8l2xG4bAs4BfYr3qp76tjVG7GqNbJI=; b=Pm8WNISQiBCEe6XsWc1FsWRFsU
	1HuTA77DFU/KmC2ZN6cMzXJYBLUL14uQAKL4kIE3QjPQjzw9h/xfCrAQAPmAWF/2//1IvsEKwtREs
	OU47GIyGh6M91Wj57PKXlRjaeR2MKK4RmUO1PaGHBlq9NM+cwvh0hhLhnZswaj6mgUEo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161312-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161312: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=0bbc20727598421c4e47d46b982246217df8c6bc
X-Osstest-Versions-That:
    ovmf=64138c95db5a7a3e4768d8a01ba71dc3475e6524
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 12:35:20 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 0bbc20727598421c4e47d46b982246217df8c6bc
baseline version:
 ovmf                 64138c95db5a7a3e4768d8a01ba71dc3475e6524

Last test of basis   161301  2021-04-19 21:40:07 Z    0 days
Testing same since   161312  2021-04-20 04:56:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jason <yun.lou@intel.com>
  Jason Lou <yun.lou@intel.com>
  Kun Qin <kuqin12@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
   64138c95db..0bbc207275  0bbc20727598421c4e47d46b982246217df8c6bc -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:37:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:37:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113618.216528 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpdA-0007cv-0o; Tue, 20 Apr 2021 12:37:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113618.216528; Tue, 20 Apr 2021 12: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 1lYpd9-0007co-UH; Tue, 20 Apr 2021 12:37:27 +0000
Received: by outflank-mailman (input) for mailman id 113618;
 Tue, 20 Apr 2021 12:37:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yMJ0=JR=intel.com=chao.gao@srs-us1.protection.inumbo.net>)
 id 1lYpd9-0007cj-7i
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:37:27 +0000
Received: from mga02.intel.com (unknown [134.134.136.20])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d37eb6c9-581c-4eb4-ac03-68d33f006aea;
 Tue, 20 Apr 2021 12:37:22 +0000 (UTC)
Received: from orsmga008.jf.intel.com ([10.7.209.65])
 by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Apr 2021 05:37:21 -0700
Received: from gao-cwp.sh.intel.com (HELO gao-cwp) ([10.239.159.149])
 by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Apr 2021 05:37:18 -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: d37eb6c9-581c-4eb4-ac03-68d33f006aea
IronPort-SDR: 8ENSriSrf/ef9mDRmsr9Guol8FOaFEcS+lR5v9WwPSQ9GVYewRDpPMiu+JVJ4bSdepl47X6GB2
 Olimjc2ujYwg==
X-IronPort-AV: E=McAfee;i="6200,9189,9959"; a="182629102"
X-IronPort-AV: E=Sophos;i="5.82,236,1613462400"; 
   d="scan'208";a="182629102"
IronPort-SDR: O7KmZDvxuhOz0prwu+3x444EnRXqTsEP7IEi60RmoghTIxR/41DlrkSB+S1aVzBzhJwWlvAuwm
 lK8joYWbc8Aw==
X-IronPort-AV: E=Sophos;i="5.82,236,1613462400"; 
   d="scan'208";a="426910262"
Date: Tue, 20 Apr 2021 20:41:29 +0800
From: Chao Gao <chao.gao@intel.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
Message-ID: <20210420124127.GA12175@gao-cwp>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
User-Agent: Mutt/1.9.4 (2018-02-28)

On Tue, Apr 20, 2021 at 01:38:26PM +0200, Jan Beulich wrote:
>On 01.04.2020 22:06, Chao Gao wrote:
>> According to Intel VT-d SPEC rev3.3 Section 6.5, Register-based Invalidation
>> isn't supported by Intel VT-d version 6 and beyond.
>> 
>> This hardware change impacts following two scenarios: admin can disable
>> queued invalidation via 'qinval' cmdline and use register-based interface;
>> VT-d switches to register-based invalidation when queued invalidation needs
>> to be disabled, for example, during disabling x2apic or during system
>> suspension or after enabling queued invalidation fails.
>> 
>> To deal with this hardware change, if register-based invalidation isn't
>> supported, queued invalidation cannot be disabled through Xen cmdline; and
>> if queued invalidation has to be disabled temporarily in some scenarios,
>> VT-d won't switch to register-based interface but use some dummy functions
>> to catch errors in case there is any invalidation request issued when queued
>> invalidation is disabled.
>> 
>> Signed-off-by: Chao Gao <chao.gao@intel.com>
>
>In principle (with a minor nit further down)
>Reviewed-by: Jan Beulich <jbeulich@suse.com>
>
>However, ...
>
>> ---
>> Changes in v2:
>>  - verify system suspension and resumption with this patch applied
>>  - don't fall back to register-based interface if enabling qinval failed.
>>    see the change in init_vtd_hw().
>>  - remove unnecessary "queued_inval_supported" variable
>>  - constify the "struct vtd_iommu *" of has_register_based_invalidation()
>>  - coding-style changes
>
>... while this suggests this is v2 of a recently sent patch, the
>submission is dated a little over a year ago. This is confusing.
>It is additionally confusing that there were two copies of it in
>my inbox, despite mails coming from a list normally getting
>de-duplicated somewhere at our end (I believe).

You are right. I messed the system time of my server somehow. Sorry for this.
If it is possible, please help to update the date of this patch also.

>
>> --- a/xen/drivers/passthrough/vtd/iommu.c
>> +++ b/xen/drivers/passthrough/vtd/iommu.c
>> @@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>>  
>>      iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
>>      iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
>> +    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
>> +
>> +    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
>> +    {
>> +        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
>> +               iommu->index);
>
>Here (and at least once more yet further down): We don't normally end
>log messages with a full stop. Easily addressable while committing, of
>course.

Okay. Please go ahead.

Thanks
Chao


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:39:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:39:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113627.216540 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpes-0007ku-C9; Tue, 20 Apr 2021 12:39:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113627.216540; Tue, 20 Apr 2021 12:39: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 1lYpes-0007km-99; Tue, 20 Apr 2021 12:39:14 +0000
Received: by outflank-mailman (input) for mailman id 113627;
 Tue, 20 Apr 2021 12:39: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 1lYpeq-0007kg-KY
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:39: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 1lYpem-0000nw-LZ; Tue, 20 Apr 2021 12:39:08 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYpem-0006MA-DI; Tue, 20 Apr 2021 12:39: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=VHX4CnXUb+sY1qsWk2jUDghe1QGwAV06ziDrxJqKKFA=; b=Kefs13kfDRCIVOkR/gbp6VmW3J
	K/z/K2Qapoz5LMBksA9WC8gVBotbiJ/IvNpdk5TBVxbe44xOjSxKQeEcCuViED5Dynj2NhUU/Ieui
	ELw9X9nKcuQrs6L0x2kJR+LtIbvxhPLtzsvBT/Mxh4Ee4ya6ttPW/4E8Jl/lOs3Va25w=;
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org,
 Chao Gao <chao.gao@intel.com>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
 <148ad77f-d447-0800-d48b-9ba8c758b905@xen.org>
 <b89c8443-4df6-485b-2b5b-d89360a6969a@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <98da1bbb-8860-0728-a438-a4f12719d4e2@xen.org>
Date: Tue, 20 Apr 2021 13:39:06 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <b89c8443-4df6-485b-2b5b-d89360a6969a@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

On 20/04/2021 13:25, Jan Beulich wrote:
> On 20.04.2021 14:14, Julien Grall wrote:
>> Hi,
>>
>> It is not really my area of expertise but I wanted to jump on one
>> comment below...
>>
>> On 20/04/2021 12:38, Jan Beulich wrote:
>>> On 01.04.2020 22:06, Chao Gao wrote:
>>>> ---
>>>> Changes in v2:
>>>>    - verify system suspension and resumption with this patch applied
>>>>    - don't fall back to register-based interface if enabling qinval failed.
>>>>      see the change in init_vtd_hw().
>>>>    - remove unnecessary "queued_inval_supported" variable
>>>>    - constify the "struct vtd_iommu *" of has_register_based_invalidation()
>>>>    - coding-style changes
>>>
>>> ... while this suggests this is v2 of a recently sent patch, the
>>> submission is dated a little over a year ago. This is confusing.
>>> It is additionally confusing that there were two copies of it in
>>> my inbox, despite mails coming from a list normally getting
>>> de-duplicated somewhere at our end (I believe).
>>>
>>>> --- a/xen/drivers/passthrough/vtd/iommu.c
>>>> +++ b/xen/drivers/passthrough/vtd/iommu.c
>>>> @@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>>>>    
>>>>        iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
>>>>        iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
>>>> +    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
>>>> +
>>>> +    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
>>>> +    {
>>>> +        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
>>>> +               iommu->index);
>>>
>>> Here (and at least once more yet further down): We don't normally end
>>> log messages with a full stop. Easily addressable while committing, of
>>> course.
>>
>> I can find a large number of cases where log messages are ended with a
>> full stop... Actually it looks more natural to me than your suggestion.
> 
> Interesting. From purely a language perspective it indeed looks more
> natural, I agree. But when considering (serial) console bandwidth, we
> ought to try to eliminate _any_ output that's there without conveying
> information or making the conveyed information understandable. In fact
> I recall a number of cases (without having commit hashes to hand)
> where we deliberately dropped full stops. (The messages here aren't at
> risk of causing bandwidth issues, but as with any such generic item I
> think the goal ought to be consistency, and hence either full stops
> everywhere, or nowhere. If bandwidth was an issue here, I might also
> have suggested to shorten "Queued Invalidation" to just "QI".)
I wasn't aware of such requirement in Xen... Although, I can see how 
this can be a concern. If you really want to enforce it, then it should 
be written in the CODING_STYLE. Alternatively, you could be a bit more 
verbose in your request so the other understand the reasoning behind it.

> 
> Also, when you say "large number" - did you compare to the number of
> cases where there are no full stops? (I sincerely hope we don't have
> that many full stops left.)

42sh> ack "printk\(\"" | ack "\..n\"" | wc -l
130
42sh> ack "printk\(\"" | wc -l
1708

So ~7.5% of the printks.

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:39:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:39:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113631.216551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpfL-0007qQ-Kr; Tue, 20 Apr 2021 12:39:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113631.216551; Tue, 20 Apr 2021 12:39: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 1lYpfL-0007qJ-Hv; Tue, 20 Apr 2021 12:39:43 +0000
Received: by outflank-mailman (input) for mailman id 113631;
 Tue, 20 Apr 2021 12:39: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 1lYpfK-0007qD-Kx
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:39: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 1lYpfK-0000oF-BF; Tue, 20 Apr 2021 12:39:42 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYpfK-0006Ot-4N; Tue, 20 Apr 2021 12:39: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=+HWN/aKg5PvPEtWcti9+8UG77AaUSNKBQBFazb8xtq8=; b=5p7HHYTI74a/6IcoJSRdLI2xS+
	g5a7Ae6cS9nvarn+N/AWAowZc3bZxoIf1qb/qZnYyEUp1s4Vi11PTBVACGooYN5zPys3UB/44Ycub
	/Ba/Qs4BHMSocVCQuTrwBjFH44Y6Jl8FD2QYKKkhftERy1FArEHtAAEVNdDOH0t6OhZ0=;
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
To: Stefano Stabellini <sstabellini@kernel.org>,
 Rahul Singh <Rahul.Singh@arm.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
 <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
 <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
 <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
 <78c30978-c3be-4357-fecc-5b2f24bf563f@xen.org>
 <348C921E-1150-4247-A693-1D81933FC3F7@arm.com>
 <996b5db1-da59-f03c-9e04-9ac283aa38f2@xen.org>
 <279F74CA-647D-458B-97C0-968E1795E494@arm.com>
 <alpine.DEB.2.21.2104190920160.4885@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <a972d85e-0791-86d0-471b-5854fc40ccd6@xen.org>
Date: Tue, 20 Apr 2021 13:39:40 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104190920160.4885@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi,

On 19/04/2021 17:21, Stefano Stabellini wrote:
> On Mon, 19 Apr 2021, Rahul Singh wrote:
>> Hi Julien,
>>
>>> On 18 Apr 2021, at 6:48 pm, Julien Grall <julien@xen.org> wrote:
>>>
>>>
>>>
>>> On 16/04/2021 17:41, Rahul Singh wrote:
>>>> Hi Julien
>>>
>>> Hi Rahul,
>>>
>>>>> On 16 Apr 2021, at 5:08 pm, Julien Grall <julien@xen.org> wrote:
>>>>>
>>>>>
>>>>>
>>>>> On 16/04/2021 17:05, Rahul Singh wrote:
>>>>>>> On 16 Apr 2021, at 4:23 pm, Julien Grall <julien@xen.org> wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 16/04/2021 16:01, Rahul Singh wrote:
>>>>>>>> Hi Julien,
>>>>>>>
>>>>>>> Hi Rahul,
>>>>>>>
>>>>>>>>> On 16 Apr 2021, at 3:35 pm, Julien Grall <julien@xen.org> wrote:
>>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> On 16/04/2021 12:25, Rahul Singh wrote:
>>>>>>>>>> Revert the code that associates the group pointer with the S2CR as this
>>>>>>>>>> code causing an issue when the SMMU device has more than one master
>>>>>>>>>> device.
>>>>>>>>>
>>>>>>>>> It is not clear to me why this change was first added. Are we missing any feature when reverting it?
>>>>>>>> This feature was added when we backported the code from Linux to fix the stream match conflict issue
>>>>>>>> as part of commit "xen/arm: smmuv1: Intelligent SMR allocation”.
>>>>>>>> This is an extra feature added to allocate IOMMU group based on stream-id. If two device has the
>>>>>>>> same stream-id then we assign those devices to the same group.
>>>>>>>
>>>>>>> If we revert the patch, then it would not be possible to use the SMMU if two devices use the same stream-id. Is that correct?
>>>>>> No. If we revert the patch we can use the SMMU if two devices use the same stream-id without any issue but each device will be in a separate group.This is same behaviour before the code is merged.
>>>>>
>>>>> Ok. So there is no change in behavior. Good. Can you propose a commit message clarifying that?
>>>> Please have a look if it make sense.
>>>> xen/arm: smmuv1: Revert associating the group pointer with the S2CR
>>>> Revert the code that associates the group pointer with the S2CR as this
>>>> code causing an issue when the SMMU device has more than one master
>>>> device with same stream-id. This issue is introduced by the below commit:
>>>> “0435784cc75dcfef3b5f59c29deb1dbb84265ddb:xen/arm: smmuv1: Intelligent SMR allocation”
>>>>   Reverting the code will not impact to use of SMMU if two devices use the
>>>> same stream-id but each device will be in a separate group. This is the same
>>>> behaviour before the code is merged.
>>>
>>> Look good to me. Is this patch to be applied on top of Stefano's series? If not, is there going to be more clash?
>>>
>>
>> As per Stefano's mail he already tested his patch series on top of this patch. I think this patch has to merged before Stefano’s patch series
>> Let Stefano also confirm that.
>>
>> I think there will be no more clashes.
> 
> Yes, this patch is to be committed *before* my series and I have already
> tested this patch alone and with my series on top. Both cases work fine.

Cool. Thanks for the confirmation. I have committed the patch with the 
new commit message (although, I tweaked a little bit to use the 
abbreviated version of the commit ID).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:49:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:49:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113640.216567 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpp6-0000RX-KG; Tue, 20 Apr 2021 12:49:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113640.216567; Tue, 20 Apr 2021 12: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 1lYpp6-0000RQ-HI; Tue, 20 Apr 2021 12:49:48 +0000
Received: by outflank-mailman (input) for mailman id 113640;
 Tue, 20 Apr 2021 12:49:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NaoY=JR=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYpp5-0000RL-61
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:49:47 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id adbe9748-2efe-49db-a26f-dd4c3460fbd2;
 Tue, 20 Apr 2021 12:49: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: adbe9748-2efe-49db-a26f-dd4c3460fbd2
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618922985;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=j73PFgf2gBL04/CdZUEdpjnzEcNTxgT7WVKg5lLwGsw=;
  b=ZSgGyBlLNX6H7PluMHsd9bJPrwXqvcAVtN8aMa5KFIJRZGEoAdiXONqS
   wAhlrlniIXSZSGl3xFPSAeW0FBcGa+zqsZeOuCbBhUI2BSg/WuBhCxRri
   T6vGsum8gzT6HCeuGVqLJSI+D0vbF8PqxMJmA7xUowsTExugNXzn15fwz
   0=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: xlC/ltGjb8pJ/m68uU5CsWR7SlEmxqtyCGWrXDjDx0f2eNIpQdUPr1EDNdcdsDHTdubtk+arQw
 +aPcbHewJYzf5aoE5SnECZXDuBam5rn0ELR6MOwTzTrNkhRhqRXvZFhfhS5Ci0jXcnv7cS3818
 68hGajrVJoC1j15ucngq4ydujMtRzgFEhgJgVO7oiwoG8VOaLhHyrHZfnj1Rtvaoh60LSBXb5c
 SzOISl5lMEpZuUfYGOCFUBzs8nZ6Mi9aZ3S+fgl9Gu3T3OhLOdQidDG5KXQ5ejz4hKAcgL9zow
 cY4=
X-SBRS: 5.2
X-MesageID: 42102166
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:qbH8Pa2oqPmXZfGk7lO50QqjBR93eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/FIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmtJ1/Z
 xLN5JzANiYNzVHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcBdxi1SYzzrd3Febg9AGJY/Cd
 647s1IuzKvdR0sH7uGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnl4j41VTRTzbA+tV
 XUigCR3NTfj9iX6D/5k1XS4ZNfhcf7xrJ4avCkp8AJJlzX+36VTat7XbnqhkFTnMiO7xIQnM
 DIs1McOa1ImgnsV0WUhTeo5AX6yjYp7BbZuCylqF/uu9bwSj5/K+cpv/MhTjLj50AtvM5x3c
 twtgrz3fonbmK0oA3H69fFTB1snEavyEBS9dI7tHBDTZAYLIZYsI13xjIkLL47ACn45Io7ed
 Meav302fA+SyL5U1nkpGV1hPSjUnMvdy32OXQqi4i+1jhbm21B1E0IxMATtWdozuNNd7B0o8
 vDKahmj7dIU4s/ar98Hv4IRY+NBnXKWg+kChPcHX3XUIU8f17doZ/+57s4oMmsZZwz1ZM33L
 DMSklRu2Iec1/nYPf+kqFjw1ToeiGQTD7twsZR69xSobvnXofmNiWFVRQHj9agi+93OLyZZ9
 +DfLZtR9PzJ2rnHohEmyfkXYNJFHUYWMoJ/v4mRlO1pN7RIIGCjJ2aTN/jYJ7WVRo0UGL2BX
 UOGBLpIt9b00ytUnjkxDfLXXfAfVH+4IJQHKDW8/N78vlJCqR89iwuzXip7MCCLjNP9oYsel
 FlHb/hmqSn4Um6lFy4q1lBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCR31HuDLRlvctPOHG
 dk1hNK0JPyC6bV6TEpCtqhPG7fpWAUvmi2Q5AVnbDGwsv5ZJUiDNIDVLZqHQvGUzx58Dwa6V
 trWUshfAvyBznugaKqgNg/H+fEbeRxhw+tPIpzsnLQtUKVoOk1XXsFVzuSUcqa6DxeBQZ8tx
 lUyesykbCAkTGgJS8Um+IjKmBBb2yRHfZ7FgifXZ5VnbrqYQl0am+PiVWh+lcOU1uv039Xqn
 3qLCWSd/2OJlZGoHhX3pzn905OenyHc1h9bW17toNBBX3L00wDo9OjV+6W6S+8e1ECyuYSPH
 X+bTweLhhH6vq32BSW8QzyX0kO99ELBKjwHb4je7bc1jeRM4WOj7gBBOIR1o1iLsrSvugCVv
 +/dweZICjjMf4g3xWYqx8eSXBJgUhhtcmt9Azu7WC+0nJ6POHbJ05+QaoHZ/6b9GrpSp+zod
 xEpONwmdH1FGr/atSLk/6KKxFCLw7eum6wQaUDr4tOsac7qbt0GN36XFLzpQZ69SR7CP2xsk
 UUBJlfyvTmHKREesQJYSJX/lYzjr20XQAWmz2zJtV7RE0nin/QAsiA7LXJo4c+G0HpnnqFBX
 Cvtwlmu8rfVySN1bQmG7s9DGRfZk878mlj9oq5BvvtITTvU+FI51yhNHChNJdbVaieAL0Vxy
 wKru2grquydyDi3hrXsiY+CqVS83y/Scf3JA6XA+ZH/5ibPluL65HarPKbvXPSSTGhbV4fip
 AAXUsMbt5bgj1ntbYJ6EGJO+TKi3NgtUBf7zFhnkPs3YbjwF6zJzA5DSTpxrNMXTdSNXCUi9
 /i6ubw7gWk3AR4
X-IronPort-AV: E=Sophos;i="5.82,236,1613451600"; 
   d="scan'208";a="42102166"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Mks9l5J+jZwTyOQ1d+7QG5Gekad9j4C6oySuQ9wyy4iMa+HS+XUXCytOYgMyHQ08vHtcTOo3ykg9EtgfUkf3zdc4S0mUHjBnnts0LSSry1W6bqU2cYItB8qF24+itNVx4usMdWcRM8E9acC4wPJVNKJnI0V6cNPFGVYDpkoKv7L6BFqufT4QpjqmG4IpwOb0a7gskjy+jJtGgjyx1t2LMsxpXnjrAektT5akeh2X58sGJ0I0NWuvOhkV0DpIrNCGKBBj8dPi/LH7yG/TwP/HwkyWMGMWp9m5bHGKyeWhMBSkwo0ik1Aaa4KHt8V+Q7cWIWKdcR9TjGPPlelbvrxcJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=eY1Gk+EUG6GQcVxbsf3kwqpM8oM+KQ7/OZt6PWh+BJg=;
 b=IP0bpOBdAbRYbMJh/mbTID3Km7fjuXO+FnNQl8UVr/Bu8yjpuHbfXHARB/4CzRgQhx1K2oTEpp3RzgazeKNHyR2hYXha/PnhsddXdH3vpOmMVAfUc/K2rQjwvjYxi59+NVNQa930AkvOpc4AvDKp7gKjJNqfTyNcteWvKrVRihFZ7RTYw1RH7cKh0rfi7iiETEQ3tLcczDmD7frLt0UpwAckubTpJoLAG2bnCr9nZREU00LolBVObPHM/q2Lwv2UgKYIj+akGDlOFymRouY2NYzklLnrbIWpvW3dFbYzVRM0uoUGnd7vd0dlKntWgpaWXUvyCz3s68LpJryVxzibNg==
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=eY1Gk+EUG6GQcVxbsf3kwqpM8oM+KQ7/OZt6PWh+BJg=;
 b=q2MWGfb+nUQsIrehqpN2/0ri6YOLCogaJb+BEe3RlUItx0FMnKEV5Dm+YgjBOiCAO0xCs1dF5BiQSc5dMTFYoKok7d67QDAzRy1vM0bru1qdhNqSE8IPXUV3lVCtCf1GqoP9bCXeMS3yFWdH251dCFB1nuBfWD8/To49bl+lp08=
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Jan Beulich <jbeulich@suse.com>
References: <20210415144731.3356-1-roger.pau@citrix.com>
 <20210415144731.3356-3-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 2/2] x86/cpuid: support LFENCE always serializing CPUID
 bit
Message-ID: <9879c2d3-4c59-2058-b4eb-43ec2f316ef8@citrix.com>
Date: Tue, 20 Apr 2021 13:49:36 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210415144731.3356-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0327.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18c::8) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8febdb91-2862-4183-e2d2-08d903fac486
X-MS-TrafficTypeDiagnostic: BY5PR03MB5346:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB53468BA6B137150695169B31BA489@BY5PR03MB5346.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4303;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 6DUP9eujRzM9VpLFQHtFJ110HGHEPtul0DHSMpI8FgVzXgRkduJIyLb2yBSnBotl6/UyOEER5F7RrP3uVKuoAPtrkxXeJ5WHJEqOgkJkNDFgon8gW8McD5gdkisgVXK2MT3Xb3xn1ffB2fxp/BqZy3H1OxQr26LZ9tOP0cWF8t2pq1meCXQy66yvUxhpH03vVCia4KG8CXGm4U+XTvvLf7ilqmSE4kn+Qlz50P3ucbnI6yw5E52tuhUTWlzdwDVYQ7pEEXd2zAEKKVgB5737vHc7Q7NEnicSX0VYSEwysgFa6zihw3xlZVphxGx6ClvPRwulSPbsyEwjGQSExsqcq580Rxuxx16N3+6npF8qKX0vju3EEeH+kS/2opoHq8XyTGbDKuNciUIdW6/Ushx5SQypAKZKNlHEpvRrjuh6Ztp1KtAWg8WR/2iUpB+bjN1Bk1h080lMorFXF+x9lIkCUGokbneK7ifnJitOb0cSYtDiamVO9F4LfP97t8qaeKCnEabeH8XlYnlpCzIS1WPLkfuCeDhnzY5R+EdtOweKpdPTdlqPSEBB0UYsen9vNzBluuFXhuufUoA1apx9t8LNj9dlBk+qNlW2Ifp8iyV/Qk/uwCXSty24uGxoZ6K1V+cOgeiC5TOUL5eYTahS3KoKOqFDT/YvT1ovRwcSlgDpV2/mzTIeioT8jwyV8bm2BTo9
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(396003)(376002)(346002)(136003)(366004)(956004)(8676002)(83380400001)(4326008)(66946007)(5660300002)(36756003)(8936002)(2616005)(2906002)(26005)(478600001)(316002)(54906003)(6666004)(16576012)(6486002)(66476007)(53546011)(31686004)(86362001)(16526019)(38100700002)(186003)(31696002)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 8febdb91-2862-4183-e2d2-08d903fac486
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 12:49:42.5046
 (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: 345/TJzSL1DJnWA6ZC7Pe6BlAjLUl+JyYqPomHXWc4ap7TSE0feMgR/rxzYJKQn9hF5snpwUpfV0k6EY3JYl+zhxEI1Q2qVHDk59OtrdhPU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5346
X-OriginatorOrg: citrix.com

On 15/04/2021 15:47, Roger Pau Monne wrote:
> AMD Milan (Zen3) CPUs have an LFENCE Always Serializing CPUID bit in
> leaf 80000021.eax. Previous AMD versions used to have a user settable
> bit in DE_CFG MSR to select whether LFENCE was dispatch serializing,
> which Xen always attempts to set. The forcefully always on setting is
> due to the addition of SEV-SNP so that a VMM cannot break the
> confidentiality of a guest.
>
> In order to support this new CPUID bit move the LFENCE_DISPATCH
> synthetic CPUID bit to map the hardware bit (leaving a hole in the
> synthetic range) and either rely on the bit already being set by the
> native CPUID output, or attempt to fake it in Xen by modifying the
> DE_CFG MSR. This requires adding one more entry to the featureset to
> support leaf 80000021.eax.
>
> The bit is exposed to guests by default if the underlying hardware
> supports leaf 80000021, as a way to signal that LFENCE is always
> serializing. Hardware that doesn't have the leaf might also get the
> bit set because Xen has performed the necessary arrangements, but
> that's not yet exposed to guests. Note that Xen doesn't allow guests
> to change the DE_CFG value, so once set by Xen LFENCE will always be
> serializing.
>
> Note that the access to DE_CFG by guests is left as-is: reads will
> unconditionally return LFENCE_SERIALISE bit set, while writes are
> silently dropped.
>
> Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---
> Changes since v1:
>  - Rename to lfence+.
>  - Add feature to libxl_cpuid.c.
>  - Reword commit message.
> ---
> Note this doesn't yet expose the bit on hardware that doesn't support
> leaf 80000021. It's still TBD whether we want to hardcode this support
> manually, or instead rely on a more general approach like the one
> suggested by the shrink max CPUID leaf patch from Jan.

I'm going to insist on using the manual approach.=C2=A0 Upping max leaf is
strictly opposite to shrinking logic.

It's very rare that we'll want to extend max leaf beyond what hardware
supports, and it wants calling out clearly, along with identifying why
it is safe to do so in this specific case.

It is not safe or sensible to blindly escalate to the compile time max.=C2=
=A0
The only cases where the differ are bugs needing fixing - the manual
approach has the special case clearly called out, while the blindly
escalate case has the bug hidden in derivation logic somewhere else.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 12:50:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 12:50:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113647.216580 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYppx-0001FF-1t; Tue, 20 Apr 2021 12:50:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113647.216580; Tue, 20 Apr 2021 12:50: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 1lYppw-0001F7-V8; Tue, 20 Apr 2021 12:50:40 +0000
Received: by outflank-mailman (input) for mailman id 113647;
 Tue, 20 Apr 2021 12:50:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYppw-0001F2-Ga
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 12:50:40 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1a1b04ee-39e7-4fa7-ac8a-b14055eadd04;
 Tue, 20 Apr 2021 12:50:39 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 59673B4A9;
 Tue, 20 Apr 2021 12:50: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: 1a1b04ee-39e7-4fa7-ac8a-b14055eadd04
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618923038; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=f+ZBd6/3UtSNkoI0op6ss7oC9lHSiQednDpiUmZJGJc=;
	b=LIIXFMhkrCeE0aULq4rZXuJm5jsKOK3nPthhbtv6mh4P5Uv7rrVdOqUIJVN1TxNBKyGKLX
	EDhJRXwk+HvAlD/vLuWWMXMnLYhJGz04IhI56s9SbYbYplnUdtLGTs/WZnpyFVl0yR2yU+
	EP9/QBN2lIjgRgd6NUOvtqrinRgPO+k=
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org,
 Chao Gao <chao.gao@intel.com>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
 <148ad77f-d447-0800-d48b-9ba8c758b905@xen.org>
 <b89c8443-4df6-485b-2b5b-d89360a6969a@suse.com>
 <98da1bbb-8860-0728-a438-a4f12719d4e2@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <525fa57c-b036-7c2b-3a6d-ede7f4ce6d36@suse.com>
Date: Tue, 20 Apr 2021 14:50:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <98da1bbb-8860-0728-a438-a4f12719d4e2@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 20.04.2021 14:39, Julien Grall wrote:
> On 20/04/2021 13:25, Jan Beulich wrote:
>> On 20.04.2021 14:14, Julien Grall wrote:
>>> It is not really my area of expertise but I wanted to jump on one
>>> comment below...
>>>
>>> On 20/04/2021 12:38, Jan Beulich wrote:
>>>> On 01.04.2020 22:06, Chao Gao wrote:
>>>>> ---
>>>>> Changes in v2:
>>>>>    - verify system suspension and resumption with this patch applied
>>>>>    - don't fall back to register-based interface if enabling qinval failed.
>>>>>      see the change in init_vtd_hw().
>>>>>    - remove unnecessary "queued_inval_supported" variable
>>>>>    - constify the "struct vtd_iommu *" of has_register_based_invalidation()
>>>>>    - coding-style changes
>>>>
>>>> ... while this suggests this is v2 of a recently sent patch, the
>>>> submission is dated a little over a year ago. This is confusing.
>>>> It is additionally confusing that there were two copies of it in
>>>> my inbox, despite mails coming from a list normally getting
>>>> de-duplicated somewhere at our end (I believe).
>>>>
>>>>> --- a/xen/drivers/passthrough/vtd/iommu.c
>>>>> +++ b/xen/drivers/passthrough/vtd/iommu.c
>>>>> @@ -1193,6 +1193,14 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>>>>>    
>>>>>        iommu->cap = dmar_readq(iommu->reg, DMAR_CAP_REG);
>>>>>        iommu->ecap = dmar_readq(iommu->reg, DMAR_ECAP_REG);
>>>>> +    iommu->version = dmar_readl(iommu->reg, DMAR_VER_REG);
>>>>> +
>>>>> +    if ( !iommu_qinval && !has_register_based_invalidation(iommu) )
>>>>> +    {
>>>>> +        printk(XENLOG_WARNING VTDPREFIX "IOMMU %d: cannot disable Queued Invalidation.\n",
>>>>> +               iommu->index);
>>>>
>>>> Here (and at least once more yet further down): We don't normally end
>>>> log messages with a full stop. Easily addressable while committing, of
>>>> course.
>>>
>>> I can find a large number of cases where log messages are ended with a
>>> full stop... Actually it looks more natural to me than your suggestion.
>>
>> Interesting. From purely a language perspective it indeed looks more
>> natural, I agree. But when considering (serial) console bandwidth, we
>> ought to try to eliminate _any_ output that's there without conveying
>> information or making the conveyed information understandable. In fact
>> I recall a number of cases (without having commit hashes to hand)
>> where we deliberately dropped full stops. (The messages here aren't at
>> risk of causing bandwidth issues, but as with any such generic item I
>> think the goal ought to be consistency, and hence either full stops
>> everywhere, or nowhere. If bandwidth was an issue here, I might also
>> have suggested to shorten "Queued Invalidation" to just "QI".)
> I wasn't aware of such requirement in Xen... Although, I can see how 
> this can be a concern. If you really want to enforce it, then it should 
> be written in the CODING_STYLE.

Agreed, but since I've had no success with prior adjustments to that
file (not even worth a reply to tell me why a change might be a bad
one, in at least some of the cases), I'm afraid I've given up making
attempts to get adjustments into there.

> Alternatively, you could be a bit more 
> verbose in your request so the other understand the reasoning behind it.

Well, yes, perhaps. But then there's the desire to not repeat oneself
all the time.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:01:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:01:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113654.216591 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYpzu-0002I2-1L; Tue, 20 Apr 2021 13:00:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113654.216591; Tue, 20 Apr 2021 13: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 1lYpzt-0002Hv-Uo; Tue, 20 Apr 2021 13:00:57 +0000
Received: by outflank-mailman (input) for mailman id 113654;
 Tue, 20 Apr 2021 13:00:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lYpzs-0002Hq-Jt
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:00:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYpzn-0001B4-P5; Tue, 20 Apr 2021 13:00:51 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYpzn-0008HU-HR; Tue, 20 Apr 2021 13:00:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=GE7kMMQDC7qGfHnr7SeRoZrQd4ZsjTtrQTSkfnOkghM=; b=wK0PSINeZ0WYGg8xcxwDkOjM3s
	ZcRd/riZHN7WBK5zcOdxRZXsVajZ7tcZVCSdn5/ih86IFCMaoh1uXbDm+SXpzeQz853nj1J2YCm54
	eYmd74SGoKLJRyW49KJzndANe3akk9nj6zj4wVE+n/Qn5blAV7T1L83IjcHTpWalDGno=;
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org,
 Chao Gao <chao.gao@intel.com>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <f4b3ad3b-16b9-5e42-c7a6-0c5c81b1f392@suse.com>
 <148ad77f-d447-0800-d48b-9ba8c758b905@xen.org>
 <b89c8443-4df6-485b-2b5b-d89360a6969a@suse.com>
 <98da1bbb-8860-0728-a438-a4f12719d4e2@xen.org>
 <525fa57c-b036-7c2b-3a6d-ede7f4ce6d36@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <5f77d54a-6c92-84bb-a8a9-a0864b350f1f@xen.org>
Date: Tue, 20 Apr 2021 14:00:49 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <525fa57c-b036-7c2b-3a6d-ede7f4ce6d36@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 20/04/2021 13:50, Jan Beulich wrote:
>> Alternatively, you could be a bit more
>> verbose in your request so the other understand the reasoning behind it.
> 
> Well, yes, perhaps. But then there's the desire to not repeat oneself
> all the time.

Most likely, the time you try to save not expanding your thought are 
going to be lost when the contributor will come back asking why you are 
requesting it. ;)

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:04:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:04:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113658.216603 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYq2w-0002Rj-IK; Tue, 20 Apr 2021 13:04:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113658.216603; Tue, 20 Apr 2021 13: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 1lYq2w-0002Rc-F7; Tue, 20 Apr 2021 13:04:06 +0000
Received: by outflank-mailman (input) for mailman id 113658;
 Tue, 20 Apr 2021 13:04: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 1lYq2v-0002RX-BU
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:04: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 1lYq2u-0001FT-2y; Tue, 20 Apr 2021 13:04:04 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYq2t-00009k-Sc; Tue, 20 Apr 2021 13:04: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=7od0bkxwU9DUdCNzCSv6hP2HDiUbVD0DY3uaEYdCDd8=; b=xpMmqQfqClkqCShLUqzQVzurO6
	IR6xQRd/xjodmn/Pir1dathHrPh/4cNqc0e0DoQmO24cHeYmgs47yUqaynm9oSuGGXNOBekBTn6OH
	88r8RUpJkx0orn6TsXaizCpymWT34uX5eiTQwa3Tk+JCF71pFouty4pxwiN3EgIXLpCs=;
Subject: Re: [PATCH 1/9] arm64/vfp: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-2-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <5adbbe51-f9dc-3089-c6f7-c274bd25ea31@xen.org>
Date: Tue, 20 Apr 2021 14:04:02 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-2-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify type of FPCR, FPSR, FPEXC32_EL2 to register_t.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:12:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:12:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113664.216616 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqB8-0003PJ-Ee; Tue, 20 Apr 2021 13:12:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113664.216616; Tue, 20 Apr 2021 13: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 1lYqB8-0003PC-Bj; Tue, 20 Apr 2021 13:12:34 +0000
Received: by outflank-mailman (input) for mailman id 113664;
 Tue, 20 Apr 2021 13:12: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 1lYqB7-0003P7-FV
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:12: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 1lYqB6-0001OF-6N; Tue, 20 Apr 2021 13:12:32 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYqB5-000106-Uu; Tue, 20 Apr 2021 13:12: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=HdO5YSiPZuUNQUKE9uSSmJcR1L9Kt0MejuZ/R4YCyZA=; b=HfQv/1pRCksNTRZ2jhjDxqkyS9
	qWwMYFOFBY7cVKT+SUeRRGyxdvHUdAR671IlpQhfJg32Gl02WrtQJYsIcK3X9D+s+HqNr01euFIM0
	tn0gphXqrOVMZZE7ib6UJQUYoqBW4hQehfb5E4xwxua7ZJKLQzzLN5/9e50cOpTqQ8+Q=;
Subject: Re: [PATCH 2/9] arm/domain: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-3-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <80f89abe-d81f-8b56-583c-470289abae0b@xen.org>
Date: Tue, 20 Apr 2021 14:12:29 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-3-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify type of registers: actlr, cntkctl to register_t.

ACTLR is implementation defined, so in theory there might already bits 
already defined in the range [32:63]. So I would consider to split it 
from the patch so we can backport it.

> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
>   xen/arch/arm/domain.c        | 20 ++++++++++----------
>   xen/include/asm-arm/domain.h |  4 ++--
>   2 files changed, 12 insertions(+), 12 deletions(-)
> 
> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
> index bdd3d3e5b5..c021a03c61 100644
> --- a/xen/arch/arm/domain.c
> +++ b/xen/arch/arm/domain.c
> @@ -113,13 +113,13 @@ static void ctxt_switch_from(struct vcpu *p)
>       p->arch.tpidr_el1 = READ_SYSREG(TPIDR_EL1);
>   
>       /* Arch timer */
> -    p->arch.cntkctl = READ_SYSREG32(CNTKCTL_EL1);
> +    p->arch.cntkctl = READ_SYSREG(CNTKCTL_EL1);
>       virt_timer_save(p);
>   
>       if ( is_32bit_domain(p->domain) && cpu_has_thumbee )
>       {
> -        p->arch.teecr = READ_SYSREG32(TEECR32_EL1);
> -        p->arch.teehbr = READ_SYSREG32(TEEHBR32_EL1);
> +        p->arch.teecr = READ_SYSREG(TEECR32_EL1);
> +        p->arch.teehbr = READ_SYSREG(TEEHBR32_EL1);

It feels strange you converted cntkctl and actlr to use register_t but 
not teecr and teehbr. Can you explain why?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:28:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:28:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113676.216628 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqQm-0004VO-S4; Tue, 20 Apr 2021 13:28:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113676.216628; Tue, 20 Apr 2021 13: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 1lYqQm-0004VH-OL; Tue, 20 Apr 2021 13:28:44 +0000
Received: by outflank-mailman (input) for mailman id 113676;
 Tue, 20 Apr 2021 13:28: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 1lYqQl-0004VC-CP
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:28: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 1lYqQk-0001dJ-39; Tue, 20 Apr 2021 13:28:42 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYqQj-0002KF-Mz; Tue, 20 Apr 2021 13:28: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=w+ED1bRBmaLTm6AhZzFwstCqZC5Lp+ipEI+V93GAsVg=; b=4E2h7YfUTWYuC/gpRS/Rnd7jlP
	IfFgQ60mncWMNplbTOQb1o6dMh8lyVxHPYahTY5iyPqn3jc63kzfHTyyVGaelpqW7o1GTLzffKEUV
	FeOZbmnWJOdDkrkwtGSg7zSzLuH8p53Vh6uIl8ovgc8kSLxBMLpjVTvXBR8ts3RgJuaU=;
Subject: Re: [PATCH 3/9] arm/gic: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-4-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <1a087bed-94e5-bada-76c4-92e0c429cce6@xen.org>
Date: Tue, 20 Apr 2021 14:28:40 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-4-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify types of following members of struct gic_v3 to register_t:
> -hcr(not used at all in Xen)

It looks like we never used it (even in the patch introducing it). So I 
would suggest to remove it in a patch before this one.

> -vmcr
> -sre_el1
> -apr0
> -apr1
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
>   xen/arch/arm/gic-v3-lpi.c |  2 +-
>   xen/arch/arm/gic-v3.c     | 96 ++++++++++++++++++++-------------------
>   xen/include/asm-arm/gic.h |  6 +--
>   3 files changed, 54 insertions(+), 50 deletions(-)
> 
> diff --git a/xen/arch/arm/gic-v3-lpi.c b/xen/arch/arm/gic-v3-lpi.c
> index 869bc97fa1..e1594dd20e 100644
> --- a/xen/arch/arm/gic-v3-lpi.c
> +++ b/xen/arch/arm/gic-v3-lpi.c
> @@ -178,7 +178,7 @@ void gicv3_do_LPI(unsigned int lpi)
>       irq_enter();
>   
>       /* EOI the LPI already. */
> -    WRITE_SYSREG32(lpi, ICC_EOIR1_EL1);
> +    WRITE_SYSREG(lpi, ICC_EOIR1_EL1);
>   
>       /* Find out if a guest mapped something to this physical LPI. */
>       hlpip = gic_get_host_lpi(lpi);
> diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
> index ac28013c19..0634013a67 100644
> --- a/xen/arch/arm/gic-v3.c
> +++ b/xen/arch/arm/gic-v3.c
> @@ -246,12 +246,12 @@ static void gicv3_ich_write_lr(int lr, uint64_t val)
>    */
>   static void gicv3_enable_sre(void)
>   {
> -    uint32_t val;
> +    register_t val;
>   
> -    val = READ_SYSREG32(ICC_SRE_EL2);
> +    val = READ_SYSREG(ICC_SRE_EL2);
>       val |= GICC_SRE_EL2_SRE;
>   
> -    WRITE_SYSREG32(val, ICC_SRE_EL2);
> +    WRITE_SYSREG(val, ICC_SRE_EL2);
>       isb();
>   }
>   
> @@ -315,16 +315,16 @@ static void restore_aprn_regs(const union gic_state_data *d)
>       switch ( gicv3.nr_priorities )
>       {
>       case 7:
> -        WRITE_SYSREG32(d->v3.apr0[2], ICH_AP0R2_EL2);
> -        WRITE_SYSREG32(d->v3.apr1[2], ICH_AP1R2_EL2);
> +        WRITE_SYSREG(d->v3.apr0[2], ICH_AP0R2_EL2);
> +        WRITE_SYSREG(d->v3.apr1[2], ICH_AP1R2_EL2);
>           /* Fall through */
>       case 6:
> -        WRITE_SYSREG32(d->v3.apr0[1], ICH_AP0R1_EL2);
> -        WRITE_SYSREG32(d->v3.apr1[1], ICH_AP1R1_EL2);
> +        WRITE_SYSREG(d->v3.apr0[1], ICH_AP0R1_EL2);
> +        WRITE_SYSREG(d->v3.apr1[1], ICH_AP1R1_EL2);
>           /* Fall through */
>       case 5:
> -        WRITE_SYSREG32(d->v3.apr0[0], ICH_AP0R0_EL2);
> -        WRITE_SYSREG32(d->v3.apr1[0], ICH_AP1R0_EL2);
> +        WRITE_SYSREG(d->v3.apr0[0], ICH_AP0R0_EL2);
> +        WRITE_SYSREG(d->v3.apr1[0], ICH_AP1R0_EL2);
>           break;
>       default:
>           BUG();
> @@ -338,16 +338,16 @@ static void save_aprn_regs(union gic_state_data *d)
>       switch ( gicv3.nr_priorities )
>       {
>       case 7:
> -        d->v3.apr0[2] = READ_SYSREG32(ICH_AP0R2_EL2);
> -        d->v3.apr1[2] = READ_SYSREG32(ICH_AP1R2_EL2);
> +        d->v3.apr0[2] = READ_SYSREG(ICH_AP0R2_EL2);
> +        d->v3.apr1[2] = READ_SYSREG(ICH_AP1R2_EL2);
>           /* Fall through */
>       case 6:
> -        d->v3.apr0[1] = READ_SYSREG32(ICH_AP0R1_EL2);
> -        d->v3.apr1[1] = READ_SYSREG32(ICH_AP1R1_EL2);
> +        d->v3.apr0[1] = READ_SYSREG(ICH_AP0R1_EL2);
> +        d->v3.apr1[1] = READ_SYSREG(ICH_AP1R1_EL2);
>           /* Fall through */
>       case 5:
> -        d->v3.apr0[0] = READ_SYSREG32(ICH_AP0R0_EL2);
> -        d->v3.apr1[0] = READ_SYSREG32(ICH_AP1R0_EL2);
> +        d->v3.apr0[0] = READ_SYSREG(ICH_AP0R0_EL2);
> +        d->v3.apr1[0] = READ_SYSREG(ICH_AP1R0_EL2);
>           break;
>       default:
>           BUG();
> @@ -371,15 +371,15 @@ static void gicv3_save_state(struct vcpu *v)
>       dsb(sy);
>       gicv3_save_lrs(v);
>       save_aprn_regs(&v->arch.gic);
> -    v->arch.gic.v3.vmcr = READ_SYSREG32(ICH_VMCR_EL2);
> -    v->arch.gic.v3.sre_el1 = READ_SYSREG32(ICC_SRE_EL1);
> +    v->arch.gic.v3.vmcr = READ_SYSREG(ICH_VMCR_EL2);
> +    v->arch.gic.v3.sre_el1 = READ_SYSREG(ICC_SRE_EL1);
>   }
>   
>   static void gicv3_restore_state(const struct vcpu *v)
>   {
> -    uint32_t val;
> +    register_t val;
>   
> -    val = READ_SYSREG32(ICC_SRE_EL2);
> +    val = READ_SYSREG(ICC_SRE_EL2);
>       /*
>        * Don't give access to system registers when the guest is using
>        * GICv2
> @@ -388,7 +388,7 @@ static void gicv3_restore_state(const struct vcpu *v)
>           val &= ~GICC_SRE_EL2_ENEL1;
>       else
>           val |= GICC_SRE_EL2_ENEL1;
> -    WRITE_SYSREG32(val, ICC_SRE_EL2);
> +    WRITE_SYSREG(val, ICC_SRE_EL2);
>   
>       /*
>        * VFIQEn is RES1 if ICC_SRE_EL1.SRE is 1. This causes a Group0
> @@ -398,9 +398,9 @@ static void gicv3_restore_state(const struct vcpu *v)
>        * want before starting to mess with the rest of the GIC, and
>        * VMCR_EL1 in particular.
>        */
> -    WRITE_SYSREG32(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
> +    WRITE_SYSREG(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
>       isb();
> -    WRITE_SYSREG32(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
> +    WRITE_SYSREG(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
>       restore_aprn_regs(&v->arch.gic);
>       gicv3_restore_lrs(v);
>   
> @@ -468,24 +468,25 @@ static void gicv3_mask_irq(struct irq_desc *irqd)
>   static void gicv3_eoi_irq(struct irq_desc *irqd)
>   {
>       /* Lower the priority */
> -    WRITE_SYSREG32(irqd->irq, ICC_EOIR1_EL1);
> +    WRITE_SYSREG(irqd->irq, ICC_EOIR1_EL1);
>       isb();
>   }
>   
>   static void gicv3_dir_irq(struct irq_desc *irqd)
>   {
>       /* Deactivate */
> -    WRITE_SYSREG32(irqd->irq, ICC_DIR_EL1);
> +    WRITE_SYSREG(irqd->irq, ICC_DIR_EL1);
>       isb();
>   }
>   
>   static unsigned int gicv3_read_irq(void)
>   {
> -    unsigned int irq = READ_SYSREG32(ICC_IAR1_EL1);
> +    register_t irq = READ_SYSREG(ICC_IAR1_EL1);
>   
>       dsb(sy);
>   
> -    return irq;
> +    /* Number of IRQs do not exceed 32bit. */

If we want to be pedantic, the IRQs are encoded using 23-bit. So maybe 
we want to mask them below.

> +    return (unsigned int)irq;

NIT: We tend to avoid explicit cast unless they are strictly necessary 
because they can be more harmful than implicit cast (the compiler may 
not cast every conversion). So I would drop it and just keep the comment.

>   }
>   
>   /*
> @@ -857,16 +858,16 @@ static int gicv3_cpu_init(void)
>       gicv3_enable_sre();
>   
>       /* No priority grouping */
> -    WRITE_SYSREG32(0, ICC_BPR1_EL1);
> +    WRITE_SYSREG(0, ICC_BPR1_EL1);
>   
>       /* Set priority mask register */
> -    WRITE_SYSREG32(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
> +    WRITE_SYSREG(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
>   
>       /* EOI drops priority, DIR deactivates the interrupt (mode 1) */
> -    WRITE_SYSREG32(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
> +    WRITE_SYSREG(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
>   
>       /* Enable Group1 interrupts */
> -    WRITE_SYSREG32(1, ICC_IGRPEN1_EL1);
> +    WRITE_SYSREG(1, ICC_IGRPEN1_EL1);
>   
>       /* Sync at once at the end of cpu interface configuration */
>       isb();
> @@ -876,15 +877,15 @@ static int gicv3_cpu_init(void)
>   
>   static void gicv3_cpu_disable(void)
>   {
> -    WRITE_SYSREG32(0, ICC_CTLR_EL1);
> +    WRITE_SYSREG(0, ICC_CTLR_EL1);
>       isb();
>   }
>   
>   static void gicv3_hyp_init(void)
>   {
> -    uint32_t vtr;
> +    register_t vtr;
>   
> -    vtr = READ_SYSREG32(ICH_VTR_EL2);
> +    vtr = READ_SYSREG(ICH_VTR_EL2);
>       gicv3_info.nr_lrs  = (vtr & ICH_VTR_NRLRGS) + 1;
>       gicv3.nr_priorities = ((vtr >> ICH_VTR_PRIBITS_SHIFT) &
>                             ICH_VTR_PRIBITS_MASK) + 1;
> @@ -892,8 +893,8 @@ static void gicv3_hyp_init(void)
>       if ( !((gicv3.nr_priorities > 4) && (gicv3.nr_priorities < 8)) )
>           panic("GICv3: Invalid number of priority bits\n");
>   
> -    WRITE_SYSREG32(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
> -    WRITE_SYSREG32(GICH_HCR_EN, ICH_HCR_EL2);
> +    WRITE_SYSREG(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
> +    WRITE_SYSREG(GICH_HCR_EN, ICH_HCR_EL2);
>   }
>   
>   /* Set up the per-CPU parts of the GIC for a secondary CPU */
> @@ -917,11 +918,11 @@ out:
>   
>   static void gicv3_hyp_disable(void)
>   {
> -    uint32_t hcr;
> +    register_t hcr;
>   
> -    hcr = READ_SYSREG32(ICH_HCR_EL2);
> +    hcr = READ_SYSREG(ICH_HCR_EL2);
>       hcr &= ~GICH_HCR_EN;
> -    WRITE_SYSREG32(hcr, ICH_HCR_EL2);
> +    WRITE_SYSREG(hcr, ICH_HCR_EL2);
>       isb();
>   }
>   
> @@ -1140,39 +1141,42 @@ static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
>   
>   static void gicv3_hcr_status(uint32_t flag, bool status)
>   {
> -    uint32_t hcr;
> +    register_t hcr;
>   
> -    hcr = READ_SYSREG32(ICH_HCR_EL2);
> +    hcr = READ_SYSREG(ICH_HCR_EL2);
>       if ( status )
> -        WRITE_SYSREG32(hcr | flag, ICH_HCR_EL2);
> +        WRITE_SYSREG(hcr | flag, ICH_HCR_EL2);
>       else
> -        WRITE_SYSREG32(hcr & (~flag), ICH_HCR_EL2);
> +        WRITE_SYSREG(hcr & (~flag), ICH_HCR_EL2);
>       isb();
>   }
>   
>   static unsigned int gicv3_read_vmcr_priority(void)
>   {
> -   return ((READ_SYSREG32(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
> +   return ((READ_SYSREG(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
>               ICH_VMCR_PRIORITY_MASK);
>   }
>   
>   /* Only support reading GRP1 APRn registers */
>   static unsigned int gicv3_read_apr(int apr_reg)
>   {
> +    register_t apr;

NIT: Please add a newline after the declaration. This will be easier to 
read.

>       switch ( apr_reg )
>       {
>       case 0:
>           ASSERT(gicv3.nr_priorities > 4 && gicv3.nr_priorities < 8);
> -        return READ_SYSREG32(ICH_AP1R0_EL2);
> +        apr = READ_SYSREG(ICH_AP1R0_EL2);
>       case 1:
>           ASSERT(gicv3.nr_priorities > 5 && gicv3.nr_priorities < 8);
> -        return READ_SYSREG32(ICH_AP1R1_EL2);
> +        apr = READ_SYSREG(ICH_AP1R1_EL2);
>       case 2:
>           ASSERT(gicv3.nr_priorities > 6 && gicv3.nr_priorities < 8);
> -        return READ_SYSREG32(ICH_AP1R2_EL2);
> +        apr = READ_SYSREG(ICH_AP1R2_EL2);
>       default:
>           BUG();
>       }

NIT: Please add a newline here. This will be easier to read.

> +    /* Number of priority levels do not exceed 32bit */
> +    return (unsigned int)apr;

NIT: Same remark as before for the cast.

>   }
>   
>   static bool gicv3_read_pending_state(struct irq_desc *irqd)
> diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
> index ad0f7452d0..d750d070b4 100644
> --- a/xen/include/asm-arm/gic.h
> +++ b/xen/include/asm-arm/gic.h
> @@ -171,9 +171,9 @@
>    * GICv3 registers that needs to be saved/restored
>    */
>   struct gic_v3 {
> -    uint32_t hcr, vmcr, sre_el1;
> -    uint32_t apr0[4];
> -    uint32_t apr1[4];
> +    register_t hcr, vmcr, sre_el1;
> +    register_t apr0[4];
> +    register_t apr1[4];
>       uint64_t lr[16];
>   };
>   #endif
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:31:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:31:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113683.216640 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqTm-0005MC-Eh; Tue, 20 Apr 2021 13:31:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113683.216640; Tue, 20 Apr 2021 13: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 1lYqTm-0005M5-BQ; Tue, 20 Apr 2021 13:31:50 +0000
Received: by outflank-mailman (input) for mailman id 113683;
 Tue, 20 Apr 2021 13:31: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 1lYqTl-0005LF-5a
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:31: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 1lYqTj-0001hH-Rh; Tue, 20 Apr 2021 13:31:47 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYqTj-0002V4-Lp; Tue, 20 Apr 2021 13:31: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=O7swo6ITZ33PESrnNYHsMmslNpznlv824z8qzRZ4MUE=; b=I4PwSi1/70ZwQX5ALwlsE60hkx
	4hLh9He3a9jwAgQqBQCSEG8TPLCaaQbdqp174rR2WssMtiTfDDyp5GedcPMb254UY9Ki4cg7xpm3M
	u8obifXBxPYKp9wBaI8QtV1QI+72E05lzjO+xW+YEs3wsFv2pF4o1BJyvw7ssCWwAm7w=;
Subject: Re: [PATCH 4/9] arm/p2m: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-5-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <c025070f-1322-10e0-f497-b33a756b80f6@xen.org>
Date: Tue, 20 Apr 2021 14:31:45 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-5-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify type of vtcr to register_t.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>

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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:38:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:38:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113690.216655 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqZo-0005c8-1Q; Tue, 20 Apr 2021 13:38:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113690.216655; Tue, 20 Apr 2021 13:38: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 1lYqZn-0005c1-UZ; Tue, 20 Apr 2021 13:38:03 +0000
Received: by outflank-mailman (input) for mailman id 113690;
 Tue, 20 Apr 2021 13:38: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 1lYqZm-0005bw-A8
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:38: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 1lYqZl-0001nK-18; Tue, 20 Apr 2021 13:38:01 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYqZk-00036D-N0; Tue, 20 Apr 2021 13:38: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=aDF2ZM7ZhQmHgmMCzkRssTmsv1yK+Pq+O91N7Z6Wek8=; b=6Pps4ucd11Y38g9ZrtXznEHGLI
	yuMZqIZ7FTOFisdCEIYMr6u6XeYwPpldY0Y4n+uQveBlISAzxwo2GxbF/OSiHwR/2fhaLfiRgWWT4
	IRcuaKG65YKYrDqEewvwpniS8RxEU7HVUDgiz7V5z5vkNIAjAVIgiI9YYPviM3nEZnFQ=;
Subject: Re: [PATCH 5/9] arm/mm: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-6-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <32bfa7d7-33cb-0deb-32bb-fa7d2052e0d9@xen.org>
Date: Tue, 20 Apr 2021 14:37:58 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-6-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify SCTLR_EL2 accesses to use READ/WRITE_SYSREG.

SCTLR_EL2 already has bits defined in the range [32:63]. So this change 
is going to have a side effect as AFAICT head.S will not touch those 
bits. So they are now going to be preserved.

The Arm Arm defines them as unknown if implemented. Therefore shouldn't 
we zero them somewhere else?

In any case, I think the commit message ought to contain an analysis for 
system registers that happened to have bits defined in the range [32:63].

> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
>   xen/arch/arm/mm.c    | 2 +-
>   xen/arch/arm/traps.c | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index 59f8a3f15f..0e07335291 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -613,7 +613,7 @@ void __init remove_early_mappings(void)
>    */
>   static void xen_pt_enforce_wnx(void)
>   {
> -    WRITE_SYSREG32(READ_SYSREG32(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2);
> +    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.
> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
> index c7acdb2087..e7384381cc 100644
> --- a/xen/arch/arm/traps.c
> +++ b/xen/arch/arm/traps.c
> @@ -915,7 +915,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
>       printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
>       printk("\n");
>   
> -    printk(" SCTLR_EL2: %08"PRIx32"\n", READ_SYSREG32(SCTLR_EL2));
> +    printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));
>       printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
>       printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
>       printk("\n");
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:45:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:45:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113698.216670 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqhK-0006Yq-T8; Tue, 20 Apr 2021 13:45:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113698.216670; Tue, 20 Apr 2021 13:45:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqhK-0006Yj-Ph; Tue, 20 Apr 2021 13:45:50 +0000
Received: by outflank-mailman (input) for mailman id 113698;
 Tue, 20 Apr 2021 13:45:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iarR=JR=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lYqhJ-0006Ye-3A
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:45:49 +0000
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.1.88]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 17923fc9-30ae-4106-8347-0cef39f58d05;
 Tue, 20 Apr 2021 13:45:46 +0000 (UTC)
Received: from AM3PR05CA0110.eurprd05.prod.outlook.com (2603:10a6:207:2::12)
 by DBBPR08MB4742.eurprd08.prod.outlook.com (2603:10a6:10:f5::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Tue, 20 Apr
 2021 13:45:43 +0000
Received: from AM5EUR03FT022.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:207:2:cafe::95) by AM3PR05CA0110.outlook.office365.com
 (2603:10a6:207:2::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19 via Frontend
 Transport; Tue, 20 Apr 2021 13:45:43 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT022.mail.protection.outlook.com (10.152.16.79) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Tue, 20 Apr 2021 13:45:42 +0000
Received: ("Tessian outbound 9bcb3c8d6cb1:v90");
 Tue, 20 Apr 2021 13:45:42 +0000
Received: from c0a22813eafb.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8B033A85-174F-4776-88CA-7ABEF1248D98.1; 
 Tue, 20 Apr 2021 13:45:35 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c0a22813eafb.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 20 Apr 2021 13:45:35 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AM5PR0801MB1812.eurprd08.prod.outlook.com (2603:10a6:203:3c::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Tue, 20 Apr
 2021 13:45:34 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4042.024; Tue, 20 Apr 2021
 13:45:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 17923fc9-30ae-4106-8347-0cef39f58d05
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=k4gkbQyUEzbcZmHe+RLjkljIj++4qE78MdNjIBqI2Ac=;
 b=MpvphQOMXdT1Z7jQPq+Ua1RIMXqzWTUkEb67m4I0eR59BFrH91OVhnm7vA7s1JCWTivk8MTTrzvIbT3t2hN70tG82O0KPJl0fLfrW7pP5VFkWRZGTEuObZv5LpdpnPgPnQEIUOZeqQYM/jMp7C6Eicb+zbtDCQRv9vExwZpW8v8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: dc5a91043a9826e3
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dlR0kPeZvXQdU+0mr4ZeJVmlp3rUy2Sqtta6dEUzx6lMzonJl0PkcJxruwibCyxWC98TfrSlqqvYP3dwFT/g+oYnVhHNB/FO6Qu6vQ+Wuwpo5gnJc8n9ujo686RZph7VFmPmDNjU1Z1sNZ3s6igp8+kHrdzjQ6TohBQ3XgLbRu2fjbCuIs/1NAywyGBdUH0roHQNLRoRG4FjGPSTLnQvMGEKhM3FZUU/hkPHx7IlHXrqFUCe6ekWsT12eyiZf0RYB562vWj1nUhNYsjTTv5FMbVERl5C9XTO/Gi8DfIFajUE09a2ZHi5XSDE7kq2jZwP5C5OB/0Iv9yDgMyMFUMrPw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=k4gkbQyUEzbcZmHe+RLjkljIj++4qE78MdNjIBqI2Ac=;
 b=C/XxCXFizDG80Std9J7yBsacmjRg4V7Bnf3+l5SYwIZK+2eANXev+MYgmAJ8W3OwDU6oAa3WIQtYphTC1Yxu1lZoAyRdQ81H8fIpXoGZL+HsNZjDfyFnp32cN66atqQMmnWgGdKEC/Dt0+ui48qPjDHtg1jnOW9yvxq9tBFYm3UQv3wVK5Nh72M8RIHt4q2F8/bCycsPbraFZd1L0XLlLZPEftO8mdD2fMJWpSEpvoe7J9zvggKrZo3LmOblzeyLhE184Cn3pzrh4cFQpEWe7CNWpbHW6g3qWh0Rlx3zfevhYYB6fDJgs7/Dw+7ouVb50xrbtb7USHMo+m5VYDWEhA==
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=k4gkbQyUEzbcZmHe+RLjkljIj++4qE78MdNjIBqI2Ac=;
 b=MpvphQOMXdT1Z7jQPq+Ua1RIMXqzWTUkEb67m4I0eR59BFrH91OVhnm7vA7s1JCWTivk8MTTrzvIbT3t2hN70tG82O0KPJl0fLfrW7pP5VFkWRZGTEuObZv5LpdpnPgPnQEIUOZeqQYM/jMp7C6Eicb+zbtDCQRv9vExwZpW8v8=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Topic: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Index:
 AQHXLVmJnBz/2T+xZEqfD4R39q2wV6qwuDwAgAH9VwCAAPmtgIAADD+AgAHfkACAAAF1gIAF4LkAgAAXZQCAACuvgIAACpEAgAAKwACAAaaJgA==
Date: Tue, 20 Apr 2021 13:45:34 +0000
Message-ID: <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
References:
 <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
In-Reply-To: <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 1e75a4b7-b8f3-45df-d58e-08d904029771
x-ms-traffictypediagnostic: AM5PR0801MB1812:|DBBPR08MB4742:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<DBBPR08MB474263BB43A0E2D7453AB55EFC489@DBBPR08MB4742.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 HA6x6Za7242lewPOSWnDw2SNoRPS++8wbFLmKd6ikIs8sFx3b6XlTGphOCfOb+wYMcsre09SIU86u9exUfkiF/Jz2eQExTrvpFmWuyWYmmAe3aduoA+zQBgj9bfHZwat3GEpdG8jojXZoZRvHhSKETR/coHjuYCv7S89QK/SAX/RfOG4bO8GfY+gSN/F7cDRsooghNzxvLvw0/ZjjxPfW03jqV7tR3PnPB5z9PhHwk7on1W0wfJQt6qUrNsECxGbmp2Kgagy76wO1B5ZT6MwnR/1Hqgih6fV2/IMuwkR0anTOxP6FDrvUcQNbcfXkt+PvFEuqy9oXWUITu894r55qBtGkT+4osfK9YfyqGG0/3EgwNm/s6Xg4sHk/odwOa+D0TMyaktHE6zNyKGo5M8ZDKiL3Mz237av5tXwS5WXqO7wnROhdf/BHWZuwK6xyH83frkd1iMFXlZzauN2itUehdvolfFnOn+DZNGx4lGZihYjVkq4OHP1p3j+PMpDRzBjIU88i8i1PJb5qVDsA0WBjKAXWkUxB3zeQ1XcLdBylkc9Ffv4AUDQC+1cfq0qAhzruMWkcHB9VbuuxS9reh3xN6kTdLStqohdDneloTzScWBjGsOSSQkAqualydNMDwPi8OXXq03g5ELUrLzfDJRq1c8bjuZbaEGau5JdZIqtYLU=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(366004)(376002)(39850400004)(396003)(38100700002)(122000001)(2616005)(36756003)(7416002)(54906003)(316002)(8936002)(8676002)(5660300002)(6916009)(478600001)(6486002)(86362001)(2906002)(4326008)(186003)(64756008)(71200400001)(66446008)(91956017)(53546011)(6506007)(33656002)(66476007)(76116006)(26005)(66946007)(66556008)(4744005)(6512007)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?iso-8859-1?Q?7OrX7H14LAE0ZxIPY6+7k6IZVYknu7lUDGfmWIMxPgsPtAQgJDi3LArk6W?=
 =?iso-8859-1?Q?8tbmDAaJQ2BG47OmIdTwzu52DlJEUc3LoeHQOm89BQmAqtsHCdsUPG8CPD?=
 =?iso-8859-1?Q?8VZmY4t4/sSix/uUEH6o7W/soMKxD/NmTUQ/2ZKbeMjN/jaQSIK5pr7FVA?=
 =?iso-8859-1?Q?XIscLeSfaizwkX81pP5Yu1wWTOIRixZBazF+5Dak8M3PXqIYvYgKzomCnd?=
 =?iso-8859-1?Q?/Cr2sV9s4YjUd0Wrh3KMUdoVBGGR1M1Sgp6WRYxhS8iQwoTLinmy2NsPpc?=
 =?iso-8859-1?Q?NLwYibX1BSvxXBV+4WFMEY1dN4S4fdw3WeYyQMnhWjpKqX1o0n8oAbcfBc?=
 =?iso-8859-1?Q?eMKSB2NFKeAxi5sXeL8ikfL9QF+oEdHRQ2k6lXZ/MkRpKsw/oMcL0/Ip1n?=
 =?iso-8859-1?Q?DYaD+UX5i+QlZds2234OQd0vGTEn/Sz+qH7hjUMfN23I0MpaXNW+bQRDsI?=
 =?iso-8859-1?Q?K2EbJh7P40ySNGiQ2aZ37FsLhkYdAvl71zIWUZ4qOVPmO6ctf6O1xN39gN?=
 =?iso-8859-1?Q?LBJcBPIjWQc1RJ78W/6UMi958if1BibLQxYRkZGjklDD4Me+F+TkWIYnQ5?=
 =?iso-8859-1?Q?srhyp0WOHfwLihe5x3FzFJ4g2H2QNhS8Y/kRTzGZBQRDOmWKDDNG62RImm?=
 =?iso-8859-1?Q?fPMZuEdJw21eGDGDH+2ab9YOp4hRBpHQ66pNiYF2aR1cf3XUjdV+koWfb1?=
 =?iso-8859-1?Q?S5WDWxPYiafVFpav/wvRrYsYFOK4JZxfeK951PYVyZDhXyyLiFeYcErXFS?=
 =?iso-8859-1?Q?NaKZRJOYEa2r2ASu3sQA/eWozrwN7r3IgDBaD0sCGkpdArNwIJaxQaQWGG?=
 =?iso-8859-1?Q?hPcxNDxX2An9U0QoBqrX3TY42YMjo9pg2mY9syKWZxwtpqJa+GehezjUCz?=
 =?iso-8859-1?Q?B9OSOe3sG82MZ3FLd8zSJEMiC2isCEsznt50LMQ99wLW/XwgmxOZ9hOEi2?=
 =?iso-8859-1?Q?cPMK+OdrSL9ybRIGMTbfHHySxLC1cZWW5iSdarbzg464yT/y09FLHUVLMG?=
 =?iso-8859-1?Q?AyISkgJYIXLuXP7Wj20RSh14KTDx1ZSTzRfBGWnv9cCYdqK+A2Cg1VmMKL?=
 =?iso-8859-1?Q?FrupSPBIZBtB+v5FkLWlWBhJ/kYmSGEbmxOi5VdYfXTBKHePd8CddAvGS6?=
 =?iso-8859-1?Q?IU5CngNhJ2hRCCTbbuUPPiwtFDYaEBlMOWs2KDQTTcvYIIHvN+/PvgAvlQ?=
 =?iso-8859-1?Q?eomrN6RXqaZWZJ6scXiYAYMX7OfUxBmHV0PbZzONxuonO/bSk3tiAhr8Ds?=
 =?iso-8859-1?Q?VpiTPk5Kgt2ZiAeJqKwyW7liE+xB7Lx5k7AcEr44JJoyAwdtqFzeBls5JJ?=
 =?iso-8859-1?Q?INnhSGpufiGNpxiga+qXI6ITqb67ydcf2Dnn1VgkJdaW/7/buEwr/UQMBq?=
 =?iso-8859-1?Q?llJgudss4C?=
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <24F60E665FBF8845A5067072A17357C2@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0801MB1812
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	8f1069b4-1a91-477e-1e5d-08d90402927d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uD2sxqWgWysvkJAdEVumKt06q9VPKCqC46Srp8ry4PuwMIlToWCDLiSJUGyjk6eZrQ2+pJSr/Ldq7MrmmY5TvSXNzclWGJ5G5HwP7/CX1J318CxE/hk2Vu2sOXpIet8GleyXizrdMaj0z0DCRi7CrgNg+0vuQWSw/XwDSPRwjxRi6JK0iJ5Sbb+AgbgnX6Nr7hgVveKfEflXpFBTNzx7Py9DSecBsw49lAFtHArxpTil+O/QgTmspOHV4mZefKnzGtjC2UrwT4v6dE7552a/Aq9qoxp525vCD1U8VPNPOu/JECsh+71OA8+lwCbQnfwXFCBoYvKQeDG6gJH4NY0UuROYPDvxTGxzwdduAkwUvTQ4iMIzwITGC0Ior9LUbyVTSKdb97dUloc4605F4tDDbjFUSkTpTkfOp3uDPNzX1BCrfpdYMbTgEi8LPO1iEuxxA6m2IKwsepi2hBBgRUNjHDgm8Qc+6p6t/oTNDSwv3pEXuOW6O3squB1Az4f6FJFO3chjtyFe2FYEhOs+m5AkSEeR82LgQr3c+xPYEFBorfRUBGCkvSO1ZttHaJhvqnm72F+/GkMnJ6j4A0hGMYRRKuEri9V0VfV8kmJ9xJLIE4P4WU0iw9nBh4EqDrUq0GyXHlm11I909jXlrj+uM/7mpg3JOdNtWPtoQvQS8s933WQ=
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:(4636009)(46966006)(36840700001)(53546011)(70586007)(6506007)(4326008)(107886003)(81166007)(6862004)(186003)(498600001)(5660300002)(36860700001)(70206006)(8676002)(4744005)(2616005)(26005)(6512007)(33656002)(336012)(86362001)(54906003)(356005)(47076005)(8936002)(36756003)(2906002)(6486002)(82310400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 13:45:42.6311
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1e75a4b7-b8f3-45df-d58e-08d904029771
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:
	AM5EUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4742

Hi Jan

> On 19 Apr 2021, at 1:33 pm, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 19.04.2021 13:54, Julien Grall wrote:
>> For the time being, I think move this code in x86 is a lot better than=20
>> #ifdef or keep the code in common code.
>=20
> Well, I would perhaps agree if it ended up being #ifdef CONFIG_X86.
> I would perhaps not agree if there was a new CONFIG_* which other
> (future) arch-es could select if desired.

I agree with Julien moving the code to x86 file as currently it is referenc=
ed only in x86 code
and as of now we are not sure how other architecture will implement the Int=
errupt remapping
(via IOMMU or any other means). =20

Let me know if you are ok with moving the code to x86.

Regards,
Rahul
>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:48:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:48:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113706.216682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqjp-0006iN-CB; Tue, 20 Apr 2021 13:48:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113706.216682; Tue, 20 Apr 2021 13:48: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 1lYqjp-0006iG-7Y; Tue, 20 Apr 2021 13:48:25 +0000
Received: by outflank-mailman (input) for mailman id 113706;
 Tue, 20 Apr 2021 13:48:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Rs9b=JR=amd.com=thomas.lendacky@srs-us1.protection.inumbo.net>)
 id 1lYqjo-0006iB-34
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:48:24 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com (unknown
 [40.107.102.87]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ed9bba73-4b1e-4eea-bf84-2b8e9b8d1652;
 Tue, 20 Apr 2021 13:48:23 +0000 (UTC)
Received: from DM5PR12MB1355.namprd12.prod.outlook.com (2603:10b6:3:6e::7) by
 DM6PR12MB2827.namprd12.prod.outlook.com (2603:10b6:5:7f::24) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.24; Tue, 20 Apr 2021 13:48:18 +0000
Received: from DM5PR12MB1355.namprd12.prod.outlook.com
 ([fe80::b914:4704:ad6f:aba9]) by DM5PR12MB1355.namprd12.prod.outlook.com
 ([fe80::b914:4704:ad6f:aba9%12]) with mapi id 15.20.4042.024; Tue, 20 Apr
 2021 13:48:18 +0000
Received: from office-linux.texastahm.com (67.79.209.213) by
 SN4PR0201CA0013.namprd02.prod.outlook.com (2603:10b6:803:2b::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20 via Frontend
 Transport; Tue, 20 Apr 2021 13: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: ed9bba73-4b1e-4eea-bf84-2b8e9b8d1652
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WiU7xQ48iPH4BN/InlibcOmD6sOwP6+RORmB3SZY3qyWE+CLIS4I6fDcF1xiVKL4ZvEo3vGftRUTpzYKg4BIYMcsgOja5qbWbNH3AE4dP7+a0y5LJ0JoNPEdIAPCVYgAfMRmKeWdR9dnCwdtxSiv708DMW7Im7/zHJkd5Ia2VJHmSJsxh3LstLHt7ovh9kQweEuCcHIFyimSyCFCoQIfUUmHDI6GDMR9VBkqof7GBnlXSHOoD3N8uDkEKHX1yDXvioz+cvEGQ8OGks8bPRyHEtfV+vfRqPSkoDq/w1am4Oa0DF+yXa7Twi1s/iLDp30Wh7KEjy4isuj6GuswDgiEmg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D/ityehZ+qPGvFhfr2biLxqkIblL00wBmVeuWa6dcg0=;
 b=Mh62sOYnnG2Yed08Du+QpGEO/mFFuYmUBVaY0IzUCQNxaSoy4ZwijIqlYnVALl4WqZERH3XN9RKL8Gwfbl2gL2smycsDvPwzAliJMUBxuwiIW3k22+WzHVbudfVD6IwR3EwBivARmasYrzyhZG12of0nPGoQV8deKwZbkgDr4V72eop/KUIJX6DwJKGQY8PoghDoxeJXddaPdMrwCKE0Ku/ofmmlTelwQZPtjSjDKL7unsULe2mfEvMbice+Dmsxk9GH5OSVHSBti0MBSxp5nEpekAeAGIolG6ZqMq6oYd3SF86HinsxdPMzNHaqvM/2cjWESdNiLzrh/6bobPJgSw==
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=D/ityehZ+qPGvFhfr2biLxqkIblL00wBmVeuWa6dcg0=;
 b=cktiRPAQLbs6TBMNzr7h1wWbcvLkRVSVMwzPtWBq/2ueM0oCt38YiPkPJEAk3jr0PP+T7IcG1DCGwi1yv+Osv/IkwuCPqF2qyINYtsf6+LJUquqE88xhD1KWUbig4rHXrjcctESZsSk/oZzB5qk8eXLaS/NZ6HMNm1gQ5RLSwZg=
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=amd.com;
Subject: Re: swiotlb cleanups v3
To: Christoph Hellwig <hch@lst.de>
Cc: dongli.zhang@oracle.com, iommu@lists.linux-foundation.org,
 konrad.wilk@oracle.com, linuxppc-dev@lists.ozlabs.org, mpe@ellerman.id.au,
 tientzu@chromium.org, xen-devel@lists.xenproject.org
References: <20210318161424.489045-1-hch@lst.de>
 <0349082c-59c5-20d7-f324-279981c3f6ea@amd.com>
 <20210420092312.GB26092@lst.de>
From: Tom Lendacky <thomas.lendacky@amd.com>
Message-ID: <f46d6f1a-03e1-7aad-e70d-882841661a99@amd.com>
Date: Tue, 20 Apr 2021 08:48:16 -0500
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.1
In-Reply-To: <20210420092312.GB26092@lst.de>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [67.79.209.213]
X-ClientProxiedBy: SN4PR0201CA0013.namprd02.prod.outlook.com
 (2603:10b6:803:2b::23) To DM5PR12MB1355.namprd12.prod.outlook.com
 (2603:10b6:3:6e::7)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7314af2b-b171-43ae-56ea-08d90402f456
X-MS-TrafficTypeDiagnostic: DM6PR12MB2827:
X-Microsoft-Antispam-PRVS:
	<DM6PR12MB282721A785E3B4DF9B890662EC489@DM6PR12MB2827.namprd12.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MNGn7ZrrnylKJcaUIJhJVobYA3Acwd90JBB/dEe2xn2KWmFonYXBXCZBZRcfvDTjAE+kLhioAdMe7uN6QdKC8Fxheb+8VXyb+/keHjWDH802kAwZElO5IyqQDW+dDNpmLTh0yWEk8otmq0gb79x49AxUvSqj1mg7lj4AB6yW3P/854r7iDYLYY71Tlf7bLYNJbJ2zYJ2Tw+ewCciCaLUhBxSJL65Wp9jAn0LAK7W7N4PLZngFfqGA7kNXJG5jG83NewOT0JvcpOnTCVrHZSRLF7KnRFY1BcGrVRI1VKbfwb/B2x17e3h6ag2N4R8bh4aSSdUXZcfNjDBpGCNVwV7CR4zPslQCQdwFlioz31kPKBvNlpx8ABx3WKUPp5pLjXgK0thNyyfj+cLNshNCe31JPpWSCpvBEcLiAbV04UUxOur2f+Rd6Ea8jWe+OzXiRhqvOaXEbRCvUZrVQdabzyiNuIhiAKz2zg/ikmt0oA0kCWCzv7totM80VQzLrNbdIa0aA31m15nIgwjwnv8IqIJR3GsAtBA1DkXVSDoBHjWgTgpjqH7Kg+UABg1WsLj487XNVusun/WqefNY7ZhJ4uWkG2uSGCDcXbDuuRu70dtXVqPeOOmPpA55oEhO5YjpcZ6CJ9Dnfdl6IMZxxyKOthwkRAwFMBkG4NSNiA7nsb+GcR+cvfB3y4w4HIzw0a5lcht
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR12MB1355.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(39860400002)(376002)(136003)(366004)(186003)(31696002)(16526019)(8936002)(26005)(6512007)(38100700002)(6916009)(5660300002)(7116003)(36756003)(478600001)(8676002)(86362001)(6486002)(66556008)(66476007)(4326008)(2616005)(316002)(2906002)(956004)(83380400001)(53546011)(31686004)(66946007)(6506007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
	=?utf-8?B?aGQ5SzBoUVBxVmp4Wlh4bXlldWZtcWxKZnRkYlN2aTFBMTI0VjZLdUo1ZHhS?=
 =?utf-8?B?L2RyUzJMZHcweldkZDVya1JDcGY5TjU3QVBnclZtazRYS0lGWEM5TzkzakRY?=
 =?utf-8?B?K1hteWhkS01Mc1g5NCtZTjhKdVZ0clFLRUZ0QnNJNng3QmVyUGRlWlFtYlFv?=
 =?utf-8?B?TitBYzhMUU9yeHZscEdMeUJaV1VUSlZPY1Fta2NPUERJdkR4eWZIaE1oczFK?=
 =?utf-8?B?QytMOXZzejNFTHBkOUxDVkw3VjlIbHVGTE1tYXIzZkhocEZOOWxCR0RULyt0?=
 =?utf-8?B?Rk5yM1IrbW5JWDVSS0tRYmV5MDZnVUROWFVkbnBXOEZCMzFoczU3bjg3SVFN?=
 =?utf-8?B?d2p5U2hINnl0cndYd1NRVURwUGNacWlGbW8zeTc1OEgzTDUzNGV0YXZybjhw?=
 =?utf-8?B?RE9DWGErVmhTUUZBYlA2aDgzQm1kclZyR3ExczQ1ZmI2cDMxc3cwWkJQLzNQ?=
 =?utf-8?B?WDhuK3FSMXpIZzZpY28zZHFiTTBHWFNCM0Evc0tYYXVWWktycVphSWhGeWFu?=
 =?utf-8?B?SEhKSjNCQ0Q4MS82Q28yOHFlaVJwUi95bnFNYi82a2ZsbnYvNmg5eGQxdU15?=
 =?utf-8?B?QmFkZFgrUUNlek9tbkJUaG4rZUpqZlp2cE1KeDUyYXZiRjN0NXI5ODN0YzAy?=
 =?utf-8?B?ZXc2UVI3MkU1ZS9Kc2IrVkRaMXJjUUR5YnJwRnhVcVlJQjRJbWhFMUNXZlcr?=
 =?utf-8?B?L0c3d25kbXcwNTBGbzliWld2T2JDVERFKzU5SzFEb1IxbnQ1Z2ZiVms5KzRP?=
 =?utf-8?B?d1lITHM3djd1dElSNWVWYzhCK1c3aTgwSEsyVFYwMndwRTBEcVNGZFBTSjdj?=
 =?utf-8?B?Mm5uM25kQnFJeUFiN0VRQlYyQXZQL25xRFdJU2lJSGhYVDZtT1A3ZUhCSVZK?=
 =?utf-8?B?QWxENW1rSEVBL1J1aTJpRjVHNVpSS2pwdis3L2FhS3BrVmI2cEtxYnlqUHo0?=
 =?utf-8?B?Y2lUc3VWcnBUM1lRclJnL2ttajJ1S0hXTmVidUZNN3dkVHF3YmhSbk9mdjdN?=
 =?utf-8?B?emorSUJ0cFdoRFJqSnlKSnhkVVBxTjk1Uzl1WHUvbFlENm91QVo5b01SQnIw?=
 =?utf-8?B?WmMzRUN5RksyazZybFZjdVJBRE5jelUxWEozekIyWmYzS1c1VmpwR2RPQVZF?=
 =?utf-8?B?OXdOQ0kvU2lYVmY3ZzNoOGFUZUM5NVlLYmZDYXlPeFA2SVVoYjh4YlpXeU81?=
 =?utf-8?B?QjM2cXcxY0ZZN1htcEFYblhhWTN4OGk5UXlHU2JwcDIxTmdaZWNuTkg2ZG1U?=
 =?utf-8?B?cTRVRUNhZk94Lys2YnNmQTdsRzhqczJJTTgwSlY2ZGZuMDRtaTN0VC9ndHlx?=
 =?utf-8?B?YmdEczQvZUJoS1lwVmxDckh4NVVXbWtNcERYMVJabU5GaXVhTmtrOVpoZ1JO?=
 =?utf-8?B?ZXdqRzd2U2JoY0ljcm5YL1Z1WnZsQjNSOXV3OWZDT1hwU2hsZldqdEN1T0No?=
 =?utf-8?B?bTZTSjJyd3Z1elVSejdiN3Nja29qVHdIQWp2OGlsUVhPdVZaOFVYTmk4aTd3?=
 =?utf-8?B?MlVSZ1lZRGtDZ2FYSEduTW1taXllbktna3VVTTFHRDh4QzdKN1R3UTgrQ2NG?=
 =?utf-8?B?LzhDM25vU0ZZK213RGw0bjYxNjc2V3VHdW1jSC9sTzNWbXhpaTR3aDJGOFZO?=
 =?utf-8?B?cHpZM3MrdWluRWM4aXh2dlRINUcyNWlHeldzNUVkQkdpOWtQdG5PS3FhcGsr?=
 =?utf-8?B?U0xobW84T0FPSDVIVU0rT3hZY1lsR3RlS3pmbHpKU2JSNWZ4SytDSUI1eEJP?=
 =?utf-8?Q?y+AR+IuGbUym46Lno7wjZiayRvgXR3MfJSqX6qr?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7314af2b-b171-43ae-56ea-08d90402f456
X-MS-Exchange-CrossTenant-AuthSource: DM5PR12MB1355.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 13:48:18.6490
 (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: PQzg7wH4y+ILSh9XGHB5o9rxwO496bZ64WUcmCp5K2OnUkVb7tuIiX/oirbyJz254WNDaDGNVVRxKadAN2ogxA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB2827

On 4/20/21 4:23 AM, Christoph Hellwig wrote:
> On Sat, Apr 17, 2021 at 11:39:22AM -0500, Tom Lendacky wrote:
>> Somewhere between the 1st and 2nd patch, specifying a specific swiotlb
>> for an SEV guest is no longer honored. For example, if I start an SEV
>> guest with 16GB of memory and specify swiotlb=131072 I used to get a
>> 256MB SWIOTLB. However, after the 2nd patch, the swiotlb=131072 is no
>> longer honored and I get a 982MB SWIOTLB (as set via sev_setup_arch() in
>> arch/x86/mm/mem_encrypt.c).
>>
>> I can't be sure which patch caused the issue since an SEV guest fails to
>> boot with the 1st patch but can boot with the 2nd patch, at which point
>> the SWIOTLB comes in at 982MB (I haven't had a chance to debug it and so
>> I'm hoping you might be able to quickly spot what's going on).
> 
> Can you try this patch?

Thanks, Christoph. This works for honoring the command line value with SEV
guests.

There was still a reference to default_nslabs in setup_io_tlb_npages()
that I'm not sure how you want to handle. I just commented it out for now
to let the code compile to test the intent of the patch.

Thanks,
Tom

> 
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index 0a5b6f7e75bce6..ac81ef97df32f5 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -71,15 +71,17 @@ struct io_tlb_mem *io_tlb_default_mem;
>   */
>  static unsigned int max_segment;
>  
> -static unsigned long default_nslabs = IO_TLB_DEFAULT_SIZE >> IO_TLB_SHIFT;
> +static unsigned long swiotlb_cmdline_size;
>  
>  static int __init
>  setup_io_tlb_npages(char *str)
>  {
>  	if (isdigit(*str)) {
>  		/* avoid tail segment of size < IO_TLB_SEGSIZE */
> -		default_nslabs =
> -			ALIGN(simple_strtoul(str, &str, 0), IO_TLB_SEGSIZE);
> +		unsigned long nslabs = simple_strtoul(str, &str, 0);
> +
> +		swiotlb_cmdline_size =
> +			ALIGN(nslabs, IO_TLB_SEGSIZE) << IO_TLB_SHIFT;
>  	}
>  	if (*str == ',')
>  		++str;
> @@ -108,7 +110,9 @@ void swiotlb_set_max_segment(unsigned int val)
>  
>  unsigned long swiotlb_size_or_default(void)
>  {
> -	return default_nslabs << IO_TLB_SHIFT;
> +	if (swiotlb_cmdline_size)
> +		return swiotlb_cmdline_size;
> +	return IO_TLB_DEFAULT_SIZE;
>  }
>  
>  void __init swiotlb_adjust_size(unsigned long size)
> @@ -118,9 +122,10 @@ void __init swiotlb_adjust_size(unsigned long size)
>  	 * architectures such as those supporting memory encryption to
>  	 * adjust/expand SWIOTLB size for their use.
>  	 */
> -	size = ALIGN(size, IO_TLB_SIZE);
> -	default_nslabs = ALIGN(size >> IO_TLB_SHIFT, IO_TLB_SEGSIZE);
> -	pr_info("SWIOTLB bounce buffer size adjusted to %luMB", size >> 20);
> +	if (!swiotlb_cmdline_size)
> +		swiotlb_cmdline_size = ALIGN(size, IO_TLB_SIZE);
> +	pr_info("SWIOTLB bounce buffer size adjusted to %luMB",
> +		swiotlb_cmdline_size >> 20);
>  }
>  
>  void swiotlb_print_info(void)
> @@ -209,7 +214,7 @@ int __init swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose)
>  void  __init
>  swiotlb_init(int verbose)
>  {
> -	size_t bytes = PAGE_ALIGN(default_nslabs << IO_TLB_SHIFT);
> +	size_t bytes = PAGE_ALIGN(swiotlb_size_or_default());
>  	void *tlb;
>  
>  	if (swiotlb_force == SWIOTLB_NO_FORCE)
> @@ -219,7 +224,7 @@ swiotlb_init(int verbose)
>  	tlb = memblock_alloc_low(bytes, PAGE_SIZE);
>  	if (!tlb)
>  		goto fail;
> -	if (swiotlb_init_with_tbl(tlb, default_nslabs, verbose))
> +	if (swiotlb_init_with_tbl(tlb, bytes >> IO_TLB_SHIFT, verbose))
>  		goto fail_free_mem;
>  	return;
>  
> 


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:49:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:49:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113713.216693 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqkZ-0006pm-P2; Tue, 20 Apr 2021 13:49:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113713.216693; Tue, 20 Apr 2021 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 1lYqkZ-0006pf-M8; Tue, 20 Apr 2021 13:49:11 +0000
Received: by outflank-mailman (input) for mailman id 113713;
 Tue, 20 Apr 2021 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 1lYqkY-0006pY-HU
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:49: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 1lYqkX-0001yX-Ea; Tue, 20 Apr 2021 13:49:09 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYqkX-0003sG-3j; Tue, 20 Apr 2021 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=Message-Id:Date:Subject:Cc:To:From;
	bh=UMfFUcXT9PoQDQURdoKJRKEJgWnC85ePJlkRv0ojMaI=; b=Kij/ZwsYxB8MdGldcHsX9ROvPr
	1fz0fCsSDO1xEy6rU/wkXwN27VzJl9OMuMViMoIBxYNQSr3himd/h5lRuNYfnb8gzMlQmSZrgR6b7
	hs3CCl1C7A7rjcYSTL0LTDEeS4kGdOXl2frvOAJ/TCn/o4+YmohXadt+HytcgAHmUmQ4=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH] tools/xenstored: Remove unused prototype
Date: Tue, 20 Apr 2021 14:49:06 +0100
Message-Id: <20210420134906.10910-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

A prototype for dump_conn() has been present for quite a long time
but there are no implementation. Even, AFAICT in the patch that
introduced it. So drop it.

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/xenstore/xenstored_core.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_core.c
index d54a6042a9f7..591b28e4552f 100644
--- a/tools/xenstore/xenstored_core.c
+++ b/tools/xenstore/xenstored_core.c
@@ -2085,7 +2085,6 @@ static struct option options[] = {
 #endif
 	{ NULL, 0, NULL, 0 } };
 
-extern void dump_conn(struct connection *conn); 
 int dom0_domid = 0;
 int dom0_event = 0;
 int priv_domid = 0;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:53:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:53:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113719.216705 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqoF-0007iT-9L; Tue, 20 Apr 2021 13:52:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113719.216705; Tue, 20 Apr 2021 13:52: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 1lYqoF-0007iM-6K; Tue, 20 Apr 2021 13:52:59 +0000
Received: by outflank-mailman (input) for mailman id 113719;
 Tue, 20 Apr 2021 13:52:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iarR=JR=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lYqoD-0007iH-F2
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 13:52:57 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe1f::624])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e361d813-44d9-4f4d-a574-d7a3798d24f5;
 Tue, 20 Apr 2021 13:52:55 +0000 (UTC)
Received: from AM7PR04CA0019.eurprd04.prod.outlook.com (2603:10a6:20b:110::29)
 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.4042.19; Tue, 20 Apr
 2021 13:52:49 +0000
Received: from AM5EUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:110:cafe::c6) by AM7PR04CA0019.outlook.office365.com
 (2603:10a6:20b:110::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20 via Frontend
 Transport; Tue, 20 Apr 2021 13:52:49 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT025.mail.protection.outlook.com (10.152.16.157) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Tue, 20 Apr 2021 13:52:49 +0000
Received: ("Tessian outbound 81a4524e9a48:v90");
 Tue, 20 Apr 2021 13:52:48 +0000
Received: from 434284249ca9.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B0D45D7B-4238-4E8C-B5AB-E6CFF11C2AA3.1; 
 Tue, 20 Apr 2021 13:52:29 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 434284249ca9.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 20 Apr 2021 13:52:29 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AS8PR08MB6342.eurprd08.prod.outlook.com (2603:10a6:20b:31a::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.23; Tue, 20 Apr
 2021 13:52:18 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4042.024; Tue, 20 Apr 2021
 13:52: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: e361d813-44d9-4f4d-a574-d7a3798d24f5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dLXnj9cphiBy7I4e7y8HWcmj0qssuZibWTsQVAQTSgg=;
 b=oJH+9HbDLdS5V5n/RIDRy0NIyVUMNhJlS2M269Z/scvHy2BkHSW5akhpcqTDZRH7RcCFFbQQYav3jqEWIp0mhr7Eh44vy+hbRGtzWyu4k/RKqqeacN/k+brBL40lhtrRR2OIuQqYOzvvJ0E2/1aVHX3ze0I9HPwkXyqQ+fYmFwI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: ba0c6cea14c1a917
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UOstzjx097fXp4LtiNE3g9lWKQBzyQi5bzAHBRi1C1xltjvxfL6VL7UWKczpP2QkEZTFbXbAMmrHz+mol4AIT/VXggCECdGkG8fu/mm4+tP+dlhlsg9bjey+4xqnoKIpCm1ukmzDxcHJmNmr3bQfRgtFogBP846z98vI2Q4voq00S0xBO9Mq3uHYEvL9FbtgnbYwMONZYPsjKXVsasoubTr9LKYMuxE5ehiFGCxulTLpKyQ1Uij1xtoOQvfJX6+NifHT5qKh7iomVrKgJQ1gC5ccDgrPtIElqIAYxl7V05sjPRlao0PBoFOtZVIIRSkUQ0HRaUBf05EGrsAk6Iqgig==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dLXnj9cphiBy7I4e7y8HWcmj0qssuZibWTsQVAQTSgg=;
 b=iMywlgZ3yxZizXgC8EmA2AUn52NJsHQm9+IrCgQ0kX4C2Zal++69sA0nycp7HcXgZJo663TYsRq+kZrv7dG3sR4axTCoeVlgIXwkwxFSaV8VDR4KmI0Q1+imBJAetzyOopWXnWDN6PCj/lioAlMwcnM+HjuYIMujchpXKMAOkLr/tn7bVIq5rZStQt08iOQnVnIH7Xx+HdxRZk5ytbF/uTAcue86c1rI4HweDr2ADD7uf6X95Q7PwE7ck06j3Q1EgwukW+g/tm2+7dOVKQlXDVtY+l+5fOgiZH3jOWD3P5Y7a3qeRe5eTR8G9H5AKH4g0Glzo/L+En2l5BHfxNJtag==
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=dLXnj9cphiBy7I4e7y8HWcmj0qssuZibWTsQVAQTSgg=;
 b=oJH+9HbDLdS5V5n/RIDRy0NIyVUMNhJlS2M269Z/scvHy2BkHSW5akhpcqTDZRH7RcCFFbQQYav3jqEWIp0mhr7Eh44vy+hbRGtzWyu4k/RKqqeacN/k+brBL40lhtrRR2OIuQqYOzvvJ0E2/1aVHX3ze0I9HPwkXyqQ+fYmFwI=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Julien Grall <julien@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, xen-devel
	<xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Topic: [PATCH] xen/arm: smmuv1: Revert associating the group pointer
 with the S2CR
Thread-Index:
 AQHXMrMxW8Hpcs9A7Ei4/6fuLjr236q3NfuAgAAHXICAAAYsgIAAC7YAgAAA/oCAAAkFAIADN4qAgAEgwACAAFkRgIABVHgAgAAUSoA=
Date: Tue, 20 Apr 2021 13:52:17 +0000
Message-ID: <798D0262-38C9-4520-94DF-1B884A2DCCD0@arm.com>
References:
 <d2e4ed0eaf25a6b581fdec63cd31a742f3182118.1618572178.git.rahul.singh@arm.com>
 <6e75d112-6cc1-4b7c-9751-4064b3250dbf@xen.org>
 <E2FE265F-B7A4-45C3-BA9C-3EF9109F8B5E@arm.com>
 <8569c856-8838-e5d1-b653-e7eb476dacdc@xen.org>
 <4C9CE5FC-551A-4F26-B975-FC7F33877FF2@arm.com>
 <78c30978-c3be-4357-fecc-5b2f24bf563f@xen.org>
 <348C921E-1150-4247-A693-1D81933FC3F7@arm.com>
 <996b5db1-da59-f03c-9e04-9ac283aa38f2@xen.org>
 <279F74CA-647D-458B-97C0-968E1795E494@arm.com>
 <alpine.DEB.2.21.2104190920160.4885@sstabellini-ThinkPad-T480s>
 <a972d85e-0791-86d0-471b-5854fc40ccd6@xen.org>
In-Reply-To: <a972d85e-0791-86d0-471b-5854fc40ccd6@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 594b38ed-2ee7-48dc-45a2-08d9040395ac
x-ms-traffictypediagnostic: AS8PR08MB6342:|DBBPR08MB6314:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<DBBPR08MB6314C81A7DD33F9CC40723F1FC489@DBBPR08MB6314.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 YYnDQnPyJ0qL6olla5WcIViuyob5ieFwswZ0y62QzxHU5RgxJevnxf4zJ+iQCcckNymVh0dlKza4ED4a8/Ip4E1PX/C0ARemP9CF1eY9VWSyiz7d8QX7P/eMvDW5w+AQn0k/SbO60gghUppUHwLCERuuz3XMYiNdXQpiMb82qAknpKIUf6YFhSbROHMNkZASwEeP9ZdNlw9d9A3xTSfrxmvtyU/1jJuEZ9kVwqyt+4d9YOPum2wOGjy8SkOCVrP24wu1cri8epNdNr15vQ4CLkVL0zt0oV0DPFunWq7EOlNf0NVE7/cTg6KVvG9zlLPsZPY/Xy9arKxlzlDkvjajjqP45IcG+a1s5AtIW3riPapB8ZpEHBZrXYqE/TwXDZTrwsRa7uUoHAbfS3DmyN9fHI/3M08XHQ15ieG119RdYc5R4cnYrJkXpNmOwasb5j5wuKWqcHvNji9xl/zFAPfAGC/Tt5v4ZV46xxUgbV/Kn8rSXJbNQb/P9aZ5ibmEy8l+ctFNdpMGgpT0dS5JCvXmN5tFlHdlYqxqrCWkn/OUAy6rgevJ8w7zmkucRqFZ65pm/cmKcBJzFKgljUyeBxHex4WchnsRMYmdcDpPRIv/KOjset+cLk21IXivUzXkIhUBqLRza8GZFukyyYu5HvAxqiIREv+iiaP3ZSCHuJOVHDM=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(376002)(396003)(346002)(39860400002)(366004)(478600001)(38100700002)(36756003)(2906002)(6486002)(26005)(66446008)(6506007)(64756008)(66946007)(4326008)(6512007)(83380400001)(53546011)(71200400001)(122000001)(54906003)(8936002)(66556008)(33656002)(316002)(5660300002)(76116006)(91956017)(2616005)(86362001)(186003)(66476007)(6916009)(8676002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <CACF7B7E9DBA0C418B3472AB485E039A@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6342
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	22fc738d-e8bf-4115-75a1-08d904038317
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VcUNScRw/rHiFr3fJIPeD3xpFvUCf1kVEm2HVThy8Fd2ntuyNCvnIaWuZEbyZHMffHR8R5iXq7sEErTYZe5Rl5x7J3+0s+qTApn306vrfhLw0rLUEDcczhBRet60hC1/jT6oFxzN2DUiZ5E4obq4N0Tgb8+Mizkwt5Vw5/yXUb11RANjbaU9/Q6Ws8WBKFqcadjlJXNkf5b//bf7VPWyz/bapd4BZ4UcTtrZmtkUDoePU0zwhsK0Wkbl8BW85Y+uJTP4tBdRJIc5agxHIMdfuMj4H6TaGvxeknWzAmuIEm9TxPKyd56o67sYPKqfLP3aSgnOBhn03r8saS9HY9D/uRRNHhUmqFQGRypVmRyxy9vnJSt4pn8aa5Pnzc0mpv9LdB8XsP0+E1iTfGbVvH+D7ExuUG0cVCg7XPRO/XSO5eUANFEd1HQSE9BxW4lEsieZbGiIy9erSUrBDxSpTLZcEuRu/VxewhmyOJUzn54X0sbipAVF4kUOtC69ioqvgaX1T7qkob+77IZy/PF0vtu1CFTlZ2KkqTMDuWg6XolxsIgKR1RkJxLSwcSVgvpUue3A1D9W7sVd+9B9cArWFf499oqzJLyGR69d9hxCNcy9KrzZsSQ2mde1nu6uD47D5okqdT4v0ydf2Jr7JttaOYkmsZsJbNRA/mA/zYEpCnndM28=
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:(4636009)(346002)(376002)(39860400002)(136003)(396003)(36840700001)(46966006)(36860700001)(82310400003)(8676002)(53546011)(2906002)(82740400003)(6506007)(26005)(107886003)(70206006)(70586007)(36756003)(6862004)(6486002)(86362001)(186003)(478600001)(54906003)(316002)(5660300002)(83380400001)(33656002)(356005)(336012)(6512007)(81166007)(4326008)(8936002)(2616005)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 13:52:49.1524
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 594b38ed-2ee7-48dc-45a2-08d9040395ac
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:
	AM5EUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6314

SGkgSnVsaWVuLA0KDQo+IE9uIDIwIEFwciAyMDIxLCBhdCAxOjM5IHBtLCBKdWxpZW4gR3JhbGwg
PGp1bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4gDQo+IEhpLA0KPiANCj4gT24gMTkvMDQvMjAyMSAx
NzoyMSwgU3RlZmFubyBTdGFiZWxsaW5pIHdyb3RlOg0KPj4gT24gTW9uLCAxOSBBcHIgMjAyMSwg
UmFodWwgU2luZ2ggd3JvdGU6DQo+Pj4gSGkgSnVsaWVuLA0KPj4+IA0KPj4+PiBPbiAxOCBBcHIg
MjAyMSwgYXQgNjo0OCBwbSwgSnVsaWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+
Pj4+IA0KPj4+PiANCj4+Pj4gDQo+Pj4+IE9uIDE2LzA0LzIwMjEgMTc6NDEsIFJhaHVsIFNpbmdo
IHdyb3RlOg0KPj4+Pj4gSGkgSnVsaWVuDQo+Pj4+IA0KPj4+PiBIaSBSYWh1bCwNCj4+Pj4gDQo+
Pj4+Pj4gT24gMTYgQXByIDIwMjEsIGF0IDU6MDggcG0sIEp1bGllbiBHcmFsbCA8anVsaWVuQHhl
bi5vcmc+IHdyb3RlOg0KPj4+Pj4+IA0KPj4+Pj4+IA0KPj4+Pj4+IA0KPj4+Pj4+IE9uIDE2LzA0
LzIwMjEgMTc6MDUsIFJhaHVsIFNpbmdoIHdyb3RlOg0KPj4+Pj4+Pj4gT24gMTYgQXByIDIwMjEs
IGF0IDQ6MjMgcG0sIEp1bGllbiBHcmFsbCA8anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPj4+Pj4+
Pj4gDQo+Pj4+Pj4+PiANCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4gT24gMTYvMDQvMjAyMSAxNjowMSwg
UmFodWwgU2luZ2ggd3JvdGU6DQo+Pj4+Pj4+Pj4gSGkgSnVsaWVuLA0KPj4+Pj4+Pj4gDQo+Pj4+
Pj4+PiBIaSBSYWh1bCwNCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4+PiBPbiAxNiBBcHIgMjAyMSwgYXQg
MzozNSBwbSwgSnVsaWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+Pj4+Pj4+Pj4+
IA0KPj4+Pj4+Pj4+PiBIaSwNCj4+Pj4+Pj4+Pj4gDQo+Pj4+Pj4+Pj4+IE9uIDE2LzA0LzIwMjEg
MTI6MjUsIFJhaHVsIFNpbmdoIHdyb3RlOg0KPj4+Pj4+Pj4+Pj4gUmV2ZXJ0IHRoZSBjb2RlIHRo
YXQgYXNzb2NpYXRlcyB0aGUgZ3JvdXAgcG9pbnRlciB3aXRoIHRoZSBTMkNSIGFzIHRoaXMNCj4+
Pj4+Pj4+Pj4+IGNvZGUgY2F1c2luZyBhbiBpc3N1ZSB3aGVuIHRoZSBTTU1VIGRldmljZSBoYXMg
bW9yZSB0aGFuIG9uZSBtYXN0ZXINCj4+Pj4+Pj4+Pj4+IGRldmljZS4NCj4+Pj4+Pj4+Pj4gDQo+
Pj4+Pj4+Pj4+IEl0IGlzIG5vdCBjbGVhciB0byBtZSB3aHkgdGhpcyBjaGFuZ2Ugd2FzIGZpcnN0
IGFkZGVkLiBBcmUgd2UgbWlzc2luZyBhbnkgZmVhdHVyZSB3aGVuIHJldmVydGluZyBpdD8NCj4+
Pj4+Pj4+PiBUaGlzIGZlYXR1cmUgd2FzIGFkZGVkIHdoZW4gd2UgYmFja3BvcnRlZCB0aGUgY29k
ZSBmcm9tIExpbnV4IHRvIGZpeCB0aGUgc3RyZWFtIG1hdGNoIGNvbmZsaWN0IGlzc3VlDQo+Pj4+
Pj4+Pj4gYXMgcGFydCBvZiBjb21taXQgInhlbi9hcm06IHNtbXV2MTogSW50ZWxsaWdlbnQgU01S
IGFsbG9jYXRpb27igJ0uDQo+Pj4+Pj4+Pj4gVGhpcyBpcyBhbiBleHRyYSBmZWF0dXJlIGFkZGVk
IHRvIGFsbG9jYXRlIElPTU1VIGdyb3VwIGJhc2VkIG9uIHN0cmVhbS1pZC4gSWYgdHdvIGRldmlj
ZSBoYXMgdGhlDQo+Pj4+Pj4+Pj4gc2FtZSBzdHJlYW0taWQgdGhlbiB3ZSBhc3NpZ24gdGhvc2Ug
ZGV2aWNlcyB0byB0aGUgc2FtZSBncm91cC4NCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4gSWYgd2UgcmV2
ZXJ0IHRoZSBwYXRjaCwgdGhlbiBpdCB3b3VsZCBub3QgYmUgcG9zc2libGUgdG8gdXNlIHRoZSBT
TU1VIGlmIHR3byBkZXZpY2VzIHVzZSB0aGUgc2FtZSBzdHJlYW0taWQuIElzIHRoYXQgY29ycmVj
dD8NCj4+Pj4+Pj4gTm8uIElmIHdlIHJldmVydCB0aGUgcGF0Y2ggd2UgY2FuIHVzZSB0aGUgU01N
VSBpZiB0d28gZGV2aWNlcyB1c2UgdGhlIHNhbWUgc3RyZWFtLWlkIHdpdGhvdXQgYW55IGlzc3Vl
IGJ1dCBlYWNoIGRldmljZSB3aWxsIGJlIGluIGEgc2VwYXJhdGUgZ3JvdXAuVGhpcyBpcyBzYW1l
IGJlaGF2aW91ciBiZWZvcmUgdGhlIGNvZGUgaXMgbWVyZ2VkLg0KPj4+Pj4+IA0KPj4+Pj4+IE9r
LiBTbyB0aGVyZSBpcyBubyBjaGFuZ2UgaW4gYmVoYXZpb3IuIEdvb2QuIENhbiB5b3UgcHJvcG9z
ZSBhIGNvbW1pdCBtZXNzYWdlIGNsYXJpZnlpbmcgdGhhdD8NCj4+Pj4+IFBsZWFzZSBoYXZlIGEg
bG9vayBpZiBpdCBtYWtlIHNlbnNlLg0KPj4+Pj4geGVuL2FybTogc21tdXYxOiBSZXZlcnQgYXNz
b2NpYXRpbmcgdGhlIGdyb3VwIHBvaW50ZXIgd2l0aCB0aGUgUzJDUg0KPj4+Pj4gUmV2ZXJ0IHRo
ZSBjb2RlIHRoYXQgYXNzb2NpYXRlcyB0aGUgZ3JvdXAgcG9pbnRlciB3aXRoIHRoZSBTMkNSIGFz
IHRoaXMNCj4+Pj4+IGNvZGUgY2F1c2luZyBhbiBpc3N1ZSB3aGVuIHRoZSBTTU1VIGRldmljZSBo
YXMgbW9yZSB0aGFuIG9uZSBtYXN0ZXINCj4+Pj4+IGRldmljZSB3aXRoIHNhbWUgc3RyZWFtLWlk
LiBUaGlzIGlzc3VlIGlzIGludHJvZHVjZWQgYnkgdGhlIGJlbG93IGNvbW1pdDoNCj4+Pj4+IOKA
nDA0MzU3ODRjYzc1ZGNmZWYzYjVmNTljMjlkZWIxZGJiODQyNjVkZGI6eGVuL2FybTogc21tdXYx
OiBJbnRlbGxpZ2VudCBTTVIgYWxsb2NhdGlvbuKAnQ0KPj4+Pj4gIFJldmVydGluZyB0aGUgY29k
ZSB3aWxsIG5vdCBpbXBhY3QgdG8gdXNlIG9mIFNNTVUgaWYgdHdvIGRldmljZXMgdXNlIHRoZQ0K
Pj4+Pj4gc2FtZSBzdHJlYW0taWQgYnV0IGVhY2ggZGV2aWNlIHdpbGwgYmUgaW4gYSBzZXBhcmF0
ZSBncm91cC4gVGhpcyBpcyB0aGUgc2FtZQ0KPj4+Pj4gYmVoYXZpb3VyIGJlZm9yZSB0aGUgY29k
ZSBpcyBtZXJnZWQuDQo+Pj4+IA0KPj4+PiBMb29rIGdvb2QgdG8gbWUuIElzIHRoaXMgcGF0Y2gg
dG8gYmUgYXBwbGllZCBvbiB0b3Agb2YgU3RlZmFubydzIHNlcmllcz8gSWYgbm90LCBpcyB0aGVy
ZSBnb2luZyB0byBiZSBtb3JlIGNsYXNoPw0KPj4+PiANCj4+PiANCj4+PiBBcyBwZXIgU3RlZmFu
bydzIG1haWwgaGUgYWxyZWFkeSB0ZXN0ZWQgaGlzIHBhdGNoIHNlcmllcyBvbiB0b3Agb2YgdGhp
cyBwYXRjaC4gSSB0aGluayB0aGlzIHBhdGNoIGhhcyB0byBtZXJnZWQgYmVmb3JlIFN0ZWZhbm/i
gJlzIHBhdGNoIHNlcmllcw0KPj4+IExldCBTdGVmYW5vIGFsc28gY29uZmlybSB0aGF0Lg0KPj4+
IA0KPj4+IEkgdGhpbmsgdGhlcmUgd2lsbCBiZSBubyBtb3JlIGNsYXNoZXMuDQo+PiBZZXMsIHRo
aXMgcGF0Y2ggaXMgdG8gYmUgY29tbWl0dGVkICpiZWZvcmUqIG15IHNlcmllcyBhbmQgSSBoYXZl
IGFscmVhZHkNCj4+IHRlc3RlZCB0aGlzIHBhdGNoIGFsb25lIGFuZCB3aXRoIG15IHNlcmllcyBv
biB0b3AuIEJvdGggY2FzZXMgd29yayBmaW5lLg0KPiANCj4gQ29vbC4gVGhhbmtzIGZvciB0aGUg
Y29uZmlybWF0aW9uLiBJIGhhdmUgY29tbWl0dGVkIHRoZSBwYXRjaCB3aXRoIHRoZSBuZXcgY29t
bWl0IG1lc3NhZ2UgKGFsdGhvdWdoLCBJIHR3ZWFrZWQgYSBsaXR0bGUgYml0IHRvIHVzZSB0aGUg
YWJicmV2aWF0ZWQgdmVyc2lvbiBvZiB0aGUgY29tbWl0IElEKS4NCj4gDQoNClRoYW5rcyEgDQoN
ClJlZ2FyZHMsDQpSYWh1bA0KPiBDaGVlcnMsDQo+IA0KPiAtLSANCj4gSnVsaWVuIEdyYWxsDQoN
Cg==


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 13:53:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 13:53:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113723.216717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYqox-0007oB-JE; Tue, 20 Apr 2021 13:53:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113723.216717; Tue, 20 Apr 2021 13:53: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 1lYqox-0007o4-GJ; Tue, 20 Apr 2021 13:53:43 +0000
Received: by outflank-mailman (input) for mailman id 113723;
 Tue, 20 Apr 2021 13: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 1lYqov-0007nt-W4; Tue, 20 Apr 2021 13: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 1lYqov-00023B-RK; Tue, 20 Apr 2021 13:53: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 1lYqov-00017W-JV; Tue, 20 Apr 2021 13:53:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYqov-0000Od-J1; Tue, 20 Apr 2021 13: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=8yqrOQdKDSntpFupWd/WeqlUk/plHDYIWVLdvbGmP2U=; b=BTW5aYujY7sGp8dLhQHyLMrRid
	GweDtH5pLIHafqu5D9NtQsQcApNTEaihQJRlzUogzU8PEiRerM+4b8AThAPQuD/k6jimJsGXAjUZ6
	TtikZIM9N1rKvGaPrsPD1sq6EC8RH7U0U5O5nNNkmS6FQkTw9kCrGHPfNiWH8XduqzJ4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161304-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161304: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 13:53:41 +0000

flight 161304 xen-4.12-testing real [real]
flight 161327 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161304/
http://logs.test-lab.xenproject.org/osstest/logs/161327/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161261 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161261

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-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-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     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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   62 days
Failing since        160128  2021-03-18 14:36:18 Z   32 days   43 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   31 days   41 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:08:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:08:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113739.216733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr3c-0000aw-70; Tue, 20 Apr 2021 14:08:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113739.216733; Tue, 20 Apr 2021 14: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 1lYr3c-0000ap-3m; Tue, 20 Apr 2021 14:08:52 +0000
Received: by outflank-mailman (input) for mailman id 113739;
 Tue, 20 Apr 2021 14:08:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr3a-0000ak-Ds
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:08:50 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f28441d3-8d1f-4263-92d5-b3a335a6ba93;
 Tue, 20 Apr 2021 14:08: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: f28441d3-8d1f-4263-92d5-b3a335a6ba93
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927729;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=J2ZZh5ox4gg5XoXoJ+K0j409xeO+sNExc6Owhf0rAw8=;
  b=WzL9D7CZzUi/mHgyohz5pcJ/whvsaCSslMa/AqwDzDopS5Fiza3nTuxx
   5GFCqE4yzPZyYrrcRbKHz2/Q0y3evO2KjnQpVdAPD75TOMUWPCTSy+UDP
   y+9uIvNu9ARdadwrlq4Igp2JF6vUHZ0KJ6OWIZHKhesJeHW4rUDG0XEvY
   E=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: K2T9K8F8cEa6HWoi6mCjj3UGvwMpPSZr/0Qp96odeh1MbcL3VifGlwZI3bB9O9y0lvV7/04uVl
 epFV7aO0X8RBd+XK8MyUJOao4FN8g/10j8VapIaYXhXz1CtmcbcknbyQLNsM1CrMxLXfGtW/OR
 MW4ZBIX9jClyg6N3FQN+nPO4JY/45xLcH1aWKvDInZr4OAodgh/MpII93NKXoNT85igetrhmO3
 KGdTA/LFSLVgHcF9hkdiXNkIJiDo7Km6GC6Vv97VcvoAYzlUQDykUGl2VTWs9804ib3BjaBMAo
 nhE=
X-SBRS: 5.2
X-MesageID: 43472836
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:/4pBxa6gP7QOfTZllwPXwRKBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3Xa6JJz/M0tLa6vNTOW3VeAAaNDyc/ZwzPmEzDj7eI178
 1dWoV3FdGYNzdHpOng5g3QKbgd6f2m1IztuuvE1XdqSmhRGsNdxiN0EBySHEEzZCQuP/oEPa
 GR7MZGuDasEE5/BqiGL0IIQvTZoJnznI/mCCRsOzcc9AKMgTm0gYSKcCSw4xF2aVJy6IZny0
 fpuUjT5qKvs/a0oyWsrVP73tBtt/bKjvdGDMyIoMAJJjvrkRbAXvUdZ5Sy+AobjcvqxFE2kM
 TdgxpIBbUO11rhOlubjDGo+w783C0g43XvoGXo/kfLkIjCax8RT+9i7LgpFifx2g4bk/xXlJ
 9v5Sa/saFaCBvR9R6Nn+TgZlVRuWef5UY5nfV7tQ05baIuLIV/gKY4501vHJIJDEvBmfsaOd
 grNs3a6fpMGGnqCUzxjy1qyNyoaHw5Ag2LdEgEotCUyDhbhhlCvjIl+PA=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="43472836"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=n14RFeUvxFSsSrphFcQzMx6gpW6tpStheCYzPvUCEFlOJIZ+o41qn3+ayXXmTHRVDgTlL5fjrRUTJKZYNbyZhOQHOKleW/e08mNCfC8bbFd7IKW9dWkyUD9KhMlY/MXG9w5dQvaEgPnc/BogwJlXKVJl1fcztVmUnxOF+18VBDuhvmL6qD/oBlXBfQ+p3OaUcoVj8ndwPymADsi4KS43lAiTnGxbbnUMQRk8alQA5xxYbcHNmUD6OZa1b5GLHK3J5dGXU8t9dm0+5vO02O3DneAykwSKudXpsZjB7ZoyC37SAQVTUWJawE0e3vbgS1cndHYSeSZUDUGBIIMdpKtZ3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JFnIPLZp4CjpVGUwuH9aTepqLh3vMemrkEdRAigo64s=;
 b=RXJSXdr2uwam5W1W3HLCXeYv55OgpS1E4b5DlhDtxM1xifz5DYuWyTGTO4jg3snC5EeFxKHAR3l65XejUX7VLCIgg/f56eHjzTjDlOZsjCLTjOCxb4b5NynHv1pt1MwPc22SuJaKuExipW2uIg536fj3nZhs7zarEsnSVs4jmUkKFFaFBzqEPFDsURWQF+jzb5pGBiycrRIT9FmCx3K4NFaQISvPmHbXHp98vtob5ab12vM1VR9hdI8KbR8cN8PdmbiHTdZvoIoNWkcSvzKA/3OQOFNsLIOk6YDwP7XzmnFN3Gcdce1JrUBc96YwF1DGB0dKOEwW1zWS/p9uAizy/A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JFnIPLZp4CjpVGUwuH9aTepqLh3vMemrkEdRAigo64s=;
 b=fNPZNXcbGj6E58aF4oTa49fJ//xy4Vr8oUQBedMIrJEVY7CrwhmcLuuZo93pJMUsaIEEh+WI/S5E9kXZ7kULhUC4VWcvGlXvQHMxRNDGTRZa8KulW2h+jO2SsjGcadODp/fhuk1QsnPQVa4Qdiw+B/RpPjVLXbk5AT76pvz3/MM=
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>, Paul Durrant
	<paul@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian
	<kevin.tian@intel.com>
Subject: [PATCH v4 00/12] x86/intr: introduce EOI callbacks and fix vPT
Date: Tue, 20 Apr 2021 16:07:11 +0200
Message-ID: <20210420140723.65321-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0012.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::24) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8848b4e6-15b5-4596-c380-08d90405cf79
X-MS-TrafficTypeDiagnostic: DM5PR03MB3068:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3068C63AA380402A1826D3908F489@DM5PR03MB3068.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: t/6ZWAGkxTdb1iA1dQV6QL8Kify3S43mn17YRroNNMSTeVrWMsd7LM6BoDjzBh6L9ukQn1VwXOQwbLqkxhMxudrWFTuW9WEHnAwBjPdbODopWF+UAPA+JEvBSl79iEwIh4NQlNehIVZeNpPUj6s9gB/oytGytDKglj3Up0EaYDPp6PAuhSSQhGLMe3/OPWaoRj0f62w8fLe3+Mb93jCPa7xyMeaJTXOv6wTLQMq2OcrP9ZhEko8dd3dB7Wf/IZSv8eyXZDL0nRK78K/zr9QGIDVCFfUzhuS1ZuKv3EM7hkNhTrjCIbaQUIhVlsjmg+j5zPD9yrgICt0aZE58ZGhEeLt6riSEFUfySkFyh2V/fgpJCC4ZRC18qb5pZeSXfeW4uSdmOzSYp94ryrxYjbUhR1f+2Npb3rgOS3rPoqqIr5e4VXFcrN9ljIBavSKpzyFb3w1ROkZ+87uQUw4CffMM+uXNSQfzbbHHtmseRYWN7sTZzyhkiu6J8Doo5KujvcMwLCwn2d/wFXmkMp8vjLKIuwojRr8VVmzd8h4ye2cfBShAQzsah6iB28kwDD9Dp1AjqsDOXD/J6WXW4lelRg07MXc6cJvd721boXDSOPaSFzE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39850400004)(346002)(366004)(136003)(396003)(54906003)(316002)(2906002)(6486002)(956004)(1076003)(38100700002)(36756003)(2616005)(16526019)(5660300002)(6496006)(83380400001)(4326008)(8676002)(26005)(66556008)(66946007)(66476007)(186003)(8936002)(86362001)(6666004)(478600001)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 8848b4e6-15b5-4596-c380-08d90405cf79
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:08:45.5351
 (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: nkjiDyJIkWr6C/6qRurhiDrYov26F7uXI3oLXXTkWy4IYKFCzElTc0nobC+fSsD6Rq26TeFwuH5U2DVL3bcm+A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3068
X-OriginatorOrg: citrix.com

Hello,

The following series introduces EOI callbacks and switches a number of
subsystems to use them. The first one is vmsi and dpci, which are quite
straight forward to switch since they used to open code hooks in the EOI
handlers.

Finally HVM virtual timers are also switched to a different model where
EOI callbacks are used instead of checking at every return to guest
whether a timer interrupt is being injected. Note that such change also
fixes a bug in virtual periodic timers that prevented injecting to a vCPU
different than the one where the timer is assigned (and that would
currently match the i8259 target).

Those changes are paired together so that practical applications of
having EOI callbacks can be seen in action.

Note that further cleanup can be done, but I think the series is already
big enough and provides a clear benefit.

A couple of notes from the testing performed:
 - PVH dom0.
 - Windows guest, limited to 2% capacity to test delay for missed ticks
   mode - time is consistent in the guest.
 - Windows guest migration.
 - PCI passthrough to a guest.

Thanks, Roger.

Roger Pau Monne (12):
  x86/rtc: drop code related to strict mode
  x86/vlapic: introduce an EOI callback mechanism
  x86/vmsi: use the newly introduced EOI callbacks
  x86/vioapic: switch to use the EOI callback mechanism
  x86/hvm: allowing registering EOI callbacks for GSIs
  x86/dpci: move code
  x86/dpci: switch to use a GSI EOI callback
  x86/vpt: switch interrupt injection model
  x86/irq: remove unused parameter from hvm_isa_irq_assert
  x86/irq: drop return value from hvm_ioapic_assert
  x86/vpt: remove vPT timers per-vCPU lists
  x86/vpt: introduce a per-vPT lock

 xen/arch/x86/domain.c             |   4 +-
 xen/arch/x86/emul-i8254.c         |   1 +
 xen/arch/x86/hvm/dm.c             |   2 +-
 xen/arch/x86/hvm/hpet.c           |   8 +-
 xen/arch/x86/hvm/hvm.c            |  23 +-
 xen/arch/x86/hvm/irq.c            |  93 +++++-
 xen/arch/x86/hvm/pmtimer.c        |   2 +-
 xen/arch/x86/hvm/rtc.c            |  30 +-
 xen/arch/x86/hvm/svm/intr.c       |   3 -
 xen/arch/x86/hvm/vioapic.c        | 144 ++++++---
 xen/arch/x86/hvm/vlapic.c         |  72 ++++-
 xen/arch/x86/hvm/vmsi.c           |  35 +-
 xen/arch/x86/hvm/vmx/intr.c       |  59 ----
 xen/arch/x86/hvm/vpic.c           |   8 +-
 xen/arch/x86/hvm/vpt.c            | 514 +++++++++---------------------
 xen/drivers/passthrough/x86/hvm.c | 223 ++++++++-----
 xen/include/asm-x86/hvm/io.h      |   3 +-
 xen/include/asm-x86/hvm/irq.h     |  28 +-
 xen/include/asm-x86/hvm/vcpu.h    |   4 -
 xen/include/asm-x86/hvm/vlapic.h  |  19 +-
 xen/include/asm-x86/hvm/vpt.h     |  32 +-
 21 files changed, 630 insertions(+), 677 deletions(-)

-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:08:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:08:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113740.216744 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr3h-0000cq-F2; Tue, 20 Apr 2021 14:08:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113740.216744; Tue, 20 Apr 2021 14: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 1lYr3h-0000cj-C2; Tue, 20 Apr 2021 14:08:57 +0000
Received: by outflank-mailman (input) for mailman id 113740;
 Tue, 20 Apr 2021 14:08:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr3g-0000cR-7s
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:08:56 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ddb82d75-6ff9-43e5-bd6a-4cf67b44f785;
 Tue, 20 Apr 2021 14:08: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: ddb82d75-6ff9-43e5-bd6a-4cf67b44f785
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927735;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=1YjGdwTNtoZj7OvoOgutGPaBGPvE/yQ1k7kXOxMCAs8=;
  b=KkTSZ/OhuLcz+f/23iGHbhmO9+TXhvlgJiXggPhZDd3C4oJtL5CCIWTy
   RHs4TQLOaYtJgflqxHwHmJ9UwbzYzHJL+IEc4yaYLOS//ThhxiNcVRqsN
   kt3/OT43OwltxojbxjMMqQkomuTkHU6KNq46OsMrdKQhao9LEUxVtxYue
   o=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: QhJvt58VNhF1drcMyv1Tl7Hk7420yPKTAydDwuBKPh88dCgTsVF/euOWPQsjvm3yWLrR2cYtCz
 nhMOrKQY0D0NskY8uccSvVTxBfqgKGkN+pclRgAYbe8pGqkfLvM/epbPmHlB87GKjveLot0p/D
 ANruQM4waN37/eGXQXsOpI4VNzBnBS63gC05JsyrhzFMYGzwM7m3XvVLL4HbqQVJCN+UPCZP1o
 tYSkLSTCvvIiQLEOx5rT749LVAm3eribLcNlEY3qz/PiDFwGJpmSCtwaXdSrZxgW5uxA2AhNjr
 ECw=
X-SBRS: 5.2
X-MesageID: 42111179
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:QLGRPazTso1KVNMovattKrPx9uskLtp033Aq2lEZdDV8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr385lp7Y4NeYqzRQWOghrMEKhOz6vHhwfhFSr36/JH2c
 5bGZRWJdXsATFB4vrSzxK/F78bruWv1ICNqaPgw2x2TQdsApsQjTtRLgqACEV5SE1nKPMCdK
 a03cZMqzq+dXl/VK3SakUtZOTfu8bN0KvvfB9uPXUawTOThjCl4qOSKWn64j4iVVp0oIsKwC
 z+vCHSoo6itPy6zRG07R6o071m3OHP5/EGKMiFis0+IijhhACydO1aKsC/lQFwms6DwhIHl8
 TNvgcBMq1Img/sV1DwmzTB8U3B1ysj8HDrw1PwuwqdneXJAAgUJuAEoKAxSGq812MQ+OtS/Y
 gO4kei871QNh/ElDSV3amxazha0nCajFBnrfQelBVkIOwjQY4Ul6Mz1mVPHqwNGSrrgbpXa9
 VGPYXn6PFafUjyVQG+gkBfhNilXnEEFhybWEQ1usuMzzhMnHxipnFovfAiog==
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="42111179"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GT/vE97SZCfSo5ls6UUxgS2n17EjPxDkFKkbEOEvWUmJOHOMHeRhjgfoAVmvOETRxbvkyDFxibAdlJ2cYD5kpc7Q8DXmAdNXjCiRzn3caQUgd5bZ/u8GNFz1eH3sCH61Np0Lx1omOpIAsQIEWcDmvtTOBYpVJUg+8DZiAcRRBnLgNbF/rGWR4KDt7NNRN5h6Q3EsIsZEPUOl7nHV1NI4fCSPJ4q+vFdbSv06d5MgyTRavIrra01Q8w32o5E+DgPzoS4xnWQhuj8g3UCaZC+DRm2wbXnzB2vcxMmpz5DP3z9t7ijEyIL0jAyIdH38d2G74b22ceC9waVXIR3z3ks7Mg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=j9VslYPt+uT7gUV9+DwKKs51FNyfg40GHzoCjQgtUVQ=;
 b=khuzIwRn4YpRoN0+OHUe1QF/hmXKyenCzrxlNQ1IdfETa0okZiIEkvHlfrDNTHZHdpjr7b9FCymELs3kYC1iAAN2dyHlWYVRtn2K49j+hdAD9QjG81JpT6vLlKEwntoojfPF7upIFdkx8mSddpwayPp28/sjXRe05dOA7eoZKk0nE9F4NH67Wdiwiz/RCA6LeVuf1pF6Ty8UdMen8TtgNPbC7qzhycVpggEfDuwzTXM11eCAlMhN0BJbBBTZHVg9jZ9pOqKxQlpWah/eUq35B/goqGElfmZ0HUhawomIyXB30e/n+MgVlEwVI39b1pUCk+nmtTEKCg91zHpEGcaDDQ==
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=j9VslYPt+uT7gUV9+DwKKs51FNyfg40GHzoCjQgtUVQ=;
 b=fo4aTdMXXcn6AV8dMtko5WEgUmHAjX5ehzJ2BFJhf5tHx2o3l8ZRyXCs5JHB+zAMPbz37VfQurrfWk2nrK9lptJAOIDYF/o/cwXIotjTGBZ0TrMWRXnvtitz8FGr8momdpRsSR136qeciJrqU04GWNjNa9ugc9wmAyQe+HCBJgo=
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 v4 01/12] x86/rtc: drop code related to strict mode
Date: Tue, 20 Apr 2021 16:07:12 +0200
Message-ID: <20210420140723.65321-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0067.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::31) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0969d9a7-70b5-4d29-cb40-08d90405d341
X-MS-TrafficTypeDiagnostic: DM5PR03MB3068:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3068601D90687BE2A19EF9498F489@DM5PR03MB3068.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:352;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: zDoFW7+qTsSKrxxQOL/i6N0pSVOtL0kmXl1Tt0ITTz6qm3XorLU9CiX6Yn4atuSHV3aE1zam6t+04OEgBamLurQvEfjs74wVaQi8LXtKAOl9XjgtCJDrw6cakCbXbbCZUKDiR9lBA0eVSlVIJF17MbmFnouCkF4E1yGxrlWFPdfUbBOZIxivw5u3E+pH9bH+w1u5BodNVZikXwvaHd5rH0miSIM1TsKUT5J00qWbQM7x6HfNPe9vc5NzS23Fu5f9/R5tESQB8TGR3uNQmZCnyFoJd/eaPZrLySRMhdiwBQAjS3FHcSkZh67/OVP/E9/wv94J3K6MpwE+8QzB19qZWFPtQ6PMSCQx9oon69HU84upboRxPGsImfS8+FAdDgyVIE3Y94o3N4OtwSNfurhdwAEzKnw11u7rCAMA5s7j/fWxgMD6UybarFR6mXHwBBodqvx8rD1w01TEQIxzstpkPqQh6L95Ta+c5LMCV94dQRfjXPLdqZ5q+UZD+xKD67rCM+mQxkFY5UILG+8SajZ7Z+RIWKgQeAKc7lVAQCQHp7D2igfMEOLo2EgoMcfMFrdNUE6ZM2tCcO7WmJW2jVUoDrG1BaS9QKEQqvz88ooD+gs=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39850400004)(346002)(366004)(136003)(396003)(54906003)(316002)(2906002)(6486002)(956004)(1076003)(38100700002)(36756003)(2616005)(16526019)(5660300002)(6496006)(83380400001)(4326008)(8676002)(26005)(66556008)(66946007)(66476007)(186003)(8936002)(86362001)(6666004)(478600001)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Yt/G4WVKJctFahBQkj016c3y4Fq2CuemsOKyYPZ?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 0969d9a7-70b5-4d29-cb40-08d90405d341
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:08:51.7040
 (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: +hUEwkHVCbS+DN21Owg/yNpVk7aphjulWaIApHxm3brexNiKIOFZZNaNylNufcTnhCuLLYE5+5n5ws5TIE3R8g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3068
X-OriginatorOrg: citrix.com

Xen has been for a long time setting the WAET ACPI table "RTC good"
flag, which implies there's no need to perform a read of the RTC REG_C
register in order to get further interrupts after having received one.
This is hardcoded in the static ACPI tables, and in the RTC emulation
in Xen.

Drop the support for the alternative (strict) mode, it's been unused
for a long (since Xen 4.3) time without any complains.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Further changes in the series will require that no registering or
unregistering of callback is done inside of the handlers themselves,
like it was done in rtc_pf_callback when in strict_mode.
---
Changes since v3:
 - New in this version.
---
 xen/arch/x86/hvm/rtc.c | 27 +--------------------------
 xen/arch/x86/hvm/vpt.c |  4 +---
 2 files changed, 2 insertions(+), 29 deletions(-)

diff --git a/xen/arch/x86/hvm/rtc.c b/xen/arch/x86/hvm/rtc.c
index 3150f5f1479..9992595c45a 100644
--- a/xen/arch/x86/hvm/rtc.c
+++ b/xen/arch/x86/hvm/rtc.c
@@ -46,15 +46,6 @@
 #define epoch_year     1900
 #define get_year(x)    (x + epoch_year)
 
-enum rtc_mode {
-   rtc_mode_no_ack,
-   rtc_mode_strict
-};
-
-/* This must be in sync with how hvmloader sets the ACPI WAET flags. */
-#define mode_is(d, m) ((void)(d), rtc_mode_##m == rtc_mode_no_ack)
-#define rtc_mode_is(s, m) mode_is(vrtc_domain(s), m)
-
 static void rtc_copy_date(RTCState *s);
 static void rtc_set_time(RTCState *s);
 static inline int from_bcd(RTCState *s, int a);
@@ -64,9 +55,6 @@ static void rtc_update_irq(RTCState *s)
 {
     ASSERT(spin_is_locked(&s->lock));
 
-    if ( rtc_mode_is(s, strict) && (s->hw.cmos_data[RTC_REG_C] & RTC_IRQF) )
-        return;
-
     /* IRQ is raised if any source is both raised & enabled */
     if ( !(s->hw.cmos_data[RTC_REG_B] &
            s->hw.cmos_data[RTC_REG_C] &
@@ -74,8 +62,7 @@ static void rtc_update_irq(RTCState *s)
         return;
 
     s->hw.cmos_data[RTC_REG_C] |= RTC_IRQF;
-    if ( rtc_mode_is(s, no_ack) )
-        hvm_isa_irq_deassert(vrtc_domain(s), RTC_IRQ);
+    hvm_isa_irq_deassert(vrtc_domain(s), RTC_IRQ);
     hvm_isa_irq_assert(vrtc_domain(s), RTC_IRQ, NULL);
 }
 
@@ -86,19 +73,7 @@ static void rtc_pf_callback(struct vcpu *v, void *opaque)
     RTCState *s = opaque;
 
     spin_lock(&s->lock);
-
-    if ( !rtc_mode_is(s, no_ack)
-         && (s->hw.cmos_data[RTC_REG_C] & RTC_IRQF)
-         && ++(s->pt_dead_ticks) >= 10 )
-    {
-        /* VM is ignoring its RTC; no point in running the timer */
-        TRACE_0D(TRC_HVM_EMUL_RTC_STOP_TIMER);
-        destroy_periodic_time(&s->pt);
-        s->period = 0;
-    }
-
     s->hw.cmos_data[RTC_REG_C] |= RTC_PF|RTC_IRQF;
-
     spin_unlock(&s->lock);
 }
 
diff --git a/xen/arch/x86/hvm/vpt.c b/xen/arch/x86/hvm/vpt.c
index 4cc0a0848bd..24d90c0a186 100644
--- a/xen/arch/x86/hvm/vpt.c
+++ b/xen/arch/x86/hvm/vpt.c
@@ -21,7 +21,6 @@
 #include <asm/hvm/vpt.h>
 #include <asm/event.h>
 #include <asm/apic.h>
-#include <asm/mc146818rtc.h>
 #include <public/hvm/params.h>
 
 #define mode_is(d, name) \
@@ -337,8 +336,7 @@ int pt_update_irq(struct vcpu *v)
     {
         if ( pt->pending_intr_nr )
         {
-            /* RTC code takes care of disabling the timer itself. */
-            if ( (pt->irq != RTC_IRQ || !pt->priv) && pt_irq_masked(pt) &&
+            if ( pt_irq_masked(pt) &&
                  /* Level interrupts should be asserted even if masked. */
                  !pt->level )
             {
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:09:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:09:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113741.216757 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr3o-0000gu-Nc; Tue, 20 Apr 2021 14:09:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113741.216757; Tue, 20 Apr 2021 14:09: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 1lYr3o-0000gj-K3; Tue, 20 Apr 2021 14:09:04 +0000
Received: by outflank-mailman (input) for mailman id 113741;
 Tue, 20 Apr 2021 14:09:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr3m-0000g6-Vd
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:09:03 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1e54e0a4-29e9-46a7-9f2e-bbc73f449bda;
 Tue, 20 Apr 2021 14:09: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: 1e54e0a4-29e9-46a7-9f2e-bbc73f449bda
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927742;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=DKRwBa7N8gB43Hpd1vHxNflj8UqbpDUS3qFLF/JEgoE=;
  b=H4ORJ5u6lG9Pc0Pmrf63By9zfX7Fr5RZaGcx/LJOUU21jbRBa+CkSMRw
   HLWk4dcQwnJ5zzQELFNDh7vHYCL6qTf5/i/ZkF7ALHwBBAssuINkaQPkm
   5trGkn+k8dhI+aYFWPsKZt8bgxmFJ1rrLb89QLmPDWT/VHauqMtWAJPpl
   w=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: pyRF4Mckyy4RnQGpcwCwpPXvN9FRKhso+AniQ4H+wfscRWVkgJcqXjo5+fNmboec1AdjQZa6a9
 80bYEq0yULhyD36RynKVukMrBNeYbj4szaVndew+JwywFWpm0ukOlIGIbxcAuE/JLZk4DCoVYd
 4if4F/ykeXhPLXhKirnchwFiSQ4bY8uClaKZrFRBQ32xa+O2tMkMH94hISeK739JVEc3yeYggs
 1yHjvoY39Dl59BtbZXJK3QG0XN7nSLR9NNFLYXwIAvu2wFDk0cOCa/yGCmjulVj6ytSuN8H7Vs
 P/A=
X-SBRS: 5.2
X-MesageID: 41981482
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:smjW6qpIazpy3Em6tLhR9IkaV5vxL9V00zAX/kB9WHVpW+SFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex7h3LRy5pQcOqrnYRn+tAKTXeRfxKbB4xmlIS3x8eZByb
 xtGpIVNPTcBUV35PyU3CCWCNAlqePozImNpcPzi0hgVhtrbaYI1XYaNi++HldtTAdLQboVfa
 D92uN9qzCteWsaY62AbxFoY8H5q8DWj5WjWBYaBnccgzWmty+i67LxDnGjr3Qjeg5IqI1CzU
 H11zbXy4/mmPG9xx/a2Qbonu5rseqk8PRvLoihjsAULx/llwqnYp9wMofywQwdkaWUx3sB1P
 XKvhc8L+R/gkmhAl2dkF/W9CTLlBYo9nP4xleTjRLY0LPEbQN/MeVtr8Z9UHLimi4dleA56o
 1n9SalkqASKhX6kCH097HzJmlXv3vxm1UOu6oulXBFOLFuD4N5nMgk025+NowPJy7+4JBPKp
 gUMOjsoMxbdl6XdBnizw9S6e3pWnwyGyGPSVQZtvqU1CBLnGt4w1Fw/r1noks9
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41981482"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cqZ2ArlYLXm6A2lLux88pVzl7/lrfi0QOqyjzFFc7BHiXjwPDXEnQmuHh3IdfC3U8Nap+hZbKglHFXxcQkLNiOA5ddTmh24mkjufdEXLaOX4dphRznuDOCcbn4rn4bTmuRck7wdQzTEXMXC9Rq8J0oorxtFiAncuZE4NLQ4KfqX9lMNWH2kjGvWByg1R9NTHCYfop8LQezOOfib6t0pAHtP1zPNxEEg8TxpP26/udFxzkke4bpLygHWDYh5PTE/HR0GCVhdUlxj6IW1Jc0rd1XUpAQN6fdPTOVsd+n9tXnP0yln7ddg4ljttNI7TaXcpinrnzH3SqR1T31GDNxD8kA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0W7J+sUzCMN7JZrGlfcB4U+CgJb8yL9z3xuBv1e4mPk=;
 b=FXmzNhbcmbGTL9s1majzjverbPlaLlqD5dXpqINb/hPyzxu7as75lFpGDPEKxtbrTNqthP2ru++omAtIJD2xQ3UMcsEuGuR/gIB1+sb4iewM11qDoPWCZkyi84U3tCkiJVDi7yPF7vSY2vtYdV5qaCc2UQHsrfEzgrCfq1puGvO/7JzZqsDLunNajCTh62wxlbsmJNU0KYxsoWeLVfwDeUKhoyHydU5y732F6jIq4jsmgMeI07ZTQa2zCqrrzeQkS0L/KlJv4Cz/mzwqBHxGvzuGwLY5Fepr4JxFX8+3ITAoLZ9rr9WhdgVVd1UyY1YWVGqNiTYBBadhYOviqQofaA==
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=0W7J+sUzCMN7JZrGlfcB4U+CgJb8yL9z3xuBv1e4mPk=;
 b=TdcVbG7LtxJDl+fzWNzThxScjaZhK1FS8IicDWBOZvmFSfu9zrS4ddMcLTOTeFs6mWEa4c/GCx8ypXo+t2812EuH9rVtQRw6/e5CPqLAEsgADJM5+CSN8s9bEBz/i1KqTxa3OgOAiHLLAje2nOeRMGeDMZjtp4kWSprC1ldSD9s=
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 v4 02/12] x86/vlapic: introduce an EOI callback mechanism
Date: Tue, 20 Apr 2021 16:07:13 +0200
Message-ID: <20210420140723.65321-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0021.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::33) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 59c981db-aec3-492f-400f-08d90405d6e8
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB600009EA5EB3B56B208FB8008F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:506;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /RnLLev71UKDoOGS4aeCKdRQw5f6o4IlqeIwaGvGrl3m7I5PxUQJ6x+6StgvxFkr15Jpm0RWWjLORiXuYMINuC4ryFrZhfuKxlHFa3rbUYSN/xRgJTz/WajV0Ul23dDuYtF1kSpKZT9AQE7U6N1a5gvT6i17ke73DLWtsjtppugzlWbeVcOaCNfRO+GT3Kx0SEjQJt472hE/01wGG03C+K9VksyZalpF0rU30Na4lt/Vd8fxUCThIzuHId8GikYQGGhu1LqtDgs7dlOKWICCo7TIKhJwEHftkzhp42LThFc4gX25MLea9sIp3hjUSodbwuTfJoQIV4pxkWO46mkGNvyqNEXbx2/MmgKpyX3nxLLtLCgJuaWSSVH2TuywseK2S2CyFjeV0G28a2ZGrpJK8Tp7nAWeYfT9LXu4cgFzxP/C+JggBLjF78G1Mx3PblQSrfFoa9hH7tAiF7Co6MAhxoVTGmEMrENRKHEJxsuaBeK8xEH8+t2EZhO+klCdSLe+avLfHh+3XPc6Cj2cWTp5dFHLlmLWcWyb5bU4CtwxmwKiPXbw5czlZr1tim132EtB9J3rSd6S/IwATazy6tNMJWvrHz/FJErmSZmOYPyQPFg=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(186003)(5660300002)(8936002)(54906003)(2906002)(6666004)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?db28ZC2yN/lpRabv8z4P1lkubT5wxL6LhocInkI?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 59c981db-aec3-492f-400f-08d90405d6e8
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:08:57.7344
 (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: eVR66nzhXfqTRonEsSbQ+5DlN4SOQ5WTSvlsIy8GJT4gr7yvvY2x88W4gdbrNZHg0kV4slePprsf0padSXgOdA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

Add a new vlapic_set_irq_callback helper in order to inject a vector
and set a callback to be executed when the guest performs the end of
interrupt acknowledgment.

Such functionality will be used to migrate the current ad hoc handling
done in vlapic_handle_EOI for the vectors that require some logic to
be executed when the end of interrupt is performed.

The setter of the callback will be in charge for setting the callback
again on guest restore, as callbacks are not saved as part of the
vlapic state. That is the reason why vlapic_set_callback is not a
static function.

No current users are migrated to use this new functionality yet, so no
functional change expected as a result.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v3:
 - Use xzalloc.
 - Drop printk on ENOMEM.
 - Add vcpu parameter to vlapic EOI callback.
 - Check that the vector is pending in ISR or IRR when printing a
   warning message because of an overriding callback.
 - Fix commit message regarding resume mention.

Changes since v2:
 - Fix commit message typo.
 - Expand commit message.
 - Also print a warning if the callback data is overridden.
 - Properly free memory in case of error in vlapic_init.

Changes since v1:
 - Make vlapic_set_irq an inline function on the header.
 - Clear the callback hook in vlapic_handle_EOI.
 - Introduce a helper to set the callback without injecting a vector.
 - Remove unneeded parentheses.
 - Reduce callback table by 16.
 - Use %pv to print domain/vcpu ID.
---
 xen/arch/x86/hvm/vlapic.c        | 62 ++++++++++++++++++++++++++++++--
 xen/include/asm-x86/hvm/vlapic.h | 19 +++++++++-
 2 files changed, 78 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index 5e21fb4937d..4465beaeec1 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -144,7 +144,37 @@ bool vlapic_test_irq(const struct vlapic *vlapic, uint8_t vec)
     return vlapic_test_vector(vec, &vlapic->regs->data[APIC_IRR]);
 }
 
-void vlapic_set_irq(struct vlapic *vlapic, uint8_t vec, uint8_t trig)
+void vlapic_set_callback(struct vlapic *vlapic, unsigned int vec,
+                         vlapic_eoi_callback_t *callback, void *data)
+{
+    unsigned long flags;
+    unsigned int index = vec - 16;
+
+    if ( !callback || vec < 16 || vec >= X86_NR_VECTORS )
+    {
+        ASSERT_UNREACHABLE();
+        return;
+    }
+
+    spin_lock_irqsave(&vlapic->callback_lock, flags);
+    if ( vlapic->callbacks[index].callback &&
+         (vlapic->callbacks[index].callback != callback ||
+          vlapic->callbacks[index].data != data) &&
+         (vlapic_test_vector(vec, &vlapic->regs->data[APIC_IRR]) ||
+          vlapic_test_vector(vec, &vlapic->regs->data[APIC_ISR])) )
+        printk(XENLOG_G_WARNING
+               "%pv overriding vector %#x callback %ps (%p) data %p "
+               "with %ps (%p) data %p\n",
+               vlapic_vcpu(vlapic), vec, vlapic->callbacks[index].callback,
+               vlapic->callbacks[index].callback, vlapic->callbacks[index].data,
+               callback, callback, data);
+    vlapic->callbacks[index].callback = callback;
+    vlapic->callbacks[index].data = data;
+    spin_unlock_irqrestore(&vlapic->callback_lock, flags);
+}
+
+void vlapic_set_irq_callback(struct vlapic *vlapic, uint8_t vec, uint8_t trig,
+                             vlapic_eoi_callback_t *callback, void *data)
 {
     struct vcpu *target = vlapic_vcpu(vlapic);
 
@@ -159,8 +189,12 @@ void vlapic_set_irq(struct vlapic *vlapic, uint8_t vec, uint8_t trig)
     else
         vlapic_clear_vector(vec, &vlapic->regs->data[APIC_TMR]);
 
+    if ( callback )
+        vlapic_set_callback(vlapic, vec, callback, data);
+
     if ( hvm_funcs.update_eoi_exit_bitmap )
-        alternative_vcall(hvm_funcs.update_eoi_exit_bitmap, target, vec, trig);
+        alternative_vcall(hvm_funcs.update_eoi_exit_bitmap, target, vec,
+                          trig || callback);
 
     if ( hvm_funcs.deliver_posted_intr )
         alternative_vcall(hvm_funcs.deliver_posted_intr, target, vec);
@@ -461,11 +495,24 @@ void vlapic_handle_EOI(struct vlapic *vlapic, u8 vector)
 {
     struct vcpu *v = vlapic_vcpu(vlapic);
     struct domain *d = v->domain;
+    vlapic_eoi_callback_t *callback;
+    void *data;
+    unsigned long flags;
+    unsigned int index = vector - 16;
 
     if ( vlapic_test_vector(vector, &vlapic->regs->data[APIC_TMR]) )
         vioapic_update_EOI(d, vector);
 
     hvm_dpci_msi_eoi(d, vector);
+
+    spin_lock_irqsave(&vlapic->callback_lock, flags);
+    callback = vlapic->callbacks[index].callback;
+    vlapic->callbacks[index].callback = NULL;
+    data = vlapic->callbacks[index].data;
+    spin_unlock_irqrestore(&vlapic->callback_lock, flags);
+
+    if ( callback )
+        callback(v, vector, data);
 }
 
 static bool_t is_multicast_dest(struct vlapic *vlapic, unsigned int short_hand,
@@ -1623,9 +1670,19 @@ int vlapic_init(struct vcpu *v)
 
     clear_page(vlapic->regs);
 
+    vlapic->callbacks = xzalloc_array(typeof(*vlapic->callbacks),
+                                      X86_NR_VECTORS - 16);
+    if ( !vlapic->callbacks )
+    {
+        unmap_domain_page_global(vlapic->regs);
+        free_domheap_page(vlapic->regs_page);
+        return -ENOMEM;
+    }
+
     vlapic_reset(vlapic);
 
     spin_lock_init(&vlapic->esr_lock);
+    spin_lock_init(&vlapic->callback_lock);
 
     tasklet_init(&vlapic->init_sipi.tasklet, vlapic_init_sipi_action, v);
 
@@ -1647,6 +1704,7 @@ void vlapic_destroy(struct vcpu *v)
     destroy_periodic_time(&vlapic->pt);
     unmap_domain_page_global(vlapic->regs);
     free_domheap_page(vlapic->regs_page);
+    XFREE(vlapic->callbacks);
 }
 
 /*
diff --git a/xen/include/asm-x86/hvm/vlapic.h b/xen/include/asm-x86/hvm/vlapic.h
index 8f908928c35..db71fa38b0b 100644
--- a/xen/include/asm-x86/hvm/vlapic.h
+++ b/xen/include/asm-x86/hvm/vlapic.h
@@ -73,6 +73,9 @@
 #define vlapic_clear_vector(vec, bitmap)                                \
     clear_bit(VEC_POS(vec), (uint32_t *)((bitmap) + REG_POS(vec)))
 
+typedef void vlapic_eoi_callback_t(struct vcpu *v, unsigned int vector,
+                                   void *data);
+
 struct vlapic {
     struct hvm_hw_lapic      hw;
     struct hvm_hw_lapic_regs *regs;
@@ -89,6 +92,11 @@ struct vlapic {
         uint32_t             icr, dest;
         struct tasklet       tasklet;
     } init_sipi;
+    struct {
+        vlapic_eoi_callback_t *callback;
+        void                 *data;
+    } *callbacks;
+    spinlock_t               callback_lock;
 };
 
 /* vlapic's frequence is 100 MHz */
@@ -111,7 +119,16 @@ void vlapic_reg_write(struct vcpu *v, unsigned int reg, uint32_t val);
 bool_t is_vlapic_lvtpc_enabled(struct vlapic *vlapic);
 
 bool vlapic_test_irq(const struct vlapic *vlapic, uint8_t vec);
-void vlapic_set_irq(struct vlapic *vlapic, uint8_t vec, uint8_t trig);
+void vlapic_set_callback(struct vlapic *vlapic, unsigned int vec,
+                         vlapic_eoi_callback_t *callback, void *data);
+void vlapic_set_irq_callback(struct vlapic *vlapic, uint8_t vec, uint8_t trig,
+                             vlapic_eoi_callback_t *callback, void *data);
+
+static inline void vlapic_set_irq(struct vlapic *vlapic, uint8_t vec,
+                                  uint8_t trig)
+{
+    vlapic_set_irq_callback(vlapic, vec, trig, NULL, NULL);
+}
 
 int vlapic_has_pending_irq(struct vcpu *v);
 int vlapic_ack_pending_irq(struct vcpu *v, int vector, bool_t force_ack);
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:09:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:09:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113742.216769 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr3u-0000lb-5l; Tue, 20 Apr 2021 14:09:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113742.216769; Tue, 20 Apr 2021 14:09: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 1lYr3u-0000lR-21; Tue, 20 Apr 2021 14:09:10 +0000
Received: by outflank-mailman (input) for mailman id 113742;
 Tue, 20 Apr 2021 14:09:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr3s-0000kS-O2
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:09:08 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 07a2cb89-bb58-4469-a59c-7f88cc2d5cf3;
 Tue, 20 Apr 2021 14:09: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: 07a2cb89-bb58-4469-a59c-7f88cc2d5cf3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927746;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=vpcN02cyzKID1HjeTihBXBv2NdWgJ2yP5FtMABZCCQk=;
  b=MRUAgkJk+CKpzCD0209jdxvocP5W4i+M6C/XR93iLL23t0KXariv6Jxn
   oEKmbJqtf5WzUH7BrFgNpjLL49jdLQyJ2keJi7RBaXHwvFsvRn9+7yON2
   B4z5aDRfWCJu/bw1nRgOLYDEylOTS7vZy0pXP9cSlyKgtOWbBXJyXVrKG
   c=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: +5x+J5rIseA6HcAiGBM14IgKx4J6im0TqjO2/hpo0JP8Prh5tyDvsNRtNtOSCuC5EsXUl8frk+
 I0nNB1rIRkTL7ZP5QtcmKIJ3xGbad1Oy/WDsVOPAWIVNyC2txZ6VjU4E4I4RfxeCJ6DbxEKNer
 9jPVpMMXKT97B8rBdxBl8+yIDlYdU77KSsJPjqlSIF/NqeGL9knHsZO+hiWzGEjHdjMTMY7kBp
 YhKxEUdPL8pSmzCeVGkecCjuJmXi6LbBiQw+Oy4cF1p/cuPy8abDkJyAmXNi7I3X4ctxwWLm1g
 acM=
X-SBRS: 5.2
X-MesageID: 41988218
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:/7/lL6mdoUn1aQkqT1s+bGz6jWTpDfP2imdD5ilNYBxZY6Wkvu
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKMWOqqvWxSjhXuwIOhZnO7f6hDDOwm7zO5S0q
 98b7NzYeebMXFWhdv3iTPWL/8O29+CmZrHuc7771NACT5ncLth6QARMHf4LmRTSBNdDZQ0UL
 qwj/AmmxOadX4abtu2CxA+NoCum/TxmI/7ehlDPhY76WC15g+A0qLwEBSTw34lIlBy6IolmF
 KlryXJop+Nntv+4R/a2m/V4f1t6aHc4+oGPuOgoIw4Lj3tjyyheYhuXaaT1QpF3d2H2RIRv/
 Tn5zsmIsRv+1PdF1vF3SfF6k3b/xsFr1/k1FOCjnPoraXCNU0HIvsEv611WF/9ySMbzbVB+Z
 MO5U21nd5rKCmFuyLH693BR3hR5zKJiEtnq8E/pThiS4cEAYUhyrA3zQduP7orOjn104wjGP
 kGNrCm2N9mNWmXaH3UpQBUsbqRd0V2Gh+HR34LsdCO3w5Xm2hkz1AZyNZ3pAZ4yK4A
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41988218"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GRrWBIH6ojGpu/aPPKeCaXHz2CYAspnQdAKXScak5jETzLSjrG0nGQV33oHaada9Koo269j4dPivxK49LdHciHLpTZdOjkHqg64nyxVTXxA02lH7SOWZstPMGc55bGHrYnjlhpqvg7pc3Il8V+ujm/oxLlpkLHbwJHFaNcyb5GTK/QKp3fZfed8ETzEFW8Y4Z3+k5toN/ITlG/fu8zIBLWlMvQ+kaq27skOOrCgd2/gmuya7g6NxDArGbGiug7VKvz8r2t/O0jzgY2N+cPM2MZ2FpZh44f9ALw9nbDyfMnM4zyA4t1PuYGvLgtCa8W/srxFEhYf3SxGYAEdJ1zCkjQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZTznuj7Tf1xHDE+jz1fFRYaGylN7zYTwaHIzddWA0R0=;
 b=DebQwbQ7f4DYZeBKaUKQUS2uFv8TX7MsTaui0lh+JaVMI8p4xezElCLn3towVI6k5Tat6lJIhSf7vRopUXlDXEqQPiu8Xffb13J7ble05eDL+5Ilt1Azaa+B8WQoMh/86E7xkJhJ0U3j2IShbWmNc5qLPIxlA61c117oc/jqzt+5zshnbmdkjk4nmlPVKa/8QqdVx0Rv4+fDdab79cTCoW8dQ4GwUVH0ne2STq9LxlkED2osdtYpw/LxDysmmd+U0pfCOB/0q/+UY/6qcgJnH7pGUuwdfuryn2KfN0Mz0e7olwY9bjYeB9wMPluNMUt9snmsmOt8Ga4ieyf1b+b/2A==
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=ZTznuj7Tf1xHDE+jz1fFRYaGylN7zYTwaHIzddWA0R0=;
 b=bGqPax/egN9/2wWECbsMbLG/WuHVmHGydPpdT9Va3e1BChBlqEpD8jBYckdCw04oTmDLsk+7ueIJ00ovNeT+IKvLmkJGmYe6rFUMwkn0aLL9zNWwMUObS8tNkgISAvdBQawP+WEte5JTTNjzNO3fFFLZJDw7Rlh5tIgSa4ypRWg=
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>, Paul Durrant
	<paul@xen.org>
Subject: [PATCH v4 03/12] x86/vmsi: use the newly introduced EOI callbacks
Date: Tue, 20 Apr 2021 16:07:14 +0200
Message-ID: <20210420140723.65321-4-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0135.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::27) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8d0c21fc-f40d-4908-1426-08d90405dab4
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB6000D0746CC5893DA3F872088F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: mSPRB/4y9lgb6gZRHBCKCj+aR4quO6VZ5RGnsyHTfR+E9/+Ne8H/zxRTNIJ493w3t+mp/6UBt5qEd0FcTdjtNcPF04Bj/yCavwWl7SEkDp8caJ91BV9RTbHF2VcSGVVbQnMdZdG1zrgu/Iy6BNjb5TkSkzOe46FlTzmRHI0x0LF9+4+/ZN0/6yeOPABl9iVuq7Wbo1OCVUS4SMWq/WinlEiYd1Zdxb5LGppJ8CO4Il0BaXh9OJXyvpHsWNQKpdHAuWqMZpwvPol2ArEPLUCZrcKTHRdqmHlUD66oV6lzb91WT1fmqzQiQLOKl2q4/1674YVM+c1nN/J9u1ImhP1Cpa5gy+FdQj461H+RYwXCvxlWq/kBNyNvBwZ/6k3UCCslAe3/tnWmSODvk4+0rGUr3VI9nccB2JigmiT8uvXoYr+fBnY6Btmq7iJO91ryD85vzFJ7RG07ytVXSL8H7uNJnDAZnh9rRuTaFbu2tbYYXBdIYEKg3zFvT4CeFNtjIUL+aV/lDnQgkKEPffywFlQtfVaMz85l2TaFvoYqAhUFLupyfDLtFX/SQiFyOZ/06twnLU4h+LvNmFqr/4nU7SpqNygkt+glzKMGuO6IwnHhhpI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(186003)(5660300002)(8936002)(54906003)(2906002)(6666004)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 8d0c21fc-f40d-4908-1426-08d90405dab4
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:04.1134
 (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: 1LCOWktncox3jELgWl5IjRr7f65D+6UspiDMbdMPqJ/XiBKwEvdUui2N4EzIWs1Ej1WDbXRgIk9frvcQRG0g6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

Remove the unconditional call to hvm_dpci_msi_eoi in vlapic_handle_EOI
and instead use the newly introduced EOI callback mechanism in order
to register a callback for MSI vectors injected from passed through
devices.

This avoids having multiple callback functions open-coded in
vlapic_handle_EOI, as there is now a generic framework for registering
such callbacks. It also avoids doing an unconditional call to
hvm_dpci_msi_eoi for each EOI processed by the local APIC.

Note that now the callback is only registered (and thus executed) when
there's an MSI interrupt originating from a PCI passthrough device
being injected into the guest, so the check in hvm_dpci_msi_eoi can be
removed as it's already done by hvm_dirq_assist which is the only
caller of vmsi_deliver_pirq.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
Changes since v3:
 - Fix the callback to take a vcpu parameter.

Changes since v2:
 - Expand commit message.
 - Pass the domain as the callback data.
 - Remove the check in hvm_dpci_msi_eoi
---
 xen/arch/x86/hvm/vlapic.c         |  2 --
 xen/arch/x86/hvm/vmsi.c           | 35 ++++++++++++++++++-------------
 xen/drivers/passthrough/x86/hvm.c |  6 ++----
 xen/include/asm-x86/hvm/io.h      |  2 +-
 4 files changed, 24 insertions(+), 21 deletions(-)

diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index 4465beaeec1..cfcbd732b16 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -503,8 +503,6 @@ void vlapic_handle_EOI(struct vlapic *vlapic, u8 vector)
     if ( vlapic_test_vector(vector, &vlapic->regs->data[APIC_TMR]) )
         vioapic_update_EOI(d, vector);
 
-    hvm_dpci_msi_eoi(d, vector);
-
     spin_lock_irqsave(&vlapic->callback_lock, flags);
     callback = vlapic->callbacks[index].callback;
     vlapic->callbacks[index].callback = NULL;
diff --git a/xen/arch/x86/hvm/vmsi.c b/xen/arch/x86/hvm/vmsi.c
index 13e2a190b43..03ae0dfb3c5 100644
--- a/xen/arch/x86/hvm/vmsi.c
+++ b/xen/arch/x86/hvm/vmsi.c
@@ -44,11 +44,9 @@
 #include <asm/event.h>
 #include <asm/io_apic.h>
 
-static void vmsi_inj_irq(
-    struct vlapic *target,
-    uint8_t vector,
-    uint8_t trig_mode,
-    uint8_t delivery_mode)
+static void vmsi_inj_irq(struct vlapic *target, uint8_t vector,
+                         uint8_t trig_mode, uint8_t delivery_mode,
+                         vlapic_eoi_callback_t *callback, void *data)
 {
     HVM_DBG_LOG(DBG_LEVEL_VLAPIC, "vmsi_inj_irq: vec %02x trig %d dm %d\n",
                 vector, trig_mode, delivery_mode);
@@ -57,17 +55,17 @@ static void vmsi_inj_irq(
     {
     case dest_Fixed:
     case dest_LowestPrio:
-        vlapic_set_irq(target, vector, trig_mode);
+        vlapic_set_irq_callback(target, vector, trig_mode, callback, data);
         break;
     default:
         BUG();
     }
 }
 
-int vmsi_deliver(
-    struct domain *d, int vector,
-    uint8_t dest, uint8_t dest_mode,
-    uint8_t delivery_mode, uint8_t trig_mode)
+static int vmsi_deliver_callback(struct domain *d, int vector, uint8_t dest,
+                                 uint8_t dest_mode, uint8_t delivery_mode,
+                                 uint8_t trig_mode,
+                                 vlapic_eoi_callback_t *callback, void *data)
 {
     struct vlapic *target;
     struct vcpu *v;
@@ -78,7 +76,8 @@ int vmsi_deliver(
         target = vlapic_lowest_prio(d, NULL, 0, dest, dest_mode);
         if ( target != NULL )
         {
-            vmsi_inj_irq(target, vector, trig_mode, delivery_mode);
+            vmsi_inj_irq(target, vector, trig_mode, delivery_mode, callback,
+                         data);
             break;
         }
         HVM_DBG_LOG(DBG_LEVEL_VLAPIC, "null MSI round robin: vector=%02x\n",
@@ -89,8 +88,8 @@ int vmsi_deliver(
         for_each_vcpu ( d, v )
             if ( vlapic_match_dest(vcpu_vlapic(v), NULL,
                                    0, dest, dest_mode) )
-                vmsi_inj_irq(vcpu_vlapic(v), vector,
-                             trig_mode, delivery_mode);
+                vmsi_inj_irq(vcpu_vlapic(v), vector, trig_mode, delivery_mode,
+                             callback, data);
         break;
 
     default:
@@ -103,6 +102,13 @@ int vmsi_deliver(
     return 0;
 }
 
+int vmsi_deliver(struct domain *d, int vector, uint8_t dest, uint8_t dest_mode,
+                 uint8_t delivery_mode, uint8_t trig_mode)
+{
+    return vmsi_deliver_callback(d, vector, dest, dest_mode, delivery_mode,
+                                 trig_mode, NULL, NULL);
+}
+
 void vmsi_deliver_pirq(struct domain *d, const struct hvm_pirq_dpci *pirq_dpci)
 {
     uint32_t flags = pirq_dpci->gmsi.gflags;
@@ -119,7 +125,8 @@ void vmsi_deliver_pirq(struct domain *d, const struct hvm_pirq_dpci *pirq_dpci)
 
     ASSERT(pirq_dpci->flags & HVM_IRQ_DPCI_GUEST_MSI);
 
-    vmsi_deliver(d, vector, dest, dest_mode, delivery_mode, trig_mode);
+    vmsi_deliver_callback(d, vector, dest, dest_mode, delivery_mode, trig_mode,
+                          hvm_dpci_msi_eoi, NULL);
 }
 
 /* Return value, -1 : multi-dests, non-negative value: dest_vcpu_id */
diff --git a/xen/drivers/passthrough/x86/hvm.c b/xen/drivers/passthrough/x86/hvm.c
index 351daafdc9b..8f78c0935b9 100644
--- a/xen/drivers/passthrough/x86/hvm.c
+++ b/xen/drivers/passthrough/x86/hvm.c
@@ -796,11 +796,9 @@ static int _hvm_dpci_msi_eoi(struct domain *d,
     return 0;
 }
 
-void hvm_dpci_msi_eoi(struct domain *d, int vector)
+void hvm_dpci_msi_eoi(struct vcpu *v, unsigned int vector, void *unused)
 {
-    if ( !is_iommu_enabled(d) ||
-         (!hvm_domain_irq(d)->dpci && !is_hardware_domain(d)) )
-       return;
+    struct domain *d = v->domain;
 
     spin_lock(&d->event_lock);
     pt_pirq_iterate(d, _hvm_dpci_msi_eoi, (void *)(long)vector);
diff --git a/xen/include/asm-x86/hvm/io.h b/xen/include/asm-x86/hvm/io.h
index 54e0161b492..7f30dfa7fea 100644
--- a/xen/include/asm-x86/hvm/io.h
+++ b/xen/include/asm-x86/hvm/io.h
@@ -142,7 +142,7 @@ struct hvm_hw_stdvga {
 void stdvga_init(struct domain *d);
 void stdvga_deinit(struct domain *d);
 
-extern void hvm_dpci_msi_eoi(struct domain *d, int vector);
+void hvm_dpci_msi_eoi(struct vcpu *v, unsigned int vector, void *unused);
 
 /* Decode a PCI port IO access into a bus/slot/func/reg. */
 unsigned int hvm_pci_decode_addr(unsigned int cf8, unsigned int addr,
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:09:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:09:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113744.216781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr41-0000ri-GF; Tue, 20 Apr 2021 14:09:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113744.216781; Tue, 20 Apr 2021 14: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 1lYr41-0000ra-CP; Tue, 20 Apr 2021 14:09:17 +0000
Received: by outflank-mailman (input) for mailman id 113744;
 Tue, 20 Apr 2021 14:09:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr40-0000qj-6S
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:09:16 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4c5fcd7b-059d-449d-b6a1-1262e4332ba8;
 Tue, 20 Apr 2021 14:09: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: 4c5fcd7b-059d-449d-b6a1-1262e4332ba8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927754;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=XQQo+UyiEnKDykIOKcT5B7KoIgTn/5t8tBBIxiebRuA=;
  b=g6cqSlbFp3MVGslZwwKsJiEicR4L1hZwVrC/AV/8BfUcHRVfBzMyr4EQ
   MEl1cQOEmnNKPZKR6O+ShJXWUJLHqmA715q+PjLEJm3D917jsK3D/GuXx
   LUcEgTOhIp4R/QFUdVi5/k+w6P4LinbdOrOFcjD2GnigE040yHby6J+tK
   M=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 359FTVPIxL1i6dugwP4LUhyMs5FK4JZoP1ym8oRSVvpWIFa4+ZnzTylfETKc9HY+uIlcDujUdQ
 KfXnWa7VdX8YW5sP8znDRMdfMC2CVw5RslVckglmuC2x+wv6U7yn1GNT/fpLlPohsZJ7+nEUfp
 4ScJiw50QlIywTohYy6rkEvqHoU/y4nfx6BRUqerQr/JJ6LRzAW9iaYfY62wmZQ2MhC7+kj/+X
 Euk53YKyOqu4jQw9pRc2CobWDe27Le3hmzEXEE/ObvxGPV5yBCws26J57Wop6unaxKDHxJPCZt
 lJs=
X-SBRS: 5.2
X-MesageID: 43472900
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:mAnh/Ku2wZb3A3DO4NdOgOZi7skC84Yji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwTeCBtA50lGJ
 2Aovddrz27dngNKui9DH8JX+/Mzue76K7OSxgAGhIh9U2ynSqlgYSKbiSw8zU/d3d0wbkk+X
 XYiACR3Muemtyy1xO07R600714g93ko+EzZvCkqs9QETn0jxbtWYIJYcz4gBkQgMWCrGkni8
 PNpRBIBbUC11r0cnuuqRXgnynMuQxekkPK8lOTjXv9rcGRfltTYKAg9OEpACfx0EYusMpx16
 hGxQuixuBqJCjNgTjn4JzwXwxq/3DE0EYKq/IZjHBUTOIlGdhshLEYlXkldasoLWbR7YAqF/
 RWF8fM5PpaWkPyVQGmgkBfhPOrRXg9BRGAXwwrvdGUySFfmDRDw1If39F3pAZNyLsND71/o8
 jUOKVhk79DCucQcKJGHe8EBe+6EHbETx7gOH+bSG6XW50vCjbokdra8b817OaldNgj150pgq
 nMV1teqCobZ1/uIdfm5uwKzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQkBNHBUf
 rbAuMWP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5u3RLInHsfHabebzKLLhHS1MYBK8Pl
 IzGBzIYOlQ5EGiXXH1xDLLXWn2R0D59ZVsVIjWltJjjbQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eerWmy9mDY0nVxNnNmfwJoyYSld0kPiR4BMkvyf7pGkc6YY3pu0HyOIQI6aM/KDg
 hFpRBS9bisJ5KdgQAuYujXfF6yvj82njanXp0ckqqM6YPOYZUjFKsrX6R3CEHsDBx6mQFjrU
 9Zcw8aTkrjFjfj4J/Vz6A8NaX6TZ1RkQ2rKclbpTb0rkOHv/wiQXMdQnqTS8KNuB0vQDBVn1
 V11KcajNO76HGSAFp6pN59HExHaWyRDr4DKAiefo1blormfxxKQX6QiSaXjAwyfWTW51wf71
 aRXhG8SLXuOB5wq3pY2qHl/BdPemKRc1lZR1p6vYd+fF628Upb4KuuXO6ewmGRYlwNzqUhKz
 nDeyIVOR4r7cuwzgSplDGLEmgGyp0iMvfGNqkqd6je1xqWWcu1vJBDO8UR0IduNdjovONObP
 mWfBWNKijkT8wuwA6Yqx8eSV9JgUhhtcmt/hLr7GK1hiFiRdXTJUlrXLEdLZW36XP+S/OBzZ
 V+ipYUsIKLQxHMQ+/D7ZuSSThJbi73iyqRacoDrJhPp6I8tLdpBfDgIHP1/UAC+C97Fdv+kU
 MVfb9y77/AMLJ+ZsB6QVMtwnMZ0PC0aHYxugP4AuUCbUggon/SMdSO+afJo9MUczq8jTq1HV
 Ge9iFHls21Jxer5Po/C6gqJ35RZ1V5wHN+/Pmaf4m4MnThS8hzuH67OGS6arlTVeysHqgRtA
 9z55Wtk/WMfyT1nCDWsj0TGNMCz0+XBeezChmLA+hG7piTPkmNmLKj5IqLtwjMIAHLIngwtM
 libkwfbsNKlzkkgskW60GJO9PKi3NgtUBf7zFhnkPqwa687g7gbBh7DTE=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="43472900"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gu0X2DVzl3E0kK4Np/h/hU8SvDl4Ca678/RO3FK1aG0q6bQ27S4f7ROA0pRh/UeAj5QcA75doN7BmBYoXyLXIOPDxTokzIA3F3jZBcbAAhaI7d1eN6KQ+maE8PrnInMjM7Po/yFQq/g8b5zgQ5ZGEqAVzRHPh0/4tDtloe0uwZbfqvH0ZthXi7ajmmk1li+Yob0Oh3GFIEJ/GQclFws12/XJR9Yp6hWSdM3TEXzuB0Kj/6sclLfWjTLL3ASd2aN979VowpH0Vn7mUbNF7/ImsMMKIrnsB/mkU0lguHA9NdOQu3tOsGa6/Vho4PlYVKgTxUZUG+h2W6zOAufvk30JUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EAVYWt8cwqiJEsl3boupKExscC+f1qGYrfZepi9qBqk=;
 b=ffId/gFrMJM+wbLq/BZ/BtRueP6XgtizOpV3U1PwW+betf8xJ/LToNafZ72HQ6QXW0N/Gd4aSO25JjstDLfGy++z2l3DtCf5hSAgzB1SxZhOizBNX0uwLDS4MGATnZQphml9GJ8J/qdOIbOqqKaoZEnUo2bRiQyFTJ2Cq1ipI8yFn+MrINdA8cBehh8FQ/DmvQUWr/HcRQatYxX8bb1Z4cuMsqEiibuB8nR6JNMlTSI0TNLbEG8DIEVbOVw3V+Vh9mwL/nmX0Vty5NnecL9IER/4hVgmhPth/QYSSa3N9R/Z9tnWqS30VQu6seL52Y5cj6cvhACzLa6KH99ijp29LA==
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=EAVYWt8cwqiJEsl3boupKExscC+f1qGYrfZepi9qBqk=;
 b=KKiHhQ8YRqkbwnqWhyBYCH2UlyzT89xayMIHPi7NVuJ+pAXWSRb4ryvXTryuvQM4n4QxYRDE8TVedKP12DfakkV63Uj+VqdUfDOF+2m5jg0EwTIlkuhWxHhPUSW5RQZF62SJ8ZB4ucnJ3L3ya78OHo7fFP0IXtQqmpJN5xCX3hA=
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 v4 04/12] x86/vioapic: switch to use the EOI callback mechanism
Date: Tue, 20 Apr 2021 16:07:15 +0200
Message-ID: <20210420140723.65321-5-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0057.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::21) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a7003a25-4ee1-4177-b819-08d90405dfa5
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB600020BEB89EF0340C968ED88F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2331;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Uv6DIkU1dneT/gasCrXcs9KaHNMbUpMZ+Qiyu5Ec9EDFqAIzzGAA6XXL9Ga6LLfBEKHfdHrgHywFUOwtxQlA51a8eEzG+7+uc9hdQ2ylOpfYYkQH3sbjpK53VtXNFPC/2EAbq3yU5fUsF7McJ4NyYGNIGXhES+t6jNzIBEf7sIEeKTRMFx7yYXjN5M7czFa9JF8Vg5g+uwBrPm/9jDKbZbBOwaFz1B0T0W8cCxJ7MoCWRK7SQlKzyeixpm2PLJvMRkx1+912SDR51VNYDjmGotdvt/DubvDJ4DKrw4u4HzbHMP3E3mIU1IdmixfUxJlp/JP7MiHsQYUHinz8j91raDHM7GehQ5SncJIZzyMCMSf6ZosoTZ0tKNDgGFgPjtndx7QSg0yy/C+tPIfZxM76SXCC026mnHe9vt4Ytp8uThLGcvKBO4/j3+HqgXl3AMUqEgLrVhtzeEGIkq5F5KFSCi2KXe+wgOOBV+WmUwgIB1iqpfU7m9A0LD1HaUFi4FCEq3QVPwHYpvuFY2TjFlFjSS4BJ21ciliNeIJKEfqGbnd2k+Vd7X4AY99M9Ke5zzuKhsUE3qM9FXsCFeLG7yiRLy35UcBeDBq+C+xrBVZB0fI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(186003)(5660300002)(8936002)(54906003)(2906002)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?1dzTBJ+jeFw0YUUGX+GQn8aNFd/6oDdlysjbr/B?=
X-MS-Exchange-CrossTenant-Network-Message-Id: a7003a25-4ee1-4177-b819-08d90405dfa5
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:12.4128
 (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: gV7CrDItzzwso2IBnLgM+8Is7ncmIpN6v4VLIe90XMifPGJ1Gk64hdNsGXvc257h39LcP8O+x8aIv4oGtig6bA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

Switch the emulated IO-APIC code to use the local APIC EOI callback
mechanism. This allows to remove the last hardcoded callback from
vlapic_handle_EOI. Removing the hardcoded vIO-APIC callback also
allows to getting rid of setting the EOI exit bitmap based on the
triggering mode, as now all users that require an EOI action use the
newly introduced callback mechanism.

Move and rename the vioapic_update_EOI now that it can be made static.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v3:
 - Remove assert in eoi_callback.
 - Cast callback to bool.
 - Simplify check in ioapic_load: GSIs < 16 and edge interrupts can
   also have callbacks.
 - Reword comment about casting to boolean.

Changes since v2:
 - Explicitly convert the last alternative_vcall parameter to a
   boolean in vlapic_set_irq_callback.

Changes since v1:
 - Remove the triggering check in the update_eoi_exit_bitmap call.
 - Register the vlapic callbacks when loading the vIO-APIC state.
 - Reduce scope of ent.
---
 xen/arch/x86/hvm/vioapic.c | 127 ++++++++++++++++++++++++-------------
 xen/arch/x86/hvm/vlapic.c  |  12 ++--
 2 files changed, 89 insertions(+), 50 deletions(-)

diff --git a/xen/arch/x86/hvm/vioapic.c b/xen/arch/x86/hvm/vioapic.c
index 87370dd4172..1c2763fc2bf 100644
--- a/xen/arch/x86/hvm/vioapic.c
+++ b/xen/arch/x86/hvm/vioapic.c
@@ -394,6 +394,48 @@ static const struct hvm_mmio_ops vioapic_mmio_ops = {
     .write = vioapic_write
 };
 
+static void eoi_callback(struct vcpu *v, unsigned int vector, void *data)
+{
+    struct domain *d = v->domain;
+    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
+    unsigned int i;
+
+    spin_lock(&d->arch.hvm.irq_lock);
+
+    for ( i = 0; i < d->arch.hvm.nr_vioapics; i++ )
+    {
+        struct hvm_vioapic *vioapic = domain_vioapic(d, i);
+        unsigned int pin;
+
+        for ( pin = 0; pin < vioapic->nr_pins; pin++ )
+        {
+            union vioapic_redir_entry *ent = &vioapic->redirtbl[pin];
+
+            if ( ent->fields.vector != vector )
+                continue;
+
+            ent->fields.remote_irr = 0;
+
+            if ( is_iommu_enabled(d) )
+            {
+                spin_unlock(&d->arch.hvm.irq_lock);
+                hvm_dpci_eoi(d, vioapic->base_gsi + pin);
+                spin_lock(&d->arch.hvm.irq_lock);
+            }
+
+            if ( (ent->fields.trig_mode == VIOAPIC_LEVEL_TRIG) &&
+                 !ent->fields.mask && !ent->fields.remote_irr &&
+                 hvm_irq->gsi_assert_count[vioapic->base_gsi + pin] )
+            {
+                ent->fields.remote_irr = 1;
+                vioapic_deliver(vioapic, pin);
+            }
+        }
+    }
+
+    spin_unlock(&d->arch.hvm.irq_lock);
+}
+
 static void ioapic_inj_irq(
     struct hvm_vioapic *vioapic,
     struct vlapic *target,
@@ -407,7 +449,8 @@ static void ioapic_inj_irq(
     ASSERT((delivery_mode == dest_Fixed) ||
            (delivery_mode == dest_LowestPrio));
 
-    vlapic_set_irq(target, vector, trig_mode);
+    vlapic_set_irq_callback(target, vector, trig_mode,
+                            trig_mode ? eoi_callback : NULL, NULL);
 }
 
 static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
@@ -514,49 +557,6 @@ void vioapic_irq_positive_edge(struct domain *d, unsigned int irq)
     }
 }
 
-void vioapic_update_EOI(struct domain *d, u8 vector)
-{
-    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
-    union vioapic_redir_entry *ent;
-    unsigned int i;
-
-    ASSERT(has_vioapic(d));
-
-    spin_lock(&d->arch.hvm.irq_lock);
-
-    for ( i = 0; i < d->arch.hvm.nr_vioapics; i++ )
-    {
-        struct hvm_vioapic *vioapic = domain_vioapic(d, i);
-        unsigned int pin;
-
-        for ( pin = 0; pin < vioapic->nr_pins; pin++ )
-        {
-            ent = &vioapic->redirtbl[pin];
-            if ( ent->fields.vector != vector )
-                continue;
-
-            ent->fields.remote_irr = 0;
-
-            if ( is_iommu_enabled(d) )
-            {
-                spin_unlock(&d->arch.hvm.irq_lock);
-                hvm_dpci_eoi(d, vioapic->base_gsi + pin);
-                spin_lock(&d->arch.hvm.irq_lock);
-            }
-
-            if ( (ent->fields.trig_mode == VIOAPIC_LEVEL_TRIG) &&
-                 !ent->fields.mask && !ent->fields.remote_irr &&
-                 hvm_irq->gsi_assert_count[vioapic->base_gsi + pin] )
-            {
-                ent->fields.remote_irr = 1;
-                vioapic_deliver(vioapic, pin);
-            }
-        }
-    }
-
-    spin_unlock(&d->arch.hvm.irq_lock);
-}
-
 int vioapic_get_mask(const struct domain *d, unsigned int gsi)
 {
     unsigned int pin = 0; /* See gsi_vioapic */
@@ -610,6 +610,8 @@ static int ioapic_save(struct vcpu *v, hvm_domain_context_t *h)
 static int ioapic_load(struct domain *d, hvm_domain_context_t *h)
 {
     struct hvm_vioapic *s;
+    unsigned int i;
+    int rc;
 
     if ( !has_vioapic(d) )
         return -ENODEV;
@@ -620,7 +622,42 @@ static int ioapic_load(struct domain *d, hvm_domain_context_t *h)
          d->arch.hvm.nr_vioapics != 1 )
         return -EOPNOTSUPP;
 
-    return hvm_load_entry(IOAPIC, h, &s->domU);
+    rc = hvm_load_entry(IOAPIC, h, &s->domU);
+    if ( rc )
+        return rc;
+
+    for ( i = 0; i < ARRAY_SIZE(s->domU.redirtbl); i++ )
+    {
+        const union vioapic_redir_entry *ent = &s->domU.redirtbl[i];
+        unsigned int vector = ent->fields.vector;
+        unsigned int delivery_mode = ent->fields.delivery_mode;
+        struct vcpu *v;
+
+        /*
+         * Add a callback for each possible vector injected by a redirection
+         * entry.
+         */
+        if ( delivery_mode != dest_LowestPrio && delivery_mode != dest_Fixed )
+            continue;
+
+        for_each_vcpu ( d, v )
+        {
+            struct vlapic *vlapic = vcpu_vlapic(v);
+
+            /*
+             * NB: if the vlapic registers were restored before the vio-apic
+             * ones we could test whether the vector is set in the vlapic IRR
+             * or ISR registers before unconditionally setting the callback.
+             * This is harmless as eoi_callback is capable of dealing with
+             * spurious callbacks.
+             */
+            if ( vlapic_match_dest(vlapic, NULL, 0, ent->fields.dest_id,
+                                   ent->fields.dest_mode) )
+                vlapic_set_callback(vlapic, vector, eoi_callback, NULL);
+        }
+    }
+
+    return 0;
 }
 
 HVM_REGISTER_SAVE_RESTORE(IOAPIC, ioapic_save, ioapic_load, 1, HVMSR_PER_DOM);
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index cfcbd732b16..8f3a0a2e8f7 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -194,7 +194,13 @@ void vlapic_set_irq_callback(struct vlapic *vlapic, uint8_t vec, uint8_t trig,
 
     if ( hvm_funcs.update_eoi_exit_bitmap )
         alternative_vcall(hvm_funcs.update_eoi_exit_bitmap, target, vec,
-                          trig || callback);
+                          /*
+                           * NB: need to explicitly convert to boolean to avoid
+                           * truncation wrongly resulting in false getting
+                           * passed, for example when the pointer sits on a
+                           * page boundary.
+                           */
+                          (bool)callback);
 
     if ( hvm_funcs.deliver_posted_intr )
         alternative_vcall(hvm_funcs.deliver_posted_intr, target, vec);
@@ -494,15 +500,11 @@ void vlapic_EOI_set(struct vlapic *vlapic)
 void vlapic_handle_EOI(struct vlapic *vlapic, u8 vector)
 {
     struct vcpu *v = vlapic_vcpu(vlapic);
-    struct domain *d = v->domain;
     vlapic_eoi_callback_t *callback;
     void *data;
     unsigned long flags;
     unsigned int index = vector - 16;
 
-    if ( vlapic_test_vector(vector, &vlapic->regs->data[APIC_TMR]) )
-        vioapic_update_EOI(d, vector);
-
     spin_lock_irqsave(&vlapic->callback_lock, flags);
     callback = vlapic->callbacks[index].callback;
     vlapic->callbacks[index].callback = NULL;
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:09:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:09:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113751.216793 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr4B-0000zj-Vs; Tue, 20 Apr 2021 14:09:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113751.216793; Tue, 20 Apr 2021 14: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 1lYr4B-0000zc-RP; Tue, 20 Apr 2021 14:09:27 +0000
Received: by outflank-mailman (input) for mailman id 113751;
 Tue, 20 Apr 2021 14:09:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr4A-0000xF-57
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:09:26 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3cab99db-c0af-4678-860c-b9fc2fbe1bc7;
 Tue, 20 Apr 2021 14:09: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: 3cab99db-c0af-4678-860c-b9fc2fbe1bc7
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927763;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=0s7aVVBVS2fLG2pkS1fRgQ/80/jj5QyxHMvZXbRPV0E=;
  b=BufJS5iP07+tn/7klwMJPVDpAAKMLV7P7ydmYAavOc3/VwK6s5UMidvg
   Bi+AobmPjShrzOkeI2CeahzNRAYE7Dy6dudyyXkt1IGW0nAOT+/MPMyEr
   XwoNbwQbpmTFjTj8cnMQrrU7ShLY5uXbTvQTPyCiadX+82zrVm6t1JWth
   M=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: tilQJMXij9K0GXUMIJGD/a+1WX3Zh0iW5BWtQccAQqBlZIT9zEwRMOl+s5HtAyJBgy16+jrgit
 nUIg0lur4NopJ3XnmvJMVHRnbymKwfVWu/DtCvcR7uSSLKoXkLxZ/BHFIJJHusI6cZTy2c0/JU
 A9PE572qIQEuQUDKCmqnVNlAul9N9laQlL/SSLK2FdjNE3wUDJqXxTLs54iZXJ7wu3mMdL8agH
 AljpeovIO9GJt1eZ7J1a+K6uwq6m8XhwiUO6OMS6kbBH3Mq9JZjsH3mOWg8GC4Y1gM2xgIh+aF
 9Jg=
X-SBRS: 5.2
X-MesageID: 42368653
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:IDnhf6tmfrwEyfF3v84ku8yQ7skC84Yji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwTeCBtA50lGJ
 2Aovddrz27dngNKui9DH8JX+/Mzue76K7OSxgAGhIh9U2ynSqlgYSKbiSw8zU/d3d0wbkk+X
 XYiACR3Muemtyy1xO07R600714g93ko+EzZvCkqs9QETn0jxbtWYIJYcz4gBkQgMWCrGkni8
 PNpRBIBbUC11r0cnuuqRXgnynMuQxekkPK8lOTjXv9rcGRfltTYKAg9OEpACfx0EYusMpx16
 hGxQuixuBqJCjNgTjn4JzwXwxq/3DE0EYKq/IZjHBUTOIlGdhshLEYlXkldasoLWbR7YAqF/
 RWF8fM5PpaWkPyVQGmgkBfhPOrRXg9BRGAXwwrvdGUySFfmDRDw1If39F3pAZNyLsND71/o8
 jUOKVhk79DCucQcKJGHe8EBe+6EHbETx7gOH+bSG6XW50vCjbokdra8b817OaldNgj150pgq
 nMV1teqCobZ1/uIdfm5uwKzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQkBNHBUf
 rbAuMWP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5u3RLInHsfHabebzKLLhHS1MYBK8Pl
 IzGBzIYOlQ5EGiXXH1xDLLXWn2R0D59ZVsVIjWltJjjbQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eerWmy9mDY0nVxNnNmfwJoyYSld0kPiR4BMkvyf7pGkc6YY3pu0HyOIQI6aM/KDg
 hFpRBS9bisJ5KdgQAuYujXfF6yvj82njanXp0ckqqM6YPOYZUjFKsrX6R3CEHsDBx6mQFjrU
 9Zcw8aTkrjFjfj4J/Vz6A8NaX6TZ1RkQ2rKclbpTb0rkOHv/wiQXMdQnqTS8KNuB0vQDBVn1
 V11KcajNO76HGSAFp6pN59HExHaWyRDr4DKAiefo1blormfxxKQX6QiSaXjAwyfWTW51wf71
 aRXhG8SLXuOB5wq3pY2qHl/BdPemKRc1lZR1p6vYd+fF628Upb4KuuXO6ewmGRYlwNzqUhKz
 nDeyIVOR4r7cuwzgSplDGLEmgGyp0iMvfGNqkqd6je1xqWWcu1vJBDO8UR0IduNdjovONObP
 mWfBWNKijkT8wuwA6Yqx8eSV9JgUhhtcmt/hLr7GK1hiFiRdXTJUlrXLEdLZW36XP+S/OBzZ
 V+ipYUsIKLQxHMQ+/D7ZuSSThJbi73iyqRacoDrJhPp6I8tLdpBfDgIHP1/UAC+C97Fdv+kU
 MVfb9y77/AMLJ+ZsB6QVMtwnMZ0PC0aHYxugP4AuUCbUggon/SMdSO+afJo9MUczq8jTq1HV
 Ge9iFHls21Jxer5Po/C6gqJ35RZ1V5wHN+/Pmaf4m4MnThS8hzuH67OGS6arlTVeysHqgRtA
 9z55Wtk/WMfyT1nCDWsj0TGNMCz0+XBeezChmLA+hG7piTPkmNmLKj5IqLtwjMIAHLIngwtM
 libkwfbsNKlzkkgskW60GJO9PKi3NgtUBf7zFhnkPqwa687g7gbBh7DTE=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="42368653"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mDJsM29OGW7dknyQq0JtZV4q2jreQlTDwCeaXQHXYHZgqS8kcKuY/aGbbw6JKHMQz/HQrOQXQ3G4esXIOkx2xBkfr3EsNLkVR68vgr+kX1CYr1IhwHzYIECnNAJ/fGaQeAUTp3QrLrppZRWz3urY4VTEyAFIzEIAP7wZn2pIlZsCO1rBc/NG3yxqAJLDk0rXtd+mugKBNBhe7c2M1a4y13EJ1W2eWP2D8tcGDLX1S5KXCjIMUJDmM5N4ruCix1VjBrx4YscvuNbz2PglnPSXU+/LDCzVPMcmsa8Gq3kZ6KD5vs3ToOJWx6R1pVqC53KUC0bSp0sSEV4wa8K/9EVxPw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WuvrOYUoKMt59jYrBDWLY98/dORJ+acGdZP4gZpz1qE=;
 b=fBKYCarmsg4M+0OgSsjFiYFvJdoXkSI76c0DrXi73YtiE/vg4q7gQ/Emqb2XZL8uKYLWEHJypbstTOBMMQpU2Ij/MwTE9pq5jGnrMTRVnBcTRb3L+0G9JobrmLRQ/4+91uWf01nZRHEGJ3BKtA2iPeRizl+iwQrOAYVfTh8xzz8nYPIyewcGKFXnZtilx0zYRZRRsuv92RL6j2VZ2LU+NnN6zloHiGoUULFcP+tubpxsm4elbR6fe+67/GI8hAdi57XPApmBcWjvtvR1qYVh9mjxohEDCJ//qE32ULP1uVHtfCgm/m/6+6e2Bh0SQNtXNjjItXsNoBgiMlwxBSvtvw==
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=WuvrOYUoKMt59jYrBDWLY98/dORJ+acGdZP4gZpz1qE=;
 b=J+al99CL923f2pPoNBVDPwF7HSTB7tjbJL2kubhE1FvUVQlOeBa2zBJpyK9CHy735xybmuOCfwlnfRS28oL0EUlOdQEOBDTiFQc8PIZlAxbrVrnUvQT0nUrg78j7h3nWNePuvVvBdPS8xj3xqFUeA+MmlFDei50drMZs1ZrncGY=
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 v4 05/12] x86/hvm: allowing registering EOI callbacks for GSIs
Date: Tue, 20 Apr 2021 16:07:16 +0200
Message-ID: <20210420140723.65321-6-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0069.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::33) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: fc0491ed-6857-410d-b4a3-08d90405e3fc
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB6000BF097ED7B606838694C88F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: o822bY2QnQOlyMm4PJh6V4+Fn5jOb6uioDxSxc7GOeDsVN07idmFXntCSmFnVqgq9jYSuJX2HuPS1KO5CwcuW8wXyUaN78b5N45v9P6UbB3Lz3mSR/W5d1jzxwCEouVVN7UfJlDUVE4WYe25QdzsWc9XLl0GlHodACI2wANhdlaJ2HibgGK1LVVzGRH0kiECf4WneQltuiiLO0+2lgZY7EgWNFGhC7Jm58T+SSA5QVbJvW0ekDpmWH8S2lrEQmnHNzNrqEDI6SeCNUnYJhjq0B+QNk6M4Hg2yIRkfWlH7aIN8B7hayscxTqp/FxSBuqSPuvvKr7fsRM/utp+ANHZGgUaTxwrmmIlpJJLKE1HKdQlhOWnMsr3PkCpI+pOQGtfAmo68BsUwjhTHz6QexeTWq+j9wEnPukL3KwLDJ5i5srGeOxJh2sw8yXkt0wpvuaSjH1GerhOZf7LkWNRDtIhzlhxjGU2PA5a30s+2W+XnRmR74N37BHnvWgT1vyVtcFC8IZ5XmDtLpVoizTuMa2jTpgPuufUWONEd5kwgjCEliv31UDut2Yeiew2Et7n0JKW9ClVkf9xzz0KtBIkmTtYkqW5bjhKRtCh/E/lxtzIiFU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(30864003)(186003)(5660300002)(8936002)(54906003)(2906002)(6666004)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: fc0491ed-6857-410d-b4a3-08d90405e3fc
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:19.6948
 (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: xU8tmMK840JauyIdZNkeTtL9ap38E7qx6/dnIzptd0ZuDNFnz+27PJ2GvYfpTU0UWTgFs1iXLgVBIQSg0ipl+g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

Such callbacks will be executed once a EOI is performed by the guest,
regardless of whether the interrupts are injected from the vIO-APIC or
the vPIC, as ISA IRQs are translated to GSIs and then the
corresponding callback is executed at EOI.

The vIO-APIC infrastructure for handling EOIs is build on top of the
existing vlapic EOI callback functionality, while the vPIC one is
handled when writing to the vPIC EOI register.

Note that such callbacks need to be registered and de-registered, and
that a single GSI can have multiple callbacks associated. That's
because GSIs can be level triggered and shared, as that's the case
with legacy PCI interrupts shared between several devices.

Strictly speaking this is a non-functional change, since there are no
users of this new interface introduced by this change.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v3:
 - Make callback take a domain parameter.
 - Return whether the unregistered callback was found.
 - Add a comment regarding the result of hvm_gsi_has_callbacks being
   stable.

Changes since v2:
 - Latch hvm_domain_irq in some functions.
 - Make domain parameter of hvm_gsi_has_callbacks const.
 - Add comment about dropping the lock around the
   hvm_gsi_execute_callbacks call.
 - Drop change to ioapic_load.

Changes since v1:
 - New in this version.
---
 xen/arch/x86/hvm/hvm.c        | 15 ++++++-
 xen/arch/x86/hvm/irq.c        | 75 +++++++++++++++++++++++++++++++++++
 xen/arch/x86/hvm/vioapic.c    | 29 +++++++++++---
 xen/arch/x86/hvm/vpic.c       |  4 ++
 xen/include/asm-x86/hvm/irq.h | 21 ++++++++++
 5 files changed, 137 insertions(+), 7 deletions(-)

diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
index ae37bc434ae..2c4dd1b86f2 100644
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -608,7 +608,7 @@ static int hvm_print_line(
 
 int hvm_domain_initialise(struct domain *d)
 {
-    unsigned int nr_gsis;
+    unsigned int nr_gsis, i;
     int rc;
 
     if ( !hvm_enabled )
@@ -656,6 +656,14 @@ int hvm_domain_initialise(struct domain *d)
     BUILD_BUG_ON(NR_HVM_DOMU_IRQS < NR_ISAIRQS);
     ASSERT(hvm_domain_irq(d)->nr_gsis >= NR_ISAIRQS);
 
+    /* Initialize the EOI callback list. */
+    hvm_domain_irq(d)->gsi_callbacks = xmalloc_array(struct list_head, nr_gsis);
+    if ( !hvm_domain_irq(d)->gsi_callbacks )
+        goto fail1;
+    rwlock_init(&hvm_domain_irq(d)->gsi_callbacks_lock);
+    for ( i = 0; i < nr_gsis; i++ )
+        INIT_LIST_HEAD(&hvm_domain_irq(d)->gsi_callbacks[i]);
+
     /* need link to containing domain */
     d->arch.hvm.pl_time->domain = d;
 
@@ -715,6 +723,8 @@ int hvm_domain_initialise(struct domain *d)
  fail1:
     if ( is_hardware_domain(d) )
         xfree(d->arch.hvm.io_bitmap);
+    if ( hvm_domain_irq(d) )
+        XFREE(hvm_domain_irq(d)->gsi_callbacks);
     XFREE(d->arch.hvm.params);
     XFREE(d->arch.hvm.irq);
  fail0:
@@ -777,6 +787,9 @@ void hvm_domain_destroy(struct domain *d)
     vioapic_deinit(d);
 
     XFREE(d->arch.hvm.pl_time);
+
+    if ( hvm_domain_irq(d) )
+        XFREE(hvm_domain_irq(d)->gsi_callbacks);
     XFREE(d->arch.hvm.irq);
 
     list_for_each_safe ( ioport_list, tmp, &d->arch.hvm.g2m_ioport_list )
diff --git a/xen/arch/x86/hvm/irq.c b/xen/arch/x86/hvm/irq.c
index 38ac5fb6c7c..4825a387bdc 100644
--- a/xen/arch/x86/hvm/irq.c
+++ b/xen/arch/x86/hvm/irq.c
@@ -595,6 +595,81 @@ int hvm_local_events_need_delivery(struct vcpu *v)
     return !hvm_interrupt_blocked(v, intack);
 }
 
+int hvm_gsi_register_callback(struct domain *d, unsigned int gsi,
+                              struct hvm_gsi_eoi_callback *cb)
+{
+    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
+
+    if ( gsi >= hvm_irq->nr_gsis )
+    {
+        ASSERT_UNREACHABLE();
+        return -EINVAL;
+    }
+
+    write_lock(&hvm_irq->gsi_callbacks_lock);
+    list_add(&cb->list, &hvm_irq->gsi_callbacks[gsi]);
+    write_unlock(&hvm_irq->gsi_callbacks_lock);
+
+    return 0;
+}
+
+int hvm_gsi_unregister_callback(struct domain *d, unsigned int gsi,
+                                struct hvm_gsi_eoi_callback *cb)
+{
+    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
+    const struct list_head *tmp;
+    bool found = false;
+
+    if ( gsi >= hvm_irq->nr_gsis )
+    {
+        ASSERT_UNREACHABLE();
+        return -EINVAL;
+    }
+
+    write_lock(&hvm_irq->gsi_callbacks_lock);
+    list_for_each ( tmp, &hvm_irq->gsi_callbacks[gsi] )
+        if ( tmp == &cb->list )
+        {
+            list_del(&cb->list);
+            found = true;
+            break;
+        }
+    write_unlock(&hvm_irq->gsi_callbacks_lock);
+
+    return found ? 0 : -ENOENT;
+}
+
+void hvm_gsi_execute_callbacks(struct domain *d, unsigned int gsi)
+{
+    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
+    struct hvm_gsi_eoi_callback *cb;
+
+    read_lock(&hvm_irq->gsi_callbacks_lock);
+    list_for_each_entry ( cb, &hvm_irq->gsi_callbacks[gsi], list )
+        cb->callback(d, gsi, cb->data);
+    read_unlock(&hvm_irq->gsi_callbacks_lock);
+}
+
+bool hvm_gsi_has_callbacks(const struct domain *d, unsigned int gsi)
+{
+    struct hvm_irq *hvm_irq = hvm_domain_irq(d);
+    bool has_callbacks;
+
+    /*
+     * Note that by the point the function returns the result could be stale,
+     * however the result is only used to decide whether a callback should be
+     * added when injecting a vio-apic vector to the vlapic and all users of
+     * the callbacks interface should always register the callback before
+     * triggering an interrupt.
+     */
+
+    read_lock(&hvm_irq->gsi_callbacks_lock);
+    has_callbacks = !list_empty(&hvm_irq->gsi_callbacks[gsi]);
+    read_unlock(&hvm_irq->gsi_callbacks_lock);
+
+    return has_callbacks;
+}
+
 static void irq_dump(struct domain *d)
 {
     struct hvm_irq *hvm_irq = hvm_domain_irq(d);
diff --git a/xen/arch/x86/hvm/vioapic.c b/xen/arch/x86/hvm/vioapic.c
index 1c2763fc2bf..0824ede91ab 100644
--- a/xen/arch/x86/hvm/vioapic.c
+++ b/xen/arch/x86/hvm/vioapic.c
@@ -285,6 +285,7 @@ static void vioapic_write_redirent(
             ASSERT(prev_level);
             ASSERT(!top_word);
             hvm_dpci_eoi(d, gsi);
+            hvm_gsi_execute_callbacks(d, gsi);
     }
 
     if ( is_hardware_domain(d) && unmasked )
@@ -410,6 +411,7 @@ static void eoi_callback(struct vcpu *v, unsigned int vector, void *data)
         for ( pin = 0; pin < vioapic->nr_pins; pin++ )
         {
             union vioapic_redir_entry *ent = &vioapic->redirtbl[pin];
+            unsigned int gsi = vioapic->base_gsi + pin;
 
             if ( ent->fields.vector != vector )
                 continue;
@@ -419,13 +421,25 @@ static void eoi_callback(struct vcpu *v, unsigned int vector, void *data)
             if ( is_iommu_enabled(d) )
             {
                 spin_unlock(&d->arch.hvm.irq_lock);
-                hvm_dpci_eoi(d, vioapic->base_gsi + pin);
+                hvm_dpci_eoi(d, gsi);
                 spin_lock(&d->arch.hvm.irq_lock);
             }
 
+            /*
+             * Callbacks don't expect to be executed with any lock held, so
+             * drop the lock that protects the vIO-APIC fields from changing.
+             *
+             * Note that the redirection entry itself cannot go away, so upon
+             * retaking the lock we only need to avoid making assumptions on
+             * redirection entry field values (ie: recheck the IRR field).
+             */
+            spin_unlock(&d->arch.hvm.irq_lock);
+            hvm_gsi_execute_callbacks(d, gsi);
+            spin_lock(&d->arch.hvm.irq_lock);
+
             if ( (ent->fields.trig_mode == VIOAPIC_LEVEL_TRIG) &&
                  !ent->fields.mask && !ent->fields.remote_irr &&
-                 hvm_irq->gsi_assert_count[vioapic->base_gsi + pin] )
+                 hvm_irq->gsi_assert_count[gsi] )
             {
                 ent->fields.remote_irr = 1;
                 vioapic_deliver(vioapic, pin);
@@ -441,7 +455,8 @@ static void ioapic_inj_irq(
     struct vlapic *target,
     uint8_t vector,
     uint8_t trig_mode,
-    uint8_t delivery_mode)
+    uint8_t delivery_mode,
+    bool callback)
 {
     HVM_DBG_LOG(DBG_LEVEL_IOAPIC, "irq %d trig %d deliv %d",
                 vector, trig_mode, delivery_mode);
@@ -450,7 +465,7 @@ static void ioapic_inj_irq(
            (delivery_mode == dest_LowestPrio));
 
     vlapic_set_irq_callback(target, vector, trig_mode,
-                            trig_mode ? eoi_callback : NULL, NULL);
+                            callback ? eoi_callback : NULL, NULL);
 }
 
 static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
@@ -464,6 +479,7 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
     struct vlapic *target;
     struct vcpu *v;
     unsigned int irq = vioapic->base_gsi + pin;
+    bool callback = trig_mode || hvm_gsi_has_callbacks(d, irq);
 
     ASSERT(spin_is_locked(&d->arch.hvm.irq_lock));
 
@@ -490,7 +506,8 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
             target = vlapic_lowest_prio(d, NULL, 0, dest, dest_mode);
         if ( target != NULL )
         {
-            ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode);
+            ioapic_inj_irq(vioapic, target, vector, trig_mode, delivery_mode,
+                           callback);
         }
         else
         {
@@ -505,7 +522,7 @@ static void vioapic_deliver(struct hvm_vioapic *vioapic, unsigned int pin)
         for_each_vcpu ( d, v )
             if ( vlapic_match_dest(vcpu_vlapic(v), NULL, 0, dest, dest_mode) )
                 ioapic_inj_irq(vioapic, vcpu_vlapic(v), vector, trig_mode,
-                               delivery_mode);
+                               delivery_mode, callback);
         break;
 
     case dest_NMI:
diff --git a/xen/arch/x86/hvm/vpic.c b/xen/arch/x86/hvm/vpic.c
index f465b7f9979..ef668f3668a 100644
--- a/xen/arch/x86/hvm/vpic.c
+++ b/xen/arch/x86/hvm/vpic.c
@@ -235,6 +235,8 @@ static void vpic_ioport_write(
                 unsigned int pin = __scanbit(pending, 8);
 
                 ASSERT(pin < 8);
+                hvm_gsi_execute_callbacks(current->domain,
+                        hvm_isa_irq_to_gsi((addr >> 7) ? (pin | 8) : pin));
                 hvm_dpci_eoi(current->domain,
                              hvm_isa_irq_to_gsi((addr >> 7) ? (pin | 8) : pin));
                 __clear_bit(pin, &pending);
@@ -285,6 +287,8 @@ static void vpic_ioport_write(
                 /* Release lock and EOI the physical interrupt (if any). */
                 vpic_update_int_output(vpic);
                 vpic_unlock(vpic);
+                hvm_gsi_execute_callbacks(current->domain,
+                        hvm_isa_irq_to_gsi((addr >> 7) ? (pin | 8) : pin));
                 hvm_dpci_eoi(current->domain,
                              hvm_isa_irq_to_gsi((addr >> 7) ? (pin | 8) : pin));
                 return; /* bail immediately */
diff --git a/xen/include/asm-x86/hvm/irq.h b/xen/include/asm-x86/hvm/irq.h
index c4369ceb7aa..37b8d2ba8fb 100644
--- a/xen/include/asm-x86/hvm/irq.h
+++ b/xen/include/asm-x86/hvm/irq.h
@@ -21,6 +21,7 @@
 #ifndef __ASM_X86_HVM_IRQ_H__
 #define __ASM_X86_HVM_IRQ_H__
 
+#include <xen/rwlock.h>
 #include <xen/timer.h>
 
 #include <asm/hvm/hvm.h>
@@ -79,6 +80,10 @@ struct hvm_irq {
 
     struct hvm_irq_dpci *dpci;
 
+    /* List of callbacks for GSI EOI events. Protected by irq_lock. */
+    struct list_head  *gsi_callbacks;
+    rwlock_t gsi_callbacks_lock;
+
     /*
      * Number of wires asserting each GSI.
      *
@@ -137,6 +142,14 @@ struct hvm_gmsi_info {
     bool posted; /* directly deliver to guest via VT-d PI? */
 };
 
+typedef void hvm_gsi_eoi_callback_t(struct domain *d, unsigned int gsi,
+                                    void *data);
+struct hvm_gsi_eoi_callback {
+    hvm_gsi_eoi_callback_t *callback;
+    void *data;
+    struct list_head list;
+};
+
 struct hvm_girq_dpci_mapping {
     struct list_head list;
     uint8_t bus;
@@ -224,4 +237,12 @@ void hvm_set_callback_via(struct domain *d, uint64_t via);
 struct pirq;
 bool hvm_domain_use_pirq(const struct domain *, const struct pirq *);
 
+int hvm_gsi_register_callback(struct domain *d, unsigned int gsi,
+                              struct hvm_gsi_eoi_callback *cb);
+int hvm_gsi_unregister_callback(struct domain *d, unsigned int gsi,
+                                 struct hvm_gsi_eoi_callback *cb);
+/* NB: Callbacks are not allowed to modify the registered callback list. */
+void hvm_gsi_execute_callbacks(struct domain *d, unsigned int gsi);
+bool hvm_gsi_has_callbacks(const struct domain *d, unsigned int gsi);
+
 #endif /* __ASM_X86_HVM_IRQ_H__ */
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:09:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:09:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113757.216805 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr4H-00014E-8d; Tue, 20 Apr 2021 14:09:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113757.216805; Tue, 20 Apr 2021 14: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 1lYr4H-000146-4d; Tue, 20 Apr 2021 14:09:33 +0000
Received: by outflank-mailman (input) for mailman id 113757;
 Tue, 20 Apr 2021 14:09:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr4G-0000zG-2V
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:09:32 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b40bcfae-143a-4654-8be5-2c212677886f;
 Tue, 20 Apr 2021 14:09:29 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b40bcfae-143a-4654-8be5-2c212677886f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927769;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=6L0j1iiPQW70GePi9+FEHwvdvq0ZaAVrpOxXuvH7hIQ=;
  b=byfWbq8+7g7HtmToX2U/qtSB3R7JWJlcji6Sa1xis5YRMY8d2hQTW9+9
   IyF5xXek6ctTkqJ8JhJ5/M1mQL9eqWyy2AL5GvzVmLo4GLdkZxy/6sWCl
   zRDzev50k14YbG2+wXhzI80H/Q7/PVfsCZVTQ5/PcwazkNm+m3whINX46
   4=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: zhkjseTqvvuYOwR7qST6apGvsxr6Xik8h2qGAqLUuc/iAtQJ3CsL2sFsACEtxUMm66VazzNgaf
 +/BoNIG2aZxbcwoEjF2sAEo2Y2834eR7/zE3DL7j9cK13rlC+0oHyWR2SdesZmlRdQ28zd65eO
 u2MxNxBI0Gc4QYoYRnJqSS2h6j/2EojTATrj9m1CKdnlWo9NWVwP9h/6ylVBAO4+Y/KQvbYPK2
 KnfZ0PoDb+45F6YU32u7AxquHJvwpKNrdLjmIZx6VUXyJmUCjXJ7MpEKN3Sjq7hN+/OXl60G4U
 +eo=
X-SBRS: 5.2
X-MesageID: 41988265
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:YqHlVaF4bRfW4RtzpLqFMpHXdLJzesId70hD6mlYVQFVfsuEl8
 qngfQc0lvOhCwMXWw78OrsBICrR3TA+ZlppbQAJLvKZniChEKEDqFHqbHjzTrpBjHk+odmv5
 tIXqBiBLTLYmRSot395GCDfeoI5Pmi3OSWifzFz3FrJDsaCZ1IywtiEA6UHglXaWB9ZaYRL5
 aX6spZqzfIQx1+AviTPXUZQ/PF4+TCiZOOW3U7LiQ64wqDhy7A0s+YLzGk2H4lMg9n8PMZ3k
 Xu1yf44aiitP/T8G6n60bjq654tfGk5t9KBMmngtUYJDP2mm+TFflccozHhh8ZiqWC70srjc
 ntrn4bTrhOwkKURE6Zi1/M3BTtyzkn4XOK8y7mvVLT5fbXaRh/Lugpv/M8TjLpr3AOkfs57Y
 dwm0WejJZTBQOoplWE2/H4EytEu2DxnWAvioco/htieLpbUpB9h6oF8nhYFZ8RdRiKk7wPIa
 1VAMbQ6O0+SyL9U1np+m1mwNmbVn8uBBuxQk8bpsyP0zRN9UoJtncl+A==
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41988265"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MqQtk0CwPztfWf60ynG8Os+hHZs3pZ62aG7RaxLK5Mmq3EYMWfJbO4+0tc1TLZfoQ2iu+SqYtO5SFjZNiJ+zl9G4mrw6SdMzibA4JOHjgYV211dfiP4Frl5tn6yU1a4jPIid4uIsbW0s3MUt/3ZopiPXz3QOx5iMdXkeOlbqhZCGHEhpF/qStGd6Ic1FlntcQGR35JftIEmpwBjvrfJVyCncn+wkbrRZ2KuBso5klj8PiB+uQ6OZlFvQNZ7p+kDe0JoBNFOopIa0lUAQqmmOsdXVrugZQTzUnQepuxcRRl0KgoPvHhaaWdv2eFwrKLJYBK0AjNdj5t0hsWbZ6e+ueA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jpUsr/JnxQIEWmJlrtvNxTXkMm0vHvWvojx4g2pQUcc=;
 b=MIYlEK2t3m7btstQBZDo03dUwFN6brqNUK1zyp/FlkhtJXyBbDwvKfP0OlD9w+SM2OPlCacyzcd5WbiBxGEVGQS3DswGT4ABWIviP7wszuTWLAm416lRZ6saI+/tjMdr5yeqMhf91iu9sYRYamJLKmOqE/0bnwuHaSRQNd/+sY1zQvO4KeUMfkAPdWbsN7LQWEj1aEvdguO/Yd0tp8yOEPzKrhEd/n/4PyKRi1pBkwKMyYzTmYUq1xkpxSDN4MY7rxD6pylDJHxhBvQJY/wYB4jx/XuEYbrx6O0EdY1ci3pvHbeu5yGgd3RsXwVL0E22cwJAashi3BP6GeOPt/SPog==
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=jpUsr/JnxQIEWmJlrtvNxTXkMm0vHvWvojx4g2pQUcc=;
 b=LUceU/r6nVW8V3uurI3Cl57VJTvQaSvY6BRauUYHaaXP/8Pm3jqI0O5FJHvmY+DKS5hOoez7fnoE9RyHs8kHr9mG+NqTxabZbNkSKaaolBzg3EXy8zeyUT2LoYGXdU/Yd/n+PF37LVjOtIKVzZ4kGLMoMAZgAYvqljLUXSCr2GY=
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>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v4 06/12] x86/dpci: move code
Date: Tue, 20 Apr 2021 16:07:17 +0200
Message-ID: <20210420140723.65321-7-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0071.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::35) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: cf3ad0de-373d-4716-2073-08d90405e7b8
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB6000F0D62CFB830EB27B93088F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 1tLRgrbaX5cc9IRLzM9BwJzsahNRZsJ93LOUczHqIDBGOJa+BvHfmC1+kzEU2McxOGFBGABV0Jj0wB+0cyLIyk/b56zVywMQSjNJqItUXqPiQzp+QinfLjB200E6Uq+bsXfODGVn9jIeDk4AFDJIQmuABW3iHEWUpai2qY5oDNs7U8yuIhbNHZ/lENosKAlbiQ0D+5RimtyPJiv+GQfWNEESuL/WrSGBeGAtkw2/CYfKdJSGVw309kQ4ib/22x6d1WfNiq1j/kvYRaZUyw8rPLmeBhBOdvQg70HkwmFFIROU5q3GsjVkYA7V8mIzWglbEfPA/imQnJU2ExxRtuMmGgVEdePzsHExEo6qkOc7BNzLQugyzpAWcBbJdJ3mIxDFE0PstLI+h6KEPbH+zxx1HA7FItT1SUIvZG+rSAga3co8KnXHvsxP94n7na10NAXmLVFwkhdP/9uvNdmsYOSo+SqVV4JrGTvuExnE5iFdw1RNUvaMz4qAGVjv2aXsubBVNn0yUTsWOb/xsAg61OIePa+P354eV74sr8PSoagcU07k5FLGvZDxmt7daJtrVRJuQX14DIWOx6mw248FNKU3RfJfmq5g5uS8VYL9mo+kXAg=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(186003)(5660300002)(8936002)(54906003)(2906002)(6666004)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: cf3ad0de-373d-4716-2073-08d90405e7b8
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:25.9443
 (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: 67TMlg6cG6+8pgAyISVinxZF4Pg8j8pCqtTngRllmZbVZSteeG3WnfHX+IvqMskAgIp4D8ywzBZ9clOALq6CXQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

This is code movement in order to simply further changes.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
Changes since v2:
 - Drop one of the leading underscores from __hvm_dpci_eoi.

Changes since v1:
 - New in this version.
---
 xen/drivers/passthrough/x86/hvm.c | 162 +++++++++++++++---------------
 1 file changed, 81 insertions(+), 81 deletions(-)

diff --git a/xen/drivers/passthrough/x86/hvm.c b/xen/drivers/passthrough/x86/hvm.c
index 8f78c0935b9..0db26e5dbb2 100644
--- a/xen/drivers/passthrough/x86/hvm.c
+++ b/xen/drivers/passthrough/x86/hvm.c
@@ -205,6 +205,87 @@ static struct vcpu *vector_hashing_dest(const struct domain *d,
     return dest;
 }
 
+static void hvm_pirq_eoi(struct pirq *pirq)
+{
+    struct hvm_pirq_dpci *pirq_dpci;
+
+    if ( !pirq )
+    {
+        ASSERT_UNREACHABLE();
+        return;
+    }
+
+    pirq_dpci = pirq_dpci(pirq);
+
+    /*
+     * No need to get vector lock for timer
+     * since interrupt is still not EOIed
+     */
+    if ( --pirq_dpci->pending ||
+         /* When the interrupt source is MSI no Ack should be performed. */
+         (pirq_dpci->flags & HVM_IRQ_DPCI_TRANSLATE) )
+        return;
+
+    pirq_guest_eoi(pirq);
+}
+
+static void __hvm_dpci_eoi(struct domain *d,
+                           const struct hvm_girq_dpci_mapping *girq)
+{
+    struct pirq *pirq = pirq_info(d, girq->machine_gsi);
+
+    if ( !hvm_domain_use_pirq(d, pirq) )
+        hvm_pci_intx_deassert(d, girq->device, girq->intx);
+
+    hvm_pirq_eoi(pirq);
+}
+
+static void hvm_gsi_eoi(struct domain *d, unsigned int gsi)
+{
+    struct pirq *pirq = pirq_info(d, gsi);
+
+    /* Check if GSI is actually mapped. */
+    if ( !pirq_dpci(pirq) )
+        return;
+
+    hvm_gsi_deassert(d, gsi);
+    hvm_pirq_eoi(pirq);
+}
+
+void hvm_dpci_eoi(struct domain *d, unsigned int guest_gsi)
+{
+    const struct hvm_irq_dpci *hvm_irq_dpci;
+    const struct hvm_girq_dpci_mapping *girq;
+
+    if ( !is_iommu_enabled(d) )
+        return;
+
+    if ( is_hardware_domain(d) )
+    {
+        spin_lock(&d->event_lock);
+        hvm_gsi_eoi(d, guest_gsi);
+        goto unlock;
+    }
+
+    if ( guest_gsi < NR_ISAIRQS )
+    {
+        hvm_dpci_isairq_eoi(d, guest_gsi);
+        return;
+    }
+
+    spin_lock(&d->event_lock);
+    hvm_irq_dpci = domain_get_irq_dpci(d);
+
+    if ( !hvm_irq_dpci )
+        goto unlock;
+
+    list_for_each_entry ( girq, &hvm_irq_dpci->girq[guest_gsi], list )
+        __hvm_dpci_eoi(d, girq);
+
+unlock:
+    spin_unlock(&d->event_lock);
+}
+
 int pt_irq_create_bind(
     struct domain *d, const struct xen_domctl_bind_pt_irq *pt_irq_bind)
 {
@@ -860,87 +941,6 @@ static void hvm_dirq_assist(struct domain *d, struct hvm_pirq_dpci *pirq_dpci)
     spin_unlock(&d->event_lock);
 }
 
-static void hvm_pirq_eoi(struct pirq *pirq)
-{
-    struct hvm_pirq_dpci *pirq_dpci;
-
-    if ( !pirq )
-    {
-        ASSERT_UNREACHABLE();
-        return;
-    }
-
-    pirq_dpci = pirq_dpci(pirq);
-
-    /*
-     * No need to get vector lock for timer
-     * since interrupt is still not EOIed
-     */
-    if ( --pirq_dpci->pending ||
-         /* When the interrupt source is MSI no Ack should be performed. */
-         (pirq_dpci->flags & HVM_IRQ_DPCI_TRANSLATE) )
-        return;
-
-    pirq_guest_eoi(pirq);
-}
-
-static void __hvm_dpci_eoi(struct domain *d,
-                           const struct hvm_girq_dpci_mapping *girq)
-{
-    struct pirq *pirq = pirq_info(d, girq->machine_gsi);
-
-    if ( !hvm_domain_use_pirq(d, pirq) )
-        hvm_pci_intx_deassert(d, girq->device, girq->intx);
-
-    hvm_pirq_eoi(pirq);
-}
-
-static void hvm_gsi_eoi(struct domain *d, unsigned int gsi)
-{
-    struct pirq *pirq = pirq_info(d, gsi);
-
-    /* Check if GSI is actually mapped. */
-    if ( !pirq_dpci(pirq) )
-        return;
-
-    hvm_gsi_deassert(d, gsi);
-    hvm_pirq_eoi(pirq);
-}
-
-void hvm_dpci_eoi(struct domain *d, unsigned int guest_gsi)
-{
-    const struct hvm_irq_dpci *hvm_irq_dpci;
-    const struct hvm_girq_dpci_mapping *girq;
-
-    if ( !is_iommu_enabled(d) )
-        return;
-
-    if ( is_hardware_domain(d) )
-    {
-        spin_lock(&d->event_lock);
-        hvm_gsi_eoi(d, guest_gsi);
-        goto unlock;
-    }
-
-    if ( guest_gsi < NR_ISAIRQS )
-    {
-        hvm_dpci_isairq_eoi(d, guest_gsi);
-        return;
-    }
-
-    spin_lock(&d->event_lock);
-    hvm_irq_dpci = domain_get_irq_dpci(d);
-
-    if ( !hvm_irq_dpci )
-        goto unlock;
-
-    list_for_each_entry ( girq, &hvm_irq_dpci->girq[guest_gsi], list )
-        __hvm_dpci_eoi(d, girq);
-
-unlock:
-    spin_unlock(&d->event_lock);
-}
-
 static int pci_clean_dpci_irq(struct domain *d,
                               struct hvm_pirq_dpci *pirq_dpci, void *arg)
 {
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:09:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113760.216817 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr4M-00019k-Qb; Tue, 20 Apr 2021 14:09:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113760.216817; Tue, 20 Apr 2021 14: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 1lYr4M-00019Z-MD; Tue, 20 Apr 2021 14:09:38 +0000
Received: by outflank-mailman (input) for mailman id 113760;
 Tue, 20 Apr 2021 14:09:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr4L-00018c-CV
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:09:37 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fa8880a2-c10a-48e9-9912-2d4ce3aef538;
 Tue, 20 Apr 2021 14:09: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: fa8880a2-c10a-48e9-9912-2d4ce3aef538
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927775;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=d9eNGlxbpZj4dvsAgZL3dz33aHlsUcCZjL2r8PLyJfA=;
  b=AJ9eXkfTA3lgXWB+UvZPYfSSwayMN8lPIwW0Yl1ofwiu8wN8opfV9t1Q
   ptr6iimcwtdSgPQJ7kTbFhXwF2RZXF5E1LaViLvq5qVU5+sgmoZMf9eos
   O00zfOwuBxbApB9HtBxT/Ydgz5dYo+GCpzsst9gOIdwBtQs1JfVgGkodG
   c=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: YcNpxn66rI5n6ipxBlSKJWsGAeHcoyOZ2njU+wNodx3vMrVqQinO/t+lAfHuZC7/GVr4JAaPgQ
 cNgtjEGvM/Ut8t5dtN3gndsKBGIEuy4NrOMgbr/qFus42P47UjrkBbcdGSm1depn8CkUVmI7e0
 sVxShpQibMSymDA5/nVORwkjCH8j6UoPLcm8mXiIFxKadeUtQpLqKPSwd1vm7RPk1uzSUjgxmO
 gW2sjNvKDwuy72ZMDRj8tyxt24Gz5Cxs11vfbOHXhFWabWrOXXg6Qhd4rkhyUDBnOw0n9FA7Ft
 +DQ=
X-SBRS: 5.2
X-MesageID: 42368680
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:6LMseKy1ofbJmcVjq4O5KrPxqe4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmqJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheTysd07o
 0lSaR3DbTLYGRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRCp1IxS0RMHf+LmRdQg5aCZ0lUK
 eG7s1cqDa6PVgRZMK3Bn4KNtKz2+HjvpTgfBIAGlob+BCD5AnYlYLSPjq5+lMlUz1Jyao/6m
 StqWLEz4iqrv3T8G6760b99JJT8eGRqOdrJMvJscQNLyWptwDAXvUbZ5SnnBQY5N6i80wrlt
 6kmWZRA+1W52nKdm+45TvBsjOQqQoG0HPpxV+GjXaLm6WQL1hbeqkx975xSRfX51Etu9txys
 twrhiknqFaEA/am2DF78XIPisa53acm2YokuIYkhVkIOwjQYJWxLZvmX99IdMrGSL3750fC+
 9+DM3Qz+Y+SyLlU1np+kZo29CiRXI1A1OvRVUDoNWc13xskGl+1FZw/r1Sol4wsLYGD7VU7e
 XNNapl0JlIU88tdKp4QMMMW9G+BGDhSQ/FWVjibmjPJeUiATbgupT36LI66KWBY5oT1qY/n5
 zHTRdxqXMyU1iGM7zP4LR7tjT2BEmtVzXkzc9To7JjvKfnebbtOSqfDHgzjsqbpekFCMGzYY
 fzBLtmR9vYaUf+E4dA2APzH7NIL2MFbcETstEnH32UpMbmLZDrq/z7fP7fKKGFK0dnZkrPRl
 84GBTjLsRJ6U6mHlXihgLKZn/rckvjubJ8eZKqutQ7+cwoDMlhowIVgVO26oWgMjtZqJE7e0
 N4PffCmqO/rm+mwHbQ4wxSS15gJ3cQxI+lf2JBpAcMPU+xW60Eoc+jdWdb22bCARNjUcXMEk
 p6q05s8ay6a7ycrBpSRe6PAya/tT8+tXiKR5ATlumo/sH+YK41CZ4gRehWDgXEFxt8nC5ws2
 ddYAo4RkvSfwmeypmNvdgxPqXyZtN8iACkLYp/snTEr3iRoskpWz8mRTK0aNWWhgwvXjJQoV
 V0/8Yk8f29sAfqDVF6rPUzMVVKZmjSJL5dFgyKaL9Zna3RdBhqQX2HgiGbjB8PanPnnn9i9V
 DJHGmxQ7XmE1BdsndX3uLR/FR4en60UmhwZnp52LcNXljuizJW66umd6Cz22yeZh8+2ekbKi
 jCeiZXCBhp3cqL2BmcnyuiGX0qyo41BPHUCK0uftjoqzWQAbzNsZtDM+5f/Z5jOtyrj/QCVv
 iHfRSJaBz/EOEk1mWu1wAYERgxjENht/zm2BfotjflmFE+BOffO1RgSfUwJcqG423tWvaP19
 FYgLsOzJ+NG1S0TuTD76fdKwNnAFf0h0WdSukzs5Bava4ortJIbtHmeAqN8EsC5Qk0Kcf/qV
 gXT6t66o3QI4MHRb1mRwtpun4S0OmVJEQlsgbKEvYzUFEkgXjcJc6I6dPz2M0SK3zEgAPxPF
 WFmhcth8vtbm+m1bQADbg3LnkTQE8g6G569OfqTfybNCyaM8VC9kG9KHmzbft0T7WEA6wZql
 Jf78uTl+GaMwr+1wa4h0o3Hot+t0KmS9i1GgSCBKph9MG7I02Fhu+S2/GI5Q2HAAeTWgA/no
 1KdUsZc8RFhH0DteQMo1ePY52yhFkknVtY6SxgjXj31OGdkT7mIX0=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="42368680"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bf8QqkI3NF3x9Si+1E9bN2tKcTOwYP5SrbBTvOBSAXjOGMxd6mKsd7/4+IT3OnCvf9ybF1n/19c/bs8ZV5lsg+GdTa4lSiKPwLPQXUdn3LR1DlAcokRNIm8BlpE+g5bOqkNT0oS1eRuKB9aT2aXuHpC9Tl35CEFPmuzox0O2cOpEvKfH5y5MCEvaO8lilNvnJoWKZ/rCJZx8HxPCGP6TZkYSoP3IsPjkzNFqDjSm74l+/6k0j8gn91fYrhMlF2NlNc7WehVM5W7lUZtDq1b+6ArxARI2KoCOr2EoYE2XQZ+T29QBi727smeg3744XXpstKjiIAj/4vXakq4V5iU2zA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9LDC2BNSgnovQYjkqYHd80+wCvWWCbTTsmR77iMhVkU=;
 b=m3OaoOD40xsbQJsfzwIi+COsnP4PCBBlTz+vfq7Q33yd4C9DPJ882ZrCuGj72bsw1uoJv+l9QtGmq9yTC3jjAStBiYqsNpLDXXoZG3Sof2a/ulXYpK7jm0bMmQ0ytU1nDU97Kks1DZhdhYd5hAjp0SxHBojFFuN8ysuyLfgaIqbGZ/zRP42Slfjing6ZWB/8yPYrl2b9T7muZy1TWLjzzFYfgUv8ec3hEqIfR4YY/HHNKSo5TYoj0bpoOY6vR9l3biPJSarNUU5jTa+SwYUoZgm/ywxiyGWG8sLHDkZfQUumOciVWYNnYXrBMy41iMVmZVT5L8MEt4IkySfFGJB96Q==
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=9LDC2BNSgnovQYjkqYHd80+wCvWWCbTTsmR77iMhVkU=;
 b=su2x3RlkaoacSzdXOx9xEFKk+lH6aSYaJfJExaJ/DETbHIcpJ9ziRt0GWJPdgXottj9+T5bjDQ8iy//AHuD1Mabr3B9TvS5uESeVCySPeOHZ1qIGgSp4dpyH/6gCuCfqquedScxmabZyN8/A/0P00KUWV6SEttQqaOTkxgmW/74=
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>, Paul Durrant
	<paul@xen.org>
Subject: [PATCH v4 07/12] x86/dpci: switch to use a GSI EOI callback
Date: Tue, 20 Apr 2021 16:07:18 +0200
Message-ID: <20210420140723.65321-8-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0031.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::19) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4e8c01a7-2d04-4cb1-bcd4-08d90405ec2c
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB6000D53CE4B813236526AE5F8F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3513;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: FTHa6dtomBoqdQQgHKgYQ1XPOPRbjDiC15HFubPFpGP7xie/FOEZQ3jXeMgWD0JHDOUG8f1NSJEi+q8S7Qam7ojZNSJCskxPFQYMofyY4nd6TCbVW2g2LpT1Mg0LFZ40zqLOmkZHSdDmsL0LiEjRwS/dRkmuQQdy85fJAC2mpQbRiVc5qaT3MPe6B23y9qZDVWpoe/L8cd1+ECbXuKTnAotXPKaRsEhXqbxuxUaYTkPjmyuWpD/k95NrgPRymQUiiXbM0s4c3nNNZZzM8ru0J1omoRfaMqgihJucNpYQADhZV9Rgj0kYGipE4X0rT7TCt0/dt7fRWhNg/HuEHhJkTO92eQ3/y09FJXzBDKMtgWFstTbKedGootJus8UfcAaOZY0nTXs3R6jFnzV4jA6OLLCi+di9NYj/zH9vdXChoptV+/H9dg1PeA4Nk5ukLMzgTspmtZt68v/ccVRj6u2+wjQ4EPpZOVlqwgGBQY+4HKRDpRq0VzrRk6nYLklTKVxRo6VnLRrU6dYa8llM9Th6tLHPJSbs8Wgs/CVEXY37PFv915I5amvplkCEXCXEsjdyCh4wlXTiLGQYoaYt41BQCg==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(186003)(5660300002)(8936002)(54906003)(2906002)(6666004)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e8c01a7-2d04-4cb1-bcd4-08d90405ec2c
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:33.4513
 (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: sLaRwYHRF6Rve7G854DwtKixVif0F5nsK5ReHM39XHhVepgRqDqPP3/Yui7ppyeu4Yai1i7qa1DdnNM0dP+KNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

Switch the dpci GSI EOI callback hooks to use the newly introduced
generic callback functionality, and remove the custom dpci calls found
on the vPIC and vIO-APIC implementations.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v3:
 - Print a warning message if the EOI callback cannot be unregistered.

Changes since v2:
 - Avoid leaking the allocated callback on error paths of
   pt_irq_create_bind.

Changes since v1:
 - New in this version.
---
 xen/arch/x86/hvm/vioapic.c        |  8 -----
 xen/arch/x86/hvm/vpic.c           |  4 ---
 xen/drivers/passthrough/x86/hvm.c | 57 ++++++++++++++++++++++++++++---
 xen/include/asm-x86/hvm/io.h      |  1 -
 xen/include/asm-x86/hvm/irq.h     |  1 +
 5 files changed, 54 insertions(+), 17 deletions(-)

diff --git a/xen/arch/x86/hvm/vioapic.c b/xen/arch/x86/hvm/vioapic.c
index 0824ede91ab..4f844965423 100644
--- a/xen/arch/x86/hvm/vioapic.c
+++ b/xen/arch/x86/hvm/vioapic.c
@@ -284,7 +284,6 @@ static void vioapic_write_redirent(
              */
             ASSERT(prev_level);
             ASSERT(!top_word);
-            hvm_dpci_eoi(d, gsi);
             hvm_gsi_execute_callbacks(d, gsi);
     }
 
@@ -418,13 +417,6 @@ static void eoi_callback(struct vcpu *v, unsigned int vector, void *data)
 
             ent->fields.remote_irr = 0;
 
-            if ( is_iommu_enabled(d) )
-            {
-                spin_unlock(&d->arch.hvm.irq_lock);
-                hvm_dpci_eoi(d, gsi);
-                spin_lock(&d->arch.hvm.irq_lock);
-            }
-
             /*
              * Callbacks don't expect to be executed with any lock held, so
              * drop the lock that protects the vIO-APIC fields from changing.
diff --git a/xen/arch/x86/hvm/vpic.c b/xen/arch/x86/hvm/vpic.c
index ef668f3668a..60d6740f69a 100644
--- a/xen/arch/x86/hvm/vpic.c
+++ b/xen/arch/x86/hvm/vpic.c
@@ -237,8 +237,6 @@ static void vpic_ioport_write(
                 ASSERT(pin < 8);
                 hvm_gsi_execute_callbacks(current->domain,
                         hvm_isa_irq_to_gsi((addr >> 7) ? (pin | 8) : pin));
-                hvm_dpci_eoi(current->domain,
-                             hvm_isa_irq_to_gsi((addr >> 7) ? (pin | 8) : pin));
                 __clear_bit(pin, &pending);
             }
             return;
@@ -289,8 +287,6 @@ static void vpic_ioport_write(
                 vpic_unlock(vpic);
                 hvm_gsi_execute_callbacks(current->domain,
                         hvm_isa_irq_to_gsi((addr >> 7) ? (pin | 8) : pin));
-                hvm_dpci_eoi(current->domain,
-                             hvm_isa_irq_to_gsi((addr >> 7) ? (pin | 8) : pin));
                 return; /* bail immediately */
             case 6: /* Set Priority                */
                 vpic->priority_add = (val + 1) & 7;
diff --git a/xen/drivers/passthrough/x86/hvm.c b/xen/drivers/passthrough/x86/hvm.c
index 0db26e5dbb2..02e027cff8c 100644
--- a/xen/drivers/passthrough/x86/hvm.c
+++ b/xen/drivers/passthrough/x86/hvm.c
@@ -252,7 +252,7 @@ static void hvm_gsi_eoi(struct domain *d, unsigned int gsi)
     hvm_pirq_eoi(pirq);
 }
 
-void hvm_dpci_eoi(struct domain *d, unsigned int guest_gsi)
+static void dpci_eoi(struct domain *d, unsigned int guest_gsi, void *data)
 {
     const struct hvm_irq_dpci *hvm_irq_dpci;
     const struct hvm_girq_dpci_mapping *girq;
@@ -476,6 +476,7 @@ int pt_irq_create_bind(
     {
         struct dev_intx_gsi_link *digl = NULL;
         struct hvm_girq_dpci_mapping *girq = NULL;
+        struct hvm_gsi_eoi_callback *cb = NULL;
         unsigned int guest_gsi;
 
         /*
@@ -489,7 +490,7 @@ int pt_irq_create_bind(
             unsigned int link;
 
             digl = xmalloc(struct dev_intx_gsi_link);
-            girq = xmalloc(struct hvm_girq_dpci_mapping);
+            girq = xzalloc(struct hvm_girq_dpci_mapping);
 
             if ( !digl || !girq )
             {
@@ -502,11 +503,22 @@ int pt_irq_create_bind(
             girq->bus = digl->bus = pt_irq_bind->u.pci.bus;
             girq->device = digl->device = pt_irq_bind->u.pci.device;
             girq->intx = digl->intx = pt_irq_bind->u.pci.intx;
-            list_add_tail(&digl->list, &pirq_dpci->digl_list);
+            girq->cb.callback = dpci_eoi;
 
             guest_gsi = hvm_pci_intx_gsi(digl->device, digl->intx);
             link = hvm_pci_intx_link(digl->device, digl->intx);
 
+            rc = hvm_gsi_register_callback(d, guest_gsi, &girq->cb);
+            if ( rc )
+            {
+                spin_unlock(&d->event_lock);
+                xfree(girq);
+                xfree(digl);
+                return rc;
+            }
+
+            list_add_tail(&digl->list, &pirq_dpci->digl_list);
+
             hvm_irq_dpci->link_cnt[link]++;
 
             girq->machine_gsi = pirq;
@@ -514,17 +526,43 @@ int pt_irq_create_bind(
         }
         else
         {
+            /*
+             * NB: the callback structure allocated below will never be freed
+             * once setup because it's used by the hardware domain and will
+             * never be unregistered.
+             */
+            cb = xzalloc(struct hvm_gsi_eoi_callback);
+
             ASSERT(is_hardware_domain(d));
 
+            if ( !cb )
+            {
+                spin_unlock(&d->event_lock);
+                return -ENOMEM;
+            }
+
             /* MSI_TRANSLATE is not supported for the hardware domain. */
             if ( pt_irq_bind->irq_type != PT_IRQ_TYPE_PCI ||
                  pirq >= hvm_domain_irq(d)->nr_gsis )
             {
                 spin_unlock(&d->event_lock);
-
+                xfree(cb);
                 return -EINVAL;
             }
             guest_gsi = pirq;
+
+            cb->callback = dpci_eoi;
+            /*
+             * IRQ binds created for the hardware domain are never destroyed,
+             * so it's fine to not keep a reference to cb here.
+             */
+            rc = hvm_gsi_register_callback(d, guest_gsi, cb);
+            if ( rc )
+            {
+                spin_unlock(&d->event_lock);
+                xfree(cb);
+                return rc;
+            }
         }
 
         /* Bind the same mirq once in the same domain */
@@ -596,12 +634,17 @@ int pt_irq_create_bind(
                     list_del(&digl->list);
                     link = hvm_pci_intx_link(digl->device, digl->intx);
                     hvm_irq_dpci->link_cnt[link]--;
+                    hvm_gsi_unregister_callback(d, guest_gsi, &girq->cb);
                 }
+                else
+                    hvm_gsi_unregister_callback(d, guest_gsi, cb);
+
                 pirq_dpci->flags = 0;
                 pirq_cleanup_check(info, d);
                 spin_unlock(&d->event_lock);
                 xfree(girq);
                 xfree(digl);
+                xfree(cb);
                 return rc;
             }
         }
@@ -699,6 +742,7 @@ int pt_irq_destroy_bind(
         unsigned int link = hvm_pci_intx_link(device, intx);
         struct hvm_girq_dpci_mapping *girq;
         struct dev_intx_gsi_link *digl, *tmp;
+        int rc;
 
         list_for_each_entry ( girq, &hvm_irq_dpci->girq[guest_gsi], list )
         {
@@ -708,6 +752,11 @@ int pt_irq_destroy_bind(
                  girq->machine_gsi == machine_gsi )
             {
                 list_del(&girq->list);
+                rc = hvm_gsi_unregister_callback(d, guest_gsi, &girq->cb);
+                if ( rc )
+                    printk(XENLOG_G_WARNING
+                           "%pd: unable to remove callback for GSI %u: %d\n",
+                           d, guest_gsi, rc);
                 xfree(girq);
                 girq = NULL;
                 break;
diff --git a/xen/include/asm-x86/hvm/io.h b/xen/include/asm-x86/hvm/io.h
index 7f30dfa7fea..977a857f729 100644
--- a/xen/include/asm-x86/hvm/io.h
+++ b/xen/include/asm-x86/hvm/io.h
@@ -101,7 +101,6 @@ bool handle_mmio_with_translation(unsigned long gla, unsigned long gpfn,
                                   struct npfec);
 bool handle_pio(uint16_t port, unsigned int size, int dir);
 void hvm_interrupt_post(struct vcpu *v, int vector, int type);
-void hvm_dpci_eoi(struct domain *d, unsigned int guest_irq);
 void msix_write_completion(struct vcpu *);
 
 #ifdef CONFIG_HVM
diff --git a/xen/include/asm-x86/hvm/irq.h b/xen/include/asm-x86/hvm/irq.h
index 37b8d2ba8fb..57d51c15863 100644
--- a/xen/include/asm-x86/hvm/irq.h
+++ b/xen/include/asm-x86/hvm/irq.h
@@ -156,6 +156,7 @@ struct hvm_girq_dpci_mapping {
     uint8_t device;
     uint8_t intx;
     uint8_t machine_gsi;
+    struct hvm_gsi_eoi_callback cb;
 };
 
 #define NR_ISAIRQS  16
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:09:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:09:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113770.216829 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr4g-0001M8-5v; Tue, 20 Apr 2021 14:09:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113770.216829; Tue, 20 Apr 2021 14:09: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 1lYr4g-0001M1-11; Tue, 20 Apr 2021 14:09:58 +0000
Received: by outflank-mailman (input) for mailman id 113770;
 Tue, 20 Apr 2021 14:09:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr4e-0000xF-6F
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:09:56 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 205abebf-5a61-4251-8bde-b19d566079d9;
 Tue, 20 Apr 2021 14:09: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: 205abebf-5a61-4251-8bde-b19d566079d9
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927787;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=YBD6WHtBwNT4LEPxSJMdcqPjdNC2NyZPlUGjf1NdB+g=;
  b=OF/WZQySTanLpc+siGVKKcv8JPohpEawvWH/BQ7Kr5S7Y6kIwhWzDld2
   Cc711QWZUuiY7cY+f4ST9yrWN5ryDhAEv0dSLmz6c82cIV9u+5b5UX7f5
   pWOeZoofzrkx+LJh0QIdum0lumtzQ7pzfE/YjSBpDQ63yTpS6jRCPwMqE
   Q=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 6oeFlPQ2+RxIP59tl6MTRLunsvAtArlIo6vv6STKIkDOBxCDLFHVUZkLreIsrPO5Eha9MRt/St
 Nhnzd8zbdog0YESY0vSTQ4tdeAIWNIWAO2vExrbHpt3CoHwwl3EzHczTlFeLLzNt9D4LMqIlwL
 8xZG6d9r8t4oueg7aH+bOZnN/AG84HSzzkGHSo9q8OFjTMzIDmcsOD4YBjUTfliDGuqpK5B7Z1
 gSgp/MLpR2oxjSfAaF9GEQcWWMzFl+jTmOZNJJxVv0Kg0CSljWy+OQSA9+loTv845PD+cVupex
 BRg=
X-SBRS: 5.2
X-MesageID: 41817646
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:yRlHQ6tnj2t0i0W5QkmpQo/27skC84Yji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwTeCBtA50lGJ
 2Aovddrz27dngNKui9DH8JX+/Mzue76K7OSxgAGhIh9U2ynSqlgYSKbiSw8zU/d3d0wbkk+X
 XYiACR3Muemtyy1xO07R600714g93ko+EzZvCkqs9QETn0jxbtWYIJYcz4gBkQgMWCrGkni8
 PNpRBIBbUC11r0cnuuqRXgnynMuQxekkPK8lOTjXv9rcGRfltTYKAg9OEpACfx0EYusMpx16
 hGxQuixuBqJCjNgTjn4JzwXwxq/3DE0EYKq/IZjHBUTOIlGdhshLEYlXkldasoLWbR7YAqF/
 RWF8fM5PpaWkPyVQGmgkBfhPOrRXg9BRGAXwwrvdGUySFfmDRDw1If39F3pAZNyLsND71/o8
 jUOKVhk79DCucQcKJGHe8EBe+6EHbETx7gOH+bSG6XW50vCjbokdra8b817OaldNgj150pgq
 nMV1teqCobZ1/uIdfm5uwKzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQkBNHBUf
 rbAuMWP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5u3RLInHsfHabebzKLLhHS1MYBK8Pl
 IzGBzIYOlQ5EGiXXH1xDLLXWn2R0D59ZVsVIjWltJjjbQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eerWmy9mDY0nVxNnNmfwJoyYSld0kPiR4BMkvyf7pGkc6YY3pu0HyOIQI6aM/KDg
 hFpRBS9bisJ5KdgQAuYujXfF6yvj82njanXp0ckqqM6YPOYZUjFKsrX6R3CEHsDBx6mQFjrU
 9Zcw8aTkrjFjfj4J/Vz6A8NaX6TZ1RkQ2rKclbpTb0rkOHv/wiQXMdQnqTS8KNuB0vQDBVn1
 V11KcajNO76HGSAFp6pN59HExHaWyRDr4DKAiefo1blormfxxKQX6QiSaXjAwyfWTW51wf71
 aRXhG8SLXuOB5wq3pY2qHl/BdPemKRc1lZR1p6vYd+fF628Upb4KuuXO6ewmGRYlwNzqUhKz
 nDeyIVOR4r7cuwzgSplDGLEmgGyp0iMvfGNqkqd6je1xqWWcu1vJBDO8UR0IduNdjovONObP
 mWfBWNKijkT8wuwA6Yqx8eSV9JgUhhtcmt/hLr7GK1hiFiRdXTJUlrXLEdLZW36XP+S/OBzZ
 V+ipYUsIKLQxHMQ+/D7ZuSSThJbi73iyqRacoDrJhPp6I8tLdpBfDgIHP1/UAC+C97Fdv+kU
 MVfb9y77/AMLJ+ZsB6QVMtwnMZ0PC0aHYxugP4AuUCbUggon/SMdSO+afJo9MUczq8jTq1HV
 Ge9iFHls21Jxer5Po/C6gqJ35RZ1V5wHN+/Pmaf4m4MnThS8hzuH67OGS6arlTVeysHqgRtA
 9z55Wtk/WMfyT1nCDWsj0TGNMCz0+XBeezChmLA+hG7piTPkmNmLKj5IqLtwjMIAHLIngwtM
 libkwfbsNKlzkkgskW60GJO9PKi3NgtUBf7zFhnkPqwa687g7gbBh7DTE=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41817646"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=enUI6efuJ2qhYL++64c5VNUhpeqIotcyjim2Bn9YoZZa0MOXSNXHtWw0tESjU16CtTMQXxEX+IIM3GV2Vu2q7K3MnmTrfiSVrw2SAHe5lq7SK8F6ZSaKUSAO7mIJUl1PH3PelAX5iMIvGQ9GqLcp8cTDyDVC443ADwlmowq4MIz+8ynkuBX+ZJ6Ng6k9HzdQvsM2EzLP5huVKI8gKqcF7XxwuRRUofyccLFQhVaeIg8z93SgvxNZm2ZbJOf1FbwEesWqBEeMOcF3FdC+jf0MjlABXti9ZIjH8vWuDjf1q2REF+eE9eM3cY2lmeJjc1o57MhQqjB4kg+AmRsJEBpm4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TZm9Z2BEw31KJoXCeDJY/oKkesXv/TagNzRHxADW6kk=;
 b=b9sOtdhaCFTtr5RjDhlQT2FIfOgnZiQUuQT2qf7yCY9lzJliZbxTA2GYEozg9ITG80DAlrqHfwo2SA01pRy2NvG2ALYMkfpNlha3LZ4p82RA5kPMaqUX+gBWyDRNTbnjaxX//bbNCPJb0fc+8C4MzBhlTuDlRlQLouik61q0VhR9O/wdhXezEIV7gwzXX+Th01dKtxsLT+pOBtQh1xqIZM5tsBoa4MHtaporwxb4LvKxkxdqY17ZYDOA//dts0JV06TCBnfgBWKZE9jyKkKn+PaWbh+TTAxZb+ytArWiWH3ddMjnLQ9d7Rcx8AybswnzhAB8TZnNwA/Z5V6IzCDLnw==
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=TZm9Z2BEw31KJoXCeDJY/oKkesXv/TagNzRHxADW6kk=;
 b=fTcnKjkYdH+aSL6M5giqMVt9dhfRDC4AtCmuQiR0SzVtohwADntqTajspGUOlay3NdGXAVRJQtzhA4WvcAY5NeWlP/TQi6WM+07j41uaWLNhCRUEQCJep4H9+A+iceeI5sFhKlJ8/e8fFWESBcNzZIhYD/EmF82q4zG5kgguDEQ=
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>, Jun Nakajima
	<jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH v4 08/12] x86/vpt: switch interrupt injection model
Date: Tue, 20 Apr 2021 16:07:19 +0200
Message-ID: <20210420140723.65321-9-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0165.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::28) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 446954f9-17ee-4155-4bad-08d90405efd7
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB600084A83E6B84AB168BFAA38F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5797;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: oNIh4v/H5ehtwQ3obmoTDUAJmmc58gPc5ORprHjqHt88Nbuoq5riYu0xF7aAajI3d5CkmJR90ursPi4LjQp7PuwOT6CdAJIJRhJg8InGM144FrhpKVtjH989chiGju2/fvUOmKAlfjOYEJDlDsfsFKAMHRsPX6DTV8zLmrfOFpn9lLXBXoU2lBYgWzKIx+a4RtFD/EZraFJKfgrl0x4W5D1bh1pqVnttfXZifK8A63AbB7Qxz2ck6ebFTQbT/CG9gtiQVE8MP31GAtt+yZeEvEfLqPwJapyN7jFc7pbWiRm8bJPTKCaklIKiROkUg+yIUap+mhrrvXNt/SCNkKlL6WICrKYAOVN3K/B6+9avofaHFm2nIxSIi4uxPXMWsnvOJqFWXBL8hVl8mfj3Jg+ejg0hkz11HXKL34NLdPPtFZ8gRJ6hZAmLyb1fdZvupVQ6Y2bUd+K0yqxJhxfhk0QmG7bb7P0nqbatPuNGUd1p+UFjKBaOglWRK8c/0P6DfivhG1Ksd6mtWC9F41pt0luv0E3H76tHhtDGbiFramW/vEXfj7LcR0YTg2M62xcjnTkqmuaHQNBf5pwlXb3uSI8eD5d3BJg3a4nlN9PARDocnvI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(30864003)(186003)(5660300002)(8936002)(54906003)(2906002)(6666004)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?ZdaqX3pZCgPElLzQo9gVp7av3/IVgrpYBmVbQcp?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 446954f9-17ee-4155-4bad-08d90405efd7
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:39.6779
 (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: IO3hCH3YPk4W0IVUGbeBh8SgMprYtS68LbqGCJSbgyaNRSDW9nzo24VGu+hc+a5lnIxBp19qOduRDERtxmS5aA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

Currently vPT relies on timers being assigned to a vCPU and performing
checks on every return to HVM guest in order to check if an interrupt
from a vPT timer assigned to the vCPU is currently being injected.

This model doesn't work properly since the interrupt destination vCPU
of a vPT timer can be different from the vCPU where the timer is
currently assigned, in which case the timer would get stuck because it
never sees the interrupt as being injected.

Knowing when a vPT interrupt is injected is relevant for the guest
timer modes where missed vPT interrupts are not discarded and instead
are accumulated and injected when possible.

This change aims to modify the logic described above, so that vPT
doesn't need to check on every return to HVM guest if a vPT interrupt
is being injected. In order to achieve this the vPT code is modified
to make use of the new EOI callbacks, so that virtual timers can
detect when a interrupt has been serviced by the guest by waiting for
the EOI callback to execute.

This model also simplifies some of the logic, as when executing the
timer EOI callback Xen can try to inject another interrupt if the
timer has interrupts pending for delivery.

Note that timers are still bound to a vCPU for the time being, this
relation however doesn't limit the interrupt destination anymore, and
will be removed by further patches.

This model has been tested with Windows 7 guests without showing any
timer delay, even when the guest was limited to have very little CPU
capacity and pending virtual timer interrupts accumulate.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v3:
 - Rename pt_irq_fired to irq_eoi and adjust the logic.
 - Initialize v and cb_priv in eoi_callback.

Changes since v2:
 - Avoid and explicit != NULL check.
 - Use a switch in inject_interrupt to evaluate the timer mode.
 - Print the pt->source field on error in create_periodic_time.

Changes since v1:
 - New in this version.
---
 xen/arch/x86/hvm/svm/intr.c   |   3 -
 xen/arch/x86/hvm/vmx/intr.c   |  59 ------
 xen/arch/x86/hvm/vpt.c        | 352 +++++++++++++++-------------------
 xen/include/asm-x86/hvm/vpt.h |   5 +-
 4 files changed, 157 insertions(+), 262 deletions(-)

diff --git a/xen/arch/x86/hvm/svm/intr.c b/xen/arch/x86/hvm/svm/intr.c
index 7f815d23078..2ee2332253b 100644
--- a/xen/arch/x86/hvm/svm/intr.c
+++ b/xen/arch/x86/hvm/svm/intr.c
@@ -146,8 +146,6 @@ void svm_intr_assist(void)
         return;
 
     /* Crank the handle on interrupt state. */
-    pt_update_irq(v);
-
     do {
         intack = hvm_vcpu_has_pending_irq(v);
         if ( likely(intack.source == hvm_intsrc_none) )
@@ -219,7 +217,6 @@ void svm_intr_assist(void)
     {
         HVMTRACE_2D(INJ_VIRQ, intack.vector, /*fake=*/ 0);
         svm_inject_extint(v, intack.vector);
-        pt_intr_post(v, intack);
     }
 
     /* Is there another IRQ to queue up behind this one? */
diff --git a/xen/arch/x86/hvm/vmx/intr.c b/xen/arch/x86/hvm/vmx/intr.c
index 80bfbb47878..3fcc7073db2 100644
--- a/xen/arch/x86/hvm/vmx/intr.c
+++ b/xen/arch/x86/hvm/vmx/intr.c
@@ -203,7 +203,6 @@ static int nvmx_intr_intercept(struct vcpu *v, struct hvm_intack intack)
             {
                 /* for now, duplicate the ack path in vmx_intr_assist */
                 hvm_vcpu_ack_pending_irq(v, intack);
-                pt_intr_post(v, intack);
 
                 intack = hvm_vcpu_has_pending_irq(v);
                 if ( unlikely(intack.source != hvm_intsrc_none) )
@@ -242,7 +241,6 @@ void vmx_intr_assist(void)
     struct vcpu *v = current;
     unsigned int tpr_threshold = 0;
     enum hvm_intblk intblk;
-    int pt_vector;
 
     /* Block event injection when single step with MTF. */
     if ( unlikely(v->arch.hvm.single_step) )
@@ -263,8 +261,6 @@ void vmx_intr_assist(void)
 #endif
 
     /* Crank the handle on interrupt state. */
-    pt_vector = pt_update_irq(v);
-
     do {
         unsigned long intr_info;
 
@@ -337,58 +333,6 @@ void vmx_intr_assist(void)
     {
         unsigned long status;
 
-       /*
-        * intack.vector is the highest priority vector. So we set eoi_exit_bitmap
-        * for intack.vector - give a chance to post periodic time interrupts when
-        * periodic time interrupts become the highest one
-        */
-        if ( pt_vector != -1 )
-        {
-#ifndef NDEBUG
-            /*
-             * We assert that intack.vector is the highest priority vector for
-             * only an interrupt from vlapic can reach this point and the
-             * highest vector is chosen in hvm_vcpu_has_pending_irq().
-             * But, in fact, the assertion failed sometimes. It is suspected
-             * that PIR is not synced to vIRR which makes pt_vector is left in
-             * PIR. In order to verify this suspicion, dump some information
-             * when the assertion fails.
-             */
-            if ( unlikely(intack.vector < pt_vector) )
-            {
-                const struct vlapic *vlapic;
-                const struct pi_desc *pi_desc;
-                const uint32_t *word;
-                unsigned int i;
-
-                printk(XENLOG_ERR "%pv: intack: %u:%02x pt: %02x\n",
-                       current, intack.source, intack.vector, pt_vector);
-
-                vlapic = vcpu_vlapic(v);
-                if ( vlapic && vlapic->regs )
-                {
-                    word = (const void *)&vlapic->regs->data[APIC_IRR];
-                    printk(XENLOG_ERR "vIRR:");
-                    for ( i = X86_NR_VECTORS / 32; i-- ; )
-                        printk(" %08x", word[i*4]);
-                    printk("\n");
-                }
-
-                pi_desc = &v->arch.hvm.vmx.pi_desc;
-                if ( pi_desc )
-                {
-                    word = (const void *)&pi_desc->pir;
-                    printk(XENLOG_ERR " PIR:");
-                    for ( i = X86_NR_VECTORS / 32; i-- ; )
-                        printk(" %08x", word[i]);
-                    printk("\n");
-                }
-            }
-#endif
-            ASSERT(intack.vector >= pt_vector);
-            vmx_set_eoi_exit_bitmap(v, intack.vector);
-        }
-
         /* we need update the RVI field */
         __vmread(GUEST_INTR_STATUS, &status);
         status &= ~VMX_GUEST_INTR_STATUS_SUBFIELD_BITMASK;
@@ -397,14 +341,11 @@ void vmx_intr_assist(void)
         __vmwrite(GUEST_INTR_STATUS, status);
 
         vmx_sync_exit_bitmap(v);
-
-        pt_intr_post(v, intack);
     }
     else
     {
         HVMTRACE_2D(INJ_VIRQ, intack.vector, /*fake=*/ 0);
         vmx_inject_extint(intack.vector, intack.source);
-        pt_intr_post(v, intack);
     }
 
     /* Is there another IRQ to queue up behind this one? */
diff --git a/xen/arch/x86/hvm/vpt.c b/xen/arch/x86/hvm/vpt.c
index 24d90c0a186..6744b88d20c 100644
--- a/xen/arch/x86/hvm/vpt.c
+++ b/xen/arch/x86/hvm/vpt.c
@@ -26,6 +26,8 @@
 #define mode_is(d, name) \
     ((d)->arch.hvm.params[HVM_PARAM_TIMER_MODE] == HVMPTM_##name)
 
+static bool inject_interrupt(struct periodic_time *pt);
+
 void hvm_init_guest_time(struct domain *d)
 {
     struct pl_time *pl = d->arch.hvm.pl_time;
@@ -75,35 +77,6 @@ void hvm_set_guest_time(struct vcpu *v, u64 guest_time)
     }
 }
 
-static int pt_irq_vector(struct periodic_time *pt, enum hvm_intsrc src)
-{
-    struct vcpu *v = pt->vcpu;
-    unsigned int gsi, isa_irq;
-    int vector;
-
-    if ( pt->source == PTSRC_lapic )
-        return pt->irq;
-
-    isa_irq = pt->irq;
-
-    if ( src == hvm_intsrc_pic )
-        return (v->domain->arch.hvm.vpic[isa_irq >> 3].irq_base
-                + (isa_irq & 7));
-
-    ASSERT(src == hvm_intsrc_lapic);
-    gsi = pt->source == PTSRC_isa ? hvm_isa_irq_to_gsi(isa_irq) : pt->irq;
-    vector = vioapic_get_vector(v->domain, gsi);
-    if ( vector < 0 )
-    {
-        dprintk(XENLOG_WARNING, "d%u: invalid GSI (%u) for platform timer\n",
-                v->domain->domain_id, gsi);
-        domain_crash(v->domain);
-        return -1;
-    }
-
-    return vector;
-}
-
 static int pt_irq_masked(struct periodic_time *pt)
 {
     struct vcpu *v = pt->vcpu;
@@ -257,35 +230,15 @@ void pt_restore_timer(struct vcpu *v)
     pt_vcpu_lock(v);
 
     list_for_each_entry ( pt, head, list )
-    {
         if ( pt->pending_intr_nr == 0 )
-        {
-            pt_process_missed_ticks(pt);
             set_timer(&pt->timer, pt->scheduled);
-        }
-    }
 
     pt_thaw_time(v);
 
     pt_vcpu_unlock(v);
 }
 
-static void pt_timer_fn(void *data)
-{
-    struct periodic_time *pt = data;
-
-    pt_lock(pt);
-
-    pt->pending_intr_nr++;
-    pt->scheduled += pt->period;
-    pt->do_not_freeze = 0;
-
-    vcpu_kick(pt->vcpu);
-
-    pt_unlock(pt);
-}
-
-static void pt_irq_fired(struct vcpu *v, struct periodic_time *pt)
+static void irq_eoi(struct periodic_time *pt)
 {
     pt->irq_issued = false;
 
@@ -295,188 +248,153 @@ static void pt_irq_fired(struct vcpu *v, struct periodic_time *pt)
             list_del(&pt->list);
         pt->on_list = false;
         pt->pending_intr_nr = 0;
+
+        return;
     }
-    else if ( mode_is(v->domain, one_missed_tick_pending) ||
-              mode_is(v->domain, no_missed_ticks_pending) )
-    {
-        pt->last_plt_gtime = hvm_get_guest_time(v);
-        pt_process_missed_ticks(pt);
-        pt->pending_intr_nr = 0; /* 'collapse' all missed ticks */
-        set_timer(&pt->timer, pt->scheduled);
-    }
-    else
+
+    pt_process_missed_ticks(pt);
+    /* 'collapse' missed ticks according to the selected mode. */
+    switch ( pt->vcpu->domain->arch.hvm.params[HVM_PARAM_TIMER_MODE] )
     {
-        pt->last_plt_gtime += pt->period;
-        if ( --pt->pending_intr_nr == 0 )
-        {
-            pt_process_missed_ticks(pt);
-            if ( pt->pending_intr_nr == 0 )
-                set_timer(&pt->timer, pt->scheduled);
-        }
+    case HVMPTM_one_missed_tick_pending:
+        pt->pending_intr_nr = min(pt->pending_intr_nr, 1u);
+        break;
+
+    case HVMPTM_no_missed_ticks_pending:
+        pt->pending_intr_nr = 0;
+        break;
     }
 
-    if ( mode_is(v->domain, delay_for_missed_ticks) &&
-         (hvm_get_guest_time(v) < pt->last_plt_gtime) )
-        hvm_set_guest_time(v, pt->last_plt_gtime);
+    if ( !pt->pending_intr_nr )
+        set_timer(&pt->timer, pt->scheduled);
 }
 
-int pt_update_irq(struct vcpu *v)
+static void pt_timer_fn(void *data)
 {
-    struct list_head *head = &v->arch.hvm.tm_list;
-    struct periodic_time *pt, *temp, *earliest_pt;
-    uint64_t max_lag;
-    int irq, pt_vector = -1;
-    bool level;
+    struct periodic_time *pt = data;
+    struct vcpu *v;
+    time_cb *cb = NULL;
+    void *cb_priv;
+    unsigned int irq;
 
-    pt_vcpu_lock(v);
+    pt_lock(pt);
 
-    earliest_pt = NULL;
-    max_lag = -1ULL;
-    list_for_each_entry_safe ( pt, temp, head, list )
+    v = pt->vcpu;
+    irq = pt->irq;
+
+    if ( inject_interrupt(pt) )
     {
-        if ( pt->pending_intr_nr )
-        {
-            if ( pt_irq_masked(pt) &&
-                 /* Level interrupts should be asserted even if masked. */
-                 !pt->level )
-            {
-                /* suspend timer emulation */
-                list_del(&pt->list);
-                pt->on_list = 0;
-            }
-            else
-            {
-                if ( (pt->last_plt_gtime + pt->period) < max_lag )
-                {
-                    max_lag = pt->last_plt_gtime + pt->period;
-                    earliest_pt = pt;
-                }
-            }
-        }
+        pt->scheduled += pt->period;
+        pt->do_not_freeze = 0;
+        cb = pt->cb;
+        cb_priv = pt->priv;
     }
-
-    if ( earliest_pt == NULL )
+    else
     {
-        pt_vcpu_unlock(v);
-        return -1;
+        /* Masked. */
+        if ( pt->on_list )
+            list_del(&pt->list);
+        pt->on_list = false;
+        pt->pending_intr_nr++;
     }
 
-    earliest_pt->irq_issued = 1;
-    irq = earliest_pt->irq;
-    level = earliest_pt->level;
+    pt_unlock(pt);
 
-    pt_vcpu_unlock(v);
+    if ( cb )
+        cb(v, cb_priv);
+}
 
-    switch ( earliest_pt->source )
-    {
-    case PTSRC_lapic:
-        /*
-         * If periodic timer interrupt is handled by lapic, its vector in
-         * IRR is returned and used to set eoi_exit_bitmap for virtual
-         * interrupt delivery case. Otherwise return -1 to do nothing.
-         */
-        vlapic_set_irq(vcpu_vlapic(v), irq, 0);
-        pt_vector = irq;
-        break;
+static void eoi_callback(struct periodic_time *pt)
+{
+    struct vcpu *v = NULL;
+    time_cb *cb = NULL;
+    void *cb_priv = NULL;
 
-    case PTSRC_isa:
-        hvm_isa_irq_deassert(v->domain, irq);
-        if ( platform_legacy_irq(irq) && vlapic_accept_pic_intr(v) &&
-             v->domain->arch.hvm.vpic[irq >> 3].int_output )
-            hvm_isa_irq_assert(v->domain, irq, NULL);
-        else
+    pt_lock(pt);
+
+    irq_eoi(pt);
+    if ( pt->pending_intr_nr )
+    {
+        if ( inject_interrupt(pt) )
         {
-            pt_vector = hvm_isa_irq_assert(v->domain, irq, vioapic_get_vector);
-            /*
-             * hvm_isa_irq_assert may not set the corresponding bit in vIRR
-             * when mask field of IOAPIC RTE is set. Check it again.
-             */
-            if ( pt_vector < 0 || !vlapic_test_irq(vcpu_vlapic(v), pt_vector) )
-                pt_vector = -1;
+            pt->pending_intr_nr--;
+            cb = pt->cb;
+            cb_priv = pt->priv;
+            v = pt->vcpu;
         }
-        break;
-
-    case PTSRC_ioapic:
-        pt_vector = hvm_ioapic_assert(v->domain, irq, level);
-        if ( pt_vector < 0 || !vlapic_test_irq(vcpu_vlapic(v), pt_vector) )
+        else
         {
-            pt_vector = -1;
-            if ( level )
-            {
-                /*
-                 * Level interrupts are always asserted because the pin assert
-                 * count is incremented regardless of whether the pin is masked
-                 * or the vector latched in IRR, so also execute the callback
-                 * associated with the timer.
-                 */
-                time_cb *cb = NULL;
-                void *cb_priv = NULL;
-
-                pt_vcpu_lock(v);
-                /* Make sure the timer is still on the list. */
-                list_for_each_entry ( pt, &v->arch.hvm.tm_list, list )
-                    if ( pt == earliest_pt )
-                    {
-                        pt_irq_fired(v, pt);
-                        cb = pt->cb;
-                        cb_priv = pt->priv;
-                        break;
-                    }
-                pt_vcpu_unlock(v);
-
-                if ( cb != NULL )
-                    cb(v, cb_priv);
-            }
+            /* Masked. */
+            if ( pt->on_list )
+                list_del(&pt->list);
+            pt->on_list = false;
         }
-        break;
     }
 
-    return pt_vector;
+    pt_unlock(pt);
+
+    if ( cb )
+        cb(v, cb_priv);
 }
 
-static struct periodic_time *is_pt_irq(
-    struct vcpu *v, struct hvm_intack intack)
+static void vlapic_eoi_callback(struct vcpu *unused, unsigned int unused2,
+                                void *data)
 {
-    struct list_head *head = &v->arch.hvm.tm_list;
-    struct periodic_time *pt;
-
-    list_for_each_entry ( pt, head, list )
-    {
-        if ( pt->pending_intr_nr && pt->irq_issued &&
-             (intack.vector == pt_irq_vector(pt, intack.source)) )
-            return pt;
-    }
+    eoi_callback(data);
+}
 
-    return NULL;
+static void vioapic_eoi_callback(struct domain *unused, unsigned int unused2,
+                                 void *data)
+{
+    eoi_callback(data);
 }
 
-void pt_intr_post(struct vcpu *v, struct hvm_intack intack)
+static bool inject_interrupt(struct periodic_time *pt)
 {
-    struct periodic_time *pt;
-    time_cb *cb;
-    void *cb_priv;
+    struct vcpu *v = pt->vcpu;
+    struct domain *d = v->domain;
+    unsigned int irq = pt->irq;
 
-    if ( intack.source == hvm_intsrc_vector )
-        return;
+    /* Level interrupts should be asserted even if masked. */
+    if ( pt_irq_masked(pt) && !pt->level )
+        return false;
 
-    pt_vcpu_lock(v);
-
-    pt = is_pt_irq(v, intack);
-    if ( pt == NULL )
+    switch ( pt->source )
     {
-        pt_vcpu_unlock(v);
-        return;
+    case PTSRC_lapic:
+        vlapic_set_irq_callback(vcpu_vlapic(v), pt->irq, 0, vlapic_eoi_callback,
+                                pt);
+        break;
+
+    case PTSRC_isa:
+        hvm_isa_irq_deassert(d, irq);
+        hvm_isa_irq_assert(d, irq, NULL);
+        break;
+
+    case PTSRC_ioapic:
+        hvm_ioapic_assert(d, irq, pt->level);
+        break;
     }
 
-    pt_irq_fired(v, pt);
+    switch ( d->arch.hvm.params[HVM_PARAM_TIMER_MODE] )
+    {
+    case HVMPTM_one_missed_tick_pending:
+    case HVMPTM_no_missed_ticks_pending:
+        pt->last_plt_gtime = hvm_get_guest_time(v);
+        break;
 
-    cb = pt->cb;
-    cb_priv = pt->priv;
+    case HVMPTM_delay_for_missed_ticks:
+        pt->last_plt_gtime += pt->period;
+        if ( hvm_get_guest_time(v) < pt->last_plt_gtime )
+            hvm_set_guest_time(v, pt->last_plt_gtime);
+        break;
 
-    pt_vcpu_unlock(v);
+    default:
+        pt->last_plt_gtime += pt->period;
+        break;
+    }
 
-    if ( cb != NULL )
-        cb(v, cb_priv);
+    return true;
 }
 
 void pt_migrate(struct vcpu *v)
@@ -552,6 +470,24 @@ void create_periodic_time(
     pt->cb = cb;
     pt->priv = data;
 
+    switch ( pt->source )
+    {
+        int rc;
+
+    case PTSRC_isa:
+        irq = hvm_isa_irq_to_gsi(irq);
+        /* fallthrough */
+    case PTSRC_ioapic:
+        pt->eoi_cb.callback = vioapic_eoi_callback;
+        pt->eoi_cb.data = pt;
+        rc = hvm_gsi_register_callback(v->domain, irq, &pt->eoi_cb);
+        if ( rc )
+            gdprintk(XENLOG_WARNING,
+                     "unable to register callback for timer GSI %u source %u: %d\n",
+                     irq, pt->source, rc);
+        break;
+    }
+
     pt_vcpu_lock(v);
     pt->on_list = 1;
     list_add(&pt->list, &v->arch.hvm.tm_list);
@@ -565,6 +501,8 @@ void create_periodic_time(
 
 void destroy_periodic_time(struct periodic_time *pt)
 {
+    unsigned int gsi;
+
     /* Was this structure previously initialised by create_periodic_time()? */
     if ( pt->vcpu == NULL )
         return;
@@ -574,6 +512,17 @@ void destroy_periodic_time(struct periodic_time *pt)
         list_del(&pt->list);
     pt->on_list = 0;
     pt->pending_intr_nr = 0;
+
+    gsi = pt->irq;
+    switch ( pt->source )
+    {
+    case PTSRC_isa:
+        gsi = hvm_isa_irq_to_gsi(pt->irq);
+        /* fallthrough */
+    case PTSRC_ioapic:
+        hvm_gsi_unregister_callback(pt->vcpu->domain, gsi, &pt->eoi_cb);
+        break;
+    }
     pt_unlock(pt);
 
     /*
@@ -641,20 +590,29 @@ void pt_adjust_global_vcpu_target(struct vcpu *v)
     write_unlock(&pl_time->vhpet.lock);
 }
 
-
 static void pt_resume(struct periodic_time *pt)
 {
+    struct vcpu *v;
+    time_cb *cb = NULL;
+    void *cb_priv;
+
     if ( pt->vcpu == NULL )
         return;
 
     pt_lock(pt);
-    if ( pt->pending_intr_nr && !pt->on_list )
+    if ( pt->pending_intr_nr && !pt->on_list && inject_interrupt(pt) )
     {
+        pt->pending_intr_nr--;
+        cb = pt->cb;
+        cb_priv = pt->priv;
+        v = pt->vcpu;
         pt->on_list = 1;
         list_add(&pt->list, &pt->vcpu->arch.hvm.tm_list);
-        vcpu_kick(pt->vcpu);
     }
     pt_unlock(pt);
+
+    if ( cb )
+        cb(v, cb_priv);
 }
 
 void pt_may_unmask_irq(struct domain *d, struct periodic_time *vlapic_pt)
diff --git a/xen/include/asm-x86/hvm/vpt.h b/xen/include/asm-x86/hvm/vpt.h
index 74c0cedd11c..384d2e02039 100644
--- a/xen/include/asm-x86/hvm/vpt.h
+++ b/xen/include/asm-x86/hvm/vpt.h
@@ -23,6 +23,7 @@
 #include <xen/list.h>
 #include <xen/rwlock.h>
 #include <asm/hvm/hvm.h>
+#include <asm/hvm/irq.h>
 
 /*
  * Abstract layer of periodic time, one short time.
@@ -50,6 +51,7 @@ struct periodic_time {
     struct timer timer;         /* ac_timer */
     time_cb *cb;
     void *priv;                 /* point back to platform time source */
+    struct hvm_gsi_eoi_callback eoi_cb; /* EOI callback registration data */
 };
 
 
@@ -151,9 +153,6 @@ struct pl_time {    /* platform time */
 
 void pt_save_timer(struct vcpu *v);
 void pt_restore_timer(struct vcpu *v);
-int pt_update_irq(struct vcpu *v);
-struct hvm_intack;
-void pt_intr_post(struct vcpu *v, struct hvm_intack intack);
 void pt_migrate(struct vcpu *v);
 
 void pt_adjust_global_vcpu_target(struct vcpu *v);
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:10:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:10:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113775.216841 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr4k-0001XU-Nf; Tue, 20 Apr 2021 14:10:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113775.216841; Tue, 20 Apr 2021 14:10: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 1lYr4k-0001Wn-Gw; Tue, 20 Apr 2021 14:10:02 +0000
Received: by outflank-mailman (input) for mailman id 113775;
 Tue, 20 Apr 2021 14:10:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr4j-0000xF-6P
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:10:01 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 91416c04-4b23-4ec2-a787-16f6647b10eb;
 Tue, 20 Apr 2021 14:09: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: 91416c04-4b23-4ec2-a787-16f6647b10eb
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927789;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=7GEPKb6ncYPoPihoILUyCWuStYhcu43arsQB5CIFPFU=;
  b=L3O5rcUGxVJtogKyOrG5gl6O2s3OPSnVhiQjVDuDFjzvUqtKH1aLEcFE
   zNGF6U6peVAcfP9jJnQi1wZAAK28IDsNbej+jJx/0qPHgA2MOPefZzbk5
   g67A9qTEdAtQfur6az5Rn6gTBl6vTRmkJNFK+wxSIOETmg1EK47ItR5sj
   8=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: VEEtpjlqf4G1++BClyikDs0Ls7k7Zt6xpVSuR1O/bHuqiPtT7hm68g6WfXeRCKNb5gdPhWo8ey
 Ns8U9Ejo2FXD3AYYO+saKO0YOwSFV7NytP+WJ2AxubI9aCxslz/T6zz+vVcG/jp1H94f6Ae4bi
 uamO87zMne5P0ljwKB/jq72qwpHvxtDsDE7f9bduTROSLcHb6/fktusw5bH6xM3Vse5/22PyHb
 s9NjYINPow6nNtQnso6HkyMFXRyuRCuRca4dW+Gz9lxUy32PisygU0HklI4EtFZkZQNlO6LUJW
 5So=
X-SBRS: 5.2
X-MesageID: 41981586
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:i1GYUq4SOFICYuRVegPXwU2EI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+LpT+jvfMk4/rZgNDOg4/5GC1/E6VwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLrCP0+HTU6/1t6bnc4/tFQPeBk80Ebgjr4zzYH7hJf52nkHQLrPq06FAs+e
 O80ysIG8ho8XveciWUjHLWqnDd+Q0j4XPj1lOU6EGLyaeSJENYerh8rLlUfRfD500rsMsU6t
 Mw40uju4dKFhSFpSzh5rHzJmBXv3Cpqnkvm/N7tQ05baIibtZq3Oki1XIQOpIBECXm0ZsgAe
 ljAerNjcwmD2+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoiPA3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QS2vCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSfGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erGs
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdUwoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtG4fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3DToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5ZvJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjYvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMZAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCU5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3iml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NAgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso6I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfCvA6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu+lZMfRmmIpA79Ij
 CkglVg1saAeyuIzrgBDa0sZUxQdUgn8XxnldnyPbH4OUGPd+tZ+kC9PWL4WLhBSLKdEbFVih
 ph+dmHk6u2cCX/sTqg8AdTE+Zr82y9R9m1Dx/JMelU88aiMVDJu5CU2qeI/X7KYAr+TV8Zi4
 1DfVERacoGqgBKtvxJ7gGCDortokwklFNC5ypAjVCF4Pn+3Fvm
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41981586"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QiNqsrpIfT41HYdDcTVnK7WR1Y+ZytSUowSN9FihNKTwKBkleiykZ6UYts2wiDVeScg0dL3wD7GaLgjr5Z3JyPrN2o2WXbVCFWkzYxNqhQPj5eVwXbelPA5aQnnLqj64IUTLR+rLxEiAdcVA6unVQL9yq6ljpZXExuXRvaesMR4sCrOIM90jcfXicQ90cogaGmpuIueCvIPnypjeCAJBSU1WtHRFf4zjK906v6xXxs2IE9WSDiR9wCN2oAvijIw7Iv+agZ2uCFhtfDuQfom0sdwLHkuXh/0TI/Gdxf2ETRbv2qQk0gM1mI30QMuiBxBxZ0Ghzy68TJVaPW4gTooDkg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bszQ+bQrryson/MDnymvuIoXuzehE71ihmfPFljnugg=;
 b=nwpqGMLb1LMOkt/YQhPx1gd3IZX3gejEV8pG4eFPpT7cjz8ms+W9iW5S5bLUHiUFjRvE3qoL5uJqkXBdi+mnclF69FCqbYacY2leFkLwQICsIztKPQd9rxldUykI/WBexWyP9VTMe7qqTepeV4jKWgiDaXDOZbbF5x8VxeMQF+EOfzZam0ka8yq66NoV09w8HhlMKSUjZocCh0n4w4//ykXdsO0UN6InhU0oTAkJ1438kCstCSkcnMD2rUROUul2PPpsKGmG6SxwMHthrhADxnhqQ4G9ykK1FDqdi4JWm8IFX7e8Lo0XhWgcW3tlHk5XbmJKnq1wBWTy/wOOAFNqyA==
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=bszQ+bQrryson/MDnymvuIoXuzehE71ihmfPFljnugg=;
 b=Q5vqNM/UX7TkqqDh+Ox44YFOZnKbHEUvtxU7cpQWXw3nPd1KeF0xvQPqt6Fg4t16RIepOLiSGPl9352CeMJJDJoXpBPupnBb3KUjFBh0F2U/i92OoyfL6USaFM5bMz0VjlQLeBD62ob9ArSr5pBfgfg9uJa6whsvs6WA9nVFfo8=
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 v4 09/12] x86/irq: remove unused parameter from hvm_isa_irq_assert
Date: Tue, 20 Apr 2021 16:07:20 +0200
Message-ID: <20210420140723.65321-10-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0045.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::33) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 1bbd9453-e694-445c-1e81-08d90405f37f
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB60007F4436DDE3D6C9AD4AC38F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:785;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: yrp19vMbdgSLoMYRN5sFOM/aW2kCSa3UfvBF91iX5B4wbnjoVo3XAq0I6MYRRhmX4FAoJw5gxmWCbn/nJ/+WrpexoMZkDW8lhuuoow+Qx4JGm3yoEUDVoBeGtxMx0spsJO5rEtuFZh2GNTGMXislvEvJWzUPsi2Tr15Dk4byy/oDNadBWvYj/arzDtELdoDUsLgrkHQUb7ykvJADh5MTlhYDTJFqBDkMpLPiorbcMMewLQx4esMTS7hKvJNsFRvcaxPhRIvgkHI6dHBJGsI03BXLlN3gRkocdN1X13jNYyiqTUf1S4MBNbSNPfuPM1ZmTOrbMsgJRqgvNmLt93UtJ7eegRwoce1RqSr32cJmWQK//26I4qLUWvUtM8APESIvxQsjYGto/nw3tzeZ2Fpx1lCc9VXih1+0CV3nifpeAODGhLw1GkEdxrP1b6vQ7lzOft5IEJBSaUe6Nk/R1oibarlbznvf9ihdk4UVBZbsZItn1Vl7qG+zCPsXE0ZZsC3MfHdL4Hn79YdMwA/oaILwUQkEaKZLHqVbptLiXHqUnvVGeRe88PxCdtQFhWlpxPspQJq0ahWJ0mTr/ny3wKUosOWAcymT1YMIFQUvLsT0Aco=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(186003)(5660300002)(8936002)(54906003)(2906002)(6666004)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Y+Hy+MK8jJM61yVo/AHlkWCgelHo2dIWxGHi/bG?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 1bbd9453-e694-445c-1e81-08d90405f37f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:45.7034
 (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: Br+6PV/vvVSV4s/znOhGu+1M1wygWtaVzVywUtgtGf5otv2d7FRQpCy2ikUCYz2UxaFeTzULB/SuVpwYJANHog==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

There are no callers anymore passing a get_vector function pointer to
hvm_isa_irq_assert, so drop the parameter.

No functional change expected.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v3:
 - New in this version.
---
 xen/arch/x86/hvm/dm.c         |  2 +-
 xen/arch/x86/hvm/irq.c        | 10 +---------
 xen/arch/x86/hvm/pmtimer.c    |  2 +-
 xen/arch/x86/hvm/rtc.c        |  2 +-
 xen/arch/x86/hvm/vpt.c        |  2 +-
 xen/include/asm-x86/hvm/irq.h |  4 +---
 6 files changed, 6 insertions(+), 16 deletions(-)

diff --git a/xen/arch/x86/hvm/dm.c b/xen/arch/x86/hvm/dm.c
index b60b9f3364a..c62a259b7fc 100644
--- a/xen/arch/x86/hvm/dm.c
+++ b/xen/arch/x86/hvm/dm.c
@@ -110,7 +110,7 @@ static int set_isa_irq_level(struct domain *d, uint8_t isa_irq,
         hvm_isa_irq_deassert(d, isa_irq);
         break;
     case 1:
-        hvm_isa_irq_assert(d, isa_irq, NULL);
+        hvm_isa_irq_assert(d, isa_irq);
         break;
     default:
         return -EINVAL;
diff --git a/xen/arch/x86/hvm/irq.c b/xen/arch/x86/hvm/irq.c
index 4825a387bdc..c3d8f2a786a 100644
--- a/xen/arch/x86/hvm/irq.c
+++ b/xen/arch/x86/hvm/irq.c
@@ -212,13 +212,10 @@ void hvm_gsi_deassert(struct domain *d, unsigned int gsi)
     spin_unlock(&d->arch.hvm.irq_lock);
 }
 
-int hvm_isa_irq_assert(struct domain *d, unsigned int isa_irq,
-                       int (*get_vector)(const struct domain *d,
-                                         unsigned int gsi))
+void hvm_isa_irq_assert(struct domain *d, unsigned int isa_irq)
 {
     struct hvm_irq *hvm_irq = hvm_domain_irq(d);
     unsigned int gsi = hvm_isa_irq_to_gsi(isa_irq);
-    int vector = -1;
 
     ASSERT(isa_irq <= 15);
 
@@ -228,12 +225,7 @@ int hvm_isa_irq_assert(struct domain *d, unsigned int isa_irq,
          (hvm_irq->gsi_assert_count[gsi]++ == 0) )
         assert_irq(d, gsi, isa_irq);
 
-    if ( get_vector )
-        vector = get_vector(d, gsi);
-
     spin_unlock(&d->arch.hvm.irq_lock);
-
-    return vector;
 }
 
 void hvm_isa_irq_deassert(
diff --git a/xen/arch/x86/hvm/pmtimer.c b/xen/arch/x86/hvm/pmtimer.c
index 97b9e41712f..9d30b145f60 100644
--- a/xen/arch/x86/hvm/pmtimer.c
+++ b/xen/arch/x86/hvm/pmtimer.c
@@ -61,7 +61,7 @@ static void pmt_update_sci(PMTState *s)
     ASSERT(spin_is_locked(&s->lock));
 
     if ( acpi->pm1a_en & acpi->pm1a_sts & SCI_MASK )
-        hvm_isa_irq_assert(s->vcpu->domain, SCI_IRQ, NULL);
+        hvm_isa_irq_assert(s->vcpu->domain, SCI_IRQ);
     else
         hvm_isa_irq_deassert(s->vcpu->domain, SCI_IRQ);
 }
diff --git a/xen/arch/x86/hvm/rtc.c b/xen/arch/x86/hvm/rtc.c
index 9992595c45a..b66ca6f64f1 100644
--- a/xen/arch/x86/hvm/rtc.c
+++ b/xen/arch/x86/hvm/rtc.c
@@ -63,7 +63,7 @@ static void rtc_update_irq(RTCState *s)
 
     s->hw.cmos_data[RTC_REG_C] |= RTC_IRQF;
     hvm_isa_irq_deassert(vrtc_domain(s), RTC_IRQ);
-    hvm_isa_irq_assert(vrtc_domain(s), RTC_IRQ, NULL);
+    hvm_isa_irq_assert(vrtc_domain(s), RTC_IRQ);
 }
 
 /* Called by the VPT code after it's injected a PF interrupt for us.
diff --git a/xen/arch/x86/hvm/vpt.c b/xen/arch/x86/hvm/vpt.c
index 6744b88d20c..639e45c520e 100644
--- a/xen/arch/x86/hvm/vpt.c
+++ b/xen/arch/x86/hvm/vpt.c
@@ -368,7 +368,7 @@ static bool inject_interrupt(struct periodic_time *pt)
 
     case PTSRC_isa:
         hvm_isa_irq_deassert(d, irq);
-        hvm_isa_irq_assert(d, irq, NULL);
+        hvm_isa_irq_assert(d, irq);
         break;
 
     case PTSRC_ioapic:
diff --git a/xen/include/asm-x86/hvm/irq.h b/xen/include/asm-x86/hvm/irq.h
index 57d51c15863..4e3534d4eb4 100644
--- a/xen/include/asm-x86/hvm/irq.h
+++ b/xen/include/asm-x86/hvm/irq.h
@@ -214,9 +214,7 @@ void hvm_pci_intx_deassert(struct domain *d, unsigned int device,
  * allows us to get the interrupt vector in the protection of irq_lock.
  * For most cases, just set get_vector to NULL.
  */
-int hvm_isa_irq_assert(struct domain *d, unsigned int isa_irq,
-                       int (*get_vector)(const struct domain *d,
-                                         unsigned int gsi));
+void hvm_isa_irq_assert(struct domain *d, unsigned int isa_irq);
 void hvm_isa_irq_deassert(struct domain *d, unsigned int isa_irq);
 
 /* Modify state of GSIs. */
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:10:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:10:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113779.216853 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr4o-00023g-V2; Tue, 20 Apr 2021 14:10:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113779.216853; Tue, 20 Apr 2021 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 1lYr4o-00023V-QW; Tue, 20 Apr 2021 14:10:06 +0000
Received: by outflank-mailman (input) for mailman id 113779;
 Tue, 20 Apr 2021 14:10:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr4n-0001lG-2b
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:10:05 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 90bd426b-64ac-423a-b518-259ed8123f39;
 Tue, 20 Apr 2021 14:10: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: 90bd426b-64ac-423a-b518-259ed8123f39
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927803;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=EawpHgaCPssKy0w03Zn3vt1Po3SOLbn8R3gB+qDePj0=;
  b=UTaIBj+dJjxLFd8eUtvLtlec3RqQVOIRyUFy/dIYF+jgQvgjR5HPwCMe
   9lZHC9MkvnmpQI7m8ufPedLjhHrDGg0qgBqi2SwkC3aPBdDZHGi07Qe8O
   2LFJuc22UihR8u7UOeMrn+lmbBvQqbolHoxZwyqvtEbuREGpQQgGEd6dr
   o=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: XOe7fnT/5ubb+lD/7lVLeXqTOp8nPSdy0sXX8INu0wjghZKVflCXppAuSAmdK1O3bjuT8Nw0LB
 u82cNySaWZL35V6TdxA942yXs3NPGBrvslKzs0Syw0JscaP64ERKvO79BFMlpPlxulFEk1l5N7
 UpchroWs+AbTEgMvmcfnIFaIr/NaPCQFgYwf1OizZ+b8TkAmdWCf0QvqvNhWS1cHTFizgB0rbv
 OCUPWnogOFNJXLIQRUara5A0JRTU4H9dsrwqWsQsAbUOu2g4jQXhc1W+XAT0vnLGsSCQjVpYH4
 IYA=
X-SBRS: 5.2
X-MesageID: 42368720
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:6JPnbq5p3dhQW7a7ewPXwU2EI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+LpT+jvfMk4/rZgNDOg4/5GC1/E6VwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLrCP0+HTU6/1t6bnc4/tFQPeBk80Ebgjr4zzYH7hJf52nkHQLrPq06FAs+e
 O80ysIG8ho8XveciWUjHLWqnDd+Q0j4XPj1lOU6EGLyaeSJENYerh8rLlUfRfD500rsMsU6t
 Mw40uju4dKFhSFpSzh5rHzJmBXv3Cpqnkvm/N7tQ05baIibtZq3Oki1XIQOpIBECXm0ZsgAe
 ljAerNjcwmD2+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoiPA3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QS2vCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSfGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erGs
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdUwoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtG4fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3DToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5ZvJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjYvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMZAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCU5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3iml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NAgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso6I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfCvA6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu+lZMfRmmIpA79Ij
 CkglVg1saAeyuIzrgBDa0sZUxQdUgn8XxnldnyPbH4OUGPd+tZ+kC9PWL4WLhBSLKdEbFVih
 ph+dmHk6u2cCX/sTqg8AdTE+Zr82y9R9m1Dx/JMelU88aiMVDJu5CU2qeI/X7KYAr+TV8Zi4
 1DfVERacoGqgBKtvxJ7gGCDortokwklFNC5ypAjVCF4Pn+3Fvm
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="42368720"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QwMWEJR/YE+3blOd47hlIhfmIPlZpXJ5H2c2BwwA4FlWQTskJIF5KGgiFBXrazoWUZ+Mpg+3rAFo9LSCZew+tK4Rx525mzjMtMn8ZTByTk5QIrMBoyBWprEscBb3hK2gFBMIaqKQiyfuvVq4hOIVE2Y8xg43RFP/OOtrzz64Ub/CP4m6E9zdS0A1TFRlBQZwQ1wgVItWHAkEJotwIi36xNSQjBKnfEGmFUqYtt+gajLTmHaT7h9OBbU/9RKd7xfVDArY1W4EEpY3h4qFVZwJSCZ+nojrApjJyduxVu1SGIRXaAbtCZRSkWUxTJWUgOR6j2xkZFPnIvol5DkUdzxiqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KpczQuO47SkhWWpbzazODSpFWqenkbs2N4Y7huesY2k=;
 b=YrPtwHcnZZi3xe/GGmkFOE4HqBUWbGGlQ+Gb+ImyX+t9+k5lPwpP8+XlsGV4VWtyTsStwEbyt7vOz9EfaM6i+sE+UEpjGc0Xq89BEYwb2JSBfyZhIkOn6/a9ivuaHtyMpQtM0cqYZM8MgN8IAW4XuP86MqkfwPtEvgA9TWnTW1x5/MUoVA9TaMOI690rUikSR7dj1i1Cfs4Yp17Zc3lqOksuDQVCTXYBdDclvRYSoafuv3DKBiIfxmhZdWVgUu4v2DzNjtsXVIq+K3jCxK6J3FUpKA08wlBSEB1nUj+u40ih0UlRpJETilpQ4ViOx/GxvPl2GtQ9dAqRMV7PLymWmg==
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=KpczQuO47SkhWWpbzazODSpFWqenkbs2N4Y7huesY2k=;
 b=YA/riF+sNtVKRT/Yz4IZjIxeKWlRDsACPRSDCmaSiMuiha1OH+7tV1Q73LkjYY2RbabqtNibvhoKtWMMppDkyOF3zQX/AVjTJ6xZTCo7M/FXodoAGvjZaT+WacQp+B4sOlPNKPVK6d3qPRExF6i/bCoHGMxgMhRVu9D/oWEUHrA=
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 v4 11/12] x86/vpt: remove vPT timers per-vCPU lists
Date: Tue, 20 Apr 2021 16:07:22 +0200
Message-ID: <20210420140723.65321-12-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0177.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::16)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3e8d0619-2564-4581-8b16-08d90405fbae
X-MS-TrafficTypeDiagnostic: DM5PR03MB3068:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3068BC27730C36A54470A51F8F489@DM5PR03MB3068.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:227;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ot903jG5ohElQrZBEWVAxJj1c9HSJ3w1/sHAADpXPis0O5bnR4cWah9w1MuGRJzzITEMEvIPSg4H05VqniJLtQSrAEsT3bp/ggbe7x86oRZr6SJeg+sQnMshLp+Gq16tohFgYizczOpyRRitCatN/13MW4eikCfNvbTX4pglwYA1t4IaLMg9EYAfyuSBSx2T7HcU/06uuyRBoZrWuCVYjsRd7OeyJkq3xBz9fAaEQ0l5Ic2DRe2n4//CQuAyPSAZvIe6MgyMnMC7oKL9g4DlpOiHphejarCsGXMeIat3S6Gpims2HGnKLKQzCFgtSCNDTQtlMI+RaOuMk2VCGmjgsvn+z+lHQliUYn5Fk2PWsvEcifPEEgBEvx0InYBogbkrBWXnnSAhenbB3XneSDQoMx1mOBZTsfx01U7d92emPPvSuUo5Xb9V8XtHxddwff8OCmW9PsWaB/QVWf3CjYcvgByblBiHjrTh3OUuXg+H2A0VheuUpasIUG1V/IUWIrW7UrHQSW+hZ7ZrpB6fTEW3slL2MqNo9GtyvcpQHqJ8tQ14XiafCJDGBT5SZ3SBjSPLdqOaXP3IDrspIreU0XUJvW32xgUgRUPYC7X3Ha2wp1k=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(346002)(366004)(39860400002)(136003)(396003)(54906003)(316002)(2906002)(6486002)(30864003)(956004)(1076003)(38100700002)(36756003)(2616005)(16526019)(5660300002)(6496006)(83380400001)(4326008)(8676002)(26005)(66556008)(66946007)(66476007)(186003)(8936002)(86362001)(6666004)(478600001)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?PJf8LWTRDSYbnC/lzrt4kOQRtnN/1MC4UJW6x0B?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3e8d0619-2564-4581-8b16-08d90405fbae
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:59.4807
 (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: 7VlPeKNLGt6z5IN3PjjXlqE71FQFDsAomWRlaVsOeK2UZZ3dAfc26CaT5LG6TJGEH9XRExjsAQ8eDzT2zO9rDg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3068
X-OriginatorOrg: citrix.com

No longer add vPT timers to lists on specific vCPUs, since there's no
need anymore to check if timer interrupts have been injected on return
to HVM guest.

Such change allows to get rid of virtual timers vCPU migration, and
also cleanup some of the virtual timers fields that are no longer
required.

The model is also slightly different now in that timers are not
stopped when a vCPU is de-scheduled. Such timers will continue
running, and when triggered the function will try to inject the
corresponding interrupt to the guest (which might be different than
the currently running one). Note that the timer triggering when the
guest is no longer running can only happen once, as the timer callback
will not reset the interrupt to fire again. Such resetting if required
will be done by the EOI callback.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
Changes since v3:
 - Remove stale commit log paragrpah.

Changes since v2:
 - Remove pt_{save/restore}_timer and instead use
   pt_{freeze/thaw}_time.
 - Remove the introduction of the 'masked' field, it's not needed.
 - Rework pt_active to use timer_is_active.

Changes since v1:
 - New in this version.
---
 xen/arch/x86/domain.c          |   4 +-
 xen/arch/x86/hvm/hvm.c         |   4 +-
 xen/arch/x86/hvm/vlapic.c      |   1 -
 xen/arch/x86/hvm/vpt.c         | 192 ++++-----------------------------
 xen/include/asm-x86/hvm/vcpu.h |   3 +-
 xen/include/asm-x86/hvm/vpt.h  |  12 +--
 6 files changed, 25 insertions(+), 191 deletions(-)

diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 4dc27f798e7..b6cd715dce9 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -2039,8 +2039,8 @@ void context_switch(struct vcpu *prev, struct vcpu *next)
     vpmu_switch_from(prev);
     np2m_schedule(NP2M_SCHEDLE_OUT);
 
-    if ( is_hvm_domain(prevd) && !list_empty(&prev->arch.hvm.tm_list) )
-        pt_save_timer(prev);
+    if ( is_hvm_domain(prevd) )
+        pt_freeze_time(prev);
 
     local_irq_disable();
 
diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
index 2c4dd1b86f2..ec4ab1f5199 100644
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -489,7 +489,6 @@ void hvm_set_info_guest(struct vcpu *v)
 void hvm_migrate_timers(struct vcpu *v)
 {
     rtc_migrate_timers(v);
-    pt_migrate(v);
 }
 
 void hvm_migrate_pirq(struct hvm_pirq_dpci *pirq_dpci, const struct vcpu *v)
@@ -544,7 +543,7 @@ void hvm_do_resume(struct vcpu *v)
 {
     check_wakeup_from_wait();
 
-    pt_restore_timer(v);
+    pt_thaw_time(v);
 
     if ( !vcpu_ioreq_handle_completion(v) )
         return;
@@ -1559,7 +1558,6 @@ int hvm_vcpu_initialise(struct vcpu *v)
     hvm_asid_flush_vcpu(v);
 
     spin_lock_init(&v->arch.hvm.tm_lock);
-    INIT_LIST_HEAD(&v->arch.hvm.tm_list);
 
     rc = hvm_vcpu_cacheattr_init(v); /* teardown: vcpu_cacheattr_destroy */
     if ( rc != 0 )
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index 8f3a0a2e8f7..2af24989dd5 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -1342,7 +1342,6 @@ void vlapic_adjust_i8259_target(struct domain *d)
     if ( d->arch.hvm.i8259_target == v )
         return;
     d->arch.hvm.i8259_target = v;
-    pt_adjust_global_vcpu_target(v);
 }
 
 int vlapic_has_pending_irq(struct vcpu *v)
diff --git a/xen/arch/x86/hvm/vpt.c b/xen/arch/x86/hvm/vpt.c
index 639e45c520e..6a8d216c7b5 100644
--- a/xen/arch/x86/hvm/vpt.c
+++ b/xen/arch/x86/hvm/vpt.c
@@ -125,24 +125,6 @@ static int pt_irq_masked(struct periodic_time *pt)
     return 1;
 }
 
-/*
- * Functions which read (maybe write) all periodic_time instances
- * attached to a particular vCPU use pt_vcpu_{un}lock locking helpers.
- *
- * Such users are explicitly forbidden from changing the value of the
- * pt->vcpu field, because another thread holding the pt_migrate lock
- * may already be spinning waiting for your vcpu lock.
- */
-static void pt_vcpu_lock(struct vcpu *v)
-{
-    spin_lock(&v->arch.hvm.tm_lock);
-}
-
-static void pt_vcpu_unlock(struct vcpu *v)
-{
-    spin_unlock(&v->arch.hvm.tm_lock);
-}
-
 /*
  * Functions which want to modify a particular periodic_time object
  * use pt_{un}lock locking helpers.
@@ -176,14 +158,12 @@ static void pt_process_missed_ticks(struct periodic_time *pt)
         return;
 
     missed_ticks = missed_ticks / (s_time_t) pt->period + 1;
-    if ( mode_is(pt->vcpu->domain, no_missed_ticks_pending) )
-        pt->do_not_freeze = !pt->pending_intr_nr;
-    else
+    if ( !mode_is(pt->vcpu->domain, no_missed_ticks_pending) )
         pt->pending_intr_nr += missed_ticks;
     pt->scheduled += missed_ticks * pt->period;
 }
 
-static void pt_freeze_time(struct vcpu *v)
+void pt_freeze_time(struct vcpu *v)
 {
     if ( !mode_is(v->domain, delay_for_missed_ticks) )
         return;
@@ -191,7 +171,7 @@ static void pt_freeze_time(struct vcpu *v)
     v->arch.hvm.guest_time = hvm_get_guest_time(v);
 }
 
-static void pt_thaw_time(struct vcpu *v)
+void pt_thaw_time(struct vcpu *v)
 {
     if ( !mode_is(v->domain, delay_for_missed_ticks) )
         return;
@@ -203,52 +183,11 @@ static void pt_thaw_time(struct vcpu *v)
     v->arch.hvm.guest_time = 0;
 }
 
-void pt_save_timer(struct vcpu *v)
-{
-    struct list_head *head = &v->arch.hvm.tm_list;
-    struct periodic_time *pt;
-
-    if ( v->pause_flags & VPF_blocked )
-        return;
-
-    pt_vcpu_lock(v);
-
-    list_for_each_entry ( pt, head, list )
-        if ( !pt->do_not_freeze )
-            stop_timer(&pt->timer);
-
-    pt_freeze_time(v);
-
-    pt_vcpu_unlock(v);
-}
-
-void pt_restore_timer(struct vcpu *v)
-{
-    struct list_head *head = &v->arch.hvm.tm_list;
-    struct periodic_time *pt;
-
-    pt_vcpu_lock(v);
-
-    list_for_each_entry ( pt, head, list )
-        if ( pt->pending_intr_nr == 0 )
-            set_timer(&pt->timer, pt->scheduled);
-
-    pt_thaw_time(v);
-
-    pt_vcpu_unlock(v);
-}
-
 static void irq_eoi(struct periodic_time *pt)
 {
-    pt->irq_issued = false;
-
     if ( pt->one_shot )
     {
-        if ( pt->on_list )
-            list_del(&pt->list);
-        pt->on_list = false;
         pt->pending_intr_nr = 0;
-
         return;
     }
 
@@ -266,7 +205,11 @@ static void irq_eoi(struct periodic_time *pt)
     }
 
     if ( !pt->pending_intr_nr )
+    {
+        /* Make sure timer follows vCPU. */
+        migrate_timer(&pt->timer, current->processor);
         set_timer(&pt->timer, pt->scheduled);
+    }
 }
 
 static void pt_timer_fn(void *data)
@@ -282,21 +225,15 @@ static void pt_timer_fn(void *data)
     v = pt->vcpu;
     irq = pt->irq;
 
-    if ( inject_interrupt(pt) )
+    pt->scheduled += pt->period;
+
+    if ( !inject_interrupt(pt) )
+        pt->pending_intr_nr++;
+    else
     {
-        pt->scheduled += pt->period;
-        pt->do_not_freeze = 0;
         cb = pt->cb;
         cb_priv = pt->priv;
     }
-    else
-    {
-        /* Masked. */
-        if ( pt->on_list )
-            list_del(&pt->list);
-        pt->on_list = false;
-        pt->pending_intr_nr++;
-    }
 
     pt_unlock(pt);
 
@@ -313,22 +250,12 @@ static void eoi_callback(struct periodic_time *pt)
     pt_lock(pt);
 
     irq_eoi(pt);
-    if ( pt->pending_intr_nr )
+    if ( pt->pending_intr_nr && inject_interrupt(pt) )
     {
-        if ( inject_interrupt(pt) )
-        {
-            pt->pending_intr_nr--;
-            cb = pt->cb;
-            cb_priv = pt->priv;
-            v = pt->vcpu;
-        }
-        else
-        {
-            /* Masked. */
-            if ( pt->on_list )
-                list_del(&pt->list);
-            pt->on_list = false;
-        }
+        pt->pending_intr_nr--;
+        cb = pt->cb;
+        cb_priv = pt->priv;
+        v = pt->vcpu;
     }
 
     pt_unlock(pt);
@@ -397,19 +324,6 @@ static bool inject_interrupt(struct periodic_time *pt)
     return true;
 }
 
-void pt_migrate(struct vcpu *v)
-{
-    struct list_head *head = &v->arch.hvm.tm_list;
-    struct periodic_time *pt;
-
-    pt_vcpu_lock(v);
-
-    list_for_each_entry ( pt, head, list )
-        migrate_timer(&pt->timer, v->processor);
-
-    pt_vcpu_unlock(v);
-}
-
 void create_periodic_time(
     struct vcpu *v, struct periodic_time *pt, uint64_t delta,
     uint64_t period, uint8_t irq, time_cb *cb, void *data, bool level)
@@ -429,8 +343,6 @@ void create_periodic_time(
     write_lock(&v->domain->arch.hvm.pl_time->pt_migrate);
 
     pt->pending_intr_nr = 0;
-    pt->do_not_freeze = 0;
-    pt->irq_issued = 0;
 
     /* Periodic timer must be at least 0.1ms. */
     if ( (period < 100000) && period )
@@ -488,11 +400,6 @@ void create_periodic_time(
         break;
     }
 
-    pt_vcpu_lock(v);
-    pt->on_list = 1;
-    list_add(&pt->list, &v->arch.hvm.tm_list);
-    pt_vcpu_unlock(v);
-
     init_timer(&pt->timer, pt_timer_fn, pt, v->processor);
     set_timer(&pt->timer, pt->scheduled);
 
@@ -508,9 +415,6 @@ void destroy_periodic_time(struct periodic_time *pt)
         return;
 
     pt_lock(pt);
-    if ( pt->on_list )
-        list_del(&pt->list);
-    pt->on_list = 0;
     pt->pending_intr_nr = 0;
 
     gsi = pt->irq;
@@ -532,64 +436,6 @@ void destroy_periodic_time(struct periodic_time *pt)
     kill_timer(&pt->timer);
 }
 
-static void pt_adjust_vcpu(struct periodic_time *pt, struct vcpu *v)
-{
-    ASSERT(pt->source == PTSRC_isa || pt->source == PTSRC_ioapic);
-
-    if ( pt->vcpu == NULL )
-        return;
-
-    write_lock(&v->domain->arch.hvm.pl_time->pt_migrate);
-
-    if ( pt->vcpu == v )
-        goto out;
-
-    pt_vcpu_lock(pt->vcpu);
-    if ( pt->on_list )
-        list_del(&pt->list);
-    pt_vcpu_unlock(pt->vcpu);
-
-    pt->vcpu = v;
-
-    pt_vcpu_lock(v);
-    if ( pt->on_list )
-    {
-        list_add(&pt->list, &v->arch.hvm.tm_list);
-        migrate_timer(&pt->timer, v->processor);
-    }
-    pt_vcpu_unlock(v);
-
- out:
-    write_unlock(&v->domain->arch.hvm.pl_time->pt_migrate);
-}
-
-void pt_adjust_global_vcpu_target(struct vcpu *v)
-{
-    struct PITState *vpit;
-    struct pl_time *pl_time;
-    int i;
-
-    if ( !v || !has_vpit(v->domain) )
-        return;
-
-    vpit = &v->domain->arch.vpit;
-
-    spin_lock(&vpit->lock);
-    pt_adjust_vcpu(&vpit->pt0, v);
-    spin_unlock(&vpit->lock);
-
-    pl_time = v->domain->arch.hvm.pl_time;
-
-    spin_lock(&pl_time->vrtc.lock);
-    pt_adjust_vcpu(&pl_time->vrtc.pt, v);
-    spin_unlock(&pl_time->vrtc.lock);
-
-    write_lock(&pl_time->vhpet.lock);
-    for ( i = 0; i < HPET_TIMER_NUM; i++ )
-        pt_adjust_vcpu(&pl_time->vhpet.pt[i], v);
-    write_unlock(&pl_time->vhpet.lock);
-}
-
 static void pt_resume(struct periodic_time *pt)
 {
     struct vcpu *v;
@@ -600,14 +446,12 @@ static void pt_resume(struct periodic_time *pt)
         return;
 
     pt_lock(pt);
-    if ( pt->pending_intr_nr && !pt->on_list && inject_interrupt(pt) )
+    if ( pt->pending_intr_nr && inject_interrupt(pt) )
     {
         pt->pending_intr_nr--;
         cb = pt->cb;
         cb_priv = pt->priv;
         v = pt->vcpu;
-        pt->on_list = 1;
-        list_add(&pt->list, &pt->vcpu->arch.hvm.tm_list);
     }
     pt_unlock(pt);
 
diff --git a/xen/include/asm-x86/hvm/vcpu.h b/xen/include/asm-x86/hvm/vcpu.h
index 8adf4555c2a..9a756964fb0 100644
--- a/xen/include/asm-x86/hvm/vcpu.h
+++ b/xen/include/asm-x86/hvm/vcpu.h
@@ -148,9 +148,8 @@ struct hvm_vcpu {
     s64                 cache_tsc_offset;
     u64                 guest_time;
 
-    /* Lock and list for virtual platform timers. */
+    /* Lock for virtual platform timers. */
     spinlock_t          tm_lock;
-    struct list_head    tm_list;
 
     bool                flag_dr_dirty;
     bool                debug_state_latch;
diff --git a/xen/include/asm-x86/hvm/vpt.h b/xen/include/asm-x86/hvm/vpt.h
index 384d2e02039..323afa605e7 100644
--- a/xen/include/asm-x86/hvm/vpt.h
+++ b/xen/include/asm-x86/hvm/vpt.h
@@ -31,11 +31,7 @@
 typedef void time_cb(struct vcpu *v, void *opaque);
 
 struct periodic_time {
-    struct list_head list;
-    bool on_list;
     bool one_shot;
-    bool do_not_freeze;
-    bool irq_issued;
     bool warned_timeout_too_short;
     bool level;
 #define PTSRC_isa    1 /* ISA time source */
@@ -151,11 +147,9 @@ struct pl_time {    /* platform time */
     struct domain *domain;
 };
 
-void pt_save_timer(struct vcpu *v);
-void pt_restore_timer(struct vcpu *v);
-void pt_migrate(struct vcpu *v);
+void pt_freeze_time(struct vcpu *v);
+void pt_thaw_time(struct vcpu *v);
 
-void pt_adjust_global_vcpu_target(struct vcpu *v);
 #define pt_global_vcpu_target(d) \
     (is_hvm_domain(d) && (d)->arch.hvm.i8259_target ? \
      (d)->arch.hvm.i8259_target : \
@@ -164,7 +158,7 @@ void pt_adjust_global_vcpu_target(struct vcpu *v);
 void pt_may_unmask_irq(struct domain *d, struct periodic_time *vlapic_pt);
 
 /* Is given periodic timer active? */
-#define pt_active(pt) ((pt)->on_list || (pt)->pending_intr_nr)
+#define pt_active(pt) ((pt)->pending_intr_nr || timer_is_active(&(pt)->timer))
 
 /*
  * Create/destroy a periodic (or one-shot!) timer.
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:14:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:14:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113804.216877 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr9Q-0002lB-W7; Tue, 20 Apr 2021 14:14:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113804.216877; Tue, 20 Apr 2021 14: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 1lYr9Q-0002l2-SZ; Tue, 20 Apr 2021 14:14:52 +0000
Received: by outflank-mailman (input) for mailman id 113804;
 Tue, 20 Apr 2021 14:14:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr4t-0000xF-6u
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:10:11 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2858213d-19f3-4c16-9308-28276496afce;
 Tue, 20 Apr 2021 14:09: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: 2858213d-19f3-4c16-9308-28276496afce
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927796;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=Vi/QQviJCSIXptO4sworOuxdl1wg4QnJXyCQBTzDZmg=;
  b=Eq4W+FvUTKSMUJkFf7EHCzAlYxJ77psNlup+w0owGfpBwqyBpzEYn/d2
   vZXk7VFPUhgJuI0XaOl7qUMxjJDnhJev0sDDJffslsOW1WrkXGSHhMKkD
   3fi/o7iXTvoEAIcqLICk8tmq7ZTWE/pG5QzEeIcI778a0NaAZfrWoLRk3
   4=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Wpx9aLvW0BGxBvCyrN1RMQg0zwqNHwOZN+CS7E4WCV3wl+ZIqT6SExzetTAnrXVVTAxaUrXIN2
 jRsA7Znf3E6DIy2Lk1u9jkyt7R4xe/ZfQnFCpjbxmJp1Ev9ITkqpL5vrz6lDqoBgfVbVcapUdQ
 jjf7dkZMEf0lwwcY0aB+ztX/WSeK1kv7iS7/aJuvLDBZMF7NzKFDf6uKTFYxj+dI24j7MpKeY5
 XcdMHxsk5EqVgEOCrKf6sXFUOzmzyI+lA5nj6LTcADBRqe9dwsamNfVnjNf6m1eP2FxfcGTprl
 x00=
X-SBRS: 5.2
X-MesageID: 41981601
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:/yCU7q2NXLufcIbxjpmRQwqjBWhyeYIsi2QD101hICF9WtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7LE/035hz/IUXIPOeTBDr0VHYSb1KwKnD53nbGyP4/vNAzq
 sIScJDIfD5EFQSt6nHySaiFdJI+re62YSJocub8Ht3VwFtbMhbnmVEIyKWCFd/SgUDJbdRLv
 qhz/FKrTahZngbB/7TbhU4dtPOusHRk9beaQMGbiRN1CC1kTiq5LTmeiLovSs2bjUn+9Yf2F
 mAqSPVzOGJs/a3yhjTvlWjlah+qZ/a5fZoQOCJgsgRAD3whgivf5QJYcz+gBkF5NuBxXxvvN
 7QowoxH8kb0QKsQkiF5SHD9iOl8DEy52TswVWV6EGT3vDRdXYBJOdqwad6GyGpj3YIjZVH/4
 9gm1+9jd5xCyjNmSzsjuK4Ly1Cpw6PjlcJ1dIIg2c3a/p4VJZh6bYx0WlyC5k6ECfz+OkcYZ
 JTJfCZ3vpQfF+ABkqp2FVH8ZipVnQ3KB+MXlIPjMyTyyRXh3B01SIjtbUioks=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41981601"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=njg1+i2ZTvkXEpkBMEL9xAtNWk3HTTXOh7kGvvpPWR3jT1rk+AsTeZfrCvyMWh/Eb2dhgP5XD5nJXCdbCo7NuDK1X8gpnrO0AahVnpkNLeOGBLH2SWGjLnCuBFrZp3DmZgXsyrRRuzHsVtDINz9BydBgK37CN4+SjotINOwZf5zumGADZzOJbrT36d4dkG8J1DDitgW1XE4WiImwLi9q+sGeaj8yq6MD9TMeEIHWU5ef0nDf/0QLmPMDNfNkMU47nr3ejBbDnKexXhzWNUKLnc2eMh4ltNOVpy0O8TVmJu8UN405gN3WnCBMduH3Bwm4pbbxfQGC+jwSLTC/pjXcNg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/8G6ZphiMwjkLCnh/B+N1lg5s23KSmnn5KG1LwIN6mo=;
 b=oOpWZDQ5Txt/jQ6LUxPL1ulf/uUzALQKZkkrvtmnj/cfgjHMhGvr4J0V/Kf3LzWuOMplwxqP3+0HJ1FfRIP2eoOxiWmhbFmzc73BSRDTrfKRg6sgl5cpTZ+CJt1NJqFjDF/BUuNUL52ulIi93BWZZAiF2HdHwEmRtQFlB74tm/ZFkQDa2QjRHqwD6BvhElER3QvZ1OYSfPouY+IT4531m9B2hLpiL8HkBPA77QiWTZDvFTBFdske28+W0WuB+AuKwAy1Xe7mhThv1zPvY6d0W7xW/yhO+G++IOYP1GvPTbqkQgvYrl4prIxHcHtP9qFljJpfqBNZ0FU5smowNs2pQg==
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=/8G6ZphiMwjkLCnh/B+N1lg5s23KSmnn5KG1LwIN6mo=;
 b=I/Lg/N8OWifczWXAsx6tCB93Je1iVplFFrk4iIgiwrb5EBr3ooIUVBbHvCNS1mAhmZcrJGUyhuzYD3+PlkzDXVPAgARGt5vy1DZ1Bf+LA3TnXCK2TBNikGL10DRBkYfhl0I/iPOO4pjUbvHSKr0evqagh6KYI5XPuVBJYm7V9HM=
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 v4 10/12] x86/irq: drop return value from hvm_ioapic_assert
Date: Tue, 20 Apr 2021 16:07:21 +0200
Message-ID: <20210420140723.65321-11-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0040.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::28)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 53b0597c-efe7-48fb-b2cd-08d90405f7c5
X-MS-TrafficTypeDiagnostic: DM4PR03MB6000:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB6000979E4BC9C94AAAF6E2D58F489@DM4PR03MB6000.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4941;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: koAqw+I5BsffFXgWodMN8KdbC/X0ogyAWjRXM5+7xSwBBuC1Zg1X2v6t9hWvfND1QpFTZng+E8f5vujtno+Ow0ISOS/JP3Uod65p0BQlDNjOcswIggaFFrMyso7w+7DnDlcjG+wZLZ43SCURgXd2DkyBL+nYtTPWung+4VE0lEBi03+cMSgOQI3Ik1SlTbgiUxzCOYZ9BX7yEfsWx3OFASBwbnbA7YIjsOqxtPmEbehzD4O6wg3JS7kumd14tLq2M6CQnFBZTHmwRxCHsF8jOJrMQSzxdoDtzNo/Dki26FG5m5TaU+90/0MFjmSwKxkGmfIPP+mRAuMAt8AjOjT3aA8BkpIT0gAPKJiGhV4rpSB3zBtPoKTvLNDm7oCTjDOyaEowCeaiUeVKYT9li94mI8tvTc9iIM7fP2kiYB1F7aJe85LmAMN3PnazDbCu5Z6p5/I52eJq2dl7Yeod5bZJ5cva1ceqvHxIRL0RJVhOsDeSee4gH6TZb7aRNnUu2rxCEarDuOem6rZxPSjShUcRDpB8hTN6QmkGcOdqXRLeaYrLGMT/+XdxcMFoqlbjoWw4TwyUbw0jbO0mU+4qWxjPezw1lH4fr4/n1D/7eKBAd3I=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(376002)(39850400004)(136003)(366004)(6916009)(83380400001)(4326008)(38100700002)(16526019)(36756003)(316002)(956004)(6486002)(2616005)(6496006)(478600001)(8676002)(26005)(186003)(5660300002)(8936002)(54906003)(2906002)(6666004)(66476007)(1076003)(66556008)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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//EbdHo1c?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 53b0597c-efe7-48fb-b2cd-08d90405f7c5
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:09:52.9813
 (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: VXlOPkzeDOFCHxI57qG4RSNE2TSYXYksCxc0KlSuE871wK//5mKNVpTucPK5wNoYOI1YppoXDwutKNVMgNr8Zg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6000
X-OriginatorOrg: citrix.com

There's no caller anymore that cares about the injected vector, so
drop the returned vector from the function.

No functional change indented.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v3:
 - New in this version.
---
 xen/arch/x86/hvm/irq.c        | 8 ++------
 xen/include/asm-x86/hvm/irq.h | 2 +-
 2 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/xen/arch/x86/hvm/irq.c b/xen/arch/x86/hvm/irq.c
index c3d8f2a786a..1c588e212f9 100644
--- a/xen/arch/x86/hvm/irq.c
+++ b/xen/arch/x86/hvm/irq.c
@@ -47,24 +47,20 @@ static void assert_gsi(struct domain *d, unsigned ioapic_gsi)
     vioapic_irq_positive_edge(d, ioapic_gsi);
 }
 
-int hvm_ioapic_assert(struct domain *d, unsigned int gsi, bool level)
+void hvm_ioapic_assert(struct domain *d, unsigned int gsi, bool level)
 {
     struct hvm_irq *hvm_irq = hvm_domain_irq(d);
-    int vector;
 
     if ( gsi >= hvm_irq->nr_gsis )
     {
         ASSERT_UNREACHABLE();
-        return -1;
+        return;
     }
 
     spin_lock(&d->arch.hvm.irq_lock);
     if ( !level || hvm_irq->gsi_assert_count[gsi]++ == 0 )
         assert_gsi(d, gsi);
-    vector = vioapic_get_vector(d, gsi);
     spin_unlock(&d->arch.hvm.irq_lock);
-
-    return vector;
 }
 
 void hvm_ioapic_deassert(struct domain *d, unsigned int gsi)
diff --git a/xen/include/asm-x86/hvm/irq.h b/xen/include/asm-x86/hvm/irq.h
index 4e3534d4eb4..fda2f8e8ebf 100644
--- a/xen/include/asm-x86/hvm/irq.h
+++ b/xen/include/asm-x86/hvm/irq.h
@@ -226,7 +226,7 @@ int hvm_set_pci_link_route(struct domain *d, u8 link, u8 isa_irq);
 int hvm_inject_msi(struct domain *d, uint64_t addr, uint32_t data);
 
 /* Assert/deassert an IO APIC pin. */
-int hvm_ioapic_assert(struct domain *d, unsigned int gsi, bool level);
+void hvm_ioapic_assert(struct domain *d, unsigned int gsi, bool level);
 void hvm_ioapic_deassert(struct domain *d, unsigned int gsi);
 
 void hvm_maybe_deassert_evtchn_irq(void);
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:14:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:14:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113802.216865 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYr9J-0002gK-OK; Tue, 20 Apr 2021 14:14:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113802.216865; Tue, 20 Apr 2021 14: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 1lYr9J-0002g2-K9; Tue, 20 Apr 2021 14:14:45 +0000
Received: by outflank-mailman (input) for mailman id 113802;
 Tue, 20 Apr 2021 14:14:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYr53-0000xF-70
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 14:10:21 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3dd5d826-5ad6-44e3-8a3f-2d0e32d1be67;
 Tue, 20 Apr 2021 14:10: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: 3dd5d826-5ad6-44e3-8a3f-2d0e32d1be67
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618927811;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=6coVnkxQH01xuYysdoaEe/x+kf4TGmb+qk9wPm0DpYI=;
  b=gRzxMhFd67R4tVsUFhUQaU0nfqMm5s0ftACVBK2bYMUTd+LukGv8Di8y
   aZ+B/7rSG8aT5zROm6r/RW0KAux2d2s9Jy3DuKlMoaokgARzMIPIqqBID
   n5suIQJLlUJK04bZZPX9caopa5dcSOGDWHxAIUL4RCMIBUkWQDd8SjEH0
   A=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: vAFnK7NDiRRwYOPcJH1dCdLhVEwDl3eyU+HorpVhmf8rPqfLDOpZvbbCy9mtmGO6G8Pc0nGasi
 UOPRa1wWfa6nr5J0uFJquPziEXWMn1mPex1CwqZOis1C1vZQSAU03KIWyR3GluGBz1AMGCvf4X
 wlRjqiBxf2byANfBSa8SG9wa+6LEFVwhnBCkr9ZHB0eoaWZWOnNMf6+ad4E34CKgucF56A0GTY
 heNinqBjzao3jGLdFAig53LqvWnTjzFaKqgVYTV8TMKTW0U2hKcska6CrCjvmBktOgpfXtyhjP
 LVE=
X-SBRS: 5.2
X-MesageID: 41988343
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:siYtua4ViwGSh4VEBwPXwRKBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3Xa6JJz/M0tLa6vNTOW3VeAAaNDyc/ZwzPmEzDj7eI178
 1dWoV3FdGYNzdHpOng5g3QKbgd6f2m1IztuuvE1XdqSmhRGsNdxiN0EBySHEEzZCQuP/oEPa
 GR7MZGuDasEE5/BqiGL0IIQvTZoJnznI/mCCRsOzcc9AKMgTm0gYSKcCSw4xF2aVJy6IZny0
 fpuUjT5qKvs/a0oyWsrVP73tBtt/bKjvdGDMyIoMAJJjvrkRbAXvUdZ5Sy+AobjcvqxFE2kM
 TdgxpIBbUO11rhOlubjDGo+w783C0g43XvoGXo/kfLkIjCax8RT+9i7LgpFifx2g4bk/xXlJ
 9v5Sa/saFaCBvR9R6Nn+TgZlVRuWef5UY5nfV7tQ05baIuLIV/gKY4501vHJIJDEvBmfsaOd
 grNs3a6fpMGGnqCUzxjy1qyNyoaHw5Ag2LdEgEotCUyDhbhhlCvjIl+PA=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41988343"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Fi25bHQT0LD5RxwOA4yFInRufE5sq6cNZpJl7fuf1oR7zhppTP7OCUen6/1UPRT2nL3CszZm4DpxpVZ8udQ1drAjHnIwDF3hb7XkDGPhF4tPOxUBeFEo2XUrKKZGwbb87LcOwJwqNmHBBbARHtEgX+AtS5/voyhXx2MOh0lFM9LTb0ovJKW5KXTm89yrF+nLnW7rFU4RzSbmdKo9jYZZAtBLxrXRIiiciT5n1qe/z4iVQbMHWkKIFUlkJRv7zXdA9dskqLJYP+QGpg7IWNdDqgUF4t1HOYKnczRwcszZavyRA4+Jr5N9T5n8s3ZGKvG+Pg1gH+U0t2IkfZKLWbu/8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cPLww0jyAC3ZvVT3vwHc3Orw5CsWBNndVX/YLz+UW6g=;
 b=OFDv3eBg/qd+EmvxMRs4fj2k+y+xIlx8X/+SKmsyKG1Q0Md4gGHat98so81NMqUauv6CHYsEV6Sit+jcncz0ebSmSZ0nMV6/f1DYTqdrTeOp7RzUqpeH0crqTwXy7TokkA9+HkUkQznok3j9wyF4un/+fAXJlIxPNUdz4062qPcYvEJb6keL2+DukVeZwwJL+zhU8Cvpcgy/GJVFRH5rIo353C3Y31lqMuVb9Xmnl/3NKhMb5muiW8UcXx6uPYKsHum0L0rV1FJw9ZL2otTMoHAJ2cIs3J2q5XthondDNTR8dsspvrhqzIquNNUym02Ohw8yBeUmIoYpACUEGe99CQ==
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=cPLww0jyAC3ZvVT3vwHc3Orw5CsWBNndVX/YLz+UW6g=;
 b=oIfbfM9RMSyu2Ajz4Y6I1M83MQttJWwX5dWIZj2ivXG6oG1I/VMTs5XcM5h3gc/esxjF5cWg9hQvkJ72EYSOV6bytJk6KlNWjhmIrBaVCJhLiGtwg2Uo3D2F/LJ4dfV5EjXDz89Qy+GhnKY1kVEP/ua4Wh+69Oma3kcziZCfgOs=
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 v4 12/12] x86/vpt: introduce a per-vPT lock
Date: Tue, 20 Apr 2021 16:07:23 +0200
Message-ID: <20210420140723.65321-13-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210420140723.65321-1-roger.pau@citrix.com>
References: <20210420140723.65321-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0048.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::36)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e043e9ca-7e03-4ba0-2268-08d90405ffee
X-MS-TrafficTypeDiagnostic: DM5PR03MB3068:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3068D8CD7887A0018169E80E8F489@DM5PR03MB3068.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:451;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: CS3Mp09alfYJWF+bDJKlOFi4CXzVTj5yYSBEupyawzjBmaYn7kfCBVHbtgHr9lrGtw2tuZIivjSfrmnRER0bVLWfTHSky0cN5+MGJFRqlUoAroceMRsiDYAEEJ7qEAqfVBx05tMSVpESsEc6f1lhXEeYhV34DcszYCiOPc39m624ISo3OiqX9nKr4UJc/QXSud5a65mduDwm60B9ecXkmLepRmK3tjXp2wagGT5wrfIa9vnsXxtxHSBCon3Vb3LxxBfvNm87POfkPXdxz4A7lxxL5KCTpMY0PpnwfLscXD1kIyAPo6wVSUiRJFV6PdWB7LI2Btyvz1229Sb5QmfBkG9qEC2FZt2Ti5px6G4pwonGqEkZsPJGYvQQXhlyYc3I9Lp0G9pUX+iK2LivlAdLUw13WfeQ26uYlJI6D4yvSUIpAP+EkscfST8VGfIbwfOCgBTycFQiHrGUQm2LtBGda6KFlstwxpmBywSeSghSkpYLimsXgCe2awqfMrnqgjhy9PmpDKCksh3OVz/3W73j7nybUVN1r1TNP29UATz8ab/mvG8hkn6/iAvFBEqveDbIovv33hjFLJjRjrspHatesg==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(346002)(366004)(39860400002)(136003)(396003)(54906003)(316002)(2906002)(6486002)(956004)(1076003)(38100700002)(36756003)(2616005)(16526019)(5660300002)(6496006)(83380400001)(4326008)(8676002)(26005)(66556008)(66946007)(66476007)(186003)(8936002)(86362001)(6666004)(478600001)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?uBx9c8rd/xKai1zO7WHt4F7ph2zVwPS3l3vzRzU?=
X-MS-Exchange-CrossTenant-Network-Message-Id: e043e9ca-7e03-4ba0-2268-08d90405ffee
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 14:10:06.5795
 (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: ectUjC0k1VlVfVYgK0ktZYjSrZ1RCZo/P5u0v/jvxWgTB4TJjJyyxiOIUChH1FnXdNgSD4BovjeTBD+0eoHVUA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3068
X-OriginatorOrg: citrix.com

Introduce a per virtual timer lock that replaces the existing per-vCPU
and per-domain vPT locks. Since virtual timers are no longer assigned
or migrated between vCPUs the locking can be simplified to a
in-structure spinlock that protects all the fields.

This requires introducing a helper to initialize the spinlock, and
that could be used to initialize other virtual timer fields in the
future.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
Changes since v1:
 - New in his version.
---
 xen/arch/x86/emul-i8254.c      |  1 +
 xen/arch/x86/hvm/hpet.c        |  8 +++++-
 xen/arch/x86/hvm/hvm.c         |  4 ---
 xen/arch/x86/hvm/rtc.c         |  1 +
 xen/arch/x86/hvm/vlapic.c      |  1 +
 xen/arch/x86/hvm/vpt.c         | 52 ++++++++++++++--------------------
 xen/include/asm-x86/hvm/vcpu.h |  3 --
 xen/include/asm-x86/hvm/vpt.h  | 15 ++--------
 8 files changed, 33 insertions(+), 52 deletions(-)

diff --git a/xen/arch/x86/emul-i8254.c b/xen/arch/x86/emul-i8254.c
index 73be4188ad4..a47138cbab7 100644
--- a/xen/arch/x86/emul-i8254.c
+++ b/xen/arch/x86/emul-i8254.c
@@ -484,6 +484,7 @@ void pit_init(struct domain *d, unsigned long cpu_khz)
     {
         register_portio_handler(d, PIT_BASE, 4, handle_pit_io);
         register_portio_handler(d, 0x61, 1, handle_speaker_io);
+        init_periodic_timer(&pit->pt0);
     }
 
     pit_reset(d);
diff --git a/xen/arch/x86/hvm/hpet.c b/xen/arch/x86/hvm/hpet.c
index ca94e8b4538..20593c3862d 100644
--- a/xen/arch/x86/hvm/hpet.c
+++ b/xen/arch/x86/hvm/hpet.c
@@ -739,12 +739,18 @@ static void hpet_set(HPETState *h)
 
 void hpet_init(struct domain *d)
 {
+    HPETState *h = domain_vhpet(d);
+    unsigned int i;
+
     if ( !has_vhpet(d) )
         return;
 
-    hpet_set(domain_vhpet(d));
+    hpet_set(h);
     register_mmio_handler(d, &hpet_mmio_ops);
     d->arch.hvm.params[HVM_PARAM_HPET_ENABLED] = 1;
+
+    for ( i = 0; i < HPET_TIMER_NUM; i++ )
+        init_periodic_timer(&h->pt[i]);
 }
 
 void hpet_deinit(struct domain *d)
diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
index ec4ab1f5199..0498c3b02e2 100644
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -666,8 +666,6 @@ int hvm_domain_initialise(struct domain *d)
     /* need link to containing domain */
     d->arch.hvm.pl_time->domain = d;
 
-    rwlock_init(&d->arch.hvm.pl_time->pt_migrate);
-
     /* Set the default IO Bitmap. */
     if ( is_hardware_domain(d) )
     {
@@ -1557,8 +1555,6 @@ int hvm_vcpu_initialise(struct vcpu *v)
 
     hvm_asid_flush_vcpu(v);
 
-    spin_lock_init(&v->arch.hvm.tm_lock);
-
     rc = hvm_vcpu_cacheattr_init(v); /* teardown: vcpu_cacheattr_destroy */
     if ( rc != 0 )
         goto fail1;
diff --git a/xen/arch/x86/hvm/rtc.c b/xen/arch/x86/hvm/rtc.c
index b66ca6f64f1..8c8b4ed4018 100644
--- a/xen/arch/x86/hvm/rtc.c
+++ b/xen/arch/x86/hvm/rtc.c
@@ -821,6 +821,7 @@ void rtc_init(struct domain *d)
     init_timer(&s->update_timer, rtc_update_timer, s, smp_processor_id());
     init_timer(&s->update_timer2, rtc_update_timer2, s, smp_processor_id());
     init_timer(&s->alarm_timer, rtc_alarm_cb, s, smp_processor_id());
+    init_periodic_timer(&s->pt);
 
     register_portio_handler(d, RTC_PORT(0), 2, handle_rtc_io);
 
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index 2af24989dd5..5c60bf66584 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -1654,6 +1654,7 @@ int vlapic_init(struct vcpu *v)
         return 0;
     }
 
+    init_periodic_timer(&vlapic->pt);
     vlapic->pt.source = PTSRC_lapic;
 
     vlapic->regs_page = alloc_domheap_page(v->domain, MEMF_no_owner);
diff --git a/xen/arch/x86/hvm/vpt.c b/xen/arch/x86/hvm/vpt.c
index 6a8d216c7b5..e4ecb98d3a4 100644
--- a/xen/arch/x86/hvm/vpt.c
+++ b/xen/arch/x86/hvm/vpt.c
@@ -125,27 +125,6 @@ static int pt_irq_masked(struct periodic_time *pt)
     return 1;
 }
 
-/*
- * Functions which want to modify a particular periodic_time object
- * use pt_{un}lock locking helpers.
- *
- * These users lock whichever vCPU the periodic_time is attached to,
- * but since the vCPU could be modified without holding any lock, they
- * need to take an additional lock that protects against pt->vcpu
- * changing.
- */
-static void pt_lock(struct periodic_time *pt)
-{
-    read_lock(&pt->vcpu->domain->arch.hvm.pl_time->pt_migrate);
-    spin_lock(&pt->vcpu->arch.hvm.tm_lock);
-}
-
-static void pt_unlock(struct periodic_time *pt)
-{
-    spin_unlock(&pt->vcpu->arch.hvm.tm_lock);
-    read_unlock(&pt->vcpu->domain->arch.hvm.pl_time->pt_migrate);
-}
-
 static void pt_process_missed_ticks(struct periodic_time *pt)
 {
     s_time_t missed_ticks, now = NOW();
@@ -220,7 +199,7 @@ static void pt_timer_fn(void *data)
     void *cb_priv;
     unsigned int irq;
 
-    pt_lock(pt);
+    spin_lock(&pt->lock);
 
     v = pt->vcpu;
     irq = pt->irq;
@@ -235,7 +214,7 @@ static void pt_timer_fn(void *data)
         cb_priv = pt->priv;
     }
 
-    pt_unlock(pt);
+    spin_unlock(&pt->lock);
 
     if ( cb )
         cb(v, cb_priv);
@@ -247,7 +226,7 @@ static void eoi_callback(struct periodic_time *pt)
     time_cb *cb = NULL;
     void *cb_priv = NULL;
 
-    pt_lock(pt);
+    spin_lock(&pt->lock);
 
     irq_eoi(pt);
     if ( pt->pending_intr_nr && inject_interrupt(pt) )
@@ -258,7 +237,7 @@ static void eoi_callback(struct periodic_time *pt)
         v = pt->vcpu;
     }
 
-    pt_unlock(pt);
+    spin_unlock(&pt->lock);
 
     if ( cb )
         cb(v, cb_priv);
@@ -324,6 +303,11 @@ static bool inject_interrupt(struct periodic_time *pt)
     return true;
 }
 
+void init_periodic_timer(struct periodic_time *pt)
+{
+    spin_lock_init(&pt->lock);
+}
+
 void create_periodic_time(
     struct vcpu *v, struct periodic_time *pt, uint64_t delta,
     uint64_t period, uint8_t irq, time_cb *cb, void *data, bool level)
@@ -340,7 +324,7 @@ void create_periodic_time(
 
     destroy_periodic_time(pt);
 
-    write_lock(&v->domain->arch.hvm.pl_time->pt_migrate);
+    spin_lock(&pt->lock);
 
     pt->pending_intr_nr = 0;
 
@@ -403,18 +387,21 @@ void create_periodic_time(
     init_timer(&pt->timer, pt_timer_fn, pt, v->processor);
     set_timer(&pt->timer, pt->scheduled);
 
-    write_unlock(&v->domain->arch.hvm.pl_time->pt_migrate);
+    spin_unlock(&pt->lock);
 }
 
 void destroy_periodic_time(struct periodic_time *pt)
 {
     unsigned int gsi;
 
+    spin_lock(&pt->lock);
     /* Was this structure previously initialised by create_periodic_time()? */
     if ( pt->vcpu == NULL )
+    {
+        spin_unlock(&pt->lock);
         return;
+    }
 
-    pt_lock(pt);
     pt->pending_intr_nr = 0;
 
     gsi = pt->irq;
@@ -427,7 +414,7 @@ void destroy_periodic_time(struct periodic_time *pt)
         hvm_gsi_unregister_callback(pt->vcpu->domain, gsi, &pt->eoi_cb);
         break;
     }
-    pt_unlock(pt);
+    spin_unlock(&pt->lock);
 
     /*
      * pt_timer_fn() can run until this kill_timer() returns. We must do this
@@ -442,10 +429,13 @@ static void pt_resume(struct periodic_time *pt)
     time_cb *cb = NULL;
     void *cb_priv;
 
+    spin_lock(&pt->lock);
     if ( pt->vcpu == NULL )
+    {
+        spin_unlock(&pt->lock);
         return;
+    }
 
-    pt_lock(pt);
     if ( pt->pending_intr_nr && inject_interrupt(pt) )
     {
         pt->pending_intr_nr--;
@@ -453,7 +443,7 @@ static void pt_resume(struct periodic_time *pt)
         cb_priv = pt->priv;
         v = pt->vcpu;
     }
-    pt_unlock(pt);
+    spin_unlock(&pt->lock);
 
     if ( cb )
         cb(v, cb_priv);
diff --git a/xen/include/asm-x86/hvm/vcpu.h b/xen/include/asm-x86/hvm/vcpu.h
index 9a756964fb0..fe3d0e10426 100644
--- a/xen/include/asm-x86/hvm/vcpu.h
+++ b/xen/include/asm-x86/hvm/vcpu.h
@@ -148,9 +148,6 @@ struct hvm_vcpu {
     s64                 cache_tsc_offset;
     u64                 guest_time;
 
-    /* Lock for virtual platform timers. */
-    spinlock_t          tm_lock;
-
     bool                flag_dr_dirty;
     bool                debug_state_latch;
     bool                single_step;
diff --git a/xen/include/asm-x86/hvm/vpt.h b/xen/include/asm-x86/hvm/vpt.h
index 323afa605e7..5628cff8f7a 100644
--- a/xen/include/asm-x86/hvm/vpt.h
+++ b/xen/include/asm-x86/hvm/vpt.h
@@ -48,6 +48,7 @@ struct periodic_time {
     time_cb *cb;
     void *priv;                 /* point back to platform time source */
     struct hvm_gsi_eoi_callback eoi_cb; /* EOI callback registration data */
+    spinlock_t lock;
 };
 
 
@@ -126,19 +127,6 @@ struct pl_time {    /* platform time */
     struct RTCState  vrtc;
     struct HPETState vhpet;
     struct PMTState  vpmt;
-     /*
-      * Functions which want to modify the vcpu field of the vpt need
-      * to hold the global lock (pt_migrate) in write mode together
-      * with the per-vcpu locks of the lists being modified. Functions
-      * that want to lock a periodic_timer that's possibly on a
-      * different vCPU list need to take the lock in read mode first in
-      * order to prevent the vcpu field of periodic_timer from
-      * changing.
-      *
-      * Note that two vcpu locks cannot be held at the same time to
-      * avoid a deadlock.
-      */
-    rwlock_t pt_migrate;
     /* guest_time = Xen sys time + stime_offset */
     int64_t stime_offset;
     /* Ensures monotonicity in appropriate timer modes. */
@@ -173,6 +161,7 @@ void create_periodic_time(
     struct vcpu *v, struct periodic_time *pt, uint64_t delta,
     uint64_t period, uint8_t irq, time_cb *cb, void *data, bool level);
 void destroy_periodic_time(struct periodic_time *pt);
+void init_periodic_timer(struct periodic_time *pt);
 
 int pv_pit_handler(int port, int data, int write);
 void pit_reset(struct domain *d);
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 14:37:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 14:37:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113828.216888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYrV8-0004lI-U3; Tue, 20 Apr 2021 14:37:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113828.216888; Tue, 20 Apr 2021 14:37: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 1lYrV8-0004lB-R5; Tue, 20 Apr 2021 14:37:18 +0000
Received: by outflank-mailman (input) for mailman id 113828;
 Tue, 20 Apr 2021 14:37: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 1lYrV7-0004l3-Vm; Tue, 20 Apr 2021 14:37: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 1lYrV7-0002wd-Lk; Tue, 20 Apr 2021 14:37: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 1lYrV7-0002zB-CQ; Tue, 20 Apr 2021 14:37:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYrV7-0002t9-Br; Tue, 20 Apr 2021 14:37: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=H84soC+IQ65oSWsJQfEsDH4T1DkIje12VbkylCyrJ8o=; b=sqio+cd6z2SvAzBWXHobEnK4gU
	rqJXvdcLRfxJjY26yxTie7KTT+5CxPewtVyIFGEqGsezDNq3zjGyHvtQh2o8p2I1BDIPUezI4IymB
	c5td50U3THPfcBYPlj26RtJIS3IS7RYp2leSPKC909Ellrc/rDg6aluk+tbGd8JfkNuo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161321-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161321: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-localmigrate/x10: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=730d0f6082e66eefae64f35bc62e51fc54d02d55
X-Osstest-Versions-That:
    xen=a8c532be6a44c7faa54ac777a717f4aa65e3a806
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 14:37:17 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 18 guest-localmigrate/x10 fail REGR. vs. 161293

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                  730d0f6082e66eefae64f35bc62e51fc54d02d55
baseline version:
 xen                  a8c532be6a44c7faa54ac777a717f4aa65e3a806

Last test of basis   161293  2021-04-19 14:00:26 Z    1 days
Testing same since   161321  2021-04-20 10:02:00 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                    fail    
 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 730d0f6082e66eefae64f35bc62e51fc54d02d55
Author: Roger Pau Monné <roger.pau@citrix.com>
Date:   Tue Apr 20 11:36:54 2021 +0200

    x86/dpci: remove the dpci EOI timer
    
    Current interrupt pass though code will setup a timer for each
    interrupt injected to the guest that requires an EOI from the guest.
    Such timer would perform two actions if the guest doesn't EOI the
    interrupt before a given period of time. The first one is deasserting
    the virtual line, the second is perform an EOI of the physical
    interrupt source if it requires such.
    
    The deasserting of the guest virtual line is wrong, since it messes
    with the interrupt status of the guest. This seems to have been done
    in order to compensate for missing deasserts when certain interrupt
    controller actions are performed. The original motivation of the
    introduction of the timer was to fix issues when a GSI was shared
    between different guests. We believe that other changes in the
    interrupt handling code (ie: proper propagation of EOI related actions
    to dpci) will have fixed such errors now.
    
    Performing an EOI of the physical interrupt source is redundant, since
    there's already a timer that takes care of this for all interrupts,
    not just the HVM dpci ones, see irq_guest_action_t struct eoi_timer
    field.
    
    Since both of the actions performed by the dpci timer are not
    required, remove it altogether.
    
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 2d494f2198d7909a394085d079475bb099d7afe7
Author: Roger Pau Monné <roger.pau@citrix.com>
Date:   Tue Apr 20 11:36:09 2021 +0200

    x86/vpic: issue dpci EOI for cleared pins at ICW1
    
    When pins are cleared from either ISR or IRR as part of the
    initialization sequence forward the clearing of those pins to the dpci
    EOI handler, as it is equivalent to an EOI. Not doing so can bring the
    interrupt controller state out of sync with the dpci handling logic,
    that expects a notification when a pin has been EOI'ed.
    
    Fixes: 7b3cb5e5416 ('IRQ injection changes for HVM PCI passthru.')
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 192f7479f21ef63dad8d8acbbda93cce0971fe66
Author: Roger Pau Monné <roger.pau@citrix.com>
Date:   Tue Apr 20 11:35:29 2021 +0200

    x86/vpic: don't trigger unmask event until end of init
    
    Wait until the end of the init sequence to trigger the unmask event.
    Note that it will be unconditionally triggered, but that's harmless if
    not unmask actually happened.
    
    While there change the variable type to bool.
    
    Suggested-by: Jan Beulich <jbeulich@suse.com>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 1ca901c527d21c083ceb706839db2cdac102926c
Author: Roger Pau Monné <roger.pau@citrix.com>
Date:   Tue Apr 20 11:34:53 2021 +0200

    x86/vpic: force int output to low when in init mode
    
    When the PIC is on the init sequence prevent interrupt delivery. The
    state of the registers is in the process of being set during the init
    phase, so it makes sense to prevent any int line changes during that
    process.
    
    Suggested-by: Jan Beulich <jbeulich@suse.com>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 15:08:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 15:08:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113843.216907 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYrzH-0007XS-Go; Tue, 20 Apr 2021 15:08:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113843.216907; Tue, 20 Apr 2021 15: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 1lYrzH-0007XL-Dg; Tue, 20 Apr 2021 15:08:27 +0000
Received: by outflank-mailman (input) for mailman id 113843;
 Tue, 20 Apr 2021 15:08:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYrzH-0007XG-2V
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 15:08:27 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cc7dbfcc-58e9-46c9-9959-e382b076f695;
 Tue, 20 Apr 2021 15:08: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: cc7dbfcc-58e9-46c9-9959-e382b076f695
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618931305;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=DWmjTWwbevLenDAZ7kHD0mmxdVvzjALlKLnp9ycLDhc=;
  b=PnUg2efAal9i/mVwG5xKbeh3RxT6JXD+hZQKajfETXQRb2mSOq656aLD
   aAuW9M5txBz57e6+IJQXvwdHnaWJanvw7Pby2ej8hQzJRoPV9XwzcG5CG
   ovwj0pYEFDgArxUCAolAQsNeyTHlnQ70fYjrmU+zG7sasCvysb2w+EMpw
   Y=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: HO5XOFWmIQG29Y4kHw9L7hAYso7iots7tog2MZvF8fgjzVA0yDJFabhvIIHnQxGIiurNOuXrL5
 2KJcKOupkKKQlT6SXAgn4QyX0Y25fshYj8/0/ZffdVLeBkVM0pSfxIzY4HH7crrEzcsIuHN7os
 /p6piFW8mX8BmIxokM4dU5I1dHejlGCRHlv4x0HxDnKR1S/ZojPfwe4qnME8c3bc1eOFXjOaw7
 NXSl9bpWXwL0AtXkrG/Pf8pJnTjvu3f4lO9vKPJ95yGaPr4JmYYIV9LYmGQhZYZhgh5IU7LUPs
 OfU=
X-SBRS: 5.2
X-MesageID: 41996109
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:SkuwXahyExw99v6QIhld/55wj3BQX09w3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+YsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmuZ
 tIW5NVTOf9BV0St6vHySGzGdo43Z2j+Kenme/Rwx5WPHtXQotn6Bp0DRveN0VwShVPC5ZRLu
 vg2uNsoT28dXMLKvmqH3VtZZmPm/TntrLDJSQHCRku9RWUgVqTg9DHOjWRwxt2aUIo/Z4M6m
 7A+jaJhZmLk/b+8RPE0n+W0pI+oqqb9vJmJOihzvcYMS/tjAHAXvUsZ5SnsCouqO+irHYG+e
 O82isIBMh453PPcmzdm3KEsWiB7B8U53Dv0lOei3f4yPaJPA4SMdZLho5Sb3Limi8dlex8y6
 5C0ia4sJdaHHr77UPAzuXITB1jmw6Ip2Mjm4co/hhieLYZAYUhz7A3zQdwKtMtDSj64IcoHK
 1FF8fH/stbdluccjTwonRv6MbEZAV8Ij62Bmw5/uCF2Tlfm350i2ECwtYEo3sG/JUhD7FZ+u
 X/NLhynr0mdL5WUYtNQMM6BeenAG3ERhzBdEiIJ078Ka0BM3XR77n6/asy/+PvXJAT1pM9lN
 DgXTpjxC4PUnOrLffL8IxA8xjLTmn4dy/q0Nti659wvaC5S6HsNSGFVVAyg8qtq/gSGaTgKr
 SOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+W1/mmLOPFqTa8sjgNNrDLrvkFjgpHknlBG
 EYYTT1LMJcqkSiWnryhgnNS2rgE3aPua5YIez/xaw+2YINPopDvkw+klKi/PyGLjVEr+gxZ0
 txILTul6uhvmmo9WPU72FkUyAtTXp90fHFaTdntAUKO0T7ffIooNOEY11f23OBO1tiVc/MCR
 VeoF524KqzKJSVyUkZepWaG1Pfq0FWiGOBTp8alKHG2NzsfYkgCI06HIZrEx/QKhBzkQF2iW
 tKZQMeXHXDHjf2hajNtu1TOMjvM/1HxCaiO4p9tG/Wv0T0n7BSelIrGxqVFfOxrSlrbTxOnV
 F1+7IYm9O76EmSAFp6pv85Pl1KYHmQG5RcAm2+Fcpps7j2ZQB9SnqLjzSGixc1PnHn7VkWm3
 aJF1zrRdjbRlVaoXxWyaDs7Rd9cXicZVt5bjRgvZR6DnmugAc67cabIq6y2XCWcF0M36UUNy
 zEeyIbJmpVtqaK/Q/QnDaJDnM9wJoyeuTbEbQ4arnWnnegMpeBm61DH/ha+v9eRZnTm/5OVe
 KUYAmOKjzkT+svxgyOv34gfDBut2NMq4Kc5DT1qGyjmHIvC/vbJ1prA7kdPtGH9mDhA/KFyo
 9wg945tfa5W1+BIeKu2OXSdXpOOxnTqWm5Q6UzpZdYsbk7ubFzE5PYOAG4o01vzVE7NoP5hU
 keSKN07PTdIYdpZdUVYD8c8VwzltiDRXFb+DDeE6s7ZxUqgHDaNd/SvOaNprorH0GbpAz/fV
 OY6DZQ+v/ZXy2Fkb4WYphAUlh+eQw58jBl+ujHaojbTAOtfOtH9EChMnC8fKRGIZL1bYk4v1
 J/+ZWQg+STdyDkwwjesjtwP7JW/w+cMLOPKRPJHfQN7sezNluNiLa7+cK/jD/4Tj2gdkQT7L
 c1B3A4f4BEkTktjIo+zyi0ROj2uyse4ipj3Q0=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41996109"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=e1DjIaNQDKu9ok3lglDWjuj/WpFaQZ4W/vQVS3ZZ9bdt2w/WPpv9CSIoNpqTA4lCWDOVciYJkemO01FGYjwG5X6+322drh0Ogx3+zghTeEFW9Q9dWRcIdLb0oAGsREbgxSnmQoCtS/ZAfeJ47MD3zMfEIP7+0Wd+PtfLSA7F6tMXC9QAYNC/1JgTlJGaWe4PabuIdReNFVc3tXOokVra8u9lcOcpZcbsJ+VjRPslclrBzv1eCVNFikmxLGVJd8qAuXHt8lhhkr4hnfuGm7tpZs8EBUJuwD+5U9AGl3HelL4pmJpt/g0hymJS6S+bsBQRfs2nyrTmEmUsyImQT81OKQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=emQiayagX5yYHoDuRCF7Vu/STi3G6Ui+9OhOy3leMwo=;
 b=YH4GhicczYyHRE/WopTJKP0Q/hIuN9eQ1LQOIPWBfD/TNeeRxZbYLhYLjfFrHo8sdQfodbtcWTaqpGuEnrSFWoqDYmRivNZxXacE81dm/szNXcXQRJwWbjQJkV/j7lUpc9pIMZyvB/klgQgmGjew4q7AJnfQ8AvI2mkdEJZ4B1pHKEYu4eTa4OvcxS35hIQrUrnkkTVir4JajJP2cqj/MNrAn8IPs7Cr/ttYSXTGRTcwuDoFvx9uu4DOAADD7sPpM5wR3XRkd1T9bn3qqZfX1ahESeq8HaNybA8N2TRYCaqkKUbg9GPWgUzGXUe4XL4x6C/ZT0cbebiccHhrdUCMNg==
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=emQiayagX5yYHoDuRCF7Vu/STi3G6Ui+9OhOy3leMwo=;
 b=SQYTcI+QefH8oAzeAWPbPfXGwvE3lkIfJGxCDUzOB1iqLHP50pEAnouiyMSyzYJiGpDLqMNBl4yUmfpL1LsESkoQ2fhIKiKrxqeCGX9JTCFdu2gVp8Q5Szdg1ls65Ch1l+lGQnuMqIcQtVJlmr3Hu51apRjOIfRQWcW+xzHocYs=
Date: Tue, 20 Apr 2021 17:08:15 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Chao Gao <chao.gao@intel.com>
CC: <xen-devel@lists.xenproject.org>, 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>, Kevin Tian <kevin.tian@intel.com>
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
Message-ID: <YH7uX7RqqIS4zdBt@Air-de-Roger>
References: <20200401200606.48752-1-chao.gao@intel.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20200401200606.48752-1-chao.gao@intel.com>
X-ClientProxiedBy: MRXP264CA0037.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::25) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3dbc3927-ab3b-421d-ed3d-08d9040e236c
X-MS-TrafficTypeDiagnostic: DM5PR03MB3370:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB33704C61FF1ECD770CBCAC248F489@DM5PR03MB3370.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4303;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: cCBnqQ9biZHqiFLgYobHIQAVNK/xth+iqrcwYnlGNX8e2TjOlY0qpm/ohjvGqNHXffgZ9AC9SPq5Noizxw9m+wT+1FfBrR4xbYMmSy/7rZmV6tKGCt7UECvKTr61W1j6QkQpPyHnVviMf/hJ/fkklhAaMzERZ9ppLa3xuLp0Mj2k5WzWaARljT6rPD61ejLf8wt9tdg6/8B/7i0bddR2pd8/CWYwrUnSdf9lmF7P7r2uMFcKsruWmJdzUSgZKpG2ORv/ITgfjjP50d5k9TnSQQDTeu8tjqZXjAvvydKn3SUrJjN/eCc5FHubPkNRtTbUsYU097OwhuWS+LPzMoR/gqVB5i+x6atMe4Ro74lKAniZhhBiwKqh0A2b5iaCf1z/zjqZ9CsQR/IrJVRerIxnFWKyGZpNuD95e9KCM3XKmTff+Kl1ebD+YMFvllyopZC9JuHEF7urXp3aHn3cUXohuGAaHN0rkoFXt2F8UcE3DbAaacTPbyUXrjfnMkScnEqS/63J7lTSx6vZGzCsHmPGH39Eh73D0sgo6JGrxnM/6RU2rP8uOIRsHh1xDxG4AOAbBB4BIx9dzoqmqpiC2kywvielTAdqqIzMrM1/xx62/RI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(39860400002)(346002)(376002)(396003)(136003)(6496006)(85182001)(316002)(83380400001)(4326008)(38100700002)(6486002)(26005)(478600001)(66946007)(2906002)(5660300002)(8936002)(4744005)(33716001)(86362001)(956004)(6916009)(8676002)(66476007)(54906003)(186003)(66556008)(16526019)(9686003)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 3dbc3927-ab3b-421d-ed3d-08d9040e236c
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 15:08:22.1921
 (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: wp2ZyiRBpiMaSIoa3RITnKg+sJhP/VtkjeD3nPqRKD4+sXMkwf5yTZo+rMtPewPQ5H+NSCteYlZREiiBALh6vw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3370
X-OriginatorOrg: citrix.com

On Thu, Apr 02, 2020 at 04:06:06AM +0800, Chao Gao wrote:
> --- a/xen/drivers/passthrough/vtd/qinval.c
> +++ b/xen/drivers/passthrough/vtd/qinval.c
> @@ -442,6 +442,23 @@ int enable_qinval(struct vtd_iommu *iommu)
>      return 0;
>  }
>  
> +static int vtd_flush_context_noop(struct vtd_iommu *iommu, uint16_t did,
> +                                  uint16_t source_id, uint8_t function_mask,
> +                                  uint64_t type, bool flush_non_present_entry)
> +{
> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush CONTEXT.\n");
> +    return -EIO;
> +}
> +
> +static int vtd_flush_iotlb_noop(struct vtd_iommu *iommu, uint16_t did,
> +                                uint64_t addr, unsigned int size_order,
> +                                uint64_t type, bool flush_non_present_entry,
> +                                bool flush_dev_iotlb)
> +{
> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush IOTLB.\n");
> +    return -EIO;
> +}

I think I would add an ASSERT_UNREACHABLE() to both noop handlers
above, as I would expect trying to use them without the proper mode
being configured would point to an error elsewhere?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 15:27:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 15:27:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113851.216919 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYsHd-0000wN-6e; Tue, 20 Apr 2021 15:27:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113851.216919; Tue, 20 Apr 2021 15: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 1lYsHd-0000wG-2s; Tue, 20 Apr 2021 15:27:25 +0000
Received: by outflank-mailman (input) for mailman id 113851;
 Tue, 20 Apr 2021 15:27:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IT3j=JR=arm.com=bertrand.marquis@srs-us1.protection.inumbo.net>)
 id 1lYsHc-0000wB-B1
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 15:27:24 +0000
Received: from FRA01-MR2-obe.outbound.protection.outlook.com (unknown
 [40.107.9.70]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 96b4e718-bc4a-4a72-8fbd-189c89ef4fed;
 Tue, 20 Apr 2021 15:27:22 +0000 (UTC)
Received: from AS8PR04CA0070.eurprd04.prod.outlook.com (2603:10a6:20b:313::15)
 by PR2PR08MB4889.eurprd08.prod.outlook.com (2603:10a6:101:1d::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Tue, 20 Apr
 2021 15:27:19 +0000
Received: from AM5EUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:313:cafe::51) by AS8PR04CA0070.outlook.office365.com
 (2603:10a6:20b:313::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20 via Frontend
 Transport; Tue, 20 Apr 2021 15:27:19 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT056.mail.protection.outlook.com (10.152.17.224) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Tue, 20 Apr 2021 15:27:18 +0000
Received: ("Tessian outbound 82c2d58b350b:v90");
 Tue, 20 Apr 2021 15:27:18 +0000
Received: from 872fa69dcd09.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 12329409-C861-4833-BDF4-6298D854C120.1; 
 Tue, 20 Apr 2021 15:27:08 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 872fa69dcd09.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 20 Apr 2021 15:27:08 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15)
 by VI1PR08MB4493.eurprd08.prod.outlook.com (2603:10a6:803:ff::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Tue, 20 Apr
 2021 15:27:07 +0000
Received: from VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e]) by VE1PR08MB5696.eurprd08.prod.outlook.com
 ([fe80::b538:7f7:f4f3:8c0e%7]) with mapi id 15.20.4042.024; Tue, 20 Apr 2021
 15:27: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: 96b4e718-bc4a-4a72-8fbd-189c89ef4fed
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iMgFSJ2DbdCGak6qozq9V8IEU5NJKAZ9i+DXMNUhZnA=;
 b=g5Mz0rk2rO4hISklcrJiU7DtO3txlWm2Z0H8To6pZEtSAzYyH77DTB39x0CNanSv6UClU/9JVNhu3mxhnL/C8Kmf6ahEdVvui1Yes5ZHUZRUs35EZPbzLxzDSkvxK6uSGDzFWrDGuxsvH+R1JMcs4qK8CmU8Xt7C3bDc4FALLY0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 8bf24576eacf6030
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GNV68cRRszVIv/SryDNNNAVzTL3H0ZnNP6vEkyJLkOSHUUX55YV+8lEGdBaObMta724g4JMsB8lbv+TYjGyRtaWbJD4q7TfKlS4LiufZTXCxmEW8sHWbbbKuF87MJQGxmuhEvjr8Ay3gZ1+XLIXfT8CrHcg3DwaNZpIeQmbapaz3H+/e/JCR8Y1JYxNpdDHBmXqotS0VQAomxP8Dr/2HqXxcQ/Xc10dM5Jm0uNcKC4DixMwWXhvFwUS/wVZkEe2Hy6csTVIkFOlDybZOVxMm9S3RQW5Nyc8B24wO711HC3oYtDlDin7xGd+xXvLwmbKno4dGubSSVoMYtaL6zNEcQQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iMgFSJ2DbdCGak6qozq9V8IEU5NJKAZ9i+DXMNUhZnA=;
 b=NGTgmbXWmXdQ3ktoVKfmBB0FH/KssGKW6czb03+F+yH5XRb/A8dCjgGhdvEMLA+O/Zgx1Be/RevCMluEqY0nsfwOPMgNqxdkVWH91sNh1MljoKu2wdb6ELDTNPGwGLAVCYVpmbwopTmNXCmqehHDUHm4Oy6pbAL7gCbjjgZK9Hh0Ie/xOytNvUwf0pjeIUo0JhuUxIPnDm5r28qonf+EOt9Ks4U868BCc4AVkhufRYm19HljApf5RCTrVdvi+mQXC4MmiRpBeYSyn0S6A9orxIYshPoA8kIvtr4C+Zmkwk63Bm2ZhYr4Oz1BTjiuUr7b3EI0d/zmfviYxPRYwj6xDQ==
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=iMgFSJ2DbdCGak6qozq9V8IEU5NJKAZ9i+DXMNUhZnA=;
 b=g5Mz0rk2rO4hISklcrJiU7DtO3txlWm2Z0H8To6pZEtSAzYyH77DTB39x0CNanSv6UClU/9JVNhu3mxhnL/C8Kmf6ahEdVvui1Yes5ZHUZRUs35EZPbzLxzDSkvxK6uSGDzFWrDGuxsvH+R1JMcs4qK8CmU8Xt7C3bDc4FALLY0=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Julien Grall
	<jgrall@amazon.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
	Juergen Gross <jgross@suse.com>
Subject: Re: [PATCH] tools/xenstored: Remove unused prototype
Thread-Topic: [PATCH] tools/xenstored: Remove unused prototype
Thread-Index: AQHXNev79FvKKrAJ70+ijDo5F6dptaq9h2UA
Date: Tue, 20 Apr 2021 15:27:07 +0000
Message-ID: <80DFE38D-1759-4A07-A320-0B40149CA329@arm.com>
References: <20210420134906.10910-1-julien@xen.org>
In-Reply-To: <20210420134906.10910-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.3654.60.0.2.21)
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [154.57.226.134]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 798bcba4-26c9-429f-9112-08d90410c90c
x-ms-traffictypediagnostic: VI1PR08MB4493:|PR2PR08MB4889:
X-Microsoft-Antispam-PRVS:
	<PR2PR08MB48891C5B24435A60816DF2909D489@PR2PR08MB4889.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:6108;OLM:6108;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 7I9woHoQZ+wa7FszebqJicJm51JilGkS6+/c2JLOxIwlwhwVEAyOnixgf8BlhB3OVOR7/4/vyAKTI63ya/2l9Vs8+Z4rDT2tJRbiEa/4PD949WGXj7Dmf1V3LLO5bwVI+GvMUuV9Y4yx1XZgtwX7ssRiPAPbYp2Br5ix+9Yh1GAOrGQP6Kq0k5dVV6sad7NXzJF53JST9wtbRz3DHtieGWQ5F5VX6RngMW5O3UfjglXmyu/yeS9QtcQ2CHk4FQ/VJ3svxRSysQ5u8cZY3khoNbG3XUhTg1DtbG60Dv2l4Tq3b19CJCT6RD/UbFdSUWAzTbE1BnabRcL1e6roSRUcun8U1/bMSq4NxVnYtv5TrrJAqjST+MazCl7HjkKpz6Fyi6kl9Wa1/eEmUrWIvDBJBEcaUdf2pco8bG2zqAxEQ3J4ElD+jjRj1UztEej8Ql/0gtuhjs6binjwBI/4R7S0mYfueETjS9vKOSoXDCW0UFaNuhF/PojmV+5kMmaYyRMy4Lz7ho3pu87p/WRh7AYeIPT6nUanDXU8nMSIo/XgIHZxHhAmI18i5uSjqyhe4kfbae9+Y4dsbsOSWpFYdVWOp7RN4dTTQifSe4Afx3YgaHAPxYvqKOmGw2pVI7aHcQ8dFAVFZXTA3VTUZVdUpFhsGabki8FzlMpPADsyVh62Mjc=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(396003)(346002)(376002)(136003)(39850400004)(86362001)(6916009)(33656002)(66946007)(2906002)(4326008)(186003)(8936002)(478600001)(4744005)(53546011)(54906003)(38100700002)(6512007)(122000001)(6506007)(91956017)(71200400001)(64756008)(2616005)(6486002)(26005)(66476007)(83380400001)(66556008)(66446008)(76116006)(5660300002)(8676002)(36756003)(316002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?wMRsUXR1m+DlJRXIvERTBcsefh7y62kZcEStu8uHRaNGnW6HNmFiU4onWVMd?=
 =?us-ascii?Q?Ob4IRar5QdtkhXKMx7ocfmgc6GFQB/NfWNIgOhQrci+4it5YNnoPxxM1pQLr?=
 =?us-ascii?Q?eUiadHy4Ns8owUfU5JzZP3zLp/mdfbmARxok0+5pMlg0d2UFKjYnhOdXNz6V?=
 =?us-ascii?Q?MsaB5OUn6OtxqC6yVDuk0FqmN4JpPuTd62/WYAQ8w7Vp9tQduKP45/WlaTqD?=
 =?us-ascii?Q?4v9kX6x4bp65HZkEBShsaoe9sBszP8TmBiCO0ILAMxzV7v1kARFRGfFL/5Lh?=
 =?us-ascii?Q?hidqH3M1LcYVCqzfG25fCOEyMhXtHIGmaiFI0Hdob9cucwwriDrpIftCkT9d?=
 =?us-ascii?Q?JlRXaytjtLCXAhpprYhAYIG5ilhp04V7LutEH7wcFhzDbhkUzijnaTRura43?=
 =?us-ascii?Q?6MRtmBubdaF96NwkrybasvFUh1KmKQmUsXHG26+mWMbDH2JVRazuSdGsoXbB?=
 =?us-ascii?Q?IroIsTl8qIjRVrv/pio4ZWnxLdJo6NvlUKgniEABUwy+5NbdwqMIXaPY0stl?=
 =?us-ascii?Q?aXw51yqN8aLBO604Xj5D7DuOsXyvX3sjSS3yB3pIK3yXOVBz09b148gz7Z7j?=
 =?us-ascii?Q?4Cq8pBTWauh3WdGG/c6wJ6kALLwh2fP/Qp591uCVCcjhC/U5tOU3mxYKYIMq?=
 =?us-ascii?Q?oHvyQOzjAGccCJYo+8ACHrhZCCYBLK8K5KcM7IvL1gL6kcuLsWdbLFZzI7bv?=
 =?us-ascii?Q?c+yN6Mvx6+PagL5n6fO5BkfiCXGTy6j7A2vwA73tpvbPDQ7+Z5Ks8A3bm9lF?=
 =?us-ascii?Q?07rpXsdRx3TM8wGlX3epAPP8wqVCEdJTkKOV0YLSU/9yFEVpbyeJClVssS51?=
 =?us-ascii?Q?jIefmTChGsSr3qx0OkhnqfPBm8tstE/DggVJPOmtGO2YruMIuNvRoMdJ7sNd?=
 =?us-ascii?Q?/5gvfk+vsuSk3L6w5xLJ3F6ou+Hnb9ALLlkV/538RKGVa+xxQcO+fP+CH7EN?=
 =?us-ascii?Q?VO4fzhI9mBQxUkkKPy1SwznGrwqAuMX9hUFfVOOhAXu/3M1a5MGgqpXq29Nk?=
 =?us-ascii?Q?PlsF5Xxqo38EvayLM6APGxwhPYFwf+p/pLGQnDOI4AfHRlexzPl4LAzB2yGx?=
 =?us-ascii?Q?Zt54RDRCxZVd/d/eMnlbE2GyFDfi7vGlTDnA/x1O7WR9Mlx9dUJoROF+AUTd?=
 =?us-ascii?Q?5JI3YFWi1wK37J21aYeGe6pc7zsA5hUQySOjtqbs8hVe3fPNq7SA+xDK6ZPk?=
 =?us-ascii?Q?hSvU55C7PyBuetG73Hodp5fcxW6Piypunfxj5N/rK7aLxFqkpwT1ax8HcOAN?=
 =?us-ascii?Q?ia2deRNPmCVlS0a6pFxMpFpDiQBWQweTDykFl57ndSmH+TGS3W8Zp3isuppq?=
 =?us-ascii?Q?XbH7PZuJUg7JIhoIoD3Gg9kDqKKYtXorNcPlZ5TcMsCamQ=3D=3D?=
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative;
	boundary="_000_80DFE38D17594A07A3200B40149CA329armcom_"
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4493
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT056.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ea018341-f606-4ac2-4d2c-08d90410c26f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Z8hGvOR0xCZJT6paMyE4AG2ikyLjnoAMUw3lnIYa2dX3CMXslfvU2U8TsSKGNSZon2xAsqd9sjLGDRfMwBCQu7fJGNvtQXTIf3HlxSmAdJQ/jAnmc6YCqgL++WIVl7XVU4CMD7M0BCXdy8V0VCRhPoNa1O9IIyvj4wIP7R8+77nNNs6R8ru5P0QcpfuSoIQO/kQltNm9leJS6gjuGm1C6fSqMctJjoPBh7QIVT6FSxt7yeoDbsqS/UG6zeQ3HT3hh4O1BmHrY3EzNoHA6vNOLHy8Cp2V2mihHSHp0E2ihooMtptH+ZOLm/Itb5aHu0wF51G/MOq37tykGv+elmudwPokXnNZuoCndXVXZpt72G/oeK1TBm2kFBbsVK48GLaEXhl+1gDwv4alQEvM494V3NBLQC970EzvEwav/2UZBpPItKtP6Ed8gYtPVBc9qn6mhKggdLeHTSUx2a7K6kc8Gi0LClVkX2sUSWxmk/u7UfcfQSjG/2Se2BUXHdyC2OaXHUVK24kbvzi6E/LejCi3s0WVNKPwxcvAYYa6aqJV59HKN3Nuh0tPakgVYuFM5GK4FWxaGGAPK87wsNq/9g75LIwiflAGN67OjgJ65oMTQe1b1+Er4g/TRnDpluoh7JSBJoVr0iQjr4Ku2D0ym8Mp/Kg0DbN0uZ6ulPpx6VedyLM=
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:(4636009)(39850400004)(136003)(346002)(376002)(396003)(46966006)(36840700001)(70586007)(8936002)(336012)(186003)(45080400002)(4326008)(83380400001)(54906003)(70206006)(6862004)(53546011)(356005)(6506007)(107886003)(82740400003)(6512007)(36860700001)(47076005)(26005)(82310400003)(478600001)(2616005)(81166007)(316002)(6486002)(5660300002)(8676002)(86362001)(36756003)(2906002)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 15:27:18.8157
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 798bcba4-26c9-429f-9112-08d90410c90c
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:
	AM5EUR03FT056.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR2PR08MB4889

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

Hi Julien,

On 20 Apr 2021, at 14:49, Julien Grall <julien@xen.org<mailto:julien@xen.or=
g>> wrote:

From: Julien Grall <jgrall@amazon.com<mailto:jgrall@amazon.com>>

A prototype for dump_conn() has been present for quite a long time
but there are no implementation. Even, AFAICT in the patch that
introduced it. So drop it.

Signed-off-by: Julien Grall <jgrall@amazon.com<mailto:jgrall@amazon.com>>

Agree, no implementation of this exists so:
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com<mailto:bertrand.mar=
quis@arm.com>>

Cheers
Bertrand

---
tools/xenstore/xenstored_core.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_cor=
e.c
index d54a6042a9f7..591b28e4552f 100644
--- a/tools/xenstore/xenstored_core.c
+++ b/tools/xenstore/xenstored_core.c
@@ -2085,7 +2085,6 @@ static struct option options[] =3D {
#endif
{ NULL, 0, NULL, 0 } };

-extern void dump_conn(struct connection *conn);
int dom0_domid =3D 0;
int dom0_event =3D 0;
int priv_domid =3D 0;
--
2.17.1




--_000_80DFE38D17594A07A3200B40149CA329armcom_
Content-Type: text/html; charset="us-ascii"
Content-ID: <AD64F7F85124FD4898A8C124C4630D69@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"word-wrap: break-word; -webkit-nbsp-mode: space; line-break:=
 after-white-space;" class=3D"">
Hi Julien,<br class=3D"">
<div><br class=3D"">
<blockquote type=3D"cite" class=3D"">
<div class=3D"">On 20 Apr 2021, at 14:49, Julien Grall &lt;<a href=3D"mailt=
o:julien@xen.org" class=3D"">julien@xen.org</a>&gt; wrote:</div>
<br class=3D"Apple-interchange-newline">
<div class=3D"">
<div class=3D"">From: Julien Grall &lt;<a href=3D"mailto:jgrall@amazon.com"=
 class=3D"">jgrall@amazon.com</a>&gt;<br class=3D"">
<br class=3D"">
A prototype for dump_conn() has been present for quite a long time<br class=
=3D"">
but there are no implementation. Even, AFAICT in the patch that<br class=3D=
"">
introduced it. So drop it.<br class=3D"">
<br class=3D"">
Signed-off-by: Julien Grall &lt;<a href=3D"mailto:jgrall@amazon.com" class=
=3D"">jgrall@amazon.com</a>&gt;<br class=3D"">
</div>
</div>
</blockquote>
<div><br class=3D"">
</div>
<div>Agree, no implementation of this exists so:</div>
<div>Reviewed-by: Bertrand Marquis &lt;<a href=3D"mailto:bertrand.marquis@a=
rm.com" class=3D"">bertrand.marquis@arm.com</a>&gt;</div>
<div><br class=3D"">
</div>
<div>Cheers</div>
<div>Bertrand</div>
<br class=3D"">
<blockquote type=3D"cite" class=3D"">
<div class=3D"">
<div class=3D"">---<br class=3D"">
tools/xenstore/xenstored_core.c | 1 -<br class=3D"">
1 file changed, 1 deletion(-)<br class=3D"">
<br class=3D"">
diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_cor=
e.c<br class=3D"">
index d54a6042a9f7..591b28e4552f 100644<br class=3D"">
--- a/tools/xenstore/xenstored_core.c<br class=3D"">
+++ b/tools/xenstore/xenstored_core.c<br class=3D"">
@@ -2085,7 +2085,6 @@ static struct option options[] =3D {<br class=3D"">
#endif<br class=3D"">
<span class=3D"Apple-tab-span" style=3D"white-space:pre"></span>{ NULL, 0, =
NULL, 0 } };<br class=3D"">
<br class=3D"">
-extern void dump_conn(struct connection *conn); <br class=3D"">
int dom0_domid =3D 0;<br class=3D"">
int dom0_event =3D 0;<br class=3D"">
int priv_domid =3D 0;<br class=3D"">
-- <br class=3D"">
2.17.1<br class=3D"">
<br class=3D"">
<br class=3D"">
</div>
</div>
</blockquote>
</div>
<br class=3D"">
</body>
</html>

--_000_80DFE38D17594A07A3200B40149CA329armcom_--


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 15:29:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 15:29:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113862.216930 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYsJu-00015P-NJ; Tue, 20 Apr 2021 15:29:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113862.216930; Tue, 20 Apr 2021 15: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 1lYsJu-00015I-KJ; Tue, 20 Apr 2021 15:29:46 +0000
Received: by outflank-mailman (input) for mailman id 113862;
 Tue, 20 Apr 2021 15:29:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYsJt-00015D-4Q
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 15:29:45 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a63b506b-a71d-4d27-aeec-a29fbd141aac;
 Tue, 20 Apr 2021 15:29: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: a63b506b-a71d-4d27-aeec-a29fbd141aac
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618932584;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=F5fdLULuMxSnIb8YV0QTacQPuOP6sj3WmSI/Qou3H/A=;
  b=GUR+SHVAuG97MeR+zCM1anlDKnpPFQggeOrjMpH4x+f1PkdGq6m8UvJF
   /t4MFozkvF6W+lYCq88zVfBePAps2wfscLbJw8fp7fbvCRg2c3euoG9mS
   yGk/x15p0XWJw02WLdzoNiy361L0ndBUAHtKVDaV+INwTr6abDptrQw4j
   c=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: xvAVqrw5796G3OCcN2+VOcxrGRUHNxfhCz34zwzwxjrDmAOrV24bOzzAiwZTK/JwDrJQC8kSKL
 b3cOlNM1kCBddEjEOT5YFElQsOr+SNlWRtjy94hPMvknBEY3VOA68Xaof0tw4rToxUwRwNqnE+
 kgWXaoYTdyZjuA6JswVdkzPA2YFlzQJNiVB1oOaV+vURxGdwdVsy0/HttHoqXvDlYOmbhIPJ6b
 /bXV4ZN31Q35KGs9RLHx2JSmieYKHLhslDwtrIjrpYOiRfvQwAzicZusMXtbKwzf+RAFdHpedw
 7E4=
X-SBRS: 5.2
X-MesageID: 41999661
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:to1RQaxzHcAT1X2DQmtVKrPxve4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmqJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheTysd07o
 0lSaR3DbTLYGRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRCp1IxS0RMHf9LmRdQg5aCZ0lUL
 ed/NNAvTq8eXIRB/7LfEUtde7FutHNidbacQcLbiRXkzWmoBGJzPrBExae1goDSD8n+9kf2E
 XMjgCR3NTAj9iV0RnZvlWjiqh+uNyk8ddbAdzJt859EESQti+NRKBMH4KPpyo0pubH0idarP
 Dprw07N8p+r1P9F1vF2CfF4AXr3DYw53KK8zbx6hGC0K+JNw4SMMZPiZlUdRHU8SMbzalB+Z
 lGwn6DsN5vBQ7A9R6NmeTgbQ1glUa/vBMZ4IgupkFYOLFuDIN5nMg0+UNYF4o4ByTq6IwrO/
 kGNrCi2N9mNXyddHzXpW9p3ZiFWWkyBA6PRgw4ttWSyCU+pgE182IogOgk2lsQ/pM0TJdJo8
 zCL6RTjblLCusbd7h0CustSda+Y1a9DS7kASa3GxDKBasHM3XCp9rc+7Mu/tynf5QO0d8bhI
 nBeEkwjx9yR2veTem1mLFb+BHER2uwGR73zNtF2pR/srrgAJL2LCy4Tkw0mcfImYRQPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFOIPvNIWXE+Pv9LrJoXmuvezSoeRGJPdVRIfHk/vCH
 oKWzb+YO9a6FqwZ3P+iB/NH1PhE3aPv65YIez/xaw+2YINPopDvkw+klKi/PyGLjVEr+gTdE
 t6K7X3r7OjqQCNjCP1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXmxOwn2dJFtaQ9nNGA
 BS43R7kJjHYKC49GQHMZaKI2iah3wcqDahVJEHgJCO4s/jZ9cfFZYpWKt4EC3RDBxrkQNWqG
 NOATV0BnP3J3fLs+GInZYUDObQe51XmwGwO/NZrnrZqAGhv801f2AaWDSvSMaTpg4rS1Nv9x
 lM2p5apIDFtSekKGM5juh9FFFXcmyYDIhLCxm/aJxOlqrmfxxxSmm2lSWX4itDClbCxgE3vC
 jMPCeUcfbEDh5mtndU3r3D3Xl0em+eFngAIkxSgMlYLyDrq3xz2eiEau6PyGOXcEIF2fxYGi
 rCeyEuLgRnwM2X2BaZlC2ZL2gvwowjM4XmffMeWoCW/knoBJyDlKkAEfMRwY1sM8r2tPQXFc
 2YYA2YIVrDepQU8j3QgkxgHiZ6qHMpy6y1nDLk6XW1x345D775Jk98S7QSPtGb6CzFSp+zoe
 BEpONwmdH1FGP7LuOi4+XwSRVoLxvIu264T+0ys/lvzOsPnYo2O6OeaCfC0XFM4Q43I8j1nn
 4PWagT2sGyBqZfO+gpPx9D9lUnlN6zPFImnwz/DOg5Z0wshRbgTqe0youNjbokGUuaogTsfX
 GZ7i1G5v/ANhHznoIyOuYVIW5MblI752kn1OSed5fIAAHvU+1Y5lK1Pjucd7BaIZL1U4k4n1
 Jf49uSmfWQeDe98AfMvSFjKqYLyl2Ze6qJcXSxMN8N1ce7N1SKirar58D2rA6fc0rGV20owa
 tfdUIRacxfjCIFl4Nf6Fn1dpDK
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41999661"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=leVSzdzKg+/k1TfUcchRyq6I8D1GBtTb45XFuPenLEl0ImF0iiT7uhDR1gskvAh2AC1fG3UIfwzJ5+w/vsmnoOkjZnFIFKSWQsA533hLHfTCpXssiUrly1UUfJzhue0MIk6oOYTSnooGi8dyS1yOMMbFRWqhE34iiJgF0fhN2B/9i004ICauI4iYqQ/OHbup7FpXQHukSDgkYe9ZbxS5z4q2Q6sIDbov5QrZu7BroNAz0v5lZCTxvCkP/bCsycvlpLKMhyQfTNeQe8fzeSMCmUMi9Vv87n8MQ0PPXcFDLeq0sA80AZD8V6s9ZyV6Xu9Bc2cuTrA+0oGAdJZ5kQ0CHw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7Oh6Ejuuy9Q003wull3FxYG4VCyEXr4pKVXqlTHZim8=;
 b=YQSX4/gHESIxpBxw2oxFs1MFWU9qNGfUQfKDkqBjbUNdJjOnSET8uSlwbqvK7yGs02cN9dnApwDEy8OQPKGCSM4cAK7azdt+y3SsSF+pmM0qjtTujy2Vr51SqGyhZAWV1sQmm70dTg8OudtQGbq8vc/dkysUpnWUfyLg1NvCviLYD0HKssuZPUnLlye68yvR8R4GlaYWVGdXIHucoKz7BeiNIFbK89vVPhAjVSKOab8pOWUp0IlVsp0J8+KU5t4JFZa9FrEq/Psx9q8xjy6bw68FaCXnlKCRZ3HX76sGOMh5BO7ZtUjDcJFBeBmVabInRKmAUVovgj6R2adjPKnuCg==
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=7Oh6Ejuuy9Q003wull3FxYG4VCyEXr4pKVXqlTHZim8=;
 b=aBZqwO1wvhluSOI76c2c2FGgteFHhTATYubOsMh10hPDS0DHaUGIQ+b/e/cCUWa+2Jwc4wq7F3K4b1sFASxT4kS1Qy01wc2lSE24B/hejhWQGyK7MJU6raUmw69ojugvzCKNVWlUDPl6Txxq0rRuHCXW1IHuKhitAHfGcj0om8I=
Date: Tue, 20 Apr 2021 17:29: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>, George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
Message-ID: <YH7zXpPz03+kLzEr@Air-de-Roger>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
X-ClientProxiedBy: AM6P192CA0084.EURP192.PROD.OUTLOOK.COM
 (2603:10a6:209:8d::25) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 9bf3e7ce-1a69-4f5b-dd95-08d904111d00
X-MS-TrafficTypeDiagnostic: DM5PR03MB3209:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB320977B5619820FE8E1B878E8F489@DM5PR03MB3209.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:483;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: AnfNTulBoyfQ/aRPqgEqA6DvLlEiR3417jkq62ldLCX5QYkc+gh8V56LJ+wkC7r0fvRd9TWS7Nr/MjaXCivgrPDci2EhTVaIcZ8eNmejh/9ULUrnTKNTDhEl32PMlsS4HkbH+3PnWTLGW5fHWZGoSexnaPqeO0sESGOigP9tP/aL0qykYMWctgAZwsqK0IeiSDUpewJb9XXRJJhz48hhKfjRFOEFK404IjPJk1bNjAvsqJu7zlFEiJ5xXG1N8BjnoTw0lh2KpHzjO5ZZcS6KckFcCfdT1Y8CkWo7rkJQ28F8HXmqOt1ebiIyer6GrL0etX9AI9R5HmSDcMMTok0w2cpCjOn6GIxmgE3EnXc2B0fYkn/cHvzZKokbOtKXaF1hgMS893Md8Ft0rzTgI2h9y0XIO9AslBamwdFWMb8LB8GuW1nioWxVLhnwSaCc7MyVV2Q8dEWG9yU/RpJOycfs980Z4dygpkqGpx2t95U+B8qwapzspyRAiMgPYFC++O5UOH+hwtWZv4E6DCASNizrHSGBb8eHD1s0T7BHs2UjpLwiKUBKI4CZGE2UxOX/JKH+mSCAs0bOKQRN3fStmy6iF4e/xGueKTZN6ZvEUWaNsKP6EUZPk4K6/rRIVZgteUQIUpY2BJFNlsDviPEdnbu/YQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(376002)(39860400002)(396003)(136003)(366004)(54906003)(4326008)(26005)(478600001)(186003)(6486002)(2906002)(6496006)(956004)(6666004)(86362001)(16526019)(83380400001)(38100700002)(85182001)(33716001)(66476007)(66946007)(9686003)(66556008)(316002)(8936002)(8676002)(6916009)(5660300002)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 9bf3e7ce-1a69-4f5b-dd95-08d904111d00
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 15:29:39.8929
 (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: rWdgC06ilbo7rJrSklRYvdRUccFEy2oyCwSW6DOGyGDB2G8v51BQGKCL09w++M8fMYj+dYF6HJyjL/hTtHqeUA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3209
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
> Except for an additional prereq Arm and x86 have the same needs here,
> and Arm can also benefit from the recent x86 side improvement. Recurse
> into arch/*/ only for a phony include target (doing nothing on Arm),
> and handle asm-offsets itself entirely locally to xen/Makefile.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> --- a/.gitignore
> +++ b/.gitignore
> @@ -318,7 +318,6 @@
>  xen/arch/x86/efi/check.efi
>  xen/arch/x86/efi/mkreloc
>  xen/arch/*/xen.lds
> -xen/arch/*/asm-offsets.s
>  xen/arch/*/efi/boot.c
>  xen/arch/*/efi/compat.c
>  xen/arch/*/efi/ebmalloc.c
> @@ -325,6 +324,7 @@
>  xen/arch/*/efi/efi.h
>  xen/arch/*/efi/pe.c
>  xen/arch/*/efi/runtime.c
> +xen/asm-offsets.s
>  xen/common/config_data.S
>  xen/common/config.gz
>  xen/include/headers*.chk
> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -341,7 +341,7 @@ _clean: delete-unfresh-files
>  	find . \( -name "*.o" -o -name ".*.d" -o -name ".*.d2" \
>  		-o -name "*.gcno" -o -name ".*.cmd" \) -exec rm -f {} \;
>  	rm -f include/asm $(TARGET) $(TARGET).gz $(TARGET).efi $(TARGET).efi.map $(TARGET)-syms $(TARGET)-syms.map *~ core
> -	rm -f include/asm-*/asm-offsets.h
> +	rm -f asm-offsets.s include/asm-*/asm-offsets.h
>  	rm -f .banner
>  
>  .PHONY: _distclean
> @@ -362,7 +362,7 @@ $(TARGET): delete-unfresh-files
>  		done; \
>  		true
>  	$(MAKE) -f $(BASEDIR)/Rules.mk -C include
> -	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) asm-offsets.s
> +	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) include
>  	$(MAKE) -f $(BASEDIR)/Rules.mk include/asm-$(TARGET_ARCH)/asm-offsets.h
>  	$(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) $@
>  
> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
>  	@mv -f $@.new $@
>  
> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
> +	$(call move-if-changed,$@.new,$@)

Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 15:36:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 15:36:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113869.216946 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYsQG-00022U-F9; Tue, 20 Apr 2021 15:36:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113869.216946; Tue, 20 Apr 2021 15: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 1lYsQG-00022N-B7; Tue, 20 Apr 2021 15:36:20 +0000
Received: by outflank-mailman (input) for mailman id 113869;
 Tue, 20 Apr 2021 15:36:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYsQE-00022I-Ll
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 15:36:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a3f746b0-5812-4390-b2c4-e91c4654cfb4;
 Tue, 20 Apr 2021 15:36:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 92024B4B1;
 Tue, 20 Apr 2021 15:36: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: a3f746b0-5812-4390-b2c4-e91c4654cfb4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618932976; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=1vmhD1JONKE+fqwyJTw4Eqjx4wm+/siPyUpTulmZ7fc=;
	b=lWSH7bSc7L9vfoQ2iQCFrSDpFUUsorBsEXCUlcGVZ84i0X8skUeoNC6GpSnzn642+7tXxu
	Mx5aNTkUZcW+V0fhxTBJ3jpAWtz93oeRhhf4PwGkwsKOVVUKJns4CRu+fNOJay00VrtNKc
	FSpBHgLAuCyGNzaMb4na9nZETSqhidU=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: Rahul Singh <Rahul.Singh@arm.com>
Cc: Julien Grall <julien@xen.org>, xen-devel
 <xen-devel@lists.xenproject.org>, Bertrand Marquis
 <Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
 <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
Date: Tue, 20 Apr 2021 17:36:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 20.04.2021 15:45, Rahul Singh wrote:
>> On 19 Apr 2021, at 1:33 pm, Jan Beulich <jbeulich@suse.com> wrote:
>> On 19.04.2021 13:54, Julien Grall wrote:
>>> For the time being, I think move this code in x86 is a lot better than 
>>> #ifdef or keep the code in common code.
>>
>> Well, I would perhaps agree if it ended up being #ifdef CONFIG_X86.
>> I would perhaps not agree if there was a new CONFIG_* which other
>> (future) arch-es could select if desired.
> 
> I agree with Julien moving the code to x86 file as currently it is referenced only in x86 code
> and as of now we are not sure how other architecture will implement the Interrupt remapping
> (via IOMMU or any other means).  
> 
> Let me know if you are ok with moving the code to x86.

I can't answer this with "yes" or "no" without knowing what the alternative
would be. As said, if the alternative is CONFIG_X86 #ifdef-ary, then yes.
If a separate CONFIG_* gets introduced (and selected by X86), then a
separate file (getting built only when that new setting is y) would seem
better to me.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 15:39:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 15:39:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113873.216957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYsSj-0002BY-S9; Tue, 20 Apr 2021 15:38:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113873.216957; Tue, 20 Apr 2021 15:38:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYsSj-0002BR-PE; Tue, 20 Apr 2021 15:38:53 +0000
Received: by outflank-mailman (input) for mailman id 113873;
 Tue, 20 Apr 2021 15:38:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYsSj-0002BK-78
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 15:38:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c199bc92-0343-449d-8e32-d5ffdbe2c021;
 Tue, 20 Apr 2021 15:38:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 548BEB4B1;
 Tue, 20 Apr 2021 15:38: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: c199bc92-0343-449d-8e32-d5ffdbe2c021
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618933131; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mfLjm2j9FW4so4YGfWs4EIYY+t4828KXFSH+UBDo71g=;
	b=KWzq66zdocOCIMlMS1TbbFWndVyetzgri6EeWJjUrBWB9g1sbHmS12lYwcQ9vG5eBU/uwd
	fwuGH6FCtQ6xc4Yym2NYFhlcpihlzSmdx6I/fAg30aVl+C3YHlrym/vtw374/kjf65wahJ
	Fntb8U+EdmDR8fVpwbYbyBDmlrVk4fY=
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
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>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Kevin Tian <kevin.tian@intel.com>, Chao Gao <chao.gao@intel.com>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <YH7uX7RqqIS4zdBt@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3afbdba8-b25c-985c-6c5f-20077cb37d3f@suse.com>
Date: Tue, 20 Apr 2021 17:38:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH7uX7RqqIS4zdBt@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 17:08, Roger Pau Monné wrote:
> On Thu, Apr 02, 2020 at 04:06:06AM +0800, Chao Gao wrote:
>> --- a/xen/drivers/passthrough/vtd/qinval.c
>> +++ b/xen/drivers/passthrough/vtd/qinval.c
>> @@ -442,6 +442,23 @@ int enable_qinval(struct vtd_iommu *iommu)
>>      return 0;
>>  }
>>  
>> +static int vtd_flush_context_noop(struct vtd_iommu *iommu, uint16_t did,
>> +                                  uint16_t source_id, uint8_t function_mask,
>> +                                  uint64_t type, bool flush_non_present_entry)
>> +{
>> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush CONTEXT.\n");
>> +    return -EIO;
>> +}
>> +
>> +static int vtd_flush_iotlb_noop(struct vtd_iommu *iommu, uint16_t did,
>> +                                uint64_t addr, unsigned int size_order,
>> +                                uint64_t type, bool flush_non_present_entry,
>> +                                bool flush_dev_iotlb)
>> +{
>> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush IOTLB.\n");
>> +    return -EIO;
>> +}
> 
> I think I would add an ASSERT_UNREACHABLE() to both noop handlers
> above, as I would expect trying to use them without the proper mode
> being configured would point to an error elsewhere?

If such an assertion triggered e.g. during S3 suspend/resume, it may
lead to the box simply not doing anything useful, without there being
any way to know what went wrong. If instead the system at least
managed to resume, the log message could be observed.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 15:45:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 15:45:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113880.216973 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYsYj-00038A-Kl; Tue, 20 Apr 2021 15:45:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113880.216973; Tue, 20 Apr 2021 15:45: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 1lYsYj-000383-Hg; Tue, 20 Apr 2021 15:45:05 +0000
Received: by outflank-mailman (input) for mailman id 113880;
 Tue, 20 Apr 2021 15:45:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYsYi-00037y-6S
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 15:45:04 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 58c5702d-1660-4c27-9a1f-f6e05d73f136;
 Tue, 20 Apr 2021 15:45: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: 58c5702d-1660-4c27-9a1f-f6e05d73f136
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618933503;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=qktKgnHlnU07uxpx6+TXeuebkFaHVxkPMCPmiR2Acpo=;
  b=V7MB7WHYrf9ZJljTtG7dG+smKRQEeD4R8FOPhU/xKUqexaHRfz0c/Ay6
   tzh+kTDzohij4609H0069YLvibunBqV2SQ6/V6LeiwXeaIJ1tgAkEAkQg
   bdFQmCE02KYp9fzjg1C+82Z1ZvUkvgyqsQeZyiSehIxpvZc2+xBqecIpr
   w=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: bkWrttcU0MOcAyv+FmJst4QcThc4rMYIWPX0XWHNS2tXQ5dqjYpVe2b0QwsFwjhlCAFRMjPTWX
 6rzDYEF1+AM45Um/h3tdqttCwT+3gjCA0BXmA7dscbNbdOXtrBpXO+pDYE8xCdpHxHdLJ06Ytj
 S2X3lPVfzUeqcFHy+StgW8d7loxipaEn//cAYmDpXmu5Zey9UFFpn6W6XzIMyFqceF6vyYvgfp
 jQgIYXXjBmhIDpjkZgYtNrZCGs1BcZ+OAEYKyMgwqxrNOM27yE/7/c+9uOCw90+ZsPTXjZW7Rz
 ATc=
X-SBRS: 5.2
X-MesageID: 43486760
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:+ADVw64IDyuZ5u2AwAPXwRqBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3m0z/5IyKMWOqqvWxSjhXuwIOhZnO/f6hDDOwm7zO5S0q
 98b7NzYeebMXFWhdv3iTPWL/8O29+CmZrHuc7771NACT5ncLth6QARMHf/LmRTSBNdDZQ0UL
 qwj/A3xAaIQngcYsSlCnRtZYGqy+Hjr576fQUAQycu9Qjmt1iVwYTnGBuV1Ap2aUIs/Z4e9w
 H+8jDR1+GYnNyQjjTd0GLS6Jo+oqqd9vJzQPaip+JQBjHligODbJlsVbuYrFkO0Z2SwWdvqv
 bgiVMNONly9mPwcwiO0GTQ8jil6hkCwTvDzkKVmnTqq8CRfkNFN+Nxwbh3XzGczmhIhqAa7I
 t7m1i3mrASMDb72AP63NTMXwECrDvOnVMS1dQ9olYabZETc9Zq3Ooi1XIQKrgsNgTg5rsqFe
 F/Zfusnsp+QBehY3fVsnIH+q3UYl0DWhOPQk01sseIyTRhnHdg00sCxMAE901wjK4Adw==
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="43486760"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lm7W9XRxD3uyqZBsNgxEYw6Ocy0ESCVKSjGoLDybTGELlyOHECDgB/55I6Y4sIl+DIEd62jM2Keldnur1snn93b5VB0/c+WYvyJ5vSNEQ/op/j+kpgvhvmKpDL7XHX1KDpwiitM9s5+HWA6JXfuZSy9DCpqme3djs2xkutG6uv2ZaJ7Gj5c5ecLHM5UJfRFqpH5KBckczpb9CrHzca3//V7iwcqTHdzE9q0RxSfhBwU7dH+acRs6YvgIcVaHhnhJVeHiOmxWo7Avy/IngVZORrUTzEyMNVGqwdU1hnV8oWmN0sg+rZbVS60F9PwUPTlfWoKBgqqyjy+fBxatjETHTQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MS1C3GDXefObJ0bo182MCU8ca10mlA45jZClpTpeywY=;
 b=ivTH23xGAZI2dsdfjrPjg3rYkgKwcHDh14J7JaKJ/KjQSBYgUtxOwbVHmpihxyT48Ig5qLZx7oHc6uiwmweq1Jwu8Mmc97mGUp50eTaFnmp/BulguDke6O3RvRGkQL3aizqklspeUnuz7gY0C7E5iybijI9qqTWqxjJlLoHcaLC/QeRn2Un9hATgvtn6v2U0bvZH0l/zD+4uLZH3ariaM8/2imDq+6R3lkqmy3hP3hYgLHe63TJn7Ml8DF2X6RSsIkLKFiwx03VaVAQrWwsJCJpe2CX4BsFbOKmOycL3gui5WIbeJlhx8MwYoxCA21GBbImD6RYZFAUO4dt7QuXDYA==
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=MS1C3GDXefObJ0bo182MCU8ca10mlA45jZClpTpeywY=;
 b=jfCLwlxXeltHba5BqYizOEHHd7jMdXzUFzE0ne7p0Gd9fcbHd5sQHj4IA3E4CKf5JitYS46LDILAZllvglV6zgZkR0j9AAofKgx+wmDjwZvEttJbrGf0K39lE2U5UjYPq7Zc1ekclwP4/GObIIxvrP/w4z/1C7MOmbhCR5mV1c0=
Date: Tue, 20 Apr 2021 17:44:53 +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 v4 1/3] x86/time: latch to-be-written TSC value early in
 rendezvous loop
Message-ID: <YH729WcM5Uqz9vwk@Air-de-Roger>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <35bbad56-d0f0-a37d-674c-e635eaf9c94c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <35bbad56-d0f0-a37d-674c-e635eaf9c94c@suse.com>
X-ClientProxiedBy: MR1P264CA0033.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::20) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 472bb0ab-30f3-42bd-b1f3-08d904134139
X-MS-TrafficTypeDiagnostic: DM6PR03MB3482:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB348214D654682D7C456DA2438F489@DM6PR03MB3482.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5516;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: lMtEH9aImosioStIZjDxV3M0cF6NECJuVl8nqox2TA54I4bu00ae+tlu1tayVuQFonVwZug/oTE4ITnBnMqT4i+X16xc8ULJn3wEMcb4XgsfIKTMmBH6qGyCMFiTEunFK98fqDAwsmhXZlhPURJst9vpAzb1G9CFHlXpJvVNOAEuSSMv35URtIz3lQ7r6OPTYhGMHFIGwq4e4aIxnXIbfAKCsvjZwhW+ZYwDtArdcBd/m9wygJOX3vVQ+sUX0veg8jwY4fFJlcBQEr57Sq95PCmqQuH+d7jvJLgv5D0SOIxXDwnhRrZJ9mcCQhEgi5S1xiLTOqdCJMdoccNhdi3t467gr78tj687Zv/j4wyHmHR9pdQ5eNCnpjFT0A3ZAoPffzZWAVvH172/sVAEJNd6knMCuskNQ+GQEqm/kS9HppdjDHV8la5q2W/2tQPVEhYfi3KXh7hynfLoRmGu8WVXkPSiIObNCXB5qQDvLfojACHCDJxMbvA+I5gH0lTJFTub6Ki/QDP0m5mxkLbMtRRiCve8PFM17EfSCaayrmBw6eC2Oi1wmZLFcgCxT7edO0MQwZKJlE5G16RxjpmX+C0LAPhXK8uR0ahXHW6oBhJHklU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(396003)(376002)(136003)(39860400002)(366004)(346002)(186003)(38100700002)(6496006)(26005)(16526019)(956004)(4744005)(6666004)(478600001)(86362001)(85182001)(54906003)(6916009)(66946007)(8676002)(66476007)(66556008)(5660300002)(4326008)(9686003)(33716001)(2906002)(8936002)(6486002)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?HvIm23nxO/SEalxdF1UaDy/lf73O+Gp927uBi+t?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 472bb0ab-30f3-42bd-b1f3-08d904134139
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 15:44:59.5891
 (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: KbEYHBdEBYgoDL62YC7m/kJV6iVAMzZ419x1ebpvSZk+RRe/TWs3wXrl1XMDJSoVEAAbpNvhZEHsQ4Buzjf13A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3482
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:54:05AM +0200, Jan Beulich wrote:
> To reduce latency on time_calibration_tsc_rendezvous()'s last loop
> iteration, read the value to be written on the last iteration at the end
> of the loop body (i.e. in particular at the end of the second to last
> iteration).
> 
> On my single-socket 18-core Skylake system this reduces the average loop
> exit time on CPU0 (from the TSC write on the last iteration to until
> after the main loop) from around 32k cycles to around 29k (albeit the
> values measured on separate runs vary quite significantly).
> 
> 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 Tue Apr 20 15:47:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 15:47:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113887.216985 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYsbR-0003I8-6U; Tue, 20 Apr 2021 15:47:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113887.216985; Tue, 20 Apr 2021 15: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 1lYsbR-0003I1-3b; Tue, 20 Apr 2021 15:47:53 +0000
Received: by outflank-mailman (input) for mailman id 113887;
 Tue, 20 Apr 2021 15:47:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nVk9=JR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lYsbP-0003Hw-Cf
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 15:47:51 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 77b032fb-fb18-4f72-bd04-415397e7bce8;
 Tue, 20 Apr 2021 15:47:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BBA35B4B1;
 Tue, 20 Apr 2021 15:47: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: 77b032fb-fb18-4f72-bd04-415397e7bce8
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618933669; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5fxugZuTImhiQsv8DmDNU1HZA2gMgWqPfo2rpD0EcpU=;
	b=jK1E3zsF1vpkzU94HF2WS32feZNXge/XPi9MovmYnvr4uxIYE5+wuXmEo2TQq7/dSE4DzT
	BTRpTWD296wq143onZfkwHEiRpHf4xhCFd1fkNU8YOuYxxCiMvKft2F2T/k2sRMBLnLJCM
	ctn4WUaM3AmC2Yicb1LEyQtURQTCQC0=
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
Date: Tue, 20 Apr 2021 17:47:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH7zXpPz03+kLzEr@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 17:29, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
>> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
>>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
>>  	@mv -f $@.new $@
>>  
>> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
>> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
>> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
>> +	$(call move-if-changed,$@.new,$@)
> 
> Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?

Yes and no: Yes as far as the actual file location is concerned.
No when considering where it gets generated: I generally consider
it risky to generate files outside of the directory where make
currently runs. There may be good reasons for certain exceptions,
but personally I don't see this case as good enough a reason.

Somewhat related - if doing as you suggest, which Makefile's
clean: rule should clean up that file in your opinion?

Nevertheless, if there's general agreement that keeping the file
there is better, I'd make the change and simply ignore my unhappy
feelings about it.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 15:59:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 15:59:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113894.216997 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYsmN-0004Hg-9y; Tue, 20 Apr 2021 15:59:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113894.216997; Tue, 20 Apr 2021 15: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 1lYsmN-0004HZ-64; Tue, 20 Apr 2021 15:59:11 +0000
Received: by outflank-mailman (input) for mailman id 113894;
 Tue, 20 Apr 2021 15:59:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYsmL-0004HT-Ta
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 15:59:09 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 18a4ea48-4319-4915-b445-0b4cb31f0da8;
 Tue, 20 Apr 2021 15:59: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: 18a4ea48-4319-4915-b445-0b4cb31f0da8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618934348;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=pfzqGgouGxErUN/1mqbtk2ePQ6zz8gpzuR9Ml0doMAk=;
  b=gi1ier+FMJCBVU3tDZGMFXDAgQozAS4d/MA8QdvDxE+/4JuofIJnS8Ra
   77FRlN9mP8DMRsmv+1vWHzkoCBoVuXIjNEBAEqtTOrq1kuE8K3ttrOWS+
   o0Z7I3xQypnzHjQXI2l4XYWVlIdUZQO/LyIOATAf/BlAe4JQEpkGYq6c/
   A=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 1fc8gM0yeQDoiyC+F8mVaFSz2KHW5yoLUtNGSdI9YEuzPw6cJVMEnWWJVHheuPWvoy0wwHCDFA
 ouOWrjKYK/71S8dORKef4CsugSwy3xMidMTpN4LVsDQHsXQ3p9o1eM50cDUTAsnB0OQjrZXA8d
 2o+0ZSBTrxeOAktlhyOfQxnB9fG1e8tLXS1eyb+Snrhv9vV4rexkyN8MVzcEvERphSLW9oKMIu
 PfNSy6wOsvdoa9KCDGmZk80D0bzYDQ+I6shrf/mAMijnnPHtXdeOttHen6CHdfsoqULeFmw8qe
 TTw=
X-SBRS: 5.2
X-MesageID: 42125117
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:8kxcFahnWFbGN1XDDYT1fYRzKHBQXwB13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy48XILukQU3aqHKlRbsSiLfK7h/BP2nF9uBb3b
 p9aKQWMrfNJHVzkMqS2maFOvk6xt3vys6VrMP/61socg1wcaFn6G5Ce2SmO2l7XhNPC5Z8NL
 f03Kp6jgGtc3gWcci3b0NtN4T+jubGiY78Zlo+DwMngTPksRqT9LX4HxKEty1uMA9n/LFKyw
 n4uj283IqPmbWRyhjQ12jchq4m4ufJ+594K+GnzuQQIjXooA60aIpmQK3qhkFJnMifrGwEvf
 OJjxA8P9liy365RBDInTLdnzPO/Rxry3j+xUSWiXHuyPaJOw4SOo56qq9yNj76gnBQ2O1U4e
 Zw8E+y86dzN1fmmh/w4tDZPisa7nackD4ZvsM4y0BEXZB2Us43kaUvuHl7Pb0nByzA5IUuAI
 BVfbrhzccTS1+cYnzD11MfpuCEbzA2FheCdEAIptaY5ThQhGx41EsV3qUk7w49yK4=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="42125117"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R7bCqVNnzg3xZZhMKJnQz0Gv5hfKUSzQbmyeuQIq6M4H1jyyjmBVUt5c4GCOkCbyKpS1OBi6vMxLU3HzsVxydSkEvInkZv4AjKpBcQ0HxAOKVAKTDe7K6WnikrngOf2z0w+O85wAgTb9W9tDs25AZVUvWGS1gZjYBoBUV8CkpjlLWyY5qUFoBLg49JwXenDGwBfWNRepTfv+ZYArNutn0HKAzAf3Ru9AZcF3wtsFqFqTn47JHTS00mJE6yZUv3A4Roln0c2rpi+MSCxO3USngCZ9c+s8+SZ09goewYYOTdlt1/8dWv0TN4uIUI0DdKtlz3OWvBoXYWkNnbPZPT1HxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iTqAJs4NqeUp60N4LWJpLG3HoOl+mpLjdy/SFXBOj8k=;
 b=eVWmBWIed4ouLhkuvyUbfHLZBd+etbP/QF1eiCGcXNFWBU6s1fKAW9PNE7h9FdqK9OiTHPFuRdE2Y9OVwUZJg4eU9TBYJTuLsrto8qRxqu7EEl0gt0I4/go78hb3beyHfpcsIj+eO07/TdE9vKdle92bwc4S08NQoWxEqfsB84uD3q23ZHJY9/21hRq0qXnIJCj8K10GsfWCv3mWa0Z7U/nRkwGrThFvxeb4ixYEdX9vZ3JB5LHSY8zJorCSUUfWyjxj2uLJZSxpA7SlpdEIyuoUIQYjS/5+tUjH07y0R4+lpx6DOyJt2m4DDa22gpgLLZj6/8zDe2GKa8X9DQSc3g==
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=iTqAJs4NqeUp60N4LWJpLG3HoOl+mpLjdy/SFXBOj8k=;
 b=rrgj3AQMtaZrpylNVwMVoWzOYy/H2NfICnjyDdidr+ssKr2dE/8miodX3Y176VPRK8foKPR8BVhoeT26Mh6QaKdfumGPMudUjV4wZhC9vfN6dDVoK4PnSofQMRX1W6DgSrH/ObPxB3jZhEFXbj9Xi8sH78TNKG7OG4/2cW84qeg=
Date: Tue, 20 Apr 2021 17:59:00 +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 v4 2/3] x86/time: yield to hyperthreads after updating
 TSC during rendezvous
Message-ID: <YH76RJTqvwYmvXu+@Air-de-Roger>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <81da85eb-2e8e-9b76-2fb3-2beddc33e9af@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <81da85eb-2e8e-9b76-2fb3-2beddc33e9af@suse.com>
X-ClientProxiedBy: PR1P264CA0005.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:102:19e::10) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: dcecc535-6c48-49bd-c0ec-08d9041538ca
X-MS-TrafficTypeDiagnostic: DM6PR03MB4842:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB48421D98F5C0AF9F641EC8C18F489@DM6PR03MB4842.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2449;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: qHxsRDbWnuC+fAALazpqtn6KO8KnbEzRqXPxaHMyl6P21k5oBiZBwQSL9fo0pnCznl/I3wiXwrjI63nhO8kMjZFlXNLsDWEHoeR1VXfwf/9saei/+CTAY8qPL8hII82b7VDqR/LyF3qLesv2A+xInjd2ikcEhzREDWbOJIzmozXeSWft2kJ7nZrXUt9IVJiwEAqm5Sr69goafdn15MIUSK5l2Cpw/J+aKST2r7x70DyDyUSdyYhxVGieToiVVJAe/WetwZV1EMmQQkqDFAgRHI0wYIKFilKts8vpch8EL4Uv+QcYgkzFVh3O9b3b0AiHNCl4Ocv+mE8PR2FHWtOX8r0Gd7sgF2NnHJNN1nA7xuVxnpRsIC+6CL0JPBkSdpYMbTUVdMReb5GtknBl4F2t4VvFBsPYy/Ss7mDr0UwRqkrhriWpPheIi9kXniE/v9y9JOzHLzxVc7VjuKswz/fsSlJdsvruyswRw0kkPdympXk64qz4TJ9UcXiGM1MmudI5IMZhAhsHJsnuH1FD1ocxo/aQvD0TDtbo5STFT6UFlastLbEvp5QLztZ64UFX46KhTWi/ReDomciehuC/6N/otHAYRkMopyT0cckOWPBbEtU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(346002)(136003)(396003)(39860400002)(376002)(86362001)(2906002)(6486002)(9686003)(6496006)(4326008)(26005)(478600001)(16526019)(38100700002)(186003)(6916009)(54906003)(66946007)(66476007)(83380400001)(956004)(4744005)(5660300002)(33716001)(85182001)(8676002)(8936002)(66556008)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?WFATWGr0EzejuBmv74hsV1/Xq2PKYX9PdqblN5P?=
X-MS-Exchange-CrossTenant-Network-Message-Id: dcecc535-6c48-49bd-c0ec-08d9041538ca
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 15:59:04.6467
 (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: QGIPvxfpkq+ywetT6LavCOq84mKmtupvGp1hyJ/57iit4NNcUDLfTdyGYBK3yHUFGs2aum2Qb9dT6u/h+kCzeQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4842
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:54:27AM +0200, Jan Beulich wrote:
> Since we'd like the updates to be done as synchronously as possible,
> make an attempt at yielding immediately after the TSC write.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Did you observe any difference with the pause inserted?

I wonder whether that's enough to give a chance the hyperthread to
also perform the TSC write. In any case there's no harm from it
certainly.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 16:12:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 16:12:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113906.217009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYszN-0006XP-H3; Tue, 20 Apr 2021 16:12:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113906.217009; Tue, 20 Apr 2021 16:12:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYszN-0006XI-DO; Tue, 20 Apr 2021 16:12:37 +0000
Received: by outflank-mailman (input) for mailman id 113906;
 Tue, 20 Apr 2021 16:12:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYszM-0006XD-7T
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 16:12:36 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9d1eb15e-d454-4d91-a20b-b6e30696587b;
 Tue, 20 Apr 2021 16:12: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: 9d1eb15e-d454-4d91-a20b-b6e30696587b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618935154;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=IrTeP2ebox1YZR1vjmcCAJL+n72aVNBKPJlwJt3o33g=;
  b=NqoriCtSKut80zrA9idLKdSjlU4+pdDrdqSc3msiZQKnxhnOpxlHlAcQ
   2m5dE/DY828fMlYjYQb4DVt7D6SYNTAp7ME8R1fM3KZGXEA79EmoQAWy4
   Ep0TOkldB7qrYlgBftQiPjCfAvyDxS/ILsGtyUqXn3Gkjapj59aRPAAiE
   o=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: TP9xpw1GL6Q3whqpBvhXWURf5NRHVb+R+8Q2p6u1/x1Wu4BHXwd0Ye34GW2UEpRMDN6aKY+1sg
 6oZNjHzvDknOioJK8myZmcabUeXv9811jLCxRlbpit0S1dhsM1b0fx61WNYDZVibLgTqTJlDCY
 TUAiJZq6Xqg4mD8FPdid3jMuB5xvVcA3QaXlPUe/BCTk6byev3iw09IFWGyl9Ge+oDBGDBD7IQ
 HU3SPr1KyrknLI7Yp+0OEEYShj6UcaIHugCvSOZxsqjrrRs9+K/Z7xmbOiglr8R8Dk0laj7q0j
 EWA=
X-SBRS: 5.2
X-MesageID: 41996918
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:ITrn3Kl2TDdxB0HD50dR9OkNB/3pDfO9j2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN/AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 tdWoBEIpnLAVB+5PyW3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0ZNi+wOCRNNW57LLA+E4
 eR4dcCijq7YHIMbtm6AH5tZZm4m/TgkpX6bRkaQyM28QXmt0LS1JfWMTi9mi0fXTRG3Ks4/Q
 H+/TDRy62/v5iAu33h/kDJ6ZA+oqqF9vJiA4i2htEROnHQjG+TFflccpmjmBxwn+218lYtl7
 D30mYdFuB+8WnYcG3wgTaF4XiY7B8U53XvyUCVjBLYyKSTLlJKaLszuatjfhTU8EYmtt1nuZ
 g7p16xjJZLEQjG2B30+tmgbWAVqmOPvXEgneQP5kYvN7c2Vbk5l/16wGplVL0EHC789bk9Fv
 hvAMz29J9tACynRkGckW91zNO2WHMvWj+AX0gZo8SQlwNbhXZj0iIjtYEit0ZF0Kh4Z4hP5u
 zCPKgtvLZSTvUOZaY4IOsaW8O4BkHEXBqkChPfHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ
 PdFHtFqG8bYSvVeIyz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykvGnv+4UDqTgKr
 iOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+dEmJpu7NN432ps3WePveP9PWYHUZc1K6Jk
 FGcCn4Jc1G4EzucGT/mgLtV3TkfVG63Z8YKtmZw8EjjKw2cqFcuAkcjlq0ouuRLydZj6AwdE
 xiZJfukqaxo3iK7X/Fhl8ZfyZ1PwJw2vHNQnlKrQgFPwffarAYoeiSfmhUwT+hKgJgSdjVVC
 pSvU5+967yD5H4/1FsN/uXdkahy1cDrnODSJkR3oeZ493+R58+BpE6HIprFQvKEBRxsR1wqH
 hKbTIFQkO3LEKvtYyVyLgvQM3Pfdh1hwmmZeROr2jEiEmarcYzAkcAUyWWSs6RiwY2Tz9yjl
 l8mpVvxIaoqHKKEy8Ske44OFpDZCCyDKhdBAqIXolSh4vmYRp9V2uMmDychSwiY2aCzTRjuk
 XRaQmvPd3bCFtUvX5Vlpzn9155bU2xVUN9YHISi/w0KU32/lJIlcObbKu61GWcLmYYyuYGKT
 fffH85OQV13e260xaThRePHXgr3Y8VI+TYFbgvGoujnU+FGcmtr+UrDvVU9JFqOJTSqecNS/
 uYYBLQAzXiCe8lsjbl0UoNCW1Rkj0Dnvzp0hG+szT98347HPbIIFNpA5scOMqR6mD4R/COlL
 V15OhFyNeYAyHUUJqhz6qSUhtobjX0ikSyR/szqZ9Vsbkp3YEDVqXzYH/t7jV/wB46LM3Ij0
 sQT6Rw3aDZNuZUDr4vUhMc2mBsqc+GI0QquDHnG+MSfVkiiHnAItOCioC43YYHMwmkpAHqP0
 OY/DAY1/DZXzGb3bpyMdN6HU1mLGw94m9l5uWMasn5DxirbfhK+B6fPmWmeLFQDIiDFrN4lG
 cx3/i428uWfTH/wgbeoH9SJb9P6X+uRYeKOz23cNQ4heCSCBCrmaul4Mm6kTfxR3+aUi0j9P
 F4XH1VSN9ChDkkhJAwyQ6oRMXM0wQYr2c=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41996918"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BnjgcBk9IkeaP+3krFdNSFyiF+WgHRA12D2+YqcmTfCi3Ce26CTX8Aop23C0j6kga+ixEF62gtYvIAA0oJrwvCf5yJB24L2fKRW5q786NQytTHd/JxSv04mDCJ5EcPfWG73T181Eyjpl2e7kjky2rW7ZSvk3QiI2tGNfnCg6L+vRGgQCoWGIk65X4cFBksCudlnvXaSVIsCzIt+ar6ipcXHz1Yf65xPuzvu+SwW+qxmQ7Sq/lfivc604NYa49aZ6ynHicNKOzWHVRCDXToDhmrHenD6/ctdL3tWxOBay8hV2V3K6JMHvnfZtExMpeEyCqcfTv302h3SRBanzg62X/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-SenderADCheck;
 bh=FEjNOERNmXDf2fx6mSDICJTIjMjkKl1R61WjfFRsnTI=;
 b=Ox615dwtSq7LQdglASUaMCR43KZhNU+dNb600zpjst6KXIj3PAm3mUEEBz/D8mRd441ysCimhy+wmY5/UsrMb3nJva920LT1Jdahhx5tKfLK4FFG+5+t3+YeHpIuWeE+29dc14DERL7+ePR16hwTh1TUuzCWIgA0RoQNXXIh8kDTSvaHkDeF6ZuXDWNpgUD04APEqMDIoOopjY4iluuvBPX5j7TyqwbDjCcFwrhJCnbHbn8rZDEs/mKkTILZfNs8X+5BulOLj5u66SAhYNLXLlu5MSujersw9vkcBD+pQhj3ZSB0qK2x0XokKxuEgG2naTh/SSFNVIAr9n2IdwKx6g==
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=FEjNOERNmXDf2fx6mSDICJTIjMjkKl1R61WjfFRsnTI=;
 b=rjcC3RXJIkbahGGyNl/clHRsQ8DKWIoc9fFbzdoqfN2uA2BuolU8uehzsbsme2SByTbRMn17zG32tierKg9EenAm/0SNQnaTkSa2Nk/z92kqkjhPSHH0XHfc1O0pCzxqiUjK4jgqUyo+YQSvEr39vkMr7ZvjEShzVcNa0d4pC1k=
Date: Tue, 20 Apr 2021 18:12:23 +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 v4 3/3] x86/time: avoid reading the platform timer in
 rendezvous functions
Message-ID: <YH79ZxNRhW24jmUS@Air-de-Roger>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
X-ClientProxiedBy: MR2P264CA0097.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::13) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b42c1f9c-5d9a-416b-9621-08d9041718b1
X-MS-TrafficTypeDiagnostic: DM6PR03MB4970:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4970CE1BA88F6738917790E88F489@DM6PR03MB4970.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ntCNqgoqrmuE+mXSx48dvUS1LVRiWOzypYw/AtXyzObEFmzGCKVfbkP8acMBGCAzu+eyiYPwJLxntICNbRBx07H12/llgNVPaJvXhj3KfHROJGNyPrfyw63DyGtrnxnSNhKVm6zLK1vYuErSB+8/bVVEHKGE42PWMiKGkZTdjgpN9hqRs8piG5EBCN+I5gWfcbskhMIuiVQ0WQi3RO9ggRI5uotL7FD4bz8wABtm4x2vmbZ3Ox07ExPeCl0mx+SFMfnKv6U0pSN9EH1V90Vzjrsyisam3JayzUIKanfJO0Nhv2al/tEcitcuG6MCeeLPfQLIX+SBY5Itwz12/9LYZh7E/P8xZGRq6FKEhzQwtW3BTwcr6vRoRw1W/2dU6cxrZBHTJFIDA3BmI1wdNOgwdIjEvuD4ELUMdSLTLmterBSPJiDNHkQ6vG0IA6WY3329pr7TFHjTwTZRHzKSLBrmfVlUjOyzfcGjgAC68PjGzqNayWJiCKDRQhxASrzYZiKz7fwS+eJbgO3s2ORdRFeBbdmwPPZnK18TugvORHIwO/S5THW05gL0BjYNij2DcV3jRM5EjXboRCt4PylhATZY+E0uQSI4C6059CRvEp8nwSk=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(376002)(346002)(39860400002)(136003)(396003)(8676002)(85182001)(478600001)(86362001)(54906003)(8936002)(6916009)(9686003)(186003)(33716001)(316002)(66476007)(66946007)(83380400001)(6666004)(2906002)(6496006)(38100700002)(4326008)(956004)(26005)(5660300002)(6486002)(66556008)(16526019);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/MLM62im?=
X-MS-Exchange-CrossTenant-Network-Message-Id: b42c1f9c-5d9a-416b-9621-08d9041718b1
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 16:12:29.7553
 (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: 5IPd6RMh1T8tdIJeIfQM7bF0SLOc/8veSYFv2/OAakQaUpdo9DqvHc/Z8TNGH1fRReK8nAJDG5o24mhlvPhwxA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4970
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:55:10AM +0200, Jan Beulich wrote:
> Reading the platform timer isn't cheap, so we'd better avoid it when the
> resulting value is of no interest to anyone.
> 
> The consumer of master_stime, obtained by
> time_calibration_{std,tsc}_rendezvous() and propagated through
> this_cpu(cpu_calibration), is local_time_calibration(). With
> CONSTANT_TSC the latter function uses an early exit path, which doesn't
> explicitly use the field. While this_cpu(cpu_calibration) (including the
> master_stime field) gets propagated to this_cpu(cpu_time).stamp on that
> path, both structures' fields get consumed only by the !CONSTANT_TSC
> logic of the function.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v4: New.
> ---
> I realize there's some risk associated with potential new uses of the
> field down the road. What would people think about compiling time.c a
> 2nd time into a dummy object file, with a conditional enabled to force
> assuming CONSTANT_TSC, and with that conditional used to suppress
> presence of the field as well as all audited used of it (i.e. in
> particular that large part of local_time_calibration())? Unexpected new
> users of the field would then cause build time errors.

Wouldn't that add quite a lot of churn to the file itself in the form
of pre-processor conditionals?

Could we instead set master_stime to an invalid value that would make
the consumers explode somehow?

I know there might be new consumers, but those should be able to
figure whether the value is sane by looking at the existing ones.

Also, since this is only done on the BSP on the last iteration I
wonder if it really makes such a difference performance-wise to
warrant all this trouble.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 16:13:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 16:13:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113910.217020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYt0P-0006dV-Qr; Tue, 20 Apr 2021 16:13:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113910.217020; Tue, 20 Apr 2021 16:13: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 1lYt0P-0006dO-O1; Tue, 20 Apr 2021 16:13:41 +0000
Received: by outflank-mailman (input) for mailman id 113910;
 Tue, 20 Apr 2021 16:13:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hNLD=JR=gmail.com=charles.fg@srs-us1.protection.inumbo.net>)
 id 1lYt0O-0006dI-2G
 for xen-devel@lists.xen.org; Tue, 20 Apr 2021 16:13:40 +0000
Received: from mail-wr1-x433.google.com (unknown [2a00:1450:4864:20::433])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f48184cf-5470-4918-b2a3-86deb80332e1;
 Tue, 20 Apr 2021 16:13:39 +0000 (UTC)
Received: by mail-wr1-x433.google.com with SMTP id m9so25483445wrx.3
 for <xen-devel@lists.xen.org>; Tue, 20 Apr 2021 09:13: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: f48184cf-5470-4918-b2a3-86deb80332e1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:from:date:message-id:subject:to;
        bh=AT2LvXiNgC6erraewrmevNXfWxBw7AQ9jOXXiCfFIm8=;
        b=ZgAu6ZIcqVyyRzDlnpVTZt/LlwFXhi8V8ppqDSmBoNIvy8pZ4+Bi46z1UNsS5/gYU3
         BxDA/K+FwQSakYTwTHgkqW/gTRHjGOeaiRJqC+1MFt6TpHHB0FmSFx2n9mJkLp9a/ap5
         Mt7V57Scv4sL39LD9NKRg64qOPvga5m/P5SZ+SL4Zy+8DTrd7CwxrBT0AY4nHViJwVXq
         AWgMZGmGXme29+UbUQE1t7XCGSuO853v0UTwrwm4f7GIOvBzhs3c62+n0nXyu9O0VPFd
         O/UyoilbE4gg6y+phyV5BRod4Z+oZbnJayss3Z3rYs2zI3W3AJgdmLviIcVDfREGTwgS
         +QfA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=AT2LvXiNgC6erraewrmevNXfWxBw7AQ9jOXXiCfFIm8=;
        b=sBWeJs9w8oQXAYBFtybX5iYEH+UXVyHMPW7AyH/8RnQx30Ir2gSzsrHRdYa0IkFDVu
         3mAZnk7tDtWsU4hXN44JrzzVPwzBhE8mKjTKTqTaBheDhvZjo/a2b1TC3fjdFT0cjBRD
         h4YWqkVG2cFwhFBsI3ju3OF5KUZ9u/V8QHbDN9sw4kwB8XFgDBgzd5y/zGYkdr/JgkGr
         XFynPg5lxBqhOgy/3NJwt5CCyXEhmJZvOUe+T+PVjW6wdY5d1X33L7kKAa/Zvj6pMSYN
         /Mz7NlydXPoVAqwzc1s5uTyV/5t7LjYGpk8k0YrWcAHzMFK5nbHvdKqRk9Q6wf2P2ZoE
         BnPQ==
X-Gm-Message-State: AOAM530aUjiHxnuUun2x2Mt+nHogHsyNwgiUMvHpjKqQGyCN9tUhg7ek
	0+iuFmIZjiOz3dD1cDfJQUkS2IEm9LyN16lRmMPv0SO00t9FQw==
X-Google-Smtp-Source: ABdhPJzDzchw62DsGEstWKarEOdEUNuBUhO7DMhJsh7oVKBKgM9Y3uphOJnxpsifUh66O7jul6nEabL/dHM647WA7Zs=
X-Received: by 2002:a5d:4851:: with SMTP id n17mr21476783wrs.215.1618935217668;
 Tue, 20 Apr 2021 09:13:37 -0700 (PDT)
MIME-Version: 1.0
From: =?UTF-8?Q?Charles_Gon=C3=A7alves?= <charles.fg@gmail.com>
Date: Tue, 20 Apr 2021 17:13:01 +0100
Message-ID: <CAAQRGoC7P0yg-JoH4dpxTj13=D_6F9e2kjXuG5WWdqAF8k8KxA@mail.gmail.com>
Subject: Writing to arbritary cannonical addresses
To: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="0000000000009046dd05c069ba1b"

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

Hello Guys,

I'm trying to reproduce old exploit behaviors in a simplistic way:  create
an hypercall to write a buffer to a specific MFN.

At first, I thought that updating an l1 page in a valid VA in guest kernel
space would do the trick.
But for addresses outside the  Guest-defined use (0x0000000000000000 -
0x00007fffffffffff ) is a no go!
I get a page fault with  'reserved bit in page table' warning message.

Now I'm trying to write to the address inside the hypervisor code, but not
sure how to do it.

Any comments or tips on this?


Atenciosamente,
*Charles Ferreira Gon=C3=A7alves *

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

<div dir=3D"ltr">Hello Guys,<div><br></div><div>I&#39;m trying to reproduce=
 old exploit behaviors in a simplistic way:=C2=A0 create an hypercall to wr=
ite a buffer to a specific MFN.=C2=A0</div><div><br></div><div>At first, I =
thought that updating an l1 page in a valid VA in guest kernel space would =
do=C2=A0the trick.=C2=A0</div><div>But for addresses outside the=C2=A0 Gues=
t-defined use (0x0000000000000000 - 0x00007fffffffffff ) is a no=C2=A0go!=
=C2=A0</div><div>I get a page fault with=C2=A0 &#39;reserved bit in page ta=
ble&#39; warning message.</div><div><br></div><div>Now I&#39;m trying to wr=
ite to the address inside the hypervisor code, but not sure how to do it.=
=C2=A0=C2=A0</div><div><br></div><div>Any comments or tips on this?</div><d=
iv><br></div><div><div><div dir=3D"ltr" class=3D"gmail_signature" data-smar=
tmail=3D"gmail_signature"><div dir=3D"ltr"><div><br></div><div>Atenciosamen=
te,</div><b>Charles Ferreira Gon=C3=A7alves </b><br><font color=3D"#666666"=
><br></font><font color=3D"#666666" size=3D"1"><br></font></div></div></div=
></div></div>

--0000000000009046dd05c069ba1b--


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 16:17:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 16:17:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113922.217033 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYt4B-0006u6-DT; Tue, 20 Apr 2021 16:17:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113922.217033; Tue, 20 Apr 2021 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 1lYt4B-0006tz-AQ; Tue, 20 Apr 2021 16:17:35 +0000
Received: by outflank-mailman (input) for mailman id 113922;
 Tue, 20 Apr 2021 16:17:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYt49-0006tu-Gf
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 16:17:33 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b89e9ec4-a107-41dd-8778-dfb6512d3953;
 Tue, 20 Apr 2021 16:17: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: b89e9ec4-a107-41dd-8778-dfb6512d3953
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618935452;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=sUvaWzqC+eKvttObpKr4fjmU+deypsudVxElxh5H1L4=;
  b=c17elq66osKms8CSvntwUKGIDy8jNmIf/lIJ9Qj7mC6XVGVba1ngEyDq
   IS90UPgnw4q5SmnzttxDGlI7tL+ibCoSSReENLxUr1MOhanjXkL2vvLl4
   T74VeliUtOEy5AYxJuB4ZcRXYtCZpoA3HdVjZ4oly+Nmfew0B9NAmy15c
   Q=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ABVWH3Pkx+mzR5lU0sB74xJgDUhTvltp4rYfE7/UMGF5DIFzGujFQ+YfsmkHDruCIhwhA0pXBG
 Ij+t6Bm9Dc+7D9TPRnlmxrsdBrfa6Y5aP5o/yFKoKGfUg3+0QJCUgNHs2nVieeYvDa7d+LUNQp
 UBE6nzCrGMrBzv1NIs1sFSsPcxSt9KlkbacwNu+rrdYD6S8Nj7UIUtRKK7itOJrBJFufiX6dfx
 dku4YYMaVzRRoKwqakuo7nHberlWgiUsOiLKdbwgFCk9cDysPeZP5cOC7hs2Jz0fsh/QFVRm/A
 yqk=
X-SBRS: 5.2
X-MesageID: 41997553
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:qEPZx6qVoMH22ZVNdsIN0McaV5uNKtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQa3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIFg/I
 9aWexFBNX0ZGIXse/T/BS4H9E8wNOO7aCvgqPkw21wSBxxApsB0y5SIG+gYytLbSNBAoc0E4
 fZy8pcvjy7eWkWaMPTPAh5Y8HoodrXmJX6JSMcDxk85wWUyR+u4rj2Ex+Xty1uLw9n67Ek7G
 TDjkjF9ryu2svLsCP0+k3yy9BtmNXnwsZeH8DksKkoAxjllwrAXvUFZ5SspzYwydvfjGoCsN
 6JmBs4OtQ21nW5RBDLnTLI+y3NlAkj8GXjz1jwuwqRneXcSCghA8RMwaJ1GyGpk3YIh9133K
 JV02/xjfM+Znms7UeNham8azhQmkW5unYkm+II5kYvKrc2U7NNsZcZuHpcDZZoJlOL1KkcDO
 JsAMvAjcwmCG+yUnaxhBgJ/PWcGl43HhuAX3EYvN2U3zV8jBlCvjol7f1asXEa+J0nTZ5Yo8
 zCL6RzjblLCvQbdKRnGY46MIWKI12IZD+JCXmVK1j8Dq0LUki94qLf0fEQ3qWHaZYIxJw9lN
 DoV05Zj3c7fwbLBdeV1JNG3xjRSAyGLHXQ4/Abw6I8lqz3RbLtPyHGYkspidGcr/IWBdCec+
 qvObpNasWTb1fGKMJs5UnTSpNSIX4RXIk+odAgQW+DpcrNN8nDqvHbSvDOP7DgeAxUGV/XMz
 8mZnzeNc9A5kekVjvTmx7KQU7gfUT54NZeC67f0+8PyJUcF4FFvwQP4G7Jov2jGHlniOgbbU
 F+KLTonueQvm+t51vF6G1vJ158Ay9ukfLdekIPgTVPH1L/cL4FtdnaU3tVxmG7Khh2SN6TNA
 Zeol9w6J+mNpD4/1FlN/uXdkahy1cDrnODSJkR3oeZ493+R58+BpE6HIt8CBvMDB4wvQpxsm
 9MZEslSybkZ3PToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqYGAaUT6oWcu+mh0vWDJQu1
 10/8Yk8f+9sAfqDVF6rPUzMVVKZmjSKqlBFh65aIJdna2uRBt9Vl6QhTuRiwg6f03j80l6vB
 25EQSkPdXwRnZNsHFR1ajntHd5bH+UcU5LZndmioFlDmjdtnFv0eiEW7qr3wKqGyk/69BYFA
 uATSoZIwtoydzy7hKTlTqYPVgNx5klPIXmffkeWoCW/knoBJyDlKkAEfMRwY1sM8r2tPQXFc
 iFfRWOET/+A+Q1+gCcq3o/IhNooH08nf6A4my80EGImFoERdbCKlVvQL8WZ+yG52//XvCSzd
 FXi8k2sebYCBS4Vve2jYXsKxhNJRPYrTToE6UGqZVIsbkzs7U2NZ/BSjfM3GxG2hJ7DMqcrj
 JofI1LpJT6fqlodIguXggc2HwDvtGGNlEqvQz7GfVWRyBms1bre/eyp4PVor8uCHCbrAT+OV
 Oj4zRQls21Kxer5Po/MeYMOmxYZ0g31WR68M6Df4PWDh+2d+srxivNDlaNNJtcQrOCA7Mes1
 JT5MyJhfaec0PDqUztlAo+BqJF6GC8R8yuRCqKBO5T6tS/fXCBmLGj7sL2rDD5T1KAGgslrL
 wAUUwbdcJYjDY+yKUxzyipU6Ty5nsfrGE220Atqnfdnq684GnaGklaMQrWxrVuNAMjTESgvI
 Di6uiX1HP0/T5f/4LMfX0gJe1zJw==
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41997553"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YUE9l0aCSLAK1YiNIC2ThYozD9zpFZPhuGJseNJ3s1B4pgyBjnYSCwIhovzGt+yRMOB3hgW/Vab4GWLjY6+JZyI4wPdg+91DYxS+tcPl3koUy8IIl8pOAimwjyiLSsEwt0oXu+beq8KbWOBEvRyR9XyEi+/Jg0C2SwzAUuuRY0zLVHX8l3AFKOHmPb170lwc1+Fbe6Lee9o858dxZ9+3PZE/9bmiJb5XC8LdKV1KJzeokO3i6IJBKASPRCNBGZ1fhizuRZPqhCn1V7khOLFaYIqFGNaN0PYiAFQI2Fq1vMnelKKwkQBp0swI9pzSd7H+HJtzUrn2ZKYWXhiOJsRCJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hTS6hH/45NmzXfaUvkoqMgEaNze7Gg4cK6PcbYYj9wQ=;
 b=oPvEaLLtz66QQphEkyqI2h1fM3Nui7MdPY6IUF9qipobWaNXrasJoYKEiw0JVcaK8qGyC339Ov6NiWWSgtaojm5VrNStqqukYG7VxapBfw6JDAkNpL2w8HneAoaptKhnY5pC41LpZCjVJQQlSNRFy8krCYVinHqtLFbsQZXkgC/L/fziIinIy/Ccr7dgm+AoQKCGxQI0K6L0WjzFtWSSOgg7IsitnoV5RB2D3BiYNwCWqkSvSI4/hUMtU5ICpXgZyouas29UWo9yxr7pvZY8fljl2BpDWtkQFEk0mudLI5+33IjkPkjIKghiIY1+p2qMgAkuyBkB5NMxp9fawVPQ5w==
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=hTS6hH/45NmzXfaUvkoqMgEaNze7Gg4cK6PcbYYj9wQ=;
 b=OI5/rdOI65X7ElmUH3LiVVjsemMCY121kRLEHwkTMVRltl/9eEy5sz6xJggqiOOXeON9aYClIS4iuxaQnsOz8v1RAiYJ88X0MYkGmR+le0rHNepdqDmtctu2xkOfrjEdbRrqt12Ol2AqplF5iOxFMg4R1PI1a5P7SRgiSSjf7sg=
Date: Tue, 20 Apr 2021 18: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>, George Dunlap <george.dunlap@citrix.com>, "Ian
 Jackson" <iwj@xenproject.org>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Kevin Tian
	<kevin.tian@intel.com>, Chao Gao <chao.gao@intel.com>
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
Message-ID: <YH7+i/JVnmZGTHOF@Air-de-Roger>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <YH7uX7RqqIS4zdBt@Air-de-Roger>
 <3afbdba8-b25c-985c-6c5f-20077cb37d3f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <3afbdba8-b25c-985c-6c5f-20077cb37d3f@suse.com>
X-ClientProxiedBy: MRXP264CA0001.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::13) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6bc0dbd1-34e0-42cf-7d0d-08d90417c6b4
X-MS-TrafficTypeDiagnostic: DS7PR03MB5607:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB56079535E5762C55D251BC488F489@DS7PR03MB5607.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: i294B0H2rWq5qziVC343DGbgIqNwnAG6VnpbbFL4NcqENDjlc7dVy3rdMGr0NKjq90P9+OfC6Km2380oKXwny8sWYBRA3g8MX38Rb9wRYEKat6K7koNm6JHUwEE9h/k/bJ5BcmM7v4eJW3jnigvl8Am+sgkROJZtUd6VjTGokKNc3o7iYY37D22D5riKzVNwaWGFbws6f6pMhQ2s4lRo8XKtb7SIIzOvq6J47A5ZYtKfInt/DcCL95OJ4HH97E4XN5QNW6PdSVilpD+IbxPZo0gUKiQsyQ9Bsl7h06Cx2O4oDcJFON40mYc6t3u/VK/GqCxyaK0t7W2ZSuKVsxMzMUKh2vbEJXFWfAI73ttM0vBr9wgp3Rg1GqA2ae/UhLA/m6uRJN+zxLToh90xwvV0pw5ryNG+kYcsly+EeIqTUQRjAauuMbmPy09x+ujNyRqqM9rCFIZPxJh/iqqeCGSzPOibOpvDtPFsT09JURU1s5edsnDqPEU2pZAHLbNuYHpaNi+apDMeP+IO/2CjriOekSXrTxfZcVIySRtcugnBaQW4zn75foPokgULJ2vsm8qPk9uf3I1O9/ggNBdgSwLpHxtR6wZcfBe/dh0mfGiQ6mY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(136003)(39860400002)(396003)(366004)(346002)(5660300002)(38100700002)(6486002)(6666004)(33716001)(16526019)(6496006)(85182001)(9686003)(66476007)(86362001)(2906002)(956004)(8936002)(26005)(6916009)(66556008)(54906003)(66946007)(316002)(83380400001)(186003)(8676002)(478600001)(53546011)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/zadW+?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 6bc0dbd1-34e0-42cf-7d0d-08d90417c6b4
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 16:17:21.6083
 (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: MVSISyzHZxF1QdPfq4C5zu4QWmbrZo79p9/Gxpfk305hk/iD8iKzPKXSRy8vsF7jCkREwKqnDmUvEA9Ix7YXHg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5607
X-OriginatorOrg: citrix.com

On Tue, Apr 20, 2021 at 05:38:51PM +0200, Jan Beulich wrote:
> On 20.04.2021 17:08, Roger Pau Monné wrote:
> > On Thu, Apr 02, 2020 at 04:06:06AM +0800, Chao Gao wrote:
> >> --- a/xen/drivers/passthrough/vtd/qinval.c
> >> +++ b/xen/drivers/passthrough/vtd/qinval.c
> >> @@ -442,6 +442,23 @@ int enable_qinval(struct vtd_iommu *iommu)
> >>      return 0;
> >>  }
> >>  
> >> +static int vtd_flush_context_noop(struct vtd_iommu *iommu, uint16_t did,
> >> +                                  uint16_t source_id, uint8_t function_mask,
> >> +                                  uint64_t type, bool flush_non_present_entry)
> >> +{
> >> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush CONTEXT.\n");
> >> +    return -EIO;
> >> +}
> >> +
> >> +static int vtd_flush_iotlb_noop(struct vtd_iommu *iommu, uint16_t did,
> >> +                                uint64_t addr, unsigned int size_order,
> >> +                                uint64_t type, bool flush_non_present_entry,
> >> +                                bool flush_dev_iotlb)
> >> +{
> >> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush IOTLB.\n");
> >> +    return -EIO;
> >> +}
> > 
> > I think I would add an ASSERT_UNREACHABLE() to both noop handlers
> > above, as I would expect trying to use them without the proper mode
> > being configured would point to an error elsewhere?
> 
> If such an assertion triggered e.g. during S3 suspend/resume, it may
> lead to the box simply not doing anything useful, without there being
> any way to know what went wrong. If instead the system at least
> managed to resume, the log message could be observed.

Oh, OK then. I'm simply worried that people might ignore such one line
messages, maybe add a WARN?

Would it make sense to mark as tainted which could help identify the
issue on production builds? Maybe that's too much.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 16:20:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 16:20:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113926.217045 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYt78-0007jI-Tv; Tue, 20 Apr 2021 16:20:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113926.217045; Tue, 20 Apr 2021 16:20:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYt78-0007jB-Q3; Tue, 20 Apr 2021 16:20:38 +0000
Received: by outflank-mailman (input) for mailman id 113926;
 Tue, 20 Apr 2021 16:20:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Yi73=JR=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lYt76-0007j1-LB
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 16:20:36 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bb7eeff7-746a-401a-adcf-675e8b15ee76;
 Tue, 20 Apr 2021 16:20:35 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bb7eeff7-746a-401a-adcf-675e8b15ee76
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618935635;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=gFBNJM5fd+n+HOGxtY0YJLgtc5DvedFRvX3RqvgMWeM=;
  b=XNnnwyr9MPaWsk7HobMnIq2OucPwpKWwUlOyhhiijSjl+krVvPSIgFzy
   AQGtklii3u+RfrQ+2y2UXfm07qfPmKHd52IvwajPR7vkOGwYLQbEIIZ/R
   v8OcOjejEhVS1B3K8S0qaEY7K+JjLR7+tBQRQOaFlAN2BNCUl+v1MuEDw
   0=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: YBtJB7CD9b9hU6cOqjo5Mn4jqLDWhksxSfJuBmj4qFXKgTQsFxe++7JcfFCpPNU7ReZtcN0vx4
 dKqPFaw9+LQkwoftMKJhw3A0AstTg29Hx9ttfUOV+5Xi+Zrnjcm0ktia0Dj0sQNvXxEl9+8tmI
 dpJ/LDFs1yJi/x6MuZeKYM5QdtATsa+Lq/FJZL1gr9X8wJLCiuHWGoKUfC95m1SWWDq6MviDV6
 irJA8Y6Zn7+gJrLZeBPdz8yDOZuQ1V/E1aRL8Vbgn/ThrxCqkpVDP+M5AQC8AXwGwPuTi5vJhp
 +nw=
X-SBRS: 5.2
X-MesageID: 41997929
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23: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
 4QozDxwIlEyLtd0X1kZA==
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41997929"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KzB272LokCoySgp+t5CJgtg8pWmgSFRi8h/NKbEO/nvT7vYSl7FMgOs5XX/ctkMhJavzh3hQyPv2VQ95x8fuHfxUuXLocZkR+9dnhA9TzlEZrfSdAYLa28RuOFNK1Za42ybpZvX50NtwKU99k2qUFRJLOge9KJuOkRySZkfZ3WZ3ueDBx+mCP1cv2/Xz9Dw3B9CrutWj+2xhjpg3HaCog/pxKlJz0VmcrYSEBtarlEVvTVIR4F38BN6iQX8ikp7yH5pHknnp8/RKXpwor5N+TwkdNZFEZGOSOdySADo9ZpTZcpDeA5k/NADe+ep0dygTxhTlmj+1uZU/vH8+bAAFJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zTNew35HM0SBbU/IeSL5QNmXpeBjH9cogBjo6SbWW0I=;
 b=RSaR26sQkJ8XeOzGfr1nhPRBf9Nsciv0dIPW+qYjUUHgoJMnHAPhme38WkgPFXMoNGtsxbXByb3jJAJazfLApeFOStp06tiHH4V82gxTtzu3sX9WTcN0I/07UiPbSTHGZ1NCuwGXFNGvSv3i2zfKPHZm0uf6uwiYif0Xvt1pcVbz0tfkU6+TOHtrXDzlz7ohIcsSTHPbMILzeLQi3u991pOz90nE8DZ4m4uJvuf9K68/gbfHzqis3snn0y+1OAvxyCSatiehSSaNxq8rRkAF8YJ2X6NKbpChe/DMzAeNXpq2PlcO0ULZXfwhkseBGHoW/h7VnJA70b4T679Xsrn4NA==
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=zTNew35HM0SBbU/IeSL5QNmXpeBjH9cogBjo6SbWW0I=;
 b=FCBJT6iBRnnuRdeyobCtwapdHN2ap1t8ICleiqvGda1Sp7rrM8pfMt7SunL0xq1mwWze5bf0RfjJ1W1jSmEGVO9oFirP8fhSnlUKilLrf+GbWhFb+dcJSrCkXc3wfhhTOxsl+D7jO4sQOtGmCZdC526f/75bTF9xsj5ZOLZzGKI=
Date: Tue, 20 Apr 2021 18:20:26 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Andrew
 Cooper" <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Julien Grall
	<julien@xen.org>, "Stefano Stabellini" <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
Message-ID: <YH7/SvkrB2yGgRij@Air-de-Roger>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
 <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
X-ClientProxiedBy: MR2P264CA0051.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::15) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b4da7653-b427-42a2-e995-08d90418387c
X-MS-TrafficTypeDiagnostic: DS7PR03MB5607:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5607C9BDD69A6D95A2C6DBF38F489@DS7PR03MB5607.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2958;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: YPSZkgDO7L8aFzFSk9hvOt4MFWLkCd8ZYZ4YxV3VZeo/bmk9s/3Xwxm1nfzbe24Ro4mcLchRLUcCIpe8Wi+anSJlWNorVivc+5dWNsFCGf/yqGJZiLrtYpwm0cRXN1w75KjjiYQ3d0dpVKwICQ9+BcUB781kwGFijngCX//u3ctThnCJUVBPyGzAHncas9CAMwCoZu0O96pEddaSUTDCpGOdpv21abYVwTrRjD3obHkDN7AnUMUhOOfKBAdeeLnrI8fEtSg9sX9JlFm056/BTJbfmiBFsJJ6SzE3UGQO4lOQESRrYFGGN+1bAJ4k/aN6/YLxe+7rpQG/g4yYQV6ujQDxQOPWfk0uQqn5J1tJEO+asb7x9/lohbycegrVV5YQHtRApTgYP5CAoOu2riGt7JCKgv8Mic+EZpeRZ1lhPLIK5c4crOUj+x+brz0977aaj5tqQ4/tyFYJefTfhKPLoPBwd6Bjjq7rAvsCKxQa9kQb0D0yjY/L59TuB/oFQkkx4YpO8U0tEy5lgcS+B5cSE2nOalUMTALfhAp1lGUFuCbNz7MfeDatWALydWRuuyjHLEQAa85Co0Qc+Zq8dJMXy+4qkTgicd96Unp2YTscZ18=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(136003)(39860400002)(396003)(366004)(346002)(5660300002)(38100700002)(6486002)(6666004)(33716001)(16526019)(6496006)(85182001)(9686003)(66476007)(86362001)(2906002)(956004)(8936002)(26005)(6916009)(66556008)(54906003)(66946007)(316002)(83380400001)(186003)(8676002)(478600001)(53546011)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: b4da7653-b427-42a2-e995-08d90418387c
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 16:20:32.5103
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: m+3U/Wmtz1J1IAv26OTbYpiXWnV7ccZ4bSfPAkDUwZwaxl2Wpswox+YdRHRT8v4rivhGa/3DcKYYZFgDNqTWCA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5607
X-OriginatorOrg: citrix.com

On Tue, Apr 20, 2021 at 05:47:49PM +0200, Jan Beulich wrote:
> On 20.04.2021 17:29, Roger Pau Monné wrote:
> > On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
> >> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
> >>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
> >>  	@mv -f $@.new $@
> >>  
> >> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
> >> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
> >> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
> >> +	$(call move-if-changed,$@.new,$@)
> > 
> > Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?
> 
> Yes and no: Yes as far as the actual file location is concerned.
> No when considering where it gets generated: I generally consider
> it risky to generate files outside of the directory where make
> currently runs. There may be good reasons for certain exceptions,
> but personally I don't see this case as good enough a reason.
> 
> Somewhat related - if doing as you suggest, which Makefile's
> clean: rule should clean up that file in your opinion?

The clean rule should be in the makefile where it's generated IMO,
same as asm-offsets.h clean rule currently in xen/Makefile.

> Nevertheless, if there's general agreement that keeping the file
> there is better, I'd make the change and simply ignore my unhappy
> feelings about it.

I don't have a strong opinion, it just feels weird to have this IMO
stray asm-offsets.s outside of it's arch directory, taking into
account that we have asm-offsets.h generated from xen/Makefile into an
arch specific directory already as a precedent in that makefile.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 16:28:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 16:28:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113933.217057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYtF0-0007zz-Ns; Tue, 20 Apr 2021 16:28:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113933.217057; Tue, 20 Apr 2021 16:28: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 1lYtF0-0007zs-Kg; Tue, 20 Apr 2021 16:28:46 +0000
Received: by outflank-mailman (input) for mailman id 113933;
 Tue, 20 Apr 2021 16:28: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 1lYtEz-0007zk-GU; Tue, 20 Apr 2021 16:28: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 1lYtEz-0005Kf-BA; Tue, 20 Apr 2021 16:28: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 1lYtEy-0001PH-VN; Tue, 20 Apr 2021 16:28:45 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYtEy-0005XK-Ur; Tue, 20 Apr 2021 16:28: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=O0zmoOw2ZkG/5Gsgdbt7WzK8pVsxjFzNds2Y3zfjY/Q=; b=eUMBp5UZqt4BzYDSr00aF4CbDl
	FHT5mCKQfQmJV0WVeVpGLFPVFuT/kkvABwxEREVqMSyIbGPCbgn3eqqelmUqEnmlJjSrHdAm0wYHJ
	m+DuAXCSUbr6WniQLT6WLzTymMCwth5AkSJcQ3SkgTSwzwFPTXhj/2PI+Neg95BeK5hY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161308-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161308: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=3791642c8d60029adf9b00bcb4e34d7d8a1aea4d
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 16:28:44 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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

version targeted for testing:
 qemuu                3791642c8d60029adf9b00bcb4e34d7d8a1aea4d
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  243 days
Failing since        152659  2020-08-21 14:07:39 Z  242 days  448 attempts
Testing same since   161308  2021-04-20 02:13:55 Z    0 days    1 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142901 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 17:26:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 17:26:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113952.217078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYu8M-0004xA-8S; Tue, 20 Apr 2021 17:25:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113952.217078; Tue, 20 Apr 2021 17:25:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYu8M-0004x3-5Q; Tue, 20 Apr 2021 17:25:58 +0000
Received: by outflank-mailman (input) for mailman id 113952;
 Tue, 20 Apr 2021 17:25: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 1lYu8K-0004wv-MJ; Tue, 20 Apr 2021 17:25: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 1lYu8K-0006HG-I9; Tue, 20 Apr 2021 17:25: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 1lYu8K-0004Lg-9B; Tue, 20 Apr 2021 17:25:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYu8K-0002iC-8h; Tue, 20 Apr 2021 17: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=3yQH7dKjG4dGUzXIos466Z9LQXskJeOFSB7k1wVsXZ4=; b=XTyWuA7Ky+QvsluZ+WCOxhLq92
	rzRScJFw0xTTmYlGpTaTOV/j80IjaQaVZD4bMM5BbdFjsdObUHkGs1ZNwH3ICUFCF9wlibasIErsB
	9LUQfLPmP1TNeGl3wrwvRgHRLxHTbuOluKipIvYpYQg3aXkrGyH1KqMvKU5NjewdNHjk=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161332-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161332: 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=9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
X-Osstest-Versions-That:
    xen=a8c532be6a44c7faa54ac777a717f4aa65e3a806
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 17:25:56 +0000

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

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                  9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
baseline version:
 xen                  a8c532be6a44c7faa54ac777a717f4aa65e3a806

Last test of basis   161293  2021-04-19 14:00:26 Z    1 days
Failing since        161321  2021-04-20 10:02:00 Z    0 days    2 attempts
Testing same since   161332  2021-04-20 15:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Rahul Singh <rahul.singh@arm.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
   a8c532be6a..9f6cd49837  9f6cd4983715cb31f0ea540e6bbb63f799a35d8a -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 17:37:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 17:37:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113961.217098 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYuJr-000609-Fe; Tue, 20 Apr 2021 17:37:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113961.217098; Tue, 20 Apr 2021 17: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 1lYuJr-000602-CU; Tue, 20 Apr 2021 17:37:51 +0000
Received: by outflank-mailman (input) for mailman id 113961;
 Tue, 20 Apr 2021 17:37:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NaoY=JR=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYuJp-0005zx-Dp
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 17:37:49 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4fac79dd-5ad5-44fd-9ebf-7701117f32ed;
 Tue, 20 Apr 2021 17:37: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: 4fac79dd-5ad5-44fd-9ebf-7701117f32ed
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618940267;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=+xGlr9fhgmV3YVMsKJcABd8Y6hxgCGA2j3NzGmk4yME=;
  b=WLKiS2GwHxZZ9Hx+5dVFvbPEgU00nFSzxqJKLAczObVgdC4e/K0Wab1B
   eJn1fM2edPoaoVSX2i9SHZPR9iaxxU3Q5AxIpn55iOoKpuJe+CNlUBOW7
   +leWvtkAjvjLObnV7HLtAcpEyMiW+tKUkf2KTGLTt6m9RYj5rt5jJPdq7
   U=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: x02FWENlHvPI90q23sdRAuh3xUD05d7L4yCjx861RpWDWTddRjAygVblpvnILEl0JtbqxSdyam
 xozi6cJUnW4q+w+8PgfmNVknzCNwvO7mnV6OT4ZD5/T3oFrEcwlyLqHW7yffC0aqU/7z7rtH/k
 i4slrhbbwL3EyiMOoT6Ad8w6e6707J97JEKxdmZVWsSkxPmJipmqdn0+3NkduxB+VEwDUeIdRB
 g0JsV5KyE1fBCthO0vX1DA0pUkw4s9NaiBrXrcsJZo9//tL9Eazj9hXGxtALKkmBlo+xzlQ1F9
 D6A=
X-SBRS: 5.2
X-MesageID: 41843039
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:PtO4+a4Dcuk23u3OqQPXwWeEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbjqzOEtwWQVAGN4dHJ
 2T+sJIq1ObCAoqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+ELzGz2BACXzRThYoz6G
 StqX2E2oyPkdGejiXd2Wja8ohMlLLaq+drKcSQhqEuW07RoymyYoAJYczlgBkUp6WV5E8ugJ
 3wpX4bTrlOwlfwWk3wnhf3wQnn118Vmg3f4HuVm2Hqr8C8ZB9SMbs4uatjfhHU61UtsbhHuc
 ohtQ/p1Os0fGf9tR/w6NTSWxZhmlDcmwtErccpg2FCSoxbUbdNrOUkjTBoOa0dFyH34p1PKp
 gWMOjg4p9tADanRkzCsnIq6NKhWWlbJGb9fmEy/uaR0zRQgUljyVoZyME1jh47heIAYqgByO
 LePqtykrZSCucQcKJmHe8EBfC6E2rXXHv3QSyvCGWiMJtCF2PGqpbx7rlwzOa2eKYQxJ93vJ
 jaSltXuUM7ZkqGM7zO4LR7tjT2BEmtVzXkzc9To7JjvKfnebbtOSqfDHgzjsqJuZwkc4/mcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQksonWmiJvtnAJuTRx6/mWceWAICoPScvW2v5DH
 dGdiP0Pt984keiXWK9rwPWX1/rZ0zj7bN9GKXX5IEoucwwH7wJljJQpUWy58mNJzEHmLcxZl
 FCLLTulb7+hWTexxeO00xZfj5mSmpF6rTpVH1H4SUQNVnvTLoFs9KDPURb3H6NIA5DX9rbeT
 Qv4WhfyOaSFdi91CoiA9WoPiaxlH0Ivk+HSJ8ah+ml6dr6fIg7SrIrQrZ4GwmONxEdo3crlE
 5zLCs/AmPPHDLnjquoyLYOAvvEStV6iAC3ZehOqXzesk2Yjdo1RmQSWgOvVcL/u3dqexNkwn
 lKt4MPiruJnjiibUElhv4jDVFKYGOLRI5dAB+9f4VSkLDzcARWRWOH7Abq0i0bSy7PzQE/l2
 bhJSqbdbXuDkBGsn5V6Krs7Wh5b36QZU52d3B8v7BsDGiugAcH7ca7Io6Il0eBYFoLxe8QdA
 vIZjYfOStC7dG63hz9okfOKVwWgrEVesDNBrUqdL/enk63IIqTjKccArt/55B+Lu3jtecNTM
 OScwKYNynDFusswgCZz0xVYBVcmT0Bq7fFyRfl5G+30DoDGvLUOk1hXKxeDNeG7WToLsz4mK
 lRvJYQh6+XPWrwYNLdlv2SQD5HNx/JoWm5C8svsotZuKoutL11W7nXOAG4ok1v7VEbFoPTkk
 hbfYFQpJbmEaVrd9YJey1Y8kEy/e7/ZncDg0jTOKsGYVopj3XnJNuH7LrDlKo3DiS61XzNEG
 ja1xcYwuzMUCSC34MLEq4cIWxZb04n9XRpldnyPrH4OUGPd+tZ+kC9PWL4WLhBSLKdEbF4lG
 c33/i428uWfTH/wgbeoH9SJb9P6X+uRYeXDBiXEeBFt/y8NlLkuNrk3OeDyBP2QyC8cUIWmM
 lsclERdN1Kjn0at7IMuxLCAZDfkwYCiFtR4TZui17r1MyH2Q7gbDB7GDycpI5XUzlVOmWPlu
 Lf/4GjpS/A3AQ=
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41843039"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XQgjukxN33yyisTDnrq1el5Q9j3iZOPx3FB35kTEPBPdPEviv15ivfGWCdLEXQ6HXPuvSybwUWPE4KwCphU3fETXq29vL58xUNL3NtvfSB8tmWbziODsO6IeJTU+5nPzZG5Sctmu/a11IYsr6SkFyFYbe0+upCnS7JX6IZ2zhPJ4vfuZvGhOnEdggTh5KtNCESaTS4FMt01U7hH3tr0aRHpXRicUCGnkcaKNnWatlkVK2zK3NOsbSJL+fIFRUCS/qRyKSNoxI6NUdVEgpya2r5atkzmTad9Zm+ox4pD3EOWSTtAsdGpmaew/QVCihinumK1jkS7UT4xdDFVkh+mVXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+xGlr9fhgmV3YVMsKJcABd8Y6hxgCGA2j3NzGmk4yME=;
 b=Ma/k6RbzEljwwnIzuM/ekS1hBoa7VR8QmWWFT4Kseliy96g7XSLmpyPso0/bOCW00KtOMEkmbiBUkeeD4IPXrGrjf04zHmxeDI/QQlNlnmI0XGYcDrI8ExB2ZzsNkB2D+2ggPLEAW+BZ/WZW2JaWjACVnhr51CnJ6FEYRz1fO8FAyHroBK1VQm81Zc+KGIROV1s1qvB+qqJt5q+GhmDB7kqdcCI+gJJ5MESieSdMM6RHnGpkdILfL0fokpYCUdChGXk7L1Me/FP2veN4ID6QqrluYmbLTPdH67wSChLNn4tugbY3HWxipUSMluT00Om7hrUonL7ptuOsJU0uBIANZQ==
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=+xGlr9fhgmV3YVMsKJcABd8Y6hxgCGA2j3NzGmk4yME=;
 b=B+nuf+5fIl2hyYCB+abzYqQZ+HCyYFBwTh5TRTc65zhLgBng7ACB6AhXNrSTUoegWM8psg102Tp996Ia/zHIx0xIRG2Z2wECj1G/56UGdh6LYFD1WE5tT1HK+i91Ilibd6A6wj3gXaySLFsegHwd2CT/qN9e72rXGFYXFbc9H2M=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210419144524.32608-1-andrew.cooper3@citrix.com>
 <a048d155-085d-b942-40cc-00624b5bbd11@suse.com>
 <faff3047-66e3-0d6f-1878-e1dac47b7c06@citrix.com>
 <398b912d-d19f-8321-815a-362c6da6d70d@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/shim: Simplify compat handling in write_start_info()
Message-ID: <7f95560f-6417-ab03-4719-eba99152713d@citrix.com>
Date: Tue, 20 Apr 2021 18:37:36 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <398b912d-d19f-8321-815a-362c6da6d70d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0029.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:151::16) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 65ea45ef-77b6-41d1-8b2a-08d90423003e
X-MS-TrafficTypeDiagnostic: BYAPR03MB3862:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB38622D710E38AC684845AA4EBA489@BYAPR03MB3862.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: m7dgQhMWXtNkwEzd+jIxjyPHhz5L2AuivsC8WW4iqCzlazduQ5RoxlpKYhDEO3AoioAI8UtBA3QndEfzX+AD/dGqkTjRzwaFBEt6ZilLkWlhDfUnazA+WogMBQY61VhS64mlARhnPcwAOWDPN1L/Nc5/+1+j9LkSLgMczM61RE0IISQ/FJbUOKWoplsF6mfAPO2Nftii4+svEsvBgeWJNi30eVLOINddO6Il2JjFsZ20RxK5egYR/NolrkI4/IkimTmkWYEgJAD17bemQOQAV03X+Nvq3+V/otv1R936gl6/nRy/NdaZz/dg3IiUZuoYTZtrABITGZ+D8FFgEfMlnPwpAFgCIuD4dUQu1B3ewAfUyvZlc2KzJ9gkjcgiCKIEvTPOHrlZbfL1syxKaVZKrrKR3vNZmna6Ibk+Qqqt77ozw3/F5+KjRqxjGvjxEMc/yGgvL579cn33iRzDv/HApN9Uh8F4OVEmXw97lPRVypGnsI92rAg3R2AlzIFb9R2e8yIug6miX9hsrGlAHrAd4X9FnBtBmgNiXa2Q+4wIYpCb2FcsYOodCkdPlIow0Gx1v1VgwGU6GukK6WfRAyjPAEa1o6P5aTvE+exom9Z8IjZq66PUqrGrQyl95o6ZdUpxrEyeeC46SEMy59MuCAbTgP48DxlSOYPBwiT6EgfWjC1RKsOnOrniYZJEC8zYfRrz
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(366004)(376002)(396003)(39850400004)(136003)(54906003)(66476007)(66556008)(66946007)(6666004)(8676002)(478600001)(956004)(2616005)(16526019)(8936002)(316002)(5660300002)(53546011)(31686004)(16576012)(36756003)(31696002)(6916009)(4326008)(6486002)(2906002)(26005)(186003)(38100700002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 65ea45ef-77b6-41d1-8b2a-08d90423003e
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 17:37:42.5940
 (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: PrWcGGHHPSj83H4+KUi6jNgQt5ZZaw/VgTIOamqCSeB4PCXrBHzetMkL9CDlPIRDwFGtymqj3IMf1vQcI/H1ARvCTUGWmAx45+slV/G18jo=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3862
X-OriginatorOrg: citrix.com

On 19/04/2021 17:00, Jan Beulich wrote:
> On 19.04.2021 17:57, Andrew Cooper wrote:
>> On 19/04/2021 16:55, Jan Beulich wrote:
>>> On 19.04.2021 16:45, Andrew Cooper wrote:
>>>> Factor out a compat boolean to remove the lfence overhead from multipl=
e
>>>> is_pv_32bit_domain() calls.
>>>>
>>>> For a compat guest, the upper 32 bits of rdx are zero, so there is no =
need to
>>>> have any conditional logic at all when mapping the start info page.
>>> Iirc the contents of the upper halves hold unspecified contents after
>>> a switch from compat to 64-bit mode. Therefore only with this part of
>>> the change dropped ...
>> But we're shim, so will never ever mix compat and non-compat guests.
> That's not the point: A compat guest will still cause the CPU to
> transition back and forth between 64-bit and compat modes. It is
> this transitioning which leaves the upper halves of all GPRs in
> undefined state (even if in reality a CPU would likely need to go
> through extra hoops to prevent them from being zero if they were
> written to in compat mode).

Hmm.=C2=A0 That's awkward.

So real behaviour (I've checked with some contacts) is that upper bits
are preserved until the next write to the register, after which the
upper bits are zeroed.

I wonder whether I'll have any luck formally asking AMD and Intel for a
tweak to this effect in the manuals.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 17:41:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 17:41:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113966.217111 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYuNY-0006pi-1B; Tue, 20 Apr 2021 17:41:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113966.217111; Tue, 20 Apr 2021 17: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 1lYuNX-0006pb-UE; Tue, 20 Apr 2021 17:41:39 +0000
Received: by outflank-mailman (input) for mailman id 113966;
 Tue, 20 Apr 2021 17:41:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NaoY=JR=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYuNX-0006pW-BW
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 17:41:39 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6fc69427-8ea6-4997-9185-eba36c67290c;
 Tue, 20 Apr 2021 17:41: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: 6fc69427-8ea6-4997-9185-eba36c67290c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618940498;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=q5uyq9I9RXtPb4NM4q7ITiFLsZVSwuRIAlxVd5e6Jjg=;
  b=A2MMKw/juuD2DbIvec2ElUrH+MYKTip4ygQWWu5dMsnZG8oabRSZEoc3
   OqbixB2O/cr7D7tqZcYlrT3CQQOi5y5vrjnCj3ksRzwxuhOpF7CWSxLkh
   9sxPiH8eLTD7WjXc1T90kMIt0z1zmKWTnfZqDy0lzy2eBMPAvPVkaSY+h
   k=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: iWyu2oC31fXjV2yajVp4uFhM6DHO70oy3AsCk3j88mzQXjV8uz3KTlixV3CM8ad8mMd+oSS7WE
 biEQLDWIUVS+zmTwc0NUYz32vD7hWGOb7WXchSn6LGcjg8DYl6FsmTvRnBc1k082sS0S4XEBHB
 xxCxDjqXQ6NjYT+8DYhMW4TWiiPrCJxj+yh7vv9ltja1cg7ms3pJ+CemvbTfPnz9N508tDSWsj
 kw4+obTzVPK3L2XDwidpV4tn3w+hzt7IIvo+Z3zNkqmReEqoWLZmFDceilLPZ5BFsyH+YrFaBI
 FFM=
X-SBRS: 5.1
X-MesageID: 41843399
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:v9Zi4qlPQRPwOBDlDxCFe1oKDcPpDfLK3DAbvn1ZSRFFG/Gwve
 rGppUm/DXzjyscX2xlpMuJP7OOTWiZ2Zl+54QQOrnKZniBhEKDKoZ+4Yz+hwDxAiGWzJ876Y
 5Me7VzYeeAbmRSot395GCDfOoI5Pmi3OSWifzFz3FrJDsaD51IywtiEA6UHglXaWB9dPgEPa
 GR7MZGuDasEE5/Bq/QaxU4dtPOusHRk9beaQMGbiRXkTWmty+i67LxDnGjvis2bjUn+9kf2F
 mAtwT446m52svLryPh6w==
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41843399"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH v2] x86/shim: Simplify compat handling in write_start_info()
Date: Tue, 20 Apr 2021 18:41:18 +0100
Message-ID: <20210420174118.2731-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Factor out a compat boolean to remove the lfence overhead from multiple
is_pv_32bit_domain() calls.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

v2:
 * Reinstate the conditional for the start info pointer, in case Intel/AMD
   can't be persuaded to adjust the architectural guarentees for upper bits in
   compatibility mode transitions.
---
 xen/arch/x86/pv/shim.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/pv/shim.c b/xen/arch/x86/pv/shim.c
index d16c0048c0..4c6f442274 100644
--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -280,12 +280,12 @@ void __init pv_shim_setup_dom(struct domain *d, l4_pgentry_t *l4start,
 static void write_start_info(struct domain *d)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
-    start_info_t *si = map_domain_page(_mfn(is_pv_32bit_domain(d) ? regs->edx
-                                                                  : regs->rdx));
+    bool compat = is_pv_32bit_domain(d);
+    start_info_t *si = map_domain_page(_mfn(compat ? regs->edx : regs->rdx));
     uint64_t param;
 
     snprintf(si->magic, sizeof(si->magic), "xen-3.0-x86_%s",
-             is_pv_32bit_domain(d) ? "32p" : "64");
+             compat ? "32p" : "64");
     si->nr_pages = domain_tot_pages(d);
     si->shared_info = virt_to_maddr(d->shared_info);
     si->flags = 0;
@@ -300,7 +300,7 @@ static void write_start_info(struct domain *d)
                                           &si->console.domU.mfn) )
         BUG();
 
-    if ( is_pv_32bit_domain(d) )
+    if ( compat )
         xlat_start_info(si, XLAT_start_info_console_domU);
 
     unmap_domain_page(si);
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 18:05:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 18:05:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113976.217129 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYukX-0000SJ-28; Tue, 20 Apr 2021 18:05:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113976.217129; Tue, 20 Apr 2021 18: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 1lYukW-0000SC-V4; Tue, 20 Apr 2021 18:05:24 +0000
Received: by outflank-mailman (input) for mailman id 113976;
 Tue, 20 Apr 2021 18:05:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NaoY=JR=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lYukV-0000S7-GJ
 for xen-devel@lists.xen.org; Tue, 20 Apr 2021 18:05:23 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1aa54530-4ba5-49eb-86e3-e17835d99aa7;
 Tue, 20 Apr 2021 18:05: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: 1aa54530-4ba5-49eb-86e3-e17835d99aa7
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618941922;
  h=to:references:from:subject:message-id:date:in-reply-to:
   content-transfer-encoding:mime-version;
  bh=gOWhaoJ/eSrdy0fFm6nFbFTLZneW09jRZhlTkuUCick=;
  b=ie/6liF7zR01FkYCfEs8U87vFHWAgv+P+CDAG1w4bDbJw1leXH0V8xPX
   FnOak6QAa59kp77TPbbOO17p2UKIO7jRELrz4ZxABfbxR08KpfEDUJbSw
   3Cg1h5qSVJNcp+xvXb3bZbTUbLpyJspLNSE0L+gPQipvEQL19+dLaCWGU
   U=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Eq7pJjeEzyKPFW5l5j5GdXVRvbTEIZurdY1berH4zUAutWtTVR3z85LfwQGDaBeQwJ90rf8oM9
 iakrHZp7cqD8Z9v2csgBhdnGAJzNma4x5wg4l2jJ99oPRaXXxsodYGO3CZHUnoJclYl0Mabef/
 zBVUy5Lfw8aKMDEjjxqyixr8WPERFXcI7vGEkKsuolczDjt9rp2egGTLkjtGY7h7cTXolTcK18
 jx4l0hw6lQbZGaC/XskGgDHQxlIajQh0pyiv1vPpC1QxkPxEiEQJwdv0uxucFhSKAaR1p31Ayh
 BxY=
X-SBRS: 5.2
X-MesageID: 41846309
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:BBGVEaonKD5p7BcdRBi1ZWgaV5tvK9V00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQU3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzI9g/I
 9aWexFBNX0ZGIVse/T6gO1Cstl5dGB/ryhi+u29QYRcShBQchbnmBEIyycFVB7QxQDIJI/Go
 aV6MYvnUvdRV08aMOnCn4ZG9XSvtGjruOoXTcqDwMqgTP+9g+Ax6X9F3Gjr3Ijehdu5Ztnzm
 TfiQz+4cyYwr+G4zvRzXXa4ZgTuPaJ8Ko4OOW2hsIYKirhh2+TDewLMdDv00FX0YOSwW0njc
 XWpFMYN9lzgkmhIl2dmwfn2AXrzV8Vmhnf4GKYmnfqrIjYQz83GqN69PpkWybZ8EYpsZVA1r
 tK1QuixuNqJC7H9R6Ng+TgZlVPrA6ZsHAimekcgzh0So0FcoJcqoQZ4Qd8DIoANDiS0vFnLM
 BeSOXnoNpGe1KTaH7U+kN1xsa3Y3g1FhCaBmAfp82u1SRMlnwR9TpZ+OUv2lM7sL4tQZhN4O
 rJdo5ykqtVc8MQZaVhQMAMXNWwEW6IZR7XKmqdLRDGGcg8SjHwgq+yxI9wyPCheZQOwpd3so
 /GSklkuWk7fF+rBtaJ2JFN7xDRUGSwVTng0ahllt1Ek4y5YICuHTyISVgoncflie4YGNfnV/
 G6P48TA/KLFxqrJa95mynFH7VCI3gXV8MY/vwhXUiVn87NIor28ujScPPZIqvxAS8pM1mPRU
 crbXzWHoFt/0qrUnj3jFz6QHX2YHHy+pp2Dezd5OgcyI8EM4VWqQgLgVGl5sWGQAcy8JAeTQ
 9bGvfKg6m7rW658SLj9GNyICdQCU5T/fH9SX9QvBQLNEn1aL4HvN2adQlprT26Dy46a/mTPB
 9Uplxx967yEoeZwjo6Dcm7dkiAiWEImX6MR5AAu6GK6Mv/YKkkBpI+VKEZL3STKzVF3SJR7E
 ZKckstW1LWHDKGs9TbsLUkQMXkM+RarCjuC8hOsn7bvVibvqgUNwUmdg/ra+C4xSsNZx4RvF
 1+9K8ZjtO76GuSAFp6usoXdHliAV7nWo5uPUC+SqsRoZzQRCRMJF363gCyulUIVESvy2E7ol
 bAAESvCKn2K1JAp3FV1bvr+ltodmObO1l9cGx+rJcVLxW3hl9jleCMfaa9yG2Xdx8LxfwcKi
 jMZX8ILhpp3M3f7m/ZpB+SUXEnzI4pJOrTEfAqdKzSwGqkLOSz5Oo7Nu4R+JZuL9b1tOAXFe
 qZZg+ONTv9T+ckwRacqHpgOC56rhAf4LnV8Qyg6Gizx3gkB/XOZFxgWrEAOtmZq3H+WOzg6u
 QOsfsl+e+rdmnhYN+Pzq/aKzZFNxPIuGazC+Uls4pds64+vKZ6dqOrHQfgxTVCxlEzPc30nE
 QRTOBw6LXMPYJmZIgJdzlY8kBslNOUMUMtuACzAuJWRyBfs1bLe9eSp7bYo7smBUOM4BH9Pl
 SS6CVR9fbIVSnr789TN4sgZWBNLEQs4nVr++2PM5DKAAKxbudZ4R60NGS+fLI1ctnzJZwA6h
 Jhp9eGkO+ce3CmhETevT5nLrlP9GjiS8WoGw6IEfNJ9dv/OVnkuNre3OejyDPsDT28YAAEgI
 cAc0oaZMFKkCMjg406yTLacN2/nms1119FpSh6nVvs0JW86GjVHUtaIRTU668mLAV7IzyNl4
 DZ6uCW23T2/Shd1ZTCHElWeMtSG9J4dPmCEw5+bc4KvLCp+KIzgiNMJBc2ZlRM+gzA4w==
X-IronPort-AV: E=Sophos;i="5.82,237,1613451600"; 
   d="scan'208";a="41846309"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GofzJewmQR1qXiUrI7fyWalv0LNYMMegnGiPdedfANK36Q/13huPT6m3RHdkXp5buoZDxEZnGlFYQKKwkA5RlNhwZ11wlEk/mZ8AZPuYo7cK2jNufSy3OrwfhuPq39jaktlEdHtgBcePtO1rMH3wPCesICNpH1Owq2D1BTb4sRPY20BYpOcKx7lNk3OFvBy+3evmoByS87Axlr9VKcPcquRTy18DiMWqafz249rfzt8lLEWI+YOYezdEH77acerL9MOMwM5i5RzpgeJLZ6yx99lYyjAR4AvCWZ4VB5bR0D2A4f/06JsyN81C4fyVILNDLy0dN2PGKEy8A7mVwh1Wow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gOWhaoJ/eSrdy0fFm6nFbFTLZneW09jRZhlTkuUCick=;
 b=TVZh9FoUoI8ajzvlF9BCWSW604FOVFU4l+k3nbL/zD++Ozv8nxoerN6ct8kkH+jlLNVCcaM1Bc/cki/8yz68gHbw8ivt687ZEODfs0zkk08weYy7mQuu8qMeu5x14zrnfzSAYppHnHdjMxcmgwUBl0clS1jCz0awlayRNs8ZtDEwPKefZtM1lwC5BAb+Sr2y5CsaSCOodoaqxzkJugdO9WvbBuczXYMb2yE3c9TJVrEROLAXjSAO4Bf7JuYaqUezCpNDqolkp7O6+IMaDRuGr+F1FcM++i27EPsl26aekDZsXERaOGaVq9GQW/kh1HTNNcT+fH4VjVYD5q/Z/bRB8w==
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=gOWhaoJ/eSrdy0fFm6nFbFTLZneW09jRZhlTkuUCick=;
 b=EK8/T6To3SSucHXtaGe+Be7IZWK3GdH+K49VkUU4srtSQ0/EDoPvJ54IMX8QTxcXLhtUfdwWtM77IfFq7coRsjGfvAM64DJAiE78NB/F6UyRIXE4fynWar1KIHq3AWvIqUkkciQxo9goQ8BQXXJ7QybVNREKTY4rRuq0U8mmJA4=
To: =?UTF-8?Q?Charles_Gon=c3=a7alves?= <charles.fg@gmail.com>,
	<xen-devel@lists.xen.org>
References: <CAAQRGoC7P0yg-JoH4dpxTj13=D_6F9e2kjXuG5WWdqAF8k8KxA@mail.gmail.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: Writing to arbritary cannonical addresses
Message-ID: <78a256a8-b2ad-8a67-9b06-afbe2b11bd04@citrix.com>
Date: Tue, 20 Apr 2021 19:05:13 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <CAAQRGoC7P0yg-JoH4dpxTj13=D_6F9e2kjXuG5WWdqAF8k8KxA@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LNXP265CA0022.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:5e::34) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7f4450e9-050b-4cac-d299-08d90426db86
X-MS-TrafficTypeDiagnostic: BYAPR03MB4869:
X-Microsoft-Antispam-PRVS: <BYAPR03MB486989FAC9213B9B0F7CB8E6BA489@BYAPR03MB4869.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: EwIMg3axVDG4zI8EiLb/v03ABerKEBWm1VPfeSfHqb27n0fQ9SwJZrXP8/xbFl6w4R5l9ki7DJlEV9m1JX9l5sQ79dXgH9OpJS/qg+J3io9wObuhPYbPjFtSKGQUqPYmEvmrRsdy+bFarxyhHmG9gEYxNXyGqPCL8Oi7V3IMz0pCajhTpLWmwwCn4W6V0GnRZTc7DDjTmoxqU3++gGAFOla7hxI2Wp7g75jIFfa1Hmk0qlT6Lbt0Xi5jg6tW2lJeY6bpurKkZggc+Mq4sdj6luU7oQmt5sISUrm5k5873W3RKWK9zl4smZr+khgpGc+9i/fAR9IYEwbqMP6Zdy2JQa8juOvKYTi0i1IW3oGrdkdNPQEH023a9SjYMNsbV688osILAA6CPzdWjCBx+8JdHV4K7mKq1fLJ10XW7rZrpEmeSSggxAkyPbywi7h1KGea2VtY3kjm/T0w5ArUK87tC12ymgmaz+deNRzeZ5+x47nKMu6xMkXWsTlm3s8wlHMVWCkyXRrwL9oFW4++x2iWHyn01Kl1V8MMZtrlZJdaz+cM108wT3IIxrUxGc3/nux7MVlSOSsQjarBIGXde92scUSr+w/yBAI3w/hjvpy0o3pxiZu16dGlZ3N8iCUMgNbia4gHy8Hc6l4xMhXau1SQmK4WFxJquXGFUXaeF+0k2YjV0p1wSW4Ci3h2ZaGMtxO6
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(396003)(39840400004)(346002)(366004)(2616005)(38100700002)(6666004)(26005)(66476007)(66946007)(31686004)(956004)(8676002)(31696002)(86362001)(5660300002)(8936002)(36756003)(16526019)(53546011)(2906002)(316002)(16576012)(6486002)(478600001)(83380400001)(66556008)(186003)(66574015)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/Oi09wG?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 7f4450e9-050b-4cac-d299-08d90426db86
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 18:05:19.0348
 (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: dot5b5MYtLNEFOiWyYcDjF7HLUwahyIpi2o95GlJYNqbo2CAMBp5ZYe/E/BNn8B25qKMuywbB+XwkzxXYqbczsVxXNQHUGc+PKaujMNl7ls=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4869
X-OriginatorOrg: citrix.com

On 20/04/2021 17:13, Charles Gon=C3=A7alves wrote:
> Hello Guys,
>
> I'm trying to reproduce old exploit behaviors in a simplistic way:=C2=A0
> create an hypercall to write a buffer to a specific MFN.=C2=A0
>
> At first, I thought that updating an l1 page in a valid VA in guest
> kernel space would do=C2=A0the trick.=C2=A0
> But for addresses outside the=C2=A0 Guest-defined use (0x0000000000000000=
 -
> 0x00007fffffffffff ) is a no=C2=A0go!=C2=A0
> I get a page fault with=C2=A0 'reserved bit in page table' warning messag=
e.
>
> Now I'm trying to write to the address inside the hypervisor code, but
> not sure how to do it.=C2=A0=C2=A0
>
> Any comments or tips on this?

So you're looking to add a hypercall to make arbitrary unaudited changes
to arbitrary memory, to simulate past security issues?

If you're seeing "Reserved bit in page table" then you've managed to
corrupt a pagetable entry somehow.=C2=A0 Xen doesn't write any reserved bit=
s
(which it doesn't know how to interpret).

I'm afraid that if you want any further help with this specific failure,
you're going to have to post your changes to Xen somewhere.=C2=A0 pastebin,
or a pointer to a git branch, or whatever, but my divination skills
aren't great...

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 20 19:39:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 19:39:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.113994.217150 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYwDB-0000i1-4n; Tue, 20 Apr 2021 19:39:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 113994.217150; Tue, 20 Apr 2021 19:39: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 1lYwDB-0000hu-1V; Tue, 20 Apr 2021 19:39:05 +0000
Received: by outflank-mailman (input) for mailman id 113994;
 Tue, 20 Apr 2021 19:39:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7cv+=JR=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lYwD9-0000hp-As
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 19:39:03 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e26e7c35-f756-4a24-838e-6e57a67b856b;
 Tue, 20 Apr 2021 19:39:02 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id A0119613AE;
 Tue, 20 Apr 2021 19:39: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: e26e7c35-f756-4a24-838e-6e57a67b856b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618947541;
	bh=dfCmrXKDCB/H4hPheoAN7losTJVVWD/FesaE8crTBXo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=CmK1kQEJl1XXZeB6CxcB+fDXjOmq2Z7CWVt5/KKfui8PSbCh4PE6k5Eei0ZXWCWIT
	 xaD2WTCGJ2TKis5sJkwYq3TlfvWshGyfu8vjyDhVlc4eSk5t3NIQp3vZ++NKp4CZ0k
	 3sEE6neYuC7aB5A8YeiatdbNwwpZ8tCWDHBrGEoZhUyEmSDA8LNNqJrX6pkWFdjekr
	 GSvM6sk3Bc/DR/D/VfXeXPlArUTPaQnpurpwSVFHU0yOI6v1/ECw5NlSiZTm5HQtNV
	 JYT6CUKgT/fLLvrGVshi/Ol/VIVqlfzG6D9hUmoc795XZYzwZmWMXBBqOvt4fqjnNe
	 IRVMcGTo8yS9w==
Date: Tue, 20 Apr 2021 12:38:52 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Julien Grall <julien@xen.org>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, 
    ash.j.wilding@gmail.com, Julien Grall <jgrall@amazon.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    George Dunlap <george.dunlap@citrix.com>
Subject: Re: [PATCH] xen/arm: Ensure the vCPU context is seen before clearing
 the _VPF_down
In-Reply-To: <ebcaad65-a155-6979-9754-a8ef0ece3590@xen.org>
Message-ID: <alpine.DEB.2.21.2104201234060.26180@sstabellini-ThinkPad-T480s>
References: <20210226205158.20991-1-julien@xen.org> <alpine.DEB.2.21.2102261756280.2682@sstabellini-ThinkPad-T480s> <ca41bfbb-d942-d8fd-e96e-c464f6b3643f@xen.org> <alpine.DEB.2.21.2103191652450.439@sstabellini-ThinkPad-T480s> <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
 <alpine.DEB.2.21.2104131541370.4885@sstabellini-ThinkPad-T480s> <ebcaad65-a155-6979-9754-a8ef0ece3590@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 16 Apr 2021, Julien Grall wrote:
> Hi Stefano,
> 
> On 13/04/2021 23:43, Stefano Stabellini wrote:
> > On Sat, 20 Mar 2021, Julien Grall wrote:
> > > On 20/03/2021 00:01, Stefano Stabellini wrote:
> > > > On Sat, 27 Feb 2021, Julien Grall wrote:
> > > > > (+ Dario and George)
> > > > > 
> > > > > Hi Stefano,
> > > > > 
> > > > > I have added Dario and George to get some inputs from the scheduling
> > > > > part.
> > > > > 
> > > > > On 27/02/2021 01:58, Stefano Stabellini wrote:
> > > > > > On Fri, 26 Feb 2021, Julien Grall wrote:
> > > > > > > From: Julien Grall <jgrall@amazon.com>
> > > > > > > 
> > > > > > > A vCPU can get scheduled as soon as _VPF_down is cleared. As there
> > > > > > > is
> > > > > > > currently not ordering guarantee in arch_set_info_guest(), it may
> > > > > > > be
> > > > > > > possible that flag can be observed cleared before the new values
> > > > > > > of
> > > > > > > vCPU
> > > > > > > registers are observed.
> > > > > > > 
> > > > > > > Add an smp_mb() before the flag is cleared to prevent re-ordering.
> > > > > > > 
> > > > > > > Signed-off-by: Julien Grall <jgrall@amazon.com>
> > > > > > > 
> > > > > > > ---
> > > > > > > 
> > > > > > > Barriers should work in pair. However, I am not entirely sure
> > > > > > > whether
> > > > > > > to
> > > > > > > put the other half. Maybe at the beginning of context_switch_to()?
> > > > > > 
> > > > > > It should be right after VGCF_online is set or cleared, right?
> > > > > 
> > > > > vcpu_guest_context_t is variable allocated on the heap just for the
> > > > > purpose of
> > > > > this call. So an ordering with VGFC_online is not going to do
> > > > > anything.
> > > > > 
> > > > > > So it
> > > > > > would be:
> > > > > > 
> > > > > > xen/arch/arm/domctl.c:arch_get_info_guest
> > > > > > xen/arch/arm/vpsci.c:do_common_cpu_on
> > > > > > 
> > > > > > But I think it is impossible that either of them get called at the
> > > > > > same
> > > > > > time as arch_set_info_guest, which makes me wonder if we actually
> > > > > > need
> > > > > > the barrier...
> > > > > arch_get_info_guest() is called without the domain lock held and I
> > > > > can't
> > > > > see
> > > > > any other lock that could prevent it to be called in // of
> > > > > arch_set_info_guest().
> > > > > 
> > > > > So you could technically get corrupted information from
> > > > > XEN_DOMCTL_getvcpucontext. For this case, we would want a smp_wmb()
> > > > > before
> > > > > writing to v->is_initialised. The corresponding read barrier would be
> > > > > in
> > > > > vcpu_pause() -> vcpu_sleep_sync() -> sync_vcpu_execstate().
> > > > > 
> > > > > But this is not the issue I was originally trying to solve. Currently,
> > > > > do_common_cpu_on() will roughly do:
> > > > > 
> > > > >    1) domain_lock(d)
> > > > > 
> > > > >    2) v->arch.sctlr = ...
> > > > >       v->arch.ttbr0 = ...
> > > > > 
> > > > >    3) clear_bit(_VFP_down, &v->pause_flags);
> > > > > 
> > > > >    4) domain_unlock(d)
> > > > > 
> > > > >    5) vcpu_wake(v);
> > > > > 
> > > > > If we had only one pCPU on the system, then we would only wake the
> > > > > vCPU in
> > > > > step 5. We would be fine in this situation. But that's not the
> > > > > interesting
> > > > > case.
> > > > > 
> > > > > If you add a second pCPU in the story, it may be possible to have
> > > > > vcpu_wake()
> > > > > happening in // (see more below). As there is no memory barrier, step
> > > > > 3
> > > > > may be
> > > > > observed before 2. So, assuming the vcpu is runnable, we could start
> > > > > to
> > > > > schedule a vCPU before any update to the registers (step 2) are
> > > > > observed.
> > > > > 
> > > > > This means that when context_switch_to() is called, we may end up to
> > > > > restore
> > > > > some old values.
> > > > > 
> > > > > Now the question is can vcpu_wake() be called in // from another pCPU?
> > > > > AFAICT,
> > > > > it would be only called if a given flag in v->pause_flags is cleared
> > > > > (e.g.
> > > > > _VFP_blocked). But can we rely on that?
> > > > > 
> > > > > Even if we can rely on it, v->pause_flags has other flags in it. I
> > > > > couldn't
> > > > > rule out that _VPF_down cannot be set at the same time as the other
> > > > > _VPF_*.
> > > > > 
> > > > > Therefore, I think a barrier is necessary to ensure the ordering.
> > > > > 
> > > > > Do you agree with this analysis?
> > > >    Yes, I think this makes sense. The corresponding barrier in the
> > > > scheduling code would have to be after reading _VPF_down and before
> > > > reading v->arch.sctlr, etc.
> > > > 
> > > > 
> > > > > > > The issues described here is also quite theoritical because there
> > > > > > > are
> > > > > > > hundreds of instructions executed between the time a vCPU is seen
> > > > > > > runnable and scheduled. But better be safe than sorry :).
> > > > > > > ---
> > > > > > >     xen/arch/arm/domain.c | 7 +++++++
> > > > > > >     1 file changed, 7 insertions(+)
> > > > > > > 
> > > > > > > diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
> > > > > > > index bdd3d3e5b5d5..2b705e66be81 100644
> > > > > > > --- a/xen/arch/arm/domain.c
> > > > > > > +++ b/xen/arch/arm/domain.c
> > > > > > > @@ -914,7 +914,14 @@ int arch_set_info_guest(
> > > > > > >         v->is_initialised = 1;
> > > > > > >           if ( ctxt->flags & VGCF_online )
> > > > > > > +    {
> > > > > > > +        /*
> > > > > > > +         * The vCPU can be scheduled as soon as _VPF_down is
> > > > > > > cleared.
> > > > > > > +         * So clear the bit *after* the context was loaded.
> > > > > > > +         */
> > > > > > > +        smp_mb();
> > > > > 
> > > > >   From the discussion above, I would move this barrier before
> > > > > v->is_initialised.
> > > > > So we also take care of the issue with arch_get_info_guest().
> > > > > 
> > > > > This barrier also can be reduced to a smp_wmb() as we only expect an
> > > > > ordering
> > > > > between writes.
> > > > > 
> > > > > The barrier would be paired with the barrier in:
> > > > >      - sync_vcpu_execstate() in the case of
> > > > > arch_get_vcpu_info_guest().
> > > > >      - context_switch_to() in the case of scheduling (The exact
> > > > > barrier is
> > > > > TDB).
> > > > 
> > > > OK, this makes sense, but why before:
> > > > 
> > > >     v->is_initialised = 1;
> > > > 
> > > > instead of right after it? It is just v->pause_flags we care about,
> > > > right?
> > > 
> > > The issue I originally tried to address was a race with v->pause_flags.
> > > But I
> > > also discovered one with v->initialised while answering to your previous
> > > e-mail. This was only briefly mentioned so let me expand it.
> > > 
> > > A toolstack can take a snapshot of the vCPU context using
> > > XEN_DOMCTL_get_vcpucontext. The helper will bail out if v->is_initialized
> > > is
> > > 0.
> > > 
> > > If v->is_initialized is 1, it will temporarily pause the vCPU and then
> > > call
> > > arch_get_info_guest().
> > > 
> > > AFAICT, arch_get_info_guest() and arch_set_info_guest() (called from PSCI
> > > CPU
> > > on) can run concurrently.
> > > 
> > > If you put the barrier right after v->is_initialised, then a
> > > processor/compiler is allowed to re-order the write with what comes
> > > before.
> > > Therefore, the new value of v->is_initialised may be observed before
> > > v->arch.{sctlr, ttbr0,...}.
> > > 
> > > Hence, we need a barrier before setting v->is_initialized so the new value
> > > is
> > > observed *after* the changes to v->arch.{sctlr, ttbr0, ...) have been
> > > observed.
> > > 
> > > A single smp_wmb() barrier before v->is_initialized should be sufficient
> > > to
> > > cover the two problems discussed as I don't think we need to observe
> > > v->is_initialized *before* v->pause_flags.
> > 
> > I think your explanation is correct. However, don't we need a smp_rmb()
> > barrier after reading v->is_initialised in xen/common/domctl.c:do_domctl
> > ? That would be the barrier that pairs with smp_wmb in regards to
> > v->is_initialised.
> 
> There is already a smp_mb() in sync_vcpu_exec_state() which is called from
> vcpu_pause() -> vcpu_sleep_sync().

But that's too late, isn't? The v->is_initialized check is done before
the vcpu_pause() call. We might end up taking the wrong code path:

https://gitlab.com/xen-project/xen/-/blob/staging/xen/common/domctl.c#L587
https://gitlab.com/xen-project/xen/-/blob/staging/xen/common/domctl.c#L598



> I don't think we can ever remove the memory barrier in sync_vcpu_exec_state()
> because the vCPU paused may have run (or initialized) on a different pCPU. So
> I would like to rely on the barrier rather than adding an extra one (even
> thought it is not a fast path).
> 
> I am thinking to add a comment on top of vcpu_pause() to clarify that after
> the call, the vCPU context will be observed without extra synchronization
> required.

Given that an if.. goto is involved, even if both code paths lead to
good results, I think it would be best to have the smp_rmb() barrier
above after the first v->is_initialised read to make sure we take the
right path. Instead of having to make sure that even the "wrong" path
behaves correctly.


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 20:48:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 20:48:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114003.217166 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYxHi-0006we-FN; Tue, 20 Apr 2021 20:47:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114003.217166; Tue, 20 Apr 2021 20:47: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 1lYxHi-0006wX-CG; Tue, 20 Apr 2021 20:47:50 +0000
Received: by outflank-mailman (input) for mailman id 114003;
 Tue, 20 Apr 2021 20:47: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 1lYxHg-0006wS-A1
 for xen-devel@lists.xenproject.org; Tue, 20 Apr 2021 20:47: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 1lYxHc-0001Fk-5b; Tue, 20 Apr 2021 20:47:44 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lYxHb-0001Mv-Qr; Tue, 20 Apr 2021 20: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=062wf0jX2s7gBmfPJWrxKqZ4yMQBlrsJ/ydjSMaRZ7I=; b=T/ptf+MG92mRSTz8tijz8xfeMD
	ZKVFFZSG+3A8TuiWUBsBklyU/TEnhKzmcKLlK5ZDJX064rs1uCoSe4L3eAQ6ozCRMOmlngS5CcLR4
	HbKm/Zz44XVxM5lZjMc83fqR2CHlJ3ta8D6cbwW5wwtDeCzE1LZ5kykthX57qDKLpCyE=;
Subject: Re: [PATCH] xen/arm: Ensure the vCPU context is seen before clearing
 the _VPF_down
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 ash.j.wilding@gmail.com, Julien Grall <jgrall@amazon.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Dario Faggioli <dfaggioli@suse.com>, George Dunlap
 <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <20210226205158.20991-1-julien@xen.org>
 <alpine.DEB.2.21.2102261756280.2682@sstabellini-ThinkPad-T480s>
 <ca41bfbb-d942-d8fd-e96e-c464f6b3643f@xen.org>
 <alpine.DEB.2.21.2103191652450.439@sstabellini-ThinkPad-T480s>
 <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
 <alpine.DEB.2.21.2104131541370.4885@sstabellini-ThinkPad-T480s>
 <ebcaad65-a155-6979-9754-a8ef0ece3590@xen.org>
 <alpine.DEB.2.21.2104201234060.26180@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <37631386-a53f-d99d-d71b-0b871b5dd9b0@xen.org>
Date: Tue, 20 Apr 2021 21:47:41 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104201234060.26180@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

(+ Andrew and Jan)

Hi Stefano,

On 20/04/2021 20:38, Stefano Stabellini wrote:
> On Fri, 16 Apr 2021, Julien Grall wrote:
>>> I think your explanation is correct. However, don't we need a smp_rmb()
>>> barrier after reading v->is_initialised in xen/common/domctl.c:do_domctl
>>> ? That would be the barrier that pairs with smp_wmb in regards to
>>> v->is_initialised.
>>
>> There is already a smp_mb() in sync_vcpu_exec_state() which is called from
>> vcpu_pause() -> vcpu_sleep_sync().
> 
> But that's too late, isn't? The v->is_initialized check is done before
> the vcpu_pause() call. We might end up taking the wrong code path:
> 
> https://gitlab.com/xen-project/xen/-/blob/staging/xen/common/domctl.c#L587
> https://gitlab.com/xen-project/xen/-/blob/staging/xen/common/domctl.c#L598

I am a bit confused what you mean by "wrong path" here. There is no 
timing guarantee with a memory barrier. What the barrier will guarantee 
you is v->is_initialized will be read *before* anything after the barrier.

Are you worried that some variables in vcpu_pause() may be read before 
v->is_initialized?

> 
>> I don't think we can ever remove the memory barrier in sync_vcpu_exec_state()
>> because the vCPU paused may have run (or initialized) on a different pCPU. So
>> I would like to rely on the barrier rather than adding an extra one (even
>> thought it is not a fast path).
>>
>> I am thinking to add a comment on top of vcpu_pause() to clarify that after
>> the call, the vCPU context will be observed without extra synchronization
>> required.
> 
> Given that an if.. goto is involved, even if both code paths lead to
> good results, I think it would be best to have the smp_rmb() barrier
> above after the first v->is_initialised read to make sure we take the
> right path.

I don't understand what you are referring by "wrong" and "right" path. 
The processor will always execute/commit the path based on the value of 
v->is_initialized. What may happen is the processor may start to 
speculate the wrong path and then backtrack if it discovers the value is 
not the expected one. But, AFAIK, smp_rmb() is not going to protect you 
against speculation... smp_rmb() is only going to enforce a memory 
ordering between read.

> Instead of having to make sure that even the "wrong" path
> behaves correctly.
Just for clarification, I think you meant writing the following code:

if ( !v->is_initialized )
   goto getvcpucontext_out;

smp_rmb();

...

vcpu_pause();

AFAICT, there is nothing in the implementation of 
XEN_DOMCTL_getvcpucontext that justify the extra barrier (assuming we 
consider vcpu_pause() as a full memory barrier).

 From your e-mail, I also could not infer what is your exact concern 
regarding the memory ordering. If you have something in mind, then would 
you mind to provide a sketch showing what could go wrong?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 22:01:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 22:01:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114015.217183 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYyQk-0005XY-H7; Tue, 20 Apr 2021 22:01:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114015.217183; Tue, 20 Apr 2021 22: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 1lYyQk-0005XR-EA; Tue, 20 Apr 2021 22:01:14 +0000
Received: by outflank-mailman (input) for mailman id 114015;
 Tue, 20 Apr 2021 22:01:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hNLD=JR=gmail.com=charles.fg@srs-us1.protection.inumbo.net>)
 id 1lYyQj-0005XM-51
 for xen-devel@lists.xen.org; Tue, 20 Apr 2021 22:01:13 +0000
Received: from mail-wr1-x42a.google.com (unknown [2a00:1450:4864:20::42a])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b5bceb01-2d01-49c8-90b0-64a4382ed060;
 Tue, 20 Apr 2021 22:01:11 +0000 (UTC)
Received: by mail-wr1-x42a.google.com with SMTP id j5so38284034wrn.4
 for <xen-devel@lists.xen.org>; Tue, 20 Apr 2021 15:01: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: b5bceb01-2d01-49c8-90b0-64a4382ed060
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=qMWuCRxCPdDbMoTHGS+ZZ9WANgIZAvccI5Oo34wCqps=;
        b=fkyDKVz2mL2qY7/mRKUjIjbpVqOIyVG1YE+nTUR7O0zeFur+6awhfNmxJ5i/SeA/5M
         BPM7RDueOAAri7PFt3M/05YyJgJwJ3qL5BSQQH3zuRf89S99X1ddplVc6Vl1blytTDKm
         i4SSsnnMwjvcL5NFzEQA7xnsTQ/CDbvY+bm0YABeaTnnU+hkC55+RRfkJ2Evc/5K5Yig
         Kf/CD+78IoN+tPaCuO7eOpsYqyltx4EMa3VadFOwhqp2nfZ+r0Y50TEH2CnSFVhooJ3G
         xq9jwK2bnT6u0fKjDUe8J+VgvTbhJQ5dlUzIylgkdeWHZkNaW5IQvMZe/uTucZILmcOh
         id7w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=qMWuCRxCPdDbMoTHGS+ZZ9WANgIZAvccI5Oo34wCqps=;
        b=np/UZmypw8j8tgbPwe32DFaz4EhCO+Jvm38UZ6elb2DQsfV6e8ZQQUN1noDHXUuZv/
         VAMBm+cq1Z3rYtUVVLK5HcmzaVCBMLoXrPPEtIYTX5AemyPffQp8PqpnZgVx3bS4hzvI
         GYCpbvdiym1CDsNHgf11W96LC1YG8+kHOB9vFknfhIO9bQImO6h3IA0xIHoMAfmYFFdE
         epqf+L2vagvbfXssmsXmVj8nlm9CHfoPNq6/MWpGm8GswQaXQ5kfuMZcuavpZ8UHFZTo
         cStImyMWBzIqV8rZASjml8BlQtoQ7dNoMJt7iWQQMUk1vYPRxiKpgaZ0mgT8SHfsxu1t
         ACnQ==
X-Gm-Message-State: AOAM533WzgXp1TyOdXaVj/c29Jurp/BV59X+h4skMronTm/Fjc1br3lV
	QGQh903li4OfJtvsPViPP16LlOSyh/d+tG05rZo=
X-Google-Smtp-Source: ABdhPJwYQbcSJuYCIqOrj8CRfFk75AIw7i4zf9hzlUUeX8EdivISApSFHj3cosnM60yeWcIJVRes/Rp3dbUow7mlQ8E=
X-Received: by 2002:a5d:6852:: with SMTP id o18mr22581246wrw.426.1618956070837;
 Tue, 20 Apr 2021 15:01:10 -0700 (PDT)
MIME-Version: 1.0
References: <CAAQRGoC7P0yg-JoH4dpxTj13=D_6F9e2kjXuG5WWdqAF8k8KxA@mail.gmail.com>
 <78a256a8-b2ad-8a67-9b06-afbe2b11bd04@citrix.com>
In-Reply-To: <78a256a8-b2ad-8a67-9b06-afbe2b11bd04@citrix.com>
From: =?UTF-8?Q?Charles_Gon=C3=A7alves?= <charles.fg@gmail.com>
Date: Tue, 20 Apr 2021 23:00:35 +0100
Message-ID: <CAAQRGoD-VxeKWFcbseAPmXUstQthORJgM6kQ95uWSWU83CjDQw@mail.gmail.com>
Subject: Re: Writing to arbritary cannonical addresses
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="0000000000008260d005c06e95d8"

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

Thanks again Andrew, ...

My initial idea was to allocate a frame on kernel space and change the
update_va_mapping to "forcibly" write the desired MFN as the l1 page table
and return the va.

You can see what I did here:
https://github.com/charlesfg/xen/blob/5755f0752bd50891942768bf99898bbc8f7ea=
c82/xen/arch/x86/mm.c#L4539

Basically, I assume the fast path and for the UPDATE_ENTRY
https://github.com/charlesfg/xen/blob/5755f0752bd50891942768bf99898bbc8f7ea=
c82/xen/arch/x86/mm.c#L2184


Any help on this would be greatly appreciated  :)


Atenciosamente,
*Charles Ferreira Gon=C3=A7alves *




On Tue, Apr 20, 2021 at 7:05 PM Andrew Cooper <andrew.cooper3@citrix.com>
wrote:

> On 20/04/2021 17:13, Charles Gon=C3=A7alves wrote:
> > Hello Guys,
> >
> > I'm trying to reproduce old exploit behaviors in a simplistic way:
> > create an hypercall to write a buffer to a specific MFN.
> >
> > At first, I thought that updating an l1 page in a valid VA in guest
> > kernel space would do the trick.
> > But for addresses outside the  Guest-defined use (0x0000000000000000 -
> > 0x00007fffffffffff ) is a no go!
> > I get a page fault with  'reserved bit in page table' warning message.
> >
> > Now I'm trying to write to the address inside the hypervisor code, but
> > not sure how to do it.
> >
> > Any comments or tips on this?
>
> So you're looking to add a hypercall to make arbitrary unaudited changes
> to arbitrary memory, to simulate past security issues?
>
> If you're seeing "Reserved bit in page table" then you've managed to
> corrupt a pagetable entry somehow.  Xen doesn't write any reserved bits
> (which it doesn't know how to interpret).
>
> I'm afraid that if you want any further help with this specific failure,
> you're going to have to post your changes to Xen somewhere.  pastebin,
> or a pointer to a git branch, or whatever, but my divination skills
> aren't great...
>
> ~Andrew
>
>

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

<div dir=3D"ltr">Thanks again Andrew, ...<div><br></div><div>My initial ide=
a was to allocate a frame on kernel space and change the update_va_mapping =
to &quot;forcibly&quot; write the desired MFN as the l1 page table and retu=
rn the va.=C2=A0</div><div><br></div><div>You can see what I did here:</div=
><div><a href=3D"https://github.com/charlesfg/xen/blob/5755f0752bd508919427=
68bf99898bbc8f7eac82/xen/arch/x86/mm.c#L4539">https://github.com/charlesfg/=
xen/blob/5755f0752bd50891942768bf99898bbc8f7eac82/xen/arch/x86/mm.c#L4539</=
a></div><div><br></div><div>Basically, I assume the fast path and for the U=
PDATE_ENTRY</div><div><a href=3D"https://github.com/charlesfg/xen/blob/5755=
f0752bd50891942768bf99898bbc8f7eac82/xen/arch/x86/mm.c#L2184">https://githu=
b.com/charlesfg/xen/blob/5755f0752bd50891942768bf99898bbc8f7eac82/xen/arch/=
x86/mm.c#L2184</a>=C2=A0</div><div><br></div><div>Any help on this would be=
 greatly appreciated=C2=A0 :)</div><div><br></div><div>=C2=A0 =C2=A0<br><di=
v><div dir=3D"ltr" class=3D"gmail_signature" data-smartmail=3D"gmail_signat=
ure"><div dir=3D"ltr"><div>Atenciosamente,</div><b>Charles Ferreira Gon=C3=
=A7alves </b><br><font color=3D"#666666"><br></font><font color=3D"#666666"=
 size=3D"1"><br></font></div></div></div><br></div></div><br><div class=3D"=
gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Apr 20, 2021 at =
7:05 PM Andrew Cooper &lt;<a href=3D"mailto:andrew.cooper3@citrix.com">andr=
ew.cooper3@citrix.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_qu=
ote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,20=
4);padding-left:1ex">On 20/04/2021 17:13, Charles Gon=C3=A7alves wrote:<br>
&gt; Hello Guys,<br>
&gt;<br>
&gt; I&#39;m trying to reproduce old exploit behaviors in a simplistic way:=
=C2=A0<br>
&gt; create an hypercall to write a buffer to a specific MFN.=C2=A0<br>
&gt;<br>
&gt; At first, I thought that updating an l1 page in a valid VA in guest<br=
>
&gt; kernel space would do=C2=A0the trick.=C2=A0<br>
&gt; But for addresses outside the=C2=A0 Guest-defined use (0x0000000000000=
000 -<br>
&gt; 0x00007fffffffffff ) is a no=C2=A0go!=C2=A0<br>
&gt; I get a page fault with=C2=A0 &#39;reserved bit in page table&#39; war=
ning message.<br>
&gt;<br>
&gt; Now I&#39;m trying to write to the address inside the hypervisor code,=
 but<br>
&gt; not sure how to do it.=C2=A0=C2=A0<br>
&gt;<br>
&gt; Any comments or tips on this?<br>
<br>
So you&#39;re looking to add a hypercall to make arbitrary unaudited change=
s<br>
to arbitrary memory, to simulate past security issues?<br>
<br>
If you&#39;re seeing &quot;Reserved bit in page table&quot; then you&#39;ve=
 managed to<br>
corrupt a pagetable entry somehow.=C2=A0 Xen doesn&#39;t write any reserved=
 bits<br>
(which it doesn&#39;t know how to interpret).<br>
<br>
I&#39;m afraid that if you want any further help with this specific failure=
,<br>
you&#39;re going to have to post your changes to Xen somewhere.=C2=A0 paste=
bin,<br>
or a pointer to a git branch, or whatever, but my divination skills<br>
aren&#39;t great...<br>
<br>
~Andrew<br>
<br>
</blockquote></div>

--0000000000008260d005c06e95d8--


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 22:08:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 22:08:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114024.217196 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYyXo-0005o7-9l; Tue, 20 Apr 2021 22:08:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114024.217196; Tue, 20 Apr 2021 22:08: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 1lYyXo-0005o0-6p; Tue, 20 Apr 2021 22:08:32 +0000
Received: by outflank-mailman (input) for mailman id 114024;
 Tue, 20 Apr 2021 22:08: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 1lYyXm-0005ns-4e; Tue, 20 Apr 2021 22:08: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 1lYyXl-0002hu-Rc; Tue, 20 Apr 2021 22:08: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 1lYyXl-0001Vx-Gw; Tue, 20 Apr 2021 22:08:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYyXl-0003IM-GO; Tue, 20 Apr 2021 22:08: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=KXeFRilRpA5rKSvyQOtz8AoMEXkvrn8BVYmc1KKhRko=; b=1APDohxfhS9zMpw3pgkTa9kw5Q
	w7kRf6os5ua8GUqjCi2FkwfMHlLm8Rd/Z+6nXY66Od358pNSSW3F3wkDVnQkpjZq3jU1vIC9NRSF8
	qV9b6bgDZ5FfL0DA4Skevkdnmckmia+yiqTIcphzmR7A+ZMc9dDVMi7RkCPy5PAtzGGM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161317-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161317: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a8c532be6a44c7faa54ac777a717f4aa65e3a806
X-Osstest-Versions-That:
    xen=b5b93627dd1c398a90b832af765b4720fc71814e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 22:08:29 +0000

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

Failures :-/ but no regressions.

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 161296

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

version targeted for testing:
 xen                  a8c532be6a44c7faa54ac777a717f4aa65e3a806
baseline version:
 xen                  b5b93627dd1c398a90b832af765b4720fc71814e

Last test of basis   161296  2021-04-19 17:07:45 Z    1 days
Testing same since   161317  2021-04-20 08:13:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Tamas K Lengyel <tamas@tklengyel.com>
  Tim Deegan <tim@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                           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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   b5b93627dd..a8c532be6a  a8c532be6a44c7faa54ac777a717f4aa65e3a806 -> master


From xen-devel-bounces@lists.xenproject.org Tue Apr 20 23:18:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 20 Apr 2021 23:18:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114046.217227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lYzdJ-0003gT-Ul; Tue, 20 Apr 2021 23:18:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114046.217227; Tue, 20 Apr 2021 23:18: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 1lYzdJ-0003gM-Rj; Tue, 20 Apr 2021 23:18:17 +0000
Received: by outflank-mailman (input) for mailman id 114046;
 Tue, 20 Apr 2021 23:18: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 1lYzdI-0003gE-CF; Tue, 20 Apr 2021 23:18: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 1lYzdI-0003pi-1H; Tue, 20 Apr 2021 23:18: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 1lYzdH-0004Pq-QG; Tue, 20 Apr 2021 23:18:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lYzdH-00012V-Pn; Tue, 20 Apr 2021 23: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=iGEqOsUYkkzjXWyiSt/PDRM7SpGyNwE0nlaifPCWSlI=; b=etyvJ+9qkl8HbqPXbzpE5j04dD
	eWCdlXmMUVEwFw0Y5R0Iu0zoLg0fPd2itYFkPsQfqYLnBCtMLV0nFwql/oU9QL1JtSAEmXBhHR7bN
	AuxukztfpaslhGswazqTfNritBfKhp1Q10RgXkxdJYYZu/8Cm5/rxkDCJJjUDKlfzRDA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161338-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161338: 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=aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
X-Osstest-Versions-That:
    xen=9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 20 Apr 2021 23:18:15 +0000

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

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                  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
baseline version:
 xen                  9f6cd4983715cb31f0ea540e6bbb63f799a35d8a

Last test of basis   161332  2021-04-20 15:00:28 Z    0 days
Testing same since   161338  2021-04-20 20:01:32 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Wei Liu <wl@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
   9f6cd49837..aaa3eafb3b  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 00:38:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 00:38:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114061.217247 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ0t4-000366-8w; Wed, 21 Apr 2021 00:38:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114061.217247; Wed, 21 Apr 2021 00:38:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ0t4-00035z-65; Wed, 21 Apr 2021 00:38:38 +0000
Received: by outflank-mailman (input) for mailman id 114061;
 Wed, 21 Apr 2021 00:38:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=H1sd=JS=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lZ0t2-00035u-Ve
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 00:38:37 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 58e69274-60f2-4253-ac05-712b7cc1390d;
 Wed, 21 Apr 2021 00:38:36 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id DC1CD613F5;
 Wed, 21 Apr 2021 00:38: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: 58e69274-60f2-4253-ac05-712b7cc1390d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1618965513;
	bh=RmLqvu9tgob2Eh+IKRGLzjOvMGE6rKk/UB90gfOoPvM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Ux8yPz99HVVOPErlQ/9ves5Bl6Rz2UVqJOP5fysNtalFblzUBtsAJWNO1f2Bn9BHh
	 MS9dMtlGvQl6SafhYqJP6/2LtelVR+L5HXXP6rZe3j5duaG1dzk9yCPxCAlHcJev/b
	 ZtcWmqyWjWl9qLYEdSIGrhr2/EHt2JcbXOhCaBSeImpk8QLcG6Umhf+APXVDM3iY4N
	 XtzLvh2q2frtcqlp3rh4/dVImjhyv48XW2S2/JwLuc2Kgx/QfLfCPqBYl4jeyopvc3
	 uShyw1KKonMDf5AyEKoGy0QlNk2UeUIBgS9LCRhxfneT3fu5MD2MyGvxX+8zNp1giS
	 ByStZYeXvaVsA==
Date: Tue, 20 Apr 2021 17:38:31 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Julien Grall <julien@xen.org>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, 
    ash.j.wilding@gmail.com, Julien Grall <jgrall@amazon.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] xen/arm: Ensure the vCPU context is seen before clearing
 the _VPF_down
In-Reply-To: <37631386-a53f-d99d-d71b-0b871b5dd9b0@xen.org>
Message-ID: <alpine.DEB.2.21.2104201726061.26180@sstabellini-ThinkPad-T480s>
References: <20210226205158.20991-1-julien@xen.org> <alpine.DEB.2.21.2102261756280.2682@sstabellini-ThinkPad-T480s> <ca41bfbb-d942-d8fd-e96e-c464f6b3643f@xen.org> <alpine.DEB.2.21.2103191652450.439@sstabellini-ThinkPad-T480s> <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
 <alpine.DEB.2.21.2104131541370.4885@sstabellini-ThinkPad-T480s> <ebcaad65-a155-6979-9754-a8ef0ece3590@xen.org> <alpine.DEB.2.21.2104201234060.26180@sstabellini-ThinkPad-T480s> <37631386-a53f-d99d-d71b-0b871b5dd9b0@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 20 Apr 2021, Julien Grall wrote:
> (+ Andrew and Jan)
> 
> Hi Stefano,
> 
> On 20/04/2021 20:38, Stefano Stabellini wrote:
> > On Fri, 16 Apr 2021, Julien Grall wrote:
> > > > I think your explanation is correct. However, don't we need a smp_rmb()
> > > > barrier after reading v->is_initialised in xen/common/domctl.c:do_domctl
> > > > ? That would be the barrier that pairs with smp_wmb in regards to
> > > > v->is_initialised.
> > > 
> > > There is already a smp_mb() in sync_vcpu_exec_state() which is called from
> > > vcpu_pause() -> vcpu_sleep_sync().
> > 
> > But that's too late, isn't? The v->is_initialized check is done before
> > the vcpu_pause() call. We might end up taking the wrong code path:
> > 
> > https://gitlab.com/xen-project/xen/-/blob/staging/xen/common/domctl.c#L587
> > https://gitlab.com/xen-project/xen/-/blob/staging/xen/common/domctl.c#L598
> 
> I am a bit confused what you mean by "wrong path" here. There is no timing
> guarantee with a memory barrier. What the barrier will guarantee you is
> v->is_initialized will be read *before* anything after the barrier.
> 
> Are you worried that some variables in vcpu_pause() may be read before
> v->is_initialized?
> 
> > 
> > > I don't think we can ever remove the memory barrier in
> > > sync_vcpu_exec_state()
> > > because the vCPU paused may have run (or initialized) on a different pCPU.
> > > So
> > > I would like to rely on the barrier rather than adding an extra one (even
> > > thought it is not a fast path).
> > > 
> > > I am thinking to add a comment on top of vcpu_pause() to clarify that
> > > after
> > > the call, the vCPU context will be observed without extra synchronization
> > > required.
> > 
> > Given that an if.. goto is involved, even if both code paths lead to
> > good results, I think it would be best to have the smp_rmb() barrier
> > above after the first v->is_initialised read to make sure we take the
> > right path.
> 
> I don't understand what you are referring by "wrong" and "right" path. The
> processor will always execute/commit the path based on the value of
> v->is_initialized. What may happen is the processor may start to speculate the
> wrong path and then backtrack if it discovers the value is not the expected
> one. But, AFAIK, smp_rmb() is not going to protect you against speculation...
> smp_rmb() is only going to enforce a memory ordering between read.
> 
> > Instead of having to make sure that even the "wrong" path
> > behaves correctly.
> Just for clarification, I think you meant writing the following code:
> 
> if ( !v->is_initialized )
>   goto getvcpucontext_out;
> 
> smp_rmb();

No, sorry, I'll try to be clearer, see below


> ...
> 
> vcpu_pause();
> 
> AFAICT, there is nothing in the implementation of XEN_DOMCTL_getvcpucontext
> that justify the extra barrier (assuming we consider vcpu_pause() as a full
> memory barrier).
> 
> From your e-mail, I also could not infer what is your exact concern regarding
> the memory ordering. If you have something in mind, then would you mind to
> provide a sketch showing what could go wrong?

Let me start with what I had in mind:

initialized = v->is_initialized;
smp_rmb();
if ( !initialized )
  goto getvcpucontext_out;


Without smp_rmb there are no guarantees that we see an up-to-date value
of v->is_initialized, right? This READ of v->is_initialized is supposed
to pair with the WRITE in arch_set_info_guest.

Relying on the the barrier in vcpu_pause is OK only if is_initialised
was already read as "1".

I think it might be OK in this case, because probably nothing wrong
happens if we read the old value of v->is_initialized as "0" but it
doesn't seem to be a good idea. Theoretically it could pass a very long
time before we see v->is_initialized as "1" without the smp_rmb.

Please let me know if I am missing something.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 01:51:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 01:51:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114076.217266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ21D-0007Kn-TQ; Wed, 21 Apr 2021 01:51:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114076.217266; Wed, 21 Apr 2021 01: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 1lZ21D-0007Ke-Ki; Wed, 21 Apr 2021 01:51:07 +0000
Received: by outflank-mailman (input) for mailman id 114076;
 Wed, 21 Apr 2021 01:51: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 1lZ21C-0007KW-3B; Wed, 21 Apr 2021 01:51: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 1lZ21B-0003iG-Rz; Wed, 21 Apr 2021 01:51: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 1lZ21B-0004qy-ID; Wed, 21 Apr 2021 01:51:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZ21B-0003Kz-Hm; Wed, 21 Apr 2021 01:51: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=uU2lJP+o9nZHVOU1q4uJaNMWptJzF4BTILNtaK71QUA=; b=ijhD0FYWaiX8PHWwbTHHBeXhPF
	ZgcoV17XRfZ6A5pLYd8iyBvtGrymNEeyoFoPbPM39gNV2U7TdjISCqQMdNRsyIRLFzx725ei5dxdP
	WjoeDD6qInMeW6GhgKhYpVFCd4khur3FfzuHpiq8YFjKvh0z3hVkuo9dW++ZnTB297ac=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161320-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161320: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=7af08140979a6e7e12b78c93b8625c8d25b084e2
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 01:51:05 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                7af08140979a6e7e12b78c93b8625c8d25b084e2
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  263 days
Failing since        152366  2020-08-01 20:49:34 Z  262 days  441 attempts
Testing same since   161320  2021-04-20 10:01:46 Z    0 days    1 attempts

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

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1329272 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 04:46:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 04:46:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114106.217318 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ4kN-0006Iq-ST; Wed, 21 Apr 2021 04:45:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114106.217318; Wed, 21 Apr 2021 04: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 1lZ4kN-0006Ij-PP; Wed, 21 Apr 2021 04:45:55 +0000
Received: by outflank-mailman (input) for mailman id 114106;
 Wed, 21 Apr 2021 04:45: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 1lZ4kM-0006Ib-BQ; Wed, 21 Apr 2021 04:45: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 1lZ4kM-0007Gc-1r; Wed, 21 Apr 2021 04:45: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 1lZ4kL-0005S6-Nh; Wed, 21 Apr 2021 04:45:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZ4kL-0002zU-NA; Wed, 21 Apr 2021 04:45: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=D+cVhpdu1osRKkIkwbULtCFBF9mTn/f/ebGB5L0y7TQ=; b=P0efhCZfnMEETsA6A6nYvCu2Dl
	FizjljViLYblt1bQzg7+H24z2nFAXxNH8bN17ydi5eZq1lmBXA0Imoaga1q5Gl9Zoh8dxnZSmVgIJ
	LDJnhAwNkEbQo+YKUcKE5Vj4LlClPHJwTpONURvoOgyfB9pt3YECGACDKczbIBHFgBuY=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161322-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 161322: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-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-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check: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-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-vhd: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-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-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-cubietruck:saverestore-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-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=eb1f325186be9e02c3e89619cd154eb57f202eba
X-Osstest-Versions-That:
    xen=c86d8ec3b816cc1317d9cc2fb0817e59b5bc4cfa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 04:45:53 +0000

flight 161322 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161322/

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 161049
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161049
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161049
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161049
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161049
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161049
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161049
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161049
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161049
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161049
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161049
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-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-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  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-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-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-vhd 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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
 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:
 xen                  eb1f325186be9e02c3e89619cd154eb57f202eba
baseline version:
 xen                  c86d8ec3b816cc1317d9cc2fb0817e59b5bc4cfa

Last test of basis   161049  2021-04-12 10:36:30 Z    8 days
Testing same since   161322  2021-04-20 10:06:36 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  Frédéric Pierret <frederic.pierret@qubes-os.org>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   c86d8ec3b8..eb1f325186  eb1f325186be9e02c3e89619cd154eb57f202eba -> stable-4.15


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 06:28:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 06:28:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114115.217340 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ6Lq-0007AQ-JL; Wed, 21 Apr 2021 06:28:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114115.217340; Wed, 21 Apr 2021 06:28: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 1lZ6Lq-0007AJ-GL; Wed, 21 Apr 2021 06:28:42 +0000
Received: by outflank-mailman (input) for mailman id 114115;
 Wed, 21 Apr 2021 06:28:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3TEu=JS=arm.com=henry.wang@srs-us1.protection.inumbo.net>)
 id 1lZ6Lp-0007AE-4d
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 06:28:41 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.0.46]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0663d1fa-b05a-4701-88e5-bc8aa757527c;
 Wed, 21 Apr 2021 06:28:38 +0000 (UTC)
Received: from DB6P191CA0022.EURP191.PROD.OUTLOOK.COM (2603:10a6:6:28::32) by
 VI1PR0802MB2221.eurprd08.prod.outlook.com (2603:10a6:800:9a::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.20; Wed, 21 Apr
 2021 06:28:32 +0000
Received: from DB5EUR03FT051.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:6:28:cafe::d3) by DB6P191CA0022.outlook.office365.com
 (2603:10a6:6:28::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend
 Transport; Wed, 21 Apr 2021 06:28:32 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT051.mail.protection.outlook.com (10.152.21.19) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Wed, 21 Apr 2021 06:28:32 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Wed, 21 Apr 2021 06:28:31 +0000
Received: from d0f0a747a528.3
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5554284B-FEC2-48C4-ADF0-0735CCE479F3.1; 
 Wed, 21 Apr 2021 06:28:21 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d0f0a747a528.3
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 21 Apr 2021 06:28:21 +0000
Received: from PA4PR08MB6253.eurprd08.prod.outlook.com (2603:10a6:102:e4::8)
 by PAXPR08MB6559.eurprd08.prod.outlook.com (2603:10a6:102:df::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Wed, 21 Apr
 2021 06:28:15 +0000
Received: from PA4PR08MB6253.eurprd08.prod.outlook.com
 ([fe80::19f9:d346:b9af:5cad]) by PA4PR08MB6253.eurprd08.prod.outlook.com
 ([fe80::19f9:d346:b9af:5cad%3]) with mapi id 15.20.4042.024; Wed, 21 Apr 2021
 06:28: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: 0663d1fa-b05a-4701-88e5-bc8aa757527c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UOTyxBPNVJA25Xqiadw4Yf5whuom7JJkrVxTeR4Dm2g=;
 b=XqpSIbB9Mn4enif2KrdQPOeadXMfgT5G3bqLLg4ktQRB2KKlSyXm0OaY+zPRH2VZpwPKYksqC5aOHVb0SWDhpJbnmfapYx7ukRnBZdyUw9p1oKmoYzse23g+shol13IOxhd/6F7gBPgyQltUhqHk2jBZS9PVtSQeNLryP8FI7Ds=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nikPUsaNF7Dy8TuOLIQpTL922meJIg4DPVH3zQlh6+HJNOnHpjLsT6sDXDSEvTtBLHaqKdFZzayoIonR7qhxqvkD2XBJkePW2kLPEO0NgfZpVZ73CrL1PvCEYs1z8u6iIoJuDFTfigWizY7AIOoVfyoiTb4V1bR/G3lhsRub86pUaHRZPWfBYNBg30+kzgdQm1Da/VwC3q8g3+FxojUPBkcxmC1hUwYvQQLyWOVr/hQonWBmNHP0X3F+SpldlJKaPWO3tbmdj/RKVlP83v6fHZEZyrOaYyoOCLaVy3P+KEgOCAVhC9xyM0n9C5RUcSk2mFZI0/IcjrmjjPrPM8z3Fw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UOTyxBPNVJA25Xqiadw4Yf5whuom7JJkrVxTeR4Dm2g=;
 b=Ir90m31Vfv4NAZOaVCbaSv8knKEMhnOpb4RY1/Mk29mZCiBKbfzAU+9IBVdNHg7f0tswi0KKFYGpdIPXinoHEcLxzIu/APMC8cqEJnyHWKVQyxWV8yaxPeuSrRLAMHL9wkmMI9sWeL5GIR8CIaKjOlWvTnQyaxZKxGKyXijGO2zNXiXhKh/2jDRoOKuxQniB1k3YCkPFpjpLz3lbQ1KGjwy6+N8M+YjAN9Cc9QYE8aSi/STJgPOxSYiKU69IOogeG92Csr7jfu5/0hPds41cpblJaF+UAXhsyJ0HT49ejiVmdZnhMD7lPNP+hoW4iqcL3lpfxagshIZVCY4bPnUNWw==
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=UOTyxBPNVJA25Xqiadw4Yf5whuom7JJkrVxTeR4Dm2g=;
 b=XqpSIbB9Mn4enif2KrdQPOeadXMfgT5G3bqLLg4ktQRB2KKlSyXm0OaY+zPRH2VZpwPKYksqC5aOHVb0SWDhpJbnmfapYx7ukRnBZdyUw9p1oKmoYzse23g+shol13IOxhd/6F7gBPgyQltUhqHk2jBZS9PVtSQeNLryP8FI7Ds=
From: Henry Wang <Henry.Wang@arm.com>
To: "julien@xen.org" <julien@xen.org>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Wei Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>
Subject: Discussion of Xenheap problems on AArch64
Thread-Topic: Discussion of Xenheap problems on AArch64
Thread-Index: Adc2dyA8lkZGRqbyRiSglHolanVkwQ==
Date: Wed, 21 Apr 2021 06:28:14 +0000
Message-ID:
 <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ts-tracking-id: C1E9A756146AA34781678F033F4200EF.0
x-checkrecipientchecked: true
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [203.126.0.111]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: d315e010-d335-4303-8f92-08d9048eaf30
x-ms-traffictypediagnostic: PAXPR08MB6559:|VI1PR0802MB2221:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR0802MB2221CBF8554D237870F170C392479@VI1PR0802MB2221.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:8882;OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 jCIBqzDi0cYHWo0gDcU3gDYnyZV1Ze8w2H99SC8Luyzd0aHjTl2UsLs1WSauCSaX2+Po5+yqatuI7O6z9Swo4EGkR5yyX1AhUUwoZ7ocfS6aSptl3bE1PlzZLQIsEUWaBa0/ug7/y7YZBUmC0eDeQdeEVHik1+fI6Ii72tZmQHylyWzMOTnBqpXs4kuNc9J7dcAjscwj0EyHtfD8MAM4ypW9n0YBjDcLobHPPQNBR6BbinAfp0XZZj4Mb3K7y6kTnLwp57DhbWiX6S+hc46VMj5qk7U162nlCiwgNKdFVv/TlYGmpslWH3XJb/niJY2LZS4r0H7jNMEdPGoj3lZPw2UgeHU4WQ57G/5NZTO/ejd1UG/cXgXCot0rcukD4AGGRuHdM5cCDuKU1NdnqYugIKwVXeRvUgkPRmYD2fKExQuN2z8xbMgHNpfqOMYLDaBGtRPTASsdsH+KSkYjoHkiWWCiPxnFn1UPIvsEf0r81i4XhsxpFqk2HV6YaK7d24WixXQFy2ppYDv8fxYQ0kUjo64Npt3FdlWE08yIuVtTkc++NYGC90TAGw87d5IUW1n1XapmWs0d+tUX1ZjQHMq3lWUVxtYmvSwiXUgk/JZJqIGANqqSImRyvAfBDerhoZDXu04Ct4z+P8IevQKhIAokOsJFLPgOU0E8I4jAQ0qPxyxcFeKqVl+jBRWZ8RBMGps8
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR08MB6253.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(39860400002)(376002)(136003)(366004)(76116006)(66946007)(52536014)(8676002)(316002)(5660300002)(64756008)(66446008)(66476007)(71200400001)(478600001)(66556008)(7696005)(86362001)(110136005)(6506007)(966005)(54906003)(186003)(83380400001)(33656002)(38100700002)(26005)(2906002)(55016002)(9686003)(8936002)(122000001)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?us-ascii?Q?sIJgfen1Tydhx42Q+6Dz3FLDkzvmKFsqLmVV6eji5ZV/b+fHSYupqKXbNcvk?=
 =?us-ascii?Q?bQWy9rZYSoQ7sl6lDM43TMsjvDdGbqa/tJ3WifBRgi6xg3yuZ/iCBbKwNWAk?=
 =?us-ascii?Q?UqL0f+ktEHNj8HSknLDa89ie9jMw3z3s63N9TNcrZIVVGh+RLI9mvY8w4z0j?=
 =?us-ascii?Q?29dLut54tv/eyRsElJN5jcJRFs6nOECxHF+KbIKvLKD9+a0+7MXum6Vk+TB+?=
 =?us-ascii?Q?qMFPt83x/ABJZKDBopoQ9b63q77TfiV+2Avhwha0TGMhJIlQk7HseWgRHIvs?=
 =?us-ascii?Q?MW8r4WgyBIRT11NKBVgTjfG1ql+IA+byvxJZn5jsZFXsmUz+zJXWC9C/7AZe?=
 =?us-ascii?Q?lvzE8HLAQ9dy4DGiU2yziFIYhzqN5774zy0C3YnKbHa/sOUvVs4LBmxJ3PSo?=
 =?us-ascii?Q?CSyUqjBzveR5jfQjVUIZauVAT0rky+94HkJHjnpSRdgoZVKxChKm61aaOo9r?=
 =?us-ascii?Q?Y5YFQ/kggN05e7WYnZVcmtHVfaNkIsIjF7EPHs6aT0R7St8hmpHB/elpHy5H?=
 =?us-ascii?Q?AfRUhRbgL2Bp8+01QgzHEZ6tztx2h4cgoZaex+OACG7QFKuy440j9UmrdHiT?=
 =?us-ascii?Q?R0Ruyh731HL5QXulOGZv+c/g0IMmFbLyRUS+wjg5yd4rivF2vM2cMKlzwyy5?=
 =?us-ascii?Q?UedR3x8BTgWHeD0WhQxgxonNkUMDbfWDFiai95CtGOyjTrUaU/Rctlad2Nbq?=
 =?us-ascii?Q?GKi9ah+O3xbqRQ81dyGLsoo6BQK/vDzk1bCP4W6NnK/2LFokMLfUzYY4L2vk?=
 =?us-ascii?Q?WnVXSJNSiCry+WjrP/oegmxFVvjyx5aoAANZ95qoNUVH6BiJE2ee3nOE4lr4?=
 =?us-ascii?Q?uXlMsb2VI8/dV27iZfNUSuIAQS/7ugzuaYVZSrbWL8yYpVC+d2ljULVLBMkh?=
 =?us-ascii?Q?w/tIWDwe0f/qj9qlpy5QMnssPovKYxojv65TjwzY6wz/KHZSHr9E53Hkfv22?=
 =?us-ascii?Q?czWuQuGOolq2VyanKeVph8Uk6C430btWD428lTcAt3msSn5ItpDbCWDPM4hW?=
 =?us-ascii?Q?Ndr1GnfQdLnhHBFPoHelHca21dcMfDdGjFnAWeg9X5zmTIbpa8oeiFsY0bvD?=
 =?us-ascii?Q?LyxGe3RNRfPkbaNrcgM3nQXdu7Z6J/hTQmRf/6q+2x0ZxHSWgxsmEIxHuObH?=
 =?us-ascii?Q?8Td8vUBIxTyso3/qP0hMF63lDY1OufLqitpzIeNzfRUK5TZqyqtTchxnf6/c?=
 =?us-ascii?Q?bUkUhvPL+OrofgjLexEl3g52PJwbylEu2SQwRcnuQLMbo6Kz+5rVz2v7aajY?=
 =?us-ascii?Q?eJWL/swMUuGGjfk22hGqR34udM3FEHaaatRyC7fbU5LruVKc8FfouuewI/nY?=
 =?us-ascii?Q?4NQSMh4REBjyI0/7+83B3jwV?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6559
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	d5cdada9-9e6f-499f-afea-08d9048ea548
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5+xfhGsVz933sxD7GsU6BZnSLt3DedONoOGE7PvwGz+lMkx2rDwKmcqIRtQsUwnTEM1ZzNW3VwouhLB0w68ElV476y4Rk1Iz/pIHApMdWJ9rmqNJ3aAKVvb4Zm4ZRUJiLHpBRuASAcDf4nG0uccPuOjJr/1iZ2hrUU4/9zH6sBgieuhaYm4IuW2EW6qshdyasD6n1yGDvXuf/d5ZZZvG9MgsSBYCbXmCYwSc/X2OC4gxduhLizwxv6q3dYFfn/l9X5p0hSsymy+MKY6BWD4eNKdzMt3QoB07NNDIST/dtIlq1EGxHLhjQDqEwDtUFfoUQotaIUZw4ap1A0Omm76XoH2O49Uh6M2wmrmcKGyNMRUa4qMYQU7ysX+Pv46x6MpH7LYzJDN++trK5phPbiUNwgoL/68HoQbRxpu0lz+y1jTOYU22l49KiarHRuV/gLLYGNtgXMR2z7XFQqxUKdjCEoLF+EFX+DdMJ5zeovAHX1F2X/KBnF15x82SBU0i2PcuUHiOxN0JfTFlIUBb7vA0cel78SKkPsr6yPwbdZ5EIdxw0F5quom46yFzXPOZXpwotZvbcyPLKdz6A/gx4ZCo+Ar/uXbpMui8C7hOeeyRUYYm5RqWdxsuYtzu/5DdCbT13P2Rmc5oHuWIXzZjXUlSyROsCAsu8Oaun41zPpsKCcu5b9VP30mVGeSuChRUmw0oXvS4KXea9AjGVoeBpGzXOZ9XPPzeoigpVUcZnT1s5JQ=
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:(4636009)(396003)(346002)(376002)(136003)(39860400002)(46966006)(36840700001)(336012)(6506007)(52536014)(2906002)(55016002)(86362001)(82310400003)(83380400001)(5660300002)(81166007)(8936002)(9686003)(70206006)(36860700001)(82740400003)(356005)(186003)(110136005)(70586007)(47076005)(8676002)(966005)(54906003)(7696005)(478600001)(4326008)(33656002)(26005)(316002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 06:28:32.0633
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d315e010-d335-4303-8f92-08d9048eaf30
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:
	DB5EUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2221

Hi,

We are trying to implement the static memory allocation on AArch64. Part of
this feature is the reserved heap memory allocation, where a specific range=
 of
memory is reserved only for heap. In the development process, we found a
pitfall in current AArch64 setup_xenheap_mappings() function.

According to a previous discussion in community
https://lore.kernel.org/xen-devel/20190216134456.10681-1-peng.fan@nxp.com/,
on AArch64, bootmem is initialized after setup_xenheap_mappings(),
setup_xenheap_mappings() may try to allocate memory before memory has been
handed over to the boot allocator. If the reserved heap memory allocation i=
s
introduced, either of below 2 cases will trigger a crash:

1. If the reserved heap memory is at the end of the memory block list and t=
he
gap between reserved and unreserved memory is bigger than 512GB, when we se=
tup
mappings from the beginning of the memory block list, we will get OOM cause=
d
by lack of pages in boot allocator. This is because the memory that is rese=
rved
for heap has not been mapped and added to the boot allocator.

2. If we add the memory that is reserved for heap to boot allocator first, =
and
then setup mappings for banks in the memory block list, we may get a page w=
hich
has not been setup mapping, causing a data abort.

Also, according to Julien's reply in previous mailing list discussion, we a=
re
meant to support up to 5TB of RAM (see
https://lists.xenproject.org/archives/html/xen-devel/2018-12/msg00881.html)=
.
Therefore, we think that maybe it is the time to re-visit this problem and =
try
to find a proper way to address it. Any comments?

Kind regards,

Henry


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 07:36:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 07:36:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114127.217358 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ7PQ-0005CA-SY; Wed, 21 Apr 2021 07:36:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114127.217358; Wed, 21 Apr 2021 07: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 1lZ7PQ-0005C3-PP; Wed, 21 Apr 2021 07:36:28 +0000
Received: by outflank-mailman (input) for mailman id 114127;
 Wed, 21 Apr 2021 07:36:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6IQv=JS=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lZ7PP-0005By-30
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 07:36:27 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 5e800e74-b2dd-4701-9e46-d15ce1dbc91c;
 Wed, 21 Apr 2021 07:36:24 +0000 (UTC)
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 2F9AA106F;
 Wed, 21 Apr 2021 00:36:24 -0700 (PDT)
Received: from [10.57.28.119] (unknown [10.57.28.119])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 41D743F774;
 Wed, 21 Apr 2021 00:36: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: 5e800e74-b2dd-4701-9e46-d15ce1dbc91c
Subject: Re: [PATCH 2/9] arm/domain: Get rid of READ/WRITE_SYSREG32
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-3-michal.orzel@arm.com>
 <80f89abe-d81f-8b56-583c-470289abae0b@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <fabfcd90-a46b-c496-2db4-258c47d0991f@arm.com>
Date: Wed, 21 Apr 2021 09:36:18 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <80f89abe-d81f-8b56-583c-470289abae0b@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Julien,

On 20.04.2021 15:12, Julien Grall wrote:
> Hi Michal,
> 
> On 20/04/2021 08:08, Michal Orzel wrote:
>> AArch64 system registers are 64bit whereas AArch32 ones
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 sysregs have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
>>
>> Modify type of registers: actlr, cntkctl to register_t.
> 
> ACTLR is implementation defined, so in theory there might already bits already defined in the range [32:63]. So I would consider to split it from the patch so we can backport it.
> 
You mean not to touch it at all in this series or to create a seperate patch only for ACTLR?
>>
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> ---
>>   xen/arch/arm/domain.c        | 20 ++++++++++----------
>>   xen/include/asm-arm/domain.h |  4 ++--
>>   2 files changed, 12 insertions(+), 12 deletions(-)
>>
>> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
>> index bdd3d3e5b5..c021a03c61 100644
>> --- a/xen/arch/arm/domain.c
>> +++ b/xen/arch/arm/domain.c
>> @@ -113,13 +113,13 @@ static void ctxt_switch_from(struct vcpu *p)
>>       p->arch.tpidr_el1 = READ_SYSREG(TPIDR_EL1);
>>         /* Arch timer */
>> -    p->arch.cntkctl = READ_SYSREG32(CNTKCTL_EL1);
>> +    p->arch.cntkctl = READ_SYSREG(CNTKCTL_EL1);
>>       virt_timer_save(p);
>>         if ( is_32bit_domain(p->domain) && cpu_has_thumbee )
>>       {
>> -        p->arch.teecr = READ_SYSREG32(TEECR32_EL1);
>> -        p->arch.teehbr = READ_SYSREG32(TEEHBR32_EL1);
>> +        p->arch.teecr = READ_SYSREG(TEECR32_EL1);
>> +        p->arch.teehbr = READ_SYSREG(TEEHBR32_EL1);
> 
> It feels strange you converted cntkctl and actlr to use register_t but not teecr and teehbr. Can you explain why?
> 
Because thumbee and its registers do not appear in any of ARMv8 ARM version.
This means that this code could be protected even with #ifdef CONFIG_ARM_32 as AArch64 do not have them.
> Cheers,
> 
Cheers,
Michal


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 07:39:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 07:39:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114130.217370 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ7SN-0005Jr-Bu; Wed, 21 Apr 2021 07:39:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114130.217370; Wed, 21 Apr 2021 07:39: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 1lZ7SN-0005Jk-7l; Wed, 21 Apr 2021 07:39:31 +0000
Received: by outflank-mailman (input) for mailman id 114130;
 Wed, 21 Apr 2021 07:39:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=37lK=JS=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZ7SL-0005Ja-DD
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 07:39:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e825508c-f1f2-4433-9915-20c27b73c061;
 Wed, 21 Apr 2021 07:39:28 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 89BFCB118;
 Wed, 21 Apr 2021 07:39: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: e825508c-f1f2-4433-9915-20c27b73c061
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618990767; 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=/tKwVzMWedGWsdJSQhBlJY7TimKW3yM7eSnrFJ7OcPw=;
	b=R1ieuNi8TAWhCg6sOkHkGIWnvBPc8jMXNVCv214IuBBY4Ih3bNTlRrdC4fgml4HcmFNnw7
	7Z/FR4qaixfgGkqFnxp8Ep/cGCk9uLM0gjwOQYuSXx2bZmcqb5t+ogObV/IyorbDzSgunW
	FW83wuOAAdcWIWCI4C2wJ7ZCF9qI7eE=
Subject: Re: [PATCH] tools/xenstored: Remove unused prototype
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Julien Grall <jgrall@amazon.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>
References: <20210420134906.10910-1-julien@xen.org>
From: Juergen Gross <jgross@suse.com>
Message-ID: <756df886-2e18-f2d0-a6d7-27e9817cb9c6@suse.com>
Date: Wed, 21 Apr 2021 09:39:26 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210420134906.10910-1-julien@xen.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="f0gssjl8SvGTGXySjF7XHkkg1ZA4AjklP"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--f0gssjl8SvGTGXySjF7XHkkg1ZA4AjklP
Content-Type: multipart/mixed; boundary="OjsEyMb1I9sk2e7w4YQxWzVtlHCVK6ulp";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Julien Grall <jgrall@amazon.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>
Message-ID: <756df886-2e18-f2d0-a6d7-27e9817cb9c6@suse.com>
Subject: Re: [PATCH] tools/xenstored: Remove unused prototype
References: <20210420134906.10910-1-julien@xen.org>
In-Reply-To: <20210420134906.10910-1-julien@xen.org>

--OjsEyMb1I9sk2e7w4YQxWzVtlHCVK6ulp
Content-Type: multipart/mixed;
 boundary="------------AF747BE277D7E706BDF9EAC0"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------AF747BE277D7E706BDF9EAC0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 20.04.21 15:49, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
>=20
> A prototype for dump_conn() has been present for quite a long time
> but there are no implementation. Even, AFAICT in the patch that
> introduced it. So drop it.
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Reviewed-by: Juergen Gross <jgross@suse.com>


Juergen

--------------AF747BE277D7E706BDF9EAC0
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------AF747BE277D7E706BDF9EAC0--

--OjsEyMb1I9sk2e7w4YQxWzVtlHCVK6ulp--

--f0gssjl8SvGTGXySjF7XHkkg1ZA4AjklP
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmB/1q4FAwAAAAAACgkQsN6d1ii/Ey/k
4Qf/dOTwdnrMaymU2yPwINTZqx3RuvdrBvqyCmeoJm2g9grkikLUwLQ3eEk0k14mjepdBfSCPucD
7xyr8kigYwJOQNk6/Nl4N3Y69Vx88fMv9nOMf00vhq1hrdQJmO9yq3U14vkadfyAdA91+MmfoiF3
lg+V+QYPOjSoVyeetZpvgkHLPcb/hfA0Ht1upH5xHzVrSY8LsT7ZIQbAFbs8Ia43dMjgHkMNL/mw
5sRvPZNn2noeLnOQ4PXJ4DeUW1d+pQUDcBdOrwKCGam2TV+uFlHl4uM7x7dBLXN01sQmWqL57Eeg
ppkuDUHxAJHjSIyeYAphn4sGlcfZ5T0uDLWpOtzM4w==
=P4ob
-----END PGP SIGNATURE-----

--f0gssjl8SvGTGXySjF7XHkkg1ZA4AjklP--


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 07:49:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 07:49:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114135.217381 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ7bY-0006IJ-89; Wed, 21 Apr 2021 07:49:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114135.217381; Wed, 21 Apr 2021 07:49: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 1lZ7bY-0006IC-4o; Wed, 21 Apr 2021 07:49:00 +0000
Received: by outflank-mailman (input) for mailman id 114135;
 Wed, 21 Apr 2021 07:48:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6IQv=JS=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lZ7bW-0006I6-Pk
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 07:48:58 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id cde2ad99-4129-4a23-99ae-fc0a6795c4ac;
 Wed, 21 Apr 2021 07:48:56 +0000 (UTC)
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 2D48611B3;
 Wed, 21 Apr 2021 00:48:56 -0700 (PDT)
Received: from [10.57.28.119] (unknown [10.57.28.119])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 18F1D3F73B;
 Wed, 21 Apr 2021 00:48: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: cde2ad99-4129-4a23-99ae-fc0a6795c4ac
Subject: Re: [PATCH 3/9] arm/gic: Get rid of READ/WRITE_SYSREG32
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-4-michal.orzel@arm.com>
 <1a087bed-94e5-bada-76c4-92e0c429cce6@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <fd5924c5-685d-a9fc-1116-c1b8909c9aea@arm.com>
Date: Wed, 21 Apr 2021 09:48:53 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <1a087bed-94e5-bada-76c4-92e0c429cce6@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Julien,

On 20.04.2021 15:28, Julien Grall wrote:
> Hi Michal,
> 
> On 20/04/2021 08:08, Michal Orzel wrote:
>> AArch64 system registers are 64bit whereas AArch32 ones
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 sysregs have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
>>
>> Modify types of following members of struct gic_v3 to register_t:
>> -hcr(not used at all in Xen)
> 
> It looks like we never used it (even in the patch introducing it). So I would suggest to remove it in a patch before this one.
>
Ok. In v2 I will add a patch before this one removing hcr from gic_v3.
>> -vmcr
>> -sre_el1
>> -apr0
>> -apr1
>>
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> ---
>>   xen/arch/arm/gic-v3-lpi.c |  2 +-
>>   xen/arch/arm/gic-v3.c     | 96 ++++++++++++++++++++-------------------
>>   xen/include/asm-arm/gic.h |  6 +--
>>   3 files changed, 54 insertions(+), 50 deletions(-)
>>
>> diff --git a/xen/arch/arm/gic-v3-lpi.c b/xen/arch/arm/gic-v3-lpi.c
>> index 869bc97fa1..e1594dd20e 100644
>> --- a/xen/arch/arm/gic-v3-lpi.c
>> +++ b/xen/arch/arm/gic-v3-lpi.c
>> @@ -178,7 +178,7 @@ void gicv3_do_LPI(unsigned int lpi)
>>       irq_enter();
>>         /* EOI the LPI already. */
>> -    WRITE_SYSREG32(lpi, ICC_EOIR1_EL1);
>> +    WRITE_SYSREG(lpi, ICC_EOIR1_EL1);
>>         /* Find out if a guest mapped something to this physical LPI. */
>>       hlpip = gic_get_host_lpi(lpi);
>> diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
>> index ac28013c19..0634013a67 100644
>> --- a/xen/arch/arm/gic-v3.c
>> +++ b/xen/arch/arm/gic-v3.c
>> @@ -246,12 +246,12 @@ static void gicv3_ich_write_lr(int lr, uint64_t val)
>>    */
>>   static void gicv3_enable_sre(void)
>>   {
>> -    uint32_t val;
>> +    register_t val;
>>   -    val = READ_SYSREG32(ICC_SRE_EL2);
>> +    val = READ_SYSREG(ICC_SRE_EL2);
>>       val |= GICC_SRE_EL2_SRE;
>>   -    WRITE_SYSREG32(val, ICC_SRE_EL2);
>> +    WRITE_SYSREG(val, ICC_SRE_EL2);
>>       isb();
>>   }
>>   @@ -315,16 +315,16 @@ static void restore_aprn_regs(const union gic_state_data *d)
>>       switch ( gicv3.nr_priorities )
>>       {
>>       case 7:
>> -        WRITE_SYSREG32(d->v3.apr0[2], ICH_AP0R2_EL2);
>> -        WRITE_SYSREG32(d->v3.apr1[2], ICH_AP1R2_EL2);
>> +        WRITE_SYSREG(d->v3.apr0[2], ICH_AP0R2_EL2);
>> +        WRITE_SYSREG(d->v3.apr1[2], ICH_AP1R2_EL2);
>>           /* Fall through */
>>       case 6:
>> -        WRITE_SYSREG32(d->v3.apr0[1], ICH_AP0R1_EL2);
>> -        WRITE_SYSREG32(d->v3.apr1[1], ICH_AP1R1_EL2);
>> +        WRITE_SYSREG(d->v3.apr0[1], ICH_AP0R1_EL2);
>> +        WRITE_SYSREG(d->v3.apr1[1], ICH_AP1R1_EL2);
>>           /* Fall through */
>>       case 5:
>> -        WRITE_SYSREG32(d->v3.apr0[0], ICH_AP0R0_EL2);
>> -        WRITE_SYSREG32(d->v3.apr1[0], ICH_AP1R0_EL2);
>> +        WRITE_SYSREG(d->v3.apr0[0], ICH_AP0R0_EL2);
>> +        WRITE_SYSREG(d->v3.apr1[0], ICH_AP1R0_EL2);
>>           break;
>>       default:
>>           BUG();
>> @@ -338,16 +338,16 @@ static void save_aprn_regs(union gic_state_data *d)
>>       switch ( gicv3.nr_priorities )
>>       {
>>       case 7:
>> -        d->v3.apr0[2] = READ_SYSREG32(ICH_AP0R2_EL2);
>> -        d->v3.apr1[2] = READ_SYSREG32(ICH_AP1R2_EL2);
>> +        d->v3.apr0[2] = READ_SYSREG(ICH_AP0R2_EL2);
>> +        d->v3.apr1[2] = READ_SYSREG(ICH_AP1R2_EL2);
>>           /* Fall through */
>>       case 6:
>> -        d->v3.apr0[1] = READ_SYSREG32(ICH_AP0R1_EL2);
>> -        d->v3.apr1[1] = READ_SYSREG32(ICH_AP1R1_EL2);
>> +        d->v3.apr0[1] = READ_SYSREG(ICH_AP0R1_EL2);
>> +        d->v3.apr1[1] = READ_SYSREG(ICH_AP1R1_EL2);
>>           /* Fall through */
>>       case 5:
>> -        d->v3.apr0[0] = READ_SYSREG32(ICH_AP0R0_EL2);
>> -        d->v3.apr1[0] = READ_SYSREG32(ICH_AP1R0_EL2);
>> +        d->v3.apr0[0] = READ_SYSREG(ICH_AP0R0_EL2);
>> +        d->v3.apr1[0] = READ_SYSREG(ICH_AP1R0_EL2);
>>           break;
>>       default:
>>           BUG();
>> @@ -371,15 +371,15 @@ static void gicv3_save_state(struct vcpu *v)
>>       dsb(sy);
>>       gicv3_save_lrs(v);
>>       save_aprn_regs(&v->arch.gic);
>> -    v->arch.gic.v3.vmcr = READ_SYSREG32(ICH_VMCR_EL2);
>> -    v->arch.gic.v3.sre_el1 = READ_SYSREG32(ICC_SRE_EL1);
>> +    v->arch.gic.v3.vmcr = READ_SYSREG(ICH_VMCR_EL2);
>> +    v->arch.gic.v3.sre_el1 = READ_SYSREG(ICC_SRE_EL1);
>>   }
>>     static void gicv3_restore_state(const struct vcpu *v)
>>   {
>> -    uint32_t val;
>> +    register_t val;
>>   -    val = READ_SYSREG32(ICC_SRE_EL2);
>> +    val = READ_SYSREG(ICC_SRE_EL2);
>>       /*
>>        * Don't give access to system registers when the guest is using
>>        * GICv2
>> @@ -388,7 +388,7 @@ static void gicv3_restore_state(const struct vcpu *v)
>>           val &= ~GICC_SRE_EL2_ENEL1;
>>       else
>>           val |= GICC_SRE_EL2_ENEL1;
>> -    WRITE_SYSREG32(val, ICC_SRE_EL2);
>> +    WRITE_SYSREG(val, ICC_SRE_EL2);
>>         /*
>>        * VFIQEn is RES1 if ICC_SRE_EL1.SRE is 1. This causes a Group0
>> @@ -398,9 +398,9 @@ static void gicv3_restore_state(const struct vcpu *v)
>>        * want before starting to mess with the rest of the GIC, and
>>        * VMCR_EL1 in particular.
>>        */
>> -    WRITE_SYSREG32(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
>> +    WRITE_SYSREG(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
>>       isb();
>> -    WRITE_SYSREG32(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
>> +    WRITE_SYSREG(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
>>       restore_aprn_regs(&v->arch.gic);
>>       gicv3_restore_lrs(v);
>>   @@ -468,24 +468,25 @@ static void gicv3_mask_irq(struct irq_desc *irqd)
>>   static void gicv3_eoi_irq(struct irq_desc *irqd)
>>   {
>>       /* Lower the priority */
>> -    WRITE_SYSREG32(irqd->irq, ICC_EOIR1_EL1);
>> +    WRITE_SYSREG(irqd->irq, ICC_EOIR1_EL1);
>>       isb();
>>   }
>>     static void gicv3_dir_irq(struct irq_desc *irqd)
>>   {
>>       /* Deactivate */
>> -    WRITE_SYSREG32(irqd->irq, ICC_DIR_EL1);
>> +    WRITE_SYSREG(irqd->irq, ICC_DIR_EL1);
>>       isb();
>>   }
>>     static unsigned int gicv3_read_irq(void)
>>   {
>> -    unsigned int irq = READ_SYSREG32(ICC_IAR1_EL1);
>> +    register_t irq = READ_SYSREG(ICC_IAR1_EL1);
>>         dsb(sy);
>>   -    return irq;
>> +    /* Number of IRQs do not exceed 32bit. */
> 
> If we want to be pedantic, the IRQs are encoded using 23-bit. So maybe we want to mask them below.
> 
>> +    return (unsigned int)irq;
> 
> NIT: We tend to avoid explicit cast unless they are strictly necessary because they can be more harmful than implicit cast (the compiler may not cast every conversion). So I would drop it and just keep the comment.
> 
Ok. I will do:
return (irq & 0xffffff);
>>   }
>>     /*
>> @@ -857,16 +858,16 @@ static int gicv3_cpu_init(void)
>>       gicv3_enable_sre();
>>         /* No priority grouping */
>> -    WRITE_SYSREG32(0, ICC_BPR1_EL1);
>> +    WRITE_SYSREG(0, ICC_BPR1_EL1);
>>         /* Set priority mask register */
>> -    WRITE_SYSREG32(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
>> +    WRITE_SYSREG(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
>>         /* EOI drops priority, DIR deactivates the interrupt (mode 1) */
>> -    WRITE_SYSREG32(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
>> +    WRITE_SYSREG(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
>>         /* Enable Group1 interrupts */
>> -    WRITE_SYSREG32(1, ICC_IGRPEN1_EL1);
>> +    WRITE_SYSREG(1, ICC_IGRPEN1_EL1);
>>         /* Sync at once at the end of cpu interface configuration */
>>       isb();
>> @@ -876,15 +877,15 @@ static int gicv3_cpu_init(void)
>>     static void gicv3_cpu_disable(void)
>>   {
>> -    WRITE_SYSREG32(0, ICC_CTLR_EL1);
>> +    WRITE_SYSREG(0, ICC_CTLR_EL1);
>>       isb();
>>   }
>>     static void gicv3_hyp_init(void)
>>   {
>> -    uint32_t vtr;
>> +    register_t vtr;
>>   -    vtr = READ_SYSREG32(ICH_VTR_EL2);
>> +    vtr = READ_SYSREG(ICH_VTR_EL2);
>>       gicv3_info.nr_lrs  = (vtr & ICH_VTR_NRLRGS) + 1;
>>       gicv3.nr_priorities = ((vtr >> ICH_VTR_PRIBITS_SHIFT) &
>>                             ICH_VTR_PRIBITS_MASK) + 1;
>> @@ -892,8 +893,8 @@ static void gicv3_hyp_init(void)
>>       if ( !((gicv3.nr_priorities > 4) && (gicv3.nr_priorities < 8)) )
>>           panic("GICv3: Invalid number of priority bits\n");
>>   -    WRITE_SYSREG32(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
>> -    WRITE_SYSREG32(GICH_HCR_EN, ICH_HCR_EL2);
>> +    WRITE_SYSREG(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
>> +    WRITE_SYSREG(GICH_HCR_EN, ICH_HCR_EL2);
>>   }
>>     /* Set up the per-CPU parts of the GIC for a secondary CPU */
>> @@ -917,11 +918,11 @@ out:
>>     static void gicv3_hyp_disable(void)
>>   {
>> -    uint32_t hcr;
>> +    register_t hcr;
>>   -    hcr = READ_SYSREG32(ICH_HCR_EL2);
>> +    hcr = READ_SYSREG(ICH_HCR_EL2);
>>       hcr &= ~GICH_HCR_EN;
>> -    WRITE_SYSREG32(hcr, ICH_HCR_EL2);
>> +    WRITE_SYSREG(hcr, ICH_HCR_EL2);
>>       isb();
>>   }
>>   @@ -1140,39 +1141,42 @@ static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
>>     static void gicv3_hcr_status(uint32_t flag, bool status)
>>   {
>> -    uint32_t hcr;
>> +    register_t hcr;
>>   -    hcr = READ_SYSREG32(ICH_HCR_EL2);
>> +    hcr = READ_SYSREG(ICH_HCR_EL2);
>>       if ( status )
>> -        WRITE_SYSREG32(hcr | flag, ICH_HCR_EL2);
>> +        WRITE_SYSREG(hcr | flag, ICH_HCR_EL2);
>>       else
>> -        WRITE_SYSREG32(hcr & (~flag), ICH_HCR_EL2);
>> +        WRITE_SYSREG(hcr & (~flag), ICH_HCR_EL2);
>>       isb();
>>   }
>>     static unsigned int gicv3_read_vmcr_priority(void)
>>   {
>> -   return ((READ_SYSREG32(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
>> +   return ((READ_SYSREG(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
>>               ICH_VMCR_PRIORITY_MASK);
>>   }
>>     /* Only support reading GRP1 APRn registers */
>>   static unsigned int gicv3_read_apr(int apr_reg)
>>   {
>> +    register_t apr;
> 
> NIT: Please add a newline after the declaration. This will be easier to read.
> 
Ok.
>>       switch ( apr_reg )
>>       {
>>       case 0:
>>           ASSERT(gicv3.nr_priorities > 4 && gicv3.nr_priorities < 8);
>> -        return READ_SYSREG32(ICH_AP1R0_EL2);
>> +        apr = READ_SYSREG(ICH_AP1R0_EL2);
>>       case 1:
>>           ASSERT(gicv3.nr_priorities > 5 && gicv3.nr_priorities < 8);
>> -        return READ_SYSREG32(ICH_AP1R1_EL2);
>> +        apr = READ_SYSREG(ICH_AP1R1_EL2);
>>       case 2:
>>           ASSERT(gicv3.nr_priorities > 6 && gicv3.nr_priorities < 8);
>> -        return READ_SYSREG32(ICH_AP1R2_EL2);
>> +        apr = READ_SYSREG(ICH_AP1R2_EL2);
>>       default:
>>           BUG();
>>       }
> 
> NIT: Please add a newline here. This will be easier to read.
> 
Ok.
>> +    /* Number of priority levels do not exceed 32bit */
>> +    return (unsigned int)apr;
> 
> NIT: Same remark as before for the cast.
> 
Ok. I will do just:
return apr;
>>   }
>>     static bool gicv3_read_pending_state(struct irq_desc *irqd)
>> diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
>> index ad0f7452d0..d750d070b4 100644
>> --- a/xen/include/asm-arm/gic.h
>> +++ b/xen/include/asm-arm/gic.h
>> @@ -171,9 +171,9 @@
>>    * GICv3 registers that needs to be saved/restored
>>    */
>>   struct gic_v3 {
>> -    uint32_t hcr, vmcr, sre_el1;
>> -    uint32_t apr0[4];
>> -    uint32_t apr1[4];
>> +    register_t hcr, vmcr, sre_el1;
>> +    register_t apr0[4];
>> +    register_t apr1[4];
>>       uint64_t lr[16];
>>   };
>>   #endif
>>
> 
> Cheers,
> 

Cheers


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 08:07:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 08:07:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114143.217394 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ7ta-0000FL-0T; Wed, 21 Apr 2021 08:07:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114143.217394; Wed, 21 Apr 2021 08:07: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 1lZ7tZ-0000FE-Tc; Wed, 21 Apr 2021 08:07:37 +0000
Received: by outflank-mailman (input) for mailman id 114143;
 Wed, 21 Apr 2021 08:07:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3IT8=JS=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lZ7tY-0000F9-J0
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 08:07:36 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (unknown
 [40.107.6.70]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8481e0ad-6fc6-4de3-a264-f482c7470a36;
 Wed, 21 Apr 2021 08:07:33 +0000 (UTC)
Received: from AM7PR03CA0014.eurprd03.prod.outlook.com (2603:10a6:20b:130::24)
 by AM0PR08MB5153.eurprd08.prod.outlook.com (2603:10a6:208:163::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.21; Wed, 21 Apr
 2021 08:07:32 +0000
Received: from VE1EUR03FT003.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:130:cafe::b4) by AM7PR03CA0014.outlook.office365.com
 (2603:10a6:20b:130::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18 via Frontend
 Transport; Wed, 21 Apr 2021 08:07:32 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT003.mail.protection.outlook.com (10.152.18.108) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Wed, 21 Apr 2021 08:07:31 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Wed, 21 Apr 2021 08:07:31 +0000
Received: from b755683f15de.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7B461E8E-7A8C-42AC-9061-F381617E4766.1; 
 Wed, 21 Apr 2021 08:07:20 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b755683f15de.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 21 Apr 2021 08:07:20 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AS8PR08MB6135.eurprd08.prod.outlook.com (2603:10a6:20b:29f::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.19; Wed, 21 Apr
 2021 08:07:08 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4042.024; Wed, 21 Apr 2021
 08: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: 8481e0ad-6fc6-4de3-a264-f482c7470a36
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bZCxa6qdpc8jLjqAvQ4QD/EzziEXyFJsgkOTsEZME+s=;
 b=I1Ln+2XvaAG6ZjOYvxz818iAa/qCXy4CGcsOB9BIhi/qHKH/Stiirx2TSCri+VrvBjSlZz9z/wJDjoOEcYVlxsidWkTWHKdrLKvVxN1lFh7fqN4REQ4rluQajTJPyWgXs8m6qTecwWf/sBSRq+Q9cLbW6bcG99HSR50H3e/Sx1M=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 78e5fa09b8027581
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=V7MSfkDEJlv5DkelpID679+wvFAAsCtGaGfCv9rq/CWogJvLPZDFYtG5Y60cehkjTSV7U25mZhozX2c/PM2fooLF8CoeReiMUPnS4vDgr4rOf4zyLX3fZd67vwqNXpMnbsdfZvI0wfu98NGuXXgjJtz/7co2sK0/6h50ujwUC/my8uDVIDyypHnV0S+dmwaRyaZjHMWIUcotrvdi/G/tItDE8CV0vEdgk4hD40jEEwJTKdJ+feQB+rRPzPats16U8ITFDeUwDj4X6cUb2asEz47uwdbAQIHbfMFSgtr6Z5AYYqHfkEcsm3nd848IOcsmyXpwmWXUuyhBUznz+iqk/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-SenderADCheck;
 bh=bZCxa6qdpc8jLjqAvQ4QD/EzziEXyFJsgkOTsEZME+s=;
 b=jFnYAXp5A50HbB4cjpmSgLOA+F3AuZgKD1MsTWNMwepO0D7K68Aumgf0LnJ1VCb4P6/U2FMtG48b4Tl0C4nX6dOj6+V0S+GGJ5RWorkjxZffdjZAYLNGrOVBX/URqrADswyyNHDBZ8YaszeucwRRKojsN3cMSx/zE7BQPYUNSduR9r5VhVVLHAGH+eIGtFhFFiKFQUAMej+/HrsxB7VmEfAusJeb1UwBit1/Q70TDgYl7wRm5FnrcpqiKv9E36D/WNSekthlzCHJtj5b4lfGV/+xo03BJspbYJBV/73ykb3fZOxG+CbIOi/AidyIT26QZvJ3oCiufNYqFomNctt/SA==
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=bZCxa6qdpc8jLjqAvQ4QD/EzziEXyFJsgkOTsEZME+s=;
 b=I1Ln+2XvaAG6ZjOYvxz818iAa/qCXy4CGcsOB9BIhi/qHKH/Stiirx2TSCri+VrvBjSlZz9z/wJDjoOEcYVlxsidWkTWHKdrLKvVxN1lFh7fqN4REQ4rluQajTJPyWgXs8m6qTecwWf/sBSRq+Q9cLbW6bcG99HSR50H3e/Sx1M=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Topic: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Index:
 AQHXLVmJnBz/2T+xZEqfD4R39q2wV6qwuDwAgAH9VwCAAPmtgIAADD+AgAHfkACAAAF1gIAF4LkAgAAXZQCAACuvgIAACpEAgAAKwACAAaaJgIAAHu8AgAEU14A=
Date: Wed, 21 Apr 2021 08:07:08 +0000
Message-ID: <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
References:
 <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
 <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
 <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
In-Reply-To: <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: ab8344c4-0e4d-42bb-bb69-08d9049c837e
x-ms-traffictypediagnostic: AS8PR08MB6135:|AM0PR08MB5153:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM0PR08MB515368B229F6BFDA36E81475FC479@AM0PR08MB5153.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 VppXGwiwxVTdF69Iovmo0EaOE9ecXODPp/snf30+WZ9pYndY7S1Gr4GHdUz0xiDr043VgkCWpxKgs7m/Ok/4tGk1XPZpYmoIpB9iydYhaUz9PivNMD3jU8SveTANMHN2XBNdmRZiuT/H8iElVpAe/W0CwMuxzck4O1iG7SJ2wjQUj0kKKVy9HC0/YtUFl1z5EjvtwSSsSSFMwMalG6XlScFe3fhemRXEnuNh8PKbxf18i7RDT80tmMs5fUeJYqztXs6j6w0TyUA54kmobPdZg0MLHK+eSU1nrBwchpLTD6KFv/jqBTiWyaQ8/Z9TzFs0c+wV2qQhWEgXi+wkpD6PaLJ4TCLLpHZ1As74zbPK6yD0mh59Y1X30z2M8VRX6GrZfuxofnVsgo65X0lmsfSBxDPIq0x67IRFnPVx5NDvciM1jhLV41ND1KbdEXkWxkDdufm0Jr5iXddTqDVO2X2KNpPJXJxMf0pu59RBJuepzZU2xSw/A+fFIeE+R6YcMeZHEnijzzduDw6QThI6RMVM2O85lY/wQtgIxM8VtmoBwMnQaKkxZjd79rJ+F2ieu2ToEaF2eH0+NMacxRuIMjg7fJm/qXhJWYgb+MWFFkyyyel1HzgCh7rU6xwXGHBq0My6OSK1JTNX6lBh4BlEcR9OO+7qHaMkrdBDsmH/A835vZA=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(376002)(346002)(366004)(39860400002)(396003)(478600001)(316002)(66446008)(6506007)(2906002)(36756003)(64756008)(86362001)(83380400001)(38100700002)(186003)(66476007)(33656002)(122000001)(2616005)(53546011)(6486002)(66556008)(8676002)(6916009)(7416002)(91956017)(26005)(54906003)(71200400001)(76116006)(6512007)(4326008)(8936002)(5660300002)(66946007)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <1653F76D31763C43B1659200C0AA2732@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6135
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT003.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e3803415-2dfc-47b1-1278-08d9049c75a1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	59xh/1AiCWQnIQjtV46cWDjGgg2dj1gWv40EyAOomlLKuPsrXYMFB+2S+5qfsSqsy5i/h6kPXt9Ua+sH+gjRFxdnGsbVaa/mZUI+ZLYu3GJtVGQ/UwAxoEeJ7E6d0gEWWmW6s5IFMqj5wmCuCcu+4UfhGE3C2RRkXem9yLQJipwImpzb3jo9p1J5w0UUw9gSRjSOD5pgKIFYtiTnafY7JAsZ3QU59RYYT7F6DRakUyTnHquANFZRb7R82IWtvp++pL9KXDmF/6YMjPDtNmkePONh9I6q/1I4Ki8bagqxXn3ljT7wF/+qgffmxmoR9ol51xd8lOjq3VJRkshNMfPmQCbtEd+2DYehKKBAfO5fMx+bHnIrZUHVP2epzljcdzWt8t6JwiP1/4aEAXLmTHd7CRU+3xwUakPX/GTKT8PsGNCbfUeyQvGtGgvKraqdtkPpxHoP7ktVJuTYN5IlNNzeNBjPcYRtDzUIJN9nXbOTavNfGCAU8zH2kHh2ttwk1uHPfzSXgTFGuc6Uflp50gkE+3p4g4umSb48ySQ3XmgW2akDlTQDnge7bwBRn+uHW/6lFHVeGMRbkbDXkSS8N6X4z0m3jO606mRX2ylXK2HwL6NuVasABlO34QPLddsn6nwDiDP7sBDd4TW1VWmCn16bfDYuVbJOWchANHr+ySv8yRw=
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:(4636009)(136003)(396003)(39860400002)(376002)(346002)(36840700001)(46966006)(26005)(82310400003)(53546011)(82740400003)(6512007)(54906003)(70586007)(36860700001)(2616005)(336012)(70206006)(6862004)(107886003)(4326008)(316002)(33656002)(8676002)(86362001)(36756003)(186003)(8936002)(5660300002)(83380400001)(81166007)(478600001)(6506007)(356005)(2906002)(6486002)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 08:07:31.5606
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ab8344c4-0e4d-42bb-bb69-08d9049c837e
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:
	VE1EUR03FT003.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5153

SGkgSmFuLA0KDQo+IE9uIDIwIEFwciAyMDIxLCBhdCA0OjM2IHBtLCBKYW4gQmV1bGljaCA8amJl
dWxpY2hAc3VzZS5jb20+IHdyb3RlOg0KPiANCj4gT24gMjAuMDQuMjAyMSAxNTo0NSwgUmFodWwg
U2luZ2ggd3JvdGU6DQo+Pj4gT24gMTkgQXByIDIwMjEsIGF0IDE6MzMgcG0sIEphbiBCZXVsaWNo
IDxqYmV1bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+Pj4gT24gMTkuMDQuMjAyMSAxMzo1NCwgSnVs
aWVuIEdyYWxsIHdyb3RlOg0KPj4+PiBGb3IgdGhlIHRpbWUgYmVpbmcsIEkgdGhpbmsgbW92ZSB0
aGlzIGNvZGUgaW4geDg2IGlzIGEgbG90IGJldHRlciB0aGFuIA0KPj4+PiAjaWZkZWYgb3Iga2Vl
cCB0aGUgY29kZSBpbiBjb21tb24gY29kZS4NCj4+PiANCj4+PiBXZWxsLCBJIHdvdWxkIHBlcmhh
cHMgYWdyZWUgaWYgaXQgZW5kZWQgdXAgYmVpbmcgI2lmZGVmIENPTkZJR19YODYuDQo+Pj4gSSB3
b3VsZCBwZXJoYXBzIG5vdCBhZ3JlZSBpZiB0aGVyZSB3YXMgYSBuZXcgQ09ORklHXyogd2hpY2gg
b3RoZXINCj4+PiAoZnV0dXJlKSBhcmNoLWVzIGNvdWxkIHNlbGVjdCBpZiBkZXNpcmVkLg0KPj4g
DQo+PiBJIGFncmVlIHdpdGggSnVsaWVuIG1vdmluZyB0aGUgY29kZSB0byB4ODYgZmlsZSBhcyBj
dXJyZW50bHkgaXQgaXMgcmVmZXJlbmNlZCBvbmx5IGluIHg4NiBjb2RlDQo+PiBhbmQgYXMgb2Yg
bm93IHdlIGFyZSBub3Qgc3VyZSBob3cgb3RoZXIgYXJjaGl0ZWN0dXJlIHdpbGwgaW1wbGVtZW50
IHRoZSBJbnRlcnJ1cHQgcmVtYXBwaW5nDQo+PiAodmlhIElPTU1VIG9yIGFueSBvdGhlciBtZWFu
cykuICANCj4+IA0KPj4gTGV0IG1lIGtub3cgaWYgeW91IGFyZSBvayB3aXRoIG1vdmluZyB0aGUg
Y29kZSB0byB4ODYuDQo+IA0KPiBJIGNhbid0IGFuc3dlciB0aGlzIHdpdGggInllcyIgb3IgIm5v
IiB3aXRob3V0IGtub3dpbmcgd2hhdCB0aGUgYWx0ZXJuYXRpdmUNCj4gd291bGQgYmUuIEFzIHNh
aWQsIGlmIHRoZSBhbHRlcm5hdGl2ZSBpcyBDT05GSUdfWDg2ICNpZmRlZi1hcnksIHRoZW4geWVz
Lg0KPiBJZiBhIHNlcGFyYXRlIENPTkZJR18qIGdldHMgaW50cm9kdWNlZCAoYW5kIHNlbGVjdGVk
IGJ5IFg4NiksIHRoZW4gYQ0KPiBzZXBhcmF0ZSBmaWxlIChnZXR0aW5nIGJ1aWx0IG9ubHkgd2hl
biB0aGF0IG5ldyBzZXR0aW5nIGlzIHkpIHdvdWxkIHNlZW0NCj4gYmV0dGVyIHRvIG1lLg0KDQpJ
IGp1c3QgbWFkZSBhIHF1aWNrIHBhdGNoLiBQbGVhc2UgbGV0IG1lIGtub3cgaWYgYmVsb3cgcGF0
Y2ggaXMgb2suIEkgbW92ZSB0aGUgZGVmaW5pdGlvbiB0byAgInBhc3N0aHJvdWdoL3g4Ni9pb21t
dS5j4oCdIGZpbGUuDQoNCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2ku
YyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jDQppbmRleCA3MDUxMzdmOGJlLi4xOTlj
ZTA4NjEyIDEwMDY0NA0KLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCisrKyBi
L3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jDQpAQCAtMTMwMywxMyArMTMwMyw2IEBAIHN0
YXRpYyBpbnQgX19pbml0IHNldHVwX2R1bXBfcGNpZGV2cyh2b2lkKQ0KIH0NCiBfX2luaXRjYWxs
KHNldHVwX2R1bXBfcGNpZGV2cyk7DQogDQotaW50IGlvbW11X3VwZGF0ZV9pcmVfZnJvbV9tc2ko
DQotICAgIHN0cnVjdCBtc2lfZGVzYyAqbXNpX2Rlc2MsIHN0cnVjdCBtc2lfbXNnICptc2cpDQot
ew0KLSAgICByZXR1cm4gaW9tbXVfaW50cmVtYXANCi0gICAgICAgICAgID8gaW9tbXVfY2FsbCgm
aW9tbXVfb3BzLCB1cGRhdGVfaXJlX2Zyb21fbXNpLCBtc2lfZGVzYywgbXNnKSA6IDA7DQotfQ0K
LQ0KIHN0YXRpYyBpbnQgaW9tbXVfYWRkX2RldmljZShzdHJ1Y3QgcGNpX2RldiAqcGRldikNCiB7
DQogICAgIGNvbnN0IHN0cnVjdCBkb21haW5faW9tbXUgKmhkOw0KZGlmZiAtLWdpdCBhL3hlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv
eDg2L2lvbW11LmMNCmluZGV4IGI5MGJiMzFiZmUuLmNmNTFkZWM1NjQgMTAwNjQ0DQotLS0gYS94
ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYw0KKysrIGIveGVuL2RyaXZlcnMvcGFz
c3Rocm91Z2gveDg2L2lvbW11LmMNCkBAIC0zNDAsNiArMzQwLDEzIEBAIGJvb2wgYXJjaF9pb21t
dV91c2VfcGVybWl0dGVkKGNvbnN0IHN0cnVjdCBkb21haW4gKmQpDQogICAgICAgICAgICAgbGlr
ZWx5KCFwMm1fZ2V0X2hvc3RwMm0oZCktPmdsb2JhbF9sb2dkaXJ0eSkpOw0KIH0NCiANCitpbnQg
aW9tbXVfdXBkYXRlX2lyZV9mcm9tX21zaSgNCisgICAgc3RydWN0IG1zaV9kZXNjICptc2lfZGVz
Yywgc3RydWN0IG1zaV9tc2cgKm1zZykNCit7DQorICAgIHJldHVybiBpb21tdV9pbnRyZW1hcA0K
KyAgICAgICAgICAgPyBpb21tdV9jYWxsKCZpb21tdV9vcHMsIHVwZGF0ZV9pcmVfZnJvbV9tc2ks
IG1zaV9kZXNjLCBtc2cpIDogMDsNCit9DQorDQogLyoNCiAgKiBMb2NhbCB2YXJpYWJsZXM6DQog
ICogbW9kZTogQw0KZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oIGIveGVuL2lu
Y2x1ZGUveGVuL2lvbW11LmgNCmluZGV4IGVhMGNkMGYxYTIuLmJkNDJkODdiNzIgMTAwNjQ0DQot
LS0gYS94ZW4vaW5jbHVkZS94ZW4vaW9tbXUuaA0KKysrIGIveGVuL2luY2x1ZGUveGVuL2lvbW11
LmgNCkBAIC0yNDMsNyArMjQzLDYgQEAgc3RydWN0IGlvbW11X29wcyB7DQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdTggZGV2Zm4sIGRldmljZV90ICpkZXYpOw0KICNpZmRlZiBDT05GSUdf
SEFTX1BDSQ0KICAgICBpbnQgKCpnZXRfZGV2aWNlX2dyb3VwX2lkKSh1MTYgc2VnLCB1OCBidXMs
IHU4IGRldmZuKTsNCi0gICAgaW50ICgqdXBkYXRlX2lyZV9mcm9tX21zaSkoc3RydWN0IG1zaV9k
ZXNjICptc2lfZGVzYywgc3RydWN0IG1zaV9tc2cgKm1zZyk7DQogI2VuZGlmIC8qIEhBU19QQ0kg
Ki8NCiANCiAgICAgdm9pZCAoKnRlYXJkb3duKShzdHJ1Y3QgZG9tYWluICpkKTsNCkBAIC0yNzIs
NiArMjcxLDcgQEAgc3RydWN0IGlvbW11X29wcyB7DQogICAgIGludCAoKmFkanVzdF9pcnFfYWZm
aW5pdGllcykodm9pZCk7DQogICAgIHZvaWQgKCpzeW5jX2NhY2hlKShjb25zdCB2b2lkICphZGRy
LCB1bnNpZ25lZCBpbnQgc2l6ZSk7DQogICAgIHZvaWQgKCpjbGVhcl9yb290X3BndGFibGUpKHN0
cnVjdCBkb21haW4gKmQpOw0KKyAgICBpbnQgKCp1cGRhdGVfaXJlX2Zyb21fbXNpKShzdHJ1Y3Qg
bXNpX2Rlc2MgKm1zaV9kZXNjLCBzdHJ1Y3QgbXNpX21zZyAqbXNnKTsNCiAjZW5kaWYgLyogQ09O
RklHX1g4NiAqLw0KIA0KICAgICBpbnQgX19tdXN0X2NoZWNrICgqc3VzcGVuZCkodm9pZCkNCg0K
UmVnYXJkcywNClJhaHVsDQo+IA0KPiBKYW4NCg0K


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 08:16:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 08:16:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114150.217406 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ81x-0001Ex-13; Wed, 21 Apr 2021 08:16:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114150.217406; Wed, 21 Apr 2021 08:16:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ81w-0001Eq-Ty; Wed, 21 Apr 2021 08:16:16 +0000
Received: by outflank-mailman (input) for mailman id 114150;
 Wed, 21 Apr 2021 08:16:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZ81v-0001El-C2
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 08:16:15 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c82d378e-242f-4625-8fe3-dd663cfaa482;
 Wed, 21 Apr 2021 08:16: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: c82d378e-242f-4625-8fe3-dd663cfaa482
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618992973;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ER5CdPYKgx9ct46QfFtZNx+DHMRByXsTv+2duyRv1Oc=;
  b=FyYwuqC7cSeKeD2Ip5SsdPnLv5e68fNQAuHS8anHDxq19jWwBLc8yC08
   UNnijXx8kq8fzw2ZlNFoFjI7FC2iHEdafPCZMluuXsBYYzchpf4jaXhqi
   x/arOfg5J4kr8rHXl44oa7L38SVdKVa4jPf347cUO0OiTbcVNH/nYYFr3
   o=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ryg0IIhZC8q+Y/S3O9N+C+Xu9KRjwbaf2CzgjGU+ePlYzhweJIKpdSze4qStaR3SSCn+iNnhHy
 dnwS5EBDRlMGM2UA3iu74JsSwk35ylwyfZ35whOxxEsTXCloiMJLDLaSZVbfoSFDQ0WVR37GMU
 MSbaeXhvT/OLf3qDB9Yt1GazqIJWF53BykN+RCxUy1uZNV3x9TwL88ezC3MkGkedXzayFGisis
 D3P3h+k8BXngazJhUTVy/UZZjFIJzoTZuDMWCQA7rROm+VB9N6Ol+8AlfZtGfnpwttyhij49ea
 /eI=
X-SBRS: 5.2
X-MesageID: 42182168
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:WJ++la33TKcGyZuscjx3UwqjBQJ3eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/FIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmtJ1/Z
 xLN5JzANiYNzVHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcBdxi1SYzzrdXFebg9AGJY/Cd
 6w5tBfoSChZHQQaa2AdwM4dsLEoMDGk4+jXAUPAAQp5BLLoTSj7rP7FBbw5GZibxpkx7A+/W
 /Z1zHo/6nLiYDB9jbw9U/2q65Xltzo18dZCKW35PQ9Bz3whm+TFeZccpKYujRdmpDL1H8Ll5
 32rw4kL4BP7RrqDx2IiD/M/yWl7zo08X/lzjaj8AveiOj0XigzBcYEpa8xSGqh12MasNtx0L
 1G0gui3vI9Z3Ow/1WO2/HyWx5njUayq3Y5+NRj90B3aocCdKRX6bUW4UI9KuZwIAvB9IslHO
 NyZfusgsp+TFXyVQG8gkBfhPaoXng1Ay6cRFkDtsG/w1Ft7Q5E5npd68oFknga8pUhD7FC+u
 TfK6xt0IpDV8kMcMtGdas8aPryLlaIbQPHMWqUL1iiPKYbO0jVo5qyxLku/umldLEB0ZNaou
 WPbHpo8UoJP27+A8yH25NGtjrXRn+mYDjrwsZCo7Bkp7zVXtPQQG2+YWFrt/Hlj+QUA8XdVf
 r2EolRGeXfIWznHpsM9xHiWqNVNWIVXKQuy5cGcmPLhviOBpzht+TdfvqWDqHqCywYVmT2BW
 ZGcyP0IOlG80C3Sl71iBXcQBrWCw7C1KM1NJKf0/kYyYALOIEJmBMSk06F6saCLiAHkqFeRj
 o6HJrX1oeA4UWm92fB6GtkfjBHCFxO3bnmW3RW4SsDM0b+d6c/q8ySEFoimEevF1tadYf7AQ
 Rfr1N49eacNJqL3x0vDNqhLya8g2YMommJC7MRgLeK68ugWp5QNOdpZIVBUSHwUzBlkwdjr2
 lOLCUeQFXEKz/ogaK5yLoOBO/ecNF4qByxIdFdrE/esUn0n7BtelIrGxqVFeKHiwcnQDRZwn
 dr9bUEvbaGkTGzbVckjP8AK11KYmSPCLdgBACIDb8k3YzDSUVVdyOnlDaagxY8di7P+18Jjm
 LsFyGSZMrGG0FQoHxez6bs/m5lb2n1RTMCVllK9alGUUjWsHd61uGGIpC+1GaccXMu6OAQOj
 OtW0pYHipeg/SMkDKFkjeLEnsrgqg0NuvGFbI5bvX4wXW2MrCFkqkAAt5Z9JtoL8rVr+cOSO
 6TEjXlag/QOqcM4Ui4t3wlMC57pD0YivvuwgTi93X983glA/beSW4WMY0zEpW51SzDSPmJ2p
 ki0o5wkuu0L2nratmJjYvQdCVOLxvPoWiwC8EkwKokyZ4ahf9WJd38VzCN6VRsmDMZB+3wnF
 kFQKt67KvaU7UfN/A6SmZ8xB4RiN+LLEEXqQT4De81QEE1gxbgTqa0youNjYBqP1aIqwTxM2
 SO6iFx///KWC2YyL4RYphAVlh+WQwZ6H54+vmFeJCVIAK2d/tb9F7SCA72TJZtDIyEE64XtB
 B0/pWhmPKWbTPx3ET1sSFgKqxDt0ahTsXaOnPAJcd4t/i7M0+LmK2k/Yqaiyr2UyKybwAgvr
 J+HHZgJ/hru30Fl4040i+7V6zxrAYEqjJlkE5av2+o/JOn7mfdFVxBKivDjPxtLGBuDkQ=
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="42182168"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fDQnPucBAkK1Rp11zQzMgf2yJo5kdMmfnmRGpr603hwjYqDdd+0Nlmwil6y6/ksobgq/YVYHUN0aEo+hgR7986Pu26P3wn5GNt81HYnqgAgnkyv6mb1Ghv8FlbD+/XLu9Mxp3VuGRid8uXu1PFJxvwYavvbq8KpxUCZH5h0sfVZmHoBXUYA97bUs6IwTbhcGHdHzvFeytM+536H9wqsdXVqgBhWbpiLgtpGCYER6CTbbmYXpiiTUMSXQSZz+ViPNm98rkn7TAwtxP/CClugKLjtM2QJLLTZ4K7nYROPn4yJeX9Gu9E+dIJnzxH9TNX7LiCywhtgigNdZwRU/AHbZ5A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=U2hRAq3+YX7RJRkWS1dDJjmY2yeL5As8KH5f4C7/470=;
 b=AlFV5n1om9op7huEyR1Fq91gBdEmghfiPI+XwrCdw6nsC+8FiNCDxew5wSFjFpi1aLiuBIF/Z6OjrOyowLAC2Aky9oNOM1O7SQIKXaX2WrihJf2Msml4bXoIdX8BZ1LV7hblfPs4ZnGSs81JFKkE66Ht5xmoN5IFeUlda/wUQJgtgEIIHCYM629abAgEt2QPLfmEg1cqVHtJIlqyNjOtvlb6ujebDgW/+IdkfkSxOwcB0MXip4XB5zh1RfHpVyWmnLjjDUWEv6/f/K/wgwfAI3CuIQnC6SmY2kH2+yBZs9sTib7euAfvkwoFRYKwXDibcnOOFI7txyOLD06wBlnZcg==
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=U2hRAq3+YX7RJRkWS1dDJjmY2yeL5As8KH5f4C7/470=;
 b=S9LDcBempl1kcSyz1Rc1Akh2G2WSi0D+SV4F2kZvJqE9X7Wn6YKYqUw45nvk0pa8POrYRpZ1wUamERQwzf5rQOSX7TL9fu5DSHtRvQ7Ot0EvZSoX0yNh1W9mn4jW+Ntm77J/JUtRrGoApf2XGNLX9f7vYaSwh5S+d4zLJXvbmP4=
Date: Wed, 21 Apr 2021 10:16:02 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Rahul Singh <Rahul.Singh@arm.com>
CC: Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>, xen-devel
	<xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Wei
 Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Stefano Stabellini <sstabellini@kernel.org>, Paul
 Durrant <paul@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Message-ID: <YH/fQpgEQyhiaj1Y@Air-de-Roger>
References: <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
 <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
 <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
 <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
X-ClientProxiedBy: PR3P189CA0066.EURP189.PROD.OUTLOOK.COM
 (2603:10a6:102:b4::11) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8bd3c029-bf85-463e-8b0f-08d9049db86e
X-MS-TrafficTypeDiagnostic: DM6PR03MB4843:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4843F63C2ECC43E851FDA96A8F479@DM6PR03MB4843.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: fkigz1UFQKK3NP+vR3CYaLWt4ExWyIW4ynq5awr91DPfsPUfwRawoMeJLrJBhQEJtim9btj9x/NUeYaETRRQmXWVf+JWz+RacdULROns96RfWJLqC7O+U+srpegugb1pF3fgRqRYRhhE6GbcAgMwDLeHGq70cUvV9okmOJ4G+5onlVPfkm9wCEHNBkR3p2oQqvdCwshHUhUTqHjwiFKSvC2eIA3B9c8OrToqAG0qQQsycPNW5aQ+B/kUsCKhNtMhLByDe4nubijIiu25JYaIMc1qQJOICd8+tCKAa0H6ZxSpssjUbPquvy6+1Oca/Fok7YKFLyI2+CwAbCCf2s3pYRoylql/LOJ/rADV9W9QJwFymsTV1P7VeO5fWDrtg1XuC8J/Gkv0HhcH0JwdWcJ4Nck/mYpbWwIGvsMdMkI+bE2xp81LTtM/ZI77T3IrL0OFfmam6BiUc1pZ09fTV697D7N0JnzAlPn5/GpSWsrv4a+sfjrqHZMwCdlFPqeArcujrzSN7V0GWO4eo/V8EN1WQ9nxwH/gv46XwJG9CAxWu6JFvuDO8+zcNfF8nHy2kagUuYjhPTbKqA3+DeDDvjiyMg==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(366004)(346002)(39850400004)(396003)(376002)(86362001)(6666004)(7416002)(54906003)(316002)(66476007)(53546011)(26005)(66946007)(33716001)(6916009)(83380400001)(4326008)(85182001)(6486002)(9686003)(5660300002)(6496006)(16526019)(2906002)(956004)(8676002)(66556008)(38100700002)(478600001)(186003)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 8bd3c029-bf85-463e-8b0f-08d9049db86e
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 08:16:10.2017
 (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: Hf6kKyRDi1DKznkewPrQrjFcNUGJMRzbK9bodsM6lke2E0IYkEn2sXZ/u8a0iW6SsjEYga6ErsoFX+11EsKQNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4843
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 08:07:08AM +0000, Rahul Singh wrote:
> Hi Jan,
> 
> > On 20 Apr 2021, at 4:36 pm, Jan Beulich <jbeulich@suse.com> wrote:
> > 
> > On 20.04.2021 15:45, Rahul Singh wrote:
> >>> On 19 Apr 2021, at 1:33 pm, Jan Beulich <jbeulich@suse.com> wrote:
> >>> On 19.04.2021 13:54, Julien Grall wrote:
> >>>> For the time being, I think move this code in x86 is a lot better than 
> >>>> #ifdef or keep the code in common code.
> >>> 
> >>> Well, I would perhaps agree if it ended up being #ifdef CONFIG_X86.
> >>> I would perhaps not agree if there was a new CONFIG_* which other
> >>> (future) arch-es could select if desired.
> >> 
> >> I agree with Julien moving the code to x86 file as currently it is referenced only in x86 code
> >> and as of now we are not sure how other architecture will implement the Interrupt remapping
> >> (via IOMMU or any other means).  
> >> 
> >> Let me know if you are ok with moving the code to x86.
> > 
> > I can't answer this with "yes" or "no" without knowing what the alternative
> > would be. As said, if the alternative is CONFIG_X86 #ifdef-ary, then yes.
> > If a separate CONFIG_* gets introduced (and selected by X86), then a
> > separate file (getting built only when that new setting is y) would seem
> > better to me.
> 
> I just made a quick patch. Please let me know if below patch is ok. I move the definition to  "passthrough/x86/iommu.c” file.
> 
> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> index 705137f8be..199ce08612 100644
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -1303,13 +1303,6 @@ static int __init setup_dump_pcidevs(void)
>  }
>  __initcall(setup_dump_pcidevs);
>  
> -int iommu_update_ire_from_msi(
> -    struct msi_desc *msi_desc, struct msi_msg *msg)
> -{
> -    return iommu_intremap
> -           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
> -}
> -
>  static int iommu_add_device(struct pci_dev *pdev)
>  {
>      const struct domain_iommu *hd;
> diff --git a/xen/drivers/passthrough/x86/iommu.c b/xen/drivers/passthrough/x86/iommu.c
> index b90bb31bfe..cf51dec564 100644
> --- a/xen/drivers/passthrough/x86/iommu.c
> +++ b/xen/drivers/passthrough/x86/iommu.c
> @@ -340,6 +340,13 @@ bool arch_iommu_use_permitted(const struct domain *d)
>              likely(!p2m_get_hostp2m(d)->global_logdirty));
>  }
>  
> +int iommu_update_ire_from_msi(
> +    struct msi_desc *msi_desc, struct msi_msg *msg)
> +{
> +    return iommu_intremap
> +           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
> +}
> +
>  /*
>   * Local variables:
>   * mode: C
> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
> index ea0cd0f1a2..bd42d87b72 100644
> --- a/xen/include/xen/iommu.h
> +++ b/xen/include/xen/iommu.h
> @@ -243,7 +243,6 @@ struct iommu_ops {
>                             u8 devfn, device_t *dev);
>  #ifdef CONFIG_HAS_PCI
>      int (*get_device_group_id)(u16 seg, u8 bus, u8 devfn);
> -    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
>  #endif /* HAS_PCI */
>  
>      void (*teardown)(struct domain *d);
> @@ -272,6 +271,7 @@ struct iommu_ops {
>      int (*adjust_irq_affinities)(void);
>      void (*sync_cache)(const void *addr, unsigned int size);
>      void (*clear_root_pgtable)(struct domain *d);
> +    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);

You also need to move the function prototype
(iommu_update_ire_from_msi) from iommu.h into asm-x86/iommu.h, or
maybe you could just define the function itself as static inline in
asm-x86/iommu.h?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 08:53:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 08:53:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114155.217421 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ8bX-0004io-Sm; Wed, 21 Apr 2021 08:53:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114155.217421; Wed, 21 Apr 2021 08:53:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ8bX-0004ih-OV; Wed, 21 Apr 2021 08:53:03 +0000
Received: by outflank-mailman (input) for mailman id 114155;
 Wed, 21 Apr 2021 08:53:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZ8bW-0004ic-4l
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 08:53:02 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 142f0581-5d81-47d9-9c19-3f2658ac5683;
 Wed, 21 Apr 2021 08:53: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: 142f0581-5d81-47d9-9c19-3f2658ac5683
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618995180;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=wUVbrR4X6MsBe8UWzAQNouDNy/1e0xTUjosLEQ2Vq7g=;
  b=eJXTzelorhRBShaJqEW6McIS4I4dr8KUM+yJBtPg0Z5gnE6vjthrTrl1
   Z2aqQ6y/c2djEjo3JfboxB1YlZzBFTBjoO76sz00GJsMhdn4ekU93XVXC
   F+9nvjSQNOTivrTQirc6OQIMaP+xNhgYQIyQTkm6YJgxV0SJlQ9h1n6Jj
   0=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: +i45jOJgid6M+RLv47Hek0PI+9nzsmjIz9wxTYrkX7MQqfHSM5VN/GcvL1yI6VFNATykaIph27
 F0ECkjJOo1udSkZBqaPVXaNGixM9QRy7ipsQillOFPMP8YGUA49Zg4frAfE0MGWJgm3R50sx8Z
 tN0m94/USr4tx9LzuFcX1b99PilOUh407MEpVJgHXK+0COehZYiMaOnx7YGl/7cDju9uK4703d
 i81qVzc76S5IQhFbrHOQ1IOaTmRUutsYn9+qCOAVpbRH5rkNNoF6I7AvRxX/wtQ1NQrQoNK6XP
 yDI=
X-SBRS: 5.2
X-MesageID: 41891863
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Ox/B3K4KbM8k4sN4igPXwVuEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbDqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH7mGL1MCWPXOoMCOqYL+bXc9dmQawSStrRft0r71FBCEwgwTOgkv/Z4O+X
 XI+jaJg5mLnOq8znbnpgvuxrRQ3ODs095SQPGL4/JlVgnEriaNSMBfV6aZvDYzydvfmGoCtN
 XXuR8vM4BSxhrqDxmIiCDg0QXhzzoigkWKoTTz7AqB0K6JNg4SMMZPiZlUdRHU8SMbzapB+Z
 lGwn6DsN5vBQ7A9R6NluTgbQ1glUa/vBMZ4JcupkFYOLFuD4N5nMg0+UNYF4o4ByTq6IwrO/
 kGNrCj2N9mNXyddHzXpW9p3ZiFWWkyBA6PRgw4ttWSyCU+pgE082IogOgk2lsQ/pM0TJdJo8
 zCL6RTjblLCusbd7h0CustSda+Y1a9Di7kASa3GxDKBasHM3XCp9rc+7Mu/tynf5QO0d8bhI
 nBeEkwjx9zR2veTem1mLFb+BHER2uwGR73zNtF2pR/srrgAJL2LCy4Tkw0mcfImYRfPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFOIPvNIWXE+Pv9LrJoXmuvezSoeQGJPdVRIfHk/vCH
 oKWzb+YO9a6FqwZ3P+iB/NH1PhE3aPuK5YIez/xaw+2YINPopDvkw+klKi/PyGLjVEr+gTdE
 t6K7X3r7OjqQCNjCL1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXmxOwn2dJFtaQ9nNGA
 BS43R7kJjHYaC49GQHMZaKI2iah3wcqDahVJEHgJCO4s/jZ9cfFZYpWKt4EC3RDBxrkQNWqG
 NOATV0BXP3J3fLs+GInZYUDObQe51XmwGwO/NZrnrZqAGhv801f2AaWDSvSMaTpg4rS1Nv9x
 pM2p5apIDFtSekKGM5juh9FFFXcmyYDIhLCxm/aJxOlqrmfxxxSmm2lSWX4itDCVbCxgE3vC
 jMPCeUcfbEDh5mtndU3r3D3Xl0em+eFngAIUxSgMlYLyDrq3xz2eiEau6PyGOXcEIF2fxYGi
 rCeyEuLgRnwM2X2BaZlC2ZL2gvwowjM4XmffIeWoCW/knoBJyDlKkAEfMRwY1sM8r2tPQXFc
 2YYA2YIVrDepUU8j3QgkxgHiZ6qHMpy6y1nDLk6XW1x345D775Jk98S7QSPtGb6CzFSp+zoe
 FEpONwmdH1FGP7LuOi4+XwSRVoLxvIu264T+0ys/lvzOoPnYo2O6OeaCfC0XFM4Q43I8j1nn
 4PWagT2sG1BqZfO+gpPx9D9lUnlN6zPFImnwz/DOg5Z0wshRbgTqS0youNjbokGUuaogTsfX
 GZ7i1G5v/ANhHzn4IyOuYVIW5MblI752kn1OSed5fIAAHvU+1Y5lK1Pjucd7BaIZL1VIk4n1
 Jf49uSmfWQeDe98AfMvSFjKqYLyl2Ze6qJcUuxMN8N1ce7N1SKirar58D2rA6fc0rFV20owa
 tfdUIRacxfjCIFl4Nf6FnqdpDK
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="41891863"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ltL+mKbcNO6ELuUGWhKeDLhDRdxhi8qOWhJ89zyRzpsWXnyaJNz9pjry5cMpQ2krEL+pJNbre92g+pl1D2+bFxsHcstOCilwgJ/NRgHwCFxCZvD0LneeyF8CEWyrmInCRblA7LVIt9mN/I3j795x/npQk9UsthpsRTvfWILvhVqBnrcP9qORLKeGxsUW3TMz+j9d/KmtWoc6JpgliqaBm9CJdkma4bJys23USKvDS/udzA7yyr5nov22wtKBwPBFgAWv4JCGuARamuo987xxLyZlLmQInMhewfPRAT6PdcigjELoGP8Gjx5EXNTeLcDc9f5G+tzmTisGhonsITF8IQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=VSLUUaZ+LeZR2cL3b2vS2vOSstN/bAtcZudGm9it4m4=;
 b=aOI4YjposfSqpTLY970o+llDS05jtQ3DOvqkDFyuXCdiviYEq75yeNLZfRmQNipceDq8IYbCLb3vEwebK/4ydMeBk3oa2ydyf78N+zNtGe40Lor53rqchJeasHtBIgDvZmBXZl+YtIoVBZa1FI6ttBL2PjagKgy0nZlQVrYRpDKTqTFZ0RxmTLj0pXVK5LTumpy9ckCmbVL90/a2p9lki5xnzQpE4wZBBbIwUaymPwSm38XUqeNK7a9OCKSH08JjkBH0ksg858JpQS/dVTmCFzuQJljj2djbHTJYLFw8SAFtfJTHwJGcabGAPfTnB6RcUVRF+avZz6xA7M+652WfCQ==
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=VSLUUaZ+LeZR2cL3b2vS2vOSstN/bAtcZudGm9it4m4=;
 b=FgLMCJGoi9SMRQuoVh+NQT2IxE/+iw5awKdF+EBid7vBAAWGO6sKo46OHYrFbQVxK3nL49mfMLQq0L9YTfIZyBuswm7lWcj0l0OKUbi1bfraLL7dum11ZIPwrrkdp9AfPqKH3NDZZGclj0efPVqDBr8ldie0OsXqTDGetes2mDc=
Date: Wed, 21 Apr 2021 10:52:30 +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/8] x86/EFI: sections may not live at VA 0 in PE binaries
Message-ID: <YH/nzmkQMhsJE4mw@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
X-ClientProxiedBy: PR0P264CA0242.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100::14)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e0517ad6-c6bd-40f1-2ffb-08d904a2ce7f
X-MS-TrafficTypeDiagnostic: DS7PR03MB5463:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5463B95958CD45057ABAB4BA8F479@DS7PR03MB5463.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Ssrm1ZYb0s1NBYJagxKHosYsCnCGKkMPkFHuJnm5TZ2oBY7Gahy8nb7N5ascSzX4q3Pyt49hf3ajYNr0xkRNxG4Pf7sRX4gtmekh4vEOiwm5HNQ9y9sE6FRJI6bgudJMGWeIdnBZpW+2SsSYN/qeA7g9116+eOty85CMLLlDiMIJj/Oe+MKpFwvw1AwPBHHksO6NViaNxW4gfs/CT3z1K+cqT11LdTAc4l7AG48DGwEv+FcVttoW6s9xr/CnwqBPmHxgVokEjWA5eiePslwigYiaEasuUifbvqYuaGlO0LBmFJjeLomXs01BKQ8EdNuJCXvHHF+/qNNUCJAbPVn0IbbX7YBdQ91OgKOhbEWoCXFlrVxEp154NxKnuucDOx44wwyxluLuj4Gfd6Y9/gpMkMW98zFKXjRoK6TDiVsxpJuKXpXWlHa3mZL4P4FF+ehrYS3ikegPpTH/TgugljNC+Gwt7Ng80w2V/b6cXHcC+q+VyL5ecMcJwcfojOVrhKGvM7982IicBSspdXJF8ivxeMEiRDKiLpo+WSFSfSxib7CAk/OfE+x0HoYtmsspcSbgaGG/lYTXO6OF+QUaaIWaX/oYK7W8CyjnVYwHxHea6yY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(346002)(39860400002)(376002)(366004)(136003)(396003)(4326008)(54906003)(26005)(186003)(478600001)(6486002)(5660300002)(6496006)(6666004)(956004)(6916009)(8676002)(316002)(2906002)(16526019)(86362001)(38100700002)(85182001)(33716001)(66476007)(66946007)(9686003)(66556008)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?VFlCMnJ5TExGMFlsemxzcUh6bmcyVEkrK0x0UHFKYVRTbzU1Z2NiUWZJMktB?=
 =?utf-8?B?ZlVWT0xlckE1cVpzT3RmOGNsTTJFZWg2WGh4T21BUHVzeGpNbHg1UHZyakV1?=
 =?utf-8?B?UXRoWWk0eHlpWnljR3JoMzlHZE1aVSs2V0FvTEpiTThVMmYxV0RFRnd2Nnpj?=
 =?utf-8?B?c1MxUHc0N2tVcGlyK2hSaVVXMDR0VS95TWhaaWZFNHBMZ1lLblk2V29xYkNG?=
 =?utf-8?B?S3hPYk1EVHkrZjliMCtXWTE1VTB0Wmk5dXF6WE4yRENmWngwUTV2SVg1RnRi?=
 =?utf-8?B?cGdCMUNYK0Z3czQzaUd6cS82QUdVMGk3SzJjdzZzQnNBWldIMXRMV3psK282?=
 =?utf-8?B?bXFTRE5lcTZnSGFMdEN0OEtudHJBa1BDa3U2ZlFOWXJPUlUzcmtVelpoNVJM?=
 =?utf-8?B?eVFXblUxUkk2OTFLWEFHQlVPQitNL0FRdFlTRC9mTFBnWVZSNjBsZ2I4M3Q1?=
 =?utf-8?B?V3BrS08xTzJSS0crRWhidU5vR3BTbGsyRDNYV3RMd2w3SzRvemlpVHBtRkxB?=
 =?utf-8?B?VXpDWjRBejcvNHBic0k5NnVBYXZxeEgzQXJGSDg3WDRrZDRTRHBGc1JkOVRX?=
 =?utf-8?B?K0NYMG0xaVpIanJLcGxoaExFRW9mc1k3NXFkY2xVRUwxa2VPc3dmV2NJdUM2?=
 =?utf-8?B?OEdTeVlrNHFiejc4RTgyRldFb3RydzdIY3ZZV2pTeU1DSmc4Rm9FUk8xZWFl?=
 =?utf-8?B?akJNdGRER1BmU21ud1VCWkwzOXM2STRhRVpUb2psODdnUmpKMzErL1NTSE1U?=
 =?utf-8?B?a1BoL3JHV0U0UzdtL3U2MFRGNURYN0lwVDFEbXhmM1BLbUdudi9xUGNNMVp3?=
 =?utf-8?B?VWJUcEY1bkJBd0t2Y2ZhUi9xS1ZBUURqbVNoOHRSZEZqb1gzYmhQZEhvcmpH?=
 =?utf-8?B?bkFUVGxvTW9wMTlaVXdRRFJSb0hqTUZSYkw5aG01UHhzVmlOc1kxR3NyUEow?=
 =?utf-8?B?T2ZyL1NFRG9ra1hXQlpQMjMzNFdDWW1xWDgxQkNsdTQzQjZSMlZ6em1kdlUx?=
 =?utf-8?B?TVhjaWY3VUV4VUtzVEJRa2Y5THUvTE1iaUMvZGFOV2NzckhCWEU5QkpIb2l4?=
 =?utf-8?B?MGkyS1l0T29UVE9BNDVNWjVXWVF2SzN6K0YxVVFkYVluL2tTa2ZWM1VBQkRO?=
 =?utf-8?B?blNkOFdFZkUxb3hOb2o2N2ltYkNya1NPeDByVDZiSjl5bEUyb2JVRjVNTFpK?=
 =?utf-8?B?cFJoWTRlZFNqME1RaFM1TWM1TnlNM2JNeDZNN2VzRS9BL1dnbXpzbDREM1A5?=
 =?utf-8?B?T2tGaWhZd1BNZzE4bGVrRGJyT1h3eEVieWx1dU14YkZRY21TODZwRzh2TGlG?=
 =?utf-8?B?RG1NclZ4SW04ay93YXhzZ3MvdVU2NXVuaENERDRlK0VGNUVuSmJZQVJIckhj?=
 =?utf-8?B?ZHlwZWhnQ3I4OXZsZUdIRFBEQWFmeTZsR2MzUVdMZmNic2ZqYWorTm95S0NJ?=
 =?utf-8?B?UlpSaVBwQ25WNlJMTms2TVJkMndzWU5UaDdSV29kb2hKS3l3eWxZeG1yWVVv?=
 =?utf-8?B?aThFL2d6K0p6RzN1bEZGZVNsK3ZiYWcvUVRKMjRKemxXTzRiSHN1ZnNjL01B?=
 =?utf-8?B?c3pyODZMckZtUmpZOTArRGFicnBCV3BFVjZBdmNDUC82N0RqOG9aRURvRGZx?=
 =?utf-8?B?eHM2c3VLY01sZzNRTjFQdTZLT1JtSjUxQVQ1bnZEaVF3TTNoZ2l6SlV1Vng0?=
 =?utf-8?B?c2p0dzhBTTJuN2hTUTdnYXBRR1RGSGpKNkZaVlowQ1pqSWV1Rk1qSVJCYldo?=
 =?utf-8?Q?lUhnvMqXQasLa6tw+yvpnZeayyTewq0G52gdVEk?=
X-MS-Exchange-CrossTenant-Network-Message-Id: e0517ad6-c6bd-40f1-2ffb-08d904a2ce7f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 08:52:34.7610
 (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: c7r0bb4+SIKXPzhpHsvVQ9VqePBoMByk6CEH5QgtIYl9BhLbqdGlk77V9v8p3wkf7D1Fpa0OzlvnLdkENe+8bg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5463
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:44:45AM +0200, Jan Beulich wrote:
> PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
> least 2.36 would silently truncate the (negative) difference when a
> section is placed below the image base. Such sections would also be
> wrongly placed ahead of all "normal" ones. Since, for the time being,
> we build xen.efi with --strip-debug anyway, .stab* can't appear. And
> .comment has an entry in /DISCARD/ already anyway in the EFI case.
> 
> Because of their unclear origin, keep the directives for the ELF case
> though.

It's my understadng thonse sections are only there for debug purposes,
and never part of the final xen binary as they are stripped?

Could we maybe remove the section load address of 0 and instead just
use the (NOLOAD) directive?

Does it really matter to place them at address 0?

I also wonder, is this change fixing some existing bug, or it's just a
cleanup change?

I also only see the .comment section in my binary output, so maybe
it's fine to just remove them from the script?

Does the Arm linker script need a similar treatment?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:02:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:02:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114161.217436 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ8k8-0005jl-Pb; Wed, 21 Apr 2021 09:01:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114161.217436; Wed, 21 Apr 2021 09:01: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 1lZ8k8-0005je-M6; Wed, 21 Apr 2021 09:01:56 +0000
Received: by outflank-mailman (input) for mailman id 114161;
 Wed, 21 Apr 2021 09:01:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ8k7-0005jZ-4C
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:01:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b3d9a00f-bdbe-4b65-a763-7a959b4d637a;
 Wed, 21 Apr 2021 09:01:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 702FBB1FD;
 Wed, 21 Apr 2021 09:01: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: b3d9a00f-bdbe-4b65-a763-7a959b4d637a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618995713; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=665YTB6/AiRmXP0ytNCZ50BcWCbq1ij67+hhBzIqmYQ=;
	b=NR2zfIUMnKMRKHkr2elZwwxjKDW/Id/x5VvWUtB0P7s4gkO36BedfMOYtiN0vngwmLzg1y
	l3stDUpY8GFwlc9of3waJPrHSIWmkrjs4U25lVsf8X076O0J4K7EpiyZ6rF69E9F0joLxM
	modC1SxaDSpzQ91UeI41qLlYjIWZoTw=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: Rahul Singh <Rahul.Singh@arm.com>
Cc: Julien Grall <julien@xen.org>, xen-devel
 <xen-devel@lists.xenproject.org>, Bertrand Marquis
 <Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <e4ca856b19d9128cae5f6aa4ace550ace17fd877.1617977720.git.rahul.singh@arm.com>
 <YHQlptvoC06rqNhQ@Air-de-Roger>
 <f7659788-ff1b-23dd-e838-b35ae8ef9e50@xen.org>
 <YHaiW4xX0p6ov2Z9@Air-de-Roger>
 <258c91c7-e733-3c40-5e4e-7b107e4d20c3@xen.org>
 <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
 <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
 <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
 <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <45147776-10a2-7e8f-3135-6a5a2f8f921a@suse.com>
Date: Wed, 21 Apr 2021 11:01:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 10:07, Rahul Singh wrote:
> Hi Jan,
> 
>> On 20 Apr 2021, at 4:36 pm, Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 20.04.2021 15:45, Rahul Singh wrote:
>>>> On 19 Apr 2021, at 1:33 pm, Jan Beulich <jbeulich@suse.com> wrote:
>>>> On 19.04.2021 13:54, Julien Grall wrote:
>>>>> For the time being, I think move this code in x86 is a lot better than 
>>>>> #ifdef or keep the code in common code.
>>>>
>>>> Well, I would perhaps agree if it ended up being #ifdef CONFIG_X86.
>>>> I would perhaps not agree if there was a new CONFIG_* which other
>>>> (future) arch-es could select if desired.
>>>
>>> I agree with Julien moving the code to x86 file as currently it is referenced only in x86 code
>>> and as of now we are not sure how other architecture will implement the Interrupt remapping
>>> (via IOMMU or any other means).  
>>>
>>> Let me know if you are ok with moving the code to x86.
>>
>> I can't answer this with "yes" or "no" without knowing what the alternative
>> would be. As said, if the alternative is CONFIG_X86 #ifdef-ary, then yes.
>> If a separate CONFIG_* gets introduced (and selected by X86), then a
>> separate file (getting built only when that new setting is y) would seem
>> better to me.
> 
> I just made a quick patch. Please let me know if below patch is ok. I move the definition to  "passthrough/x86/iommu.c” file.

This patch on its own looks okay, but assumes you've already taken the
decision that no proper new CONFIG_* would want introducing. That
decision, however, touches (aiui) more than just this one hook.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:03:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:03:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114170.217447 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ8lo-0005s8-8j; Wed, 21 Apr 2021 09:03:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114170.217447; Wed, 21 Apr 2021 09: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 1lZ8lo-0005s1-5o; Wed, 21 Apr 2021 09:03:40 +0000
Received: by outflank-mailman (input) for mailman id 114170;
 Wed, 21 Apr 2021 09:03: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 1lZ8ln-0005rw-FK
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:03: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 1lZ8ln-0003tN-AK; Wed, 21 Apr 2021 09:03:39 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZ8ln-0004PM-2v; Wed, 21 Apr 2021 09: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=cvgkbdI/kjFRa3Ce0DDZ2MT/+NXb1k3YJicVzsyszOk=; b=ml9uUk9TUBXenHrg/IRvEDmltj
	6q87zvBFQkJxqPnASCO4YebZftgGdwozjV5qAYqk5h5+YmOOrUVzeverMWADFx1FcpxsnLFj+J7Hd
	LkcuEIORWsaXb86WPCnFZW0bSKEHiMx3RktYWOIq8P8KmBn9EXrVW5F0dBDOoFS1hZ4w=;
Subject: Re: Discussion of Xenheap problems on AArch64
To: Henry Wang <Henry.Wang@arm.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Wei Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>
References: <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>
From: Julien Grall <julien@xen.org>
Message-ID: <cdde98ca-4183-c92b-adca-801330992fc5@xen.org>
Date: Wed, 21 Apr 2021 10:03:37 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 21/04/2021 07:28, Henry Wang wrote:
> Hi,

Hi Henry,

> 
> We are trying to implement the static memory allocation on AArch64. Part of
> this feature is the reserved heap memory allocation, where a specific range of
> memory is reserved only for heap. In the development process, we found a
> pitfall in current AArch64 setup_xenheap_mappings() function.
> 
> According to a previous discussion in community
> https://lore.kernel.org/xen-devel/20190216134456.10681-1-peng.fan@nxp.com/,
> on AArch64, bootmem is initialized after setup_xenheap_mappings(),
> setup_xenheap_mappings() may try to allocate memory before memory has been
> handed over to the boot allocator. If the reserved heap memory allocation is
> introduced, either of below 2 cases will trigger a crash:
> 
> 1. If the reserved heap memory is at the end of the memory block list and the
> gap between reserved and unreserved memory is bigger than 512GB, when we setup
> mappings from the beginning of the memory block list, we will get OOM caused
> by lack of pages in boot allocator. This is because the memory that is reserved
> for heap has not been mapped and added to the boot allocator.
> 
> 2. If we add the memory that is reserved for heap to boot allocator first, and
> then setup mappings for banks in the memory block list, we may get a page which
> has not been setup mapping, causing a data abort.

There are a few issues with setup_xenheap_mappings(). I have been 
reworking the code on my spare time and started to upstream bits of it. 
A PoC can be found here:

https://xenbits.xen.org/gitweb/?p=people/julieng/xen-unstable.git;a=shortlog;h=refs/heads/pt/dev

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:11:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:11:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114175.217460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ8tM-0006qK-2b; Wed, 21 Apr 2021 09:11:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114175.217460; Wed, 21 Apr 2021 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 1lZ8tL-0006qD-Vd; Wed, 21 Apr 2021 09:11:27 +0000
Received: by outflank-mailman (input) for mailman id 114175;
 Wed, 21 Apr 2021 09:11:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZ8tK-0006q8-Ei
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:11:26 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d78682fb-bb09-4650-ad4d-9590ea78b040;
 Wed, 21 Apr 2021 09:11: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: d78682fb-bb09-4650-ad4d-9590ea78b040
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618996285;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Ql8PikM4+9znwimw8PJ4OaTjEEx190FMrCdg1aI5QSk=;
  b=AUoHtbYLfIip5rKc779LdWmbrcuHV+dFcvD8OgoWrr0+8/FxXxGZAncZ
   wJyMX5zIlIEl0tR51yX9IErzFiz289EEvhg8fPvEkjzsNnQABHorCHLm0
   FycG7Xx4l6ksP9vX0PAoXxvqbk7QgnFIghmw7m1fRr8/vN7kdYln+CQB8
   w=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: bNx6acyhtKistrICTYJawBDDbyO2UL2dudq6H0zXkBEthXJ9SpI4xAA09kTo52MzG008JEjPwX
 LBDKDu2GYGxRmoIN4pFZAqrH1JQsx60lkLBKyqW5ZyOFCrEEqyL9HcuNTi0FnVDxzMyq9EPRSs
 79kgVzSuMHEloUhzsED/wCjRRUaqQZR1TnJ+wjAk735WKobRXD5XNMX7CQX0PrSUBgASTIWAo0
 lJqrz1rwquwYwbR1hUQhyN0wWlqCRNtMvFQA4Iw4bbUYAwO240CknVWZQWevna9XvAfailX1bo
 02k=
X-SBRS: 5.2
X-MesageID: 42443691
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:z1DLxKmV1tE9Tlh6Mb8ry4DhJC7pDfO9j2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN/AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 tdWoBEIpnLAVB+5PyW3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0ZNi+wOCRNNW57LLA+E4
 eR4dcCijq7YHIMbtm6AH5tZZm4m/TgkpX6bRkaQyM28QXmt0LS1JfWMTi9mi0fXTRG3Ks4/Q
 H+/TDRy62/v5iAu33h/kDJ6ZA+oqqF9vJiA4i2htEROnHQjG+TFflccpmjmBxwn+218lYtl7
 D30mYdFuB+8WnYcG3wgTaF4XiY7B8U53XvyUCVjBLYyKSTLlJKaLszuatjfhTU8EYmtt1nuZ
 g7p16xjJZLEQjG2B30+tmgbWAVqmOPvXEgneQP5kYvN7c2Vbk5l/16wGplVL0EHC789bk9Fv
 hvAMz29J9tACynRkGckW91zNO2WHMvWj+AX0gZo8SQlwNbhXZj0iIjtYEit0ZF0Kh4Z4hP5u
 zCPKgtvLZSTvUOZaY4IOsaW8O4BkHEXBqkChPfHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ
 PdFHtFqG8bYSvVeIyz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykvGnv+4UDqTgKr
 iOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+dEmJpu7NN432ps3WePveP9PWYHUZc1K6Jk
 FGcCn4Jc1G4EzucGT/mgLtV3TkfVG63Z8YKtmZw8EjjKw2cqFcuAkcjlq0ouuRLydZj6AwdE
 xiZJfukqaxo3iK7X/Fhl8ZfyZ1PwJw2vHNQnlKrQgFPwffarAYoeiSfmhUwT+hKgJgSdjVVC
 pSvU5+967yD5H4/1FsN/uXdkahy1cDrnODSJkR3oeZ493+R58+BpE6HIprFQvKEBRxsR1wqH
 hKbTIFQkO3LEKvtYyVyLgvQM3Pfdh1hwmmZeROr2jEiEmarcYzAkcAUyWWSs6RiwY2Tz9yjl
 l8mpVvxIaoqHKKEy8Ske44OFpDZCCyDKhdBAqIXolSh4vmYRp9V2uMmDychSwiY2aCzTRjuk
 XRaQmvPd3bCFtUvX5Vlpzn9155bU2xVUN9YHISi/w0KU32/lJIlcObbKu61GWcLmYYyuYGKT
 fffH85OQV13e260xaThRePHXgr3Y8VI+TYFbgvGoujnU+FGcmtr+UrDvVU9JFqOJTSqecNS/
 uYYBLQAzXiCe8lsjbl0UoNCW1Rkj0Dnvzp0hG+szT98347HPbIIFNpA5scOMqR6mD4R/COlL
 V15OhFyNeYAyHUUJqhz6qSUhtobjX0ikSyR/szqZ9Vsbkp3YEDVqXzYH/t7jV/wB46LM3Ij0
 sQT6Rw3aDZNuZUDr4vUhMc2mBsqc+GI0QquDHnG+MSfVkiiHnAItOCioC43YYHMwmkpAHqP0
 OY/DAY1/DZXzGb3bpyMdN6HU1mLGw94m9l5uWMasn5DxirbfhK+B6fPmWmeLFQDIiDFrN4lG
 cx3/i428uWfTH/wgbeoH9SJb9P6X+uRYeKOz23cNQ4heCSCBCrmaul4Mm6kTfxR3+aUi0j9P
 F4XH1VSN9ChDkkhJAwyQ6oRMXM0wQYr2c=
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="42443691"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cPauvDpoRyHGZGNVlSdxlKDto9MLtgxKI5ksvIwfzyFI+7hB+AAatm8LRI+RkPXe8/ZsYMODOoElt8s3ZCYhubGXFT8MXiP5KzkTbr+RaBbxIXty5/y0PZ+JuNVwqAIXnMn6WEYkUUVCGq8Wy15j/xzHWuxSLaO9KUfzEa005Eu3UZsYfy71OxNo1cGHOXW3/5vCImSLX+AeJiPlfplj6Lqn418PXlQoV+8YwuQ7u04h5xnQXUZrfcJGJUrfo1TEObtZOYTWEaON3eL5t8/VTjaWSfqK5IePzSsv8wL6lyA1pLNDi2B2eoHthmkXao1j120mD58zfOiufWh5Djvd1w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3DenC8vmwyz1IQMTPf6FIHDgZliHlVZISltA+ohrSrA=;
 b=Y9ug+pOGCWiNA2MY1ViAcms1EqSwcmKGhaG7KYq4H9rAiv8/6Xn1UjucVhEZ2O68nhAOc4RGIh21pilZwfSjoB18KFEkKmZeerm1v3gE9ePV00Wv/0yNL3SEVmf5+aLj1K47hvqxp7rA9z4DfcPhkMcE+AtekF0dPdzrzQmxQIfjcqX9Iz+23STEvcLveTRC+//UByfKsOUSULZyBkbo+KIRw6WraY1sakXtNQc87l6DuDeoeND0y603FWRTB+a8KuP1EAtu6m1NAAdyt7TAkynclwIzk6j9/fBJI6xesCH5JBNpleiQ4exsy0IXRtCTPtDZltmYKUhalDOjWFNAlg==
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=3DenC8vmwyz1IQMTPf6FIHDgZliHlVZISltA+ohrSrA=;
 b=XG2t/G5DnvEJkrDzUynMP6mkByMXrE37wLOXkFgiX/RQsjGVlDVFAYQFiA4DUu9sK4b7pN442MnFwFKdtQzxB2eR4S55To81+lPo05OVphkai47Yf4h8eJ2X6K1Why5wlXtzSa1H4pI/cuBEytQqkEbXNhYAOAaPvHayviraOMM=
Date: Wed, 21 Apr 2021 11:11:10 +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/8] x86/EFI: program headers are an ELF concept
Message-ID: <YH/sLn+g/7wsZUDy@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <017478f9-76d2-4dc4-de93-b662c4552968@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <017478f9-76d2-4dc4-de93-b662c4552968@suse.com>
X-ClientProxiedBy: MR1P264CA0014.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2e::19) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 90d76448-ad81-47ce-5daa-08d904a56d6e
X-MS-TrafficTypeDiagnostic: DM6PR03MB4763:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4763B63076FF2081DD02A3888F479@DM6PR03MB4763.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: AEDuagWZTexCZ5/3MjrRGrP2GByp4rSxTEAdQx/OQE1TZPsNuyEmuGnQF6AbdhXQDvxMfiAwTj03k5/03UkVHPF9sYhzEIrWGFO6SpVTpf3SlD2SG4D72SZgXUJzduf5IrXnGOY84zTKQCPuqEYWiql+wXZeOHKMcttzbOMs1gabndGAwEwnkkPfw8/8r2rYdh5bVdF9hV0BlFltTWPG4Avb43ftxV4+QJpu7tCryEMZaAh6WTzf6twkvV2P6n37Xe+UTz3UB5hwTtPDE7XeMn9WC8/Msla4XG1Ncs7mnyVWJ+bYhEhzFqdEqwOdVoAXg2dTnHDDcyYVRA/L62y7oyA6vyZk1PHJsyX8mnY49t0jqO1v0EEelvW8bDc4tZtUd7JeJT9eMlwBEc4EDVHZ1onMY+Ec28GVCxy3eDeFx1agALowYWbmNpz/GRKftAtkPATAb5EH7Ty29aFgJ1+Am+MmNNER3dFdWaoJNEVZDZHgUZjvdv/tPvTalmy+2U8hH8Nf57ZZFXBRo9+J79+nGAxFpY8TUrhUSShohF+40V4WxX9sXaPAmxaxA2XeH1kOA5uRMAZgpfJUpIuCVTivhnBQRslH8lYcWsDmTBPRATE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(39860400002)(366004)(376002)(136003)(396003)(346002)(86362001)(6916009)(33716001)(38100700002)(6486002)(8676002)(2906002)(4326008)(9686003)(6666004)(478600001)(54906003)(66476007)(85182001)(66946007)(6496006)(5660300002)(4744005)(8936002)(16526019)(186003)(956004)(26005)(66556008)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?ZlX2mp5wyoaWrIY+/robB1VQ+R2IqLbjo1tJ67R?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 90d76448-ad81-47ce-5daa-08d904a56d6e
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 09:11:20.2765
 (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: T5ZU7n2aN8PWZiQjLHAUMD5EkcrKSQTc9DoIRWnoz+uISSBm48kR7PjyTfq2VQ7gdx/foB+7YEWSNfcQIMVcrA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4763
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:45:09AM +0200, Jan Beulich wrote:
> While they apparently do no harm when building xen.efi, their use is
> potentially misleading. Conditionalize their use to be for just the ELF
> binary we produce.
> 
> No change to the resulting binaries.

The GNU Linker manual notes that program headers would be ignored when
not generating an ELF file, so I'm not sure it's worth us adding more
churn to the linker script to hide something that's already ignored by
ld already.

Maybe adding a comment noting program headers are ignored when not
generating an ELF output would be enough?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:15:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:15:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114179.217472 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ8xK-00073r-Kl; Wed, 21 Apr 2021 09:15:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114179.217472; Wed, 21 Apr 2021 09:15: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 1lZ8xK-00073k-Gp; Wed, 21 Apr 2021 09:15:34 +0000
Received: by outflank-mailman (input) for mailman id 114179;
 Wed, 21 Apr 2021 09:15:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3IT8=JS=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lZ8xJ-00073f-3i
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:15:33 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown
 [40.107.21.50]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ec6a6890-df78-46be-a1c5-9a553af161d2;
 Wed, 21 Apr 2021 09:15:30 +0000 (UTC)
Received: from DB6PR07CA0085.eurprd07.prod.outlook.com (2603:10a6:6:2b::23) by
 VI1PR08MB4592.eurprd08.prod.outlook.com (2603:10a6:803:bc::19) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16; Wed, 21 Apr 2021 09:15:26 +0000
Received: from DB5EUR03FT019.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:6:2b:cafe::96) by DB6PR07CA0085.outlook.office365.com
 (2603:10a6:6:2b::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.7 via Frontend
 Transport; Wed, 21 Apr 2021 09:15:26 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT019.mail.protection.outlook.com (10.152.20.163) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Wed, 21 Apr 2021 09:15:26 +0000
Received: ("Tessian outbound 82c2d58b350b:v90");
 Wed, 21 Apr 2021 09:15:26 +0000
Received: from c7ade08ce88a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 9886CED3-5B11-40A0-8851-8BBBF400FC10.1; 
 Wed, 21 Apr 2021 09:15:15 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c7ade08ce88a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 21 Apr 2021 09:15:15 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AM5PR0801MB1937.eurprd08.prod.outlook.com (2603:10a6:203:4b::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Wed, 21 Apr
 2021 09:15:04 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4042.024; Wed, 21 Apr 2021
 09:15: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: ec6a6890-df78-46be-a1c5-9a553af161d2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=oOfjzPhW/P5u5wzjqm8X5B35LQYp/uq42ylMuioZ9A8=;
 b=1hyP9CA/brcwGLEOg1CzJAGeinp7p3BWDwEWLd/eITnKSnffMK3s/6a5A7BAdvN5xnGVjj8QGMUYt2KRH/eM01AMhpfCwrAf1GRkug2KtbkAD46RAzj69sqHeF3Gt9keupNcHiVlIrUpV8bDqPMBHsmrPwvBd3VhCWwiLhqvPa4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 6c74ef0a17b38d6b
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RhKx1Gq0EesFCwwM/sgtsr2B1sd3kpH3DeFFc+e6rQ1QPJTXlBx085BrTxzd4qY9smpkMVbESjGwq0sMVcNa5csFk2l5AMKY7XOutNK97aAqRCgg1R7AFtvz1VcPCdGzkMIFbg929u/HU4/g/AFWrystGkeH6yWqlpxRlzfb/9sgaf7SRwbuLj1SJHd2eOw4gbc3vXIUXSmjr6zb424p2HRA5ymdqnjdaceh4o1S9yXvtmvTsjUgIpeW1XcSsX4k5h3I+9HD40Q5T9TADK/47E/PrpqHphG7OMPtwzbMOJ7o+LvPX9CpNk+9C4Tqs9/s+GDdUbaJt3K/S28amnO8Hg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=oOfjzPhW/P5u5wzjqm8X5B35LQYp/uq42ylMuioZ9A8=;
 b=Yav37TZO/VV46gG50iLuI9O0XZpLR12cIZU8oV/yCJ+tO8c7uj1zXv6qM0cacN/+UrxbagvzbqtN1H4b6TRjyLyqF9voCwPClwCdFrYVLWqoqQjZq/CvFxWToCQMiZce83pW0aOAdBG7I9jFv3zckJQw48bIXp8nMNF73f2uWrg6PIuf5oKcD/owgkaw3Ft3JTYnnx6dZb9771+dR4OIy4HWXB09WzXXrPP77uriiOOiLf7OLwFXe1/QWFhWg29TDpfyl9KbOYeuuotsrik5cIutjoLWGKnaMywVlYD0lv7+DMxJCa8Fy+fk+K2gCCXNgsvQCF3Evo7H3d3NTxuHxQ==
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=oOfjzPhW/P5u5wzjqm8X5B35LQYp/uq42ylMuioZ9A8=;
 b=1hyP9CA/brcwGLEOg1CzJAGeinp7p3BWDwEWLd/eITnKSnffMK3s/6a5A7BAdvN5xnGVjj8QGMUYt2KRH/eM01AMhpfCwrAf1GRkug2KtbkAD46RAzj69sqHeF3Gt9keupNcHiVlIrUpV8bDqPMBHsmrPwvBd3VhCWwiLhqvPa4=
From: Rahul Singh <Rahul.Singh@arm.com>
To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
CC: Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>, xen-devel
	<xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Wei
 Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Stefano Stabellini <sstabellini@kernel.org>, Paul
 Durrant <paul@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Topic: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Index:
 AQHXLVmJnBz/2T+xZEqfD4R39q2wV6qwuDwAgAH9VwCAAPmtgIAADD+AgAHfkACAAAF1gIAF4LkAgAAXZQCAACuvgIAACpEAgAAKwACAAaaJgIAAHu8AgAEU14CAAAJ+AIAAEH4A
Date: Wed, 21 Apr 2021 09:15:04 +0000
Message-ID: <DA4D72F4-CD1E-46D0-9D32-D8AB01F445F9@arm.com>
References: <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
 <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
 <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
 <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
 <YH/fQpgEQyhiaj1Y@Air-de-Roger>
In-Reply-To: <YH/fQpgEQyhiaj1Y@Air-de-Roger>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 98e1016e-06f8-4a28-5954-08d904a60057
x-ms-traffictypediagnostic: AM5PR0801MB1937:|VI1PR08MB4592:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR08MB4592CD1CF97723AF56C10F8DFC479@VI1PR08MB4592.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 o96iMtcLozrXs+GEhyZqCyI+9j/bMShqThpgFKqp0fR5w5znRm7+zaude2LRD2fzlmWBKWNRaF54JAmn6ZBTS6zViyp6qWVkBnfzPkp9iRSAGG9qhdtwDSgw7rmoJ/6Gx/1CHxAL1lJVpzqEzy6Eaj4a2fTjnd/h2GBCQrxLoPoKPp8cFFKlKsluBjnXgBw2n5qIKOXm4eA1HujyIzBvM0fCMZc2EMZBGH0hvYw2Wb0WcdoVrDfWR8F6+MkCTvh9RAXIiZRZ4uh3nc7H/BNy8P1UK22lpxwZzDGZRWxhBCnqYxuQd9ovRjL+3NrZqlxh/zSWomvD5flBalRFNEBH53m7/3VoJR2mW1EyP5vJLnGH3dCTT27OpOHg9HGN55yMi9DDy92ORfT3wYsVmzcolsv9gJEv63M98g/qJI1AmqSqYcX57mAnMlZ3nKmCa+81m+pgNEMQwjKr1sLd7Q/VG5l18s95hHDd11cxBFbJCf/3DlacBOVugNudu+UpUAWH8+nx7KMVoVEWCJJEZMsPp+Gms1J44PxGvKU/Rzt5283fO3aRsrfI6TrnBUBLx4F46pJcSPljVFdOOd9G3EsbZefhTXfx/h3RBOWyV4sCvhmluOrqZoFJmorK4oP598tZz/8FpC63M4PsYFggdUn1eu5Dh50negtUuOd07DbKaK2SM/aH9hjGECKvcGM2fftlp563OWcIZ9Do9xnjXoGr25Ul0hcitn61OZdFs9TRw+U=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(39830400003)(136003)(396003)(346002)(6486002)(5660300002)(64756008)(66476007)(53546011)(86362001)(478600001)(66446008)(66556008)(83380400001)(36756003)(66946007)(6512007)(966005)(26005)(33656002)(8676002)(8936002)(2906002)(71200400001)(54906003)(122000001)(316002)(38100700002)(76116006)(6916009)(91956017)(2616005)(186003)(4326008)(7416002)(6506007)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <2AC8ED2247020B4A970C7CC778CB28AD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0801MB1937
Original-Authentication-Results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT019.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e0c0e63d-f905-4f4e-5d0b-08d904a5f338
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FrcIHLD6ASlB4P8fl4jZPQYIko3q8HmT+5SEhgSb8devCUiKuJ9ESaoLAJibixxSl7im10jJVmg9Hi/KHcqI/9fsWz7t1lAVToZZGfB5SGoUxpnyb2XcOF1bFGayfL0YvxzULTEOUYCVqHV24jGk0A0v2SbHYjGRu057ZNMRMh+bDDaytRiw3UcF924r9S7LCdnbUC4jTc81Epi7d+MTopnK00rmfY4fvokz5JcHQidzUVBySdVMbsaMjjHdoqJzBla/3eF5+MwyXFP0/RM3DyLeb4Ws4kZ6fZhBVaYySkPMLbYfA/S10VlOJont0djiWu16vyXUMjrcRSmbCZp+neFCXSG6q8PSF6uu+3h6WwFOrAgy8hpHt95x1TF+y0vT+kh3UTAymCAmO4ko75KbDaZcM6jtyKTOe5n6oBhNv0EMR2fbfqF2pjTLbUCO7lWsHQOXLJlbjAbyrt9DEEftjMcnlRH1tFx4yOg31XCDRFXFKN86InXXfpZDFoPqii63yhGOB4McBW8vdt+O1UiWbZ4Iww3Tv/7Enylx7sShExE2y1B6iEWzH0CVGpUsP/OnO/wMTu7tHMYkbwh9FDSBBFhBPHtY6jS+44oM4+geRAAFRt/zL40LCbcb1xCW8zo/+Z1g8ZJKoDduWf4rvBCMd4VXHuViDAjKv4jAvrK2CqtIati0mhhOxTTUoKRjC5Chf9f5FmBDaUSUwo+K/D6dSt7kZf/x2OWNdnRYyPQyo8g=
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:(4636009)(376002)(39860400002)(136003)(396003)(346002)(46966006)(36840700001)(966005)(47076005)(336012)(33656002)(8676002)(82310400003)(186003)(5660300002)(26005)(356005)(6512007)(83380400001)(82740400003)(36860700001)(6506007)(8936002)(6486002)(316002)(478600001)(6862004)(81166007)(54906003)(36756003)(70206006)(53546011)(86362001)(70586007)(2906002)(2616005)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 09:15:26.6372
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 98e1016e-06f8-4a28-5954-08d904a60057
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:
	DB5EUR03FT019.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4592

SGkgUm9nZXIsDQoNCj4gT24gMjEgQXByIDIwMjEsIGF0IDk6MTYgYW0sIFJvZ2VyIFBhdSBNb25u
w6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPiB3cm90ZToNCj4gDQo+IE9uIFdlZCwgQXByIDIxLCAy
MDIxIGF0IDA4OjA3OjA4QU0gKzAwMDAsIFJhaHVsIFNpbmdoIHdyb3RlOg0KPj4gSGkgSmFuLA0K
Pj4gDQo+Pj4gT24gMjAgQXByIDIwMjEsIGF0IDQ6MzYgcG0sIEphbiBCZXVsaWNoIDxqYmV1bGlj
aEBzdXNlLmNvbT4gd3JvdGU6DQo+Pj4gDQo+Pj4gT24gMjAuMDQuMjAyMSAxNTo0NSwgUmFodWwg
U2luZ2ggd3JvdGU6DQo+Pj4+PiBPbiAxOSBBcHIgMjAyMSwgYXQgMTozMyBwbSwgSmFuIEJldWxp
Y2ggPGpiZXVsaWNoQHN1c2UuY29tPiB3cm90ZToNCj4+Pj4+IE9uIDE5LjA0LjIwMjEgMTM6NTQs
IEp1bGllbiBHcmFsbCB3cm90ZToNCj4+Pj4+PiBGb3IgdGhlIHRpbWUgYmVpbmcsIEkgdGhpbmsg
bW92ZSB0aGlzIGNvZGUgaW4geDg2IGlzIGEgbG90IGJldHRlciB0aGFuIA0KPj4+Pj4+ICNpZmRl
ZiBvciBrZWVwIHRoZSBjb2RlIGluIGNvbW1vbiBjb2RlLg0KPj4+Pj4gDQo+Pj4+PiBXZWxsLCBJ
IHdvdWxkIHBlcmhhcHMgYWdyZWUgaWYgaXQgZW5kZWQgdXAgYmVpbmcgI2lmZGVmIENPTkZJR19Y
ODYuDQo+Pj4+PiBJIHdvdWxkIHBlcmhhcHMgbm90IGFncmVlIGlmIHRoZXJlIHdhcyBhIG5ldyBD
T05GSUdfKiB3aGljaCBvdGhlcg0KPj4+Pj4gKGZ1dHVyZSkgYXJjaC1lcyBjb3VsZCBzZWxlY3Qg
aWYgZGVzaXJlZC4NCj4+Pj4gDQo+Pj4+IEkgYWdyZWUgd2l0aCBKdWxpZW4gbW92aW5nIHRoZSBj
b2RlIHRvIHg4NiBmaWxlIGFzIGN1cnJlbnRseSBpdCBpcyByZWZlcmVuY2VkIG9ubHkgaW4geDg2
IGNvZGUNCj4+Pj4gYW5kIGFzIG9mIG5vdyB3ZSBhcmUgbm90IHN1cmUgaG93IG90aGVyIGFyY2hp
dGVjdHVyZSB3aWxsIGltcGxlbWVudCB0aGUgSW50ZXJydXB0IHJlbWFwcGluZw0KPj4+PiAodmlh
IElPTU1VIG9yIGFueSBvdGhlciBtZWFucykuICANCj4+Pj4gDQo+Pj4+IExldCBtZSBrbm93IGlm
IHlvdSBhcmUgb2sgd2l0aCBtb3ZpbmcgdGhlIGNvZGUgdG8geDg2Lg0KPj4+IA0KPj4+IEkgY2Fu
J3QgYW5zd2VyIHRoaXMgd2l0aCAieWVzIiBvciAibm8iIHdpdGhvdXQga25vd2luZyB3aGF0IHRo
ZSBhbHRlcm5hdGl2ZQ0KPj4+IHdvdWxkIGJlLiBBcyBzYWlkLCBpZiB0aGUgYWx0ZXJuYXRpdmUg
aXMgQ09ORklHX1g4NiAjaWZkZWYtYXJ5LCB0aGVuIHllcy4NCj4+PiBJZiBhIHNlcGFyYXRlIENP
TkZJR18qIGdldHMgaW50cm9kdWNlZCAoYW5kIHNlbGVjdGVkIGJ5IFg4NiksIHRoZW4gYQ0KPj4+
IHNlcGFyYXRlIGZpbGUgKGdldHRpbmcgYnVpbHQgb25seSB3aGVuIHRoYXQgbmV3IHNldHRpbmcg
aXMgeSkgd291bGQgc2VlbQ0KPj4+IGJldHRlciB0byBtZS4NCj4+IA0KPj4gSSBqdXN0IG1hZGUg
YSBxdWljayBwYXRjaC4gUGxlYXNlIGxldCBtZSBrbm93IGlmIGJlbG93IHBhdGNoIGlzIG9rLiBJ
IG1vdmUgdGhlIGRlZmluaXRpb24gdG8gICJwYXNzdGhyb3VnaC94ODYvaW9tbXUuY+KAnSBmaWxl
Lg0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMgYi94
ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYw0KPj4gaW5kZXggNzA1MTM3ZjhiZS4uMTk5Y2Uw
ODYxMiAxMDA2NDQNCj4+IC0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jDQo+PiAr
KysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYw0KPj4gQEAgLTEzMDMsMTMgKzEzMDMs
NiBAQCBzdGF0aWMgaW50IF9faW5pdCBzZXR1cF9kdW1wX3BjaWRldnModm9pZCkNCj4+IH0NCj4+
IF9faW5pdGNhbGwoc2V0dXBfZHVtcF9wY2lkZXZzKTsNCj4+IA0KPj4gLWludCBpb21tdV91cGRh
dGVfaXJlX2Zyb21fbXNpKA0KPj4gLSAgICBzdHJ1Y3QgbXNpX2Rlc2MgKm1zaV9kZXNjLCBzdHJ1
Y3QgbXNpX21zZyAqbXNnKQ0KPj4gLXsNCj4+IC0gICAgcmV0dXJuIGlvbW11X2ludHJlbWFwDQo+
PiAtICAgICAgICAgICA/IGlvbW11X2NhbGwoJmlvbW11X29wcywgdXBkYXRlX2lyZV9mcm9tX21z
aSwgbXNpX2Rlc2MsIG1zZykgOiAwOw0KPj4gLX0NCj4+IC0NCj4+IHN0YXRpYyBpbnQgaW9tbXVf
YWRkX2RldmljZShzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+IHsNCj4+ICAgICBjb25zdCBzdHJ1
Y3QgZG9tYWluX2lvbW11ICpoZDsNCj4+IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhy
b3VnaC94ODYvaW9tbXUuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5jDQo+
PiBpbmRleCBiOTBiYjMxYmZlLi5jZjUxZGVjNTY0IDEwMDY0NA0KPj4gLS0tIGEveGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gveDg2L2lvbW11LmMNCj4+ICsrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJv
dWdoL3g4Ni9pb21tdS5jDQo+PiBAQCAtMzQwLDYgKzM0MCwxMyBAQCBib29sIGFyY2hfaW9tbXVf
dXNlX3Blcm1pdHRlZChjb25zdCBzdHJ1Y3QgZG9tYWluICpkKQ0KPj4gICAgICAgICAgICAgbGlr
ZWx5KCFwMm1fZ2V0X2hvc3RwMm0oZCktPmdsb2JhbF9sb2dkaXJ0eSkpOw0KPj4gfQ0KPj4gDQo+
PiAraW50IGlvbW11X3VwZGF0ZV9pcmVfZnJvbV9tc2koDQo+PiArICAgIHN0cnVjdCBtc2lfZGVz
YyAqbXNpX2Rlc2MsIHN0cnVjdCBtc2lfbXNnICptc2cpDQo+PiArew0KPj4gKyAgICByZXR1cm4g
aW9tbXVfaW50cmVtYXANCj4+ICsgICAgICAgICAgID8gaW9tbXVfY2FsbCgmaW9tbXVfb3BzLCB1
cGRhdGVfaXJlX2Zyb21fbXNpLCBtc2lfZGVzYywgbXNnKSA6IDA7DQo+PiArfQ0KPj4gKw0KPj4g
LyoNCj4+ICAqIExvY2FsIHZhcmlhYmxlczoNCj4+ICAqIG1vZGU6IEMNCj4+IGRpZmYgLS1naXQg
YS94ZW4vaW5jbHVkZS94ZW4vaW9tbXUuaCBiL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oDQo+PiBp
bmRleCBlYTBjZDBmMWEyLi5iZDQyZDg3YjcyIDEwMDY0NA0KPj4gLS0tIGEveGVuL2luY2x1ZGUv
eGVuL2lvbW11LmgNCj4+ICsrKyBiL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oDQo+PiBAQCAtMjQz
LDcgKzI0Myw2IEBAIHN0cnVjdCBpb21tdV9vcHMgew0KPj4gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdTggZGV2Zm4sIGRldmljZV90ICpkZXYpOw0KPj4gI2lmZGVmIENPTkZJR19IQVNfUENJ
DQo+PiAgICAgaW50ICgqZ2V0X2RldmljZV9ncm91cF9pZCkodTE2IHNlZywgdTggYnVzLCB1OCBk
ZXZmbik7DQo+PiAtICAgIGludCAoKnVwZGF0ZV9pcmVfZnJvbV9tc2kpKHN0cnVjdCBtc2lfZGVz
YyAqbXNpX2Rlc2MsIHN0cnVjdCBtc2lfbXNnICptc2cpOw0KPj4gI2VuZGlmIC8qIEhBU19QQ0kg
Ki8NCj4+IA0KPj4gICAgIHZvaWQgKCp0ZWFyZG93bikoc3RydWN0IGRvbWFpbiAqZCk7DQo+PiBA
QCAtMjcyLDYgKzI3MSw3IEBAIHN0cnVjdCBpb21tdV9vcHMgew0KPj4gICAgIGludCAoKmFkanVz
dF9pcnFfYWZmaW5pdGllcykodm9pZCk7DQo+PiAgICAgdm9pZCAoKnN5bmNfY2FjaGUpKGNvbnN0
IHZvaWQgKmFkZHIsIHVuc2lnbmVkIGludCBzaXplKTsNCj4+ICAgICB2b2lkICgqY2xlYXJfcm9v
dF9wZ3RhYmxlKShzdHJ1Y3QgZG9tYWluICpkKTsNCj4+ICsgICAgaW50ICgqdXBkYXRlX2lyZV9m
cm9tX21zaSkoc3RydWN0IG1zaV9kZXNjICptc2lfZGVzYywgc3RydWN0IG1zaV9tc2cgKm1zZyk7
DQo+IA0KPiBZb3UgYWxzbyBuZWVkIHRvIG1vdmUgdGhlIGZ1bmN0aW9uIHByb3RvdHlwZQ0KPiAo
aW9tbXVfdXBkYXRlX2lyZV9mcm9tX21zaSkgZnJvbSBpb21tdS5oIGludG8gYXNtLXg4Ni9pb21t
dS5oLCBvcg0KPiBtYXliZSB5b3UgY291bGQganVzdCBkZWZpbmUgdGhlIGZ1bmN0aW9uIGl0c2Vs
ZiBhcyBzdGF0aWMgaW5saW5lIGluDQo+IGFzbS14ODYvaW9tbXUuaD8NCg0KDQpPay4gSSB3aWxs
IG1vdmUgZnVuY3Rpb24gcHJvdG90eXBlIChpb21tdV91cGRhdGVfaXJlX2Zyb21fbXNpKSBmcm9t
IA0KaW9tbXUuaCBpbnRvIGFzbS14ODYvaW9tbXUuaC4NCg0KSSBmaXJzdCB0cmllZCB0byBtYWtl
IHRoZSBmdW5jdGlvbiBhcyBzdGF0aWMgaW5saW5lIGluICJhc20teDg2L2lvbW11LmgiIGJ1dCBh
ZnRlciANCnRoYXQgSSBvYnNlcnZlIHRoZSBjb21waWxhdGlvbiBlcnJvciBmb3IgZGVidWcgYnVp
bGQgYmVjYXVzZSAiYXNtL2lvbW11LmjigJ0gDQppcyBpbmNsdWRlZCBpbiAieGVuL2lvbW11Lmji
gJ0gYmVmb3JlIGlvbW11X2NhbGwoKSBpcyBkZWZpbmVkIGluICJ4ZW4vaW9tbXUuaOKAnS4NClRo
YXQncyB3aHkgSSBkZWNpZGVkIHRvIG1vdmUgaXQgdG8gdGhlICJwYXNzdGhyb3VnaC94ODYvaW9t
bXUuY+KAnSBmaWxlLg0KDQpodHRwOi8veGVuYml0cy54ZW4ub3JnL2dpdHdlYi8/cD14ZW4uZ2l0
O2E9YmxvYjtmPXhlbi9pbmNsdWRlL3hlbi9pb21tdS5oO2g9ZWEwY2QwZjFhMmE0NTU4ZWFiNDQ4
ODQ2ODI3MmYzZWQzNWRkMWRjMDtoYj1IRUFEI2wyOTgNCg0KUmVnYXJkcywNClJhaHVsDQo+IA0K
PiBUaGFua3MsIFJvZ2VyLg0KDQo=


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:23:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:23:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114186.217484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ94m-0007xc-Jq; Wed, 21 Apr 2021 09:23:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114186.217484; Wed, 21 Apr 2021 09: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 1lZ94m-0007xV-Gl; Wed, 21 Apr 2021 09:23:16 +0000
Received: by outflank-mailman (input) for mailman id 114186;
 Wed, 21 Apr 2021 09:23:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ94l-0007xQ-IP
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:23:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 10f6d7e8-ef6b-4423-ba49-429761ac6365;
 Wed, 21 Apr 2021 09:23:14 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DD9A4B2D5;
 Wed, 21 Apr 2021 09:23: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: 10f6d7e8-ef6b-4423-ba49-429761ac6365
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618996994; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=J9hzIB0ECvpA9dn/t63pp56N2ttbwTbJRvNY1u3nCfQ=;
	b=GUAFFxMuRwOlpXmdZyeXS209o0CAesfPXtfPa6RfDxfShjRzht+3SDeB0KOrr1FilSgOVT
	Q5nu4A+P41cKd0GmgwquCyzSK2MHzSxAcTFkOvjhrmrpIlrpJI9XefnG7PjE8mu80LNxX+
	10/5WrvLWSoC5bLzhT8uqDz4+fs3+MQ=
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Chao Gao <chao.gao@intel.com>
Cc: xen-devel@lists.xenproject.org, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Kevin Tian <kevin.tian@intel.com>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <YH7uX7RqqIS4zdBt@Air-de-Roger>
 <3afbdba8-b25c-985c-6c5f-20077cb37d3f@suse.com>
 <YH7+i/JVnmZGTHOF@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <9276b757-a340-b0f3-3427-13b7bc5dcb9e@suse.com>
Date: Wed, 21 Apr 2021 11:23:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH7+i/JVnmZGTHOF@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 18:17, Roger Pau Monné wrote:
> On Tue, Apr 20, 2021 at 05:38:51PM +0200, Jan Beulich wrote:
>> On 20.04.2021 17:08, Roger Pau Monné wrote:
>>> On Thu, Apr 02, 2020 at 04:06:06AM +0800, Chao Gao wrote:
>>>> --- a/xen/drivers/passthrough/vtd/qinval.c
>>>> +++ b/xen/drivers/passthrough/vtd/qinval.c
>>>> @@ -442,6 +442,23 @@ int enable_qinval(struct vtd_iommu *iommu)
>>>>      return 0;
>>>>  }
>>>>  
>>>> +static int vtd_flush_context_noop(struct vtd_iommu *iommu, uint16_t did,
>>>> +                                  uint16_t source_id, uint8_t function_mask,
>>>> +                                  uint64_t type, bool flush_non_present_entry)
>>>> +{
>>>> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush CONTEXT.\n");
>>>> +    return -EIO;
>>>> +}
>>>> +
>>>> +static int vtd_flush_iotlb_noop(struct vtd_iommu *iommu, uint16_t did,
>>>> +                                uint64_t addr, unsigned int size_order,
>>>> +                                uint64_t type, bool flush_non_present_entry,
>>>> +                                bool flush_dev_iotlb)
>>>> +{
>>>> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush IOTLB.\n");
>>>> +    return -EIO;
>>>> +}
>>>
>>> I think I would add an ASSERT_UNREACHABLE() to both noop handlers
>>> above, as I would expect trying to use them without the proper mode
>>> being configured would point to an error elsewhere?
>>
>> If such an assertion triggered e.g. during S3 suspend/resume, it may
>> lead to the box simply not doing anything useful, without there being
>> any way to know what went wrong. If instead the system at least
>> managed to resume, the log message could be observed.
> 
> Oh, OK then. I'm simply worried that people might ignore such one line
> messages, maybe add a WARN?

Hmm, yes, perhaps - would allow seeing right away where the call
came from. Chao, I'd again be fine to flip the dprintk()-s to
WARN()-s while committing. But of course only provided you and
Kevin (as the maintainer) agree.

> Would it make sense to mark as tainted which could help identify the
> issue on production builds? Maybe that's too much.

Yeah, for something we expect shouldn't ever happen ...

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:27:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:27:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114190.217495 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ98f-0008Bq-4b; Wed, 21 Apr 2021 09:27:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114190.217495; Wed, 21 Apr 2021 09: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 1lZ98f-0008Bj-1m; Wed, 21 Apr 2021 09:27:17 +0000
Received: by outflank-mailman (input) for mailman id 114190;
 Wed, 21 Apr 2021 09:27:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=48UE=JS=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZ98d-0008Be-Nd
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:27:15 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id dfddecca-5ddb-4146-a805-582add0b7a2e;
 Wed, 21 Apr 2021 09:27: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: dfddecca-5ddb-4146-a805-582add0b7a2e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618997233;
  h=from:to:cc:subject:date:message-id:mime-version;
  bh=D/w2DNl0TeaKEZCmB65pXr1R2VJ6wYuG0NAcJnIRkmE=;
  b=SjUFKRwAqIGts45d/eT7knSZTDksZ+jBlQAdcunO//bGORlcoI+LE6Bn
   cNcgDd2DTigP+gauaTHcMROHdApL/9nBBygyWiFpcwNKD4osN/2i5ToDR
   9yxvasJI3/KVGTGyH2jzmq+3osvct4PviP0ryP1XIKtx/NoAl4HuwBTTF
   0=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: GroDJA21M6lxAneqdcgDfqYHeXVDc1LRzX22nVOGYQrmPBJAojRalNyKheNf0TNFlaLiNpH71f
 fzBe1UYDCSGZv8Lw4MOYSfowa9mRRDGN0pzjzwljVscIYM+QOylPT2sGb6Dj/q/TwEPwRw0eKm
 uaPfoUekGPuhcBeFNRBkozxwHy0NsM8KM8Jf6zhAOD8cuBiZFHfDUr9RsjEwHTCzMQ1xuDlMCs
 HT5/w5tvLDCaodcRXXFFibqUEpKUjQxwde+qHI16Uf6ENwCs1cZzs04NwIZ7pbpTJiJVyPHQJx
 vdg=
X-SBRS: 5.1
X-MesageID: 41893701
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:u7gtMqDh8Bs53uLlHelp55DYdL4zR+YMi2QD/WoZc3JoW+afkN
 2jm+le6A/shF8qKRYdsP2JJaXoexPh3LFv5415B9ufdS3HnEftE41494vlxFTbaknD38pQz7
 1pfaQ7KPCYNykYse/A7AO1E8ktzbC8mcjC74rj5kxgUB1wbOVY5xp5Yzzrd3FefhVMBpYyCf
 Onh/ZvmjzIQxsqR/X+InEEWuTZzue79q7bXQ==
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="41893701"
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>, Ian Jackson <iwj@xenproject.org>, Jan Beulich
	<JBeulich@suse.com>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>, Julien Grall <julien@xen.org>, Doug Goldstein
	<cardoe@cardoe.com>
Subject: [PATCH] CI: Drop TravisCI
Date: Wed, 21 Apr 2021 10:27:05 +0100
Message-ID: <20210421092705.2295-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain

Travis-ci.org is shutting down shortly.  The arm cross-compile testing has
been broken for a long time now, and all testing has now been superseded by
our Gitlab infrastructure.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Ian Jackson <iwj@xenproject.org>
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: Doug Goldstein <cardoe@cardoe.com>
---
 .travis.yml | 86 -------------------------------------------------------------
 1 file changed, 86 deletions(-)
 delete mode 100644 .travis.yml

diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index f3cd15b79f..0000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,86 +0,0 @@
-language: c
-dist: trusty
-sudo: required
-# don't test master, smoke and coverity branches
-branches:
-    except:
-        - master
-        - smoke
-        - /^coverity-tested\/.*/
-        - /^stable-.*/
-matrix:
-    include:
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=x86_64 debug=n
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=x86_64 XEN_CONFIG_EXPERT=y RANDCONFIG=y debug=n
-        - compiler: gcc-5
-          env: XEN_TARGET_ARCH=x86_64 debug=n
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=x86_64 debug=y
-        - compiler: gcc-5
-          env: XEN_TARGET_ARCH=x86_64 debug=y
-        - compiler: clang
-          env: XEN_TARGET_ARCH=x86_64 clang=y debug=n
-        - compiler: clang
-          env: XEN_TARGET_ARCH=x86_64 clang=y debug=y
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- debug=n
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- XEN_CONFIG_EXPERT=y RANDCONFIG=y debug=n
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- debug=y
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- debug=n
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- XEN_CONFIG_EXPERT=y RANDCONFIG=y debug=n
-        - compiler: gcc
-          env: XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- debug=y
-addons:
-    apt:
-        sources:
-            - ubuntu-toolchain-r-test
-        packages:
-            - zlib1g-dev
-            - libncurses5-dev
-            - libssl-dev
-            - python-dev
-            - xorg-dev
-            - uuid-dev
-            - libyajl-dev
-            - libaio-dev
-            - libglib2.0-dev
-            - libpixman-1-dev
-            - pkg-config
-            - flex
-            - bison
-            - acpica-tools
-            - bin86
-            - bcc
-            - libnl-3-dev
-            - ocaml-nox
-            - libfindlib-ocaml-dev
-            - transfig
-            - pandoc
-            - gcc-arm-linux-gnueabihf
-            - gcc-aarch64-linux-gnu
-            - gcc-5
-            - g++-5
-            - seabios
-            - checkpolicy
-            - ghostscript
-# we must set CXX manually instead of using 'language: cpp' due to
-# travis-ci/travis-ci#3871
-before_script:
-    - export CXX=${CC/cc/++}
-    - export CXX=${CXX/clang/clang++}
-script:
-    - ./scripts/travis-build
-after_script:
-    - cat xen/.config
-    - cat tools/config.log
-    - cat docs/config.log
-notifications:
-    irc:
-        channels:
-            - secure: "mPIFllF6eW3F3talvccMy55Tfcid66IPkkXZYCxDKRF2DQrMyvmg4qt0xN6gGZsdfOBMNr+/YfO5PxusBCUkVdBGBzd3QhFoIDYZbJZgzVh3yNDQ+x4L7p1cZNrwJ2loMmSX6KxGKZxZX9NRStrTUkVyp0jGZB9xkwT8Rl6jXj7EQkgQ95K1Wqafx0ycLfyDQmzX9bzi/3KIBFKMGmK18AFMh+R30zK0FPUUsS4+VhepIkVqO5puU3OYePd34wRnWlt7hjU2Vj5vYmVXp3UOE+E8/Lf9IGVAhitDi+EC35b8zo2BHJ9z6xZARYPvfSqbXcXV20RycabI+e3ufZJ40eatssly5QjWH+HhKS42C4gV1psmQhkTCNCM62Ty5uf6R1hsZJQuiOZrc8ojdje8ey2MxJk4R+Xz+Igg1/kD6+WX9/Y6Y3iRuj5HL1xCYfpTbK4mC7ofw0SofW2aAGI68jHpCqJdQCDzMl6748PlDMM0eKe0MPKIEenYHcoBnOEC/jciXUDa6wduV75EEip7oq2i+m44MopcsEDTpdliH077GhKapF0ActjvBTLpyoTRSfkKm0NZol/dgwd3PGG/mY8clIoeXWRb4opk93ejPC967KmSNC68SlfwaJmFZS5T9vAgb6k7r6i9G3dmYtrLKzws8IV1CPWqLzk58+v4pRk="
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:30:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:30:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114193.217508 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9BH-0008Kx-JJ; Wed, 21 Apr 2021 09:29:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114193.217508; Wed, 21 Apr 2021 09: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 1lZ9BH-0008Kq-FU; Wed, 21 Apr 2021 09:29:59 +0000
Received: by outflank-mailman (input) for mailman id 114193;
 Wed, 21 Apr 2021 09:29:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9BF-0008Kl-S8
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:29:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 18e41fc0-5014-425f-97ce-7c88df90df07;
 Wed, 21 Apr 2021 09:29:57 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 33080AEAE;
 Wed, 21 Apr 2021 09:29: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: 18e41fc0-5014-425f-97ce-7c88df90df07
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618997396; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7f73emCJKv6X9z3m9bg1w5HSz7hqe1vr4qBQ66u32u8=;
	b=bBx//rE5jBW3I442f7QK+NKC0rDixTWxLuzwdyhxkYm1JQ/XKr7gjPn1NQaeut01Psa7EO
	DDvhBE4lRticzbBfMvUd7cVsi9ounZ1pdcPqNgYDQJsLwswySbn7P8QSt1cTZ39nI90meY
	ZByFUo+KyqPTXH0oh0Je6AS7JCrW5vQ=
Subject: Re: [PATCH v2] x86/shim: Simplify compat handling in
 write_start_info()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210420174118.2731-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7115a38d-6069-a0ad-e8da-eb926db3acde@suse.com>
Date: Wed, 21 Apr 2021 11:29:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210420174118.2731-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 19:41, Andrew Cooper wrote:
> Factor out a compat boolean to remove the lfence overhead from multiple
> is_pv_32bit_domain() calls.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> CC: Wei Liu <wl@xen.org>
> 
> v2:
>  * Reinstate the conditional for the start info pointer, in case Intel/AMD
>    can't be persuaded to adjust the architectural guarentees for upper bits in
>    compatibility mode transitions.

As indicated before, with this adjustment
Reviewed-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:31:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:31:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114197.217520 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9CY-0000iX-T3; Wed, 21 Apr 2021 09:31:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114197.217520; Wed, 21 Apr 2021 09:31: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 1lZ9CY-0000iP-Q4; Wed, 21 Apr 2021 09:31:18 +0000
Received: by outflank-mailman (input) for mailman id 114197;
 Wed, 21 Apr 2021 09:31:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=48UE=JS=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZ9CX-0000iI-5X
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:31:17 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d418b3a9-16f8-465d-91b7-0a98fe979f14;
 Wed, 21 Apr 2021 09: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: d418b3a9-16f8-465d-91b7-0a98fe979f14
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618997476;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=hlenLFad7zbduuqC3F+yEmKP04jIPZvGH9Z09FZic8Y=;
  b=KfdvGCsXvbiLwaR55UkuaH+O4mGYudXOk/w/Sh33DUdiGPzWy/2AYwF+
   7hHdrMLlHQ9tKDkuASRrNE77CgyyyYPz0I+KBUR87J6fd3A8aF6YRYDgE
   oi+U3SP5WEXJTLqiHz2bpNCr/0wqcO+p0ygIKBcVnfH13lcfG2fcLYnel
   w=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: LwsSziyUkoU1/CNyX2g8Y5PPZjwNKvNJbmci1I+DVAMTjXQs/clfWTNuYxZ6yxGO8cQMuiq8CK
 enq/4zvzmfL7+oHoKWvKnr4E5U8p9SEk69tp2vrP3cT2/yG4xUWmTkkRXODWUmPkZJo4m0i3WO
 ytDswbeeB/h/rNUbMgfBnP+wV5mdOZnpvOhoAxqOHliuATvIUpdjbDWc+lugUNNVjwJ5tGkTxF
 /N1ujhrdYnBH41Eu0ohYxWA+rs1FO1Ovhm1tmMA9gsMWRFRpSSb6V4hcaMP5eRJbBctqHRYnwQ
 isc=
X-SBRS: 5.2
X-MesageID: 43549775
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:L2VD360ZUwPi7DGlkMlAowqjBeF2eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/BIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmdJ1/Z
 xLN5JzANiYNzRHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcFdxi1SYzzrdXFebg9AGJY/Cd
 647s1IuzKvdR0sH7qGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnm4j41VTRTzbA+tV
 XUigCR3NTej9iX6D/5k1XS4ZNfhcf7xrJ4ZfCkp8AJJlzX+32VTat7XbnqhkFNnMiO7xIQnM
 DIs1McOa1Img7sV0WUhTeo5AX6yjYp7BbZuC2lqF/uu9bwSj5/K+cpv/MgTjLj50AtvM5x3c
 twtgrz3fcnbmKj7VDAzuPFWB1wmk2/rWBKq590s1VlXZYDc7gUlIQD/SpuYeQ9NRjn44MqGv
 QGNrC42N9qdzqhHhTkl1V0zMfpdno+GQrueDl5huWllxJSnHx/0nICwt0eknoq5PsGOul5zt
 WBHaJymL5USMgKKYp7GecaWMOyTlfAWBTWLQupUBXaPZBCHl+IkoXw6rku/u2mEaZ4hKcaqd
 Dkahd1pGQyc0XhBYmn24BKyAnERCGYUS72ws9TypBlstTHNfrWGBzGbGprv9qrov0ZDMGece
 20IohqD/jqKnarMZpV3iXlMqMibEU2YYkwgJIWSliOqsXEJsnBrerAasveI7LrDHINRn7/OH
 0eRzL+Tf8wrHyDazvdulz8Snntckvw8dZbC67B5dUez4ALK8liqQ4QpVOl5tyaCDFLv6AsFX
 EOZ4/Po+eeny2b7GzI52JmNl52FUBO+ojtVHtMuEsrPirPAPA+kuTaXVoX8GqMJxd5Qc+TOh
 VYvU5L9aW+KIHV4SgjDtmgI1+Llnd7ngPSc74s3om4oev1cJIxCZgrHIZrEx/QKhBzkQF27E
 BOdREDXU2aMj/1k62qgNg1CYjkBppBqTbuBfQRhWPUtE2aq81qbGAcRSSSXcmehhtrYSFViF
 13+6o2m6GBhj6rFGs6jI0DQRlxQVXSJIgDIBWOZY1SlLyuUhp3V322iTuTjAx2RnDn7HwIhm
 vqLTSdfNbCBlY1gAEB7o/atHdPMkmNdUN5bX539alwD37PtHpI3eiXXaaryGeKZlwewuYSDS
 HdbVIpU3ZT7uHy8CTQtCeJFH0gyJlrBODbAbg5W5z423+mKuSz5O07Ns4R2KwgGMHls+cNX+
 7aRhScKyngDfg1nyaPoGw+BSVyoH44sP/h1RH/9lKk1HonDfe6GiU8e5grZ/Wnq0T0TfeB15
 t0ye8vteyrK2Prd5qoz7rUYzMrEGKZnUeGC8UT7bZasqI5uOEtQ931UT7U2GpG2xt7BsHuj0
 8aSLl65reEGoIHRb1lRwtpun4S0PKIJw8XlyazJMkUV1QklWXaMNOE+KCgk8tjPmSx4C/LfW
 CC+Chc9crfVySN1bQmG7s9SF4mH3QU2TBHxqe+bIXeBwWhSvFb8He7OnG7dqVBSKLtI8RYkj
 9Kp/WJlfSQbSz2xUT5uiZ6OLtH9w+cMIyPKTPJPe5D6NqhP1uQxoOs/c6olT/yDR+2cV4Ri4
 EAVUseaK14+3cfpbxy9ii5UarspE0513NY/DF8j1bonrGc312zJzANDSTpxrNMXTdSNXCUjc
 PKtcigvU6NkQRt6N3kD0dfftZHBt4KaJP4Rh0ec/QtgA==
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="43549775"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MKybdlz3vsycOZWcH2A4G06fpCkM88f8pcKWTHjheUHivt72NANCNQozg0ct489lXP6JzdCWYDkUGNyvA+tj/KhqOXvkO9DNmPk8PxOjBNd20wErxtsqsHOzRngaumBrGZaPxM1nWrWBo9MzCSDTw0gsMQbAkrD4htbDvKTV/18ErDKKzgfN1Zsj7CnpmCiGMiidqOYQRz+kGfPI1VwT/VEsa3Gb3qhxBWZgKGxSFlgSjq1tDY0hLQ+o//Qfv8C9KLakqM3kA+nCnanSR8IOp2mKDPDOj8cZ62QQDtMsuAzftkKUK8fIMCKkfIcIHRKM4y7Ks4zp9rd0jBuNGAwf4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RipYjB2SRUyM7viTfq3X00zVF6ZE3ScMiferjJaZl0o=;
 b=TzW2IdtMnCIxUpX7THAnSWkidAEIFx15pMsWgt5tzqaZ25+rwd09i+ENvHj6zyNKkLtKwGA3OcsqIRgEnV1au27iJ+ftpOoYcjgti6Fv1M7mBAnEZowACOlBPCD6MBnedxvOBQH773XvlDN/wgNEMx/e6/mXw1SffQpQVJQzw0SXphSHp1Azq6Xwzf9RvMb5y5saVmL5JRt0hIKsERbeH+M8aa8vpXWUxmWEJzesawFbMqoUeUVAfQw3fI9ciBt28WvE4gON93X0Nrix/QSGFI6Z9TGg2w3EunX6j4YLBcfoUJIeFRByI+W6OBRubr1fCNxoc7R00LYeoz3qL5k//Q==
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=RipYjB2SRUyM7viTfq3X00zVF6ZE3ScMiferjJaZl0o=;
 b=VsTrMgNaTKRKxM6r4M0NTTaouCef/V60gSrnfX1WxUY/4vbiLoYLUkKVEJeObNvJwFD9mYZCp1EI2KTzlxbjsXmHdyBirCmZTHB/4ue63yXbky1NJpqP+yIx+UmhRSYwzqPZZBHbQ8sp+5uwWarDN9XyN7eG7QSTQUpsdVg8REk=
Subject: Re: [PATCH 0/7] xen: Switch to using -Og for debug builds
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
	<julien@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, "Juergen
 Gross" <jgross@suse.com>, Tim Deegan <tim@xen.org>, Xen-devel
	<xen-devel@lists.xenproject.org>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
 <9e8e116a-f4c3-e6bf-edee-d48e76a3d005@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <b6b313d5-fd24-b1b8-afe9-0801825565f2@citrix.com>
Date: Wed, 21 Apr 2021 10:31:04 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <9e8e116a-f4c3-e6bf-edee-d48e76a3d005@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0429.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18b::20) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b70abd52-aa7f-4edd-bd5c-08d904a8341e
X-MS-TrafficTypeDiagnostic: BYAPR03MB3990:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB39903EF42A35BBD6571361E8BA479@BYAPR03MB3990.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 1TxS0mvSheFXZsnzCcwgyMgn5JZNBJf3B9uIXYq/zPsDL4LGKp88fveCPLx42KicvoX6lKsjCrT9MvWGn2/Oeg1VEpdKnQtK3EYMtFAR40piFUqZk1WOHMUYz1lZ5M/fcxpJqTGmc2RChelGE2dMy2eEw8mZjCo5n7QFJU4hiJbC/rcug47xZo6pjAK9TPNK9U3K25WMdRI4bcXx4ml/0iWAGPrI6geGgwFaZ5uzDkMNXghi6qsMIrBBKOu0b+KdBB4lv7OfP3kJEHJUvGpLDMy8gprVd7cn3NA9Sja9jChezYeS1av/rZfmtq0dWPT2zVatetKEuvVinuZpRO1QYd8095e/FA3xHV0PWCMySZopbnZz+WkLUqTJf7svkf3hBIMhDBQ5jcTscUItBl4UDa4+AYOMdoSUnoBgazX9fLAKhCm9kdMUS7c41GUqxfg4wgCLL34T6g1mEwYmmlEm0+GXT+z/m2RKtEMYLHVI/FCrEywmdbXN2Ef6XFT4wsDPR37PgllNVZep9IbBUtk2rb27Sml8zwrDQmQ02FW3dCJ3Djiy16Rd1+N4bkrhb4nwG3hJwGiqb99UyxLic3syrc9shvedWsaMl/rJmg8wwkZ51TDrY0uB9R0L0o6b01040PremU94wSw6Hqij3LNzT2eJVY52rr72p/SqCPqDSnlcRW3cQnMplhBGo+I6TQt6
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(396003)(136003)(376002)(39860400002)(346002)(38100700002)(31686004)(83380400001)(86362001)(8936002)(66476007)(66946007)(66556008)(16576012)(36756003)(6666004)(2616005)(956004)(6916009)(316002)(8676002)(53546011)(5660300002)(4326008)(54906003)(26005)(478600001)(6486002)(31696002)(186003)(16526019)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?f0LbUSCNpp1kpt1X55Z/RnE5Q3nusjwxpSWFyWc?=
X-MS-Exchange-CrossTenant-Network-Message-Id: b70abd52-aa7f-4edd-bd5c-08d904a8341e
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 09:31:12.6751
 (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: rG6zb8dRvz62juH1qxaXv0wPLcpyFcnfnIk+FUGIVrisf11uwyQxXnCxRT8ZyUuvaApqsEm1d4r8RFBEQTLFC8fBtO9efkYNEm6JicGkAig=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3990
X-OriginatorOrg: citrix.com

On 19/04/2021 16:45, Jan Beulich wrote:
> On 19.04.2021 16:01, Andrew Cooper wrote:
>> As with the toolstack side, we ought to use -Og for debug builds.
>>
>> All fixes are trivial.  The first 3 are understandable, given reduced
>> optimisations.  The next 3 are, AFAICT, bogus diagnostics.
>>
>> Andrew Cooper (7):
>>   xen/arm: Make make_cpus_node() compile at -Og
>>   x86/shim: Fix compilation at -Og
>>   x86/sysctl: Make arch_do_sysctl() compile at -Og
>>   x86/irq: Make create_irq() compile at -Og
>>   xen/efi: Make efi_start() compile at -Og
>>   x86/shadow: Make _shadow_prealloc() compile at -Og
>>   xen: Use -Og for debug builds when available
> Acked-by: Jan Beulich <jbeulich@suse.com>
>
> I'd like to ask though that at least for the bogus warnings you
> amend the commit messages with the gcc version these were observed
> with. Perhaps even those seemingly bogus initializers would
> benefit from a very brief comment (or else there's a fair chance
> of them getting removed again at some point).

I'm afraid I don't have that information easily to hand, but all issues
were found by distro-provided compilers included in our Gitlab
infrastructure.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:32:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:32:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114200.217532 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9DY-0000pD-6q; Wed, 21 Apr 2021 09:32:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114200.217532; Wed, 21 Apr 2021 09:32: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 1lZ9DY-0000p6-3k; Wed, 21 Apr 2021 09:32:20 +0000
Received: by outflank-mailman (input) for mailman id 114200;
 Wed, 21 Apr 2021 09:32:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9DX-0000ox-Ml
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:32:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 611d64ab-219d-420f-a326-5660cda90a3d;
 Wed, 21 Apr 2021 09:32:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A4352B151;
 Wed, 21 Apr 2021 09:32: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: 611d64ab-219d-420f-a326-5660cda90a3d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618997536; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=AJdZj8+QcfOrMEdc5yXO4GLE3oVsYz1rta7UzRK008U=;
	b=udNXfQXlT5ltnrJW43fgFQD5p9mwDPL5LSHJUNTulkczHNAMjywijfDzrN07S6Goem2OMf
	2lh5lEXeSyEYIaQM5o972iwOSj3T1TT9Ms9FtPKyNp7S+RUciMsIEf5yfxM3lQ3f0R6cKG
	CCK4CNNHSuV12vJ3qC2C7ZNRL8vn/Eg=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Rahul Singh <Rahul.Singh@arm.com>
Cc: Julien Grall <julien@xen.org>, xen-devel
 <xen-devel@lists.xenproject.org>, Bertrand Marquis
 <Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
 <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
 <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
 <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
 <YH/fQpgEQyhiaj1Y@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e97b4e49-2655-a796-a298-d9ce5219c21f@suse.com>
Date: Wed, 21 Apr 2021 11:32:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH/fQpgEQyhiaj1Y@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 10:16, Roger Pau Monné wrote:
> On Wed, Apr 21, 2021 at 08:07:08AM +0000, Rahul Singh wrote:
>> Hi Jan,
>>
>>> On 20 Apr 2021, at 4:36 pm, Jan Beulich <jbeulich@suse.com> wrote:
>>>
>>> On 20.04.2021 15:45, Rahul Singh wrote:
>>>>> On 19 Apr 2021, at 1:33 pm, Jan Beulich <jbeulich@suse.com> wrote:
>>>>> On 19.04.2021 13:54, Julien Grall wrote:
>>>>>> For the time being, I think move this code in x86 is a lot better than 
>>>>>> #ifdef or keep the code in common code.
>>>>>
>>>>> Well, I would perhaps agree if it ended up being #ifdef CONFIG_X86.
>>>>> I would perhaps not agree if there was a new CONFIG_* which other
>>>>> (future) arch-es could select if desired.
>>>>
>>>> I agree with Julien moving the code to x86 file as currently it is referenced only in x86 code
>>>> and as of now we are not sure how other architecture will implement the Interrupt remapping
>>>> (via IOMMU or any other means).  
>>>>
>>>> Let me know if you are ok with moving the code to x86.
>>>
>>> I can't answer this with "yes" or "no" without knowing what the alternative
>>> would be. As said, if the alternative is CONFIG_X86 #ifdef-ary, then yes.
>>> If a separate CONFIG_* gets introduced (and selected by X86), then a
>>> separate file (getting built only when that new setting is y) would seem
>>> better to me.
>>
>> I just made a quick patch. Please let me know if below patch is ok. I move the definition to  "passthrough/x86/iommu.c” file.
>>
>> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
>> index 705137f8be..199ce08612 100644
>> --- a/xen/drivers/passthrough/pci.c
>> +++ b/xen/drivers/passthrough/pci.c
>> @@ -1303,13 +1303,6 @@ static int __init setup_dump_pcidevs(void)
>>  }
>>  __initcall(setup_dump_pcidevs);
>>  
>> -int iommu_update_ire_from_msi(
>> -    struct msi_desc *msi_desc, struct msi_msg *msg)
>> -{
>> -    return iommu_intremap
>> -           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>> -}
>> -
>>  static int iommu_add_device(struct pci_dev *pdev)
>>  {
>>      const struct domain_iommu *hd;
>> diff --git a/xen/drivers/passthrough/x86/iommu.c b/xen/drivers/passthrough/x86/iommu.c
>> index b90bb31bfe..cf51dec564 100644
>> --- a/xen/drivers/passthrough/x86/iommu.c
>> +++ b/xen/drivers/passthrough/x86/iommu.c
>> @@ -340,6 +340,13 @@ bool arch_iommu_use_permitted(const struct domain *d)
>>              likely(!p2m_get_hostp2m(d)->global_logdirty));
>>  }
>>  
>> +int iommu_update_ire_from_msi(
>> +    struct msi_desc *msi_desc, struct msi_msg *msg)
>> +{
>> +    return iommu_intremap
>> +           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>> +}
>> +
>>  /*
>>   * Local variables:
>>   * mode: C
>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>> index ea0cd0f1a2..bd42d87b72 100644
>> --- a/xen/include/xen/iommu.h
>> +++ b/xen/include/xen/iommu.h
>> @@ -243,7 +243,6 @@ struct iommu_ops {
>>                             u8 devfn, device_t *dev);
>>  #ifdef CONFIG_HAS_PCI
>>      int (*get_device_group_id)(u16 seg, u8 bus, u8 devfn);
>> -    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
>>  #endif /* HAS_PCI */
>>  
>>      void (*teardown)(struct domain *d);
>> @@ -272,6 +271,7 @@ struct iommu_ops {
>>      int (*adjust_irq_affinities)(void);
>>      void (*sync_cache)(const void *addr, unsigned int size);
>>      void (*clear_root_pgtable)(struct domain *d);
>> +    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
> 
> You also need to move the function prototype
> (iommu_update_ire_from_msi) from iommu.h into asm-x86/iommu.h,

The prototype can, in principle at least, remain where it is.

> or maybe you could just define the function itself as static inline in
> asm-x86/iommu.h?

Possibly (and in that case it would perhaps indeed be better to
move it there, compared to needing another #ifdef).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:33:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:33:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114206.217544 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9EE-0000wX-La; Wed, 21 Apr 2021 09:33:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114206.217544; Wed, 21 Apr 2021 09: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 1lZ9EE-0000wQ-Hx; Wed, 21 Apr 2021 09:33:02 +0000
Received: by outflank-mailman (input) for mailman id 114206;
 Wed, 21 Apr 2021 09:33:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3TEu=JS=arm.com=henry.wang@srs-us1.protection.inumbo.net>)
 id 1lZ9ED-0000wG-BY
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:33:01 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown
 [40.107.15.88]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e30299ca-3116-4bc6-979a-ff95828f4b59;
 Wed, 21 Apr 2021 09:32:59 +0000 (UTC)
Received: from DB6PR0802CA0045.eurprd08.prod.outlook.com (2603:10a6:4:a3::31)
 by DB6PR0802MB2373.eurprd08.prod.outlook.com (2603:10a6:4:88::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Wed, 21 Apr
 2021 09:32:57 +0000
Received: from DB5EUR03FT013.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:a3:cafe::a6) by DB6PR0802CA0045.outlook.office365.com
 (2603:10a6:4:a3::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend
 Transport; Wed, 21 Apr 2021 09:32:57 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT013.mail.protection.outlook.com (10.152.20.105) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Wed, 21 Apr 2021 09:32:57 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Wed, 21 Apr 2021 09:32:57 +0000
Received: from 2e091b846d3f.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B97A2A56-9BE3-4268-A072-9DE5EFF5B471.1; 
 Wed, 21 Apr 2021 09:32:47 +0000
Received: from FRA01-PR2-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2e091b846d3f.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 21 Apr 2021 09:32:47 +0000
Received: from PA4PR08MB6253.eurprd08.prod.outlook.com (2603:10a6:102:e4::8)
 by PR2PR08MB4811.eurprd08.prod.outlook.com (2603:10a6:101:21::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.21; Wed, 21 Apr
 2021 09:32:43 +0000
Received: from PA4PR08MB6253.eurprd08.prod.outlook.com
 ([fe80::19f9:d346:b9af:5cad]) by PA4PR08MB6253.eurprd08.prod.outlook.com
 ([fe80::19f9:d346:b9af:5cad%3]) with mapi id 15.20.4042.024; Wed, 21 Apr 2021
 09:32: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: e30299ca-3116-4bc6-979a-ff95828f4b59
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=raigjYOT3f3W5c1zbh/O8TBAZlZbVcoLgSBs3z/D2XQ=;
 b=wtQPbO5epkhaZZg1O2xXD0iJM6noAFAHNdEACnPzr9yluZzbeQAtczo5dwYuopNSnDpeE6hp0vStjoISf8Us6MPkCxnL5bQ9zXDP13Vkm7YhUzFpy3tN7MW0ojSut1dZQ9+INRKJ7RdtWaFGczsXI8w5qcCJNw7sYq7KXps9L7Q=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ecl+SlFnHT5ZxETQqPNpmzoJ+GE28olRvPAJ40sqDo115ZN2mFdz2JVulsDEHwlyOsg2jERSXz7DDWha9ixYpqyV2yAr1TV4DEdxW0THPZwpHQ6f72kmeuTRIV2wPv6NUD/3D9rkRrwBI+p+CRfP5IIB6K6+JU4fw53xRMTs7qZCMDjDDUTPnEcSAC3Nui6JwpEk9KGycV2xC6GCmWAlS8ux5OSjtM6yEzzdoQtjV7tz1m+RTFznxpCo94ab5xQN3XBJbHTkVZeqiV8BttXXQ8fwa0XBeE1mhxPy5GRmviGbzA/SXiYXZsTbqIYCKs83vGSpKZJ6BGZ4OE+HSCL+4A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=raigjYOT3f3W5c1zbh/O8TBAZlZbVcoLgSBs3z/D2XQ=;
 b=YIby+ezWgebVOuZJ8xfcJ0WPW3xlrdyPZfcRgo9ipiOrTCE/Gu2fiB4cMY35lH3Pph1EWX/MfMLiB4CKRBZswbbwJFm/ljNl3TNt4f+ejxfm237vwRe4N0IN40D6C3d91VQwOb5f4GI0ULBcHxOvsLOvXNMIXRO+IebCCFZOi1uCbvserg8w2ZW3K9ds3dpVUCgms3iEDxPyrXDR6ZgWKaUKLuuYJyLpZsDmz+DTUfJBKnMpeqB/tipqMlR62NhmPggcojw781cJAPbQcigegKSflQ33PGz8u99XC2Cz3bUCPb7/tlw1rmgy+EGaUcyu5RTVEAlWg81NSUpiI9cS3Q==
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=raigjYOT3f3W5c1zbh/O8TBAZlZbVcoLgSBs3z/D2XQ=;
 b=wtQPbO5epkhaZZg1O2xXD0iJM6noAFAHNdEACnPzr9yluZzbeQAtczo5dwYuopNSnDpeE6hp0vStjoISf8Us6MPkCxnL5bQ9zXDP13Vkm7YhUzFpy3tN7MW0ojSut1dZQ9+INRKJ7RdtWaFGczsXI8w5qcCJNw7sYq7KXps9L7Q=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Wei Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>
Subject: RE: Discussion of Xenheap problems on AArch64
Thread-Topic: Discussion of Xenheap problems on AArch64
Thread-Index: Adc2dyA8lkZGRqbyRiSglHolanVkwQAFhaqAAACgy/A=
Date: Wed, 21 Apr 2021 09:32:43 +0000
Message-ID:
 <PA4PR08MB62538BBA256E66A0415F0C7192479@PA4PR08MB6253.eurprd08.prod.outlook.com>
References:
 <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <cdde98ca-4183-c92b-adca-801330992fc5@xen.org>
In-Reply-To: <cdde98ca-4183-c92b-adca-801330992fc5@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ts-tracking-id: 853CF1EFC5ED9D45A68ABEA108A8F0F1.0
x-checkrecipientchecked: true
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [203.126.0.111]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: d48dc89b-d501-48bf-df0e-08d904a872dd
x-ms-traffictypediagnostic: PR2PR08MB4811:|DB6PR0802MB2373:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<DB6PR0802MB23733B5E47AA95DB742C62B392479@DB6PR0802MB2373.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 kWO/bcukpLBqZpqZP2xsJYyFI2dXagVjky4a0EyC8ntLqcOuDtcxBupevKzk3bMJSo9a7UdHsJm9dzyQJd9UfVMw/HlBnRt8n44gSHRgynvPVqVNvEbF/4mc5OTmFzptYP26s0eI1XjpHstRV+sXkRVNX2AJu/rFPp1o1paVXhpweHmAIJd3KpYBW4NEXrxmP6GnbO7tdlcOqouoIpISvU78cWSedHaKLNbLM0rJyJIHarmuQtDRIIWHtCmUphAwi2s1PDbHC61zdtwP5NE2HPRaVk7hLtBl9yxLIgQ+3J/jIb5G3YH2re5B0qeS6byoryWokXwI74tXOBIxiNZuASKFX3OJ+KpIzIF+tmAalvqIVPxtqWyQhosZ5KAauhTsV/PM2aMll3sLIssDfyo21MLPz62lG4EiAVhf2CBMANuYwY7PWdaRusmhA0V+E/3n9D2al3qfwqMaDVV7ALklnrRTQA5gpWCstEuE/FKncH8rzKFKpuD7gn7DMOT65w5M32ajA3bV0ZmgnOTNftyXGfuHe2RkWo4YvwNuj8KJ4MWwz5SPB3CDmh94sR/wnEveskHvG8zJ3JGSinJObTfbgvEH9a6H2xHFdgHEiO4/AG+xJqkv4TB+9MRnAYds338Nrj4N0e4LbHcjFh4tpsO6J+baq10Yp9nFMHjCbhL004VhCcUKZ3YKXxPHG4o+u8ng
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR08MB6253.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(366004)(376002)(39860400002)(346002)(186003)(52536014)(6506007)(53546011)(5660300002)(478600001)(7696005)(64756008)(8936002)(33656002)(316002)(71200400001)(2906002)(83380400001)(8676002)(38100700002)(54906003)(122000001)(66556008)(66946007)(9686003)(66476007)(110136005)(66446008)(55016002)(26005)(4326008)(86362001)(966005)(76116006);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR2PR08MB4811
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT013.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	eecf6e2e-019a-49a8-9ffc-08d904a86a2d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3ct0SRyF6xerHUbSd2a6qK/wE0tLSo+AEVuS0ewcVZVz/ezDurqrREWjeGMXNRcTe/4yTHlN3HvKsxV6m6PFGRQmNGeqtJvoGmP2Ct/sU4WzrRfIwQicbnXE6FApnriweTru0xe9xdGt982Z/Ja/dKsox1VjCXvJw+Q+sSbZw7RK2TO+d8AOj1o5O2tiiU9nPF0QKACbCOqVwgGqjsBeV1aIGZoqF8c2WebTPQ91hB5ZMYc+Z6XwybKs7WNiqZR2BjmtNR7pY0TSV/OFI1vW38SZjZYgYn3BDPUvJNsm8/m5EUi+Dy6RzHihOzzIrtYl3RfuVOOpvSiNAXNG3kaNDaBXWo+PiHqFVFDb8VjalZfIT6ftlRUzjdDt+YSh48hIcGHYKY+5t3zJOqGPTQWn/7H1BidxSAomujcVL2n+TERHlx3ii89rIclllvG7qwwv3jX/TaR+cE/VFcasH9A+HUhhyVvj7jVHSas2KvBNHkUlW0LbUYSx/sqQD31mgYSfT6WOtYl7R5IlkSfNP080wmNQXbsHIlTdlS1DowOABaAdcqR1f/C9/Vflco3VxDLUGLJg8MVlFc6+m0ascx5gHUbiahFLD4YYSmVzEAlX6fVq9CIw6poWMyavVa7h3iUCPkSVHAkcuJ8S497E3V7K9kzY3ro1zt+RUEy2Tr02NfqbQW9gbNEiPx+Y6iHjQEfDjETSb1Ds29zkEBw2GTm9Cs+4DiztBy231CTaKkOyjE4=
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:(4636009)(39860400002)(376002)(396003)(136003)(346002)(46966006)(36840700001)(55016002)(26005)(9686003)(82740400003)(33656002)(316002)(86362001)(110136005)(83380400001)(8676002)(356005)(81166007)(53546011)(2906002)(6506007)(82310400003)(5660300002)(52536014)(8936002)(966005)(186003)(7696005)(336012)(54906003)(36860700001)(47076005)(70586007)(4326008)(70206006)(478600001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 09:32:57.7715
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d48dc89b-d501-48bf-df0e-08d904a872dd
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:
	DB5EUR03FT013.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2373

SGkgSnVsaWVuLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEp1bGll
biBHcmFsbCA8anVsaWVuQHhlbi5vcmc+DQo+IFNlbnQ6IFdlZG5lc2RheSwgQXByaWwgMjEsIDIw
MjEgNTowNCBQTQ0KPiBUbzogSGVucnkgV2FuZyA8SGVucnkuV2FuZ0Bhcm0uY29tPjsgc3N0YWJl
bGxpbmlAa2VybmVsLm9yZzsgeGVuLQ0KPiBkZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBD
YzogV2VpIENoZW4gPFdlaS5DaGVuQGFybS5jb20+OyBQZW5ueSBaaGVuZw0KPiA8UGVubnkuWmhl
bmdAYXJtLmNvbT47IEJlcnRyYW5kIE1hcnF1aXMgPEJlcnRyYW5kLk1hcnF1aXNAYXJtLmNvbT4N
Cj4gU3ViamVjdDogUmU6IERpc2N1c3Npb24gb2YgWGVuaGVhcCBwcm9ibGVtcyBvbiBBQXJjaDY0
DQo+IA0KPiANCj4gDQo+IE9uIDIxLzA0LzIwMjEgMDc6MjgsIEhlbnJ5IFdhbmcgd3JvdGU6DQo+
ID4gSGksDQo+IA0KPiBIaSBIZW5yeSwNCj4gDQo+ID4NCj4gPiBXZSBhcmUgdHJ5aW5nIHRvIGlt
cGxlbWVudCB0aGUgc3RhdGljIG1lbW9yeSBhbGxvY2F0aW9uIG9uIEFBcmNoNjQuIFBhcnQNCj4g
b2YNCj4gPiB0aGlzIGZlYXR1cmUgaXMgdGhlIHJlc2VydmVkIGhlYXAgbWVtb3J5IGFsbG9jYXRp
b24sIHdoZXJlIGEgc3BlY2lmaWMgcmFuZ2UNCj4gb2YNCj4gPiBtZW1vcnkgaXMgcmVzZXJ2ZWQg
b25seSBmb3IgaGVhcC4gSW4gdGhlIGRldmVsb3BtZW50IHByb2Nlc3MsIHdlIGZvdW5kIGENCj4g
PiBwaXRmYWxsIGluIGN1cnJlbnQgQUFyY2g2NCBzZXR1cF94ZW5oZWFwX21hcHBpbmdzKCkgZnVu
Y3Rpb24uDQo+ID4NCj4gPiBBY2NvcmRpbmcgdG8gYSBwcmV2aW91cyBkaXNjdXNzaW9uIGluIGNv
bW11bml0eQ0KPiA+IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL3hlbi1kZXZlbC8yMDE5MDIxNjEz
NDQ1Ni4xMDY4MS0xLQ0KPiBwZW5nLmZhbkBueHAuY29tLywNCj4gPiBvbiBBQXJjaDY0LCBib290
bWVtIGlzIGluaXRpYWxpemVkIGFmdGVyIHNldHVwX3hlbmhlYXBfbWFwcGluZ3MoKSwNCj4gPiBz
ZXR1cF94ZW5oZWFwX21hcHBpbmdzKCkgbWF5IHRyeSB0byBhbGxvY2F0ZSBtZW1vcnkgYmVmb3Jl
IG1lbW9yeQ0KPiBoYXMgYmVlbg0KPiA+IGhhbmRlZCBvdmVyIHRvIHRoZSBib290IGFsbG9jYXRv
ci4gSWYgdGhlIHJlc2VydmVkIGhlYXAgbWVtb3J5IGFsbG9jYXRpb24NCj4gaXMNCj4gPiBpbnRy
b2R1Y2VkLCBlaXRoZXIgb2YgYmVsb3cgMiBjYXNlcyB3aWxsIHRyaWdnZXIgYSBjcmFzaDoNCj4g
Pg0KPiA+IDEuIElmIHRoZSByZXNlcnZlZCBoZWFwIG1lbW9yeSBpcyBhdCB0aGUgZW5kIG9mIHRo
ZSBtZW1vcnkgYmxvY2sgbGlzdCBhbmQNCj4gdGhlDQo+ID4gZ2FwIGJldHdlZW4gcmVzZXJ2ZWQg
YW5kIHVucmVzZXJ2ZWQgbWVtb3J5IGlzIGJpZ2dlciB0aGFuIDUxMkdCLCB3aGVuDQo+IHdlIHNl
dHVwDQo+ID4gbWFwcGluZ3MgZnJvbSB0aGUgYmVnaW5uaW5nIG9mIHRoZSBtZW1vcnkgYmxvY2sg
bGlzdCwgd2Ugd2lsbCBnZXQgT09NDQo+IGNhdXNlZA0KPiA+IGJ5IGxhY2sgb2YgcGFnZXMgaW4g
Ym9vdCBhbGxvY2F0b3IuIFRoaXMgaXMgYmVjYXVzZSB0aGUgbWVtb3J5IHRoYXQgaXMNCj4gcmVz
ZXJ2ZWQNCj4gPiBmb3IgaGVhcCBoYXMgbm90IGJlZW4gbWFwcGVkIGFuZCBhZGRlZCB0byB0aGUg
Ym9vdCBhbGxvY2F0b3IuDQo+ID4NCj4gPiAyLiBJZiB3ZSBhZGQgdGhlIG1lbW9yeSB0aGF0IGlz
IHJlc2VydmVkIGZvciBoZWFwIHRvIGJvb3QgYWxsb2NhdG9yIGZpcnN0LA0KPiBhbmQNCj4gPiB0
aGVuIHNldHVwIG1hcHBpbmdzIGZvciBiYW5rcyBpbiB0aGUgbWVtb3J5IGJsb2NrIGxpc3QsIHdl
IG1heSBnZXQgYSBwYWdlDQo+IHdoaWNoDQo+ID4gaGFzIG5vdCBiZWVuIHNldHVwIG1hcHBpbmcs
IGNhdXNpbmcgYSBkYXRhIGFib3J0Lg0KPiANCj4gVGhlcmUgYXJlIGEgZmV3IGlzc3VlcyB3aXRo
IHNldHVwX3hlbmhlYXBfbWFwcGluZ3MoKS4gSSBoYXZlIGJlZW4NCj4gcmV3b3JraW5nIHRoZSBj
b2RlIG9uIG15IHNwYXJlIHRpbWUgYW5kIHN0YXJ0ZWQgdG8gdXBzdHJlYW0gYml0cyBvZiBpdC4N
Cj4gQSBQb0MgY2FuIGJlIGZvdW5kIGhlcmU6DQo+IA0KPiBodHRwczovL3hlbmJpdHMueGVuLm9y
Zy9naXR3ZWIvP3A9cGVvcGxlL2p1bGllbmcveGVuLQ0KPiB1bnN0YWJsZS5naXQ7YT1zaG9ydGxv
ZztoPXJlZnMvaGVhZHMvcHQvZGV2DQo+IA0KDQpSZWFsbHkgZ3JlYXQgbmV3cyEgVGhhbmtzIHlv
dSB2ZXJ5IG11Y2ggZm9yIHRoZSBpbmZvcm1hdGlvbiBhbmQgeW91ciBoYXJkDQp3b3JrIG9uIHRo
ZSBQb0MgOikgSSB3aWxsIHN0YXJ0IHRvIGdvIHRocm91Z2ggeW91ciBQb0MgY29kZSB0aGVuLg0K
DQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+IENoZWVycywNCj4gDQo+IC0tDQo+IEp1bGllbiBH
cmFsbA0K


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:34:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:34:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114210.217556 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9FB-00013t-03; Wed, 21 Apr 2021 09:34:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114210.217556; Wed, 21 Apr 2021 09:34: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 1lZ9FA-00013l-ST; Wed, 21 Apr 2021 09:34:00 +0000
Received: by outflank-mailman (input) for mailman id 114210;
 Wed, 21 Apr 2021 09:33:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9F9-00013d-C6
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:33:59 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 52777513-d7ed-4682-8ce1-944a3bed9a59;
 Wed, 21 Apr 2021 09:33:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 82556AF88;
 Wed, 21 Apr 2021 09:33:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 52777513-d7ed-4682-8ce1-944a3bed9a59
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618997637; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=sj2W1dIWu0VjjkCF4tlltSv17ivQvae8brAXgsZMrU8=;
	b=P1bLkk1g/Qw7rUUdVLlPbna0Ov54HSdVPuO/isaFbGMBC5G6hDvoH7sNLc6ETQkRM1ndu5
	8cCq8G/7qd4HU91WUpg8eqEFieEuP3ZY/WcpaiP86uLwzNOq3BzDIoG4FWnW+KEorCZM2g
	eonPSp+abhf4Fs0EdpsRSX1MM8ylg50=
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
To: Rahul Singh <Rahul.Singh@arm.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>
Cc: Julien Grall <julien@xen.org>, xen-devel
 <xen-devel@lists.xenproject.org>, Bertrand Marquis
 <Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
 <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
 <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
 <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
 <YH/fQpgEQyhiaj1Y@Air-de-Roger>
 <DA4D72F4-CD1E-46D0-9D32-D8AB01F445F9@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <106baee5-014a-37bd-c8e9-e06b5db5e0e2@suse.com>
Date: Wed, 21 Apr 2021 11:33:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <DA4D72F4-CD1E-46D0-9D32-D8AB01F445F9@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 11:15, Rahul Singh wrote:
> Hi Roger,
> 
>> On 21 Apr 2021, at 9:16 am, Roger Pau Monné <roger.pau@citrix.com> wrote:
>>
>> On Wed, Apr 21, 2021 at 08:07:08AM +0000, Rahul Singh wrote:
>>> Hi Jan,
>>>
>>>> On 20 Apr 2021, at 4:36 pm, Jan Beulich <jbeulich@suse.com> wrote:
>>>>
>>>> On 20.04.2021 15:45, Rahul Singh wrote:
>>>>>> On 19 Apr 2021, at 1:33 pm, Jan Beulich <jbeulich@suse.com> wrote:
>>>>>> On 19.04.2021 13:54, Julien Grall wrote:
>>>>>>> For the time being, I think move this code in x86 is a lot better than 
>>>>>>> #ifdef or keep the code in common code.
>>>>>>
>>>>>> Well, I would perhaps agree if it ended up being #ifdef CONFIG_X86.
>>>>>> I would perhaps not agree if there was a new CONFIG_* which other
>>>>>> (future) arch-es could select if desired.
>>>>>
>>>>> I agree with Julien moving the code to x86 file as currently it is referenced only in x86 code
>>>>> and as of now we are not sure how other architecture will implement the Interrupt remapping
>>>>> (via IOMMU or any other means).  
>>>>>
>>>>> Let me know if you are ok with moving the code to x86.
>>>>
>>>> I can't answer this with "yes" or "no" without knowing what the alternative
>>>> would be. As said, if the alternative is CONFIG_X86 #ifdef-ary, then yes.
>>>> If a separate CONFIG_* gets introduced (and selected by X86), then a
>>>> separate file (getting built only when that new setting is y) would seem
>>>> better to me.
>>>
>>> I just made a quick patch. Please let me know if below patch is ok. I move the definition to  "passthrough/x86/iommu.c” file.
>>>
>>> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
>>> index 705137f8be..199ce08612 100644
>>> --- a/xen/drivers/passthrough/pci.c
>>> +++ b/xen/drivers/passthrough/pci.c
>>> @@ -1303,13 +1303,6 @@ static int __init setup_dump_pcidevs(void)
>>> }
>>> __initcall(setup_dump_pcidevs);
>>>
>>> -int iommu_update_ire_from_msi(
>>> -    struct msi_desc *msi_desc, struct msi_msg *msg)
>>> -{
>>> -    return iommu_intremap
>>> -           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>>> -}
>>> -
>>> static int iommu_add_device(struct pci_dev *pdev)
>>> {
>>>     const struct domain_iommu *hd;
>>> diff --git a/xen/drivers/passthrough/x86/iommu.c b/xen/drivers/passthrough/x86/iommu.c
>>> index b90bb31bfe..cf51dec564 100644
>>> --- a/xen/drivers/passthrough/x86/iommu.c
>>> +++ b/xen/drivers/passthrough/x86/iommu.c
>>> @@ -340,6 +340,13 @@ bool arch_iommu_use_permitted(const struct domain *d)
>>>             likely(!p2m_get_hostp2m(d)->global_logdirty));
>>> }
>>>
>>> +int iommu_update_ire_from_msi(
>>> +    struct msi_desc *msi_desc, struct msi_msg *msg)
>>> +{
>>> +    return iommu_intremap
>>> +           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
>>> +}
>>> +
>>> /*
>>>  * Local variables:
>>>  * mode: C
>>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>>> index ea0cd0f1a2..bd42d87b72 100644
>>> --- a/xen/include/xen/iommu.h
>>> +++ b/xen/include/xen/iommu.h
>>> @@ -243,7 +243,6 @@ struct iommu_ops {
>>>                            u8 devfn, device_t *dev);
>>> #ifdef CONFIG_HAS_PCI
>>>     int (*get_device_group_id)(u16 seg, u8 bus, u8 devfn);
>>> -    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
>>> #endif /* HAS_PCI */
>>>
>>>     void (*teardown)(struct domain *d);
>>> @@ -272,6 +271,7 @@ struct iommu_ops {
>>>     int (*adjust_irq_affinities)(void);
>>>     void (*sync_cache)(const void *addr, unsigned int size);
>>>     void (*clear_root_pgtable)(struct domain *d);
>>> +    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
>>
>> You also need to move the function prototype
>> (iommu_update_ire_from_msi) from iommu.h into asm-x86/iommu.h, or
>> maybe you could just define the function itself as static inline in
>> asm-x86/iommu.h?
> 
> 
> Ok. I will move function prototype (iommu_update_ire_from_msi) from 
> iommu.h into asm-x86/iommu.h.
> 
> I first tried to make the function as static inline in "asm-x86/iommu.h" but after 
> that I observe the compilation error for debug build because "asm/iommu.h” 
> is included in "xen/iommu.h” before iommu_call() is defined in "xen/iommu.h”.
> That's why I decided to move it to the "passthrough/x86/iommu.c” file.

Which in turn would be an argument for keeping it in xen/iommu.h and
wrap it in an #ifdef.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:36:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:36:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114216.217568 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9HY-0001IU-Cz; Wed, 21 Apr 2021 09:36:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114216.217568; Wed, 21 Apr 2021 09: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 1lZ9HY-0001IN-9w; Wed, 21 Apr 2021 09:36:28 +0000
Received: by outflank-mailman (input) for mailman id 114216;
 Wed, 21 Apr 2021 09:36:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9HW-0001II-GL
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:36:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c06e48c4-eea7-4d40-baeb-e8af7ed4bfbc;
 Wed, 21 Apr 2021 09:36:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 115F9B2E4;
 Wed, 21 Apr 2021 09:36: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: c06e48c4-eea7-4d40-baeb-e8af7ed4bfbc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618997785; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mjI3cwIvRZCqDbzZskark2u8JjM+yVrhgh5DWKybc/8=;
	b=KnrOBdXC6n9pA6tl0G4hvjlzXlt7VjsOFoRAjs8+717Os5Gg7V+BAHow0v08lNAuIi+NqZ
	oxNUWm0PfGmmGR2ceJ0EmYu7k1xNkk6OV6LvRAdk0T4A56tBKSk4lNPrkI5bbeLYO1+Um1
	YAc12/ZN86NllrJ/joTH28b7EceP0FM=
Subject: Re: [PATCH] CI: Drop TravisCI
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
 <julien@xen.org>, Doug Goldstein <cardoe@cardoe.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20210421092705.2295-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <42a760a2-5663-8e7e-78a5-f5988f222378@suse.com>
Date: Wed, 21 Apr 2021 11:36:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210421092705.2295-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 11:27, Andrew Cooper wrote:
> Travis-ci.org is shutting down shortly.  The arm cross-compile testing has
> been broken for a long time now, and all testing has now been superseded by
> our Gitlab infrastructure.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

FWIW
Acked-by: Jan Beulich <jbeulich@suse.com>



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:38:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:38:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114220.217580 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9JJ-0001Pz-QL; Wed, 21 Apr 2021 09:38:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114220.217580; Wed, 21 Apr 2021 09:38:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9JJ-0001Ps-Mw; Wed, 21 Apr 2021 09:38:17 +0000
Received: by outflank-mailman (input) for mailman id 114220;
 Wed, 21 Apr 2021 09:38: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 1lZ9JH-0001Pi-FN; Wed, 21 Apr 2021 09:38: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 1lZ9JH-0004Uu-96; Wed, 21 Apr 2021 09:38: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 1lZ9JH-0003a5-2J; Wed, 21 Apr 2021 09:38:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZ9JH-0008OI-1n; Wed, 21 Apr 2021 09:38:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=x2A0zMaTPRgi9l9BcAJRTvfZfu4KCw/TiPjFy9gm0YY=; b=SeRFgeROkSkm+jhSlGxlrK89+v
	4sb9c0UA4UCXvseEWYEPhAxz4QxCHOMGO97lbBfn7z6cFkuTh9c3UJELOsHOz0uUDiX9f3KddAfml
	dcSKnKCX0J5jzXwLUAdRV+kKDJFoiL5qtvSCpC2XJHSLvmHzoebFb+SV/vFvBu14E+ok=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161323-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.13-testing test] 161323: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.13-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:heisenbug
    xen-4.13-testing:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:allowable
    xen-4.13-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.13-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.13-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.13-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.13-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.13-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.13-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.13-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.13-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.13-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=33049e3ad9c3a0f7432969f4b5d7b1a287b5b8f9
X-Osstest-Versions-That:
    xen=57a60c1f2779ce6d6ab5c2f677c4d0c66b09b08b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 09:38:15 +0000

flight 161323 xen-4.13-testing real [real]
flight 161348 xen-4.13-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161323/
http://logs.test-lab.xenproject.org/osstest/logs/161348/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail pass in 161348-retest

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds    18 guest-start/debian.repeat fail REGR. vs. 160326

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 161348 never pass
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 160326
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 160326
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 160326
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 160326
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 160326
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 160326
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 160326
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 160326
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 160326
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 160326
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 160326
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-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-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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

version targeted for testing:
 xen                  33049e3ad9c3a0f7432969f4b5d7b1a287b5b8f9
baseline version:
 xen                  57a60c1f2779ce6d6ab5c2f677c4d0c66b09b08b

Last test of basis   160326  2021-03-22 17:06:05 Z   29 days
Testing same since   161323  2021-04-20 10:36:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  Frédéric Pierret <frederic.pierret@qubes-os.org>
  Jan Beulich <jbeulich@suse.com>
  Jason Andryuk <jandryuk@gmail.com>
  Roger Pau Monné <roger.pau@citrix.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   57a60c1f27..33049e3ad9  33049e3ad9c3a0f7432969f4b5d7b1a287b5b8f9 -> stable-4.13


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:46:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:46:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114242.217643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9RY-0002fV-FX; Wed, 21 Apr 2021 09:46:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114242.217643; Wed, 21 Apr 2021 09:46:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9RY-0002fO-CP; Wed, 21 Apr 2021 09:46:48 +0000
Received: by outflank-mailman (input) for mailman id 114242;
 Wed, 21 Apr 2021 09:46:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZ9RW-0002fJ-Co
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:46:46 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 09ee9c64-40d0-43fd-bff3-e0b4f0b565a4;
 Wed, 21 Apr 2021 09:46: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: 09ee9c64-40d0-43fd-bff3-e0b4f0b565a4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618998404;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=2ExYo5GYk0ZYCjB2m6wa1qY23SFn9W0dEsKeB2MJQcI=;
  b=c6wYPqGc24t193iDbN7fv+xJwLnlrD4GkVbpjc1cM9a1UawRFzUIouq0
   68r74IGqTaSl5ptrcwcQvMg9a79qYlzJJQV2CIeRHEXa7wZBOGSddhfXy
   lLwy7AL+eIQ5ZEasNJVjqsbg3HgsZXLEuiIzjeSKaMXcdPJ0BX4G2UK60
   o=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: OHDzpqKF4BzdPwMHKx37PegB+bepLn2ilThgvhvjci5F4fsxm/0VGFeL2JxdOtT35VB3FbxPcW
 joRHSn70fIEtjBCi67bnbsrakIYYlLy8/tM+jJeBAAq/0g7PesS0TKX1JOAY+Bu4zYdmanaqCe
 glpZ80vr4LN4YoQkCKg7fIJPlZh9Gi2ICmNUjeQcmLEqC6QfEnYbYRc59r9G+g0sDOXQP8cTsv
 ECf7IMKhOt6dRfrg0I+adxiz6bKf7Fn/dtYRUmyz33ocrX9O8Lb0bKL+V7ol9kmQvMZZdKK1jV
 Jb4=
X-SBRS: 5.2
X-MesageID: 42064409
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:kYAuq6kX4bb5ch0+e4CGrXKhsRDpDfO9j2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN/AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 tdWoBEIpnLAVB+5PyW3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0ZNi+wOCRNNW57LLA+E4
 eR4dcCijq7YHIMbtm6AH5tZZm4m/TgkpX6bRkaQyM28QXmt0LS1JfWMTi9mi0fXTRG3Ks4/Q
 H+/TDRy62/v5iAu33h/kDJ6ZA+oqqF9vJiA4i2htEROnHQjG+TFflccpmjmBxwn+218lYtl7
 D30mYdFuB+8WnYcG3wgTaF4XiY7B8U53XvyUCVjBLYyKSTLlJKaLszuatjfhTU8EYmtt1nuZ
 g7p16xjJZLEQjG2B30+tmgbWAVqmOPvXEgneQP5kYvN7c2Vbk5l/16wGplVL0EHC789bk9Fv
 hvAMz29J9tACynRkGckW91zNO2WHMvWj+AX0gZo8SQlwNbhXZj0iIjtYEit0ZF0Kh4Z4hP5u
 zCPKgtvLZSTvUOZaY4IOsaW8O4BkHEXBqkChPfHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ
 PdFHtFqG8bYSvVeIyz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykvGnv+4UDqTgKr
 iOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+dEmJpu7NN432ps3WePveP9PWYHUZc1K6Jk
 FGcCn4Jc1G4EzucGT/mgLtV3TkfVG63Z8YKtmZw8EjjKw2cqFcuAkcjlq0ouuRLydZj6AwdE
 xiZJfukqaxo3iK7X/Fhl8ZfyZ1PwJw2vHNQnlKrQgFPwffarAYoeiSfmhUwT+hKgJgSdjVVC
 pSvU5+967yD5H4/1FsN/uXdkahy1cDrnODSJkR3oeZ493+R58+BpE6HIprFQvKEBRxsR1wqH
 hKbTIFQkO3LEKvtYyVyLgvQM3Pfdh1hwmmZeROr2jEiEmarcYzAkcAUyWWSs6RiwY2Tz9yjl
 l8mpVvxIaoqHKKEy8Ske44OFpDZCCyDKhdBAqIXolSh4vmYRp9V2uMmDychSwiY2aCzTRjuk
 XRaQmvPd3bCFtUvX5Vlpzn9155bU2xVUN9YHISi/w0KU32/lJIlcObbKu61GWcLmYYyuYGKT
 fffH85OQV13e260xaThRePHXgr3Y8VI+TYFbgvGoujnU+FGcmtr+UrDvVU9JFqOJTSqecNS/
 uYYBLQAzXiCe8lsjbl0UoNCW1Rkj0Dnvzp0hG+szT98347HPbIIFNpA5scOMqR6mD4R/COlL
 V15OhFyNeYAyHUUJqhz6qSUhtobjX0ikSyR/szqZ9Vsbkp3YEDVqXzYH/t7jV/wB46LM3Ij0
 sQT6Rw3aDZNuZUDr4vUhMc2mBsqc+GI0QquDHnG+MSfVkiiHnAItOCioC43YYHMwmkpAHqP0
 OY/DAY1/DZXzGb3bpyMdN6HU1mLGw94m9l5uWMasn5DxirbfhK+B6fPmWmeLFQDIiDFrN4lG
 cx3/i428uWfTH/wgbeoH9SJb9P6X+uRYeKOz23cNQ4heCSCBCrmaul4Mm6kTfxR3+aUi0j9P
 F4XH1VSN9ChDkkhJAwyQ6oRMXM0wQYr2c=
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="42064409"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AAvZqldqcsJnEyNR2eRF8g0tmC86dWJiLJspnBRtzucbyvgsjJpFF2qhV4zJ0vnCRTfICNt+PyQWUtczd4CWR/lhjy7VsevJVsXP8moPuvwgVASpOu1tl3nzgouB2ckOQb2AFSoAN7wOAZpwY613vv2VlhEb0ZdPQ3cQhonOv4P8cF8oq3MS5PsrcWXHj67tNjvmSqMoYmtMzRzAbsTBDR7YnMrabYaSF8CB5FHIb1Oqp45QPkuUyAOxdtQ5t6aZSgvkgCkyY4d0weLVvlLJippn2WENebF0OTJaVDAqgKVthSdB390ojjJpZ4vTfqV3uxdm+wAAecVn7cILI9RYVg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2ExYo5GYk0ZYCjB2m6wa1qY23SFn9W0dEsKeB2MJQcI=;
 b=azuDUepteBEoBX2Wsz+2hxJIDQK0KyE5y4NfNyxS47D/jqvfkpwrP1vTYRrkuNZPX9GMp5Epr+mKLulRJWeVX15wWAFCx1O6VNVLKs3HycbB0sPChM98ErRoY1y51cEr0aSgZ0w0ymfUjOSnko0EDK2daaQHkOpUjPxtXfhXMdBl+HKFX6QVUqybLngBlL59UVVqImeqtACdU4pqk9deVTiEQ8ex2xFDTcZzfO7wvKEpLsULEMauqdYAli/hxq3Hr09mbJSmGQkNleGXEKw43YYxH8YCbC7DQho46jqrEKLuZaVcTg3ZBRbm3OMlzJ5WYyVTVDd3PtZHl1+5gihWvg==
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=2ExYo5GYk0ZYCjB2m6wa1qY23SFn9W0dEsKeB2MJQcI=;
 b=vwAK5EnDXjNDdxIhStwb7hsz5UmsdSsxeurdiAM7QmxD/Bei3/3pQ7KvBENxStxuzWMAkzIPiO1o6HjL87EAcMbb27E8GPFNlvIATRejHOtRZSiX4vgyJC9IeGoZj9YqtlZEKLZOLG4tf4+Vj/DC5pVGwddYieAl5hRnLgQhzGg=
Date: Wed, 21 Apr 2021 11:46:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 4/8] x86/EFI: redo .reloc section bounds determination
Message-ID: <YH/0dzlPxwWF1PA2@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <b886eb2c-cabc-f195-4996-aae1fc3c61d9@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <b886eb2c-cabc-f195-4996-aae1fc3c61d9@suse.com>
X-ClientProxiedBy: MRXP264CA0031.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::19) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 734a921c-3df7-4304-aacf-08d904aa5c16
X-MS-TrafficTypeDiagnostic: DM6PR03MB3484:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB3484E903A810B6BF0FF5F2EB8F479@DM6PR03MB3484.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: C2M5mQ4IwnFspSAV5SCcqUPVO40tAI9q8XliODkdAObTnG6Efyn6sPKCDG5sUoNqaPP09prsn70rLIbFx/cKmTWWgfeloyIuNuBq+xH75oPvUuVsu0w4hwB7Cu7yRC9q/gfuJPNOZbmqtLZu+dcBrEVC93XKgSaEf5EvmJUtqM50on2uf+lry4ztFnm0OR/NSXpnqO3msbvDN7VlPBNMReltykQbZDEHto/wIFd33rcwKl9LCOXzlGWM49ZwNdoo3qaC6TzaInriKhJR34zfERts+7ACq34GbVTy0ekuXoVQ9xZwtX85AxwsRCfFRu8b2La+QhMXQCFO7nPj1sIAO/3UN68SfKQTa28w0b9WjMI/8bhJc0GndaQEcH/rAZMs4yQ+wZN/LullwWPUWCMVW9whSOjCxR5KQlZ5VX8RHvYOjxl2l8ZsggwDnobV9pgvgCKM/tsQ7e8A9hEsqRVwqFTrgICFFgzNyfEQm2HR2O/R9NYvHI1DZZMC+XGTeVmmf2f7KjhcNdPXiLxGA2SWupTMOeqxbuYXYWhy8thCdtA/oNjFfAyA5ruzqp6ftTzcwhk/g/l3/+i1Uk7EY+0IYxQgoofBX8a6JSPgNx4wzDPLLDFLLwWlJMT6WYld74XjVUwM28JDZaUMT1Ywf4fLX+dcX3P5oHWMh4ATzlUQV3k=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(396003)(39860400002)(366004)(136003)(346002)(6666004)(9686003)(33716001)(5660300002)(956004)(66946007)(8676002)(6496006)(316002)(66556008)(478600001)(2906002)(83380400001)(66476007)(38100700002)(6916009)(86362001)(8936002)(26005)(186003)(6486002)(16526019)(85182001)(54906003)(4326008)(142923001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 734a921c-3df7-4304-aacf-08d904aa5c16
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 09:46:38.8075
 (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: mroLKLzUqSFPy/31+xY7WFYFmC1440Mnpgp/OvaCR4jjTVHkw/F8Nhp4JDulE2iAbNFCyRA9NLHealFM49TOig==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3484
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:45:38AM +0200, Jan Beulich wrote:
> There's no need to link relocs-dummy.o into the ELF binary. The two
> symbols needed can as well be provided by the linker script. Then our
> mkreloc tool also doesn't need to put them in the generated assembler
> source.

Maybe I'm just dense today, but I think the message needs to be
expanded a bit to mention that while the __base_relocs_{start,end} are
not used when loaded as an EFI application, they are used by the EFI
code in Xen when booted using the multiboot2 protocol for example, as
they are used by efi_arch_relocate_image.

I think relocation is not needed when natively loaded as an EFI
application, as then the load address matches the one expected by
Xen?

I also wonder, at some point there where plans for providing a single
binary that would work as multiboot{1,2} and also be capable of being
loaded as an EFI application (ie: have a PE/COFF header also I assume
together with the ELF one), won't the changes here make it more
difficult to reach that goal or require reverting later on, as I feel
they are adding more differences between the PE binary and the ELF
one.

The code LGTM, but I think at least I would like the commit message to
be expanded.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:49:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:49:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114245.217654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9UN-0002nZ-UL; Wed, 21 Apr 2021 09:49:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114245.217654; Wed, 21 Apr 2021 09:49:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9UN-0002nS-Qz; Wed, 21 Apr 2021 09:49:43 +0000
Received: by outflank-mailman (input) for mailman id 114245;
 Wed, 21 Apr 2021 09:49: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 1lZ9UN-0002nJ-2d; Wed, 21 Apr 2021 09:49: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 1lZ9UM-0004iF-Q5; Wed, 21 Apr 2021 09:49: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 1lZ9UM-0003z2-Ho; Wed, 21 Apr 2021 09:49:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZ9UM-0000vj-H1; Wed, 21 Apr 2021 09:49: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=53KQugm1fyqBzWtPGDhRW0n6H8Rgv0kiflbsZe5AGHk=; b=NsCkKNDKvGdlkAbGVbd54czXM/
	dYi//zQwivJWJcAzsOoVE6wL9AvCt7coMH/1ilk0/L3w7w/RSFtMzesawBDKzs/mm+N4ctXHcN0Nr
	vhzlXwwcWc5fqcsGgzkRhr7PVsVVdKwpNwR9r+VotH3WPNgJCwU1ciQU4X2rwu0t+rd4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161350-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-coverity test] 161350: all pass - PUSHED
X-Osstest-Versions-This:
    xen=aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
X-Osstest-Versions-That:
    xen=dd22a64de7e02b48312839a15179528c8f7db5c6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 09:49:42 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xen                  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
baseline version:
 xen                  dd22a64de7e02b48312839a15179528c8f7db5c6

Last test of basis   161257  2021-04-18 09:19:39 Z    3 days
Testing same since   161350  2021-04-21 09:19:38 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Bertrand Marquish <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Rahul Singh <rahul.singh@arm.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Tamas K Lengyel <tamas@tklengyel.com>
  Tim Deegan <tim@xen.org>
  Wei Liu <wl@xen.org>

jobs:
 coverity-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/xen.git
   dd22a64de7..aaa3eafb3b  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc -> coverity-tested/smoke


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:51:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:51:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114250.217670 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9W7-0003eE-AQ; Wed, 21 Apr 2021 09:51:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114250.217670; Wed, 21 Apr 2021 09:51: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 1lZ9W7-0003e7-7E; Wed, 21 Apr 2021 09:51:31 +0000
Received: by outflank-mailman (input) for mailman id 114250;
 Wed, 21 Apr 2021 09:51:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZ9W6-0003e1-L1
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:51:30 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 66bb021a-d33c-4e10-8abd-65d1d3fac78c;
 Wed, 21 Apr 2021 09:51: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: 66bb021a-d33c-4e10-8abd-65d1d3fac78c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618998689;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=oTqMgQNTbljGkCNof0aogO2mCDJzupvG+kPHh72K1WI=;
  b=DyX4dNKf6nz9aF43a4FbTBhKAx8QFLaRAkXdRHIukMLKakrPHV28RwG8
   YP6Nsp3JF3iCxcArPe0HBuj6Kce5rKjAGayp0CpmF4ZQnRrPhg9EBSUgy
   ZASrPDVT3tYuvHSkEusAqsyKoJ+rJjJ3AyTloVbHXVHnSt5h/+qXBUzOz
   E=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: LF47+frCR743NAddzqk7PyL/Zf6bTHY4m+2kFim7M9cdNOiIgoBmm8tSTXb6CxzLceuYayl2RK
 +K/f7kwLKfa6Cmkd71fvIoHxeJGhD3fJv3ea6feymiKJEc9YQlEPByIFrVeUop0wSht0VEOsDD
 xUE8eczmbTq4nTtiSJSPAoXoXntzIJ7ukOkOGgOQscFsrihnJ9Ri4qxC107MGTYKjA5BTtzWGc
 kXPbforW3iZhiFPcsoXcbzzZ7+ymvP5VnKr3MvJeFAaLwrOvp/hc5Q4yCVy6+keKY/kPaiChal
 NzY=
X-SBRS: 5.2
X-MesageID: 41894874
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:LEsSpqPnoj8UCsBcT3Pw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAse9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrAHIMxbVstRQ3a
 IIScRDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RdQZCtBApsQiTtRIACdD0FwWU1qBYAhEo
 Cd+8pAoFObCAkqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+HLzGz2BACXzRThYoz6G
 StqX2C2oyPkdGejiXd2Wja8ohMlLLaq+drKcSQhqEuW1DRoymyYoAJYczngBkUp6WV5E8ugJ
 3wpX4bTrtOwlfwWk3wnhf3wQnn118Vmgzf4HuVm2Hqr8C8ZB9SMbs4uatjfhHU61UtsbhHuc
 ohtQ/p1Os0fGb9tR/w6NTSWxZhmlDcmwtYrccpg2FCSoxbUbdNrOUkjTNoOa0dFyH34p1PKp
 gWMOjg4p9tADSnRkGclGxuzNuwZ280DxeLT2MT0/blogR+rTRXyVAVy9cYmWpF3JUhS4Nc7+
 CBCahwkqpSJ/VmIp5VNaMke4+aG2bNSRXDPCa7JknmLrgOPzbop4Ts6Ls4yem2cPUzvdUPsa
 WEdGkdmX85ekroB8HL9oZM6ArxTGK0Wimo4t1C5rBi04eMB4bDAGmmchQDgsGgq/IQDonwQP
 CoIq9bBPflMC/HBZtJ5QvjQJNfQENuEPE9i5IeYRajs8jLIorluqjwa/DIPofgFj4iRyfRGX
 0GcD/vJNhRz0yiV3Pi6SKhHk/FSwjax9ZdAaLa9+8cxMwmLYtXqDUYjly/+4WqJFR5w+gLVX
 o7BImivrKwpGGw82qNxX5uIABhAkFc56ild3tLoAQNIn7laLprgaTZRUlimF+8YjNvRcLfFw
 BS435t/7isEpCWzSc+T/WqL3ydlHlWgH6RVZ8Tlumi6K7eC9IFJ6djfJY0ORTAFhRzlwovgn
 xEchU4SkjWES6rr76kgpwSDOT2bMJ9nw+vHM5RpRvkxAehjPBqYkFecy+lUMaRjwprbSFTnE
 dN/6gWh6fFpSyiMlIlgOMzMERFbUOeBL4uNnXCWKxk3pTQPC1gR2aDgjKXzzU+YHDj+Ukpim
 v9FiGMYv3QDl1BundX77by/DpPBxegVnM1Tko/nZx2FGzAtHo26+ONa6ap+0a6a1cJwIgmQX
 v4SApXBjkr68G81RaTljrHKG4vwY82OPfBSJ45davI53+rIIqUtK0PEvNO5qx5PNT2vuJja5
 PHRyalaBfDT8850Q2coXgofBRuoH4/iPXyxVnL6nO70HNXO4uaHH1WA5UgZ/eS4GjvS6zWjN
 FXjdcpsfCxNWu0QNic0q3TZyNCLBSWgWPedZBelblk+YYJ8J10FN3ndBGN8ldt9hA3Nt31m0
 MTW74T2sGLBqZfO+gpPxtE9V8onumVJEQlsgbKEvYzFGtd+0PzDpes2f70srIhDU2KmRvoNX
 Se+yNb+e3ZXyHr789tN4sAZUBXYlM78nJs4aercJDREhyjc4h4jReHG074VL9WU66eH7oM6j
 58/tGThueSMw71whrZszc+AqVA9Q+cMI+PKTPJPe5D6NqhP1uQxoOs/c6olT/yDQKBVH5wv/
 wMSWUgKuJZijcji4Ur0i+9DozPy3hV7Wd20HVAjV7i2o+v/WHBO1pJWDep2qlrYQ==
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="41894874"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K0rWyxRg5E5mpumjWvkI7xKBC1bAiqSf4/+YnOvSQMMrvLm7vgT5dhu589E7g5/ViO9umG3WMUthfvDvrt+0n8JGgEGNycPkZwXgK3DK3BjU3keRd+K9XnSN44zbzXqbUZGScyGhR4Zy3dpaY+WrvRxeaG/3z0z57JYtSy6111gCZysCrmTYsBzbTxE4xwQBkjlv9utjRB/0WGEiLE00HhlpVOarLDx0hcZ9aMvSPGehcBRl2WPC1Ma9EPLCeLTl2ez4yosdyMfgnRxRuacUJ1MNUMWdMR0aXHxSrPmrK2AQC6X2AQFZ0J6C+o5DD0obJ7oZlQJy2DXQk1FOvt/agQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uwNUfrZqu+DuUd2g4tbFwNBfv+P2RW/cTZIEI9eiZWw=;
 b=X3q11TSVTXyw28rEQflUbDBKz7RBSPOXM3LwE7D2I2XrSNu6ToF5mYWZX0yZcTzfjiOUxswEtwcp8xu+8Wv6Zbz4rbsbiR5Bm2PLu+TjP6a8QD3s30Z78K6UasjW9km9YGgDttXKEY2OQk/zvCwggQ7EpeOOzSiIUE9nW+kJlFdMwm2n+an+HP8juDKQHlFIRBKOSJsDVSu0dOlOnncLQYqMO1QDaDPoX5uFk6DKN5xmJDcvLQQS8xLV0r63u/uCOqcepjwD96aiI2IOrpxSDjYFznbGvOICxcKp/HdWnglj4mJ7P2oc324d1rpUaDOFBPmCH0O3lpefwUYJvd+4lg==
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=uwNUfrZqu+DuUd2g4tbFwNBfv+P2RW/cTZIEI9eiZWw=;
 b=FipwPRORFUuljiL7ETIeIbLdSW9s/o375RYk2iJODktFpTHbJyRZz8E8sdcXRPBcAwe6Y4FV4p8Jm8hylf7ZdJoJHs0M06M/32YTV4ZhgySSZdnLPe53M9proMzCkfomijtV4XH7w4+QQtBt7PcCBrTUShDvCitWW7Qwu8qIM7A=
Date: Wed, 21 Apr 2021 11:51:22 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Andrew
 Cooper" <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 5/8] x86: drop use of prelink-efi.o
Message-ID: <YH/1mjZ+VI1ySusV@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <ea4fd135-fe9a-ecea-c03f-0b518b800d4b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ea4fd135-fe9a-ecea-c03f-0b518b800d4b@suse.com>
X-ClientProxiedBy: AM7PR02CA0020.eurprd02.prod.outlook.com
 (2603:10a6:20b:100::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a9fbd881-1edf-4808-3fa4-08d904ab0789
X-MS-TrafficTypeDiagnostic: DM6PR03MB5340:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5340BD2E40AC0B551B1802A88F479@DM6PR03MB5340.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:311;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: EEu5Ha9DhdOvJmCCeiNY7mLwA6F++p8pFrKdPHxdgY+s/eo2WIX4gu9IBqO5zUoAATGT3OIRXx8lvIxXCEjTsnRxW+iGv2A7IJ53NJZJhd1z8ZxCOWJqS4Iz9sR/aPTNC8Tsm7uCkeqp5PV0Rjjjdy4rPbRADyV9RFWC6GMxs3NEB17eIz5M0prGBxaCsmYkXLdxJv/ECZ7BU6XSMXDU4a5syfuUD+FhKFtWtmIP9UedSUlzX6Deo/XVywkaIn1v0ltiWYL9b6vUbqkwx/Iq6uoBPsOLgHo2CqjZm/H0wsdvH6+FiTj0sZy3RUMYO639mHUTliZ0CY6QX6AWHFn7aTQkeq8xI0YA9G96EpZMGu0AQmKAelZjlPb2YABohfpnD84asVK7KoUKeWBxB/enf7qCBg6aN16SzRgW5sMnHM/9m5gOWXbbeqw4zHTd776T66EtNXZNFMT7KqugPaM3wsgnT7hhErWlShlshqfGXZbDDzFKpSxp25DGDLcmZ7FlwVqjVUhbVyQ4RyRlzAV5jwuAQiEEMdePTY8F97bQ0hXR81wI3g7p9cyyL3cKb0+2ZBD5Un2JUlbF4/xgMS4HZpTv8tJY9X/gpTKhgb6ryjQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(39860400002)(376002)(346002)(366004)(396003)(85182001)(186003)(316002)(33716001)(8936002)(26005)(54906003)(9686003)(6666004)(8676002)(6916009)(86362001)(956004)(2906002)(66476007)(6486002)(66946007)(558084003)(38100700002)(6496006)(16526019)(4326008)(478600001)(5660300002)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: a9fbd881-1edf-4808-3fa4-08d904ab0789
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 09:51:26.3025
 (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: DIgHVEkPQGAEZ5ulJinOkCxKuuwfUP1TEjVE5cG4Ho6BBdeXNCf6EPjgPUOCgyGSEpcOzlLq2tw0c4+RyaSBZA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5340
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:46:00AM +0200, Jan Beulich wrote:
> Now that its contents matches prelink.o, use that one uniformly.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:51:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:51:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114252.217682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9WU-0003jH-KZ; Wed, 21 Apr 2021 09:51:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114252.217682; Wed, 21 Apr 2021 09: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 1lZ9WU-0003jA-Ge; Wed, 21 Apr 2021 09:51:54 +0000
Received: by outflank-mailman (input) for mailman id 114252;
 Wed, 21 Apr 2021 09:51:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9WS-0003iy-S8
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:51:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9e216584-d0c0-4fb9-9321-41e7766bb539;
 Wed, 21 Apr 2021 09:51:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AD26CB2E4;
 Wed, 21 Apr 2021 09:51: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: 9e216584-d0c0-4fb9-9321-41e7766bb539
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618998710; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=NEvQf3uRl+Sgc1WdAVwt3AFrn2VAvyklQQFfj6at9IA=;
	b=LVV99KuWT7Evv0qRB2Y/Zq5YMWGbmfT7pFviSYF7o/eHFLXuXz4wsZIYd86f1fYTiKZxF8
	GShd8Sx1Jwdd0ZgJk+ZS7TSMx4qEFuqdxrjntvF6ltnh1qb7TR3YDKEGJV8G4CSw4kCAI6
	LkEwDgQoK5T2YkX2MPFmWLj2zrPiLgo=
Subject: Re: [PATCH 0/7] xen: Switch to using -Og for debug builds
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>, Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>, Volodymyr Babchuk
 <Volodymyr_Babchuk@epam.com>, Juergen Gross <jgross@suse.com>,
 Tim Deegan <tim@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
 <9e8e116a-f4c3-e6bf-edee-d48e76a3d005@suse.com>
 <b6b313d5-fd24-b1b8-afe9-0801825565f2@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3fda551c-fff3-d86e-d2cd-23408693bb7c@suse.com>
Date: Wed, 21 Apr 2021 11:51:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <b6b313d5-fd24-b1b8-afe9-0801825565f2@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 11:31, Andrew Cooper wrote:
> On 19/04/2021 16:45, Jan Beulich wrote:
>> On 19.04.2021 16:01, Andrew Cooper wrote:
>>> As with the toolstack side, we ought to use -Og for debug builds.
>>>
>>> All fixes are trivial.  The first 3 are understandable, given reduced
>>> optimisations.  The next 3 are, AFAICT, bogus diagnostics.
>>>
>>> Andrew Cooper (7):
>>>   xen/arm: Make make_cpus_node() compile at -Og
>>>   x86/shim: Fix compilation at -Og
>>>   x86/sysctl: Make arch_do_sysctl() compile at -Og
>>>   x86/irq: Make create_irq() compile at -Og
>>>   xen/efi: Make efi_start() compile at -Og
>>>   x86/shadow: Make _shadow_prealloc() compile at -Og
>>>   xen: Use -Og for debug builds when available
>> Acked-by: Jan Beulich <jbeulich@suse.com>
>>
>> I'd like to ask though that at least for the bogus warnings you
>> amend the commit messages with the gcc version these were observed
>> with. Perhaps even those seemingly bogus initializers would
>> benefit from a very brief comment (or else there's a fair chance
>> of them getting removed again at some point).
> 
> I'm afraid I don't have that information easily to hand, but all issues
> were found by distro-provided compilers included in our Gitlab
> infrastructure.

Well, okay, then we'll need to live with said risk. As an aside I'd
like to remind you though that on past occasions of working around
compiler oddities, I was asked as well to provide compiler version
information ...

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 09:57:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 09:57:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114262.217694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9bs-000415-Cz; Wed, 21 Apr 2021 09:57:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114262.217694; Wed, 21 Apr 2021 09:57: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 1lZ9bs-00040y-A8; Wed, 21 Apr 2021 09:57:28 +0000
Received: by outflank-mailman (input) for mailman id 114262;
 Wed, 21 Apr 2021 09:57:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9bq-00040q-8s
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 09:57:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0a05a73e-29fd-4a3f-a08f-793965053fb9;
 Wed, 21 Apr 2021 09:57:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 570D1B2E4;
 Wed, 21 Apr 2021 09:57: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: 0a05a73e-29fd-4a3f-a08f-793965053fb9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618999044; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=1MWCgYJ9vm8dNUxTuxroyyeMbS6hF5EKzhdVBSxK0bw=;
	b=U9yOXTIr5M3IVsbiUHRMhGzgjad9RFTUKDPjnEDvtMTjceTi0xcjgrMDXqbblW46u5mJcR
	xYyXt+v+d+rItn5kNlpw1I3ijjYAdPouNn7Vna/XTDpKcin6tuxOSL5ILoxT5DjWNm4vf/
	qSXnk55F0owN3qo2DZq4T/0QiS9IsOk=
Subject: Re: [PATCH v4 2/3] x86/time: yield to hyperthreads after updating TSC
 during rendezvous
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: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <81da85eb-2e8e-9b76-2fb3-2beddc33e9af@suse.com>
 <YH76RJTqvwYmvXu+@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <96811f9d-b55d-0b40-3629-1516c5a2ed0e@suse.com>
Date: Wed, 21 Apr 2021 11:57:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH76RJTqvwYmvXu+@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 17:59, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:54:27AM +0200, Jan Beulich wrote:
>> Since we'd like the updates to be done as synchronously as possible,
>> make an attempt at yielding immediately after the TSC write.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> Did you observe any difference with the pause inserted?

I wouldn't even know how to measure it precisely enough. So - no,
I haven't. In fact ...

> I wonder whether that's enough to give a chance the hyperthread to
> also perform the TSC write. In any case there's no harm from it
> certainly.

... I have an inquiry pending with Intel as to better (more
reliable) ways to yield, for quite a bit longer than the 8259 one,
yet with the same lack of any outcome so far. Until then it really
is going to be no more than "make an attempt", as said in the
commit message.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:04:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:04:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114266.217706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9iZ-0004yB-4h; Wed, 21 Apr 2021 10:04:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114266.217706; Wed, 21 Apr 2021 10:04:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9iZ-0004y4-1T; Wed, 21 Apr 2021 10:04:23 +0000
Received: by outflank-mailman (input) for mailman id 114266;
 Wed, 21 Apr 2021 10:04:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9iY-0004xz-4x
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:04:22 +0000
Received: from mail-wm1-f53.google.com (unknown [209.85.128.53])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4ef2504f-778c-4c01-954c-415579778020;
 Wed, 21 Apr 2021 10:04:21 +0000 (UTC)
Received: by mail-wm1-f53.google.com with SMTP id w186so17322137wmg.3
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:04:21 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id x2sm2803118wrg.31.2021.04.21.03.04.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:04:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4ef2504f-778c-4c01-954c-415579778020
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=aHHMw379TDjDiNyx9CVK2Ceo7oMZV/w/eTWbijiylQw=;
        b=rDFT+621JdBYztxVZSqkKdYpiYLlH2TIEvVgz9pyZp5l0exkTaUyO/cw6bDNO17NOX
         Wtx/aESS/RUaB7Cv4tfW+nk5mDfibBs5WpEzXV+kEQxHaFXbFbrNsqdC7CyAgM1/Rq3b
         YxsNUghoWG3KAfDUwO4rDzg6Jx1G5Jepnq77PkMMTp6pKcJviyGSyPac7GZp3FsXlU/j
         UmP0PwsaEfqa5aju31NCJIoMNbn65AEDuan862eNwyoGM4TfL2VAp6a2wWrILNk9lrKP
         W4VWwN881v1f/aIoFKgVA6YTwSZD0eETMnverzW1JKibcXlZBc6ZRk246LEq+cw/aMN0
         RQ3g==
X-Gm-Message-State: AOAM532iWTpROh0XENc0cTbC08QAdaVRl+ZgwuM9UoWDttK+25Tt+oqc
	22H+1hsxDxO0PjxiynEApnc=
X-Google-Smtp-Source: ABdhPJxfMVlu4uPFhZiWARfNqkCPU0pyYjbSAfyaeGMoQYFEADoKvPofSijVy/kivFv3eSNOr7XL3A==
X-Received: by 2002:a1c:6184:: with SMTP id v126mr9142014wmb.118.1618999460366;
        Wed, 21 Apr 2021 03:04:20 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:04:18 +0000
From: Wei Liu <wl@xen.org>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	George Dunlap <George.Dunlap@eu.citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Jan Beulich <JBeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>, Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [PATCH] CI: Drop TravisCI
Message-ID: <20210421100418.7nyuka557iv6z2qk@liuwe-devbox-debian-v2>
References: <20210421092705.2295-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210421092705.2295-1-andrew.cooper3@citrix.com>

On Wed, Apr 21, 2021 at 10:27:05AM +0100, Andrew Cooper wrote:
> Travis-ci.org is shutting down shortly.  The arm cross-compile testing has
> been broken for a long time now, and all testing has now been superseded by
> our Gitlab infrastructure.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Wei Liu <wl@xen.org>

I guess this also needs backporting?


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:05:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:05:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114269.217718 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9k0-0005A4-HU; Wed, 21 Apr 2021 10:05:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114269.217718; Wed, 21 Apr 2021 10:05: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 1lZ9k0-00059x-Dp; Wed, 21 Apr 2021 10:05:52 +0000
Received: by outflank-mailman (input) for mailman id 114269;
 Wed, 21 Apr 2021 10:05:51 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9jz-00059s-Jp
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:05:51 +0000
Received: from mail-wr1-f51.google.com (unknown [209.85.221.51])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 19250ae9-0812-40c8-bb96-d6b1a573a772;
 Wed, 21 Apr 2021 10:05:50 +0000 (UTC)
Received: by mail-wr1-f51.google.com with SMTP id r7so28719267wrm.1
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:05:50 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id s64sm1898831wmf.2.2021.04.21.03.05.49
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:05:49 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 19250ae9-0812-40c8-bb96-d6b1a573a772
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:content-transfer-encoding
         :in-reply-to;
        bh=LeASHJrVyRgtft0qvxTzHttrnm2bXQ6nQuYymKtjlq4=;
        b=qTSd34L1UlQbp9IsNT73haQbqUV7pMed9uc11QlQGzbnoqUKWdEe10nRov4HuAw3QX
         ZXRYFaUtyRayjCbNeSA+Kho3HRBHgAr51VRme7kfz56ZQK3rLrgvl8UZTZdyP30QgRzM
         CaqOt0TR7Jh/OpAyjlmfhx0FsNiVVvj7KgFN/x6hjwAsjams1K1ak7LhC/au2H2hT7cL
         t0Y4CKfMLgTygu9om8nwdxLeNFGicmml/JdYXP1C2mFXi2imfBnP5VAh5OT5TzQ0O7fO
         SXMISb7BbSa6BGZMi2AyZSxocxjYBlPvo5ZSLWoT+fReZaVW2ZN076P+/O4g/03TPvzQ
         30bQ==
X-Gm-Message-State: AOAM531S0OfctEnd2C8TQitzH15LvZLlt1PuGvJOBjlZTtcbokHU/fw4
	WK3uYrARoSWTAmw/GrnXxDE=
X-Google-Smtp-Source: ABdhPJy4+oKNeSAadFmCvYoVCpoVGGK3MRYqkmizcpXRaYs2N+2UyyHf+XPNxGh/iQYavx6uOZOy9g==
X-Received: by 2002:a05:6000:1789:: with SMTP id e9mr25118159wrg.110.1618999549872;
        Wed, 21 Apr 2021 03:05:49 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:05:48 +0000
From: Wei Liu <wl@xen.org>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	George Dunlap <George.Dunlap@eu.citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Jan Beulich <JBeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>,
	Julien Grall <julien@xen.org>, Juergen Gross <jgross@suse.com>
Subject: Re: [PATCH] tools: Drop XGETTEXT from Tools.mk.in
Message-ID: <20210421100548.jwom5dh6ow7fl5v6@liuwe-devbox-debian-v2>
References: <20210416155941.15454-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: <20210416155941.15454-1-andrew.cooper3@citrix.com>

On Fri, Apr 16, 2021 at 04:59:41PM +0100, Andrew Cooper wrote:
> This hunk was missing from the work to drop gettext as a build dependency.
> 
> Fixes: e21a6a4f96 ("tools: Drop gettext as a build dependency")
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Wei Liu <wl@xen.org>

> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Ian Jackson <iwj@xenproject.org>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Roger Pau Monn <roger.pau@citrix.com>
> CC: Julien Grall <julien@xen.org>
> CC: Juergen Gross <jgross@suse.com>
> ---
>  config/Tools.mk.in | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/config/Tools.mk.in b/config/Tools.mk.in
> index d47936686b..934d899967 100644
> --- a/config/Tools.mk.in
> +++ b/config/Tools.mk.in
> @@ -12,7 +12,6 @@ PYTHON              := @PYTHON@
>  PYTHON_PATH         := @PYTHONPATH@
>  PY_NOOPT_CFLAGS     := @PY_NOOPT_CFLAGS@
>  PERL                := @PERL@
> -XGETTTEXT           := @XGETTEXT@
>  AS86                := @AS86@
>  LD86                := @LD86@
>  BCC                 := @BCC@
> -- 
> 2.11.0
> 


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:06:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:06:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114272.217730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9kj-0005GB-RJ; Wed, 21 Apr 2021 10:06:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114272.217730; Wed, 21 Apr 2021 10:06: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 1lZ9kj-0005G4-Na; Wed, 21 Apr 2021 10:06:37 +0000
Received: by outflank-mailman (input) for mailman id 114272;
 Wed, 21 Apr 2021 10:06:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9ki-0005Fy-PL
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:06:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 73a17307-1590-47e1-92d6-755c5f67f484;
 Wed, 21 Apr 2021 10:06:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C594FAEE6;
 Wed, 21 Apr 2021 10:06: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: 73a17307-1590-47e1-92d6-755c5f67f484
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1618999594; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=6XxM6xFOMDLu9LYguFtAcK7QLYq9erSVmErekZV9gcM=;
	b=GXwydkoYSd/ESnX0yvVarZNg2RJWdOliEwmidhSnuUqbJg8IWXJn4dh2nJ74Rgo8x72yJm
	GTDmPXaWa8H+hvWD5VYsTaT7g6TRW1lOC8IERW59mvmrMUSsJDARtlKi+Bw6NIYTXykQcy
	JjwVx1jW5tV3LJSHivgD8eVVUhEIVmI=
Subject: Re: [PATCH v4 3/3] x86/time: avoid reading the platform timer in
 rendezvous functions
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: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
 <YH79ZxNRhW24jmUS@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <88819ae1-d021-9192-4be7-a70064f23feb@suse.com>
Date: Wed, 21 Apr 2021 12:06:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH79ZxNRhW24jmUS@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 18:12, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:55:10AM +0200, Jan Beulich wrote:
>> Reading the platform timer isn't cheap, so we'd better avoid it when the
>> resulting value is of no interest to anyone.
>>
>> The consumer of master_stime, obtained by
>> time_calibration_{std,tsc}_rendezvous() and propagated through
>> this_cpu(cpu_calibration), is local_time_calibration(). With
>> CONSTANT_TSC the latter function uses an early exit path, which doesn't
>> explicitly use the field. While this_cpu(cpu_calibration) (including the
>> master_stime field) gets propagated to this_cpu(cpu_time).stamp on that
>> path, both structures' fields get consumed only by the !CONSTANT_TSC
>> logic of the function.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> v4: New.
>> ---
>> I realize there's some risk associated with potential new uses of the
>> field down the road. What would people think about compiling time.c a
>> 2nd time into a dummy object file, with a conditional enabled to force
>> assuming CONSTANT_TSC, and with that conditional used to suppress
>> presence of the field as well as all audited used of it (i.e. in
>> particular that large part of local_time_calibration())? Unexpected new
>> users of the field would then cause build time errors.
> 
> Wouldn't that add quite a lot of churn to the file itself in the form
> of pre-processor conditionals?

Possibly - I didn't try yet, simply because of fearing this might
not be liked even without presenting it in patch form.

> Could we instead set master_stime to an invalid value that would make
> the consumers explode somehow?

No idea whether there is any such "reliable" value.

> I know there might be new consumers, but those should be able to
> figure whether the value is sane by looking at the existing ones.

This could be the hope, yes. But the effort of auditing the code to
confirm the potential of optimizing this (after vaguely getting the
impression there might be room) was non-negligible (in fact I did
three runs just to be really certain). This in particular means
that I'm in no way certain that looking at existing consumers would
point out the possible pitfall.

> Also, since this is only done on the BSP on the last iteration I
> wonder if it really makes such a difference performance-wise to
> warrant all this trouble.

By "all this trouble", do you mean the outlined further steps or
the patch itself? In the latter case, while it's only the BSP to
read the value, all other CPUs are waiting for the BSP to get its
part done. So the extra time it takes to read the platform clock
affects the overall duration of the rendezvous, and hence the time
not "usefully" spent by _all_ of the CPUs.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:08:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:08:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114276.217742 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9mI-0005Oj-6B; Wed, 21 Apr 2021 10:08:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114276.217742; Wed, 21 Apr 2021 10:08: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 1lZ9mI-0005Oc-2h; Wed, 21 Apr 2021 10:08:14 +0000
Received: by outflank-mailman (input) for mailman id 114276;
 Wed, 21 Apr 2021 10:08:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9mG-0005OU-4Y
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:08:12 +0000
Received: from mail-wr1-f41.google.com (unknown [209.85.221.41])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a7e4b3f3-ee73-459c-972f-897736d6cc30;
 Wed, 21 Apr 2021 10:08:10 +0000 (UTC)
Received: by mail-wr1-f41.google.com with SMTP id w4so37008924wrt.5
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:08:10 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id t63sm1829372wma.20.2021.04.21.03.08.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:08: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: a7e4b3f3-ee73-459c-972f-897736d6cc30
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=rpUxQWaXQ59G8LS8+0aqgmg2SpC0z7dC5DkZaoSnb6g=;
        b=NuirogYqiAbNAGFWacdsAc4g728X9DG6NS6XAi0Io7ino54J8bu4yKqpoEdlBZgY7J
         +TGpFzEvwUdGhsqDvB0ibPhJGDPafUb/0g9FTwymcvSiuC53re0CkWLm4qaFk4Byd6LN
         +JHQoZvxnKyTmzYoveJyNpeMg8Y6CzKKow7HVFev1NwVyO7mEIZEegtZiLxj7MDt1wpG
         VBRSgU0YqkTVTOJvY0dYGhXvvRWJ6Y3WVk4a271cS34fUUDry3wjfbAflbC3REfcaJxN
         5zf8NRPcDtmDLz2TLhr+WFA5BlyD8SWJ5ZQY2e9MXg0ZNUvVkdXDNJ9bnoJPBCRSeFgv
         xIfQ==
X-Gm-Message-State: AOAM530tcUgn3FanGu+/jmUDh/H81dIBS2eTB6Im8tvinmr7yt2cEZvR
	M/wqgAbL0LrTsgjc6S58R8omhANF+3Q=
X-Google-Smtp-Source: ABdhPJzzMekXKnSHk2kM3RH5/JNpjwSf0QhL3eL8OsZdDb6eJrQu+9NRS7wlxqtHlewK4df62ezgag==
X-Received: by 2002:adf:d0cc:: with SMTP id z12mr26434558wrh.18.1618999690208;
        Wed, 21 Apr 2021 03:08:10 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:08:08 +0000
From: Wei Liu <wl@xen.org>
To: Costin Lupu <costin.lupu@cs.pub.ro>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH] tools/libs/light: Remove unnecessary libxl_list_vm() call
Message-ID: <20210421100808.fvl6argtpmstwrev@liuwe-devbox-debian-v2>
References: <cf7c0f8869a087008fbe10888ebf96336b1ccb7b.1618837159.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <cf7c0f8869a087008fbe10888ebf96336b1ccb7b.1618837159.git.costin.lupu@cs.pub.ro>

On Mon, Apr 19, 2021 at 04:01:42PM +0300, Costin Lupu wrote:
> The removed lines were initially added by commit 314e64084d31, but the
> subsequent code which was using the nb_vm variable was later removed by
> commit 2ba368d13893, which makes these lines of code an overlooked
> reminiscence. Moreover, the call becomes very expensive when there is a
> considerable number of VMs (~1000 instances) running on the host.
> 

Nice catch.

> Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>

Acked-by: Wei Liu <wl@xen.org>

> ---
>  tools/libs/light/libxl_create.c | 11 +----------
>  1 file changed, 1 insertion(+), 10 deletions(-)
> 
> diff --git a/tools/libs/light/libxl_create.c b/tools/libs/light/libxl_create.c
> index 0c64268f66..43e9ba9c63 100644
> --- a/tools/libs/light/libxl_create.c
> +++ b/tools/libs/light/libxl_create.c
> @@ -578,7 +578,7 @@ int libxl__domain_make(libxl__gc *gc, libxl_domain_config *d_config,
>                         uint32_t *domid, bool soft_reset)
>  {
>      libxl_ctx *ctx = libxl__gc_owner(gc);
> -    int ret, rc, nb_vm;
> +    int ret, rc;
>      const char *dom_type;
>      char *uuid_string;
>      char *dom_path, *vm_path, *libxl_path;
> @@ -586,7 +586,6 @@ int libxl__domain_make(libxl__gc *gc, libxl_domain_config *d_config,
>      struct xs_permissions rwperm[1];
>      struct xs_permissions noperm[1];
>      xs_transaction_t t = 0;
> -    libxl_vminfo *vm_list;
>  
>      /* convenience aliases */
>      libxl_domain_create_info *info = &d_config->c_info;
> @@ -869,14 +868,6 @@ retry_transaction:
>                          ARRAY_SIZE(rwperm));
>      }
>  
> -    vm_list = libxl_list_vm(ctx, &nb_vm);
> -    if (!vm_list) {
> -        LOGD(ERROR, *domid, "cannot get number of running guests");
> -        rc = ERROR_FAIL;
> -        goto out;
> -    }
> -    libxl_vminfo_list_free(vm_list, nb_vm);
> -
>      xs_write(ctx->xsh, t, GCSPRINTF("%s/uuid", vm_path), uuid_string, strlen(uuid_string));
>      xs_write(ctx->xsh, t, GCSPRINTF("%s/name", vm_path), info->name, strlen(info->name));
>  
> -- 
> 2.20.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:08:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:08:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114279.217754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9n0-0005Uq-H8; Wed, 21 Apr 2021 10:08:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114279.217754; Wed, 21 Apr 2021 10: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 1lZ9n0-0005Ui-D1; Wed, 21 Apr 2021 10:08:58 +0000
Received: by outflank-mailman (input) for mailman id 114279;
 Wed, 21 Apr 2021 10:08:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=48UE=JS=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZ9mz-0005UX-4f
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:08:57 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bfa7395f-c76a-4c78-bbd2-df367a5de166;
 Wed, 21 Apr 2021 10:08: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: bfa7395f-c76a-4c78-bbd2-df367a5de166
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1618999736;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=gzh2l2Ngooq9A8KxDsNTuIgxzkcGJRpRGbWfXwqBaWo=;
  b=IsGX0b/GbnyRmwlDpdauD7ir2WqKEpFXUWCMPkMV25xK4M8PGSDvSfne
   reEd6sieNmydKxBrPolY4fXoO2G+OfY0Go7QSZ+6wL+BiA+wjzM4D90Tt
   Ik6zUqAhTjqjaexLdfbaz95m0Xu4YYoffWT2qCpONcaabhr34Dc9gl7+n
   M=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ZMLzgPZ0wH+rTXyKh8DS2h1ejpegOuOWgrVn9o7nCEf2kEdtRvT/aYITS1IaNDONUspypWEKYB
 h4whLuwYQOg4jrPziKWfpPJuxIfEWRsWEZ7AhHA3WiY9olgf6nllND7IGyydlJETkQq6pVN2Xb
 x5jh2wZ+lDq33M456lauOs+DtPmieYSDI+lm2SploDmmEc8ZjsimiR6We1ObZkZ+Xw00Bcr2uP
 T9H3moB+0eUYsIKbQKkn3Dc5O7ehg3SBjM7ddIgbTK5GtQfG2LvbJipK7sWGeTdVO7RUv5n1HD
 YoE=
X-SBRS: 5.2
X-MesageID: 41895955
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:76xhkKGnO6hV9eu4pLqFRZTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76
 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYcNi+wFEpqSA5aQb8wE5
 SB7sRKzgDQBkg/RMK9G3UDQqz/vNXNjp3relorABQg5QmIg1qTmcLHOjKf2QoTVC4K/Kc6/Q
 H+4nHEz4iAk9X+8B/T0GfP849b8eGO9vJvDNGB4/JlUgnEpR2vYO1aKtu/lRAz5Nqi8VM71O
 TLyi1QRfhbz1P0UiWLrQD22w/muQxemEPK7VODm3PsrYjYaVsBerN8rLlUeBfY9EYs1esUuM
 kgvxP7xu9qJCjNkyjn69/DWwsCrDvSnVMYnfMOlHsaaIMCadZq3Pwi1XlIG5QNFj+S0vFELM
 BSCqjnlZNrWG+BY2uclmdix8HEZAVJIj62BmIGusCTzgFMmmF4w0Yy1KUk7wY93aN4ZJ9e6+
 veNKN00JlIU88NdKp4QNwMWM2tFwX2MF3xGVPXBW6iOLAMOnrLpZKyyLIp5NuycJhN6Jcpgp
 zOXH5RqGZaQTOhNeS+mLlwtjzdSmS0WjrgjutE4YJih7H6TL33dQWeVVEHiaKb0rYiK/yef8
 z2FINdAvflI2erM51OxRfCV55bLmRbeNEJu+w8R0mFrqvwW83Xn92eVMyWCKvmED4iVG+6KG
 AERiLPKMJJ6V3udWT/hDTXRnPxam3y9Z99C8Hhjq0u4blIErcJnhkeiFy/6M3OAyZFqLYKcE
 x3J66isq7TnxjzwU/4q0FSfjZNBEdc57vtF1lQoxURDk/yebEf//GWeWVY2mq7NgZyJvmmVz
 J3lhBSw+aaPpaQzSctB5aMKWSBlUYeo3qMUtM6lrCc49zmPrc1FIwvVqA0NQijLW01pS9a7E
 N4LCMUTE7WET3jzY+/ioYPOe3Zf95gxCGxIcBVrnrbnV6Gpd4mQ0YaWzLGa7/UvS8eAx5vwn
 Fh+a4Wh7SN3Ry1L3Ekveg+OFpQLFiMDKl+FwSDboVMkrXNcAV9JF36wwCyulUWQC7H5k8Sjm
 vuIWmxdevQClRQgHxez53n6Uh5bGmbYkJ2ZE1rqIEVLxW1hl9DlcuwIoaj2WqYbVUPhtsQNz
 zIehM+CAJjzdLf7m/epB+yUVEdgrk+NO3UC7ouN4zJ0nS2MYuSiOUtBPlP5qtoM9jor84GWe
 +SYBWuMTv9Eu8lsjbl/0oNCW1Rkj0JgPno0Brq4CyEx3Y5G+PVO0kjaLcBId2QhlKUDsqg4d
 Fct5YSsuSxOGmqNYLD5qHTcjJZKhTc5USxVPolrJhIvaQ08Jt/dqOrJgfg5TVi5lEZKsyxqW
 Y1BIJcy5rFMpV0f8MTdzlCl2BZ3+inHQ8OiEjOHuQ6fVsRlHfVMNOC3qrQpdMUczm8jTq1HW
 PazjZU8PjEVRaSzLI2C6o/JmJNdUg3gU4Sit+qRsn1CA+wcftE80f/GnihcKVFQKztI8Rckj
 9Kp/WJlfSQbSz2xUT5uiZ6OLtH9yKCTdmpCAyBXc5O/NrSAyXBvoKapOqyhizwUz21dgAxgp
 BEb1UZaoB7sQYZ5bdHmhSae+jQuUIqk1xX/DFhmBrM4+GdkRnmNHADFxbYjJVQVSRUKV6Sg6
 3+gLCl6Eg=
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="41895955"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mYY8aiEnesGdFkHux6vDz9xpj63ZHBQ5XLPXO1VDi5IHWnx1skBQpI/vSg3Os7OuYltOSVfcr/OWgT+9yn268fljJ6no0txdJBAyRciO5mOFEUmw8AXZbPbJImfueW/U6xsShnoPqlHreecIkVkZOdRQ03WMYg38ugQeVE+YfFLAYmZFG82R6GQ0hDWerFObe6NAtzUIEw+6dGoKGSJaNBuMwbukn2//Dh1oC5+mFND4MaJiCye6ER8AWECI17Z+xpHSzdUXDs6QMn93XVBJsCpdd0IWbsRujUsnYmFQZuxFBvP1QVi6S5iijzNOL7CdMH0JP28/r6QlsPZzK83blQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XIxA9AExkXb7jCkIHGXGFRnm4xgS9ror02M7zg0YBfU=;
 b=P1rKjy9CPgGbGBGnaU7geEm+yLiX6WdBTTVxz52fksUHSrgNpN+Ap8Cg91QygtJc2IEiWMrqMBVHGTH5bw2vsn2sP2LTAuVLqpJBM4hR0qBfINRuZiUS5IMdRZK5HjFQLQyXOHaefTSh8b6MqpQn9Fy4+XpCPXEn3Ci1spnAtULbXoIHndCLY7eTit/jQfTv4qYv8LyHsFF/zijmToKIbB6m+QutKTC0W806o2MIKd+tYvqicfBy23VQpdEhK2cqnupvVgoGT90g5tvtR0PEZ6+l12kEKjf8kYt1S6AdHpUV9rTfcNqT53kijMh/hHeRdalB0MbhjOtzUMvVngk+iQ==
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=XIxA9AExkXb7jCkIHGXGFRnm4xgS9ror02M7zg0YBfU=;
 b=CncMuYLqJBApgcYyz1iUfBzRk4O8EpHydW2OqxVWxpaXTOzC0onJX82l2Qeb9BgeB8wcnNJtPe4uLqPeclpG8JJjPh/vfD2Wk/P9VeDxaRL9aNRNQFgjl4Ky30vyCyTwZj2a4cVj9nJ49QzX132QeAhXDAY5SjbwoUTqju+pofs=
Subject: Re: [PATCH] CI: Drop TravisCI
To: Wei Liu <wl@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Ian Jackson <iwj@xenproject.org>, Jan Beulich
	<JBeulich@suse.com>, Stefano Stabellini <sstabellini@kernel.org>, Julien
 Grall <julien@xen.org>, Doug Goldstein <cardoe@cardoe.com>
References: <20210421092705.2295-1-andrew.cooper3@citrix.com>
 <20210421100418.7nyuka557iv6z2qk@liuwe-devbox-debian-v2>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <e4f3157b-bb47-a15f-120a-e9b87d7d1faa@citrix.com>
Date: Wed, 21 Apr 2021 11:08:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210421100418.7nyuka557iv6z2qk@liuwe-devbox-debian-v2>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0505.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13b::12) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f7f96b9f-f7fd-47f9-5dfc-08d904ad7760
X-MS-TrafficTypeDiagnostic: BY5PR03MB4966:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB496639DE2770F00D292DA552BA479@BY5PR03MB4966.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:913;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 8MyYduAa3csQW0yak//QQhnXYkDmRwbSANEnP0eCGBZyHLckAfz/jvdSW3vshRG4vUkEj+NMddzfAHlfgCCed58vUwatrxrqYAohsyhv7GA1ICPI+M3BxZmoET6zpmKloprCkEdkcffp0s5AHRl3IfXAYYdkXA4+E3ovxULB/LZV9UVw3wHzXAbn7sd89PxuPHIKjq6zBjArPgdb2AGE0VA4IHESC36Nq5w++QOXDXTYKpXruW/7YF+6m2gXWbUhCVQWr6+gAmjTtteR7q36qBZAMX7VGPbg2gpPRd1hSRSndTyuIYy/lhMDKLFSeNCC4w/N4dHa7bHRiR9raCofczI6BkFsph7ZMN4ZPjyZNqCXUyqfAvVYuGopCuYBSZrC+6lFfij86zjWK1L4OO2fRz+98khxhQxqLSgtqdw8EK0R9m1vkxY1YD5F8pU7r88wDf2H3C26uldlxrBJ8ZEJGfAImr1ZMTAFmYXghbtiJUeUP0SH5LnZ8Qbn0yL9fCNG3ikK7cA6bqbPU87U3zx4puYZ0J3RTA2DCzQ55ZePm/gQwivnC2GUgFv3H7bONmuj1CzNtCvfRTp30ZJ+EFcyqWceUuLW3UB1herGcZnK080B+ICvnfBfuFmVTijhxZI8lDKyXi4E2qQHEm3AzStWvvY+UctCnhUPKuoBlLNXNDP2nOHUcxA8ExwkhNjMC3ql
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(39860400002)(396003)(366004)(376002)(4744005)(54906003)(4326008)(26005)(478600001)(186003)(6486002)(31696002)(6916009)(5660300002)(36756003)(6666004)(956004)(2616005)(53546011)(316002)(8676002)(2906002)(16526019)(86362001)(38100700002)(31686004)(66476007)(66946007)(66556008)(16576012)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f7f96b9f-f7fd-47f9-5dfc-08d904ad7760
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 10:08:52.9422
 (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: JxmeT0L2l5RLNtDXW5sVIa/T19grnB99ShenrwZVJ8Bj/PHJyIaQDi4asTrqJgpc4f2D9nqGIAb5LOOFksAF29BQMtU8RRHrfnn7M+I4W5g=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB4966
X-OriginatorOrg: citrix.com

On 21/04/2021 11:04, Wei Liu wrote:
> On Wed, Apr 21, 2021 at 10:27:05AM +0100, Andrew Cooper wrote:
>> Travis-ci.org is shutting down shortly.  The arm cross-compile testing has
>> been broken for a long time now, and all testing has now been superseded by
>> our Gitlab infrastructure.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Acked-by: Wei Liu <wl@xen.org>

Thanks.

> I guess this also needs backporting?

Unsure.  It logically depends on "automation: add arm32 cross-build
tests for Xen" which is currently the top commit on staging, but said
cross-compile tests were also the ones broken in Travis.

When travis shuts down, it will simply stop caring about repos/branches
containing a .travis.yml, so I don't think anything is going to break as
a consequence.

Then again, it is probably bad form to retain CI configuration for
something which we know doesn't work.

Jan - thoughts?

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:13:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:13:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114290.217768 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9rX-0006PN-8R; Wed, 21 Apr 2021 10:13:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114290.217768; Wed, 21 Apr 2021 10:13:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9rX-0006PG-56; Wed, 21 Apr 2021 10:13:39 +0000
Received: by outflank-mailman (input) for mailman id 114290;
 Wed, 21 Apr 2021 10:13:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9rW-0006PB-5Y
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:13:38 +0000
Received: from mail-wr1-f50.google.com (unknown [209.85.221.50])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5694e302-98ac-4ea0-9f1e-78345f1fe6f4;
 Wed, 21 Apr 2021 10:13:37 +0000 (UTC)
Received: by mail-wr1-f50.google.com with SMTP id x7so40718094wrw.10
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:13:37 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id 3sm2205235wma.45.2021.04.21.03.13.35
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:13: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: 5694e302-98ac-4ea0-9f1e-78345f1fe6f4
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=s7AvYi5xEulWa5uhkFuSBwuj7ON+As+oKLMmroLuxEs=;
        b=YUxzZWT4RZ/wzoYfViOPNqHGi76AF094MSgyf6/If9McA19v4t/NGaqZBPS3kBgtvF
         jUenUVMKS0xoGE8G8DW3LQ2f93+8jOW89SkFZxapD/0denSU//mqTbsJ8g9aOMOrlJfa
         OMdoExx2OmRQR4umA6rb0JKltk+LCYSoK/uMMU6tg6h+gvInopUwNmG6ZYU+84ql7KUA
         Kuxi4LSYsvXoNF3VYl+Fuj7c+tCXHrrjzr5ewlJLfhVvpkv7ltUbjLpYEWRKiYKBfRgu
         J0eLN856uimEK1dLcnuAL46ayDWL1GVifzBY7uD3E9MuuPpnm8oddAt6CmgeznXCmNjs
         wDqQ==
X-Gm-Message-State: AOAM530RuWZkm7BDHX9Pkq2/Kf3SvgDtUUXsV7s3U8ZA4ZEEKeXzYB5y
	pvkt2fGAP2HqmP+FXrSWnfw=
X-Google-Smtp-Source: ABdhPJzMjQkncaClgVudeHilogpQ9wGlha5BBf+/l8QL7HAKfsWymLpCPR61k2wNT9b/Kjek3kZ2hA==
X-Received: by 2002:adf:97d6:: with SMTP id t22mr26236657wrb.123.1619000016363;
        Wed, 21 Apr 2021 03:13:36 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:13:34 +0000
From: Wei Liu <wl@xen.org>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 2/6] tools/libs/ctrl: fix xc_core_arch_map_p2m() to
 support linear p2m table
Message-ID: <20210421101334.4wuzqjkwiq7ixsbh@liuwe-devbox-debian-v2>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-3-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210412152236.1975-3-jgross@suse.com>

On Mon, Apr 12, 2021 at 05:22:32PM +0200, Juergen Gross wrote:
> The core of a pv linux guest produced via "xl dump-core" is not usable
> as since kernel 4.14 only the linear p2m table is kept if Xen indicates
> it is supporting that. Unfortunately xc_core_arch_map_p2m() is still
> supporting the 3-level p2m tree only.
> 
> Fix that by copying the functionality of map_p2m() from libxenguest to
> libxenctrl.
> 

So there are now two copies of the same logic? Is it possible to reduce
it to only one?

Wei.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:13:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:13:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114291.217781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9rm-0006TT-Gw; Wed, 21 Apr 2021 10:13:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114291.217781; Wed, 21 Apr 2021 10: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 1lZ9rm-0006TL-DZ; Wed, 21 Apr 2021 10:13:54 +0000
Received: by outflank-mailman (input) for mailman id 114291;
 Wed, 21 Apr 2021 10:13:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9rl-0006Su-2F
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:13:53 +0000
Received: from mail-wr1-f52.google.com (unknown [209.85.221.52])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 69e04633-7b2c-4fb0-854b-42973b2e766a;
 Wed, 21 Apr 2021 10:13:52 +0000 (UTC)
Received: by mail-wr1-f52.google.com with SMTP id p6so34073823wrn.9
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:13:52 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id y11sm2551034wro.37.2021.04.21.03.13.51
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:13: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: 69e04633-7b2c-4fb0-854b-42973b2e766a
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=Qh88f1sYoOIILpQ5xBo0VNix8BB1dAFRP3vPA9Q5P3U=;
        b=LBvXy+ndMZJgF/uUWB/bTVaOyeXCpx8jafxrCb8ArjB53R8MVrLuf3Ar0Liod11B0P
         LsjnHpK3O1WamMco2LooPtkhvK5oZMmRI4lW7vD4N2lOtnqQwYc0XkFJz5cweRAJ3Xoj
         4ioJcP07S7YVj1qG/aaO6n6Gook1522k9rnIrpeoGUsLKVgvpRd6sOrsqpV1uknjbt2J
         6iBbXuLne2CInUxNBIh3NLqQ6HpzQjvwp2jMdOHcPhCANJSDX7PJ4fV5LB7HffvX0dDm
         iuSM1e09VCf28EykcIEuPBZFQK2kLVdyI/85QtQp2x1GzoO8wT9TxeTYRaTGZKljeIWM
         doYQ==
X-Gm-Message-State: AOAM533DoLXONg4Uf2bAhB+HCSC/YzMuaGgZQyO7OXfrLbbezcvWwZvh
	gLT/ViX1wdoqJsuFCNk9B0c=
X-Google-Smtp-Source: ABdhPJy2JeJETv1SAvnbOhorQsKJ945mSeeZgubJK48u+SDj/bZLuSALbpwYOWvmQ8xsILyWZMKaEA==
X-Received: by 2002:a5d:5444:: with SMTP id w4mr25596810wrv.202.1619000031657;
        Wed, 21 Apr 2021 03:13:51 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:13:50 +0000
From: Wei Liu <wl@xen.org>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 1/6] tools/libs/guest: fix max_pfn setting in map_p2m()
Message-ID: <20210421101350.a4w7vkismmceewwr@liuwe-devbox-debian-v2>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-2-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210412152236.1975-2-jgross@suse.com>

On Mon, Apr 12, 2021 at 05:22:31PM +0200, Juergen Gross wrote:
> When setting the highest pfn used in the guest, don't subtract 1 from
> the value read from the shared_info data. The value read already is
> the correct pfn.
> 
> Fixes: 91e204d37f449 ("libxc: try to find last used pfn when migrating")
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:14:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:14:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114296.217793 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9sU-0006ba-Qs; Wed, 21 Apr 2021 10:14:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114296.217793; Wed, 21 Apr 2021 10:14: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 1lZ9sU-0006bT-NQ; Wed, 21 Apr 2021 10:14:38 +0000
Received: by outflank-mailman (input) for mailman id 114296;
 Wed, 21 Apr 2021 10:14:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9sT-0006bM-6n
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:14:37 +0000
Received: from mail-wm1-f54.google.com (unknown [209.85.128.54])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a044513a-dd75-4b3d-883f-34306be35ed6;
 Wed, 21 Apr 2021 10:14:36 +0000 (UTC)
Received: by mail-wm1-f54.google.com with SMTP id
 w7-20020a1cdf070000b0290125f388fb34so994484wmg.0
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:14:36 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id s21sm1831585wmc.10.2021.04.21.03.14.35
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:14: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: a044513a-dd75-4b3d-883f-34306be35ed6
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=EFyFuIW5mFWds7jsQfDx7mK6bXEkZdlVbqZeLPlGWV4=;
        b=IluyRi1abiv2hBUNYotMb3NvRJ58sdX+qYwWnKt1fBK3Bvqam27+Agfcr8qrETPT/U
         z0cCu7zIqfmaZ0GMLWtaRjSMsjITOGfepSTYP/zt9PMVPQ0YMvz8rBhBafeZVVHy5Y3M
         Rc23Npitnz6avgr+YRkdJ4eCx1Nay0JDQetqoVUN+s8lGZcsZP8f+xpjglhx8wGftUby
         rbzf9zKpvayy7ayrIYR17aX003Td0FiTVMuaYShsTKd4iWkjZ9yaTvxtls8xpfn0fpJw
         yBjElEhzY9eeOErT719a9mksZSalcfjhyFNOywjyyejzjw4wPpJMn1bY56fkGtSQr/Fu
         Jl9A==
X-Gm-Message-State: AOAM530/E+87rQR193kUwhHqQ+qUgnNITPaZ6lrr7c0WGzoLLA5eK3r2
	lTHumOaVdogAbsxZq9BWZ5U=
X-Google-Smtp-Source: ABdhPJy43zvpQlKrXQWuoDTQAdxBqzQszlhiOF44hJadvNTzAB16md3CKQL3dosDZWCdG9sQCGv2CQ==
X-Received: by 2002:a7b:cd04:: with SMTP id f4mr9365494wmj.84.1619000075781;
        Wed, 21 Apr 2021 03:14:35 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:14:34 +0000
From: Wei Liu <wl@xen.org>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Christian Lindig <christian.lindig@citrix.com>,
	David Scott <dave@recoil.org>
Subject: Re: [PATCH v2 3/6] tools/libs/ctrl: use common p2m mapping code in
 xc_domain_resume_any()
Message-ID: <20210421101434.otdbqxpoodwpe4n6@liuwe-devbox-debian-v2>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-4-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210412152236.1975-4-jgross@suse.com>

On Mon, Apr 12, 2021 at 05:22:33PM +0200, Juergen Gross wrote:
> Instead of open coding the mapping of the p2m list use the already
> existing xc_core_arch_map_p2m() call, especially as the current code
> does not support guests with the linear p2m map. It should be noted
> that this code is needed for colo/remus only.
> 
> Switching to xc_core_arch_map_p2m() drops the need to bail out for
> bitness of tool stack and guest differing.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:14:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:14:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114297.217805 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9se-0006fA-3f; Wed, 21 Apr 2021 10:14:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114297.217805; Wed, 21 Apr 2021 10: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 1lZ9sd-0006f3-W0; Wed, 21 Apr 2021 10:14:47 +0000
Received: by outflank-mailman (input) for mailman id 114297;
 Wed, 21 Apr 2021 10:14:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9sc-0006eb-AO
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:14:46 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6dfba6ee-09d1-4241-863b-bfe73eef0286;
 Wed, 21 Apr 2021 10:14:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7DA64ACB1;
 Wed, 21 Apr 2021 10:14: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: 6dfba6ee-09d1-4241-863b-bfe73eef0286
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619000084; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7EvFikfHlbgIEknXLhXxcjTe3nCsX4Tv8YxBVVDYQAA=;
	b=ax/BBzBQCISMR3RM8hpgUhcqzfXKxo5iwAeycqDYaC3Xp2DLxHH56HaCL6ZatlilT0nNK0
	vSLr+tpUIXNKkOR3j9BI4RDQtRpmUsjqrcc4iUVzHfn40Ln6/f9yGt7qLzLODI2wyRpJZM
	G7sVBDfaUrWmqSWRVcp6pSfGmoEwU2Q=
Subject: Re: [PATCH] CI: Drop TravisCI
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 George Dunlap <George.Dunlap@eu.citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>, Doug Goldstein <cardoe@cardoe.com>,
 Wei Liu <wl@xen.org>
References: <20210421092705.2295-1-andrew.cooper3@citrix.com>
 <20210421100418.7nyuka557iv6z2qk@liuwe-devbox-debian-v2>
 <e4f3157b-bb47-a15f-120a-e9b87d7d1faa@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6abb10d0-a324-d05f-cfed-2ce48bb5ff07@suse.com>
Date: Wed, 21 Apr 2021 12:14:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <e4f3157b-bb47-a15f-120a-e9b87d7d1faa@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 12:08, Andrew Cooper wrote:
> On 21/04/2021 11:04, Wei Liu wrote:
>> On Wed, Apr 21, 2021 at 10:27:05AM +0100, Andrew Cooper wrote:
>>> Travis-ci.org is shutting down shortly.  The arm cross-compile testing has
>>> been broken for a long time now, and all testing has now been superseded by
>>> our Gitlab infrastructure.
>>>
>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> Acked-by: Wei Liu <wl@xen.org>
> 
> Thanks.
> 
>> I guess this also needs backporting?
> 
> Unsure.  It logically depends on "automation: add arm32 cross-build
> tests for Xen" which is currently the top commit on staging, but said
> cross-compile tests were also the ones broken in Travis.
> 
> When travis shuts down, it will simply stop caring about repos/branches
> containing a .travis.yml, so I don't think anything is going to break as
> a consequence.
> 
> Then again, it is probably bad form to retain CI configuration for
> something which we know doesn't work.
> 
> Jan - thoughts?

Since the patch ought to be trivial to backport, for the latter of your
arguments I think I'd prefer backporting it.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:14:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:14:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114298.217817 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9sh-0006m3-Dn; Wed, 21 Apr 2021 10:14:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114298.217817; Wed, 21 Apr 2021 10: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 1lZ9sh-0006lv-80; Wed, 21 Apr 2021 10:14:51 +0000
Received: by outflank-mailman (input) for mailman id 114298;
 Wed, 21 Apr 2021 10:14:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9sg-0006lV-Ko
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:14:50 +0000
Received: from mail-wr1-f44.google.com (unknown [209.85.221.44])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a1f9d2be-64e6-4f47-a4b1-740723d5a36f;
 Wed, 21 Apr 2021 10:14:50 +0000 (UTC)
Received: by mail-wr1-f44.google.com with SMTP id s7so40674548wru.6
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:14:49 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id q5sm1932610wmj.20.2021.04.21.03.14.48
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:14: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: a1f9d2be-64e6-4f47-a4b1-740723d5a36f
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=rscqqqafEZ0wmiro6Nr2SQsvJDHxFBSyux335cUB5WM=;
        b=Ft3XvhalsqNTKiREJAWJIfzu7FUBzV+U55wGVDaxfIPsDd9vcHjh+vppB27iVCZOq2
         /dPsEWzHZ0gu64dyI/EvveZl+l1USGx+rjSTzch8gxsiaxyjNg+7MpyEQQpNokJmaJKe
         0szzUcvQJTjvoS+sLkQazd88cqKOnYtRspzaBfx5JiE9x09e3yIBne/6OzJPR0pEnMHv
         2GAlkJljVNr2w640mipj+AUioET4/ITdRTeeIjNHeEMyQb1ET06xjpMZB3+BZQCc1jiU
         fgQL1+3uDcYgxIlQdCosYPGymSBF+6j/YoO5x9Z4Htx0IhIrA2PFCt0FXTt/jaWzHjLm
         L7bw==
X-Gm-Message-State: AOAM531yMuCv8fL1QlpAfnqi0KK4hslbjzNOQeyN3SHsKHHS2RWASGg1
	JeyROhdt8HrBAxAvp608R/bXjhXPbug=
X-Google-Smtp-Source: ABdhPJwd+eZxc0Fq9U0dbAlxC8WAX21JjDO09+P6jaQqxTxq6XECmoWfZ2r4N2N3jmuXHddlNLxYyA==
X-Received: by 2002:adf:fec5:: with SMTP id q5mr26418214wrs.168.1619000089249;
        Wed, 21 Apr 2021 03:14:49 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:14:47 +0000
From: Wei Liu <wl@xen.org>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 4/6] tools/libs: move xc_resume.c to libxenguest
Message-ID: <20210421101447.gvhhkj2xiegmhwt7@liuwe-devbox-debian-v2>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-5-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210412152236.1975-5-jgross@suse.com>

On Mon, Apr 12, 2021 at 05:22:34PM +0200, Juergen Gross wrote:
> The guest suspend functionality is already part of libxenguest. Move
> the resume functionality from libxenctrl to libxenguest, too.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:16:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:16:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114308.217829 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9uD-00072r-QE; Wed, 21 Apr 2021 10:16:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114308.217829; Wed, 21 Apr 2021 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 1lZ9uD-00072j-N2; Wed, 21 Apr 2021 10:16:25 +0000
Received: by outflank-mailman (input) for mailman id 114308;
 Wed, 21 Apr 2021 10:16:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9uC-00072Z-7l
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:16:24 +0000
Received: from mail-wr1-f47.google.com (unknown [209.85.221.47])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 45bdc974-76b1-48d7-9846-a759d2c90958;
 Wed, 21 Apr 2021 10:16:23 +0000 (UTC)
Received: by mail-wr1-f47.google.com with SMTP id e7so31789137wrs.11
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:16:23 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id x17sm1850648wmi.46.2021.04.21.03.16.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 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: 45bdc974-76b1-48d7-9846-a759d2c90958
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=a8L00fq6w3tLS1J4TiEMawwljefhGTum8Vz7ClQHmUo=;
        b=kOdh9w18t6TKtcBiGErpFKpKL0JL8bodpGRqI5bdOc6OUOLiTkE4EvTjx/3Y5uynAT
         eQSywk8XOskFqpZCbbPg9EMj91n+aM3mcu4fa1v+B8QRo4NU7Uk5cNyNkrAxqAC0D9Lk
         Uyeyuyut2LptuZM5Zq0PMp2dB6w0pQeqcSBjy5cJCF8yVGdUvM29Bj1MuzGYQi8DsVyt
         1oS5saAwzpLBBid41GF8O4sbOI52oVZOdDR28AVeYhpZPIt32jiCP3K0l+9x/sFTGI5N
         d36fGiBd5uWyk9iLlzKF2g8vt6hWOY2FuLeVgrd5XcogI6l50nYDv4UgsFXOkyHwpyQW
         Pk1A==
X-Gm-Message-State: AOAM5331qOCN8nE2+brRjjDaCqA2hwUQuWkBXCuPZA4IXUE3l3YbSaBJ
	P89c0H0hitjhsFhTyRxcHUw=
X-Google-Smtp-Source: ABdhPJyMlB9Ysu2k2Papv/qrTU1yiZPoD897QSZEijpH+6oVqwvJCi/l6xG4eFm7xUdJHVy6QZpsuA==
X-Received: by 2002:a05:6000:190:: with SMTP id p16mr26577043wrx.334.1619000182812;
        Wed, 21 Apr 2021 03:16:22 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:16:21 +0000
From: Wei Liu <wl@xen.org>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 5/6] tools/libs: move xc_core* from libxenctrl to
 libxenguest
Message-ID: <20210421101621.pr3v74tyjhaezgxl@liuwe-devbox-debian-v2>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-6-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210412152236.1975-6-jgross@suse.com>

On Mon, Apr 12, 2021 at 05:22:35PM +0200, Juergen Gross wrote:
> The functionality in xc_core* should be part of libxenguest instead
> of libxenctrl. Users are already either in libxenguest, or in xl.
> There is one single exception: xc_core_arch_auto_translated_physmap()
> is being used by xc_domain_memory_mapping(), which is used by qemu.
> So leave the xc_core_arch_auto_translated_physmap() functionality in
> libxenctrl.
> 
> This will make it easier to merge common functionality of xc_core*
> and xg_sr_save*.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:16:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:16:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114312.217841 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9ud-00078f-30; Wed, 21 Apr 2021 10:16:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114312.217841; Wed, 21 Apr 2021 10:16:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9uc-00078Y-W2; Wed, 21 Apr 2021 10:16:50 +0000
Received: by outflank-mailman (input) for mailman id 114312;
 Wed, 21 Apr 2021 10:16:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZ9ub-00078P-2n
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:16:49 +0000
Received: from mail-wm1-f41.google.com (unknown [209.85.128.41])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b2944295-5adb-478c-9c3f-619d366b8d58;
 Wed, 21 Apr 2021 10:16:48 +0000 (UTC)
Received: by mail-wm1-f41.google.com with SMTP id
 o9-20020a1c41090000b029012c8dac9d47so975227wma.1
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:16:48 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id r2sm2331449wrt.79.2021.04.21.03.16.47
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03: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: b2944295-5adb-478c-9c3f-619d366b8d58
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=aOtW8gfOPkw/gwZBHl+ljZsleNLy5GnKy82cQDfNhYE=;
        b=QmbwgHz6WDWxTQhmrWQ9FS7v1KKt+pQWFAK6x9K9NfGItkzPS3hXQqiv/e8kQD1r2V
         34rzacn19kODGBnAmMtEIEezvYP2Q+aIaVV1aLlcJ1Y4o9bdhRPCnzj8nx1Rp5A2a5LQ
         zKXnwwZqHMLZkOxR5Rv0m/1V0r6TGbO0yhA0GBZvdp04Y5N1qBJ8INskWFCROWcZ1zR5
         Av/yPqUmVhw7qAN3vQmGzqhDtjgTHLF7VtXFgnNxB1fjkLBCx19xmXjkX0OUTm8aO0UV
         Fxe/Eo7wrcwICqInb+SCJnUbRLtx6NEnZl35jaj+PzhA+FGjYaXIj/wo9dl329/XGOlX
         lB8Q==
X-Gm-Message-State: AOAM531vW2F/BUJTox74ksv7Z6scPMQ2qDbqsdLTAQ5DiDoRPLIXUdJp
	SVW6UbUo6c554Y4DM9Z25vw=
X-Google-Smtp-Source: ABdhPJyif/NErDoJrYKn/uij1ykGtr1u+mOzbPoRw4hgk6ZHJr7EJ1hKxmx0o9VT1CJvmgCBkt+xiA==
X-Received: by 2002:a1c:2:: with SMTP id 2mr9085819wma.113.1619000207604;
        Wed, 21 Apr 2021 03:16:47 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:16:46 +0000
From: Wei Liu <wl@xen.org>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 6/6] tools/libs/guest: make some definitions private
 to libxenguest
Message-ID: <20210421101646.276mcsqzbegq6e57@liuwe-devbox-debian-v2>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-7-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210412152236.1975-7-jgross@suse.com>

On Mon, Apr 12, 2021 at 05:22:36PM +0200, Juergen Gross wrote:
> There are some definitions which are used in libxenguest only now.
> Move them from libxenctrl over to libxenguest.
> 
> Remove an unused macro.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:17:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:17:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114320.217853 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9ve-0007Ha-DF; Wed, 21 Apr 2021 10:17:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114320.217853; Wed, 21 Apr 2021 10:17: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 1lZ9ve-0007HT-AA; Wed, 21 Apr 2021 10:17:54 +0000
Received: by outflank-mailman (input) for mailman id 114320;
 Wed, 21 Apr 2021 10:17:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=37lK=JS=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZ9vc-0007HN-9E
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:17:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 67d1812d-dd23-4e41-a910-b91413a6ed57;
 Wed, 21 Apr 2021 10:17:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6EDF6ACB1;
 Wed, 21 Apr 2021 10:17: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: 67d1812d-dd23-4e41-a910-b91413a6ed57
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619000270; 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=juTGJege9oQI7pMEOBZu8vAIBiOTIVKlZajVVKVVQIo=;
	b=VGjM4DRWfc8HhQYAbDPt2ST2LyV7PrcIUKo05UjmqqUCy3F53hTRn9SKvGHEvvsT0/QhlL
	nkBK3e189SXSH0r0JCKuJ3H+96cs/ba8O8BlLsqukzruPMVq7Tm9vnD88RGXOO9+r26nmk
	c3ZCjpgrKmtRmZ0BrtuJnThlICMeElo=
Subject: Re: [PATCH v2 2/6] tools/libs/ctrl: fix xc_core_arch_map_p2m() to
 support linear p2m table
To: Wei Liu <wl@xen.org>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-3-jgross@suse.com>
 <20210421101334.4wuzqjkwiq7ixsbh@liuwe-devbox-debian-v2>
From: Juergen Gross <jgross@suse.com>
Message-ID: <6f3853d8-6900-cf27-bd2b-750b6ee2cfb1@suse.com>
Date: Wed, 21 Apr 2021 12:17:49 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210421101334.4wuzqjkwiq7ixsbh@liuwe-devbox-debian-v2>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="vomOWatmLoWq03bOlxSDBsHtUYCH9DPeU"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--vomOWatmLoWq03bOlxSDBsHtUYCH9DPeU
Content-Type: multipart/mixed; boundary="BU8QJ4I1Uc3HIMZrhWLUkAmbIbDDZXDL3";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Wei Liu <wl@xen.org>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>
Message-ID: <6f3853d8-6900-cf27-bd2b-750b6ee2cfb1@suse.com>
Subject: Re: [PATCH v2 2/6] tools/libs/ctrl: fix xc_core_arch_map_p2m() to
 support linear p2m table
References: <20210412152236.1975-1-jgross@suse.com>
 <20210412152236.1975-3-jgross@suse.com>
 <20210421101334.4wuzqjkwiq7ixsbh@liuwe-devbox-debian-v2>
In-Reply-To: <20210421101334.4wuzqjkwiq7ixsbh@liuwe-devbox-debian-v2>

--BU8QJ4I1Uc3HIMZrhWLUkAmbIbDDZXDL3
Content-Type: multipart/mixed;
 boundary="------------1642F077A5970873B88775C4"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------1642F077A5970873B88775C4
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 21.04.21 12:13, Wei Liu wrote:
> On Mon, Apr 12, 2021 at 05:22:32PM +0200, Juergen Gross wrote:
>> The core of a pv linux guest produced via "xl dump-core" is not usable=

>> as since kernel 4.14 only the linear p2m table is kept if Xen indicate=
s
>> it is supporting that. Unfortunately xc_core_arch_map_p2m() is still
>> supporting the 3-level p2m tree only.
>>
>> Fix that by copying the functionality of map_p2m() from libxenguest to=

>> libxenctrl.
>>
>=20
> So there are now two copies of the same logic? Is it possible to reduce=

> it to only one?

Yes. See the intro mail of the series.

I wanted to fix the issue first, before doing the major cleanup work.


Juergen

--------------1642F077A5970873B88775C4
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------1642F077A5970873B88775C4--

--BU8QJ4I1Uc3HIMZrhWLUkAmbIbDDZXDL3--

--vomOWatmLoWq03bOlxSDBsHtUYCH9DPeU
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

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

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmB/+80FAwAAAAAACgkQsN6d1ii/Ey9m
OQf+NE/AT8sP3vnQN21zf+jnsHYefgyFzaL+h5Q0a2IbAUImyvI5R5HOUi2QcJ54v8qVV/riNw+j
GQGnRbhbaxKuPbR8vowNcHZO9mxMxAY3mUbH+ftvjjUXgh94ARTTs6NtnIrRUvND3QLES6pEy2Ej
woChX+2VnEKGnMRqba1SFwGZNuR1CzXyB9jylKe8alGHWhz2Qb/V1mqo18jgcVYC899Wbj5dt0EU
X4NuiqriR2chU87agqfjzkrUp+IkbUwkC1RR8N0CNSatKWUGcAfD3k05Gt+NQqBejiE0pMtSm0m7
wAOp4LZp4UXSuCSffnICGYwsCLtjB7D2DGe/H6L7CA==
=aESp
-----END PGP SIGNATURE-----

--vomOWatmLoWq03bOlxSDBsHtUYCH9DPeU--


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:20:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:20:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114331.217867 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9xm-000874-Vz; Wed, 21 Apr 2021 10:20:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114331.217867; Wed, 21 Apr 2021 10: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 1lZ9xm-00086x-Si; Wed, 21 Apr 2021 10:20:06 +0000
Received: by outflank-mailman (input) for mailman id 114331;
 Wed, 21 Apr 2021 10:20: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 1lZ9xl-0007uo-BG
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:20: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 1lZ9xk-0005Li-4D; Wed, 21 Apr 2021 10:20:04 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZ9xj-00037g-UT; Wed, 21 Apr 2021 10: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=1Ve6H2tMHVjkc2t1o2MMy7p052SleOZOwUXS6lOK5Qo=; b=aU9J0gr3bzAkwAK3qR4eB6tVzT
	gNPgx/6RdNU78JyWHhUdCNm4mfHsXbtYRqR5AAorirFjWEihifORPPTzJpS+r06lkByQdAgrgLYCs
	3KiumCxfQ0/BDMRBnGl38ThsTN167DnOJJXMctn2PjH9BIJGYOie7qR3oRyHqyI26ws0=;
Subject: Re: [PATCH 2/9] arm/domain: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-3-michal.orzel@arm.com>
 <80f89abe-d81f-8b56-583c-470289abae0b@xen.org>
 <fabfcd90-a46b-c496-2db4-258c47d0991f@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <e6e437eb-c986-48d4-90a9-fe6e04cec966@xen.org>
Date: Wed, 21 Apr 2021 11:20:02 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <fabfcd90-a46b-c496-2db4-258c47d0991f@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 21/04/2021 08:36, Michal Orzel wrote:
> Hi Julien,

Hi Michal,

> 
> On 20.04.2021 15:12, Julien Grall wrote:
>> Hi Michal,
>>
>> On 20/04/2021 08:08, Michal Orzel wrote:
>>> AArch64 system registers are 64bit whereas AArch32 ones
>>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>>> we should get rid of helpers READ/WRITE_SYSREG32
>>> in favour of using READ/WRITE_SYSREG.
>>> We should also use register_t type when reading sysregs
>>> which can correspond to uint64_t or uint32_t.
>>> Even though many AArch64 sysregs have upper 32bit reserved
>>> it does not mean that they can't be widen in the future.
>>>
>>> Modify type of registers: actlr, cntkctl to register_t.
>>
>> ACTLR is implementation defined, so in theory there might already bits already defined in the range [32:63]. So I would consider to split it from the patch so we can backport it.
>>
> You mean not to touch it at all in this series or to create a seperate patch only for ACTLR?

I meant creating a separate patch for ACTLR as part of this series.


>>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>>> ---
>>>    xen/arch/arm/domain.c        | 20 ++++++++++----------
>>>    xen/include/asm-arm/domain.h |  4 ++--
>>>    2 files changed, 12 insertions(+), 12 deletions(-)
>>>
>>> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
>>> index bdd3d3e5b5..c021a03c61 100644
>>> --- a/xen/arch/arm/domain.c
>>> +++ b/xen/arch/arm/domain.c
>>> @@ -113,13 +113,13 @@ static void ctxt_switch_from(struct vcpu *p)
>>>        p->arch.tpidr_el1 = READ_SYSREG(TPIDR_EL1);
>>>          /* Arch timer */
>>> -    p->arch.cntkctl = READ_SYSREG32(CNTKCTL_EL1);
>>> +    p->arch.cntkctl = READ_SYSREG(CNTKCTL_EL1);
>>>        virt_timer_save(p);
>>>          if ( is_32bit_domain(p->domain) && cpu_has_thumbee )
>>>        {
>>> -        p->arch.teecr = READ_SYSREG32(TEECR32_EL1);
>>> -        p->arch.teehbr = READ_SYSREG32(TEEHBR32_EL1);
>>> +        p->arch.teecr = READ_SYSREG(TEECR32_EL1);
>>> +        p->arch.teehbr = READ_SYSREG(TEEHBR32_EL1);
>>
>> It feels strange you converted cntkctl and actlr to use register_t but not teecr and teehbr. Can you explain why?
>>
> Because thumbee and its registers do not appear in any of ARMv8 ARM version.

This was defined on the very first version of the ARMv8-A spec (issue 
a.a) but was dropped on subsequent versinos. Hence why the compiler 
doesn't shout at you when finding TEECR32_EL1 and TEEHBR32_EL1.

> This means that this code could be protected even with #ifdef CONFIG_ARM_32 as AArch64 do not have them.

+1. The feature was completely dropped for Armv8 (even if it appeared in 
earlier version of the spec). I have checked AMD Seattle, QEMU and the 
Foundation model to confirm the feature is not exposed.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:20:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:20:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114333.217880 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9y6-0008G3-7u; Wed, 21 Apr 2021 10:20:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114333.217880; Wed, 21 Apr 2021 10:20: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 1lZ9y6-0008Fw-4f; Wed, 21 Apr 2021 10:20:26 +0000
Received: by outflank-mailman (input) for mailman id 114333;
 Wed, 21 Apr 2021 10:20:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9y4-0008Fe-JN
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:20:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a1fbc1e2-e025-4de5-89ed-03fceb920eff;
 Wed, 21 Apr 2021 10:20:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id ED37CAEE7;
 Wed, 21 Apr 2021 10:20: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: a1fbc1e2-e025-4de5-89ed-03fceb920eff
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619000423; 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=ijMg3o2VxfvgdYZVqP7rVwQobEaLDOu3WLhnZL+eup4=;
	b=svejwh6Rr7CcOx7NKiP/T2naN9h6O1gsjwYSm2nJxCQYjhzr7mOxt3DePht9PDGX2TV6LS
	ixuf5IGA5boyc2ZrXBeu5RXvmbV/pz9qeJHodRdaO8Ga8GSkHM3lwtzmN26DdnsJvTO5YV
	Z/3zkducI1iEFd0+sYf/lGPvGHK2GBQ=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v4 0/3] zstd decompression fallout / consolidation
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Message-ID: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Date: Wed, 21 Apr 2021 12:20:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

1: unzstd: replace INIT{,DATA} and STATIC
2: xen/decompress: drop STATIC and INIT
3: unzstd: make helper symbols static

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:21:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:21:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114340.217892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9yz-0008Oa-Is; Wed, 21 Apr 2021 10:21:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114340.217892; Wed, 21 Apr 2021 10:21:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9yz-0008OT-FN; Wed, 21 Apr 2021 10:21:21 +0000
Received: by outflank-mailman (input) for mailman id 114340;
 Wed, 21 Apr 2021 10:21: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 1lZ9yy-0008OI-5A
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:21: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 1lZ9yw-0005ON-UU; Wed, 21 Apr 2021 10:21:18 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZ9yw-0003Fb-Oe; Wed, 21 Apr 2021 10:21: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=YOpOABEOojqKBQPd/Pxk95IAlQb+FLSZ4QC7uulASH4=; b=Z+Jpfy8xcaAMDGeWfvoRW4Vl9k
	cJiRWx348zfy3sWUnT0W5WuwnHtFMpTxabUsrFB0tzz6oUUp/pbpdRRN6j4EXAqKh0pD/YqTHMIkM
	TeKLOwvlNK49Dhbt2xFgyosMe9gON0fkAU3x2re/DcF/BbqbmulRpJo7gN/hHOt7xgZI=;
Subject: Re: [PATCH 3/9] arm/gic: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-4-michal.orzel@arm.com>
 <1a087bed-94e5-bada-76c4-92e0c429cce6@xen.org>
 <fd5924c5-685d-a9fc-1116-c1b8909c9aea@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <7cac2363-6263-6b64-2f7e-c3f7cd588d15@xen.org>
Date: Wed, 21 Apr 2021 11:21:17 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <fd5924c5-685d-a9fc-1116-c1b8909c9aea@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Michal,

On 21/04/2021 08:48, Michal Orzel wrote:
> On 20.04.2021 15:28, Julien Grall wrote:
>> On 20/04/2021 08:08, Michal Orzel wrote:
>>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>>>      static unsigned int gicv3_read_irq(void)
>>>    {
>>> -    unsigned int irq = READ_SYSREG32(ICC_IAR1_EL1);
>>> +    register_t irq = READ_SYSREG(ICC_IAR1_EL1);
>>>          dsb(sy);
>>>    -    return irq;
>>> +    /* Number of IRQs do not exceed 32bit. */
>>
>> If we want to be pedantic, the IRQs are encoded using 23-bit. So maybe we want to mask them below.
>>
>>> +    return (unsigned int)irq;
>>
>> NIT: We tend to avoid explicit cast unless they are strictly necessary because they can be more harmful than implicit cast (the compiler may not cast every conversion). So I would drop it and just keep the comment.
>>
> Ok. I will do:
> return (irq & 0xffffff);

Sounds good, so long we the value is not hardoced but provided through a 
define :).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:21:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:21:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114341.217904 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9zD-0008Sv-Ss; Wed, 21 Apr 2021 10:21:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114341.217904; Wed, 21 Apr 2021 10:21:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9zD-0008Sn-NS; Wed, 21 Apr 2021 10:21:35 +0000
Received: by outflank-mailman (input) for mailman id 114341;
 Wed, 21 Apr 2021 10:21:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9zB-0008SH-MY
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:21:33 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 25a0931d-06bf-4520-a188-dc9615477e50;
 Wed, 21 Apr 2021 10:21:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 48F05B2DC;
 Wed, 21 Apr 2021 10:21: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: 25a0931d-06bf-4520-a188-dc9615477e50
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619000489; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Xe2q4/SCTe+uRSIGmPmyzYGgAB78zUweD/q9Y62y1Cg=;
	b=d/bOR2uFJrGWDxEc+URgUPqQ/SwO7Ame7dMSK5LdYmM3F88GjpEubFqg2LfFpO5BnY8rds
	fwhzEpT/QgpL9EZganzEYl+QkGUEhpfT0TkwEPhl/+xXUi9X7cYRZDcy6ZfQG4w4y8pBSq
	yvCQrNVlt0biHw0FQKWyTOf1d/dlkJ0=
Subject: [PATCH v4 1/3] unzstd: replace INIT and STATIC
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Message-ID: <0e70ff46-5969-6d9e-58e1-a7338ccdcbf2@suse.com>
Date: Wed, 21 Apr 2021 12:21:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

With xen/common/decompress.h now agreeing in both build modes about
what STATIC expands to, there's no need for these abstractions anymore.

Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v4: Minor wording adjustment to description.
v3: New.

--- a/xen/common/unzstd.c
+++ b/xen/common/unzstd.c
@@ -71,7 +71,7 @@
  */
 #define ZSTD_IOBUF_SIZE		(1 << 17)
 
-static int INIT handle_zstd_error(size_t ret, void (*error)(const char *x))
+static int __init handle_zstd_error(size_t ret, void (*error)(const char *x))
 {
 	const int err = ZSTD_getErrorCode(ret);
 
@@ -102,9 +102,9 @@ static int INIT handle_zstd_error(size_t
  * We can allocate less memory (no circular buffer for the sliding window),
  * and avoid some memcpy() calls.
  */
-static int INIT decompress_single(const u8 *in_buf, long in_len, u8 *out_buf,
-				  long out_len, unsigned int *in_pos,
-				  void (*error)(const char *x))
+static int __init decompress_single(const u8 *in_buf, long in_len, u8 *out_buf,
+				    long out_len, unsigned int *in_pos,
+				    void (*error)(const char *x))
 {
 	const size_t wksp_size = ZSTD_DCtxWorkspaceBound();
 	void *wksp = large_malloc(wksp_size);
@@ -142,11 +142,11 @@ out:
 	return err;
 }
 
-int INIT unzstd(unsigned char *in_buf, unsigned int in_len,
-	        int (*fill)(void*, unsigned int),
-	        int (*flush)(void*, unsigned int),
-	        unsigned char *out_buf, unsigned int *in_pos,
-	        void (*error)(const char *x))
+int __init unzstd(unsigned char *in_buf, unsigned int in_len,
+		  int (*fill)(void*, unsigned int),
+		  int (*flush)(void*, unsigned int),
+		  unsigned char *out_buf, unsigned int *in_pos,
+		  void (*error)(const char *x))
 {
 	ZSTD_inBuffer in;
 	ZSTD_outBuffer out;
--- a/xen/common/zstd/decompress.c
+++ b/xen/common/zstd/decompress.c
@@ -46,7 +46,7 @@
 /*_*******************************************************
 *  Memory operations
 **********************************************************/
-static void INIT ZSTD_copy4(void *dst, const void *src) { memcpy(dst, src, 4); }
+static void __init ZSTD_copy4(void *dst, const void *src) { memcpy(dst, src, 4); }
 
 /*-*************************************************************
 *   Context management
@@ -98,12 +98,12 @@ struct ZSTD_DCtx_s {
 	BYTE headerBuffer[ZSTD_FRAMEHEADERSIZE_MAX];
 }; /* typedef'd to ZSTD_DCtx within "zstd.h" */
 
-STATIC size_t INIT ZSTD_DCtxWorkspaceBound(void)
+static size_t __init ZSTD_DCtxWorkspaceBound(void)
 {
 	return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DCtx));
 }
 
-STATIC size_t INIT ZSTD_decompressBegin(ZSTD_DCtx *dctx)
+static size_t __init ZSTD_decompressBegin(ZSTD_DCtx *dctx)
 {
 	dctx->expected = ZSTD_frameHeaderSize_prefix;
 	dctx->stage = ZSTDds_getFrameHeaderSize;
@@ -123,7 +123,7 @@ STATIC size_t INIT ZSTD_decompressBegin(
 	return 0;
 }
 
-STATIC ZSTD_DCtx *INIT ZSTD_createDCtx_advanced(ZSTD_customMem customMem)
+static ZSTD_DCtx *__init ZSTD_createDCtx_advanced(ZSTD_customMem customMem)
 {
 	ZSTD_DCtx *dctx;
 
@@ -138,13 +138,13 @@ STATIC ZSTD_DCtx *INIT ZSTD_createDCtx_a
 	return dctx;
 }
 
-STATIC ZSTD_DCtx *INIT ZSTD_initDCtx(void *workspace, size_t workspaceSize)
+static ZSTD_DCtx *__init ZSTD_initDCtx(void *workspace, size_t workspaceSize)
 {
 	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
 	return ZSTD_createDCtx_advanced(stackMem);
 }
 
-size_t INIT ZSTD_freeDCtx(ZSTD_DCtx *dctx)
+size_t __init ZSTD_freeDCtx(ZSTD_DCtx *dctx)
 {
 	if (dctx == NULL)
 		return 0; /* support free on NULL */
@@ -153,15 +153,15 @@ size_t INIT ZSTD_freeDCtx(ZSTD_DCtx *dct
 }
 
 #ifdef BUILD_DEAD_CODE
-void INIT ZSTD_copyDCtx(ZSTD_DCtx *dstDCtx, const ZSTD_DCtx *srcDCtx)
+void __init ZSTD_copyDCtx(ZSTD_DCtx *dstDCtx, const ZSTD_DCtx *srcDCtx)
 {
 	size_t const workSpaceSize = (ZSTD_BLOCKSIZE_ABSOLUTEMAX + WILDCOPY_OVERLENGTH) + ZSTD_frameHeaderSize_max;
 	memcpy(dstDCtx, srcDCtx, sizeof(ZSTD_DCtx) - workSpaceSize); /* no need to copy workspace */
 }
 #endif
 
-STATIC size_t ZSTD_findFrameCompressedSize(const void *src, size_t srcSize);
-STATIC size_t ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict,
+static size_t ZSTD_findFrameCompressedSize(const void *src, size_t srcSize);
+static size_t ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict,
 	size_t dictSize);
 
 static void ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict);
@@ -176,7 +176,7 @@ static void ZSTD_refDDict(ZSTD_DCtx *dst
  *  Note : Frame Identifier is 4 bytes. If `size < 4`, @return will always be 0.
  *  Note 2 : Legacy Frame Identifiers are considered valid only if Legacy Support is enabled.
  *  Note 3 : Skippable Frame Identifiers are considered valid. */
-unsigned INIT ZSTD_isFrame(const void *buffer, size_t size)
+unsigned __init ZSTD_isFrame(const void *buffer, size_t size)
 {
 	if (size < 4)
 		return 0;
@@ -194,7 +194,7 @@ unsigned INIT ZSTD_isFrame(const void *b
 /** ZSTD_frameHeaderSize() :
 *   srcSize must be >= ZSTD_frameHeaderSize_prefix.
 *   @return : size of the Frame Header */
-static size_t INIT ZSTD_frameHeaderSize(const void *src, size_t srcSize)
+static size_t __init ZSTD_frameHeaderSize(const void *src, size_t srcSize)
 {
 	if (srcSize < ZSTD_frameHeaderSize_prefix)
 		return ERROR(srcSize_wrong);
@@ -212,7 +212,7 @@ static size_t INIT ZSTD_frameHeaderSize(
 *   @return : 0, `fparamsPtr` is correctly filled,
 *            >0, `srcSize` is too small, result is expected `srcSize`,
 *             or an error code, which can be tested using ZSTD_isError() */
-STATIC size_t INIT ZSTD_getFrameParams(ZSTD_frameParams *fparamsPtr, const void *src, size_t srcSize)
+static size_t __init ZSTD_getFrameParams(ZSTD_frameParams *fparamsPtr, const void *src, size_t srcSize)
 {
 	const BYTE *ip = (const BYTE *)src;
 
@@ -303,7 +303,7 @@ STATIC size_t INIT ZSTD_getFrameParams(Z
 *   @return : decompressed size of the single frame pointed to be `src` if known, otherwise
 *             - ZSTD_CONTENTSIZE_UNKNOWN if the size cannot be determined
 *             - ZSTD_CONTENTSIZE_ERROR if an error occurred (e.g. invalid magic number, srcSize too small) */
-unsigned long long INIT ZSTD_getFrameContentSize(const void *src, size_t srcSize)
+unsigned long long __init ZSTD_getFrameContentSize(const void *src, size_t srcSize)
 {
 	{
 		ZSTD_frameParams fParams;
@@ -325,7 +325,7 @@ unsigned long long INIT ZSTD_getFrameCon
  *  `srcSize` must be the exact length of some number of ZSTD compressed and/or
  *      skippable frames
  *  @return : decompressed size of the frames contained */
-unsigned long long INIT ZSTD_findDecompressedSize(const void *src, size_t srcSize)
+unsigned long long __init ZSTD_findDecompressedSize(const void *src, size_t srcSize)
 {
 	{
 		unsigned long long totalDstSize = 0;
@@ -379,7 +379,7 @@ unsigned long long INIT ZSTD_findDecompr
 /** ZSTD_decodeFrameHeader() :
 *   `headerSize` must be the size provided by ZSTD_frameHeaderSize().
 *   @return : 0 if success, or an error code, which can be tested using ZSTD_isError() */
-static size_t INIT ZSTD_decodeFrameHeader(ZSTD_DCtx *dctx, const void *src, size_t headerSize)
+static size_t __init ZSTD_decodeFrameHeader(ZSTD_DCtx *dctx, const void *src, size_t headerSize)
 {
 	size_t const result = ZSTD_getFrameParams(&(dctx->fParams), src, headerSize);
 	if (ZSTD_isError(result))
@@ -401,7 +401,7 @@ typedef struct {
 
 /*! ZSTD_getcBlockSize() :
 *   Provides the size of compressed block from block header `src` */
-STATIC size_t INIT ZSTD_getcBlockSize(const void *src, size_t srcSize, blockProperties_t *bpPtr)
+static size_t __init ZSTD_getcBlockSize(const void *src, size_t srcSize, blockProperties_t *bpPtr)
 {
 	if (srcSize < ZSTD_blockHeaderSize)
 		return ERROR(srcSize_wrong);
@@ -419,7 +419,7 @@ STATIC size_t INIT ZSTD_getcBlockSize(co
 	}
 }
 
-static size_t INIT ZSTD_copyRawBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
+static size_t __init ZSTD_copyRawBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
 {
 	if (srcSize > dstCapacity)
 		return ERROR(dstSize_tooSmall);
@@ -427,7 +427,7 @@ static size_t INIT ZSTD_copyRawBlock(voi
 	return srcSize;
 }
 
-static size_t INIT ZSTD_setRleBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize, size_t regenSize)
+static size_t __init ZSTD_setRleBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize, size_t regenSize)
 {
 	if (srcSize != 1)
 		return ERROR(srcSize_wrong);
@@ -439,7 +439,7 @@ static size_t INIT ZSTD_setRleBlock(void
 
 /*! ZSTD_decodeLiteralsBlock() :
 	@return : nb of bytes read from src (< srcSize ) */
-STATIC size_t INIT ZSTD_decodeLiteralsBlock(ZSTD_DCtx *dctx, const void *src, size_t srcSize) /* note : srcSize < BLOCKSIZE */
+static size_t __init ZSTD_decodeLiteralsBlock(ZSTD_DCtx *dctx, const void *src, size_t srcSize) /* note : srcSize < BLOCKSIZE */
 {
 	if (srcSize < MIN_CBLOCK_SIZE)
 		return ERROR(corruption_detected);
@@ -759,10 +759,10 @@ static const FSE_decode_t4 OF_defaultDTa
 	@return : nb bytes read from src,
 			  or an error code if it fails, testable with ZSTD_isError()
 */
-static size_t INIT ZSTD_buildSeqTable(FSE_DTable *DTableSpace, const FSE_DTable **DTablePtr,
-				      symbolEncodingType_e type, U32 max, U32 maxLog, const void *src,
-				      size_t srcSize, const FSE_decode_t4 *defaultTable,
-				      U32 flagRepeatTable, void *workspace, size_t workspaceSize)
+static size_t __init ZSTD_buildSeqTable(FSE_DTable *DTableSpace, const FSE_DTable **DTablePtr,
+					symbolEncodingType_e type, U32 max, U32 maxLog, const void *src,
+					size_t srcSize, const FSE_decode_t4 *defaultTable,
+					U32 flagRepeatTable, void *workspace, size_t workspaceSize)
 {
 	const void *const tmpPtr = defaultTable; /* bypass strict aliasing */
 	switch (type) {
@@ -803,7 +803,7 @@ static size_t INIT ZSTD_buildSeqTable(FS
 	}
 }
 
-STATIC size_t INIT ZSTD_decodeSeqHeaders(ZSTD_DCtx *dctx, int *nbSeqPtr, const void *src, size_t srcSize)
+static size_t __init ZSTD_decodeSeqHeaders(ZSTD_DCtx *dctx, int *nbSeqPtr, const void *src, size_t srcSize)
 {
 	const BYTE *const istart = (const BYTE *const)src;
 	const BYTE *const iend = istart + srcSize;
@@ -940,7 +940,7 @@ size_t ZSTD_execSequenceLast7(BYTE *op,
 	return sequenceLength;
 }
 
-static seq_t INIT ZSTD_decodeSequence(seqState_t *seqState)
+static seq_t __init ZSTD_decodeSequence(seqState_t *seqState)
 {
 	seq_t seq;
 
@@ -1102,7 +1102,7 @@ size_t ZSTD_execSequence(BYTE *op, BYTE
 	return sequenceLength;
 }
 
-static size_t INIT ZSTD_decompressSequences(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
+static size_t __init ZSTD_decompressSequences(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
 {
 	const BYTE *ip = (const BYTE *)seqStart;
 	const BYTE *const iend = ip + seqSize;
@@ -1262,7 +1262,7 @@ FORCE_INLINE seq_t ZSTD_decodeSequenceLo
 	return seq;
 }
 
-static seq_t INIT ZSTD_decodeSequenceLong(seqState_t *seqState, unsigned const windowSize)
+static seq_t __init ZSTD_decodeSequenceLong(seqState_t *seqState, unsigned const windowSize)
 {
 	if (ZSTD_highbit32(windowSize) > STREAM_ACCUMULATOR_MIN) {
 		return ZSTD_decodeSequenceLong_generic(seqState, 1);
@@ -1272,9 +1272,9 @@ static seq_t INIT ZSTD_decodeSequenceLon
 }
 
 FORCE_INLINE
-size_t INIT ZSTD_execSequenceLong(BYTE *op, BYTE *const oend, seq_t sequence, const BYTE **litPtr,
-				  const BYTE *const litLimit, const BYTE *const base,
-				  const BYTE *const vBase, const BYTE *const dictEnd)
+size_t __init ZSTD_execSequenceLong(BYTE *op, BYTE *const oend, seq_t sequence, const BYTE **litPtr,
+				    const BYTE *const litLimit, const BYTE *const base,
+				    const BYTE *const vBase, const BYTE *const dictEnd)
 {
 	BYTE *const oLitEnd = op + sequence.litLength;
 	size_t const sequenceLength = sequence.litLength + sequence.matchLength;
@@ -1358,7 +1358,7 @@ size_t INIT ZSTD_execSequenceLong(BYTE *
 	return sequenceLength;
 }
 
-static size_t INIT ZSTD_decompressSequencesLong(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
+static size_t __init ZSTD_decompressSequencesLong(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
 {
 	const BYTE *ip = (const BYTE *)seqStart;
 	const BYTE *const iend = ip + seqSize;
@@ -1455,7 +1455,7 @@ static size_t INIT ZSTD_decompressSequen
 	return op - ostart;
 }
 
-static size_t INIT ZSTD_decompressBlock_internal(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
+static size_t __init ZSTD_decompressBlock_internal(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
 { /* blockType == blockCompressed */
 	const BYTE *ip = (const BYTE *)src;
 
@@ -1479,7 +1479,7 @@ static size_t INIT ZSTD_decompressBlock_
 	return ZSTD_decompressSequences(dctx, dst, dstCapacity, ip, srcSize);
 }
 
-static void INIT ZSTD_checkContinuity(ZSTD_DCtx *dctx, const void *dst)
+static void __init ZSTD_checkContinuity(ZSTD_DCtx *dctx, const void *dst)
 {
 	if (dst != dctx->previousDstEnd) { /* not contiguous */
 		dctx->dictEnd = dctx->previousDstEnd;
@@ -1490,7 +1490,7 @@ static void INIT ZSTD_checkContinuity(ZS
 }
 
 #ifdef BUILD_DEAD_CODE
-size_t INIT ZSTD_decompressBlock(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
+size_t __init ZSTD_decompressBlock(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
 {
 	size_t dSize;
 	ZSTD_checkContinuity(dctx, dst);
@@ -1501,7 +1501,7 @@ size_t INIT ZSTD_decompressBlock(ZSTD_DC
 
 /** ZSTD_insertBlock() :
 	insert `src` block into `dctx` history. Useful to track uncompressed blocks. */
-size_t INIT ZSTD_insertBlock(ZSTD_DCtx *dctx, const void *blockStart, size_t blockSize)
+size_t __init ZSTD_insertBlock(ZSTD_DCtx *dctx, const void *blockStart, size_t blockSize)
 {
 	ZSTD_checkContinuity(dctx, blockStart);
 	dctx->previousDstEnd = (const char *)blockStart + blockSize;
@@ -1509,7 +1509,7 @@ size_t INIT ZSTD_insertBlock(ZSTD_DCtx *
 }
 #endif /* BUILD_DEAD_CODE */
 
-STATIC size_t INIT ZSTD_generateNxBytes(void *dst, size_t dstCapacity, BYTE byte, size_t length)
+static size_t __init ZSTD_generateNxBytes(void *dst, size_t dstCapacity, BYTE byte, size_t length)
 {
 	if (length > dstCapacity)
 		return ERROR(dstSize_tooSmall);
@@ -1522,7 +1522,7 @@ STATIC size_t INIT ZSTD_generateNxBytes(
  *  `src` must point to the start of a ZSTD frame, ZSTD legacy frame, or skippable frame
  *  `srcSize` must be at least as large as the frame contained
  *  @return : the compressed size of the frame starting at `src` */
-STATIC size_t INIT ZSTD_findFrameCompressedSize(const void *src, size_t srcSize)
+static size_t __init ZSTD_findFrameCompressedSize(const void *src, size_t srcSize)
 {
 	if (srcSize >= ZSTD_skippableHeaderSize && (ZSTD_readLE32(src) & 0xFFFFFFF0U) == ZSTD_MAGIC_SKIPPABLE_START) {
 		return ZSTD_skippableHeaderSize + ZSTD_readLE32((const BYTE *)src + 4);
@@ -1578,7 +1578,7 @@ STATIC size_t INIT ZSTD_findFrameCompres
 
 /*! ZSTD_decompressFrame() :
 *   @dctx must be properly initialized */
-static size_t INIT ZSTD_decompressFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void **srcPtr, size_t *srcSizePtr)
+static size_t __init ZSTD_decompressFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void **srcPtr, size_t *srcSizePtr)
 {
 	const BYTE *ip = (const BYTE *)(*srcPtr);
 	BYTE *const ostart = (BYTE * const)dst;
@@ -1655,7 +1655,7 @@ static size_t INIT ZSTD_decompressFrame(
 static const void *ZSTD_DDictDictContent(const ZSTD_DDict *ddict);
 static size_t ZSTD_DDictDictSize(const ZSTD_DDict *ddict);
 
-static size_t INIT ZSTD_decompressMultiFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize,
+static size_t __init ZSTD_decompressMultiFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize,
 					const ZSTD_DDict *ddict)
 {
 	void *const dststart = dst;
@@ -1719,12 +1719,12 @@ static size_t INIT ZSTD_decompressMultiF
 	return (BYTE *)dst - (BYTE *)dststart;
 }
 
-STATIC size_t INIT ZSTD_decompress_usingDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize)
+static size_t __init ZSTD_decompress_usingDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize)
 {
 	return ZSTD_decompressMultiFrame(dctx, dst, dstCapacity, src, srcSize, dict, dictSize, NULL);
 }
 
-STATIC size_t INIT ZSTD_decompressDCtx(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
+static size_t __init ZSTD_decompressDCtx(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
 {
 	return ZSTD_decompress_usingDict(dctx, dst, dstCapacity, src, srcSize, NULL, 0);
 }
@@ -1733,12 +1733,12 @@ STATIC size_t INIT ZSTD_decompressDCtx(Z
 *   Advanced Streaming Decompression API
 *   Bufferless and synchronous
 ****************************************/
-STATIC size_t INIT ZSTD_nextSrcSizeToDecompress(ZSTD_DCtx *dctx)
+static size_t __init ZSTD_nextSrcSizeToDecompress(ZSTD_DCtx *dctx)
 {
 	return dctx->expected;
 }
 
-STATIC ZSTD_nextInputType_e INIT ZSTD_nextInputType(ZSTD_DCtx *dctx)
+static ZSTD_nextInputType_e __init ZSTD_nextInputType(ZSTD_DCtx *dctx)
 {
 	switch (dctx->stage) {
 	default: /* should not happen */
@@ -1753,12 +1753,12 @@ STATIC ZSTD_nextInputType_e INIT ZSTD_ne
 	}
 }
 
-int INIT ZSTD_isSkipFrame(ZSTD_DCtx *dctx) { return dctx->stage == ZSTDds_skipFrame; } /* for zbuff */
+int __init ZSTD_isSkipFrame(ZSTD_DCtx *dctx) { return dctx->stage == ZSTDds_skipFrame; } /* for zbuff */
 
 /** ZSTD_decompressContinue() :
 *   @return : nb of bytes generated into `dst` (necessarily <= `dstCapacity)
 *             or an error code, which can be tested using ZSTD_isError() */
-STATIC size_t INIT ZSTD_decompressContinue(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
+static size_t __init ZSTD_decompressContinue(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
 {
 	/* Sanity check */
 	if (srcSize != dctx->expected)
@@ -1877,7 +1877,7 @@ STATIC size_t INIT ZSTD_decompressContin
 	}
 }
 
-static size_t INIT ZSTD_refDictContent(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
+static size_t __init ZSTD_refDictContent(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
 {
 	dctx->dictEnd = dctx->previousDstEnd;
 	dctx->vBase = (const char *)dict - ((const char *)(dctx->previousDstEnd) - (const char *)(dctx->base));
@@ -1889,7 +1889,7 @@ static size_t INIT ZSTD_refDictContent(Z
 /* ZSTD_loadEntropy() :
  * dict : must point at beginning of a valid zstd dictionary
  * @return : size of entropy tables read */
-static size_t INIT ZSTD_loadEntropy(ZSTD_entropyTables_t *entropy, const void *const dict, size_t const dictSize)
+static size_t __init ZSTD_loadEntropy(ZSTD_entropyTables_t *entropy, const void *const dict, size_t const dictSize)
 {
 	const BYTE *dictPtr = (const BYTE *)dict;
 	const BYTE *const dictEnd = dictPtr + dictSize;
@@ -1958,7 +1958,7 @@ static size_t INIT ZSTD_loadEntropy(ZSTD
 	return dictPtr - (const BYTE *)dict;
 }
 
-static size_t INIT ZSTD_decompress_insertDictionary(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
+static size_t __init ZSTD_decompress_insertDictionary(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
 {
 	if (dictSize < 8)
 		return ZSTD_refDictContent(dctx, dict, dictSize);
@@ -1984,7 +1984,7 @@ static size_t INIT ZSTD_decompress_inser
 	return ZSTD_refDictContent(dctx, dict, dictSize);
 }
 
-STATIC size_t INIT ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
+static size_t __init ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
 {
 	CHECK_F(ZSTD_decompressBegin(dctx));
 	if (dict && dictSize)
@@ -2005,14 +2005,14 @@ struct ZSTD_DDict_s {
 }; /* typedef'd to ZSTD_DDict within "zstd.h" */
 
 #ifdef BUILD_DEAD_CODE
-size_t INIT ZSTD_DDictWorkspaceBound(void) { return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DDict)); }
+size_t __init ZSTD_DDictWorkspaceBound(void) { return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DDict)); }
 #endif
 
-static const void *INIT ZSTD_DDictDictContent(const ZSTD_DDict *ddict) { return ddict->dictContent; }
+static const void *__init ZSTD_DDictDictContent(const ZSTD_DDict *ddict) { return ddict->dictContent; }
 
-static size_t INIT ZSTD_DDictDictSize(const ZSTD_DDict *ddict) { return ddict->dictSize; }
+static size_t __init ZSTD_DDictDictSize(const ZSTD_DDict *ddict) { return ddict->dictSize; }
 
-static void INIT ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict)
+static void __init ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict)
 {
 	ZSTD_decompressBegin(dstDCtx); /* init */
 	if (ddict) {		       /* support refDDict on NULL */
@@ -2039,7 +2039,7 @@ static void INIT ZSTD_refDDict(ZSTD_DCtx
 }
 
 #ifdef BUILD_DEAD_CODE
-static size_t INIT ZSTD_loadEntropy_inDDict(ZSTD_DDict *ddict)
+static size_t __init ZSTD_loadEntropy_inDDict(ZSTD_DDict *ddict)
 {
 	ddict->dictID = 0;
 	ddict->entropyPresent = 0;
@@ -2058,7 +2058,7 @@ static size_t INIT ZSTD_loadEntropy_inDD
 	return 0;
 }
 
-static ZSTD_DDict *INIT ZSTD_createDDict_advanced(const void *dict, size_t dictSize, unsigned byReference, ZSTD_customMem customMem)
+static ZSTD_DDict *__init ZSTD_createDDict_advanced(const void *dict, size_t dictSize, unsigned byReference, ZSTD_customMem customMem)
 {
 	if (!customMem.customAlloc || !customMem.customFree)
 		return NULL;
@@ -2101,14 +2101,14 @@ static ZSTD_DDict *INIT ZSTD_createDDict
 *   Create a digested dictionary, to start decompression without startup delay.
 *   `dict` content is copied inside DDict.
 *   Consequently, `dict` can be released after `ZSTD_DDict` creation */
-ZSTD_DDict *INIT ZSTD_initDDict(const void *dict, size_t dictSize, void *workspace, size_t workspaceSize)
+ZSTD_DDict *__init ZSTD_initDDict(const void *dict, size_t dictSize, void *workspace, size_t workspaceSize)
 {
 	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
 	return ZSTD_createDDict_advanced(dict, dictSize, 1, stackMem);
 }
 #endif /* BUILD_DEAD_CODE */
 
-size_t INIT ZSTD_freeDDict(ZSTD_DDict *ddict)
+size_t __init ZSTD_freeDDict(ZSTD_DDict *ddict)
 {
 	if (ddict == NULL)
 		return 0; /* support free on NULL */
@@ -2125,7 +2125,7 @@ size_t INIT ZSTD_freeDDict(ZSTD_DDict *d
  *  Provides the dictID stored within dictionary.
  *  if @return == 0, the dictionary is not conformant with Zstandard specification.
  *  It can still be loaded, but as a content-only dictionary. */
-unsigned INIT ZSTD_getDictID_fromDict(const void *dict, size_t dictSize)
+unsigned __init ZSTD_getDictID_fromDict(const void *dict, size_t dictSize)
 {
 	if (dictSize < 8)
 		return 0;
@@ -2138,7 +2138,7 @@ unsigned INIT ZSTD_getDictID_fromDict(co
  *  Provides the dictID of the dictionary loaded into `ddict`.
  *  If @return == 0, the dictionary is not conformant to Zstandard specification, or empty.
  *  Non-conformant dictionaries can still be loaded, but as content-only dictionaries. */
-unsigned INIT ZSTD_getDictID_fromDDict(const ZSTD_DDict *ddict)
+unsigned __init ZSTD_getDictID_fromDDict(const ZSTD_DDict *ddict)
 {
 	if (ddict == NULL)
 		return 0;
@@ -2155,7 +2155,7 @@ unsigned INIT ZSTD_getDictID_fromDDict(c
  *  - `srcSize` is too small, and as a result, the frame header could not be decoded (only possible if `srcSize < ZSTD_FRAMEHEADERSIZE_MAX`).
  *  - This is not a Zstandard frame.
  *  When identifying the exact failure cause, it's possible to used ZSTD_getFrameParams(), which will provide a more precise error code. */
-unsigned INIT ZSTD_getDictID_fromFrame(const void *src, size_t srcSize)
+unsigned __init ZSTD_getDictID_fromFrame(const void *src, size_t srcSize)
 {
 	ZSTD_frameParams zfp = {0, 0, 0, 0};
 	size_t const hError = ZSTD_getFrameParams(&zfp, src, srcSize);
@@ -2168,7 +2168,7 @@ unsigned INIT ZSTD_getDictID_fromFrame(c
 /*! ZSTD_decompress_usingDDict() :
 *   Decompression using a pre-digested Dictionary
 *   Use dictionary without significant overhead. */
-STATIC size_t INIT ZSTD_decompress_usingDDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const ZSTD_DDict *ddict)
+static size_t __init ZSTD_decompress_usingDDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const ZSTD_DDict *ddict)
 {
 	/* pass content and size in case legacy frames are encountered */
 	return ZSTD_decompressMultiFrame(dctx, dst, dstCapacity, src, srcSize, NULL, 0, ddict);
@@ -2205,7 +2205,7 @@ struct ZSTD_DStream_s {
 	U32 hostageByte;
 }; /* typedef'd to ZSTD_DStream within "zstd.h" */
 
-STATIC size_t INIT ZSTD_DStreamWorkspaceBound(size_t maxWindowSize)
+static size_t __init ZSTD_DStreamWorkspaceBound(size_t maxWindowSize)
 {
 	size_t const blockSize = MIN(maxWindowSize, ZSTD_BLOCKSIZE_ABSOLUTEMAX);
 	size_t const inBuffSize = blockSize;
@@ -2213,7 +2213,7 @@ STATIC size_t INIT ZSTD_DStreamWorkspace
 	return ZSTD_DCtxWorkspaceBound() + ZSTD_ALIGN(sizeof(ZSTD_DStream)) + ZSTD_ALIGN(inBuffSize) + ZSTD_ALIGN(outBuffSize);
 }
 
-static ZSTD_DStream *INIT ZSTD_createDStream_advanced(ZSTD_customMem customMem)
+static ZSTD_DStream *__init ZSTD_createDStream_advanced(ZSTD_customMem customMem)
 {
 	ZSTD_DStream *zds;
 
@@ -2235,7 +2235,7 @@ static ZSTD_DStream *INIT ZSTD_createDSt
 	return zds;
 }
 
-STATIC ZSTD_DStream *INIT ZSTD_initDStream(size_t maxWindowSize, void *workspace, size_t workspaceSize)
+static ZSTD_DStream *__init ZSTD_initDStream(size_t maxWindowSize, void *workspace, size_t workspaceSize)
 {
 	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
 	ZSTD_DStream *zds = ZSTD_createDStream_advanced(stackMem);
@@ -2269,7 +2269,7 @@ STATIC ZSTD_DStream *INIT ZSTD_initDStre
 }
 
 #ifdef BUILD_DEAD_CODE
-ZSTD_DStream *INIT ZSTD_initDStream_usingDDict(size_t maxWindowSize, const ZSTD_DDict *ddict, void *workspace, size_t workspaceSize)
+ZSTD_DStream *__init ZSTD_initDStream_usingDDict(size_t maxWindowSize, const ZSTD_DDict *ddict, void *workspace, size_t workspaceSize)
 {
 	ZSTD_DStream *zds = ZSTD_initDStream(maxWindowSize, workspace, workspaceSize);
 	if (zds) {
@@ -2279,7 +2279,7 @@ ZSTD_DStream *INIT ZSTD_initDStream_usin
 }
 #endif
 
-size_t INIT ZSTD_freeDStream(ZSTD_DStream *zds)
+size_t __init ZSTD_freeDStream(ZSTD_DStream *zds)
 {
 	if (zds == NULL)
 		return 0; /* support free on null */
@@ -2301,11 +2301,11 @@ size_t INIT ZSTD_freeDStream(ZSTD_DStrea
 /* *** Initialization *** */
 
 #ifdef BUILD_DEAD_CODE
-size_t INIT ZSTD_DStreamInSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX + ZSTD_blockHeaderSize; }
-size_t INIT ZSTD_DStreamOutSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX; }
+size_t __init ZSTD_DStreamInSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX + ZSTD_blockHeaderSize; }
+size_t __init ZSTD_DStreamOutSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX; }
 #endif
 
-STATIC size_t INIT ZSTD_resetDStream(ZSTD_DStream *zds)
+static size_t __init ZSTD_resetDStream(ZSTD_DStream *zds)
 {
 	zds->stage = zdss_loadHeader;
 	zds->lhSize = zds->inPos = zds->outStart = zds->outEnd = 0;
@@ -2316,14 +2316,14 @@ STATIC size_t INIT ZSTD_resetDStream(ZST
 
 /* *****   Decompression   ***** */
 
-ZSTD_STATIC size_t INIT ZSTD_limitCopy(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
+ZSTD_STATIC size_t __init ZSTD_limitCopy(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
 {
 	size_t const length = MIN(dstCapacity, srcSize);
 	memcpy(dst, src, length);
 	return length;
 }
 
-STATIC size_t INIT ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inBuffer *input)
+static size_t __init ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inBuffer *input)
 {
 	const char *const istart = (const char *)(input->src) + input->pos;
 	const char *const iend = (const char *)(input->src) + input->size;
--- a/xen/common/zstd/entropy_common.c
+++ b/xen/common/zstd/entropy_common.c
@@ -46,17 +46,17 @@
 #include "mem.h"
 
 /*===   Version   ===*/
-unsigned INIT FSE_versionNumber(void) { return FSE_VERSION_NUMBER; }
+unsigned __init FSE_versionNumber(void) { return FSE_VERSION_NUMBER; }
 
 /*===   Error Management   ===*/
-unsigned INIT FSE_isError(size_t code) { return ERR_isError(code); }
+unsigned __init FSE_isError(size_t code) { return ERR_isError(code); }
 
-unsigned INIT HUF_isError(size_t code) { return ERR_isError(code); }
+unsigned __init HUF_isError(size_t code) { return ERR_isError(code); }
 
 /*-**************************************************************
 *  FSE NCount encoding-decoding
 ****************************************************************/
-size_t INIT FSE_readNCount(short *normalizedCounter, unsigned *maxSVPtr, unsigned *tableLogPtr, const void *headerBuffer, size_t hbSize)
+size_t __init FSE_readNCount(short *normalizedCounter, unsigned *maxSVPtr, unsigned *tableLogPtr, const void *headerBuffer, size_t hbSize)
 {
 	const BYTE *const istart = (const BYTE *)headerBuffer;
 	const BYTE *const iend = istart + hbSize;
@@ -164,7 +164,7 @@ size_t INIT FSE_readNCount(short *normal
 	@return : size read from `src` , or an error Code .
 	Note : Needed by HUF_readCTable() and HUF_readDTableX?() .
 */
-size_t INIT HUF_readStats_wksp(BYTE *huffWeight, size_t hwSize, U32 *rankStats, U32 *nbSymbolsPtr, U32 *tableLogPtr, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_readStats_wksp(BYTE *huffWeight, size_t hwSize, U32 *rankStats, U32 *nbSymbolsPtr, U32 *tableLogPtr, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
 {
 	U32 weightTotal;
 	const BYTE *ip = (const BYTE *)src;
--- a/xen/common/zstd/error_private.h
+++ b/xen/common/zstd/error_private.h
@@ -67,9 +67,9 @@ typedef ZSTD_ErrorCode ERR_enum;
 ******************************************/
 #define ERROR(name) ((size_t)-PREFIX(name))
 
-ERR_STATIC unsigned INIT ERR_isError(size_t code) { return (code > ERROR(maxCode)); }
+ERR_STATIC unsigned __init ERR_isError(size_t code) { return (code > ERROR(maxCode)); }
 
-ERR_STATIC ERR_enum INIT ERR_getErrorCode(size_t code)
+ERR_STATIC ERR_enum __init ERR_getErrorCode(size_t code)
 {
 	if (!ERR_isError(code))
 		return (ERR_enum)0;
@@ -82,7 +82,7 @@ ERR_STATIC ERR_enum INIT ERR_getErrorCod
  *
  * Return: Non-zero iff the code is an error.
  */
-static __attribute__((unused)) unsigned int INIT ZSTD_isError(size_t code)
+static __attribute__((unused)) unsigned int __init ZSTD_isError(size_t code)
 {
 	return code > (size_t)-ZSTD_error_maxCode;
 }
@@ -94,7 +94,7 @@ static __attribute__((unused)) unsigned
  * Return:          The ZSTD_ErrorCode corresponding to the functionResult or 0
  *                  if the functionResult isn't an error.
  */
-static __attribute__((unused)) ZSTD_ErrorCode INIT ZSTD_getErrorCode(
+static __attribute__((unused)) ZSTD_ErrorCode __init ZSTD_getErrorCode(
 	size_t functionResult)
 {
 	if (!ZSTD_isError(functionResult))
--- a/xen/common/zstd/fse_decompress.c
+++ b/xen/common/zstd/fse_decompress.c
@@ -82,7 +82,7 @@
 
 /* Function templates */
 
-size_t INIT FSE_buildDTable_wksp(FSE_DTable *dt, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void *workspace, size_t workspaceSize)
+size_t __init FSE_buildDTable_wksp(FSE_DTable *dt, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void *workspace, size_t workspaceSize)
 {
 	void *const tdPtr = dt + 1; /* because *dt is unsigned, 32-bits aligned on 32-bits */
 	FSE_DECODE_TYPE *const tableDecode = (FSE_DECODE_TYPE *)(tdPtr);
@@ -157,7 +157,7 @@ size_t INIT FSE_buildDTable_wksp(FSE_DTa
 /*-*******************************************************
 *  Decompression (Byte symbols)
 *********************************************************/
-size_t INIT FSE_buildDTable_rle(FSE_DTable *dt, BYTE symbolValue)
+size_t __init FSE_buildDTable_rle(FSE_DTable *dt, BYTE symbolValue)
 {
 	void *ptr = dt;
 	FSE_DTableHeader *const DTableH = (FSE_DTableHeader *)ptr;
@@ -174,7 +174,7 @@ size_t INIT FSE_buildDTable_rle(FSE_DTab
 	return 0;
 }
 
-size_t INIT FSE_buildDTable_raw(FSE_DTable *dt, unsigned nbBits)
+size_t __init FSE_buildDTable_raw(FSE_DTable *dt, unsigned nbBits)
 {
 	void *ptr = dt;
 	FSE_DTableHeader *const DTableH = (FSE_DTableHeader *)ptr;
@@ -269,7 +269,7 @@ FORCE_INLINE size_t FSE_decompress_using
 	return op - ostart;
 }
 
-size_t INIT FSE_decompress_usingDTable(void *dst, size_t originalSize, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt)
+size_t __init FSE_decompress_usingDTable(void *dst, size_t originalSize, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt)
 {
 	const void *ptr = dt;
 	const FSE_DTableHeader *DTableH = (const FSE_DTableHeader *)ptr;
@@ -281,7 +281,7 @@ size_t INIT FSE_decompress_usingDTable(v
 	return FSE_decompress_usingDTable_generic(dst, originalSize, cSrc, cSrcSize, dt, 0);
 }
 
-size_t INIT FSE_decompress_wksp(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, unsigned maxLog, void *workspace, size_t workspaceSize)
+size_t __init FSE_decompress_wksp(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, unsigned maxLog, void *workspace, size_t workspaceSize)
 {
 	const BYTE *const istart = (const BYTE *)cSrc;
 	const BYTE *ip = istart;
--- a/xen/common/zstd/huf_decompress.c
+++ b/xen/common/zstd/huf_decompress.c
@@ -68,7 +68,7 @@ typedef struct {
 	BYTE reserved;
 } DTableDesc;
 
-static DTableDesc INIT HUF_getDTableDesc(const HUF_DTable *table)
+static DTableDesc __init HUF_getDTableDesc(const HUF_DTable *table)
 {
 	DTableDesc dtd;
 	memcpy(&dtd, table, sizeof(dtd));
@@ -84,7 +84,7 @@ typedef struct {
 	BYTE nbBits;
 } HUF_DEltX2; /* single-symbol decoding */
 
-size_t INIT HUF_readDTableX2_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_readDTableX2_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
 {
 	U32 tableLog = 0;
 	U32 nbSymbols = 0;
@@ -152,7 +152,7 @@ size_t INIT HUF_readDTableX2_wksp(HUF_DT
 	return iSize;
 }
 
-static BYTE INIT HUF_decodeSymbolX2(BIT_DStream_t *Dstream, const HUF_DEltX2 *dt, const U32 dtLog)
+static BYTE __init HUF_decodeSymbolX2(BIT_DStream_t *Dstream, const HUF_DEltX2 *dt, const U32 dtLog)
 {
 	size_t const val = BIT_lookBitsFast(Dstream, dtLog); /* note : dtLog >= 1 */
 	BYTE const c = dt[val].byte;
@@ -193,7 +193,7 @@ FORCE_INLINE size_t HUF_decodeStreamX2(B
 	return pEnd - pStart;
 }
 
-static size_t INIT HUF_decompress1X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+static size_t __init HUF_decompress1X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	BYTE *op = (BYTE *)dst;
 	BYTE *const oend = op + dstSize;
@@ -218,7 +218,7 @@ static size_t INIT HUF_decompress1X2_usi
 	return dstSize;
 }
 
-size_t INIT HUF_decompress1X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+size_t __init HUF_decompress1X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
 	if (dtd.tableType != 0)
@@ -226,7 +226,7 @@ size_t INIT HUF_decompress1X2_usingDTabl
 	return HUF_decompress1X2_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
 }
 
-size_t INIT HUF_decompress1X2_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_decompress1X2_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	const BYTE *ip = (const BYTE *)cSrc;
 
@@ -241,7 +241,7 @@ size_t INIT HUF_decompress1X2_DCtx_wksp(
 	return HUF_decompress1X2_usingDTable_internal(dst, dstSize, ip, cSrcSize, DCtx);
 }
 
-static size_t INIT HUF_decompress4X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+static size_t __init HUF_decompress4X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	/* Check */
 	if (cSrcSize < 10)
@@ -349,7 +349,7 @@ static size_t INIT HUF_decompress4X2_usi
 	}
 }
 
-size_t INIT HUF_decompress4X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+size_t __init HUF_decompress4X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
 	if (dtd.tableType != 0)
@@ -357,7 +357,7 @@ size_t INIT HUF_decompress4X2_usingDTabl
 	return HUF_decompress4X2_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
 }
 
-size_t INIT HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	const BYTE *ip = (const BYTE *)cSrc;
 
@@ -388,7 +388,7 @@ typedef struct {
 
 /* HUF_fillDTableX4Level2() :
  * `rankValOrigin` must be a table of at least (HUF_TABLELOG_MAX + 1) U32 */
-static void INIT HUF_fillDTableX4Level2(HUF_DEltX4 *DTable, U32 sizeLog, const U32 consumed, const U32 *rankValOrigin, const int minWeight,
+static void __init HUF_fillDTableX4Level2(HUF_DEltX4 *DTable, U32 sizeLog, const U32 consumed, const U32 *rankValOrigin, const int minWeight,
 					const sortedSymbol_t *sortedSymbols, const U32 sortedListSize, U32 nbBitsBaseline, U16 baseSeq)
 {
 	HUF_DEltX4 DElt;
@@ -434,7 +434,7 @@ static void INIT HUF_fillDTableX4Level2(
 typedef U32 rankVal_t[HUF_TABLELOG_MAX][HUF_TABLELOG_MAX + 1];
 typedef U32 rankValCol_t[HUF_TABLELOG_MAX + 1];
 
-static void INIT HUF_fillDTableX4(HUF_DEltX4 *DTable, const U32 targetLog, const sortedSymbol_t *sortedList,
+static void __init HUF_fillDTableX4(HUF_DEltX4 *DTable, const U32 targetLog, const sortedSymbol_t *sortedList,
 				  const U32 sortedListSize, const U32 *rankStart,
 			          rankVal_t rankValOrigin, const U32 maxWeight, const U32 nbBitsBaseline)
 {
@@ -477,7 +477,7 @@ static void INIT HUF_fillDTableX4(HUF_DE
 	}
 }
 
-size_t INIT HUF_readDTableX4_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_readDTableX4_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
 {
 	U32 tableLog, maxW, sizeOfSort, nbSymbols;
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
@@ -590,7 +590,7 @@ size_t INIT HUF_readDTableX4_wksp(HUF_DT
 	return iSize;
 }
 
-static U32 INIT HUF_decodeSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
+static U32 __init HUF_decodeSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
 {
 	size_t const val = BIT_lookBitsFast(DStream, dtLog); /* note : dtLog >= 1 */
 	memcpy(op, dt + val, 2);
@@ -598,7 +598,7 @@ static U32 INIT HUF_decodeSymbolX4(void
 	return dt[val].length;
 }
 
-static U32 INIT HUF_decodeLastSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
+static U32 __init HUF_decodeLastSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
 {
 	size_t const val = BIT_lookBitsFast(DStream, dtLog); /* note : dtLog >= 1 */
 	memcpy(op, dt + val, 1);
@@ -650,7 +650,7 @@ FORCE_INLINE size_t HUF_decodeStreamX4(B
 	return p - pStart;
 }
 
-static size_t INIT HUF_decompress1X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+static size_t __init HUF_decompress1X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	BIT_DStream_t bitD;
 
@@ -679,7 +679,7 @@ static size_t INIT HUF_decompress1X4_usi
 	return dstSize;
 }
 
-size_t INIT HUF_decompress1X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+size_t __init HUF_decompress1X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
 	if (dtd.tableType != 1)
@@ -687,7 +687,7 @@ size_t INIT HUF_decompress1X4_usingDTabl
 	return HUF_decompress1X4_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
 }
 
-size_t INIT HUF_decompress1X4_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_decompress1X4_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	const BYTE *ip = (const BYTE *)cSrc;
 
@@ -702,7 +702,7 @@ size_t INIT HUF_decompress1X4_DCtx_wksp(
 	return HUF_decompress1X4_usingDTable_internal(dst, dstSize, ip, cSrcSize, DCtx);
 }
 
-static size_t INIT HUF_decompress4X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+static size_t __init HUF_decompress4X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	if (cSrcSize < 10)
 		return ERROR(corruption_detected); /* strict minimum : jump table + 1 byte per stream */
@@ -812,7 +812,7 @@ static size_t INIT HUF_decompress4X4_usi
 	}
 }
 
-size_t INIT HUF_decompress4X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+size_t __init HUF_decompress4X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
 	if (dtd.tableType != 1)
@@ -820,7 +820,7 @@ size_t INIT HUF_decompress4X4_usingDTabl
 	return HUF_decompress4X4_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
 }
 
-size_t INIT HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	const BYTE *ip = (const BYTE *)cSrc;
 
@@ -839,14 +839,14 @@ size_t INIT HUF_decompress4X4_DCtx_wksp(
 /* Generic decompression selector */
 /* ********************************/
 
-size_t INIT HUF_decompress1X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+size_t __init HUF_decompress1X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc const dtd = HUF_getDTableDesc(DTable);
 	return dtd.tableType ? HUF_decompress1X4_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable)
 			     : HUF_decompress1X2_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable);
 }
 
-size_t INIT HUF_decompress4X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
+size_t __init HUF_decompress4X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc const dtd = HUF_getDTableDesc(DTable);
 	return dtd.tableType ? HUF_decompress4X4_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable)
@@ -882,7 +882,7 @@ static const algo_time_t algoTime[16 /*
 *   based on a set of pre-determined metrics.
 *   @return : 0==HUF_decompress4X2, 1==HUF_decompress4X4 .
 *   Assumption : 0 < cSrcSize < dstSize <= 128 KB */
-U32 INIT HUF_selectDecoder(size_t dstSize, size_t cSrcSize)
+U32 __init HUF_selectDecoder(size_t dstSize, size_t cSrcSize)
 {
 	/* decoder timing evaluation */
 	U32 const Q = (U32)(cSrcSize * 16 / dstSize); /* Q < 16 since dstSize > cSrcSize */
@@ -896,7 +896,7 @@ U32 INIT HUF_selectDecoder(size_t dstSiz
 
 typedef size_t (*decompressionAlgo)(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize);
 
-size_t INIT HUF_decompress4X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_decompress4X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	/* validation checks */
 	if (dstSize == 0)
@@ -919,7 +919,7 @@ size_t INIT HUF_decompress4X_DCtx_wksp(H
 	}
 }
 
-size_t INIT HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	/* validation checks */
 	if (dstSize == 0)
@@ -934,7 +934,7 @@ size_t INIT HUF_decompress4X_hufOnly_wks
 	}
 }
 
-size_t INIT HUF_decompress1X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
+size_t __init HUF_decompress1X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	/* validation checks */
 	if (dstSize == 0)
--- a/xen/common/zstd/zstd_common.c
+++ b/xen/common/zstd/zstd_common.c
@@ -31,7 +31,7 @@
 		(stack)->ptr <= (stack)->end ? ptr : NULL;      \
 	})
 
-ZSTD_customMem INIT ZSTD_initStack(void *workspace, size_t workspaceSize)
+ZSTD_customMem __init ZSTD_initStack(void *workspace, size_t workspaceSize)
 {
 	ZSTD_customMem stackMem = {ZSTD_stackAlloc, ZSTD_stackFree, workspace};
 	ZSTD_stack *stack = (ZSTD_stack *)workspace;
@@ -47,27 +47,27 @@ ZSTD_customMem INIT ZSTD_initStack(void
 	return stackMem;
 }
 
-void *INIT ZSTD_stackAllocAll(void *opaque, size_t *size)
+void *__init ZSTD_stackAllocAll(void *opaque, size_t *size)
 {
 	ZSTD_stack *stack = (ZSTD_stack *)opaque;
 	*size = (BYTE const *)stack->end - (BYTE *)ZSTD_PTR_ALIGN(stack->ptr);
 	return stack_push(stack, *size);
 }
 
-void *INIT ZSTD_stackAlloc(void *opaque, size_t size)
+void *__init ZSTD_stackAlloc(void *opaque, size_t size)
 {
 	ZSTD_stack *stack = (ZSTD_stack *)opaque;
 	return stack_push(stack, size);
 }
-void INIT ZSTD_stackFree(void *opaque, void *address)
+void __init ZSTD_stackFree(void *opaque, void *address)
 {
 	(void)opaque;
 	(void)address;
 }
 
-void *INIT ZSTD_malloc(size_t size, ZSTD_customMem customMem) { return customMem.customAlloc(customMem.opaque, size); }
+void *__init ZSTD_malloc(size_t size, ZSTD_customMem customMem) { return customMem.customAlloc(customMem.opaque, size); }
 
-void INIT ZSTD_free(void *ptr, ZSTD_customMem customMem)
+void __init ZSTD_free(void *ptr, ZSTD_customMem customMem)
 {
 	if (ptr != NULL)
 		customMem.customFree(customMem.opaque, ptr);
--- a/xen/common/zstd/zstd_internal.h
+++ b/xen/common/zstd/zstd_internal.h
@@ -21,7 +21,7 @@
 *  Compiler specifics
 *********************************************************/
 #define FORCE_INLINE static always_inline
-#define FORCE_NOINLINE static noinline INIT
+#define FORCE_NOINLINE static noinline __init
 
 /*-*************************************
 *  Dependencies



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:21:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:21:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114344.217915 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9zN-00006S-8O; Wed, 21 Apr 2021 10:21:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114344.217915; Wed, 21 Apr 2021 10: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 1lZ9zN-00006L-5I; Wed, 21 Apr 2021 10:21:45 +0000
Received: by outflank-mailman (input) for mailman id 114344;
 Wed, 21 Apr 2021 10:21:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZ9zM-000063-Ir
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:21:44 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7a8b6d2c-1446-4b19-b1f2-fb7686616168;
 Wed, 21 Apr 2021 10:21: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: 7a8b6d2c-1446-4b19-b1f2-fb7686616168
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619000503;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=MuoVev2JJJU4OQ4v6bd6d2fVjuhXdEQu4xIWmXrMcpI=;
  b=ZhKrk799/Nu7Ybr1qokSRh31JChcujag/IQz78IzxsskY+WuvwrZ6MyL
   bbpHj9xLmV2i+J4wAfNQVGSKBDeuNWjXtvhCHNuaNAHM6wBoq6Y3Yz+9B
   YnkzRTQ3VcJEYPFJINCyu8ODo9Nd5AsmOfqt3TKCVQLpDLSY5RIjV111F
   M=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: rw2I59pT60yxRXBam+fcp5kHSqxJ2kotdSS7BMdTG60zwlr1wjCcySw0AtsoXRfkIY1EfaDEd5
 P/SaYEHlWnHUFU0HrJG9fjSK51l8/WR76w8aekG0iuWJkF07RhXBU4hY2GVjHwKNL7lIfxFBUu
 ztTFqYtFpqLLAjlN68bEEu0s5QBshnUk/a/7v3T2gQkweXKYLXFjdIURjBALrUhvKwhfI+5SgC
 O0duz0YlA0XXbG0PMCtMMil2jy+YSOwJwMfzZorIpjJ0PWx87khsMsW0WaM0JhcTr4DPZjUwXY
 w8g=
X-SBRS: 5.2
X-MesageID: 42067297
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:M4PzDKuYl+XK4D013yRPYWU47skCrIMji2hD6mlwRA09T+Wxi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybde544NMbC+GDT3oWfAFvAG0aLO4R3FXxf/+OlUyL
 t6f8FFYuHYIFBmga/BjzWQPM0nxLC8npyAocf74zNTQRpxa6dmhj0JaDqzNkFtXgFJCd4YOf
 OnhvZvnDardXQJYsnTPBBsM9TrnNHXiIngJScPGh9P0mKzpAm14733GQXw5GZ8bxpzx94ZkF
 TtokjCyYiI99q6zRLd0GG71eUtpPLRjuFtKebJpswcKjDHghulaoJ7S9S5zU0IidDq0nkGup
 3hpAohItRS5hrqDx2IiCqo4SbM+nIP7GLv0lCRi3eLm72HeBsKT/BvqKgcVzmx0TtFgPhMlJ
 hl8kjcir9sSTTHpyj578igbWATqmOE5UAMvMRWs2ZSSuIlGdhshL1axmx5OrEaEhn37Yg2ed
 Med/301bJtfVSWY2uxhBgI/PWcGnA6HhKxSkMfoMCi0z9PgHBjz0cDrfZv50s9yA==
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="42067297"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TRVWbylQOeqngaKcN4hKm6D6nQw99MGUjlndonjBXsGJ/oX/f9K+YagvxOPZDceMsBh5iw+e98PC8xrnEK7bfTNVqgVvOc2G72qBaEPsrPXKmTZSeex5BfpSJb1Rnqv91vGchASyPVWgKu9f4ZApmfWbkXkB2eBrCBqzuVN6L2FwGRRPG5OAZ2EFGs3P8iz51PG+2uumHcJooIPYJXKN0ygpKr0hI/op53Lt3XtygVYyUi0Qj/mJibnYvTKdgawVW1Dms1UqSy3S9S4QJl24oUUiAt6vXqCnfsr0F4W2gRaHzQILq4K3iSZcKGhSAT1QYntZrGWgAIHdyN31IdqdoA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MAFnNU0wOcYuQG/+1kQBqD8XXC+QttCAyTwwuwQ/lNQ=;
 b=fRAipm8a4jeisT8l6tV7dk+vi60LZ9zt4NolZd9+kTKzpl0Dzk2h2HOquKVGqYdELOwJCuNCavtU62XXOWqoFN0tcnEoyx/N7nSa/kx1rh4P1hRVFCU/w+YCLNMi+9ZpStjQXGGe2OBI7KaGWI8avggpdQcHd8sRUuvAWxgM90ItvKzZ9NtERCtSzAV4SDz/M+wx48kvnCtGHR0xbjpv3iBjPXnLRThMD0X+bN5zhJkJz33OvjhIM9W5h7fYaa5sM9om1YCue1gMpUhJSfvt1CD9ewIBYaE7FVRtONku/Xeu1oLkSMmtCaWI3HVkKGxDNI/Cz9V+t4aCceRHU+L9ZQ==
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=MAFnNU0wOcYuQG/+1kQBqD8XXC+QttCAyTwwuwQ/lNQ=;
 b=mwg3efocyZdl3/6eDV40BjHP+3voqLDoX5k/Ouahal5My6pkq5KoEbd+9krbkNf4PY2FubS8l+t4iyJT2dSkSMv+X5/PQh8LNJ/C5Zdvfp4M740k+vUgeKCNq1udBEqQPW3xIQ4FlNSyfoQ64SYVnQSZRXsFyoPlGG2uctogsrI=
Date: Wed, 21 Apr 2021 12:21:33 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 6/8] x86/EFI: avoid use of GNU ld's
 --disable-reloc-section when possible
Message-ID: <YH/8rb0aENMqOLAn@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <ff15338a-ca10-ff38-3c2a-459303ce9d68@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <ff15338a-ca10-ff38-3c2a-459303ce9d68@suse.com>
X-ClientProxiedBy: MR2P264CA0143.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::35) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 49e6a6d7-a649-4dfa-8611-08d904af3fd8
X-MS-TrafficTypeDiagnostic: DM4PR03MB6096:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB609607289172949F3634ABBA8F479@DM4PR03MB6096.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 6A9Lqv5ig2Fjpfin/fXJojLq2G0vSPK+agVDtEBySlLP2tQT5RY0mlma0qW90pjKhoTof0YavwkZjCrBIOPUqpH2VdNONZS4rRuZJfq1OVfeDROm6hHscBBqNfnBczNNvyBfVpjR5k7WuB2+a3FDEdBejpMt3PpfS2MKK0TkLftDQiE+sP/7hMbTgk2yot8ZWrWJhGFP3r+ml6Gp20G2a8AJGQ50axcgrcl/GXZnzbha8abeZzXjEMhjLwxpU6QkfQzA4zMRM+iIydfObQ7A431Ip2kEjmIxMUSHnzYmDyovVyW7FEvOYZ3gVoB09mcuOHGiHw4sQYSBdsrCehk5KiFU8kJhewyQRItdt9XF0efgGK54tH7FhHztGCfwyxOCt5DXU0BuIxKdBZhbLagUkWuBotYbUZEbU5ki2YxkF9cjsnrvjEPmW1VPtqERl4jt/Kv7d0cKzaoRNDcckiCT9rvkmRqFwXXTNTo9+W4R1vvTvK0C7hZc1tJEFc6or5bQC9oaF5NDlbneOZTDOA2StBLbr/J6PUzEplzVPNq4K9adTj6KAqO16yZqv/VmaVgEcL2/rfWSqdVO2QVIWA9781ucFvJv56Sw8FrXr1bNMJQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(366004)(376002)(39860400002)(396003)(136003)(54906003)(5660300002)(6666004)(316002)(6496006)(9686003)(6916009)(6486002)(478600001)(8936002)(8676002)(26005)(86362001)(16526019)(4326008)(33716001)(38100700002)(186003)(66476007)(66556008)(956004)(85182001)(66946007)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?OHViYjdKNHN0OWdoR3dDUE84N3RpRGkxaXFGRWFxaTFYMW1BMHUxWGRXNXFp?=
 =?utf-8?B?R2kzU3RpbzV5UXN6dXRzYnpsWWNHNXptNUVBVjAzZGxIMklnQXJ2N1VHTWxZ?=
 =?utf-8?B?aEFUbTUwSkFQc28zVnlqQm9KOHlwOHY0TWQzN1JtT1ZnNktEZGxlTytUNzZ1?=
 =?utf-8?B?dVlqMlhaZGNKR2ZQQzRWT3RpTGhXL0FlbUcrVTZkUldJSWwvV00yTjIySlNZ?=
 =?utf-8?B?NHQzRXlwOEZVbHd1QmtCdFc2REVUdlpkYnE0L2tzSU5yQ0tiL1MxOVVna05L?=
 =?utf-8?B?dHkzV0grdnJHWXh3dUp2Nldmd2NYNTRWM3Y1bUxmRG9USEJEWGlGOTNKZ2pl?=
 =?utf-8?B?Wlo1cHFlQ1lXWWlZb0IyV1d5M3E2b2QzaUpIY3N2UWVLb2oyZWQ4dzBaeS9C?=
 =?utf-8?B?eFU2dkFva0tmWXA5eVJxcnUvZitBRUpKYVdTc3B0WGdnQTZqN0pST2Nxanp6?=
 =?utf-8?B?WlZOZU9pUWhQcllXTWFmNHFocnQ2SkV5dlptTyt6M2tRT2xac1Zvb0tVZ2ti?=
 =?utf-8?B?NGFzeEdHMWRGamlWelhjeEg1RC80Q0g4RGZqQ2FSMUZTR09xaEpUenBFTzIx?=
 =?utf-8?B?UHpDak9tOW9pSUUxeWJGN2NzWWIzM05DOU5RSUlBeFZqT0l4ZjMzaStqT3dx?=
 =?utf-8?B?cjJWQXRRRFBCS3I5Y0c5Vm1GOTNoQk5DZkQxMnBWNjI5OUxBcVl1KzkxVnF0?=
 =?utf-8?B?dnY3UmRvNEhKZWFjRGcxV0NmWUlROW9RL0VoVHR2aHBDd1EvWW0yeUZJT3hU?=
 =?utf-8?B?MXRjZEdudGU0ME1CczNaZFRiZE5nMDlvZGs1MThFcDFUSFBacm8xaWg4bm1N?=
 =?utf-8?B?N244eGFhV1E3TmZQdFEvZUpoRUlGcnhzb2JwbERlNDN3WGhFOUtnWHJkY2lQ?=
 =?utf-8?B?VG4xb0JyUXJnRVlYeWQ0MVBaMkdNSitvbXlSbHlhVzZNQmRBczZwMnRGektF?=
 =?utf-8?B?YVpBVlNQNThjWnYxYWpvdW0rNFo3T3Y5WHhpQUVPVFZFK0h5Nzc3MEgyUlps?=
 =?utf-8?B?czU1YmhTQkpwTW9TZ3dKSUJoTjU3QmYxUzBLTVRSbVlVZ2F6MVptbk9zY0Z6?=
 =?utf-8?B?dktpbVVzaTZPUEFiNUhYbE9TVjgyOXB3QnNRQXRXOTluK3E5bGx5MGlpT3BY?=
 =?utf-8?B?dC9xQXMxRmRQSjRud0t3SWVQa084Q3V1VzRaVkNlWmlpVVZRRnJzRHlTcUZU?=
 =?utf-8?B?cVFZTDQzd2pRRG9ZQVhSWTdVaUZXbTJRbzJzN1J2Y2hlTmVxdWQ4ZHh4Wkl4?=
 =?utf-8?B?anUxTjJUYkQ5c2xJSUtLR1JnWm9OZWFWQTQ4WHlXSHJBNUNyazBMQmxHdWxu?=
 =?utf-8?B?V0F1SEhRVHBBNmhHZndpVWhJaHYvdlUxc1AxdUFGdlEwTlk4MXpoaXM0aHAx?=
 =?utf-8?B?Vmt5ditHMTZiMzh1N2l4U0dXbUZmQ1U3Y3FpM2VBbUlLWThsY29NTVJaelJD?=
 =?utf-8?B?MTQ0bzB4SzNBOU1aUTdHK0NQa1FZR0ZrQVZsSDVacWJJMHFveWVvN2d6NGxM?=
 =?utf-8?B?RWIva2VWek5OeEJnQzA0S2MzM2FpTjJhU2VtSHV3K3d6bmgvVFZyQm1yNTk0?=
 =?utf-8?B?TWZER1d0b2hmZGc5TG5zd2dZcmk5d3hiYlhKczMwL0FCbHV4MmxPL290SjlF?=
 =?utf-8?B?cURLUWdHSjF5cTZtWEhlQmhuTWJyQU5CcW16TlJsOStEOGk1a2NyUmJNMkFU?=
 =?utf-8?B?YnBSQUNMengxVi94YWRoQmVGN1lvcFNsTjNCMnZOOXhEWnA2R1VFd3BzWnlh?=
 =?utf-8?Q?Hk/IIgk+ndn07gkEfx3jijQWMEFljx5kmpRCYhZ?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 49e6a6d7-a649-4dfa-8611-08d904af3fd8
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 10:21:38.7613
 (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: PnlcEW8Y+IYatcrYIeoeXlOf6Ag6FmrxfQoQ8yUIU7k7JpBPk/02CHi1XIZfP031d7mQXAonkJlyM5OJG2jTjw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6096
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:46:44AM +0200, Jan Beulich wrote:
> As of commit 6fa7408d72b3 ("ld: don't generate base relocations in PE
> output for absolute symbols") I'm feeling sufficiently confident in GNU
> ld to use its logic for generating base relocations, which was enabled
> for executables at some point last year (prior to that this would have
> got done only for DLLs).
> 
> GNU ld, seeing the original relocations coming from the ELF object files,
> generates different relocation types for our page tables (64-bit ones,
> while mkreloc produces 32-bit ones). This requires also permitting and
> handling that type in efi_arch_relocate_image().
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> --- a/xen/arch/x86/Makefile
> +++ b/xen/arch/x86/Makefile
> @@ -120,18 +120,37 @@ $(TARGET): $(TARGET)-syms $(efi-y) boot/
>  	mv $(TMP) $(TARGET)
>  
>  ifneq ($(efi-y),)
> +
>  # Check if the compiler supports the MS ABI.
>  export XEN_BUILD_EFI := $(shell $(CC) $(XEN_CFLAGS) -c efi/check.c -o efi/check.o 2>/dev/null && echo y)
> +CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
> +
>  # Check if the linker supports PE.
>  EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10 --strip-debug
>  XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(LD) $(EFI_LDFLAGS) -o efi/check.efi efi/check.o 2>/dev/null && echo y))
> -CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
> -# Check if the linker produces fixups in PE by default (we need to disable it doing so for now).
> -XEN_NO_PE_FIXUPS := $(if $(XEN_BUILD_EFI), \
> -                         $(shell $(LD) $(EFI_LDFLAGS) --disable-reloc-section -o efi/check.efi efi/check.o 2>/dev/null && \
> -                                 echo --disable-reloc-section))
> +
> +ifeq ($(XEN_BUILD_PE),y)
> +
> +# Check if the linker produces fixups in PE by default
> +nr-fixups := $(shell $(OBJDUMP) -p efi/check.efi | grep '^[[:blank:]]*reloc[[:blank:]]*[0-9][[:blank:]].*DIR64$$' | wc -l)
> +ifeq ($(nr-fixups),2)
> +MKRELOC := :
> +relocs-dummy :=
> +else
> +MKRELOC := efi/mkreloc
> +relocs-dummy := efi/relocs-dummy.o
> +# If the linker produced fixups but not precisely two of them, we need to
> +# disable it doing so.  But if it didn't produce any fixups, it also wouldn't
> +# recognize the option.
> +ifneq ($(nr-fixups),0)
> +EFI_LDFLAGS += --disable-reloc-section
> +endif
>  endif
>  
> +endif # $(XEN_BUILD_PE)
> +
> +endif # $(efi-y)
> +
>  ALL_OBJS := $(BASEDIR)/arch/x86/boot/built_in.o $(BASEDIR)/arch/x86/efi/built_in.o $(ALL_OBJS)
>  
>  ifeq ($(CONFIG_LTO),y)
> @@ -175,7 +194,7 @@ note.o: $(TARGET)-syms
>  		--rename-section=.data=.note.gnu.build-id -S $@.bin $@
>  	rm -f $@.bin
>  
> -EFI_LDFLAGS += --image-base=$(1) --stack=0,0 --heap=0,0 $(XEN_NO_PE_FIXUPS)
> +EFI_LDFLAGS += --image-base=$(1) --stack=0,0 --heap=0,0
>  EFI_LDFLAGS += --section-alignment=0x200000 --file-alignment=0x20
>  EFI_LDFLAGS += --major-image-version=$(XEN_VERSION)
>  EFI_LDFLAGS += --minor-image-version=$(XEN_SUBVERSION)
> @@ -189,7 +208,11 @@ EFI_LDFLAGS += --no-insert-timestamp
>  endif
>  
>  $(TARGET).efi: VIRT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A VIRT_START$$,,p')
> +ifeq ($(MKRELOC),:)
> +$(TARGET).efi: ALT_BASE :=
> +else
>  $(TARGET).efi: ALT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A ALT_START$$,,p')

Could you maybe check whether $(relocs-dummy) is set as the condition
here and use it here instead of efi/relocs-dummy.o?

> +endif
>  
>  ifneq ($(build_id_linker),)
>  ifeq ($(call ld-ver-build-id,$(LD) $(filter -m%,$(EFI_LDFLAGS))),y)
> @@ -210,16 +233,16 @@ note_file_option ?= $(note_file)
>  ifeq ($(XEN_BUILD_PE),y)
>  $(TARGET).efi: prelink.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc

Do you need to also replace the target prerequisite to use $(relocs-dummy)?

>  	$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
> -	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< efi/relocs-dummy.o \
> +	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< $(relocs-dummy) \
>  	                $(BASEDIR)/common/symbols-dummy.o $(note_file_option) -o $(@D)/.$(@F).$(base).0 &&) :
> -	efi/mkreloc $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).0) >$(@D)/.$(@F).0r.S
> +	$(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).0) >$(@D)/.$(@F).0r.S
>  	$(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).0 \
>  		| $(BASEDIR)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).0s.S
>  	$(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o
>  	$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
>  	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< \
>  	                $(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o $(note_file_option) -o $(@D)/.$(@F).$(base).1 &&) :
> -	efi/mkreloc $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).1) >$(@D)/.$(@F).1r.S
> +	$(MKRELOC) $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).1) >$(@D)/.$(@F).1r.S
>  	$(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).1 \
>  		| $(BASEDIR)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).1s.S
>  	$(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).1r.o $(@D)/.$(@F).1s.o
> --- a/xen/arch/x86/efi/check.c
> +++ b/xen/arch/x86/efi/check.c
> @@ -2,3 +2,17 @@ int __attribute__((__ms_abi__)) test(int
>  {
>      return i;
>  }
> +
> +/*
> + * Populate an array with "addresses" of relocatable and absolute values.
> + * This is to probe ld for (a) emitting base relocations at all and (b) not
> + * emitting base relocations for absolute symbols.
> + */
> +extern const unsigned char __image_base__[], __file_alignment__[],
> +                           __section_alignment__[];
> +const void *const data[] = {
> +    __image_base__,
> +    __file_alignment__,
> +    __section_alignment__,
> +    data,
> +};
> --- a/xen/arch/x86/efi/efi-boot.h
> +++ b/xen/arch/x86/efi/efi-boot.h
> @@ -86,10 +86,12 @@ static void __init efi_arch_relocate_ima
>                  }
>                  break;
>              case PE_BASE_RELOC_DIR64:
> -                if ( in_page_tables(addr) )
> -                    blexit(L"Unexpected relocation type");
>                  if ( delta )
> +                {
>                      *(u64 *)addr += delta;
> +                    if ( in_page_tables(addr) )
> +                        *(u64 *)addr += xen_phys_start;

Doesn't the in_page_tables check and modification also apply when
delta == 0?

Maybe you could just break on !delta to reduce indentation if none of
this applies then?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:22:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:22:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114350.217928 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9zf-0000Ee-Ie; Wed, 21 Apr 2021 10:22:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114350.217928; Wed, 21 Apr 2021 10:22:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZ9zf-0000EX-F6; Wed, 21 Apr 2021 10:22:03 +0000
Received: by outflank-mailman (input) for mailman id 114350;
 Wed, 21 Apr 2021 10:22:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZ9zd-0000CV-Tw
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:22:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 29f292c2-12b8-4b73-a043-96f0b458684c;
 Wed, 21 Apr 2021 10:22:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7D7D2B2D6;
 Wed, 21 Apr 2021 10:21: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: 29f292c2-12b8-4b73-a043-96f0b458684c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619000519; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5M9d5K4NLQWhUZlujnEzlcEHndQ3mZdWLs+EcPv7cUs=;
	b=LiTZgKOV0cGIYWbwtAyYwhRHVlHGf0zNvaQx+eCjdjPRthTRpsL3ZfRvEPyXYOFb2mg0aS
	seCBVKOA5k8RbN2qS2AxzrACD2V6H27a2dTKv0Z4jR8TxfO7ZgwZdijWiCmkje8silTwml
	uvSGUN8w1EOm+EN7c/xZyaB2Jy0XF6s=
Subject: [PATCH v4 2/3] xen/decompress: drop STATIC and INIT
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Message-ID: <a5737138-b112-0b4a-e79a-4fc49e91f195@suse.com>
Date: Wed, 21 Apr 2021 12:21:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Except for one last instance, all users have been removed in earlier
changes.

Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
v3: New.

--- a/xen/arch/arm/efi/efi-dom0.c
+++ b/xen/arch/arm/efi/efi-dom0.c
@@ -28,7 +28,7 @@
 #include <asm/setup.h>
 #include <asm/acpi.h>
 #include "../../../common/decompress.h"
-#define XZ_EXTERN STATIC
+#define XZ_EXTERN static
 #include "../../../common/xz/crc32.c"
 
 /* Constant to indicate "Xen" in unicode u16 format */
--- a/xen/common/decompress.h
+++ b/xen/common/decompress.h
@@ -7,9 +7,6 @@
 #include <xen/types.h>
 #include <xen/xmalloc.h>
 
-#define STATIC static
-#define INIT __init
-
 #define malloc xmalloc_bytes
 #define free xfree
 
@@ -18,9 +15,6 @@
 
 #else
 
-#define STATIC static
-#define INIT
-
 #undef __init /* tools/libs/guest/xg_private.h has its own one */
 #define __init
 #define __initdata



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:22:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:22:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114358.217940 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZA01-0000Mq-Sz; Wed, 21 Apr 2021 10:22:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114358.217940; Wed, 21 Apr 2021 10:22: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 1lZA01-0000Mj-Pl; Wed, 21 Apr 2021 10:22:25 +0000
Received: by outflank-mailman (input) for mailman id 114358;
 Wed, 21 Apr 2021 10:22:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZA00-0000MP-2I
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:22:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id efd1ffa7-ec90-41c9-b8f3-9ba60f5c0a58;
 Wed, 21 Apr 2021 10:22:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 396A7AEE7;
 Wed, 21 Apr 2021 10:22:21 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: efd1ffa7-ec90-41c9-b8f3-9ba60f5c0a58
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619000541; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=TNwBS5CqZiz6ZS6XTeoRh5oALwnQG2gs/BtgNSkMD0o=;
	b=bkc1DKm2eisfRNGCmFqZ5x9c6qUAglaYTB6Z15IOu/vaVKepu2HE/y1Q3gHeZhkFa0mLEg
	I0mcb44Bb0q3I1NeyGKvY3G5x+0k+Kqt0Bj1P7Vw+5iW+KYfr/fue8ZdHyqfAkXGAFG7pE
	GUj3Zx4pDo/xUgCksKwdn/dIe49iXbQ=
Subject: [PATCH v4 3/3] unzstd: make helper symbols static
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Message-ID: <759c8524-cc01-fac8-bc62-0ba6558477bd@suse.com>
Date: Wed, 21 Apr 2021 12:22:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While for the original library's purposes these functions of course want
to be externally exposed, we don't need this, and we also don't want
this both to prevent unintended use and to keep the name space tidy.
(When functions have no callers at all, wrap them with a suitable
#ifdef.) This has the added benefit of reducing the resulting binary
size - while this is all .init code, it's still desirable to not carry
dead code.

Additionally in the hypervisor we don't need the bulk of unzstd(), so
insert a conditional allowing the compiler to DCE the rest (including
the called functions).

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

--- a/xen/common/unzstd.c
+++ b/xen/common/unzstd.c
@@ -53,6 +53,10 @@
  *                 <= 22 + (uncompressed_size >> 15) + 131072
  */
 
+#ifdef __XEN__
+#include <xen/lib.h>
+#endif
+
 #include "decompress.h"
 
 #include "zstd/entropy_common.c"
@@ -173,6 +177,11 @@ int __init unzstd(unsigned char *in_buf,
 		return decompress_single(in_buf, in_len, out_buf, out_len,
 					 in_pos, error);
 
+#ifdef __XEN__
+	ASSERT_UNREACHABLE();
+	return -1;
+#endif
+
 	/*
 	 * If in_buf is not provided, we must be using fill(), so allocate
 	 * a large enough buffer. If it is provided, it must be at least
--- a/xen/common/zstd/entropy_common.c
+++ b/xen/common/zstd/entropy_common.c
@@ -45,8 +45,10 @@
 #include "huf.h"
 #include "mem.h"
 
+#ifdef BUILD_DEAD_CODE
 /*===   Version   ===*/
 unsigned __init FSE_versionNumber(void) { return FSE_VERSION_NUMBER; }
+#endif
 
 /*===   Error Management   ===*/
 unsigned __init FSE_isError(size_t code) { return ERR_isError(code); }
--- a/xen/common/zstd/fse.h
+++ b/xen/common/zstd/fse.h
@@ -64,7 +64,7 @@ FSE_PUBLIC_API unsigned FSE_versionNumbe
 FSE_PUBLIC_API size_t FSE_compressBound(size_t size); /* maximum compressed size */
 
 /* Error Management */
-FSE_PUBLIC_API unsigned FSE_isError(size_t code); /* tells if a return value is an error code */
+static unsigned FSE_isError(size_t code); /* tells if a return value is an error code */
 
 /*-*****************************************
 *  FSE detailed API
@@ -173,7 +173,7 @@ If there is an error, the function will
 	@return : size read from 'rBuffer',
 			  or an errorCode, which can be tested using FSE_isError().
 			  maxSymbolValuePtr[0] and tableLogPtr[0] will also be updated with their respective values */
-FSE_PUBLIC_API size_t FSE_readNCount(short *normalizedCounter, unsigned *maxSymbolValuePtr, unsigned *tableLogPtr, const void *rBuffer, size_t rBuffSize);
+static size_t FSE_readNCount(short *normalizedCounter, unsigned *maxSymbolValuePtr, unsigned *tableLogPtr, const void *rBuffer, size_t rBuffSize);
 
 /*! Constructor and Destructor of FSE_DTable.
 	Note that its size depends on 'tableLog' */
@@ -182,14 +182,14 @@ typedef unsigned FSE_DTable; /* don't al
 /*! FSE_buildDTable():
 	Builds 'dt', which must be already allocated, using FSE_createDTable().
 	return : 0, or an errorCode, which can be tested using FSE_isError() */
-FSE_PUBLIC_API size_t FSE_buildDTable_wksp(FSE_DTable *dt, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void *workspace, size_t workspaceSize);
+static size_t FSE_buildDTable_wksp(FSE_DTable *dt, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void *workspace, size_t workspaceSize);
 
 /*! FSE_decompress_usingDTable():
 	Decompress compressed source `cSrc` of size `cSrcSize` using `dt`
 	into `dst` which must be already allocated.
 	@return : size of regenerated data (necessarily <= `dstCapacity`),
 			  or an errorCode, which can be tested using FSE_isError() */
-FSE_PUBLIC_API size_t FSE_decompress_usingDTable(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt);
+static size_t FSE_decompress_usingDTable(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt);
 
 /*!
 Tutorial :
@@ -273,10 +273,10 @@ size_t FSE_buildCTable_wksp(FSE_CTable *
 size_t FSE_buildDTable_raw(FSE_DTable *dt, unsigned nbBits);
 /**< build a fake FSE_DTable, designed to read a flat distribution where each symbol uses nbBits */
 
-size_t FSE_buildDTable_rle(FSE_DTable *dt, unsigned char symbolValue);
+static size_t FSE_buildDTable_rle(FSE_DTable *dt, unsigned char symbolValue);
 /**< build a fake FSE_DTable, designed to always generate the same symbolValue */
 
-size_t FSE_decompress_wksp(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, unsigned maxLog, void *workspace, size_t workspaceSize);
+static size_t FSE_decompress_wksp(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, unsigned maxLog, void *workspace, size_t workspaceSize);
 /**< same as FSE_decompress(), using an externally allocated `workSpace` produced with `FSE_DTABLE_SIZE_U32(maxLog)` */
 
 /* *****************************************
--- a/xen/common/zstd/fse_decompress.c
+++ b/xen/common/zstd/fse_decompress.c
@@ -174,6 +174,7 @@ size_t __init FSE_buildDTable_rle(FSE_DT
 	return 0;
 }
 
+#ifdef BUILD_DEAD_CODE
 size_t __init FSE_buildDTable_raw(FSE_DTable *dt, unsigned nbBits)
 {
 	void *ptr = dt;
@@ -200,6 +201,7 @@ size_t __init FSE_buildDTable_raw(FSE_DT
 
 	return 0;
 }
+#endif
 
 FORCE_INLINE size_t FSE_decompress_usingDTable_generic(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt,
 						       const unsigned fast)
--- a/xen/common/zstd/huf.h
+++ b/xen/common/zstd/huf.h
@@ -45,7 +45,7 @@
 size_t HUF_compressBound(size_t size); /**< maximum compressed size (worst case) */
 
 /* Error Management */
-unsigned HUF_isError(size_t code); /**< tells if a return value is an error code */
+static unsigned HUF_isError(size_t code); /**< tells if a return value is an error code */
 
 /* ***   Advanced function   *** */
 
@@ -99,12 +99,12 @@ typedef U32 HUF_DTable;
 *  Advanced decompression functions
 ******************************************/
 size_t HUF_decompress4X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize); /**< decodes RLE and uncompressed */
-size_t HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
-				size_t workspaceSize);							       /**< considers RLE and uncompressed as errors */
-size_t HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
-				   size_t workspaceSize); /**< single-symbol decoder */
-size_t HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
-				   size_t workspaceSize); /**< double-symbols decoder */
+static size_t HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
+					    size_t workspaceSize);					       /**< considers RLE and uncompressed as errors */
+static size_t HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
+					  size_t workspaceSize); /**< single-symbol decoder */
+static size_t HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
+					  size_t workspaceSize); /**< double-symbols decoder */
 
 /* ****************************************
 *  HUF detailed API
@@ -153,8 +153,8 @@ size_t HUF_buildCTable_wksp(HUF_CElt *tr
 	`huffWeight` is destination buffer.
 	@return : size read from `src` , or an error Code .
 	Note : Needed by HUF_readCTable() and HUF_readDTableXn() . */
-size_t HUF_readStats_wksp(BYTE *huffWeight, size_t hwSize, U32 *rankStats, U32 *nbSymbolsPtr, U32 *tableLogPtr, const void *src, size_t srcSize,
-			  void *workspace, size_t workspaceSize);
+static size_t HUF_readStats_wksp(BYTE *huffWeight, size_t hwSize, U32 *rankStats, U32 *nbSymbolsPtr, U32 *tableLogPtr, const void *src, size_t srcSize,
+				 void *workspace, size_t workspaceSize);
 
 /** HUF_readCTable() :
 *   Loading a CTable saved with HUF_writeCTable() */
@@ -172,12 +172,12 @@ HUF_decompress() does the following:
 *   based on a set of pre-determined metrics.
 *   @return : 0==HUF_decompress4X2, 1==HUF_decompress4X4 .
 *   Assumption : 0 < cSrcSize < dstSize <= 128 KB */
-U32 HUF_selectDecoder(size_t dstSize, size_t cSrcSize);
+static U32 HUF_selectDecoder(size_t dstSize, size_t cSrcSize);
 
-size_t HUF_readDTableX2_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize);
-size_t HUF_readDTableX4_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize);
+static size_t HUF_readDTableX2_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize);
+static size_t HUF_readDTableX4_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize);
 
-size_t HUF_decompress4X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable);
+static size_t HUF_decompress4X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable);
 size_t HUF_decompress4X2_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable);
 size_t HUF_decompress4X4_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable);
 
@@ -196,13 +196,13 @@ size_t HUF_compress1X_repeat(void *dst,
 			     int preferRepeat); /**< `workSpace` must be a table of at least HUF_COMPRESS_WORKSPACE_SIZE_U32 unsigned */
 
 size_t HUF_decompress1X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize);
-size_t HUF_decompress1X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
-				   size_t workspaceSize); /**< single-symbol decoder */
+static size_t HUF_decompress1X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
+					  size_t workspaceSize); /**< single-symbol decoder */
 size_t HUF_decompress1X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace,
 				   size_t workspaceSize); /**< double-symbols decoder */
 
-size_t HUF_decompress1X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize,
-				    const HUF_DTable *DTable); /**< automatic selection of sing or double symbol decoder, based on DTable */
+static size_t HUF_decompress1X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize,
+					   const HUF_DTable *DTable); /**< automatic selection of sing or double symbol decoder, based on DTable */
 size_t HUF_decompress1X2_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable);
 size_t HUF_decompress1X4_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable);
 
--- a/xen/common/zstd/huf_decompress.c
+++ b/xen/common/zstd/huf_decompress.c
@@ -218,6 +218,7 @@ static size_t __init HUF_decompress1X2_u
 	return dstSize;
 }
 
+#ifdef BUILD_DEAD_CODE
 size_t __init HUF_decompress1X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
@@ -225,6 +226,7 @@ size_t __init HUF_decompress1X2_usingDTa
 		return ERROR(GENERIC);
 	return HUF_decompress1X2_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
 }
+#endif
 
 size_t __init HUF_decompress1X2_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
@@ -349,6 +351,7 @@ static size_t __init HUF_decompress4X2_u
 	}
 }
 
+#ifdef BUILD_DEAD_CODE
 size_t __init HUF_decompress4X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
@@ -356,6 +359,7 @@ size_t __init HUF_decompress4X2_usingDTa
 		return ERROR(GENERIC);
 	return HUF_decompress4X2_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
 }
+#endif
 
 size_t __init HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
@@ -679,6 +683,7 @@ static size_t __init HUF_decompress1X4_u
 	return dstSize;
 }
 
+#ifdef BUILD_DEAD_CODE
 size_t __init HUF_decompress1X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
@@ -701,6 +706,7 @@ size_t __init HUF_decompress1X4_DCtx_wks
 
 	return HUF_decompress1X4_usingDTable_internal(dst, dstSize, ip, cSrcSize, DCtx);
 }
+#endif
 
 static size_t __init HUF_decompress4X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
@@ -812,6 +818,7 @@ static size_t __init HUF_decompress4X4_u
 	}
 }
 
+#ifdef BUILD_DEAD_CODE
 size_t __init HUF_decompress4X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
 {
 	DTableDesc dtd = HUF_getDTableDesc(DTable);
@@ -819,6 +826,7 @@ size_t __init HUF_decompress4X4_usingDTa
 		return ERROR(GENERIC);
 	return HUF_decompress4X4_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
 }
+#endif
 
 size_t __init HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
@@ -896,6 +904,7 @@ U32 __init HUF_selectDecoder(size_t dstS
 
 typedef size_t (*decompressionAlgo)(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize);
 
+#ifdef BUILD_DEAD_CODE
 size_t __init HUF_decompress4X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	/* validation checks */
@@ -918,6 +927,7 @@ size_t __init HUF_decompress4X_DCtx_wksp
 			      : HUF_decompress4X2_DCtx_wksp(dctx, dst, dstSize, cSrc, cSrcSize, workspace, workspaceSize);
 	}
 }
+#endif
 
 size_t __init HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
@@ -934,6 +944,7 @@ size_t __init HUF_decompress4X_hufOnly_w
 	}
 }
 
+#ifdef BUILD_DEAD_CODE
 size_t __init HUF_decompress1X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
 {
 	/* validation checks */
@@ -956,3 +967,4 @@ size_t __init HUF_decompress1X_DCtx_wksp
 			      : HUF_decompress1X2_DCtx_wksp(dctx, dst, dstSize, cSrc, cSrcSize, workspace, workspaceSize);
 	}
 }
+#endif
--- a/xen/common/zstd/zstd_common.c
+++ b/xen/common/zstd/zstd_common.c
@@ -47,12 +47,14 @@ ZSTD_customMem __init ZSTD_initStack(voi
 	return stackMem;
 }
 
+#ifdef BUILD_DEAD_CODE
 void *__init ZSTD_stackAllocAll(void *opaque, size_t *size)
 {
 	ZSTD_stack *stack = (ZSTD_stack *)opaque;
 	*size = (BYTE const *)stack->end - (BYTE *)ZSTD_PTR_ALIGN(stack->ptr);
 	return stack_push(stack, *size);
 }
+#endif
 
 void *__init ZSTD_stackAlloc(void *opaque, size_t size)
 {
--- a/xen/common/zstd/zstd_internal.h
+++ b/xen/common/zstd/zstd_internal.h
@@ -324,7 +324,7 @@ typedef struct {
 
 const seqStore_t *ZSTD_getSeqStore(const ZSTD_CCtx *ctx);
 void ZSTD_seqToCodes(const seqStore_t *seqStorePtr);
-int ZSTD_isSkipFrame(ZSTD_DCtx *dctx);
+static int ZSTD_isSkipFrame(ZSTD_DCtx *dctx);
 
 /*= Custom memory allocation functions */
 typedef void *(*ZSTD_allocFunction)(void *opaque, size_t size);
@@ -335,8 +335,8 @@ typedef struct {
 	void *opaque;
 } ZSTD_customMem;
 
-void *ZSTD_malloc(size_t size, ZSTD_customMem customMem);
-void ZSTD_free(void *ptr, ZSTD_customMem customMem);
+static void *ZSTD_malloc(size_t size, ZSTD_customMem customMem);
+static void ZSTD_free(void *ptr, ZSTD_customMem customMem);
 
 /*====== stack allocation  ======*/
 
@@ -348,11 +348,11 @@ typedef struct {
 #define ZSTD_ALIGN(x) ALIGN(x, sizeof(size_t))
 #define ZSTD_PTR_ALIGN(p) PTR_ALIGN(p, sizeof(size_t))
 
-ZSTD_customMem ZSTD_initStack(void *workspace, size_t workspaceSize);
+static ZSTD_customMem ZSTD_initStack(void *workspace, size_t workspaceSize);
 
 void *ZSTD_stackAllocAll(void *opaque, size_t *size);
-void *ZSTD_stackAlloc(void *opaque, size_t size);
-void ZSTD_stackFree(void *opaque, void *address);
+static void *ZSTD_stackAlloc(void *opaque, size_t size);
+static void ZSTD_stackFree(void *opaque, void *address);
 
 /*======  common function  ======*/
 
@@ -367,10 +367,10 @@ ZSTD_STATIC U32 ZSTD_highbit32(U32 val)
 void ZSTD_invalidateRepCodes(ZSTD_CCtx *cctx);
 
 size_t ZSTD_freeCCtx(ZSTD_CCtx *cctx);
-size_t ZSTD_freeDCtx(ZSTD_DCtx *dctx);
+static size_t ZSTD_freeDCtx(ZSTD_DCtx *dctx);
 size_t ZSTD_freeCDict(ZSTD_CDict *cdict);
-size_t ZSTD_freeDDict(ZSTD_DDict *cdict);
+static size_t ZSTD_freeDDict(ZSTD_DDict *cdict);
 size_t ZSTD_freeCStream(ZSTD_CStream *zcs);
-size_t ZSTD_freeDStream(ZSTD_DStream *zds);
+static size_t ZSTD_freeDStream(ZSTD_DStream *zds);
 
 #endif /* ZSTD_CCOMMON_H_MODULE */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:22:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:22:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114363.217952 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZA0N-0000UG-Ar; Wed, 21 Apr 2021 10:22:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114363.217952; Wed, 21 Apr 2021 10: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 1lZA0N-0000U9-7V; Wed, 21 Apr 2021 10:22:47 +0000
Received: by outflank-mailman (input) for mailman id 114363;
 Wed, 21 Apr 2021 10:22:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZA0M-0000T0-Hj
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:22:46 +0000
Received: from mail-wm1-f41.google.com (unknown [209.85.128.41])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a1932f94-514e-4c28-9d0b-18d833f2eeeb;
 Wed, 21 Apr 2021 10:22:42 +0000 (UTC)
Received: by mail-wm1-f41.google.com with SMTP id
 d200-20020a1c1dd10000b02901384767d4a5so977229wmd.3
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:22:42 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id m11sm2520061wri.44.2021.04.21.03.22.40
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:22: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: a1932f94-514e-4c28-9d0b-18d833f2eeeb
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=h0eA6GdNT9vFr9AdGHrEBfl5rQQT3TWK4Gjhx1Ao2sQ=;
        b=sSIu9HZyL6X0p01o9Ks6cQeKQYPJBTTr8gVKfMfsiPgNDDkBGZj6Je1zcAkZZ95dWB
         jGkQ8upn6/V0h8ZvpY1P7WJ3hQhmMmHl5CTh/57Ss5k+Gj1ViYYNQIYEuzdkUDeumS5k
         GMlYXziBE6RVezpn2hT5UvZ45z/6AG6eRrMUlX35oysdVeMNZWaZxVzECG01QRdVajGX
         aaoGZnbpQQ0Ee3/NEZELiDMuPxXRLxHdMFeLRkX2isQ/m3UKTemO6ljviHXEX4E3qYSn
         EzESKBnTTSEYdemhGDKTQKkRNZoV6edNlY0NQ5+JpzE4Fv3U5eUPgK9uKNe/fBc5sAE8
         F0IA==
X-Gm-Message-State: AOAM530e+coy+cz/HrIOQCJUcFiu1m03Co9ZopMnZoHBcd7WKHxpGsYf
	kVEx5IAPqNYodiXalVnOD+w=
X-Google-Smtp-Source: ABdhPJzH6lXi6OTNDURj1CgD6TvuUs2DrOKv/e46Wd0L+j+qvyBsGssqy1qGta8N6vmO1E2LWIFXcg==
X-Received: by 2002:a1c:1982:: with SMTP id 124mr2804746wmz.148.1619000561314;
        Wed, 21 Apr 2021 03:22:41 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:22:39 +0000
From: Wei Liu <wl@xen.org>
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <20210421102239.tlesqrxsplk5vthm@liuwe-devbox-debian-v2>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210413140140.73690-16-roger.pau@citrix.com>

On Tue, Apr 13, 2021 at 04:01:33PM +0200, Roger Pau Monne wrote:
> Introduce a helper to obtain a compatible cpu policy based on two
> input cpu policies. Currently this is done by and'ing all CPUID leaves
> and MSR entries, except for MSR_ARCH_CAPABILITIES which has the RSBA
> bit or'ed.
> 

I thought canonical source for compatibility was to be put into the
hypervisor, thus all this functionality would be in the hypervisor. Am I
misremembering?

Wei.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:24:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:24:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114376.217963 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZA2T-0000m4-N1; Wed, 21 Apr 2021 10:24:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114376.217963; Wed, 21 Apr 2021 10: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 1lZA2T-0000lx-KE; Wed, 21 Apr 2021 10:24:57 +0000
Received: by outflank-mailman (input) for mailman id 114376;
 Wed, 21 Apr 2021 10:24:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZA2S-0000ls-Dr
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:24:56 +0000
Received: from mail-wr1-f48.google.com (unknown [209.85.221.48])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 87b3a3ea-f47e-49a6-a244-57f150d5389e;
 Wed, 21 Apr 2021 10:24:55 +0000 (UTC)
Received: by mail-wr1-f48.google.com with SMTP id r7so28782961wrm.1
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:24:55 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id h2sm2078415wmc.24.2021.04.21.03.24.54
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03:24: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: 87b3a3ea-f47e-49a6-a244-57f150d5389e
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=PjjvP2H3md8cM1wGnHzgsiM758OzjGyEE68/hcUYLzk=;
        b=WX4yIfYWog3nWRdHENQxUiwXl38ovkKwYhO/0lRMF0OkRxP1sMvD1uaLsUmrvlpge4
         0vs2u4D4glH3/m32gmeG8vbkaLAmbieREAA4Tiy/pLKMAHKWzcgfhIRw9kSGVzEOl1af
         V2KlXq653E5007aofcp22O1H+fz0rJXsSWzjJ4JotzpXDxde7b8M4i2QDKkXSkuEb1yJ
         Aonb/5y6LsROkAKaCk/GUkkHh1L4I2usC0Lp3IuY9cTBfMr/EK3rUSX+pp/zZinTAcgR
         TKVPZDY5Y47H+lygj31fxLHMS5hCw05BSUx++wOLp1z4EmnmCfRt8IiQkF7isSB9gnt0
         yiCA==
X-Gm-Message-State: AOAM5305yy6MMhaaSmSgfhw1FlxlaeVeaAZyQ2N2paYlBytRVPeAEgbK
	f3L74zCXbVDQkOKfVC6Tl58=
X-Google-Smtp-Source: ABdhPJwe6ud32p04NsH+pX7gE9ozIXO/qHiC87HKEdEQODjY02ILjCijU9y6tSmUTlK+UGpjSThsdw==
X-Received: by 2002:a5d:524e:: with SMTP id k14mr25719750wrc.282.1619000695121;
        Wed, 21 Apr 2021 03:24:55 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:24:53 +0000
From: Wei Liu <wl@xen.org>
To: Olaf Hering <olaf@aepfle.de>
Cc: xen-devel@lists.xenproject.org,
	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>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v3] tools: create libxensaverestore
Message-ID: <20210421102453.r2oa7o7zqtzkvilv@liuwe-devbox-debian-v2>
References: <20210413172028.29373-1-olaf@aepfle.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210413172028.29373-1-olaf@aepfle.de>

On Tue, Apr 13, 2021 at 07:20:27PM +0200, Olaf Hering wrote:
> Move all save/restore related code from libxenguest.so into a separate
> library libxensaverestore.so. The only consumer is libxl-save-helper.
> There is no need to have the moved code mapped all the time in binaries
> where libxenguest.so is used.

Good idea. Please address Jan and Juergen's comment regarding the
prefix.

Wei.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:26:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:26:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114382.217976 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZA3z-0000vK-33; Wed, 21 Apr 2021 10:26:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114382.217976; Wed, 21 Apr 2021 10: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 1lZA3y-0000vD-W5; Wed, 21 Apr 2021 10:26:30 +0000
Received: by outflank-mailman (input) for mailman id 114382;
 Wed, 21 Apr 2021 10:26:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZA3x-0000v7-Cr
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:26:29 +0000
Received: from mail-wr1-f46.google.com (unknown [209.85.221.46])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 62e4fc4a-6bea-474e-8c98-387c39aa7cea;
 Wed, 21 Apr 2021 10:26:28 +0000 (UTC)
Received: by mail-wr1-f46.google.com with SMTP id j5so39825509wrn.4
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 03:26:28 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id h5sm1720079wmq.23.2021.04.21.03.26.27
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 03: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: 62e4fc4a-6bea-474e-8c98-387c39aa7cea
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=sgHPJNd6yt4X4FpIxBb4H3ocAUbJEf7Rkftjj8J3SHw=;
        b=AIONHD+Owf1ra7b5bK03pshnr8qcPgE87N+Fh6JVtDDjBHvbZSzxyaTPbizAsaJMWq
         X9on544f/AO0B2W1IrtMtaRvCkRN11AcpPhnmbB+WRIL4FdIQlLRBjTIAlKweVL5RBqn
         tiZgsIXIjrm4YnlcGgKsrHpdnjBJUnGjzlMB8QGchPhvdHz4lDInMrUhTU/EqlqvEy2V
         A9ZDiQjkBWXGEesgAKOYcXHFlgCGckYHlKaLcWjDoK9r9mu3H1tcSjxYrCc2TSw9o65m
         Lh8gETrBZWUrbIbjKpJmiTnhl/+FsO6nQ4r1mulkg6hCn2ud0Gvwqdu8DaBb3SPDZW8M
         XgXA==
X-Gm-Message-State: AOAM533uKi4gBIbXYXdFYxQCK0THLlmfiZ9Gmd6dgwGH0LaApjYf5xVF
	CbvJXJlFcEeq8+HqpPpzDl4=
X-Google-Smtp-Source: ABdhPJzHtgVsS+uaCJry8RNZiANCHI4lQOR4x+cBpT7Y8fjOZ5/s4FUDmtuKqK6XCe1LoEFwaW9XQQ==
X-Received: by 2002:adf:f990:: with SMTP id f16mr26200263wrr.312.1619000787859;
        Wed, 21 Apr 2021 03:26:27 -0700 (PDT)
Date: Wed, 21 Apr 2021 10:26:26 +0000
From: Wei Liu <wl@xen.org>
To: Olaf Hering <olaf@aepfle.de>
Cc: xen-devel@lists.xenproject.org,
	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>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v4] tools: create libxensaverestore
Message-ID: <20210421102626.ilsm4vaiyn2uvkyc@liuwe-devbox-debian-v2>
References: <20210415131138.8709-1-olaf@aepfle.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210415131138.8709-1-olaf@aepfle.de>

On Thu, Apr 15, 2021 at 03:11:38PM +0200, Olaf Hering wrote:
> Move all save/restore related code from libxenguest.so into a separate
> library libxensaverestore.so. The only consumer is libxl-save-helper.
> There is no need to have the moved code mapped all the time in binaries
> where libxenguest.so is used.
> 
> According to size(1) the change is:
>    text	   data	    bss	    dec	    hex	filename
>  187183	   4304	     48	 191535	  2ec2f	guest/libxenguest.so.4.15.0
> 
>  124106	   3376	     48	 127530	  1f22a	guest/libxenguest.so.4.15.0
>   67841	   1872	      8	  69721	  11059	saverestore/libxensaverestore.so.4.15.0
> 
> While touching the files anyway, take the opportunity to drop the
> reduntant xg_sr_ filename prefix.
> 
> Signed-off-by: Olaf Hering <olaf@aepfle.de>

Acked-by: Wei Liu <wl@xen.org>


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:32:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:32:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114388.217988 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZAA2-0001ng-PC; Wed, 21 Apr 2021 10:32:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114388.217988; Wed, 21 Apr 2021 10: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 1lZAA2-0001nZ-Ln; Wed, 21 Apr 2021 10:32:46 +0000
Received: by outflank-mailman (input) for mailman id 114388;
 Wed, 21 Apr 2021 10:32:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZAA0-0001nU-VF
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:32:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c9e5d131-4018-4409-a45e-30a201c77d5a;
 Wed, 21 Apr 2021 10:32:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 39A4EAEE6;
 Wed, 21 Apr 2021 10:32: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: c9e5d131-4018-4409-a45e-30a201c77d5a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619001163; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ZSrOHyZFETTy+Q5cNQUqkrntrgvqKpTcWutAaxCAQa8=;
	b=kN94TTupyZaVedPxiUy2BHdG9BKXY946uj7zVOoKwDmLiVOyxpfFh+e0sjaumqg3Iv/6NA
	rB9IaLfyqy+z/9d07ipwBHgiE/CVSSev0WY1STJJWrX+bRMCM6OAt6UF1HIb3go4HdQCu8
	UPtukIi3vBlAS7lmO0+mk3K5Xeqifz4=
Subject: Re: [PATCH 2/8] x86/EFI: sections may not live at VA 0 in PE binaries
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
 <YH/nzmkQMhsJE4mw@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <deee924d-f124-5563-727a-71ddb39403f3@suse.com>
Date: Wed, 21 Apr 2021 12:32:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH/nzmkQMhsJE4mw@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 10:52, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:44:45AM +0200, Jan Beulich wrote:
>> PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
>> least 2.36 would silently truncate the (negative) difference when a
>> section is placed below the image base. Such sections would also be
>> wrongly placed ahead of all "normal" ones. Since, for the time being,
>> we build xen.efi with --strip-debug anyway, .stab* can't appear. And
>> .comment has an entry in /DISCARD/ already anyway in the EFI case.
>>
>> Because of their unclear origin, keep the directives for the ELF case
>> though.
> 
> It's my understadng thonse sections are only there for debug purposes,
> and never part of the final xen binary as they are stripped?
> 
> Could we maybe remove the section load address of 0 and instead just
> use the (NOLOAD) directive?

(NOLOAD) is meaningless for PE.

> Does it really matter to place them at address 0?

That's the convention for ELF, and also what ld defaults to for debugging
sections.

> I also wonder, is this change fixing some existing bug, or it's just a
> cleanup change?

If there were sections at 0, the resulting PE binary would end up broken.
Prior to binutils 2.37 this brokenness is silent, i.e. the linker doesn't
issue any form of diagnostic. The change therefore is addressing a latent
issue - if any such section started being non-empty, we'd be in trouble.

> I also only see the .comment section in my binary output, so maybe
> it's fine to just remove them from the script?

Which binary are you referring to - ELF or PE? In the former case, yes,
that's what the statement is for. In the latter case I can't see how this
would be, with .comment being explicitly part of /DISCARD/ in that case.

> Does the Arm linker script need a similar treatment?

No idea - they don't use ld to produce a PE binary. In fact during my
work on the binutils side for all of this, I was given a hint that on Arm
linking ELF objects into PE output may currently not be possible at all.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:36:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:36:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114394.218000 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZADU-00022I-8J; Wed, 21 Apr 2021 10:36:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114394.218000; Wed, 21 Apr 2021 10: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 1lZADU-00022B-5A; Wed, 21 Apr 2021 10:36:20 +0000
Received: by outflank-mailman (input) for mailman id 114394;
 Wed, 21 Apr 2021 10:36:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZADS-000226-6I
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:36:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3e438796-268f-4b44-8cee-315d462c3121;
 Wed, 21 Apr 2021 10:36:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B216CACB1;
 Wed, 21 Apr 2021 10:36: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: 3e438796-268f-4b44-8cee-315d462c3121
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619001376; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=tRtTdLy6KPId+ddSf6hX71j/CX3Ghw0y6bpgKHA2taw=;
	b=L+7QL8g8eF6TC6G6U5tcC+ToS2XYgp4GOkq0+ZE65u3PLyF0MRow04DPE/+4+ms5hUU+g9
	g+yLTGjG2OCYYBu6GlSHwggrD9YTVYaI/ErQac6SXQjDgEtFkZr4nCXTAA6iA8G42ntfRa
	MgjKvEBoVD/6ruSdTbAn+dw97eE6PmM=
Subject: Re: [PATCH 3/8] x86/EFI: program headers are an ELF concept
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <017478f9-76d2-4dc4-de93-b662c4552968@suse.com>
 <YH/sLn+g/7wsZUDy@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <69abcc03-7ffc-10e2-0de3-26c6c84a6d26@suse.com>
Date: Wed, 21 Apr 2021 12:36:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH/sLn+g/7wsZUDy@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 11:11, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:45:09AM +0200, Jan Beulich wrote:
>> While they apparently do no harm when building xen.efi, their use is
>> potentially misleading. Conditionalize their use to be for just the ELF
>> binary we produce.
>>
>> No change to the resulting binaries.
> 
> The GNU Linker manual notes that program headers would be ignored when
> not generating an ELF file, so I'm not sure it's worth us adding more
> churn to the linker script to hide something that's already ignored by
> ld already.
> 
> Maybe adding a comment noting program headers are ignored when not
> generating an ELF output would be enough?

Maybe, but I'd prefer this to be explicit, and I'd prefer for efi.lds
to not have any PE-unrelated baggage. The churn by this patch isn't
all this significant, is it? In fact in two cases it actually deletes
meaningless stuff.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 10:44:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 10:44:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114399.218012 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZALB-0002v9-3D; Wed, 21 Apr 2021 10:44:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114399.218012; Wed, 21 Apr 2021 10:44:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZALA-0002v2-WA; Wed, 21 Apr 2021 10:44:16 +0000
Received: by outflank-mailman (input) for mailman id 114399;
 Wed, 21 Apr 2021 10:44:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZAL9-0002ux-Hv
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 10:44:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 145dd596-5c32-4f13-91ee-9bcb6abc665a;
 Wed, 21 Apr 2021 10:44:14 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DFF6AAE06;
 Wed, 21 Apr 2021 10:44: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: 145dd596-5c32-4f13-91ee-9bcb6abc665a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619001854; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=PqsgRc4oxAXgb57FSbSwGKWGSaMB1ANQTgYrCAKXqRM=;
	b=VzNZVmEgyBOjssT0TLz935Pm5hWLmWDopPN0I0UAkERw1yml6uLqlZ0k9ohTFVMTrm2LXG
	aYeikBW0ZhuoXnfOeCNZDsmI0ck7kfQ77CMAhr39CNlvbbGkj+twcbpVPh7C7b5Yi7C2A6
	k7dZg+Ixa2ePB5NmsiRlfH7rGWfRh0M=
Subject: Re: [PATCH 4/8] x86/EFI: redo .reloc section bounds determination
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <b886eb2c-cabc-f195-4996-aae1fc3c61d9@suse.com>
 <YH/0dzlPxwWF1PA2@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <dfcc9535-e9c0-97f1-4970-9a78af039c28@suse.com>
Date: Wed, 21 Apr 2021 12:44:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH/0dzlPxwWF1PA2@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 11:46, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:45:38AM +0200, Jan Beulich wrote:
>> There's no need to link relocs-dummy.o into the ELF binary. The two
>> symbols needed can as well be provided by the linker script. Then our
>> mkreloc tool also doesn't need to put them in the generated assembler
>> source.
> 
> Maybe I'm just dense today, but I think the message needs to be
> expanded a bit to mention that while the __base_relocs_{start,end} are
> not used when loaded as an EFI application, they are used by the EFI
> code in Xen when booted using the multiboot2 protocol for example, as
> they are used by efi_arch_relocate_image.
> 
> I think relocation is not needed when natively loaded as an EFI
> application, as then the load address matches the one expected by
> Xen?

It's quite the other way around: The EFI loader applies relocations
to put the binary at its loaded _physical_ address (the image gets
linked for the final virtual address). Hence we need to apply the
same relocations a 2nd time (undoing what the EFI loader did)
before we can branch from the physical (identity mapped) address
range where xen.efi was loaded to the intended virtual address
range where we mean to run Xen from.

For the ELF binary the symbols are needed solely to make ld happy.

> I also wonder, at some point there where plans for providing a single
> binary that would work as multiboot{1,2} and also be capable of being
> loaded as an EFI application (ie: have a PE/COFF header also I assume
> together with the ELF one), won't the changes here make it more
> difficult to reach that goal or require reverting later on, as I feel
> they are adding more differences between the PE binary and the ELF
> one.

There were such plans, yes, but from the last round of that series
I seem to recall that there was at least one issue breaking this
idea. So no, at this point I'm not intending to take precautions to
make that work easier (or not further complicate it). This said, I
don't think the change here complicates anything there.

> The code LGTM, but I think at least I would like the commit message to
> be expanded.

Well, once I know what exactly you're missing there, I can certainly
try to expand it.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 11:15:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 11:15:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114405.218024 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZApL-0005oG-LD; Wed, 21 Apr 2021 11:15:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114405.218024; Wed, 21 Apr 2021 11:15: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 1lZApL-0005o9-H9; Wed, 21 Apr 2021 11:15:27 +0000
Received: by outflank-mailman (input) for mailman id 114405;
 Wed, 21 Apr 2021 11:15:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZApK-0005o4-0x
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 11:15:26 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3482a8a8-ffc8-42a9-b258-08e41c9b7136;
 Wed, 21 Apr 2021 11:15: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: 3482a8a8-ffc8-42a9-b258-08e41c9b7136
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619003724;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=bfAgSlP7XiOSEogiEYO0ymqI1ckJzivJgWtOpFXr0Ho=;
  b=OxYBkoNS88uwlGytCncDF/I0F4I/MZAkRHzMn1Dl6Pkwd8mNgR+BQA+6
   U3hO7f8PhBOO79oDczHkWXBfedMMksk3oIR5uYfThu5tVRT7J2u+SO/Vt
   HWrG5/Jx11S5z5veLAhqMQqrJzp1NbiWUutZQaKU5nM+RMI7KATEa1ZhN
   4=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: E0XwPIk6eXVyBvSjrgZLUwsn/JhoNgd1zRE3rI/pvRdB0iJlZz3WkLJHNTzGsrocuaFSBUYiK3
 nnBB31zshAa/RxI7+hO3cBMroucwxXkLu3yswGPDtDDvyAyzMmlY7ZjDHetORqycSeyFr2amJB
 XgSXurjVhgiSRzf9YzrPq4KvJyOjiW75gwp57e4LrkvGRBIkHMy/G3FsgP5+DIDUpvwNC2lfQy
 QLlBL9G2f+RZXCSGdIZTJa/dVALAM0A+niNqoaJJXe2478t6HF/mDlL+fxBkMeCg09UpYcx5/H
 4YQ=
X-SBRS: 5.2
X-MesageID: 41901535
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:RhW+HavOMtA4G/ubc0PrTpHZ7skCpIMji2hD6mlwRA09T+Wxi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybde6+AqXYuKdg/gpWeuMcVe/ZLvqgeQfxHW28x88e
 Nbc6Z4AMDtFlQSt6zHySSxDtpI+ra62Y+yg+O29RlQZCVLT40l0AtjEAacFSRNNWx7LL40Do
 CV6MYChxfIQwV1Uu2BCnMIX/fOqrTw/fqLXTc8CwM68w7LtDu06dfBeCSw5AsUUD9E3N4ZgA
 r4ujH+j5/Dj9iLjiXy+kWWxJRQldvnxLJ4dbGxo/lQEBrAoEKFYIxgXpeLoTw6pvq+gWxa7O
 XkklMbEOlYr1/XY2GpsTvhsjOQrwoG2jvZ5nKzxVvlvMDjSzoxB6N69PxkWyqc0WUMlpVY8s
 twrgWknqsSNzzstmDBwuKNcBdQmk+9sRMZ4JUupk0aa6QyQvtst4AFlXkldqsoLWbBx60MNv
 JhN83Y7OY+SyLhU1np+lNix9GhRR0Ib267a3lHvsSU1g5fl2xiw30Zw9QCnmwB+IhVceg929
 j5
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="41901535"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=byOswbFH0p/KjNNUJt/PC/xSjCTniQhGmuWEQYCpdsjVB0vHUH8I8AuTOEUPRpUdgP120fNlpPvMJLF8MO/UliDVnY9FZhj/t3z9kzbfzr8ZeAH8H20i0Gyi7ihniowaCjjjUcvgi3+yX+XDDPRj8BkROrYn6mox0QK9+T1BpnPekbvVxDRZm0AiECHbzROyWleKvcDo2Cu51xDFvoflz1JQ//2xHP2MdE2g44+Zr0cJMirS1nQGaJypmp4Xoog20F4l20Z0t1q0+8iI9imfwbZEs19wiOMGMVXoKzHMsm8IQlvyv9lCMdqFyXDTvpxZgZc1qrjOjCf3RSXWjZC/gQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CYtVKgY6L2JsP/a0RYisySBjKZmx+Mtz3i+Bsh+uQeQ=;
 b=Y0RVZEZGbkwdYvnXTTvZF9opcTYYwAwWROQWOFdm/Da+FUA4R29ffCRbFYT3aNvwn7ohARkLZwDtEYICcI1QSPEnTQhbbgb4c/7OA6bipIoYy25WmkBlcc+gG7PoV3MjDUstK3gf6hkjCx+WB8/uOT13uncO4AUVbD7KgbHHcx9XBq2t36MNsahaH+f1HL3Jkt+qaNZjm1d6TOnGsuAHkmOnTwIptmm9+fYVCcAMwcFkgJoRRBpn8AgNvLBsZMkuxLXJwLlsoTFog4BFrs4LuOFxD+T0CdHn2smrvO2sfoL3wJ1moXiaYZFu0ZGeMa4CpdE36sFWbMnLQaiZrYlNQg==
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=CYtVKgY6L2JsP/a0RYisySBjKZmx+Mtz3i+Bsh+uQeQ=;
 b=NkKZlWlCahKt7xN5DqqWF2JaeXVAzjg2Rn3v9SEFp9pjldnTuuM3jB+DbdU+xwuxcaYlcA0wYqoCoYCDrcFxxucMSinY6Y4CnmhiHfvySLDeTq43XslYXhMk9dx5Saf5YtXazsNvNLl8NwGEuneamTHtGZaEGlr0BQecECtzD18=
Date: Wed, 21 Apr 2021 13:15:11 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
Message-ID: <YIAJP0SCq0nOKZVL@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
X-ClientProxiedBy: AM6PR04CA0037.eurprd04.prod.outlook.com
 (2603:10a6:20b:f0::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2e93e47e-726b-4d4c-92b5-08d904b6c008
X-MS-TrafficTypeDiagnostic: DM5PR03MB2715:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB271564F3F34AA615278088F08F479@DM5PR03MB2715.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Lf20rFurTOaswrnqTqMKa4GmWxUBBqFqHyMXD9g6Cu+lSb2f4KlM+5F+b+SK/SU6JqSlnzFTjL71tFXXQF1ciUzaAZ0EoXCecVcWNMj7rWMubm0NltJeKRel49d0j6Gnocz+9Jm8rNCJFT3YrF55eXWfS7afz4rZXdMF7FKH8WKmXCWa62R/ie17jU1+bAGixIpVJobpRLKmA0dI078cegi1xldMcKd6QnrmFMc4HAfV8U8shqkf2LaHn+aCZpiICz0QkkMiEz/zCdLa7mKk489SQWt0F/Sel90A3xKH4KnrLeM9prpkUwTyQSa+S0/b9Ti4Csg9IkHXjIHwZRZ6VnkqyIWcMiaUhiJnMmBKEu3Me3zdsUZsQiLk6jTaRdm/yeDNIxw34hGbSQlbIVWkVN07SuibtczBP9K8cQR2DdGEeXN+l4gIfDKzn1S9QS6wDJv5RMI8mIPOpk/ysjMYP0P6eSID5gpq/SRnhoztxgNfR32WBtxuexhpG4yhXrDK1NnylsWR4E8gflrsDQTE7cmlv6SmqNUyne2u7XbHSPb1w9kM/2NEF24kxpTMwctzlDtbUyccpOqgTt+ZS14FLlgUPZy/elP3DrUKEMVtMF4=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(366004)(39860400002)(346002)(396003)(136003)(8676002)(33716001)(83380400001)(2906002)(478600001)(16526019)(85182001)(9686003)(4326008)(86362001)(54906003)(5660300002)(956004)(8936002)(6496006)(38100700002)(66476007)(6486002)(186003)(6666004)(66946007)(66556008)(26005)(6916009)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 2e93e47e-726b-4d4c-92b5-08d904b6c008
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 11:15:20.3933
 (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: tDJzo8BfdJge4CgAfxzy+5Vxm1RulNFnumMZHDUkTCZcYNo+ejp0Knd8peZEuek6WeXBN/BNhygOYkYSvTHFGA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2715
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
> ... provided the linker supports it (which it does as of commit
> 2dfa8341e079 ["ELF DWARF in PE output"]).
> 
> Without mentioning debugging sections, the linker would put them at
> VA 0, thus making them unreachable by 32-bit (relative or absolute)
> relocations. If relocations were resolvable (or absent) the resulting
> binary would have invalid section RVAs (0 - __image_base__, truncated to
> 32 bits). Mentioning debugging sections without specifying an address
> will result in the linker putting them all on the same RVA. A loader is,
> afaict, free to reject loading such an image, as sections shouldn't
> overlap. (The above describes GNU ld 2.36 behavior, which - if deemed
> buggy - could change.)

Isn't just using (NOLOAD) to signal those sections shouldn't be
loaded enough, and thus don't care about it's RVA?

> 
> Make sure our up-to-16Mb padding doesn't unnecessarily further extend
> the image.
> 
> Take the opportunity and also switch to using $(call ld-option,...).
> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> This way we could also avoid discarding .comment for xen.efi.
> 
> I'd like to point out that the linking of the debug info takes far
> longer than the linking of the "normal" parts of the image. The change
> therefore has the downside of slowing down debug builds.
> 
> --- a/xen/arch/x86/Makefile
> +++ b/xen/arch/x86/Makefile
> @@ -126,8 +126,14 @@ export XEN_BUILD_EFI := $(shell $(CC) $(
>  CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
>  
>  # Check if the linker supports PE.
> -EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10 --strip-debug
> -XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(LD) $(EFI_LDFLAGS) -o efi/check.efi efi/check.o 2>/dev/null && echo y))
> +EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10
> +XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(call ld-option,$(EFI_LDFLAGS) --image-base=0x100000000 -o efi/check.efi efi/check.o))
> +# If the above failed, it may be merely because of the linker not dealing well
> +# with debug info. Try again with stripping it.
> +ifeq ($(CONFIG_DEBUG_INFO)-$(XEN_BUILD_PE),y-n)
> +EFI_LDFLAGS += --strip-debug
> +XEN_BUILD_PE := $(call ld-option,$(EFI_LDFLAGS) --image-base=0x100000000 -o efi/check.efi efi/check.o)
> +endif
>  
>  ifeq ($(XEN_BUILD_PE),y)
>  
> @@ -232,6 +238,9 @@ note_file_option ?= $(note_file)
>  
>  ifeq ($(XEN_BUILD_PE),y)
>  $(TARGET).efi: prelink.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc
> +ifeq ($(CONFIG_DEBUG_INFO),y)
> +	$(if $(filter --strip-debug,$(EFI_LDFLAGS)),echo,:) "Will strip debug info from $(@F)"
> +endif
>  	$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
>  	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< $(relocs-dummy) \
>  	                $(BASEDIR)/common/symbols-dummy.o $(note_file_option) -o $(@D)/.$(@F).$(base).0 &&) :
> --- a/xen/arch/x86/xen.lds.S
> +++ b/xen/arch/x86/xen.lds.S
> @@ -312,10 +312,60 @@ SECTIONS
>      *(.reloc)
>      __base_relocs_end = .;
>    }
> -  /* Trick the linker into setting the image size to exactly 16Mb. */
> -  . = ALIGN(__section_alignment__);
> -  DECL_SECTION(.pad) {
> -    . = ALIGN(MB(16));
> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
> +     *(.debug_abbrev)
> +  }
> +  .debug_info ALIGN(1) (NOLOAD) : {
> +    *(.debug_info)
> +    *(.gnu.linkonce.wi.*)
> +  }
> +  .debug_types ALIGN(1) (NOLOAD) : {
> +    *(.debug_types)
> +  }
> +  .debug_str ALIGN(1) (NOLOAD) : {
> +    *(.debug_str)
> +  }
> +  .debug_line ALIGN(1) (NOLOAD) : {
> +    *(.debug_line)
> +    *(.debug_line.*)
> +  }
> +  .debug_line_str ALIGN(1) (NOLOAD) : {
> +    *(.debug_line_str)
> +  }
> +  .debug_names ALIGN(4) (NOLOAD) : {
> +    *(.debug_names)
> +  }
> +  .debug_frame ALIGN(4) (NOLOAD) : {
> +    *(.debug_frame)
> +  }
> +  .debug_loc ALIGN(1) (NOLOAD) : {
> +    *(.debug_loc)
> +  }
> +  .debug_loclists ALIGN(4) (NOLOAD) : {
> +    *(.debug_loclists)
> +  }
> +  .debug_ranges ALIGN(8) (NOLOAD) : {
> +    *(.debug_ranges)
> +  }
> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
> +    *(.debug_rnglists)
> +  }
> +  .debug_addr ALIGN(8) (NOLOAD) : {
> +    *(.debug_addr)
> +  }
> +  .debug_aranges ALIGN(1) (NOLOAD) : {
> +    *(.debug_aranges)
> +  }
> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
> +    *(.debug_pubnames)
> +  }
> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
> +    *(.debug_pubtypes)
> +  }
> +  /* Trick the linker into setting the image size to no less than 16Mb. */
> +  __image_end__ = .;
> +  .pad ALIGN(__section_alignment__) : {
> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;

I think this is inside an ifdef EFI region, since this is DWARF info
couldn't it also be present when building with EFI disabled?

Maybe I'm missing part of the point here, sorry.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 11:19:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 11:19:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114412.218036 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZAsx-0005xY-7u; Wed, 21 Apr 2021 11:19:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114412.218036; Wed, 21 Apr 2021 11:19: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 1lZAsx-0005xR-4u; Wed, 21 Apr 2021 11:19:11 +0000
Received: by outflank-mailman (input) for mailman id 114412;
 Wed, 21 Apr 2021 11:19:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZAsv-0005xL-4Z
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 11:19:09 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id da843a40-b44b-4c4f-afda-f69b858b15ce;
 Wed, 21 Apr 2021 11:19: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: da843a40-b44b-4c4f-afda-f69b858b15ce
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619003948;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=+6XvWl9bdtC2Nl6uvoRHyp7BUMwxIRSWx/YJlH7svZc=;
  b=FXoxGGRNXtWiGoN2tb2H0I5OoY/yjkjst1vStOoejtd3NxUdOR3yaXPX
   NA+Q2PFNUd/GqpDe4dxyy0ZDQSinQPKJL2bPiCPtJVS1P6DPgWOlv/Ge6
   3Js3DcH2Xj0aFDFo2gp+MnvmbBVtZyqULqzAh8p12iAjougnG+4J0d9KY
   4=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: GllPV41/79Qfm3pbm33DB67NAG4806KJMntX9qLE9bR6pKfshj1OdKliZWWG3jkFmg5D6u/V/d
 rZEZDh/kRMIYbnI4O4kHpIn7KScUeGKgGLLayJNL1C0HIK9UD7ZV8nhjSCYcs4netoJTClOx3d
 MPUheDRt915GHIP05v4nbKU5rBteTTN8KpnFe0ZQW4AxRHk0mdslNDBDDzfRfcV1a8Vyi0jU/6
 DiPq/P0+EgZ90mf96Gd+1ed8mr+gCyeg9odggpSKT+f8MCpHHvsBJVhc9JN+hhMvtnqhLSMQfZ
 xNA=
X-SBRS: 5.2
X-MesageID: 42070821
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Wcq7d6oX+PlNnfGGy9dT6kIaV5ubKtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQb3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIJg/I
 9aWexFBNX0ZGIWse/T/BS4H9E8wNOO7aCvgqPkw21wSBxxApsA0y5SIG+gYypLbSNBAoc0E4
 fZy8pcvjy7eWkWaMPTPAh+Y8HoodrXmJX6JSMcDxk85wWUyR+u4rj2Ex+Xty1uLg9n67Ek7G
 TDjkjF9ryu2svLsSP0+k3yy9BtmNXnwsZeH8DksKYoAxjllwrAXvUCZ5SspzYwydvfjWoCsN
 6JmBs4OtQ21nW5RBDInTLI+y3NlAkj8GXjz1jwuwqSneXcSCghA8RMwaJ1GyGpknYIh9133K
 JV02/xjfM+Znmh7UeNleTgbB1kmlG5pnAvi4co/gRieLATdaNLqsgn9F5Vea1wbR7S0pwtE+
 VlEajnlZBrWG6dBkqp2lVH8ZiHW3Q+GQq+WU4SusCZ+Cg+pgEG82IogOMYhXsO75Q7Vt1t4P
 nFKL1hkPV0QtYRdr8VPpZMfeKHTkj2BT7cOmObJlrqUIkBJnL2spbypJE4/vujdpAkxIY78a
 6xH29whCoXQQbDGMeO1JpE/lTmW2OmRwngzclY+txQpqD8bKCDC1zCdHke1++b59kPCMzSXP
 i+fLhMBeX4EGfoEYFVmyXjRphpL2UEWsF9gKd7Z3u+5ubwbqH6vO3Sd/jeYJD3Fyw/Z2/5Cn
 wfGBfpIsFt6V2qR2/YjBDdV2iFQD28wbtAVIzhu8QDwokEMYNB9iIPj06i282NITpe9ow6FX
 EOZY/Po+eeny2b7GzI52JmNl52FUBO+ojtVHtMuEsvO0PwerAThsWHdQlprT+6Dy46a/mTPB
 9Uplxx967yBYeX3zoeB9WuNX/fqHcPunSQTdM5lreY7cnoPrM0Z6xWFpBZJEHuLVhYiAxqoG
 BMZEsvXUnEDA7jjq2jkdgzH+HQd951hS+xOs5KoXfjtUGRzPtfBUczbnqLa4q6kAwuTz1bih
 la6KkEmoeNnj6pNC8CmugiCUZNb26WGbpCKwyAaOxv6/fWUTA1aV3PqS2Rihk1dGav00kJnG
 TuIReZfuzxDkNHtmpV1bvr911IZnyQFngAGUxSgMlYLyDrq3xz2eiEau6I32ydZkAr78sdPD
 vGCAFiaT9G9pSS7lq4iTyCHXIpytESJeTbFq0kaKyW8GiqMpe0maYPGOJ08J5pOMv1iPICVf
 uSdmauXXXFItJs/zbQimcuOSFypnVhrOjh3wf96nOkmFE4GvjfLT1dNscmCuDZy1KhYfmG0J
 90141o+cSxN3j8cd6Ax+X8aSVZJhbavG6xSKUJpPlvzNYPnYo2O6Oedz3CkExj9lEZCuzfkU
 sFWqR14LzbIOZUDoQvUhMc2mBsrciFKUsgjxf/DeA/d2w8lnOzBaL935P47Z4URnCbrAT+OV
 Oj4zRQ0vfMUSyEz6MbAcsLUBNrQXl5zHRp5+WZcYLMTC2sauFY5VK/W0XNOoN1eeygGb8KqA
 x97MzNt+iLdzDg0ASVmTdgOKpB/yKGRsy1aTj8VNJgwpifOV6WhLGt79P2pDDrSSGjY0BdvL
 Z7TyUrH41+owhnqpY23Ci0QrH2pUxgs2I220AZqnfdnq684GnaGklaNxb+mZs+Z0gLDkS1
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="42070821"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oNY3AsonH6vUsFjvmJK2W+JEub+lNW3g4TqxCbtA9L9ikDcg0uyL3itPfOkMXE7v8Yp6f5mZUFOVjApEU0sXzc7u9OWZDlcAXNVuuap/ueznHKX3kZvQyHHQIwBIDRYinnuWwOpsw/aBxv7U+My7Gliel79f2K9l2pCm2wzf2PrXhUi6TBU0mPDhtrY9Abhm23V/7g7udRqaJxVpb2gkPUysnwQ378a5SyO/qnfw3ALn74ulk+r6wuZw8gWDMcahSaVNCOLuEzz9/nUpE3afLwzy02DIVq8dsyAD6JMTDqrf/urPY3Bq0WA5Z4oeoafffV+EjEsdlSkOMFMcKU5q3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=i0rv6HCAl+tFxlUdYXYcTMsYDgJDs6qM3Od7H15mVGQ=;
 b=i2e3qhDw96YZPhmcVde/cUKaH/K2f1lTbXer/v9N8Sn8tKupNb/SqGLFEAtRK/ki0jMQ06a59oKKLWuq+5xUlSAkL/XjdIjqFnx3L+czO9COoh/RVpum9BxiSA1JlAVgh03eL+i+PIpnA2KzSYxhQnOhZ/wnOtjda8LmuRMwXRo0UnzYZdahLY4IZbN8uZeJANdmMZyMqUKueJh2EW9uvdPsuytxWTPGjpLSujuewevW+KDBNW1A8vTSkERG7yS7VW4xBuv92UQgZIXVrvATORMBK7x8x2Upq9Qw+Z+Zrxj+8VnZxaLa1Afl683SxpUNbGpcQX79zhpfF+ISk4rNXA==
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=i0rv6HCAl+tFxlUdYXYcTMsYDgJDs6qM3Od7H15mVGQ=;
 b=tb5XmC+g4xiXL17ajXPNMggH1MHGsw/njyRqbvi8LP10M7TF2PRcRlM8jqNshB4QaoB1A/zlHFMwiL5X3mcDt+3aJ8pziT5JysRSEnXKymbqq9D+DakcZkKZeUUK6u+w5P/X4tv2TnpM2cdqUWs97WkEsRBeoF6P9lZE+W1fgfc=
Date: Wed, 21 Apr 2021 13:18:59 +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 8/8] x86/EFI: don't have an overly large image size
Message-ID: <YIAKIx0JuYDzEKqK@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <26ec4a83-cda9-5193-d797-357c05b26ab7@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <26ec4a83-cda9-5193-d797-357c05b26ab7@suse.com>
X-ClientProxiedBy: AM6PR10CA0098.EURPRD10.PROD.OUTLOOK.COM
 (2603:10a6:209:8c::39) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: faab6208-4c1f-4725-7118-08d904b7465c
X-MS-TrafficTypeDiagnostic: DS7PR03MB5463:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB54633614043D7209A0D59FCB8F479@DS7PR03MB5463.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: sK+kk+HZzgO/FZz06Rwel3ouNptvswj+RaJeL+l5TOX9L7e9SzQ690eY9PD1k9OQ4Z+3oOsUgg1KRJ2/la4b1SVN5JN3eGgYhvI2sx34VqfeJ9N4oKDnBfwi1XmyTyzOxUEY/xIindm/KkrCGmlAbOcHbYjIju+IYqWGA3yeUx8cRc4ohOyvaWmai98AkKg/WrXuYOca5+PyPd+MhvZVMFVfGXw3eJXQUhJDDSxBrRG+pfRxHTB26hjbgIoSfR0T8ZR6zmxXmmArVQn2K26ckaU2+K02ELD0Z8ng5e+rZi1VqpTt96wEJLGOdN+L6172OKeYe6Ps2i8fKJ75esDEWo+asPR7VislWjDpFoKbGkBieQMrDiRqISuTdqgeqn3PdgZuvJqAAbBzQaCJ0WfYHETOQq+tcCS3YRU0pT/JcZABn+nWERL8g7c96T7uzq+KBdDJtiuFXACQUc3fk42XIdNQ0PY8cZiGAbXVrAdPXFLJ0rUmIVfWAt4iPi0my2pDgSMUkoMpYSpP+FPsKGBsIVVaQNgUV6vb4noHPCSPz9Py7whBeQByQNGyaItMlfQsECufHFkOe/5SOF/lccdYiZk6gxCkXO2VyflEinvoGiY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(39860400002)(376002)(396003)(366004)(136003)(4326008)(54906003)(26005)(478600001)(186003)(6486002)(6916009)(5660300002)(6496006)(6666004)(956004)(316002)(8676002)(2906002)(16526019)(86362001)(83380400001)(38100700002)(85182001)(66556008)(33716001)(66946007)(66476007)(9686003)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/4KvaLw?=
X-MS-Exchange-CrossTenant-Network-Message-Id: faab6208-4c1f-4725-7118-08d904b7465c
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 11:19:05.7756
 (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: e5JwKZmBnbJU8AOuU/ugGCnwX6eyDK3hMli+NWHnhrGSALCOh6NVUC3RvzKnG1wvrDYS+xQhwhtQ6zD808MjBw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5463
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:47:35AM +0200, Jan Beulich wrote:
> While without debug info the difference is benign (so far), since we pad
> the image to 16Mb anyway, forcing the .reloc section to a 2Mb boundary
> causes subsequent .debug_* sections to go farther beyond 16Mb than
> needed. There's no reason to advance . for establishing __2M_rwdata_end,
> as all data past _end is of no interest at runtime anymore anyway.

So you just expand the load size.

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

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

> ---
> This makes more explicit a possible latent problem with the ELF image:
> It ends at _end, not __2M_rwdata_end (advancing . as was done here does
> not have the effect of increasing the image size). Interestingly the
> conversion xen-syms => xen rounds up the program header specified size
> suitably, as per the comment "Do not use p_memsz: it does not include
> BSS alignment padding" in mkelf32.c. I do think this would instead want
> taking care of in the linker script. Commit 7a95e0a2c572 ("x86: properly
> calculate xen ELF end of image address") clearly only hacked an existing
> hack rather than addressing the root cause. Thoughts?

We should likely define _end after __2M_rwdata_end to account for this
padding?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 11:27:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 11:27:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114418.218048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZB0Y-0006vp-1T; Wed, 21 Apr 2021 11:27:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114418.218048; Wed, 21 Apr 2021 11: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 1lZB0X-0006vi-Ud; Wed, 21 Apr 2021 11:27:01 +0000
Received: by outflank-mailman (input) for mailman id 114418;
 Wed, 21 Apr 2021 11:27:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZB0W-0006vd-CH
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 11:27:00 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c1cf66c6-5ce8-47cb-95f9-7bc232ef4d3c;
 Wed, 21 Apr 2021 11:26: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: c1cf66c6-5ce8-47cb-95f9-7bc232ef4d3c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619004418;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=orrdjUkLg3UeVFB4RobFMNiWAQR1fBympfPY75MVj34=;
  b=VpDDNgDXb3pz0MmAihr3r9JTdr9yd0AcD3/Egsl+6A4QZ/ePV2r1LFl2
   gPmeFpCW215mfe87IHsvIsNMVqKcfBXtIFLKErf4h3cx/vor6eDa4YYq3
   r8CRNtCRmDvkjZdeF4k7HmBb98+K7fi6HoddrBoWRbUUoZxJSM+6xFZ/P
   A=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: jMg5UdUImqcflGpiBpva7Y94D4JFgQC9vpTxJTm7es/2rQg+8g5XcgYWlpp2+Q/THoksqNoFIs
 1dGVV+/KsHBMQy19vPJSYz0FzqukHOo17ITQXOCred/8vsWCvGd7FVtIxrrvqMezjrHaSta7lt
 kTjzpgrEkX8fnJWYI0cSPaUksnfBDK22E+yVxjzj0CpfqJnXmx13hhl9seyFH9WA5m4nF3ffGv
 lhJnOTqpu1TtZTKU7g37EVJpgpC8lgZ/uDlv6M/F3bFmj/lES09m+JcqquX8j6Z4C4YmQMh7K2
 wyo=
X-SBRS: 5.2
X-MesageID: 41902367
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:sOuXR6E6Lffm/PrVpLqFe5TXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7L0/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeOJwTXzcQY76
 tpdsFFZOHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLT1CQYsI1XYeNi+wFEpqSA5aQbc4Do
 Ob/MpbpzymEE5nE/iTLH8DQuTFupn3hIvrCCR2fSIPxSuvqXeT6LD8GwWFxRt2aVJy6Jor7G
 StqX2d2oyNqPe+oyWss1P7z5MTo9f5z8sGOcrksLloFhzJqiKFILtsQKeDujddmpDe1H8PnM
 PXqxkte+RfgkmhBl2dmhfm1wn+3DtG0RaLojX08BiTw72KeBsAB8VMno5feBfCgnBQx+1U66
 5Xw3mf86NeEBKoplWN2/HzSxpomkCoyEBS6NI7sno3a/p4VJZh6aYb/E9TDa4aGjP75I0NAI
 BVfb/hzccTXlWAY3/DuG5zhPSqQ3QoBx+DBnMPo8qPzlFt7TxE5npd4PZasmYL9Zo7RZUBz+
 PYMp5wnLULasMNd6pyCMoIXMPfMB2DfTv8dEapZXj3HqAOPHzA77Tt5q8u2e2scJsUiLMvhZ
 XoSjpjxC4PUnOrLffL8IxA8xjLTmn4dy/q0Nti659wvaC5bKb3MBeEVEsln6Kb0rQiK/yef8
 z2FINdAvflI2erM51OxRfCV55bLmRbf9YSvvo9RlKSsuPGIoDnrYXgAbTuDYuoNQxhdnL0A3
 MFUjS2Dt5H9FqXVnjxhwWUe36FQD27wbtAVIzhu8QDwokEMYNB9iIPj06i282NITpe9og/fE
 50JqLbgrq2zFPGuVrg3iFMAF5wH0xV6LLvXzdhvgkRKX75dr4FppG5dX1N2mCEYjtyVdnfHg
 Iah1kfw9P4E7WggQQZT/63OGOTiHUe4FiQSY0Hp6GF7cD5PrUiDpgnX6R1PR7RFwN8nDtrrG
 srUn5GembvUhfVzYm1hp0dA+/SM/Nmhh2wHMJSoXXD8XmHqdoXXXsdVT62WcuxiQIjLgAkwW
 FZwus6uv6tiDyvIWwwjKAdPEdXYGqaOr5AET+IfZ5ZgLztZQF2Q1qbnDDysWBBRkPas2Epwk
 DxJyydfv/GRmBQvX1VyY7G2lJ5fGf1RTM6VllK9alGUUjWsHd61uGGIpep22yKc10Y36U2Kz
 feewYfJQto2vG63BOYgyy5CH0j35kiV9atSogLQvX24DeAOYeInaYJE7to555jLsnpqfJOfu
 SFeQOZRQmIfd8B6kiwnDICNyZ1onV/zq+t9x3h8WSi3HkwRdDVO09rQrkHI9eaq0joLsz4pK
 lRvJYQh6+XNG60V/utjYfwRBRHIgnIoWG3Q/ozwKok9Z4ahf9WJd3jTTDM1Ht7xx0wI8f/qV
 MGTM1AkcX8E74qW/ZXRjlQ8VUonumeNUcHsgT5BeklYFEm5kWrSO+h0v7tqbA1BFeGqxa1EV
 6D8zdF9/OtZVrI6ZcqT4YxK39Rck4y9TBL+/6DbZTZDEGPe/tY9FS3dl+7f7k1ctnJJZwg6j
 J76cqPhemZam7R3x3RpyJyJuZ2yFmcKPnCST6kKKpv6Ny1OVOFn6us7oqStV7MOESGQnVdo5
 ZEe0wWZtlEkR84guQMo3GPdpA=
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="41902367"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DUbGH8Z6A5NrcFASkPGFWj5pgr82Nc0cpyJwO2uDwbG5Xp8z5Xe8UZkoQPkf1S7Am24oH30FIRqSxxcMRSrwpsYQL2pXgr9jqRzXrQ/GlCy2iNayUzbqod+tGAFR64/qAk/Ah2harJKXN5C62I2SjVzh995JGE+JTKknDZFgL6yAX3xkJ0EqxFNL8cutnGDjJDXGh+zGdoSsHI7mHl9UgpjDqp7yqdgGYwnsfq1b82b3PGm4/PU0A5fGMWdnofqxjnynYeE5jKSLTyLRhpZdW9fecUZh7us7FD9SxwYphDEH/qpB5zae0PUypbHEUGCU54PGyqBuSnga920XrJBWcQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CjA3XpiWFUlWc655WKA0W69uVPRIRbj68f3OjbzNZrQ=;
 b=dneIymlwv8/f/7C9la0j92tOoh5e7xNfykwP+Q1jFeS/sRswEq/U0wvTBCrPF/BRIwHwqMH6/VfqNLVgxoQH4VUhKUGSYcNXxc852NszF0DVOiubDy4udA6Wtq13IPI5PlBVFyYtk9EJkqSCmxMy3xfH+4P4WMR0dsaVodzbcgRJiU5oVBUDbeOrcACjlvASMCnPYCvmvrecQqhyKp1WVJElBk4sbcVUCE9tb+YL7ML4wUXNoYSlKO0dMyWPlMJiLAYhy55fcc3wicUcQ+CLYGGMW3X52K3tEmILNhJ8vSju6zPS1Z9JQnoP9hRDS41OAe9D/2M/T/rZgzgnig9K6g==
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=CjA3XpiWFUlWc655WKA0W69uVPRIRbj68f3OjbzNZrQ=;
 b=KdOSfQhCxdlCd6zDw585+sPewMrz39qjX4j/bVbwLfRIunmiIm6aBZQl4G71gGYVm8widsLVIM8pEfhBYoTNxGBxe+DEsf4T3J5i7PxrBREzQpw0TN51cl9VNd8+bOMARO9vpwGrrp3qhlqbUCHLH4HqAupaQnbHPGTGFdmCzV4=
Date: Wed, 21 Apr 2021 13:26:49 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Wei Liu <wl@xen.org>
CC: <xen-devel@lists.xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Ian Jackson <iwj@xenproject.org>, Anthony PERARD
	<anthony.perard@citrix.com>
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <YIAL+bTKvPsAfM2a@Air-de-Roger>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <20210421102239.tlesqrxsplk5vthm@liuwe-devbox-debian-v2>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20210421102239.tlesqrxsplk5vthm@liuwe-devbox-debian-v2>
X-ClientProxiedBy: MR2P264CA0125.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 80cda1e2-9643-4e67-a0d1-08d904b85eb3
X-MS-TrafficTypeDiagnostic: DM5PR03MB3065:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3065EEF4D24D6EECA380D67B8F479@DM5PR03MB3065.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 5EyMf4UQVNwQ5ucSHQ97qU8VjT0aJHF5+aLABrXFNbXG7RHkI4i3Gcm02raOK+EoCe6P10ehyS70Um43jIHBa1y4CRGJN/E2JTX3o8QAqRL8cx02VhR97KWOJzBYfIHkRwYKTw+5Da5L0P6iQBuX/5Fkq288qtWXEn4C9GjfM5zNwD0gK1yE1nmkummivzyl2PxU1+nmXjah9FgJroqdc/XB0Jspwx0a5Oa2zxVslmeWXjuZc+F6eQob0msE823yhXmnyB76TRyjwrF1DIUvUQ/tmbplvKWCYhyKEaVw8K5Z0JmsbReRAWgKb5tbCAZ5lWkpoOnsPQXCAAnS8S1L0KX910f9GN1fbuNZN/B3R7eDYaHxkpTDqeU8t1D7aybChIKQ+oFojBmjtyjp+335dqzp9FZwP1vEPPOkRvmjfubIsMcdFEFb4s4Nm5JCxuJpsyfGwRj4uRTHnkAPHMWf5iegQVFh24y74TwTMxGLUKWNTIR4irYsK8g6ck/nScoBFNWdkTfuXNtPaTqIjV9HU9g2b7h7UJfCOlUxIP40XQ9cYgr1JAjnQ/e9zgEJgPFZwh9cgJt3AGzk0Mk0zBAIYISk4YcHHIFIEzwu1CMHwY7Zc0Ya9j31qYLm+npfU+GMwsEtYTcUH6iTIlh1T1TYgQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(39860400002)(136003)(396003)(366004)(346002)(16526019)(478600001)(66476007)(316002)(26005)(66946007)(33716001)(6486002)(6916009)(85182001)(86362001)(2906002)(4326008)(6666004)(66556008)(107886003)(8676002)(5660300002)(9686003)(6496006)(8936002)(54906003)(83380400001)(186003)(956004)(38100700002)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 80cda1e2-9643-4e67-a0d1-08d904b85eb3
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 11:26:56.0941
 (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: m4d8k+FJ95l0ymdMlbV6PSOtmQwDz5LxhTvfxvRdmlLiLbRa5ZPuF2Qd9/NI70387Aobhzu2P6VTNauVWh5fcA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3065
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 10:22:39AM +0000, Wei Liu wrote:
> On Tue, Apr 13, 2021 at 04:01:33PM +0200, Roger Pau Monne wrote:
> > Introduce a helper to obtain a compatible cpu policy based on two
> > input cpu policies. Currently this is done by and'ing all CPUID leaves
> > and MSR entries, except for MSR_ARCH_CAPABILITIES which has the RSBA
> > bit or'ed.
> > 
> 
> I thought canonical source for compatibility was to be put into the
> hypervisor, thus all this functionality would be in the hypervisor. Am I
> misremembering?

Andrew said something similar on v1, but I'm not able to figure how
this would be used by the hypervisor.

It's my understating that the toolstack will attempt to generate a CPU
policy and forward it to the hypervisor, which will either accept or
reject it based on the capabilities of the system. I'm not sure I see
why we would need to give the hypervisor two policies in order to
generate a resulting compatible one - it should all be done by the
toolstack AFAICT.

If there's a use case for this being in the hypervisor I'm happy to
add it there, but so far I haven't been able to come up with one
myself, and hence I don't see the need to make the code available.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 11:27:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 11:27:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114422.218060 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZB1D-00071c-BH; Wed, 21 Apr 2021 11:27:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114422.218060; Wed, 21 Apr 2021 11:27:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZB1D-00071V-8C; Wed, 21 Apr 2021 11:27:43 +0000
Received: by outflank-mailman (input) for mailman id 114422;
 Wed, 21 Apr 2021 11:27:42 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=GBrH=JS=intel.com=chao.gao@srs-us1.protection.inumbo.net>)
 id 1lZB1B-00071O-Vh
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 11:27:42 +0000
Received: from mga09.intel.com (unknown [134.134.136.24])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d454bfeb-765d-4557-a325-045a386713c7;
 Wed, 21 Apr 2021 11:27:38 +0000 (UTC)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 21 Apr 2021 04:27:37 -0700
Received: from gao-cwp.sh.intel.com (HELO gao-cwp) ([10.239.159.149])
 by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 21 Apr 2021 04:27: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: d454bfeb-765d-4557-a325-045a386713c7
IronPort-SDR: dkP4CujPo8m3EDoMPhnSk0wxHOBoBnRbUhFadslQNnwYnwDkvAu/5YnEeWTQHB2sYpTsiOMiaM
 DgbOsZqGECCw==
X-IronPort-AV: E=McAfee;i="6200,9189,9960"; a="195795685"
X-IronPort-AV: E=Sophos;i="5.82,238,1613462400"; 
   d="scan'208";a="195795685"
IronPort-SDR: UJ+V1J7VEi4Ck0kzCz/h0TNN0sLaGhQSkmlTCfmoS72BrgmSKiPHjRlX5AAFSjj3KDY/g5RnvB
 9Xzj7OiRSKxQ==
X-IronPort-AV: E=Sophos;i="5.82,238,1613462400"; 
   d="scan'208";a="420958858"
Date: Wed, 21 Apr 2021 19:31:44 +0800
From: Chao Gao <chao.gao@intel.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	xen-devel@lists.xenproject.org,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Kevin Tian <kevin.tian@intel.com>
Subject: Re: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
Message-ID: <20210421113143.GA19384@gao-cwp>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <YH7uX7RqqIS4zdBt@Air-de-Roger>
 <3afbdba8-b25c-985c-6c5f-20077cb37d3f@suse.com>
 <YH7+i/JVnmZGTHOF@Air-de-Roger>
 <9276b757-a340-b0f3-3427-13b7bc5dcb9e@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <9276b757-a340-b0f3-3427-13b7bc5dcb9e@suse.com>
User-Agent: Mutt/1.9.4 (2018-02-28)

On Wed, Apr 21, 2021 at 11:23:13AM +0200, Jan Beulich wrote:
>On 20.04.2021 18:17, Roger Pau Monn wrote:
>> On Tue, Apr 20, 2021 at 05:38:51PM +0200, Jan Beulich wrote:
>>> On 20.04.2021 17:08, Roger Pau Monn wrote:
>>>> On Thu, Apr 02, 2020 at 04:06:06AM +0800, Chao Gao wrote:
>>>>> --- a/xen/drivers/passthrough/vtd/qinval.c
>>>>> +++ b/xen/drivers/passthrough/vtd/qinval.c
>>>>> @@ -442,6 +442,23 @@ int enable_qinval(struct vtd_iommu *iommu)
>>>>>      return 0;
>>>>>  }
>>>>>  
>>>>> +static int vtd_flush_context_noop(struct vtd_iommu *iommu, uint16_t did,
>>>>> +                                  uint16_t source_id, uint8_t function_mask,
>>>>> +                                  uint64_t type, bool flush_non_present_entry)
>>>>> +{
>>>>> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush CONTEXT.\n");
>>>>> +    return -EIO;
>>>>> +}
>>>>> +
>>>>> +static int vtd_flush_iotlb_noop(struct vtd_iommu *iommu, uint16_t did,
>>>>> +                                uint64_t addr, unsigned int size_order,
>>>>> +                                uint64_t type, bool flush_non_present_entry,
>>>>> +                                bool flush_dev_iotlb)
>>>>> +{
>>>>> +    dprintk(XENLOG_ERR VTDPREFIX, "IOMMU: Cannot flush IOTLB.\n");
>>>>> +    return -EIO;
>>>>> +}
>>>>
>>>> I think I would add an ASSERT_UNREACHABLE() to both noop handlers
>>>> above, as I would expect trying to use them without the proper mode
>>>> being configured would point to an error elsewhere?
>>>
>>> If such an assertion triggered e.g. during S3 suspend/resume, it may
>>> lead to the box simply not doing anything useful, without there being
>>> any way to know what went wrong. If instead the system at least
>>> managed to resume, the log message could be observed.
>> 
>> Oh, OK then. I'm simply worried that people might ignore such one line
>> messages, maybe add a WARN?
>
>Hmm, yes, perhaps - would allow seeing right away where the call
>came from. Chao, I'd again be fine to flip the dprintk()-s to
>WARN()-s while committing. But of course only provided you and
>Kevin (as the maintainer) agree.

Sure, please go ahead.

Thanks
Chao


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 11:33:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 11:33:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114428.218071 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZB6Z-0007v7-Vy; Wed, 21 Apr 2021 11:33:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114428.218071; Wed, 21 Apr 2021 11: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 1lZB6Z-0007v0-SY; Wed, 21 Apr 2021 11:33:15 +0000
Received: by outflank-mailman (input) for mailman id 114428;
 Wed, 21 Apr 2021 11:33:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZB6Y-0007uv-SL
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 11:33:14 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZB6T-0006bq-Pj; Wed, 21 Apr 2021 11:33:09 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZB6T-00011H-8c; Wed, 21 Apr 2021 11: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Mime-Version:Content-Type:
	References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID;
	bh=juYVv4d3TsbZwECgzB5+Fg64OH98X8D4BCQCHjNsMpM=; b=O44/ZpYsu2HVCN6TuiIkk43CsF
	qpVWC/a/w5eG6luThFXyrA0uf/gXxOH4fA6lPQSau2Epe45fxL5SCVC545JVSlh0iwqwwtqXS4SrY
	zyUxIXJaOc7+//qGQFIdxiCcatyOm60avmbQzCNa9c1N55sJVsT5lx/IL9SfaybNrlR8=;
Message-ID: <2ceae314e9e634ef7e9bebf7f64653f25fa97dd6.camel@xen.org>
Subject: Re: [PATCH v9 01/13] x86/mm: rewrite virt_to_xen_l*e
From: Hongyan Xia <hx242@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: jgrall@amazon.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>, 
	xen-devel@lists.xenproject.org
Date: Wed, 21 Apr 2021 12:33:05 +0100
In-Reply-To: <fbc4a42f-549b-515f-279f-92466f89af79@suse.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
	 <b70cc7c0854a6a25b00624b5fa83684a20916ca3.1617706782.git.hongyxia@amazon.com>
	 <fbc4a42f-549b-515f-279f-92466f89af79@suse.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit

On Tue, 2021-04-20 at 14:17 +0200, Jan Beulich wrote:
> On 06.04.2021 13:05, Hongyan Xia wrote:
> > From: Wei Liu <wei.liu2@citrix.com>
> > 
> > Rewrite those functions to use the new APIs. Modify its callers to
> > unmap
> > the pointer returned. Since alloc_xen_pagetable_new() is almost
> > never
> > useful unless accompanied by page clearing and a mapping, introduce
> > a
> > helper alloc_map_clear_xen_pt() for this sequence.
> > 
> > Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> > Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
> > 
> > ---
> > Changed in v9:
> > - use domain_page_map_to_mfn() around the L3 table locking logic.
> > - remove vmap_to_mfn() changes since we now use xen_map_to_mfn().
> > 
> > Changed in v8:
> > - s/virtual address/linear address/.
> > - BUG_ON() on NULL return in vmap_to_mfn().
> > 
> > Changed in v7:
> > - remove a comment.
> > - use l1e_get_mfn() instead of converting things back and forth.
> > - add alloc_map_clear_xen_pt().
> 
> I realize this was in v7 already, but at v6 time the name I suggested
> was
> 
> void *alloc_mapped_pagetable(mfn_t *mfn);
> 
> "alloc_map_clear_xen", for my taste at least, is too strange. It
> doesn't really matter whether it's a page table for Xen's own use
> (it typically will be), so "xen" could be dropped. Clearing of a
> page table ought to also be the rule rather than the exception, so
> I'd see "clear" also dropped. I'd be fine with alloc_map_pt() or
> about any intermediate variant between that and my originally
> suggested name.

Sounds reasonable. I will go with alloc_mapped_pagetable().

> 
> > @@ -5108,7 +5140,8 @@ int map_pages_to_xen(
> >      unsigned int flags)
> >  {
> >      bool locking = system_state > SYS_STATE_boot;
> > -    l2_pgentry_t *pl2e, ol2e;
> > +    l3_pgentry_t *pl3e = NULL, ol3e;
> > +    l2_pgentry_t *pl2e = NULL, ol2e;
> >      l1_pgentry_t *pl1e, ol1e;
> >      unsigned int  i;
> >      int rc = -ENOMEM;
> > @@ -5132,15 +5165,16 @@ int map_pages_to_xen(
> >  
> >      while ( nr_mfns != 0 )
> >      {
> > -        l3_pgentry_t *pl3e, ol3e;
> > -
> > +        /* Clean up the previous iteration. */
> >          L3T_UNLOCK(current_l3page);
> > +        UNMAP_DOMAIN_PAGE(pl3e);
> > +        UNMAP_DOMAIN_PAGE(pl2e);
> 
> Doing this here suggests the lower-case equivalent is needed at the
> out label, even without looking at the rest of the function (doing
> so confirms the suspicion, as there's at least one "goto out" with
> pl2e clearly still mapped).
> 
> > @@ -5305,6 +5339,8 @@ int map_pages_to_xen(
> >                  pl1e = virt_to_xen_l1e(virt);
> >                  if ( pl1e == NULL )
> >                      goto out;
> > +
> > +                UNMAP_DOMAIN_PAGE(pl1e);
> >              }
> 
> Unmapping the page right after mapping it looks suspicious. I see
> that
> further down we have
> 
>             pl1e  = l2e_to_l1e(*pl2e) + l1_table_offset(virt);
> 
> but don't you need to also change that? Actually, you do in patch 2,
> but the latest then the double mapping should imo be avoided.

I would say the code was already suspicious to begin with, since pl1e
would be overwritten immediately below even before this patch. The
purpose of the virt_to_xen_l1e() is only to populate the L1 table.

Performance-wise the double map should be pretty harmless since the
mapping is in the cache, so I actually prefer it as is. Alternatively,
I can initialise pl1e to NULL at the beginning of the block and only do
the

pl1e  = l2e_to_l1e(*pl2e) + l1_table_offset(virt);

when the pl1e is still NULL. If you are okay I will go with this.

> 
> > @@ -5505,6 +5542,7 @@ int populate_pt_range(unsigned long virt,
> > unsigned long nr_mfns)
> >  int modify_xen_mappings(unsigned long s, unsigned long e, unsigned
> > int nf)
> >  {
> >      bool locking = system_state > SYS_STATE_boot;
> > +    l3_pgentry_t *pl3e = NULL;
> >      l2_pgentry_t *pl2e;
> >      l1_pgentry_t *pl1e;
> >      unsigned int  i;
> 
> And here we have the opposite situation: You don't set pl2e to NULL
> and the function only uses l3e_to_l2e() to initialize the variable,
> yet ...
> 
> > @@ -5761,6 +5799,8 @@ int modify_xen_mappings(unsigned long s,
> > unsigned long e, unsigned int nf)
> >  
> >   out:
> >      L3T_UNLOCK(current_l3page);
> > +    unmap_domain_page(pl2e);
> > +    unmap_domain_page(pl3e);
> 
> ... here you try to unmap it. Did the two respective hunks somehow
> magically get swapped?

Since the +-3 contexts of the two hunks are exactly the same, I have
strong suspicion what you said is exactly what happened. Thank you for
spotting this.

> 
> > --- a/xen/common/vmap.c
> > +++ b/xen/common/vmap.c
> > @@ -1,6 +1,7 @@
> >  #ifdef VMAP_VIRT_START
> >  #include <xen/bitmap.h>
> >  #include <xen/cache.h>
> > +#include <xen/domain_page.h>
> 
> Why is this needed? (Looks like a now stale change.)

Stale change indeed. Will be removed.

Hongyan



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 11:39:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 11:39:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114436.218084 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZBCs-0008CU-Nj; Wed, 21 Apr 2021 11:39:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114436.218084; Wed, 21 Apr 2021 11:39:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZBCs-0008CN-Ki; Wed, 21 Apr 2021 11:39:46 +0000
Received: by outflank-mailman (input) for mailman id 114436;
 Wed, 21 Apr 2021 11:39:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZBCr-0008CI-7g
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 11:39:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 40a5b561-d373-4336-bebb-401d93ce0d82;
 Wed, 21 Apr 2021 11:39:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B5AC3AF1E;
 Wed, 21 Apr 2021 11:39: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: 40a5b561-d373-4336-bebb-401d93ce0d82
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619005182; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ImvxREUdGnlNVdtXxxEQIaXxRab3C6iMtTwjV8onVq4=;
	b=l/PSTZRygk6DVwGCBA/JWQkdBnCt1TSyNjeBUOe+zNvFUJPfJwE3UtsTSJ6yERsDevS+ce
	8DMCsU/XZUL9pVoVe2EA7hZ+i0ASAy6naNOTRFy4FeBw3d7wCf6e7TcS7jPfzuW5VMVFxJ
	Q71G0JypEmBL+oIl80zMPHCLKFKRkB4=
Subject: Re: [PATCH v9 01/13] x86/mm: rewrite virt_to_xen_l*e
To: Hongyan Xia <hx242@xen.org>
Cc: jgrall@amazon.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
References: <cover.1617706782.git.hongyxia@amazon.com>
 <b70cc7c0854a6a25b00624b5fa83684a20916ca3.1617706782.git.hongyxia@amazon.com>
 <fbc4a42f-549b-515f-279f-92466f89af79@suse.com>
 <2ceae314e9e634ef7e9bebf7f64653f25fa97dd6.camel@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <cd5ccad0-d0ec-ccfc-eced-1a7b05071643@suse.com>
Date: Wed, 21 Apr 2021 13:39:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <2ceae314e9e634ef7e9bebf7f64653f25fa97dd6.camel@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 13:33, Hongyan Xia wrote:
> On Tue, 2021-04-20 at 14:17 +0200, Jan Beulich wrote:
>> On 06.04.2021 13:05, Hongyan Xia wrote:
>>> @@ -5305,6 +5339,8 @@ int map_pages_to_xen(
>>>                  pl1e = virt_to_xen_l1e(virt);
>>>                  if ( pl1e == NULL )
>>>                      goto out;
>>> +
>>> +                UNMAP_DOMAIN_PAGE(pl1e);
>>>              }
>>
>> Unmapping the page right after mapping it looks suspicious. I see
>> that
>> further down we have
>>
>>             pl1e  = l2e_to_l1e(*pl2e) + l1_table_offset(virt);
>>
>> but don't you need to also change that? Actually, you do in patch 2,
>> but the latest then the double mapping should imo be avoided.
> 
> I would say the code was already suspicious to begin with, since pl1e
> would be overwritten immediately below even before this patch. The
> purpose of the virt_to_xen_l1e() is only to populate the L1 table.
> 
> Performance-wise the double map should be pretty harmless since the
> mapping is in the cache, so I actually prefer it as is. Alternatively,
> I can initialise pl1e to NULL at the beginning of the block and only do
> the
> 
> pl1e  = l2e_to_l1e(*pl2e) + l1_table_offset(virt);
> 
> when the pl1e is still NULL. If you are okay I will go with this.

I'd prefer this alternative, indeed, as it'll make the overall
code look less odd. Albeit maybe not here, but in the subsequent
patch.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 11:55:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 11:55:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114441.218095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZBSL-0001cC-2l; Wed, 21 Apr 2021 11:55:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114441.218095; Wed, 21 Apr 2021 11: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 1lZBSK-0001c5-VP; Wed, 21 Apr 2021 11:55:44 +0000
Received: by outflank-mailman (input) for mailman id 114441;
 Wed, 21 Apr 2021 11:55:43 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3IT8=JS=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lZBSJ-0001c0-LD
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 11:55:43 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:7e1a::60e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3b3a6908-9514-4acd-9307-bfa40afbb5b9;
 Wed, 21 Apr 2021 11:55:40 +0000 (UTC)
Received: from DB6PR07CA0013.eurprd07.prod.outlook.com (2603:10a6:6:2d::23) by
 AM9PR08MB7030.eurprd08.prod.outlook.com (2603:10a6:20b:41c::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Wed, 21 Apr
 2021 11:55:37 +0000
Received: from DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:6:2d:cafe::a1) by DB6PR07CA0013.outlook.office365.com
 (2603:10a6:6:2d::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.16 via Frontend
 Transport; Wed, 21 Apr 2021 11:55:37 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT036.mail.protection.outlook.com (10.152.20.185) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.16 via Frontend Transport; Wed, 21 Apr 2021 11:55:37 +0000
Received: ("Tessian outbound 82c2d58b350b:v90");
 Wed, 21 Apr 2021 11:55:37 +0000
Received: from 323849ebd4df.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 AFF5670C-01DD-4177-84E2-9E97072ACC64.1; 
 Wed, 21 Apr 2021 11:55:21 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 323849ebd4df.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 21 Apr 2021 11:55:21 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AS8PR08MB6229.eurprd08.prod.outlook.com (2603:10a6:20b:295::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Wed, 21 Apr
 2021 11:55:19 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4042.024; Wed, 21 Apr 2021
 11:55:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3b3a6908-9514-4acd-9307-bfa40afbb5b9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LOWM6Wbom7DsgYxCTq77Z9YVY2l4dRnfH0e0WRVcJ58=;
 b=Xu2Ydm1kdYkQG2ZE2iyFEbeDpCQyevQMRiIimxgWheovg8ca7ok+K2nELRjD89nidWUXB6/jBu4JVEDdsOUQg+tHbh/FvnhuVKbIIQQalp6+mNUB1kZQ9/JnpsNYJX0GhkUrqlq53dc6hKt+JYn3E/1A9uDy6tUiqsMvjjZuTD0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: e9ef80f730aa149f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DCcYdywrKPQm8b+Dh5GOQUUBURdUFonCbEK82WW2lNJ+YRmnG2komwou5vF6GU9l7UpTiCDW88ZhHHrSk4DCF1sWXWOHGuI9nBVs+p43muJy3AyFPYO53Zp7jNGxwLLU1sNTnz4czH3gcEucuIjY1epO+tAagy1b6AEUabX9IW+TK1UkcSyNcBisvgFbs58NN3wwbAy8q7c16eTlicJIjDQUBCLCSDi97Vj1+dOFUbAFnXpocxon6NZp4jxtQua3c8l6wvD/bMLWYBDF0mkrhupLu1htCI8SmVatmVkKtZek+COTDX01gpIgGAHKiMoShX7tpdN0YMR/kDB90Svsjw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LOWM6Wbom7DsgYxCTq77Z9YVY2l4dRnfH0e0WRVcJ58=;
 b=G+BC7uWcu3m6VRGm4chwjDjfmZ+GHS50Ou4utRaoUNxSevTEAqjHF2/GEoELX3N5eQqQnRjPw6wdOpHnkjkfWtG1t+2/Q29IcfwnsXEJ50tnc0lPaRm5sZpvTw2+L7Sc3aJiHh9YHA96kmRCxmFj5zA0iwvbNkfasq/TRRGSijw0fEBTcojKbZuuBFzVwgwLDl8NpDy4GNNmsAsg/GfyJoher5zD6CWBxtpHO913aJTWxGKQ3tER+RlNDH4SAJzj3obEtJmnfL0NpG8KoZQKTS65FlfU2TnHKXwme1u9TwCe6c5MxHrrpyKgL1rNfKJHfyIK77/qWso6KeimLR8Y4Q==
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=LOWM6Wbom7DsgYxCTq77Z9YVY2l4dRnfH0e0WRVcJ58=;
 b=Xu2Ydm1kdYkQG2ZE2iyFEbeDpCQyevQMRiIimxgWheovg8ca7ok+K2nELRjD89nidWUXB6/jBu4JVEDdsOUQg+tHbh/FvnhuVKbIIQQalp6+mNUB1kZQ9/JnpsNYJX0GhkUrqlq53dc6hKt+JYn3E/1A9uDy6tUiqsMvjjZuTD0=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, Julien Grall
	<julien@xen.org>, xen-devel <xen-devel@lists.xenproject.org>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Topic: [PATCH v2] xen/pci: Refactor PCI MSI interrupts related code
Thread-Index:
 AQHXLVmJnBz/2T+xZEqfD4R39q2wV6qwuDwAgAH9VwCAAPmtgIAADD+AgAHfkACAAAF1gIAF4LkAgAAXZQCAACuvgIAACpEAgAAKwACAAaaJgIAAHu8AgAEU14CAAAJ+AIAAEH4AgAAFRgCAACeAgA==
Date: Wed, 21 Apr 2021 11:55:19 +0000
Message-ID: <776600A6-9050-4FAC-A3B5-C5DAF9A48CA7@arm.com>
References: <YHg+6rLN0rBWXcTs@Air-de-Roger>
 <788665ad-9815-e3e9-2d5a-851b35c566d0@xen.org>
 <AD2BC1CD-74AF-48FF-8B42-2853C0E7A7BE@arm.com>
 <YH1CBP8At7lVoHCz@Air-de-Roger>
 <a365ffbd-5b88-85c3-9e68-46a9a730a6fa@suse.com>
 <0d5539e3-32e3-8275-f695-351eda49cb29@xen.org>
 <6291effa-1589-1013-e89d-c795bce44d9c@suse.com>
 <D2D9A348-3B21-47FD-A9C6-4C66C5778F11@arm.com>
 <a1beaee4-0d6b-e38e-07f7-90a014c504b6@suse.com>
 <30D00B1B-ECB9-4A5B-ACBD-37E532285CCD@arm.com>
 <YH/fQpgEQyhiaj1Y@Air-de-Roger>
 <DA4D72F4-CD1E-46D0-9D32-D8AB01F445F9@arm.com>
 <106baee5-014a-37bd-c8e9-e06b5db5e0e2@suse.com>
In-Reply-To: <106baee5-014a-37bd-c8e9-e06b5db5e0e2@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: affb95bd-8b2b-44b9-1b5f-08d904bc609c
x-ms-traffictypediagnostic: AS8PR08MB6229:|AM9PR08MB7030:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM9PR08MB7030B83ED1542AF609AFE70EFC479@AM9PR08MB7030.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 YtU6gUtEMTtngJq5xsUwWxF01oVF1GhozITrD0BeRFWlnsZ5L/uUgExZD/24mxwHgDsvQ3H+dMTpR+QRXWr2zg3WqwTWqwl0fQRx+eSLU9v/lv9woscSds8U0eCbvnGcL1KR1Pp0QARQJ9Jo9NP6QJFVyVeCf0+gIP+e1llbwrF37ne0U1e2WECzo2DX/zVOb9Kw5fVx1Y9na4XflvKVQ7jZH6NLoj5xL6kyy8yP6OJR41bVPPMpLV45wx5bg8/NYhCKXCbdqGSurIM8E6ZgN5AL5SOD5sz/oja5rbml48QeViieDCwFzjjdc30YbajCSN6Mf+IQpbIipUsOGqDGFsPVlA7ERyWTeVJEfcsIg67aDlRCP0Cz7D8Mm+BEhs35AWF9QSUbXSH3sfIHRwEitajsXqjiGwHDJbFeEvCy5f65DKtHQyt+jeLZbwDrmdek8scEl5Q3BN8K48nXDw18n1OXBjWP3xAol7N7tiFim8vNj5TFUORP5iedUcGAlxUw66iCtnlEAt22IfoldVsMdI2ylC9urVGEJYnUc5ToBLLtMvjHyaPrhNOVfsUnmGr87tCrj2BLfS8w09YeWKkV0Zgp3ak1MQrZYD8mMVKBwvxyC2Gslqa8FYyZcYj9wGAx/ESnxLvw+0zR+OBe9Ar3OtSZ0t2QrtRSj7cj7HUJJP0=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39850400004)(346002)(366004)(376002)(136003)(396003)(5660300002)(6916009)(33656002)(7416002)(83380400001)(86362001)(64756008)(91956017)(66946007)(36756003)(66446008)(66556008)(76116006)(66476007)(6512007)(2616005)(186003)(4326008)(71200400001)(8676002)(53546011)(122000001)(478600001)(6486002)(6506007)(38100700002)(316002)(54906003)(8936002)(2906002)(26005)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?utf-8?B?TWR3UFFwZklYWFZWMHlXZkhQQlhLNngwVEFmZUpKSW1JeisxQU5TSjQ2Zm1l?=
 =?utf-8?B?VGlEMzNDOFc0MEtNR2llSG1scWx6bFAyYUJSN1BhSmFzdDBrM0thZVQzdTcy?=
 =?utf-8?B?Nlp1UURCMXZhRjkwaVEybUNNZEZidUIyOHJvVmtOWU5idWZ5elhNU0xUczRt?=
 =?utf-8?B?RkxjckV1ZmhwNEhwWUFPcEJ4WGt3aVNtTVVsamhIQzJRYjFSYzJNSzFyelJ1?=
 =?utf-8?B?YzBGYUw1VnBydjBQcjV1VWRiMnVrRzE3Tk0vQkI1akRHN2VjOXErRFRHdTdS?=
 =?utf-8?B?bEtTcU5GS2RZTkFwd3hCUjZUeFJrWWFNVFlRWkRFMGhpTndETmxsWWdYeHFR?=
 =?utf-8?B?UXdaRUJYeTNJMUF0U3hSZGVNMkU1ZjN3Vm1taFZVcHE4VGZ5VkZlWUV0MTd6?=
 =?utf-8?B?VlBMWU1DLzRUOUQ4bnpmNmp0M0QrdmRwN3h1eEhoby8zY2NQQmRTbTRKSVBT?=
 =?utf-8?B?SmE2VFl6ZGlxMVNVVExRU0tueFRDZ1BORlRNUXU2eGRsVTROUnA0cUswT1Bn?=
 =?utf-8?B?QkwvdUJrVGlzempsQlExa3U3T3B6dzd3Z0NLVC9KOGlMUURvVDRTTWRYd3Bz?=
 =?utf-8?B?YzdrckU0Z2Q3Tlp0elUxUmgwWE0vMndNby9ONHF2VjdOYktIY0lNVG81c3pn?=
 =?utf-8?B?Qk1zUFRFaUFZU2E3ZlNGQWM1VHRSakR3NEh4cFJlYXhNb2tmejFNZWNXemJD?=
 =?utf-8?B?dFVxUWJqWGkvSDRBS3dDaDBLL2huV2VoQ0hlNXVJb3ZrV2lSZXZFbm54SDlL?=
 =?utf-8?B?SE85dHdqcE5kdXc2TXpTQXNSeFZSNG9EMFRGemJLTUxaNmxUM0t0WHVhdTFx?=
 =?utf-8?B?ODUzd1M4K3p0OXFIZ1VGQkFMQTRGQWtxRXFiVnBrQVNpRTEzNUxObStZOVRi?=
 =?utf-8?B?R0FxbldVZWRwSDlKNHYreXZlZGUwR3FpV3d5OUlHdWVlTm5xZmNOSlNMOFBB?=
 =?utf-8?B?U3dvaHRrUW5uNlA4SUtaTVZYRThsU0VXTHJwYk9nZ2xyUFFyd0dDbkpBUE8v?=
 =?utf-8?B?aytmdU1HSjlwb0JYSkNOT3l6aGtHNmMrUndpZk8weEhZR1pMYnA0SHN2ZTJh?=
 =?utf-8?B?c3dDZWl3Z0ZkSTUxOTJXY09zc0lRZVpIQ1hhejJnQVlwOVlYR1ArbXQ0S0JD?=
 =?utf-8?B?dTljWlluVm5SK1lYbEo1UEFIOTE3SVNIRHAyQVhWMllRMEJOS2tvSldQeUtn?=
 =?utf-8?B?R2R6cm1FWG5UNFZ2T1BNTXlRRVdHOWNXY29BZE9oR3BRcjdtdk0xbURNdDlI?=
 =?utf-8?B?V1dqNkVjbmxEaUJrcFlHQ0c0VEw3UC9tb2R1QlBOdWNod2NmS3BwN3ByeTN6?=
 =?utf-8?B?aW9jWk5IL1Q0eCs1NkMwYnp4WUdYU0lRUGZRSW9SN0hWS2NGTnZGKzVhTCti?=
 =?utf-8?B?MXgxNzkwVitER3pINHBqWkpXMHg2RFlGLzdNZEhDMEVORlhxQndiZHMreTJi?=
 =?utf-8?B?OTZMbnpUcmVnMlNIbElGb25yOElVRmdBYVFIcmN5V2xacXRqd0dua0U2WEVL?=
 =?utf-8?B?T1cyZ0p1YTJlUVV1OXNxWmF1c0ZjQWZsdXdkVXFSeUw4TmljNW9wQUNPdjJp?=
 =?utf-8?B?c2FtNnk3NDNaVEpFUTJaSGh2Q2VFM0FEUkFlWGRBalNXQzFqdzNMckpUVU0w?=
 =?utf-8?B?ZHFJSG5qdi9TTE9VUk5vNE52M2lHTXZOWVJldG15TmVvU01nUncvVERtMUFR?=
 =?utf-8?B?Zjc5MXZHK29FMjJ3VFBlOGpiTDRsMmcxV2l5NHNXSC8zcHFzRnIyU0gzSlUv?=
 =?utf-8?Q?4K1FAeV4rG8QbqtSpDxGwK/2sjx/Avwna8zQ2jO?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <0FCE02C5CACCB74CB86CBFDDB6FB8072@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6229
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	4ebd87ac-2e14-4535-a776-08d904bc5628
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UoCj94MqwgOxrlDmq7cDJ1h6bBXi0YxjKzffWxPODLnzRtmct8PRIm9/dT3LpptH0e1AZEKi6SdUxSNfshhF1RzsqLebt+m9r4wHJTCOfeHKxFbJWdCRbYXRTunha8tSJmRPTGof9dh2PSem8ok5tVWXidcDCBtSknloVm8eR/XPTCopQKmliUP+mxMRiMTemcN1M+lh46Ix4NEOIXA0oQoOx+qyzLhg4XD9V3GqNLLngjVxh073w9J0LhJQWP4x+pk9d/prse/Kf6Xg5UHRjBvhZm85l4Hzgh55gjjJN4e0bl0VZLh9gVQ9tHyDD+l7Op52NR7eW2+03qkddyX+xE6LUCYil1vHwgS2T7eYp12uvGOLYYTYsV3jbtqQDp5Y+kRmutsnusFIaVknG9GoPzN3q7gFikDLi8NgWK8vo3b69U6/JIvtXqwPARWFRj66rRLrtzRabXkh30YBjNubJ/KTLHfDgW3EU161sMVGuyK95fcegHnN6guWL36RMvZwbFe9EdcJiINQ/Tu/hvEDJmDEkt0Kccw5nDSszS/bVHR3EoamAby2SvvQxvxdFauu7jsvaqEHJu+jYrwAxGVNgSIQ4QPgX30j3xoDEMLo+q0JCvMYWbEz57UxFEwOtrRY08OTkwNQfpasdjGVo7hEjwvlPKHHERdQymV4q0i7MkU=
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:(4636009)(376002)(346002)(396003)(39850400004)(136003)(36840700001)(46966006)(4326008)(81166007)(186003)(26005)(6506007)(6862004)(478600001)(82740400003)(53546011)(36756003)(33656002)(36860700001)(86362001)(8676002)(47076005)(2616005)(5660300002)(2906002)(6486002)(70206006)(54906003)(356005)(336012)(83380400001)(70586007)(6512007)(316002)(82310400003)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 11:55:37.0771
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: affb95bd-8b2b-44b9-1b5f-08d904bc609c
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:
	DB5EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB7030

SGkgSmFuLA0KDQo+IE9uIDIxIEFwciAyMDIxLCBhdCAxMDozMyBhbSwgSmFuIEJldWxpY2ggPGpi
ZXVsaWNoQHN1c2UuY29tPiB3cm90ZToNCj4gDQo+IE9uIDIxLjA0LjIwMjEgMTE6MTUsIFJhaHVs
IFNpbmdoIHdyb3RlOg0KPj4gSGkgUm9nZXIsDQo+PiANCj4+PiBPbiAyMSBBcHIgMjAyMSwgYXQg
OToxNiBhbSwgUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+IHdyb3RlOg0K
Pj4+IA0KPj4+IE9uIFdlZCwgQXByIDIxLCAyMDIxIGF0IDA4OjA3OjA4QU0gKzAwMDAsIFJhaHVs
IFNpbmdoIHdyb3RlOg0KPj4+PiBIaSBKYW4sDQo+Pj4+IA0KPj4+Pj4gT24gMjAgQXByIDIwMjEs
IGF0IDQ6MzYgcG0sIEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+Pj4+
PiANCj4+Pj4+IE9uIDIwLjA0LjIwMjEgMTU6NDUsIFJhaHVsIFNpbmdoIHdyb3RlOg0KPj4+Pj4+
PiBPbiAxOSBBcHIgMjAyMSwgYXQgMTozMyBwbSwgSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2Uu
Y29tPiB3cm90ZToNCj4+Pj4+Pj4gT24gMTkuMDQuMjAyMSAxMzo1NCwgSnVsaWVuIEdyYWxsIHdy
b3RlOg0KPj4+Pj4+Pj4gRm9yIHRoZSB0aW1lIGJlaW5nLCBJIHRoaW5rIG1vdmUgdGhpcyBjb2Rl
IGluIHg4NiBpcyBhIGxvdCBiZXR0ZXIgdGhhbiANCj4+Pj4+Pj4+ICNpZmRlZiBvciBrZWVwIHRo
ZSBjb2RlIGluIGNvbW1vbiBjb2RlLg0KPj4+Pj4+PiANCj4+Pj4+Pj4gV2VsbCwgSSB3b3VsZCBw
ZXJoYXBzIGFncmVlIGlmIGl0IGVuZGVkIHVwIGJlaW5nICNpZmRlZiBDT05GSUdfWDg2Lg0KPj4+
Pj4+PiBJIHdvdWxkIHBlcmhhcHMgbm90IGFncmVlIGlmIHRoZXJlIHdhcyBhIG5ldyBDT05GSUdf
KiB3aGljaCBvdGhlcg0KPj4+Pj4+PiAoZnV0dXJlKSBhcmNoLWVzIGNvdWxkIHNlbGVjdCBpZiBk
ZXNpcmVkLg0KPj4+Pj4+IA0KPj4+Pj4+IEkgYWdyZWUgd2l0aCBKdWxpZW4gbW92aW5nIHRoZSBj
b2RlIHRvIHg4NiBmaWxlIGFzIGN1cnJlbnRseSBpdCBpcyByZWZlcmVuY2VkIG9ubHkgaW4geDg2
IGNvZGUNCj4+Pj4+PiBhbmQgYXMgb2Ygbm93IHdlIGFyZSBub3Qgc3VyZSBob3cgb3RoZXIgYXJj
aGl0ZWN0dXJlIHdpbGwgaW1wbGVtZW50IHRoZSBJbnRlcnJ1cHQgcmVtYXBwaW5nDQo+Pj4+Pj4g
KHZpYSBJT01NVSBvciBhbnkgb3RoZXIgbWVhbnMpLiAgDQo+Pj4+Pj4gDQo+Pj4+Pj4gTGV0IG1l
IGtub3cgaWYgeW91IGFyZSBvayB3aXRoIG1vdmluZyB0aGUgY29kZSB0byB4ODYuDQo+Pj4+PiAN
Cj4+Pj4+IEkgY2FuJ3QgYW5zd2VyIHRoaXMgd2l0aCAieWVzIiBvciAibm8iIHdpdGhvdXQga25v
d2luZyB3aGF0IHRoZSBhbHRlcm5hdGl2ZQ0KPj4+Pj4gd291bGQgYmUuIEFzIHNhaWQsIGlmIHRo
ZSBhbHRlcm5hdGl2ZSBpcyBDT05GSUdfWDg2ICNpZmRlZi1hcnksIHRoZW4geWVzLg0KPj4+Pj4g
SWYgYSBzZXBhcmF0ZSBDT05GSUdfKiBnZXRzIGludHJvZHVjZWQgKGFuZCBzZWxlY3RlZCBieSBY
ODYpLCB0aGVuIGENCj4+Pj4+IHNlcGFyYXRlIGZpbGUgKGdldHRpbmcgYnVpbHQgb25seSB3aGVu
IHRoYXQgbmV3IHNldHRpbmcgaXMgeSkgd291bGQgc2VlbQ0KPj4+Pj4gYmV0dGVyIHRvIG1lLg0K
Pj4+PiANCj4+Pj4gSSBqdXN0IG1hZGUgYSBxdWljayBwYXRjaC4gUGxlYXNlIGxldCBtZSBrbm93
IGlmIGJlbG93IHBhdGNoIGlzIG9rLiBJIG1vdmUgdGhlIGRlZmluaXRpb24gdG8gICJwYXNzdGhy
b3VnaC94ODYvaW9tbXUuY+KAnSBmaWxlLg0KPj4+PiANCj4+Pj4gZGlmZiAtLWdpdCBhL3hlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMN
Cj4+Pj4gaW5kZXggNzA1MTM3ZjhiZS4uMTk5Y2UwODYxMiAxMDA2NDQNCj4+Pj4gLS0tIGEveGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCj4+Pj4gKysrIGIveGVuL2RyaXZlcnMvcGFzc3Ro
cm91Z2gvcGNpLmMNCj4+Pj4gQEAgLTEzMDMsMTMgKzEzMDMsNiBAQCBzdGF0aWMgaW50IF9faW5p
dCBzZXR1cF9kdW1wX3BjaWRldnModm9pZCkNCj4+Pj4gfQ0KPj4+PiBfX2luaXRjYWxsKHNldHVw
X2R1bXBfcGNpZGV2cyk7DQo+Pj4+IA0KPj4+PiAtaW50IGlvbW11X3VwZGF0ZV9pcmVfZnJvbV9t
c2koDQo+Pj4+IC0gICAgc3RydWN0IG1zaV9kZXNjICptc2lfZGVzYywgc3RydWN0IG1zaV9tc2cg
Km1zZykNCj4+Pj4gLXsNCj4+Pj4gLSAgICByZXR1cm4gaW9tbXVfaW50cmVtYXANCj4+Pj4gLSAg
ICAgICAgICAgPyBpb21tdV9jYWxsKCZpb21tdV9vcHMsIHVwZGF0ZV9pcmVfZnJvbV9tc2ksIG1z
aV9kZXNjLCBtc2cpIDogMDsNCj4+Pj4gLX0NCj4+Pj4gLQ0KPj4+PiBzdGF0aWMgaW50IGlvbW11
X2FkZF9kZXZpY2Uoc3RydWN0IHBjaV9kZXYgKnBkZXYpDQo+Pj4+IHsNCj4+Pj4gICAgY29uc3Qg
c3RydWN0IGRvbWFpbl9pb21tdSAqaGQ7DQo+Pj4+IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9w
YXNzdGhyb3VnaC94ODYvaW9tbXUuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21t
dS5jDQo+Pj4+IGluZGV4IGI5MGJiMzFiZmUuLmNmNTFkZWM1NjQgMTAwNjQ0DQo+Pj4+IC0tLSBh
L3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5jDQo+Pj4+ICsrKyBiL3hlbi9kcml2
ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5jDQo+Pj4+IEBAIC0zNDAsNiArMzQwLDEzIEBAIGJv
b2wgYXJjaF9pb21tdV91c2VfcGVybWl0dGVkKGNvbnN0IHN0cnVjdCBkb21haW4gKmQpDQo+Pj4+
ICAgICAgICAgICAgbGlrZWx5KCFwMm1fZ2V0X2hvc3RwMm0oZCktPmdsb2JhbF9sb2dkaXJ0eSkp
Ow0KPj4+PiB9DQo+Pj4+IA0KPj4+PiAraW50IGlvbW11X3VwZGF0ZV9pcmVfZnJvbV9tc2koDQo+
Pj4+ICsgICAgc3RydWN0IG1zaV9kZXNjICptc2lfZGVzYywgc3RydWN0IG1zaV9tc2cgKm1zZykN
Cj4+Pj4gK3sNCj4+Pj4gKyAgICByZXR1cm4gaW9tbXVfaW50cmVtYXANCj4+Pj4gKyAgICAgICAg
ICAgPyBpb21tdV9jYWxsKCZpb21tdV9vcHMsIHVwZGF0ZV9pcmVfZnJvbV9tc2ksIG1zaV9kZXNj
LCBtc2cpIDogMDsNCj4+Pj4gK30NCj4+Pj4gKw0KPj4+PiAvKg0KPj4+PiAqIExvY2FsIHZhcmlh
YmxlczoNCj4+Pj4gKiBtb2RlOiBDDQo+Pj4+IGRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4v
aW9tbXUuaCBiL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oDQo+Pj4+IGluZGV4IGVhMGNkMGYxYTIu
LmJkNDJkODdiNzIgMTAwNjQ0DQo+Pj4+IC0tLSBhL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oDQo+
Pj4+ICsrKyBiL3hlbi9pbmNsdWRlL3hlbi9pb21tdS5oDQo+Pj4+IEBAIC0yNDMsNyArMjQzLDYg
QEAgc3RydWN0IGlvbW11X29wcyB7DQo+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgdTgg
ZGV2Zm4sIGRldmljZV90ICpkZXYpOw0KPj4+PiAjaWZkZWYgQ09ORklHX0hBU19QQ0kNCj4+Pj4g
ICAgaW50ICgqZ2V0X2RldmljZV9ncm91cF9pZCkodTE2IHNlZywgdTggYnVzLCB1OCBkZXZmbik7
DQo+Pj4+IC0gICAgaW50ICgqdXBkYXRlX2lyZV9mcm9tX21zaSkoc3RydWN0IG1zaV9kZXNjICpt
c2lfZGVzYywgc3RydWN0IG1zaV9tc2cgKm1zZyk7DQo+Pj4+ICNlbmRpZiAvKiBIQVNfUENJICov
DQo+Pj4+IA0KPj4+PiAgICB2b2lkICgqdGVhcmRvd24pKHN0cnVjdCBkb21haW4gKmQpOw0KPj4+
PiBAQCAtMjcyLDYgKzI3MSw3IEBAIHN0cnVjdCBpb21tdV9vcHMgew0KPj4+PiAgICBpbnQgKCph
ZGp1c3RfaXJxX2FmZmluaXRpZXMpKHZvaWQpOw0KPj4+PiAgICB2b2lkICgqc3luY19jYWNoZSko
Y29uc3Qgdm9pZCAqYWRkciwgdW5zaWduZWQgaW50IHNpemUpOw0KPj4+PiAgICB2b2lkICgqY2xl
YXJfcm9vdF9wZ3RhYmxlKShzdHJ1Y3QgZG9tYWluICpkKTsNCj4+Pj4gKyAgICBpbnQgKCp1cGRh
dGVfaXJlX2Zyb21fbXNpKShzdHJ1Y3QgbXNpX2Rlc2MgKm1zaV9kZXNjLCBzdHJ1Y3QgbXNpX21z
ZyAqbXNnKTsNCj4+PiANCj4+PiBZb3UgYWxzbyBuZWVkIHRvIG1vdmUgdGhlIGZ1bmN0aW9uIHBy
b3RvdHlwZQ0KPj4+IChpb21tdV91cGRhdGVfaXJlX2Zyb21fbXNpKSBmcm9tIGlvbW11LmggaW50
byBhc20teDg2L2lvbW11LmgsIG9yDQo+Pj4gbWF5YmUgeW91IGNvdWxkIGp1c3QgZGVmaW5lIHRo
ZSBmdW5jdGlvbiBpdHNlbGYgYXMgc3RhdGljIGlubGluZSBpbg0KPj4+IGFzbS14ODYvaW9tbXUu
aD8NCj4+IA0KPj4gDQo+PiBPay4gSSB3aWxsIG1vdmUgZnVuY3Rpb24gcHJvdG90eXBlIChpb21t
dV91cGRhdGVfaXJlX2Zyb21fbXNpKSBmcm9tIA0KPj4gaW9tbXUuaCBpbnRvIGFzbS14ODYvaW9t
bXUuaC4NCj4+IA0KPj4gSSBmaXJzdCB0cmllZCB0byBtYWtlIHRoZSBmdW5jdGlvbiBhcyBzdGF0
aWMgaW5saW5lIGluICJhc20teDg2L2lvbW11LmgiIGJ1dCBhZnRlciANCj4+IHRoYXQgSSBvYnNl
cnZlIHRoZSBjb21waWxhdGlvbiBlcnJvciBmb3IgZGVidWcgYnVpbGQgYmVjYXVzZSAiYXNtL2lv
bW11LmjigJ0gDQo+PiBpcyBpbmNsdWRlZCBpbiAieGVuL2lvbW11LmjigJ0gYmVmb3JlIGlvbW11
X2NhbGwoKSBpcyBkZWZpbmVkIGluICJ4ZW4vaW9tbXUuaOKAnS4NCj4+IFRoYXQncyB3aHkgSSBk
ZWNpZGVkIHRvIG1vdmUgaXQgdG8gdGhlICJwYXNzdGhyb3VnaC94ODYvaW9tbXUuY+KAnSBmaWxl
Lg0KPiANCj4gV2hpY2ggaW4gdHVybiB3b3VsZCBiZSBhbiBhcmd1bWVudCBmb3Iga2VlcGluZyBp
dCBpbiB4ZW4vaW9tbXUuaCBhbmQNCj4gd3JhcCBpdCBpbiBhbiAjaWZkZWYuDQo+IA0KDQpPay4g
SSB3aWxsIG1vdmUgdGhlIGRlZmluaXRpb24gb2YgaW9tbXVfdXBkYXRlX2lyZV9mcm9tX21zaSgp
IHRvIA0KInhlbi9pb21tdS5o4oCdIGFuZCB3aWxsIHdyYXAgaXQgdW5kZXIgQ09ORklHX1g4Ng0K
DQpJZiBldmVyeW9uZSBpcyBvayB3aXRoIHRoZSBhYm92ZSBhcHByb2FjaCB0aGVuIEkgd2lsbCBz
ZW5kIHRoZSBuZXh0DQp2ZXJzaW9uIG9mIHRoZSBwYXRjaCBzZXJpZXMgZm9yIHJldmlldy4NCg0K
UmVnYXJkcywNClJhaHVsDQoNCj4gSmFuDQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 12:03:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 12:03:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114453.218111 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZBaD-0002Yf-2Q; Wed, 21 Apr 2021 12:03:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114453.218111; Wed, 21 Apr 2021 12:03:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZBaC-0002YY-Vh; Wed, 21 Apr 2021 12:03:52 +0000
Received: by outflank-mailman (input) for mailman id 114453;
 Wed, 21 Apr 2021 12:03:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZBaC-0002YT-5B
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 12:03:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 74c0e3c3-468a-43b5-a6eb-6160847ebb9b;
 Wed, 21 Apr 2021 12:03:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AA633AF0F;
 Wed, 21 Apr 2021 12:03: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: 74c0e3c3-468a-43b5-a6eb-6160847ebb9b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619006629; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=/7VPaZAkX0xbKJguofbrybdI328o6L1UwnpsCxw1JWs=;
	b=NTYq+BjO6j+m8JoHzMlJ8LQb9VG5BBFFHydcnwKNyJsICHRuNzMJRQsGS9WAloyaktEzkq
	z1t3paxcajFTBPT3eR18+JwXTPBeuDqHEHnsLPyFhkawyWqhBHzGWfpoTOf6nxnLuuxXKN
	hutgK3P0iiOau8+6rIRMrIWUsFfKfmQ=
Subject: Re: [PATCH 6/8] x86/EFI: avoid use of GNU ld's
 --disable-reloc-section when possible
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <ff15338a-ca10-ff38-3c2a-459303ce9d68@suse.com>
 <YH/8rb0aENMqOLAn@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <dada98e8-3e4a-94df-0678-bdd2a0e8de04@suse.com>
Date: Wed, 21 Apr 2021 14:03:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH/8rb0aENMqOLAn@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 12:21, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:46:44AM +0200, Jan Beulich wrote:
>> @@ -189,7 +208,11 @@ EFI_LDFLAGS += --no-insert-timestamp
>>  endif
>>  
>>  $(TARGET).efi: VIRT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A VIRT_START$$,,p')
>> +ifeq ($(MKRELOC),:)
>> +$(TARGET).efi: ALT_BASE :=
>> +else
>>  $(TARGET).efi: ALT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A ALT_START$$,,p')
> 
> Could you maybe check whether $(relocs-dummy) is set as the condition
> here and use it here instead of efi/relocs-dummy.o?

I can use it in the ifeq() if you think that's neater (the current way
is minimally shorter), but using it in the ALT_BASE assignment would
make this differ more from the VIRT_BASE one, which I'd like to avoid.

>> @@ -210,16 +233,16 @@ note_file_option ?= $(note_file)
>>  ifeq ($(XEN_BUILD_PE),y)
>>  $(TARGET).efi: prelink.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc
> 
> Do you need to also replace the target prerequisite to use $(relocs-dummy)?

No - without the dependency the file might not be generated (if this ends
up being the only real dependency on $(BASEDIR)/arch/x86/efi/built_in.o).
We can't rely on $(note_file) resolving to efi/buildid.o, and hence
recursing into $(BASEDIR)/arch/x86/efi/ may not otherwise get triggered.
Yet to calculate VIRT_BASE we need efi/relocs-dummy.o.

>> --- a/xen/arch/x86/efi/efi-boot.h
>> +++ b/xen/arch/x86/efi/efi-boot.h
>> @@ -86,10 +86,12 @@ static void __init efi_arch_relocate_ima
>>                  }
>>                  break;
>>              case PE_BASE_RELOC_DIR64:
>> -                if ( in_page_tables(addr) )
>> -                    blexit(L"Unexpected relocation type");
>>                  if ( delta )
>> +                {
>>                      *(u64 *)addr += delta;
>> +                    if ( in_page_tables(addr) )
>> +                        *(u64 *)addr += xen_phys_start;
> 
> Doesn't the in_page_tables check and modification also apply when
> delta == 0?

No, it would be wrong to do so: efi_arch_load_addr_check() sets
xen_phys_start, and subsequently (to still be able to produce human
visible output) we invoke efi_arch_relocate_image() with an argument
of 0. Later we'll invoke efi_arch_relocate_image() a 2nd time (when
having exited boot services already, and hence when we can't produce
output via EFI anymore, and we can't produce output yet via Xen's
normal mechanisms), with a non-zero argument. Thus we'd add in
xen_phys_start twice.

> Maybe you could just break on !delta to reduce indentation if none of
> this applies then?

Could be done, sure, and if you think this makes sufficiently much
of a difference I can add a patch. The purpose here though it to
have this and the preceding case block look as similar as possible,
yet also not re-format that earlier one (which would be an unrelated
change).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 12:33:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 12:33:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114460.218126 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZC2n-0005VB-HW; Wed, 21 Apr 2021 12:33:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114460.218126; Wed, 21 Apr 2021 12:33: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 1lZC2n-0005V4-D9; Wed, 21 Apr 2021 12:33:25 +0000
Received: by outflank-mailman (input) for mailman id 114460;
 Wed, 21 Apr 2021 12:33: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 1lZC2l-0005Uz-OF
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 12:33: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 1lZC2h-0007bU-Sd; Wed, 21 Apr 2021 12:33:19 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZC2h-0005Kq-IN; Wed, 21 Apr 2021 12:33:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=mYmM24mLKgLCz+WYQeCydJI3pDAs79lkrvvCaIamrPY=; b=d776M1BdiUESilTVOAGl9TLU+1
	apxHQM/LZe8p3SJ1LvlMX/ewNRElt4AdBomdn4s2ORnRAGqe6QZCxD6YkkIe9/evxPefbnMDPxMb6
	JreBn3p244pT74VlOAdfRic5vwzFRtVWrlegmb5M/XUBLvt+XMFbM5PrJfEWVEmIvD1U=;
Subject: Re: [PATCH] xen/arm: Ensure the vCPU context is seen before clearing
 the _VPF_down
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 ash.j.wilding@gmail.com, Julien Grall <jgrall@amazon.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Dario Faggioli <dfaggioli@suse.com>, George Dunlap
 <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <20210226205158.20991-1-julien@xen.org>
 <alpine.DEB.2.21.2102261756280.2682@sstabellini-ThinkPad-T480s>
 <ca41bfbb-d942-d8fd-e96e-c464f6b3643f@xen.org>
 <alpine.DEB.2.21.2103191652450.439@sstabellini-ThinkPad-T480s>
 <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
 <alpine.DEB.2.21.2104131541370.4885@sstabellini-ThinkPad-T480s>
 <ebcaad65-a155-6979-9754-a8ef0ece3590@xen.org>
 <alpine.DEB.2.21.2104201234060.26180@sstabellini-ThinkPad-T480s>
 <37631386-a53f-d99d-d71b-0b871b5dd9b0@xen.org>
 <alpine.DEB.2.21.2104201726061.26180@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <0660d553-54e3-0c5e-ef2d-41c3dc740695@xen.org>
Date: Wed, 21 Apr 2021 13:33:16 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104201726061.26180@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 21/04/2021 01:38, Stefano Stabellini wrote:
> On Tue, 20 Apr 2021, Julien Grall wrote:
>> AFAICT, there is nothing in the implementation of XEN_DOMCTL_getvcpucontext
>> that justify the extra barrier (assuming we consider vcpu_pause() as a full
>> memory barrier).
>>
>>  From your e-mail, I also could not infer what is your exact concern regarding
>> the memory ordering. If you have something in mind, then would you mind to
>> provide a sketch showing what could go wrong?
> 
> Let me start with what I had in mind:
> 
> initialized = v->is_initialized;
> smp_rmb();
> if ( !initialized )
>    goto getvcpucontext_out;
> 
> 
> Without smp_rmb there are no guarantees that we see an up-to-date value
> of v->is_initialized, right?

No. The smp_*mb() barriers only guarantee an ordering, it doesn't say 
anything about when the values will be seen. The write may in fact still 
be in the write buffer of the other CPU.

> This READ of v->is_initialized is supposed
> to pair with the WRITE in arch_set_info_guest.

I am assuming you meant the access and not the barrier, right? 
Regardless, the barriers used, the access will happen in any order. IOW 
the following two ordering is possible:

Sequence 1:

CPU0: v->vcpu_initialized = 1
CPU1: read v->vcpu_initialized

Sequence 2:

CPU1: read v->vcpu_initialized
CPU0: v->vcpu_initialized = 0

In the first sequence, CPU1 will observe 0 and therefore bailout. In the 
second sequence, we will be observing 1 and continue.

> 
> Relying on the the barrier in vcpu_pause is OK only if is_initialised
> was already read as "1".
> 
> I think it might be OK in this case, because probably nothing wrong
> happens if we read the old value of v->is_initialized as "0" but it
> doesn't seem to be a good idea.

The smp_rmb() is not going to give you that guarantee. If you need it, 
then you mostly likely want to use a synchronization primitives such as 
spin_lock().

> Theoretically it could pass a very long
> time before we see v->is_initialized as "1" without the smp_rmb.

I have the impression that there might be confusion about what I am 
aiming to achieve.

The code today looks roughly like:

1) if ( v->is_initialized )
2)   return;
3) vcpu_pause();
4) /* Access registers */

My aim is to ensure that a processor will not READ any value for 4) are 
not happening before 1). If this happens, then we may provide garbagge 
to the domctl.

Returning an error is a lot better because the caller of the domctl will 
know the vCPU is not yet setup and can provide the infrastructure to try 
again.

 From this PoV, your proposal and my two proposals are functionally 
equivalent. The main differences is whether there is an extra barrier 
and how easy is it to figure out the ordering.

Speaking with Ash, your proposal is probably the easiest one to 
understand. However, it also adds a barrier for the failure path (which 
is pointless).

I would like to avoid barriers when they are not necessary. Hence why I 
prefer the vcpu_pause() solution (we may want to add a comment).

Although, I could live with your proposal if the others are happy with 
it (Andrew? Jan?) because this is not an hot path.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 12:50:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 12:50:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114465.218138 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZCJY-0007Tl-1R; Wed, 21 Apr 2021 12:50:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114465.218138; Wed, 21 Apr 2021 12:50:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZCJX-0007Te-T0; Wed, 21 Apr 2021 12:50:43 +0000
Received: by outflank-mailman (input) for mailman id 114465;
 Wed, 21 Apr 2021 12:50: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 1lZCJW-0007TW-Fh; Wed, 21 Apr 2021 12:50: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 1lZCJW-0007sL-1r; Wed, 21 Apr 2021 12:50: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 1lZCJV-0007L8-ML; Wed, 21 Apr 2021 12:50:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZCJV-0003kC-LL; Wed, 21 Apr 2021 12:50: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=0uFdUqbWlj1wQGI/1duyPCzyxGsITjducZnd5w/nepA=; b=Mg/Wb4GEZixu4oORzDaiCruAuu
	fZK0OdjuPDJOAdrCwD8PkHiECnG0kW9o+glD7pkg8DyoKiw4QphuYpfhpUSel/q4CKhgo5deV54c+
	ClKRyhbd6H7+wpzTxOA1KGIrlULRBA6QNoPFEZ2Xg574GZAVPUkko+wWa+j2fUdL7HF4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161324-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.14-testing test] 161324: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.14-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b14d8345e530a54710700ec5fcb0879c2e056d31
X-Osstest-Versions-That:
    xen=1ebc077a5608bd8eff7e6401696f16c9a266b73f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 12:50:41 +0000

flight 161324 xen-4.14-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161324/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161048
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161048
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161048
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161048
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161048
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161048
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161048
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161048
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161048
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161048
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161048
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          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-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-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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                  b14d8345e530a54710700ec5fcb0879c2e056d31
baseline version:
 xen                  1ebc077a5608bd8eff7e6401696f16c9a266b73f

Last test of basis   161048  2021-04-12 10:36:19 Z    9 days
Testing same since   161324  2021-04-20 10:36:29 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Boris Ostrovsky <boris.ostrovsky@oracle.com>
  Frédéric Pierret <frederic.pierret@qubes-os.org>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   1ebc077a56..b14d8345e5  b14d8345e530a54710700ec5fcb0879c2e056d31 -> stable-4.14


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 12:57:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 12:57:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114482.218185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZCPq-0007vE-A1; Wed, 21 Apr 2021 12:57:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114482.218185; Wed, 21 Apr 2021 12: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 1lZCPq-0007v7-6n; Wed, 21 Apr 2021 12:57:14 +0000
Received: by outflank-mailman (input) for mailman id 114482;
 Wed, 21 Apr 2021 12:57:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZCPp-0007v2-24
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 12:57:13 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0984879c-6f88-48f2-814b-3383ae21b8cf;
 Wed, 21 Apr 2021 12:57: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: 0984879c-6f88-48f2-814b-3383ae21b8cf
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619009831;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=LQqU/FqXHMC/u8lWSIZAxn0lBzNcGhAYT0ibP1a0C20=;
  b=iR+c2XMi0p6r41btqgJb0ckvd7KS9yUgQ6qDbKT09EsbL1zO8q/twXor
   Ef4cJHdm6G/Lamb6/QG5tE4/PXzofihUdhaner+Djw8W+8yN5/ttf759u
   EPQJGr6xfPfxHhjCvDtUncoeHokWRm0pz+WPSrE1PoFC3v7B8jvbPEQh3
   M=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: SwvDTRlfIjwvc79UmOcdws7YSkR7H9YVg01pvdyNFcQC3dCrttNeN7caP32eWjZw2heapSoMOC
 gGU+humInGGQ6n4hRdilX86gQ72pJJmEkoSWun33KukR5pDBHYF1h7sIBBe3AQUkyoHbz+kJgJ
 +ln1sv6dMTGm25Ydg6At8patqjLwo0FkYBXrS8KZB58Z6cr0sBc5SdZ3aakzECfumR3blcPmIR
 pUBfr7w+9lLM9PPpIxKlDbeNZLaNmqmXJkNCi5h4X/AwhxbcsStun4XPJ8K/eWUeeTnShFAhRK
 cQ8=
X-SBRS: 5.2
X-MesageID: 41909314
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:T1KyRq2mmyNi2xOT7YhjCwqjBch2eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z+8X3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzI5g/I
 9aWexFBNX0ZGIase/T6gO1Cstl5dGB/ryhi+u29QYScShBQchbnmFEIyycFVB7QxQDIJI/Go
 aV6MYvnUvQRV08aMOnCn4ZG9XSvtGjruOnXTcqJT4CrDOPgzSh9aLgH3GjtSs2fjtTzd4ZgB
 L4uiPj4KHLiYDe9jb90Cvp441SiJ/dzLJ4dbOxo+w0DhmptQqyfoRmXNS5zXMIicWi8kwjnt
 WJgzpIBbUP11rrcmu4oQTg1mDbuV5DhBGSqy78vVLZrcP0Xz48AcZa7LgpDifx0EY8oMp6lJ
 tCwmPxjesLMTr7gC//69LUPisa73acnHs4neYfy1xZXIcOAYUh1rA3wUJPHJ8MWB/98YAsed
 MedP302fA+SyL8U1np+kl1xtuUWG8vWj+4K3JphuWllxx5tDRi00AdxNYEnnEGnahRd7B0o8
 D/doh4nrBHScEbKYhnAv0afMexAmvRBTrRLWO7Oz3cZeM6EkOIj6SyzKQ+5emsdpBN5oA1go
 79XFRRsnN3U17yCPeJwIZA/nn2MSCAdAWo7vsby4lyu7X6SrauGzaEUkoSn8yppOhaJcHHRf
 CpOtZzD+X4JWXjXaZFtjeOH6V6GD07aok4q9w7U1WBrobgMYvxrNHWd/7VOf7jCjAhVmTjAm
 YSXTT6Kclah3rbHEPQsVz0YTfAa0b/9ZV/HOzx5O4I0rUAMYVKr0wUhD2Cl5i2AAwHlpZzUF
 p1IbvhnK/+j3Kx53z042JgPQcYCk5U5b7nQm5bvANiCTKtTZ8z//GkPUxC1nqOIRFyC+nMFh
 REmlhx8aWra5qKxS4jDNqjOnmAj2QaoW+LS5t0oNzF2e7VPrcDSro2Uq14EgvGUzZvnxxxlW
 tFYAgYAlPEGij2kqWjhpwMDOTZf91x6T3bevJ8mDb6jwGxtMsvTnwUU3qSSsaRmx8pXCcRrE
 Z26bUjjL2JniuPJWMzjP8jCkBFbH2aDdt9fV64TbQRvoquWQlrCU+WmDSRingICxrX3nRXol
 akEAq5VrXgBEFHtnVRz6DwmWkEBVm1TgZXcXB1sYp0CGLcnG18uNX7Opab23eNa1cE3+EWOC
 zEZzxXOQ9129Wrzneu6UO/PHE9xowZO+TXALE4GoujqE+FOcmGk7oLEORT+4sgPNfysvUTWe
 baYAONKijkYtlZlTC9tzIgOCNurmMjnu6t0Br57HKg1HpXO4ufHH12A7UaKcqb9W7qWrKB14
 h4l8s8ua+1Pn/qYtCLjaHRYDgrEGKdnUemC+Upo4tTp6Q8qf96GITaSyLB0DVfxwolRf2E33
 82UeB++vTMK4Vvd8sdd2ZQ+Ucojs2GKA8uvhbtCuEzcFkxhxbgTpK0yquNraBqDlyKpQP2N1
 Xa6SFb8vvfVyaI1LIRCcsLUClrQVl57G4n8PKJdoXWBgnvavpK+0CiNGShNLBaU6qIFNwr31
 5HysDNm/XScSX22Ard52QmZq1P9nuqWsO0DkaHH/VS/9mzJFSLhe+r7aeI/UHKYCr+b15dg4
 tPMVEUZIBEjDIpiYUsyCi8SqDtuCse4hFjyCAikkSow5Ss5WfQAFpPPgLYiIhHRDU7CAn+se
 3VteyDkGnn6DdL2ZPfBF5dc9FHFd8XVJX2JU5VWIEtla/t+bEujCRFaAovCGB5iCmV5ZIT4Y
 uE
X-IronPort-AV: E=Sophos;i="5.82,238,1613451600"; 
   d="scan'208";a="41909314"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dNeuhuyT08ZFKurHSKQvBAmuaIUS9FAsGvRamhc7G+0yJ8yPBjAx+TIHbvdL/ZNeO5v6DgxZQArQLL8WjX1Yh7zmrjO2ErWgKP2qqxQofU5em5mqM51p3nv4EDJA09bIiAGSHl+1zF+w+I5kBHVR2Z9qY/lv9KqIVjJmxVZ4hz6pqIU9dep+ngDFAfgLqKz1KvuMgfAWUpjPf6dtNvzTFdrwRHlvNXck4FXkezgdHWj/yxy0qZrmS0jTymivYGquQsjesPKKQIrVeqcpMiGcGHI3jJLAJWlxryQICTNDmztEOMyma9yg9oPolaKhjOmJy0JK2FIWdV/GADIBWfx47Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=r0vcNzL+VYM82B5WynwoK4IUPy8Lo2fOWLelQ9gIPYA=;
 b=DNmDvBUobA2llnvrN+rdmtMyPDTlDo4P2ZTEDGiuAeU0PZAOH9INlwkyTZkewnjkrM40S2Iqc/LBUuYLBlJpCwzAUjEiMO4IHpXwsBw7MDmIgPFBBQu9dhEzkftnsVUJZVY+r+Pu83tFobNAdFFiR5K427joBV0c0vvq6GiEFQNplSDS6qkKts23cRmEev05Sb7o4igZeMN8446ErwWxBem5xL61+hZq8SHMiLbkt0Abp/C3la6w+/gQO8Qlmz0R0crOjhIC8MPpSuYviRaQEup5JxbKMAQBhaMlhfgkhezfzeH6/KtDew/du3xCIn6nPrpK5FGQKsfLXD3mIvQa0g==
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=r0vcNzL+VYM82B5WynwoK4IUPy8Lo2fOWLelQ9gIPYA=;
 b=vIWAK4RJcCTpEIfxc1VTnNDgqNf/jBPdWiun2TTjx1XPOubprhYMxI5Vg/1E76o7u3EUBPDNzhrXcDjsF3gRwsyJn2EjmTFdbBT6WZUFl1UKzrX1sCG7TRehhGCJRRFPytAtz4F+OOGxUgkMGCKdqMGSYG5u/chOoEmkKv+2JEc=
Date: Wed, 21 Apr 2021 14:57:01 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 2/8] x86/EFI: sections may not live at VA 0 in PE binaries
Message-ID: <YIAhHTsNlG7lQarM@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
 <YH/nzmkQMhsJE4mw@Air-de-Roger>
 <deee924d-f124-5563-727a-71ddb39403f3@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <deee924d-f124-5563-727a-71ddb39403f3@suse.com>
X-ClientProxiedBy: AM6P192CA0080.EURP192.PROD.OUTLOOK.COM
 (2603:10a6:209:8d::21) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7248df02-9891-4445-8d1f-08d904c4f887
X-MS-TrafficTypeDiagnostic: DM6PR03MB4218:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4218DFB5A5CB14C5CCED2DF78F479@DM6PR03MB4218.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: mgd/nS8/YAL86WjpYc0D0I9bZqoJ9i6+7v/JQ4qg4ACYZV6lyYmIZkbO3dAybG1s+uk03Q9PeYeG5Km8CpB+DwH52DHG9wa5O97y5m3HV2h5cwRX+fhEEKxeULhbfEgva43YYfSfoKg8UaP2hVgUcxDu2fRWpXpO0hsJa6aVAGz6fy78WiaDoTEuze5097hRY2bcjAsXDYYe30uIXUL8facsaTxIO4XAJFTGWZoTXOKnfd3skKwiw2A2egvS0GSeT6oYcSxdg/eFvloFD9VV3MhYZUT+TWoHQaIA8nwXrxImsqRFgqHjdtpceRJvzPG4JplNbRoMUgtIdGq7W86dxtYufIfK+qtaMwGNyote5Hk5YTg0Hvq3uj56klcM5VTZdjHQxLG2MTpazuDVn4qAofWhGmtLc3pQwUoDJEi+LwnnYrWaPD4n2wW3zou8wvyR9kDgJOPgS+Q3Uay3I4LkxseMNMS1YssrovWJotC33l4pGeWlbrSarwmVgyPiriGvXqfu56Hh3QoQRWlSDDYGEatc4lxvV0Ds/0dYAo/u9HFzXXqL+SXqk8W3lLbwypr/y9eXcTMHGbALOl0tLq9VkdvJVl2a8/1/Xk/t5mzU4OM=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(396003)(366004)(346002)(39860400002)(136003)(376002)(85182001)(316002)(6916009)(9686003)(6496006)(8936002)(16526019)(186003)(6486002)(4326008)(956004)(38100700002)(53546011)(86362001)(8676002)(26005)(2906002)(478600001)(33716001)(54906003)(6666004)(5660300002)(66946007)(66556008)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?2smPpwI3Vy1txhP7/HjL0ZhZ4nmmoVyIaow6jPN?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 7248df02-9891-4445-8d1f-08d904c4f887
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 12:57:08.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: YpcIggvtNUI58PxmvzWLPbtGF4hxfohGunfaPhaiyAWgz1vD0VLeEZepLBROt+kO1yzx/YR3BycZbg4dhMc+SA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4218
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 12:32:42PM +0200, Jan Beulich wrote:
> On 21.04.2021 10:52, Roger Pau Monné wrote:
> > On Thu, Apr 01, 2021 at 11:44:45AM +0200, Jan Beulich wrote:
> >> PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
> >> least 2.36 would silently truncate the (negative) difference when a
> >> section is placed below the image base. Such sections would also be
> >> wrongly placed ahead of all "normal" ones. Since, for the time being,
> >> we build xen.efi with --strip-debug anyway, .stab* can't appear. And
> >> .comment has an entry in /DISCARD/ already anyway in the EFI case.
> >>
> >> Because of their unclear origin, keep the directives for the ELF case
> >> though.
> > 
> > It's my understadng thonse sections are only there for debug purposes,
> > and never part of the final xen binary as they are stripped?
> > 
> > Could we maybe remove the section load address of 0 and instead just
> > use the (NOLOAD) directive?
> 
> (NOLOAD) is meaningless for PE.
> 
> > Does it really matter to place them at address 0?
> 
> That's the convention for ELF, and also what ld defaults to for debugging
> sections.
> 
> > I also wonder, is this change fixing some existing bug, or it's just a
> > cleanup change?
> 
> If there were sections at 0, the resulting PE binary would end up broken.
> Prior to binutils 2.37 this brokenness is silent, i.e. the linker doesn't
> issue any form of diagnostic. The change therefore is addressing a latent
> issue - if any such section started being non-empty, we'd be in trouble.
> 
> > I also only see the .comment section in my binary output, so maybe
> > it's fine to just remove them from the script?
> 
> Which binary are you referring to - ELF or PE? In the former case, yes,
> that's what the statement is for. In the latter case I can't see how this
> would be, with .comment being explicitly part of /DISCARD/ in that case.

So from a bit of searching I just did it seems like stab sections
where used during the 90s with ELF, but that this has long been
superseded by DWARF 2 becoming the default in the late 90s, hence I
think it would be fine to just remove those sections even in the ELF
case?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 13:06:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 13:06:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114488.218197 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZCYy-0000Ws-4q; Wed, 21 Apr 2021 13:06:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114488.218197; Wed, 21 Apr 2021 13:06: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 1lZCYy-0000Wl-1T; Wed, 21 Apr 2021 13:06:40 +0000
Received: by outflank-mailman (input) for mailman id 114488;
 Wed, 21 Apr 2021 13:06:39 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZCYx-0000Wg-0O
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 13:06:39 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5bdbdbdc-5727-4d42-baef-f90f6345b8c6;
 Wed, 21 Apr 2021 13:06:38 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 46521AF3B;
 Wed, 21 Apr 2021 13:06: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: 5bdbdbdc-5727-4d42-baef-f90f6345b8c6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619010397; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=P2vRYHLBXHOsV7x3MygxRE94imiXLDsi74b8duVPmSc=;
	b=AsPooKBpPkurtzdQq2Fm2Q2hiCLkTavIPgvnC/e5SzYQ37v96HF/zZRfvRBXaSRcyuTab+
	xuzI8q6GCPHDEk27Z3eGWC89KwZraYBaBrDlDI61a3fn4EAh+DHEb4T2VcmNND1QFqQU43
	PtY90FDBP8H3kytSv9xxHi6X/i4X0Mw=
Subject: Re: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
Date: Wed, 21 Apr 2021 15:06:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIAJP0SCq0nOKZVL@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 13:15, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
>> ... provided the linker supports it (which it does as of commit
>> 2dfa8341e079 ["ELF DWARF in PE output"]).
>>
>> Without mentioning debugging sections, the linker would put them at
>> VA 0, thus making them unreachable by 32-bit (relative or absolute)
>> relocations. If relocations were resolvable (or absent) the resulting
>> binary would have invalid section RVAs (0 - __image_base__, truncated to
>> 32 bits). Mentioning debugging sections without specifying an address
>> will result in the linker putting them all on the same RVA. A loader is,
>> afaict, free to reject loading such an image, as sections shouldn't
>> overlap. (The above describes GNU ld 2.36 behavior, which - if deemed
>> buggy - could change.)
> 
> Isn't just using (NOLOAD) to signal those sections shouldn't be
> loaded enough, and thus don't care about it's RVA?

As said in a reply earlier on another sub-thread, (NOLOAD) is meaningless
for PE. The fact that I add them nevertheless is just for docs purposes
(or if, in the future, the item gains significance).

The main problem though isn't "load" vs "no-load" but, as I thought I
have expressed in the description, that there's no "don't care about it's
RVA" in PE. All sections have to have a non-zero VA above the image base.
This is the only way via which sane RVA values can result. If sections
get placed at VA 0 (which is perfectly fine for ELF), the RVA would be a
huge negative number truncated to 32 bits. (Again, prior to binutils 2.37
this will go all silently.) Plus the respective sections would come first
(rather than last) in the binary (which by itself may or may not be a
problem for the EFI loader, but I wouldn't want to chance it).

>> --- a/xen/arch/x86/xen.lds.S
>> +++ b/xen/arch/x86/xen.lds.S
>> @@ -312,10 +312,60 @@ SECTIONS
>>      *(.reloc)
>>      __base_relocs_end = .;
>>    }
>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
>> -  . = ALIGN(__section_alignment__);
>> -  DECL_SECTION(.pad) {
>> -    . = ALIGN(MB(16));
>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
>> +     *(.debug_abbrev)
>> +  }
>> +  .debug_info ALIGN(1) (NOLOAD) : {
>> +    *(.debug_info)
>> +    *(.gnu.linkonce.wi.*)
>> +  }
>> +  .debug_types ALIGN(1) (NOLOAD) : {
>> +    *(.debug_types)
>> +  }
>> +  .debug_str ALIGN(1) (NOLOAD) : {
>> +    *(.debug_str)
>> +  }
>> +  .debug_line ALIGN(1) (NOLOAD) : {
>> +    *(.debug_line)
>> +    *(.debug_line.*)
>> +  }
>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
>> +    *(.debug_line_str)
>> +  }
>> +  .debug_names ALIGN(4) (NOLOAD) : {
>> +    *(.debug_names)
>> +  }
>> +  .debug_frame ALIGN(4) (NOLOAD) : {
>> +    *(.debug_frame)
>> +  }
>> +  .debug_loc ALIGN(1) (NOLOAD) : {
>> +    *(.debug_loc)
>> +  }
>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
>> +    *(.debug_loclists)
>> +  }
>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
>> +    *(.debug_ranges)
>> +  }
>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
>> +    *(.debug_rnglists)
>> +  }
>> +  .debug_addr ALIGN(8) (NOLOAD) : {
>> +    *(.debug_addr)
>> +  }
>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
>> +    *(.debug_aranges)
>> +  }
>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
>> +    *(.debug_pubnames)
>> +  }
>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
>> +    *(.debug_pubtypes)
>> +  }
>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
>> +  __image_end__ = .;
>> +  .pad ALIGN(__section_alignment__) : {
>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
> 
> I think this is inside an ifdef EFI region, since this is DWARF info
> couldn't it also be present when building with EFI disabled?

Of course (and it's not just "could" but "will"), yet the linker will
do fine (and perhaps even better) without when building ELF. Also
note that we'll be responsible for keeping the list of sections up-to-
date. The linker will recognize Dwarf sections by looking for a
.debug_ prefix. We can't use such here (or at least I'm not aware of
a suitable mechanism); .debug_* would mean munging together all the
different kinds of Dwarf sections. Hence by limiting the explicit
enumeration to PE, I'm trying to avoid anomalies in ELF down the road.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 13:15:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 13:15:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114497.218209 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZChv-0001WX-0o; Wed, 21 Apr 2021 13:15:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114497.218209; Wed, 21 Apr 2021 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 1lZChu-0001WQ-TH; Wed, 21 Apr 2021 13:15:54 +0000
Received: by outflank-mailman (input) for mailman id 114497;
 Wed, 21 Apr 2021 13:15:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZCht-0001WL-I7
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 13:15:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 32dcd834-9a5a-4bef-b94d-317a15100a25;
 Wed, 21 Apr 2021 13:15:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E9C81B4A7;
 Wed, 21 Apr 2021 13:15: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: 32dcd834-9a5a-4bef-b94d-317a15100a25
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619010952; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=KSbujstBrsDXB9I9QXW9yNl1x7BU7KwrwpMefgybHmU=;
	b=m5Xv/dsWLYlRQLeYMBj5gW0yMZTtfQYpta1tmlMHeMQPeU0m7FPUl3QbkrEdY7d0rhlB83
	TW7R1IY9nhsY4k3B/Cfov4x2IPUwl+ns22Y8oW1G6Gq+brukfAKW8DIjB/fDwjEUCYBReA
	Wff376Ycn+jqk7E5SxWmFzbG6I8czSY=
Subject: Re: [PATCH 8/8] x86/EFI: don't have an overly large image size
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <26ec4a83-cda9-5193-d797-357c05b26ab7@suse.com>
 <YIAKIx0JuYDzEKqK@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5b9af9cc-fdd6-aa16-f902-0c5836bb2cbc@suse.com>
Date: Wed, 21 Apr 2021 15:15:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIAKIx0JuYDzEKqK@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 13:18, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:47:35AM +0200, Jan Beulich wrote:
>> While without debug info the difference is benign (so far), since we pad
>> the image to 16Mb anyway, forcing the .reloc section to a 2Mb boundary
>> causes subsequent .debug_* sections to go farther beyond 16Mb than
>> needed. There's no reason to advance . for establishing __2M_rwdata_end,
>> as all data past _end is of no interest at runtime anymore anyway.
> 
> So you just expand the load size.

Shrink. Or maybe I'm misunderstanding you.

>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

>> ---
>> This makes more explicit a possible latent problem with the ELF image:
>> It ends at _end, not __2M_rwdata_end (advancing . as was done here does
>> not have the effect of increasing the image size). Interestingly the
>> conversion xen-syms => xen rounds up the program header specified size
>> suitably, as per the comment "Do not use p_memsz: it does not include
>> BSS alignment padding" in mkelf32.c. I do think this would instead want
>> taking care of in the linker script. Commit 7a95e0a2c572 ("x86: properly
>> calculate xen ELF end of image address") clearly only hacked an existing
>> hack rather than addressing the root cause. Thoughts?
> 
> We should likely define _end after __2M_rwdata_end to account for this
> padding?

I don't think this would help - we'd need to arrange for the image size
to cover that extra padding. Like advancing . doesn't grow the image
size, I also don't think placing _end later would do.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 13:28:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 13:28:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114504.218227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZCuT-0002YS-9D; Wed, 21 Apr 2021 13:28:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114504.218227; Wed, 21 Apr 2021 13: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 1lZCuT-0002YL-5N; Wed, 21 Apr 2021 13:28:53 +0000
Received: by outflank-mailman (input) for mailman id 114504;
 Wed, 21 Apr 2021 13:28:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZCuS-0002YG-EM
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 13:28:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1b1863d3-763c-4c70-aafc-069fd7bbfa4d;
 Wed, 21 Apr 2021 13:28:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 802B1B1DE;
 Wed, 21 Apr 2021 13:28:50 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1b1863d3-763c-4c70-aafc-069fd7bbfa4d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619011730; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=GIR3Qw5pFN4oA2sVs3On7PYoWr3xNTZWZVH65IN3yiI=;
	b=nnjjBBdZTXe6U1o+eOpxrSH4KwAiacWFLM55lThXl+0dwh7l+agKzaS73q2inuayvTZ/ec
	KYS+7ZB/ELiH2d/fDg4CNOXC5bm87mbnqEKxMO0udRb1iMT5w7QaT7eH0eYwnGtmh7AbT6
	WV01QMzYcTgqPl4R6xD4TNAuRM03LQQ=
Subject: Re: [PATCH 2/8] x86/EFI: sections may not live at VA 0 in PE binaries
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Liu <wl@xen.org>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <5d7c61b0-8441-dccc-4917-cc8a436fd96f@suse.com>
 <YH/nzmkQMhsJE4mw@Air-de-Roger>
 <deee924d-f124-5563-727a-71ddb39403f3@suse.com>
 <YIAhHTsNlG7lQarM@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7c9e3e9d-b47d-93f8-e1cf-22ddb246c0fb@suse.com>
Date: Wed, 21 Apr 2021 15:28:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIAhHTsNlG7lQarM@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 14:57, Roger Pau Monné wrote:
> So from a bit of searching I just did it seems like stab sections
> where used during the 90s with ELF, but that this has long been
> superseded by DWARF 2 becoming the default in the late 90s, hence I
> think it would be fine to just remove those sections even in the ELF
> case?

Well, maybe. Even up-to-date gcc still supports -gstabs. Plus I seem
to have a vague recollection that Andrew objected to their removal
at some (not overly distant) point. I can't find any reference there
though, so Andrew: Do you have any specific thoughts here?

Of course with the stabs sections gone, .comment would remain. I'm
very firm in not wanting to leave any statements there putting
sections at VA zero. Irrespective of .comment (to take this example)
being listed under /DISCARD/ for PE. This would only be acceptable
(to me) if ld would always have at least warned about such sections.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 13:39:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 13:39:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114509.218239 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZD4q-0003ZH-8v; Wed, 21 Apr 2021 13:39:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114509.218239; Wed, 21 Apr 2021 13:39:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZD4q-0003ZA-5f; Wed, 21 Apr 2021 13:39:36 +0000
Received: by outflank-mailman (input) for mailman id 114509;
 Wed, 21 Apr 2021 13:39:34 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZD4o-0003Z5-Ll
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 13:39:34 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZD4l-0000HB-Vk; Wed, 21 Apr 2021 13:39:31 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=freeip.amazon.com) by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZD4l-0001Uw-CG; Wed, 21 Apr 2021 13:39: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:Mime-Version:Content-Type:
	References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID;
	bh=JN4E55cpVCbgAq+7oLvl1m6DdRXGpvZ9z88oDuBr/9s=; b=N7O3jzTqzr1JqDnEclX8fNWiRq
	+W6uwJmQrcFzNRqexaL5eiohwc8HaBV2mJrMfQoxRqbVGjkVbNL6nMsAgi1WKUSPWCz0n8vLdBQnh
	bM8Eb8VMVtHKwYKRq+rCsIdEP6GskYGTlyDwhHSwmoYqD1G1WzwOHDkmhTQkQfBi1+6o=;
Message-ID: <66d5ed414d414629e04717560f2090345c0759ac.camel@xen.org>
Subject: Re: [PATCH v9 10/13] x86/smpboot: switch clone_mapping() to new APIs
From: Hongyan Xia <hx242@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: jgrall@amazon.com, Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau
 =?ISO-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Date: Wed, 21 Apr 2021 14:39:28 +0100
In-Reply-To: <de0df262-6c83-41d2-02d6-ce56d484baa2@suse.com>
References: <cover.1617706782.git.hongyxia@amazon.com>
	 <d55bcecc33df5b277bc3e1dbb48826bc816d8d10.1617706782.git.hongyxia@amazon.com>
	 <de0df262-6c83-41d2-02d6-ce56d484baa2@suse.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit

On Tue, 2021-04-20 at 14:32 +0200, Jan Beulich wrote:
> On 06.04.2021 13:05, Hongyan Xia wrote:
> > @@ -742,51 +742,58 @@ static int clone_mapping(const void *ptr,
> > root_pgentry_t *rpt)
> >          }
> >      }
> >  
> > +    UNMAP_DOMAIN_PAGE(pl1e);
> > +    UNMAP_DOMAIN_PAGE(pl2e);
> > +    UNMAP_DOMAIN_PAGE(pl3e);
> 
> Just one minor remark: A pedantic(?) compiler might warn about the
> setting to NULL of pl3e here, when
> 
> >      if ( !(root_get_flags(rpt[root_table_offset(linear)]) &
> > _PAGE_PRESENT) )
> >      {
> > -        pl3e = alloc_xen_pagetable();
> > +        mfn_t l3mfn;
> > +
> > +        pl3e = alloc_map_clear_xen_pt(&l3mfn);
> >          rc = -ENOMEM;
> >          if ( !pl3e )
> >              goto out;
> > -        clear_page(pl3e);
> >          l4e_write(&rpt[root_table_offset(linear)],
> > -                  l4e_from_paddr(__pa(pl3e), __PAGE_HYPERVISOR));
> > +                  l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR));
> >      }
> >      else
> > -        pl3e = l4e_to_l3e(rpt[root_table_offset(linear)]);
> > +        pl3e = map_l3t_from_l4e(rpt[root_table_offset(linear)]);
> 
> ... it is guaranteed to get initialized again before any further
> consumption. IOW strictly speaking the last of those three would
> want to be unmap_domain_page(), just like you have ...
> 
> > @@ -802,6 +809,9 @@ static int clone_mapping(const void *ptr,
> > root_pgentry_t *rpt)
> >  
> >      rc = 0;
> >   out:
> > +    unmap_domain_page(pl1e);
> > +    unmap_domain_page(pl2e);
> > +    unmap_domain_page(pl3e);
> >      return rc;
> >  }
> 
> ... here.

True. I will switch to lower case for pl3e just in case.

Hongyan



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 13:55:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 13:55:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114518.218251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDK4-0005Q7-On; Wed, 21 Apr 2021 13:55:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114518.218251; Wed, 21 Apr 2021 13:55: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 1lZDK4-0005Q0-Lo; Wed, 21 Apr 2021 13:55:20 +0000
Received: by outflank-mailman (input) for mailman id 114518;
 Wed, 21 Apr 2021 13:55:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDK3-0005Pu-Fv
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 13:55:19 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 915d0d01-7089-41ef-97f9-497cfc936569;
 Wed, 21 Apr 2021 13:55:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id ECADAAF33;
 Wed, 21 Apr 2021 13: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: 915d0d01-7089-41ef-97f9-497cfc936569
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619013317; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=p0wQZg5fm3uF7HwJ/2XhaGXAZ6eYSQQeATi5bEp8B9Y=;
	b=q+VpGFHYWyI4+rS5DfrWIPlKhy/ZlbYB08Rqw5eQdKzjGiCAdOPIcV8fzw2/mQ78TwSUhD
	EHx/f9sgHDLGjRMDm9wcDvc0CRTjYLiRzK4kdXZTjPK3ftaT9Fn2Qvtj9nyKTiFSYgyZTN
	k+05codGA7TPtBlVgUKWqo3QS2e+Psg=
Subject: Re: x86: memset() / clear_page() / page scrubbing
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <0753c049-9572-c12a-c74f-7e2fac3f5a24@suse.com>
 <21c00073-86a8-a040-fa40-e99e2fb434eb@citrix.com>
 <213c3706-5296-4673-dae2-12f9056ed73b@suse.com>
 <843e5c66-65e9-3b0b-8bcb-ad1d7df89d78@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <31487efc-13b4-af7c-5c0e-6bda7ad7a89d@suse.com>
Date: Wed, 21 Apr 2021 15:55:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <843e5c66-65e9-3b0b-8bcb-ad1d7df89d78@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 18:21, Andrew Cooper wrote:
> On 14/04/2021 09:12, Jan Beulich wrote:
>> On 13.04.2021 15:17, Andrew Cooper wrote:
>>> Do you have actual numbers from these experiments?
>> Attached is the collected raw output from a number of systems.
> 
> Wow Tulsa is vintage.  Is that new enough to have nonstop_tsc ?

No.

>>> For memset(), please don't move in the direction of memcpy().  memcpy()
>>> is problematic because the common case is likely to be a multiple of 8
>>> bytes, meaning that we feed 0 into the REP MOVSB, and this a hit wanting
>>> avoiding.
>> And you say this despite me having pointed out that REP STOSL may
>> be faster in a number of cases? Or do you mean to suggest we should
>> branch around the trailing REP {MOV,STO}SB?
>>
>>>   The "Fast Zero length $FOO" bits on future parts indicate
>>> when passing %ecx=0 is likely to be faster than branching around the
>>> invocation.
>> IOW down the road we could use alternatives patching to remove such
>> branches. But this of course is only if we don't end up using
>> exclusively REP MOVSB / REP STOSB there anyway, as you seem to be
>> suggesting ...
>>
>>> With ERMS/etc, our logic should be a REP MOVSB/STOSB only, without any
>>> cleverness about larger word sizes.  The Linux forms do this fairly well
>>> already, and probably better than Xen, although there might be some room
>>> for improvement IMO.
>> ... here.
>>
>> As to the Linux implementations - for memcpy_erms() I don't think
>> I see any room for improvement in the function itself. We could do
>> alternatives patching somewhat differently (and I probably would).
>> For memset_erms() the tiny bit of improvement over Linux'es code
>> that I would see is to avoid the partial register access when
>> loading %al. But to be honest - in both cases I wouldn't have
>> bothered looking at their code anyway, if you hadn't pointed me
>> there.
> 
> Answering multiple of the points together.
> 
> Yes, the partial register access on %al was one thing I spotted, and
> movbzl would be an improvement.  The alternatives are a bit weird, but
> they're best as they are IMO.  It makes a useful enough difference to
> backtraces/etc, and unconditional jmp's are about as close to free as
> you can get these days.
> 
> On an ERMS system, we want to use REP MOVSB unilaterally.  It is my
> understanding that it is faster across the board than any algorithm
> variation trying to use wider accesses.

Not according to the numbers I've collected. There are cases where
clearing a full page via REP STOS{L,Q} is (often just a little)
faster. Whether this also applies to MOVS I can't tell.

>>> It is worth nothing that we have extra variations of memset/memcpy where
>>> __builtin_memcpy() gets expanded inline, and the result is a
>>> compiler-chosen sequence, and doesn't hit any of our optimised
>>> sequences.  I'm not sure what to do about this, because there is surely
>>> a larger win from the cases which can be turned into a single mov, or an
>>> elided store/copy, than using a potentially inefficient sequence in the
>>> rare cases.  Maybe there is room for a fine-tuning option to say "just
>>> call memset() if you're going to expand it inline".
>> You mean "just call memset() instead of expanding it inline"?
> 
> I think want I really mean is "if the result of optimising memset() is
> going to result in a REP instruction, call memset() instead".
> 
> You want the compiler to do conversion to single mov's/etc, but you
> don't want is ...
> 
>> If the inline expansion is merely REP STOS, I'm not sure we'd
>> actually gain anything from keeping the compiler from expanding it
>> inline. But if the inline construct was more complicated (as I
>> observe e.g. in map_vcpu_info() with gcc 10), then it would likely
>> be nice if there was such a control. I'll take note to see if I
>> can find anything.
> 
> ... this.  What GCC currently expands inline is a REP MOVS{L,Q}, with
> the first and final element done manually ahead of the REP, presumably
> for prefetching/pagewalk reasons.

Not sure about the reasons, but the compiler doesn't always do it
like this - there are also cases of plain REP STOSQ. My initial
guess the splitting of the first and last elements was when the
compiler couldn't prove the buffer is 8-byte aligned and a
multiple of 8 bytes in size.

>>> For all set/copy operations, whether you want non-temporal or not
>>> depends on when/where the lines are next going to be consumed.  Page
>>> scrubbing in idle context is the only example I can think of where we
>>> aren't plausibly going to consume the destination imminently.  Even
>>> clear/copy page in a hypercall doesn't want to be non-temporal, because
>>> chances are good that the vcpu is going to touch the page on return.
>> I'm afraid the situation isn't as black-and-white. Take HAP or
>> IOMMU page table allocations, for example: They need to clear the
>> full page, yes. But often this is just to then insert one single
>> entry, i.e. re-use exactly one of the cache lines.
> 
> I consider this an orthogonal problem.  When we're not double-scrubbing
> most memory Xen uses, most of this goes away.
> 
> Even if we do need to scrub a pagetable to use, we're never(?) complete
> at the end of the scrub, and need to make further writes imminently. 

Right, but often to just one of the cache lines.

> These never want non-temporal accesses, because you never want to write
> into recently-evicted line, and there's no plausible way that trying to
> mix and match temporal and non-temporal stores is going to be a
> worthwhile optimisation to try.

Is a singe MOV following (with some distance and with SFENCE in
between) a sequence of MOVNTI going to have an effect worse than
the same MOV trying to store to a cache line that's not in cache?

>> Or take initial
>> population of guest RAM: The larger the guest, the less likely it
>> is for every individual page to get accessed again before its
>> contents get evicted from the caches. Judging from what Ankur said,
>> once we get to around L3 capacity, MOVNT / CLZERO may be preferable
>> there.
> 
> Initial population of guests doesn't matter at all, because nothing
> (outside of the single threaded toolstack process issuing the
> construction hypercalls) is going to touch the pages until the VM is
> unpaused.  The only async accesses I can think of are xenstored and
> xenconsoled starting up, and those are after the RAM is populated.
> 
> In cases like this, current might be a good way of choosing between
> temporal and non-temporal accesses.
> 
> As before, not double scrubbing will further improve things.
> 
>> I think in cases where we don't know how the page is going to be
>> used subsequently, we ought to favor latency over cache pollution
>> avoidance.
> 
> I broadly agree.  I think the cases where its reasonably safe to use the
> pollution-avoidance are fairly obvious, and there is a steep cost to
> wrongly-using non-temporal accesses.
> 
>> But in cases where we know the subsequent usage pattern,
>> we may want to direct scrubbing / zeroing accordingly. Yet of
>> course it's not very helpful that there's no way to avoid
>> polluting caches and still have reasonably low latency, so using
>> some heuristics may be unavoidable.
> 
> I don't think any heuristics beyond current, or possibly
> d->creation_finished are going to be worthwhile, but I think these alone
> can net us a decent win.
> 
>> And of course another goal of mine would be to avoid double zeroing
>> of pages: When scrubbing uses clear_page() anyway, there's no point
>> in the caller then calling clear_page() again. IMO, just like we
>> have xzalloc(), we should also have MEMF_zero. Internally the page
>> allocator can know whether a page was already scrubbed, and it
>> does know for sure whether scrubbing means zeroing.
> 
> I think we've discussed this before.  I'm in favour, but I'm absolutely
> certain that that wants be spelled MEMF_dirty (or equiv), so forgetting
> it fails safe, and code which is using dirty allocations is clearly
> identified and can be audited easily.

Well, there's a difference between scrubbing and zeroing. We already
have MEMF_no_scrub. And we already force callers to think about
whether they want zeroed memory (outside of the page allocator), by
having both xmalloc() and xzalloc() (and their relatives). So while
for scrubbing I could see your point, I'm not sure we should force
everyone who doesn't need zeroed pages to pass MEMF_dirty (or
whatever the name, as I don't particularly like this one). It's quite
the other way around - right now no pages come out of the page
allocator in known state content-wise. Parties presently calling
clear_page() right afterwards could easily, cleanly, and in a risk-
free manner be converted to use MEMF_zero.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:03:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:03:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114523.218263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDRV-0006Ol-Ic; Wed, 21 Apr 2021 14:03:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114523.218263; Wed, 21 Apr 2021 14: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 1lZDRV-0006Oe-Fb; Wed, 21 Apr 2021 14:03:01 +0000
Received: by outflank-mailman (input) for mailman id 114523;
 Wed, 21 Apr 2021 14:02: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 1lZDRT-0006OZ-NS
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:02: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 1lZDRS-0000k4-Bz; Wed, 21 Apr 2021 14:02:58 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZDRR-00038h-W3; Wed, 21 Apr 2021 14: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Message-Id:Date:Subject:Cc:To:From;
	bh=zycCPYwQEgxyGHJsgz1zrCejyYIMfuUu6Nb5wZjZeBw=; b=YL6QfigyQynC76r11KgRz0tNVc
	FgCOqWL2dVm2jeT8b04Lwb0zveLDZz9Qev21PxZF0oJvsxSPJjLGlIDlEyJmumg3TpAijcoSFfxp7
	Ucpabr57WwUY2nl764ButoLQjhkiEisB9BMuzS24cS3v2skZ4IrvCLra++/qlh3Jg40E=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH] tools/xenstored: Wire properly the command line option -M/--path-max
Date: Wed, 21 Apr 2021 15:02:55 +0100
Message-Id: <20210421140255.23437-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1

From: Julien Grall <jgrall@amazon.com>

The command line option -M/--path-max was meant to be added by
commit 924bf8c793cb "tools/xenstore: rework path length check" but this
wasn't wired through properly.

Fix it by adding the missing "case 'M':".

Fixes: 924bf8c793cb ("tools/xenstore: rework path length check")
Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 tools/xenstore/xenstored_core.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_core.c
index 591b28e4552f..c638e46221eb 100644
--- a/tools/xenstore/xenstored_core.c
+++ b/tools/xenstore/xenstored_core.c
@@ -2148,6 +2148,7 @@ int main(int argc, char *argv[])
 		case 'A':
 			quota_nb_perms_per_node = strtol(optarg, NULL, 10);
 			break;
+		case 'M':
 			quota_max_path_len = strtol(optarg, NULL, 10);
 			quota_max_path_len = min(XENSTORE_REL_PATH_MAX,
 						 quota_max_path_len);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:09:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:09:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114528.218274 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDXQ-0006eh-88; Wed, 21 Apr 2021 14:09:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114528.218274; Wed, 21 Apr 2021 14: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 1lZDXQ-0006ea-55; Wed, 21 Apr 2021 14:09:08 +0000
Received: by outflank-mailman (input) for mailman id 114528;
 Wed, 21 Apr 2021 14:09:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDXO-0006eV-Dl
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:09:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 97f701d5-ef24-4091-8e99-5545207b2f8c;
 Wed, 21 Apr 2021 14:09:05 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4CE21B2F4;
 Wed, 21 Apr 2021 14:09: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: 97f701d5-ef24-4091-8e99-5545207b2f8c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014144; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0eac9eGeDUZWbKCEhhHFAUaZwQy9VLJymLUC8jfqQW8=;
	b=SD6Jzegvh6PsY3smmyXv6j2E2zVJfDyyNOSfseIrHBPyHFAeWLvNav6qTsu3RNexgsgt7U
	yTvRCzDtiTZC5MgL+rxzQyNkWUJ4FEeKctNP682FWK2tEjDYwro6tzP1STQxCS5ARVSFEi
	hA6M2TUyMzrGzPLQrlpE0JSTlFAXEkA=
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
 <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
 <YH7/SvkrB2yGgRij@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5170aa51-8e34-3a45-5bf6-c0a187b1c427@suse.com>
Date: Wed, 21 Apr 2021 16:09:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YH7/SvkrB2yGgRij@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 18:20, Roger Pau Monné wrote:
> On Tue, Apr 20, 2021 at 05:47:49PM +0200, Jan Beulich wrote:
>> On 20.04.2021 17:29, Roger Pau Monné wrote:
>>> On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
>>>> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
>>>>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
>>>>  	@mv -f $@.new $@
>>>>  
>>>> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
>>>> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
>>>> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
>>>> +	$(call move-if-changed,$@.new,$@)
>>>
>>> Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?
>>
>> Yes and no: Yes as far as the actual file location is concerned.
>> No when considering where it gets generated: I generally consider
>> it risky to generate files outside of the directory where make
>> currently runs. There may be good reasons for certain exceptions,
>> but personally I don't see this case as good enough a reason.
>>
>> Somewhat related - if doing as you suggest, which Makefile's
>> clean: rule should clean up that file in your opinion?
> 
> The clean rule should be in the makefile where it's generated IMO,
> same as asm-offsets.h clean rule currently in xen/Makefile.
> 
>> Nevertheless, if there's general agreement that keeping the file
>> there is better, I'd make the change and simply ignore my unhappy
>> feelings about it.
> 
> I don't have a strong opinion, it just feels weird to have this IMO
> stray asm-offsets.s outside of it's arch directory, taking into
> account that we have asm-offsets.h generated from xen/Makefile into an
> arch specific directory already as a precedent in that makefile.

Well, asm-offsets.h generation doesn't involve the compiler, hence
no .*.d files get generated and want including later. For
asm-offsets.s to have dependencies properly honored, if we
generated it in xen/arch/<arch>, .asm-offsets.d would also end up
there, and hence including of it would need separately taking care
of.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:10:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:10:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114531.218287 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDZ9-0007UP-Kp; Wed, 21 Apr 2021 14:10:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114531.218287; Wed, 21 Apr 2021 14:10:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDZ9-0007UI-HR; Wed, 21 Apr 2021 14:10:55 +0000
Received: by outflank-mailman (input) for mailman id 114531;
 Wed, 21 Apr 2021 14:10:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=G3XE=JS=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lZDZ8-0007UB-BQ
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:10:54 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (unknown
 [40.107.6.55]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6e45dc42-7386-4863-9d5f-bb42eb46298e;
 Wed, 21 Apr 2021 14:10:52 +0000 (UTC)
Received: from DB6P195CA0009.EURP195.PROD.OUTLOOK.COM (2603:10a6:4:cb::19) by
 VI1PR0801MB1886.eurprd08.prod.outlook.com (2603:10a6:800:8b::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Wed, 21 Apr
 2021 14:10:50 +0000
Received: from DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:cb:cafe::ac) by DB6P195CA0009.outlook.office365.com
 (2603:10a6:4:cb::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20 via Frontend
 Transport; Wed, 21 Apr 2021 14:10:50 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT010.mail.protection.outlook.com (10.152.20.96) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Wed, 21 Apr 2021 14:10:50 +0000
Received: ("Tessian outbound 4ee49f77c636:v90");
 Wed, 21 Apr 2021 14:10:50 +0000
Received: from e8548465caed.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 81AD5988-1E4F-4EC8-A72C-DA1B61439984.1; 
 Wed, 21 Apr 2021 14:10:43 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e8548465caed.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 21 Apr 2021 14:10:43 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3198.eurprd08.prod.outlook.com (2603:10a6:803:49::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Wed, 21 Apr
 2021 14:10:41 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4042.024; Wed, 21 Apr 2021
 14:10:41 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0015.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:150::20) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.21 via Frontend Transport; Wed, 21 Apr 2021 14:10: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: 6e45dc42-7386-4863-9d5f-bb42eb46298e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=B1bNpradCH3xPuDnthBmcOncFykB4SfgAlQ2JkiSna4=;
 b=J0mDj+1Vs3u7QAqH7fbTbLbPivlv8CUl3C4/F6z6orOs4eB+8ROBCrT+7DmzNt6ylzjT8qYaWL8jDgLyQ3wDLtGISVWLykzpNW5thhXmElPnvwy7RhCJAYxTSICYCsX6REcabtnBawBRb6WsyD4LJjDoKv8SLirtmvUKlyPaavs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: c83ef6bd0d5ef676
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Yg1bo/T9oY7WpoaPMuiTsi94BuL+ZWY79jIDDnFW9x3z9yIsCj0oPL41Jtp1MJxUUjOGYqt7Z2rXHabogVa4WwHpLZfhkpnSTbQMyPshba7IWTLSogMht5kq4jFcEsuIhnOjWXiPpEawmkz8qZLLds+OqQTKeVGEhSop0Jyjhpioij5m8Y7rfZHXIYMkubn3n9qzizi/UONDQpzPZZX6LNHnaHJMzfu5FZZGi5SlbCRQ456Z+I8BZerUQcTOQM+wr9V/Gu/SxtZz7ORL94Qy1t65aDNEUSpzZ/+ABOLwtq5Ho4VqbIetU4W/VKlC+GzI1M6AqiPwW5vaujBbVSeF3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=B1bNpradCH3xPuDnthBmcOncFykB4SfgAlQ2JkiSna4=;
 b=YcSlc13fNbp4NzO8FePlVTRXOVWJxSLLOC/9z9StyGifckEIAZ9n8IrLbPmDSOH1dg6sG/sHBvm0XxI4nwxRusNOaHWEkE9DGftRlm9wXRZ/m8+3nQ+iGSIHHdWwY8XAnp7idHhtro3uo4WclAh9G7Iy9IH5MmHFuxl5R08MWWWq5sXntsz+SX5yFyfLlAdRnhRmy8nzxW+OyfqB9D+e81W/+0FJdS/F0A4yqvrlsFmajQ9TFm/KBUbANuyNW7lkXv6pVkhfFBc90Iowi90kd8B2C08mMMHy63D1d8ZDfOUzinpNphgbFxuZHtcCI11gA9wGGv6u8TI+JZlwMwA7qA==
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=B1bNpradCH3xPuDnthBmcOncFykB4SfgAlQ2JkiSna4=;
 b=J0mDj+1Vs3u7QAqH7fbTbLbPivlv8CUl3C4/F6z6orOs4eB+8ROBCrT+7DmzNt6ylzjT8qYaWL8jDgLyQ3wDLtGISVWLykzpNW5thhXmElPnvwy7RhCJAYxTSICYCsX6REcabtnBawBRb6WsyD4LJjDoKv8SLirtmvUKlyPaavs=
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH] tools/xenstored: Wire properly the command line option
 -M/--path-max
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <20210421140255.23437-1-julien@xen.org>
Date: Wed, 21 Apr 2021 15:10:34 +0100
Cc: xen-devel@lists.xenproject.org,
 Julien Grall <jgrall@amazon.com>,
 Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>,
 Juergen Gross <jgross@suse.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <2609B712-3780-49B4-80E8-E769C8981184@arm.com>
References: <20210421140255.23437-1-julien@xen.org>
To: Julien Grall <julien@xen.org>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0015.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:150::20) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7d55a90a-4461-4764-8231-08d904cf448d
X-MS-TrafficTypeDiagnostic: VI1PR08MB3198:|VI1PR0801MB1886:
X-Microsoft-Antispam-PRVS:
	<VI1PR0801MB1886FFAA0847645ECFE0FCAAE4479@VI1PR0801MB1886.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:350;OLM:350;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 6Deg9egZmvM7ktc9UTYYqsf9wgbt/4K8Ew1XkE5gD7ln9D1TKDwsbSXyRIZmV43sDezQEcsqkMnGdZucnYijM/Bb+K6fftU2SlDwB6h2QYznXu47hdbGnFuLwX2LlDOOLPtK1SP3UrOQn+hjPBCQg2PS3hEmgSHO2IJlC/zqoUav3/6SoKpxb07c0W5M3aLV+3o1EhXSG7iKzsXV9s4Fo/RejJ/zgbKXrdnbAowrGU8CxcAkb9JVJ69tJLQny+p0yYpDCI2nKRod1K81iTsZXCZHffWmgtFWqEuH/5eQczoZHa0FzmACJvAbj7PeFzKRMDlQU1Vo0dZc8gb/44hqH2qOoSlQF0lAPyVy3Ij02/MeFSpFpeTkCXyGxo+Fvyl8FmFlmwXZPf0ynC8/hSOMmbQruh89HFbnTHsitjq3ZMo11+rta+TTpC1uV5A9oUNU7n73gt9cPkXYyAAetSeF1TeJGXdb+ySiRT9mM004lJqggQWqccOOs3pnAKBJ0u9aakQpbh4Rc9yvaPr1DBDf2jU9KcVx3OPvrl/wD0DcrWKEOIAKzchjCIoEZQInr6sM0b/nElfk/hOjaOkK3HaqwI51aU57j85KogmKz3bfc46Zim29yU4/eiiXlVfjj2LDBFhZHxX421/0PQZm2nFufD8f7Gq/tHShZKYNv38Ng5WqZMX2wsygxihzXe+oYTJ5
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(376002)(136003)(39860400002)(346002)(366004)(186003)(6916009)(86362001)(2906002)(16526019)(478600001)(83380400001)(38350700002)(54906003)(4326008)(33656002)(53546011)(36756003)(52116002)(26005)(6666004)(38100700002)(2616005)(7696005)(66946007)(5660300002)(956004)(66476007)(8936002)(8676002)(44832011)(316002)(66556008)(6486002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
 =?utf-8?Q?7o2/+SvmdihiRs5A4dXAXhBlinWlxyawJU6xPDj?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3198
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	08d831da-989b-4e73-57e7-08d904cf3ef6
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1UwU3nT7fCnEwfiJ4K+2f47EbTsoRRP6lqDWqXDt1iNcoc9oRn0cHFVMC1vjACMoN1L8obwidneiWklCJscp+n/RkchODdVqUI/g80ZWs0PojqPq58dT0+iSOzMtjSLL3o5cXNpEPZ8g9IWDmWfFZ7lfYHiNQ/eID2B2lhArEweRgOrFDiY9ihnNsm8EibteaVklgCggv8Brk7Lguhxrh8FtrmT5EjauwqgQpqMkoX0ILJg28STGhOwblVMgPmB1qncQaPluvZBJ1lBC2b4HlkDAOCvsVrI/G581q7OnSB7hHYrfi9lrhGFpBE6erfHb6kOE4+XQz16lKwwMBqESfApY8LR264WUDaXC3Zo+t5HvMeUhWvCtOYIu6gGYeqvsBbb/8BzAP3F0uvswbr6FzzjS+BiNnbHYYsGZaf1T2OwBT1TTgZQaJ2Cj3WVWmYqewl/U2EufuHAVC2rzg8wTm4NAem0dT8XjR9w9+4KZJcv7lkTHAWBdC1O202GAwbhlD27vWlfiS3geC61CNyU+6pYMPlTT48I1UNx18HWs8Zz5MPvn+uqbpMxy8p7GwCN8IBy4cbRdkwlL70roACovNHxri/5EsfCJtWewfaEQDJeKTjNWHrogzofGZOSYriQyYAqjAk8v5o0hUuwfnQBYS6jbRHhqgwVIMFVjDHl8vrw=
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:(4636009)(136003)(39860400002)(376002)(396003)(346002)(46966006)(36840700001)(186003)(36860700001)(70206006)(33656002)(26005)(16526019)(81166007)(478600001)(86362001)(6666004)(82740400003)(336012)(47076005)(356005)(6862004)(8676002)(7696005)(107886003)(83380400001)(70586007)(316002)(6486002)(2906002)(5660300002)(53546011)(956004)(36756003)(54906003)(82310400003)(4326008)(8936002)(2616005)(44832011);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 14:10:50.4411
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d55a90a-4461-4764-8231-08d904cf448d
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:
	DB5EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1886



> On 21 Apr 2021, at 15:02, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> The command line option -M/--path-max was meant to be added by
> commit 924bf8c793cb "tools/xenstore: rework path length check" but this
> wasn't wired through properly.
>=20
> Fix it by adding the missing "case 'M':".
>=20
> Fixes: 924bf8c793cb ("tools/xenstore: rework path length check")
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> ---
> tools/xenstore/xenstored_core.c | 1 +
> 1 file changed, 1 insertion(+)
>=20
> diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_c=
ore.c
> index 591b28e4552f..c638e46221eb 100644
> --- a/tools/xenstore/xenstored_core.c
> +++ b/tools/xenstore/xenstored_core.c
> @@ -2148,6 +2148,7 @@ int main(int argc, char *argv[])
> 		case 'A':
> 			quota_nb_perms_per_node =3D strtol(optarg, NULL, 10);
> 			break;
> +		case 'M':
> 			quota_max_path_len =3D strtol(optarg, NULL, 10);
> 			quota_max_path_len =3D min(XENSTORE_REL_PATH_MAX,
> 						 quota_max_path_len);
> =E2=80=94=20
> 2.17.1
>=20
>=20

Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>=


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:15:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:15:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114541.218299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDdv-0007lk-C5; Wed, 21 Apr 2021 14:15:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114541.218299; Wed, 21 Apr 2021 14: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 1lZDdv-0007ld-95; Wed, 21 Apr 2021 14:15:51 +0000
Received: by outflank-mailman (input) for mailman id 114541;
 Wed, 21 Apr 2021 14:15:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDdu-0007lY-Fn
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:15:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 93e77e5e-b048-4c9b-9d86-0c822b186a64;
 Wed, 21 Apr 2021 14:15:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E24B6B4A7;
 Wed, 21 Apr 2021 14:15: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: 93e77e5e-b048-4c9b-9d86-0c822b186a64
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014549; 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=UesFdHn5dx/kBX6wc3Qq2EP1qW8INJTatdh3g8LHvHw=;
	b=HWLjfOz0qE957C1CJ3Z+32Bn0e71GzUoaKFRyISEXoADWbWV5P6hFSmgxCSQbF3r6uibec
	fQc0cMHkEL9ahk8o4ZWU7IV5ki/rdiSqlXpwaYdSl74OQoFGH067rwZJmv9HbfEjAsPFFi
	fXvBZJ4Yf6e+9wU8FvOVvXihK54Tiic=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 00/20] further population of xen/lib/
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Message-ID: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Date: Wed, 21 Apr 2021 16:15:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This is to dissolve / move xen/common/string.c. One benefit of moving
these functions into an archive is that we can drop some of the related
__HAVE_ARCH_* #define-s: By living in an archive, the per-arch functions
will preempt any loading of the respective functions (objects) from the
archive. (Down the road we may want to move the per-arch functions into
archives as well, at which point the per-arch archive(s) would need to
be specified ahead of the common one(s) to the linker.)

The only change in v2 is adjustment to all of the commit messages.

01: lib: move memset()
02: lib: move memcpy()
03: lib: move memmove()
04: lib: move memcmp()
05: lib: move memchr()
06: lib: move memchr_inv()
07: lib: move strlen()
08: lib: move strnlen()
09: lib: move strcmp()
10: lib: move strncmp()
11: lib: move strlcpy()
12: lib: move strlcat()
13: lib: move strchr()
14: lib: move strrchr()
15: lib: move strstr()
16: lib: move strcasecmp()
17: lib: move/rename strnicmp() to strncasecmp()
18: lib: move strspn()
19: lib: move strpbrk()
20: lib: move strsep()

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:15:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:15:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114544.218330 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe0-0007pm-BU; Wed, 21 Apr 2021 14:15:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114544.218330; Wed, 21 Apr 2021 14:15:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe0-0007pT-3Q; Wed, 21 Apr 2021 14:15:56 +0000
Received: by outflank-mailman (input) for mailman id 114544;
 Wed, 21 Apr 2021 14:15:55 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDdz-0007oj-7q
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:15:55 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDdz-0000xN-0Y; Wed, 21 Apr 2021 14:15:55 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDdy-00045m-FC; Wed, 21 Apr 2021 14:15: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=M+SUaviRQQzVknlharqZ3Xo7csEXaAzP707OhQVzBUk=; b=O
	++ncezD3CiYyamLzJCFSccjv3HKmeaOXOfHRETtcsK4Tyc/cra5qdCjsnqKm7ChRAhdSzyafPFQBf
	r6kbNfD5UaNE9N/M/SgBrlQt10Nd5z4BgkGgYHh/KDjkaL/DQRW7qpgF8ckI9w0eW4q/z0Ux96ITZ
	twsVpenGJXDroRTw=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 02/13] x86/mm: switch to new APIs in map_pages_to_xen
Date: Wed, 21 Apr 2021 15:15:30 +0100
Message-Id: <f8a422d4da4a93cd9b2f788c4594a1efe82bf389.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Page tables allocated in that function should be mapped and unmapped
now.

Take the opportunity to avoid a potential double map in
map_pages_to_xen() by initialising pl1e to NULL and only map it if it
was not mapped earlier.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>

---
Changed in v10:
- avoid a potential double map.
- drop RoB due to this change.
---
 xen/arch/x86/mm.c | 64 ++++++++++++++++++++++++++++-------------------
 1 file changed, 38 insertions(+), 26 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 5944ef19dc50..8a68da26f45f 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5215,7 +5215,7 @@ int map_pages_to_xen(
                 }
                 else
                 {
-                    l2_pgentry_t *l2t = l3e_to_l2e(ol3e);
+                    l2_pgentry_t *l2t = map_l2t_from_l3e(ol3e);
 
                     for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
                     {
@@ -5227,10 +5227,11 @@ int map_pages_to_xen(
                         else
                         {
                             unsigned int j;
-                            const l1_pgentry_t *l1t = l2e_to_l1e(ol2e);
+                            const l1_pgentry_t *l1t = map_l1t_from_l2e(ol2e);
 
                             for ( j = 0; j < L1_PAGETABLE_ENTRIES; j++ )
                                 flush_flags(l1e_get_flags(l1t[j]));
+                            unmap_domain_page(l1t);
                         }
                     }
                     flush_area(virt, flush_flags);
@@ -5239,9 +5240,10 @@ int map_pages_to_xen(
                         ol2e = l2t[i];
                         if ( (l2e_get_flags(ol2e) & _PAGE_PRESENT) &&
                              !(l2e_get_flags(ol2e) & _PAGE_PSE) )
-                            free_xen_pagetable(l2e_to_l1e(ol2e));
+                            free_xen_pagetable_new(l2e_get_mfn(ol2e));
                     }
-                    free_xen_pagetable(l2t);
+                    unmap_domain_page(l2t);
+                    free_xen_pagetable_new(l3e_get_mfn(ol3e));
                 }
             }
 
@@ -5258,6 +5260,7 @@ int map_pages_to_xen(
             unsigned int flush_flags =
                 FLUSH_TLB | FLUSH_ORDER(2 * PAGETABLE_ORDER);
             l2_pgentry_t *l2t;
+            mfn_t l2mfn;
 
             /* Skip this PTE if there is no change. */
             if ( ((l3e_get_pfn(ol3e) & ~(L2_PAGETABLE_ENTRIES *
@@ -5279,15 +5282,17 @@ int map_pages_to_xen(
                 continue;
             }
 
-            l2t = alloc_xen_pagetable();
-            if ( l2t == NULL )
+            l2mfn = alloc_xen_pagetable_new();
+            if ( mfn_eq(l2mfn, INVALID_MFN) )
                 goto out;
 
+            l2t = map_domain_page(l2mfn);
             for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
                 l2e_write(l2t + i,
                           l2e_from_pfn(l3e_get_pfn(ol3e) +
                                        (i << PAGETABLE_ORDER),
                                        l3e_get_flags(ol3e)));
+            UNMAP_DOMAIN_PAGE(l2t);
 
             if ( l3e_get_flags(ol3e) & _PAGE_GLOBAL )
                 flush_flags |= FLUSH_TLB_GLOBAL;
@@ -5297,15 +5302,15 @@ int map_pages_to_xen(
             if ( (l3e_get_flags(*pl3e) & _PAGE_PRESENT) &&
                  (l3e_get_flags(*pl3e) & _PAGE_PSE) )
             {
-                l3e_write_atomic(pl3e, l3e_from_mfn(virt_to_mfn(l2t),
-                                                    __PAGE_HYPERVISOR));
-                l2t = NULL;
+                l3e_write_atomic(pl3e,
+                                 l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR));
+                l2mfn = INVALID_MFN;
             }
             if ( locking )
                 spin_unlock(&map_pgdir_lock);
             flush_area(virt, flush_flags);
-            if ( l2t )
-                free_xen_pagetable(l2t);
+
+            free_xen_pagetable_new(l2mfn);
         }
 
         pl2e = virt_to_xen_l2e(virt);
@@ -5333,12 +5338,13 @@ int map_pages_to_xen(
                 }
                 else
                 {
-                    l1_pgentry_t *l1t = l2e_to_l1e(ol2e);
+                    l1_pgentry_t *l1t = map_l1t_from_l2e(ol2e);
 
                     for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                         flush_flags(l1e_get_flags(l1t[i]));
                     flush_area(virt, flush_flags);
-                    free_xen_pagetable(l1t);
+                    unmap_domain_page(l1t);
+                    free_xen_pagetable_new(l2e_get_mfn(ol2e));
                 }
             }
 
@@ -5349,20 +5355,20 @@ int map_pages_to_xen(
         }
         else
         {
+            pl1e = NULL;
             /* Normal page mapping. */
             if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
             {
                 pl1e = virt_to_xen_l1e(virt);
                 if ( pl1e == NULL )
                     goto out;
-
-                UNMAP_DOMAIN_PAGE(pl1e);
             }
             else if ( l2e_get_flags(*pl2e) & _PAGE_PSE )
             {
                 unsigned int flush_flags =
                     FLUSH_TLB | FLUSH_ORDER(PAGETABLE_ORDER);
                 l1_pgentry_t *l1t;
+                mfn_t l1mfn;
 
                 /* Skip this PTE if there is no change. */
                 if ( (((l2e_get_pfn(*pl2e) & ~(L1_PAGETABLE_ENTRIES - 1)) +
@@ -5382,14 +5388,16 @@ int map_pages_to_xen(
                     goto check_l3;
                 }
 
-                l1t = alloc_xen_pagetable();
-                if ( l1t == NULL )
+                l1mfn = alloc_xen_pagetable_new();
+                if ( mfn_eq(l1mfn, INVALID_MFN) )
                     goto out;
 
+                l1t = map_domain_page(l1mfn);
                 for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                     l1e_write(&l1t[i],
                               l1e_from_pfn(l2e_get_pfn(*pl2e) + i,
                                            lNf_to_l1f(l2e_get_flags(*pl2e))));
+                UNMAP_DOMAIN_PAGE(l1t);
 
                 if ( l2e_get_flags(*pl2e) & _PAGE_GLOBAL )
                     flush_flags |= FLUSH_TLB_GLOBAL;
@@ -5399,20 +5407,22 @@ int map_pages_to_xen(
                 if ( (l2e_get_flags(*pl2e) & _PAGE_PRESENT) &&
                      (l2e_get_flags(*pl2e) & _PAGE_PSE) )
                 {
-                    l2e_write_atomic(pl2e, l2e_from_mfn(virt_to_mfn(l1t),
+                    l2e_write_atomic(pl2e, l2e_from_mfn(l1mfn,
                                                         __PAGE_HYPERVISOR));
-                    l1t = NULL;
+                    l1mfn = INVALID_MFN;
                 }
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(virt, flush_flags);
-                if ( l1t )
-                    free_xen_pagetable(l1t);
+
+                free_xen_pagetable_new(l1mfn);
             }
 
-            pl1e  = l2e_to_l1e(*pl2e) + l1_table_offset(virt);
+            if ( !pl1e )
+                pl1e  = map_l1t_from_l2e(*pl2e) + l1_table_offset(virt);
             ol1e  = *pl1e;
             l1e_write_atomic(pl1e, l1e_from_mfn(mfn, flags));
+            UNMAP_DOMAIN_PAGE(pl1e);
             if ( (l1e_get_flags(ol1e) & _PAGE_PRESENT) )
             {
                 unsigned int flush_flags = FLUSH_TLB | FLUSH_ORDER(0);
@@ -5456,12 +5466,13 @@ int map_pages_to_xen(
                     goto check_l3;
                 }
 
-                l1t = l2e_to_l1e(ol2e);
+                l1t = map_l1t_from_l2e(ol2e);
                 base_mfn = l1e_get_pfn(l1t[0]) & ~(L1_PAGETABLE_ENTRIES - 1);
                 for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                     if ( (l1e_get_pfn(l1t[i]) != (base_mfn + i)) ||
                          (l1e_get_flags(l1t[i]) != flags) )
                         break;
+                UNMAP_DOMAIN_PAGE(l1t);
                 if ( i == L1_PAGETABLE_ENTRIES )
                 {
                     l2e_write_atomic(pl2e, l2e_from_pfn(base_mfn,
@@ -5471,7 +5482,7 @@ int map_pages_to_xen(
                     flush_area(virt - PAGE_SIZE,
                                FLUSH_TLB_GLOBAL |
                                FLUSH_ORDER(PAGETABLE_ORDER));
-                    free_xen_pagetable(l2e_to_l1e(ol2e));
+                    free_xen_pagetable_new(l2e_get_mfn(ol2e));
                 }
                 else if ( locking )
                     spin_unlock(&map_pgdir_lock);
@@ -5504,7 +5515,7 @@ int map_pages_to_xen(
                 continue;
             }
 
-            l2t = l3e_to_l2e(ol3e);
+            l2t = map_l2t_from_l3e(ol3e);
             base_mfn = l2e_get_pfn(l2t[0]) & ~(L2_PAGETABLE_ENTRIES *
                                               L1_PAGETABLE_ENTRIES - 1);
             for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
@@ -5512,6 +5523,7 @@ int map_pages_to_xen(
                       (base_mfn + (i << PAGETABLE_ORDER))) ||
                      (l2e_get_flags(l2t[i]) != l1f_to_lNf(flags)) )
                     break;
+            UNMAP_DOMAIN_PAGE(l2t);
             if ( i == L2_PAGETABLE_ENTRIES )
             {
                 l3e_write_atomic(pl3e, l3e_from_pfn(base_mfn,
@@ -5521,7 +5533,7 @@ int map_pages_to_xen(
                 flush_area(virt - PAGE_SIZE,
                            FLUSH_TLB_GLOBAL |
                            FLUSH_ORDER(2*PAGETABLE_ORDER));
-                free_xen_pagetable(l3e_to_l2e(ol3e));
+                free_xen_pagetable_new(l3e_get_mfn(ol3e));
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:15:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:15:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114542.218311 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDdx-0007mz-KX; Wed, 21 Apr 2021 14:15:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114542.218311; Wed, 21 Apr 2021 14:15:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDdx-0007mq-Gy; Wed, 21 Apr 2021 14:15:53 +0000
Received: by outflank-mailman (input) for mailman id 114542;
 Wed, 21 Apr 2021 14:15:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDdw-0007mV-1Y
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:15:52 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDdv-0000x9-LS; Wed, 21 Apr 2021 14:15:51 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDdv-00045m-9j; Wed, 21 Apr 2021 14: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Message-Id:Date:Subject:Cc:To:From;
	bh=8Y7cZ0jhBCgL/d+LypK4ewU4crbmjT7K6WHrZgfO9aQ=; b=arlZcmqtMmxe3rjtlQldC0/jnv
	CHtbTwZF69HBTXRGwhIOLIpOKTgw0+oDQu+sNM9XYMQt4SyYf2+V3w4Hn4sC4rzcxTNyt4N56H9Vb
	wwBayap5XAwLz1Y1wYKuL+Q5Lo1LkJ4v0qpdEZDgiXNhoIse1A7jml0UranF3e3U1fCE=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 00/13] switch to domheap for Xen page tables
Date: Wed, 21 Apr 2021 15:15:28 +0100
Message-Id: <cover.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1

From: Hongyan Xia <hongyxia@amazon.com>

This series rewrites all the remaining functions and finally makes the
switch from xenheap to domheap for Xen page tables, so that they no
longer need to rely on the direct map, which is a big step towards
removing the direct map.

---
Changed in v10:
- rebase.
- address comments in 01/13, which propagates a change into 02/13.

Changed in v9:
- drop first 2 patches which have been merged in XSA-345.
- adjust code around L3 page locking in mm.c.

Changed in v8:
- address comments in v7.
- rebase

Changed in v7:
- rebase and cleanup.
- address comments in v6.
- add alloc_map_clear_xen_pt() helper to simplify the patches in this
  series.

Changed in v6:
- drop the patches that have already been merged.
- rebase and cleanup.
- rewrite map_pages_to_xen() and modify_xen_mappings() in a way that
  does not require an end_of_loop goto label.

Hongyan Xia (2):
  x86/mm: drop old page table APIs
  x86: switch to use domheap page for page tables

Wei Liu (11):
  x86/mm: rewrite virt_to_xen_l*e
  x86/mm: switch to new APIs in map_pages_to_xen
  x86/mm: switch to new APIs in modify_xen_mappings
  x86_64/mm: introduce pl2e in paging_init
  x86_64/mm: switch to new APIs in paging_init
  x86_64/mm: switch to new APIs in setup_m2p_table
  efi: use new page table APIs in copy_mapping
  efi: switch to new APIs in EFI code
  x86/smpboot: add exit path for clone_mapping()
  x86/smpboot: switch clone_mapping() to new APIs
  x86/mm: drop _new suffix for page table APIs

 xen/arch/x86/efi/runtime.h |  13 +-
 xen/arch/x86/mm.c          | 247 ++++++++++++++++++++++---------------
 xen/arch/x86/setup.c       |   4 +-
 xen/arch/x86/smpboot.c     |  70 +++++++----
 xen/arch/x86/x86_64/mm.c   |  80 +++++++-----
 xen/common/efi/boot.c      |  83 ++++++++-----
 xen/common/efi/efi.h       |   3 +-
 xen/common/efi/runtime.c   |   8 +-
 xen/include/asm-x86/mm.h   |   7 +-
 xen/include/asm-x86/page.h |   5 -
 10 files changed, 314 insertions(+), 206 deletions(-)

-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:15:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:15:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114543.218323 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDdz-0007p7-UW; Wed, 21 Apr 2021 14:15:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114543.218323; Wed, 21 Apr 2021 14: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 1lZDdz-0007oz-Pw; Wed, 21 Apr 2021 14:15:55 +0000
Received: by outflank-mailman (input) for mailman id 114543;
 Wed, 21 Apr 2021 14:15:53 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDdx-0007my-I6
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:15:53 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDdx-0000xG-9a; Wed, 21 Apr 2021 14:15:53 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDdw-00045m-SR; Wed, 21 Apr 2021 14:15:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=wzlCagLjSrFeG2Z7JvIUbKAYuqEvCwPwhzznOHco8PU=; b=L
	glFcDjqWdWTjpqKlBZc99ji95vJWuW0VFBfREunRQFhDz8xWbjOMWAVm5I8IdJGwysdgPy+NxNqBe
	Szda3hMbMc/U0raTgxfHcp22i9Z7qmrgJ60MNHlj+Ar0SWbclAkZTO/GxY/HZiy748wMs4PPK7GhH
	LwNrG//NPcNjZTvk=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 01/13] x86/mm: rewrite virt_to_xen_l*e
Date: Wed, 21 Apr 2021 15:15:29 +0100
Message-Id: <0ccd3883b0ec2e05d600bb593f8f0afd058adc43.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Rewrite those functions to use the new APIs. Modify its callers to unmap
the pointer returned. Since alloc_xen_pagetable_new() is almost never
useful unless accompanied by page clearing and a mapping, introduce a
helper alloc_map_clear_xen_pt() for this sequence.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>

---
Changed in v10:
- remove stale include.
- s/alloc_map_clear_xen_pt/alloc_mapped_pagetable/g.
- fix mis-hunks.

Changed in v9:
- use domain_page_map_to_mfn() around the L3 table locking logic.
- remove vmap_to_mfn() changes since we now use xen_map_to_mfn().

Changed in v8:
- s/virtual address/linear address/.
- BUG_ON() on NULL return in vmap_to_mfn().

Changed in v7:
- remove a comment.
- use l1e_get_mfn() instead of converting things back and forth.
- add alloc_map_clear_xen_pt().
- unmap before the next mapping to reduce mapcache pressure.
- use normal unmap calls instead of the macro in error paths because
  unmap can handle NULL now.
---
 xen/arch/x86/mm.c        | 102 +++++++++++++++++++++++++++------------
 xen/include/asm-x86/mm.h |   1 +
 2 files changed, 72 insertions(+), 31 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index b7a10bbdd401..5944ef19dc50 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -4931,8 +4931,28 @@ void free_xen_pagetable_new(mfn_t mfn)
         free_xenheap_page(mfn_to_virt(mfn_x(mfn)));
 }
 
+void *alloc_mapped_pagetable(mfn_t *pmfn)
+{
+    mfn_t mfn = alloc_xen_pagetable_new();
+    void *ret;
+
+    if ( mfn_eq(mfn, INVALID_MFN) )
+        return NULL;
+
+    if ( pmfn )
+        *pmfn = mfn;
+    ret = map_domain_page(mfn);
+    clear_page(ret);
+
+    return ret;
+}
+
 static DEFINE_SPINLOCK(map_pgdir_lock);
 
+/*
+ * For virt_to_xen_lXe() functions, they take a linear address and return a
+ * pointer to Xen's LX entry. Caller needs to unmap the pointer.
+ */
 static l3_pgentry_t *virt_to_xen_l3e(unsigned long v)
 {
     l4_pgentry_t *pl4e;
@@ -4941,33 +4961,33 @@ static l3_pgentry_t *virt_to_xen_l3e(unsigned long v)
     if ( !(l4e_get_flags(*pl4e) & _PAGE_PRESENT) )
     {
         bool locking = system_state > SYS_STATE_boot;
-        l3_pgentry_t *l3t = alloc_xen_pagetable();
+        mfn_t l3mfn;
+        l3_pgentry_t *l3t = alloc_mapped_pagetable(&l3mfn);
 
         if ( !l3t )
             return NULL;
-        clear_page(l3t);
+        UNMAP_DOMAIN_PAGE(l3t);
         if ( locking )
             spin_lock(&map_pgdir_lock);
         if ( !(l4e_get_flags(*pl4e) & _PAGE_PRESENT) )
         {
-            l4_pgentry_t l4e = l4e_from_paddr(__pa(l3t), __PAGE_HYPERVISOR);
+            l4_pgentry_t l4e = l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR);
 
             l4e_write(pl4e, l4e);
             efi_update_l4_pgtable(l4_table_offset(v), l4e);
-            l3t = NULL;
+            l3mfn = INVALID_MFN;
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        if ( l3t )
-            free_xen_pagetable(l3t);
+        free_xen_pagetable_new(l3mfn);
     }
 
-    return l4e_to_l3e(*pl4e) + l3_table_offset(v);
+    return map_l3t_from_l4e(*pl4e) + l3_table_offset(v);
 }
 
 static l2_pgentry_t *virt_to_xen_l2e(unsigned long v)
 {
-    l3_pgentry_t *pl3e;
+    l3_pgentry_t *pl3e, l3e;
 
     pl3e = virt_to_xen_l3e(v);
     if ( !pl3e )
@@ -4976,31 +4996,37 @@ static l2_pgentry_t *virt_to_xen_l2e(unsigned long v)
     if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
     {
         bool locking = system_state > SYS_STATE_boot;
-        l2_pgentry_t *l2t = alloc_xen_pagetable();
+        mfn_t l2mfn;
+        l2_pgentry_t *l2t = alloc_mapped_pagetable(&l2mfn);
 
         if ( !l2t )
+        {
+            unmap_domain_page(pl3e);
             return NULL;
-        clear_page(l2t);
+        }
+        UNMAP_DOMAIN_PAGE(l2t);
         if ( locking )
             spin_lock(&map_pgdir_lock);
         if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
         {
-            l3e_write(pl3e, l3e_from_paddr(__pa(l2t), __PAGE_HYPERVISOR));
-            l2t = NULL;
+            l3e_write(pl3e, l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR));
+            l2mfn = INVALID_MFN;
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        if ( l2t )
-            free_xen_pagetable(l2t);
+        free_xen_pagetable_new(l2mfn);
     }
 
     BUG_ON(l3e_get_flags(*pl3e) & _PAGE_PSE);
-    return l3e_to_l2e(*pl3e) + l2_table_offset(v);
+    l3e = *pl3e;
+    unmap_domain_page(pl3e);
+
+    return map_l2t_from_l3e(l3e) + l2_table_offset(v);
 }
 
 l1_pgentry_t *virt_to_xen_l1e(unsigned long v)
 {
-    l2_pgentry_t *pl2e;
+    l2_pgentry_t *pl2e, l2e;
 
     pl2e = virt_to_xen_l2e(v);
     if ( !pl2e )
@@ -5009,26 +5035,32 @@ l1_pgentry_t *virt_to_xen_l1e(unsigned long v)
     if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
     {
         bool locking = system_state > SYS_STATE_boot;
-        l1_pgentry_t *l1t = alloc_xen_pagetable();
+        mfn_t l1mfn;
+        l1_pgentry_t *l1t = alloc_mapped_pagetable(&l1mfn);
 
         if ( !l1t )
+        {
+            unmap_domain_page(pl2e);
             return NULL;
-        clear_page(l1t);
+        }
+        UNMAP_DOMAIN_PAGE(l1t);
         if ( locking )
             spin_lock(&map_pgdir_lock);
         if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
         {
-            l2e_write(pl2e, l2e_from_paddr(__pa(l1t), __PAGE_HYPERVISOR));
-            l1t = NULL;
+            l2e_write(pl2e, l2e_from_mfn(l1mfn, __PAGE_HYPERVISOR));
+            l1mfn = INVALID_MFN;
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        if ( l1t )
-            free_xen_pagetable(l1t);
+        free_xen_pagetable_new(l1mfn);
     }
 
     BUG_ON(l2e_get_flags(*pl2e) & _PAGE_PSE);
-    return l2e_to_l1e(*pl2e) + l1_table_offset(v);
+    l2e = *pl2e;
+    unmap_domain_page(pl2e);
+
+    return map_l1t_from_l2e(l2e) + l1_table_offset(v);
 }
 
 /* Convert to from superpage-mapping flags for map_pages_to_xen(). */
@@ -5085,7 +5117,7 @@ mfn_t xen_map_to_mfn(unsigned long va)
 
     L3T_INIT(l3page);
     CHECK_MAPPED(pl3e);
-    l3page = virt_to_page(pl3e);
+    l3page = mfn_to_page(domain_page_map_to_mfn(pl3e));
     L3T_LOCK(l3page);
 
     CHECK_MAPPED(l3e_get_flags(*pl3e) & _PAGE_PRESENT);
@@ -5124,7 +5156,8 @@ int map_pages_to_xen(
     unsigned int flags)
 {
     bool locking = system_state > SYS_STATE_boot;
-    l2_pgentry_t *pl2e, ol2e;
+    l3_pgentry_t *pl3e = NULL, ol3e;
+    l2_pgentry_t *pl2e = NULL, ol2e;
     l1_pgentry_t *pl1e, ol1e;
     unsigned int  i;
     int rc = -ENOMEM;
@@ -5148,15 +5181,16 @@ int map_pages_to_xen(
 
     while ( nr_mfns != 0 )
     {
-        l3_pgentry_t *pl3e, ol3e;
-
+        /* Clean up the previous iteration. */
         L3T_UNLOCK(current_l3page);
+        UNMAP_DOMAIN_PAGE(pl3e);
+        UNMAP_DOMAIN_PAGE(pl2e);
 
         pl3e = virt_to_xen_l3e(virt);
         if ( !pl3e )
             goto out;
 
-        current_l3page = virt_to_page(pl3e);
+        current_l3page = mfn_to_page(domain_page_map_to_mfn(pl3e));
         L3T_LOCK(current_l3page);
         ol3e = *pl3e;
 
@@ -5321,6 +5355,8 @@ int map_pages_to_xen(
                 pl1e = virt_to_xen_l1e(virt);
                 if ( pl1e == NULL )
                     goto out;
+
+                UNMAP_DOMAIN_PAGE(pl1e);
             }
             else if ( l2e_get_flags(*pl2e) & _PAGE_PSE )
             {
@@ -5498,6 +5534,8 @@ int map_pages_to_xen(
 
  out:
     L3T_UNLOCK(current_l3page);
+    unmap_domain_page(pl3e);
+    unmap_domain_page(pl2e);
     return rc;
 }
 
@@ -5521,6 +5559,7 @@ int populate_pt_range(unsigned long virt, unsigned long nr_mfns)
 int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 {
     bool locking = system_state > SYS_STATE_boot;
+    l3_pgentry_t *pl3e = NULL;
     l2_pgentry_t *pl2e;
     l1_pgentry_t *pl1e;
     unsigned int  i;
@@ -5539,15 +5578,15 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 
     while ( v < e )
     {
-        l3_pgentry_t *pl3e;
-
+        /* Clean up the previous iteration. */
         L3T_UNLOCK(current_l3page);
+        UNMAP_DOMAIN_PAGE(pl3e);
 
         pl3e = virt_to_xen_l3e(v);
         if ( !pl3e )
             goto out;
 
-        current_l3page = virt_to_page(pl3e);
+        current_l3page = mfn_to_page(domain_page_map_to_mfn(pl3e));
         L3T_LOCK(current_l3page);
 
         if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
@@ -5777,6 +5816,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 
  out:
     L3T_UNLOCK(current_l3page);
+    unmap_domain_page(pl3e);
     return rc;
 }
 
diff --git a/xen/include/asm-x86/mm.h b/xen/include/asm-x86/mm.h
index 041c158f03f6..111754675cbf 100644
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -577,6 +577,7 @@ void *alloc_xen_pagetable(void);
 void free_xen_pagetable(void *v);
 mfn_t alloc_xen_pagetable_new(void);
 void free_xen_pagetable_new(mfn_t mfn);
+void *alloc_mapped_pagetable(mfn_t *pmfn);
 
 l1_pgentry_t *virt_to_xen_l1e(unsigned long v);
 
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:15:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:15:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114545.218347 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe3-0007uY-0O; Wed, 21 Apr 2021 14:15:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114545.218347; Wed, 21 Apr 2021 14:15:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe2-0007uN-RG; Wed, 21 Apr 2021 14:15:58 +0000
Received: by outflank-mailman (input) for mailman id 114545;
 Wed, 21 Apr 2021 14:15:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDe0-0007qn-Ic
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:15:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe0-0000xW-Fq; Wed, 21 Apr 2021 14:15:56 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe0-00045m-5W; Wed, 21 Apr 2021 14:15: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=ITwCFGJE5PzREULzlU52/zPUFXElzM0weVPpMgzvcOM=; b=0
	bzq9Ai+3RFDuCdJsQi6ptxhmoLKVT9+2a3cJ3gjqHHvez8sfWZMDVIXy97K0Be0ECxuq0FxZu+Lgo
	rlh8KN2liI5eVT+6FlvJkAwr/coNHtoXH2M7qaAIXhHQi1BRm5FkNVjSq1l8X31kPQhQdh+qDr3kP
	0zC3OFv0jRLVOgao=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 03/13] x86/mm: switch to new APIs in modify_xen_mappings
Date: Wed, 21 Apr 2021 15:15:31 +0100
Message-Id: <8a15361c10f2cdcf2bd4a973d10c45be6a2536e3.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Page tables allocated in that function should be mapped and unmapped
now.

Note that pl2e now maybe mapped and unmapped in different iterations, so
we need to add clean-ups for that.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v7:
- use normal unmap in the error path.
---
 xen/arch/x86/mm.c | 57 ++++++++++++++++++++++++++++++-----------------
 1 file changed, 36 insertions(+), 21 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 8a68da26f45f..832e654294b4 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5546,6 +5546,7 @@ int map_pages_to_xen(
 
  out:
     L3T_UNLOCK(current_l3page);
+    unmap_domain_page(pl2e);
     unmap_domain_page(pl3e);
     unmap_domain_page(pl2e);
     return rc;
@@ -5572,7 +5573,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 {
     bool locking = system_state > SYS_STATE_boot;
     l3_pgentry_t *pl3e = NULL;
-    l2_pgentry_t *pl2e;
+    l2_pgentry_t *pl2e = NULL;
     l1_pgentry_t *pl1e;
     unsigned int  i;
     unsigned long v = s;
@@ -5592,6 +5593,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
     {
         /* Clean up the previous iteration. */
         L3T_UNLOCK(current_l3page);
+        UNMAP_DOMAIN_PAGE(pl2e);
         UNMAP_DOMAIN_PAGE(pl3e);
 
         pl3e = virt_to_xen_l3e(v);
@@ -5614,6 +5616,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
         if ( l3e_get_flags(*pl3e) & _PAGE_PSE )
         {
             l2_pgentry_t *l2t;
+            mfn_t l2mfn;
 
             if ( l2_table_offset(v) == 0 &&
                  l1_table_offset(v) == 0 &&
@@ -5630,35 +5633,38 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             }
 
             /* PAGE1GB: shatter the superpage and fall through. */
-            l2t = alloc_xen_pagetable();
-            if ( !l2t )
+            l2mfn = alloc_xen_pagetable_new();
+            if ( mfn_eq(l2mfn, INVALID_MFN) )
                 goto out;
 
+            l2t = map_domain_page(l2mfn);
             for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
                 l2e_write(l2t + i,
                           l2e_from_pfn(l3e_get_pfn(*pl3e) +
                                        (i << PAGETABLE_ORDER),
                                        l3e_get_flags(*pl3e)));
+            UNMAP_DOMAIN_PAGE(l2t);
+
             if ( locking )
                 spin_lock(&map_pgdir_lock);
             if ( (l3e_get_flags(*pl3e) & _PAGE_PRESENT) &&
                  (l3e_get_flags(*pl3e) & _PAGE_PSE) )
             {
-                l3e_write_atomic(pl3e, l3e_from_mfn(virt_to_mfn(l2t),
-                                                    __PAGE_HYPERVISOR));
-                l2t = NULL;
+                l3e_write_atomic(pl3e,
+                                 l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR));
+                l2mfn = INVALID_MFN;
             }
             if ( locking )
                 spin_unlock(&map_pgdir_lock);
-            if ( l2t )
-                free_xen_pagetable(l2t);
+
+            free_xen_pagetable_new(l2mfn);
         }
 
         /*
          * The L3 entry has been verified to be present, and we've dealt with
          * 1G pages as well, so the L2 table cannot require allocation.
          */
-        pl2e = l3e_to_l2e(*pl3e) + l2_table_offset(v);
+        pl2e = map_l2t_from_l3e(*pl3e) + l2_table_offset(v);
 
         if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
         {
@@ -5686,41 +5692,45 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             else
             {
                 l1_pgentry_t *l1t;
-
                 /* PSE: shatter the superpage and try again. */
-                l1t = alloc_xen_pagetable();
-                if ( !l1t )
+                mfn_t l1mfn = alloc_xen_pagetable_new();
+
+                if ( mfn_eq(l1mfn, INVALID_MFN) )
                     goto out;
 
+                l1t = map_domain_page(l1mfn);
                 for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                     l1e_write(&l1t[i],
                               l1e_from_pfn(l2e_get_pfn(*pl2e) + i,
                                            l2e_get_flags(*pl2e) & ~_PAGE_PSE));
+                UNMAP_DOMAIN_PAGE(l1t);
+
                 if ( locking )
                     spin_lock(&map_pgdir_lock);
                 if ( (l2e_get_flags(*pl2e) & _PAGE_PRESENT) &&
                      (l2e_get_flags(*pl2e) & _PAGE_PSE) )
                 {
-                    l2e_write_atomic(pl2e, l2e_from_mfn(virt_to_mfn(l1t),
+                    l2e_write_atomic(pl2e, l2e_from_mfn(l1mfn,
                                                         __PAGE_HYPERVISOR));
-                    l1t = NULL;
+                    l1mfn = INVALID_MFN;
                 }
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
-                if ( l1t )
-                    free_xen_pagetable(l1t);
+
+                free_xen_pagetable_new(l1mfn);
             }
         }
         else
         {
             l1_pgentry_t nl1e, *l1t;
+            mfn_t l1mfn;
 
             /*
              * Ordinary 4kB mapping: The L2 entry has been verified to be
              * present, and we've dealt with 2M pages as well, so the L1 table
              * cannot require allocation.
              */
-            pl1e = l2e_to_l1e(*pl2e) + l1_table_offset(v);
+            pl1e = map_l1t_from_l2e(*pl2e) + l1_table_offset(v);
 
             /* Confirm the caller isn't trying to create new mappings. */
             if ( !(l1e_get_flags(*pl1e) & _PAGE_PRESENT) )
@@ -5731,6 +5741,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                                (l1e_get_flags(*pl1e) & ~FLAGS_MASK) | nf);
 
             l1e_write_atomic(pl1e, nl1e);
+            UNMAP_DOMAIN_PAGE(pl1e);
             v += PAGE_SIZE;
 
             /*
@@ -5760,10 +5771,12 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 continue;
             }
 
-            l1t = l2e_to_l1e(*pl2e);
+            l1mfn = l2e_get_mfn(*pl2e);
+            l1t = map_domain_page(l1mfn);
             for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
                 if ( l1e_get_intpte(l1t[i]) != 0 )
                     break;
+            UNMAP_DOMAIN_PAGE(l1t);
             if ( i == L1_PAGETABLE_ENTRIES )
             {
                 /* Empty: zap the L2E and free the L1 page. */
@@ -5771,7 +5784,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(NULL, FLUSH_TLB_GLOBAL); /* flush before free */
-                free_xen_pagetable(l1t);
+                free_xen_pagetable_new(l1mfn);
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
@@ -5802,11 +5815,13 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 
         {
             l2_pgentry_t *l2t;
+            mfn_t l2mfn = l3e_get_mfn(*pl3e);
 
-            l2t = l3e_to_l2e(*pl3e);
+            l2t = map_domain_page(l2mfn);
             for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
                 if ( l2e_get_intpte(l2t[i]) != 0 )
                     break;
+            UNMAP_DOMAIN_PAGE(l2t);
             if ( i == L2_PAGETABLE_ENTRIES )
             {
                 /* Empty: zap the L3E and free the L2 page. */
@@ -5814,7 +5829,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(NULL, FLUSH_TLB_GLOBAL); /* flush before free */
-                free_xen_pagetable(l2t);
+                free_xen_pagetable_new(l2mfn);
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:15:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:15:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114546.218354 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe3-0007vY-Fv; Wed, 21 Apr 2021 14:15:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114546.218354; Wed, 21 Apr 2021 14:15:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe3-0007v4-7O; Wed, 21 Apr 2021 14:15:59 +0000
Received: by outflank-mailman (input) for mailman id 114546;
 Wed, 21 Apr 2021 14:15:58 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDe2-0007tN-A4
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:15:58 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe2-0000xd-40; Wed, 21 Apr 2021 14:15:58 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe1-00045m-NG; Wed, 21 Apr 2021 14:15:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=tnkJeAzYfCYJ8oxKi3mCSr+d4dZvY/hk6gXoVXZqnz8=; b=Q
	pd9hOksLWb94srO9XVwU3VXhtEMUf1QsF8KBHqAe850KHdg4pOk6dnRZUerp3DGj1ofmenwfnBHh+
	HjJ/dXK073TJ+yJMxWm60gKexEoX/MA8grHWjM53B9OC9GzbOZh4ZBABLKikuM8BwK1eWs20o1dMI
	qVQj9z84UUyPtUUk=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 04/13] x86_64/mm: introduce pl2e in paging_init
Date: Wed, 21 Apr 2021 15:15:32 +0100
Message-Id: <0a457a23e38ea09a7a62722b44a1a5f47f6cab3b.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

We will soon map and unmap pages in paging_init(). Introduce pl2e so
that we can use l2_ro_mpt to point to the page table itself.

No functional change.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v7:
- reword commit message.
---
 xen/arch/x86/x86_64/mm.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index d7e67311fa69..59049bdf8e83 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -496,7 +496,7 @@ void __init paging_init(void)
     unsigned long i, mpt_size, va;
     unsigned int n, memflags;
     l3_pgentry_t *l3_ro_mpt;
-    l2_pgentry_t *l2_ro_mpt = NULL;
+    l2_pgentry_t *pl2e = NULL, *l2_ro_mpt = NULL;
     struct page_info *l1_pg;
 
     /*
@@ -546,7 +546,7 @@ void __init paging_init(void)
             (L2_PAGETABLE_SHIFT - 3 + PAGE_SHIFT)));
 
         if ( cpu_has_page1gb &&
-             !((unsigned long)l2_ro_mpt & ~PAGE_MASK) &&
+             !((unsigned long)pl2e & ~PAGE_MASK) &&
              (mpt_size >> L3_PAGETABLE_SHIFT) > (i >> PAGETABLE_ORDER) )
         {
             unsigned int k, holes;
@@ -606,7 +606,7 @@ void __init paging_init(void)
             memset((void *)(RDWR_MPT_VIRT_START + (i << L2_PAGETABLE_SHIFT)),
                    0xFF, 1UL << L2_PAGETABLE_SHIFT);
         }
-        if ( !((unsigned long)l2_ro_mpt & ~PAGE_MASK) )
+        if ( !((unsigned long)pl2e & ~PAGE_MASK) )
         {
             if ( (l2_ro_mpt = alloc_xen_pagetable()) == NULL )
                 goto nomem;
@@ -614,13 +614,14 @@ void __init paging_init(void)
             l3e_write(&l3_ro_mpt[l3_table_offset(va)],
                       l3e_from_paddr(__pa(l2_ro_mpt),
                                      __PAGE_HYPERVISOR_RO | _PAGE_USER));
+            pl2e = l2_ro_mpt;
             ASSERT(!l2_table_offset(va));
         }
         /* NB. Cannot be GLOBAL: guest user mode should not see it. */
         if ( l1_pg )
-            l2e_write(l2_ro_mpt, l2e_from_page(
+            l2e_write(pl2e, l2e_from_page(
                 l1_pg, /*_PAGE_GLOBAL|*/_PAGE_PSE|_PAGE_USER|_PAGE_PRESENT));
-        l2_ro_mpt++;
+        pl2e++;
     }
 #undef CNT
 #undef MFN
@@ -632,6 +633,7 @@ void __init paging_init(void)
             goto nomem;
         compat_idle_pg_table_l2 = l2_ro_mpt;
         clear_page(l2_ro_mpt);
+        pl2e = l2_ro_mpt;
 
         /* Allocate and map the compatibility mode machine-to-phys table. */
         mpt_size = (mpt_size >> 1) + (1UL << (L2_PAGETABLE_SHIFT - 1));
@@ -649,7 +651,7 @@ void __init paging_init(void)
              sizeof(*compat_machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));
-    for ( i = 0; i < (mpt_size >> L2_PAGETABLE_SHIFT); i++, l2_ro_mpt++ )
+    for ( i = 0; i < (mpt_size >> L2_PAGETABLE_SHIFT); i++, pl2e++ )
     {
         memflags = MEMF_node(phys_to_nid(i <<
             (L2_PAGETABLE_SHIFT - 2 + PAGE_SHIFT)));
@@ -671,7 +673,7 @@ void __init paging_init(void)
                         (i << L2_PAGETABLE_SHIFT)),
                0xFF, 1UL << L2_PAGETABLE_SHIFT);
         /* NB. Cannot be GLOBAL as the ptes get copied into per-VM space. */
-        l2e_write(l2_ro_mpt, l2e_from_page(l1_pg, _PAGE_PSE|_PAGE_PRESENT));
+        l2e_write(pl2e, l2e_from_page(l1_pg, _PAGE_PSE|_PAGE_PRESENT));
     }
 #undef CNT
 #undef MFN
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:16:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:16:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114547.218371 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe5-00080t-UP; Wed, 21 Apr 2021 14:16:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114547.218371; Wed, 21 Apr 2021 14:16:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe5-00080Z-OR; Wed, 21 Apr 2021 14:16:01 +0000
Received: by outflank-mailman (input) for mailman id 114547;
 Wed, 21 Apr 2021 14:16:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDe3-0007xD-SZ
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:15:59 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe3-0000xp-N9; Wed, 21 Apr 2021 14:15:59 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe3-00045m-Bf; Wed, 21 Apr 2021 14:15: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=zIa4KSc9eY5+u86tvfAqgOLSwC2kF+yKnqDbni3id/E=; b=6
	i+Q35aMSdQV28yzdnck8dK2x4nVtsi9j1PjkoCBoLcv/+MoejyIrL1COWP4e5TvoJ3OCG4iQouyDe
	/wVhQUJjyeXOa9Es8BAQVa0cMdQq5ZQk3TzcPsagugA5aDa7aXplFCEsasgg9M7hOCDk+ztJrZxXi
	cqapSbu2UmWgwrx4=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 05/13] x86_64/mm: switch to new APIs in paging_init
Date: Wed, 21 Apr 2021 15:15:33 +0100
Message-Id: <037bc533d8cc88c73825a9613b4b0e7209cecb11.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Map and unmap pages instead of relying on the direct map.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v9:
- remove an unnecessary l3mfn variable.

Changed in v8:
- replace l3/2_ro_mpt_mfn with just mfn since their lifetimes do not
  overlap

Changed in v7:
- use the new alloc_map_clear_xen_pt() helper.
- move the unmap of pl3t up a bit.
- remove the unmaps in the nomem path.
---
 xen/arch/x86/x86_64/mm.c | 34 ++++++++++++++++++++--------------
 1 file changed, 20 insertions(+), 14 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index 59049bdf8e83..3e40d529bbf3 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -498,6 +498,7 @@ void __init paging_init(void)
     l3_pgentry_t *l3_ro_mpt;
     l2_pgentry_t *pl2e = NULL, *l2_ro_mpt = NULL;
     struct page_info *l1_pg;
+    mfn_t mfn;
 
     /*
      * We setup the L3s for 1:1 mapping if host support memory hotplug
@@ -510,22 +511,22 @@ void __init paging_init(void)
         if ( !(l4e_get_flags(idle_pg_table[l4_table_offset(va)]) &
               _PAGE_PRESENT) )
         {
-            l3_pgentry_t *pl3t = alloc_xen_pagetable();
+            l3_pgentry_t *pl3t = alloc_mapped_pagetable(&mfn);
 
             if ( !pl3t )
                 goto nomem;
-            clear_page(pl3t);
+            UNMAP_DOMAIN_PAGE(pl3t);
             l4e_write(&idle_pg_table[l4_table_offset(va)],
-                      l4e_from_paddr(__pa(pl3t), __PAGE_HYPERVISOR_RW));
+                      l4e_from_mfn(mfn, __PAGE_HYPERVISOR_RW));
         }
     }
 
     /* Create user-accessible L2 directory to map the MPT for guests. */
-    if ( (l3_ro_mpt = alloc_xen_pagetable()) == NULL )
+    l3_ro_mpt = alloc_mapped_pagetable(&mfn);
+    if ( !l3_ro_mpt )
         goto nomem;
-    clear_page(l3_ro_mpt);
     l4e_write(&idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)],
-              l4e_from_paddr(__pa(l3_ro_mpt), __PAGE_HYPERVISOR_RO | _PAGE_USER));
+              l4e_from_mfn(mfn, __PAGE_HYPERVISOR_RO | _PAGE_USER));
 
     /*
      * Allocate and map the machine-to-phys table.
@@ -608,12 +609,14 @@ void __init paging_init(void)
         }
         if ( !((unsigned long)pl2e & ~PAGE_MASK) )
         {
-            if ( (l2_ro_mpt = alloc_xen_pagetable()) == NULL )
+            UNMAP_DOMAIN_PAGE(l2_ro_mpt);
+
+            l2_ro_mpt = alloc_mapped_pagetable(&mfn);
+            if ( !l2_ro_mpt )
                 goto nomem;
-            clear_page(l2_ro_mpt);
+
             l3e_write(&l3_ro_mpt[l3_table_offset(va)],
-                      l3e_from_paddr(__pa(l2_ro_mpt),
-                                     __PAGE_HYPERVISOR_RO | _PAGE_USER));
+                      l3e_from_mfn(mfn, __PAGE_HYPERVISOR_RO | _PAGE_USER));
             pl2e = l2_ro_mpt;
             ASSERT(!l2_table_offset(va));
         }
@@ -625,15 +628,18 @@ void __init paging_init(void)
     }
 #undef CNT
 #undef MFN
+    UNMAP_DOMAIN_PAGE(l2_ro_mpt);
+    UNMAP_DOMAIN_PAGE(l3_ro_mpt);
 
     /* Create user-accessible L2 directory to map the MPT for compat guests. */
     if ( opt_pv32 )
     {
-        if ( (l2_ro_mpt = alloc_xen_pagetable()) == NULL )
+        mfn = alloc_xen_pagetable_new();
+        if ( mfn_eq(mfn, INVALID_MFN) )
             goto nomem;
-        compat_idle_pg_table_l2 = l2_ro_mpt;
-        clear_page(l2_ro_mpt);
-        pl2e = l2_ro_mpt;
+        compat_idle_pg_table_l2 = map_domain_page_global(mfn);
+        clear_page(compat_idle_pg_table_l2);
+        pl2e = compat_idle_pg_table_l2;
 
         /* Allocate and map the compatibility mode machine-to-phys table. */
         mpt_size = (mpt_size >> 1) + (1UL << (L2_PAGETABLE_SHIFT - 1));
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:16:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:16:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114548.218377 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe6-000820-GB; Wed, 21 Apr 2021 14:16:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114548.218377; Wed, 21 Apr 2021 14:16: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 1lZDe6-00081d-7d; Wed, 21 Apr 2021 14:16:02 +0000
Received: by outflank-mailman (input) for mailman id 114548;
 Wed, 21 Apr 2021 14:16:01 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDe5-00080K-IF
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:16:01 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe5-0000xw-8X; Wed, 21 Apr 2021 14:16:01 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe4-00045m-U3; Wed, 21 Apr 2021 14: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=EZDPpIrnwQ2O27mjd2bZL/24PbG09BLeqyZDcu4x8Gc=; b=c
	uS1oNojhUPv/uI6wzd8mnojbNgmCMsZuZhdSfL/S4PmxGEyfoClmyVUnVx8aicXCb4YkMqsQSwzKD
	aLKiGRdxL5ZUah5EhTumBHGF8qWsxlkrwWFDYQdqYu1ZeWawMqJuer6mn5AkvMCrF5skEgeN0wa/p
	ZVsgmmN/x6XN/9J0=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 06/13] x86_64/mm: switch to new APIs in setup_m2p_table
Date: Wed, 21 Apr 2021 15:15:34 +0100
Message-Id: <49477e63f5b1ae4f666ae6eb1fc225677a4418fb.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

While doing so, avoid repetitive mapping of l2_ro_mpt by keeping it
across loops, and only unmap and map it when crossing 1G boundaries.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v8:
- re-structure if condition around l2_ro_mpt.
- reword the commit message.

Changed in v7:
- avoid repetitive mapping of l2_ro_mpt.
- edit commit message.
- switch to alloc_map_clear_xen_pt().
---
 xen/arch/x86/x86_64/mm.c | 32 +++++++++++++++++++-------------
 1 file changed, 19 insertions(+), 13 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index 3e40d529bbf3..c625075695e0 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -402,7 +402,8 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
 
     ASSERT(l4e_get_flags(idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)])
             & _PAGE_PRESENT);
-    l3_ro_mpt = l4e_to_l3e(idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)]);
+    l3_ro_mpt = map_l3t_from_l4e(
+                    idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)]);
 
     smap = (info->spfn & (~((1UL << (L2_PAGETABLE_SHIFT - 3)) -1)));
     emap = ((info->epfn + ((1UL << (L2_PAGETABLE_SHIFT - 3)) - 1 )) &
@@ -420,6 +421,10 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
     i = smap;
     while ( i < emap )
     {
+        if ( (RO_MPT_VIRT_START + i * sizeof(*machine_to_phys_mapping)) &
+             ((1UL << L3_PAGETABLE_SHIFT) - 1) )
+            UNMAP_DOMAIN_PAGE(l2_ro_mpt);
+
         switch ( m2p_mapped(i) )
         {
         case M2P_1G_MAPPED:
@@ -455,32 +460,31 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
 
             ASSERT(!(l3e_get_flags(l3_ro_mpt[l3_table_offset(va)]) &
                   _PAGE_PSE));
-            if ( l3e_get_flags(l3_ro_mpt[l3_table_offset(va)]) &
-              _PAGE_PRESENT )
-                l2_ro_mpt = l3e_to_l2e(l3_ro_mpt[l3_table_offset(va)]) +
-                  l2_table_offset(va);
+            if ( l2_ro_mpt )
+                /* nothing */;
+            else if ( l3e_get_flags(l3_ro_mpt[l3_table_offset(va)]) &
+                      _PAGE_PRESENT )
+                l2_ro_mpt = map_l2t_from_l3e(l3_ro_mpt[l3_table_offset(va)]);
             else
             {
-                l2_ro_mpt = alloc_xen_pagetable();
+                mfn_t l2_ro_mpt_mfn;
+
+                l2_ro_mpt = alloc_mapped_pagetable(&l2_ro_mpt_mfn);
                 if ( !l2_ro_mpt )
                 {
                     ret = -ENOMEM;
                     goto error;
                 }
 
-                clear_page(l2_ro_mpt);
                 l3e_write(&l3_ro_mpt[l3_table_offset(va)],
-                          l3e_from_paddr(__pa(l2_ro_mpt),
-                                         __PAGE_HYPERVISOR_RO | _PAGE_USER));
-                l2_ro_mpt += l2_table_offset(va);
+                          l3e_from_mfn(l2_ro_mpt_mfn,
+                                       __PAGE_HYPERVISOR_RO | _PAGE_USER));
             }
 
             /* NB. Cannot be GLOBAL: guest user mode should not see it. */
-            l2e_write(l2_ro_mpt, l2e_from_mfn(mfn,
+            l2e_write(&l2_ro_mpt[l2_table_offset(va)], l2e_from_mfn(mfn,
                    /*_PAGE_GLOBAL|*/_PAGE_PSE|_PAGE_USER|_PAGE_PRESENT));
         }
-        if ( !((unsigned long)l2_ro_mpt & ~PAGE_MASK) )
-            l2_ro_mpt = NULL;
         i += ( 1UL << (L2_PAGETABLE_SHIFT - 3));
     }
 #undef CNT
@@ -488,6 +492,8 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
 
     ret = setup_compat_m2p_table(info);
 error:
+    unmap_domain_page(l2_ro_mpt);
+    unmap_domain_page(l3_ro_mpt);
     return ret;
 }
 
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:16:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:16:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114549.218395 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe9-00088f-10; Wed, 21 Apr 2021 14:16:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114549.218395; Wed, 21 Apr 2021 14: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 1lZDe8-00088M-R5; Wed, 21 Apr 2021 14:16:04 +0000
Received: by outflank-mailman (input) for mailman id 114549;
 Wed, 21 Apr 2021 14:16:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDe6-00083D-KA
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:16:02 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe6-0000z0-D3; Wed, 21 Apr 2021 14:16:02 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe6-00045m-1p; Wed, 21 Apr 2021 14: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=mKc8POhXcy280X7Ua4P7xr1nmYFplhnwUtn1pYd97uc=; b=n
	2gZXY0utBZnYIA3huXjoDtd798gbidtatUkwZEfF0lkn6vBjAsRwfJSnmXpNFQN33QqRE2APJH+v1
	JeFzWw4nqsz6GMbzRwpOTrPF/ft3Vwe72bfbsoTwT5WKNqSgu36nAOPESIMr42W37ndlJ1pm2GSpP
	6ovM3PYdoG7OpZrA=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.com,
	Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v10 07/13] efi: use new page table APIs in copy_mapping
Date: Wed, 21 Apr 2021 15:15:35 +0100
Message-Id: <65fd1ef71afd8d910eacc97d72516f3e522bed3b.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v8:
- remove redundant commit message.
- unmap l3src based on va instead of mfn.
- re-structure if condition around l3dst.

Changed in v7:
- hoist l3 variables out of the loop to avoid repetitive mappings.
---
 xen/common/efi/boot.c | 28 +++++++++++++++++++++-------
 1 file changed, 21 insertions(+), 7 deletions(-)

diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 63e289ab8506..539d86c6e8c2 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -6,6 +6,7 @@
 #include <xen/compile.h>
 #include <xen/ctype.h>
 #include <xen/dmi.h>
+#include <xen/domain_page.h>
 #include <xen/init.h>
 #include <xen/keyhandler.h>
 #include <xen/lib.h>
@@ -1439,29 +1440,42 @@ static __init void copy_mapping(unsigned long mfn, unsigned long end,
                                                  unsigned long emfn))
 {
     unsigned long next;
+    l3_pgentry_t *l3src = NULL, *l3dst = NULL;
 
     for ( ; mfn < end; mfn = next )
     {
         l4_pgentry_t l4e = efi_l4_pgtable[l4_table_offset(mfn << PAGE_SHIFT)];
-        l3_pgentry_t *l3src, *l3dst;
         unsigned long va = (unsigned long)mfn_to_virt(mfn);
 
+        if ( !(mfn & ((1UL << (L4_PAGETABLE_SHIFT - PAGE_SHIFT)) - 1)) )
+            UNMAP_DOMAIN_PAGE(l3dst);
+        if ( !(va & ((1UL << L4_PAGETABLE_SHIFT) - 1)) )
+            UNMAP_DOMAIN_PAGE(l3src);
         next = mfn + (1UL << (L3_PAGETABLE_SHIFT - PAGE_SHIFT));
         if ( !is_valid(mfn, min(next, end)) )
             continue;
-        if ( !(l4e_get_flags(l4e) & _PAGE_PRESENT) )
+
+        if ( l3dst )
+            /* nothing */;
+        else if ( !(l4e_get_flags(l4e) & _PAGE_PRESENT) )
         {
-            l3dst = alloc_xen_pagetable();
+            mfn_t l3mfn;
+
+            l3dst = alloc_mapped_pagetable(&l3mfn);
             BUG_ON(!l3dst);
-            clear_page(l3dst);
             efi_l4_pgtable[l4_table_offset(mfn << PAGE_SHIFT)] =
-                l4e_from_paddr(virt_to_maddr(l3dst), __PAGE_HYPERVISOR);
+                l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR);
         }
         else
-            l3dst = l4e_to_l3e(l4e);
-        l3src = l4e_to_l3e(idle_pg_table[l4_table_offset(va)]);
+            l3dst = map_l3t_from_l4e(l4e);
+
+        if ( !l3src )
+            l3src = map_l3t_from_l4e(idle_pg_table[l4_table_offset(va)]);
         l3dst[l3_table_offset(mfn << PAGE_SHIFT)] = l3src[l3_table_offset(va)];
     }
+
+    unmap_domain_page(l3src);
+    unmap_domain_page(l3dst);
 }
 
 static bool __init ram_range_valid(unsigned long smfn, unsigned long emfn)
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:16:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:16:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114550.218401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDe9-0008Aj-P9; Wed, 21 Apr 2021 14:16:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114550.218401; Wed, 21 Apr 2021 14:16: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 1lZDe9-0008AI-Hn; Wed, 21 Apr 2021 14:16:05 +0000
Received: by outflank-mailman (input) for mailman id 114550;
 Wed, 21 Apr 2021 14:16:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDe8-000884-L3
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:16:04 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe8-0000zs-E9; Wed, 21 Apr 2021 14:16:04 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe8-00045m-0N; Wed, 21 Apr 2021 14: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=NJReh2gsqoG+r+j7yADE3zT8yQXS/3Gfprmkekm5DfA=; b=M
	BzIoKy+4M/h75KftgU7tLWkTqeQBj95G00ZvaOVE7rFGBFnTwWMHXLKdrCwedftS40zCBJNRvANB5
	B+spdh9UjZdSusVIbxnN0TD86+5NNz+QLoE+8jxoOPmXNboKf1BCQelXzHxJL6cVfxNPQptR5QDtX
	0qYRRR/72gWYzCeI=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 08/13] efi: switch to new APIs in EFI code
Date: Wed, 21 Apr 2021 15:15:36 +0100
Message-Id: <828985f9ab1f8709fb6f2b808148ab2f415b14a7.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v7:
- add blank line after declaration.
- rename efi_l4_pgtable into efi_l4t.
- pass the mapped efi_l4t to copy_mapping() instead of map it again.
- use the alloc_map_clear_xen_pt() API.
- unmap pl3e, pl2e, l1t earlier.
---
 xen/arch/x86/efi/runtime.h | 13 ++++++---
 xen/common/efi/boot.c      | 55 ++++++++++++++++++++++----------------
 xen/common/efi/efi.h       |  3 ++-
 xen/common/efi/runtime.c   |  8 +++---
 4 files changed, 48 insertions(+), 31 deletions(-)

diff --git a/xen/arch/x86/efi/runtime.h b/xen/arch/x86/efi/runtime.h
index d9eb8f5c270f..77866c5f2178 100644
--- a/xen/arch/x86/efi/runtime.h
+++ b/xen/arch/x86/efi/runtime.h
@@ -1,12 +1,19 @@
+#include <xen/domain_page.h>
+#include <xen/mm.h>
 #include <asm/atomic.h>
 #include <asm/mc146818rtc.h>
 
 #ifndef COMPAT
-l4_pgentry_t *__read_mostly efi_l4_pgtable;
+mfn_t __read_mostly efi_l4_mfn = INVALID_MFN_INITIALIZER;
 
 void efi_update_l4_pgtable(unsigned int l4idx, l4_pgentry_t l4e)
 {
-    if ( efi_l4_pgtable )
-        l4e_write(efi_l4_pgtable + l4idx, l4e);
+    if ( !mfn_eq(efi_l4_mfn, INVALID_MFN) )
+    {
+        l4_pgentry_t *efi_l4t = map_domain_page(efi_l4_mfn);
+
+        l4e_write(efi_l4t + l4idx, l4e);
+        unmap_domain_page(efi_l4t);
+    }
 }
 #endif
diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 539d86c6e8c2..758f9d74d20f 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -1437,14 +1437,15 @@ custom_param("efi", parse_efi_param);
 
 static __init void copy_mapping(unsigned long mfn, unsigned long end,
                                 bool (*is_valid)(unsigned long smfn,
-                                                 unsigned long emfn))
+                                                 unsigned long emfn),
+                                l4_pgentry_t *efi_l4t)
 {
     unsigned long next;
     l3_pgentry_t *l3src = NULL, *l3dst = NULL;
 
     for ( ; mfn < end; mfn = next )
     {
-        l4_pgentry_t l4e = efi_l4_pgtable[l4_table_offset(mfn << PAGE_SHIFT)];
+        l4_pgentry_t l4e = efi_l4t[l4_table_offset(mfn << PAGE_SHIFT)];
         unsigned long va = (unsigned long)mfn_to_virt(mfn);
 
         if ( !(mfn & ((1UL << (L4_PAGETABLE_SHIFT - PAGE_SHIFT)) - 1)) )
@@ -1463,7 +1464,7 @@ static __init void copy_mapping(unsigned long mfn, unsigned long end,
 
             l3dst = alloc_mapped_pagetable(&l3mfn);
             BUG_ON(!l3dst);
-            efi_l4_pgtable[l4_table_offset(mfn << PAGE_SHIFT)] =
+            efi_l4t[l4_table_offset(mfn << PAGE_SHIFT)] =
                 l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR);
         }
         else
@@ -1496,6 +1497,7 @@ static bool __init rt_range_valid(unsigned long smfn, unsigned long emfn)
 void __init efi_init_memory(void)
 {
     unsigned int i;
+    l4_pgentry_t *efi_l4t;
     struct rt_extra {
         struct rt_extra *next;
         unsigned long smfn, emfn;
@@ -1610,11 +1612,10 @@ void __init efi_init_memory(void)
      * Set up 1:1 page tables for runtime calls. See SetVirtualAddressMap() in
      * efi_exit_boot().
      */
-    efi_l4_pgtable = alloc_xen_pagetable();
-    BUG_ON(!efi_l4_pgtable);
-    clear_page(efi_l4_pgtable);
+    efi_l4t = alloc_mapped_pagetable(&efi_l4_mfn);
+    BUG_ON(!efi_l4t);
 
-    copy_mapping(0, max_page, ram_range_valid);
+    copy_mapping(0, max_page, ram_range_valid, efi_l4t);
 
     /* Insert non-RAM runtime mappings inside the direct map. */
     for ( i = 0; i < efi_memmap_size; i += efi_mdesc_size )
@@ -1630,58 +1631,64 @@ void __init efi_init_memory(void)
             copy_mapping(PFN_DOWN(desc->PhysicalStart),
                          PFN_UP(desc->PhysicalStart +
                                 (desc->NumberOfPages << EFI_PAGE_SHIFT)),
-                         rt_range_valid);
+                         rt_range_valid, efi_l4t);
     }
 
     /* Insert non-RAM runtime mappings outside of the direct map. */
     while ( (extra = extra_head) != NULL )
     {
         unsigned long addr = extra->smfn << PAGE_SHIFT;
-        l4_pgentry_t l4e = efi_l4_pgtable[l4_table_offset(addr)];
+        l4_pgentry_t l4e = efi_l4t[l4_table_offset(addr)];
         l3_pgentry_t *pl3e;
         l2_pgentry_t *pl2e;
         l1_pgentry_t *l1t;
 
         if ( !(l4e_get_flags(l4e) & _PAGE_PRESENT) )
         {
-            pl3e = alloc_xen_pagetable();
+            mfn_t l3mfn;
+
+            pl3e = alloc_mapped_pagetable(&l3mfn);
             BUG_ON(!pl3e);
-            clear_page(pl3e);
-            efi_l4_pgtable[l4_table_offset(addr)] =
-                l4e_from_paddr(virt_to_maddr(pl3e), __PAGE_HYPERVISOR);
+            efi_l4t[l4_table_offset(addr)] =
+                l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR);
         }
         else
-            pl3e = l4e_to_l3e(l4e);
+            pl3e = map_l3t_from_l4e(l4e);
         pl3e += l3_table_offset(addr);
         if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
         {
-            pl2e = alloc_xen_pagetable();
+            mfn_t l2mfn;
+
+            pl2e = alloc_mapped_pagetable(&l2mfn);
             BUG_ON(!pl2e);
-            clear_page(pl2e);
-            *pl3e = l3e_from_paddr(virt_to_maddr(pl2e), __PAGE_HYPERVISOR);
+            *pl3e = l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR);
         }
         else
         {
             BUG_ON(l3e_get_flags(*pl3e) & _PAGE_PSE);
-            pl2e = l3e_to_l2e(*pl3e);
+            pl2e = map_l2t_from_l3e(*pl3e);
         }
+        UNMAP_DOMAIN_PAGE(pl3e);
         pl2e += l2_table_offset(addr);
         if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
         {
-            l1t = alloc_xen_pagetable();
+            mfn_t l1mfn;
+
+            l1t = alloc_mapped_pagetable(&l1mfn);
             BUG_ON(!l1t);
-            clear_page(l1t);
-            *pl2e = l2e_from_paddr(virt_to_maddr(l1t), __PAGE_HYPERVISOR);
+            *pl2e = l2e_from_mfn(l1mfn, __PAGE_HYPERVISOR);
         }
         else
         {
             BUG_ON(l2e_get_flags(*pl2e) & _PAGE_PSE);
-            l1t = l2e_to_l1e(*pl2e);
+            l1t = map_l1t_from_l2e(*pl2e);
         }
+        UNMAP_DOMAIN_PAGE(pl2e);
         for ( i = l1_table_offset(addr);
               i < L1_PAGETABLE_ENTRIES && extra->smfn < extra->emfn;
               ++i, ++extra->smfn )
             l1t[i] = l1e_from_pfn(extra->smfn, extra->prot);
+        UNMAP_DOMAIN_PAGE(l1t);
 
         if ( extra->smfn == extra->emfn )
         {
@@ -1693,6 +1700,8 @@ void __init efi_init_memory(void)
     /* Insert Xen mappings. */
     for ( i = l4_table_offset(HYPERVISOR_VIRT_START);
           i < l4_table_offset(DIRECTMAP_VIRT_END); ++i )
-        efi_l4_pgtable[i] = idle_pg_table[i];
+        efi_l4t[i] = idle_pg_table[i];
+
+    unmap_domain_page(efi_l4t);
 }
 #endif
diff --git a/xen/common/efi/efi.h b/xen/common/efi/efi.h
index 663a8b5000d9..c9aa65d506b1 100644
--- a/xen/common/efi/efi.h
+++ b/xen/common/efi/efi.h
@@ -6,6 +6,7 @@
 #include <efi/eficapsule.h>
 #include <efi/efiapi.h>
 #include <xen/efi.h>
+#include <xen/mm.h>
 #include <xen/spinlock.h>
 #include <asm/page.h>
 
@@ -29,7 +30,7 @@ extern UINTN efi_memmap_size, efi_mdesc_size;
 extern void *efi_memmap;
 
 #ifdef CONFIG_X86
-extern l4_pgentry_t *efi_l4_pgtable;
+extern mfn_t efi_l4_mfn;
 #endif
 
 extern const struct efi_pci_rom *efi_pci_roms;
diff --git a/xen/common/efi/runtime.c b/xen/common/efi/runtime.c
index 95367694b5f3..375b94229e13 100644
--- a/xen/common/efi/runtime.c
+++ b/xen/common/efi/runtime.c
@@ -85,7 +85,7 @@ struct efi_rs_state efi_rs_enter(void)
     static const u32 mxcsr = MXCSR_DEFAULT;
     struct efi_rs_state state = { .cr3 = 0 };
 
-    if ( !efi_l4_pgtable )
+    if ( mfn_eq(efi_l4_mfn, INVALID_MFN) )
         return state;
 
     state.cr3 = read_cr3();
@@ -111,7 +111,7 @@ struct efi_rs_state efi_rs_enter(void)
         lgdt(&gdt_desc);
     }
 
-    switch_cr3_cr4(virt_to_maddr(efi_l4_pgtable), read_cr4());
+    switch_cr3_cr4(mfn_to_maddr(efi_l4_mfn), read_cr4());
 
     return state;
 }
@@ -140,9 +140,9 @@ void efi_rs_leave(struct efi_rs_state *state)
 
 bool efi_rs_using_pgtables(void)
 {
-    return efi_l4_pgtable &&
+    return !mfn_eq(efi_l4_mfn, INVALID_MFN) &&
            (smp_processor_id() == efi_rs_on_cpu) &&
-           (read_cr3() == virt_to_maddr(efi_l4_pgtable));
+           (read_cr3() == mfn_to_maddr(efi_l4_mfn));
 }
 
 unsigned long efi_get_time(void)
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:16:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:16:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114551.218418 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDeC-0008Hc-B3; Wed, 21 Apr 2021 14:16:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114551.218418; Wed, 21 Apr 2021 14:16: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 1lZDeC-0008HE-3m; Wed, 21 Apr 2021 14:16:08 +0000
Received: by outflank-mailman (input) for mailman id 114551;
 Wed, 21 Apr 2021 14:16:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDeA-0008CS-8N
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:16:06 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDeA-0000zz-2C; Wed, 21 Apr 2021 14:16:06 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDe9-00045m-Mc; Wed, 21 Apr 2021 14: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=xen.org;
	s=20200302mail; h=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=e2V44CgmFQW85Zs36UVR3r9TRcWz+UvEfVkPDI9D+b4=; b=E
	qPv1kGkyBxxVonllqQdD+ZLCwMjTNDAsbuyBwr+jiT79+wbV//FOfZ6X7Ib2+lu59tPzM0Hnfk+K5
	0sU42tfRax9K0uCPaIJpASdNO/Wc5EgYsUE128z/CWzJCEkuim4RzWX9cF1m5THp/x3vd+RBPuFsI
	gkNdsO8aHZkUS7QM=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 09/13] x86/smpboot: add exit path for clone_mapping()
Date: Wed, 21 Apr 2021 15:15:37 +0100
Message-Id: <8507e4918c5c310eac77ceef4b45f86e2d7745fb.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

We will soon need to clean up page table mappings in the exit path.

No functional change.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Acked-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v7:
- edit commit message.
- begin with rc = 0 and set it to -ENOMEM ahead of if().
---
 xen/arch/x86/smpboot.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index 82c1012e892f..e90c4dfa8a88 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -696,6 +696,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     l3_pgentry_t *pl3e;
     l2_pgentry_t *pl2e;
     l1_pgentry_t *pl1e;
+    int rc = 0;
 
     /*
      * Sanity check 'linear'.  We only allow cloning from the Xen virtual
@@ -736,7 +737,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
             pl1e = l2e_to_l1e(*pl2e) + l1_table_offset(linear);
             flags = l1e_get_flags(*pl1e);
             if ( !(flags & _PAGE_PRESENT) )
-                return 0;
+                goto out;
             pfn = l1e_get_pfn(*pl1e);
         }
     }
@@ -744,8 +745,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     if ( !(root_get_flags(rpt[root_table_offset(linear)]) & _PAGE_PRESENT) )
     {
         pl3e = alloc_xen_pagetable();
+        rc = -ENOMEM;
         if ( !pl3e )
-            return -ENOMEM;
+            goto out;
         clear_page(pl3e);
         l4e_write(&rpt[root_table_offset(linear)],
                   l4e_from_paddr(__pa(pl3e), __PAGE_HYPERVISOR));
@@ -758,8 +760,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
     {
         pl2e = alloc_xen_pagetable();
+        rc = -ENOMEM;
         if ( !pl2e )
-            return -ENOMEM;
+            goto out;
         clear_page(pl2e);
         l3e_write(pl3e, l3e_from_paddr(__pa(pl2e), __PAGE_HYPERVISOR));
     }
@@ -774,8 +777,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
     {
         pl1e = alloc_xen_pagetable();
+        rc = -ENOMEM;
         if ( !pl1e )
-            return -ENOMEM;
+            goto out;
         clear_page(pl1e);
         l2e_write(pl2e, l2e_from_paddr(__pa(pl1e), __PAGE_HYPERVISOR));
     }
@@ -796,7 +800,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     else
         l1e_write(pl1e, l1e_from_pfn(pfn, flags));
 
-    return 0;
+    rc = 0;
+ out:
+    return rc;
 }
 
 DEFINE_PER_CPU(root_pgentry_t *, root_pgt);
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:18:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:18:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114603.218431 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDga-0000aT-1P; Wed, 21 Apr 2021 14:18:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114603.218431; Wed, 21 Apr 2021 14:18:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDgZ-0000aM-US; Wed, 21 Apr 2021 14:18:35 +0000
Received: by outflank-mailman (input) for mailman id 114603;
 Wed, 21 Apr 2021 14:18:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDgZ-0000aE-8R
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:18:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 89c86038-d41f-4c3e-9bb8-30afb418ba75;
 Wed, 21 Apr 2021 14:18:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id ABC4CB4CD;
 Wed, 21 Apr 2021 14:18:33 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 89c86038-d41f-4c3e-9bb8-30afb418ba75
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014713; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=/d26MLtHBgPluR/30xU7WDm4VyvrZB+0UEUOK8FBrMQ=;
	b=PZUXF+9zIQL0NUDj7+a+2L+tpZgCdGe+PoIJaKFlUyLnMzM5LBK5lOd0Y3T+broKMY9ebm
	24e0n76jF7fd7jrQMCgNow3OhKDH1NhpISnmjsFQGZdJD/bzm2N3BVb4wAUk+8bV85B4vI
	yKIV+bjgfFOyD3Pq5PO33yqphVrqSGA=
Subject: [PATCH v2 01/20] lib: move memset()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <48444e14-5c38-efc2-b9d8-2802678c0639@suse.com>
Date: Wed, 21 Apr 2021 16:18:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

By moving the function into an archive, x86 doesn't need to announce
anymore that is has its own implementation - symbol resolution by the
linker will now guarantee that the generic function remains unused, and
the forwarding to the compiler built-in gets done by the common header
anyway.

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,26 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMSET
-/**
- * memset - Fill a region of memory with the given value
- * @s: Pointer to the start of the area.
- * @c: The byte to fill the area with
- * @count: The size of the area.
- *
- * Do not use memset() to access IO space, use memset_io() instead.
- */
-void *(memset)(void *s, int c, size_t count)
-{
-	char *xs = (char *) s;
-
-	while (count--)
-		*xs++ = c;
-
-	return s;
-}
-#endif
-
 #ifndef __HAVE_ARCH_MEMCPY
 /**
  * memcpy - Copy one area of memory to another
--- a/xen/include/asm-x86/string.h
+++ b/xen/include/asm-x86/string.h
@@ -7,9 +7,6 @@
 #define __HAVE_ARCH_MEMMOVE
 #define memmove(d, s, n) __builtin_memmove(d, s, n)
 
-#define __HAVE_ARCH_MEMSET
-#define memset(s, c, n) __builtin_memset(s, c, n)
-
 #endif /* __X86_STRING_H__ */
 /*
  * Local variables:
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += memset.o
 lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
--- /dev/null
+++ b/xen/lib/memset.c
@@ -0,0 +1,33 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memset - Fill a region of memory with the given value
+ * @s: Pointer to the start of the area.
+ * @c: The byte to fill the area with
+ * @count: The size of the area.
+ *
+ * Do not use memset() to access IO space, use memset_io() instead.
+ */
+void *(memset)(void *s, int c, size_t count)
+{
+	char *xs = (char *) s;
+
+	while (count--)
+		*xs++ = c;
+
+	return s;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:18:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:18:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114605.218442 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDgt-0000hL-9j; Wed, 21 Apr 2021 14:18:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114605.218442; Wed, 21 Apr 2021 14:18: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 1lZDgt-0000hD-6p; Wed, 21 Apr 2021 14:18:55 +0000
Received: by outflank-mailman (input) for mailman id 114605;
 Wed, 21 Apr 2021 14:18:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDgs-0000gq-8w
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:18:54 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fec5f106-5e72-4f63-a3b6-08936010f98d;
 Wed, 21 Apr 2021 14:18:53 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B7712B4A7;
 Wed, 21 Apr 2021 14:18:52 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fec5f106-5e72-4f63-a3b6-08936010f98d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014732; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=FiBwCz4dwAqT37AlnbBbOZ4vWqaWoYHBKFYgRm0agTA=;
	b=RoT/kousnB94ZwZVfCZHkz6zIqAIF94qOdwqe8b8ZGrMs3mrTOFwd0zBBF6etjPu4LEumS
	/MAUd8Y8+tTEfvKc17gcJw77ZMCuuFthejAVH5JM13ch92STSiWm6fF38f3dLJJY9cDwsy
	EeYCzB+7/PkDjRAxmbhBZkkjw/Er8Q4=
Subject: [PATCH v2 02/20] lib: move memcpy()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <0d651bc9-c877-949b-ff04-937f19fa9f89@suse.com>
Date: Wed, 21 Apr 2021 16:18:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

By moving the function into an archive, x86 doesn't need to announce
anymore that is has its own implementation - symbol resolution by the
linker will now guarantee that the generic function remains unused, and
the forwarding to the compiler built-in gets done by the common header
anyway.

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,27 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMCPY
-/**
- * memcpy - Copy one area of memory to another
- * @dest: Where to copy to
- * @src: Where to copy from
- * @count: The size of the area.
- *
- * You should not use this function to access IO space, use memcpy_toio()
- * or memcpy_fromio() instead.
- */
-void *(memcpy)(void *dest, const void *src, size_t count)
-{
-	char *tmp = (char *) dest, *s = (char *) src;
-
-	while (count--)
-		*tmp++ = *s++;
-
-	return dest;
-}
-#endif
-
 #ifndef __HAVE_ARCH_MEMMOVE
 /**
  * memmove - Copy one area of memory to another
--- a/xen/include/asm-x86/string.h
+++ b/xen/include/asm-x86/string.h
@@ -1,9 +1,6 @@
 #ifndef __X86_STRING_H__
 #define __X86_STRING_H__
 
-#define __HAVE_ARCH_MEMCPY
-#define memcpy(d, s, n) __builtin_memcpy(d, s, n)
-
 #define __HAVE_ARCH_MEMMOVE
 #define memmove(d, s, n) __builtin_memmove(d, s, n)
 
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += memcpy.o
 lib-y += memset.o
 lib-y += muldiv64.o
 lib-y += parse-size.o
--- /dev/null
+++ b/xen/lib/memcpy.c
@@ -0,0 +1,34 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memcpy - Copy one area of memory to another
+ * @dest: Where to copy to
+ * @src: Where to copy from
+ * @count: The size of the area.
+ *
+ * You should not use this function to access IO space, use memcpy_toio()
+ * or memcpy_fromio() instead.
+ */
+void *(memcpy)(void *dest, const void *src, size_t count)
+{
+	char *tmp = (char *) dest, *s = (char *) src;
+
+	while (count--)
+		*tmp++ = *s++;
+
+	return dest;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:19:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:19:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114621.218454 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDhR-0000q3-Ky; Wed, 21 Apr 2021 14:19:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114621.218454; Wed, 21 Apr 2021 14:19:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDhR-0000pw-H9; Wed, 21 Apr 2021 14:19:29 +0000
Received: by outflank-mailman (input) for mailman id 114621;
 Wed, 21 Apr 2021 14:19:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDhP-0000pn-WC
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:19:28 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d9f37bc2-d12e-4e4e-9f66-14e3e0d0ac09;
 Wed, 21 Apr 2021 14:19:26 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1DEF2B4A7;
 Wed, 21 Apr 2021 14:19: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: d9f37bc2-d12e-4e4e-9f66-14e3e0d0ac09
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014766; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=4R2Kmdij+h7UMUrUU26n2n0qiNSiY0BDhxk21aCtqCI=;
	b=bNKJ+PNDRzGe6beV8YHwPrAavJRdDodGVVVAJEOOgCxUJWLIEsypNxa2npUXjO995SYdKs
	7jjk/R2u3blnPbtLHfi5/8UTFmUHHlZyKIP6q7aBqGA935G0+o2LNDlUMqSPwdTPZsvVuN
	uUXANBw9o1HfAKGsmJn6poxD1zaz50g=
Subject: [PATCH v2 03/20] lib: move memmove()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <2eb9714b-3506-1216-1ce8-35ea000a37da@suse.com>
Date: Wed, 21 Apr 2021 16:19:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

By moving the function into an archive, x86 doesn't need to announce
anymore that is has its own implementation - symbol resolution by the
linker will now guarantee that the generic function remains unused, and
the forwarding to the compiler built-in gets done by the common header
anyway.

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,36 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMMOVE
-/**
- * memmove - Copy one area of memory to another
- * @dest: Where to copy to
- * @src: Where to copy from
- * @count: The size of the area.
- *
- * Unlike memcpy(), memmove() copes with overlapping areas.
- */
-void *(memmove)(void *dest, const void *src, size_t count)
-{
-	char *tmp, *s;
-
-	if (dest <= src) {
-		tmp = (char *) dest;
-		s = (char *) src;
-		while (count--)
-			*tmp++ = *s++;
-		}
-	else {
-		tmp = (char *) dest + count;
-		s = (char *) src + count;
-		while (count--)
-			*--tmp = *--s;
-		}
-
-	return dest;
-}
-#endif
-
 #ifndef __HAVE_ARCH_MEMCMP
 /**
  * memcmp - Compare two areas of memory
--- a/xen/include/asm-x86/string.h
+++ b/xen/include/asm-x86/string.h
@@ -1,9 +1,6 @@
 #ifndef __X86_STRING_H__
 #define __X86_STRING_H__
 
-#define __HAVE_ARCH_MEMMOVE
-#define memmove(d, s, n) __builtin_memmove(d, s, n)
-
 #endif /* __X86_STRING_H__ */
 /*
  * Local variables:
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -5,6 +5,7 @@ lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
 lib-y += memcpy.o
+lib-y += memmove.o
 lib-y += memset.o
 lib-y += muldiv64.o
 lib-y += parse-size.o
--- /dev/null
+++ b/xen/lib/memmove.c
@@ -0,0 +1,42 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memmove - Copy one area of memory to another
+ * @dest: Where to copy to
+ * @src: Where to copy from
+ * @count: The size of the area.
+ *
+ * Unlike memcpy(), memmove() copes with overlapping areas.
+ */
+void *(memmove)(void *dest, const void *src, size_t count)
+{
+	char *tmp, *s;
+
+	if (dest <= src) {
+		tmp = (char *) dest;
+		s = (char *) src;
+		while (count--)
+			*tmp++ = *s++;
+	} else {
+		tmp = (char *) dest + count;
+		s = (char *) src + count;
+		while (count--)
+			*--tmp = *--s;
+	}
+
+	return dest;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:19:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:19:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114625.218466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDhh-0000w9-2S; Wed, 21 Apr 2021 14:19:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114625.218466; Wed, 21 Apr 2021 14: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 1lZDhg-0000w2-Ve; Wed, 21 Apr 2021 14:19:44 +0000
Received: by outflank-mailman (input) for mailman id 114625;
 Wed, 21 Apr 2021 14:19:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDhg-0000vn-D9
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:19:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2243289f-97a6-469f-b304-63de479f3aa3;
 Wed, 21 Apr 2021 14:19:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C41A4B4A7;
 Wed, 21 Apr 2021 14:19: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: 2243289f-97a6-469f-b304-63de479f3aa3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014782; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nduKn0BMFGqCtcRpgHoipLRjh1wYJIQ6hbGO3WbSEd0=;
	b=t4Tz3tvwkS9qeGbkvd3KI3Ps3AD8rgXfGOM+eJVgCvimaTNM43sf9FGmUaC7b0haim8u2b
	nWVhVVmVHzE0lK1+Kdi3WghSiAvY7XyMLhWJ9HZYFJzPh0nKYNp4rQyF8gwsnbevQdzYW0
	xtxlj6CkQPLaQwIx1MHkji/cxHVhD4Q=
Subject: [PATCH v2 04/20] lib: move memcmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <f487da12-4c4e-27ff-2dea-af1e8b72165d@suse.com>
Date: Wed, 21 Apr 2021 16:19:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,25 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMCMP
-/**
- * memcmp - Compare two areas of memory
- * @cs: One area of memory
- * @ct: Another area of memory
- * @count: The size of the area.
- */
-int (memcmp)(const void *cs, const void *ct, size_t count)
-{
-	const unsigned char *su1, *su2;
-	int res = 0;
-
-	for( su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
-		if ((res = *su1 - *su2) != 0)
-			break;
-	return res;
-}
-#endif
-
 #ifndef __HAVE_ARCH_MEMCHR
 /**
  * memchr - Find a character in an area of memory.
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += memcmp.o
 lib-y += memcpy.o
 lib-y += memmove.o
 lib-y += memset.o
--- /dev/null
+++ b/xen/lib/memcmp.c
@@ -0,0 +1,32 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memcmp - Compare two areas of memory
+ * @cs: One area of memory
+ * @ct: Another area of memory
+ * @count: The size of the area.
+ */
+int (memcmp)(const void *cs, const void *ct, size_t count)
+{
+	const unsigned char *su1, *su2;
+	int res = 0;
+
+	for( su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
+		if ((res = *su1 - *su2) != 0)
+			break;
+	return res;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:20:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:20:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114629.218479 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDi0-0001Pu-B4; Wed, 21 Apr 2021 14:20:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114629.218479; Wed, 21 Apr 2021 14:20:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDi0-0001PN-86; Wed, 21 Apr 2021 14:20:04 +0000
Received: by outflank-mailman (input) for mailman id 114629;
 Wed, 21 Apr 2021 14:20:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDhz-0001IQ-HO
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:20:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8e7d62fd-09e3-4208-ad9c-2218983a4961;
 Wed, 21 Apr 2021 14:20:02 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 11B76B4D2;
 Wed, 21 Apr 2021 14:20: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: 8e7d62fd-09e3-4208-ad9c-2218983a4961
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014802; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=LMbNhxvtMq9ZbvXRz7K3D0FtL1970oZAtxN+hjxjzs4=;
	b=EUS0ZLZr56tjgYiJxWjYk/08qI0ufPHLI2Pl4Boo14WdDZS3BLanwY/I4CtlBce05GfZsT
	siFoNCbyUuD7D7y0cS5Rww2VkUWv9CYH009c9soHCW3Htocj3nKk6mKCgV3tvMzdvboc+3
	cLxN0APDV1U9MD4XCnndNI/Cpw8EhRo=
Subject: [PATCH v2 05/20] lib: move memchr()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <50a77bf7-e35b-be24-9cc3-a1691e7c7f90@suse.com>
Date: Wed, 21 Apr 2021 16:20:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,28 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-#ifndef __HAVE_ARCH_MEMCHR
-/**
- * memchr - Find a character in an area of memory.
- * @s: The memory area
- * @c: The byte to search for
- * @n: The size of the area.
- *
- * returns the address of the first occurrence of @c, or %NULL
- * if @c is not found
- */
-void *(memchr)(const void *s, int c, size_t n)
-{
-	const unsigned char *p = s;
-
-	while (n--)
-		if ((unsigned char)c == *p++)
-			return (void *)(p - 1);
-
-	return NULL;
-}
-#endif
-
 /**
  * memchr_inv - Find an unmatching character in an area of memory.
  * @s: The memory area
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -4,6 +4,7 @@ lib-y += bsearch.o
 lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
+lib-y += memchr.o
 lib-y += memcmp.o
 lib-y += memcpy.o
 lib-y += memmove.o
--- /dev/null
+++ b/xen/lib/memchr.c
@@ -0,0 +1,35 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memchr - Find a character in an area of memory.
+ * @s: The memory area
+ * @c: The byte to search for
+ * @n: The size of the area.
+ *
+ * returns the address of the first occurrence of @c, or %NULL
+ * if @c is not found
+ */
+void *(memchr)(const void *s, int c, size_t n)
+{
+	const unsigned char *p = s;
+
+	while (n--)
+		if ((unsigned char)c == *p++)
+			return (void *)(p - 1);
+
+	return NULL;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:20:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:20:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114634.218490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDiN-0001qu-JE; Wed, 21 Apr 2021 14:20:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114634.218490; Wed, 21 Apr 2021 14:20:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDiN-0001qn-GL; Wed, 21 Apr 2021 14:20:27 +0000
Received: by outflank-mailman (input) for mailman id 114634;
 Wed, 21 Apr 2021 14:20:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDiL-0001qS-OI
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:20:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d46683da-66f3-4c43-8f60-c9cf69430d10;
 Wed, 21 Apr 2021 14:20:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 166D2B4D0;
 Wed, 21 Apr 2021 14:20: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: d46683da-66f3-4c43-8f60-c9cf69430d10
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014824; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5hNPv/9z1szKdd0KceZZSiWvREDVh3EkEtocexi/+Dc=;
	b=Id8kVtUTkHiZARNT1JFvqAD2xH1LaSYZwsb0d/lLxkT1oGtjumfNxmJHuzOnxl+5L0B78f
	bbcfbd/SUajksZHOlFmPc/7NsLQ9SuQNLfOIDNH3gRciz+nUOhnBLbRJLbksInc7CsD47/
	+QRwXQwrZWSj2sUhv0+1fk8WVW8aKhU=
Subject: [PATCH v2 06/20] lib: move memchr_inv()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <e967d20b-d75e-1358-65e9-440476d2e21a@suse.com>
Date: Wed, 21 Apr 2021 16:20:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -311,26 +311,6 @@ char *(strstr)(const char *s1, const cha
 }
 #endif
 
-/**
- * memchr_inv - Find an unmatching character in an area of memory.
- * @s: The memory area
- * @c: The byte that is expected
- * @n: The size of the area.
- *
- * returns the address of the first occurrence of a character other than @c,
- * or %NULL if the whole buffer contains just @c.
- */
-void *memchr_inv(const void *s, int c, size_t n)
-{
-	const unsigned char *p = s;
-
-	while (n--)
-		if ((unsigned char)c != *p++)
-			return (void *)(p - 1);
-
-	return NULL;
-}
-
 /*
  * Local variables:
  * mode: C
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -5,6 +5,7 @@ lib-y += ctors.o
 lib-y += ctype.o
 lib-y += list-sort.o
 lib-y += memchr.o
+lib-y += memchr_inv.o
 lib-y += memcmp.o
 lib-y += memcpy.o
 lib-y += memmove.o
--- /dev/null
+++ b/xen/lib/memchr_inv.c
@@ -0,0 +1,35 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * memchr_inv - Find an unmatching character in an area of memory.
+ * @s: The memory area
+ * @c: The byte that is expected
+ * @n: The size of the area.
+ *
+ * returns the address of the first occurrence of a character other than @c,
+ * or %NULL if the whole buffer contains just @c.
+ */
+void *memchr_inv(const void *s, int c, size_t n)
+{
+	const unsigned char *p = s;
+
+	while (n--)
+		if ((unsigned char)c != *p++)
+			return (void *)(p - 1);
+
+	return NULL;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:21:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:21:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114643.218503 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDjU-00022g-UT; Wed, 21 Apr 2021 14:21:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114643.218503; Wed, 21 Apr 2021 14:21: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 1lZDjU-00022Z-RO; Wed, 21 Apr 2021 14:21:36 +0000
Received: by outflank-mailman (input) for mailman id 114643;
 Wed, 21 Apr 2021 14:21:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZDjT-00022R-0Z
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:21:35 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 569a3e72-618b-4ac8-80cb-6f3bc250c746;
 Wed, 21 Apr 2021 14:21: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: 569a3e72-618b-4ac8-80cb-6f3bc250c746
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619014894;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=sX1CMihl/T72pXfcjH70CQgmZN3vdgf+N711aQbnS3A=;
  b=HomdwS6fp+pKf8nNDmYietjZSCjKDFZvrzBTSUWQHuFp5ZKJSTesgFuY
   jeACNK5E077E523dlJfRo+Gsria2XUhLz6yFSI24Ma09gi0vpn5g9/6/Z
   S1iErhypq+ynGTCYO7/dsRgTAQMExbahmK70HUltc3rs41HzFHM/QysAl
   o=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: S0ZVkX7sAUrZuJdblNpPb2NTH1WLzX8cHcZEhv2y0+BiLnZI+XE8aWO3b7EfCHivZ+ZOzA28Sd
 lIVzRHQqL8JF5VvqvWMrxFbmN9LXW69uJGbflD2Gqm0I2nm8Lg2EXkR+K2MROPqfW7Kyt4VLZR
 BYW9rR0LWisppakIVeYx2VJmhN1EcLpTBnGWtI8WYSoiBSVa4E8jw1UJcVi8LeB2LEfjx7moHO
 WIcExqPv4jnANM6slHjisZAx/jEwabMOqRiBoXbXgyJ2WYqeEpH8oOGlH9YuS7WQ56e746gzrg
 ZVU=
X-SBRS: 5.2
X-MesageID: 42091057
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:0+2x9Kp0FZZ/remUWRczDKIaV5v5L9V00zAX/kB9WHVpW+SFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex7h3LR+iLNwAZ6JWg76tGy0aLxz9IeK+UyFJwTS1M54kZ
 1hfa93FcHqATFB5/rSzQGkH78br+Wv37uvgY7loUtFaSFPR+Ve4xxiCgCde3cGITVuIZYiDp
 KT6o5milObCBcqR/+2DHUEQOTPzuej/P7bSCULGgI97022hS6ogYSQLzGjwhwcXzlTqI1Sk1
 TtrgqR3MSemsD+8DDw/Sv575NamNzuo+EzefCku4wuBRjHziqtbIRlcbWesD4yu/HH0idXrP
 D85y0OEu42x3TNfnykgRaF4Xie7B8er0XM5HXdoXz/rdf3TDg3YvAx+75xQ1/ixGcL+PRfuZ
 g7uF6xht5sIj7r2BnZ3ZzuUSpnk0KlyEBS6tI7vjhkfqY1LINKoZd3xjIyLL4wWBjUxaoAC+
 dUAMTV9J9tACmnRkGchGVpzdC2N05DZyuucwwHssyR5TBcgGp0+Use3NAehXcN7vsGOuF529
 g=
X-IronPort-AV: E=Sophos;i="5.82,240,1613451600"; 
   d="scan'208";a="42091057"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FktSm/H+INlWSPIWaqSqVrW/ZrAGrcqM/Y3p2CrKbIg8u62V75UGxsswIWz2iVkhKXLLgfYFvpJuZghpPSVyjO9j4VM3CIruqLsfsb0baf6bC7oSx59hEPv6hhuUQggGRYyXwKOnVHbCKXrgqd5a97593uQ9q3TZTMm427oqz6Wnua1FsNnBp6m/Y9zEN+5Bx5Tb2yTvnySw1BLLus1f4Nv2iyH8ITyCqxLOj0244dYmMur3DX9a9fJLUY8cbe0V3DWMWATZ4p/vvrFQSixAamrJeAiiTurn6DvRfbGhaLdsgFBH1mzBDyibzqk1atuqi/zirQwErM9EQFUbNkBSWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jXNMhF7PHwW8p7LfJN7/WLbLO09GmNA9ENeeoH4A24w=;
 b=hNTyos4cpLMEHqM3JqZmJ0RZwbuznynpvN7Fp+/P7Gyo9KfBMHuf0YgDtE79MadSKp6mRWiK7zeGhVhkxpd5RR1DdFLpu5OAANIAe9paz8nMxx4fz14Oy6HlpTwZKNIXxOggttouWn4FJB5APkzdFvBdljAztWlyHSu+QbsL2ULRplZB1cFGhIIBRUVnKuMLdNTtAmQ2yThRjwiK78eBiGbO07oPa7ONKUX2C8kW6lHvofOxqaGKpmsKNQcrzyx27/lXhIJNSW9OYSggx3wFjNfm627dkODf99iRdIpOo8pxXNV2/0FcYxdKB5Tlq8CEbIfIWpLMdEqYNga6SX5q4Q==
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=jXNMhF7PHwW8p7LfJN7/WLbLO09GmNA9ENeeoH4A24w=;
 b=i48OCqZt3TYei7uROgTsVEvR4fs9FX/yqsqys2n29f1k9jMW9S38hr4zVZD6hmD3DdWfVLTezJVOoXt0OMO3kRquHbBgrv8XdwDt3leWaBAfUMGNNi6AdyqKWiGV0c21dd6ZxUUsy+iluxLxLV7foMGA0JcHhA5uip0LBPBeX6E=
Date: Wed, 21 Apr 2021 16:21:23 +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/8] x86/EFI: program headers are an ELF concept
Message-ID: <YIA046qIRcLsiOPY@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <017478f9-76d2-4dc4-de93-b662c4552968@suse.com>
 <YH/sLn+g/7wsZUDy@Air-de-Roger>
 <69abcc03-7ffc-10e2-0de3-26c6c84a6d26@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <69abcc03-7ffc-10e2-0de3-26c6c84a6d26@suse.com>
X-ClientProxiedBy: MR2P264CA0093.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::33) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3409f940-6b10-4968-662d-08d904d0c193
X-MS-TrafficTypeDiagnostic: DM6PR03MB4540:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB454065B76851B08A592A243C8F479@DM6PR03MB4540.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: PwkjC+R8/9OHwAqLCDFYyY7jqYZTHOWPJL4GgDEfQpIi97JW1Fc/b/+74n83gWkTmmVZT2ahQz/rtzkQhWPI4pKVDBk5pucPAxtznf9+kiv/2IZlTveXE6LX66NQmwgNYw3FTmND5KgHjzUut/26nVbgJhGQpthgNdr2avRqCzv2cr1xDxlGsUeuzHisIN+Dxiwk5U8ZjECrOCOxIL7FJTLOznx8nMDCATfL+an1H7gCtiZZSgkA5+bwPWrig6HyyKv3K1Fnl7F6z/N+yh9MeYzj9F65eZTDHs/jjdMm7LNt/ubK/AkCECzu9H6YM8iQH4YrXVKJUpK5d/GqT7V2dWrE04RyctaNFVyMvs9WExcjl4dSeUuKEiwngk5p6KBvXmJmEk0EsFIZ/GJaFxv6YEaZM1GOB/BTNH7YMYk/aPYqRnJWyJZIAo4mW4Yx/02L+CefsHudwq2T1RCSVcF4qp4Zz2ln88DjEqu2rZ9t/XCNe84eI58GF+zfERC9hYN2PhTtK9Y65KxNO336o1fTeyZXDStunOP8+kqBHXCmhv4SAqi4ejOS2A5sklh2XZcb8v8+urBHj5VGhkguV479FnMxVCn+RcUN2CHGIx4P9NU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(346002)(366004)(136003)(396003)(39860400002)(54906003)(6486002)(316002)(6666004)(9686003)(8936002)(2906002)(478600001)(5660300002)(4326008)(956004)(6916009)(26005)(83380400001)(16526019)(6496006)(85182001)(66556008)(66476007)(186003)(66946007)(38100700002)(86362001)(53546011)(8676002)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 3409f940-6b10-4968-662d-08d904d0c193
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 14:21:29.9197
 (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: JRgjhToM0pAV0wDzVEjYHSXfQfZNWFmdmGjxBBsWEPzcaaKuGy2O0CRrI3IsvO7/55L5WEa1Aw7dbyuEZWeyQA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4540
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 12:36:16PM +0200, Jan Beulich wrote:
> On 21.04.2021 11:11, Roger Pau Monné wrote:
> > On Thu, Apr 01, 2021 at 11:45:09AM +0200, Jan Beulich wrote:
> >> While they apparently do no harm when building xen.efi, their use is
> >> potentially misleading. Conditionalize their use to be for just the ELF
> >> binary we produce.
> >>
> >> No change to the resulting binaries.
> > 
> > The GNU Linker manual notes that program headers would be ignored when
> > not generating an ELF file, so I'm not sure it's worth us adding more
> > churn to the linker script to hide something that's already ignored by
> > ld already.
> > 
> > Maybe adding a comment noting program headers are ignored when not
> > generating an ELF output would be enough?
> 
> Maybe, but I'd prefer this to be explicit, and I'd prefer for efi.lds
> to not have any PE-unrelated baggage. The churn by this patch isn't
> all this significant, is it? In fact in two cases it actually deletes
> meaningless stuff.

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

I would prefer if the new PHDR macro was used for all program headers
directives for consistency though.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:22:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:22:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114647.218515 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDjz-00028Y-7Y; Wed, 21 Apr 2021 14:22:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114647.218515; Wed, 21 Apr 2021 14:22:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDjz-00028R-4e; Wed, 21 Apr 2021 14:22:07 +0000
Received: by outflank-mailman (input) for mailman id 114647;
 Wed, 21 Apr 2021 14:22:06 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDjy-00028K-Hw
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:22:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f3bb62b6-9a44-4c09-ac87-6e0aec27326b;
 Wed, 21 Apr 2021 14:22:05 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D6060B4D2;
 Wed, 21 Apr 2021 14:22: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: f3bb62b6-9a44-4c09-ac87-6e0aec27326b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014925; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=E+n1hqpE+sLl3vHGQjm07YiejYA4S+f1I/11X4roUSw=;
	b=GWdvtYx/UY98X7otMWxLgJo2F/xrKGnUu4cIBfb+GQU6aeAGiH4LY6jt8wW0BzgUNkgHK9
	WTApM+F+O1Cr/l/VYTRhc/+iQqeoP8HnD/LdILiXI/lnoy5/A/Z3sAGe/ywLJqX5RR/0q9
	aS88jkeo8zJKJjnBlMho1hT6xHzY46k=
Subject: [PATCH v2 07/20] lib: move strlen()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <96f1217c-d6fb-d83b-741a-2565890ca43c@suse.com>
Date: Wed, 21 Apr 2021 16:22:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -184,21 +184,6 @@ char *(strrchr)(const char *s, int c)
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRLEN
-/**
- * strlen - Find the length of a string
- * @s: The string to be sized
- */
-size_t (strlen)(const char * s)
-{
-	const char *sc;
-
-	for (sc = s; *sc != '\0'; ++sc)
-		/* nothing */;
-	return sc - s;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRNLEN
 /**
  * strnlen - Find the length of a length-limited string
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -14,6 +14,7 @@ lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
+lib-y += strlen.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
 
--- /dev/null
+++ b/xen/lib/strlen.c
@@ -0,0 +1,28 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strlen - Find the length of a string
+ * @s: The string to be sized
+ */
+size_t (strlen)(const char * s)
+{
+	const char *sc;
+
+	for (sc = s; *sc != '\0'; ++sc)
+		/* nothing */;
+	return sc - s;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:22:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:22:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114654.218526 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDkV-0002G0-HF; Wed, 21 Apr 2021 14:22:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114654.218526; Wed, 21 Apr 2021 14: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 1lZDkV-0002Ft-EN; Wed, 21 Apr 2021 14:22:39 +0000
Received: by outflank-mailman (input) for mailman id 114654;
 Wed, 21 Apr 2021 14:22:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDkU-0002Fm-M5
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:22:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 28696678-3e3e-4639-8fbc-4d7c7062a3d3;
 Wed, 21 Apr 2021 14:22:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F37E5B4DA;
 Wed, 21 Apr 2021 14:22: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: 28696678-3e3e-4639-8fbc-4d7c7062a3d3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014957; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Fb5KI+bAQ6MYv9PFZSi0Iz4GZ8NUhpIj7sV5bfwnL9o=;
	b=eMbeGQRo/x1qjbuNC8P5EH0YE+v/PxmWrDsnwBJ3KMwsZaJbaRnk38zybDlS5m9sxmXDQj
	52775amAI3M37xtMtsBFJ6l9YSAA4ZoM2j1hk6+fPEvMxB9wADSsBiB/BdoLiK/5pbimxc
	/zAF63px+MJtppqvSJwKB6ldq2Mc4K8=
Subject: [PATCH v2 08/20] lib: move strnlen()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <74e09e4a-1a67-b616-8c56-c5dea9184871@suse.com>
Date: Wed, 21 Apr 2021 16:22:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -184,22 +184,6 @@ char *(strrchr)(const char *s, int c)
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRNLEN
-/**
- * strnlen - Find the length of a length-limited string
- * @s: The string to be sized
- * @count: The maximum number of bytes to search
- */
-size_t strnlen(const char * s, size_t count)
-{
-	const char *sc;
-
-	for (sc = s; count-- && *sc != '\0'; ++sc)
-		/* nothing */;
-	return sc - s;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSPN
 /**
  * strspn - Calculate the length of the initial substring of @s which only
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -15,6 +15,7 @@ lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
 lib-y += strlen.o
+lib-y += strnlen.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
 
--- /dev/null
+++ b/xen/lib/strnlen.c
@@ -0,0 +1,29 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strnlen - Find the length of a length-limited string
+ * @s: The string to be sized
+ * @count: The maximum number of bytes to search
+ */
+size_t strnlen(const char * s, size_t count)
+{
+	const char *sc;
+
+	for (sc = s; count-- && *sc != '\0'; ++sc)
+		/* nothing */;
+	return sc - s;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:23:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:23:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114660.218539 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDkt-0002NX-UF; Wed, 21 Apr 2021 14:23:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114660.218539; Wed, 21 Apr 2021 14:23: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 1lZDkt-0002NQ-R8; Wed, 21 Apr 2021 14:23:03 +0000
Received: by outflank-mailman (input) for mailman id 114660;
 Wed, 21 Apr 2021 14:23:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDks-0002MI-Bm
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:23:02 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4347b79d-625e-44e1-b82a-e6cbfdd24b24;
 Wed, 21 Apr 2021 14:22:57 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AEB12B4DA;
 Wed, 21 Apr 2021 14:22: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: 4347b79d-625e-44e1-b82a-e6cbfdd24b24
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014976; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=s2DVYdfxyAMF+b+0oBREdJVxrIb85Ue9nsEafhsVnbY=;
	b=rmwtaRcRU2+aEdA3K40YlM7uhrDJfsU3cxMgPTX2WPN5uWwpx/Indj5hEO4GfZZgR8C3R4
	VReTu2zhAST3Mk8l/hw4J8tOM3SvCXdtIj4oz5n6itfdRteUC90syytvOnyjQRatrA199p
	Fi+8RWzlFtzcjXxlkAy+H3j4BZL813I=
Subject: [PATCH v2 09/20] lib: move strcmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <6fa3ce3e-30bb-c429-caef-64a66717cb13@suse.com>
Date: Wed, 21 Apr 2021 16:22:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -111,25 +111,6 @@ size_t strlcat(char *dest, const char *s
 EXPORT_SYMBOL(strlcat);
 #endif
 
-#ifndef __HAVE_ARCH_STRCMP
-/**
- * strcmp - Compare two strings
- * @cs: One string
- * @ct: Another string
- */
-int (strcmp)(const char *cs, const char *ct)
-{
-	register signed char __res;
-
-	while (1) {
-		if ((__res = *cs - *ct++) != 0 || !*cs++)
-			break;
-	}
-
-	return __res;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRNCMP
 /**
  * strncmp - Compare two length-limited strings
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -14,6 +14,7 @@ lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
+lib-y += strcmp.o
 lib-y += strlen.o
 lib-y += strnlen.o
 lib-$(CONFIG_X86) += xxhash32.o
--- /dev/null
+++ b/xen/lib/strcmp.c
@@ -0,0 +1,32 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strcmp - Compare two strings
+ * @cs: One string
+ * @ct: Another string
+ */
+int (strcmp)(const char *cs, const char *ct)
+{
+	register signed char __res;
+
+	while (1) {
+		if ((__res = *cs - *ct++) != 0 || !*cs++)
+			break;
+	}
+
+	return __res;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:23:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:23:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114664.218550 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDl9-0002TO-76; Wed, 21 Apr 2021 14:23:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114664.218550; Wed, 21 Apr 2021 14:23: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 1lZDl9-0002TG-41; Wed, 21 Apr 2021 14:23:19 +0000
Received: by outflank-mailman (input) for mailman id 114664;
 Wed, 21 Apr 2021 14:23:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDl7-0002Sw-BO
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:23:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7999c33c-c299-430d-bc2b-59c0ff8eb038;
 Wed, 21 Apr 2021 14:23:16 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DA28FB4D3;
 Wed, 21 Apr 2021 14:23: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: 7999c33c-c299-430d-bc2b-59c0ff8eb038
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619014996; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=4FvIXCowx2UIw7V4q4GB2nIMWZ/2oM6HHFptc5wvIQ8=;
	b=ay8w0YO2HC27wz0Yo6SJyxWVFYHEuthkRbAM+iqFpR4IwV+diAzeOOV03bvOeDdpWngkLa
	Cp8JS7FVNgbnjZgPvu4rq5OyVVbFPogJ+byPgvO3aXcW4DE1G24sw0c3dZQJtgZiG8xIOt
	D3f8Pw00Ai8p8ooizDG3ilHxePf4tj8=
Subject: [PATCH v2 10/20] lib: move strncmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <d2d821e4-ae56-d659-642a-e93d9cac0ec8@suse.com>
Date: Wed, 21 Apr 2021 16:23:15 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -111,27 +111,6 @@ size_t strlcat(char *dest, const char *s
 EXPORT_SYMBOL(strlcat);
 #endif
 
-#ifndef __HAVE_ARCH_STRNCMP
-/**
- * strncmp - Compare two length-limited strings
- * @cs: One string
- * @ct: Another string
- * @count: The maximum number of bytes to compare
- */
-int (strncmp)(const char *cs, const char *ct, size_t count)
-{
-	register signed char __res = 0;
-
-	while (count) {
-		if ((__res = *cs - *ct++) != 0 || !*cs++)
-			break;
-		count--;
-	}
-
-	return __res;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRCHR
 /**
  * strchr - Find the first occurrence of a character in a string
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -16,6 +16,7 @@ lib-y += rbtree.o
 lib-y += sort.o
 lib-y += strcmp.o
 lib-y += strlen.o
+lib-y += strncmp.o
 lib-y += strnlen.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
--- /dev/null
+++ b/xen/lib/strncmp.c
@@ -0,0 +1,34 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strncmp - Compare two length-limited strings
+ * @cs: One string
+ * @ct: Another string
+ * @count: The maximum number of bytes to compare
+ */
+int (strncmp)(const char *cs, const char *ct, size_t count)
+{
+	register signed char __res = 0;
+
+	while (count) {
+		if ((__res = *cs - *ct++) != 0 || !*cs++)
+			break;
+		count--;
+	}
+
+	return __res;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:23:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:23:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114670.218563 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDlW-0002aq-HK; Wed, 21 Apr 2021 14:23:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114670.218563; Wed, 21 Apr 2021 14:23: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 1lZDlW-0002aj-DK; Wed, 21 Apr 2021 14:23:42 +0000
Received: by outflank-mailman (input) for mailman id 114670;
 Wed, 21 Apr 2021 14:23:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDlV-0002ab-U8
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:23:41 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e1db7945-0e4a-453f-9bd9-22c4fe0f026c;
 Wed, 21 Apr 2021 14:23:41 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2E0DCB4CD;
 Wed, 21 Apr 2021 14:23: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: e1db7945-0e4a-453f-9bd9-22c4fe0f026c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015020; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mtUcSlpHHim8EO7pSYWk5WfxwrY5tNdvwHjshpV4nUg=;
	b=IoZRbRJQcDB5xriNzS4AlksbtOJbraURm986uRG2BAYge0bJtNBXCYR8bSnBNgrA+qtzHA
	e3YARfvapfUS6rr8I1QY6Do61fpM/39RE2bFcPuHgzKlHSyBKk+v3Z4CBTDcX032OJPyHe
	0wGb3HHCObmwxSGeJgVkrCucninRZtg=
Subject: [PATCH v2 11/20] lib: move strlcpy()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <0e2d802c-f43a-6028-870b-55ae4234559e@suse.com>
Date: Wed, 21 Apr 2021 16:23:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -56,32 +56,6 @@ int (strcasecmp)(const char *s1, const c
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRLCPY
-/**
- * strlcpy - Copy a %NUL terminated string into a sized buffer
- * @dest: Where to copy the string to
- * @src: Where to copy the string from
- * @size: size of destination buffer
- *
- * Compatible with *BSD: the result is always a valid
- * NUL-terminated string that fits in the buffer (unless,
- * of course, the buffer size is zero). It does not pad
- * out the result like strncpy() does.
- */
-size_t strlcpy(char *dest, const char *src, size_t size)
-{
-	size_t ret = strlen(src);
-
-	if (size) {
-		size_t len = (ret >= size) ? size-1 : ret;
-		memcpy(dest, src, len);
-		dest[len] = '\0';
-	}
-	return ret;
-}
-EXPORT_SYMBOL(strlcpy);
-#endif
-
 #ifndef __HAVE_ARCH_STRLCAT
 /**
  * strlcat - Append a %NUL terminated string into a sized buffer
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -15,6 +15,7 @@ lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
 lib-y += strcmp.o
+lib-y += strlcpy.o
 lib-y += strlen.o
 lib-y += strncmp.o
 lib-y += strnlen.o
--- /dev/null
+++ b/xen/lib/strlcpy.c
@@ -0,0 +1,38 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strlcpy - Copy a %NUL terminated string into a sized buffer
+ * @dest: Where to copy the string to
+ * @src: Where to copy the string from
+ * @size: size of destination buffer
+ *
+ * Compatible with *BSD: the result is always a valid
+ * NUL-terminated string that fits in the buffer (unless,
+ * of course, the buffer size is zero). It does not pad
+ * out the result like strncpy() does.
+ */
+size_t strlcpy(char *dest, const char *src, size_t size)
+{
+	size_t ret = strlen(src);
+
+	if (size) {
+		size_t len = (ret >= size) ? size-1 : ret;
+		memcpy(dest, src, len);
+		dest[len] = '\0';
+	}
+	return ret;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:24:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:24:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114675.218575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDlw-0002hk-RP; Wed, 21 Apr 2021 14:24:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114675.218575; Wed, 21 Apr 2021 14:24: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 1lZDlw-0002hd-Mu; Wed, 21 Apr 2021 14:24:08 +0000
Received: by outflank-mailman (input) for mailman id 114675;
 Wed, 21 Apr 2021 14:24:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDlv-0002hS-Ob
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:24:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9d84c05e-1612-47fc-af05-0f30e0f543f0;
 Wed, 21 Apr 2021 14:24:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 40AD3B4D0;
 Wed, 21 Apr 2021 14:24: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: 9d84c05e-1612-47fc-af05-0f30e0f543f0
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015046; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Qptv3sDhy3glLo/iGAHFmZQ2Uu0levQpMb7ZH5gYAjo=;
	b=jmordhoN2zOGSVSBlRXfCeIiB4vdFvR6Hr7ADEqqUi2/h/hIE+Nelryqu1kvDpJhUga3fq
	909PMMrhIBEw2HNspd45ZcLJn/UKrVS9ZowJVJpz9/Wz9lL2gURCMEYrAAzD/IWR6kk6nx
	UeJ/8JeeeJUQV7bdfmNnDsJFm5htCLk=
Subject: [PATCH v2 12/20] lib: move strlcat()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <e4b59a63-ab9a-33a8-df97-2262ced22a6f@suse.com>
Date: Wed, 21 Apr 2021 16:24:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -56,35 +56,6 @@ int (strcasecmp)(const char *s1, const c
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRLCAT
-/**
- * strlcat - Append a %NUL terminated string into a sized buffer
- * @dest: Where to copy the string to
- * @src: Where to copy the string from
- * @size: size of destination buffer
- *
- * Compatible with *BSD: the result is always a valid
- * NUL-terminated string that fits in the buffer (unless,
- * of course, the buffer size is zero).
- */
-size_t strlcat(char *dest, const char *src, size_t size)
-{
-	size_t slen = strlen(src);
-	size_t dlen = strnlen(dest, size);
-	char *p = dest + dlen;
-
-	while ((p - dest) < size)
-		if ((*p++ = *src++) == '\0')
-			break;
-
-	if (dlen < size)
-		*(p-1) = '\0';
-
-	return slen + dlen;
-}
-EXPORT_SYMBOL(strlcat);
-#endif
-
 #ifndef __HAVE_ARCH_STRCHR
 /**
  * strchr - Find the first occurrence of a character in a string
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -15,6 +15,7 @@ lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
 lib-y += strcmp.o
+lib-y += strlcat.o
 lib-y += strlcpy.o
 lib-y += strlen.o
 lib-y += strncmp.o
--- /dev/null
+++ b/xen/lib/strlcat.c
@@ -0,0 +1,41 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strlcat - Append a %NUL terminated string into a sized buffer
+ * @dest: Where to copy the string to
+ * @src: Where to copy the string from
+ * @size: size of destination buffer
+ *
+ * Compatible with *BSD: the result is always a valid
+ * NUL-terminated string that fits in the buffer (unless,
+ * of course, the buffer size is zero).
+ */
+size_t strlcat(char *dest, const char *src, size_t size)
+{
+	size_t slen = strlen(src);
+	size_t dlen = strnlen(dest, size);
+	char *p = dest + dlen;
+
+	while ((p - dest) < size)
+		if ((*p++ = *src++) == '\0')
+			break;
+
+	if (dlen < size)
+		*(p-1) = '\0';
+
+	return slen + dlen;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:24:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:24:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114677.218587 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDmI-0002oa-3w; Wed, 21 Apr 2021 14:24:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114677.218587; Wed, 21 Apr 2021 14: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 1lZDmI-0002oT-0j; Wed, 21 Apr 2021 14:24:30 +0000
Received: by outflank-mailman (input) for mailman id 114677;
 Wed, 21 Apr 2021 14:24:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDmG-0002oH-U6
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:24:28 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id feb0e4c1-2b53-405a-80f1-ccfdac92d2b6;
 Wed, 21 Apr 2021 14:24:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C15B6B4D5;
 Wed, 21 Apr 2021 14:24: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: feb0e4c1-2b53-405a-80f1-ccfdac92d2b6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015066; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Ta/mZ1J82vj5/njhIij2ZDZGYO0U9Eh6iVWMMmSf2Hc=;
	b=mQQW/hnM6g7wVezvow6KwkOfMjTW4xX9c95THs01wF5RLNiaXDOrPp7vwvBhG4noXyLonW
	+ac+oz9S/nIHSE1CBN8Ury5ALBJLuS/SyQzFGwt3bgosWPHyCbUw/7SzJ8HULTiVGdWZd0
	j4kfoCDxfSfeQoDnaV95EMbHT30SlAk=
Subject: [PATCH v2 13/20] lib: move strchr()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <92e18a3e-bc49-e197-2254-be86c281dbe2@suse.com>
Date: Wed, 21 Apr 2021 16:24:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -56,21 +56,6 @@ int (strcasecmp)(const char *s1, const c
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRCHR
-/**
- * strchr - Find the first occurrence of a character in a string
- * @s: The string to be searched
- * @c: The character to search for
- */
-char *(strchr)(const char *s, int c)
-{
-	for(; *s != (char) c; ++s)
-		if (*s == '\0')
-			return NULL;
-	return (char *) s;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRRCHR
 /**
  * strrchr - Find the last occurrence of a character in a string
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -14,6 +14,7 @@ lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
+lib-y += strchr.o
 lib-y += strcmp.o
 lib-y += strlcat.o
 lib-y += strlcpy.o
--- /dev/null
+++ b/xen/lib/strchr.c
@@ -0,0 +1,28 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strchr - Find the first occurrence of a character in a string
+ * @s: The string to be searched
+ * @c: The character to search for
+ */
+char *(strchr)(const char *s, int c)
+{
+	for(; *s != (char) c; ++s)
+		if (*s == '\0')
+			return NULL;
+	return (char *) s;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:24:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:24:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114682.218599 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDme-0002x6-DB; Wed, 21 Apr 2021 14:24:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114682.218599; Wed, 21 Apr 2021 14: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 1lZDme-0002wy-A1; Wed, 21 Apr 2021 14:24:52 +0000
Received: by outflank-mailman (input) for mailman id 114682;
 Wed, 21 Apr 2021 14:24:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDmc-0002wc-Og
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:24:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id dd2df82c-3b11-4ca6-887a-cab46643fff1;
 Wed, 21 Apr 2021 14:24:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3DAB9AF65;
 Wed, 21 Apr 2021 14:24: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: dd2df82c-3b11-4ca6-887a-cab46643fff1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015089; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=V2D22MGhvbC7x5CodaleCmbDoeONjuiqLIbZE1iqDYk=;
	b=q76qnLu3ns85impPYj76blrulor0DQ4UeXkLZLLQ/FcON3gec5Oul5km4Usf4yaQKjueHu
	c0ddaYBQYyG4L1DhD0R14wxZLJaoTz4tct6QcTkSxKfeGVIutbuo4+UxMg2D54EutALDQX
	tj7djIbMlmxCFFPSdiSgRMKuzSxU+Yg=
Subject: [PATCH v2 14/20] lib: move strrchr()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <b6dc2e15-98ec-8c9e-b20a-d1d29e0c1f49@suse.com>
Date: Wed, 21 Apr 2021 16:24:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -56,24 +56,6 @@ int (strcasecmp)(const char *s1, const c
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRRCHR
-/**
- * strrchr - Find the last occurrence of a character in a string
- * @s: The string to be searched
- * @c: The character to search for
- */
-char *(strrchr)(const char *s, int c)
-{
-	const char *p = s + strlen(s);
-
-	for (; *p != (char)c; --p)
-		if (p == s)
-			return NULL;
-
-	return (char *)p;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSPN
 /**
  * strspn - Calculate the length of the initial substring of @s which only
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -21,6 +21,7 @@ lib-y += strlcpy.o
 lib-y += strlen.o
 lib-y += strncmp.o
 lib-y += strnlen.o
+lib-y += strrchr.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
 
--- /dev/null
+++ b/xen/lib/strrchr.c
@@ -0,0 +1,31 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strrchr - Find the last occurrence of a character in a string
+ * @s: The string to be searched
+ * @c: The character to search for
+ */
+char *(strrchr)(const char *s, int c)
+{
+	const char *p = s + strlen(s);
+
+	for (; *p != (char)c; --p)
+		if (p == s)
+			return NULL;
+
+	return (char *)p;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:25:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:25:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114686.218611 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDmv-00037R-Lc; Wed, 21 Apr 2021 14:25:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114686.218611; Wed, 21 Apr 2021 14: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 1lZDmv-00037J-IS; Wed, 21 Apr 2021 14:25:09 +0000
Received: by outflank-mailman (input) for mailman id 114686;
 Wed, 21 Apr 2021 14:25:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDmu-000378-A7
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:25:08 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8a525680-f73b-4ea2-836a-3110f4070247;
 Wed, 21 Apr 2021 14:25:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CCAD0B4CD;
 Wed, 21 Apr 2021 14: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: 8a525680-f73b-4ea2-836a-3110f4070247
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015106; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=8QhvMzXM/i87KvTemiF5H1HaQ7XQjeqnJIEG17bkRhM=;
	b=pUfnmEZN0+1UKyLaoepXW/lcPsD83VUY7OWw8pkI3d/HBH5tRxqb27rTjwHmGFMEWGoWA8
	ghEJ+kQzKpkyGqRv6GdKe8JWHTSDgWWYGEmshycVHVLC4ARpbu0YRSWUmmU8k4dAHKdhLk
	BX0X3sNdyWsht9zTxQwweYBbir4OG30=
Subject: [PATCH v2 15/20] lib: move strstr()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <8a44fe36-be00-cfcb-2597-b14b4d4e500c@suse.com>
Date: Wed, 21 Apr 2021 16:25:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -131,27 +131,6 @@ char * strsep(char **s, const char *ct)
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRSTR
-/**
- * strstr - Find the first substring in a %NUL terminated string
- * @s1: The string to be searched
- * @s2: The string to search for
- */
-char *(strstr)(const char *s1, const char *s2)
-{
-	size_t l1, l2 = strlen(s2);
-
-	if (!l2)
-		return (char *)s1;
-
-	for (l1 = strlen(s1); l1 >= l2; --l1, ++s1)
-		if (!memcmp(s1, s2, l2))
-			return (char *)s1;
-
-	return NULL;
-}
-#endif
-
 /*
  * Local variables:
  * mode: C
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -22,6 +22,7 @@ lib-y += strlen.o
 lib-y += strncmp.o
 lib-y += strnlen.o
 lib-y += strrchr.o
+lib-y += strstr.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
 
--- /dev/null
+++ b/xen/lib/strstr.c
@@ -0,0 +1,34 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strstr - Find the first substring in a %NUL terminated string
+ * @s1: The string to be searched
+ * @s2: The string to search for
+ */
+char *(strstr)(const char *s1, const char *s2)
+{
+	size_t l1, l2 = strlen(s2);
+
+	if (!l2)
+		return (char *)s1;
+
+	for (l1 = strlen(s1); l1 >= l2; --l1, ++s1)
+		if (!memcmp(s1, s2, l2))
+			return (char *)s1;
+
+	return NULL;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:25:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:25:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114692.218623 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDnH-0003Gn-2Y; Wed, 21 Apr 2021 14:25:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114692.218623; Wed, 21 Apr 2021 14:25:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDnG-0003Gg-Vr; Wed, 21 Apr 2021 14:25:30 +0000
Received: by outflank-mailman (input) for mailman id 114692;
 Wed, 21 Apr 2021 14:25:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDnF-0003Ew-JL
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:25:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id acedf932-278d-4352-b1f6-14c048ce1ed4;
 Wed, 21 Apr 2021 14:25:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 13106B4CD;
 Wed, 21 Apr 2021 14:25: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: acedf932-278d-4352-b1f6-14c048ce1ed4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015127; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nmQ/c7gIzOZRlLH5fn36bOJsiqI2Th1uZDRwEg8ZZNY=;
	b=CEEei5MJcJLUjt4oUg8/clwINple8IwJTULy2r+bZYZxZ/GbYtbp9gL5DR4sxCVuc9Emio
	RqqZCJJt/MSsTtiAecObp7mBC0mAgTsd8CjKh0LWfNxBxC5V3eI5Db178VhlERQHJ/E+KN
	TOCXAwX0NRpL5ogPr7Evim28A+Z7eog=
Subject: [PATCH v2 16/20] lib: move strcasecmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <a8657b94-5c9b-f6fd-2d04-db1e0871e65e@suse.com>
Date: Wed, 21 Apr 2021 16:25:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -41,21 +41,6 @@ int strnicmp(const char *s1, const char
 }
 #endif
 
-#ifndef __HAVE_ARCH_STRCASECMP
-int (strcasecmp)(const char *s1, const char *s2)
-{
-    int c1, c2;
-
-    do
-    {
-        c1 = tolower(*s1++);
-        c2 = tolower(*s2++);
-    } while ( c1 == c2 && c1 != 0 );
-
-    return c1 - c2;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSPN
 /**
  * strspn - Calculate the length of the initial substring of @s which only
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -14,6 +14,7 @@ lib-y += muldiv64.o
 lib-y += parse-size.o
 lib-y += rbtree.o
 lib-y += sort.o
+lib-y += strcasecmp.o
 lib-y += strchr.o
 lib-y += strcmp.o
 lib-y += strlcat.o
--- /dev/null
+++ b/xen/lib/strcasecmp.c
@@ -0,0 +1,29 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+#include <xen/ctype.h>
+
+int (strcasecmp)(const char *s1, const char *s2)
+{
+    int c1, c2;
+
+    do
+    {
+        c1 = tolower(*s1++);
+        c2 = tolower(*s2++);
+    } while ( c1 == c2 && c1 != 0 );
+
+    return c1 - c2;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:25:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:25:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114699.218635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDna-0003PS-C5; Wed, 21 Apr 2021 14:25:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114699.218635; Wed, 21 Apr 2021 14:25:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDna-0003PL-8N; Wed, 21 Apr 2021 14:25:50 +0000
Received: by outflank-mailman (input) for mailman id 114699;
 Wed, 21 Apr 2021 14:25:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDnZ-0003Of-64
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:25:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f4cd4473-3831-43fd-a541-b39e8e9c47cb;
 Wed, 21 Apr 2021 14:25:47 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E4F84B4CD;
 Wed, 21 Apr 2021 14:25:46 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f4cd4473-3831-43fd-a541-b39e8e9c47cb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015147; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=bOiwld07WhTXpih+DJFsxzfncfqIuvXy8kpeycCOHLA=;
	b=eAN+ZhDrkq9RX5U6QdCz3DyTvowT4/PQHzOBDHJHwwF6ssGqvM+prkr21rafL9Xv84cHlz
	A+iHHgoO0nUudLzOGnQjSE0ABfl3dY9fN/RizCQno2HpP5khDtiVrjg50fk61BFLGCep11
	kRyhRjSx1dwzfhYFKURRK8P6GxR4T2w=
Subject: [PATCH v2 17/20] lib: move/rename strnicmp() to strncasecmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <1fab1400-9bb5-f9e8-0f7f-3213afc0ad92@suse.com>
Date: Wed, 21 Apr 2021 16:25:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While moving the implementation, also rename it to match strcasecmp(),
allowing the similar use of a compiler builting in this case as well.

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1224,8 +1224,8 @@ static int __init map_range_to_domain(co
      * They are not MMIO and therefore a domain should not be able to
      * manage them via the IOMEM interface.
      */
-    if ( strnicmp(dt_node_full_name(dev), "/reserved-memory/",
-         strlen("/reserved-memory/")) != 0 )
+    if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/",
+                     strlen("/reserved-memory/")) != 0 )
     {
         res = iomem_permit_access(d, paddr_to_pfn(addr),
                 paddr_to_pfn(PAGE_ALIGN(addr + len - 1)));
--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -8,39 +8,6 @@
 #include <xen/string.h>
 #include <xen/ctype.h>
 
-#ifndef __HAVE_ARCH_STRNICMP
-/**
- * strnicmp - Case insensitive, length-limited string comparison
- * @s1: One string
- * @s2: The other string
- * @len: the maximum number of characters to compare
- */
-int strnicmp(const char *s1, const char *s2, size_t len)
-{
-	/* Yes, Virginia, it had better be unsigned */
-	unsigned char c1, c2;
-
-	c1 = 0;	c2 = 0;
-	if (len) {
-		do {
-			c1 = *s1; c2 = *s2;
-			s1++; s2++;
-			if (!c1)
-				break;
-			if (!c2)
-				break;
-			if (c1 == c2)
-				continue;
-			c1 = tolower(c1);
-			c2 = tolower(c2);
-			if (c1 != c2)
-				break;
-		} while (--len);
-	}
-	return (int)c1 - (int)c2;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSPN
 /**
  * strspn - Calculate the length of the initial substring of @s which only
--- a/xen/drivers/acpi/pmstat.c
+++ b/xen/drivers/acpi/pmstat.c
@@ -275,14 +275,14 @@ static int get_cpufreq_para(struct xen_s
         strlcpy(op->u.get_para.scaling_governor, "Unknown", CPUFREQ_NAME_LEN);
 
     /* governor specific para */
-    if ( !strnicmp(op->u.get_para.scaling_governor, 
-                   "userspace", CPUFREQ_NAME_LEN) )
+    if ( !strncasecmp(op->u.get_para.scaling_governor,
+                      "userspace", CPUFREQ_NAME_LEN) )
     {
         op->u.get_para.u.userspace.scaling_setspeed = policy->cur;
     }
 
-    if ( !strnicmp(op->u.get_para.scaling_governor, 
-                   "ondemand", CPUFREQ_NAME_LEN) )
+    if ( !strncasecmp(op->u.get_para.scaling_governor,
+                      "ondemand", CPUFREQ_NAME_LEN) )
     {
         ret = get_cpufreq_ondemand_para(
             &op->u.get_para.u.ondemand.sampling_rate_max,
@@ -350,8 +350,8 @@ static int set_cpufreq_para(struct xen_s
     {
         unsigned int freq =op->u.set_para.ctrl_value;
 
-        if ( !strnicmp(policy->governor->name,
-                       "userspace", CPUFREQ_NAME_LEN) )
+        if ( !strncasecmp(policy->governor->name,
+                          "userspace", CPUFREQ_NAME_LEN) )
             ret = write_userspace_scaling_setspeed(op->cpuid, freq);
         else
             ret = -EINVAL;
@@ -363,8 +363,8 @@ static int set_cpufreq_para(struct xen_s
     {
         unsigned int sampling_rate = op->u.set_para.ctrl_value;
 
-        if ( !strnicmp(policy->governor->name,
-                       "ondemand", CPUFREQ_NAME_LEN) )
+        if ( !strncasecmp(policy->governor->name,
+                          "ondemand", CPUFREQ_NAME_LEN) )
             ret = write_ondemand_sampling_rate(sampling_rate);
         else
             ret = -EINVAL;
@@ -376,8 +376,8 @@ static int set_cpufreq_para(struct xen_s
     {
         unsigned int up_threshold = op->u.set_para.ctrl_value;
 
-        if ( !strnicmp(policy->governor->name,
-                       "ondemand", CPUFREQ_NAME_LEN) )
+        if ( !strncasecmp(policy->governor->name,
+                          "ondemand", CPUFREQ_NAME_LEN) )
             ret = write_ondemand_up_threshold(up_threshold);
         else
             ret = -EINVAL;
--- a/xen/drivers/cpufreq/cpufreq.c
+++ b/xen/drivers/cpufreq/cpufreq.c
@@ -111,7 +111,7 @@ struct cpufreq_governor *__find_governor
         return NULL;
 
     list_for_each_entry(t, &cpufreq_governor_list, governor_list)
-        if (!strnicmp(governor, t->name, CPUFREQ_NAME_LEN))
+        if (!strncasecmp(governor, t->name, CPUFREQ_NAME_LEN))
             return t;
 
     return NULL;
--- a/xen/include/xen/string.h
+++ b/xen/include/xen/string.h
@@ -16,8 +16,8 @@ size_t strlcpy(char *, const char *, siz
 size_t strlcat(char *, const char *, size_t);
 int strcmp(const char *, const char *);
 int strncmp(const char *, const char *, size_t);
-int strnicmp(const char *, const char *, size_t);
 int strcasecmp(const char *, const char *);
+int strncasecmp(const char *, const char *, size_t);
 char *strchr(const char *, int);
 char *strrchr(const char *, int);
 char *strstr(const char *, const char *);
@@ -48,6 +48,10 @@ void *memchr_inv(const void *, int, size
 #define strcasecmp(s1, s2) __builtin_strcasecmp(s1, s2)
 #endif
 
+#ifndef __HAVE_ARCH_STRCASECMP
+#define strncasecmp(s1, s2, n) __builtin_strncasecmp(s1, s2, n)
+#endif
+
 #ifndef __HAVE_ARCH_STRCHR
 #define strchr(s1, c) __builtin_strchr(s1, c)
 #endif
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -20,6 +20,7 @@ lib-y += strcmp.o
 lib-y += strlcat.o
 lib-y += strlcpy.o
 lib-y += strlen.o
+lib-y += strncasecmp.o
 lib-y += strncmp.o
 lib-y += strnlen.o
 lib-y += strrchr.o
--- /dev/null
+++ b/xen/lib/strncasecmp.c
@@ -0,0 +1,47 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+#include <xen/ctype.h>
+
+/**
+ * strncasecmp - Case insensitive, length-limited string comparison
+ * @s1: One string
+ * @s2: The other string
+ * @len: the maximum number of characters to compare
+ */
+int (strncasecmp)(const char *s1, const char *s2, size_t len)
+{
+	/* Yes, Virginia, it had better be unsigned */
+	unsigned char c1, c2;
+
+	c1 = 0;	c2 = 0;
+	if (len) {
+		do {
+			c1 = *s1; c2 = *s2;
+			s1++; s2++;
+			if (!c1)
+				break;
+			if (!c2)
+				break;
+			if (c1 == c2)
+				continue;
+			c1 = tolower(c1);
+			c2 = tolower(c2);
+			if (c1 != c2)
+				break;
+		} while (--len);
+	}
+	return (int)c1 - (int)c2;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:26:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:26:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114706.218647 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDnv-0003ZE-MM; Wed, 21 Apr 2021 14:26:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114706.218647; Wed, 21 Apr 2021 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 1lZDnv-0003Z7-H2; Wed, 21 Apr 2021 14:26:11 +0000
Received: by outflank-mailman (input) for mailman id 114706;
 Wed, 21 Apr 2021 14:26:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDnu-0003Ys-Cn
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:26:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 888cad03-6053-4b2d-acb0-378bef7832e2;
 Wed, 21 Apr 2021 14:26:09 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BFD2CB4D3;
 Wed, 21 Apr 2021 14:26:08 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 888cad03-6053-4b2d-acb0-378bef7832e2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015168; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=/ikAXGR+d4BQ68yH7iPulr9qDYJtJu1Q/hYMFGUEDmQ=;
	b=h9YVw9owsJSwRLAOuwbARKv1fN5XXz07GXtO75c3x9FV8uOXtHa/5VNdPPxxFkhPVq+O0A
	fQCN26olM7rWvOnEjNa1c1B3kYlRgfb4CfylivRzVjGUQxL3papNGHOGXqoYgWT6/r1PZF
	7nlyFKtoXqFUtN/K8JZn8Dwm0hl3+0k=
Subject: [PATCH v2 18/20] lib: move strspn()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <901b2b75-c042-febf-b0cf-a6e7f806b26a@suse.com>
Date: Wed, 21 Apr 2021 16:26:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable. In fact the function is unused at present, and hence will
now get omitted from the final binaries.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -8,33 +8,6 @@
 #include <xen/string.h>
 #include <xen/ctype.h>
 
-#ifndef __HAVE_ARCH_STRSPN
-/**
- * strspn - Calculate the length of the initial substring of @s which only
- * 	contain letters in @accept
- * @s: The string to be searched
- * @accept: The string to search for
- */
-size_t strspn(const char *s, const char *accept)
-{
-	const char *p;
-	const char *a;
-	size_t count = 0;
-
-	for (p = s; *p != '\0'; ++p) {
-		for (a = accept; *a != '\0'; ++a) {
-			if (*p == *a)
-				break;
-		}
-		if (*a == '\0')
-			return count;
-		++count;
-	}
-
-	return count;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRPBRK
 /**
  * strpbrk - Find the first occurrence of a set of characters
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -24,6 +24,7 @@ lib-y += strncasecmp.o
 lib-y += strncmp.o
 lib-y += strnlen.o
 lib-y += strrchr.o
+lib-y += strspn.o
 lib-y += strstr.o
 lib-$(CONFIG_X86) += xxhash32.o
 lib-$(CONFIG_X86) += xxhash64.o
--- /dev/null
+++ b/xen/lib/strspn.c
@@ -0,0 +1,40 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strspn - Calculate the length of the initial substring of @s which only
+ * 	contain letters in @accept
+ * @s: The string to be searched
+ * @accept: The string to search for
+ */
+size_t strspn(const char *s, const char *accept)
+{
+	const char *p;
+	const char *a;
+	size_t count = 0;
+
+	for (p = s; *p != '\0'; ++p) {
+		for (a = accept; *a != '\0'; ++a) {
+			if (*p == *a)
+				break;
+		}
+		if (*a == '\0')
+			return count;
+		++count;
+	}
+
+	return count;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:26:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:26:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114709.218659 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDoG-0003fh-Ti; Wed, 21 Apr 2021 14:26:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114709.218659; Wed, 21 Apr 2021 14: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 1lZDoG-0003fY-Q4; Wed, 21 Apr 2021 14:26:32 +0000
Received: by outflank-mailman (input) for mailman id 114709;
 Wed, 21 Apr 2021 14:26:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDoE-0003f8-Su
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:26:30 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9862c2ce-2e0d-49d5-98b6-64d5735995e4;
 Wed, 21 Apr 2021 14:26:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5DA1DB4D6;
 Wed, 21 Apr 2021 14:26: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: 9862c2ce-2e0d-49d5-98b6-64d5735995e4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015189; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=VRhAA1umJE95thm+BkRB0Qw/wbJzne0Yyf6yVGgrwEI=;
	b=A9mqYbg1+HuQbbSNgqolaVaq8+sTSP9mtGA92eWE12ebNllVyAlvbyd6JqskUWy0OlnzGu
	BE5OPXWo6guzO8kqiH3HR+DCR55GphwwC4sBJbPsRtlhgBAMsDBqphUiO4GtIsLoww1dbJ
	En/MtgON5csJszRQYVQlFLELudHMISc=
Subject: [PATCH v2 19/20] lib: move strpbrk()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <a54f3d95-7dc1-56e5-7367-9322474d3952@suse.com>
Date: Wed, 21 Apr 2021 16:26:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -8,26 +8,6 @@
 #include <xen/string.h>
 #include <xen/ctype.h>
 
-#ifndef __HAVE_ARCH_STRPBRK
-/**
- * strpbrk - Find the first occurrence of a set of characters
- * @cs: The string to be searched
- * @ct: The characters to search for
- */
-char * strpbrk(const char * cs,const char * ct)
-{
-	const char *sc1,*sc2;
-
-	for( sc1 = cs; *sc1 != '\0'; ++sc1) {
-		for( sc2 = ct; *sc2 != '\0'; ++sc2) {
-			if (*sc1 == *sc2)
-				return (char *) sc1;
-		}
-	}
-	return NULL;
-}
-#endif
-
 #ifndef __HAVE_ARCH_STRSEP
 /**
  * strsep - Split a string into tokens
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -23,6 +23,7 @@ lib-y += strlen.o
 lib-y += strncasecmp.o
 lib-y += strncmp.o
 lib-y += strnlen.o
+lib-y += strpbrk.o
 lib-y += strrchr.o
 lib-y += strspn.o
 lib-y += strstr.o
--- /dev/null
+++ b/xen/lib/strpbrk.c
@@ -0,0 +1,33 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strpbrk - Find the first occurrence of a set of characters
+ * @cs: The string to be searched
+ * @ct: The characters to search for
+ */
+char *strpbrk(const char * cs,const char * ct)
+{
+	const char *sc1,*sc2;
+
+	for( sc1 = cs; *sc1 != '\0'; ++sc1) {
+		for( sc2 = ct; *sc2 != '\0'; ++sc2) {
+			if (*sc1 == *sc2)
+				return (char *) sc1;
+		}
+	}
+	return NULL;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:26:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:26:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114715.218671 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDod-0003n9-62; Wed, 21 Apr 2021 14:26:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114715.218671; Wed, 21 Apr 2021 14: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 1lZDod-0003n2-2k; Wed, 21 Apr 2021 14:26:55 +0000
Received: by outflank-mailman (input) for mailman id 114715;
 Wed, 21 Apr 2021 14:26:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDoc-0003mo-4P
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:26:54 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4eea3bb6-d7ab-44e6-845c-621b4b4e187c;
 Wed, 21 Apr 2021 14:26:53 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 408BDAF65;
 Wed, 21 Apr 2021 14:26: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: 4eea3bb6-d7ab-44e6-845c-621b4b4e187c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015212; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=u2H21liw5DO3IL1nQvzkhzYeKaGhal3AQ8PDJbmUMCo=;
	b=XqP2dv9mov/1KCzTSo1Vao8a0tPp7NgMQrVDUIvJR5jYig9xHAd2ROdke6ZI9n/T1Tauu2
	ZnYLhA4Rf7N6krTfb7dFrXfNLyZOGQZdauKb5YxjH3iSuVMDzFOzjs8G5t4edx15tudKEy
	QZYEjB4sMA3miMyLa5I7PJgn59OaJwc=
Subject: [PATCH v2 20/20] lib: move strsep()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Message-ID: <e142b4c6-a816-e3b9-baaf-95f6796b960c@suse.com>
Date: Wed, 21 Apr 2021 16:26:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Allow the function to be individually linkable, discardable, and
overridable.

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

--- a/xen/common/Makefile
+++ b/xen/common/Makefile
@@ -40,7 +40,6 @@ obj-y += softirq.o
 obj-y += smp.o
 obj-y += spinlock.o
 obj-y += stop_machine.o
-obj-y += string.o
 obj-y += symbols.o
 obj-y += tasklet.o
 obj-y += time.o
--- a/xen/common/string.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- *  linux/lib/string.c
- *
- *  Copyright (C) 1991, 1992  Linus Torvalds
- */
-
-#include <xen/types.h>
-#include <xen/string.h>
-#include <xen/ctype.h>
-
-#ifndef __HAVE_ARCH_STRSEP
-/**
- * strsep - Split a string into tokens
- * @s: The string to be searched
- * @ct: The characters to search for
- *
- * strsep() updates @s to point after the token, ready for the next call.
- *
- * It returns empty tokens, too, behaving exactly like the libc function
- * of that name. In fact, it was stolen from glibc2 and de-fancy-fied.
- * Same semantics, slimmer shape. ;)
- */
-char * strsep(char **s, const char *ct)
-{
-	char *sbegin = *s, *end;
-
-	if (sbegin == NULL)
-		return NULL;
-
-	end = strpbrk(sbegin, ct);
-	if (end)
-		*end++ = '\0';
-	*s = end;
-
-	return sbegin;
-}
-#endif
-
-/*
- * Local variables:
- * mode: C
- * c-file-style: "BSD"
- * c-basic-offset: 8
- * tab-width: 8
- * indent-tabs-mode: t
- * End:
- */
--- a/xen/lib/Makefile
+++ b/xen/lib/Makefile
@@ -25,6 +25,7 @@ lib-y += strncmp.o
 lib-y += strnlen.o
 lib-y += strpbrk.o
 lib-y += strrchr.o
+lib-y += strsep.o
 lib-y += strspn.o
 lib-y += strstr.o
 lib-$(CONFIG_X86) += xxhash32.o
--- /dev/null
+++ b/xen/lib/strsep.c
@@ -0,0 +1,41 @@
+/*
+ *  Copyright (C) 1991, 1992  Linus Torvalds
+ */
+
+#include <xen/string.h>
+
+/**
+ * strsep - Split a string into tokens
+ * @s: The string to be searched
+ * @ct: The characters to search for
+ *
+ * strsep() updates @s to point after the token, ready for the next call.
+ *
+ * It returns empty tokens, too, behaving exactly like the libc function
+ * of that name. In fact, it was stolen from glibc2 and de-fancy-fied.
+ * Same semantics, slimmer shape. ;)
+ */
+char *strsep(char **s, const char *ct)
+{
+	char *sbegin = *s, *end;
+
+	if (sbegin == NULL)
+		return NULL;
+
+	end = strpbrk(sbegin, ct);
+	if (end)
+		*end++ = '\0';
+	*s = end;
+
+	return sbegin;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 8
+ * tab-width: 8
+ * indent-tabs-mode: t
+ * End:
+ */



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:30:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:30:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114729.218683 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDs7-0004hj-Np; Wed, 21 Apr 2021 14:30:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114729.218683; Wed, 21 Apr 2021 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 1lZDs7-0004hc-K5; Wed, 21 Apr 2021 14:30:31 +0000
Received: by outflank-mailman (input) for mailman id 114729;
 Wed, 21 Apr 2021 14:30:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDs6-0004hX-1d
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:30:30 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9f152367-d26c-4961-9317-311a5c203ffe;
 Wed, 21 Apr 2021 14:30:29 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 829C0B4CD;
 Wed, 21 Apr 2021 14:30: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: 9f152367-d26c-4961-9317-311a5c203ffe
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015428; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=g1ll3+pWW8Gbe3Jp+0VuiCL+/jIP4oCBP3T9uat6pkQ=;
	b=H8dJ8r4n90WnrHd8erLK8TUK6EWCOtLmdPXR1WvgysKpPZmbMW/V9jg9xFF+AaE/QHYTOW
	i5i9U9435Q7Su1VPETR31Ig8x+qqUWwZSMCag8hem2SBxbi5dwN1VMhXrBV5Z9yNJ2CVv4
	4M5UqSwoee++XUSMkcxKxAzV5bvEbGo=
Subject: Re: [PATCH 3/8] x86/EFI: program headers are an ELF concept
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <017478f9-76d2-4dc4-de93-b662c4552968@suse.com>
 <YH/sLn+g/7wsZUDy@Air-de-Roger>
 <69abcc03-7ffc-10e2-0de3-26c6c84a6d26@suse.com>
 <YIA046qIRcLsiOPY@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <bcea78d4-d77a-44fa-6e68-6905048e8418@suse.com>
Date: Wed, 21 Apr 2021 16:30:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIA046qIRcLsiOPY@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 16:21, Roger Pau Monné wrote:
> On Wed, Apr 21, 2021 at 12:36:16PM +0200, Jan Beulich wrote:
>> On 21.04.2021 11:11, Roger Pau Monné wrote:
>>> On Thu, Apr 01, 2021 at 11:45:09AM +0200, Jan Beulich wrote:
>>>> While they apparently do no harm when building xen.efi, their use is
>>>> potentially misleading. Conditionalize their use to be for just the ELF
>>>> binary we produce.
>>>>
>>>> No change to the resulting binaries.
>>>
>>> The GNU Linker manual notes that program headers would be ignored when
>>> not generating an ELF file, so I'm not sure it's worth us adding more
>>> churn to the linker script to hide something that's already ignored by
>>> ld already.
>>>
>>> Maybe adding a comment noting program headers are ignored when not
>>> generating an ELF output would be enough?
>>
>> Maybe, but I'd prefer this to be explicit, and I'd prefer for efi.lds
>> to not have any PE-unrelated baggage. The churn by this patch isn't
>> all this significant, is it? In fact in two cases it actually deletes
>> meaningless stuff.
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> I would prefer if the new PHDR macro was used for all program headers
> directives for consistency though.

Well, yes, I can certainly do so.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:36:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:36:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114740.218722 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDxn-0004yi-MQ; Wed, 21 Apr 2021 14:36:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114740.218722; Wed, 21 Apr 2021 14: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 1lZDxn-0004yG-DC; Wed, 21 Apr 2021 14:36:23 +0000
Received: by outflank-mailman (input) for mailman id 114740;
 Wed, 21 Apr 2021 14:36:21 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDxl-0004wR-AX
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:36:21 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDxk-0001QX-Tb; Wed, 21 Apr 2021 14:36:20 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDeB-00045m-7S; Wed, 21 Apr 2021 14:16: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=tjcMkEmKVjm7fDx4hQ3/QuwDSYDqSrWMbQ2y4e1oto8=; b=B
	4a3mYvB/Rszn1EBMkjWCPl43S8mopbCMHsBqs+MNyAFpOvU5MYw0mJnWoW+mfEWMIHCK/akqqjgtW
	Y8ahCx4oraSnwbbGidXDz3CxOzW/v4bfYxQ4ES7IX1v4+/Iopqqup5GkD527kgR3Sutm3iuXpmBRb
	sUiv7H4dtKxkjSRU=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 10/13] x86/smpboot: switch clone_mapping() to new APIs
Date: Wed, 21 Apr 2021 15:15:38 +0100
Message-Id: <a3c9ae1b6d900165d3aab42d8030ecfa469c84a1.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v10:
- switch to unmap_domain_page() for pl3e in the middle because it is
  guaranteed to be overwritten later.

Changed in v7:
- change patch title
- remove initialiser of pl3e.
- combine the initialisation of pl3e into a single assignment.
- use the new alloc_map_clear() helper.
- use the normal map_domain_page() in the error path.
---
 xen/arch/x86/smpboot.c | 44 ++++++++++++++++++++++++++----------------
 1 file changed, 27 insertions(+), 17 deletions(-)

diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index e90c4dfa8a88..765cf3396051 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -694,8 +694,8 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     unsigned long linear = (unsigned long)ptr, pfn;
     unsigned int flags;
     l3_pgentry_t *pl3e;
-    l2_pgentry_t *pl2e;
-    l1_pgentry_t *pl1e;
+    l2_pgentry_t *pl2e = NULL;
+    l1_pgentry_t *pl1e = NULL;
     int rc = 0;
 
     /*
@@ -710,7 +710,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
          (linear >= XEN_VIRT_END && linear < DIRECTMAP_VIRT_START) )
         return -EINVAL;
 
-    pl3e = l4e_to_l3e(idle_pg_table[root_table_offset(linear)]) +
+    pl3e = map_l3t_from_l4e(idle_pg_table[root_table_offset(linear)]) +
         l3_table_offset(linear);
 
     flags = l3e_get_flags(*pl3e);
@@ -723,7 +723,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
     }
     else
     {
-        pl2e = l3e_to_l2e(*pl3e) + l2_table_offset(linear);
+        pl2e = map_l2t_from_l3e(*pl3e) + l2_table_offset(linear);
         flags = l2e_get_flags(*pl2e);
         ASSERT(flags & _PAGE_PRESENT);
         if ( flags & _PAGE_PSE )
@@ -734,7 +734,7 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
         }
         else
         {
-            pl1e = l2e_to_l1e(*pl2e) + l1_table_offset(linear);
+            pl1e = map_l1t_from_l2e(*pl2e) + l1_table_offset(linear);
             flags = l1e_get_flags(*pl1e);
             if ( !(flags & _PAGE_PRESENT) )
                 goto out;
@@ -742,51 +742,58 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
         }
     }
 
+    UNMAP_DOMAIN_PAGE(pl1e);
+    UNMAP_DOMAIN_PAGE(pl2e);
+    unmap_domain_page(pl3e);
+
     if ( !(root_get_flags(rpt[root_table_offset(linear)]) & _PAGE_PRESENT) )
     {
-        pl3e = alloc_xen_pagetable();
+        mfn_t l3mfn;
+
+        pl3e = alloc_mapped_pagetable(&l3mfn);
         rc = -ENOMEM;
         if ( !pl3e )
             goto out;
-        clear_page(pl3e);
         l4e_write(&rpt[root_table_offset(linear)],
-                  l4e_from_paddr(__pa(pl3e), __PAGE_HYPERVISOR));
+                  l4e_from_mfn(l3mfn, __PAGE_HYPERVISOR));
     }
     else
-        pl3e = l4e_to_l3e(rpt[root_table_offset(linear)]);
+        pl3e = map_l3t_from_l4e(rpt[root_table_offset(linear)]);
 
     pl3e += l3_table_offset(linear);
 
     if ( !(l3e_get_flags(*pl3e) & _PAGE_PRESENT) )
     {
-        pl2e = alloc_xen_pagetable();
+        mfn_t l2mfn;
+
+        pl2e = alloc_mapped_pagetable(&l2mfn);
         rc = -ENOMEM;
         if ( !pl2e )
             goto out;
-        clear_page(pl2e);
-        l3e_write(pl3e, l3e_from_paddr(__pa(pl2e), __PAGE_HYPERVISOR));
+        l3e_write(pl3e, l3e_from_mfn(l2mfn, __PAGE_HYPERVISOR));
     }
     else
     {
         ASSERT(!(l3e_get_flags(*pl3e) & _PAGE_PSE));
-        pl2e = l3e_to_l2e(*pl3e);
+        pl2e = map_l2t_from_l3e(*pl3e);
     }
 
     pl2e += l2_table_offset(linear);
 
     if ( !(l2e_get_flags(*pl2e) & _PAGE_PRESENT) )
     {
-        pl1e = alloc_xen_pagetable();
+        mfn_t l1mfn;
+
+        pl1e = alloc_mapped_pagetable(&l1mfn);
         rc = -ENOMEM;
         if ( !pl1e )
             goto out;
-        clear_page(pl1e);
-        l2e_write(pl2e, l2e_from_paddr(__pa(pl1e), __PAGE_HYPERVISOR));
+        l2e_write(pl2e, l2e_from_mfn(l1mfn, __PAGE_HYPERVISOR));
     }
     else
     {
         ASSERT(!(l2e_get_flags(*pl2e) & _PAGE_PSE));
-        pl1e = l2e_to_l1e(*pl2e);
+        pl1e = map_l1t_from_l2e(*pl2e);
     }
 
     pl1e += l1_table_offset(linear);
@@ -802,6 +809,9 @@ static int clone_mapping(const void *ptr, root_pgentry_t *rpt)
 
     rc = 0;
  out:
+    unmap_domain_page(pl1e);
+    unmap_domain_page(pl2e);
+    unmap_domain_page(pl3e);
     return rc;
 }
 
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:36:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:36:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114737.218695 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDxm-0004wd-Hr; Wed, 21 Apr 2021 14:36:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114737.218695; Wed, 21 Apr 2021 14: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 1lZDxm-0004wW-Em; Wed, 21 Apr 2021 14:36:22 +0000
Received: by outflank-mailman (input) for mailman id 114737;
 Wed, 21 Apr 2021 14:36:21 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDxk-0004wC-W5
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:36:21 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDxk-0001QR-Km; Wed, 21 Apr 2021 14:36:20 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDeE-00045m-Cc; Wed, 21 Apr 2021 14:16: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=AC45yiomZKQ6k5JSnBJ7cYzYUAf7Pz4JgaGVf71UzCw=; b=q
	9fcs0VBcq24AbXYCp5y0THWQagtIuCe22ydVxGRjQF5rbCyT+BDPXsR/uVz8Av9WCCIB5O68Lohzk
	zVwRRpP6irkvMaM5tBS0GS0tsik8fX0GZlxO+oEQMrcONIlFbTihiKY6Yl2+hPt8wUJhJMhFFiP8S
	7VQ/72+DpD8kZ34c=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 12/13] x86: switch to use domheap page for page tables
Date: Wed, 21 Apr 2021 15:15:40 +0100
Message-Id: <8c71fb3f40942030ceb101fba9b1a848686069e3.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Hongyan Xia <hongyxia@amazon.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
Changed in v8:
- const qualify pg in alloc_xen_pagetable_new().
---
 xen/arch/x86/mm.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index bf86ba3729aa..604f83c3837e 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -4901,10 +4901,10 @@ mfn_t alloc_xen_pagetable_new(void)
 {
     if ( system_state != SYS_STATE_early_boot )
     {
-        void *ptr = alloc_xenheap_page();
+        const struct page_info *pg = alloc_domheap_page(NULL, 0);
 
-        BUG_ON(!hardware_domain && !ptr);
-        return ptr ? virt_to_mfn(ptr) : INVALID_MFN;
+        BUG_ON(!hardware_domain && !pg);
+        return pg ? page_to_mfn(pg) : INVALID_MFN;
     }
 
     return alloc_boot_pages(1, 1);
@@ -4914,7 +4914,7 @@ mfn_t alloc_xen_pagetable_new(void)
 void free_xen_pagetable_new(mfn_t mfn)
 {
     if ( system_state != SYS_STATE_early_boot && !mfn_eq(mfn, INVALID_MFN) )
-        free_xenheap_page(mfn_to_virt(mfn_x(mfn)));
+        free_domheap_page(mfn_to_page(mfn));
 }
 
 void *alloc_mapped_pagetable(mfn_t *pmfn)
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:36:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:36:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114739.218713 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDxn-0004xp-C7; Wed, 21 Apr 2021 14:36:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114739.218713; Wed, 21 Apr 2021 14: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 1lZDxn-0004xc-14; Wed, 21 Apr 2021 14:36:23 +0000
Received: by outflank-mailman (input) for mailman id 114739;
 Wed, 21 Apr 2021 14:36:21 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDxl-0004wM-3L
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:36:21 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDxk-0001QT-Oz; Wed, 21 Apr 2021 14:36:20 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDeC-00045m-Pg; Wed, 21 Apr 2021 14:16:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=BZ5P7bdDeDjJxLx3W7/LuN05q0NJBaBDMv0rirzWg8Q=; b=l
	oHU+3s/3SgK7e4ZTv+KriClHfxqTmGV5trfX1Fmj3t5QwA0qiJw52j4yZ/TcifKEuGnj1zMeRzCRW
	9oiJ0F3NIFI0man0SmB3h+gDakIlhyV8dfNpbpSDKJxKS31oP72hO4pn95gK2LFa7dy6meGK+FgEZ
	Aj4tEmeawliZ8Hm8=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 11/13] x86/mm: drop old page table APIs
Date: Wed, 21 Apr 2021 15:15:39 +0100
Message-Id: <d19ec79bb08cd46e92914d9eee51cd5717c01fcf.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Hongyan Xia <hongyxia@amazon.com>

Two sets of old APIs, alloc/free_xen_pagetable() and lXe_to_lYe(), are
now dropped to avoid the dependency on direct map.

There are two special cases which still have not been re-written into
the new APIs, thus need special treatment:

rpt in smpboot.c cannot use ephemeral mappings yet. The problem is that
rpt is read and written in context switch code, but the mapping
infrastructure is NOT context-switch-safe, meaning we cannot map rpt in
one domain and unmap in another. Before the mapping infrastructure
supports context switches, rpt has to be globally mapped.

Also, lXe_to_lYe() during Xen image relocation cannot be converted into
map/unmap pairs. We cannot hold on to mappings while the mapping
infrastructure is being relocated! It is enough to remove the direct map
in the second e820 pass, so we still use the direct map (<4GiB) in Xen
relocation (which is during the first e820 pass).

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/x86/mm.c          | 14 --------------
 xen/arch/x86/setup.c       |  4 ++--
 xen/arch/x86/smpboot.c     |  4 ++--
 xen/include/asm-x86/mm.h   |  2 --
 xen/include/asm-x86/page.h |  5 -----
 5 files changed, 4 insertions(+), 25 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 832e654294b4..bf86ba3729aa 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -4891,20 +4891,6 @@ int mmcfg_intercept_write(
     return X86EMUL_OKAY;
 }
 
-void *alloc_xen_pagetable(void)
-{
-    mfn_t mfn = alloc_xen_pagetable_new();
-
-    return mfn_eq(mfn, INVALID_MFN) ? NULL : mfn_to_virt(mfn_x(mfn));
-}
-
-void free_xen_pagetable(void *v)
-{
-    mfn_t mfn = v ? virt_to_mfn(v) : INVALID_MFN;
-
-    free_xen_pagetable_new(mfn);
-}
-
 /*
  * For these PTE APIs, the caller must follow the alloc-map-unmap-free
  * lifecycle, which means explicitly mapping the PTE pages before accessing
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index a6658d976937..f2dff2ae6a64 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -1247,7 +1247,7 @@ void __init noreturn __start_xen(unsigned long mbi_p)
                     continue;
                 *pl4e = l4e_from_intpte(l4e_get_intpte(*pl4e) +
                                         xen_phys_start);
-                pl3e = l4e_to_l3e(*pl4e);
+                pl3e = __va(l4e_get_paddr(*pl4e));
                 for ( j = 0; j < L3_PAGETABLE_ENTRIES; j++, pl3e++ )
                 {
                     /* Not present, 1GB mapping, or already relocated? */
@@ -1257,7 +1257,7 @@ void __init noreturn __start_xen(unsigned long mbi_p)
                         continue;
                     *pl3e = l3e_from_intpte(l3e_get_intpte(*pl3e) +
                                             xen_phys_start);
-                    pl2e = l3e_to_l2e(*pl3e);
+                    pl2e = __va(l3e_get_paddr(*pl3e));
                     for ( k = 0; k < L2_PAGETABLE_ENTRIES; k++, pl2e++ )
                     {
                         /* Not present, PSE, or already relocated? */
diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index 765cf3396051..ad878d8aebca 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -830,7 +830,7 @@ static int setup_cpu_root_pgt(unsigned int cpu)
     if ( !opt_xpti_hwdom && !opt_xpti_domu )
         return 0;
 
-    rpt = alloc_xen_pagetable();
+    rpt = alloc_xenheap_page();
     if ( !rpt )
         return -ENOMEM;
 
@@ -933,7 +933,7 @@ static void cleanup_cpu_root_pgt(unsigned int cpu)
         free_xen_pagetable_new(l3mfn);
     }
 
-    free_xen_pagetable(rpt);
+    free_xenheap_page(rpt);
 
     /* Also zap the stub mapping for this CPU. */
     if ( stub_linear )
diff --git a/xen/include/asm-x86/mm.h b/xen/include/asm-x86/mm.h
index 111754675cbf..0a72fa7a26c3 100644
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -573,8 +573,6 @@ int vcpu_destroy_pagetables(struct vcpu *);
 void *do_page_walk(struct vcpu *v, unsigned long addr);
 
 /* Allocator functions for Xen pagetables. */
-void *alloc_xen_pagetable(void);
-void free_xen_pagetable(void *v);
 mfn_t alloc_xen_pagetable_new(void);
 void free_xen_pagetable_new(mfn_t mfn);
 void *alloc_mapped_pagetable(mfn_t *pmfn);
diff --git a/xen/include/asm-x86/page.h b/xen/include/asm-x86/page.h
index 4c7f2cb70c69..1d080cffbe84 100644
--- a/xen/include/asm-x86/page.h
+++ b/xen/include/asm-x86/page.h
@@ -180,11 +180,6 @@ static inline l4_pgentry_t l4e_from_paddr(paddr_t pa, unsigned int flags)
 #define l4e_has_changed(x,y,flags) \
     ( !!(((x).l4 ^ (y).l4) & ((PADDR_MASK&PAGE_MASK)|put_pte_flags(flags))) )
 
-/* Pagetable walking. */
-#define l2e_to_l1e(x)              ((l1_pgentry_t *)__va(l2e_get_paddr(x)))
-#define l3e_to_l2e(x)              ((l2_pgentry_t *)__va(l3e_get_paddr(x)))
-#define l4e_to_l3e(x)              ((l3_pgentry_t *)__va(l4e_get_paddr(x)))
-
 #define map_l1t_from_l2e(x)        (l1_pgentry_t *)map_domain_page(l2e_get_mfn(x))
 #define map_l2t_from_l3e(x)        (l2_pgentry_t *)map_domain_page(l3e_get_mfn(x))
 #define map_l3t_from_l4e(x)        (l3_pgentry_t *)map_domain_page(l4e_get_mfn(x))
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:36:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:36:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114738.218702 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDxm-0004x8-Tp; Wed, 21 Apr 2021 14:36:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114738.218702; Wed, 21 Apr 2021 14: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 1lZDxm-0004wx-NM; Wed, 21 Apr 2021 14:36:22 +0000
Received: by outflank-mailman (input) for mailman id 114738;
 Wed, 21 Apr 2021 14:36:21 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZDxl-0004wE-0j
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:36:21 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDxk-0001QV-RP; Wed, 21 Apr 2021 14:36:20 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZDeF-00045m-V0; Wed, 21 Apr 2021 14:16: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=References:In-Reply-To:References:In-Reply-To:Message-Id:
	Date:Subject:Cc:To:From; bh=SJCh26GgdFA/kv16v156akfhVn9AnfwpsP4zDNephzc=; b=I
	zLSbH1V3vOrQ1wMcL8aShhbD0qs4nMAr6Wg954ZBAW7WRoGB6j+WZxjU2XfFG4DXIJhAeyzxtxCGy
	IfvZ2lFRiqN7mvJxBXwJvz2jt1iDfsVSytDlzxLHc3ljN7ZG6n0eRjsf9vkdm6wZpiqMmlZy4b2Ws
	JnSOq9ajVYLvDbrg=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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 v10 13/13] x86/mm: drop _new suffix for page table APIs
Date: Wed, 21 Apr 2021 15:15:41 +0100
Message-Id: <be0a6471a2932e7157fd088d70a2140e551af4aa.1619014052.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>

From: Wei Liu <wei.liu2@citrix.com>

No functional change.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/x86/mm.c        | 44 ++++++++++++++++++++--------------------
 xen/arch/x86/smpboot.c   |  6 +++---
 xen/arch/x86/x86_64/mm.c |  2 +-
 xen/include/asm-x86/mm.h |  4 ++--
 4 files changed, 28 insertions(+), 28 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 604f83c3837e..709686701388 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -369,7 +369,7 @@ void __init arch_init_memory(void)
             ASSERT(root_pgt_pv_xen_slots < ROOT_PAGETABLE_PV_XEN_SLOTS);
             if ( l4_table_offset(split_va) == l4_table_offset(split_va - 1) )
             {
-                mfn_t l3mfn = alloc_xen_pagetable_new();
+                mfn_t l3mfn = alloc_xen_pagetable();
 
                 if ( !mfn_eq(l3mfn, INVALID_MFN) )
                 {
@@ -4897,7 +4897,7 @@ int mmcfg_intercept_write(
  * them. The caller must check whether the allocation has succeeded, and only
  * pass valid MFNs to map_domain_page().
  */
-mfn_t alloc_xen_pagetable_new(void)
+mfn_t alloc_xen_pagetable(void)
 {
     if ( system_state != SYS_STATE_early_boot )
     {
@@ -4911,7 +4911,7 @@ mfn_t alloc_xen_pagetable_new(void)
 }
 
 /* mfn can be INVALID_MFN */
-void free_xen_pagetable_new(mfn_t mfn)
+void free_xen_pagetable(mfn_t mfn)
 {
     if ( system_state != SYS_STATE_early_boot && !mfn_eq(mfn, INVALID_MFN) )
         free_domheap_page(mfn_to_page(mfn));
@@ -4919,7 +4919,7 @@ void free_xen_pagetable_new(mfn_t mfn)
 
 void *alloc_mapped_pagetable(mfn_t *pmfn)
 {
-    mfn_t mfn = alloc_xen_pagetable_new();
+    mfn_t mfn = alloc_xen_pagetable();
     void *ret;
 
     if ( mfn_eq(mfn, INVALID_MFN) )
@@ -4965,7 +4965,7 @@ static l3_pgentry_t *virt_to_xen_l3e(unsigned long v)
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        free_xen_pagetable_new(l3mfn);
+        free_xen_pagetable(l3mfn);
     }
 
     return map_l3t_from_l4e(*pl4e) + l3_table_offset(v);
@@ -5000,7 +5000,7 @@ static l2_pgentry_t *virt_to_xen_l2e(unsigned long v)
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        free_xen_pagetable_new(l2mfn);
+        free_xen_pagetable(l2mfn);
     }
 
     BUG_ON(l3e_get_flags(*pl3e) & _PAGE_PSE);
@@ -5039,7 +5039,7 @@ l1_pgentry_t *virt_to_xen_l1e(unsigned long v)
         }
         if ( locking )
             spin_unlock(&map_pgdir_lock);
-        free_xen_pagetable_new(l1mfn);
+        free_xen_pagetable(l1mfn);
     }
 
     BUG_ON(l2e_get_flags(*pl2e) & _PAGE_PSE);
@@ -5226,10 +5226,10 @@ int map_pages_to_xen(
                         ol2e = l2t[i];
                         if ( (l2e_get_flags(ol2e) & _PAGE_PRESENT) &&
                              !(l2e_get_flags(ol2e) & _PAGE_PSE) )
-                            free_xen_pagetable_new(l2e_get_mfn(ol2e));
+                            free_xen_pagetable(l2e_get_mfn(ol2e));
                     }
                     unmap_domain_page(l2t);
-                    free_xen_pagetable_new(l3e_get_mfn(ol3e));
+                    free_xen_pagetable(l3e_get_mfn(ol3e));
                 }
             }
 
@@ -5268,7 +5268,7 @@ int map_pages_to_xen(
                 continue;
             }
 
-            l2mfn = alloc_xen_pagetable_new();
+            l2mfn = alloc_xen_pagetable();
             if ( mfn_eq(l2mfn, INVALID_MFN) )
                 goto out;
 
@@ -5296,7 +5296,7 @@ int map_pages_to_xen(
                 spin_unlock(&map_pgdir_lock);
             flush_area(virt, flush_flags);
 
-            free_xen_pagetable_new(l2mfn);
+            free_xen_pagetable(l2mfn);
         }
 
         pl2e = virt_to_xen_l2e(virt);
@@ -5330,7 +5330,7 @@ int map_pages_to_xen(
                         flush_flags(l1e_get_flags(l1t[i]));
                     flush_area(virt, flush_flags);
                     unmap_domain_page(l1t);
-                    free_xen_pagetable_new(l2e_get_mfn(ol2e));
+                    free_xen_pagetable(l2e_get_mfn(ol2e));
                 }
             }
 
@@ -5374,7 +5374,7 @@ int map_pages_to_xen(
                     goto check_l3;
                 }
 
-                l1mfn = alloc_xen_pagetable_new();
+                l1mfn = alloc_xen_pagetable();
                 if ( mfn_eq(l1mfn, INVALID_MFN) )
                     goto out;
 
@@ -5401,7 +5401,7 @@ int map_pages_to_xen(
                     spin_unlock(&map_pgdir_lock);
                 flush_area(virt, flush_flags);
 
-                free_xen_pagetable_new(l1mfn);
+                free_xen_pagetable(l1mfn);
             }
 
             if ( !pl1e )
@@ -5468,7 +5468,7 @@ int map_pages_to_xen(
                     flush_area(virt - PAGE_SIZE,
                                FLUSH_TLB_GLOBAL |
                                FLUSH_ORDER(PAGETABLE_ORDER));
-                    free_xen_pagetable_new(l2e_get_mfn(ol2e));
+                    free_xen_pagetable(l2e_get_mfn(ol2e));
                 }
                 else if ( locking )
                     spin_unlock(&map_pgdir_lock);
@@ -5519,7 +5519,7 @@ int map_pages_to_xen(
                 flush_area(virt - PAGE_SIZE,
                            FLUSH_TLB_GLOBAL |
                            FLUSH_ORDER(2*PAGETABLE_ORDER));
-                free_xen_pagetable_new(l3e_get_mfn(ol3e));
+                free_xen_pagetable(l3e_get_mfn(ol3e));
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
@@ -5619,7 +5619,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             }
 
             /* PAGE1GB: shatter the superpage and fall through. */
-            l2mfn = alloc_xen_pagetable_new();
+            l2mfn = alloc_xen_pagetable();
             if ( mfn_eq(l2mfn, INVALID_MFN) )
                 goto out;
 
@@ -5643,7 +5643,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             if ( locking )
                 spin_unlock(&map_pgdir_lock);
 
-            free_xen_pagetable_new(l2mfn);
+            free_xen_pagetable(l2mfn);
         }
 
         /*
@@ -5679,7 +5679,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
             {
                 l1_pgentry_t *l1t;
                 /* PSE: shatter the superpage and try again. */
-                mfn_t l1mfn = alloc_xen_pagetable_new();
+                mfn_t l1mfn = alloc_xen_pagetable();
 
                 if ( mfn_eq(l1mfn, INVALID_MFN) )
                     goto out;
@@ -5703,7 +5703,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
 
-                free_xen_pagetable_new(l1mfn);
+                free_xen_pagetable(l1mfn);
             }
         }
         else
@@ -5770,7 +5770,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(NULL, FLUSH_TLB_GLOBAL); /* flush before free */
-                free_xen_pagetable_new(l1mfn);
+                free_xen_pagetable(l1mfn);
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
@@ -5815,7 +5815,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
                 if ( locking )
                     spin_unlock(&map_pgdir_lock);
                 flush_area(NULL, FLUSH_TLB_GLOBAL); /* flush before free */
-                free_xen_pagetable_new(l2mfn);
+                free_xen_pagetable(l2mfn);
             }
             else if ( locking )
                 spin_unlock(&map_pgdir_lock);
diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index ad878d8aebca..0dce1ae87210 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -922,15 +922,15 @@ static void cleanup_cpu_root_pgt(unsigned int cpu)
                     continue;
 
                 ASSERT(!(l2e_get_flags(l2t[i2]) & _PAGE_PSE));
-                free_xen_pagetable_new(l2e_get_mfn(l2t[i2]));
+                free_xen_pagetable(l2e_get_mfn(l2t[i2]));
             }
 
             unmap_domain_page(l2t);
-            free_xen_pagetable_new(l2mfn);
+            free_xen_pagetable(l2mfn);
         }
 
         unmap_domain_page(l3t);
-        free_xen_pagetable_new(l3mfn);
+        free_xen_pagetable(l3mfn);
     }
 
     free_xenheap_page(rpt);
diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index c625075695e0..c41ce847b36e 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -640,7 +640,7 @@ void __init paging_init(void)
     /* Create user-accessible L2 directory to map the MPT for compat guests. */
     if ( opt_pv32 )
     {
-        mfn = alloc_xen_pagetable_new();
+        mfn = alloc_xen_pagetable();
         if ( mfn_eq(mfn, INVALID_MFN) )
             goto nomem;
         compat_idle_pg_table_l2 = map_domain_page_global(mfn);
diff --git a/xen/include/asm-x86/mm.h b/xen/include/asm-x86/mm.h
index 0a72fa7a26c3..56d7a71a24a4 100644
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -573,8 +573,8 @@ int vcpu_destroy_pagetables(struct vcpu *);
 void *do_page_walk(struct vcpu *v, unsigned long addr);
 
 /* Allocator functions for Xen pagetables. */
-mfn_t alloc_xen_pagetable_new(void);
-void free_xen_pagetable_new(mfn_t mfn);
+mfn_t alloc_xen_pagetable(void);
+void free_xen_pagetable(mfn_t mfn);
 void *alloc_mapped_pagetable(mfn_t *pmfn);
 
 l1_pgentry_t *virt_to_xen_l1e(unsigned long v);
-- 
2.23.4



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:36:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:36:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114741.218743 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDxr-00054r-9J; Wed, 21 Apr 2021 14:36:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114741.218743; Wed, 21 Apr 2021 14:36:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDxr-00054e-2V; Wed, 21 Apr 2021 14:36:27 +0000
Received: by outflank-mailman (input) for mailman id 114741;
 Wed, 21 Apr 2021 14:36:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZDxq-00053X-8d
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:36:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 36d0f737-1dc0-45d9-ba99-c2510c95641b;
 Wed, 21 Apr 2021 14:36:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4C29BAF65;
 Wed, 21 Apr 2021 14:36: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: 36d0f737-1dc0-45d9-ba99-c2510c95641b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619015784; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=KI3pOg4xxBAkeYRJhSPaXz+5rMBvt81g2cX5nokP3Bg=;
	b=bd7bQaK+qdHw9UBTJpFyBctDPnKpImTLE0GmymXOP9hI9PHrwSxWyl6xrHJht9E8GHAVyr
	D91xrd8WCIYVFFB+2gg0KRYtXtDsJtGesx+IYEvT0ZoFtKDgPZ38jU6NjAPgYJ80dhx048
	X/ccwjLgg7jX+IBl+/+QcuzplXXXLUg=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v3] evtchn/fifo: don't enforce higher than necessary alignment
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <George.Dunlap@eu.citrix.com>,
 Ian Jackson <ian.jackson@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
References: <2a08aa31-fdbf-89ee-cd49-813f818b709a@suse.com>
Message-ID: <e6ce03a5-cfec-42ea-91c4-b51849e2f299@suse.com>
Date: Wed, 21 Apr 2021 16:36:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <2a08aa31-fdbf-89ee-cd49-813f818b709a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Neither the code nor the original commit provide any justification for
the need to 8-byte align the struct in all cases. Enforce just as much
alignment as the structure actually needs - 4 bytes - by using alignof()
instead of a literal number.

While relaxation of the requirements is intended here, the primary goal
is to simply get rid of the hard coded number as well its lack of
connection to the structure that is is meant to apply to.

Take the opportunity and also
- add so far missing validation that native and compat mode layouts of
  the structures actually match,
- tie sizeof() expressions to the types of the fields we're actually
  after, rather than specifying the type explicitly (which in the
  general case risks a disconnect, even if there's close to zero risk in
  this particular case),
- use ENXIO instead of EINVAL for the two cases of the address not
  satisfying the requirements, which will make an issue here better
  stand out at the call site.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: Adjust version in public header comment.
v2: Add comment to public header. Re-base.
---
I question the need for the array_index_nospec() here. Or else I'd
expect map_vcpu_info() would also need the same.

--- a/xen/common/event_fifo.c
+++ b/xen/common/event_fifo.c
@@ -567,6 +567,16 @@ static void setup_ports(struct domain *d
     }
 }
 
+#ifdef CONFIG_COMPAT
+
+#include <compat/event_channel.h>
+
+#define xen_evtchn_fifo_control_block evtchn_fifo_control_block
+CHECK_evtchn_fifo_control_block;
+#undef xen_evtchn_fifo_control_block
+
+#endif
+
 int evtchn_fifo_init_control(struct evtchn_init_control *init_control)
 {
     struct domain *d = current->domain;
@@ -586,19 +596,20 @@ int evtchn_fifo_init_control(struct evtc
         return -ENOENT;
 
     /* Must not cross page boundary. */
-    if ( offset > (PAGE_SIZE - sizeof(evtchn_fifo_control_block_t)) )
-        return -EINVAL;
+    if ( offset > (PAGE_SIZE - sizeof(*v->evtchn_fifo->control_block)) )
+        return -ENXIO;
 
     /*
      * Make sure the guest controlled value offset is bounded even during
      * speculative execution.
      */
     offset = array_index_nospec(offset,
-                           PAGE_SIZE - sizeof(evtchn_fifo_control_block_t) + 1);
+                                PAGE_SIZE -
+                                sizeof(*v->evtchn_fifo->control_block) + 1);
 
-    /* Must be 8-bytes aligned. */
-    if ( offset & (8 - 1) )
-        return -EINVAL;
+    /* Must be suitably aligned. */
+    if ( offset & (alignof(*v->evtchn_fifo->control_block) - 1) )
+        return -ENXIO;
 
     spin_lock(&d->event_lock);
 
--- a/xen/include/public/event_channel.h
+++ b/xen/include/public/event_channel.h
@@ -368,6 +368,11 @@ typedef uint32_t event_word_t;
 
 #define EVTCHN_FIFO_NR_CHANNELS (1 << EVTCHN_FIFO_LINK_BITS)
 
+/*
+ * While this structure only requires 4-byte alignment, Xen versions 4.15 and
+ * earlier reject offset values (in struct evtchn_init_control) that aren't a
+ * multiple of 8.
+ */
 struct evtchn_fifo_control_block {
     uint32_t ready;
     uint32_t _rsvd;
--- a/xen/include/xlat.lst
+++ b/xen/include/xlat.lst
@@ -67,6 +67,7 @@
 ?	evtchn_bind_virq		event_channel.h
 ?	evtchn_close			event_channel.h
 ?	evtchn_expand_array		event_channel.h
+?	evtchn_fifo_control_block	event_channel.h
 ?	evtchn_init_control		event_channel.h
 ?	evtchn_op			event_channel.h
 ?	evtchn_reset			event_channel.h


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:37:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:37:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114766.218755 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZDzC-0005dM-P9; Wed, 21 Apr 2021 14:37:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114766.218755; Wed, 21 Apr 2021 14: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 1lZDzC-0005dF-LI; Wed, 21 Apr 2021 14:37:50 +0000
Received: by outflank-mailman (input) for mailman id 114766;
 Wed, 21 Apr 2021 14:37: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 1lZDzB-0005d7-3O; Wed, 21 Apr 2021 14:37: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 1lZDzA-0001Tk-UN; Wed, 21 Apr 2021 14:37: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 1lZDzA-0004qB-MZ; Wed, 21 Apr 2021 14:37:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZDzA-0003Ra-M8; Wed, 21 Apr 2021 14:37: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=xbgvd9mevhIcUKajIqXbiKdkFSR8tErRCKMzgWiqKdM=; b=jEXtSwtB1uizZz4ZJdkD3rsocV
	GKTY3jTy3mfOqx355kjEn+zofWEMlBcvGZG8/ef9HrjwRhcvzmoSyf7qYX9t9sMI3ENJJViPg7OOC
	2dFzntgnXH7a/3JJQA2CduMCvcD0QOBz9hz/iE1aQyzWZzh8kRRxLZ/9kAvebPHch6DE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161326-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161326: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=d3b0d007a135284981fa750612a47234b83976f9
X-Osstest-Versions-That:
    ovmf=0bbc20727598421c4e47d46b982246217df8c6bc
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 14:37:48 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 d3b0d007a135284981fa750612a47234b83976f9
baseline version:
 ovmf                 0bbc20727598421c4e47d46b982246217df8c6bc

Last test of basis   161312  2021-04-20 04:56:06 Z    1 days
Testing same since   161326  2021-04-20 12:41:12 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Shi, Steven <steven.shi@intel.com>
  Steven Shi <steven.shi@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
   0bbc207275..d3b0d007a1  d3b0d007a135284981fa750612a47234b83976f9 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:55:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:55:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114777.218770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEFd-0007Vj-8t; Wed, 21 Apr 2021 14:54:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114777.218770; Wed, 21 Apr 2021 14: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 1lZEFd-0007Vc-5j; Wed, 21 Apr 2021 14:54:49 +0000
Received: by outflank-mailman (input) for mailman id 114777;
 Wed, 21 Apr 2021 14:54:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEFb-0007VQ-W3
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:54:48 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 92f763f3-70eb-41cb-8f21-9180ffba85e1;
 Wed, 21 Apr 2021 14:54:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D8318AD8A;
 Wed, 21 Apr 2021 14:54: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: 92f763f3-70eb-41cb-8f21-9180ffba85e1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619016886; 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=baVbHeaFpUHOoNNbdk+uVfa5XQKMT3TNCD4TV0hYMkc=;
	b=m2OioZfDKHsX3nrdfqUjFtDwlQnn20Et7qSeEz+Zzysk6UsW1bHGbmav56msdc993oQSsz
	tfGU59WlWDubHANeEr5g0oMyN8XY3n+QmhZ9pVThHZ6wkuSo18rnPOeU7ZFJRaG0emE+KW
	rQsD3ApceeS6eCJT/apjqfW+TZQY+50=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 0/8] assorted replacement of x[mz]alloc_bytes()
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 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>
Message-ID: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Date: Wed, 21 Apr 2021 16:54:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

In the long run I think we want to do away with these type-unsafe
interfaces, the more that they also request (typically) excess
alignment. This series of entirely independent patches is
eliminating the instances where it's relatively clear that they're
not just "blob" allocations.

v2 only has commit messages extended.

1: x86/MCE: avoid effectively open-coding xmalloc_array()
2: x86/HVM: avoid effectively open-coding xmalloc_array()
3: x86/oprofile: avoid effectively open-coding xmalloc_array()
4: x86/IRQ: avoid over-alignment in alloc_pirq_struct()
5: EFI/runtime: avoid effectively open-coding xmalloc_array()
6: kexec: avoid effectively open-coding xzalloc_flex_struct()
7: video/lfb: avoid effectively open-coding xzalloc_array()
8: Arm/optee: don't open-code xzalloc_flex_struct()

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:55:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:55:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114778.218782 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEFr-0007cE-IC; Wed, 21 Apr 2021 14:55:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114778.218782; Wed, 21 Apr 2021 14: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 1lZEFr-0007c6-Eb; Wed, 21 Apr 2021 14:55:03 +0000
Received: by outflank-mailman (input) for mailman id 114778;
 Wed, 21 Apr 2021 14:55:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZEFq-0007bh-Al
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:55:02 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7c908195-cbc6-4b0f-a98d-b787c4c32f29;
 Wed, 21 Apr 2021 14:55: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: 7c908195-cbc6-4b0f-a98d-b787c4c32f29
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619016901;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=PY0GKFSjA9L+cGYqkIwoHd9UfQ8qO8YNBplCT8dXXPo=;
  b=NAmvMt92bQd03qP9wwRKOTLVHrpkiQM1FY8bksf39Kj+fp+jqCNGHhmE
   JgPs4vEWcxkdOiRyLGbKR/oNKOqsjdF5k7qVQRsBpcDEBRLs6E/rAKr+C
   O0kvsoe8PHafAO2M4Wtm6405OlixDGbFXn1SwKEfsXHnmLOYvHvMfgLM8
   8=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: AeydEXoJBAGZh21zVyxU3Rv0moHr7IFHkbJkG4YTwCWClrGQ3STc0qszw9P8Cqx3D2lq/FZfl0
 9aeIzTyBkjokFbMS7maBKBgXL4cM52ptUAmBWYISKM2fFNJ46B2rizCG1okUXBjpwYQt0KNeBR
 s6k9IPwfAlT/3sb6C67swbUmYVadzOmcJOvqTzixxe7kVPx3g4dHcfGGJNAQihtl9Zh78a2uWK
 DBQT/unmIN0TNJGqWG3/DNmsc80RhgeBfJlJpf5B3dhXsm26m++dSrrg0YLYqvG30FWPzimiHY
 iTg=
X-SBRS: 5.2
X-MesageID: 42474688
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:KxmjDqwaPW9wqxOttfu6KrPx9uskLtp033Aq2lEZdDV8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr385lp7Y4NeYqzRQWOghrMEKhOz6vHhwfhFSr36/JH2c
 5bGZRWJdXsATFB4vrSzxK/F78bruWv1ICNqaPgw2x2TQdsApsQjTtRLgqACEV5SE1nKPMCdK
 a03cZMqzq+dXl/VK3SakUtZOTfu8bN0KvvfB9uPXUawTOThjCl4qOSKWn64j4iVVp0oIsKwC
 z+vCHSoo6itPy6zRG07R6o071m3OHP5/EGKMiFis0+IijhhACydO1aKsC/lQFwms6DwhIHl8
 TNvgcBMq1Img/sV1DwmzTB8U3B1ysj8HDrw1PwuwqdneXJAAgUJuAEoKAxSGq812MQ+OtS/Y
 gO4kei871QNh/ElDSV3amxazha0nCajFBnrfQelBVkIOwjQY4Ul6Mz1mVPHqwNGSrrgbpXa9
 VGPYXn6PFafUjyVQG+gkBfhNilXnEEFhybWEQ1usuMzzhMnHxipnFovfAiog==
X-IronPort-AV: E=Sophos;i="5.82,240,1613451600"; 
   d="scan'208";a="42474688"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I9LbDr3xrTno+3qwT6gq0CXU/6KHNK5xItB2lzVXwdvCnxAa6f7aMAw1LxSTrcabiTI9QxPaXUHKa7fRYtragcdzKk8bcl4xrhicdnVQMqZo/T+r+rtYXCuvpYDsXIOOpI/qGtbOn08c4AWw/Gbg3qb9rijf6wIFoK0Fe1HF9SMu8QGMntgqMqQbUguztpCwXF8/X7JZ2/JizgmeEmAl1zWbMopItqBCTZCEDYzq5pFYFDU5xZEz2FArmghI1X6T7EAq8c7sxOnP2afGx50pGKS0oCmwavu+ka/g2AfO0zAJOdRFte4N4gXfWpgR6W79l6KZHjpFrGxFN2GujxBUuQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IG9p7eBBdYHGuNy1Kf6MRr5odbmVq1Fs2UrrHinblHQ=;
 b=OgfRJUqnUj2OE27FB3K/ZfROBxzBtx8xnB7fGVnYg4rTKb+cjg0s+GRsr9LstsVT1UYVpiYeJ3IvdW0A8PdQFNkA5AeZtNn/r9blaCQu4uJhzyWrguKMXKy5S13h3U/gpLxNqKJCX+6XWhMsMRXGnft7pB1EiUAIRSRl+MNUvkzj2CalWMrN2cjI52HU+7IgvaEKPWC6VhxzlfCriRlLlBKz4VAc9YBgekUkuYlEPcFAURyWsPDElxO8y00y6sV5tcBhDGQlpWXAhCfhCWg3Ud9E9zgpkeqzLCzycHo8qaQ8mkEGXRaPpXWzr4RmiExRCue98VxLBKqcynMsVPQrPA==
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=IG9p7eBBdYHGuNy1Kf6MRr5odbmVq1Fs2UrrHinblHQ=;
 b=FOf04HA3trObw5Tlofp3O13QCJBK1NahXg5vOMqcbkVp/Yo8cO3zSeaGM9eEC6pfJsLjo065o71pZTr6JFs6v8Qj13JeypdfjXLVxQhE+1GZc4oE6f9X4WatH67IXg4xGf7m1Qqw+HH4qhTP9TKQ1kKwapvwUrA9Lc/6vKpnsfA=
Date: Wed, 21 Apr 2021 16:54:50 +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/8] x86/EFI: redo .reloc section bounds determination
Message-ID: <YIA8unYer+LDXifJ@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <b886eb2c-cabc-f195-4996-aae1fc3c61d9@suse.com>
 <YH/0dzlPxwWF1PA2@Air-de-Roger>
 <dfcc9535-e9c0-97f1-4970-9a78af039c28@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <dfcc9535-e9c0-97f1-4970-9a78af039c28@suse.com>
X-ClientProxiedBy: MR1P264CA0027.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 48d15982-0c33-403d-d92d-08d904d56dbd
X-MS-TrafficTypeDiagnostic: DM4PR03MB5965:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB5965EFE2816DCAEADA66D26A8F479@DM4PR03MB5965.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /XlPQFW0T+w7BOyd1sB0GfT9eJX+t7osGAzjxIyb+F/jG7BACO3pcutVv80JQ37wMIDI+VPrRWhR+rFlrDtRNjjiKW99U+PxwPMj+VtWPQM4x8DrW9wPKTGssW8PqfsXFgm/nByCcQ3WUgfy9vwQAOdbTOxBZaqNjCnNt1Aa0BbCUtXgb7sDlhCUVoeX/XiNgG29Dk1+2rltjkdEqsU8uz6TD3UarL6vXjNnARVllzEMHGXTjV7sgOtKTH10v36S1z0vM51yDGN/31bzfg5Dn7N4EPtjwj6+s6vEu8dR/yLh7s0U6y1FH6FaIRBvZ1zioJTup11WTOt78tC746wSl1WBYsD70C6QUkkAXzivaEHp2luSZohns/T1uWxtozwGW3tXJi8cAgAAd1zbahd6JyHSGDT4HvYgaXoo8Qi/ISYPuJbptukpTGe6+iHO5B65RPaGWLlBvxXLDRVvFQnBO+FnnZELQH3DtTK64mk3reXAo9sjVN1Kx24goRlIE79Zvm5vsUnLjAYSy5UeHB7LJH6aGmNOfcViMS2JW1NT422uxhGbnwf5Xr9FiRwPHQWH6LF3k63HvCW1zw/ATAczIH13ETwwmYTb7P7LrotK7NUzTiz56Vzxy4m7vZsx9qgT6rDup2eBvquZVCLJzqZkKvad529zKfkY19clLEdJmbIlO6Eu63B5okC0BExI21Mx
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(39860400002)(366004)(346002)(376002)(396003)(136003)(186003)(26005)(85182001)(9686003)(6916009)(316002)(16526019)(2906002)(8676002)(8936002)(38100700002)(33716001)(66556008)(66946007)(66476007)(83380400001)(86362001)(6496006)(4326008)(54906003)(6666004)(956004)(6486002)(53546011)(5660300002)(478600001)(142923001)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?xEldkcbNHOxM2hGuk9HgW8KmXOC/BPruUEgiVen?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 48d15982-0c33-403d-d92d-08d904d56dbd
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 14:54:56.6335
 (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: lGCpcjThqnVy8H9HSMdllDj89TPYKO2fsSAw/fgiK19aHfy87BQQVy/+cQjHmCXqNBZ4HGnDWpbBjq1cFkoJHw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5965
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 12:44:13PM +0200, Jan Beulich wrote:
> On 21.04.2021 11:46, Roger Pau Monné wrote:
> > On Thu, Apr 01, 2021 at 11:45:38AM +0200, Jan Beulich wrote:
> >> There's no need to link relocs-dummy.o into the ELF binary. The two
> >> symbols needed can as well be provided by the linker script. Then our
> >> mkreloc tool also doesn't need to put them in the generated assembler
> >> source.
> > 
> > Maybe I'm just dense today, but I think the message needs to be
> > expanded a bit to mention that while the __base_relocs_{start,end} are
> > not used when loaded as an EFI application, they are used by the EFI
> > code in Xen when booted using the multiboot2 protocol for example, as
> > they are used by efi_arch_relocate_image.
> > 
> > I think relocation is not needed when natively loaded as an EFI
> > application, as then the load address matches the one expected by
> > Xen?
> 
> It's quite the other way around: The EFI loader applies relocations
> to put the binary at its loaded _physical_ address (the image gets
> linked for the final virtual address). Hence we need to apply the
> same relocations a 2nd time (undoing what the EFI loader did)
> before we can branch from the physical (identity mapped) address
> range where xen.efi was loaded to the intended virtual address
> range where we mean to run Xen from.
> 
> For the ELF binary the symbols are needed solely to make ld happy.
> 
> > I also wonder, at some point there where plans for providing a single
> > binary that would work as multiboot{1,2} and also be capable of being
> > loaded as an EFI application (ie: have a PE/COFF header also I assume
> > together with the ELF one), won't the changes here make it more
> > difficult to reach that goal or require reverting later on, as I feel
> > they are adding more differences between the PE binary and the ELF
> > one.
> 
> There were such plans, yes, but from the last round of that series
> I seem to recall that there was at least one issue breaking this
> idea. So no, at this point I'm not intending to take precautions to
> make that work easier (or not further complicate it). This said, I
> don't think the change here complicates anything there.
> 
> > The code LGTM, but I think at least I would like the commit message to
> > be expanded.
> 
> Well, once I know what exactly you're missing there, I can certainly
> try to expand it.

OK, I think I now have a clearer view, the commit message is likely
fine as it already mentions the ELF binary only needs the dummy
__base_relocs_{start,end}, hence it's the EFI binary the one that
requires the relocation symbols.

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:56:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:56:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114783.218794 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEGs-0007qo-So; Wed, 21 Apr 2021 14:56:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114783.218794; Wed, 21 Apr 2021 14:56: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 1lZEGs-0007qh-Pc; Wed, 21 Apr 2021 14:56:06 +0000
Received: by outflank-mailman (input) for mailman id 114783;
 Wed, 21 Apr 2021 14:56:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEGr-0007qX-K6
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:56:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a8511cc5-5931-4b24-a74b-bace21e8a439;
 Wed, 21 Apr 2021 14:56:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DB6ACB4D6;
 Wed, 21 Apr 2021 14:56: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: a8511cc5-5931-4b24-a74b-bace21e8a439
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619016964; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=dn8xizhAj6dt285tHoUKq6uKJm2JGhL8Ej0gFCwHguo=;
	b=MFnylNO45EvnvRMzxksM5Fj45ojdxak99ir226m0Ju+/3yvh6yz0UsCVdKEE6fcy3yRZ76
	/rJNBrC4FS+iqh2KstFVCIJ4jY8H4wsTijEUAp9XmnKJujciIV6ZeZxvWxzzGYAF/xdxqt
	HbhqV09TBt5LgFr+8NrCfib/zBiaePw=
Subject: [PATCH v2 1/8] x86/MCE: avoid effectively open-coding xmalloc_array()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Message-ID: <631d4b11-cfc5-c609-6169-28ba08aa978c@suse.com>
Date: Wed, 21 Apr 2021 16:56:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xmalloc_bytes() forces
SMP_CACHE_BYTES alignment. But if code really cared about such higher
than default alignment, it should request so explicitly rather than
using a type-unsafe interface. And if e.g. cache line sharing was a
concern, the allocator itself should arrange to avoid such.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/cpu/mcheck/mctelem.c
+++ b/xen/arch/x86/cpu/mcheck/mctelem.c
@@ -345,7 +345,7 @@ void __init mctelem_init(unsigned int da
 
 	if ((mctctl.mctc_elems = xmalloc_array(struct mctelem_ent,
 	    MC_NENT)) == NULL ||
-	    (datarr = xmalloc_bytes(MC_NENT * datasz)) == NULL) {
+	    (datarr = xmalloc_array(char, MC_NENT * datasz)) == NULL) {
 		xfree(mctctl.mctc_elems);
 		printk("Allocations for MCA telemetry failed\n");
 		return;



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:56:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:56:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114788.218809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEHN-0007yc-BH; Wed, 21 Apr 2021 14:56:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114788.218809; Wed, 21 Apr 2021 14: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 1lZEHN-0007yU-88; Wed, 21 Apr 2021 14:56:37 +0000
Received: by outflank-mailman (input) for mailman id 114788;
 Wed, 21 Apr 2021 14:56:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEHL-0007yG-92
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:56:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id eaf0465f-6f39-4fa3-85b3-2b310311ebfc;
 Wed, 21 Apr 2021 14:56:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 995EBAD8A;
 Wed, 21 Apr 2021 14:56: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: eaf0465f-6f39-4fa3-85b3-2b310311ebfc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619016993; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0hiOnsYBKJJyY/OKqVdi3PZ5qXRAtnLxQ2fMzsttxVs=;
	b=YkEJ7t+xIMGDyZM7Qp7QFZv3vodtNbLlNSZYSXvVpEYHO46U2S3Z6z4eDDf3OAjDnTbFV2
	F6aQxPtgPTvLPKJ6d2rBJhCT2TrgEws68wp5UerVuPqURgfDgiG3IW6+PXdn1y/12MlBkZ
	KYSrxY/mV1tKcV0Bj22ueyqCJ8IN3vA=
Subject: [PATCH v2 2/8] x86/HVM: avoid effectively open-coding xmalloc_array()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Paul Durrant <paul@xen.org>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Message-ID: <1c3d573d-051f-3d18-cd63-6ccad5911786@suse.com>
Date: Wed, 21 Apr 2021 16:56:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xmalloc_bytes() forces
SMP_CACHE_BYTES alignment. But if code really cared about such higher
than default alignment, it should request so explicitly rather than
using a type-unsafe interface. And if e.g. cache line sharing was a
concern, the allocator itself should arrange to avoid such.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/hvm/emulate.c
+++ b/xen/arch/x86/hvm/emulate.c
@@ -1924,7 +1924,7 @@ static int hvmemul_rep_movs(
         dgpa -= bytes - bytes_per_rep;
 
     /* Allocate temporary buffer. Fall back to slow emulation if this fails. */
-    buf = xmalloc_bytes(bytes);
+    buf = xmalloc_array(char, bytes);
     if ( buf == NULL )
         return X86EMUL_UNHANDLEABLE;
 
@@ -2037,7 +2037,7 @@ static int hvmemul_rep_stos(
         for ( ; ; )
         {
             bytes = *reps * bytes_per_rep;
-            buf = xmalloc_bytes(bytes);
+            buf = xmalloc_array(char, bytes);
             if ( buf || *reps <= 1 )
                 break;
             *reps >>= 1;



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:57:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:57:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114793.218821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEHr-00085f-M4; Wed, 21 Apr 2021 14:57:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114793.218821; Wed, 21 Apr 2021 14: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 1lZEHr-00085Y-Ie; Wed, 21 Apr 2021 14:57:07 +0000
Received: by outflank-mailman (input) for mailman id 114793;
 Wed, 21 Apr 2021 14:57:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEHq-00085T-Or
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:57:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a3adcfe3-4c17-47e2-9d9f-80c4a6a969d6;
 Wed, 21 Apr 2021 14:57:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 38E00B2E8;
 Wed, 21 Apr 2021 14:57: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: a3adcfe3-4c17-47e2-9d9f-80c4a6a969d6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619017025; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7k33TZjSiUsbN7zoExMERbIp8QvBpYbbwHsyd9tlzWs=;
	b=q62m4aOxX+wB5j9D8t4usjgr7KIKvIjEuq5NvNqiaFHPtt66/72eiimjnj/CCMUqqEu5cg
	94JZAoer9V0u0xTHI9kbF7AD6/PkZcv5SLEZP1q8IU/+ZYWzwEctQqBivgBC/4LD0JLGTv
	WuDguSwlqagj676qs4vl8Se+OICWBaQ=
Subject: [PATCH v2 3/8] x86/oprofile: avoid effectively open-coding
 xmalloc_array()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Message-ID: <b3e46e74-517a-f5b3-1ae3-8fcae49e42ca@suse.com>
Date: Wed, 21 Apr 2021 16:57:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xmalloc_bytes() forces
SMP_CACHE_BYTES alignment. But if code really cared about such higher
than default alignment, it should request so explicitly rather than
using a type-unsafe interface. And if e.g. cache line sharing was a
concern, the allocator itself should arrange to avoid such.

While at it also use XFREE() instead of open-coding it and change loop
induction variable types.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/oprofile/nmi_int.c
+++ b/xen/arch/x86/oprofile/nmi_int.c
@@ -142,30 +142,29 @@ static void nmi_save_registers(void * du
 
 static void free_msrs(void)
 {
-	int i;
+	unsigned int i;
+
 	for (i = 0; i < nr_cpu_ids; ++i) {
-		xfree(cpu_msrs[i].counters);
-		cpu_msrs[i].counters = NULL;
-		xfree(cpu_msrs[i].controls);
-		cpu_msrs[i].controls = NULL;
+		XFREE(cpu_msrs[i].counters);
+		XFREE(cpu_msrs[i].controls);
 	}
 }
 
 
 static int allocate_msrs(void)
 {
+	unsigned int i;
 	int success = 1;
-	size_t controls_size = sizeof(struct op_msr) * model->num_controls;
-	size_t counters_size = sizeof(struct op_msr) * model->num_counters;
 
-	int i;
 	for_each_online_cpu (i) {
-		cpu_msrs[i].counters = xmalloc_bytes(counters_size);
+		cpu_msrs[i].counters = xmalloc_array(struct op_msr,
+						     model->num_counters);
 		if (!cpu_msrs[i].counters) {
 			success = 0;
 			break;
 		}
-		cpu_msrs[i].controls = xmalloc_bytes(controls_size);
+		cpu_msrs[i].controls = xmalloc_array(struct op_msr,
+						     model->num_controls);
 		if (!cpu_msrs[i].controls) {
 			success = 0;
 			break;



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:57:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:57:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114796.218832 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEIG-0008Cg-Uy; Wed, 21 Apr 2021 14:57:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114796.218832; Wed, 21 Apr 2021 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 1lZEIG-0008CY-Rk; Wed, 21 Apr 2021 14:57:32 +0000
Received: by outflank-mailman (input) for mailman id 114796;
 Wed, 21 Apr 2021 14:57:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEIG-0008C3-2j
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:57:32 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4d6531b3-bb27-4ca8-b846-0279e2bc27c4;
 Wed, 21 Apr 2021 14:57:28 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 15918B2E8;
 Wed, 21 Apr 2021 14:57: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: 4d6531b3-bb27-4ca8-b846-0279e2bc27c4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619017048; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RGVbQa+GqVgOa2I76yheTEF5apAHeScJZb/syJB8fWc=;
	b=iCbgVqwxeyO8ueX3j8mD4gW5zxPGiIyrUDdwtYTpofx/l22VMOn7HAi8CArS2cP8VVHSXN
	xB0bdA86HaYqMjXByGH2jU7ZQMpcSZ0/jnRBc2PoisRihq18wEIHL/VEBSWswZmB7XEZhc
	zls4CFd5rPloiko0Z6H+waDyELBxx5w=
Subject: [PATCH v2 4/8] x86/IRQ: avoid over-alignment in alloc_pirq_struct()
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Message-ID: <8906088c-d76a-12ac-31d3-1375016a2148@suse.com>
Date: Wed, 21 Apr 2021 16:57:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

In particular in the PV case xzalloc_bytes() forcing SMP_CACHE_BYTES
alignment is counterproductive, as the allocation size there is only 40
bytes. And if the code really cared about such higher than default
alignment, it should request so explicitly rather than using a type-
unsafe interface. Plus if e.g. cache line sharing was a concern, the
allocator itself should arrange to avoid such.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -1313,9 +1313,12 @@ void cleanup_domain_irq_mapping(struct d
 
 struct pirq *alloc_pirq_struct(struct domain *d)
 {
-    size_t sz = is_hvm_domain(d) ? sizeof(struct pirq) :
-                                   offsetof(struct pirq, arch.hvm);
-    struct pirq *pirq = xzalloc_bytes(sz);
+    union pirq_pv {
+        char space[offsetof(struct pirq, arch.hvm)];
+        void *align;
+    };
+    struct pirq *pirq = is_hvm_domain(d) ? xzalloc(struct pirq)
+                                         : (void *)xzalloc(union pirq_pv);
 
     if ( pirq )
     {



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:58:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:58:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114799.218845 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEIw-0008Ju-7u; Wed, 21 Apr 2021 14:58:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114799.218845; Wed, 21 Apr 2021 14:58:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEIw-0008Jn-4G; Wed, 21 Apr 2021 14:58:14 +0000
Received: by outflank-mailman (input) for mailman id 114799;
 Wed, 21 Apr 2021 14:58:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEIv-0008Jg-8h
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:58:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fd55a24a-ca85-42bd-bf69-2fd0fdeb40ff;
 Wed, 21 Apr 2021 14:58:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 91783B4F5;
 Wed, 21 Apr 2021 14:58: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: fd55a24a-ca85-42bd-bf69-2fd0fdeb40ff
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619017091; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=PW+XxMcrclQ3Woj7YTyYCjraRWb4WLw8fXwPv9OBWoI=;
	b=C5iUJDEKmDytH3E/JE6ybsGGTSClh2t7iobc0KwmwvYv+5WL05v1VfGIUSQAMmz/6WqY9B
	uiXjCRaTDs+8sxk1K1Y9KBK+9lm3Iz2ezOGyOjR/0OTHEwcqz6br8qb8VyD6xI4If6Dlr3
	U/A1gnd2nudemy02NM7BHM6W0ArZmPM=
Subject: [PATCH v2 5/8] EFI/runtime: avoid effectively open-coding
 x{m,z}alloc_array()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Message-ID: <b4539118-929e-621e-17e2-68e6e2eaa47a@suse.com>
Date: Wed, 21 Apr 2021 16:58:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: x{m,z}alloc_bytes() forces
SMP_CACHE_BYTES alignment. But if code really cared about such higher
than default alignment, it should request so explicitly rather than
using a type-unsafe interface. And if e.g. cache line sharing was a
concern, the allocator itself should arrange to avoid such.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/common/efi/runtime.c
+++ b/xen/common/efi/runtime.c
@@ -486,7 +486,7 @@ int efi_runtime_call(struct xenpf_efi_ru
         size = op->u.get_variable.size;
         if ( size )
         {
-            data = xmalloc_bytes(size);
+            data = xmalloc_array(unsigned char, size);
             if ( !data )
             {
                 xfree(name);
@@ -536,7 +536,7 @@ int efi_runtime_call(struct xenpf_efi_ru
             return -EIO;
         }
 
-        data = xmalloc_bytes(op->u.set_variable.size);
+        data = xmalloc_array(unsigned char, op->u.set_variable.size);
         if ( !data )
             rc = -ENOMEM;
         else if ( copy_from_guest(data, op->u.set_variable.data,
@@ -571,7 +571,7 @@ int efi_runtime_call(struct xenpf_efi_ru
             return -EINVAL;
 
         size = op->u.get_next_variable_name.size;
-        name.raw = xzalloc_bytes(size);
+        name.raw = xzalloc_array(unsigned char, size);
         if ( !name.raw )
             return -ENOMEM;
         if ( copy_from_guest(name.raw, op->u.get_next_variable_name.name,



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:58:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:58:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114802.218857 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEJX-0008Rg-GL; Wed, 21 Apr 2021 14:58:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114802.218857; Wed, 21 Apr 2021 14: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 1lZEJX-0008RZ-DD; Wed, 21 Apr 2021 14:58:51 +0000
Received: by outflank-mailman (input) for mailman id 114802;
 Wed, 21 Apr 2021 14:58:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEJV-0008RJ-R6
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:58:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ec5dbab9-d98d-48be-ae11-d491971b14e5;
 Wed, 21 Apr 2021 14:58:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4E330B4D5;
 Wed, 21 Apr 2021 14:58: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: ec5dbab9-d98d-48be-ae11-d491971b14e5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619017128; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=TEBD/fYXGTJrgtLtgU6ekKg6T1yeMv6RYI14JcXg8j8=;
	b=c1iQM0N8Kr/7EMMA3fDMO/lAq3vlxDYh+Qu+6yeO5vSsNcW3uc5pvAUBgKtyuudjrWINRx
	9XEv1TLdeMKPxZeZCZD19wWaF0rINC3StebQxVMf3rY7UawdDIgHWZoBZHqSxeTFvEe5Yc
	FbDBohSc2bSuuFNvyT4cwW4HRj88EDw=
Subject: [PATCH v2 6/8] kexec: avoid effectively open-coding
 xzalloc_flex_struct()
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>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Message-ID: <7d6c30d8-c121-11f5-4ac9-49bad43a2a19@suse.com>
Date: Wed, 21 Apr 2021 16:58:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xzalloc_bytes() forces
SMP_CACHE_BYTES alignment. But if code really cared about such higher
than default alignment, it should request so explicitly rather than
using a type-unsafe interface. And if e.g. cache line sharing was a
concern, the allocator itself should arrange to avoid such.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/common/kexec.c
+++ b/xen/common/kexec.c
@@ -463,7 +463,10 @@ static void * alloc_from_crash_heap(cons
 /* Allocate a crash note buffer for a newly onlined cpu. */
 static int kexec_init_cpu_notes(const unsigned long cpu)
 {
-    Elf_Note * note = NULL;
+    struct elf_notes {
+        Elf_Note first;
+        unsigned char more[];
+    } *notes = NULL;
     int ret = 0;
     int nr_bytes = 0;
 
@@ -477,7 +480,8 @@ static int kexec_init_cpu_notes(const un
 
     /* If we dont care about the position of allocation, malloc. */
     if ( low_crashinfo_mode == LOW_CRASHINFO_NONE )
-        note = xzalloc_bytes(nr_bytes);
+        notes = xzalloc_flex_struct(struct elf_notes, more,
+                                    nr_bytes - sizeof(notes->first));
 
     /* Protect the write into crash_notes[] with a spinlock, as this function
      * is on a hotplug path and a hypercall path. */
@@ -490,26 +494,28 @@ static int kexec_init_cpu_notes(const un
         spin_unlock(&crash_notes_lock);
         /* Always return ok, because whether we successfully allocated or not,
          * another CPU has successfully allocated. */
-        xfree(note);
+        xfree(notes);
     }
     else
     {
         /* If we care about memory possition, alloc from the crash heap,
          * also protected by the crash_notes_lock. */
         if ( low_crashinfo_mode > LOW_CRASHINFO_NONE )
-            note = alloc_from_crash_heap(nr_bytes);
+            notes = alloc_from_crash_heap(nr_bytes);
 
-        crash_notes[cpu].start = note;
+        crash_notes[cpu].start = &notes->first;
         crash_notes[cpu].size = nr_bytes;
         spin_unlock(&crash_notes_lock);
 
         /* If the allocation failed, and another CPU did not beat us, give
          * up with ENOMEM. */
-        if ( ! note )
+        if ( ! notes )
             ret = -ENOMEM;
         /* else all is good so lets set up the notes. */
         else
         {
+            Elf_Note *note = &notes->first;
+
             /* Set up CORE note. */
             setup_note(note, "CORE", NT_PRSTATUS, sizeof(ELF_Prstatus));
             note = ELFNOTE_NEXT(note);



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 14:59:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 14:59:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114807.218869 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEK5-00007f-Pl; Wed, 21 Apr 2021 14:59:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114807.218869; Wed, 21 Apr 2021 14: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 1lZEK5-00007Y-Mj; Wed, 21 Apr 2021 14:59:25 +0000
Received: by outflank-mailman (input) for mailman id 114807;
 Wed, 21 Apr 2021 14:59:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEK4-00007P-2L
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 14:59:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id eb545c1f-b181-4c0d-8095-121634ccc030;
 Wed, 21 Apr 2021 14:59:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 96707B2E8;
 Wed, 21 Apr 2021 14:59: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: eb545c1f-b181-4c0d-8095-121634ccc030
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619017162; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nhFCzQarQALIvmpTT7NHPYBbPtP6KFRVyXEIq1mQnM0=;
	b=GhiK152G4eeoBnhZPFiTgN3IYWdzhp+HZSNtN1UyFJWY5l6C8SAUjYkEptpyyJ2dS5g7Uc
	LcXzQsB1yhXfBrT7CIwcOvepJKqoFbEQghzv7QF94iqB6axNI320hTjXexsPSdZHihUjeg
	eub1OGxUWCoWwRywXgpTSJ+G+CVWRV8=
Subject: [PATCH v2 7/8] video/lfb: avoid effectively open-coding
 xzalloc_array()
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Message-ID: <73db0f74-438e-d99f-35d7-76679df75e40@suse.com>
Date: Wed, 21 Apr 2021 16:59:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There is a difference in generated code: xzalloc_bytes() forces
SMP_CACHE_BYTES alignment. But if code really cared about such higher
than default alignment, it should request so explicitly rather than
using a type-unsafe interface. And if e.g. cache line sharing was a
concern, the allocator itself should arrange to avoid such.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/drivers/video/lfb.c
+++ b/xen/drivers/video/lfb.c
@@ -147,8 +147,9 @@ int __init lfb_init(struct lfb_prop *lfb
 {
     lfb.lfbp = *lfbp;
 
-    lfb.lbuf = xmalloc_bytes(lfb.lfbp.bytes_per_line);
-    lfb.text_buf = xzalloc_bytes(lfb.lfbp.text_columns * lfb.lfbp.text_rows);
+    lfb.lbuf = xmalloc_array(unsigned char, lfb.lfbp.bytes_per_line);
+    lfb.text_buf = xzalloc_array(unsigned char,
+                                 lfb.lfbp.text_columns * lfb.lfbp.text_rows);
     lfb.line_len = xzalloc_array(unsigned int, lfb.lfbp.text_columns);
 
     if ( !lfb.lbuf || !lfb.text_buf || !lfb.line_len )



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:00:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:00:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114812.218881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEKf-0000FJ-3Q; Wed, 21 Apr 2021 15:00:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114812.218881; Wed, 21 Apr 2021 15:00:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEKe-0000FC-W3; Wed, 21 Apr 2021 15:00:00 +0000
Received: by outflank-mailman (input) for mailman id 114812;
 Wed, 21 Apr 2021 15:00:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEKe-0000F4-ED
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:00:00 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 83f04db8-4b6e-4d95-a421-393bab35cd72;
 Wed, 21 Apr 2021 14:59:59 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DC8D2B4D6;
 Wed, 21 Apr 2021 14:59: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: 83f04db8-4b6e-4d95-a421-393bab35cd72
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619017199; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=pHhwX5kEIhnRT5ymp9VtnAWZvoeCZfwBmTwU5SVmNWE=;
	b=b+LZks+synfdec+zvPWSzh2ua/VRk7fxpTdmfsCVAE518Ko5xFyviQme1dI5d/B2v44Fv9
	m4F8/GhNNv8ZM99nt7gyFH9FUVF90cBDMRW3Zqr6tTr80TyqDZhEBngiwkopiKUvUu4W5Z
	c/JBIUeQyEw7Cr1b61W6UNOTpEkFZM4=
Subject: [PATCH v2 8/8] Arm/optee: don't open-code xzalloc_flex_struct()
From: Jan Beulich <jbeulich@suse.com>
To: "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>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Message-ID: <5fa042ac-9609-eab7-b14d-a59782ef4141@suse.com>
Date: Wed, 21 Apr 2021 16:59:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The current use of xzalloc_bytes() in optee is nearly an open-coded
version  of xzalloc_flex_struct(), which was introduced after the driver
was merged.

The main difference is xzalloc_bytes() will also force the allocation to
be SMP_CACHE_BYTES aligned and therefore avoid sharing the cache line.
While sharing the cache line can have an impact on the performance, this
is also true for most of the other users of x*alloc(), x*alloc_array(),
and x*alloc_flex_struct(). So if we want to prevent sharing cache lines,
arranging for this should be done in the allocator itself.

In this case, we don't need stricter alignment than what the allocator 
provides. Hence replace the call to xzalloc_bytes() with one of
xzalloc_flex_struct().

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Julien Grall <julien@xen.org>
---
v2: Use commit message very close to what was suggested by Julien.

--- a/xen/arch/arm/tee/optee.c
+++ b/xen/arch/arm/tee/optee.c
@@ -529,8 +529,7 @@ static struct optee_shm_buf *allocate_op
     while ( unlikely(old != atomic_cmpxchg(&ctx->optee_shm_buf_pages,
                                            old, new)) );
 
-    optee_shm_buf = xzalloc_bytes(sizeof(struct optee_shm_buf) +
-                                  pages_cnt * sizeof(struct page *));
+    optee_shm_buf = xzalloc_flex_struct(struct optee_shm_buf, pages, pages_cnt);
     if ( !optee_shm_buf )
     {
         err_code = -ENOMEM;



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:08:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:08:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114821.218896 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZESI-0001ND-V8; Wed, 21 Apr 2021 15:07:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114821.218896; Wed, 21 Apr 2021 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 1lZESI-0001N6-S0; Wed, 21 Apr 2021 15:07:54 +0000
Received: by outflank-mailman (input) for mailman id 114821;
 Wed, 21 Apr 2021 15:07:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=37lK=JS=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZESH-0001N1-Ly
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:07:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 901c7c27-1d11-4e8f-871b-4d69c2618202;
 Wed, 21 Apr 2021 15:07:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D560EAEF5;
 Wed, 21 Apr 2021 15:07: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: 901c7c27-1d11-4e8f-871b-4d69c2618202
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619017672; 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=YpMdVeVCNCX1He1dUQwoEAMXxKgxDq9zdRVkOUV2J1M=;
	b=ivxn883WkXhCdvHfpWOS4OiW279I8n85OPY2sqAg7XURYzpByVflilvjRlYrvTju7+kTxM
	Jm6Pl18Qh74WlX+8cSkENR/kCsYyBmXXZ60v7P7GmhQOCPQ4r8tsr+GAR5frTeZ9UuO8bO
	PEh6Tz3jO5e1VMkZ+ko8STtaarCiNV8=
Subject: Re: [PATCH] tools/xenstored: Wire properly the command line option
 -M/--path-max
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Julien Grall <jgrall@amazon.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>
References: <20210421140255.23437-1-julien@xen.org>
From: Juergen Gross <jgross@suse.com>
Message-ID: <673f6a7e-a63c-ca0c-054d-5c33682e901e@suse.com>
Date: Wed, 21 Apr 2021 17:07:50 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210421140255.23437-1-julien@xen.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="53Z6hEljQxI1ead5Ol01JpVYgvQIcnsuI"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--53Z6hEljQxI1ead5Ol01JpVYgvQIcnsuI
Content-Type: multipart/mixed; boundary="jT4g0422RRfpK5u54uloQz2pT5JQQ62sB";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Julien Grall <jgrall@amazon.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>
Message-ID: <673f6a7e-a63c-ca0c-054d-5c33682e901e@suse.com>
Subject: Re: [PATCH] tools/xenstored: Wire properly the command line option
 -M/--path-max
References: <20210421140255.23437-1-julien@xen.org>
In-Reply-To: <20210421140255.23437-1-julien@xen.org>

--jT4g0422RRfpK5u54uloQz2pT5JQQ62sB
Content-Type: multipart/mixed;
 boundary="------------A10B48DEE115A5E39439F11C"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------A10B48DEE115A5E39439F11C
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 21.04.21 16:02, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
>=20
> The command line option -M/--path-max was meant to be added by
> commit 924bf8c793cb "tools/xenstore: rework path length check" but this=

> wasn't wired through properly.
>=20
> Fix it by adding the missing "case 'M':".
>=20
> Fixes: 924bf8c793cb ("tools/xenstore: rework path length check")
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Reviewed-by: Juergen Gross <jgross@suse.com>

I wonder why no compiler cared about the obviously dead coding.


Juergen

--------------A10B48DEE115A5E39439F11C
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------A10B48DEE115A5E39439F11C--

--jT4g0422RRfpK5u54uloQz2pT5JQQ62sB--

--53Z6hEljQxI1ead5Ol01JpVYgvQIcnsuI
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCAP8YFAwAAAAAACgkQsN6d1ii/Ey9d
YAf7BBJ17rrkEmXb4Dw9hMGxc8N/RpLRIiI7QeGinGUbkRH3Au7FXcOJ35OyYyDylfUSgHwBn3c5
hx9n9bcH+66Y8oGZnVr5moG/FxUBesktYrxgnZC/uo48tawAmwjLSybM/iD4bqBuRdr+gFmM+zff
2/xwe26/ilemOeg1frH4eNQBGrwy7K5owhX0HTkxheCjAQu16Fpokjj2s6hP+GFsYFPMnRSZty5r
syBA5yrRaj4nMleUrqpm/SLQcMk91drTeCZhajW4+jSdySPP3J+qKpfDeW0rGspBfzzNir89yWG2
qY3JArEGlh2Csmn3B4ubhlKnuqLl5CS+elx0AblPXA==
=zFln
-----END PGP SIGNATURE-----

--53Z6hEljQxI1ead5Ol01JpVYgvQIcnsuI--


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:11:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:11:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114829.218908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEWD-0002FS-Jr; Wed, 21 Apr 2021 15:11:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114829.218908; Wed, 21 Apr 2021 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 1lZEWD-0002FL-GY; Wed, 21 Apr 2021 15:11:57 +0000
Received: by outflank-mailman (input) for mailman id 114829;
 Wed, 21 Apr 2021 15:11:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lZEWB-0002FG-W7
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:11:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZEWA-00026x-Q1; Wed, 21 Apr 2021 15:11:54 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZEWA-0000ag-Jx; Wed, 21 Apr 2021 15:11: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=B57esD0uaflGy6Sk6zufUTvvD/NMq5fDGYBPRHkkNJ0=; b=kTUMmkBkFgaWJWicDVXfA9Lt61
	JtMYmPelbiZIEGeVWuOwiWXSEI3dycs6zzxt5MJ5sPKWpX1C3dwhuCWD6s+3+HbHoNiDEUiLX8Iua
	xCZKUdjQFeqcl9YKc0MBUYpfKPdj54k92VLQwiJBLAVbb5UI9cZ/nb0aHuh1RqBj+o/E=;
Subject: Re: [PATCH 6/9] arm/page: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-7-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <1d74eeaa-5809-093a-d05a-159498a01e03@xen.org>
Date: Wed, 21 Apr 2021 16:11:52 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-7-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify accesses to CTR_EL0 to use READ/WRITE_SYSREG.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:21:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:21:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114833.218920 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEf4-0003Ig-EJ; Wed, 21 Apr 2021 15:21:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114833.218920; Wed, 21 Apr 2021 15:21: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 1lZEf4-0003IZ-9u; Wed, 21 Apr 2021 15:21:06 +0000
Received: by outflank-mailman (input) for mailman id 114833;
 Wed, 21 Apr 2021 15:21:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZEf2-0003IU-Dz
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:21:04 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4ba62af1-fb4e-468b-a5eb-b044a10417ed;
 Wed, 21 Apr 2021 15:21: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: 4ba62af1-fb4e-468b-a5eb-b044a10417ed
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619018463;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=vQXMXG0vz+VKlSEImM9pCwAG/MRBFzoUit988+J3aSo=;
  b=RTRuhcEnpupTq65p/Z2EskGM1K4CDGjZRh5UPATSNKOo0pT3X3Dmdnn/
   Mz7FkshWILDaY7i2l4TeEd2qfKbeiq6/kt6xNdccgCpoc67YVKeLj6Lcs
   cwzQHRAfGJ4Fs9rT5q5dASG0AEZBPqfDZSSbO+3EAdoer1NHRiYfHd3a4
   I=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: CeNDIFiZ0k8xynsqjzHhQZ5xaVVOUMMLnxKahszUHRgj7GDNfbppHOnrSHm2JX+VykC2UMVUZ9
 IHNZ8ooiyIx79+v8UBRw8wr5gm3kB1rgGBQTAFVrWuL88DPSU9dRblqkcuAflb6jxQ59qnSbuI
 2iwct1Vl0+gyNZwhEsfh1b9TCc6iTTVBzUR8G2oPheSgI52/ZbXlPEsPfVQCS+aQEaZYd8wX2P
 FdL1R0uF4q7GBC+BXY+1fko7dvtBRAN4uIpM1lc7z0rDn+gfju7OKdDdxotZAnI1Otda09RKOE
 rNw=
X-SBRS: 5.2
X-MesageID: 43587219
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:30HECqkPbtAYK0UpNMyQTgjjG7bpDfOcj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN/AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 tdWoBEIpnLAVB+5PyW3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0ZNi+wOCRNNW57LLA+E4
 eR4dcCijq7YHIMbtm6AH5tZZm4m/TgkpX6bRkaQyM94A6Vgj+yrJL8GR6U3hAROgk/vIsK22
 7DjgD/++Gfo+i2oyWsrFP7wrZ3vJ/aytVFDNGRkcR9EFvRoyuheYgJYczhgBkbu+eqgWxa9e
 XkgxBlBMhr7mOUQ2fdm2qQ5yDF8BIDr0Dv0kWZh3yLm72IeBsfB9BajYxUNjv1gnBQxe1U66
 5A02KHu5c/N3qp906clru4JS1CrUa6rWEvluQelRVkIPMjQYRcsJAF+wdtGIoAdRiKmbwPKv
 VkD83X+Z9tADWnRk3e11MfpOCEbzAYGxeLRVU6ocqF0zRat2AR9Tpn+OUv2lgH754zUJ9C+q
 DtNblpjqhHSossYbt6H/ppe7r6NkX9BTb3dE6CK1XuE68Kf1rLtp7M+b0woMWnYoYBwpcekI
 nIOWko+lIaSgbLM4mjzZdL+hfCTCGWRjL20PxT4JB/p/nVWKfrGTfrciFvr+KQ59EkRuHLUf
 e6P5xbR9X5K3H1JIpP1wriH7FPNHglVtEPsNpTYSPOnuv7bqnR8sDLevfaI7TgVRw+XHnkP3
 cFVD/vYOpa6ESGXWL5nQjxV3vhdleXx+MzLIHqu8wojKQdPIxFtQYYzX6j4NuQFDFEuqsqOG
 tySYmX15+TlC2TxyLl/m9pMh1SAgJ++7P7SU5HogcMLgfRebYHsNOPRHBK0BK8V1tCZvKTND
 Qai0V8+KqxIZDV7zslEcibPmWTiGZWg36WUZEGmOmm6d3+cp01SrYqMZYBWznjJlhQo0JHuW
 1DYAgLSgv0DTX1k5ioi5QSGaX4bNlzgACiJOZOsnLBvUCgpcUiL0FrHAKGYIqyu0IDVjBUjl
 p+/+s0m7ybgwuiLmM5naAFKlFWUX+WB7hHFQyBQ41RltnQCUZNZFbPoQbfpwA4e2Ls+UlXom
 D6NyWbdcvGBUdntmlC3rzn9051cWuhb1t9A0oKwrFVJCDjgDJewOWLbq283y+qZlwOzvo0HR
 vFbTERSzkejOyf5VqwonKvBH8mzpIhMqjhF7wlaajUwW7oApaPj7s6E/hd+4tFONjivvQQa/
 +WfxaYIVrDeqUU8j3QgkxgFDh/qXEin/+t5Qbs63Kg2mUjRdXVO1ZrStggUqehxlmhY8zN9p
 p3jdg457Ttdkrwb8OL0qHRYXpoLAjJrWu/UuEvrtR1sMsJxc9ONqiedQGN8ndNmCgaBoPTsm
 g1Raxg+rDPOoN1ZaUpCmpk12tssO7KFVchtwz9P/Q3cl4shULKJt/h2cu8lZMfRmm64DbqMV
 aR8ydh7+7IciuK27kdEb8xKw1tGT8BwUUn2OOJbIvLDgq2M8lF4VqhK3e4GYUtApStKPE1rh
 xg5cuPkPLSXy3k2BrItT8+Bq5V6W6oTYeTBw2LcNQ4vuCSCBCpgqGw5tS0gyqyYTyna14AjY
 kATHcuVK14+3Afpbxy9DOzRKzxql8klFUbwQgPrC+T5qGWpEHBHU9HNgXFhI5xRjc7CAnQsf
 j4
X-IronPort-AV: E=Sophos;i="5.82,240,1613451600"; 
   d="scan'208";a="43587219"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cX10/zcYKt8WFP/HsftGNsyucT9ajDUVHwj5c4LrjG8ABX8JdRU5wDb/abNDR7KqVzGvhj0KjMbBWPbVAxYSdGLEorByk7cX6aqttsBGNCUJAXq/wJR1J7ovB5i4wDe8N9DLb/xZE3KpSGN3tlW+6AmPnVeLSDtgDflyyJ8GLxHv3p9IQlbxFla0TW7sGcnmEJAywBpG966sRi0YK29clh61W2PetLke9gi4RdY7C00/rvKil7Qmm7pQ8JEWIjoQ7MZmPwAySCJyND/pUFNlACwmB9v+731i1WfCW+OWfm5B5DkZtAqtw44rLj51P+Y+lfvDrS2qawMtOSFQK8gbIA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+rnL1wrRC8Xlighg0QkObbiRpbkamEWJFLiMZEFD/Mc=;
 b=cDoDiKWMMQfxsDwSPtF0qsGOzm8Zm7cHj49HTx/f9XaNs8eM3Dyd4VXxH7JTxabp1Bd9C0YwEMbD89l1M/StSX9hhCgRlBmxTutTScMZInE8c1Tpz0dFwowv/X9EVQVO4k9fsJ7Ll2t3Kgn9CSGAd6KBUurDA/aPOqDAWbVAHFs1vxJM753KxXedAPxrb902qIu4YdtJf2wlcQWcA7y/pxEHDnzgVYg+TDfkjDk5A5Hsxzft5iTF3MXkUZ7+KBEWj6oz/vneUHgwTRLezKIqbd1cyqTtibqsDFqAaMqu+kSRVw/Cx9adKwpAWWLx2D9aKImCTpxbHkFIbvajCpu7wA==
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=+rnL1wrRC8Xlighg0QkObbiRpbkamEWJFLiMZEFD/Mc=;
 b=Kik8+1mw0wjmCR7cgBwMOif51IJ35f8LXE+Gi7m8b+QZWo8QgrmGecy6ykZYy558PW6AhnbYhqJa2wdN9H5nzVTtVxVANqajp3kH855+kTCzwKvVrPmvKF8oWrlUgAC6gGJiQjg/P+OSFjTKTAdfWEPJmd+75FIiY17Xqt7Pemg=
Date: Wed, 21 Apr 2021 17:20:53 +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/8] x86/EFI: avoid use of GNU ld's
 --disable-reloc-section when possible
Message-ID: <YIBC1XWTQzjykk1k@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <ff15338a-ca10-ff38-3c2a-459303ce9d68@suse.com>
 <YH/8rb0aENMqOLAn@Air-de-Roger>
 <dada98e8-3e4a-94df-0678-bdd2a0e8de04@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <dada98e8-3e4a-94df-0678-bdd2a0e8de04@suse.com>
X-ClientProxiedBy: MR2P264CA0147.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::10) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2265463c-f648-4273-98ae-08d904d9113f
X-MS-TrafficTypeDiagnostic: DM4PR03MB6047:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB60477344A49F1EC07E7396C98F479@DM4PR03MB6047.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: y0Zx/EGL0R40IpgqRDeoddVJgHdZsaVac7gWSJBvWmx9psYIANY0a/zUvQ2w26r8d9Mquzb8lD3FGyCAMCfyBHyc/X/OoY+ft88BF+ZRwfQM0yTaolUk9LmUjqVmfVeHfxi0apEBZ+/WFEuLEfMw7cp0RI7pqOIjmdapvV0zK/AVhB0OLxE+sj7rj7rGO5PiW7OPqhHNcHE57JeFtWweGMMhl82Jp5kPNDBEc8Q+UEuJqzMSRB2gCz3LrDJK8XODNxbZ0OSa62bNonK/ev+erCKKcJsOFIP+5l3yIB40zhMy7v6OybjWxo4XT/iIl2/ORHVCLoLZq5ohdzuyKCLFlR/frs+NbF658CRTbevRo/Q2Bhk95XgpU4PK/VT5ecVJPE2PONFPzOrcWQce6WdMRURwmh/KAZ7sCmpz9VACY76TCPH9ksN7ekoVmLGS7L9tucbyBgoMnAN7Lj9QolI0SKOUFeOnTZUkpm9FRA0uZvvZu3IIGTo4GTEL5CkDHkxKtqS1MJR+gmGORJEOonE3b7PDIK9vF9uECR72URR1qhEQFrL41+I5rKdmzGiw7cHuNPZM+leGCBzvd3enKCYxD4iM+hhnzs2i1j+iYPxi5fU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(39860400002)(396003)(366004)(136003)(346002)(33716001)(26005)(8936002)(6916009)(53546011)(54906003)(6486002)(6496006)(956004)(38100700002)(2906002)(66476007)(66946007)(66556008)(5660300002)(85182001)(9686003)(186003)(478600001)(86362001)(316002)(6666004)(16526019)(8676002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/d4URRr1?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 2265463c-f648-4273-98ae-08d904d9113f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 15:20:59.5441
 (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: bXaDaXkCznOpur5cjeobDI+CBQgt7qokVIKV4pHqywchXu8il9vAhEChZdXSClpcwt51UwD7IXnn1X4wPqJHZA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6047
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 02:03:49PM +0200, Jan Beulich wrote:
> On 21.04.2021 12:21, Roger Pau Monné wrote:
> > On Thu, Apr 01, 2021 at 11:46:44AM +0200, Jan Beulich wrote:
> >> @@ -189,7 +208,11 @@ EFI_LDFLAGS += --no-insert-timestamp
> >>  endif
> >>  
> >>  $(TARGET).efi: VIRT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A VIRT_START$$,,p')
> >> +ifeq ($(MKRELOC),:)
> >> +$(TARGET).efi: ALT_BASE :=
> >> +else
> >>  $(TARGET).efi: ALT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A ALT_START$$,,p')
> > 
> > Could you maybe check whether $(relocs-dummy) is set as the condition
> > here and use it here instead of efi/relocs-dummy.o?
> 
> I can use it in the ifeq() if you think that's neater (the current way
> is minimally shorter), but using it in the ALT_BASE assignment would
> make this differ more from the VIRT_BASE one, which I'd like to avoid.

Sorry, I think I'm slightly confused because when the linker can
produce the required relocations relocs-dummy variable is left empty,
so it won't be added to $(TARGET).efi.

But we still need to generate the efi/relocs-dummy.o file for the ELF
build I assume?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:23:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:23:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114836.218932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEh9-0003Q5-RY; Wed, 21 Apr 2021 15:23:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114836.218932; Wed, 21 Apr 2021 15:23: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 1lZEh9-0003Py-NU; Wed, 21 Apr 2021 15:23:15 +0000
Received: by outflank-mailman (input) for mailman id 114836;
 Wed, 21 Apr 2021 15:23:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=48UE=JS=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZEh8-0003Pt-Gb
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:23:14 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 411ad47e-1b28-4171-b3c6-771be957fa7f;
 Wed, 21 Apr 2021 15:23: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: 411ad47e-1b28-4171-b3c6-771be957fa7f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619018593;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=C0Z+6q665DSM7p7B7c7DBYWlWBKriWgml0xUqZcLMkM=;
  b=LiM2JBda6wgA+Zc2v8Zogl+wGCykWFgSmFpSX9ClSQ7uwLuo/2fAwY/M
   VXAjsHoYaZPugd3g0r96iWTv8EWj7pyvS1dEME9T5HuDRRYiWxSkTJh8y
   /F6PGVSHgg+NvFOpAIN01C6hKTS/TLChrkXyyMhzcWIImliOEbphlN/S3
   g=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: qFjFUPecEcMj/jmEThx17ss4P6SN8YocqHiq6JNEMZnc0FTpGgpT1CE8A73WOP5dqYDO7qjbEh
 wJ5FTAWUdAG26DUuZ0CdbUs+fto2fU4zX9zwbdetUfjKxKygriZPC+VJOKxXoDRY7gL/5vDsGr
 U8YnQDFOxca/D3CXLayM891iMz3v5vQFGGmdcBBOvut2pMvrMBaE13VJupcGISbOUJvYq2Md2b
 HOVfudCa7Yco1SUmTSTwGyV4nzTg6aHwfFmJwMexRK+jUMfzxNN18wHleB2Kcsun/pAIZB5OOH
 T/0=
X-SBRS: 5.2
X-MesageID: 42219466
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:0H2OSK/HtzGyp941vK5uk+EKdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qH/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7H2vanrfAIcAFof4BSO5AnC1JfBDxOa0h0COgk/o4sKzG
 6tqW3Ez5Tmid6X4Fv212jf75NZ8eGRt+drNYi3peU+bhnpggasTox9V7OFpyBdmpDS1H8a1O
 Pijj1lE8Nv627AXmzdm2qT5yDQlAwAxlWn6ViEjWDtqcb0LQhKdfZptMZiXTbyr28D1esMt5
 5j7iaimLd8SS7kpmDb4ePFUhl7/3DE2kYKoKoooFF0FbcFZKQ5l/14wGplVK0uMQjd844dHO
 xnHKjnlYxrWGLfVXzfs2V1qebcJ0gbL1ODSkgGjMSfzyJbqnB/11cZ38wShB47heoAd6U=
X-IronPort-AV: E=Sophos;i="5.82,240,1613451600"; 
   d="scan'208";a="42219466"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eOvI5ztNmGyhaDy8Xaf58IIg1WVIilh9TJcS+OHWuLnrZP3qVehI1QngDl4gVc6jWcUPOFyuT/Rm8IzCTz9Mx9ep8ViwyJOSKW/zg2PJkWrKNd/IvUEYawgWqVt6ju+atiGAdBTWW/SzKqaW8cjdQpYO88+vYRstf/XdmYLqQ1+5TRVPRPiGMkxUoyzp4yGUPWxYLbSuk1QK45CUaWa4ED8EqNqihl9YxGJFrXGSeXXSErA7+hY/8CFaw6bmtaJ5uTFIKs69Tt6JHSD/f/8ULxM0YmuJpd8/rStlCkYlI8j2CHO6NW7utHcaQs/nSZ/7cl3Qhv7MOKyTZ0gOKlDCBQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=C0Z+6q665DSM7p7B7c7DBYWlWBKriWgml0xUqZcLMkM=;
 b=KBNmHYw8tYspGRczNDqJp2oHHSFKhfqgw5rb7+njeoSwnQT8sn1x7VTOrJG78Eeml5QlvQ35Ii7WbZXvJGr2ovn+eGZm4YYnNjl6zgPSyGtl73dcoZrRl60Uyt20fRuB/kr8MDH/EJR/zPTSB3XGvJwyJFWmFFPLs6s2AkG4TKeGMAVWW553jH89qZVGhXAQ8Q4lr9qGkbfdiHaAckRf3/NI5YucuHZ97P5UfE1loimoKenC8Un7PquFFETzgoUvAi/oeKjVB6qx9V8Fs6u8lUioDk69Zpx4uJqUn7ejgwCTSMcu8eC3evVhjFKK2omOX7Gehbteuj8b6KZB5LsXwA==
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=C0Z+6q665DSM7p7B7c7DBYWlWBKriWgml0xUqZcLMkM=;
 b=USKld+dohkD+gqZKlBhf6Bq1cm3jAXZLfZD0kkS0Ma28nH+i5QhEdN1xcWTrkLEdXPX3Doeb9qhi2ZNdm+PhFI3+B/We3qsI0FlvLIG7VrzqmiuCeP4LxTI07Slr1x/XLVA6gDKWiqAs5Oa51RaOC+h+/0R5/De3PeU2ZKqYLms=
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, 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>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 0/8] assorted replacement of x[mz]alloc_bytes()
Message-ID: <40d373eb-d7c2-27f9-df20-a7fecbe519a5@citrix.com>
Date: Wed, 21 Apr 2021 16:23:02 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0516.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13b::23) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 17040b09-c2d9-4f2b-d920-08d904d95eb3
X-MS-TrafficTypeDiagnostic: BYAPR03MB4744:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB474431B7CEBFA43A21CCFEB6BA479@BYAPR03MB4744.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3173;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: JPqxN0SWRc96fFt631N17sSjFgy0mqNcPkEUh3RAi0vgEKXFI+ust4+sTXRNqRGDf6TLPRMoO5H3q0UNg3Eoboul9WKFSyctFXpfo130et+pxAnxynriGzEiaF+TjdDmeTpiL/sBsURhIXEvw9Q7DfeodI/CiR3DKeuvjiqGDJnIazDf+FCwRjsup1ubD5cvep+8J3r8iUb30wOR1JWA0A0jGd8hB/mIE4pWPP/ReKBhbFE14S3yVKYJfKtJoR0xLjKo3psvDbqbpQGmtFlHvNXx3tXi9c/zmWriEf1HqNQrEUxb4szY+qAQUXHtNf+yfRKJUKh+KFCm0eqoXyX1knUjNkIcfqcspfWpWdE4YKTHCL43uV76rrBvsrP54sLyo9d5lpc24MsAikAHGUOSK3GT9slNUDFnYtA8GXU7cLJsmBBlwi+cfnnxenRHVoDjrNg6xDBHBzF/Hb2ppgbY6UKlYpX2ZhrgnORopUgys3y14rkKVOl/4O5kBsOgwFLFDmmdGSX9EcGw4P8iAOm1WXiwjPKUKMgcGb/AHFkfSlnXRLsI3NFAIK6TfvQDWSk64TM8p5wrQi/jD5jRKCOCbJ8po1YwnVZNbr/sDqXcIH/OLfDaBjOo403BxV98wmS/wUAxSZucVg8VAwfFXUp632lYIW/hQMiTDjnboUuw9JmYy3UfwH6aj8PFawyXirxV
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(366004)(136003)(376002)(39860400002)(396003)(110136005)(6486002)(31696002)(5660300002)(8936002)(38100700002)(83380400001)(316002)(86362001)(36756003)(2906002)(6666004)(16576012)(956004)(54906003)(2616005)(16526019)(66946007)(53546011)(8676002)(66556008)(26005)(31686004)(66476007)(478600001)(4326008)(107886003)(186003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?cEVFbGdrVWlMNXRXNUhkbmE5dFdLTG5NQVVPY2YzUW5iMXVDbnZSR2hnN29w?=
 =?utf-8?B?UVpUZFNhZzB0enA2SFU0cWdzVytiYSt6UGJNL3c5eXJhQ2JWNGVJem1Tc0xh?=
 =?utf-8?B?TXRZUEZuTC8yK1NTQ0Z5d1ZadVhBNW1XVFdsTlNsdk9OUTM4TlVuYVBlUUln?=
 =?utf-8?B?SXVuVW41ME8zcGV0ajhKVzZTdVpuUnNBRldra2k3NUt6b1BJakZlLytoSjln?=
 =?utf-8?B?ZldhZXZRaUNWeVNlc2NwckxXQk95QXdtZTFQcm81QWR1K3BjYVloRG56eW82?=
 =?utf-8?B?SDdnTDdOTHNWaGhmRm5jcXlvcEY5M1l6dXdZN09yOEM0UjFsU2dzV3ZRc0hz?=
 =?utf-8?B?akxES3JNVTZpcDhCa3hnQ1EyeEVOZEpTa2lvL0ZpWDJtdW5TYUZYd0hrazRG?=
 =?utf-8?B?TURKa0RuQ3ErTVoreDN0N2NUZ21NOEdUWDlWMEkxWGZHZWUvQ0NSZ1ZJL0ow?=
 =?utf-8?B?R2kxR0dyTngySTk4N1FaRzV2QTVENjErZDNUZVh3cGVpZmxOY2ZTcUsvRXht?=
 =?utf-8?B?dGVmSENWc1B5ZGZVWmkzRFRpOTRaTDJ2OEFEaHF3N25rZC9PaW50eU95bmln?=
 =?utf-8?B?aG8yeUQ2MlExWWFPSUVTTHlmK2NBd3FYZnM1VEJnU3RQQnVDeUlJOWVYU2Nn?=
 =?utf-8?B?SVlTNGNMOGRENmM3cTQzaEhSZEQxdVB1dGVwbHU1NngwcEsvY09ZekI5aDl6?=
 =?utf-8?B?aUJXQ0FRcG0rbEgvNnlDNVdJa0VDQ2F0UmZveFZvM09VandvUVpuckIwbHNo?=
 =?utf-8?B?TkxMeUhtcitZcUJLOEd5NFExdEhtT0xQTXk3cStGMEkrbjJVZ0lwamF6bTE4?=
 =?utf-8?B?ZE5CMlhsekRMN1FJdXVtMTAwekNsMzlYZmZraGNuWUlKc0tTWTU2MTdFa3Ra?=
 =?utf-8?B?WTVUdXF6N0N6VGlHelE1KzRtL1lCelVTUWJFM2V1N1Y1MXlsZzNuRW54dVd5?=
 =?utf-8?B?U1BoWlZhS1dEc2dRQzdCend6Z1JkV0pGUEQ5U3ptOVlSQnZhTERQWkE1aDAv?=
 =?utf-8?B?QUxEZXhDWkRTc0E4OVU2TEhFZkhHYysvdXg4SDh6OGJLNXoza2RLVVJWQzZO?=
 =?utf-8?B?bStJaUk0OXV4b1FmT1VhbGpBV29OMFdPeWprNFMyNXVpZ01ydUo0eDFaTmd1?=
 =?utf-8?B?QlYrMXdERjRjQUdhSDBvTVVBZzlZTlFPZWpPbTRDOWNPMTNKT2Mrb1EwYmdl?=
 =?utf-8?B?NlFHZjhoKzN5R1lkam90Q3ZrL251bzhqUW9MKzh6blZGbVJ6eXEvUnExSnA0?=
 =?utf-8?B?ZUJzaDUrMmZFR3Q2aGVpRXRFSlZSU3RXZm9ZRGM0ZlBOQVB3M05aVlpiL2Z4?=
 =?utf-8?B?SXVucklGdGw3LzA0MCtRU3Jrak9xWUl4YTU3VjBLRGRncTZaSE85MkpSTlov?=
 =?utf-8?B?TlUyV1MwNUhSNG5Pb1VHendZcU43RExEVDNHU2pEcTFCaVd6WlRmZDFVdlRw?=
 =?utf-8?B?aFF5bk5LQjFvRFhjWTllSkV3dU45L3JEWDFaNFhTaTc2SnFsTFcvRUZsRXhV?=
 =?utf-8?B?bjIrVjBncGlmODRhUUw2azdId0Y3eE9LbDNzczVaNk5IVUM2UU1aZlh2TmEw?=
 =?utf-8?B?eVJRV2xlNjFWcE9LcHNRcG53OWhQRTM2T0dPcitHOFNWRVJleEFRUTJrQ1ds?=
 =?utf-8?B?Ynp5aCswZ2dKYXFlaUlOUXpTTWtuMWw2UGx0M1l6d01ZV2lHakVCcjZWeE9m?=
 =?utf-8?B?S3puZTNCb1R1alhNNlBjOEdIb0c1T1pYdWQweUtqc2tneW5IU0pZRS9aMjFq?=
 =?utf-8?Q?9d1st49z3UU9k553fM/IY022qv3fhSKZcPAZDIh?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 17040b09-c2d9-4f2b-d920-08d904d95eb3
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 15:23:09.5793
 (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: 74Trqc3QG0H5ybhnleovLUQTg/0G1GDgmq65+PcDRjQaUByH9liI4CZvcGnB3lC2xQI84ddQtQ/8rIdFyBgK9IL0MYq7URvxiP0UacBpKw4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4744
X-OriginatorOrg: citrix.com

On 21/04/2021 15:54, Jan Beulich wrote:
> In the long run I think we want to do away with these type-unsafe
> interfaces, the more that they also request (typically) excess
> alignment. This series of entirely independent patches is
> eliminating the instances where it's relatively clear that they're
> not just "blob" allocations.
>
> v2 only has commit messages extended.
>
> 1: x86/MCE: avoid effectively open-coding xmalloc_array()
> 2: x86/HVM: avoid effectively open-coding xmalloc_array()
> 3: x86/oprofile: avoid effectively open-coding xmalloc_array()
> 4: x86/IRQ: avoid over-alignment in alloc_pirq_struct()
> 5: EFI/runtime: avoid effectively open-coding xmalloc_array()
> 6: kexec: avoid effectively open-coding xzalloc_flex_struct()
> 7: video/lfb: avoid effectively open-coding xzalloc_array()
> 8: Arm/optee: don't open-code xzalloc_flex_struct()

I'm tempted to nack this, but for now will go with a firm -2 to the
whole series.

It is unreasonable, at an API level, for *lloc_bytes(...) to not be
interchangeable *alloc_array(char, ...), and the former is the clearer
way of writing code.

The alignment details are internal properties, dubious at best, and
totally unreasonable for maintainer to know or care about as far as the
API is concerned.=C2=A0 There is also no type safety to be gained by making
the transformation.

If you want to improve the alignment, fix the allocator and the
behind-the-scenes semantics.=C2=A0 Don't make every callsite more complicat=
ed
to follow, and definitely don't introduce perf problems from cacheline
sharing in the name of typesafey.

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:24:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:24:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114839.218944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEhu-0003W3-4Z; Wed, 21 Apr 2021 15:24:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114839.218944; Wed, 21 Apr 2021 15:24: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 1lZEhu-0003Vw-1T; Wed, 21 Apr 2021 15:24:02 +0000
Received: by outflank-mailman (input) for mailman id 114839;
 Wed, 21 Apr 2021 15:24:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEht-0003Vo-5U
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:24:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6097ea9a-8cde-4a89-9ea3-805289eac83e;
 Wed, 21 Apr 2021 15:24:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4E0C3B4F4;
 Wed, 21 Apr 2021 15: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: 6097ea9a-8cde-4a89-9ea3-805289eac83e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619018639; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=O55BFAVHl1k2hSCRXuwD9sObx1sD6Qj4tI/HRCtDbp8=;
	b=JNCPmm5gGZxnc0acgTiALBt2VkEkSS9OSLzElOJS3zJ66/9CjrINtQv0mzA+GxG39R1YOW
	iqhuVEXMHMDWsdPzM/YsSGlg8m/Lik6L30A4XuM7X3rAeXGSPZN+nplWB35sQ4ofVPZHIN
	mfmKlU3dK1sk+sv7BFtYZFg0+deVPgU=
Subject: Ping: [PATCH v5 0/6] evtchn: (not so) recent XSAs follow-on
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@eu.citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <306e62e8-9070-2db9-c959-858465c50c1d@suse.com>
Message-ID: <d29fa89b-ea0a-bdbd-04c9-02eff0854d47@suse.com>
Date: Wed, 21 Apr 2021 17:23:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <306e62e8-9070-2db9-c959-858465c50c1d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 27.01.2021 09:13, Jan Beulich wrote:
> These are grouped into a series largely because of their origin,
> not so much because there are (heavy) dependencies among them.
> The main change from v4 is the dropping of the two patches trying
> to do away with the double event lock acquires in interdomain
> channel handling. See also the individual patches.
> 
> 1: use per-channel lock where possible
> 2: convert domain event lock to an r/w one
> 3: slightly defer lock acquire where possible
> 4: add helper for port_is_valid() + evtchn_from_port()
> 5: type adjustments
> 6: drop acquiring of per-channel lock from send_guest_{global,vcpu}_virq()

Only patch 4 here has got an ack so far - may I ask for clear feedback
as to at least some of these being acceptable (I can see the last one
being controversial, and if this was the only one left I probably
wouldn't even ping, despite thinking that it helps reduce unecessary
overhead).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:30:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:30:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114853.218956 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEoF-0004Zz-0U; Wed, 21 Apr 2021 15:30:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114853.218956; Wed, 21 Apr 2021 15: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 1lZEoE-0004Zs-TL; Wed, 21 Apr 2021 15:30:34 +0000
Received: by outflank-mailman (input) for mailman id 114853;
 Wed, 21 Apr 2021 15:30:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wOap=JS=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZEoD-0004Zn-5U
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:30:33 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 36198815-4bbc-4182-b7af-f19da829ed54;
 Wed, 21 Apr 2021 15:30: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: 36198815-4bbc-4182-b7af-f19da829ed54
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619019032;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=7GTFvmj5tiOPMSvBHBZfo+yqUbhTF+or9i3lEmFYoNk=;
  b=JScbOerhZ+Mgq5H7o1PHHU+/ity9CTCbKN040yGUrPFq5XAbUz4i+HvJ
   H4FwhC3EuPBZdjhL9c6D6sZc/VpbHniFInH/MCw4pzc5+YIwdmLJGGR0l
   x1UoA4MrY7jVTolrH5VwfFJb8GGvYdW+N+lDMvjB4uXAD++SD0gCotcfW
   Y=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: nrGl7Tc2OPjYsOc9A0cWjD8yx6V2rSgnr670QhqnWCtnx4ECoxrQyQHU0PXd/JGChJ6jOR/zta
 /TBL18RtHZPEku89ZCEdtaeOaxyPno8SfOCaUIi4+FmwdjTAS8+rS550VwAs9exf2qBb+J/bgV
 OtZLV4gQFpakwcCUY5mfGhfgGJ8yZDDKtB3Zl0EW3pyhyFzs3zGN3mZMQt/TAui+zDIrb11OJx
 38cK3fnJ0+1p5MqG/llRzKq41V4gf2mhq3uBCy18w3uuMFPQNfKCK+3aj/TUMXQKUCZ1pKZcdC
 9Z0=
X-SBRS: 5.2
X-MesageID: 42220237
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Tkun/6830l22zNtjU8Nuk+FJcL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUfD38Zn/+
 Nbf6B6YeeaMXFTh8z3+RT9Nt4mzsWO/qzAv5an815GSwZ2Z6Z8qyJwDQiGGkN7LTM2fqYRPp
 ya+8ZBun6caW0aB/7LTUUtcsrig5nwlJzgaQMbHBJP0mWzpB6h9bKSKWn94j4wSDVKqI1CzU
 HklEjD6ryno7WHzHbnphbuxrB3vPek9ddZHsyLjaEuW3/RoyKlfp5oVbHHnB1dmpDJ1H8QnN
 PBowgtMq1Ighu/EF2dmhfj1xLt1zwj8RbZuDmlqEH+qs/0Ti9SMbsjuatlcwDU40dlnNZw3L
 Mj5RP9i7NrDAjNlCm42t7QVxsCrDvXnVMel4co70B3YM87Uvt8vIYf9ERaHNMrByTh8r0qF+
 FoEYX1+OtWWUnyVQGUgkBfhPiXGlgjFBaPRUYP/uaP1SJNoXx/x0wEgOQCg3Y78o4nQZUs3Z
 WKDo1Y0JV1CuMGZ6N0A+kMBeGtDHbWfB7KOGWOZXPqCb8AIHCIj5Ls+r066KWLdfUzvdUPsa
 WEdGkdmX85ekroB8HL9oZM6ArxTGK0WimoxdpZ45R/p73gVLvmOSCOUzkV4oudisRaJveed+
 e4OZpQDfOmB3DpA5x10wr3XIQXKXR2arxXhv8LH3a15u7bIIzjseLWNNzJIqD2LDoiUmTjRn
 8KXD35ItRc/lmmM0WIwiT5ajfIQAjS7JhwGK/V86w4044WLLBBtQATlBC+/cGEKTpLt6QsZ0
 tgKLb7kqe2zFPGvFrg3iFMAF5wH0xV6LLvXzdhvgkRKX75dr4FppGCY2xIxWCGIRV+VsvSFw
 Zaqz1MiOeKBq3V4RpnJ8OsM2qcgXdWmWmDSI0EnLafoe3/fIkjM5ogUKttNAnCGhBvgzx2oG
 NbZAJsfD6aKhrezYGeyL0dHqX2asR1igbDG78vlVvv8WGn4fwJalRedTi0SsKTiRspXFNv9y
 BM2p5apqGBlzapIXY4m8IiPjR3GSmqKbpbEQWIY5hVkLj3eAd2CXyHnyCelgtbQBuXy2wCwm
 PmNiGaYvfNHx5UvW1ZyL/j9BduenyaZF8YUAENjaRtUWDHsG10y+mFe+661HaQcEILxogmQU
 X4SCpXJgNl3Nas0hGJ3D6ECHU9350reujQFq4qfb2W2nSjLuSz5NY7Nu4R+JZuL9b1tOAXFe
 qZZg+ONTv9T/ozxBb9nAdXBABk7H0/1f/40hzs62a1mHY5HPrJOVxjA7UWOcuV4WToT+uBua
 8JxO4drK+1KCH8e9SGwabYY3pYJhTfrXW/QusopZpX1JhCwYdbDt3eS3/FxXtH1BIxIIPoj0
 sYWr18+62ENYl1fcAeEhgptmYBhZCKNg8svQP3CONlIg1ogH/fIt+T473H7bAoGVaMoQPsOV
 +Zty1Rls21LherxPofEeY3J28TdU03rHJl9+mGf5fLCAqre/pYlWDKQEOVYftYUuydBb4Urh
 xm+NmGkO+cajrg1GnrzEVGC7ML93ziXNi7Dw2NE/NZ6tC2OVyDha2x/c645Q2HOQeTegAfno
 1KdUsZc8RFhH0jleQMo1ePdpA=
X-IronPort-AV: E=Sophos;i="5.82,240,1613451600"; 
   d="scan'208";a="42220237"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cLY5Ic5z5roKtEpzKgu51grfAoa0omCWNu8brzBOeIIW/03VQJNmRda/QIvRUmtbwJNwQP8CdbNQAicRDJQi4BoyZXjBCoBmWo5lDajJ1ciLIGlA9ZPlXQ6BRntp1eDgSZfL1J6hr+YkTEmH+VTgDX5x0QaoxQexp24R1UMo6Xo+QPbmV8Ydq3Pkt2WVsDECDT0eMEjIe8nVDKyX/nckVP+wfgJy7KVyoijSArwKVcovvVwEhHo0HtJZAy01ky/xQuj8EWivGPtNCutblSw/j/ZojdCk7LE9SX7xShNn5LdTaDk83VdG6LTDu3qk5im2oo7d0I8nfcoVvb9bDrn5XQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7seD1LasRbHT6lD7acTtdbEuctuqErrVk90P996TXho=;
 b=iN0MYZqa2/DM9lCfG9U3NCQ0H1XBMfm9caCOwVXJG9OZrSzFJuhyNlF+95T9EO3MhLyHdQtAOTdzvhdyBU3R2yhn0X+JsWvZAVtsKEcX4EKjgB/XG3qzV4aJm6OIUeVgRLIS5wjNIiOR225rssDCc7MkIcWVfwigVRTFq+6YOm6CsZLZh7SG+fBPRxEitYnt82awTG12BsEs3CJblO56fj4QjoVaH4tExYSHNtZ3GdBvuPdaoz3aMXVs2WDwtAJWGPXWFKKwiFqfJdkw7fhVllEvJKK8LSZEqSzgp/87VPW9pHZ0BjuNVCN88aVo575NbntmkI3caPiPGX2cP94b6g==
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=7seD1LasRbHT6lD7acTtdbEuctuqErrVk90P996TXho=;
 b=xTlXZ8fCCV9C0cTGX26ArLO7ABXZc7/BF+MmCwIwHb2IX8GCAZcS0p2s+fi/m0ZcEWa4AVNQ1kJnTjVTAvqkmuwKjmDo10qa7gtuTezkH9nW2tYIOFbfAQ4yCclfeK4RA/FuAs3X7G2/OjB6ruK3h5Ji8tFl+4Cwcausl96tvgk=
Date: Wed, 21 Apr 2021 17:30:23 +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/8] x86/EFI: keep debug info in xen.efi
Message-ID: <YIBFD4i6bLaeaXdE@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
X-ClientProxiedBy: MRXP264CA0047.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::35) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7e6d86c1-ab98-4c88-21df-08d904da64c0
X-MS-TrafficTypeDiagnostic: DM6PR03MB5289:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5289AD34949F73BFFEFAF0A48F479@DM6PR03MB5289.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: bE3oa9LeWNKFOKxNqVJgYwrXThyGjDSs9JDDk4sqkhU+OyoCbSM5nI5glr4rDZP/4gm6ngqGWzrFK2ZcJoR2/T1StUie+HQCQ+v/Khlsw63itlAeq3/Bp5VQZP3v6ZfwnBh2jZ5xBom4VLw10Z/gnfCRZQxAuJaZ5rDWrIgzde5big88QLOOmOHHHvPT3WDJr4oHv4oI57NjOSg8Mw/+/b2ewMIGzhlPN4ib60CDwMbt749gi3Hl1rwuoxCajpWkK0jie5tydm6KJ4AJDcKf/usqCaFpeICQ9/T8jNlLzdyurAHwhqL/ktHQSpnfk1wDqgBpbT6Od0iljaaOLXgpE4ypR6QvpMJ6c3bXre9cHbV468LB48v1TxhSn+n1P0Jzgmz3JVhP7Kf8jAhmGvQ5D3P+MjBuhUpqkyVCTOb5RPFDK2kazLxwthllsC8yTgBw80yzsxtZlLApmJBL67N5X7djizgP2G+LHLUqdvGEUwWQdQQYIWVXuJC5GtUsnT5Wlfsb61NuXPTzZjTROQr9sptOvBv+g9LeJ/bxapS08hxfbEVv27QODAjIbCVx5Mlg9QbKS4FMdGMYK/Yv42yO8rcn2X17BPwjx62titQWhqY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(39860400002)(396003)(366004)(136003)(346002)(186003)(16526019)(66946007)(26005)(8936002)(478600001)(316002)(33716001)(86362001)(38100700002)(6666004)(83380400001)(6496006)(53546011)(66556008)(6486002)(8676002)(54906003)(66476007)(2906002)(9686003)(4326008)(6916009)(956004)(5660300002)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?lDiIV/QGS+7N52XJqBEU91IzyfYKKe56I7pCE8C?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 7e6d86c1-ab98-4c88-21df-08d904da64c0
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2021 15:30:29.0585
 (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: DrNx7IP6Fxi0n9R+G4jHBXtsHWbjLDUkq8+gVIOBQsYASfCiTKdf9i5AdfEnRUnFzQtWyVw3ERl9dnq+81fAkA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5289
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
> On 21.04.2021 13:15, Roger Pau Monné wrote:
> > On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
> >> ... provided the linker supports it (which it does as of commit
> >> 2dfa8341e079 ["ELF DWARF in PE output"]).
> >>
> >> Without mentioning debugging sections, the linker would put them at
> >> VA 0, thus making them unreachable by 32-bit (relative or absolute)
> >> relocations. If relocations were resolvable (or absent) the resulting
> >> binary would have invalid section RVAs (0 - __image_base__, truncated to
> >> 32 bits). Mentioning debugging sections without specifying an address
> >> will result in the linker putting them all on the same RVA. A loader is,
> >> afaict, free to reject loading such an image, as sections shouldn't
> >> overlap. (The above describes GNU ld 2.36 behavior, which - if deemed
> >> buggy - could change.)
> > 
> > Isn't just using (NOLOAD) to signal those sections shouldn't be
> > loaded enough, and thus don't care about it's RVA?
> 
> As said in a reply earlier on another sub-thread, (NOLOAD) is meaningless
> for PE. The fact that I add them nevertheless is just for docs purposes
> (or if, in the future, the item gains significance).
> 
> The main problem though isn't "load" vs "no-load" but, as I thought I
> have expressed in the description, that there's no "don't care about it's
> RVA" in PE. All sections have to have a non-zero VA above the image base.
> This is the only way via which sane RVA values can result. If sections
> get placed at VA 0 (which is perfectly fine for ELF), the RVA would be a
> huge negative number truncated to 32 bits. (Again, prior to binutils 2.37
> this will go all silently.) Plus the respective sections would come first
> (rather than last) in the binary (which by itself may or may not be a
> problem for the EFI loader, but I wouldn't want to chance it).

Thanks for the explanation.

> >> --- a/xen/arch/x86/xen.lds.S
> >> +++ b/xen/arch/x86/xen.lds.S
> >> @@ -312,10 +312,60 @@ SECTIONS
> >>      *(.reloc)
> >>      __base_relocs_end = .;
> >>    }
> >> -  /* Trick the linker into setting the image size to exactly 16Mb. */
> >> -  . = ALIGN(__section_alignment__);
> >> -  DECL_SECTION(.pad) {
> >> -    . = ALIGN(MB(16));
> >> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
> >> +     *(.debug_abbrev)
> >> +  }
> >> +  .debug_info ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_info)
> >> +    *(.gnu.linkonce.wi.*)
> >> +  }
> >> +  .debug_types ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_types)
> >> +  }
> >> +  .debug_str ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_str)
> >> +  }
> >> +  .debug_line ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_line)
> >> +    *(.debug_line.*)
> >> +  }
> >> +  .debug_line_str ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_line_str)
> >> +  }
> >> +  .debug_names ALIGN(4) (NOLOAD) : {
> >> +    *(.debug_names)
> >> +  }
> >> +  .debug_frame ALIGN(4) (NOLOAD) : {
> >> +    *(.debug_frame)
> >> +  }
> >> +  .debug_loc ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_loc)
> >> +  }
> >> +  .debug_loclists ALIGN(4) (NOLOAD) : {
> >> +    *(.debug_loclists)
> >> +  }
> >> +  .debug_ranges ALIGN(8) (NOLOAD) : {
> >> +    *(.debug_ranges)
> >> +  }
> >> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
> >> +    *(.debug_rnglists)
> >> +  }
> >> +  .debug_addr ALIGN(8) (NOLOAD) : {
> >> +    *(.debug_addr)
> >> +  }
> >> +  .debug_aranges ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_aranges)
> >> +  }
> >> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_pubnames)
> >> +  }
> >> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
> >> +    *(.debug_pubtypes)
> >> +  }
> >> +  /* Trick the linker into setting the image size to no less than 16Mb. */
> >> +  __image_end__ = .;
> >> +  .pad ALIGN(__section_alignment__) : {
> >> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
> > 
> > I think this is inside an ifdef EFI region, since this is DWARF info
> > couldn't it also be present when building with EFI disabled?
> 
> Of course (and it's not just "could" but "will"), yet the linker will
> do fine (and perhaps even better) without when building ELF. Also
> note that we'll be responsible for keeping the list of sections up-to-
> date. The linker will recognize Dwarf sections by looking for a
> .debug_ prefix. We can't use such here (or at least I'm not aware of
> a suitable mechanism); .debug_* would mean munging together all the
> different kinds of Dwarf sections. Hence by limiting the explicit
> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.

Right, so we will have to keep this list of debug_ sections updated
manually if/when more of those appear as part of DWARF updates?

Do we have a way to get some kind of warning or error when a new
section not explicitly handled here appears?

Instead of adding DWARF debug info to the xen.efi binary, is there a
way to translate the DWARF from the ELF build into the native debug
format for PE/COFF?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:32:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:32:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114857.218967 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEpn-0004i8-BN; Wed, 21 Apr 2021 15:32:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114857.218967; Wed, 21 Apr 2021 15:32: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 1lZEpn-0004i1-8F; Wed, 21 Apr 2021 15:32:11 +0000
Received: by outflank-mailman (input) for mailman id 114857;
 Wed, 21 Apr 2021 15:32:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEpl-0004hf-PW
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:32:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3147aad3-d6a6-48f3-94b3-c5162557d85d;
 Wed, 21 Apr 2021 15:32:08 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8062FB505;
 Wed, 21 Apr 2021 15:32: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: 3147aad3-d6a6-48f3-94b3-c5162557d85d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619019127; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ZwW4pbJtzmhfr4vQ/5MmCYKtIQuv6Dn+2d2rO5MCdio=;
	b=DCsEZGEmtDxEL14Gj9ym7xLujYuxi5PuYwk3s9umhY6W0McCY07J90BGTU0KS5zrnnyzc3
	U9QG5vxgtopY3aFm9haOnW/eiO9321lkd2oGrMz/6DMzfkhA0AcVx9b+U8jdrsDnZcgILs
	0tAoRX/42e/EkBzhPg3A1MCLbGS1Dm4=
Subject: Re: [PATCH v2 0/8] assorted replacement of x[mz]alloc_bytes()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
 <40d373eb-d7c2-27f9-df20-a7fecbe519a5@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6afd9e45-ad71-5b39-6bec-c8d37ef56157@suse.com>
Date: Wed, 21 Apr 2021 17:32:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <40d373eb-d7c2-27f9-df20-a7fecbe519a5@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 17:23, Andrew Cooper wrote:
> On 21/04/2021 15:54, Jan Beulich wrote:
>> In the long run I think we want to do away with these type-unsafe
>> interfaces, the more that they also request (typically) excess
>> alignment. This series of entirely independent patches is
>> eliminating the instances where it's relatively clear that they're
>> not just "blob" allocations.
>>
>> v2 only has commit messages extended.
>>
>> 1: x86/MCE: avoid effectively open-coding xmalloc_array()
>> 2: x86/HVM: avoid effectively open-coding xmalloc_array()
>> 3: x86/oprofile: avoid effectively open-coding xmalloc_array()
>> 4: x86/IRQ: avoid over-alignment in alloc_pirq_struct()
>> 5: EFI/runtime: avoid effectively open-coding xmalloc_array()
>> 6: kexec: avoid effectively open-coding xzalloc_flex_struct()
>> 7: video/lfb: avoid effectively open-coding xzalloc_array()
>> 8: Arm/optee: don't open-code xzalloc_flex_struct()
> 
> I'm tempted to nack this, but for now will go with a firm -2 to the
> whole series.
> 
> It is unreasonable, at an API level, for *lloc_bytes(...) to not be
> interchangeable *alloc_array(char, ...), and the former is the clearer
> way of writing code.
> 
> The alignment details are internal properties, dubious at best, and
> totally unreasonable for maintainer to know or care about as far as the
> API is concerned.  There is also no type safety to be gained by making
> the transformation.
> 
> If you want to improve the alignment, fix the allocator and the
> behind-the-scenes semantics.  Don't make every callsite more complicated
> to follow, and definitely don't introduce perf problems from cacheline
> sharing in the name of typesafey.

So you firmly think x*alloc_bytes() is a good interface to have and to
keep? As said above, I'm of the clear opinion that we should get rid
of it (with what you say in the first sentence of the second from last
paragraph being one of the reasons). The fact that it may be a
shorthand when allocating char[] is really, really minor (and violates
consistency of the code base as a whole).

Also, just to make this explicit, patch 4 really is somewhat different
from the others, and hence would better not fall into a general "I don't
like this and won't look at it" bucket. Granted I'm not sure you'll
flame me for other reasons there ...

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:34:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:34:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114862.218979 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEs3-0004qa-Pc; Wed, 21 Apr 2021 15:34:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114862.218979; Wed, 21 Apr 2021 15: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 1lZEs3-0004qT-Me; Wed, 21 Apr 2021 15:34:31 +0000
Received: by outflank-mailman (input) for mailman id 114862;
 Wed, 21 Apr 2021 15:34:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEs3-0004qO-6B
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:34:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e7b9b76f-5799-4841-b26b-1d28f7fd7936;
 Wed, 21 Apr 2021 15:34:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9AFABB4F4;
 Wed, 21 Apr 2021 15:34: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: e7b9b76f-5799-4841-b26b-1d28f7fd7936
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619019269; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Hx6gVI3xRsjkXarMiANOTT/HKfqcKKR2dg+OLV983X8=;
	b=e2Cxvdb/e8C0pIv1dbxHXPts2XAsPkEZAZ7f5qpFOYnkrM76G8gATimRxB+jyN5q0zYE17
	5Dw6W7xHijgjLdQh4GXh4NxCTjWYIWa+0UpwGXt9ij1FnqBWtRNqdlkioJXvt3wEJY28pD
	VMb7MKUAQ0khkF9k+h5V1s0sa8opzWw=
Subject: Re: [PATCH 6/8] x86/EFI: avoid use of GNU ld's
 --disable-reloc-section when possible
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <ff15338a-ca10-ff38-3c2a-459303ce9d68@suse.com>
 <YH/8rb0aENMqOLAn@Air-de-Roger>
 <dada98e8-3e4a-94df-0678-bdd2a0e8de04@suse.com>
 <YIBC1XWTQzjykk1k@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <fa822374-ce07-473d-b6b6-2d8073ff83a6@suse.com>
Date: Wed, 21 Apr 2021 17:34:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIBC1XWTQzjykk1k@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 17:20, Roger Pau Monné wrote:
> On Wed, Apr 21, 2021 at 02:03:49PM +0200, Jan Beulich wrote:
>> On 21.04.2021 12:21, Roger Pau Monné wrote:
>>> On Thu, Apr 01, 2021 at 11:46:44AM +0200, Jan Beulich wrote:
>>>> @@ -189,7 +208,11 @@ EFI_LDFLAGS += --no-insert-timestamp
>>>>  endif
>>>>  
>>>>  $(TARGET).efi: VIRT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A VIRT_START$$,,p')
>>>> +ifeq ($(MKRELOC),:)
>>>> +$(TARGET).efi: ALT_BASE :=
>>>> +else
>>>>  $(TARGET).efi: ALT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A ALT_START$$,,p')
>>>
>>> Could you maybe check whether $(relocs-dummy) is set as the condition
>>> here and use it here instead of efi/relocs-dummy.o?
>>
>> I can use it in the ifeq() if you think that's neater (the current way
>> is minimally shorter), but using it in the ALT_BASE assignment would
>> make this differ more from the VIRT_BASE one, which I'd like to avoid.
> 
> Sorry, I think I'm slightly confused because when the linker can
> produce the required relocations relocs-dummy variable is left empty,
> so it won't be added to $(TARGET).efi.
> 
> But we still need to generate the efi/relocs-dummy.o file for the ELF
> build I assume?

Not anymore (after "x86/EFI: redo .reloc section bounds determination").
We need it, as said, to fish VIRT_BASE out of it. It indeed wouldn't get
linked into any of the final binaries anymore.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:38:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:38:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114868.218992 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEwA-00058y-Cg; Wed, 21 Apr 2021 15:38:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114868.218992; Wed, 21 Apr 2021 15:38:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZEwA-00058r-82; Wed, 21 Apr 2021 15:38:46 +0000
Received: by outflank-mailman (input) for mailman id 114868;
 Wed, 21 Apr 2021 15:38:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4TWb=JS=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZEw9-00058m-5N
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:38:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b36b8141-7719-4f80-8ccd-5e1ea4143308;
 Wed, 21 Apr 2021 15:38:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 46131B507;
 Wed, 21 Apr 2021 15:38: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: b36b8141-7719-4f80-8ccd-5e1ea4143308
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619019523; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=bpQYbSW9SyfWq939gplb9qY3MYbPo3DyCYq1sj8w6Z8=;
	b=ZV46OphOcipd0QqCJ5ray5oAgOHmFlJgP1UvDwuh8FfZv0g3KCHMSW9iclq/3sgv5ekn6z
	t5VYDzqlJZE9PJGK3UCBiiJc7s8nKKcZzOhtKUTnrXSFwee2gCPlJnVtbdYwOyHeNBCNVI
	y+sfTrKz6I73Gfh9XotDk2f4vIuScyo=
Subject: Re: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
Date: Wed, 21 Apr 2021 17:38:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIBFD4i6bLaeaXdE@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 17:30, Roger Pau Monné wrote:
> On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
>> On 21.04.2021 13:15, Roger Pau Monné wrote:
>>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
>>>> --- a/xen/arch/x86/xen.lds.S
>>>> +++ b/xen/arch/x86/xen.lds.S
>>>> @@ -312,10 +312,60 @@ SECTIONS
>>>>      *(.reloc)
>>>>      __base_relocs_end = .;
>>>>    }
>>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
>>>> -  . = ALIGN(__section_alignment__);
>>>> -  DECL_SECTION(.pad) {
>>>> -    . = ALIGN(MB(16));
>>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
>>>> +     *(.debug_abbrev)
>>>> +  }
>>>> +  .debug_info ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_info)
>>>> +    *(.gnu.linkonce.wi.*)
>>>> +  }
>>>> +  .debug_types ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_types)
>>>> +  }
>>>> +  .debug_str ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_str)
>>>> +  }
>>>> +  .debug_line ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_line)
>>>> +    *(.debug_line.*)
>>>> +  }
>>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_line_str)
>>>> +  }
>>>> +  .debug_names ALIGN(4) (NOLOAD) : {
>>>> +    *(.debug_names)
>>>> +  }
>>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
>>>> +    *(.debug_frame)
>>>> +  }
>>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_loc)
>>>> +  }
>>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
>>>> +    *(.debug_loclists)
>>>> +  }
>>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
>>>> +    *(.debug_ranges)
>>>> +  }
>>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
>>>> +    *(.debug_rnglists)
>>>> +  }
>>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
>>>> +    *(.debug_addr)
>>>> +  }
>>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_aranges)
>>>> +  }
>>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_pubnames)
>>>> +  }
>>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
>>>> +    *(.debug_pubtypes)
>>>> +  }
>>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
>>>> +  __image_end__ = .;
>>>> +  .pad ALIGN(__section_alignment__) : {
>>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
>>>
>>> I think this is inside an ifdef EFI region, since this is DWARF info
>>> couldn't it also be present when building with EFI disabled?
>>
>> Of course (and it's not just "could" but "will"), yet the linker will
>> do fine (and perhaps even better) without when building ELF. Also
>> note that we'll be responsible for keeping the list of sections up-to-
>> date. The linker will recognize Dwarf sections by looking for a
>> .debug_ prefix. We can't use such here (or at least I'm not aware of
>> a suitable mechanism); .debug_* would mean munging together all the
>> different kinds of Dwarf sections. Hence by limiting the explicit
>> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
> 
> Right, so we will have to keep this list of debug_ sections updated
> manually if/when more of those appear as part of DWARF updates?

Yes.

> Do we have a way to get some kind of warning or error when a new
> section not explicitly handled here appears?

ld 2.37 will start warning about such sections, as they'd land at
VA 0 and hence below image base.

> Instead of adding DWARF debug info to the xen.efi binary, is there a
> way to translate the DWARF from the ELF build into the native debug
> format for PE/COFF?

I'm unaware of a single, "native" debug format (Dwarf also isn't
specifically tied to ELF). I further don't think all of the Dwarf
bits could reasonably be expressed in another debug format.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 15:56:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 15:56:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114876.219003 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZFD9-00078i-Nb; Wed, 21 Apr 2021 15:56:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114876.219003; Wed, 21 Apr 2021 15:56: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 1lZFD9-00078b-KT; Wed, 21 Apr 2021 15:56:19 +0000
Received: by outflank-mailman (input) for mailman id 114876;
 Wed, 21 Apr 2021 15:56: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 1lZFD8-00078W-1b
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 15:56: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 1lZFD5-0002q1-9k; Wed, 21 Apr 2021 15:56:15 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZFD4-0004D5-Vj; Wed, 21 Apr 2021 15: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=4P4eHH7St1ljHqguZmGyBDps9m2r7Ig+Iau7pTta8Y8=; b=OStE9TUtzUJMcP5BDTkIk825Nf
	oLtokitnrNfUhcPr+bImmVgY8XH9+X5XGY8Xhaz25JDwf9K1+dNXnINHPBZPbBSwQPfkQzUEBtHnw
	vcW4/QZCyNpkdX3mSpIUpWyo/6OjnS1c8XlVeASi4jGc8s7geB7xLAgKf4IEZpPpHdOY=;
Subject: Re: Ping: [PATCH v5 0/6] evtchn: (not so) recent XSAs follow-on
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@eu.citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <306e62e8-9070-2db9-c959-858465c50c1d@suse.com>
 <d29fa89b-ea0a-bdbd-04c9-02eff0854d47@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <40e90456-90dc-7932-68ec-6f4d0941999f@xen.org>
Date: Wed, 21 Apr 2021 16:56:13 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <d29fa89b-ea0a-bdbd-04c9-02eff0854d47@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 21/04/2021 16:23, Jan Beulich wrote:
> On 27.01.2021 09:13, Jan Beulich wrote:
>> These are grouped into a series largely because of their origin,
>> not so much because there are (heavy) dependencies among them.
>> The main change from v4 is the dropping of the two patches trying
>> to do away with the double event lock acquires in interdomain
>> channel handling. See also the individual patches.
>>
>> 1: use per-channel lock where possible
>> 2: convert domain event lock to an r/w one
>> 3: slightly defer lock acquire where possible
>> 4: add helper for port_is_valid() + evtchn_from_port()
>> 5: type adjustments
>> 6: drop acquiring of per-channel lock from send_guest_{global,vcpu}_virq()
> 
> Only patch 4 here has got an ack so far - may I ask for clear feedback
> as to at least some of these being acceptable (I can see the last one
> being controversial, and if this was the only one left I probably
> wouldn't even ping, despite thinking that it helps reduce unecessary
> overhead).

I left feedback for the series one the previous version (see [1]). It 
would have been nice is if it was mentionned somewhere as this is still 
unresolved.

The locking in the event channel is already quite fragile (see recent 
XSAs, follow-up bugs...). Even if the pattern is used somewhere (as you 
suggested), I don't think it is good idea to pertain it.

To be clear, I am not saying I don't care about performance. Instead I 
am trying to find a trade off between code maintenability and 
performance. So far, I didn't see any data justifying that the extra 
performance is worth the risk of making a code more fragile.

Cheers,

[1] <3c393170-09f9-6d31-c227-b599f8769e35@xen.org>

> 
> Jan
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 16:01:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 16:01:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114881.219016 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZFHw-00006b-As; Wed, 21 Apr 2021 16:01:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114881.219016; Wed, 21 Apr 2021 16:01: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 1lZFHw-00006U-7p; Wed, 21 Apr 2021 16:01:16 +0000
Received: by outflank-mailman (input) for mailman id 114881;
 Wed, 21 Apr 2021 16:01: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 1lZFHu-00006P-Kj
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 16:01: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 1lZFHt-0003Sm-IJ; Wed, 21 Apr 2021 16:01:13 +0000
Received: from [54.239.6.187] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZFHt-0004j4-Ao; Wed, 21 Apr 2021 16: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=EPgZvzfKablW+4qSusQxEHmnHR6eBF3jPK4qYnAZ9dw=; b=udhsbI2OC43rGzI9ssWHDHmkTe
	AwLhvxmSAczO/yvnVX/bNvpsAUn4xqNMuwjtxS1DyGnGbCJO5mamQTvD469GYJwxYKCYfe+Lf3jWD
	YH+aT7e+ePdlN2p2dVBo8G2JnnP60sZjUfjP64Tx2YtWsFmKLF+WTlFVdfRdvs+zjm4U=;
Subject: Re: [PATCH 7/9] arm/time,vtimer: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-8-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <1f4788b6-d74a-f5e7-1bb0-5c25c126f171@xen.org>
Date: Wed, 21 Apr 2021 17:01:11 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-8-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify type of vtimer structure's member: ctl to register_t.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
>   xen/arch/arm/time.c          | 28 ++++++++++++++--------------
>   xen/arch/arm/vtimer.c        | 10 +++++-----
>   xen/include/asm-arm/domain.h |  2 +-
>   3 files changed, 20 insertions(+), 20 deletions(-)
> 
> diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
> index b0021c2c69..e6c96eb90c 100644
> --- a/xen/arch/arm/time.c
> +++ b/xen/arch/arm/time.c
> @@ -145,7 +145,7 @@ void __init preinit_xen_time(void)
>           preinit_acpi_xen_time();
>   
>       if ( !cpu_khz )
> -        cpu_khz = READ_SYSREG32(CNTFRQ_EL0) / 1000;
> +        cpu_khz = (unsigned long)(READ_SYSREG(CNTFRQ_EL0) / 1000);

 From the Arm Arm (DDI 0486 F.c), only the lower 32-bit represents the 
clock frequency. The rest are RES0 (IOW can have a different meaning in 
the future). So I think you want to mask it.

>   
>   static bool vtimer_cntp_ctl(struct cpu_user_regs *regs, uint32_t *r, bool read)
> @@ -347,7 +347,7 @@ bool vtimer_emulate(struct cpu_user_regs *regs, union hsr hsr)
>   }
>   
>   static void vtimer_update_irq(struct vcpu *v, struct vtimer *vtimer,
> -                              uint32_t vtimer_ctl)
> +                              register_t vtimer_ctl)
>   {
>       bool level;
>   
> @@ -389,7 +389,7 @@ void vtimer_update_irqs(struct vcpu *v)
>        * but this requires reworking the arch timer to implement this.
>        */
>       vtimer_update_irq(v, &v->arch.virt_timer,
> -                      READ_SYSREG32(CNTV_CTL_EL0) & ~CNTx_CTL_MASK);
> +                      READ_SYSREG(CNTV_CTL_EL0) & ~CNTx_CTL_MASK);

AFAICT, CNTx_CTL_MASK is an unsigned int. This will not only mask IMASK 
but also the bits 32-63 for Armv8.

So I think you want to switch CTNx_CTL_MASK to return an unsigned long 
and explain it in the commit message.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 16:42:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 16:42:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114896.219033 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZFw2-00043Q-IY; Wed, 21 Apr 2021 16:42:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114896.219033; Wed, 21 Apr 2021 16:42: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 1lZFw2-00043J-Fa; Wed, 21 Apr 2021 16:42:42 +0000
Received: by outflank-mailman (input) for mailman id 114896;
 Wed, 21 Apr 2021 16:42:40 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7+nN=JS=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lZFw0-00043E-GC
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 16:42:40 +0000
Received: from mail-wm1-f53.google.com (unknown [209.85.128.53])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4f7c3aad-da0c-423d-8a09-c049f02782bd;
 Wed, 21 Apr 2021 16:42:39 +0000 (UTC)
Received: by mail-wm1-f53.google.com with SMTP id y204so21161133wmg.2
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 09:42:39 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id c16sm3520490wrm.93.2021.04.21.09.42.38
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 21 Apr 2021 09:42: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: 4f7c3aad-da0c-423d-8a09-c049f02782bd
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:content-transfer-encoding
         :in-reply-to;
        bh=0YpwlqFkcdBa5ITQPtCb0MJqzgFpJOQmRCg3NbwtzEM=;
        b=rb8IX8qe+MnzQOEkjg2rWqD72QWaz5ak0UAInZwA1LQFbiRKY8NrxehoAk0DlzcBUs
         r5JQ6A2rmlokbBzRPOAdVkuJeEq1B9950K6NlBqnpslhpp9ytlhbr1zm08OSMoGoMP4k
         ttQU2DOHfi1gIEIjz2vzMpCKLcYXS7w1tx/Bz5HuYEciF7KSCDAbkvBBoNKfqm5DBj3f
         AR1L50uZUdcCUV9C2CUxV71vT/nHQ880KYkP5Jtm+PUVdro4BsT3vZJqdf5OYKskn7sw
         cGHMMo2OtvCirt+Z5ceXXovZdF2If1JgbL8jSc/hISxudvd3G8mYIbmR1pm2feW9nwTO
         ZIqQ==
X-Gm-Message-State: AOAM532XCn4PgcNG29YzJnNuFlqBUMFReQHxENzINycdc2/dpXwuCuqJ
	sKR6FKn2Eopgw3PuNE3Iw94=
X-Google-Smtp-Source: ABdhPJzfCzALqWYTfpbCZ/HzaKebSjy2Bq7LbG/eat2xye2WRZavkjmFCIf5IG3ZfTLZ3J8/06l9YQ==
X-Received: by 2002:a1c:b6c4:: with SMTP id g187mr10548787wmf.119.1619023358982;
        Wed, 21 Apr 2021 09:42:38 -0700 (PDT)
Date: Wed, 21 Apr 2021 16:42:37 +0000
From: Wei Liu <wl@xen.org>
To: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Cc: Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <20210421164237.im72bpddu52oruzw@liuwe-devbox-debian-v2>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <20210421102239.tlesqrxsplk5vthm@liuwe-devbox-debian-v2>
 <YIAL+bTKvPsAfM2a@Air-de-Roger>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <YIAL+bTKvPsAfM2a@Air-de-Roger>

On Wed, Apr 21, 2021 at 01:26:49PM +0200, Roger Pau Monn wrote:
> On Wed, Apr 21, 2021 at 10:22:39AM +0000, Wei Liu wrote:
> > On Tue, Apr 13, 2021 at 04:01:33PM +0200, Roger Pau Monne wrote:
> > > Introduce a helper to obtain a compatible cpu policy based on two
> > > input cpu policies. Currently this is done by and'ing all CPUID leaves
> > > and MSR entries, except for MSR_ARCH_CAPABILITIES which has the RSBA
> > > bit or'ed.
> > > 
> > 
> > I thought canonical source for compatibility was to be put into the
> > hypervisor, thus all this functionality would be in the hypervisor. Am I
> > misremembering?
> 
> Andrew said something similar on v1, but I'm not able to figure how
> this would be used by the hypervisor.
> 
> It's my understating that the toolstack will attempt to generate a CPU
> policy and forward it to the hypervisor, which will either accept or
> reject it based on the capabilities of the system. I'm not sure I see
> why we would need to give the hypervisor two policies in order to
> generate a resulting compatible one - it should all be done by the
> toolstack AFAICT.
> 
> If there's a use case for this being in the hypervisor I'm happy to
> add it there, but so far I haven't been able to come up with one
> myself, and hence I don't see the need to make the code available.

I have no opinion here. Just wanted to get on the same page.

Thanks for the explanation.

Wei.

> 
> Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 19:02:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 19:02:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114914.219052 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZI7U-0000mP-OR; Wed, 21 Apr 2021 19:02:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114914.219052; Wed, 21 Apr 2021 19: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 1lZI7U-0000mI-LM; Wed, 21 Apr 2021 19:02:40 +0000
Received: by outflank-mailman (input) for mailman id 114914;
 Wed, 21 Apr 2021 19:02:40 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lZI7U-0000mD-6T
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 19:02:40 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZI7S-0006Su-KC; Wed, 21 Apr 2021 19:02:38 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZI7S-0005z7-3J; Wed, 21 Apr 2021 19:02: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=zbYb2MMFQda8mBCHgXMTPStoVFtw59LQcqjF0a13878=; b=peqOqCknMb9pr11dv064Fy3KIX
	2KHenC8c4u5fAfhAexHbVrmo64bWNCK3dSZ862RZy85H1VsTOY3zVd/W9Bx4MkdDcYu98WlTCKXPu
	YeG98YGuG8F4L6GoyLOWnEWAcYd9vWc8vWfLoMW1ffjo8RT9YSQhNvfn44tHOB+7XHw8=;
Subject: Re: [PATCH 8/9] arm: Change type of hsr to register_t
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-9-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <ce44efef-db10-b000-3a11-46fbfdf4ccbb@xen.org>
Date: Wed, 21 Apr 2021 20:02:36 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-9-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify type of hsr to register_t.
> When on AArch64 add 32bit RES0 members to structures inside hsr union.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
>   xen/arch/arm/arm64/entry.S            |  2 +-
>   xen/arch/arm/arm64/traps.c            |  2 +-
>   xen/arch/arm/arm64/vsysreg.c          |  3 ++-
>   xen/arch/arm/traps.c                  | 20 +++++++++-------
>   xen/arch/arm/vcpreg.c                 | 13 +++++-----
>   xen/include/asm-arm/arm32/processor.h |  2 +-
>   xen/include/asm-arm/arm64/processor.h |  5 ++--
>   xen/include/asm-arm/hsr.h             | 34 ++++++++++++++++++++++++++-
>   8 files changed, 59 insertions(+), 22 deletions(-)
> 
> diff --git a/xen/arch/arm/arm64/entry.S b/xen/arch/arm/arm64/entry.S
> index ab9a65fc14..218b063c97 100644
> --- a/xen/arch/arm/arm64/entry.S
> +++ b/xen/arch/arm/arm64/entry.S
> @@ -155,7 +155,7 @@
>           add     x21, sp, #UREGS_CPSR
>           mrs     x22, spsr_el2
>           mrs     x23, esr_el2
> -        stp     w22, w23, [x21]
> +        stp     x22, x23, [x21]
>   
>           .endm
>   
> diff --git a/xen/arch/arm/arm64/traps.c b/xen/arch/arm/arm64/traps.c
> index babfc1d884..9113a15c7a 100644
> --- a/xen/arch/arm/arm64/traps.c
> +++ b/xen/arch/arm/arm64/traps.c
> @@ -36,7 +36,7 @@ void do_bad_mode(struct cpu_user_regs *regs, int reason)
>       union hsr hsr = { .bits = regs->hsr };
>   
>       printk("Bad mode in %s handler detected\n", handler[reason]);
> -    printk("ESR=0x%08"PRIx32":  EC=%"PRIx32", IL=%"PRIx32", ISS=%"PRIx32"\n",
> +    printk("ESR=%#"PRIregister":  EC=%"PRIx32", IL=%"PRIx32", ISS=%"PRIx32"\n",
>              hsr.bits, hsr.ec, hsr.len, hsr.iss);
>   
>       local_irq_disable();
> diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c
> index 41f18612c6..3c10d464e7 100644
> --- a/xen/arch/arm/arm64/vsysreg.c
> +++ b/xen/arch/arm/arm64/vsysreg.c
> @@ -368,7 +368,8 @@ void do_sysreg(struct cpu_user_regs *regs,
>                        sysreg.op2,
>                        sysreg.read ? "=>" : "<=",
>                        sysreg.reg, regs->pc);
> -            gdprintk(XENLOG_ERR, "unhandled 64-bit sysreg access %#x\n",
> +            gdprintk(XENLOG_ERR, "unhandled 64-bit sysreg access"
> +                     " %#"PRIregister"\n",
>                        hsr.bits & HSR_SYSREG_REGS_MASK);
>               inject_undef_exception(regs, hsr);
>               return;
> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
> index e7384381cc..db15a2c647 100644
> --- a/xen/arch/arm/traps.c
> +++ b/xen/arch/arm/traps.c
> @@ -546,7 +546,7 @@ void inject_undef64_exception(struct cpu_user_regs *regs, int instr_len)
>           PSR_IRQ_MASK | PSR_DBG_MASK;
>       regs->pc = handler;
>   
> -    WRITE_SYSREG32(esr.bits, ESR_EL1);
> +    WRITE_SYSREG(esr.bits, ESR_EL1);
>   }
>   
>   /* Inject an abort exception into a 64 bit guest */
> @@ -580,7 +580,7 @@ static void inject_abt64_exception(struct cpu_user_regs *regs,
>       regs->pc = handler;
>   
>       WRITE_SYSREG(addr, FAR_EL1);
> -    WRITE_SYSREG32(esr.bits, ESR_EL1);
> +    WRITE_SYSREG(esr.bits, ESR_EL1);
>   }
>   
>   static void inject_dabt64_exception(struct cpu_user_regs *regs,
> @@ -919,7 +919,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
>       printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
>       printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
>       printk("\n");
> -    printk("   ESR_EL2: %08"PRIx32"\n", regs->hsr);
> +    printk("   ESR_EL2: %"PRIregister"\n", regs->hsr);
>       printk(" HPFAR_EL2: %"PRIregister"\n", READ_SYSREG(HPFAR_EL2));
>   
>   #ifdef CONFIG_ARM_32
> @@ -2004,13 +2004,15 @@ static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs,
>   
>           break;
>       default:
> -        gprintk(XENLOG_WARNING, "Unsupported FSC: HSR=%#x DFSC=%#x\n",
> +        gprintk(XENLOG_WARNING, "Unsupported FSC:"
> +                " HSR=%#"PRIregister" DFSC=%#x\n",

Please don't split the message in two. This makes more difficult to grep 
bits of the message in the log.

Instead the code should be:

gprintk(XENLOG_WARNING,
         "mystring",
         ...);

For this case, we are tolerated to go past the 80 characters mark.

>                   hsr.bits, xabt.fsc);
>       }
>   
>   inject_abt:
> -    gdprintk(XENLOG_DEBUG, "HSR=0x%x pc=%#"PRIregister" gva=%#"PRIvaddr
> -             " gpa=%#"PRIpaddr"\n", hsr.bits, regs->pc, gva, gpa);
> +    gdprintk(XENLOG_DEBUG, "HSR=%#"PRIregister" pc=%#"PRIregister""
> +             " gva=%#"PRIvaddr" gpa=%#"PRIpaddr"\n",

Same here.

> +             hsr.bits, regs->pc, gva, gpa);
>       if ( is_data )
>           inject_dabt_exception(regs, gva, hsr.len);
>       else
> @@ -2204,7 +2206,8 @@ void do_trap_guest_sync(struct cpu_user_regs *regs)
>   
>       default:
>           gprintk(XENLOG_WARNING,
> -                "Unknown Guest Trap. HSR=0x%x EC=0x%x IL=%x Syndrome=0x%"PRIx32"\n",
> +                "Unknown Guest Trap. HSR=%#"PRIregister" EC=0x%x IL=%x"
> +                " Syndrome=0x%"PRIx32"\n",

Same here.

>                   hsr.bits, hsr.ec, hsr.len, hsr.iss);
>           inject_undef_exception(regs, hsr);
>       }
> @@ -2242,7 +2245,8 @@ void do_trap_hyp_sync(struct cpu_user_regs *regs)
>           break;
>       }
>       default:
> -        printk("Hypervisor Trap. HSR=0x%x EC=0x%x IL=%x Syndrome=0x%"PRIx32"\n",
> +        printk("Hypervisor Trap. HSR=%#"PRIregister" EC=0x%x IL=%x"
> +               " Syndrome=0x%"PRIx32"\n",

Same here.

>                  hsr.bits, hsr.ec, hsr.len, hsr.iss);
>           do_unexpected_trap("Hypervisor", regs);
>       }
> diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c
> index 55351fc087..c7f516ee0a 100644
> --- a/xen/arch/arm/vcpreg.c
> +++ b/xen/arch/arm/vcpreg.c
> @@ -385,7 +385,7 @@ void do_cp15_32(struct cpu_user_regs *regs, const union hsr hsr)
>                    "%s p15, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
>                    cp32.read ? "mrc" : "mcr",
>                    cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
> -        gdprintk(XENLOG_ERR, "unhandled 32-bit CP15 access %#x\n",
> +        gdprintk(XENLOG_ERR, "unhandled 32-bit CP15 access %#"PRIregister"\n",
>                    hsr.bits & HSR_CP32_REGS_MASK);
>           inject_undef_exception(regs, hsr);
>           return;
> @@ -454,7 +454,8 @@ void do_cp15_64(struct cpu_user_regs *regs, const union hsr hsr)
>                        "%s p15, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
>                        cp64.read ? "mrrc" : "mcrr",
>                        cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
> -            gdprintk(XENLOG_ERR, "unhandled 64-bit CP15 access %#x\n",
> +            gdprintk(XENLOG_ERR, "unhandled 64-bit CP15 access" > +                     " %#"PRIregister"\n",

Same here.

>                        hsr.bits & HSR_CP64_REGS_MASK);
>               inject_undef_exception(regs, hsr);
>               return;
> @@ -585,7 +586,7 @@ void do_cp14_32(struct cpu_user_regs *regs, const union hsr hsr)
>                    "%s p14, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
>                     cp32.read ? "mrc" : "mcr",
>                     cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
> -        gdprintk(XENLOG_ERR, "unhandled 32-bit cp14 access %#x\n",
> +        gdprintk(XENLOG_ERR, "unhandled 32-bit cp14 access %#"PRIregister"\n",
>                    hsr.bits & HSR_CP32_REGS_MASK);
>           inject_undef_exception(regs, hsr);
>           return;
> @@ -627,7 +628,7 @@ void do_cp14_64(struct cpu_user_regs *regs, const union hsr hsr)
>                "%s p14, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
>                cp64.read ? "mrrc" : "mcrr",
>                cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
> -    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 access %#x\n",
> +    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 access %#"PRIregister"\n",
>                hsr.bits & HSR_CP64_REGS_MASK);
>       inject_undef_exception(regs, hsr);
>   }
> @@ -658,7 +659,7 @@ void do_cp14_dbg(struct cpu_user_regs *regs, const union hsr hsr)
>                "%s p14, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
>                cp64.read ? "mrrc" : "mcrr",
>                cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
> -    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 DBG access %#x\n",
> +    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 DBG access %#"PRIregister"\n",
>                hsr.bits & HSR_CP64_REGS_MASK);
>   
>       inject_undef_exception(regs, hsr);
> @@ -692,7 +693,7 @@ void do_cp10(struct cpu_user_regs *regs, const union hsr hsr)
>                    "%s p10, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
>                    cp32.read ? "mrc" : "mcr",
>                    cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
> -        gdprintk(XENLOG_ERR, "unhandled 32-bit CP10 access %#x\n",
> +        gdprintk(XENLOG_ERR, "unhandled 32-bit CP10 access %#"PRIregister"\n",
>                    hsr.bits & HSR_CP32_REGS_MASK);
>           inject_undef_exception(regs, hsr);
>           return;
> diff --git a/xen/include/asm-arm/arm32/processor.h b/xen/include/asm-arm/arm32/processor.h
> index 4e679f3273..395ce10692 100644
> --- a/xen/include/asm-arm/arm32/processor.h
> +++ b/xen/include/asm-arm/arm32/processor.h
> @@ -37,7 +37,7 @@ struct cpu_user_regs
>           uint32_t pc, pc32;
>       };
>       uint32_t cpsr; /* Return mode */
> -    uint32_t hsr;  /* Exception Syndrome */
> +    register_t hsr;  /* Exception Syndrome */

I would rather keep this one as uint32_t to stay consistent with the 
rest of the structure. If you still want to switch it, then please 
switch everything in cpu_user_regs.

>   
>       /* Outer guest frame only from here on... */
>   
> diff --git a/xen/include/asm-arm/arm64/processor.h b/xen/include/asm-arm/arm64/processor.h
> index 81dfc5e615..40f628d216 100644
> --- a/xen/include/asm-arm/arm64/processor.h
> +++ b/xen/include/asm-arm/arm64/processor.h
> @@ -64,8 +64,9 @@ struct cpu_user_regs
>       /* Return address and mode */
>       __DECL_REG(pc,           pc32);             /* ELR_EL2 */
>       uint32_t cpsr;                              /* SPSR_EL2 */

Above you use an STP instructions that will write 2 64-bit values: one 
in CPSR, the other in HSR.

So this wants to be switched to uint64_t. I guess you didn't notice any 
issue because there will thankfully be an implicit padding.

> -    uint32_t hsr;                               /* ESR_EL2 */
> +    register_t hsr;                             /* ESR_EL2 */

All the structure is using uint64_t rather than register_t. Could we do 
the same here?

>   > +    register_t pad1; /* Doubleword-align the user half of the frame */

May I asked, why the padding is moved here rather than kept below?

>       /* Outer guest frame only from here on... */
>   
>       union {
> @@ -73,8 +74,6 @@ struct cpu_user_regs
>           uint32_t spsr_svc;       /* AArch32 */
>       };
>   
> -    uint32_t pad1; /* Doubleword-align the user half of the frame */
> -

I think this deserves an explanation in the commit message. However, I 
believe this is going to corrupt spsr_fiq because we are writing a 
64-bit value to spsr_el1 (see the macro entry_guest in 
arch/arm/arm64/entry.S).

So the union likely want to be 64-bit.

>       /* AArch32 guests only */
>       uint32_t spsr_fiq, spsr_irq, spsr_und, spsr_abt;
>   
> diff --git a/xen/include/asm-arm/hsr.h b/xen/include/asm-arm/hsr.h
> index 29d4531f40..7424402c6e 100644
> --- a/xen/include/asm-arm/hsr.h
> +++ b/xen/include/asm-arm/hsr.h
> @@ -16,11 +16,14 @@ enum dabt_size {
>   };
>   
>   union hsr {
> -    uint32_t bits;
> +    register_t bits;
>       struct {
>           unsigned long iss:25;  /* Instruction Specific Syndrome */
>           unsigned long len:1;   /* Instruction length */
>           unsigned long ec:6;    /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif

Given that we don't define any useful, could we avoid the #ifdefery?

>       };
>   
>       /* Common to all conditional exception classes (0x0N, except 0x00). */
> @@ -30,6 +33,9 @@ union hsr {
>           unsigned long ccvalid:1;/* CC Valid */
>           unsigned long len:1;   /* Instruction length */
>           unsigned long ec:6;    /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } cond;
>   
>       struct hsr_wfi_wfe {
> @@ -39,6 +45,9 @@ union hsr {
>           unsigned long ccvalid:1;/* CC Valid */
>           unsigned long len:1;   /* Instruction length */
>           unsigned long ec:6;    /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } wfi_wfe;
>   
>       /* reg, reg0, reg1 are 4 bits on AArch32, the fifth bit is sbzp. */
> @@ -53,6 +62,9 @@ union hsr {
>           unsigned long ccvalid:1;/* CC Valid */
>           unsigned long len:1;   /* Instruction length */
>           unsigned long ec:6;    /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } cp32; /* HSR_EC_CP15_32, CP14_32, CP10 */
>   
>       struct hsr_cp64 {
> @@ -66,6 +78,9 @@ union hsr {
>           unsigned long ccvalid:1;/* CC Valid */
>           unsigned long len:1;    /* Instruction length */
>           unsigned long ec:6;     /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } cp64; /* HSR_EC_CP15_64, HSR_EC_CP14_64 */
>   
>        struct hsr_cp {
> @@ -77,6 +92,9 @@ union hsr {
>           unsigned long ccvalid:1;/* CC Valid */
>           unsigned long len:1;    /* Instruction length */
>           unsigned long ec:6;     /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } cp; /* HSR_EC_CP */
>   
>       /*
> @@ -94,6 +112,9 @@ union hsr {
>           unsigned long ccvalid:1;/* CC Valid */
>           unsigned long len:1;   /* Instruction length */
>           unsigned long ec:6;    /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } smc32; /* HSR_EC_SMC32 */
>   
>   #ifdef CONFIG_ARM_64
> @@ -108,6 +129,7 @@ union hsr {
>           unsigned long res0:3;
>           unsigned long len:1;    /* Instruction length */
>           unsigned long ec:6;
> +        unsigned long _res0:32;
>       } sysreg; /* HSR_EC_SYSREG */
>   #endif
>   
> @@ -121,6 +143,9 @@ union hsr {
>           unsigned long res2:14;
>           unsigned long len:1;   /* Instruction length */
>           unsigned long ec:6;    /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } iabt; /* HSR_EC_INSTR_ABORT_* */
>   
>       struct hsr_dabt {
> @@ -143,6 +168,9 @@ union hsr {
>           unsigned long valid:1; /* Syndrome Valid */
>           unsigned long len:1;   /* Instruction length */
>           unsigned long ec:6;    /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } dabt; /* HSR_EC_DATA_ABORT_* */
>   
>       /* Contain the common bits between DABT and IABT */
> @@ -156,6 +184,9 @@ union hsr {
>           unsigned long pad3:14;  /* Not common */
>           unsigned long len:1;    /* Instruction length */
>           unsigned long ec:6;     /* Exception Class */
> +#ifdef CONFIG_ARM_64
> +        unsigned long _res0:32;
> +#endif
>       } xabt;
>   
>   #ifdef CONFIG_ARM_64
> @@ -164,6 +195,7 @@ union hsr {
>           unsigned long res0:9;
>           unsigned long len:1;        /* Instruction length */
>           unsigned long ec:6;         /* Exception Class */
> +        unsigned long _res0:32;
>       } brk;
>   #endif
>   };
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 19:16:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 19:16:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114922.219064 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZIKx-00021m-6E; Wed, 21 Apr 2021 19:16:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114922.219064; Wed, 21 Apr 2021 19:16:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZIKx-00021f-1L; Wed, 21 Apr 2021 19:16:35 +0000
Received: by outflank-mailman (input) for mailman id 114922;
 Wed, 21 Apr 2021 19:16: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 1lZIKv-00021a-Uq
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 19:16: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 1lZIKu-0006hA-UZ; Wed, 21 Apr 2021 19:16:32 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZIKu-0006w9-No; Wed, 21 Apr 2021 19:16: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=32BVbG/QJhMWsZgHe2umlugE0bG0/Ew2dQKNY/udD68=; b=sIQkNfdZFzPxvonDuCYUFreZ32
	WFC5Yg2xnmc9yJwh4GLEy4psWwikMry94wnWrFRbjYCDzvc7X2AZqP0oGRmQj071xU/TNpLppGJ7t
	EwsCtMhyXUJzWGGVz9qGvH0bSIgryds+D2K5GuZGb5TV/OsdWCZlNJCMEcRP4aI59xaA=;
Subject: Re: [PATCH 9/9] xen/arm64: Remove READ/WRITE_SYSREG32 helper macros
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-10-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <c318c303-1187-3a64-833b-0684a2dc4312@xen.org>
Date: Wed, 21 Apr 2021 20:16:31 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210420070853.8918-10-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 20/04/2021 08:08, Michal Orzel wrote:
> AArch64 system registers are 64bit whereas AArch32 ones
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 sysregs have upper 32bit reserved
> it does not mean that they can't be widen in the future.

As a general comment, all your commit message contains information about 
the goal (which is great). But they don't go much in details about the 
actual changes. I have tried to point out where I think those details 
would be helpful.

> 
> As there are no other places in the code using READ/WRITE_SYSREG32,
> remove the helper macros.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
>   xen/arch/arm/vcpreg.c               | 16 ++++++++++++++++
>   xen/include/asm-arm/arm64/sysregs.h |  5 -----
>   2 files changed, 16 insertions(+), 5 deletions(-)
> 
> diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c
> index c7f516ee0a..6cb7f3108c 100644
> --- a/xen/arch/arm/vcpreg.c
> +++ b/xen/arch/arm/vcpreg.c
> @@ -48,6 +48,7 @@
>    */
>   
>   /* The name is passed from the upper macro to workaround macro expansion. */
> +#ifdef CONFIG_ARM_32
>   #define TVM_REG(sz, func, reg...)                                           \
>   static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
>   {                                                                           \
> @@ -61,6 +62,21 @@ static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
>                                                                               \
>       return true;                                                            \
>   }
> +#else /* CONFIG_ARM_64 */
> +#define TVM_REG(sz, func, reg...)                                           \
> +static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
> +{                                                                           \
> +    struct vcpu *v = current;                                               \
> +    bool cache_enabled = vcpu_has_cache_enabled(v);                         \
> +                                                                            \
> +    GUEST_BUG_ON(read);                                                     \
> +    WRITE_SYSREG(*r, reg);                                                  \
> +                                                                            \
> +    p2m_toggle_cache(v, cache_enabled);                                     \
> +                                                                            \
> +    return true;                                                            \
> +}
> +#endif

It would be nice if this change can be explained in the commit message. 
However, I think we can avoid the duplication by aliasing TVM_REG32() to 
TVM_REG64() on Arm64.

>   
>   #define TVM_REG32(regname, xreg) TVM_REG(32, vreg_emulate_##regname, xreg)
>   #define TVM_REG64(regname, xreg) TVM_REG(64, vreg_emulate_##regname, xreg)
> diff --git a/xen/include/asm-arm/arm64/sysregs.h b/xen/include/asm-arm/arm64/sysregs.h
> index 077fd95fb7..83a1157ac4 100644
> --- a/xen/include/asm-arm/arm64/sysregs.h
> +++ b/xen/include/asm-arm/arm64/sysregs.h
> @@ -86,11 +86,6 @@
>   #endif
>   
>   /* Access to system registers */
> -
> -#define READ_SYSREG32(name) ((uint32_t)READ_SYSREG64(name))
> -
> -#define WRITE_SYSREG32(v, name) WRITE_SYSREG64((uint64_t)v, name)
> -
>   #define WRITE_SYSREG64(v, name) do {                    \
>       uint64_t _r = v;                                    \
>       asm volatile("msr "__stringify(name)", %0" : : "r" (_r));       \
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 19:20:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 19:20:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114927.219076 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZIP6-0002rV-M0; Wed, 21 Apr 2021 19:20:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114927.219076; Wed, 21 Apr 2021 19:20:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZIP6-0002rO-Ix; Wed, 21 Apr 2021 19:20:52 +0000
Received: by outflank-mailman (input) for mailman id 114927;
 Wed, 21 Apr 2021 19:20: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 1lZIP5-0002rJ-DP
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 19:20: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 1lZIP3-0006k1-E7; Wed, 21 Apr 2021 19:20:49 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZIP3-00079T-7a; Wed, 21 Apr 2021 19:20: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=k6RYQ/9INavHSA4Nf7QiFbZSgiKEs2m1EampdOupvwQ=; b=pi5CIzUOq9YoFI6pBBjw5npSq5
	ZVlz0CadF50njkNF0zYy8/E8hBfNQhsSpN8ZTQeSZOQC2Dd+Q9LQQsqTCJ19W2yyr8lQaAuTIiwjX
	F7z4CrX8elP4fsYQ0WTjodqlvWh92VrPkjX2tPIkleHPL+DSwQNBjCY4hRah7+fEMQ60=;
Subject: Re: [PATCH v2 17/20] lib: move/rename strnicmp() to strncasecmp()
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
 <1fab1400-9bb5-f9e8-0f7f-3213afc0ad92@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <ba017001-98eb-875e-a868-cbbdb26edd77@xen.org>
Date: Wed, 21 Apr 2021 20:20:47 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <1fab1400-9bb5-f9e8-0f7f-3213afc0ad92@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 21/04/2021 15:25, Jan Beulich wrote:
> While moving the implementation, also rename it to match strcasecmp(),
> allowing the similar use of a compiler builting in this case as well.

NIT: I think you meant builtin here.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 19:21:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 19:21:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114931.219087 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZIPv-0002z6-V7; Wed, 21 Apr 2021 19:21:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114931.219087; Wed, 21 Apr 2021 19: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 1lZIPv-0002yz-S5; Wed, 21 Apr 2021 19:21:43 +0000
Received: by outflank-mailman (input) for mailman id 114931;
 Wed, 21 Apr 2021 19:21: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 1lZIPu-0002yr-9l
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 19:21: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 1lZIPs-0006mH-LV; Wed, 21 Apr 2021 19:21:40 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZIPs-0007Bg-Cs; Wed, 21 Apr 2021 19:21: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=nZHotNLQ/2S1tWisMc0b/4oDLOsC4TRLJX7E21ZfQxY=; b=Y38X0O5ZBqWxrshXhbVz9JKoQ+
	ZfUG2oDDabz3rd4PIwxF2XtVa1xQ/9PoBO/bK4Ivm7k8YcDzy/sJJDcmE+IR3pADqCFwO2TNZAs6m
	2VIqjynreo4HgqHLBxAzNYugG3CUVsWp3AA2Ao2FBkVfSX8q6Q7t7kVM2FWijz0gaTnA=;
Subject: Re: [PATCH v2 00/20] further population of xen/lib/
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <15513275-e7d2-e59b-739d-f4075ad797df@xen.org>
Date: Wed, 21 Apr 2021 20:21:38 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <3ae091ce-6f6c-3ec6-abd3-4490239a707f@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 21/04/2021 15:15, Jan Beulich wrote:
> This is to dissolve / move xen/common/string.c. One benefit of moving
> these functions into an archive is that we can drop some of the related
> __HAVE_ARCH_* #define-s: By living in an archive, the per-arch functions
> will preempt any loading of the respective functions (objects) from the
> archive. (Down the road we may want to move the per-arch functions into
> archives as well, at which point the per-arch archive(s) would need to
> be specified ahead of the common one(s) to the linker.)
> 
> The only change in v2 is adjustment to all of the commit messages.
> 
> 01: lib: move memset()
> 02: lib: move memcpy()
> 03: lib: move memmove()
> 04: lib: move memcmp()
> 05: lib: move memchr()
> 06: lib: move memchr_inv()
> 07: lib: move strlen()
> 08: lib: move strnlen()
> 09: lib: move strcmp()
> 10: lib: move strncmp()
> 11: lib: move strlcpy()
> 12: lib: move strlcat()
> 13: lib: move strchr()
> 14: lib: move strrchr()
> 15: lib: move strstr()
> 16: lib: move strcasecmp()
> 17: lib: move/rename strnicmp() to strncasecmp()
> 18: lib: move strspn()
> 19: lib: move strpbrk()
> 20: lib: move strsep()

 From the series:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 19:52:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 19:52:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114940.219105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZIty-0005xw-IX; Wed, 21 Apr 2021 19:52:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114940.219105; Wed, 21 Apr 2021 19: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 1lZIty-0005xp-Fc; Wed, 21 Apr 2021 19:52:46 +0000
Received: by outflank-mailman (input) for mailman id 114940;
 Wed, 21 Apr 2021 19:52: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 1lZItx-0005xk-I7
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 19:52: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 1lZItv-0007Gr-Kt; Wed, 21 Apr 2021 19:52:43 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZItv-00015Y-BU; Wed, 21 Apr 2021 19:52: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=diCTTYxIlC0gKnHznR2F6gUqkZGyW/gzx+1PjTLAaAM=; b=h5DIK7z6Zost4jgsncWVBQMljz
	6vzgGwkJxvY0V9Qo4E4aShaB/ORpbo0n0m/87c1gR2xF/qAyiT+CHCacKpnIRrQ9g/Li1wWrc94oz
	7HRj210/OVgYGRvdHQNcT0bq34zx33gRCRrnWcAjCRYVqg9asr1j240MVoo+X97xqJfQ=;
Subject: Re: [PATCH v3] evtchn/fifo: don't enforce higher than necessary
 alignment
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@eu.citrix.com>,
 Ian Jackson <ian.jackson@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <2a08aa31-fdbf-89ee-cd49-813f818b709a@suse.com>
 <e6ce03a5-cfec-42ea-91c4-b51849e2f299@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <69766ecb-d234-eebb-9b31-1533389a502e@xen.org>
Date: Wed, 21 Apr 2021 20:52:41 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <e6ce03a5-cfec-42ea-91c4-b51849e2f299@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi,

On 21/04/2021 15:36, Jan Beulich wrote:
> Neither the code nor the original commit provide any justification for
> the need to 8-byte align the struct in all cases. Enforce just as much
> alignment as the structure actually needs - 4 bytes - by using alignof()
> instead of a literal number.

I had another fresh look today at this patch. The 32-bit padding is 
right after the field 'ready'.

I can't for sure tell how the second half is going to ever be used and how.

However, one possibility would be to extend the field 'ready' to 64-bit. 
With the current code, we could easily make a single 64-bit access 
without having to know whether the guest is able to interpret the top half.

With your approach, we may need to have different path depending on the 
padding and ensure the new extension cannot be enabled if the padding is 
4-byte. Otherwise, the atomicity would be broken.

> While relaxation of the requirements is intended here, the primary goal
> is to simply get rid of the hard coded number as well its lack of
> connection to the structure that is is meant to apply to.

Based on what I wrote above, I think the relaxation should not be done 
to give us more flexibility about possible extension to the structure.

Although, I would be worth documenting the reasoning in the code.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 20:29:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 20:29:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114945.219118 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZJTe-0000vD-F0; Wed, 21 Apr 2021 20:29:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114945.219118; Wed, 21 Apr 2021 20: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 1lZJTe-0000v6-BR; Wed, 21 Apr 2021 20:29:38 +0000
Received: by outflank-mailman (input) for mailman id 114945;
 Wed, 21 Apr 2021 20:29: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 1lZJTd-0000uy-LA; Wed, 21 Apr 2021 20:29: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 1lZJTd-0007z6-C5; Wed, 21 Apr 2021 20:29: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 1lZJTd-0003W2-57; Wed, 21 Apr 2021 20:29:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZJTd-000657-4c; Wed, 21 Apr 2021 20:29:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=6fXtDFiM7qXa3gbMW5v80Suuwad6uEb1oIr+Xx4ZLFk=; b=aPgmdiCKuORSo9TPxlqiRsgPvu
	ddH4Wm+jMWsxZw9/Kw3ls8YO+AcbnrTu+0dePxtkEykQJdVVjzXzIekM/lFdisZJyWcK4g9LRq6qC
	cz+Ro7dZwY9pwj8pOt/2qfn3528QpRP2kn8RwF18PuqQhHcCNhOq81ygzu5oam5Y93GM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161330-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161330: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 20:29:37 +0000

flight 161330 xen-4.12-testing real [real]
flight 161359 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161330/
http://logs.test-lab.xenproject.org/osstest/logs/161359/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-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-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   64 days
Failing since        160128  2021-03-18 14:36:18 Z   34 days   44 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   32 days   42 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 20:51:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 20:51:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114954.219133 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZJot-0003eJ-DU; Wed, 21 Apr 2021 20:51:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114954.219133; Wed, 21 Apr 2021 20: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 1lZJot-0003eC-AO; Wed, 21 Apr 2021 20:51:35 +0000
Received: by outflank-mailman (input) for mailman id 114954;
 Wed, 21 Apr 2021 20:51:34 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lZJos-0003e4-Bh; Wed, 21 Apr 2021 20:51:34 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lZJos-0008LS-4O; Wed, 21 Apr 2021 20:51:34 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lZJor-0004PN-ST; Wed, 21 Apr 2021 20:51:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZJor-0001Pj-S0; Wed, 21 Apr 2021 20:51: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=WqrgIbbK6x+oI4kFeX5wqcByCWCKBdCdaX8MkRcFpaw=; b=Cvbn7WXaGfqc+OdGzKPDfCjdf5
	IcSJsu5W1+9QT7ueF5na55aedlQ8X4o/jdtUlSunZgWpaUIvDM9eK822TKUFoxy8b0dn7zKqL9XeR
	ijSx/5znDky6Hj/bf6gmlt5H2czx3B2KXfdQYIf3MS+c0GLxgFvCl335aKEo/M4Kye4I=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161345-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161345: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=1c34211c22de28127a509edbf2cf2f44cb0d891e
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 20:51:33 +0000

flight 161345 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161345/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              1c34211c22de28127a509edbf2cf2f44cb0d891e
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  285 days
Failing since        151818  2020-07-11 04:18:52 Z  284 days  277 attempts
Testing same since   161311  2021-04-20 04:18:55 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 53283 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 21:28:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 21:28:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114964.219154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZKOQ-0006u8-EO; Wed, 21 Apr 2021 21:28:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114964.219154; Wed, 21 Apr 2021 21:28: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 1lZKOQ-0006u1-BT; Wed, 21 Apr 2021 21:28:18 +0000
Received: by outflank-mailman (input) for mailman id 114964;
 Wed, 21 Apr 2021 21:28:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jKSo=JS=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lZKOP-0006tw-VY
 for xen-devel@lists.xenproject.org; Wed, 21 Apr 2021 21:28:18 +0000
Received: from mail-lj1-x22b.google.com (unknown [2a00:1450:4864:20::22b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dd1f6e04-2d32-4b4c-81a7-bf5ac6e4cd6f;
 Wed, 21 Apr 2021 21:28:17 +0000 (UTC)
Received: by mail-lj1-x22b.google.com with SMTP id b38so8230922ljf.5
 for <xen-devel@lists.xenproject.org>; Wed, 21 Apr 2021 14:28: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: dd1f6e04-2d32-4b4c-81a7-bf5ac6e4cd6f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=NcQ3MaKZI+C5t8JuHnZPbALrZuaTQkyL9knMf5FxIqM=;
        b=WvEuMKEtsNE3h5auyd9kIjf0SQ7/DyN8u+59GhQasb9WsbHqobkeBgTf/6La9cQKaC
         w5dmB2cNJ3dBbBv0Zo0OKS1x1heGVEcemUbrwcLkW82xekXdAPi9C3s8oaMezUA3pWWy
         IYLudpMs6kzwr0qQT9ysCiGX5jlwsFw90cZHbKK969DzVgbAKyhAwVD3XbfiAgJTDqa6
         CFaAo7c4DjNWM+Nyt89Q850quck2LGDFKea1+qVWXdjyVodLfzpQ/647h/tbOPikLXXt
         tLwZ+6teAQSkm+uqLQ11OyR6IKtTX4F5czYJzTh7N8cbYl6mbf+bPJkFzVOnnx8qskr+
         Pw9g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=NcQ3MaKZI+C5t8JuHnZPbALrZuaTQkyL9knMf5FxIqM=;
        b=D2I+x7/MW7W2woeeRBYJbGMnnEvoo8QmtsPmb7J9w1nG5Wb5pQjnHkfQzBxUcYzbf/
         S23c3UK9iLCC4s9C527JeCvBp02IFYezdEuGlBAAQBtqvwni1pQixAWR3Ptm6bzR3o74
         mGKmIH8SdfiJZK1rDdpkNn9zbgkM1xoQ1MDLRMO7y2spG57A4nGtDOVNA99VSinQtTpM
         uQaer3qpyD4m2NMq2/0661drz7Z3eu6r/szFsf0F0S1LhDYmay6R4LczWAFo5ts07Frr
         ckTZk4MWQ15DaMz7A74zyrGILP/IRoBdtT4T4r7+8MHRLazpnxN+TRRNXCX842gKAfO2
         WlaA==
X-Gm-Message-State: AOAM532/sGPbAwUPSQJyGScwCAr3hFnDGoFIDxr3p9X6Z9CYxY3HYDTs
	W5cLlL4vAzqEt2Gn4qqjHlI499J3wxHY0WL969A=
X-Google-Smtp-Source: ABdhPJyeLUJcfOdW9S9miijm8sMq+EWrkKl7n+wJbTj5HSey3xhmSezDABlQJm7buR+rzT1Uj4bgUaF5SHayNcvWPpY=
X-Received: by 2002:a05:651c:c4:: with SMTP id 4mr160513ljr.415.1619040496007;
 Wed, 21 Apr 2021 14:28:16 -0700 (PDT)
MIME-Version: 1.0
References: <cover.1614734296.git.rosbrookn@ainfosec.com> <24639.23378.722148.653250@mariner.uk.xensource.com>
 <YD+SCKyagzddny1t@FED-nrosbr-BE.crux.rad.ainfosec.com>
In-Reply-To: <YD+SCKyagzddny1t@FED-nrosbr-BE.crux.rad.ainfosec.com>
From: Nick Rosbrook <rosbrookn@gmail.com>
Date: Wed, 21 Apr 2021 17:28:04 -0400
Message-ID: <CAEBZRScuFC+T2W3O-kSnK8b942adyN21-_kgehyqr3zEdQ0+sg@mail.gmail.com>
Subject: Re: [RFC v2 0/7] add function support to IDL
To: Ian Jackson <iwj@xenproject.org>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, 
	George Dunlap <george.dunlap@citrix.com>, Nick Rosbrook <rosbrookn@ainfosec.com>, Wei Liu <wl@xen.org>, 
	Anthony PERARD <anthony.perard@citrix.com>
Content-Type: text/plain; charset="UTF-8"

On Wed, Mar 3, 2021 at 8:41 AM Nick Rosbrook <rosbrookn@gmail.com> wrote:
>
> On Wed, Mar 03, 2021 at 09:48:02AM +0000, Ian Jackson wrote:
> > Nick Rosbrook writes ("[RFC v2 0/7] add function support to IDL"):
> > > At a Xen Summit design session for the golang bindings (see [1]), we
> > > agreed that it would be beneficial to expand the libxl IDL with function
> > > support. In addition to benefiting libxl itself, this would allow other
> > > language bindings to easily generate function wrappers.
> > >
> > > The first version of this RFC is quite old [1]. I did address comments
> > > on the original RFC, but also expanded the scope a bit. As a way to
> > > evaluate function support, I worked on using this addition to the IDL to
> > > generate device add/remove/destroy functions, and removing the
> > > corresponding macros in libxl_internal.h. However, I stopped short of
> > > actually completing a build with this in place, as I thought it made
> > > sense to get feedback on the idea before working on the next step.
> >
> > This is exciting!  I hope to find time to look at it, but I'm the
> > release manager for Xen 4.15 and that's taking most of my time right
> > now.
>
> Of course, I understand. Thank you for expressing interest, I look
> forward to hearing your thoughts when time permits.
>
Hi,

Just thought I would send a ping to see if anyone has time to review.

Thanks,
NR


From xen-devel-bounces@lists.xenproject.org Wed Apr 21 23:20:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 21 Apr 2021 23:20:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114972.219172 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZM8H-0000fr-Ou; Wed, 21 Apr 2021 23:19:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114972.219172; Wed, 21 Apr 2021 23: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 1lZM8H-0000fk-L2; Wed, 21 Apr 2021 23:19:45 +0000
Received: by outflank-mailman (input) for mailman id 114972;
 Wed, 21 Apr 2021 23:19: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 1lZM8G-0000fc-Ak; Wed, 21 Apr 2021 23:19: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 1lZM8G-0002HJ-3F; Wed, 21 Apr 2021 23:19: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 1lZM8F-0006MU-Mf; Wed, 21 Apr 2021 23:19:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZM8F-00014c-M9; Wed, 21 Apr 2021 23:19: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=hJ0zDJcR5tuZzZpevkBZgbMEvj4mzA9J7V2r8O5ZXEU=; b=2QYhKsgsOwx/Ds7n+vWqQ0y+Ah
	NEK2pGOv6fAc1WMTfLgj62dIWPFRIUVSf2ihgT+tqUR9aLjZqgGhjY3xYrrB9dPuiiuLaC0bHTOmb
	eIIozmMvzwGAtxN4mxwgD3Ady66CV0m4E7taiss5wTWrHxomHTzgW3/KusVk3HpblWtc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161334-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161334: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=bac9b87bd208e1d5adde7d7ba2634f957c22012c
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 21 Apr 2021 23:19:43 +0000

flight 161334 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161334/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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

version targeted for testing:
 qemuu                bac9b87bd208e1d5adde7d7ba2634f957c22012c
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  244 days
Failing since        152659  2020-08-21 14:07:39 Z  243 days  449 attempts
Testing same since   161334  2021-04-20 16:38:26 Z    1 days    1 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142964 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 03:55:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 03:55:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.114991.219205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZQQc-0000By-5Y; Thu, 22 Apr 2021 03:54:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 114991.219205; Thu, 22 Apr 2021 03: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 1lZQQb-0000Bp-UH; Thu, 22 Apr 2021 03:54:57 +0000
Received: by outflank-mailman (input) for mailman id 114991;
 Thu, 22 Apr 2021 03:54: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 1lZQQa-0000Bh-4Z; Thu, 22 Apr 2021 03:54: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 1lZQQZ-0004b6-QK; Thu, 22 Apr 2021 03:54: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 1lZQQZ-00017L-Gs; Thu, 22 Apr 2021 03:54:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZQQZ-0001qj-GN; Thu, 22 Apr 2021 03: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=bfObv2V7EPeDkI9ld2kSJ0Lnv+vcievaKh440j+tsyw=; b=ZEujRZeEMESudtd/ukegQnQ/Zc
	zqa0t/HzDw/NPY6gewzFwJ+QO0WIhTwiHc3EF7V2kQtxVjVW5HTgXcEHen4xy8ZWx9xN0kbEZaKpw
	UrDeNT+GcAzhOZOh6EfspVG2mCsudzuSOHx8XPgFN4kJWIZ2FJ1ChnZaTrMlAcHAFdpc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161340-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161340: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw: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-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
X-Osstest-Versions-This:
    xen=9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
X-Osstest-Versions-That:
    xen=a8c532be6a44c7faa54ac777a717f4aa65e3a806
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 03:54:55 +0000

flight 161340 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161340/

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 161317
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161317
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161317
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161317
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161317
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161317
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161317
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161317
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161317
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161317
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161317
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-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-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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

version targeted for testing:
 xen                  9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
baseline version:
 xen                  a8c532be6a44c7faa54ac777a717f4aa65e3a806

Last test of basis   161317  2021-04-20 08:13:00 Z    1 days
Testing same since   161340  2021-04-20 22:38:12 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Rahul Singh <rahul.singh@arm.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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   a8c532be6a..9f6cd49837  9f6cd4983715cb31f0ea540e6bbb63f799a35d8a -> master


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 06:15:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 06:15:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115005.219250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZScI-0005Zn-HZ; Thu, 22 Apr 2021 06:15:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115005.219250; Thu, 22 Apr 2021 06: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 1lZScI-0005Zg-DV; Thu, 22 Apr 2021 06:15:10 +0000
Received: by outflank-mailman (input) for mailman id 115005;
 Thu, 22 Apr 2021 06:15:09 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lZScH-0005ZY-Bw; Thu, 22 Apr 2021 06:15:09 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lZScH-0007PL-5c; Thu, 22 Apr 2021 06:15:09 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lZScG-0000Lk-U4; Thu, 22 Apr 2021 06:15:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZScG-0000oZ-Tc; Thu, 22 Apr 2021 06:15:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=tAWa/JFjfNNa8ylOmyZpqgKHemB4C9OUzwArQvOY1Xg=; b=vaGPl1sCuXP0VmgeZ2yfz/yJ9V
	ysM95DfRCqOXJKJQMvKyYkxoSgJZEAZ5pZZEZvWnoBAFjvJzdIfGNJpHVDKcPZ+I9vwA8IIrHkJzD
	RkKLdIgx6/KEi1C2B2DssaR2mEjvxUYiFyfNGcQwPac1hNZUBSCnZEF7byKCXt/C48rw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161343-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161343: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=1fe5501ba1abf2b7e78295df73675423bd6899a0
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 06:15:08 +0000

flight 161343 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161343/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                1fe5501ba1abf2b7e78295df73675423bd6899a0
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  264 days
Failing since        152366  2020-08-01 20:49:34 Z  263 days  442 attempts
Testing same since   161343  2021-04-21 01:56:00 Z    1 days    1 attempts

------------------------------------------------------------
5354 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1329398 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:20:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:20:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115019.219283 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTcy-0002pd-0o; Thu, 22 Apr 2021 07:19:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115019.219283; Thu, 22 Apr 2021 07:19: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 1lZTcx-0002pU-Tx; Thu, 22 Apr 2021 07:19:55 +0000
Received: by outflank-mailman (input) for mailman id 115019;
 Thu, 22 Apr 2021 07:19:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Z8K=JT=bombadil.srs.infradead.org=batv+ccca8c562e79e8576e72+6451+infradead.org+hch@srs-us1.protection.inumbo.net>)
 id 1lZTcw-0002oJ-CS
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:19:54 +0000
Received: from bombadil.infradead.org (unknown [2607:7c80:54:e::133])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c3f0abab-4421-45c1-a115-b0ee4681c490;
 Thu, 22 Apr 2021 07:19:46 +0000 (UTC)
Received: from [2001:4bb8:19b:f845:15fc:cef6:715a:fb03] (helo=localhost)
 by bombadil.infradead.org with esmtpsa (Exim 4.94 #2 (Red Hat Linux))
 id 1lZTcS-00DRkA-CT; Thu, 22 Apr 2021 07: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: c3f0abab-4421-45c1-a115-b0ee4681c490
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding:
	MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type:
	Content-ID:Content-Description:In-Reply-To:References;
	bh=aEdQBTMaUl2RRYZxc6tzp9x+ou0hYnPrwcHo24gdihQ=; b=jzhBxobmLoI0NNUrL8/EfTlash
	db9hFe8bub19NNsbPLexbUbQ/0Oek+2WiesnCwx+loiACq5t8ge/EL9W4DSMZFpoY87u/RPIoJkV0
	skPkrzEfku4t6XaFVhJGfYG1YSfoV53RnF9KVwcg5ui97sd7esymHU1XwRs6WoLw1zeQ/xSUREnAc
	pLvhgSOCyQ9FtJwrIeBOmivQMw3NSJjC5ztzsFnOy7RFUbjIm1NeQM1uhJ+ll3xBSMmyBBrUfwNnU
	aNTNXR8y7wle+wwoQB70hJnfC//sRMKPPOusASzTKEHs37fKR/o1nitVIKirzjTWHnkI4mspElf5g
	mAplpQhw==;
From: Christoph Hellwig <hch@lst.de>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	linux-mips@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	iommu@lists.linux-foundation.org
Subject: cleanup and fix swiotlb sizing
Date: Thu, 22 Apr 2021 09:19:14 +0200
Message-Id: <20210422071921.1428607-1-hch@lst.de>
X-Mailer: git-send-email 2.30.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SRS-Rewrite: SMTP reverse-path rewritten from <hch@infradead.org> by bombadil.infradead.org. See http://www.infradead.org/rpr.html

Hi all,

based on a report from Tom that overriding the default sizing provided
by the x86 SEV code on the command line doesn't work anymore, this series
cleans up how we handle default and command line sizes for the swiotlb
buffer and then fixes the recently introduced bug in a straight-forward
way.

Diffstat:
 arch/mips/cavium-octeon/dma-octeon.c      |   16 +--------------
 arch/mips/include/asm/octeon/pci-octeon.h |    1 
 arch/mips/pci/pci-octeon.c                |    2 -
 arch/powerpc/platforms/pseries/svm.c      |   13 ++----------
 drivers/xen/swiotlb-xen.c                 |    2 -
 include/linux/swiotlb.h                   |    2 -
 kernel/dma/swiotlb.c                      |   32 +++++++++++++++---------------
 7 files changed, 25 insertions(+), 43 deletions(-)


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:20:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:20:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115018.219271 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTct-0002oV-OP; Thu, 22 Apr 2021 07:19:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115018.219271; Thu, 22 Apr 2021 07: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 1lZTct-0002oO-LH; Thu, 22 Apr 2021 07:19:51 +0000
Received: by outflank-mailman (input) for mailman id 115018;
 Thu, 22 Apr 2021 07:19:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Z8K=JT=bombadil.srs.infradead.org=batv+ccca8c562e79e8576e72+6451+infradead.org+hch@srs-us1.protection.inumbo.net>)
 id 1lZTcr-0002oJ-Ks
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:19:49 +0000
Received: from bombadil.infradead.org (unknown [2607:7c80:54:e::133])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 38248176-4324-4d82-89ac-0b8bf5972c1a;
 Thu, 22 Apr 2021 07:19:46 +0000 (UTC)
Received: from [2001:4bb8:19b:f845:15fc:cef6:715a:fb03] (helo=localhost)
 by bombadil.infradead.org with esmtpsa (Exim 4.94 #2 (Red Hat Linux))
 id 1lZTcX-00DRko-OO; Thu, 22 Apr 2021 07:19:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 38248176-4324-4d82-89ac-0b8bf5972c1a
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender
	:Reply-To:Content-Type:Content-ID:Content-Description;
	bh=ocKi+a7wA4qY8frBZ78pjJ0PvLqvNZlAHfEVjthKdOw=; b=rIas4ugj56r8ElM/bnchDokS2d
	mFY5g6FAgdaRMzZSuL6wueVstVK+INGvP9FcnGBJPEx2Wz/58EaILo4Vd3JtUgnDVm/Pe5jfEeMy+
	n1VLxAk7vCdLqB8GfXBHw9YNAOymqr2nOEIbCxLsqNEW12sxs1g+x22cc7mXLNMHbK2P7p/bVy5y/
	c0zYvlu8JhJ3C/qoUFlucMevgR+R0jg8QXQFG8p0uUfNsqp2ASnwLBv6GoVWDdt1t35j5sTsNuElg
	0QI/6vvUiKqAIdYUzgDbJn4cHtdqkXpBlqYT9+i7m+45G4wwGBZTefduoz+81IYCwYckzOSCKXnEM
	Z5BkkTkQ==;
From: Christoph Hellwig <hch@lst.de>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	linux-mips@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	iommu@lists.linux-foundation.org
Subject: [PATCH 2/7] swiotlb: use swiotlb_size_or_default in swiotlb_init
Date: Thu, 22 Apr 2021 09:19:16 +0200
Message-Id: <20210422071921.1428607-3-hch@lst.de>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210422071921.1428607-1-hch@lst.de>
References: <20210422071921.1428607-1-hch@lst.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SRS-Rewrite: SMTP reverse-path rewritten from <hch@infradead.org> by bombadil.infradead.org. See http://www.infradead.org/rpr.html

Use swiotlb_size_or_default to calculate the buffer size insted of
open coding it.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 kernel/dma/swiotlb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index c7b3dd86db7f56..27461fd63e0330 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -209,7 +209,7 @@ int __init swiotlb_init_with_tbl(char *tlb, size_t bytes, int verbose)
 void  __init
 swiotlb_init(int verbose)
 {
-	size_t bytes = default_nslabs << IO_TLB_SHIFT;
+	size_t bytes = swiotlb_size_or_default();
 	void *tlb;
 
 	if (swiotlb_force == SWIOTLB_NO_FORCE)
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:20:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:20:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115020.219295 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTd2-0002sK-Bd; Thu, 22 Apr 2021 07:20:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115020.219295; Thu, 22 Apr 2021 07: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 1lZTd2-0002sA-7T; Thu, 22 Apr 2021 07:20:00 +0000
Received: by outflank-mailman (input) for mailman id 115020;
 Thu, 22 Apr 2021 07:19:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Z8K=JT=bombadil.srs.infradead.org=batv+ccca8c562e79e8576e72+6451+infradead.org+hch@srs-us1.protection.inumbo.net>)
 id 1lZTd1-0002oJ-CT
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:19:59 +0000
Received: from bombadil.infradead.org (unknown [2607:7c80:54:e::133])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8f6b6b23-b8a2-40e9-8e7b-a57a3c3f58c1;
 Thu, 22 Apr 2021 07:19:46 +0000 (UTC)
Received: from [2001:4bb8:19b:f845:15fc:cef6:715a:fb03] (helo=localhost)
 by bombadil.infradead.org with esmtpsa (Exim 4.94 #2 (Red Hat Linux))
 id 1lZTcd-00DRlK-3P; Thu, 22 Apr 2021 07:19: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: 8f6b6b23-b8a2-40e9-8e7b-a57a3c3f58c1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender
	:Reply-To:Content-Type:Content-ID:Content-Description;
	bh=dYyH/8K4Q8sCxeRfrx+sXZtnFZXl8dFeAAsbGjqR53E=; b=OYuuEeJvdRaOhc/KxZZh+gdgIc
	Pp/EPZXmB/fYLLqsRz/c0KwUZj/GOo1pdbdH6soycjs2KejEXIVJNZ7tQ+lf9O/LsH+jTFSSDOzZd
	t+gxtZRNuq7rxDeh6ySTt1AVSqrH2MQViV22MbxnRmy068+lzX+O0JLxqXQH/5IrHfRCI5qY6KpdA
	kaiQpAzWqDtiwzjkobuFUj9pclIHoEBzbD+b8LiqZ2sMabrUaOwnYHY7zIP1d8+0eoimCFxhiNNI9
	fJTUcQe8yUYVqIZp8UrHTvtUKr17zjKQySXJ4neE19YZy4WQ85r+8TPO/CfTvbmt0vZI1mUJDDUES
	tQclwPXQ==;
From: Christoph Hellwig <hch@lst.de>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	linux-mips@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	iommu@lists.linux-foundation.org
Subject: [PATCH 4/7] powerpc/pseries: simplify svm_swiotlb_init
Date: Thu, 22 Apr 2021 09:19:18 +0200
Message-Id: <20210422071921.1428607-5-hch@lst.de>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210422071921.1428607-1-hch@lst.de>
References: <20210422071921.1428607-1-hch@lst.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SRS-Rewrite: SMTP reverse-path rewritten from <hch@infradead.org> by bombadil.infradead.org. See http://www.infradead.org/rpr.html

The value returned by swiotlb_size_or_default is always properly
aligned now, so don't duplicate the work.

Signed-off-by: Christoph Hellwig <hch@lst.de>dddd
---
 arch/powerpc/platforms/pseries/svm.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/arch/powerpc/platforms/pseries/svm.c b/arch/powerpc/platforms/pseries/svm.c
index 4d281ff56ce96f..9187d2a1ed568d 100644
--- a/arch/powerpc/platforms/pseries/svm.c
+++ b/arch/powerpc/platforms/pseries/svm.c
@@ -43,20 +43,14 @@ machine_early_initcall(pseries, init_svm);
  */
 void __init svm_swiotlb_init(void)
 {
+	unsigned long bytes = swiotlb_size_or_default();
 	unsigned char *vstart;
-	unsigned long bytes, io_tlb_nslabs;
-
-	io_tlb_nslabs = (swiotlb_size_or_default() >> IO_TLB_SHIFT);
-	io_tlb_nslabs = ALIGN(io_tlb_nslabs, IO_TLB_SEGSIZE);
-
-	bytes = io_tlb_nslabs << IO_TLB_SHIFT;
 
 	vstart = memblock_alloc(PAGE_ALIGN(bytes), PAGE_SIZE);
 	if (vstart && !swiotlb_init_with_tbl(vstart, bytes, false))
 		return;
 
-	memblock_free_early(__pa(vstart),
-			    PAGE_ALIGN(io_tlb_nslabs << IO_TLB_SHIFT));
+	memblock_free_early(__pa(vstart), PAGE_ALIGN(bytes));
 	panic("SVM: Cannot allocate SWIOTLB buffer");
 }
 
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:20:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:20:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115021.219307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTd7-0003L0-MX; Thu, 22 Apr 2021 07:20:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115021.219307; Thu, 22 Apr 2021 07:20:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTd7-0003Kl-Hf; Thu, 22 Apr 2021 07:20:05 +0000
Received: by outflank-mailman (input) for mailman id 115021;
 Thu, 22 Apr 2021 07:20:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Z8K=JT=bombadil.srs.infradead.org=batv+ccca8c562e79e8576e72+6451+infradead.org+hch@srs-us1.protection.inumbo.net>)
 id 1lZTd6-0002oJ-Cy
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:20:04 +0000
Received: from bombadil.infradead.org (unknown [2607:7c80:54:e::133])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2701f58c-9e93-4833-bf2d-ae415e931107;
 Thu, 22 Apr 2021 07:19:46 +0000 (UTC)
Received: from [2001:4bb8:19b:f845:15fc:cef6:715a:fb03] (helo=localhost)
 by bombadil.infradead.org with esmtpsa (Exim 4.94 #2 (Red Hat Linux))
 id 1lZTca-00DRkx-Hb; Thu, 22 Apr 2021 07:19: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: 2701f58c-9e93-4833-bf2d-ae415e931107
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender
	:Reply-To:Content-Type:Content-ID:Content-Description;
	bh=mQKOkV7O/cQZUeeS2ywVjzBgZ2gsXE3uYRnoQOufOWY=; b=uebudFWLuE7bflMDQQdSHpip3B
	XJBkAvt2kX2G6MchzpNWjh2R5I5XUFdiU9YEccqUF4kwnqBT3m4sBkXQnHY9jHNuENyd0DCmXMTZN
	dBJOdK44cce23/YdS7uP/U8DAILaoZKRL9UpKZjV12NYQkp/tF5xNjHAfhtREAB42GK2cPt59erj+
	tSye60ezBe7oalDxD5wTkF/SJvwbJs5HXXv+xq4rYo4ueA78wnZB3d83Oztierm4iFQ19mw/9DrkA
	DjDnoSkiQsnQNtwCys4BZhCzdt0vHegfZjJoWaoeydlI294lUbZ2HKrrreZNLkVdBQGWu0/XnueMs
	ek06CYVA==;
From: Christoph Hellwig <hch@lst.de>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	linux-mips@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	iommu@lists.linux-foundation.org
Subject: [PATCH 3/7] swiotlb: use swiotlb_adjust_size in setup_io_tlb_npages
Date: Thu, 22 Apr 2021 09:19:17 +0200
Message-Id: <20210422071921.1428607-4-hch@lst.de>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210422071921.1428607-1-hch@lst.de>
References: <20210422071921.1428607-1-hch@lst.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SRS-Rewrite: SMTP reverse-path rewritten from <hch@infradead.org> by bombadil.infradead.org. See http://www.infradead.org/rpr.html

Use the proper helper to do the proper alignment of the buffer size
to the requirements of the swiotlb allocator instead of open coding
the logic.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 kernel/dma/swiotlb.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 27461fd63e0330..93737d0932fbf2 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -76,11 +76,9 @@ static unsigned long default_nslabs = IO_TLB_DEFAULT_SIZE >> IO_TLB_SHIFT;
 static int __init
 setup_io_tlb_npages(char *str)
 {
-	if (isdigit(*str)) {
-		/* avoid tail segment of size < IO_TLB_SEGSIZE */
-		default_nslabs =
-			ALIGN(simple_strtoul(str, &str, 0), IO_TLB_SEGSIZE);
-	}
+	if (isdigit(*str))
+		swiotlb_adjust_size(
+			simple_strtoul(str, &str, 0) << IO_TLB_SHIFT);
 	if (*str == ',')
 		++str;
 	if (!strcmp(str, "force"))
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:20:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:20:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115022.219319 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTdC-0003iZ-Ve; Thu, 22 Apr 2021 07:20:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115022.219319; Thu, 22 Apr 2021 07: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 1lZTdC-0003iS-SB; Thu, 22 Apr 2021 07:20:10 +0000
Received: by outflank-mailman (input) for mailman id 115022;
 Thu, 22 Apr 2021 07:20:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Z8K=JT=bombadil.srs.infradead.org=batv+ccca8c562e79e8576e72+6451+infradead.org+hch@srs-us1.protection.inumbo.net>)
 id 1lZTdB-0002oJ-D1
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:20:09 +0000
Received: from bombadil.infradead.org (unknown [2607:7c80:54:e::133])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 15421345-e757-4d72-94d1-251613525182;
 Thu, 22 Apr 2021 07:19:47 +0000 (UTC)
Received: from [2001:4bb8:19b:f845:15fc:cef6:715a:fb03] (helo=localhost)
 by bombadil.infradead.org with esmtpsa (Exim 4.94 #2 (Red Hat Linux))
 id 1lZTcf-00DRlY-M8; Thu, 22 Apr 2021 07:19: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: 15421345-e757-4d72-94d1-251613525182
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender
	:Reply-To:Content-Type:Content-ID:Content-Description;
	bh=xD8ROuypRPJNh1m/ueF1N/0zbojT8vOodof5U8gwwPw=; b=hl0mLAPtI4EUUTxHX9rKGAwXEe
	oymWWAiTedNj4Ts234A61u45CuUHmD7rWNj3wG+PoV/7AYwMnLUP2uFHT2aAwoE7YvYPxjrbRDmHx
	r2JtfJC0WOShuUl81WCs1Y7d6eYIczxE5z8zT2V3NyEX9qwU4tEEbArvXb5X+QGbZjOu3xc8AHXWJ
	wZ9YNoqEWYD2Bhdffx+5mRsV6gNmsqZm/TmyxKfCZtA0zBIgQT6B7C54T5t31g365WE2u8rBllDOT
	KibaOsAYfbEmn7HqDwTN2geflsIvhw6FBUXjrPzT6SjsT7cOwIv0uW39tQ9rBtgIKvCdbiJb2SY61
	zOiYWgug==;
From: Christoph Hellwig <hch@lst.de>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	linux-mips@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	iommu@lists.linux-foundation.org
Subject: [PATCH 5/7] MIPS/octeon: simplify swiotlb initialization
Date: Thu, 22 Apr 2021 09:19:19 +0200
Message-Id: <20210422071921.1428607-6-hch@lst.de>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210422071921.1428607-1-hch@lst.de>
References: <20210422071921.1428607-1-hch@lst.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SRS-Rewrite: SMTP reverse-path rewritten from <hch@infradead.org> by bombadil.infradead.org. See http://www.infradead.org/rpr.html

Just use swiotlb_adjust_size and swiotlb_init to initialize
swiotlb instead of doing a lot of manual work.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 arch/mips/cavium-octeon/dma-octeon.c      | 16 ++--------------
 arch/mips/include/asm/octeon/pci-octeon.h |  1 -
 arch/mips/pci/pci-octeon.c                |  2 +-
 3 files changed, 3 insertions(+), 16 deletions(-)

diff --git a/arch/mips/cavium-octeon/dma-octeon.c b/arch/mips/cavium-octeon/dma-octeon.c
index 020b8ce5b8ff7c..6bc9ef5e3790ec 100644
--- a/arch/mips/cavium-octeon/dma-octeon.c
+++ b/arch/mips/cavium-octeon/dma-octeon.c
@@ -186,15 +186,12 @@ phys_addr_t dma_to_phys(struct device *dev, dma_addr_t daddr)
 	return daddr;
 }
 
-char *octeon_swiotlb;
-
 void __init plat_swiotlb_setup(void)
 {
 	phys_addr_t start, end;
 	phys_addr_t max_addr;
 	phys_addr_t addr_size;
 	size_t swiotlbsize;
-	unsigned long swiotlb_nslabs;
 	u64 i;
 
 	max_addr = 0;
@@ -236,15 +233,6 @@ void __init plat_swiotlb_setup(void)
 	if (OCTEON_IS_OCTEON2() && max_addr >= 0x100000000ul)
 		swiotlbsize = 64 * (1<<20);
 #endif
-	swiotlb_nslabs = swiotlbsize >> IO_TLB_SHIFT;
-	swiotlb_nslabs = ALIGN(swiotlb_nslabs, IO_TLB_SEGSIZE);
-	swiotlbsize = swiotlb_nslabs << IO_TLB_SHIFT;
-
-	octeon_swiotlb = memblock_alloc_low(swiotlbsize, PAGE_SIZE);
-	if (!octeon_swiotlb)
-		panic("%s: Failed to allocate %zu bytes align=%lx\n",
-		      __func__, swiotlbsize, PAGE_SIZE);
-
-	if (swiotlb_init_with_tbl(octeon_swiotlb, swiotlbsize, 1) == -ENOMEM)
-		panic("Cannot allocate SWIOTLB buffer");
+	swiotlb_adjust_size(swiotlbsize);
+	swiotlb_init(false);
 }
diff --git a/arch/mips/include/asm/octeon/pci-octeon.h b/arch/mips/include/asm/octeon/pci-octeon.h
index b12d9a3fbfb6c0..a2f20a44fb6143 100644
--- a/arch/mips/include/asm/octeon/pci-octeon.h
+++ b/arch/mips/include/asm/octeon/pci-octeon.h
@@ -64,6 +64,5 @@ enum octeon_dma_bar_type {
 extern enum octeon_dma_bar_type octeon_dma_bar_type;
 
 void octeon_pci_dma_init(void);
-extern char *octeon_swiotlb;
 
 #endif
diff --git a/arch/mips/pci/pci-octeon.c b/arch/mips/pci/pci-octeon.c
index fc29b85cfa926d..ff26cd9dc083f6 100644
--- a/arch/mips/pci/pci-octeon.c
+++ b/arch/mips/pci/pci-octeon.c
@@ -664,7 +664,7 @@ static int __init octeon_pci_setup(void)
 
 		/* BAR1 movable regions contiguous to cover the swiotlb */
 		octeon_bar1_pci_phys =
-			virt_to_phys(octeon_swiotlb) & ~((1ull << 22) - 1);
+			io_tlb_default_mem->start & ~((1ull << 22) - 1);
 
 		for (index = 0; index < 32; index++) {
 			union cvmx_pci_bar1_indexx bar1_index;
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:20:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:20:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115023.219331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTdH-0003n4-Da; Thu, 22 Apr 2021 07:20:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115023.219331; Thu, 22 Apr 2021 07:20: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 1lZTdH-0003mv-8Y; Thu, 22 Apr 2021 07:20:15 +0000
Received: by outflank-mailman (input) for mailman id 115023;
 Thu, 22 Apr 2021 07:20:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Z8K=JT=bombadil.srs.infradead.org=batv+ccca8c562e79e8576e72+6451+infradead.org+hch@srs-us1.protection.inumbo.net>)
 id 1lZTdG-0002oJ-Cr
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:20:14 +0000
Received: from bombadil.infradead.org (unknown [2607:7c80:54:e::133])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f3bc7bf0-6909-49a8-bc35-1797e59b31e3;
 Thu, 22 Apr 2021 07:19:48 +0000 (UTC)
Received: from [2001:4bb8:19b:f845:15fc:cef6:715a:fb03] (helo=localhost)
 by bombadil.infradead.org with esmtpsa (Exim 4.94 #2 (Red Hat Linux))
 id 1lZTcV-00DRkP-5I; Thu, 22 Apr 2021 07:19: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: f3bc7bf0-6909-49a8-bc35-1797e59b31e3
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender
	:Reply-To:Content-Type:Content-ID:Content-Description;
	bh=9e6nRv3+wLjzlc72bubCu1Xi6ervkRsefEBahSWTc/0=; b=zOoYX8jUOo1h/3vuutMUzvW6dA
	ZDt/haqkxtsVhv+y49bYkAHuzihtfHTSLXmkH54HT45XdIirfXz/KA9+81tRVALy4BqRUaeZ6UVFS
	thFNeLLbDdJoO1uvDKXeBjJ7flnlT8R/2cANDYZpKVuHgq5iXbiyTcaiI17eeegb86Zndo02fMOgM
	wanJlXmIKnHeFmhGV4kAkHunvH8Qqyvjo1wQeq9Tgjdwmg802+7/ndgUnSmpLe960PfgL1yXsBmPO
	IC6M+tscEAqKN99bJ3pxEM5gpDrdaTUgeWmzLwy6xFLs3xVNmJMi0JNlfqxnNQq/KkvxFweBr3GXT
	w3XNj2bA==;
From: Christoph Hellwig <hch@lst.de>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	linux-mips@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	iommu@lists.linux-foundation.org
Subject: [PATCH 1/7] swiotlb: pass bytes instead of nslabs to swiotlb_init_with_tbl
Date: Thu, 22 Apr 2021 09:19:15 +0200
Message-Id: <20210422071921.1428607-2-hch@lst.de>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210422071921.1428607-1-hch@lst.de>
References: <20210422071921.1428607-1-hch@lst.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SRS-Rewrite: SMTP reverse-path rewritten from <hch@infradead.org> by bombadil.infradead.org. See http://www.infradead.org/rpr.html

Pass the actual allocation size to swiotlb_init_with_tbl, which
simplifies things quite a bit.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 arch/mips/cavium-octeon/dma-octeon.c |  2 +-
 arch/powerpc/platforms/pseries/svm.c |  3 +--
 drivers/xen/swiotlb-xen.c            |  2 +-
 include/linux/swiotlb.h              |  2 +-
 kernel/dma/swiotlb.c                 | 10 +++++-----
 5 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/arch/mips/cavium-octeon/dma-octeon.c b/arch/mips/cavium-octeon/dma-octeon.c
index df70308db0e697..020b8ce5b8ff7c 100644
--- a/arch/mips/cavium-octeon/dma-octeon.c
+++ b/arch/mips/cavium-octeon/dma-octeon.c
@@ -245,6 +245,6 @@ void __init plat_swiotlb_setup(void)
 		panic("%s: Failed to allocate %zu bytes align=%lx\n",
 		      __func__, swiotlbsize, PAGE_SIZE);
 
-	if (swiotlb_init_with_tbl(octeon_swiotlb, swiotlb_nslabs, 1) == -ENOMEM)
+	if (swiotlb_init_with_tbl(octeon_swiotlb, swiotlbsize, 1) == -ENOMEM)
 		panic("Cannot allocate SWIOTLB buffer");
 }
diff --git a/arch/powerpc/platforms/pseries/svm.c b/arch/powerpc/platforms/pseries/svm.c
index 1d829e257996fb..4d281ff56ce96f 100644
--- a/arch/powerpc/platforms/pseries/svm.c
+++ b/arch/powerpc/platforms/pseries/svm.c
@@ -52,10 +52,9 @@ void __init svm_swiotlb_init(void)
 	bytes = io_tlb_nslabs << IO_TLB_SHIFT;
 
 	vstart = memblock_alloc(PAGE_ALIGN(bytes), PAGE_SIZE);
-	if (vstart && !swiotlb_init_with_tbl(vstart, io_tlb_nslabs, false))
+	if (vstart && !swiotlb_init_with_tbl(vstart, bytes, false))
 		return;
 
-
 	memblock_free_early(__pa(vstart),
 			    PAGE_ALIGN(io_tlb_nslabs << IO_TLB_SHIFT));
 	panic("SVM: Cannot allocate SWIOTLB buffer");
diff --git a/drivers/xen/swiotlb-xen.c b/drivers/xen/swiotlb-xen.c
index 4c89afc0df6289..18d79f07b507ce 100644
--- a/drivers/xen/swiotlb-xen.c
+++ b/drivers/xen/swiotlb-xen.c
@@ -249,7 +249,7 @@ void __init xen_swiotlb_init_early(void)
 		panic("%s (rc:%d)", xen_swiotlb_error(XEN_SWIOTLB_EFIXUP), rc);
 	}
 
-	if (swiotlb_init_with_tbl(start, nslabs, false))
+	if (swiotlb_init_with_tbl(start, bytes, false))
 		panic("Cannot allocate SWIOTLB buffer");
 	swiotlb_set_max_segment(PAGE_SIZE);
 }
diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index 216854a5e5134b..d1d40ca5014b54 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -36,7 +36,7 @@ enum swiotlb_force {
 #define IO_TLB_DEFAULT_SIZE (64UL<<20)
 
 extern void swiotlb_init(int verbose);
-int swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose);
+int swiotlb_init_with_tbl(char *tlb, size_t bytes, int verbose);
 unsigned long swiotlb_size_or_default(void);
 extern int swiotlb_late_init_with_tbl(char *tlb, unsigned long nslabs);
 extern int swiotlb_late_init_with_default_size(size_t default_size);
diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 0a5b6f7e75bce6..c7b3dd86db7f56 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -166,9 +166,9 @@ void __init swiotlb_update_mem_attributes(void)
 	memset(vaddr, 0, bytes);
 }
 
-int __init swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose)
+int __init swiotlb_init_with_tbl(char *tlb, size_t bytes, int verbose)
 {
-	unsigned long bytes = nslabs << IO_TLB_SHIFT, i;
+	unsigned long nslabs = bytes >> IO_TLB_SHIFT, i;
 	struct io_tlb_mem *mem;
 	size_t alloc_size;
 
@@ -209,17 +209,17 @@ int __init swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose)
 void  __init
 swiotlb_init(int verbose)
 {
-	size_t bytes = PAGE_ALIGN(default_nslabs << IO_TLB_SHIFT);
+	size_t bytes = default_nslabs << IO_TLB_SHIFT;
 	void *tlb;
 
 	if (swiotlb_force == SWIOTLB_NO_FORCE)
 		return;
 
 	/* Get IO TLB memory from the low pages */
-	tlb = memblock_alloc_low(bytes, PAGE_SIZE);
+	tlb = memblock_alloc_low(PAGE_ALIGN(bytes), PAGE_SIZE);
 	if (!tlb)
 		goto fail;
-	if (swiotlb_init_with_tbl(tlb, default_nslabs, verbose))
+	if (swiotlb_init_with_tbl(tlb, bytes, verbose))
 		goto fail_free_mem;
 	return;
 
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:20:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:20:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115025.219343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTdM-0003sJ-Ni; Thu, 22 Apr 2021 07:20:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115025.219343; Thu, 22 Apr 2021 07: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 1lZTdM-0003sA-Iz; Thu, 22 Apr 2021 07:20:20 +0000
Received: by outflank-mailman (input) for mailman id 115025;
 Thu, 22 Apr 2021 07:20:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Z8K=JT=bombadil.srs.infradead.org=batv+ccca8c562e79e8576e72+6451+infradead.org+hch@srs-us1.protection.inumbo.net>)
 id 1lZTdL-0002oJ-D3
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:20:19 +0000
Received: from bombadil.infradead.org (unknown [2607:7c80:54:e::133])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 34332746-7e13-435b-8d06-521101fd59c2;
 Thu, 22 Apr 2021 07:19:51 +0000 (UTC)
Received: from [2001:4bb8:19b:f845:15fc:cef6:715a:fb03] (helo=localhost)
 by bombadil.infradead.org with esmtpsa (Exim 4.94 #2 (Red Hat Linux))
 id 1lZTck-00DRlu-Sv; Thu, 22 Apr 2021 07:19: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: 34332746-7e13-435b-8d06-521101fd59c2
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender
	:Reply-To:Content-Type:Content-ID:Content-Description;
	bh=uecr72uR4S7RBlQH3PaVDyORw5/pv2frUuL1UFgzCPE=; b=nhiKI19LhclhWHaCMD71/Cry2I
	ad6ySo/VVhMQiMubBTbcXCyyZlDNjzYbPA+tZk8BiT5hw3n0w6mKDxom0sj0rvkAgg0i1yyn8o7oo
	1WIEdVXIC6LTk0UxAy1ehak/xKXq6XQPbaGVDUPwPborS1UiEulB3qS7UESlVagzJt4QCZaO9CtEI
	fcQs+SXYcRWhy5a8sDZTyC08Ri/E79nWiQSVrG4ZiR8v9uKg/DTl1oamETbfl6gUflJKqvh2ddxOi
	BdTobsRp+kpB65cIWtJVMzOi3UY9DmsWvx7DOMlmgKmk3irvAqkEQdojJ/k//Qspi8SEXYbVYNPNh
	pTGVPpvQ==;
From: Christoph Hellwig <hch@lst.de>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	linux-mips@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	iommu@lists.linux-foundation.org
Subject: [PATCH 7/7] swiotlb: don't override the command line in swiotlb_adjust_size
Date: Thu, 22 Apr 2021 09:19:21 +0200
Message-Id: <20210422071921.1428607-8-hch@lst.de>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210422071921.1428607-1-hch@lst.de>
References: <20210422071921.1428607-1-hch@lst.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SRS-Rewrite: SMTP reverse-path rewritten from <hch@infradead.org> by bombadil.infradead.org. See http://www.infradead.org/rpr.html

When the user specified an explicit swiotlb size on the command line,
the achitecture code should not override it.

Fixes: 2cbc2776efe4 ("swiotlb: remove swiotlb_nr_tbl")
Reported-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 kernel/dma/swiotlb.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 87d06ddf4753f3..aef02a3825b494 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -106,7 +106,9 @@ void swiotlb_set_max_segment(unsigned int val)
 
 unsigned long swiotlb_size_or_default(void)
 {
-	return swiotlb_default_size;
+	if (swiotlb_default_size)
+		return swiotlb_default_size;
+	return IO_TLB_DEFAULT_SIZE;
 }
 
 void __init swiotlb_adjust_size(unsigned long size)
@@ -116,6 +118,8 @@ void __init swiotlb_adjust_size(unsigned long size)
 	 * architectures such as those supporting memory encryption to
 	 * adjust/expand SWIOTLB size for their use.
 	 */
+	if (swiotlb_default_size)
+		return;
 	swiotlb_default_size = ALIGN(size, IO_TLB_SEGSIZE << IO_TLB_SHIFT);
 	pr_info("SWIOTLB bounce buffer size adjusted to %luMB",
 		swiotlb_default_size >> 20);
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:20:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:20:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115028.219355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTdS-0003yx-7G; Thu, 22 Apr 2021 07:20:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115028.219355; Thu, 22 Apr 2021 07:20: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 1lZTdS-0003yo-33; Thu, 22 Apr 2021 07:20:26 +0000
Received: by outflank-mailman (input) for mailman id 115028;
 Thu, 22 Apr 2021 07:20:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Z8K=JT=bombadil.srs.infradead.org=batv+ccca8c562e79e8576e72+6451+infradead.org+hch@srs-us1.protection.inumbo.net>)
 id 1lZTdQ-0002oJ-D4
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:20:24 +0000
Received: from bombadil.infradead.org (unknown [2607:7c80:54:e::133])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 37b1f354-d6ee-4f62-86ae-c33f17780e27;
 Thu, 22 Apr 2021 07:19:52 +0000 (UTC)
Received: from [2001:4bb8:19b:f845:15fc:cef6:715a:fb03] (helo=localhost)
 by bombadil.infradead.org with esmtpsa (Exim 4.94 #2 (Red Hat Linux))
 id 1lZTci-00DRlk-9r; Thu, 22 Apr 2021 07:19: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: 37b1f354-d6ee-4f62-86ae-c33f17780e27
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender
	:Reply-To:Content-Type:Content-ID:Content-Description;
	bh=IEVkrkm3MuKaNKcyW8a+DG4O3GXVaGagie2/ONcqlhY=; b=anmjfDz2al0zGRuceriPKIfAtn
	2r5xN/fPvoh9RqCq8f2NgLc28anKl85DQp79zJxmlgMjrkAnWT9K6kWFfWdFfa+/oaUraoNrx3EK7
	Cj1NfF+BsAFyNN5ph+FqgH3P21AXa37gyZz30XWgEDpt7OyTdni3oF/OXOL2GxIlSHK6QlH9F8lXj
	oV/bsNdU9LdBrsaiEIvtR7snQd2qNegyfbIbJA40BDORsEqgSmk4odm8REfk7daCNYinPEfg7qB2T
	I6PzWdLRK3qjS5KE+f7VAlXQTos9C/2Z9rykR9kzQr/7cas/V3Ex7wBiKH/DQZu8dTJdpPwX8l/Ki
	812AaC/A==;
From: Christoph Hellwig <hch@lst.de>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	linux-mips@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	iommu@lists.linux-foundation.org
Subject: [PATCH 6/7] swiotlb: replace default_nslabs with a byte value
Date: Thu, 22 Apr 2021 09:19:20 +0200
Message-Id: <20210422071921.1428607-7-hch@lst.de>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210422071921.1428607-1-hch@lst.de>
References: <20210422071921.1428607-1-hch@lst.de>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SRS-Rewrite: SMTP reverse-path rewritten from <hch@infradead.org> by bombadil.infradead.org. See http://www.infradead.org/rpr.html

Replace the default_nslabs variable with one that stores the size in
bytes as that is what all the users actually expect.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 kernel/dma/swiotlb.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 93737d0932fbf2..87d06ddf4753f3 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -71,7 +71,7 @@ struct io_tlb_mem *io_tlb_default_mem;
  */
 static unsigned int max_segment;
 
-static unsigned long default_nslabs = IO_TLB_DEFAULT_SIZE >> IO_TLB_SHIFT;
+static unsigned long swiotlb_default_size = IO_TLB_DEFAULT_SIZE;
 
 static int __init
 setup_io_tlb_npages(char *str)
@@ -106,7 +106,7 @@ void swiotlb_set_max_segment(unsigned int val)
 
 unsigned long swiotlb_size_or_default(void)
 {
-	return default_nslabs << IO_TLB_SHIFT;
+	return swiotlb_default_size;
 }
 
 void __init swiotlb_adjust_size(unsigned long size)
@@ -116,9 +116,9 @@ void __init swiotlb_adjust_size(unsigned long size)
 	 * architectures such as those supporting memory encryption to
 	 * adjust/expand SWIOTLB size for their use.
 	 */
-	size = ALIGN(size, IO_TLB_SIZE);
-	default_nslabs = ALIGN(size >> IO_TLB_SHIFT, IO_TLB_SEGSIZE);
-	pr_info("SWIOTLB bounce buffer size adjusted to %luMB", size >> 20);
+	swiotlb_default_size = ALIGN(size, IO_TLB_SEGSIZE << IO_TLB_SHIFT);
+	pr_info("SWIOTLB bounce buffer size adjusted to %luMB",
+		swiotlb_default_size >> 20);
 }
 
 void swiotlb_print_info(void)
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:23:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:23:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115058.219366 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTg9-0004OI-MQ; Thu, 22 Apr 2021 07:23:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115058.219366; Thu, 22 Apr 2021 07: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 1lZTg9-0004OB-JP; Thu, 22 Apr 2021 07:23:13 +0000
Received: by outflank-mailman (input) for mailman id 115058;
 Thu, 22 Apr 2021 07:23:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZTg8-0004O4-Gg
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:23:12 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f861bf08-6e79-4c23-81a2-2876dae46bb1;
 Thu, 22 Apr 2021 07:23: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: f861bf08-6e79-4c23-81a2-2876dae46bb1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619076191;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=MGU21dcwy4/F/9sttZ5V6hOLNWQ43DsWpoZ8xeeo+4o=;
  b=ih3XoDfYY/JSnK00pZlI5HmD59oncy9na2sS9Yrs7lA42EzskCC7h/kF
   SkT6u4WgmyARfUqqJgj24wYRmaTza6wOj7hcp8SnNJXzvKBqhA6uU29xj
   /6dRLGU3Q+DJmRtCG9yKYZvYRm8qoKwjBBoh5pf1KHZzasFEFmhr8S1MH
   Q=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: jwV2DPrJcKekfuIgK3f76dg/qK9E7zbnH4xPRoRTpML6ONeww0oQaiEzofIgThQzOIE/Y73il/
 oSdXlU0VjI1Mp+S54UWM4iPDfDbU8NByOynDPKLwA/rPSbNabAXXzzNewv2iCMajNHH97GPdHR
 9vuATVun+AxCW7rd+ax+xp7jDN9d4MI5ui5vAmFkbhnMJCmI8zKCBZMxiJlkd+8NQw/pBV/VQF
 rwP5/iXlxBhXxJ1e14iEdmdjnfruCUZC3JrwoIf7LJJXQD4Qgb5Bs32LCNnAjVE6M4US5u4ZrR
 VlQ=
X-SBRS: 5.2
X-MesageID: 42275012
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:8hcHxKCLVTndyVflHegetMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPvfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VLdMgXE3Kpm2a
 9kGpITNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0McShBQchbnmFEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVrUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbySw9BEYTj9J3PMe4X
 HI+jaJnJmLntOa7lvn12HV54lLg9eJ8Lp+LeGFl8R9EESIti+Gf4JkMofy2AwdgObq01oylc
 mJnhFIBbUN11r0XkWY5STgwBPh1jFG0Q6Q9Xa9jWH4qcL0ABIWYvAx/b5xSRfS50o+sNwU6s
 sitAj1xvknb2K0oA3H69fFTB1snEavyEBS6tI7tHBDTZAYLIZYsI13xjIkLL47ACn45Io7ed
 Medf302fA+SyL8U1np+kNrwNCqQ00pGAaHTkUoqqWuoklrtUE84E0CyMMFmHAcsLo7Vplf/u
 zBdp9ljbdUU6YtHO1ALdZEZfHyJn3GQBrKPm7XCVP7FJsfM3aIj5Ls+r066MyjZZRg9up9pL
 3xFHdj8UIicUPnDsODmLdR9ArWfWm7VTPxjulD+plQoNTHNfnWGBzGbGprv9qrov0ZDMGece
 20IohqD/jqKnarMZpV3jf5R4JZJRAlIY0ok+d+f2jLjtPAK4XsuOCeWu3UPqDRHTEtXX66LW
 AEWBT1OcVc/mGmUnL1m3HqKjbQU3262ag1PLnR/uAVxoRIHJZLqBIphVOw4dzOCTAqiN1zQG
 JOZJfc1o+rr2i/+mjFq09zPABGM0pT6LL8F1dDpQoANVLIYa8O0u/vPlx67T+iHFtSXsnWGA
 lQqxBc4qSsNaGdwigkFpaBPn+FiWAQ4FaHVY0VlKHGxcqNQOJ4Mr8WHIhKUSnbHR18nghn7E
 1ZbhUfe0PZHjTyzYO/jJIVA+nbX8JmgBiiJPNVrX63jzTfmegfAl8gGxK+W8+ehggjAxBOgE
 dqzqMZiL2c3Qq0JXAHm+Q+Ol1UYGGxCLZLZT71Irl8q/TOQkVdXG2KjTuVh1UWdnDx/0sfvG
 DnMBaZYOrGGFZbp3Be3Jv76V8cTBTuQ2tALlRB9aFtH2XPvXh+ldWGYae+yEO9QFoPyON1Ck
 COXRIiZidVg/yn3h+cnziPUUg8zpI1J+rHEfAIaLfIwE6gL4WOiIALF/JZ54xeKdjrq+MHON
 jvIjO9HXfdMacEygaVrnEqNG1Is3Eii+rvwwCgw26i3nIzaMCiaWhOdvU+GZW74GflTfrTj8
 k8otIxoOeqMmL+LvSB0rraajZfKhXV5U66JttY3qx8jOYXjv9UGZKebB7jkFdg9z86JN3vlE
 wfTL9giYqxcbNHTog3QWZh4lEtlN6zN0MlvQz9P/8mcTgW/gvmFuLMx4CNlKEmDUKArjbhIF
 Wz8yVS+PHeQiuIvIRqfZ4YECBzaEIm7m5l8/7HX4rMCB+yf+Urxiv2DlaNNJtcQrOCA7Mes1
 JT5MyJhfaec27d1BrLtTV2ZoJI/GDPe7L/PCu8XcpJ+ce9I1KCn++D59Oyli7+TX+DUHsj7L
 c1PXA4X4BkkTktjIo+zyi0ROjWmyse4iVjyAAisEXs1Iig6HrcBmdcP2Ti881rYQU=
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42275012"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WbS/MzI47bgLGBLlrO4Wu8m4J789EPXIKa7oWPLyR93C/h+Kd8uT+keV9vxmnNk8cNk6o2WQYkyPyxu532UpT/3GvbBLubQqoux4PY0FMRC3p2neoP5NvWSD7ps6JhPr+rUWbuCXup0l0iefoIjBO8zemO/Qis1iT2HTPB4sV9l3dBQz/yjX11QQVzTX4+f4vcoD8fX1dWKfvwIDbH+Z46fPnKDJ2mVh0RecpmkIQojCxnkzn3Q1+8WvVisKVCFPJHL38k4jmGB9KEuQUPz0R6XF9cUnq8aFioNhaRfLYoj2L5yOORQj1A5R77DCg6EPSvSDSPngBGrHWeg4b9AY3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZGL4S4c0BZuBJAU++1R4375StHhL2YMgVWF2It/ew2I=;
 b=FfbI3YMCQo6rNXWhfXC5d/kHjkvwjOfyEpE2fIxOlmw7KaeUtXxOINp2r9FUg1xmJsgiJz+lKvOwHcJXbcIDoI1W4ayBlrcoruZpWhm5fnGFZvW1CRP6eewcejvHRh3LHyngHjsJIdSvd3FNvbJApruj+evb9rGF2EdD5WBKCaLgIzNtdzxiAQHyUTenbMlF6qzn8DwWZzluBUm7B3vGqGbcMV20fr9oqXd4RADebklUiiVM3f6SDgiUoyUOWSuyKLgKYjV8Uf2erV4WVkMEpIRop7AdlDbV/B+7iavT/1KB4N9rwBAvOiHORGvbJaZsJnnCU0Ktu01L6//HPSo3tg==
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=ZGL4S4c0BZuBJAU++1R4375StHhL2YMgVWF2It/ew2I=;
 b=ZClla/MP2V23oN8wBuKlKkulKh+uQ9FT7MX/6k/zVJYKSAjNHSrH29QMkNPbIKT00/m1WLEpfHhRX10mr2Q4VGZwzPM97sgy/dZimaw72tRFPSeCzpis+wNeDebnqqbEeTE+sfCeQJl5HnPNUbiGkjAKPX/LKU3QH+0Z36ixkQI=
Date: Thu, 22 Apr 2021 09:22: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 6/8] x86/EFI: avoid use of GNU ld's
 --disable-reloc-section when possible
Message-ID: <YIEkPorW1vEibACD@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <ff15338a-ca10-ff38-3c2a-459303ce9d68@suse.com>
 <YH/8rb0aENMqOLAn@Air-de-Roger>
 <dada98e8-3e4a-94df-0678-bdd2a0e8de04@suse.com>
 <YIBC1XWTQzjykk1k@Air-de-Roger>
 <fa822374-ce07-473d-b6b6-2d8073ff83a6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <fa822374-ce07-473d-b6b6-2d8073ff83a6@suse.com>
X-ClientProxiedBy: MR1P264CA0016.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2e::21) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7671afaf-d28a-451a-1616-08d9055f6cc8
X-MS-TrafficTypeDiagnostic: DS7PR03MB5606:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB56060E22ABA042E124E8BA7C8F469@DS7PR03MB5606.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: fZydBOjYoy4WopUhVEV4yDVV+GvPRdud6rnpZNHBoNuJIr84+Yyi8JvvGCMK9J1I/UnDXRynaYI0x3iE6h6alh80h+ty47g6kgs+V7ASEUkALWaIOdMnOctA9pO0aU8pRGK2Wzw71GNPM5hD9cVeQFdtHDDLWkPoZe7xnrX0wPV0P0dts1ZWP8neC+rNNG4Dzogc4XY6r4dy307+YWa5eu+usrstbhT5sUwbagTyl86+jJEMSrWLOjn+/3Aof9lcVu+kM8pEdpq5UcvSxRc3hVLcGv0bnWJCDIgygWPlo+NlqcudXrv3Yicb6vLcw3lMuk+EB0VFLVN8wZbSSdp4TCFhe4oqM6gv6CmWwbiYksZ7TE38QYoAMH4Q/qPRSgZhmNLS2bi7p/lpRlYK16ioFV10SZqcCkp/JQynY0f4mHRULtZUXqNlRDud2J16XK03jKnJUkRaIxDenlGGPSPIWC23+LgK9arGBzeciObo2MWia+uPI++I4/uP2L9irnjJdK4fjjxLrcB4bnqtq/LOLTobUmfxNQtKRIsOWzggDw5fHdkjkVJOUyK7QUlGo+zJM0bdplUe9fF2YnfqhwF0x68S+G3TStgXkcTUNr2GOZY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(346002)(396003)(39860400002)(376002)(366004)(136003)(6666004)(6916009)(6486002)(4326008)(86362001)(66556008)(478600001)(66476007)(66946007)(5660300002)(2906002)(33716001)(9686003)(956004)(83380400001)(186003)(16526019)(38100700002)(26005)(8676002)(54906003)(8936002)(6496006)(53546011)(85182001)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 7671afaf-d28a-451a-1616-08d9055f6cc8
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 07:22:45.6581
 (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: rE/Yx8dJqJOMv8Qf2flhlCyRo8AHMphM7YhhfZ2oeJB9b/uOVaCnru8pRgVCS7VO3o8AD6SL8El4UAKcnwnbOA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5606
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 05:34:29PM +0200, Jan Beulich wrote:
> On 21.04.2021 17:20, Roger Pau Monné wrote:
> > On Wed, Apr 21, 2021 at 02:03:49PM +0200, Jan Beulich wrote:
> >> On 21.04.2021 12:21, Roger Pau Monné wrote:
> >>> On Thu, Apr 01, 2021 at 11:46:44AM +0200, Jan Beulich wrote:
> >>>> @@ -189,7 +208,11 @@ EFI_LDFLAGS += --no-insert-timestamp
> >>>>  endif
> >>>>  
> >>>>  $(TARGET).efi: VIRT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A VIRT_START$$,,p')
> >>>> +ifeq ($(MKRELOC),:)
> >>>> +$(TARGET).efi: ALT_BASE :=
> >>>> +else
> >>>>  $(TARGET).efi: ALT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A ALT_START$$,,p')
> >>>
> >>> Could you maybe check whether $(relocs-dummy) is set as the condition
> >>> here and use it here instead of efi/relocs-dummy.o?
> >>
> >> I can use it in the ifeq() if you think that's neater (the current way
> >> is minimally shorter), but using it in the ALT_BASE assignment would
> >> make this differ more from the VIRT_BASE one, which I'd like to avoid.
> > 
> > Sorry, I think I'm slightly confused because when the linker can
> > produce the required relocations relocs-dummy variable is left empty,
> > so it won't be added to $(TARGET).efi.
> > 
> > But we still need to generate the efi/relocs-dummy.o file for the ELF
> > build I assume?
> 
> Not anymore (after "x86/EFI: redo .reloc section bounds determination").
> We need it, as said, to fish VIRT_BASE out of it. It indeed wouldn't get
> linked into any of the final binaries anymore.

Could you please add some text to the commit message to note that
while relocs-dummy is not linked into the final binary it's still
needed to get VIRT_BASE?

With that:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

FWIW, it would also be nice to add some comments to the $(TARGET).efi
target commands, as it's quite impenetrable right now.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:39:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:39:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115074.219378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTwD-0005fp-3E; Thu, 22 Apr 2021 07:39:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115074.219378; Thu, 22 Apr 2021 07: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 1lZTwD-0005fh-0E; Thu, 22 Apr 2021 07:39:49 +0000
Received: by outflank-mailman (input) for mailman id 115074;
 Thu, 22 Apr 2021 07:39:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KkA+=JT=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lZTwB-0005fc-N1
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:39:47 +0000
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown
 [40.107.0.47]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3fb451ac-cc96-477c-a4b8-acbcf26ed9d5;
 Thu, 22 Apr 2021 07:39:44 +0000 (UTC)
Received: from MR2P264CA0080.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:32::20)
 by DB6PR08MB2662.eurprd08.prod.outlook.com (2603:10a6:6:24::30) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.21; Thu, 22 Apr
 2021 07:39:42 +0000
Received: from VE1EUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:500:32:cafe::3c) by MR2P264CA0080.outlook.office365.com
 (2603:10a6:500:32::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend
 Transport; Thu, 22 Apr 2021 07:39:41 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT010.mail.protection.outlook.com (10.152.18.113) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Thu, 22 Apr 2021 07:39:41 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Thu, 22 Apr 2021 07:39:40 +0000
Received: from 554cec0a604e.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 410FD2B6-2F8A-4193-A35B-EF107AF0C00D.1; 
 Thu, 22 Apr 2021 07:39:30 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 554cec0a604e.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 22 Apr 2021 07:39:30 +0000
Received: from DB7PR08MB3626.eurprd08.prod.outlook.com (2603:10a6:10:4a::16)
 by DB6PR0801MB1829.eurprd08.prod.outlook.com (2603:10a6:4:39::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Thu, 22 Apr
 2021 07:39:27 +0000
Received: from DB7PR08MB3626.eurprd08.prod.outlook.com
 ([fe80::a05a:b249:56a2:c570]) by DB7PR08MB3626.eurprd08.prod.outlook.com
 ([fe80::a05a:b249:56a2:c570%4]) with mapi id 15.20.4042.024; Thu, 22 Apr 2021
 07:39:27 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0170.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18a::13) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.21 via Frontend Transport; Thu, 22 Apr 2021 07:39: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: 3fb451ac-cc96-477c-a4b8-acbcf26ed9d5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZXFZfDW5jOe3aBOlO714kVpIdHXDyzfHsFtUIpEP74c=;
 b=LWoNfLVTHeXU/TxZXHPCEQEp+VNTntdOofHnK/NxxWPKLKbpgCeVo53svr8tfZo0YJGLkV8J+tbqCWuJRgXur65L4NkQ0lU+NSvujn70Q6h/Y97wKnOiUJqXAJW0pUv/qU0gtQh2dS5TBBdf0SUHxvRWnCfaKCnHxNzGTrxlJno=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: a461cbfca6c39bda
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cqe5kAWnHKFH/7TPQHpNbEuFKE5R5D1f3msWJ2wxwl7fj1eOjxxzPqojScJLmdqLJMAUuTtsQ8dnsla3GuFOaBXnLWF0LVqXjcwfirsdmZ/pFWk/L2tZE5KuuQp5fXji3TzdGJ36byRNa6QM6yy0uXEvvHWuCih/Rgsq2sXPHYW0d4x1P5ChndlzKkNC1/rkbHcjYhEoukzV9mIpS0dJxgl9IZpr+3qwk3RARA7EHcIJmDHp5UASXpNQjJjU1NbFh4CRbmgo4UCfOEtc2xHJyRBq3dS0srvriKfy/KwA5AiTKOURZ78NXiX9o/FQoIApArDfJ9bkr54Z5/zJQpPMrg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZXFZfDW5jOe3aBOlO714kVpIdHXDyzfHsFtUIpEP74c=;
 b=khmI98VbT6ggvC/G/EGC8IXaezjjZp0quQPBy7AMcKIPar5bUZTWVfiIG6iXJWoaEO6zI4dgHdqicCXNdu6OcF2GGmpMc/YdCdCZ7VxTkxoX8YtEYOkhNPqhLpdikwaKsPXFrKvU0/V4OhqT1mznidZi3nb6qdl2BEr5qZbgHFEZdd+AOYamfIqZeqoRA4coHqsphJeKpj9qHjvKd688pl0eKB+zv4s1uWJ/Zd0PG93G/NU+d5wAdZBmkds5BFMRJQZw90LEpWCSnlj6werE/XCtSbzzp6wpmrRM8sGSvd0WfFyQkafIDsmXkrTL+qQKYA3Z9mdcWZqaAQZS5QZQCQ==
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=ZXFZfDW5jOe3aBOlO714kVpIdHXDyzfHsFtUIpEP74c=;
 b=LWoNfLVTHeXU/TxZXHPCEQEp+VNTntdOofHnK/NxxWPKLKbpgCeVo53svr8tfZo0YJGLkV8J+tbqCWuJRgXur65L4NkQ0lU+NSvujn70Q6h/Y97wKnOiUJqXAJW0pUv/qU0gtQh2dS5TBBdf0SUHxvRWnCfaKCnHxNzGTrxlJno=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v2 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <dbcf10ef-0d40-a687-d242-f01a01bca342@suse.com>
Date: Thu, 22 Apr 2021 08:39:20 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <91B2399E-2E91-44A9-A5F2-C55F42F52F52@arm.com>
References: <20210419091231.55684-1-luca.fancellu@arm.com>
 <20210419091231.55684-4-luca.fancellu@arm.com>
 <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
 <0F26E53E-0C0A-4596-AC88-F803BC7A0493@arm.com>
 <c6d80a92-b8e7-703a-e051-18dc845b242a@suse.com>
 <ADF98BE7-02CA-48C1-B0CF-E4C7B4C0E828@arm.com>
 <dbcf10ef-0d40-a687-d242-f01a01bca342@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0170.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18a::13) To DB7PR08MB3626.eurprd08.prod.outlook.com
 (2603:10a6:10:4a::16)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 906b63fb-7a42-4ca9-52ec-08d90561ca44
X-MS-TrafficTypeDiagnostic: DB6PR0801MB1829:|DB6PR08MB2662:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<DB6PR08MB266210D95096622E789245A1E4469@DB6PR08MB2662.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 WtjFi7vCTRkfiMs71J2wkGcs5Jqu35+5SPEDj1EJskdr8nwNnONHjKZzeXH2f6eu+rf7vGZrj5XE4OD5wENBkmfupCmoQr5y7gfB08hVsLx1uG0O8q4xYSWlDFUque0JyQ6X+Q+j7XLNEm3L5DJz3cal/+rgxw/6b1/illuY/Kbc+3Mu3iQn37Co9qn+h1dNA5YTKKUWW6lSfdp+9EwCYzDDsNr7KI90vyNHAf6Vfo/jEFMXhdbOpqHVRrpxJkfD7alBjTDS9ZTaw5AwHoUqbmJpwQZP4XcYfaHVjF4X/dJOygzHmy98fuIjKwhir28VmTUQ+A9898ByWTZb9fDEm0DCbUxJWNQrs2nccmehfeYbX0LTHeAvOJaOaIeEZsGmkz4uuyffGlGqmkkoCasTovAaQiLJKp0TWi+jLUx1VmYsHGEMzdw/watTITgfRTcmLXFxi6I6iar1cbee8wF1azXJWsIBCjBa+myXhSdT+Oltde5nyABj6nOZxaliP0Ynac1aI4h/6OhV+vVpaiwNKNlDxheVs28LU+0WSZul78Y2otUKBPTMR2B9m8/4YTOCbzj0trCpvM8WOAFOVw20v+WECesPz/k4Uhi5XVafyicfvByWQlXxp4/3s4S+iW3AII3kcy6szsxchff5rDob1P7SxziYmv9MZk61kfmq8WnFboKPsVWfOC61/mfThc6iQGb7sG8sbu4sSi9CjDb5n6nlxyfJ/1Rix3Z8ZKMM5U279aOPmwhwxGi8eZZwbtAq
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3626.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(346002)(39860400002)(136003)(376002)(5660300002)(86362001)(33656002)(36756003)(6916009)(6666004)(54906003)(316002)(44832011)(53546011)(38100700002)(66556008)(66946007)(66574015)(83380400001)(8676002)(38350700002)(8936002)(2906002)(7696005)(52116002)(478600001)(956004)(16526019)(6486002)(4326008)(186003)(2616005)(26005)(966005)(66476007)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB1829
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ae6397cd-9f11-45d2-6eec-08d90561c1f3
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cX1QlGc0wDZ3steI79Tp2uF3XH6ASXUdvr9C3dVXWmFQZglnaL4jROTMPUtWTVIF9pshwnHPHV6SJAA8TF+Gjjqt4tLiOjijAO615moMPa+n70V5lLo0j146e+mKKkdQY+icJ0KPO46P/nSIWa3hNlL8M9Mmk0i73Zw2gBxk1H8bpit2NqXLmYuPiqgHeGbPMipaJDjcYrIaX8alnAPLpC4mccHN0xIXtloDER2SUq12kXzYx1TSQDUy/zT77dmodkI6+UHd/KX5juSHdo7QYVTpw/r2HcNVNGB2w4DK6NVi5QDd8UvpS+ISht39x4lZb2NmclaZHjhz5QhJuUubkZKN2f/ZKYplK1XGrmttZi05yw4BoLxnsm2pZ7JYEh99aXgYttAOIc/2KJT6BH0YWFvES1xEzOUM5djE0wYlSTwVBILgFOHTGr6mV+YQAuoumRjEY6Yv4hB2TDNkcdpI6R2A1rcykygKZT7vb6/TEdBOxk9ugfz2XECV/Xd0jsOBYC2Ugei8WrXCUo9e+Duyh+RebbNoB/menseAPshvGn70h+7Tr/f+3efXd7FCis93kB1Fw34Jwe8eejLkD7hMXFqrhmnp71ysvXIOVKP3/rwPlkzGws2lcxFTesm0TgRRirXCEolztW6ROZtq1r1AguDVGk53hk7Bh7qslnHj98SZHq3eB4X/g02sT26Y92dRmTXf1LUZk2RkyNDSNpRDEkC2nRHhMjpqi8Hd0JIwWkN4dQQFsF/Le9wC9kuKNfeRarPwtRuAltGyoE8t7vuf3g==
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:(4636009)(136003)(39860400002)(396003)(346002)(376002)(46966006)(36840700001)(6666004)(83380400001)(26005)(34070700002)(33656002)(16526019)(70586007)(356005)(956004)(44832011)(2906002)(82310400003)(36756003)(478600001)(2616005)(47076005)(70206006)(7696005)(5660300002)(6862004)(4326008)(86362001)(66574015)(316002)(8676002)(53546011)(186003)(6486002)(8936002)(966005)(81166007)(336012)(36860700001)(82740400003)(54906003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 07:39:41.1340
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 906b63fb-7a42-4ca9-52ec-08d90561ca44
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:
	VE1EUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR08MB2662



> On 20 Apr 2021, at 11:27, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 20.04.2021 11:42, Luca Fancellu wrote:
>>> On 20 Apr 2021, at 10:14, Jan Beulich <jbeulich@suse.com> wrote:
>>> On 20.04.2021 10:46, Luca Fancellu wrote:
>>>>> On 19 Apr 2021, at 12:05, Jan Beulich <jbeulich@suse.com> wrote:
>>>>> On 19.04.2021 11:12, Luca Fancellu wrote:
>>>>>> - */
>>>>>> -
>>>>>> -/*
>>>>>> - * Reference to a grant entry in a specified domain's grant table.
>>>>>> - */
>>>>>> -typedef uint32_t grant_ref_t;
>>>>>=20
>>>>> Why does this get moved ...
>>>>>=20
>>>>>> -
>>>>>> -/*
>>>>>> + *
>>>>>> * A grant table comprises a packed array of grant entries in one or =
more
>>>>>> * page frames shared between Xen and a guest.
>>>>>> + *
>>>>>> * [XEN]: This field is written by Xen and read by the sharing guest.
>>>>>> + *
>>>>>> * [GST]: This field is written by the guest and read by Xen.
>>>>>> + *
>>>>>> + * @addtogroup grant_table Grant Tables
>>>>>> + * @{
>>>>>> */
>>>>>>=20
>>>>>> -/*
>>>>>> - * Version 1 of the grant table entry structure is maintained purel=
y
>>>>>> - * for backwards compatibility.  New guests should use version 2.
>>>>>> +/**
>>>>>> + * Reference to a grant entry in a specified domain's grant table.
>>>>>> */
>>>>>> +typedef uint32_t grant_ref_t;
>>>>>=20
>>>>> ... here, past a comment unrelated to it?
>>>>=20
>>>> The comment =E2=80=9CVersion 1 of the grant table entry [=E2=80=A6]=E2=
=80=9D was moved on top of the struct grant_entry_v1, in this way
>>>> Doxygen associate the comment to that structure.
>>>>=20
>>>> The comment =E2=80=9CReference to a grant entry in a specified domain'=
s grant table.=E2=80=9D Is moved on top of typedef uint32_t grant_ref_t
>>>> for the same reason above
>>>=20
>>> But it's the other comment ("A grant table comprises ...") that I
>>> was asking about.
>>=20
>> I thought it was part of the brief about grant tables, am I wrong? For t=
hat reason I moved it.
>=20
> Well, the comment talks about grant table entries (the layout of which
> gets defined immediately below, as visible in the original patch), not
> grant references.

Hi Jan,

Of course this can be reverted back if it is wrong.=20

I=E2=80=99ve prepared a page with the output of all my commits (some of the=
m are not yet in the ML),
so anyone can have a look on what is the output and how can sphinx+doxygen =
improve
the quality of the documentation.

Here:=20

https://luca.fancellu.gitlab.io/xen-docs/hypercall-interfaces/arm64.html

the document Is trying to reproduce this other one from the current docs:

https://xenbits.xen.org/docs/unstable/hypercall/arm/index.html

You will receive a warning from the browser because the gitlab certificate =
has problems when
the username has a dot in it.

>=20
>>>>>> @@ -243,23 +258,27 @@ union grant_entry_v2 {
>>>>>>    * In that case, the frame field has the same semantics as the
>>>>>>    * field of the same name in the V1 entry structure.
>>>>>>    */
>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>   struct {
>>>>>>       grant_entry_header_t hdr;
>>>>>>       uint32_t pad0;
>>>>>>       uint64_t frame;
>>>>>>   } full_page;
>>>>>> +    /** @endcond */
>>>>>>=20
>>>>>>   /*
>>>>>>    * If the grant type is GTF_grant_access and GTF_sub_page is set,
>>>>>>    * @domid is allowed to access bytes [@page_off,@page_off+@length)
>>>>>>    * in frame @frame.
>>>>>>    */
>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>   struct {
>>>>>>       grant_entry_header_t hdr;
>>>>>>       uint16_t page_off;
>>>>>>       uint16_t length;
>>>>>>       uint64_t frame;
>>>>>>   } sub_page;
>>>>>> +    /** @endcond */
>>>>>>=20
>>>>>>   /*
>>>>>>    * If the grant is GTF_transitive, @domid is allowed to use the
>>>>>> @@ -270,12 +289,14 @@ union grant_entry_v2 {
>>>>>>    * The current version of Xen does not allow transitive grants
>>>>>>    * to be mapped.
>>>>>>    */
>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>   struct {
>>>>>>       grant_entry_header_t hdr;
>>>>>>       domid_t trans_domid;
>>>>>>       uint16_t pad0;
>>>>>>       grant_ref_t gref;
>>>>>>   } transitive;
>>>>>> +    /** @endcond */
>>>>>=20
>>>>> While already better than the introduction of strange struct tags,
>>>>> I'm still not convinced we want this extra clutter (sorry). Plus -
>>>>> don't these additions mean the sub-structures then won't be
>>>>> represented in the generated doc, rendering it (partly) useless?
>>>>=20
>>>> Are you suggesting to remove the structure from docs?
>>>=20
>>> Just yet I'm not suggesting anything here - I was merely guessing at
>>> the effect of "@cond" and the associated "skip ..." to mean that this
>>> construct makes doxygen skip the enclosed section. If that's not the
>>> effect, then maybe the comment wants rewording? (And then - what does
>>> @cond mean?)
>>=20
>> Yes you were right, in the documentation the structure grant_entry_v2 wo=
n=E2=80=99t display the
>> anonymous union.
>=20
> In which case I'm now completely unclear about your prior question.

We have to choose just if the struct is useful even if it=E2=80=99s partial=
ly documented or if
it=E2=80=99s better to hide it completely from the docs since it can=E2=80=
=99t be fully documented.

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:42:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:42:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115080.219391 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZTyl-0006VO-K6; Thu, 22 Apr 2021 07:42:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115080.219391; Thu, 22 Apr 2021 07:42: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 1lZTyl-0006VH-H1; Thu, 22 Apr 2021 07:42:27 +0000
Received: by outflank-mailman (input) for mailman id 115080;
 Thu, 22 Apr 2021 07:42:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wiI7=JT=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lZTyk-0006VC-E5
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:42:26 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1bf16def-fa3f-4f7a-957e-1d657e2d6ba9;
 Thu, 22 Apr 2021 07:42:25 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lZTye-000OCE-2t; Thu, 22 Apr 2021 07:42: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: 1bf16def-fa3f-4f7a-957e-1d657e2d6ba9
Date: Thu, 22 Apr 2021 08:42:20 +0100
From: Tim Deegan <tim@xen.org>
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>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Jun Nakajima <jun.nakajima@intel.com>
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
Message-ID: <YIEo3DQojgc0zlzw@deinos.phlegethon.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
 <YHs2AJ6pqrAw7uew@deinos.phlegethon.org>
 <d698a29e-fb4e-a650-9e48-ad209e64c800@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <d698a29e-fb4e-a650-9e48-ad209e64c800@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 13:25 +0200 on 19 Apr (1618838726), Jan Beulich wrote:
> On 17.04.2021 21:24, Tim Deegan wrote:
> > At 12:40 +0200 on 12 Apr (1618231248), Jan Beulich wrote:
> >> By making this page global, we also eliminate the need to refcount it,
> >> or to assign it to any domain in the first place.
> > 
> > What is the aim here?  To save 4k per domain?  It seems to come out
> > about even for adding and removing code. 
> 
> True, but still it looks wrong to me to use a page per guest when one
> her host suffices. Think about many tiny, short-lived VMs (as in
> Tamas'es VM forking).

OK, fair enough.

> >> --- a/xen/arch/x86/mm/shadow/set.c
> >> +++ b/xen/arch/x86/mm/shadow/set.c
> >> @@ -94,6 +94,22 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
> >>      ASSERT(!sh_l1e_is_magic(sl1e));
> >>      ASSERT(shadow_mode_refcounts(d));
> >>  
> >> +    /*
> >> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
> >> +     * get accessed, and hence there's no need to refcount it (and refcounting
> >> +     * would fail, due to the page having no owner).
> >> +     */
> >> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
> > 
> > Would it be better to check specifically for mfn == apic_access_mfn
> > (and apic_access_mfn != 0, I guess)?
> 
> Roger did ask about the same - I neither want to expose apic_access_mfn
> outside its CU, nor do I want to introduce an accessor function. Both
> feel like layering violations to me.

I think that this is even more of a layering violation: what we
actually want is to allow un-refcounted mappings of the
apic_access_mfn, but to do it we're relying on an internal
implementation detail (that it happens to be un-owned and PGC_extra)
rather than giving ourselves an API.

And so we're tangled up talking about how to write comments to warn
our future selves about the possible side-effects.

> >  If we want this behaviour for
> > for all un-owned PGC_extra MFNs it would be good to explain that in the
> > comments.
> 
> This is hard to tell without knowing which (or even if) further such
> PGC_extra pages will appear. Hence any comment to that effect would be
> guesswork at best. Of course I can add e.g. "Other pages with the same
> properties would be treated the same", if that's what you're after?

If you want to go this way there should be a comment here saying that
we're allowing this for all PGC_extra pages because we need it for
apic_access_mfn, and a comment at PGC_extra saying that it has this
effect.

Cheers,

Tim


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 07:52:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 07:52:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115085.219403 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZU8E-0007WQ-Ip; Thu, 22 Apr 2021 07:52:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115085.219403; Thu, 22 Apr 2021 07:52: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 1lZU8E-0007WJ-EY; Thu, 22 Apr 2021 07:52:14 +0000
Received: by outflank-mailman (input) for mailman id 115085;
 Thu, 22 Apr 2021 07:52:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wiI7=JT=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lZU8D-0007WE-0y
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 07:52:13 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f4cf9117-f2ad-4d32-9d7a-9618c5c9fdfe;
 Thu, 22 Apr 2021 07:52:12 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lZU8A-000OFc-M4; Thu, 22 Apr 2021 07:52: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: f4cf9117-f2ad-4d32-9d7a-9618c5c9fdfe
Date: Thu, 22 Apr 2021 08:52:10 +0100
From: Tim Deegan <tim@xen.org>
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>
Subject: Re: [PATCH 6/7] x86/shadow: Make _shadow_prealloc() compile at -Og
Message-ID: <YIErKtfduIUqTEaJ@deinos.phlegethon.org>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
 <20210419140132.16909-7-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <20210419140132.16909-7-andrew.cooper3@citrix.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 15:01 +0100 on 19 Apr (1618844491), Andrew Cooper wrote:
> When compiling at -Og:
> 
>   In file included from
>   /builds/xen-project/people/andyhhp/xen/xen/include/asm/domain.h:4:0,
>                    from /builds/xen-project/people/andyhhp/xen/xen/include/xen/domain.h:8,
>                    from /builds/xen-project/people/andyhhp/xen/xen/include/xen/sched.h:11,
>                    from /builds/xen-project/people/andyhhp/xen/xen/include/xen/ioreq.h:22,
>                    from common.c:23:
>   common.c: In function '_shadow_prealloc':
>   /builds/xen-project/people/andyhhp/xen/xen/include/xen/mm.h:252:55: error: 't' may be used uninitialized in this function [-Werror=maybe-uninitialized]
>        return page != head->next ? pdx_to_page(page->list.prev) : NULL;
>                                                          ^
>   common.c:933:28: note: 't' was declared here
>        struct page_info *sp, *t;
>                               ^
> 
> I'm not certain the analysis is correct.  't' is a temporary variable, and is
> clearly initialised before use in foreach_pinned_shadow().  Either way,
> initialising it to NULL placates the compiler.

Yeah, this analysis seems wrong to me too - if nothing else, why does
it not complain about the identical code in shadow_blow_tables() below?

That said, since the non-debug build doesn't complain here, presumably it
will be able to elide this dead store.

Acked-by: Tim Deegan <tim@xen.org>


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:06:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:06:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115092.219415 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUM4-0000nB-Ux; Thu, 22 Apr 2021 08:06:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115092.219415; Thu, 22 Apr 2021 08: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 1lZUM4-0000n4-Rt; Thu, 22 Apr 2021 08:06:32 +0000
Received: by outflank-mailman (input) for mailman id 115092;
 Thu, 22 Apr 2021 08:06:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZUM4-0000mz-5E
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:06:32 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8607b41f-53a5-433a-840f-2c05ce48c5f9;
 Thu, 22 Apr 2021 08:06:31 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1EF53B011;
 Thu, 22 Apr 2021 08:06: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: 8607b41f-53a5-433a-840f-2c05ce48c5f9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619078790; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=DLaw38itUV8ekonOYsPv8OLtOA/Fwt7kCXWA1t6Hx7Q=;
	b=XdMNwXFGMJtmj/eKJxZRMzInCrls6dyzBRszSTrDvzY4QOaoQjWKqxoRnLhyR8Lr+Hqneg
	khlBFyhj0Lbnqc4oRh+44j5aplJ0yPIo3ZoBfzBl616+lgXXGx7SIpbg8Ni4ejweHAZ3HE
	ggHW7hQ/W9pqdRciEIlLSB0g5S+lRxY=
Subject: Re: [PATCH v2 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210419091231.55684-1-luca.fancellu@arm.com>
 <20210419091231.55684-4-luca.fancellu@arm.com>
 <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
 <0F26E53E-0C0A-4596-AC88-F803BC7A0493@arm.com>
 <c6d80a92-b8e7-703a-e051-18dc845b242a@suse.com>
 <ADF98BE7-02CA-48C1-B0CF-E4C7B4C0E828@arm.com>
 <dbcf10ef-0d40-a687-d242-f01a01bca342@suse.com>
 <91B2399E-2E91-44A9-A5F2-C55F42F52F52@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <62112712-7ace-3cad-8bc5-b5656fdd42f8@suse.com>
Date: Thu, 22 Apr 2021 10:06:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <91B2399E-2E91-44A9-A5F2-C55F42F52F52@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 09:39, Luca Fancellu wrote:
>> On 20 Apr 2021, at 11:27, Jan Beulich <jbeulich@suse.com> wrote:
>> On 20.04.2021 11:42, Luca Fancellu wrote:
>>>> On 20 Apr 2021, at 10:14, Jan Beulich <jbeulich@suse.com> wrote:
>>>> On 20.04.2021 10:46, Luca Fancellu wrote:
>>>>>> On 19 Apr 2021, at 12:05, Jan Beulich <jbeulich@suse.com> wrote:
>>>>>> On 19.04.2021 11:12, Luca Fancellu wrote:
>>>>>>> - */
>>>>>>> -
>>>>>>> -/*
>>>>>>> - * Reference to a grant entry in a specified domain's grant table.
>>>>>>> - */
>>>>>>> -typedef uint32_t grant_ref_t;
>>>>>>
>>>>>> Why does this get moved ...
>>>>>>
>>>>>>> -
>>>>>>> -/*
>>>>>>> + *
>>>>>>> * A grant table comprises a packed array of grant entries in one or more
>>>>>>> * page frames shared between Xen and a guest.
>>>>>>> + *
>>>>>>> * [XEN]: This field is written by Xen and read by the sharing guest.
>>>>>>> + *
>>>>>>> * [GST]: This field is written by the guest and read by Xen.
>>>>>>> + *
>>>>>>> + * @addtogroup grant_table Grant Tables
>>>>>>> + * @{
>>>>>>> */
>>>>>>>
>>>>>>> -/*
>>>>>>> - * Version 1 of the grant table entry structure is maintained purely
>>>>>>> - * for backwards compatibility.  New guests should use version 2.
>>>>>>> +/**
>>>>>>> + * Reference to a grant entry in a specified domain's grant table.
>>>>>>> */
>>>>>>> +typedef uint32_t grant_ref_t;
>>>>>>
>>>>>> ... here, past a comment unrelated to it?
>>>>>
>>>>> The comment “Version 1 of the grant table entry […]” was moved on top of the struct grant_entry_v1, in this way
>>>>> Doxygen associate the comment to that structure.
>>>>>
>>>>> The comment “Reference to a grant entry in a specified domain's grant table.” Is moved on top of typedef uint32_t grant_ref_t
>>>>> for the same reason above
>>>>
>>>> But it's the other comment ("A grant table comprises ...") that I
>>>> was asking about.
>>>
>>> I thought it was part of the brief about grant tables, am I wrong? For that reason I moved it.
>>
>> Well, the comment talks about grant table entries (the layout of which
>> gets defined immediately below, as visible in the original patch), not
>> grant references.
> 
> Hi Jan,
> 
> Of course this can be reverted back if it is wrong. 
> 
> I’ve prepared a page with the output of all my commits (some of them are not yet in the ML),
> so anyone can have a look on what is the output and how can sphinx+doxygen improve
> the quality of the documentation.
> 
> Here: 
> 
> https://luca.fancellu.gitlab.io/xen-docs/hypercall-interfaces/arm64.html

The doc looks fine in this regard, but the C header should remain
properly ordered as well.

>>>>>>> @@ -243,23 +258,27 @@ union grant_entry_v2 {
>>>>>>>    * In that case, the frame field has the same semantics as the
>>>>>>>    * field of the same name in the V1 entry structure.
>>>>>>>    */
>>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>>   struct {
>>>>>>>       grant_entry_header_t hdr;
>>>>>>>       uint32_t pad0;
>>>>>>>       uint64_t frame;
>>>>>>>   } full_page;
>>>>>>> +    /** @endcond */
>>>>>>>
>>>>>>>   /*
>>>>>>>    * If the grant type is GTF_grant_access and GTF_sub_page is set,
>>>>>>>    * @domid is allowed to access bytes [@page_off,@page_off+@length)
>>>>>>>    * in frame @frame.
>>>>>>>    */
>>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>>   struct {
>>>>>>>       grant_entry_header_t hdr;
>>>>>>>       uint16_t page_off;
>>>>>>>       uint16_t length;
>>>>>>>       uint64_t frame;
>>>>>>>   } sub_page;
>>>>>>> +    /** @endcond */
>>>>>>>
>>>>>>>   /*
>>>>>>>    * If the grant is GTF_transitive, @domid is allowed to use the
>>>>>>> @@ -270,12 +289,14 @@ union grant_entry_v2 {
>>>>>>>    * The current version of Xen does not allow transitive grants
>>>>>>>    * to be mapped.
>>>>>>>    */
>>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>>   struct {
>>>>>>>       grant_entry_header_t hdr;
>>>>>>>       domid_t trans_domid;
>>>>>>>       uint16_t pad0;
>>>>>>>       grant_ref_t gref;
>>>>>>>   } transitive;
>>>>>>> +    /** @endcond */
>>>>>>
>>>>>> While already better than the introduction of strange struct tags,
>>>>>> I'm still not convinced we want this extra clutter (sorry). Plus -
>>>>>> don't these additions mean the sub-structures then won't be
>>>>>> represented in the generated doc, rendering it (partly) useless?
>>>>>
>>>>> Are you suggesting to remove the structure from docs?
>>>>
>>>> Just yet I'm not suggesting anything here - I was merely guessing at
>>>> the effect of "@cond" and the associated "skip ..." to mean that this
>>>> construct makes doxygen skip the enclosed section. If that's not the
>>>> effect, then maybe the comment wants rewording? (And then - what does
>>>> @cond mean?)
>>>
>>> Yes you were right, in the documentation the structure grant_entry_v2 won’t display the
>>> anonymous union.
>>
>> In which case I'm now completely unclear about your prior question.
> 
> We have to choose just if the struct is useful even if it’s partially documented or if
> it’s better to hide it completely from the docs since it can’t be fully documented.

I've never suggested to hide it completely (aiui doing so would
mean widening the scope of the @cond, i.e. there would still be
extra clutter). Instead I was trying to suggest to make sure the
struct gets fully documented despite the absence of struct tags.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:15:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:15:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115096.219427 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUUD-0001n5-R0; Thu, 22 Apr 2021 08:14:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115096.219427; Thu, 22 Apr 2021 08:14:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUUD-0001my-NX; Thu, 22 Apr 2021 08:14:57 +0000
Received: by outflank-mailman (input) for mailman id 115096;
 Thu, 22 Apr 2021 08:14:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZUUC-0001mt-Td
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:14:56 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3d3c2151-df2f-4fbc-a862-583818ac48d0;
 Thu, 22 Apr 2021 08:14: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: 3d3c2151-df2f-4fbc-a862-583818ac48d0
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619079295;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=tuGsWGEPy7oS6sUDFkUuuhbXmbnww2DnD2caxeVTCMc=;
  b=eay2fHgBONwPwloN5nP97e0YkywZMejXdAfn7pCJeBEGt7CkhiIIPDQL
   7BxzEvGvCVllDfbcZYydp5sqZHPvYW+ow+U8BOygKYLrR5wy+4vMpFi33
   jggFUgW3Mi+f5qJn+oxJBnk1QhJl0F748p/tPbB4tk6mBbnT07IsIB5dL
   4=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: cXaXxCS4VOsQhuw7VpnWVT7SNgdmJXOTZlBSEWvojwDZOrzD+DlcJas/dFP7tzMYU+3SgHvpCK
 1Qaz5QlKOwvh+dQbk+nMRMbntBepH7RF3XW+atCOEtYrHK40iW+y0cPS96PfKhuIOGHBUd4lX0
 ElD5LwrEKCGw/QnB7Wy72P680erL13tiYvewmoUO2mw77ZE0ovthFsKagGZr4rzlQTo8cyVG81
 RCYuAT9dhXehFrGhA8ypOxkQXp10i1oeDL/M/xz+/ErRrYgGyPgv8Iuai8jV8ymv7e3A8Oyfe2
 T2M=
X-SBRS: 5.2
X-MesageID: 43647975
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:1SCla6i1c6witnyfe0JVcQF6sXBQXwh13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy4N5B9efdSPhv3alK5wn0Jv6z1TbaknD38N+9Y
 MlSahxD9XsEUN35PyR3CCUG8stqePpzImGnuHbpk0CcShPS4VNqzh0ERyaFEoefngiObMcGI
 CH7sRK4xqMEE5nDfiTPXUOU+jdq9CjrvuPDSIuPBI79BKIyQqh9b+SKXOl9y0DWDBCy6pKyx
 mmryXF4MyY0s2T+1vn+EL4q79Xn9bgzdUrPr3wtuElbg/CpyztSIBoW7iptC04rue1+D8R4a
 XxiiZlBetfwTf8eXy0vAvM1mDboUkTwk6n83C0qz/CptH0Xz0zAcYpv/MmTjLpr3AOkfs59Y
 Aj5RP/i7NnSSnusQ642v3zEzZtrUawqWpKq59ps1VvFbEwRZUUkZYS5ypuYfE9NRO/0q8LOs
 90AvrR4f5HGGnqFUzxjy1UzNugUm9bJGb+fmEy/sic0z1hlHtk1UcvxMsGgnca9J4mIqM0n9
 j5Dg==
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="43647975"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RXJDtdrhIYX+cxHTRbc1ICqIz+salLdq6r0cAZU4NsdpK+mj0aT3QUQHsY0z0FD8e0o+ub9gYF38sXSOiMwRFxlgGZXmRGGZ6LOyE1+1xVMAhGfeElNIiUZmCkv06ZyWJdCFeiDwPk41Np+NqOdP9mtKChgqrPweDqVg6+6p2ygihcL8bV+rGSvemKLMZWzSkERRmkvqLVzPW18sWcBEwrahrDxd3czvji//aRhxGkBHvgnGprX7DD2aN19jG7bJ5v0W+rQPFyU3AqV9sqA1G314X0vmgsaYlv90sX6oVakfw4fgNPZa3PspLb2a4rpibY5mTDvHPp01qHxiW3WF+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-SenderADCheck;
 bh=CtO0BHfBfHhSM7plYYfl1/FJwMXrgySzDccZ+kX1fIc=;
 b=hfu2cy76VhtdnYgWqLemL/ZpSNUFkUjPZH2htlS4c4M3g9Z08VQpcWSGYEI58q+MXqosES8qcjnfAECVDdxPnLtiZ9E5IEuWl4kO0ov4chs/1ZQYrjzeVxHgXLrWRoWoFJdqSw2YXUzUC7uN/Ay8wRB4BYpu2nrTS7XraUkQNDZ4FAQ45xiPFn2Q7ZWUaj0m1dP+9rvWK9oMXO4xyuFIVILJR+08rUb4e/Yebpmn4zLJ0Xll4TRIxRBflIzbnl+uQabmmr1C6t1PoAjqC4jkl/SW2FTSf51I2gApiholWtnwQfSHnHGwDiqQo+UwAa/mBf+HfQ5MlpdEhS04EQjn9g==
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=CtO0BHfBfHhSM7plYYfl1/FJwMXrgySzDccZ+kX1fIc=;
 b=MfJ7cm5b04yX0tMjnpMBXiU6gJMbaVCpGw+k59CWrePnfCXTzsYugWXDKjLurvnvJAeCMM5L6zfrs4K13HMB4sv2UNdvqKzjDwvuW/KMvzTs4s03H1MzHZwKU27p9qGoVkMOfOt6uzd/lMTbSPWeHWZ2L9opalLhgacf57Y201Q=
Date: Thu, 22 Apr 2021 10:14:19 +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/8] x86/EFI: keep debug info in xen.efi
Message-ID: <YIEwW3HQuTtgWH5M@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
X-ClientProxiedBy: MR2P264CA0169.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::8)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 91045930-61cd-4f8c-b018-08d90566a45a
X-MS-TrafficTypeDiagnostic: DM6PR03MB3674:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB36740D6F0320D7A2F21C57A28F469@DM6PR03MB3674.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 6NKh82QeH9mEb6H7luz5W06Ouy/G6fGldHt9qt55VWXHOBb9BI+6gP9Qk/SF8DhzXyWBHKMhGaoPGyySo0u809vyv9a9FAzxsSaWgtGenv0AgnaJwcfyeoJ80MGdbbezohsBGh/aHtuHiLW/aK68JR64XVOsCLa0Ogw721mkWaxY/LGjc0oqbI5JeeqdRQACcWBD2RuagtyiOZ1jM0KoVL0035h+yrvpZZw2dEQw6Mvp/7DuBvbk//EgaK5jO9cTOHVoPqobXObFmVadJ+4RURWQEf+arAWbm47KFTjrx63cGMI8a8I9BUFiLeDKcUuXONW/Nd10VBq9fHin+iRFoBgSrZs/BQwe/rczfBaCIEot53FYYWX/cHzqPS/mTH51yLT9dIcjSwHxouQ2cG9d+/UAAg55vOthxBrsDZPvmrNJq4RB0PYniVPVzCpMhq+X7TglYg7koyecVhWX2+Si1OJGcLTURLjLvdFAhc8mSuU1x0KIeQ4FQo2BEiQ6GsX5Zx4OWqPDMW3N1kymk7i4Chtnt66/nLzKVg8QS6LyjdWQj6ME0uNAPXqPdd87t1DSprez7c89M4U95oekQgEQ3fCCqjOm4qFN0oD5arXueiI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(39860400002)(346002)(136003)(396003)(366004)(376002)(66946007)(5660300002)(9686003)(6496006)(86362001)(186003)(2906002)(6916009)(54906003)(66476007)(66556008)(33716001)(6486002)(316002)(83380400001)(38100700002)(85182001)(4326008)(16526019)(8936002)(53546011)(956004)(478600001)(26005)(6666004)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 91045930-61cd-4f8c-b018-08d90566a45a
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 08:14:25.2811
 (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: NsO7hSI8oJlX1AdTW3PoOF7MNrvAXBqSEcHJmjCHp7k1pAH08iE+O57vqD2Wwyck+O2KmcM5+/nE15MCaMswSA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3674
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 05:38:42PM +0200, Jan Beulich wrote:
> On 21.04.2021 17:30, Roger Pau Monné wrote:
> > On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
> >> On 21.04.2021 13:15, Roger Pau Monné wrote:
> >>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
> >>>> --- a/xen/arch/x86/xen.lds.S
> >>>> +++ b/xen/arch/x86/xen.lds.S
> >>>> @@ -312,10 +312,60 @@ SECTIONS
> >>>>      *(.reloc)
> >>>>      __base_relocs_end = .;
> >>>>    }
> >>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
> >>>> -  . = ALIGN(__section_alignment__);
> >>>> -  DECL_SECTION(.pad) {
> >>>> -    . = ALIGN(MB(16));
> >>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
> >>>> +     *(.debug_abbrev)
> >>>> +  }
> >>>> +  .debug_info ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_info)
> >>>> +    *(.gnu.linkonce.wi.*)
> >>>> +  }
> >>>> +  .debug_types ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_types)
> >>>> +  }
> >>>> +  .debug_str ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_str)
> >>>> +  }
> >>>> +  .debug_line ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_line)
> >>>> +    *(.debug_line.*)
> >>>> +  }
> >>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_line_str)
> >>>> +  }
> >>>> +  .debug_names ALIGN(4) (NOLOAD) : {
> >>>> +    *(.debug_names)
> >>>> +  }
> >>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
> >>>> +    *(.debug_frame)
> >>>> +  }
> >>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_loc)
> >>>> +  }
> >>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
> >>>> +    *(.debug_loclists)
> >>>> +  }
> >>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
> >>>> +    *(.debug_ranges)
> >>>> +  }
> >>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
> >>>> +    *(.debug_rnglists)
> >>>> +  }
> >>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
> >>>> +    *(.debug_addr)
> >>>> +  }
> >>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_aranges)
> >>>> +  }
> >>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_pubnames)
> >>>> +  }
> >>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
> >>>> +    *(.debug_pubtypes)
> >>>> +  }
> >>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
> >>>> +  __image_end__ = .;
> >>>> +  .pad ALIGN(__section_alignment__) : {
> >>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
> >>>
> >>> I think this is inside an ifdef EFI region, since this is DWARF info
> >>> couldn't it also be present when building with EFI disabled?
> >>
> >> Of course (and it's not just "could" but "will"), yet the linker will
> >> do fine (and perhaps even better) without when building ELF. Also
> >> note that we'll be responsible for keeping the list of sections up-to-
> >> date. The linker will recognize Dwarf sections by looking for a
> >> .debug_ prefix. We can't use such here (or at least I'm not aware of
> >> a suitable mechanism); .debug_* would mean munging together all the
> >> different kinds of Dwarf sections. Hence by limiting the explicit
> >> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
> > 
> > Right, so we will have to keep this list of debug_ sections updated
> > manually if/when more of those appear as part of DWARF updates?
> 
> Yes.
> 
> > Do we have a way to get some kind of warning or error when a new
> > section not explicitly handled here appears?
> 
> ld 2.37 will start warning about such sections, as they'd land at
> VA 0 and hence below image base.

That seems like a bug in ld?

The '--image-base' option description mentions: "This is the lowest
memory location that will be used when your program or dll is
loaded.", so I would expect that if the option is used the default VA
should be >= image-base, or else the description of the option is not
consistent, as ld will still place sections at addresses below
image-base.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:15:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:15:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115099.219439 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUUc-0001si-8J; Thu, 22 Apr 2021 08:15:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115099.219439; Thu, 22 Apr 2021 08:15: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 1lZUUc-0001sb-4R; Thu, 22 Apr 2021 08:15:22 +0000
Received: by outflank-mailman (input) for mailman id 115099;
 Thu, 22 Apr 2021 08:15:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUUa-0001sR-F5
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:15:20 +0000
Received: from mail-pj1-x1036.google.com (unknown [2607:f8b0:4864:20::1036])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fd00650c-1449-4399-85de-e1ea92130552;
 Thu, 22 Apr 2021 08:15:19 +0000 (UTC)
Received: by mail-pj1-x1036.google.com with SMTP id
 f2-20020a17090a4a82b02900c67bf8dc69so542441pjh.1
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:15:19 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id r1sm1538054pjo.26.2021.04.22.01.15.11
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:15: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: fd00650c-1449-4399-85de-e1ea92130552
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:mime-version
         :content-transfer-encoding;
        bh=FvJrG6v4LzxdU4oF5EoFjO30pTB4A85M49SYo7WPBCw=;
        b=AMMWTSQCSdwHsUUdJCOC7YgUNrGXxRc8ufe8ShxXHlWgfWfBk0oS2HBubv7AQuSAMq
         M0urTLFpK7JN5/zRDUB5Fe/pClBUqpuo+IAb+avdRaxLPwR3C9WYDtIQPHvIq7nNv2DT
         9Un/y51JxY/e6QYvwfJXjQ/aVxL0I13goxqlM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version
         :content-transfer-encoding;
        bh=FvJrG6v4LzxdU4oF5EoFjO30pTB4A85M49SYo7WPBCw=;
        b=QxXj+XG86LMhhVKo15xOUMUgl2bM8UTTNFytIsu3nH7pSnBW/FAs/2ofdoCGquguwz
         ofbz4cJ1vC1tKGn9wSY1jaV2ygNSZViK+ZfhsyUtGRdeanX8ygfP9kV3qhL9VhbeU5Xt
         XFM5ilCcWTMCTdeP45IwbJbuiM7auVpUTOunFMuqokfLAffiDw3ik+K8oPykSkPkDHbV
         JLp5MX6+crlsOBs+zLv1xS/TBGZuZPJiMJqsUEfba6rKAIxpcgBc0RcDlOHe/g3buUAO
         XXhfiAYUnfHnle+1MzQjOCZL6OtTzMw/8qOndPxLyYaUNYbrBVQQOC2PK3K5c/OxXfWj
         i8pA==
X-Gm-Message-State: AOAM531pFhnhJW/su6mToD4efBfsB5mwiQBHL1MdnrBz9cwH5HexBzGT
	Hh3Fe9mlVq4uU6iE9jgDE9puIQ==
X-Google-Smtp-Source: ABdhPJyk2JPTp3iko6u7v5EX3M6TzCT5gzjwwnFh5uBqfgtgyUVxzY91nyUWyB+4tQ6Gme84DA/b2g==
X-Received: by 2002:a17:902:edd5:b029:e9:7477:5f0a with SMTP id q21-20020a170902edd5b02900e974775f0amr2141960plk.81.1619079318644;
        Thu, 22 Apr 2021 01:15:18 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 00/16] Restricted DMA
Date: Thu, 22 Apr 2021 16:14:52 +0800
Message-Id: <20210422081508.3942748-1-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series implements mitigations for lack of DMA access control on
systems without an IOMMU, which could result in the DMA accessing the
system memory at unexpected times and/or unexpected addresses, possibly
leading to data leakage or corruption.

For example, we plan to use the PCI-e bus for Wi-Fi and that PCI-e bus is
not behind an IOMMU. As PCI-e, by design, gives the device full access to
system memory, a vulnerability in the Wi-Fi firmware could easily escalate
to a full system exploit (remote wifi exploits: [1a], [1b] that shows a
full chain of exploits; [2], [3]).

To mitigate the security concerns, we introduce restricted DMA. Restricted
DMA utilizes the existing swiotlb to bounce streaming DMA in and out of a
specially allocated region and does memory allocation from the same region.
The feature on its own provides a basic level of protection against the DMA
overwriting buffer contents at unexpected times. However, to protect
against general data leakage and system memory corruption, the system needs
to provide a way to restrict the DMA to a predefined memory region (this is
usually done at firmware level, e.g. MPU in ATF on some ARM platforms [4]).

[1a] https://googleprojectzero.blogspot.com/2017/04/over-air-exploiting-broadcoms-wi-fi_4.html
[1b] https://googleprojectzero.blogspot.com/2017/04/over-air-exploiting-broadcoms-wi-fi_11.html
[2] https://blade.tencent.com/en/advisories/qualpwn/
[3] https://www.bleepingcomputer.com/news/security/vulnerabilities-found-in-highly-popular-firmware-for-wifi-chips/
[4] https://github.com/ARM-software/arm-trusted-firmware/blob/master/plat/mediatek/mt8183/drivers/emi_mpu/emi_mpu.c#L132

v5:
  Rebase on latest linux-next

v4:
  - Fix spinlock bad magic
  - Use rmem->name for debugfs entry
  - Address the comments in v3

v3:
  Using only one reserved memory region for both streaming DMA and memory
  allocation.
  https://lore.kernel.org/patchwork/cover/1360992/

v2:
  Building on top of swiotlb.
  https://lore.kernel.org/patchwork/cover/1280705/

v1:
  Using dma_map_ops.
  https://lore.kernel.org/patchwork/cover/1271660/

Claire Chang (16):
  swiotlb: Fix the type of index
  swiotlb: Refactor swiotlb init functions
  swiotlb: Refactor swiotlb_create_debugfs
  swiotlb: Add DMA_RESTRICTED_POOL
  swiotlb: Add restricted DMA pool initialization
  swiotlb: Add a new get_io_tlb_mem getter
  swiotlb: Update is_swiotlb_buffer to add a struct device argument
  swiotlb: Update is_swiotlb_active to add a struct device argument
  swiotlb: Bounce data from/to restricted DMA pool if available
  swiotlb: Move alloc_size to find_slots
  swiotlb: Refactor swiotlb_tbl_unmap_single
  dma-direct: Add a new wrapper __dma_direct_free_pages()
  swiotlb: Add restricted DMA alloc/free support.
  dma-direct: Allocate memory from restricted DMA pool if available
  dt-bindings: of: Add restricted DMA pool
  of: Add plumbing for restricted DMA pool

 .../reserved-memory/reserved-memory.txt       |  24 ++
 drivers/gpu/drm/i915/gem/i915_gem_internal.c  |   2 +-
 drivers/gpu/drm/nouveau/nouveau_ttm.c         |   2 +-
 drivers/iommu/dma-iommu.c                     |  12 +-
 drivers/of/address.c                          |  25 ++
 drivers/of/device.c                           |   3 +
 drivers/of/of_private.h                       |   5 +
 drivers/pci/xen-pcifront.c                    |   2 +-
 drivers/xen/swiotlb-xen.c                     |   2 +-
 include/linux/device.h                        |   4 +
 include/linux/swiotlb.h                       |  41 ++-
 kernel/dma/Kconfig                            |  14 +
 kernel/dma/direct.c                           |  57 +++--
 kernel/dma/direct.h                           |   9 +-
 kernel/dma/swiotlb.c                          | 242 +++++++++++++-----
 15 files changed, 347 insertions(+), 97 deletions(-)

-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:15:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:15:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115103.219451 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUUr-0001yD-Gi; Thu, 22 Apr 2021 08:15:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115103.219451; Thu, 22 Apr 2021 08:15: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 1lZUUr-0001y6-DX; Thu, 22 Apr 2021 08:15:37 +0000
Received: by outflank-mailman (input) for mailman id 115103;
 Thu, 22 Apr 2021 08:15:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUUp-0001sR-9I
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:15:35 +0000
Received: from mail-pl1-x62f.google.com (unknown [2607:f8b0:4864:20::62f])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 899d8346-f455-4f97-9d1d-009718baefdf;
 Thu, 22 Apr 2021 08:15:27 +0000 (UTC)
Received: by mail-pl1-x62f.google.com with SMTP id v13so9538302ple.9
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:15:27 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id o30sm1546049pgc.55.2021.04.22.01.15.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:15: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: 899d8346-f455-4f97-9d1d-009718baefdf
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=KeK8DSQdHPnfBsnYoJml8hxFMiJru7O0NA4XbeWzkSY=;
        b=AsZrZqJIimVAtGXMRVsWcKrsorVck1XgLTh3pHNLrWSxkdDRnGm7t6TqpM5ldf6xB7
         mC86KkbKnwzlnS/clKnP6s/9uO1XB8opjFqiCDh6A7+1mZw2SFs1IwNU2LHHphHOt6QY
         p2b9YBU51p/mzY9rCQjA96SJjLr18SEsXNgpY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=KeK8DSQdHPnfBsnYoJml8hxFMiJru7O0NA4XbeWzkSY=;
        b=MjLrYdztI8oDoCeH1rDevqpR02tmZrrKdUL6gRxbp4ekDL4joZqGnelPwUqsGNtsXB
         9A0ijWidMl6z4CKBuSywjnIdYR7I3KYLp89BFQamPATgwqX8TY8UD6T0hDC+R3BXDlG7
         ZLRjdsRj2MyZdFO0eM6yqCL64bwQIrVTHmXIRr9bcoAmISdUFOIY5+xqTMsCV05iM3SK
         soPOZgtX0IL4ye6x6rM7cWo8MjI+bKykORiq2aCo1/1/pizzBFznelLAy3IHds228/m+
         0BHIY6280p5yFMbzzNAR4iwXPRNUHHs5LTKbMHTgHgmMMdMzLvgHK81Akr+8xH8JbdZd
         xCwA==
X-Gm-Message-State: AOAM531VOaUhiXUvP45QPXbcV+o2N9Sh8K9eVq2q7sOg8KOim8XyF9J4
	wiZQ3L1cO+I0pWlQAfuU+RhtSA==
X-Google-Smtp-Source: ABdhPJx3x6k3UuJoTeVgHgSVZk2TSCFARKLuNRut1DwuLYspzTDGMvJMpDB6O5YCyQkIwGCuRKmyJg==
X-Received: by 2002:a17:90b:298:: with SMTP id az24mr2746175pjb.123.1619079327035;
        Thu, 22 Apr 2021 01:15:27 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 01/16] swiotlb: Fix the type of index
Date: Thu, 22 Apr 2021 16:14:53 +0800
Message-Id: <20210422081508.3942748-2-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Fix the type of index from unsigned int to int since find_slots() might
return -1.

Fixes: 0774983bc923 ("swiotlb: refactor swiotlb_tbl_map_single")
Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 kernel/dma/swiotlb.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 0a5b6f7e75bc..8635a57f88e9 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -499,7 +499,8 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr,
 {
 	struct io_tlb_mem *mem = io_tlb_default_mem;
 	unsigned int offset = swiotlb_align_offset(dev, orig_addr);
-	unsigned int index, i;
+	unsigned int i;
+	int index;
 	phys_addr_t tlb_addr;
 
 	if (!mem)
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:15:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:15:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115104.219463 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUUv-00021C-PJ; Thu, 22 Apr 2021 08:15:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115104.219463; Thu, 22 Apr 2021 08: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 1lZUUv-000215-Lm; Thu, 22 Apr 2021 08:15:41 +0000
Received: by outflank-mailman (input) for mailman id 115104;
 Thu, 22 Apr 2021 08:15:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUUu-0001sR-9R
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:15:40 +0000
Received: from mail-pf1-x435.google.com (unknown [2607:f8b0:4864:20::435])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fb0f823e-5565-478f-b2bf-f41c2d045505;
 Thu, 22 Apr 2021 08:15:36 +0000 (UTC)
Received: by mail-pf1-x435.google.com with SMTP id w6so16598116pfc.8
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:15:36 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id h24sm4254231pjv.50.2021.04.22.01.15.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:15: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: fb0f823e-5565-478f-b2bf-f41c2d045505
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=DCqTI/hrajjPwkk8HEowW3TBxQKFywGZJ7zj1kAgSTY=;
        b=PCD+TgwZ3AiIHtjyLdB6UVXLjDV96H7O710PE71qja4j6uBcwL6eMs8rIbMv0cvAFQ
         cknTAU+f5ughf4xS8sPG0t3S2Z5C3uFec0t2GAey9KzOD4hvmC5srj0EUFUk8IMbKFFx
         HuDL4t5SO2wRDWgfMYB4sF73Mazkige4becoA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=DCqTI/hrajjPwkk8HEowW3TBxQKFywGZJ7zj1kAgSTY=;
        b=tGIuEL50GRSqtXBsZewVAQebHogiq1uEVNKC4Kk0HjTeTUSznZ9QMfSj6oZETvno6Y
         Jc7cJoC48RDUFS1Xf2zer+A9MCKc56Vkf/PWSECLoXGR8CUmLcuWJWHZxnbZMgj9S4La
         KwiBTsz/EUuu+Ba6arxtTXVQvgX+rpVGJIyoLYAW4JUMLofOg+FNCEvF2qifHK1AUjX0
         gA7FF2C+NFlYm+W6sKPz5vs/hMl20lcoHWjMzncNxboDKEh1XOfmAEznH6XuvQmS72vj
         JaohCuDIdadx1pTyMcuVsvH+8+jzHGEeLZu5PFRmXFniNCSJQtvqAgOnoZYjaVsO3M87
         3aYw==
X-Gm-Message-State: AOAM533FgKgF13huKlTL2lAsuRyKoxPhDn3kqEk/LW1Gt5hnfOHE2ze5
	BNiKJOvRFejk6SSrXYUai0r0wQ==
X-Google-Smtp-Source: ABdhPJzCAPtMPZjZd4TjI7FfrTaFcb2I4L39Wwlj9XGgVexb3c0kbKDiOe3PnJYnNG72JITLPFAsSA==
X-Received: by 2002:a63:145a:: with SMTP id 26mr2332561pgu.300.1619079335503;
        Thu, 22 Apr 2021 01:15:35 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 02/16] swiotlb: Refactor swiotlb init functions
Date: Thu, 22 Apr 2021 16:14:54 +0800
Message-Id: <20210422081508.3942748-3-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add a new function, swiotlb_init_io_tlb_mem, for the io_tlb_mem struct
initialization to make the code reusable.

Note that we now also call set_memory_decrypted in swiotlb_init_with_tbl.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 kernel/dma/swiotlb.c | 51 ++++++++++++++++++++++----------------------
 1 file changed, 25 insertions(+), 26 deletions(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 8635a57f88e9..3f1adee35097 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -166,9 +166,30 @@ void __init swiotlb_update_mem_attributes(void)
 	memset(vaddr, 0, bytes);
 }
 
-int __init swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose)
+static void swiotlb_init_io_tlb_mem(struct io_tlb_mem *mem, phys_addr_t start,
+				    unsigned long nslabs, bool late_alloc)
 {
+	void *vaddr = phys_to_virt(start);
 	unsigned long bytes = nslabs << IO_TLB_SHIFT, i;
+
+	mem->nslabs = nslabs;
+	mem->start = start;
+	mem->end = mem->start + bytes;
+	mem->index = 0;
+	mem->late_alloc = late_alloc;
+	spin_lock_init(&mem->lock);
+	for (i = 0; i < mem->nslabs; i++) {
+		mem->slots[i].list = IO_TLB_SEGSIZE - io_tlb_offset(i);
+		mem->slots[i].orig_addr = INVALID_PHYS_ADDR;
+		mem->slots[i].alloc_size = 0;
+	}
+
+	set_memory_decrypted((unsigned long)vaddr, bytes >> PAGE_SHIFT);
+	memset(vaddr, 0, bytes);
+}
+
+int __init swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose)
+{
 	struct io_tlb_mem *mem;
 	size_t alloc_size;
 
@@ -184,16 +205,8 @@ int __init swiotlb_init_with_tbl(char *tlb, unsigned long nslabs, int verbose)
 	if (!mem)
 		panic("%s: Failed to allocate %zu bytes align=0x%lx\n",
 		      __func__, alloc_size, PAGE_SIZE);
-	mem->nslabs = nslabs;
-	mem->start = __pa(tlb);
-	mem->end = mem->start + bytes;
-	mem->index = 0;
-	spin_lock_init(&mem->lock);
-	for (i = 0; i < mem->nslabs; i++) {
-		mem->slots[i].list = IO_TLB_SEGSIZE - io_tlb_offset(i);
-		mem->slots[i].orig_addr = INVALID_PHYS_ADDR;
-		mem->slots[i].alloc_size = 0;
-	}
+
+	swiotlb_init_io_tlb_mem(mem, __pa(tlb), nslabs, false);
 
 	io_tlb_default_mem = mem;
 	if (verbose)
@@ -280,7 +293,6 @@ swiotlb_late_init_with_default_size(size_t default_size)
 int
 swiotlb_late_init_with_tbl(char *tlb, unsigned long nslabs)
 {
-	unsigned long bytes = nslabs << IO_TLB_SHIFT, i;
 	struct io_tlb_mem *mem;
 
 	if (swiotlb_force == SWIOTLB_NO_FORCE)
@@ -295,20 +307,7 @@ swiotlb_late_init_with_tbl(char *tlb, unsigned long nslabs)
 	if (!mem)
 		return -ENOMEM;
 
-	mem->nslabs = nslabs;
-	mem->start = virt_to_phys(tlb);
-	mem->end = mem->start + bytes;
-	mem->index = 0;
-	mem->late_alloc = 1;
-	spin_lock_init(&mem->lock);
-	for (i = 0; i < mem->nslabs; i++) {
-		mem->slots[i].list = IO_TLB_SEGSIZE - io_tlb_offset(i);
-		mem->slots[i].orig_addr = INVALID_PHYS_ADDR;
-		mem->slots[i].alloc_size = 0;
-	}
-
-	set_memory_decrypted((unsigned long)tlb, bytes >> PAGE_SHIFT);
-	memset(tlb, 0, bytes);
+	swiotlb_init_io_tlb_mem(mem, virt_to_phys(tlb), nslabs, true);
 
 	io_tlb_default_mem = mem;
 	swiotlb_print_info();
-- 

I'm not 100% sure if set_memory_decrypted is safe to call in
swiotlb_init_with_tbl, but I didn't hit any issue booting with this.

2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:15:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:15:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115105.219474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUV3-00026C-2L; Thu, 22 Apr 2021 08:15:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115105.219474; Thu, 22 Apr 2021 08:15: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 1lZUV2-000265-Ut; Thu, 22 Apr 2021 08:15:48 +0000
Received: by outflank-mailman (input) for mailman id 115105;
 Thu, 22 Apr 2021 08:15:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUV1-00025M-Kh
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:15:47 +0000
Received: from mail-pg1-x52e.google.com (unknown [2607:f8b0:4864:20::52e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f4cdf0a0-425d-4e60-97ba-575acbb9a524;
 Thu, 22 Apr 2021 08:15:44 +0000 (UTC)
Received: by mail-pg1-x52e.google.com with SMTP id 31so371520pgn.13
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:15:44 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id n48sm1357349pfv.130.2021.04.22.01.15.37
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:15: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: f4cdf0a0-425d-4e60-97ba-575acbb9a524
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=C3ItV5y5XoEhSqi+d51HdmwBWLH2Hb4UsI3M8OVWu24=;
        b=Cisfd6jfRp7ZntllQG9J21QpT0tbDCUmO7Sd4z/S5YfmrCvvZiaBUR0BPZFuQ5hvd/
         gxJhZ2pu34BRLPXqvLavDRaBXVqLQLA1W1/STuSvpHuqa+BPpv9DUpeEZVvPd4m/EZM3
         aXG1VDvl65ykf2+uaD2EnhVf7WefQlXtPpuHg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=C3ItV5y5XoEhSqi+d51HdmwBWLH2Hb4UsI3M8OVWu24=;
        b=MoSuTZXl4xTDi73C65cH87jxph2sMQmTIPtRHbsXCl6+en92KwNlYwKGM02aOSWeo9
         HLFeN1oIT95mgayE9AEDts9NuAJL6HfiBVmKYvGWHozfaWViZYbhB8pGTRbDm+z0AHwH
         uwca7VxpGwyWnArCwIUFpYSmhir0xKT64YbrMHv+OFnEXRrLIN9cPOnGy2Xa1lMPcdrd
         NBbCeu6OnxAPrcExqXmtKm16aA8BAjp5KkwShO7fJSFx7qLnkvZDOW+COIPFB1ztsmaJ
         ZRm5Iig379WeRq5tAxSwSckAiVpsxGT3ScL/9ww5HdITzkn84vqhpexEpVpNZkAv48yw
         49zg==
X-Gm-Message-State: AOAM530AWbxyQBsJ8amQkEyYUp/b6Jz7X4Kfe6vmSIUNji2/G27ov/jw
	v32Kj5nbDdTAUF0vGmDcTEIung==
X-Google-Smtp-Source: ABdhPJxkEqOgBe8WdlOJ16Imv3NTakOO84xcsb4CT6RBz2bwANEVo+9MWgQ4ffM3wlaap5K1DgM+6A==
X-Received: by 2002:a63:4106:: with SMTP id o6mr2436897pga.104.1619079344334;
        Thu, 22 Apr 2021 01:15:44 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 03/16] swiotlb: Refactor swiotlb_create_debugfs
Date: Thu, 22 Apr 2021 16:14:55 +0800
Message-Id: <20210422081508.3942748-4-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Split the debugfs creation to make the code reusable for supporting
different bounce buffer pools, e.g. restricted DMA pool.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 kernel/dma/swiotlb.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 3f1adee35097..57a9adb920bf 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -660,18 +660,24 @@ EXPORT_SYMBOL_GPL(is_swiotlb_active);
 
 #ifdef CONFIG_DEBUG_FS
 
-static int __init swiotlb_create_debugfs(void)
+static void swiotlb_create_debugfs(struct io_tlb_mem *mem, const char *name,
+				   struct dentry *node)
 {
-	struct io_tlb_mem *mem = io_tlb_default_mem;
-
 	if (!mem)
-		return 0;
-	mem->debugfs = debugfs_create_dir("swiotlb", NULL);
+		return;
+
+	mem->debugfs = debugfs_create_dir(name, node);
 	debugfs_create_ulong("io_tlb_nslabs", 0400, mem->debugfs, &mem->nslabs);
 	debugfs_create_ulong("io_tlb_used", 0400, mem->debugfs, &mem->used);
+}
+
+static int __init swiotlb_create_default_debugfs(void)
+{
+	swiotlb_create_debugfs(io_tlb_default_mem, "swiotlb", NULL);
+
 	return 0;
 }
 
-late_initcall(swiotlb_create_debugfs);
+late_initcall(swiotlb_create_default_debugfs);
 
 #endif
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:15:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:15:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115107.219487 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVA-0002By-Bk; Thu, 22 Apr 2021 08:15:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115107.219487; Thu, 22 Apr 2021 08:15:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVA-0002Bq-86; Thu, 22 Apr 2021 08:15:56 +0000
Received: by outflank-mailman (input) for mailman id 115107;
 Thu, 22 Apr 2021 08:15:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUV8-0002Ax-FN
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:15:54 +0000
Received: from mail-pj1-x1034.google.com (unknown [2607:f8b0:4864:20::1034])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 31b9c096-997f-4220-92ad-def4642675fc;
 Thu, 22 Apr 2021 08:15:53 +0000 (UTC)
Received: by mail-pj1-x1034.google.com with SMTP id
 y22-20020a17090a8b16b0290150ae1a6d2bso531355pjn.0
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:15:53 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id bk6sm4233324pjb.10.2021.04.22.01.15.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:15: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: 31b9c096-997f-4220-92ad-def4642675fc
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=k4dyB3xlmvkfx6+ggy7Uv640xgq260Lfsxi7yqvhCZI=;
        b=kLFGcuOQrccDqfD9J76t1/kDLyymEf5QZdonwnYtBNPLHycZjLGV1OskzqU8d8CBT2
         dFZ2kyndUcgD1g6WATSmnvKXnlXdau6lSM6AakeoAvt1oeObRayZc+uNuTgzJ9Ur1iuG
         1ryoegnb2fqqmY98GaQlrYL4hIv1GoXoL11Cg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=k4dyB3xlmvkfx6+ggy7Uv640xgq260Lfsxi7yqvhCZI=;
        b=omeS8wn9U/pOnHeWDtafnVSm8AMa6SAEddXSBSZCkoBunsxXsGYyT0Ii2NgaFwKEZY
         zvWc2vEZzRU/wQyPPNe6o+GrYeVO5cRh0QdHVuSaPiLPAAmFfOf98x25Gct+wVLV8uSx
         CPJo2zszLINYX4fl7I8aksI+fV+zMVILjLqvVc9F7RD1dydjIjF4iwQZq/YaYp4/sday
         rJYCkmhXt/zujqYuiF3GykLagPL2AoJOyIJTWqb/YwvdUfpTFjaVWFDSTobiGAoHv/dn
         0PnMa6hkI0+IuZFiosdyPbtELCD/mc8CRLEdDxogMC0ZRiB7EO7WrciGdh0jkBV2eKjr
         pZFQ==
X-Gm-Message-State: AOAM530aZ4uKNbEE3kd8QMq6HNX30vrDbZPxIXt4acOlcC3dDTkyJgHD
	ReaYl1+kru9DpFRnOo/YEBg2cg==
X-Google-Smtp-Source: ABdhPJzaPOcvkpo4oh1A/JsjcQqzOO/tc1NI/mmGYHMg9yfM2pWhcv0q011OgU/0UUPri4B/30xsPg==
X-Received: by 2002:a17:90b:14c4:: with SMTP id jz4mr2772455pjb.144.1619079353175;
        Thu, 22 Apr 2021 01:15:53 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 04/16] swiotlb: Add DMA_RESTRICTED_POOL
Date: Thu, 22 Apr 2021 16:14:56 +0800
Message-Id: <20210422081508.3942748-5-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add a new kconfig symbol, DMA_RESTRICTED_POOL, for restricted DMA pool.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 kernel/dma/Kconfig | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/kernel/dma/Kconfig b/kernel/dma/Kconfig
index 77b405508743..3e961dc39634 100644
--- a/kernel/dma/Kconfig
+++ b/kernel/dma/Kconfig
@@ -80,6 +80,20 @@ config SWIOTLB
 	bool
 	select NEED_DMA_MAP_STATE
 
+config DMA_RESTRICTED_POOL
+	bool "DMA Restricted Pool"
+	depends on OF && OF_RESERVED_MEM
+	select SWIOTLB
+	help
+	  This enables support for restricted DMA pools which provide a level of
+	  DMA memory protection on systems with limited hardware protection
+	  capabilities, such as those lacking an IOMMU.
+
+	  For more information see
+	  <Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt>
+	  and <kernel/dma/swiotlb.c>.
+	  If unsure, say "n".
+
 #
 # Should be selected if we can mmap non-coherent mappings to userspace.
 # The only thing that is really required is a way to set an uncached bit
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:16:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:16:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115111.219498 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVH-0002I2-Qb; Thu, 22 Apr 2021 08:16:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115111.219498; Thu, 22 Apr 2021 08: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 1lZUVH-0002Hu-NP; Thu, 22 Apr 2021 08:16:03 +0000
Received: by outflank-mailman (input) for mailman id 115111;
 Thu, 22 Apr 2021 08:16:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUVH-0002HX-7H
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:16:03 +0000
Received: from mail-pg1-x52e.google.com (unknown [2607:f8b0:4864:20::52e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 21b8cea3-5458-432c-9da1-9502db98735a;
 Thu, 22 Apr 2021 08:16:02 +0000 (UTC)
Received: by mail-pg1-x52e.google.com with SMTP id 31so371998pgn.13
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:16:02 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id e65sm1374671pfe.9.2021.04.22.01.15.54
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:16: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: 21b8cea3-5458-432c-9da1-9502db98735a
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=pm7UxPQrFRdpvU9UYA0nMwVxsIiqNN8R/C8sR97J9E8=;
        b=mqHGXYNxVfnMiRIZhvejT7upI99ECswc44P8rk+lO6jSqfDzSHlwBGOsUZhkx7tnl2
         ug+7YZercj3NEZ+u7AtOQGK4k4JBpDOkOkyabBOZR9+6IIJ+QJigNXMgARvjx0Hw/IRs
         iLYhks2C046xhXLBBV1DqpofDJHvJjCnXm4+M=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=pm7UxPQrFRdpvU9UYA0nMwVxsIiqNN8R/C8sR97J9E8=;
        b=J1IgKgsQC8lN3Tujh2TT+BcC1UY/XCktEXzTOo5L8oWRrZe544864iZhdRHXxEf3JW
         TwEgSw8XKu2zq7KN/nCECXKe1STAe+0t6KCr38kcfu60KUpTNGTHNy8uCwNA2zy45SdI
         YTp0eY2rQu1S/6rBMHfN2Yq0NOYOQM+ix5NqQbrAXqUpObpMe8/r38bvuR3c/cDNQo8x
         PjmWdRz8h7bk81Qf5RlmPovqT6iBPmqSRntUQlDWfIrB3J92b6hy5B/pF5jW3A8uaa1u
         hzkps+nvHVJsr5PszCTijEEOCdDV1ue5ulqiP8TUZG3mhWWbvFH33ZcuI0sJA52y0XQM
         W6Sw==
X-Gm-Message-State: AOAM530YRi7sZVXJ8m5vWifukLz7J8S+CX6XgtcSi0NFBVfqjHhkTzfh
	bRf8SoMSe1j38d9YvageiVQ5dQ==
X-Google-Smtp-Source: ABdhPJx+K2NqIxcJgPClv4nf+kmLtbDM5dPNwlhJV2MXdjtz4IH79PSdMWXOV+rdmxzvkdQhT3Pqkw==
X-Received: by 2002:a62:6202:0:b029:208:f11c:2143 with SMTP id w2-20020a6262020000b0290208f11c2143mr2316648pfb.32.1619079361580;
        Thu, 22 Apr 2021 01:16:01 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 05/16] swiotlb: Add restricted DMA pool initialization
Date: Thu, 22 Apr 2021 16:14:57 +0800
Message-Id: <20210422081508.3942748-6-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add the initialization function to create restricted DMA pools from
matching reserved-memory nodes.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 include/linux/device.h  |  4 +++
 include/linux/swiotlb.h |  3 +-
 kernel/dma/swiotlb.c    | 80 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 86 insertions(+), 1 deletion(-)

diff --git a/include/linux/device.h b/include/linux/device.h
index 38a2071cf776..4987608ea4ff 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -416,6 +416,7 @@ struct dev_links_info {
  * @dma_pools:	Dma pools (if dma'ble device).
  * @dma_mem:	Internal for coherent mem override.
  * @cma_area:	Contiguous memory area for dma allocations
+ * @dma_io_tlb_mem: Internal for swiotlb io_tlb_mem override.
  * @archdata:	For arch-specific additions.
  * @of_node:	Associated device tree node.
  * @fwnode:	Associated device node supplied by platform firmware.
@@ -521,6 +522,9 @@ struct device {
 #ifdef CONFIG_DMA_CMA
 	struct cma *cma_area;		/* contiguous memory area for dma
 					   allocations */
+#endif
+#ifdef CONFIG_DMA_RESTRICTED_POOL
+	struct io_tlb_mem *dma_io_tlb_mem;
 #endif
 	/* arch specific additions */
 	struct dev_archdata	archdata;
diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index 216854a5e513..03ad6e3b4056 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -72,7 +72,8 @@ extern enum swiotlb_force swiotlb_force;
  *		range check to see if the memory was in fact allocated by this
  *		API.
  * @nslabs:	The number of IO TLB blocks (in groups of 64) between @start and
- *		@end. This is command line adjustable via setup_io_tlb_npages.
+ *		@end. For default swiotlb, this is command line adjustable via
+ *		setup_io_tlb_npages.
  * @used:	The number of used IO TLB block.
  * @list:	The free list describing the number of free entries available
  *		from each index.
diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 57a9adb920bf..ffbb8724e06c 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -39,6 +39,13 @@
 #ifdef CONFIG_DEBUG_FS
 #include <linux/debugfs.h>
 #endif
+#ifdef CONFIG_DMA_RESTRICTED_POOL
+#include <linux/io.h>
+#include <linux/of.h>
+#include <linux/of_fdt.h>
+#include <linux/of_reserved_mem.h>
+#include <linux/slab.h>
+#endif
 
 #include <asm/io.h>
 #include <asm/dma.h>
@@ -681,3 +688,76 @@ static int __init swiotlb_create_default_debugfs(void)
 late_initcall(swiotlb_create_default_debugfs);
 
 #endif
+
+#ifdef CONFIG_DMA_RESTRICTED_POOL
+static int rmem_swiotlb_device_init(struct reserved_mem *rmem,
+				    struct device *dev)
+{
+	struct io_tlb_mem *mem = rmem->priv;
+	unsigned long nslabs = rmem->size >> IO_TLB_SHIFT;
+
+	if (dev->dma_io_tlb_mem)
+		return 0;
+
+	/* Since multiple devices can share the same pool, the private data,
+	 * io_tlb_mem struct, will be initialized by the first device attached
+	 * to it.
+	 */
+	if (!mem) {
+		mem = kzalloc(struct_size(mem, slots, nslabs), GFP_KERNEL);
+		if (!mem)
+			return -ENOMEM;
+#ifdef CONFIG_ARM
+		if (!PageHighMem(pfn_to_page(PHYS_PFN(rmem->base)))) {
+			kfree(mem);
+			return -EINVAL;
+		}
+#endif /* CONFIG_ARM */
+		swiotlb_init_io_tlb_mem(mem, rmem->base, nslabs, false);
+
+		rmem->priv = mem;
+	}
+
+#ifdef CONFIG_DEBUG_FS
+	if (!io_tlb_default_mem->debugfs)
+		io_tlb_default_mem->debugfs =
+			debugfs_create_dir("swiotlb", NULL);
+
+	swiotlb_create_debugfs(mem, rmem->name, io_tlb_default_mem->debugfs);
+#endif /* CONFIG_DEBUG_FS */
+
+	dev->dma_io_tlb_mem = mem;
+
+	return 0;
+}
+
+static void rmem_swiotlb_device_release(struct reserved_mem *rmem,
+					struct device *dev)
+{
+	if (dev)
+		dev->dma_io_tlb_mem = NULL;
+}
+
+static const struct reserved_mem_ops rmem_swiotlb_ops = {
+	.device_init = rmem_swiotlb_device_init,
+	.device_release = rmem_swiotlb_device_release,
+};
+
+static int __init rmem_swiotlb_setup(struct reserved_mem *rmem)
+{
+	unsigned long node = rmem->fdt_node;
+
+	if (of_get_flat_dt_prop(node, "reusable", NULL) ||
+	    of_get_flat_dt_prop(node, "linux,cma-default", NULL) ||
+	    of_get_flat_dt_prop(node, "linux,dma-default", NULL) ||
+	    of_get_flat_dt_prop(node, "no-map", NULL))
+		return -EINVAL;
+
+	rmem->ops = &rmem_swiotlb_ops;
+	pr_info("Reserved memory: created device swiotlb memory pool at %pa, size %ld MiB\n",
+		&rmem->base, (unsigned long)rmem->size / SZ_1M);
+	return 0;
+}
+
+RESERVEDMEM_OF_DECLARE(dma, "restricted-dma-pool", rmem_swiotlb_setup);
+#endif /* CONFIG_DMA_RESTRICTED_POOL */
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:16:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:16:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115114.219511 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVQ-0002OA-5A; Thu, 22 Apr 2021 08:16:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115114.219511; Thu, 22 Apr 2021 08:16:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVQ-0002O3-1B; Thu, 22 Apr 2021 08:16:12 +0000
Received: by outflank-mailman (input) for mailman id 115114;
 Thu, 22 Apr 2021 08:16:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUVP-0002Na-A6
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:16:11 +0000
Received: from mail-pg1-x531.google.com (unknown [2607:f8b0:4864:20::531])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 37d1ead6-02b3-4a71-9b80-871cf6cd622a;
 Thu, 22 Apr 2021 08:16:10 +0000 (UTC)
Received: by mail-pg1-x531.google.com with SMTP id p12so32300326pgj.10
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:16:10 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id t21sm1376416pfg.211.2021.04.22.01.16.02
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:16: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: 37d1ead6-02b3-4a71-9b80-871cf6cd622a
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=9ZUOlaxQDRJ4owOuYTcW5CKLhIM5yKECKO1qTEYWZIg=;
        b=Te5Gk+1sRcVC38swcqBEUjXxCH7tPVvd0mbGX1Wwm2DZGR6oQAt2p48rJuAqXxnZ1G
         B6y5TEaEuZ03C7wcap+3lptAydpEMh9xeJqVUa9U/PT2VvzS2R7M5JFIpAJEQCDWGzOE
         98eoN1gQ0pvlEfYjZOqLfgxvbW3n0p1s0Rg/A=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=9ZUOlaxQDRJ4owOuYTcW5CKLhIM5yKECKO1qTEYWZIg=;
        b=OlDzjQXv/Bdx1aZplEuvoJkZ9aH8SXpClOpx1REx1WOWscW5IhEXxiUDXXhXuMU8g8
         5M1BELDchwtHankxo0XTB3Qr0jSLoljLtuZpWfwoi0R6sIwNXh4bbKcxVai2XqiGsrGV
         TYjtkGtC4NFD08FpsaxfkbFsGLACS8yLYyOjvcoZynyNbMKbVD2o40EtKPZEfwZX3PtI
         JkZlVGbxuRirDNkrM1gtoztqnBRnFUMK/HsGcuNlvZRAwZ9+919kvH+1wvWfFCHplVrs
         B7s2UhmdlI7cDg30Vj32RIggYbvVZhdWFRAYCjesk+s3c640GU4vdi/Kh8g15k+9W9fO
         LJwQ==
X-Gm-Message-State: AOAM533oCHMEpG140kjhz6KvNGtjpYrDgr08GtdaMz6XOJgsD7Ai9G/l
	Hm5WezDsLiEXW+BHBYaSCW36yA==
X-Google-Smtp-Source: ABdhPJwNm9rBbG87w+RNtKc5UkLPG+k/T7GR5T9yig5hQwH4n8FewG7IrH0HY5kbawXYuwkg29Z0TA==
X-Received: by 2002:a62:68c4:0:b029:226:5dc5:4082 with SMTP id d187-20020a6268c40000b02902265dc54082mr2210480pfc.48.1619079369993;
        Thu, 22 Apr 2021 01:16:09 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 06/16] swiotlb: Add a new get_io_tlb_mem getter
Date: Thu, 22 Apr 2021 16:14:58 +0800
Message-Id: <20210422081508.3942748-7-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add a new getter, get_io_tlb_mem, to help select the io_tlb_mem struct.
The restricted DMA pool is preferred if available.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 include/linux/swiotlb.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index 03ad6e3b4056..b469f04cca26 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -2,6 +2,7 @@
 #ifndef __LINUX_SWIOTLB_H
 #define __LINUX_SWIOTLB_H
 
+#include <linux/device.h>
 #include <linux/dma-direction.h>
 #include <linux/init.h>
 #include <linux/types.h>
@@ -102,6 +103,16 @@ struct io_tlb_mem {
 };
 extern struct io_tlb_mem *io_tlb_default_mem;
 
+static inline struct io_tlb_mem *get_io_tlb_mem(struct device *dev)
+{
+#ifdef CONFIG_DMA_RESTRICTED_POOL
+	if (dev && dev->dma_io_tlb_mem)
+		return dev->dma_io_tlb_mem;
+#endif /* CONFIG_DMA_RESTRICTED_POOL */
+
+	return io_tlb_default_mem;
+}
+
 static inline bool is_swiotlb_buffer(phys_addr_t paddr)
 {
 	struct io_tlb_mem *mem = io_tlb_default_mem;
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:16:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:16:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115120.219523 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVe-0002XL-Et; Thu, 22 Apr 2021 08:16:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115120.219523; Thu, 22 Apr 2021 08: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 1lZUVe-0002XD-Ar; Thu, 22 Apr 2021 08:16:26 +0000
Received: by outflank-mailman (input) for mailman id 115120;
 Thu, 22 Apr 2021 08:16:25 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUVd-0002Na-BY
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:16:25 +0000
Received: from mail-pf1-x42b.google.com (unknown [2607:f8b0:4864:20::42b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 467765a4-2db5-4c9a-b82f-a4b807717c73;
 Thu, 22 Apr 2021 08:16:19 +0000 (UTC)
Received: by mail-pf1-x42b.google.com with SMTP id c17so31153641pfn.6
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:16:19 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id t23sm1554542pju.15.2021.04.22.01.16.11
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01: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: 467765a4-2db5-4c9a-b82f-a4b807717c73
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=czjQPMaGn84VYl3d/zJpVHVgrR14BzWNEeEe7v0rBqY=;
        b=UBV7N5f65lueGBuzHIxejcGvMM1r5WxGJRofo1pEiq8XqP9sbFThDmRTJNemupAe1W
         Fg8oGxWV01RVF0Q8C5gip1fkwCRyzsgGsHuqGfbJk7VwlZLLXzqLvpnLVU306hqHK5Bz
         KOW8gTLWqJWXwzb/XY2U6Rnfp6zcPttzgXQs0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=czjQPMaGn84VYl3d/zJpVHVgrR14BzWNEeEe7v0rBqY=;
        b=M8X3N0XIZXlCELpH4mDbXml5wGZQmhv2mibhvAo2t/szF6cW0RmgbkTNjMy7Zi9JcD
         8PgYDnbVp/NqbvdWjOjq8IPOjc+HZ2CdIOrEgosFsewfE4VaTFEGqI3INeuax989KDJG
         bYPCUXOgT5/gIW1bJzQxJNYCreihFcnIi3FRWbzH7XGZHAzfAxpIMG3n+2fPDzHaJYZt
         G0AAbQ1Ti3PLsZMmw9zRYMfo8S/g/ic1ONy1BP6gRP99Pxin1uLy2k3gAS+DEQsSl8ox
         M6mmXsvUK6IV/8HX7T+VjnFLIhu5cztQdWzGO0AhEPHqioLXXsa6OJmgy9OcvPiwtT37
         4uhg==
X-Gm-Message-State: AOAM530miP0Jp+IQy01xGTN7qsT81K1Nj9V2lTq484N2u+G0sxTUk/er
	5PEe1BlTgVxtdz2/19iZoXTdag==
X-Google-Smtp-Source: ABdhPJywnEtrbwfTqtMHpWdGpA6d2NyAm2T71kMrW8BwdNjqZsn2Cky3eyldcmZsItsclJKGT0u7IQ==
X-Received: by 2002:aa7:95aa:0:b029:256:143:e5d8 with SMTP id a10-20020aa795aa0000b02902560143e5d8mr2219018pfk.67.1619079378360;
        Thu, 22 Apr 2021 01:16:18 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 07/16] swiotlb: Update is_swiotlb_buffer to add a struct device argument
Date: Thu, 22 Apr 2021 16:14:59 +0800
Message-Id: <20210422081508.3942748-8-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Update is_swiotlb_buffer to add a struct device argument. This will be
useful later to allow for restricted DMA pool.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 drivers/iommu/dma-iommu.c | 12 ++++++------
 drivers/xen/swiotlb-xen.c |  2 +-
 include/linux/swiotlb.h   |  6 +++---
 kernel/dma/direct.c       |  6 +++---
 kernel/dma/direct.h       |  6 +++---
 5 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/drivers/iommu/dma-iommu.c b/drivers/iommu/dma-iommu.c
index 7bcdd1205535..a5df35bfd150 100644
--- a/drivers/iommu/dma-iommu.c
+++ b/drivers/iommu/dma-iommu.c
@@ -504,7 +504,7 @@ static void __iommu_dma_unmap_swiotlb(struct device *dev, dma_addr_t dma_addr,
 
 	__iommu_dma_unmap(dev, dma_addr, size);
 
-	if (unlikely(is_swiotlb_buffer(phys)))
+	if (unlikely(is_swiotlb_buffer(dev, phys)))
 		swiotlb_tbl_unmap_single(dev, phys, size, dir, attrs);
 }
 
@@ -575,7 +575,7 @@ static dma_addr_t __iommu_dma_map_swiotlb(struct device *dev, phys_addr_t phys,
 	}
 
 	iova = __iommu_dma_map(dev, phys, aligned_size, prot, dma_mask);
-	if (iova == DMA_MAPPING_ERROR && is_swiotlb_buffer(phys))
+	if (iova == DMA_MAPPING_ERROR && is_swiotlb_buffer(dev, phys))
 		swiotlb_tbl_unmap_single(dev, phys, org_size, dir, attrs);
 	return iova;
 }
@@ -781,7 +781,7 @@ static void iommu_dma_sync_single_for_cpu(struct device *dev,
 	if (!dev_is_dma_coherent(dev))
 		arch_sync_dma_for_cpu(phys, size, dir);
 
-	if (is_swiotlb_buffer(phys))
+	if (is_swiotlb_buffer(dev, phys))
 		swiotlb_sync_single_for_cpu(dev, phys, size, dir);
 }
 
@@ -794,7 +794,7 @@ static void iommu_dma_sync_single_for_device(struct device *dev,
 		return;
 
 	phys = iommu_iova_to_phys(iommu_get_dma_domain(dev), dma_handle);
-	if (is_swiotlb_buffer(phys))
+	if (is_swiotlb_buffer(dev, phys))
 		swiotlb_sync_single_for_device(dev, phys, size, dir);
 
 	if (!dev_is_dma_coherent(dev))
@@ -815,7 +815,7 @@ static void iommu_dma_sync_sg_for_cpu(struct device *dev,
 		if (!dev_is_dma_coherent(dev))
 			arch_sync_dma_for_cpu(sg_phys(sg), sg->length, dir);
 
-		if (is_swiotlb_buffer(sg_phys(sg)))
+		if (is_swiotlb_buffer(dev, sg_phys(sg)))
 			swiotlb_sync_single_for_cpu(dev, sg_phys(sg),
 						    sg->length, dir);
 	}
@@ -832,7 +832,7 @@ static void iommu_dma_sync_sg_for_device(struct device *dev,
 		return;
 
 	for_each_sg(sgl, sg, nelems, i) {
-		if (is_swiotlb_buffer(sg_phys(sg)))
+		if (is_swiotlb_buffer(dev, sg_phys(sg)))
 			swiotlb_sync_single_for_device(dev, sg_phys(sg),
 						       sg->length, dir);
 
diff --git a/drivers/xen/swiotlb-xen.c b/drivers/xen/swiotlb-xen.c
index 4c89afc0df62..0c6ed09f8513 100644
--- a/drivers/xen/swiotlb-xen.c
+++ b/drivers/xen/swiotlb-xen.c
@@ -100,7 +100,7 @@ static int is_xen_swiotlb_buffer(struct device *dev, dma_addr_t dma_addr)
 	 * in our domain. Therefore _only_ check address within our domain.
 	 */
 	if (pfn_valid(PFN_DOWN(paddr)))
-		return is_swiotlb_buffer(paddr);
+		return is_swiotlb_buffer(dev, paddr);
 	return 0;
 }
 
diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index b469f04cca26..2a6cca07540b 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -113,9 +113,9 @@ static inline struct io_tlb_mem *get_io_tlb_mem(struct device *dev)
 	return io_tlb_default_mem;
 }
 
-static inline bool is_swiotlb_buffer(phys_addr_t paddr)
+static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
 {
-	struct io_tlb_mem *mem = io_tlb_default_mem;
+	struct io_tlb_mem *mem = get_io_tlb_mem(dev);
 
 	return mem && paddr >= mem->start && paddr < mem->end;
 }
@@ -127,7 +127,7 @@ bool is_swiotlb_active(void);
 void __init swiotlb_adjust_size(unsigned long size);
 #else
 #define swiotlb_force SWIOTLB_NO_FORCE
-static inline bool is_swiotlb_buffer(phys_addr_t paddr)
+static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
 {
 	return false;
 }
diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
index f737e3347059..84c9feb5474a 100644
--- a/kernel/dma/direct.c
+++ b/kernel/dma/direct.c
@@ -343,7 +343,7 @@ void dma_direct_sync_sg_for_device(struct device *dev,
 	for_each_sg(sgl, sg, nents, i) {
 		phys_addr_t paddr = dma_to_phys(dev, sg_dma_address(sg));
 
-		if (unlikely(is_swiotlb_buffer(paddr)))
+		if (unlikely(is_swiotlb_buffer(dev, paddr)))
 			swiotlb_sync_single_for_device(dev, paddr, sg->length,
 						       dir);
 
@@ -369,7 +369,7 @@ void dma_direct_sync_sg_for_cpu(struct device *dev,
 		if (!dev_is_dma_coherent(dev))
 			arch_sync_dma_for_cpu(paddr, sg->length, dir);
 
-		if (unlikely(is_swiotlb_buffer(paddr)))
+		if (unlikely(is_swiotlb_buffer(dev, paddr)))
 			swiotlb_sync_single_for_cpu(dev, paddr, sg->length,
 						    dir);
 
@@ -504,7 +504,7 @@ size_t dma_direct_max_mapping_size(struct device *dev)
 bool dma_direct_need_sync(struct device *dev, dma_addr_t dma_addr)
 {
 	return !dev_is_dma_coherent(dev) ||
-		is_swiotlb_buffer(dma_to_phys(dev, dma_addr));
+	       is_swiotlb_buffer(dev, dma_to_phys(dev, dma_addr));
 }
 
 /**
diff --git a/kernel/dma/direct.h b/kernel/dma/direct.h
index 50afc05b6f1d..13e9e7158d94 100644
--- a/kernel/dma/direct.h
+++ b/kernel/dma/direct.h
@@ -56,7 +56,7 @@ static inline void dma_direct_sync_single_for_device(struct device *dev,
 {
 	phys_addr_t paddr = dma_to_phys(dev, addr);
 
-	if (unlikely(is_swiotlb_buffer(paddr)))
+	if (unlikely(is_swiotlb_buffer(dev, paddr)))
 		swiotlb_sync_single_for_device(dev, paddr, size, dir);
 
 	if (!dev_is_dma_coherent(dev))
@@ -73,7 +73,7 @@ static inline void dma_direct_sync_single_for_cpu(struct device *dev,
 		arch_sync_dma_for_cpu_all();
 	}
 
-	if (unlikely(is_swiotlb_buffer(paddr)))
+	if (unlikely(is_swiotlb_buffer(dev, paddr)))
 		swiotlb_sync_single_for_cpu(dev, paddr, size, dir);
 
 	if (dir == DMA_FROM_DEVICE)
@@ -113,7 +113,7 @@ static inline void dma_direct_unmap_page(struct device *dev, dma_addr_t addr,
 	if (!(attrs & DMA_ATTR_SKIP_CPU_SYNC))
 		dma_direct_sync_single_for_cpu(dev, addr, size, dir);
 
-	if (unlikely(is_swiotlb_buffer(phys)))
+	if (unlikely(is_swiotlb_buffer(dev, phys)))
 		swiotlb_tbl_unmap_single(dev, phys, size, dir, attrs);
 }
 #endif /* _KERNEL_DMA_DIRECT_H */
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:16:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:16:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115126.219535 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVo-0002db-Ow; Thu, 22 Apr 2021 08:16:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115126.219535; Thu, 22 Apr 2021 08:16:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVo-0002dT-L6; Thu, 22 Apr 2021 08:16:36 +0000
Received: by outflank-mailman (input) for mailman id 115126;
 Thu, 22 Apr 2021 08:16:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUVn-0002Na-Bq
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:16:35 +0000
Received: from mail-pf1-x42a.google.com (unknown [2607:f8b0:4864:20::42a])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 83528e2b-bb71-42ab-913e-536f6405910b;
 Thu, 22 Apr 2021 08:16:27 +0000 (UTC)
Received: by mail-pf1-x42a.google.com with SMTP id a12so31142626pfc.7
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:16:27 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id n3sm1433648pga.92.2021.04.22.01.16.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:16: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: 83528e2b-bb71-42ab-913e-536f6405910b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=1G5gj/PLnNQoz3P+bt8iN1QajwUJDsAf4nstP4iCbTM=;
        b=ZafF4FJfUesR9XAbkWt/lHd17ocE0jXR3kp0OWu0BRdKPJbUFlOj0f0VYgPE/3Qbwc
         2Pr4TcvUUd9nj9g/tNqn7Y2IvHmckH0eWpuGxaNexZ+lPD9cFlBvIVCgeso5f0AEea0I
         mnsLx26nkhrYwieYrY0jqZ1+5YTFvye3ftPFk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=1G5gj/PLnNQoz3P+bt8iN1QajwUJDsAf4nstP4iCbTM=;
        b=YrQnkrukIOTubvr1Luqt5/B69ydW602sgR4na8Uqlb1MGpOMJF9OaFDbq717UEqNmG
         oVop+8eWmD7RFq310Fqp41fc/IX0XxMqgDqbHp6PccJLpT3RA2mSplyfSVfMfD6QIeyJ
         finyB7awD4t1Rtc8MzlC/5qf20qoTbeX0CSqagk135C4o2SaYKgMROKqdWH7enwX36ln
         6lmOBD6zl7vKYs8tp1Huezv3R9RXUy4YJJAUIL65na/rOhWJs8UXUmyv5LMlkOR6CkC2
         8FN8Hc0e8WlvswPYGW5thaNwnKPvf3zIEUx8afetxPFRDJBl3BPK5/qSK2GNfHBGYCJE
         RqSQ==
X-Gm-Message-State: AOAM533QnKo6ZejDLqpSeqH7Wu+GH/tKIjBNBJqYxSCy9j3bCidcd+Us
	L0+3o8l95laoSYkrLyLWrH6SuQ==
X-Google-Smtp-Source: ABdhPJxNq2WnH0g8PS1NVKpMmzhbtunLVw3q0JGcM/1rJuID7QxOQ0TgMJb+xzMVpYX2xV/rncERHw==
X-Received: by 2002:a63:c49:: with SMTP id 9mr2335649pgm.381.1619079386771;
        Thu, 22 Apr 2021 01:16:26 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 08/16] swiotlb: Update is_swiotlb_active to add a struct device argument
Date: Thu, 22 Apr 2021 16:15:00 +0800
Message-Id: <20210422081508.3942748-9-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Update is_swiotlb_active to add a struct device argument. This will be
useful later to allow for restricted DMA pool.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 drivers/gpu/drm/i915/gem/i915_gem_internal.c | 2 +-
 drivers/gpu/drm/nouveau/nouveau_ttm.c        | 2 +-
 drivers/pci/xen-pcifront.c                   | 2 +-
 include/linux/swiotlb.h                      | 4 ++--
 kernel/dma/direct.c                          | 2 +-
 kernel/dma/swiotlb.c                         | 4 ++--
 6 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_internal.c b/drivers/gpu/drm/i915/gem/i915_gem_internal.c
index ce6b664b10aa..7d48c433446b 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_internal.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_internal.c
@@ -42,7 +42,7 @@ static int i915_gem_object_get_pages_internal(struct drm_i915_gem_object *obj)
 
 	max_order = MAX_ORDER;
 #ifdef CONFIG_SWIOTLB
-	if (is_swiotlb_active()) {
+	if (is_swiotlb_active(NULL)) {
 		unsigned int max_segment;
 
 		max_segment = swiotlb_max_segment();
diff --git a/drivers/gpu/drm/nouveau/nouveau_ttm.c b/drivers/gpu/drm/nouveau/nouveau_ttm.c
index e8b506a6685b..2a2ae6d6cf6d 100644
--- a/drivers/gpu/drm/nouveau/nouveau_ttm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_ttm.c
@@ -321,7 +321,7 @@ nouveau_ttm_init(struct nouveau_drm *drm)
 	}
 
 #if IS_ENABLED(CONFIG_SWIOTLB) && IS_ENABLED(CONFIG_X86)
-	need_swiotlb = is_swiotlb_active();
+	need_swiotlb = is_swiotlb_active(NULL);
 #endif
 
 	ret = ttm_device_init(&drm->ttm.bdev, &nouveau_bo_driver, drm->dev->dev,
diff --git a/drivers/pci/xen-pcifront.c b/drivers/pci/xen-pcifront.c
index b7a8f3a1921f..6d548ce53ce7 100644
--- a/drivers/pci/xen-pcifront.c
+++ b/drivers/pci/xen-pcifront.c
@@ -693,7 +693,7 @@ static int pcifront_connect_and_init_dma(struct pcifront_device *pdev)
 
 	spin_unlock(&pcifront_dev_lock);
 
-	if (!err && !is_swiotlb_active()) {
+	if (!err && !is_swiotlb_active(NULL)) {
 		err = pci_xen_swiotlb_init_late();
 		if (err)
 			dev_err(&pdev->xdev->dev, "Could not setup SWIOTLB!\n");
diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index 2a6cca07540b..c530c976d18b 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -123,7 +123,7 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
 void __init swiotlb_exit(void);
 unsigned int swiotlb_max_segment(void);
 size_t swiotlb_max_mapping_size(struct device *dev);
-bool is_swiotlb_active(void);
+bool is_swiotlb_active(struct device *dev);
 void __init swiotlb_adjust_size(unsigned long size);
 #else
 #define swiotlb_force SWIOTLB_NO_FORCE
@@ -143,7 +143,7 @@ static inline size_t swiotlb_max_mapping_size(struct device *dev)
 	return SIZE_MAX;
 }
 
-static inline bool is_swiotlb_active(void)
+static inline bool is_swiotlb_active(struct device *dev)
 {
 	return false;
 }
diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
index 84c9feb5474a..7a88c34d0867 100644
--- a/kernel/dma/direct.c
+++ b/kernel/dma/direct.c
@@ -495,7 +495,7 @@ int dma_direct_supported(struct device *dev, u64 mask)
 size_t dma_direct_max_mapping_size(struct device *dev)
 {
 	/* If SWIOTLB is active, use its maximum mapping size */
-	if (is_swiotlb_active() &&
+	if (is_swiotlb_active(dev) &&
 	    (dma_addressing_limited(dev) || swiotlb_force == SWIOTLB_FORCE))
 		return swiotlb_max_mapping_size(dev);
 	return SIZE_MAX;
diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index ffbb8724e06c..1d221343f1c8 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -659,9 +659,9 @@ size_t swiotlb_max_mapping_size(struct device *dev)
 	return ((size_t)IO_TLB_SIZE) * IO_TLB_SEGSIZE;
 }
 
-bool is_swiotlb_active(void)
+bool is_swiotlb_active(struct device *dev)
 {
-	return io_tlb_default_mem != NULL;
+	return get_io_tlb_mem(dev) != NULL;
 }
 EXPORT_SYMBOL_GPL(is_swiotlb_active);
 
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:16:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:16:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115127.219547 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUVt-0002hW-9Y; Thu, 22 Apr 2021 08:16:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115127.219547; Thu, 22 Apr 2021 08:16: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 1lZUVt-0002hL-4N; Thu, 22 Apr 2021 08:16:41 +0000
Received: by outflank-mailman (input) for mailman id 115127;
 Thu, 22 Apr 2021 08:16:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUVs-0002Na-By
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:16:40 +0000
Received: from mail-pg1-x536.google.com (unknown [2607:f8b0:4864:20::536])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c78f24e8-3338-46dc-8941-ea01fe68f0b8;
 Thu, 22 Apr 2021 08:16:36 +0000 (UTC)
Received: by mail-pg1-x536.google.com with SMTP id j7so22883982pgi.3
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:16:36 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id e6sm1489084pgh.17.2021.04.22.01.16.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:16: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: c78f24e8-3338-46dc-8941-ea01fe68f0b8
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=7FPvCtA3DzFKQwLvtc7p/5Cs0iswQJglZ9YXlCAqucE=;
        b=BJiX1CQYA0mEDCEpMxa1tasCbi4fI5BDOHfh/pz+QYcElN3c5mcLOcB0Yb83+oHiSf
         CPa6c0Bl1fKIPQyZ45sNz3SCPuG/ixpd5Hz2AU47wStRbg7QAx9lYNFxNqp7Kowj6Uta
         RrLSccn4gu++zPN+jOwIj5+FZ4BE7SjACELv8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=7FPvCtA3DzFKQwLvtc7p/5Cs0iswQJglZ9YXlCAqucE=;
        b=IAlzdpcT9J0X3vWWvMTsxWYeu8XEpM4kZTFpeiPuz8ZOcB4dWlDlu5QqfLOCtf5Lla
         a+jwUmU/eia5GaOQxIBi6vSrfpztl31vAP/fAJaFTVXFabwX4yr3pnf8TTzCt0SYdbXD
         HRoRi64HoECGOP26jvDa4h3JNgwv8soOlVGQC6braYCY3z5S2y59sGzUgHTEzXBTgrMR
         hRWq4qK5M2T76AmbH51EE7alp53fMSU5WNWVCRu8J4TKOqjFL0UB1FmYXCWRs11Fx/L2
         fgbEc3NN3NDzgm8VTZuLpfL6gVkiZvuZHWcC3G3cBhdmtFnA0ziLGSEcc5ckz1iH5w44
         iRZA==
X-Gm-Message-State: AOAM533bZ4XoRZDE318KNn+raHN5ekH0j6G+n4flRRd3xQI8067iF91b
	1+BmdSHSFXQmfRbywnHrexLUdw==
X-Google-Smtp-Source: ABdhPJzoHwtUCb5BtS7uWm9jSZICs97Kt8RVlYajeU6q3WTDizEPh7yvn0zd87k0sLfHofxVgKyPGA==
X-Received: by 2002:a62:33c6:0:b029:225:5266:28df with SMTP id z189-20020a6233c60000b0290225526628dfmr2243880pfz.7.1619079395713;
        Thu, 22 Apr 2021 01:16:35 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 09/16] swiotlb: Bounce data from/to restricted DMA pool if available
Date: Thu, 22 Apr 2021 16:15:01 +0800
Message-Id: <20210422081508.3942748-10-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Regardless of swiotlb setting, the restricted DMA pool is preferred if
available.

The restricted DMA pools provide a basic level of protection against the
DMA overwriting buffer contents at unexpected times. However, to protect
against general data leakage and system memory corruption, the system
needs to provide a way to lock down the memory access, e.g., MPU.

Note that is_dev_swiotlb_force doesn't check if
swiotlb_force == SWIOTLB_FORCE. Otherwise the memory allocation behavior
with default swiotlb will be changed by the following patche
("dma-direct: Allocate memory from restricted DMA pool if available").

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 include/linux/swiotlb.h | 13 +++++++++++++
 kernel/dma/direct.h     |  3 ++-
 kernel/dma/swiotlb.c    |  8 ++++----
 3 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index c530c976d18b..0c5a18d9cf89 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -120,6 +120,15 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
 	return mem && paddr >= mem->start && paddr < mem->end;
 }
 
+static inline bool is_dev_swiotlb_force(struct device *dev)
+{
+#ifdef CONFIG_DMA_RESTRICTED_POOL
+	if (dev->dma_io_tlb_mem)
+		return true;
+#endif /* CONFIG_DMA_RESTRICTED_POOL */
+	return false;
+}
+
 void __init swiotlb_exit(void);
 unsigned int swiotlb_max_segment(void);
 size_t swiotlb_max_mapping_size(struct device *dev);
@@ -131,6 +140,10 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
 {
 	return false;
 }
+static inline bool is_dev_swiotlb_force(struct device *dev)
+{
+	return false;
+}
 static inline void swiotlb_exit(void)
 {
 }
diff --git a/kernel/dma/direct.h b/kernel/dma/direct.h
index 13e9e7158d94..f94813674e23 100644
--- a/kernel/dma/direct.h
+++ b/kernel/dma/direct.h
@@ -87,7 +87,8 @@ static inline dma_addr_t dma_direct_map_page(struct device *dev,
 	phys_addr_t phys = page_to_phys(page) + offset;
 	dma_addr_t dma_addr = phys_to_dma(dev, phys);
 
-	if (unlikely(swiotlb_force == SWIOTLB_FORCE))
+	if (unlikely(swiotlb_force == SWIOTLB_FORCE) ||
+	    is_dev_swiotlb_force(dev))
 		return swiotlb_map(dev, phys, size, dir, attrs);
 
 	if (unlikely(!dma_capable(dev, dma_addr, size, true))) {
diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 1d221343f1c8..96ff36d8ec53 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -344,7 +344,7 @@ void __init swiotlb_exit(void)
 static void swiotlb_bounce(struct device *dev, phys_addr_t tlb_addr, size_t size,
 			   enum dma_data_direction dir)
 {
-	struct io_tlb_mem *mem = io_tlb_default_mem;
+	struct io_tlb_mem *mem = get_io_tlb_mem(dev);
 	int index = (tlb_addr - mem->start) >> IO_TLB_SHIFT;
 	phys_addr_t orig_addr = mem->slots[index].orig_addr;
 	size_t alloc_size = mem->slots[index].alloc_size;
@@ -426,7 +426,7 @@ static unsigned int wrap_index(struct io_tlb_mem *mem, unsigned int index)
 static int find_slots(struct device *dev, phys_addr_t orig_addr,
 		size_t alloc_size)
 {
-	struct io_tlb_mem *mem = io_tlb_default_mem;
+	struct io_tlb_mem *mem = get_io_tlb_mem(dev);
 	unsigned long boundary_mask = dma_get_seg_boundary(dev);
 	dma_addr_t tbl_dma_addr =
 		phys_to_dma_unencrypted(dev, mem->start) & boundary_mask;
@@ -503,7 +503,7 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr,
 		size_t mapping_size, size_t alloc_size,
 		enum dma_data_direction dir, unsigned long attrs)
 {
-	struct io_tlb_mem *mem = io_tlb_default_mem;
+	struct io_tlb_mem *mem = get_io_tlb_mem(dev);
 	unsigned int offset = swiotlb_align_offset(dev, orig_addr);
 	unsigned int i;
 	int index;
@@ -554,7 +554,7 @@ void swiotlb_tbl_unmap_single(struct device *hwdev, phys_addr_t tlb_addr,
 			      size_t mapping_size, enum dma_data_direction dir,
 			      unsigned long attrs)
 {
-	struct io_tlb_mem *mem = io_tlb_default_mem;
+	struct io_tlb_mem *mem = get_io_tlb_mem(hwdev);
 	unsigned long flags;
 	unsigned int offset = swiotlb_align_offset(hwdev, tlb_addr);
 	int index = (tlb_addr - offset - mem->start) >> IO_TLB_SHIFT;
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:16:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:16:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115132.219559 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUW3-0002pQ-Go; Thu, 22 Apr 2021 08:16:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115132.219559; Thu, 22 Apr 2021 08: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 1lZUW3-0002pH-D2; Thu, 22 Apr 2021 08:16:51 +0000
Received: by outflank-mailman (input) for mailman id 115132;
 Thu, 22 Apr 2021 08:16:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUW2-0002Na-CN
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:16:50 +0000
Received: from mail-pf1-x434.google.com (unknown [2607:f8b0:4864:20::434])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1ce1f53c-7d9e-4976-b3e0-bf86ec83555e;
 Thu, 22 Apr 2021 08:16:45 +0000 (UTC)
Received: by mail-pf1-x434.google.com with SMTP id h15so13458424pfv.2
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:16:45 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id u20sm1609788pgl.27.2021.04.22.01.16.37
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01: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: 1ce1f53c-7d9e-4976-b3e0-bf86ec83555e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=mJ/TkgMbos7HDgzEvAyBSSssik5oYm9C9TjgiTYpXv4=;
        b=fyVWiuO//zdOOIo4SNTiuA/vCunrGgmzPak8fgrlfn9FPjJtgikPITZX5MyU4Hcylj
         tgKqZuvWduZLAhM+rwSwIdzf6cV8Ibpo2L8LCLq3qaaOJec+GA7MgH1YQyREX968hpEE
         gwnKW1kbzKADPcPn9LNFq1IfmA/7hwp+Ov4LQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=mJ/TkgMbos7HDgzEvAyBSSssik5oYm9C9TjgiTYpXv4=;
        b=YSUod+43WWHDPsVD8Fwb+tEXx1FHl6Effs7xQpMzrpiRl77P/72QByEj6TLwFjfAxk
         s2O87m55aGCSaXMQnFKoTH9HqTikhYxt1UAywo1Pkf+StLq8z/Hpv0Xt90JedpynU5Kq
         8Pao5+C6MebHZE5Gwy6niPntnRRGesYWyDUsrazaxSK1m1q2AyhkVn0A+qZvaG2GEUKA
         vo3GJB7Tcs4eM+qwFH78iKpGvxKxk1fdmmkctrNSt6jCQcrmwW7O87SVv8Q8HPy1XpKy
         Q72OJK17uBph/yCac1XdDYLCLRBWGzTzer9t8UwPUG5ZTUWOppJNPJwXX8qcEGbFBpcG
         HU+w==
X-Gm-Message-State: AOAM531E6mu45YiuvLtjlym/m/UtpIjEv8n7SYqS4nGeucAq+9bVaft+
	SXZl9aIeqz0zsN+QAagfWz8UIA==
X-Google-Smtp-Source: ABdhPJy4vYC2gsYRFQJC6RH0GCA/bYSUMJf7hfMB4cYSbbJiyMgDRqknqyiPj0fvHGhXeIZCrRTI2A==
X-Received: by 2002:a62:8cd0:0:b029:256:a7a9:2a3a with SMTP id m199-20020a628cd00000b0290256a7a92a3amr2221884pfd.69.1619079404706;
        Thu, 22 Apr 2021 01:16:44 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 10/16] swiotlb: Move alloc_size to find_slots
Date: Thu, 22 Apr 2021 16:15:02 +0800
Message-Id: <20210422081508.3942748-11-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Move the maintenance of alloc_size to find_slots for better code
reusability later.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 kernel/dma/swiotlb.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index 96ff36d8ec53..b7d634d7a7eb 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -479,8 +479,11 @@ static int find_slots(struct device *dev, phys_addr_t orig_addr,
 	return -1;
 
 found:
-	for (i = index; i < index + nslots; i++)
+	for (i = index; i < index + nslots; i++) {
 		mem->slots[i].list = 0;
+		mem->slots[i].alloc_size =
+			alloc_size - ((i - index) << IO_TLB_SHIFT);
+	}
 	for (i = index - 1;
 	     io_tlb_offset(i) != IO_TLB_SEGSIZE - 1 &&
 	     mem->slots[i].list; i--)
@@ -535,11 +538,8 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr,
 	 * This is needed when we sync the memory.  Then we sync the buffer if
 	 * needed.
 	 */
-	for (i = 0; i < nr_slots(alloc_size + offset); i++) {
+	for (i = 0; i < nr_slots(alloc_size + offset); i++)
 		mem->slots[index + i].orig_addr = slot_addr(orig_addr, i);
-		mem->slots[index + i].alloc_size =
-			alloc_size - (i << IO_TLB_SHIFT);
-	}
 	tlb_addr = slot_addr(mem->start, index) + offset;
 	if (!(attrs & DMA_ATTR_SKIP_CPU_SYNC) &&
 	    (dir == DMA_TO_DEVICE || dir == DMA_BIDIRECTIONAL))
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:16:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:16:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115134.219571 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUW8-0002u0-Qz; Thu, 22 Apr 2021 08:16:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115134.219571; Thu, 22 Apr 2021 08:16:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUW8-0002tr-N3; Thu, 22 Apr 2021 08:16:56 +0000
Received: by outflank-mailman (input) for mailman id 115134;
 Thu, 22 Apr 2021 08:16:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUW7-0002Na-CS
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:16:55 +0000
Received: from mail-pl1-x634.google.com (unknown [2607:f8b0:4864:20::634])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 95e7f803-e086-46ef-b75c-01b657c14215;
 Thu, 22 Apr 2021 08:16:53 +0000 (UTC)
Received: by mail-pl1-x634.google.com with SMTP id v13so9540058ple.9
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:16:53 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id 137sm1375933pfx.172.2021.04.22.01.16.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:16: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: 95e7f803-e086-46ef-b75c-01b657c14215
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=qkwA0MhFMUu0PR/fEN042I8GYXA93G+HHJQKQB3SQ/4=;
        b=n24zPnvuNl2SXMT6Lwyk4tHWvipaN24pDTC4bKN1c4QYL0U2nK0+5N3vBaxPFaX5jf
         jVJT7R6TR9puuY7CsVnNk7gaY8P2a9BoR7/+2GKzdYiqobiUj21G70dmzDdpYhUlxZJw
         jvg8gdJ0MycI55fZwqnmwlqq6E/R7NUO9utzM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=qkwA0MhFMUu0PR/fEN042I8GYXA93G+HHJQKQB3SQ/4=;
        b=qo3Fx4gEwo+4NkieNUABBhNuIZvdDc8nc4S527or0H8L2ngXT12AMbtOgG985QooeD
         hBfnqaQdtgxjhnvksQpCojss0f7tJiR1nGbkPSB0LTnPp2tUsG7IyuUFzmaLMvMCJzp7
         nx8QwV/Nb3KDi+MDUSM39ErVJQ9B0/aOSedHmOcPNQfs0gj6rh5MOhtKhYbtAVU6/hsE
         ORsUix61mNFQmixGsD4f5V+2ZjUs0ERBbYsLtyybBbLtgqeAavkvjoCCtRd6gbUz16Wr
         fGksMGRf+S0p/rppbBiVAjB0BgqvtYKX5/MruhfaZ1rpMsGcvQ7VmPpZ7cSZgH3AnKzl
         nUpw==
X-Gm-Message-State: AOAM533b6ZPK03VSc+ICyzwn4WRm27cH8B39twJAEgh2H+vfU84sTOjF
	162DeCWLxL5i/HAvrMCw/aX+Hg==
X-Google-Smtp-Source: ABdhPJzVJLpBCYw0WSyr4j5165U0UOHdyEL1ymXrvCVvRWjQBHVXQWAEaEzYKj1TvEvauEG2merRVg==
X-Received: by 2002:a17:902:ac89:b029:e6:d199:29ac with SMTP id h9-20020a170902ac89b02900e6d19929acmr2225078plr.46.1619079413150;
        Thu, 22 Apr 2021 01:16:53 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 11/16] swiotlb: Refactor swiotlb_tbl_unmap_single
Date: Thu, 22 Apr 2021 16:15:03 +0800
Message-Id: <20210422081508.3942748-12-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add a new function, release_slots, to make the code reusable for supporting
different bounce buffer pools, e.g. restricted DMA pool.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 kernel/dma/swiotlb.c | 35 ++++++++++++++++++++---------------
 1 file changed, 20 insertions(+), 15 deletions(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index b7d634d7a7eb..af0feb8eaead 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -547,27 +547,15 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr,
 	return tlb_addr;
 }
 
-/*
- * tlb_addr is the physical address of the bounce buffer to unmap.
- */
-void swiotlb_tbl_unmap_single(struct device *hwdev, phys_addr_t tlb_addr,
-			      size_t mapping_size, enum dma_data_direction dir,
-			      unsigned long attrs)
+static void release_slots(struct device *dev, phys_addr_t tlb_addr)
 {
-	struct io_tlb_mem *mem = get_io_tlb_mem(hwdev);
+	struct io_tlb_mem *mem = get_io_tlb_mem(dev);
 	unsigned long flags;
-	unsigned int offset = swiotlb_align_offset(hwdev, tlb_addr);
+	unsigned int offset = swiotlb_align_offset(dev, tlb_addr);
 	int index = (tlb_addr - offset - mem->start) >> IO_TLB_SHIFT;
 	int nslots = nr_slots(mem->slots[index].alloc_size + offset);
 	int count, i;
 
-	/*
-	 * First, sync the memory before unmapping the entry
-	 */
-	if (!(attrs & DMA_ATTR_SKIP_CPU_SYNC) &&
-	    (dir == DMA_FROM_DEVICE || dir == DMA_BIDIRECTIONAL))
-		swiotlb_bounce(hwdev, tlb_addr, mapping_size, DMA_FROM_DEVICE);
-
 	/*
 	 * Return the buffer to the free list by setting the corresponding
 	 * entries to indicate the number of contiguous entries available.
@@ -602,6 +590,23 @@ void swiotlb_tbl_unmap_single(struct device *hwdev, phys_addr_t tlb_addr,
 	spin_unlock_irqrestore(&mem->lock, flags);
 }
 
+/*
+ * tlb_addr is the physical address of the bounce buffer to unmap.
+ */
+void swiotlb_tbl_unmap_single(struct device *dev, phys_addr_t tlb_addr,
+			      size_t mapping_size, enum dma_data_direction dir,
+			      unsigned long attrs)
+{
+	/*
+	 * First, sync the memory before unmapping the entry
+	 */
+	if (!(attrs & DMA_ATTR_SKIP_CPU_SYNC) &&
+	    (dir == DMA_FROM_DEVICE || dir == DMA_BIDIRECTIONAL))
+		swiotlb_bounce(dev, tlb_addr, mapping_size, DMA_FROM_DEVICE);
+
+	release_slots(dev, tlb_addr);
+}
+
 void swiotlb_sync_single_for_device(struct device *dev, phys_addr_t tlb_addr,
 		size_t size, enum dma_data_direction dir)
 {
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:17:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:17:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115138.219583 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUWH-00030q-2v; Thu, 22 Apr 2021 08:17:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115138.219583; Thu, 22 Apr 2021 08:17: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 1lZUWG-00030d-Va; Thu, 22 Apr 2021 08:17:04 +0000
Received: by outflank-mailman (input) for mailman id 115138;
 Thu, 22 Apr 2021 08:17:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUWE-0002zU-VA
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:17:02 +0000
Received: from mail-pj1-x102e.google.com (unknown [2607:f8b0:4864:20::102e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1a017b62-e4b0-4235-8260-a1a494a76183;
 Thu, 22 Apr 2021 08:17:02 +0000 (UTC)
Received: by mail-pj1-x102e.google.com with SMTP id
 f2-20020a17090a4a82b02900c67bf8dc69so544562pjh.1
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:17:02 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id m3sm1445841pgl.91.2021.04.22.01.16.54
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:17: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: 1a017b62-e4b0-4235-8260-a1a494a76183
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=II4tcMZ5Sw7jMUCuMNHItr2ESdAma+cudK/mj3wTE4E=;
        b=g67oZjS4DG+MlBHAj5fP4OXD/aByavtOTh4g+oC1qn1ppqQSBF1tkJ0F6VjeXpk7XZ
         dMZktmKOrk4Wn3QuYuQVSUq0o7o1vo2ytqYa1fC1S3W1yzuB1Vnkl8D9OUsD3jSSHINJ
         bA/iMCQ6pIa/UrEFSh4rBJKrVOhYdlsthwSBU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=II4tcMZ5Sw7jMUCuMNHItr2ESdAma+cudK/mj3wTE4E=;
        b=VxYdNZ2/WPOrDyzzkwjpved6db90t+D7gP40k3frqZ786JqhjvO5rbySxoIzCdsL6V
         nSMFNK7fLpoTR9etd8S3SEDWEMy689H1EEhwO5XbfumSG9q9tgYUYCEPcn+0/Qh44jyo
         tVTl6mJb2ueJDNDGPwKoo9EsBsi/MszB4yQSQI2/bhf6FvS1o8lET9gE+Acc1Wau90Dn
         ELvGA+WL+jl9dpnKhHYi4JO6jz/s/WMPhlKtFcoEPAW7AuaFCUAAnF8ojIHumx94k24t
         p6Pz0soVOKh6jANjIfi/0V11c5FT+8leprcRyHdnDz7Jqrv2V81IehH4+5WZtjM+CWtU
         7AxQ==
X-Gm-Message-State: AOAM533c2E4fMLy86e6wnNBMpnZsC4YpsQHiIu4XdbGS678AS+BLja0e
	IRjFhYlRyjDHe/fC5pR3aA1aCw==
X-Google-Smtp-Source: ABdhPJydBgDAieBYh/9Ynn+xY2fjE6IZW8L2sy0R9JNHtf8kZ7Y8TDb9J+jJ/cnp9RtKMkr9CXa+fg==
X-Received: by 2002:a17:90b:812:: with SMTP id bk18mr2736214pjb.145.1619079421594;
        Thu, 22 Apr 2021 01:17:01 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 12/16] dma-direct: Add a new wrapper __dma_direct_free_pages()
Date: Thu, 22 Apr 2021 16:15:04 +0800
Message-Id: <20210422081508.3942748-13-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add a new wrapper __dma_direct_free_pages() that will be useful later
for swiotlb_free().

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 kernel/dma/direct.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
index 7a88c34d0867..7a27f0510fcc 100644
--- a/kernel/dma/direct.c
+++ b/kernel/dma/direct.c
@@ -75,6 +75,12 @@ static bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size)
 		min_not_zero(dev->coherent_dma_mask, dev->bus_dma_limit);
 }
 
+static void __dma_direct_free_pages(struct device *dev, struct page *page,
+				    size_t size)
+{
+	dma_free_contiguous(dev, page, size);
+}
+
 static struct page *__dma_direct_alloc_pages(struct device *dev, size_t size,
 		gfp_t gfp)
 {
@@ -237,7 +243,7 @@ void *dma_direct_alloc(struct device *dev, size_t size,
 			return NULL;
 	}
 out_free_pages:
-	dma_free_contiguous(dev, page, size);
+	__dma_direct_free_pages(dev, page, size);
 	return NULL;
 }
 
@@ -273,7 +279,7 @@ void dma_direct_free(struct device *dev, size_t size,
 	else if (IS_ENABLED(CONFIG_ARCH_HAS_DMA_CLEAR_UNCACHED))
 		arch_dma_clear_uncached(cpu_addr, size);
 
-	dma_free_contiguous(dev, dma_direct_to_page(dev, dma_addr), size);
+	__dma_direct_free_pages(dev, dma_direct_to_page(dev, dma_addr), size);
 }
 
 struct page *dma_direct_alloc_pages(struct device *dev, size_t size,
@@ -310,7 +316,7 @@ struct page *dma_direct_alloc_pages(struct device *dev, size_t size,
 	*dma_handle = phys_to_dma_direct(dev, page_to_phys(page));
 	return page;
 out_free_pages:
-	dma_free_contiguous(dev, page, size);
+	__dma_direct_free_pages(dev, page, size);
 	return NULL;
 }
 
@@ -329,7 +335,7 @@ void dma_direct_free_pages(struct device *dev, size_t size,
 	if (force_dma_unencrypted(dev))
 		set_memory_encrypted((unsigned long)vaddr, 1 << page_order);
 
-	dma_free_contiguous(dev, page, size);
+	__dma_direct_free_pages(dev, page, size);
 }
 
 #if defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE) || \
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:17:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:17:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115141.219595 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUWO-00037q-GY; Thu, 22 Apr 2021 08:17:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115141.219595; Thu, 22 Apr 2021 08:17:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUWO-00037f-CV; Thu, 22 Apr 2021 08:17:12 +0000
Received: by outflank-mailman (input) for mailman id 115141;
 Thu, 22 Apr 2021 08:17:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUWN-00035Y-D1
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:17:11 +0000
Received: from mail-pj1-x102f.google.com (unknown [2607:f8b0:4864:20::102f])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c75d3c33-0648-41ee-a0e1-a499425e527c;
 Thu, 22 Apr 2021 08:17:10 +0000 (UTC)
Received: by mail-pj1-x102f.google.com with SMTP id s14so16036028pjl.5
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:17:10 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id r127sm1426080pfr.163.2021.04.22.01.17.02
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:17: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: c75d3c33-0648-41ee-a0e1-a499425e527c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=amLAD+RuuU3TmKFLsrLVVPzhv2qyOaj37trLDwA/WtE=;
        b=Dj/C9WZrDChheWfT11j6BI+1xKOZ8hApHZ2w0Qy3MxSy/cqQLSJYj2gZK/YuJ4iIqk
         8k9EDKNs+mFov1kHPXJWtO3gtxQvHorUgtfKDGGqzwW6RF+yPi7tP6JrpUnkOT4Bvhjl
         Alh5tpYaBvNeWg/DoLW0FIIaWItMtbLb2gNS8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=amLAD+RuuU3TmKFLsrLVVPzhv2qyOaj37trLDwA/WtE=;
        b=h9NUsqGLuMr1urm3WQ18g2vB0Yqhgz5P15dMp5aVZHTVH/pOfh0fxIdlhOA9VXfha4
         OZcW+JCKtSNFToXAnGpk5jbIl0BmTr1gBLU8gtgcOzY5YgzgpKeUdTGqzlm7CBmvTqRX
         uba3nD4Ujq2dvK2BaOl3LMC+bQpRwFeT17pGX8kBxZpuE0FchfnORfDuYyajTn1J7TCb
         rmb9ZRGP8aCc4Oa1TdAGmpUT9blxrdC+uK5MAe3U/kKinfJWh/hEJeRIgBGtKsU0agth
         uSbDKHZwsPEjhTb6OKs6RdspNIwor4GMcFuR1TGAlBMluFoznqX5aG2A//XdlS2xWAwq
         EbAg==
X-Gm-Message-State: AOAM530PID7S+Ogwm0zqRaQ2gKUt7byLtxk6THynmy2E1kb87CxD96dn
	e6O27fVkrRLgVwE0X4G61y05aw==
X-Google-Smtp-Source: ABdhPJw5kQ5A6QRD+RO8aTMY2CqyP4o05a4lnui6PsoqZSt0Lb4MmrzRSlYlz+T9E15MIZErilA+dw==
X-Received: by 2002:a17:902:7fc9:b029:eb:4828:47e8 with SMTP id t9-20020a1709027fc9b02900eb482847e8mr2274855plb.56.1619079429963;
        Thu, 22 Apr 2021 01:17:09 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 13/16] swiotlb: Add restricted DMA alloc/free support.
Date: Thu, 22 Apr 2021 16:15:05 +0800
Message-Id: <20210422081508.3942748-14-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add the functions, swiotlb_{alloc,free} to support the memory allocation
from restricted DMA pool.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 include/linux/swiotlb.h |  4 ++++
 kernel/dma/swiotlb.c    | 35 +++++++++++++++++++++++++++++++++--
 2 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index 0c5a18d9cf89..e8cf49bd90c5 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -134,6 +134,10 @@ unsigned int swiotlb_max_segment(void);
 size_t swiotlb_max_mapping_size(struct device *dev);
 bool is_swiotlb_active(struct device *dev);
 void __init swiotlb_adjust_size(unsigned long size);
+#ifdef CONFIG_DMA_RESTRICTED_POOL
+struct page *swiotlb_alloc(struct device *dev, size_t size);
+bool swiotlb_free(struct device *dev, struct page *page, size_t size);
+#endif /* CONFIG_DMA_RESTRICTED_POOL */
 #else
 #define swiotlb_force SWIOTLB_NO_FORCE
 static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index af0feb8eaead..274272c79080 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -454,8 +454,9 @@ static int find_slots(struct device *dev, phys_addr_t orig_addr,
 
 	index = wrap = wrap_index(mem, ALIGN(mem->index, stride));
 	do {
-		if ((slot_addr(tbl_dma_addr, index) & iotlb_align_mask) !=
-		    (orig_addr & iotlb_align_mask)) {
+		if (orig_addr &&
+		    (slot_addr(tbl_dma_addr, index) & iotlb_align_mask) !=
+			    (orig_addr & iotlb_align_mask)) {
 			index = wrap_index(mem, index + 1);
 			continue;
 		}
@@ -695,6 +696,36 @@ late_initcall(swiotlb_create_default_debugfs);
 #endif
 
 #ifdef CONFIG_DMA_RESTRICTED_POOL
+struct page *swiotlb_alloc(struct device *dev, size_t size)
+{
+	struct io_tlb_mem *mem = dev->dma_io_tlb_mem;
+	phys_addr_t tlb_addr;
+	int index;
+
+	if (!mem)
+		return NULL;
+
+	index = find_slots(dev, 0, size);
+	if (index == -1)
+		return NULL;
+
+	tlb_addr = slot_addr(mem->start, index);
+
+	return pfn_to_page(PFN_DOWN(tlb_addr));
+}
+
+bool swiotlb_free(struct device *dev, struct page *page, size_t size)
+{
+	phys_addr_t tlb_addr = page_to_phys(page);
+
+	if (!is_swiotlb_buffer(dev, tlb_addr))
+		return false;
+
+	release_slots(dev, tlb_addr);
+
+	return true;
+}
+
 static int rmem_swiotlb_device_init(struct reserved_mem *rmem,
 				    struct device *dev)
 {
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:17:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:17:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115145.219606 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUWX-0003F8-Rp; Thu, 22 Apr 2021 08:17:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115145.219606; Thu, 22 Apr 2021 08:17: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 1lZUWX-0003Ex-NN; Thu, 22 Apr 2021 08:17:21 +0000
Received: by outflank-mailman (input) for mailman id 115145;
 Thu, 22 Apr 2021 08:17:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUWW-00035Y-Cd
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:17:20 +0000
Received: from mail-pj1-x102a.google.com (unknown [2607:f8b0:4864:20::102a])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e706aa1f-4c3d-436f-954c-e4664dbce07f;
 Thu, 22 Apr 2021 08:17:19 +0000 (UTC)
Received: by mail-pj1-x102a.google.com with SMTP id
 u14-20020a17090a1f0eb029014e38011b09so533066pja.5
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:17:19 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id x83sm1370623pfc.219.2021.04.22.01.17.11
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01: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: e706aa1f-4c3d-436f-954c-e4664dbce07f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=dv7BLYV1dR+Hv57QLEgOJn93z8PrIpEIV140lV4wljE=;
        b=IdEuGFWq6cEdkZ99mO2O27ki8GvfvMVey9yj/f47UHE3vV5lhpTNk16uhFdJSP1n3B
         e3lgr2Cg6K2DAQ3JgU6kTkPT93Wu21DPWa7PhBDty1/ouU1J2xZ4l5HgS7tneVxVJskn
         ggwToHKnOSn0M/meAOXM7m/Hj9WegBMauCF14=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=dv7BLYV1dR+Hv57QLEgOJn93z8PrIpEIV140lV4wljE=;
        b=cvaQfzNJgnZ+kXmsShveFOWr2K8Wne4qrUdBqzkcYa+LKla9winKEcqEefVCfXs+qe
         Y+UFx8d5BHKKrkeWt03rCIPZPupYAO/iyAXypg+Jvx5zPIxspEB6gZgphW6Qix7KBL3n
         lrjB1XIq725sLfM2GuVoR0pxgqYAUHZiit9A8l5sAsIzscQjfd3S+NOMGRj/YmuTylZU
         vHhZJVt2qkcmqzBrLcctCIuhScXPbcALj1Ssk/Iy264/fy3/xxDNdG4kfSqqIKnoy4tT
         g31YiQClza1m3JiWN7W18H9UsPCdjvP2SzKayuxflT2/EQKZ98K/E2gEcy8kQrhuo5uL
         H8sQ==
X-Gm-Message-State: AOAM531ysgbXNb5vcXIdR+S+ShHdPGMlHG8hKmlyFMf8QTn0n6qchbzc
	kngGmNA57BsELZbtfAWZ+MaKfA==
X-Google-Smtp-Source: ABdhPJxH7QpKxqdeO++v+i4smXOVuua/tATF0bVY4hpXQGaE+c1js3wqW4RuCXVBVjJRbCJn8Tis9w==
X-Received: by 2002:a17:90b:1b4a:: with SMTP id nv10mr2560415pjb.153.1619079438373;
        Thu, 22 Apr 2021 01:17:18 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 14/16] dma-direct: Allocate memory from restricted DMA pool if available
Date: Thu, 22 Apr 2021 16:15:06 +0800
Message-Id: <20210422081508.3942748-15-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The restricted DMA pool is preferred if available.

The restricted DMA pools provide a basic level of protection against the
DMA overwriting buffer contents at unexpected times. However, to protect
against general data leakage and system memory corruption, the system
needs to provide a way to lock down the memory access, e.g., MPU.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 kernel/dma/direct.c | 35 ++++++++++++++++++++++++++---------
 1 file changed, 26 insertions(+), 9 deletions(-)

diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
index 7a27f0510fcc..29523d2a9845 100644
--- a/kernel/dma/direct.c
+++ b/kernel/dma/direct.c
@@ -78,6 +78,10 @@ static bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size)
 static void __dma_direct_free_pages(struct device *dev, struct page *page,
 				    size_t size)
 {
+#ifdef CONFIG_DMA_RESTRICTED_POOL
+	if (swiotlb_free(dev, page, size))
+		return;
+#endif
 	dma_free_contiguous(dev, page, size);
 }
 
@@ -92,7 +96,17 @@ static struct page *__dma_direct_alloc_pages(struct device *dev, size_t size,
 
 	gfp |= dma_direct_optimal_gfp_mask(dev, dev->coherent_dma_mask,
 					   &phys_limit);
-	page = dma_alloc_contiguous(dev, size, gfp);
+
+#ifdef CONFIG_DMA_RESTRICTED_POOL
+	page = swiotlb_alloc(dev, size);
+	if (page && !dma_coherent_ok(dev, page_to_phys(page), size)) {
+		__dma_direct_free_pages(dev, page, size);
+		page = NULL;
+	}
+#endif
+
+	if (!page)
+		page = dma_alloc_contiguous(dev, size, gfp);
 	if (page && !dma_coherent_ok(dev, page_to_phys(page), size)) {
 		dma_free_contiguous(dev, page, size);
 		page = NULL;
@@ -148,7 +162,7 @@ void *dma_direct_alloc(struct device *dev, size_t size,
 		gfp |= __GFP_NOWARN;
 
 	if ((attrs & DMA_ATTR_NO_KERNEL_MAPPING) &&
-	    !force_dma_unencrypted(dev)) {
+	    !force_dma_unencrypted(dev) && !is_dev_swiotlb_force(dev)) {
 		page = __dma_direct_alloc_pages(dev, size, gfp & ~__GFP_ZERO);
 		if (!page)
 			return NULL;
@@ -161,8 +175,8 @@ void *dma_direct_alloc(struct device *dev, size_t size,
 	}
 
 	if (!IS_ENABLED(CONFIG_ARCH_HAS_DMA_SET_UNCACHED) &&
-	    !IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) &&
-	    !dev_is_dma_coherent(dev))
+	    !IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) && !dev_is_dma_coherent(dev) &&
+	    !is_dev_swiotlb_force(dev))
 		return arch_dma_alloc(dev, size, dma_handle, gfp, attrs);
 
 	/*
@@ -172,7 +186,9 @@ void *dma_direct_alloc(struct device *dev, size_t size,
 	if (IS_ENABLED(CONFIG_DMA_COHERENT_POOL) &&
 	    !gfpflags_allow_blocking(gfp) &&
 	    (force_dma_unencrypted(dev) ||
-	     (IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) && !dev_is_dma_coherent(dev))))
+	     (IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) &&
+	      !dev_is_dma_coherent(dev))) &&
+	    !is_dev_swiotlb_force(dev))
 		return dma_direct_alloc_from_pool(dev, size, dma_handle, gfp);
 
 	/* we always manually zero the memory once we are done */
@@ -253,15 +269,15 @@ void dma_direct_free(struct device *dev, size_t size,
 	unsigned int page_order = get_order(size);
 
 	if ((attrs & DMA_ATTR_NO_KERNEL_MAPPING) &&
-	    !force_dma_unencrypted(dev)) {
+	    !force_dma_unencrypted(dev) && !is_dev_swiotlb_force(dev)) {
 		/* cpu_addr is a struct page cookie, not a kernel address */
 		dma_free_contiguous(dev, cpu_addr, size);
 		return;
 	}
 
 	if (!IS_ENABLED(CONFIG_ARCH_HAS_DMA_SET_UNCACHED) &&
-	    !IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) &&
-	    !dev_is_dma_coherent(dev)) {
+	    !IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) && !dev_is_dma_coherent(dev) &&
+	    !is_dev_swiotlb_force(dev)) {
 		arch_dma_free(dev, size, cpu_addr, dma_addr, attrs);
 		return;
 	}
@@ -289,7 +305,8 @@ struct page *dma_direct_alloc_pages(struct device *dev, size_t size,
 	void *ret;
 
 	if (IS_ENABLED(CONFIG_DMA_COHERENT_POOL) &&
-	    force_dma_unencrypted(dev) && !gfpflags_allow_blocking(gfp))
+	    force_dma_unencrypted(dev) && !gfpflags_allow_blocking(gfp) &&
+	    !is_dev_swiotlb_force(dev))
 		return dma_direct_alloc_from_pool(dev, size, dma_handle, gfp);
 
 	page = __dma_direct_alloc_pages(dev, size, gfp);
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:17:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:17:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115150.219619 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUWi-0003Mt-6p; Thu, 22 Apr 2021 08:17:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115150.219619; Thu, 22 Apr 2021 08:17: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 1lZUWi-0003Ml-2Y; Thu, 22 Apr 2021 08:17:32 +0000
Received: by outflank-mailman (input) for mailman id 115150;
 Thu, 22 Apr 2021 08:17:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUWg-0003Kb-DQ
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:17:30 +0000
Received: from mail-pg1-x535.google.com (unknown [2607:f8b0:4864:20::535])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 9c4c2537-51a1-4599-9ec1-ab3994014896;
 Thu, 22 Apr 2021 08:17:27 +0000 (UTC)
Received: by mail-pg1-x535.google.com with SMTP id s22so11196804pgk.6
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:17:27 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id i22sm1586646pgj.90.2021.04.22.01.17.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:17: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: 9c4c2537-51a1-4599-9ec1-ab3994014896
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=RuOOsLHj/oNZjBm4RnvuivSFFV92Va82CrZ+fAg7zfY=;
        b=SU4sVnlV04xSgoofQca5QyBITV+0IvFAevjbJUPql51e/WJmwt753FvY8Mkg5m2V9K
         KltjB0Yf/owsba7VaGE5I/jyIpffrwgwzMWGj5OuANSMmX9kAJK1YudQOntlivYBBgBL
         ojHwCuXZ3zEWizTS3cOusPjXwW4Dim4zSAIxs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=RuOOsLHj/oNZjBm4RnvuivSFFV92Va82CrZ+fAg7zfY=;
        b=cGyKMpWJzip7Yy6AqfIEc0lyBYHrCUMcSGuJFqjZiQ3022JXE9dEBTkBoQmOYe/Hxw
         D7OoDR2IvulrTCABZmCj6T3r787nMPdgUrT7qW2pwc8OQoKJb5lWrMI02Mn0vq51WZ32
         dIBjaISl37IYvB5ENqVY9zMODwmTp/zc5hUEepEcaFQ5SOiBSNuhx7iOXn+pCUx8nS6k
         rAesyhHH80CTxx2WJRNW1ofg7X7FTkxGzLPN3phnpPBVFn0pjQXJY9V8Z3x8clse22FG
         J/11j+9F4FFtqDJY0euh02UPsJl4X18HEh7jBkcRYZ54gXkNf080RlKa/bE+M0HFC4/0
         1ZzA==
X-Gm-Message-State: AOAM532PbLmfgC83Hwo0Gzv4wG8+xjWNaioXTUxXhhMZTl4bFbkFQbiD
	zuKPfuJ5DMDKbUCRE0U5bGiDvw==
X-Google-Smtp-Source: ABdhPJwbWgS0cLJAD3Tg8wl4hIiA/h+MeZ9ZtrvoWlgRDwgrWUw8WsaWULCcDmGHjuLEWNOlKJKskA==
X-Received: by 2002:aa7:8703:0:b029:261:4680:9723 with SMTP id b3-20020aa787030000b029026146809723mr2287757pfo.70.1619079446787;
        Thu, 22 Apr 2021 01:17:26 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 15/16] dt-bindings: of: Add restricted DMA pool
Date: Thu, 22 Apr 2021 16:15:07 +0800
Message-Id: <20210422081508.3942748-16-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Introduce the new compatible string, restricted-dma-pool, for restricted
DMA. One can specify the address and length of the restricted DMA memory
region by restricted-dma-pool in the reserved-memory node.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 .../reserved-memory/reserved-memory.txt       | 24 +++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt b/Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt
index e8d3096d922c..fc9a12c2f679 100644
--- a/Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt
+++ b/Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt
@@ -51,6 +51,20 @@ compatible (optional) - standard definition
           used as a shared pool of DMA buffers for a set of devices. It can
           be used by an operating system to instantiate the necessary pool
           management subsystem if necessary.
+        - restricted-dma-pool: This indicates a region of memory meant to be
+          used as a pool of restricted DMA buffers for a set of devices. The
+          memory region would be the only region accessible to those devices.
+          When using this, the no-map and reusable properties must not be set,
+          so the operating system can create a virtual mapping that will be used
+          for synchronization. The main purpose for restricted DMA is to
+          mitigate the lack of DMA access control on systems without an IOMMU,
+          which could result in the DMA accessing the system memory at
+          unexpected times and/or unexpected addresses, possibly leading to data
+          leakage or corruption. The feature on its own provides a basic level
+          of protection against the DMA overwriting buffer contents at
+          unexpected times. However, to protect against general data leakage and
+          system memory corruption, the system needs to provide way to lock down
+          the memory access, e.g., MPU.
         - vendor specific string in the form <vendor>,[<device>-]<usage>
 no-map (optional) - empty property
     - Indicates the operating system must not create a virtual mapping
@@ -120,6 +134,11 @@ one for multimedia processing (named multimedia-memory@77000000, 64MiB).
 			compatible = "acme,multimedia-memory";
 			reg = <0x77000000 0x4000000>;
 		};
+
+		restricted_dma_mem_reserved: restricted_dma_mem_reserved {
+			compatible = "restricted-dma-pool";
+			reg = <0x50000000 0x400000>;
+		};
 	};
 
 	/* ... */
@@ -138,4 +157,9 @@ one for multimedia processing (named multimedia-memory@77000000, 64MiB).
 		memory-region = <&multimedia_reserved>;
 		/* ... */
 	};
+
+	pcie_device: pcie_device@0,0 {
+		memory-region = <&restricted_dma_mem_reserved>;
+		/* ... */
+	};
 };
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:17:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:17:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115155.219631 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUWr-0003Td-Gj; Thu, 22 Apr 2021 08:17:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115155.219631; Thu, 22 Apr 2021 08: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 1lZUWr-0003TV-D9; Thu, 22 Apr 2021 08:17:41 +0000
Received: by outflank-mailman (input) for mailman id 115155;
 Thu, 22 Apr 2021 08:17:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUWq-0003Kb-DZ
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:17:40 +0000
Received: from mail-pg1-x531.google.com (unknown [2607:f8b0:4864:20::531])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4f4cd902-7eac-4807-8e26-29d05627c07f;
 Thu, 22 Apr 2021 08:17:35 +0000 (UTC)
Received: by mail-pg1-x531.google.com with SMTP id y32so32286919pga.11
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:17:35 -0700 (PDT)
Received: from localhost ([2401:fa00:1:10:1a8e:1bde:f79e:c302])
 by smtp.gmail.com with UTF8SMTPSA id mv13sm4264856pjb.29.2021.04.22.01.17.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01: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: 4f4cd902-7eac-4807-8e26-29d05627c07f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=5bO8jBPxmhc0FYqpDIHIi403K+/m2pjsRxNa/hQYLNg=;
        b=l9dZkekI9ynak1cuuz1gZEfzuFdcwaCQxSVspMCgfzWBUCPeiChd4qGtfGgmbrGqK2
         DyiawYfp+L38t6whTuTgSmM/zP9uUBMfUt0vr6RIepKhIQRnK+Qsf9YyFSWIU0Sx1467
         uTVIPlK/thBY3/BeX7BGvXMZOQsxqlxc89h6k=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=5bO8jBPxmhc0FYqpDIHIi403K+/m2pjsRxNa/hQYLNg=;
        b=iwbzCcSPhhJ8VwH6qaqtQ6EUpT2k+neKvF2ssFmYbRFGfglKCcaHxMU9UeuF78Ak8L
         voirmYAUDfgI7pqSSUP4Bi8FmpNDTfxsIZ38hO9EejO+/8M0PIzXyj50b4pvbQWQLE5C
         CEKPx0Xpx1mwtPSMwIKZ+uEInxCVD/me9EuyWew4CpnkvIcEfsV/xaDeGDqaQhCSdVW9
         kO4PKzvTp/zS5wbv+cvQqeUsIN4uTjZAUYRYtDly2+F3sXn7/PkUS8rM0ABb4ZeMbAQi
         omRDuJYeS4NXqcjsueGnUTmf2ZvrGbuAig6kyc5xB5/oLdISSxrff5+dtx2lNASVKD1i
         aHRg==
X-Gm-Message-State: AOAM532bIfXCXWXo74BsAhvCtjie49FHg0VCahxhTvJ9y8JCqjofJVVL
	ofqqYuBjAFYzNJD3yJnyDS+91A==
X-Google-Smtp-Source: ABdhPJzasU+vpN6SUMMsssz/FXWOLp6M4bgGVD/oD8ztZdWuu4tvnvoUWMHmVZ54Ezi6ND2Z2q+dSQ==
X-Received: by 2002:a65:6a4c:: with SMTP id o12mr2325173pgu.371.1619079455178;
        Thu, 22 Apr 2021 01:17:35 -0700 (PDT)
From: Claire Chang <tientzu@chromium.org>
To: Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com,
	jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org,
	paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com,
	xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>,
	mingo@kernel.org,
	bauerman@linux.ibm.com,
	peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>,
	linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	tfiga@chromium.org,
	bskeggs@redhat.com,
	bhelgaas@google.com,
	chris@chris-wilson.co.uk,
	tientzu@chromium.org,
	daniel@ffwll.ch,
	airlied@linux.ie,
	dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com,
	jxgao@google.com,
	joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org,
	maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com,
	nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com
Subject: [PATCH v5 16/16] of: Add plumbing for restricted DMA pool
Date: Thu, 22 Apr 2021 16:15:08 +0800
Message-Id: <20210422081508.3942748-17-tientzu@chromium.org>
X-Mailer: git-send-email 2.31.1.368.gbe11c130af-goog
In-Reply-To: <20210422081508.3942748-1-tientzu@chromium.org>
References: <20210422081508.3942748-1-tientzu@chromium.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

If a device is not behind an IOMMU, we look up the device node and set
up the restricted DMA when the restricted-dma-pool is presented.

Signed-off-by: Claire Chang <tientzu@chromium.org>
---
 drivers/of/address.c    | 25 +++++++++++++++++++++++++
 drivers/of/device.c     |  3 +++
 drivers/of/of_private.h |  5 +++++
 3 files changed, 33 insertions(+)

diff --git a/drivers/of/address.c b/drivers/of/address.c
index 54f221dde267..fff3adfe4986 100644
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
@@ -8,6 +8,7 @@
 #include <linux/logic_pio.h>
 #include <linux/module.h>
 #include <linux/of_address.h>
+#include <linux/of_reserved_mem.h>
 #include <linux/pci.h>
 #include <linux/pci_regs.h>
 #include <linux/sizes.h>
@@ -1109,6 +1110,30 @@ bool of_dma_is_coherent(struct device_node *np)
 }
 EXPORT_SYMBOL_GPL(of_dma_is_coherent);
 
+int of_dma_set_restricted_buffer(struct device *dev)
+{
+	struct device_node *node;
+	int count, i;
+
+	if (!dev->of_node)
+		return 0;
+
+	count = of_property_count_elems_of_size(dev->of_node, "memory-region",
+						sizeof(phandle));
+	for (i = 0; i < count; i++) {
+		node = of_parse_phandle(dev->of_node, "memory-region", i);
+		/* There might be multiple memory regions, but only one
+		 * restriced-dma-pool region is allowed.
+		 */
+		if (of_device_is_compatible(node, "restricted-dma-pool") &&
+		    of_device_is_available(node))
+			return of_reserved_mem_device_init_by_idx(
+				dev, dev->of_node, i);
+	}
+
+	return 0;
+}
+
 /**
  * of_mmio_is_nonposted - Check if device uses non-posted MMIO
  * @np:	device node
diff --git a/drivers/of/device.c b/drivers/of/device.c
index c5a9473a5fb1..d8d865223e51 100644
--- a/drivers/of/device.c
+++ b/drivers/of/device.c
@@ -165,6 +165,9 @@ int of_dma_configure_id(struct device *dev, struct device_node *np,
 
 	arch_setup_dma_ops(dev, dma_start, size, iommu, coherent);
 
+	if (!iommu)
+		return of_dma_set_restricted_buffer(dev);
+
 	return 0;
 }
 EXPORT_SYMBOL_GPL(of_dma_configure_id);
diff --git a/drivers/of/of_private.h b/drivers/of/of_private.h
index d717efbd637d..e9237f5eff48 100644
--- a/drivers/of/of_private.h
+++ b/drivers/of/of_private.h
@@ -163,12 +163,17 @@ struct bus_dma_region;
 #if defined(CONFIG_OF_ADDRESS) && defined(CONFIG_HAS_DMA)
 int of_dma_get_range(struct device_node *np,
 		const struct bus_dma_region **map);
+int of_dma_set_restricted_buffer(struct device *dev);
 #else
 static inline int of_dma_get_range(struct device_node *np,
 		const struct bus_dma_region **map)
 {
 	return -ENODEV;
 }
+static inline int of_dma_get_restricted_buffer(struct device *dev)
+{
+	return -ENODEV;
+}
 #endif
 
 #endif /* _LINUX_OF_PRIVATE_H */
-- 
2.31.1.368.gbe11c130af-goog



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:21:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:21:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115184.219643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUZu-0004cZ-7T; Thu, 22 Apr 2021 08:20:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115184.219643; Thu, 22 Apr 2021 08:20: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 1lZUZu-0004cS-4R; Thu, 22 Apr 2021 08:20:50 +0000
Received: by outflank-mailman (input) for mailman id 115184;
 Thu, 22 Apr 2021 08:20:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PqrU=JT=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZUZs-0004cI-IK
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:20:48 +0000
Received: from mail-qk1-x732.google.com (unknown [2607:f8b0:4864:20::732])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 50fd9557-4f90-4ffb-8a04-f157f2f225b8;
 Thu, 22 Apr 2021 08:20:47 +0000 (UTC)
Received: by mail-qk1-x732.google.com with SMTP id e13so35667318qkl.6
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:20:47 -0700 (PDT)
Received: from mail-qk1-f182.google.com (mail-qk1-f182.google.com.
 [209.85.222.182])
 by smtp.gmail.com with ESMTPSA id r25sm1798154qtm.18.2021.04.22.01.20.46
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 01:20:46 -0700 (PDT)
Received: by mail-qk1-f182.google.com with SMTP id s5so36729991qkj.5
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 01:20: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: 50fd9557-4f90-4ffb-8a04-f157f2f225b8
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=BktECYBH/xHVGxDXNo4Rc6r/8IEdgyWc2mDrQ18gIJM=;
        b=BC2Z7dWmz0+RdT/XQKgh1K4ZkXJWhtVP5f0aeqau16cKa9TxEulrDttNm/OJj6Mh7t
         UyOvttg8zei2cv/nltxGkE0p3bcuSz0WfMCJrDJbCm50bzbAxl15NHtEWBdONDfWW0Bm
         8ytbqnnr0G3b0l9nz1ILNC8uPEz+czqvEKbV4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=BktECYBH/xHVGxDXNo4Rc6r/8IEdgyWc2mDrQ18gIJM=;
        b=J5KA5OO33ajOwKgnVWyODa1KTuJRiM/L71+d85AWlMurGS+J7IKV2lXTtnYYfyT2ur
         ylpSrplEWl4YEIgmCvoEVTeGExbQDoAgP72T7tqXleirmsvWUa5hl3bpiC0VpzyZ99RI
         8VuqTAgohaTBk1dCUfrw9BoiTsAWtJY80cShyOXB4yICtCbtKaKItwtrGF7fCte9hfjx
         hAuB4eWiqHZwcIse1sGsqQFBVr+KduIr1EKiLfn+jYA0N8sMOOX0YttovNZrGHHygzEJ
         /8mfU4w5PUVkpNz8ZxqyBSv3m5HpPCJIOM1/CwfksnfkcZr8kE4dk0Io0906TSsWoFOt
         lJjA==
X-Gm-Message-State: AOAM533x2kIKrh9yL9tG7HTsPhblzwrEM3q5H2wCQQewVoeiAXkZB5fK
	2i7VbT0GTff4MMWw/KnccmSq+g4UTa+rNQ==
X-Google-Smtp-Source: ABdhPJwurdcPP2anxwqNwg/agoyPcjhbl8UGY/4kA3kmabbR6mtMBLDl7KbyCyDN9oTusIPhyazV/A==
X-Received: by 2002:a37:658a:: with SMTP id z132mr2456099qkb.28.1619079647064;
        Thu, 22 Apr 2021 01:20:47 -0700 (PDT)
X-Received: by 2002:a05:6638:34a0:: with SMTP id t32mr2134909jal.10.1619079635295;
 Thu, 22 Apr 2021 01:20:35 -0700 (PDT)
MIME-Version: 1.0
References: <20210209062131.2300005-1-tientzu@chromium.org>
In-Reply-To: <20210209062131.2300005-1-tientzu@chromium.org>
From: Claire Chang <tientzu@chromium.org>
Date: Thu, 22 Apr 2021 16:20:24 +0800
X-Gmail-Original-Message-ID: <CALiNf29cMK_j2NF3sbzMJLsss0v8fcvWMkQULHViQVebmdmTsQ@mail.gmail.com>
Message-ID: <CALiNf29cMK_j2NF3sbzMJLsss0v8fcvWMkQULHViQVebmdmTsQ@mail.gmail.com>
Subject: Re: [PATCH v4 00/14] Restricted DMA
To: Rob Herring <robh+dt@kernel.org>, mpe@ellerman.id.au, Joerg Roedel <joro@8bytes.org>, 
	Will Deacon <will@kernel.org>, Frank Rowand <frowand.list@gmail.com>, 
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, boris.ostrovsky@oracle.com, jgross@suse.com, 
	Christoph Hellwig <hch@lst.de>, Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org, paulus@samba.org, 
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>, sstabellini@kernel.org, 
	Robin Murphy <robin.murphy@arm.com>, grant.likely@arm.com, xypron.glpk@gmx.de, 
	Thierry Reding <treding@nvidia.com>, mingo@kernel.org, bauerman@linux.ibm.com, 
	peterz@infradead.org, Greg KH <gregkh@linuxfoundation.org>, 
	Saravana Kannan <saravanak@google.com>, "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>, 
	heikki.krogerus@linux.intel.com, 
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>, Randy Dunlap <rdunlap@infradead.org>, 
	Dan Williams <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>, 
	linux-devicetree <devicetree@vger.kernel.org>, lkml <linux-kernel@vger.kernel.org>, 
	linuxppc-dev@lists.ozlabs.org, xen-devel@lists.xenproject.org, 
	Nicolas Boichat <drinkcat@chromium.org>, Jim Quinlan <james.quinlan@broadcom.com>
Content-Type: text/plain; charset="UTF-8"

v5 here: https://lore.kernel.org/patchwork/cover/1416899/ to rebase
onto Christoph's swiotlb cleanups.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:23:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:23:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115190.219655 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUbz-0004jo-Jw; Thu, 22 Apr 2021 08:22:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115190.219655; Thu, 22 Apr 2021 08:22: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 1lZUbz-0004jh-Gm; Thu, 22 Apr 2021 08:22:59 +0000
Received: by outflank-mailman (input) for mailman id 115190;
 Thu, 22 Apr 2021 08:22:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZUbx-0004jc-W0
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:22:58 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 86d2ed67-4ac4-4421-aaf7-5ebd91c4eb7d;
 Thu, 22 Apr 2021 08:22: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: 86d2ed67-4ac4-4421-aaf7-5ebd91c4eb7d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619079776;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Y4lNxyVgsMVbaIucCjAbcoKGyiLMLQPTMdVvUgYNA/Y=;
  b=RMK4NeeP4fmkyeAIGl+DP99FUeFPoarbY5UNB3b2/MdJY0FnIMllA6Y+
   NUyiHdszBq5nyQZ3aCyoYi1bedLfDGvOSZRgGq1wOiSBi9Y06ulOheWcH
   X0/nsZzIU85kqlYBzWh6P1BbEMxYSgltcAA29tLJ4VgTbdovmfKeB6VJ3
   E=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 1/LkR1rAdFP0ghiLJ7lgKEFK0gkb3U82qFJBRnv3Cpwa4Vpur3aEY9olnfooT5eQp+e1OdfxlT
 xZ2Pb3lcKIvDYyHmuhqrdzEShp/t0CyWw0A3KqwNOQ3FxTlTHuyb932YS0ImImRGVdRvT63FyO
 IqOTbdiqMlcjBrgjfidPYh1xU3b5fj4nerWB+a9B/GD4crXpml2ntGm6kuelSrlpQOc3MRiFjS
 Q/BT1r3erYtcMdo6f6hkzjXdQEliC7GGmxI30DPqhCYlaYY5WkZncEZXJEKG6iVJd7j0cyAmGt
 SJU=
X-SBRS: 5.2
X-MesageID: 41986036
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fZdtrK5+i0QBd+PYvwPXwTuBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3m0z/5IyKMWOqqvWxSjhXuwIOhZnO3f6hDDOwm7zO5S0q
 98b7NzYeebMXFWhdv3iTPWL/8O29+CmZrHuc7/yDNXQRhue+Vc6W5Ce2SmO2lXYCUDOpYjDp
 qb4aN81l2dUFAadN6yCHVAf8WrnaypqLvcbRQLBwEq5WC15FvF1JfAHxeVxRsYWT9UqI1SlF
 TtqADl+r6l98iy1x607QTuxq5Lk9jswMYrPr3ptuEpLFzX6zqAVcBadJCp+Bs0p+yu71hCqq
 iynz4Qe/5dxlmUUmW8oR7G0xTt3jA0+xbZuCGlqEqmm+PVbnYXDNdAmJJ4f3LimjsdleA56o
 1n9Sa4sIdaFhzJliiV3am5azha0nCajFBntMx7tQ0nbaIuLIV/gKZawWZuVLAHJy7+4JBPKp
 gSMOjsoMx4XHnfU2rUpQBUsaSRd0V2JDiqaG4YtPeY1jBH9UoJs3cw9YgkknAM+IlVceg+28
 30dqBhlLR5RsQLd65KBOAYXcutCmDWKCi8Sl6vHQ==
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="41986036"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lg9WDmQalOeFAM/a5ZPJBKKJFyCVl7N5JMYKQ2+TaGqsCfphMmLMvIHjhDGnoF2MzU4ZQMCAqA0TLI2bSRJA+GishIUJVKoIl63ivvWSMsjz+j2bRS/wc9r1vuCMIa3Mn25dztp5/+quKAod4/zxuekK17t3M8noZnNbcxEIPXrSFc35o06UXXACEgqFk6drfytqpc1MAPomuYTzphrymqz1bQuErEmyLlY9HZVVCp6W+X1p5NwZ/bQPSddj2KN5sK45wBspRu75rLwTD45OevSOwUqdY4iAoGoexQvyzrGZxoDkzJI+E7PX/uibqE3rdK3T3ab5fvdcEVDBbCc4Og==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rsYFj6pL/DkA8o5Fac6fLwB9XME9+iCdQ5VY7V6Nmuk=;
 b=M6qpfb79Ux+nakg2IhQxpuFLBskfNCdNOdcJF+XV2IfpI1rm+Ee11tu+R2xlzij4jY1KAkMcSEukQvkB1hVPIFOgtXjD1yL5XuPl8Bs9SV8Du2s+aEYVBf5pIubGik1Xcg8wbnTzuQc+pVTEeDp8KHKIJ4qpYRrsdCr6Fdyma+VoP86biTzg9P9jDf1icvmqjlh/URQkEZxXM0TufyX6kP4GKM+VSmj1RhrSxqiVkzKdTU2Tu/6RcobhogmeTT2+dtIoNt/xxhWBhjS9fd2Wo0Wn/zTkv1nVce31hgnlKv3KeCPZBXJ/t/XoJG7DPLFQCiNgrMZ0C12T3/XF6fS6yw==
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=rsYFj6pL/DkA8o5Fac6fLwB9XME9+iCdQ5VY7V6Nmuk=;
 b=ttjw1WNF4KVj6YDzPq6Tp05MSs7WERWesKIa2Oiz/80V3PBjP4w4k/zA5Wjef/+tEFbQ4wgI+SUiLB6FYYTDTL0QpF5lDTWZpXtrgnRP5xErcFaWZKqe4Os2KMyRieU+IdTDWlKeDb89KE/MBwWjFSsBWKDwFTujWMddsftRUjY=
Date: Thu, 22 Apr 2021 10:22:37 +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>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 14/21] libs/guest: introduce helper to check cpu
 policy compatibility
Message-ID: <YIEyTZ5E1StTMIBk@Air-de-Roger>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-15-roger.pau@citrix.com>
 <f20144fb-9ed5-1819-1d00-13506ba2178e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <f20144fb-9ed5-1819-1d00-13506ba2178e@suse.com>
X-ClientProxiedBy: MR2P264CA0010.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::22) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 9fc9b30a-29b9-4ae8-0291-08d90567cc94
X-MS-TrafficTypeDiagnostic: DM4PR03MB5968:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB596858664B37B54B624E56C98F469@DM4PR03MB5968.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:605;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: E6CLknTNbzH/qAAIJ2ppuW+QZ/HFwEbIl2wF8mHuVfFxPOEqRXT9PDCnGzyS41rOUS6tEV4TV1+fxJPWp55r1ziNYPbjH60IwKnJVK18wzbjuf8gYrUquXWQ2kbR/RLJYktrf/CiMRdZArFdXsfuR+abWbrqlV1x5tkhFkzOHtXGwK4aDrGtP9GCZKlb51YcgweoI0j11Zr+GRbdfPIXHhHJvaE5OT1nx2ddT+BEYLujVIKkRerO6QdxosEoneVdG6ojFzFmqCuZ6NeKbyOKA2QQqkvR6Gr+FD33Bzv2VQrOcjEqng/7qHmriDbyC29F3ZCHUs5G7ML/JqDK1wkePwfnBjVJGshbQ+TgS+Xojq6gSVWbED4egTIZ0J5jB4cLgRul8NYd/db9QB++lIizK1SMvHJCwKcxWMpiJmItpIpVRfd77HZROS0SfYF+D8dea40Vmu3tu+2WitJNCPGQCpo7FxUTfigPYxVdDSsOirvfJS9Kk/hMuPiquQUON3raoVod7O2SIyC3jZWPi4P+enyW8CI1GCG3HsCP/ocU7Ue5CEcsotaCA/kUeM5GGgMW/BvbcR76RC+l+eoCNQjcdtmhLVdV79PQYMjcYBeJD48=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(366004)(39860400002)(376002)(396003)(136003)(8676002)(8936002)(33716001)(53546011)(54906003)(2906002)(6496006)(85182001)(9686003)(6486002)(38100700002)(316002)(478600001)(26005)(186003)(4326008)(956004)(16526019)(86362001)(66556008)(5660300002)(66476007)(6666004)(66946007)(83380400001)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?L2Rqd2ZqMklGK0N0c1hPZi8rU2w2R3VVOTRUVXlrSVoxYUw1aDBTWWZQaVJi?=
 =?utf-8?B?eUtnMTVUazI0WXh4bEg3S05IbHFRSjJFelZLSU1NcmRsSzJaN1lzdWdkWW9M?=
 =?utf-8?B?ZEdKcFBLdnlMQVBZVVBKMzExYjhrb3JrRHpQenJxYWxTL3pON1MrNVFMeGp0?=
 =?utf-8?B?bERCU1JJcnRMcVBxeGw0dEZxN0V6dWNra0J0cGFvdWo5cFpobUpwTEd4cFFH?=
 =?utf-8?B?cDFNaWVPTTZyRDVTOXpLZThiRGxDUmdEYklFeDd2Uy9JVGdVVHRrRU9xcVd1?=
 =?utf-8?B?VmY2eGpUcWlTRnZNMlJxd0g1Q2NtV2RTS1VlWGJCMnJQcjF5YTZuNFdtczZ2?=
 =?utf-8?B?RGlIdDhBOTJuekw0aTJxUy85QXhMWDZpU2traHhmVlBEL21ZZk8yTUd6Vi94?=
 =?utf-8?B?cWNRZEt5SzJUNndOREhtNzhVUlNsVzVSb2I3R0NjM2RCbURKWXZpRklEOXN1?=
 =?utf-8?B?QUJ2aFNRTzlST0NlT1dqM3RWanFCTWd5UkxIcFJDK3N6dDlreUhaRmxrUXZ6?=
 =?utf-8?B?WHVmYmQ0T2hVWlhkb3ErQVZMMUJCbzdkZWJGclg3UndzeGJUWFBtd0szWE83?=
 =?utf-8?B?YzlGL0lqcGtDZWFaVkRLd1JCSUY2bThkYUpJclVKblRKUVNIUmJYNXdWeUdo?=
 =?utf-8?B?UzdNNlhrd2xvTTI3UEZmMUt1VXRjcllyQURHQjBmZ0tOb2drRFhlRHNIY2p3?=
 =?utf-8?B?TXJnN3g3Q1V1TUJzcHdtMTFPcFFhNGZ5SXppaFVOek1heEovaTBRblJOeHMw?=
 =?utf-8?B?cUU3V0ZjN2lUUlcvbUg3T2Y1RTZjZm5tdk5QanhZbGhHQ2NPalIzQ2ZHTytx?=
 =?utf-8?B?SDlSZDlIL0h2MUd6dzZmbmJpbzVuMkxpdDRoekx0MEU4SzFadmY2OHUwL2Zu?=
 =?utf-8?B?UlBlVDM3RENqN1Vqd3NMb1liMFN6ZzhKR0hCcUc5M3VsaXR1ZE9pSHVuMkR5?=
 =?utf-8?B?Z2Fibnl1emZmd2Jpa1ZRQksreEJ2ZUdrQi9GWmJ6V0IzYmI4NjVnY2VRQ2NB?=
 =?utf-8?B?UnJWOXpRaXZoK0tTMkdoR24xMTZlakt6UE1oL2pCd1BRKzVpSlBmMmRrYjFH?=
 =?utf-8?B?dmRTVkVxRFloT3pGNDBTajY5RjgxQ2hpZ2VmdXl0Mlp3Q0pQRnUvQVJIVjEz?=
 =?utf-8?B?WXZFbkpPMlE0anhDTTRtQis2SXRWZk9ab2pCMUo2bU5YRUt2dmt2bHdOaEN2?=
 =?utf-8?B?R0JJYnFTRnIzMG9taHVqWWtvQm1jY1RNZWEvYjlVS2gxSDZncjlkL1NtN3V4?=
 =?utf-8?B?NTNTTjIzT1Y5U3lsTWJkd3AzYXZQUXN3ZjlxMEZBaVdRZzNYRDhMbU9qbWdI?=
 =?utf-8?B?RUp2NlN5UTNSaWw4dnpHcE9NbVg4N0tyUnBpaVVHanNIT3p5dWxUM09qaWNi?=
 =?utf-8?B?ZU1oMjMrSjA0YXROeFVWL0pBVVJDS1VoWW9mNFQ2a0xER1RiOGhPUko3L0tD?=
 =?utf-8?B?WWhCWk5RbE1raTUrR3hPYnVzMGdJWmd4NU1vN2tPVWxrTHZ1Uk9YZVJxWm5z?=
 =?utf-8?B?YWxNSDVzenFtMk1JWHJGSkRPWnRuL2J1SWdXbGZScVZ5VjVFTzJRMjRKNmk0?=
 =?utf-8?B?QlVpUDAzV2xOY3Y0bUtJbTltQjRybm1iSlpvU3RrT3FOTGUrQjF2U3BIeEZU?=
 =?utf-8?B?YjI4eFJRSFg3OFJwcWZzNlEvRzRHZ0RtRVBlSjdCV3ZPK0VZZVNjT25WRzha?=
 =?utf-8?B?R1BRVG9yMXordHpYRThqSU5NdzFBMjlYSVUyL2NXMS9lN0lna01EL1A3L3p1?=
 =?utf-8?Q?snthXM55zh0h5VliPAa9leAX3CknWlYq49EmQ8F?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 9fc9b30a-29b9-4ae8-0291-08d90567cc94
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 08:22:42.3390
 (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: dcToHDoxM1KzGYwXbOt3oA46IlwgLbC0OlAF9oTftTTEP2ezNskP4fEzlrjftp0YlA2sjGrZx5V9zcrr4SBjAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5968
X-OriginatorOrg: citrix.com

On Wed, Apr 14, 2021 at 03:36:54PM +0200, Jan Beulich wrote:
> On 13.04.2021 16:01, Roger Pau Monne wrote:
> > --- a/tools/libs/guest/xg_cpuid_x86.c
> > +++ b/tools/libs/guest/xg_cpuid_x86.c
> > @@ -925,3 +925,22 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
> >  
> >      return rc;
> >  }
> > +
> > +bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
> > +                                 const xc_cpu_policy_t guest)
> > +{
> > +    struct cpu_policy_errors err = INIT_CPU_POLICY_ERRORS;
> > +    struct cpu_policy h = { &host->cpuid, &host->msr };
> > +    struct cpu_policy g = { &guest->cpuid, &guest->msr };
> > +    int rc = x86_cpu_policies_are_compatible(&h, &g, &err);
> > +
> > +    if ( !rc )
> > +        return true;
> > +
> > +    if ( err.leaf != -1 )
> > +        ERROR("Leaf %#x subleaf %#x is not compatible", err.leaf, err.subleaf);
> > +    if ( err.msr != -1 )
> > +        ERROR("MSR index %#x is not compatible", err.msr);
> 
> Personally I'm against making assumptions like these ones about what
> (in this case) INIT_CPU_POLICY_ERRORS actually expands to (i.e. three
> times -1). I can see how alternatives to this are quickly going to
> get ugly, so I'll leave it to others to judge.

Would you like me to define a separate POLICY_ERROR? ie:

#define INIT_CPU_POLICY_ERROR -1
#define INIT_CPU_POLICY_ERRORS { INIT_CPU_POLICY_ERROR, \
                                 INIT_CPU_POLICY_ERROR, \
                                 INIT_CPU_POLICY_ERROR }

We already have a bunch of open coded -1 checks anyway, but might
prevent new ones from appearing.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:32:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:32:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115196.219667 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZUki-0005me-FZ; Thu, 22 Apr 2021 08:32:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115196.219667; Thu, 22 Apr 2021 08: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 1lZUki-0005mX-C9; Thu, 22 Apr 2021 08:32:00 +0000
Received: by outflank-mailman (input) for mailman id 115196;
 Thu, 22 Apr 2021 08:31:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZUkg-0005mS-TH
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:31:58 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 664c74df-573b-489b-bd76-7ebe9fee989e;
 Thu, 22 Apr 2021 08:31:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3D383AD80;
 Thu, 22 Apr 2021 08:31:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 664c74df-573b-489b-bd76-7ebe9fee989e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619080317; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Itmj1dp0jX2qjPeM0M8JlSoAYgWKoD9M1ycMH63OQYY=;
	b=F37WVmwdpCK+X/rQmCbQWirxjRYK9Ed2TOa8K/JvUovkrHiGQKuUHDTqL7asM0CnnkHSdn
	uUyqCgdw3Gg9brY1auKlhPg/2IP1zzEwyGNRcytvGz+AquRqcKqZzyM5oA/Q+UprnhUu65
	zwUs3AMkNPch8cpw5EM08qTUmnjM8Hs=
Subject: Re: [PATCH v2 14/21] libs/guest: introduce helper to check cpu policy
 compatibility
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-15-roger.pau@citrix.com>
 <f20144fb-9ed5-1819-1d00-13506ba2178e@suse.com>
 <YIEyTZ5E1StTMIBk@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <9349102e-7019-c6c3-3830-6374b47f314b@suse.com>
Date: Thu, 22 Apr 2021 10:31:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIEyTZ5E1StTMIBk@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 10:22, Roger Pau Monné wrote:
> On Wed, Apr 14, 2021 at 03:36:54PM +0200, Jan Beulich wrote:
>> On 13.04.2021 16:01, Roger Pau Monne wrote:
>>> --- a/tools/libs/guest/xg_cpuid_x86.c
>>> +++ b/tools/libs/guest/xg_cpuid_x86.c
>>> @@ -925,3 +925,22 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
>>>  
>>>      return rc;
>>>  }
>>> +
>>> +bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
>>> +                                 const xc_cpu_policy_t guest)
>>> +{
>>> +    struct cpu_policy_errors err = INIT_CPU_POLICY_ERRORS;
>>> +    struct cpu_policy h = { &host->cpuid, &host->msr };
>>> +    struct cpu_policy g = { &guest->cpuid, &guest->msr };
>>> +    int rc = x86_cpu_policies_are_compatible(&h, &g, &err);
>>> +
>>> +    if ( !rc )
>>> +        return true;
>>> +
>>> +    if ( err.leaf != -1 )
>>> +        ERROR("Leaf %#x subleaf %#x is not compatible", err.leaf, err.subleaf);
>>> +    if ( err.msr != -1 )
>>> +        ERROR("MSR index %#x is not compatible", err.msr);
>>
>> Personally I'm against making assumptions like these ones about what
>> (in this case) INIT_CPU_POLICY_ERRORS actually expands to (i.e. three
>> times -1). I can see how alternatives to this are quickly going to
>> get ugly, so I'll leave it to others to judge.
> 
> Would you like me to define a separate POLICY_ERROR? ie:
> 
> #define INIT_CPU_POLICY_ERROR -1
> #define INIT_CPU_POLICY_ERRORS { INIT_CPU_POLICY_ERROR, \
>                                  INIT_CPU_POLICY_ERROR, \
>                                  INIT_CPU_POLICY_ERROR }

I would prefer this; I'm not sure (nit: properly parenthesized)
-1 is  the value to use though, considering the fields are unsigned.
I wonder what Andrew thinks, as he did introduce all of this.

> We already have a bunch of open coded -1 checks anyway, but might
> prevent new ones from appearing.

Indeed.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 08:53:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 08:53:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115201.219679 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZV5A-0007pw-7f; Thu, 22 Apr 2021 08:53:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115201.219679; Thu, 22 Apr 2021 08:53:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZV5A-0007pp-4E; Thu, 22 Apr 2021 08:53:08 +0000
Received: by outflank-mailman (input) for mailman id 115201;
 Thu, 22 Apr 2021 08:53:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZV59-0007pk-Fn
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 08:53:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0fd0ef89-5c54-4332-94ac-d439acb5be0d;
 Thu, 22 Apr 2021 08:53:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8DC5DB04F;
 Thu, 22 Apr 2021 08:53:05 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0fd0ef89-5c54-4332-94ac-d439acb5be0d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619081585; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=vvJVZKIQ7nzqthQNf7Gjf4K0aXrUNPHb1yrWcFsulSo=;
	b=IaX3+o/Luox0mL1UZX83zixbdOI9yCxzgUWjdrXKmvH4DgnZUms+q8Js82HY5fAQK0vftq
	oAaMuZXXPPYIvR/AKH4UNwUT+MjXxD15qIh7TdIvjcCD4iXKrXT9u1YQPcxY9ivpJDhNnN
	uy3ximAQDTa+pFW83gq93Hr563QT59w=
Subject: Re: Ping: [PATCH v5 0/6] evtchn: (not so) recent XSAs follow-on
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <George.Dunlap@eu.citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <306e62e8-9070-2db9-c959-858465c50c1d@suse.com>
 <d29fa89b-ea0a-bdbd-04c9-02eff0854d47@suse.com>
 <40e90456-90dc-7932-68ec-6f4d0941999f@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0e19fb4c-4a87-ff80-fa98-fab623d6704f@suse.com>
Date: Thu, 22 Apr 2021 10:53:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <40e90456-90dc-7932-68ec-6f4d0941999f@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 17:56, Julien Grall wrote:
> 
> 
> On 21/04/2021 16:23, Jan Beulich wrote:
>> On 27.01.2021 09:13, Jan Beulich wrote:
>>> These are grouped into a series largely because of their origin,
>>> not so much because there are (heavy) dependencies among them.
>>> The main change from v4 is the dropping of the two patches trying
>>> to do away with the double event lock acquires in interdomain
>>> channel handling. See also the individual patches.
>>>
>>> 1: use per-channel lock where possible
>>> 2: convert domain event lock to an r/w one
>>> 3: slightly defer lock acquire where possible
>>> 4: add helper for port_is_valid() + evtchn_from_port()
>>> 5: type adjustments
>>> 6: drop acquiring of per-channel lock from send_guest_{global,vcpu}_virq()
>>
>> Only patch 4 here has got an ack so far - may I ask for clear feedback
>> as to at least some of these being acceptable (I can see the last one
>> being controversial, and if this was the only one left I probably
>> wouldn't even ping, despite thinking that it helps reduce unecessary
>> overhead).
> 
> I left feedback for the series one the previous version (see [1]). It 
> would have been nice is if it was mentionned somewhere as this is still 
> unresolved.

I will admit I forgot about the controversy on patch 1. I did, however,
reply to your concerns. What didn't happen is the feedback from others
that you did ask for.

And of course there are 4 more patches here (one of them having an ack,
yes) which could do with feedback. I'm certainly willing, where possible,
to further re-order the series such that controversial changes are at its
end.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 09:19:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 09:19:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115207.219691 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZVUd-0001mG-Bh; Thu, 22 Apr 2021 09:19:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115207.219691; Thu, 22 Apr 2021 09: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 1lZVUd-0001m9-8g; Thu, 22 Apr 2021 09:19:27 +0000
Received: by outflank-mailman (input) for mailman id 115207;
 Thu, 22 Apr 2021 09:19:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZVUb-0001m4-Qi
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 09:19:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0eccb9d2-e0ff-4d07-ae3a-3baa08abef6a;
 Thu, 22 Apr 2021 09:19:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 80329B05D;
 Thu, 22 Apr 2021 09:19: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: 0eccb9d2-e0ff-4d07-ae3a-3baa08abef6a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619083162; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mjZIW8F7ShEhu7kwALitgVftcYme7G9NkWxXavTB1QM=;
	b=OuzDnZAdP2q7q69vb9ff++Iz5f2Ce4gnfmfX8nfjlygJP9tA+lCQdOdF3jwpmLdtwnUNUV
	XIsNshAIHNe8FgdvXyNGoG2b0ypuxk6TdDHmILkMJSkUfPL1S2fpYRFHUk6g0ijDURhWHy
	+KGWJBamvIf6Qfs9unHeOiy63y7qETY=
Subject: Re: [PATCH v3] evtchn/fifo: don't enforce higher than necessary
 alignment
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <George.Dunlap@eu.citrix.com>,
 Ian Jackson <ian.jackson@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2a08aa31-fdbf-89ee-cd49-813f818b709a@suse.com>
 <e6ce03a5-cfec-42ea-91c4-b51849e2f299@suse.com>
 <69766ecb-d234-eebb-9b31-1533389a502e@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0377e61a-3813-0a9e-f724-418383c01050@suse.com>
Date: Thu, 22 Apr 2021 11:19:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <69766ecb-d234-eebb-9b31-1533389a502e@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 21:52, Julien Grall wrote:
> Hi,
> 
> On 21/04/2021 15:36, Jan Beulich wrote:
>> Neither the code nor the original commit provide any justification for
>> the need to 8-byte align the struct in all cases. Enforce just as much
>> alignment as the structure actually needs - 4 bytes - by using alignof()
>> instead of a literal number.
> 
> I had another fresh look today at this patch. The 32-bit padding is 
> right after the field 'ready'.
> 
> I can't for sure tell how the second half is going to ever be used and how.
> 
> However, one possibility would be to extend the field 'ready' to 64-bit. 
> With the current code, we could easily make a single 64-bit access 
> without having to know whether the guest is able to interpret the top half.

I don't think extending field sizes is generally to be considered ABI-
compatible. I also don't think we can re-use the field at all, as I
couldn't find any checking of it being zero (input) or it getting set
to zero (output). struct evtchn_init_control, which in principle could
be a way to convey respective controlling flags, similarly has no room
for extension, as its _pad[] also doesn't look to get checked anywhere.

Jan

> With your approach, we may need to have different path depending on the 
> padding and ensure the new extension cannot be enabled if the padding is 
> 4-byte. Otherwise, the atomicity would be broken.
> 
>> While relaxation of the requirements is intended here, the primary goal
>> is to simply get rid of the hard coded number as well its lack of
>> connection to the structure that is is meant to apply to.
> 
> Based on what I wrote above, I think the relaxation should not be done 
> to give us more flexibility about possible extension to the structure.
> 
> Although, I would be worth documenting the reasoning in the code.
> 
> Cheers,
> 



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 09:19:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 09:19:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115210.219703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZVUt-0001rI-NS; Thu, 22 Apr 2021 09:19:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115210.219703; Thu, 22 Apr 2021 09: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 1lZVUt-0001rB-KG; Thu, 22 Apr 2021 09:19:43 +0000
Received: by outflank-mailman (input) for mailman id 115210;
 Thu, 22 Apr 2021 09: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 1lZVUs-0001qp-Ig; Thu, 22 Apr 2021 09: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 1lZVUs-0002bz-A4; Thu, 22 Apr 2021 09: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 1lZVUr-0001t9-TI; Thu, 22 Apr 2021 09:19:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZVUr-0007oV-Sq; Thu, 22 Apr 2021 09: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:Message-Id:Subject:To;
	bh=vXWLGL9Jz6Ikqs3XQC3Aj5nsSAnk6qDTlInqPJ/HQxQ=; b=nZoqTtBmCJape1je7l1yCTXfWx
	eDpDMyLCmWLEeHgAn5c3546gMDR8bJBpOWjMKgvFPYGxSIoc27JWaAXxLIhO0eT3RQmajBU0lMfQw
	QWX3lYgDSdKrebDa4ijER4GaE+AQo7vXTS2tyz6qOmL2Wm/ZPJCwd0H9bLGJzNTu2wLw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-i386-xl-qemuu-debianhvm-i386-xsm
Message-Id: <E1lZVUr-0007oV-Sq@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 09:19:41 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-i386-xl-qemuu-debianhvm-i386-xsm
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161372/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-i386-xsm.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-i386-xsm.guest-saverestore --summary-out=tmp/161372.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-xl-qemuu-debianhvm-i386-xsm guest-saverestore
Searching for failure / basis pass:
 161334 fail [host=chardonnay0] / 160125 [host=fiano1] 160119 [host=pinot1] 160113 [host=albana1] 160104 [host=albana0] 160097 [host=huxelrebe1] 160091 [host=elbling0] 160082 ok.
Failure / basis pass flights: 161334 / 160082
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0bbc20727598421c4e47d46b982246217df8c6bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bac9b87bd208e1d5adde7d7ba2634f957c22012c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b5b93627dd1c398a90b832af765b4720fc71814e
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6157b0e19721aadb4c7fdcfe57b2924af6144b14 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-0bbc20727598421c4e47d46b982246217df8c6bc git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#6157b0e19721aadb4c7fdcfe57b2924af6144b14-bac9b87bd208e1d5adde7d7ba2634f957c22012c git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#14b95b3b8546db201e7efd0636ae0e215fae98f3-b5b93627dd1c398a90b832af765b4720fc71814e
Loaded 35038 nodes in revision graph
Searching for test results:
 160082 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6157b0e19721aadb4c7fdcfe57b2924af6144b14 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160088 []
 160091 [host=elbling0]
 160097 [host=huxelrebe1]
 160104 [host=albana0]
 160113 [host=albana1]
 160119 [host=pinot1]
 160125 [host=fiano1]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail irrelevant
 160748 fail irrelevant
 160779 fail irrelevant
 160801 fail irrelevant
 160827 fail irrelevant
 160851 fail irrelevant
 160883 fail irrelevant
 160916 fail irrelevant
 160980 fail irrelevant
 161050 fail irrelevant
 161088 fail irrelevant
 161121 fail irrelevant
 161147 fail irrelevant
 161171 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2ad22420a710dc07e3b644f91a5b55c09c39ecf3 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161191 fail irrelevant
 161210 fail irrelevant
 161232 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b53173e7cdafb7a318a239d557478fd73734a86a
 161256 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161276 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161290 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161319 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6157b0e19721aadb4c7fdcfe57b2924af6144b14 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161325 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161329 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161308 fail irrelevant
 161333 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161336 fail irrelevant
 161337 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161339 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161341 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161342 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 fc4a62f65cbd2d5d2c247ed4fbf64a05e6485859 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161344 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161346 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161347 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 283d845c9164f57f5dba020a4783bb290493802f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161349 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 a752dd07466c4f0bda5c14d001b096e778a44ad5 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e31b3a5c34c6e5be7ef60773e607f189eaa15f3 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161351 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 db492ebb91059b818d5b5ea5975d227e5c3c9bcc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161353 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 313d86c956d4599054a9dcd524668f67797d317a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 56b89f455894e4628ad7994fe5dd348145d1a9c5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161354 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161355 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 146f720c55637410062041f68dc908645cd18aaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161356 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ad1324e044240ae9fcf67e4c215481b7a35591b9 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161357 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 445a5b4087567bf4d4ce76d394adf78d9d5c88a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161358 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161361 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161334 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0bbc20727598421c4e47d46b982246217df8c6bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bac9b87bd208e1d5adde7d7ba2634f957c22012c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b5b93627dd1c398a90b832af765b4720fc71814e
 161362 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161365 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6157b0e19721aadb4c7fdcfe57b2924af6144b14 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161366 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 0bbc20727598421c4e47d46b982246217df8c6bc 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bac9b87bd208e1d5adde7d7ba2634f957c22012c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b5b93627dd1c398a90b832af765b4720fc71814e
 161367 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161370 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161372 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160082 (pass), for basis pass
 Result found: flight 161334 (fail), for basis failure (at ancestor ~14)
 Repro found: flight 161365 (pass), for basis pass
 Repro found: flight 161366 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 161358 (pass), for last pass
 Result found: flight 161361 (fail), for first failure
 Repro found: flight 161362 (pass), for last pass
 Repro found: flight 161367 (fail), for first failure
 Repro found: flight 161370 (pass), for last pass
 Repro found: flight 161372 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161372/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.911892 to fit
pnmtopng: 226 colors found
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-debianhvm-i386-xsm.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
161372: tolerable ALL FAIL

flight 161372 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/161372/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail baseline untested


jobs:
 test-amd64-i386-xl-qemuu-debianhvm-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 Thu Apr 22 09:37:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 09:37:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115223.219721 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZVlR-0003qY-A1; Thu, 22 Apr 2021 09:36:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115223.219721; Thu, 22 Apr 2021 09:36: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 1lZVlR-0003qR-6k; Thu, 22 Apr 2021 09:36:49 +0000
Received: by outflank-mailman (input) for mailman id 115223;
 Thu, 22 Apr 2021 09:36: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 1lZVlQ-0003qJ-02; Thu, 22 Apr 2021 09:36: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 1lZVlP-0002tX-Nv; Thu, 22 Apr 2021 09:36: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 1lZVlP-00033p-HT; Thu, 22 Apr 2021 09:36:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZVlP-0004Yw-Gr; Thu, 22 Apr 2021 09:36: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=kpH1j3RVMOLsf4TUzL/qtOgbtAumpRIySgxUnvclzkQ=; b=vcKmn4wxQVfIkEP+amTk08NFEP
	TBJSRxMV54CvyiS/El/k0Gpj4KfGpCAW1T48l2X6pb5L39P71d2TMjzYFa2g4+cry1ncAb7buA55o
	8zryl5wixjeicQFBCcsVDPh2HfZXm22wMP/rDG36HdtHXLxbvFdE3Pxai3c89mnjUJwE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161352-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 161352: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-multivcpu:xen-boot:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start:fail:allowable
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-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-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-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-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt: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-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-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-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-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-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-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-libvirt-xsm: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-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a7eb81c1d11ae311c25db88c25a7d5228fe5680a
X-Osstest-Versions-That:
    linux=ab3bed80f9d34641966eaa329fc7b296a21dab07
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 09:36:47 +0000

flight 161352 linux-5.4 real [real]
flight 161373 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161352/
http://logs.test-lab.xenproject.org/osstest/logs/161373/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-multivcpu  8 xen-boot           fail pass in 161373-retest

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds     14 guest-start              fail REGR. vs. 161201

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 161373 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 161373 never pass
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161201
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161201
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161201
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161201
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161201
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161201
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161201
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161201
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161201
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161201
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161201
 test-amd64-i386-xl-pvshim    14 guest-start                  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-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a7eb81c1d11ae311c25db88c25a7d5228fe5680a
baseline version:
 linux                ab3bed80f9d34641966eaa329fc7b296a21dab07

Last test of basis   161201  2021-04-16 10:12:43 Z    5 days
Testing same since   161352  2021-04-21 11:11:07 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  A. Cody Schuffelen <schuffelen@google.com>
  Al Viro <viro@zeniv.linux.org.uk>
  Alex Williamson <alex.williamson@redhat.com>
  Alexander Aring <aahringo@redhat.com>
  Alexander Shiyan <shc_work@mail.ru>
  Andre Przywara <andre.przywara@arm.com>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Arnd Bergmann <arnd@arndb.de>
  Arun Easi <aeasi@marvell.com>
  Bartosz Golaszewski <bgolaszewski@baylibre.com>
  Caleb Connolly <caleb@connolly.tech>
  Catalin Marinas <catalin.marinas@arm.com>
  Christian A. Ehrhardt <lk@c--e.de>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Claudiu Beznea <claudiu.beznea@microchip.com>
  Dan Williams <dan.j.williams@intel.com>
  David S. Miller <davem@davemloft.net>
  Dmitry Torokhov <dmitry.torokhov@gmail.com>
  Eric Dumazet <edumazet@google.com>
  Fabian Vogt <fabian@ritter-vogt.de>
  Florian Fainelli <f.fainelli@gmail.com>
  Florian Westphal <fw@strlen.de>
  Fredrik Strupe <fredrik@strupe.net>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Guenter Roeck <linux@roeck-us.net>
  Heiner Kallweit <hkallweit1@gmail.com>
  Himanshu Madhani <hmadhani@marvell.com>
  Hristo Venev <hristo@venev.name>
  Hulk Robot <hulkrobot@huawei.com>
  Ingo Molnar <mingo@kernel.org>
  Jaegeuk Kim <jaegeuk@google.com>
  Jakub Kicinski <jakub.kicinski@netronome.com>
  Jakub Kicinski <kuba@kernel.org>
  Jason Self <jason@bluehome.net>
  Jason Xing <xingwanli@kuaishou.com>
  Jesper Dangaard Brouer <brouer@redhat.com>
  Jiri Kosina <jkosina@suse.cz>
  Johannes Berg <johannes.berg@intel.com>
  Jolly Shah <jollys@google.com>
  Jon Hunter <jonathanh@nvidia.com>
  Jordan Crouse <jordan@cosmicpenguin.net>
  Juan Garrido <Juan.Garrido@wacom.com>
  Kefeng Wang <wangkefeng.wang@huawei.com>
  Lijun Pan <lijunp213@gmail.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Luo Jiaxing <luojiaxing@huawei.com>
  Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
  Mark Brown <broonie@kernel.org>
  Martin K. Petersen <martin.petersen@oracle.com>
  Martin Wilck <mwilck@suse.com>
  Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
  Maxime Ripard <maxime@cerno.tech>
  Michael Hernandez <mhernandez@marvell.com>
  Michael S. Tsirkin <mst@redhat.com>
  Mike Snitzer <snitzer@redhat.com>
  Nathan Chancellor <nathan@kernel.org>
  Nick Desaulniers <ndesaulniers@google.com>
  Nicolin Chen <nicoleotsuka@gmail.com>
  Or Cohen <orcohen@paloaltonetworks.com>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Pali Rohár <pali@kernel.org>
  Palmer Dabbelt <palmerdabbelt@google.com>
  Peter Collingbourne <pcc@google.com>
  Ping Cheng <ping.cheng@wacom.com>
  Ping Cheng <pinglinux@gmail.com>
  Quinn Tran <qutran@marvell.com>
  Rob Clark <robdclark@chromium.org>
  Roman Mamedov <rm+bko@romanrm.net>
  Russell King <rmk+kernel@armlinux.org.uk>
  Ryan Lee <ryans.lee@maximintegrated.com>
  Sami Tolvanen <samitolvanen@google.com>
  Santosh Shilimkar <ssantosh@kernel.org>
  Sasha Levin <sashal@kernel.org>
  Seevalamuthu Mariappan <seevalam@codeaurora.org>
  Shuah Khan <skhan@linuxfoundation.org>
  Shujin Li <lishujin@kuaishou.com>
  Shyam Sundar <ssundar@marvell.com>
  Stefan Schmidt <stefan@datenfreihafen.org>
  Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
  Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
  Tong Zhu <zhutong@amazon.com>
  Tony Lindgren <tony@atomide.com>
  Vaibhav Jain <vaibhav@linux.ibm.com>
  Vineet Gupta <vgupta@synopsys.com>
  Vinod Koul <vkoul@kernel.org>
  Viresh Kumar <viresh.kumar@linaro.org>
  Wang Qing <wangqing@vivo.com>
  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-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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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
   ab3bed80f9d3..a7eb81c1d11a  a7eb81c1d11ae311c25db88c25a7d5228fe5680a -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 09:38:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 09:38:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115231.219735 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZVnJ-00040c-T6; Thu, 22 Apr 2021 09:38:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115231.219735; Thu, 22 Apr 2021 09: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 1lZVnJ-00040V-Q2; Thu, 22 Apr 2021 09:38:45 +0000
Received: by outflank-mailman (input) for mailman id 115231;
 Thu, 22 Apr 2021 09:38:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZVnI-00040O-81
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 09:38:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id db57ddc8-e811-4f8f-b9aa-da1e7b82f24d;
 Thu, 22 Apr 2021 09:38:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 56D08AD4A;
 Thu, 22 Apr 2021 09:38: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: db57ddc8-e811-4f8f-b9aa-da1e7b82f24d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619084322; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=K8o+t6TTESoWvf7XXbQUZPdMgJr76YnvS8Puxba3yq4=;
	b=ACh4m2+Y8aTvuKTuCiy5jAPLSSEiW0W9yYDLWa+V0UUhwn6d/55/knqNGLQc8MszAoN+BV
	jKLsh8j+M2jYyNrVvzczXUOIB8Tebeh8UvXqfV21iAzmNEYpxekW+PiBJah0XYIltnEiHv
	eB2/d0bwCTimIRwktZI9AmC+fdRP23Y=
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
To: Tim Deegan <tim@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
 <YHs2AJ6pqrAw7uew@deinos.phlegethon.org>
 <d698a29e-fb4e-a650-9e48-ad209e64c800@suse.com>
 <YIEo3DQojgc0zlzw@deinos.phlegethon.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <9a00493c-319f-58c6-853c-382dd7a95561@suse.com>
Date: Thu, 22 Apr 2021 11:38:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIEo3DQojgc0zlzw@deinos.phlegethon.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 22.04.2021 09:42, Tim Deegan wrote:
> At 13:25 +0200 on 19 Apr (1618838726), Jan Beulich wrote:
>> On 17.04.2021 21:24, Tim Deegan wrote:
>>> At 12:40 +0200 on 12 Apr (1618231248), Jan Beulich wrote:
>>>> --- a/xen/arch/x86/mm/shadow/set.c
>>>> +++ b/xen/arch/x86/mm/shadow/set.c
>>>> @@ -94,6 +94,22 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
>>>>      ASSERT(!sh_l1e_is_magic(sl1e));
>>>>      ASSERT(shadow_mode_refcounts(d));
>>>>  
>>>> +    /*
>>>> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
>>>> +     * get accessed, and hence there's no need to refcount it (and refcounting
>>>> +     * would fail, due to the page having no owner).
>>>> +     */
>>>> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
>>>
>>> Would it be better to check specifically for mfn == apic_access_mfn
>>> (and apic_access_mfn != 0, I guess)?
>>
>> Roger did ask about the same - I neither want to expose apic_access_mfn
>> outside its CU, nor do I want to introduce an accessor function. Both
>> feel like layering violations to me.
> 
> I think that this is even more of a layering violation: what we
> actually want is to allow un-refcounted mappings of the
> apic_access_mfn, but to do it we're relying on an internal
> implementation detail (that it happens to be un-owned and PGC_extra)
> rather than giving ourselves an API.
> 
> And so we're tangled up talking about how to write comments to warn
> our future selves about the possible side-effects.
> 
>>>  If we want this behaviour for
>>> for all un-owned PGC_extra MFNs it would be good to explain that in the
>>> comments.
>>
>> This is hard to tell without knowing which (or even if) further such
>> PGC_extra pages will appear. Hence any comment to that effect would be
>> guesswork at best. Of course I can add e.g. "Other pages with the same
>> properties would be treated the same", if that's what you're after?
> 
> If you want to go this way there should be a comment here saying that
> we're allowing this for all PGC_extra pages because we need it for
> apic_access_mfn, and a comment at PGC_extra saying that it has this
> effect.

So (along with a comment to this effect) how about I make
page_suppress_refcounting() and page_refcounting_suppressed() helpers?
The former would set PGC_extra on the page and assert the page has no
owner, while the latter would subsume the checks done here. The only
question then is what to do with the ASSERT(type == p2m_mmio_direct):
That's still a property of the APIC access MFN which may or may not
hold for future such pages. (It can't be part of the new helper anyway
as "put" doesn't have the type available.)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 09:42:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 09:42:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115236.219748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZVrC-0004qv-Ea; Thu, 22 Apr 2021 09:42:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115236.219748; Thu, 22 Apr 2021 09:42:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZVrC-0004qo-Ak; Thu, 22 Apr 2021 09:42:46 +0000
Received: by outflank-mailman (input) for mailman id 115236;
 Thu, 22 Apr 2021 09:42:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZVrB-0004qj-44
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 09:42:45 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6dc9ca80-b7d1-4746-884c-88542a209c22;
 Thu, 22 Apr 2021 09:42: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: 6dc9ca80-b7d1-4746-884c-88542a209c22
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619084563;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=P6zSqKDHxevT8tPtA5Rdjr63V8JANhtUXglVtva6UOs=;
  b=MVRwfm3q0OAiIUJ6dsWKV7ZNg3B1opRw1z21ArY1iVrIcNhYPg6wRUDK
   nzwFAHPKw0rIGRNrb5dplpRJf/a8XhrOzwv26Fk/6lxXQU8fJlAWDwTxJ
   e4ECC65EbUzV/pIBLQ8hpelFd10blUMEd/qxEk/XYgimxXkbV6mepmWx7
   w=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 7D2X7KVAVIo/0HWB10/Sl8XWYI70rtpG9FASS9TVSbYg1KxfxxY1/lypUXGhtz5rqm1mmPczWc
 RQ9jFi7Woq3Wd2SaGh5dgS34bT9p7PRLPqPLv+badPCBtcwkkYpIp5jz7bkNVYsfWQ2p84Kccr
 ldf+lOx+EgTlpKjVW2nvg1xqIygqjU4ohfNJweS79xXjd5Qv+A4zbSdacp8dOsYUjxhDiTH9M9
 Mvs+8k+J8HYqOsJh1zS6xSvG05euR2h/P3rMHGBHbbUy0MZpTqFbLUw67CJYAUUbv8B3VC6o+m
 EGM=
X-SBRS: 5.2
X-MesageID: 42543761
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:bPPnDKHDdlHUMUDWpLqFeZTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76
 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYfNi+wFEpqSA5aQbc4Do
 Ob/MpbpzymEE5nFPiTLH8DQuTFupn3hIvrCCR2fCIPxSuvqXeT6LD8GwWFxRt2aV1y6Jor7G
 StqX2a2oyNqPe+oyWsslP7z5MTo9f5z8sGOcrksLlpFhzJqiKFILtsQKeDujddmpDf1H8PnM
 PXqxkte+RfgkmhB12dmhfm1wn+3DtG0RaLojX58BiT0vDRfz40B9FMgohUaHLimjIdlepxzb
 5R2Cahv4dXZCmw4hjV3cTCVB1hiyOP0BwfuNMU5kYvNbc2Wft6qIwS+15tC5EQHC72w5BPKp
 gQMOjsoNlRal+UdHbfoy1Gx8GtRG06GlO8TlEFodH96UkaoFlJi28jgOAPlHYJ85wwD7FC+u
 T/K6xt0JVDVNUfY65RDPoIKPHHRlDlcFbpCia/MF7nHKYINzbmsJjs+og44+msZdgh0IYysI
 6paiIYiUcCP2bVTeGe1pxC9R7ABE+nWy72981Y759l/pXhWbvQNzGZQlxGqbrvn9wvRungH9
 qjMpNfBPHuaUH0H5xS4gH4U55ObVYEVsk4vcs6RkKursrHJpaCjJ2ZTN/jYJ7WVRo0UGL2BX
 UOGBLpIt9b00ytUnjkxDjdMkmdOHDXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHlnuqwyd0
 1uHaP/nsqA1CyL1FeNy18sFgtWD05T7rmleWhNvxU2P0T9dqtGnNmDZ2ZI3j+iKgVkR83bVC
 5Tzm4Htp6fHti1/2QPGtinOmWVgz84v3SRVaoRnaWF+IPCYZM3DpEvXYRrDgXVHxlJmQJnwV
 0zKDMsdwv6LHfDmK+lhJsbCKX0bN9nmjqmJsZStDbir0mGnNouQXEaRjaqdsaSjW8VNn5pr2
 w015VarKuLmD6pJ2d6pOgjKlVDZF6aB698AB2faJ9Zna3qfw9MXX6H7Abq+y0bSy7PzQE/l2
 bhJSqbdbXwDl1Rtmtx/4zq/Fl3H1/tN35YWzRfi8lQBG7GsnF83au3faK1yXKWcUZH6PoaKi
 v5bTwbJR5Oy9i72AWOoiuLEWwry/wVT6vgJYVmV4uW9mKmKYWOm61DIuRd+4x9Msvy9sAMSu
 CSdmauXUTFItJs/zbQgHkrOCN58iZ51dzp3QDo92i+0joUB+HILFFvWrEcJJW94gHfNoO1+a
 Q8qehwm+26dljVQJqh74r8ajZYMBPdoWKsVYgT2NlplJN3kIE2JoXRVDvD6WpO0xo/JvrljU
 92etUI3JnxfqtUO/EIcy1X/lAVhM2CAUsivAvxGPI/dzgW/gvmFuLMx7rDsrw0BEKd4CP2JF
 mE6iVYls21FBer5Po/C6gqJ35RZ1V5wHN+/Pmaf4mVLAmxbelM8B6bNXC6GYUtApStKPE1rh
 xg5cuPkPLSXy3k2BrItT8+G5lwyQ+cMLWPKTPJP/VJ/dy8MUmNhaXvwPfbtkaKdRKLL2IChY
 NEckQMaN9kkTdKtvxw7hSP
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42543761"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=X6xT4PG4krzaZsvwzQc3qS8M/YXUexKmFROFbLScvosSQQutDLMlmpyXTfpjAbrBH1j38TaAIQcG3nuQC5/oVuyv92u/sdXjdWedfVvlCWx0KDIwhMe9cQKdfHDIJ+k0LSPgkYj3OVDuIhMrSTNkQCoN0Yq1f8SfEK3+TYX5799K3c/7xFuuHks5K/+/KikD7d7foLYS4j01iPgjfuVq+xEnR71ddqHbD2gvQA3b+UpV/c+4D6X6Bv1CHyms5ieOpcDJ2MMz4ReM1m6gMCFdy3sBnsk28ZkcI8Uoxh0YhLYPEzkToTM9JTfvCi4qpYoK2VUwtDi8Q2z+sircJ6RbRw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mPPOEqZJVmC7xgnLNiRIPVUuPOvmYYEnNAeoVmY6X58=;
 b=EJxV7NRExIpRLkGKgCzp1s6Kz93dJveGvrNOHN0O7Ca26UrHmGChEn+g3Pd+q+fUpsk/GPMmpuEuq1blgFK2R/qpIdUdkTouZymdYhsl2SpiwCo8QV26zPpgZlsTI/Z/5dE4IcMTpn0hO4zbRMb6STWxvGm8Zgo5JY7/Z1niTCFZJL4cb3z2/xbcD9Uc+qHn2I39a25QGp975lYumyroP/5HqxO/i8KKJHkVKTt+IK1/Jr309LdhAD21ZWN8UVqY2mS+JrCb6rZXvip43T0iVWHtzL8joKyQ5PKBlKp74Vm0wQ+OKuryCwCFk47Mlm66AR2HUr5U12pW+7dXjUfYnQ==
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=mPPOEqZJVmC7xgnLNiRIPVUuPOvmYYEnNAeoVmY6X58=;
 b=tN1KXfeDY8kJO/27P9D9CCrrtUAl/bSz3E0Rw0iuCeF6dJr0GTxa+CoHjGDPUvE5Ys0A5O4NxYYoIl38Oe0EB01JJsI3yzee+p1Wnz4Hkh1iIcgifAoGk+nqsV5TNo07eFkZNN/1igr/51fstIm3f+HG/hrowWZOg1ZrKJXfb0M=
Date: Thu, 22 Apr 2021 11:42:28 +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>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <YIFFBEhPYSYQhycf@Air-de-Roger>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
X-ClientProxiedBy: PR3P189CA0089.EURP189.PROD.OUTLOOK.COM
 (2603:10a6:102:b4::34) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e9f590fb-d45e-44da-5213-08d90572f459
X-MS-TrafficTypeDiagnostic: DM6PR03MB5323:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5323D5503B97D052CF2526DB8F469@DM6PR03MB5323.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: XjLa1HMSO2zd1YFv5ayaKxDrVHKrrk+LHyqIkGiqSbIQcjqLOsaT0y0A7KBnQFQpVS82bq/nqRPcCtWTr6iUclmroKJJu8arJSUkliYYOOeQ1Y+CXm2THiCOZzzWnsTlH6n+QX1pGf+xc7NQH0h8BLxH4QslaQO0cZbJ92H8uQu9+3LOCBDNqISXwjZHwLaXDJb5VGwY3/QKdUe0OZepoUzzuek17KdwDtvx2WJhvgj22lrrYobyxocaW4EUJdyiMcXm61JP0YRPDRA7cs6oiob57CswFtq8P7JtILdVz6O1TFHHsaDfB8CAL4V7m7EoEzpFKYCrON0J6hqnt5rX14473AyYl0UcHWI9mc2J3kWRY4sAoFQPy1UtYiq/dB0TYtFT75UFH5OmDbKzmXuWq6Cs5FPE8W5LOLhTOOBHyZ2shsbE+PIwmov2fvB2RjCXqedUpDtggF2HJgevLJua2Dks9HL/4Suo4vNJv2Ec5hGCZ63MHUGZ5OD7Q5R7CVX92OFDxSzc/bmbB6IaUV1Yc51YrhmS7AUJPHK3e3z/hFHm6L6PHBuhNDziLEd1WXvsB6Bst3h4CJXoUOJ3/uKaTufnboI1NOiI9hJhTNAXAq8=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(366004)(346002)(376002)(39850400004)(396003)(54906003)(8676002)(8936002)(85182001)(66946007)(66476007)(86362001)(26005)(6486002)(66556008)(9686003)(5660300002)(316002)(4326008)(38100700002)(6496006)(6916009)(33716001)(956004)(16526019)(478600001)(6666004)(186003)(2906002)(53546011);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: e9f590fb-d45e-44da-5213-08d90572f459
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 09:42:33.5243
 (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: IP+lWYvt+uc23kH0PcdL1RBdtyLlkkmZxO0pA4g0xGgLDDJbfyV8TOXiVGD3WzSGZSZ7R/qLCiWSEuFifemZZw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5323
X-OriginatorOrg: citrix.com

On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
> On 13.04.2021 16:01, Roger Pau Monne wrote:
> > @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
> >  
> >      return false;
> >  }
> > +
> > +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
> > +{
> > +    uint64_t val = val1 & val2;;
> 
> For arbitrary MSRs this isn't going to do any good. If only very
> specific MSRs are assumed to make it here, I think this wants
> commenting on.

I've added: "MSRs passed to level_msr are expected to be bitmaps of
features"

> > +                       xen_cpuid_leaf_t *out)
> > +{
> > +    *out = (xen_cpuid_leaf_t){ };
> > +
> > +    switch ( l1->leaf )
> > +    {
> > +    case 0x1:
> > +    case 0x80000001:
> > +        out->c = l1->c & l2->c;
> > +        out->d = l1->d & l2->d;
> > +        return true;
> > +
> > +    case 0xd:
> > +        if ( l1->subleaf != 1 )
> > +            break;
> > +        out->a = l1->a & l2->a;
> > +        return true;
> 
> Could you explain your thinking behind this (a code comment would
> likely help)? You effectively discard everything except subleaf 1
> by returning false in that case, don't you?

Yes, the intent is to only level the features bitfield found in
subleaf 1.

I was planning for level_leaf so far in this series to deal with the
feature leaves part of the featureset only. I guess you would also
like to leverage other parts of the xstate leaf, like the max_size or
the supported bits in xss_{low,high}?

> > +    case 0x7:
> > +        switch ( l1->subleaf )
> > +        {
> > +        case 0:
> > +            out->b = l1->b & l2->b;
> > +            out->c = l1->c & l2->c;
> > +            out->d = l1->d & l2->d;
> > +            return true;
> > +
> > +        case 1:
> > +            out->a = l1->a & l2->a;
> > +            return true;
> > +        }
> > +        break;
> 
> Can we perhaps assume all subleaves here are going to hold flags,
> and hence and both sides together without regard to what subleaf
> we're actually dealing with (subleaf 1 remaining special as to

I think you meant subleaf 0 EAX (the max subleaf value)?

subleaf 1 EAX is just a normal bitfield AFAIK.

> EAX of course)? This would avoid having to remember to make yet
> another mechanical change when enabling a new subleaf.

Sure, seems like a fine approach since leaf 7 will only contain
feature bitmaps.

> > +    case 0x80000007:
> > +        out->d = l1->d & l2->d;
> > +        return true;
> > +
> > +    case 0x80000008:
> > +        out->b = l1->b & l2->b;
> > +        return true;
> > +    }
> > +
> > +    return false;
> > +}
> 
> Considering your LFENCE-always-serializing patch, I assume
> whichever ends up going in last will take care of adding handling
> of that leaf here?

Indeed.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 09:58:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 09:58:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115246.219768 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZW6j-00067f-Vs; Thu, 22 Apr 2021 09:58:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115246.219768; Thu, 22 Apr 2021 09: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 1lZW6j-00067Y-RH; Thu, 22 Apr 2021 09:58:49 +0000
Received: by outflank-mailman (input) for mailman id 115246;
 Thu, 22 Apr 2021 09:58:48 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZW6i-00067T-2B
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 09:58:48 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 675d94a5-a6d5-4a49-b6c0-719c377d7008;
 Thu, 22 Apr 2021 09:58:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7B835AE38;
 Thu, 22 Apr 2021 09:58:45 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 675d94a5-a6d5-4a49-b6c0-719c377d7008
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619085525; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=kCacLMyJBMMJtASnwzPw1A36wJNpFZSxWFe36yTJ6hI=;
	b=me6YaYybdYiHW5JR0zI8zcNRpksLNxCa+jXzlnASVKjcIYC+bluKwO9J1h8D76YKUJE9Ri
	S1Btt8Ietazr1luo5lpgU1XWccAVWM74t5y8aZxzza4pf9s43SSJ6SiXycxmgv7fgfKU6t
	nOKf2U3e5tRAkhqgZcagi/EKObioE/k=
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
Date: Thu, 22 Apr 2021 11:58:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIFFBEhPYSYQhycf@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 11:42, Roger Pau Monné wrote:
> On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
>> On 13.04.2021 16:01, Roger Pau Monne wrote:
>>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
>>>  
>>>      return false;
>>>  }
>>> +
>>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
>>> +{
>>> +    uint64_t val = val1 & val2;;
>>
>> For arbitrary MSRs this isn't going to do any good. If only very
>> specific MSRs are assumed to make it here, I think this wants
>> commenting on.
> 
> I've added: "MSRs passed to level_msr are expected to be bitmaps of
> features"

How does such a comment help? I.e. how does the caller tell which MSRs
to pass here and which to deal with anyother way?

>>> +                       xen_cpuid_leaf_t *out)
>>> +{
>>> +    *out = (xen_cpuid_leaf_t){ };
>>> +
>>> +    switch ( l1->leaf )
>>> +    {
>>> +    case 0x1:
>>> +    case 0x80000001:
>>> +        out->c = l1->c & l2->c;
>>> +        out->d = l1->d & l2->d;
>>> +        return true;
>>> +
>>> +    case 0xd:
>>> +        if ( l1->subleaf != 1 )
>>> +            break;
>>> +        out->a = l1->a & l2->a;
>>> +        return true;
>>
>> Could you explain your thinking behind this (a code comment would
>> likely help)? You effectively discard everything except subleaf 1
>> by returning false in that case, don't you?
> 
> Yes, the intent is to only level the features bitfield found in
> subleaf 1.
> 
> I was planning for level_leaf so far in this series to deal with the
> feature leaves part of the featureset only. I guess you would also
> like to leverage other parts of the xstate leaf, like the max_size or
> the supported bits in xss_{low,high}?

The latter is clearly one of the things to consider, yes (alongside
the respective bits in sub-leaf 0 for XCR0). Sub-leaves > 1 may also
need dealing with ECX. Yet then again some or all of this may need
handling elsewhere, not the least because of the unusual handling of
leaf 0xd in the hypervisor. What gets checked and/or adjusted where
needs to be settled upon, and then the different parts of code would
imo better cross-reference each other.

>>> +    case 0x7:
>>> +        switch ( l1->subleaf )
>>> +        {
>>> +        case 0:
>>> +            out->b = l1->b & l2->b;
>>> +            out->c = l1->c & l2->c;
>>> +            out->d = l1->d & l2->d;
>>> +            return true;
>>> +
>>> +        case 1:
>>> +            out->a = l1->a & l2->a;
>>> +            return true;
>>> +        }
>>> +        break;
>>
>> Can we perhaps assume all subleaves here are going to hold flags,
>> and hence and both sides together without regard to what subleaf
>> we're actually dealing with (subleaf 1 remaining special as to
> 
> I think you meant subleaf 0 EAX (the max subleaf value)?
> 
> subleaf 1 EAX is just a normal bitfield AFAIK.

Indeed I did.

Jan

>> EAX of course)? This would avoid having to remember to make yet
>> another mechanical change when enabling a new subleaf.
> 
> Sure, seems like a fine approach since leaf 7 will only contain
> feature bitmaps.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 10:35:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 10:35:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115252.219780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZWfs-0001UW-P9; Thu, 22 Apr 2021 10:35:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115252.219780; Thu, 22 Apr 2021 10:35: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 1lZWfs-0001UP-L1; Thu, 22 Apr 2021 10:35:08 +0000
Received: by outflank-mailman (input) for mailman id 115252;
 Thu, 22 Apr 2021 10:35:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZWfr-0001UK-TI
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 10:35:07 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0590ec49-16ff-4566-a656-192799c4da0b;
 Thu, 22 Apr 2021 10:35: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: 0590ec49-16ff-4566-a656-192799c4da0b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619087705;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Jy7uQqMuxwAHVgBlc2BouGIfXYS1T8KmICg1OCcmqWU=;
  b=XXtlwrZUAGsUHfgMJSgPgKym43vKW11wZ3l7oqWm87eyIj6ByNG9MZlD
   Y9s6KkTIKNXogNsfRSQAJKzSxXjO8/8AGrGxaT0vUlFnhGq3EEDxF07e2
   nySHXm8pmYEEaV6QVDOMQAPc+rw6ftCYMb/xgy0HvuVM2RY1Ed3xcomJ4
   8=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ZcGrtBDBaPlFxjMb9DuMtknNhn/MT4uMRbZ/yi7v5WpdNCHFn8zMJ0MyMkhCLYpBERKOUZroMC
 TWyR6saVc3oRvg7PF2cmac0DB+PWxzZRWP3lUcoziipP1eW9THlqBw+dS7YSYz08Icy5WuDupT
 CR7WGZZ/NAiY+v5eFYiFpZeh4hROFcxfIuBaT34v3LjyYhNQnWXEsU7ec/oFbAqSr/st1QeZiE
 TZ9MZATWCEDU/TtrxU+3VetdV8riQFqq0wRCH2AiW6y9IPPVTv10QXxAu2+kcXKY9QrYbPa3Fu
 +t0=
X-SBRS: 5.2
X-MesageID: 42546657
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:GG25DqDOWntZnqnlHegctMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmBEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVsUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbiSw9BEYTj9J3PMe4X
 HI+jaJnZmLntOa7lvn12HV54lLg9eJ8LV+LeGFl8R9EESPti+Gf4JkMofy2QwdgObq01oylc
 mJnhFIBbUO11r0XkWY5STgwBPh1jFG0Q6T9Xa9jWH4qcL0ABIWYvAx/L5xSRfS50o+sNwU6s
 sitAj4xvknfy/opyjz68PFUBtnjCOP0AIfuNUekmBFVs8mYKJRxLZvjX99KosKHy7x9ekcYY
 9TJfzbjcwmFW+yXjTyu2lix8GURXIjHhuKaVhqgL3q7xFm2F9+1EcW38oZgzMp8488UYBN46
 D+Pr1vj6wmdL5bUYtNQMM6BeenAG3ERhzBdEqUPFTcDakCf1bAsYT+7rkZ7PyjEaZ4g6caqd
 Dkahd1pGQyc0XhBYmlx5tQ6C3AR227QHDE1txez4IRgMy9eJPbdQm4DHw+mcqppPsSRufBXe
 yoBZ5QC/j/aUPzBIdy2RHkUZU6EwhebOQl/vIAH36eqMPCLYPn8sbBduzIGbbrGTE4HkzlBH
 8uWyXyOdVg4kinVmSQummSZ1rdPmjEub5gGqnT+OYejKIXMJdXjwQTgVOlouGHQAcy95AeTQ
 9bGvfKg6m7rW658SLj9GNyICdQCU5T/fHFW3NOrgkaDlPsfd84ypGiUFEX+EHCCg50TsvQHg
 IajU9w47iLI5uZwj1nLN67LGSAjT82qGiRR5kR3o2PjP2VNK8QP9IDYuhcBA/LHxt6lUJBs2
 FYcjIJQUfZC3fJkqWqjJsdAcnFbNliiAKXIcpZwEiv9nm0lIUKfD82TjSuWcmYjUIFXDxPnG
 B89KcZnf69gzq1EHA+h+45KVVIT2ySDNt9fUO4TbQRvoquVBB7TG+MizDfrx0oYGLl+38fgX
 HbITSOdevGBUdcvX5kwr/nmWkEBVm1TgZVUDRXoId9HWPJtjJI3eiHarGa/kGRZlEBq9ttew
 3tUH83GEdD1tq33BmalHK+Dn0g3IwpJfGYJq8kaavv1nSkL5ComakKE+RPxotsMMnjv4YwIK
 SiUj7QCAm9J/Ii2gSTqHpgBTJ9r2M8l+j0nDLi92q10RcEcIzvCWUjY4teBd6S72LpHanVlL
 p4iM84puu2PCHabMWcxaTecj5ELVfyrAeNPpUVgKERmZh3kr15W6T/e3/v8lps2R0lNsf6lE
 8EWs1Akfj8E74qW/ZXQj5T+1oiqc+GI0QquDHnG+NWRyBZs1bre/eyp4fSobUhAke9tBL9FF
 mW/Spa5erEVUK4pMknIpN1BWRdc04n7nt+uMuEao3LEQ2vHtsztmaSAzuYcLVHTrKCFqhVhh
 Fm48uQl+vSUybjwgjfsX9aJa1JmlzXDP+aMUapGeRS9ca9NknJqqy24NSrhDOycACFUS0j9M
 R4XH1VSN9ChDkkhJA21Sb3apWfmDNbr3JupRd9llDs3YC65nz8Bk8uC3yBvqlr
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42546657"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YxuHA508ADKLRI4coBdoeM0W4kZDMmW5X+nslM2/fuJ3qkLUxFVsSdEDz9FhP5AOy51qQJvB69B3CemfozypFTVVtwjqYaovKzrUfGN1XqYG6LH2rI45eZt25iJtPZL8WRh4MoYzHbwRJ5v2XnZZ6UELBWx0pVID0XUJvXUiWmYRHtSBNViwOvNB4v+FSPKspa6Qt1TwqqoWGJ331UaLFS0xiyvHFWJFtxiYfm4pFGhnoQL6tTQYCJHExINPirDaORPZSDzuUN8L4FHMGvbqm8USi6eDlpMqi1Bi5EQLVLBglL7mI789Mim1SoSAKwsGTEUso4GpnheyD7+30piIwg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=l7kp5ri/h8sxT/CzE16wh1Ls+BEg8vxcaigM0NCJQlE=;
 b=YKXBL6Rey2R9ZPWgHKHeDIwxDs2mi2/HnRhulTbr/gL2hosnAB2XRWOwnr8B8aynMoPpJO8qxPo+k+ws3KoXXsQFOBZHW6h80Tec/RpxInq6C98+v+5rr8ZaHlrt6KZA0dsaco39wWLWDBIJyp710EAbrbJDu1cRa4md/VQbQAw8+BTDdPJoAU4CDhOUuFApbbDAD4Sr3+vwwqX0S5Vf1suKJNPm4ULmBgrgyQH71ZJjTwZn6sJFqNNYG0wga/GUO2qRBtTZNbxTnvEKbtkxYRK2ZPDX/a2Air24Bcg4vLwvVuNA8LTOCPYnwAFO271Qd7p9qkmqXk1Vcjv4DOvHKQ==
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=l7kp5ri/h8sxT/CzE16wh1Ls+BEg8vxcaigM0NCJQlE=;
 b=dkByziGnQeB30F69uZz6lQARePYbHn1V9KfU8rC3ZZpUB/ZRH3AA4LCMMvK/E5PjJZ1bG2v5dZitQrLlKDERRZAPe8s7IrxsO8oqsfqY4tGujWEIn8zViGny/9hiSfaat/VkpoECWt1h58/g7lmH3f+rsNEgUguvdmTXVJTuJeQ=
Date: Thu, 22 Apr 2021 12:34:42 +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>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <YIFRQu/CLEId2uMi@Air-de-Roger>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
 <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
X-ClientProxiedBy: MR1P264CA0001.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2e::6) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5a9d344d-34b8-4456-1996-08d9057a40d3
X-MS-TrafficTypeDiagnostic: DM5PR03MB2635:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2635F0F9B5E222017DC434FD8F469@DM5PR03MB2635.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: qf0Uw/E19H8NfLENl0XOKQ00EI0SWUyw7Rc6OvJABsd7wTcRyY8E2skq888PfyllD0ThFPUA/+hqPcFO6pYgWvAxkVRin97PljCZ79diTaphr8YSh+jHe2bdDgZf3wQDM4xYzcvrI51xgfsgfE33qvUtkc5EbRm+qVvWW0ETyKyYHl0SllotfvTJZnxHZEQ9fLlKFYs1wFib/fVFNXRBVtIOR7GcJG18zobQK76lSBQBh6qY50vY6GCVUebTzP+qBiqju6nQERBflYgN/G/hqpVdMwMPs6sNtiHFKL4gn1xSqtmYFMqOBulpeCslaDALO3t9wRKXfJRzOqO+sOt3aUQUaa7+CrVFe7QIIHkv3ndTkDkmnSI5l0ePhLoT5XvagfOesyUEmpttJ4an63Ho1do7R0rtoQIXn+Gyq/A05unX5bb4XIk6Q/bNt2hsu9jW7ddEiJMTuLHAWU209PqK0I1JcKvULQOTq4n/wsvUZaIZNO5b45npvQTLCokGFde4zofYXz6bQuOOdyVVUNFDxJ9Ee62vhg7ksQIAa/v9XUsbsKKRsbwWHWl8VCh95Fy70IS/LOp7Uyi2cG8NtSQ0QOK8CAbkYmwiis5/J+cTEy6A0aB0cLeFIOUyF1RkA/RtxulZwzXtZ69lRgsmA6WvqcpWBoUM3s1cV6qQH+xt5z9zck+Cp8xTJI2HozFv8mLs
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(396003)(136003)(366004)(346002)(39860400002)(376002)(6666004)(9686003)(66556008)(6496006)(33716001)(4326008)(38100700002)(966005)(86362001)(5660300002)(53546011)(6916009)(85182001)(26005)(6486002)(478600001)(66476007)(66946007)(186003)(54906003)(2906002)(16526019)(956004)(8936002)(8676002)(83380400001)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?vbDYtaTq/Wv/4QR4Pklncs7s9Rxb9uEAsAxLTHM?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 5a9d344d-34b8-4456-1996-08d9057a40d3
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 10:34:48.3452
 (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: 6QwxLstr0M3gEGgu0MwCvak2SgZ+iTwKPSwI5lfkNX6HXzYX27reeRz4ti3M3dBWvVrRVdML4hDVbS5ryC8GTw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2635
X-OriginatorOrg: citrix.com

On Thu, Apr 22, 2021 at 11:58:45AM +0200, Jan Beulich wrote:
> On 22.04.2021 11:42, Roger Pau Monné wrote:
> > On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
> >> On 13.04.2021 16:01, Roger Pau Monne wrote:
> >>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
> >>>  
> >>>      return false;
> >>>  }
> >>> +
> >>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
> >>> +{
> >>> +    uint64_t val = val1 & val2;;
> >>
> >> For arbitrary MSRs this isn't going to do any good. If only very
> >> specific MSRs are assumed to make it here, I think this wants
> >> commenting on.
> > 
> > I've added: "MSRs passed to level_msr are expected to be bitmaps of
> > features"
> 
> How does such a comment help? I.e. how does the caller tell which MSRs
> to pass here and which to deal with anyother way?

All MSRs should be passed to level_msr, but it's handling logic would
need to be expanded to support MSRs that are not feature bitmaps.

It might be best to restore the previous switch and handle each MSR
specifically?

>From your reply to v1 I wrongly misunderstood that you initially
wanted to handle all MSRs as bitmaps:

https://lore.kernel.org/xen-devel/f66e61d5-e4a0-cba3-f15c-73ca54ac4964@suse.com/

> >>> +                       xen_cpuid_leaf_t *out)
> >>> +{
> >>> +    *out = (xen_cpuid_leaf_t){ };
> >>> +
> >>> +    switch ( l1->leaf )
> >>> +    {
> >>> +    case 0x1:
> >>> +    case 0x80000001:
> >>> +        out->c = l1->c & l2->c;
> >>> +        out->d = l1->d & l2->d;
> >>> +        return true;
> >>> +
> >>> +    case 0xd:
> >>> +        if ( l1->subleaf != 1 )
> >>> +            break;
> >>> +        out->a = l1->a & l2->a;
> >>> +        return true;
> >>
> >> Could you explain your thinking behind this (a code comment would
> >> likely help)? You effectively discard everything except subleaf 1
> >> by returning false in that case, don't you?
> > 
> > Yes, the intent is to only level the features bitfield found in
> > subleaf 1.
> > 
> > I was planning for level_leaf so far in this series to deal with the
> > feature leaves part of the featureset only. I guess you would also
> > like to leverage other parts of the xstate leaf, like the max_size or
> > the supported bits in xss_{low,high}?
> 
> The latter is clearly one of the things to consider, yes (alongside
> the respective bits in sub-leaf 0 for XCR0). Sub-leaves > 1 may also
> need dealing with ECX. Yet then again some or all of this may need
> handling elsewhere, not the least because of the unusual handling of
> leaf 0xd in the hypervisor. What gets checked and/or adjusted where
> needs to be settled upon, and then the different parts of code would
> imo better cross-reference each other.

There's a comment in recalculate_xstate that mentions that Da1 leaf is
the only piece of information preserved, and that everything else is
derived from feature state. I don't think it makes sense to try to
level anything apart from Da1 if it's going to be discarded by
recalculate_xstate anyway?

I can add a comment here regarding why only Da1 is taken into account
for leveling so far.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 10:43:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 10:43:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115261.219804 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZWnS-0002Qp-1U; Thu, 22 Apr 2021 10:42:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115261.219804; Thu, 22 Apr 2021 10:42:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZWnR-0002Qh-Tp; Thu, 22 Apr 2021 10:42:57 +0000
Received: by outflank-mailman (input) for mailman id 115261;
 Thu, 22 Apr 2021 10:42: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 1lZWnR-0002QU-H2; Thu, 22 Apr 2021 10:42: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 1lZWnR-00043l-9y; Thu, 22 Apr 2021 10:42: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 1lZWnR-0007XZ-2H; Thu, 22 Apr 2021 10:42:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZWnQ-0001Yl-VT; Thu, 22 Apr 2021 10:42: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=AhZ/y7aBCiYmIWcKf/1Hbk+lhtFbJz33jIWy6iex7rk=; b=ZkZRWMq6U4HNS/ff93vScQ5Q3I
	p21NdDmsrdfi/3mSByJY2zsgHztgVRaDwkre8JSzWh6t1SQwto7UM2+vAXYsv+B/SaLbfR4y+ZXHj
	pSTFg3nqcG15+SMJWkVJhQk/QxLtxvsBI5b9AKfWuCo6+9Vfbn6HxpQrZ7kOI3jQ8+oc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161363-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161363: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=e24fbec38e66e0df8471efb0c804256bdac96636
X-Osstest-Versions-That:
    xtf=0395a690c921cb195619b689ba0c0b687531c64c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 10:42:56 +0000

flight 161363 xtf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161363/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  e24fbec38e66e0df8471efb0c804256bdac96636
baseline version:
 xtf                  0395a690c921cb195619b689ba0c0b687531c64c

Last test of basis   161302  2021-04-19 21:40:10 Z    2 days
Testing same since   161363  2021-04-21 23:10:10 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
   0395a69..e24fbec  e24fbec38e66e0df8471efb0c804256bdac96636 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 10:43:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 10:43:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115260.219791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZWnJ-0002Oc-Nd; Thu, 22 Apr 2021 10:42:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115260.219791; Thu, 22 Apr 2021 10:42: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 1lZWnJ-0002OV-Km; Thu, 22 Apr 2021 10:42:49 +0000
Received: by outflank-mailman (input) for mailman id 115260;
 Thu, 22 Apr 2021 10:42:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZWnH-0002OQ-JA
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 10:42:47 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 99e84c49-b934-4c92-8994-f70f93ff9f35;
 Thu, 22 Apr 2021 10:42:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 70222B0B6;
 Thu, 22 Apr 2021 10:42: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: 99e84c49-b934-4c92-8994-f70f93ff9f35
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619088164; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=45FTwVYKH95AzB1dsK0EwocVtsI0g2dqmq3noSQHh7M=;
	b=Kkr82tK7dzfE7E1BM4O+W+RYeqRIanLM79ykdfYHp/RPDx7hXrZgEGG1jJrnOb8bZ0kcng
	lo7T7Rx/NiBL6WLoCQmbKhyVSXuOX8tCcZl8BcQERlxm/42Pk8LUKZ9v1PMbfqPHItmtKn
	Bqjjr1odGDWxSwC2RtWus7O+/M99mTg=
Subject: Re: [PATCH 6/8] x86/EFI: avoid use of GNU ld's
 --disable-reloc-section when possible
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <ff15338a-ca10-ff38-3c2a-459303ce9d68@suse.com>
 <YH/8rb0aENMqOLAn@Air-de-Roger>
 <dada98e8-3e4a-94df-0678-bdd2a0e8de04@suse.com>
 <YIBC1XWTQzjykk1k@Air-de-Roger>
 <fa822374-ce07-473d-b6b6-2d8073ff83a6@suse.com>
 <YIEkPorW1vEibACD@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <0e102d7d-d633-7865-ea03-5d56238fb3c3@suse.com>
Date: Thu, 22 Apr 2021 12:42:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIEkPorW1vEibACD@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 09:22, Roger Pau Monné wrote:
> On Wed, Apr 21, 2021 at 05:34:29PM +0200, Jan Beulich wrote:
>> On 21.04.2021 17:20, Roger Pau Monné wrote:
>>> On Wed, Apr 21, 2021 at 02:03:49PM +0200, Jan Beulich wrote:
>>>> On 21.04.2021 12:21, Roger Pau Monné wrote:
>>>>> On Thu, Apr 01, 2021 at 11:46:44AM +0200, Jan Beulich wrote:
>>>>>> @@ -189,7 +208,11 @@ EFI_LDFLAGS += --no-insert-timestamp
>>>>>>  endif
>>>>>>  
>>>>>>  $(TARGET).efi: VIRT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A VIRT_START$$,,p')
>>>>>> +ifeq ($(MKRELOC),:)
>>>>>> +$(TARGET).efi: ALT_BASE :=
>>>>>> +else
>>>>>>  $(TARGET).efi: ALT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A ALT_START$$,,p')
>>>>>
>>>>> Could you maybe check whether $(relocs-dummy) is set as the condition
>>>>> here and use it here instead of efi/relocs-dummy.o?
>>>>
>>>> I can use it in the ifeq() if you think that's neater (the current way
>>>> is minimally shorter), but using it in the ALT_BASE assignment would
>>>> make this differ more from the VIRT_BASE one, which I'd like to avoid.
>>>
>>> Sorry, I think I'm slightly confused because when the linker can
>>> produce the required relocations relocs-dummy variable is left empty,
>>> so it won't be added to $(TARGET).efi.
>>>
>>> But we still need to generate the efi/relocs-dummy.o file for the ELF
>>> build I assume?
>>
>> Not anymore (after "x86/EFI: redo .reloc section bounds determination").
>> We need it, as said, to fish VIRT_BASE out of it. It indeed wouldn't get
>> linked into any of the final binaries anymore.
> 
> Could you please add some text to the commit message to note that
> while relocs-dummy is not linked into the final binary it's still
> needed to get VIRT_BASE?

I've added

"Note that in the case that we leave base relocation generation to ld,
 while efi/relocs-dummy.o then won't be linked into any executable
 anymore, it still needs generating (and hence dependencies need to be
 kept as they are) in order to have VIRT_BASE pulled out of it."

> With that:
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> FWIW, it would also be nice to add some comments to the $(TARGET).efi
> target commands, as it's quite impenetrable right now.

Well, my preferred plan was to pull it (and $(TARGET)-sym's) apart
into separate steps, suitably linked together via dependencies. This
may not eliminate altogether the need for some comments, but we then
may get away with brief ones.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 10:48:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 10:48:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115271.219819 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZWsx-0002nA-PC; Thu, 22 Apr 2021 10:48:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115271.219819; Thu, 22 Apr 2021 10:48: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 1lZWsx-0002n3-Ld; Thu, 22 Apr 2021 10:48:39 +0000
Received: by outflank-mailman (input) for mailman id 115271;
 Thu, 22 Apr 2021 10:48:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZWsw-0002my-Py
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 10:48:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7a221d9f-7979-425b-b972-762f37d95ec1;
 Thu, 22 Apr 2021 10:48:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C11F8B124;
 Thu, 22 Apr 2021 10:48: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: 7a221d9f-7979-425b-b972-762f37d95ec1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619088516; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Wfj3Wq/ZwvGrwAxOSCpJx8Q++ljsC/k1HNHxwv8cBvM=;
	b=j2r3vMNO21YgTXsVOEbMzNs0SzJ1LjCEBdS28oPOAWRqXnpdeGWglwrfqQ+BsQuscfwDAT
	uoLPT0DI6tucj0O4QsSU62gWbfYurgkbNJGYe1A0ft39Kxuum13TSQlEyy0+Rcmks6pSJ5
	YXveglZfIPBXaRaORGEbV6sY9vPT8rg=
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
 <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
 <YIFRQu/CLEId2uMi@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d877502d-9c18-6ff3-6e01-ee997c9f196a@suse.com>
Date: Thu, 22 Apr 2021 12:48:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIFRQu/CLEId2uMi@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 12:34, Roger Pau Monné wrote:
> On Thu, Apr 22, 2021 at 11:58:45AM +0200, Jan Beulich wrote:
>> On 22.04.2021 11:42, Roger Pau Monné wrote:
>>> On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
>>>> On 13.04.2021 16:01, Roger Pau Monne wrote:
>>>>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
>>>>>  
>>>>>      return false;
>>>>>  }
>>>>> +
>>>>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
>>>>> +{
>>>>> +    uint64_t val = val1 & val2;;
>>>>
>>>> For arbitrary MSRs this isn't going to do any good. If only very
>>>> specific MSRs are assumed to make it here, I think this wants
>>>> commenting on.
>>>
>>> I've added: "MSRs passed to level_msr are expected to be bitmaps of
>>> features"
>>
>> How does such a comment help? I.e. how does the caller tell which MSRs
>> to pass here and which to deal with anyother way?
> 
> All MSRs should be passed to level_msr, but it's handling logic would
> need to be expanded to support MSRs that are not feature bitmaps.
> 
> It might be best to restore the previous switch and handle each MSR
> specifically?

I think so, yes. We need to be very careful with what a possible
default case does there, though.

>>>>> +                       xen_cpuid_leaf_t *out)
>>>>> +{
>>>>> +    *out = (xen_cpuid_leaf_t){ };
>>>>> +
>>>>> +    switch ( l1->leaf )
>>>>> +    {
>>>>> +    case 0x1:
>>>>> +    case 0x80000001:
>>>>> +        out->c = l1->c & l2->c;
>>>>> +        out->d = l1->d & l2->d;
>>>>> +        return true;
>>>>> +
>>>>> +    case 0xd:
>>>>> +        if ( l1->subleaf != 1 )
>>>>> +            break;
>>>>> +        out->a = l1->a & l2->a;
>>>>> +        return true;
>>>>
>>>> Could you explain your thinking behind this (a code comment would
>>>> likely help)? You effectively discard everything except subleaf 1
>>>> by returning false in that case, don't you?
>>>
>>> Yes, the intent is to only level the features bitfield found in
>>> subleaf 1.
>>>
>>> I was planning for level_leaf so far in this series to deal with the
>>> feature leaves part of the featureset only. I guess you would also
>>> like to leverage other parts of the xstate leaf, like the max_size or
>>> the supported bits in xss_{low,high}?
>>
>> The latter is clearly one of the things to consider, yes (alongside
>> the respective bits in sub-leaf 0 for XCR0). Sub-leaves > 1 may also
>> need dealing with ECX. Yet then again some or all of this may need
>> handling elsewhere, not the least because of the unusual handling of
>> leaf 0xd in the hypervisor. What gets checked and/or adjusted where
>> needs to be settled upon, and then the different parts of code would
>> imo better cross-reference each other.
> 
> There's a comment in recalculate_xstate that mentions that Da1 leaf is
> the only piece of information preserved, and that everything else is
> derived from feature state. I don't think it makes sense to try to
> level anything apart from Da1 if it's going to be discarded by
> recalculate_xstate anyway?
> 
> I can add a comment here regarding why only Da1 is taken into account
> for leveling so far.

Yes, this would help. Thanks.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 10:56:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 10:56:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115276.219831 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZX0b-0003nd-HV; Thu, 22 Apr 2021 10:56:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115276.219831; Thu, 22 Apr 2021 10:56: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 1lZX0b-0003nW-EO; Thu, 22 Apr 2021 10:56:33 +0000
Received: by outflank-mailman (input) for mailman id 115276;
 Thu, 22 Apr 2021 10:56:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZX0a-0003nR-45
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 10:56:32 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6e094bf6-d8d3-4f2d-b57b-69a63962f0af;
 Thu, 22 Apr 2021 10:56: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: 6e094bf6-d8d3-4f2d-b57b-69a63962f0af
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619088990;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Hs35y0nADG6TeJZLae6gjxeKQasxWRdUbP4ZnqJtXd8=;
  b=fa0FPH3VCVV7gBhI1jmMsXmhqDyOJocH+kROafFp+4BUj5ztz2ou5oC/
   dCS6MYPME14FCihf+trFfMrhZAUi2fzMijm+vfkX7a/KEk1XyA5k4amzB
   Qb6I8MB7wa7eaWlDF7HAL0e66BgVwYi05l2kG1j0tdUN6Pm3SGEcJ7oJp
   k=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: +pybSbNFVq13Z8U8rb9yqsOA01kn8sfMXu71gH2ywU08PBfZsOyeF4Dh3zpPAoubXsnvM4Hqip
 1Bb8bfa86TndogkzKaDl9sKe3lR5d6TgbWKOLBSLMvu2j8hbJHJa4eqxtYV3L/vRIooFVPZDVp
 nyJJWjFJVkKAGE6IzSF/eXjUA0KxOODzEjdyRcYzRkxwIEhSMwJFrQJ2zoceIXi0Yo/Uvx80Jz
 wVJulUwIpoixFhLECWBLj458Jia+gcIFNIfHVGrWk26CP2TQFx0APMyFjMADp0VcFrhYJYa6E9
 YVQ=
X-SBRS: 5.2
X-MesageID: 42165823
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:nzI1HK7VdgDdRouBLAPXwXqEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbDqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH7mGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnl4j41VTRTzbA+tV
 XUigCR3NTYj9iX6D/5k1XS4ZNfhcf7xrJ4ZfCkp8AJJlzX+2OVTat7XbnqhkFQnMiO7xIQnM
 DIs1McOa1ImgzsV0WUhTeo5AX6yjYp7BbZuCylqF/uu9bwSj5/K+cpv/MgTjLj50AtvM5x3c
 twtgrz3fcnbmKj7VHAzuPFWB1wmk2/rWBKq59ps1VlXZYDc7gUlIQD/SpuYec9NRjn44MqGv
 QGNrCk2N9qdzqhHhfkl1gq6tmtUnMvJwyBU0gPt+eEugIm7UxR/g82wtcSkWwH8494Y55Y5/
 7cOqAtr71WSNQKBJgNS9spcI+SMCjgUBjMOGWdLRDOE7wGAWvEr9rS7K8u7O+nVZQUxPIJ6d
 r8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwbz4Rlu5XnLYCbchGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJgwxD+YZ9PMnMTOfdl+uoTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8tRz72CMJc7l26e3PxjRTLMkmdP3DXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHljv8UNDQ
 9DCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PgQcLNkjzYIsSotn3QxEU4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dkWXkmUUv3DPa5sHgKWM6YPEd/oDf9cbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgqocVCuHZf9xVmxyqPsZQlHLauSyn1IMSb0peewTrfd+cgA4oSTYRrE
 Z26bUjjL2JnivqFXEym90iMFpHaH2eBZVPCAjtXvQTppnbPCVLCUuajz2TjB8+Pk7n7V8biG
 DaISqIQv3TGVZGtndE0qHlzUNsegymDjBNQ0E/lbc4OXXNu3513+POXKa13meLQnYpw+0WMl
 j+EHEvCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N5vJ3Gm2FYGOnaYaPvNd8Zp/LuryuusTXe
 /3QX7NEBrIT8cSnyCFrHcsPyd57EQ+mfTzwRv/8SyW2mU8Dfe6GiUue5grZ/Wnq07qSPaD3M
 8n0ZYbve6sPn7wbdDD46fNdDJHIg7Sp2nzb+xAk+EigYsC8J9IW7/cWn/08VsC+jMUBsL9jl
 kfT6R2+6qpAP4lQ+UiPwZiumM0n9GOJnYxugP4AuUCbUgg5kWrS++h0v7tk/4TGUWPqwv7BE
 mH/wBc9/nDWTGf1bRyMdNHHU1mLGw94m9l5uWMasn5DxirbfhK+DOBQzKAWY4YbKiOArMLqB
 lmp/mOgu+MbiL9nCTdpyFyLK4L02GpR6qJcU6xMN8N19yxIlKXhKS2pOa1kTfsUDO+L30iur
 ctTz1ZUu1zzh84jIM21SCuSqv45mId+mEunw1PpxrKwYip4GDSAEdcFxbW668mBQVuDg==
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42165823"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XILLV7JXe+BqA38Y1+30WmOhh9sFlQii+QvtAOnw5PAJzFJzlEpkbtbchD7y5w8Da+PffvtEJ8fs0sgoD/CxphCRDijixqsVSqGhsUkf7Ccw3qLHIaaY19bbzNlrldig7z11rbM65pkfeja/orgIFpq+wWPFGR8GfgruZUMCpPs+mLV/RZHKhHRuop3/N5WqCIup9U/uAN/398/DvWaqWIM7AWyWNKM8aV7tTq4P3EJ5likRvYgfVuwaO+bpFSZ1XjIQj3AjqNi8nn9LtdaA4DBjXee/15rS3grkVWACcnHW7cRX9Xb2hc6N6NfgiFTm0znMLZ0hYDdZ2N4A5y9SgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=b605RN8JIIFLEBxtm9Y/iFQiowI32YEdALrDHV9GPSY=;
 b=afcOc4Ui8L22mOUWf7Tbjh7zjVox+wOtXPqDirmMmiXGv0X9h+yOC8PpDomqgZqN18nB7HpLla9FApvv0G6VBVmWfkGpWSb7qg/USFN1WPBjNod8Jdsa42+/7td+WdRxX/zYUBfUZTT1RV+vC6tCv7OhEEz3eeHiH38iiQ38gapWSoE6OBowi+/yOr8RT+4DrMYhwpJ1j6Dg+sYqJ7CNh2Br6U2vx1524kooT3qVzShTqf/q3r4u2vZNTw0M24j1RkHfYCDxA2+FJ6cS3iaTBm2QBQA2/2fL+nWs4AaqS/XR0G6V4N6wbnhf57y7xlHK1+wz4dhFYdg0THKMQKyNvg==
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=b605RN8JIIFLEBxtm9Y/iFQiowI32YEdALrDHV9GPSY=;
 b=QPwUmRjwVsBZKDauVDgLwPSVZ79QwDTZzL9TGGEjrx9QvRiq10CgCP2Ly1IOTdJC6vMq/HiAZWorSUpUxxkCJfKyQMKTjvNLZAwwIxOgb8N5g0kvUhyR2egmPwdzI4A3u6JjqHCd+97I4/4CknQMlbJ4atGVhAr+hl+JbxXmASk=
Date: Thu, 22 Apr 2021 12:56: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>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <YIFWUnQ6d4Pk7nf4@Air-de-Roger>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
 <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
 <YIFRQu/CLEId2uMi@Air-de-Roger>
 <d877502d-9c18-6ff3-6e01-ee997c9f196a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <d877502d-9c18-6ff3-6e01-ee997c9f196a@suse.com>
X-ClientProxiedBy: AM6PR0202CA0040.eurprd02.prod.outlook.com
 (2603:10a6:20b:3a::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8088c030-05d6-4251-122f-08d9057d45f1
X-MS-TrafficTypeDiagnostic: DM6PR03MB3948:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB39487558893B6BF6DA42A7F68F469@DM6PR03MB3948.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: uVeo10zzwGQGln4FcneuzlkaNjwQci7CVqbPUecqcf597FXYuHhWoIjNCOzKe1LI6Rn0ycEvQICRvHGGt4v/rTlar7JIYpkTM82fhB9DZNfXrhiF+LP2aV/bn8SDo4Ab589ye56EfunD/lNAsDo7Lw+bbeJgx2bhGYBHXUOL6V4REAoTIS/UC0yXZo6+8YVJKckjlKxe+ngtlSjKD4cI6FdLJaba3CyiiQ6H35xTZIZEqMMOjd9gRED0rJXIBOEaOSIFWY04LpF9bcn4ewzWghpGH/Pxj0xcGzkuCeTRR2sVuxvQ5vVVsEQg6P/tJFN0bk6igCdwuQJ2d/Luc8MGDyYiHJlPUjPIiMSCHRD78NwvTHCpWaPFSJAuStDr9xnrQVZmZY1C1o7yvtp28PIz9i51I71A7iZxNqCpdCnk2AlN9JoucOz2u0JR8fRqJIE3t2HVfrCBT716Qdzxl1jrZXfuGU+QB5Wi5rCJ2POUixCbUjkdOOsiYVh4LOj75QcOOFXYsJm6/McLpAm+cE3F9Wdzs7HK04yVlVHJOfuc3yVIRm61FuKnb3V+S3XqxlTW18FQKN2nhM5DU+T2ERJtdLECRNZCgB0H+dVr2j8Phvs=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(346002)(396003)(39860400002)(376002)(136003)(366004)(6486002)(9686003)(6496006)(5660300002)(6666004)(4326008)(38100700002)(66476007)(86362001)(53546011)(8936002)(83380400001)(85182001)(8676002)(66556008)(2906002)(66946007)(316002)(186003)(478600001)(33716001)(6916009)(16526019)(956004)(54906003)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 8088c030-05d6-4251-122f-08d9057d45f1
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 10:56:25.4015
 (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: GYfyVbzRMmzwjcyFjM1jcSSDe3QiErPwmQ4pn+yJEMo2rYm0Kiw9Pkk/lFRK4Jz4Elqm/GCKlwbk9AX1o3PE0w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3948
X-OriginatorOrg: citrix.com

On Thu, Apr 22, 2021 at 12:48:36PM +0200, Jan Beulich wrote:
> On 22.04.2021 12:34, Roger Pau Monné wrote:
> > On Thu, Apr 22, 2021 at 11:58:45AM +0200, Jan Beulich wrote:
> >> On 22.04.2021 11:42, Roger Pau Monné wrote:
> >>> On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
> >>>> On 13.04.2021 16:01, Roger Pau Monne wrote:
> >>>>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
> >>>>>  
> >>>>>      return false;
> >>>>>  }
> >>>>> +
> >>>>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
> >>>>> +{
> >>>>> +    uint64_t val = val1 & val2;;
> >>>>
> >>>> For arbitrary MSRs this isn't going to do any good. If only very
> >>>> specific MSRs are assumed to make it here, I think this wants
> >>>> commenting on.
> >>>
> >>> I've added: "MSRs passed to level_msr are expected to be bitmaps of
> >>> features"
> >>
> >> How does such a comment help? I.e. how does the caller tell which MSRs
> >> to pass here and which to deal with anyother way?
> > 
> > All MSRs should be passed to level_msr, but it's handling logic would
> > need to be expanded to support MSRs that are not feature bitmaps.
> > 
> > It might be best to restore the previous switch and handle each MSR
> > specifically?
> 
> I think so, yes. We need to be very careful with what a possible
> default case does there, though.

Maybe it would be better to handle level_msr in a way similar to
level_leaf: return true/false to notice whether the MSR should be
added to the resulting compatible policy?

And then make the default case in level_msr just return false in order
to prevent adding MSRs not properly leveled to the policy?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 11:03:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 11:03:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115281.219843 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZX76-0004hQ-6i; Thu, 22 Apr 2021 11:03:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115281.219843; Thu, 22 Apr 2021 11:03:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZX76-0004hJ-3g; Thu, 22 Apr 2021 11:03:16 +0000
Received: by outflank-mailman (input) for mailman id 115281;
 Thu, 22 Apr 2021 11:03:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZX74-0004hE-MF
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 11:03:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dfe6e62c-f4cd-443b-bb8b-50f45f4ef8ed;
 Thu, 22 Apr 2021 11:03:13 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C9B75B140;
 Thu, 22 Apr 2021 11:03: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: dfe6e62c-f4cd-443b-bb8b-50f45f4ef8ed
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619089392; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7iNoklgm6JQu7xkYYO3/Pd4UfNKFHRvv592T+kRUroc=;
	b=FFsRYvkibu6SDCWOudnT5K9gNoBa4cUk9xR0onJpjBYk60m1P+hCcB++W26xb5sd0WH+1h
	osFcVEBDL//FZhLmaUbTr9EPAoA4AyXR+JFv5H/wlFqREUFSWscjfvZm+T3Ze8pB4cgkui
	jDiz+WJi0SUABLFqYrpPT5Kp6kdhLpM=
Subject: Re: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
Date: Thu, 22 Apr 2021 13:03:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIEwW3HQuTtgWH5M@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 10:14, Roger Pau Monné wrote:
> On Wed, Apr 21, 2021 at 05:38:42PM +0200, Jan Beulich wrote:
>> On 21.04.2021 17:30, Roger Pau Monné wrote:
>>> On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
>>>> On 21.04.2021 13:15, Roger Pau Monné wrote:
>>>>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
>>>>>> --- a/xen/arch/x86/xen.lds.S
>>>>>> +++ b/xen/arch/x86/xen.lds.S
>>>>>> @@ -312,10 +312,60 @@ SECTIONS
>>>>>>      *(.reloc)
>>>>>>      __base_relocs_end = .;
>>>>>>    }
>>>>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
>>>>>> -  . = ALIGN(__section_alignment__);
>>>>>> -  DECL_SECTION(.pad) {
>>>>>> -    . = ALIGN(MB(16));
>>>>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
>>>>>> +     *(.debug_abbrev)
>>>>>> +  }
>>>>>> +  .debug_info ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_info)
>>>>>> +    *(.gnu.linkonce.wi.*)
>>>>>> +  }
>>>>>> +  .debug_types ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_types)
>>>>>> +  }
>>>>>> +  .debug_str ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_str)
>>>>>> +  }
>>>>>> +  .debug_line ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_line)
>>>>>> +    *(.debug_line.*)
>>>>>> +  }
>>>>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_line_str)
>>>>>> +  }
>>>>>> +  .debug_names ALIGN(4) (NOLOAD) : {
>>>>>> +    *(.debug_names)
>>>>>> +  }
>>>>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
>>>>>> +    *(.debug_frame)
>>>>>> +  }
>>>>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_loc)
>>>>>> +  }
>>>>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
>>>>>> +    *(.debug_loclists)
>>>>>> +  }
>>>>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
>>>>>> +    *(.debug_ranges)
>>>>>> +  }
>>>>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
>>>>>> +    *(.debug_rnglists)
>>>>>> +  }
>>>>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
>>>>>> +    *(.debug_addr)
>>>>>> +  }
>>>>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_aranges)
>>>>>> +  }
>>>>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_pubnames)
>>>>>> +  }
>>>>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
>>>>>> +    *(.debug_pubtypes)
>>>>>> +  }
>>>>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
>>>>>> +  __image_end__ = .;
>>>>>> +  .pad ALIGN(__section_alignment__) : {
>>>>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
>>>>>
>>>>> I think this is inside an ifdef EFI region, since this is DWARF info
>>>>> couldn't it also be present when building with EFI disabled?
>>>>
>>>> Of course (and it's not just "could" but "will"), yet the linker will
>>>> do fine (and perhaps even better) without when building ELF. Also
>>>> note that we'll be responsible for keeping the list of sections up-to-
>>>> date. The linker will recognize Dwarf sections by looking for a
>>>> .debug_ prefix. We can't use such here (or at least I'm not aware of
>>>> a suitable mechanism); .debug_* would mean munging together all the
>>>> different kinds of Dwarf sections. Hence by limiting the explicit
>>>> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
>>>
>>> Right, so we will have to keep this list of debug_ sections updated
>>> manually if/when more of those appear as part of DWARF updates?
>>
>> Yes.
>>
>>> Do we have a way to get some kind of warning or error when a new
>>> section not explicitly handled here appears?
>>
>> ld 2.37 will start warning about such sections, as they'd land at
>> VA 0 and hence below image base.
> 
> That seems like a bug in ld?
> 
> The '--image-base' option description mentions: "This is the lowest
> memory location that will be used when your program or dll is
> loaded.", so I would expect that if the option is used the default VA
> should be >= image-base, or else the description of the option is not
> consistent, as ld will still place sections at addresses below
> image-base.

ld's "general" logic is pretty ELF-centric. Hence debugging sections
get placed at VA 0 by default, not matter what the (PE-specific)
--image-base says. Whether that's a bug though I'm not sure: There
are no really good alternatives that could be used by default. Doing
what we do here (and what e.g. Cygwin does) via linker script may not
be appropriate in the common case. In particular it is not generally
correct for debug info to be part of what gets loaded into memory.
Microsoft's CodeView / PDB debug info gets represented differently,
for example, such that it can be part of the file, but wouldn't get
loaded. But that's a vendor's choice, again not something that's
necessarily generalizable.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 11:05:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 11:05:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115288.219855 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZX9C-0004yB-N2; Thu, 22 Apr 2021 11:05:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115288.219855; Thu, 22 Apr 2021 11: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 1lZX9C-0004y4-Jy; Thu, 22 Apr 2021 11:05:26 +0000
Received: by outflank-mailman (input) for mailman id 115288;
 Thu, 22 Apr 2021 11:05:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZX9B-0004xz-D2
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 11:05:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3f667938-496e-4ad5-8c4d-dac2873f9c81;
 Thu, 22 Apr 2021 11:05:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B5B64AD8D;
 Thu, 22 Apr 2021 11:05: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: 3f667938-496e-4ad5-8c4d-dac2873f9c81
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619089523; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=kUYTcQUp0/mJCLYPG6gLPeNLdSxlpqqTB7glypM/QhA=;
	b=qvqgXQubzLvTMwLVWUMrn9luStIPYCzphfFC5RlCJM/H38wM4wRhIj3VZ0qZWvExS6MZz7
	QwzHVeXtHe97lJqQ4pAspy2tYZ4TW9K+Sqd26rSOQIk/uxIQOk19bPPfezvtAA/OhBVaUe
	tlvpIL5edVUa9l00tB3OXDWYd+iw9tw=
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
 <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
 <YIFRQu/CLEId2uMi@Air-de-Roger>
 <d877502d-9c18-6ff3-6e01-ee997c9f196a@suse.com>
 <YIFWUnQ6d4Pk7nf4@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <320d9aca-1f72-f357-d303-487a67f39655@suse.com>
Date: Thu, 22 Apr 2021 13:05:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIFWUnQ6d4Pk7nf4@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 12:56, Roger Pau Monné wrote:
> On Thu, Apr 22, 2021 at 12:48:36PM +0200, Jan Beulich wrote:
>> On 22.04.2021 12:34, Roger Pau Monné wrote:
>>> On Thu, Apr 22, 2021 at 11:58:45AM +0200, Jan Beulich wrote:
>>>> On 22.04.2021 11:42, Roger Pau Monné wrote:
>>>>> On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
>>>>>> On 13.04.2021 16:01, Roger Pau Monne wrote:
>>>>>>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
>>>>>>>  
>>>>>>>      return false;
>>>>>>>  }
>>>>>>> +
>>>>>>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
>>>>>>> +{
>>>>>>> +    uint64_t val = val1 & val2;;
>>>>>>
>>>>>> For arbitrary MSRs this isn't going to do any good. If only very
>>>>>> specific MSRs are assumed to make it here, I think this wants
>>>>>> commenting on.
>>>>>
>>>>> I've added: "MSRs passed to level_msr are expected to be bitmaps of
>>>>> features"
>>>>
>>>> How does such a comment help? I.e. how does the caller tell which MSRs
>>>> to pass here and which to deal with anyother way?
>>>
>>> All MSRs should be passed to level_msr, but it's handling logic would
>>> need to be expanded to support MSRs that are not feature bitmaps.
>>>
>>> It might be best to restore the previous switch and handle each MSR
>>> specifically?
>>
>> I think so, yes. We need to be very careful with what a possible
>> default case does there, though.
> 
> Maybe it would be better to handle level_msr in a way similar to
> level_leaf: return true/false to notice whether the MSR should be
> added to the resulting compatible policy?
> 
> And then make the default case in level_msr just return false in order
> to prevent adding MSRs not properly leveled to the policy?

I'm afraid I'm not clear about the implications. What again is the
(planned?) final effect of an MSR not getting added there?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 11:38:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 11:38:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115297.219869 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZXeg-0007qy-7r; Thu, 22 Apr 2021 11:37:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115297.219869; Thu, 22 Apr 2021 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 1lZXeg-0007qr-4u; Thu, 22 Apr 2021 11:37:58 +0000
Received: by outflank-mailman (input) for mailman id 115297;
 Thu, 22 Apr 2021 11:37:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZXee-0007qm-Qk
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 11:37:56 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2b6ca517-b395-4729-b66f-5a9baafa3f76;
 Thu, 22 Apr 2021 11:37: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: 2b6ca517-b395-4729-b66f-5a9baafa3f76
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619091475;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ml2qelRoNeEw/w/rOdoKROzuQXzr+vv26hWg7rN2k4g=;
  b=ezcQ0dxKBh781LOX6WPrUO7p1uH6eLs/jfkP7yo0wXRGLZtgwHrQdn4S
   q7NMDSaglRvMG8XJScWMkQlOCk07Xrbs4xqXwzv6d8lE/GfTxLd1E7lln
   YILr45nhpyjZs04pkuxpF6+q+SUyzrzeqIGqfnfDh7aP+lEyh12iKp/7Q
   o=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Wberg1xC0CB7k7e37l3TmPm5RrkgcLijCv2OskEIN2BW2mzxqiwgxWMjxHhS7j3DREMWOdbToh
 1HaJkuqlxFuV8ku2f3huFUfIR3iOCvzG07A0bYWbEdo0s4u0LH/yzrnnJrqw+seFjNU7bp2exl
 HLGwCLEsc+31GodVJVVAUOfWrf8/4vGWRd8u2hZP3JmeQ5EEdAmECR/eZvHKwpqPrfVB7h8su8
 7Kgl7w3ICcTPR2p+yd6AZ+r4wuPRkh/QFoOAWYHcOf62o2z7SuB9bLupyEvNjNy6UWGymbRgox
 9yA=
X-SBRS: 5.2
X-MesageID: 42290484
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:oqCISatrEmMsCMlPZSE3gNlt7skCxIYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOj7U5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qz6Y
 5JSII7MtH5CDFB4frSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjztRICzzKDwReCBtA50lGJ
 2AoudGvSOnY3QLbsK9b0N1ItTrjdvNiZ7gfFo6HBYh8gaDlneF77T9Hhie0H4lIk9y6J0l9n
 XIlBG827W7v5iAu2Xh/kLwz7ATotvuzdNfGNeB4/J1FhzAghulDb4RPoGqkysypIiUmTIXuf
 nK5ywtJsFir07WF1vF3ifF/ynF/HIQ52T5yVme6EGT0vDRYD4hEcJOicZ4X3LimjIdlepx2q
 5KwG6V3qA/ZXir8VWflrq4Ii1CrUa6rWEvluQelRVkIPAjQYRcsJAF+wdtGIoAdRiKmLwPKv
 VkD83X+Z9tACqnRk3e11Mfp+CEbzAYGxeLRVU6ocqF0zRat2AR9Tpo+OUv2lgH754zUJ9C+q
 DtNblpjqhHSossYbt6H/ppe7r5NkX9BTb3dE6CK1XuE68Kf1rLtp7M+b0woMWnYoYBwpcekI
 nIOWko+1IaSgbLM4mjzZdL+hfCTCGWRjL20PxT4JB/p/nVWKfrGTfrciFsr+KQ59EkRuHLUf
 e6P5xbR9X5K3H1JIpP1wriH7FPNHglVtEPsNpTYSPPnuv7bqnR8sDLevfaI7TgVRw+XHnkP3
 cFVD/vYOpa6ESGXWL5nQjxV3vhdleXx+M0LIHqu8wojKQdPIxFtQYYzX6j4NuQFDFEuqsqOG
 tySYmX1p+TlC2TxyLl/m9pMh1SAgJ++7P7SU5HogcMLgfRebYHsNOPRHBK0BK8V1hCZvKTND
 Qai0V8+KqxIZDV7zslEcibPmWTiGZWg36WUZEGmOmm6d3+cp01SrYqMZYBVDnjJlhQo0JHuW
 1DYAgLSgv0DTX1k5ioi5QSGaX4bNlzgACiJOZOsnLBvUCgpcUiL0FrHQKGYIqyu0IDVjBUjl
 p+/+s0m7ybgwuiLmM5naAFKlFWUX+WB7hHFQyBQ41RltnQCUdNZFbPoQbfpwA4e2Ls+UlXom
 D6NyWbdcvGBUdntmlC3rzn9051cWuhb1t9A0oKw7FVJCDjgDJewOWLbq283y+qZlwOzvo0HR
 vFbTERSzkejeyf5VqwonKvBH8mzpIhMqjhF7wlaajUwW7oApaPj7s6E/hd+4tFONjivvQQa/
 +WfxaYIVrDeroU8j3QgkxgFDh/qXEin/+t5Qbs63Kg2mUjRdXVO1ZrStggUpihxlmhY8zN9p
 p3jdg457Ttdkrwb8OL0qHRYXpoLAjJrWu/UuEvrtR1sMsJxcxONqiedQGN8ndNmCgaBoPTsm
 g1Raxg+rDPOoN1ZaUpCmlk12tssO7KFVchtwz9P/Q3cl4shULKJt/h2cu9lZMfRmm64DbqMV
 aR8ydh7+7IciuK27kdEb8xKw1tGT4BwUUn2OOJbIvLDgq2M8lF4VqhK3e4GYUtBZStKPE1rh
 xg5cuPkPLSXy3k2BrItT8+Bq5V6W6oTYeTBw2LcNQ4v+CSCBCpgqGw5tS0gyqyYTyna14AjY
 kATHcuVK14+3Efpbxy9DOzRKzxql8klFUbwQgPrC+S5qGWpEHBHU9HNgXFhI5xRjc7CAnRsf
 j4
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42290484"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BpvsSgvPnpVEpsB6gfTuiAgU4Dgk94aoBBrpE5TJqdudotC/q1CV4Li200w5lDM75c6E3z8KGeakHP0i2vukzt79BN2hsH1nAnw1/F+aWYJaxGikQNG0fBwEvWKppR4NBbaGCdh2ONl5OjWfsFEmq5N0cXdjuMCPCKQQK4owt+5EBH/j5WfEcfuAGBjBrdyGR1NvGp7npkIVm5b9rfra+IU1wk2fzXRj1VK4Iq0XOIfsOqQdOxkdmetgFtbD1qiJChAiWelyYv5k9hfQW8j7kCI6s9+hUt9jnyVMmwqnjpbB7lKeb8AG+fy/URqjHdk/BzMsIgDHHo46KdGwJIQjcw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=htLj8WU6wm4I7XA0zn9KFIuwOuTxfkMX7ApT/yhLWfo=;
 b=DkmcCV8siJz4rwXInLOo8xGtJLDmvcLth/OsEoA5TMcfWfDpdU2y1mN5JYcATMRfxvphzTyByr7VX6kr4YVHVdfJ45gPZn1pIUBlEIlNTda+y59TlIK0D3/Opmmh4p6G4HFBBr0xNHJtVKbozVGBa3RyuLh5PJ981mmmHNziBIG+0d/P++MNrB6Q13NkzqHmcm7B7ZJnK/uB2xUgFZv68h7gOMDxuF7MEIyzLo9b91rqP1zBxxGLUJhUI5B2v7g+3R9lwBvUeAkHviugAY4xLCB5Bd+oZH2k72zT5GWHwdfHU6LFJ9F5AWVDA1wf3XWCdWkHG0kL51bUj8Hn2vVT5Q==
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=htLj8WU6wm4I7XA0zn9KFIuwOuTxfkMX7ApT/yhLWfo=;
 b=WcPJFDsriq7hqSDxEmgg3MJuAQcRjMJ5WgrPcttDPeulAQzf02VwhUPIbaa4wVtHUX9Xm0jOqnUvdvAiksYNN1OWWlEkhPM5/LgQI0Sn3ZTkMcxGnW6BydyvOnanM0ZcAKptFKJqPc5NB5g8hyw4UaouGBkL55SNAT4h0OW/m8Q=
Date: Thu, 22 Apr 2021 13:37:46 +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>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <YIFgCoyQaZefKZvi@Air-de-Roger>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
 <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
 <YIFRQu/CLEId2uMi@Air-de-Roger>
 <d877502d-9c18-6ff3-6e01-ee997c9f196a@suse.com>
 <YIFWUnQ6d4Pk7nf4@Air-de-Roger>
 <320d9aca-1f72-f357-d303-487a67f39655@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <320d9aca-1f72-f357-d303-487a67f39655@suse.com>
X-ClientProxiedBy: PR0P264CA0082.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:18::22) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5b802c10-a78f-4716-cb7d-08d905830f33
X-MS-TrafficTypeDiagnostic: DM5PR03MB3289:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB328983DB91B250193359C8608F469@DM5PR03MB3289.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 09uyR/CkFgF0qUihUwXqeaIyRZXjXUD2dU1SafRM+bsqIYEFJQmLa4AKtVq3WIQEMIEt9RywlY45qrjwTc0o5xjoUupkFRIPXm2USkuUKK6LLEMZNVxBNL877c/x13MV51unk/NCj7LaDjo5UJXTt2vW5EiGOtGd0tIIRgDgE9v59K4YH1a9OL2AlOxUKN17pjNJRrOTvZRPTLYVYjKxS1q4EA5n42d4KfaVNKi5x0rsGyW+1ogE9I3BhXwEcpNxrFV1euN8iy3urLOglrIKswLh9EXi5TUqJ0tts6Qvx10ANN0w5BURFOachXu/NN66bYbDYIrTZSdGkUICFLMkJ6VeikyUoN0ItCTW1qHXbivq0Sd0eyN5fuiBVOfxsTzeSFKN6Xwc3MH1mez/r1/1fZVV5IS7fCqSnXsPhdPW240GZpALg2uXWZE7ks8thGc/6G/DGHDhndYWti/mbnE8qYR3nNLD/Ck1U2U3KOZ5LugYIa12QgV/lGOPlZyUAmpo2lCo2c6143+J56ewNM6fYLuIooo2ClmrcJxE2dchLvXhf0cBYyXA4apNAygxXS3Jg6z9YBgy5xhO7FZJzmrl59oS70zR4TO8lBVr2VkENQI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(39860400002)(366004)(346002)(136003)(376002)(396003)(38100700002)(4326008)(478600001)(186003)(6666004)(16526019)(316002)(86362001)(9686003)(83380400001)(33716001)(5660300002)(66556008)(66946007)(8676002)(956004)(53546011)(26005)(6486002)(85182001)(8936002)(2906002)(54906003)(6916009)(6496006)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 5b802c10-a78f-4716-cb7d-08d905830f33
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 11:37:50.5335
 (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: wp9lZIGKRaKa6I6BQJNNerDXUbvWDzJpXd9dpTfdee6GAhg5SGys9NNDEFchb3lQLEE7bqqhuc21AtgszOo0Ag==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3289
X-OriginatorOrg: citrix.com

On Thu, Apr 22, 2021 at 01:05:23PM +0200, Jan Beulich wrote:
> On 22.04.2021 12:56, Roger Pau Monné wrote:
> > On Thu, Apr 22, 2021 at 12:48:36PM +0200, Jan Beulich wrote:
> >> On 22.04.2021 12:34, Roger Pau Monné wrote:
> >>> On Thu, Apr 22, 2021 at 11:58:45AM +0200, Jan Beulich wrote:
> >>>> On 22.04.2021 11:42, Roger Pau Monné wrote:
> >>>>> On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
> >>>>>> On 13.04.2021 16:01, Roger Pau Monne wrote:
> >>>>>>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
> >>>>>>>  
> >>>>>>>      return false;
> >>>>>>>  }
> >>>>>>> +
> >>>>>>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
> >>>>>>> +{
> >>>>>>> +    uint64_t val = val1 & val2;;
> >>>>>>
> >>>>>> For arbitrary MSRs this isn't going to do any good. If only very
> >>>>>> specific MSRs are assumed to make it here, I think this wants
> >>>>>> commenting on.
> >>>>>
> >>>>> I've added: "MSRs passed to level_msr are expected to be bitmaps of
> >>>>> features"
> >>>>
> >>>> How does such a comment help? I.e. how does the caller tell which MSRs
> >>>> to pass here and which to deal with anyother way?
> >>>
> >>> All MSRs should be passed to level_msr, but it's handling logic would
> >>> need to be expanded to support MSRs that are not feature bitmaps.
> >>>
> >>> It might be best to restore the previous switch and handle each MSR
> >>> specifically?
> >>
> >> I think so, yes. We need to be very careful with what a possible
> >> default case does there, though.
> > 
> > Maybe it would be better to handle level_msr in a way similar to
> > level_leaf: return true/false to notice whether the MSR should be
> > added to the resulting compatible policy?
> > 
> > And then make the default case in level_msr just return false in order
> > to prevent adding MSRs not properly leveled to the policy?
> 
> I'm afraid I'm not clear about the implications. What again is the
> (planned?) final effect of an MSR not getting added there?

Adding the MSR with a 0 value will zero out any previous value on the
'out' policy, while not adding it would leave the previous value
there given the current code in xc_cpu_policy_calc_compatible added by
this patch.

I would expect callers of xc_cpu_policy_calc_compatible to pass a
zeroed 'out' policy, so I think the end result should be the same.

Maybe I should also clear 'out' in xc_cpu_policy_calc_compatible, at
which point both options will get the same exact result.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 11:38:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 11:38:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115301.219882 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZXfX-0007wa-Ij; Thu, 22 Apr 2021 11:38:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115301.219882; Thu, 22 Apr 2021 11:38:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZXfX-0007wT-Eo; Thu, 22 Apr 2021 11:38:51 +0000
Received: by outflank-mailman (input) for mailman id 115301;
 Thu, 22 Apr 2021 11:38:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZXfW-0007wN-0u
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 11:38:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5c6ca6ff-4549-43c3-a431-3ed834baaec1;
 Thu, 22 Apr 2021 11:38:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B3DACAD8D;
 Thu, 22 Apr 2021 11:38: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: 5c6ca6ff-4549-43c3-a431-3ed834baaec1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619091527; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=X7yX/ted2E5C/j5NM3ejyEI0B4mH3miz2yFmcr7Iixw=;
	b=CXKnNZ+eNh3gofqcxrgdeBcUI082ghWbV2KVP/RMdlzcmHZNu8goIcVc0K31Bpm9Qu0tfk
	xdpqwe4YFCQJEYD3WUMBtPo7dme/rs6/vXzI3s62ezcsaYUfjt+A9o6sgVsmuBoLtCTs35
	7tY6uB3QOjYRJ84kFQy40nBsjVbLWws=
Subject: Ping: [PATCH v3] x86/CPUID: shrink max_{,sub}leaf fields according to
 actual leaf contents
From: Jan Beulich <jbeulich@suse.com>
To: Wei Liu <wl@xen.org>, Paul Durrant <paul@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
Message-ID: <9a2058cc-d6af-d01a-8630-ab897a75ccbc@suse.com>
Date: Thu, 22 Apr 2021 13:38:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 16.04.2021 15:16, Jan Beulich wrote:
> Zapping leaf data for out of range leaves is just one half of it: To
> avoid guests (bogusly or worse) inferring information from mere leaf
> presence, also shrink maximum indicators such that the respective
> trailing entry is not all blank (unless of course it's the initial
> subleaf of a leaf that's not the final one).
> 
> This is also in preparation of bumping the maximum basic leaf we
> support, to ensure guests not getting exposed related features won't
> observe a change in behavior.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

First of all - I'm sorry Paul, I forgot to Cc you on the original
submission.

May I ask for an ack or otherwise for the Viridian part of this?
Please be sure, however, that you have seen the earlier discussion,
also on v2, as Roger is questioning whether the Viridian change
here wouldn't better be dropped.

Jan

> ---
> v3: Record the actual non-empty subleaf in p->basic.raw[0x7], rather
>     than subleaf 0. Re-base over Viridian leaf 40000005 addition.
> v2: New.
> 
> --- a/tools/tests/cpu-policy/test-cpu-policy.c
> +++ b/tools/tests/cpu-policy/test-cpu-policy.c
> @@ -8,10 +8,13 @@
>  #include <err.h>
>  
>  #include <xen-tools/libs.h>
> +#include <xen/asm/x86-defns.h>
>  #include <xen/asm/x86-vendors.h>
>  #include <xen/lib/x86/cpu-policy.h>
>  #include <xen/domctl.h>
>  
> +#define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
> +
>  static unsigned int nr_failures;
>  #define fail(fmt, ...)                          \
>  ({                                              \
> @@ -553,6 +556,103 @@ static void test_cpuid_out_of_range_clea
>      }
>  }
>  
> +static void test_cpuid_maximum_leaf_shrinking(void)
> +{
> +    static const struct test {
> +        const char *name;
> +        struct cpuid_policy p;
> +    } tests[] = {
> +        {
> +            .name = "basic",
> +            .p = {
> +                /* Very basic information only. */
> +                .basic.max_leaf = 1,
> +                .basic.raw_fms = 0xc2,
> +            },
> +        },
> +        {
> +            .name = "cache",
> +            .p = {
> +                /* Cache subleaves present. */
> +                .basic.max_leaf = 4,
> +                .cache.subleaf[0].type = 1,
> +            },
> +        },
> +        {
> +            .name = "feat#0",
> +            .p = {
> +                /* Subleaf 0 only with some valid bit. */
> +                .basic.max_leaf = 7,
> +                .feat.max_subleaf = 0,
> +                .feat.fsgsbase = 1,
> +            },
> +        },
> +        {
> +            .name = "feat#1",
> +            .p = {
> +                /* Subleaf 1 only with some valid bit. */
> +                .basic.max_leaf = 7,
> +                .feat.max_subleaf = 1,
> +                .feat.avx_vnni = 1,
> +            },
> +        },
> +        {
> +            .name = "topo",
> +            .p = {
> +                /* Topology subleaves present. */
> +                .basic.max_leaf = 0xb,
> +                .topo.subleaf[0].type = 1,
> +            },
> +        },
> +        {
> +            .name = "xstate",
> +            .p = {
> +                /* First subleaf always valid (and then non-zero). */
> +                .basic.max_leaf = 0xd,
> +                .xstate.xcr0_low = XSTATE_FP_SSE,
> +            },
> +        },
> +        {
> +            .name = "extd",
> +            .p = {
> +                /* Commonly available information only. */
> +                .extd.max_leaf = 0x80000008,
> +                .extd.maxphysaddr = 0x28,
> +                .extd.maxlinaddr = 0x30,
> +            },
> +        },
> +    };
> +
> +    printf("Testing CPUID maximum leaf shrinking:\n");
> +
> +    for ( size_t i = 0; i < ARRAY_SIZE(tests); ++i )
> +    {
> +        const struct test *t = &tests[i];
> +        struct cpuid_policy *p = memdup(&t->p);
> +
> +        p->basic.max_leaf = ARRAY_SIZE(p->basic.raw) - 1;
> +        p->feat.max_subleaf = ARRAY_SIZE(p->feat.raw) - 1;
> +        p->extd.max_leaf = 0x80000000 | (ARRAY_SIZE(p->extd.raw) - 1);
> +
> +        x86_cpuid_policy_shrink_max_leaves(p);
> +
> +        /* Check the the resulting max (sub)leaf values against expecations. */
> +        if ( p->basic.max_leaf != t->p.basic.max_leaf )
> +             fail("  Test %s basic fail - expected %#x, got %#x\n",
> +                  t->name, t->p.basic.max_leaf, p->basic.max_leaf);
> +
> +        if ( p->extd.max_leaf != t->p.extd.max_leaf )
> +             fail("  Test %s extd fail - expected %#x, got %#x\n",
> +                  t->name, t->p.extd.max_leaf, p->extd.max_leaf);
> +
> +        if ( p->feat.max_subleaf != t->p.feat.max_subleaf )
> +             fail("  Test %s feat fail - expected %#x, got %#x\n",
> +                  t->name, t->p.feat.max_subleaf, p->feat.max_subleaf);
> +
> +        free(p);
> +    }
> +}
> +
>  static void test_is_compatible_success(void)
>  {
>      static struct test {
> @@ -668,6 +768,7 @@ int main(int argc, char **argv)
>      test_cpuid_serialise_success();
>      test_cpuid_deserialise_failure();
>      test_cpuid_out_of_range_clearing();
> +    test_cpuid_maximum_leaf_shrinking();
>  
>      test_msr_serialise_success();
>      test_msr_deserialise_failure();
> --- a/xen/arch/x86/cpuid.c
> +++ b/xen/arch/x86/cpuid.c
> @@ -341,6 +341,8 @@ static void __init calculate_host_policy
>          p->extd.raw[0xa].d |= ((1u << SVM_FEATURE_VMCBCLEAN) |
>                                 (1u << SVM_FEATURE_TSCRATEMSR));
>      }
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  static void __init guest_common_default_feature_adjustments(uint32_t *fs)
> @@ -410,6 +412,8 @@ static void __init calculate_pv_max_poli
>      recalculate_xstate(p);
>  
>      p->extd.raw[0xa] = EMPTY_LEAF; /* No SVM for PV guests. */
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  static void __init calculate_pv_def_policy(void)
> @@ -430,6 +434,8 @@ static void __init calculate_pv_def_poli
>      sanitise_featureset(pv_featureset);
>      cpuid_featureset_to_policy(pv_featureset, p);
>      recalculate_xstate(p);
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  static void __init calculate_hvm_max_policy(void)
> @@ -495,6 +501,8 @@ static void __init calculate_hvm_max_pol
>      sanitise_featureset(hvm_featureset);
>      cpuid_featureset_to_policy(hvm_featureset, p);
>      recalculate_xstate(p);
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  static void __init calculate_hvm_def_policy(void)
> @@ -519,6 +527,8 @@ static void __init calculate_hvm_def_pol
>      sanitise_featureset(hvm_featureset);
>      cpuid_featureset_to_policy(hvm_featureset, p);
>      recalculate_xstate(p);
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  void __init init_guest_cpuid(void)
> @@ -699,6 +709,8 @@ void recalculate_cpuid_policy(struct dom
>  
>      if ( !p->extd.page1gb )
>          p->extd.raw[0x19] = EMPTY_LEAF;
> +
> +    x86_cpuid_policy_shrink_max_leaves(p);
>  }
>  
>  int init_domain_cpuid_policy(struct domain *d)
> --- a/xen/arch/x86/hvm/viridian/viridian.c
> +++ b/xen/arch/x86/hvm/viridian/viridian.c
> @@ -124,7 +124,15 @@ void cpuid_viridian_leaves(const struct
>      switch ( leaf )
>      {
>      case 0:
> -        res->a = 0x40000006; /* Maximum leaf */
> +        /* Maximum leaf */
> +        cpuid_viridian_leaves(v, 0x40000006, 0, res);
> +        if ( res->a | res->b | res->c | res->d )
> +            res->a = 0x40000006;
> +        else
> +        {
> +            cpuid_viridian_leaves(v, 0x40000005, 0, res);
> +            res->a = 0x40000005 - !(res->a | res->b | res->c | res->d);
> +        }
>          memcpy(&res->b, "Micr", 4);
>          memcpy(&res->c, "osof", 4);
>          memcpy(&res->d, "t Hv", 4);
> --- a/xen/arch/x86/traps.c
> +++ b/xen/arch/x86/traps.c
> @@ -964,13 +964,15 @@ void cpuid_hypervisor_leaves(const struc
>      uint32_t base = is_viridian_domain(d) ? 0x40000100 : 0x40000000;
>      uint32_t idx  = leaf - base;
>      unsigned int limit = is_viridian_domain(d) ? p->hv2_limit : p->hv_limit;
> +    unsigned int dflt = is_pv_domain(d) ? XEN_CPUID_MAX_PV_NUM_LEAVES
> +                                        : XEN_CPUID_MAX_HVM_NUM_LEAVES;
>  
>      if ( limit == 0 )
>          /* Default number of leaves */
> -        limit = XEN_CPUID_MAX_NUM_LEAVES;
> +        limit = dflt;
>      else
>          /* Clamp toolstack value between 2 and MAX_NUM_LEAVES. */
> -        limit = min(max(limit, 2u), XEN_CPUID_MAX_NUM_LEAVES + 0u);
> +        limit = min(max(limit, 2u), dflt);
>  
>      if ( idx > limit )
>          return;
> --- a/xen/include/public/arch-x86/cpuid.h
> +++ b/xen/include/public/arch-x86/cpuid.h
> @@ -113,6 +113,10 @@
>  /* Max. address width in bits taking memory hotplug into account. */
>  #define XEN_CPUID_MACHINE_ADDRESS_WIDTH_MASK (0xffu << 0)
>  
> -#define XEN_CPUID_MAX_NUM_LEAVES 5
> +#define XEN_CPUID_MAX_PV_NUM_LEAVES 5
> +#define XEN_CPUID_MAX_HVM_NUM_LEAVES 4
> +#define XEN_CPUID_MAX_NUM_LEAVES \
> +    (XEN_CPUID_MAX_PV_NUM_LEAVES > XEN_CPUID_MAX_HVM_NUM_LEAVES ? \
> +     XEN_CPUID_MAX_PV_NUM_LEAVES : XEN_CPUID_MAX_HVM_NUM_LEAVES)
>  
>  #endif /* __XEN_PUBLIC_ARCH_X86_CPUID_H__ */
> --- a/xen/include/xen/lib/x86/cpuid.h
> +++ b/xen/include/xen/lib/x86/cpuid.h
> @@ -351,6 +351,13 @@ void x86_cpuid_policy_fill_native(struct
>   */
>  void x86_cpuid_policy_clear_out_of_range_leaves(struct cpuid_policy *p);
>  
> +/**
> + * Shrink max leaf/subleaf values such that the last respective valid entry
> + * isn't all blank.  While permitted by the spec, such extraneous leaves may
> + * provide undue "hints" to guests.
> + */
> +void x86_cpuid_policy_shrink_max_leaves(struct cpuid_policy *p);
> +
>  #ifdef __XEN__
>  #include <public/arch-x86/xen.h>
>  typedef XEN_GUEST_HANDLE_64(xen_cpuid_leaf_t) cpuid_leaf_buffer_t;
> --- a/xen/lib/x86/cpuid.c
> +++ b/xen/lib/x86/cpuid.c
> @@ -236,6 +236,45 @@ void x86_cpuid_policy_clear_out_of_range
>                  ARRAY_SIZE(p->extd.raw) - 1);
>  }
>  
> +void x86_cpuid_policy_shrink_max_leaves(struct cpuid_policy *p)
> +{
> +    unsigned int i;
> +
> +    p->basic.raw[0x4] = p->cache.raw[0];
> +
> +    for ( i = p->feat.max_subleaf; i; --i )
> +        if ( p->feat.raw[i].a | p->feat.raw[i].b |
> +             p->feat.raw[i].c | p->feat.raw[i].d )
> +            break;
> +    p->feat.max_subleaf = i;
> +    p->basic.raw[0x7] = p->feat.raw[i];
> +
> +    p->basic.raw[0xb] = p->topo.raw[0];
> +
> +    /*
> +     * Due to the way xstate gets handled in the hypervisor (see
> +     * recalculate_xstate()) there is (for now at least) no need to fiddle
> +     * with the xstate subleaves (IOW we assume they're already in consistent
> +     * shape, for coming from either hardware or recalculate_xstate()).
> +     */
> +    p->basic.raw[0xd] = p->xstate.raw[0];
> +
> +    for ( i = p->basic.max_leaf; i; --i )
> +        if ( p->basic.raw[i].a | p->basic.raw[i].b |
> +             p->basic.raw[i].c | p->basic.raw[i].d )
> +            break;
> +    p->basic.max_leaf = i;
> +
> +    for ( i = p->extd.max_leaf & 0xffff; i; --i )
> +        if ( p->extd.raw[i].a | p->extd.raw[i].b |
> +             p->extd.raw[i].c | p->extd.raw[i].d )
> +            break;
> +    if ( i | p->extd.raw[0].b | p->extd.raw[0].c | p->extd.raw[0].d )
> +        p->extd.max_leaf = 0x80000000 | i;
> +    else
> +        p->extd.max_leaf = 0;
> +}
> +
>  const uint32_t *x86_cpuid_lookup_deep_deps(uint32_t feature)
>  {
>      static const uint32_t deep_features[] = INIT_DEEP_FEATURES;
> 



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 11:42:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 11:42:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115310.219897 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZXjN-0000QR-9l; Thu, 22 Apr 2021 11:42:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115310.219897; Thu, 22 Apr 2021 11:42: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 1lZXjN-0000QK-6g; Thu, 22 Apr 2021 11:42:49 +0000
Received: by outflank-mailman (input) for mailman id 115310;
 Thu, 22 Apr 2021 11:42:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZXjL-0000QF-8z
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 11:42:47 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a872038b-2e75-4c90-8b3a-487a43aee638;
 Thu, 22 Apr 2021 11:42:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 582E1AD8D;
 Thu, 22 Apr 2021 11:42: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: a872038b-2e75-4c90-8b3a-487a43aee638
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619091765; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Jv8CDtHU9y7mrGsR1ty+Y53Z0UbXKZZl7uNWPAUhCVg=;
	b=VEG1PTJW4z4aF9crsvcgrCfodPRlH3Hulcu/Bb958CuOyNtJW/hOkChSlEO5i1OYBrkSsM
	dcY6XOQhl4LzNyF61Q1ce0wSym/zpeNlgkMCay0rwrib2I4d0lMfWvZb7tOT2MoorzIpDk
	kPz1boDDKLn84ixpOVd5AxyFTrAG2cE=
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
 <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
 <YIFRQu/CLEId2uMi@Air-de-Roger>
 <d877502d-9c18-6ff3-6e01-ee997c9f196a@suse.com>
 <YIFWUnQ6d4Pk7nf4@Air-de-Roger>
 <320d9aca-1f72-f357-d303-487a67f39655@suse.com>
 <YIFgCoyQaZefKZvi@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <8a25c636-d20c-f45f-0901-314b22b70bfe@suse.com>
Date: Thu, 22 Apr 2021 13:42:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIFgCoyQaZefKZvi@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 13:37, Roger Pau Monné wrote:
> On Thu, Apr 22, 2021 at 01:05:23PM +0200, Jan Beulich wrote:
>> On 22.04.2021 12:56, Roger Pau Monné wrote:
>>> On Thu, Apr 22, 2021 at 12:48:36PM +0200, Jan Beulich wrote:
>>>> On 22.04.2021 12:34, Roger Pau Monné wrote:
>>>>> On Thu, Apr 22, 2021 at 11:58:45AM +0200, Jan Beulich wrote:
>>>>>> On 22.04.2021 11:42, Roger Pau Monné wrote:
>>>>>>> On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
>>>>>>>> On 13.04.2021 16:01, Roger Pau Monne wrote:
>>>>>>>>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
>>>>>>>>>  
>>>>>>>>>      return false;
>>>>>>>>>  }
>>>>>>>>> +
>>>>>>>>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
>>>>>>>>> +{
>>>>>>>>> +    uint64_t val = val1 & val2;;
>>>>>>>>
>>>>>>>> For arbitrary MSRs this isn't going to do any good. If only very
>>>>>>>> specific MSRs are assumed to make it here, I think this wants
>>>>>>>> commenting on.
>>>>>>>
>>>>>>> I've added: "MSRs passed to level_msr are expected to be bitmaps of
>>>>>>> features"
>>>>>>
>>>>>> How does such a comment help? I.e. how does the caller tell which MSRs
>>>>>> to pass here and which to deal with anyother way?
>>>>>
>>>>> All MSRs should be passed to level_msr, but it's handling logic would
>>>>> need to be expanded to support MSRs that are not feature bitmaps.
>>>>>
>>>>> It might be best to restore the previous switch and handle each MSR
>>>>> specifically?
>>>>
>>>> I think so, yes. We need to be very careful with what a possible
>>>> default case does there, though.
>>>
>>> Maybe it would be better to handle level_msr in a way similar to
>>> level_leaf: return true/false to notice whether the MSR should be
>>> added to the resulting compatible policy?
>>>
>>> And then make the default case in level_msr just return false in order
>>> to prevent adding MSRs not properly leveled to the policy?
>>
>> I'm afraid I'm not clear about the implications. What again is the
>> (planned?) final effect of an MSR not getting added there?
> 
> Adding the MSR with a 0 value will zero out any previous value on the
> 'out' policy, while not adding it would leave the previous value
> there given the current code in xc_cpu_policy_calc_compatible added by
> this patch.
> 
> I would expect callers of xc_cpu_policy_calc_compatible to pass a
> zeroed 'out' policy, so I think the end result should be the same.

But we're not talking about actual MSR values here, as this is all
about policy. So in the end we'll have to see how things need to
be once we have the first non-feature-flag-like entries there. It
feels as if simply zeroing can't be generally the right thing in
such a case. It may e.g. be that min() is wanted instead.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 11:48:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 11:48:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115322.219933 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZXoI-0000pA-4h; Thu, 22 Apr 2021 11:47:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115322.219933; Thu, 22 Apr 2021 11: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 1lZXoI-0000p3-1J; Thu, 22 Apr 2021 11:47:54 +0000
Received: by outflank-mailman (input) for mailman id 115322;
 Thu, 22 Apr 2021 11:47:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=21uR=JT=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lZXoH-0000oy-7o
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 11:47:53 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id d8cb1487-332a-484c-b01d-3e1906bb3109;
 Thu, 22 Apr 2021 11:47:51 +0000 (UTC)
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 B4FAD13A1;
 Thu, 22 Apr 2021 04:47:50 -0700 (PDT)
Received: from [10.57.23.240] (unknown [10.57.23.240])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 921A73F774;
 Thu, 22 Apr 2021 04: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: d8cb1487-332a-484c-b01d-3e1906bb3109
Subject: Re: [PATCH 5/9] arm/mm: Get rid of READ/WRITE_SYSREG32
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-6-michal.orzel@arm.com>
 <32bfa7d7-33cb-0deb-32bb-fa7d2052e0d9@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <3cee323f-7273-094f-150f-8f790a347d87@arm.com>
Date: Thu, 22 Apr 2021 13:47:43 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <32bfa7d7-33cb-0deb-32bb-fa7d2052e0d9@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Julien,

On 20.04.2021 15:37, Julien Grall wrote:
> Hi Michal,
> 
> On 20/04/2021 08:08, Michal Orzel wrote:
>> AArch64 system registers are 64bit whereas AArch32 ones
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 sysregs have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
>>
>> Modify SCTLR_EL2 accesses to use READ/WRITE_SYSREG.
> 
> SCTLR_EL2 already has bits defined in the range [32:63]. So this change is going to have a side effect as AFAICT head.S will not touch those bits. So they are now going to be preserved.
> 
> The Arm Arm defines them as unknown if implemented. Therefore shouldn't we zero them somewhere else?
> 
SCTLR_EL2 is set in head.S using SCTLR_EL2_SET which means that we are zeroing the upper 32bit half.

> In any case, I think the commit message ought to contain an analysis for system registers that happened to have bits defined in the range [32:63].
> 
>>
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> ---
>>   xen/arch/arm/mm.c    | 2 +-
>>   xen/arch/arm/traps.c | 2 +-
>>   2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
>> index 59f8a3f15f..0e07335291 100644
>> --- a/xen/arch/arm/mm.c
>> +++ b/xen/arch/arm/mm.c
>> @@ -613,7 +613,7 @@ void __init remove_early_mappings(void)
>>    */
>>   static void xen_pt_enforce_wnx(void)
>>   {
>> -    WRITE_SYSREG32(READ_SYSREG32(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2);
>> +    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.
>> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
>> index c7acdb2087..e7384381cc 100644
>> --- a/xen/arch/arm/traps.c
>> +++ b/xen/arch/arm/traps.c
>> @@ -915,7 +915,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
>>       printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
>>       printk("\n");
>>   -    printk(" SCTLR_EL2: %08"PRIx32"\n", READ_SYSREG32(SCTLR_EL2));
>> +    printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));
>>       printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
>>       printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
>>       printk("\n");
>>
> 
> Cheers,
> 

Cheers,
Michal


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 11:49:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 11:49:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115327.219945 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZXpn-0000xb-GT; Thu, 22 Apr 2021 11:49:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115327.219945; Thu, 22 Apr 2021 11:49: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 1lZXpn-0000xU-Cd; Thu, 22 Apr 2021 11:49:27 +0000
Received: by outflank-mailman (input) for mailman id 115327;
 Thu, 22 Apr 2021 11:49:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=00C0=JT=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZXpm-0000xN-Nn
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 11:49:26 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7e3223ce-014f-453f-b28e-b5d3dacd4e7b;
 Thu, 22 Apr 2021 11:49: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: 7e3223ce-014f-453f-b28e-b5d3dacd4e7b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619092165;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=y/SvzFxn2ov0Nhk0NDvzquny9bJF4g0Ycp5FeCkDVxM=;
  b=LQtL2Q5PIBLTjU+aMBOBLl1yUVqq5YhsG1PqeEJl70rdYYtx050l/NQT
   BhnzT8Gvyb+nv9sb0jlkjKnc65KG/qF3zBdKMp/BV81fT9eWb/CNMuzPn
   Jhnpx78h+nJnC1UHNFQrXNSoCaukrlag1NhOUWhTvQQo9rxo/2FWjC+09
   8=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ZM2s9fQMD7ziOEZ+vQ021SzsSJ/H+p4uiVh6/FBFjcYIXndlJQcsb8barLmgJnRwN3TlQ+JaVi
 xodThdyJjibrWhRaKXNcXV4JFk0a48MNVn1m73vd/dHF3eZV5Owr7eYRNURnqrlPrmhUuWLUEc
 88UWsagoqxvKRAGA3fgSBrm0+PHJ9vG6hewTf5xZnJL0rjr58WlxGoBsn3781K1htDZgZETlOC
 kKh33J7LP1ae8ieKs7Xlu3e24oukdL+N7CWAjG35o3xeaQK6QH/i2cOB0LQDYmUspcXqTFa/nZ
 aPw=
X-SBRS: 5.2
X-MesageID: 43660527
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23: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
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="43660527"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fcyZ9l/nt0s6qgS37CDVMgIWgjs726HW5FB3GKoRqkRv+xbySFd0n78PtT4zyYlcvvoz1BxpLcQD8KV5Z3u8WcQEZpJ2FMk38oI13T76tA56Gi5QXYNCMMuARDMvhI7/ieqv/O2UW97FKzwuZSYSLtU365xt6+hfFTzp4ugwqun5QE3Pn0HMDReCToXAQNG/JyEJydaw99XnW+dIOWzDEP0SOlQJSQ9lApJAdtSK/iRMxpDiwaD1f9m23OTAkkNR63WEfY7utb7Oubq3wYBVCzTJD3lCUoyQWYNcdDA/QCVfDsAVFLTvsWq5Nyj2yhfWgWl3pYA0jl3gMhN6Cg0h6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AuGSutb6tXApNa7uWxeh5/Kpi01VmEh80TySZWVu5tQ=;
 b=kcMZWAR8z8uyiCwp6XC+H28ZtxwttevuZWAkFIYqSo1GZveg+BCmro100onAw6bFIDyAHX/w1gAp9ONDmrJ1keZCfBIQ4nO490tnfbAsQ7akPdrRvcApyR0lrKBdSVQkkJQRaOesZqKXCp/HKyPcKrSDbCM820ogUgKCi69LQkcVzf53l70W+N/0YzzdMVLkz+xuCyorgg5ol7RT59gN4H5UZocHyc49hgXhacLhE3EnO+EIbYem9e+fVp1/NqDb+NfA/EnUN+NCHQkjjudpdILjOREkiN7D5BH6xK7huOrN0ST3Nl4I1A2N0m2Qqe49WpVKbqJ/GfsSSgIlYG/1hg==
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=AuGSutb6tXApNa7uWxeh5/Kpi01VmEh80TySZWVu5tQ=;
 b=hqgglFsPgETIiX/QTbKseDtVOoVArROmz1fw90PIjgRzuHjgDBGqubWi3dhU8So95iITDGQB6Q/yx3WpilFV7KDjElqD6uIHDhpVg1ntzEBZZQTOGjoH9bXp7yh/T4+OqIHm+HOZ/nHGEwKpsbcvl+QTMrVJhXiR831v03nu4tI=
To: Olaf Hering <olaf@aepfle.de>, <xen-devel@lists.xenproject.org>
CC: 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>, Anthony PERARD <anthony.perard@citrix.com>
References: <20210415131138.8709-1-olaf@aepfle.de>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v4] tools: create libxensaverestore
Message-ID: <39eb928b-161d-4870-93d2-8c15929aa32f@citrix.com>
Date: Thu, 22 Apr 2021 12:49:14 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210415131138.8709-1-olaf@aepfle.de>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0232.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:b::28) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3dd73c57-c1bf-4200-47f5-08d90584ab65
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6357:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB6357E2D6E2FA4A7A5166AB10BA469@SJ0PR03MB6357.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 7G7oNsIhQvh/zg/wM/StzuppQkI1wXlaZnqRI6TXjlzz1PuOOTiMEPA3awlOzWMnK7LGsD6KaDTiQTZUouWUP43kFNVkA3AGji4Dhn0HEmpfQGCJBnkpOhqBFfA5QuW3QCROIo8en43/F84dw0qLLe7X8YraNjRrHdoN5c6I8LgwuvqtXQPHvgvu0nMQv4/GFRrwytQRV7jSRyrTw/eCIOQbqk75ck4QanGSlOBc2UiZldto7ideBW7x5qPrKzIM9GuY7pZ7k1T6H2H4RJtRivvJCQcZgpZVA7NldaUCfxWdHsvFn4rSXvbWBiPUnZMWIAB6+HFELgyQzKjgHgqdURGOzVGxnE3orUoegoCFbrtXcC2GDIWHKjRuIp5nW/CeY+KyFpc4ayXCz75Z3dmBwm8mWs0FELW7YFX2bW1n8mg2Qs174g4KMEJIdwcCmHVb8wr2SD0P8wgvb/s8FlSIw4Cf3JTfxyfgGyIMpl0ftC6m2wVl3UYC8t/6u3/QA6qarkQ2OyJrjpfaszfn/4WxtMhxjremDY1R5D7COvdK24NA8Tv7dxCP14mTV1vln5ll9lIDFa/B1LCRwjZchUow386lksspEGjbb7ydeWGaAt49MfMjRSdtj+zVwK9hz4O7wqsOVkPWo0hNZ8JpUCRQxXMMaVpJgnactHHIFFg8mTJitEcpjEGRJJ33WNUAiPAf
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39860400002)(376002)(366004)(346002)(136003)(53546011)(16526019)(86362001)(31686004)(2906002)(83380400001)(5660300002)(66476007)(66946007)(66556008)(956004)(38100700002)(316002)(6486002)(16576012)(4326008)(26005)(8936002)(186003)(2616005)(8676002)(36756003)(478600001)(54906003)(31696002)(107886003)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?CCGKYckIr5DBIulgquijBXn9DGu/8YattSwW9V/?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3dd73c57-c1bf-4200-47f5-08d90584ab65
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 11:49:22.0268
 (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: 1a1d6PIpyDP6qhBr2JybsL68Xe6UiW3Bv4jQKevI24g0taox/avaEnpJD78e/S0VKII6Gql8PjQXu3bQa+DB0mCYTDW2aI+RoYS1gkYvpZA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6357
X-OriginatorOrg: citrix.com

On 15/04/2021 14:11, Olaf Hering wrote:
> Move all save/restore related code from libxenguest.so into a separate
> library libxensaverestore.so. The only consumer is libxl-save-helper.

"in tree consumer".

It's not the only consumer, but XenServer's equivalent of
libxl-save-helper is in a position to consume this library.

That said, if you've dropped the plans for the static version, I don't
see what the point is.=C2=A0 You're literally saving 15 pages of memory (so
nothing in the grand scheme of a userspace process), at the cost of
added effort for the dynamic loader.

In this form, there's a reasonable chance that it adds to the perf
problems you're trying to address.

> There is no need to have the moved code mapped all the time in binaries
> where libxenguest.so is used.
>
> According to size(1) the change is:
>    text	   data	    bss	    dec	    hex	filename
>  187183	   4304	     48	 191535	  2ec2f	guest/libxenguest.so.4.15.0
>
>  124106	   3376	     48	 127530	  1f22a	guest/libxenguest.so.4.15.0
>   67841	   1872	      8	  69721	  11059	saverestore/libxensaverestore.so.=
4.15.0
>
> While touching the files anyway, take the opportunity to drop the
> reduntant xg_sr_ filename prefix.
>
> Signed-off-by: Olaf Hering <olaf@aepfle.de>
> ---
> diff --git a/tools/libs/saverestore/Makefile b/tools/libs/saverestore/Mak=
efile
> new file mode 100644
> index 0000000000..48728b3be2
> --- /dev/null
> +++ b/tools/libs/saverestore/Makefile
> @@ -0,0 +1,38 @@
> +XEN_ROOT =3D $(CURDIR)/../../..
> +include $(XEN_ROOT)/tools/Rules.mk
> +
> +ifeq ($(CONFIG_MIGRATE),y)
> +SRCS-y +=3D common.c
> +SRCS-$(CONFIG_X86) +=3D common_x86.c
> +SRCS-$(CONFIG_X86) +=3D common_x86_pv.c
> +SRCS-$(CONFIG_X86) +=3D restore_x86_pv.c
> +SRCS-$(CONFIG_X86) +=3D restore_x86_hvm.c
> +SRCS-$(CONFIG_X86) +=3D save_x86_pv.c
> +SRCS-$(CONFIG_X86) +=3D save_x86_hvm.c
> +SRCS-y +=3D restore.c
> +SRCS-y +=3D save.c
> +else
> +SRCS-y +=3D nomigrate.c
> +endif

Depending on the answers to the general question above...

I don't think pulling nomigrate into this new library is sensible.=C2=A0 A
dedicate migration library, stubbed to errors based on some exterior
setting, is very rude.

Given the proposed new structure, the way this ought to be expressed is
libxl-save-restore-helper being conditional on CONFIG_MIGRATE in the
first place.

Also, xensaverestore is a mouthful.=C2=A0 If we are changing things, how
about xenmigrate instead?

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 11:54:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 11:54:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115332.219957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZXuj-0001qF-4e; Thu, 22 Apr 2021 11:54:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115332.219957; Thu, 22 Apr 2021 11: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 1lZXuj-0001q8-01; Thu, 22 Apr 2021 11:54:33 +0000
Received: by outflank-mailman (input) for mailman id 115332;
 Thu, 22 Apr 2021 11:54:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZXuh-0001q3-Tl
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 11:54:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3a7aaf6f-2beb-42a2-a497-6b2370ffaa50;
 Thu, 22 Apr 2021 11:54:31 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 26D02ADD7;
 Thu, 22 Apr 2021 11:54: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: 3a7aaf6f-2beb-42a2-a497-6b2370ffaa50
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619092470; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=I6B62RVRqHjCnKC0L1n5xwh/jCJ1mRG5P7GLWwxTp4A=;
	b=eqMkSFLPkiwbF8ENT6vscXyV5Rj1YAHUYkiKn78osphK/oVGyHJwnv9Jy2RGGT6+Al2DZ5
	7zQuqw2mAZGllF2faDcMr8LYwNyb8gyoJ4UIDCZgvD6mlpIn9AJlgo/72JvKHi511SEC0U
	e5xx87Tv6d8DVNZhRIR2JZGF5YHZrwY=
Subject: Re: [PATCH v10 01/13] x86/mm: rewrite virt_to_xen_l*e
To: Hongyan Xia <hx242@xen.org>
Cc: jgrall@amazon.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1619014052.git.hongyxia@amazon.com>
 <0ccd3883b0ec2e05d600bb593f8f0afd058adc43.1619014052.git.hongyxia@amazon.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b667c7ab-b12d-d46a-9318-925c4a19faaa@suse.com>
Date: Thu, 22 Apr 2021 13:54:30 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <0ccd3883b0ec2e05d600bb593f8f0afd058adc43.1619014052.git.hongyxia@amazon.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 16:15, Hongyan Xia wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Rewrite those functions to use the new APIs. Modify its callers to unmap
> the pointer returned. Since alloc_xen_pagetable_new() is almost never
> useful unless accompanied by page clearing and a mapping, introduce a
> helper alloc_map_clear_xen_pt() for this sequence.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Signed-off-by: Hongyan Xia <hongyxia@amazon.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>
albeit ...

> @@ -4941,33 +4961,33 @@ static l3_pgentry_t *virt_to_xen_l3e(unsigned long v)
>      if ( !(l4e_get_flags(*pl4e) & _PAGE_PRESENT) )
>      {
>          bool locking = system_state > SYS_STATE_boot;
> -        l3_pgentry_t *l3t = alloc_xen_pagetable();
> +        mfn_t l3mfn;
> +        l3_pgentry_t *l3t = alloc_mapped_pagetable(&l3mfn);
>  
>          if ( !l3t )
>              return NULL;
> -        clear_page(l3t);
> +        UNMAP_DOMAIN_PAGE(l3t);

... this immediate unmapping (and then re-mapping below) will imo
want re-doing down the road as well. Even if it's not a severe
performance hit, it's simply odd, at least to me.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 12:01:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 12:01:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115340.219969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZY1Z-0002sb-0q; Thu, 22 Apr 2021 12:01:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115340.219969; Thu, 22 Apr 2021 12:01:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZY1Y-0002sU-Tr; Thu, 22 Apr 2021 12:01:36 +0000
Received: by outflank-mailman (input) for mailman id 115340;
 Thu, 22 Apr 2021 12:01:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZY1X-0002sP-8L
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 12:01:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 453c8495-831f-4500-813c-fcee4237b7fb;
 Thu, 22 Apr 2021 12:01:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B0C59AECB;
 Thu, 22 Apr 2021 12:01: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: 453c8495-831f-4500-813c-fcee4237b7fb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619092893; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=jfmllAJETuTJI8/yiNsCHOA7bOf90gyg5EtanQuwziw=;
	b=HurDBztcKkhDLGYLAsYBu3Ut/igzBtFedujPiE+/JKFpIL3MONZcEBA1iMV3nPHUGCOANt
	sYcFlGj1mgpLOlcN5W+9EbYqlYfFV34KyPh2JHqf2433DwvSBPs4e5yjCGcYmG9Ri5HI0b
	9pRkRnhwB3Y1ujL+XMw0RoL5eSYWJjA=
Subject: Re: [PATCH v10 02/13] x86/mm: switch to new APIs in map_pages_to_xen
To: Hongyan Xia <hx242@xen.org>
Cc: jgrall@amazon.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1619014052.git.hongyxia@amazon.com>
 <f8a422d4da4a93cd9b2f788c4594a1efe82bf389.1619014052.git.hongyxia@amazon.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <31581ebc-0afd-f856-1937-7a8e0b5022a5@suse.com>
Date: Thu, 22 Apr 2021 14:01:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <f8a422d4da4a93cd9b2f788c4594a1efe82bf389.1619014052.git.hongyxia@amazon.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 16:15, Hongyan Xia wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Page tables allocated in that function should be mapped and unmapped
> now.
> 
> Take the opportunity to avoid a potential double map in
> map_pages_to_xen() by initialising pl1e to NULL and only map it if it
> was not mapped earlier.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Signed-off-by: Hongyan Xia <hongyxia@amazon.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 12:07:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 12:07:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115345.219980 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZY7E-00039r-Na; Thu, 22 Apr 2021 12:07:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115345.219980; Thu, 22 Apr 2021 12: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 1lZY7E-00039k-KV; Thu, 22 Apr 2021 12:07:28 +0000
Received: by outflank-mailman (input) for mailman id 115345;
 Thu, 22 Apr 2021 12:07:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZY7D-00039c-7f
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 12:07:27 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3974cd88-8b14-4c86-a065-ae78166c08be;
 Thu, 22 Apr 2021 12:07: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: 3974cd88-8b14-4c86-a065-ae78166c08be
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619093245;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=P9YORVNQrthxx0ZeB5Ly37D57AWXQcctB9yFbjDUv50=;
  b=C+7X9AXTzlV9qoEHaRRhfEpf+yINVTXECx+EJa67NQVYD9/mfQAwQf6J
   oCImIKVXnlBJ8VFfzeTPNm/rpz4BOuT5+87r3/9vB1/Hl7vDPoy2Np1Sx
   bFOxAfAWcW4rW/CVuM8NqU+WJNrzoCZN1M41E32vJ8RuKO0mC17kxywfd
   4=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: drYxEWN5Th6UBK2drMST3sAxYhuWaui/N4yKGv47Fs1remTQoEqgPK8PmHoHwb11Tww09aE3w8
 RJWhV0bsO/EIqmzCpTlWHpVjMp5HrRWCqXAI25uyFOZQrbhMgW6r6z6sobycJDUdGM+iKAz2kd
 XiluVV53Nl+dsAKJKb8f4iAX2Wu6baZzwOFm1ZGJS3ppBGcaKs6dMcvfagGHrVAEAtjb7y4IIz
 ijtWeG0LMBZc7ROvnjFIePZKAA+glFE7omVWvWJM4uxYohtQCC8dVtAJw8DvdrpW+PKN7kFh4B
 aqE=
X-SBRS: 5.2
X-MesageID: 43661946
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:NQNdJa7VIy9ick6+1QPXwXiEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbTqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH76GL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnk4j41VTRTzbA+tV
 XUigCR3NTZj9iX6D/5k1XS4ZNfhcf7xrJ4avCkp8AJJlzX+2SVTat7XbnqhkFRnMiO7xIQnM
 DIs1McOa1Img/sV0WUhTeo5AX6yjYp7BbZuC+lqF/uu9bwSj5/K+cpv/MhTjLj50AtvM5x3c
 twtgrz3fonbmKzoA3H69fFTB1snEavyEBS6dI7tHBDTZAYLIZYsI13xjIlLL47ACn45Io7ed
 Meav302fA+SyL/U1np+kNrwNCqQ00pGAaHTkUoqqWuokZrtUE84E0CyMMFmHAcsLo7Vplf/u
 zBdp9ljbdUU6YtHO5ALdZEZfHyJn3GQBrKPm7XCVP7FJsfM3aIj5Ls+r066MyjZZRg9up8pL
 3xFHdj8UIicUPnDsODmLdR9ArWfWm7VTPxjulD+plQoNTHNfrWGBzGbGprv9qrov0ZDMGece
 20IohqD/jqKnarMZpV3jf5R4JZJRAlIYwok+d+f2jLjtPAK4XsuOCeWu3UPqDRHTEtXX66LW
 AEWBT1OcVc/mGmUnL1m3HqKjHQU3262ag1PLnR/uAVxoRIHJZLqBIphVOw4dzOCTAqiN1yQG
 JOZJfc1o+rr2i/+mjFq09zPABGM0pT6LL8F1dDpQoANVLIYa8O0u/vPVx67T+iHFtSXsnWGA
 lQqxBc4qSsNaGdwigkFpaBPn+FiWAQ4FaHVY0VlKHGxcqNQOJ3Mr8WHIhKUSnbHR18nghn7E
 1ZbhUfe0PZHjTyzYO/jJIVA+nbX8JmgBiiJPNVrX63jzTemegfAl8gGxK+W8+ehggjAxBOgE
 dqzqMZiL2c3Qq0JXAHm+Q+Ol1UYGGxCLZLZT71I7l8q/TOQkVdXG2KjTuVh1UWdnDx/0sfvG
 DnMBaZYOrGGFZbp3Be3Jv76V8cTBTvQ2tALlRB9aFtH2XPvXh+ldWGYae+yEO9QFoPyON1Ck
 CPXRIiZidVg/yn3h+cnziPUUg8zpI1J+rHEfAIaLfIwE6gL4WOiIALF/JZ54xeKdjrq+MHON
 jvPTO9HXfdMacEygaVrnEqNG1Is3Eii+rvwwCgw26i3nIzaMCiVmhOdvU+GZW74GflTfrTj8
 k8otIxoOeqMmL+LvSB0rraajZfKhXV5U66JttY3ax8jOYXjv9UGZKebB7jkFdg9z86JN3vlE
 wfTL9giYqxcrNHTog3QWZh4lEtlN6zN0MlvQz9P/8mcTgW/grmFuLMx4CNlKEmDUKArjbhIF
 Wz8yVS+PHeQiuIvIRqfJ4YECBzaEIm7m5l8/7HX4rMCB+yf+UrxivxDlaNNJtcQrOCA7Mes1
 JT5MyJhfaec27d1BrLtTV2ZoJI/GDPe7L+PCu8XcpJ+ce9I1KCn++D59Oyli7+TX+DUHsj7L
 c1PHA4X4BkkTktjIo+zyi0ROjWmyse4iRjyAAisEXs1Iig6HrcBmdcP2Ti88xrYQU=
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="43661946"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hb44G21mRuhIP1eibXrVBaaR8OmZrwUyIPIZcewmtYS3EELaDyS7rjT1I7I4a8CmrOgb1eQUpaSWmRog/7TOdRVsvE6GEcYVyCvXETWpqKDyMNnxzNKkcr06sTro3A5jhKUy4XXB7gZCCuA1iYMP6Tf/V9H+oqJ/LLfS2s4iObuV/3CilSMOx5wYqRKYguTOGdB/8Eho1z6M0J4d9DASLRm2c/v/q2nQScFkHsgtEcoy0A+cwVmwUemT7JjXulInF1yy0rOfeK9R4WKQ7TSabCg7HCzd4g2xtNE6HfPe1O/ObyBmcCkN+XJwblOF+bUrFgF+ZbBzfMMk07jqGlxpmA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wcxh3nJGwLfdM2OQFTxea2MPgv/IpA1AzKeJIVmPoSI=;
 b=Vgo7Kl0QFIYePfYTCzLi+3nWKqceBDzOBjyc/5apUTBDGh9jMH1wbjBMvmRCwKMfZlMM4wTztL78q/wx63/KZZHhoSQKSQ3OkfmAOuGpzkVoLyiEx2agewINHLDFCFFYgFqdOPPGMjByL4piC/S+owjvTRdPLb6l8hL/A6gKdOkqSBJLEgeNLCKaG8tdL25HjX3vjp08pkwJT3DVfVTlVdXhLYDD0R3pO36CrzZ7ZsQbcYr0mex4XtFtcRA0lZYUMOmwdSBCWd5EXq/k5nPblSW94Spk21nXNqOrXRnAQY4NLydYgnhQURwdUS753eL4b70Vg2GYd44ciMbSS+j2Pw==
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=wcxh3nJGwLfdM2OQFTxea2MPgv/IpA1AzKeJIVmPoSI=;
 b=k8jAhE0ltJqNhnvER+maIpe21483h2TqdavSpi1skzj+6E3YfwwYoxeX7IvtY2a7ji7lmuYLWcxZyABdI9LPcJAgfTvIMwKsL5vCYEo5ELw9hlKCRUGPQwiDUz0MYmlPtojCFxsIpX7wfv95H1PD7g9Qnd+H3GcJvC2er7i96hU=
Date: Thu, 22 Apr 2021 14:07:14 +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>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
Message-ID: <YIFm8tabpaLVsbfG@Air-de-Roger>
References: <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
 <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
 <YIFRQu/CLEId2uMi@Air-de-Roger>
 <d877502d-9c18-6ff3-6e01-ee997c9f196a@suse.com>
 <YIFWUnQ6d4Pk7nf4@Air-de-Roger>
 <320d9aca-1f72-f357-d303-487a67f39655@suse.com>
 <YIFgCoyQaZefKZvi@Air-de-Roger>
 <8a25c636-d20c-f45f-0901-314b22b70bfe@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8a25c636-d20c-f45f-0901-314b22b70bfe@suse.com>
X-ClientProxiedBy: MR2P264CA0101.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: de3638c5-16e8-4c56-931c-08d905872ea4
X-MS-TrafficTypeDiagnostic: DM6PR03MB5289:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB528942451EB5DA9F6EA3133A8F469@DM6PR03MB5289.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: It1LAn2tllKUmyTz1Cgr5FkmMTczfjqQNR1Ormz4AVgV/c0wxq/IgH56vNnqmSrc6/rV26IWhtlr8AjNFkTWBP/JQ/UHXd0cDaONMECmCCMSTCDPauPtlOkTbRh4R+Dgg73+viVRZT0RFA5CPPWRn+Wcf7J/9aMcKcN5JqfKYZD3SWCTYg6F8jy7y2vxZ1WHrnFRj9LsRsD2Q8shuH2W0nSvB0KgBm3C7SWnqnT0aGPaTmUDoCAuaTBoHEEX5irlag2rq9fAIPGwfJetRuhENi+IRjCXDp45iQilWK+VdT2YzJ8QUwr6+yt8D0p6c2KcknSTCNbE9XBM/CSivjt2lyeyvbwHYpCgosSJXNIhhk/RxuVBMusU4mdKWObhXjXJf7zSsKwKjg1FLyYHs56cS0Uuuo6G0VfJrgZF/+Erxrt4EXhHAYg3oDdqPeR8OvOcQJIYTvNAx568haTs1O+qG7FEg1Ku3Pr1/isLfB+fwgNrL5IFbe77pjIh9SNQPzfHz/xTNX8HkjYvULDdMnX522n0NS1i829Stx0rycIl0hWF+oC6dRAjN3BS3AUaD0PDoIo8gg7g/sMVnFkLJ+ptd5IBE5FYWZGgTAiWtzlA6HU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(136003)(346002)(396003)(376002)(39860400002)(66476007)(54906003)(6486002)(66556008)(86362001)(8676002)(85182001)(4326008)(5660300002)(53546011)(6496006)(9686003)(2906002)(956004)(6916009)(316002)(66946007)(186003)(16526019)(478600001)(33716001)(26005)(6666004)(38100700002)(8936002)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?cbIOTV7tanUcm0iUc7oTTjfH/MEmh94/h5Wh0SZ?=
X-MS-Exchange-CrossTenant-Network-Message-Id: de3638c5-16e8-4c56-931c-08d905872ea4
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 12:07:21.2838
 (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: dXQ1lfmzoXXhfGQmNDkqfJ6Mq5EGBfHY/3o7dSr6VleXUdKkq8ez0jghwnaJaeejFYcTlkptK70OX2ItywhPVQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5289
X-OriginatorOrg: citrix.com

On Thu, Apr 22, 2021 at 01:42:45PM +0200, Jan Beulich wrote:
> On 22.04.2021 13:37, Roger Pau Monné wrote:
> > On Thu, Apr 22, 2021 at 01:05:23PM +0200, Jan Beulich wrote:
> >> On 22.04.2021 12:56, Roger Pau Monné wrote:
> >>> On Thu, Apr 22, 2021 at 12:48:36PM +0200, Jan Beulich wrote:
> >>>> On 22.04.2021 12:34, Roger Pau Monné wrote:
> >>>>> On Thu, Apr 22, 2021 at 11:58:45AM +0200, Jan Beulich wrote:
> >>>>>> On 22.04.2021 11:42, Roger Pau Monné wrote:
> >>>>>>> On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
> >>>>>>>> On 13.04.2021 16:01, Roger Pau Monne wrote:
> >>>>>>>>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
> >>>>>>>>>  
> >>>>>>>>>      return false;
> >>>>>>>>>  }
> >>>>>>>>> +
> >>>>>>>>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
> >>>>>>>>> +{
> >>>>>>>>> +    uint64_t val = val1 & val2;;
> >>>>>>>>
> >>>>>>>> For arbitrary MSRs this isn't going to do any good. If only very
> >>>>>>>> specific MSRs are assumed to make it here, I think this wants
> >>>>>>>> commenting on.
> >>>>>>>
> >>>>>>> I've added: "MSRs passed to level_msr are expected to be bitmaps of
> >>>>>>> features"
> >>>>>>
> >>>>>> How does such a comment help? I.e. how does the caller tell which MSRs
> >>>>>> to pass here and which to deal with anyother way?
> >>>>>
> >>>>> All MSRs should be passed to level_msr, but it's handling logic would
> >>>>> need to be expanded to support MSRs that are not feature bitmaps.
> >>>>>
> >>>>> It might be best to restore the previous switch and handle each MSR
> >>>>> specifically?
> >>>>
> >>>> I think so, yes. We need to be very careful with what a possible
> >>>> default case does there, though.
> >>>
> >>> Maybe it would be better to handle level_msr in a way similar to
> >>> level_leaf: return true/false to notice whether the MSR should be
> >>> added to the resulting compatible policy?
> >>>
> >>> And then make the default case in level_msr just return false in order
> >>> to prevent adding MSRs not properly leveled to the policy?
> >>
> >> I'm afraid I'm not clear about the implications. What again is the
> >> (planned?) final effect of an MSR not getting added there?
> > 
> > Adding the MSR with a 0 value will zero out any previous value on the
> > 'out' policy, while not adding it would leave the previous value
> > there given the current code in xc_cpu_policy_calc_compatible added by
> > this patch.
> > 
> > I would expect callers of xc_cpu_policy_calc_compatible to pass a
> > zeroed 'out' policy, so I think the end result should be the same.
> 
> But we're not talking about actual MSR values here, as this is all
> about policy. So in the end we'll have to see how things need to
> be once we have the first non-feature-flag-like entries there. It
> feels as if simply zeroing can't be generally the right thing in
> such a case. It may e.g. be that min() is wanted instead.

Maybe level_msr should return an error for MSRs not explicitly
handled, that's propagated to the caller of
xc_cpu_policy_calc_compatible.

That way addition of new MSRs are not likely to miss adding the
required handling in level_msr?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 12:08:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 12:08:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115349.219993 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZY8J-0003Fu-3R; Thu, 22 Apr 2021 12:08:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115349.219993; Thu, 22 Apr 2021 12:08:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZY8I-0003Fn-V1; Thu, 22 Apr 2021 12:08:34 +0000
Received: by outflank-mailman (input) for mailman id 115349;
 Thu, 22 Apr 2021 12:08:33 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZY8H-0003Fi-L1
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 12:08:33 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 368856f3-9879-44f8-9ae8-d5348c398847;
 Thu, 22 Apr 2021 12:08:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7E5D0AFCF;
 Thu, 22 Apr 2021 12:08: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: 368856f3-9879-44f8-9ae8-d5348c398847
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619093311; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=gM3wRiK2q7vI9UoLH2uIpcw1Px4wmLFEOnAP9hU2FtA=;
	b=jCuAICes44DONa4GjAU4nB2n6bj9EVExiTf8dWRomjNEbrdVcOfnk+wZYVVmwB49QBRs/i
	zow0PYkd/qYr38Xm2Iybw2L7Jl27LaJogXqxYX8kY2rhP5JonDogPjODB3FMMTX2lmPB6q
	ulhKlpkCn4kR/SNps++aUF8BY1WPr1g=
Subject: Re: [PATCH v2 15/21] libs/guest: obtain a compatible cpu policy from
 two input ones
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <20210413140140.73690-16-roger.pau@citrix.com>
 <391b56d0-bb4d-8d3c-231c-e2e3ad7e2f42@suse.com>
 <YIFFBEhPYSYQhycf@Air-de-Roger>
 <c692e77f-1a9a-ea1d-e029-2a8f62ee0e35@suse.com>
 <YIFRQu/CLEId2uMi@Air-de-Roger>
 <d877502d-9c18-6ff3-6e01-ee997c9f196a@suse.com>
 <YIFWUnQ6d4Pk7nf4@Air-de-Roger>
 <320d9aca-1f72-f357-d303-487a67f39655@suse.com>
 <YIFgCoyQaZefKZvi@Air-de-Roger>
 <8a25c636-d20c-f45f-0901-314b22b70bfe@suse.com>
 <YIFm8tabpaLVsbfG@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c52ee5d9-0930-f159-c25f-82a9d276668e@suse.com>
Date: Thu, 22 Apr 2021 14:08:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIFm8tabpaLVsbfG@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 14:07, Roger Pau Monné wrote:
> On Thu, Apr 22, 2021 at 01:42:45PM +0200, Jan Beulich wrote:
>> On 22.04.2021 13:37, Roger Pau Monné wrote:
>>> On Thu, Apr 22, 2021 at 01:05:23PM +0200, Jan Beulich wrote:
>>>> On 22.04.2021 12:56, Roger Pau Monné wrote:
>>>>> On Thu, Apr 22, 2021 at 12:48:36PM +0200, Jan Beulich wrote:
>>>>>> On 22.04.2021 12:34, Roger Pau Monné wrote:
>>>>>>> On Thu, Apr 22, 2021 at 11:58:45AM +0200, Jan Beulich wrote:
>>>>>>>> On 22.04.2021 11:42, Roger Pau Monné wrote:
>>>>>>>>> On Wed, Apr 14, 2021 at 03:49:02PM +0200, Jan Beulich wrote:
>>>>>>>>>> On 13.04.2021 16:01, Roger Pau Monne wrote:
>>>>>>>>>>> @@ -944,3 +945,130 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
>>>>>>>>>>>  
>>>>>>>>>>>      return false;
>>>>>>>>>>>  }
>>>>>>>>>>> +
>>>>>>>>>>> +static uint64_t level_msr(unsigned int index, uint64_t val1, uint64_t val2)
>>>>>>>>>>> +{
>>>>>>>>>>> +    uint64_t val = val1 & val2;;
>>>>>>>>>>
>>>>>>>>>> For arbitrary MSRs this isn't going to do any good. If only very
>>>>>>>>>> specific MSRs are assumed to make it here, I think this wants
>>>>>>>>>> commenting on.
>>>>>>>>>
>>>>>>>>> I've added: "MSRs passed to level_msr are expected to be bitmaps of
>>>>>>>>> features"
>>>>>>>>
>>>>>>>> How does such a comment help? I.e. how does the caller tell which MSRs
>>>>>>>> to pass here and which to deal with anyother way?
>>>>>>>
>>>>>>> All MSRs should be passed to level_msr, but it's handling logic would
>>>>>>> need to be expanded to support MSRs that are not feature bitmaps.
>>>>>>>
>>>>>>> It might be best to restore the previous switch and handle each MSR
>>>>>>> specifically?
>>>>>>
>>>>>> I think so, yes. We need to be very careful with what a possible
>>>>>> default case does there, though.
>>>>>
>>>>> Maybe it would be better to handle level_msr in a way similar to
>>>>> level_leaf: return true/false to notice whether the MSR should be
>>>>> added to the resulting compatible policy?
>>>>>
>>>>> And then make the default case in level_msr just return false in order
>>>>> to prevent adding MSRs not properly leveled to the policy?
>>>>
>>>> I'm afraid I'm not clear about the implications. What again is the
>>>> (planned?) final effect of an MSR not getting added there?
>>>
>>> Adding the MSR with a 0 value will zero out any previous value on the
>>> 'out' policy, while not adding it would leave the previous value
>>> there given the current code in xc_cpu_policy_calc_compatible added by
>>> this patch.
>>>
>>> I would expect callers of xc_cpu_policy_calc_compatible to pass a
>>> zeroed 'out' policy, so I think the end result should be the same.
>>
>> But we're not talking about actual MSR values here, as this is all
>> about policy. So in the end we'll have to see how things need to
>> be once we have the first non-feature-flag-like entries there. It
>> feels as if simply zeroing can't be generally the right thing in
>> such a case. It may e.g. be that min() is wanted instead.
> 
> Maybe level_msr should return an error for MSRs not explicitly
> handled, that's propagated to the caller of
> xc_cpu_policy_calc_compatible.
> 
> That way addition of new MSRs are not likely to miss adding the
> required handling in level_msr?

Perhaps, yes.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 12:28:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 12:28:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115373.220069 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZYRC-0005aZ-EP; Thu, 22 Apr 2021 12:28:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115373.220069; Thu, 22 Apr 2021 12:28: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 1lZYRC-0005aS-BV; Thu, 22 Apr 2021 12:28:06 +0000
Received: by outflank-mailman (input) for mailman id 115373;
 Thu, 22 Apr 2021 12:28:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=/jO3=JT=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lZYRB-0005aN-6i
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 12:28:05 +0000
Received: from mo6-p01-ob.smtp.rzone.de (unknown [2a01:238:400:200::9])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 63b84bc2-5d8d-4c5c-bcb9-cc658ea06d03;
 Thu, 22 Apr 2021 12:28:04 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.3 DYNA|AUTH)
 with ESMTPSA id g00c91x3MCRrVQO
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Thu, 22 Apr 2021 14:27: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: 63b84bc2-5d8d-4c5c-bcb9-cc658ea06d03
ARC-Seal: i=1; a=rsa-sha256; t=1619094473; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=EjFZw+gxI29uGmwnmdAdsHLF5Stcyvtp0u9v8NwpeylclnvchAukFhvwalTneYlsTd
    PP3YEfpiUSM/TsiHYHkSg3oV0cg/3JgopFTEERtRjgGoa463pXPR1KBHz7IR+QRT3C/m
    v+m81UgYi88munuRRPg2ylBZ8CUaCfVhAHNUsnV2t/gznqNKcEKfUrcXO+0YFbVCTOfF
    o+0x7nZACSx9ic1i8lO76GVTsYmdKNy+dBijR4L3BOkwkgU/ZDZLwRVgiCnC2L+uxFJR
    PX2x9wAn+wavSSN09H8pb0ngcY1tuljf3jqhZCr7Mt/m7GCie2P0RE9t6+YnI77Nc3dD
    FVzA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619094473;
    s=strato-dkim-0002; d=strato.com;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=730Zt+z/pf3yHKAMhHCVcudAmd0AB9bXEJc/Sh9aPfo=;
    b=aaR965QpVpZz0185eKRVgoCK0JXnp6esf1eU+ko7g87tSZdWG16mfQrUjre8WonenJ
    p9OOXsPA7ummfuhrQWVwFICsbiBMh3pABwrgA47l1lJbKPMEfsrwXYpNe+istlawN4/Q
    vK6Hl3ecl0WaA433hXTwQxWlKxsx8uiC0qDQQCCF1whhi4a/A49Oc47L0LGgRO4vS8BZ
    W0HWWGgYvzzs/nWIQ1C637LPHFGlWIHqXkNqCCjcV+lnL2wfngRSc6p2gD4AN2tz2P3q
    unOmzy0VmLGyoqZPZaEhuruel9PwJi5FXD2jegK7sYxAaSngmrdlw0gaFXuftVWAROle
    Nj5g==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619094473;
    s=strato-dkim-0002; d=aepfle.de;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=730Zt+z/pf3yHKAMhHCVcudAmd0AB9bXEJc/Sh9aPfo=;
    b=ty74Ey0iotLDVZgBUII7WvZumHc6KqcndW+qhhnS+o7G9M8UKG3TgP9mgOUxNCBMS9
    wxrgQwuGlGzqIplNEeuTx+qVTBSWULryq8llIUdCIkSBNETL58wv++ZAzYChuzioJB9b
    buh9kc/EeQhtKs7w3Xl2forN3HxDMgzqkSsnD94Bz8+UaL0zOT+oRWq1JEi4/mJko1W7
    AFUXKzGTaW8a+9fWp5QkIMMQEQBMqKm9Eep9ZQDD9tt7jQC4OIHSZ3lXaDrIyqc8uqVO
    eFKokyClUB6BmN8iqp1PE3UcX9yLtmhJ12d+msCQ7HmlwnZmoo/1fm92xtUGZvBpIviM
    rA7Q==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDXmEVBDI4vdCIUVoI+BBGA=="
X-RZG-CLASS-ID: mo00
Date: Thu, 22 Apr 2021 14:27:44 +0200
From: Olaf Hering <olaf@aepfle.de>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: <xen-devel@lists.xenproject.org>, 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>, Anthony PERARD
 <anthony.perard@citrix.com>
Subject: Re: [PATCH v4] tools: create libxensaverestore
Message-ID: <20210422142744.22b2a7ef.olaf@aepfle.de>
In-Reply-To: <39eb928b-161d-4870-93d2-8c15929aa32f@citrix.com>
References: <20210415131138.8709-1-olaf@aepfle.de>
	<39eb928b-161d-4870-93d2-8c15929aa32f@citrix.com>
X-Mailer: Claws Mail 2021.03.05 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 boundary="Sig_/7AK37TEY9PV/Zg8Aokvfh4e"; protocol="application/pgp-signature"

--Sig_/7AK37TEY9PV/Zg8Aokvfh4e
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Am Thu, 22 Apr 2021 12:49:14 +0100
schrieb Andrew Cooper <andrew.cooper3@citrix.com>:

> In this form, there's a reasonable chance that it adds to the perf
> problems you're trying to address.

I did not benchmark this code movement.
Now I wonder what the runtime cost of the move really is.

The other pending series eliminates repeated malloc/free, which will
most likely be independent from place where the callers are located.

> I don't think pulling nomigrate into this new library is sensible.=C2=A0 A
> dedicate migration library, stubbed to errors based on some exterior
> setting, is very rude.
>=20
> Given the proposed new structure, the way this ought to be expressed is
> libxl-save-restore-helper being conditional on CONFIG_MIGRATE in the
> first place.

I think being more serious about the CONFIG_MIGRATE conditional is way
outside the scope of this change. Given that this conditional exists
since 15 years, libxl should have been the first user of it by disabling
alot of code that handles save/restore/migrate.

> Also, xensaverestore is a mouthful.=C2=A0 If we are changing things, how
> about xenmigrate instead?

Since the code does just save and restore, "saverestore" looks appropriate
to me. "migrate" just builds on top of the save/restore concept by running
it on two different hosts at the same time.

Olaf

--Sig_/7AK37TEY9PV/Zg8Aokvfh4e
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmCBa8EACgkQ86SN7mm1
DoD1ag//Wv4FW+N7Q3U8QBVokMf3b7yO59XY7Jso04+x7YVBudfIzdzI4lXpEKYw
SpfDk4Sv+tUewoHhwO8KTFAtRd/pOj7GnU9LS4zqGt9M5cZALloLdwiJ0J8VPFn8
Y28sImHYi+IO/pDjDkYzFRWJkZ/92VZUAxFN4cp7RtFje4u/TJiF7qAAk+fM7t8s
h7t7sThzucd4393uJ7UVzMOqi3Xmpz09uwEeOfZ923jZE2ly1ZnRv3otG+I9iMaM
+HsIhEJV28MjKkasUuzOewHdGYn+Qxbax6hijHaGsbpaPzxz/MTJILVDoRWIkuXA
jSy5ZnzM8gryDrKEAbtBCj/CW+Y08GAnGr81jKPjWmJc/UCMd7WU56+IxUQFDTb2
eK1EnEbM87v12KChYJmnWe6zyC0wlI4wUoypXgY+i2hBssI97fHg2fh6ByuO7MSe
Nu8k2zGI4tZqpshpSaATrsIHC6bAro7xQMK3U1qDj1Tml9vRl5XmcwwYRNk1RO2m
qPhVuXphSYxsIQSQ8KifZxC0o74BQ3G9Ms7OK4wz9zDBeanh9PsdxzAkgdbYkVMR
2L+QNPPY74tw1rUlXuePccUUKq+OJ/iBXY1SNKF06iAQEG4/lG4MVo8l+Nhc3Dzg
Bb30v7GkFUblEReADgk7pu5vUKhN4+cloxJ8tx8fdYWTgg9/ODM=
=7b7i
-----END PGP SIGNATURE-----

--Sig_/7AK37TEY9PV/Zg8Aokvfh4e--


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 12:31:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 12:31:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115381.220081 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZYUa-0006Sc-2C; Thu, 22 Apr 2021 12:31:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115381.220081; Thu, 22 Apr 2021 12: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 1lZYUZ-0006SV-UT; Thu, 22 Apr 2021 12:31:35 +0000
Received: by outflank-mailman (input) for mailman id 115381;
 Thu, 22 Apr 2021 12:31:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZYUY-0006SP-V0
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 12:31:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 49491d07-53ea-49b7-998c-87b4d0c197af;
 Thu, 22 Apr 2021 12:31:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BC296B016;
 Thu, 22 Apr 2021 12:31: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: 49491d07-53ea-49b7-998c-87b4d0c197af
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619094692; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=ouHb3skPbX5Em7vNa90vH8nUgFFI1p8WZ+HEUpoILWY=;
	b=ZfJla6KnH3awd0iIlYsvrhG2zc2BJoSahEfeo1kp7AdAipUe6BzhkmzrbBPjXHjUseY7CF
	ReP6hRpejtcPtvankFboVjViceEbULxwVRTmy09zSb+D4KvRL4YI5hJCIqw91G6iWjVp0A
	F12D1NZKbx786hagfTIrluNZ59PQvDU=
Subject: Re: [PATCH 13/16] xen/page_alloc: add a path for xenheap when there
 is no direct map
To: Hongyan Xia <hx242@xen.org>
Cc: julien@xen.org, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1588278317.git.hongyxia@amazon.com>
 <32ae7c14babf7e78b60febb53095a74c5e865456.1588278317.git.hongyxia@amazon.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a1bd2c72-1310-f018-dda5-90521be03fe4@suse.com>
Date: Thu, 22 Apr 2021 14:31:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <32ae7c14babf7e78b60febb53095a74c5e865456.1588278317.git.hongyxia@amazon.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 30.04.2020 22:44, Hongyan Xia wrote:
> From: Hongyan Xia <hongyxia@amazon.com>
> 
> When there is not an always-mapped direct map, xenheap allocations need
> to be mapped and unmapped on-demand.
> 
> Signed-off-by: Hongyan Xia <hongyxia@amazon.com>

This series has been left uncommented for far too long - I'm sorry.
While earlier patches here are probably reasonable (but would likely
need re-basing, so I'm not sure whether to try to get to look though
them before that makes much sense), I'd like to spell out that I'm
not really happy with the approach taken here: Simply re-introducing
a direct map entry for individual pages is not the way to go imo.
First and foremost this is rather wasteful in terms of resources (VA
space).

As I don't think we have many cases where code actually depends on
being able to apply __va() (or equivalent) to the address returned
from alloc_xenheap_pages(), I think this should instead involve
vmap(), with the vmap area drastically increased (perhaps taking all
of the space the direct map presently consumes). For any remaining
users of __va() or alike these should perhaps be converted into an
alias / derivation of vmap_to_{mfn,page}() then.

Since the goal of eliminating the direct map is to have unrelated
guests' memory not mapped when running a certain guest, it could
then be further considered to "overmap" what is being requested -
rather than just mapping the single 4k page, the containing 2M or 1G
one could be mapped (provided it all belongs to the running guest),
while unmapping could be deferred until the next context switch to a
different domain (or, if necessary, for 64-bit PV guests until the
next switch to guest user mode). Of course this takes as a prereq a
sufficiently low overhead means to establish whether the larger
containing page of a smaller one is all owned by the same domain.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 12:34:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 12:34:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115385.220093 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZYXm-0006id-HF; Thu, 22 Apr 2021 12:34:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115385.220093; Thu, 22 Apr 2021 12:34:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZYXm-0006iU-Dl; Thu, 22 Apr 2021 12:34:54 +0000
Received: by outflank-mailman (input) for mailman id 115385;
 Thu, 22 Apr 2021 12:34:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0bnX=JT=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lZYXk-0006iP-OW
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 12:34:52 +0000
Received: from mail-wm1-x334.google.com (unknown [2a00:1450:4864:20::334])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a193514f-67be-4540-aca0-cb1a575cf820;
 Thu, 22 Apr 2021 12:34:52 +0000 (UTC)
Received: by mail-wm1-x334.google.com with SMTP id
 p10-20020a1c544a0000b02901387e17700fso3034500wmi.2
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 05:34:51 -0700 (PDT)
Received: from [192.168.1.186]
 (host86-180-176-157.range86-180.btcentralplus.com. [86.180.176.157])
 by smtp.gmail.com with ESMTPSA id m67sm6887745wme.27.2021.04.22.05.34.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 05:34: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: a193514f-67be-4540-aca0-cb1a575cf820
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:cc:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=AmBH9C2DvdJD1Qbut0x7AsSjfa7QJN90/FQP5z35c8A=;
        b=NPef0TvdctJ6AOx+vkiORmHfXywolN99axDxNevrsgU7MIZ3y+V+QdiYN/sY9G74jN
         YE6DsRpi/bllNRzo7LFZJkH/LWn8uUsUyr6H7jwB8iDWx94//6ELDi6RGqSAyoEx4i6N
         WyNPY0eTIn9NO3ggrmk86350tHMPrxiCqAkqVXG9Ya5adHyi9AxRi16HFYgkkcA/OS6z
         ZqEtZWRyocVEHBmT+mww7OS+g8h/DT9Y5a0VPfa0GJEY1isJ3iy1EubgYmEwUWpPluJA
         +Dkb3vh9f72XR6Wkdt+yCwii4axEcgRVR8UDbz2s2lEp+3ghts3y3Pzsj9pXZ+OowGjQ
         DK9A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:cc:references
         :message-id:date:user-agent:mime-version:in-reply-to
         :content-language:content-transfer-encoding;
        bh=AmBH9C2DvdJD1Qbut0x7AsSjfa7QJN90/FQP5z35c8A=;
        b=ake36ziT41AjB00zgh58k6lj8yUb+hoWQsmP9z5Bdi1KzR/bm/29U7BVD5yDOcZqdZ
         owuvQwEEDU1pwNgSlLizmdv2nDkSqg1O7OfgQ7TqEKEDlbtS8tAjWxZqlrK3gEby55Gt
         lMY8BMH/fZEZ3U2Q2jPL2OTgeWdOM/0tcAhjhlg5R2zWC8cAl51YhykwbYgWAafHN2y5
         tS8svAgiGrkmWPwplms/r70BWKvrbCGhVNlQlEuAFDAYtvc/2Sjkfi8bkXg6MTUXk8M9
         ZLph5c8Ji1JQPJ/S3DtnqpSrEyiXPLeJAJXSk60GoeId9AyQwsKRf7dawpdnF40WzOWf
         QRIg==
X-Gm-Message-State: AOAM530Tpxq/olWvFnl5WdHaeoJcsmCrtgjLN/rpPHe19OEZ8ifTV63w
	iIhdlZlN9Bl1iWG1IdQ1L+jFmxOWEj4=
X-Google-Smtp-Source: ABdhPJyqr349qli+0LIui+wStN/YEwJH7ZDXsAL5ap8ocdupdEx0SImz6TW39P2NK0d2S2EdGLg3gQ==
X-Received: by 2002:a05:600c:cc:: with SMTP id u12mr3599214wmm.110.1619094891228;
        Thu, 22 Apr 2021 05:34:51 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: Ping: [PATCH v3] x86/CPUID: shrink max_{,sub}leaf fields
 according to actual leaf contents
To: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
 <9a2058cc-d6af-d01a-8630-ab897a75ccbc@suse.com>
Message-ID: <215292c9-79f6-4532-c051-0b7a0c53c138@xen.org>
Date: Thu, 22 Apr 2021 13:34:50 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <9a2058cc-d6af-d01a-8630-ab897a75ccbc@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 22/04/2021 12:38, Jan Beulich wrote:
> On 16.04.2021 15:16, Jan Beulich wrote:
>> Zapping leaf data for out of range leaves is just one half of it: To
>> avoid guests (bogusly or worse) inferring information from mere leaf
>> presence, also shrink maximum indicators such that the respective
>> trailing entry is not all blank (unless of course it's the initial
>> subleaf of a leaf that's not the final one).
>>
>> This is also in preparation of bumping the maximum basic leaf we
>> support, to ensure guests not getting exposed related features won't
>> observe a change in behavior.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> First of all - I'm sorry Paul, I forgot to Cc you on the original
> submission.
> 

Ok. I did notice some discussion but wasn't really paying attention.

> May I ask for an ack or otherwise for the Viridian part of this?
> Please be sure, however, that you have seen the earlier discussion,
> also on v2, as Roger is questioning whether the Viridian change
> here wouldn't better be dropped.
> 

I confess that I'm not a fan of the recursive calls and I do agree with 
Roger that limiting the leaves simply because they have zero values is 
probably not the right thing to do and it could lead to issues with 
Windows. I think, to be on the safe side, it's best to leave the 
viridian code as-is.

   Paul


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 12:37:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 12:37:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115390.220105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZYZq-0006q9-TV; Thu, 22 Apr 2021 12:37:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115390.220105; Thu, 22 Apr 2021 12: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 1lZYZq-0006q2-QB; Thu, 22 Apr 2021 12:37:02 +0000
Received: by outflank-mailman (input) for mailman id 115390;
 Thu, 22 Apr 2021 12:37:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZYZp-0006pv-6r
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 12:37:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f1e60ec0-32eb-4eb9-a3ee-c9add9ce69e1;
 Thu, 22 Apr 2021 12:37:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id ABE7BAFC2;
 Thu, 22 Apr 2021 12:36:59 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f1e60ec0-32eb-4eb9-a3ee-c9add9ce69e1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619095019; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Y3ropPHvuikAOL3Zx2BQj7HjojhJpHzsVY/WjBmU8+s=;
	b=KqTyH99OHPCAE9NSGOjha/3S6s2uQjuALmxiDT1WFSnlwAgIdzRXvBEX2Z6kpi6WjIzBQ6
	NHD/cdVvOlVZHWMIz5gTg3HHli0TFgQQqsbsN3y0QUBWplx4zoZx1/XTh6Hy/J8IMJvldy
	sR/uC/vb/zkRLZvQNSJl4SslMQW2cuI=
Subject: Re: Ping: [PATCH v3] x86/CPUID: shrink max_{,sub}leaf fields
 according to actual leaf contents
To: paul@xen.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Wei Liu <wl@xen.org>
References: <9ecd03b2-f8fa-2a8b-69ad-4b31920ea205@suse.com>
 <9a2058cc-d6af-d01a-8630-ab897a75ccbc@suse.com>
 <215292c9-79f6-4532-c051-0b7a0c53c138@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <80b290da-1041-d080-6877-d450eddeb0a2@suse.com>
Date: Thu, 22 Apr 2021 14:36:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <215292c9-79f6-4532-c051-0b7a0c53c138@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 22.04.2021 14:34, Paul Durrant wrote:
> On 22/04/2021 12:38, Jan Beulich wrote:
>> On 16.04.2021 15:16, Jan Beulich wrote:
>>> Zapping leaf data for out of range leaves is just one half of it: To
>>> avoid guests (bogusly or worse) inferring information from mere leaf
>>> presence, also shrink maximum indicators such that the respective
>>> trailing entry is not all blank (unless of course it's the initial
>>> subleaf of a leaf that's not the final one).
>>>
>>> This is also in preparation of bumping the maximum basic leaf we
>>> support, to ensure guests not getting exposed related features won't
>>> observe a change in behavior.
>>>
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
>> First of all - I'm sorry Paul, I forgot to Cc you on the original
>> submission.
>>
> 
> Ok. I did notice some discussion but wasn't really paying attention.
> 
>> May I ask for an ack or otherwise for the Viridian part of this?
>> Please be sure, however, that you have seen the earlier discussion,
>> also on v2, as Roger is questioning whether the Viridian change
>> here wouldn't better be dropped.
>>
> 
> I confess that I'm not a fan of the recursive calls and I do agree with 
> Roger that limiting the leaves simply because they have zero values is 
> probably not the right thing to do and it could lead to issues with 
> Windows. I think, to be on the safe side, it's best to leave the 
> viridian code as-is.

Okay. In which case I have all needed acks, and the remaining part of
the change can go in.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 12:46:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 12:46:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115397.220116 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZYj1-0007s5-R3; Thu, 22 Apr 2021 12:46:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115397.220116; Thu, 22 Apr 2021 12: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 1lZYj1-0007ry-O0; Thu, 22 Apr 2021 12:46:31 +0000
Received: by outflank-mailman (input) for mailman id 115397;
 Thu, 22 Apr 2021 12:46:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=/jO3=JT=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lZYj0-0007rt-D6
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 12:46:30 +0000
Received: from mo6-p01-ob.smtp.rzone.de (unknown [2a01:238:400:200::9])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1fecbfc7-ee35-494c-8e40-42a0597751d6;
 Thu, 22 Apr 2021 12:46:29 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.3 DYNA|AUTH)
 with ESMTPSA id g00c91x3MCkIVYL
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Thu, 22 Apr 2021 14:46: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: 1fecbfc7-ee35-494c-8e40-42a0597751d6
ARC-Seal: i=1; a=rsa-sha256; t=1619095579; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=ANlq9i/CU/JMb5nr52+zYsR25mKXL15Sd5qH4nf6qZYfpmqzHuPaKPSghnszf5Pwu5
    YIj4Xtd4OQeNRr1yuRuBRDhzsi1E9p2R2TUVmYr1mQX0VH64MHOSOl1F2kieiFh5wNVk
    kptLZCMGjrSnd6RSTTyYbdUbEfnjnpWZ0XKivZUvUtDaOC7s9rS04mBx/8sz+FlyBu/G
    IJQoIr2oKMv2f6pzIZ3zCrIDp4RluGVzt0lwPNdl+CtMT/UpvdnkWa5/VPTDnFjW0db1
    X67cntAyVGvqTKlZ7qLglLlLf5NjosePINzkiS9nJ0Hlfpn651SICxMiA7tM9U3gimW0
    /KbA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619095579;
    s=strato-dkim-0002; d=strato.com;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=sQzkzInOgjc+XLwJaAkPHspeeHwOyrVSEVrAFvCJpiA=;
    b=RdSMpQPOs7zO1J78H27/YV7zoVTtUFL6klo9xGLvlidoHZQI60u8r9l0MjwN4NX94S
    jHMyAzGHZhJiX/Xpa93M++R5WaMFvnCJhk1by4CaIDkdDfqhTKREK1JkpDQu5ZaaYF9p
    bw5V6IuSO1tCGC/vDSslsiDSLunsWV0NW9SKtCaRQHD6ztKQwkFkbPjexI2G2tZ3xNsQ
    VqO5EpMGJ6By+n7lHkulMYfCoUzTLa16SaM+qYo4XYw3Hu/eQ8U0jM3A0gQ8ljMkNPlo
    v1TcWsV/jkoYHnyd8SRqi8YWlA5qtnQt62cHBff7wxY1Vy+5QcSegCuDF+cGVs50BwF0
    Owzw==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619095579;
    s=strato-dkim-0002; d=aepfle.de;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=sQzkzInOgjc+XLwJaAkPHspeeHwOyrVSEVrAFvCJpiA=;
    b=lk41IxL/ZzsUh1N2/7crrjb8M1tRitOURoCDfQvgUNN3UuhTK3JmDiiSORK+hv/31w
    g/wE74T6iTIwEaetYQd7FDBd6yR95ETyQQKDpdYnOui9jPmjXivgAdi/knK51CIMSbDt
    rShA2j9DE8TQpxto/PA7IBXMlX4GMhKj0itlifuFeUFeB/t8KYiIJXOcK4+fXZX/vJIb
    alJuzvb+0mwttLUro3KJAjXJqxkjLM9H9aNuw553RmWRy5ii3ckOPkPBIJxCpkUpA77+
    RJB+ZKzK4zmnHVq0YBjA2eIYIO4oeOC90rnj7HDn6DvchBaKdgqManF9l7y+6S8nicAM
    6a2w==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDXmEVBDI4vdCIUVoI+BBGA=="
X-RZG-CLASS-ID: mo00
Date: Thu, 22 Apr 2021 14:46:10 +0200
From: Olaf Hering <olaf@aepfle.de>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: <xen-devel@lists.xenproject.org>, 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>, Anthony PERARD
 <anthony.perard@citrix.com>
Subject: Re: [PATCH v4] tools: create libxensaverestore
Message-ID: <20210422144610.45216c0f.olaf@aepfle.de>
In-Reply-To: <39eb928b-161d-4870-93d2-8c15929aa32f@citrix.com>
References: <20210415131138.8709-1-olaf@aepfle.de>
	<39eb928b-161d-4870-93d2-8c15929aa32f@citrix.com>
X-Mailer: Claws Mail 2021.03.05 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 boundary="Sig_/_uNtWg=STt1g7QL8C7CVfIL"; protocol="application/pgp-signature"

--Sig_/_uNtWg=STt1g7QL8C7CVfIL
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Am Thu, 22 Apr 2021 12:49:14 +0100
schrieb Andrew Cooper <andrew.cooper3@citrix.com>:

> That said, if you've dropped the plans for the static version, I don't
> see what the point is.=C2=A0 You're literally saving 15 pages of memory (=
so
> nothing in the grand scheme of a userspace process), at the cost of
> added effort for the dynamic loader.

For some reason I omitted this paragraph.

What do you mean with "plans for the static version"?

Olaf

--Sig_/_uNtWg=STt1g7QL8C7CVfIL
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmCBcBMACgkQ86SN7mm1
DoDfWA/+JJFgznwihHc7bDGxx6BRr418xjyNHGS80ygY3CjFkd4dH0og4nUaJlzH
gJxCwkJOfEnViic+MOiPUF0p9Jdk93DO4CoMj1ZN5hjN/HfeWKd3B1nF/zzHI4bX
KzH9Ftrj070yy+8e9HgRpr5Wk/c7/9BEOMNS9t9KO1Rvbk9E7TZLRgcj5tPNAnsW
WXWwYfKmkhCCtF0rP9IOZy0xz4gRrC/PI459jmZ1SkkAapZM+YWLFbcZzzFyfwym
nXaJsTM0OtmPRvpO9u6jBpncTMK9PKTMMjGhbnCEOP4K9HOSYf8SHh7TG2pq3QL4
pUoTlHIWNCtJs1ZzP2Szfp0kkL9RBJEqFFF/ENN62OkbyihgD72oaZE1pE2oO5+v
hqaMWhqbCG3JyaVlyBbKIE4LL/pJMKmg2wm5HPeKJXD6JFMNgU+BQKVAoGgaF9rV
U1tNKh3btlgxFjCsVyXnOUEyDcARJk9nS4UKfun4CKY3g2/Jsu0gQCDADii/kDQc
DH+xyCUc053d6sw/EQtGSIYDCCwI3fYDcLigDrwx9cq7ysU6asA4rFJNh6FLykJV
hP9jNEccrS/arBM2T5S0lDwIbNOn/2aOSPIhlfwowNyfbQzyOMlDRCDBLo+ZVG/H
Ec1CLVS1IfwHCrc0QmXrAVUKh98CHvUKugvLdRRtHkuKw6vTvks=
=2z/0
-----END PGP SIGNATURE-----

--Sig_/_uNtWg=STt1g7QL8C7CVfIL--


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 13:08:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 13:08:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115427.220219 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZZ3u-0001rc-L3; Thu, 22 Apr 2021 13:08:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115427.220219; Thu, 22 Apr 2021 13:08: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 1lZZ3u-0001rV-HY; Thu, 22 Apr 2021 13:08:06 +0000
Received: by outflank-mailman (input) for mailman id 115427;
 Thu, 22 Apr 2021 13:08: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 1lZZ3t-0001rN-9Z; Thu, 22 Apr 2021 13:08: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 1lZZ3t-0006ZH-39; Thu, 22 Apr 2021 13:08: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 1lZZ3s-0005Ld-Op; Thu, 22 Apr 2021 13:08:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZZ3s-0001OX-OL; Thu, 22 Apr 2021 13:08: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=kVSN4R1TgVX5z6MolB7nOnCM6jhe13nBlttaf2al324=; b=ftWa3syrLz3M5+Yhif+l/0d6Sa
	HxvNYbuqMlPX/fbIoKqX2uW3Pej3NB9P0OMWtxScQ+yDf14AAJDLODhe1pkUnT2zL2dw0AB3s5tqA
	fG4gXZWUK/wTQrx7IICCFK1pzER+IsoN/SLLw0PytIgz+m9CMisehCgnEixwd8vOCSCM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161369-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161369: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=f0e5100f002a0e5ad264f16128fabb285c3afa84
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 13:08:04 +0000

flight 161369 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161369/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              f0e5100f002a0e5ad264f16128fabb285c3afa84
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  286 days
Failing since        151818  2020-07-11 04:18:52 Z  285 days  278 attempts
Testing same since   161369  2021-04-22 04:18:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 53908 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 13:10:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 13:10:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115435.220234 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZZ6B-0002jj-6v; Thu, 22 Apr 2021 13:10:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115435.220234; Thu, 22 Apr 2021 13:10: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 1lZZ6B-0002jc-3M; Thu, 22 Apr 2021 13:10:27 +0000
Received: by outflank-mailman (input) for mailman id 115435;
 Thu, 22 Apr 2021 13:10:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZZ69-0002jV-Sb
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 13:10:25 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZZ69-0006ak-Dh; Thu, 22 Apr 2021 13:10:25 +0000
Received: from 54-240-197-228.amazon.com ([54.240.197.228]
 helo=edge-m3-r2-133.e-iad51.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZZ68-0001FF-N3; Thu, 22 Apr 2021 13:10:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Mime-Version:Content-Type:
	References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID;
	bh=iagCjn60lNMyzlAfFcXQ7L4RX9qShg1jGvCCr2iiXMI=; b=K22K9Fx93a2lod+BBvEqdM1adb
	GR6Xx1vHFU0K4+Hz+FPYnmmamkLV8cJ9XiAgwSP3VcFv+s94eQ1jeBbVd/QxOxzzY1DW1wBMUjEPj
	XZc4GYTmAP4gKO3RvXnAdgxrmd972YW9M8wSw5rJoOhMOqD8SBd7/VJ0z94q2tgpMB8I=;
Message-ID: <9e6ce48e89d073ba8363bfd8d88171d553e4ceed.camel@xen.org>
Subject: Re: [PATCH v10 03/13] x86/mm: switch to new APIs in
 modify_xen_mappings
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: jgrall@amazon.com, 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>
Date: Thu, 22 Apr 2021 14:10:21 +0100
In-Reply-To: <8a15361c10f2cdcf2bd4a973d10c45be6a2536e3.1619014052.git.hongyxia@amazon.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
	 <8a15361c10f2cdcf2bd4a973d10c45be6a2536e3.1619014052.git.hongyxia@amazon.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit

On Wed, 2021-04-21 at 15:15 +0100, Hongyan Xia wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Page tables allocated in that function should be mapped and unmapped
> now.
> 
> Note that pl2e now maybe mapped and unmapped in different iterations,
> so
> we need to add clean-ups for that.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> 
> ---
> Changed in v7:
> - use normal unmap in the error path.
> ---
>  xen/arch/x86/mm.c | 57 ++++++++++++++++++++++++++++++---------------
> --
>  1 file changed, 36 insertions(+), 21 deletions(-)
> 
> diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
> index 8a68da26f45f..832e654294b4 100644
> --- a/xen/arch/x86/mm.c
> +++ b/xen/arch/x86/mm.c
> @@ -5546,6 +5546,7 @@ int map_pages_to_xen(
>  
>   out:
>      L3T_UNLOCK(current_l3page);
> +    unmap_domain_page(pl2e);
>      unmap_domain_page(pl3e);
>      unmap_domain_page(pl2e);
>      return rc;

Something is seriously wrong here. This is obviously a mis-hunk which
should have been at the end of modify_xen_mappings() instead of
map_pages_to_xen(). This time the context is also different so I don't
understand why it did not conflict when I rebased.

Apologies. I noticed this patch has been merged so I will send a fix
right away.

Hongyan



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 13:40:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 13:40:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115442.220245 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZZZY-0005bg-FW; Thu, 22 Apr 2021 13:40:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115442.220245; Thu, 22 Apr 2021 13:40: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 1lZZZY-0005bZ-Cc; Thu, 22 Apr 2021 13:40:48 +0000
Received: by outflank-mailman (input) for mailman id 115442;
 Thu, 22 Apr 2021 13:40: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 1lZZZX-0005bU-0R
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 13:40: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 1lZZZV-00074C-4N; Thu, 22 Apr 2021 13:40:45 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZZZU-0003U8-Tk; Thu, 22 Apr 2021 13:40: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=/aejB0fMAcbFr89tZQfSu7T8ZcXyuAvoxbycHUvkcNI=; b=BvE68gbhCtRJlmwTkVePk6sMSM
	mWnqnld/ou9fKGD9GjlnXhhrJ5vXa5LSJ6ZW6KchKwij1IRVNVnwR4obJvnYpmj9fO/lbb6mXPUa/
	0s1/pwWXniIOj1sVXLo25GzJ2ytOlq2/xS+sVOQmpFo9uqqYPR5MWLpO2hIzF0xbHhYU=;
Subject: Re: [PATCH 5/9] arm/mm: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-6-michal.orzel@arm.com>
 <32bfa7d7-33cb-0deb-32bb-fa7d2052e0d9@xen.org>
 <3cee323f-7273-094f-150f-8f790a347d87@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <e2220e10-fcac-af61-f2ce-dbf514a02e9e@xen.org>
Date: Thu, 22 Apr 2021 14:40:43 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <3cee323f-7273-094f-150f-8f790a347d87@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 22/04/2021 12:47, Michal Orzel wrote:
> Hi Julien,

Hi Michal,

> On 20.04.2021 15:37, Julien Grall wrote:
>> Hi Michal,
>>
>> On 20/04/2021 08:08, Michal Orzel wrote:
>>> AArch64 system registers are 64bit whereas AArch32 ones
>>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>>> we should get rid of helpers READ/WRITE_SYSREG32
>>> in favour of using READ/WRITE_SYSREG.
>>> We should also use register_t type when reading sysregs
>>> which can correspond to uint64_t or uint32_t.
>>> Even though many AArch64 sysregs have upper 32bit reserved
>>> it does not mean that they can't be widen in the future.
>>>
>>> Modify SCTLR_EL2 accesses to use READ/WRITE_SYSREG.
>>
>> SCTLR_EL2 already has bits defined in the range [32:63]. So this change is going to have a side effect as AFAICT head.S will not touch those bits. So they are now going to be preserved.
>>
>> The Arm Arm defines them as unknown if implemented. Therefore shouldn't we zero them somewhere else?
>>
> SCTLR_EL2 is set in head.S using SCTLR_EL2_SET which means that we are zeroing the upper 32bit half.

Ah! I couldn't find the place doing it. Thanks!

I think it is important to point in the commit message this is just a 
latent bug because the top 32-bit was not used by Xen. Can you update 
the commit message?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:38:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:38:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115453.220272 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaTa-0002Bz-1R; Thu, 22 Apr 2021 14:38:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115453.220272; Thu, 22 Apr 2021 14: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 1lZaTZ-0002Bs-UU; Thu, 22 Apr 2021 14:38:41 +0000
Received: by outflank-mailman (input) for mailman id 115453;
 Thu, 22 Apr 2021 14:38:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaTY-0002Bn-JN
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:38:40 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2a935ce5-05ef-4160-8ce5-d5645f5f2597;
 Thu, 22 Apr 2021 14:38:39 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 75DD7AF5B;
 Thu, 22 Apr 2021 14:38: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: 2a935ce5-05ef-4160-8ce5-d5645f5f2597
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102318; 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=zWuit8EpcJtCqyUSXuyn07q39WIqpJSHBL0C7kUAPB8=;
	b=B6jUv23cQ2vZLiGaK9NZf0YUjPAofYqtEYQMZnOSFTAX5SPAierMatOTzCcosndjI/IO8U
	0d/tQK2oq59WhTA+Jad/FMIRh+OUzPBe253AOLOMUVgNwijgGYx4N6rdKVQoWCjszML2EG
	VugMN3YtpTMlm9hgMlqbijTizMz4XyA=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v3 00/22] xvmalloc() / x86 xstate area / x86 CPUID / AMX+XFD
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 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>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Message-ID: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Date: Thu, 22 Apr 2021 16:38:38 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While the sub-groups may seem somewhat unrelated, there are inter-
dependencies (logical, functional, or contextual). The majority of
the patches are unchanged in v3, but there are a few new ones. See
individual patches for details.

The first patch here depends on "gnttab: defer allocation of status
frame tracking array", which sadly is still pending (with the
discussion, as so often, stalled).

Similarly the discussion on whether to introduce xvmalloc() in its
presented shape, or what alternative would be acceptable, has stalled.
The Working Group, so far, hasn't really helped make progress here.
One thing I was wondering whether it would help, and which I had come
to consider while seeing something similarly named elsewhere: What
about naming the new functions xnew() and xdelete() and alike? To me
this would make it more natural to suggest that new code use them in
favor of xmalloc() or vmalloc(), and that we'd (slowly) transition
existing code to use them.

01: mm: introduce xvmalloc() et al and use for grant table allocations
02: x86/xstate: use xvzalloc() for save area allocation
03: x86/xstate: re-size save area when CPUID policy changes
04: x86/xstate: re-use valid_xcr0() for boot-time checks
05: x86/xstate: drop xstate_offsets[] and xstate_sizes[]
06: x86/xstate: replace xsave_cntxt_size and drop XCNTXT_MASK
07: x86/xstate: avoid accounting for unsupported components
08: x86: use xvmalloc() for extended context buffer allocations
09: x86/xstate: enable AMX components
10: x86/CPUID: adjust extended leaves out of range clearing
11: x86/CPUID: move bounding of max_{,sub}leaf fields to library code
12: x86/CPUID: enable AMX leaves
13: x86: XFD enabling
14: x86emul: introduce X86EMUL_FPU_{tilecfg,tile}
15: x86emul: support TILERELEASE
16: x86: introduce struct for TILECFG register
17: x86emul: support {LD,ST}TILECFG
18: x86emul: support TILEZERO
19: x86emul: support TILELOADD{,T1} and TILESTORE
20: x86emul: support tile multiplication insns
21: x86emul: test AMX insns
22: x86: permit guests to use AMX and XFD

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:43:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:43:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115458.220284 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaYQ-00033S-LP; Thu, 22 Apr 2021 14:43:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115458.220284; Thu, 22 Apr 2021 14:43:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaYQ-00033L-H5; Thu, 22 Apr 2021 14:43:42 +0000
Received: by outflank-mailman (input) for mailman id 115458;
 Thu, 22 Apr 2021 14:43:40 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaYO-00033G-JL
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:43:40 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3f659f9b-de90-46f0-85a3-8b334f5be43d;
 Thu, 22 Apr 2021 14:43:39 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D9CF6B16A;
 Thu, 22 Apr 2021 14:43: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: 3f659f9b-de90-46f0-85a3-8b334f5be43d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102619; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=sK0bwnN4IIuy+T0mgb6iypNUm85GbsitJEBd7v7Q3KI=;
	b=o9pqOblZqdpgj7gD9r17P1btYe4RR3hzFi2+eos+LI10hFnUEDKdPQ0Kt5sFdDIY3L9qH4
	rJNOXTKm+7XZjhO4jdHxd9j5VuYRXoaJ8lC1T/4NkRk3vUGHUUua9BaKluQyo/S7yV0wZJ
	dgaFsoENPoq5YutGXA7kUvtDj+4e0k4=
Subject: [PATCH v3 01/22] mm: introduce xvmalloc() et al and use for grant
 table allocations
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <69778de6-3b94-64d1-99d9-1a0fcfa503fd@suse.com>
Date: Thu, 22 Apr 2021 16:43:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

All of the array allocations in grant_table_init() can exceed a page's
worth of memory, which xmalloc()-based interfaces aren't really suitable
for after boot. We also don't need any of these allocations to be
physically contiguous.. Introduce interfaces dynamically switching
between xmalloc() et al and vmalloc() et al, based on requested size,
and use them instead.

All the wrappers in the new header get cloned mostly verbatim from
xmalloc.h, with the sole adjustment to switch unsigned long to size_t
for sizes and to unsigned int for alignments.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: Actually edit a copy-and-pasted comment in xvmalloc.h which was
    meant to be edited from the beginning.
---
I'm unconvinced of the mentioning of "physically contiguous" in the
comment at the top of the new header: I don't think xmalloc() provides
such a guarantee. Any use assuming so would look (latently) broken to
me.

--- a/xen/common/grant_table.c
+++ b/xen/common/grant_table.c
@@ -37,7 +37,7 @@
 #include <xen/iommu.h>
 #include <xen/paging.h>
 #include <xen/keyhandler.h>
-#include <xen/vmap.h>
+#include <xen/xvmalloc.h>
 #include <xen/nospec.h>
 #include <xsm/xsm.h>
 #include <asm/flushtlb.h>
@@ -1749,8 +1749,8 @@ gnttab_populate_status_frames(struct dom
 
     if ( gt->status == ZERO_BLOCK_PTR )
     {
-        gt->status = xzalloc_array(grant_status_t *,
-                                   grant_to_status_frames(gt->max_grant_frames));
+        gt->status = xvzalloc_array(grant_status_t *,
+                                    grant_to_status_frames(gt->max_grant_frames));
         if ( !gt->status )
         {
             gt->status = ZERO_BLOCK_PTR;
@@ -1780,7 +1780,7 @@ status_alloc_failed:
     }
     if ( !nr_status_frames(gt) )
     {
-        xfree(gt->status);
+        xvfree(gt->status);
         gt->status = ZERO_BLOCK_PTR;
     }
     return -ENOMEM;
@@ -1852,7 +1852,7 @@ gnttab_unpopulate_status_frames(struct d
     gt->nr_status_frames = 0;
     for ( i = 0; i < n; i++ )
         free_xenheap_page(gt->status[i]);
-    xfree(gt->status);
+    xvfree(gt->status);
     gt->status = ZERO_BLOCK_PTR;
 
     return 0;
@@ -1966,21 +1966,22 @@ int grant_table_init(struct domain *d, i
     d->grant_table = gt;
 
     /* Active grant table. */
-    gt->active = xzalloc_array(struct active_grant_entry *,
-                               max_nr_active_grant_frames(gt));
+    gt->active = xvzalloc_array(struct active_grant_entry *,
+                                max_nr_active_grant_frames(gt));
     if ( gt->active == NULL )
         goto out;
 
     /* Tracking of mapped foreign frames table */
     if ( gt->max_maptrack_frames )
     {
-        gt->maptrack = vzalloc(gt->max_maptrack_frames * sizeof(*gt->maptrack));
+        gt->maptrack = xvzalloc_array(struct grant_mapping *,
+                                      gt->max_maptrack_frames);
         if ( gt->maptrack == NULL )
             goto out;
     }
 
     /* Shared grant table. */
-    gt->shared_raw = xzalloc_array(void *, gt->max_grant_frames);
+    gt->shared_raw = xvzalloc_array(void *, gt->max_grant_frames);
     if ( gt->shared_raw == NULL )
         goto out;
 
@@ -3868,19 +3869,19 @@ grant_table_destroy(
 
     for ( i = 0; i < nr_grant_frames(t); i++ )
         free_xenheap_page(t->shared_raw[i]);
-    xfree(t->shared_raw);
+    xvfree(t->shared_raw);
 
     for ( i = 0; i < nr_maptrack_frames(t); i++ )
         free_xenheap_page(t->maptrack[i]);
-    vfree(t->maptrack);
+    xvfree(t->maptrack);
 
     for ( i = 0; i < nr_active_grant_frames(t); i++ )
         free_xenheap_page(t->active[i]);
-    xfree(t->active);
+    xvfree(t->active);
 
     for ( i = 0; i < nr_status_frames(t); i++ )
         free_xenheap_page(t->status[i]);
-    xfree(t->status);
+    xvfree(t->status);
 
     xfree(t);
     d->grant_table = NULL;
--- a/xen/common/vmap.c
+++ b/xen/common/vmap.c
@@ -7,6 +7,7 @@
 #include <xen/spinlock.h>
 #include <xen/types.h>
 #include <xen/vmap.h>
+#include <xen/xvmalloc.h>
 #include <asm/page.h>
 
 static DEFINE_SPINLOCK(vm_lock);
@@ -301,11 +302,29 @@ void *vzalloc(size_t size)
     return p;
 }
 
-void vfree(void *va)
+static void _vfree(const void *va, unsigned int pages, enum vmap_region type)
 {
-    unsigned int i, pages;
+    unsigned int i;
     struct page_info *pg;
     PAGE_LIST_HEAD(pg_list);
+
+    ASSERT(pages);
+
+    for ( i = 0; i < pages; i++ )
+    {
+        pg = vmap_to_page(va + i * PAGE_SIZE);
+        ASSERT(pg);
+        page_list_add(pg, &pg_list);
+    }
+    vunmap(va);
+
+    while ( (pg = page_list_remove_head(&pg_list)) != NULL )
+        free_domheap_page(pg);
+}
+
+void vfree(void *va)
+{
+    unsigned int pages;
     enum vmap_region type = VMAP_DEFAULT;
 
     if ( !va )
@@ -317,18 +336,71 @@ void vfree(void *va)
         type = VMAP_XEN;
         pages = vm_size(va, type);
     }
-    ASSERT(pages);
 
-    for ( i = 0; i < pages; i++ )
+    _vfree(va, pages, type);
+}
+
+void xvfree(void *va)
+{
+    unsigned int pages = vm_size(va, VMAP_DEFAULT);
+
+    if ( pages )
+        _vfree(va, pages, VMAP_DEFAULT);
+    else
+        xfree(va);
+}
+
+void *_xvmalloc(size_t size, unsigned int align)
+{
+    ASSERT(align <= PAGE_SIZE);
+    return size <= PAGE_SIZE ? _xmalloc(size, align) : vmalloc(size);
+}
+
+void *_xvzalloc(size_t size, unsigned int align)
+{
+    ASSERT(align <= PAGE_SIZE);
+    return size <= PAGE_SIZE ? _xzalloc(size, align) : vzalloc(size);
+}
+
+void *_xvrealloc(void *va, size_t size, unsigned int align)
+{
+    size_t pages = vm_size(va, VMAP_DEFAULT);
+    void *ptr;
+
+    ASSERT(align <= PAGE_SIZE);
+
+    if ( !pages )
     {
-        struct page_info *page = vmap_to_page(va + i * PAGE_SIZE);
+        if ( size <= PAGE_SIZE )
+            return _xrealloc(va, size, align);
 
-        ASSERT(page);
-        page_list_add(page, &pg_list);
+        ptr = vmalloc(size);
+        if ( ptr && va && va != ZERO_BLOCK_PTR )
+        {
+            /*
+             * xmalloc-based allocations up to PAGE_SIZE don't cross page
+             * boundaries. Therefore, without needing to know the exact
+             * prior allocation size, simply copy the entire tail of the
+             * page containing the earlier allocation.
+             */
+            memcpy(ptr, va, PAGE_SIZE - PAGE_OFFSET(va));
+            xfree(va);
+        }
+    }
+    else if ( pages == PFN_UP(size) )
+        ptr = va;
+    else
+    {
+        ptr = _xvmalloc(size, align);
+        if ( ptr )
+        {
+            memcpy(ptr, va, min(size, pages << PAGE_SHIFT));
+            vfree(va);
+        }
+        else if ( pages > PFN_UP(size) )
+            ptr = va;
     }
-    vunmap(va);
 
-    while ( (pg = page_list_remove_head(&pg_list)) != NULL )
-        free_domheap_page(pg);
+    return ptr;
 }
 #endif
--- /dev/null
+++ b/xen/include/xen/xvmalloc.h
@@ -0,0 +1,73 @@
+
+#ifndef __XVMALLOC_H__
+#define __XVMALLOC_H__
+
+#include <xen/cache.h>
+#include <xen/types.h>
+
+/*
+ * Xen malloc/free-style interface for allocations possibly exceeding a page's
+ * worth of memory, as long as there's no need to have physically contiguous
+ * memory allocated.  These should be used in preference to xmalloc() et al
+ * whenever the size is not known to be constrained to at most a single page.
+ */
+
+/* Allocate space for typed object. */
+#define xvmalloc(_type) ((_type *)_xvmalloc(sizeof(_type), __alignof__(_type)))
+#define xvzalloc(_type) ((_type *)_xvzalloc(sizeof(_type), __alignof__(_type)))
+
+/* Allocate space for array of typed objects. */
+#define xvmalloc_array(_type, _num) \
+    ((_type *)_xvmalloc_array(sizeof(_type), __alignof__(_type), _num))
+#define xvzalloc_array(_type, _num) \
+    ((_type *)_xvzalloc_array(sizeof(_type), __alignof__(_type), _num))
+
+/* Allocate space for a structure with a flexible array of typed objects. */
+#define xvzalloc_flex_struct(type, field, nr) \
+    ((type *)_xvzalloc(offsetof(type, field[nr]), __alignof__(type)))
+
+#define xvmalloc_flex_struct(type, field, nr) \
+    ((type *)_xvmalloc(offsetof(type, field[nr]), __alignof__(type)))
+
+/* Re-allocate space for a structure with a flexible array of typed objects. */
+#define xvrealloc_flex_struct(ptr, field, nr)                          \
+    ((typeof(ptr))_xvrealloc(ptr, offsetof(typeof(*(ptr)), field[nr]), \
+                             __alignof__(typeof(*(ptr)))))
+
+/* Allocate untyped storage. */
+#define xvmalloc_bytes(_bytes) _xvmalloc(_bytes, SMP_CACHE_BYTES)
+#define xvzalloc_bytes(_bytes) _xvzalloc(_bytes, SMP_CACHE_BYTES)
+
+/* Free any of the above. */
+extern void xvfree(void *);
+
+/* Free an allocation, and zero the pointer to it. */
+#define XVFREE(p) do { \
+    xvfree(p);         \
+    (p) = NULL;        \
+} while ( false )
+
+/* Underlying functions */
+extern void *_xvmalloc(size_t size, unsigned int align);
+extern void *_xvzalloc(size_t size, unsigned int align);
+extern void *_xvrealloc(void *ptr, size_t size, unsigned int align);
+
+static inline void *_xvmalloc_array(
+    size_t size, unsigned int align, unsigned long num)
+{
+    /* Check for overflow. */
+    if ( size && num > UINT_MAX / size )
+        return NULL;
+    return _xvmalloc(size * num, align);
+}
+
+static inline void *_xvzalloc_array(
+    size_t size, unsigned int align, unsigned long num)
+{
+    /* Check for overflow. */
+    if ( size && num > UINT_MAX / size )
+        return NULL;
+    return _xvzalloc(size * num, align);
+}
+
+#endif /* __XVMALLOC_H__ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:44:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:44:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115462.220295 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaZK-0003BS-UU; Thu, 22 Apr 2021 14:44:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115462.220295; Thu, 22 Apr 2021 14:44:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaZK-0003BL-RQ; Thu, 22 Apr 2021 14:44:38 +0000
Received: by outflank-mailman (input) for mailman id 115462;
 Thu, 22 Apr 2021 14:44:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaZJ-0003BD-Nb
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:44:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 22b32c30-555e-4039-b98a-5e5c24665c90;
 Thu, 22 Apr 2021 14:44:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 28625B16A;
 Thu, 22 Apr 2021 14:44: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: 22b32c30-555e-4039-b98a-5e5c24665c90
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102676; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=CX7ycSIbHLxk9/beplw9uWXkdYfiG5DPYy83G5AM4JE=;
	b=rcA4yehWdnrNhng0HkIHI17UjFEXc9hI6PbENa4vqnKqE19m4FAG505qY7Ew/dLNlHe4U7
	QkXQ9lUHaPKlMkgQNillDAcGZpSVslNfoJ4a8iq/d0RVENOHruxQw3LSTAmfKWCUCweDXk
	ooZFonzxWH73Oce3Z+oJqmFsXL9nlzY=
Subject: [PATCH v3 02/22] x86/xstate: use xvzalloc() for save area allocation
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <1fec148f-a5b2-5102-a790-e908d6f040c9@suse.com>
Date: Thu, 22 Apr 2021 16:44:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This is in preparation for the area size exceeding a page's worth of
space, as will happen with AMX as well as Architectural LBR.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -8,6 +8,7 @@
 #include <xen/param.h>
 #include <xen/percpu.h>
 #include <xen/sched.h>
+#include <xen/xvmalloc.h>
 #include <asm/current.h>
 #include <asm/processor.h>
 #include <asm/hvm/support.h>
@@ -522,7 +523,7 @@ int xstate_alloc_save_area(struct vcpu *
 
     /* XSAVE/XRSTOR requires the save area be 64-byte-boundary aligned. */
     BUILD_BUG_ON(__alignof(*save_area) < 64);
-    save_area = _xzalloc(size, __alignof(*save_area));
+    save_area = _xvzalloc(size, __alignof(*save_area));
     if ( save_area == NULL )
         return -ENOMEM;
 
@@ -543,8 +544,7 @@ int xstate_alloc_save_area(struct vcpu *
 
 void xstate_free_save_area(struct vcpu *v)
 {
-    xfree(v->arch.xsave_area);
-    v->arch.xsave_area = NULL;
+    XVFREE(v->arch.xsave_area);
 }
 
 static unsigned int _xstate_ctxt_size(u64 xcr0)



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:45:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:45:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115464.220308 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaZi-0003HX-8r; Thu, 22 Apr 2021 14:45:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115464.220308; Thu, 22 Apr 2021 14: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 1lZaZi-0003HQ-52; Thu, 22 Apr 2021 14:45:02 +0000
Received: by outflank-mailman (input) for mailman id 115464;
 Thu, 22 Apr 2021 14:45:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaZh-0003Gy-1Q
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:45:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0e593b11-5b2c-4bc5-a34e-d21a9a229790;
 Thu, 22 Apr 2021 14:44:59 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2C482AEC6;
 Thu, 22 Apr 2021 14:44: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: 0e593b11-5b2c-4bc5-a34e-d21a9a229790
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102699; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7ruxsuA3j7K0oTuxQf62nTzbV9rQVNflxNyw+J58l9k=;
	b=De0JFItAh1GKFcSs4EuD/iOOaLQqmaMnkfKA8T5SWN2R6wQ3MVIvrN+puw6y8zCOtUTKBv
	IOA+5veSaZokCXXxQBsBARtXm/Rsb29+LvDSSrXDRK8d3MJ/ysCS+ZAWcg/rMG85n8Oehs
	VO8g9qH5HgopHADpdSHSBVX3I4pHCpc=
Subject: [PATCH v3 03/22] x86/xstate: re-size save area when CPUID policy
 changes
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>, Ian Jackson <iwj@xenproject.org>,
 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>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <8ba8f016-0aed-277b-bbea-80022d057791@suse.com>
Date: Thu, 22 Apr 2021 16:44:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

vCPU-s get maximum size areas allocated initially. Hidden (and in
particular default-off) features may allow for a smaller size area to
suffice.

Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: Use 1ul instead of 1ull. Re-base.
---
This could be further shrunk if we used XSAVEC / if we really used
XSAVES, as then we don't need to also cover the holes. But since we
currently use neither of the two in reality, this would require more
work than just adding the alternative size calculation here.

Seeing that both vcpu_init_fpu() and cpuid_policy_updated() get called
from arch_vcpu_create(), I'm not sure we really need this two-stage
approach - the slightly longer period of time during which
v->arch.xsave_area would remain NULL doesn't look all that problematic.
But since xstate_alloc_save_area() gets called for idle vCPU-s, it has
to stay anyway in some form, so the extra code churn may not be worth
it.

Instead of cpuid_policy_xcr0_max(), cpuid_policy_xstates() may be the
interface to use here. But it remains to be determined whether the
xcr0_accum field is meant to be inclusive of XSS (in which case it would
better be renamed) or exclusive. Right now there's no difference as we
don't support any XSS-controlled features.

--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -281,7 +281,21 @@ void update_guest_memory_policy(struct v
     }
 }
 
-void domain_cpu_policy_changed(struct domain *d)
+/*
+ * Called during vcpu construction, and each time the toolstack changes the
+ * CPUID configuration for the domain.
+ */
+static int __must_check cpuid_policy_updated(struct vcpu *v)
+{
+    int rc = xstate_update_save_area(v);
+
+    if ( !rc && is_hvm_vcpu(v) )
+        hvm_cpuid_policy_changed(v);
+
+    return rc;
+}
+
+int domain_cpu_policy_changed(struct domain *d)
 {
     const struct cpuid_policy *p = d->arch.cpuid;
     struct vcpu *v;
@@ -439,13 +453,18 @@ void domain_cpu_policy_changed(struct do
 
     for_each_vcpu ( d, v )
     {
-        cpuid_policy_updated(v);
+        int rc = cpuid_policy_updated(v);
+
+        if ( rc )
+            return rc;
 
         /* If PMU version is zero then the guest doesn't have VPMU */
         if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL &&
              p->basic.pmu_version == 0 )
             vpmu_destroy(v);
     }
+
+    return 0;
 }
 
 #ifndef CONFIG_BIGMEM
@@ -584,7 +603,7 @@ int arch_vcpu_create(struct vcpu *v)
     {
         vpmu_initialise(v);
 
-        cpuid_policy_updated(v);
+        rc = cpuid_policy_updated(v);
     }
 
     return rc;
@@ -859,11 +878,11 @@ int arch_domain_create(struct domain *d,
      */
     d->arch.x87_fip_width = cpu_has_fpu_sel ? 0 : 8;
 
-    domain_cpu_policy_changed(d);
-
     d->arch.msr_relaxed = config->arch.misc_flags & XEN_X86_MSR_RELAXED;
 
-    return 0;
+    rc = domain_cpu_policy_changed(d);
+    if ( !rc )
+        return 0;
 
  fail:
     d->is_dying = DOMDYING_dead;
@@ -2471,16 +2490,6 @@ int domain_relinquish_resources(struct d
     return 0;
 }
 
-/*
- * Called during vcpu construction, and each time the toolstack changes the
- * CPUID configuration for the domain.
- */
-void cpuid_policy_updated(struct vcpu *v)
-{
-    if ( is_hvm_vcpu(v) )
-        hvm_cpuid_policy_changed(v);
-}
-
 void arch_dump_domain_info(struct domain *d)
 {
     paging_dump_domain_info(d);
--- a/xen/arch/x86/domctl.c
+++ b/xen/arch/x86/domctl.c
@@ -89,7 +89,7 @@ static int update_domain_cpu_policy(stru
     recalculate_cpuid_policy(d);
 
     /* Recalculate relevant dom/vcpu state now the policy has changed. */
-    domain_cpu_policy_changed(d);
+    ret = domain_cpu_policy_changed(d);
 
  out:
     /* Free whichever cpuid/msr structs are not installed in struct domain. */
--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -542,6 +542,41 @@ int xstate_alloc_save_area(struct vcpu *
     return 0;
 }
 
+int xstate_update_save_area(struct vcpu *v)
+{
+    unsigned int i, size, old;
+    struct xsave_struct *save_area;
+    uint64_t xcr0_max = cpuid_policy_xcr0_max(v->domain->arch.cpuid);
+
+    ASSERT(!is_idle_vcpu(v));
+
+    if ( !cpu_has_xsave )
+        return 0;
+
+    if ( v->arch.xcr0_accum & ~xcr0_max )
+        return -EBUSY;
+
+    for ( size = old = XSTATE_AREA_MIN_SIZE, i = 2; i < xstate_features; ++i )
+    {
+        if ( xcr0_max & (1ul << i) )
+            size = max(size, xstate_offsets[i] + xstate_sizes[i]);
+        if ( v->arch.xcr0_accum & (1ul << i) )
+            old = max(old, xstate_offsets[i] + xstate_sizes[i]);
+    }
+
+    save_area = _xvrealloc(v->arch.xsave_area, size, __alignof(*save_area));
+    if ( !save_area )
+        return -ENOMEM;
+
+    ASSERT(old <= size);
+    memset((void *)save_area + old, 0, size - old);
+
+    v->arch.xsave_area = save_area;
+    v->arch.fpu_ctxt = &v->arch.xsave_area->fpu_sse;
+
+    return 0;
+}
+
 void xstate_free_save_area(struct vcpu *v)
 {
     XVFREE(v->arch.xsave_area);
--- a/xen/include/asm-x86/domain.h
+++ b/xen/include/asm-x86/domain.h
@@ -78,8 +78,6 @@ void toggle_guest_mode(struct vcpu *);
 /* x86/64: toggle guest page tables between kernel and user modes. */
 void toggle_guest_pt(struct vcpu *);
 
-void cpuid_policy_updated(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).
@@ -670,7 +668,7 @@ struct guest_memory_policy
 void update_guest_memory_policy(struct vcpu *v,
                                 struct guest_memory_policy *policy);
 
-void domain_cpu_policy_changed(struct domain *d);
+int __must_check domain_cpu_policy_changed(struct domain *d);
 
 bool update_runstate_area(struct vcpu *);
 bool update_secondary_system_time(struct vcpu *,
--- a/xen/include/asm-x86/xstate.h
+++ b/xen/include/asm-x86/xstate.h
@@ -106,6 +106,7 @@ void compress_xsave_states(struct vcpu *
 /* extended state init and cleanup functions */
 void xstate_free_save_area(struct vcpu *v);
 int xstate_alloc_save_area(struct vcpu *v);
+int xstate_update_save_area(struct vcpu *v);
 void xstate_init(struct cpuinfo_x86 *c);
 unsigned int xstate_ctxt_size(u64 xcr0);
 



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:45:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:45:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115472.220320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaaD-0003VS-ML; Thu, 22 Apr 2021 14:45:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115472.220320; Thu, 22 Apr 2021 14:45: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 1lZaaD-0003VK-J0; Thu, 22 Apr 2021 14:45:33 +0000
Received: by outflank-mailman (input) for mailman id 115472;
 Thu, 22 Apr 2021 14:45:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaaC-0003Uc-DZ
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:45:32 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c82a5c0c-1aac-421f-a9af-49f2287862ba;
 Thu, 22 Apr 2021 14:45:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D1D60ABB1;
 Thu, 22 Apr 2021 14:45: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: c82a5c0c-1aac-421f-a9af-49f2287862ba
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102726; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=YTf7yEdgV9RjTpaGYCRR3T6Rl7rw+jl6IuRZaeG5MhQ=;
	b=ZqMrAy6T00gH0krJlMdW+ccEdJmDHv/RsnxZcJ81EiVvSOcb+Tf2dkAlYMMw9kV+6wptDS
	M5WZQXUeoYdWyjl1HF+VY2uQZw3CQfE1DgT+l5OSNK0YoV9WcPsEtikz+T3U/p8Px90m15
	DEv4cUS3wmphTfpNm78PzmKYvCyAecg=
Subject: [PATCH v3 04/22] x86/xstate: re-use valid_xcr0() for boot-time checks
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <77b149c5-e7b8-6335-dd86-745c6cc69a06@suse.com>
Date: Thu, 22 Apr 2021 16:45:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Instead of (just partially) open-coding it, re-use the function after
suitably moving it up.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -609,6 +609,34 @@ unsigned int xstate_ctxt_size(u64 xcr0)
     return _xstate_ctxt_size(xcr0);
 }
 
+static bool valid_xcr0(uint64_t xcr0)
+{
+    /* FP must be unconditionally set. */
+    if ( !(xcr0 & X86_XCR0_FP) )
+        return false;
+
+    /* YMM depends on SSE. */
+    if ( (xcr0 & X86_XCR0_YMM) && !(xcr0 & X86_XCR0_SSE) )
+        return false;
+
+    if ( xcr0 & (X86_XCR0_OPMASK | X86_XCR0_ZMM | X86_XCR0_HI_ZMM) )
+    {
+        /* OPMASK, ZMM, and HI_ZMM require YMM. */
+        if ( !(xcr0 & X86_XCR0_YMM) )
+            return false;
+
+        /* OPMASK, ZMM, and HI_ZMM must be the same. */
+        if ( ~xcr0 & (X86_XCR0_OPMASK | X86_XCR0_ZMM | X86_XCR0_HI_ZMM) )
+            return false;
+    }
+
+    /* BNDREGS and BNDCSR must be the same. */
+    if ( !(xcr0 & X86_XCR0_BNDREGS) != !(xcr0 & X86_XCR0_BNDCSR) )
+        return false;
+
+    return true;
+}
+
 /* Collect the information of processor's extended state */
 void xstate_init(struct cpuinfo_x86 *c)
 {
@@ -644,10 +672,9 @@ void xstate_init(struct cpuinfo_x86 *c)
     }
 
     cpuid_count(XSTATE_CPUID, 0, &eax, &ebx, &ecx, &edx);
-
-    BUG_ON((eax & XSTATE_FP_SSE) != XSTATE_FP_SSE);
-    BUG_ON((eax & X86_XCR0_YMM) && !(eax & X86_XCR0_SSE));
     feature_mask = (((u64)edx << 32) | eax) & XCNTXT_MASK;
+    BUG_ON(!valid_xcr0(feature_mask));
+    BUG_ON(!(feature_mask & X86_XCR0_SSE));
 
     /*
      * Set CR4_OSXSAVE and run "cpuid" to get xsave_cntxt_size.
@@ -677,31 +704,6 @@ void xstate_init(struct cpuinfo_x86 *c)
         BUG();
 }
 
-static bool valid_xcr0(u64 xcr0)
-{
-    /* FP must be unconditionally set. */
-    if ( !(xcr0 & X86_XCR0_FP) )
-        return false;
-
-    /* YMM depends on SSE. */
-    if ( (xcr0 & X86_XCR0_YMM) && !(xcr0 & X86_XCR0_SSE) )
-        return false;
-
-    if ( xcr0 & (X86_XCR0_OPMASK | X86_XCR0_ZMM | X86_XCR0_HI_ZMM) )
-    {
-        /* OPMASK, ZMM, and HI_ZMM require YMM. */
-        if ( !(xcr0 & X86_XCR0_YMM) )
-            return false;
-
-        /* OPMASK, ZMM, and HI_ZMM must be the same. */
-        if ( ~xcr0 & (X86_XCR0_OPMASK | X86_XCR0_ZMM | X86_XCR0_HI_ZMM) )
-            return false;
-    }
-
-    /* BNDREGS and BNDCSR must be the same. */
-    return !(xcr0 & X86_XCR0_BNDREGS) == !(xcr0 & X86_XCR0_BNDCSR);
-}
-
 int validate_xstate(const struct domain *d, uint64_t xcr0, uint64_t xcr0_accum,
                     const struct xsave_hdr *hdr)
 {



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:46:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:46:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115477.220332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaan-0003cF-0Q; Thu, 22 Apr 2021 14:46:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115477.220332; Thu, 22 Apr 2021 14:46: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 1lZaam-0003c7-T9; Thu, 22 Apr 2021 14:46:08 +0000
Received: by outflank-mailman (input) for mailman id 115477;
 Thu, 22 Apr 2021 14:46:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaal-0003by-Dq
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:46:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7510d6b9-c9d6-452b-8276-fd93c860d96b;
 Thu, 22 Apr 2021 14:46:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C29FFB17E;
 Thu, 22 Apr 2021 14:46: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: 7510d6b9-c9d6-452b-8276-fd93c860d96b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102765; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=An8uS4tiRtP4/sbgEQt0pyfRbcGoO31aNLmWWP5xbQA=;
	b=RHpqN6AfeNvotXMtggLmtrwRJFzTm9kPYOHay69KJMOu7snitOqnhn3sDLMno1eEAcV2q2
	/3d4bT4qMFzioUQyGUN1CqMPEPgYf4jhHymhMeqlQxwNj6TXfQf51I+ZPCTxg8oodVJNOP
	/AavWkJfhkERLV2Laihp0RZq0UV/4rQ=
Subject: [PATCH v3 05/22] x86/xstate: drop xstate_offsets[] and xstate_sizes[]
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <434705ef-1c34-581d-b956-2322b4413232@suse.com>
Date: Thu, 22 Apr 2021 16:45:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

They're redundant with respective fields from the raw CPUID policy; no
need to keep two copies of the same data. This also breaks
recalculate_xstate()'s dependency on xstate_init(), allowing host CPUID
policy calculation to be moved together with that of the raw one (which
a subsequent change will require anyway).

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/cpu/common.c
+++ b/xen/arch/x86/cpu/common.c
@@ -498,6 +498,8 @@ void identify_cpu(struct cpuinfo_x86 *c)
 	}
 
 	/* Now the feature flags better reflect actual CPU features! */
+	if (c == &boot_cpu_data)
+		init_host_cpuid();
 
 	xstate_init(c);
 
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -170,32 +170,32 @@ static void recalculate_xstate(struct cp
     {
         xstates |= X86_XCR0_YMM;
         xstate_size = max(xstate_size,
-                          xstate_offsets[X86_XCR0_YMM_POS] +
-                          xstate_sizes[X86_XCR0_YMM_POS]);
+                          xstate_offset(X86_XCR0_YMM_POS) +
+                          xstate_size(X86_XCR0_YMM_POS));
     }
 
     if ( p->feat.mpx )
     {
         xstates |= X86_XCR0_BNDREGS | X86_XCR0_BNDCSR;
         xstate_size = max(xstate_size,
-                          xstate_offsets[X86_XCR0_BNDCSR_POS] +
-                          xstate_sizes[X86_XCR0_BNDCSR_POS]);
+                          xstate_offset(X86_XCR0_BNDCSR_POS) +
+                          xstate_size(X86_XCR0_BNDCSR_POS));
     }
 
     if ( p->feat.avx512f )
     {
         xstates |= X86_XCR0_OPMASK | X86_XCR0_ZMM | X86_XCR0_HI_ZMM;
         xstate_size = max(xstate_size,
-                          xstate_offsets[X86_XCR0_HI_ZMM_POS] +
-                          xstate_sizes[X86_XCR0_HI_ZMM_POS]);
+                          xstate_offset(X86_XCR0_HI_ZMM_POS) +
+                          xstate_size(X86_XCR0_HI_ZMM_POS));
     }
 
     if ( p->feat.pku )
     {
         xstates |= X86_XCR0_PKRU;
         xstate_size = max(xstate_size,
-                          xstate_offsets[X86_XCR0_PKRU_POS] +
-                          xstate_sizes[X86_XCR0_PKRU_POS]);
+                          xstate_offset(X86_XCR0_PKRU_POS) +
+                          xstate_size(X86_XCR0_PKRU_POS));
     }
 
     p->xstate.max_size  =  xstate_size;
@@ -218,8 +218,8 @@ static void recalculate_xstate(struct cp
         if ( !(xstates & curr_xstate) )
             continue;
 
-        p->xstate.comp[i].size   = xstate_sizes[i];
-        p->xstate.comp[i].offset = xstate_offsets[i];
+        p->xstate.comp[i].size   = xstate_size(i);
+        p->xstate.comp[i].offset = xstate_offset(i);
         p->xstate.comp[i].xss    = curr_xstate & XSTATE_XSAVES_ONLY;
         p->xstate.comp[i].align  = curr_xstate & xstate_align;
     }
@@ -531,10 +531,16 @@ static void __init calculate_hvm_def_pol
     x86_cpuid_policy_shrink_max_leaves(p);
 }
 
-void __init init_guest_cpuid(void)
+void __init init_host_cpuid(void)
 {
     calculate_raw_policy();
     calculate_host_policy();
+}
+
+void __init init_guest_cpuid(void)
+{
+    /* Do this a 2nd time to account for setup_{clear,force}_cpu_cap() uses. */
+    calculate_host_policy();
 
     if ( IS_ENABLED(CONFIG_PV) )
     {
--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -9,6 +9,7 @@
 #include <xen/percpu.h>
 #include <xen/sched.h>
 #include <xen/xvmalloc.h>
+#include <asm/cpuid.h>
 #include <asm/current.h>
 #include <asm/processor.h>
 #include <asm/hvm/support.h>
@@ -26,8 +27,6 @@ static u32 __read_mostly xsave_cntxt_siz
 /* A 64-bit bitmask of the XSAVE/XRSTOR features supported by processor. */
 u64 __read_mostly xfeature_mask;
 
-unsigned int *__read_mostly xstate_offsets;
-unsigned int *__read_mostly xstate_sizes;
 u64 __read_mostly xstate_align;
 static unsigned int __read_mostly xstate_features;
 
@@ -93,34 +92,19 @@ static int setup_xstate_features(bool bs
     unsigned int leaf, eax, ebx, ecx, edx;
 
     if ( bsp )
-    {
         xstate_features = flsl(xfeature_mask);
-        xstate_offsets = xzalloc_array(unsigned int, xstate_features);
-        if ( !xstate_offsets )
-            return -ENOMEM;
-
-        xstate_sizes = xzalloc_array(unsigned int, xstate_features);
-        if ( !xstate_sizes )
-            return -ENOMEM;
-    }
 
     for ( leaf = 2; leaf < xstate_features; leaf++ )
     {
-        if ( bsp )
-        {
-            cpuid_count(XSTATE_CPUID, leaf, &xstate_sizes[leaf],
-                        &xstate_offsets[leaf], &ecx, &edx);
-            if ( ecx & XSTATE_ALIGN64 )
-                __set_bit(leaf, &xstate_align);
-        }
+        cpuid_count(XSTATE_CPUID, leaf, &eax,
+                    &ebx, &ecx, &edx);
+        BUG_ON(eax != xstate_size(leaf));
+        BUG_ON(ebx != xstate_offset(leaf));
+
+        if ( bsp && (ecx & XSTATE_ALIGN64) )
+            __set_bit(leaf, &xstate_align);
         else
-        {
-            cpuid_count(XSTATE_CPUID, leaf, &eax,
-                        &ebx, &ecx, &edx);
-            BUG_ON(eax != xstate_sizes[leaf]);
-            BUG_ON(ebx != xstate_offsets[leaf]);
             BUG_ON(!(ecx & XSTATE_ALIGN64) != !test_bit(leaf, &xstate_align));
-        }
     }
 
     return 0;
@@ -150,7 +134,7 @@ static void setup_xstate_comp(uint16_t *
             if ( test_bit(i, &xstate_align) )
                 offset = ROUNDUP(offset, 64);
             comp_offsets[i] = offset;
-            offset += xstate_sizes[i];
+            offset += xstate_size(i);
         }
     }
     ASSERT(offset <= xsave_cntxt_size);
@@ -213,10 +197,10 @@ void expand_xsave_states(struct vcpu *v,
          * comp_offsets[] information, something is very broken.
          */
         BUG_ON(!comp_offsets[index]);
-        BUG_ON((xstate_offsets[index] + xstate_sizes[index]) > size);
+        BUG_ON((xstate_offset(index) + xstate_size(index)) > size);
 
-        memcpy(dest + xstate_offsets[index], src + comp_offsets[index],
-               xstate_sizes[index]);
+        memcpy(dest + xstate_offset(index), src + comp_offsets[index],
+               xstate_size(index));
 
         valid &= ~feature;
     }
@@ -279,10 +263,10 @@ void compress_xsave_states(struct vcpu *
          * comp_offset[] information, something is very broken.
          */
         BUG_ON(!comp_offsets[index]);
-        BUG_ON((xstate_offsets[index] + xstate_sizes[index]) > size);
+        BUG_ON((xstate_offset(index) + xstate_size(index)) > size);
 
-        memcpy(dest + comp_offsets[index], src + xstate_offsets[index],
-               xstate_sizes[index]);
+        memcpy(dest + comp_offsets[index], src + xstate_offset(index),
+               xstate_size(index));
 
         valid &= ~feature;
     }
@@ -516,8 +500,8 @@ int xstate_alloc_save_area(struct vcpu *
         unsigned int i;
 
         for ( size = 0, i = 2; i < xstate_features; ++i )
-            if ( size < xstate_sizes[i] )
-                size = xstate_sizes[i];
+            if ( size < xstate_size(i) )
+                size = xstate_size(i);
         size += XSTATE_AREA_MIN_SIZE;
     }
 
@@ -559,9 +543,9 @@ int xstate_update_save_area(struct vcpu
     for ( size = old = XSTATE_AREA_MIN_SIZE, i = 2; i < xstate_features; ++i )
     {
         if ( xcr0_max & (1ul << i) )
-            size = max(size, xstate_offsets[i] + xstate_sizes[i]);
+            size = max(size, xstate_offset(i) + xstate_size(i));
         if ( v->arch.xcr0_accum & (1ul << i) )
-            old = max(old, xstate_offsets[i] + xstate_sizes[i]);
+            old = max(old, xstate_offset(i) + xstate_size(i));
     }
 
     save_area = _xvrealloc(v->arch.xsave_area, size, __alignof(*save_area));
@@ -819,7 +803,7 @@ uint64_t read_bndcfgu(void)
               : "=m" (*xstate)
               : "a" (X86_XCR0_BNDCSR), "d" (0), "D" (xstate) );
 
-        bndcsr = (void *)xstate + xstate_offsets[X86_XCR0_BNDCSR_POS];
+        bndcsr = (void *)xstate + xstate_offset(X86_XCR0_BNDCSR_POS);
     }
 
     if ( cr0 & X86_CR0_TS )
--- a/xen/include/asm-x86/cpuid.h
+++ b/xen/include/asm-x86/cpuid.h
@@ -16,6 +16,7 @@
 extern const uint32_t known_features[FSCAPINTS];
 extern const uint32_t special_features[FSCAPINTS];
 
+void init_host_cpuid(void);
 void init_guest_cpuid(void);
 
 /*
--- a/xen/include/asm-x86/xstate.h
+++ b/xen/include/asm-x86/xstate.h
@@ -44,8 +44,9 @@ extern uint32_t mxcsr_mask;
 
 extern u64 xfeature_mask;
 extern u64 xstate_align;
-extern unsigned int *xstate_offsets;
-extern unsigned int *xstate_sizes;
+
+#define xstate_offset(n) (raw_cpuid_policy.xstate.comp[n].offset)
+#define xstate_size(n)   (raw_cpuid_policy.xstate.comp[n].size)
 
 /* extended state save area */
 struct __attribute__((aligned (64))) xsave_struct



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:46:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:46:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115482.220343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZabX-0003kJ-9g; Thu, 22 Apr 2021 14:46:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115482.220343; Thu, 22 Apr 2021 14: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 1lZabX-0003kC-6d; Thu, 22 Apr 2021 14:46:55 +0000
Received: by outflank-mailman (input) for mailman id 115482;
 Thu, 22 Apr 2021 14:46:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZabW-0003k6-68
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:46:54 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d14ef3f0-857d-4ae3-a2c0-94599c164533;
 Thu, 22 Apr 2021 14:46:53 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E835FB19B;
 Thu, 22 Apr 2021 14:46: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: d14ef3f0-857d-4ae3-a2c0-94599c164533
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102812; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=So2JgmrzhvB3sGCo9ejN1SRRrQtA5dudILEINyAz1T8=;
	b=YwDOqv4vy7B5IwVbyljw7TzZZEkZx+1jgHX8IhteJF5muTMLF8x3iSCFydCNY3pDzr991i
	BnnIGkf0TMMC/EIJukqT6PJLbWIskJWp/oCxMYmwTcF9IOQFO5KELXbpHvP2JdyC2cEevy
	Ku7iVdtwRwrtNm0Q0lIOTGJFP5Rkn7U=
Subject: [PATCH v3 06/22] x86/xstate: replace xsave_cntxt_size and drop
 XCNTXT_MASK
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <dbbc3092-8d32-64e9-b03c-1313ca378ba9@suse.com>
Date: Thu, 22 Apr 2021 16:46:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

XCNTXT_MASK is effectively embedded in recalculate_xstate(), and
xsave_cntxt_size was redundant with the host CPUID policy's
xstate.max_size field.

Use the host CPUID policy as input (requiring it to be calculated
earlier), thus allowing e.g. "cpuid=no-avx512f" to also result in
avoiding allocation of space for ZMM and mask register state.

Also drop a stale part of an adjacent comment.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -20,9 +20,10 @@
 /*
  * Maximum size (in byte) of the XSAVE/XRSTOR save area required by all
  * the supported and enabled features on the processor, including the
- * XSAVE.HEADER. We only enable XCNTXT_MASK that we have known.
+ * XSAVE.HEADER. We only enable cpuid_policy_xcr0_max(&host_cpuid_policy).
+ * Note that this identifier should not be usable as an lvalue.
  */
-static u32 __read_mostly xsave_cntxt_size;
+#define xsave_cntxt_size (host_cpuid_policy.xstate.max_size | 0)
 
 /* A 64-bit bitmask of the XSAVE/XRSTOR features supported by processor. */
 u64 __read_mostly xfeature_mask;
@@ -575,8 +576,23 @@ static unsigned int _xstate_ctxt_size(u6
     ASSERT(ok);
     cpuid_count(XSTATE_CPUID, 0, &eax, &ebx, &ecx, &edx);
     ASSERT(ebx <= ecx);
-    ok = set_xcr0(act_xcr0);
-    ASSERT(ok);
+
+    /*
+     * When called the very first time from xstate_init(), act_xcr0 (as read
+     * from per-CPU data) is still zero. xstate_init() wants this function to
+     * leave xfeature_mask in place, so avoid restoration in this case (which
+     * would fail anyway).
+     */
+    if ( act_xcr0 )
+    {
+        ok = set_xcr0(act_xcr0);
+        ASSERT(ok);
+    }
+    else
+    {
+        BUG_ON(!ok);
+        ASSERT(xcr0 == xfeature_mask);
+    }
 
     return ebx;
 }
@@ -648,42 +664,35 @@ void xstate_init(struct cpuinfo_x86 *c)
         return;
 
     if ( (bsp && !use_xsave) ||
-         boot_cpu_data.cpuid_level < XSTATE_CPUID )
+         c->cpuid_level < XSTATE_CPUID )
     {
         BUG_ON(!bsp);
         setup_clear_cpu_cap(X86_FEATURE_XSAVE);
         return;
     }
 
-    cpuid_count(XSTATE_CPUID, 0, &eax, &ebx, &ecx, &edx);
-    feature_mask = (((u64)edx << 32) | eax) & XCNTXT_MASK;
-    BUG_ON(!valid_xcr0(feature_mask));
-    BUG_ON(!(feature_mask & X86_XCR0_SSE));
-
-    /*
-     * Set CR4_OSXSAVE and run "cpuid" to get xsave_cntxt_size.
-     */
-    set_in_cr4(X86_CR4_OSXSAVE);
-    if ( !set_xcr0(feature_mask) )
-        BUG();
-
     if ( bsp )
     {
+        feature_mask = cpuid_policy_xcr0_max(&host_cpuid_policy);
+        BUG_ON(!valid_xcr0(feature_mask));
+        BUG_ON(!(feature_mask & X86_XCR0_SSE));
+
         xfeature_mask = feature_mask;
-        /*
-         * xsave_cntxt_size is the max size required by enabled features.
-         * We know FP/SSE and YMM about eax, and nothing about edx at present.
-         */
-        xsave_cntxt_size = _xstate_ctxt_size(feature_mask);
+        /* xsave_cntxt_size is the max size required by enabled features. */
         printk("xstate: size: %#x and states: %#"PRIx64"\n",
-               xsave_cntxt_size, xfeature_mask);
-    }
-    else
-    {
-        BUG_ON(xfeature_mask != feature_mask);
-        BUG_ON(xsave_cntxt_size != _xstate_ctxt_size(feature_mask));
+               xsave_cntxt_size, feature_mask);
+
+        set_in_cr4(X86_CR4_OSXSAVE);
     }
 
+    cpuid_count(XSTATE_CPUID, 0, &eax, &ebx, &ecx, &edx);
+    feature_mask = (((uint64_t)edx << 32) | eax) & xfeature_mask;
+    BUG_ON(xfeature_mask != feature_mask);
+
+    /* This has the side effect of set_xcr0(feature_mask). */
+    if ( xsave_cntxt_size != _xstate_ctxt_size(feature_mask) )
+        BUG();
+
     if ( setup_xstate_features(bsp) && bsp )
         BUG();
 }
--- a/xen/include/asm-x86/xstate.h
+++ b/xen/include/asm-x86/xstate.h
@@ -30,9 +30,6 @@ extern uint32_t mxcsr_mask;
 #define XSTATE_AREA_MIN_SIZE      (FXSAVE_SIZE + XSAVE_HDR_SIZE)
 
 #define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
-#define XCNTXT_MASK    (X86_XCR0_FP | X86_XCR0_SSE | X86_XCR0_YMM | \
-                        X86_XCR0_OPMASK | X86_XCR0_ZMM | X86_XCR0_HI_ZMM | \
-                        XSTATE_NONLAZY)
 
 #define XSTATE_ALL     (~(1ULL << 63))
 #define XSTATE_NONLAZY (X86_XCR0_BNDREGS | X86_XCR0_BNDCSR | X86_XCR0_PKRU)



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:47:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:47:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115485.220355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZac1-0003qZ-JR; Thu, 22 Apr 2021 14:47:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115485.220355; Thu, 22 Apr 2021 14:47: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 1lZac1-0003qS-GU; Thu, 22 Apr 2021 14:47:25 +0000
Received: by outflank-mailman (input) for mailman id 115485;
 Thu, 22 Apr 2021 14:47:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZac0-0003qI-IA
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:47:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 659f57e8-ec80-4d3c-9fdf-8d577b13b234;
 Thu, 22 Apr 2021 14:47:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2C276ABB1;
 Thu, 22 Apr 2021 14:47: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: 659f57e8-ec80-4d3c-9fdf-8d577b13b234
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102843; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=2vhMDJVGPLut9dUUvDo0ADaCfxiPqS6gGUbBUs/N0kg=;
	b=Lmgbr5OOk6rjy1YhZnMk1M8RsWc6m6E30tvi1IoNRWef79uUGW2MN3udMUMN1AB/ZjPEf9
	p1pMSw9hguRx5vH7rV1qYSKLC6xxFjz5Z5xtVdW4IbXJkwLpgLh1PJTQ8N4Ev6VXpKuLsW
	x+fuYOTJsLuRm3zRXxvrzfvey3lbITo=
Subject: [PATCH v3 07/22] x86/xstate: avoid accounting for unsupported
 components
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <a339c2a0-0a73-8e30-f802-cd905dca7f7e@suse.com>
Date: Thu, 22 Apr 2021 16:47:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There's no point in including unsupported components in the size
calculations of xstate_{alloc,update}_save_area().

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -501,8 +501,12 @@ int xstate_alloc_save_area(struct vcpu *
         unsigned int i;
 
         for ( size = 0, i = 2; i < xstate_features; ++i )
+        {
+            if ( !(xfeature_mask & (1ul << i)) )
+                continue;
             if ( size < xstate_size(i) )
                 size = xstate_size(i);
+        }
         size += XSTATE_AREA_MIN_SIZE;
     }
 
@@ -543,6 +547,8 @@ int xstate_update_save_area(struct vcpu
 
     for ( size = old = XSTATE_AREA_MIN_SIZE, i = 2; i < xstate_features; ++i )
     {
+        if ( !(xfeature_mask & (1ul << i)) )
+            continue;
         if ( xcr0_max & (1ul << i) )
             size = max(size, xstate_offset(i) + xstate_size(i));
         if ( v->arch.xcr0_accum & (1ul << i) )



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:47:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:47:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115490.220368 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZacY-0003xy-Sm; Thu, 22 Apr 2021 14:47:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115490.220368; Thu, 22 Apr 2021 14: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 1lZacY-0003xr-PM; Thu, 22 Apr 2021 14:47:58 +0000
Received: by outflank-mailman (input) for mailman id 115490;
 Thu, 22 Apr 2021 14:47:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZacX-0003xi-Sh
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:47:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2cdad257-e8fd-48ac-ba7e-1fd13a13e949;
 Thu, 22 Apr 2021 14:47:57 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5AF7EABB1;
 Thu, 22 Apr 2021 14:47: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: 2cdad257-e8fd-48ac-ba7e-1fd13a13e949
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102876; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nApfhe7Gh5uQXawoQVwfWvBSVmPP6Sx/Cf+XRmmjUl4=;
	b=W9ESb8eYYHSfy/yk1kr3FdK4zhsiAhvXNdt8NdmouJ61k5NRpjUDcsbFMe+fG1s3XXWzO/
	W9srfNoKpat258g/Vveia7Uh9Nm0Ymr6HSv00+dmKwAoKJ3dOw2AwQKOaL/7Wg5aCB/38s
	Ou8XnXbWBzDL9LD1swsAZUn5g9xDlgs=
Subject: [PATCH v3 08/22] x86: use xvmalloc() for extended context buffer
 allocations
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <5a860979-e95f-4c29-18c0-4543d8df6547@suse.com>
Date: Thu, 22 Apr 2021 16:47:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This is in preparation for the buffer sizes exceeding a page's worth of
space, as will happen with AMX as well as Architectural LBR.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: New.

--- a/xen/arch/x86/domctl.c
+++ b/xen/arch/x86/domctl.c
@@ -30,6 +30,7 @@
 #include <xsm/xsm.h>
 #include <xen/iommu.h>
 #include <xen/vm_event.h>
+#include <xen/xvmalloc.h>
 #include <public/vm_event.h>
 #include <asm/mem_sharing.h>
 #include <asm/xstate.h>
@@ -380,7 +381,7 @@ long arch_do_domctl(
             goto sethvmcontext_out;
 
         ret = -ENOMEM;
-        if ( (c.data = xmalloc_bytes(c.size)) == NULL )
+        if ( (c.data = xvmalloc_bytes(c.size)) == NULL )
             goto sethvmcontext_out;
 
         ret = -EFAULT;
@@ -392,7 +393,7 @@ long arch_do_domctl(
         domain_unpause(d);
 
     sethvmcontext_out:
-        xfree(c.data);
+        xvfree(c.data);
         break;
     }
 
@@ -422,7 +423,7 @@ long arch_do_domctl(
 
         /* Allocate our own marshalling buffer */
         ret = -ENOMEM;
-        if ( (c.data = xmalloc_bytes(c.size)) == NULL )
+        if ( (c.data = xvmalloc_bytes(c.size)) == NULL )
             goto gethvmcontext_out;
 
         domain_pause(d);
@@ -435,7 +436,7 @@ long arch_do_domctl(
 
     gethvmcontext_out:
         copyback = true;
-        xfree(c.data);
+        xvfree(c.data);
         break;
     }
 
@@ -953,7 +954,7 @@ long arch_do_domctl(
             if ( !ret && size > PV_XSAVE_HDR_SIZE )
             {
                 unsigned int xsave_size = size - PV_XSAVE_HDR_SIZE;
-                void *xsave_area = xmalloc_bytes(xsave_size);
+                void *xsave_area = xvmalloc_bytes(xsave_size);
 
                 if ( !xsave_area )
                 {
@@ -967,7 +968,7 @@ long arch_do_domctl(
                 if ( copy_to_guest_offset(evc->buffer, offset, xsave_area,
                                           xsave_size) )
                      ret = -EFAULT;
-                xfree(xsave_area);
+                xvfree(xsave_area);
            }
 
             vcpu_unpause(v);
@@ -987,7 +988,7 @@ long arch_do_domctl(
                  evc->size > PV_XSAVE_SIZE(xfeature_mask) )
                 goto vcpuextstate_out;
 
-            receive_buf = xmalloc_bytes(evc->size);
+            receive_buf = xvmalloc_bytes(evc->size);
             if ( !receive_buf )
             {
                 ret = -ENOMEM;
@@ -997,7 +998,7 @@ long arch_do_domctl(
                                         offset, evc->size) )
             {
                 ret = -EFAULT;
-                xfree(receive_buf);
+                xvfree(receive_buf);
                 goto vcpuextstate_out;
             }
 
@@ -1015,7 +1016,7 @@ long arch_do_domctl(
                 ret = 0;
             if ( ret )
             {
-                xfree(receive_buf);
+                xvfree(receive_buf);
                 goto vcpuextstate_out;
             }
 
@@ -1043,7 +1044,7 @@ long arch_do_domctl(
                 vcpu_unpause(v);
             }
 
-            xfree(receive_buf);
+            xvfree(receive_buf);
         }
 
 #undef PV_XSAVE_HDR_SIZE
--- a/xen/arch/x86/hvm/save.c
+++ b/xen/arch/x86/hvm/save.c
@@ -23,6 +23,7 @@
 #include <xen/guest_access.h>
 #include <xen/softirq.h>
 #include <xen/version.h>
+#include <xen/xvmalloc.h>
 
 #include <asm/hvm/support.h>
 
@@ -154,7 +155,7 @@ int hvm_save_one(struct domain *d, unsig
     else
         v = d->vcpu[instance];
     ctxt.size = hvm_sr_handlers[typecode].size;
-    ctxt.data = xmalloc_bytes(ctxt.size);
+    ctxt.data = xvmalloc_bytes(ctxt.size);
     if ( !ctxt.data )
         return -ENOMEM;
 
@@ -200,7 +201,7 @@ int hvm_save_one(struct domain *d, unsig
     else
         domain_unpause(d);
 
-    xfree(ctxt.data);
+    xvfree(ctxt.data);
     return rv;
 }
 



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:49:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:49:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115499.220380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZadZ-00047j-CK; Thu, 22 Apr 2021 14:49:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115499.220380; Thu, 22 Apr 2021 14:49: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 1lZadZ-00047c-8F; Thu, 22 Apr 2021 14:49:01 +0000
Received: by outflank-mailman (input) for mailman id 115499;
 Thu, 22 Apr 2021 14:48:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZadX-00047W-C6
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:48:59 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bfa7b65c-c3e7-45be-9a66-a31a63cbdbdf;
 Thu, 22 Apr 2021 14:48:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 76379B16E;
 Thu, 22 Apr 2021 14:48:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bfa7b65c-c3e7-45be-9a66-a31a63cbdbdf
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619102937; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=whV4digUq1DW2nHxtRw8sF8wf/NZv487D6zdQFusjPM=;
	b=X3NfmOp8L/htldif072mA7Zp7Wbak0BirqDpv3UbwamSUvZZgtip5n9ZlgHQ2+d3wk7Z3l
	7gZSTZjr/rseWEB0XbxmiVq5CzORG3pgw3wHoLK3EYj7Obt+K+arkMbD1ZFWkIPEyRvPcC
	d88IsqLLC3Cbe4ptTbwFm5ihPmVxFYA=
Subject: [PATCH v3 09/22] x86/xstate: enable AMX components
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>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Anthony Perard <anthony.perard@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <0dbeab9e-087d-c7f5-3d79-f507e8ddeb0d@suse.com>
Date: Thu, 22 Apr 2021 16:48:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

These being controlled by XCR0, enabling support is relatively
straightforward. Note however that there won't be any use of them until
their dependent ISA extension CPUID flags get exposed, not the least due
to recalculate_xstate() handling the dependencies in kind of a reverse
manner.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: Add new states to XSTATE_NONLAZY.
v2: New.

--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -221,6 +221,9 @@ int libxl_cpuid_parse_config(libxl_cpuid
         {"md-clear",     0x00000007,  0, CPUID_REG_EDX, 10,  1},
         {"serialize",    0x00000007,  0, CPUID_REG_EDX, 14,  1},
         {"cet-ibt",      0x00000007,  0, CPUID_REG_EDX, 20,  1},
+        {"amx-bf16",     0x00000007,  0, CPUID_REG_EDX, 22,  1},
+        {"amx-tile",     0x00000007,  0, CPUID_REG_EDX, 24,  1},
+        {"amx-int8",     0x00000007,  0, CPUID_REG_EDX, 25,  1},
         {"ibrsb",        0x00000007,  0, CPUID_REG_EDX, 26,  1},
         {"stibp",        0x00000007,  0, CPUID_REG_EDX, 27,  1},
         {"l1d-flush",    0x00000007,  0, CPUID_REG_EDX, 28,  1},
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -168,7 +168,8 @@ static const char *const str_7d0[32] =
 
     [18] = "pconfig",
     [20] = "cet-ibt",
-
+    [22] = "amx-bf16",
+    [24] = "amx-tile",      [25] = "amx-int8",
     [26] = "ibrsb",         [27] = "stibp",
     [28] = "l1d-flush",     [29] = "arch-caps",
     [30] = "core-caps",     [31] = "ssbd",
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -198,6 +198,14 @@ static void recalculate_xstate(struct cp
                           xstate_size(X86_XCR0_PKRU_POS));
     }
 
+    if ( p->feat.amx_tile )
+    {
+        xstates |= X86_XCR0_TILECFG | X86_XCR0_TILEDATA;
+        xstate_size = max(xstate_size,
+                          xstate_offset(X86_XCR0_TILEDATA_POS) +
+                          xstate_size(X86_XCR0_TILEDATA_POS));
+    }
+
     p->xstate.max_size  =  xstate_size;
     p->xstate.xcr0_low  =  xstates & ~XSTATE_XSAVES_ONLY;
     p->xstate.xcr0_high = (xstates & ~XSTATE_XSAVES_ONLY) >> 32;
--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -640,6 +640,10 @@ static bool valid_xcr0(uint64_t xcr0)
     if ( !(xcr0 & X86_XCR0_BNDREGS) != !(xcr0 & X86_XCR0_BNDCSR) )
         return false;
 
+    /* TILECFG and TILEDATA must be the same. */
+    if ( !(xcr0 & X86_XCR0_TILECFG) != !(xcr0 & X86_XCR0_TILEDATA) )
+        return false;
+
     return true;
 }
 
--- a/xen/include/asm-x86/x86-defns.h
+++ b/xen/include/asm-x86/x86-defns.h
@@ -96,6 +96,10 @@
 #define X86_XCR0_HI_ZMM           (1ULL << X86_XCR0_HI_ZMM_POS)
 #define X86_XCR0_PKRU_POS         9
 #define X86_XCR0_PKRU             (1ULL << X86_XCR0_PKRU_POS)
+#define X86_XCR0_TILECFG_POS      17
+#define X86_XCR0_TILECFG          (1ULL << X86_XCR0_TILECFG_POS)
+#define X86_XCR0_TILEDATA_POS     18
+#define X86_XCR0_TILEDATA         (1ULL << X86_XCR0_TILEDATA_POS)
 #define X86_XCR0_LWP_POS          62
 #define X86_XCR0_LWP              (1ULL << X86_XCR0_LWP_POS)
 
--- a/xen/include/asm-x86/xstate.h
+++ b/xen/include/asm-x86/xstate.h
@@ -32,7 +32,8 @@ extern uint32_t mxcsr_mask;
 #define XSTATE_FP_SSE  (X86_XCR0_FP | X86_XCR0_SSE)
 
 #define XSTATE_ALL     (~(1ULL << 63))
-#define XSTATE_NONLAZY (X86_XCR0_BNDREGS | X86_XCR0_BNDCSR | X86_XCR0_PKRU)
+#define XSTATE_NONLAZY (X86_XCR0_BNDREGS | X86_XCR0_BNDCSR | X86_XCR0_PKRU | \
+                        X86_XCR0_TILECFG | X86_XCR0_TILEDATA)
 #define XSTATE_LAZY    (XSTATE_ALL & ~XSTATE_NONLAZY)
 #define XSTATE_XSAVES_ONLY         0
 #define XSTATE_COMPACTION_ENABLED  (1ULL << 63)
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -268,6 +268,9 @@ XEN_CPUFEATURE(MD_CLEAR,      9*32+10) /
 XEN_CPUFEATURE(TSX_FORCE_ABORT, 9*32+13) /* MSR_TSX_FORCE_ABORT.RTM_ABORT */
 XEN_CPUFEATURE(SERIALIZE,     9*32+14) /*a  SERIALIZE insn */
 XEN_CPUFEATURE(CET_IBT,       9*32+20) /*   CET - Indirect Branch Tracking */
+XEN_CPUFEATURE(AMX_BF16,      9*32+22) /*   AMX BFloat16 instructions */
+XEN_CPUFEATURE(AMX_TILE,      9*32+24) /*   AMX tile architecture */
+XEN_CPUFEATURE(AMX_INT8,      9*32+25) /*   AMX 8-bit integer instructions */
 XEN_CPUFEATURE(IBRSB,         9*32+26) /*A  IBRS and IBPB support (used by Intel) */
 XEN_CPUFEATURE(STIBP,         9*32+27) /*A  STIBP */
 XEN_CPUFEATURE(L1D_FLUSH,     9*32+28) /*S  MSR_FLUSH_CMD and L1D flush. */
--- a/xen/tools/gen-cpuid.py
+++ b/xen/tools/gen-cpuid.py
@@ -222,7 +222,7 @@ def crunch_numbers(state):
         # instruction groups which are specified to require XSAVE for state
         # management.
         XSAVE: [XSAVEOPT, XSAVEC, XGETBV1, XSAVES,
-                AVX, MPX, PKU, LWP],
+                AVX, MPX, PKU, AMX_TILE, LWP],
 
         # AVX is taken to mean hardware support for 256bit registers (which in
         # practice depends on the VEX prefix to encode), and the instructions
@@ -290,6 +290,11 @@ def crunch_numbers(state):
 
         # In principle the TSXLDTRK insns could also be considered independent.
         RTM: [TSXLDTRK],
+
+        # AMX-TILE means hardware support for tile registers and general non-
+        # computational instructions.  All further AMX features are built on top
+        # of AMX-TILE.
+        AMX_TILE: [AMX_BF16, AMX_INT8],
     }
 
     deep_features = tuple(sorted(deps.keys()))



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:50:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:50:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115504.220392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaek-0004xw-OR; Thu, 22 Apr 2021 14:50:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115504.220392; Thu, 22 Apr 2021 14:50: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 1lZaek-0004xp-KF; Thu, 22 Apr 2021 14:50:14 +0000
Received: by outflank-mailman (input) for mailman id 115504;
 Thu, 22 Apr 2021 14:50:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaej-0004xj-E9
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:50:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c9b0d180-a439-4877-9c45-42c6449251d1;
 Thu, 22 Apr 2021 14:50:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DBFB9B177;
 Thu, 22 Apr 2021 14: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: c9b0d180-a439-4877-9c45-42c6449251d1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103012; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=+QdQWxNcKE7APKYxJnP/WcIc9s52TlEnJpEVbzCgqbg=;
	b=e3PtmwVNBCYQunHtm0GS0/Knk0Q82wV/Vg2een4wPBNxR2Xuc8jPezfKm2//rVxqgIm88k
	EEVMG6y5gJKG6tkSNyGQjb6/b6KqFe3XdYwtL0U0S6Z9j+QflvW/uBqSpxE+fwWfXC1mjE
	JPCbTjuL8H4Z1M5Mb+slvDTIQZP+7l4=
Subject: [PATCH v3 10/22] x86/CPUID: adjust extended leaves out of range
 clearing
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <b274066d-b9b3-a60b-dc6b-64d9e380dffa@suse.com>
Date: Thu, 22 Apr 2021 16:50:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

A maximum extended leaf input value with the high half different from
0x8000 should not be considered valid - all leaves should be cleared in
this case.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---
TBD: Andrew suggested to drop this patch, but that sub-thread still has
     a loose end. Hence, until I'm convinced otherwise, I've retained
     this patch here. I don't think it conflicts with any of the
     subsequent ones.
---
v2: Integrate into series.

--- a/tools/tests/cpu-policy/test-cpu-policy.c
+++ b/tools/tests/cpu-policy/test-cpu-policy.c
@@ -519,11 +519,22 @@ static void test_cpuid_out_of_range_clea
             },
         },
         {
+            .name = "no extd",
+            .nr_markers = 0,
+            .p = {
+                /* Clears all markers. */
+                .extd.max_leaf = 0,
+
+                .extd.vendor_ebx = 0xc2,
+                .extd.raw_fms = 0xc2,
+            },
+        },
+        {
             .name = "extd",
             .nr_markers = 1,
             .p = {
                 /* Retains marker in leaf 0.  Clears others. */
-                .extd.max_leaf = 0,
+                .extd.max_leaf = 0x80000000,
                 .extd.vendor_ebx = 0xc2,
 
                 .extd.raw_fms = 0xc2,
--- a/xen/lib/x86/cpuid.c
+++ b/xen/lib/x86/cpuid.c
@@ -232,7 +232,9 @@ void x86_cpuid_policy_clear_out_of_range
                     ARRAY_SIZE(p->xstate.raw) - 1);
     }
 
-    zero_leaves(p->extd.raw, (p->extd.max_leaf & 0xffff) + 1,
+    zero_leaves(p->extd.raw,
+                ((p->extd.max_leaf >> 16) == 0x8000
+                 ? (p->extd.max_leaf & 0xffff) + 1 : 0),
                 ARRAY_SIZE(p->extd.raw) - 1);
 }
 



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:50:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:50:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115508.220403 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZafC-00053a-0V; Thu, 22 Apr 2021 14:50:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115508.220403; Thu, 22 Apr 2021 14:50: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 1lZafB-00053T-Ti; Thu, 22 Apr 2021 14:50:41 +0000
Received: by outflank-mailman (input) for mailman id 115508;
 Thu, 22 Apr 2021 14:50:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZafB-00053M-0t
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:50:41 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e877c9df-396e-4d3d-babf-7035a0da8ede;
 Thu, 22 Apr 2021 14:50:40 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7E701AEC6;
 Thu, 22 Apr 2021 14:50: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: e877c9df-396e-4d3d-babf-7035a0da8ede
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103039; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=8opvY7uAAKKl+VTk1uX8v+giIhvZM4yDWQN/O3L3BD0=;
	b=NnH0ao7PeJ7xx6CqWxxfekzBqhEfxincSwKDwUwRX+EzXPGc/ci3yMfQXRf27SrZzLask1
	Nx0pBksaUD6dhP4b/MNIVyxFc8FBrjp21p7JjbzXQSsfC/Bw+Zc72pQYvfUbKKzGkYTurk
	5jaDGLh9rFgtP9IOq+oqGRx98ECrqq4=
Subject: [PATCH v3 11/22] x86/CPUID: move bounding of max_{,sub}leaf fields to
 library code
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <079ec0a9-fde7-e7a9-40d1-bea50a0c9a0a@suse.com>
Date: Thu, 22 Apr 2021 16:50:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Break out this logic from calculate_host_policy() to also use it in the
x86 emulator harness, where subsequently we'll want to avoid open-coding
AMX maximum palette bounding.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: New.

--- a/tools/tests/x86_emulator/x86-emulate.c
+++ b/tools/tests/x86_emulator/x86-emulate.c
@@ -79,6 +79,7 @@ bool emul_test_init(void)
     unsigned long sp;
 
     x86_cpuid_policy_fill_native(&cp);
+    x86_cpuid_policy_bound_max_leaves(&cp);
 
     /*
      * The emulator doesn't use these instructions, so can always emulate
@@ -91,6 +92,8 @@ bool emul_test_init(void)
     cp.feat.rdpid = true;
     cp.extd.clzero = true;
 
+    x86_cpuid_policy_shrink_max_leaves(&cp);
+
     if ( cpu_has_xsave )
     {
         unsigned int tmp, ebx;
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -322,12 +322,7 @@ static void __init calculate_host_policy
 
     *p = raw_cpuid_policy;
 
-    p->basic.max_leaf =
-        min_t(uint32_t, p->basic.max_leaf,   ARRAY_SIZE(p->basic.raw) - 1);
-    p->feat.max_subleaf =
-        min_t(uint32_t, p->feat.max_subleaf, ARRAY_SIZE(p->feat.raw) - 1);
-    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, p->extd.max_leaf & 0xffff,
-                                          ARRAY_SIZE(p->extd.raw) - 1);
+    x86_cpuid_policy_bound_max_leaves(p);
 
     cpuid_featureset_to_policy(boot_cpu_data.x86_capability, p);
     recalculate_xstate(p);
--- a/xen/include/xen/lib/x86/cpuid.h
+++ b/xen/include/xen/lib/x86/cpuid.h
@@ -352,6 +352,12 @@ void x86_cpuid_policy_fill_native(struct
 void x86_cpuid_policy_clear_out_of_range_leaves(struct cpuid_policy *p);
 
 /**
+ * Bound max leaf/subleaf values according to the capacity of the respective
+ * arrays in struct cpuid_policy.
+ */
+void x86_cpuid_policy_bound_max_leaves(struct cpuid_policy *p);
+
+/**
  * Shrink max leaf/subleaf values such that the last respective valid entry
  * isn't all blank.  While permitted by the spec, such extraneous leaves may
  * provide undue "hints" to guests.
--- a/xen/lib/x86/cpuid.c
+++ b/xen/lib/x86/cpuid.c
@@ -238,6 +238,16 @@ void x86_cpuid_policy_clear_out_of_range
                 ARRAY_SIZE(p->extd.raw) - 1);
 }
 
+void x86_cpuid_policy_bound_max_leaves(struct cpuid_policy *p)
+{
+    p->basic.max_leaf =
+        min_t(uint32_t, p->basic.max_leaf, ARRAY_SIZE(p->basic.raw) - 1);
+    p->feat.max_subleaf =
+        min_t(uint32_t, p->feat.max_subleaf, ARRAY_SIZE(p->feat.raw) - 1);
+    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, p->extd.max_leaf & 0xffff,
+                                          ARRAY_SIZE(p->extd.raw) - 1);
+}
+
 void x86_cpuid_policy_shrink_max_leaves(struct cpuid_policy *p)
 {
     unsigned int i;



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:51:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:51:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115512.220416 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZafr-0005At-9o; Thu, 22 Apr 2021 14:51:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115512.220416; Thu, 22 Apr 2021 14:51: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 1lZafr-0005Am-6Y; Thu, 22 Apr 2021 14:51:23 +0000
Received: by outflank-mailman (input) for mailman id 115512;
 Thu, 22 Apr 2021 14:51:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZafp-0005Ad-BK
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:51:21 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7ed209c1-2804-4e19-9b3f-e9d820fb28fd;
 Thu, 22 Apr 2021 14:51:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E59FFABB1;
 Thu, 22 Apr 2021 14:51: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: 7ed209c1-2804-4e19-9b3f-e9d820fb28fd
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103079; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=t+XcRDhrAUGOG8nc9gmJBAzFifKvbp2kVW+qfBTeKyQ=;
	b=sMzh/TVrXZEHbTXWsLQa/zcPDFjnUNJJA3n+oQdjCTew3yW/KWDxhXmAvixJ6PVLfsNWSh
	owkrD2tahxdbLwKBWU6Tp5mYul/SLF+1mhpsbA4MdDC5uAI9GVI2O2VlKzWgJx6E7Kb7LM
	gBI/hFT250K8OYy+DMa+MS8/3A89xkw=
Subject: [PATCH v3 12/22] x86/CPUID: enable AMX leaves
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <45685598-4fa8-7c8e-d1f1-ee550c4c9ab9@suse.com>
Date: Thu, 22 Apr 2021 16:51:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This requires bumping the number of basic leaves we support. Apart from
this the logic is modeled as closely as possible to that of leaf 7
handling.

The checks in x86_cpu_policies_are_compatible() may be more strict than
they ultimately need to be, but I'd rather start being on the safe side.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: New.
---
It's not clear to me in how far libxl_cpuid.c would want extending: It
doesn't look to offer a way to override the maximum subleaf of leaf 7.
In fact I can't seem to be able to spot a max extended leaf override
mechanism either.

--- a/tools/tests/cpu-policy/test-cpu-policy.c
+++ b/tools/tests/cpu-policy/test-cpu-policy.c
@@ -190,6 +190,40 @@ static void test_cpuid_serialise_success
             },
             .nr_leaves = 4 + 0xd + 1 + 1,
         },
+
+        /* Leaf 0x1d serialisation stops at max_palette. */
+        {
+            .name = "empty leaf 0x1d",
+            .p = {
+                .basic.max_leaf = 0x1d,
+            },
+            .nr_leaves = 4 + 0x1d + 1,
+        },
+        {
+            .name = "partial leaf 0x1d",
+            .p = {
+                .basic.max_leaf = 0x1d,
+                .tile.max_palette = 1,
+            },
+            .nr_leaves = 4 + 0x1d + 1 + 1,
+        },
+
+        /* Leaf 0x1e serialisation stops at 0. */
+        {
+            .name = "empty leaf 0x1e",
+            .p = {
+                .basic.max_leaf = 0x1e,
+            },
+            .nr_leaves = 4 + 0x1e + 1,
+        },
+        {
+            .name = "partial leaf 0x1e",
+            .p = {
+                .basic.max_leaf = 0x1e,
+                .tmul.maxk = 16,
+            },
+            .nr_leaves = 4 + 0x1e + 1,
+        },
     };
 
     printf("Testing CPUID serialise success:\n");
@@ -321,6 +355,14 @@ static void test_cpuid_deserialise_failu
             .leaf = { .leaf = 0xd, .subleaf = CPUID_GUEST_NR_XSTATE },
         },
         {
+            .name = "OoB tile leaf",
+            .leaf = { .leaf = 0x1d, .subleaf = CPUID_GUEST_NR_PALETTE },
+        },
+        {
+            .name = "OoB tmul leaf",
+            .leaf = { .leaf = 0x1e, .subleaf = CPUID_GUEST_NR_TMUL },
+        },
+        {
             .name = "OoB extd leaf",
             .leaf = { .leaf = 0x80000000 | CPUID_GUEST_NR_EXTD },
         },
@@ -432,6 +474,8 @@ static void test_cpuid_out_of_range_clea
                 .topo.raw[0].a = 0xc2,
                 .xstate.raw[0].a = 0xc2,
                 .xstate.raw[1].a = 0xc2,
+                .tile.raw[0].a = 0xc2,
+                .tmul.raw[0].a = 0xc2,
             },
         },
         {
@@ -447,6 +491,8 @@ static void test_cpuid_out_of_range_clea
                 .topo.raw[0].a = 0xc2,
                 .xstate.raw[0].a = 0xc2,
                 .xstate.raw[1].a = 0xc2,
+                .tile.raw[0].a = 0xc2,
+                .tmul.raw[0].a = 0xc2,
             },
         },
         {
@@ -461,6 +507,8 @@ static void test_cpuid_out_of_range_clea
                 .topo.raw[0].a = 0xc2,
                 .xstate.raw[0].a = 0xc2,
                 .xstate.raw[1].a = 0xc2,
+                .tile.raw[0].a = 0xc2,
+                .tmul.raw[0].a = 0xc2,
             },
         },
         {
@@ -474,6 +522,8 @@ static void test_cpuid_out_of_range_clea
                 .topo.raw[1].b = 0xc2,
                 .xstate.raw[0].a = 0xc2,
                 .xstate.raw[1].a = 0xc2,
+                .tile.raw[0].a = 0xc2,
+                .tmul.raw[0].a = 0xc2,
             },
         },
         {
@@ -488,6 +538,8 @@ static void test_cpuid_out_of_range_clea
 
                 .xstate.raw[2].b = 0xc2,
                 .xstate.raw[3].b = 0xc2,
+                .tile.raw[0].a = 0xc2,
+                .tmul.raw[0].a = 0xc2,
             },
         },
         {
@@ -530,6 +582,34 @@ static void test_cpuid_out_of_range_clea
             },
         },
         {
+            .name = "tile no palette",
+            .nr_markers = 0,
+            .p = {
+                /* First two subleaves invalid as a pair.  Others cleared. */
+                .basic.max_leaf = 0x1d,
+                .xstate.xcr0_low = XSTATE_FP_SSE,
+
+                .tile.raw[0].a = 0xc2,
+                .tile.raw[1].b = 0xc2,
+                .tmul.raw[0].a = 0xc2,
+            },
+        },
+        {
+            .name = "tile palette 1",
+            .nr_markers = 1,
+            .p = {
+                /* First two subleaves valid as a pair.  Others cleared. */
+                .basic.max_leaf = 0x1d,
+                .feat.amx_tile = 1,
+                .xstate.xcr0_low = XSTATE_FP_SSE | X86_XCR0_TILECFG |
+                                   X86_XCR0_TILEDATA,
+                .tile.raw[0].a = 1,
+                .tile.raw[1].b = 0xc2,
+
+                .tmul.raw[0].a = 0xc2,
+            },
+        },
+        {
             .name = "extd",
             .nr_markers = 1,
             .p = {
@@ -624,6 +704,24 @@ static void test_cpuid_maximum_leaf_shri
             },
         },
         {
+            .name = "tile",
+            .p = {
+                /* Subleaf 1 only with some valid value. */
+                .basic.max_leaf = 0x1d,
+                .tile.raw[0].a = 1,
+                .tile.raw[1].a = 1024,
+            },
+        },
+        {
+            .name = "tmul",
+            .p = {
+                /* Subleaf 0 only with some valid values. */
+                .basic.max_leaf = 0x1e,
+                .tmul.maxk = 16,
+                .tmul.maxn = 16,
+            },
+        },
+        {
             .name = "extd",
             .p = {
                 /* Commonly available information only. */
@@ -643,6 +741,7 @@ static void test_cpuid_maximum_leaf_shri
 
         p->basic.max_leaf = ARRAY_SIZE(p->basic.raw) - 1;
         p->feat.max_subleaf = ARRAY_SIZE(p->feat.raw) - 1;
+        p->tile.max_palette = ARRAY_SIZE(p->tile.raw) - 1;
         p->extd.max_leaf = 0x80000000 | (ARRAY_SIZE(p->extd.raw) - 1);
 
         x86_cpuid_policy_shrink_max_leaves(p);
@@ -660,6 +759,10 @@ static void test_cpuid_maximum_leaf_shri
              fail("  Test %s feat fail - expected %#x, got %#x\n",
                   t->name, t->p.feat.max_subleaf, p->feat.max_subleaf);
 
+        if ( p->tile.max_palette != t->p.tile.max_palette )
+             fail("  Test %s tile fail - expected %#x, got %#x\n",
+                  t->name, t->p.tile.max_palette, p->tile.max_palette);
+
         free(p);
     }
 }
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -233,6 +233,29 @@ static void recalculate_xstate(struct cp
     }
 }
 
+static void recalculate_tile(struct cpuid_policy *p)
+{
+    unsigned int i;
+
+    if ( !p->feat.amx_tile )
+    {
+        memset(&p->tile, 0, sizeof(p->tile));
+        memset(&p->tmul, 0, sizeof(p->tmul));
+        return;
+    }
+
+    p->tile.raw[0].b = p->tile.raw[0].c = p->tile.raw[0].d = 0;
+
+    for ( i = 1; i <= p->tile.max_palette; ++i )
+    {
+        p->tile.raw[i].c &= 0x0000ffff;
+        p->tile.raw[i].d = 0;
+    }
+
+    p->tmul.raw[0].a = p->tmul.raw[0].c = p->tmul.raw[0].d = 0;
+    p->tmul.raw[0].b &= 0x00ffffff;
+}
+
 /*
  * Misc adjustments to the policy.  Mostly clobbering reserved fields and
  * duplicating shared fields.  Intentionally hidden fields are annotated.
@@ -252,6 +275,8 @@ static void recalculate_misc(struct cpui
 
     p->basic.raw[0xc] = EMPTY_LEAF;
 
+    zero_leaves(p->basic.raw, 0xe, 0x1c);
+
     p->extd.e1d &= ~CPUID_COMMON_1D_FEATURES;
 
     /* Most of Power/RAS hidden from guests. */
@@ -326,6 +351,7 @@ static void __init calculate_host_policy
 
     cpuid_featureset_to_policy(boot_cpu_data.x86_capability, p);
     recalculate_xstate(p);
+    recalculate_tile(p);
     recalculate_misc(p);
 
     /* When vPMU is disabled, drop it from the host policy. */
@@ -413,6 +439,7 @@ static void __init calculate_pv_max_poli
     sanitise_featureset(pv_featureset);
     cpuid_featureset_to_policy(pv_featureset, p);
     recalculate_xstate(p);
+    recalculate_tile(p);
 
     p->extd.raw[0xa] = EMPTY_LEAF; /* No SVM for PV guests. */
 
@@ -437,6 +464,7 @@ static void __init calculate_pv_def_poli
     sanitise_featureset(pv_featureset);
     cpuid_featureset_to_policy(pv_featureset, p);
     recalculate_xstate(p);
+    recalculate_tile(p);
 
     x86_cpuid_policy_shrink_max_leaves(p);
 }
@@ -504,6 +532,7 @@ static void __init calculate_hvm_max_pol
     sanitise_featureset(hvm_featureset);
     cpuid_featureset_to_policy(hvm_featureset, p);
     recalculate_xstate(p);
+    recalculate_tile(p);
 
     x86_cpuid_policy_shrink_max_leaves(p);
 }
@@ -530,6 +559,7 @@ static void __init calculate_hvm_def_pol
     sanitise_featureset(hvm_featureset);
     cpuid_featureset_to_policy(hvm_featureset, p);
     recalculate_xstate(p);
+    recalculate_tile(p);
 
     x86_cpuid_policy_shrink_max_leaves(p);
 }
@@ -600,6 +630,7 @@ void recalculate_cpuid_policy(struct dom
 
     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->tile.max_palette = min(p->tile.max_palette, max->tile.max_palette);
     p->extd.max_leaf    = 0x80000000 | min(p->extd.max_leaf & 0xffff,
                                            ((p->x86_vendor & (X86_VENDOR_AMD |
                                                               X86_VENDOR_HYGON))
@@ -690,6 +721,7 @@ void recalculate_cpuid_policy(struct dom
     p->extd.maxlinaddr = p->extd.lm ? 48 : 32;
 
     recalculate_xstate(p);
+    recalculate_tile(p);
     recalculate_misc(p);
 
     for ( i = 0; i < ARRAY_SIZE(p->cache.raw); ++i )
@@ -812,6 +844,22 @@ void guest_cpuid(const struct vcpu *v, u
             *res = array_access_nospec(p->xstate.raw, subleaf);
             break;
 
+        case 0x1d:
+            ASSERT(p->tile.max_palette < ARRAY_SIZE(p->tile.raw));
+            if ( subleaf > min_t(uint32_t, p->tile.max_palette,
+                                 ARRAY_SIZE(p->tile.raw) - 1) )
+                return;
+
+            *res = array_access_nospec(p->tile.raw, subleaf);
+            break;
+
+        case 0x1e:
+            if ( subleaf >= ARRAY_SIZE(p->tmul.raw) )
+                return;
+
+            *res = array_access_nospec(p->tmul.raw, subleaf);
+            break;
+
         default:
             *res = array_access_nospec(p->basic.raw, leaf);
             break;
@@ -1145,6 +1193,8 @@ static void __init __maybe_unused build_
                  sizeof(raw_cpuid_policy.feat.raw));
     BUILD_BUG_ON(sizeof(raw_cpuid_policy.xstate) !=
                  sizeof(raw_cpuid_policy.xstate.raw));
+    BUILD_BUG_ON(sizeof(raw_cpuid_policy.tile) !=
+                 sizeof(raw_cpuid_policy.tile.raw));
     BUILD_BUG_ON(sizeof(raw_cpuid_policy.extd) !=
                  sizeof(raw_cpuid_policy.extd.raw));
 }
--- a/xen/include/xen/lib/x86/cpuid.h
+++ b/xen/include/xen/lib/x86/cpuid.h
@@ -78,11 +78,13 @@ unsigned int x86_cpuid_lookup_vendor(uin
  */
 const char *x86_cpuid_vendor_to_str(unsigned int vendor);
 
-#define CPUID_GUEST_NR_BASIC      (0xdu + 1)
+#define CPUID_GUEST_NR_BASIC      (0x1eu + 1)
 #define CPUID_GUEST_NR_CACHE      (5u + 1)
 #define CPUID_GUEST_NR_FEAT       (1u + 1)
 #define CPUID_GUEST_NR_TOPO       (1u + 1)
 #define CPUID_GUEST_NR_XSTATE     (62u + 1)
+#define CPUID_GUEST_NR_PALETTE    (1u + 1)
+#define CPUID_GUEST_NR_TMUL       (0u + 1)
 #define CPUID_GUEST_NR_EXTD_INTEL (0x8u + 1)
 #define CPUID_GUEST_NR_EXTD_AMD   (0x1cu + 1)
 #define CPUID_GUEST_NR_EXTD       MAX(CPUID_GUEST_NR_EXTD_INTEL, \
@@ -225,6 +227,35 @@ struct cpuid_policy
         } comp[CPUID_GUEST_NR_XSTATE];
     } xstate;
 
+    /* Structured tile information leaf: 0x00000001d[xx] */
+    union {
+        struct cpuid_leaf raw[CPUID_GUEST_NR_PALETTE];
+        struct {
+            /* Subleaf 0. */
+            uint32_t max_palette;
+            uint32_t /* b */:32, /* c */:32, /* d */:32;
+        };
+
+        /* Per-palette common state.  Valid for i >= 1. */
+        struct {
+            uint16_t tot_bytes, bytes_per_tile;
+            uint16_t bytes_per_row, num_regs;
+            uint16_t max_rows, :16;
+            uint32_t /* d */:32;
+        } palette[CPUID_GUEST_NR_PALETTE];
+    } tile;
+
+    /* Structured tmul information leaf: 0x00000001e[xx] */
+    union {
+        struct cpuid_leaf raw[CPUID_GUEST_NR_TMUL];
+        struct {
+            /* Subleaf 0. */
+            uint32_t /* a */:32;
+            uint32_t maxk:8, maxn:16, :8;
+            uint32_t /* c */:32, /* d */:32;
+        };
+    } tmul;
+
     /* Extended leaves: 0x800000xx */
     union {
         struct cpuid_leaf raw[CPUID_GUEST_NR_EXTD];
--- a/xen/lib/x86/cpuid.c
+++ b/xen/lib/x86/cpuid.c
@@ -170,6 +170,18 @@ void x86_cpuid_policy_fill_native(struct
         }
     }
 
+    if ( p->basic.max_leaf >= 0x1d )
+    {
+        cpuid_count_leaf(0x1d, 0, &p->tile.raw[0]);
+
+        for ( i = 1; i <= MIN(p->tile.max_palette,
+                              ARRAY_SIZE(p->tile.raw) - 1); ++i )
+            cpuid_count_leaf(0x1d, i, &p->tile.raw[i]);
+    }
+
+    if ( p->basic.max_leaf >= 0x1e )
+        cpuid_count_leaf(0x1e, 0, &p->tmul.raw[0]);
+
     /* Extended leaves. */
     cpuid_leaf(0x80000000, &p->extd.raw[0]);
     for ( i = 1; i <= MIN(p->extd.max_leaf & 0xffffU,
@@ -232,6 +244,19 @@ void x86_cpuid_policy_clear_out_of_range
                     ARRAY_SIZE(p->xstate.raw) - 1);
     }
 
+    if ( p->basic.max_leaf < 0x1d ||
+         (cpuid_policy_xstates(p) &
+          (X86_XCR0_TILECFG | X86_XCR0_TILEDATA)) !=
+         (X86_XCR0_TILECFG | X86_XCR0_TILEDATA) )
+        memset(p->tile.raw, 0, sizeof(p->tile.raw));
+    else
+        zero_leaves(p->tile.raw, p->tile.max_palette + 1,
+                    ARRAY_SIZE(p->tile.raw) - 1);
+
+    if ( p->basic.max_leaf < 0x1e || !p->tile.max_palette ||
+         (!p->feat.amx_int8 && !p->feat.amx_bf16) )
+        memset(p->tmul.raw, 0, sizeof(p->tmul.raw));
+
     zero_leaves(p->extd.raw,
                 ((p->extd.max_leaf >> 16) == 0x8000
                  ? (p->extd.max_leaf & 0xffff) + 1 : 0),
@@ -244,6 +269,8 @@ void x86_cpuid_policy_bound_max_leaves(s
         min_t(uint32_t, p->basic.max_leaf, ARRAY_SIZE(p->basic.raw) - 1);
     p->feat.max_subleaf =
         min_t(uint32_t, p->feat.max_subleaf, ARRAY_SIZE(p->feat.raw) - 1);
+    p->tile.max_palette =
+        min_t(uint32_t, p->tile.max_palette, ARRAY_SIZE(p->tile.raw) - 1);
     p->extd.max_leaf = 0x80000000 | min_t(uint32_t, p->extd.max_leaf & 0xffff,
                                           ARRAY_SIZE(p->extd.raw) - 1);
 }
@@ -271,6 +298,21 @@ void x86_cpuid_policy_shrink_max_leaves(
      */
     p->basic.raw[0xd] = p->xstate.raw[0];
 
+    for ( i = p->tile.max_palette; i; --i )
+        if ( p->tile.raw[i].a | p->tile.raw[i].b |
+             p->tile.raw[i].c | p->tile.raw[i].d )
+            break;
+    if ( i )
+        p->tile.max_palette = i;
+    else
+    {
+        ASSERT(!p->feat.amx_tile);
+        zero_leaves(p->tile.raw, 0, 0);
+    }
+    p->basic.raw[0x1d] = p->tile.raw[0];
+
+    p->basic.raw[0x1e] = p->tmul.raw[0];
+
     for ( i = p->basic.max_leaf; i; --i )
         if ( p->basic.raw[i].a | p->basic.raw[i].b |
              p->basic.raw[i].c | p->basic.raw[i].d )
@@ -404,6 +446,19 @@ int x86_cpuid_copy_to_buffer(const struc
             break;
         }
 
+        case 0x1d:
+            for ( subleaf = 0;
+                  subleaf <= MIN(p->tile.max_palette,
+                                 ARRAY_SIZE(p->tile.raw) - 1); ++subleaf )
+                COPY_LEAF(leaf, subleaf, &p->tile.raw[subleaf]);
+            break;
+
+        case 0x1e:
+            for ( subleaf = 0;
+                  subleaf <= ARRAY_SIZE(p->tmul.raw) - 1; ++subleaf )
+                COPY_LEAF(leaf, subleaf, &p->tmul.raw[subleaf]);
+            break;
+
         default:
             COPY_LEAF(leaf, XEN_CPUID_NO_SUBLEAF, &p->basic.raw[leaf]);
             break;
@@ -496,6 +551,20 @@ int x86_cpuid_copy_from_buffer(struct cp
                 array_access_nospec(p->xstate.raw, data.subleaf) = l;
                 break;
 
+            case 0x1d:
+                if ( data.subleaf >= ARRAY_SIZE(p->tile.raw) )
+                    goto out_of_range;
+
+                array_access_nospec(p->tile.raw, data.subleaf) = l;
+                break;
+
+            case 0x1e:
+                if ( data.subleaf >= ARRAY_SIZE(p->tmul.raw) )
+                    goto out_of_range;
+
+                array_access_nospec(p->tmul.raw, data.subleaf) = l;
+                break;
+
             default:
                 if ( data.subleaf != XEN_CPUID_NO_SUBLEAF )
                     goto out_of_range;
--- a/xen/lib/x86/policy.c
+++ b/xen/lib/x86/policy.c
@@ -7,6 +7,7 @@ int x86_cpu_policies_are_compatible(cons
                                     struct cpu_policy_errors *err)
 {
     struct cpu_policy_errors e = INIT_CPU_POLICY_ERRORS;
+    unsigned int i;
     int ret = -EINVAL;
 
 #define NA XEN_CPUID_NO_SUBLEAF
@@ -21,6 +22,31 @@ int x86_cpu_policies_are_compatible(cons
     if ( guest->cpuid->feat.max_subleaf > host->cpuid->feat.max_subleaf )
         FAIL_CPUID(7, 0);
 
+    if ( (guest->cpuid->feat.amx_tile && !guest->cpuid->tile.max_palette) ||
+         guest->cpuid->tile.max_palette > host->cpuid->tile.max_palette )
+        FAIL_CPUID(0x1d, 0);
+
+    for ( i = 1; i <= guest->cpuid->tile.max_palette; ++i )
+    {
+        const typeof(guest->cpuid->tile.palette[0]) *gt, *ht;
+
+        gt = &guest->cpuid->tile.palette[i];
+        ht = &host->cpuid->tile.palette[i];
+
+        if ( gt->tot_bytes != ht->tot_bytes ||
+             gt->bytes_per_tile != ht->bytes_per_tile ||
+             gt->bytes_per_row != ht->bytes_per_row ||
+             !gt->num_regs || gt->num_regs > ht->num_regs ||
+             !gt->max_rows || gt->max_rows > ht->max_rows )
+            FAIL_CPUID(0x1d, i);
+    }
+
+    if ( ((guest->cpuid->feat.amx_int8 || guest->cpuid->feat.amx_bf16) &&
+          (!guest->cpuid->tmul.maxk || !guest->cpuid->tmul.maxn)) ||
+         guest->cpuid->tmul.maxk > host->cpuid->tmul.maxk ||
+         guest->cpuid->tmul.maxn > host->cpuid->tmul.maxn )
+        FAIL_CPUID(0x1e, 0);
+
     if ( guest->cpuid->extd.max_leaf > host->cpuid->extd.max_leaf )
         FAIL_CPUID(0x80000000, NA);
 
--- a/xen/lib/x86/private.h
+++ b/xen/lib/x86/private.h
@@ -17,13 +17,17 @@
 
 #else
 
+#include <assert.h>
 #include <errno.h>
 #include <inttypes.h>
 #include <stdbool.h>
 #include <stddef.h>
 #include <string.h>
 
+#define ASSERT assert
+
 #include <xen/asm/msr-index.h>
+#include <xen/asm/x86-defns.h>
 #include <xen/asm/x86-vendors.h>
 
 #include <xen-tools/libs.h>



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:52:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:52:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115522.220428 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZagi-0005Kd-Nm; Thu, 22 Apr 2021 14:52:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115522.220428; Thu, 22 Apr 2021 14:52: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 1lZagi-0005KW-KW; Thu, 22 Apr 2021 14:52:16 +0000
Received: by outflank-mailman (input) for mailman id 115522;
 Thu, 22 Apr 2021 14:52:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZagg-0005KK-JQ
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:52:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f9b9b0f7-f713-4dc8-ad6e-36acc6dbc3ca;
 Thu, 22 Apr 2021 14:52:13 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 09220ABB1;
 Thu, 22 Apr 2021 14:52: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: f9b9b0f7-f713-4dc8-ad6e-36acc6dbc3ca
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103133; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=2hIV80jisyRvLb5ihKMWW9bM/ay0CiKgh0ql2H5RsPM=;
	b=tm24H5NP5jna4E6UlW1SBaKovSvPN3k+uf5i/MctxiWNKJim911uRL2h7cp337Ze6RhuKc
	ciJkhYkM7biBUY0fiQaI8qNXHQ+6bTgUTnUM0y/AZP5bGZkskfa4X0W/PXBDlw9N1+vAqS
	pgwwY1I5lvgXfsTbF/9LyezIqbm1qIk=
Subject: [PATCH v3 13/22] x86: XFD enabling
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>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Anthony Perard <anthony.perard@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <6f09bf89-6272-c9c0-1391-2620d6851b67@suse.com>
Date: Thu, 22 Apr 2021 16:52:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Just like for XCR0 we generally want to run with the guest settings of
the involved MSRs while in Xen. Hence saving/restoring of guest values
needs to only happen during context switch.

While adding the feature to libxl's table I've noticed the other XSAVE
sub-features all don't have entries there. These get added at the same
time.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: New.
---
I wasn't sure whether we want to have AMX depend on XFD. Purely from a
spec pov the two are independent features (without XFD one simply
wouldn't have a way to disable it for the purpose of lazy allocation of
state saving space).

--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -237,6 +237,12 @@ int libxl_cpuid_parse_config(libxl_cpuid
         {"fsrs",         0x00000007,  1, CPUID_REG_EAX, 11,  1},
         {"fsrcs",        0x00000007,  1, CPUID_REG_EAX, 12,  1},
 
+        {"xsaveopt",     0x0000000d,  1, CPUID_REG_EAX,  0,  1},
+        {"xsavec",       0x0000000d,  1, CPUID_REG_EAX,  1,  1},
+        {"xgetbv1",      0x0000000d,  1, CPUID_REG_EAX,  2,  1},
+        {"xsaves",       0x0000000d,  1, CPUID_REG_EAX,  3,  1},
+        {"xfd",          0x0000000d,  1, CPUID_REG_EAX,  4,  1},
+
         {"lahfsahf",     0x80000001, NA, CPUID_REG_ECX,  0,  1},
         {"cmplegacy",    0x80000001, NA, CPUID_REG_ECX,  1,  1},
         {"svm",          0x80000001, NA, CPUID_REG_ECX,  2,  1},
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -116,6 +116,7 @@ static const char *const str_Da1[32] =
 {
     [ 0] = "xsaveopt", [ 1] = "xsavec",
     [ 2] = "xgetbv1",  [ 3] = "xsaves",
+    [ 4] = "xfd",
 };
 
 static const char *const str_7c0[32] =
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -230,6 +230,7 @@ static void recalculate_xstate(struct cp
         p->xstate.comp[i].offset = xstate_offset(i);
         p->xstate.comp[i].xss    = curr_xstate & XSTATE_XSAVES_ONLY;
         p->xstate.comp[i].align  = curr_xstate & xstate_align;
+        p->xstate.comp[i].xfd    = curr_xstate & xfd_mask;
     }
 }
 
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1837,6 +1837,12 @@ void paravirt_ctxt_switch_to(struct vcpu
 
     if ( cpu_has_msr_tsc_aux )
         wrmsr_tsc_aux(v->arch.msrs->tsc_aux);
+
+    if ( v->domain->arch.cpuid->xstate.xfd )
+    {
+        wrmsrl(MSR_XFD, v->arch.msrs->xfd);
+        wrmsrl(MSR_XFD_ERR, v->arch.msrs->xfd_err);
+    }
 }
 
 /* Update per-VCPU guest runstate shared memory area (if registered). */
--- a/xen/arch/x86/domctl.c
+++ b/xen/arch/x86/domctl.c
@@ -1101,6 +1101,8 @@ long arch_do_domctl(
         static const uint32_t msrs_to_send[] = {
             MSR_SPEC_CTRL,
             MSR_INTEL_MISC_FEATURES_ENABLES,
+            MSR_XFD,
+            MSR_XFD_ERR,
             MSR_TSC_AUX,
             MSR_AMD64_DR0_ADDRESS_MASK,
             MSR_AMD64_DR1_ADDRESS_MASK,
--- a/xen/arch/x86/hvm/vmx/vmcs.c
+++ b/xen/arch/x86/hvm/vmx/vmcs.c
@@ -1178,6 +1178,12 @@ static int construct_vmcs(struct vcpu *v
         if ( (vmexit_ctl & VM_EXIT_CLEAR_BNDCFGS) &&
              (vmentry_ctl & VM_ENTRY_LOAD_BNDCFGS) )
             vmx_clear_msr_intercept(v, MSR_IA32_BNDCFGS, VMX_MSR_RW);
+
+        if ( d->arch.cpuid->xstate.xfd )
+        {
+            vmx_clear_msr_intercept(v, MSR_XFD, VMX_MSR_RW);
+            vmx_clear_msr_intercept(v, MSR_XFD_ERR, VMX_MSR_RW);
+        }
     }
 
     /* I/O access bitmap. */
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -539,6 +539,12 @@ static void vmx_save_guest_msrs(struct v
      */
     v->arch.hvm.vmx.shadow_gs = read_gs_shadow();
 
+    if ( v->domain->arch.cpuid->xstate.xfd )
+    {
+        rdmsrl(MSR_XFD, msrs->xfd);
+        rdmsrl(MSR_XFD_ERR, msrs->xfd_err);
+    }
+
     if ( v->arch.hvm.vmx.ipt_active )
     {
         rdmsrl(MSR_RTIT_OUTPUT_MASK, msrs->rtit.output_mask);
@@ -558,6 +564,12 @@ static void vmx_restore_guest_msrs(struc
     if ( cpu_has_msr_tsc_aux )
         wrmsr_tsc_aux(msrs->tsc_aux);
 
+    if ( v->domain->arch.cpuid->xstate.xfd )
+    {
+        wrmsrl(MSR_XFD, msrs->xfd);
+        wrmsrl(MSR_XFD_ERR, msrs->xfd_err);
+    }
+
     if ( v->arch.hvm.vmx.ipt_active )
     {
         wrmsrl(MSR_RTIT_OUTPUT_BASE, page_to_maddr(v->vmtrace.pg));
--- a/xen/arch/x86/msr.c
+++ b/xen/arch/x86/msr.c
@@ -29,6 +29,7 @@
 #include <asm/hvm/viridian.h>
 #include <asm/msr.h>
 #include <asm/setup.h>
+#include <asm/xstate.h>
 
 #include <public/hvm/params.h>
 
@@ -267,6 +268,18 @@ int guest_rdmsr(struct vcpu *v, uint32_t
         *val = msrs->misc_features_enables.raw;
         break;
 
+    case MSR_XFD:
+    case MSR_XFD_ERR:
+        if ( !cp->xstate.xfd )
+            goto gp_fault;
+        if ( v == curr && is_hvm_domain(d) )
+            rdmsrl(msr, *val);
+        else if ( msr == MSR_XFD )
+            *val = msrs->xfd;
+        else
+            *val = msrs->xfd_err;
+        break;
+
     case MSR_IA32_MCG_CAP     ... MSR_IA32_MCG_CTL:      /* 0x179 -> 0x17b */
     case MSR_IA32_MCx_CTL2(0) ... MSR_IA32_MCx_CTL2(31): /* 0x280 -> 0x29f */
     case MSR_IA32_MCx_CTL(0)  ... MSR_IA32_MCx_MISC(31): /* 0x400 -> 0x47f */
@@ -523,6 +536,19 @@ int guest_wrmsr(struct vcpu *v, uint32_t
         break;
     }
 
+    case MSR_XFD:
+    case MSR_XFD_ERR:
+        if ( !cp->xstate.xfd ||
+             (val & ~(cpuid_policy_xstates(cp) & xfd_mask)) )
+            goto gp_fault;
+        if ( v == curr )
+            wrmsrl(msr, val);
+        if ( msr == MSR_XFD )
+            msrs->xfd = val;
+        else
+            msrs->xfd_err = val;
+        break;
+
     case MSR_IA32_MCG_CAP     ... MSR_IA32_MCG_CTL:      /* 0x179 -> 0x17b */
     case MSR_IA32_MCx_CTL2(0) ... MSR_IA32_MCx_CTL2(31): /* 0x280 -> 0x29f */
     case MSR_IA32_MCx_CTL(0)  ... MSR_IA32_MCx_MISC(31): /* 0x400 -> 0x47f */
--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -29,6 +29,10 @@
 u64 __read_mostly xfeature_mask;
 
 u64 __read_mostly xstate_align;
+
+/* Mask of XSAVE/XRSTOR features supporting XFD. */
+uint64_t __read_mostly xfd_mask;
+
 static unsigned int __read_mostly xstate_features;
 
 uint32_t __read_mostly mxcsr_mask = 0x0000ffbf;
@@ -106,6 +110,11 @@ static int setup_xstate_features(bool bs
             __set_bit(leaf, &xstate_align);
         else
             BUG_ON(!(ecx & XSTATE_ALIGN64) != !test_bit(leaf, &xstate_align));
+
+        if ( bsp && (ecx & XSTATE_XFD) )
+            __set_bit(leaf, &xfd_mask);
+        else
+            BUG_ON(!(ecx & XSTATE_XFD) != !test_bit(leaf, &xfd_mask));
     }
 
     return 0;
--- a/xen/include/asm-x86/msr-index.h
+++ b/xen/include/asm-x86/msr-index.h
@@ -69,6 +69,10 @@
 #define MSR_MCU_OPT_CTRL                    0x00000123
 #define  MCU_OPT_CTRL_RNGDS_MITG_DIS        (_AC(1, ULL) <<  0)
 
+/* Bits within these two MSRs share positions with XCR0. */
+#define MSR_XFD                             0x000001c4
+#define MSR_XFD_ERR                         0x000001c5
+
 #define MSR_RTIT_OUTPUT_BASE                0x00000560
 #define MSR_RTIT_OUTPUT_MASK                0x00000561
 #define MSR_RTIT_CTL                        0x00000570
--- a/xen/include/asm-x86/msr.h
+++ b/xen/include/asm-x86/msr.h
@@ -343,6 +343,12 @@ struct vcpu_msrs
         uint64_t raw;
     } xss;
 
+    /* 0x000001c4 - MSR_XFD */
+    uint64_t xfd;
+
+    /* 0x000001c5 - MSR_XFD_ERR */
+    uint64_t xfd_err;
+
     /*
      * 0xc0000103 - MSR_TSC_AUX
      *
--- a/xen/include/asm-x86/xstate.h
+++ b/xen/include/asm-x86/xstate.h
@@ -39,9 +39,11 @@ extern uint32_t mxcsr_mask;
 #define XSTATE_COMPACTION_ENABLED  (1ULL << 63)
 
 #define XSTATE_ALIGN64 (1U << 1)
+#define XSTATE_XFD     (1U << 2)
 
 extern u64 xfeature_mask;
 extern u64 xstate_align;
+extern uint64_t xfd_mask;
 
 #define xstate_offset(n) (raw_cpuid_policy.xstate.comp[n].offset)
 #define xstate_size(n)   (raw_cpuid_policy.xstate.comp[n].size)
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -191,6 +191,7 @@ XEN_CPUFEATURE(XSAVEOPT,      4*32+ 0) /
 XEN_CPUFEATURE(XSAVEC,        4*32+ 1) /*A  XSAVEC/XRSTORC instructions */
 XEN_CPUFEATURE(XGETBV1,       4*32+ 2) /*A  XGETBV with %ecx=1 */
 XEN_CPUFEATURE(XSAVES,        4*32+ 3) /*S  XSAVES/XRSTORS instructions */
+XEN_CPUFEATURE(XFD,           4*32+ 4) /*   XFD / XFD_ERR MSRs */
 
 /* Intel-defined CPU features, CPUID level 0x00000007:0.ebx, word 5 */
 XEN_CPUFEATURE(FSGSBASE,      5*32+ 0) /*A  {RD,WR}{FS,GS}BASE instructions */
--- a/xen/include/xen/lib/x86/cpuid.h
+++ b/xen/include/xen/lib/x86/cpuid.h
@@ -222,7 +222,7 @@ struct cpuid_policy
         /* Per-component common state.  Valid for i >= 2. */
         struct {
             uint32_t size, offset;
-            bool xss:1, align:1;
+            bool xss:1, align:1, xfd:1;
             uint32_t _res_d;
         } comp[CPUID_GUEST_NR_XSTATE];
     } xstate;
--- a/xen/tools/gen-cpuid.py
+++ b/xen/tools/gen-cpuid.py
@@ -221,7 +221,7 @@ def crunch_numbers(state):
         # are instructions built on top of base XSAVE, while others are new
         # instruction groups which are specified to require XSAVE for state
         # management.
-        XSAVE: [XSAVEOPT, XSAVEC, XGETBV1, XSAVES,
+        XSAVE: [XSAVEOPT, XSAVEC, XGETBV1, XSAVES, XFD,
                 AVX, MPX, PKU, AMX_TILE, LWP],
 
         # AVX is taken to mean hardware support for 256bit registers (which in



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:53:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:53:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115526.220440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZahY-0005Rn-1b; Thu, 22 Apr 2021 14:53:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115526.220440; Thu, 22 Apr 2021 14:53:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZahX-0005Rg-UL; Thu, 22 Apr 2021 14:53:07 +0000
Received: by outflank-mailman (input) for mailman id 115526;
 Thu, 22 Apr 2021 14:53:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZahX-0005Ra-99
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:53:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c5a7a2ae-3752-4c6a-a4f1-b1c71f1aebc7;
 Thu, 22 Apr 2021 14:53:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B6228B12C;
 Thu, 22 Apr 2021 14:53:05 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c5a7a2ae-3752-4c6a-a4f1-b1c71f1aebc7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103185; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=x3YA7TeiA4XEzSJsFpFCqRC4Ay1WG3ZSQOmpYlC59ls=;
	b=r5Z3tPJLVcwGOEtqjSxBpldVS0yvlI56I7r2/8H4JXvKLeoi/rQQl1S6Hl6RpemlmklXQV
	GhrToU6siwujuJBRrR970qEXTIO4MBfBoN/Yn43i4doVwpLnNKfU3TxYx3HBn+LUg982VA
	yVjnK3+O7BTOOh6dx9vzlx9rg79F5mc=
Subject: [PATCH v3 14/22] x86emul: introduce X86EMUL_FPU_{tilecfg,tile}
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <3472a5ac-3b59-157f-ba21-997f5e726e4b@suse.com>
Date: Thu, 22 Apr 2021 16:53:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

These will be used by AMX insns. They're not sensitive to CR0.TS, but
instead some are sensitive to XFD.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: Separate X86EMUL_FPU_tilecfg. Use XFD alternative logic instead of
    checking CR0.TS.
v2: New.

--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -1420,6 +1420,13 @@ static int _get_fpu(
             return X86EMUL_UNHANDLEABLE;
         break;
 
+    case X86EMUL_FPU_tilecfg:
+    case X86EMUL_FPU_tile:
+        ASSERT(mode_64bit());
+        if ( !(xcr0 & X86_XCR0_TILECFG) || !(xcr0 & X86_XCR0_TILEDATA) )
+            return X86EMUL_UNHANDLEABLE;
+        break;
+
     default:
         break;
     }
@@ -1429,6 +1436,7 @@ static int _get_fpu(
     if ( rc == X86EMUL_OKAY )
     {
         unsigned long cr0;
+        uint64_t xcr0_needed = 0;
 
         fail_if(type == X86EMUL_FPU_fpu && !ops->put_fpu);
 
@@ -1453,15 +1461,45 @@ static int _get_fpu(
             /* Should be unreachable if VEX decoding is working correctly. */
             ASSERT((cr0 & X86_CR0_PE) && !(ctxt->regs->eflags & X86_EFLAGS_VM));
         }
-        if ( cr0 & X86_CR0_EM )
+
+        switch ( type )
+        {
+        default:
+            if ( cr0 & X86_CR0_EM )
+            {
+                generate_exception_if(type == X86EMUL_FPU_fpu, EXC_NM);
+                generate_exception_if(type == X86EMUL_FPU_mmx, EXC_UD);
+                generate_exception_if(type == X86EMUL_FPU_xmm, EXC_UD);
+            }
+            generate_exception_if((cr0 & X86_CR0_TS) &&
+                                  (type != X86EMUL_FPU_wait ||
+                                   (cr0 & X86_CR0_MP)),
+                                  EXC_NM);
+            break;
+
+        case X86EMUL_FPU_tilecfg:
+            break;
+
+        case X86EMUL_FPU_tile:
+            xcr0_needed = X86_XCR0_TILEDATA;
+            break;
+        }
+
+        if ( xcr0_needed && ctxt->cpuid->xstate.xfd )
         {
-            generate_exception_if(type == X86EMUL_FPU_fpu, EXC_NM);
-            generate_exception_if(type == X86EMUL_FPU_mmx, EXC_UD);
-            generate_exception_if(type == X86EMUL_FPU_xmm, EXC_UD);
+            uint64_t xfd;
+
+            fail_if(!ops->read_msr);
+            rc = ops->read_msr(MSR_XFD, &xfd, ctxt);
+            if ( rc == X86EMUL_OKAY && (xfd & xcr0_needed) )
+            {
+                fail_if(!ops->write_msr);
+                rc = ops->read_msr(MSR_XFD_ERR, &xfd, ctxt);
+                if ( rc == X86EMUL_OKAY )
+                    rc = ops->write_msr(MSR_XFD_ERR, xfd | xcr0_needed, ctxt);
+                generate_exception_if(rc == X86EMUL_OKAY, EXC_NM);
+            }
         }
-        generate_exception_if((cr0 & X86_CR0_TS) &&
-                              (type != X86EMUL_FPU_wait || (cr0 & X86_CR0_MP)),
-                              EXC_NM);
     }
 
  done:
--- a/xen/arch/x86/x86_emulate/x86_emulate.h
+++ b/xen/arch/x86/x86_emulate/x86_emulate.h
@@ -172,6 +172,8 @@ enum x86_emulate_fpu_type {
     X86EMUL_FPU_ymm, /* AVX/XOP instruction set (%ymm0-%ymm7/15) */
     X86EMUL_FPU_opmask, /* AVX512 opmask instruction set (%k0-%k7) */
     X86EMUL_FPU_zmm, /* AVX512 instruction set (%zmm0-%zmm7/31) */
+    X86EMUL_FPU_tilecfg, /* AMX configuration (tilecfg) */
+    X86EMUL_FPU_tile, /* AMX instruction set (%tmm0-%tmmN) */
     /* This sentinel will never be passed to ->get_fpu(). */
     X86EMUL_FPU_none
 };



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:53:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:53:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115530.220452 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZahw-0005YC-Ac; Thu, 22 Apr 2021 14:53:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115530.220452; Thu, 22 Apr 2021 14: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 1lZahw-0005Y3-6q; Thu, 22 Apr 2021 14:53:32 +0000
Received: by outflank-mailman (input) for mailman id 115530;
 Thu, 22 Apr 2021 14:53:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZahv-0005Xr-Ay
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:53:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8ee80abb-0a83-4cae-83a6-abef09b90889;
 Thu, 22 Apr 2021 14:53:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B094CAEC6;
 Thu, 22 Apr 2021 14:53: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: 8ee80abb-0a83-4cae-83a6-abef09b90889
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103209; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=6sH9ZStUceyjzleVNMQ/IZlMigDXrBHjCjtxo39B/zw=;
	b=mmEZ8yopdhasVdP8JPkF1gdcQ9LRt5DkRhQday7xIOXKH/wtWcIza0syOhw0SxQnsY8CCr
	bT7zuZUJEZnTIgYSasDqiOVscO2FvFjNgJedH/ltWvuqyDAkuumdC1zdxR3eOE1Ld2OeLV
	qMnEh8eo1RjdUH6oC3m6BcKcBKeUyAQ=
Subject: [PATCH v3 15/22] x86emul: support TILERELEASE
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <08ce1e1f-f521-3e7d-3f7c-206e8ba0afa3@suse.com>
Date: Thu, 22 Apr 2021 16:53:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This is relatively straightforward, and hence best suited to introduce a
few other general pieces.

Testing of this will be added once a sensible test can be put together,
i.e. when support for other insns is also there.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: New.

--- a/tools/tests/x86_emulator/predicates.c
+++ b/tools/tests/x86_emulator/predicates.c
@@ -1335,6 +1335,7 @@ static const struct vex {
     { { 0x45 }, 2, T, R, pfx_66, Wn, Ln }, /* vpsrlv{d,q} */
     { { 0x46 }, 2, T, R, pfx_66, W0, Ln }, /* vpsravd */
     { { 0x47 }, 2, T, R, pfx_66, Wn, Ln }, /* vpsllv{d,q} */
+    { { 0x49, 0xc0 }, 2, F, N, pfx_no, W0, L0 }, /* tilerelease */
     { { 0x50 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpbusd */
     { { 0x51 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpbusds */
     { { 0x52 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpwssd */
--- a/tools/tests/x86_emulator/x86-emulate.c
+++ b/tools/tests/x86_emulator/x86-emulate.c
@@ -247,6 +247,10 @@ int emul_test_get_fpu(
             break;
     default:
         return X86EMUL_UNHANDLEABLE;
+
+    case X86EMUL_FPU_tilecfg:
+    case X86EMUL_FPU_tile:
+        return cpu_has_amx_tile ? X86EMUL_OKAY : X86EMUL_UNHANDLEABLE;
     }
     return X86EMUL_OKAY;
 }
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -475,6 +475,7 @@ static const struct ext0f38_table {
     [0x43] = { .simd_size = simd_scalar_vexw, .d8s = d8s_dq },
     [0x44] = { .simd_size = simd_packed_int, .two_op = 1, .d8s = d8s_vl },
     [0x45 ... 0x47] = { .simd_size = simd_packed_int, .d8s = d8s_vl },
+    [0x49] = { .simd_size = simd_other, .two_op = 1 },
     [0x4c] = { .simd_size = simd_packed_fp, .two_op = 1, .d8s = d8s_vl },
     [0x4d] = { .simd_size = simd_scalar_vexw, .d8s = d8s_dq },
     [0x4e] = { .simd_size = simd_packed_fp, .two_op = 1, .d8s = d8s_vl },
@@ -2046,6 +2047,7 @@ amd_like(const struct x86_emulate_ctxt *
 #define vcpu_has_avx512_4fmaps() (ctxt->cpuid->feat.avx512_4fmaps)
 #define vcpu_has_avx512_vp2intersect() (ctxt->cpuid->feat.avx512_vp2intersect)
 #define vcpu_has_serialize()   (ctxt->cpuid->feat.serialize)
+#define vcpu_has_amx_tile()    (ctxt->cpuid->feat.amx_tile)
 #define vcpu_has_avx_vnni()    (ctxt->cpuid->feat.avx_vnni)
 #define vcpu_has_avx512_bf16() (ctxt->cpuid->feat.avx512_bf16)
 
@@ -9500,6 +9502,24 @@ x86_emulate(
         generate_exception_if(vex.l, EXC_UD);
         goto simd_0f_avx;
 
+    case X86EMUL_OPC_VEX(0x0f38, 0x49):
+        generate_exception_if(!mode_64bit() || vex.l || vex.w, EXC_UD);
+        if ( ea.type == OP_REG )
+        {
+            switch ( modrm )
+            {
+            case 0xc0: /* tilerelease */
+                host_and_vcpu_must_have(amx_tile);
+                get_fpu(X86EMUL_FPU_tilecfg);
+                op_bytes = 1; /* fake */
+                goto simd_0f_common;
+
+            default:
+                goto unrecognized_insn;
+            }
+        }
+        goto unimplemented_insn;
+
     case X86EMUL_OPC_VEX_66(0x0f38, 0x50): /* vpdpbusd [xy]mm/mem,[xy]mm,[xy]mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x51): /* vpdpbusds [xy]mm/mem,[xy]mm,[xy]mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x52): /* vpdpwssd [xy]mm/mem,[xy]mm,[xy]mm */
--- a/xen/include/asm-x86/cpufeature.h
+++ b/xen/include/asm-x86/cpufeature.h
@@ -133,6 +133,7 @@
 #define cpu_has_avx512_vp2intersect boot_cpu_has(X86_FEATURE_AVX512_VP2INTERSECT)
 #define cpu_has_tsx_force_abort boot_cpu_has(X86_FEATURE_TSX_FORCE_ABORT)
 #define cpu_has_serialize       boot_cpu_has(X86_FEATURE_SERIALIZE)
+#define cpu_has_amx_tile        boot_cpu_has(X86_FEATURE_AMX_TILE)
 
 /* CPUID level 0x00000007:1.eax */
 #define cpu_has_avx_vnni        boot_cpu_has(X86_FEATURE_AVX_VNNI)



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:54:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:54:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115535.220463 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaiO-0005eh-JE; Thu, 22 Apr 2021 14:54:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115535.220463; Thu, 22 Apr 2021 14: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 1lZaiO-0005ea-G8; Thu, 22 Apr 2021 14:54:00 +0000
Received: by outflank-mailman (input) for mailman id 115535;
 Thu, 22 Apr 2021 14:53:59 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaiN-0005eO-Gn
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:53:59 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 084e26c9-62dc-41a8-91ce-30799c849cb7;
 Thu, 22 Apr 2021 14:53:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 07DEEABB1;
 Thu, 22 Apr 2021 14:53: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: 084e26c9-62dc-41a8-91ce-30799c849cb7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103238; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=M6XR0QmmTejtrJcAjrfXrTJZ6XGbzGG7Zeqjm+UvbQ8=;
	b=J7MjrzDZ4cpYV3cK4wCeLjdQ2DCVmKFWSgSHkpbntrVMZhF9C90a+gYJR2omoa/xSxDeat
	UZpwODr0ZWpk+acLQ+NpIoGDxjYIYstBW7nNCpWI5VPsQlQjkZKyZmQqRPWPkfFAneAKju
	WCDNrj/AlWVV8yz95HFzimwqo8SgS6A=
Subject: [PATCH v3 16/22] x86: introduce struct for TILECFG register
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <022f5561-8c90-e5c5-9a9c-1878ef17518c@suse.com>
Date: Thu, 22 Apr 2021 16:53:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Introduce a new x86-types.h to hold various architectural type
definitions, the TILECFG register layout being the first. Arrange for
the insn emulator to include this header.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: New.

--- a/tools/fuzz/x86_instruction_emulator/Makefile
+++ b/tools/fuzz/x86_instruction_emulator/Makefile
@@ -26,7 +26,7 @@ GCOV_FLAGS := --coverage
 	$(CC) -c $(CFLAGS) $(GCOV_FLAGS) $< -o $@
 
 x86.h := $(addprefix $(XEN_ROOT)/tools/include/xen/asm/,\
-                     x86-vendors.h x86-defns.h msr-index.h) \
+                     x86-vendors.h x86-types.h x86-defns.h msr-index.h) \
          $(addprefix $(XEN_ROOT)/tools/include/xen/lib/x86/, \
                      cpuid.h cpuid-autogen.h)
 x86_emulate.h := x86-emulate.h x86_emulate/x86_emulate.h $(x86.h)
--- a/tools/tests/x86_emulator/Makefile
+++ b/tools/tests/x86_emulator/Makefile
@@ -284,7 +284,7 @@ $(call cc-option-add,HOSTCFLAGS-x86_64,H
 HOSTCFLAGS += $(CFLAGS_xeninclude) -I. $(HOSTCFLAGS-$(XEN_COMPILE_ARCH))
 
 x86.h := $(addprefix $(XEN_ROOT)/tools/include/xen/asm/,\
-                     x86-vendors.h x86-defns.h msr-index.h) \
+                     x86-vendors.h x86-types.h x86-defns.h msr-index.h) \
          $(addprefix $(XEN_ROOT)/tools/include/xen/lib/x86/, \
                      cpuid.h cpuid-autogen.h)
 x86_emulate.h := x86-emulate.h x86_emulate/x86_emulate.h $(x86.h)
--- a/tools/tests/x86_emulator/x86-emulate.h
+++ b/tools/tests/x86_emulator/x86-emulate.h
@@ -37,6 +37,7 @@
 
 #include <xen/asm/msr-index.h>
 #include <xen/asm/x86-defns.h>
+#include <xen/asm/x86-types.h>
 #include <xen/asm/x86-vendors.h>
 
 #include <xen-tools/libs.h>
--- a/xen/arch/x86/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate.c
@@ -17,6 +17,7 @@
 #include <asm/xstate.h>
 #include <asm/amd.h> /* cpu_has_amd_erratum() */
 #include <asm/debugreg.h>
+#include <asm/x86-types.h>
 
 /* Avoid namespace pollution. */
 #undef cmpxchg
--- /dev/null
+++ b/xen/include/asm-x86/x86-types.h
@@ -0,0 +1,14 @@
+#ifndef __XEN_X86_TYPES_H__
+#define __XEN_X86_TYPES_H__
+
+/*
+ * TILECFG register
+ */
+struct x86_tilecfg {
+    uint8_t palette, start_row;
+    uint8_t res[14];
+    uint16_t colsb[16];
+    uint8_t rows[16];
+};
+
+#endif	/* __XEN_X86_TYPES_H__ */



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:54:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:54:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115541.220476 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZais-0005md-T5; Thu, 22 Apr 2021 14:54:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115541.220476; Thu, 22 Apr 2021 14: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 1lZais-0005m8-Pb; Thu, 22 Apr 2021 14:54:30 +0000
Received: by outflank-mailman (input) for mailman id 115541;
 Thu, 22 Apr 2021 14:54:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZair-0005lu-5y
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:54:29 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ba76b396-f023-4d94-ad33-6ee5470be853;
 Thu, 22 Apr 2021 14:54:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 29A56AEC6;
 Thu, 22 Apr 2021 14:54: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: ba76b396-f023-4d94-ad33-6ee5470be853
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103267; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=hH9PSsalwPjUONIbbOKjEItk1Fxab7kog6ux7w948mE=;
	b=thTtqfwvMmd1dLsc11sQSY7GZ7y6SwDLiyQ3dqx602i/a7p6Q1l1++V40QmVpSgqT4djRa
	OfrzfMLo7m+S0LQs5LoLbR9JkBQsWSGjBo3/aE+RDcumHOLhYaAM+L+Ty1RxdbshCSHwiZ
	VH3LpMmRNJ5mHCkm5o8nFY9D2S7qgck=
Subject: [PATCH v3 17/22] x86emul: support {LD,ST}TILECFG
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <bfbd5893-d670-42e5-613d-0f7790f19f5c@suse.com>
Date: Thu, 22 Apr 2021 16:54:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While ver 043 of the ISA extensions doc also specifies
xcr0_supports_palette() returning false as one of the #GP(0) reasons for
LDTILECFG, the earlier #UD / #GP conditions look to make this fully
dead.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: Rebase over struct x86_tilecfg introduction.
v2: New.
---
SDE: -spr

--- a/tools/tests/x86_emulator/predicates.c
+++ b/tools/tests/x86_emulator/predicates.c
@@ -1335,6 +1335,8 @@ static const struct vex {
     { { 0x45 }, 2, T, R, pfx_66, Wn, Ln }, /* vpsrlv{d,q} */
     { { 0x46 }, 2, T, R, pfx_66, W0, Ln }, /* vpsravd */
     { { 0x47 }, 2, T, R, pfx_66, Wn, Ln }, /* vpsllv{d,q} */
+    { { 0x49, 0x00 }, 2, F, R, pfx_no, W0, L0 }, /* ldtilecfg */
+    { { 0x49, 0x00 }, 2, F, W, pfx_66, W0, L0 }, /* sttilecfg */
     { { 0x49, 0xc0 }, 2, F, N, pfx_no, W0, L0 }, /* tilerelease */
     { { 0x50 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpbusd */
     { { 0x51 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpbusds */
--- a/tools/tests/x86_emulator/test_x86_emulator.c
+++ b/tools/tests/x86_emulator/test_x86_emulator.c
@@ -898,6 +898,11 @@ int main(int argc, char **argv)
     int rc;
 #ifdef __x86_64__
     unsigned int vendor_native;
+    static const struct x86_tilecfg tilecfg = {
+        .palette = 1,
+        .colsb = { 2, 4, 5, 3 },
+        .rows = { 2, 4, 3, 5 },
+    };
 #else
     unsigned int bcdres_native, bcdres_emul;
 #endif
@@ -4463,6 +4468,74 @@ int main(int argc, char **argv)
         printf("skipped\n");
 
 #ifdef __x86_64__
+    printf("%-40s", "Testing tilerelease;sttilecfg 4(%rcx)...");
+    if ( stack_exec && cpu_has_amx_tile )
+    {
+        decl_insn(tilerelease);
+
+        asm volatile ( put_insn(tilerelease,
+                                /* tilerelease */
+                                ".byte 0xC4, 0xE2, 0x78, 0x49, 0xC0;"
+                                /* sttilecfg 4(%0) */
+                                ".byte 0xC4, 0xE2, 0x79, 0x49, 0x41, 0x04")
+                                :: "c" (NULL) );
+
+        memset(res, ~0, 72);
+        set_insn(tilerelease);
+        regs.ecx = (unsigned long)res;
+        rc = x86_emulate(&ctxt, &emulops);
+        if ( rc == X86EMUL_OKAY )
+            rc = x86_emulate(&ctxt, &emulops);
+        if ( rc != X86EMUL_OKAY || !check_eip(tilerelease) ||
+             ~res[0] || ~res[17] || memchr_inv(res + 1, 0, 64) )
+            goto fail;
+        printf("okay\n");
+    }
+    else
+        printf("skipped\n");
+
+    printf("%-40s", "Testing ldtilecfg (%rdx)...");
+    if ( stack_exec && cpu_has_amx_tile )
+    {
+        decl_insn(ldtilecfg);
+
+        asm volatile ( put_insn(ldtilecfg,
+                                /* ldtilecfg (%0) */
+                                ".byte 0xC4, 0xE2, 0x78, 0x49, 0x02")
+                                :: "d" (NULL) );
+
+        set_insn(ldtilecfg);
+        regs.edx = (unsigned long)&tilecfg;
+        rc = x86_emulate(&ctxt, &emulops);
+        if ( rc != X86EMUL_OKAY || !check_eip(ldtilecfg) )
+            goto fail;
+        printf("pending\n");
+    }
+    else
+        printf("skipped\n");
+
+    printf("%-40s", "Testing sttilecfg -4(%rcx)...");
+    if ( stack_exec && cpu_has_amx_tile )
+    {
+        decl_insn(sttilecfg);
+
+        asm volatile ( put_insn(sttilecfg,
+                                /* sttilecfg -4(%0) */
+                                ".byte 0xC4, 0xE2, 0x79, 0x49, 0x41, 0xFC")
+                                :: "c" (NULL) );
+
+        memset(res, ~0, 72);
+        set_insn(sttilecfg);
+        regs.ecx = (unsigned long)(res + 2);
+        rc = x86_emulate(&ctxt, &emulops);
+        if ( rc != X86EMUL_OKAY || !check_eip(sttilecfg) ||
+             ~res[0] || ~res[17] || memcmp(res + 1, &tilecfg, 64) )
+            goto fail;
+        printf("okay\n");
+    }
+    else
+        printf("skipped\n");
+
     printf("%-40s", "Testing vzeroupper (compat)...");
     if ( cpu_has_avx )
     {
--- a/tools/tests/x86_emulator/x86-emulate.h
+++ b/tools/tests/x86_emulator/x86-emulate.h
@@ -68,6 +68,17 @@
 
 #define is_canonical_address(x) (((int64_t)(x) >> 47) == ((int64_t)(x) >> 63))
 
+static inline void *memchr_inv(const void *s, int c, size_t n)
+{
+    const unsigned char *p = s;
+
+    while ( n-- )
+        if ( (unsigned char)c != *p++ )
+            return (void *)(p - 1);
+
+    return NULL;
+}
+
 extern uint32_t mxcsr_mask;
 extern struct cpuid_policy cp;
 
@@ -171,6 +182,8 @@ static inline bool xcr0_mask(uint64_t ma
 #define cpu_has_avx512_4fmaps (cp.feat.avx512_4fmaps && xcr0_mask(0xe6))
 #define cpu_has_avx512_vp2intersect (cp.feat.avx512_vp2intersect && xcr0_mask(0xe6))
 #define cpu_has_serialize  cp.feat.serialize
+#define cpu_has_amx_tile   (cp.feat.amx_tile && \
+                            xcr0_mask(X86_XCR0_TILECFG | X86_XCR0_TILEDATA))
 #define cpu_has_avx_vnni   (cp.feat.avx_vnni && xcr0_mask(6))
 #define cpu_has_avx512_bf16 (cp.feat.avx512_bf16 && xcr0_mask(0xe6))
 
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -957,6 +957,7 @@ typedef union {
     uint64_t __attribute__ ((aligned(16))) xmm[2];
     uint64_t __attribute__ ((aligned(32))) ymm[4];
     uint64_t __attribute__ ((aligned(64))) zmm[8];
+    struct x86_tilecfg tilecfg;
     uint32_t data32[16];
 } mmval_t;
 
@@ -2880,6 +2881,10 @@ x86_decode_0f38(
         state->simd_size = simd_scalar_vexw;
         break;
 
+    case X86EMUL_OPC_VEX_66(0, 0x49): /* sttilecfg */
+        state->desc = DstMem | SrcImplicit | Mov;
+        break;
+
     case X86EMUL_OPC_EVEX_66(0, 0x7a): /* vpbroadcastb */
     case X86EMUL_OPC_EVEX_66(0, 0x7b): /* vpbroadcastw */
     case X86EMUL_OPC_EVEX_66(0, 0x7c): /* vpbroadcast{d,q} */
@@ -9518,7 +9523,66 @@ x86_emulate(
                 goto unrecognized_insn;
             }
         }
-        goto unimplemented_insn;
+
+        switch ( modrm_reg & 7 )
+        {
+        case 0: /* ldtilecfg mem */
+            generate_exception_if(vex.reg != 0xf, EXC_UD);
+            host_and_vcpu_must_have(amx_tile);
+            get_fpu(X86EMUL_FPU_tilecfg);
+            rc = ops->read(ea.mem.seg, ea.mem.off, mmvalp, 64, ctxt);
+            if ( rc != X86EMUL_OKAY )
+                goto done;
+            generate_exception_if((mmvalp->tilecfg.palette >
+                                   ctxt->cpuid->tile.max_palette),
+                                  EXC_GP, 0);
+            if ( mmvalp->tilecfg.palette )
+            {
+                const typeof(*ctxt->cpuid->tile.palette) *palette;
+
+                generate_exception_if(memchr_inv(mmvalp->tilecfg.res, 0,
+                                                 sizeof(mmvalp->tilecfg.res)),
+                                      EXC_GP, 0);
+
+                /*
+                 * Parameters for valid registers must be within bounds, or
+                 * both be zero at the same time.
+                 */
+                palette = &ctxt->cpuid->tile.palette[mmvalp->tilecfg.palette];
+                for ( i = 0; i < palette->num_regs; ++i )
+                    generate_exception_if(((mmvalp->tilecfg.colsb[i] >
+                                            palette->bytes_per_row) ||
+                                           (mmvalp->tilecfg.rows[i] >
+                                            palette->max_rows) ||
+                                           (!mmvalp->tilecfg.colsb[i] !=
+                                            !mmvalp->tilecfg.rows[i])),
+                                          EXC_GP, 0);
+
+                /* All remaining entries must be zero. */
+                for ( ; i < 16; ++i )
+                    generate_exception_if((mmvalp->tilecfg.colsb[i] ||
+                                           mmvalp->tilecfg.rows[i]),
+                                          EXC_GP, 0);
+            }
+            op_bytes = 64;
+            goto simd_0f_common;
+        }
+        goto unrecognized_insn;
+
+    case X86EMUL_OPC_VEX_66(0x0f38, 0x49):
+        generate_exception_if(!mode_64bit() || vex.l || vex.w, EXC_UD);
+        if ( ea.type == OP_REG )
+            goto unrecognized_insn;
+
+        switch ( modrm_reg & 7 )
+        {
+        case 0: /* sttilecfg mem */
+            host_and_vcpu_must_have(amx_tile);
+            get_fpu(X86EMUL_FPU_tilecfg);
+            op_bytes = 64;
+            goto simd_0f_common;
+        }
+        goto unrecognized_insn;
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0x50): /* vpdpbusd [xy]mm/mem,[xy]mm,[xy]mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x51): /* vpdpbusds [xy]mm/mem,[xy]mm,[xy]mm */



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:55:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:55:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115548.220488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZajW-0005xa-9o; Thu, 22 Apr 2021 14:55:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115548.220488; Thu, 22 Apr 2021 14:55: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 1lZajW-0005xS-6i; Thu, 22 Apr 2021 14:55:10 +0000
Received: by outflank-mailman (input) for mailman id 115548;
 Thu, 22 Apr 2021 14:55:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZajV-0005xM-1u
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:55:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d38beecf-193e-4509-a67c-88b993647bf2;
 Thu, 22 Apr 2021 14:55:08 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 67C13B16D;
 Thu, 22 Apr 2021 14:55: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: d38beecf-193e-4509-a67c-88b993647bf2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103307; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=wgsKprQTlfADQ7Dypqlzd3WaFpCIjsLFSBPxGBvAlYo=;
	b=Z5jbW+Ic6sr7FGZtl64EWJU2IZjQNZ4aS32ryqANItdFgZJu5ix68GkEcRx1AEMMDGqBxM
	zQdX2Kb5I7w3RMwMNINosct+C+hM8k16O5KdVQ7xEILlaSZMRAhrnEjKJruYxQBkvug+X0
	55croDHU8wUqhVoK23YwLB9BmoB3Swc=
Subject: [PATCH v3 18/22] x86emul: support TILEZERO
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <d9d2a273-e366-c007-ddbd-a94ba3c18fb5@suse.com>
Date: Thu, 22 Apr 2021 16:55:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

This is relatively straightforward, and hence best suited to introduce a
few other wider use pieces.

Testing of this will be added once a sensible test can be put together,
i.e. when support for at least TILELOADD (to allow loading non-zero
values in the first place) is also there.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: New.

--- a/tools/tests/x86_emulator/predicates.c
+++ b/tools/tests/x86_emulator/predicates.c
@@ -1338,6 +1338,7 @@ static const struct vex {
     { { 0x49, 0x00 }, 2, F, R, pfx_no, W0, L0 }, /* ldtilecfg */
     { { 0x49, 0x00 }, 2, F, W, pfx_66, W0, L0 }, /* sttilecfg */
     { { 0x49, 0xc0 }, 2, F, N, pfx_no, W0, L0 }, /* tilerelease */
+    { { 0x49, 0xc0 }, 2, F, N, pfx_f2, W0, L0 }, /* tilezero */
     { { 0x50 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpbusd */
     { { 0x51 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpbusds */
     { { 0x52 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpwssd */
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -3725,6 +3725,31 @@ x86_decode(
 #undef insn_fetch_bytes
 #undef insn_fetch_type
 
+#ifndef X86EMUL_NO_SIMD
+
+static void sttilecfg(struct x86_tilecfg *tilecfg)
+{
+    /* sttilecfg (%rdi) */
+    asm volatile ( ".byte 0xc4, 0xe2, 0x79, 0x49, 0x07"
+                   : "=m" (*tilecfg) : "D" (tilecfg) );
+}
+
+static bool tiles_configured(const struct x86_tilecfg *tilecfg)
+{
+    return tilecfg->palette;
+}
+
+static bool tile_valid(unsigned int tile, const struct x86_tilecfg *tilecfg)
+{
+    /*
+     * Considering the checking LDTILECFG does, checking either would in
+     * principle be sufficient.
+     */
+    return tilecfg->colsb[tile] && tilecfg->rows[tile];
+}
+
+#endif /* X86EMUL_NO_SIMD */
+
 /* Undo DEBUG wrapper. */
 #undef x86_emulate
 
@@ -9584,6 +9609,29 @@ x86_emulate(
         }
         goto unrecognized_insn;
 
+    case X86EMUL_OPC_VEX_F2(0x0f38, 0x49):
+        generate_exception_if(!mode_64bit() || vex.l || vex.w, EXC_UD);
+        if ( ea.type == OP_REG )
+        {
+            switch ( modrm_rm & 7 )
+            {
+            case 0: /* tilezero */
+                host_and_vcpu_must_have(amx_tile);
+                get_fpu(X86EMUL_FPU_tile);
+                sttilecfg(&mmvalp->tilecfg);
+                generate_exception_if(!tiles_configured(&mmvalp->tilecfg),
+                                      EXC_UD);
+                generate_exception_if(!tile_valid(modrm_reg, &mmvalp->tilecfg),
+                                      EXC_UD);
+                op_bytes = 1; /* fake */
+                goto simd_0f_common;
+
+            default:
+                goto unrecognized_insn;
+            }
+        }
+        goto unrecognized_insn;
+
     case X86EMUL_OPC_VEX_66(0x0f38, 0x50): /* vpdpbusd [xy]mm/mem,[xy]mm,[xy]mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x51): /* vpdpbusds [xy]mm/mem,[xy]mm,[xy]mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x52): /* vpdpwssd [xy]mm/mem,[xy]mm,[xy]mm */



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:55:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:55:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115550.220500 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaje-00061A-J6; Thu, 22 Apr 2021 14:55:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115550.220500; Thu, 22 Apr 2021 14: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 1lZaje-000613-Fa; Thu, 22 Apr 2021 14:55:18 +0000
Received: by outflank-mailman (input) for mailman id 115550;
 Thu, 22 Apr 2021 14:55: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 1lZajd-00060i-6p; Thu, 22 Apr 2021 14:55: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 1lZajd-0008P7-02; Thu, 22 Apr 2021 14:55: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 1lZajc-0001a0-Os; Thu, 22 Apr 2021 14:55:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZajc-0000xy-OM; Thu, 22 Apr 2021 14:55: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=HDW2X8r26gsnBKSSONaAdAzpzrhI5HAdcDmra2z1OoQ=; b=UablJR1Y3SQrS40/3CBwzLV49f
	OFtJZZqKAKLc2io34H+AauvJbQ6Do0jYV0uXHkvgAAU+PrUC1qxVLvCGW2O3DneExPZdggZqVyLlv
	2sB72Yq+CNSniVBr0oSuKjQfev2yyLNlEC94sdCCrERkdYVXF8/AE6K7ZgoKWQgqAt7A=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161377-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161377: 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=1be65ec4c8bc172aadd6bc1b6553c668152899ae
X-Osstest-Versions-That:
    xen=aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 14:55:16 +0000

flight 161377 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161377/

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                  1be65ec4c8bc172aadd6bc1b6553c668152899ae
baseline version:
 xen                  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc

Last test of basis   161338  2021-04-20 20:01:32 Z    1 days
Testing same since   161377  2021-04-22 12: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
   aaa3eafb3b..1be65ec4c8  1be65ec4c8bc172aadd6bc1b6553c668152899ae -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:55:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:55:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115554.220515 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZajv-00068Z-Sr; Thu, 22 Apr 2021 14:55:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115554.220515; Thu, 22 Apr 2021 14:55:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZajv-00068Q-P7; Thu, 22 Apr 2021 14:55:35 +0000
Received: by outflank-mailman (input) for mailman id 115554;
 Thu, 22 Apr 2021 14:55:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaju-000681-FZ
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:55:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d4822181-164a-43d5-9cf2-1d3d2045b90d;
 Thu, 22 Apr 2021 14:55:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D31C5ABB1;
 Thu, 22 Apr 2021 14: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: d4822181-164a-43d5-9cf2-1d3d2045b90d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103332; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=8Q5FkhdLlmlc3eXCKxLrkqvoccRo5UNs3ZV3phIMfFs=;
	b=RI6y651llBkueekrHXf8xnzFGVhQkclhdphQZbybEakWNTkxa0s0SskApvdyJ073gLXfQ/
	ibmnVxiznO4QPFN0RqiYFRNjB8jBW0WoO8b5fgPsxWY1ysDMfZvbOyC77/b/10WAegArmb
	Xp/T/zC+pYVLm66IqQWfxmA4hMK17ts=
Subject: [PATCH v3 19/22] x86emul: support TILELOADD{,T1} and TILESTORE
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <fc272d90-9a3c-98e9-d811-ea9b70f89e22@suse.com>
Date: Thu, 22 Apr 2021 16:55:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

In order to be flexible about future growth of tile dimensions, use a
separately allocated scratch buffer to read/write individual rows of a
tile.

Note that the separate write_tilecfg() function is needed because
LDTILECFG wouldn't serve the purpose: It clears various state, unlike
XRSTOR / XRSTORC. To keep things simple, the test harness variant of it
leverages the state save/restore around library calls. To be sure the
actual data gets restored (and not init state put in place), any extra
override for the XSTATE_BV field is introduced.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: New.
---
TBD: ISA extensions document 043 doesn't clarify either way whether
     duplicate stores to the same (linear) memory ranges may get
     squashed by TILESTORED just like is documented for AVX-512
     scatters. For now similar behavior is assumed (or else
     hvm/emulate.c's respective checking would need altering, or we'd
     need to exit back to guest context after every individual row,
     albeit that would mean allowing interrupts to occur in the middle
     of an insn); an inquiry on the public forum [1] was left
     unanswered so far.

[1] https://community.intel.com/t5/Intel-ISA-Extensions/TILESTORED-to-overlapping-addresses/td-p/1226953

--- a/tools/tests/x86_emulator/predicates.c
+++ b/tools/tests/x86_emulator/predicates.c
@@ -1339,6 +1339,9 @@ static const struct vex {
     { { 0x49, 0x00 }, 2, F, W, pfx_66, W0, L0 }, /* sttilecfg */
     { { 0x49, 0xc0 }, 2, F, N, pfx_no, W0, L0 }, /* tilerelease */
     { { 0x49, 0xc0 }, 2, F, N, pfx_f2, W0, L0 }, /* tilezero */
+    { { 0x4b, VSIB(0) }, 3, F, R, pfx_66, W0, L0 }, /* tileloaddt1 */
+    { { 0x4b, VSIB(0) }, 3, F, W, pfx_f3, W0, L0 }, /* tilestored */
+    { { 0x4b, VSIB(0) }, 3, F, R, pfx_f2, W0, L0 }, /* tileloadd */
     { { 0x50 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpbusd */
     { { 0x51 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpbusds */
     { { 0x52 }, 2, T, R, pfx_66, W0, Ln }, /* vpdpwssd */
--- a/tools/tests/x86_emulator/x86-emulate.c
+++ b/tools/tests/x86_emulator/x86-emulate.c
@@ -35,6 +35,8 @@ struct cpuid_policy cp;
 
 static char fpu_save_area[0x4000] __attribute__((__aligned__((64))));
 static bool use_xsave;
+/* This will get OR-ed into xstate_bv prior to restoring state. */
+static uint64_t xstate_bv_or_mask;
 
 /*
  * Re-use the area above also as scratch space for the emulator itself.
@@ -57,13 +59,19 @@ void emul_restore_fpu_state(void)
 {
     /* Older gcc can't deal with "m" array inputs; make them outputs instead. */
     if ( use_xsave )
+    {
+        *(uint64_t *)&fpu_save_area[0x200] |= xstate_bv_or_mask;
+        xstate_bv_or_mask = 0;
         asm volatile ( "xrstor %[ptr]"
                        : [ptr] "+m" (fpu_save_area)
                        : "a" (~0ul), "d" (~0ul) );
+    }
     else
         asm volatile ( "fxrstor %0" : "+m" (fpu_save_area) );
 }
 
+static void *tile_row;
+
 bool emul_test_init(void)
 {
     union {
@@ -121,6 +129,19 @@ bool emul_test_init(void)
     if ( fxs->mxcsr_mask )
         mxcsr_mask = fxs->mxcsr_mask;
 
+    if ( cpu_has_amx_tile )
+    {
+        unsigned int i, max_bytes = 0;
+
+        for ( i = 1; i <= cp.tile.max_palette; ++i )
+            if ( cp.tile.palette[i].bytes_per_row > max_bytes )
+                max_bytes = cp.tile.palette[i].bytes_per_row;
+
+        if ( !cp.xstate.comp[X86_XCR0_TILECFG_POS].offset ||
+             !max_bytes || !(tile_row = malloc(max_bytes)) )
+            cp.feat.amx_tile = false;
+    }
+
     /*
      * Mark the entire stack executable so that the stub executions
      * don't fault
@@ -263,4 +284,22 @@ void emul_test_put_fpu(
     /* TBD */
 }
 
+static void *get_tile_row_buf(void)
+{
+    return tile_row;
+}
+
+WRAPPER(memcpy);
+
+static void write_tilecfg(const struct x86_tilecfg *tilecfg)
+{
+    /*
+     * Leverage the fact that the wrapper (saves and) restores all extended
+     * state around the actual library call.
+     */
+    xstate_bv_or_mask = X86_XCR0_TILECFG;
+    emul_memcpy(fpu_save_area + cp.xstate.comp[X86_XCR0_TILECFG_POS].offset,
+                tilecfg, sizeof(*tilecfg));
+}
+
 #include "x86_emulate/x86_emulate.c"
--- a/tools/tests/x86_emulator/x86-emulate.h
+++ b/tools/tests/x86_emulator/x86-emulate.h
@@ -98,8 +98,9 @@ void emul_restore_fpu_state(void);
 # if 0 /* This only works for explicit calls, not for compiler generated ones. */
 #  define WRAP(x) typeof(x) x asm("emul_" #x)
 # else
-# define WRAP(x) asm(".equ " #x ", emul_" #x)
+#  define WRAP(x) asm(".equ " #x ", emul_" #x)
 # endif
+# define WRAPPER(x) typeof(x) emul_##x
 #endif
 
 WRAP(fwrite);
--- a/xen/arch/x86/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate.c
@@ -9,6 +9,7 @@
  *    Keir Fraser <keir@xen.org>
  */
 
+#include <xen/cpu.h>
 #include <xen/domain_page.h>
 #include <xen/err.h>
 #include <xen/event.h>
@@ -52,6 +53,71 @@
 # define X86EMUL_NO_SIMD
 #endif
 
+#ifndef X86EMUL_NO_SIMD
+
+static DEFINE_PER_CPU_READ_MOSTLY(void *, tile_row);
+static unsigned int __read_mostly tile_row_max_bytes;
+
+static int amx_cpu_init(struct notifier_block *nfb,
+                        unsigned long action, void *hcpu)
+{
+    int rc = 0;
+    void **prow = &per_cpu(tile_row, (unsigned long)hcpu);
+
+    switch ( action )
+    {
+    case CPU_UP_PREPARE:
+        *prow = xmalloc_array(uint8_t, tile_row_max_bytes);
+        if ( !*prow )
+            rc = -ENOMEM;
+        break;
+
+    case CPU_UP_CANCELED:
+    case CPU_DEAD:
+        XFREE(*prow);
+        break;
+    }
+
+    return !rc ? NOTIFY_DONE : notifier_from_errno(rc);
+}
+
+static struct notifier_block amx_cpu_nfb = {
+    .notifier_call = amx_cpu_init,
+};
+
+static int __init amx_init(void)
+{
+    const struct cpuid_policy *p = &host_cpuid_policy;
+    unsigned int i;
+
+    if ( !cpu_has_amx_tile )
+        return 0;
+
+    for ( i = 1; i <= p->tile.max_palette; ++i )
+        if ( p->tile.palette[i].bytes_per_row > tile_row_max_bytes )
+            tile_row_max_bytes = p->tile.palette[i].bytes_per_row;
+
+    if ( !tile_row_max_bytes )
+    {
+        setup_clear_cpu_cap(X86_FEATURE_AMX_TILE);
+        return 0;
+    }
+
+    amx_cpu_init(&amx_cpu_nfb, CPU_UP_PREPARE,
+                 (void *)(unsigned long)smp_processor_id());
+    register_cpu_notifier(&amx_cpu_nfb);
+
+    return 0;
+}
+presmp_initcall(amx_init);
+
+static void *get_tile_row_buf(void)
+{
+    return this_cpu(tile_row);
+}
+
+#endif /* X86EMUL_NO_SIMD */
+
 #include "x86_emulate/x86_emulate.c"
 
 int x86emul_read_xcr(unsigned int reg, uint64_t *val,
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -476,6 +476,7 @@ static const struct ext0f38_table {
     [0x44] = { .simd_size = simd_packed_int, .two_op = 1, .d8s = d8s_vl },
     [0x45 ... 0x47] = { .simd_size = simd_packed_int, .d8s = d8s_vl },
     [0x49] = { .simd_size = simd_other, .two_op = 1 },
+    [0x4b] = { .simd_size = simd_other, .two_op = 1, .vsib = 1 },
     [0x4c] = { .simd_size = simd_packed_fp, .two_op = 1, .d8s = d8s_vl },
     [0x4d] = { .simd_size = simd_scalar_vexw, .d8s = d8s_dq },
     [0x4e] = { .simd_size = simd_packed_fp, .two_op = 1, .d8s = d8s_vl },
@@ -2882,6 +2883,7 @@ x86_decode_0f38(
         break;
 
     case X86EMUL_OPC_VEX_66(0, 0x49): /* sttilecfg */
+    case X86EMUL_OPC_VEX_F3(0, 0x4b): /* tilestored */
         state->desc = DstMem | SrcImplicit | Mov;
         break;
 
@@ -9632,6 +9634,99 @@ x86_emulate(
         }
         goto unrecognized_insn;
 
+    case X86EMUL_OPC_VEX_66(0x0f38, 0x4b): /* tileloaddt1 mem,tmm */
+    case X86EMUL_OPC_VEX_F3(0x0f38, 0x4b): /* tilestored tmm,mem */
+    case X86EMUL_OPC_VEX_F2(0x0f38, 0x4b): /* tileloadd mem,tmm */
+    {
+        struct x86_tilecfg *cfg = &mmvalp->tilecfg;
+        void *row;
+
+        generate_exception_if(!mode_64bit() || vex.l || vex.w || vex.reg != 0xf,
+                              EXC_UD);
+        host_and_vcpu_must_have(amx_tile);
+        get_fpu(X86EMUL_FPU_tile);
+        sttilecfg(cfg);
+        generate_exception_if(!tiles_configured(cfg), EXC_UD);
+        generate_exception_if(!tile_valid(modrm_reg, cfg), EXC_UD);
+        generate_exception_if(cfg->colsb[modrm_reg] & 3, EXC_UD);
+        i = cfg->start_row;
+        n = cfg->rows[modrm_reg];
+        generate_exception_if(i >= n, EXC_UD);
+
+        /* Calculate stride. */
+        if ( state->sib_index != 4 )
+            ea.val = truncate_ea(*decode_gpr(state->regs,
+                                             state->sib_index) <<
+                                 state->sib_scale);
+
+        if ( vex.pfx == vex_f3 )
+        {
+            /*
+             * hvmemul_linear_mmio_access() will find a cache slot based on
+             * linear address. hvmemul_phys_mmio_access() will crash the
+             * domain if observing varying data getting written to the same
+             * cache slot. Assume that squashing earlier writes to fully
+             * overlapping addresses is permitted (like for AVX-512 scatters).
+             */
+            if ( !ea.val )
+                i = n - 1;
+            else if ( !(ea.val &
+                        ((1ul << ((ad_bytes - sizeof(*cfg->rows)) * 8)) - 1)) )
+            {
+                unsigned int clr = __builtin_ffsl(ea.val) - 1;
+                unsigned int iter = 1u << (ad_bytes * 8 - clr);
+
+                if ( iter < n - i )
+                    i = n - iter;
+            }
+        }
+
+        row = get_tile_row_buf();
+        memset(row, -1,
+               ctxt->cpuid->tile.palette[cfg->palette].bytes_per_row);
+
+        /* Set up stub. */
+        opc = init_prefixes(stub);
+        opc[0] = b;
+        /* Convert memory operand to (%rax,%riz,1) */
+        vex.b = 1;
+        vex.x = 1;
+        opc[1] = modrm & 0x3f;
+        opc[2] = 0x20;
+        opc[3] = 0xc3;
+        copy_VEX(opc, vex);
+
+        do {
+            /* Limit rows to just as many to cover the next one to access. */
+            cfg->start_row = i;
+            cfg->rows[modrm_reg] = i + 1;
+            write_tilecfg(cfg);
+
+            if ( vex.pfx != vex_f3 )
+                rc = ops->read(ea.mem.seg,
+                               truncate_ea(ea.mem.off + i * ea.val),
+                               row, cfg->colsb[modrm_reg], ctxt);
+
+            invoke_stub("", "", "=m" (dummy) : "a" (row));
+
+            if ( vex.pfx == vex_f3 )
+                rc = ops->write(ea.mem.seg,
+                                truncate_ea(ea.mem.off + i * ea.val),
+                                row, cfg->colsb[modrm_reg], ctxt);
+        } while ( rc == X86EMUL_OKAY && ++i < n );
+
+        put_stub(stub);
+
+        if ( rc == X86EMUL_OKAY )
+            cfg->start_row = 0;
+        cfg->rows[modrm_reg] = n;
+        write_tilecfg(cfg);
+
+        state->simd_size = simd_none;
+        dst.type = OP_NONE;
+        break;
+    }
+
     case X86EMUL_OPC_VEX_66(0x0f38, 0x50): /* vpdpbusd [xy]mm/mem,[xy]mm,[xy]mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x51): /* vpdpbusds [xy]mm/mem,[xy]mm,[xy]mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x52): /* vpdpwssd [xy]mm/mem,[xy]mm,[xy]mm */
--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -16,6 +16,7 @@
 #include <asm/i387.h>
 #include <asm/xstate.h>
 #include <asm/asm_defns.h>
+#include <asm/x86-types.h>
 
 /*
  * Maximum size (in byte) of the XSAVE/XRSTOR save area required by all
@@ -840,6 +841,37 @@ uint64_t read_bndcfgu(void)
     return xstate->xsave_hdr.xstate_bv & X86_XCR0_BNDCSR ? bndcsr->bndcfgu : 0;
 }
 
+void write_tilecfg(const struct x86_tilecfg *tilecfg)
+{
+    unsigned long cr0 = read_cr0();
+    struct xsave_struct *xstate
+        = idle_vcpu[smp_processor_id()]->arch.xsave_area;
+
+    ASSERT(cpu_has_amx_tile);
+    clts();
+
+    memset(&xstate->xsave_hdr, 0, sizeof(xstate->xsave_hdr));
+    xstate->xsave_hdr.xstate_bv = X86_XCR0_TILECFG;
+
+    if ( cpu_has_xsavec )
+    {
+        xstate->xsave_hdr.xcomp_bv = XSTATE_COMPACTION_ENABLED |
+                                     X86_XCR0_TILECFG;
+
+        memcpy(xstate + 1, tilecfg, sizeof(*tilecfg));
+    }
+    else
+        memcpy((void *)xstate + xstate_offset(X86_XCR0_TILECFG_POS),
+               tilecfg, sizeof(*tilecfg));
+
+    asm volatile ( ".byte 0x0f,0xae,0x2f\n" /* xrstor */
+                   :: "m" (*xstate), "D" (xstate),
+                      "a" (X86_XCR0_TILECFG), "d" (0) );
+
+    if ( cr0 & X86_CR0_TS )
+        write_cr0(cr0);
+}
+
 void xstate_set_init(uint64_t mask)
 {
     unsigned long cr0 = read_cr0();
--- a/xen/include/asm-x86/xstate.h
+++ b/xen/include/asm-x86/xstate.h
@@ -93,6 +93,8 @@ uint64_t get_xcr0(void);
 void set_msr_xss(u64 xss);
 uint64_t get_msr_xss(void);
 uint64_t read_bndcfgu(void);
+struct x86_tilecfg;
+void write_tilecfg(const struct x86_tilecfg *tilecfg);
 void xsave(struct vcpu *v, uint64_t mask);
 void xrstor(struct vcpu *v, uint64_t mask);
 void xstate_set_init(uint64_t mask);



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:56:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:56:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115562.220526 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZakZ-0006JM-5R; Thu, 22 Apr 2021 14:56:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115562.220526; Thu, 22 Apr 2021 14:56: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 1lZakZ-0006JF-2U; Thu, 22 Apr 2021 14:56:15 +0000
Received: by outflank-mailman (input) for mailman id 115562;
 Thu, 22 Apr 2021 14:56:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZakX-0006J3-SL
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:56:13 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d8584a9d-4a1e-4881-916d-816828a3f1f5;
 Thu, 22 Apr 2021 14:56:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1EA42ABB1;
 Thu, 22 Apr 2021 14:56: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: d8584a9d-4a1e-4881-916d-816828a3f1f5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103372; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=oPzs8oFNLCi5oM4f8KtDEq5j9aDmHv1L3If34/KJuW4=;
	b=Ea1YwjrfTjHdm6RC3GnBKBRVRAwBamaKIe8hjoe/AnGu1gzA/NUA36695NqufyYN2BQgMc
	7vxDQLLV9bZY0lSTOBEpCR1eE0zexrKK5RaWGTvXz3SpYooHDDDB7UwStDwzZ+bVrSR+QF
	VrVou5J4UaXTRqPKIRTfbIb9sRF/PEQ=
Subject: [PATCH v3 20/22] x86emul: support tile multiplication insns
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <33ff565f-0e08-4dc6-c041-ad3422544d54@suse.com>
Date: Thu, 22 Apr 2021 16:56:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Since these don't allow for memory operands, the main thing to do here
is to check the large set of #UD conditions.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: New.

--- a/tools/tests/x86_emulator/predicates.c
+++ b/tools/tests/x86_emulator/predicates.c
@@ -1349,6 +1349,11 @@ static const struct vex {
     { { 0x58 }, 2, T, R, pfx_66, W0, Ln }, /* vpbroadcastd */
     { { 0x59 }, 2, T, R, pfx_66, W0, Ln }, /* vpbroadcastq */
     { { 0x5a }, 2, F, R, pfx_66, W0, L1 }, /* vbroadcasti128 */
+    { { 0x5c, 0xc0 }, 2, F, N, pfx_f3, W0, L0 }, /* tdpbf16ps */
+    { { 0x5e, 0xc0 }, 2, F, N, pfx_no, W0, L0 }, /* tdpbuud */
+    { { 0x5e, 0xc0 }, 2, F, N, pfx_66, W0, L0 }, /* tdpbusd */
+    { { 0x5e, 0xc0 }, 2, F, N, pfx_f3, W0, L0 }, /* tdpbsud */
+    { { 0x5e, 0xc0 }, 2, F, N, pfx_f2, W0, L0 }, /* tdpbssd */
     { { 0x78 }, 2, T, R, pfx_66, W0, Ln }, /* vpbroadcastb */
     { { 0x79 }, 2, T, R, pfx_66, W0, Ln }, /* vpbroadcastw */
     { { 0x8c }, 2, F, R, pfx_66, Wn, Ln }, /* vpmaskmov{d,q} */
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -487,6 +487,8 @@ static const struct ext0f38_table {
     [0x59] = { .simd_size = simd_other, .two_op = 1, .d8s = 3 },
     [0x5a] = { .simd_size = simd_128, .two_op = 1, .d8s = 4 },
     [0x5b] = { .simd_size = simd_256, .two_op = 1, .d8s = d8s_vl_by_2 },
+    [0x5c] = { .simd_size = simd_other },
+    [0x5e] = { .simd_size = simd_other },
     [0x62] = { .simd_size = simd_packed_int, .two_op = 1, .d8s = d8s_bw },
     [0x63] = { .simd_size = simd_packed_int, .to_mem = 1, .two_op = 1, .d8s = d8s_bw },
     [0x64 ... 0x66] = { .simd_size = simd_packed_int, .d8s = d8s_vl },
@@ -2049,7 +2051,9 @@ amd_like(const struct x86_emulate_ctxt *
 #define vcpu_has_avx512_4fmaps() (ctxt->cpuid->feat.avx512_4fmaps)
 #define vcpu_has_avx512_vp2intersect() (ctxt->cpuid->feat.avx512_vp2intersect)
 #define vcpu_has_serialize()   (ctxt->cpuid->feat.serialize)
+#define vcpu_has_amx_bf16()    (ctxt->cpuid->feat.amx_bf16)
 #define vcpu_has_amx_tile()    (ctxt->cpuid->feat.amx_tile)
+#define vcpu_has_amx_int8()    (ctxt->cpuid->feat.amx_int8)
 #define vcpu_has_avx_vnni()    (ctxt->cpuid->feat.avx_vnni)
 #define vcpu_has_avx512_bf16() (ctxt->cpuid->feat.avx512_bf16)
 
@@ -9799,6 +9803,59 @@ x86_emulate(
         generate_exception_if(ea.type != OP_MEM || !vex.l || vex.w, EXC_UD);
         goto simd_0f_avx2;
 
+    case X86EMUL_OPC_VEX_F3(0x0f38, 0x5c): /* tdpbf16ps tmm,tmm,tmm */
+    case X86EMUL_OPC_VEX(0x0f38, 0x5e):    /* tdpbuud tmm,tmm,tmm */
+    case X86EMUL_OPC_VEX_66(0x0f38, 0x5e): /* tdpbusd tmm,tmm,tmm */
+    case X86EMUL_OPC_VEX_F3(0x0f38, 0x5e): /* tdpbsud tmm,tmm,tmm */
+    case X86EMUL_OPC_VEX_F2(0x0f38, 0x5e): /* tdpbssd tmm,tmm,tmm */
+    {
+        unsigned int vreg = vex.reg ^ 0xf;
+
+        if ( ea.type != OP_REG )
+            goto unimplemented_insn;
+        generate_exception_if(!mode_64bit() || vex.l || vex.w, EXC_UD);
+        if ( b == 0x5c )
+            host_and_vcpu_must_have(amx_bf16);
+        else
+            host_and_vcpu_must_have(amx_int8);
+        generate_exception_if(modrm_reg == modrm_rm, EXC_UD);
+        generate_exception_if(modrm_reg == vreg, EXC_UD);
+        generate_exception_if(modrm_rm == vreg, EXC_UD);
+
+        get_fpu(X86EMUL_FPU_tile);
+        sttilecfg(&mmvalp->tilecfg);
+        generate_exception_if(!tiles_configured(&mmvalp->tilecfg), EXC_UD);
+
+        /* accum: modrm_reg */
+        generate_exception_if(!tile_valid(modrm_reg, &mmvalp->tilecfg), EXC_UD);
+        /* src1: modrm_rm */
+        generate_exception_if(!tile_valid(modrm_rm, &mmvalp->tilecfg), EXC_UD);
+        /* src2: vreg */
+        generate_exception_if(!tile_valid(vreg, &mmvalp->tilecfg), EXC_UD);
+
+        generate_exception_if(mmvalp->tilecfg.colsb[modrm_reg] & 3, EXC_UD);
+        /*
+         * These are redundant with the check just below.
+        generate_exception_if(mmvalp->tilecfg.colsb[modrm_rm] & 3, EXC_UD);
+        generate_exception_if(mmvalp->tilecfg.colsb[vreg] & 3, EXC_UD);
+         */
+
+        generate_exception_if(mmvalp->tilecfg.rows[modrm_reg] !=
+                              mmvalp->tilecfg.rows[modrm_rm], EXC_UD);
+        generate_exception_if(mmvalp->tilecfg.colsb[modrm_reg] !=
+                              mmvalp->tilecfg.colsb[vreg], EXC_UD);
+        generate_exception_if(mmvalp->tilecfg.colsb[modrm_rm] !=
+                              mmvalp->tilecfg.rows[vreg] * 4, EXC_UD);
+
+        generate_exception_if(mmvalp->tilecfg.colsb[vreg] >
+                              ctxt->cpuid->tmul.maxn, EXC_UD);
+        generate_exception_if(mmvalp->tilecfg.rows[vreg] >
+                              ctxt->cpuid->tmul.maxk, EXC_UD);
+
+        op_bytes = 1; /* fake */
+        goto simd_0f_common;
+    }
+
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x62): /* vpexpand{b,w} [xyz]mm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x63): /* vpcompress{b,w} [xyz]mm,[xyz]mm/mem{k} */
         host_and_vcpu_must_have(avx512_vbmi2);
--- a/xen/include/asm-x86/cpufeature.h
+++ b/xen/include/asm-x86/cpufeature.h
@@ -133,7 +133,9 @@
 #define cpu_has_avx512_vp2intersect boot_cpu_has(X86_FEATURE_AVX512_VP2INTERSECT)
 #define cpu_has_tsx_force_abort boot_cpu_has(X86_FEATURE_TSX_FORCE_ABORT)
 #define cpu_has_serialize       boot_cpu_has(X86_FEATURE_SERIALIZE)
+#define cpu_has_amx_bf16        boot_cpu_has(X86_FEATURE_AMX_BF16)
 #define cpu_has_amx_tile        boot_cpu_has(X86_FEATURE_AMX_TILE)
+#define cpu_has_amx_int8        boot_cpu_has(X86_FEATURE_AMX_INT8)
 
 /* CPUID level 0x00000007:1.eax */
 #define cpu_has_avx_vnni        boot_cpu_has(X86_FEATURE_AVX_VNNI)



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:57:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:57:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115572.220538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZalJ-0006Xp-KZ; Thu, 22 Apr 2021 14:57:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115572.220538; Thu, 22 Apr 2021 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 1lZalJ-0006Xi-Hf; Thu, 22 Apr 2021 14:57:01 +0000
Received: by outflank-mailman (input) for mailman id 115572;
 Thu, 22 Apr 2021 14:57:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZalI-0006Xb-T6
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:57:01 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 72d60992-0aa8-4f55-b939-c82347c7bfbd;
 Thu, 22 Apr 2021 14: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: 72d60992-0aa8-4f55-b939-c82347c7bfbd
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619103419;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=/TtcPr1q7OgogiwNd9oYjW0Oms0v//WRtnl9UDXq2Lg=;
  b=GOm9D+qBQCz9jnDzSC1ZDM8qIOC9WqDI//ddpmK6Ir3bgR3eIv/5Kkpi
   P33xAAJ8VqAD20IMHcwU4UlAtP0AztK0Op2XQ9smJfuau0dIWdkxfL3y1
   YOIpLWKBBFxzgWCI0cI36C8EhUW+YgecnIS1PzCZXmU3r/1b+WogOz4vK
   w=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 34x5A2WcSaFLPQHoUtPeg9nY7M0CYC+Hpqq4qx0IrnSA2hGOIKx0wIZybVIiEYOwY5bPUxClL3
 WqZwO3NvDEvq/z6BNww9RpBuAzNUmKOGitAosjHzgImWtYyG/OCXeV5rSmZL3khpP0nmex7ZNj
 jj8ELO2BqoPkPVRSxRCwV3Fv3qxH+DXzYTwQx3hhbAPYKfV33wL21ZuA44u4aRqgUjRlCdALy2
 /dagAvx6t3PwESXRRumwylzMBKXcDLV0tXlcV6dStKHSXuwPAx5bXSnjCf8xEFcSj7mT/dkb5j
 OoU=
X-SBRS: 5.2
X-MesageID: 42190155
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:E4jUya/RaNm1NTT9jqNuk+EKdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qH/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7H2vanrfAIcAFof4BSO5AnC1JfBDxOa0h0COgk/o4sKzG
 6tqW3Ez5Tmid6X4Fv212jf75NZ8eGRt+drNYi3peU+bhnpggasTox9V7OFpyBdmpDS1H8a1O
 Pijj1lE8Nv627AXmzdm2qT5yDQlAwAxlWn6ViEjWDtqcb0LQhKdfZptMZiXTbyr28D1esMt5
 5j7iaimLd8SS7kpmDb4ePFUhl7/3DE2kYKoKoooFF0FbcFZKQ5l/14wGplVK0uMQjd844dHO
 xnHKjnlYxrWGLfVXzfs2V1qebcJ0gbL1ODSkgGjMSfzyJbqnB/11cZ38wShB47heoAd6U=
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42190155"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YNr9u6RcDFrMhg7DMAxmZTrYD8j1eEBD10zQScLxzoyjljAZsjb+MPWh45652gD1JDqC5Zc3a95eed0Iz3ZGJMroGZ/8Eu0Z2my6fiMyDUHlK6zX2fcJ6zS5n9eVaNAGG6+cjKLY2+DLgrjg1OmdGXV9zZieYCBdu9ktlG9lFX6N9oZChsUGHRb5OncHNyC85d2E/TpFpcuAS480hTxuLLpP886XwHgEgrAdzL8bUNaNE31kh4Ya43oqFtlhFP80fbl52dAY+1LG8Fu1H1fv0qlD12fBYT1ncNM9Aa6PKI1Fmm31DHIDaMDbJpHElfrnqRF1W89iyvbK/mDwtl1k6g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tkRbo7Btuf6OptzIMrsyMrsHpwkQPM24A5LsXU73zhg=;
 b=kEh2YJ2+Dy54Oh5Jnd4oBNA/f8e0LnUgVpO3h4ZIRglhGEpZ9CQ9huOW2qgk1XXUejxAyf1v1M2cC6YPk4k/GYbGPhWL5RkltBTKJApsvcMK46esLDOC5djxCdpUKxadAoA7rAk0HRtNyJRz901OaEfpNYoV5ClpDPhgTZqoEqUd0VIwk60fu1up7BkDvFGFkWea6XtYXEhzfwekT+6xnICWdqAhYeqF7Z6lY7XRwi3J2zBaauajpPdUY5gZ1ZVofVe4uwyU73XvLj6XNYGJeGI2eHc/rswpZZZybG+qlwRtn+l3WUdfKodfZDT1mRfl9AgIX7OtlYH7hTgahIK2uA==
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=tkRbo7Btuf6OptzIMrsyMrsHpwkQPM24A5LsXU73zhg=;
 b=Yiowzzr+Obh911GEKfWpAaNixWC/9C3chofnViL3Ml+KxYDA7WZJ0deDloocPCEOqaMC/WwPBIqJD2gALsLuqXc5T9qIXKx8jkEiOdQ7uSPAN+/V1yTExE53hR43Z3F0oDgE3iaSHyaacjqSZHNQcwRzLAqemyBNlYpjio/MZ8I=
Date: Thu, 22 Apr 2021 16:56: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 7/8] x86/EFI: keep debug info in xen.efi
Message-ID: <YIGOrOL+pKGaHqwX@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
X-ClientProxiedBy: MR2P264CA0147.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::10) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d7b55825-8c57-487b-edf6-08d9059edc5b
X-MS-TrafficTypeDiagnostic: DS7PR03MB5605:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB56053A1386125520E2B533158F469@DS7PR03MB5605.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: CqUwWKU5UMucPjRzOLk35I2Br7Y+0MSSbDqy8PGhDvLHw8Ad0jHiP6tmm8ooXqMc8kpr5x24fexEH84/8v8Nwh05GxTaWHb32Ra9D3FSidVUQRlH3AdmIIHQmmXfpvEJiBXh1Z1QD3bIp5dZ9fH+wRioeUMj2hnzJ/RCtyflfgEy74cmkNqBa1k1HMHGJ4aGmCtcPEmByyG4r2tTnfBWfKWNUpAldnL5qo3XgyQz6AZxOHYTm+iON0GH1jD8Tpf6AhErTkb8859KJEY0BOnlXG66cI1xTY+EX90GcmvUQTaAdi1dAm+74sdxT751KfsTmNwG0dS4OLGxWlX9mJTcL/ZBenSDUDkEad9yWpzVeJ47FEYm317CaG8W4OqzSM1YbvR+paoeQDmKjnVwlbLjezb/Q8o3qH/oZ/r43rm5U5j1QHK+gSH2ffP9kRR4BPSYMxwTQNQuZRuLZAVMc0wRMSrTbkEjBhgT3UwtySEuJ356Hwtw7Ht4Ct2aQVvNuBpGqy2UxW9S/rkJNKEmFFrntgFiEDXVnuVO0UIClLcez28+RaVQXnRCdJyWqRklbQliKq7rcI56HaUQQe9vMAA3302OaD3PBe3faOWO/9C6g5vCZ+84agmaQJl6XOYfy54IFQhkjyQN1cZXWyeqVBjEYA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(39860400002)(396003)(366004)(376002)(136003)(346002)(26005)(53546011)(66556008)(8676002)(16526019)(2906002)(66946007)(9686003)(85182001)(54906003)(6496006)(4326008)(8936002)(6916009)(316002)(38100700002)(956004)(86362001)(6666004)(83380400001)(6486002)(5660300002)(33716001)(66476007)(478600001)(186003)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Zx0jvY1XVSJljTT/v3QWLnpBd9Nm6ZK95csKnwh?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d7b55825-8c57-487b-edf6-08d9059edc5b
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 14:56:51.1680
 (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: Jv/XJiopRAE3E8pgXU4l6x/3H33BFku2U2tRk+zOcTt+oQIZi0d7PphCqBWKB3AgLkmySAA6LFkKA7ZIJVfbmA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5605
X-OriginatorOrg: citrix.com

On Thu, Apr 22, 2021 at 01:03:13PM +0200, Jan Beulich wrote:
> On 22.04.2021 10:14, Roger Pau Monné wrote:
> > On Wed, Apr 21, 2021 at 05:38:42PM +0200, Jan Beulich wrote:
> >> On 21.04.2021 17:30, Roger Pau Monné wrote:
> >>> On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
> >>>> On 21.04.2021 13:15, Roger Pau Monné wrote:
> >>>>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
> >>>>>> --- a/xen/arch/x86/xen.lds.S
> >>>>>> +++ b/xen/arch/x86/xen.lds.S
> >>>>>> @@ -312,10 +312,60 @@ SECTIONS
> >>>>>>      *(.reloc)
> >>>>>>      __base_relocs_end = .;
> >>>>>>    }
> >>>>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
> >>>>>> -  . = ALIGN(__section_alignment__);
> >>>>>> -  DECL_SECTION(.pad) {
> >>>>>> -    . = ALIGN(MB(16));
> >>>>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
> >>>>>> +     *(.debug_abbrev)
> >>>>>> +  }
> >>>>>> +  .debug_info ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_info)
> >>>>>> +    *(.gnu.linkonce.wi.*)
> >>>>>> +  }
> >>>>>> +  .debug_types ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_types)
> >>>>>> +  }
> >>>>>> +  .debug_str ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_str)
> >>>>>> +  }
> >>>>>> +  .debug_line ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_line)
> >>>>>> +    *(.debug_line.*)
> >>>>>> +  }
> >>>>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_line_str)
> >>>>>> +  }
> >>>>>> +  .debug_names ALIGN(4) (NOLOAD) : {
> >>>>>> +    *(.debug_names)
> >>>>>> +  }
> >>>>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
> >>>>>> +    *(.debug_frame)
> >>>>>> +  }
> >>>>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_loc)
> >>>>>> +  }
> >>>>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
> >>>>>> +    *(.debug_loclists)
> >>>>>> +  }
> >>>>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
> >>>>>> +    *(.debug_ranges)
> >>>>>> +  }
> >>>>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
> >>>>>> +    *(.debug_rnglists)
> >>>>>> +  }
> >>>>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
> >>>>>> +    *(.debug_addr)
> >>>>>> +  }
> >>>>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_aranges)
> >>>>>> +  }
> >>>>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_pubnames)
> >>>>>> +  }
> >>>>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
> >>>>>> +    *(.debug_pubtypes)
> >>>>>> +  }
> >>>>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
> >>>>>> +  __image_end__ = .;
> >>>>>> +  .pad ALIGN(__section_alignment__) : {
> >>>>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
> >>>>>
> >>>>> I think this is inside an ifdef EFI region, since this is DWARF info
> >>>>> couldn't it also be present when building with EFI disabled?
> >>>>
> >>>> Of course (and it's not just "could" but "will"), yet the linker will
> >>>> do fine (and perhaps even better) without when building ELF. Also
> >>>> note that we'll be responsible for keeping the list of sections up-to-
> >>>> date. The linker will recognize Dwarf sections by looking for a
> >>>> .debug_ prefix. We can't use such here (or at least I'm not aware of
> >>>> a suitable mechanism); .debug_* would mean munging together all the
> >>>> different kinds of Dwarf sections. Hence by limiting the explicit
> >>>> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
> >>>
> >>> Right, so we will have to keep this list of debug_ sections updated
> >>> manually if/when more of those appear as part of DWARF updates?
> >>
> >> Yes.
> >>
> >>> Do we have a way to get some kind of warning or error when a new
> >>> section not explicitly handled here appears?
> >>
> >> ld 2.37 will start warning about such sections, as they'd land at
> >> VA 0 and hence below image base.
> > 
> > That seems like a bug in ld?
> > 
> > The '--image-base' option description mentions: "This is the lowest
> > memory location that will be used when your program or dll is
> > loaded.", so I would expect that if the option is used the default VA
> > should be >= image-base, or else the description of the option is not
> > consistent, as ld will still place sections at addresses below
> > image-base.
> 
> ld's "general" logic is pretty ELF-centric. Hence debugging sections
> get placed at VA 0 by default, not matter what the (PE-specific)
> --image-base says. Whether that's a bug though I'm not sure: There
> are no really good alternatives that could be used by default. Doing
> what we do here (and what e.g. Cygwin does) via linker script may not
> be appropriate in the common case. In particular it is not generally
> correct for debug info to be part of what gets loaded into memory.

So with this change here you placate the warnings from newer ld about
having a VA < image base, but the end result is that now the debug
sections will also get loaded when booted from the EFI loader?
(because the NOLOAD doesn't have any effect with PE)

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:57:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:57:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115573.220551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZalS-0006bR-Tu; Thu, 22 Apr 2021 14:57:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115573.220551; Thu, 22 Apr 2021 14:57:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZalS-0006bK-Qh; Thu, 22 Apr 2021 14:57:10 +0000
Received: by outflank-mailman (input) for mailman id 115573;
 Thu, 22 Apr 2021 14:57:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZalR-0006aj-CT
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:57:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 18ce7d23-7784-47a5-9f97-26855f358af4;
 Thu, 22 Apr 2021 14:57:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D7905B183;
 Thu, 22 Apr 2021 14:57: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: 18ce7d23-7784-47a5-9f97-26855f358af4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103426; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=BnZJW8q+Psi2deBa+/DuTOElAH40rilmihBn23jtynU=;
	b=ufjUMTNSr5s1+ifoE88XzvrprycIhaeXF1PQfQPeI0SvDNYxjrSmNUmr0DAZcyD/FwrscJ
	PhirbSwZaeW2eJZ7RWyalbXuFHdOk90qji0C+/OIL1gGchNjiBcdU7/1I7gYytDCY4ONAS
	a5WQBcid15oAvZC75eJmOt8YyCthMjw=
Subject: [PATCH v3 21/22] x86emul: test AMX insns
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <19925d83-ae92-cdda-f5be-193cfb05c775@suse.com>
Date: Thu, 22 Apr 2021 16:57:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Carry out some basic matrix operations on 2x2, 3x3, and 4x4 matrixes.

To also have a use of a non-square matrix, also transpose ones of said
square formats via linearization and multiplication by the respective
transposition permutation matrix. To generate the latter, introduce a
small helper tool. This is mainly to avoid creating / populating a
rather large matrix (up to 16x16) in a stack variable.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: New.

--- a/tools/tests/x86_emulator/Makefile
+++ b/tools/tests/x86_emulator/Makefile
@@ -25,6 +25,12 @@ SHA := sse4-sha avx-sha avx512f-sha
 GF := sse2-gf avx2-gf avx512bw-gf
 TESTCASES := blowfish $(SIMD) $(FMA) $(SG) $(AES) $(CLMUL) $(SHA) $(GF)
 
+MATRIX := amx-bf16 amx-int8
+
+ifeq ($(XEN_COMPILE_ARCH),x86_64)
+TESTCASES += $(MATRIX)
+endif
+
 OPMASK := avx512f avx512dq avx512bw
 
 ifeq ($(origin XEN_COMPILE_ARCH),override)
@@ -96,6 +102,13 @@ avx512f-opmask-vecs := 2
 avx512dq-opmask-vecs := 1 2
 avx512bw-opmask-vecs := 4 8
 
+amx-bf16-dims := 2 3 4
+amx-bf16-ints :=
+amx-bf16-flts := 2
+amx-int8-dims := 2 3 4
+amx-int8-ints := 1
+amx-int8-flts :=
+
 # Suppress building by default of the harness if the compiler can't deal
 # with some of the extensions used.  Don't alter the "run" target dependencies
 # though, as this target needs to be specified manually, and things may work
@@ -170,6 +183,18 @@ endef
 define opmask-defs
 $(1)-opmask-cflags := $(foreach vec,$($(1)-opmask-vecs), "-D_$(vec) -m$(1) -Os -DSIZE=$(vec)")
 endef
+amx-cflags-common = $(CFLAGS_xeninclude) -Os -DN=$(1) -DTPM_H=tpm-$(1)x$(1).h
+define matrix-defs
+$(1).h: $(foreach dim,$($(1)-dims),tpm-$(dim)x$(dim).h)
+$(1)-cflags :=
+$(1)-cflags-x86_64 := \
+	$(foreach dim,$($(1)-dims), \
+	  $(foreach flt,$($(1)-flts), \
+	    "-D_$(dim)x$(dim) -DFLOAT_SIZE=$(flt) $(call amx-cflags-common,$(dim))") \
+	  $(foreach int,$($(1)-ints), \
+	    "-Di_$(dim)x$(dim) -DINT_SIZE=$(int) $(call amx-cflags-common,$(dim))" \
+	    "-Du_$(dim)x$(dim) -DUINT_SIZE=$(int) $(call amx-cflags-common,$(dim))"))
+endef
 
 $(foreach flavor,$(SIMD) $(FMA),$(eval $(call simd-defs,$(flavor))))
 $(foreach flavor,$(SG),$(eval $(call simd-sg-defs,$(flavor))))
@@ -178,6 +203,7 @@ $(foreach flavor,$(CLMUL),$(eval $(call
 $(foreach flavor,$(SHA),$(eval $(call simd-sha-defs,$(flavor))))
 $(foreach flavor,$(GF),$(eval $(call simd-gf-defs,$(flavor))))
 $(foreach flavor,$(OPMASK),$(eval $(call opmask-defs,$(flavor))))
+$(foreach flavor,$(MATRIX),$(eval $(call matrix-defs,$(flavor))))
 
 first-string = $(shell for s in $(1); do echo "$$s"; break; done)
 
@@ -248,6 +274,9 @@ $(addsuffix .h,$(SIMD) $(FMA) $(SG) $(AE
 
 xop.h avx512f.h: simd-fma.c
 
+$(addsuffix .c,$(MATRIX)):
+	ln -sf matrix.c $@
+
 endif # 32-bit override
 
 $(TARGET): x86-emulate.o cpuid.o test_x86_emulator.o evex-disp8.o predicates.o wrappers.o
@@ -295,6 +324,12 @@ x86-emulate.o cpuid.o test_x86_emulator.
 x86-emulate.o: x86_emulate/x86_emulate.c
 x86-emulate.o: HOSTCFLAGS += -D__XEN_TOOLS__
 
+tpm-%.h: mktpm Makefile
+	set -x; ./$< $(subst x,$(space),$*) >$@
+
+mktpm: mktpm.c
+	$(HOSTCC) $(HOSTCFLAGS) -o $@ $<
+
 # In order for our custom .type assembler directives to reliably land after
 # gcc's, we need to keep it from re-ordering top-level constructs.
 $(call cc-option-add,HOSTCFLAGS-toplevel,HOSTCC,-fno-toplevel-reorder)
--- /dev/null
+++ b/tools/tests/x86_emulator/matrix.c
@@ -0,0 +1,229 @@
+#include <stdbool.h>
+
+typedef unsigned int __attribute__((mode(QI))) uint8_t;
+typedef unsigned int __attribute__((mode(HI))) uint16_t;
+
+#define stringify_(x...) #x
+#define stringify(x...)  stringify_(x)
+
+#include <xen/asm/x86-types.h>
+
+asm ( "\t.text\n"
+      "\t.globl _start\n"
+      "_start:\n"
+      "\tjmp matrix_test" );
+
+/*
+ * For the purposes here we consider the 32-bit elements to hold just a single
+ * value, with the other slots zero-filled. This way the 2- or 4-way dot
+ * products really end up as simple multiplications, allowing us to treat the
+ * underlying insns as simple matrix multiply-and-accumulate ones. With
+ * suitably in-range numbers, this also allows us to have the compiler deal
+ * with, in particular, the bf16 fields without it actually knowing of such a
+ * type.
+ *
+ * Notation in comments:
+ * I  - identity matrix (all ones on the main diagonal)
+ * AI - all ones on the antidiagonal
+ */
+
+typedef union {
+#ifdef FLOAT_SIZE
+# define MACC "tdpbf16ps"
+    float val;
+    float res;
+    struct {
+        unsigned int zero:16;
+        unsigned int bf16:16;
+    };
+#else
+# ifdef INT_SIZE
+#  define SIGNED signed
+#  define MACC "tdpbssd"
+# else
+#  define MACC "tdpbuud"
+#  define SIGNED unsigned
+# endif
+    SIGNED int res;
+    struct {
+        SIGNED   int val :8;
+        unsigned int zero:24;
+    };
+#endif
+} elem_t;
+
+typedef elem_t tile_t[N][N];
+
+static void ldtilecfg(const struct x86_tilecfg *cfg)
+{
+    asm volatile ( "ldtilecfg %0" :: "m" (*cfg) );
+}
+
+#define load_diag(r, v) ({ \
+    struct { \
+        elem_t arr[2 * N - 1]; \
+    } in = { .arr[N - 1].val = (v) }; \
+    asm volatile ( "tileloadd -%c[scale](%[base],%[stride],%c[scale]), %%" #r \
+                   :: [base] "r" (&in.arr[N]), \
+                      [stride] "r" (-1L), \
+                      [scale] "i" (sizeof(elem_t)), \
+                      "m" (in) ); \
+})
+
+#define load_antidiag(r, v) ({ \
+    struct { \
+        elem_t arr[2 * N - 1]; \
+    } in = { .arr[N - 1].val = (v) }; \
+    asm volatile ( "tileloadd (%[base],%[stride]), %%" #r \
+                   :: [base] "r" (&in.arr), \
+                      [stride] "r" (sizeof(elem_t)), \
+                      "m" (in) ); \
+})
+
+#define load_linear(r, t) ({ \
+    (void)((t) == (const tile_t *)0); \
+    asm volatile ( "tileloadd (%[base]), %%" #r \
+                   :: [base] "r" (t), \
+                      "m" (*(t)) ); \
+})
+
+static const elem_t tpm[N * N][N * N] = {
+#include stringify(TPM_H)
+};
+
+#define load_tpm(r) \
+    asm volatile ( "tileloadd (%[base],%[stride],%c[scale]), %%" #r \
+                   :: [base] "r" (&tpm), \
+                      [stride] "r" (N * N * 1L), \
+                      [scale] "i" (sizeof(elem_t)), \
+                      "m" (tpm) ); \
+
+#define store(t, r) ({ \
+    (void)((t) == (tile_t *)0); \
+    asm volatile ( "tilestored %%" #r ", (%[base],%[stride],%c[scale])" \
+                   /* "+m" to keep the compiler from eliminating fill(). */ \
+                   : "+m" (*(t)) \
+                   : [base] "r" (t), \
+                     [stride] "r" (N * 1L), \
+                     [scale] "i" (sizeof(elem_t)) ); \
+})
+
+#define macc(srcdst, src1, src2) \
+    asm volatile ( MACC " %" #src2 ", %" #src1 ", %" #srcdst )
+
+#define mul(dst, src1, src2) ({ \
+    asm volatile ( "tilezero %" #dst ); \
+    macc(dst, src1, src2); \
+})
+
+#define add(dst, src1, src2, scratch) ({ \
+    load_diag(scratch, 1); \
+    mul(dst, src1, scratch); \
+    macc(dst, scratch, src2); \
+})
+
+static inline void fill(tile_t *t)
+{
+    unsigned int cnt = N * N;
+
+    asm ( "repe stosl"
+          : "=m" (*t), "+D" (t), "+c" (cnt)
+          : "a" (~0) );
+}
+
+static inline bool zero(const tile_t *t)
+{
+    unsigned int cnt = N * N;
+    bool zf;
+
+    asm ( "repe scasl"
+          : "=@ccz" (zf), "+D" (t), "+c" (cnt)
+          : "m" (*t), "a" (0) );
+
+    return zf;
+}
+
+#define C(cols) ((cols) * sizeof(elem_t))
+#define R(rows) (rows)
+
+int matrix_test(void)
+{
+    struct x86_tilecfg cfg = {
+        .palette = 1,
+        .colsb   = { C(N), C(N), C(N), C(N), 0, C(N * N), C(N * N), C(N * N) },
+        .rows    = { R(N), R(N), R(N), R(N), 0, R(1),     R(1),     R(N * N) },
+    };
+    tile_t x;
+    unsigned int i, j;
+
+    ldtilecfg(&cfg);
+
+    fill(&x);
+    store(&x, tmm0);
+    if ( !zero(&x) ) return __LINE__;
+
+    /* Load and store I. */
+    fill(&x);
+    load_diag(tmm0, 1);
+    store(&x, tmm0);
+    for ( i = 0; i < N; ++i )
+        for ( j = 0; j < N; ++j )
+            if ( x[i][j].res != (i == j) )
+                return __LINE__;
+
+    /* I + AI */
+    fill(&x);
+    load_antidiag(tmm1, 1);
+    add(tmm2, tmm0, tmm1, tmm3);
+    store(&x, tmm2);
+    for ( i = 0; i < N; ++i )
+        for ( j = 0; j < N; ++j )
+            if ( i == j && i + j == N - 1 )
+            {
+                if ( x[i][j].res != 2 )
+                    return __LINE__;
+            }
+            else if ( i == j || i + j == N - 1 )
+            {
+                if ( x[i][j].res != 1 )
+                    return __LINE__;
+            }
+            else if ( x[i][j].res )
+                return __LINE__;
+
+#ifndef UINT_SIZE
+    /* I + AI * -AI == 0 */
+    fill(&x);
+    load_antidiag(tmm2, -1);
+    macc(tmm0, tmm1, tmm2);
+    store(&x, tmm0);
+    if ( !zero(&x) ) return __LINE__;
+#endif
+
+    /*
+     * Transpose a matrix via linearization and multiplication by the
+     * respective transpostion permutation matrix. Note that linearization
+     * merely requires a different tile layout (see the initializer of cfg
+     * above).
+     */
+#ifdef UINT_SIZE
+# define VAL(r, c) ((c) < (r) ? (c) : (r) + (c) )
+#else
+# define VAL(r, c) ((c) < (r) ? -(r) : (r) + (c) )
+#endif
+    for ( i = 0; i < N; ++i )
+        for (j = 0; j < N; ++j )
+            x[i][j].val = VAL(i, j);
+    load_linear(tmm6, &x);
+    load_tpm(tmm7);
+    mul(tmm5, tmm6, tmm7);
+    /* There's just a single row, so re-use plain store() here. */
+    store(&x, tmm5);
+    for ( i = 0; i < N; ++i )
+        for (j = 0; j < N; ++j )
+            if ( x[i][j].res != VAL(j, i) )
+                return __LINE__;
+#undef VAL
+
+    return 0;
+}
--- /dev/null
+++ b/tools/tests/x86_emulator/mktpm.c
@@ -0,0 +1,41 @@
+/* make Transposition Permutation Matrix */
+
+#include <stdio.h>
+#include <stdlib.h>
+
+static void line(unsigned one, unsigned cols)
+{
+    unsigned i;
+
+    printf("    { ");
+    for ( i = 0; i < cols - 1; ++i )
+        printf("{ %d }, ", i == one);
+    printf("{ %d } },\n", i == one);
+}
+
+int main(int argc, char*argv[])
+{
+    unsigned i, j, m, n;
+
+    switch ( argc )
+    {
+    default:
+        fprintf(stderr, "Usage: %s <rows> [<cols>]\n", argv[0]);
+        return argc != 1;
+
+    case 3:
+        n = strtoul(argv[2], NULL, 0);
+        /* fall-through */
+    case 2:
+        m = strtoul(argv[1], NULL, 0);
+        if ( argc == 2 )
+            n = m;
+        break;
+    }
+
+    for ( i = 0; i < m * n; )
+        for ( j = i / n; j < m * n; j += m, ++i )
+            line(j, m * n);
+
+    return 0;
+}
--- a/tools/tests/x86_emulator/test_x86_emulator.c
+++ b/tools/tests/x86_emulator/test_x86_emulator.c
@@ -44,6 +44,11 @@ asm ( ".pushsection .test, \"ax\", @prog
 #include "avx512vbmi.h"
 #include "avx512vbmi2-vpclmulqdq.h"
 
+#ifdef __x86_64__
+#include "amx-bf16.h"
+#include "amx-int8.h"
+#endif
+
 #define verbose false /* Switch to true for far more logging. */
 
 static void blowfish_set_regs(struct cpu_user_regs *regs)
@@ -263,6 +268,33 @@ static bool simd_check_regs(const struct
     return false;
 }
 
+#ifdef __x86_64__
+
+static bool amx_check_bf16(void)
+{
+    return cp.feat.amx_bf16;
+}
+
+static bool amx_check_int8(void)
+{
+    return cp.feat.amx_int8;
+}
+
+static void amx_set_regs(struct cpu_user_regs *regs)
+{
+}
+
+static bool amx_check_regs(const struct cpu_user_regs *regs)
+{
+    asm volatile ( ".byte 0xc4, 0xe2, 0x78, 0x49, 0xc0" ); /* tilerelease */
+    if ( !regs->eax )
+        return true;
+    printf("[line %u] ", (unsigned int)regs->eax);
+    return false;
+}
+
+#endif
+
 static const struct {
     const void *code;
     size_t size;
@@ -534,6 +566,25 @@ static const struct {
 #undef AVX512VL
 #undef SIMD_
 #undef SIMD
+#ifdef __x86_64__
+# define AMX(desc, feat, t, dim)                                              \
+    { .code = amx_ ## feat ## _x86_64_D ## t ## _ ## dim ## x ## dim,         \
+      .size = sizeof(amx_ ## feat ## _x86_64_D ## t ## _ ## dim ## x ## dim), \
+      .bitness = 64, .name = "AMX-" #desc " (" #t #dim "x" #dim ")",          \
+      .check_cpu = amx_check_ ## feat,                                        \
+      .set_regs = amx_set_regs,                                               \
+      .check_regs = amx_check_regs }
+    AMX(BF16, bf16, , 2),
+    AMX(BF16, bf16, , 3),
+    AMX(BF16, bf16, , 4),
+    AMX(INT8, int8, i, 2),
+    AMX(INT8, int8, i, 3),
+    AMX(INT8, int8, i, 4),
+    AMX(INT8, int8, u, 2),
+    AMX(INT8, int8, u, 3),
+    AMX(INT8, int8, u, 4),
+# undef AMX
+#endif
 };
 
 static unsigned int bytes_read;



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 14:57:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 14:57:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115580.220563 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZam4-0006m8-7m; Thu, 22 Apr 2021 14:57:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115580.220563; Thu, 22 Apr 2021 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 1lZam4-0006m0-4S; Thu, 22 Apr 2021 14:57:48 +0000
Received: by outflank-mailman (input) for mailman id 115580;
 Thu, 22 Apr 2021 14:57:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZam2-0006lp-BK
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 14:57:46 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 751cc7ac-e603-4a1f-a002-1c66535d470c;
 Thu, 22 Apr 2021 14:57:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4F834B16A;
 Thu, 22 Apr 2021 14:57: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: 751cc7ac-e603-4a1f-a002-1c66535d470c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619103464; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0Kar8c0Mm+YFIHWmPbC+8g9omJWrv1zJZFI3hL51bIQ=;
	b=eBoUDSl4ml+KE6JjGdKtVsKE+2Wx9sR4QP1+q10TA8kbXIfKcC+zm84gssNoZHJdr0UWB7
	sitgryWGEKbPDgd8TyrxPV2p9gvlA5b/Q48G/JA25MSVpy6bdgCyvyj0tdfcnLXqLXTa+Q
	Tdxo0rzbhLGtMx+1soYolNUJIghEpzY=
Subject: [PATCH v3 22/22] x86: permit guests to use AMX and XFD
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Message-ID: <dd649f56-69b4-a3a7-5eba-88edd9358073@suse.com>
Date: Thu, 22 Apr 2021 16:57:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

These features are marked experimental (for only parts of the code
actually having got tested yet, while other parts require respective
hardware) and opt-in for guests.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: New.

--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,6 +6,9 @@ The format is based on [Keep a Changelog
 
 ## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
 
+### Added / support upgraded
+ - x86 AMX and XFD (Experimental)
+
 ## [4.15.0 UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.15.0) - TBD
 
 ### Added / support upgraded
--- a/SUPPORT.md
+++ b/SUPPORT.md
@@ -61,6 +61,10 @@ For the Cortex A57 r0p0 - r1p1, see Erra
 
     Status: Tech Preview
 
+### x86 AMX and XFD
+
+    Status: Experimental
+
 ### IOMMU
 
     Status, AMD IOMMU: Supported
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -191,7 +191,7 @@ XEN_CPUFEATURE(XSAVEOPT,      4*32+ 0) /
 XEN_CPUFEATURE(XSAVEC,        4*32+ 1) /*A  XSAVEC/XRSTORC instructions */
 XEN_CPUFEATURE(XGETBV1,       4*32+ 2) /*A  XGETBV with %ecx=1 */
 XEN_CPUFEATURE(XSAVES,        4*32+ 3) /*S  XSAVES/XRSTORS instructions */
-XEN_CPUFEATURE(XFD,           4*32+ 4) /*   XFD / XFD_ERR MSRs */
+XEN_CPUFEATURE(XFD,           4*32+ 4) /*a  XFD / XFD_ERR MSRs */
 
 /* Intel-defined CPU features, CPUID level 0x00000007:0.ebx, word 5 */
 XEN_CPUFEATURE(FSGSBASE,      5*32+ 0) /*A  {RD,WR}{FS,GS}BASE instructions */
@@ -269,9 +269,9 @@ XEN_CPUFEATURE(MD_CLEAR,      9*32+10) /
 XEN_CPUFEATURE(TSX_FORCE_ABORT, 9*32+13) /* MSR_TSX_FORCE_ABORT.RTM_ABORT */
 XEN_CPUFEATURE(SERIALIZE,     9*32+14) /*a  SERIALIZE insn */
 XEN_CPUFEATURE(CET_IBT,       9*32+20) /*   CET - Indirect Branch Tracking */
-XEN_CPUFEATURE(AMX_BF16,      9*32+22) /*   AMX BFloat16 instructions */
-XEN_CPUFEATURE(AMX_TILE,      9*32+24) /*   AMX tile architecture */
-XEN_CPUFEATURE(AMX_INT8,      9*32+25) /*   AMX 8-bit integer instructions */
+XEN_CPUFEATURE(AMX_BF16,      9*32+22) /*a  AMX BFloat16 instructions */
+XEN_CPUFEATURE(AMX_TILE,      9*32+24) /*a  AMX tile architecture */
+XEN_CPUFEATURE(AMX_INT8,      9*32+25) /*a  AMX 8-bit integer instructions */
 XEN_CPUFEATURE(IBRSB,         9*32+26) /*A  IBRS and IBPB support (used by Intel) */
 XEN_CPUFEATURE(STIBP,         9*32+27) /*A  STIBP */
 XEN_CPUFEATURE(L1D_FLUSH,     9*32+28) /*S  MSR_FLUSH_CMD and L1D flush. */



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:05:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:05:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115596.220575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZatJ-0007qy-6i; Thu, 22 Apr 2021 15:05:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115596.220575; Thu, 22 Apr 2021 15:05:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZatJ-0007qr-20; Thu, 22 Apr 2021 15:05:17 +0000
Received: by outflank-mailman (input) for mailman id 115596;
 Thu, 22 Apr 2021 15:05:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wiI7=JT=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lZatH-0007qm-5H
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:05:15 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5fcaf03d-0caf-4e67-bdfe-fe0f52915640;
 Thu, 22 Apr 2021 15:05:13 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lZatB-0000HF-66; Thu, 22 Apr 2021 15:05: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: 5fcaf03d-0caf-4e67-bdfe-fe0f52915640
Date: Thu, 22 Apr 2021 16:05:09 +0100
From: Tim Deegan <tim@xen.org>
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>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Jun Nakajima <jun.nakajima@intel.com>
Subject: Re: [PATCH v4] VMX: use a single, global APIC access page
Message-ID: <YIGQpZ+j8ZvWo14f@deinos.phlegethon.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <1c489e77-6e65-6121-6c28-3c4bd377223c@suse.com>
 <YHs2AJ6pqrAw7uew@deinos.phlegethon.org>
 <d698a29e-fb4e-a650-9e48-ad209e64c800@suse.com>
 <YIEo3DQojgc0zlzw@deinos.phlegethon.org>
 <9a00493c-319f-58c6-853c-382dd7a95561@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <9a00493c-319f-58c6-853c-382dd7a95561@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 11:38 +0200 on 22 Apr (1619091522), Jan Beulich wrote:
> On 22.04.2021 09:42, Tim Deegan wrote:
> > At 13:25 +0200 on 19 Apr (1618838726), Jan Beulich wrote:
> >> On 17.04.2021 21:24, Tim Deegan wrote:
> >>> At 12:40 +0200 on 12 Apr (1618231248), Jan Beulich wrote:
> >>>> --- a/xen/arch/x86/mm/shadow/set.c
> >>>> +++ b/xen/arch/x86/mm/shadow/set.c
> >>>> @@ -94,6 +94,22 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
> >>>>      ASSERT(!sh_l1e_is_magic(sl1e));
> >>>>      ASSERT(shadow_mode_refcounts(d));
> >>>>  
> >>>> +    /*
> >>>> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
> >>>> +     * get accessed, and hence there's no need to refcount it (and refcounting
> >>>> +     * would fail, due to the page having no owner).
> >>>> +     */
> >>>> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) )
> >>>
> >>> Would it be better to check specifically for mfn == apic_access_mfn
> >>> (and apic_access_mfn != 0, I guess)?
> >>
> >> Roger did ask about the same - I neither want to expose apic_access_mfn
> >> outside its CU, nor do I want to introduce an accessor function. Both
> >> feel like layering violations to me.
> > 
> > I think that this is even more of a layering violation: what we
> > actually want is to allow un-refcounted mappings of the
> > apic_access_mfn, but to do it we're relying on an internal
> > implementation detail (that it happens to be un-owned and PGC_extra)
> > rather than giving ourselves an API.
> > 
> > And so we're tangled up talking about how to write comments to warn
> > our future selves about the possible side-effects.
> > 
> >>>  If we want this behaviour for
> >>> for all un-owned PGC_extra MFNs it would be good to explain that in the
> >>> comments.
> >>
> >> This is hard to tell without knowing which (or even if) further such
> >> PGC_extra pages will appear. Hence any comment to that effect would be
> >> guesswork at best. Of course I can add e.g. "Other pages with the same
> >> properties would be treated the same", if that's what you're after?
> > 
> > If you want to go this way there should be a comment here saying that
> > we're allowing this for all PGC_extra pages because we need it for
> > apic_access_mfn, and a comment at PGC_extra saying that it has this
> > effect.
> 
> So (along with a comment to this effect) how about I make
> page_suppress_refcounting() and page_refcounting_suppressed() helpers?
> The former would set PGC_extra on the page and assert the page has no
> owner, while the latter would subsume the checks done here.

That sounds good to me.

> The only
> question then is what to do with the ASSERT(type == p2m_mmio_direct):
> That's still a property of the APIC access MFN which may or may not
> hold for future such pages. (It can't be part of the new helper anyway
> as "put" doesn't have the type available.)

I think we might drop that assertion, since the new mehanism would be
more general.

Cheers,

Tim.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:06:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:06:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115600.220586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaus-00085l-Gu; Thu, 22 Apr 2021 15:06:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115600.220586; Thu, 22 Apr 2021 15:06:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZaus-00085e-Dn; Thu, 22 Apr 2021 15:06:54 +0000
Received: by outflank-mailman (input) for mailman id 115600;
 Thu, 22 Apr 2021 15:06:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZaur-00085Z-0U
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:06:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 34cc38a1-bd92-42c0-b9fc-ae3c249870ce;
 Thu, 22 Apr 2021 15:06:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3CD09B12C;
 Thu, 22 Apr 2021 15:06: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: 34cc38a1-bd92-42c0-b9fc-ae3c249870ce
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619104011; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=3TxHxq3QrU6QlnEf1HzKyTR9ghKFQG7M5FKiQ2YbQrI=;
	b=KggcmuwB90vYM510sQNQKuo5VsiRq2ZI/w+2oct3rbHfwxxVlsOhoFkzWMlPvXDfc6VRnN
	oYJYzwPye5Oza1/5+HqWzPH8tw0Q4M2iZb28b7JIxtc0U9mzFdZS6Lb+mvEjjzo85IJ5HE
	WFHVeWTkv95byBOvL2R2DNFa+B5zGMs=
Subject: Re: [PATCH v3 19/22] x86emul: support TILELOADD{,T1} and TILESTORE
From: Jan Beulich <jbeulich@suse.com>
To: Paul Durrant <paul@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
 <fc272d90-9a3c-98e9-d811-ea9b70f89e22@suse.com>
Message-ID: <6b604011-a618-871a-2a3e-9118dd1b702b@suse.com>
Date: Thu, 22 Apr 2021 17:06:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <fc272d90-9a3c-98e9-d811-ea9b70f89e22@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Paul,

On 22.04.2021 16:55, Jan Beulich wrote:
> +        do {
> +            /* Limit rows to just as many to cover the next one to access. */
> +            cfg->start_row = i;
> +            cfg->rows[modrm_reg] = i + 1;
> +            write_tilecfg(cfg);
> +
> +            if ( vex.pfx != vex_f3 )
> +                rc = ops->read(ea.mem.seg,
> +                               truncate_ea(ea.mem.off + i * ea.val),
> +                               row, cfg->colsb[modrm_reg], ctxt);
> +
> +            invoke_stub("", "", "=m" (dummy) : "a" (row));
> +
> +            if ( vex.pfx == vex_f3 )
> +                rc = ops->write(ea.mem.seg,
> +                                truncate_ea(ea.mem.off + i * ea.val),
> +                                row, cfg->colsb[modrm_reg], ctxt);
> +        } while ( rc == X86EMUL_OKAY && ++i < n );

in principle tiles could have rows larger than 64 bytes without any
separate CPUID feature flag qualifying this. struct hvm_mmio_cache,
otoh, is having a fixed-size 64-byte buffer right now. Therefore I'm
wondering whether we'd want to switch to dynamically allocating that
to the minimum of 64 bytes and the size of a tile row, just as a
precautionary measure.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:10:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:10:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115608.220599 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZay6-0000X4-0R; Thu, 22 Apr 2021 15:10:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115608.220599; Thu, 22 Apr 2021 15: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 1lZay5-0000Wx-TV; Thu, 22 Apr 2021 15:10:13 +0000
Received: by outflank-mailman (input) for mailman id 115608;
 Thu, 22 Apr 2021 15:10:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HGUy=JT=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZay4-0000Wn-Nu
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:10:12 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 73b6b491-ba8a-477a-93b7-e9f66a8884b2;
 Thu, 22 Apr 2021 15:10:11 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C4992B16C;
 Thu, 22 Apr 2021 15:10: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: 73b6b491-ba8a-477a-93b7-e9f66a8884b2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619104210; 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=DE3ajipCLGOoeJxse+uDWjYBYGnyKVCVQDv9OtWAWVI=;
	b=YlnwiUJh4StAZX+XIutv314AStIgqEqhikMDiBZkbNqgG1wcxmZslPpvM3mPjQUuOyZq7e
	8ozA0Mrkd+QJ0dJrUEi99VaukzQmizcyv+cZxSv4fcLOcPbKJLDYF8wXH2UNengKHDlTaR
	iJusQ+0aBJtbRK3RqPELQGNfl41Fisc=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org,
	x86@kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH 0/3] xen: remove some checks for always present Xen features
Date: Thu, 22 Apr 2021 17:10:04 +0200
Message-Id: <20210422151007.2205-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some features of Xen can be assumed to be always present, so add a
central check to verify this being true and remove the other checks.

Juergen Gross (3):
  xen: check required Xen features
  xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv guests
  xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guests

 arch/x86/xen/enlighten_pv.c | 12 ++----------
 arch/x86/xen/mmu_pv.c       |  4 ++--
 drivers/xen/features.c      | 18 ++++++++++++++++++
 drivers/xen/gntdev.c        | 36 ++----------------------------------
 4 files changed, 24 insertions(+), 46 deletions(-)

-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:10:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:10:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115609.220605 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZay6-0000XV-B7; Thu, 22 Apr 2021 15:10:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115609.220605; Thu, 22 Apr 2021 15: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 1lZay6-0000XG-56; Thu, 22 Apr 2021 15:10:14 +0000
Received: by outflank-mailman (input) for mailman id 115609;
 Thu, 22 Apr 2021 15:10:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HGUy=JT=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZay4-0000Ws-Tj
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:10:12 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8ef3aeea-b69a-4323-9180-7bdaa8aa7ec1;
 Thu, 22 Apr 2021 15:10:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 63C6EB174;
 Thu, 22 Apr 2021 15:10: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: 8ef3aeea-b69a-4323-9180-7bdaa8aa7ec1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619104211; 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=gTxz0RbWnUOZh4apGxwrsu84odP0er4fykNXzBAMpag=;
	b=OX0bucQn5aKzgc3RTioNoOR5BErPdayoju9pA5S5pCYLyODdOwrADpSziKmUf+9lpeLHq/
	9Mf3LUt3Pz6e3HoQaDoc3vmW9oI3MwNlLswg5N8qCQBao4KAVZC3OEBWO7GVTKg5IwH9Ia
	GF/vmkAWug36+NLP+GZgc6yX11cDe8o=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH 3/3] xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guests
Date: Thu, 22 Apr 2021 17:10:07 +0200
Message-Id: <20210422151007.2205-4-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210422151007.2205-1-jgross@suse.com>
References: <20210422151007.2205-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

XENFEAT_gnttab_map_avail_bits is always set in Xen 4.0 and newer.
Remove coding assuming it might be zero.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/gntdev.c | 36 ++----------------------------------
 1 file changed, 2 insertions(+), 34 deletions(-)

diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
index f01d58c7a042..93818816e137 100644
--- a/drivers/xen/gntdev.c
+++ b/drivers/xen/gntdev.c
@@ -266,20 +266,13 @@ static int find_grant_ptes(pte_t *pte, unsigned long addr, void *data)
 {
 	struct gntdev_grant_map *map = data;
 	unsigned int pgnr = (addr - map->vma->vm_start) >> PAGE_SHIFT;
-	int flags = map->flags | GNTMAP_application_map | GNTMAP_contains_pte;
+	int flags = map->flags | GNTMAP_application_map | GNTMAP_contains_pte |
+		    (1 << _GNTMAP_guest_avail0);
 	u64 pte_maddr;
 
 	BUG_ON(pgnr >= map->count);
 	pte_maddr = arbitrary_virt_to_machine(pte).maddr;
 
-	/*
-	 * Set the PTE as special to force get_user_pages_fast() fall
-	 * back to the slow path.  If this is not supported as part of
-	 * the grant map, it will be done afterwards.
-	 */
-	if (xen_feature(XENFEAT_gnttab_map_avail_bits))
-		flags |= (1 << _GNTMAP_guest_avail0);
-
 	gnttab_set_map_op(&map->map_ops[pgnr], pte_maddr, flags,
 			  map->grants[pgnr].ref,
 			  map->grants[pgnr].domid);
@@ -288,14 +281,6 @@ static int find_grant_ptes(pte_t *pte, unsigned long addr, void *data)
 	return 0;
 }
 
-#ifdef CONFIG_X86
-static int set_grant_ptes_as_special(pte_t *pte, unsigned long addr, void *data)
-{
-	set_pte_at(current->mm, addr, pte, pte_mkspecial(*pte));
-	return 0;
-}
-#endif
-
 int gntdev_map_grant_pages(struct gntdev_grant_map *map)
 {
 	int i, err = 0;
@@ -1053,23 +1038,6 @@ static int gntdev_mmap(struct file *flip, struct vm_area_struct *vma)
 		err = vm_map_pages_zero(vma, map->pages, map->count);
 		if (err)
 			goto out_put_map;
-	} else {
-#ifdef CONFIG_X86
-		/*
-		 * If the PTEs were not made special by the grant map
-		 * hypercall, do so here.
-		 *
-		 * This is racy since the mapping is already visible
-		 * to userspace but userspace should be well-behaved
-		 * enough to not touch it until the mmap() call
-		 * returns.
-		 */
-		if (!xen_feature(XENFEAT_gnttab_map_avail_bits)) {
-			apply_to_page_range(vma->vm_mm, vma->vm_start,
-					    vma->vm_end - vma->vm_start,
-					    set_grant_ptes_as_special, NULL);
-		}
-#endif
 	}
 
 	return 0;
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:10:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:10:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115611.220628 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZayB-0000by-RB; Thu, 22 Apr 2021 15:10:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115611.220628; Thu, 22 Apr 2021 15:10: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 1lZayB-0000bm-Lt; Thu, 22 Apr 2021 15:10:19 +0000
Received: by outflank-mailman (input) for mailman id 115611;
 Thu, 22 Apr 2021 15:10:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HGUy=JT=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZay9-0000Ws-Ss
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:10:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4c23aae1-91cf-4201-9b32-06884c40c148;
 Thu, 22 Apr 2021 15:10:12 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 347DEB173;
 Thu, 22 Apr 2021 15:10: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: 4c23aae1-91cf-4201-9b32-06884c40c148
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619104211; 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=BkJA52UJuORwrXbRo8O+/xjjRU0ufo7MZuM5MyCQmjA=;
	b=CajF134GHN/RbxqiBB/w3atAlNOGdArNwDekAEHKBqOq4v1nRKEOWd8ExSJVO7QyBQRCth
	ZYn38ypxpyNUQTUfJkWfB0bemGaMLUEISnXe/il8XYc243is2loOvk16Dkjt14VllIaXmm
	lVEWuVR4bDQVCE/f9TeGxpHMvzi/l98=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org,
	x86@kernel.org,
	linux-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH 2/3] xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv guests
Date: Thu, 22 Apr 2021 17:10:06 +0200
Message-Id: <20210422151007.2205-3-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210422151007.2205-1-jgross@suse.com>
References: <20210422151007.2205-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

XENFEAT_mmu_pt_update_preserve_ad is always set in Xen 4.0 and newer.
Remove coding assuming it might be zero.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 arch/x86/xen/enlighten_pv.c | 12 ++----------
 arch/x86/xen/mmu_pv.c       |  4 ++--
 2 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
index dc0a337f985b..e754927feac7 100644
--- a/arch/x86/xen/enlighten_pv.c
+++ b/arch/x86/xen/enlighten_pv.c
@@ -116,9 +116,8 @@ static void __init xen_banner(void)
 	HYPERVISOR_xen_version(XENVER_extraversion, &extra);
 
 	pr_info("Booting paravirtualized kernel on %s\n", pv_info.name);
-	printk(KERN_INFO "Xen version: %d.%d%s%s\n",
-	       version >> 16, version & 0xffff, extra.extraversion,
-	       xen_feature(XENFEAT_mmu_pt_update_preserve_ad) ? " (preserve-AD)" : "");
+	pr_info("Xen version: %d.%d%s (preserve-AD)\n",
+		version >> 16, version & 0xffff, extra.extraversion);
 }
 
 static void __init xen_pv_init_platform(void)
@@ -1303,13 +1302,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
 	xen_init_apic();
 #endif
 
-	if (xen_feature(XENFEAT_mmu_pt_update_preserve_ad)) {
-		pv_ops.mmu.ptep_modify_prot_start =
-			xen_ptep_modify_prot_start;
-		pv_ops.mmu.ptep_modify_prot_commit =
-			xen_ptep_modify_prot_commit;
-	}
-
 	machine_ops = xen_machine_ops;
 
 	/*
diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c
index cf2ade864c30..359c711336a8 100644
--- a/arch/x86/xen/mmu_pv.c
+++ b/arch/x86/xen/mmu_pv.c
@@ -2100,8 +2100,8 @@ static const struct pv_mmu_ops xen_mmu_ops __initconst = {
 	.set_pte = xen_set_pte_init,
 	.set_pmd = xen_set_pmd_hyper,
 
-	.ptep_modify_prot_start = __ptep_modify_prot_start,
-	.ptep_modify_prot_commit = __ptep_modify_prot_commit,
+	.ptep_modify_prot_start = xen_ptep_modify_prot_start,
+	.ptep_modify_prot_commit = xen_ptep_modify_prot_commit,
 
 	.pte_val = PV_CALLEE_SAVE(xen_pte_val),
 	.pgd_val = PV_CALLEE_SAVE(xen_pgd_val),
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:10:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:10:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115610.220623 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZayB-0000bR-Hi; Thu, 22 Apr 2021 15:10:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115610.220623; Thu, 22 Apr 2021 15:10: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 1lZayB-0000bJ-Dp; Thu, 22 Apr 2021 15:10:19 +0000
Received: by outflank-mailman (input) for mailman id 115610;
 Thu, 22 Apr 2021 15:10:17 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HGUy=JT=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZay9-0000Wn-GR
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:10:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b288b233-aeff-4338-8886-6ef45220c371;
 Thu, 22 Apr 2021 15:10:11 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E9411B16D;
 Thu, 22 Apr 2021 15:10: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: b288b233-aeff-4338-8886-6ef45220c371
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619104211; 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=dGYTI5hb6XF/TrVV+tK4E4xlOyG7i9BsqrnGlynZSJM=;
	b=rkqpNHxQEq8IWYLVp0llAxNQCop0wQDhH19sDYwFQ1gk0VAjV4ZLRAnd/O5DophQu1UYRk
	pEiSJ2EiOmjVHzPlg2XnZBk5IWyblvtmK0qwMpFZl7499bg6QnKLQwCytl7FzyMM9fxSya
	SXO1bDbx/20HgyDjak27WeKH3lnP8Hs=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH 1/3] xen: check required Xen features
Date: Thu, 22 Apr 2021 17:10:05 +0200
Message-Id: <20210422151007.2205-2-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210422151007.2205-1-jgross@suse.com>
References: <20210422151007.2205-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Linux kernel is not supported to run on Xen versions older than 4.0.

Add tests for required Xen features always being present in Xen 4.0
and newer.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/features.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/drivers/xen/features.c b/drivers/xen/features.c
index 25c053b09605..60503299c9bc 100644
--- a/drivers/xen/features.c
+++ b/drivers/xen/features.c
@@ -9,13 +9,26 @@
 #include <linux/types.h>
 #include <linux/cache.h>
 #include <linux/export.h>
+#include <linux/printk.h>
 
 #include <asm/xen/hypercall.h>
 
+#include <xen/xen.h>
 #include <xen/interface/xen.h>
 #include <xen/interface/version.h>
 #include <xen/features.h>
 
+/*
+ * Linux kernel expects at least Xen 4.0.
+ *
+ * Assume some features to be available for that reason (depending on guest
+ * mode, of course).
+ */
+#define chk_feature(f) {						\
+		if (!xen_feature(f))					\
+			pr_err("Xen: feature %s not available!\n", #f);	\
+	}
+
 u8 xen_features[XENFEAT_NR_SUBMAPS * 32] __read_mostly;
 EXPORT_SYMBOL_GPL(xen_features);
 
@@ -31,4 +44,9 @@ void xen_setup_features(void)
 		for (j = 0; j < 32; j++)
 			xen_features[i * 32 + j] = !!(fi.submap & 1<<j);
 	}
+
+	if (xen_pv_domain()) {
+		chk_feature(XENFEAT_mmu_pt_update_preserve_ad);
+		chk_feature(XENFEAT_gnttab_map_avail_bits);
+	}
 }
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:12:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:12:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115622.220647 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZazq-0000wq-8c; Thu, 22 Apr 2021 15:12:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115622.220647; Thu, 22 Apr 2021 15:12: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 1lZazq-0000wi-4y; Thu, 22 Apr 2021 15:12:02 +0000
Received: by outflank-mailman (input) for mailman id 115622;
 Thu, 22 Apr 2021 15:12:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZazp-0000wV-2D
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:12:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b6371d87-7a72-4d0b-a089-2107ba09d254;
 Thu, 22 Apr 2021 15:12:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4CF3FAF9E;
 Thu, 22 Apr 2021 15:11: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: b6371d87-7a72-4d0b-a089-2107ba09d254
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619104319; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=KeHtsNUnNrQOFdXTPcryvONBYcXGdC+xExUWV7QRyJ4=;
	b=vNjbqCwWsbKXFW3OcrYkbDa0G6AGp7z4DRW2Dp8WDXPbc3WJVY+1GeIXDBzwjAjS+Tq2Ri
	6ir5saZxZ5bGZvXfxYgivLav75sZCMr4d0veCl7tFQnzPmbU8jrJXOIm0ylo6q3eG/tN4V
	m0NzOBKxssnTEMZh0wwaqU8n8w7AglQ=
Subject: Re: [PATCH v3 19/22] x86emul: support TILELOADD{,T1} and TILESTORE
From: Jan Beulich <jbeulich@suse.com>
To: Paul Durrant <paul@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
 <fc272d90-9a3c-98e9-d811-ea9b70f89e22@suse.com>
 <6b604011-a618-871a-2a3e-9118dd1b702b@suse.com>
Message-ID: <c63e6988-196d-ab7c-5971-611eba99a7d6@suse.com>
Date: Thu, 22 Apr 2021 17:11:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6b604011-a618-871a-2a3e-9118dd1b702b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 22.04.2021 17:06, Jan Beulich wrote:
> On 22.04.2021 16:55, Jan Beulich wrote:
>> +        do {
>> +            /* Limit rows to just as many to cover the next one to access. */
>> +            cfg->start_row = i;
>> +            cfg->rows[modrm_reg] = i + 1;
>> +            write_tilecfg(cfg);
>> +
>> +            if ( vex.pfx != vex_f3 )
>> +                rc = ops->read(ea.mem.seg,
>> +                               truncate_ea(ea.mem.off + i * ea.val),
>> +                               row, cfg->colsb[modrm_reg], ctxt);
>> +
>> +            invoke_stub("", "", "=m" (dummy) : "a" (row));
>> +
>> +            if ( vex.pfx == vex_f3 )
>> +                rc = ops->write(ea.mem.seg,
>> +                                truncate_ea(ea.mem.off + i * ea.val),
>> +                                row, cfg->colsb[modrm_reg], ctxt);
>> +        } while ( rc == X86EMUL_OKAY && ++i < n );
> 
> in principle tiles could have rows larger than 64 bytes without any
> separate CPUID feature flag qualifying this. struct hvm_mmio_cache,
> otoh, is having a fixed-size 64-byte buffer right now. Therefore I'm
> wondering whether we'd want to switch to dynamically allocating that
> to the minimum of 64 bytes and the size of a tile row, just as a
> precautionary measure.

Actually, as it occurred to me only after sending, enlarging tile size
would under almost all circumstances require a new XSTATE component,
which we'd need to enable first. I consider it less likely that they'd
permit a wider range of layouts without increasing tile size. But we
might still want to play safe.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:16:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:16:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115634.220658 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZb3m-0001AL-Uy; Thu, 22 Apr 2021 15:16:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115634.220658; Thu, 22 Apr 2021 15:16: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 1lZb3m-0001AE-Rr; Thu, 22 Apr 2021 15:16:06 +0000
Received: by outflank-mailman (input) for mailman id 115634;
 Thu, 22 Apr 2021 15:16:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZb3l-0001A9-AJ
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:16:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 11231367-2b32-44da-812a-6abdbb6ee2c6;
 Thu, 22 Apr 2021 15:16:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7D546AF9E;
 Thu, 22 Apr 2021 15:16: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: 11231367-2b32-44da-812a-6abdbb6ee2c6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619104563; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=dkrS5Dxrb1ouK8VtwGEkh5+X/L5fhslUZ1usjLo8vSc=;
	b=GUNZNQaO/jkQoegnioQaMiAtk4QDzpmlHgZUBGMSLbFtV5BTZalH7QPEbdCNus9LoRlUVs
	ysPByqkQJ1gHh8KYGQagyKga5/7X7axPIJaw2sTmnDc9t7xHWPfdO7NKg19z/DNBAXKImi
	xIE2dkKMNRAxvhpaUYGLJSMyvWmZcOI=
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
To: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
References: <20210422151007.2205-1-jgross@suse.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
Date: Thu, 22 Apr 2021 17:16:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210422151007.2205-1-jgross@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 22.04.2021 17:10, Juergen Gross wrote:
> Some features of Xen can be assumed to be always present, so add a
> central check to verify this being true and remove the other checks.
> 
> Juergen Gross (3):
>   xen: check required Xen features
>   xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv guests
>   xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guests

I wonder whether it's a good idea to infer feature presence from
version numbers. If (at some point in the past) you had inferred
gnttab v2 being available by version, this would have been broken
by its availability becoming controllable by a command line option
in Xen.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:17:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:17:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115637.220671 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZb5N-0001H4-A2; Thu, 22 Apr 2021 15:17:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115637.220671; Thu, 22 Apr 2021 15:17: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 1lZb5N-0001Gx-75; Thu, 22 Apr 2021 15:17:45 +0000
Received: by outflank-mailman (input) for mailman id 115637;
 Thu, 22 Apr 2021 15:17:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HGUy=JT=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZb5L-0001Gr-Kf
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:17:43 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5dc4d295-3dfe-4e4b-abff-762d1c3f0292;
 Thu, 22 Apr 2021 15:17:42 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C4394B16D;
 Thu, 22 Apr 2021 15:17: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: 5dc4d295-3dfe-4e4b-abff-762d1c3f0292
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619104661; 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=2BYuXXN8/OBblmoa+ncdX77EGf3yTri3xgSGi8hCO4M=;
	b=G2kvM2OokcZFDI+FtrkbP0dxr2tiAsqA9mhbVx3ZSGH/lyej58Y7L/EKacGsZXKRK0yVVQ
	eaXzXtQ3zdN+VpPTEOEffEhAEzKBzW/4ZPLs3B3TT9DX9+CbX0IVpN4K1zkd46eYCjZn2z
	avuSj8oseGASAOpWUGcseVnio8RVJns=
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
To: Jan Beulich <jbeulich@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
Date: Thu, 22 Apr 2021 17:17:40 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="L5W1K6enWIN9DczrZcMznw5E6clpitwqr"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--L5W1K6enWIN9DczrZcMznw5E6clpitwqr
Content-Type: multipart/mixed; boundary="L39QdbBzx0NA6TykYKoUbdrBG8EpRQ9x7";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
Message-ID: <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
In-Reply-To: <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>

--L39QdbBzx0NA6TykYKoUbdrBG8EpRQ9x7
Content-Type: multipart/mixed;
 boundary="------------8D502D4FB9C60FE2573AA119"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------8D502D4FB9C60FE2573AA119
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 22.04.21 17:16, Jan Beulich wrote:
> On 22.04.2021 17:10, Juergen Gross wrote:
>> Some features of Xen can be assumed to be always present, so add a
>> central check to verify this being true and remove the other checks.
>>
>> Juergen Gross (3):
>>    xen: check required Xen features
>>    xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv gues=
ts
>>    xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guests
>=20
> I wonder whether it's a good idea to infer feature presence from
> version numbers. If (at some point in the past) you had inferred
> gnttab v2 being available by version, this would have been broken
> by its availability becoming controllable by a command line option
> in Xen.

I'm testing the feature to be really present when booting and issue a
message if it is not there.

Juergen

--------------8D502D4FB9C60FE2573AA119
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------8D502D4FB9C60FE2573AA119--

--L39QdbBzx0NA6TykYKoUbdrBG8EpRQ9x7--

--L5W1K6enWIN9DczrZcMznw5E6clpitwqr
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCBk5QFAwAAAAAACgkQsN6d1ii/Ey9s
iAf/QCx3nIoXECUQROeEqv+AKRuwsqtLQSyNjGf21B0piVvFiuMxgIyRS3e1lTATZQsfaJlR8abV
SWCHJQ6d+sq7gPQlWIaduFO0mXXPldRpTzNFZOwFz5uXceFCfxPBpL71Jcq63VU59YPIMKNDMPSk
AEpNNwOLwRC0pYnDuuiECxxRd7CQiMgP4gEARwLnu48E8aTsoSV/ZEqtM1PDD7PHYaXEPetzCEtE
MAGuuLWSX4JEAwxXD1c6ASuT+Q5ab0ubc0NKE7CwQpJGCo+Y6ePvLC9XL6UGijH718T7j9oq+SxQ
GGQp/zjrEh96XvCksDKTPmFyTtETXNx4f/S05i08ag==
=lQtO
-----END PGP SIGNATURE-----

--L5W1K6enWIN9DczrZcMznw5E6clpitwqr--


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:24:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:24:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115644.220682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbBM-0002MO-0y; Thu, 22 Apr 2021 15:23:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115644.220682; Thu, 22 Apr 2021 15:23: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 1lZbBL-0002MH-UI; Thu, 22 Apr 2021 15:23:55 +0000
Received: by outflank-mailman (input) for mailman id 115644;
 Thu, 22 Apr 2021 15:23:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZbBL-0002MC-Br
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:23:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7ce4c605-bca0-4e08-8136-d193db8d8cf0;
 Thu, 22 Apr 2021 15:23:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 77B9BAD8A;
 Thu, 22 Apr 2021 15:23: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: 7ce4c605-bca0-4e08-8136-d193db8d8cf0
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619105033; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=2Y9p6wqTZTpAuq62nsYavt+Zc+iTEKfVNYhmCcTHSvQ=;
	b=ZKyT31pPnQGrhTHT6hyXQqNpkpth0+n/Q0Y7MkQ6POt6kyMIBgWt43T/8NdOPLBBsa/q/X
	/JunfNY+sdKkGqDNYsOCgMMJOq1R2B/5DPIfZNdbJlg+WaavWcW0Vztxkq5eqe95bwpsa8
	lqITg0PyYLTCyuqvrYD4RbK0ptvemHM=
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
To: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
 <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>
Date: Thu, 22 Apr 2021 17:23:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 22.04.2021 17:17, Juergen Gross wrote:
> On 22.04.21 17:16, Jan Beulich wrote:
>> On 22.04.2021 17:10, Juergen Gross wrote:
>>> Some features of Xen can be assumed to be always present, so add a
>>> central check to verify this being true and remove the other checks.
>>>
>>> Juergen Gross (3):
>>>    xen: check required Xen features
>>>    xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv guests
>>>    xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guests
>>
>> I wonder whether it's a good idea to infer feature presence from
>> version numbers. If (at some point in the past) you had inferred
>> gnttab v2 being available by version, this would have been broken
>> by its availability becoming controllable by a command line option
>> in Xen.
> 
> I'm testing the feature to be really present when booting and issue a
> message if it is not there.

And how does this help if the feature really isn't there yet other code
assumes it is?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:26:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:26:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115649.220698 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbDc-0002iB-Fg; Thu, 22 Apr 2021 15:26:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115649.220698; Thu, 22 Apr 2021 15: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 1lZbDc-0002i4-CK; Thu, 22 Apr 2021 15:26:16 +0000
Received: by outflank-mailman (input) for mailman id 115649;
 Thu, 22 Apr 2021 15:26:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L918=JT=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lZbDa-0002hz-Ve
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:26:15 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f0b926d3-e210-4484-976c-88f07d05528f;
 Thu, 22 Apr 2021 15:26:14 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 5C73B61450;
 Thu, 22 Apr 2021 15:26: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: f0b926d3-e210-4484-976c-88f07d05528f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1619105173;
	bh=xX6LHIsRNYix3onntFIfW+HfRKfpkeI2B6kAC3uJGjo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=NL/wD7kcp0LWQl8BHPTRtH4K8sjhyKxz8dKu6JJ9zex8W02AVjrKwc5oGH2wjR5Ft
	 V963FDtSwb1VGuEUtLls82/088eRox+90An9FjfNvkS7cRXfmO5OCtgIXcz0yivw34
	 xsv0pms4da82pN0nCDee+PRiM6J/sNMWp7XJ/Nmitq5KztZWojtLacg9DCQUzylJnW
	 4d1XR5X8B1YxODY0iCMTdUPJhb0uEnVHEZHc9S0U/9j/FMHGX1vRpVvW1dWu3BU5Yg
	 7GfPfdUrnmlLb0XUE+0lhUgmcIQBvVpnv+fgmyWuQLw/9ZRiG/UbHJFgHswa2yzZT3
	 IJv7sjAqo/Xug==
Date: Thu, 22 Apr 2021 08:26:12 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Juergen Gross <jgross@suse.com>
cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, 
    Boris Ostrovsky <boris.ostrovsky@oracle.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Peter Zijlstra <peterz@infradead.org>
Subject: Re: [PATCH 1/3] xen: check required Xen features
In-Reply-To: <20210422151007.2205-2-jgross@suse.com>
Message-ID: <alpine.DEB.2.21.2104220823160.5018@sstabellini-ThinkPad-T480s>
References: <20210422151007.2205-1-jgross@suse.com> <20210422151007.2205-2-jgross@suse.com>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 22 Apr 2021, Juergen Gross wrote:
> Linux kernel is not supported to run on Xen versions older than 4.0.
> 
> Add tests for required Xen features always being present in Xen 4.0
> and newer.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
>  drivers/xen/features.c | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/drivers/xen/features.c b/drivers/xen/features.c
> index 25c053b09605..60503299c9bc 100644
> --- a/drivers/xen/features.c
> +++ b/drivers/xen/features.c
> @@ -9,13 +9,26 @@
>  #include <linux/types.h>
>  #include <linux/cache.h>
>  #include <linux/export.h>
> +#include <linux/printk.h>
>  
>  #include <asm/xen/hypercall.h>
>  
> +#include <xen/xen.h>
>  #include <xen/interface/xen.h>
>  #include <xen/interface/version.h>
>  #include <xen/features.h>
>  
> +/*
> + * Linux kernel expects at least Xen 4.0.
> + *
> + * Assume some features to be available for that reason (depending on guest
> + * mode, of course).
> + */
> +#define chk_feature(f) {						\
> +		if (!xen_feature(f))					\
> +			pr_err("Xen: feature %s not available!\n", #f);	\
> +	}

I think this could be done as a static inline function in
include/xen/features.h. That way it would be available everywhere. Also,
static inlines are better than macro when it is possible to use them in
terms of code safety.


>  u8 xen_features[XENFEAT_NR_SUBMAPS * 32] __read_mostly;
>  EXPORT_SYMBOL_GPL(xen_features);
>  
> @@ -31,4 +44,9 @@ void xen_setup_features(void)
>  		for (j = 0; j < 32; j++)
>  			xen_features[i * 32 + j] = !!(fi.submap & 1<<j);
>  	}
> +
> +	if (xen_pv_domain()) {
> +		chk_feature(XENFEAT_mmu_pt_update_preserve_ad);
> +		chk_feature(XENFEAT_gnttab_map_avail_bits);
> +	}
>  }
> -- 
> 2.26.2
> 


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:28:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:28:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115655.220709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbFw-0002qG-TF; Thu, 22 Apr 2021 15:28:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115655.220709; Thu, 22 Apr 2021 15: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 1lZbFw-0002q9-QR; Thu, 22 Apr 2021 15:28:40 +0000
Received: by outflank-mailman (input) for mailman id 115655;
 Thu, 22 Apr 2021 15:28:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HGUy=JT=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZbFv-0002q4-KE
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:28:39 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1e1ec2be-9966-4476-82a5-672b10999730;
 Thu, 22 Apr 2021 15:28:38 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B83C8B173;
 Thu, 22 Apr 2021 15:28: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: 1e1ec2be-9966-4476-82a5-672b10999730
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619105317; 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=S2s8d3b/btx56QtdjB6CaPjK6sRnOI8xTAb1jIG6CP4=;
	b=gKlHsP004cKaavaGty6eAilBjsn32BXi8GxNGVNZQ3Auye5rclIv+J2+hr/DRgp9ycm/5p
	d+yaCMu/Ey3L7YXJPsv4RmCUkmWDiqvR37XCdiQDqbKN8A1n47Z524DZsSmVlMnBYAFZH2
	S8jHh3sSdJd36D2YHnCG5DZycpoWJTQ=
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
To: Jan Beulich <jbeulich@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
 <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
 <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <ee2bc5f9-58ea-bad3-1343-2156d2b80ad3@suse.com>
Date: Thu, 22 Apr 2021 17:28:36 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="9rkSk1vSn9FbOegTsaEK6WLbeoKsWPGaO"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--9rkSk1vSn9FbOegTsaEK6WLbeoKsWPGaO
Content-Type: multipart/mixed; boundary="I3qPelmf7Vi6Vq6oeYr6pX5DdsUKm5jN6";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
Message-ID: <ee2bc5f9-58ea-bad3-1343-2156d2b80ad3@suse.com>
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
 <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
 <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>
In-Reply-To: <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>

--I3qPelmf7Vi6Vq6oeYr6pX5DdsUKm5jN6
Content-Type: multipart/mixed;
 boundary="------------C85339484172C36ACC5E171B"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------C85339484172C36ACC5E171B
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 22.04.21 17:23, Jan Beulich wrote:
> On 22.04.2021 17:17, Juergen Gross wrote:
>> On 22.04.21 17:16, Jan Beulich wrote:
>>> On 22.04.2021 17:10, Juergen Gross wrote:
>>>> Some features of Xen can be assumed to be always present, so add a
>>>> central check to verify this being true and remove the other checks.=

>>>>
>>>> Juergen Gross (3):
>>>>     xen: check required Xen features
>>>>     xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv g=
uests
>>>>     xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guest=
s
>>>
>>> I wonder whether it's a good idea to infer feature presence from
>>> version numbers. If (at some point in the past) you had inferred
>>> gnttab v2 being available by version, this would have been broken
>>> by its availability becoming controllable by a command line option
>>> in Xen.
>>
>> I'm testing the feature to be really present when booting and issue a
>> message if it is not there.
>=20
> And how does this help if the feature really isn't there yet other code=

> assumes it is?

Did you look at the features I'm testing? Those are really just low
level additions I can't imagine will ever be removed again.


Juergen

--------------C85339484172C36ACC5E171B
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------C85339484172C36ACC5E171B--

--I3qPelmf7Vi6Vq6oeYr6pX5DdsUKm5jN6--

--9rkSk1vSn9FbOegTsaEK6WLbeoKsWPGaO
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCBliQFAwAAAAAACgkQsN6d1ii/Ey8R
kAf/Yn8ZB8bHah0fvuPFH2DhwdOi6paaQoWP1M7PTJteX5Rw+3lPCM4q18Rh+r9AQZu67wVkCwwR
HTTaSwvOA6t5bfLroJcyDz6EEPa8PogSjCljSEUCJbU2nWD1t/OzMuozAr0iZ1LM1MHmojKDjfy1
xdKUtbfkObaaHTuV/yqsMrncDAT0GQGDtDbyG6qWex94a304g6Sh1b0khyuje+r9E7ozVwsKiH74
96Ta6f2fvb43kmQLd/ol/SeMzDnuOjLGHiDKx/jZbq1/Lqf1LAIYhtLv+lPKzVZgUoNaLttToN6K
IluqnFluwQ7FehfJYbClQLmkdi+OhFCyDowQMYLaEg==
=5oYG
-----END PGP SIGNATURE-----

--9rkSk1vSn9FbOegTsaEK6WLbeoKsWPGaO--


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:32:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:32:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115664.220725 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbJk-0003jZ-M8; Thu, 22 Apr 2021 15:32:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115664.220725; Thu, 22 Apr 2021 15: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 1lZbJk-0003jS-IS; Thu, 22 Apr 2021 15:32:36 +0000
Received: by outflank-mailman (input) for mailman id 115664;
 Thu, 22 Apr 2021 15:32:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HGUy=JT=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZbJj-0003jN-Em
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:32:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 41328a5f-1828-4ecf-b0b1-44e82fb347dd;
 Thu, 22 Apr 2021 15:32:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8A014B179;
 Thu, 22 Apr 2021 15:32: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: 41328a5f-1828-4ecf-b0b1-44e82fb347dd
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619105553; 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=iQ6FPFHZQRUWwK1WFV9xuIql7UDydCraqdC8XsOGujc=;
	b=KA1wYIi7ooX7MRU4eDU93LL1CI1FRbElssNxfUJLBKVtJR9zaF16TMy8YCZk+y5BV2CtJ6
	oo5MAF+IrLigcBaeJpgSoWBgg+Azuvlf9i/MQN8+ZGZpfL2Q+Oo/4ozRHC7+nOUY7O1YFR
	Mn9DsAoJz+CfIOEF8rY6pen/kY2xYtQ=
Subject: Re: [PATCH 1/3] xen: check required Xen features
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Peter Zijlstra <peterz@infradead.org>
References: <20210422151007.2205-1-jgross@suse.com>
 <20210422151007.2205-2-jgross@suse.com>
 <alpine.DEB.2.21.2104220823160.5018@sstabellini-ThinkPad-T480s>
From: Juergen Gross <jgross@suse.com>
Message-ID: <6f3a782b-0d1d-e86e-998b-bc3b46e1f4c3@suse.com>
Date: Thu, 22 Apr 2021 17:32:32 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2104220823160.5018@sstabellini-ThinkPad-T480s>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="9jsmYefyZXuxd8BEDEztk8fd9EHtUlzTD"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--9jsmYefyZXuxd8BEDEztk8fd9EHtUlzTD
Content-Type: multipart/mixed; boundary="vO2PCTeA41QelLhMxxseFypK2vpnN563G";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Peter Zijlstra <peterz@infradead.org>
Message-ID: <6f3a782b-0d1d-e86e-998b-bc3b46e1f4c3@suse.com>
Subject: Re: [PATCH 1/3] xen: check required Xen features
References: <20210422151007.2205-1-jgross@suse.com>
 <20210422151007.2205-2-jgross@suse.com>
 <alpine.DEB.2.21.2104220823160.5018@sstabellini-ThinkPad-T480s>
In-Reply-To: <alpine.DEB.2.21.2104220823160.5018@sstabellini-ThinkPad-T480s>

--vO2PCTeA41QelLhMxxseFypK2vpnN563G
Content-Type: multipart/mixed;
 boundary="------------7E3599148FA0E975EDDBF1E7"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------7E3599148FA0E975EDDBF1E7
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 22.04.21 17:26, Stefano Stabellini wrote:
> On Thu, 22 Apr 2021, Juergen Gross wrote:
>> Linux kernel is not supported to run on Xen versions older than 4.0.
>>
>> Add tests for required Xen features always being present in Xen 4.0
>> and newer.
>>
>> Signed-off-by: Juergen Gross <jgross@suse.com>
>> ---
>>   drivers/xen/features.c | 18 ++++++++++++++++++
>>   1 file changed, 18 insertions(+)
>>
>> diff --git a/drivers/xen/features.c b/drivers/xen/features.c
>> index 25c053b09605..60503299c9bc 100644
>> --- a/drivers/xen/features.c
>> +++ b/drivers/xen/features.c
>> @@ -9,13 +9,26 @@
>>   #include <linux/types.h>
>>   #include <linux/cache.h>
>>   #include <linux/export.h>
>> +#include <linux/printk.h>
>>  =20
>>   #include <asm/xen/hypercall.h>
>>  =20
>> +#include <xen/xen.h>
>>   #include <xen/interface/xen.h>
>>   #include <xen/interface/version.h>
>>   #include <xen/features.h>
>>  =20
>> +/*
>> + * Linux kernel expects at least Xen 4.0.
>> + *
>> + * Assume some features to be available for that reason (depending on=
 guest
>> + * mode, of course).
>> + */
>> +#define chk_feature(f) {						\
>> +		if (!xen_feature(f))					\
>> +			pr_err("Xen: feature %s not available!\n", #f);	\
>> +	}
>=20
> I think this could be done as a static inline function in
> include/xen/features.h. That way it would be available everywhere. Also=
,
> static inlines are better than macro when it is possible to use them in=

> terms of code safety.

It is a macro in order to have only one parameter.

And being a local macro is rendering the code safety reasoning moot.

Additionally I don't want this testing to be scattered all over the
code base. It should be done in one place only.


Juergen

--------------7E3599148FA0E975EDDBF1E7
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------7E3599148FA0E975EDDBF1E7--

--vO2PCTeA41QelLhMxxseFypK2vpnN563G--

--9jsmYefyZXuxd8BEDEztk8fd9EHtUlzTD
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCBlxAFAwAAAAAACgkQsN6d1ii/Ey8L
CQf5AT0Wvlrt5lx4Bs58DO6d3FuHdrHUfBJgu78N6o4y9e/+jqIVYzO8jVfkZtO3kuLUWlM33fka
h+0NEOKoJFB9mlD5iASgb/tcswOIrWekzGH8AxDZ3F3R/Hi+JsVoNe0k4xlgWXlzO2SQKRGNlCxf
i83mMiZEUeE6eUgWwqhZVMbGpuS1SM8rmeRne9IMozSZLNpOGKZ0XNZ2srG5po41CFKERYN/H1NW
6Eq3rxVWU1T04xDuAQYNx2YY4NkPHRoCm/3AHnp2QpfUSoLWb7G5YIpZ2EmugpkEf5eyp2FMoanb
IPRDxrapVjq4KFAjZfJteXtnNXD0MaYQgFpuinVxoA==
=7nvl
-----END PGP SIGNATURE-----

--9jsmYefyZXuxd8BEDEztk8fd9EHtUlzTD--


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:42:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:42:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115669.220737 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbSu-0004qv-Jt; Thu, 22 Apr 2021 15:42:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115669.220737; Thu, 22 Apr 2021 15:42: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 1lZbSu-0004qo-GV; Thu, 22 Apr 2021 15:42:04 +0000
Received: by outflank-mailman (input) for mailman id 115669;
 Thu, 22 Apr 2021 15:42:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZbSt-0004qj-O2
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:42:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 05bfbfef-cea8-4ba3-9dcf-a92cffc0d314;
 Thu, 22 Apr 2021 15:42:02 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 13C3CB16C;
 Thu, 22 Apr 2021 15: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: 05bfbfef-cea8-4ba3-9dcf-a92cffc0d314
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619106122; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Xtm0h32BFPnTcDwgXfrX7MV0oVJSpbCO+IQZgIprEFY=;
	b=ETe1ZDrLs8a6EXU5cPptTq6iEl++eNx+zJ6gy25QIZEwYdJUUzQePqOcpwoxUegfsPMbvO
	0DMvi/Q3brXZvpF8a+YI4ueuQl2Fdi/yZ8b8nA92JxWlR9DnPpwIWnGsS6rez9cKwJrZG2
	RvNp5MpdoDH6+1BfRTx9CTFG+MbsyxE=
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
To: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
 <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
 <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>
 <ee2bc5f9-58ea-bad3-1343-2156d2b80ad3@suse.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e293427d-b178-fd22-28bf-e6c6fe7e3f83@suse.com>
Date: Thu, 22 Apr 2021 17:42:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <ee2bc5f9-58ea-bad3-1343-2156d2b80ad3@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 22.04.2021 17:28, Juergen Gross wrote:
> On 22.04.21 17:23, Jan Beulich wrote:
>> On 22.04.2021 17:17, Juergen Gross wrote:
>>> On 22.04.21 17:16, Jan Beulich wrote:
>>>> On 22.04.2021 17:10, Juergen Gross wrote:
>>>>> Some features of Xen can be assumed to be always present, so add a
>>>>> central check to verify this being true and remove the other checks.
>>>>>
>>>>> Juergen Gross (3):
>>>>>     xen: check required Xen features
>>>>>     xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv guests
>>>>>     xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guests
>>>>
>>>> I wonder whether it's a good idea to infer feature presence from
>>>> version numbers. If (at some point in the past) you had inferred
>>>> gnttab v2 being available by version, this would have been broken
>>>> by its availability becoming controllable by a command line option
>>>> in Xen.
>>>
>>> I'm testing the feature to be really present when booting and issue a
>>> message if it is not there.
>>
>> And how does this help if the feature really isn't there yet other code
>> assumes it is?
> 
> Did you look at the features I'm testing?

I did, yes.

> Those are really just low
> level additions I can't imagine will ever be removed again.

I don't expect them to be removed. But I don't think the people having
contributed gnttab v2 expected any such for it, either.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:46:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:46:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115674.220749 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbXE-0005Cj-6P; Thu, 22 Apr 2021 15:46:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115674.220749; Thu, 22 Apr 2021 15:46: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 1lZbXE-0005Cc-35; Thu, 22 Apr 2021 15:46:32 +0000
Received: by outflank-mailman (input) for mailman id 115674;
 Thu, 22 Apr 2021 15:46:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZbXC-0005CX-JL
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:46:30 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f42098b1-f2d4-43d1-beb9-7b1e644c3192;
 Thu, 22 Apr 2021 15:46:29 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 43017AD8A;
 Thu, 22 Apr 2021 15:46: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: f42098b1-f2d4-43d1-beb9-7b1e644c3192
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619106388; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=hldtQOqJyVc74yWwVP2TFRdnx9LVlWLkWySq+1YHgcg=;
	b=vTrA2M1dT+rJ7ugE/ZpyOBm11XFyI3H9wAOCs19oOzeY+W5kOqAmL/yDFAtxajU1yL3jaS
	LPg/cgp1r4OZ5CEZB/CPKHp1aCjIQ3Ql+Fgm00bQQSiBCLgvUOB7gBXJqXNetjEE6wn839
	qinFcXDxyM7kj33PpaoauDFmDUjZ+SE=
Subject: Re: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
 <YIGOrOL+pKGaHqwX@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
Date: Thu, 22 Apr 2021 17:46:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIGOrOL+pKGaHqwX@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 16:56, Roger Pau Monné wrote:
> On Thu, Apr 22, 2021 at 01:03:13PM +0200, Jan Beulich wrote:
>> On 22.04.2021 10:14, Roger Pau Monné wrote:
>>> On Wed, Apr 21, 2021 at 05:38:42PM +0200, Jan Beulich wrote:
>>>> On 21.04.2021 17:30, Roger Pau Monné wrote:
>>>>> On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
>>>>>> On 21.04.2021 13:15, Roger Pau Monné wrote:
>>>>>>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
>>>>>>>> --- a/xen/arch/x86/xen.lds.S
>>>>>>>> +++ b/xen/arch/x86/xen.lds.S
>>>>>>>> @@ -312,10 +312,60 @@ SECTIONS
>>>>>>>>      *(.reloc)
>>>>>>>>      __base_relocs_end = .;
>>>>>>>>    }
>>>>>>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
>>>>>>>> -  . = ALIGN(__section_alignment__);
>>>>>>>> -  DECL_SECTION(.pad) {
>>>>>>>> -    . = ALIGN(MB(16));
>>>>>>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
>>>>>>>> +     *(.debug_abbrev)
>>>>>>>> +  }
>>>>>>>> +  .debug_info ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_info)
>>>>>>>> +    *(.gnu.linkonce.wi.*)
>>>>>>>> +  }
>>>>>>>> +  .debug_types ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_types)
>>>>>>>> +  }
>>>>>>>> +  .debug_str ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_str)
>>>>>>>> +  }
>>>>>>>> +  .debug_line ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_line)
>>>>>>>> +    *(.debug_line.*)
>>>>>>>> +  }
>>>>>>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_line_str)
>>>>>>>> +  }
>>>>>>>> +  .debug_names ALIGN(4) (NOLOAD) : {
>>>>>>>> +    *(.debug_names)
>>>>>>>> +  }
>>>>>>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
>>>>>>>> +    *(.debug_frame)
>>>>>>>> +  }
>>>>>>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_loc)
>>>>>>>> +  }
>>>>>>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
>>>>>>>> +    *(.debug_loclists)
>>>>>>>> +  }
>>>>>>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
>>>>>>>> +    *(.debug_ranges)
>>>>>>>> +  }
>>>>>>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
>>>>>>>> +    *(.debug_rnglists)
>>>>>>>> +  }
>>>>>>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
>>>>>>>> +    *(.debug_addr)
>>>>>>>> +  }
>>>>>>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_aranges)
>>>>>>>> +  }
>>>>>>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_pubnames)
>>>>>>>> +  }
>>>>>>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
>>>>>>>> +    *(.debug_pubtypes)
>>>>>>>> +  }
>>>>>>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
>>>>>>>> +  __image_end__ = .;
>>>>>>>> +  .pad ALIGN(__section_alignment__) : {
>>>>>>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
>>>>>>>
>>>>>>> I think this is inside an ifdef EFI region, since this is DWARF info
>>>>>>> couldn't it also be present when building with EFI disabled?
>>>>>>
>>>>>> Of course (and it's not just "could" but "will"), yet the linker will
>>>>>> do fine (and perhaps even better) without when building ELF. Also
>>>>>> note that we'll be responsible for keeping the list of sections up-to-
>>>>>> date. The linker will recognize Dwarf sections by looking for a
>>>>>> .debug_ prefix. We can't use such here (or at least I'm not aware of
>>>>>> a suitable mechanism); .debug_* would mean munging together all the
>>>>>> different kinds of Dwarf sections. Hence by limiting the explicit
>>>>>> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
>>>>>
>>>>> Right, so we will have to keep this list of debug_ sections updated
>>>>> manually if/when more of those appear as part of DWARF updates?
>>>>
>>>> Yes.
>>>>
>>>>> Do we have a way to get some kind of warning or error when a new
>>>>> section not explicitly handled here appears?
>>>>
>>>> ld 2.37 will start warning about such sections, as they'd land at
>>>> VA 0 and hence below image base.
>>>
>>> That seems like a bug in ld?
>>>
>>> The '--image-base' option description mentions: "This is the lowest
>>> memory location that will be used when your program or dll is
>>> loaded.", so I would expect that if the option is used the default VA
>>> should be >= image-base, or else the description of the option is not
>>> consistent, as ld will still place sections at addresses below
>>> image-base.
>>
>> ld's "general" logic is pretty ELF-centric. Hence debugging sections
>> get placed at VA 0 by default, not matter what the (PE-specific)
>> --image-base says. Whether that's a bug though I'm not sure: There
>> are no really good alternatives that could be used by default. Doing
>> what we do here (and what e.g. Cygwin does) via linker script may not
>> be appropriate in the common case. In particular it is not generally
>> correct for debug info to be part of what gets loaded into memory.
> 
> So with this change here you placate the warnings from newer ld about
> having a VA < image base,

It's not just about silencing the warnings. The resulting image is
unusable when the sections don't get placed at a suitable VA.

> but the end result is that now the debug
> sections will also get loaded when booted from the EFI loader?
> (because the NOLOAD doesn't have any effect with PE)

Yes. I currently see no other way to retain debug info in xen.efi.
But to be clear, the memory debug info occupies isn't lost - we
still free space from _end (or alike) onwards. .reloc, for example,
also lives there. And I was wondering whether we shouldn't keep
.comment this way as well.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:49:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:49:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115678.220761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbZz-0005LC-Lf; Thu, 22 Apr 2021 15:49:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115678.220761; Thu, 22 Apr 2021 15:49: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 1lZbZz-0005L5-Hu; Thu, 22 Apr 2021 15:49:23 +0000
Received: by outflank-mailman (input) for mailman id 115678;
 Thu, 22 Apr 2021 15:49:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HGUy=JT=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZbZy-0005Kw-8b
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:49:22 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 010243c3-3106-46ed-9d86-db6ae96562d9;
 Thu, 22 Apr 2021 15:49:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 13522B184;
 Thu, 22 Apr 2021 15:49: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: 010243c3-3106-46ed-9d86-db6ae96562d9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619106560; 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=hz9XYKqwpYHccMVq4bsKUKqKOZAp25cT/I1NdE2EWjU=;
	b=pz7duKlZYpGD1CTyF/POHpJxqT7wkGYksUMNdU8iWs5EP3pMuWqhb7mQvN6wN4NasONWJe
	GEDiYLZNrz/pWv0iRjuJbIfd3cgnz10cghERCjdYXAxvhK5MVC0oK+slgUdPYO8iOAjOfQ
	r9wpPIg/hB+ejIb2HqdmNL2g7c+AG2E=
To: Jan Beulich <jbeulich@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
 <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
 <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>
 <ee2bc5f9-58ea-bad3-1343-2156d2b80ad3@suse.com>
 <e293427d-b178-fd22-28bf-e6c6fe7e3f83@suse.com>
From: Juergen Gross <jgross@suse.com>
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
Message-ID: <de44d94c-f018-ad77-8083-f5acc8ef7507@suse.com>
Date: Thu, 22 Apr 2021 17:49:19 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <e293427d-b178-fd22-28bf-e6c6fe7e3f83@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="F0Yc8BA3IXYCie2CVrwFR4t5PxTxKUyZZ"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--F0Yc8BA3IXYCie2CVrwFR4t5PxTxKUyZZ
Content-Type: multipart/mixed; boundary="apamsbglEX41XbtEqnkh9Lm22D1T4KpvS";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
 Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org,
 x86@kernel.org, xen-devel@lists.xenproject.org
Message-ID: <de44d94c-f018-ad77-8083-f5acc8ef7507@suse.com>
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
 <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
 <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>
 <ee2bc5f9-58ea-bad3-1343-2156d2b80ad3@suse.com>
 <e293427d-b178-fd22-28bf-e6c6fe7e3f83@suse.com>
In-Reply-To: <e293427d-b178-fd22-28bf-e6c6fe7e3f83@suse.com>

--apamsbglEX41XbtEqnkh9Lm22D1T4KpvS
Content-Type: multipart/mixed;
 boundary="------------55018C58D764913433BA096E"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------55018C58D764913433BA096E
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 22.04.21 17:42, Jan Beulich wrote:
> On 22.04.2021 17:28, Juergen Gross wrote:
>> On 22.04.21 17:23, Jan Beulich wrote:
>>> On 22.04.2021 17:17, Juergen Gross wrote:
>>>> On 22.04.21 17:16, Jan Beulich wrote:
>>>>> On 22.04.2021 17:10, Juergen Gross wrote:
>>>>>> Some features of Xen can be assumed to be always present, so add a=

>>>>>> central check to verify this being true and remove the other check=
s.
>>>>>>
>>>>>> Juergen Gross (3):
>>>>>>      xen: check required Xen features
>>>>>>      xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for p=
v guests
>>>>>>      xen: assume XENFEAT_gnttab_map_avail_bits being set for pv gu=
ests
>>>>>
>>>>> I wonder whether it's a good idea to infer feature presence from
>>>>> version numbers. If (at some point in the past) you had inferred
>>>>> gnttab v2 being available by version, this would have been broken
>>>>> by its availability becoming controllable by a command line option
>>>>> in Xen.
>>>>
>>>> I'm testing the feature to be really present when booting and issue =
a
>>>> message if it is not there.
>>>
>>> And how does this help if the feature really isn't there yet other co=
de
>>> assumes it is?
>>
>> Did you look at the features I'm testing?
>=20
> I did, yes.
>=20
>> Those are really just low
>> level additions I can't imagine will ever be removed again.
>=20
> I don't expect them to be removed. But I don't think the people having
> contributed gnttab v2 expected any such for it, either.

There is a major difference here.

gnttab v2 was replacing an existing functionality by a more scalable,
but more complex solution.

The features I'm assuming to be present are basically repairing issues
which have been present due to omissions in the initial implementation.

Especially the XENFEAT_gnttab_map_avail_bits causes a racy workaround in
the kernel when not present. The race is only avoided in case the user
code is well-behaved. It is dom0 user code, yes, but nevertheless such
issues are never nice.


Juergen

--------------55018C58D764913433BA096E
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------55018C58D764913433BA096E--

--apamsbglEX41XbtEqnkh9Lm22D1T4KpvS--

--F0Yc8BA3IXYCie2CVrwFR4t5PxTxKUyZZ
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCBmv8FAwAAAAAACgkQsN6d1ii/Ey/v
Vwf9Gw7dj26e80Pm5BriAq8iEhAv4IA2WJHwx70rVR5MzaIll9VAhRvgv7qWVwe/6kviOTWLwmhO
vHKzbzkeQeejjaBX6Wbl1Rpnihtgnv50PvxmNSlAkkt2KnaCa4HYjc71wIx0UZDLDrCxcAuHEEkM
EsMyUXwXj/aKc5VQSneU4o5ic8Uj2G4paThgAduYTcXpnAGWSMEZuvozaUx4O1GN66czuFDbqmyl
y72iwg0I9x8xI4keXXYVkVMvWL+L5/ANurHZ71r2ccE5nwTwDmufHqY5p2yr+GEV9cV0UN4DghY3
mA/u1GXWXSl7Y16HnkXyOrTlgOR/bj61wJ3APOeA7g==
=jITu
-----END PGP SIGNATURE-----

--F0Yc8BA3IXYCie2CVrwFR4t5PxTxKUyZZ--


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:51:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:51:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115686.220773 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbcU-0006Ch-7M; Thu, 22 Apr 2021 15:51:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115686.220773; Thu, 22 Apr 2021 15: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 1lZbcU-0006Ca-3t; Thu, 22 Apr 2021 15:51:58 +0000
Received: by outflank-mailman (input) for mailman id 115686;
 Thu, 22 Apr 2021 15:51:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=00C0=JT=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZbcT-0006CV-7b
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:51:57 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b7c9a248-7a23-43b8-8b6a-482caba05376;
 Thu, 22 Apr 2021 15:51: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: b7c9a248-7a23-43b8-8b6a-482caba05376
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619106716;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=YglkNpumhvuY4ux6C8C/gndnuzftg39ceR8YXMawFH4=;
  b=aGSH3odmUtwkPt8lKOP0nVuF+GpL3uXDaZborGZL/2/R0zo8CDrgZRfD
   Co6LRhk7UKR3E7phQYRIOlW6Q2aN0jjtjFDuUcKISewA/CwuZ3J+yqw2/
   JK/mMwC0sK5ktBeAl2aAvxIWF8fC15MBtqEApMhDIfRIqG0c6+hZSYlci
   8=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Z4Uqk7HiCGyiMRyu7cf+Y8ftHaPAkD45hcXEyztXLpuuY9ZLBwnCeh5UOZ9/GUIwH/EEClFxJW
 ZWUZJ8TmA+BfBM9JUaG+RarXCW6wPzpnrmIkkT8I5pJ3BXCZ/8jmQmOfjeJ0wauYTcYztcAhH1
 semKWFyeq60sjlFRU4az0PBbAcxRJ6mUgq8tF3WBYYFeldfXWecGA13LamrcsmEq1wXFmR/vEL
 ut4ygj+PxV34SNF4P1Fzoclm6hYicnRro0uOR08BlqyDhsVH2pg8DBlmNOrH7b3BmBxd0rOZ+3
 O80=
X-SBRS: 5.2
X-MesageID: 42024505
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:X1zREq57q6UseoWoEgPXwUOEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbjqzOEtwWQVAGN4dHJ
 2T+sJIq1ObCAoqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+ELzGz2BACXzRThYoz6G
 StqX2E2oyPkdGejiXd2Wja8ohMlLLaq+drKcSQhqEuW07RoymyYoAJYczlgBkUp6WV5E8ugJ
 3wpX4bTrlOwlfwWk3wnhf3wQnn118Vmg3f4HuVm2Hqr8C8ZB9SMbs4uatjfhHU61UtsbhHuc
 ohtQ/p1Os0fGf9tR/w6NTSWxZhmlDcmwtErccpg2FCSoxbUbdNrOUkjTBoOa0dFyH34p1PKp
 gWMOjg4p9tADanRkzCsnIq6NKhWWlbJGb9fmEy/uaR0zRQgUljyVoZyME1jh47heIAYqgByO
 LePqtykrZSCucQcKJmHe8EBfC6E2rXXHv3QS2vCGWiMJtCF2PGqpbx7rlwzOa2eKYQxJ93vJ
 jaSltXuUM7ZkqGM7zB4LR7tjT2BEmtVzXkzc9To7JjvKfnebbtOSqfDHgzjsqJuZwkc47mcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQksonWmiJvtnAJuTRx6zmWceWAICoPScvW2v5DH
 dGdiP0Pt984keiXWK9rwPWX1/rZ0zj7bN9GKXX5IEouc0wH7wJljJQpUWy58mNJzEHmLcxZl
 FCLLTulb7+hWTexxeN00xZfj5mSmpF6rTpVH1H4SUQNVnvTLoFs9KDPURb3H6NIA5DX9rbeT
 Qv4GhfyOaSFdi91CoiA9WoPiaxlH0Ivk+HSJ8ah+ml6dr6fIg7SrIrQrZ4GwmONxEdo3cqlE
 5zLCs/AmPPHDLnjquoyLYOAvvEStV6iAC3ZehOqXzesk2Yjdo1RmQSWgOvVcL/u3dtexNkwn
 lKt4MPiruJnjiibUElhv4jDVFKYGOLRI5dAB+9f4VSkLDzcARWRWOH7AbqzS0bSy7PzQE/l2
 bhJSqbdbXuDkBGsn5V6Krs7Wh5b36QZU52d3B8v7BsDGiugAcH7ca7Io6Il0eBYFoLxe8QdA
 vIZjYfOStC7dG63hz9okfJKVwWgrEVesDNBrUqdL/enk63IIqTjKccArt/55B+Lu3jtecNTM
 OScwKYNynDFusswgCZz0xVYRVcmT0Bq7fP1xLk5mTjgyJ6LvrWPVh8R7YUZ/ub9HPpQv6U0J
 N/yfI51NHARFnZW5qj8+XwaTUGFzb45UiRZMssoYpPva0zuKBodqOrGgfg5TVi5lEGMMzwlE
 kiW6x177DKB593c6UpClVk12tssO7KEVAivQP3CNIvZF0Bj3fUONWS/rrDwIBfS3GplU/VOV
 OF9Tda8OqAdyyf1aQCA6ZYGxUaVGEMrFBj9viFbYveFUGDcPxC5kOzNjuYfKVGQKaIXZUWoR
 AS2aDFo8anMw750hvXpz11P+Zn9HumW9q7BEa0ItFzmubKcWiks++N+868jDD+VDu9ZQA5vO
 R+BD0tR/UGrCIjgo0x2jW1UYrtrCse4gNj3Q0=
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42024505"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aCkS1dLt0f/BkYLBIsyjp8FStpIhhEETg5frQvXBkNbvAyRPoCWulG8oWbVnvSlq7y337oO7X/ZhgyPiEHLDSZLtY40CuOSuFtVV/2uVfXrSEzp4amkmwzg7P7x64AyBB9s3VV/BMQrtO5EGeMptnHRzlwoPd+JTcIjI6Pd7Gs47WvjefTrGHmmrpvmDBOpESD8cTTxE2MKd5smmocy+5WvbKnbDUqtuBEBl/EFsP9oYH7YeLDCXwjsqP7tirgsKIBOfJtf0EZB1QYZyGj4QQ7TY6DwU45MS2lUkW/5BXVCNqBLVy4HG3nAJ/dlrN34QxuPBc7BP9Bmnr9MNZiDqKg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QqV+ASIEK9fe/BXoxgqT6q4vomeYVYnk91pWTnTj/6A=;
 b=LtHeAKQig50sX1xNtRkEZbbRMp8LW3hyIu61rjsGFHxMRLESZjmAJw3xbNDr9+vMz6V8uc4IQ6NSxrWRB/Bp1LsimH7rL0s1lGOelhmJ05HTLGjzprA5B68Nyrt6oTHQpBzIYvmZiNTc8AkrEHxfkVrdbnpI1SfOy31j0dvAUa118mPIBNmg7kltw5hHYB4tzUS99tSgm1PKtVwL2U/OAyKL3fd9otpOJVj+eOU2UXcp0bZrmwV+s1WiCc4XNa5ajw961F5cnBDkATnzLtWZYn8UbaKi4iebmEDcMP4j80m3GzElZkhtQ6BWYAQ8NzOApucvBKPpY3JVeqOXAjOOvQ==
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=QqV+ASIEK9fe/BXoxgqT6q4vomeYVYnk91pWTnTj/6A=;
 b=Y3wTEvG4lxmtx2zQd0o2c9Cj3i924T70v3gqo4QD9v+c1QHqTOMs/XauxQpSgqNneQVwj2hx9gMH10cSrD0BBHunxfamiMC31lp/VKjvQm7EulmQl+LFxm2elqbEj507d53GDuud4SnqU5/Ar4YFdDoodBBWS+s+Fj7x61lJ358=
To: Jan Beulich <jbeulich@suse.com>, Juergen Gross <jgross@suse.com>
CC: Boris Ostrovsky <boris.ostrovsky@oracle.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar
	<mingo@redhat.com>, Borislav Petkov <bp@alien8.de>, "H. Peter Anvin"
	<hpa@zytor.com>, Peter Zijlstra <peterz@infradead.org>,
	<linux-kernel@vger.kernel.org>, <x86@kernel.org>,
	<xen-devel@lists.xenproject.org>
References: <20210422151007.2205-1-jgross@suse.com>
 <df27aba6-c67e-d66e-f00e-75a1f76de921@suse.com>
 <b69df7d3-6fcb-a565-9ec5-a272b6163320@suse.com>
 <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com>
 <ee2bc5f9-58ea-bad3-1343-2156d2b80ad3@suse.com>
 <e293427d-b178-fd22-28bf-e6c6fe7e3f83@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen
 features
Message-ID: <51e880f0-698e-8208-1a04-fca3942cd6eb@citrix.com>
Date: Thu, 22 Apr 2021 16:51:27 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <e293427d-b178-fd22-28bf-e6c6fe7e3f83@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0416.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a0::20) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2ab3da4e-d4ba-4604-bf07-08d905a681d1
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5454:
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5454AF12608E907056CE5368BA469@SJ0PR03MB5454.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: UbXnsfJrtujstOu6Nm0PqE3yCzvLIrorqvduJ0R1bt06XZ5Nnxsx+NRu57SiKB/xNgEe5JwBV64PntkYu2LSfIQ/UOq7aF3V2w4ugA3GrXMlSJQ+6IBTikH1nY8QXcDdmAq3/pFFTQI7xPvBr7tKy8CNNNBL1cSaUoQckRM9BECJXnM4ux4udXScE8/NV50iT7Fqoegzs2aolsTHZlN2Pj13NVOc1MtSmWU1QxywUKDudKnnCSBfumNMqb4cyDWnQpmQj3v3evcAh4kLDnxCvZzVY2D/gPp3DBHPl9fTmWHSvzjYIJ9q/pgt+GbLNfV8CoM35NbT5WHOBJ88z5euyjhtJVfDd0uacpGfBR5OG3GCDVyuo4RlALYafA8Ux/n3gvrAorpeU+7EuNBa47Mn7C/3fBkLnsJD1fMrAiVXBNcrdMI7HGuM6LKcIpgxglGzn1FBVsWQiEdEG+eT1//Qifkg52fJXFCX+Rk4jBOecFSPizq8Wu6i619DK6CjrObA3g3fR8QmU37uWriZ4dkABj2mSYVGHvImyxIIf5OhrercWMuYCJw9lnXDIYkt7ZXi1yJxrLXmxhiue5NPZLk6MPj6hjBUTWSkFF9Ei1GR+7K1/QJVg/RleSKsH3qznut+RnWUTE0uWLT1mc1paLjRvtv1DSEOSynMMFfrMN2KP98r2o0d6A+l0gpZU/+wsJqb
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(366004)(136003)(376002)(396003)(8936002)(26005)(66476007)(5660300002)(2906002)(110136005)(66556008)(66946007)(16526019)(36756003)(8676002)(38100700002)(6666004)(186003)(31696002)(31686004)(6486002)(478600001)(83380400001)(54906003)(4326008)(7416002)(16576012)(316002)(956004)(86362001)(2616005)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 2ab3da4e-d4ba-4604-bf07-08d905a681d1
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 15:51:35.2471
 (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: lectmM80XmDjVJ/lg4fUUwO4vsq+8etMPz8UGERYG2tVYo9GlSpImt2Oum5Vn2DqG+5PEqnsGS8P1rGLVJT/R1H1NkNcf5XyUtOB1o2Wxf8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5454
X-OriginatorOrg: citrix.com

On 22/04/2021 16:42, Jan Beulich wrote:
> On 22.04.2021 17:28, Juergen Gross wrote:
>> On 22.04.21 17:23, Jan Beulich wrote:
>>> On 22.04.2021 17:17, Juergen Gross wrote:
>>>> On 22.04.21 17:16, Jan Beulich wrote:
>>>>> On 22.04.2021 17:10, Juergen Gross wrote:
>>>>>> Some features of Xen can be assumed to be always present, so add a
>>>>>> central check to verify this being true and remove the other checks.
>>>>>>
>>>>>> Juergen Gross (3):
>>>>>>     xen: check required Xen features
>>>>>>     xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv g=
uests
>>>>>>     xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guest=
s
>>>>> I wonder whether it's a good idea to infer feature presence from
>>>>> version numbers. If (at some point in the past) you had inferred
>>>>> gnttab v2 being available by version, this would have been broken
>>>>> by its availability becoming controllable by a command line option
>>>>> in Xen.
>>>> I'm testing the feature to be really present when booting and issue a
>>>> message if it is not there.
>>> And how does this help if the feature really isn't there yet other code
>>> assumes it is?
>> Did you look at the features I'm testing?
> I did, yes.
>
>> Those are really just low
>> level additions I can't imagine will ever be removed again.
> I don't expect them to be removed. But I don't think the people having
> contributed gnttab v2 expected any such for it, either.

The trainwreck around gnttab v2 is a mistake I hope we're never going to
make again.=C2=A0 I don't think it's a useful argument here.

The logic is fine.=C2=A0 It's checking for the actual features in the ABI
upon which Linux depends.

Sure - someone could modify Xen to take the feature out, but they'd get
a red wall in CI as they break every Linux kernel released in the past
decade.

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 15:54:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 15:54:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115691.220785 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbei-0006KX-LP; Thu, 22 Apr 2021 15:54:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115691.220785; Thu, 22 Apr 2021 15:54:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZbei-0006KQ-Hi; Thu, 22 Apr 2021 15:54:16 +0000
Received: by outflank-mailman (input) for mailman id 115691;
 Thu, 22 Apr 2021 15:54:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=96sM=JT=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZbeh-0006KL-Nn
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 15:54:15 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a76f54f0-f004-4a9c-9360-0ea36076da0a;
 Thu, 22 Apr 2021 15:54: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: a76f54f0-f004-4a9c-9360-0ea36076da0a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619106854;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=sogHPNfO5rwY4l+oGuFPxj7C0tlmCI0eXYbyYohpueQ=;
  b=QXxaynBvlG7Ld2s7OHiULV9WL66S0m20Os3eOW+nLHPT0z3vhDT2J0qT
   zURFMF4UcCPPRPzJyfmYUPtjCjZgJcGnZvZnbtETQH4MoSBPXEq5a7EXR
   LchzBwNfG5qYYKyNXdxDuMC83k8EijWS9TwYNyWZzD7cP7nNgae8Vplqd
   4=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: dx5rzOVbQp0e8dKhJT14ArpqKO0xFCilmTG9aGxQXJwR89yhYk7bowa6KHM3GVGDgQb1Ux65dn
 Y6S6EKr1dfEQVWNqztd6ZBZE21qHFFvSAMvfrjFQvR8k8koj14TB7mnDfjilExb4/MYInn8IpW
 bEmNB59RKmVHbbUExETLoMu8ElAXytfA0XWvOV0AdVoHF2ODxOEnIHInUXJewqwjUIam3R1t57
 ajnfw2Nl68dE0FTLtGkj7vR7vHoYIwhdXHlWQTkQtkdoIo49f2Xi+W8+4wbFPsl5jFU0DgI+ST
 +Wg=
X-SBRS: 5.2
X-MesageID: 42197479
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Td/qiKy7EGPaSPHYMlCHKrPxp+4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnm6JdybI6eZOvRhPvtmftFoFt6oP+3ybtcheQysd07o
 0lSaR3DbTLYWRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRC51IxS0RMHf+LmRdQg5aCZ0lUL
 +V4cRarzStEE5nEPiTLH8DQuTFupn3j5rgexELHFoK7wOJgDOu5tfBYmel9z0ZVC5CxqpnzH
 jdn2XCl9memtyY6juZ7W/c6JxKhMDso+EjOOWggtUYQw+c8TqAS59mX9S5zVYIicGprG0nid
 zd5yonVv4Dlk/5WkGQjV/T1xL70DAogkWSu2OwpXf4u8T2SHYbJqN69PpkWyDU4UYho91wuZ
 gjtwny2us1fHGw6BjV3NTGWwpnkUC5uxMZ4IkupkdSTJcEb/tppZEflXklY6soJj7w64wsDY
 BVfbjhzctRGGnqCkzxgnNi25iFUHg1A369MzI/k/3Q+T1XkHdl9lAf1cwSk1wRnahNO6Vs1q
 DqNL9lm6pJSdJTRaVhBP0ZSc/yMWDVRwnQWVjibmjPJeUiATbgupT36LI66KWDf4EJ9oI7nN
 DkXElDvWA/VkryAaS1rdN22yGIZF/4cSXmy8lY6ZQ8kKb7XqDXPSqKT01ru9e8ot0Ea/erGM
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5ISR0+OmMTWMYfn39arMMr7Ff7IK3IJS2n/Cn
 wMUHzYP8Nb9H2mXXf+nVz/QHXoVkvj/Y9hMaTT8uQJobJ9c7Fkg0wwsxCU98uLITpNvugdZ0
 1lOo7qlau9uC2X8A/zniFUEysYKnwQzKTrUntMqwNPGVjza6w/t9KWfn0X+HOGIxR4Xv7HCQ
 I3nSUxxYuHa7irgQwyAdOuNWyXy1EJomiRcpsakqqfoeDoZ40/FZRjfKBqDw3EG1hUlG9R2S
 Z+QT5BYnWaOiLliK2jgpBRLvrYbcNAjACiJtMRj2neu0WarcQGXWAaQDaqbM6SjW8VNnhpr2
 w015VarKuLmD6pJ2d6qv8/KkdwZGOeB68DMB6If7xOmrfgeBh5SECDgTDysWB0RkPas2Epwk
 DxJyydfv/GRn5QoGpR3KrR/FRoTWmFZE5rZndmsYpyKHTeth9IoJq2T5v291HURkoJw+kbPj
 2AWzcULw907/2c1RKeml+5ZD8b76RrGtaYIKUocrnV1H/oFZaBkrseGeRIuLx/Msr1j+MNWe
 WDWgOcIT/iEdk10wiNqntNAlgslFAU1dfTnDvr42iz0CRhXb78IFF6S6oaJN/ZxW7+XPqM2I
 h4i9VwnebYCBSGVve2jYXsKxhEIVfvhETzaccCg5Vdp7gzu7t+BIOza0qC6Fh3mDEFaP7pn0
 YfSplh6L/POoVTb9UfEhgpiWYBpZCqFg8XqQT4De81QEE1g1LaN92P5aDUqbBHODzJmCLAfX
 2e+TZa5fHLQm+q0qMbEbs5JQ1tGQUBwUUn2OOJbIvLDgq2M8lF4VqhK3e4NJtQUrKMF7lVjh
 F05biz7qOqXhu9/ADbpj1gJK1St06hXMOpGQqJXddyzObSAyXFvoKapOipjDn2TjOna0MXwa
 19HHZgH/hru30Fl4040i+7V6rthFkq+mEuuQ1aqg==
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42197479"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MQt1Q6EgpH7eVmPZEzVbLI16dtqN5iVo8qFqUygwBKhuPkS0imUDq+5KYvgDl3+wv/q3WD1cvDlyvJoI/R4VvMCJjJ0EBN2uLYuR8OOVbDpSz/0tU58RMqSv5pXq/aFnqIYNG2hIUssJPfYAcEw2NzcRvkOBPc3RDveTqZMFdinyKvmZojOj8Zn7WSGOtR7F9hdzDt08Y7LtjO3zuaERzDVbM7ITLZFn9mMNetxW+hVq24wqEvi5/92QCkMXbEuTw5/9S3IVxPWLQ6vMD4jGmxsOuoQ2PsrfCdl2AUZ4UE5Rp28Uv+8uXcknDzWjEvKhp1o8RDtD0Bce2AERQXZkjg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XFk+Sehe0HA3BISWSwKE02bFaKvvBPZobt+rvXku52c=;
 b=go/aYicpsqWF4TflM5/c07TzKFs1SADbUj0ux03lPsJl4SGbF/TXbsbbdI+mNL3qO8VW5M18QTJ2B1wy4ml7bCNq8OsGS1WJQ6f9KFxmAkz9oZll1dKEOyIbb+Qb/oiF8ZTvq5IpZsq29yxKP3eZAGYpZz0iWCXLpp34hSNGb36bqwyZpNMw7hXbNIyiixGquTS9Gko993S7EqeSZGakGcI0o03yj2RC+ILfImQOv/6yEa5g9LNEDyD8L4wFp79I1kXyCUeB5ZhMFSZYTykuqoSPMsxBJmK7vxefGalOtZ+TDqLPCw28RqJyXGpAIaBC4/xohdnNafXSPc5nRavR3Q==
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=XFk+Sehe0HA3BISWSwKE02bFaKvvBPZobt+rvXku52c=;
 b=HH3tZwTWT1zgQOLCp5n/3ZYl3f+igi+6mF/D3HKF4rabuaAGkfCZn/KOTbV+e22siWs0F8Sf1SNAM/bm+jBcIYsAnyRVI2eYsf/mSPgRCqJM4OOd6h09Ev0eAhSIf0X8Fp2mHDPOi2X4HnCXZWfyO9FPylkBUfmNO7EERoCZb4w=
Date: Thu, 22 Apr 2021 17:53:55 +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/8] x86/EFI: keep debug info in xen.efi
Message-ID: <YIGcE5Cr+xK4K6gw@Air-de-Roger>
References: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
 <YIGOrOL+pKGaHqwX@Air-de-Roger>
 <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
X-ClientProxiedBy: MR2P264CA0054.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::18) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6e55b813-0d59-4c94-f0d7-08d905a6ddce
X-MS-TrafficTypeDiagnostic: DM8PR03MB6232:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM8PR03MB6232E1792C631DCB2F7DC0378F469@DM8PR03MB6232.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: idti7izNrP+nu7albzg2C2hX3BqIciXtkTaTntdrde989Bpd5gNyTa1hlpzqx92nnSskP+9ycCWv7L2/zHw/IXb3ASXtdtzOKfynigdzCxUja2fGh4tvjARJHNy0pm/KebqD6jZr4JEl5VTYzxc0OkcdCpxomYlaiVuUv/rY2rYWS5BPq27FxH/d4HnB2+XtkovNVKCK7bro5ihhSDlvBMTBY2i+HSS5yaWTqcfr89I8hMH0l33qSlZS74biWWdhLFfDqr6k7EtITJFU7fyVwja3XfoQjuOtuKR4f1lmlWd+FdI/v1nYnQjUeSFDf9KTh1cZdToOhwXWEBvEm3CMWhEeCzV6FUflR2KLNvzHVDTYA9oSilBUVMWHThkIfQF/eoFEpy5JtarrK+EnMN+dO7ZRlsXfwi83bxFp26SWKxDuf/RTcCXXxpKAlx0xEuVsVB+SVLOTt/IRRek5xay3UxDQjWPUfOHja//+/tWYd+iGvdVOGtQEkhMrwqxyLIHLumky+Snn52TDsMRTuqZ6ATTiWkygkKRan4xZLG/IAS7TjMH3MoPTY91MZJW5UDOF0W10X+9IkXyAjz+PHmKy8Og7FRuEZKf8UiXZhUcaKO5VoH6BMGJR1d7ZgN0sU6ZwwbnUKdB+ska/jd3jTc6jQQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(346002)(39860400002)(396003)(366004)(136003)(186003)(54906003)(26005)(478600001)(53546011)(8676002)(6486002)(4326008)(6496006)(316002)(6916009)(956004)(6666004)(5660300002)(16526019)(86362001)(83380400001)(2906002)(38100700002)(85182001)(9686003)(66476007)(66946007)(66556008)(33716001)(8936002)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 6e55b813-0d59-4c94-f0d7-08d905a6ddce
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 15:54:09.5355
 (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: FcYYiUgnTyCMokJgtL/lbKBjwI3rh+BinrsngpqF2FqT4QTT5Qfo4RtSNiPm407ZNKlEd8Rlaml17O1tGLlgFw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR03MB6232
X-OriginatorOrg: citrix.com

On Thu, Apr 22, 2021 at 05:46:28PM +0200, Jan Beulich wrote:
> On 22.04.2021 16:56, Roger Pau Monné wrote:
> > On Thu, Apr 22, 2021 at 01:03:13PM +0200, Jan Beulich wrote:
> >> On 22.04.2021 10:14, Roger Pau Monné wrote:
> >>> On Wed, Apr 21, 2021 at 05:38:42PM +0200, Jan Beulich wrote:
> >>>> On 21.04.2021 17:30, Roger Pau Monné wrote:
> >>>>> On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
> >>>>>> On 21.04.2021 13:15, Roger Pau Monné wrote:
> >>>>>>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
> >>>>>>>> --- a/xen/arch/x86/xen.lds.S
> >>>>>>>> +++ b/xen/arch/x86/xen.lds.S
> >>>>>>>> @@ -312,10 +312,60 @@ SECTIONS
> >>>>>>>>      *(.reloc)
> >>>>>>>>      __base_relocs_end = .;
> >>>>>>>>    }
> >>>>>>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
> >>>>>>>> -  . = ALIGN(__section_alignment__);
> >>>>>>>> -  DECL_SECTION(.pad) {
> >>>>>>>> -    . = ALIGN(MB(16));
> >>>>>>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
> >>>>>>>> +     *(.debug_abbrev)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_info ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_info)
> >>>>>>>> +    *(.gnu.linkonce.wi.*)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_types ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_types)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_str ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_str)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_line ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_line)
> >>>>>>>> +    *(.debug_line.*)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_line_str)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_names ALIGN(4) (NOLOAD) : {
> >>>>>>>> +    *(.debug_names)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
> >>>>>>>> +    *(.debug_frame)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_loc)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
> >>>>>>>> +    *(.debug_loclists)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
> >>>>>>>> +    *(.debug_ranges)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
> >>>>>>>> +    *(.debug_rnglists)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
> >>>>>>>> +    *(.debug_addr)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_aranges)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_pubnames)
> >>>>>>>> +  }
> >>>>>>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
> >>>>>>>> +    *(.debug_pubtypes)
> >>>>>>>> +  }
> >>>>>>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
> >>>>>>>> +  __image_end__ = .;
> >>>>>>>> +  .pad ALIGN(__section_alignment__) : {
> >>>>>>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
> >>>>>>>
> >>>>>>> I think this is inside an ifdef EFI region, since this is DWARF info
> >>>>>>> couldn't it also be present when building with EFI disabled?
> >>>>>>
> >>>>>> Of course (and it's not just "could" but "will"), yet the linker will
> >>>>>> do fine (and perhaps even better) without when building ELF. Also
> >>>>>> note that we'll be responsible for keeping the list of sections up-to-
> >>>>>> date. The linker will recognize Dwarf sections by looking for a
> >>>>>> .debug_ prefix. We can't use such here (or at least I'm not aware of
> >>>>>> a suitable mechanism); .debug_* would mean munging together all the
> >>>>>> different kinds of Dwarf sections. Hence by limiting the explicit
> >>>>>> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
> >>>>>
> >>>>> Right, so we will have to keep this list of debug_ sections updated
> >>>>> manually if/when more of those appear as part of DWARF updates?
> >>>>
> >>>> Yes.
> >>>>
> >>>>> Do we have a way to get some kind of warning or error when a new
> >>>>> section not explicitly handled here appears?
> >>>>
> >>>> ld 2.37 will start warning about such sections, as they'd land at
> >>>> VA 0 and hence below image base.
> >>>
> >>> That seems like a bug in ld?
> >>>
> >>> The '--image-base' option description mentions: "This is the lowest
> >>> memory location that will be used when your program or dll is
> >>> loaded.", so I would expect that if the option is used the default VA
> >>> should be >= image-base, or else the description of the option is not
> >>> consistent, as ld will still place sections at addresses below
> >>> image-base.
> >>
> >> ld's "general" logic is pretty ELF-centric. Hence debugging sections
> >> get placed at VA 0 by default, not matter what the (PE-specific)
> >> --image-base says. Whether that's a bug though I'm not sure: There
> >> are no really good alternatives that could be used by default. Doing
> >> what we do here (and what e.g. Cygwin does) via linker script may not
> >> be appropriate in the common case. In particular it is not generally
> >> correct for debug info to be part of what gets loaded into memory.
> > 
> > So with this change here you placate the warnings from newer ld about
> > having a VA < image base,
> 
> It's not just about silencing the warnings. The resulting image is
> unusable when the sections don't get placed at a suitable VA.

And this wasn't an issue before because the linker won't even attempt
to place DWARF sections into a PE output.

> > but the end result is that now the debug
> > sections will also get loaded when booted from the EFI loader?
> > (because the NOLOAD doesn't have any effect with PE)
> 
> Yes. I currently see no other way to retain debug info in xen.efi.
> But to be clear, the memory debug info occupies isn't lost - we
> still free space from _end (or alike) onwards. .reloc, for example,
> also lives there. And I was wondering whether we shouldn't keep
> .comment this way as well.

Yes, I already realized all this is past _end.

I wonder however if the use of (NOLOAD) makes all this more confusing,
such sections should only be present on the linker script used for the
PE output, and then the (NOLOAD) doesn't make sense there?

If so, I think the (NOLOAD) directive should be dropped, and a comment
noting that the debug sections need to be manually added to the PE
output in order to avoid them being placed at VA 0 would be helpful
IMO, likely also mentioning that they would be loaded but discarded
afterwards by Xen because they are all past _end.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 16:01:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 16:01:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115700.220797 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZblO-0007uC-HQ; Thu, 22 Apr 2021 16:01:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115700.220797; Thu, 22 Apr 2021 16: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 1lZblO-0007u5-E2; Thu, 22 Apr 2021 16:01:10 +0000
Received: by outflank-mailman (input) for mailman id 115700;
 Thu, 22 Apr 2021 16:01:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=uib8=JT=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZblM-0007u0-Iy
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 16:01:08 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 94c10934-10ee-403d-b426-0e70f0d2056b;
 Thu, 22 Apr 2021 16:01:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 30ACCB077;
 Thu, 22 Apr 2021 16:01: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: 94c10934-10ee-403d-b426-0e70f0d2056b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619107266; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RJUTNI3rCuOBWARDCk9fc9qLw050gjuMzhv9f4683aI=;
	b=UMVEs3RTrYOThs7aOqW0PEwWgCyNYQkb3NuQYHCzCpp4E5sdrI1RebOjirwKVJp5D6NC/V
	dnwCDJskvnCwT4YzBduMmLZ71hlutHny7AtDCzZ5kTTWx73yBHcNhlsuaT+IbbN9zhAN2n
	0QvVxwA09YBXwODckfXg1SdvKLLIYQo=
Subject: Re: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
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: <b327185f-db31-50c8-ec76-6ef8f2fcfdfd@suse.com>
 <96cb4039-5f43-8eac-d855-c9f1587ed2d0@suse.com>
 <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
 <YIGOrOL+pKGaHqwX@Air-de-Roger>
 <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
 <YIGcE5Cr+xK4K6gw@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <98431d14-d4a0-61a8-148e-221652f37b61@suse.com>
Date: Thu, 22 Apr 2021 18:01:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIGcE5Cr+xK4K6gw@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 22.04.2021 17:53, Roger Pau Monné wrote:
> On Thu, Apr 22, 2021 at 05:46:28PM +0200, Jan Beulich wrote:
>> On 22.04.2021 16:56, Roger Pau Monné wrote:
>>> On Thu, Apr 22, 2021 at 01:03:13PM +0200, Jan Beulich wrote:
>>>> On 22.04.2021 10:14, Roger Pau Monné wrote:
>>>>> On Wed, Apr 21, 2021 at 05:38:42PM +0200, Jan Beulich wrote:
>>>>>> On 21.04.2021 17:30, Roger Pau Monné wrote:
>>>>>>> On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
>>>>>>>> On 21.04.2021 13:15, Roger Pau Monné wrote:
>>>>>>>>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
>>>>>>>>>> --- a/xen/arch/x86/xen.lds.S
>>>>>>>>>> +++ b/xen/arch/x86/xen.lds.S
>>>>>>>>>> @@ -312,10 +312,60 @@ SECTIONS
>>>>>>>>>>      *(.reloc)
>>>>>>>>>>      __base_relocs_end = .;
>>>>>>>>>>    }
>>>>>>>>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
>>>>>>>>>> -  . = ALIGN(__section_alignment__);
>>>>>>>>>> -  DECL_SECTION(.pad) {
>>>>>>>>>> -    . = ALIGN(MB(16));
>>>>>>>>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +     *(.debug_abbrev)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_info ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_info)
>>>>>>>>>> +    *(.gnu.linkonce.wi.*)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_types ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_types)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_str ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_str)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_line ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_line)
>>>>>>>>>> +    *(.debug_line.*)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_line_str)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_names ALIGN(4) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_names)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_frame)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_loc)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_loclists)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_ranges)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_rnglists)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_addr)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_aranges)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_pubnames)
>>>>>>>>>> +  }
>>>>>>>>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
>>>>>>>>>> +    *(.debug_pubtypes)
>>>>>>>>>> +  }
>>>>>>>>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
>>>>>>>>>> +  __image_end__ = .;
>>>>>>>>>> +  .pad ALIGN(__section_alignment__) : {
>>>>>>>>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
>>>>>>>>>
>>>>>>>>> I think this is inside an ifdef EFI region, since this is DWARF info
>>>>>>>>> couldn't it also be present when building with EFI disabled?
>>>>>>>>
>>>>>>>> Of course (and it's not just "could" but "will"), yet the linker will
>>>>>>>> do fine (and perhaps even better) without when building ELF. Also
>>>>>>>> note that we'll be responsible for keeping the list of sections up-to-
>>>>>>>> date. The linker will recognize Dwarf sections by looking for a
>>>>>>>> .debug_ prefix. We can't use such here (or at least I'm not aware of
>>>>>>>> a suitable mechanism); .debug_* would mean munging together all the
>>>>>>>> different kinds of Dwarf sections. Hence by limiting the explicit
>>>>>>>> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
>>>>>>>
>>>>>>> Right, so we will have to keep this list of debug_ sections updated
>>>>>>> manually if/when more of those appear as part of DWARF updates?
>>>>>>
>>>>>> Yes.
>>>>>>
>>>>>>> Do we have a way to get some kind of warning or error when a new
>>>>>>> section not explicitly handled here appears?
>>>>>>
>>>>>> ld 2.37 will start warning about such sections, as they'd land at
>>>>>> VA 0 and hence below image base.
>>>>>
>>>>> That seems like a bug in ld?
>>>>>
>>>>> The '--image-base' option description mentions: "This is the lowest
>>>>> memory location that will be used when your program or dll is
>>>>> loaded.", so I would expect that if the option is used the default VA
>>>>> should be >= image-base, or else the description of the option is not
>>>>> consistent, as ld will still place sections at addresses below
>>>>> image-base.
>>>>
>>>> ld's "general" logic is pretty ELF-centric. Hence debugging sections
>>>> get placed at VA 0 by default, not matter what the (PE-specific)
>>>> --image-base says. Whether that's a bug though I'm not sure: There
>>>> are no really good alternatives that could be used by default. Doing
>>>> what we do here (and what e.g. Cygwin does) via linker script may not
>>>> be appropriate in the common case. In particular it is not generally
>>>> correct for debug info to be part of what gets loaded into memory.
>>>
>>> So with this change here you placate the warnings from newer ld about
>>> having a VA < image base,
>>
>> It's not just about silencing the warnings. The resulting image is
>> unusable when the sections don't get placed at a suitable VA.
> 
> And this wasn't an issue before because the linker won't even attempt
> to place DWARF sections into a PE output.

No, this wasn't an issue before since, for things to work, we
simply had to uniformly strip debug info when linking xen.efi. And
this is what Andrew said should change. I was initially opposed,
until I saw that Cygwin does just this as well.

>>> but the end result is that now the debug
>>> sections will also get loaded when booted from the EFI loader?
>>> (because the NOLOAD doesn't have any effect with PE)
>>
>> Yes. I currently see no other way to retain debug info in xen.efi.
>> But to be clear, the memory debug info occupies isn't lost - we
>> still free space from _end (or alike) onwards. .reloc, for example,
>> also lives there. And I was wondering whether we shouldn't keep
>> .comment this way as well.
> 
> Yes, I already realized all this is past _end.
> 
> I wonder however if the use of (NOLOAD) makes all this more confusing,
> such sections should only be present on the linker script used for the
> PE output, and then the (NOLOAD) doesn't make sense there?
> 
> If so, I think the (NOLOAD) directive should be dropped, and a comment
> noting that the debug sections need to be manually added to the PE
> output in order to avoid them being placed at VA 0 would be helpful
> IMO, likely also mentioning that they would be loaded but discarded
> afterwards by Xen because they are all past _end.

Earlier on (another sub-thread, maybe) I think I've already said that
I'd like to keep (NOLOAD) both for documentation purposes and just in
case the linker develops some smarts to actually translate it into
anything sensible when linking PE. This is quite different from
.reloc, after all - that section has to be loaded for our re-
relocation to work correctly. Hence that section not having (NOLOAD)
and the debugging sections having it points out the difference.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 16:19:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 16:19:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115705.220809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZc3S-0000kL-55; Thu, 22 Apr 2021 16:19:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115705.220809; Thu, 22 Apr 2021 16:19:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZc3S-0000kE-1s; Thu, 22 Apr 2021 16:19:50 +0000
Received: by outflank-mailman (input) for mailman id 115705;
 Thu, 22 Apr 2021 16:19: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 1lZc3Q-0000k6-Mu; Thu, 22 Apr 2021 16:19: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 1lZc3Q-000219-Dp; Thu, 22 Apr 2021 16:19: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 1lZc3Q-0005tp-3z; Thu, 22 Apr 2021 16:19:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZc3Q-0001UQ-3V; Thu, 22 Apr 2021 16:19: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=2RYM6SScFD7u4rMjsEDZgRdm/NHs1CKEwBas814F+IA=; b=WXVwNSSc6MLLLJ8Stqp7zzZTrG
	DAzKPginv24wLHPKm3HuzxMeUHwQEGMXJ29A52G39yD5pRGh52dq2h2Tsycs0EFJad1D8NP2DzHSq
	UMbr6y2VrNGvIfx8yx8FLz9xQHGXGqnZNdj9BIKJRRAiLCh2nNr5UZLKyy/qWCZZFzVw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161360-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161360: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 16:19:48 +0000

flight 161360 xen-4.12-testing real [real]
flight 161382 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161360/
http://logs.test-lab.xenproject.org/osstest/logs/161382/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161330 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161330

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-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-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     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   65 days
Failing since        160128  2021-03-18 14:36:18 Z   35 days   45 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   33 days   43 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 16:21:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 16:21:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115713.220824 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZc5A-0001ZY-NW; Thu, 22 Apr 2021 16:21:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115713.220824; Thu, 22 Apr 2021 16:21: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 1lZc5A-0001ZR-K2; Thu, 22 Apr 2021 16:21:36 +0000
Received: by outflank-mailman (input) for mailman id 115713;
 Thu, 22 Apr 2021 16:21:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=00C0=JT=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZc59-0001ZL-Oh
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 16:21:36 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c65d1871-1f5e-40ff-b970-17fc49beb387;
 Thu, 22 Apr 2021 16:21: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: c65d1871-1f5e-40ff-b970-17fc49beb387
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619108494;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=EBLkNQ/Mosc9Vp5zjHIoqhocTr3Ge/o7+GMRTPa7PWg=;
  b=GCbz8peMg+CuIIIbQl+qYsfif4kWlme8blIK076T4Huvd0yOtRbI0RHH
   YKiIPKqcNToQKMbJv8nThbcfLgwbbTFKhY65iuBkw6939r08/TCaFzJoy
   in+xKiyDoOGXkE5nHwM1EUYEeGjNtojprWwXIXpW66p6BP1Y9pas5wT2g
   4=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: B3ZNVIScZQnbAQj4xhFWAl1kByXcHg3agDBefjsVoHW4qeOT+v6Ujzv+OH2EfKY8hxth1JN8xT
 fM4XTPNpcUcq5U5ncK5HWVWOtYzm42e/quaBjXrvUVuIMThqXaKU8o5U3BWVYz7vghUBYE1u7s
 ij00Z3hPa4jhcwr9H+tfDbWwSm9K8FPWzRhvXBV+6yUX1WaLlC/DI+5IWgv4c9FJ+wESkeL2XU
 g+06T1oCvi+0yGCG2+Z0Flzvf5lJ3MJ1T6y5KuhF0i+e07+PKEYxGrjHhaAaYDytDWXinsW8R4
 nJU=
X-SBRS: 5.2
X-MesageID: 42200197
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:mHbxvavzoaptiYxu2RzvZ6+e7skC24Yji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwTeCBtA50lGJ
 2Aou9OoDS9cXoaB/7LeUUtde7FutHNidbaehYAHREq802jijmv5b78HXGjr2sjehlIxqov9n
 WArhzh6syYwoyG4zL/90uW1ZRZn9P91sBObfbjtuE5Iijh4zzYHLhJdKaFuFkO0YeSwXYs1O
 LBuhIxe/l0gkmhBF2dhTvI903e3C0163nkoGXo8kfLhcDiXjo1B45gqOtiA2LkwnEttt19z6
 5Htljx3/E8bWKi7VHAzuPFWB1wmk2/rWBKq591s1VlXZYDc7gUlIQD/SpuYec9NRjn44MqGv
 QGNrC/2N9qdzqhHhXkl1V0zMfpdno+GQrueDl4huWllxJSnHx/0nICwt0eknoq5PsGOuh5zt
 WBHaJymL5USMgKKYp7GecaWMOyTlfAWBTWLQupUBvaPZBCH0iIh4/84b0z6u3vUJsUzKEqkJ
 CEdF9Dr2Y9d2/nFMXm5uwEzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQ2GKTgKr
 WOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+c06So/jMNpbhuoXgAbbuDYuoNQxhdnL0A3
 MFUjS2Dt5H9FqXVnjxhwWUdGjqfmD54JJsAInX9+Ue0+E2R8hxmzlQrW78ytCAKDVEvKBzVl
 B5OqnbnqSyonTz3Wug1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmF+OJhp1SdLqAB
 dSzm4Hvp6fHti1/2QPGtinOmWVgz84v3SRVaoRnaWF+IPDdo4nCI0lHIh8Dx/CGRAwuQsCkh
 YDVCY0AmvkUh/+g6Ssi5IZQMvFccNnvQutKclI7VTFtUudoskrbmABXyGnVPOWhQpGfUsXun
 RBt4skxJaQkzemLmUyxM4iNkdXVWiRCLVaSDieaJ5sgbDtcgFoRWKsjTiX4itDPFbCxgE3vC
 jMPCeUcfbEDh54tmpD2qjnyl9ya16QZll9cHx8rI17G1nXo3ob6574WoODl0+qLncSyOAUNz
 /IJQEfJQ5j3Pib/h+YkjTqLwRt+rweesjmSJgzebDa3X2gbLCSnaYdBvlO4dJOL9b1qNIGVu
 qZZi6YJD71EPkSxgSQv3opURME8UUMoLfN4lnI/WK41HkwDb7uO1xgXagcOMzZwG7+RfqEua
 8JxO4djK+VCCHWZdGHw62MMGIGBRPXvGKsT+Yn7bpTprk/sbNvH5/dFRvEvUs3qykWHYPRrg
 c5Rq8+3ZXqfqlIVOYWczhC/lUomM+URXFb+TDeM6sbRxUVk3TfP9m1+LLGprokP12ZqGLLSC
 2i2hwY282AYjCK2rEbAZ8hOGh6aEAz73J54eOJHregfjmCRqVm/FCgNGW6f6IYYK+ZGa8Iph
 IS2aDEo8anMw750hvXpz11P+Zn9HumW9q7BEapFfRT+9K3fXSKja3C2r/+sB7HDR+6YV8fn4
 tLaAg5adlCkCAriMkP6ReJI5aH6n4Noh95+jFollnkx4ig7iP6JCh9QHPkq6QTeyJSPHiOhd
 nC6s6C2h3GkWB45aU=
X-IronPort-AV: E=Sophos;i="5.82,242,1613451600"; 
   d="scan'208";a="42200197"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YKf9+6lebe+ENZx9irhHG1iJKqCWAGeuAsIH6sP0zyHl46WmCTqU2XB3dBDEp5EPcwdwiWxmmfRUFw3IrlEFhY+FtaORhYYGvjy3lizd51ep4XtneNw7lODp9aC/fYSYniYcqb31K/sVdyMjINzbIyVD9i4ewC2ApnzcOLcU41t0uJJ7HJdLE0jHYgqWsPty5SIXCXXx3rwouT4gKNyUTR1KljTnVglQ1ZTqg4Z/zFFXFEh4nbP5Y3gnFuf5QxalF6CK1JfZY+2Xl1DMwKo1wzP0y+8PsCuFh6xYxy1Lue3y7Vl/n4mdPrt6bwFKTC4kKKP2dsRJjYlikoFOuBSM6w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EBLkNQ/Mosc9Vp5zjHIoqhocTr3Ge/o7+GMRTPa7PWg=;
 b=D27i48+qg106kaofcukenYVMA1nci8zPgkXW7+rCovwQJev8oh8FpoknfMmbCI0vY0sBhbMBbeGmCiI+Wv/eLjkiP4ZIyvIjmC17NSwMaa+rsAzb4DcOb+0DudmUoZXU4dtahDDMVns0Pno74O2fee4jKnfed0qDHt2C5tc+6TfhdE5Z8RARFZnK9deP999Dpu/+iaQB2y2d81fgkPLuUPj+tpTAVjszqP+lizP20Bvm0z16QxW3SO3YLRM0uCGvHu7noBQ0yUGY61CZMNsW1qRN54RhzEvkyCBICUSfjxOwt90gq41WTrWgWWp43aSA6777rGTbHUSNBHMwis4BSg==
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=EBLkNQ/Mosc9Vp5zjHIoqhocTr3Ge/o7+GMRTPa7PWg=;
 b=gJaxf31+llRAStgvRama0lf69sTSmAgPWx2d8pk2xoLYY4i0gmRThNToJACeFARTuzm//gDwCvhJOnPoygXtuMQxwBfbGWgfrZei300VfTQH+uRnwMo7u8M0I+F13z6z2K+kd6LueXWvXR6KYDNc5st3mDk+bMrATOz4ZMWMb10=
Subject: Re: [PATCH v10 00/13] switch to domheap for Xen page tables
To: Hongyan Xia <hx242@xen.org>, <xen-devel@lists.xenproject.org>
CC: <jgrall@amazon.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.1619014052.git.hongyxia@amazon.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <ff54b35e-bcf7-3343-4704-417aeb53865a@citrix.com>
Date: Thu, 22 Apr 2021 17:21:12 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <cover.1619014052.git.hongyxia@amazon.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0072.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1::36) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b16dc62c-13c9-4440-c991-08d905aaa85e
X-MS-TrafficTypeDiagnostic: BYAPR03MB4872:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4872BABA6277A956A1844BEEBA469@BYAPR03MB4872.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 8pnsoYW6sDQzRgW9ozxBhY+j1ED3Yx1BcRQKxthAjb7tg/wuFhyiVyF9EX34GlBs/BhWuhZfI7U/HXqFfF40VBb+3aziODz2TZSSQ6PVWUTa/u9oRGxXK9nzMQQCh9IeHvTXNh808GibZtB1ac0d1amV1/DE9tPDvrG7qIe4C5hStZANJOhVhCIVYiHrMGqmILsF2k0CG5nQjmHDGioXeBJmVCYYUN2gaKhXvRdkVINTUPAg1AWkYA/IhRUxBNCM9PvIfKsq3GEqD3PPp+0CjCW1vzbB3RtN4cAe9QB93MJmE2I0yEgDSzWZ3rY98amt1oaG1xNGCK7kmZm14Ccmvw01RJzSQKDs7tT/m355wg5+DrvuGZglR7aa+ZX1lvwLKWfS5s+gulVF5PMltmtJQeDppsdk4bzOuGOs6+iWaQG+0YXQ2l9wts8NH3WGyEaaGaOgGAnGgIqVq0GfPcI/wCo1Gb9ITZ26PH5gsQaD/bzfNVQggh+p3/Jvtq7vfpe2EIFP1YXl8GZKT2PSq405sRaxrTF600sEEeVO6Z9e4mgMAbtPotj1R67cbK5seBPNKjsDX2y/RDPw+w+Pq7+X709RZmx1nvwVgmdmQkxOS/0PfGcAZKz+HyziExQYv9mSaQao+la518YUW8jEsanw8qMztt84tFdKFxrSbU0J2JMfyPXrRwaG2hPMxfIncipj
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(366004)(396003)(346002)(39860400002)(66556008)(186003)(16576012)(38100700002)(316002)(956004)(16526019)(66946007)(86362001)(6486002)(2906002)(2616005)(83380400001)(53546011)(6666004)(31686004)(54906003)(5660300002)(31696002)(8676002)(36756003)(26005)(66476007)(4326008)(8936002)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?wPgzUdDfl/GqHZjdYzSDacjYykoTqJU18H79clO?=
X-MS-Exchange-CrossTenant-Network-Message-Id: b16dc62c-13c9-4440-c991-08d905aaa85e
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 16:21:17.8148
 (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: CZ6T8zyEufQdDOA4aUTHo/Vozj4rxawGk93Z/3gz79GIATAsatrYzGS/oqqVO2TRkQ5bwT3gf6ppUaUXGIz6/O1TbxIdOUulRz26aad93TY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4872
X-OriginatorOrg: citrix.com

On 21/04/2021 15:15, Hongyan Xia wrote:
> From: Hongyan Xia <hongyxia@amazon.com>
>
> This series rewrites all the remaining functions and finally makes the
> switch from xenheap to domheap for Xen page tables, so that they no
> longer need to rely on the direct map, which is a big step towards
> removing the direct map.

Staging is broken.  Xen hits an assertion just after dom0 starts.

(XEN) Freed 616kB init memory
mapping kernel into physical memory
about to get started...
(XEN) Assertion 'hashent->refcnt' failed at domain_page.c:204
(XEN) ----[ Xen-4.16-unstable  x86_64  debug=y  Not tainted ]----
(XEN) CPU:    0
(XEN) RIP:    e008:[<ffff82d040316f80>] unmap_domain_page+0x2af/0x2e0
(XEN) RFLAGS: 0000000000010046   CONTEXT: hypervisor (d0v0)
(XEN) rax: 0000000000000000   rbx: ffff831c47bf9040   rcx: ffff831c47c1a000
(XEN) rdx: 0000000000000092   rsi: 0000000000000092   rdi: 0000000000000206
(XEN) rbp: ffff8300a5ca7c88   rsp: ffff8300a5ca7c78   r8:  0000000001c4f2fc
(XEN) r9:  0000000000000000   r10: 0000000000000000   r11: 0000000000000000
(XEN) r12: 0000000000092018   r13: 0000000000800163   r14: fff0000000000000
(XEN) r15: 0000000000000001   cr0: 0000000080050033   cr4: 00000000003406e0
(XEN) cr3: 0000001c42008000   cr2: ffffc9000133d000
(XEN) fsb: 0000000000000000   gsb: ffff888266a00000   gss: 0000000000000000
(XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: e010   cs: e008
(XEN) Xen code around <ffff82d040316f80> (unmap_domain_page+0x2af/0x2e0):
(XEN)  14 04 00 00 eb 19 0f 0b <0f> 0b 0f 0b ba 00 00 00 00 48 89 10 48
8b 81 d0
(XEN) Xen stack trace from rsp=ffff8300a5ca7c78:
(XEN)    ffff820040092018 0000000000000000 ffff8300a5ca7d58 ffff82d040327e20
(XEN)    a000000000000000 0000000000000000 ffff82d0405dbd40 008001e300000000
(XEN)    8000000000000000 8000000000000000 00000000000001e3 00000000000001e3
(XEN)    8000000000000000 0000000000000000 8000000000000163 0000000001440000
(XEN)    ffff82e0014b92e0 0000000301c1a000 0000000000000000 ffff820040090800
(XEN)    00000000026c10d8 0000000001c4f2fc 8010001c4240f067 ffff8300a5ca7df0
(XEN)    ffff82c00071c000 0000000000000001 0000000000001000 ffff8300a5ca7df8
(XEN)    ffff8300a5ca7dc8 ffff82d040232c08 ffff8300a5ca7db8 0000000140088078
(XEN)    ffff8300a5ca7df0 0080016300000001 ffffffff00000000 ffff82c00071c000
(XEN)    ffff82d0405b1300 ffff831c47bf9000 ffff82e04d821ae0 00000000026c10d7
(XEN)    ffff831c47c1a000 0000000000000100 ffff8300a5ca7dd8 ffff82d040232cdb
(XEN)    ffff8300a5ca7df8 ffff82d04031718b ffff8300a5ca7df8 00000000026c10d7
(XEN)    ffff8300a5ca7e38 ffff82d040209cb6 ffff831c47c1a018 0000000000000000
(XEN)    ffffffff82003e90 ffff831c47c1a018 ffff831c47bf9000 fffffffffffffff2
(XEN)    ffff8300a5ca7eb8 ffff82d04020a69a ffff82d04038a228 ffff82d04038a21c
(XEN)    00000000026c10d7 0000000000000100 ffff82d04038a228 ffff82d04038a21c
(XEN)    ffff82d04038a228 ffff82d04038a21c ffff82d04038a228 ffff8300a5ca7ef8
(XEN)    ffff831c47bf9000 0000000000000003 0000000000000000 0000000000000000
(XEN)    ffff8300a5ca7ee8 ffff82d040306e14 ffff82d04038a228 ffff831c47bf9000
(XEN)    0000000000000000 0000000000000000 00007cff5a3580e7 ffff82d04038a29d
(XEN) Xen call trace:
(XEN)    [<ffff82d040316f80>] R unmap_domain_page+0x2af/0x2e0
(XEN)    [<ffff82d040327e20>] F map_pages_to_xen+0x101a/0x1166
(XEN)    [<ffff82d040232c08>] F __vmap+0x332/0x3cd
(XEN)    [<ffff82d040232cdb>] F vmap+0x38/0x3a
(XEN)    [<ffff82d04031718b>] F map_domain_page_global+0x46/0x51
(XEN)    [<ffff82d040209cb6>] F map_vcpu_info+0x129/0x2c5
(XEN)    [<ffff82d04020a69a>] F do_vcpu_op+0x1eb/0x681
(XEN)    [<ffff82d040306e14>] F pv_hypercall+0x4e6/0x53d
(XEN)    [<ffff82d04038a29d>] F lstar_enter+0x12d/0x140
(XEN)
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 0:
(XEN) Assertion 'hashent->refcnt' failed at domain_page.c:204
(XEN) ****************************************
(XEN)
(XEN) Reboot in five seconds...

I don't see an obvious candidate for the breakage.  Unless someone can
point one out quickly, I'll revert the lot to unblock staging.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 16:36:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 16:36:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115740.220854 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZcJ5-000320-CN; Thu, 22 Apr 2021 16:35:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115740.220854; Thu, 22 Apr 2021 16:35: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 1lZcJ5-00031t-9T; Thu, 22 Apr 2021 16:35:59 +0000
Received: by outflank-mailman (input) for mailman id 115740;
 Thu, 22 Apr 2021 16:35:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZcJ3-00031o-8z
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 16:35:57 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZcJ3-0002Gm-1N; Thu, 22 Apr 2021 16:35:57 +0000
Received: from 54-240-197-236.amazon.com ([54.240.197.236]
 helo=edge-m3-r2-133.e-iad51.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZcJ2-0001ZW-K1; Thu, 22 Apr 2021 16:35: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:Mime-Version:Content-Type:
	References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID;
	bh=yrcQV+90vwjvlrYogL9INP7v7DopINZvrcEoOXdgfLI=; b=OG38H2HCTJK93yyEoTjr97ghRu
	z30Snx4YnJkUWVhfgWCIl6KWUnURvZlTsGNSxMpoB8nVPSGs4Bf5eVVi+OIDiq/NbjIPokDjFtz/x
	FwvJ2bw+kd/OOBJ7X+CG0m7hdriHTdK/B2YP+99VMvF62xD+r739fYIdX5Dztz45WEX8=;
Message-ID: <8aa8fe1b78a50e69ad1bc4afdd315eb254266162.camel@xen.org>
Subject: Re: [PATCH v10 00/13] switch to domheap for Xen page tables
From: Hongyan Xia <hx242@xen.org>
To: Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
Cc: jgrall@amazon.com, Jan Beulich <jbeulich@suse.com>, Roger Pau
	=?ISO-8859-1?Q?Monn=E9?=
	 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Date: Thu, 22 Apr 2021 17:35:54 +0100
In-Reply-To: <ff54b35e-bcf7-3343-4704-417aeb53865a@citrix.com>
References: <cover.1619014052.git.hongyxia@amazon.com>
	 <ff54b35e-bcf7-3343-4704-417aeb53865a@citrix.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit

Please see my reply in 03/13. Can you check this diff and see if you
can still trigger this issue:

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 50229e38d384..84e3ccf47e2a 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5532,7 +5532,6 @@ int map_pages_to_xen(
 
  out:
     L3T_UNLOCK(current_l3page);
-    unmap_domain_page(pl2e);
     unmap_domain_page(pl3e);
     unmap_domain_page(pl2e);
     return rc;
@@ -5830,6 +5829,7 @@ int modify_xen_mappings(unsigned long s, unsigned
long e, unsigned int nf)
  out:
     L3T_UNLOCK(current_l3page);
     unmap_domain_page(pl3e);
+    unmap_domain_page(pl2e);
     return rc;
 }

Hongyan
 
On Thu, 2021-04-22 at 17:21 +0100, Andrew Cooper wrote:
> On 21/04/2021 15:15, Hongyan Xia wrote:
> > From: Hongyan Xia <hongyxia@amazon.com>
> > 
> > This series rewrites all the remaining functions and finally makes
> > the
> > switch from xenheap to domheap for Xen page tables, so that they no
> > longer need to rely on the direct map, which is a big step towards
> > removing the direct map.
> 
> Staging is broken.  Xen hits an assertion just after dom0 starts.
> 
> (XEN) Freed 616kB init memory
> mapping kernel into physical memory
> about to get started...
> (XEN) Assertion 'hashent->refcnt' failed at domain_page.c:204
> (XEN) ----[ Xen-4.16-unstable  x86_64  debug=y  Not tainted ]----
> (XEN) CPU:    0
> (XEN) RIP:    e008:[<ffff82d040316f80>] unmap_domain_page+0x2af/0x2e0
> (XEN) RFLAGS: 0000000000010046   CONTEXT: hypervisor (d0v0)
> (XEN) rax: 0000000000000000   rbx: ffff831c47bf9040   rcx:
> ffff831c47c1a000
> (XEN) rdx: 0000000000000092   rsi: 0000000000000092   rdi:
> 0000000000000206
> (XEN) rbp: ffff8300a5ca7c88   rsp: ffff8300a5ca7c78   r8: 
> 0000000001c4f2fc
> (XEN) r9:  0000000000000000   r10: 0000000000000000   r11:
> 0000000000000000
> (XEN) r12: 0000000000092018   r13: 0000000000800163   r14:
> fff0000000000000
> (XEN) r15: 0000000000000001   cr0: 0000000080050033   cr4:
> 00000000003406e0
> (XEN) cr3: 0000001c42008000   cr2: ffffc9000133d000
> (XEN) fsb: 0000000000000000   gsb: ffff888266a00000   gss:
> 0000000000000000
> (XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: e010   cs: e008
> (XEN) Xen code around <ffff82d040316f80>
> (unmap_domain_page+0x2af/0x2e0):
> (XEN)  14 04 00 00 eb 19 0f 0b <0f> 0b 0f 0b ba 00 00 00 00 48 89 10
> 48
> 8b 81 d0
> (XEN) Xen stack trace from rsp=ffff8300a5ca7c78:
> (XEN)    ffff820040092018 0000000000000000 ffff8300a5ca7d58
> ffff82d040327e20
> (XEN)    a000000000000000 0000000000000000 ffff82d0405dbd40
> 008001e300000000
> (XEN)    8000000000000000 8000000000000000 00000000000001e3
> 00000000000001e3
> (XEN)    8000000000000000 0000000000000000 8000000000000163
> 0000000001440000
> (XEN)    ffff82e0014b92e0 0000000301c1a000 0000000000000000
> ffff820040090800
> (XEN)    00000000026c10d8 0000000001c4f2fc 8010001c4240f067
> ffff8300a5ca7df0
> (XEN)    ffff82c00071c000 0000000000000001 0000000000001000
> ffff8300a5ca7df8
> (XEN)    ffff8300a5ca7dc8 ffff82d040232c08 ffff8300a5ca7db8
> 0000000140088078
> (XEN)    ffff8300a5ca7df0 0080016300000001 ffffffff00000000
> ffff82c00071c000
> (XEN)    ffff82d0405b1300 ffff831c47bf9000 ffff82e04d821ae0
> 00000000026c10d7
> (XEN)    ffff831c47c1a000 0000000000000100 ffff8300a5ca7dd8
> ffff82d040232cdb
> (XEN)    ffff8300a5ca7df8 ffff82d04031718b ffff8300a5ca7df8
> 00000000026c10d7
> (XEN)    ffff8300a5ca7e38 ffff82d040209cb6 ffff831c47c1a018
> 0000000000000000
> (XEN)    ffffffff82003e90 ffff831c47c1a018 ffff831c47bf9000
> fffffffffffffff2
> (XEN)    ffff8300a5ca7eb8 ffff82d04020a69a ffff82d04038a228
> ffff82d04038a21c
> (XEN)    00000000026c10d7 0000000000000100 ffff82d04038a228
> ffff82d04038a21c
> (XEN)    ffff82d04038a228 ffff82d04038a21c ffff82d04038a228
> ffff8300a5ca7ef8
> (XEN)    ffff831c47bf9000 0000000000000003 0000000000000000
> 0000000000000000
> (XEN)    ffff8300a5ca7ee8 ffff82d040306e14 ffff82d04038a228
> ffff831c47bf9000
> (XEN)    0000000000000000 0000000000000000 00007cff5a3580e7
> ffff82d04038a29d
> (XEN) Xen call trace:
> (XEN)    [<ffff82d040316f80>] R unmap_domain_page+0x2af/0x2e0
> (XEN)    [<ffff82d040327e20>] F map_pages_to_xen+0x101a/0x1166
> (XEN)    [<ffff82d040232c08>] F __vmap+0x332/0x3cd
> (XEN)    [<ffff82d040232cdb>] F vmap+0x38/0x3a
> (XEN)    [<ffff82d04031718b>] F map_domain_page_global+0x46/0x51
> (XEN)    [<ffff82d040209cb6>] F map_vcpu_info+0x129/0x2c5
> (XEN)    [<ffff82d04020a69a>] F do_vcpu_op+0x1eb/0x681
> (XEN)    [<ffff82d040306e14>] F pv_hypercall+0x4e6/0x53d
> (XEN)    [<ffff82d04038a29d>] F lstar_enter+0x12d/0x140
> (XEN)
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) Assertion 'hashent->refcnt' failed at domain_page.c:204
> (XEN) ****************************************
> (XEN)
> (XEN) Reboot in five seconds...
> 
> I don't see an obvious candidate for the breakage.  Unless someone
> can
> point one out quickly, I'll revert the lot to unblock staging.
> 
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 17:12:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 17:12:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115746.220866 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZcs4-0006ip-8A; Thu, 22 Apr 2021 17:12:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115746.220866; Thu, 22 Apr 2021 17: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 1lZcs4-0006ii-53; Thu, 22 Apr 2021 17:12:08 +0000
Received: by outflank-mailman (input) for mailman id 115746;
 Thu, 22 Apr 2021 17:12: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 1lZcs3-0006ia-Em; Thu, 22 Apr 2021 17:12: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 1lZcs3-0002sb-7x; Thu, 22 Apr 2021 17:12: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 1lZcs2-0000nR-QI; Thu, 22 Apr 2021 17:12:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZcs2-0003m0-Po; Thu, 22 Apr 2021 17:12: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=/TiIxBOkZNcP3r/vjpiIZtft0S/q9EHR2VPURfo3iAc=; b=sSTKSC4Xs4r7SAxWz6zYYpoLP5
	e5dEE5w+CVs3Tj0Gf3jYrAzQW7/p5uBjrAilqZ8C/uvUAukUHWhw5VwU5pMGSdZpKUmGd9YRo8iyy
	Y6PDIBO1bhYjKmpk7SCveuhCDvdIVS4XC4VZvMcQtpSKrTHJehEGOegHjftJ6k8E52Tg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161380-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161380: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a60a72c17f116f6ef0fe2a5a77f8faa912d848b2
X-Osstest-Versions-That:
    xen=1be65ec4c8bc172aadd6bc1b6553c668152899ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 17:12:06 +0000

flight 161380 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161380/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 161377
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 161377

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  a60a72c17f116f6ef0fe2a5a77f8faa912d848b2
baseline version:
 xen                  1be65ec4c8bc172aadd6bc1b6553c668152899ae

Last test of basis   161377  2021-04-22 12:00:26 Z    0 days
Testing same since   161380  2021-04-22 15:00:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Costin Lupu <costin.lupu@cs.pub.ro>
  Dario Faggioli <dfaggioli@suse.com>
  Doug Goldstein <cardoe@cardoe.com>
  Hongyan Xia <hongyxia@amazon.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Wei Liu <wei.liu2@citrix.com>
  Wei Liu <wl@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                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 515 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 17:27:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 17:27:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115754.220884 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZd7C-0007xt-MQ; Thu, 22 Apr 2021 17:27:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115754.220884; Thu, 22 Apr 2021 17:27: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 1lZd7C-0007xm-JE; Thu, 22 Apr 2021 17:27:46 +0000
Received: by outflank-mailman (input) for mailman id 115754;
 Thu, 22 Apr 2021 17:27: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 1lZd7B-0007xh-00
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 17:27: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 1lZd78-00037m-Ei; Thu, 22 Apr 2021 17:27:42 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZd78-0001in-89; Thu, 22 Apr 2021 17:27:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=h+0ybbERnhMoYAwDxDB3TM1ASJXi7fiuqyuPRbTPa4w=; b=cI0UinpRKJ+gj3Tv65iE3kC0w6
	MYkWb9b5lwVM8zcKpwmQALOAahUtqJvrNpVzEIPzAhAabfZw4Ge81PMrLyQqs0SZ/1UfUgEZ3En68
	jUzXB6ngz+NW2vRgBYTN5z4gj4rtsj/h6aSPBffbUZ2n0l22tU0+q6RCaftneZya1gxw=;
Subject: Re: [PATCH v10 00/13] switch to domheap for Xen page tables
To: Hongyan Xia <hx242@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 xen-devel@lists.xenproject.org
Cc: jgrall@amazon.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.1619014052.git.hongyxia@amazon.com>
 <ff54b35e-bcf7-3343-4704-417aeb53865a@citrix.com>
 <8aa8fe1b78a50e69ad1bc4afdd315eb254266162.camel@xen.org>
From: Julien Grall <julien@xen.org>
Message-ID: <e41859c7-7630-6fb6-a6c4-eb769f06d6f3@xen.org>
Date: Thu, 22 Apr 2021 18:27:40 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <8aa8fe1b78a50e69ad1bc4afdd315eb254266162.camel@xen.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Hongyan,

On 22/04/2021 17:35, Hongyan Xia wrote:
> Please see my reply in 03/13. Can you check this diff and see if you
> can still trigger this issue:

I can reproduced the same issue as Andrew. I have applied the patch and 
confirm this resolves the problem. Can you send a formal patch?

BTW, feel free to add my Tested-by.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 17:28:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 17:28:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115760.220896 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZd7m-000843-4T; Thu, 22 Apr 2021 17:28:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115760.220896; Thu, 22 Apr 2021 17: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 1lZd7m-00083w-0w; Thu, 22 Apr 2021 17:28:22 +0000
Received: by outflank-mailman (input) for mailman id 115760;
 Thu, 22 Apr 2021 17:28:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=00C0=JT=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZd7k-00083j-Cw
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 17:28:20 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 964439f8-c84e-41e0-82bb-b6390861267e;
 Thu, 22 Apr 2021 17:28:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 964439f8-c84e-41e0-82bb-b6390861267e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619112499;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=k4CDFcugS83MucUPadPale7AoyQg+8qnwnv72C2GdX4=;
  b=WVNAjlCH/jCSD2EK7tNr3CPxqHqzfiohNkb3+JOVnl2Jh3AmFPB9LwgC
   jC1wsa6YcmrLhDk4egPw6FV106FML3U26XTZY8Q65SF7Rp5p3M48OXfQp
   ug6wy806Eg4hD80hgefsVpl87UGLKDm0orTQDbuIQSslDhnfYgdf5Ch81
   Y=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: GV1fS06GGNW/xoko4W3FxYobXJbSRRrk6ohuPPy+UkaxNJEt9dkO/O3enPTIrCFBcvQ3nxXl5i
 kogFjcP0qj3F2zGtOPKMURRSGvbIydyRBnM5m+VHJ0qrDyQdBQmiMIW/jIcylgbbMOgk3L9+1A
 1jJYD5kKswntRSBjwUfyvc0QjP25/byjq169Se0UbrEUXSjYCOaEaVymw8Q+EMqhvlLXFutDYA
 NOmMhumORy02Qz+Y3vhnBCEz/yNYcqosxSkebJXTPgPLB/p1qihZW798STiTu38k9dWiVGr47M
 MyI=
X-SBRS: 5.2
X-MesageID: 42203943
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:WnVvWaFyWJHYbq0epLqFtZHXdLJzesId70hD6mlaTxtJfsuE0+
 CC9c5rrSPcojAXRX0mhJS8KLCNKEmsjKJdzKswGfOZXAfgsHa1N40K1+Df6hDpBiGWzI9g/I
 h6dawWMr3NJHxbqeq/3wWiCdYnx7C8gcWVrMPT1W1kQw0vS4wI1XYcNi+hHkd7RBZLCPMCff
 Ly2uN9qyOkaTAraK2Adxo4dtLerN7Gno+OW29hOzcb7mC1/FGVwY+/ODPd5RsVXypTwbEktU
 LClxX96riu2svQ9jbsk0T31tB5pPvNo+EzY/Cku4w/DwypqiGFWb5fcdS50gwdkaWO0RIOkM
 PQrxAtJK1Ihk/5TyWUmF/I+ySI6loT10M=
X-IronPort-AV: E=Sophos;i="5.82,243,1613451600"; 
   d="scan'208";a="42203943"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FEKOuCmUGYk5DYj+mqlPZuDV5Jlo/phVYmotPHGfbbP6onwvJqX3mPlUSDETPTNvGlYG2kodODQOKj1EiEZnjWBei+Z1sH2BDZEpjcrvrHIeA51QuzjlePOJDTfiHFCA3gWMDPJxO1Tf/IT15MOiGYVbjdWKRfOdYsa1md8fQvc7ftP3l9i18hC7gvLTvf77Hh5g03OCItrr29o+sCFEm/bJoDcCzKE4ZA4GRzgFNSFMvS73SnMEmeinAyhFbVjLJTc68LEuuB4h322nWdIukwqfkOV0AXbzxvhP855yY26BwYk7ObfGGxKC8zH0jWQjIjwWto7TGvxb/pqM/Ebcrw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EovWUtL7Nh59uUREfHZ4XyKAUoEq0RyzXKFwOVzdmOM=;
 b=MSdKZLEJli0C65vMVaXXt7Ng2VSZaz3MKzy8OAkhoHgl3lXo2U/h2umQLAImeEDtvz+8T7FZg1EhcM5l91t8Cedsmlm3l5NhYOk5eKSrS3Buo7Kh7kTHtDeuuYJIlaQOlitAxcVEcWSbyPt8BNjrQqJ/db/9HfOoBxIkbPC+yF5M6cdH4LL4DoAOXfD7au0hLC79bJkUnw3M1TyL3bgnRa5jiqEqpMvsBHC/vOGe0NMIJwSmd2OyfrDqtFdAZdBvHQTvURfNzXzFv61KLQjon5swUym/pPUGknjay96HBAIoN4bpkmyD6sSQ6qJSbQ4Z/WgkKLe3+Y8wvK8wUISS9w==
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=EovWUtL7Nh59uUREfHZ4XyKAUoEq0RyzXKFwOVzdmOM=;
 b=wpjc45Kv57FNeY1CZD8Xz+8a/egnFAJOfA1nun/GyWdEd6F+yFvklYVyL3M43/GyPn45d2RXRXUAEDJ4RW2zgYAvPZMZzfMXPzibvX83lZ5JlZRLHDmxCIGmNvILpV1T4pSocgrRFyj16ziVItJnZCzP/gMl0YM8tkAjOIEPVno=
Subject: Re: [PATCH v10 00/13] switch to domheap for Xen page tables
To: Hongyan Xia <hx242@xen.org>, <xen-devel@lists.xenproject.org>
CC: <jgrall@amazon.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.1619014052.git.hongyxia@amazon.com>
 <ff54b35e-bcf7-3343-4704-417aeb53865a@citrix.com>
 <8aa8fe1b78a50e69ad1bc4afdd315eb254266162.camel@xen.org>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <248e0b3f-0e05-87c4-876e-5a658daa1492@citrix.com>
Date: Thu, 22 Apr 2021 18:28:05 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <8aa8fe1b78a50e69ad1bc4afdd315eb254266162.camel@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0279.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:195::14) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6adb57b8-5468-4334-a871-08d905b40162
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5854:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5854F04039011975C7677CDEBA469@SJ0PR03MB5854.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6430;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: O6gXAWO0TbN1WF+wFNUc/Q0tRMG1GAPicpdeFhny9sH5CjoFdeTpHOsZ5ZILaiqG3JCf0/ZyR/Hk+rgf51bnpMB8fNpFmvzTn53NsM8dSQ1saZqxyLnf7JeueFTqI09EKxUjqYcSw7BMGycZo+7ls5wJKg+CvCbvmzC2hhuL5Xt62d6qbpNil2HUx+topMb4nnhiwLRqyNsnEago4CHn8xSr0zpNXR4kU0zlgi0j8udkHeyxClHbewrX2VjhnsmcL3FQm7CRVNL3TIhywzrxWi0gwJ3k52qdIDYNNUkmpUOt6HPX81NTWJYM9Zy/CtMSbpno2NBGdeoVQ+sTDEBXlzRR48naaD7eRDcVkyfIN3QG2RPAHrqAGGmjuCNLra9cXWIpsEH/vgjPelRLiPzeNBryvj0+6ND44KdDd6K+z0QklAZzqSo8J3r7YC/E8az0CRYkrbXSyzHIUMnfkGUXg3VTesZUjccKjlijsPgu2M4zmLFgPm0kZoPDmvLEzp21dmqFnb0gLLwHccsCK40p1R6gvSMcqXdMg8/06smsXeA597kcdqLLpNoBneRH1zNaZlH4alx4h/s8Cnzg9dH13DCOS6QzqOFvdpKhl6mbJJGaUu13Vfy8N2UsiR3vKi/7ggFNF1IXgN8ixLS2il3QP9syjiyx9OTV0x4sU9kF3DF+gWsbLvvU98EIm9UiEGh7
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(366004)(136003)(39860400002)(396003)(346002)(186003)(66556008)(66476007)(5660300002)(6666004)(86362001)(478600001)(6486002)(16526019)(26005)(8936002)(66946007)(2906002)(36756003)(53546011)(4744005)(38100700002)(8676002)(31686004)(54906003)(316002)(83380400001)(2616005)(16576012)(956004)(4326008)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 6adb57b8-5468-4334-a871-08d905b40162
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 17:28:12.9648
 (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: EPvw1FzoFHz0ueKJdKwgqUwSqTNkRhP8RNwmJegGk2AD3+7G9DDGelh2tEKeGAte0U5DsenZC0o1OvJqTxOuA+K6P8vso8jAfwWh2g/xt4E=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5854
X-OriginatorOrg: citrix.com

On 22/04/2021 17:35, Hongyan Xia wrote:
> Please see my reply in 03/13. Can you check this diff and see if you
> can still trigger this issue:
>
> diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
> index 50229e38d384..84e3ccf47e2a 100644
> --- a/xen/arch/x86/mm.c
> +++ b/xen/arch/x86/mm.c
> @@ -5532,7 +5532,6 @@ int map_pages_to_xen(
>  
>   out:
>      L3T_UNLOCK(current_l3page);
> -    unmap_domain_page(pl2e);
>      unmap_domain_page(pl3e);
>      unmap_domain_page(pl2e);
>      return rc;
> @@ -5830,6 +5829,7 @@ int modify_xen_mappings(unsigned long s, unsigned
> long e, unsigned int nf)
>   out:
>      L3T_UNLOCK(current_l3page);
>      unmap_domain_page(pl3e);
> +    unmap_domain_page(pl2e);
>      return rc;
>  }

Yup - that seems to fix things.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 17:43:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 17:43:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115769.220914 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZdMP-0001Tb-I5; Thu, 22 Apr 2021 17:43:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115769.220914; Thu, 22 Apr 2021 17:43:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZdMP-0001TU-F1; Thu, 22 Apr 2021 17:43:29 +0000
Received: by outflank-mailman (input) for mailman id 115769;
 Thu, 22 Apr 2021 17:43:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lZdMO-0001T6-7k
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 17:43:28 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZdMO-0003NY-16; Thu, 22 Apr 2021 17:43:28 +0000
Received: from 54-240-197-228.amazon.com ([54.240.197.228]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lZdMN-00038B-JO; Thu, 22 Apr 2021 17:43: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=Message-Id:Date:Subject:Cc:To:From;
	bh=AzfpKaBdrt3x7984/tvCLbD88cab96Phr9IzS6ojQd4=; b=hh/y4HXpxsco8erDeu6Ou/s0R+
	kcdn9vWUanHZD4hFghReBXhQbeI83CdjJ8MkCq2yghwMgtvWAvemTagQnFiCtDZ6Ml/BD0AcAr+8j
	4UseTu+CrxnI9LFjMrqAEnueB+ywwoSxzuSRZiNp69g5urUmGtKn1SwO/5CxDC0CuYmk=;
From: Hongyan Xia <hx242@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Hongyan Xia <hongyxia@amazon.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/mm: fix wrong unmap call
Date: Thu, 22 Apr 2021 18:42:30 +0100
Message-Id: <a59a28ee297d683933d057cc2a4d0d26ebd90bc9.1619113334.git.hongyxia@amazon.com>
X-Mailer: git-send-email 2.17.1

From: Hongyan Xia <hongyxia@amazon.com>

Commit 'x86/mm: switch to new APIs in modify_xen_mappings' applied the
hunk of the unmap call to map_pages_to_xen() which was wrong and clearly
should have been at the end of modify_xen_mappings(). Fix.

Fixes: dd68f2e49bea ("x86/mm: switch to new APIs in modify_xen_mappings")

Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
Tested-by: Julien Grall <jgrall@amazon.com>
---
 xen/arch/x86/mm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 50229e38d384..84e3ccf47e2a 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5532,7 +5532,6 @@ int map_pages_to_xen(
 
  out:
     L3T_UNLOCK(current_l3page);
-    unmap_domain_page(pl2e);
     unmap_domain_page(pl3e);
     unmap_domain_page(pl2e);
     return rc;
@@ -5830,6 +5829,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
  out:
     L3T_UNLOCK(current_l3page);
     unmap_domain_page(pl3e);
+    unmap_domain_page(pl2e);
     return rc;
 }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 22 18:20:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 18:20:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115781.220930 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZdwO-0005P6-A4; Thu, 22 Apr 2021 18:20:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115781.220930; Thu, 22 Apr 2021 18:20:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZdwO-0005Oz-6d; Thu, 22 Apr 2021 18:20:40 +0000
Received: by outflank-mailman (input) for mailman id 115781;
 Thu, 22 Apr 2021 18:20: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 1lZdwN-0005Ou-DD
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 18:20: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 1lZdwM-00043l-3r; Thu, 22 Apr 2021 18:20:38 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lZdwL-0006sl-SD; Thu, 22 Apr 2021 18:20: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=21+g1Yd2Cvh0Dc697geLe/Rvf49dUbVbHccR2pCOqWk=; b=q1soYbFzq8zORvcOQ3Foty+7h3
	WrQ9LG8GgXkX7r9GjfIDgUeqOotyuCVfGNF/qy95ltvVzmRn4frgHWHcFiS+iq9OCK9+uq6hSlGOe
	D2B91sbH4xJuMFEsrLgmyCjV0kF+Ka++czT9tpqrTaMlmjxXEk3cKTqEYKAejjBnGi/0=;
Subject: Re: [PATCH 1/7] xen/arm: Make make_cpus_node() compile at -Og
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20210419140132.16909-1-andrew.cooper3@citrix.com>
 <20210419140132.16909-2-andrew.cooper3@citrix.com>
From: Julien Grall <julien@xen.org>
Message-ID: <713d50cc-1036-03eb-f9e4-a330abafb3d4@xen.org>
Date: Thu, 22 Apr 2021 19:20:36 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210419140132.16909-2-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Andrew,

On 19/04/2021 15:01, Andrew Cooper wrote:
> When compiling at -Og:
> 
>    domain_build.c: In function 'make_cpus_node':
>    domain_build.c:926:12: error: 'clock_valid' may be used uninitialized in this function [-Werror=maybe-uninitialized]
>      926 |         if ( clock_valid )
>          |            ^
> 
> The compiler hasn't spotted that clock_valid is always initialised after the
> "if ( !compatible )" check.  Initialise clock_valid to false.

Can you confirm which version this is affecting? We bumped the minimum 
version of GCC recently, so I want to make sure we don't add code to 
silence older compilers.

> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Julien Grall <julien@xen.org>
> CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
> ---
>   xen/arch/arm/domain_build.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index b1d7b9849f..b10f5c8f85 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -831,7 +831,7 @@ static int __init make_cpus_node(const struct domain *d, void *fdt)
>       /* Placeholder for cpu@ + a 32-bit hexadecimal number + \0 */
>       char buf[13];
>       u32 clock_frequency;
> -    bool clock_valid;
> +    bool clock_valid = false;

Would you mind to add something like:

/* Initialized silence at least GCC X.Y. */

With X.Y replaced with the version.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 18:46:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 18:46:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115791.220952 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZeKs-0007a0-Fp; Thu, 22 Apr 2021 18:45:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115791.220952; Thu, 22 Apr 2021 18: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 1lZeKs-0007Zt-Cm; Thu, 22 Apr 2021 18:45:58 +0000
Received: by outflank-mailman (input) for mailman id 115791;
 Thu, 22 Apr 2021 18:45: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 1lZeKr-0007Zl-Eu; Thu, 22 Apr 2021 18:45: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 1lZeKr-0004Sa-8z; Thu, 22 Apr 2021 18:45: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 1lZeKr-0007Gs-0C; Thu, 22 Apr 2021 18:45:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZeKq-0004HF-Vy; Thu, 22 Apr 2021 18:45:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=nblyyW8QvRhi0LBjPHvFSOphniIixJ0dBn3z9Y5H1tU=; b=6v5fdTR5o3VXnlbdDQwhnFwwQ+
	gxwRC36K8UHHaaC3sRdXLBq3WpqDoLIxfj0Y0HNhMxBJQI7Kk++3xENCSm+KXloruhz17VDLkSeKo
	CvKO9pkiHRMxjUhZKhjImwrs7+VSnSLjauyfOw4nBhqA3twij4cdv8kNZc49gDTP+XEw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161364-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161364: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:build-arm64-pvops:kernel-build:fail:regression
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start:fail:allowable
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=b1cffefa1b163bce9aebc3416f562c1d3886eeaa
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 18:45:56 +0000

flight 161364 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161364/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 build-arm64-pvops             6 kernel-build             fail REGR. vs. 152631

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds     14 guest-start              fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 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-seattle   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 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-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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
 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

version targeted for testing:
 qemuu                b1cffefa1b163bce9aebc3416f562c1d3886eeaa
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  245 days
Failing since        152659  2020-08-21 14:07:39 Z  244 days  450 attempts
Testing same since   161364  2021-04-21 23:21:43 Z    0 days    1 attempts

------------------------------------------------------------
478 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                                            fail    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  fail    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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                                 blocked 
 test-amd64-amd64-libvirt-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 142972 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 20:34:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 20:34:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115805.220975 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZg1U-0001GF-Td; Thu, 22 Apr 2021 20:34:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115805.220975; Thu, 22 Apr 2021 20:34: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 1lZg1U-0001G8-QV; Thu, 22 Apr 2021 20:34:04 +0000
Received: by outflank-mailman (input) for mailman id 115805;
 Thu, 22 Apr 2021 20:34:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L918=JT=kernel.org=sstabellini@srs-us1.protection.inumbo.net>)
 id 1lZg1T-0001G3-0f
 for xen-devel@lists.xenproject.org; Thu, 22 Apr 2021 20:34:03 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2d337d86-22a6-46b0-b30e-30842f9bb5c7;
 Thu, 22 Apr 2021 20:34:02 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPSA id 03792613CD;
 Thu, 22 Apr 2021 20: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: 2d337d86-22a6-46b0-b30e-30842f9bb5c7
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1619123641;
	bh=SwAIGuGxD6la/d9ib9xuS1hge+YaX9OIf1tKUllFCig=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=FwYu4+r+LEMjqfdG/TuvIFrGbw9R5DFnD7hyZ18LDeNmc5uG1QWb56uyX0vxTvEns
	 ayrMt6jUvX0G7WSksvB+MXCwV58fryXQHxAOFLBAo63oUI8al21BSsfs9bNjRuYYhE
	 FqXXOFK5HlqTRgLdE1yccRLWqYvncCRJZBTqL1ugNV/n+oRy/oKCoDlZtArh1ReGgD
	 /bTtIlBymlxT/PsOSUTuz2lM86pnLCN6+eNdSOeITESZh92aYdPlamXPW/R53eJQKJ
	 fK+BzVAGzKjAnM8FVFnXeqnC4zgZULoB04h0v05X+7RY8t4LKNzdq5v7yoS92sOR8S
	 ZtfYy5N/ci1bw==
Date: Thu, 22 Apr 2021 13:33:59 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s
To: Julien Grall <julien@xen.org>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, bertrand.marquis@arm.com, 
    ash.j.wilding@gmail.com, Julien Grall <jgrall@amazon.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] xen/arm: Ensure the vCPU context is seen before clearing
 the _VPF_down
In-Reply-To: <0660d553-54e3-0c5e-ef2d-41c3dc740695@xen.org>
Message-ID: <alpine.DEB.2.21.2104221330090.5018@sstabellini-ThinkPad-T480s>
References: <20210226205158.20991-1-julien@xen.org> <alpine.DEB.2.21.2102261756280.2682@sstabellini-ThinkPad-T480s> <ca41bfbb-d942-d8fd-e96e-c464f6b3643f@xen.org> <alpine.DEB.2.21.2103191652450.439@sstabellini-ThinkPad-T480s> <86165804-34a1-59e5-1b51-fecc60dbf796@xen.org>
 <alpine.DEB.2.21.2104131541370.4885@sstabellini-ThinkPad-T480s> <ebcaad65-a155-6979-9754-a8ef0ece3590@xen.org> <alpine.DEB.2.21.2104201234060.26180@sstabellini-ThinkPad-T480s> <37631386-a53f-d99d-d71b-0b871b5dd9b0@xen.org> <alpine.DEB.2.21.2104201726061.26180@sstabellini-ThinkPad-T480s>
 <0660d553-54e3-0c5e-ef2d-41c3dc740695@xen.org>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 21 Apr 2021, Julien Grall wrote:
> Hi Stefano,
> 
> On 21/04/2021 01:38, Stefano Stabellini wrote:
> > On Tue, 20 Apr 2021, Julien Grall wrote:
> > > AFAICT, there is nothing in the implementation of
> > > XEN_DOMCTL_getvcpucontext
> > > that justify the extra barrier (assuming we consider vcpu_pause() as a
> > > full
> > > memory barrier).
> > > 
> > >  From your e-mail, I also could not infer what is your exact concern
> > > regarding
> > > the memory ordering. If you have something in mind, then would you mind to
> > > provide a sketch showing what could go wrong?
> > 
> > Let me start with what I had in mind:
> > 
> > initialized = v->is_initialized;
> > smp_rmb();
> > if ( !initialized )
> >    goto getvcpucontext_out;
> > 
> > 
> > Without smp_rmb there are no guarantees that we see an up-to-date value
> > of v->is_initialized, right?
> 
> No. The smp_*mb() barriers only guarantee an ordering, it doesn't say anything
> about when the values will be seen. The write may in fact still be in the
> write buffer of the other CPU.
> 
> > This READ of v->is_initialized is supposed
> > to pair with the WRITE in arch_set_info_guest.
> 
> I am assuming you meant the access and not the barrier, right? Regardless, the
> barriers used, the access will happen in any order. IOW the following two
> ordering is possible:
> 
> Sequence 1:
> 
> CPU0: v->vcpu_initialized = 1
> CPU1: read v->vcpu_initialized
> 
> Sequence 2:
> 
> CPU1: read v->vcpu_initialized
> CPU0: v->vcpu_initialized = 0
> 
> In the first sequence, CPU1 will observe 0 and therefore bailout. In the
> second sequence, we will be observing 1 and continue.
> 
> > 
> > Relying on the the barrier in vcpu_pause is OK only if is_initialised
> > was already read as "1".
> > 
> > I think it might be OK in this case, because probably nothing wrong
> > happens if we read the old value of v->is_initialized as "0" but it
> > doesn't seem to be a good idea.
> 
> The smp_rmb() is not going to give you that guarantee. If you need it, then
> you mostly likely want to use a synchronization primitives such as
> spin_lock().
> 
> > Theoretically it could pass a very long
> > time before we see v->is_initialized as "1" without the smp_rmb.
> 
> I have the impression that there might be confusion about what I am aiming to
> achieve.
> 
> The code today looks roughly like:
> 
> 1) if ( v->is_initialized )
> 2)   return;
> 3) vcpu_pause();
> 4) /* Access registers */
> 
> My aim is to ensure that a processor will not READ any value for 4) are not
> happening before 1). If this happens, then we may provide garbagge to the
> domctl.
> 
> Returning an error is a lot better because the caller of the domctl will know
> the vCPU is not yet setup and can provide the infrastructure to try again.
> 
> From this PoV, your proposal and my two proposals are functionally equivalent.
> The main differences is whether there is an extra barrier and how easy is it
> to figure out the ordering.
> 
> Speaking with Ash, your proposal is probably the easiest one to understand.
> However, it also adds a barrier for the failure path (which is pointless).
> 
> I would like to avoid barriers when they are not necessary. Hence why I prefer
> the vcpu_pause() solution (we may want to add a comment).
> 
> Although, I could live with your proposal if the others are happy with it
> (Andrew? Jan?) because this is not an hot path.

I prefer my proposal because it is easier to understand its correctness
and, like you wrote, it is OK to have one more barrier than strictly
necessary in this case. But I wouldn't argue over this.


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 21:01:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 21:01:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115811.220991 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZgS7-0004BJ-6d; Thu, 22 Apr 2021 21:01:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115811.220991; Thu, 22 Apr 2021 21:01: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 1lZgS7-0004BC-37; Thu, 22 Apr 2021 21:01:35 +0000
Received: by outflank-mailman (input) for mailman id 115811;
 Thu, 22 Apr 2021 21:01: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 1lZgS5-0004B4-LO; Thu, 22 Apr 2021 21:01: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 1lZgS5-0006n4-Do; Thu, 22 Apr 2021 21:01: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 1lZgS5-0004X0-54; Thu, 22 Apr 2021 21:01:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZgS5-0001cN-4Z; Thu, 22 Apr 2021 21:01: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=pksFPkCNmivK7AwqchEckWdzAPsdK31amW+87y89/QQ=; b=Aej6/J1SGISdPNTNunSJondSYa
	lmAWR4XxsQwSpRCUUmmTp6oXAW9qrFs2TR3tOsKTRRL8CFDpooFpjZuCiO9kvCp3tB9Sk6Oiy8+xs
	dPn1FcfjnvWh3loy3XIHP4LO+1mPxs1g+bMRaF6vjfn1049jBqXM+i9n0pTUht2teEUE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161386-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161386: 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=f889fa267c47c3495d304da5da9dd2ef8a4c95af
X-Osstest-Versions-That:
    xen=1be65ec4c8bc172aadd6bc1b6553c668152899ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 21:01:33 +0000

flight 161386 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161386/

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                  f889fa267c47c3495d304da5da9dd2ef8a4c95af
baseline version:
 xen                  1be65ec4c8bc172aadd6bc1b6553c668152899ae

Last test of basis   161377  2021-04-22 12:00:26 Z    0 days
Failing since        161380  2021-04-22 15:00:25 Z    0 days    2 attempts
Testing same since   161386  2021-04-22 18:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Costin Lupu <costin.lupu@cs.pub.ro>
  Dario Faggioli <dfaggioli@suse.com>
  Doug Goldstein <cardoe@cardoe.com>
  Hongyan Xia <hongyxia@amazon.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Wei Liu <wei.liu2@citrix.com>
  Wei Liu <wl@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
   1be65ec4c8..f889fa267c  f889fa267c47c3495d304da5da9dd2ef8a4c95af -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 21:41:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 21:41:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115817.221005 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZh4P-00080r-6a; Thu, 22 Apr 2021 21:41:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115817.221005; Thu, 22 Apr 2021 21:41: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 1lZh4P-00080k-3k; Thu, 22 Apr 2021 21:41:09 +0000
Received: by outflank-mailman (input) for mailman id 115817;
 Thu, 22 Apr 2021 21:41: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 1lZh4N-00080c-Qb; Thu, 22 Apr 2021 21:41: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 1lZh4N-0007PJ-Jx; Thu, 22 Apr 2021 21:41: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 1lZh4N-0006lj-9t; Thu, 22 Apr 2021 21:41:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZh4N-0004XT-9M; Thu, 22 Apr 2021 21: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=YcB3dm8wG63heItYFkpbR5NMkhF/uT6ze965BQSah9g=; b=SfTC0EhhG/68DYVnDUocOiNmt/
	Nm5i9CJeKnTKLFrtc9BeGEGtC03/+X2aUyiobWgI5j02kTA0Mlvsq/7ePfOiQVePCWWSgFvFai7og
	nrF/SA9c/Wh6aVJ7N0yZRvmKj4w8iznbwvF6OcZCgN8nL0ilsq7wtvLqTXf7nxiialBw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161375-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 161375: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=2cf3168661355565e2b80395ef16c5ee3cfc5f55
X-Osstest-Versions-That:
    xtf=e24fbec38e66e0df8471efb0c804256bdac96636
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 21:41:07 +0000

flight 161375 xtf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161375/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  2cf3168661355565e2b80395ef16c5ee3cfc5f55
baseline version:
 xtf                  e24fbec38e66e0df8471efb0c804256bdac96636

Last test of basis   161363  2021-04-21 23:10:10 Z    0 days
Testing same since   161375  2021-04-22 11:11:15 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Orzel <michal.orzel@arm.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
   e24fbec..2cf3168  2cf3168661355565e2b80395ef16c5ee3cfc5f55 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 22 22:16:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 22 Apr 2021 22:16:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115827.221029 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZhcN-0002jH-4J; Thu, 22 Apr 2021 22:16:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115827.221029; Thu, 22 Apr 2021 22:16: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 1lZhcN-0002jA-1K; Thu, 22 Apr 2021 22:16:15 +0000
Received: by outflank-mailman (input) for mailman id 115827;
 Thu, 22 Apr 2021 22:16: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 1lZhcL-0002j2-CM; Thu, 22 Apr 2021 22:16: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 1lZhcL-0007yd-5A; Thu, 22 Apr 2021 22:16: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 1lZhcK-0008Ib-SC; Thu, 22 Apr 2021 22:16:12 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZhcK-0007Aw-Rk; Thu, 22 Apr 2021 22:16: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=jOVqtUEDsm6dUhwn/9ixQUNG34zTYABvN5jxK8ehgnw=; b=JBM09Q8rvyaZGspfyJagSdiqE6
	YE5IfGx0KnHHMO1ssmIRtIje5z4l4zDhaGcfPbxBe51bVrELVgjgbsmK8Ssvugy47DDDXNLiEZPsl
	DnO4on1lwZNvOqvu4Fxxvh4eeaeyly08rrVRhUuWE3jXTxqDbcBOh8mvjHbG6rqZgzps=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161368-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161368: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw: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-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
X-Osstest-Versions-This:
    xen=aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
X-Osstest-Versions-That:
    xen=9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 22 Apr 2021 22:16:12 +0000

flight 161368 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161368/

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 161340
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161340
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161340
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161340
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161340
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161340
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161340
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161340
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161340
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161340
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161340
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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

version targeted for testing:
 xen                  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
baseline version:
 xen                  9f6cd4983715cb31f0ea540e6bbb63f799a35d8a

Last test of basis   161340  2021-04-20 22:38:12 Z    1 days
Testing same since   161368  2021-04-22 03:57:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@xilinx.com>
  Wei Liu <wl@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                           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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   9f6cd49837..aaa3eafb3b  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc -> master


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 00:39:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 00:39:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115842.221055 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZjqX-00087U-RP; Fri, 23 Apr 2021 00:39:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115842.221055; Fri, 23 Apr 2021 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 1lZjqX-00087N-NS; Fri, 23 Apr 2021 00:39:01 +0000
Received: by outflank-mailman (input) for mailman id 115842;
 Fri, 23 Apr 2021 00:39: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 1lZjqW-00087F-MR; Fri, 23 Apr 2021 00:39: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 1lZjqW-0002QD-Dm; Fri, 23 Apr 2021 00:39: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 1lZjqW-0005D8-3Q; Fri, 23 Apr 2021 00:39:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZjqW-0001jM-2x; Fri, 23 Apr 2021 00:39:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=uU7d0suvT1PUdVMq4alNry+KSRtbQ4X5ExfWfcnAOlQ=; b=r0INIu4z38FnpMbfV9/IcZPMlh
	aS9kf36mduZ3XOTDdqX5eA1SNQmgDRBETx8GZJfaeHW/RvZmzqgKxRkIH8/zl7ACHA/v81dXBmJ4S
	6E+y/mM4Ck4lLPOb6NOMUCazTdbXu5WV1vM/krg56QtMLB6YQ302QTRU0FFuMtAs0+sM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161392-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161392: 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=e9b4fe26364950258c9f57f0f68eccb778eeadbb
X-Osstest-Versions-That:
    xen=f889fa267c47c3495d304da5da9dd2ef8a4c95af
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 00:39:00 +0000

flight 161392 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161392/

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                  e9b4fe26364950258c9f57f0f68eccb778eeadbb
baseline version:
 xen                  f889fa267c47c3495d304da5da9dd2ef8a4c95af

Last test of basis   161386  2021-04-22 18:00:27 Z    0 days
Testing same since   161392  2021-04-22 22:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@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
   f889fa267c..e9b4fe2636  e9b4fe26364950258c9f57f0f68eccb778eeadbb -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 01:56:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 01:56:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115849.221070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZl3A-0004WD-HE; Fri, 23 Apr 2021 01:56:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115849.221070; Fri, 23 Apr 2021 01:56: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 1lZl3A-0004W4-A4; Fri, 23 Apr 2021 01:56:08 +0000
Received: by outflank-mailman (input) for mailman id 115849;
 Fri, 23 Apr 2021 01:56: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 1lZl39-0004Vw-NO; Fri, 23 Apr 2021 01:56: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 1lZl39-0000VL-DR; Fri, 23 Apr 2021 01:56: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 1lZl39-0001KP-1o; Fri, 23 Apr 2021 01:56:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZl39-0000L4-0M; Fri, 23 Apr 2021 01:56: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=MT+6rERzRKgt5GBVSqqvHF1Rr35HKjz3AJqYKWP9LFk=; b=0A7kJuXAJ0+7HSgqLPBAzOrTEm
	CBu5RMvip6d59xP500YzVhPM72lEYp/ztas3A8aDT6JIuWJpNJCnSLkvpNjlKsGEQ5gwsrYOUo35Z
	rXc9CCOWuGjGE4g297HwnU8+7orAJjDyyEdRdbnE2PZsa5yEtRtgTu2V9Vv4XXDOESRQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161371-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161371: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-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-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=16fc44d6387e260f4932e9248b985837324705d8
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 01:56:07 +0000

flight 161371 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161371/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                16fc44d6387e260f4932e9248b985837324705d8
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  265 days
Failing since        152366  2020-08-01 20:49:34 Z  264 days  443 attempts
Testing same since   161371  2021-04-22 06:18:12 Z    0 days    1 attempts

------------------------------------------------------------
5354 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1329436 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 02:51:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 02:51:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115857.221091 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZlue-00020p-Hk; Fri, 23 Apr 2021 02:51:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115857.221091; Fri, 23 Apr 2021 02: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 1lZlue-00020i-Eg; Fri, 23 Apr 2021 02:51:24 +0000
Received: by outflank-mailman (input) for mailman id 115857;
 Fri, 23 Apr 2021 02:51: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 1lZlud-0001zn-Fk; Fri, 23 Apr 2021 02:51: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 1lZlud-0001tP-2n; Fri, 23 Apr 2021 02: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 1lZluc-0003JW-Sb; Fri, 23 Apr 2021 02:51:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZluc-00062B-S5; Fri, 23 Apr 2021 02:51: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=vwsYfNlWqgaecrRcCDM1UdMsrGd9isyhWaI8a+2CKzQ=; b=S/k2oEWZ9U6LeQWK7nEQFm7peU
	moFQqXSwROHB9hLFQLO9eL2WItklLHQKs48aFZnEN4r+Qx2WkcBGZLq8WugSywtPA8CWWFsYuHvZ6
	sSJaVQcJ4x3xAQ+T+R89uP4bncjFB+1vXeePQMyUoyJodN0dsdQfs6Jaod4Xqh8DYuRI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161383-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161383: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:build-amd64:xen-build:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-amd64-pvgrub:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-i386-pvgrub:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-livepatch:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-raw:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-livepatch:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-2:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-3:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-4:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-xtf-amd64-amd64-5:build-check(1):blocked:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 02:51:22 +0000

flight 161383 xen-4.12-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161383/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64                   6 xen-build                fail REGR. vs. 159418

Tests which did not succeed, but are not blocking:
 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-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-xtf-amd64-amd64-1        1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  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-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-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
 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-amd64-pvgrub  1 build-check(1)               blocked  n/a
 test-amd64-amd64-i386-pvgrub  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-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-raw        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-amd64-i386-libvirt-pair  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-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 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-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     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   65 days
Failing since        160128  2021-03-18 14:36:18 Z   35 days   46 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   33 days   44 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  fail    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          blocked 
 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                                       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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 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                                 blocked 
 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                            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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                blocked 
 test-amd64-amd64-i386-pvgrub                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 02:53:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 02:53:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115864.221106 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZlwb-00029H-5Y; Fri, 23 Apr 2021 02:53:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115864.221106; Fri, 23 Apr 2021 02: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 1lZlwb-00029A-1I; Fri, 23 Apr 2021 02:53:25 +0000
Received: by outflank-mailman (input) for mailman id 115864;
 Fri, 23 Apr 2021 02:53:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6fiG=JU=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lZlwZ-000294-2H
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 02:53:23 +0000
Received: from mail-pj1-x1034.google.com (unknown [2607:f8b0:4864:20::1034])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 76c447c3-3565-493a-9f5b-bd598b913b0f;
 Fri, 23 Apr 2021 02:53:22 +0000 (UTC)
Received: by mail-pj1-x1034.google.com with SMTP id
 y22-20020a17090a8b16b0290150ae1a6d2bso493643pjn.0
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 19:53:22 -0700 (PDT)
Received: from mail-pg1-f172.google.com (mail-pg1-f172.google.com.
 [209.85.215.172])
 by smtp.gmail.com with ESMTPSA id u12sm6556784pji.45.2021.04.22.19.53.20
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 22 Apr 2021 19:53:20 -0700 (PDT)
Received: by mail-pg1-f172.google.com with SMTP id f29so34216405pgm.8
 for <xen-devel@lists.xenproject.org>; Thu, 22 Apr 2021 19:53: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: 76c447c3-3565-493a-9f5b-bd598b913b0f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=40nhsz+kltJTf7tq6pLLkes92lT1dy5Rll207DlKzWM=;
        b=HdsQJQRkixDre+dpQSVR58nl8K7T4MbrI4XmlnSivkYb875qGKmhwngqhS/XX43exh
         bg5Ne9Oub0puKLH8FRaSSn/FCuQxwpgf1ynisAFuTF4Wvjhe+t5iF+WotV6g96hB8Oro
         fWaQA0hAXWZxawu4WTORJsnwcVbFEg+0cCZO8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=40nhsz+kltJTf7tq6pLLkes92lT1dy5Rll207DlKzWM=;
        b=MZsZ4pSPJ4dCVZHls6VtxP38cfYfnsQ7Bom6r+3BCIFm4701zGD4ar8Ehysye8QiLR
         D4md2hTJFvtQL8ULbgsW/2RSz3/00a9eyMPQXozVYffEtm7Yy/sZlcZhRCnMMQ0jZMf5
         MH5ksKnaIgYlN7DEM/L+WDuPXcsSOBQjLteVAXbPXVlZ0SsbPOc3oQ60hAA2sBIDX5aE
         IdWFJ8lDvIEcDUpqgfXbd64zgsaW+SscBAlgbCBOKx51cgLeC/0osLH+fGPUkObn7ZnY
         7YQLD0Vzi7zXAgmxaLJT9EOXn67KZI0HsdrBylZMNsL2TVb4DwQz39pKHN5JPLz76txk
         Gcvg==
X-Gm-Message-State: AOAM531mq1IdS6LJmsJts1cuZMkGQD+iwq2wRGCdZyS6/9QfunIOu+Zw
	kkLBAfLedatjODGVEmZ4s8+9fDNRtZWt4g==
X-Google-Smtp-Source: ABdhPJzWnUCvHFfO+w/TiuDRjCZ3wO/0KPZ96zCBEM4eWzT8b7FPGbUB5wyBYDOY8gwW5n4uPwDTbw==
X-Received: by 2002:a17:90a:6b4f:: with SMTP id x15mr3272223pjl.227.1619146400919;
        Thu, 22 Apr 2021 19:53:20 -0700 (PDT)
X-Received: by 2002:a6b:c913:: with SMTP id z19mr1627785iof.50.1619146389385;
 Thu, 22 Apr 2021 19:53:09 -0700 (PDT)
MIME-Version: 1.0
References: <20210422081508.3942748-1-tientzu@chromium.org> <20210422081508.3942748-17-tientzu@chromium.org>
In-Reply-To: <20210422081508.3942748-17-tientzu@chromium.org>
From: Claire Chang <tientzu@chromium.org>
Date: Fri, 23 Apr 2021 10:52:58 +0800
X-Gmail-Original-Message-ID: <CALiNf29NzRTRB-0JbCL7=0qF0SAiER_pJ_-SCtVRA7DHCsSpEg@mail.gmail.com>
Message-ID: <CALiNf29NzRTRB-0JbCL7=0qF0SAiER_pJ_-SCtVRA7DHCsSpEg@mail.gmail.com>
Subject: Re: [PATCH v5 16/16] of: Add plumbing for restricted DMA pool
To: Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>, 
	Frank Rowand <frowand.list@gmail.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, 
	boris.ostrovsky@oracle.com, jgross@suse.com, Christoph Hellwig <hch@lst.de>, 
	Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org, paulus@samba.org, 
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>, sstabellini@kernel.org, 
	Robin Murphy <robin.murphy@arm.com>, grant.likely@arm.com, xypron.glpk@gmx.de, 
	Thierry Reding <treding@nvidia.com>, mingo@kernel.org, bauerman@linux.ibm.com, 
	peterz@infradead.org, Greg KH <gregkh@linuxfoundation.org>, 
	Saravana Kannan <saravanak@google.com>, "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>, 
	heikki.krogerus@linux.intel.com, 
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>, Randy Dunlap <rdunlap@infradead.org>, 
	Dan Williams <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>, 
	linux-devicetree <devicetree@vger.kernel.org>, lkml <linux-kernel@vger.kernel.org>, 
	linuxppc-dev@lists.ozlabs.org, xen-devel@lists.xenproject.org, 
	Nicolas Boichat <drinkcat@chromium.org>, Jim Quinlan <james.quinlan@broadcom.com>, 
	Tomasz Figa <tfiga@chromium.org>, bskeggs@redhat.com, bhelgaas@google.com, 
	chris@chris-wilson.co.uk, daniel@ffwll.ch, airlied@linux.ie, 
	dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, 
	jani.nikula@linux.intel.com, jxgao@google.com, 
	joonas.lahtinen@linux.intel.com, linux-pci@vger.kernel.org, 
	maarten.lankhorst@linux.intel.com, matthew.auld@intel.com, 
	nouveau@lists.freedesktop.org, rodrigo.vivi@intel.com, 
	thomas.hellstrom@linux.intel.com
Content-Type: text/plain; charset="UTF-8"

On Thu, Apr 22, 2021 at 4:17 PM Claire Chang <tientzu@chromium.org> wrote:
>
> If a device is not behind an IOMMU, we look up the device node and set
> up the restricted DMA when the restricted-dma-pool is presented.
>
> Signed-off-by: Claire Chang <tientzu@chromium.org>
> ---
>  drivers/of/address.c    | 25 +++++++++++++++++++++++++
>  drivers/of/device.c     |  3 +++
>  drivers/of/of_private.h |  5 +++++
>  3 files changed, 33 insertions(+)
>
> diff --git a/drivers/of/address.c b/drivers/of/address.c
> index 54f221dde267..fff3adfe4986 100644
> --- a/drivers/of/address.c
> +++ b/drivers/of/address.c
> @@ -8,6 +8,7 @@
>  #include <linux/logic_pio.h>
>  #include <linux/module.h>
>  #include <linux/of_address.h>
> +#include <linux/of_reserved_mem.h>
>  #include <linux/pci.h>
>  #include <linux/pci_regs.h>
>  #include <linux/sizes.h>
> @@ -1109,6 +1110,30 @@ bool of_dma_is_coherent(struct device_node *np)
>  }
>  EXPORT_SYMBOL_GPL(of_dma_is_coherent);
>
> +int of_dma_set_restricted_buffer(struct device *dev)
> +{
> +       struct device_node *node;
> +       int count, i;
> +
> +       if (!dev->of_node)
> +               return 0;
> +
> +       count = of_property_count_elems_of_size(dev->of_node, "memory-region",
> +                                               sizeof(phandle));
> +       for (i = 0; i < count; i++) {
> +               node = of_parse_phandle(dev->of_node, "memory-region", i);
> +               /* There might be multiple memory regions, but only one
> +                * restriced-dma-pool region is allowed.
> +                */
> +               if (of_device_is_compatible(node, "restricted-dma-pool") &&
> +                   of_device_is_available(node))
> +                       return of_reserved_mem_device_init_by_idx(
> +                               dev, dev->of_node, i);
> +       }
> +
> +       return 0;
> +}
> +
>  /**
>   * of_mmio_is_nonposted - Check if device uses non-posted MMIO
>   * @np:        device node
> diff --git a/drivers/of/device.c b/drivers/of/device.c
> index c5a9473a5fb1..d8d865223e51 100644
> --- a/drivers/of/device.c
> +++ b/drivers/of/device.c
> @@ -165,6 +165,9 @@ int of_dma_configure_id(struct device *dev, struct device_node *np,
>
>         arch_setup_dma_ops(dev, dma_start, size, iommu, coherent);
>
> +       if (!iommu)
> +               return of_dma_set_restricted_buffer(dev);
> +
>         return 0;
>  }
>  EXPORT_SYMBOL_GPL(of_dma_configure_id);
> diff --git a/drivers/of/of_private.h b/drivers/of/of_private.h
> index d717efbd637d..e9237f5eff48 100644
> --- a/drivers/of/of_private.h
> +++ b/drivers/of/of_private.h
> @@ -163,12 +163,17 @@ struct bus_dma_region;
>  #if defined(CONFIG_OF_ADDRESS) && defined(CONFIG_HAS_DMA)
>  int of_dma_get_range(struct device_node *np,
>                 const struct bus_dma_region **map);
> +int of_dma_set_restricted_buffer(struct device *dev);
>  #else
>  static inline int of_dma_get_range(struct device_node *np,
>                 const struct bus_dma_region **map)
>  {
>         return -ENODEV;
>  }
> +static inline int of_dma_get_restricted_buffer(struct device *dev)

This one should be of_dma_set_restricted_buffer. Sorry for the typo.

> +{
> +       return -ENODEV;
> +}
>  #endif
>
>  #endif /* _LINUX_OF_PRIVATE_H */
> --
> 2.31.1.368.gbe11c130af-goog
>


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 03:23:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 03:23:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115872.221118 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZmPH-00056h-I3; Fri, 23 Apr 2021 03:23:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115872.221118; Fri, 23 Apr 2021 03:23: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 1lZmPH-00056a-F6; Fri, 23 Apr 2021 03:23:03 +0000
Received: by outflank-mailman (input) for mailman id 115872;
 Fri, 23 Apr 2021 03:23:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O7KW=JU=invisiblethingslab.com=marmarek@srs-us1.protection.inumbo.net>)
 id 1lZmPF-00056V-Q7
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 03:23:02 +0000
Received: from out1-smtp.messagingengine.com (unknown [66.111.4.25])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7133674c-c0ce-49c3-94a7-0b4c2e98cb67;
 Fri, 23 Apr 2021 03:23:00 +0000 (UTC)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id 79AA65C00E6;
 Thu, 22 Apr 2021 23:23:00 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute3.internal (MEProxy); Thu, 22 Apr 2021 23:23:00 -0400
Received: from mail-itl (ip5b434f04.dynamic.kabel-deutschland.de [91.67.79.4])
 by mail.messagingengine.com (Postfix) with ESMTPA id BA978240054;
 Thu, 22 Apr 2021 23:22:59 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7133674c-c0ce-49c3-94a7-0b4c2e98cb67
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-type:date:from:in-reply-to
	:message-id:mime-version:references:subject:to:x-me-proxy
	:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=TMBZ87
	ZIj72qlTGO9EzQBABC75/I35kqRRc6fQWWK68=; b=pplClVawUClPX62BMVQYYZ
	fEr1hwQlWNiC4kwYZ2PPOge0FX3yNisj+yh0yjOGSKph3fer7sPArg/CHymwbrio
	zUfmZHcFtZRG/p9QEScurSH4TtCZwXYoMTiUBc3hnx+duU3fy+RE2UBOiZqiiLZG
	69E7H/Qx49hIM4cD79dQB80dYVsS/BQuqubXGo9wkkIPGM7p881RxRvETqeETyJp
	2QKhwk6ouV+UHPM2SWVD/si4VAZUOsidO4zlwtlMZIi+uM2Bbn8vsmAWp24+P2c5
	JdBm7rFqxQle2OlpJsNGUi1b/uGzCeVXC8nAXaF/q0fXjYCbgcsqL/RZ8Ua9hNFg
	==
X-ME-Sender: <xms:lD2CYCf6d7cba5V32xTQp7bjvlFPhHRV2kAtP2TmYfAL77WobHKTqw>
    <xme:lD2CYMOovp5hdMnhCHAk8U9WCTLVPYqCBnE69P3R54ZC4RyglUl0rjp06Tb_iv4wF
    lU-lFsEaycqKQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvdduuddgieeiucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepfffhvffukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk
    ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh
    hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeetveff
    iefghfekhffggeeffffhgeevieektedthfehveeiheeiiedtudegfeetffenucfkpheple
    durdeijedrjeelrdegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghi
    lhhfrhhomhepmhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtg
    homh
X-ME-Proxy: <xmx:lD2CYDhl8YcrlKfe5HicqxUmNVbV555bx85prbIDOUhSyggWube50g>
    <xmx:lD2CYP_UO-e8_iVXilIbjupkxbzYqXUaDD6cFk4Tkqw74rokdol6Wg>
    <xmx:lD2CYOuOLu9w85KzYo7aRHdMySJGY7rW9WNwDkL5HBLcGn5JqwBbXQ>
    <xmx:lD2CYM7iyBfAdCozS-FCg031L_8e5m79eCWn_P1c_IxNh1xcY1Q1zg>
Date: Fri, 23 Apr 2021 05:22:54 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: kernel NULL pointer dereference in gntdev_mmap ->
 mmu_interval_notifier_remove
Message-ID: <YII9jv9rJ7QMkG+2@mail-itl>
References: <YHxFtj3dyjFbeusP@mail-itl>
 <68f4d2e3-4b25-58a6-d690-d5854c509354@suse.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="o1x60crC72dVyh1D"
Content-Disposition: inline
In-Reply-To: <68f4d2e3-4b25-58a6-d690-d5854c509354@suse.com>


--o1x60crC72dVyh1D
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Fri, 23 Apr 2021 05:22:54 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: kernel NULL pointer dereference in gntdev_mmap ->
 mmu_interval_notifier_remove

On Mon, Apr 19, 2021 at 11:33:27AM +0200, Juergen Gross wrote:
> Could you try the attached patch?

I've tried and it works, as in - I didn't get the crash in ~20 runs.
Since the issue is quite hard to reproduce, I'm not fully sure it
helped, but sounds plausible. I think you can treat this as Tested-by:
;)

Thanks!

> From 7ff3c32b36279aacef9cf80f4103fc6050759c10 Mon Sep 17 00:00:00 2001
> From: Juergen Gross <jgross@suse.com>
> Date: Mon, 19 Apr 2021 11:15:59 +0200
> Subject: [PATCH] xen/gntdev: fix gntdev_mmap() error exit path
> MIME-Version: 1.0
> Content-Type: text/plain; charset=3DUTF-8
> Content-Transfer-Encoding: 8bit
>=20
> Commit d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
> introduced an error in gntdev_mmap(): in case the call of
> mmu_interval_notifier_insert_locked() fails the exit path should not
> call mmu_interval_notifier_remove().
>=20
> One reason for failure is e.g. a signal pending for the running
> process.
>=20
> Fixes: d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
> Cc: stable@vger.kernel.org
> Reported-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingslab=
=2Ecom>
> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
>  drivers/xen/gntdev.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>=20
> diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
> index f01d58c7a042..a3e7be96527d 100644
> --- a/drivers/xen/gntdev.c
> +++ b/drivers/xen/gntdev.c
> @@ -1017,8 +1017,10 @@ static int gntdev_mmap(struct file *flip, struct v=
m_area_struct *vma)
>  		err =3D mmu_interval_notifier_insert_locked(
>  			&map->notifier, vma->vm_mm, vma->vm_start,
>  			vma->vm_end - vma->vm_start, &gntdev_mmu_ops);
> -		if (err)
> +		if (err) {
> +			map->vma =3D NULL;
>  			goto out_unlock_put;
> +		}
>  	}
>  	mutex_unlock(&priv->lock);
> =20






--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--o1x60crC72dVyh1D
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmCCPY8ACgkQ24/THMrX
1yxDvQf/a5/045ARCP+KU/yraPlWcKOUG6NaUlFLE4V3Y6VVDqjQa6ze/vCGqVkM
BJpMchFGbZ7XkIsRv8ziKMWwNXrP5Jr6jvqDm/HZ9kpItJ4Ulg5JQnD0fnyc11S2
DTc3tnFhMJIx2Vwf4tdI3VmTygWKEMG23w6J3JNTcLCwkHNV0KsuAfCayU0MKpQX
WgrX8OQd7CovCITYFHe2edQ6ol0AeWpJEjacAVFO9wEsslaPZAZCYs4W24WJJqpu
2rHLDqFDxUQJGZHx8LwxnQjkp61og8xXWYxiKxOHqDZSAgspH3qwplIDhIk0KLY8
ul0dfcgjrDhEgjGWOIiPC/yGjoMSrA==
=9/y9
-----END PGP SIGNATURE-----

--o1x60crC72dVyh1D--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 05:23:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 05:23:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115881.221136 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZoHq-0000Wq-Dr; Fri, 23 Apr 2021 05:23:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115881.221136; Fri, 23 Apr 2021 05: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 1lZoHq-0000Wj-8t; Fri, 23 Apr 2021 05:23:30 +0000
Received: by outflank-mailman (input) for mailman id 115881;
 Fri, 23 Apr 2021 05:23:29 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KZGh=JU=amd.com=thomas.lendacky@srs-us1.protection.inumbo.net>)
 id 1lZoHo-0000We-Td
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 05:23:29 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (unknown
 [40.107.237.54]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 097345dc-4c1c-40ab-9983-9bb723e95912;
 Fri, 23 Apr 2021 05:23:27 +0000 (UTC)
Received: from DM5PR12MB1355.namprd12.prod.outlook.com (2603:10b6:3:6e::7) by
 DM6PR12MB2796.namprd12.prod.outlook.com (2603:10b6:5:50::23) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.19; Fri, 23 Apr 2021 05:23:25 +0000
Received: from DM5PR12MB1355.namprd12.prod.outlook.com
 ([fe80::b914:4704:ad6f:aba9]) by DM5PR12MB1355.namprd12.prod.outlook.com
 ([fe80::b914:4704:ad6f:aba9%12]) with mapi id 15.20.4065.023; Fri, 23 Apr
 2021 05:23:25 +0000
Received: from office-linux.texastahm.com (67.79.209.213) by
 SN4PR0201CA0016.namprd02.prod.outlook.com (2603:10b6:803:2b::26) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20 via Frontend
 Transport; Fri, 23 Apr 2021 05:23: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: 097345dc-4c1c-40ab-9983-9bb723e95912
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JJdvkTTJk+AUHTv+SJXmJv5YBSjkEE6GJ3NrLHWN5EwKhs9o4R3xEC3XME339IuM0Q+Up5e50VN2Zc2/Zj/BdF5DhBjcQssU+RkX59g7Z2oR0lHrAs5EL7XhcFddtkww93R98A47Q8hYbyBY4TFieYPzXsNHtb+xJ1ca7htsTsJKzYRgvzYxjgRcLCdSyLRIYzDXakUmdVe09hbVTLARZNPn4zQE/4Zt3WWwsr15mtG40sLk50/UAMh0vf/Flp6A3tVQdYFZyyK6SO1a34h9k85LrgcXB5iKSGi7PZOm+p4VdKSC1GUybUFhnPOjfdUMR+1hll2egiSnNElWMaN7SA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RY4G4M8QTTcCTu/5KMbW8BSCWDpoABobgoE4sdkLTIw=;
 b=eYbjiwkYASj4izCcquz/ond7cNB12CCIbqdenUlz2ttrTPGkuyVltP0epsGdOE8oasEX4cUinYjSNiBkka3/8A9ovHh8ZPnrINv1Wslll5sTXLNn/i43F+ECCA99nWVUtVvfRH97kAdOGm+X3B6hvAeoQna2qo+VMYgG380CA9oVstMKFFEcm5JDLPvJJI/jEDM02+3+fR3476U6OJNqrxTHt68McQyG0OcnHPMYMC1tbCczaNpcqMAe1P4v96qXsay8XvzSzbGsXObSVOANGjc4RAFlWmwXemXMtxyh3qqtZl/cplzKWXth5YGb4cAyUF8y0cMhqMf/G6shIMpPuA==
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=RY4G4M8QTTcCTu/5KMbW8BSCWDpoABobgoE4sdkLTIw=;
 b=nnE7ci27nax07zSmhJ9DhEgFZ83vanxETRrbD3Ux87v8vrsUBKH6MSYcmNfY5F+AD6xB5z2Pf23hRPO/e+n2WA5K2J/4IJ32RSX1uMYt+B4Xl++/DuPyfCj0pYxQYFQ/gZZvtNIFZJtxkgyQliGn3NseDClhDCQhb/jcym4U1So=
Authentication-Results: lists.linux-foundation.org; dkim=none (message not
 signed) header.d=none;lists.linux-foundation.org; dmarc=none action=none
 header.from=amd.com;
Subject: Re: [PATCH 7/7] swiotlb: don't override the command line in
 swiotlb_adjust_size
To: Christoph Hellwig <hch@lst.de>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
 Michael Ellerman <mpe@ellerman.id.au>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>, Juergen Gross
 <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>,
 linux-mips@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
 xen-devel@lists.xenproject.org, iommu@lists.linux-foundation.org
References: <20210422071921.1428607-1-hch@lst.de>
 <20210422071921.1428607-8-hch@lst.de>
From: Tom Lendacky <thomas.lendacky@amd.com>
Message-ID: <5df0f10e-4c70-6554-6cb8-10ea3acde92b@amd.com>
Date: Fri, 23 Apr 2021 00:23:23 -0500
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.1
In-Reply-To: <20210422071921.1428607-8-hch@lst.de>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [67.79.209.213]
X-ClientProxiedBy: SN4PR0201CA0016.namprd02.prod.outlook.com
 (2603:10b6:803:2b::26) To DM5PR12MB1355.namprd12.prod.outlook.com
 (2603:10b6:3:6e::7)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 9580de32-2a97-4345-a99f-08d90617eb6a
X-MS-TrafficTypeDiagnostic: DM6PR12MB2796:
X-Microsoft-Antispam-PRVS:
	<DM6PR12MB27964A541A6E4DF9FC753A39EC459@DM6PR12MB2796.namprd12.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4714;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bf/52Jsd8+fIuaD8hODKcjIlZ35D/mOa5AN0kL0R+btQvaRgBKlBwkKcKZTZ509cPE6g0nO5Chra7vjW/7Vl0jOK909ydqOEM+Od90Qo4O3+8/SF3eR6SxW6IH70VfGH8Ukvr30UQ+SLHGHg/zZsPKzqSgwvMw6dRyAKtmjIFeoUybiY5+vIjZJKX/TEi3gPi68GeQXKkqdvCXauFl5ix1d5BmLjmSPIQDpYtmjE4tkmdIWiaNjYOgEIcZPWjskKfE//Hkh8WviiesFDE7Xwt3iKhv8ktKuIyiJBz0EUo8mihZvSPUWgwF1F+NhRFRIMEh/hHGY+95FqdIKYCHfZNn6VLZ5b3G9tk2ovVVx8UdZDvMa1FlRneI6VlY9/mbZIhDpv1Yr4GYFXXvDJTLnidPeOVy+sxHWJspBL6/5Wxa4zYELbzyS3w5jOU9WMOqjWoFX3lliBcxcnI2/tbBwX53m82ShrH8aO/TjEvL7LnOKtVjGA+yzhB3dCZMeV+MPQ6Yzm7mTXh1rxPnIXqgY/PSWy4UG3/MRZ9WsqJ4UToziLQQWTN6dtoSM7Si8rCN7ZDm9EiIEoraUKZJN4IEMo+Ma98xifrRdlkNxKVbI8NuD9ul8hnTeeIcwzQRY1AyuhB4BLgip92cqtE7iEhFDuT+dgZiQYsJLHEiI7zHADmdx1RQgIBCqE8f8OotnrijR5
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR12MB1355.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(346002)(396003)(39860400002)(366004)(376002)(2616005)(6506007)(316002)(38100700002)(16526019)(86362001)(66476007)(36756003)(8676002)(186003)(53546011)(5660300002)(83380400001)(31696002)(2906002)(66946007)(66556008)(8936002)(54906003)(31686004)(4326008)(26005)(956004)(7416002)(110136005)(6486002)(478600001)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
	=?utf-8?B?aDg4MVM4Wm1oNldrYWlmSUF1VnU2YUw2T1UyNnp3cDVnNjdOTW5UZVJuZ0l6?=
 =?utf-8?B?NFZrM2JRSnBSTG5nckZ2NFJhY2RJWFFRblREbUEyeGFiMEk3dXRnSkM2Z09V?=
 =?utf-8?B?VExScmo0VDQyODVYVFd3clR1dGpsVzdIT3FmclJ5eHFwNE8rZXdXWVVUQzdu?=
 =?utf-8?B?TEFIRzRRbDFKNlpzdWVpQVZYelpJa1lKK2IrV0hTLzJMbFBUeHVPT3BHaGJr?=
 =?utf-8?B?M3ZtdU8zdjdnZCtHQXAxRjArS3B6QnBRemtTWEQ2L0g0czFLdExsYVZyNUVB?=
 =?utf-8?B?VExkTWlha3lMS3BxaHMvaHNxc1BhYWM4TXVNaFdWS1lML2J3NGZ1aWFDeVc3?=
 =?utf-8?B?L1FZcytVN3FWVVYxUkxuaFV0OXc2Q3QzbjlBS296d2oxalVOV1l4VzVKQUlU?=
 =?utf-8?B?cG5DRzc5UnEzUVlJaVp3M0hRbEtsbEhLdVRwRzdPNEhsQmR2ZVVvYXA0MGlp?=
 =?utf-8?B?UGk4dTBtRjdpbXZvR040dXVFWjlGbUNSS255WlA1dGtpYVc5ZkhZU1I4K0lJ?=
 =?utf-8?B?c0lGc01rV3pZclorS2ZiUmFKTHZLaU1WLzhZQmpNWVBSbXZFY2J3ZThMQmRo?=
 =?utf-8?B?YjN2cngrcVF6aDkzUit4ZDBQWDREeklwVGwxSDM3UlhKeUJCK3JyUTRQZ1pk?=
 =?utf-8?B?eE83akcxUnVOem9EVFAxWWZDQ2hZZVc1L25LOVRNZ3MyMHBEOHBoc2tFTjVW?=
 =?utf-8?B?U0RGVDdEOCswTElDK05yVHlhdnVKcW5MemMzSUJQZkxQT3F3ZEY3eDkzVmtw?=
 =?utf-8?B?YkRqbXdtK1lSdGtIaDA1TnFPZ1lzOVR6VG5JYWxOeDJuQnYrKzFVVGlHS3lF?=
 =?utf-8?B?S3NHcytWWTlYYXlpeVIxd29iSHMweW5pemhCek44c2tUc0VMWFpnRFFTS3FE?=
 =?utf-8?B?VzIwK3VNTWxmZ3N0QUpWWWIweTl1c05UWjJZMVIvbWJyQ0cvcTZqeXpEeERH?=
 =?utf-8?B?YVlvUDZwblU1VHBEdGd0UlphT0xCRFM1SFR3aUFzVHJzcS9BVjdObTh5R0NK?=
 =?utf-8?B?aUJ6TVgzQ3ZpS3V5WFBPY0F5VXhYSk9VbVRDT3cyOUJOZXlRRGprMDNKRVUr?=
 =?utf-8?B?SFk1dDlObi83VFhxbDU4NURhbEpQNDY2R0J0bmFMN1QreXNXV011bDAxbmFB?=
 =?utf-8?B?UEtpNWhURGluUHA2eEJiUEM5YTR4WjRCeUxGVlNLYnJzMzhUQStDVk4rTUtE?=
 =?utf-8?B?T1hFMzVVdXY5VGJnNWhHWm4vSWhTZEZxcEp2VHM4TURwWTMvVG1WNjRudWJz?=
 =?utf-8?B?dmxJSW4zbVVDaXR0RE9LQVhKcEFqWlowTFEyODgxODRRcmtSbWtqYXluSEJq?=
 =?utf-8?B?MWtZWnFPT2w3SGtNZnJzT0JySFNMU0RkcFg0emtzbnhmSk80OHpUdk9uRVpr?=
 =?utf-8?B?dEpvbWx2cjl3bllxcFBtczBDc2lwV1B3ZnlvemsxR2lmRHpvY2t0ZHBwckJ2?=
 =?utf-8?B?NERvMFVRSHgvVjRzT0ZuS0F3Q29tbC9LMUpLMWxia3lMeU5SdWlIVzJCZFZB?=
 =?utf-8?B?VytzTzZJazlrenNjYVBkZ3BrMGtMckp2NDJiOEFSRnZPRDFhcU9WVWJuYkFm?=
 =?utf-8?B?dTY5Y1FhTVM1SUVXUHNBaUxYVjVsSWtaNDdhL3kzR2ljQnVQVDNBYjlDNG1q?=
 =?utf-8?B?eFUvblVuV2dKc25NSm1GbmIyc0hVUVUxS0VWb0hNY3NNa3pXdjRYemwrdHFa?=
 =?utf-8?B?OGdNSTN3UHAzeEZobm13Rkdia25vWWVxMjF5MTNheTIyeVVBNmJkWXRoUDhM?=
 =?utf-8?Q?lIpBtONcmB8FHK55uAD/HHLKYuPZOe9K6ylXBhC?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9580de32-2a97-4345-a99f-08d90617eb6a
X-MS-Exchange-CrossTenant-AuthSource: DM5PR12MB1355.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 05:23:25.6554
 (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: TKhf6JG5RsavOCQixlYfMrOKmHaxxw8ROenFmKCOT5gI1AVR++Eg3ftKamtjIrBKqDmSnUxMcgxqX4xvgkHsxA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB2796

On 4/22/21 2:19 AM, Christoph Hellwig wrote:
> When the user specified an explicit swiotlb size on the command line,
> the achitecture code should not override it.
> 
> Fixes: 2cbc2776efe4 ("swiotlb: remove swiotlb_nr_tbl")
> Reported-by: Tom Lendacky <thomas.lendacky@amd.com>
> Signed-off-by: Christoph Hellwig <hch@lst.de>

I tested this patchset and I'm not able to get the override via the
command line or via the SEV adjustment function. Looking at the code,
swiotlb_default_size is initialized, so the call to swiotlb_adjust_size()
always returns without setting the new size.

Thanks,
Tom

> ---
>  kernel/dma/swiotlb.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index 87d06ddf4753f3..aef02a3825b494 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -106,7 +106,9 @@ void swiotlb_set_max_segment(unsigned int val)
>  
>  unsigned long swiotlb_size_or_default(void)
>  {
> -	return swiotlb_default_size;
> +	if (swiotlb_default_size)
> +		return swiotlb_default_size;
> +	return IO_TLB_DEFAULT_SIZE;
>  }
>  
>  void __init swiotlb_adjust_size(unsigned long size)
> @@ -116,6 +118,8 @@ void __init swiotlb_adjust_size(unsigned long size)
>  	 * architectures such as those supporting memory encryption to
>  	 * adjust/expand SWIOTLB size for their use.
>  	 */
> +	if (swiotlb_default_size)
> +		return;
>  	swiotlb_default_size = ALIGN(size, IO_TLB_SEGSIZE << IO_TLB_SHIFT);
>  	pr_info("SWIOTLB bounce buffer size adjusted to %luMB",
>  		swiotlb_default_size >> 20);
> 


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 05:40:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 05:40:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115886.221148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZoYW-0002TF-TY; Fri, 23 Apr 2021 05:40:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115886.221148; Fri, 23 Apr 2021 05: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 1lZoYW-0002T7-PD; Fri, 23 Apr 2021 05:40:44 +0000
Received: by outflank-mailman (input) for mailman id 115886;
 Fri, 23 Apr 2021 05:40:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZoYV-0002T2-JT
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 05:40:43 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b943e409-507d-422d-9926-a6dc5f74275f;
 Fri, 23 Apr 2021 05:40:41 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 900A8AEFF;
 Fri, 23 Apr 2021 05:40: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: b943e409-507d-422d-9926-a6dc5f74275f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619156440; 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=NZgPMke49PfmASyT+K1h7cCq8emc+deK1BAEsqWaEPw=;
	b=nTAr2IN5DBYPkCFqqq+eLwiXMbbGmun0odKrA+jJl9NkITBehpkoRHRYzfVNtvBzmoeuIx
	uYmVjrOyOHPTYfbyo4bnoAYOUgajPgFeLwqQQW5KmbeogJnwctPoA7R3s8xLQFI1UgkAWo
	bsa7Mo+q2jzxdBaftOmifhikTfSdt7I=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	stable@vger.kernel.org,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Subject: [PATCH] xen/gntdev: fix gntdev_mmap() error exit path
Date: Fri, 23 Apr 2021 07:40:38 +0200
Message-Id: <20210423054038.26696-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Commit d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
introduced an error in gntdev_mmap(): in case the call of
mmu_interval_notifier_insert_locked() fails the exit path should not
call mmu_interval_notifier_remove(), as this might result in NULL
dereferences.

One reason for failure is e.g. a signal pending for the running
process.

Fixes: d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
Cc: stable@vger.kernel.org
Reported-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Tested-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/gntdev.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
index f01d58c7a042..a3e7be96527d 100644
--- a/drivers/xen/gntdev.c
+++ b/drivers/xen/gntdev.c
@@ -1017,8 +1017,10 @@ static int gntdev_mmap(struct file *flip, struct vm_area_struct *vma)
 		err = mmu_interval_notifier_insert_locked(
 			&map->notifier, vma->vm_mm, vma->vm_start,
 			vma->vm_end - vma->vm_start, &gntdev_mmu_ops);
-		if (err)
+		if (err) {
+			map->vma = NULL;
 			goto out_unlock_put;
+		}
 	}
 	mutex_unlock(&priv->lock);
 
-- 
2.26.2



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 06:56:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 06:56:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115895.221160 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZpjV-0000zI-N5; Fri, 23 Apr 2021 06:56:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115895.221160; Fri, 23 Apr 2021 06:56: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 1lZpjV-0000zB-Jt; Fri, 23 Apr 2021 06:56:09 +0000
Received: by outflank-mailman (input) for mailman id 115895;
 Fri, 23 Apr 2021 06:56:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=FiSz=JU=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lZpjT-0000z4-Ur
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 06:56:08 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.73]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8f339e62-9a3d-433c-8493-bc27f839cee4;
 Fri, 23 Apr 2021 06:56:02 +0000 (UTC)
Received: from AM5PR1001CA0056.EURPRD10.PROD.OUTLOOK.COM
 (2603:10a6:206:15::33) by VI1PR08MB4446.eurprd08.prod.outlook.com
 (2603:10a6:803:fa::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Fri, 23 Apr
 2021 06:55:57 +0000
Received: from VE1EUR03FT006.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:15:cafe::49) by AM5PR1001CA0056.outlook.office365.com
 (2603:10a6:206:15::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.22 via Frontend
 Transport; Fri, 23 Apr 2021 06:55:57 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT006.mail.protection.outlook.com (10.152.18.116) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Fri, 23 Apr 2021 06:55:57 +0000
Received: ("Tessian outbound 9bcb3c8d6cb1:v90");
 Fri, 23 Apr 2021 06:55:57 +0000
Received: from 1341a400273f.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 FCE8AB21-8A24-4BE8-906C-526E10723F93.1; 
 Fri, 23 Apr 2021 06:55:50 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1341a400273f.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 23 Apr 2021 06:55:50 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR0801MB1837.eurprd08.prod.outlook.com (2603:10a6:800:5a::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.22; Fri, 23 Apr
 2021 06:55:49 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4065.023; Fri, 23 Apr 2021
 06:55:48 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0500.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1ab::19) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.21 via Frontend Transport; Fri, 23 Apr 2021 06:55: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: 8f339e62-9a3d-433c-8493-bc27f839cee4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/DVsJHlnkQQhwysEc4Ngg4uQiSHZykaLsy3ArtIIUSA=;
 b=nJaF8KJTPuH8ynP61qvNfaw4SNMoIlcUytW7SLlzwC6LVU8dI0BU9ZcVq06+E1AY5nn1U+UaqYQZnyKZWxUxX3cK7f7k62LTU3ZbVxyFT7yOrmncKGtk++0ERddOKjV9Zz5huYTVyU1StNxQY8g/tMcAO6y2Lsu9YCBJJbNw1NI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 2a6a0984b83e97ed
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KT0zJojw0oBipAesJIar5F0q2Wa4399ifkkzU2YcPT9/zrjZnU++qBYXFcckbmPVSXmKFo9bF5QKHKaxR1ez0LwYymNC6JpQdjjNft5AYAxK4+3nI5AJogNyA7Lo73MMO5K/DlD5Xz8fBw7Jtj8T3w3K/H+z04pmxBjKGO7GVXBhale9apHSXXQxJ3r66weaxsAfgNttVh+sz3cIN+QmoviQrQTP7fk1re0iAzPfjuK8xXCaU8OAaOrBB1wyuo9ku+LXQ1jGFOgq2ekjYdr5DnyWNAhfqBW8LpEQWvkNxEkFVPch1KFsrMInMMe55ynceuaKrZKuj/WpoWFs7n4QCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/DVsJHlnkQQhwysEc4Ngg4uQiSHZykaLsy3ArtIIUSA=;
 b=M2HamogndtNWl22uOSh1aEpW5KwrikNZiZnzKANOwjQ7XIH3fG7nOkvE3WwUdUMZPuB9Cu60MWjC7onsUm3bLxCsmkv/dXZMwgestWmsZOsqgT/imada0jtzILZSwqKOSZpCUuSWe6dRI2rNhJh8mN2COOX9FLE0bdutYcLBvGJXxWL+BzHBsrk7tZV29IsoyGktQ5AVhKVnsvxJeTKb8TMYZeLQ1NiZifDgGk1jZeM/yEXh5Tk0ah07n2U/0ilyO2Zyd32qMTd+RRzgLYEC5I5icT7iSmg1nctOibVLZK4u7v3U0khrYQY4nycytqsrcppJhk3O9QSzJwfNXWceAA==
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=/DVsJHlnkQQhwysEc4Ngg4uQiSHZykaLsy3ArtIIUSA=;
 b=nJaF8KJTPuH8ynP61qvNfaw4SNMoIlcUytW7SLlzwC6LVU8dI0BU9ZcVq06+E1AY5nn1U+UaqYQZnyKZWxUxX3cK7f7k62LTU3ZbVxyFT7yOrmncKGtk++0ERddOKjV9Zz5huYTVyU1StNxQY8g/tMcAO6y2Lsu9YCBJJbNw1NI=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH] xen/gntdev: fix gntdev_mmap() error exit path
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <20210423054038.26696-1-jgross@suse.com>
Date: Fri, 23 Apr 2021 07:55:38 +0100
Cc: xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 stable@vger.kernel.org,
 =?utf-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <467B8109-C829-4755-8398-196E50090898@arm.com>
References: <20210423054038.26696-1-jgross@suse.com>
To: Juergen Gross <jgross@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0500.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1ab::19) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 97d83854-f99f-4115-b076-08d90624d8a7
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1837:|VI1PR08MB4446:
X-Microsoft-Antispam-PRVS:
	<VI1PR08MB44462DE54070747A63784CD8E4459@VI1PR08MB4446.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 cYtB2DlWqZYF2EDZRcGjqNfxI444xQfwcM8o94uC6DgCmdEGbQhyS2PHS3n7R9F/9XjgIRLNoPj/pdrh5BRqZ2r+aNomeKJpuU5smBClXRcQ0LgBJfmrewAcWg2Kt3B96HF2KDWMomNLiVEFq39c+yks19/oWFCBRNNkxmg88S0QcJ9fSVV3tvcF9M2dRM70b3WZjkwqhHiB3UCd9FfsrcnxE1ZbRoEQAo0jywNqEI7UMZZ7pHwRpr3q18gaN+N03gFYYmqMJWnpzbrX5g782l3Yc4tK7J/1nNaR8Q3Jk1cQI9hqFZ55vVFrdoXNZfl5XtNyCA2nEiGOiwWHfNjyRIFupC6xP5mDA3mxDVMiIMswIqIrs8Z9RuyIA6dGi7PItQDvX3mcwaA+9tWmxnqNz7GiU9tGyHynX/7zUSSfEVnH7D78K/3/HEMc5CdFOZ/rFraUevy0RjpmlRHK9p7lpVKhYoEYlAYh70V41HA+hEqwKBNWXBkHtxuReoPXKEWXg0oI4vR7thCG2cJbKiwzoPeut24o6shptyL5ckuZae0h5fAzsvO2wcySfm/gizejQmoinjd9IX3QENHfGjyW34U/LolPAvyXk63z/dOFeDWyxRY/g/qzVYXzTfhyTljmnzyRaNOu3XC2V23AYbdLz1o0ywqVt+5ORBLCeF0DzGYDbNQZuA18u7Oj2H2z7nbR
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(396003)(39850400004)(376002)(346002)(136003)(6916009)(33656002)(186003)(16526019)(36756003)(52116002)(2906002)(6486002)(4326008)(66574015)(38350700002)(53546011)(54906003)(6666004)(26005)(316002)(38100700002)(7696005)(956004)(8676002)(86362001)(83380400001)(66556008)(8936002)(478600001)(44832011)(66476007)(66946007)(5660300002)(2616005)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
 =?utf-8?Q?bAnAHxtzbBoeuCMKTV288oW/ZSJ3Ye7ZCoZqo+W?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1837
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT006.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	c1b3bab4-c5ca-4b8c-282e-08d90624d2c6
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jB3SXKfPm+owOHwQCEouMOg2LxjyMeiQCVJHfkFIlEXf+K3xN9GwPBRKNYdy+6RXbCFR95tsJtKoI7aRAWhw9zYk6C1ol/q0rSuOL1/DgjWYmIC7DYhvsFqH0VXPxUemdjHw9m02603KY+P63o+t2QEfvDWJ9eDv62JVcBERjfzUs/7q/SnZ7nX3lmidrdiS/6V/rb+apY+1VIPw7fndODATUiSbzgmUBc/NNluYGr+9sOgtTfZcuwDy7bQCSANW2A38CYkaBMiBmTn+Rh8d3Z5ghIsGY26L4TksXdQcVGzQZGvoVoyuGaQrk3cX3Rfo7Rc5B+zun1LXehwgYYgQye056+yFo1LxLD/zWt4l/x8y+IBwGDTdx7FwqAM6QdELXWActXOA+DnynkUZW5TNOXymSVinSDZ7rorVJ5EwMdcbYrgVnfAelF+HDihpCwbZinp6OrXqB902Cn3cqgWMyV9zQj3lI0M4wF3FqeEc+DFkUDeZ6PA/0Dbf5Mcz66EXste4+TX/35DTn3tlh58ZTmR3okgtmSv+uw/6hSg/1YdljTFi1i6lYNyQhT7tRjHSkZWCEKhHLj5elgbPd6wny9C7E+NUNTLlmFWTQIMh+pRo5b5E4LtUD2Nfhv2RLU1NPVrXH5JaGr3yc0ZnVn6VySJeImXdR/NmHVLAx0r853cuRkzHNrAyjvnjX41Z0h7v
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:(4636009)(376002)(136003)(346002)(396003)(39850400004)(36840700001)(46966006)(4326008)(316002)(478600001)(36860700001)(6862004)(47076005)(82740400003)(70586007)(956004)(6486002)(356005)(2906002)(186003)(44832011)(2616005)(8676002)(82310400003)(16526019)(81166007)(83380400001)(36756003)(5660300002)(26005)(8936002)(70206006)(6666004)(336012)(53546011)(34020700004)(33656002)(86362001)(54906003)(7696005)(107886003)(66574015);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 06:55:57.1804
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 97d83854-f99f-4115-b076-08d90624d8a7
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:
	VE1EUR03FT006.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4446



> On 23 Apr 2021, at 06:40, Juergen Gross <jgross@suse.com> wrote:
>=20
> Commit d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
> introduced an error in gntdev_mmap(): in case the call of
> mmu_interval_notifier_insert_locked() fails the exit path should not
> call mmu_interval_notifier_remove(), as this might result in NULL
> dereferences.
>=20
> One reason for failure is e.g. a signal pending for the running
> process.
>=20
> Fixes: d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
> Cc: stable@vger.kernel.org
> Reported-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingslab=
.com>
> Tested-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingslab.c=
om>
> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
> drivers/xen/gntdev.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>=20
> diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
> index f01d58c7a042..a3e7be96527d 100644
> --- a/drivers/xen/gntdev.c
> +++ b/drivers/xen/gntdev.c
> @@ -1017,8 +1017,10 @@ static int gntdev_mmap(struct file *flip, struct v=
m_area_struct *vma)
> 		err =3D mmu_interval_notifier_insert_locked(
> 			&map->notifier, vma->vm_mm, vma->vm_start,
> 			vma->vm_end - vma->vm_start, &gntdev_mmu_ops);
> -		if (err)
> +		if (err) {
> +			map->vma =3D NULL;
> 			goto out_unlock_put;
> +		}
> 	}
> 	mutex_unlock(&priv->lock);
>=20
> --=20
> 2.26.2
>=20
>=20

Hi Juergen,

I can see from the code that there is another path to out_unlock_put label =
some lines before:

        [=E2=80=A6]
        vma->vm_private_data =3D map;
	if (map->flags) {
		if ((vma->vm_flags & VM_WRITE) &&
				(map->flags & GNTMAP_readonly))
			goto out_unlock_put;
	} else {
		map->flags =3D GNTMAP_host_map;
		if (!(vma->vm_flags & VM_WRITE))
			map->flags |=3D GNTMAP_readonly;
	}
        [=E2=80=A6]

Can be the case that use_ptemod is !=3D 0 also for that path?

Cheers,
Luca=


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 07:00:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 07:00:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115899.221172 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZpnk-0001s9-9q; Fri, 23 Apr 2021 07:00:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115899.221172; Fri, 23 Apr 2021 07:00: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 1lZpnk-0001s2-5l; Fri, 23 Apr 2021 07:00:32 +0000
Received: by outflank-mailman (input) for mailman id 115899;
 Fri, 23 Apr 2021 07:00:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZpni-0001rw-Do
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 07:00:30 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 54d7d68c-fc3f-4370-816e-c10cbe377fb7;
 Fri, 23 Apr 2021 07:00:28 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6CAD5AFE2;
 Fri, 23 Apr 2021 07:00: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: 54d7d68c-fc3f-4370-816e-c10cbe377fb7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619161227; 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=3gXh3FGsXDlt+Rrt1Wsm/dUEJBcFCjrIm4/In1CZTGc=;
	b=CoTXtgLIjUHnzL1b7CsMnguagAfqih5iEU0WTUeGVW4ZdrlP5n2grb8OAsdeN3MRxSnaVw
	Uk5ukFz45myh2gUxahLgpj8Kio8qwESo+5N57AO0r/zZe62zKhYF4vxWPI+1CCJxREIyst
	4YFdxBNteM7HJf1hKZzoLgVT9pfbV/g=
Subject: Re: [PATCH] xen/gntdev: fix gntdev_mmap() error exit path
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>, stable@vger.kernel.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= <marmarek@invisiblethingslab.com>
References: <20210423054038.26696-1-jgross@suse.com>
 <467B8109-C829-4755-8398-196E50090898@arm.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <9cb9bd6c-8185-9741-31b9-8f6baf3848a3@suse.com>
Date: Fri, 23 Apr 2021 09:00:26 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <467B8109-C829-4755-8398-196E50090898@arm.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="7ayNSUCrXn5ckIGGaFScYNp0p0tZKBGXJ"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--7ayNSUCrXn5ckIGGaFScYNp0p0tZKBGXJ
Content-Type: multipart/mixed; boundary="LKCNSGiy0nLMI7qsYI7xNT6BUHoXvzqvv";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>, stable@vger.kernel.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= <marmarek@invisiblethingslab.com>
Message-ID: <9cb9bd6c-8185-9741-31b9-8f6baf3848a3@suse.com>
Subject: Re: [PATCH] xen/gntdev: fix gntdev_mmap() error exit path
References: <20210423054038.26696-1-jgross@suse.com>
 <467B8109-C829-4755-8398-196E50090898@arm.com>
In-Reply-To: <467B8109-C829-4755-8398-196E50090898@arm.com>

--LKCNSGiy0nLMI7qsYI7xNT6BUHoXvzqvv
Content-Type: multipart/mixed;
 boundary="------------B36DB28A3BBCE5553396DB97"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------B36DB28A3BBCE5553396DB97
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 23.04.21 08:55, Luca Fancellu wrote:
>=20
>=20
>> On 23 Apr 2021, at 06:40, Juergen Gross <jgross@suse.com> wrote:
>>
>> Commit d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert"=
)
>> introduced an error in gntdev_mmap(): in case the call of
>> mmu_interval_notifier_insert_locked() fails the exit path should not
>> call mmu_interval_notifier_remove(), as this might result in NULL
>> dereferences.
>>
>> One reason for failure is e.g. a signal pending for the running
>> process.
>>
>> Fixes: d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert"=
)
>> Cc: stable@vger.kernel.org
>> Reported-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethings=
lab.com>
>> Tested-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingsla=
b.com>
>> Signed-off-by: Juergen Gross <jgross@suse.com>
>> ---
>> drivers/xen/gntdev.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
>> index f01d58c7a042..a3e7be96527d 100644
>> --- a/drivers/xen/gntdev.c
>> +++ b/drivers/xen/gntdev.c
>> @@ -1017,8 +1017,10 @@ static int gntdev_mmap(struct file *flip, struc=
t vm_area_struct *vma)
>> 		err =3D mmu_interval_notifier_insert_locked(
>> 			&map->notifier, vma->vm_mm, vma->vm_start,
>> 			vma->vm_end - vma->vm_start, &gntdev_mmu_ops);
>> -		if (err)
>> +		if (err) {
>> +			map->vma =3D NULL;
>> 			goto out_unlock_put;
>> +		}
>> 	}
>> 	mutex_unlock(&priv->lock);
>>
>> --=20
>> 2.26.2
>>
>>
>=20
> Hi Juergen,
>=20
> I can see from the code that there is another path to out_unlock_put la=
bel some lines before:
>=20
>          [=E2=80=A6]
>          vma->vm_private_data =3D map;
> 	if (map->flags) {
> 		if ((vma->vm_flags & VM_WRITE) &&
> 				(map->flags & GNTMAP_readonly))
> 			goto out_unlock_put;
> 	} else {
> 		map->flags =3D GNTMAP_host_map;
> 		if (!(vma->vm_flags & VM_WRITE))
> 			map->flags |=3D GNTMAP_readonly;
> 	}
>          [=E2=80=A6]
>=20
> Can be the case that use_ptemod is !=3D 0 also for that path?

map->vma will be NULL in this case, so there will be no problem
resulting from that path.


Juergen

--------------B36DB28A3BBCE5553396DB97
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------B36DB28A3BBCE5553396DB97--

--LKCNSGiy0nLMI7qsYI7xNT6BUHoXvzqvv--

--7ayNSUCrXn5ckIGGaFScYNp0p0tZKBGXJ
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCCcIoFAwAAAAAACgkQsN6d1ii/Ey+w
nAf+O46tcpYGxWRUlmpQz9aXmS/beyu7Al3yBGxj2izhyazpO5pqlpeoFVYYp4lpDFbHLDv8Gk28
mjDKZMjqunQHQPQZHz+mQyb5jV0+nYKMtg8zglbYXSaXKJHNUhFeb3/qrHW2ce0G2XTgPBlrhLzc
FBr2ifE/9GYtTpax4pXB7ZRlVXnyZp4NGNPQyhpzQvwgNeG0ckgpi62mbEKk6tnD2cY4pkacoFfS
kmtkOl8pPp2rgXZBwRTf8wHkWbtd8umWJ0iu9d2hDj4s7imcKny5Cn8h00lgxVcVfXv9j5blEEVc
N/sbGvwfN8pmgP3AI8a/Bupwe88ybpwfo5izuwGrcA==
=zxBS
-----END PGP SIGNATURE-----

--7ayNSUCrXn5ckIGGaFScYNp0p0tZKBGXJ--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 07:01:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 07:01:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115904.221184 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZpor-00020n-Jz; Fri, 23 Apr 2021 07:01:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115904.221184; Fri, 23 Apr 2021 07:01: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 1lZpor-00020g-GJ; Fri, 23 Apr 2021 07:01:41 +0000
Received: by outflank-mailman (input) for mailman id 115904;
 Fri, 23 Apr 2021 07:01: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 1lZpoq-00020W-5O; Fri, 23 Apr 2021 07:01: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 1lZpop-0006rz-VS; Fri, 23 Apr 2021 07:01: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 1lZpop-0002QF-Mn; Fri, 23 Apr 2021 07:01:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZpop-0003jR-MH; Fri, 23 Apr 2021 07:01: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=GkU4E/mOT9GmTm05ZG2WVJ3nhxT6QuxBpoRTG5LeV7Y=; b=SgGZejc8uPCBtz96bruzClPf0I
	Mx0PE1PXLT6jNgx2EymKTZPrMhL83NETjxdOQtASZMsankvucmnZL6BVUzfDkmQP7/IzqVy7z6qMd
	vkfidT15tNqlO6mUbBCTsoOifqai2ESiTluhkDemVwgCMGYt0HQK13y8p6b+IrsKaHd8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161388-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161388: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=b1cffefa1b163bce9aebc3416f562c1d3886eeaa
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 07:01:39 +0000

flight 161388 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161388/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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

version targeted for testing:
 qemuu                b1cffefa1b163bce9aebc3416f562c1d3886eeaa
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  245 days
Failing since        152659  2020-08-21 14:07:39 Z  244 days  451 attempts
Testing same since   161364  2021-04-21 23:21:43 Z    1 days    2 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142972 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 07:05:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 07:05:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115915.221202 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZpsS-0002LJ-Bk; Fri, 23 Apr 2021 07:05:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115915.221202; Fri, 23 Apr 2021 07:05:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZpsS-0002LC-8I; Fri, 23 Apr 2021 07:05:24 +0000
Received: by outflank-mailman (input) for mailman id 115915;
 Fri, 23 Apr 2021 07:05:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=FiSz=JU=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lZpsR-0002L6-Hy
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 07:05:23 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.13.74]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1c0b1159-8aa2-4c23-a44c-e43b4cc63b81;
 Fri, 23 Apr 2021 07:05:22 +0000 (UTC)
Received: from MR2P264CA0049.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:31::13)
 by DB8PR08MB4043.eurprd08.prod.outlook.com (2603:10a6:10:a8::29) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Fri, 23 Apr
 2021 07:05:19 +0000
Received: from VE1EUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:500:31:cafe::aa) by MR2P264CA0049.outlook.office365.com
 (2603:10a6:500:31::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20 via Frontend
 Transport; Fri, 23 Apr 2021 07:05:18 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT061.mail.protection.outlook.com (10.152.19.220) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Fri, 23 Apr 2021 07:05:18 +0000
Received: ("Tessian outbound 47ca92dabae7:v90");
 Fri, 23 Apr 2021 07:05:18 +0000
Received: from 68dad47bbb60.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E35090D1-5DD3-4E3E-B9C1-129D122DE8D9.1; 
 Fri, 23 Apr 2021 07:05:11 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 68dad47bbb60.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 23 Apr 2021 07:05:11 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR0801MB1840.eurprd08.prod.outlook.com (2603:10a6:800:5b::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.23; Fri, 23 Apr
 2021 07:05:05 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4065.023; Fri, 23 Apr 2021
 07:05:05 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LNXP123CA0017.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:d2::29) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4042.21 via Frontend Transport; Fri, 23 Apr 2021 07:05: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: 1c0b1159-8aa2-4c23-a44c-e43b4cc63b81
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vbTuDLLcuOIeG8S0Lhaxa5ixkykOjPLHp7E5lkbcJG8=;
 b=Ox8Ch1IOMgzxr8JR8ji1ZMg1MPiyOul84fzV3+IMBFfl8uURNIwdTvk6iFcccgWhG4lty8JAlMZkzdJjqxnTYThUMRDGmD06AFPRc0suLPHV769CnsRqojLI+pTEF8/nnLUnkq/9iYtsj1FFzGFeQOY8Ho7MK1o8zhPfn5gH4uI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 795107ae783b1025
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bvR4H1dYRq79uQJQywX/VzRwez5Md1ZZdX9+q6mcKuKFMNAUW5WXRZWF4BRDskv3aCfQX5dUeW0qN4J3OKfjhUnQlcPvbepGWUa3d1hQB4kL5tYNYaKRYCjzoO2YC2JT9O+H8+tIa3RwtgV7XNf5TJ/2fSUmHkKBQDdbKK+mXLGedWS8gaDkij582mR20knByO092gf3xB1cyWyDg0yBUMcowQRYBBODq6S+qsyvHZzzEvMA91K0yrahvDxanAGzbhnMax0OwiP2uOopu0VhKUtUgaxbf6n0y3hsUKr/Ao4F3GnXW4DdiOEsfvA9A1x9LjimZkqJ3oGhbqthunxPAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vbTuDLLcuOIeG8S0Lhaxa5ixkykOjPLHp7E5lkbcJG8=;
 b=Y/41BQtupjBUHM5z8qjle3tTIkLmBM6rYaAyXw84sSDUKsMww1QFHtQJ0kCKJD2NuaMC0iaRqF4W4kl0xCsnHTmrs/zbu9aCXOPcL7a+UPjMwINF1wW6NEBEBKhPwXvwBE5uyoDBtsiGIWSHxhcl/cZvYeX+HeW+akP86QAB1dSC3dDmD2E3Xmc8WPqz2sCy6Ammf0i59XFN7n7yu+Tw8TSu+gf+Kb9w7bSzDG9EIyTXieISbwtB8n/6IAYa4IxuM/0lFv+upC7a/MXcYAb23F8dwc5oZHVyLbx16DBZJApuYpa0N9HHY9xhe5tHGyOSg+wzdxZXqvmObJGofQwKnw==
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=vbTuDLLcuOIeG8S0Lhaxa5ixkykOjPLHp7E5lkbcJG8=;
 b=Ox8Ch1IOMgzxr8JR8ji1ZMg1MPiyOul84fzV3+IMBFfl8uURNIwdTvk6iFcccgWhG4lty8JAlMZkzdJjqxnTYThUMRDGmD06AFPRc0suLPHV769CnsRqojLI+pTEF8/nnLUnkq/9iYtsj1FFzGFeQOY8Ho7MK1o8zhPfn5gH4uI=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH] xen/gntdev: fix gntdev_mmap() error exit path
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <9cb9bd6c-8185-9741-31b9-8f6baf3848a3@suse.com>
Date: Fri, 23 Apr 2021 08:04:57 +0100
Cc: xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 stable@vger.kernel.org,
 =?utf-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <92E0F915-499C-4471-B0C9-336494C5E31D@arm.com>
References: <20210423054038.26696-1-jgross@suse.com>
 <467B8109-C829-4755-8398-196E50090898@arm.com>
 <9cb9bd6c-8185-9741-31b9-8f6baf3848a3@suse.com>
To: Juergen Gross <jgross@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LNXP123CA0017.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:d2::29) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 21ca24ff-1399-4b89-6b14-08d90626273a
X-MS-TrafficTypeDiagnostic: VI1PR0801MB1840:|DB8PR08MB4043:
X-Microsoft-Antispam-PRVS:
	<DB8PR08MB4043EFACEA8A4F7CC9D4225DE4459@DB8PR08MB4043.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 k5UtoziOeJS9SyleRwVT7SiivhTWtuFa1R93mny6H8Mwl+d0xlGPDEjvQ4IGvq0vY2eUnpzSLWH+GHIbw5L5uM1VmbhLznI84oLV8LV2tfP8QVGdUcDIfMwVyHs3Z5SUh3YwM4iD1H0BvT6gXzC2xiQEOA4lYjipo6jM3XrfAUQTmDgO3B4UN8Xk6GtGS01eeb5Y/2GqKau1JBBazazHceyBNtVoukI+XTOyKEDK77Ev4xgBLhO8Ur6Qw10hJoGWRpTenDf/MLFT/VwkFHLvoqSzkXH6JK++78Gm0b+3dqk5IiPbW+try0/PGGqTkW44jkIHoqdn7ZFtsmDcKcquKOm75j2s37VNPAOi2KuJln96Ha22ym4MgFCV31AsqHGXdAtq3RfQDOchopIhdtmMfAG92Os+TPZDzj1ZB6Z8RKSOmlIUDPhS3TRtjMpxC/CIlUnu0zrWb7nHWuofmHKXGU91z127zHjmywC1DgiS/6WpOhPVGNIw/sag1wHqOf6eMByDkn1TPPiQdtPq70F1fYLbh5VD9/o9RcMbArPNAtDPMGzyq/RU5VG5FcZW5mO8No5FNQizRgfY/XeXo5CCU6YAu+80dC2REJK2px2S/mvcprPF3sVOELNi3z0fENm5dhnqSI3+hRD/7VnEzc2iuBgOR9HMFhUW7RTzL2JtTp0rtCZPJ6ZB/HS0Cy27XhF4
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(346002)(366004)(136003)(396003)(39850400004)(86362001)(5660300002)(83380400001)(4326008)(36756003)(186003)(66574015)(26005)(33656002)(2906002)(316002)(6666004)(478600001)(6486002)(38100700002)(38350700002)(6916009)(956004)(2616005)(7696005)(66946007)(8936002)(44832011)(66556008)(53546011)(66476007)(52116002)(54906003)(16526019)(8676002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
 =?utf-8?Q?dz/14qZK7Bk3Zu3Zbu65dLugCvVFeEfHNlqKr30?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1840
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	34af11f9-41e5-40c9-c661-08d906261ed9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	upPkqIGrp0sSGcyFBjVQpUQ3h2iFaeB5ZdhyL2xUEsyi3+oUWWR6F/cCOdS/WeHWNA71z9gIoH4gC160fqyRxFVT4zhYvazSUjFiREYpMrhj7MjHIz15DhZhsdwI0WBGRNyK6DB1eskMpd8SdpS9ql/kFnumM+MWKkttw+YNeEIQetQ2LEP5NNnr40qRXlzVpj9TSCq2gc67/dLt9czV0X3pQm+FAPf7y1sufEN5ikZWrbJ68F2FTrr7QCjjY0Hfef9PUJUpA7PNHf3RKdwjibPf72+XsP1qBaFH/Yc56uGLfPAo1wwgt/wEBLyAB11ehwpqOBnTu98auM5WkkThgIFnstaEWXlQqy89aE5Egfj2ormpjq1SFN3QJIf6oloYtvp4KENcajYh++z0/TxURNM3HTzh4Oni1E7pEhoJDkyEQuhZzF6krxgtfLlSz6IP5qYSoXn6QICC3cUJKrfHvIZ1hbdcHT/ieilxpgyUZQb0XcWFXqepOv+PToqqtyjfjmHUw2K+HX9oWQlKc7Om+LJ1jEchTgsBWs9zAYqZkOYAJubICfPHuR2JrFT9se1XyOY+cmM4wZlBjP6+a8uecQzBkJmWFipdrDcjC8HLK11rHqWu+lvU5HFG812R7Rx57xADKA+8RryK2sxKS5vKuiScxKnWQMglZK58NErw4eWtb9nnG3gDfNFVBCjJykAQ
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:(4636009)(39850400004)(136003)(376002)(396003)(346002)(36840700001)(46966006)(34020700004)(7696005)(86362001)(36860700001)(16526019)(186003)(478600001)(26005)(47076005)(70206006)(33656002)(83380400001)(6862004)(82310400003)(356005)(81166007)(70586007)(36756003)(82740400003)(6486002)(336012)(316002)(8936002)(5660300002)(66574015)(8676002)(6666004)(2906002)(956004)(44832011)(107886003)(4326008)(54906003)(53546011)(2616005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 07:05:18.4950
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 21ca24ff-1399-4b89-6b14-08d90626273a
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:
	VE1EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB4043



> On 23 Apr 2021, at 08:00, Juergen Gross <jgross@suse.com> wrote:
>=20
> On 23.04.21 08:55, Luca Fancellu wrote:
>>> On 23 Apr 2021, at 06:40, Juergen Gross <jgross@suse.com> wrote:
>>>=20
>>> Commit d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
>>> introduced an error in gntdev_mmap(): in case the call of
>>> mmu_interval_notifier_insert_locked() fails the exit path should not
>>> call mmu_interval_notifier_remove(), as this might result in NULL
>>> dereferences.
>>>=20
>>> One reason for failure is e.g. a signal pending for the running
>>> process.
>>>=20
>>> Fixes: d3eeb1d77c5d0af ("xen/gntdev: use mmu_interval_notifier_insert")
>>> Cc: stable@vger.kernel.org
>>> Reported-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingsl=
ab.com>
>>> Tested-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingslab=
.com>
>>> Signed-off-by: Juergen Gross <jgross@suse.com>
>>> ---
>>> drivers/xen/gntdev.c | 4 +++-
>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>=20
>>> diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
>>> index f01d58c7a042..a3e7be96527d 100644
>>> --- a/drivers/xen/gntdev.c
>>> +++ b/drivers/xen/gntdev.c
>>> @@ -1017,8 +1017,10 @@ static int gntdev_mmap(struct file *flip, struct=
 vm_area_struct *vma)
>>> 		err =3D mmu_interval_notifier_insert_locked(
>>> 			&map->notifier, vma->vm_mm, vma->vm_start,
>>> 			vma->vm_end - vma->vm_start, &gntdev_mmu_ops);
>>> -		if (err)
>>> +		if (err) {
>>> +			map->vma =3D NULL;
>>> 			goto out_unlock_put;
>>> +		}
>>> 	}
>>> 	mutex_unlock(&priv->lock);
>>>=20
>>> --=20
>>> 2.26.2
>>>=20
>>>=20
>> Hi Juergen,
>> I can see from the code that there is another path to out_unlock_put lab=
el some lines before:
>>         [=E2=80=A6]
>>         vma->vm_private_data =3D map;
>> 	if (map->flags) {
>> 		if ((vma->vm_flags & VM_WRITE) &&
>> 				(map->flags & GNTMAP_readonly))
>> 			goto out_unlock_put;
>> 	} else {
>> 		map->flags =3D GNTMAP_host_map;
>> 		if (!(vma->vm_flags & VM_WRITE))
>> 			map->flags |=3D GNTMAP_readonly;
>> 	}
>>         [=E2=80=A6]
>> Can be the case that use_ptemod is !=3D 0 also for that path?
>=20
> map->vma will be NULL in this case, so there will be no problem
> resulting from that path.
>=20

Right, thanks, seems good to me.

Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>

Cheers,
Luca

>=20
> Juergen
> <OpenPGP_0xB0DE9DD628BF132F.asc>



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 07:11:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 07:11:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115921.221217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZpyQ-0003Dn-3S; Fri, 23 Apr 2021 07:11:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115921.221217; Fri, 23 Apr 2021 07:11: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 1lZpyP-0003Dg-Vm; Fri, 23 Apr 2021 07:11:33 +0000
Received: by outflank-mailman (input) for mailman id 115921;
 Fri, 23 Apr 2021 07:11:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vg7O=JU=lst.de=hch@srs-us1.protection.inumbo.net>)
 id 1lZpyO-0003Db-Rk
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 07:11:32 +0000
Received: from verein.lst.de (unknown [213.95.11.211])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1a26440f-0550-476d-a4c6-d21db0106ed0;
 Fri, 23 Apr 2021 07:11:31 +0000 (UTC)
Received: by verein.lst.de (Postfix, from userid 2407)
 id E833068B05; Fri, 23 Apr 2021 09:11: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: 1a26440f-0550-476d-a4c6-d21db0106ed0
Date: Fri, 23 Apr 2021 09:11:26 +0200
From: Christoph Hellwig <hch@lst.de>
To: Claire Chang <tientzu@chromium.org>
Cc: Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	boris.ostrovsky@oracle.com, jgross@suse.com,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	benh@kernel.crashing.org, paulus@samba.org,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	sstabellini@kernel.org, Robin Murphy <robin.murphy@arm.com>,
	grant.likely@arm.com, xypron.glpk@gmx.de,
	Thierry Reding <treding@nvidia.com>, mingo@kernel.org,
	bauerman@linux.ibm.com, peterz@infradead.org,
	Greg KH <gregkh@linuxfoundation.org>,
	Saravana Kannan <saravanak@google.com>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	heikki.krogerus@linux.intel.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	lkml <linux-kernel@vger.kernel.org>, linuxppc-dev@lists.ozlabs.org,
	xen-devel@lists.xenproject.org,
	Nicolas Boichat <drinkcat@chromium.org>,
	Jim Quinlan <james.quinlan@broadcom.com>, tfiga@chromium.org,
	bskeggs@redhat.com, bhelgaas@google.com, chris@chris-wilson.co.uk,
	daniel@ffwll.ch, airlied@linux.ie, dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com,
	jxgao@google.com, joonas.lahtinen@linux.intel.com,
	linux-pci@vger.kernel.org, maarten.lankhorst@linux.intel.com,
	matthew.auld@intel.com, nouveau@lists.freedesktop.org,
	rodrigo.vivi@intel.com, thomas.hellstrom@linux.intel.com
Subject: Re: [PATCH v5 01/16] swiotlb: Fix the type of index
Message-ID: <20210423071126.GA6404@lst.de>
References: <20210422081508.3942748-1-tientzu@chromium.org> <20210422081508.3942748-2-tientzu@chromium.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210422081508.3942748-2-tientzu@chromium.org>
User-Agent: Mutt/1.5.17 (2007-11-01)

On Thu, Apr 22, 2021 at 04:14:53PM +0800, Claire Chang wrote:
> Fix the type of index from unsigned int to int since find_slots() might
> return -1.
> 
> Fixes: 0774983bc923 ("swiotlb: refactor swiotlb_tbl_map_single")
> Signed-off-by: Claire Chang <tientzu@chromium.org>

Looks good:

Reviewed-by: Christoph Hellwig <hch@lst.de>

it really should go into 5.12.  I'm not sure if Konrad is going to
be able to queue this up due to his vacation, so I'm tempted to just
queue it up in the dma-mapping tree.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 07:30:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 07:30:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115927.221228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZqGl-0005DM-NA; Fri, 23 Apr 2021 07:30:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115927.221228; Fri, 23 Apr 2021 07: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 1lZqGl-0005DF-KI; Fri, 23 Apr 2021 07:30:31 +0000
Received: by outflank-mailman (input) for mailman id 115927;
 Fri, 23 Apr 2021 07:30:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZqGj-0005DA-Ut
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 07:30:30 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e8266b7e-74a0-4850-934b-9bcae9a1d591;
 Fri, 23 Apr 2021 07:30: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: e8266b7e-74a0-4850-934b-9bcae9a1d591
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619163027;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=lUHpFv1925MIF39/R8LuRbyQp22UfWtncBztb3HWbq8=;
  b=Ebe+Tiniys0xbuYo6gvnBMYFpiTkJXlnHgAfnGdrBL/W+IIgx3xmzamP
   LKk+YfqmHuwywcxHgOTFiEoAmrDrht9dwu+lmMgBsP4/agGKuY2t3ZFul
   B55/IVbs4Iy2niGLynzgwj6JOwrHBHlEHKDRtm+eITRKigETllUsYpP0I
   s=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: peFJQ2ea27ksyWlMGr9VfFRnRQnTSJIy1iiLrWR+DYSW0EEls5X7HW+h1kDsm1h29/iTNpMamL
 bmKqqH3sqVuf+fqPkQ2+WtrFWhOfppCU9ZVcbuWI/22fLm2hoQynMhZCN9nRBm5UIwUsoiMd4t
 qFWw5U/BN5dKfDrjXPm4XTDuaaFwsvRkaPZUGQaBl/wz4FhKlhXxp8q/KoffChKsyXXnkP1ATO
 UTTskV1qWTa7wMBa63Ge7MvYxnrxhKIKdeKwp8IUyYALrCzEb+PSnAYijdDBWoQXty+4GzgHo5
 Lqg=
X-SBRS: 5.2
X-MesageID: 42078337
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:qXz8NaxdyIpILJl6y7l3KrPx/uskLtp033Aq2lEZdDV8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr3//dOgbU5F7GkQQXgpS+UPJhvhLGSpwHINg/f0qpm1a
 lme7VjE9GYNzJHpOvz/QXQKbkd6fad9qTAv4nj5lNMaS0vVK169Qd+DW+gYyhLbS1LH4AwGp
 bZxucvnUvCRV0tYs62BmYIUoH4zrWmqLvcbQMbHBli0QGSjFqTg4LSKQSS3RsVTlp0sNUf2F
 XC+jaZ2oyT98uV5zWZ/G/V4pRQlrLau6Z+Lf3JsOc5AHHBjg6pYa5oRrGNuiskydvflGoCoZ
 33jDoLe+h19nPNbkG5yCGdpDXI4XIVxFLJjX+enHf5rsTySFsBerR8rLMcSDT1wQ4EnrhHoc
 V29lPcjbV7J1f8uR64wN7yWxRjhiOP0AEfuN9WtVNze88jcrNLxLZvmn99IdM7Mw/RzpsoK+
 VqBNG03octTXqqK0rUuWRi27WXLw0ONybDRkADv/qc2CRNkEZ4yFMFxNcekm1ozuNEd6V5
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42078337"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j0Ttl+PRrLgMoEavC0E+2vHQ8YwB8JB13NwHPxp27CCPYzXVaYNeBas4ySRlqeV9DZ5C+Qh1KlVTdBLxhM4wCTXjm7WHHdU16mnmyHhDjSsv8FaoaAW72x1XxXf5oM35Ly/LeC0tVFqsmonzXC33L4Yncg5r41uVoMtCZYpx2riek4wWpAXAsd/EXMoIlsNYbVAgMmxS6Zg4t6ZI4ygQd2MsJlgyElwgoF5T6A8uyixVJFR1uwWeXgFrTTegiloaLhwtytl5zjEKQs4Bxfhv/lTK94Th2q3yfV+DFK+BYkMp/RfJn6l0VBwrPE3a/l68xhTyZ0SFTyJXl6gUSAoqgg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LEKD2xhTGErxJ+CKqCKpaKuwc/YRCHmsanolx5nLANI=;
 b=O0QKhdE1HNU9LjmFECKh73aXqgpeM95wdlrFMEPtH+tF5TrcCAuQPgH7Ze4eM/fUGXhkH4gpwRDlgxizVDQ4GJ8I1K4mpyq645fCQxoNraoJxg9I8CTkuPWaBMeJSN0QM0MKyDBBSMG3yxBRueXhhCCKI1NBuUlk1w/QV6tAEXT8wsZfxu1jlCLwRF/5gLKZeur0fOl36Xp8zqPkebZYrobo3tc9bXdkJL/ZX6klqIL/yTsnap+kN21OHOKZn6mIiw4O5nftqSvzLTS8OcC9xKJ+c2W0j0MTNOx8T4zLF+OZrRDPwGcPxZsJPkS1dHRyZARuaICBfo+S8qQ2jFUSTg==
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=LEKD2xhTGErxJ+CKqCKpaKuwc/YRCHmsanolx5nLANI=;
 b=RPUAE/RVpl+wYxzPS46hOO0B5u6w1CQgccfSvEwF/yCDf6f+CtWVtZOTd+oaXLZZQvph0xE1mIknIdxaVo+oDJ5zyJHIIfLCaedUtADULAAKDbUR3VOVX6IQmOcxeYjyFnSXeag7ZUvHx55JP5A//wXOLwwQ/PBKIdAFApn2IAg=
Date: Fri, 23 Apr 2021 09:30:17 +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/8] x86/EFI: keep debug info in xen.efi
Message-ID: <YIJ3icwAoGEW/AO+@Air-de-Roger>
References: <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
 <YIGOrOL+pKGaHqwX@Air-de-Roger>
 <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
 <YIGcE5Cr+xK4K6gw@Air-de-Roger>
 <98431d14-d4a0-61a8-148e-221652f37b61@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <98431d14-d4a0-61a8-148e-221652f37b61@suse.com>
X-ClientProxiedBy: PR3P192CA0009.EURP192.PROD.OUTLOOK.COM
 (2603:10a6:102:56::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: bb9447e8-2b13-4cdb-6578-08d90629a799
X-MS-TrafficTypeDiagnostic: DM5PR03MB3147:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3147B50B55844C7654F5753D8F459@DM5PR03MB3147.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 0VBdI81guA5mynumJ9EZ9+EPycT5EppGb1/Lnb4OZkuzl+IBCTihitX2N1VgMHnnHdpEBngl+ikWg7TR1KtOd5QLqDMnHai1xpKgsmzMP2GONwsy/7tFtekE87DgPTzDo4ny+/4AxNk1gvkBqTS2qITWSbcdLvjvkyUukIWDImLfLnTECd1Jm9BnT5SfSN1WRu9aqiz1AQsYOY+yMC6u+EJfiH093P5J4JF9Qhch4q7GvzfyXz9HEd7USQKZMHQEA6Zbg8By0ClasTDGsxp3KXSSZ9Ly7AMGd/8je4U90W74H7tjtEYspO//W9hHjWZNofKVg+kbe39z1EdggEMQ7M2GleWO3CGAbmlN80BQXu+yskoNIMzAyNR2qh9oKus7jL+xbH7D5w4oPzpwNmKkkETJV82QKua21wR4yQg4EPK9Nu6qC2wkKsYl/4JDE6M8FHrDWiadPJ48P1ixJL5bHotY10NZ+hfqjgn0/0BwpSBMy92VIsy7MlJQXD8a3NmRSrk71DqgGZlhQFiqvu2KOjUipjlhW2sFMtguz329guH2fkJtsBSQOOBZy5Ksq+q84bvhDRcmzoWSlxysog9LUldhXB6GhamImB6Dt5fLc72QXGtUvxscO0mWZL+SUawIJuhWTG1SnLLY2QByb06s59KEE9EWVAkDjK3DZTJXyja9Ezx48VYD2tjvX77Uqso1
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(396003)(346002)(376002)(136003)(39860400002)(6496006)(66946007)(85182001)(8676002)(9686003)(83380400001)(6666004)(2906002)(956004)(316002)(478600001)(4326008)(16526019)(5660300002)(8936002)(186003)(33716001)(86362001)(66476007)(54906003)(6916009)(966005)(53546011)(66556008)(26005)(6486002)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?G57gAMA4ya/SWNNNtyKdxIXlHqc+ifT07QOb4HQ?=
X-MS-Exchange-CrossTenant-Network-Message-Id: bb9447e8-2b13-4cdb-6578-08d90629a799
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 07:30:22.6881
 (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: FljlIRbw/b1vBPhkwm76WmHTcR2GwYlQwsHRns+WDtWFbrDYm4Bp9lSaSMJ7yGnmRrHUNI9Z5KQX6irswPS6+w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3147
X-OriginatorOrg: citrix.com

On Thu, Apr 22, 2021 at 06:01:06PM +0200, Jan Beulich wrote:
> On 22.04.2021 17:53, Roger Pau Monné wrote:
> > On Thu, Apr 22, 2021 at 05:46:28PM +0200, Jan Beulich wrote:
> >> On 22.04.2021 16:56, Roger Pau Monné wrote:
> >>> On Thu, Apr 22, 2021 at 01:03:13PM +0200, Jan Beulich wrote:
> >>>> On 22.04.2021 10:14, Roger Pau Monné wrote:
> >>>>> On Wed, Apr 21, 2021 at 05:38:42PM +0200, Jan Beulich wrote:
> >>>>>> On 21.04.2021 17:30, Roger Pau Monné wrote:
> >>>>>>> On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
> >>>>>>>> On 21.04.2021 13:15, Roger Pau Monné wrote:
> >>>>>>>>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
> >>>>>>>>>> --- a/xen/arch/x86/xen.lds.S
> >>>>>>>>>> +++ b/xen/arch/x86/xen.lds.S
> >>>>>>>>>> @@ -312,10 +312,60 @@ SECTIONS
> >>>>>>>>>>      *(.reloc)
> >>>>>>>>>>      __base_relocs_end = .;
> >>>>>>>>>>    }
> >>>>>>>>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
> >>>>>>>>>> -  . = ALIGN(__section_alignment__);
> >>>>>>>>>> -  DECL_SECTION(.pad) {
> >>>>>>>>>> -    . = ALIGN(MB(16));
> >>>>>>>>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +     *(.debug_abbrev)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_info ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_info)
> >>>>>>>>>> +    *(.gnu.linkonce.wi.*)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_types ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_types)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_str ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_str)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_line ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_line)
> >>>>>>>>>> +    *(.debug_line.*)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_line_str)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_names ALIGN(4) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_names)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_frame)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_loc)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_loclists)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_ranges)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_rnglists)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_addr)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_aranges)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_pubnames)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
> >>>>>>>>>> +    *(.debug_pubtypes)
> >>>>>>>>>> +  }
> >>>>>>>>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
> >>>>>>>>>> +  __image_end__ = .;
> >>>>>>>>>> +  .pad ALIGN(__section_alignment__) : {
> >>>>>>>>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
> >>>>>>>>>
> >>>>>>>>> I think this is inside an ifdef EFI region, since this is DWARF info
> >>>>>>>>> couldn't it also be present when building with EFI disabled?
> >>>>>>>>
> >>>>>>>> Of course (and it's not just "could" but "will"), yet the linker will
> >>>>>>>> do fine (and perhaps even better) without when building ELF. Also
> >>>>>>>> note that we'll be responsible for keeping the list of sections up-to-
> >>>>>>>> date. The linker will recognize Dwarf sections by looking for a
> >>>>>>>> .debug_ prefix. We can't use such here (or at least I'm not aware of
> >>>>>>>> a suitable mechanism); .debug_* would mean munging together all the
> >>>>>>>> different kinds of Dwarf sections. Hence by limiting the explicit
> >>>>>>>> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
> >>>>>>>
> >>>>>>> Right, so we will have to keep this list of debug_ sections updated
> >>>>>>> manually if/when more of those appear as part of DWARF updates?
> >>>>>>
> >>>>>> Yes.
> >>>>>>
> >>>>>>> Do we have a way to get some kind of warning or error when a new
> >>>>>>> section not explicitly handled here appears?
> >>>>>>
> >>>>>> ld 2.37 will start warning about such sections, as they'd land at
> >>>>>> VA 0 and hence below image base.
> >>>>>
> >>>>> That seems like a bug in ld?
> >>>>>
> >>>>> The '--image-base' option description mentions: "This is the lowest
> >>>>> memory location that will be used when your program or dll is
> >>>>> loaded.", so I would expect that if the option is used the default VA
> >>>>> should be >= image-base, or else the description of the option is not
> >>>>> consistent, as ld will still place sections at addresses below
> >>>>> image-base.
> >>>>
> >>>> ld's "general" logic is pretty ELF-centric. Hence debugging sections
> >>>> get placed at VA 0 by default, not matter what the (PE-specific)
> >>>> --image-base says. Whether that's a bug though I'm not sure: There
> >>>> are no really good alternatives that could be used by default. Doing
> >>>> what we do here (and what e.g. Cygwin does) via linker script may not
> >>>> be appropriate in the common case. In particular it is not generally
> >>>> correct for debug info to be part of what gets loaded into memory.
> >>>
> >>> So with this change here you placate the warnings from newer ld about
> >>> having a VA < image base,
> >>
> >> It's not just about silencing the warnings. The resulting image is
> >> unusable when the sections don't get placed at a suitable VA.
> > 
> > And this wasn't an issue before because the linker won't even attempt
> > to place DWARF sections into a PE output.
> 
> No, this wasn't an issue before since, for things to work, we
> simply had to uniformly strip debug info when linking xen.efi. And
> this is what Andrew said should change. I was initially opposed,
> until I saw that Cygwin does just this as well.

Just for my own education, do you have a reference about this way of
packaging debug data by Cygwin?

I've found:

https://cygwin.com/pipermail/cygwin/2003-January/090110.html

Which mentions not setting the ALLOC flag on the debug sections in
order to prevent them from being loaded. I'm however not able to
figure out which flag is that on the PE spec, or whether it can be set
from the linker script.

> >>> but the end result is that now the debug
> >>> sections will also get loaded when booted from the EFI loader?
> >>> (because the NOLOAD doesn't have any effect with PE)
> >>
> >> Yes. I currently see no other way to retain debug info in xen.efi.
> >> But to be clear, the memory debug info occupies isn't lost - we
> >> still free space from _end (or alike) onwards. .reloc, for example,
> >> also lives there. And I was wondering whether we shouldn't keep
> >> .comment this way as well.
> > 
> > Yes, I already realized all this is past _end.
> > 
> > I wonder however if the use of (NOLOAD) makes all this more confusing,
> > such sections should only be present on the linker script used for the
> > PE output, and then the (NOLOAD) doesn't make sense there?
> > 
> > If so, I think the (NOLOAD) directive should be dropped, and a comment
> > noting that the debug sections need to be manually added to the PE
> > output in order to avoid them being placed at VA 0 would be helpful
> > IMO, likely also mentioning that they would be loaded but discarded
> > afterwards by Xen because they are all past _end.
> 
> Earlier on (another sub-thread, maybe) I think I've already said that
> I'd like to keep (NOLOAD) both for documentation purposes and just in
> case the linker develops some smarts to actually translate it into
> anything sensible when linking PE. This is quite different from
> .reloc, after all - that section has to be loaded for our re-
> relocation to work correctly. Hence that section not having (NOLOAD)
> and the debugging sections having it points out the difference.

Sure, that's all fine. I think a comment could be appropriate here, to
note both that NOLOAD is likely useless and just used for
documentation purposes, and to also mention the sections needs to be
explicitly placed in the PE linker script so they are not set at VA 0.

/*
 * Explicitly list debug section for the PE output so that they don't
 * end up at VA 0 which is below image base and thus invalid. Also use
 * the NOLOAD directive, even when currently ignored by PE output, in
 * order to note those sections shouldn't be loaded into memory.
 *
 * Note such sections are past _end, so if loaded will be discarded by
 * Xen anyway.
 */

Feel free to reword or expand the comment. Not sure there's some
reference we could add here about how debug sections are placed in PE
files usually.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 08:04:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 08:04:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115938.221241 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZqnE-0000MV-Jj; Fri, 23 Apr 2021 08:04:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115938.221241; Fri, 23 Apr 2021 08: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 1lZqnE-0000MO-Gd; Fri, 23 Apr 2021 08:04:04 +0000
Received: by outflank-mailman (input) for mailman id 115938;
 Fri, 23 Apr 2021 08:04:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZqnD-0000MJ-Uf
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 08:04:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4bf3fbbb-5c38-43f7-8e94-3a885b0d8d18;
 Fri, 23 Apr 2021 08:04:02 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DACBDAF16;
 Fri, 23 Apr 2021 08:04: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: 4bf3fbbb-5c38-43f7-8e94-3a885b0d8d18
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619165042; 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=HkRlvaYTqjK3GrkRds200WV8JDhuRaotVBC6y/2NlWs=;
	b=DfFUGDPJ05zE9F048eQFJ2HcmiZYSDHQH32l3mNZ6vJnPjHfLRxXEDCditZSn5lzzbxS4y
	O4DcwftOID4UZFzTYbw5Btv3CV0s41wiJ1Ty0CLhIMiowdhgLAiBo+XVDQPllZIu4N6Dlm
	2n9DHlkQ623OUxa4lf3qtTM9T6yxZCw=
Subject: Re: [PATCH v3] xen-blkback: fix compatibility bug with single page
 rings
To: Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org,
 linux-block@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: Paul Durrant <pdurrant@amazon.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, Jens Axboe <axboe@kernel.dk>
References: <20210202175659.18452-1-paul@xen.org>
From: Juergen Gross <jgross@suse.com>
Message-ID: <1327bf3a-f5cf-6e1f-1a0e-e55aeabf787d@suse.com>
Date: Fri, 23 Apr 2021 10:04:00 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210202175659.18452-1-paul@xen.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="HiSLAGeXxpHtgrXTnsn1bi68Vp1T9MZiA"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--HiSLAGeXxpHtgrXTnsn1bi68Vp1T9MZiA
Content-Type: multipart/mixed; boundary="KYOMrkLS20NrNcftsjlupQXkXXuIEx1jr";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org,
 linux-block@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: Paul Durrant <pdurrant@amazon.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, Jens Axboe <axboe@kernel.dk>
Message-ID: <1327bf3a-f5cf-6e1f-1a0e-e55aeabf787d@suse.com>
Subject: Re: [PATCH v3] xen-blkback: fix compatibility bug with single page
 rings
References: <20210202175659.18452-1-paul@xen.org>
In-Reply-To: <20210202175659.18452-1-paul@xen.org>

--KYOMrkLS20NrNcftsjlupQXkXXuIEx1jr
Content-Type: multipart/mixed;
 boundary="------------28833C7213E99D38DDDDA630"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------28833C7213E99D38DDDDA630
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 02.02.21 18:56, Paul Durrant wrote:
> From: Paul Durrant <pdurrant@amazon.com>
>=20
> Prior to commit 4a8c31a1c6f5 ("xen/blkback: rework connect_ring() to av=
oid
> inconsistent xenstore 'ring-page-order' set by malicious blkfront"), th=
e
> behaviour of xen-blkback when connecting to a frontend was:
>=20
> - read 'ring-page-order'
> - if not present then expect a single page ring specified by 'ring-ref'=

> - else expect a ring specified by 'ring-refX' where X is between 0 and
>    1 << ring-page-order
>=20
> This was correct behaviour, but was broken by the afforementioned commi=
t to
> become:
>=20
> - read 'ring-page-order'
> - if not present then expect a single page ring (i.e. ring-page-order =3D=
 0)
> - expect a ring specified by 'ring-refX' where X is between 0 and
>    1 << ring-page-order
> - if that didn't work then see if there's a single page ring specified =
by
>    'ring-ref'
>=20
> This incorrect behaviour works most of the time but fails when a fronte=
nd
> that sets 'ring-page-order' is unloaded and replaced by one that does n=
ot
> because, instead of reading 'ring-ref', xen-blkback will read the stale=

> 'ring-ref0' left around by the previous frontend will try to map the wr=
ong
> grant reference.
>=20
> This patch restores the original behaviour.
>=20
> Fixes: 4a8c31a1c6f5 ("xen/blkback: rework connect_ring() to avoid incon=
sistent xenstore 'ring-page-order' set by malicious blkfront")
> Signed-off-by: Paul Durrant <pdurrant@amazon.com>
> Reviewed-by: Dongli Zhang <dongli.zhang@oracle.com>
> Reviewed-by: "Roger Pau Monn=C3=A9" <roger.pau@citrix.com>

Pushed to xen/tip.git for-linus-5.13


Juergen

--------------28833C7213E99D38DDDDA630
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------28833C7213E99D38DDDDA630--

--KYOMrkLS20NrNcftsjlupQXkXXuIEx1jr--

--HiSLAGeXxpHtgrXTnsn1bi68Vp1T9MZiA
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCCf3AFAwAAAAAACgkQsN6d1ii/Ey9D
LggAiqRlKq5tD+f7ISaZt7G6MbBridODJTOpvzT99wC5fNYKhUCztJbjnWRkcmX6nx+mYPcNvRcW
dJYlxWpFOpPEklUalT5Ovjtcv0ySVDFPNbymx6kI72PpeSmgil4cq1x+o2MeVR13Z0sn8kEfxYXt
o2XX6N+Q8F4aM7+X+ZiI2EoWoc7ZwjGL260dtJZQlTc3rf8ojVHJASVDxVY41JMvEhxpOgJIcUio
pDZMbdminWY3zO6ozl3QYpcYwlkd111vimzYHDnn7j1ez8ED/IsvprntyVJ0AlEBxqdgaPTbtdE+
nu6bsP1MTXO6ZdK+gUNMafQiYVPRBrq3OIdTox9gYw==
=bs1D
-----END PGP SIGNATURE-----

--HiSLAGeXxpHtgrXTnsn1bi68Vp1T9MZiA--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 08:04:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 08:04:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115941.221253 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZqns-0000SR-Tx; Fri, 23 Apr 2021 08:04:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115941.221253; Fri, 23 Apr 2021 08: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 1lZqns-0000Rt-Qn; Fri, 23 Apr 2021 08:04:44 +0000
Received: by outflank-mailman (input) for mailman id 115941;
 Fri, 23 Apr 2021 08:04:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZqnr-0000Ra-Uw
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 08:04:43 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7a43aa86-c47f-4c65-9eaa-77f3120b750b;
 Fri, 23 Apr 2021 08:04:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 43C66AFD7;
 Fri, 23 Apr 2021 08:04: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: 7a43aa86-c47f-4c65-9eaa-77f3120b750b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619165082; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=AQgpXqpqVe/bVy58qF3bnspjQyycb6OTgqVpMz/1hr4=;
	b=XAlNi6xQ5HnYip+nUFUUBHjx4vCyeAfaaz05Dha0p34wu6qDlUtaQ6XVfz3IZFxd+MEyKy
	XVSHRl+FlJ9wSgCIxTp/rdWbPkrwbAuFRKKRlnIvzJgooT66S2otqlr03Zoge8J4glBbdM
	IQ6ufb9/q8uN2XUQgmpNVqnbWebMUHM=
Subject: Re: [PATCH] xen/pciback: Fix incorrect type warnings
To: Muhammad Usama Anjum <musamaanjum@gmail.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 "moderated list:XEN HYPERVISOR INTERFACE" <xen-devel@lists.xenproject.org>,
 open list <linux-kernel@vger.kernel.org>, kernel-janitors@vger.kernel.org,
 colin.king@canonical.com, dan.carpenter@oracle.com
References: <20210326181442.GA1735905@LEGION>
From: Juergen Gross <jgross@suse.com>
Message-ID: <8a07f428-0835-efa5-f285-817229492651@suse.com>
Date: Fri, 23 Apr 2021 10:04:41 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210326181442.GA1735905@LEGION>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="lrp80yW3hM8erKV88EXiHa3NmyISQVXUV"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--lrp80yW3hM8erKV88EXiHa3NmyISQVXUV
Content-Type: multipart/mixed; boundary="5JvMzIyznpelaOsjRxselBNmkpPH1pTgb";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Muhammad Usama Anjum <musamaanjum@gmail.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 "moderated list:XEN HYPERVISOR INTERFACE" <xen-devel@lists.xenproject.org>,
 open list <linux-kernel@vger.kernel.org>, kernel-janitors@vger.kernel.org,
 colin.king@canonical.com, dan.carpenter@oracle.com
Message-ID: <8a07f428-0835-efa5-f285-817229492651@suse.com>
Subject: Re: [PATCH] xen/pciback: Fix incorrect type warnings
References: <20210326181442.GA1735905@LEGION>
In-Reply-To: <20210326181442.GA1735905@LEGION>

--5JvMzIyznpelaOsjRxselBNmkpPH1pTgb
Content-Type: multipart/mixed;
 boundary="------------260D26FC03A0C094DBCEF425"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------260D26FC03A0C094DBCEF425
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 26.03.21 19:14, Muhammad Usama Anjum wrote:
> Correct enum pci_channel_io_normal should be used instead of putting
> integer value 1.
>=20
> Fix following smatch warnings:
> drivers/xen/xen-pciback/pci_stub.c:805:40: warning: incorrect type in a=
rgument 2 (different base types)
> drivers/xen/xen-pciback/pci_stub.c:805:40:    expected restricted pci_c=
hannel_state_t [usertype] state
> drivers/xen/xen-pciback/pci_stub.c:805:40:    got int
> drivers/xen/xen-pciback/pci_stub.c:862:40: warning: incorrect type in a=
rgument 2 (different base types)
> drivers/xen/xen-pciback/pci_stub.c:862:40:    expected restricted pci_c=
hannel_state_t [usertype] state
> drivers/xen/xen-pciback/pci_stub.c:862:40:    got int
> drivers/xen/xen-pciback/pci_stub.c:973:31: warning: incorrect type in a=
rgument 2 (different base types)
> drivers/xen/xen-pciback/pci_stub.c:973:31:    expected restricted pci_c=
hannel_state_t [usertype] state
> drivers/xen/xen-pciback/pci_stub.c:973:31:    got int
>=20
> Signed-off-by: Muhammad Usama Anjum <musamaanjum@gmail.com>

Pushed to xen/tip.git for-linus-5.13


Juergen

--------------260D26FC03A0C094DBCEF425
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------260D26FC03A0C094DBCEF425--

--5JvMzIyznpelaOsjRxselBNmkpPH1pTgb--

--lrp80yW3hM8erKV88EXiHa3NmyISQVXUV
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCCf5kFAwAAAAAACgkQsN6d1ii/Ey9z
Bwf/ef4bUO4tEqa798jN0Xc/MX89v8tXTn2YAGZoh6IEQdzcOHflv6c+Kv6KgGM2G4FyQJfpaWFS
jbCugMrvx85n7JhcuCjZL/KtXzuaU6GI5NmEoTUiRrN6ZWWTEKd19ohSWP+aiVklj5QyD77rgHQp
7GBYTnhtQ3Jwu7MhgJVx+CbHyRn7cX9uIburAqbIqt08jNvD98JZpQVyq1EfT+ZaS+ab5vQDOHi3
JNMw32F52lS+BSQbsEaVKNwFqVeTfvmIV+nqGVbRSu8UsgBC1444cqnOZQyO0MZq/F/XOTGQ5MME
dWmdWyyAVN4yRv8G8XhsWOTg0c42g3Nkhe0Xg6LYcw==
=pE5U
-----END PGP SIGNATURE-----

--lrp80yW3hM8erKV88EXiHa3NmyISQVXUV--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 08:05:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 08:05:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115945.221264 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZqoI-0000YF-76; Fri, 23 Apr 2021 08:05:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115945.221264; Fri, 23 Apr 2021 08:05: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 1lZqoI-0000Y8-44; Fri, 23 Apr 2021 08:05:10 +0000
Received: by outflank-mailman (input) for mailman id 115945;
 Fri, 23 Apr 2021 08:05:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZqoG-0000Y0-Gl
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 08:05:08 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5e9cb5cc-3f81-4dbd-af0f-71608ae29bd6;
 Fri, 23 Apr 2021 08:05:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0B169AD69;
 Fri, 23 Apr 2021 08:05: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: 5e9cb5cc-3f81-4dbd-af0f-71608ae29bd6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619165107; 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=Z+6YpCPUV4ccd1rioanDGpfvVaD+DlEua0cKwyIl52g=;
	b=TA7Yq1Hn4cE2DOaP28V7/XAb1qMmM7nsIhwhQ/kft3tvbcmON7MCUV4emKDxmVxa++32a/
	FMQBoGf6MtG8EqrAMzYPO3NuSfOc75Sg1vMJ98xByRwbjdY1BlF9weP7cm/YVGGm8XiLE/
	FceuMtq8CurZg1AYCOZ9GEd+iGjREWk=
Subject: Re: [PATCH 3/3] xen-pciback: simplify vpci's find hook
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Konrad Wilk <konrad.wilk@oracle.com>
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <5109252b-aa53-2377-13ec-8d3cfe14b351@suse.com>
Date: Fri, 23 Apr 2021 10:05:06 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="sRpLhjY5h1UDMH378KPGCyI5mrUOHu19N"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--sRpLhjY5h1UDMH378KPGCyI5mrUOHu19N
Content-Type: multipart/mixed; boundary="fec24xKKxCNCNTnY62Tl5mp76g1Z0QHWX";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Konrad Wilk <konrad.wilk@oracle.com>
Message-ID: <5109252b-aa53-2377-13ec-8d3cfe14b351@suse.com>
Subject: Re: [PATCH 3/3] xen-pciback: simplify vpci's find hook
References: <d2ac85d9-0ad1-71a3-fa3b-b99340b3204d@suse.com>
 <158273a2-d1b9-3545-b25d-affca867376c@suse.com>
In-Reply-To: <158273a2-d1b9-3545-b25d-affca867376c@suse.com>

--fec24xKKxCNCNTnY62Tl5mp76g1Z0QHWX
Content-Type: multipart/mixed;
 boundary="------------2C9285B894172A88EAE8A0F7"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------2C9285B894172A88EAE8A0F7
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 07.04.21 16:37, Jan Beulich wrote:
> There's no point in comparing SBDF - we can simply compare the struct
> pci_dev pointers. If they weren't the same for a given device, we'd hav=
e
> bigger problems from having stored a stale pointer.
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Pushed to xen/tip.git for-linus-5.13


Juergen

--------------2C9285B894172A88EAE8A0F7
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------2C9285B894172A88EAE8A0F7--

--fec24xKKxCNCNTnY62Tl5mp76g1Z0QHWX--

--sRpLhjY5h1UDMH378KPGCyI5mrUOHu19N
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCCf7IFAwAAAAAACgkQsN6d1ii/Ey+S
MggAmToJjKAEubOQ94UxGwDfSrwt9/Gxw7lGdPUZMhOGWiVIOMx7RFnqxQ2ZsMhy+Ir4fWC1sJ2J
7GDjN0rzq9A9DAk3LOpvpa1zI8cI8OSenoRyamR7Fuj04qWgIpfzUz7CFaSWQOhwNaObCvdGPPXD
aWEtV4O/V44WfmprPs1LZtT9FbDZcfQUsn6H14Ze3jnJUtJH+upGi+paSWK3bOugypjJozSKHcsX
qLz2cw3/iKbuwWR+nzEY36ixEsKfZ0PyDmrb/D/L+46wwck8zgf5MI+KFJKTmzk/VV1zaH1q5MAy
4qq1CuCXyYBlpTNElgsDMHWS43hPbLrM+l6yswY01g==
=SxVw
-----END PGP SIGNATURE-----

--sRpLhjY5h1UDMH378KPGCyI5mrUOHu19N--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 08:05:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 08:05:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115949.221276 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZqol-0000em-FS; Fri, 23 Apr 2021 08:05:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115949.221276; Fri, 23 Apr 2021 08:05: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 1lZqol-0000ef-CQ; Fri, 23 Apr 2021 08:05:39 +0000
Received: by outflank-mailman (input) for mailman id 115949;
 Fri, 23 Apr 2021 08:05:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZqoj-0000e9-Pp
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 08:05:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c8590789-caad-471b-9e61-efb3a5acab07;
 Fri, 23 Apr 2021 08:05:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1F13AB080;
 Fri, 23 Apr 2021 08:05: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: c8590789-caad-471b-9e61-efb3a5acab07
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619165135; 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=EfBBQQctPna0dlqKuDq5uBTkMpfxT/mlGGC3KyebVT4=;
	b=TAIEFU5klJzwxgc3kY6CJAMLhbsFxeg/QD2VFyFfi6tS+zmupVxZJ1bxlfgP5Ccav5AOk8
	Ce87htVdXnE3CxS/rWxHxNrmGl7ayTnWDGk7XMv6OPGBM4aeGZeYCNuo1yntholBTWOSyC
	ReADnXbC/7+3DfKGHadifsYV6fapbfo=
Subject: Re: [PATCH] xen: Remove support for PV ACPI cpu/memory hotplug
To: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, rafael@kernel.org, linux-kernel@vger.kernel.org
References: <1618336344-3162-1-git-send-email-boris.ostrovsky@oracle.com>
From: Juergen Gross <jgross@suse.com>
Message-ID: <bc87249e-9ca7-8746-0acb-c74290a49910@suse.com>
Date: Fri, 23 Apr 2021 10:05:34 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <1618336344-3162-1-git-send-email-boris.ostrovsky@oracle.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="yG0mwjc9rgIW6S3MiUtiVtkkHx2HQ8IAr"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--yG0mwjc9rgIW6S3MiUtiVtkkHx2HQ8IAr
Content-Type: multipart/mixed; boundary="d4HwASjpKkwit4PlOUN3W8KDfy35cc1HZ";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, rafael@kernel.org, linux-kernel@vger.kernel.org
Message-ID: <bc87249e-9ca7-8746-0acb-c74290a49910@suse.com>
Subject: Re: [PATCH] xen: Remove support for PV ACPI cpu/memory hotplug
References: <1618336344-3162-1-git-send-email-boris.ostrovsky@oracle.com>
In-Reply-To: <1618336344-3162-1-git-send-email-boris.ostrovsky@oracle.com>

--d4HwASjpKkwit4PlOUN3W8KDfy35cc1HZ
Content-Type: multipart/mixed;
 boundary="------------BD6622B2ED14218016AADC87"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------BD6622B2ED14218016AADC87
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 13.04.21 19:52, Boris Ostrovsky wrote:
> Commit 76fc253723ad ("xen/acpi-stub: Disable it b/c the acpi_processor_=
add
> is no longer called.") declared as BROKEN support for Xen ACPI stub (wh=
ich
> is required for xen-acpi-{cpu|memory}-hotplug) and suggested that this
> is temporary and will be soon fixed. This was in March 2013.
>=20
> Further, commit cfafae940381 ("xen: rename dom0_op to platform_op")
> renamed an interface used by memory hotplug code without updating that
> code (as it was BROKEN and therefore not compiled). This was
> in November 2015 and has gone unnoticed for over 5 year.
>=20
> It is now clear that this code is of no interest to anyone and therefor=
e
> should be removed.
>=20
> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>

Pushed to xen/tip.git for-linus-5.13


Juergen


--------------BD6622B2ED14218016AADC87
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------BD6622B2ED14218016AADC87--

--d4HwASjpKkwit4PlOUN3W8KDfy35cc1HZ--

--yG0mwjc9rgIW6S3MiUtiVtkkHx2HQ8IAr
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCCf84FAwAAAAAACgkQsN6d1ii/Ey/t
dQf+O3mDv5rAdo78PrFclGElyubJL6oAfCO5AnCluJCIg6MAa1QZa66gnRYfZwWPK5gah2oi07og
Q1RyWY9ZEY+NaK5q67cnpjuNbGwXEgRHzJL5XZ/Ap17UCTe0mYRY0zUIWXhJcntsw/QTIJk3TqoW
sKzpemMm62Ye+RpRYjDcBE7OA7a72En1jQZk2fGfiCK+PsARa02RvJ6N1joeLmQpaoapPUrXNWLG
bgkB+2OfF/gSDNJaquG4wQXRhxj/Hz3ex5MpDdyNGRGqAaEDsO5C0BI7pQ+0JcnsrlNwIupzCDzY
jSrDogDqLHOY69L2gLz641gfCqhL+/pR2jczaBjRHw==
=X13G
-----END PGP SIGNATURE-----

--yG0mwjc9rgIW6S3MiUtiVtkkHx2HQ8IAr--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 08:05:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 08:05:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115950.221289 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZqoq-0000hy-T4; Fri, 23 Apr 2021 08:05:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115950.221289; Fri, 23 Apr 2021 08:05:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZqoq-0000hr-PX; Fri, 23 Apr 2021 08:05:44 +0000
Received: by outflank-mailman (input) for mailman id 115950;
 Fri, 23 Apr 2021 08:05:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZqoq-0000hW-1w
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 08:05:44 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c19b3faf-ae91-4c3c-b3d6-05d3b47a8486;
 Fri, 23 Apr 2021 08:05:43 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 77DCDAD69;
 Fri, 23 Apr 2021 08:05: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: c19b3faf-ae91-4c3c-b3d6-05d3b47a8486
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619165142; 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=Jasu6yk2IA4zFYev9Y7M8RjEkfW0qQ9vxYUohK6/c3s=;
	b=bWd3bGN8e03ITJif5n9laXMeQix8PoGTewf/JA8s84AB0WiRGs9yCX3AYdQBYSNMN63c9P
	/dfSchmWYCSlDNfxQDVY7vG2SSzGfIDVQ5l6/bFiu1GAjgss0uAyfo7ndTno52HVFXRnZA
	QvPDU9T56+s6ZY+WGs3Mr0vdGta1vgE=
Subject: Re: [PATCH] xen-blkfront: Fix 'physical' typos
To: Bjorn Helgaas <helgaas@kernel.org>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Jens Axboe <axboe@kernel.dk>
Cc: xen-devel@lists.xenproject.org, Bjorn Helgaas <bhelgaas@google.com>
References: <20210126205509.2917606-1-helgaas@kernel.org>
From: Juergen Gross <jgross@suse.com>
Message-ID: <cabd994a-e3e6-3c80-3539-1ab95a251c73@suse.com>
Date: Fri, 23 Apr 2021 10:05:41 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210126205509.2917606-1-helgaas@kernel.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="PfjFVBQB5nKpyDoAgxEXfXxT9P7igg0SJ"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--PfjFVBQB5nKpyDoAgxEXfXxT9P7igg0SJ
Content-Type: multipart/mixed; boundary="wLoOzezHovbfQCqX4qMv36fjEaOfgcT7e";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Bjorn Helgaas <helgaas@kernel.org>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Jens Axboe <axboe@kernel.dk>
Cc: xen-devel@lists.xenproject.org, Bjorn Helgaas <bhelgaas@google.com>
Message-ID: <cabd994a-e3e6-3c80-3539-1ab95a251c73@suse.com>
Subject: Re: [PATCH] xen-blkfront: Fix 'physical' typos
References: <20210126205509.2917606-1-helgaas@kernel.org>
In-Reply-To: <20210126205509.2917606-1-helgaas@kernel.org>

--wLoOzezHovbfQCqX4qMv36fjEaOfgcT7e
Content-Type: multipart/mixed;
 boundary="------------C7D42CCBFEE24D5447147948"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------C7D42CCBFEE24D5447147948
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 26.01.21 21:55, Bjorn Helgaas wrote:
> From: Bjorn Helgaas <bhelgaas@google.com>
>=20
> Fix misspelling of "physical".
>=20
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>

Pushed to xen/tip.git for-linus-5.13


Juergen

--------------C7D42CCBFEE24D5447147948
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------C7D42CCBFEE24D5447147948--

--wLoOzezHovbfQCqX4qMv36fjEaOfgcT7e--

--PfjFVBQB5nKpyDoAgxEXfXxT9P7igg0SJ
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCCf9UFAwAAAAAACgkQsN6d1ii/Ey8C
xAf7BoKoUTwXC9xxOXa2zEWeKDOT5oQHHH+Iy0ryGmsHKBROhEraecTLeldAPdMQ4RACW9NCgS2n
pOwyJtITFbzwYRIbDiH+lsuYtHGYMD4wwpgC3F0lZ3p6e/yVw0d7TOobjLgYSQU57ZWKAnSvRzrk
GdRS8tqmELTdnxCd8FyPnBmo4dUksQ6o+GTZDtU9KsurFL/iLilpSq0jWY4yp1wXWmFtmVKmFGyc
m9xG6IgPLMcCBXuh1ZuZr7An5eMJIxQDxdH/B3mBnf16pu0Q0olbFJRrksx6AW5eR8YLbjf6GIUg
IxJ+Bk4bOltYYqilAG6zqIBvPu27dROTp3i6N0qhVQ==
=P3Xp
-----END PGP SIGNATURE-----

--PfjFVBQB5nKpyDoAgxEXfXxT9P7igg0SJ--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 08:29:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 08:29:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115968.221301 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZrBy-00030v-SG; Fri, 23 Apr 2021 08:29:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115968.221301; Fri, 23 Apr 2021 08: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 1lZrBy-00030o-OX; Fri, 23 Apr 2021 08:29:38 +0000
Received: by outflank-mailman (input) for mailman id 115968;
 Fri, 23 Apr 2021 08:29: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 1lZrBx-00030N-Gm; Fri, 23 Apr 2021 08:29: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 1lZrBx-0000MI-8n; Fri, 23 Apr 2021 08:29: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 1lZrBx-0005eG-1p; Fri, 23 Apr 2021 08:29:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZrBx-0005SO-1L; Fri, 23 Apr 2021 08:29:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=WEkRjFZesAWTJyC3G1+wPxZ59UePOiSVBknBc5FBuAc=; b=qimQ79zUcCqD9w6tbWJ5N2Yyks
	h1rFv4GHbVr8jwfYf5Oy1GjZUczUGtbApmudcKEGfFynnSIpgCJgsvNwe/VXPayfgLsdGfqpxHSE7
	wgT7AB8MYRMzRzmf3G/+A/ncVXgJgzRnWy0UwKY/WLPEyi0llfC5V5mV5G+aDYLmdHpA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161398-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161398: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=509d9b5b9f539cebaaa905437ba58b5a80a4d4a4
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 08:29:37 +0000

flight 161398 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161398/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              509d9b5b9f539cebaaa905437ba58b5a80a4d4a4
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  287 days
Failing since        151818  2020-07-11 04:18:52 Z  286 days  279 attempts
Testing same since   161398  2021-04-23 04:20:02 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastian Germann <bastiangermann@fishpost.de>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 54399 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 08:51:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 08:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115977.221316 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZrXM-0005jO-Ny; Fri, 23 Apr 2021 08:51:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115977.221316; Fri, 23 Apr 2021 08: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 1lZrXM-0005jH-Jh; Fri, 23 Apr 2021 08:51:44 +0000
Received: by outflank-mailman (input) for mailman id 115977;
 Fri, 23 Apr 2021 08:51:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZrXL-0005jC-8v
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 08:51:43 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0f56d0d4-c060-497f-b9fe-5626b23edad4;
 Fri, 23 Apr 2021 08:51:41 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7BFADAFF6;
 Fri, 23 Apr 2021 08:51: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: 0f56d0d4-c060-497f-b9fe-5626b23edad4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619167900; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=EJRbJARp9Jqjvbm2dOXwJ/2spzu93AyQ9/E2OwMXc3M=;
	b=ESyc+xXq2XsC8UsSy6AothWZL+k9jM/2/ckW5SCuEYgtIkFLFkWQkgK/BOX643RyimeTP0
	5Tnwg8W/YqzeN05/Jxz9jb4jkMho8lF+sTi4zHYMLDzE8quBvkzJf4PffYVB6NdxDYiGXC
	JHzKN9Qs4Z/7j/M34m6EPlfJfcClaJU=
Subject: Re: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
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: <YIAJP0SCq0nOKZVL@Air-de-Roger>
 <6023c1d3-4f50-d207-1ea1-30dd1d5f68d2@suse.com>
 <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
 <YIGOrOL+pKGaHqwX@Air-de-Roger>
 <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
 <YIGcE5Cr+xK4K6gw@Air-de-Roger>
 <98431d14-d4a0-61a8-148e-221652f37b61@suse.com>
 <YIJ3icwAoGEW/AO+@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <32bba278-12cc-d105-7b95-6a788992d70c@suse.com>
Date: Fri, 23 Apr 2021 10:51:40 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIJ3icwAoGEW/AO+@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 09:30, Roger Pau Monné wrote:
> On Thu, Apr 22, 2021 at 06:01:06PM +0200, Jan Beulich wrote:
>> On 22.04.2021 17:53, Roger Pau Monné wrote:
>>> On Thu, Apr 22, 2021 at 05:46:28PM +0200, Jan Beulich wrote:
>>>> On 22.04.2021 16:56, Roger Pau Monné wrote:
>>>>> On Thu, Apr 22, 2021 at 01:03:13PM +0200, Jan Beulich wrote:
>>>>>> On 22.04.2021 10:14, Roger Pau Monné wrote:
>>>>>>> On Wed, Apr 21, 2021 at 05:38:42PM +0200, Jan Beulich wrote:
>>>>>>>> On 21.04.2021 17:30, Roger Pau Monné wrote:
>>>>>>>>> On Wed, Apr 21, 2021 at 03:06:36PM +0200, Jan Beulich wrote:
>>>>>>>>>> On 21.04.2021 13:15, Roger Pau Monné wrote:
>>>>>>>>>>> On Thu, Apr 01, 2021 at 11:47:03AM +0200, Jan Beulich wrote:
>>>>>>>>>>>> --- a/xen/arch/x86/xen.lds.S
>>>>>>>>>>>> +++ b/xen/arch/x86/xen.lds.S
>>>>>>>>>>>> @@ -312,10 +312,60 @@ SECTIONS
>>>>>>>>>>>>      *(.reloc)
>>>>>>>>>>>>      __base_relocs_end = .;
>>>>>>>>>>>>    }
>>>>>>>>>>>> -  /* Trick the linker into setting the image size to exactly 16Mb. */
>>>>>>>>>>>> -  . = ALIGN(__section_alignment__);
>>>>>>>>>>>> -  DECL_SECTION(.pad) {
>>>>>>>>>>>> -    . = ALIGN(MB(16));
>>>>>>>>>>>> +  .debug_abbrev ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +     *(.debug_abbrev)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_info ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_info)
>>>>>>>>>>>> +    *(.gnu.linkonce.wi.*)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_types ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_types)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_str ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_str)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_line ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_line)
>>>>>>>>>>>> +    *(.debug_line.*)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_line_str ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_line_str)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_names ALIGN(4) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_names)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_frame ALIGN(4) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_frame)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_loc ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_loc)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_loclists ALIGN(4) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_loclists)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_ranges ALIGN(8) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_ranges)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_rnglists ALIGN(4) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_rnglists)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_addr ALIGN(8) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_addr)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_aranges ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_aranges)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_pubnames ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_pubnames)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  .debug_pubtypes ALIGN(1) (NOLOAD) : {
>>>>>>>>>>>> +    *(.debug_pubtypes)
>>>>>>>>>>>> +  }
>>>>>>>>>>>> +  /* Trick the linker into setting the image size to no less than 16Mb. */
>>>>>>>>>>>> +  __image_end__ = .;
>>>>>>>>>>>> +  .pad ALIGN(__section_alignment__) : {
>>>>>>>>>>>> +    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
>>>>>>>>>>>
>>>>>>>>>>> I think this is inside an ifdef EFI region, since this is DWARF info
>>>>>>>>>>> couldn't it also be present when building with EFI disabled?
>>>>>>>>>>
>>>>>>>>>> Of course (and it's not just "could" but "will"), yet the linker will
>>>>>>>>>> do fine (and perhaps even better) without when building ELF. Also
>>>>>>>>>> note that we'll be responsible for keeping the list of sections up-to-
>>>>>>>>>> date. The linker will recognize Dwarf sections by looking for a
>>>>>>>>>> .debug_ prefix. We can't use such here (or at least I'm not aware of
>>>>>>>>>> a suitable mechanism); .debug_* would mean munging together all the
>>>>>>>>>> different kinds of Dwarf sections. Hence by limiting the explicit
>>>>>>>>>> enumeration to PE, I'm trying to avoid anomalies in ELF down the road.
>>>>>>>>>
>>>>>>>>> Right, so we will have to keep this list of debug_ sections updated
>>>>>>>>> manually if/when more of those appear as part of DWARF updates?
>>>>>>>>
>>>>>>>> Yes.
>>>>>>>>
>>>>>>>>> Do we have a way to get some kind of warning or error when a new
>>>>>>>>> section not explicitly handled here appears?
>>>>>>>>
>>>>>>>> ld 2.37 will start warning about such sections, as they'd land at
>>>>>>>> VA 0 and hence below image base.
>>>>>>>
>>>>>>> That seems like a bug in ld?
>>>>>>>
>>>>>>> The '--image-base' option description mentions: "This is the lowest
>>>>>>> memory location that will be used when your program or dll is
>>>>>>> loaded.", so I would expect that if the option is used the default VA
>>>>>>> should be >= image-base, or else the description of the option is not
>>>>>>> consistent, as ld will still place sections at addresses below
>>>>>>> image-base.
>>>>>>
>>>>>> ld's "general" logic is pretty ELF-centric. Hence debugging sections
>>>>>> get placed at VA 0 by default, not matter what the (PE-specific)
>>>>>> --image-base says. Whether that's a bug though I'm not sure: There
>>>>>> are no really good alternatives that could be used by default. Doing
>>>>>> what we do here (and what e.g. Cygwin does) via linker script may not
>>>>>> be appropriate in the common case. In particular it is not generally
>>>>>> correct for debug info to be part of what gets loaded into memory.
>>>>>
>>>>> So with this change here you placate the warnings from newer ld about
>>>>> having a VA < image base,
>>>>
>>>> It's not just about silencing the warnings. The resulting image is
>>>> unusable when the sections don't get placed at a suitable VA.
>>>
>>> And this wasn't an issue before because the linker won't even attempt
>>> to place DWARF sections into a PE output.
>>
>> No, this wasn't an issue before since, for things to work, we
>> simply had to uniformly strip debug info when linking xen.efi. And
>> this is what Andrew said should change. I was initially opposed,
>> until I saw that Cygwin does just this as well.
> 
> Just for my own education, do you have a reference about this way of
> packaging debug data by Cygwin?

I've simply built a test program and looked at the binary. The best
reference I could think of is their default linker script in binutils
(ld/scripttempl/pep.sc).

> I've found:
> 
> https://cygwin.com/pipermail/cygwin/2003-January/090110.html
> 
> Which mentions not setting the ALLOC flag on the debug sections in
> order to prevent them from being loaded. I'm however not able to
> figure out which flag is that on the PE spec, or whether it can be set
> from the linker script.

There's no truly corresponding flag in COFF.

>>>>> but the end result is that now the debug
>>>>> sections will also get loaded when booted from the EFI loader?
>>>>> (because the NOLOAD doesn't have any effect with PE)
>>>>
>>>> Yes. I currently see no other way to retain debug info in xen.efi.
>>>> But to be clear, the memory debug info occupies isn't lost - we
>>>> still free space from _end (or alike) onwards. .reloc, for example,
>>>> also lives there. And I was wondering whether we shouldn't keep
>>>> .comment this way as well.
>>>
>>> Yes, I already realized all this is past _end.
>>>
>>> I wonder however if the use of (NOLOAD) makes all this more confusing,
>>> such sections should only be present on the linker script used for the
>>> PE output, and then the (NOLOAD) doesn't make sense there?
>>>
>>> If so, I think the (NOLOAD) directive should be dropped, and a comment
>>> noting that the debug sections need to be manually added to the PE
>>> output in order to avoid them being placed at VA 0 would be helpful
>>> IMO, likely also mentioning that they would be loaded but discarded
>>> afterwards by Xen because they are all past _end.
>>
>> Earlier on (another sub-thread, maybe) I think I've already said that
>> I'd like to keep (NOLOAD) both for documentation purposes and just in
>> case the linker develops some smarts to actually translate it into
>> anything sensible when linking PE. This is quite different from
>> .reloc, after all - that section has to be loaded for our re-
>> relocation to work correctly. Hence that section not having (NOLOAD)
>> and the debugging sections having it points out the difference.
> 
> Sure, that's all fine. I think a comment could be appropriate here, to
> note both that NOLOAD is likely useless and just used for
> documentation purposes, and to also mention the sections needs to be
> explicitly placed in the PE linker script so they are not set at VA 0.
> 
> /*
>  * Explicitly list debug section for the PE output so that they don't
>  * end up at VA 0 which is below image base and thus invalid. Also use
>  * the NOLOAD directive, even when currently ignored by PE output, in
>  * order to note those sections shouldn't be loaded into memory.
>  *
>  * Note such sections are past _end, so if loaded will be discarded by
>  * Xen anyway.
>  */
> 
> Feel free to reword or expand the comment.

Yes, I've edited it some while inserting. Will see to get to
submitting v2 then.

> Not sure there's some
> reference we could add here about how debug sections are placed in PE
> files usually.

As said before - I don't think there's any "usually" here, which is
why different environments have invented different ways. The debug
info native to COFF is more like ELF's symbol table (with a little
bit of extra information) plus Dwarf's .debug_line, but not really
fully covering what you'd expect from debug info.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:36:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:36:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115995.221334 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsER-0001Wx-EO; Fri, 23 Apr 2021 09:36:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115995.221334; Fri, 23 Apr 2021 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 1lZsER-0001Wq-BU; Fri, 23 Apr 2021 09:36:15 +0000
Received: by outflank-mailman (input) for mailman id 115995;
 Fri, 23 Apr 2021 09:36:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZsEQ-0001Wl-AU
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:36:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 19b63ea5-89a2-4b5b-93d6-7f379df70717;
 Fri, 23 Apr 2021 09:36:13 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 38139AEC2;
 Fri, 23 Apr 2021 09:36: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: 19b63ea5-89a2-4b5b-93d6-7f379df70717
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619170572; 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=RmLe1O+3ff2TQ1FdTrJScYCHmQhBjBXhSfJ3gw+6osE=;
	b=SriE5kRL6/FMhs1ZCdbJFdSYmJ/sMWIIyz59LshbAstVlDebl8LWAXv87jiJr6560iQJP/
	DreP1K5JSchf0SExfUGpdSDqNA2NPrSUh3yQ7Bg+nNFosvPd59RIAVvS7CxaSaDlEvodn0
	JhjF8q8Ij+xAnbYLYi62T5sT2z7CIIY=
Subject: Re: [PATCH v3] xen/arm: introduce XENFEAT_direct_mapped and
 XENFEAT_not_direct_mapped
To: Stefano Stabellini <sstabellini@kernel.org>, boris.ostrovsky@oracle.com
Cc: xen-devel@lists.xenproject.org,
 Stefano Stabellini <stefano.stabellini@xilinx.com>
References: <20210319200140.12512-1-sstabellini@kernel.org>
From: Juergen Gross <jgross@suse.com>
Message-ID: <56cf75d3-bac9-8697-b4b6-0745cdd4edfc@suse.com>
Date: Fri, 23 Apr 2021 11:36:11 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210319200140.12512-1-sstabellini@kernel.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="GHtW8vjf8QfPFTivYTLURdUW8ziv8LYiK"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--GHtW8vjf8QfPFTivYTLURdUW8ziv8LYiK
Content-Type: multipart/mixed; boundary="q907IkgVh7j08IjPHXMGOEhPJZc4FhFPN";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Stefano Stabellini <sstabellini@kernel.org>, boris.ostrovsky@oracle.com
Cc: xen-devel@lists.xenproject.org,
 Stefano Stabellini <stefano.stabellini@xilinx.com>
Message-ID: <56cf75d3-bac9-8697-b4b6-0745cdd4edfc@suse.com>
Subject: Re: [PATCH v3] xen/arm: introduce XENFEAT_direct_mapped and
 XENFEAT_not_direct_mapped
References: <20210319200140.12512-1-sstabellini@kernel.org>
In-Reply-To: <20210319200140.12512-1-sstabellini@kernel.org>

--q907IkgVh7j08IjPHXMGOEhPJZc4FhFPN
Content-Type: multipart/mixed;
 boundary="------------B66082D1FF76C1C67F6D5FB9"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------B66082D1FF76C1C67F6D5FB9
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 19.03.21 21:01, Stefano Stabellini wrote:
> From: Stefano Stabellini <stefano.stabellini@xilinx.com>
>=20
> Newer Xen versions expose two Xen feature flags to tell us if the domai=
n
> is directly mapped or not. Only when a domain is directly mapped it
> makes sense to enable swiotlb-xen on ARM.
>=20
> Introduce a function on ARM to check the new Xen feature flags and also=

> to deal with the legacy case. Call the function xen_swiotlb_detect.
>=20
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>

Pushed to xen/tip.git for-linus-5.13


Juergen

--------------B66082D1FF76C1C67F6D5FB9
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------B66082D1FF76C1C67F6D5FB9--

--q907IkgVh7j08IjPHXMGOEhPJZc4FhFPN--

--GHtW8vjf8QfPFTivYTLURdUW8ziv8LYiK
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCClQsFAwAAAAAACgkQsN6d1ii/Ey/n
3Af9F4g9q2lOnO71qo4Vuozm5qN5tuf2GcQ2ODeJtYOv2eKBfBlhp1xxwDBvRWeZCiIPc/QO6Yxm
fwaFj6s8n8eeLTIRnKSP4qggvJD0AED1IpdoNxll0um08k5hGyRwCsBy2l2VOsVYsJC8KxOzg35Q
hBrnvY2ggqfdeJnMyompUhuF/UfDyOKxnaDYhK/a/funFiic6ztEbf0lLtOT1/jXRsxqkmKp50qY
UPdDxE7tESizKMRLF+G78uS+HFPTmqgxJVqTQxTurD3WOIoPyY38/9mPOZOmau4ER6RnDOd7KieO
obybcgBisHM7N2tp9X6uC5obmaDVIN8QuF0K3qfiiw==
=fgJk
-----END PGP SIGNATURE-----

--GHtW8vjf8QfPFTivYTLURdUW8ziv8LYiK--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:44:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:44:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.115999.221346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsM4-0002RY-8t; Fri, 23 Apr 2021 09:44:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 115999.221346; Fri, 23 Apr 2021 09: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 1lZsM4-0002RR-59; Fri, 23 Apr 2021 09:44:08 +0000
Received: by outflank-mailman (input) for mailman id 115999;
 Fri, 23 Apr 2021 09:44:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZsM2-0002RM-BX
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:44:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ebc295fc-5e73-4fb2-b837-9b902552658d;
 Fri, 23 Apr 2021 09:44:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 05826AC7D;
 Fri, 23 Apr 2021 09:44: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: ebc295fc-5e73-4fb2-b837-9b902552658d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619171044; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0EzHRARTMng6FiPuumOKTLaionewhqu+xi1go0PE+9I=;
	b=s7RH0t+LUiugm9Nj7wBr/53aahBuEL70SYwXKAkCFV0wSlUCROpsFl2CucQxas0vqO8r+K
	5VhfEyHtUjePV/dJAHlYnV/hZ11MlekmLU4FAeXJTn+e24h2Qsj8ZSGU3JvsbsYamu7wWD
	GmQgf1pnRMoFsnYlO348PmymgoRYJNI=
Subject: Re: [PATCH v2 0/8] assorted replacement of x[mz]alloc_bytes()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <091b4b91-712f-3526-78d1-80d31faf8e41@suse.com>
 <40d373eb-d7c2-27f9-df20-a7fecbe519a5@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <23d61389-3fb8-675c-8291-de7189af56d4@suse.com>
Date: Fri, 23 Apr 2021 11:44:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <40d373eb-d7c2-27f9-df20-a7fecbe519a5@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 17:23, Andrew Cooper wrote:
> On 21/04/2021 15:54, Jan Beulich wrote:
>> In the long run I think we want to do away with these type-unsafe
>> interfaces, the more that they also request (typically) excess
>> alignment. This series of entirely independent patches is
>> eliminating the instances where it's relatively clear that they're
>> not just "blob" allocations.
>>
>> v2 only has commit messages extended.
>>
>> 1: x86/MCE: avoid effectively open-coding xmalloc_array()
>> 2: x86/HVM: avoid effectively open-coding xmalloc_array()
>> 3: x86/oprofile: avoid effectively open-coding xmalloc_array()
>> 4: x86/IRQ: avoid over-alignment in alloc_pirq_struct()
>> 5: EFI/runtime: avoid effectively open-coding xmalloc_array()
>> 6: kexec: avoid effectively open-coding xzalloc_flex_struct()
>> 7: video/lfb: avoid effectively open-coding xzalloc_array()
>> 8: Arm/optee: don't open-code xzalloc_flex_struct()
> 
> I'm tempted to nack this, but for now will go with a firm -2 to the
> whole series.

I wonder whether you really mean the whole series - patch 8 clearly
matches the pattern of two of the v1 patches that you did ack yourself.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:44:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:44:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116000.221358 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsM9-0002Th-Fl; Fri, 23 Apr 2021 09:44:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116000.221358; Fri, 23 Apr 2021 09:44: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 1lZsM9-0002TZ-Cn; Fri, 23 Apr 2021 09:44:13 +0000
Received: by outflank-mailman (input) for mailman id 116000;
 Fri, 23 Apr 2021 09:44:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZsM7-0002RM-5t
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:44:11 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9e2f2cae-99f2-4e0e-9e15-180bf96a0170;
 Fri, 23 Apr 2021 09:44: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: 9e2f2cae-99f2-4e0e-9e15-180bf96a0170
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619171048;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=vEvV5Q91olLLSbwmXuAaRzs+3PgLT6WJnyn61OluzhM=;
  b=V7HqBVtShtzKUqJ+vG8vDjM4YSKpnrWzsA7syG2YQIgCjUUsF9gnInQ9
   YiueVy9Y7QLpZh7CU1aURgYH8qS9IQUx8zLXPmvXhuPLE0IabSFLPGvdx
   3sLIE+bw7OXNpfZkrinwbDi4ak56fMBIxm6YAQKrAgbzUgbtwSntWpXbg
   0=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: JsCLUEwg+2eE0WHFD765R4ps49tWBaYJ/FJIKWaxzDByBNYyg6yK6/ZSYt8UzUzv5d0kcitCJ6
 kc2+QGUd3oRCAf4hDLQNKZX8nCxEtsL+HqBTy7byxUpO8SGqWOGlEejS47RP2r1bylX6/1wVBP
 YRoJJ1K7gDwsgvZNH033eu0KucMgSbU4XXPqcRRYyiea4VUI3BacWChzIcAocFC/E3uhhTHCLr
 X0ZDIZ0QeQ5iKvD+695Q2NQScb4aSym2QGe1HZ/K+1HEWveuRF66X3Y7NkgezNStmmbvAjRmeJ
 yEw=
X-SBRS: 5.2
X-MesageID: 42379893
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:+5Q4f6v8bo7E526BSTJCv2vc7skCkoYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwTeCBtA50lGJ
 2Aovddrz27dngNKui9DH8JX+/Mzue77q7OSxgAGhIh9U2ynSqlgYSKaCSw8zU/d3d0wbkk+X
 XYiACR3Muemtyy1xO07R600714g93ko+EzZvCkrugwBnHShh2zZIJnMofywgwdhO208l4lnJ
 3tjn4bTr1OwkjcdG20vhfhsjOIuF1Fiw6AuC+lqEDuvNDjQ3YCA9dB7LgpDSfx0VYqv913zc
 twrgWknqdQZCmw+RjV1pzjUhFnkVeMunwykeIfpGw3a/pjVJZh6aMY509bC5EGAWbT750mCv
 BnCIXm6O9Rak7yVQGSgkBfhPiXGlgjFBaPRUYP/uSTzjhthXh8i28V3tYWkHss/I80IqM0qt
 jsA+BNrvVjX8UWZaVyCKMqWs2sEFHARhrKLSa7PUnnPLtvAQOCl7fHpJEOoM26cp0By5U/3L
 7bVklDiGI0c0XyTeWTwZxw9AzXSmnVZ0Wj9uhuo7xC/pHsTrviNiOODHo0ldG7nvkZCsrHH9
 mpPpZ7BOLiMHvOFY5F0xaWYegTFVAuFOku/vorUVOHpczGbqfwsPbATfrVLL3xVRYoM1mPQU
 crbXzWHoFt/0qrUnj3jFz6QHX2YHHy+pp2Dez/9+gXw44dC51UvmEu+BaEz/DODQcHnr09fU
 N4Lr+iuLi8v3OK8WHB6HgsHRZBEEBP4vHFX2lRrQEHd2P4GIxz9+m3SCR35j+qNxV/R8TZHE
 p0vFJs45+6KJSW2GQFENKoMmWTilMJv3KUR5IgmqmOjP2VO68QP9IDYuhcBA/LHxt6lUJBs2
 FYcjIJQUfZC3fTk6m/tYcVA+vebtF4pw+uLadv2DfinHTZgftqamoQXjaoX8LSpQo1XTJbim
 d89LIljKOalSyiLnY+h+oEIERBAV7ncY5uPUCgXsF5i7rrcAZ/QSOxiTuWhwoaV0Dq+08R71
 aRZBG8SLXuOB5wq3pY2qHl/BdIbW2bZVt3cW0/m5Z6D376tnF61vKraqK/33CKUEYLxvgQPV
 j+EH8vCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N57UwXGgJeSz5NU7Ns4R2KwgEt/gsuUGC7
 3CPyCUKS71EOMv1Ui+oG0/NCx9tXkjlrfJ1XTenRqF9U96JcCXBlJsA4w/CZW7yUPPQv6Typ
 V3jd4vp4KLQxPMQ+/D7ZuSViJJLxPYnHW/QO4po61FpK5ajsoBI7DrFR/zkExd1BowLM3IhF
 oTbaRy7rfGIJJudaUpCldk12tssNyOKUcx2zaGetMWTBUIj3XBOcmO7KeNgb0zAleZrA+YAy
 jWzwRtu9PEVTCEz7gUFuYZJnlXclE17DBH8PmZf4PdTCWseOcrxivwDlaNNJtcQrOCA7Mes1
 JT5MyJhfaec27A4z/r1AELVZ5mwiKAWsO9AAWFBO5O/ZibAD2389aXyf/2qiz2Rzu9Y1kfnq
 tfeyUrH4N+tgU=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42379893"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aPfcXgrhUzH9OjG9NubMB84zY/mxut9G6xk628hXUm53AiJrDIyYvHT+x0TrC1mdO+27gOko6C0C2HPyKnf3SJhmvf0vWDDfkTlRbK5gNNWmz60pl5YqcJp85VX5dns2CdTr1Sf2n//PxWKBQfswbdd4LNWtBcTGyIGVNRJemWUKVbhyT3aVaAwSBY0mwIk0M1598smbnLTzRWR3FWCfzdtfqbCb2+iq5ICaLmKXMQLWPgd8YLxXDiA4hsQXlUa4SBfKbcQxcPdb1io62lWdRnmtYWX5s7Q8VL+PtRU0mIqwy2iyVIVopt70kVwltM2h93Fob+FnlO3b9Ea1oK5Klg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZhaDW6e0+dRbO1CeFbpdh34+OJp3prEs6XLckNbHW5Q=;
 b=AlZjcZxrLhRxlq9MSfnmABeFDfAay77poemmcX8wkmt3IH8UbjNOE7P2aHbW/RK0l5+EOt68cXQRsK1S9mcMC//LxXSD+qmI9XJWnHZl6KoKvyJiir1d0Mv+79Uu+sB1vAl7t6gTN4tn/sHykmUIrQhP30xgyb2+3hfCT639y7GGJuj1Fne+TmevqocZHrBer3MPi2P2v2HRZGfsh/DyUm1Q9tm/4cu59OREoOTWVUsHzYCeL2YTU4sa4tIyOH/L//HHbGXq2UGk/Jkvm7obj0C/f5ojnW6Idxl+p47CKBw63pgpXrX+RX6odyHntAhW6AQZnyNbxcHMZ+N+D7LP0Q==
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=ZhaDW6e0+dRbO1CeFbpdh34+OJp3prEs6XLckNbHW5Q=;
 b=vI6lRvsMsHRtF40rQjXONPT4iEQpDs12hkE/BqqSMIHP4v9Ej217qLAw9FM4nhbACLgXzsJGdS7X5BOGREQM7LhIikstoMW0qJRfWAuDmH/kSZmP1N2jks0QvK5vn2bsT8QAapCVXzQYYktkZvULa/P5H0m/+WyUzlrV2SNyHlc=
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 0/2] x86/clang: build fixes
Date: Fri, 23 Apr 2021 11:43:41 +0200
Message-ID: <20210423094343.5850-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0008.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::20) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: acd8c8a4-e09a-4328-4de4-08d9063c54f6
X-MS-TrafficTypeDiagnostic: DS7PR03MB5591:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB559189D667E58788519E90D18F459@DS7PR03MB5591.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6108;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: tBBUKwzE1FfmL5EjgEXH68VFGgSYIRg9vSCUQW4ZKupqfhggUbq1pSUjeTL+Lf0ihMQyx36/ojXnVB+dlkAvHXTX00RMVpiSG8z1SsOxnS4OiM4hifXzXbv6mTl+S8b9BBxZl2Q/oi0BDd/puFd3/1caamSxAJ+pQ6iLQpqmWTWRzmeDnuJSwk2YiWJw0mPsj+MhxK9G1EORbZkUdl7egolDLGwIaJZ9j0o12nSlNW0/37s2PCKb3fDz8AcUwM92UgXw26T9Yh0rgoiMXXvOXDhMGBJjJzzp/MVSBl2jf7Cvdf8GTsbEibKTpdY5S+kXOCJmmJ09XXaroqKjNFRXnsSfTqSnJkEUMuR906OuRa2dyNHxfwvWp5T/dAkMVdZX7SDp8t8LMVQCWhH/wRZkWVpi/ZXQVznshYo3C/UUmqkXhFZ4Xo1SPK+3n8XLhGJMM3OKRdg46ZZ3wus3bcLfN0OyoTQy9vGoOz+fxG5tKRufM5wLlhQPST2tur71K3A4OgIREhn6NUm/yjeDovJ5OHza/yOLxqqJf7Vjoexsn+ZjIFfiYuABdNtrZjXxkZoxe4PSQZ5HGvrDjz443/WaIWVs/EE+0aFGAI6QTj8Uu1k=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(39860400002)(366004)(376002)(346002)(2906002)(2616005)(26005)(66556008)(66476007)(16526019)(186003)(956004)(38100700002)(4326008)(316002)(6496006)(8936002)(478600001)(54906003)(66946007)(86362001)(6666004)(4744005)(8676002)(1076003)(6486002)(83380400001)(36756003)(5660300002)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?styVpz7x5oRHhdMvVuXb6/Xf8Ue2IlExGM0/9mv?=
X-MS-Exchange-CrossTenant-Network-Message-Id: acd8c8a4-e09a-4328-4de4-08d9063c54f6
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 09:44:04.6342
 (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: gCyMPsb3HLurV3+bFhCZVJQv47a2WxzgWSD0nsBPNBtFZXI1ezTTMOFTU6Mh+G2EA9oQ8J+Wq94EOIs9wWmzcg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5591
X-OriginatorOrg: citrix.com

Hello,

Two clang related build fixes to get the hypervisor building again with
clang without CONFIG_PV32.

Thanks, Roger.

Roger Pau Monne (2):
  x86/oprofile: fix oprofile for clang build
  x86/pv: fix clang build without CONFIG_PV32

 xen/arch/x86/oprofile/backtrace.c |  2 ++
 xen/arch/x86/pv/hypercall.c       | 18 +++++++++---------
 2 files changed, 11 insertions(+), 9 deletions(-)

-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:44:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:44:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116001.221369 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsMC-0002WR-PS; Fri, 23 Apr 2021 09:44:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116001.221369; Fri, 23 Apr 2021 09:44: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 1lZsMC-0002WI-MG; Fri, 23 Apr 2021 09:44:16 +0000
Received: by outflank-mailman (input) for mailman id 116001;
 Fri, 23 Apr 2021 09:44:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZsMC-0002RM-65
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:44:16 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8517dd16-bee2-4053-b086-7e8bf9ae4ba5;
 Fri, 23 Apr 2021 09:44: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: 8517dd16-bee2-4053-b086-7e8bf9ae4ba5
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619171052;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=txr0Xq2jIf0c1V7u4B2HWZXE37t+65cPgbnp6nuNQCY=;
  b=ijEZXpWDJSbYkeFp9TNGSsXy43ctHpmxfMLoGBUSIETy+CS/Idpw8jG4
   swo59iySGhXxZ4i071MLHtW0jLOeCxn7XV4AtePS0RcJp2SlftPJXEadn
   Fc4AAKWXUCTQ32zPgi0mMjnR92VjFKGZ8z8Tz2ByEAz7F9WZKiYaAF8NX
   c=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: exNR0PxsW6DKeEBq/HHBm9A4okOgtm7uawSYq4kdXEZvpGZc2rVWOOY1n+FHMkO8DgJSA7z1yF
 ec4BhlJoHCefK5k7/dulFnUo/J1Q93/Jzu3bXAtJj9UeWyoB/fVp1BlQlWlp0wNVNUuz//ZJoH
 6iUiRLJfObrO9zJ3SRkJpZvesNh/U/bgDPw5FDCJB+RTZAo1kmsW6VfM+cswOtgDqkN3iGZDr7
 7ISkwi3Aexh6wR9C2bW/m1n0G//mgiYHqct6pyzoSiYTWoovTzDw/B5VovAwEcxLO/nmwpG6CE
 hTI=
X-SBRS: 5.2
X-MesageID: 42256107
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:GYMTTqqWqq/s657go10yM34aV5uuKtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQb3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIJg/I
 9aWexFBNX0ZGIWse/T/BS4H9E8wNOO7aCvgqPkw21wSBxxApsA0y5SIG+gYylLbSNBAoc0E4
 fZ29FOoCCudW9SQsOwAHQEWOarnay2qLvNZxkaCxk7rDSflD/A0s+GLzG0/Dc7FwlOz7Ar7H
 Tfn2XCiJmLnvmnxnbnpgnuxrtMnt+J8KogOOWtjYwvJizomkKUYu1aKsa/lRQUhM3q11owit
 nLpH4bTrROwlfcZHu8rxeo+ySI6kdW11bYxVWVgWTurKXCLVpQYaox5vMqTjLj50Utp9162q
 5QtljpzaZ/Nh/cgD/7o+HBShACrDvEnVMZjeURg3ZDOLFuD4N5kIp3xjIxLL4wWAj+6IwhDd
 B0CtDd6Pt8YTqhHg7kl1gq79q2UnspGBCaBmAEp8yOyjBT2Et01k0C2aUk7zs93aN4b6MBy/
 XPM6xumr0LZsgKbZhlDONEZcesEGTCTT/FLWr6GyWpKIg3f1b277Ln6rQ84++nPLYSyoEppZ
 jHWFRE8UYvZkPHE6S1rd122yGIZF/4cSXmy8lY6ZQ8kKb7XqDXPSqKT01ru9e8os8YHtbQV5
 +ISdNrKs6mCVGrNZdC3gX4VZUXA2IZStcpttEyXE/LjdnMLqHsq+zHYNfeLLfgCl8fKyHCK0
 pGeAK2CNRL70itVHO9qgPWQWnRdkv2+o81MKWyxZlX9KE9cql39iQFg1Ww4c+GbRdYtLYtQU
 d4KLT71oeypWy8+3f0/3xkUyAtSnp90fHFaTdntAUKO0T7ffIooNOEY11f23OBO1tZQ97JFh
 Vc43B647i+IZDV5S1KMaPoDkuqy18o4F6aRZYVnaOOoe3/fIkjM5ogUKttUSPRFxJ0ng5ugH
 xZaBANQ3LeEj+Gs9TnsLUkQMXkM/VsigaiJsBZ7VjFs1+HmM0pTnwHGwK1XdWvmgYoTTpMjl
 hX+6sS6YDw3gqHGC8auqAVIVdMYGOYDPZjAB6ebItZoLztZTp9VHyHnzCclhE1dFf77kl6vB
 2TEQSkPdXwRnZNsHFR1ajntGl5cWiQZGpcQHF3u48VLxWMhl9DlcuwIoaj2WqYbVUPhtwHOD
 beeD0IP0dF3NasziOYnz6ECFQrzpgjJfbmEbwmar3fs0ndbrGgpOUjJbt57ZxlPNfhvqs3Su
 qZYRaSNy69JOUz2QCZz0xVThVcmT0Bq7fP1xLk5mTjgyJ6LvrWPVh8R7YUZ/ub9HPpQv6U0J
 N/yfI51NHARlnZW5qj8+XwaTUGFzb45UiRZMssoYpPva0zuKBodqOrGQfg5TVi5lEGMMzwlE
 kiW6x177DKB593c6UpCldk12tssO7KEVAivQP3CNIvZF0Bj3fUONWS/rrDwIBfdXGplU/VMV
 mb/zY1xYa8YwKzkZobAbk3O2JYdQwV72lj5vqLc+TreU+XXtAG2FqxKXmmdrBBDICDBLULtx
 5/p/WFhfWeeSa9+Afeu1JAU+9z2lfiZcO5GwSXH+FUt/S8JFSXm6OvpPeJsw2fc0rzV20owa
 tfdUIRacxfij4tyK0PuxLCNZDfkwYCiFtR4TZui1j3/JOpiV2rRH17DQ==
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42256107"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IfhHdFTe/Vlsx6/5DlRnAHm/NiyuatQY4jepKVeGyB2L97bacT+NrG8u3StjKMl6/tqC9h/GdTB+8DcjnebJqP51oCpv1ZkAdAnThBKmh6wl2TogCpnREB7Zb+EuAbpihRkEylV4LxivTbWkzhg+8hZUQl945DziwMVf1LhJ7Ai6wdMjCIcNPpvH2u061f2ChEZfDqWeC6s261SZiUXNBwTL+wampF5bpscddcfdqgLxjO/rKjFAbd2pLZX5OFMDq3aRjGr4aRO+1lhQMl4TI50Yss4x9JSx9FPQKbTbcIaORJqhCFE74j5O0sIs9pyqiw11WeoZCJD/hWagmaICZg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PRE8OuYK7Uh2ACUdejo4vbT6G8Eip5cPiUQoM26NonA=;
 b=ZFoT/Os76Fhk2kvb9f50tmlGUBSbOusgDKOx20W3sWk23mfm41eD7TY1HYr5o3bWuLYdAHbB4SHp7QRn3VtPm4OpGdJEuh1ZP03966E1eLOhaWaTvzoNs7QWJ9K/ywZh973HKPe/6ShnxZOpZbONWagUUdDI7Sc4rdXAh42h7cHZMM0If2GGfePvx/KbXJlrjvEMYaL9PX2Rmfrr4wYvN3RWB3bFPDHBAT2pGaVVg42biVmEZb8SUSPoSiG2vrzNDNKeMog5K/S4B84vZyYZhnOhNEQey/gn7BJMU5Uc/jonYuiO2hyhwTgADbHc3XaeXXOCRkjKPOFoNuxtjD+P9w==
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=PRE8OuYK7Uh2ACUdejo4vbT6G8Eip5cPiUQoM26NonA=;
 b=A/iTW1ucOAQ0fCe1ELe90WziJO18roYskwDFXtFyVFqG2inB0q2XFbpfGQl3eEk7TjI41Z2UugMyUVPwQFWFAJcArEOLRiK74Clt8uMcizxfw/IPPTE4YZN9l4CLjPC0fkiI+E538WVkzevZ54+PQj47c6d7Q6YXXXLXrgH84M4=
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 1/2] x86/oprofile: fix oprofile for clang build
Date: Fri, 23 Apr 2021 11:43:42 +0200
Message-ID: <20210423094343.5850-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210423094343.5850-1-roger.pau@citrix.com>
References: <20210423094343.5850-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0169.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::8)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 958b50ce-b40b-446a-6e3c-08d9063c5892
X-MS-TrafficTypeDiagnostic: DS7PR03MB5591:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5591E17AF6984D7635EBBAA38F459@DS7PR03MB5591.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:538;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 4zWS/YI9JSs7ILhmuAHOmsIWaV6U1QCGttKMR/vDYP+g+o0nFZ6FuzN27OyvGG8C8mSObDJ5RIq/2clWpKN1aYMwPSBHXCdf5hH+IDIP0hM27ENLeqRkQKfkVkjPqGvic9fu0gl8bB4i7iQWVsI5Ig/dWpYc5vZCdr3qz56kfbnC8R0NmCoR8/riwIuq10EacQhoc9zCKqPkh7EIvdQiE3NbqPbYLRDN+i9UZUyacyyFhVH+EDDN7vvVtEbdMvq46biMImJyIDpkFoHbg2wms+Y3tlEIP3uRD6Mz01Zd4ZI8rZLRdcncxa/nu3GpX+nlTBO342MXTlE+zophRs7hqk0jrmB++f94b4GCT60uSoqGQCsbc7ETgbfrITDxajs6dr6CuwLcRa3ncvYOslM4A87cZ5fhsbukCqUUDNk+9tIeoXgZNnm4iKJnyDMGKR6IkqVCE1EnjW7xtgr3+qG5OZuHvbxT4McjYNPrh7ozHwzvIlGQrQZJ8BltBG/pguSgAn+dCjjZO1roiyPtksXmMwybedpZuzdYRifz03d8n8Vzajuc8Of87lkXXuHyyn82Bw+l/w/22tl+YRxbji5c+u80r+i8kBNpjTucKdcxpBI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(39860400002)(366004)(376002)(346002)(2906002)(2616005)(26005)(66556008)(66476007)(16526019)(186003)(956004)(38100700002)(4326008)(316002)(6496006)(8936002)(478600001)(54906003)(66946007)(86362001)(6666004)(8676002)(1076003)(6486002)(36756003)(5660300002)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 958b50ce-b40b-446a-6e3c-08d9063c5892
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 09:44:10.5701
 (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: zw1XT4KtSWKT6Dgb/vgD7wU8P+q1Y9VHrp1rPMep3S0ecGXCUfHGVoNqRcoex0Za2aHSRh7A+vAys19aDh4YIw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5591
X-OriginatorOrg: citrix.com

Clang complains with:

backtrace.c:46:19: error: unused function 'is_32bit_vcpu' [-Werror,-Wunused-function]
static inline int is_32bit_vcpu(struct vcpu *vcpu)
                  ^

Fix this by guarding the function with CONFIG_COMPAT, as it's only
caller is also doing so.

Fixes: d23d792478d ('x86: avoid building COMPAT code when !HVM && !PV32')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/oprofile/backtrace.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/xen/arch/x86/oprofile/backtrace.c b/xen/arch/x86/oprofile/backtrace.c
index 929bf51a408..bd5d1b0f6ce 100644
--- a/xen/arch/x86/oprofile/backtrace.c
+++ b/xen/arch/x86/oprofile/backtrace.c
@@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *vcpu, const struct frame_head *head,
     return head->ebp;
 }
 
+#ifdef CONFIG_COMPAT
 static inline int is_32bit_vcpu(struct vcpu *vcpu)
 {
     if (is_hvm_vcpu(vcpu))
@@ -50,6 +51,7 @@ static inline int is_32bit_vcpu(struct vcpu *vcpu)
     else
         return is_pv_32bit_vcpu(vcpu);
 }
+#endif
 
 static struct frame_head *
 dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:44:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:44:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116002.221382 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsMH-0002ar-98; Fri, 23 Apr 2021 09:44:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116002.221382; Fri, 23 Apr 2021 09:44:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsMH-0002ah-5X; Fri, 23 Apr 2021 09:44:21 +0000
Received: by outflank-mailman (input) for mailman id 116002;
 Fri, 23 Apr 2021 09:44:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZsMF-0002Zj-MO
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:44:19 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3c36b503-ee47-4d45-91da-929ad3d53259;
 Fri, 23 Apr 2021 09:44: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: 3c36b503-ee47-4d45-91da-929ad3d53259
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619171058;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=FnjIKy4vPMufM1E2A44dzla8avWRqW9V4Gx5/pT11/U=;
  b=doaGTPs1F4rXiVXrOth7NSyPKzmIoBxH7jxQizbJyCvobaoJ3RcBOjUP
   qsIcXwC1VR4963zKbMQbxrekE2tGpo1cNZbPlDE17ZSCKK9Qx0wfl86Wo
   6Fb06Z6/z0l7KPWjsUagog8NJArZhuyv6wUYagLWfhxg7NyD4f7sRZBLn
   4=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: vamjpA7vshUN28lcXqHLfkp0uYiF3LQhRHBayNgIS4wkGQf0kyw4PxG7iLfXtIL7crlT4MC4uv
 JbzhIn8bwKm9Fw89Fo6xa46hkL1vBiWwUJT+LgcghziuLdJXVyNDLwLcI8CGKFefYyqRLyeVER
 CO/n0xJaaRXDGAv7Zg75+MT7jKiZmRYQq4LvcG6KYrb3Sse2OBrd/I3QZPC7XNKcro0lrEhq7R
 hTeAeAKEv8aU7CnRhW1166q+Ku0ofCHhgoj+RckGDI95PSv+Lvzur7v6E034fmFr2aWnUWQdg7
 pJg=
X-SBRS: 5.2
X-MesageID: 42643215
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:pE5baq5JcXsw4cT+JwPXwU2EI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+LpT+jvfMk4/rZgNDOg4/5GC1/E6VwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLrCP0+HTU6/1t6bnc4/tFQPeBk80Ebgjr4zzYH7hJf52nkHQLrPq06FAs+e
 O80ysIG8ho8XveciWUjHLWqnDd+Q0j4XPj1lOU6EGLyaeSJENYerh8rLlUfRfD500rsMsU6t
 Mw40uju4dKFhSFpSzh5rHzJmBXv3Cpqnkvm/N7tQ05baIibtZq3Oki1XIQOpIBECXm0ZsgAe
 ljAerNjcwmD2+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoiPA3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QS2vCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSfGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erGs
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdUwoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtG4fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3DToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5ZvJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjYvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMZAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCU5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3iml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NAgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso6I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfCvA6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu+lZMfRmmIpA79Ij
 CkglVg1saAeyuIzrgBDa0sZUxQdUgn8XxnldnyPbH4OUGPd+tZ+kC9PWL4WLhBSLKdEbFVih
 ph+dmHk6u2cCX/sTqg8AdTE+Zr82y9R9m1Dx/JMelU88aiMVDJu5CU2qeI/X7KYAr+TV8Zi4
 1DfVERacoGqgBKtvxJ7gGCDortokwklFNC5ypAjVCF4Pn+3Fvm
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42643215"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SXOCZfLq4krO+JQ8KWdLiyaJB22F4Pn4xLdFw2xXKOmQ14mPe77fM8Nf2MbKu/RH3rP8IlB8HPEYl3IapuifWyD2mLKlTw9MTGmQFk9wzb8/XeoH4wR7xdw5+Rik3WuAffBfxq0AgFr2vfy52t6fyFVrGH1UOumBA0HSyB1RWJ9BsEHDut73+hA4VTJj7Y3KGXi1lcS0Cqm+/TbuwIUkazoVIuOF0O8YcUet7zzQxgcqny90a+9Z1W5gh3AbKdGqz2ORpyTJ/2ILNKbeSSwvM+7vokO6frLXlqqB9XjSXwuRkiM2n3Ba4mIzBYY5ivMY8Yuud85tV2YojjSQmS9F2g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lTwYXU5O3V5OqqnU/mlpo7hQAAvN0IpnHHnFd6kULLw=;
 b=XFsKiOIG+nUq9TSB54nLXvSttZnAyyxdHCauyQo7c6v3ibjsZvIEfuF61eded3tsVwxZDjcr4fxb6sABMwAYvGyrRF6ACbmFlqqmcl9n1Pk9pj4TlNYvxwkl8b86a6qENITauvZkHeYgtSnxrdQNQh8aJ/PGw8zRKI5ufwuzgwDu+bAt8LRGcQFVv/dFr2vF4DbozZZCVLDJHSTY3jaUYpLh2X6/erxnwRW6fTyHirHbyGYNMcIk/zs5FLMjf7Pzox+3CL/9EKcsR6lz8ye3qjsl7VmHNMa5mAaMrY9+8wzqJIHBbBU7dotQK8x9p4CAN+F91fRDCwwbEfBIZOXu/g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lTwYXU5O3V5OqqnU/mlpo7hQAAvN0IpnHHnFd6kULLw=;
 b=MFIAHLU6EjbXbncfZNc/l9xKHrxR2u+SQkRDeAe5SOWOJYaCkWl/lYpJMe9GGP0l7/Bb1gc+iUdJsSLVUZaIyGiDyoRZ8VbvEm2Mwh6Jwfh4bCTTXmZF9tS5/ubt8/47kGdFSoSu3bleK2VE8BeyZLLxrIg/1xh47BuLEyhBW3g=
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 2/2] x86/pv: fix clang build without CONFIG_PV32
Date: Fri, 23 Apr 2021 11:43:43 +0200
Message-ID: <20210423094343.5850-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
In-Reply-To: <20210423094343.5850-1-roger.pau@citrix.com>
References: <20210423094343.5850-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0117.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::33) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0e797e53-58c2-44a8-c696-08d9063c5b36
X-MS-TrafficTypeDiagnostic: DS7PR03MB5591:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB55914B940F2B581F73C0A5A48F459@DS7PR03MB5591.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 6wq2RkAETP2g0ipHbZu9/xyiRMm55x4yjIgfiW1+zTFwKtsSELua+PVcFVh3+RqDBANv86a5QnX57ovzjQq61CueywqYaVJo8O3IcUyXBVs8U+qDHFwpDniZ+CfISc2jCu8sqrClI8h2CY4h4TA12ajcPTRscVpyhUqIxwUGLEEh67uE+3yw5pErBB5hliUOF9ANQWR9q/wFwLRh9EzsgRwyWLMI5CahLb47TRb4kMcyR6E+I2utVMZX/tgo2JCMIvzK9H8hwtThTJnG5EAjeJDpyR3qiKCpj2U/PFIYvmF0w1f5REzn1X2b9C0lvnYXFtbo+ZgKR445J1KZIYUBNXEPI0JV4kJAIzxJi4F6aG9nTkJSboj0vxHGYSxMNMYmIVCAlIX+Hb3G849jSIoNhECBDV1YiQvKTvPYFb23N8laGsgx4r9e1+EhZc9jozcJGSVakUKgTQDu6BxOFHK+VUJKv8za4BEQnRgKRTdSBEdGAfdcOCqeZPb1Wf4DHvilVbdysWaCcj3p86RQgX8TfNC413cPxEQK+/jv8tiP/V/vMhJ+/m4A0nlBLE1Iru2zSt42/YvdZ65nJeJY4OeoWU7XaJOZUer24W8SM3XVmsM=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(39860400002)(366004)(376002)(346002)(2906002)(2616005)(26005)(66556008)(66476007)(16526019)(186003)(956004)(38100700002)(4326008)(316002)(6496006)(8936002)(478600001)(54906003)(66946007)(86362001)(6666004)(8676002)(1076003)(6486002)(83380400001)(36756003)(5660300002)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 0e797e53-58c2-44a8-c696-08d9063c5b36
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 09:44:15.0046
 (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: mtFOVglOPsYRgmNjPsPv4pgc6atJziUrb2JJ+LWEt2CGkCKd7ANXXeclSjkO33TDUQ0pfYEjDvL/95LU9iaIcw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5591
X-OriginatorOrg: citrix.com

Clang reports the following build error without CONFIG_PV:

hypercall.c:253:10: error: variable 'op' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
    if ( !is_pv_32bit_vcpu(curr) )
         ^~~~~~~~~~~~~~~~~~~~~~~
hypercall.c:282:21: note: uninitialized use occurs here
    return unlikely(op == __HYPERVISOR_iret)
                    ^~
/root/src/xen/xen/include/xen/compiler.h:21:43: note: expanded from macro 'unlikely'
#define unlikely(x)   __builtin_expect(!!(x),0)
                                          ^
hypercall.c:253:5: note: remove the 'if' if its condition is always true
    if ( !is_pv_32bit_vcpu(curr) )
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hypercall.c:251:21: note: initialize the variable 'op' to silence this warning
    unsigned long op;
                    ^
                     = 0

Rearrange the code in arch_do_multicall_call so that the if guards the
32bit branch and when CONFIG_PV32 is not set there's no conditional at
all.

Fixes: 527922008bc ('x86: slim down hypercall handling when !PV32')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Should the is_pv_32bit_vcpu be wrapped in an unlikely hint?
---
 xen/arch/x86/pv/hypercall.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/xen/arch/x86/pv/hypercall.c b/xen/arch/x86/pv/hypercall.c
index e30c59b6286..d573f74aa1e 100644
--- a/xen/arch/x86/pv/hypercall.c
+++ b/xen/arch/x86/pv/hypercall.c
@@ -250,34 +250,34 @@ enum mc_disposition arch_do_multicall_call(struct mc_state *state)
     struct vcpu *curr = current;
     unsigned long op;
 
-    if ( !is_pv_32bit_vcpu(curr) )
+#ifdef CONFIG_PV32
+    if ( is_pv_32bit_vcpu(curr) )
     {
-        struct multicall_entry *call = &state->call;
+        struct compat_multicall_entry *call = &state->compat_call;
 
         op = call->op;
         if ( (op < ARRAY_SIZE(pv_hypercall_table)) &&
-             pv_hypercall_table[op].native )
-            call->result = pv_hypercall_table[op].native(
+             pv_hypercall_table[op].compat )
+            call->result = pv_hypercall_table[op].compat(
                 call->args[0], call->args[1], call->args[2],
                 call->args[3], call->args[4], call->args[5]);
         else
             call->result = -ENOSYS;
     }
-#ifdef CONFIG_PV32
     else
+#endif
     {
-        struct compat_multicall_entry *call = &state->compat_call;
+        struct multicall_entry *call = &state->call;
 
         op = call->op;
         if ( (op < ARRAY_SIZE(pv_hypercall_table)) &&
-             pv_hypercall_table[op].compat )
-            call->result = pv_hypercall_table[op].compat(
+             pv_hypercall_table[op].native )
+            call->result = pv_hypercall_table[op].native(
                 call->args[0], call->args[1], call->args[2],
                 call->args[3], call->args[4], call->args[5]);
         else
             call->result = -ENOSYS;
     }
-#endif
 
     return unlikely(op == __HYPERVISOR_iret)
            ? mc_exit
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:45:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:45:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116018.221394 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsNU-00030a-LY; Fri, 23 Apr 2021 09:45:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116018.221394; Fri, 23 Apr 2021 09: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 1lZsNU-00030T-Hm; Fri, 23 Apr 2021 09:45:36 +0000
Received: by outflank-mailman (input) for mailman id 116018;
 Fri, 23 Apr 2021 09:45:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZsNT-00030L-FA
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:45:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6fee097a-eeee-4c85-9fe6-997d0b23c85e;
 Fri, 23 Apr 2021 09:45:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 48E87AC7D;
 Fri, 23 Apr 2021 09:45: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: 6fee097a-eeee-4c85-9fe6-997d0b23c85e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619171133; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=XLQV4kiqmFdESHxAW6tg9GDsZLiRz9sApRi0SZPZ9QM=;
	b=lDWCATq0IuJ7JjrQjmqWHk4bQX8Jl5PZZJO3iHzzBgk3vbGfamX19wAPLdwiBhfZbfwm+E
	Q+N3kh06dnUnWNMXaJbem7ROk/GelTHF0BZYJrFh/BuqC/CdEBOERTGyoB+/0omvGbP7nU
	uESo2YFrHq49XvzSpZW/9afBaXUCAFo=
Subject: Re: [PATCH 1/2] x86/oprofile: fix oprofile for clang build
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: <20210423094343.5850-1-roger.pau@citrix.com>
 <20210423094343.5850-2-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b1bac4bc-f406-b111-a46a-fb407eabceb3@suse.com>
Date: Fri, 23 Apr 2021 11:45:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210423094343.5850-2-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 11:43, Roger Pau Monne wrote:
> Clang complains with:
> 
> backtrace.c:46:19: error: unused function 'is_32bit_vcpu' [-Werror,-Wunused-function]
> static inline int is_32bit_vcpu(struct vcpu *vcpu)
>                   ^
> 
> Fix this by guarding the function with CONFIG_COMPAT, as it's only
> caller is also doing so.
> 
> Fixes: d23d792478d ('x86: avoid building COMPAT code when !HVM && !PV32')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

See my "x86/oprof: fix !HVM && !PV32 build" from the 16th.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:47:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:47:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116022.221405 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsOq-00038r-Vz; Fri, 23 Apr 2021 09:47:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116022.221405; Fri, 23 Apr 2021 09:47:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsOq-00038k-Ss; Fri, 23 Apr 2021 09:47:00 +0000
Received: by outflank-mailman (input) for mailman id 116022;
 Fri, 23 Apr 2021 09:46:59 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZsOp-00038d-C0
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:46:59 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 22071e9b-9577-483b-b0bf-ce830c960dc1;
 Fri, 23 Apr 2021 09:46: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: 22071e9b-9577-483b-b0bf-ce830c960dc1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619171218;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=jULlK50QeX/Y8AEyYlTlLdE3vCTVfOQ8jyejnSwrpFg=;
  b=hmYyKVG/c8yNnkkBfjbm269VBgZrx48dcgu3erFFzKMvmcOXB5NwCjfO
   r74r22Dkht14EoTAh+DzF22PxeYVjGvqCwAyTDnPOotzUwt4JHpiQOwEB
   I+M9hmGuoMsnGq9RDWQ6StYDqlHabD8QRgQEhniIw8BsaBqFDzRuFrL12
   Y=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: LWHFkNgVfHKhca7K3WtLTPYpg+/HsJxxiTc0mTiapKWjxkMkrNJwQEUaNM5W6tMG/yURg/uxqa
 dbqOwkiAW0mGfofI9HXwJqYPiiz8OZWOekwUOWpLOgu2X5RXRIL0TKS88+Z7LSVxSIsbgH9L8K
 VnUOiG+Yov743T3fH8yQmO4b4WfHkWnpBYc1bywwcAmNVT0mglb7Oi6bIe8goL2eK5GZzdJytW
 2fhNqmn1Qu/gTFjXkTrDuumilFVN4tvaRsVGPl+n1dOGPuNs667QYzztTRiq9TE3X+PU5vMvlg
 sxM=
X-SBRS: 5.2
X-MesageID: 42256268
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:GHFBaq2DkytRRTKX5icwwAqjBSN3eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/FIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmtJ1/Z
 xLN5JzANiYNzVHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcBdxi1SYzzrdXFebg9AGJY/Cd
 6w5tBfoSChZHQQaa2AdwM4dsLEoMDGk4+jXA4eC3ccmXKzpB6LyJq/KRiX2R8CTyhCqI1NzU
 HpmxH0j5/T0c2T5QTb0wbonvFrsfvnjuBOHcmdzvUSQw+c9zqAQKREd/m8sCsuoOepgWxa4e
 Xkhxs7Jcx85zfwUwiO0GLQ8jLt2jov9HPuoGXw6RCIwb2bNUEHIvFMio5DfhzS51BIhqAF7I
 tx03+ErJ0SNBvcnU3Glqb1fit3nUm5q2dKq590s1VjV+IlGdtshL1a1kZUHJAcJTn9+YAqHc
 J/Zfusm8p+QBe0aWvUsXJox8HpdnMvHg2eSkxHgcCN1SNK9UoJgncw9Yg6pDMt5Zg9Q55L66
 DtNblprqhHSoszYbhmDOkMbMOrAgX2MF7xGVPXBW6iOLAMOnrLpZKyyq4y/vuWdJsBy4Z3sI
 jdUXtD3FRCOn7GOImr5tlm4xrNSGKyUXDG0cdF/aV0vbX6Wf7CLTCDclYziMGtys9vTPHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYk7odA+d1WSot/aC4Hju+DBGcyjZ4bFIHIBYCfSE3
 EDVD/8KIFr9UawQEL1hxDXRjfMdyXEjNBNOZmf29JW5JkGN4VKvARQo0++/Nu3JTpLtbFzWE
 N/Jbjgg56qvGXexxeM00xZfj5mSmpF6rTpVH1H4SUQNVnvTLoFs9KDPUdfwWWAPR06a8/NCg
 ZQqxBW9MuMXtOt7BFnL+jiHnORjnMVqn7PZYwbgLe/6cDsfY59KI0nVqx3HQDiDAd0hg5ulW
 dGZGY/Nw/iPwKrrZ/goI0fBenZedU5qhysO9RopXXWsljZmdsiXUIBXzmlUdeehCEnQzY8vC
 w0z4YvxJ673Rq/I2o2h+o1dHlBcn6eDr59AAOZX4lMgbzwdAZsTWCFuCyCh3gICxrX3nRXol
 akATyfePnNDFYYgHxe36rw2H5fd2mWfStLGzhHmLw4MV6Dlmd40OeNaKb27nCYbUEaxPoBdB
 vfZyEJHw9oz9er9RKclTqYD086zpE2MuG1NsVlT5jjnleWbKGYn6APGPFZuKt/PNf1q+kRTK
 axfRSWID6QMZJf5yWl4lIefA96p3kvnam2hFnL7G2k0GU+BvSXClJ8XL0fK8yd6W+hZ/vg6u
 QNsfsF+c+LdkP2YZq67IuSSRhpABbau3S3QOElsoo8h9N6iJJDW73gFQLV33RG1igkJMj6lE
 kiUL12iYqxSLNHTog3QWZl5VInm9SEEVszviH3CuE4e0sxj3WzBaL835P47Z4uCFaGvg3+JB
 229DBc5e7MW0K4pPUnIpN1BWRdc04n7nt+uMuEao3LEQ2vM8VO5kCzPHP4ULhTTsG+aP8thy
 c/x9GDhOmMcSXknCjWoDtgO6pLt1+dfvnaOnP7Jcd4t/qgOVqNhaO24Mm8yBfPIAHLF3gwtM
 libkwfbsNKlz84qpY4uxLCDJDKng==
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42256268"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IhA90rtXacNrOY1AthKI63v368L4AxqZQqUT+eCZsQGVIzYYoh12BLhLyJ1hRUCO4Ogn3FTF1Hrh3inaLfhYO64ySUgEFVYQHw2P84PCkQVB1xHyJmqYzSy7fEd8XY6F/3dBj72bzuwZJthAEvEOkYYLsSWF5WhG0pwPCtC6CUa0qXImUbn3BOXYAQaCr7kKaDGn6z0mM33ghURjPcxFq7TF5zGv/6RPLOo0KJ4hT90qGJ2bGhlJbhjIIKyO5ScguPkihn6NtZ8GISQmMPqxX2vVmbyRz4EPk4HRxC9JSQx7j4iPtipIcXiPsTFh4ZiXd+vqJxjuwK3ervxTmu3o5g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jULlK50QeX/Y8AEyYlTlLdE3vCTVfOQ8jyejnSwrpFg=;
 b=Gi4bHxKcx0z++njHfoLZe4vkxE9x8mZMia9ngCdgAlYC96xYuaHxi96SFXTtshvrb0x3kmI9++l296+B/1ekrqPMhlg7sodHMX9sF1I57oTvFud6y6KkeqxPTcUXifxiRDiWfGC/45Syncc/Crr8g7fWqJBHqeJAPVKmV6gcyUhljUYC8TInTMXLSepkBw2MCiY6lRtUGRJ7s15V6OPFkGbUKBcrR7EtVtI1t3hcvro42YcMIWuH9siBxoRKYrxj9vmvYEpJX2pjJntwG5H3eTH8o9arzsGrByrpee88MJmWz4IOzCs7hxRWdDykCb9DQRN2Xutxi7A1+RBjvoU9Tw==
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=jULlK50QeX/Y8AEyYlTlLdE3vCTVfOQ8jyejnSwrpFg=;
 b=KSte+egIpT7BRaT1Drz6Foot80H0raBsws3iKQzePDnW1YeNcYzUjXCPPn6mkHPO6ksozoCLQQ/N8RZbkCNbmPvtVDPKnnZzBIT7Lz+wM63J09RRrA2/mYzDW5Z1cMO+Qns1pCRNTkovcuvFWCBDAbpoZUN1OupMIbt4JzOrJbQ=
Date: Fri, 23 Apr 2021 11:46:49 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 2/2] x86/pv: fix clang build without CONFIG_PV32
Message-ID: <YIKXiRv7yIsGMqd0@Air-de-Roger>
References: <20210423094343.5850-1-roger.pau@citrix.com>
 <20210423094343.5850-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20210423094343.5850-3-roger.pau@citrix.com>
X-ClientProxiedBy: PR3P191CA0025.EURP191.PROD.OUTLOOK.COM
 (2603:10a6:102:54::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f71a2819-4602-420e-d95a-08d9063cba32
X-MS-TrafficTypeDiagnostic: DS7PR03MB5591:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB55910511C39BC837713F24208F459@DS7PR03MB5591.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3383;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: KquGlHb0hL2xOFFIt77boQR5TYFA4NRSFBrfJhUieJgsnAJSTFwKIbsbX8m8vO4+X594px6kg3DhPPJEwtrReRvt6zWgBc07TPHjJVTZOyQnPvhpuomCLE5RL9fkh1U90x+AGEhJh7aR9tfGd9V6Zn2ft9NKgCZc8DtFQGU24tyodHyLvn08S3WpFu4lknOkoioaMDWsJllw1N2q94U6sEvC+lBqYErHi5WN8628/3oFFJV7t0MZ5/JuOtGIch4iijx4YP4qd+WXiH0gQ1MDTMER60X0neW8GtfaBvVfAMuqApQdFrIMFIbtIYQm/GUT8LAaXww9nn1sYcbEedKjgyCR7eOt4EsQ0/ciEK3aYCs2zYRGzbn9cFBz98/+LrcFNH3HM6vrRKqx+F2l9Rrazo1q8/XhG9GKmGO9QlVWg9jq72zt9lJKPOKFI5VkoVYc1rlR+5lrlKE44aKoQtjsyRNN4iESVbkYNBIrg8Bc5Uooj9Q+F48FNB/DtwA4FisD99DcgFMl8DDjrlbrOeUweaDdA24RlHf1Hbvv4u3FU+oOoXCs1dBi5krcCBeqWka1CDbmezSl4KKt5QIkrsOCBBiPqL1lHEmqK/oDjpOigvI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(366004)(39860400002)(376002)(136003)(396003)(9686003)(8676002)(6486002)(6916009)(33716001)(85182001)(5660300002)(38100700002)(956004)(4326008)(26005)(66556008)(2906002)(186003)(66476007)(16526019)(54906003)(478600001)(86362001)(558084003)(66946007)(6666004)(6496006)(316002)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f71a2819-4602-420e-d95a-08d9063cba32
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 09:46:54.2639
 (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: ofTYKOSyoOtC4FbPbDYenYNKEm8ZHOi5bBAXPFhCXt32dhNuu7rSoxYdDU2hnmvG3NRLzhrM9eDj6Roru5rJyw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5591
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 11:43:43AM +0200, Roger Pau Monne wrote:
> Clang reports the following build error without CONFIG_PV:

s/CONFIG_PV/CONFIG_PV32/ on the line above, sorry.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:48:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:48:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116026.221418 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsQc-0003Ir-Cj; Fri, 23 Apr 2021 09:48:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116026.221418; Fri, 23 Apr 2021 09: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 1lZsQc-0003Ik-9V; Fri, 23 Apr 2021 09:48:50 +0000
Received: by outflank-mailman (input) for mailman id 116026;
 Fri, 23 Apr 2021 09:48:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZsQb-0003Id-JB
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:48:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e62f7b4b-99a4-40ce-b599-06a2658f35ac;
 Fri, 23 Apr 2021 09:48:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4FFDCAC7D;
 Fri, 23 Apr 2021 09:48: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: e62f7b4b-99a4-40ce-b599-06a2658f35ac
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619171327; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=olQh/0u/QqXQ6bnr5oUfQpcU+9ISJ5zhq0LgcY0oSuk=;
	b=gEAdhAIVYeHYSRujChrS+xVXVvdoENKjHisyXR3O5WDwDdf/km0/n+NH9bEzjogIkcVd9K
	zY+NscJtwHLHqZy0All2tDBCbrJ8XPrMHoBWpOeKpdMVJpuEHAWIk8V8dBDaLIMZ3SGa/K
	w5MQrP3CRQj0m0p63K0+E1VKw0IYZ6c=
Subject: Re: [PATCH 2/2] x86/pv: fix clang build without CONFIG_PV32
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: <20210423094343.5850-1-roger.pau@citrix.com>
 <20210423094343.5850-3-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <4282c7fb-4561-29c1-2bf8-18a50c5530ef@suse.com>
Date: Fri, 23 Apr 2021 11:48:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210423094343.5850-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 11:43, Roger Pau Monne wrote:
> Clang reports the following build error without CONFIG_PV:
> 
> hypercall.c:253:10: error: variable 'op' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
>     if ( !is_pv_32bit_vcpu(curr) )
>          ^~~~~~~~~~~~~~~~~~~~~~~
> hypercall.c:282:21: note: uninitialized use occurs here
>     return unlikely(op == __HYPERVISOR_iret)
>                     ^~
> /root/src/xen/xen/include/xen/compiler.h:21:43: note: expanded from macro 'unlikely'
> #define unlikely(x)   __builtin_expect(!!(x),0)
>                                           ^
> hypercall.c:253:5: note: remove the 'if' if its condition is always true
>     if ( !is_pv_32bit_vcpu(curr) )
>     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> hypercall.c:251:21: note: initialize the variable 'op' to silence this warning
>     unsigned long op;
>                     ^
>                      = 0
> 
> Rearrange the code in arch_do_multicall_call so that the if guards the
> 32bit branch and when CONFIG_PV32 is not set there's no conditional at
> all.
> 
> Fixes: 527922008bc ('x86: slim down hypercall handling when !PV32')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

I find it odd for the compiler to warn like this, but well ...
Acked-by: Jan Beulich <jbeulich@suse.com>

> Should the is_pv_32bit_vcpu be wrapped in an unlikely hint?

Not sure. Andrew did some similar rearrangement elsewhere for
other reasons, without adding unlikely(). Personally I think
we'd better add them, but then preferably add consistently as
possible.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 09:50:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 09:50:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116034.221430 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsSR-00048m-Sc; Fri, 23 Apr 2021 09:50:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116034.221430; Fri, 23 Apr 2021 09:50:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsSR-00048f-PH; Fri, 23 Apr 2021 09:50:43 +0000
Received: by outflank-mailman (input) for mailman id 116034;
 Fri, 23 Apr 2021 09:50:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZsSQ-00048Y-6s
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 09:50:42 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5c8734dd-a611-4d21-ac29-8ba0ebb51fae;
 Fri, 23 Apr 2021 09:50: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: 5c8734dd-a611-4d21-ac29-8ba0ebb51fae
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619171440;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=WSOfKzd556qdr7wur8+pM0sjMW7nkeRGMn2mfniW/m8=;
  b=CRNHPiz95DydfLq4W/qmQ0F2l+IrS44QW+8PZXkQAiKArcCK9TqJR+nB
   a+QttNSxe9MtvCjrGXFM2sgSzPh6hQCeLpD1brkdBTcxBSp7tiuSRyKBa
   OL5EWUeaOB1uY1sJg6JANZqi4mgdm+xcdIxEj2SI/8Ilu/ABmMi2VJ3kI
   M=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: N/W0jHEtZa8/fiMHQVhz+zStW45WlfDfUSNY8ZH36PZgMyJH8xG8IUfwG1lcKUloXofoJR7xWZ
 G0XvfNt2BvoqHtEaDbSoi5UWLCnzJQJ6B1uf7XS3Pb9mqhfBW4VPyvOgtsHvlVv2Tn82Iw5ETh
 E7C5fgJPus/SE90cp1D/blmWom3I91UrSayJT5G/I13l9k4FYCJftf7dffQM8y6zGAoyZEg2oY
 j8sID0fDMk3bOmlUf/cVGFLP7Npk/HKH+O22lQzh3IWm6NbRjtCguEcmzSX53dnlfKvveam+qA
 G3w=
X-SBRS: 5.2
X-MesageID: 42380354
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:adMPeq9Bm28+jZmkRGRuk+FqcL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmzybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIULD38Zn/+
 Nbf6B6YeedMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsLV4hLxW5Ce2CmO2dxQxRLAod8OZ
 qH/8xcpyehf3N/VLXHOlAuWe/fq9rX0K/8aRkdCBI9rCWIhzWk6Ln1eiLoois2eTVJ3Lsk7C
 z5gxX0j5/Tyc2T5z398yvo75pQkMb80dcrPq2xo+UcNzmEsHfMWK1PQLuH1QpFxN2HyFFvq9
 XUpgdlAsIb0QKvQkiQgT/Anzbtyywv7XiK8y7qvVLGrdbiTDw3T+pt7LgpCifx0EYrsNFi3K
 8j5Qvw3PA7fHCw/lWJ2/HyWx5njUayq3Y5+NRj9EB3aocCdKRX6bUW4UI9KuZxIAvB9IslHO
 NyZfusncp+TFXyVQG/gkBfhPaoXng1Ay6cRFkDtsG/w1Ft7QFE5npd68oFknga8pUhD7FC+u
 TfK6xt0IpDV8kMcMtGdag8aPryLlaIbQPHMWqUL1iiPKYbO0jVo5qyxLku/umldLEB0ZNaou
 WObHpo8UoJP27+A8yH25NGtjrXRn+mYDjrwsZCo7Bkp7zVXtPQQG6+YWFrt/Hlj+QUA8XdVf
 r2EolRGeXfIWznHpsM9xHiWqNVNWIVXKQuy5YGcmPLhviOBpzht+TdfvqWDqHqCywYVmT2BW
 ZGcyP0IOlG80C3Sl71iBXcQBrWCwnC1KM1NJKf0/kYyYALOIEJmBMSk06F6saCLiAHkqFeRj
 o7HJrX1oeA4UWm92fB6GtkfjBHCFxO3bnmW3RW4SsDM0b+d6c/q8ySEFoim0evF1tadYf7AQ
 Rfr1N49eacNJqL3x0vDNqhLya8g2YMommJC7MRgLeK68ugWp5QNOdmZIVBUSHwUzBlkwdjr2
 lOLCUeQFXEKz/ogaK5yLoOBO/ecNF4qByxIdFdrE/esUn0n7BselIrGxqVFeKHiwcnQDRZwn
 dr9bUEvbaGkTGzbVckjP8AK11KYmSPCLdgBACIDb8k3IzDSUVVdyOnlDaagxY8di7P+18Jjm
 LsFyGSZMrGG0FQoHxez6bs/m5lb2n1RTMDVllK9alGUUjWsHd61uGGIpC+1GaccXMu6OAQOj
 OtW0pZHipeg/SMkDKFkjeLEnsrgqg0NuvGFbI5bvX4wXW2MrCFkqkAAt5Z9JtoL8rVr+cOSO
 6TEjXldQ/QOqcM4Ui4t3wlMC57pD0YivvuwgTi93X983glA/beSW4WDo0zEpW51SzDSPmJ2p
 ki0o5wkuu0L2nratmJjYvQdCVOLxvPoWiwC8EkwKokyp4ahf9WJd38VzCN6VRsmDMZB+3wnF
 kFQKt67KvaU7UfNPA6SmZ8xB4RiN+LLEEXqQT4De81QEE1gxbgTqe0youNjYBqP1aIqwTxM2
 SO6iFx///KWC2YyL4RYphAV1h+WQwZ6H54+vmFeJCVIAK2d/tb9F7SCA7xTJZtDIyEE64XtB
 B0/pWhmPKWbTPx3ET1sSFgKqxDt0ahTsXaOnPBJcd4t/i7M0+LmK2k/Yqaiyr2UyKybwAgvr
 J+HHZgJvhru30Fl4040i+7V6zxrAYEqjJlkE9av2+o/JOn7mfdFVxBKivDjPxtLGFuDkQ=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42380354"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ei3y8NRjmzYarosLsavSCeQ6n+ikbfKq4WnP8avtUady15C4IOigcDQ7lrnGCjdI18sCMFme7ChpKYsp7Z9WAmefAYCLjBAB36Qq0UBt63i372vzzJgXI5aeVVx3QaXk/6TheapVazbndPwlnSD0XttiZPKVyQ23OVIwDLxyKnrW1UQgqVcckvOL2rhaOHWjwQJX9zpZ6RaJRMWKQx2b7gR8Inq6E2jh6Pvl9NJy68aMMtCkv5UAEvcl4+sz6L3qo0At9tRMJBPMbuGMwDOot1Eggo34ZTDKLiAmeVjMbIBzjpwrxmRTQ0GnEtu4ATJdIHEMrqBdpm93SrSB0UJKxA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mOJzEjtpqvis25rro5Y2UDaMlNBuZsFuM+ITUJoKAi4=;
 b=Y9pwjyFwnOM4ZFHCMEvNDz2gXPm/aNCcievoNZnBDpyrW8FhBwc8UOPGevMasRo1rSl/LW5oXuSC/qKYKP37qcoG+1ugULCBeV5QF7DwMEan4vzv+79Gm31BKWE2jjlWFPME+yLpQ+qsbcVrxuJFNvv9m+HLFS7rj5dTYhoZCdCvmMEllllOcmnMk73hfASCqFv3amh9+a+MwJip7uUM0vLLMPqM42NAIEK49R2KsCbd6XdNhOf9x+uRB0tmLpbOyYGXKsvktUj8OnsWIjefP6j2Qb6BuztMVo1bkTTLc5O3/3Dj8MGHeXIJkmycc37mF1Rr6KgBowYlHj9q3xLdhw==
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=mOJzEjtpqvis25rro5Y2UDaMlNBuZsFuM+ITUJoKAi4=;
 b=jmOuGxl2hm0nWIac1NbXQcJqnXmmsLSU46t56bgKp3Zr55PVvK6Vn6U/KnxyZsTn7tcAlJ+UT+QHDFbFywgptxBC/YRoDzjrZYXN8fhLI8E36cJucVm7tSFSyD5kWKl6h18X+MD242MP38r7JZJldTBQ+5BIe3iGEHF3bf93mmo=
Date: Fri, 23 Apr 2021 11:50:32 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH] x86/oprof: fix !HVM && !PV32 build
Message-ID: <YIKYaCr13TiwxqRq@Air-de-Roger>
References: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
 <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
 <caab96a2-3949-9ddb-e6ab-9a95c958e4d6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <caab96a2-3949-9ddb-e6ab-9a95c958e4d6@suse.com>
X-ClientProxiedBy: PR0P264CA0266.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:1::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f98f318c-e1e4-4402-9742-08d9063d3f86
X-MS-TrafficTypeDiagnostic: DM5PR03MB2921:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB29215576EBA6E57E3D2E671C8F459@DM5PR03MB2921.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: TthIhgdXJNG4klr8/xU2eWcAmEBJtuzQ6Mrqy4btY0hL5hsM5SeNaC9Qix+Xh0YCfiJzcyJQCE5guebYwV6+v8DjL6njMMksYvskNOajPmYGkX+AIbqM0F+BeLVLzIFxLwqC5ulwgA765urPSubCBDd1p+JReBGJd9cuO34wjjtWOP7i+/nqwAdwArUF80y4zk8xcjx/2+UFMtaDNsY8IrXikh6CWwWW0iuHsc2fQ4bATaw5I0I/NYfCtQ7iSw9lDMPFrlTgPVc/M0kqlXwxYzphxBwhImurW28+8ZgvcxqkVbhyK3OSXefjRR1SSKBGUK2x0Gjsw7TSTf/8r8ZUGOgPiA4XXZUGXsLlacaFwW3Gx+adXB+5ku/vAqm8m0MGso75YqXqSRZEyzKZWf8L+IMR9bVljF82KWfqkuqzAhMs1JI7gL9n6JiFf2mN4uvhyT2wHehEEYOamC4Ri7AwpBTNhuMYlGc3XomYcgQ4I2CkElVSIqZkR2qdxF3yS6ZWlbL2tCYCtLFqaAVf1QFFugDx9xblFmpeN+CdmtcdEi79NcQdnRfi08hhd5sF8/TYO+p1RZtPAjG7S+I4YXwlCmsUlesMycUs/S95jj42Se0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(396003)(39860400002)(376002)(346002)(366004)(83380400001)(85182001)(956004)(66946007)(66476007)(66556008)(26005)(186003)(16526019)(54906003)(316002)(86362001)(38100700002)(8936002)(9686003)(8676002)(6486002)(53546011)(478600001)(6496006)(5660300002)(6916009)(2906002)(4326008)(6666004)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f98f318c-e1e4-4402-9742-08d9063d3f86
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 09:50:38.0114
 (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: T9JSODNgqLuzn7PofbG0XBv854GjHuICL1NtiuQHL2d17W3Mt4XS2WMN50awOIwuaTF6uYAVnogKB6Lh4iu8Fg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2921
X-OriginatorOrg: citrix.com

On Fri, Apr 16, 2021 at 04:20:59PM +0200, Jan Beulich wrote:
> On 16.04.2021 15:41, Andrew Cooper wrote:
> > On 16/04/2021 09:16, Jan Beulich wrote:
> >> clang, at the very least, doesn't like unused inline functions, unless
> >> their definitions live in a header.
> >>
> >> Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
> >> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> > 
> > I agree this will fix the build.  However, looking at the code, I'm not
> > sure the original CONFIG_COMPAT was correct.  In particular, ...
> > 
> >>
> >> --- a/xen/arch/x86/oprofile/backtrace.c
> >> +++ b/xen/arch/x86/oprofile/backtrace.c
> >> @@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
> >>      return head->ebp;
> >>  }
> >>  
> >> +#ifdef CONFIG_COMPAT
> >>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
> >>  {
> >>      if (is_hvm_vcpu(vcpu))
> > 
> > ... this chunk of logic demonstrates that what oprofile is doing isn't
> > related to the Xen ABI in the slightest.
> > 
> > I think OProfile is misusing the guest handle infrastructure, and
> > shouldn't be using it for this task.
> 
> I'm afraid I consider this something for another day. Both the
> original #ifdef and the one getting added here are merely
> measures to get things to build.

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Without entering on the debate whether CONFIG_COMPAT is the correct
conditional to use it's not making the issue any worse, and it will
allow to unblock the build. We can discuss about the CONFIG_COMPAT
stuff later.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:07:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:07:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116043.221442 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsiW-0005Uy-8X; Fri, 23 Apr 2021 10:07:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116043.221442; Fri, 23 Apr 2021 10: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 1lZsiW-0005Ur-5U; Fri, 23 Apr 2021 10:07:20 +0000
Received: by outflank-mailman (input) for mailman id 116043;
 Fri, 23 Apr 2021 10:07:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZsiU-0005Um-P2
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:07:18 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 57327895-63d2-4f60-ae34-bea4d9f1de8c;
 Fri, 23 Apr 2021 10:07: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: 57327895-63d2-4f60-ae34-bea4d9f1de8c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619172437;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ECOB+R1k++5vPCrOA7Dbxs5iormzr9Y/jp5rhNKmwQo=;
  b=CMh4AzwgoPucKOOOFmEo2cq/ldyO38sVX9Fyq2r/qUSV8vXjxYj0vODS
   sjAVDb92QRAH33IW6SR0zkyijUuDdbxjT5eJx7QZ3ofbw5ab3svUrm3cF
   O3POYvJzSWcT4HPUxJyvr5qNK4KSZSmlOwjXdLWHObn+eaNwGD2cA4na0
   0=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: SFcqvaxNLZS9WGsH7Zn4omkl/7dwH/17Z3u3eGtV2uKq3UeU6kDG1df9FiSmjT6MTkkbXA9Dc6
 3A8sVaJvzy4NWRZwffaT8KNzYK7xYeHqbQkNbEb+fpw22CC7ZCI57BdlQEaGNo2myt4jsu5+Sf
 0uo/wDt9sZOoTdg9SsSGkQOsgelJJuK1lHyTHyVa0EvgpdMr6McjZ0kK5ySAULv0scNVZ7AzCB
 a0FVYWILOxRDznJ0kC+kuJxzuuIsyljuYjKWIPmoLyATIyT5tXmzHowJd0BGdn6eaayMarLNVs
 L4I=
X-SBRS: 5.2
X-MesageID: 43757634
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Em1ysKzHZtwcbKntQ73/KrPxnO4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmqJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheTysd07o
 0lSaR3DbTLYGRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRCp1IxS0RMHf9LmRdQg5aCZ0lUL
 ed/NNAvTq8eXIRB/7LfEUtde7FutHNidbaehYAHREq802jijmv5b78HXGjr2ojehlIxqov9n
 WArhzh6syYwoqG4zL/90uW1ZRZn9P91sBObfbjtuE5Iijh4zzYBrhJdKaFuFkO0YSSwXYs1O
 LBuhIxe/l0gkmhAl2dhTvI903e3C0163nkoGXo8UfLhcDiXjo1B45gqOtiA2LkwnEttt19z6
 5Htljx3/E8bWKi7VbAzuPFWB1wmk2/rWBKq59qs1VlXZYDc7gUlIQD/SpuYeY9NRjn44MqGv
 QGNrC72N9qdzqhHhTkl1gq6tmtUnMvJwyBU0gPt+eEugIm4kxR/g82wtcSkWwH8494Y55Y5/
 7cOqAtr71WSNQKBJgNSNspcI+SMCjgUBjMOGWdLRDOE7wGAWvEr9rS7K8u7O+nVZQUxPIJ6d
 v8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwbz4Rlu5XnLYCbcRGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJgwxD+YZ9PMnMTOfdl++oTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8tRz72CMJc7l26e3PxjRTLMkmdOHDXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHljv8UNDQ
 5DCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PgQcLNkjzYIsSotn3QxEX4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dkWXkmUUv3DPa5sHgKWM6YPEd/oDf9gbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgqocVCuHZf9xVmxyqPsZQlHLauSyn1IISb0peewTrfd+cgA4oSTYRrE
 Z26bUjjL2JnivqFXEym90iMFpHaH2eBZVPCAjtXvQSppnbPCVLCUuajz2TjB8+Pk7n7V8biG
 DaISqIQv3TGVZGtndE0qHlzUNsegymDjFNQ0E/lbc4OXXNu3513+POXKa13meLQnYpw+0WMl
 j+EHAvCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N5vJ3Gm2FYGOnaYaPvNd8Zp/LuryuusTXe
 /3QX7SEBrIT8cSnyCFrHcsPyd57EQ+mfTzwRv/8SyW2mU8Dfe6GiURe5grZ/Wnq07qSPaD3M
 8n0ZYbve6sPn7wbdDD46fNdDJHIg7Sp2nzb+xAk+EhgYsC8J9IW7/cWn/08VsC+jMUBsL9jl
 kfT6R2+6qpAP4mQ+UiPwZiumM0n9GOJnYxugP4AuUCbUgg5kWrSu+h0v7tk/4TGUWPqwv7BE
 mH/wBc9/nDWTGf1bRyMdNGHU1mLGw94m9l5uWMasn5DxirbfhK+DOBQzWAWY4YbKiOArMLqB
 lmp/mOgu+MbiL9nCTdpyFyLK4L02GpR6qJcU+xMN8N19yxIlKXhKS2pOa1kTfsUDO+L30iur
 ctTz1YUu1zzh84jIM21SCuSqv45mId+mEung1PpxrKwYip4GDSAEdcFxbW668mBAVuDg==
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="43757634"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hv3UC57ClcC7fT0ORwBSja6R/1tXm1g/b/4HczrfDmpSubrEPIGc6nBVN4Ctos1S8Z4ntZaq0BSxjLjcSiMRXTmygHUc6IJBQhnbjq30mgowSQwzOScKS8uzeJcSaT1i4L1PPCFNQnMl2DXmPcT+HUPob5pXIB4xDcJH6QI3ywfBSXlF9XABl6MoAyzaBmarWBbxf3ZSbq6JkzMFkctW8m3t4GZHng67t/+L45nbC9O1SfejnOSLE9Ijnj5NGJM55A6gua4Gl3aC7FJOkuZAMeo7wh+oS6L6l1rNVdJIhCVnDy9WfbVBozYWeA/UUfV+ZEsHIggTMxADHTZbTd+IZw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RYPLIf1gW3Osu1zV8xKlnwaABTdSnYpWNrRt1+CmwKk=;
 b=aQZEht0GXr8C8dNJJGmnpzdWDAj4hZur0PUkX0c3yRew0OhsmVFldM3VxJAmvNx+SQ/1LR4KxXg5qQn00nkVOSJHV25rulvWNoNCEvYc7TBUhTbXluf0XMEFttB/KmUvrm48CQQD08HwGmuN/vPimG2C+6FdstFPOky1nybTYhmRdxD8FOHgJXvCpxu531DEqyCDcgO3KghWME2BcS0tjTCy5OiAUUrTwxkg76y1Xf7Ssopbs2mTEnAHP99/NWPuWeH5maLpZ9gUnWBZSwGYX8LEmpPHxJTALjtKeouYbf7uYw/ULdC1kYos6TyNY398uFIAACpKjAOdQ03S9BoqCA==
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=RYPLIf1gW3Osu1zV8xKlnwaABTdSnYpWNrRt1+CmwKk=;
 b=BE12K5anYdcDIjl2Qs4qCh9QJ3Y/qMTyeCR+mUz/yvHLGvnsScBRDsGKIavxB6yhoqwENh53y4N4Qu7dqWeU4gWtHI2T5ieAxjaVl5zMvjHPj8q7IYv8GTG9geO4mYWSmH7kKpws4fAfN3m0M0NQ6NlLv2RbW9iEznku1hNpct4=
Date: Fri, 23 Apr 2021 12:07:07 +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/8] x86/EFI: keep debug info in xen.efi
Message-ID: <YIKcS0o/9A0whxa/@Air-de-Roger>
References: <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
 <YIGOrOL+pKGaHqwX@Air-de-Roger>
 <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
 <YIGcE5Cr+xK4K6gw@Air-de-Roger>
 <98431d14-d4a0-61a8-148e-221652f37b61@suse.com>
 <YIJ3icwAoGEW/AO+@Air-de-Roger>
 <32bba278-12cc-d105-7b95-6a788992d70c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <32bba278-12cc-d105-7b95-6a788992d70c@suse.com>
X-ClientProxiedBy: MR2P264CA0090.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f77c873f-4882-40e9-0d39-08d9063f9110
X-MS-TrafficTypeDiagnostic: DM6PR03MB5323:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB53237BFA66FDF579F5271B998F459@DM6PR03MB5323.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: h6aT6nwg4xJ95R2LNrXrb4rxJ8I7Fu61CGM0hymp1llcDRVFOSExHO4eHRR/GLF7UJygSaeUF601Yy85tlV4eC8to085LwKiG5P5bApoOzJLbtt+9xvLcAbZsofDxZk+EoRAMe90l0WS+Xz/3C1SswE1C2yaLn1mZ6TlxlAZ8zGPO3W4bAvj2C1FxPg20dCE0ieo3pJ5Y1fZujc+SzPw09h7Zbj/SN7MjfzYxegH5xbzvTBMOe6V56Ms9/K578lCNaoYR48RP8znh/VFB6RQwm6VB9mwvZzDGurEZKEG0KVehLCI3qurZAIXPzpJ1pdrV/REbiYsCwfcQUXP3J3s4CCqyLsy3ZAicB5Qk3QYrMOWBo5fG145qc3KoAU5A1hvVYlr8Ady18XKEQO9jJauAAfxcXyoyM+PitafJyco0UVgS7gRz5ucozBCtfCFAFYSKBICXoYUB3cSboQzbbjiTML1YsXGCeUCFDOVzO5YPGuiVsCt+UG9EAdHiwNJ1wNINWP78r0xyd12abUjbvEp5ROlRnr0yK1FUbCISCOiBb3KIspW/8V37/If1P6ZzAAqeu05Gs9pummc6bwkTV5om2b/8sACP82ko1BHGbT09QOhDma0u0Xl+tQEAbkAZjuVipZworblDiGo2UUvlZbW4AXK60ABbEB8mR/LzLoON/vvqwEAbJeji6EkjMRPZlEE
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(376002)(346002)(396003)(39860400002)(136003)(38100700002)(83380400001)(6496006)(5660300002)(9686003)(85182001)(8936002)(86362001)(2906002)(478600001)(26005)(6666004)(186003)(16526019)(53546011)(8676002)(66946007)(956004)(66476007)(66556008)(33716001)(6916009)(54906003)(966005)(6486002)(4326008)(316002)(45080400002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f77c873f-4882-40e9-0d39-08d9063f9110
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 10:07:13.9286
 (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: ERyOTQMQ4sLppwZ6gHvhjssTIQRx7WrGZsvzAnviWcCpQAmQXbDlbyQ6w/wo6SGbCY9bBFPZL2qh0CNsnDT58w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5323
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 10:51:40AM +0200, Jan Beulich wrote:
> On 23.04.2021 09:30, Roger Pau Monné wrote:
> > /*
> >  * Explicitly list debug section for the PE output so that they don't
> >  * end up at VA 0 which is below image base and thus invalid. Also use
> >  * the NOLOAD directive, even when currently ignored by PE output, in
> >  * order to note those sections shouldn't be loaded into memory.
> >  *
> >  * Note such sections are past _end, so if loaded will be discarded by
> >  * Xen anyway.
> >  */
> > 
> > Feel free to reword or expand the comment.
> 
> Yes, I've edited it some while inserting. Will see to get to
> submitting v2 then.
> 
> > Not sure there's some
> > reference we could add here about how debug sections are placed in PE
> > files usually.
> 
> As said before - I don't think there's any "usually" here, which is
> why different environments have invented different ways. The debug
> info native to COFF is more like ELF's symbol table (with a little
> bit of extra information) plus Dwarf's .debug_line, but not really
> fully covering what you'd expect from debug info.

One last thing, do you know if the newly added debug_* sections get
the IMAGE_SCN_MEM_DISCARDABLE section flag set?

Not sure there's a way we can force it from the linker script TBH, but
would be nice and seems to be a recommended flag for debug sections
according to Microsoft [0].

Thanks, Roger.

[0] https://docs.microsoft.com/en-us/windows/win32/debug/pe-format#section-flags


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:19:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:19:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116054.221454 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsuB-0006db-Du; Fri, 23 Apr 2021 10:19:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116054.221454; Fri, 23 Apr 2021 10:19:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsuB-0006dU-AW; Fri, 23 Apr 2021 10:19:23 +0000
Received: by outflank-mailman (input) for mailman id 116054;
 Fri, 23 Apr 2021 10:19:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=o87G=JU=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lZsu9-0006dP-Cg
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:19:21 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::8])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 69d9d7e7-7043-4f1b-ae18-64ca846497f9;
 Fri, 23 Apr 2021 10:19:20 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.3 DYNA|AUTH)
 with ESMTPSA id g00c91x3NAJEZTL
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits))
 (Client did not present a certificate);
 Fri, 23 Apr 2021 12:19: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: 69d9d7e7-7043-4f1b-ae18-64ca846497f9
ARC-Seal: i=1; a=rsa-sha256; t=1619173155; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=X/vZqeQWN4fpmD7u1adhkUP7vIZhU+7ibvrQl+KOw6DmzrcPmvi5L3zxF7padUku72
    AP4zAOCCBNTBERhVf5W5ApYcGI0dtMcBt9Sc46kD8i9wkhMBuEXMyyrAMJS2uePDmDy/
    wQ2rIJd/1Fnl/R7rTR3e5HVTrAg9TQsKzgJzWCbHvXPK0JNE7hJ9hpkkOsRbQ4MIPG1K
    yJEdb12XXw/F+WdNOSvPA9JiUUSFJ9KsBldIdxbfLDeE+NzF1JqJX7vMNOpyQ9wJvifp
    13/d+RcIuySDnuf11v1cPyRtGI6XsmJ5SREoEuj86yu3z9kNIeqHZsMnX5SSVtWukkwe
    4XGw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619173155;
    s=strato-dkim-0002; d=strato.com;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=1c/59yaGMP0KFR8kh+rw15Nd5hXXcU0KoDro+7g0wT4=;
    b=WVcxtmC0CRoK8qg8VzG6sqInMWcV3Ee8WQnaA2lSBqoKkZjNmDFovnIy0xB8O/amFe
    Vtbx41jUfcK0cMYwTp5OCwGAE3D2kRJ8tbpbIdXlqrDXzKJLdKjlXuNaNcTGYCehI7Hv
    +VxC43P2yNfW2UNgX3sjmJ9rw6qi7KMXrNsFTXHi2bx29CxPa+R0LsEHXIrYhvOtvgqp
    fqDeJWWaI0VEvJ9DhJH3Blb/HQfPcIfgD9vr9TrlNIf+Gseo1+bF/AQFT+whRD+uldQr
    WuOAuO6bSlSTYkRev8Yw7iJAjmmduBsT6WHuTgGBWtmRvCeNIy6Zg7IOYaZoPVBFlUmk
    W1nA==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619173155;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=1c/59yaGMP0KFR8kh+rw15Nd5hXXcU0KoDro+7g0wT4=;
    b=SUoZsza/XduQ8RiV1xya10EGK3br7yz9Ydtpl1vkIFXNMtg1tu9oycuslPcedDcaWi
    P82LtJMCm+SRmEMWj5PyTsiaFYClq4DZMZNgnebz5Rxs0uEiLP+JFrfjjNXjxFGMua6U
    TpRA0iDvqpE73RlXJk1VKcS99/NnhRM0zb7PF3V8r6S+NZedOfpHaiufqqbAIKSjMoSh
    H2KA0kvb0AcSFAywQ9/JoE+Cdc1VbugOVSJBXtoV6E1YO2ZJK/X+liv1AG++FFKgTmUD
    S0CbeDuk9bW19tsp7MO84omKM0kjDp1Pw5RRv0kOdq6Cl0/AGNJpaoBaBQPcMo2rPJbG
    YJqA==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuz7MdiQehTvc3RdcLGMdqQ=="
X-RZG-CLASS-ID: mo00
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1] tools/init-xenstore-domain: fix description of --param
Date: Fri, 23 Apr 2021 12:19:12 +0200
Message-Id: <20210423101912.7073-1-olaf@aepfle.de>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The string is for the binary within the domain, not for the domain itself.

Fixes commit 83c365e6395f39c7ff91785b400682173d5e5d04

Signed-off-by: Olaf Hering <olaf@aepfle.de>
---
 tools/helpers/init-xenstore-domain.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/helpers/init-xenstore-domain.c b/tools/helpers/init-xenstore-domain.c
index 6836002f0b..8543a5efd6 100644
--- a/tools/helpers/init-xenstore-domain.c
+++ b/tools/helpers/init-xenstore-domain.c
@@ -58,7 +58,7 @@ static void usage(void)
 "  --memory <memory size>     size of the domain in MB, mandatory\n"
 "  --flask <flask-label>      optional flask label of the domain\n"
 "  --ramdisk <ramdisk-file>   optional ramdisk file for the domain\n"
-"  --param <cmdline>          optional additional parameters for the domain\n"
+"  --param <cmdline>          optional additional parameters for xenstored\n"
 "  --name <name>              name of the domain (default: Xenstore)\n"
 "  --maxmem <max size>        maximum memory size in the format:\n"
 "                             <MB val>|<a>/<b>|<MB val>:<a>/<b>\n"


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:22:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:22:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116060.221466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZsxM-0007ha-Th; Fri, 23 Apr 2021 10:22:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116060.221466; Fri, 23 Apr 2021 10: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 1lZsxM-0007hS-QQ; Fri, 23 Apr 2021 10:22:40 +0000
Received: by outflank-mailman (input) for mailman id 116060;
 Fri, 23 Apr 2021 10:22:40 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=YHlh=JU=list.ru=valor@srs-us1.protection.inumbo.net>)
 id 1lZsxL-0007gv-OL
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 10:22:40 +0000
Received: from smtp36.i.mail.ru (unknown [94.100.177.96])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 796a99cc-ef37-4de2-bf7d-3da3cf806460;
 Fri, 23 Apr 2021 10:22:37 +0000 (UTC)
Received: by smtp36.i.mail.ru with esmtpa (envelope-from <valor@list.ru>)
 id 1lZsxH-0002dK-FO; Fri, 23 Apr 2021 13:22:35 +0300
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 796a99cc-ef37-4de2-bf7d-3da3cf806460
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=list.ru; s=mail3;
	h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:Cc:To:From:References:Subject:From:Subject:Content-Type:Content-Transfer-Encoding:To:Cc; bh=FgzuYzveHfgDiRmpu14dVa4tC6zz3tdUhrDe7LeebVw=;
	b=AwOgrKydjXoO5dSV4yi7BdRLEKEfGBpXJuzmi5W/Qz60Gbj2MGd3whXrk4OF4mR4L35YajZyvCjs3EuzloUWhFNw0BvFGhO6kui7qgaKX4UoVWoKl8Pa6azPQ81vkhss5e+SEINeIVrOZWjtJb/VRj2KUdwUW46oTtTL6bOE3Qs=;
Subject: Fwd: [BUG] Windows is frozen after restore from snapshot
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
From: Sergey Kovalev <valor@list.ru>
To: xen-devel@lists.xen.org
Cc: zaytsevgu@gmail.com
X-Forwarded-Message-Id: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
Message-ID: <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
Date: Fri, 23 Apr 2021 13:22:34 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: ru-RU
Content-Transfer-Encoding: 7bit
Authentication-Results: smtp36.i.mail.ru; auth=pass smtp.auth=valor@list.ru smtp.mailfrom=valor@list.ru
X-7564579A: 78E4E2B564C1792B
X-77F55803: 4F1203BC0FB41BD9203E2ABA940B7548F5BB1D231581C270E5D52311C6CD930F182A05F538085040BBA653FF584691B923390E41C51DC3537C5491697FDD0F38C07E61312F23B3F4
X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE70043D879A87EF1BCEA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F79006371005780D56A98C20EA1F7E6F0F101C67CDEEF6D7F21E0D1D9295C2E9FA3191EE1B59CA4C82EFA658F78FA424D9502CF54F62EC466A4B22E1F6B57BC7E64490618DEB871D839B73339E8FC8737B5C22498424CA1AAF98A6958941B15DA834481FCF19DD082D7633A0EF3E4896CB9E6436389733CBF5DBD5E9D5E8D9A59859A8B68424CA1AAF98A6958941B15DA834481F9449624AB7ADAF37BA3038C0950A5D3613377AFFFEAFD269176DF2183F8FC7C0287EE14F2A8630337B076A6E789B0E97A8DF7F3B2552694A1E7802607F20496D49FD398EE364050F33AC447995A7AD18AD7EC71F1DB88427C4224003CC8364764FCD328C77E6096CE2021AF6380DFAD1A18204E546F3947CB11811A4A51E3B096D1867E19FE1407959CC434672EE6371089D37D7C0E48F6C8AA50765F79006377870F476E0DB9443EFF80C71ABB335746BA297DBC24807EABDAD6C7F3747799A
X-C1DE0DAB: 0D63561A33F958A5A5AFD6085112A9D461A8B0219E5F8AA32770F8F87B085582D59269BC5F550898D99A6476B3ADF6B47008B74DF8BB9EF7333BD3B22AA88B938A852937E12ACA751098AAFFB0A1231D8E8E86DC7131B365E7726E8460B7C23C
X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D34A9A0A0BF1A2CAC62EA6EDFC063BF2FD9096CD9767523C0F220692F36B91914C009152201A81279B91D7E09C32AA3244CF2E9079A8573FB001E6FB7A11CE9FC0764EE5813BBCA3A9D729B2BEF169E0186
X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojMA4lh0BuVjMw3MQdBa5Bdg==
X-Mailru-Sender: 6C3E74F07C41AE94CB3BE32A189147468D5125A9A80EED180AC2A19F178796C7739DF2B2D2CF89AEE54CE59283E19BE8E66B5C1DBFD5D09DD72DCFCE6FA85F85A74E2CAFD6E5C6FC67EA787935ED9F1B
X-Mras: Ok

# Abstract

After `xl save win win.mem` and then `xl restore win.hvm win.mem`
the Windows 10 VM remain frozen for about a minute. After the
minute it becomes responsive.

During the freeze the OS remains semi-responsive: on `Ctrl+Shift+Esc`
press the wait cursor appears (blue circle indicator).

This is an intermittent fault been reproduced only twice.

# Technical notes

It have been noticed that there were no timer interrupts during
the freeze.

zaytsevgu@gmail.com has debugged the received Xen state file and
noticed that the flag HPET_TN_PERIODIC been set after unfreeze.

Based on that he provided two Python scripts: one to check the
value and one to patch it.

Both "broken" state files we have been detected and patched
successfully.

# Other information

## Target machine

```bash
$ uname -a
Linux localhost 5.4.0-66-generic #74~18.04.2-Ubuntu SMP
Fri Feb 5 11:17:31 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
```

## Xen version

Build from source on tag RELEASE-4.12.4

## OS version

* Windows 10 build 1803 x64
* Hibernation, sleep and other disabled with powershell commands:
```
powercfg /hibernate off
powercfg /change standby-timeout-ac 0
powercfg /change standby-timeout-dc 0
powercfg /change monitor-timeout-ac 0
powercfg /change monitor-timeout-dc 0
powercfg /change disk-timeout-ac 0
powercfg /change disk-timeout-dc 0
```

## Configuration file

Build with envsubst from template:

```
name = "$VM_NAME"
type = "hvm"

vcpus = 2
maxvcpus = 2

memory = 2048
maxmem = 2048

on_poweroff = "destroy"
on_reboot = "destroy"
on_watchdog = "destroy"
on_crash = "destroy"
on_soft_reset = "soft-reset"

nomigrate = 1

disk = [ "format=qcow2, vdev=hda, target=$VM_DISK_IMAGE_PATH" ]

vif = [ "type=ioemu, model=e1000" ]

hdtype = "ahci"

shadow_memory = 16

altp2m = "external"

viridian = [ "defaults" ]

videoram = 128
vga = "stdvga"

vnc = 1
vncunused = 1

soundhw = "hda"

usb = 1
usbdevice = [ "usb-tablet" ]
```

## Check script

The script has been provided by zaytsevgu@gmail.com
(with little refactoring).

It checks that image is broken.

```python
#!/usr/bin/env python3


import logging
from pathlib import Path
import sys
import struct


def check_snapshot_hpet(snapshot: Path) -> bool:
     def get_b32(file):
         data = file.read(4)
         return struct.unpack('>L', data)[0]

     def get_l32(file):
         data = file.read(4)
         return struct.unpack('<L', data)[0]

     def get_l64(file):
         data = file.read(8)
         return struct.unpack('<Q', data)[0]

     def get_hpet_loc_by_tag9(file):
         while True:
             tag = get_l32(file)
             tlen = get_l32(file)
             if tag == 12:
                 break
             file.seek(tlen, 1)
         _ = get_l64(file) # caps
         _ = [get_l64(file) for i in range(31)]
         timer1_conf = get_l64(file)
         # Basic check
         if timer1_conf & 0xff == 0x34:
             return file.tell() - 8
         return None

     def get_hpet(file):
         _ = get_l32(file)  # x1
         _ = get_l32(file)  # x2
         hdr = file.read(4)
         if hdr != b'XENF':
             return None
         _ = get_b32(file)  # version
         get_b32(file)
         get_b32(file)
         _ = get_l32(file)  # dmt
         _ = get_l32(file)  # page_shift
         _ = get_l32(file)  # xmj
         _ = get_l32(file)  # xmn

         while True:
             tag_type = get_l32(file)
             rlen = get_l32(file)
             if tag_type == 9:
                 break
             else:
                 file.seek(rlen, 1)
         return get_hpet_loc_by_tag9(file)

     original = open(snapshot, 'rb')

     header = original.read(0x1000)
     xl_offset = header.index(b'LibxlFmt')
     original.seek(xl_offset)
     magic = original.read(8)
     if magic != b'LibxlFmt':
         logging.error('Invalid snapshot format')
         raise RuntimeError

     _ = get_b32(original)  # version
     _ = get_b32(original)  # options
     record_type = get_l32(original)
     _ = get_l32(original)  # blen
     if record_type != 1:
         logging.error('Invalid snapshot record type')
         raise RuntimeError
     hpet_flag_byte_offset = get_hpet(original)
     if hpet_flag_byte_offset is not None:
         original.close()
         return False
     else:
         original.close()
         return True


if check_snapshot_hpet(sys.argv[1]):
     print('The image is good! :)')
     sys.exit(0)
else:
     print('The image is so bad... :(')
     sys.exit(1)
```

The image could be fixed with a little addition:
```python
hpet_new = hpet[0] ^ 0x8
```
, on `hpet_flag_byte_offset`

## Patch script

```python
import sys
import struct
import io

def get_b32(file):
     data = file.read(4)
     return struct.unpack(">L", data)[0]

def get_l32(file):
     data = file.read(4)
     return struct.unpack("<L", data)[0]

def get_l64(file):
     data = file.read(8)
     return struct.unpack("<Q", data)[0]


def get_hpet_loc_by_tag9(file, rlen):
     while True:
         tag = get_l32(file)
         tlen = get_l32(file)
         if tag == 12:
             break
         file.seek(tlen, 1)
     caps = get_l64(file)
     [get_l64(file) for i in range(31)]
     timer1_conf = get_l64(file)
     print(hex(timer1_conf))
     if timer1_conf & 0xff == 0x34: #VERY DUMMY CHECK
         return file.tell() - 8
     return None

def get_hpet(file):
     x1 = get_l32(file)
     x2 = get_l32(file)
     hdr = file.read(4)
     # print(hdr)
     if hdr != b"XENF":
         return None
     version = get_b32(file)
     get_b32(file)
     get_b32(file)
     dmt = get_l32(file)
     page_shift = get_l32(file)
     xmj = get_l32(file)
     xmn = get_l32(file)

     while True:
         tag_type = get_l32(file)
         # print(tag_type)
         rlen = get_l32(file)
         if tag_type == 9:
             break
         else:
             file.seek(rlen, 1)
     print("Found tag 9!")
     return get_hpet_loc_by_tag9(file, rlen)


original = open(sys.argv[1], "rb")
new = open(sys.argv[1]+".hpet_enable_periodic", "wb")

header = original.read(0x1000)
xl_offset = header.index(b"LibxlFmt")
print("Found offset to xl data: {:x}".format(xl_offset))
original.seek(xl_offset)
magic = original.read(8)
if magic != b"LibxlFmt":
     print("ERROR INVALID FORMAT")
else:
     version = get_b32(original)
     options = get_b32(original)
     record_type = get_l32(original)
     blen = get_l32(original)
     # print(record_type, blen)
     if record_type != 1:
         0/0
     hpet_flag_byte_offset = get_hpet(original)
     if hpet_flag_byte_offset != None:
         print("Got hpet timer flag!")
         file_size = 0
         original.seek(0, 2)
         file_size = original.tell()
         original.seek(0,0)
         pos = 0
         block_size = 4*1024*1024
         print(hex(hpet_flag_byte_offset))
         while pos != hpet_flag_byte_offset:
             if hpet_flag_byte_offset - pos < block_size:
                 block_size = hpet_flag_byte_offset - pos
             data = original.read(block_size)
             new.write(data)
             pos += block_size
         hpet = original.read(8)
         # print(hpet)
         hpet_new = hpet[0] ^ 0x8
         # print(hpet_new)
         new.write(bytes((hpet_new,)))
         new.write(hpet[1:])
         pos = pos + 8
         block_size = 4*1024*1024
         while pos != file_size:
             if file_size - pos < block_size:
                 block_size = file_size - pos
             data = original.read(block_size)
             new.write(data)
             pos += block_size
     else:
         print("can't find")
original.close()
new.close()
```

-- 
With best regards,
Sergey Kovalev



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:37:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:37:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116070.221478 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtBZ-0000ce-Bk; Fri, 23 Apr 2021 10:37:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116070.221478; Fri, 23 Apr 2021 10: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 1lZtBZ-0000cX-8a; Fri, 23 Apr 2021 10:37:21 +0000
Received: by outflank-mailman (input) for mailman id 116070;
 Fri, 23 Apr 2021 10:37:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=o87G=JU=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lZtBY-0000cS-54
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:37:20 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::6])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 70cd2550-dcc7-4010-a015-32e776718dcb;
 Fri, 23 Apr 2021 10:37:18 +0000 (UTC)
Received: from aepfle.de by smtp.strato.de (RZmta 47.24.3 DYNA|AUTH)
 with ESMTPSA id g00c91x3NAbGZa9
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Fri, 23 Apr 2021 12:37: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: 70cd2550-dcc7-4010-a015-32e776718dcb
ARC-Seal: i=1; a=rsa-sha256; t=1619174237; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=p8Bbg5NZEYJfBI8D+QpKeG+3iKBKl6jIho2jiU4gySxPm2YIynZjtCN9Os22tRdrcE
    GNKFDmnmzQWIXnQnsIPLOozgntJE6bU4L8KkOA9hbXyI7ehHwpycvzzegBILqkGmHVXV
    SGcLT/jCiXPX7xWQG3M97KZkbogBbIAahuSucr/pPxwzcF0cBhVTGMwyuklRyG5cpQKl
    CXOfxHffqp43K5m3iv0uuYxLOINyrJXnx0NSsicSChFGpl0Sc+U06WZteaxOxHWb3TCz
    IX9hC33Pyc5ON7azisjkjumXOeaaFOxpKf43rBEvI0sNApYlQHkF1gZ4YO5K5isWwAdV
    hWYQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619174237;
    s=strato-dkim-0002; d=strato.com;
    h=In-Reply-To:References:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=j93W4MdtcJ06QaKj+KWzi2ni53gGP1p2Z/Qqky/mcFc=;
    b=moRMwC7htqeXvbZH0Zlj2JkpKXCGff7ci1mMAiBWenUpqn4C8I9eIqWDiIkV5Ew0M6
    xWIbvB77BfO1xVH1jHB21XjSUWYD0kdZBWBVcUCQThO+XOt63wvCCv8pSmTczaK2ztBY
    h/SULOnjR8qfs3iYhKWxCKRqwiN9lE0rXqB5yHmENvPnGZ39gbxVRjWTT9JaxZ0rTBRP
    FGAmd69LUAKCGAG8GmgV1HlrOVbDnwCoek/Io/2/hnGHMd9Q+HE8zlsNinIXYDW0tvir
    +GOyV7tLmAUvzUsSyOqeuzuJ1GteEslgsb70u6XRPH53evuOLUp1RvPLdLCQHRrDmCPT
    HwEg==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619174237;
    s=strato-dkim-0002; d=aepfle.de;
    h=In-Reply-To:References:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=j93W4MdtcJ06QaKj+KWzi2ni53gGP1p2Z/Qqky/mcFc=;
    b=CV32QIIkQlMcvnqckvLL3zrEI1NXs7cCmC1JvkeC970tm8griaFGLe5hcUJrK9jl/S
    NHu9oqM2k0bC5kEqXUfpY1JLgZ9nMMAkiLTXhVPJ8Ryq3oDDx4AkLVp9Ndnw9JinTG8I
    FSRUYTwwOvLwxq6QZSUvnbhi/IhKTHvefhSIG5QJ+a6V6FCM1EBnHapZpy/otZ9DOvky
    LnP4RtWi9SOrM/y50UMnSt+SFxP5He0aV5WliGBBCerVYWLeOreOp1ECMGDiuUe8cT2m
    MgqExuFQ6cEz14I6SZhpPqI2/+Y9TyxJcF1OfQXjJGfZzENddwnSza/3b/C6DBuJK1di
    FKRg==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuz7MdiQehTvc3RdcLGMdqQ=="
X-RZG-CLASS-ID: mo00
Date: Fri, 23 Apr 2021 12:37:12 +0200
From: Olaf Hering <olaf@aepfle.de>
To: Wei Liu <wei.liu2@citrix.com>, Ian Jackson <ian.jackson@eu.citrix.com>
Cc: xen-devel@lists.xenproject.org
Subject: Re: [Xen-devel] [PATCH v2] hotplug/Linux: fix starting of xenstored
 with restarting systemd
Message-ID: <YIKjWBSSV++6mBpd@aepfle.de>
References: <20190517095621.24271-1-olaf@aepfle.de>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="oWmjQS5dK1GEjOsR"
Content-Disposition: inline
In-Reply-To: <20190517095621.24271-1-olaf@aepfle.de>


--oWmjQS5dK1GEjOsR
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Ping?

On Fri, May 17, Olaf Hering wrote:

> A hard to trigger race with another unrelated systemd service and
> xenstored.service unveiled a bug in the way how xenstored is launched
> with systemd.
>=20
> launch-xenstore may start either a daemon or a domain. In case a domain
> is used, systemd-notify was called. If another service triggered a
> restart of systemd while xenstored.service was executed, systemd may
> temporary lose track of services with Type=3Dnotify. As a result,
> xenstored.service would be marked as failed and units that depend on it
> will not be started anymore. This breaks the enire Xen toolstack.
>=20
> The chain of events is basically: xenstored.service sends the
> notification to systemd, this is a one-way event. Then systemd may be
> restarted by the other unit. During this time xenstored.service is done
> and exits. Once systemd is done with its restart it collects the pending
> notifications and childs. If it does not find the unit which sent the
> notification it will declare it as failed.
>=20
> A workaround for this scenario is to wait for a short time after sending
> to notification. If systemd happens to restart it will still find the
> unit it launched.
>=20
> Adjust the callers of launch-xenstore to specifiy the init system.
> Do not fork xenstored with systemd, preserve pid.
> Be verbose about xenstored startup only with sysv to avoid interleaved
> output in systemd journal. Do the same also for domain case, even if is
> not strictly needed because init-xenstore-domain has no output.
>=20
> The fix for upstream systemd which is supposed to fix it:
> 575b300b795b6 ("pid1: rework how we dispatch SIGCHLD and other signals")
>=20
> v02:
> - preserve Type=3Dnotify
>=20
> Signed-off-by: Olaf Hering <olaf@aepfle.de>
> ---
>  tools/hotplug/Linux/init.d/xencommons.in         |  2 +-
>  tools/hotplug/Linux/launch-xenstore.in           | 56 ++++++++++++++++++=
------
>  tools/hotplug/Linux/systemd/xenstored.service.in |  2 +-
>  3 files changed, 44 insertions(+), 16 deletions(-)
>=20
> diff --git a/tools/hotplug/Linux/init.d/xencommons.in b/tools/hotplug/Lin=
ux/init.d/xencommons.in
> index 7fd6903b98..dcb0ce4b73 100644
> --- a/tools/hotplug/Linux/init.d/xencommons.in
> +++ b/tools/hotplug/Linux/init.d/xencommons.in
> @@ -60,7 +60,7 @@ do_start () {
>  	mkdir -m700 -p ${XEN_LOCK_DIR}
>  	mkdir -p ${XEN_LOG_DIR}
> =20
> -	@XEN_SCRIPT_DIR@/launch-xenstore || exit 1
> +	@XEN_SCRIPT_DIR@/launch-xenstore 'sysv' || exit 1
> =20
>  	echo Setting domain 0 name, domid and JSON config...
>  	${LIBEXEC_BIN}/xen-init-dom0 ${XEN_DOM0_UUID}
> diff --git a/tools/hotplug/Linux/launch-xenstore.in b/tools/hotplug/Linux=
/launch-xenstore.in
> index 991dec8d25..8ff243670d 100644
> --- a/tools/hotplug/Linux/launch-xenstore.in
> +++ b/tools/hotplug/Linux/launch-xenstore.in
> @@ -15,6 +15,16 @@
>  # License along with this library; If not, see <http://www.gnu.org/licen=
ses/>.
>  #
> =20
> +initd=3D$1
> +
> +case "$initd" in
> +	sysv|systemd) ;;
> +	*)
> +	echo "first argument must be 'sysv' or 'systemd'"
> +	exit 1
> +	;;
> +esac
> +
>  XENSTORED=3D@XENSTORED@
> =20
>  . @XEN_SCRIPT_DIR@/hotplugpath.sh
> @@ -44,15 +54,9 @@ timeout_xenstore () {
>  	return 0
>  }
> =20
> -test_xenstore && exit 0
> -
> -test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CON=
FIG_LEAF_DIR@/xencommons
> -
> -[ "$XENSTORETYPE" =3D "" ] && XENSTORETYPE=3Ddaemon
> +run_xenstored () {
> +	local maybe_exec=3D$1
> =20
> -/bin/mkdir -p @XEN_RUN_DIR@
> -
> -[ "$XENSTORETYPE" =3D "daemon" ] && {
>  	[ -z "$XENSTORED_ROOTDIR" ] && XENSTORED_ROOTDIR=3D"@XEN_LIB_STORED@"
>  	[ -z "$XENSTORED_TRACE" ] || XENSTORED_ARGS=3D"$XENSTORED_ARGS -T @XEN_=
LOG_DIR@/xenstored-trace.log"
>  	[ -z "$XENSTORED" ] && XENSTORED=3D@XENSTORED@
> @@ -60,13 +64,30 @@ test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && =
=2E @CONFIG_DIR@/@CONFIG_LEAF
>  		echo "No xenstored found"
>  		exit 1
>  	}
> +	$maybe_exec $XENSTORED --pid-file @XEN_RUN_DIR@/xenstored.pid $XENSTORE=
D_ARGS
> +}
> =20
> -	echo -n Starting $XENSTORED...
> -	$XENSTORED --pid-file @XEN_RUN_DIR@/xenstored.pid $XENSTORED_ARGS
> +if test "$initd" =3D 'sysv' ; then
> +	test_xenstore && exit 0
> +fi
> =20
> -	systemd-notify --booted 2>/dev/null || timeout_xenstore $XENSTORED || e=
xit 1
> +test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CON=
FIG_LEAF_DIR@/xencommons
> =20
> -	exit 0
> +[ "$XENSTORETYPE" =3D "" ] && XENSTORETYPE=3Ddaemon
> +
> +/bin/mkdir -p @XEN_RUN_DIR@
> +
> +[ "$XENSTORETYPE" =3D "daemon" ] && {
> +	if test "$initd" =3D 'sysv' ; then
> +		echo -n Starting $XENSTORED...
> +		run_xenstored ''
> +		timeout_xenstore $XENSTORED || exit 1
> +		exit 0
> +	else
> +		XENSTORED_ARGS=3D"$XENSTORED_ARGS -N"
> +		run_xenstored 'exec'
> +		exit 1
> +	fi
>  }
> =20
>  [ "$XENSTORETYPE" =3D "domain" ] && {
> @@ -76,9 +97,16 @@ test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && .=
 @CONFIG_DIR@/@CONFIG_LEAF
>  	XENSTORE_DOMAIN_ARGS=3D"$XENSTORE_DOMAIN_ARGS --memory $XENSTORE_DOMAIN=
_SIZE"
>  	[ -z "$XENSTORE_MAX_DOMAIN_SIZE" ] || XENSTORE_DOMAIN_ARGS=3D"$XENSTORE=
_DOMAIN_ARGS --maxmem $XENSTORE_MAX_DOMAIN_SIZE"
> =20
> -	echo -n Starting $XENSTORE_DOMAIN_KERNEL...
> +	if test "$initd" =3D 'sysv' ; then
> +		echo -n Starting $XENSTORE_DOMAIN_KERNEL...
> +	else
> +		echo Starting $XENSTORE_DOMAIN_KERNEL...
> +	fi
>  	${LIBEXEC_BIN}/init-xenstore-domain $XENSTORE_DOMAIN_ARGS || exit 1
> -	systemd-notify --ready 2>/dev/null
> +	if test "$initd" =3D 'systemd' ; then
> +		systemd-notify --ready
> +		sleep 9
> +	fi
> =20
>  	exit 0
>  }
> diff --git a/tools/hotplug/Linux/systemd/xenstored.service.in b/tools/hot=
plug/Linux/systemd/xenstored.service.in
> index 80c1d408a5..c226eb3635 100644
> --- a/tools/hotplug/Linux/systemd/xenstored.service.in
> +++ b/tools/hotplug/Linux/systemd/xenstored.service.in
> @@ -11,7 +11,7 @@ Type=3Dnotify
>  NotifyAccess=3Dall
>  RemainAfterExit=3Dtrue
>  ExecStartPre=3D/bin/grep -q control_d /proc/xen/capabilities
> -ExecStart=3D@XEN_SCRIPT_DIR@/launch-xenstore
> +ExecStart=3D@XEN_SCRIPT_DIR@/launch-xenstore 'systemd'
> =20
>  [Install]
>  WantedBy=3Dmulti-user.target
>=20
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xenproject.org
> https://lists.xenproject.org/mailman/listinfo/xen-devel

--oWmjQS5dK1GEjOsR
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmCCo1IACgkQ86SN7mm1
DoBJug//Xiy0vVZ/cGpxy5gHSR1QbrE8Vq75nSzAC5NegSIWYs3xHBUzhIF/5Jg/
nIz3eDCL3hwgeqaTAEPCPkqi1PUlWJC2Yb/UM0zUbQoAr0WRDJornihnfcCOHhgl
YpQ7ddgBqQzeKfCzufmSbcAuYnzfMqFQ9gofwlrpa+qQ/Zw+tssUxDgDT6FEq59Z
6rz1gUKQjKay4enlyiNrBh+ISnEb+aCoVzMCLrewhmFqY549sZrTnP0c8TeU8POl
YWp+PALp7YPZWbWv4qVTq90+l6Vm5o8yRNbe3SZt5vR0SienAGJIgYh+R7FO2VpQ
qabUBR4YoTjjyWWP1SWpG4eXnu2DfcNdwvUqFPchbJgP0FOqmBOtyCRTGENgaGi8
NqXvu8T/0skzyibVQUJ1ud4zVVYOPQAfBfPASzO9BCHn63rbnySij4iFPF1lftTt
PaDg1EO1XUSgYmRXXxBvZFJDnktZY1HDFXP6Omn1+UJj6jUTTY3lCqxdFIIRwNUO
EwktlHRlbYrLZUZLcKJnZWqsyIuOeyBE7Q6SbQkPAehIonvCvCaUGyH/l2si54No
MZ/SjOKkcSx09a4XUiHcJR2YfVTlbCrMN3RVFnj+4GjZvEIcJsHQKL18ha/Lf83D
w+JAyjbKTN7qEYn+h36E3FiELP2nvXnPqPP4nnuvWA79je5NMzg=
=BGb/
-----END PGP SIGNATURE-----

--oWmjQS5dK1GEjOsR--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:40:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:40:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116075.221490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtEr-0001To-ST; Fri, 23 Apr 2021 10:40:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116075.221490; Fri, 23 Apr 2021 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 1lZtEr-0001Th-Ov; Fri, 23 Apr 2021 10:40:45 +0000
Received: by outflank-mailman (input) for mailman id 116075;
 Fri, 23 Apr 2021 10:40: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 1lZtEp-0001TY-Ui; Fri, 23 Apr 2021 10:40: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 1lZtEp-0002am-MV; Fri, 23 Apr 2021 10:40: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 1lZtEp-0001tt-Bf; Fri, 23 Apr 2021 10:40:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZtEp-0000bw-B9; Fri, 23 Apr 2021 10:40: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=vUfqOjb9BdNVlHgz9kVGYn0u5qLSE71uPJZGZwKmAec=; b=NA8VLXhBDXC3gv88ovULVdAw8J
	qCdvnKLYoEgXPMx3fwIO+5+yZUWdjJQgVjK2A9Xe7IKLQOLw9PL3rS37EwkmWsjz3lpkD+Cvxg5XX
	X5v0CJ/LvBxHlAxig4TKxCPouvf9XLj71oO9yuptirAFF845aVLmK5kvQbRTmpeMDtN8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161393-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161393: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-xtf-amd64-amd64-1:xtf/test-pv32pae-xsa-286:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw: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-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
X-Osstest-Versions-This:
    xen=f889fa267c47c3495d304da5da9dd2ef8a4c95af
X-Osstest-Versions-That:
    xen=aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 10:40:43 +0000

flight 161393 xen-unstable real [real]
flight 161403 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161393/
http://logs.test-lab.xenproject.org/osstest/logs/161403/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-xtf-amd64-amd64-1  92 xtf/test-pv32pae-xsa-286 fail pass in 161403-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161368
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161368
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161368
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161368
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161368
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161368
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161368
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161368
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161368
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161368
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161368
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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

version targeted for testing:
 xen                  f889fa267c47c3495d304da5da9dd2ef8a4c95af
baseline version:
 xen                  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc

Last test of basis   161368  2021-04-22 03:57:55 Z    1 days
Testing same since   161393  2021-04-22 22:37:49 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Costin Lupu <costin.lupu@cs.pub.ro>
  Dario Faggioli <dfaggioli@suse.com>
  Doug Goldstein <cardoe@cardoe.com>
  Hongyan Xia <hongyxia@amazon.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Wei Liu <wei.liu2@citrix.com>
  Wei Liu <wl@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                           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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   aaa3eafb3b..f889fa267c  f889fa267c47c3495d304da5da9dd2ef8a4c95af -> master


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:45:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:45:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116093.221537 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtJG-0001yL-0r; Fri, 23 Apr 2021 10:45:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116093.221537; Fri, 23 Apr 2021 10:45:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtJF-0001yE-Tu; Fri, 23 Apr 2021 10:45:17 +0000
Received: by outflank-mailman (input) for mailman id 116093;
 Fri, 23 Apr 2021 10:45:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtJE-0001xz-G8
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:45:16 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4d0d4d02-307f-436f-ba9d-2e1f935d08d5;
 Fri, 23 Apr 2021 10:45:15 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A3CE7AFE6;
 Fri, 23 Apr 2021 10:45: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: 4d0d4d02-307f-436f-ba9d-2e1f935d08d5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619174714; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=JdrIaMPT2kQNkCRzSufS4y3iIccV3WIfQ36B2QepM8Q=;
	b=F6OA6zBFwYowoTi5mL7ruNxq4nRZAKS1B+D63XzFQciVxx8ij8qMovOBCYjB6pqTIFeOlU
	CKGein2UNAT6IffJ1tuauxYvM0L+UMCZJSLrMZQPqG9GQftx3z0n/bvEg2TIWvbpFv2Szd
	biGkSnoSNjr725bH2Qf27vRLf5KsGlQ=
Subject: Re: [PATCH 7/8] x86/EFI: keep debug info in xen.efi
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: <YIBFD4i6bLaeaXdE@Air-de-Roger>
 <3cda296d-e88e-5fe0-4924-4cf974c4f909@suse.com>
 <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
 <YIGOrOL+pKGaHqwX@Air-de-Roger>
 <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
 <YIGcE5Cr+xK4K6gw@Air-de-Roger>
 <98431d14-d4a0-61a8-148e-221652f37b61@suse.com>
 <YIJ3icwAoGEW/AO+@Air-de-Roger>
 <32bba278-12cc-d105-7b95-6a788992d70c@suse.com>
 <YIKcS0o/9A0whxa/@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c0edf6b1-46ea-e246-223e-b60356c928d6@suse.com>
Date: Fri, 23 Apr 2021 12:45:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIKcS0o/9A0whxa/@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 12:07, Roger Pau Monné wrote:
> On Fri, Apr 23, 2021 at 10:51:40AM +0200, Jan Beulich wrote:
>> On 23.04.2021 09:30, Roger Pau Monné wrote:
>>> /*
>>>  * Explicitly list debug section for the PE output so that they don't
>>>  * end up at VA 0 which is below image base and thus invalid. Also use
>>>  * the NOLOAD directive, even when currently ignored by PE output, in
>>>  * order to note those sections shouldn't be loaded into memory.
>>>  *
>>>  * Note such sections are past _end, so if loaded will be discarded by
>>>  * Xen anyway.
>>>  */
>>>
>>> Feel free to reword or expand the comment.
>>
>> Yes, I've edited it some while inserting. Will see to get to
>> submitting v2 then.
>>
>>> Not sure there's some
>>> reference we could add here about how debug sections are placed in PE
>>> files usually.
>>
>> As said before - I don't think there's any "usually" here, which is
>> why different environments have invented different ways. The debug
>> info native to COFF is more like ELF's symbol table (with a little
>> bit of extra information) plus Dwarf's .debug_line, but not really
>> fully covering what you'd expect from debug info.
> 
> One last thing, do you know if the newly added debug_* sections get
> the IMAGE_SCN_MEM_DISCARDABLE section flag set?

At least with an up-to-date ld (i.e. one meeting the requirements so
we wouldn't force debug info to be stripped) they do.

> Not sure there's a way we can force it from the linker script TBH, but
> would be nice and seems to be a recommended flag for debug sections
> according to Microsoft [0].

The linker does this for debugging sections irrespective of what the
linker script says:

   if ((sec_flags & SEC_DEBUGGING) != 0)
     styp_flags |= IMAGE_SCN_MEM_DISCARDABLE;

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:52:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:52:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116137.221699 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtPi-0003d1-Fw; Fri, 23 Apr 2021 10:51:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116137.221699; Fri, 23 Apr 2021 10: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 1lZtPi-0003cu-D6; Fri, 23 Apr 2021 10:51:58 +0000
Received: by outflank-mailman (input) for mailman id 116137;
 Fri, 23 Apr 2021 10:51:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtPg-0003cp-CO
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:51:56 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 36e6e5e1-96fc-48a8-8465-61027c9c9ae4;
 Fri, 23 Apr 2021 10:51:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 03E2FAE38;
 Fri, 23 Apr 2021 10:51: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: 36e6e5e1-96fc-48a8-8465-61027c9c9ae4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175114; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=bCLpGg4v/ZdPsyY16ygud7CEzJ+yYAeyqwYXdZuK4xI=;
	b=lm+Nmvmx3Tkp2SCK+hK+K3qPI9xu2OVphgUo3hGmCQPthAAEb7OzIOMJg5Fg8NYj68Z3eY
	hGH4D7/Nh/74fpMCf8YUs9F4QgAOOafwTCjlg5uDrJvp7hSXLfEbpBE6l55lAB0MMakgkM
	UJkp181QQIFWt5hr5bYaOx7SE2sODcY=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v4 0/3] VMX APIC access page and shadow adjustments
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>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
Message-ID: <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Date: Fri, 23 Apr 2021 12:51:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

1: VMX: use a single, global APIC access page
2: x86/shadow: re-use variables in shadow_get_page_from_l1e()
3: x86/shadow: streamline shadow_get_page_from_l1e()

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:52:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:52:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116138.221712 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtPm-0003ep-PE; Fri, 23 Apr 2021 10:52:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116138.221712; Fri, 23 Apr 2021 10: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 1lZtPm-0003eg-Lq; Fri, 23 Apr 2021 10:52:02 +0000
Received: by outflank-mailman (input) for mailman id 116138;
 Fri, 23 Apr 2021 10:52:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Q/M9=JU=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZtPl-0003cp-AI
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:52:01 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2efd8074-e7ea-4217-9fde-6c1325a4f878;
 Fri, 23 Apr 2021 10:52: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: 2efd8074-e7ea-4217-9fde-6c1325a4f878
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619175120;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=4iSoHmHAtYZFN3QQXJVZucLpLQFks+TOaE2HRAgxDHM=;
  b=e1jsqNGmI6/WB0et0WKRpJVDwEIy4rPaIt5zByNxyNAs6mDh6oaguSzy
   1f6ArvbHP/z1oIAPcVtUuhaLKerlBgAl8YcnKGmsn2KLQ/5VN9O6q2L0m
   eqx1sU/r81zvFwAdLINmbGaU8TUbj8Pbcjiu2hJEQeYjP2ehjknEQpUcn
   w=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 1pYgGeN4kT7jsSiQ2GuCWyCX8r8/+s13QqJ3m/8RRM8UUjHAb/sc+p6664Li6pqbWtL3sMh2y7
 MmPjrj9YWeNs/LUypAmJJxaoSDGJBj4JST6XhilarnpKLqX+Xkkgp2W4tF8DoDGAqx+nsVzoo0
 UGPOE4fF8n/NKq6IaOeFim0PDIo2y2zogICFYyc1bmTrjoCbq9p5cM66AV4XACEIgDBFM2mWLW
 jooBguxNNjr5/n+vrzUaQcyGXnTaeYwyQOl/hghcjA3qR6ZxMv9CxiyBT6E3jaRwN02XZgK/Na
 EMU=
X-SBRS: 5.2
X-MesageID: 43759817
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:EYmOPaGCdhimO8dwpLqFYZTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7LE/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeLJwTXzcQY76
 tpdsFFY+HYJVJxgd/mpCyxFNg9yNeKmZrY/tv25V0Fd3AIV4hL6QBlBgGHVmh/QwdbDZQ0fa
 DsnPZvjTymZHgRc4CHFmAINtKz7eHjubDHRVo9BxAh4BSTlj/A0tLHOjWRwxt2aUIp/Z4M6m
 7A+jaZ2oyCtLWBxgbYxyvv6f1t6aPc4/9iIODJtcQPMDXrjW+TFclccpmPpio8ru3qyHtCqq
 irnz4aM85+62zccwiOyHODtTXI6zog52TvzlWVmxLY0LXEbQgnAMlMj58xSGq612Mcvcpx2K
 8O/2WVu4s/N2KloA3B5sPFXxwvq0ysoXBKq593s1VjV+IlCIN5nMg6xgd4AZ0AFCX15MQMC+
 91FvzR4/5QbBezc23ZlnMH+q3iYl0DWjO9BmQSsM2c1DZb2FpjyVED+cAZlnAcsLogVph/4f
 jeOKgArsABcuYmKYZGQMsRS8q+DWLABTjWNniJHFjhHKYbf1XAtoDw+7dwwO2xYpQHwN8Tlf
 36IRJlnF93X3irJdyF3ZVN/ByIan66Ry7RxsZX4IU8tab7QLbtLC2fWFEjm8atuJwkc47mcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQuttTYSPNnuv7bqnR8sDLevfaI7TgVRw+XHnkP3
 cFVD/vYMFJ7kWhXG7kkAHcMkmdP3DXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHlFqaw5fE
 x3Jbv9iaOlrWyq/WLFhl8ZeiZ1PwJw2vHNQnlKrQgFPwffarAYoeiSfmhUwT+aPBNlVtjXFw
 Revlxz/qqyI/WrtGQfIuPiFljfo2oYpXqMQZtZp7aK4t39fIgkSrw8XrZqKAnNHxtpuApjpW
 tZcjUYTkvHGj6Gs9TjsLUkQMXkM/h1mkOCPNNdo3O3jzTgmegfAl8gGwOIfeHSqwA0XDZQjk
 B26MYk8ca9sAfqD3A+juQ+OEBLc0KNDtt9fUi4TY1Jh7HmfxxxR2+WhTqczwo+YHbu6l96vB
 2fEQSEPf7MGVZToXZez+Lj9051bHyUewZqZml9qpAVLxWPhl9jleuKbLG0yW2fdx8LxfwcKi
 jMZVIpU3VT7sHy0B6egzCZE3o6gp0oI+zGFbwmN7XewGmkJoHNlaYIGZZvjd9YHcGrtu8ASu
 SEfQCJaDv+FuMywgSQ4m8/JzMckghQrdr4nBn+qGSo1n82BvTfZFxgWrEAOtmZq2zpXeyB3p
 l1hc881NHAeVnZe5qD0+XafjRDIhTcrSqtQ+YkpYtdsKgyuLFwdqOrJgfgxTVCxlEzPc30nE
 QRTOBn+7jHIJZoZNFXdCRD/FYl/e7/XncDo0jzGKs5cl4shXOAYI/M7LrMtLY1AkqO4AH3Ik
 KS9iVB//HDGyuPvIRqe54YMCBTcgw77n8n4eaJM4vXAw+uf/tY/FW7PmSmGYUtPJStCPEVtF
 Ji/9qMn+WLbCL21wDboCtjLst1gheaaNL3BBjJBPVB/NO7M0mdm6em4Ma8izHsVDuwAn5o9r
 FtZAgXdcRMij4rkY0x3GyzU8XM0zwYr2c=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="43759817"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=f1+IENsqJ+rTdKqqMdfWkXioZtRY/Rx5Bx4VIJV/kJ9L+hJojHqWow26A9jfSSGEYTV3wd4dK/a2UtsgS9boV98jrFCfy9pjx5taiS9RIhkbQEkX/sWHV0skEEW7ndlZ2aXSINJ+DbACJwmYV+NKwRgOPUZE8LSRjdJV5VPCqTpjp5dzw8ly0qxfKLP7RFWoJ9COn2hGvAbtbXNYjK7A32ltP+AKVXJHXj4jADUY/Q0T7sSTswzRQ9I7RNxgcdB0KdJeCHbS6G+7tUW5PZcomtQH7T3OGrN6VcbZW1ehfeWJoE0baxPadCO+EvqNyLIOKTHfxWsdrYKE4Rq8tJNhNQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UBJpmAZmMOhKvscwO6+sExro1lF4MvvaZXvITJuDbcs=;
 b=jSijJE7JxQuDzavjYV3xoFXR66H5OlmhUZYUqAbyYuj3TjYehh9nucAo3QojlN7OAUQ2OQxAI8hqxTVQhzJB5YnjeNxBunU2TfH99HpZlAq1LNQ8aTUGpVEm1op4jRw4w2WhMeCXcOxehcUtbWNA9XER/u9MOsbc3oXC7IrNv4TZXIqOY+QFQmwXX4qo6ei2iFOLHsMYyTmQv6/z7VMf/Nuagk+agU7PfXNOanJ/SHMAD2AzahQclJyChDrL0bOgAexYKUzVhFf7KtC0NrBCwSpAAtch68okTaCJ1uELdSTHNmg5M5nFZAm1wh8iSGNBhGsaBPM1k2VKgtsLQzt4Ng==
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=UBJpmAZmMOhKvscwO6+sExro1lF4MvvaZXvITJuDbcs=;
 b=OsDRYfor6yJ9q7Vj+B8yvkJKXTvJjFebQVYxcuR4Fn++YSUaRlmaG+cPPfj4rFW3aDCCTaBR9y9uLMQwKRicny9aIW/sFZtC2NGWDHl4WDmVhAiaUkmWZrdQ0RDZl4dAhEN6pe7pNfLsourtpOdWZH580pzJMQj4DEdBBlXLZt0=
Subject: Re: [PATCH] x86/oprof: fix !HVM && !PV32 build
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Jan Beulich
	<jbeulich@suse.com>
CC: Wei Liu <wl@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
References: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
 <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
 <caab96a2-3949-9ddb-e6ab-9a95c958e4d6@suse.com>
 <YIKYaCr13TiwxqRq@Air-de-Roger>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <98d0b627-de38-f7a0-7487-cbf83864c82f@citrix.com>
Date: Fri, 23 Apr 2021 11:51:50 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <YIKYaCr13TiwxqRq@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0095.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:139::10) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b6662b9f-acf1-41b6-c351-08d90645cff7
X-MS-TrafficTypeDiagnostic: BYAPR03MB4119:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4119AF3FBE519F22F151BFA9BA459@BYAPR03MB4119.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: JXXgpoZ+DbxAwDv3vmc3r0iBiGddaPN8wCtDZlrePIQbIqi8DH2t6rTYJPCCfOdsQfMPMTtCk99VROKvTggXe9hHQ6o+QxvuuYiVsLhiZAgGvG2dREzRSkeCLO1Ry1w2JVeNIhEaqSO/om5n5m8RbTifdoQr9ip0RGufxLMLZkA+oO1xTQZDQn07jo1jgOVG//01OzmvDO+dJYscpJqSN6Z14eKsnx9UJmOPomHy7i9Yrhn/dYgO8AQw0pntqZPpFUpheofhfczQZKCFXrO1NdACdDloLTBn0xvfkJjLAczOmCowU/jc42NNH2fNPBhjcXpXamTlLSVV25nGcdRa3GsJjEuc+LOaGzD9IIx6UdD1qwNGZqIM6j7CsZFGA1V0DTa4lHOtd/ZnloSFWAmr3r+it+jDdnINVtOuE9lTQtgw8ZsVhwOgCV/owHW1CnvILsdlIei38+oWlXLP0sI02tu9f0MJuliTU9YpWtSzhm+MIDPLSX0ZW3SeUXS9n2UOwRXjaGDeapkHcOkeJt4EYMNRNYeVgRKQyvKB6VgYLNh9m/gKQyhyv3Cf4An5Dwfx3VAgGisl30zreEeNXFar+kMye1PUEUxL/Ed3Rr9olz5/cAls31o8U0Jfbkqw7oVLP3/J/FGDz8sQuD++Q6RvEkXSZqq3g3ytPvXR64rqv2x9Ztoed+mn57dWGjN8WbBo
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(136003)(39860400002)(396003)(346002)(376002)(31686004)(36756003)(4326008)(6666004)(26005)(83380400001)(54906003)(110136005)(66946007)(186003)(16526019)(53546011)(66556008)(66476007)(478600001)(8936002)(2616005)(8676002)(38100700002)(956004)(2906002)(16576012)(5660300002)(86362001)(316002)(31696002)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: b6662b9f-acf1-41b6-c351-08d90645cff7
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 10:51:56.2786
 (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: UB94rbBizAnZO1obm+enIaQu9DjEAS67cmVWlA93H/nwnw7tLsS+0Mph8GDPZ2La6axjNykiZTk3otv6qX9sjunR/Vs6tNvFr7fp9wswLnI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4119
X-OriginatorOrg: citrix.com

On 23/04/2021 10:50, Roger Pau Monné wrote:
> On Fri, Apr 16, 2021 at 04:20:59PM +0200, Jan Beulich wrote:
>> On 16.04.2021 15:41, Andrew Cooper wrote:
>>> On 16/04/2021 09:16, Jan Beulich wrote:
>>>> clang, at the very least, doesn't like unused inline functions, unless
>>>> their definitions live in a header.
>>>>
>>>> Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
>>>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>> I agree this will fix the build.  However, looking at the code, I'm not
>>> sure the original CONFIG_COMPAT was correct.  In particular, ...
>>>
>>>> --- a/xen/arch/x86/oprofile/backtrace.c
>>>> +++ b/xen/arch/x86/oprofile/backtrace.c
>>>> @@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
>>>>      return head->ebp;
>>>>  }
>>>>  
>>>> +#ifdef CONFIG_COMPAT
>>>>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
>>>>  {
>>>>      if (is_hvm_vcpu(vcpu))
>>> ... this chunk of logic demonstrates that what oprofile is doing isn't
>>> related to the Xen ABI in the slightest.
>>>
>>> I think OProfile is misusing the guest handle infrastructure, and
>>> shouldn't be using it for this task.
>> I'm afraid I consider this something for another day. Both the
>> original #ifdef and the one getting added here are merely
>> measures to get things to build.
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>
>
> Without entering on the debate whether CONFIG_COMPAT is the correct
> conditional to use it's not making the issue any worse, and it will
> allow to unblock the build. We can discuss about the CONFIG_COMPAT
> stuff later.

I disagree.  Fixing this less effort than the time wasted arguing about
fixing it.

But if you are going to insist on not fixing it, and putting in a patch
like this, then at a minimum, it needs to include a TODO comment stating
that the use of CONFIG_COMPAT is bogus and needs fixing.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:53:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:53:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116145.221724 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtQj-0003qm-3y; Fri, 23 Apr 2021 10:53:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116145.221724; Fri, 23 Apr 2021 10:53: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 1lZtQj-0003qf-0L; Fri, 23 Apr 2021 10:53:01 +0000
Received: by outflank-mailman (input) for mailman id 116145;
 Fri, 23 Apr 2021 10:53:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtQi-0003qX-6D
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:53:00 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 022f5376-5ce4-4f98-9068-a092707b59a9;
 Fri, 23 Apr 2021 10:52:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A44CBB05E;
 Fri, 23 Apr 2021 10:52:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 022f5376-5ce4-4f98-9068-a092707b59a9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175177; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=oKJUzjD5NEc7cfDAEFdzVdDF07cDm6q66hm4fqeNQ88=;
	b=ueTKK1qvt3muiPrrKn9vxDRIoE6oahxpmJAm1xLQ7x7YEG7/xJha88yqbaeX1gvhoaDWZp
	pYwmtPO7Wzq8ekiGGIEXzAe0xF14miX5N9zcy4pVcB1OpdE4FXsHJSOZRzMtI6AiN+K8jZ
	zW077bAdySPLvJtVeb5rmk5c+ynpvPM=
Subject: [PATCH v4 1/3] VMX: use a single, global APIC access page
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Message-ID: <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
Date: Fri, 23 Apr 2021 12:52:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The address of this page is used by the CPU only to recognize when to
access the virtual APIC page instead. No accesses would ever go to this
page. It only needs to be present in the (CPU) page tables so that
address translation will produce its address as result for respective
accesses.

By making this page global, we also eliminate the need to refcount it,
or to assign it to any domain in the first place.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v5: Init apic_access_mfn to INVALID_MFN. Move assignment out of if()
    condition. Introduce page_suppress_refcounting() and
    page_refcounting_suppressed().
v4: Set PGC_extra on the page. Make shadow mode work.
v3: Split p2m insertion change to a separate patch.
v2: Avoid insertion when !has_vlapic(). Split off change to
    p2m_get_iommu_flags().
---
I did further consider not allocating any real page at all, but just
using the address of some unpopulated space (which would require
announcing this page as reserved to Dom0, so it wouldn't put any PCI
MMIO BARs there). But I thought this would be too controversial, because
of the possible risks associated with this.

--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -66,8 +66,7 @@ boolean_param("force-ept", opt_force_ept
 static void vmx_ctxt_switch_from(struct vcpu *v);
 static void vmx_ctxt_switch_to(struct vcpu *v);
 
-static int  vmx_alloc_vlapic_mapping(struct domain *d);
-static void vmx_free_vlapic_mapping(struct domain *d);
+static int alloc_vlapic_mapping(void);
 static void vmx_install_vlapic_mapping(struct vcpu *v);
 static void vmx_update_guest_cr(struct vcpu *v, unsigned int cr,
                                 unsigned int flags);
@@ -78,6 +77,8 @@ static int vmx_msr_read_intercept(unsign
 static int vmx_msr_write_intercept(unsigned int msr, uint64_t msr_content);
 static void vmx_invlpg(struct vcpu *v, unsigned long linear);
 
+static mfn_t __read_mostly apic_access_mfn = INVALID_MFN_INITIALIZER;
+
 /* Values for domain's ->arch.hvm_domain.pi_ops.flags. */
 #define PI_CSW_FROM (1u << 0)
 #define PI_CSW_TO   (1u << 1)
@@ -401,7 +402,6 @@ static int vmx_domain_initialise(struct
         .to   = vmx_ctxt_switch_to,
         .tail = vmx_do_resume,
     };
-    int rc;
 
     d->arch.ctxt_switch = &csw;
 
@@ -411,28 +411,22 @@ static int vmx_domain_initialise(struct
      */
     d->arch.hvm.vmx.exec_sp = is_hardware_domain(d) || opt_ept_exec_sp;
 
-    if ( !has_vlapic(d) )
-        return 0;
-
-    if ( (rc = vmx_alloc_vlapic_mapping(d)) != 0 )
-        return rc;
-
     return 0;
 }
 
-static void vmx_domain_relinquish_resources(struct domain *d)
+static void domain_creation_finished(struct domain *d)
 {
-    if ( !has_vlapic(d) )
+    gfn_t gfn = gaddr_to_gfn(APIC_DEFAULT_PHYS_BASE);
+    uint8_t ipat;
+
+    if ( !has_vlapic(d) || mfn_eq(apic_access_mfn, INVALID_MFN) )
         return;
 
-    vmx_free_vlapic_mapping(d);
-}
+    ASSERT(epte_get_entry_emt(d, gfn_x(gfn), apic_access_mfn, 0, &ipat,
+                              true) == MTRR_TYPE_WRBACK);
+    ASSERT(ipat);
 
-static void domain_creation_finished(struct domain *d)
-{
-    if ( has_vlapic(d) && !mfn_eq(d->arch.hvm.vmx.apic_access_mfn, _mfn(0)) &&
-         set_mmio_p2m_entry(d, gaddr_to_gfn(APIC_DEFAULT_PHYS_BASE),
-                            d->arch.hvm.vmx.apic_access_mfn, PAGE_ORDER_4K) )
+    if ( set_mmio_p2m_entry(d, gfn, apic_access_mfn, PAGE_ORDER_4K) )
         domain_crash(d);
 }
 
@@ -2415,7 +2409,6 @@ static struct hvm_function_table __initd
     .cpu_up_prepare       = vmx_cpu_up_prepare,
     .cpu_dead             = vmx_cpu_dead,
     .domain_initialise    = vmx_domain_initialise,
-    .domain_relinquish_resources = vmx_domain_relinquish_resources,
     .domain_creation_finished = domain_creation_finished,
     .vcpu_initialise      = vmx_vcpu_initialise,
     .vcpu_destroy         = vmx_vcpu_destroy,
@@ -2662,7 +2655,7 @@ const struct hvm_function_table * __init
 {
     set_in_cr4(X86_CR4_VMXE);
 
-    if ( vmx_vmcs_init() )
+    if ( vmx_vmcs_init() || alloc_vlapic_mapping() )
     {
         printk("VMX: failed to initialise.\n");
         return NULL;
@@ -3224,7 +3217,7 @@ gp_fault:
     return X86EMUL_EXCEPTION;
 }
 
-static int vmx_alloc_vlapic_mapping(struct domain *d)
+static int __init alloc_vlapic_mapping(void)
 {
     struct page_info *pg;
     mfn_t mfn;
@@ -3232,52 +3225,34 @@ static int vmx_alloc_vlapic_mapping(stru
     if ( !cpu_has_vmx_virtualize_apic_accesses )
         return 0;
 
-    pg = alloc_domheap_page(d, MEMF_no_refcount);
+    pg = alloc_domheap_page(NULL, 0);
     if ( !pg )
         return -ENOMEM;
 
-    if ( !get_page_and_type(pg, 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.
-         */
-        domain_crash(d);
-        return -ENODATA;
-    }
+    /*
+     * Signal to shadow code that this page cannot be refcounted. This also
+     * makes epte_get_entry_emt() recognize this page as "special".
+     */
+    page_suppress_refcounting(pg);
 
     mfn = page_to_mfn(pg);
     clear_domain_page(mfn);
-    d->arch.hvm.vmx.apic_access_mfn = mfn;
+    apic_access_mfn = mfn;
 
     return 0;
 }
 
-static void vmx_free_vlapic_mapping(struct domain *d)
-{
-    mfn_t mfn = d->arch.hvm.vmx.apic_access_mfn;
-
-    d->arch.hvm.vmx.apic_access_mfn = _mfn(0);
-    if ( !mfn_eq(mfn, _mfn(0)) )
-    {
-        struct page_info *pg = mfn_to_page(mfn);
-
-        put_page_alloc_ref(pg);
-        put_page_and_type(pg);
-    }
-}
-
 static void vmx_install_vlapic_mapping(struct vcpu *v)
 {
     paddr_t virt_page_ma, apic_page_ma;
 
-    if ( mfn_eq(v->domain->arch.hvm.vmx.apic_access_mfn, _mfn(0)) )
+    if ( !has_vlapic(v->domain) || mfn_eq(apic_access_mfn, INVALID_MFN) )
         return;
 
     ASSERT(cpu_has_vmx_virtualize_apic_accesses);
 
     virt_page_ma = page_to_maddr(vcpu_vlapic(v)->regs_page);
-    apic_page_ma = mfn_to_maddr(v->domain->arch.hvm.vmx.apic_access_mfn);
+    apic_page_ma = mfn_to_maddr(apic_access_mfn);
 
     vmx_vmcs_enter(v);
     __vmwrite(VIRTUAL_APIC_PAGE_ADDR, virt_page_ma);
--- a/xen/arch/x86/mm/shadow/set.c
+++ b/xen/arch/x86/mm/shadow/set.c
@@ -94,6 +94,15 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
     ASSERT(!sh_l1e_is_magic(sl1e));
     ASSERT(shadow_mode_refcounts(d));
 
+    /*
+     * Check whether refcounting is suppressed on this page. For example,
+     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
+     * get accessed, and hence there's no need to refcount it.
+     */
+    mfn = shadow_l1e_get_mfn(sl1e);
+    if ( mfn_valid(mfn) && page_refcounting_suppressed(mfn_to_page(mfn)) )
+        return 0;
+
     res = get_page_from_l1e(sl1e, d, d);
 
     /*
--- a/xen/arch/x86/mm/shadow/types.h
+++ b/xen/arch/x86/mm/shadow/types.h
@@ -276,9 +276,16 @@ int shadow_set_l4e(struct domain *d, sha
 static void inline
 shadow_put_page_from_l1e(shadow_l1e_t sl1e, struct domain *d)
 {
+    mfn_t mfn;
+
     if ( !shadow_mode_refcounts(d) )
         return;
 
+    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) &&
+         /* See the respective comment in shadow_get_page_from_l1e(). */
+         page_refcounting_suppressed(mfn_to_page(mfn)) )
+        return;
+
     put_page_from_l1e(sl1e, d);
 }
 
--- a/xen/include/asm-x86/hvm/vmx/vmcs.h
+++ b/xen/include/asm-x86/hvm/vmx/vmcs.h
@@ -58,7 +58,6 @@ struct ept_data {
 #define _VMX_DOMAIN_PML_ENABLED    0
 #define VMX_DOMAIN_PML_ENABLED     (1ul << _VMX_DOMAIN_PML_ENABLED)
 struct vmx_domain {
-    mfn_t apic_access_mfn;
     /* VMX_DOMAIN_* */
     unsigned int status;
 
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -82,7 +82,7 @@
 #define PGC_state_offlined PG_mask(2, 9)
 #define PGC_state_free    PG_mask(3, 9)
 #define page_state_is(pg, st) (((pg)->count_info&PGC_state) == PGC_state_##st)
-/* Page is not reference counted */
+/* Page is not reference counted (see below for caveats) */
 #define _PGC_extra        PG_shift(10)
 #define PGC_extra         PG_mask(1, 10)
 
@@ -374,6 +374,24 @@ void zap_ro_mpt(mfn_t mfn);
 
 bool is_iomem_page(mfn_t mfn);
 
+/*
+ * Pages with no owner which may get passed to functions wanting to
+ * refcount them can be marked PGC_extra to bypass this refcounting (which
+ * would fail due to the lack of an owner).
+ *
+ * (For pages with owner PGC_extra has different meaning.)
+ */
+static inline void page_suppress_refcounting(struct page_info *pg)
+{
+   ASSERT(!page_get_owner(pg));
+   pg->count_info |= PGC_extra;
+}
+
+static inline bool page_refcounting_suppressed(const struct page_info *pg)
+{
+    return !page_get_owner(pg) && (pg->count_info & PGC_extra);
+}
+
 struct platform_bad_page {
     unsigned long mfn;
     unsigned int order;



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:53:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:53:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116149.221736 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtR9-0003xz-GI; Fri, 23 Apr 2021 10:53:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116149.221736; Fri, 23 Apr 2021 10: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 1lZtR9-0003xs-Cs; Fri, 23 Apr 2021 10:53:27 +0000
Received: by outflank-mailman (input) for mailman id 116149;
 Fri, 23 Apr 2021 10:53:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtR8-0003xd-0P
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:53:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8e0f1d37-1d03-4cf3-acfd-84135c3bb88f;
 Fri, 23 Apr 2021 10:53:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5DF4DB05D;
 Fri, 23 Apr 2021 10:53: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: 8e0f1d37-1d03-4cf3-acfd-84135c3bb88f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175204; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=oo1/XTyys+4AMwPBg+4apC2PyGiHm7JIfunlGllfB28=;
	b=SwpxV/hzcMlbMTpBYIWcnUMWSkoATeEy4BcOU4v1PPN4SDWPyT4+1c2ljejP5bqJZLXtJN
	M4DyyXXDJ5VAqV0U9bHLO6V/1Cm391oLlXydDfUGNvNT1yZ3LBMCsR72QYzdme9a2tRgyY
	IusHiwVWVlWEgNyWpZpOb/DDzIElLx4=
Subject: [PATCH v4 2/3] x86/shadow: re-use variables in
 shadow_get_page_from_l1e()
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Message-ID: <a7817f29-9a07-ab20-2224-999e75537fe3@suse.com>
Date: Fri, 23 Apr 2021 12:53:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There's little point in doing multiple mfn_to_page() or page_get_owner()
on all the same MFN. Calculate them once at the start of the function.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Tim Deegan <tim@xen.org>
---
v5: Integrate into series. Re-base.
v2: Re-base.

--- a/xen/arch/x86/mm/shadow/set.c
+++ b/xen/arch/x86/mm/shadow/set.c
@@ -88,19 +88,25 @@ static int inline
 shadow_get_page_from_l1e(shadow_l1e_t sl1e, struct domain *d, p2m_type_t type)
 {
     int res;
-    mfn_t mfn;
-    struct domain *owner;
+    mfn_t mfn = shadow_l1e_get_mfn(sl1e);
+    const struct page_info *pg = NULL;
+    struct domain *owner = NULL;
 
     ASSERT(!sh_l1e_is_magic(sl1e));
     ASSERT(shadow_mode_refcounts(d));
 
+    if ( mfn_valid(mfn) )
+    {
+        pg = mfn_to_page(mfn);
+        owner = page_get_owner(pg);
+    }
+
     /*
      * Check whether refcounting is suppressed on this page. For example,
      * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
      * get accessed, and hence there's no need to refcount it.
      */
-    mfn = shadow_l1e_get_mfn(sl1e);
-    if ( mfn_valid(mfn) && page_refcounting_suppressed(mfn_to_page(mfn)) )
+    if ( pg && page_refcounting_suppressed(pg) )
         return 0;
 
     res = get_page_from_l1e(sl1e, d, d);
@@ -111,9 +117,7 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
      */
     if ( unlikely(res < 0) &&
          !shadow_mode_translate(d) &&
-         mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) &&
-         (owner = page_get_owner(mfn_to_page(mfn))) &&
-         (d != owner) )
+         owner && (d != owner) )
     {
         res = xsm_priv_mapping(XSM_TARGET, d, owner);
         if ( !res )
@@ -136,9 +140,8 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
          * already have checked that we're supposed to have access, so
          * we can just grab a reference directly.
          */
-        mfn = shadow_l1e_get_mfn(sl1e);
-        if ( mfn_valid(mfn) )
-            res = get_page_from_l1e(sl1e, d, page_get_owner(mfn_to_page(mfn)));
+        if ( owner )
+            res = get_page_from_l1e(sl1e, d, owner);
     }
 
     if ( unlikely(res < 0) )



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:54:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:54:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116155.221748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtRn-00045v-Qe; Fri, 23 Apr 2021 10:54:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116155.221748; Fri, 23 Apr 2021 10: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 1lZtRn-00045o-Mv; Fri, 23 Apr 2021 10:54:07 +0000
Received: by outflank-mailman (input) for mailman id 116155;
 Fri, 23 Apr 2021 10:54:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtRm-00045f-FJ
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:54:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0b73f536-da90-4842-a39f-c4a55e978512;
 Fri, 23 Apr 2021 10:54:05 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4DAD8B04F;
 Fri, 23 Apr 2021 10:54: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: 0b73f536-da90-4842-a39f-c4a55e978512
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175244; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=V9AlDGFgRhWxlW+/r9dPVuhktXxXHQ12DuVMyZCakP0=;
	b=HGHudFs4r1jEE227WLPQfklyR9dbDX55518tTBQFY7hcFR7Dfhu5nOVq2QrBXHoouiTNWs
	PU4XTGECr+X9jrKeniBkEa6cbPQejODVPreogIt1hyH9mFMkMonSojHTu2d8/2FpAd/TEH
	Aa9+BxJsnDPoS70z4oD5ONlecWDpt3A=
Subject: [PATCH v4 3/3] x86/shadow: streamline shadow_get_page_from_l1e()
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Message-ID: <a73a6dd7-0cca-9ffe-e27e-39671c16e74c@suse.com>
Date: Fri, 23 Apr 2021 12:54:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Trying get_page_from_l1e() up to three times isn't helpful; in debug
builds it may lead to log messages making things look as if there was a
problem somewhere. And there's no need to have more than one try: The
function can only possibly succeed for one domain passed as 3rd
argument (unless the page is an MMIO one to which both have access,
but MMIO pages should be "got" by specifying the requesting domain
anyway). Re-arrange things so just the one call gets made which has a
chance of succeeding.

The code could in principle be arranged such that there's only a single
call to get_page_from_l1e(), but the conditional would become pretty
complex then and hence hard to follow / understand / adjust.

The redundant (with shadow_mode_refcounts()) shadow_mode_translate()
gets dropped.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Tim Deegan <tim@xen.org>
---
v5: Integrate into series. Re-base.

--- a/xen/arch/x86/mm/shadow/set.c
+++ b/xen/arch/x86/mm/shadow/set.c
@@ -109,40 +109,36 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
     if ( pg && page_refcounting_suppressed(pg) )
         return 0;
 
-    res = get_page_from_l1e(sl1e, d, d);
+    if ( owner == dom_io )
+        owner = NULL;
 
     /*
      * If a privileged domain is attempting to install a map of a page it does
      * not own, we let it succeed anyway.
      */
-    if ( unlikely(res < 0) &&
-         !shadow_mode_translate(d) &&
-         owner && (d != owner) )
+    if ( owner && (d != owner) &&
+         !(res = xsm_priv_mapping(XSM_TARGET, d, owner)) )
     {
-        res = xsm_priv_mapping(XSM_TARGET, d, owner);
-        if ( !res )
-        {
-            res = get_page_from_l1e(sl1e, d, owner);
-            SHADOW_PRINTK("privileged %pd installs map of mfn %"PRI_mfn" owned by %pd: %s\n",
-                           d, mfn_x(mfn), owner,
-                           res >= 0 ? "success" : "failed");
-        }
+        res = get_page_from_l1e(sl1e, d, owner);
+        SHADOW_PRINTK("privileged %pd installs map of %pd's mfn %"PRI_mfn": %s\n",
+                      d, owner, mfn_x(mfn),
+                      res >= 0 ? "success" : "failed");
     }
-
     /* Okay, it might still be a grant mapping PTE.  Try it. */
-    if ( unlikely(res < 0) &&
-         (type == p2m_grant_map_rw ||
-          (type == p2m_grant_map_ro &&
-           !(shadow_l1e_get_flags(sl1e) & _PAGE_RW))) )
+    else if ( owner &&
+              (type == p2m_grant_map_rw ||
+               (type == p2m_grant_map_ro &&
+                !(shadow_l1e_get_flags(sl1e) & _PAGE_RW))) )
     {
         /*
          * It's a grant mapping.  The grant table implementation will
          * already have checked that we're supposed to have access, so
          * we can just grab a reference directly.
          */
-        if ( owner )
-            res = get_page_from_l1e(sl1e, d, owner);
+        res = get_page_from_l1e(sl1e, d, owner);
     }
+    else
+        res = get_page_from_l1e(sl1e, d, d);
 
     if ( unlikely(res < 0) )
     {



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:54:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:54:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116159.221760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtS4-0004Bt-2p; Fri, 23 Apr 2021 10:54:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116159.221760; Fri, 23 Apr 2021 10:54: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 1lZtS3-0004Bl-Vk; Fri, 23 Apr 2021 10:54:23 +0000
Received: by outflank-mailman (input) for mailman id 116159;
 Fri, 23 Apr 2021 10:54:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZtS2-0004BS-OB
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:54:22 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fe922e6f-90d6-40d1-9c8c-8c8d6669f295;
 Fri, 23 Apr 2021 10:54: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: fe922e6f-90d6-40d1-9c8c-8c8d6669f295
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619175260;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=V9n/cbZecot66WlqkP5TQPsHAT9yUadrTwZKpkC73E4=;
  b=Iyu0N7Ujlg8QR4pbGwst/E4NR0CWMeFuXgtMtrVvzc5/t7lu0bCSt1qC
   NgwnheTB9j/sRbKne3DX24Mpd1lEJbLiiwbNQ7Zkn7QBAwyEUJKGiivNl
   9HntTc1+l+w7RwMOwBA8ghHARyTZvpAd5x7sYTgd73c5ybjPW6o3Rsgch
   A=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: RXn9/Svsc9sclGozNQenDGkNaF7qOVaIhuNRmVsPYzlC9BpZesNjvTOVGunjoBf97vMD73CTTW
 9DuGxmUgRZ7W4JsU+RmTOtpwDBLyWf4zNLizjn4EpJFabw0gg4wbtttr84V2hOfHVnt+2sBdRn
 1qx31yI0PtteF8m5oRnQJ92sG+U8utCb5RlUC9xwM9qh591z7LxsbsYihol1XFYIEUd73AQWeV
 TGWSJO973Xj8CxdsydbHtixqTEhrRy5UH3yIm4QiFGY8PIhM0xKH9TsShFGtDRj7cbwHJMr0RF
 IB4=
X-SBRS: 5.2
X-MesageID: 42383580
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:mN0kya7SrVIA6OUZ5APXwciBI+orLtY04lQ7vn1ZYRZeftWE0+
 Wnm/oG3RH54QxhJE0Is/roAtjlfVr385lp7Y4NeZKrWwf7sGWlRbsSkrfK6TvmBiH466phxb
 5tGpIOeuHYIHpbqYLB4Ae+G8s929XvysqVrMrX0nsFd3ATV4hO9AF8YzzrcHFeZA4DPpYhEY
 rZ28wvnUvcRV0yTuCWQkYIRPLCodqjruOSXTcjCwQ84AeDyROEgYSKaCSw5RsVXzNRzbpKyw
 Gs+GGUicvD04DZ9jbm22De9JhQktf6o+EzfvCksNQfKTnnl2+TFeNccoCCpzw8raWO71sngb
 D30m4dFvlz8H/YcyWJpwLs0WDboVATwkLloGXo5EfLkIjcfnYaA9AErZ9FehHZgnBQwu1U4e
 Zu5SalkLZ5STnHhz/w4tDUUQoCrDvEnVMy1eMcy2dSXuIlGc9shJ1a8U0QC5EaE0vBmfMaLN
 U=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42383580"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OfqA6bdtDd85aYUpFC8EtuSIKMRrRWOI3vh4mNawqVsYUGYxUEZngl0KGd5fWGSfvl4fAUfqKvskanqf/46NEnc7moItB/9ftLIU8eXYPT7YLlw+Hu4+qoamwgttfMXiZaT3AhblndjzkJ0rzb8HOhTN3Ks77frb9sYO7zLAf8dE9UUxFzRgKBX/pNHKI9B1IZtDnmmaaUsj3WBTDgLS20nnASPxgqhSPNKNOBfO7Ol2Ab2ohr0gEPHN54GhXDJs0TyqAULcbWM5kPNYExtovyMLqeFIDQi+nIxL3Jof1sYAa9/BZjkGoKYty+X0tLn7WEyZRBh9B0BHGJB+6JXOiQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=53O2tEnqOV87xRSq5S2pjHQKd2sUEhduNa0fw8jowx8=;
 b=AWY6yAdDLjpzDxv4A/Q4ksxDdP/N/+i9/IZSGEV86eGXn2AplEH34F4WjPgZfggqC+Agg+0eVNko1n9CHVkD+Oc31UwhTf3h8NqFDXV52v+KdfLcRsmf2fxUkrDpkMnnYnsipn7628Gm+9FoeHm6iLhcbwUr2EfUwPnT9slHAzobmvgoQQrsVIv/dZBTiZO7RZj82OdtwwceRKxag8pt2Z70Xh9/5WgEWJcgphoZ9/BTjtg/eSrBF6eowtIefFLK3oIvepKelO6rmLwkZ8m3T6aF3bcRRFKh5YYkBSEulBxRJTLKTsuVBvyjdZx7urs5DgzUAfWwDSFWLVp5b2Re/Q==
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=53O2tEnqOV87xRSq5S2pjHQKd2sUEhduNa0fw8jowx8=;
 b=k2ZVjAZfAc0HKRjUl7ziAi3NUgNd2u+qFjUwPfwwrGDfo4vIxyVygxf8qS7ZhqQ5CNQsMVFrtOghtLLFIA4O7/5Bb8kxv+5AMZvnUEedb22bidKvOcHc27k+bXzsvMN7u5lWvwem+PI4ekfrMO8h3WOFFPoS6kLhGk1KIyp0Tbg=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Roger Pau Monne <roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: [PATCH] x86/cpuid: do not expand max leaves on restore
Date: Fri, 23 Apr 2021 12:54:08 +0200
Message-ID: <20210423105408.7265-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: PR3P193CA0056.EURP193.PROD.OUTLOOK.COM
 (2603:10a6:102:51::31) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e2f43b28-9fe2-47fd-2657-08d906462460
X-MS-TrafficTypeDiagnostic: DM5PR03MB2492:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2492DF5F82B9032C744A12BF8F459@DM5PR03MB2492.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: cBzpD15vf8pBQQuJagl2iSQGKfwlqh/fpFp57xyMODE62WKeiVfIuPxE+yruynzCsdp0e1SwS6O/CsgJoq3i0OEIw5p0vY6p8BmoGjhSx6G1BjWQcfHsn+emI3VX4C6tCMNLnQbGThagQvM/zYg9i0fP++HVQb/FJdJ6P0Z3Q9YxfI/HcypbtSKS5NUXku4+Jp4iS+cj10pnMqBeVXlz5WcZk5exdskYHvGfpoAzYujmLGXaBhxPLcjVPB7F91a/DBwHaxNswLRxBrJMwBCEUKy++h516U+4U3keSYSQKxhPd4SXFyzyLwfNlLVqTWrlBcaZDe+JRbrQ/fO6rxpgpqjnBtXmcDY5mT8Ce3WB+W6+cJ9G0pRM6zPJNRy8A/uVUOOogezLlPP7I/nxZDYRBiETAgj+J2z+zWflqYdz+8+vyTyH7+1ZZvZQyawmAuXfetw7ffL+wyDD14MTn/yfX8VyeJfpHJ9RVMR1xZGVfUhpzUJmHCdnTT9RkRqYuqZIiSSBG+ot2YduF3kBs24i3Dt9P/ukepI50IVaohxF2YTSwI4Lsb0C9WE1tegIBUd5jA1Uzl13yMZQcKYl3kBhkFAjP22zYm71o8x1f3l9gEg=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(346002)(39860400002)(136003)(376002)(366004)(6496006)(66946007)(5660300002)(36756003)(54906003)(6666004)(6486002)(66476007)(38100700002)(107886003)(66556008)(16526019)(478600001)(186003)(956004)(2906002)(316002)(6916009)(86362001)(1076003)(83380400001)(4326008)(8676002)(8936002)(26005)(2616005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: e2f43b28-9fe2-47fd-2657-08d906462460
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 10:54:17.9365
 (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: NPTBuSxEZkWTi/FNtzDjE39bg67pWTtpHui9xSefYi1duXnzSkKCi+S2LyXuTWDYttN9FU8OMIZqzV0DywTBVQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2492
X-OriginatorOrg: citrix.com

When restoring limit the maximum leaves to the ones supported by Xen
4.13 in order to not expand the maximum leaf a guests sees. Note this
is unlikely to cause real issues.

Guests restored from Xen versions 4.13 or greater will contain CPUID
data on the stream that will override the values set by
xc_cpuid_apply_policy.

Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/libs/guest/xg_cpuid_x86.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 5ea69ad3d51..9296fdc34bd 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -510,6 +510,11 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         {
             p->feat.mpx = test_bit(X86_FEATURE_MPX, host_featureset);
         }
+
+        /* Clamp maximum leaves to the supported ones on 4.13. */
+        p->basic.max_leaf = min(p->basic.max_leaf, 0xdu);
+        p->feat.max_subleaf = min(p->feat.max_subleaf, 1u);
+        p->extd.max_leaf = min(p->extd.max_leaf, 0x1cu);
     }
 
     if ( featureset )
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:58:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:58:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116172.221787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtVs-0004bo-3R; Fri, 23 Apr 2021 10:58:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116172.221787; Fri, 23 Apr 2021 10: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 1lZtVr-0004bh-Vq; Fri, 23 Apr 2021 10:58:19 +0000
Received: by outflank-mailman (input) for mailman id 116172;
 Fri, 23 Apr 2021 10:58:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtVq-0004as-Tn
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:58:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7252a128-bb93-432c-be5d-c7c5f4ae0642;
 Fri, 23 Apr 2021 10:58:17 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 94519B05E;
 Fri, 23 Apr 2021 10:58: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: 7252a128-bb93-432c-be5d-c7c5f4ae0642
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175496; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=O1h7dIq+ewiuqz8410ZJWfplP+tNdNhZw1IeOdaurVQ=;
	b=sVvMyFmiUVUNqmwQkzvW57olf73ljfaCf6dAb6Xv3UVxtU1BBZ2GSg2rwLX13ew2i23kmQ
	H7aC5clPhKI6JKx/UYpmdmbWt7QR87/VJJhAgUABWiBSudTZUOVaMtuWw5wGa+fq17nyOS
	EPBfm+FPZMht/epJ8FHse7lzjaxz/90=
Subject: Re: [PATCH] x86/oprof: fix !HVM && !PV32 build
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
 <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
 <caab96a2-3949-9ddb-e6ab-9a95c958e4d6@suse.com>
 <YIKYaCr13TiwxqRq@Air-de-Roger>
 <98d0b627-de38-f7a0-7487-cbf83864c82f@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <135f8bc2-d07c-c531-e498-9f0e15207cca@suse.com>
Date: Fri, 23 Apr 2021 12:58:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <98d0b627-de38-f7a0-7487-cbf83864c82f@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 12:51, Andrew Cooper wrote:
> On 23/04/2021 10:50, Roger Pau Monné wrote:
>> On Fri, Apr 16, 2021 at 04:20:59PM +0200, Jan Beulich wrote:
>>> On 16.04.2021 15:41, Andrew Cooper wrote:
>>>> On 16/04/2021 09:16, Jan Beulich wrote:
>>>>> clang, at the very least, doesn't like unused inline functions, unless
>>>>> their definitions live in a header.
>>>>>
>>>>> Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
>>>>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>> I agree this will fix the build.  However, looking at the code, I'm not
>>>> sure the original CONFIG_COMPAT was correct.  In particular, ...
>>>>
>>>>> --- a/xen/arch/x86/oprofile/backtrace.c
>>>>> +++ b/xen/arch/x86/oprofile/backtrace.c
>>>>> @@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
>>>>>      return head->ebp;
>>>>>  }
>>>>>  
>>>>> +#ifdef CONFIG_COMPAT
>>>>>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
>>>>>  {
>>>>>      if (is_hvm_vcpu(vcpu))
>>>> ... this chunk of logic demonstrates that what oprofile is doing isn't
>>>> related to the Xen ABI in the slightest.
>>>>
>>>> I think OProfile is misusing the guest handle infrastructure, and
>>>> shouldn't be using it for this task.
>>> I'm afraid I consider this something for another day. Both the
>>> original #ifdef and the one getting added here are merely
>>> measures to get things to build.
>> Acked-by: Roger Pau Monné <roger.pau@citrix.com>
>>
>> Without entering on the debate whether CONFIG_COMPAT is the correct
>> conditional to use it's not making the issue any worse, and it will
>> allow to unblock the build. We can discuss about the CONFIG_COMPAT
>> stuff later.
> 
> I disagree.  Fixing this less effort than the time wasted arguing about
> fixing it.
> 
> But if you are going to insist on not fixing it, and putting in a patch
> like this, then at a minimum, it needs to include a TODO comment stating
> that the use of CONFIG_COMPAT is bogus and needs fixing.

I disagree: It is (for now) just you saying this is bogus. The (ab)use
of the handle infrastructure was there before. You could have sent a
fix long ago, therefore, if you were thinking this needs fixing. I can
see that you have good intentions, but orthogonal issues shouldn't be
used to block necessary adjustments (and this applies to other pending
build fixes as well).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 10:58:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 10:58:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116171.221775 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtVq-0004ab-Mw; Fri, 23 Apr 2021 10:58:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116171.221775; Fri, 23 Apr 2021 10: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 1lZtVq-0004aU-JN; Fri, 23 Apr 2021 10:58:18 +0000
Received: by outflank-mailman (input) for mailman id 116171;
 Fri, 23 Apr 2021 10:58:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZtVp-0004aP-R1
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 10:58:17 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2519292a-cd3b-431a-a75d-7fb50370563a;
 Fri, 23 Apr 2021 10:58: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: 2519292a-cd3b-431a-a75d-7fb50370563a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619175496;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=4URIcieHUiRhDICt2FziTzOhnvoju1JzkYqQXvOlaXI=;
  b=GynAfx5HO1mqcJgV5UMGIHeY6mTlm7cTsSwJ90o4UvdN/M19iN4SC+sL
   bvwph9mX9+v8SdzcbEdyU4azUSOSsHbcmYmCCapwkfCWDrFpAvNSJv4D7
   s6D1g6hpSCNohVRbIII99tvo+1AHaqrzWcxV4C/Y96VFPjsoD2cSl48sq
   g=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: M5MvZnu53Af85koYzOC6of3UQVNC2KRsQeXW+1yB+OMpUwUHyeRRUfuB9B3vlINOJNJ0VCITVw
 sY7hCD+sAvbPJmtdaTotWHdalJP/1TVOCZlZnqpPY87Y7Hoi+oZqVJBsnLhi4LMFwn+CyJbLFo
 HkzxYruCxOUz5p3nwpFlG4qkUBk19UND98wKBHx5f1OfLYTqL2mMNRgQChil7dyJaTV0tbJhZl
 ObvwStjapcfpkPWf2ocVxuFh0jObLXUueclaKDZ4nOXNopWQelpfXCDf8JYI07jhoMmN/4Ocoz
 Kxw=
X-SBRS: 5.2
X-MesageID: 42260105
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:l5zDt6hMxXXewNFX5MfNsdchBnBQXwh13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy4N5B9efdSPhv3alK5wn0Jv6z1TbaknD38N+9Y
 MlSahxD9XsEUN35PyR3CCUG8stqePpzImGnuHbpk0CcShPS4VNqzh0ERyaFEoefngiObMcGI
 CH7sRK4xqMEE5nDfiTPXUOU+jdq9CjrvuPDSIuPBI79BKIyQqh9b+SKXOl9y0DWDBCy6pKyx
 mmryXF4MyY0s2T+1vn+EL4q79Xn9bgzdUrPr3wtuElbg/CpyztSIBoW7iptC04rue1+D8R4a
 XxiiZlBetfwTf8eXy0vAvM1mDboUkTwk6n83C0qz/CptH0Xz0zAcYpv/MmTjLpr3AOkfs59Y
 Aj5RP/i7NnSSnusQ642v3zEzZtrUawqWpKq59ps1VvFbEwRZUUkZYS5ypuYfE9NRO/0q8LOs
 90AvrR4f5HGGnqFUzxjy1UzNugUm9bJGb+fmEy/sic0z1hlHtk1UcvxMsGgnca9J4mIqM0n9
 j5Dg==
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42260105"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CwYJz+tkZsKXtg4PcTs0RLVQgvrWzf89StCQuq4IGYL1LjlI73CytrvLYnTEJkSKI8JunYP5iEb2F8YP2btM7YZBfRzFoP7v3xHGxrEtYa37es9udwRbfgg20kXYyf+Px1r+GOVBR+4jxsePVTTYO0K4mSEyNvAt5UH78eV9Oq3Co/lSKWe+VONc6Qe24dTPI8K1yaXZvjfmblavsxNgkKS8EfL/hW3+lnYVvdA2xSSgu6EgRP6KKU+dd6RfZcmuW6zUcIrGZCf1aZkUo1vhwPifavXv46GauaNm/lzq888kKu91UzO4MpHgikA+Bw1XpR048ZEdq3NHPsGYWZF0WA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4GSV6DlcN8l0AYw9V35FatmggFYhG00rbwZMj7Psi0Q=;
 b=ELimJ6u/atezrEYl4q0cdpcQh+roxxy3LUyvwxxqvfQCizaeCxK2PZj8uY83yZ2LjpnwIjL3fBwcdHHF/BOGQYfp682kzGbcCbCSWzOscIs+kM9F/UQPWuDcC3Esut/vtaF56g01L3NgPSS+S4n5yG+UptZ6Y14uplOGiCwazflKsq0nt4CNGSPMWLoKmf8i6Voc9sPPAzf4Rm9Qw04SdWEOiOzaviqS6ounYVIxyt+u3rHmIG5IjCsDNqUNDJtVwgC70LUDmrMtG/VPJws62wEKzmtfuoZhivPfICUcvpKPWoNJsDn3cQrB/aRacCDTVxJhXk85vPlgPcwdZi4z9g==
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=4GSV6DlcN8l0AYw9V35FatmggFYhG00rbwZMj7Psi0Q=;
 b=ADnxyo53Yns57+C3JwRueYZIG9bQar8tD8lO8UyjdjK25Ci6SQpClFj7WqV7Fj6LeUDPDKDSr0P5reLdptsF52cOdvrIivHDeD9iIhjwwtYIHsKeqRWwfIPUdcnrgo8TyGAydx3yBH6xnUsc5t7OibtVBxPiATE6SqFjf+2Zav4=
Date: Fri, 23 Apr 2021 12:58: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 7/8] x86/EFI: keep debug info in xen.efi
Message-ID: <YIKoPXpMKIHcqaJI@Air-de-Roger>
References: <YIEwW3HQuTtgWH5M@Air-de-Roger>
 <a00cfe95-06bd-4999-05ab-cae737ab6f4c@suse.com>
 <YIGOrOL+pKGaHqwX@Air-de-Roger>
 <8fabc56b-8e2d-96cd-e9b2-81bf38777d52@suse.com>
 <YIGcE5Cr+xK4K6gw@Air-de-Roger>
 <98431d14-d4a0-61a8-148e-221652f37b61@suse.com>
 <YIJ3icwAoGEW/AO+@Air-de-Roger>
 <32bba278-12cc-d105-7b95-6a788992d70c@suse.com>
 <YIKcS0o/9A0whxa/@Air-de-Roger>
 <c0edf6b1-46ea-e246-223e-b60356c928d6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c0edf6b1-46ea-e246-223e-b60356c928d6@suse.com>
X-ClientProxiedBy: MR2P264CA0046.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::34)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: fbd76348-c564-4a47-2da9-08d90646af77
X-MS-TrafficTypeDiagnostic: DM6PR03MB5354:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5354E1597729A3C009F6BA8B8F459@DM6PR03MB5354.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: GLCmFTvx94wId/SqAEwvwxybavV9qMOQM+v9+oZfNML761C/2NWN7bPRTayVvKNsx3T0TT/46MH1VQfODw6SnoasR6WNsTFpwXgfkEXXvjMIaPMshACtJp5KcGtqkuIq1x5xHg26pFFtMQKE7d3Up3K/wO8hkrmxkzwhH/Z78VUDdQIDYdDuxF+ImAiqG3QnBFXGaiaV/Rs0MzyYL527QrJ4W7nju2PEnE0Hso0gnITWSVHHlhBBh8O0MTTEjeyx2WbcZSWWRqrpcw537ojFIaU+thyaXa/1OTdWSFtBYiB1Gim4cBERaaVgIr4O/kXjfDrb7iFo1O2huKQlKZFaCUc4WWu8XPLg10QpX2aTxR9sGROF5aiDacuqMI7w9Ekq4MCSi5wq6ZxKKIkZdAk0enmuvTF9WuyP3yezcpXXJNbIqyvopuywnvN96F+c72F901OlIFmqxspvalDeA9bouBK0rMxmWhO3m+Lp2/SD5RLtrloQUIhrEwYYyxGGpDeW6EsCr8MLq8+uTJQFYKDa5SkrAfoHzRTsYAe4G1Km5LqNDsoly82bv4SpIS0FSvg1lR2RbmpYtP1nX/IrYG3XvE9FCQahUp2GMdi+LsaGgH0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(396003)(366004)(376002)(346002)(136003)(39860400002)(6486002)(5660300002)(54906003)(6916009)(66476007)(6666004)(83380400001)(66556008)(26005)(86362001)(9686003)(66946007)(956004)(16526019)(4326008)(2906002)(8676002)(53546011)(6496006)(8936002)(316002)(33716001)(45080400002)(38100700002)(186003)(85182001)(478600001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Xg54+5hFjroTXi/2lAg3xsdW6HJd1y0s8nCr1OP?=
X-MS-Exchange-CrossTenant-Network-Message-Id: fbd76348-c564-4a47-2da9-08d90646af77
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 10:58:11.3087
 (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: f1ALnRFaUku6Gpl1GAZBlGSDLvPjSTRgU34sqq2NJ+zioGADjRBaCHPLgNyISbzSb7p+0PFNLxTjhATB61O4Zw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5354
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 12:45:14PM +0200, Jan Beulich wrote:
> On 23.04.2021 12:07, Roger Pau Monné wrote:
> > On Fri, Apr 23, 2021 at 10:51:40AM +0200, Jan Beulich wrote:
> >> On 23.04.2021 09:30, Roger Pau Monné wrote:
> >>> /*
> >>>  * Explicitly list debug section for the PE output so that they don't
> >>>  * end up at VA 0 which is below image base and thus invalid. Also use
> >>>  * the NOLOAD directive, even when currently ignored by PE output, in
> >>>  * order to note those sections shouldn't be loaded into memory.
> >>>  *
> >>>  * Note such sections are past _end, so if loaded will be discarded by
> >>>  * Xen anyway.
> >>>  */
> >>>
> >>> Feel free to reword or expand the comment.
> >>
> >> Yes, I've edited it some while inserting. Will see to get to
> >> submitting v2 then.
> >>
> >>> Not sure there's some
> >>> reference we could add here about how debug sections are placed in PE
> >>> files usually.
> >>
> >> As said before - I don't think there's any "usually" here, which is
> >> why different environments have invented different ways. The debug
> >> info native to COFF is more like ELF's symbol table (with a little
> >> bit of extra information) plus Dwarf's .debug_line, but not really
> >> fully covering what you'd expect from debug info.
> > 
> > One last thing, do you know if the newly added debug_* sections get
> > the IMAGE_SCN_MEM_DISCARDABLE section flag set?
> 
> At least with an up-to-date ld (i.e. one meeting the requirements so
> we wouldn't force debug info to be stripped) they do.
> 
> > Not sure there's a way we can force it from the linker script TBH, but
> > would be nice and seems to be a recommended flag for debug sections
> > according to Microsoft [0].
> 
> The linker does this for debugging sections irrespective of what the
> linker script says:
> 
>    if ((sec_flags & SEC_DEBUGGING) != 0)
>      styp_flags |= IMAGE_SCN_MEM_DISCARDABLE;

Great, that's good to know. Note sure it's worth adding to the commit
message, maybe I've just missed part of the documentation where LD
notes that IMAGE_SCN_MEM_DISCARDABLE will be unconditionally added to
debug sections.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 11:00:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 11:00:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116182.221799 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtXd-0005Yd-Ep; Fri, 23 Apr 2021 11:00:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116182.221799; Fri, 23 Apr 2021 11: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 1lZtXd-0005YW-BD; Fri, 23 Apr 2021 11:00:09 +0000
Received: by outflank-mailman (input) for mailman id 116182;
 Fri, 23 Apr 2021 11:00:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtXb-0005UR-Ct
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 11:00:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c7c756ed-6085-4756-b8de-842ec980242c;
 Fri, 23 Apr 2021 11:00:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C1AA9B06A;
 Fri, 23 Apr 2021 11:00: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: c7c756ed-6085-4756-b8de-842ec980242c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175605; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=vqIIGpVhwdgqU0V3/pxrgUh3+hfFqa6O/5aIiLJaxLo=;
	b=sUC3cDfRdTVV+Lm/GvQ6wPiPeQ5fdpJ8AISdiKETzWK7Agl3vLRz+OM1pNHZZD5nMtmwFk
	JYCcEzeRVavlVJXyDLNb798GvwmZlApyP6hdFMHVrxKkxDqagiyROvg+d+oFH15FxTqH11
	qMH3iFrubZyV1VaFYt+Fsfn1Pe8O1z4=
Subject: Really v5 (was: [PATCH v4 0/3] VMX APIC access page and shadow
 adjustments)
From: Jan Beulich <jbeulich@suse.com>
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>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Message-ID: <55ba772b-923f-dfc5-aa42-c6874c792698@suse.com>
Date: Fri, 23 Apr 2021 13:00:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 23.04.2021 12:51, Jan Beulich wrote:
> 1: VMX: use a single, global APIC access page
> 2: x86/shadow: re-use variables in shadow_get_page_from_l1e()
> 3: x86/shadow: streamline shadow_get_page_from_l1e()

I'm sorry, I'm noticing only now that I've typoed the version.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 11:02:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 11:02:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116189.221811 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtZy-0005gt-Sc; Fri, 23 Apr 2021 11:02:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116189.221811; Fri, 23 Apr 2021 11:02: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 1lZtZy-0005gm-P8; Fri, 23 Apr 2021 11:02:34 +0000
Received: by outflank-mailman (input) for mailman id 116189;
 Fri, 23 Apr 2021 11:02:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtZy-0005gh-2g
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 11:02:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1727a476-9c6e-4b30-be54-8b94f5df77dd;
 Fri, 23 Apr 2021 11:02:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B2177B0D7;
 Fri, 23 Apr 2021 11:02: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: 1727a476-9c6e-4b30-be54-8b94f5df77dd
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175752; 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=itV2HNrG4jrnOJaz6lI+gZcYPRMPfnV3prE1QayyZS0=;
	b=e0CVAUi9S6Kx1fuwoFufDZ3sstAZCrmoXyUcAHfKQ0t8bm2ZZk425lCLauBv01QC33Y6gI
	WqVhTq8PDlB0zYQCdCuE+6yYSON+iyCkh/j/SQ5127cRoIn1XZVDuUNOIdP5pBbOSPsclj
	Aj+zdgbpPMzJ+tPbX0Y9BBO/pVcy4oA=
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 0/3] x86/EFI: build adjustments
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>
Message-ID: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
Date: Fri, 23 Apr 2021 13:02:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Since it was requested and is possible with up-to-date binutils, inclusion
of debug info in xen.efi is the remaining part here. The other changes here
are cleanup related to both the work here as well as the one to make
binutils fit for our purposes.

1: EFI: sections may not live at VA 0 in PE binaries
2: EFI: keep debug info in xen.efi
3: EFI: don't have an overly large image size

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 11:03:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 11:03:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116193.221823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtaz-0005oo-6X; Fri, 23 Apr 2021 11:03:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116193.221823; Fri, 23 Apr 2021 11:03: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 1lZtaz-0005oh-3P; Fri, 23 Apr 2021 11:03:37 +0000
Received: by outflank-mailman (input) for mailman id 116193;
 Fri, 23 Apr 2021 11:03:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtay-0005oa-BQ
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 11:03:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b60d196c-89dd-4628-bd93-a871f5e31660;
 Fri, 23 Apr 2021 11:03:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B019FB10B;
 Fri, 23 Apr 2021 11: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: b60d196c-89dd-4628-bd93-a871f5e31660
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175814; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=gtsBQVM6fXHKsNwZadOnV9fPekSRbF3U9lRQ6dy2Lxs=;
	b=X83AGop41/LmzdecgL+3Urc1U4teWi+xBRqV307GrvJTMvUn+Jxz7YTADg3d4Y2Q0e4Esh
	r+JwJgBVUwp+4X/RwJHBjxeSVBEhsu3U98dE5R2cUtAuK7K46kGD3b6uCIhrJbh3IWqdV+
	+ieldNxlQBO+zCA7/SeJ1YdhAGwlee0=
Subject: [PATCH v2 1/3] x86/EFI: sections may not live at VA 0 in PE binaries
From: Jan Beulich <jbeulich@suse.com>
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>
References: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
Message-ID: <748d35dc-5a2f-302f-d789-9797c6726810@suse.com>
Date: Fri, 23 Apr 2021 13:03:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
least 2.36 would silently truncate the (negative) difference when a
section is placed below the image base. Such sections would also be
wrongly placed ahead of all "normal" ones. Since, for the time being,
we build xen.efi with --strip-debug anyway, .stab* can't appear. And
.comment has an entry in /DISCARD/ already anyway in the EFI case.

Because of their unclear origin, keep the directives for the ELF case
though.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
It's certainly odd that we have stabs section entries in the script, but
no Dwarf ones.

--- a/xen/arch/x86/xen.lds.S
+++ b/xen/arch/x86/xen.lds.S
@@ -350,6 +350,7 @@ SECTIONS
 #endif
   }
 
+#ifndef EFI
   /* Stabs debugging sections.  */
   .stab 0 : { *(.stab) }
   .stabstr 0 : { *(.stabstr) }
@@ -358,6 +359,7 @@ SECTIONS
   .stab.index 0 : { *(.stab.index) }
   .stab.indexstr 0 : { *(.stab.indexstr) }
   .comment 0 : { *(.comment) }
+#endif
 }
 
 ASSERT(__2M_rwdata_end <= XEN_VIRT_END - XEN_VIRT_START + __XEN_VIRT_START -



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 11:04:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 11:04:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116196.221834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtbZ-0005v3-FI; Fri, 23 Apr 2021 11:04:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116196.221834; Fri, 23 Apr 2021 11:04: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 1lZtbZ-0005uw-CC; Fri, 23 Apr 2021 11:04:13 +0000
Received: by outflank-mailman (input) for mailman id 116196;
 Fri, 23 Apr 2021 11:04:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtbY-0005uo-9E
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 11:04:12 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 60db8bb4-ba7b-4966-9e62-05e671b44324;
 Fri, 23 Apr 2021 11:04:11 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7B153B0D0;
 Fri, 23 Apr 2021 11:04: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: 60db8bb4-ba7b-4966-9e62-05e671b44324
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175850; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=3E4zY1ba3W2J+Wx0AnoEmzDCGCNqdtMSeVue/LO/Frk=;
	b=UXHKBV5YlqGmVQOdZENFX6MBQ856rFAbZRnaQUbP/FNzR8iDTyoqoTNWGPM9Htwx/RSp/d
	SrTV8qP2xIp8rk7koz0dD+aqRMRIt6nJ9WcD+w3b8XchenYvTCCzrt+KgaWgFbz1z4IwOi
	McaKmNytJ+3OREHdB2/pd4EeP27n9S0=
Subject: [PATCH v2 2/3] x86/EFI: keep debug info in xen.efi
From: Jan Beulich <jbeulich@suse.com>
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>
References: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
Message-ID: <084ef874-3ef2-cb52-bc4b-3b9d78c826ae@suse.com>
Date: Fri, 23 Apr 2021 13:04:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

... provided the linker supports it (which it does as of commit
2dfa8341e079 ["ELF DWARF in PE output"]).

Without mentioning debugging sections, the linker would put them at
VA 0, thus making them unreachable by 32-bit (relative or absolute)
relocations. If relocations were resolvable (or absent) the resulting
binary would have invalid section RVAs (0 - __image_base__, truncated to
32 bits). Mentioning debugging sections without specifying an address
will result in the linker putting them all on the same RVA. A loader is,
afaict, free to reject loading such an image, as sections shouldn't
overlap. (The above describes GNU ld 2.36 behavior, which - if deemed
buggy - could change.)

Make sure our up-to-16Mb padding doesn't unnecessarily further extend
the image.

Take the opportunity and also switch to using $(call ld-option,...).

Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: Add comment to linker script.
---
This way we could also avoid discarding .comment for xen.efi.

I'd like to point out that the linking of the debug info takes far
longer than the linking of the "normal" parts of the image. The change
therefore has the downside of slowing down debug builds.

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -129,8 +129,14 @@ export XEN_BUILD_EFI := $(shell $(CC) $(
 CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
 
 # Check if the linker supports PE.
-EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10 --strip-debug
-XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(LD) $(EFI_LDFLAGS) -o efi/check.efi efi/check.o 2>/dev/null && echo y))
+EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10
+XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(call ld-option,$(EFI_LDFLAGS) --image-base=0x100000000 -o efi/check.efi efi/check.o))
+# If the above failed, it may be merely because of the linker not dealing well
+# with debug info. Try again with stripping it.
+ifeq ($(CONFIG_DEBUG_INFO)-$(XEN_BUILD_PE),y-n)
+EFI_LDFLAGS += --strip-debug
+XEN_BUILD_PE := $(call ld-option,$(EFI_LDFLAGS) --image-base=0x100000000 -o efi/check.efi efi/check.o)
+endif
 
 ifeq ($(XEN_BUILD_PE),y)
 
@@ -235,6 +241,9 @@ note_file_option ?= $(note_file)
 
 ifeq ($(XEN_BUILD_PE),y)
 $(TARGET).efi: prelink.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc
+ifeq ($(CONFIG_DEBUG_INFO),y)
+	$(if $(filter --strip-debug,$(EFI_LDFLAGS)),echo,:) "Will strip debug info from $(@F)"
+endif
 	$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
 	          $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< $(relocs-dummy) \
 	                $(BASEDIR)/common/symbols-dummy.o $(note_file_option) -o $(@D)/.$(@F).$(base).0 &&) :
--- a/xen/arch/x86/xen.lds.S
+++ b/xen/arch/x86/xen.lds.S
@@ -312,10 +312,70 @@ SECTIONS
     *(.reloc)
     __base_relocs_end = .;
   }
-  /* Trick the linker into setting the image size to exactly 16Mb. */
-  . = ALIGN(__section_alignment__);
-  DECL_SECTION(.pad) {
-    . = ALIGN(MB(16));
+  /*
+   * Explicitly list debug section for the PE output so that they don't end
+   * up at VA 0 which is below image base and thus invalid. Also use the
+   * NOLOAD directive, despite currently ignored by ld for PE output, in
+   * order to record that we'd prefer these sections to not be loaded into
+   * memory.
+   *
+   * Note that we're past _end here, so if these sections get loaded they'll
+   * be discarded at runtime anyway.
+   */
+  .debug_abbrev ALIGN(1) (NOLOAD) : {
+     *(.debug_abbrev)
+  }
+  .debug_info ALIGN(1) (NOLOAD) : {
+    *(.debug_info)
+    *(.gnu.linkonce.wi.*)
+  }
+  .debug_types ALIGN(1) (NOLOAD) : {
+    *(.debug_types)
+  }
+  .debug_str ALIGN(1) (NOLOAD) : {
+    *(.debug_str)
+  }
+  .debug_line ALIGN(1) (NOLOAD) : {
+    *(.debug_line)
+    *(.debug_line.*)
+  }
+  .debug_line_str ALIGN(1) (NOLOAD) : {
+    *(.debug_line_str)
+  }
+  .debug_names ALIGN(4) (NOLOAD) : {
+    *(.debug_names)
+  }
+  .debug_frame ALIGN(4) (NOLOAD) : {
+    *(.debug_frame)
+  }
+  .debug_loc ALIGN(1) (NOLOAD) : {
+    *(.debug_loc)
+  }
+  .debug_loclists ALIGN(4) (NOLOAD) : {
+    *(.debug_loclists)
+  }
+  .debug_ranges ALIGN(8) (NOLOAD) : {
+    *(.debug_ranges)
+  }
+  .debug_rnglists ALIGN(4) (NOLOAD) : {
+    *(.debug_rnglists)
+  }
+  .debug_addr ALIGN(8) (NOLOAD) : {
+    *(.debug_addr)
+  }
+  .debug_aranges ALIGN(1) (NOLOAD) : {
+    *(.debug_aranges)
+  }
+  .debug_pubnames ALIGN(1) (NOLOAD) : {
+    *(.debug_pubnames)
+  }
+  .debug_pubtypes ALIGN(1) (NOLOAD) : {
+    *(.debug_pubtypes)
+  }
+  /* Trick the linker into setting the image size to no less than 16Mb. */
+  __image_end__ = .;
+  .pad ALIGN(__section_alignment__) : {
+    . = __image_end__ < __image_base__ + MB(16) ? ALIGN(MB(16)) : .;
   }
 #elif defined(XEN_BUILD_EFI)
   /*



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 11:04:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 11:04:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116199.221847 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtbu-00060d-Nj; Fri, 23 Apr 2021 11:04:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116199.221847; Fri, 23 Apr 2021 11: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 1lZtbu-00060W-KT; Fri, 23 Apr 2021 11:04:34 +0000
Received: by outflank-mailman (input) for mailman id 116199;
 Fri, 23 Apr 2021 11:04:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtbs-00060I-P6
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 11:04:32 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0fa1e508-9a3e-4a93-a6d7-2854014ea655;
 Fri, 23 Apr 2021 11:04:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 50989B118;
 Fri, 23 Apr 2021 11:04: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: 0fa1e508-9a3e-4a93-a6d7-2854014ea655
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619175871; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=PHtI+ZWAFKtMbksWLAGrO29iTTVDU3TNyeZGMIXneH8=;
	b=ZFBeNweJmgyabc5I5bXOoDJkRGRj3K4N/KPjMKnWSlXaQ5EberNE3ytXzDTetp2rb6MrDm
	B128mCIg7DCv8YFKiZzYVL62Ju1h3QZt84DQSpL0X3sOuQxRg1wS1Y7on2bUJJXSxnHorF
	PLX+EM9QCf3PgKnNiMFBthZGkCVWn0A=
Subject: [PATCH v2 3/3] x86/EFI: don't have an overly large image size
From: Jan Beulich <jbeulich@suse.com>
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>
References: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
Message-ID: <0010bf45-ee8d-5518-9c17-6f8ef140185e@suse.com>
Date: Fri, 23 Apr 2021 13:04:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

While without debug info the difference is benign (so far), since we pad
the image to 16Mb anyway, forcing the .reloc section to a 2Mb boundary
causes subsequent .debug_* sections to go farther beyond 16Mb than
needed. There's no reason to advance . for establishing __2M_rwdata_end,
as all data past _end is of no interest at runtime anymore anyway.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---
This makes more explicit a possible latent problem with the ELF image:
It ends at _end, not __2M_rwdata_end (advancing . as was done here does
not have the effect of increasing the image size). Interestingly the
conversion xen-syms => xen rounds up the program header specified size
suitably, as per the comment "Do not use p_memsz: it does not include
BSS alignment padding" in mkelf32.c. I do think this would instead want
taking care of in the linker script. Commit 7a95e0a2c572 ("x86: properly
calculate xen ELF end of image address") clearly only hacked an existing
hack rather than addressing the root cause. Thoughts?

--- a/xen/arch/x86/xen.lds.S
+++ b/xen/arch/x86/xen.lds.S
@@ -303,8 +303,7 @@ SECTIONS
   } PHDR(text)
   _end = . ;
 
-  . = ALIGN(SECTION_ALIGN);
-  __2M_rwdata_end = .;
+  __2M_rwdata_end = ALIGN(SECTION_ALIGN);
 
 #ifdef EFI
   .reloc ALIGN(4) : {



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 11:04:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 11:04:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116204.221859 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtcC-00067L-13; Fri, 23 Apr 2021 11:04:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116204.221859; Fri, 23 Apr 2021 11:04:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtcB-00067D-U2; Fri, 23 Apr 2021 11:04:51 +0000
Received: by outflank-mailman (input) for mailman id 116204;
 Fri, 23 Apr 2021 11:04:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Q/M9=JU=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZtcA-00066q-OH
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 11:04:50 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f75a8a5e-e70e-4e96-8856-5a626b665a76;
 Fri, 23 Apr 2021 11:04: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: f75a8a5e-e70e-4e96-8856-5a626b665a76
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619175889;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=OXqLpIbnf5tM3+5vBoS6G+K5GpMa2OPCuFGwySeg2F4=;
  b=Ka8G/WGpZFF9puWMa0gB592yv9YQ+xGzxVFinL1YBmiEJ9+G8UtPliS/
   tiexS6ACR7Pzh6vuz0DXlpWaIFcX1wH5uf3CHd5NDvu7NkvJZ9cunv38g
   SUJPHvw5J0m9yqHUiVd8+ljQTtwAkZ9XJDfb5u4vCD9NMNDHpOFg5sUUx
   4=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: YWMay7GGKDGmW9ZIruIP9yXyAGdUZBLl6fiAX74/eHGuoDqJ5fq4rg3dLxp1Qe5oVduQwUUEaz
 NE8W4xj2DPcV81oRzpBM2rK6mtyy/TAupM+srprriDKwcCsJD+te7Yjq+juuzpRL+JekukVfNP
 s9KAPu/waExP97wruv5XQy3aseielZeRrmrFAhfU4VpChKtWnlE0LM9gC2gVca1RSVIWiM4Kug
 JmxUhEohcyQM5eBwaqVikH0KH6wdpCv+w9pKP/dGyPAxh+UU6T6pHvZoNbdZZ+jlM0Am4B580G
 1Gc=
X-SBRS: 5.2
X-MesageID: 43760595
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Zcan7aj7COt0np0XrUG9SUZnlHBQX3Vw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+csFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmup
 tIW5NVTOf9BV0St6rHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WdEIyywe3cGIzVuL5w/CZ
 aa+45jrz2vZXwYYq2Adwc4dsLEoMDGk4+jXAUPAAQp5BLLoTSj7rP7FBbw5GZgbxpkx7A+/W
 /Z1zHo/6nLiYDG9jbw9U/2q65Xltzo18dZCKW36/Q9Bz3whm+TFf9ccpKYujRdmpDX1H8Ll5
 32rw4kL4BP7RrqDxyIiD/M/yWl7zo08X/lzjaj8AneiOj0XigzBcYEpa8xSGqg12MasNtx0L
 1G0gui3vI9Z36w/1Welqz1fipnmUaurX0pnfR7tQ04baIkZKJMtotaxUtJEf47bVHHwbo6G+
 pjBty03ocyTXqmaRnizw1S6eC3Um92NhmLRVVqgL3u7xFm2Fp9z0ce2fUFmGYB+J8XW/B/lp
 T5G5Utu7dUQsAMa6VhQM8HXMusE2TIBSnBKWSIPD3cZe86EkOIj6SyzKQ+5emsdpBN5JwumK
 7ZWFcdkWIpYUrhBeCHwZUjyGGNfEyNGRDWju1O7ZlwvbPxAJDxNzeYdVwom8y8590CH8zyQZ
 +ISdBrKs6mCVGrNZdC3gX4VZUXA2IZStcpttEyXE/Lit7XK7ftqvfQfJ/oVfnQOAdhflm6Lm
 oIXTD1KskFxFusQGXEjB/YXG6oVVf4+b52DajG78kewIUALeR3w0wooGX8wvvOBSxJs6Qwck
 c7CqjgiLmHqW6/+nuNz2gBAGsbMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYjt2T8bcFh
 9jt016kJjHaaC49GQHMZaKI2iah3wcqDahVJEHgJCO4s/jZ9ceAos5XrdyUSHGDQZ8lwoviG
 orUn5FembvUhfVzYm1hp0dA+/SM/Nmhh2wHMJSoXXD8WOGpc8uQXMfdyW0UdGehDsvQzY8vC
 w1z4YvxJ673Rq/I2o2h+o1dHdWbn6MPb5ABAOZILlPlqvTYwF2R2eSjTm8gxU+E1Carnk6ty
 jEF2m5aPvLCl1StjR93rzx+F15TGmbYnl9c2t3q4F7CGTAtEtiyOPjXNvH70KhLn85hs0NOj
 DMZjUfZjljwN26zza5sjePH3dO/ORiAsXtSJAYN53D0HKkL4OF0ZwcF/hP5ZB/KZTFqekQS9
 +SfAeTMRL1A+4kwBauu34gISV4wUNUyc/A6VnA1iyVzXQ/Cf3dLBBaXLkdOcib9HWhaPCS0p
 l15OhF9deYAyHUUJqhxq7WZTIYdU+Wjm6yUu0yqZdb+Yg1r6B+GpHHUT3OkFFLtS9OWvvcpQ
 c7euBc5ruEB6pEO+o1UAhd9kAylNuOIFAw2zaGSNMWTBUItTvjI9iN47D0srIhDU2KmRvoNT
 Ckglpg1saAexHG6KUTBK0xK1lHcUQQ6Hxt++WZao3bYT/aPt1rzR6fMnWndqVaR7XAMbIMrg
 xi69XgpZ7aSwPInCTRtyB8OKRA7iKORt6zGhuFHapt/8ahMVqBxous78jbtka5dRKLL2AZj5
 ZCb0oec4BqjSQjlpQ+1myKcZPMy3hV2Gd20HVAjV7i2o+v/WfdEwVnCGTi8+RrdAgWFGOJg8
 TD+fWfz1Ln7lF+qML+KHs=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="43760595"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MWvV6GkdJxNpRlheTOCUoaJPR2Sh60DpIFH5VYjd6H95x3fUYOFerfjBD/hIlJNe0CQHOnMGKRz45RNmhlBPf3mlM2CER4ETzGsgcNobCBwWmajITe8fVdhepOya7Sk24YUn7L5A8N9RsZDNSVr4zWh7zkdcYz5/tKjBY4WH+X/vaYWpF4Pws5iMk3hDiYq652i5cLnApT2gRnKbfKG8JL6B4vhrdxBQPP2bceiM+PYwg0m1BhtFOlzebC2lOpHtT/yChAez4YUsYFoSqSF68FR+lvlorD6FGwNy4qD/+Oz7c3R0yWisMBg2xObISZ0TPOns3MLbRW5TUoV7Ya4TLg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tluXybjjDoHMux5mWdbQRg/qCP4s7UImVaAgTk8Cm3c=;
 b=b7YWQhs/oiCIHEeOGI58NnOqGWLmNQsbm2i0bTCnfY7ABEsdec1XNb47k+tGgK2UVtHR66cYZNT18l4Ke1hyQREY+85cuMiuQl3xUTlWVIozJ1cW90ro/JlaYNn2u2QWj8WL3qJnSFrc7nFVRziIke+Bc5VVOy1p9o/k+escKuJ0biBaw8jClTogJ34L6wcmU/kvoRU1SCOYr8PCWekm6G3yu7xr/1rtTEkuuS+9ykdeUf6tvKAXTz4JTVHseoOb9DAPWJ/eMphZJ0uAidZjUcwlgDgJ1qT0Ga7ltXmBITynQ88+ibkW9jYdVtHlK42lAylnFmRy5of3Dbro8x5mWg==
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=tluXybjjDoHMux5mWdbQRg/qCP4s7UImVaAgTk8Cm3c=;
 b=so/LalkCucD0MKaH9O6XAKzlbY7YWWZl4mXNiUK1ZBQ0BAZK1xHCUHRlYt9vjK1PHJ3IG7TaO77VAILmSHptKBd+ZJtTN5AYNjP34D+rpKUZTJBLwZNzYhrAZ4rANj311k2eU6iu0zR9tmVlWMT4VmBbjNsj6NxLILtKgzXyeDM=
Subject: Re: [PATCH] x86/oprof: fix !HVM && !PV32 build
To: Jan Beulich <jbeulich@suse.com>
CC: Wei Liu <wl@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
	<roger.pau@citrix.com>
References: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
 <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
 <caab96a2-3949-9ddb-e6ab-9a95c958e4d6@suse.com>
 <YIKYaCr13TiwxqRq@Air-de-Roger>
 <98d0b627-de38-f7a0-7487-cbf83864c82f@citrix.com>
 <135f8bc2-d07c-c531-e498-9f0e15207cca@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <e386f7eb-8ae8-2f18-b9e8-30a319354ec0@citrix.com>
Date: Fri, 23 Apr 2021 12:04:34 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <135f8bc2-d07c-c531-e498-9f0e15207cca@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0031.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:151::18) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 28705590-32f3-4540-5410-08d906479ad1
X-MS-TrafficTypeDiagnostic: BYAPR03MB4167:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4167204613F234734B4E276CBA459@BYAPR03MB4167.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: o14S0wpC3VJYlgH9PoJsqn9OMCCdHVBoUNWOrHG14nv9NkWoS9ojkCYLiR+u9QAQFApk8xhL+krNeH9p2X1nfLcgXxoRq2/QNdc3gV9rRf+ACt8hWj9NN9wfMCLZomzcjYvA36LcHCDdo5nx8dZl4jCdOTbWgzuGevi4m1LVqzZD6E29GjtQX4XxscTA3tIMnBoWvs2VxQX6EPMDBnkCgvBDDcD+01UmXlWpz0OwjrAwhDrwz/+iJQWZU07T7D+5OgHscSed5RwLC9MqI652o6g/6RUReHKzDbfJ3WMBlHiQdffEq5K6LljObTJV3rpKu85PmHR6ZTaLsD0EDOmEhUyJZl4aBZvzD4I8eVwu8y94tvt3xCuz2j0i/K/nHWH1H85Yy5H0/N7Uz71RSWeU/TQFkH/hNsx7IC8x3iCzEmDn6hSbpf8SuF8fVIEgDHvtA9HfRF1lKdVbT3DbiuJ5/EEo1t4VhrMQfpx51Lb8+u3Xcw9EIp4uxit5DIyZdhMlfKJJygo6A/rXwpBMvURl4qCnSBR4T7awrMdxc25RDAywmrE+lNTdN18VVImUCKoclaHGftijEIeK/Kyn5koVHuQiYBDrK4GAfSHUVRbsX29W4xGmrhO7qCsJS7Wn3a40WIuQRJElGr+5883/yjoG+cFLYJPpOrTQ1voqhKbM5wGB6CdApJ9ZYuCYC+Eryxj9
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(366004)(396003)(346002)(376002)(136003)(956004)(2906002)(4326008)(26005)(31696002)(5660300002)(2616005)(38100700002)(53546011)(83380400001)(36756003)(31686004)(186003)(6486002)(478600001)(316002)(54906003)(66556008)(66946007)(66476007)(16526019)(16576012)(6666004)(6916009)(86362001)(8676002)(107886003)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 28705590-32f3-4540-5410-08d906479ad1
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 11:04:46.1119
 (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: dYSqRXJtrBL6DeoY3v4WIENbCp0TYS7Y2STWx4ie9Zg9i0v9/xbAsKTvLLwOCKudyhsX782SSIffmeP2oKTaoYJ/cXlkzeEcUh4iQk7QICE=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4167
X-OriginatorOrg: citrix.com

On 23/04/2021 11:58, Jan Beulich wrote:
> On 23.04.2021 12:51, Andrew Cooper wrote:
>> On 23/04/2021 10:50, Roger Pau Monné wrote:
>>> On Fri, Apr 16, 2021 at 04:20:59PM +0200, Jan Beulich wrote:
>>>> On 16.04.2021 15:41, Andrew Cooper wrote:
>>>>> On 16/04/2021 09:16, Jan Beulich wrote:
>>>>>> clang, at the very least, doesn't like unused inline functions, unless
>>>>>> their definitions live in a header.
>>>>>>
>>>>>> Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
>>>>>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>>> I agree this will fix the build.  However, looking at the code, I'm not
>>>>> sure the original CONFIG_COMPAT was correct.  In particular, ...
>>>>>
>>>>>> --- a/xen/arch/x86/oprofile/backtrace.c
>>>>>> +++ b/xen/arch/x86/oprofile/backtrace.c
>>>>>> @@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
>>>>>>      return head->ebp;
>>>>>>  }
>>>>>>  
>>>>>> +#ifdef CONFIG_COMPAT
>>>>>>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
>>>>>>  {
>>>>>>      if (is_hvm_vcpu(vcpu))
>>>>> ... this chunk of logic demonstrates that what oprofile is doing isn't
>>>>> related to the Xen ABI in the slightest.
>>>>>
>>>>> I think OProfile is misusing the guest handle infrastructure, and
>>>>> shouldn't be using it for this task.
>>>> I'm afraid I consider this something for another day. Both the
>>>> original #ifdef and the one getting added here are merely
>>>> measures to get things to build.
>>> Acked-by: Roger Pau Monné <roger.pau@citrix.com>
>>>
>>> Without entering on the debate whether CONFIG_COMPAT is the correct
>>> conditional to use it's not making the issue any worse, and it will
>>> allow to unblock the build. We can discuss about the CONFIG_COMPAT
>>> stuff later.
>> I disagree.  Fixing this less effort than the time wasted arguing about
>> fixing it.
>>
>> But if you are going to insist on not fixing it, and putting in a patch
>> like this, then at a minimum, it needs to include a TODO comment stating
>> that the use of CONFIG_COMPAT is bogus and needs fixing.
> I disagree: It is (for now) just you saying this is bogus. The (ab)use
> of the handle infrastructure was there before. You could have sent a
> fix long ago, therefore, if you were thinking this needs fixing.

I only know it needed fixing because you didn't build test your change
in CI.  Don't make it out to be my fault I didn't spot this 6 months ago.

> I can
> see that you have good intentions, but orthogonal issues shouldn't be
> used to block necessary adjustments (and this applies to other pending
> build fixes as well).

You genuinely regressed things for 32bit HVM guests, with the
CONFIG_COMPAT change.

The code may have been using inappropriate interfaces to perform its job
before, but its actually broken now.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 11:08:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 11:08:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116218.221870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZtff-0006WQ-Ms; Fri, 23 Apr 2021 11:08:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116218.221870; Fri, 23 Apr 2021 11: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 1lZtff-0006WJ-Jy; Fri, 23 Apr 2021 11:08:27 +0000
Received: by outflank-mailman (input) for mailman id 116218;
 Fri, 23 Apr 2021 11:08:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZtfe-0006WE-88
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 11:08:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4ebea252-91e6-4e6a-ad85-553790eb5166;
 Fri, 23 Apr 2021 11:08:25 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 82DBBB113;
 Fri, 23 Apr 2021 11:08: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: 4ebea252-91e6-4e6a-ad85-553790eb5166
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619176104; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=luVPk/KJynSlFpcA3TQTLGHH5Ntcm/8OQtNYX4o0yNQ=;
	b=go04YATnAmROQ3gX/6LgS7MFw3BVD6oISlVC1JomgVB3vWic5NcHVslgdds8lWd1ZOuClv
	XCPG+qKwUF0XGuYVVE1IfwQo2AIAIhLwpUpkwPOTC9vUFybYYV/nZUMVBDn91MFbORY3f3
	qsYnie4VyDXAM1eTO91bd2Gfqa2IWXw=
Subject: Re: [PATCH] x86/oprof: fix !HVM && !PV32 build
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
 <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
 <caab96a2-3949-9ddb-e6ab-9a95c958e4d6@suse.com>
 <YIKYaCr13TiwxqRq@Air-de-Roger>
 <98d0b627-de38-f7a0-7487-cbf83864c82f@citrix.com>
 <135f8bc2-d07c-c531-e498-9f0e15207cca@suse.com>
 <e386f7eb-8ae8-2f18-b9e8-30a319354ec0@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d03bbe0f-6ba3-8383-82cd-be340483f09f@suse.com>
Date: Fri, 23 Apr 2021 13:08:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <e386f7eb-8ae8-2f18-b9e8-30a319354ec0@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 13:04, Andrew Cooper wrote:
> On 23/04/2021 11:58, Jan Beulich wrote:
>> On 23.04.2021 12:51, Andrew Cooper wrote:
>>> On 23/04/2021 10:50, Roger Pau Monné wrote:
>>>> On Fri, Apr 16, 2021 at 04:20:59PM +0200, Jan Beulich wrote:
>>>>> On 16.04.2021 15:41, Andrew Cooper wrote:
>>>>>> On 16/04/2021 09:16, Jan Beulich wrote:
>>>>>>> clang, at the very least, doesn't like unused inline functions, unless
>>>>>>> their definitions live in a header.
>>>>>>>
>>>>>>> Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
>>>>>>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>>>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>>>> I agree this will fix the build.  However, looking at the code, I'm not
>>>>>> sure the original CONFIG_COMPAT was correct.  In particular, ...
>>>>>>
>>>>>>> --- a/xen/arch/x86/oprofile/backtrace.c
>>>>>>> +++ b/xen/arch/x86/oprofile/backtrace.c
>>>>>>> @@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
>>>>>>>      return head->ebp;
>>>>>>>  }
>>>>>>>  
>>>>>>> +#ifdef CONFIG_COMPAT
>>>>>>>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
>>>>>>>  {
>>>>>>>      if (is_hvm_vcpu(vcpu))
>>>>>> ... this chunk of logic demonstrates that what oprofile is doing isn't
>>>>>> related to the Xen ABI in the slightest.
>>>>>>
>>>>>> I think OProfile is misusing the guest handle infrastructure, and
>>>>>> shouldn't be using it for this task.
>>>>> I'm afraid I consider this something for another day. Both the
>>>>> original #ifdef and the one getting added here are merely
>>>>> measures to get things to build.
>>>> Acked-by: Roger Pau Monné <roger.pau@citrix.com>
>>>>
>>>> Without entering on the debate whether CONFIG_COMPAT is the correct
>>>> conditional to use it's not making the issue any worse, and it will
>>>> allow to unblock the build. We can discuss about the CONFIG_COMPAT
>>>> stuff later.
>>> I disagree.  Fixing this less effort than the time wasted arguing about
>>> fixing it.
>>>
>>> But if you are going to insist on not fixing it, and putting in a patch
>>> like this, then at a minimum, it needs to include a TODO comment stating
>>> that the use of CONFIG_COMPAT is bogus and needs fixing.
>> I disagree: It is (for now) just you saying this is bogus. The (ab)use
>> of the handle infrastructure was there before. You could have sent a
>> fix long ago, therefore, if you were thinking this needs fixing.
> 
> I only know it needed fixing because you didn't build test your change
> in CI.  Don't make it out to be my fault I didn't spot this 6 months ago.
> 
>> I can
>> see that you have good intentions, but orthogonal issues shouldn't be
>> used to block necessary adjustments (and this applies to other pending
>> build fixes as well).
> 
> You genuinely regressed things for 32bit HVM guests, with the
> CONFIG_COMPAT change.
> 
> The code may have been using inappropriate interfaces to perform its job
> before, but its actually broken now.

In which way? COMPAT gets selected by both PV32 and HVM.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 11:38:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 11:38:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116225.221883 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZu8w-00017V-Vi; Fri, 23 Apr 2021 11:38:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116225.221883; Fri, 23 Apr 2021 11: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 1lZu8w-00017O-SJ; Fri, 23 Apr 2021 11:38:42 +0000
Received: by outflank-mailman (input) for mailman id 116225;
 Fri, 23 Apr 2021 11:34:42 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Uz3Y=JU=arm.com=steven.price@srs-us1.protection.inumbo.net>)
 id 1lZu54-0000uV-81
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 11:34:42 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 69878617-cae8-489e-9545-f81ddfd0fdb9;
 Fri, 23 Apr 2021 11:34:39 +0000 (UTC)
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 204A413A1;
 Fri, 23 Apr 2021 04:34:39 -0700 (PDT)
Received: from [192.168.1.179] (unknown [172.31.20.19])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id D48233F694;
 Fri, 23 Apr 2021 04:34: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: 69878617-cae8-489e-9545-f81ddfd0fdb9
Subject: Re: [PATCH v5 05/16] swiotlb: Add restricted DMA pool initialization
To: Claire Chang <tientzu@chromium.org>, Joerg Roedel <joro@8bytes.org>,
 Will Deacon <will@kernel.org>, Frank Rowand <frowand.list@gmail.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, boris.ostrovsky@oracle.com,
 jgross@suse.com, Christoph Hellwig <hch@lst.de>,
 Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org, paulus@samba.org,
 "list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
 sstabellini@kernel.org, Robin Murphy <robin.murphy@arm.com>,
 grant.likely@arm.com, xypron.glpk@gmx.de, Thierry Reding
 <treding@nvidia.com>, mingo@kernel.org, bauerman@linux.ibm.com,
 peterz@infradead.org, Greg KH <gregkh@linuxfoundation.org>,
 Saravana Kannan <saravanak@google.com>,
 "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
 heikki.krogerus@linux.intel.com,
 Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
 Randy Dunlap <rdunlap@infradead.org>, Dan Williams
 <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>,
 linux-devicetree <devicetree@vger.kernel.org>,
 lkml <linux-kernel@vger.kernel.org>, linuxppc-dev@lists.ozlabs.org,
 xen-devel@lists.xenproject.org, Nicolas Boichat <drinkcat@chromium.org>,
 Jim Quinlan <james.quinlan@broadcom.com>, tfiga@chromium.org,
 bskeggs@redhat.com, bhelgaas@google.com, chris@chris-wilson.co.uk,
 daniel@ffwll.ch, airlied@linux.ie, dri-devel@lists.freedesktop.org,
 intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com,
 jxgao@google.com, joonas.lahtinen@linux.intel.com,
 linux-pci@vger.kernel.org, maarten.lankhorst@linux.intel.com,
 matthew.auld@intel.com, nouveau@lists.freedesktop.org,
 rodrigo.vivi@intel.com, thomas.hellstrom@linux.intel.com
References: <20210422081508.3942748-1-tientzu@chromium.org>
 <20210422081508.3942748-6-tientzu@chromium.org>
From: Steven Price <steven.price@arm.com>
Message-ID: <c9abca62-328d-d0d6-a8a6-a67475171f92@arm.com>
Date: Fri, 23 Apr 2021 12:34:31 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.1
MIME-Version: 1.0
In-Reply-To: <20210422081508.3942748-6-tientzu@chromium.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

On 22/04/2021 09:14, Claire Chang wrote:
> Add the initialization function to create restricted DMA pools from
> matching reserved-memory nodes.
> 
> Signed-off-by: Claire Chang <tientzu@chromium.org>
> ---
>   include/linux/device.h  |  4 +++
>   include/linux/swiotlb.h |  3 +-
>   kernel/dma/swiotlb.c    | 80 +++++++++++++++++++++++++++++++++++++++++
>   3 files changed, 86 insertions(+), 1 deletion(-)
> 
> diff --git a/include/linux/device.h b/include/linux/device.h
> index 38a2071cf776..4987608ea4ff 100644
> --- a/include/linux/device.h
> +++ b/include/linux/device.h
> @@ -416,6 +416,7 @@ struct dev_links_info {
>    * @dma_pools:	Dma pools (if dma'ble device).
>    * @dma_mem:	Internal for coherent mem override.
>    * @cma_area:	Contiguous memory area for dma allocations
> + * @dma_io_tlb_mem: Internal for swiotlb io_tlb_mem override.
>    * @archdata:	For arch-specific additions.
>    * @of_node:	Associated device tree node.
>    * @fwnode:	Associated device node supplied by platform firmware.
> @@ -521,6 +522,9 @@ struct device {
>   #ifdef CONFIG_DMA_CMA
>   	struct cma *cma_area;		/* contiguous memory area for dma
>   					   allocations */
> +#endif
> +#ifdef CONFIG_DMA_RESTRICTED_POOL
> +	struct io_tlb_mem *dma_io_tlb_mem;
>   #endif
>   	/* arch specific additions */
>   	struct dev_archdata	archdata;
> diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> index 216854a5e513..03ad6e3b4056 100644
> --- a/include/linux/swiotlb.h
> +++ b/include/linux/swiotlb.h
> @@ -72,7 +72,8 @@ extern enum swiotlb_force swiotlb_force;
>    *		range check to see if the memory was in fact allocated by this
>    *		API.
>    * @nslabs:	The number of IO TLB blocks (in groups of 64) between @start and
> - *		@end. This is command line adjustable via setup_io_tlb_npages.
> + *		@end. For default swiotlb, this is command line adjustable via
> + *		setup_io_tlb_npages.
>    * @used:	The number of used IO TLB block.
>    * @list:	The free list describing the number of free entries available
>    *		from each index.
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index 57a9adb920bf..ffbb8724e06c 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -39,6 +39,13 @@
>   #ifdef CONFIG_DEBUG_FS
>   #include <linux/debugfs.h>
>   #endif
> +#ifdef CONFIG_DMA_RESTRICTED_POOL
> +#include <linux/io.h>
> +#include <linux/of.h>
> +#include <linux/of_fdt.h>
> +#include <linux/of_reserved_mem.h>
> +#include <linux/slab.h>
> +#endif
>   
>   #include <asm/io.h>
>   #include <asm/dma.h>
> @@ -681,3 +688,76 @@ static int __init swiotlb_create_default_debugfs(void)
>   late_initcall(swiotlb_create_default_debugfs);
>   
>   #endif
> +
> +#ifdef CONFIG_DMA_RESTRICTED_POOL
> +static int rmem_swiotlb_device_init(struct reserved_mem *rmem,
> +				    struct device *dev)
> +{
> +	struct io_tlb_mem *mem = rmem->priv;
> +	unsigned long nslabs = rmem->size >> IO_TLB_SHIFT;
> +
> +	if (dev->dma_io_tlb_mem)
> +		return 0;
> +
> +	/* Since multiple devices can share the same pool, the private data,
> +	 * io_tlb_mem struct, will be initialized by the first device attached
> +	 * to it.
> +	 */
> +	if (!mem) {
> +		mem = kzalloc(struct_size(mem, slots, nslabs), GFP_KERNEL);
> +		if (!mem)
> +			return -ENOMEM;
> +#ifdef CONFIG_ARM
> +		if (!PageHighMem(pfn_to_page(PHYS_PFN(rmem->base)))) {
> +			kfree(mem);
> +			return -EINVAL;
> +		}
> +#endif /* CONFIG_ARM */
> +		swiotlb_init_io_tlb_mem(mem, rmem->base, nslabs, false);
> +
> +		rmem->priv = mem;
> +	}
> +
> +#ifdef CONFIG_DEBUG_FS
> +	if (!io_tlb_default_mem->debugfs)
> +		io_tlb_default_mem->debugfs =
> +			debugfs_create_dir("swiotlb", NULL);

At this point it's possible for io_tlb_default_mem to be NULL, leading 
to a splat.

But even then if it's not and we have the situation where debugfs==NULL 
then the debugfs_create_dir() here will cause a subsequent attempt in 
swiotlb_create_debugfs() to fail (directory already exists) leading to 
mem->debugfs being assigned an error value. I suspect the creation of 
the debugfs directory needs to be separated from io_tlb_default_mem 
being set.

Other than that I gave this series a go with our prototype of Arm's 
Confidential Computer Architecture[1] - since the majority of the 
guest's memory is protected from the host the restricted DMA pool allows 
(only) a small area to be shared with the host.

After fixing (well hacking round) the above it all seems to be working 
fine with virtio drivers.

Thanks,

Steve

[1] 
https://www.arm.com/why-arm/architecture/security-features/arm-confidential-compute-architecture


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:30:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:30:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116267.221913 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZuwt-00078Z-PL; Fri, 23 Apr 2021 12:30:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116267.221913; Fri, 23 Apr 2021 12: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 1lZuwt-00078S-M0; Fri, 23 Apr 2021 12:30:19 +0000
Received: by outflank-mailman (input) for mailman id 116267;
 Fri, 23 Apr 2021 12:30:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZuws-00078N-56
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 12:30:18 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2ec9d2ac-5a52-4bb1-bb0a-87df74ff90a7;
 Fri, 23 Apr 2021 12:30:16 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D834EAE58;
 Fri, 23 Apr 2021 12:30: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: 2ec9d2ac-5a52-4bb1-bb0a-87df74ff90a7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619181015; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=s8gxPmkATKSIBIXbUhMi1EgRjNnqEjOCcHpB6u0MUus=;
	b=AgJiTZynF5evAffWMnoVetR8oe+SxcBxhcFnUvVDI1qOC6IYKD6Kc/VlP1a+QL31eLoLhZ
	TggNIV9mnxsvOQxqtSEXUVEN019WZUtAQP/YsROdRQBufQAyXkEu0LYXNp6vjw8jxfA+/v
	RWyCoePINcOwE5PPOOuSeUuqILn5C0Q=
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
To: Sergey Kovalev <valor@list.ru>
Cc: zaytsevgu@gmail.com, xen-devel@lists.xen.org
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
 <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <57478641-ed64-32bd-a577-428a50c880e2@suse.com>
Date: Fri, 23 Apr 2021 14:30:15 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 23.04.2021 12:22, Sergey Kovalev wrote:
> # Abstract
> 
> After `xl save win win.mem` and then `xl restore win.hvm win.mem`
> the Windows 10 VM remain frozen for about a minute. After the
> minute it becomes responsive.
> 
> During the freeze the OS remains semi-responsive: on `Ctrl+Shift+Esc`
> press the wait cursor appears (blue circle indicator).
> 
> This is an intermittent fault been reproduced only twice.
> 
> # Technical notes
> 
> It have been noticed that there were no timer interrupts during
> the freeze.
> 
> zaytsevgu@gmail.com has debugged the received Xen state file and
> noticed that the flag HPET_TN_PERIODIC been set after unfreeze.
> 
> Based on that he provided two Python scripts: one to check the
> value and one to patch it.
> 
> Both "broken" state files we have been detected and patched
> successfully.

"Patched successfully" meaning the guest, when resumed using that
state, did not stall initially?

In any event, if HPET_TN_PERIODIC was set after unfreeze, it was
also set upon saving state. (Or are you suggesting the flag got
"magically" set?) In which case we can't go and clear it behind
the OS'es back. So I suspect if there is a (rare) problem here,
it is likely connected to other parts of the HPET state. Since
you've taken apart saved state, could you supply the full set of
values (ideally multiple ones, if you happen to have them, plus
ones where the problem didn't occur, to allow someone perhaps
spot a pattern)?

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:36:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:36:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116274.221924 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZv2S-0007T7-CE; Fri, 23 Apr 2021 12:36:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116274.221924; Fri, 23 Apr 2021 12: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 1lZv2S-0007T0-99; Fri, 23 Apr 2021 12:36:04 +0000
Received: by outflank-mailman (input) for mailman id 116274;
 Fri, 23 Apr 2021 12:36:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZv2Q-0007Sv-Sl
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 12:36:03 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 729c0ee4-b5fb-412c-a264-9c47c3d5ba39;
 Fri, 23 Apr 2021 12:36: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: 729c0ee4-b5fb-412c-a264-9c47c3d5ba39
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619181361;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=Rfc1denkeZVgxSQhXB4BJUgVfeefJB/UQ8Q+7eKNtNE=;
  b=Px0Ti/Anq/4cfgQqgfFF6ZkU7Q4Pf1QOCSN55ggjtActFy/xSH9JWX0s
   2y/tf013egpPK3j9fVwIwSLDYxSrm+UD3mE4aELvi77ATdQx+20K1itD1
   ewNLiIWk0CuhV+LSzYkzd834na/Ikx/az8/jJWb7c3Xw7eqHg0mj+gsUz
   E=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 8Y1ulFjG6P7RoyBPt9OTBxbZMIz88jgJG+wLykEt2BDn6lY0LNXVmK8mpN1jWffJkDnyNSVGkf
 Zxo+uTuUGfNeSgRbNIvxvKAhfKo5gTvRYoJke5rBf7oAfn55ngMjZUZzHMwnc6d8nsFZ1HXD2x
 3mav5d2v4XZtSczExCUWRiycsKBOLBT5QM7RLqKDDPNCr9sfbHD2wuTqhOyotocKsaYnVm5rKI
 30r/NWtwR2GeutEgvCoYf9k4gcwT5PZTyDH8BMSmn1cGDQMBz6IILvKs4wJ5uV/ovwmjAszTg2
 abk=
X-SBRS: 5.2
X-MesageID: 42271113
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:x0sl/KFZrKi0mKgkpLqFs5HXdLJzesId70hD6mlaY3VuE/Cwvc
 aogfgdyFvIkz4XQn4tgpStP6OHTHPa+/dOkOwsFJ2lWxTrv3btEZF64eLZsl/dMgD36+I178
 ddWodkDtmYNzdHpOLbxCX9LNo62tmA98mT6dv263t2VwllZ+VBwm5Ce2KmO3Z7TgVHGpY1fa
 D0jqArmxOadWkKdcP+P3EZXoH41rr2vaj7ah0LDQNP0njssRqU7tfBfSSw71M1SDVU2444/W
 zEiQDix6mqvv2h0DDd0nLe9Jhas8vaxtxPLsqKjcQeNzP24zzCWK1RH5uYsjgzoPKm9VYtl/
 jBqxotJN5L8H/KcnqrrRaF4XiH7AoT
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42271113"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NEpLnxMYh6/SqAIc5xjHz6Lb8x+hbRsTcec2RoWLhX9Kh0v1Grl1R1IIdEYAEw/N0s4FeI7ocvunqB4YgaOrnYJey5tIsyfgjuR5c62qLnI+ENeEH9FPc6Dwh9YFMWXIsFkC6NgK2qhorASz+JThSvUpTT+2F65PPtc9GgEAMVVQw4WiV1J3VxKsvAAP3rpiLEiccG38aFADKLcTOBdErnnA7oAX5RNIpZz1EqKEEQB3M4Yv4X0II7XwZUXP6GRFl2nBkabqI2zhL8OPkfDN7yN92XehPykkcN6eao2ItobmcUouJTU9a8vt6wk0FU01uaJDml9ZyaqLAblKXdx+cA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cZe+cT31ELMpAI5wRhUxQJ32tZ0HEcPvLlt0pK2KRTk=;
 b=N5u4ZVhyGZzdstP/svaWUWS03zMFSXsIRe8KC3yPb4QuxPgSeJUMY1siZaiqX8pI5h6KYBWAZolo993SOie1uBmAVl4x0DidpIsvyn6i+J87EeSlSdnM+AujxQR3dbcJfn9bcJ3gtYPUMxaPc9xz8ln4Xue5b13HidNLoA3kXx3MxAiDQToBiuOXolvTOBtrOjzqYqmiotzsREzQ2oRpajMM+DtIWABBypIT1/UPY+5HOm+oivY37U255hx8HITwxhtmjciAax8PrDSzrxCFqHKpWrQyiaPw94VgnhB1z7czlNZD+6MWc+9jv7OitiftRDv0s6glvbVEkaMpGHwsSw==
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=cZe+cT31ELMpAI5wRhUxQJ32tZ0HEcPvLlt0pK2KRTk=;
 b=cx7Z5rMnrS2l2Z0XQitr4FSQGPMsb07XjWeb0e4JC/IwwdBoM+dvn4D4HTO+sIrv0ibv5hj33q5x84zeoqE7gl9tTKGznAKJjFg91W8fpo6YSQFGfjQdjNo2kIw6mAJ5CZqrZ35zSESibEcNoIkbwmtXD4cx6D2OrRkjSyUPN1s=
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/oprofile: remove compat accessors usage from backtrace
Date: Fri, 23 Apr 2021 14:35:09 +0200
Message-ID: <20210423123509.9354-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0116.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::32) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 13f503c9-087a-4083-43a3-08d9065458d5
X-MS-TrafficTypeDiagnostic: DM5PR03MB2634:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2634CE87D3FE8B7747EB4A088F459@DM5PR03MB2634.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:1013;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: EXhajx4H6RhcgjPPwqOL4rNgU+J4iEwBfjg90oL8TcGM3EKgUSuiGN/6T31OEhFsVeQxaWxO7Chh9DlXsoKpe6OrlY6nkuadD6GEu+9Ma9BFYNdpS9a3u0B7btdQP0DVSoJymfzMv8VOzreEb9yMtkEEZ5oFs1LcN8IurM6romwRgcsRfiMQZgEC4SjEAv7dOliuCuKKo8oNQaRBiqZTMR8RFtCF3pBwDzCJqyk+JNLQ1T7WNzobaeOEsGFm/E5lbiPEfBA2D6v9nr9Zp2+P77eQScaH3FpF2iRXBh2eRfrgXb7+ljqgNHrCF6uX/7+hfqUaHwWT/qer5x9dRplPlIMlFExee2b+Vpn9c0K00ilDvu9rewoIGdNhy9vsvq1fUw0qT4DHRhhrhdWyVaGPoTa2St7lYOGeXXbOoP2GZSN8OGTOen5RmQW8ChzYU5O1TQAoxO2j4Uh5yl1r1mwJVvc1Rk8XIWPxzRIin9tYa0mOADBipEosJpNlS/4b0U9qB89lExamo0AlGqyPJm3XYvJml4n3m6ibzANkFBItKtfyeBeGMKrfWbgcYX8xJ6qjwHvFcE1JHcWw+kxoIapttQbLuSAs9+SEVI8p1VHutXQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(39860400002)(366004)(346002)(376002)(26005)(316002)(956004)(16526019)(5660300002)(1076003)(6666004)(66556008)(38100700002)(8676002)(186003)(2616005)(2906002)(54906003)(4326008)(36756003)(66476007)(66946007)(6496006)(83380400001)(6916009)(86362001)(6486002)(478600001)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Eob/Ec/UcE3yKh2eaNTKsdnblD38Ptim+iifXwQ?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 13f503c9-087a-4083-43a3-08d9065458d5
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 12:35:58.8988
 (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: 4k3kCSy6j+X/Pb2mlwccQrLqEnc/d61nwW3I94TtNGHgy1jcdYgxVt3ETI67tDqZ4S/QjzTNVNj38qb/g8BRwg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2634
X-OriginatorOrg: citrix.com

Remove the unneeded usage of the compat layer to copy frame pointers
from guest address space. Instead just use raw_copy_from_guest.

Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Just build tested. Note sure I'm missing something, since using the
compat layer here was IMO much more complicated than just using the
raw accessors.
---
 xen/arch/x86/oprofile/backtrace.c | 26 +++-----------------------
 1 file changed, 3 insertions(+), 23 deletions(-)

diff --git a/xen/arch/x86/oprofile/backtrace.c b/xen/arch/x86/oprofile/backtrace.c
index bd5d1b0f6ce..45f7fb65fa2 100644
--- a/xen/arch/x86/oprofile/backtrace.c
+++ b/xen/arch/x86/oprofile/backtrace.c
@@ -20,7 +20,6 @@ struct __packed frame_head {
     unsigned long ret;
 };
 typedef struct frame_head frame_head_t;
-DEFINE_XEN_GUEST_HANDLE(frame_head_t);
 
 struct __packed frame_head_32bit {
     uint32_t ebp;
@@ -43,7 +42,6 @@ dump_hypervisor_backtrace(struct vcpu *vcpu, const struct frame_head *head,
     return head->ebp;
 }
 
-#ifdef CONFIG_COMPAT
 static inline int is_32bit_vcpu(struct vcpu *vcpu)
 {
     if (is_hvm_vcpu(vcpu))
@@ -51,7 +49,6 @@ static inline int is_32bit_vcpu(struct vcpu *vcpu)
     else
         return is_pv_32bit_vcpu(vcpu);
 }
-#endif
 
 static struct frame_head *
 dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
@@ -59,34 +56,17 @@ dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
 {
     frame_head_t bufhead;
 
-#ifdef CONFIG_COMPAT
     if ( is_32bit_vcpu(vcpu) )
     {
-        DEFINE_COMPAT_HANDLE(frame_head32_t);
-        __compat_handle_const_frame_head32_t guest_head =
-            { .c = (unsigned long)head };
         frame_head32_t bufhead32;
 
-        /* Also check accessibility of one struct frame_head beyond */
-        if (!compat_handle_okay(guest_head, 2))
-            return 0;
-        if (__copy_from_compat(&bufhead32, guest_head, 1))
+        if (raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)))
             return 0;
         bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
         bufhead.ret = bufhead32.ret;
     }
-    else
-#endif
-    {
-        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
-            const_guest_handle_from_ptr(head, frame_head_t);
-
-        /* Also check accessibility of one struct frame_head beyond */
-        if (!guest_handle_okay(guest_head, 2))
-            return 0;
-        if (__copy_from_guest(&bufhead, guest_head, 1))
-            return 0;
-    }
+    else if (raw_copy_from_guest(&bufhead, head, sizeof(bufhead)))
+        return 0;
     
     if (!xenoprof_add_trace(vcpu, bufhead.ret, mode))
         return 0;
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:41:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:41:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116279.221936 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZv7n-0008LF-0J; Fri, 23 Apr 2021 12:41:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116279.221936; Fri, 23 Apr 2021 12: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 1lZv7m-0008L8-Tf; Fri, 23 Apr 2021 12:41:34 +0000
Received: by outflank-mailman (input) for mailman id 116279;
 Fri, 23 Apr 2021 12:41:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZv7m-0008L3-5g
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 12:41:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c8e91387-2ff0-456f-9102-d8a6a9ba9337;
 Fri, 23 Apr 2021 12:41:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4FDE2AEE6;
 Fri, 23 Apr 2021 12:41: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: c8e91387-2ff0-456f-9102-d8a6a9ba9337
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619181692; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=BVXqAVlxN1DIDsUMgbfYFCdB+fBZrqicM6ufIbegZZU=;
	b=JeSOKFR/XMYtvEStzDY9K6yBYiJf3US6LS8r3aZRfCFFqOyHAb8pRM6toLBo59FADDK+io
	Xjukt13/nS0/kzJ+hoGjaEow5JuUUcLwAGVq/idwo8km+FOea8v3vnwIaNTk8FcVVVRsvK
	J/LCvq/qWDXnZFl0lrwZm4EdDQ8rmE8=
Subject: Re: [PATCH] x86/cpuid: do not expand max leaves on restore
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <20210423105408.7265-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <91a32d56-c0cd-f883-eee5-de2691417703@suse.com>
Date: Fri, 23 Apr 2021 14:41:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210423105408.7265-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 23.04.2021 12:54, Roger Pau Monne wrote:
> When restoring limit the maximum leaves to the ones supported by Xen
> 4.13 in order to not expand the maximum leaf a guests sees. Note this
> is unlikely to cause real issues.

Why 4.13 (and not 4.12) here when ...

> Guests restored from Xen versions 4.13 or greater will contain CPUID
> data on the stream that will override the values set by
> xc_cpuid_apply_policy.

... 4.13 already communicates the values?

> --- a/tools/libs/guest/xg_cpuid_x86.c
> +++ b/tools/libs/guest/xg_cpuid_x86.c
> @@ -510,6 +510,11 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
>          {
>              p->feat.mpx = test_bit(X86_FEATURE_MPX, host_featureset);
>          }
> +
> +        /* Clamp maximum leaves to the supported ones on 4.13. */

Same aspect here then. (While not being a native speaker, it
would still seem to me that flipping "supported" and "ones"
would read slightly more clearly.)

> +        p->basic.max_leaf = min(p->basic.max_leaf, 0xdu);
> +        p->feat.max_subleaf = min(p->feat.max_subleaf, 1u);
> +        p->extd.max_leaf = min(p->extd.max_leaf, 0x1cu);
>      }

With this I think the comment ahead of the enclosing if() wants
either amending or moving immediately inside the if()'s body.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:48:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:48:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116284.221949 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvE1-0000Gh-On; Fri, 23 Apr 2021 12:48:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116284.221949; Fri, 23 Apr 2021 12:48: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 1lZvE1-0000GR-LP; Fri, 23 Apr 2021 12:48:01 +0000
Received: by outflank-mailman (input) for mailman id 116284;
 Fri, 23 Apr 2021 12:48:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZvE0-0000GM-SQ
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 12:48:00 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 67d24d29-3bc0-4a4d-adb5-729a961451c1;
 Fri, 23 Apr 2021 12: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: 67d24d29-3bc0-4a4d-adb5-729a961451c1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619182079;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=bRRtqnyqHZTFem9dsVkpkXKTPO1fe+7Ew23UNSxn3Ng=;
  b=L/6u3BlYuXxc4TfhZ4rAuWg2+zroMwmbmltCVRkwR243dovM9g4rc+p6
   WFozufvkxaMd5u6As6xUY8u/hJz664T3hqYfMyWhAU7WcoSmG6cfh0Wt+
   N4evxpqvuj2VZOIzr9ULqNBynKW2F9m6R4rzq7/g8f3+J3T9MQ2jyWb2Y
   M=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: PWi+Cxe6bMidLJ3oecWxtvYAtDHp5VUmwlJKYRZ1orekFE5WKq3Mx16ybfcSPaeMxH/e1SjjlW
 sWCvcHZ1CXEF9jhy8heXhleijZha6EmHIyqnxc8xu5UMlinpdVrboonZAboEbdIr6Qau7u5KqG
 /LUTHOz8oW1aYkCgiTujJcEv+iKu+BUUv8TR4RwSIYydmKYEvVIjTgkO3pO05tDY6XJFJZ4xxR
 iVIT99LobtGG+GGLxiiBCUmKTCPB73w8MaSa404TcWzN1c5LVWBM7+qol67gYlR+30MPqm/Ifu
 TU8=
X-SBRS: 5.2
X-MesageID: 42654043
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Cy95hq3pBmR8yDQqBVDiEgqjBWByeYIsi2QD101hICF9WtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7LE/035Qd2+ksFJ2lWxTrv3btEZF64eLZslndMgDd1soY76
 dvdKBiFMb9ZGIRse/W6BS1euxO/PCp66at7N2x815IbSVHL55t9B14DAHzKDwSeCBjCYAiHJ
 SRouprzgDQGkg/VciwCnkbU+WrnbSi+K7OWhIaGwUhrDCHkDLA0tXHOiKF1RQTWS4n+8ZBzU
 H5lWXCh5mLgrWA5TL3k0TS6JlXn9WJ8Ko/OOW8zvI7Bx+ppgKhZIFKU6CPsjYvsIiUmSoXue
 iJmTgMFYBe7G7QY3GUrHLWqnbd+Qdr0VDO4xu5hmbuusPwTj5SMbs+uatpNiH3xmBlmfMU6t
 Mt40up86B5IDmFoQHGo//PbB1unlrcmwtYrccjy0ZxfKFbVKVctuUkjSVoOaZFJg3WwqY9Ht
 JjCcnNjcwmC2+yXjTism5jzMfEZAVLIj62BkwLusmi2zNLhnxOz0wB2MwFnnsbnahNM6V52w
 ==
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42654043"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XFZhsILfsoWFx1472h5myNqXYNBx603ujaPIZKgdrRw/YVqqaR+B6BEBxSzdo8b7QMi16BvKyMZn9hzysqDd7aEhu/qkHmOKK4s7kkoZpiRvSii6H30BFHZIDl2YNcCkRoMcFsBec+Vtk5FCk2yP9kt3xNjhr26TQYMbzf+GOSVp9p8dBZn/9oOYM241eMM8gop59rCgUGxo6hED8jyIHBeK/ZiXVDjuAr7GfmkXflLtUhb2PXeMFl7vdAXAZROLNJLzHPq+kxS7JfDplZT2+QF6+Z0YHkRbXe3ZiI5kCPRQuTj8K1qLJYD9Tmkgpffs+BlUOjBVPupMpQJWweQmvw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Jnq4QWgQAnfYyTiwX6AawNNC98MznjLUDFEqXz3Se+Y=;
 b=SpHcibr88fu0sEyp8ev1HR0fnx68pir7TCwXtqwzRDklhl8OEZO4OX2cYBXZ20Ucp9cJRAM7CWzIIHIcdvaa0E5uTBTOdj9YL6pMXFUxjnVt9/RC0mTl6a0ZJzRJtKbMF2VtJe3ZpmFPnIFqyfMFeR+ZjF3E9On6AoNmUrxttyyHV8wCHQMFYFlgYwG2rJBrDt8HSJhCYOgDV1N1WnwUe2ArEACPwF0kLg7fiLgy7jAz+aHb5AhK+pDTvFWnWdGAgcrDd5eAF8qu8udNRtXurgSqKu0ixACB77Omo9+7mqYuHan5dJ2tBhtNilZd+t1Tei9PQ02JIfhM6gSE7m/IeA==
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=Jnq4QWgQAnfYyTiwX6AawNNC98MznjLUDFEqXz3Se+Y=;
 b=CCGtCe0WdYIy+b6KQoIXFyAA0E2tGOJA7Cv3fA4xfpd1Z5U4/jiavXl/Op/pxHjU3956RWh5hOKVwrfCBu+K4MGfH5MvRc9jnFrNg1/aDPJ0Arhbd6y0kH6L4z7YWVfj6QFgLCaYb7EVK5JXYP+4HvT9bfGPJwHZfIRBX5chGUE=
Date: Fri, 23 Apr 2021 14:47:53 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH] x86/cpuid: do not expand max leaves on restore
Message-ID: <YILB+fvGT6QPnAhC@Air-de-Roger>
References: <20210423105408.7265-1-roger.pau@citrix.com>
 <91a32d56-c0cd-f883-eee5-de2691417703@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <91a32d56-c0cd-f883-eee5-de2691417703@suse.com>
X-ClientProxiedBy: PR2P264CA0010.FRAP264.PROD.OUTLOOK.COM (2603:10a6:101::22)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 9ebd4d89-a6cd-4c8c-28cb-08d90656051f
X-MS-TrafficTypeDiagnostic: DM6PR03MB4474:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB447414B15196E85288D6AB078F459@DM6PR03MB4474.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: p95nZaEManErrbssf+Xyv/6dyj3sm8Nq0W3SN9ElO4EjWKSQH1fo6j+/JJRzBjq5NfHk1mw30Lpscn8jK8J0kIMjHmn7le8n0PDXCS5OuWg/xPniendvLbONdoU+ij7EBAfixKiD1ywv6TSoNOBV1yTNSDXLC4ETHmkPpYwuFcNOP5xCdGO5T9enIM56nVjiNEo16OBf18ojyk4iQlcRD19LRl0BN3WESOFRtIYt2K93lMBi4ZTcEj4eC1j4P6rBgswFEu1Rk3X61x6iTxOV0GXEQ+uR6vHPZQ1IFkls6JUtMYXUocjlckHfEeztz/WAs1fvypl8TgXZRa0n9qJDQWzMMoejE6w2ejlpZEm+dXPLOl9mZ/vuQFPQLDfL4K8Gj7W2zAutgB1B5FH4p7LeEWv0uNQrodeI8OYTy6Jm1iCDwsj17Oy395SDAeH9UWsnATzjFERO0BSo8XT2ZcXwHVIQh9FhEJU5nW1kPQQ+/Ttq1Q7HBDvO1RFMGZLa2vq/d1W1pMa9T09ko0EkatzE8rb9s1CupQdBhgylhNi86XnfxUHoqepSIfHK2devKMBkaWbsaG8Zs+K69rdGcP6w0IRjjoFHyeHW1ZbApHURJlT+B1DxnROOgtb6THymKXFTBcG91Ps4/WQGlePlyqugqQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(39860400002)(376002)(366004)(346002)(136003)(396003)(9686003)(66476007)(66556008)(54906003)(4326008)(83380400001)(33716001)(85182001)(6496006)(6486002)(66946007)(26005)(5660300002)(6666004)(4744005)(956004)(16526019)(316002)(478600001)(86362001)(6916009)(2906002)(186003)(53546011)(8936002)(38100700002)(8676002)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 9ebd4d89-a6cd-4c8c-28cb-08d90656051f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 12:47:57.3414
 (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: w1VbBLIWT8pYQbsYFhVz8Wkz40dpphkR7dgmzvuejd2g/qeNlwfHiH6cFOQnHYAMrSfLCKAdDfZvrP2fTzRS7w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4474
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 02:41:32PM +0200, Jan Beulich wrote:
> On 23.04.2021 12:54, Roger Pau Monne wrote:
> > When restoring limit the maximum leaves to the ones supported by Xen
> > 4.13 in order to not expand the maximum leaf a guests sees. Note this
> > is unlikely to cause real issues.
> 
> Why 4.13 (and not 4.12) here when ...
> 
> > Guests restored from Xen versions 4.13 or greater will contain CPUID
> > data on the stream that will override the values set by
> > xc_cpuid_apply_policy.
> 
> ... 4.13 already communicates the values?

Urg, yes, my bad. This should have been limited to the max leaves
supported by 4.12, not 4.13.

Let me send a new version also incorporating the feedback from below.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:51:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:51:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116293.221960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvH4-00017W-C2; Fri, 23 Apr 2021 12:51:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116293.221960; Fri, 23 Apr 2021 12: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 1lZvH4-00017P-8x; Fri, 23 Apr 2021 12:51:10 +0000
Received: by outflank-mailman (input) for mailman id 116293;
 Fri, 23 Apr 2021 12:51: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 1lZvH3-00017H-7C; Fri, 23 Apr 2021 12:51: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 1lZvH2-0004ug-W2; Fri, 23 Apr 2021 12:51: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 1lZvH2-0000et-KO; Fri, 23 Apr 2021 12:51:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZvH2-0001e8-Jd; Fri, 23 Apr 2021 12:51:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=hl7Rp3pQz7byh/zr4FfjLGpxsWNlWm1YV3OJ6FOKq6o=; b=x0CPJQg7sj//1QqzdyJ3KhLucg
	JorJglSqs6WkZtjYPdQ+VG/Rnu866eJvsAs4tRydxmIHXE1R8GiNOG8MU5WdTXQZiuC5nU+A6kGB2
	e4xdkH0gXDQkq+iyeejx7kWil0Er7SzBSbk1Ay5bkRqbNYDYtLCSxC0lNTqfDzQczFUg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161395-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161395: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-vhd: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-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-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=18a3c5f7abfdf97f88536d35338ebbee119c355c
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 12:51:08 +0000

flight 161395 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161395/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-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                18a3c5f7abfdf97f88536d35338ebbee119c355c
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  265 days
Failing since        152366  2020-08-01 20:49:34 Z  264 days  444 attempts
Testing same since   161395  2021-04-23 01:59:00 Z    0 days    1 attempts

------------------------------------------------------------
5355 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1329530 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:52:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:52:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116298.221976 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvHr-0001Dq-Ne; Fri, 23 Apr 2021 12:51:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116298.221976; Fri, 23 Apr 2021 12:51:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvHr-0001Dj-Ji; Fri, 23 Apr 2021 12:51:59 +0000
Received: by outflank-mailman (input) for mailman id 116298;
 Fri, 23 Apr 2021 12:51:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Q/M9=JU=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZvHp-0001DY-Mh
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 12:51:57 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 72079be5-a7d2-4048-a0ff-6ca37b738396;
 Fri, 23 Apr 2021 12:51: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: 72079be5-a7d2-4048-a0ff-6ca37b738396
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619182316;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=2Le3wG6gtk9U+b2oT7Z1lfVxhrgWRrGoAU6EmW7bflM=;
  b=esC0kb06iHOYRDDh/+3OSD2ZQdKRtkqTNGgnVYhijFxNCrRCsIarrAP9
   EfUGHvma3NtvCqOcJWo5sUVsBuijy4OfxFqgnX2CwqOWR6u/sEBK64Gxn
   Qdh0Nk6zTzFNQjBy7ObWfGgb5oDjovKADmECj3ggC/QLquZcJpQ7VyWPd
   8=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Fj0nkkCQL4X7OgRRwCX1PSMusZAudidZqb/rSt1uR78rTGBHvyP3Wa86vkweac2AvDiGXQfcLh
 gCThzbz4EdH5haS6g197Vovlk/GsJ8MXuM+v4EBeoUWG1iU7N28ptYBAE3mzZz3t56NmF61tyJ
 blKz3jewDSAKn+RFcR4OCIQLo5YuktIAQ3pCKDOSfd+MyEZCycRzDIAzaHNDgd7hLRR33KuD3t
 +tkwrjft09vKU+JMS9n5MyCrvzHHNsADwbvRLXtnOsPOjPFH9l8dRCQvQZOwOy/RGJZqHzyI8l
 P+Q=
X-SBRS: 5.2
X-MesageID: 43767414
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:g3SPianGA9JvbsYjDJOIjcyoUBPpDfP+imdD5ilNYBxZY6Wkvu
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKMaVI3DYCDNvmy0IIZ+qbbz2jGIIVybysdx94
 dFN5J/Btr5EERgga/BijWQPt48zLC8n5yAqvzZyx5WIz1CT4FFw0NHBh2AEktwLTM2YKYRMJ
 aH/MJIq36BVB0sH6eGL0IIVeTCuNHH/aiOCXI7LiUq9RWUineQ4KP6eiLy4j4lTzhNzb0+mF
 K18TDR26PLiZCG4y6Z7UD/xdB8mNztytxMbfb89/Q9G3HXpSuDIKhkU72GljgprO+o80ZCqq
 ixnz4Qe/5dxlmUUmapoQb8+wSI6kdQ11bSjWW2rFGmgcvlSCk0A8BM7LgpDCfx2g4bk/xXlI
 dotljp0KZ/PFf7swnWo+XsbVVMkHG5pHIz+NRj9EB3YM8lR5J66bAE8Fg9KuZnIAvKrLoJPc
 NJF8/m6PNfYTqhHgrkl1gq+tCqU3gpdy32O3Qqi4iQ2zhSqnhz01EV8swZhmsB75IwUfB/lp
 z5Dpg=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="43767414"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=W+PzE2+N7O/eWzyso6PVUIxH512rifcJ5Ywac7HlUH9yJ805++JyPwRK+Jn8X1iKQo3TW/gSuXtdjP3TC7T+pXxUAn++nFB3WHz0b8gGcPxG96rVgzr3cPLGculDB/ljt5c0DPUB9maZilUTQXGQX/vrMsx/dNiFD0CWgGnVyRK/UOOlyHuwP6+KW51CDmsCL27zmPcP8qR+xl5G8y1HjjOlIj5k8a93qGcpcoj31YC486A2WyVL9v65kqOTjaEQbyES1I9le4kmvzbwc8UUUXGHjBKeqoWSoenvracCvr008rXJL1REMOMVyBF6Q9JBwTymUp6QV6znOxDud3SSyQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2Le3wG6gtk9U+b2oT7Z1lfVxhrgWRrGoAU6EmW7bflM=;
 b=Tin7VjeOw/5C5EaIoskgkzV5ytZ0Vy84BzwNH1L1yHAKVeW6Atl20gHi+k9QswCLtfp/apKCPGxYhbLJpZseA/e1hA9/fwg5M6LYfEyP33AAXGjTn0sSM6tj3rdlItuMPK9Xkh0spVO++t9YtaC8sPT4v49IVFxm6nMKP4r2C+5miyuYS1goZOA6ZEAz9EEnsnbHow/kNJnzUkkW4SFjkGhqPAody7pZyI/zMBacLIjN/379q+5xVBvAP9LE/PY0pjABSyohvCFF0P37fMElkjQgRz0ng0f6Dv3CRdJxnk+39z4PFJi27NBxM0u9duko9CWpvm9rj4e+Lmz6aOffKw==
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=2Le3wG6gtk9U+b2oT7Z1lfVxhrgWRrGoAU6EmW7bflM=;
 b=BkSX/qEySQ2+mii1B+GliQt4Zm7zu3emTpMSN+0Ql+BxzUSEPLtAH4B1fy+aYybESrMJUAweIBPKpgalEF/eEzWsi/QnqIlXGUEuFOooiZXGzePYaWnqcggbIu8ZzFuRn74pW9w2BaBbw4a4psrLnegPiHgkDLQZkxwXRn3VivA=
Subject: Re: [PATCH] x86/oprofile: remove compat accessors usage from
 backtrace
To: Roger Pau Monne <roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
CC: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>
References: <20210423123509.9354-1-roger.pau@citrix.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <148bd895-17bc-188d-e2e6-c1604400c5a3@citrix.com>
Date: Fri, 23 Apr 2021 13:51:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210423123509.9354-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0070.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1::34) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6382d7a7-0fa4-4f1b-a543-08d9065691c3
X-MS-TrafficTypeDiagnostic: BYAPR03MB3495:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB349599F1607B84723FE3F7AEBA459@BYAPR03MB3495.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:534;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: g8vQpcJ2Mdeulv1FlcJ7HLy8udCD1Ymr11B/aYYjCzcsOz6f4VfNzGrT+9+oPODYk0SG0fTfuH1JcoaLQeNmGu9J7IAsU838MWmE/Bdx1nmEoox5C5UbiztWf0hr9Y8EnaZJ1fC8OEujawUrR6Rg024txZbHl9dBMv3/KOQMXkrYSuEpJcdcVDmqCPJFsT3VqOsLQCvk9t8HqVBqFt/MGoxcRe7TZDlIlFThzjSCpdyotOD2r4hy6KSWMIYarebKg039P+xXgri9CzPpMtZwUF0+/DDIQudgQFzj6z5n3QX0uLlSC8W6t4XnOaRDMmvxOUIwp+jIaSF9HVM0XPwcDlYpekG8/dnaW/cvz1DkdCfai9MjR6+nMBnTaSY8RsjG0oa1XW1luyLpJI8NDEdr4bGTyDv0vhGn+tNz1EvnyEGRLkFnc0kRVc/2i4G0IeCAP2P5r3dXcpt90R1zO627/0jQn3orj3W551cwErTTSrAGdHPggoJrV6S/ccrA4tQIPb4MRLQxcmGwdCY1Rtz6+12MwcvflyunU27FurLvmwEpTVgtef3VGoTKWjbLA9QHCkLlESlCkOBZ8Wy+2UO9m3VbPXARXegGL0T/D3JY10eOgthE0+r8qOo2MLGzO1LL78peQyRgkRXXTPp6E1bef8GQsnbBHEEFtuRaK9hlXIg+xUf2+SJqNxuVFO7WMVYh
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(346002)(39860400002)(136003)(376002)(26005)(16576012)(66556008)(66946007)(8676002)(31686004)(956004)(31696002)(66476007)(16526019)(6666004)(54906003)(8936002)(53546011)(2616005)(86362001)(186003)(6486002)(2906002)(316002)(5660300002)(36756003)(478600001)(4326008)(4744005)(83380400001)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 6382d7a7-0fa4-4f1b-a543-08d9065691c3
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 12:51:53.6555
 (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: NBrulGa5Qa0z9KWIUrY2b7RiCJkTZJcy+lFd3Gsz/eD5n6OyTbYW8LmSeWJI4xnkYy2Hs1c2xnVAkNIO0LHe4DBEsJFBwt68EPBX8JP2du0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3495
X-OriginatorOrg: citrix.com

On 23/04/2021 13:35, Roger Pau Monne wrote:
> Remove the unneeded usage of the compat layer to copy frame pointers
> from guest address space. Instead just use raw_copy_from_guest.
>
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> Just build tested. Note sure I'm missing something, since using the
> compat layer here was IMO much more complicated than just using the
> raw accessors.

Thankyou, and yes - I agree.  The logic was unnecessarily complicated.

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Needs a fixes tag, but can be sorted on commit.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:53:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:53:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116304.221988 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvJ8-0001OT-5j; Fri, 23 Apr 2021 12:53:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116304.221988; Fri, 23 Apr 2021 12: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 1lZvJ8-0001OM-27; Fri, 23 Apr 2021 12:53:18 +0000
Received: by outflank-mailman (input) for mailman id 116304;
 Fri, 23 Apr 2021 12:53:17 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZvJ7-0001OG-54
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 12:53:17 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id aba5f916-d7af-4dcb-9674-7c6fda0182d2;
 Fri, 23 Apr 2021 12:53:15 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CC86FB1B1;
 Fri, 23 Apr 2021 12: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: aba5f916-d7af-4dcb-9674-7c6fda0182d2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619182394; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=OH1ib3JmgY4rmD88rHAp/fAvcQqWqkmqvTRWo8WAEiE=;
	b=WZq/sSibEFlVgkk+XF4pq/IfTzj3KPe0icbBVZazaxovx2P/SXoAB062E5rCUxJeV7Z3tk
	fpsMK3nO98a4Gw1U9Se4zmVDdpTTfoQA8dFvO3zaBkyz9/u3ZBgMZO3CV6qSZhcpYHk0QH
	0k7LPeEhNK1FI9dB65PuE73W2r0fiRA=
Subject: Re: [PATCH] x86/oprofile: remove compat accessors usage from
 backtrace
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: <20210423123509.9354-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7d77cd67-5866-9d58-b2d0-b8d28b827084@suse.com>
Date: Fri, 23 Apr 2021 14:53:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210423123509.9354-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 14:35, Roger Pau Monne wrote:
> Remove the unneeded usage of the compat layer to copy frame pointers
> from guest address space. Instead just use raw_copy_from_guest.
> 
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> Just build tested. Note sure I'm missing something, since using the
> compat layer here was IMO much more complicated than just using the
> raw accessors.

The main reason, I suppose, was that raw_copy_*() aren't supposed to
be used directly.

> @@ -59,34 +56,17 @@ dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
>  {
>      frame_head_t bufhead;
>  
> -#ifdef CONFIG_COMPAT
>      if ( is_32bit_vcpu(vcpu) )
>      {
> -        DEFINE_COMPAT_HANDLE(frame_head32_t);
> -        __compat_handle_const_frame_head32_t guest_head =
> -            { .c = (unsigned long)head };

You're losing the truncation to 32 bits here.

>          frame_head32_t bufhead32;
>  
> -        /* Also check accessibility of one struct frame_head beyond */
> -        if (!compat_handle_okay(guest_head, 2))
> -            return 0;

If you intentionally remove this and ...

> -        if (__copy_from_compat(&bufhead32, guest_head, 1))
> +        if (raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)))
>              return 0;
>          bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
>          bufhead.ret = bufhead32.ret;
>      }
> -    else
> -#endif
> -    {
> -        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
> -            const_guest_handle_from_ptr(head, frame_head_t);
> -
> -        /* Also check accessibility of one struct frame_head beyond */
> -        if (!guest_handle_okay(guest_head, 2))
> -            return 0;

... this, then you should justify why these aren't needed anymore
(or maybe were never really needed). They've been put there for a
purpose, I'm sure, even if I'm unclear about what one it was/is.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:54:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:54:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116310.222000 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvK0-0001VN-Fj; Fri, 23 Apr 2021 12:54:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116310.222000; Fri, 23 Apr 2021 12:54:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvK0-0001VG-CP; Fri, 23 Apr 2021 12:54:12 +0000
Received: by outflank-mailman (input) for mailman id 116310;
 Fri, 23 Apr 2021 12:54:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZvJz-0001VA-92
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 12:54:11 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4dfa893e-bab0-4199-b3b4-e9abfc6472d5;
 Fri, 23 Apr 2021 12:54:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AB567AF49;
 Fri, 23 Apr 2021 12:54: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: 4dfa893e-bab0-4199-b3b4-e9abfc6472d5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619182449; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=tzspcMHk3swWJcK1dZoDy35sP+1K7F1C2+/JWgbylxA=;
	b=JhsNAmsS++WbiMQ4IoVTjz3uAb3Siy/xwhhdmyHYhhNQ2nz6PJdWlT6cHZXmf68w2P/VS5
	R16zcXg+TVeNz5QF02giawWCsqrdV42vlQkWDNzK18+1R9vLp4k6XpdP/eYw5b0T/ij72/
	QKgL3bSgvid8l/i8xAZOHbiHFO4L3zo=
Subject: Re: [PATCH] x86/oprofile: remove compat accessors usage from
 backtrace
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Roger Pau Monne <roger.pau@citrix.com>
References: <20210423123509.9354-1-roger.pau@citrix.com>
 <148bd895-17bc-188d-e2e6-c1604400c5a3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ea669904-a7f4-fdc7-80c0-6a88d61e655e@suse.com>
Date: Fri, 23 Apr 2021 14:54:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <148bd895-17bc-188d-e2e6-c1604400c5a3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 14:51, Andrew Cooper wrote:
> On 23/04/2021 13:35, Roger Pau Monne wrote:
>> Remove the unneeded usage of the compat layer to copy frame pointers
>> from guest address space. Instead just use raw_copy_from_guest.
>>
>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>> ---
>> Just build tested. Note sure I'm missing something, since using the
>> compat layer here was IMO much more complicated than just using the
>> raw accessors.
> 
> Thankyou, and yes - I agree.  The logic was unnecessarily complicated.
> 
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
> 
> Needs a fixes tag, but can be sorted on commit.

Fixes what?

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 12:55:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 12:55:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116315.222012 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvLT-0001nq-Qo; Fri, 23 Apr 2021 12:55:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116315.222012; Fri, 23 Apr 2021 12:55: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 1lZvLT-0001ni-Nm; Fri, 23 Apr 2021 12:55:43 +0000
Received: by outflank-mailman (input) for mailman id 116315;
 Fri, 23 Apr 2021 12:55:41 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=YHlh=JU=list.ru=valor@srs-us1.protection.inumbo.net>)
 id 1lZvLR-0001nI-4f
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 12:55:41 +0000
Received: from smtp38.i.mail.ru (unknown [94.100.177.98])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7f8b6452-9177-4b23-af37-34ad591240bf;
 Fri, 23 Apr 2021 12:55:38 +0000 (UTC)
Received: by smtp38.i.mail.ru with esmtpa (envelope-from <valor@list.ru>)
 id 1lZvLN-0006JA-0I; Fri, 23 Apr 2021 15:55:37 +0300
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7f8b6452-9177-4b23-af37-34ad591240bf
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=list.ru; s=mail3;
	h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:References:Cc:To:Subject:From:Subject:Content-Type:Content-Transfer-Encoding:To:Cc; bh=2ZCelCpoAhDVLvnvrVQAwERn99uFxR8hugb7AMaAT/Y=;
	b=DeOJffhHtczamzy400Q+zQRXzB5QrNQWE1t4BVfc9u/r3tHHx0SdHDvobHFsAjMzUQve8HS9oq2jHUg2KHgWGWYrYYT6lQ9vHpulA5ER4ZhJDfVgXRE5Pq4jR6BxFm93ZfTu2O5K7HlniiLkd3+MyH2t5ls41A0tQW5BdHVYaZ8=;
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
To: Jan Beulich <jbeulich@suse.com>
Cc: zaytsevgu@gmail.com, xen-devel@lists.xen.org
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
 <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
 <57478641-ed64-32bd-a577-428a50c880e2@suse.com>
From: Sergey Kovalev <valor@list.ru>
Message-ID: <33f08c57-08f7-b6c3-02ed-2b66c35665f2@list.ru>
Date: Fri, 23 Apr 2021 15:55:35 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <57478641-ed64-32bd-a577-428a50c880e2@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: ru-RU
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp38.i.mail.ru; auth=pass smtp.auth=valor@list.ru smtp.mailfrom=valor@list.ru
X-7564579A: B8F34718100C35BD
X-77F55803: 4F1203BC0FB41BD9203E2ABA940B7548DB5D504FB17EC32432A3176CEA2677EC182A05F53808504085E95345EB464DA24C95F89A687782216D5A5305607233B230D6E911F57BC8C2
X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE76574C3D62D66A535EA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F7900637560334CFC131571A8638F802B75D45FF914D58D5BE9E6BC1A93B80C6DEB9DEE97C6FB206A91F05B2AF1BC9211A70670BEC21858D9C56A98EE8578C74B6F99271D2E47CDBA5A96583C09775C1D3CA48CF90D92131081DE748117882F4460429724CE54428C33FAD30A8DF7F3B2552694AC26CFBAC0749D213D2E47CDBA5A9658378DA827A17800CE74796267E12EBBF229FA2833FD35BB23DF004C90652538430302FCEF25BFAB3454AD6D5ED66289B5278DA827A17800CE7B4476AA2A0681E71D32BA5DBAC0009BE395957E7521B51C20BC6067A898B09E4090A508E0FED6299176DF2183F8FC7C06386F4032A53F176CD04E86FAF290E2D7E9C4E3C761E06A71DD303D21008E29813377AFFFEAFD269A417C69337E82CC2E827F84554CEF50127C277FBC8AE2E8BA83251EDC214901ED5E8D9A59859A8B682BBBAF5DF00056E089D37D7C0E48F6C5571747095F342E88FB05168BE4CE3AF
X-C1DE0DAB: 0D63561A33F958A5D639FBA1762BDC75D853ABC0275EC68A5FA3B338B835E598D59269BC5F550898D99A6476B3ADF6B47008B74DF8BB9EF7333BD3B22AA88B938A852937E12ACA751098AAFFB0A1231D8E8E86DC7131B365E7726E8460B7C23C
X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D341C998A3771F04153765BDB5EB6DF8C6D65D29333895DC1D97DAA1B127B531C49DB7B74C6134BAD091D7E09C32AA3244CEB0A499CBA5209151CAD959AE4670DD581560E2432555DBBFACE5A9C96DEB163
X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojMA4lh0BuVjOIVEvxDfWrxA==
X-Mailru-Sender: 6C3E74F07C41AE94CB3BE32A1891474640BFCDF00F37DFA7C292F3EF877376C1A65DDDB4BCE16B06E54CE59283E19BE8E66B5C1DBFD5D09DD72DCFCE6FA85F85A74E2CAFD6E5C6FC67EA787935ED9F1B
X-Mras: Ok

23.04.2021 15:30, Jan Beulich пишет:

 > "Patched successfully" meaning the guest, when resumed using that
 > state, did not stall initially?

Yes.

 > In any event, if HPET_TN_PERIODIC was set after unfreeze, it was
 > also set upon saving state. (Or are you suggesting the flag got
 > "magically" set?)
I understand that it should be OS related. Though I don't understand
how to prevent similar issues in future.

 > Since
 > you've taken apart saved state, could you supply the full set of
 > values (ideally multiple ones, if you happen to have them, plus
 > ones where the problem didn't occur, to allow someone perhaps
 > spot a pattern)?
I could provide a xen state filed received with `xl save`.
Would it be help-full? Where to store the file?

-- 
With best regards,
Sergey Kovalev


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:12:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:12:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116324.222024 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvbf-0003gf-CH; Fri, 23 Apr 2021 13:12:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116324.222024; Fri, 23 Apr 2021 13: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 1lZvbf-0003gY-7c; Fri, 23 Apr 2021 13:12:27 +0000
Received: by outflank-mailman (input) for mailman id 116324;
 Fri, 23 Apr 2021 13:10:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AfSa=JU=gmail.com=zaytsevgu@srs-us1.protection.inumbo.net>)
 id 1lZvZo-0003fL-QL
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 13:10:32 +0000
Received: from mail-lf1-x136.google.com (unknown [2a00:1450:4864:20::136])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a2761864-c43b-44c2-81a7-4d828b693ec7;
 Fri, 23 Apr 2021 13:10:31 +0000 (UTC)
Received: by mail-lf1-x136.google.com with SMTP id j18so77507396lfg.5
 for <xen-devel@lists.xen.org>; Fri, 23 Apr 2021 06:10: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: a2761864-c43b-44c2-81a7-4d828b693ec7
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=qim/xd+dyVhY6p+nuOeryKb6VLdsnTW9Mf7s5wO5EIg=;
        b=bRALVV6R3OiQ9uPNW21emkIGSScr/6WMoMa/5PNAwUBsG6PZGf2AEAQr8OABvenIm6
         WF/Hv0gt/aYi1A69Xz/BT2SzudlZmIAFuwKHqM82QPhYLB8bR6vLcv482UPXdrfVa14F
         cGWPYj2lLSA9PPqdVStIK9R9MrRcOWrm8UEpuXEy+vauvRe90olZy3+jSFRWyy6cxkes
         dHPBj1ToA+LCdH2vWLQ+/cTHFJ8jRxlgFZHrTOcBTYkk6fbMS4RYOn554T5U5e5+OzP7
         OCN1gxP9gOk1Lt1zZ4IBPTZs6pQrNj5+m9g9fbp2436exSfhs/Bu16LDqKKJubrvm5Ho
         MKeg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=qim/xd+dyVhY6p+nuOeryKb6VLdsnTW9Mf7s5wO5EIg=;
        b=Cc6rKZ+MfQqG5yMgoFkR3OlMWwNEynU4I7GdPKvy65fwtppsojXP5NujWfe1icFbRt
         EqmuQDsY5j6ALsN8hmEZKcr+2a2HpaG43o+/ORF2c7pIYySddXyzfFqWiKEDCY1VIb7i
         7bUfRrScpP1xIPKlg8WdVhK80aBLl2Xvk+UL7EAWzqpkUd2d1m3SJVwP47a+/Jfyab65
         UlRiQU+9KXZKEQAVBs2ld1XFfaSRNXCHdf9ya45U26uuLtMV+aiYxnv0zy0fAnnj/PqZ
         bBd13qDA23IsVZ1vXE1topawpfZ4SRmMebnQFf7I3cQkUurk8h3ftGoiXjrP1KQ/yO85
         pjHw==
X-Gm-Message-State: AOAM530oSo3QgRRF+oJv5Qjm5QpKCAKDI6P0YxCvApW3ecEzRPzR4+I6
	5sMSghow7FnMowoNaC3h6kcXBjC8QL4/fwSpF+c=
X-Google-Smtp-Source: ABdhPJyPuNlr9/u6dFmY6X6aZEz26DXwqmCl1cRQjWQRIPf9NB4r3e1f8VD29BzoKNiPr+QAiCrKaDCL+pXT66i3leU=
X-Received: by 2002:a05:6512:108a:: with SMTP id j10mr2731208lfg.559.1619183430436;
 Fri, 23 Apr 2021 06:10:30 -0700 (PDT)
MIME-Version: 1.0
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru> <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
 <57478641-ed64-32bd-a577-428a50c880e2@suse.com> <33f08c57-08f7-b6c3-02ed-2b66c35665f2@list.ru>
In-Reply-To: <33f08c57-08f7-b6c3-02ed-2b66c35665f2@list.ru>
From: =?UTF-8?B?0JPQtdC+0YDQs9C40Lkg0JfQsNC50YbQtdCy?= <zaytsevgu@gmail.com>
Date: Fri, 23 Apr 2021 16:10:19 +0300
Message-ID: <CADyHojEFuM8mrdyBpQCO+_OJsijfi6nR5YjbHxE3dkTqbAq23Q@mail.gmail.com>
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
To: Sergey Kovalev <valor@list.ru>
Cc: Jan Beulich <jbeulich@suse.com>, xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="000000000000328bd105c0a3857e"

--000000000000328bd105c0a3857e
Content-Type: text/plain; charset="UTF-8"

>
> Since
> you've taken apart saved state, could you supply the full set of
> values (ideally multiple ones, if you happen to have them, plus
> ones where the problem didn't occur, to allow someone perhaps
> spot a pattern)?
>

Here is full HPET state from "frozen" snapshot according to hvm_hw_hpet
structure:

capabiliy: f424008086a201
res0: 0
config: 3
res1: 0
isr: 0
res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0]
mc64: 97b90bc74
res3: 0
timer0:
        config: f0000000002934
        cmp: fd4aa84c
        fsb: 0
        res4: 0
timer1:
        config: f0000000000130
        cmp: ffffffff
        fsb: 0
        res4: 0
timer2:
        config: f0000000000130
        cmp: ffffffff
        fsb: 0
        res4: 0
period[0] = ee6b2
period[1] = 0
period[2] = 0

This one taken from snapshot of "unfrozen" one:

capabiliy: f424008086a201
res0: 0
config: 3
res1: 0
isr: 0
res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0]
mc64: acbd23c57
res3: 0
timer0:
        config: f000000000293c
        cmp: acbd3761b
        fsb: 0
        res4: 0
timer1:
        config: f0000000000130
        cmp: ffffffff
        fsb: 0
        res4: 0
timer2:
        config: f0000000000130
        cmp: ffffffff
        fsb: 0
        res4: 0
period[0] = ee6b2
period[1] = 0
period[2] = 0

The only difference is HPET_TN_PERIODIC flag for timers[0].config value

--000000000000328bd105c0a3857e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px =
0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=
=3D"ltr"><font color=3D"#888888">
 Since<br>
you&#39;ve taken apart saved state, could you supply the full set of<br>
values (ideally multiple ones, if you happen to have them, plus<br>
ones where the problem didn&#39;t occur, to allow someone perhaps<br>
spot a pattern)?<font color=3D"#888888"><br>
</font>

</font>

</div></blockquote><br><div class=3D"gmail_quote">Here is full HPET state f=
rom &quot;frozen&quot; snapshot according to=20
hvm_hw_hpet structure:</div><div class=3D"gmail_quote"><br></div><div class=
=3D"gmail_quote" style=3D"margin-left:40px">capabiliy: f424008086a201<br>re=
s0: 0<br>config: 3<br>res1: 0<br>isr: 0<br>res2: [0, 0, 0, 0, 0, 0, 0, 0, 0=
, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]<br>mc64: 97b90bc74<br>res=
3: 0<br>timer0:<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 config: f0000000002934<br>=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 cmp: fd4aa84c<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 fs=
b: 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 res4: 0<br>timer1:<br>=C2=A0 =C2=A0 =C2=
=A0 =C2=A0 config: f0000000000130<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 cmp: fffff=
fff<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 fsb: 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 re=
s4: 0<br>timer2:<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 config: f0000000000130<br>=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 cmp: ffffffff<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 fs=
b: 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 res4: 0<br>period[0] =3D ee6b2<br>perio=
d[1] =3D 0<br>period[2] =3D 0</div><div class=3D"gmail_quote" style=3D"marg=
in-left:40px"><br></div><div class=3D"gmail_quote">This one taken from snap=
shot of &quot;unfrozen&quot; one:</div><div class=3D"gmail_quote"><br></div=
><div class=3D"gmail_quote" style=3D"margin-left:40px">capabiliy: f42400808=
6a201<br>res0: 0<br>config: 3<br>res1: 0<br>isr: 0<br>res2: [0, 0, 0, 0, 0,=
 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]<br>mc64: acbd2=
3c57<br>res3: 0<br>timer0:<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 config: f00000000=
0293c<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 cmp: acbd3761b<br>=C2=A0 =C2=A0 =C2=A0=
 =C2=A0 fsb: 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 res4: 0<br>timer1:<br>=C2=A0 =
=C2=A0 =C2=A0 =C2=A0 config: f0000000000130<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =
cmp: ffffffff<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 fsb: 0<br>=C2=A0 =C2=A0 =C2=A0=
 =C2=A0 res4: 0<br>timer2:<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 config: f00000000=
00130<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 cmp: ffffffff<br>=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 fsb: 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 res4: 0<br>period[0] =3D ee6b2=
<br>period[1] =3D 0<br>period[2] =3D 0</div><div class=3D"gmail_quote" styl=
e=3D"margin-left:40px"><br></div><div class=3D"gmail_quote">The only differ=
ence is=20
HPET_TN_PERIODIC flag for timers[0].config value</div><br></div>

--000000000000328bd105c0a3857e--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:18:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:18:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116332.222039 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvh3-00042u-2S; Fri, 23 Apr 2021 13:18:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116332.222039; Fri, 23 Apr 2021 13: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 1lZvh2-00042n-Us; Fri, 23 Apr 2021 13:18:00 +0000
Received: by outflank-mailman (input) for mailman id 116332;
 Fri, 23 Apr 2021 13:18:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZvh2-00041x-64
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:18:00 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a390c05e-6e58-471b-8442-8fb78069088c;
 Fri, 23 Apr 2021 13:17: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: a390c05e-6e58-471b-8442-8fb78069088c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619183878;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=P4lmiEH14pV94/hbtSRprs0RNsOZbJwvdx7dOzkfknM=;
  b=WovmMjurOYFtEIsQ6OYJLtZcdxAC909E0B11nTNnVp2GJ+rxm6smRS6t
   faQiLgsf5z5jZpClTquI1eh1BpwY3dwu9QZgiIwQI4N523q/HzmdbUcpA
   EtheTZ+VEMywLO6A5eUGgWTuYjDF46yFhCnLOYNYRiIO/q+qUNIh0dY74
   Y=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: s/Xg8xFcR4ey//XJHAsW9uyT1ynxSSAr4jyxNtgk0gvFZBl0+yb9b78IOZa0N57SJMRpXL8f0t
 /1dPFtbgjc1JQtUYd/0yyRBg84/Udm0BtzbH+u0zFwPRy8vymCI9JdY/3TgY+6hzJfZ5vcLTWi
 nTBgchq0xV89B0i7ZfcbL67b4cswJZtyTyTFNevTVng9CSt5zzmzsHEkJM8PUZEyRFaj+1r0me
 6mhJh615I4Bd+qWPZ+7A20BU2iKVR+N/Bq3I+3+zIA3nMEcUMkXWleuTB8MqWjSP1ZHez9zc5i
 vM8=
X-SBRS: 5.2
X-MesageID: 42269754
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:gYsrcKN85J56LcBcT3/w55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsa9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrwHIMxbVstRQ3a
 IIScVDIfX7B1RikILe6A63D94vzLC8gd2VrM31pk0dKD1CQadm8gt/F0K/Gkp5WAFJCfMCZe
 ahz+BAoCetfmlSU9SjChA+LqT+jvDotLajWx4JABY79BKD5AnH1JfWGwWVty1uKg9n7qwl9Q
 H+4m/Ez4Wl98q20xrNk1LUhq4m4ufJ7vtmKIiyhtMOKjPq4zzYK7hJf7GZpjg6rKWOxT8R4a
 HxiiwtNchy9H/dF1vdyXCGumnd+Q0j5HP4xViTjWGLm72DeBsAB9dcnoUcSxPF6iMbzYhB+Z
 hW1GGUvYc/N2KloA3B5sPFXxwvtk24rWtKq590s1VjUJATYLIUkIoH/Ek9KuZmIAvG7ukcYY
 tTJfCZwMwTXUKRbnjfsGUq6serRG4PEhCPRVVHktCJ0hBN9UoJgXcw9Yg6pDMt5Zg9Q55L66
 DvKaJzjoxDSccQcOZUGPoBe82qEWbAKCi8cV66EBDCLuUqKnjNo5n47PEe/+exYqEFy5M0hd
 DnXE5Hs3UxP2bjE9eH0pEO0h2lehT8YR3djuVlo7RpsLz1Q7TmdQeZTko1rsemq/IDRsLBXf
 K+P49XHu/jIWPiFZ0h5Xy9Z7BibV0lFOEFsNcyXFyD5ujRLJfxi+DdePHPYLrheAxUH1/XMz
 8mZnzeNc9A5kekVjvTmx7KQU7gfUT54NZ1GKje9O4D1ZgVOuR3w0wooGX8wvvOBSxJs6Qwck
 c7CqjgiLmHqW6/+nuN6X5oNBpbBkNc+67hTHtOuA8PPyrPAPU+kuTaXVoX8GqMJxd5Qc+TOh
 VYvU5L9aW+KIHV2TovEMu9MmWRj2IaoXWDS5t0oNzF2e7VPrcDSro2Uq14EgvGUyFvkQFxsW
 FZdUsvXUnEDA7jjq2jkb0ZDOzSbMNHnQ+uOMJYwEiv83m0lIUKfD87VyTredOLiQwuLgAk+W
 FZwus6uv68vhqBbUE4m/81NVVQbn//OsM5MC21IKNOmr7qfwlsS3ytnjLysWBqRkPj61gSim
 v9LSedZPHMBR5HtmpF17vxmWkEB1m1bgZ+bGt3vpZ6EnmDsnFv0fWTbq72yGeJbEAeq9tteg
 3tcH8XIgl0wcqw2wPQkDGeFW8+zpFGBJ2UMJ0zN7XS0GiqMouGiOUPGOJV5o9sMJTrvvUQWe
 ySPw+TIzWQMZJj5yWF4nIkMjJzsn8qjLfh3wDk9nGx2DonGuXJSW4WMI0zMpWZ9SzpVvyI2J
 J2gZY8uvaxKHz4bpqDxbvMZzBOJxvPqQeNPqwVgIERubh3uKp4HpHdXzeNzn1B0RkkJMr/lU
 8VQs1Akfn8E54qe9ZXdzNS/1IvmtjKMVAitRbuBPQiOV4qlH3WMrqyks71gKtqBlfEogT+OV
 OSqXIAu/jEWjaOzr4cBeY7J39MZE019XRl+6eDeuTreXeXXvAG+ED/NHm3NKJZQuyCH74bqx
 5h+dGGn+ONbUPDqXbtlCo+JrgL6nqtRMO5HRmFFuFJ+cGrIFjkuNrY3OejyDPsDSahY0sWhY
 dZZVUdY8RKhD4llpA22EGJO9nKi1NglUBf7zFhnkPs3Ybj4H6zJzA3DTHk
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42269754"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kwMqkiXYq6/t+6JJ7LIsx1rsAW09UZxTDWs8mT2oXuYayMPknmTyRqx5nGHKelFLbkq4cNd3hVOUTcXPX85DzmZkOPDDHdZ4wuH8qdO7zaGVvIxhFhI4ZBo8PzhP8W4kvZaZLgI7ln5jxYAbcGiduZ1yo3vRwAiDah+ff+uYlS4PcG4FbwF/Q41mAqHAXzbXJsVEFlS2Er+t6FHrRrmyzLXhC1L5MlOA7Hzb05ZsyOkOvsx1Sj+alR0qgKcMGfIhN9sRA3GJuRv9pSBhMqMK3hV9dIfgA961PdR0Rvso8kMsnb/1vkqI1MYbkLPYkbc0BNRuWkaIKIIUj4qh3n4CHA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3p/Ut8DacIxUWFHt2eeL0cnHg88Tl8H2rMUHE2PjCrA=;
 b=DYD8YZtHCd+ThgQwF3xcbFTlXTyF/+NwgzNaOK9fZgVcoa8ZdMOtBSWQeZIRke9Z4Z0JjxdiTDhlhcIMceaOcacgPEzaQHmUVtEycUBcMtRyGgP+yZqL7jMJ9s6ZXvdIST2x92el3jfcV+IBRW3AjQg9N1C68PAyvXW4nAS/Y6Epm2siE0t5YsjcT6vWWm193pqoE5GlUwD/vhPE2G6T3fSbN4fDCpYDiJdvMMJrRyB24yOySapJEVkWZZhL4XaqlPo16mTXatwc+RlzKW2XxHvSk9Rx0/rAS2M9MeY03ONBrg2Y8pfeFugb6mw1VxgnqHKVl/wuetP8x4Iicwf1ZQ==
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=3p/Ut8DacIxUWFHt2eeL0cnHg88Tl8H2rMUHE2PjCrA=;
 b=XQypLrHN6boKpa4Yx6V5mHnBsP3kMG2+rAb3//XHe2iWmlV+He3hLCAkG8szd7aOYOrs+DabhVLfbI3F0gdWiWyLNGnRq3ibNZgCPx1PuMiEYZ7lxFM1gjmwCjsJHOTMSveRISgNEXrgxMyjZNnoe0uA1oN6zD39rM3aNu2O6us=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Roger Pau Monne <roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: [PATCH v2] x86/cpuid: do not expand max leaves on restore
Date: Fri, 23 Apr 2021 15:17:47 +0200
Message-ID: <20210423131747.10308-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0021.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::33) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ae8e7600-abfe-4e56-e841-08d9065a3546
X-MS-TrafficTypeDiagnostic: DM6PR03MB4681:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB46817D61B0D3EF99F832CB6E8F459@DM6PR03MB4681.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:1107;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: xuXwLPxac0xlXUeOM7rjmJMaAp0XYDJ3GP8eNBkuLrkJlxPIEFQmh9bRrPzVzPfY8HLrGaU4xNy/x58SUoIyw6XQKDYgCaEpvJy3IKgyh+AX2P+sxIiFVjLSJ4/I2g5Z53iHfZn7uMoziN1587MhXteKcZ2uzEjh83dM9fVRZLxova7h5zXgw/uu1uP+qTexQypQqZHVH7xn4z+Sl+N9qMbFJd32oOorGUfohvPgauFZL4F6x2Y5ICG5KdXNwUuXuzuaRE9CLtV+Bt7IDo92Fae0KkYKXLYBox0V/4XSJ+z2AMCL2jwUEeFlwai1GoBO0atrcIGdL/AtFC3wOpa3oIjMf8XGg568dpaR1porGkSzwG9bganqHXaR+I0gdN4iaSF9k+Ej6XEJ7hJpw513o+MNAU3LiUT5APMxYCgNi9f6iFZe2Y1eoXYe8d2UGytOQAXf930ZXNIQoqOqnVN/zjGdpLwVQtLqJLEDr9YYR/nil8uV6YytH5px0U+Cvs6y2A8W/ZY1vRftiFdN/siRV74sQkWIBBbKyfvDxVdNeqB9+AlnTIyxoZE4A0MngVnFTCs/qbYclM3Fl0WzP7OQcEIVH5u/BgHZKl8UmAACt20=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(376002)(366004)(396003)(39860400002)(346002)(6496006)(8936002)(107886003)(4326008)(66556008)(66476007)(66946007)(316002)(6666004)(2906002)(478600001)(6916009)(8676002)(26005)(1076003)(2616005)(186003)(54906003)(956004)(5660300002)(38100700002)(16526019)(86362001)(36756003)(83380400001)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?8t5YnegVj3v1pX7ieAWHLFs/HEvCqdKwIg9HUaO?=
X-MS-Exchange-CrossTenant-Network-Message-Id: ae8e7600-abfe-4e56-e841-08d9065a3546
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 13:17:56.2210
 (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: M33jcHuGVz04rejLuCAOHBUEld01C0ov6UL2E3ztuR0Ry3B4eDy13B3i2KPdydxesdMcHanNL44jGkRUrjJ8rw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4681
X-OriginatorOrg: citrix.com

When restoring limit the maximum leaves to the ones supported by Xen
4.12 in order to not expand the maximum leaves a guests sees. Note
this is unlikely to cause real issues.

Guests restored from Xen versions 4.13 or greater will contain CPUID
data on the stream that will override the values set by
xc_cpuid_apply_policy.

Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 - Fix commit message.
 - Adjust max feature subleaf to 0.
 - Move and amend comments.
---
 tools/libs/guest/xg_cpuid_x86.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 5ea69ad3d51..bf9a3750b58 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -498,18 +498,23 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         goto out;
     }
 
-    /*
-     * Account for feature which have been disabled by default since Xen 4.13,
-     * so migrated-in VM's don't risk seeing features disappearing.
-     */
     if ( restore )
     {
+        /*
+         * Account for feature which have been disabled by default since Xen 4.13,
+         * so migrated-in VM's don't risk seeing features disappearing.
+         */
         p->basic.rdrand = test_bit(X86_FEATURE_RDRAND, host_featureset);
 
         if ( di.hvm )
         {
             p->feat.mpx = test_bit(X86_FEATURE_MPX, host_featureset);
         }
+
+        /* Clamp maximum leaves to the ones supported on 4.12. */
+        p->basic.max_leaf = min(p->basic.max_leaf, 0xdu);
+        p->feat.max_subleaf = 0;
+        p->extd.max_leaf = min(p->extd.max_leaf, 0x1cu);
     }
 
     if ( featureset )
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:21:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:21:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116341.222054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvke-0004vm-O6; Fri, 23 Apr 2021 13:21:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116341.222054; Fri, 23 Apr 2021 13:21: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 1lZvke-0004vf-JS; Fri, 23 Apr 2021 13:21:44 +0000
Received: by outflank-mailman (input) for mailman id 116341;
 Fri, 23 Apr 2021 13:21:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZvkd-0004va-70
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 13:21:43 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a42f640d-3c0a-482c-9ca6-9cb88203d7b2;
 Fri, 23 Apr 2021 13:21:42 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 7A183B140;
 Fri, 23 Apr 2021 13: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: a42f640d-3c0a-482c-9ca6-9cb88203d7b2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619184101; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=vlZRitF07HVUmwm0zmmku9SRZCi6kaHkbzn+g+jVHu8=;
	b=RooP+EF+tvgoIPerI3LQDL2hUao1ED1J9EAZqkdJtkdwx3iZTiA5iJmDQ7xS9tKnNd01Gu
	0mMpztB7G/iCpZyOLy76GqIkJ4rHhI0fQGHJ3IBO09amt5RyErWRlJgzj3sX0QkwVbOIVj
	Gc/WZnBHzlX/BnURhypsJ5LJBPSh2No=
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
To: =?UTF-8?B?0JPQtdC+0YDQs9C40Lkg0JfQsNC50YbQtdCy?= <zaytsevgu@gmail.com>
Cc: xen-devel@lists.xen.org, Sergey Kovalev <valor@list.ru>
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
 <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
 <57478641-ed64-32bd-a577-428a50c880e2@suse.com>
 <33f08c57-08f7-b6c3-02ed-2b66c35665f2@list.ru>
 <CADyHojEFuM8mrdyBpQCO+_OJsijfi6nR5YjbHxE3dkTqbAq23Q@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3fa1051f-705c-fdf9-272d-69dd9e7dc01d@suse.com>
Date: Fri, 23 Apr 2021 15:21:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <CADyHojEFuM8mrdyBpQCO+_OJsijfi6nR5YjbHxE3dkTqbAq23Q@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 15:10, Георгий Зайцев wrote:
>>
>> Since
>> you've taken apart saved state, could you supply the full set of
>> values (ideally multiple ones, if you happen to have them, plus
>> ones where the problem didn't occur, to allow someone perhaps
>> spot a pattern)?
>>
> 
> Here is full HPET state from "frozen" snapshot according to hvm_hw_hpet
> structure:
> 
> capabiliy: f424008086a201
> res0: 0
> config: 3
> res1: 0
> isr: 0
> res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0]
> mc64: 97b90bc74
> res3: 0
> timer0:
>         config: f0000000002934
>         cmp: fd4aa84c
>         fsb: 0
>         res4: 0
> timer1:
>         config: f0000000000130
>         cmp: ffffffff
>         fsb: 0
>         res4: 0
> timer2:
>         config: f0000000000130
>         cmp: ffffffff
>         fsb: 0
>         res4: 0
> period[0] = ee6b2
> period[1] = 0
> period[2] = 0
> 
> This one taken from snapshot of "unfrozen" one:
> 
> capabiliy: f424008086a201
> res0: 0
> config: 3
> res1: 0
> isr: 0
> res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0]
> mc64: acbd23c57
> res3: 0
> timer0:
>         config: f000000000293c
>         cmp: acbd3761b
>         fsb: 0
>         res4: 0
> timer1:
>         config: f0000000000130
>         cmp: ffffffff
>         fsb: 0
>         res4: 0
> timer2:
>         config: f0000000000130
>         cmp: ffffffff
>         fsb: 0
>         res4: 0
> period[0] = ee6b2
> period[1] = 0
> period[2] = 0
> 
> The only difference is HPET_TN_PERIODIC flag for timers[0].config value

Thanks, but now I'll need to understand what your quoted "frozen" and
"unfrozen" mean. Plus obviously comparators and main counter are also
different, and it's there where I suspect the issue is.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:25:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:25:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116346.222066 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvoS-0005Fk-78; Fri, 23 Apr 2021 13:25:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116346.222066; Fri, 23 Apr 2021 13:25: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 1lZvoS-0005Fd-3z; Fri, 23 Apr 2021 13:25:40 +0000
Received: by outflank-mailman (input) for mailman id 116346;
 Fri, 23 Apr 2021 13:25:38 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZvoQ-0005FY-Bg
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:25:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b3152040-ab0c-47bc-987c-00d82359d6a1;
 Fri, 23 Apr 2021 13:25:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8D329AF03;
 Fri, 23 Apr 2021 13:25: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: b3152040-ab0c-47bc-987c-00d82359d6a1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619184336; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=3oSESxNu4pUyQx6KGM+Xm+H+LqU3yUQ/ocTtxYQ5t9Q=;
	b=LbDkEgyWIcOYzOqFsjrL3Cfpdmjteuo2IJg7vNekknMWtae73pNVlMBolnoNafL7/5H+l9
	+TKFbuD92wQy3ahdDcXYmE5w2Wfa5zlrLoOrYTd4/FKc6c+nG4nPjS63rgTCfgwI3u7jgp
	kaJzbP11XYksEH8omBa0Fp6VuEIIheI=
Subject: Re: [PATCH v2] x86/cpuid: do not expand max leaves on restore
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <20210423131747.10308-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c0c69ce9-15b0-8e7c-d6c2-7f3b6b036f5c@suse.com>
Date: Fri, 23 Apr 2021 15:25:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210423131747.10308-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 15:17, Roger Pau Monne wrote:
> When restoring limit the maximum leaves to the ones supported by Xen
> 4.12 in order to not expand the maximum leaves a guests sees. Note
> this is unlikely to cause real issues.
> 
> Guests restored from Xen versions 4.13 or greater will contain CPUID
> data on the stream that will override the values set by
> xc_cpuid_apply_policy.
> 
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, looks plausible to me, so
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:31:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:31:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116351.222078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvtU-00067Q-S6; Fri, 23 Apr 2021 13:30:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116351.222078; Fri, 23 Apr 2021 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 1lZvtU-00067J-No; Fri, 23 Apr 2021 13:30:52 +0000
Received: by outflank-mailman (input) for mailman id 116351;
 Fri, 23 Apr 2021 13:30:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AfSa=JU=gmail.com=zaytsevgu@srs-us1.protection.inumbo.net>)
 id 1lZvtS-00067E-Id
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 13:30:50 +0000
Received: from mail-lf1-x134.google.com (unknown [2a00:1450:4864:20::134])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 864be813-29c8-400d-8190-250e47f8ced6;
 Fri, 23 Apr 2021 13:30:49 +0000 (UTC)
Received: by mail-lf1-x134.google.com with SMTP id g8so77613121lfv.12
 for <xen-devel@lists.xen.org>; Fri, 23 Apr 2021 06:30: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: 864be813-29c8-400d-8190-250e47f8ced6
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=2diCxYQLzVRB2YkMNKUTd4ZRrUjQDrcMGT48yjVpfqI=;
        b=a3urx/0Dv2zccl4T7MohpfgvHRcm6y+VhuKEOyAXgQR5T9+biDEa1NYQqeEkEUYQEg
         zV2+wg2J+2u7TEZDQFooKbhbEzfy7xZzioZMUtPp/i1qS3BB/VWNwqbOlT1DgMPBUwHD
         dic3yvDzL6PpPJso9v0MSEtp0NkJw+iUAaRHUTl0wWRX++CBDBckN+NbFDY81TbD9XOV
         MDmXtpXyzm0CbY6VeOXIXW/VHVwhYJafSUuP8jTN3MHmR8xNoHJVfxMBUaUjXe0BO7Z2
         IODN+pT1jen8ezelxdwMYsakkxK+oc6lu8R3z8c6oClEhdHi7N8XKXscVmmb39hfwrQm
         HagQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=2diCxYQLzVRB2YkMNKUTd4ZRrUjQDrcMGT48yjVpfqI=;
        b=SAX6wrvJ159RxYRjA/WmFBtkB3As9G/HkcBhLNPLwH8nuoqRGMQryeEReFhr/jFLsJ
         PWH3q50k3a+tz3hi2HkcAeUilU07lHZYvct0hqx/FDvyn1EKBViFxgB5Glf8XR19dxNl
         dfjQNYgxraMray/zVllWVu3QsK8KCJYr2Y1ugPmL9Jdc8Mb01meIEb9awnWHHhiSOSo4
         ben5/O6FSH1Q6bkrX7HBUr6IDQqGaI3ufd1lqL/G9lVOkJRNLN0dFOO8eLMShVnetWlO
         dRdu5gnMSnRBspcAtxixO43bt6BwLgUGRfsOiG9lGBN4z9XczhBaeNN/dv5H9uVtuK9K
         MbuA==
X-Gm-Message-State: AOAM532eBbwVqL90/IrXU/Q4/j3u+UX7ihmzvwlpxd3d+WpUz4qpN80i
	/y/bhBUyfdVMN9bnjnmU+reIo9QeVODJ/qmCK6A=
X-Google-Smtp-Source: ABdhPJz77iI9FT3aGot4giC2mhkCuMZqFsERH98A0heoO8SBeZLkgkXmP3kdWnJ7woEWq9Ut4nRqCl7sTdpsk/4z89Q=
X-Received: by 2002:a05:6512:108a:: with SMTP id j10mr2801378lfg.559.1619184648102;
 Fri, 23 Apr 2021 06:30:48 -0700 (PDT)
MIME-Version: 1.0
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru> <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
 <57478641-ed64-32bd-a577-428a50c880e2@suse.com> <33f08c57-08f7-b6c3-02ed-2b66c35665f2@list.ru>
 <CADyHojEFuM8mrdyBpQCO+_OJsijfi6nR5YjbHxE3dkTqbAq23Q@mail.gmail.com> <3fa1051f-705c-fdf9-272d-69dd9e7dc01d@suse.com>
In-Reply-To: <3fa1051f-705c-fdf9-272d-69dd9e7dc01d@suse.com>
From: =?UTF-8?B?0JPQtdC+0YDQs9C40Lkg0JfQsNC50YbQtdCy?= <zaytsevgu@gmail.com>
Date: Fri, 23 Apr 2021 16:30:37 +0300
Message-ID: <CADyHojFyzqRKHp4aWUFysnHbb3i0tMvM6wEAEd8Y1HHwGkncyQ@mail.gmail.com>
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xen.org, Sergey Kovalev <valor@list.ru>
Content-Type: multipart/alternative; boundary="000000000000c6a87d05c0a3cd75"

--000000000000c6a87d05c0a3cd75
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Thanks, but now I'll need to understand what your quoted "frozen" and
> "unfrozen" mean. Plus obviously comparators and main counter are also
> different, and it's there where I suspect the issue is

"frozen" - this is initial snapshot which takes about from 30 seconds to 1
minute after restore to start dispatching timer interrupts to windows guest
"unfrozen" - this is state which taken after restoring "frozen" one and
waiting 90 seconds when guest start receiving interrupts and starts working
as expected

we also made some another snapshots (again after restoring from initial
"frozen" one) when system still in 'freezed" state (about ~20-30 seconds
from start of restore process) and in this snapshots HPET state stays the
same as in initial "frozen" state except mc64 field:
capabiliy: f424008086a201
res0: 0
config: 3
res1: 0
isr: 0
res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0]
mc64: 9bafb6e4e
res3: 0
timer0:
        config: f0000000002934
        cmp: fd4aa84c
        fsb: 0
        res4: 0
timer1:
        config: f0000000000130
        cmp: ffffffff
        fsb: 0
        res4: 0
timer2:
        config: f0000000000130
        cmp: ffffffff
        fsb: 0
        res4: 0
period[0] =3D ee6b2
period[1] =3D 0
period[2] =3D 0

=D0=BF=D1=82, 23 =D0=B0=D0=BF=D1=80. 2021 =D0=B3. =D0=B2 16:21, Jan Beulich=
 <jbeulich@suse.com>:

> On 23.04.2021 15:10, =D0=93=D0=B5=D0=BE=D1=80=D0=B3=D0=B8=D0=B9 =D0=97=D0=
=B0=D0=B9=D1=86=D0=B5=D0=B2 wrote:
> >>
> >> Since
> >> you've taken apart saved state, could you supply the full set of
> >> values (ideally multiple ones, if you happen to have them, plus
> >> ones where the problem didn't occur, to allow someone perhaps
> >> spot a pattern)?
> >>
> >
> > Here is full HPET state from "frozen" snapshot according to hvm_hw_hpet
> > structure:
> >
> > capabiliy: f424008086a201
> > res0: 0
> > config: 3
> > res1: 0
> > isr: 0
> > res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0=
,
> 0,
> > 0, 0]
> > mc64: 97b90bc74
> > res3: 0
> > timer0:
> >         config: f0000000002934
> >         cmp: fd4aa84c
> >         fsb: 0
> >         res4: 0
> > timer1:
> >         config: f0000000000130
> >         cmp: ffffffff
> >         fsb: 0
> >         res4: 0
> > timer2:
> >         config: f0000000000130
> >         cmp: ffffffff
> >         fsb: 0
> >         res4: 0
> > period[0] =3D ee6b2
> > period[1] =3D 0
> > period[2] =3D 0
> >
> > This one taken from snapshot of "unfrozen" one:
> >
> > capabiliy: f424008086a201
> > res0: 0
> > config: 3
> > res1: 0
> > isr: 0
> > res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0=
,
> 0,
> > 0, 0]
> > mc64: acbd23c57
> > res3: 0
> > timer0:
> >         config: f000000000293c
> >         cmp: acbd3761b
> >         fsb: 0
> >         res4: 0
> > timer1:
> >         config: f0000000000130
> >         cmp: ffffffff
> >         fsb: 0
> >         res4: 0
> > timer2:
> >         config: f0000000000130
> >         cmp: ffffffff
> >         fsb: 0
> >         res4: 0
> > period[0] =3D ee6b2
> > period[1] =3D 0
> > period[2] =3D 0
> >
> > The only difference is HPET_TN_PERIODIC flag for timers[0].config value
>
> Thanks, but now I'll need to understand what your quoted "frozen" and
> "unfrozen" mean. Plus obviously comparators and main counter are also
> different, and it's there where I suspect the issue is.
>
> Jan
>

--000000000000c6a87d05c0a3cd75
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br clear=3D"all"><div><div dir=3D"ltr" class=3D"gmail_sig=
nature" data-smartmail=3D"gmail_signature"><br></div></div><blockquote clas=
s=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid r=
gb(204,204,204);padding-left:1ex">
Thanks, but now I&#39;ll need to understand what your quoted &quot;frozen&q=
uot; and<br>
&quot;unfrozen&quot; mean. Plus obviously comparators and main counter are =
also<br>
different, and it&#39;s there where I suspect the issue is

</blockquote><div>&quot;frozen&quot; - this is initial snapshot which takes=
 about from 30 seconds to 1 minute after restore to start dispatching timer=
 interrupts to windows guest</div><div>&quot;unfrozen&quot; - this is state=
 which taken after restoring &quot;frozen&quot; one and waiting 90 seconds =
when guest start receiving interrupts and starts working as expected<br></d=
iv><div><br></div><div>we also made some another snapshots (again after res=
toring from initial &quot;frozen&quot; one) when system still in &#39;freez=
ed&quot; state (about ~20-30 seconds from start of restore process) and in =
this snapshots HPET state stays the same as in initial &quot;frozen&quot; s=
tate except mc64 field:</div><div style=3D"margin-left:40px">capabiliy: f42=
4008086a201<br>res0: 0<br>config: 3<br>res1: 0<br>isr: 0<br>res2: [0, 0, 0,=
 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]<br>mc64:=
 9bafb6e4e<br>res3: 0<br>timer0:<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 config: f00=
00000002934<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 cmp: fd4aa84c<br>=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 fsb: 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 res4: 0<br>timer1:<br>=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 config: f0000000000130<br>=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 cmp: ffffffff<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 fsb: 0<br>=C2=A0 =C2=A0=
 =C2=A0 =C2=A0 res4: 0<br>timer2:<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 config: f0=
000000000130<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 cmp: ffffffff<br>=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 fsb: 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 res4: 0<br>period[0] =
=3D ee6b2<br>period[1] =3D 0<br>period[2] =3D 0</div></div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">=D0=BF=D1=82, 23 =D0=
=B0=D0=BF=D1=80. 2021 =D0=B3. =D0=B2 16:21, Jan Beulich &lt;<a href=3D"mail=
to:jbeulich@suse.com">jbeulich@suse.com</a>&gt;:<br></div><blockquote class=
=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rg=
b(204,204,204);padding-left:1ex">On 23.04.2021 15:10, =D0=93=D0=B5=D0=BE=D1=
=80=D0=B3=D0=B8=D0=B9 =D0=97=D0=B0=D0=B9=D1=86=D0=B5=D0=B2 wrote:<br>
&gt;&gt;<br>
&gt;&gt; Since<br>
&gt;&gt; you&#39;ve taken apart saved state, could you supply the full set =
of<br>
&gt;&gt; values (ideally multiple ones, if you happen to have them, plus<br=
>
&gt;&gt; ones where the problem didn&#39;t occur, to allow someone perhaps<=
br>
&gt;&gt; spot a pattern)?<br>
&gt;&gt;<br>
&gt; <br>
&gt; Here is full HPET state from &quot;frozen&quot; snapshot according to =
hvm_hw_hpet<br>
&gt; structure:<br>
&gt; <br>
&gt; capabiliy: f424008086a201<br>
&gt; res0: 0<br>
&gt; config: 3<br>
&gt; res1: 0<br>
&gt; isr: 0<br>
&gt; res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, =
0, 0,<br>
&gt; 0, 0]<br>
&gt; mc64: 97b90bc74<br>
&gt; res3: 0<br>
&gt; timer0:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0config: f0000000002934<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cmp: fd4aa84c<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0fsb: 0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0res4: 0<br>
&gt; timer1:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0config: f0000000000130<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cmp: ffffffff<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0fsb: 0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0res4: 0<br>
&gt; timer2:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0config: f0000000000130<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cmp: ffffffff<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0fsb: 0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0res4: 0<br>
&gt; period[0] =3D ee6b2<br>
&gt; period[1] =3D 0<br>
&gt; period[2] =3D 0<br>
&gt; <br>
&gt; This one taken from snapshot of &quot;unfrozen&quot; one:<br>
&gt; <br>
&gt; capabiliy: f424008086a201<br>
&gt; res0: 0<br>
&gt; config: 3<br>
&gt; res1: 0<br>
&gt; isr: 0<br>
&gt; res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, =
0, 0,<br>
&gt; 0, 0]<br>
&gt; mc64: acbd23c57<br>
&gt; res3: 0<br>
&gt; timer0:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0config: f000000000293c<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cmp: acbd3761b<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0fsb: 0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0res4: 0<br>
&gt; timer1:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0config: f0000000000130<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cmp: ffffffff<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0fsb: 0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0res4: 0<br>
&gt; timer2:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0config: f0000000000130<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cmp: ffffffff<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0fsb: 0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0res4: 0<br>
&gt; period[0] =3D ee6b2<br>
&gt; period[1] =3D 0<br>
&gt; period[2] =3D 0<br>
&gt; <br>
&gt; The only difference is HPET_TN_PERIODIC flag for timers[0].config valu=
e<br>
<br>
Thanks, but now I&#39;ll need to understand what your quoted &quot;frozen&q=
uot; and<br>
&quot;unfrozen&quot; mean. Plus obviously comparators and main counter are =
also<br>
different, and it&#39;s there where I suspect the issue is.<br>
<br>
Jan<br>
</blockquote></div>

--000000000000c6a87d05c0a3cd75--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:31:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:31:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116355.222090 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvuA-0006Ci-5C; Fri, 23 Apr 2021 13:31:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116355.222090; Fri, 23 Apr 2021 13: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 1lZvuA-0006Cb-18; Fri, 23 Apr 2021 13:31:34 +0000
Received: by outflank-mailman (input) for mailman id 116355;
 Fri, 23 Apr 2021 13:31:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eGXB=JU=arm.com=robin.murphy@srs-us1.protection.inumbo.net>)
 id 1lZvu8-0006CW-SJ
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:31:32 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id f6259c0a-b6fa-43bc-952d-2906afb4b9f6;
 Fri, 23 Apr 2021 13:31:31 +0000 (UTC)
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 4DBFB1396;
 Fri, 23 Apr 2021 06:31:31 -0700 (PDT)
Received: from [10.57.62.63] (unknown [10.57.62.63])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3B58A3F73B;
 Fri, 23 Apr 2021 06:31: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: f6259c0a-b6fa-43bc-952d-2906afb4b9f6
Subject: Re: [PATCH v5 08/16] swiotlb: Update is_swiotlb_active to add a
 struct device argument
To: Claire Chang <tientzu@chromium.org>, Joerg Roedel <joro@8bytes.org>,
 Will Deacon <will@kernel.org>, Frank Rowand <frowand.list@gmail.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, boris.ostrovsky@oracle.com,
 jgross@suse.com, Christoph Hellwig <hch@lst.de>,
 Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org, paulus@samba.org,
 "list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
 sstabellini@kernel.org, grant.likely@arm.com, xypron.glpk@gmx.de,
 Thierry Reding <treding@nvidia.com>, mingo@kernel.org,
 bauerman@linux.ibm.com, peterz@infradead.org,
 Greg KH <gregkh@linuxfoundation.org>, Saravana Kannan
 <saravanak@google.com>, "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
 heikki.krogerus@linux.intel.com,
 Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
 Randy Dunlap <rdunlap@infradead.org>, Dan Williams
 <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>,
 linux-devicetree <devicetree@vger.kernel.org>,
 lkml <linux-kernel@vger.kernel.org>, linuxppc-dev@lists.ozlabs.org,
 xen-devel@lists.xenproject.org, Nicolas Boichat <drinkcat@chromium.org>,
 Jim Quinlan <james.quinlan@broadcom.com>, tfiga@chromium.org,
 bskeggs@redhat.com, bhelgaas@google.com, chris@chris-wilson.co.uk,
 daniel@ffwll.ch, airlied@linux.ie, dri-devel@lists.freedesktop.org,
 intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com,
 jxgao@google.com, joonas.lahtinen@linux.intel.com,
 linux-pci@vger.kernel.org, maarten.lankhorst@linux.intel.com,
 matthew.auld@intel.com, nouveau@lists.freedesktop.org,
 rodrigo.vivi@intel.com, thomas.hellstrom@linux.intel.com
References: <20210422081508.3942748-1-tientzu@chromium.org>
 <20210422081508.3942748-9-tientzu@chromium.org>
From: Robin Murphy <robin.murphy@arm.com>
Message-ID: <1f84aa4c-f966-0986-b5a4-eecbf3b454ec@arm.com>
Date: Fri, 23 Apr 2021 14:31:16 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210422081508.3942748-9-tientzu@chromium.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

On 2021-04-22 09:15, Claire Chang wrote:
> Update is_swiotlb_active to add a struct device argument. This will be
> useful later to allow for restricted DMA pool.
> 
> Signed-off-by: Claire Chang <tientzu@chromium.org>
> ---
>   drivers/gpu/drm/i915/gem/i915_gem_internal.c | 2 +-
>   drivers/gpu/drm/nouveau/nouveau_ttm.c        | 2 +-
>   drivers/pci/xen-pcifront.c                   | 2 +-
>   include/linux/swiotlb.h                      | 4 ++--
>   kernel/dma/direct.c                          | 2 +-
>   kernel/dma/swiotlb.c                         | 4 ++--
>   6 files changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_internal.c b/drivers/gpu/drm/i915/gem/i915_gem_internal.c
> index ce6b664b10aa..7d48c433446b 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_internal.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_internal.c
> @@ -42,7 +42,7 @@ static int i915_gem_object_get_pages_internal(struct drm_i915_gem_object *obj)
>   
>   	max_order = MAX_ORDER;
>   #ifdef CONFIG_SWIOTLB
> -	if (is_swiotlb_active()) {
> +	if (is_swiotlb_active(NULL)) {
>   		unsigned int max_segment;
>   
>   		max_segment = swiotlb_max_segment();
> diff --git a/drivers/gpu/drm/nouveau/nouveau_ttm.c b/drivers/gpu/drm/nouveau/nouveau_ttm.c
> index e8b506a6685b..2a2ae6d6cf6d 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_ttm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_ttm.c
> @@ -321,7 +321,7 @@ nouveau_ttm_init(struct nouveau_drm *drm)
>   	}
>   
>   #if IS_ENABLED(CONFIG_SWIOTLB) && IS_ENABLED(CONFIG_X86)
> -	need_swiotlb = is_swiotlb_active();
> +	need_swiotlb = is_swiotlb_active(NULL);
>   #endif
>   
>   	ret = ttm_device_init(&drm->ttm.bdev, &nouveau_bo_driver, drm->dev->dev,
> diff --git a/drivers/pci/xen-pcifront.c b/drivers/pci/xen-pcifront.c
> index b7a8f3a1921f..6d548ce53ce7 100644
> --- a/drivers/pci/xen-pcifront.c
> +++ b/drivers/pci/xen-pcifront.c
> @@ -693,7 +693,7 @@ static int pcifront_connect_and_init_dma(struct pcifront_device *pdev)
>   
>   	spin_unlock(&pcifront_dev_lock);
>   
> -	if (!err && !is_swiotlb_active()) {
> +	if (!err && !is_swiotlb_active(NULL)) {
>   		err = pci_xen_swiotlb_init_late();
>   		if (err)
>   			dev_err(&pdev->xdev->dev, "Could not setup SWIOTLB!\n");
> diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> index 2a6cca07540b..c530c976d18b 100644
> --- a/include/linux/swiotlb.h
> +++ b/include/linux/swiotlb.h
> @@ -123,7 +123,7 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
>   void __init swiotlb_exit(void);
>   unsigned int swiotlb_max_segment(void);
>   size_t swiotlb_max_mapping_size(struct device *dev);
> -bool is_swiotlb_active(void);
> +bool is_swiotlb_active(struct device *dev);
>   void __init swiotlb_adjust_size(unsigned long size);
>   #else
>   #define swiotlb_force SWIOTLB_NO_FORCE
> @@ -143,7 +143,7 @@ static inline size_t swiotlb_max_mapping_size(struct device *dev)
>   	return SIZE_MAX;
>   }
>   
> -static inline bool is_swiotlb_active(void)
> +static inline bool is_swiotlb_active(struct device *dev)
>   {
>   	return false;
>   }
> diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
> index 84c9feb5474a..7a88c34d0867 100644
> --- a/kernel/dma/direct.c
> +++ b/kernel/dma/direct.c
> @@ -495,7 +495,7 @@ int dma_direct_supported(struct device *dev, u64 mask)
>   size_t dma_direct_max_mapping_size(struct device *dev)
>   {
>   	/* If SWIOTLB is active, use its maximum mapping size */
> -	if (is_swiotlb_active() &&
> +	if (is_swiotlb_active(dev) &&
>   	    (dma_addressing_limited(dev) || swiotlb_force == SWIOTLB_FORCE))

I wonder if it's worth trying to fold these other conditions into 
is_swiotlb_active() itself? I'm not entirely sure what matters for Xen, 
but for the other cases it seems like they probably only care about 
whether bouncing may occur for their particular device or not (possibly 
they want to be using dma_max_mapping_size() now anyway - TBH I'm 
struggling to make sense of what the swiotlb_max_segment business is 
supposed to mean).

Otherwise, patch #9 will need to touch here as well to make sure that 
per-device forced bouncing is reflected correctly.

Robin.

>   		return swiotlb_max_mapping_size(dev);
>   	return SIZE_MAX;
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index ffbb8724e06c..1d221343f1c8 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -659,9 +659,9 @@ size_t swiotlb_max_mapping_size(struct device *dev)
>   	return ((size_t)IO_TLB_SIZE) * IO_TLB_SEGSIZE;
>   }
>   
> -bool is_swiotlb_active(void)
> +bool is_swiotlb_active(struct device *dev)
>   {
> -	return io_tlb_default_mem != NULL;
> +	return get_io_tlb_mem(dev) != NULL;
>   }
>   EXPORT_SYMBOL_GPL(is_swiotlb_active);
>   
> 


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:35:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:35:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116360.222102 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZvyD-0006Z2-ME; Fri, 23 Apr 2021 13:35:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116360.222102; Fri, 23 Apr 2021 13:35: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 1lZvyD-0006Yv-Ir; Fri, 23 Apr 2021 13:35:45 +0000
Received: by outflank-mailman (input) for mailman id 116360;
 Fri, 23 Apr 2021 13:35:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eGXB=JU=arm.com=robin.murphy@srs-us1.protection.inumbo.net>)
 id 1lZvyC-0006Yq-TC
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:35:44 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id a659579d-9935-4d80-ae19-2841cd014e33;
 Fri, 23 Apr 2021 13:35:43 +0000 (UTC)
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 7FD1113A1;
 Fri, 23 Apr 2021 06:35:42 -0700 (PDT)
Received: from [10.57.62.63] (unknown [10.57.62.63])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 492D03F73B;
 Fri, 23 Apr 2021 06:35: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: a659579d-9935-4d80-ae19-2841cd014e33
Subject: Re: [PATCH v5 16/16] of: Add plumbing for restricted DMA pool
To: Claire Chang <tientzu@chromium.org>, Joerg Roedel <joro@8bytes.org>,
 Will Deacon <will@kernel.org>, Frank Rowand <frowand.list@gmail.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, boris.ostrovsky@oracle.com,
 jgross@suse.com, Christoph Hellwig <hch@lst.de>,
 Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org, paulus@samba.org,
 "list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
 sstabellini@kernel.org, grant.likely@arm.com, xypron.glpk@gmx.de,
 Thierry Reding <treding@nvidia.com>, mingo@kernel.org,
 bauerman@linux.ibm.com, peterz@infradead.org,
 Greg KH <gregkh@linuxfoundation.org>, Saravana Kannan
 <saravanak@google.com>, "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
 heikki.krogerus@linux.intel.com,
 Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
 Randy Dunlap <rdunlap@infradead.org>, Dan Williams
 <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>,
 linux-devicetree <devicetree@vger.kernel.org>,
 lkml <linux-kernel@vger.kernel.org>, linuxppc-dev@lists.ozlabs.org,
 xen-devel@lists.xenproject.org, Nicolas Boichat <drinkcat@chromium.org>,
 Jim Quinlan <james.quinlan@broadcom.com>, tfiga@chromium.org,
 bskeggs@redhat.com, bhelgaas@google.com, chris@chris-wilson.co.uk,
 daniel@ffwll.ch, airlied@linux.ie, dri-devel@lists.freedesktop.org,
 intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com,
 jxgao@google.com, joonas.lahtinen@linux.intel.com,
 linux-pci@vger.kernel.org, maarten.lankhorst@linux.intel.com,
 matthew.auld@intel.com, nouveau@lists.freedesktop.org,
 rodrigo.vivi@intel.com, thomas.hellstrom@linux.intel.com
References: <20210422081508.3942748-1-tientzu@chromium.org>
 <20210422081508.3942748-17-tientzu@chromium.org>
From: Robin Murphy <robin.murphy@arm.com>
Message-ID: <03c5bc8a-3965-bf1d-01a4-97d074dfbe2b@arm.com>
Date: Fri, 23 Apr 2021 14:35:32 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210422081508.3942748-17-tientzu@chromium.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

On 2021-04-22 09:15, Claire Chang wrote:
> If a device is not behind an IOMMU, we look up the device node and set
> up the restricted DMA when the restricted-dma-pool is presented.
> 
> Signed-off-by: Claire Chang <tientzu@chromium.org>
> ---
>   drivers/of/address.c    | 25 +++++++++++++++++++++++++
>   drivers/of/device.c     |  3 +++
>   drivers/of/of_private.h |  5 +++++
>   3 files changed, 33 insertions(+)
> 
> diff --git a/drivers/of/address.c b/drivers/of/address.c
> index 54f221dde267..fff3adfe4986 100644
> --- a/drivers/of/address.c
> +++ b/drivers/of/address.c
> @@ -8,6 +8,7 @@
>   #include <linux/logic_pio.h>
>   #include <linux/module.h>
>   #include <linux/of_address.h>
> +#include <linux/of_reserved_mem.h>
>   #include <linux/pci.h>
>   #include <linux/pci_regs.h>
>   #include <linux/sizes.h>
> @@ -1109,6 +1110,30 @@ bool of_dma_is_coherent(struct device_node *np)
>   }
>   EXPORT_SYMBOL_GPL(of_dma_is_coherent);
>   
> +int of_dma_set_restricted_buffer(struct device *dev)
> +{
> +	struct device_node *node;
> +	int count, i;
> +
> +	if (!dev->of_node)
> +		return 0;
> +
> +	count = of_property_count_elems_of_size(dev->of_node, "memory-region",
> +						sizeof(phandle));
> +	for (i = 0; i < count; i++) {
> +		node = of_parse_phandle(dev->of_node, "memory-region", i);
> +		/* There might be multiple memory regions, but only one
> +		 * restriced-dma-pool region is allowed.
> +		 */

What's the use-case for having multiple regions if the restricted pool 
is by definition the only one accessible?

Robin.

> +		if (of_device_is_compatible(node, "restricted-dma-pool") &&
> +		    of_device_is_available(node))
> +			return of_reserved_mem_device_init_by_idx(
> +				dev, dev->of_node, i);
> +	}
> +
> +	return 0;
> +}
> +
>   /**
>    * of_mmio_is_nonposted - Check if device uses non-posted MMIO
>    * @np:	device node
> diff --git a/drivers/of/device.c b/drivers/of/device.c
> index c5a9473a5fb1..d8d865223e51 100644
> --- a/drivers/of/device.c
> +++ b/drivers/of/device.c
> @@ -165,6 +165,9 @@ int of_dma_configure_id(struct device *dev, struct device_node *np,
>   
>   	arch_setup_dma_ops(dev, dma_start, size, iommu, coherent);
>   
> +	if (!iommu)
> +		return of_dma_set_restricted_buffer(dev);
> +
>   	return 0;
>   }
>   EXPORT_SYMBOL_GPL(of_dma_configure_id);
> diff --git a/drivers/of/of_private.h b/drivers/of/of_private.h
> index d717efbd637d..e9237f5eff48 100644
> --- a/drivers/of/of_private.h
> +++ b/drivers/of/of_private.h
> @@ -163,12 +163,17 @@ struct bus_dma_region;
>   #if defined(CONFIG_OF_ADDRESS) && defined(CONFIG_HAS_DMA)
>   int of_dma_get_range(struct device_node *np,
>   		const struct bus_dma_region **map);
> +int of_dma_set_restricted_buffer(struct device *dev);
>   #else
>   static inline int of_dma_get_range(struct device_node *np,
>   		const struct bus_dma_region **map)
>   {
>   	return -ENODEV;
>   }
> +static inline int of_dma_get_restricted_buffer(struct device *dev)
> +{
> +	return -ENODEV;
> +}
>   #endif
>   
>   #endif /* _LINUX_OF_PRIVATE_H */
> 


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:40:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:40:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116369.222114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZw2P-0007FW-EC; Fri, 23 Apr 2021 13:40:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116369.222114; Fri, 23 Apr 2021 13: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 1lZw2P-0007Eq-9e; Fri, 23 Apr 2021 13:40:05 +0000
Received: by outflank-mailman (input) for mailman id 116369;
 Fri, 23 Apr 2021 13:40:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZw2N-0006yk-Ev
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 13:40:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 127b2cdc-7bee-43ad-b4be-d8a73e2f12a2;
 Fri, 23 Apr 2021 13:40:02 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 93370AECD;
 Fri, 23 Apr 2021 13:40:01 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 127b2cdc-7bee-43ad-b4be-d8a73e2f12a2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619185201; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=XxyV6rigVW3ooS9I7J7VaPdcEyC+YuZAYRQuOTJCg5I=;
	b=a8JQsvmYC2AGVFW0QrzV6+ZAaDlPVuvBHZ5d6eYscg6l5Fi+todh7CSb1kzUpefM786FmV
	hUJKnS9PKEDwN9katmQkR+agUYxThuuzZ4A4gKwYpW7hHnOYAMW68YsPyAA6G14ZT2kzG/
	ClM+XBIiUduIXvm24AgFZyWMrZJnZPE=
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
To: =?UTF-8?B?0JPQtdC+0YDQs9C40Lkg0JfQsNC50YbQtdCy?= <zaytsevgu@gmail.com>
Cc: xen-devel@lists.xen.org, Sergey Kovalev <valor@list.ru>
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
 <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
 <57478641-ed64-32bd-a577-428a50c880e2@suse.com>
 <33f08c57-08f7-b6c3-02ed-2b66c35665f2@list.ru>
 <CADyHojEFuM8mrdyBpQCO+_OJsijfi6nR5YjbHxE3dkTqbAq23Q@mail.gmail.com>
 <3fa1051f-705c-fdf9-272d-69dd9e7dc01d@suse.com>
 <CADyHojFyzqRKHp4aWUFysnHbb3i0tMvM6wEAEd8Y1HHwGkncyQ@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d4fcc303-24c0-6f35-f3d1-d514eeea022c@suse.com>
Date: Fri, 23 Apr 2021 15:40:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <CADyHojFyzqRKHp4aWUFysnHbb3i0tMvM6wEAEd8Y1HHwGkncyQ@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 15:30, Георгий Зайцев wrote:
> Thanks, but now I'll need to understand what your quoted "frozen" and
>> "unfrozen" mean. Plus obviously comparators and main counter are also
>> different, and it's there where I suspect the issue is
> 
> "frozen" - this is initial snapshot which takes about from 30 seconds to 1
> minute after restore to start dispatching timer interrupts to windows guest
> "unfrozen" - this is state which taken after restoring "frozen" one and
> waiting 90 seconds when guest start receiving interrupts and starts working
> as expected

So I misunderstood Sergey's original mail - HPET_TN_PERIODIC is clear
immediately after restore, and becomes set some time later. That's
still nothing we can do behind the OSes back. If the OS has cleared
the bit, we need to keep it clear.

Jan

> we also made some another snapshots (again after restoring from initial
> "frozen" one) when system still in 'freezed" state (about ~20-30 seconds
> from start of restore process) and in this snapshots HPET state stays the
> same as in initial "frozen" state except mc64 field:
> capabiliy: f424008086a201
> res0: 0
> config: 3
> res1: 0
> isr: 0
> res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0]
> mc64: 9bafb6e4e
> res3: 0
> timer0:
>         config: f0000000002934
>         cmp: fd4aa84c
>         fsb: 0
>         res4: 0
> timer1:
>         config: f0000000000130
>         cmp: ffffffff
>         fsb: 0
>         res4: 0
> timer2:
>         config: f0000000000130
>         cmp: ffffffff
>         fsb: 0
>         res4: 0
> period[0] = ee6b2
> period[1] = 0
> period[2] = 0
> 
> пт, 23 апр. 2021 г. в 16:21, Jan Beulich <jbeulich@suse.com>:
> 
>> On 23.04.2021 15:10, Георгий Зайцев wrote:
>>>>
>>>> Since
>>>> you've taken apart saved state, could you supply the full set of
>>>> values (ideally multiple ones, if you happen to have them, plus
>>>> ones where the problem didn't occur, to allow someone perhaps
>>>> spot a pattern)?
>>>>
>>>
>>> Here is full HPET state from "frozen" snapshot according to hvm_hw_hpet
>>> structure:
>>>
>>> capabiliy: f424008086a201
>>> res0: 0
>>> config: 3
>>> res1: 0
>>> isr: 0
>>> res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
>> 0,
>>> 0, 0]
>>> mc64: 97b90bc74
>>> res3: 0
>>> timer0:
>>>         config: f0000000002934
>>>         cmp: fd4aa84c
>>>         fsb: 0
>>>         res4: 0
>>> timer1:
>>>         config: f0000000000130
>>>         cmp: ffffffff
>>>         fsb: 0
>>>         res4: 0
>>> timer2:
>>>         config: f0000000000130
>>>         cmp: ffffffff
>>>         fsb: 0
>>>         res4: 0
>>> period[0] = ee6b2
>>> period[1] = 0
>>> period[2] = 0
>>>
>>> This one taken from snapshot of "unfrozen" one:
>>>
>>> capabiliy: f424008086a201
>>> res0: 0
>>> config: 3
>>> res1: 0
>>> isr: 0
>>> res2: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
>> 0,
>>> 0, 0]
>>> mc64: acbd23c57
>>> res3: 0
>>> timer0:
>>>         config: f000000000293c
>>>         cmp: acbd3761b
>>>         fsb: 0
>>>         res4: 0
>>> timer1:
>>>         config: f0000000000130
>>>         cmp: ffffffff
>>>         fsb: 0
>>>         res4: 0
>>> timer2:
>>>         config: f0000000000130
>>>         cmp: ffffffff
>>>         fsb: 0
>>>         res4: 0
>>> period[0] = ee6b2
>>> period[1] = 0
>>> period[2] = 0
>>>
>>> The only difference is HPET_TN_PERIODIC flag for timers[0].config value
>>
>> Thanks, but now I'll need to understand what your quoted "frozen" and
>> "unfrozen" mean. Plus obviously comparators and main counter are also
>> different, and it's there where I suspect the issue is.
>>
>> Jan
>>
> 



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:40:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:40:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116373.222126 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZw2t-0007WZ-M9; Fri, 23 Apr 2021 13:40:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116373.222126; Fri, 23 Apr 2021 13:40: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 1lZw2t-0007WS-Iw; Fri, 23 Apr 2021 13:40:35 +0000
Received: by outflank-mailman (input) for mailman id 116373;
 Fri, 23 Apr 2021 13:40:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Q/M9=JU=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZw2r-0007WC-QR
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:40:34 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d0b97940-5df1-404d-b9b8-d786862e045c;
 Fri, 23 Apr 2021 13:40: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: d0b97940-5df1-404d-b9b8-d786862e045c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619185232;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=c/EMLnTQmz9tZVZTkv8+gBCTup5d/0HUqAY+kzVEDek=;
  b=Pv2GvSP/yMP+Ba0f+M0IO3wV722Lm29LpfaOj5bPu06ZUlF4CkbhYlTu
   +1XwoI9YOyscVaE2wC6gCeAfVZV8KRgmG4q/hyBQNzWvHfwDVx364cDw2
   3nASPV9Nyubq5NhrhzUNUZ9WnsA6pxI+0+AAQZ+ZLLBU+R/fAKfZPTkiw
   I=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 3VEhdjWMKy2BGor2x5M3+d2rNgPPsuHHq5j0nXIPg5bHIAN4HZq4Cz/Y8xLEQkxiI1x8bnTVb1
 cOIHrRTePaVIuNdjZMMxejI3EGo9PwSoo7wcVxYBeuiFPxJ35oe2jPGaMNbWUwC8DaPx/mFIjw
 utA+M/rwZaYuJ0ObvxGttF8dcjigb4ZuooMs89OkJoV1cpHB/f7vQsBZ/Id0BKCeImiBHA4y3+
 4yWA9a9nybZFBkQR3S6bcvX3F7CkGllG3YHwJ1HEUROZYdyAKiG0sWQDTHoai2Is1N3ftDDGLb
 H1o=
X-SBRS: 5.2
X-MesageID: 42658315
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:udVpEKmptTkuIgBvBFxOVCCKyivpDfOBj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN/AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 tdWoBEIpnLAVB+5PyW3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0ZNi+wOCRNNWx7LLA+E4
 eR4dcCgjKmd2geYMjTPAh7Y8HoodrXmJX6JSMcDxk85wWUyR+u4rj2Ex+Xty1uLw9n67Ek7G
 TDjkjF9ryu2svLtyP0+k3yy9BtmNXnwsZeH8DksKYoAxjllwrAXvUYZ5SspzYwydvfj2oCsN
 6JmBs4OtQ21nW5RBDOnTLI+y3NlAkj8GXjz1jwuwqRneXcSCghA8RMwaJ1GyGpknYIh9133K
 JV02/xjfM+Znmh7UeNkuTgbB1kmlG5pnAvi4co/hhieLATdaNLqsgn9F5Vea1wbB7S0pwtE+
 VlEajnlZBrWG6dBkqp3FVH/MahRTAaEBuAXyE5y7eo+gkTtnV4w0wE/dcYj3cN+bksIqM0lt
 jsA+BGkqpDQdQRar84LOAdQdGvAmiIeh7UNnmOSG6XW50vCjbokdra8b817OaldNghy4Yzoo
 3IVBd9uXQpc0zjJMWS1PRwg17waVT4eQ6o5tBV5pB/tLG5bqHsKze/RFcnlNbli+kDA+XAMs
 zDe65+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49Rhanvt/LEIv3rebWGcyjZIbFIHIBYCfSE3
 EDVD/8KIFr9UawQEL1hxDXRjfDYUr60ZVsELXL3uQaxYQXX7c89zQ9uBCc3IWmODdCuqs5cA
 9VO7X8iJ62omGw4CLp4gxSS15gJ3cQxI+lf2JBpAcMPU+xW60Eoc+jdWdb22bCAhd+SsjRAT
 NOvlgfw9PxE7WggQQZT/63OGOTiHUe4FiQSY0Hp6GF7cD5PrQ1E4ghQ640MQnQDRR6lUJLpQ
 54GU45b36aMgmrpbSujZQSCu2aXcJ7mh2XLcldrm+ak16dq8EpTn4yRCWvTsaTvAYrS1Nv9x
 9M2p5apIDFtSekKGM5juh9GkZLcn6rDLVPCxnAWJ9ZgYnxeAZ7TX6DgBuTjx1bQButy2wiwk
 jaaQGEc/DCBVRQ/lRVyLzj/l9PemKBRE5ocXxhvYphFWPJh2Zr3YawF9iO+lrUTmFH7vAWMT
 nDbzdXGA9oytyt/DO+mTqJFxwdt98TF92YKI5mX6DY23urJoHNqLoPGOVM+o15cPr0tPUQbO
 6ZcwiJDT/xBu8zwTaJrnI9NCQckgh8rdrYnDneqESo1n82BvTfZGl8T7YAOteG8izKQe2L3J
 gRt6N9gcKAdkHKLviIxqHcY2Qddlf9oWuqQ/oprp4Rl6Qor7d3F4TaVzyN9Hwv5mRIEO7E0G
 clBIJ86/T9H6UqWeo4USdQ5EAom9SCN1FDiH28PsYOOXUWy0bGNNaI6YfSobUhAke9tBL9UG
 PvhxF1zrPgZW+/zrYUBKI7HHROZGU94Hpk+vmed4e4MnTdS8hzuH67OGS6arlTVeysHqgRtA
 9z57iz7qKqXhu9/ADbpj1gJK1St06hXMOpGQqJXcpF6cazN1jJoqyk5qeI/XvKYAr+T0QTno
 tec0MMKuxFlzk5lYUylhGIdZafmDNsr3JupRd9llDs3YC64GDUWWF+WDep/Kl+bH10KXiHjc
 PM7O6C8m/yiQI1gaX+KA==
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42658315"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lQOJJ3qJlflyySO1t4/A+RVpWknxfUijVUK2pSPxp8aa8vDjcUBve6h+AxATyhxxVbE411bijifo6Hz21bA7Wy9HaMHwck7SH7UK5+BwlLWm049j4WsBzgq9W7YAiFFaW35XFXOXUU+2InB4lP0cK33IS0LYtSyazqCDuoXTERCc79n9lx5LcBRtL8EAzbKdy2X45TcN+KpjsWVnEWh1YZY/v+BaWGasaV/K5RI4HDL4jVDoD98lsn7S2QDfyrt1x++5VfG8VS1Ln/DcS/Zh9hiU8rVcU6m8x1itwwpXoKVbenKES/B2b+XroJ1N+FcTW1Mj+PdWsU2UNSaeeJ+5hQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YMAidUQ0DrttpQtCJRf4LM3szzqXRUunIkHby37Sh9g=;
 b=D9czFeRnVHbNiKZDWSC5XGbNOGpPQeVfGlrgVQQSYqG4kAZvUbqW8QiPhp0kqXnZctw12EVlZNdCXqAfzyzP4RP/ndRzWEeft3Lj+qFbOL8FJDy1OBGePFRQRTj7KKh96Ghw/IpLNRU2Y/CuDeDOj6vBzDwrzFgSXSUVRkXRTO46FBodTnIP0u9W208eoVgfdwLICvu/tF7V4ifxPJORpss90cjOJGQlyfsSHbnJ6jbL2oKLNa8Fe1kCV5yLxvpMpCB+enSzMs7qTfia38QWj/Q3A44BTaOSUUcIm9FUTYJNaxg7FJU/q542RSezJ6q3S6TMXDa1fP5Egd0hHrFLGQ==
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=YMAidUQ0DrttpQtCJRf4LM3szzqXRUunIkHby37Sh9g=;
 b=Vyn25IOpJ6cDVBDyz2PL6HxupklbUHPmy7Hayory2S9JTTGwHo+guSTsmpwuzw60ypQ8WpxD6owD8tGxJ9lJ9iTWXptqscVZMqtyOi+pty4Q/40nD0SikNppfob8wlJApjGzH1ZoShJrFS2BRG66lC4c342ni8Hh04r3qUus6T4=
To: Jan Beulich <jbeulich@suse.com>, Roger Pau Monne <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>, <xen-devel@lists.xenproject.org>
References: <20210423123509.9354-1-roger.pau@citrix.com>
 <7d77cd67-5866-9d58-b2d0-b8d28b827084@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/oprofile: remove compat accessors usage from
 backtrace
Message-ID: <92cc118b-3780-5d0e-d529-88f7b025b516@citrix.com>
Date: Fri, 23 Apr 2021 14:40:03 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <7d77cd67-5866-9d58-b2d0-b8d28b827084@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0446.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:e::26) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: dd2c8a3c-0ce5-45b8-1817-08d9065d50df
X-MS-TrafficTypeDiagnostic: BY5PR03MB5284:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB52848A941A9C4D0CF60E31BDBA459@BY5PR03MB5284.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Nomo8EINOShKQN0R3lHGqBmOF4sFq0/ptUSV7/jKC8KgMh6pFBvSQtd2Mg9IKKH83pzOCzLn5SsL5s9oiQZW3j5viw6FL7JXBbz4RQq2lxsk9DSSbUIu0wzRJHosDsFswFELjjlL6kBTqXFDhDCYcjAyzkzSUi5A3DPt0kAlpoMb7GOP1k3ABNOoZvEjBiHp66LrHlJ3Wdjp7en5M0JmCNlRDLCE2r3W7BUioUrc7a76R9N3R3g0SHGdESfLMMcIEDGOJJYrwINANPuOzBBxxDlOw5CdTH8tvqm/tV3RbFOVcQX0XGq3JtvIDHkENhgFpv9KwMM8+ntSse1ZlqGVUTBrLvrMOSCGi/Ou7xGAyXG8obELxEf1+EitVVWKGkV3jdfara71onoiL8UsEFM525NCfLc6qGlvSg05/OIdJIB1ZMX6Vt+JG9nL1TvXdDqyGLfUWWqjNIJys/bDJed4RsZQ7E8M0lIp/tRlLoXUhD5ogDem/tCayp7FFREGrVm2K5xC56Fu+CS5G96mXW8CH7M43xW7AsCYTUlW0CL6QpvvdPzs2hgPA+O8s1m/T6DmsIMevhrUSG6RHXqlMf2VD/f96nWFVVuk/iLTWVjcm0ZVydMoEYJFQzQOSyGXub4zreO01tHQTz0pkLHAeDxehRuy/+ZjB4ufzY+ZRX0g5fWarW9co6t1ez+vnDarATuQ
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39860400002)(376002)(136003)(366004)(346002)(66946007)(66476007)(36756003)(53546011)(110136005)(5660300002)(66556008)(38100700002)(4326008)(83380400001)(478600001)(8936002)(86362001)(31696002)(6486002)(31686004)(26005)(186003)(16526019)(8676002)(6666004)(2906002)(6636002)(316002)(16576012)(956004)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: dd2c8a3c-0ce5-45b8-1817-08d9065d50df
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 13:40:11.1646
 (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: 1W2CSvPIlo1cZdHhbx0W5PPyi2bkbO1+HHO7OL60zZpjHGWeZaBg/anCvuI8YAIb/C0q7a3vv5Jzxc8hFOZ9dwSslAZeLuYlK1wj9zbzBt8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5284
X-OriginatorOrg: citrix.com

On 23/04/2021 13:53, Jan Beulich wrote:
> On 23.04.2021 14:35, Roger Pau Monne wrote:
>> Remove the unneeded usage of the compat layer to copy frame pointers
>> from guest address space. Instead just use raw_copy_from_guest.
>>
>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
>> ---
>> Just build tested. Note sure I'm missing something, since using the
>> compat layer here was IMO much more complicated than just using the
>> raw accessors.
> The main reason, I suppose, was that raw_copy_*() aren't supposed to
> be used directly.
>
>> @@ -59,34 +56,17 @@ dump_guest_backtrace(struct vcpu *vcpu, const struct=
 frame_head *head,
>>  {
>>      frame_head_t bufhead;
>> =20
>> -#ifdef CONFIG_COMPAT
>>      if ( is_32bit_vcpu(vcpu) )
>>      {
>> -        DEFINE_COMPAT_HANDLE(frame_head32_t);
>> -        __compat_handle_const_frame_head32_t guest_head =3D
>> -            { .c =3D (unsigned long)head };
> You're losing the truncation to 32 bits here.
>
>>          frame_head32_t bufhead32;
>> =20
>> -        /* Also check accessibility of one struct frame_head beyond */
>> -        if (!compat_handle_okay(guest_head, 2))
>> -            return 0;
> If you intentionally remove this and ...
>
>> -        if (__copy_from_compat(&bufhead32, guest_head, 1))
>> +        if (raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)))
>>              return 0;
>>          bufhead.ebp =3D (struct frame_head *)(unsigned long)bufhead32.e=
bp;
>>          bufhead.ret =3D bufhead32.ret;
>>      }
>> -    else
>> -#endif
>> -    {
>> -        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =3D
>> -            const_guest_handle_from_ptr(head, frame_head_t);
>> -
>> -        /* Also check accessibility of one struct frame_head beyond */
>> -        if (!guest_handle_okay(guest_head, 2))
>> -            return 0;
> ... this, then you should justify why these aren't needed anymore
> (or maybe were never really needed). They've been put there for a
> purpose, I'm sure, even if I'm unclear about what one it was/is.

I don't see what purpose they serve at all.=C2=A0 The OK checks only look f=
or
encroachment into the Xen virtual range.

The two cases where this does anything, is userspace with a stack
immediately adjacent to the lower canonical boundary (which doesn't
happen in practice because of the astounding number of errata there), or
for PV32 kernels with a stack at the legacy Xen boundary.

~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:46:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:46:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116379.222138 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZw8k-0007th-C3; Fri, 23 Apr 2021 13:46:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116379.222138; Fri, 23 Apr 2021 13:46: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 1lZw8k-0007ta-8v; Fri, 23 Apr 2021 13:46:38 +0000
Received: by outflank-mailman (input) for mailman id 116379;
 Fri, 23 Apr 2021 13:46:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eGXB=JU=arm.com=robin.murphy@srs-us1.protection.inumbo.net>)
 id 1lZw8i-0007tV-W7
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:46:37 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id a192a1a4-f586-4472-9fae-336961922610;
 Fri, 23 Apr 2021 13:46:35 +0000 (UTC)
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 9E1CE1063;
 Fri, 23 Apr 2021 06:46:34 -0700 (PDT)
Received: from [10.57.62.63] (unknown [10.57.62.63])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 903A33F73B;
 Fri, 23 Apr 2021 06:46: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: a192a1a4-f586-4472-9fae-336961922610
Subject: Re: [PATCH v5 14/16] dma-direct: Allocate memory from restricted DMA
 pool if available
To: Claire Chang <tientzu@chromium.org>, Joerg Roedel <joro@8bytes.org>,
 Will Deacon <will@kernel.org>, Frank Rowand <frowand.list@gmail.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, boris.ostrovsky@oracle.com,
 jgross@suse.com, Christoph Hellwig <hch@lst.de>,
 Marek Szyprowski <m.szyprowski@samsung.com>
Cc: benh@kernel.crashing.org, paulus@samba.org,
 "list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
 sstabellini@kernel.org, grant.likely@arm.com, xypron.glpk@gmx.de,
 Thierry Reding <treding@nvidia.com>, mingo@kernel.org,
 bauerman@linux.ibm.com, peterz@infradead.org,
 Greg KH <gregkh@linuxfoundation.org>, Saravana Kannan
 <saravanak@google.com>, "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
 heikki.krogerus@linux.intel.com,
 Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
 Randy Dunlap <rdunlap@infradead.org>, Dan Williams
 <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>,
 linux-devicetree <devicetree@vger.kernel.org>,
 lkml <linux-kernel@vger.kernel.org>, linuxppc-dev@lists.ozlabs.org,
 xen-devel@lists.xenproject.org, Nicolas Boichat <drinkcat@chromium.org>,
 Jim Quinlan <james.quinlan@broadcom.com>, tfiga@chromium.org,
 bskeggs@redhat.com, bhelgaas@google.com, chris@chris-wilson.co.uk,
 daniel@ffwll.ch, airlied@linux.ie, dri-devel@lists.freedesktop.org,
 intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com,
 jxgao@google.com, joonas.lahtinen@linux.intel.com,
 linux-pci@vger.kernel.org, maarten.lankhorst@linux.intel.com,
 matthew.auld@intel.com, nouveau@lists.freedesktop.org,
 rodrigo.vivi@intel.com, thomas.hellstrom@linux.intel.com
References: <20210422081508.3942748-1-tientzu@chromium.org>
 <20210422081508.3942748-15-tientzu@chromium.org>
From: Robin Murphy <robin.murphy@arm.com>
Message-ID: <70b895c2-4a39-bbbd-a719-5c8b6b922026@arm.com>
Date: Fri, 23 Apr 2021 14:46:25 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210422081508.3942748-15-tientzu@chromium.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

On 2021-04-22 09:15, Claire Chang wrote:
> The restricted DMA pool is preferred if available.
> 
> The restricted DMA pools provide a basic level of protection against the
> DMA overwriting buffer contents at unexpected times. However, to protect
> against general data leakage and system memory corruption, the system
> needs to provide a way to lock down the memory access, e.g., MPU.
> 
> Signed-off-by: Claire Chang <tientzu@chromium.org>
> ---
>   kernel/dma/direct.c | 35 ++++++++++++++++++++++++++---------
>   1 file changed, 26 insertions(+), 9 deletions(-)
> 
> diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
> index 7a27f0510fcc..29523d2a9845 100644
> --- a/kernel/dma/direct.c
> +++ b/kernel/dma/direct.c
> @@ -78,6 +78,10 @@ static bool dma_coherent_ok(struct device *dev, phys_addr_t phys, size_t size)
>   static void __dma_direct_free_pages(struct device *dev, struct page *page,
>   				    size_t size)
>   {
> +#ifdef CONFIG_DMA_RESTRICTED_POOL
> +	if (swiotlb_free(dev, page, size))
> +		return;
> +#endif
>   	dma_free_contiguous(dev, page, size);
>   }
>   
> @@ -92,7 +96,17 @@ static struct page *__dma_direct_alloc_pages(struct device *dev, size_t size,
>   
>   	gfp |= dma_direct_optimal_gfp_mask(dev, dev->coherent_dma_mask,
>   					   &phys_limit);
> -	page = dma_alloc_contiguous(dev, size, gfp);
> +
> +#ifdef CONFIG_DMA_RESTRICTED_POOL
> +	page = swiotlb_alloc(dev, size);
> +	if (page && !dma_coherent_ok(dev, page_to_phys(page), size)) {
> +		__dma_direct_free_pages(dev, page, size);
> +		page = NULL;
> +	}
> +#endif
> +
> +	if (!page)
> +		page = dma_alloc_contiguous(dev, size, gfp);
>   	if (page && !dma_coherent_ok(dev, page_to_phys(page), size)) {
>   		dma_free_contiguous(dev, page, size);
>   		page = NULL;
> @@ -148,7 +162,7 @@ void *dma_direct_alloc(struct device *dev, size_t size,
>   		gfp |= __GFP_NOWARN;
>   
>   	if ((attrs & DMA_ATTR_NO_KERNEL_MAPPING) &&
> -	    !force_dma_unencrypted(dev)) {
> +	    !force_dma_unencrypted(dev) && !is_dev_swiotlb_force(dev)) {
>   		page = __dma_direct_alloc_pages(dev, size, gfp & ~__GFP_ZERO);
>   		if (!page)
>   			return NULL;
> @@ -161,8 +175,8 @@ void *dma_direct_alloc(struct device *dev, size_t size,
>   	}
>   
>   	if (!IS_ENABLED(CONFIG_ARCH_HAS_DMA_SET_UNCACHED) &&
> -	    !IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) &&
> -	    !dev_is_dma_coherent(dev))
> +	    !IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) && !dev_is_dma_coherent(dev) &&
> +	    !is_dev_swiotlb_force(dev))
>   		return arch_dma_alloc(dev, size, dma_handle, gfp, attrs);
>   
>   	/*
> @@ -172,7 +186,9 @@ void *dma_direct_alloc(struct device *dev, size_t size,
>   	if (IS_ENABLED(CONFIG_DMA_COHERENT_POOL) &&
>   	    !gfpflags_allow_blocking(gfp) &&
>   	    (force_dma_unencrypted(dev) ||
> -	     (IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) && !dev_is_dma_coherent(dev))))
> +	     (IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) &&
> +	      !dev_is_dma_coherent(dev))) &&
> +	    !is_dev_swiotlb_force(dev))
>   		return dma_direct_alloc_from_pool(dev, size, dma_handle, gfp);
>   
>   	/* we always manually zero the memory once we are done */
> @@ -253,15 +269,15 @@ void dma_direct_free(struct device *dev, size_t size,
>   	unsigned int page_order = get_order(size);
>   
>   	if ((attrs & DMA_ATTR_NO_KERNEL_MAPPING) &&
> -	    !force_dma_unencrypted(dev)) {
> +	    !force_dma_unencrypted(dev) && !is_dev_swiotlb_force(dev)) {
>   		/* cpu_addr is a struct page cookie, not a kernel address */
>   		dma_free_contiguous(dev, cpu_addr, size);
>   		return;
>   	}
>   
>   	if (!IS_ENABLED(CONFIG_ARCH_HAS_DMA_SET_UNCACHED) &&
> -	    !IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) &&
> -	    !dev_is_dma_coherent(dev)) {
> +	    !IS_ENABLED(CONFIG_DMA_DIRECT_REMAP) && !dev_is_dma_coherent(dev) &&
> +	    !is_dev_swiotlb_force(dev)) {
>   		arch_dma_free(dev, size, cpu_addr, dma_addr, attrs);
>   		return;
>   	}
> @@ -289,7 +305,8 @@ struct page *dma_direct_alloc_pages(struct device *dev, size_t size,
>   	void *ret;
>   
>   	if (IS_ENABLED(CONFIG_DMA_COHERENT_POOL) &&
> -	    force_dma_unencrypted(dev) && !gfpflags_allow_blocking(gfp))
> +	    force_dma_unencrypted(dev) && !gfpflags_allow_blocking(gfp) &&
> +	    !is_dev_swiotlb_force(dev))
>   		return dma_direct_alloc_from_pool(dev, size, dma_handle, gfp);

Wait, this seems broken for non-coherent devices - in that case we need 
to return a non-cacheable address, but we can't simply fall through into 
the remapping path below in GFP_ATOMIC context. That's why we need the 
atomic pool concept in the first place :/

Unless I've overlooked something, we're still using the regular 
cacheable linear map address of the dma_io_tlb_mem buffer, no?

Robin.

>   
>   	page = __dma_direct_alloc_pages(dev, size, gfp);
> 


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:50:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:50:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116384.222150 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwCs-0000L1-UQ; Fri, 23 Apr 2021 13:50:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116384.222150; Fri, 23 Apr 2021 13: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 1lZwCs-0000Ku-R0; Fri, 23 Apr 2021 13:50:54 +0000
Received: by outflank-mailman (input) for mailman id 116384;
 Fri, 23 Apr 2021 13:50:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Q/M9=JU=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lZwCr-0000Kl-Vf
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:50:54 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 528f8f19-b7d9-4caa-8662-55f70936ccce;
 Fri, 23 Apr 2021 13:50: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: 528f8f19-b7d9-4caa-8662-55f70936ccce
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619185852;
  h=subject:to:references:from:message-id:date:in-reply-to:
   content-transfer-encoding:mime-version;
  bh=f7n9y6DY6W1fiI4umbmYYhGAhScCxzCUlwlRstZzDLU=;
  b=EGbBhrQ/DJkBTEOFAa3yMyI0cIaoU1PvEM0m1BK3ofGU9KrSzDYDpk/k
   kT918wciFjULStvSAcFpHL7pxTbOfxHKczmd11iTWt7hEcSAYsYx0uMhu
   eaVeMdt5McXbIAWpXiLVBZ0ahaL0aB7OiRVI5VuXrkcBRmsNEagoxqyGs
   4=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: A5wRHdE1pReb1u7l9s1Jpl8Yh2Ayed8BziryQ4QyvY1mQo2WxoxAcGwlKW83gdf9UVVaFq24Hx
 Az0MZ96xx0QmfpLa+z2ltKKR6jglyfS998KRojDOfHX10jnxoUVT5sQPiZOGqzKibshYoLJr0Q
 t6fVfmuSmGrAFoBFl0n4aE8MZctW1vbTf0O44z6x6iM2iMgDxUegCCRmc/OLydN4b3bQ9jhXcC
 v2ENyf5vpsSm/UpetR489M25iLLuQyNCF3mjtNxpDS6PRYnsztH5i9HxJsV7o7N2bb8iWLThEW
 6s8=
X-SBRS: 5.2
X-MesageID: 42276964
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:AOac5q4sDm/69DtAdQPXwVmEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotn6Bp0DRveN0VwShVPC5ZRLu
 vh2uNsoT28dXMLKvmhDn4eUOTZ4/HNnpTqYRkJbiRXlTWmpzWu9bL8Dlykzg4TOgk/u4sK3E
 rkt0jC5qulu+ym0RO07QHuxrlfhdeJ8Ko7OOWikc4QQw+c7TqARIMkYLGauSBwnefH0idQrP
 DpgzMNe/t+8GnQeGbdm2qc5yDF3Cw143HvjX+06EGTx/DRfz4xB8pfiY8xSHKwgCBBzbIMop
 5j5G6Xu4FaChnNhk3Glrz1fipni1aupj4amfMT5kYvILc2UqNbroAU4SpuYfU9NR/9gbpXdd
 VGMNvR/7J/f1+cchnizxFS6e3pdHEyEhCae1MFq8yY3hNH9UoJsXcw9YgxmGwN+4k6TIQBz+
 PYMr5wnLULdcMOa7lhbd1xDPefOyjoe1bhIWiSKVPoGOUuPG/MkYf+5PEQ6PuxcJIF4ZMukP
 36IR9lnF93X3irJdyF3ZVN/ByIan66Ry7RxsZX4IU8kqHgRZLwWBfzCWwGoo+FmbEyE8fbU/
 G8NNZ9GPn4N1bjHo5PwknXR4RSE38DS8cY0+xLFW6mk4buEMnHp+bbePHcKP7GCjA/QF7yBX
 MFQXzdP8NFwke3WmLpoRTYVn/3E3aPvq5YIez/xaw+2YINPopDvkw+klKi/PyGLjVEr+gXcS
 JFUfHau5L+gVPz0XfD7m1vNBYYJF1S+q/cX3RDohJPF0v1dL0EquiOYGw65grDGjZPC+ftVC
 JPrVV+/qy6a7aKwzo5Nt6hOmWGy1weuWyNVJVZvqGY/8/qdtcZA/8dKeNMPDSOMyYwtRdhqW
 9FZgNBbFTYDCnShaKsi4FRIvreedl6iAKCOtVVtnrbiEWZqagUNzsmdg/rdfTSrRclRjJSiF
 E02bQYmqC8lTGmLnZ6vP41K2RWaGOcAKtPCSOMYIk8oMGuRChACUOxwRCKgRA6fWTns2EfnH
 boIyGvdfbXOVZFoXxD3qH28FR7S3WFcytLGwNHmLw4MV6Dlmd40OeNaKb26WeXZ1cY6sw2MT
 3OY1IpU0tT7uHy8CTQtCeJFH0gyJlrA/fUC647darPnlm3LpeTqK0AF/hI3ZpsOdz0qNUXWe
 aHdwL9FkK+N8oZnyiu4lArNyl/pCN6zbfG2Bj54HO523B6K/zIO1hiT6waJdbZz2WMfYf97L
 xJyfYO+c23OSHNT/TD74f9RTtKMAnSrm67VPtAk+EcgYsC8J9IW6DGWj7J3kxd1BowLM3IhF
 oTKZ4LlYzpC8tKRYguYCpX8VoiqcSXIGYqugLwBPUifVtFtQ6tA/q5p57Jo6EoGEuPuU/ZPk
 Se6TRU+57+LmC+/I9fL6I7OmJNbkcgrFxk4eOZboXVTCGnbftK8lb/EnizdtZmOeK4MIRVih
 Zx+NeTmeCLMwL+xQDLpDN+Zpt0zFzPe7LFPCu8XchS89K7PlyQgqylpO6L5Q2HNgeTWgA/no
 1KdUsZc8JZrCIt5bdHlBSPdg==
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42276964"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TxcrKqQDev7FQICtbdgnUw0h0sGXn+TJfI2m+gW5KdhZtnhG+pRd3j02wQUAc4xqZAN2s/N5BWeU6OHuFyumEy/MZpIh2VyxZSRPUD6gaFchZHMRlJ8snbnsGyzlY/zEpH44tkFDcl3/qhJoHqjlVSU0in/ZTItQvLlbm2G6FaZ200pVifFXWr9mGngtfHGlugSm3hZwbvEHBOvcbLpC5leaD+jURPGd68zLVqSnryxHIoqRXd68JeB0gXlh2vYEux5CpLCZMC/+LQwdhvSTrUHWLimBSVwO3TfuBOLizd2TptygHoY9LyDGltoiP+YgyEoXqV8CrkqaXO4gTFkrwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E3JarhgN2oZ2sKovCT3MqZGx9SBCRc+5Nra94LPLA0Q=;
 b=ChdhNogEQUwqkYiBQilHxeicUNdWFsOTWMou5g72TyN4zgJ9qHjOyYFMj4RnAK5PNpnEKwuieipiFQ1VK4Nck+AazAQh6qPxLcvVB4es78GnRifGTC6NXdkJ9PLKLt3PdAmUwmgs2PNALlew/rCPBXZzZZRm/INPPVppZcZNE6ecld91NG2xE3IiWjD8IhIdkL0/lNk2l7RkBVjPUEbSjORrQDfmG35y5spl6nwzNqk7gEqrTWqOPVZ95rIqmTNzI92iQmrT57eyAS8whRCxzZ7cUr5KyFNjd+WXv5iAq4zSZw6xRxLv7NxlgFppJxKK95Iqhc2j6u0nmLaumiamHA==
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=E3JarhgN2oZ2sKovCT3MqZGx9SBCRc+5Nra94LPLA0Q=;
 b=sqnzy6Mz2xevLhYlWRJShQzeEqTFWPQJcojGqI5hRsV75853hm2gM7s0UEFuTxl39sfIDp/Uzs2UWn3FFao7FCRhTcHDD4szj1ly6TDCzinbDXblQ/v0ESfrCXvq0LzMgW1wkZIIuITIYs2puGjgeOVHedfvJBlW+7ei8m4gtz8=
Subject: Re: [PATCH] x86/oprof: fix !HVM && !PV32 build
To: <xen-devel@lists.xenproject.org>
References: <694c9c98-1197-3378-cc43-235e2609c1dd@suse.com>
 <eaed70b7-c387-1ae1-28bf-7d52a4b650ae@citrix.com>
 <caab96a2-3949-9ddb-e6ab-9a95c958e4d6@suse.com>
 <YIKYaCr13TiwxqRq@Air-de-Roger>
 <98d0b627-de38-f7a0-7487-cbf83864c82f@citrix.com>
 <135f8bc2-d07c-c531-e498-9f0e15207cca@suse.com>
 <e386f7eb-8ae8-2f18-b9e8-30a319354ec0@citrix.com>
 <d03bbe0f-6ba3-8383-82cd-be340483f09f@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <36eb2fb6-750e-4a27-9e76-82fcf344029b@citrix.com>
Date: Fri, 23 Apr 2021 14:50:41 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <d03bbe0f-6ba3-8383-82cd-be340483f09f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0068.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:153::19) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ae622e4f-26c4-41b5-3572-08d9065ecbe2
X-MS-TrafficTypeDiagnostic: BYAPR03MB3799:
X-Microsoft-Antispam-PRVS: <BYAPR03MB379915DC125877F1F83F74C9BA459@BYAPR03MB3799.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: W1V8TfyziuYPhhqW1ziJH8ibJuMibpymKKb8MieU15H3KHdPo6Y2MJUq8RrfPHztatkbT5fHpN6OgPDf4l5R9WLonf9yb7rnoMV7s3clwo2nE0KYLJprBN/a63SKGO/dIx0IMzREm8KdHEgNbLM1wVFSbOKpviymRq3+y2SE+HPH2DP6yEC33YYNxcjX/6ZDt4IwSZaZrnWenizq1zvvV8+YbNRTJKQxgdxFNClaTlJF5o94PZ9cCipSxAoks3QikUdgplMM4UfwwOgZDa1PW8APY1oaDvgvzUTehGH6WNK9TAxb0xwmNuvqSa+u0F520tD/tKoIXoZkdzlMNZHRXzhRB5oj5bcFyO9jCYf/yZCTuqtNbrH3fxgPYLi/egOyvBJY2CU1DFYPeb3qaYQ8E3gtrQlqDA45SM+WRb3TTNXRZWgZ0howZgjuzGw/G3WDmP1+hSK+iuvujHszhVVPxR5CUQJFtGOyQVbYDW3jXnUkioqp/IFI3+z4Nx2A/jUhRhekIr81hsk+ZlVXU0Pcj6I9LEZP0Tb3wyvxKj3sIEwBqH1XR0hZlrCOR9fQxhYal2KMQDJa3nTZNIZUo96S0NT9v7+3bfC1SHj+JkASQyafXQbL4W8M8/BrgLb9Je+2yRmFgeJt8DB/1KcIPhj3DJNv0BGkPAvWwvDNENWIqakwvgjT5GFkCIVRw4S5Fd7n
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39850400004)(396003)(376002)(366004)(136003)(38100700002)(956004)(66556008)(6916009)(31696002)(6666004)(316002)(86362001)(16576012)(31686004)(66476007)(83380400001)(2906002)(36756003)(478600001)(6486002)(8936002)(2616005)(53546011)(66946007)(16526019)(26005)(186003)(8676002)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: ae622e4f-26c4-41b5-3572-08d9065ecbe2
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 13:50:47.5882
 (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: NG7V7ZWyh577xp8KEYMgp3tPPAe39BKjmRRor4AMFZxtaJbPqm1IE2+wmxMNvULYp9BtqQuBHCWDx03XEhCpCoKx5mQqE0FkitiBFpqpbUA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3799
X-OriginatorOrg: citrix.com

On 23/04/2021 12:08, Jan Beulich wrote:
> On 23.04.2021 13:04, Andrew Cooper wrote:
>> On 23/04/2021 11:58, Jan Beulich wrote:
>>> On 23.04.2021 12:51, Andrew Cooper wrote:
>>>> On 23/04/2021 10:50, Roger Pau Monné wrote:
>>>>> On Fri, Apr 16, 2021 at 04:20:59PM +0200, Jan Beulich wrote:
>>>>>> On 16.04.2021 15:41, Andrew Cooper wrote:
>>>>>>> On 16/04/2021 09:16, Jan Beulich wrote:
>>>>>>>> clang, at the very least, doesn't like unused inline functions, unless
>>>>>>>> their definitions live in a header.
>>>>>>>>
>>>>>>>> Fixes: d23d792478 ("x86: avoid building COMPAT code when !HVM && !PV32")
>>>>>>>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>>>>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>>>>> I agree this will fix the build.  However, looking at the code, I'm not
>>>>>>> sure the original CONFIG_COMPAT was correct.  In particular, ...
>>>>>>>
>>>>>>>> --- a/xen/arch/x86/oprofile/backtrace.c
>>>>>>>> +++ b/xen/arch/x86/oprofile/backtrace.c
>>>>>>>> @@ -43,6 +43,7 @@ dump_hypervisor_backtrace(struct vcpu *v
>>>>>>>>      return head->ebp;
>>>>>>>>  }
>>>>>>>>  
>>>>>>>> +#ifdef CONFIG_COMPAT
>>>>>>>>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
>>>>>>>>  {
>>>>>>>>      if (is_hvm_vcpu(vcpu))
>>>>>>> ... this chunk of logic demonstrates that what oprofile is doing isn't
>>>>>>> related to the Xen ABI in the slightest.
>>>>>>>
>>>>>>> I think OProfile is misusing the guest handle infrastructure, and
>>>>>>> shouldn't be using it for this task.
>>>>>> I'm afraid I consider this something for another day. Both the
>>>>>> original #ifdef and the one getting added here are merely
>>>>>> measures to get things to build.
>>>>> Acked-by: Roger Pau Monné <roger.pau@citrix.com>
>>>>>
>>>>> Without entering on the debate whether CONFIG_COMPAT is the correct
>>>>> conditional to use it's not making the issue any worse, and it will
>>>>> allow to unblock the build. We can discuss about the CONFIG_COMPAT
>>>>> stuff later.
>>>> I disagree.  Fixing this less effort than the time wasted arguing about
>>>> fixing it.
>>>>
>>>> But if you are going to insist on not fixing it, and putting in a patch
>>>> like this, then at a minimum, it needs to include a TODO comment stating
>>>> that the use of CONFIG_COMPAT is bogus and needs fixing.
>>> I disagree: It is (for now) just you saying this is bogus. The (ab)use
>>> of the handle infrastructure was there before. You could have sent a
>>> fix long ago, therefore, if you were thinking this needs fixing.
>> I only know it needed fixing because you didn't build test your change
>> in CI.  Don't make it out to be my fault I didn't spot this 6 months ago.
>>
>>> I can
>>> see that you have good intentions, but orthogonal issues shouldn't be
>>> used to block necessary adjustments (and this applies to other pending
>>> build fixes as well).
>> You genuinely regressed things for 32bit HVM guests, with the
>> CONFIG_COMPAT change.
>>
>> The code may have been using inappropriate interfaces to perform its job
>> before, but its actually broken now.
> In which way? COMPAT gets selected by both PV32 and HVM.

Hmm ok - with the select in place, I accept that it is only a problem in
principle.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:51:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:51:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116389.222162 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwDP-0000RG-CE; Fri, 23 Apr 2021 13:51:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116389.222162; Fri, 23 Apr 2021 13: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 1lZwDP-0000R8-87; Fri, 23 Apr 2021 13:51:27 +0000
Received: by outflank-mailman (input) for mailman id 116389;
 Fri, 23 Apr 2021 13:51:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZwDO-0000R0-4n
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:51:26 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a8eb185c-81d9-4d34-9ff1-49d23c057518;
 Fri, 23 Apr 2021 13:51: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: a8eb185c-81d9-4d34-9ff1-49d23c057518
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619185884;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=SGiwg/T7XJuysignCfskqqQXoUQWM7Fdgk5SpfAekOI=;
  b=WS+W9ici4PuBGYuRaI1sMPsgPvDB0MIA37cxGxly0U9kup7HmHAIfdqu
   ZtAdtpg+LjdrgEUTbu8N8cbwpull7R0oi3o6PyPl0K9lwRoSd8G6V+cqZ
   IpC9ipEGDaSpAUHG5jm9c5dWuAOejVYlcrzTFwHeF4qfMvzu4igIabmD2
   s=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: +8tgCfwlES+dhLKNE6QFYglt205fRmPGyOucG3OC9aQy3A94rEx8a4KzucpEMeH8ELbn94iRdQ
 7erKGsS6BKnW5c0xy6z3ppiiS91ToP7AUN7bQyjX5Z+yBqZnUM15+kakCiqv3/rEpWVvnIqe2v
 EHw52s/ik+Dk/vYpBWjaUTGQRIRLCTeWmhAB5IY2YAMTrlpyCvLXHrNTAM/krDfaxPOTEx3VvP
 RlXLF+0fZQvY30UyZmqjZwvrywXaEnPWo917T8pGO2sVM2fWbfJzqY2StPjtwsiWbcB2NQEK/l
 MAg=
X-SBRS: 5.2
X-MesageID: 42659258
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:LahlBaDnOm+fJMblHej3sceALOonbusQ8zAX/mpaICY1TuWzkc
 eykPMHkSLugDEKV3063fyGMq+MQXTTnKQFhLU5F7GkQQXgpS+UPJhvhLGSoQHINiXi+odmtZ
 tIXLN5DLTLYmRSqebfzE2GH807wN+BmZrFuc77w212RQ9nL4FMhj0JbjqzKUF9SAlYCZdRLv
 P1jKd6jgGtZGgNaYCDDmQFNtKzwOHjro7sYhINGnccmWqzpA6vgYSVLzGomj0EVSlU+Kwv9W
 jenxbZ6q2vv+qg5R/YymPJ45l8iOHszdZoAsuKhsIJLC6EsG2VTbUkfaaNtDc0s+mz6FAssd
 XFrhs6Jf1p52ncZX64rHLWqm/d7Ao=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42659258"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dM8kMuS7bzYZpQLZ5YPuVXddZQWXHB3DiCnoBTJFsInhoSU7mJuqahauKOwdq/WarziR2wiJ3Ce7GdspbNuHjh1/f3JKfrkbmt2oFqw/9DkXZR/Lqobnr+4tPIj3FNawwbwfme4I/1+nJwcOIYOVv6n6/HicDTRLjqBeZotoa++ijrzqvS1ir0ye0kyclybdQ+IZfKR63pkALuqTJ5U5kcvj7zCH5n5+8kKojAv/Y/p9MyUuXuPZs4TkIzHq7eV1U1gXT1zEdaPducAAXz764G1eiYYyKifNg4H34Uazhxc04Fva7KocwxUKeB2kkqUwtf1YmDujI7XMUP3yxXGTpQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FmFvbmj2re7gSkY5LQiY53/AQqEKEF1QrBZ/XaB/qpw=;
 b=oPU1fJl/EMRqNQ4onICUmR3T0IWgsoC9/a8I0IQJwS6QVN0ioRXPRnVfgcNmBrdxeOY4eVTjcwj+m9qICmqBHQdR5g7syJ6SD36gdBluUYasObInRNcYPHexkDmY+56G128WaIKZs3HKitAh7pNM9506mehVnUFA7opkL8MTMpv5okbwiEjsaZ6qbBSJXvqyvtvYHuD8pImEjOFctyc3/YXjqGab64NYr1KDaoWrJ0nsq/PPTNOcN85efwLzL6obQRKCp8tJazba1HJuv3PqV896GrV9Z6cAq4stVnHsrvLJhSXUtH8e8nDQSsZ9ueBfQEyioq5Gpl5Yh/W14GRx6A==
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=FmFvbmj2re7gSkY5LQiY53/AQqEKEF1QrBZ/XaB/qpw=;
 b=iw7bOEb5gNcbs4cqqD8WFdP24mbejra+qMRl/xTWt5w5NgNGYdahub6bV29C6HL7TuWHJYrnRuv5zjP8JcgYyTSQgMK1Qekkkub5vSWJiUyij0QvnlNa0RqFxeoQ2n8lQlm2/swA4QTQFWHJFIQ3ULj+7AMX2I7Yy8Cb9RUyEs4=
Date: Fri, 23 Apr 2021 15:51:14 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH] x86/oprofile: remove compat accessors usage from
 backtrace
Message-ID: <YILQ0tj8QceN1jaB@Air-de-Roger>
References: <20210423123509.9354-1-roger.pau@citrix.com>
 <7d77cd67-5866-9d58-b2d0-b8d28b827084@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <7d77cd67-5866-9d58-b2d0-b8d28b827084@suse.com>
X-ClientProxiedBy: PR3P193CA0012.EURP193.PROD.OUTLOOK.COM
 (2603:10a6:102:50::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 59589bf1-57c6-43e5-ca19-08d9065edfcd
X-MS-TrafficTypeDiagnostic: DM6PR03MB4218:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4218E848249EFC0C1E0013318F459@DM6PR03MB4218.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: ASJPuzquxJsyXCHBplVV0gqQ3QRpzWFTTlRpSE1/Hn013ZhpDZ2SbcWH2R5EpvWaF0OZI76jbraPVgY/E101mu98ijLYPGNB4tjBdV80zzDyh9REd7Re6F4QLzKnLJr+n045TEdliFz5xFgfpBwzfBln6P+lHl+kIuMmkjTaAeh3MY4UUrIMBCemj1ElkTnOWr0/ZN7Ih9YDmXFCLIRsc//tS9eXX1H+IPf/DY41xWYeewzITNZXwJhK/Np6B7oDzYFTig6PaQRWGZjZ617QSswP2LmVNt+/ScwRsU6qQzTTBcEx48MjFIUUK92i7Xg6wStDY5tSHW6QCZtdQOOtxHy+R8S4d/R+hLx3DPvhZDKihCOa5P1CSp5KEguNwlkzyfftDNcpMlejAAui3ua9+1ERw+F5rlLX0tfblHxkI6+k1V3b2A74Uhul0++Vzsuy2jTCfN/mGV491v7ZnAyl2shtXXDrMr9/85iutQe0m32mcUFDC9cR84GHe9LgFUXhP4STEdpYkdk9PWxZrvr3NTyNJGFc64idm/d3sLUuKjLSYkATJ18pC/wxf3IpmB404hpkeP/VRYJ/vHlZ7qV2ZwFzh5NcgE2uQgqPJzxm80c=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(346002)(376002)(366004)(136003)(396003)(39850400004)(186003)(26005)(6916009)(16526019)(38100700002)(5660300002)(83380400001)(8676002)(54906003)(8936002)(66946007)(4326008)(316002)(478600001)(66476007)(66556008)(86362001)(33716001)(6666004)(9686003)(2906002)(53546011)(85182001)(6496006)(956004)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Gl8ekAdbYHLUpU/tjYYWPbzC90ks75qvWeN3/i2?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 59589bf1-57c6-43e5-ca19-08d9065edfcd
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 13:51:20.4529
 (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: 4Awn9jmXZkXnrnPEjY8Ly45yAmcjlOTVPCcnmsTVCgvGgiOqbx2yfEX3x8XBZryvLtgWxUm1fFZsBjQlUWigEw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4218
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 02:53:14PM +0200, Jan Beulich wrote:
> On 23.04.2021 14:35, Roger Pau Monne wrote:
> > Remove the unneeded usage of the compat layer to copy frame pointers
> > from guest address space. Instead just use raw_copy_from_guest.
> > 
> > Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > Just build tested. Note sure I'm missing something, since using the
> > compat layer here was IMO much more complicated than just using the
> > raw accessors.
> 
> The main reason, I suppose, was that raw_copy_*() aren't supposed to
> be used directly.
> 
> > @@ -59,34 +56,17 @@ dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
> >  {
> >      frame_head_t bufhead;
> >  
> > -#ifdef CONFIG_COMPAT
> >      if ( is_32bit_vcpu(vcpu) )
> >      {
> > -        DEFINE_COMPAT_HANDLE(frame_head32_t);
> > -        __compat_handle_const_frame_head32_t guest_head =
> > -            { .c = (unsigned long)head };
> 
> You're losing the truncation to 32 bits here.

I didn't think it was relevant here, as value should already have the
high bits zeroed?

One being the rbp from the guest cpu registers and the other a
recursive call using bufhead.ebp.

> >          frame_head32_t bufhead32;
> >  
> > -        /* Also check accessibility of one struct frame_head beyond */
> > -        if (!compat_handle_okay(guest_head, 2))
> > -            return 0;
> 
> If you intentionally remove this and ...
> 
> > -        if (__copy_from_compat(&bufhead32, guest_head, 1))
> > +        if (raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)))
> >              return 0;
> >          bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
> >          bufhead.ret = bufhead32.ret;
> >      }
> > -    else
> > -#endif
> > -    {
> > -        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
> > -            const_guest_handle_from_ptr(head, frame_head_t);
> > -
> > -        /* Also check accessibility of one struct frame_head beyond */
> > -        if (!guest_handle_okay(guest_head, 2))
> > -            return 0;
> 
> ... this, then you should justify why these aren't needed anymore
> (or maybe were never really needed). They've been put there for a
> purpose, I'm sure, even if I'm unclear about what one it was/is.

I've been doing some archaeology on Linux and I'm still not sure why
this is required. Linux copies two frame_head{32,}_t elements, so we
could follow suit and do the same - albeit I won't be able to provide
a reasoning myself as to why this is required, the second element
seems to be completely unused.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 13:55:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 13:55:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116397.222174 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwHF-0000nc-So; Fri, 23 Apr 2021 13:55:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116397.222174; Fri, 23 Apr 2021 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 1lZwHF-0000nV-P8; Fri, 23 Apr 2021 13:55:25 +0000
Received: by outflank-mailman (input) for mailman id 116397;
 Fri, 23 Apr 2021 13:55:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZwHE-0000nQ-63
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 13:55:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1e410179-4005-4dc4-be59-52355106fb68;
 Fri, 23 Apr 2021 13:55:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0FA21ADD7;
 Fri, 23 Apr 2021 13: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: 1e410179-4005-4dc4-be59-52355106fb68
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619186122; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=uF42qcj6uAe5IJIPaKlA6x1rKHWEXo6WJFxStEKqz/Y=;
	b=kzVBCtaRe9X+hRFvMnmW+SIphuaCj4nVXkpY6U3tQA0x/gT8CvIsnSOSrETEGalRGZWbRY
	Trm1VUpL9jZJl2yKylWrOyJ9kvgcTtMw07n2aMyDVZED4PElrPcc4j9FxwHPyYCv9xvmx5
	rDX2XozwQMRP0e6FAVKRb0M4o/Z0/FY=
Subject: Re: [PATCH] x86/oprofile: remove compat accessors usage from
 backtrace
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: <20210423123509.9354-1-roger.pau@citrix.com>
 <7d77cd67-5866-9d58-b2d0-b8d28b827084@suse.com>
 <YILQ0tj8QceN1jaB@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <c55c8955-89c1-c5f8-4a56-9596eb0ebd3b@suse.com>
Date: Fri, 23 Apr 2021 15:55:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YILQ0tj8QceN1jaB@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 15:51, Roger Pau Monné wrote:
> On Fri, Apr 23, 2021 at 02:53:14PM +0200, Jan Beulich wrote:
>> On 23.04.2021 14:35, Roger Pau Monne wrote:
>>> Remove the unneeded usage of the compat layer to copy frame pointers
>>> from guest address space. Instead just use raw_copy_from_guest.
>>>
>>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>> ---
>>> Just build tested. Note sure I'm missing something, since using the
>>> compat layer here was IMO much more complicated than just using the
>>> raw accessors.
>>
>> The main reason, I suppose, was that raw_copy_*() aren't supposed to
>> be used directly.
>>
>>> @@ -59,34 +56,17 @@ dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
>>>  {
>>>      frame_head_t bufhead;
>>>  
>>> -#ifdef CONFIG_COMPAT
>>>      if ( is_32bit_vcpu(vcpu) )
>>>      {
>>> -        DEFINE_COMPAT_HANDLE(frame_head32_t);
>>> -        __compat_handle_const_frame_head32_t guest_head =
>>> -            { .c = (unsigned long)head };
>>
>> You're losing the truncation to 32 bits here.
> 
> I didn't think it was relevant here, as value should already have the
> high bits zeroed?
> 
> One being the rbp from the guest cpu registers and the other a
> recursive call using bufhead.ebp.

Would you mind stating this (i.e. what guarantees the zero-extension)
in the description?

>>>          frame_head32_t bufhead32;
>>>  
>>> -        /* Also check accessibility of one struct frame_head beyond */
>>> -        if (!compat_handle_okay(guest_head, 2))
>>> -            return 0;
>>
>> If you intentionally remove this and ...
>>
>>> -        if (__copy_from_compat(&bufhead32, guest_head, 1))
>>> +        if (raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)))
>>>              return 0;
>>>          bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
>>>          bufhead.ret = bufhead32.ret;
>>>      }
>>> -    else
>>> -#endif
>>> -    {
>>> -        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
>>> -            const_guest_handle_from_ptr(head, frame_head_t);
>>> -
>>> -        /* Also check accessibility of one struct frame_head beyond */
>>> -        if (!guest_handle_okay(guest_head, 2))
>>> -            return 0;
>>
>> ... this, then you should justify why these aren't needed anymore
>> (or maybe were never really needed). They've been put there for a
>> purpose, I'm sure, even if I'm unclear about what one it was/is.
> 
> I've been doing some archaeology on Linux and I'm still not sure why
> this is required. Linux copies two frame_head{32,}_t elements, so we
> could follow suit and do the same - albeit I won't be able to provide
> a reasoning myself as to why this is required, the second element
> seems to be completely unused.

Well, my guess has always been that this is an attempt at making sure
the stack with the frame popped is still a valid one. This would still
seem to me to be a somewhat questionable reasoning for the two-element
access, but I couldn't think of any other possible thoughts behind
this.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 14:14:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 14:14:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116412.222193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwZd-0002pv-K0; Fri, 23 Apr 2021 14:14:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116412.222193; Fri, 23 Apr 2021 14:14:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwZd-0002po-GS; Fri, 23 Apr 2021 14:14:25 +0000
Received: by outflank-mailman (input) for mailman id 116412;
 Fri, 23 Apr 2021 14:14:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YtAR=JU=unikie.com=jukka.kaartinen@srs-us1.protection.inumbo.net>)
 id 1lZwZc-0002pj-1t
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 14:14:24 +0000
Received: from mail-lj1-x22b.google.com (unknown [2a00:1450:4864:20::22b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 32cf899f-9ef6-4e36-a08b-a3df296ee9d6;
 Fri, 23 Apr 2021 14:14:20 +0000 (UTC)
Received: by mail-lj1-x22b.google.com with SMTP id o5so22768918ljc.1
 for <xen-devel@lists.xenproject.org>; Fri, 23 Apr 2021 07:14:20 -0700 (PDT)
Received: from [192.168.1.76] (91-153-193-15.elisa-laajakaista.fi.
 [91.153.193.15])
 by smtp.gmail.com with ESMTPSA id t18sm583489lfe.20.2021.04.23.07.14.18
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 23 Apr 2021 07: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: 32cf899f-9ef6-4e36-a08b-a3df296ee9d6
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=unikie-com.20150623.gappssmtp.com; s=20150623;
        h=to:from:subject:message-id:date:user-agent:mime-version
         :content-language:content-transfer-encoding;
        bh=Rokc5goIx5MEohH/KTq/EAesJqBbmeNhipOj+YlK0B0=;
        b=PWmpVNZYVxSqKyeb6il1NDgak2knUiNUEwjFacbBS4wq37/T/yWs8nnGzt5PZ7kI2a
         3tO51V1xJHmmjo0ZwPtp++gCtrgK9Nz84l3KyVv05YYUk7pvLRf3dOXijnd/hQbzDe29
         0BHoEubXv4anYQItZBq10rx51LkWPQjRpqG4mibM8bvFq38AsgiLTnuGFibN13Wsf/62
         bQos9i5xp0aFzrdtAusaHEaIecoSFQs8jGcAgaF//wnkP8PiSYBAneZXIBW1kbl934eV
         KMnco1U4480y9GOffX/g84QGuU68SPOQ6Ybup+UkxWh3ZmrZwXhxFkspFaZktx1km+/Z
         GXWg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:to:from:subject:message-id:date:user-agent
         :mime-version:content-language:content-transfer-encoding;
        bh=Rokc5goIx5MEohH/KTq/EAesJqBbmeNhipOj+YlK0B0=;
        b=qJxli23P2ZM2Z9SsPM4pkhHN8E0PVLUgiWgNU1F/XOH7yD5kmqfpYGzc+KmRaxMykA
         ZTMpkiAI83Osiyt3yiLapHNmcQDi9wG9cA4x4wONeq8u+CfNBmutF632QtxDxVYpE7g7
         FjZ2qansiW03EmA3xp395sGVZH3s0hLg9AeAf1ID0LXJhoer/95ReEexlOcg9sWYghAF
         /7IYgRnZYstJnetD5o4mFSKNa7krHVJseCCtOrkfLaLL8eV6//07I7zG3qyJ/j7f0D3O
         NZ+C8+sH58njw9wa40+BGIC3CBiVWTh8564x+agQytEA+kQeoSeTtF7PJ71C+IGK8a9p
         Hcgg==
X-Gm-Message-State: AOAM532/UnG+m0KWGi0klF6CC4SrRci+QeObCzsiE6gM5PrCE6PTcI96
	H6e9HufXb8qIrqHyg8p6+z+j2gv6biYJWA==
X-Google-Smtp-Source: ABdhPJzT7iY1Z296X8gDn1mQ5DLFl37LZsLNiELxed+UVpMHXPg+UwIqAWUe+ObF8ca2QNXwvzFgjA==
X-Received: by 2002:a2e:b801:: with SMTP id u1mr2928214ljo.224.1619187259333;
        Fri, 23 Apr 2021 07:14:19 -0700 (PDT)
To: Xen-devel <xen-devel@lists.xenproject.org>
From: Jukka Kaartinen <jukka.kaartinen@unikie.com>
Subject: Looking for arm based mobile platform that can run Xen
Message-ID: <0d5e878a-31d8-a491-edab-6d48f447fd7c@unikie.com>
Date: Fri, 23 Apr 2021 17:14:16 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Hi,

We are trying to find Raspberry like mobile HW that can run Xen with 
full features enabled like pass through devices and iommu support.

So far we have tried these:

These don't have iommu:
   * Raspberry Pi 4b

iommu doesn't cover whole io address space only some devices are behind 
iommu:
   *OrangePi 4b

Bad upstream kernel support:
   *Nvidia Xavier NX 
https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-xavier-nx/

Closed source bootloader that won't boot kernel into EL2:
   * DragonBoard 845c https://www.96boards.org/product/rb3-platform/
   * Snapdragon 845 mobile hdk 
https://www.lantronix.com/products/snapdragon-845-mobile-hdk/


Any ideas? :)

We could consider using some low end laptop.


-Jukka


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 14:18:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 14:18:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116418.222206 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwd6-000394-4i; Fri, 23 Apr 2021 14:18:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116418.222206; Fri, 23 Apr 2021 14: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 1lZwd6-00038x-0s; Fri, 23 Apr 2021 14:18:00 +0000
Received: by outflank-mailman (input) for mailman id 116418;
 Fri, 23 Apr 2021 14:17:58 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZwd4-00038s-Ef
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 14:17:58 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 70e5341d-c052-46c6-8eab-67ab968f6ceb;
 Fri, 23 Apr 2021 14:17:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 70e5341d-c052-46c6-8eab-67ab968f6ceb
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619187476;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=p9+ak7UkGNU1QcxtVUb0K485xsRBFsBum1iJTHi+X14=;
  b=iV3bhwBL0pz0Uq+DfI0Byzgt10Uy0XLKDjDGCs0CmMoCUoj7Wb6SgJWK
   oSlmzM7Glbh3L70FkY1Munz9Lran20y9EBcsKXJZlcNdrZHRxpM9+tRVF
   qDGc8EYoKcJiJyVC2wxHZMJVuce6e83rZU49DK62ClHVJu7WopVsa2bkq
   8=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: VWs9NX7WJcJnt1YXSxxA7EQUcgGMNZLuX2tZi4EdA0Ik1shZ76b0Pk3z6eWWRLuioV48+L9J0A
 K8BFxLv2v/zspiA2ioaTMcCjBOEcn1Wb5FzRV0lS5bS9rlZFUds0HdE/CtapyANIYFBBzMbOvi
 ZGkK15UQjgxFp0yYkddg1ck/TgxoySZtJ8W2zsDWBeBBLNTwiwnxPWoQSY6SZWkObTiNr6Un8q
 15lns4d9UWSbp6t5btIsq7+5b86S6yGLtUQF8Ar4p/sCuuUZ5YMwgFzUHpFSzv7F8HUh8tU02U
 6/w=
X-SBRS: 5.2
X-MesageID: 42104076
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:jQiupq+cfxZCTwgO5E1uk+F8cL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmyybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUHD38Zn/+
 Nbf6B6YeecMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsKV4hLxW5Ce2GmO2dxQxRLAod8OZ
 qH/8xcpyehf3N/VLXAOlAuWe/fq9rX0K/8aRkdCBI9rCWIhzWk6Ln1eiLooys2eTVJ3Lsk7C
 z5gxX0j5/TyM2T5z398yvo75pQkMb80dcrPqKxo+UcNzmEsHfLWK1PQLuH1QpFxd2HyFFvq9
 XUpgdlAsIb0QKsQkiQgT/Anzbtyywv7XiK8y7pvVLGrdbiTDw3T+pt7LgpCyfx0EYrsNFi3K
 8j5Qvw3PA2fHCw7hjV3NTGWwpnkUC5uxMZ4JYupkdSTJcEb/tppZEflXklYasoJj7w64wsDY
 BVfafhzctRGGnqC0zxjy1ExdyhWWkLBRGWQkQOkdz96UkpoFlJi2Qf38ARhXEG6dYUTIRF/f
 3NNuBSmKhJVdJ+V9MzOM4xBe6bTlXXRxjBKnifLD3cZdc6EkOIj6SyzKQ+5emsdpBN5JwumK
 7ZWFcdkWIpYUrhBeCHwZUjyGGCfEyNGRDWju1O7ZlwvbPxAJDxNzeYdVwom8y8590CH8zyQZ
 +ISdFrKs6mCVGrNZdC3gX4VZUXA2IZStcpttEyXE/Lit7XK7ftqvfQfJ/oVfrQOAdhflm6Lm
 oIXTD1KskFxFusQGXEjB/YXG6oVVf4+b52DajG78kewIUALeR3w00ooGX8wvvOBSxJs6Qwck
 c7CqjgiLmHqW6/+nuNz2gBAGsYMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYjt2T8bcFh
 9jt016kJjHaKC49GQHMZaKI2iah3wcqDahVJEHgJCO4s/jZ9ceAos5XrdyUSHGDQZ8lwoviG
 orUn5EembvUhfVzYm1hp0dA+/SM/Nmhh2wHMJSoXXD8WOGpc8uQXMfdyW0UdGehDsvQzY8vC
 wyz4YvxJ673Rq/I2o2h+o1dHdWbn6MPb5ABAOZILlPlqvTYwF2R2eSjTm8gxU+E1CasXk6ty
 jEF2m5aPvLCl1StjR93rzx+F15TGmbYnl9c2t3q4F7CGTAtEtiyOPjXNvB70KhLn85hs0NOj
 DMZjUfZjljwN26zza5sjePH3dO/ORlAsXtSJAYN53D0HKkL4OF0ZwcF/hP5ZB/KZTFqekQS9
 +SfAeTMRL1A+4kwBauu34gISV4wUNUyM/A6VnA1iyVzXQ/Cf3dLBBaXLkdOcib9HWhaPCS0p
 l15OhF9NeYAyHUUJqhxq7WZTIYdU+Wjm6yUu0yqZdb+Yg1r6B+GpHHUT3OkFFLtS9OWPvcpQ
 c7euBc5ruEB6pEO+o1UAhd9kAylNuOIFAw2zaGSdMWTBUItTvjI9iN47D0srIhDU2KmRvoNT
 Ckglhg1saAexHG6KUTBK0xK1lHcUQQ6Hxt++WZao3bYT/aAN1rzR6fMnWndqVaR7XAMbIMrg
 xi69XgpZ7bSwPInCTRtyB8OKRA7iKORt6zGhuFHapt/8ahMVqBxous78jbtka6dRKLL2AZj5
 ZCb0oec4BqjSQjlpQ+1myKcZPMy3hV22d20HVAjV7i2o+v/WfdEwVnCGTi8+prdAgWFGOJg8
 TD+fWfz1Ln7lF+qMH+KHs=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42104076"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ICHXMs+9DuCf8T0ZrlwMCGXwgf8T9RzICNtms1QJ0BPTnOvcvHiXK637SqS0yW+Re1NneHApySo1B1qXfcsrcheUFdivxEPtbZB6lOfgAneAsvWwq9nagDW7zBLZlxcW0h2/IE1buVkEhvxuM5zbBoymTm104zNtnTRRa6HdwSSYOMeF72AFoh2mE1G6JfETMT8hVAph+VphI/6vA1+k8Dg1Wi4frvhli049rhD/KBJobP3yETAJ7ajTQoYsuQ+FB/w1o2Kvj+UJoM2DCPf0DXlYRVlZADzWDD+daKUiwTDI7shpe+1MGsB+Yq8Zuqk9NmDDfcJb82HX6Rv+H6jfNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/QNggnJrL6UwgR2bBdwckj8GkHrwg2kJom6UmPsQtCc=;
 b=KnmqOUMzz+X0HiWAEzDGnYU1J8GGrgYRpHi0tCbGEjwp45fOB39PgXpzv8+BSlrfkGF/TL+Qq7J5nlfqpJJnaU4Tv6IK9SW+OCS8F8fA4JwTkvR3gYCz6YwlPVGOpxgtiaI4G3/Xh/saenlmc5S/b+W8CByo3agIjHiIxNwkrmSLCw5Fyiv0c+F13vNidSVZhdclR2tz0NLtoHdjCGPfg0vxfF9i34poxIb3Eu6fXlITAqdBzFKtz0nyHXZuOPn6HyyvxMP1UXg96XTgffTucmTQ/RSmXW34tQTINck3u/KMZQBM8J9L2SgOvWKkeJShVi775TxDhWqH6YmaRiFzUg==
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=/QNggnJrL6UwgR2bBdwckj8GkHrwg2kJom6UmPsQtCc=;
 b=VVQNt9oV1ynsMphAmVMMjkN4/XVBghAQBE6TXxq3RBqku/XR9G5vuc2uljXtL3aUNf35MOMhutJ1aapKjlR8XQrTWvrGr+RcrWc5fn9tjCvtNntptb3ZmNuPjhX43WWCXODfcIO1DNIPkymPGVUAyjWeBHGbT5QH6VsG6SJ1o5U=
Date: Fri, 23 Apr 2021 16:17: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>, George Dunlap
	<george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>, Jun Nakajima
	<jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
Subject: Re: [PATCH v4 1/3] VMX: use a single, global APIC access page
Message-ID: <YILXDfXfR69mwfHH@Air-de-Roger>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
 <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
X-ClientProxiedBy: PR1PR01CA0008.eurprd01.prod.exchangelabs.com
 (2603:10a6:102::21) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 22b2c839-5095-4288-c253-08d9066295cf
X-MS-TrafficTypeDiagnostic: DM5PR03MB3292:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3292497F289DDBD26300CF2B8F459@DM5PR03MB3292.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: vaLlAiIPn9IA4I4e3Cz0YLLoFim/rIA6Wq1x/KP9MxOgkCIHOqqkeYjV1G8MGVzY4160VV1IGNAPnFpD/K1sRJNjGwc/OXI3rDnsgUNKLHsFAjsLA3NSzjUZ+h5vz+LyjJCaVfDPSrM7y2nOnTyZjcT4o7ZV6yg4R9zBBmX73rQoF5+FFjVjD+hZ+i0HUpzuqivMFUghajJoGbhQd+CH8aJUe3gYnjm5VIsX7r/Jn9wMgQLRlJfeqWvwsoxEBX34slhLpegNF1a6bZv4eU6bBC1WV2xcti0Ip6ZaA26pyZ930H+ZGqRAu5u3IhycjSZDYrgD7J5f/slkL5L5lnsScSjEJ7byziO7Yk3+d6/ukw/4/pnChdqcxYvow4uDdv0OaUL+QsBy2XTfSWOTkgonI7hm8A6icdTboSI49530Z4ofLfPiQfXQejgdZSRJzO91A5R5Nk1mDEDnBN2KWh7D9u2RKVm4gU6yIw79Zxwea1iWfIM1xhd/4xUepboGPrUcSiw/62vFpp+bwgeo2tj8Jil7fRwYykmIda8xb8/3mVlNllxXntj+YRqyof+z+/Y3VFOWO80jsikIaK2okory1JrFRzBnDg+8fZLADF0Nf8RXdtyQ41jg8pZn7vN1UGIuiJK62Chm08GOCVOAh7EqaA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(39860400002)(346002)(396003)(366004)(376002)(8936002)(9686003)(26005)(83380400001)(478600001)(33716001)(54906003)(6916009)(6486002)(4326008)(8676002)(2906002)(86362001)(16526019)(6666004)(5660300002)(316002)(6496006)(66946007)(956004)(85182001)(186003)(66556008)(66476007)(38100700002)(357404004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 22b2c839-5095-4288-c253-08d9066295cf
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 14:17:54.1729
 (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: XiESHYR3cWPzPG9dNv5O/HmG1C1rJDnuK4Q3bVCEaWnSgKWCI/BN2BH9mssD5t73UUIS6q/uHMI7JULgOiMe7w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3292
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 12:52:57PM +0200, Jan Beulich wrote:
> --- a/xen/arch/x86/mm/shadow/set.c
> +++ b/xen/arch/x86/mm/shadow/set.c
> @@ -94,6 +94,15 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
>      ASSERT(!sh_l1e_is_magic(sl1e));
>      ASSERT(shadow_mode_refcounts(d));
>  
> +    /*
> +     * Check whether refcounting is suppressed on this page. For example,
> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
> +     * get accessed, and hence there's no need to refcount it.
> +     */
> +    mfn = shadow_l1e_get_mfn(sl1e);
> +    if ( mfn_valid(mfn) && page_refcounting_suppressed(mfn_to_page(mfn)) )
> +        return 0;
> +
>      res = get_page_from_l1e(sl1e, d, d);
>  
>      /*
> --- a/xen/arch/x86/mm/shadow/types.h
> +++ b/xen/arch/x86/mm/shadow/types.h
> @@ -276,9 +276,16 @@ int shadow_set_l4e(struct domain *d, sha
>  static void inline
>  shadow_put_page_from_l1e(shadow_l1e_t sl1e, struct domain *d)
>  {
> +    mfn_t mfn;
> +
>      if ( !shadow_mode_refcounts(d) )
>          return;
>  
> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) &&

Nit: I would prefer if assigned mfn outside of the condition, like
it's done in the chunk added to shadow_get_page_from_l1e. The rest
LGTM, so:

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 14:26:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 14:26:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116426.222218 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwko-0004G5-11; Fri, 23 Apr 2021 14:25:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116426.222218; Fri, 23 Apr 2021 14:25:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwkn-0004Fy-UC; Fri, 23 Apr 2021 14:25:57 +0000
Received: by outflank-mailman (input) for mailman id 116426;
 Fri, 23 Apr 2021 14:25:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZwkm-0004Ft-DL
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 14:25:56 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8adaef47-ca2c-413e-ab1c-ee774cbf4f6b;
 Fri, 23 Apr 2021 14:25: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: 8adaef47-ca2c-413e-ab1c-ee774cbf4f6b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619187954;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=h/K4lDpPSC6jswkyW7Wz4oRXbtYBnW8AoV4vxuKL3mM=;
  b=XSJ9EmqaPme3MDJ4POdIfaUP9RdFxdQXYwzNLHxgdNF8yHC8aIyqMEZu
   QW1DIFSYALoiAZ8HQ5bUq05yDMaux4IYE4ASJK+oF/CeAugJyDTbbxpVi
   bMSTcqC3hmKF0B7uTs6JWd4F6nUI92IMgQacmr8dtXH4HXFVlvcy9HkkV
   U=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: quruP4DxeK9B4T2dDPACinPZ7FdXOLxqfXOJAksCyyaaXXFg5h4l/lpSdD0xtylNL6mX2jJQBv
 1xUXBbau/0yKjvGJ0XJo6xAtvnWArXDiylHCLxOhtSqmpcEtUMfI7HVAuBqJaqHvaex6c+BPa+
 ifvl+oHUG+bP4oB16Kw3Z6QM2W/q6/IJlf1nOk4z28zns1KEZZjcKe7/yFdD8xZd/5q5LKEb0d
 /fccfr6heVAFL1r2tDdcRTPaS24/aclAe9NzZsHLgzkLYSNdr1YzMFPKBYlloqkOrnPuFFuuj1
 8YM=
X-SBRS: 5.2
X-MesageID: 42662609
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:EFoxNaFUQgzQ5FNwpLqEE8eALOonbusQ8zAX/mp2TgFYddHdqt
 C2kJ0gpHzJoRsyeFVlo9CPP6GcXWjRnKQf3aA9NaqvNTOGhEKGN4dnhLGM/xTFOwnTstFQzr
 1hda8WMrHNJHx3l9zz7gX9M/tI+qjkzImSie3Tz2hgQGhRAskLgjtRMBqREUF9WWB9ZaYRKZ
 z03KR6jgvlX28WYMS9DnwsRPPCuNXPqZLjbXc9dnsa1DU=
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42662609"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=J0gLkn5PgUbgl0590iIPHLu2lzoz6P+5bC+ux0l1+tnmn+q+MaEIVV/mC7K6nVyVbGyDB5jyQweGAGWcaxTx/uUXtNcAZNSXjYeZTV8s8peHhKwkIhtc1L5vXIQbMyXlQKogNmBpc6B5rpswP3/V0F8qM4q0uX4GroheQrtrCF4McJ3sPId2CiQ+nQI+Q/bUgNDy9ZlNPYSsvFg01Toyf5ClPQ34byOO4kwee4u5U97eZqivcVqow+bfyWscaJB3UacMPeAL0ebHdzwPIeXRBYd7kcdVKFnbVJJH6OKHOp4YjoeHXL1+rL5Q24LOmTAnqPbuggfMVQIdkh8CzFWRww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sfm4ssBaOeWSpdHGRGVPJvZoS75dUVH/0fI5rRbpWNs=;
 b=OX520V4rguok+FgA5+3yDTyxSfYNv66vhn4OroXnBUc6ollqf1TQ6W/GkjkW6SoT3w51XRTkC86NNHPdm4ojnPah1/gO76fELIUY3NWBE+QqqzZEdWoULfHL+1ryqwOYeS9xbMfcM0MscgjwXnxf5pIyPOI9L+Xli9Gi1oIPZdgXmdWJ/CdMjtIKX20SNPHg1ETjRhCgLGw/+JGgtAuu4Cncr/H/koryRZh1l8Osp7Bb4lHfj8o4AO7rKtrWtaibM45vOU7ho1cs3Cndbn/T9vt2jR6x138q3eegkjMM7PC8LyukLKsi99P5/+TMmLFQ0joYId8yJs+xNhDQIm4hVw==
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=sfm4ssBaOeWSpdHGRGVPJvZoS75dUVH/0fI5rRbpWNs=;
 b=PEP350DOnEXdpvGybSfVjHwFqgmpzj3b2KtyjAUoRep9wAIbsemi4GYC3+Wj3dc5eeMd1fukuGGBLZp+OWTdDywFZ6GRrRcWJ5xHtjJchrBVljFDLDVuJKr6oSwY8n1f93VidW1gBnOTjhDCSAEoqjZyenava2VsskRsru8ewhw=
Date: Fri, 23 Apr 2021 16:25:46 +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 v2 1/3] x86/EFI: sections may not live at VA 0 in PE
 binaries
Message-ID: <YILY6sTSMTqt27S9@Air-de-Roger>
References: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
 <748d35dc-5a2f-302f-d789-9797c6726810@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <748d35dc-5a2f-302f-d789-9797c6726810@suse.com>
X-ClientProxiedBy: MR2P264CA0185.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::24)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7ff97c36-bf9e-40ca-8e9c-08d90663b253
X-MS-TrafficTypeDiagnostic: DM4PR03MB5999:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB5999CE25298C674D959BAA088F459@DM4PR03MB5999.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 1VCRHxC2B3FqbS9b5XmLccZhAhQUCOy8efJIXlu/AZ3iKZgPVFYV1bJNnVuJ6RqeJlb7E9Ek/Pal6YKs0ECBJU/SPPHhMC1UURacO5g+MUAPQOzWR+zdQu1pieKuTu/ViA1pywT4ld/eOUaZ7BRg/WOeIEZrogQQWbd+G7xz2X346uRoHxhJfPDwTTWJEmA6ezsqTuw8tJjddIKJtP15wVIaOUs8cfRKVmhqee/yrrBPeWlv8c1ayVz8AT87uHQpPlntge2gVYuVruDhF+JfmdkiKq2y5gmuZhifTd2k9WvFQZsB0+T4X9FzJzbtxL9p/BmA0wTTNzICi9HT+F1/3RfEc+XOQjSvIWxv2SGXB7lME/vEvId3s553JY2YuEKgfloT3Vx0QKnS1KPw0VhmC4r1s5e3vIBbIo8ufoCy/488y7CGvUbOlrqVzgiWbMYqmu74YpyQNubtUaxTSiQ6JdB67lUwFFoTRQvh7hTUJvfYjVr4PXoxgsGCiL52RrJzIMPrVTcZF/YZiLAa9/ILQ8dyqAljnty0qcYKEmZ4DhIWGARJfyh2+Z8Q5XfxoaQ1W9A30n/F6krTsd3TOpP2R+3uWnku3/3A4gkenKCweFk=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(39860400002)(376002)(136003)(396003)(346002)(186003)(38100700002)(316002)(9686003)(16526019)(6666004)(6496006)(6486002)(26005)(8676002)(5660300002)(54906003)(6916009)(8936002)(85182001)(66946007)(33716001)(478600001)(83380400001)(4326008)(86362001)(956004)(4744005)(66476007)(2906002)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 7ff97c36-bf9e-40ca-8e9c-08d90663b253
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 14:25:51.4219
 (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: QVQtZMNNHPvGmNgi/4hbMCKJ3/cYGRkqpuJJ044UGoZ7SIHkQz6cxi7joCPETBICS5G7HXlOQsvhvjlWvS30Qg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5999
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 01:03:34PM +0200, Jan Beulich wrote:
> PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
> least 2.36 would silently truncate the (negative) difference when a
> section is placed below the image base. Such sections would also be
> wrongly placed ahead of all "normal" ones. Since, for the time being,
> we build xen.efi with --strip-debug anyway, .stab* can't appear. And
> .comment has an entry in /DISCARD/ already anyway in the EFI case.
> 
> Because of their unclear origin, keep the directives for the ELF case
> though.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Albeit I would remove those - even if gcc can still generate stabs
debug info I don't think it's used at all, and in any case a user
would have to also modify the build system in order to force gcc to
produce stabs debug info.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 14:27:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 14:27:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116430.222230 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwm8-0004Me-D2; Fri, 23 Apr 2021 14:27:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116430.222230; Fri, 23 Apr 2021 14:27: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 1lZwm8-0004MX-9H; Fri, 23 Apr 2021 14:27:20 +0000
Received: by outflank-mailman (input) for mailman id 116430;
 Fri, 23 Apr 2021 14:27:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZwm6-0004MR-UE
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 14:27:18 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8724357a-57e2-4a4a-b64a-0b31322b9930;
 Fri, 23 Apr 2021 14:27: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: 8724357a-57e2-4a4a-b64a-0b31322b9930
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619188037;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=WKGouTe5x4abmWqrRqQbiUFGNeiI8Z7tkWZN41Hyi1w=;
  b=H7vt4h6tVMW7vmxTfm69ZbQ4ZbdAxHMCKEto7J4xw6ZXr/Td3/hhygnX
   /Dn9uFSfmm36E7SVEoO6eD+qrOThp4kpC7cLzkztYMedlCEVDwD2fna7M
   DFKP+XipvlfuxyEYovAtL22U661M1uMI2VhUbbMPbGZM1IqCV8YV4OfoU
   I=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 2vrnpsA43HwWzB7E+eiz899IccBTAiOjYgb9p3R7wNXFA1XgVbEF3uPPjDpzi6e7XiWv7Yql45
 QAetlavORbszwAeFTzdDfRNhlr4d72/QEjAyzgfAE/ijY2b9LRxkGUjxUz4V9itH02lYK5dzKe
 uNEP8JqytTEG20EIIrlVQyICVNikE2o/87RVU31DS22NRvP3CmpfYwoLdI3szQ/wGDLSCmF06u
 I+xT88sUxIv0pNj+NiPMlKoyodCBYFLn5R02paXDt22ZG+B3Ibc6FbfW/cQd/K2lBvBMFVq8KQ
 xFU=
X-SBRS: 5.2
X-MesageID: 42275637
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Qe9De6McmJsQbsBcTxP155DYdL4zR+YMi2QD/1xtSBBTb8yTn9
 2vmvNe7hPvlDMNQhgb9OyoEqPoexPh3LRy5pQcOqrnYRn+tAKTXeVfxKbB4xmlIS3x8eZByb
 xtGpIVNPTcBUV35PyU3CCWCNAlqePozImNpcPzi0hgVhtrbaYI1XYdNi++HldtTAdLQboVfa
 DshfZvnDardXQJYsnTPBBsM9TrnNHXiIngJScPGh9P0mKzpAm14733GQXw5GZ9bxpzx94ZkF
 TtokjCyYiI99q6zRLd0GG71eUqpPLRjuFtKebJpswcKjDHghulaoJ7S9S5zUwIidDq0nkGup
 3hpAohItRS5hrqDx6IiCqo4SbM+nIP7GLv0lCRi3eLm72GeBsKT/BvqKgcVzmx0TtGgPhMlJ
 hl8kjcir9sSTTHpyj578igbWAQqmOE5UAMvMRWs2ZSSuIlGdlshL1axmx5OrEaEhn37Yg2ed
 Medv301bJtfVSWY2uxhBgX/PWcGnA6HhKxSkMfoMCi0z9PgHBjz0cDrfZv5ks9yA==
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42275637"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JhgwOIZgh6nUp/BEnjU/a/SM8kXdUpHydVAInSC3nohbb+GITrsiRj792VgDulKwtZoV2ahsQZ+onvv+Jk9Eg9N6mtQWTE9bI6ok1p7SUKQMY1xstZkMX3i89PtCvzg13Nh8fgN5PqkncueyvR4JEcQxowp6qUijhSaD7BPYA7KuvmkzS3xCy92PorWLf8dXL07zikwBJBZhH0+WEvNpkcQtukCIkr3TsmQnliywz+6hTOZABTaMPPI3iMOZOQxTc1tfZrX6+4RuAc7r8pbkCB9gVLuxliNAr/Tlz+S3EGg/CZTjzRTInvrxKujJ009V3UdUcBdWwHbP0lpSWm2A0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CPfYXvC9KnrUd2ufBg/2YkRNJLaVKSAarwCjwPpLm7U=;
 b=GJ/Ks4OmfouO72VMy81VmPjgKzBxUGVh+REMhDTaYCdC58VGzvGc/af0WajDT7dojUw1SnKkBHn2xmEeoZQAAWC+n0qfjjIvyuIBhDytuKYhFo70NSJtjj/M3RffJYzM3XN35QF8DtiQzEjBAT44lh6oaRxwBG0X9NtvZk916famcFOLg3etjabrAZDAAs64ZkCFEQfnL3J3vKLP9uoMAYo/eUW9EbJrgnCp8ru5bZw0ZF4/+w9KkB/xX6FUeo/BlNAOneDpS/dCgCCO4M/lpIGIkzMjvXS1yWzJLNfJysrA0gtsr5cFI8FEQYuzWs1IbsagUwTD0ddjvdh4HKd8Ww==
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=CPfYXvC9KnrUd2ufBg/2YkRNJLaVKSAarwCjwPpLm7U=;
 b=tIujobWiesTzrHhCFqeKM1uR2VbwXNxRb+wNtzjWUkFu6R/o8EYAeY0SafFHgALs2FHwsTqMJ/1utl+Yvcy/jaIDFiZ3TU5Vc39kLho7Zpkn2G40wq8Ua2QxMvorjcZX+RQZg8fk/O8Io5OE4cn2gkrMPxCUEL2me6qmpuDSCU8=
Date: Fri, 23 Apr 2021 16:27: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 v2 2/3] x86/EFI: keep debug info in xen.efi
Message-ID: <YILZPbRRR26nYRWt@Air-de-Roger>
References: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
 <084ef874-3ef2-cb52-bc4b-3b9d78c826ae@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <084ef874-3ef2-cb52-bc4b-3b9d78c826ae@suse.com>
X-ClientProxiedBy: MR2P264CA0125.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7b9a7b8b-12d7-4b41-5218-08d90663e452
X-MS-TrafficTypeDiagnostic: DM4PR03MB5999:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB5999E7D1A2CEE2C9B0B2FE018F459@DM4PR03MB5999.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: kLfEIMuNmyD1znD9Kwc8UVg5gvF7IsWvG6+P/CkXSLMQvbltt78de58UVJGmnwI9DBXbtkz2e4MiBOC3mNvCR1STaQKBEiQNtM6qKAOXpaV8FLL6ur5Omb04jveOOYWDTyiuSv8upEEHCBwLB3lVf5H1uRaTINpIJoz66bOatP2fDIPraBapcWdyBMBY2WJVdyzKs1MuJ4IBsR82cCVVbMsX6fWk6cmqLrromseb6ffVFJHKVG5phvIsaaidMvzvDYp2qOTsXV3HLvzWE44bKlMebGtH44D3OKM5ykC7UapY38jBjQhkjHwWgL4taZ74zW5Srel5DIkoGcogPbas/UC1mkZnj0eapV0td/nMGvm1Cey5ViD1lVsXvQEfoF8Cb6dGL1US+sS5w7EGVicg+dMpmM2mehKeYTkZ38q3nSkjTnb/Q7vR09Siw0FYkGssdvwJW8iFUm1WjTVQIaGUJfEqngK02Sur29amS63jx1UKd3P81iup94xnQBry+ReFUoZwT8ftkverwDD2QOaKDCZ8G7no/LjEGxWgsFcc6g6L5swK+su8XtJsVh4e+xQ9ECUMzTEfEVvFP7s6eFBEGo+Ry6Ihtq6S7Iw6pS1ixsg=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(366004)(39860400002)(376002)(136003)(396003)(346002)(186003)(38100700002)(316002)(9686003)(16526019)(6666004)(6496006)(6486002)(26005)(8676002)(5660300002)(54906003)(6916009)(8936002)(85182001)(66946007)(33716001)(478600001)(83380400001)(4326008)(86362001)(956004)(66476007)(2906002)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?rTT55cIucYGrSBy+Cb/gdXaxZQnkv/7sxifAwHV?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 7b9a7b8b-12d7-4b41-5218-08d90663e452
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 14:27:15.2880
 (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: EwA9RozsAejvbl3ZXJ49HFfqKk7PDgR1lMeZaNfy8kEyrUUYjQrmN9LKos3gH4P4APvEsamITIhe7tZhE+Mkmg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5999
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 01:04:10PM +0200, Jan Beulich wrote:
> ... provided the linker supports it (which it does as of commit
> 2dfa8341e079 ["ELF DWARF in PE output"]).
> 
> Without mentioning debugging sections, the linker would put them at
> VA 0, thus making them unreachable by 32-bit (relative or absolute)
> relocations. If relocations were resolvable (or absent) the resulting
> binary would have invalid section RVAs (0 - __image_base__, truncated to
> 32 bits). Mentioning debugging sections without specifying an address
> will result in the linker putting them all on the same RVA. A loader is,
> afaict, free to reject loading such an image, as sections shouldn't
> overlap. (The above describes GNU ld 2.36 behavior, which - if deemed
> buggy - could change.)
> 
> Make sure our up-to-16Mb padding doesn't unnecessarily further extend
> the image.
> 
> Take the opportunity and also switch to using $(call ld-option,...).
> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> 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 Fri Apr 23 14:38:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 14:38:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116437.222242 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZwwb-0005TV-FP; Fri, 23 Apr 2021 14:38:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116437.222242; Fri, 23 Apr 2021 14: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 1lZwwb-0005TO-Ac; Fri, 23 Apr 2021 14:38:09 +0000
Received: by outflank-mailman (input) for mailman id 116437;
 Fri, 23 Apr 2021 14:38:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZwwa-0005TJ-9l
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 14:38:08 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bc4e6413-1506-4745-a1a7-cda8a16635a5;
 Fri, 23 Apr 2021 14:38: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: bc4e6413-1506-4745-a1a7-cda8a16635a5
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619188684;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=4VsUgAXkxah1q5I11U+Dwr0tgAI7bZkP5I0L7aGoD0Y=;
  b=DfkTg4yhkSoX0p/kacnoHdntSqF0JxB3byfNpNtJHGvlJZWMPrdeezTN
   TJcyj0E11oiuK6oxzBkccac2iPBcwHFsy9lIrxNtT+gaW83Py3QN1zsrg
   o2fIXf7OKQj7mgDQDy7g/UuMTIKOEaEELDC9Juo2uF3G4186RDgDY6xSB
   U=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: KWY7P3Imu+Cvo6UO6nA+Oxdftr2/3m4mDUfqJ95slGE8+emu/O8aHi0t4fxh22ZSjM6qFWk/hI
 SAIGyqsFZp33VxYp9qNSBGIRprhsmW9a0WKlST+sO6+6fecHrhElRHV8V0d0EswePIARDKoiTy
 1RgWJBCYGJ7xNEqcGVfFxnTWauNmgWxPEF2XUshKcjjls+ti2gUkydlWt94iOuBMk/jwFzCeD0
 /cr57CGheoprLZif+0zw5FTm8G5sP4IaoVUgW6U5CjHlQhp3q9m0W46eYZ0L/91HRgimf20CMJ
 LAQ=
X-SBRS: 5.2
X-MesageID: 42106010
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:CI57QaDDqy6tyc3lHekv55DYdL4zR+YMi2QD/UZ3VBBTb4ikh9
 mj9c5rtiPcpRQwfDUbmd6GMLSdWn+0z/VIyKQYILvKZmPbkUSlIIxo5YHhhx3McheOkdJ1+r
 xnd8FFZOHYKFhhkILH5xOlGMwr29mN/MmT9IPj5lNMaS0vVK169Qd+DW+gcnFeYAVdH5I2GN
 69y6N8ygaIQngcYsSlCnRtZYGqm/TxmJ3rehIcbiRXjTWmtj+w7a6/Lh7w5HgjeglSyrQv+3
 WtqW3Ez5ik2svU9jbsk0va75FtlMH6yt1FJOHksLl2FgnR
X-IronPort-AV: E=Sophos;i="5.82,245,1613451600"; 
   d="scan'208";a="42106010"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QUxRFm7d5ePcDJgnq8Y9Giej7agqBuzmCMN0Rti3MBXn9XOICHpxV4f3GQG15UgIugRSNScbRwDWUsWIuajWMr/cmmPkL/lKcDs6z16IYMFGN+eY3yD3f7mIbUo3VQuHM54WOd7DovGn+1yVcfatRV5ZShjjop8vlSIQjhy3sEE/QW4ZeIxdoXQhhKkGCopXUZIqYgQHmfKxi0eCC8lydwrHSIQ6djb0MzXg9ESaT8bSpBecwTXwBoCyh4qXmJr24SMuAOX3YKOF0Pg1VHytiPkCMRGA/VfbNI6aQia9HyyBsFmYND1FWOgaupfd0ZFuB6zQkuA5XOYXWJF3UkexGw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zV2St4kky+YwNOuHc+Xr4vZeI7pvLrjmyZ2S6WWsBF0=;
 b=Arsl8yJqZQDPA/yE/ZIBvu5zZN/1q8SdM4Nk/XnV1IjAbHNFcEph8UKuLYmB2sC2tzYLWQy32FE2hwo93FVaqgfSTcctIEW92jlZ6zLnS6xsDVfdDT6Y4U5U7oMQcXKcBvhfpVqJ0VrdiGlxEstmkaDZermcYPO1Zm9/IVPni3GYXTIXf3ZoGOsM1dJkdvoRkljQH/j/N2VL8UnY3eHQkXBlKRzKI1cY/c5ISKpWDApnHrCqqIsj5OCTmtfX6ZmVMfaPgYYzUnSL81IBfHa4RHqFYF+nfhZF4VrywnkU04rr1SRSZpKCnoz3o3hlxQcMmXXbdz9EXml8m1gKxpM/Wg==
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=zV2St4kky+YwNOuHc+Xr4vZeI7pvLrjmyZ2S6WWsBF0=;
 b=cjQMdvVqozbFS/v9ZI+uSYJQJ4aR5sYr/evqjqFMchsxRC1728sRL8HjnJORdYwtLXpv2pWmpsmfzaOL64IsCC1MIrnH2DJg+CF4aFVTvvCDDr4g2LtlsuO3xMZt6ba+3/Y2xVmtIfjN74YZPNBTkyJg6A1VQ90ehIUhuKJK0bs=
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/oprofile: remove compat accessors usage from backtrace
Date: Fri, 23 Apr 2021 16:37:55 +0200
Message-ID: <20210423143755.12189-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0127.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::19) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4ec0d9c1-ee75-491e-9052-08d9066565a2
X-MS-TrafficTypeDiagnostic: DM6PR03MB3675:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB36756679C8FEC16C68605F838F459@DM6PR03MB3675.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2657;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 3v6kc9D137Vk8vZHBHxP8iZCa95uqmpCyl+TisI5R7r69UgHXqcGknR2cZ26LtGut77hq2ZXD/gn0Vgz8eEtiZPr7D+npmjV8GTyecl0Qp7ZfKayZ1eQiCXC4AgwJvAZmZT6kEWAwnpTsOaS+oAJG9IEGyu2EwNQNNiuDKEoRfba/ASh8uCepElMxE3zl7c+BNQ+eyzZb3zpSqa2Bann+1VWFC0Fv5jLu9VoUl40nGscbolS3ukrIof7crnpPivV7tgnOAWF0zsjuBzYTtpJ/6p6qqUlEqjQMuU8FSBzC4SGQXrkc5l/+vUVwQqX/MVYYZupwI2mGW8LFtKPjEs2zHJ0z9DlmRLS3wctaYc0BT4g4kkYwQMb5L/2689Hwj7xPah3Huyx5qrtfFaAz7MCdt1uOcROTKnEiNYaX4vrzTXCTCrVSpwP80MIztWuFkCu/frHJrfBQEmVjfdT/jXlCJ9L0eI5cJF6VEv6KirVleoODR55/yhH1jJEoN2k+Pod0pvLrRblnhZ1uqV5gJI7Qvxx8ccFCcemzVHS1evKVBVgZI78ANrJT2vMqj85Mj99FR/iNpsTm2Fsk2q5T5pCL28bvNCa9v/9psQO5C6Imr0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39860400002)(136003)(366004)(376002)(396003)(4326008)(86362001)(66556008)(186003)(6916009)(5660300002)(8936002)(38100700002)(36756003)(66946007)(26005)(8676002)(54906003)(16526019)(83380400001)(6496006)(956004)(2906002)(1076003)(478600001)(316002)(6666004)(2616005)(66476007)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?XK+LUaLSInDPimtBj2bCBuj/ekky8/VesapUlhh?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ec0d9c1-ee75-491e-9052-08d9066565a2
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 14:38:01.8143
 (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: SsBDftCT/vOeyCSrNQHHNp6FQ/ers18s50lc1jOET0yicIkqrnqY7a+M7ZAT5B6w0OdSuem2J8s5JcCgRuP/Xw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3675
X-OriginatorOrg: citrix.com

Remove the unneeded usage of the compat layer to copy frame pointers
from guest address space. Instead just use raw_copy_from_guest.

While there drop the checks for the accessibility of one struct
frame_head beyond the current one: it's not clear why it's needed and
all the hypnoses point to dropping such check being harmless. The
worse that could happen is that a failure happens later if data past
frame_head is attempted to be fetched, albeit I'm not able to spot any
such access.

Also drop the explicit truncation of the head pointer in the 32bit
case as all callers already pass a zero extended value. The first
value being rsp from the guest registers, and further calls will use
ebp from frame_head_32bit struct.

Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
Changes since v2:
 - Expand commit message.
---
 xen/arch/x86/oprofile/backtrace.c | 26 +++-----------------------
 1 file changed, 3 insertions(+), 23 deletions(-)

diff --git a/xen/arch/x86/oprofile/backtrace.c b/xen/arch/x86/oprofile/backtrace.c
index bd5d1b0f6ce..45f7fb65fa2 100644
--- a/xen/arch/x86/oprofile/backtrace.c
+++ b/xen/arch/x86/oprofile/backtrace.c
@@ -20,7 +20,6 @@ struct __packed frame_head {
     unsigned long ret;
 };
 typedef struct frame_head frame_head_t;
-DEFINE_XEN_GUEST_HANDLE(frame_head_t);
 
 struct __packed frame_head_32bit {
     uint32_t ebp;
@@ -43,7 +42,6 @@ dump_hypervisor_backtrace(struct vcpu *vcpu, const struct frame_head *head,
     return head->ebp;
 }
 
-#ifdef CONFIG_COMPAT
 static inline int is_32bit_vcpu(struct vcpu *vcpu)
 {
     if (is_hvm_vcpu(vcpu))
@@ -51,7 +49,6 @@ static inline int is_32bit_vcpu(struct vcpu *vcpu)
     else
         return is_pv_32bit_vcpu(vcpu);
 }
-#endif
 
 static struct frame_head *
 dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
@@ -59,34 +56,17 @@ dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
 {
     frame_head_t bufhead;
 
-#ifdef CONFIG_COMPAT
     if ( is_32bit_vcpu(vcpu) )
     {
-        DEFINE_COMPAT_HANDLE(frame_head32_t);
-        __compat_handle_const_frame_head32_t guest_head =
-            { .c = (unsigned long)head };
         frame_head32_t bufhead32;
 
-        /* Also check accessibility of one struct frame_head beyond */
-        if (!compat_handle_okay(guest_head, 2))
-            return 0;
-        if (__copy_from_compat(&bufhead32, guest_head, 1))
+        if (raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)))
             return 0;
         bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
         bufhead.ret = bufhead32.ret;
     }
-    else
-#endif
-    {
-        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
-            const_guest_handle_from_ptr(head, frame_head_t);
-
-        /* Also check accessibility of one struct frame_head beyond */
-        if (!guest_handle_okay(guest_head, 2))
-            return 0;
-        if (__copy_from_guest(&bufhead, guest_head, 1))
-            return 0;
-    }
+    else if (raw_copy_from_guest(&bufhead, head, sizeof(bufhead)))
+        return 0;
     
     if (!xenoprof_add_trace(vcpu, bufhead.ret, mode))
         return 0;
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 14:42:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 14:42:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116445.222254 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZx0j-0006Le-4B; Fri, 23 Apr 2021 14:42:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116445.222254; Fri, 23 Apr 2021 14:42: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 1lZx0j-0006LX-16; Fri, 23 Apr 2021 14:42:25 +0000
Received: by outflank-mailman (input) for mailman id 116445;
 Fri, 23 Apr 2021 14:42:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZx0h-0006LS-V9
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 14:42:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0eb3a09c-0c13-4a51-a648-611fa15bfae2;
 Fri, 23 Apr 2021 14:42:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AD0B1B143;
 Fri, 23 Apr 2021 14:42: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: 0eb3a09c-0c13-4a51-a648-611fa15bfae2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619188941; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=WMkx4lFZZ6aF7tICokjAPDA4xL8hlffKKBVgEcA/d5A=;
	b=BnLNp2mM4R40cYiaN22btOp+HfLeJfyfuSyfkHHhAnf9uEMo+8UhrmBwN+oL0kRQLuht34
	BpV+ZQpn1D84Skq53hM0/Mq4+62BBTtYFoiEYD6eNSIoRguSQECtn6Ucb9NOXfDhgMhAC9
	GdBGWpKg6WDODOZOgL0taVbu5c7I8rI=
Subject: Re: [PATCH v4 1/3] VMX: use a single, global APIC access page
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>,
 George Dunlap <george.dunlap@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 Jun Nakajima <jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
 <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
 <YILXDfXfR69mwfHH@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d4c91967-2934-5b55-4228-e8028a5c4290@suse.com>
Date: Fri, 23 Apr 2021 16:42:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YILXDfXfR69mwfHH@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 16:17, Roger Pau Monné wrote:
> On Fri, Apr 23, 2021 at 12:52:57PM +0200, Jan Beulich wrote:
>> --- a/xen/arch/x86/mm/shadow/set.c
>> +++ b/xen/arch/x86/mm/shadow/set.c
>> @@ -94,6 +94,15 @@ shadow_get_page_from_l1e(shadow_l1e_t sl
>>      ASSERT(!sh_l1e_is_magic(sl1e));
>>      ASSERT(shadow_mode_refcounts(d));
>>  
>> +    /*
>> +     * Check whether refcounting is suppressed on this page. For example,
>> +     * VMX'es APIC access MFN is just a surrogate page.  It doesn't actually
>> +     * get accessed, and hence there's no need to refcount it.
>> +     */
>> +    mfn = shadow_l1e_get_mfn(sl1e);
>> +    if ( mfn_valid(mfn) && page_refcounting_suppressed(mfn_to_page(mfn)) )
>> +        return 0;
>> +
>>      res = get_page_from_l1e(sl1e, d, d);
>>  
>>      /*
>> --- a/xen/arch/x86/mm/shadow/types.h
>> +++ b/xen/arch/x86/mm/shadow/types.h
>> @@ -276,9 +276,16 @@ int shadow_set_l4e(struct domain *d, sha
>>  static void inline
>>  shadow_put_page_from_l1e(shadow_l1e_t sl1e, struct domain *d)
>>  {
>> +    mfn_t mfn;
>> +
>>      if ( !shadow_mode_refcounts(d) )
>>          return;
>>  
>> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) &&
> 
> Nit: I would prefer if assigned mfn outside of the condition, like
> it's done in the chunk added to shadow_get_page_from_l1e.

Well, I did it differently here because the variable really is
only needed inside the if(), whereas in "get" the subsequent
patches use it elsewhere as well. I'll wait what Tim says.

> The rest LGTM, so:
> 
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 14:46:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 14:46:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116450.222266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZx4c-0006Vx-LH; Fri, 23 Apr 2021 14:46:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116450.222266; Fri, 23 Apr 2021 14:46:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZx4c-0006Vq-IK; Fri, 23 Apr 2021 14:46:26 +0000
Received: by outflank-mailman (input) for mailman id 116450;
 Fri, 23 Apr 2021 14:46:25 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vTXC=JU=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lZx4b-0006Vl-Mb
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 14:46:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6058053b-ee82-4073-bc91-828611ab6493;
 Fri, 23 Apr 2021 14:46:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 254F6B13D;
 Fri, 23 Apr 2021 14:46: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: 6058053b-ee82-4073-bc91-828611ab6493
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619189184; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=iOlDEf4b6g39hxyyt263KNDJCaC7PL0B89yn1gbbuCU=;
	b=Tb029Xntddf8XmyjqnvyU47FXXHjPJfHjC+yzj9ghwQFpXgOnMu3b8mpeefNuDAuMiMKgB
	YR6oHeQQJtE52c34TAtE+5VvwFqK3uUrRWzEiGf5Ea/sVMmTyIJtAxL/TM4ueulk4ov7lC
	aTBVLrXe15WQ86j0eJKcrYK8W6wuiSg=
Subject: Re: [PATCH v2 1/3] x86/EFI: sections may not live at VA 0 in PE
 binaries
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: <89e97459-28fd-704f-d424-88afa3a2a4a5@suse.com>
 <748d35dc-5a2f-302f-d789-9797c6726810@suse.com>
 <YILY6sTSMTqt27S9@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <354d226e-1d18-f05b-22db-3600ae2e0bc2@suse.com>
Date: Fri, 23 Apr 2021 16:46:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YILY6sTSMTqt27S9@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 16:25, Roger Pau Monné wrote:
> On Fri, Apr 23, 2021 at 01:03:34PM +0200, Jan Beulich wrote:
>> PE binaries specify section addresses by (32-bit) RVA. GNU ld up to at
>> least 2.36 would silently truncate the (negative) difference when a
>> section is placed below the image base. Such sections would also be
>> wrongly placed ahead of all "normal" ones. Since, for the time being,
>> we build xen.efi with --strip-debug anyway, .stab* can't appear. And
>> .comment has an entry in /DISCARD/ already anyway in the EFI case.
>>
>> Because of their unclear origin, keep the directives for the ELF case
>> though.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> Albeit I would remove those - even if gcc can still generate stabs
> debug info I don't think it's used at all, and in any case a user
> would have to also modify the build system in order to force gcc to
> produce stabs debug info.

I'd be fine dropping them, but I'd prefer doing so in a separate
change then. As to modifying the build system - with all the different
Dwarf versions and with different debug info levels I was wondering
whether we shouldn't allow selecting the precise details via Kconfig.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 15:06:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 15:06:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116458.222278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZxNK-0000N7-9k; Fri, 23 Apr 2021 15:05:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116458.222278; Fri, 23 Apr 2021 15: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 1lZxNK-0000N0-6R; Fri, 23 Apr 2021 15:05:46 +0000
Received: by outflank-mailman (input) for mailman id 116458;
 Fri, 23 Apr 2021 15:05:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=hwNy=JU=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lZxNJ-0000Mv-Bu
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 15:05:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4dbce8c5-ae41-44e2-bc35-ff6506563f1b;
 Fri, 23 Apr 2021 15:05:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4F8DBB140;
 Fri, 23 Apr 2021 15:05: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: 4dbce8c5-ae41-44e2-bc35-ff6506563f1b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619190341; 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=LFuCO138QWspXDMeVojNFKsdMURrIIkEGuF0VF48hlo=;
	b=rc2jCQIDdPkbcgWK6si5oQqN2ng1RGqPrWIhtMzsuUKOfKnx+VbKLB/88E4k8rqYbCHuvI
	xf1KbRbGnecmuOLxE1OFLOEVaWP4/EGQokYwGBZC3yjOE1pDqVWKkIIFL3nuqxND4y6Bsl
	zIiWKPCkBeaOFUWta1b/MvcPde1j19U=
To: Olaf Hering <olaf@aepfle.de>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210423101912.7073-1-olaf@aepfle.de>
From: Juergen Gross <jgross@suse.com>
Subject: Re: [PATCH v1] tools/init-xenstore-domain: fix description of --param
Message-ID: <ef850fff-05b3-0611-d21d-4c77c912fec9@suse.com>
Date: Fri, 23 Apr 2021 17:05:40 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.0
MIME-Version: 1.0
In-Reply-To: <20210423101912.7073-1-olaf@aepfle.de>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="kbrQF9prTsb0EI4ewFdayx5H906alEco9"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--kbrQF9prTsb0EI4ewFdayx5H906alEco9
Content-Type: multipart/mixed; boundary="aual0or30lVa0aMCkabzW6wkCyuUHvYax";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Olaf Hering <olaf@aepfle.de>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
Message-ID: <ef850fff-05b3-0611-d21d-4c77c912fec9@suse.com>
Subject: Re: [PATCH v1] tools/init-xenstore-domain: fix description of --param
References: <20210423101912.7073-1-olaf@aepfle.de>
In-Reply-To: <20210423101912.7073-1-olaf@aepfle.de>

--aual0or30lVa0aMCkabzW6wkCyuUHvYax
Content-Type: multipart/mixed;
 boundary="------------7DCEBFE9BC6B34B13B45F32E"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------7DCEBFE9BC6B34B13B45F32E
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 23.04.21 12:19, Olaf Hering wrote:
> The string is for the binary within the domain, not for the domain itse=
lf.

Sorry, that is not true.

Just because the Mini-OS based xenstore stubdom doesn't need any other
parameters but the xenstore ones doesn't mean that this is true for all
possible xenstore domains.

The parameters passed via --params are just passed on to the domain.
How the domain is filtering out parameters not meant for xenstore is
not relevant here.


Juergen

--------------7DCEBFE9BC6B34B13B45F32E
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="OpenPGP_0xB0DE9DD628BF132F.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy=
cWx
w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O=
f8Z
d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y=
9bf
IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq=
G7/
377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR=
3Jv
c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA=
QIe
AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT=
hpw
dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0=
MbD
1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv=
oPH
Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v=
5QL
+qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ=
2Vu
IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC=
QoL
BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr=
Wf0
teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC=
/nu
AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh=
ITT
d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm=
XBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz=
80h
SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC=
AcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn=
FOX
gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1=
jnD
kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0=
N51
N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l=
otu
fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1=
tqS
EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA=
hsD
BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3=
g3O
ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5=
dM7
wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5=
D+j
LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm=
V2x
AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N=
Eaw
QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW=
nHI
s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR=
wgn
BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV=
bVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk=
pEd
IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA=
QAB
wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw=
Tbe
8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1=
vJz
Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8=
VGi
wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW=
svi
uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX=
zXs
ZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------7DCEBFE9BC6B34B13B45F32E--

--aual0or30lVa0aMCkabzW6wkCyuUHvYax--

--kbrQF9prTsb0EI4ewFdayx5H906alEco9
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCC4kQFAwAAAAAACgkQsN6d1ii/Ey9N
ZQf/Yv0pmT4uffZX4Z5TkS04Vxp4umJHFfjcgPuSpBDz9mPpy1W14C0ZWPq4pCE0AeFFrdYDDB7I
QfmeqTGtdpAotmQzT0s1+geR/Q6FNKV31xVu9rmGwHNzch99bsabGq2/fZJdgcAqfS0WtF16r3KI
BGFP4oNDR1OieA+P8Y1q4aafF+IOjI9RVEnO0NQNVz6t1FD3BV3YcMxOTbnYn6b8gDT2LNZlGBtb
9NrY4sXb7A6U2KnNqxo5UShall1QHAY6b8vknu2vtkIeHKZKmlgR456gWXprin6u5aqs1RNFm+y3
P13enRdFJgAFWtTmGV7QrxEHMoX8wijbK7QokWUSsQ==
=btNk
-----END PGP SIGNATURE-----

--kbrQF9prTsb0EI4ewFdayx5H906alEco9--


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 15:08:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 15:08:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116464.222289 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZxQO-0000Wd-Oa; Fri, 23 Apr 2021 15:08:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116464.222289; Fri, 23 Apr 2021 15:08:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZxQO-0000WW-LO; Fri, 23 Apr 2021 15:08:56 +0000
Received: by outflank-mailman (input) for mailman id 116464;
 Fri, 23 Apr 2021 15:08:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zio3=JU=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lZxQN-0000WR-95
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 15:08:55 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id eca979aa-91f9-4f51-b7e6-646c1065bc6f;
 Fri, 23 Apr 2021 15:08: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: eca979aa-91f9-4f51-b7e6-646c1065bc6f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619190534;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=DUBCAn+X8+8D0PZ8nk1uUNOLpBr/g7wbrdyYCwXwWus=;
  b=BdCPE3om3+fnKGvT8aTCOrHy8sNBwLbE8pm/ef8rSHi59BdKoFhqEy6h
   83Wt89lokUbB/yBCXiYc1EtuYtLpvBoW+rDQ8PNjiPNYXdW8pD65AV5aX
   2jtElMx7MsB82sZEoh/FJe6wZc30y6mJhqYpkp1YKGGRQ63puLGuBJ3oa
   c=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ZA5S7EaeSVj8txApTfzT+Vwq92XsFFOFFSsok78vPWkjhhPJclnV+oQBFAG9gXV1KItt8FSt2F
 XkwUNKpzVmMgkxkvSB/nnxX6UggVwz6vmL9lHSf0/czNPdNc3DWswU8JzEJ+5VyixqQk6HjfmH
 Jp86mpYFbxUitAwZ/PshV/xDnLnSMzYICOSbgKWxvwlM07ipt9Vf/D1SUIasTz4eozR08H/frm
 yRPgDEBuJZ912OhYaho5JTkQCo7JxgUle98A7TnVEOFY3bUCMQ732AeaYZZY+g+cYxhrEcOmCz
 gGM=
X-SBRS: 5.2
X-MesageID: 42108647
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:VAsipaBeLMJ3ZAPlHehfsceALOonbusQ8zAX/mhsVB1YddGZnc
 iynPIdkST5kioVRWtIo729EYOLKEm9ybde544NMbC+GDT3oWfAFvAF0aLO4R3FXxf/+OlUyL
 t6f8FFYuHYIFBmga/BjzWQPM0nxLC8npyApeCb9Ht1SBEvVqcI1XYaNi++MmlbADZLHoA4Ep
 303LshmxOFdW4MZsq2QlkpNtKzxOHjr57tbR4YCxNP0mDn4Q+A07L0HwOV2R0TSVp0sNIf2F
 PIjhDj4eGbu+y7oyW260bo859UlNH9o+EzYPCkt859EFTRozftXqtNcfmovDc5oOaggWxa7+
 XkklMbEOlYr1/UdmGxixPx1wfnyyZG0Q6d9XaoxUHNjOa8aDUmC9dQpY8xSGqp12MQ+OtS/Y
 gO/2WFu4FZBRnN9R6Nl+TgZlVRuWef5V8B+NRj9kB3YM8lR5J66bE7xgdzFqwNGSrrgbpXbd
 VGPYXny9t9NW+BY2uxhBgW/PWcGk4dMz2hWUY4tsmcw1Ft7QxE5npd/sAZk3sanahNMKVs1q
 DBOqRsorlEUtUbW6J7HPsAWsu6EAX2MGjxDF4=
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42108647"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=l4wUxEKR1mcansgxcM/ZSzwxLIvUALNITV3vF0uy5vSvYHcVTFSJOY4oV3JR/lVm4XsF6Tbv+cexu/6Syo+rw90XYJGvgdltB6S80jUeL0FcYFYdKO8PiH2sn89+rVQTEPWtr+WdD+MNlMxJfG5RwgCuSbMrnNoCCArYhtB8G56UoDp42XcVKCStvpxe05TZ6GOQk/ROOjSNNy3KdS2ugt2gbDQBUDGWnGoiwZmr/XF/n1qoH9YqZc1yE7zQYrFmcWJFKd4Uz+nLdf4bmlCY3US58fLbQ9sCw0yQS7cD5RyPFw8//XRu3dY+NrHiloZsY71kpSeALpElWRuuD2bvhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/kWF9SLEDid5HopZY6yt3vHr0m7iPltaTyLP03kOgUE=;
 b=dnGTH0299+E6ulzWlQIppYzICzCyHmrI4/InhX6zfkIjKgwut0DB9N7XpeOBxKkj84TjNqjIqcIkzy87KMUzelsA6+5+iFqXGrg1QtErYhMiWEK67PVcUOLktEM1gpzmIdqOi8FlZlblcHJXXZqgol4/hGQfMWztUdJbBZhHZJwkroxEXTXtix7zNuujKnkeMxS+oeSaGu9Fqw7UlwrYz8FzaVM7iJ1h8O9QGjOKrKSzsIiPazXWoj2jyYDd6jpqLxzG/KcGruBM3OeZKSW4rvulU0Ucu/7sMvlowqRX+9k91ROO23hVMeYG1L6fj3ijUYCCOEGfWcjnDXn5LlPIMQ==
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=/kWF9SLEDid5HopZY6yt3vHr0m7iPltaTyLP03kOgUE=;
 b=nbWn3CPYLHQxbKwsNxBzR/t83wmCxpcazWWXVz1Xcv/9Y4LzGLInxOONsHh1h5WFE8L1/6Ff5Ls8hIiHgQakM0ffcLM68Xw9xy3L29d2yvshntMmbb0uA9Ba3bb6sMcyHkAr9EC7zm2nkHcSIJ+NukF1vWlWeTzfv7YgczICPoo=
Date: Fri, 23 Apr 2021 17:08:45 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Sergey Kovalev <valor@list.ru>
CC: <xen-devel@lists.xen.org>, <zaytsevgu@gmail.com>
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
Message-ID: <YILi/Qft51Vh5QZy@Air-de-Roger>
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
 <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
X-ClientProxiedBy: MR2P264CA0075.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::15) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 66d948cb-0437-420b-8a3e-08d90669b3ff
X-MS-TrafficTypeDiagnostic: DM6PR03MB3834:
X-Microsoft-Antispam-PRVS: <DM6PR03MB3834524392F1C9A3C07DCC5D8F459@DM6PR03MB3834.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: IJYWTu5lF7qisTHBcCtCXhw3toHLAeklOZ2saok595S9VjiAk88zDQ26hYomTvvqNBoPNzfZjDzNOSB+gAD40uwL1oVsNvvE34N9z/YSM+NJgqMurVTNK7prnd1g9h1ApAHeNQwAY5xRbk2ICbRrwkw5HJmmMKtjvSHEhh2DPY+D5KqyqTWWHtcjEIF/uyhOC8DWs5EDa0037XCQley5PlHp3kW7C6VLGBFfArQ9XWokFNTnEf7WZpvNHBb+3LTxpQCsAon09wRPHaOMoJoCNDBIG13o99D/MFWd8O8UVGT3XRIVO31qzeLKPWtVPNsGWbfcC9s5slsyaw3nTcz0lNoHvFmL+hJ+BfsaaQz6Ci9PLKueK44U5X4W4OpfaCqVs1k30P0szrgmkwLM9Rp26paEBlcbiqcnFq0zJBb2PA+U+VXuPO8/sK9QcLYwFdH9jIQ5HVc8s6xGIgk3HWw4exYiV1YqE87IuZ01Em52/VViDo3xJ8Uwy3eLAhSpFWH2eYq02rLeoQU2Bx454KpSU8OTKIYAB0jWWU9ibvt4iPauTggo36okkDbuu/H1lms6CaLa30N2jSU2ppmlyxihUd14kLaJ67ApHw35b7mu3uc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(396003)(376002)(346002)(136003)(39860400002)(66476007)(2906002)(33716001)(5660300002)(6496006)(316002)(6666004)(26005)(9686003)(186003)(66946007)(478600001)(956004)(85182001)(66556008)(38100700002)(83380400001)(6486002)(4326008)(8936002)(6916009)(86362001)(16526019)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 66d948cb-0437-420b-8a3e-08d90669b3ff
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2021 15:08:51.3027
 (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: M74u/1huIhwlcvYWcyqNQ7QA0/0Z8bn8VIVle6zXZzVNkfbHP9WNshp5ijStd+g99LcAAfO+FQcS+sZ1SQEBpg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3834
X-OriginatorOrg: citrix.com

On Fri, Apr 23, 2021 at 01:22:34PM +0300, Sergey Kovalev wrote:
> # Abstract
> 
> After `xl save win win.mem` and then `xl restore win.hvm win.mem`
> the Windows 10 VM remain frozen for about a minute. After the
> minute it becomes responsive.
> 
> During the freeze the OS remains semi-responsive: on `Ctrl+Shift+Esc`
> press the wait cursor appears (blue circle indicator).
> 
> This is an intermittent fault been reproduced only twice.
> 
> # Technical notes
> 
> It have been noticed that there were no timer interrupts during
> the freeze.
> 
> zaytsevgu@gmail.com has debugged the received Xen state file and
> noticed that the flag HPET_TN_PERIODIC been set after unfreeze.
> 
> Based on that he provided two Python scripts: one to check the
> value and one to patch it.
> 
> Both "broken" state files we have been detected and patched
> successfully.
> 
> # Other information
> 
> ## Target machine
> 
> ```bash
> $ uname -a
> Linux localhost 5.4.0-66-generic #74~18.04.2-Ubuntu SMP
> Fri Feb 5 11:17:31 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
> ```
> 
> ## Xen version
> 
> Build from source on tag RELEASE-4.12.4
> 
> ## OS version
> 
> * Windows 10 build 1803 x64

Do you also run other versions of Windows, and in which case I assume
you have never seen the issue on those, or it's this specific version
the only that you use?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116485.222332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTS-00086T-5A; Fri, 23 Apr 2021 16:16:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116485.222332; Fri, 23 Apr 2021 16:16:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTS-00086L-27; Fri, 23 Apr 2021 16:16:10 +0000
Received: by outflank-mailman (input) for mailman id 116485;
 Fri, 23 Apr 2021 16:16:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTQ-00082q-GN
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:08 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 40f9f8eb-a3c7-474f-bd65-2b74a9c96a92;
 Fri, 23 Apr 2021 16:16: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: 40f9f8eb-a3c7-474f-bd65-2b74a9c96a92
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194563;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/0JVnuCD1kTyKWnL2fFlRW6M8QY2OnK/3LpLBIlE20A=;
  b=ZD1tStB6+hgq88/ltjY/kt5ZizCrXeiA7SbENSiGpKo8zV9nVGXWQCfg
   4VvUNlVm8krs96JVeD8ZNPwk1hN3TGPWNrDh/hDGDogAznpac0hscXzJm
   jRDD6XSJT02k20WBVV0+FA32JUT7peET+RHYvUWLDtHe5x4ylCXhv3Wi2
   M=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: Yzwi6UsWocA/VLpaJrQbN1iu2EfYgRtpVV+2bjL8WP8UdYgsqolJJ2FwlNZlp2Yd+TrgwULUGh
 70GJzeuNBzbNQ/bgO/Vut68y/VJLcCoXoB8Vxhyxy/+bsAIpzz7wsxP268s/QJWWeUkhiR6BBY
 fhaFUfMCC/jCZ0HCJ0NIpOuLGjYUZ8j+TT4OX91GXpNzE2HN6ISSljWJG8Bl9NriiIYjqLPt5U
 wgtQ/HY9uOE/LD8BuWF+yTV/3k4XnVaNcQVHw7a2YxjCLYEp60uivA/hnLH8d0u383+AnonV2e
 8tg=
X-SBRS: 5.1
X-MesageID: 42285499
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9bG+oaGQrfM37lI3pLqFOpHXdLJzesId70hD6mlYVQFVfsuEl8
 qngfQc0lvOhCwMXWw78OrsBICrSxrnlaJdy48XILukQU3aqHKlRbsSibfK7h/BP2nF9uBb3b
 p9aKQWMrfNJHVzkMqS2maFOvk6xt3vys6VrMP/61socg1wcaFn6G5Ce2OmO2l7XhNPC5Z8NL
 f03LslmxOadX4abtu2CxA+NoCum/TxmI/7ehlDPhY76WC15g+A0qLwEBSTw34lIlFy6IolmF
 KlryXJop+Nntv+4R/a2m/V4f1t6abc4+oGPuOgoIw4Lj3tjyyheYhuXaaT1QpF3N2H2RIRv/
 Tn5zsmIsRv+1PdF1vF3ifF6k3b/xsFr1/k1FOCjnPoraXCNUwHIvsEv611WF/9ySMbzbZB+Z
 MO5U21nd5rKCmFuyLH693BR3hR5zGJiEtnq8E/pThiS4cEAYUhy7A3zQduP7orOjn104wjGP
 kGNrCn2N9mNWmXaH3UpQBUsaWRd0V2Gh+HR34LsdCO3w5Xm2hkz1AZyNZ3pAZ5yK4A
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42285499"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 2/8] libxl: Replace QEMU's command line short-form boolean option
Date: Fri, 23 Apr 2021 17:15:52 +0100
Message-ID: <20210423161558.224367-3-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210423161558.224367-1-anthony.perard@citrix.com>
References: <20210423161558.224367-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Short-form boolean options are deprecated in QEMU 6.0.
Upstream commit that deprecate those: ccd3b3b8112b ("qemu-option: warn
for short-form boolean options").

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/libs/light/libxl_dm.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/tools/libs/light/libxl_dm.c b/tools/libs/light/libxl_dm.c
index 3599a82ef01b..0a0c1ef7c62e 100644
--- a/tools/libs/light/libxl_dm.c
+++ b/tools/libs/light/libxl_dm.c
@@ -977,14 +977,14 @@ static char *dm_spice_options(libxl__gc *gc,
     if (spice->host)
         opt = GCSPRINTF("%s,addr=%s", opt, spice->host);
     if (libxl_defbool_val(spice->disable_ticketing))
-        opt = GCSPRINTF("%s,disable-ticketing", opt);
+        opt = GCSPRINTF("%s,disable-ticketing=on", opt);
     else
         opt = GCSPRINTF("%s,password=%s", opt, spice->passwd);
     opt = GCSPRINTF("%s,agent-mouse=%s", opt,
                     libxl_defbool_val(spice->agent_mouse) ? "on" : "off");
 
     if (!libxl_defbool_val(spice->clipboard_sharing))
-        opt = GCSPRINTF("%s,disable-copy-paste", opt);
+        opt = GCSPRINTF("%s,disable-copy-paste=on", opt);
 
     if (spice->image_compression)
         opt = GCSPRINTF("%s,image-compression=%s", opt,
@@ -1224,7 +1224,7 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
         flexarray_append(dm_args, "-chardev");
         if (state->dm_monitor_fd >= 0) {
             flexarray_append(dm_args,
-                GCSPRINTF("socket,id=libxl-cmd,fd=%d,server,nowait",
+                GCSPRINTF("socket,id=libxl-cmd,fd=%d,server=on,wait=off",
                           state->dm_monitor_fd));
 
             /*
@@ -1237,7 +1237,7 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
         } else {
             flexarray_append(dm_args,
                              GCSPRINTF("socket,id=libxl-cmd,"
-                                       "path=%s,server,nowait",
+                                       "path=%s,server=on,wait=off",
                                        libxl__qemu_qmp_path(gc, guest_domid)));
         }
 
@@ -1247,7 +1247,7 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
         flexarray_append(dm_args, "-chardev");
         flexarray_append(dm_args,
                          GCSPRINTF("socket,id=libxenstat-cmd,"
-                                        "path=%s/qmp-libxenstat-%d,server,nowait",
+                                        "path=%s/qmp-libxenstat-%d,server=on,wait=off",
                                         libxl__run_dir_path(), guest_domid));
 
         flexarray_append(dm_args, "-mon");
@@ -1264,7 +1264,7 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
             case LIBXL_CHANNEL_CONNECTION_SOCKET:
                 path = guest_config->channels[i].u.socket.path;
                 chardev = GCSPRINTF("socket,id=libxl-channel%d,path=%s,"
-                                    "server,nowait", devid, path);
+                                    "server=on,wait=off", devid, path);
                 break;
             default:
                 /* We've forgotten to add the clause */
@@ -1577,7 +1577,7 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
         nics[i].colo_##sock_port) {                                         \
         flexarray_append(dm_args, "-chardev");                              \
         flexarray_append(dm_args,                                           \
-            GCSPRINTF("socket,id=%s,host=%s,port=%s,server,nowait",         \
+            GCSPRINTF("socket,id=%s,host=%s,port=%s,server=on,wait=off",    \
                       nics[i].colo_##sock_id,                               \
                       nics[i].colo_##sock_ip,                               \
                       nics[i].colo_##sock_port));                           \
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116484.222320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTN-00084D-Tu; Fri, 23 Apr 2021 16:16:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116484.222320; Fri, 23 Apr 2021 16:16: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 1lZyTN-000846-Qp; Fri, 23 Apr 2021 16:16:05 +0000
Received: by outflank-mailman (input) for mailman id 116484;
 Fri, 23 Apr 2021 16:16:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTM-00082v-3w
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:04 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c77d37c6-6766-4ce5-bcd9-5c044828a554;
 Fri, 23 Apr 2021 16:16: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: c77d37c6-6766-4ce5-bcd9-5c044828a554
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194562;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=FsT8vvDcYT5FDetvhVj8ocsH//yAfXcxWD8SI48U9Oc=;
  b=af1Kn1zU4PT+EiHdKiX0DwSAZi/kxmMa1Fivg58kIWrrDEUCaDWJraHp
   88367FZNymuR5ICSlnWqGhjk36IJu08cOdxo1qwFad/GeDbxzl0rfTXO3
   1o2ts7TwkqgBnQlTneHZQLbkYdNyquhUodEbGGVbdgrX22wGz42my82Uj
   8=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 5C9moXt+/ueguOQHh65Yi4Tfu06nqZm3bcHQVpj5Ncf4XWyMMHKjrUviqsmf8bwgAWCVn5AIl4
 eE2VMEC1qKiouq5OLGpX1hS+nRIiJRGsiRETlVN3J7Qttid5fcZ70zBZVpcLuUNmOpjcJXHwR6
 SCRaQRx8tdy+/fJ24ddxFBYDtyOK8Q4oRuxs0KhJY49jEaFeh4NowqpM9iO1Gw6sIFqtd/O9uV
 C/xeyuGz5knKhTrGFGz2DP71dTVmykYhMUUqlfk4c6v1y8TrFaFlUpWJJjmtJRyQwXkt8TSm+A
 7VM=
X-SBRS: 5.1
X-MesageID: 42285498
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:qwi5hK5NlCPQPmYwiwPXwE3XdLJzesId70hD6mlaY3VuHPCwvc
 aogfgdyFvIkz4XQn4tgpStP6OHTHPa+/dOkO8sFJ2lWxTrv3btEZF64eLZskXdMgD36+I178
 ddWodkDtmYNzRHpOb8pDK1CtMxhOSAmZrY4Nv261dIYUVUZ7p77wF/YzzrdXFeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7ag+a7OWhIICwUq7wODl1qTmdrHOiOVwwsEVHd3yaoimF
 K16jDR3LmpsP2w13bntlP70pI+orTc4+oGIMSNj8QPQw+c6DqVWA==
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42285498"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 1/8] libxl: Replace deprecated QMP command by "query-cpus-fast"
Date: Fri, 23 Apr 2021 17:15:51 +0100
Message-ID: <20210423161558.224367-2-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210423161558.224367-1-anthony.perard@citrix.com>
References: <20210423161558.224367-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

We use the deprecated QMP command "query-cpus" which is removed in the
QEMU 6.0 release. There's a replacement which is "query-cpus-fast",
and have been available since QEMU 2.12 (April 2018).

This patch try the new command first and when the command isn't
available, it fall back to the deprecated one so libxl still works
with older QEMU versions.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---

Notes:
    This is v2 of '[XEN PATCH for-4.15] libxl: Replace deprecated QMP
    command by "query-cpus-fast"' as the patch never made it into the
    release.
    
    changes:
    - introduce a fallback for when the new command isn't available.

 tools/libs/light/libxl_domain.c | 103 ++++++++++++++++++++++++++++++--
 1 file changed, 98 insertions(+), 5 deletions(-)

diff --git a/tools/libs/light/libxl_domain.c b/tools/libs/light/libxl_domain.c
index 5d4ec9071160..8c003aa7cb04 100644
--- a/tools/libs/light/libxl_domain.c
+++ b/tools/libs/light/libxl_domain.c
@@ -1740,6 +1740,35 @@ static int libxl__set_vcpuonline_xenstore(libxl__gc *gc, uint32_t domid,
     return rc;
 }
 
+static int qmp_parse_query_cpus_fast(libxl__gc *gc,
+                                     libxl_domid domid,
+                                     const libxl__json_object *response,
+                                     libxl_bitmap *const map)
+{
+    int i;
+    const libxl__json_object *cpu;
+
+    libxl_bitmap_set_none(map);
+    /* Parse response to QMP command "query-cpus-fast":
+     * [ { 'cpu-index': 'int',...} ]
+     */
+    for (i = 0; (cpu = libxl__json_array_get(response, i)); i++) {
+        unsigned int cpu_index;
+        const libxl__json_object *o;
+
+        o = libxl__json_map_get("cpu-index", cpu, JSON_INTEGER);
+        if (!o) {
+            LOGD(ERROR, domid, "Failed to retrieve CPU index.");
+            return ERROR_QEMU_API;
+        }
+
+        cpu_index = libxl__json_object_get_integer(o);
+        libxl_bitmap_set(map, cpu_index);
+    }
+
+    return 0;
+}
+
 static int qmp_parse_query_cpus(libxl__gc *gc,
                                 libxl_domid domid,
                                 const libxl__json_object *response,
@@ -1778,8 +1807,13 @@ typedef struct set_vcpuonline_state {
     int index; /* for loop on final_map */
 } set_vcpuonline_state;
 
+static void set_vcpuonline_qmp_cpus_fast_queried(libxl__egc *,
+    libxl__ev_qmp *, const libxl__json_object *, int rc);
 static void set_vcpuonline_qmp_cpus_queried(libxl__egc *,
     libxl__ev_qmp *, const libxl__json_object *, int rc);
+static void set_vcpuonline_qmp_query_cpus_parse(libxl__egc *,
+    libxl__ev_qmp *qmp, const libxl__json_object *,
+    bool query_cpus_fast, int rc);
 static void set_vcpuonline_qmp_add_cpu(libxl__egc *,
     libxl__ev_qmp *, const libxl__json_object *response, int rc);
 static void set_vcpuonline_timeout(libxl__egc *egc,
@@ -1840,8 +1874,8 @@ int libxl_set_vcpuonline(libxl_ctx *ctx, uint32_t domid,
                                              set_vcpuonline_timeout,
                                              LIBXL_QMP_CMD_TIMEOUT * 1000);
             if (rc) goto out;
-            qmp->callback = set_vcpuonline_qmp_cpus_queried;
-            rc = libxl__ev_qmp_send(egc, qmp, "query-cpus", NULL);
+            qmp->callback = set_vcpuonline_qmp_cpus_fast_queried;
+            rc = libxl__ev_qmp_send(egc, qmp, "query-cpus-fast", NULL);
             if (rc) goto out;
             return AO_INPROGRESS;
         default:
@@ -1860,11 +1894,39 @@ int libxl_set_vcpuonline(libxl_ctx *ctx, uint32_t domid,
     return AO_INPROGRESS;
 }
 
+static void set_vcpuonline_qmp_cpus_fast_queried(libxl__egc *egc,
+    libxl__ev_qmp *qmp, const libxl__json_object *response, int rc)
+{
+    EGC_GC;
+    set_vcpuonline_state *svos = CONTAINER_OF(qmp, *svos, qmp);
+
+    if (rc == ERROR_QMP_COMMAND_NOT_FOUND) {
+        /* Try again, we probably talking to a QEMU older than 2.12 */
+        qmp->callback = set_vcpuonline_qmp_cpus_queried;
+        rc = libxl__ev_qmp_send(egc, qmp, "query-cpus", NULL);
+        if (rc) goto out;
+        return;
+    }
+
+out:
+    set_vcpuonline_qmp_query_cpus_parse(egc, qmp, response, true, rc);
+}
+
 static void set_vcpuonline_qmp_cpus_queried(libxl__egc *egc,
     libxl__ev_qmp *qmp, const libxl__json_object *response, int rc)
 {
     EGC_GC;
     set_vcpuonline_state *svos = CONTAINER_OF(qmp, *svos, qmp);
+
+    set_vcpuonline_qmp_query_cpus_parse(egc, qmp, response, false, rc);
+}
+
+static void set_vcpuonline_qmp_query_cpus_parse(libxl__egc *egc,
+    libxl__ev_qmp *qmp, const libxl__json_object *response,
+    bool query_cpus_fast, int rc)
+{
+    EGC_GC;
+    set_vcpuonline_state *svos = CONTAINER_OF(qmp, *svos, qmp);
     int i;
     libxl_bitmap current_map;
 
@@ -1876,7 +1938,11 @@ static void set_vcpuonline_qmp_cpus_queried(libxl__egc *egc,
     if (rc) goto out;
 
     libxl_bitmap_alloc(CTX, &current_map, svos->info.vcpu_max_id + 1);
-    rc = qmp_parse_query_cpus(gc, qmp->domid, response, &current_map);
+    if (query_cpus_fast) {
+        rc = qmp_parse_query_cpus_fast(gc, qmp->domid, response, &current_map);
+    } else {
+        rc = qmp_parse_query_cpus(gc, qmp->domid, response, &current_map);
+    }
     if (rc) goto out;
 
     libxl_bitmap_copy_alloc(CTX, final_map, svos->cpumap);
@@ -2121,6 +2187,9 @@ typedef struct {
 
 static void retrieve_domain_configuration_lock_acquired(
     libxl__egc *egc, libxl__ev_slowlock *, int rc);
+static void retrieve_domain_configuration_cpu_fast_queried(
+    libxl__egc *egc, libxl__ev_qmp *qmp,
+    const libxl__json_object *response, int rc);
 static void retrieve_domain_configuration_cpu_queried(
     libxl__egc *egc, libxl__ev_qmp *qmp,
     const libxl__json_object *response, int rc);
@@ -2198,8 +2267,8 @@ static void retrieve_domain_configuration_lock_acquired(
         if (rc) goto out;
         libxl_bitmap_alloc(CTX, &rdcs->qemuu_cpus,
                            d_config->b_info.max_vcpus);
-        rdcs->qmp.callback = retrieve_domain_configuration_cpu_queried;
-        rc = libxl__ev_qmp_send(egc, &rdcs->qmp, "query-cpus", NULL);
+        rdcs->qmp.callback = retrieve_domain_configuration_cpu_fast_queried;
+        rc = libxl__ev_qmp_send(egc, &rdcs->qmp, "query-cpus-fast", NULL);
         if (rc) goto out;
         has_callback = true;
     }
@@ -2210,6 +2279,30 @@ static void retrieve_domain_configuration_lock_acquired(
         retrieve_domain_configuration_end(egc, rdcs, rc);
 }
 
+static void retrieve_domain_configuration_cpu_fast_queried(
+    libxl__egc *egc, libxl__ev_qmp *qmp,
+    const libxl__json_object *response, int rc)
+{
+    EGC_GC;
+    retrieve_domain_configuration_state *rdcs =
+        CONTAINER_OF(qmp, *rdcs, qmp);
+
+    if (rc == ERROR_QMP_COMMAND_NOT_FOUND) {
+        /* Try again, we probably talking to a QEMU older than 2.12 */
+        rdcs->qmp.callback = retrieve_domain_configuration_cpu_queried;
+        rc = libxl__ev_qmp_send(egc, &rdcs->qmp, "query-cpus", NULL);
+        if (rc) goto out;
+        return;
+    }
+
+    if (rc) goto out;
+
+    rc = qmp_parse_query_cpus_fast(gc, qmp->domid, response, &rdcs->qemuu_cpus);
+
+out:
+    retrieve_domain_configuration_end(egc, rdcs, rc);
+}
+
 static void retrieve_domain_configuration_cpu_queried(
     libxl__egc *egc, libxl__ev_qmp *qmp,
     const libxl__json_object *response, int rc)
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116486.222344 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTT-00088H-Dw; Fri, 23 Apr 2021 16:16:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116486.222344; Fri, 23 Apr 2021 16: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 1lZyTT-000889-Ad; Fri, 23 Apr 2021 16:16:11 +0000
Received: by outflank-mailman (input) for mailman id 116486;
 Fri, 23 Apr 2021 16:16:10 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTS-00087R-K9
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:10 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 35ced14c-ff98-4f12-9faa-725c624e5efe;
 Fri, 23 Apr 2021 16:16: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: 35ced14c-ff98-4f12-9faa-725c624e5efe
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194569;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=e0LTxQLG6A5IsUQiwdNWsSmOOkLTe8ooqtK21GVQ8t0=;
  b=KbbgA7t4chdajQh13E9811kTq8blGUiLEmyZwhe5oITRqqR++5dWR9g8
   VLAtiBbBYoFgWDj7Ss4ZrRFozg8lIfzFXQQvGrfw/9fgOtj56eSciRUPF
   y4/japCsNtkwAyT6MSzZIgaMuzGe7uwCxp4Lmp1AiQHYH/ZuTI4scSnPl
   c=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: qYlh+ZA40hvYi3FXuKBxfCYHow35VphSwxelKsLG/C6xRdvct1yIlLIwiNzt7WQxkch5k22idJ
 iMqfBy0jmvglUt7U9nqfI1d/SO1kRIol0tjcmxWhYG0gKkjcThwylWoUkUd7i8OVg9hYZSN6UT
 jITG9HlladJSTws+m52CcUCd19KYrDvhI1lMZBVVCA4GWIrCFv9H0PNde9kxb+//iEmKkM+gNi
 Iw1wLE2yfs3/gtUTcTAf0ESDMNnILx6D7UL1bDGBQDZ/GhLXtGot47edv6DF1CKvwcUrVk7fQL
 veo=
X-SBRS: 5.1
X-MesageID: 42285532
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:FzFZ56jvUfnojb/DnvvnlfflsHBQXwh13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy4N5B9efdSPhv3alK5wn0Jv6z1TbaknD38N+9Y
 MlSahxD9XsEUN35PyR3CCUG8stqePpzImGnuHbpk0CcShPS4VNqzh0ERyaFEoefngiObMcGI
 CH7sRK4xqMEE5nDfiTPXUOU+jdq9CjrvuPDSIuPBI79BKIyQqh9b+SKXOl9y0DWDBCy6pKyx
 mmryXF4MyY0s2T+1vn+EL4q79Xn9bgzdUrPr3wtuElbg/CpyztSIBoW7iptC04rue1+D8R4a
 XxiiZlBetfwTf8eXy0vAvM1mDboUkTwk6n83C0qz/CptH0Xz0zAcYpv/MmTjLpr3AOkfs59Y
 Aj5RP/i7NnSSnusQ642v3zEzZtrUawqWpKq59ps1VvFbEwRZUUkZYS5ypuYfE9NRO/0q8LOs
 90AvrR4f5HGGnqFUzxjy1UzNugUm9bJGb+fmEy/sic0z1hlHtk1UcvxMsGgnca9J4mIqM0n9
 j5Dg==
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42285532"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 8/8] libxl: Replace QMP command "change" by "blockdev-change-media"
Date: Fri, 23 Apr 2021 17:15:58 +0100
Message-ID: <20210423161558.224367-9-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210423161558.224367-1-anthony.perard@citrix.com>
References: <20210423161558.224367-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

"change" command as been removed in QEMU 6.0. We can use
"blockdev-change-medium" instead.

Using `id` with "blockdev-change-medium" requires a change to the QEMU
command line, introduced by:
    "libxl: Use -device for cd-rom drives"

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/libs/light/libxl_disk.c | 24 +++++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

diff --git a/tools/libs/light/libxl_disk.c b/tools/libs/light/libxl_disk.c
index faabdea7a4c3..93936d0dd0f8 100644
--- a/tools/libs/light/libxl_disk.c
+++ b/tools/libs/light/libxl_disk.c
@@ -962,12 +962,26 @@ static void cdrom_insert_addfd_cb(libxl__egc *egc,
     fdset = libxl__json_object_get_integer(o);
 
     devid = libxl__device_disk_dev_number(disk->vdev, NULL, NULL);
-    QMP_PARAMETERS_SPRINTF(&args, "device", "ide-%i", devid);
-    QMP_PARAMETERS_SPRINTF(&args, "target", "/dev/fdset/%d", fdset);
-    libxl__qmp_param_add_string(gc, &args, "arg",
-        libxl__qemu_disk_format_string(disk->format));
     qmp->callback = cdrom_insert_inserted;
-    rc = libxl__ev_qmp_send(egc, qmp, "change", args);
+
+    /* "change" is deprecated since QEMU 2.5 and the `device` parameter for
+     * for "blockdev-change-medium" is deprecated in QEMU 2.8.
+     * But `id` is only available in 2.8 we'll start using the new command
+     * with `id` with QEMU 2.8.
+     */
+    if (libxl__qmp_ev_qemu_compare_version(qmp, 2, 8, 0) >= 0) {
+        QMP_PARAMETERS_SPRINTF(&args, "id", "ide-%i", devid);
+        QMP_PARAMETERS_SPRINTF(&args, "filename", "/dev/fdset/%d", fdset);
+        libxl__qmp_param_add_string(gc, &args, "format",
+            libxl__qemu_disk_format_string(disk->format));
+        rc = libxl__ev_qmp_send(egc, qmp, "blockdev-change-medium", args);
+    } else {
+        QMP_PARAMETERS_SPRINTF(&args, "device", "ide-%i", devid);
+        QMP_PARAMETERS_SPRINTF(&args, "target", "/dev/fdset/%d", fdset);
+        libxl__qmp_param_add_string(gc, &args, "arg",
+            libxl__qemu_disk_format_string(disk->format));
+        rc = libxl__ev_qmp_send(egc, qmp, "change", args);
+    }
 out:
     if (rc)
         cdrom_insert_done(egc, cis, rc); /* must be last */
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116487.222356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTW-0008Bt-P3; Fri, 23 Apr 2021 16:16:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116487.222356; Fri, 23 Apr 2021 16:16:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTW-0008Be-K7; Fri, 23 Apr 2021 16:16:14 +0000
Received: by outflank-mailman (input) for mailman id 116487;
 Fri, 23 Apr 2021 16:16:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTV-00082q-GU
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:13 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ce440170-617b-44de-9b89-b1e343738080;
 Fri, 23 Apr 2021 16:16: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: ce440170-617b-44de-9b89-b1e343738080
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194564;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=6JE1Ba2kHKFU49wB1sMfUR0XT1WWVSsakxmysofkZWc=;
  b=Mg7lFc9JwfYrX5IoJaiQwhWEiqD3it+l7X/D/tis4xoBZb/BGNb2kV/L
   A4QMFIQAgCiIlliKdmiQJYp5S+3P0Rb1reiHr15XzLxjgY64C9Na5QHTv
   e8MOaSkJnWCywdFceVR5VH923TML4oea6NoALPxi7tkrSXl6FZeSrehsc
   c=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: +zFP/7K3fTyk/y9qliyS+NZJy/a07PW4Th7efl0L3pvA+uXSrNVKcp+yJmfHD1e/y/4r/6KSwF
 FKLJQEYvq5Xw7Y5zmqR3C+36/IEr/h7IvHOujfSdmtsM4A5+oSade060+gTvG33g9eBkD8Kcp0
 w7mRjX5LUxNTdrA6EF9MWFAqodGEMKzE3+PZ8XcKyamAmIcx+//gJ1flyzAqejUTVH4ARnyCtK
 Ush4GZfJV+ccOqLo+BUCooQENbOAKgbXo3xV62YmZ0NeKP0wnpkKMeKFm046DER56Ey6TmjfMP
 ghw=
X-SBRS: 5.1
X-MesageID: 42290092
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:6iN34KzGZrT95DE3+VaEKrPxpe4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheVysd07o
 0lSaR3DbTLZmRSpczx7BCkV/Mpx9ea+K6l7N2utEtFZysCUdAC0y5SDAGHHkpqACxPApQkHJ
 SRj/A33QaIU3IRc8i9Gz05T/HOzue73q7OTDwnI1oc6AeIhS6187KSKXSl9zoXTj8n+8ZEzU
 HriAr8j5/Dj9iazVvm23bX/9BqnrLau6N+LeitruRQFTn2kAavY+1aKvC/lRQ4uvum5lpvsP
 SkmWZHA+1J53ncfn64rHLWsmGOvgoG0HPsxUSVhnHuu6XCNUsHIvBcjoFUeAax0TtDgPhA0b
 lG12/cl51bAQKoplWY2/H0VgpnnkfxnHw6keR7tQ07baIibtZqzbA3zQdwKtMtDSj64IcoHK
 1FF8fH/stbdluccjTwonRv6MbEZAV9Ij62Bmw5/uCF2Tlfm350i2ECwtYEo3sG/JUhD7FZ+u
 X/NLhynr0mdL5ZUYtNQMM6BeenAG3ERhzBdEiIJ078Ka0BM3XR77n6/asy/+PvXJAT1pM9lN
 DgXTpjxC8PUnOrLffL8IxA8xjLTmn4dy/q0Nti659wvaC5S6HsNSGFVVAyg8qtq/gSGaTgKr
 WOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+W1/mmLOIFqTa8sjgNNrDLrvkFjgpHknlBG
 EYYTT1LMJcqkSiWnryhgnNS2rgE3aPuK5YIez/xaw+2YINPopDvkw+klKi/PyGLjVEr+gxZ0
 txILTul6uhvmmo9WPU72FkUyAtTnp90fHFaTdntAUKO0T7ffIooNOEY11f23OBO1tiVc/MCR
 VeoF524KqzKJSVyUkZepaaG1Pfq0FWiGOBTp8alKHG2NzsfYkgCI06HIZrEx/QKhBzkQF2iW
 tKZQMeXHXDHjf2hajNtu1SOMjvM/1HxCaiO4p9tG/Wv0T0n7BTelIrGxqVFfOxrSlrbTxOnV
 F1+7IYm9O76EqSAFp6pv85Pl1KYHmQG5RcAm2+Fclps7j2ZQB9SnqLjzSGixc1PnHn7VkWm3
 aJF1zqRdjbRlVaoXxWyaDs7Rd9cXicZVt5bjRgvZR6DnmugAc67cabIq6y2XCWcF0M36UUNy
 zEeyIbJmpVtqaK/Q/QnDaJDnM9wJoyeuTbEbQ4arnWnnegMpeBm61DH/ha+v9eRZnTm/5OVe
 KUYAmOKjzkT+svxgyOv34gfDBut2NMq4Kc5DT1qGyjmHIvC/vbJ1prA7kdPtGH9mDhA/KFyo
 9wg945tfa5W1+BIeKu2OXSdXpOOxnTqWm5Q6UzpZdYsbk7ubFzE5PYOAG4o01vzVE7NoP5hU
 keSKN07PTdIYdpZdUVYD8c8VwzltiDRXFbwDDeE6s7ZxUqgHDaNd/SvOaNprorH0GbpAz/fV
 OY6DZQ+v/ZXy2Fkb4WYphAUVh+eQw58jBl+ujHaojbTAOtfOtH9EChMnC8fKRGIZL1bYk4v1
 J/+ZWQg+STdyDkwwjesjtwP7JW/w+cMLKPKRPJHfQN7sezNluNiLa7+cK/jD/4Tj2gdkQT7L
 c1BnA4f4BEkTktjIo+zyi0ROj2uyse4iVj3Q0=
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42290092"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 3/8] libxl: Replace deprecated "cpu-add" QMP command by "device_add"
Date: Fri, 23 Apr 2021 17:15:53 +0100
Message-ID: <20210423161558.224367-4-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210423161558.224367-1-anthony.perard@citrix.com>
References: <20210423161558.224367-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

The command "cpu-add" for CPU hotplug is deprecated and has been
removed from QEMU 6.0 (April 2021). We need to add cpus with the
command "device_add" now.

In order to find out which parameters to pass to "device_add" we first
make a call to "query-hotpluggable-cpus" which list the cpus drivers
and properties.

The algorithm to figure out which CPU to add, and by extension if any
CPU needs to be hotplugged, is in the function that adds the cpus.
Because of that, the command "query-hotpluggable-cpus" is always
called, even when not needed.

In case we are using a version of QEMU older than 2.7 (Sept 2016)
which don't have "query-hotpluggable-cpus", we fallback to using
"cpu-add".

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/libs/light/libxl_domain.c | 87 ++++++++++++++++++++++++++++++++-
 1 file changed, 85 insertions(+), 2 deletions(-)

diff --git a/tools/libs/light/libxl_domain.c b/tools/libs/light/libxl_domain.c
index 8c003aa7cb04..e130deb0757f 100644
--- a/tools/libs/light/libxl_domain.c
+++ b/tools/libs/light/libxl_domain.c
@@ -1805,6 +1805,7 @@ typedef struct set_vcpuonline_state {
     libxl_dominfo info;
     libxl_bitmap final_map;
     int index; /* for loop on final_map */
+    const char *cpu_driver;
 } set_vcpuonline_state;
 
 static void set_vcpuonline_qmp_cpus_fast_queried(libxl__egc *,
@@ -1814,6 +1815,10 @@ static void set_vcpuonline_qmp_cpus_queried(libxl__egc *,
 static void set_vcpuonline_qmp_query_cpus_parse(libxl__egc *,
     libxl__ev_qmp *qmp, const libxl__json_object *,
     bool query_cpus_fast, int rc);
+static void set_vcpuonline_qmp_query_hotpluggable_cpus(libxl__egc *egc,
+    libxl__ev_qmp *qmp, const libxl__json_object *response, int rc);
+static void set_vcpuonline_qmp_device_add_cpu(libxl__egc *,
+    libxl__ev_qmp *, const libxl__json_object *response, int rc);
 static void set_vcpuonline_qmp_add_cpu(libxl__egc *,
     libxl__ev_qmp *, const libxl__json_object *response, int rc);
 static void set_vcpuonline_timeout(libxl__egc *egc,
@@ -1951,13 +1956,54 @@ static void set_vcpuonline_qmp_query_cpus_parse(libxl__egc *egc,
         libxl_bitmap_reset(final_map, i);
     }
 
+    qmp->callback = set_vcpuonline_qmp_query_hotpluggable_cpus;
+    rc = libxl__ev_qmp_send(egc, qmp, "query-hotpluggable-cpus", NULL);
+
 out:
     libxl_bitmap_dispose(&current_map);
+    if (rc)
+        set_vcpuonline_done(egc, svos, rc); /* must be last */
+}
+
+static void set_vcpuonline_qmp_query_hotpluggable_cpus(libxl__egc *egc,
+    libxl__ev_qmp *qmp, const libxl__json_object *response, int rc)
+{
+    set_vcpuonline_state *svos = CONTAINER_OF(qmp, *svos, qmp);
+    const libxl__json_object *cpu;
+    const libxl__json_object *cpu_driver;
+
+    if (rc == ERROR_QMP_COMMAND_NOT_FOUND) {
+        /* We are probably connected to a version of QEMU older than 2.7,
+         * let's fallback to using "cpu-add" command. */
+        svos->index = -1;
+        set_vcpuonline_qmp_add_cpu(egc, qmp, NULL, 0); /* must be last */
+        return;
+    }
+
+    if (rc) goto out;
+
+    /* Parse response to QMP command "query-hotpluggable-cpus"
+     * [ { 'type': 'str', ... ]
+     *
+     * We are looking for the driver name for CPU to be hotplug. We'll
+     * assume that cpus property are core-id=0, thread-id=0 and
+     * socket-id=$cpu_index, as we start qemu with "-smp %d,maxcpus=%d", so
+     * we don't parse the properties listed for each hotpluggable cpus.
+     */
+
+    cpu = libxl__json_array_get(response, 0);
+    cpu_driver = libxl__json_map_get("type", cpu, JSON_STRING);
+    svos->cpu_driver = libxl__json_object_get_string(cpu_driver);
+
+    if (!svos->cpu_driver)
+        rc = ERROR_QEMU_API;
+
+out:
     svos->index = -1;
-    set_vcpuonline_qmp_add_cpu(egc, qmp, NULL, rc); /* must be last */
+    set_vcpuonline_qmp_device_add_cpu(egc, qmp, NULL, rc); /* must be last */
 }
 
-static void set_vcpuonline_qmp_add_cpu(libxl__egc *egc,
+static void set_vcpuonline_qmp_device_add_cpu(libxl__egc *egc,
     libxl__ev_qmp *qmp, const libxl__json_object *response, int rc)
 {
     STATE_AO_GC(qmp->ao);
@@ -1969,6 +2015,43 @@ static void set_vcpuonline_qmp_add_cpu(libxl__egc *egc,
 
     if (rc) goto out;
 
+    while (libxl_bitmap_cpu_valid(map, ++svos->index)) {
+        if (libxl_bitmap_test(map, svos->index)) {
+            qmp->callback = set_vcpuonline_qmp_device_add_cpu;
+            libxl__qmp_param_add_string(gc, &args, "id", GCSPRINTF("cpu-%d", svos->index));
+            libxl__qmp_param_add_string(gc, &args, "driver", svos->cpu_driver);
+            /* We'll assume that we start QEMU with -smp %d,maxcpus=%d, so
+             * that "core-id" and "thread-id" are always 0 so that
+             * "socket-id" correspond the cpu index.
+             * Those properties are otherwise listed by
+             * "query-hotpluggable-cpus". */
+            libxl__qmp_param_add_integer(gc, &args, "socket-id", svos->index);
+            libxl__qmp_param_add_integer(gc, &args, "core-id", 0);
+            libxl__qmp_param_add_integer(gc, &args, "thread-id", 0);
+            rc = libxl__ev_qmp_send(egc, qmp, "device_add", args);
+            if (rc) goto out;
+            return;
+        }
+    }
+
+out:
+    set_vcpuonline_done(egc, svos, rc);
+}
+
+/* Fallback function for QEMU older than 2.7, when
+ * 'query-hotpluggable-cpus' wasn't available and vcpu object couldn't be
+ * added with 'device_add'. */
+static void set_vcpuonline_qmp_add_cpu(libxl__egc *egc, libxl__ev_qmp *qmp,
+                                       const libxl__json_object *response,
+                                       int rc) { STATE_AO_GC(qmp->ao);
+    set_vcpuonline_state *svos = CONTAINER_OF(qmp, *svos, qmp);
+    libxl__json_object *args = NULL;
+
+    /* Convenience aliases */
+    libxl_bitmap *map = &svos->final_map;
+
+    if (rc) goto out;
+
     while (libxl_bitmap_cpu_valid(map, ++svos->index)) {
         if (libxl_bitmap_test(map, svos->index)) {
             qmp->callback = set_vcpuonline_qmp_add_cpu;
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116483.222307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTM-000837-Gn; Fri, 23 Apr 2021 16:16:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116483.222307; Fri, 23 Apr 2021 16: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 1lZyTM-000830-Dt; Fri, 23 Apr 2021 16:16:04 +0000
Received: by outflank-mailman (input) for mailman id 116483;
 Fri, 23 Apr 2021 16:16:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTL-00082q-LJ
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:03 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ac6f61ae-55fa-444b-ae3e-c0ade307ffcd;
 Fri, 23 Apr 2021 16:16: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: ac6f61ae-55fa-444b-ae3e-c0ade307ffcd
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194561;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=dDCFhyMGhlNsdWpa1TqUP5aoaNLQNFAnHsrcPqvLhuk=;
  b=Dnr/+Dev2CbyDE+D3xKMqj8pBoi+rTV5/pgzdA1OjPaPpj+lVV69zLgp
   UFXhP0ty2/lJIk4pCNlTvgx0KyThnDPkHX34HaO6K0m28ilWvP4aPH54r
   Kh0PUACqSY+YrWSszmA7u7VNTrZfprFLI2KJEMcE4NJpuSjmRtvHVQf0U
   c=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 2guKQ1orOlcDmPy9GM1f16suZS2o2KLH1sV/MnR0G3yW/pHVjy1WQFkCb86sGMjdp4cJKxY725
 esf3XWw+iJ1UG5G0OQy1kFGrXdYbFxmW3rU/NLb9q09HoWJ07As2RFoiMI/vOq9RtS5Q6Hk3Ry
 KWwWPfuw0r41q6NdgzZ6qIZBpvRl661uPEZVruMNmfq1p+2TKws0ebpxDQlzpRRBpsehi11TS4
 aier4G2VDy14k2lqXOWPvFFkUikqZNSM9aAxYNRJSDcLzjpKuUdjeN3gdZRuFXd1bzsw7FQZP0
 Mnw=
X-SBRS: 5.1
X-MesageID: 42285495
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:5E86fK1Q0KZA/3U78BySIwqjBFYkLtp033Aq2lEZdDV+WKWj+f
 yGtvIdyBPylXItQ3kmg9+NI+2tRnnb+J5z7+AqTNOfdSPhv3alK5wn0Jv6z1TbakvD38NUyK
 sISchDIfLqC1wSt6rHyS2ZN/pl/9Wd6qCvgo7lvhJQZCVncbtp4Qs8KivzKDwUeCB8CZA0FI
 WR66N8zlLKExkqR/+2G2UfWKz7r8DL/aiWBiIuPQIt6wWFkFqTiYLSLh7w5HgjegIK5b8j9G
 Tf+jaJhJmejw==
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42285495"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 0/8] Fix libxl with QEMU 6.0 + remove some more deprecated usages.
Date: Fri, 23 Apr 2021 17:15:50 +0100
Message-ID: <20210423161558.224367-1-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Patch series available in this git branch:
https://xenbits.xen.org/git-http/people/aperard/xen-unstable.git br.deprecated-qemu-qmp-and-cmd-v1

The Xen 4.15 release that went out just before QEMU 6.0 won't be compaptible
with the latter. This patch series fixes libxl to replace use of QMP commands
that have been removed from QEMU and to fix usage of deprecated command and
parameters that well be remove from QEMU in the future.

All of the series should be backported to at least Xen 4.15 or it won't be
possible to migrate, hotplug cpu or change cdrom on HVM guest when QEMU 6.0 and
newer is used. QEMU 6.0 is about to be release, within a week.

Backport: 4.15

Anthony PERARD (8):
  libxl: Replace deprecated QMP command by "query-cpus-fast"
  libxl: Replace QEMU's command line short-form boolean option
  libxl: Replace deprecated "cpu-add" QMP command by "device_add"
  libxl: Use -device for cd-rom drives
  libxl: Assert qmp_ev's state in qmp_ev_qemu_compare_version
  libxl: Export libxl__qmp_ev_qemu_compare_version
  libxl: Use `id` with the "eject" QMP command
  libxl: Replace QMP command "change" by "blockdev-change-media"

 tools/libs/light/libxl_disk.c     |  67 +++++++++--
 tools/libs/light/libxl_dm.c       |  30 +++--
 tools/libs/light/libxl_domain.c   | 190 ++++++++++++++++++++++++++++--
 tools/libs/light/libxl_internal.h |   8 ++
 tools/libs/light/libxl_qmp.c      |   6 +-
 5 files changed, 270 insertions(+), 31 deletions(-)

-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116488.222367 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTa-0008Hn-8d; Fri, 23 Apr 2021 16:16:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116488.222367; Fri, 23 Apr 2021 16:16:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTa-0008Hc-4V; Fri, 23 Apr 2021 16:16:18 +0000
Received: by outflank-mailman (input) for mailman id 116488;
 Fri, 23 Apr 2021 16:16:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTY-0008Fb-Be
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:16 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 611e6a7d-8878-4bc2-86a4-10aa49b0445f;
 Fri, 23 Apr 2021 16:16: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: 611e6a7d-8878-4bc2-86a4-10aa49b0445f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194575;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=gTP2NPKwMvvcEW6tAfQV5J2/0JC2fRKLgq5+MXRr9rA=;
  b=gY/5BTvcH+20FyBiAhIUwNChGkhn6AlvQsGSwa93BmeZO3DXrOa+hqVM
   uxzJb95PnIE3anpgp1EcKNR1LeyXN/QhixCWBeDk1PqviaRntUJrVbEJa
   Yf7HbuBMnxwJxpNFYu8EQZSK21xEd4LDRpLWNbfbSWx/j27rKn3yIimt1
   A=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: o6XDtXjQNm2tlxCbQW/75Utq2npQ+oWMTBUrnheQn/YfNJENnS7atFefdkM18jkhZAv9YjglQ6
 3NXdJ+C7IGJlWDZJJ/7aKVp/polQs+h/19wM5Xy6udvSYdUuCClzdnbcl7Sf/l8JAQGFCdz3Rb
 lCze5mVW7alNxhh2KK+Iusge+84RNuwA+5ybYMPMTsB73j3FU48AcDzhj1x6iqiV5RrX3dUoLU
 F5MERxXXvBIgkkjtb6yMAVo7Q7tyti8wsi7XFEdfGF7tR+JAbtDli/o3ucbBN0bTgujSTQqKma
 l5c=
X-SBRS: 5.1
X-MesageID: 42410027
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:iO0EZqut0LjoOZQ9DII56uer7skD9dV00zAX/kB9WHVpW+az/v
 rAoN0w0xjohDENHEw6kdebN6WaBV/a/5h54Y4eVI3SOzXOkm2uMY1k8M/e0yTtcheOj9J1+K
 98f8FFaeHYIkN9ia/BjTWQM9Fl+9Wf9bDtuOG29QYOcShPS4VNqzh0ERyaFEoefngjObMcGI
 CH7sRK4xqMEE52Uu2BCnMIX/fOqrTw/fqMCyIuPBIp5BKDijml8tfBYn2l9ywTTi9VxvMa+X
 XF+jaJgJmLie2xyRPXygbogah+pd2J8Ld+Lf3JrsAULzn24zzYB7hcZw==
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42410027"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 5/8] libxl: Assert qmp_ev's state in qmp_ev_qemu_compare_version
Date: Fri, 23 Apr 2021 17:15:55 +0100
Message-ID: <20210423161558.224367-6-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210423161558.224367-1-anthony.perard@citrix.com>
References: <20210423161558.224367-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

We are supposed to read the version information only when qmp_ev is in
state "Connected" (that correspond to state==qmp_state_connected),
assert it so that the function isn't used too early.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/libs/light/libxl_qmp.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/libs/light/libxl_qmp.c b/tools/libs/light/libxl_qmp.c
index 9b638e6f5442..d0967c9f029f 100644
--- a/tools/libs/light/libxl_qmp.c
+++ b/tools/libs/light/libxl_qmp.c
@@ -292,6 +292,8 @@ static int qmp_handle_response(libxl__gc *gc, libxl__qmp_handler *qmp,
 static int qmp_ev_qemu_compare_version(libxl__ev_qmp *ev, int major,
                                        int minor, int micro)
 {
+    assert(ev->state == qmp_state_connected);
+
 #define CHECK_VERSION(level) do { \
     if (ev->qemu_version.level > (level)) return +1; \
     if (ev->qemu_version.level < (level)) return -1; \
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116490.222380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTb-0008Ki-M6; Fri, 23 Apr 2021 16:16:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116490.222380; Fri, 23 Apr 2021 16:16: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 1lZyTb-0008KR-IF; Fri, 23 Apr 2021 16:16:19 +0000
Received: by outflank-mailman (input) for mailman id 116490;
 Fri, 23 Apr 2021 16:16:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTa-00082q-Gl
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:18 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3e6bf307-89f6-4de9-bdfc-59e5a3de9c1a;
 Fri, 23 Apr 2021 16:16: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: 3e6bf307-89f6-4de9-bdfc-59e5a3de9c1a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194565;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Gygj/Nak9hSpWoWROOHHTJ9LjxhWDQ/06rb6wnjdhUE=;
  b=Ot8oewyv79nC1P0zTJhLRtZsKlUTqhPAZTRcM4Mr+R2uVTAVvHiX0bj3
   pRe53h6ChY2oTvIAxD2GIr2q/3I4zj0K9vhu89295gzwK/UfiD8Fok0gG
   cuRWQpLh4r/L234gOlLMK0GAE19dg/Xui9CdLE/Z3j1LF8+NO5cpSsR+i
   c=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: z/2hhoiwA5cKJsLlGK9/tD/q0N96IMJo3PCsZpF8PT7gKdu7nQ2uBJeTodjsW+Gh3Q+E7p9/UJ
 hY3OPLHfAmACvHXCgjhu+raJBAafNMn+nDPk8G/7Fn/dGaxoD4OhVhiPKnsFf5yml9xsFjIYI1
 gRSHDf/3LeJNqFaDAF2p7RR+QKk6odVgZu5+Uv1Fc6hL3I7Lk8OtKVpszpLhW2E1duknXuy5/U
 44LgaUDnHMmw3OpQj7UGhG44JONhE87ZBCa3UMH+1C4I/5THSZJ2FGtgNrsP0pfcP4kohqRter
 Orw=
X-SBRS: 5.1
X-MesageID: 42290097
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:+qZ+da8YtjclBQLNrL5uk+FRcL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUfD38Zn/+
 Nbf6B6YeeaMXFTh8z3+RT9Nt4mzsWO/qzAv5ak815GZ2hRGsJdxi1+DRuWFVAzYQFAC4YwGp
 b03Ls8mxOLf3MLYsOnQkQURuSrnayAqLvKQz4jQyQm5g6HkC+y5NfBfySw8x8CX1p0sNAf2E
 fflQiR3MSemtG9jiTRzmrCq6lR8eGRsudrIOyppowrJi73igCuDb4RFoGqmDwuuumg5BILvb
 D30nEdFv9+4X/QYW25yCGFs2aP7B8U53Dv0lOei3f4yPaJPQ4SMdZLho5Sb3Limigdlex8y6
 5C0ia4sJdaHHr77UDAzuXITB1jmw6Ip2Mjm4co/hlieLYZAYUwkaUvuGduVLsQFiPz744qVM
 N0CtvH2fpQeVSGK1jEo2hG2rWXLzsONybDZnJHlt2e0jBQknw85VAf3tYjknAJ8494Y4VY5t
 7DLr9jmNh1P4ErRJM4IN1Ebdq8C2TLTx6JGnmVO07bGKYOPG+IjJLr/rMv5qWPdIYTxJU/3L
 TNOWko9FIaSgbLM4mjzZdL+hfCTCGWRjL20PxT4JB/p/nyX7zuPSqfSE0/kseprvkFa/erGM
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5I6Vju104D2A7yvktaeXOfYJbLrHzphcHj4GG
 E/UD/6I9gF6kiqX3T/kQXAQn+FQD27wbtAVIzhu8QDwokEMYNB9iIPj06i282NITpe9qosfE
 V/J7vjmrihpXa/+HvJ62kBAGscMm9lpJHbF19arw4DNE35NZwZvc+ERGxU1HybYgNkQ9jOCw
 5ZrVRv8aexJ5idrBpST+6PAya/tT8+tXiKR5ATlum//s/jYIo/FYtjcrd2Dx/3Gxt8nhtKpG
 9PZBQffFLWEirjhMye/dspLdCaU+M5oQ+wZeZItHrUtCyn1LwSb0peewTrbOm6rkIFQSFOil
 h47qkF6YDw5QqHGC8Ym+Q3MFpFdWKNJqlJZT71KLl8kqz3eQ12UGeBjSGbjRZ2YWbx60AOnA
 XaXFKpUOCODVxHtn9C1KH2tFtya2WGZkp1Lmt3qItnCA39yz5O+P7OYqq4yG2KbFQehukbLT
 HeeDMXSzkeseyfxVqQmDyYE28hyYhrNuvBDK47e7WW3n+2MoWHmeUHGPBTlawVfezGo6sOUe
 iFfRWSIy69A+Q12xaNrnJgITJqshAf4IbV8Qyg6HL90G80APLULlgjT7YHI8uE52yhQ/qTyp
 12gd88oOPYCBS7VveWjaXMKzJTIBLapmC7C/slrp1Zpqo+vrp+FZuza0q+6FhXmBElaMvknk
 IXR6p2pK3bMoh0ZsoIZmZX+EEqmNnnFjpYjiXmRuslOVcjgH/QM4nXv/7Gqb8zDlaAowW1M1
 +F6CFZ9+rEWSzG1bNyMdNBHU1GLEwnrHJl96eecoeVDgOgfeRK5kC7PX+wa6U1ctnwJZwA6h
 Jhp8iVlOqWfTfi0A/evTFnMrtDmlzXMP+aEUaJA6pU6NS0NlSHn7uy7MOyhDnxTyGna05wv/
 w3SWUAKsJZijcji4Ur0i+9Dqzvy3hV7Wdj3Q==
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42290097"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 4/8] libxl: Use -device for cd-rom drives
Date: Fri, 23 Apr 2021 17:15:54 +0100
Message-ID: <20210423161558.224367-5-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210423161558.224367-1-anthony.perard@citrix.com>
References: <20210423161558.224367-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

This allows to set an `id` on the device instead of only the drive. We
are going to need the `id` with the "eject" and
"blockdev-change-media" QMP command as using `device` parameter on
those is deprecated. (`device` is the `id` of the `-drive` on the
command line).

We set the same `id` on both -device and -drive as QEMU doesn't
complain and we can then either do "eject id=$id" or "eject
device=$id".

Using "-drive + -device" instead of only "-drive" has been
available since at least QEMU 0.15, and seems to be the preferred way as it
separates the host part (-drive which describe the disk image location
and format) from the guest part (-device which describe the emulated
device). More information in qemu.git/docs/qdev-device-use.txt .

Changing the command line during migration for the cdrom seems fine.
Also the documentation about migration in QEMU explains that the device
state ID is "been formed from a bus name and device address", so
second IDE bus and first device address on bus is still thus and
doesn't matter if written "-drive if=ide,index=2" or "-drive
ide-cd,bus=ide.1,unit=0".
See qemu.git/docs/devel/migration.rst .

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/libs/light/libxl_dm.c | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/tools/libs/light/libxl_dm.c b/tools/libs/light/libxl_dm.c
index 0a0c1ef7c62e..5b01cf284163 100644
--- a/tools/libs/light/libxl_dm.c
+++ b/tools/libs/light/libxl_dm.c
@@ -1913,6 +1913,7 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
             }
 
             if (disks[i].is_cdrom) {
+                const char *drive_id;
                 if (disk > 4) {
                     LOGD(WARN, guest_domid, "Emulated CDROM can be only one of the first 4 disks.\n"
                          "Disk %s will be available via PV drivers but not as an "
@@ -1920,13 +1921,22 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
                          disks[i].vdev);
                     continue;
                 }
-                drive = libxl__sprintf(gc,
-                         "if=ide,index=%d,readonly=on,media=cdrom,id=ide-%i",
-                         disk, dev_number);
+
+                drive_id = GCSPRINTF("ide-%i", dev_number);
+                drive = GCSPRINTF("if=none,readonly=on,id=%s", drive_id);
 
                 if (target_path)
                     drive = libxl__sprintf(gc, "%s,file=%s,format=%s",
                                            drive, target_path, format);
+
+                flexarray_vappend(dm_args,
+                    "-drive", drive,
+                    "-device",
+                    GCSPRINTF("ide-cd,id=%s,drive=%s,bus=ide.%u,unit=%u",
+                              drive_id, drive_id,
+                              disk / 2, disk % 2),
+                    NULL);
+                continue;
             } else {
                 /*
                  * Explicit sd disks are passed through as is.
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116492.222392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTh-0008SY-26; Fri, 23 Apr 2021 16:16:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116492.222392; Fri, 23 Apr 2021 16: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 1lZyTg-0008SN-TL; Fri, 23 Apr 2021 16:16:24 +0000
Received: by outflank-mailman (input) for mailman id 116492;
 Fri, 23 Apr 2021 16:16:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTf-00082q-H4
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:23 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9cccee8e-9fb5-4356-9798-0c34a9140295;
 Fri, 23 Apr 2021 16:16: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: 9cccee8e-9fb5-4356-9798-0c34a9140295
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194567;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Ph38A5j1OWE1s08PgJbUwpGtJdMyhhVSIRMRnKmNdPw=;
  b=C/oUHc1zHPGStt/cwPY4k2TIph+2rC7ZY8xk8m1ioBBrfvM1TCjMPmM1
   n0hPAfxTBKnlwXMpzpZft+Wu83ArBXqIwfhWJJmekljhzkRm7AeLWfjMq
   Qre/0K5onhHpI/wr+VLiutpDJDsjv/XBJ3fXy8hA6rMIZCZ9ROX1Nxi+q
   M=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: pqqW2xtefipI1Zu4wSr7cp2dOjCFBX9jV3eA1mtnDqlXfQw2/54LqblDcbH0tHQv/6vMsw0xxk
 DzN6gvr/fWQ/Tb4uu2aZ/3ZcOxYdp1//oUF+g0mB/YgFPR2Y/pzO6LcacpUe/o/0bYABsobp0x
 QBbor4EGgdDAw6VneRhT4/I7wZWyG3jiykm44EsXXNN4kiUHUh00pF3f82wybJ8AnNfDS7K51B
 Xm6qsIMPfWoA/N2pJ2PjOf4Gu4wjQ8x1QR5cMP54OtnKKLS5Jr+l2ox6SzqQ64+S5pMgpFydGl
 rVk=
X-SBRS: 5.1
X-MesageID: 42672689
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:LmzmdqHze4v+x9dhpLqEbceALOonbusQ8zAX/mpaICY6TuWzkc
 eykPMHkSLugDEKV3063fyGMq+MQXTTnKQFh7U5F7GkQQXgpS+UPJhvhLGSuwHINiXi+odmtZ
 tIXLN5DLTLYWRSrcG/2wWgFsZl/d/vytHMuc7771NACT5ncLth6QARMHf9LmRTSBNdDZQ0UL
 qwj/A3xAaIQngcYsSlCnRtZYGqzLenqLvcbRELHBIh4gWV5AnYjILSKBSEwgwYFwpG3LZKyx
 m9ryXC+q6hv/unoyW860bv6f1t9+fJ+59mDMyIhtN9EESPtjqV
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42672689"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 6/8] libxl: Export libxl__qmp_ev_qemu_compare_version
Date: Fri, 23 Apr 2021 17:15:56 +0100
Message-ID: <20210423161558.224367-7-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210423161558.224367-1-anthony.perard@citrix.com>
References: <20210423161558.224367-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

We are going to want to check QEMU's version in other places where we
can use libxl__ev_qmp_send.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/libs/light/libxl_internal.h | 8 ++++++++
 tools/libs/light/libxl_qmp.c      | 4 ++--
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index c6a4a187f5b0..c114f6d39960 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -492,6 +492,14 @@ _hidden int libxl__ev_qmp_send(libxl__egc *egc, libxl__ev_qmp *ev,
                                const char *cmd, libxl__json_object *args);
 _hidden void libxl__ev_qmp_dispose(libxl__gc *gc, libxl__ev_qmp *ev);
 
+/* return values:
+ *   < 0  if qemu's version <  asked version
+ *   = 0  if qemu's version == asked version
+ *   > 0  if qemu's version >  asked version
+ */
+_hidden int libxl__qmp_ev_qemu_compare_version(libxl__ev_qmp *ev, int major,
+                                               int minor, int micro);
+
 typedef enum {
     /* initial state */
     qmp_state_disconnected = 1,
diff --git a/tools/libs/light/libxl_qmp.c b/tools/libs/light/libxl_qmp.c
index d0967c9f029f..fb146a54cb9c 100644
--- a/tools/libs/light/libxl_qmp.c
+++ b/tools/libs/light/libxl_qmp.c
@@ -289,7 +289,7 @@ static int qmp_handle_response(libxl__gc *gc, libxl__qmp_handler *qmp,
  *   = 0  if qemu's version == asked version
  *   > 0  if qemu's version >  asked version
  */
-static int qmp_ev_qemu_compare_version(libxl__ev_qmp *ev, int major,
+int libxl__qmp_ev_qemu_compare_version(libxl__ev_qmp *ev, int major,
                                        int minor, int micro)
 {
     assert(ev->state == qmp_state_connected);
@@ -1073,7 +1073,7 @@ static void dm_state_save_to_fdset(libxl__egc *egc, libxl__ev_qmp *ev, int fdset
     /* The `live` parameter was added to QEMU 2.11. It signals QEMU that
      * the save operation is for a live migration rather than for taking a
      * snapshot. */
-    if (qmp_ev_qemu_compare_version(ev, 2, 11, 0) >= 0)
+    if (libxl__qmp_ev_qemu_compare_version(ev, 2, 11, 0) >= 0)
         libxl__qmp_param_add_bool(gc, &args, "live", dsps->live);
     QMP_PARAMETERS_SPRINTF(&args, "filename", "/dev/fdset/%d", fdset);
     rc = libxl__ev_qmp_send(egc, ev, "xen-save-devices-state", args);
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:16:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:16:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116494.222404 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyTm-00008F-F6; Fri, 23 Apr 2021 16:16:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116494.222404; Fri, 23 Apr 2021 16:16: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 1lZyTm-000083-9L; Fri, 23 Apr 2021 16:16:30 +0000
Received: by outflank-mailman (input) for mailman id 116494;
 Fri, 23 Apr 2021 16:16:28 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6bT=JU=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lZyTk-00082q-HE
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:16:28 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a25425e1-f1d0-45cb-aff2-8f769b5f6828;
 Fri, 23 Apr 2021 16:16: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: a25425e1-f1d0-45cb-aff2-8f769b5f6828
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619194568;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=4+T21LhPNuthVDj7BNA6YAigMRwkRpvcvJyGv+dq/ps=;
  b=SOLC15s72rz/89vYDI4t7zA7nFfz86YT22nMl2iiGMJKE3OXVDE2wul2
   1PK6To0JUlUoxVWbxK3sNviS1hs0IxRUJxchU51PrlAa0d4GXe0Oq2Qzn
   xm1MHojRJKlmXHCZluofoLafgFwmz2346cmHJMrzkHv4AqWKfaICIHL2B
   E=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: P6My/Z8aM1o8STHsTRAiZoDW9jzU+Y7vzkkAbzjreb7tqDurvzQrpBQfYXoPD+Gh6Ov53CxROm
 qpcDLGYXbAsii2i8px3vAMVjKYCexuq/y8/QJ5ZWASgCdjH/YYN3fdF6bR99NRUlp1CnjYAQzn
 1wot1YSmJ/UzzHUP1xeqDnbx1arvsgY+kV6EDgqBv+njpEQdr9e9s6jhkOMJeo77EcY0nr0Flu
 YvuD5PsJ/ZtaDdiDiYefUB0xXUhKucpqHNfR3XDtMsXkfawbm/EITjdChj5vWKj3YpDJARILQ7
 V4I=
X-SBRS: 5.1
X-MesageID: 42290111
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:F0PkEqC+CuPZZ67lHegltMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VfdMgXE3Kpm2a
 9kGpIUNPTZB1J3lNu/xQG+HcopztXvytHSuc715R5WPGJXQotn6Bp0DRveN0VwShVPC5ZRLu
 vn2uNsoT28dXMLKvmqH3VtZZmIm/TntrLDJSQHCRku9RWUgVqThILSPhCE0n4lIlRy6Jg492
 ytqW3Ez4Wl98q20xrNk1LUhq4m4OfJ7vtmKIiyhtMOKjPq4zzYKbhJf7GZpjg6rKWOxT8R4b
 /xiiwtNchy9H/dF1vdyXSC5yDa3Dkj8HPkw1OD6EGT2PDRfi4wCMZKmOtiA3nkwncgp9113e
 Zq2G+UpvNsfHf9tRn9/NTBWlVWkFO1qxMZ4IsupkFYOLF/VJZh6agkuG9FGpYJGyz3rKo9Fv
 N1Mc3a7PFKNXuHcnHwpABUsZORd0V2Oi3DblkJu8ST3TQTtmt+1VEkyMsWmWpF3I4hSqND+/
 /PPs1T5f9zZ/5TSZg4KPYKQMOxBGCIawnLKniuLVPuE7xCHH7RtZjt4vEQ6PuxcJIFiLs+8a
 6xEW9whCoXQQbDGMeO1JpE/lTmW2OmRwngzclY+tx3obv5SL33MTCSSVwnnse6ys9vQfHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYkUt78AKhCzi/OODrevmv3Qcf7VKraoOy0jQHnDDn
 wKWyW2IM1B60usS2LpmRS5YQKpRmXPubZLVITK9ekaz4YAcqdWtBIOtFi/7saXbTtYsqI3e0
 N6KKj9kryyoHS3+Wqg1RQoBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmGecKgRnVMPQGg
 5Hr1Fx8aa6RqbggRwKOpaCCCa3nnETrHWFQ9MggaWF/97iYY59JI0hQrZNGQLCEAFVlQ5mpH
 xYUhINQlbSG1rV+OKYpa1RINuaVtFnxC+3PMZfqBvkxDihjPBqYkFeYhmDfoq8hx00Sz9dm1
 trmpVv/IaoqHKIMmswgOMxLVtWTn+YaYg2QDitbJlIm7ztZQF7RXqLgzvfkB0oZm/27Swp9x
 PcBDzRdvfRDlVHvHdElq7s7VNvb22YO1l9c3ZgrORGZCz7k2c21e+Afayo1WSNLlME3+EGKT
 nACAFiVD9G1pSy1BSPniyFGmhjzpIyPvbFBLBmd73IwHuiJMmJkq4BdsUktapNJZTrsuURV/
 iYdBLQJDTkC/kx0wjQv207IkBP2QwZuOKt3Aeg4Hmz3XY5D/aXKFN6R6sDK9XZ62T/Xf6H3J
 hwkNpdh5r6DkzhLtqdja3HZT9KLR3e5XS7SOwlsphYt6M/vrkbJeitbRLYkHVcmBkuJsb9k0
 0TBLlh6LfaI4l1YogcfTla8ldBrqX8EGI79gjtRukwclEmgyWFY5eH47/UpaEuBUPErg3qIl
 Wb+zBc+fCAXybr789rN4sgZWBNLE474zB++enHcYvaAgCjbftC81q3KWXVSs4odIGVXbEL6g
 9n6NSJlfKNfyX22ArMrSJ2S5g+glqPUIe3GkaQAuZG/NyxJESUjqar6MC1ii3rSTHTUTVqua
 RVMUoKbspCjTE+jIo4liiqI5aH3H4Yrw==
X-IronPort-AV: E=Sophos;i="5.82,246,1613451600"; 
   d="scan'208";a="42290111"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Ian Jackson
	<iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH 7/8] libxl: Use `id` with the "eject" QMP command
Date: Fri, 23 Apr 2021 17:15:57 +0100
Message-ID: <20210423161558.224367-8-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210423161558.224367-1-anthony.perard@citrix.com>
References: <20210423161558.224367-1-anthony.perard@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

`device` parameter is deprecated since QEMU 2.8.

This requires changes to the command line introduced by:
    "libxl: Use -device for cd-rom drives"

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/libs/light/libxl_disk.c | 43 +++++++++++++++++++++++++++++------
 1 file changed, 36 insertions(+), 7 deletions(-)

diff --git a/tools/libs/light/libxl_disk.c b/tools/libs/light/libxl_disk.c
index 411ffeaca6ce..faabdea7a4c3 100644
--- a/tools/libs/light/libxl_disk.c
+++ b/tools/libs/light/libxl_disk.c
@@ -656,6 +656,8 @@ typedef struct {
 
 static void cdrom_insert_lock_acquired(libxl__egc *, libxl__ev_slowlock *,
                                        int rc);
+static void cdrom_insert_qmp_connected(libxl__egc *, libxl__ev_qmp *,
+                                       const libxl__json_object *, int rc);
 static void cdrom_insert_ejected(libxl__egc *egc, libxl__ev_qmp *,
                                  const libxl__json_object *, int rc);
 static void cdrom_insert_addfd_cb(libxl__egc *egc, libxl__ev_qmp *,
@@ -770,13 +772,12 @@ static void cdrom_insert_lock_acquired(libxl__egc *egc,
      */
 
     if (cis->dm_ver == LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN) {
-        libxl__json_object *args = NULL;
-        int devid = libxl__device_disk_dev_number(cis->disk->vdev,
-                                                  NULL, NULL);
-
-        QMP_PARAMETERS_SPRINTF(&args, "device", "ide-%i", devid);
-        cis->qmp.callback = cdrom_insert_ejected;
-        rc = libxl__ev_qmp_send(egc, &cis->qmp, "eject", args);
+        /* Before running the "eject" command, we need to know QEMU's
+         * version to find out which command to issue.
+         * cis->qmp isn't in Connected state yet, so run a dummy command
+         * to have QEMU's version available. */
+        cis->qmp.callback = cdrom_insert_qmp_connected;
+        rc = libxl__ev_qmp_send(egc, &cis->qmp, "query-version", NULL);
         if (rc) goto out;
     } else {
         cdrom_insert_ejected(egc, &cis->qmp, NULL, 0); /* must be last */
@@ -787,6 +788,34 @@ static void cdrom_insert_lock_acquired(libxl__egc *egc,
     cdrom_insert_done(egc, cis, rc); /* must be last */
 }
 
+static void cdrom_insert_qmp_connected(libxl__egc *egc, libxl__ev_qmp *qmp,
+                                       const libxl__json_object *response,
+                                       int rc)
+{
+    libxl__cdrom_insert_state *cis = CONTAINER_OF(qmp, *cis, qmp);
+    STATE_AO_GC(cis->ao);
+    libxl__json_object *args = NULL;
+    int devid = libxl__device_disk_dev_number(cis->disk->vdev,
+                                              NULL, NULL);
+
+    if (rc) goto out;
+
+    /* Using `device` parameter is deprecated since QEMU 2.8, we should
+     * use `id` now. They both have different meaning but we set the
+     * same `id` on -drive and -device on the command line.
+     */
+    if (libxl__qmp_ev_qemu_compare_version(qmp, 2, 8, 0) >= 0)
+        QMP_PARAMETERS_SPRINTF(&args, "id", "ide-%i", devid);
+    else
+        QMP_PARAMETERS_SPRINTF(&args, "device", "ide-%i", devid);
+    qmp->callback = cdrom_insert_ejected;
+    rc = libxl__ev_qmp_send(egc, qmp, "eject", args);
+    if (rc) goto out;
+    return;
+out:
+    cdrom_insert_done(egc, cis, rc); /* must be last */
+}
+
 static void cdrom_insert_ejected(libxl__egc *egc,
                                  libxl__ev_qmp *qmp,
                                  const libxl__json_object *response,
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:19:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:19:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116530.222415 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyWX-0000hW-Sy; Fri, 23 Apr 2021 16:19:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116530.222415; Fri, 23 Apr 2021 16:19:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyWX-0000hP-Q4; Fri, 23 Apr 2021 16:19:21 +0000
Received: by outflank-mailman (input) for mailman id 116530;
 Fri, 23 Apr 2021 16:19:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=YHlh=JU=list.ru=valor@srs-us1.protection.inumbo.net>)
 id 1lZyWW-0000hK-5t
 for xen-devel@lists.xen.org; Fri, 23 Apr 2021 16:19:20 +0000
Received: from smtp43.i.mail.ru (unknown [94.100.177.103])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f49d61d1-95c9-4eb4-880a-4a5e06a9a292;
 Fri, 23 Apr 2021 16:19:18 +0000 (UTC)
Received: by smtp43.i.mail.ru with esmtpa (envelope-from <valor@list.ru>)
 id 1lZyWT-00048C-6Z; Fri, 23 Apr 2021 19:19:17 +0300
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f49d61d1-95c9-4eb4-880a-4a5e06a9a292
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=list.ru; s=mail3;
	h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:References:Cc:To:Subject:From:Subject:Content-Type:Content-Transfer-Encoding:To:Cc; bh=X+wTKl9jlEwhzLfBJSW+lxHY3EVOln/Z1Iv6s5iVwKM=;
	b=WCDg6fSnx2SJleDNba0T9E6/LRddlD1vPHXCoo7LAGYtxGJFZy1/r1eIO0sgqlhBKsn8und8HatxyN0gROlcuGoM/HeAUv4AAtThHdvswf7LId3IS+OguKUUl5N04NwfPfWp8wWlyZOnuIYYrr+b1ycxTE1TGz44diygWBHJfdc=;
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xen.org, zaytsevgu@gmail.com
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru>
 <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
 <YILi/Qft51Vh5QZy@Air-de-Roger>
From: Sergey Kovalev <valor@list.ru>
Message-ID: <e8770b62-753a-beed-66b2-e8c99db9a57e@list.ru>
Date: Fri, 23 Apr 2021 19:19:16 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <YILi/Qft51Vh5QZy@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp43.i.mail.ru; auth=pass smtp.auth=valor@list.ru smtp.mailfrom=valor@list.ru
X-7564579A: 646B95376F6C166E
X-77F55803: 4F1203BC0FB41BD9203E2ABA940B754838BCE75048F11F6FD8B83E4765829057182A05F538085040B37B096B65D6DB2C2C1287933383E749576B816FE15055E001207E9776F7AA27
X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE7370F4F695FFFC24BEA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F79006371DF52D98DC3592C48638F802B75D45FF914D58D5BE9E6BC1A93B80C6DEB9DEE97C6FB206A91F05B29FA71F6202FA4025E58A1DBDE967425FC5BC91295CC49E52D2E47CDBA5A96583C09775C1D3CA48CF17B107DEF921CE79117882F4460429724CE54428C33FAD30A8DF7F3B2552694AC26CFBAC0749D213D2E47CDBA5A9658378DA827A17800CE70F3DDF2BBF19B93A9FA2833FD35BB23DF004C90652538430302FCEF25BFAB3454AD6D5ED66289B5278DA827A17800CE76360B96EAAFD74F5D32BA5DBAC0009BE395957E7521B51C20BC6067A898B09E4090A508E0FED6299176DF2183F8FC7C0B04C176BEB4386DBCD04E86FAF290E2D7E9C4E3C761E06A71DD303D21008E29813377AFFFEAFD269A417C69337E82CC2E827F84554CEF50127C277FBC8AE2E8BA83251EDC214901ED5E8D9A59859A8B69DC5D3EDC80DC730089D37D7C0E48F6C5571747095F342E88FB05168BE4CE3AF
X-C1DE0DAB: 0D63561A33F958A502AF5CC0F737E1BDE6E421D4E4D075CA9D9B32EE4A20FDFFD59269BC5F550898D99A6476B3ADF6B47008B74DF8BB9EF7333BD3B22AA88B938A852937E12ACA751098AAFFB0A1231D8E8E86DC7131B365E7726E8460B7C23C
X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D345CB6DE26F1654667A017E7A8ADB2DD7E0B55067F40E6B47430419C486B4083750C4BFEBFB16380BD1D7E09C32AA3244CCB1E611204EE8A6573895B6803C473F263871F383B54D9B3FACE5A9C96DEB163
X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojMA4lh0BuVjPCRqem6sOwmQ==
X-Mailru-Sender: 6C3E74F07C41AE94CB3BE32A1891474618DE35479E7EE78DA627C7923BFAD3723D2E05B2157A1A65E54CE59283E19BE8E66B5C1DBFD5D09DD72DCFCE6FA85F85A74E2CAFD6E5C6FC67EA787935ED9F1B
X-Mras: Ok


23.04.2021 18:08, Roger Pau Monné пишет:
> On Fri, Apr 23, 2021 at 01:22:34PM +0300, Sergey Kovalev wrote:
>> # Abstract
>>
>> After `xl save win win.mem` and then `xl restore win.hvm win.mem`
>> the Windows 10 VM remain frozen for about a minute. After the
>> minute it becomes responsive.
>>
>> During the freeze the OS remains semi-responsive: on `Ctrl+Shift+Esc`
>> press the wait cursor appears (blue circle indicator).
>>
>> This is an intermittent fault been reproduced only twice.
>>
>> # Technical notes
>>
>> It have been noticed that there were no timer interrupts during
>> the freeze.
>>
>> zaytsevgu@gmail.com has debugged the received Xen state file and
>> noticed that the flag HPET_TN_PERIODIC been set after unfreeze.
>>
>> Based on that he provided two Python scripts: one to check the
>> value and one to patch it.
>>
>> Both "broken" state files we have been detected and patched
>> successfully.
>>
>> # Other information
>>
>> ## Target machine
>>
>> ```bash
>> $ uname -a
>> Linux localhost 5.4.0-66-generic #74~18.04.2-Ubuntu SMP
>> Fri Feb 5 11:17:31 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
>> ```
>>
>> ## Xen version
>>
>> Build from source on tag RELEASE-4.12.4
>>
>> ## OS version
>>
>> * Windows 10 build 1803 x64
> 
> Do you also run other versions of Windows, and in which case I assume
> you have never seen the issue on those, or it's this specific version
> the only that you use?
> 
> Thanks, Roger.
> 

We use Windows 7 SP1 x86/x64, Windows 8.1 update1 and
Windows 10 1803 x64.

The Windows 10 is the only one affected by the bug at
the time.
-- 
With best regards,
Sergey Kovalev



From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:22:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:22:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116540.222427 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyZA-0001Xq-Ea; Fri, 23 Apr 2021 16:22:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116540.222427; Fri, 23 Apr 2021 16: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 1lZyZA-0001Xj-Bb; Fri, 23 Apr 2021 16:22:04 +0000
Received: by outflank-mailman (input) for mailman id 116540;
 Fri, 23 Apr 2021 16:22:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=o87G=JU=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lZyZ8-0001Xa-MG
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:22:03 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::2])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fb3849d8-351b-4216-9449-dd2d07feb849;
 Fri, 23 Apr 2021 16:22:01 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.4 DYNA|AUTH)
 with ESMTPSA id e071aex3NGLr0iW
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits))
 (Client did not present a certificate);
 Fri, 23 Apr 2021 18:21: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: fb3849d8-351b-4216-9449-dd2d07feb849
ARC-Seal: i=1; a=rsa-sha256; t=1619194913; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=L83C2vPSZ3kknw7mtyBo69IhnWUctWIw2SOSh8pmu6MRfl/xkV2NmSWY0tB4JZgKB+
    cAJQUlS6Uk40tVkbYNblJgOHit+PvKWi18uCFthfu3sMMffbB1xycc5VyCKJk98xsEX0
    yk/LaaVoXS/b/uyu0BA2ZGN3QKKBMOHVIssnUKH13KAvIGSAY5uIvZiJTni5CSoTlYSi
    GQ0O2p1+1wIJVy4Be0o32zi5g0OQ64XCLB/sMVBg7lbgjT2B2DJQV+Oojl971kZbPGS2
    qZP2MvBuVwE9/N8H6uHmAyBwuzp9j410GZ58Bhs8HG4ppyMWYEQR/x3VYfWU7/jscvTP
    VBfQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619194913;
    s=strato-dkim-0002; d=strato.com;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=NLtbmPUVZOxoFRYRLyOAV6LxYEBpPXUNGQbrk248OYc=;
    b=XUKWGSWZz9vLthUndicw1m9Lsj4HorAeotBZ/88h7b69fUR6RuzJ21yloDPRb/kM0t
    BADqDXWA8xrnZxhoKZVOX5CeXBHK4kOn5HNSENq82WsxREdYKsb1MiYm1gbG+LCxVVYs
    hnuFlqhVF1wvcgaY9NcKev5GUuz8qJbAE/pRZLvYMQ6NW0SvxsIV/jTUtVUEW+pplRDh
    idlLOHEWurVeYqHR4ZFDZrXKR1plxuYpSJb+sajFJsJLnI/kGOPRXYLKT8yhQl8Ob2/+
    HMuom6b6xgdfrgOqubF+Sz9LrsFvmlDhhJij1MsMZ22Rda6ciP7caKnJYBed/qMdbp+H
    F97Q==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619194913;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=NLtbmPUVZOxoFRYRLyOAV6LxYEBpPXUNGQbrk248OYc=;
    b=gxKMCzCXQX2Z69kfm8HYkfGycBbym8njCLzAevKnylVVRN+bMokkXexlTnumceOL94
    6MLaEombQLnUg/uMGnkgNRTOLFdIhEU97BBEEU6Pwh2yJIwa75GXdrMCbmylyrWM9Tkw
    6sY4Pkue25ExOyD6Uaih54Tat6xdJVbp57mzjeh2sHZqGrED9TS6xI24xjAD9wOJdU6V
    0q+AWXsT9KOSC1eJWDFj3GYkZLfC7GmCX7UUU6f4Ffwjqma7/B8DyjV8fgsnxwyKF6mi
    X/ClzK758uYw5djTLNXsLxxiQbpjC/nzl4SGy68qOmHN0n5/0CV1x3z1BA1qNLXMSJjh
    bIRg==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuz7MdiQehTvc3RdcLGMdqQ=="
X-RZG-CLASS-ID: mo00
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v3] hotplug/Linux: fix starting of xenstored with restarting systemd
Date: Fri, 23 Apr 2021 18:21:48 +0200
Message-Id: <20210423162148.15735-1-olaf@aepfle.de>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

A hard to trigger race with another unrelated systemd service and
xenstored.service unveiled a bug in the way how xenstored is launched
with systemd.

launch-xenstore may start either a daemon or a domain. In case a domain
is used, systemd-notify was called. If another service triggered a
restart of systemd while xenstored.service was executed, systemd may
temporary lose track of services with Type=notify. As a result,
xenstored.service would be marked as failed and units that depend on it
will not be started. This breaks the enire Xen toolstack.

The chain of events is basically: xenstored.service sends the
notification to systemd, this is a one-way event. Then systemd may be
restarted by the other unit. During this time, xenstored.service is done
and exits. Once systemd is done with its restart, it collects the pending
notifications and childs. If it does not find the unit which sent the
notification it will declare it as failed.

A workaround for this scenario is to leave the child processes running
for a short time after sending the "READY=1" notification. If systemd
happens to restart it will still find the unit it launched.

Adjust the callers of launch-xenstore to specifiy the init system:
Do not fork xenstored with systemd, preserve pid. This wil also avoid
the need for a sleep because the process which sent the "READY=1" (the
previously forked child) is still alive.

Remove the --pid-file in the systemd case because the pid of the child
is known, and the file had probably little effect anyway due to lack of
PidFile= and Type=forking in the unit file.

Be verbose about xenstored startup only with sysv to avoid interleaved
output in systemd journal. Do the same also for domain case, even if is
not strictly needed because init-xenstore-domain has no output.

The fix for upstream systemd which is supposed to fix it:
575b300b795b6 ("pid1: rework how we dispatch SIGCHLD and other signals")

Signed-off-by: Olaf Hering <olaf@aepfle.de>
---
v03:
- remove run_xenstored function, follow style of shell built-in test function
v02:
- preserve Type=notify
---
 tools/hotplug/Linux/init.d/xencommons.in      |  2 +-
 tools/hotplug/Linux/launch-xenstore.in        | 39 +++++++++++++------
 .../Linux/systemd/xenstored.service.in        |  2 +-
 3 files changed, 30 insertions(+), 13 deletions(-)

diff --git a/tools/hotplug/Linux/init.d/xencommons.in b/tools/hotplug/Linux/init.d/xencommons.in
index 7fd6903b98..dcb0ce4b73 100644
--- a/tools/hotplug/Linux/init.d/xencommons.in
+++ b/tools/hotplug/Linux/init.d/xencommons.in
@@ -60,7 +60,7 @@ do_start () {
 	mkdir -m700 -p ${XEN_LOCK_DIR}
 	mkdir -p ${XEN_LOG_DIR}
 
-	@XEN_SCRIPT_DIR@/launch-xenstore || exit 1
+	@XEN_SCRIPT_DIR@/launch-xenstore 'sysv' || exit 1
 
 	echo Setting domain 0 name, domid and JSON config...
 	${LIBEXEC_BIN}/xen-init-dom0 ${XEN_DOM0_UUID}
diff --git a/tools/hotplug/Linux/launch-xenstore.in b/tools/hotplug/Linux/launch-xenstore.in
index 991dec8d25..3c30010e3c 100644
--- a/tools/hotplug/Linux/launch-xenstore.in
+++ b/tools/hotplug/Linux/launch-xenstore.in
@@ -15,6 +15,17 @@
 # License along with this library; If not, see <http://www.gnu.org/licenses/>.
 #
 
+initd=$1
+
+case "$initd" in
+	sysv) nonl='-n' ;;
+	systemd) nonl= ;;
+	*)
+	echo "first argument must be 'sysv' or 'systemd'"
+	exit 1
+	;;
+esac
+
 XENSTORED=@XENSTORED@
 
 . @XEN_SCRIPT_DIR@/hotplugpath.sh
@@ -44,14 +55,15 @@ timeout_xenstore () {
 	return 0
 }
 
-test_xenstore && exit 0
+if test "$initd" = 'sysv' ; then
+	mkdir -p @XEN_RUN_DIR@
+	test_xenstore && exit 0
+fi
 
 test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons
 
 [ "$XENSTORETYPE" = "" ] && XENSTORETYPE=daemon
 
-/bin/mkdir -p @XEN_RUN_DIR@
-
 [ "$XENSTORETYPE" = "daemon" ] && {
 	[ -z "$XENSTORED_ROOTDIR" ] && XENSTORED_ROOTDIR="@XEN_LIB_STORED@"
 	[ -z "$XENSTORED_TRACE" ] || XENSTORED_ARGS="$XENSTORED_ARGS -T @XEN_LOG_DIR@/xenstored-trace.log"
@@ -60,13 +72,15 @@ test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CONFIG_LEAF
 		echo "No xenstored found"
 		exit 1
 	}
+	[ "$initd" = 'sysv' ] && {
+		echo $nonl Starting $XENSTORED...
+		$XENSTORED --pid-file @XEN_RUN_DIR@/xenstored.pid $XENSTORED_ARGS
+		timeout_xenstore $XENSTORED || exit 1
+		exit 0
+	}
 
-	echo -n Starting $XENSTORED...
-	$XENSTORED --pid-file @XEN_RUN_DIR@/xenstored.pid $XENSTORED_ARGS
-
-	systemd-notify --booted 2>/dev/null || timeout_xenstore $XENSTORED || exit 1
-
-	exit 0
+	exec $XENSTORED -N $XENSTORED_ARGS
+	exit 1
 }
 
 [ "$XENSTORETYPE" = "domain" ] && {
@@ -76,9 +90,12 @@ test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CONFIG_LEAF
 	XENSTORE_DOMAIN_ARGS="$XENSTORE_DOMAIN_ARGS --memory $XENSTORE_DOMAIN_SIZE"
 	[ -z "$XENSTORE_MAX_DOMAIN_SIZE" ] || XENSTORE_DOMAIN_ARGS="$XENSTORE_DOMAIN_ARGS --maxmem $XENSTORE_MAX_DOMAIN_SIZE"
 
-	echo -n Starting $XENSTORE_DOMAIN_KERNEL...
+	echo $nonl Starting $XENSTORE_DOMAIN_KERNEL...
 	${LIBEXEC_BIN}/init-xenstore-domain $XENSTORE_DOMAIN_ARGS || exit 1
-	systemd-notify --ready 2>/dev/null
+	[ "$initd" = 'systemd' ] && {
+		systemd-notify --ready
+		sleep 9
+	}
 
 	exit 0
 }
diff --git a/tools/hotplug/Linux/systemd/xenstored.service.in b/tools/hotplug/Linux/systemd/xenstored.service.in
index 80c1d408a5..c226eb3635 100644
--- a/tools/hotplug/Linux/systemd/xenstored.service.in
+++ b/tools/hotplug/Linux/systemd/xenstored.service.in
@@ -11,7 +11,7 @@ Type=notify
 NotifyAccess=all
 RemainAfterExit=true
 ExecStartPre=/bin/grep -q control_d /proc/xen/capabilities
-ExecStart=@XEN_SCRIPT_DIR@/launch-xenstore
+ExecStart=@XEN_SCRIPT_DIR@/launch-xenstore 'systemd'
 
 [Install]
 WantedBy=multi-user.target


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 16:22:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 16:22:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116541.222440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZyZZ-0001cj-NK; Fri, 23 Apr 2021 16:22:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116541.222440; Fri, 23 Apr 2021 16: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 1lZyZZ-0001cc-KI; Fri, 23 Apr 2021 16:22:29 +0000
Received: by outflank-mailman (input) for mailman id 116541;
 Fri, 23 Apr 2021 16:22:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=o87G=JU=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lZyZX-0001cG-Ux
 for xen-devel@lists.xenproject.org; Fri, 23 Apr 2021 16:22:27 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::7])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ca4c08f0-d1cc-43ba-876f-760dc91c0f09;
 Fri, 23 Apr 2021 16:22:27 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.24.4 DYNA|AUTH)
 with ESMTPSA id e071aex3NGMM0id
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits))
 (Client did not present a certificate);
 Fri, 23 Apr 2021 18:22: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: ca4c08f0-d1cc-43ba-876f-760dc91c0f09
ARC-Seal: i=1; a=rsa-sha256; t=1619194942; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=lx7n1RXA36amjui9NQdOB9/q62gPdls584peNsYK5HwtbpQl4yVcQwxdW1m+qObDjw
    EECXeY6NcJM33dHirZFBOLK3CMaolvHGDX9MqKyxf9S2d6L+FufGuxx6476QZJkvWpKp
    upt1LZp2tW7nj79sZ4rEC+OU03lul5I/Fsy7unBDLS76pLSXgf9f+naykhCwvnBpOXRY
    wDbMRTcP11dH53rRvbWMlHTqDZ2o+ynkMISjjj8jIhv+H+NFkHIVnXzxfLlf7W1zak3d
    N5NO8QeWHFZ/KSrISrz/gHw8NHLevcGOwcXzJ7ll0vPnq0BMKYOVcvgCZ0fW+w8UUu9O
    Y/VA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619194942;
    s=strato-dkim-0002; d=strato.com;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=mNKIMqULF7kR8MrcG2bGI6z6DdGHqTagxazENcRLhu0=;
    b=VZobgJX2Ndo1tPN1OvUIveHJrxKwR7QUvP7un2M/emQghwW0Ll2bw5L0y/vHAmN0SQ
    pns1uRkhFqv2SWN3kFhnaHC4YESOG9kjy6isXbAcPoFmmMyo2ikfnbgCPr57ryg5YO+H
    Grfy9rJ1qnUVRplHF0dHfqcCauMF4jUjxYlf7XWR3mr8bPVToFMMES5C4mzCoPgOVcRa
    HwL07TPANQSIkZ1DQj/RZJ/iRcn3y0GIuCGNwxO2PfbU0dUZvNquEUh/+9q1sz+EZTfj
    xmtIG1R/vsD2u9WfrkJQXdr0vED466LixPwtzwUlM39GMA6D/akFdVwZupHV9L56PuA5
    JF+A==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619194942;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=mNKIMqULF7kR8MrcG2bGI6z6DdGHqTagxazENcRLhu0=;
    b=OUpNAwECq7hnovO0cvG/jANKu6osftrbj53TLI373ER9NQXCioKfwQWeqQJqcv2sCa
    5jnB8gvYiRmJ1VxmPuTFBSsVRfb+UvkAbr1cKXjipOm2oic78k+5MT5pFPfhilE90Qj8
    fYFDV/XTqRBVuCMAWWenSMEjdp7RFL4zQ/wBgAD2NALDkkYUxnlowJEr51Qkqjwi+bk2
    226FAzUsEwIKFzublau2fT0q68VxqjFa0BOHtqsQRSC2zz3ib9DogSxtA6kFqqyMW29l
    0TEZpzaAPFeBIQnYJ9xwXptChtQ6KCO2ihJF1aR2ykyuLnnYe0S61ebYs8My9bXicb8I
    AkoA==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuz7MdiQehTvc3RdcLGMdqQ=="
X-RZG-CLASS-ID: mo00
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1] tools: remove unused XENSTORED_ROOTDIR from Linux launch-xenstore
Date: Fri, 23 Apr 2021 18:22:19 +0200
Message-Id: <20210423162219.16744-1-olaf@aepfle.de>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The sysconfig variable XENSTORED_ROOTDIR is not used anymore.
It used to point to a directory with tdb files, which is now a tmpfs.

Fixes commit 2ef6ace428dec4795b8b0a67fff6949e817013de

Signed-off-by: Olaf Hering <olaf@aepfle.de>
---
 tools/hotplug/Linux/init.d/sysconfig.xencommons.in | 7 -------
 tools/hotplug/Linux/launch-xenstore.in             | 1 -
 2 files changed, 8 deletions(-)

diff --git a/tools/hotplug/Linux/init.d/sysconfig.xencommons.in b/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
index b059a2910d..00cf7f91d4 100644
--- a/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
+++ b/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
@@ -48,13 +48,6 @@ XENSTORED_ARGS=
 # Only evaluated if XENSTORETYPE is "daemon".
 #XENSTORED_TRACE=[yes|on|1]
 
-## Type: string
-## Default: "@XEN_LIB_STORED@"
-#
-# Running xenstored on XENSTORED_ROOTDIR
-# Only evaluated if XENSTORETYPE is "daemon".
-#XENSTORED_ROOTDIR=@XEN_LIB_STORED@
-
 ## Type: string
 ## Default: @LIBEXEC@/boot/xenstore-stubdom.gz
 #
diff --git a/tools/hotplug/Linux/launch-xenstore.in b/tools/hotplug/Linux/launch-xenstore.in
index 3c30010e3c..bc3c13931d 100644
--- a/tools/hotplug/Linux/launch-xenstore.in
+++ b/tools/hotplug/Linux/launch-xenstore.in
@@ -65,7 +65,6 @@ test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CONFIG_LEAF
 [ "$XENSTORETYPE" = "" ] && XENSTORETYPE=daemon
 
 [ "$XENSTORETYPE" = "daemon" ] && {
-	[ -z "$XENSTORED_ROOTDIR" ] && XENSTORED_ROOTDIR="@XEN_LIB_STORED@"
 	[ -z "$XENSTORED_TRACE" ] || XENSTORED_ARGS="$XENSTORED_ARGS -T @XEN_LOG_DIR@/xenstored-trace.log"
 	[ -z "$XENSTORED" ] && XENSTORED=@XENSTORED@
 	[ -x "$XENSTORED" ] || {


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 17:17:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 17:17:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116557.222452 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lZzQe-00077S-Qp; Fri, 23 Apr 2021 17:17:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116557.222452; Fri, 23 Apr 2021 17: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 1lZzQe-00077L-Nj; Fri, 23 Apr 2021 17:17:20 +0000
Received: by outflank-mailman (input) for mailman id 116557;
 Fri, 23 Apr 2021 17:17: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 1lZzQd-00077D-Qd; Fri, 23 Apr 2021 17:17: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 1lZzQd-0001Vf-5g; Fri, 23 Apr 2021 17:17: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 1lZzQc-0008Qs-Up; Fri, 23 Apr 2021 17:17:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lZzQc-0002Gg-UL; Fri, 23 Apr 2021 17: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Di7qQFCh/yaifBswfV/1v/NWp2GWOCEFKZ1Otr2GaQw=; b=xWrLXWbIH6vCnJ/wFmTi9FDbmm
	KT2AiwpHP0weVHxFf9Ret7j6/Kg0n7BDCYGbuOkbEj2A6BS5c03WpB7JkS6giB2tWZ0/xeZMzAyiy
	52WmO3ghcfJ/MPJ2qbrj9+08nrBHblWjFwAxEuXNPnCWMGch/Hk1vqnelrZ1AZYkrmj0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161409-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161409: 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=fc5d0c98076b4c84fa978259eae0f521e95962c7
X-Osstest-Versions-That:
    xen=e9b4fe26364950258c9f57f0f68eccb778eeadbb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 17:17:18 +0000

flight 161409 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161409/

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                  fc5d0c98076b4c84fa978259eae0f521e95962c7
baseline version:
 xen                  e9b4fe26364950258c9f57f0f68eccb778eeadbb

Last test of basis   161392  2021-04-22 22:00:28 Z    0 days
Testing same since   161409  2021-04-23 14:01:34 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
   e9b4fe2636..fc5d0c9807  fc5d0c98076b4c84fa978259eae0f521e95962c7 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 18:05:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 18:05:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116565.222471 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1la0BJ-0003xx-Id; Fri, 23 Apr 2021 18:05:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116565.222471; Fri, 23 Apr 2021 18: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 1la0BJ-0003xq-Fj; Fri, 23 Apr 2021 18:05:33 +0000
Received: by outflank-mailman (input) for mailman id 116565;
 Fri, 23 Apr 2021 18:05: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 1la0BI-0003xi-EP; Fri, 23 Apr 2021 18:05: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 1la0BI-0002VQ-2z; Fri, 23 Apr 2021 18:05: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 1la0BH-0001Yd-Ob; Fri, 23 Apr 2021 18:05:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1la0BH-0006Ix-O6; Fri, 23 Apr 2021 18: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=1K5gbuPMdZc/E0o7zY5d3YDog+W0kXnfF3sy1uHGRj0=; b=jNlY1E8YTyNexi5/hQTxEceKR0
	nkorzbAam8XSApG9YsHDeoMmue2r+hPhoKaUI8ium9TdZplq07mJgdiZiEm+D8hvJX9u1G70/Wjfp
	yzcQEmQAU7WUhPnYdzaDvcrJxh8Tla2AgUmHCRPYQP+CQlV/3YlMK9LSparSmor8+F9I=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161397-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161397: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 18:05:31 +0000

flight 161397 xen-4.12-testing real [real]
flight 161412 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161397/
http://logs.test-lab.xenproject.org/osstest/logs/161412/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161330 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161330

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 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
 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-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   66 days
Failing since        160128  2021-03-18 14:36:18 Z   36 days   47 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   34 days   45 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 20:17:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 20:17:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116587.222498 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1la2FB-0000SG-GA; Fri, 23 Apr 2021 20:17:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116587.222498; Fri, 23 Apr 2021 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 1la2FB-0000S9-DA; Fri, 23 Apr 2021 20:17:41 +0000
Received: by outflank-mailman (input) for mailman id 116587;
 Fri, 23 Apr 2021 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 1la2FA-0000S1-0K; Fri, 23 Apr 2021 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 1la2F9-0004xE-N8; Fri, 23 Apr 2021 20:17: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 1la2F9-00085s-BG; Fri, 23 Apr 2021 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 1la2F9-0001r1-Ao; Fri, 23 Apr 2021 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=l/AeRynH9w/wSfsxuWIchTbFoszymQrYwTtUyzdqHsM=; b=L49y6NujNowQh/MG4HbekAxwP0
	VHJM0tplaXALlFoAIQNEscX3thRzTR2avpiJGmUAq0F3ctVETcWYLK40de95MYF/yiR67z1wcVhFF
	3s82uw3tSX/Vc7UsR9EYNUmTCqJkNgqqEhHUg4KngQm78sr+3iI0Rc030jQMQoSFbiZ4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161413-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161413: 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=bea65a212c0581520203b6ad0d07615693f42f73
X-Osstest-Versions-That:
    xen=fc5d0c98076b4c84fa978259eae0f521e95962c7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 20:17:39 +0000

flight 161413 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161413/

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                  bea65a212c0581520203b6ad0d07615693f42f73
baseline version:
 xen                  fc5d0c98076b4c84fa978259eae0f521e95962c7

Last test of basis   161409  2021-04-23 14:01:34 Z    0 days
Testing same since   161413  2021-04-23 18:00:31 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   fc5d0c9807..bea65a212c  bea65a212c0581520203b6ad0d07615693f42f73 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 21:51:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 21:51:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116602.222513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1la3hu-00023r-IR; Fri, 23 Apr 2021 21:51:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116602.222513; Fri, 23 Apr 2021 21:51: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 1la3hu-00023k-FP; Fri, 23 Apr 2021 21:51:26 +0000
Received: by outflank-mailman (input) for mailman id 116602;
 Fri, 23 Apr 2021 21: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 1la3hu-00023c-0o; Fri, 23 Apr 2021 21: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 1la3ht-0006U5-S1; Fri, 23 Apr 2021 21:51: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 1la3ht-0006aH-J5; Fri, 23 Apr 2021 21:51:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1la3ht-0006Pt-If; Fri, 23 Apr 2021 21: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=EpDyBOW/at/1guHY38NBBaU0ncioEhtSZMqpafcmHrU=; b=AXmPI6dJz1GdK0+W4G9ptd4q8W
	GagOxyFteQY1iksJ3byDEAt5TJv7+ecBORBBm3PaFiCLVNkkfYdgTbAH2Mt4rPETRmxBmOhi/6Hp6
	br3Avr6AyJgpkaGeXaMhwEXE5dm815Itqia3BeZZPbvaJXU9fMfmn/tjuNl9rHIezeCQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161406-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161406: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=61680cac5e435053be89a4fc6b945466f2c7bac6
X-Osstest-Versions-That:
    ovmf=d3b0d007a135284981fa750612a47234b83976f9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 21:51:25 +0000

flight 161406 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161406/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 61680cac5e435053be89a4fc6b945466f2c7bac6
baseline version:
 ovmf                 d3b0d007a135284981fa750612a47234b83976f9

Last test of basis   161326  2021-04-20 12:41:12 Z    3 days
Testing same since   161406  2021-04-23 11:41:04 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Erdem Aktas <erdemaktas@google.com>
  Jiewen Yao <jiewen.yao@intel.com>
  Min M Xu <min.m.xu@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   d3b0d007a1..61680cac5e  61680cac5e435053be89a4fc6b945466f2c7bac6 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Apr 23 23:47:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 23 Apr 2021 23:47:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116611.222534 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1la5Vc-000549-R6; Fri, 23 Apr 2021 23:46:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116611.222534; Fri, 23 Apr 2021 23: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 1la5Vc-000542-Ns; Fri, 23 Apr 2021 23:46:52 +0000
Received: by outflank-mailman (input) for mailman id 116611;
 Fri, 23 Apr 2021 23:46:51 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1la5Vb-00053u-Ca; Fri, 23 Apr 2021 23:46:51 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1la5Vb-0008JG-3P; Fri, 23 Apr 2021 23:46:51 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1la5Va-0002sI-NH; Fri, 23 Apr 2021 23:46:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1la5Va-0008OX-Mn; Fri, 23 Apr 2021 23:46:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qaXq2qmjyCeClpApxkTQJhdJjW7pTEHceOEg5ZJpDIU=; b=K+FSw3Ektkhv8fcZXb6ZJ7bn9x
	MmY4yJohvpSjIpV8RZFN8WVrk86xP5XfzRry2mwvB38xnav1MYDiMtHooVuj5hw3uc0vRp50vVDol
	0abmPOGbQShNtSDd0bi0YZhjkTXsrtaTGism4Wa5OoVVV+iMRKev7dHmAnks+fHPSmSA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161401-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161401: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=b1cffefa1b163bce9aebc3416f562c1d3886eeaa
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 23 Apr 2021 23:46:50 +0000

flight 161401 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161401/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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

version targeted for testing:
 qemuu                b1cffefa1b163bce9aebc3416f562c1d3886eeaa
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  246 days
Failing since        152659  2020-08-21 14:07:39 Z  245 days  452 attempts
Testing same since   161364  2021-04-21 23:21:43 Z    2 days    3 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 142972 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 00:40:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 00:40:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116638.222567 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1la6L3-0002ee-MP; Sat, 24 Apr 2021 00:40:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116638.222567; Sat, 24 Apr 2021 00:40:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1la6L3-0002dq-Hc; Sat, 24 Apr 2021 00:40:01 +0000
Received: by outflank-mailman (input) for mailman id 116638;
 Sat, 24 Apr 2021 00:40:00 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=CxGy=JV=gmail.com=tamas.k.lengyel@srs-us1.protection.inumbo.net>)
 id 1la6L2-0002Zm-6q
 for xen-devel@lists.xen.org; Sat, 24 Apr 2021 00:40:00 +0000
Received: from mail-wr1-x42c.google.com (unknown [2a00:1450:4864:20::42c])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d3ee4539-3b97-4398-ac63-139050e47350;
 Sat, 24 Apr 2021 00:39:59 +0000 (UTC)
Received: by mail-wr1-x42c.google.com with SMTP id h4so40915701wrt.12
 for <xen-devel@lists.xen.org>; Fri, 23 Apr 2021 17:39: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: d3ee4539-3b97-4398-ac63-139050e47350
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc:content-transfer-encoding;
        bh=KeRpwwQ0WZSBvMpY61pldxkCfDHTnFpFBEBLy8my2d4=;
        b=dMLbdK79bOzfizftLd1/Adw+NZXlbsbKf0UBjHV3XyjwvBlhWCI3QwUOxy7Xn1F18I
         sHtARt21zXXBCOQgEo9WnL5eUg/nHAWOMm02Xp8KPYS5nUJP5+m/PeK12Sajc8yTCaOm
         f3DGzQjNm6Bsm9Zx7LIWK6axkgwL/ZQsv/yjnsRwGQ8yiNl+1ijqSmWfoymi9m0+dWL8
         DmhdxV7c7Jh1jLbOo5+HZbeysrI8m5hlx8Hsz2Ktl9XeqS3NTxkjF+QgEIYcmsWphE2Y
         RkuzB/rWbTMz31i9OivbcPE82J640nRlQ08oHskmwaIrzMIJP4mQdWJ5ZOcVPs5MCbmm
         pGZw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc:content-transfer-encoding;
        bh=KeRpwwQ0WZSBvMpY61pldxkCfDHTnFpFBEBLy8my2d4=;
        b=umC76d55oKJwXuP6ouUIHF5JHdcejK9pkgGNn5bSaYYjH/BzuCXUTs2V/7dyHy6w60
         GyPwpW/kODdPBLoCXxtnyjx5JykN4+blaRrH6N0YFSAYKPLQGN4RVYtJEnrtPnxOPqsi
         Gepg78eKP+Lsjs7D+IP3uHbHLkM5XVjLbtOswvZQ/fVSYVgkgeyCUqG7jq+eN5NvlldR
         zwlxWO5RUfeMilptO7IhluMHPevOiOiHq3YzzkQ2MHhEnEdlWN0PInpooBed+UegSCIC
         hYgOs/aqH+lPMwfpiYFcu5m16UhuO5cEbe1ssJY74f+8IWS2kKIfUTmpECa07q+iEbyz
         u4Sg==
X-Gm-Message-State: AOAM533PhvqZcmgtgP3RLorB0Q6NTuuLZzGsdfoyo/6z71Fv19AIjOT/
	nxoW/xR9UJTdpJEhnd/192RGfWooejsZXPswjF8=
X-Google-Smtp-Source: ABdhPJzYlntdsjyen5FLD/+V2t8bt1to0si7ga4SKeiZaFNHIbd+Fobe4JT7tPrQaps22S/Zbg58r55dIAUVXsp+nBc=
X-Received: by 2002:adf:b301:: with SMTP id j1mr7886858wrd.301.1619224798165;
 Fri, 23 Apr 2021 17:39:58 -0700 (PDT)
MIME-Version: 1.0
References: <6237e102-f2cf-a66e-09b6-954ebfe28f8c@list.ru> <46f8bf3e-cd6e-e2de-94c1-c8a55fb10648@list.ru>
 <YILi/Qft51Vh5QZy@Air-de-Roger> <e8770b62-753a-beed-66b2-e8c99db9a57e@list.ru>
In-Reply-To: <e8770b62-753a-beed-66b2-e8c99db9a57e@list.ru>
From: Tamas K Lengyel <tamas.k.lengyel@gmail.com>
Date: Fri, 23 Apr 2021 20:39:25 -0400
Message-ID: <CABfawhmGLHTqPbXKhnpK=saf4ULFQNsK-xHg+GzMJrOawRx0ZA@mail.gmail.com>
Subject: Re: Fwd: [BUG] Windows is frozen after restore from snapshot
To: Sergey Kovalev <valor@list.ru>
Cc: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	Xen-devel <xen-devel@lists.xen.org>, zaytsevgu@gmail.com
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Apr 23, 2021 at 12:19 PM Sergey Kovalev <valor@list.ru> wrote:
>
>
> 23.04.2021 18:08, Roger Pau Monn=C3=A9 =D0=BF=D0=B8=D1=88=D0=B5=D1=82:
> > On Fri, Apr 23, 2021 at 01:22:34PM +0300, Sergey Kovalev wrote:
> >> # Abstract
> >>
> >> After `xl save win win.mem` and then `xl restore win.hvm win.mem`
> >> the Windows 10 VM remain frozen for about a minute. After the
> >> minute it becomes responsive.
> >>
> >> During the freeze the OS remains semi-responsive: on `Ctrl+Shift+Esc`
> >> press the wait cursor appears (blue circle indicator).
> >>
> >> This is an intermittent fault been reproduced only twice.
> >>
> >> # Technical notes
> >>
> >> It have been noticed that there were no timer interrupts during
> >> the freeze.
> >>
> >> zaytsevgu@gmail.com has debugged the received Xen state file and
> >> noticed that the flag HPET_TN_PERIODIC been set after unfreeze.
> >>
> >> Based on that he provided two Python scripts: one to check the
> >> value and one to patch it.
> >>
> >> Both "broken" state files we have been detected and patched
> >> successfully.
> >>
> >> # Other information
> >>
> >> ## Target machine
> >>
> >> ```bash
> >> $ uname -a
> >> Linux localhost 5.4.0-66-generic #74~18.04.2-Ubuntu SMP
> >> Fri Feb 5 11:17:31 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
> >> ```
> >>
> >> ## Xen version
> >>
> >> Build from source on tag RELEASE-4.12.4
> >>
> >> ## OS version
> >>
> >> * Windows 10 build 1803 x64
> >
> > Do you also run other versions of Windows, and in which case I assume
> > you have never seen the issue on those, or it's this specific version
> > the only that you use?
> >
> > Thanks, Roger.
> >
>
> We use Windows 7 SP1 x86/x64, Windows 8.1 update1 and
> Windows 10 1803 x64.
>
> The Windows 10 is the only one affected by the bug at
> the time.

I can confirm that I have ran into this issue as well in the past, but
never had time to dig deeper into the root cause. I may add that with
snapshots taken of Windows 10 on Xen 4.14 or 4.15 and using those for
restoring I haven't seen it happen yet. The Win10 version didn't
change on my end, only the hypervisor got upgraded. So this may be a
bug that got fixed in newer Xen versions.

Tamas


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 02:02:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 02:02:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116651.222588 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1la7cC-0000d7-SD; Sat, 24 Apr 2021 02:01:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116651.222588; Sat, 24 Apr 2021 02: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 1la7cC-0000d0-P0; Sat, 24 Apr 2021 02:01:48 +0000
Received: by outflank-mailman (input) for mailman id 116651;
 Sat, 24 Apr 2021 02:01: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 1la7cB-0000cs-F8; Sat, 24 Apr 2021 02:01: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 1la7cB-0008Od-5Z; Sat, 24 Apr 2021 02:01: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 1la7cA-0000fF-Pf; Sat, 24 Apr 2021 02:01:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1la7cA-0001d7-OB; Sat, 24 Apr 2021 02: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=NZkevtiDpNUVdHdc95JRujBZZIEgGlLT6VGTod3UapI=; b=NbuWRZpFIo9qwZvctnlAb0g3ax
	N2XIGvju68apVjUbRQpZBd9gAu7pJ4R89EYVDnC7b3ntwcDOrGtrvqfUD0zSuz3vaVb6Frn5aJDge
	tYzJh05culmvNYugr58hfplr9y+2FSSi8Kp0weB+1WzUTo2aSwwhJNbSkQY+ZjL9AmRo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161404-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161404: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-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-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw: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-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
X-Osstest-Versions-This:
    xen=e9b4fe26364950258c9f57f0f68eccb778eeadbb
X-Osstest-Versions-That:
    xen=f889fa267c47c3495d304da5da9dd2ef8a4c95af
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 02:01:46 +0000

flight 161404 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161404/

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 161393
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161393
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161393
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161393
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161393
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161393
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161393
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161393
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161393
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161393
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161393
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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

version targeted for testing:
 xen                  e9b4fe26364950258c9f57f0f68eccb778eeadbb
baseline version:
 xen                  f889fa267c47c3495d304da5da9dd2ef8a4c95af

Last test of basis   161393  2021-04-22 22:37:49 Z    1 days
Testing same since   161404  2021-04-23 10:43:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   f889fa267c..e9b4fe2636  e9b4fe26364950258c9f57f0f68eccb778eeadbb -> master


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 05:20:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 05:20:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116688.222634 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laAhu-0004Lp-O6; Sat, 24 Apr 2021 05:19:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116688.222634; Sat, 24 Apr 2021 05:19:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laAhu-0004Li-KG; Sat, 24 Apr 2021 05:19:54 +0000
Received: by outflank-mailman (input) for mailman id 116688;
 Sat, 24 Apr 2021 05:19: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 1laAht-0004La-PJ; Sat, 24 Apr 2021 05:19: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 1laAht-0003bJ-Jc; Sat, 24 Apr 2021 05:19: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 1laAht-0001Sh-8a; Sat, 24 Apr 2021 05:19:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laAht-0003z5-86; Sat, 24 Apr 2021 05: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=BiebwxeJgL3McmeHDirYQFyIDCpWp/WkB3XXq+B5RGQ=; b=aMrif4lJLzPk7Z8n0gmKRG7svn
	kzta+Bp7BL5xbwuWuCCLINzXFhaY/Qvyp3OR59MUjIbd1KhtYv4xsO4SxKSiyExMO+P3znG/canGX
	YdzDW3Z5hASkhrrmcYIAdud3hd5ux/3lTHRlqapiyWnDkV+6yIkiG7Noa1IrrQVsdVTA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161407-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161407: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx: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-vhd: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: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-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=18a3c5f7abfdf97f88536d35338ebbee119c355c
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 05:19:53 +0000

flight 161407 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161407/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                18a3c5f7abfdf97f88536d35338ebbee119c355c
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  266 days
Failing since        152366  2020-08-01 20:49:34 Z  265 days  445 attempts
Testing same since   161395  2021-04-23 01:59:00 Z    1 days    2 attempts

------------------------------------------------------------
5355 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1329530 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 06:11:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 06:11:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116697.222649 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laBVn-0001pZ-QR; Sat, 24 Apr 2021 06:11:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116697.222649; Sat, 24 Apr 2021 06:11:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laBVn-0001pS-Mi; Sat, 24 Apr 2021 06:11:27 +0000
Received: by outflank-mailman (input) for mailman id 116697;
 Sat, 24 Apr 2021 06:11: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 1laBVm-0001pK-QJ; Sat, 24 Apr 2021 06:11: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 1laBVm-0004Vy-MO; Sat, 24 Apr 2021 06:11: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 1laBVm-0003mK-D5; Sat, 24 Apr 2021 06:11:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laBVm-0001ch-Ca; Sat, 24 Apr 2021 06:11:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eF4ggTGDA0aXU2vNGU5FgrNVBQYirlybO0tT+1AJZwo=; b=ikQ1wPvTy9QwXyjC1Gt6sUCiWG
	7Ls+XZLfSCuGMXCFuBpd95pte/2SgsqqAv18Pin++eMqDZNk5+Z0zNv/zAorS399MZ/2fO57vx5pm
	K2dljG3R6LEVhv8IE+GZyrCyZHMPjIdyCdeJ3V8dhDD4qdZ5aD4h5up+BC83wHXD6m+k=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161417-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161417: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294
X-Osstest-Versions-That:
    ovmf=61680cac5e435053be89a4fc6b945466f2c7bac6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 06:11:26 +0000

flight 161417 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161417/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294
baseline version:
 ovmf                 61680cac5e435053be89a4fc6b945466f2c7bac6

Last test of basis   161406  2021-04-23 11:41:04 Z    0 days
Testing same since   161417  2021-04-23 22:13:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   61680cac5e..f2f4c6be2d  f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 08:25:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 08:25:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116726.222676 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laDb0-0007Sl-Rx; Sat, 24 Apr 2021 08:24:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116726.222676; Sat, 24 Apr 2021 08: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 1laDb0-0007Se-Na; Sat, 24 Apr 2021 08:24:58 +0000
Received: by outflank-mailman (input) for mailman id 116726;
 Sat, 24 Apr 2021 08:24:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1laDaz-0007SW-If; Sat, 24 Apr 2021 08:24:57 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1laDaz-0007dw-BB; Sat, 24 Apr 2021 08:24:57 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1laDaz-00037f-3o; Sat, 24 Apr 2021 08:24:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laDaz-0005yZ-3N; Sat, 24 Apr 2021 08:24:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Jg//KSvQ4veChT59OSQWXdwjTMBhoQ36u0pza2yEDVY=; b=UFiCj4t/vQryM/akkMSA2FTKwS
	JswPi21RbiZz1vai9NC0PehPbaMKFzuuK53pIdpnVcog9PSjyOgUgbwNkCFfwL+JVaujIBX487ywh
	ctSMiZUjkN9AzR3pRVa61cPFOZsweUgwZM7pPvJKn4qsB2SziMWq7bN1A0tgugmbBxiA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161423-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161423: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=3c3c55be66e230ef09ad927eda038dc32f01a166
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 08:24:57 +0000

flight 161423 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161423/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              3c3c55be66e230ef09ad927eda038dc32f01a166
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  288 days
Failing since        151818  2020-07-11 04:18:52 Z  287 days  280 attempts
Testing same since   161423  2021-04-24 04:18:53 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastian Germann <bastiangermann@fishpost.de>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 54631 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 11:46:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 11:46:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116769.222703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laGjz-0002Ks-PZ; Sat, 24 Apr 2021 11:46:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116769.222703; Sat, 24 Apr 2021 11:46: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 1laGjz-0002Kl-Ll; Sat, 24 Apr 2021 11:46:27 +0000
Received: by outflank-mailman (input) for mailman id 116769;
 Sat, 24 Apr 2021 11:46:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1laGjy-0002Kd-HO; Sat, 24 Apr 2021 11:46:26 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1laGjy-0002Tr-Bw; Sat, 24 Apr 2021 11:46:26 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1laGjy-0005Dr-42; Sat, 24 Apr 2021 11:46:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laGjy-0003XX-3T; Sat, 24 Apr 2021 11:46:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=g4ZsRRsTPN5jCXjNvouNesafZfB3nPdSMRJgB3EVHY4=; b=e7/NbEeFO8/IsT9lTXR8+1bavE
	JtBh5C/1Ofx/EVeSP4hcoYGYVZYZHDOvSdcCh8Bvn2nJ2quU9p831pRCxUps5hq+Nx/THyWFPi2Mm
	CwmmeJ24hTq9z8BBYZ7aRFuXdv1mhUwXAVc0cCZ8n0ibXsRgh9dxLoR/dkjKuKuB9WjE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161415-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161415: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 11:46:26 +0000

flight 161415 xen-4.12-testing real [real]
flight 161429 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161415/
http://logs.test-lab.xenproject.org/osstest/logs/161429/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2 18 guest-saverestore.2 fail in 161397 pass in 161415
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 161397

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 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
 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-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   66 days
Failing since        160128  2021-03-18 14:36:18 Z   36 days   48 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   35 days   46 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 14:36:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 14:36:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116857.222742 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laJO1-0002zA-1R; Sat, 24 Apr 2021 14:35:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116857.222742; Sat, 24 Apr 2021 14: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 1laJO0-0002z3-TD; Sat, 24 Apr 2021 14:35:56 +0000
Received: by outflank-mailman (input) for mailman id 116857;
 Sat, 24 Apr 2021 14:35: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 1laJNz-0002yv-Sy; Sat, 24 Apr 2021 14:35: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 1laJNz-0005TO-Ih; Sat, 24 Apr 2021 14:35: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 1laJNz-0006TD-9c; Sat, 24 Apr 2021 14:35:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laJNz-00065u-9A; Sat, 24 Apr 2021 14: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>
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=F3bO6x3yB4Nmsr0rZuVyY9rRt+clR9fMoKFPP8W3RM0=; b=sOBR5c5v4yrT57HA36YUuBqWGx
	GIXjrSXdtE6IYkk+rwo36x2/GJFIDn5Crii28UMg/fGxPII2FGas7if6fjRnMToId3qB3RIfwOyKd
	qtT1kTX3QdctZ/D1Gdn0X8z603u3hoAiYjIwK07JKv8CS2rhLQEdWnPuMTN9q8JDlfSM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-amd64-qemuu-nested-intel
Message-Id: <E1laJNz-00065u-9A@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 14:35:55 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-amd64-qemuu-nested-intel
testid debian-hvm-install/l1/l2

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161432/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-amd64-qemuu-nested-intel.debian-hvm-install--l1--l2.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-amd64-qemuu-nested-intel.debian-hvm-install--l1--l2 --summary-out=tmp/161432.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-amd64-qemuu-nested-intel debian-hvm-install/l1/l2
Searching for failure / basis pass:
 161401 fail [host=fiano1] / 160125 [host=chardonnay1] 160119 [host=godello0] 160113 [host=albana0] 160104 [host=godello1] 160097 [host=chardonnay0] 160091 [host=huxelrebe1] 160088 [host=godello0] 160082 ok.
Failure / basis pass flights: 161401 / 160082
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3b0d007a135284981fa750612a47234b83976f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b1cffefa1b163bce9aebc3416f562c1d3886eeaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6157b0e19721aadb4c7fdcfe57b2924af6144b14 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-d3b0d007a135284981fa750612a47234b83976f9 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#6157b0e19721aadb4c7fdcfe57b2924af6144b14-b1cffefa1b163bce9aebc3416f562c1d3886eeaa git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#14b95b3b8546db201e7efd0636ae0e215fae98f3-aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
Loaded 25299 nodes in revision graph
Searching for test results:
 160082 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6157b0e19721aadb4c7fdcfe57b2924af6144b14 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160088 [host=godello0]
 160091 [host=huxelrebe1]
 160097 [host=chardonnay0]
 160104 [host=godello1]
 160113 [host=albana0]
 160119 [host=godello0]
 160125 [host=chardonnay1]
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail irrelevant
 160748 fail irrelevant
 160779 fail irrelevant
 160801 fail irrelevant
 160827 fail irrelevant
 160851 fail irrelevant
 160883 fail irrelevant
 160916 fail irrelevant
 160980 fail irrelevant
 161050 fail irrelevant
 161088 fail irrelevant
 161121 fail irrelevant
 161147 fail irrelevant
 161171 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2ad22420a710dc07e3b644f91a5b55c09c39ecf3 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161191 fail irrelevant
 161210 fail irrelevant
 161232 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b53173e7cdafb7a318a239d557478fd73734a86a
 161256 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161276 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161290 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161308 fail irrelevant
 161334 fail irrelevant
 161374 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6157b0e19721aadb4c7fdcfe57b2924af6144b14 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161376 fail irrelevant
 161378 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161379 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161381 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7286d62d4e259be8cecf3dc2deea80ecc14489a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161364 fail irrelevant
 161385 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161390 fail irrelevant
 161391 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161394 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 fc4a62f65cbd2d5d2c247ed4fbf64a05e6485859 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161396 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161388 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3b0d007a135284981fa750612a47234b83976f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b1cffefa1b163bce9aebc3416f562c1d3886eeaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
 161399 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161400 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6157b0e19721aadb4c7fdcfe57b2924af6144b14 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161402 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3b0d007a135284981fa750612a47234b83976f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b1cffefa1b163bce9aebc3416f562c1d3886eeaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
 161405 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 283d845c9164f57f5dba020a4783bb290493802f b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161408 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 a752dd07466c4f0bda5c14d001b096e778a44ad5 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e31b3a5c34c6e5be7ef60773e607f189eaa15f3 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b4011741e6b39a8fd0ed5aded96c16c45ead5888
 161411 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 db492ebb91059b818d5b5ea5975d227e5c3c9bcc b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161414 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 313d86c956d4599054a9dcd524668f67797d317a 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 56b89f455894e4628ad7994fe5dd348145d1a9c5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161416 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161401 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3b0d007a135284981fa750612a47234b83976f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b1cffefa1b163bce9aebc3416f562c1d3886eeaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
 161418 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 146f720c55637410062041f68dc908645cd18aaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161420 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ad1324e044240ae9fcf67e4c215481b7a35591b9 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161422 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 445a5b4087567bf4d4ce76d394adf78d9d5c88a5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161424 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161426 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161427 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161428 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161430 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161432 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160082 (pass), for basis pass
 Result found: flight 161388 (fail), for basis failure (at ancestor ~27)
 Repro found: flight 161400 (pass), for basis pass
 Repro found: flight 161401 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cbde7be900d2a2279cbc4becb91d1ddd6a014def b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 161424 (pass), for last pass
 Result found: flight 161426 (fail), for first failure
 Repro found: flight 161427 (pass), for last pass
 Repro found: flight 161428 (fail), for first failure
 Repro found: flight 161430 (pass), for last pass
 Repro found: flight 161432 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Bug not present: cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161432/


  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.892931 to fit
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-amd64-qemuu-nested-intel.debian-hvm-install--l1--l2.{dot,ps,png,html,svg}.
----------------------------------------
161432: tolerable ALL FAIL

flight 161432 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/161432/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail baseline untested


jobs:
 test-amd64-amd64-qemuu-nested-intel                          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 Apr 24 14:44:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 14:44:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116864.222759 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laJWD-0003v0-T7; Sat, 24 Apr 2021 14:44:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116864.222759; Sat, 24 Apr 2021 14:44:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laJWD-0003ut-Q6; Sat, 24 Apr 2021 14:44:25 +0000
Received: by outflank-mailman (input) for mailman id 116864;
 Sat, 24 Apr 2021 14:44: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 1laJWC-0003ul-HB; Sat, 24 Apr 2021 14:44: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 1laJWC-0005cG-Cq; Sat, 24 Apr 2021 14:44: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 1laJWC-0006pN-0V; Sat, 24 Apr 2021 14:44:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laJWB-0000xD-WD; Sat, 24 Apr 2021 14:44:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=N0Lz2wVdcAtm9H+YaEfHIFi2H5x6l9KgIz2a6IPrf78=; b=AYO+30VUnSfrg8EGlt3aIadn6Z
	cf6iNvGZ5c1T6fg+p4Wz7qLlplU9bfu1PIpKGYss04k15PHGGvpLyUK5Mrr/lnCjam9knL1A8cpKx
	l6/scX0Mp4deXHoRVAGZk3c06nzdETVstC/621B3bHzfAg3kdaatUQ73vm0CkLKZDeB8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161419-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161419: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=ffa090bc56e73e287a63261e70ac02c0970be61a
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 14:44:23 +0000

flight 161419 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161419/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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

version targeted for testing:
 qemuu                ffa090bc56e73e287a63261e70ac02c0970be61a
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  247 days
Failing since        152659  2020-08-21 14:07:39 Z  246 days  453 attempts
Testing same since   161419  2021-04-24 00:07:02 Z    0 days    1 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 143011 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 19:19:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 19:19:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116913.222781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laNno-0006NA-03; Sat, 24 Apr 2021 19:18:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116913.222781; Sat, 24 Apr 2021 19:18: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 1laNnn-0006N3-Sn; Sat, 24 Apr 2021 19:18:51 +0000
Received: by outflank-mailman (input) for mailman id 116913;
 Sat, 24 Apr 2021 19:18: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 1laNnm-0006Mv-IN; Sat, 24 Apr 2021 19:18: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 1laNnm-00027F-CI; Sat, 24 Apr 2021 19:18: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 1laNnm-0002HN-37; Sat, 24 Apr 2021 19:18:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laNnm-0000yC-2m; Sat, 24 Apr 2021 19:18:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=JLEA7o6yrGK/qPKZsILc5KpOH2ApnpmYoFjnj0tDfKc=; b=tORXReqGDFPnRgn7qYoeH1zvGH
	TF647O4HGN6LoqHQ1Z7owO9bHw7lgyP30nO7rQwQBpddHDf+lEnXFg4lgVxCmQMevtYQyyQ34s7ty
	7UfP6nKBGw9XmBbh5H0fJlKo2NUg0VFtBzPvrUlvGC7wZoc/7oTTORMRQaNk+xUNrt9o=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161421-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161421: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-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-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw: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-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
X-Osstest-Versions-This:
    xen=bea65a212c0581520203b6ad0d07615693f42f73
X-Osstest-Versions-That:
    xen=e9b4fe26364950258c9f57f0f68eccb778eeadbb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 19:18:50 +0000

flight 161421 xen-unstable real [real]
flight 161435 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161421/
http://logs.test-lab.xenproject.org/osstest/logs/161435/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-examine      4 memdisk-try-append  fail pass in 161435-retest
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 161435-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161404
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161404
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161404
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161404
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161404
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161404
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161404
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161404
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161404
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161404
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161404
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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

version targeted for testing:
 xen                  bea65a212c0581520203b6ad0d07615693f42f73
baseline version:
 xen                  e9b4fe26364950258c9f57f0f68eccb778eeadbb

Last test of basis   161404  2021-04-23 10:43:51 Z    1 days
Testing same since   161421  2021-04-24 02:04:50 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-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   e9b4fe2636..bea65a212c  bea65a212c0581520203b6ad0d07615693f42f73 -> master


From xen-devel-bounces@lists.xenproject.org Sat Apr 24 21:25:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 24 Apr 2021 21:25:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116924.222808 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laPlf-0002Ud-VE; Sat, 24 Apr 2021 21:24:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116924.222808; Sat, 24 Apr 2021 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 1laPlf-0002UW-Qj; Sat, 24 Apr 2021 21:24:47 +0000
Received: by outflank-mailman (input) for mailman id 116924;
 Sat, 24 Apr 2021 21: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 1laPld-0002Tp-Vo; Sat, 24 Apr 2021 21:24: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 1laPld-0004Cr-Oe; Sat, 24 Apr 2021 21:24: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 1laPld-00085E-DA; Sat, 24 Apr 2021 21:24:45 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laPld-0007yB-Ce; Sat, 24 Apr 2021 21:24:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=xnqyFMqfCBjya1Q36pDb/sXmXBxSJo0UDHZdN0vN6hU=; b=6hMjpv0X0DQ6z9WV7mrm+yzE3U
	i5QUuRDrMGR0G/0NCFYGgY1o4ZqxNYDXASbAWQn3y/f8JgDWrrGqIjLwSsvxdQKC9p8CGWZtLaxCm
	7m4XMcXD2he9sJVLQ0of24SBiZLHGwzbaHdO67BUMPucKwGLwAqusjiMaKzVZnWSxbyI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161425-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161425: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx: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-vhd: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: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-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=8db5efb83fa99e81c3f8dee92a6589b251f117f3
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 24 Apr 2021 21:24:45 +0000

flight 161425 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161425/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                8db5efb83fa99e81c3f8dee92a6589b251f117f3
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  267 days
Failing since        152366  2020-08-01 20:49:34 Z  266 days  446 attempts
Testing same since   161425  2021-04-24 05:23:02 Z    0 days    1 attempts

------------------------------------------------------------
5357 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1330218 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 01:07:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 01:07:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116949.222829 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laTFF-0005KH-TI; Sun, 25 Apr 2021 01:07:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116949.222829; Sun, 25 Apr 2021 01:07: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 1laTFF-0005KA-Ph; Sun, 25 Apr 2021 01:07:33 +0000
Received: by outflank-mailman (input) for mailman id 116949;
 Sun, 25 Apr 2021 01:07:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LSnA=JW=intel.com=kevin.tian@srs-us1.protection.inumbo.net>)
 id 1laTFE-0005K5-Uw
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 01:07:33 +0000
Received: from mga12.intel.com (unknown [192.55.52.136])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a9de98bd-40dd-4a5f-bf90-3516c347dadf;
 Sun, 25 Apr 2021 01:07:29 +0000 (UTC)
Received: from orsmga005.jf.intel.com ([10.7.209.41])
 by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 24 Apr 2021 18:07:27 -0700
Received: from fmsmsx605.amr.corp.intel.com ([10.18.126.85])
 by orsmga005.jf.intel.com with ESMTP; 24 Apr 2021 18:07:27 -0700
Received: from fmsmsx604.amr.corp.intel.com (10.18.126.84) by
 fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Sat, 24 Apr 2021 18:07:26 -0700
Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by
 fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2
 via Frontend Transport; Sat, 24 Apr 2021 18:07:26 -0700
Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.36.56) 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.2106.2; Sat, 24 Apr 2021 18:07:26 -0700
Received: from MWHPR11MB1886.namprd11.prod.outlook.com (2603:10b6:300:110::9)
 by MWHPR11MB1840.namprd11.prod.outlook.com (2603:10b6:300:112::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.25; Sun, 25 Apr
 2021 01:07:25 +0000
Received: from MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29]) by MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29%9]) with mapi id 15.20.4065.025; Sun, 25 Apr 2021
 01:07: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: a9de98bd-40dd-4a5f-bf90-3516c347dadf
IronPort-SDR: /yz9CIr3KbenASjIdvViSKMGvGwajklPmwjfiIscR26HNlYTfjumJPWITvgvqzFdpvegznwq3U
 0vgVbFHMN+Mw==
X-IronPort-AV: E=McAfee;i="6200,9189,9964"; a="175688369"
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="175688369"
IronPort-SDR: VT1JM0+AjG3ynR9DHkCT0MkyKC1c3mn6AsgWOmQP5RA7CW2W0OoZVuR/jPkJ+sBIOX27ISWMPe
 JvLFBomZwn0Q==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="603856175"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lGO7iRwAqL7esG95mz5BXBYhDBSkbKat5Gat9v0BCtUpsrB57xqzcH2oxRIWsdPhIaKwiY3OZY5tpXwmwydW7H76/pC6uJZtSo+sw4/jaDXf8jEggJVraQiKQCsGmvKr0+59SINMwMrJgHiX1V/O9Kz+1sfOoC/CDV2u8zmJMXdH5Qj1UxnSiByNkHyqYT7egVmvSfT/GApQti4EAfS7s9KImunPjBSwAvo+tnG2r/7YXhFukdFE+NO0vgemkfy+2LZ7cqkOvIVWTx7DQ0YbKNoH5mWux6t4Dvz9bOLZf/TqdNq6jhzsZz01gx+whf2VxdxGl6l+X+XQW1GijLqM1A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8L9IDF1wo8fsdO8mmhW6cMKtoG6+H0Br5XorqTsh0Fg=;
 b=lKkR3IzRkXmIExfrRaFWTjZZk77EEG2f6p1JgVg3sdAk/RXPRHzbnQTfIRRjPBOeTyuZEMv/h4n416czvoPM8bCImR5yCZdLmqJIymmUSOeQPvNY8XddEYS0vME3KX9VFliKX5ELTgYak0EO4xf2Z+AJVzIOam2WqluuQ28wFwpWyWSburO4CwP5TneyhuxlI7wxlW+MEHOCc17u8wjcZKVziJnNNe44CLLX0KGSCwLNr63moC0vlt81ciQWNpok21LHP/2UGWRIy0D9Mld8uuCVvgJLZZ7Nj3cnGXmWQ9woyxVXEwHdRpvKwUQ1Xg8Y7y+CUvls2fyWXp7PX3uaIg==
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
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com;
 s=selector2-intel-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8L9IDF1wo8fsdO8mmhW6cMKtoG6+H0Br5XorqTsh0Fg=;
 b=KLWf4IlfYY6PA7y88t3YrhbKOgnN4vlvPtb9SrzNFAgvTmJCo7Ms7Pa7FTW78ACUeOc/59xKguLmmUQNKIpKvEkwLJi8yOOveedxh7BDAXKBq4XkPeEyf8XD7o0qw3yeg8xb4c3ENXnr8BSul6qK0YVufrZUMXXDoXwrCO7mL+c=
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Igor Druzhinin <igor.druzhinin@citrix.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "Nakajima, Jun" <jun.nakajima@intel.com>, "jbeulich@suse.com"
	<jbeulich@suse.com>, "Cooper, Andrew" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "wl@xen.org" <wl@xen.org>
Subject: RE: [PATCH v5 1/2] x86/vtx: add LBR_SELECT to the list of LBR MSRs
Thread-Topic: [PATCH v5 1/2] x86/vtx: add LBR_SELECT to the list of LBR MSRs
Thread-Index: AQHXMd7OCBXv5dx1tEmSENL+Sd9wparEetQA
Date: Sun, 25 Apr 2021 01:07:24 +0000
Message-ID: <MWHPR11MB1886B4AEB0921371EF676A6F8C439@MWHPR11MB1886.namprd11.prod.outlook.com>
References: <1618481062-16094-1-git-send-email-igor.druzhinin@citrix.com>
In-Reply-To: <1618481062-16094-1-git-send-email-igor.druzhinin@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-version: 11.5.1.3
dlp-product: dlpe-windows
dlp-reaction: no-action
authentication-results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=intel.com;
x-originating-ip: [101.88.226.48]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 759d4286-3bc5-401c-9dcd-08d907867cd2
x-ms-traffictypediagnostic: MWHPR11MB1840:
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MWHPR11MB1840B5DF4ED0F8D0B3100A938C439@MWHPR11MB1840.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8882;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: a7vidAQnNcpoSGYS7WhHzHIRXOBIOCzxWriGuP7AAYNcqGK46npRxqN1t8azEdnHrCPEkQVP2cTaURIbOEj2+gDQqaJom0GJrboI2MIhZpW+Kf0TjgwSWRWO8GggLXCr/IhSC6RQ7Dwq9ARxabnyby3cvqjUia6MOST37tJL81cMcQzb25BwvvLrq4Bxa09/FMPPMmkdV9ZXwX6o5Y36TRiedlDekXVt/tQIGLuHacXyo3a5YcM2pwKnvLBS0/1yhkmtOQzdL15oh9P1ldt5NvCLl1Vvb5oAkQeVRNviOoLR1Z3AVt+MlV6NjdxhdE/Xd+YB8LKJFnlkU5RrQkQx95qdW/ePgaAO1aXemWlg1N73RYnZLlnoBeTmwHc2Zea9e98yR4HuhfaC8NSOQLpvhX1ZPP3fXj6YufNvFQSIrwVROF99tP1J/SNsykafIW7aJdaYD8CcIA2GaeTSQ+D7M+RQuAhfycmCjUdKyMH4UUbrkcNGWVI1XwN7w9FtJ4VCMC8TDuDt2jZRGOVomSyYNpa60mYwAWMDHYs37OZ9+PXJf0A7g2mv+PeKeHQQD1FvXZy3CwNb012fQh2EQ7EeIPwWKYV/yWKPHySnS376UdE=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1886.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(376002)(396003)(136003)(366004)(39860400002)(66446008)(64756008)(66946007)(86362001)(110136005)(33656002)(66476007)(66556008)(8676002)(71200400001)(5660300002)(38100700002)(4326008)(54906003)(6506007)(76116006)(26005)(55016002)(7696005)(316002)(2906002)(83380400001)(122000001)(8936002)(478600001)(52536014)(9686003)(186003);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata: =?us-ascii?Q?ZSG+eC0pXivLSk3IMwJ0LUoozEj6MmjUF9lBK7qa9lfyTzIduYF7oLHxHs6a?=
 =?us-ascii?Q?JfcQS907yYTRX4t2x4AAi1tu2sdzr9wOVgJ/yzCWyrzmyNUpc2SpJBUmTKyT?=
 =?us-ascii?Q?iOKcsBD8XFQ/bOd1+2V1EHVlVtnneAtIWcqmgzHs2x+EqhbdokOutMZQp1wP?=
 =?us-ascii?Q?KtMCIFUuKQPCR7UdaaKzQ6VRTO7p2JibRm2Uuz7ZO2iTIXxAXhkApFANQ3Cv?=
 =?us-ascii?Q?fDxQP4fGiMeSjafrryHA9B+cT3eF4KoHXVh7Fn68hWWIdRS3lRPCOQ8BwXzj?=
 =?us-ascii?Q?4OP6U2cUd2ACBF2SgI7ZUJMtlL/MbHOJ4wJgh1Unj6HgKpu8Qubbku0hFN5Q?=
 =?us-ascii?Q?y/TMwg0w9wTCpooMx22z9n7aIw5zvze6pbwgAX0gRAFjABW2cw6qDdQ3/hU6?=
 =?us-ascii?Q?Oi7UQcJL8sYL0KVcpGzzpiUuny6YDh1XcK76BeVJPSbglh+AiYj9m/NAn93b?=
 =?us-ascii?Q?eg1z7g95S8+CGELUiuW0UMfRMsEX63hoxLrGoKabitX91UccCB/b6Jn/z97l?=
 =?us-ascii?Q?7jHPOKo7M19CaIllKhviOVNXXCYhQq+s3GMslEh/Q+SseFIyL8rqrM1IMBmC?=
 =?us-ascii?Q?HI89kOCpX2v6q5Ly/toKSM+ZKRLmZ1z/zrqmLtThnn1dMG1paZEicqpkDobc?=
 =?us-ascii?Q?bu0nPVsSmXrFfVSOcjciR13+ITnkubsYcix+tHpYVrKaVpgv90NeKX/4wpCO?=
 =?us-ascii?Q?Gi4byMJudx8fFs3SB9H6J5mf6CFeafaGjkXwcgRUBgTEMRIbOhIU4TOSxr7L?=
 =?us-ascii?Q?sXwgOIpgbGKR6lWTqndRY4fs8LWieSLHqwFBUqg4DGiVPOHKXYgRGN9zWk6d?=
 =?us-ascii?Q?D/Rx+JHfOmkKUYEQwotwB37/S2YShe0hjOUWsa+7aVf/Eu0SeAqAr7HkxsGX?=
 =?us-ascii?Q?2FFBIIeWF/YV8ODObu1FzUBX9REvYUkWgDp8xNvqG40UicYu1GI0A9wLcHD6?=
 =?us-ascii?Q?W/ma/oCIluO/pWFzsX6HjYgbGETMiu6wi9PxbfBdn/rnRqD4hdxKnEbXmIKJ?=
 =?us-ascii?Q?4IfeDSXUcaecAvAAVWqF11hM6ytbPWTmB8mdiEPNY5h976pBjALayw7ORIah?=
 =?us-ascii?Q?z1TqYwGlHdLSmJIXi3bS1YZ0GVTveSoekjST8roiSnYDQXdHb3pBjgpZJwq6?=
 =?us-ascii?Q?eOXudxT/LCgBn3eHMnpdE1E7w22bHix1wB0Bn1kM8jM+uLj7BFIX2RwisqWb?=
 =?us-ascii?Q?AODbSO7pk+47MYhcsulJlaoNhjrIu1BMHmYeXhJzwjjZ8+QaO07xaMkG59AO?=
 =?us-ascii?Q?4m0pr08RFvyEe40USAwUp+0B0//KyUhguYK3fn2/L+51BOsrOdMCQomDuh5O?=
 =?us-ascii?Q?Us5kR8KM1KWoeDC201awf3m8?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1886.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 759d4286-3bc5-401c-9dcd-08d907867cd2
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2021 01:07:24.9466
 (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: 9eoTf4I/+UK6//lAZYbPNjJJKM3qSD3l/TLh69cV8LzKZIMFWEbQHOWlHSOUHjoXC7xzS2e1e46MQRi/WoE/1w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1840
X-OriginatorOrg: intel.com

> From: Igor Druzhinin <igor.druzhinin@citrix.com>
> Sent: Thursday, April 15, 2021 6:04 PM
>=20
> This MSR exists since Nehalem / Silvermont and is actively used by Linux,
> for instance, to improve sampling efficiency.
>=20
> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>

Reviewed-by: Kevin Tian <kevin.tian@intel.com>

> ---
> Changes in v5:
> - added Silvermont+ LBR_SELECT support
>=20
> New patch in v4 as suggested by Andrew.
> ---
>  xen/arch/x86/hvm/vmx/vmx.c      | 20 ++++++++++++++++----
>  xen/include/asm-x86/msr-index.h | 10 ++++++++--
>  2 files changed, 24 insertions(+), 6 deletions(-)
>=20
> diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
> index 835b905..30c6a57 100644
> --- a/xen/arch/x86/hvm/vmx/vmx.c
> +++ b/xen/arch/x86/hvm/vmx/vmx.c
> @@ -2915,14 +2915,16 @@ static const struct lbr_info {
>  }, nh_lbr[] =3D {
>      { MSR_IA32_LASTINTFROMIP,       1 },
>      { MSR_IA32_LASTINTTOIP,         1 },
> -    { MSR_C2_LASTBRANCH_TOS,        1 },
> +    { MSR_NHL_LBR_SELECT,           1 },
> +    { MSR_NHL_LASTBRANCH_TOS,       1 },
>      { MSR_P4_LASTBRANCH_0_FROM_LIP,
> NUM_MSR_P4_LASTBRANCH_FROM_TO },
>      { MSR_P4_LASTBRANCH_0_TO_LIP,
> NUM_MSR_P4_LASTBRANCH_FROM_TO },
>      { 0, 0 }
>  }, sk_lbr[] =3D {
>      { MSR_IA32_LASTINTFROMIP,       1 },
>      { MSR_IA32_LASTINTTOIP,         1 },
> -    { MSR_SKL_LASTBRANCH_TOS,       1 },
> +    { MSR_NHL_LBR_SELECT,           1 },
> +    { MSR_NHL_LASTBRANCH_TOS,       1 },
>      { MSR_SKL_LASTBRANCH_0_FROM_IP, NUM_MSR_SKL_LASTBRANCH },
>      { MSR_SKL_LASTBRANCH_0_TO_IP,   NUM_MSR_SKL_LASTBRANCH },
>      { MSR_SKL_LASTBRANCH_0_INFO,    NUM_MSR_SKL_LASTBRANCH },
> @@ -2934,10 +2936,19 @@ static const struct lbr_info {
>      { MSR_C2_LASTBRANCH_0_FROM_IP,
> NUM_MSR_ATOM_LASTBRANCH_FROM_TO },
>      { MSR_C2_LASTBRANCH_0_TO_IP,
> NUM_MSR_ATOM_LASTBRANCH_FROM_TO },
>      { 0, 0 }
> +}, sm_lbr[] =3D {
> +    { MSR_IA32_LASTINTFROMIP,       1 },
> +    { MSR_IA32_LASTINTTOIP,         1 },
> +    { MSR_SM_LBR_SELECT,            1 },
> +    { MSR_SM_LASTBRANCH_TOS,        1 },
> +    { MSR_C2_LASTBRANCH_0_FROM_IP,
> NUM_MSR_ATOM_LASTBRANCH_FROM_TO },
> +    { MSR_C2_LASTBRANCH_0_TO_IP,
> NUM_MSR_ATOM_LASTBRANCH_FROM_TO },
> +    { 0, 0 }
>  }, gm_lbr[] =3D {
>      { MSR_IA32_LASTINTFROMIP,       1 },
>      { MSR_IA32_LASTINTTOIP,         1 },
> -    { MSR_GM_LASTBRANCH_TOS,        1 },
> +    { MSR_SM_LBR_SELECT,            1 },
> +    { MSR_SM_LASTBRANCH_TOS,        1 },
>      { MSR_GM_LASTBRANCH_0_FROM_IP,
> NUM_MSR_GM_LASTBRANCH_FROM_TO },
>      { MSR_GM_LASTBRANCH_0_TO_IP,
> NUM_MSR_GM_LASTBRANCH_FROM_TO },
>      { 0, 0 }
> @@ -2991,6 +3002,7 @@ static const struct lbr_info
> *last_branch_msr_get(void)
>              return sk_lbr;
>          /* Atom */
>          case 0x1c: case 0x26: case 0x27: case 0x35: case 0x36:
> +            return at_lbr;
>          /* Silvermont */
>          case 0x37: case 0x4a: case 0x4d: case 0x5a: case 0x5d:
>          /* Xeon Phi Knights Landing */
> @@ -2999,7 +3011,7 @@ static const struct lbr_info
> *last_branch_msr_get(void)
>          case 0x85:
>          /* Airmont */
>          case 0x4c:
> -            return at_lbr;
> +            return sm_lbr;
>          /* Goldmont */
>          case 0x5c: case 0x5f:
>              return gm_lbr;
> diff --git a/xen/include/asm-x86/msr-index.h b/xen/include/asm-x86/msr-
> index.h
> index 43d26ef..020908f 100644
> --- a/xen/include/asm-x86/msr-index.h
> +++ b/xen/include/asm-x86/msr-index.h
> @@ -606,15 +606,21 @@
>  #define NUM_MSR_C2_LASTBRANCH_FROM_TO	4
>  #define NUM_MSR_ATOM_LASTBRANCH_FROM_TO	8
>=20
> +/* Nehalem (and newer) last-branch recording */
> +#define MSR_NHL_LBR_SELECT		0x000001c8
> +#define MSR_NHL_LASTBRANCH_TOS		0x000001c9
> +
>  /* Skylake (and newer) last-branch recording */
> -#define MSR_SKL_LASTBRANCH_TOS		0x000001c9
>  #define MSR_SKL_LASTBRANCH_0_FROM_IP	0x00000680
>  #define MSR_SKL_LASTBRANCH_0_TO_IP	0x000006c0
>  #define MSR_SKL_LASTBRANCH_0_INFO	0x00000dc0
>  #define NUM_MSR_SKL_LASTBRANCH		32
>=20
> +/* Silvermont (and newer) last-branch recording */
> +#define MSR_SM_LBR_SELECT		0x000001c8
> +#define MSR_SM_LASTBRANCH_TOS		0x000001c9
> +
>  /* Goldmont last-branch recording */
> -#define MSR_GM_LASTBRANCH_TOS		0x000001c9
>  #define MSR_GM_LASTBRANCH_0_FROM_IP	0x00000680
>  #define MSR_GM_LASTBRANCH_0_TO_IP	0x000006c0
>  #define NUM_MSR_GM_LASTBRANCH_FROM_TO	32
> --
> 2.7.4



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 01:08:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 01:08:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116952.222841 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laTFo-0005PB-5h; Sun, 25 Apr 2021 01:08:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116952.222841; Sun, 25 Apr 2021 01: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 1laTFo-0005P4-2g; Sun, 25 Apr 2021 01:08:08 +0000
Received: by outflank-mailman (input) for mailman id 116952;
 Sun, 25 Apr 2021 01:08:06 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LSnA=JW=intel.com=kevin.tian@srs-us1.protection.inumbo.net>)
 id 1laTFm-0005Ox-Tl
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 01:08:06 +0000
Received: from mga03.intel.com (unknown [134.134.136.65])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dc04f40e-0c3a-462e-88e3-f85743dbd91b;
 Sun, 25 Apr 2021 01:08:00 +0000 (UTC)
Received: from fmsmga004.fm.intel.com ([10.253.24.48])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 24 Apr 2021 18:07:59 -0700
Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81])
 by fmsmga004.fm.intel.com with ESMTP; 24 Apr 2021 18:07:57 -0700
Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) 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.2106.2; Sat, 24 Apr 2021 18:07:57 -0700
Received: from fmsmsx606.amr.corp.intel.com (10.18.126.86) by
 fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Sat, 24 Apr 2021 18:07:57 -0700
Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by
 fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2
 via Frontend Transport; Sat, 24 Apr 2021 18:07:56 -0700
Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.107)
 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.2106.2; Sat, 24 Apr 2021 18:07:56 -0700
Received: from MWHPR11MB1886.namprd11.prod.outlook.com (2603:10b6:300:110::9)
 by MWHPR11MB1840.namprd11.prod.outlook.com (2603:10b6:300:112::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.25; Sun, 25 Apr
 2021 01:07:55 +0000
Received: from MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29]) by MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29%9]) with mapi id 15.20.4065.025; Sun, 25 Apr 2021
 01:07: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: dc04f40e-0c3a-462e-88e3-f85743dbd91b
IronPort-SDR: Zmb0g3+2S4ZlQX3ervQ4vsbvMN9dZ1gCYdbBpqrKTp1Qz/HZTQD8g+95gzH33fplMuEPWP0mzJ
 M4dq+xsAeGyg==
X-IronPort-AV: E=McAfee;i="6200,9189,9964"; a="196263549"
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="196263549"
IronPort-SDR: AePcSC5nwzceo1taRPFG3fApFP83A/Q6gzJIdEWFc6zWDYOdI4EN+yN8gG4oueal7Clno6B+PF
 DOK7DONtF9GQ==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="446910220"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GWAnLMXNRlHnb+NcWL3zTQhM3Z/sbjjv0xkr9Fd0UgkgpoCUpt70Vmq3cD2mmyn4vB4NK/vetyWTkOnbmdVM12fAP14nl3yMj6gy0WxnpFD0RDLqA6DlzH2dsk5CX5zn6Xn8sUWq2VYbpnsyRTK5IOX1PvEZitXt2o2ShK78KERxScdgIVjI2WbN0dE7OQ08oR2ia505KpXNZHmh98KhR2BsdQ0PRvzrUHVquJgFEZyezC7yPNavJEOqmCtr9pK6bO9zkVwvfBNJacjOeWIkn8h0jlYwWrB+Vx8mt2gmGI4HVzBP3jOAP+V8HvfYcvwMyHAuIN3OAT0PuJrEVyRkHg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cRyCHxZeb86c0G1/R7IXEyOhBEkPaNpAVBEwvRoSyno=;
 b=i2+2GhgRkx7lIDFcwwEGjwEuSQscrxpuOmFZf0sCgfbt+fDuQCBDHJMnCB+61pl+oEyrqFvNLhw2y0pwVeKvUhe6SSWO7Yu5rMTBnNSB+ISXCCXoVJm0bjj3XCC5a2JteELf6P0mKXaa0M7QSUdbWJJ1do/wRpP3uBAa+iVtMCbx9SJ2SzLLR2g5fUadpYir7XqNIwDFlkHMAy0cpT39/F2y9zrI8nDH0ELtUfRptq673I4U5gLndrviCNcA5VNPRBNQrwskLeVP04PnNQdE2hFwtEmOps1fiPW/otuvw25qvMAFRetbb7V6HRgaeAfj/9yg9Mk9Jm+lC4fZxEX1HQ==
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
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com;
 s=selector2-intel-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cRyCHxZeb86c0G1/R7IXEyOhBEkPaNpAVBEwvRoSyno=;
 b=fsLxKFT3IfyG1RdvCcsLGoLydom3JLQGnJ3Aemi0oUKTZX+ueIG9z5o8X83tOoI6SfYfGh6RyK5QCA1oNUIbAIwxGO3UNQf+joD9YO25lYVG7W9ueqB7FEKxNPg79z1csRQiPXqNFcldDKFQDTRWJfY6yzFbLpWiBg+/ncE0ylU=
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Igor Druzhinin <igor.druzhinin@citrix.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "Nakajima, Jun" <jun.nakajima@intel.com>, "jbeulich@suse.com"
	<jbeulich@suse.com>, "Cooper, Andrew" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "wl@xen.org" <wl@xen.org>
Subject: RE: [PATCH v5 2/2] x86/intel: insert Ice Lake-SP and Ice Lake-D model
 numbers
Thread-Topic: [PATCH v5 2/2] x86/intel: insert Ice Lake-SP and Ice Lake-D
 model numbers
Thread-Index: AQHXMd7GTVAjJC2DV0yy3tll9lVDHKrEevtQ
Date: Sun, 25 Apr 2021 01:07:54 +0000
Message-ID: <MWHPR11MB18860623069EA111BAFD94C78C439@MWHPR11MB1886.namprd11.prod.outlook.com>
References: <1618481062-16094-1-git-send-email-igor.druzhinin@citrix.com>
 <1618481062-16094-2-git-send-email-igor.druzhinin@citrix.com>
In-Reply-To: <1618481062-16094-2-git-send-email-igor.druzhinin@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-version: 11.5.1.3
dlp-product: dlpe-windows
dlp-reaction: no-action
authentication-results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=intel.com;
x-originating-ip: [101.88.226.48]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: ced85643-3e66-4879-6d3c-08d907868ea5
x-ms-traffictypediagnostic: MWHPR11MB1840:
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MWHPR11MB184041E9708462DD01E4D6E38C439@MWHPR11MB1840.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:7691;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: nJMdOoziVukTAslwa7bbGVcTnwf3Z6Rh/2ESX1f9r9jIsc9eZfUKZ0libWbzACgAh0YzQv9cNZGaJdAA/TQfPBcKQg3ucTzQvrKH7zylNen99f0W6A3f5zlp22CCGWzP893UFpM+IjzZckcLVBGBN6xG4Ic910IwDMe1PLIpcIGGkRu+nf9alwHdAFjb0ltS2/1xLkrUS6bJ7xHbyoJR+0xnZguWoqXLL53ZKl3ONtrRwhyB5rYtdIIs4wpy79F/1BSwYw9BByiFjjuGP/tFxUtnckjJLmmyOAyTeg/tMcNikt+4q5jIxdSSiII4198gKFNQisi24DNwRXB3J8bIHcuM2mmQJ+x+zYtH22PtkDTnnke2Y+SiX/dcrFBDjXD9L3GG5L0tkMftqUqTInXUpRsutHs0GuxwfCjx5hzRy8KEhvez1Vn7g2Q63t0OzzUwdE0xa3oAaimvPbX3FSdHqfwhSkxG7GlMbHo2pIFQ+k58G7JWN/AoTcJtVqLbRWbdRXZm5W/L0+jDTWkpqlun6/dLxTM7GSFEq9QlYDaIS0KbF+0zTNnQruBnSewBTqnZAe0xxczfNMmFLBhOBRp8bWHts5M/4YiDWzXePJNvBQo=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1886.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(376002)(396003)(136003)(366004)(39860400002)(66446008)(64756008)(66946007)(86362001)(110136005)(33656002)(66476007)(66556008)(8676002)(71200400001)(5660300002)(38100700002)(4326008)(54906003)(6506007)(76116006)(26005)(55016002)(7696005)(316002)(2906002)(83380400001)(122000001)(8936002)(478600001)(52536014)(9686003)(186003);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata: =?us-ascii?Q?fEcKLmwQu3KXVujnEynVTS+rH7WFbGzqH2ZpVUGNTtew9tUwQg4ur32eEkay?=
 =?us-ascii?Q?+XESIOco9x8gK/AgDCY4RsLf30Qm7Nzf5M3AD2d5Y+Js8WSE1DH8i/pfAocE?=
 =?us-ascii?Q?COYQEpFgCio9rqAySb96YX6FP8QiLeVmu0adW83wbqr3B9ywLAHX7J/MqDR8?=
 =?us-ascii?Q?BslcwLyiEC1o3UjDXlBFWzn0/R0o1jA9KB2N/IBD4zgX8PXJp+KtOQpAqSSh?=
 =?us-ascii?Q?3wyZWfKHo9lvYlfeyiT/xBNVGxN7crdzCd+6cOYPATRvue2lh7KoZ7/zExkp?=
 =?us-ascii?Q?5VrBV14vTHl7qhjL6lCcIzxwX0jTXz4dxLH/fQRTnRdkkrJH0iUWboBmQhmM?=
 =?us-ascii?Q?63PsAuAnLan9isrnZdwNFMK2iusEMxtga2wfCiq9jVairoQ39zzdwvAkj/7l?=
 =?us-ascii?Q?0A1CK7H2/X5eYWpED1j5F61GIJszFy1srluPGM2dVCJQvR/J6mk6lLZYQFiy?=
 =?us-ascii?Q?suhPCq40d7d6ryClBMZRfjDHK21/dil7YoI9FVvi3nuQ4zdWoy+tQeeMenuT?=
 =?us-ascii?Q?CqNnUbwusm6PfK3tISZJtxuRWnm5xdUe+cbrMFRG6Z7wvoPqZikPiIrwNOav?=
 =?us-ascii?Q?uDX73nZFOzugJRtabmwJGm9YJJ1yQprV65ZxeGQbuoO6IZ/6YJt8PN9l9e7L?=
 =?us-ascii?Q?jTIWAxeXSf2OqvRz4uGQ9LtUBLbeL3UG0KjOy5IWDx+cNyiPTfRXEFP9XwJe?=
 =?us-ascii?Q?8X0+PNmbwXiCHWmzKxXi1/wbfTj2aRl2lv9sEHf9iOIiANXph4gEJu/gkOg7?=
 =?us-ascii?Q?xLC9VPrZO6OIiOc1XQBTX02axgaaMEwhjXsl/p8Lgkto7h6bpfZ+0kQNH1il?=
 =?us-ascii?Q?9Haq4dZvNCZ8tWJsjZj3QWZndYbthGUgtTosGOlCJkKL5vtbxFIWH10KY35K?=
 =?us-ascii?Q?HQk/jM2jR+eBjxGWzTGQtSZgIvn3XiwF1sAuyaqDmwBeOqOkHh73nMalkBhr?=
 =?us-ascii?Q?OXB6N5PF6NFt+wFO2JKga7wlfujM4M5rdwLCByWAe4zwiul/xE+xNkNlcP+D?=
 =?us-ascii?Q?4aGyhIO6M6n2XhVuvWL/QOVcVp67KPYZzXr6pAXi8CF+chDos0pksW9hpruv?=
 =?us-ascii?Q?qEgzWNZxMcu1qns+4ZPwl9rnr+E7vxYDgmITcE1i7pFuxNHdZ5Nag4W8+PZV?=
 =?us-ascii?Q?gSWuyuo7YK4oFmBIFCl3nga5fecwJfyS0Uv515Pj0i8K01C4vPXyQx2WtlTC?=
 =?us-ascii?Q?zZ62k3M8CuEsGhSLdcOigid+Lo259L7vkp30eSYm49KMbwJjvSJMGX8rgpVP?=
 =?us-ascii?Q?5W8t+1AfQfMgKg6iondjK75f+FYBCeNFA5/QaK2W6rEKG+k9x5CCKBnlRsMl?=
 =?us-ascii?Q?gZYKcDmvYY5wSpW0POV2hzEx?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1886.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ced85643-3e66-4879-6d3c-08d907868ea5
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2021 01:07:54.8904
 (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: kZ3UCSAliTse/z2ZI/ADiG9NJJuXKvQ4JshWNwkp/4Q8lsqUFMDIpvVPgrxufmIOhlPFV2MDE3IoiCPLa1AdQQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1840
X-OriginatorOrg: intel.com

> From: Igor Druzhinin <igor.druzhinin@citrix.com>
> Sent: Thursday, April 15, 2021 6:04 PM
>=20
> LBR, C-state MSRs should correspond to Ice Lake desktop according to
> SDM rev. 74 for both models.
>=20
> Ice Lake-SP is known to expose IF_PSCHANGE_MC_NO in
> IA32_ARCH_CAPABILITIES MSR
> (as advisory tells and Whitley SDP confirms) which means the erratum is
> fixed
> in hardware for that model and therefore it shouldn't be present in
> has_if_pschange_mc list. Provisionally assume the same to be the case
> for Ice Lake-D.
>=20
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>

Reviewed-by: Kevin Tian <kevin.tian@intel.com>

> ---
> No changes in v5.
>=20
> Changes in v4:
> - now based on SDM update
> - new LBR (0x1e0)does not seem to be exposed in the docs
>=20
> Changes in v3:
> - Add Ice Lake-D model numbers
> - Drop has_if_pschange_mc hunk following Tiger Lake related discussion
> ---
>  xen/arch/x86/acpi/cpu_idle.c | 2 ++
>  xen/arch/x86/hvm/vmx/vmx.c   | 2 +-
>  2 files changed, 3 insertions(+), 1 deletion(-)
>=20
> diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c
> index c092086..d788c8b 100644
> --- a/xen/arch/x86/acpi/cpu_idle.c
> +++ b/xen/arch/x86/acpi/cpu_idle.c
> @@ -181,6 +181,8 @@ static void do_get_hw_residencies(void *arg)
>      case 0x55:
>      case 0x5E:
>      /* Ice Lake */
> +    case 0x6A:
> +    case 0x6C:
>      case 0x7D:
>      case 0x7E:
>      /* Tiger Lake */
> diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
> index 30c6a57..91cba19 100644
> --- a/xen/arch/x86/hvm/vmx/vmx.c
> +++ b/xen/arch/x86/hvm/vmx/vmx.c
> @@ -2990,7 +2990,7 @@ static const struct lbr_info
> *last_branch_msr_get(void)
>          /* Goldmont Plus */
>          case 0x7a:
>          /* Ice Lake */
> -        case 0x7d: case 0x7e:
> +        case 0x6a: case 0x6c: case 0x7d: case 0x7e:
>          /* Tiger Lake */
>          case 0x8c: case 0x8d:
>          /* Tremont */
> --
> 2.7.4



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 01:10:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 01:10:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116956.222852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laTHz-0006H8-Kb; Sun, 25 Apr 2021 01:10:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116956.222852; Sun, 25 Apr 2021 01:10: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 1laTHz-0006H0-Gd; Sun, 25 Apr 2021 01:10:23 +0000
Received: by outflank-mailman (input) for mailman id 116956;
 Sun, 25 Apr 2021 01:10:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LSnA=JW=intel.com=kevin.tian@srs-us1.protection.inumbo.net>)
 id 1laTHx-0006Go-R7
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 01:10:21 +0000
Received: from mga01.intel.com (unknown [192.55.52.88])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id aaaf6924-c5b4-424b-a73e-4e581f2df216;
 Sun, 25 Apr 2021 01:10:20 +0000 (UTC)
Received: from orsmga004.jf.intel.com ([10.7.209.38])
 by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 24 Apr 2021 18:10:19 -0700
Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15])
 by orsmga004.jf.intel.com with ESMTP; 24 Apr 2021 18:10:18 -0700
Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by
 ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Sat, 24 Apr 2021 18:10:18 -0700
Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by
 ORSMSX607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Sat, 24 Apr 2021 18:10:17 -0700
Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by
 orsmsx611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2
 via Frontend Transport; Sat, 24 Apr 2021 18:10:17 -0700
Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.168)
 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.2106.2; Sat, 24 Apr 2021 18:10:17 -0700
Received: from MWHPR11MB1886.namprd11.prod.outlook.com (2603:10b6:300:110::9)
 by MWHPR11MB1840.namprd11.prod.outlook.com (2603:10b6:300:112::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.25; Sun, 25 Apr
 2021 01:10:16 +0000
Received: from MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29]) by MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29%9]) with mapi id 15.20.4065.025; Sun, 25 Apr 2021
 01:10: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: aaaf6924-c5b4-424b-a73e-4e581f2df216
IronPort-SDR: ioOIO+BTcrUQF7jhCxbkHlfr1CAsgu3J+fPHAefhecyKKGd2BnhgK0vXECj7X5zA6lAxC59qS1
 aC9VWXz01LcA==
X-IronPort-AV: E=McAfee;i="6200,9189,9964"; a="216896652"
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="216896652"
IronPort-SDR: VBeTIbqsZz23ETQh6XAnM6ZHWdqIDYWawRNXR9Nqx8PZeToI3mKP+RFyaD5tm2M9xjuY3usKpX
 B9kZwiKAVWnA==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="535869252"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U/9kHF+OPuYtvDLoDU93Mx/Ytby3pWbYH9x/zNGoTi8kU1BJpIVd2eE+ye14eirb7tE0eUu3yFkG4wPyWyEnLM5d93EYtdM5VCLmX3B7+xN3lmS8+isZjyE20AV9JQFjmCk6dmoXSMIjPPMW/tgd7sVCLuZPkNc3QvYcvdKJSD90kh+QYrpE0i7hWd3BRus4V4KaBXEMPbEkg8dng4pydEagiMwkiTypghL2N0DV5k154CRxM/stqa4UrDMPw+FvJyR3F0n+1T+mnG/nTDEBGWVpYVIoFSyQyJnSmbMZsLZRzeAjvyf5hryjZxgNzGHnqRRj4KgJjDoeqXBgrBM3nA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4Pz75R9i1uLcgRh7sOihE+t3Fk3xYyqxHGE8sI8n/Rg=;
 b=gMuC69AvbUjmSffagVJW4rQNDUutIuzVjbbvJQwGCD6DpX1Eh4Ww+VDp3y+PHMsj1hclTgET1zhOR0+WguG7yiEmWf++D3aKctb5rB+WHd0SfK/LH6lpaSLH0cqZGCTMXdTHPxKh+oRTlYm6CmYFZEoGkxDpRdgYKsXOmjSYEZbpdUNmaGq1ZWJYv4izyRwi4I4Jyx36BCnfjsCJ+kQVwKOx4OlxtrNEQp3Gv/Nop1KZKyWmR0UBCxFpOM2bRVPMQJBLvZ+BoiyiUB+/BFEFob0ZseuX5X/cPeqeWjHDFU0TCZqTEa6wWv4Jh0KEZJK95BnloHClQRX0rEapAggnyg==
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
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com;
 s=selector2-intel-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4Pz75R9i1uLcgRh7sOihE+t3Fk3xYyqxHGE8sI8n/Rg=;
 b=jT3AE4CLju2VHlx5kZLs42YI0hFRTIsSs8Ic+PIslu7lh4h7N0y6Fkz8shpbQuHo9GIjP6WvvZ8txq13MwSOD5lb1QacXRnucjfE63kt2l+5hDgK0OlKF8LKNfli1/hugVLVsXaPrL59qPLkvomhb8O22aZqKeGSWyZWeitUCX8=
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Igor Druzhinin <igor.druzhinin@citrix.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "Nakajima, Jun" <jun.nakajima@intel.com>, "jbeulich@suse.com"
	<jbeulich@suse.com>, "Cooper, Andrew" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "wl@xen.org" <wl@xen.org>
Subject: RE: [PATCH] x86/vPMU: Extend vPMU support to version 5
Thread-Topic: [PATCH] x86/vPMU: Extend vPMU support to version 5
Thread-Index: AQHXMIoR1jV8zFesQ0OCx12H13L7jKrEfksw
Date: Sun, 25 Apr 2021 01:10:15 +0000
Message-ID: <MWHPR11MB18862FC0F7D25E072113CF048C439@MWHPR11MB1886.namprd11.prod.outlook.com>
References: <1618334701-8263-1-git-send-email-igor.druzhinin@citrix.com>
In-Reply-To: <1618334701-8263-1-git-send-email-igor.druzhinin@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-version: 11.5.1.3
dlp-product: dlpe-windows
dlp-reaction: no-action
authentication-results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=intel.com;
x-originating-ip: [101.88.226.48]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 251bdd90-4def-4889-96dd-08d90786e2c2
x-ms-traffictypediagnostic: MWHPR11MB1840:
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MWHPR11MB18404722EF7F04D8D02DD8488C439@MWHPR11MB1840.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:268;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: hw+/8q9Vloy2R//Hde07RbC7PgLDUNWFuwz256Cl9bkzW6eNOPm/Ld4pDfP7finc9QRqSyXIRPl0yA2PPzr2/5yXgYE+CD/YeqSKpPs7CmpDVETbvQIobemPFCRaYzaFenz6yaTEheK2vWbc01zxSXMC426PLbSiyHXQ7MOUW1/cz5ArTYhdSnB8bW5G+Lha6BlRqVvx+YuDQL1LyI2oggC3UTVD5G9wKbjhO/bnJPIYGJ/FRsdLndCW3wmCgQHgWaTaaDDx8OuUSDM5VQipwDx+tUJyvWi6aqSCfoDOHf0jM7K/Ozp3BBvDXNAiEB0q7LqMxRsxP+KSJ+Wos22d0ulBAJKjBO5+ChgZ4SG3te2FqFRjfYs03Pay5Q2a7dpZE/nmUYIDvu0MASGvRBYETSnz6ck4ov+l6qA17hExdXd6EEOmCxq1YF0WY3jitcVsNcX/8tl+l8K8Kioe3dxepGaFbG8bS0j0GewLeVQwBMQUph29QlbEF3+rVwrEEv23kPhWhjmLryWmvCT1jXaB6rdGd+YqY9wGZww5982VUR7NSfxwChzJY8TLYtmluxbWZbHLk75R6JftFukJh2utljCuPQBxQm1e0X+aq/elHaA=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1886.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(346002)(376002)(396003)(136003)(366004)(39860400002)(66446008)(64756008)(66946007)(86362001)(110136005)(33656002)(66476007)(66556008)(8676002)(71200400001)(5660300002)(38100700002)(4326008)(54906003)(6506007)(76116006)(26005)(55016002)(7696005)(316002)(2906002)(83380400001)(122000001)(8936002)(478600001)(52536014)(9686003)(186003);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata: =?us-ascii?Q?peI96gYsF1rDvOAu/1uEFKne4skaXU9knsp4LIysTVByBG6MuOaos1O5uTDC?=
 =?us-ascii?Q?eH7yiz2ij4VCF1EpILlcWJ1pxiO30Ewvk7Tas6V5byc1heQues2mQc+iaDK8?=
 =?us-ascii?Q?gJSYzc7TN0aBZq7b+TDJwdnkjoPRE6/oaJuSPxWRDSQsbNfcw0DM+572SIqZ?=
 =?us-ascii?Q?WRIiUlD7FdUs76wTTkQlV7f551Rm37Vt3Ntp8HUJFZ33KE2tjyYQYHJLGIph?=
 =?us-ascii?Q?u9Vt4pU9g8EWybUYWqS40WwHenUwAoTuwqMKTURLnTBeOicqqN02LMAy+9Y0?=
 =?us-ascii?Q?q1S/304HJ21fJYITce5IiortKqe91CvOpfNJi+Rdz2H9P8VPqOFglERVsKKs?=
 =?us-ascii?Q?qcQRfxqeSV4D57hji7bHgzv25C9bQk6HIdalLfXkQkRrnoYnIIIPU7r2pEgg?=
 =?us-ascii?Q?eVi/2vWPexw9ewekPELyQ8XzWwMOs64eFFlOMF0CXdIN5u42Z66vncaochiZ?=
 =?us-ascii?Q?C3JI/DYkV7xhpp5lKlKROq51fljIeazTExKTNss9enaoZJNbSoZqntQJGeJ9?=
 =?us-ascii?Q?ZvKmGr+nFbMqTGKjl4kJ3J8nZW7FT0bIo8NwrzmMUrnuweSefJpW2V2fqzE4?=
 =?us-ascii?Q?8JHguj9qGzd8/jLTPG3Txj713bQ5iLsEswP0jJ2QjircaEZyLLJdgkW12k4o?=
 =?us-ascii?Q?344zvfx1F5lde0TvlrDoabWDH7siN3O63+h5Ljo+nZsBAWEUo+PRyyPTTo3t?=
 =?us-ascii?Q?7gRHHEu9X9ofJoD+KG/IoymrWRwrBMIxM8FkDqMgDIhGxY0v49mFaAG+455P?=
 =?us-ascii?Q?uudsayB9AbtRIOzAP93kwb/HYFkwN2E39r3XPR1tIB6L+W4ms3uk3z3lE4kd?=
 =?us-ascii?Q?ntKyL65zTMvKTaOljx7JY5jJ/vSyVfd1f2DqtRpIeQ4qktVafl7KodExMO4h?=
 =?us-ascii?Q?CITfW2i/RayoA1oE5lw6MZ1gb+4sqV4LfAFttz7R7eOTPzF2Ye6IpdT25/yS?=
 =?us-ascii?Q?gGyVJbjOX9DIzcafQohw9gircfM40K1rXVj74vU0p2+bje2kaYq1OxgtxA8c?=
 =?us-ascii?Q?dVb7rCSB+vWzlRfqz2NofRC6D7Y6iZSpW/bqGwGXcQGBqmVVrUvC0i2pHRM8?=
 =?us-ascii?Q?DR8DIUu1nRdm8pOu65IVC5HjwDFQxCUramv1N9JVkSZh26PVybnzBAbfksAP?=
 =?us-ascii?Q?tVLkvTefg1Ae85pD4Wp0u7f1HvPfu29LMmgS8qNTiz3z/8Rrkd00y7pbez+e?=
 =?us-ascii?Q?A3D1yTNBlZx0OaKMAyYa3WIGEhAc9Aa21nn/7vmxn9B6uZQx7BC09ozn25KF?=
 =?us-ascii?Q?C4NrYwaAoCel9MS1pysHigVt2ZKEZIpWDdZNDSsvDJ9f+3hraQWbkPb41Wv0?=
 =?us-ascii?Q?0BnSlRhoHjfhIn2L8f1qtxiY?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1886.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 251bdd90-4def-4889-96dd-08d90786e2c2
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2021 01:10:16.0231
 (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: b9JSrBmLx/uZa+IkMMHqDs0ha/4Tpv0QzO2hwVexcMMuJsZhoyhgIZUiQ4sjMv5ffwq0kCpyKivyU4X7muLpww==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1840
X-OriginatorOrg: intel.com

> From: Igor Druzhinin <igor.druzhinin@citrix.com>
> Sent: Wednesday, April 14, 2021 1:25 AM
>=20
> Version 5 is backwards compatible with version 3. This allows to enable
> vPMU on Ice Lake CPUs.
>=20
> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>

Reviewed-by: Kevin Tian <kevin.tian@intel.com>

> ---
>  xen/arch/x86/cpu/vpmu_intel.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>=20
> diff --git a/xen/arch/x86/cpu/vpmu_intel.c
> b/xen/arch/x86/cpu/vpmu_intel.c
> index 6e97ce7..0dfc256 100644
> --- a/xen/arch/x86/cpu/vpmu_intel.c
> +++ b/xen/arch/x86/cpu/vpmu_intel.c
> @@ -839,7 +839,7 @@ int vmx_vpmu_initialise(struct vcpu *v)
>          return 0;
>=20
>      if ( v->domain->arch.cpuid->basic.pmu_version <=3D 1 ||
> -         v->domain->arch.cpuid->basic.pmu_version >=3D 5 )
> +         v->domain->arch.cpuid->basic.pmu_version >=3D 6 )
>          return -EINVAL;
>=20
>      if ( (arch_pmc_cnt + fixed_pmc_cnt) =3D=3D 0 )
> @@ -909,8 +909,9 @@ int __init core2_vpmu_init(void)
>      switch ( version )
>      {
>      case 4:
> -        printk(XENLOG_INFO "VPMU: PMU version 4 is not fully supported. =
"
> -               "Emulating version 3\n");
> +    case 5:
> +        printk(XENLOG_INFO "VPMU: PMU version %u is not fully supported.=
 "
> +               "Emulating version 3\n", version);
>          /* FALLTHROUGH */
>=20
>      case 2:
> --
> 2.7.4



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 01:20:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 01:20:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116966.222865 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laTRb-0007OX-Lh; Sun, 25 Apr 2021 01:20:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116966.222865; Sun, 25 Apr 2021 01:20: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 1laTRb-0007OQ-IB; Sun, 25 Apr 2021 01:20:19 +0000
Received: by outflank-mailman (input) for mailman id 116966;
 Sun, 25 Apr 2021 01:20:17 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LSnA=JW=intel.com=kevin.tian@srs-us1.protection.inumbo.net>)
 id 1laTRZ-0007OL-Go
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 01:20:17 +0000
Received: from mga03.intel.com (unknown [134.134.136.65])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b2e02fd6-c2df-46ae-96b0-ccfa22d10ee7;
 Sun, 25 Apr 2021 01:20:14 +0000 (UTC)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 24 Apr 2021 18:20:13 -0700
Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83])
 by orsmga001.jf.intel.com with ESMTP; 24 Apr 2021 18:20:13 -0700
Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) by
 fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Sat, 24 Apr 2021 18:20:12 -0700
Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) by
 fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Sat, 24 Apr 2021 18:20:12 -0700
Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by
 fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2
 via Frontend Transport; Sat, 24 Apr 2021 18:20:12 -0700
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.169)
 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.2106.2; Sat, 24 Apr 2021 18:20:12 -0700
Received: from MWHPR11MB1886.namprd11.prod.outlook.com (2603:10b6:300:110::9)
 by CO1PR11MB4980.namprd11.prod.outlook.com (2603:10b6:303:98::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20; Sun, 25 Apr
 2021 01:20:07 +0000
Received: from MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29]) by MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29%9]) with mapi id 15.20.4065.025; Sun, 25 Apr 2021
 01:20: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: b2e02fd6-c2df-46ae-96b0-ccfa22d10ee7
IronPort-SDR: HJDrioq7Pv6+Zh0u7uOwbR6NuIupRut97zA5a+pjw5NnPPm+d8dToX8uCbg2Vre6JQamyY7KQY
 UELNMXqm8xDg==
X-IronPort-AV: E=McAfee;i="6200,9189,9964"; a="196263943"
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="196263943"
IronPort-SDR: cGiTNimvNb28O32//5Xy4w4nLwM7mLWkSJRj0D4uD9QZV2zVV0pjIBZvwTsDLL7Mkwa9ia6R58
 tfP/WWLKAzyg==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="464713636"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bk9feyXpqTudJp1Xa9iq64p32OmVQgbBxOdzI/hMq6ugkfi8csQO4DE1FD2LJB45lm5Ui5wbGeuSS35/ocj1QESiZLtQAzD1qrM1JOfwQzFYP7umUVcDUn9VUHaDXZG56rtdwZktLe+r6n4HhwvxagwW+P6EZUWRRfNKvbXyHfAaks35ZPk24QRYOgjot3iANVK9IK66DRlhJhXsR2nlfto3o7mf3eP0gaWoGcpSAzcVzUTol5AeaSX5hVTZPV/zRJaOy+L3RKYAsEu5GKhuG2kjYvpSWJLkLbzqYkiv/WLRc+skrauHwad+KQKWVJ9a+78j2X1u6gtZMjtx08pCCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=K/WSW9N0WNA5Udo4XDhz5W4UR69LQl95DwgYxedeyts=;
 b=D1rF4muYGNMd6eegBRaux6OXzjiM646+P+HYVAKk20s+6n0HVSKMeuR5WxYM2nKjSq5pyMruBZVEkAZd0yHh4ii6kpMKblNwlFnre3FV2Z4iiIMgOTeL4wlUYPZYHHxsyePEGbXs1ydZB06r326/rH35hg18SM4UheIGYb7Lnaw6r1ak4CU5JjvZiRZgGCiUKp3J3cJeXHrGgicBnssg67Me1CepamHlhziDUpyuiuYZzBicjSJJOKxOWxtKAhj5gIFyO+iaIGGWLIdji62Cv/s6LLfKgndivstFXO1N4tZgD+YkFelH3FFYyu4TyAAqbXMY3wh+pGJczUpy9sczKw==
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
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com;
 s=selector2-intel-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=K/WSW9N0WNA5Udo4XDhz5W4UR69LQl95DwgYxedeyts=;
 b=W8d1p5Tl1MHILZsyeepkfbnOEeC7aXSnr/xqM5x3QQLML48XWvNJaxuIMmXk/vMuFXuVSZQFFqhj4BVArB5NbrBismBJIbQkzDU92bB+A7wT4YQSx09E+wBv8+z0d0nfK3Vy5zwnG2AVoVTbArsQ7lGOtzRAGtzRaO8/uOB8Jwg=
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Jan Beulich <jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, "Gao, Chao" <chao.gao@intel.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"Cooper, Andrew" <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Julien Grall
	<julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>
Subject: RE: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
Thread-Topic: [PATCH v2] VT-d: Don't assume register-based invalidation is
 always supported
Thread-Index: AQHXNde1q1zbhr7NX0K4N/BqLKSfc6q9gkqAgAAIjICAAAq7gIABHqeAgAXCM7A=
Date: Sun, 25 Apr 2021 01:20:07 +0000
Message-ID: <MWHPR11MB1886B6DDB30B81F106A9A1388C439@MWHPR11MB1886.namprd11.prod.outlook.com>
References: <20200401200606.48752-1-chao.gao@intel.com>
 <YH7uX7RqqIS4zdBt@Air-de-Roger>
 <3afbdba8-b25c-985c-6c5f-20077cb37d3f@suse.com>
 <YH7+i/JVnmZGTHOF@Air-de-Roger>
 <9276b757-a340-b0f3-3427-13b7bc5dcb9e@suse.com>
In-Reply-To: <9276b757-a340-b0f3-3427-13b7bc5dcb9e@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-version: 11.5.1.3
dlp-product: dlpe-windows
dlp-reaction: no-action
authentication-results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=intel.com;
x-originating-ip: [101.88.226.48]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 5edef7de-a399-4fbd-ff20-08d907884316
x-ms-traffictypediagnostic: CO1PR11MB4980:
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <CO1PR11MB4980A34A19B3068974DDC81A8C439@CO1PR11MB4980.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:2000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 0H7u+Er5ZjEeQYCIaZdjdD1TsXSx/HpC9hw+0u4mmJuTxs3GHmJi62E+xQosFnAMfFkoyk6AUa/goNrZ967POUWuVy+90n8w0kx3QUHlr5detCzlYLJJaO5hhmHZNWd+lMtv5L8CWM85N/YGoBKao9kSi3eHQ+VsHbBCIxlLN5KpUiQ04CF9ebr3XSMwlEkqP6hK8QM+/AMY1vKlNSD0WSfNeNECb4qz9ApyYV9jfHGWtWTzhXHQHTdgABoj0rUQd3+lM8ZQBdDlOMTJ+iZ/gtSdODJK5HBHcUZEguIWW+jZ7Pt9jG7kBL7eL6jckHN19nwCu9epNX503yU/pDS4G9YINkXTs5QtY0qQGQX92quxAqaCCIEDk0aoWI8MGfJpZIl5YnTFOMgOMa6EMfWKGU+acY0wPBwZ7ZGvBieQOiRp9stwIvlL8ug6exqBac/dPSm7ZgeHNQOx2hUf28e25Omin6YYR1DUSjHEqoqfqDMdWJDy1/16ErwV1+Q3IsN6EtGG1D8D8mcAWM1osnhG8hkppCvSXJAFyfyLGWsN8EQW05W6Gmkw0p0FkuZ4DDH6N++gLzrVOskEr83dgMSSuZj+j6fS05zOB7IOdFQh7I4=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1886.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(39860400002)(396003)(346002)(376002)(136003)(366004)(6506007)(53546011)(7696005)(2906002)(83380400001)(86362001)(71200400001)(66556008)(66476007)(64756008)(66946007)(76116006)(66446008)(186003)(5660300002)(52536014)(6636002)(8676002)(38100700002)(8936002)(478600001)(110136005)(4326008)(54906003)(9686003)(55016002)(316002)(122000001)(26005)(33656002);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata: 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
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: MWHPR11MB1886.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5edef7de-a399-4fbd-ff20-08d907884316
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2021 01:20:07.1323
 (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: TBCLn/IFUS+71msmxkn9AeTk4EmiIRSJE/kg5H8nH9edFdpTRiZK3qyhIz52G847tG+QASEOuzRVHQI/ZObWAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB4980
X-OriginatorOrg: intel.com

PiBGcm9tOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQo+IFNlbnQ6IFdlZG5lc2Rh
eSwgQXByaWwgMjEsIDIwMjEgNToyMyBQTQ0KPiANCj4gT24gMjAuMDQuMjAyMSAxODoxNywgUm9n
ZXIgUGF1IE1vbm7DqSB3cm90ZToNCj4gPiBPbiBUdWUsIEFwciAyMCwgMjAyMSBhdCAwNTozODo1
MVBNICswMjAwLCBKYW4gQmV1bGljaCB3cm90ZToNCj4gPj4gT24gMjAuMDQuMjAyMSAxNzowOCwg
Um9nZXIgUGF1IE1vbm7DqSB3cm90ZToNCj4gPj4+IE9uIFRodSwgQXByIDAyLCAyMDIwIGF0IDA0
OjA2OjA2QU0gKzA4MDAsIENoYW8gR2FvIHdyb3RlOg0KPiA+Pj4+IC0tLSBhL3hlbi9kcml2ZXJz
L3Bhc3N0aHJvdWdoL3Z0ZC9xaW52YWwuYw0KPiA+Pj4+ICsrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0
aHJvdWdoL3Z0ZC9xaW52YWwuYw0KPiA+Pj4+IEBAIC00NDIsNiArNDQyLDIzIEBAIGludCBlbmFi
bGVfcWludmFsKHN0cnVjdCB2dGRfaW9tbXUgKmlvbW11KQ0KPiA+Pj4+ICAgICAgcmV0dXJuIDA7
DQo+ID4+Pj4gIH0NCj4gPj4+Pg0KPiA+Pj4+ICtzdGF0aWMgaW50IHZ0ZF9mbHVzaF9jb250ZXh0
X25vb3Aoc3RydWN0IHZ0ZF9pb21tdSAqaW9tbXUsIHVpbnQxNl90DQo+IGRpZCwNCj4gPj4+PiAr
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IHNvdXJjZV9pZCwgdWlu
dDhfdCBmdW5jdGlvbl9tYXNrLA0KPiA+Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdWludDY0X3QgdHlwZSwgYm9vbCBmbHVzaF9ub25fcHJlc2VudF9lbnRyeSkNCj4gPj4+
PiArew0KPiA+Pj4+ICsgICAgZHByaW50ayhYRU5MT0dfRVJSIFZURFBSRUZJWCwgIklPTU1VOiBD
YW5ub3QgZmx1c2gNCj4gQ09OVEVYVC5cbiIpOw0KPiA+Pj4+ICsgICAgcmV0dXJuIC1FSU87DQo+
ID4+Pj4gK30NCj4gPj4+PiArDQo+ID4+Pj4gK3N0YXRpYyBpbnQgdnRkX2ZsdXNoX2lvdGxiX25v
b3Aoc3RydWN0IHZ0ZF9pb21tdSAqaW9tbXUsIHVpbnQxNl90DQo+IGRpZCwNCj4gPj4+PiArICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50NjRfdCBhZGRyLCB1bnNpZ25lZCBpbnQg
c2l6ZV9vcmRlciwNCj4gPj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50
NjRfdCB0eXBlLCBib29sIGZsdXNoX25vbl9wcmVzZW50X2VudHJ5LA0KPiA+Pj4+ICsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgZmx1c2hfZGV2X2lvdGxiKQ0KPiA+Pj4+ICt7
DQo+ID4+Pj4gKyAgICBkcHJpbnRrKFhFTkxPR19FUlIgVlREUFJFRklYLCAiSU9NTVU6IENhbm5v
dCBmbHVzaCBJT1RMQi5cbiIpOw0KPiA+Pj4+ICsgICAgcmV0dXJuIC1FSU87DQo+ID4+Pj4gK30N
Cj4gPj4+DQo+ID4+PiBJIHRoaW5rIEkgd291bGQgYWRkIGFuIEFTU0VSVF9VTlJFQUNIQUJMRSgp
IHRvIGJvdGggbm9vcCBoYW5kbGVycw0KPiA+Pj4gYWJvdmUsIGFzIEkgd291bGQgZXhwZWN0IHRy
eWluZyB0byB1c2UgdGhlbSB3aXRob3V0IHRoZSBwcm9wZXIgbW9kZQ0KPiA+Pj4gYmVpbmcgY29u
ZmlndXJlZCB3b3VsZCBwb2ludCB0byBhbiBlcnJvciBlbHNld2hlcmU/DQo+ID4+DQo+ID4+IElm
IHN1Y2ggYW4gYXNzZXJ0aW9uIHRyaWdnZXJlZCBlLmcuIGR1cmluZyBTMyBzdXNwZW5kL3Jlc3Vt
ZSwgaXQgbWF5DQo+ID4+IGxlYWQgdG8gdGhlIGJveCBzaW1wbHkgbm90IGRvaW5nIGFueXRoaW5n
IHVzZWZ1bCwgd2l0aG91dCB0aGVyZSBiZWluZw0KPiA+PiBhbnkgd2F5IHRvIGtub3cgd2hhdCB3
ZW50IHdyb25nLiBJZiBpbnN0ZWFkIHRoZSBzeXN0ZW0gYXQgbGVhc3QNCj4gPj4gbWFuYWdlZCB0
byByZXN1bWUsIHRoZSBsb2cgbWVzc2FnZSBjb3VsZCBiZSBvYnNlcnZlZC4NCj4gPg0KPiA+IE9o
LCBPSyB0aGVuLiBJJ20gc2ltcGx5IHdvcnJpZWQgdGhhdCBwZW9wbGUgbWlnaHQgaWdub3JlIHN1
Y2ggb25lIGxpbmUNCj4gPiBtZXNzYWdlcywgbWF5YmUgYWRkIGEgV0FSTj8NCj4gDQo+IEhtbSwg
eWVzLCBwZXJoYXBzIC0gd291bGQgYWxsb3cgc2VlaW5nIHJpZ2h0IGF3YXkgd2hlcmUgdGhlIGNh
bGwNCj4gY2FtZSBmcm9tLiBDaGFvLCBJJ2QgYWdhaW4gYmUgZmluZSB0byBmbGlwIHRoZSBkcHJp
bnRrKCktcyB0bw0KPiBXQVJOKCktcyB3aGlsZSBjb21taXR0aW5nLiBCdXQgb2YgY291cnNlIG9u
bHkgcHJvdmlkZWQgeW91IGFuZA0KPiBLZXZpbiAoYXMgdGhlIG1haW50YWluZXIpIGFncmVlLg0K
PiANCg0KTG9va3MgZ29vZC4NCg0KUmV2aWV3ZWQtYnk6IEtldmluIFRpYW4gPGtldmluLnRpYW5A
aW50ZWwuY29tPg0K


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 01:27:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 01:27:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116971.222877 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laTYc-0007kR-ES; Sun, 25 Apr 2021 01:27:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116971.222877; Sun, 25 Apr 2021 01: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 1laTYc-0007kK-BU; Sun, 25 Apr 2021 01:27:34 +0000
Received: by outflank-mailman (input) for mailman id 116971;
 Sun, 25 Apr 2021 01:27:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LSnA=JW=intel.com=kevin.tian@srs-us1.protection.inumbo.net>)
 id 1laTYb-0007kF-G8
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 01:27:33 +0000
Received: from mga05.intel.com (unknown [192.55.52.43])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a2a9d8fb-819f-4bcb-a79e-9ee1290a7455;
 Sun, 25 Apr 2021 01:27:29 +0000 (UTC)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 24 Apr 2021 18:27:29 -0700
Received: from fmsmsx605.amr.corp.intel.com ([10.18.126.85])
 by fmsmga008.fm.intel.com with ESMTP; 24 Apr 2021 18:27:28 -0700
Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by
 fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2106.2; Sat, 24 Apr 2021 18:27:28 -0700
Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) 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.2106.2; Sat, 24 Apr 2021 18:27:28 -0700
Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) 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.2106.2
 via Frontend Transport; Sat, 24 Apr 2021 18:27:28 -0700
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.174)
 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.2106.2; Sat, 24 Apr 2021 18:27:27 -0700
Received: from MWHPR11MB1886.namprd11.prod.outlook.com (2603:10b6:300:110::9)
 by MWHPR11MB0077.namprd11.prod.outlook.com (2603:10b6:301:61::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.18; Sun, 25 Apr
 2021 01:27:22 +0000
Received: from MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29]) by MWHPR11MB1886.namprd11.prod.outlook.com
 ([fe80::75b0:a8e9:60cb:7a29%9]) with mapi id 15.20.4065.025; Sun, 25 Apr 2021
 01:27: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: a2a9d8fb-819f-4bcb-a79e-9ee1290a7455
IronPort-SDR: AyV7WHMzl4B4xs65Ms3DH+tndvcSJlWKDcUeOY8O/XRf2vIOyZYkEOhxjjeAgI0ZpUoNhhoUp0
 WPrWAl0QX8tA==
X-IronPort-AV: E=McAfee;i="6200,9189,9964"; a="281533941"
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="281533941"
IronPort-SDR: rLYZTNHPgRFSmv+q4kyvHOBj2xmuQqUNAe1vavrfChDr+otHeH5S9amcT1fu5tPKPs6dFl9DFB
 9xbHchI4iOxg==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.82,249,1613462400"; 
   d="scan'208";a="422186997"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CWKcDSBNJ6CT9lLofGqGbLD6pL6S2icMdRLvCcj2+vtxIyY5be/LvO/CmzWxqA4jZ3qpxmfhr1WV/LN8ZCWF1CUX+dUnteLloiqD+1gBhy/Ux2MZ77yubh8a93Izk19CJXnPT4QMcEJGr5OvqR/PddJOqpZAniFvL/+3lhy+//OaGM6N48HcrMyj+qNaVxpsGi7hbjXG3J3FtinfdnrW9qo5oy11N+xFku7xzo1bv1xd0tFLoF7J8uD06RkUkS1u8BPKPswQ58ud/cmA0wIt9wEkIpGi2Tsad6B2CM6LE0V+66LeIbga1ILjkQeUP0Bo+S5gVuIS7a7JVbQs85yF8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4djG4ZYVkbjWQmj7Qipui2A6TV+hxJMm3NiaEqmbCUk=;
 b=OlFMnu/mXwj84lDZVz04XjQkV7qxxP78Uxg3BD+82wDwzv3m0gS5/AFFrIx1sZeKg7QNsn1pA2ZOlkNaJFAZJxJovymG7go28+VkzipBvfulXgcz2QPAOhp3rahyaVo0y4LZv6py6SL0vRXWiYdFuvvJ121Ugrx9s52kHXyKnNBg+NlrZCv4NMxh0EZTCnWbyItXahyT5bwk3dytA1lxcoFer7CfUAhGxflRFpS+ilKJXS9TDFhX7XnzEneXXiJw/XdjoHlK1QMcx8dA8KwinOQ3kSGN2oqi3IQ9ARrMgNkZTtLUoh+fIrnoTrEpiEwgUZ20/S0Zhn1rhi6j6J355w==
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
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com;
 s=selector2-intel-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4djG4ZYVkbjWQmj7Qipui2A6TV+hxJMm3NiaEqmbCUk=;
 b=MDLhTmC3tJFAF0WFDrHiKySm81e6cAKnR34rhmAkDBWtY3E2u/iomZCUzLfKknVX0pfsQHhk2i4mkF5U8WXfW9Crrh/7agdRQvoQmwK2Nbk294uaC+3l2e5WbY/NyuzM4M4MeHSgt/H/P+qqAlgpGVVDg9xyOrGOp15+Fddz2WY=
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: "Cooper, Andrew" <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, "Nakajima, Jun" <jun.nakajima@intel.com>, "Tim
 Deegan" <tim@xen.org>
Subject: RE: [PATCH v4 1/3] VMX: use a single, global APIC access page
Thread-Topic: [PATCH v4 1/3] VMX: use a single, global APIC access page
Thread-Index: AQHXOC7W44SL9M0hTky4ZrgJHhlM5arEc7og
Date: Sun, 25 Apr 2021 01:27:22 +0000
Message-ID: <MWHPR11MB18863486197C197C576A8E9B8C439@MWHPR11MB1886.namprd11.prod.outlook.com>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
 <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
In-Reply-To: <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-version: 11.5.1.3
dlp-product: dlpe-windows
dlp-reaction: no-action
authentication-results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=intel.com;
x-originating-ip: [101.88.226.48]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 39fbd604-c31d-4a0d-7ece-08d9078946a2
x-ms-traffictypediagnostic: MWHPR11MB0077:
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MWHPR11MB00774D434B6F7FC2AB2DBC688C439@MWHPR11MB0077.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: Fy5MPb6NKRKZuZNe+Jcj4UHzLOxnZZVjPGxqvBK5DfAbX+L1Q3d55ECVfKorwmXNXcKdZXZrErK/V+TEbNKf6+bZalEJVjUJbC7M+QVJVc7QG30r5UjQQHXrEIWMh/Pg1/fhEv/UhhHDs1eTb5QHMYFmy7CFpdX1P4E+QjjGItZDI8bdozUn1RLHC4G9LpxrZQBJ0I4ULLEPm8nEhs4mVxZqaazokREo7sODBfgn3NDNPEVx1uvoUg4fu652TwFdAZmda8c1RcRHM9JUHtwjl08e/tLtNV7yGenBnBuTknaXBVEEQyh5R7O4O/dSai15o/EpgAB20w4O/GDk0vKAj6KqGos5Gzm+2zgs4fip97ZG8/N5oFCNEKw0KJA+QFWXC04TCfaQ9VrZM5XvtLFIEjFQtrx4Ln/+4Xvz5QzntjsYsPCk6cSVpvUCfLLsZDnM/etMhkfK7MInyiyX6CHj5zIAQLBp7g0UQ/E05VsFc6+G402XlF62Riv6DMgA8cvZe8p1Ar4crfaN+KnAXR0Ed2JSJcQAGbGIKduMeLUfXsQcpQB0vZ7tmXw/Nf+SxAhauQiYY2FS6hWmKqhl+3KKUINomSQqERImftAp61sR2R1LYkpX9ijqzHLO59LpvDFjE3Aw00K/a3RgQaeeHp1GdCm44NKiCW7pSvhxOCymNHs=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1886.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(346002)(136003)(39860400002)(396003)(376002)(478600001)(6506007)(8936002)(5660300002)(66476007)(66446008)(26005)(66946007)(122000001)(7696005)(2906002)(33656002)(9686003)(71200400001)(86362001)(4326008)(8676002)(64756008)(54906003)(83380400001)(66556008)(186003)(38100700002)(110136005)(76116006)(52536014)(55016002)(316002)(357404004);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata: 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
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: MWHPR11MB1886.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 39fbd604-c31d-4a0d-7ece-08d9078946a2
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2021 01:27:22.5774
 (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: yCXUpyLkg+Nn5XaiUgAXmWIO7KKbV5c/po6jhqcb9Gc7OmYlsqDiFhrt2RPtfymwEc6yHK7Mf0YCiMboxkfJuQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB0077
X-OriginatorOrg: intel.com

PiBGcm9tOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQo+IFNlbnQ6IEZyaWRheSwg
QXByaWwgMjMsIDIwMjEgNjo1MyBQTQ0KPiANCj4gVGhlIGFkZHJlc3Mgb2YgdGhpcyBwYWdlIGlz
IHVzZWQgYnkgdGhlIENQVSBvbmx5IHRvIHJlY29nbml6ZSB3aGVuIHRvDQo+IGFjY2VzcyB0aGUg
dmlydHVhbCBBUElDIHBhZ2UgaW5zdGVhZC4gTm8gYWNjZXNzZXMgd291bGQgZXZlciBnbyB0byB0
aGlzDQo+IHBhZ2UuIEl0IG9ubHkgbmVlZHMgdG8gYmUgcHJlc2VudCBpbiB0aGUgKENQVSkgcGFn
ZSB0YWJsZXMgc28gdGhhdA0KPiBhZGRyZXNzIHRyYW5zbGF0aW9uIHdpbGwgcHJvZHVjZSBpdHMg
YWRkcmVzcyBhcyByZXN1bHQgZm9yIHJlc3BlY3RpdmUNCj4gYWNjZXNzZXMuDQo+IA0KPiBCeSBt
YWtpbmcgdGhpcyBwYWdlIGdsb2JhbCwgd2UgYWxzbyBlbGltaW5hdGUgdGhlIG5lZWQgdG8gcmVm
Y291bnQgaXQsDQo+IG9yIHRvIGFzc2lnbiBpdCB0byBhbnkgZG9tYWluIGluIHRoZSBmaXJzdCBw
bGFjZS4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNv
bT4NCg0KUmV2aWV3ZWQtYnk6IEtldmluIFRpYW4gPGtldmluLnRpYW5AaW50ZWwuY29tPg0KDQo+
IC0tLQ0KPiB2NTogSW5pdCBhcGljX2FjY2Vzc19tZm4gdG8gSU5WQUxJRF9NRk4uIE1vdmUgYXNz
aWdubWVudCBvdXQgb2YgaWYoKQ0KPiAgICAgY29uZGl0aW9uLiBJbnRyb2R1Y2UgcGFnZV9zdXBw
cmVzc19yZWZjb3VudGluZygpIGFuZA0KPiAgICAgcGFnZV9yZWZjb3VudGluZ19zdXBwcmVzc2Vk
KCkuDQo+IHY0OiBTZXQgUEdDX2V4dHJhIG9uIHRoZSBwYWdlLiBNYWtlIHNoYWRvdyBtb2RlIHdv
cmsuDQo+IHYzOiBTcGxpdCBwMm0gaW5zZXJ0aW9uIGNoYW5nZSB0byBhIHNlcGFyYXRlIHBhdGNo
Lg0KPiB2MjogQXZvaWQgaW5zZXJ0aW9uIHdoZW4gIWhhc192bGFwaWMoKS4gU3BsaXQgb2ZmIGNo
YW5nZSB0bw0KPiAgICAgcDJtX2dldF9pb21tdV9mbGFncygpLg0KPiAtLS0NCj4gSSBkaWQgZnVy
dGhlciBjb25zaWRlciBub3QgYWxsb2NhdGluZyBhbnkgcmVhbCBwYWdlIGF0IGFsbCwgYnV0IGp1
c3QNCj4gdXNpbmcgdGhlIGFkZHJlc3Mgb2Ygc29tZSB1bnBvcHVsYXRlZCBzcGFjZSAod2hpY2gg
d291bGQgcmVxdWlyZQ0KPiBhbm5vdW5jaW5nIHRoaXMgcGFnZSBhcyByZXNlcnZlZCB0byBEb20w
LCBzbyBpdCB3b3VsZG4ndCBwdXQgYW55IFBDSQ0KPiBNTUlPIEJBUnMgdGhlcmUpLiBCdXQgSSB0
aG91Z2h0IHRoaXMgd291bGQgYmUgdG9vIGNvbnRyb3ZlcnNpYWwsIGJlY2F1c2UNCj4gb2YgdGhl
IHBvc3NpYmxlIHJpc2tzIGFzc29jaWF0ZWQgd2l0aCB0aGlzLg0KPiANCj4gLS0tIGEveGVuL2Fy
Y2gveDg2L2h2bS92bXgvdm14LmMNCj4gKysrIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMN
Cj4gQEAgLTY2LDggKzY2LDcgQEAgYm9vbGVhbl9wYXJhbSgiZm9yY2UtZXB0Iiwgb3B0X2ZvcmNl
X2VwdA0KPiAgc3RhdGljIHZvaWQgdm14X2N0eHRfc3dpdGNoX2Zyb20oc3RydWN0IHZjcHUgKnYp
Ow0KPiAgc3RhdGljIHZvaWQgdm14X2N0eHRfc3dpdGNoX3RvKHN0cnVjdCB2Y3B1ICp2KTsNCj4g
DQo+IC1zdGF0aWMgaW50ICB2bXhfYWxsb2NfdmxhcGljX21hcHBpbmcoc3RydWN0IGRvbWFpbiAq
ZCk7DQo+IC1zdGF0aWMgdm9pZCB2bXhfZnJlZV92bGFwaWNfbWFwcGluZyhzdHJ1Y3QgZG9tYWlu
ICpkKTsNCj4gK3N0YXRpYyBpbnQgYWxsb2NfdmxhcGljX21hcHBpbmcodm9pZCk7DQo+ICBzdGF0
aWMgdm9pZCB2bXhfaW5zdGFsbF92bGFwaWNfbWFwcGluZyhzdHJ1Y3QgdmNwdSAqdik7DQo+ICBz
dGF0aWMgdm9pZCB2bXhfdXBkYXRlX2d1ZXN0X2NyKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBp
bnQgY3IsDQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBm
bGFncyk7DQo+IEBAIC03OCw2ICs3Nyw4IEBAIHN0YXRpYyBpbnQgdm14X21zcl9yZWFkX2ludGVy
Y2VwdCh1bnNpZ24NCj4gIHN0YXRpYyBpbnQgdm14X21zcl93cml0ZV9pbnRlcmNlcHQodW5zaWdu
ZWQgaW50IG1zciwgdWludDY0X3QgbXNyX2NvbnRlbnQpOw0KPiAgc3RhdGljIHZvaWQgdm14X2lu
dmxwZyhzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyBsaW5lYXIpOw0KPiANCj4gK3N0YXRp
YyBtZm5fdCBfX3JlYWRfbW9zdGx5IGFwaWNfYWNjZXNzX21mbiA9IElOVkFMSURfTUZOX0lOSVRJ
QUxJWkVSOw0KPiArDQo+ICAvKiBWYWx1ZXMgZm9yIGRvbWFpbidzIC0+YXJjaC5odm1fZG9tYWlu
LnBpX29wcy5mbGFncy4gKi8NCj4gICNkZWZpbmUgUElfQ1NXX0ZST00gKDF1IDw8IDApDQo+ICAj
ZGVmaW5lIFBJX0NTV19UTyAgICgxdSA8PCAxKQ0KPiBAQCAtNDAxLDcgKzQwMiw2IEBAIHN0YXRp
YyBpbnQgdm14X2RvbWFpbl9pbml0aWFsaXNlKHN0cnVjdA0KPiAgICAgICAgICAudG8gICA9IHZt
eF9jdHh0X3N3aXRjaF90bywNCj4gICAgICAgICAgLnRhaWwgPSB2bXhfZG9fcmVzdW1lLA0KPiAg
ICAgIH07DQo+IC0gICAgaW50IHJjOw0KPiANCj4gICAgICBkLT5hcmNoLmN0eHRfc3dpdGNoID0g
JmNzdzsNCj4gDQo+IEBAIC00MTEsMjggKzQxMSwyMiBAQCBzdGF0aWMgaW50IHZteF9kb21haW5f
aW5pdGlhbGlzZShzdHJ1Y3QNCj4gICAgICAgKi8NCj4gICAgICBkLT5hcmNoLmh2bS52bXguZXhl
Y19zcCA9IGlzX2hhcmR3YXJlX2RvbWFpbihkKSB8fCBvcHRfZXB0X2V4ZWNfc3A7DQo+IA0KPiAt
ICAgIGlmICggIWhhc192bGFwaWMoZCkgKQ0KPiAtICAgICAgICByZXR1cm4gMDsNCj4gLQ0KPiAt
ICAgIGlmICggKHJjID0gdm14X2FsbG9jX3ZsYXBpY19tYXBwaW5nKGQpKSAhPSAwICkNCj4gLSAg
ICAgICAgcmV0dXJuIHJjOw0KPiAtDQo+ICAgICAgcmV0dXJuIDA7DQo+ICB9DQo+IA0KPiAtc3Rh
dGljIHZvaWQgdm14X2RvbWFpbl9yZWxpbnF1aXNoX3Jlc291cmNlcyhzdHJ1Y3QgZG9tYWluICpk
KQ0KPiArc3RhdGljIHZvaWQgZG9tYWluX2NyZWF0aW9uX2ZpbmlzaGVkKHN0cnVjdCBkb21haW4g
KmQpDQo+ICB7DQo+IC0gICAgaWYgKCAhaGFzX3ZsYXBpYyhkKSApDQo+ICsgICAgZ2ZuX3QgZ2Zu
ID0gZ2FkZHJfdG9fZ2ZuKEFQSUNfREVGQVVMVF9QSFlTX0JBU0UpOw0KPiArICAgIHVpbnQ4X3Qg
aXBhdDsNCj4gKw0KPiArICAgIGlmICggIWhhc192bGFwaWMoZCkgfHwgbWZuX2VxKGFwaWNfYWNj
ZXNzX21mbiwgSU5WQUxJRF9NRk4pICkNCj4gICAgICAgICAgcmV0dXJuOw0KPiANCj4gLSAgICB2
bXhfZnJlZV92bGFwaWNfbWFwcGluZyhkKTsNCj4gLX0NCj4gKyAgICBBU1NFUlQoZXB0ZV9nZXRf
ZW50cnlfZW10KGQsIGdmbl94KGdmbiksIGFwaWNfYWNjZXNzX21mbiwgMCwgJmlwYXQsDQo+ICsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlKSA9PSBNVFJSX1RZUEVfV1JCQUNLKTsN
Cj4gKyAgICBBU1NFUlQoaXBhdCk7DQo+IA0KPiAtc3RhdGljIHZvaWQgZG9tYWluX2NyZWF0aW9u
X2ZpbmlzaGVkKHN0cnVjdCBkb21haW4gKmQpDQo+IC17DQo+IC0gICAgaWYgKCBoYXNfdmxhcGlj
KGQpICYmICFtZm5fZXEoZC0+YXJjaC5odm0udm14LmFwaWNfYWNjZXNzX21mbiwNCj4gX21mbigw
KSkgJiYNCj4gLSAgICAgICAgIHNldF9tbWlvX3AybV9lbnRyeShkLCBnYWRkcl90b19nZm4oQVBJ
Q19ERUZBVUxUX1BIWVNfQkFTRSksDQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZC0+
YXJjaC5odm0udm14LmFwaWNfYWNjZXNzX21mbiwgUEFHRV9PUkRFUl80SykgKQ0KPiArICAgIGlm
ICggc2V0X21taW9fcDJtX2VudHJ5KGQsIGdmbiwgYXBpY19hY2Nlc3NfbWZuLCBQQUdFX09SREVS
XzRLKSApDQo+ICAgICAgICAgIGRvbWFpbl9jcmFzaChkKTsNCj4gIH0NCj4gDQo+IEBAIC0yNDE1
LDcgKzI0MDksNiBAQCBzdGF0aWMgc3RydWN0IGh2bV9mdW5jdGlvbl90YWJsZSBfX2luaXRkDQo+
ICAgICAgLmNwdV91cF9wcmVwYXJlICAgICAgID0gdm14X2NwdV91cF9wcmVwYXJlLA0KPiAgICAg
IC5jcHVfZGVhZCAgICAgICAgICAgICA9IHZteF9jcHVfZGVhZCwNCj4gICAgICAuZG9tYWluX2lu
aXRpYWxpc2UgICAgPSB2bXhfZG9tYWluX2luaXRpYWxpc2UsDQo+IC0gICAgLmRvbWFpbl9yZWxp
bnF1aXNoX3Jlc291cmNlcyA9IHZteF9kb21haW5fcmVsaW5xdWlzaF9yZXNvdXJjZXMsDQo+ICAg
ICAgLmRvbWFpbl9jcmVhdGlvbl9maW5pc2hlZCA9IGRvbWFpbl9jcmVhdGlvbl9maW5pc2hlZCwN
Cj4gICAgICAudmNwdV9pbml0aWFsaXNlICAgICAgPSB2bXhfdmNwdV9pbml0aWFsaXNlLA0KPiAg
ICAgIC52Y3B1X2Rlc3Ryb3kgICAgICAgICA9IHZteF92Y3B1X2Rlc3Ryb3ksDQo+IEBAIC0yNjYy
LDcgKzI2NTUsNyBAQCBjb25zdCBzdHJ1Y3QgaHZtX2Z1bmN0aW9uX3RhYmxlICogX19pbml0DQo+
ICB7DQo+ICAgICAgc2V0X2luX2NyNChYODZfQ1I0X1ZNWEUpOw0KPiANCj4gLSAgICBpZiAoIHZt
eF92bWNzX2luaXQoKSApDQo+ICsgICAgaWYgKCB2bXhfdm1jc19pbml0KCkgfHwgYWxsb2Nfdmxh
cGljX21hcHBpbmcoKSApDQo+ICAgICAgew0KPiAgICAgICAgICBwcmludGsoIlZNWDogZmFpbGVk
IHRvIGluaXRpYWxpc2UuXG4iKTsNCj4gICAgICAgICAgcmV0dXJuIE5VTEw7DQo+IEBAIC0zMjI0
LDcgKzMyMTcsNyBAQCBncF9mYXVsdDoNCj4gICAgICByZXR1cm4gWDg2RU1VTF9FWENFUFRJT047
DQo+ICB9DQo+IA0KPiAtc3RhdGljIGludCB2bXhfYWxsb2NfdmxhcGljX21hcHBpbmcoc3RydWN0
IGRvbWFpbiAqZCkNCj4gK3N0YXRpYyBpbnQgX19pbml0IGFsbG9jX3ZsYXBpY19tYXBwaW5nKHZv
aWQpDQo+ICB7DQo+ICAgICAgc3RydWN0IHBhZ2VfaW5mbyAqcGc7DQo+ICAgICAgbWZuX3QgbWZu
Ow0KPiBAQCAtMzIzMiw1MiArMzIyNSwzNCBAQCBzdGF0aWMgaW50IHZteF9hbGxvY192bGFwaWNf
bWFwcGluZyhzdHJ1DQo+ICAgICAgaWYgKCAhY3B1X2hhc192bXhfdmlydHVhbGl6ZV9hcGljX2Fj
Y2Vzc2VzICkNCj4gICAgICAgICAgcmV0dXJuIDA7DQo+IA0KPiAtICAgIHBnID0gYWxsb2NfZG9t
aGVhcF9wYWdlKGQsIE1FTUZfbm9fcmVmY291bnQpOw0KPiArICAgIHBnID0gYWxsb2NfZG9taGVh
cF9wYWdlKE5VTEwsIDApOw0KPiAgICAgIGlmICggIXBnICkNCj4gICAgICAgICAgcmV0dXJuIC1F
Tk9NRU07DQo+IA0KPiAtICAgIGlmICggIWdldF9wYWdlX2FuZF90eXBlKHBnLCBkLCBQR1Rfd3Jp
dGFibGVfcGFnZSkgKQ0KPiAtICAgIHsNCj4gLSAgICAgICAgLyoNCj4gLSAgICAgICAgICogVGhl
IGRvbWFpbiBjYW4ndCBwb3NzaWJseSBrbm93IGFib3V0IHRoaXMgcGFnZSB5ZXQsIHNvIGZhaWx1
cmUNCj4gLSAgICAgICAgICogaGVyZSBpcyBhIGNsZWFyIGluZGljYXRpb24gb2Ygc29tZXRoaW5n
IGZpc2h5IGdvaW5nIG9uLg0KPiAtICAgICAgICAgKi8NCj4gLSAgICAgICAgZG9tYWluX2NyYXNo
KGQpOw0KPiAtICAgICAgICByZXR1cm4gLUVOT0RBVEE7DQo+IC0gICAgfQ0KPiArICAgIC8qDQo+
ICsgICAgICogU2lnbmFsIHRvIHNoYWRvdyBjb2RlIHRoYXQgdGhpcyBwYWdlIGNhbm5vdCBiZSBy
ZWZjb3VudGVkLiBUaGlzIGFsc28NCj4gKyAgICAgKiBtYWtlcyBlcHRlX2dldF9lbnRyeV9lbXQo
KSByZWNvZ25pemUgdGhpcyBwYWdlIGFzICJzcGVjaWFsIi4NCj4gKyAgICAgKi8NCj4gKyAgICBw
YWdlX3N1cHByZXNzX3JlZmNvdW50aW5nKHBnKTsNCj4gDQo+ICAgICAgbWZuID0gcGFnZV90b19t
Zm4ocGcpOw0KPiAgICAgIGNsZWFyX2RvbWFpbl9wYWdlKG1mbik7DQo+IC0gICAgZC0+YXJjaC5o
dm0udm14LmFwaWNfYWNjZXNzX21mbiA9IG1mbjsNCj4gKyAgICBhcGljX2FjY2Vzc19tZm4gPSBt
Zm47DQo+IA0KPiAgICAgIHJldHVybiAwOw0KPiAgfQ0KPiANCj4gLXN0YXRpYyB2b2lkIHZteF9m
cmVlX3ZsYXBpY19tYXBwaW5nKHN0cnVjdCBkb21haW4gKmQpDQo+IC17DQo+IC0gICAgbWZuX3Qg
bWZuID0gZC0+YXJjaC5odm0udm14LmFwaWNfYWNjZXNzX21mbjsNCj4gLQ0KPiAtICAgIGQtPmFy
Y2guaHZtLnZteC5hcGljX2FjY2Vzc19tZm4gPSBfbWZuKDApOw0KPiAtICAgIGlmICggIW1mbl9l
cShtZm4sIF9tZm4oMCkpICkNCj4gLSAgICB7DQo+IC0gICAgICAgIHN0cnVjdCBwYWdlX2luZm8g
KnBnID0gbWZuX3RvX3BhZ2UobWZuKTsNCj4gLQ0KPiAtICAgICAgICBwdXRfcGFnZV9hbGxvY19y
ZWYocGcpOw0KPiAtICAgICAgICBwdXRfcGFnZV9hbmRfdHlwZShwZyk7DQo+IC0gICAgfQ0KPiAt
fQ0KPiAtDQo+ICBzdGF0aWMgdm9pZCB2bXhfaW5zdGFsbF92bGFwaWNfbWFwcGluZyhzdHJ1Y3Qg
dmNwdSAqdikNCj4gIHsNCj4gICAgICBwYWRkcl90IHZpcnRfcGFnZV9tYSwgYXBpY19wYWdlX21h
Ow0KPiANCj4gLSAgICBpZiAoIG1mbl9lcSh2LT5kb21haW4tPmFyY2guaHZtLnZteC5hcGljX2Fj
Y2Vzc19tZm4sIF9tZm4oMCkpICkNCj4gKyAgICBpZiAoICFoYXNfdmxhcGljKHYtPmRvbWFpbikg
fHwgbWZuX2VxKGFwaWNfYWNjZXNzX21mbiwgSU5WQUxJRF9NRk4pICkNCj4gICAgICAgICAgcmV0
dXJuOw0KPiANCj4gICAgICBBU1NFUlQoY3B1X2hhc192bXhfdmlydHVhbGl6ZV9hcGljX2FjY2Vz
c2VzKTsNCj4gDQo+ICAgICAgdmlydF9wYWdlX21hID0gcGFnZV90b19tYWRkcih2Y3B1X3ZsYXBp
Yyh2KS0+cmVnc19wYWdlKTsNCj4gLSAgICBhcGljX3BhZ2VfbWEgPSBtZm5fdG9fbWFkZHIodi0+
ZG9tYWluLQ0KPiA+YXJjaC5odm0udm14LmFwaWNfYWNjZXNzX21mbik7DQo+ICsgICAgYXBpY19w
YWdlX21hID0gbWZuX3RvX21hZGRyKGFwaWNfYWNjZXNzX21mbik7DQo+IA0KPiAgICAgIHZteF92
bWNzX2VudGVyKHYpOw0KPiAgICAgIF9fdm13cml0ZShWSVJUVUFMX0FQSUNfUEFHRV9BRERSLCB2
aXJ0X3BhZ2VfbWEpOw0KPiAtLS0gYS94ZW4vYXJjaC94ODYvbW0vc2hhZG93L3NldC5jDQo+ICsr
KyBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvc2V0LmMNCj4gQEAgLTk0LDYgKzk0LDE1IEBAIHNo
YWRvd19nZXRfcGFnZV9mcm9tX2wxZShzaGFkb3dfbDFlX3Qgc2wNCj4gICAgICBBU1NFUlQoIXNo
X2wxZV9pc19tYWdpYyhzbDFlKSk7DQo+ICAgICAgQVNTRVJUKHNoYWRvd19tb2RlX3JlZmNvdW50
cyhkKSk7DQo+IA0KPiArICAgIC8qDQo+ICsgICAgICogQ2hlY2sgd2hldGhlciByZWZjb3VudGlu
ZyBpcyBzdXBwcmVzc2VkIG9uIHRoaXMgcGFnZS4gRm9yIGV4YW1wbGUsDQo+ICsgICAgICogVk1Y
J2VzIEFQSUMgYWNjZXNzIE1GTiBpcyBqdXN0IGEgc3Vycm9nYXRlIHBhZ2UuICBJdCBkb2Vzbid0
IGFjdHVhbGx5DQo+ICsgICAgICogZ2V0IGFjY2Vzc2VkLCBhbmQgaGVuY2UgdGhlcmUncyBubyBu
ZWVkIHRvIHJlZmNvdW50IGl0Lg0KPiArICAgICAqLw0KPiArICAgIG1mbiA9IHNoYWRvd19sMWVf
Z2V0X21mbihzbDFlKTsNCj4gKyAgICBpZiAoIG1mbl92YWxpZChtZm4pICYmDQo+IHBhZ2VfcmVm
Y291bnRpbmdfc3VwcHJlc3NlZChtZm5fdG9fcGFnZShtZm4pKSApDQo+ICsgICAgICAgIHJldHVy
biAwOw0KPiArDQo+ICAgICAgcmVzID0gZ2V0X3BhZ2VfZnJvbV9sMWUoc2wxZSwgZCwgZCk7DQo+
IA0KPiAgICAgIC8qDQo+IC0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvdHlwZXMuaA0KPiAr
KysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L3R5cGVzLmgNCj4gQEAgLTI3Niw5ICsyNzYsMTYg
QEAgaW50IHNoYWRvd19zZXRfbDRlKHN0cnVjdCBkb21haW4gKmQsIHNoYQ0KPiAgc3RhdGljIHZv
aWQgaW5saW5lDQo+ICBzaGFkb3dfcHV0X3BhZ2VfZnJvbV9sMWUoc2hhZG93X2wxZV90IHNsMWUs
IHN0cnVjdCBkb21haW4gKmQpDQo+ICB7DQo+ICsgICAgbWZuX3QgbWZuOw0KPiArDQo+ICAgICAg
aWYgKCAhc2hhZG93X21vZGVfcmVmY291bnRzKGQpICkNCj4gICAgICAgICAgcmV0dXJuOw0KPiAN
Cj4gKyAgICBpZiAoIG1mbl92YWxpZChtZm4gPSBzaGFkb3dfbDFlX2dldF9tZm4oc2wxZSkpICYm
DQo+ICsgICAgICAgICAvKiBTZWUgdGhlIHJlc3BlY3RpdmUgY29tbWVudCBpbiBzaGFkb3dfZ2V0
X3BhZ2VfZnJvbV9sMWUoKS4gKi8NCj4gKyAgICAgICAgIHBhZ2VfcmVmY291bnRpbmdfc3VwcHJl
c3NlZChtZm5fdG9fcGFnZShtZm4pKSApDQo+ICsgICAgICAgIHJldHVybjsNCj4gKw0KPiAgICAg
IHB1dF9wYWdlX2Zyb21fbDFlKHNsMWUsIGQpOw0KPiAgfQ0KPiANCj4gLS0tIGEveGVuL2luY2x1
ZGUvYXNtLXg4Ni9odm0vdm14L3ZtY3MuaA0KPiArKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2h2
bS92bXgvdm1jcy5oDQo+IEBAIC01OCw3ICs1OCw2IEBAIHN0cnVjdCBlcHRfZGF0YSB7DQo+ICAj
ZGVmaW5lIF9WTVhfRE9NQUlOX1BNTF9FTkFCTEVEICAgIDANCj4gICNkZWZpbmUgVk1YX0RPTUFJ
Tl9QTUxfRU5BQkxFRCAgICAgKDF1bCA8PA0KPiBfVk1YX0RPTUFJTl9QTUxfRU5BQkxFRCkNCj4g
IHN0cnVjdCB2bXhfZG9tYWluIHsNCj4gLSAgICBtZm5fdCBhcGljX2FjY2Vzc19tZm47DQo+ICAg
ICAgLyogVk1YX0RPTUFJTl8qICovDQo+ICAgICAgdW5zaWduZWQgaW50IHN0YXR1czsNCj4gDQo+
IC0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaA0KPiArKysgYi94ZW4vaW5jbHVkZS9hc20t
eDg2L21tLmgNCj4gQEAgLTgyLDcgKzgyLDcgQEANCj4gICNkZWZpbmUgUEdDX3N0YXRlX29mZmxp
bmVkIFBHX21hc2soMiwgOSkNCj4gICNkZWZpbmUgUEdDX3N0YXRlX2ZyZWUgICAgUEdfbWFzaygz
LCA5KQ0KPiAgI2RlZmluZSBwYWdlX3N0YXRlX2lzKHBnLCBzdCkgKCgocGcpLT5jb3VudF9pbmZv
JlBHQ19zdGF0ZSkgPT0NCj4gUEdDX3N0YXRlXyMjc3QpDQo+IC0vKiBQYWdlIGlzIG5vdCByZWZl
cmVuY2UgY291bnRlZCAqLw0KPiArLyogUGFnZSBpcyBub3QgcmVmZXJlbmNlIGNvdW50ZWQgKHNl
ZSBiZWxvdyBmb3IgY2F2ZWF0cykgKi8NCj4gICNkZWZpbmUgX1BHQ19leHRyYSAgICAgICAgUEdf
c2hpZnQoMTApDQo+ICAjZGVmaW5lIFBHQ19leHRyYSAgICAgICAgIFBHX21hc2soMSwgMTApDQo+
IA0KPiBAQCAtMzc0LDYgKzM3NCwyNCBAQCB2b2lkIHphcF9yb19tcHQobWZuX3QgbWZuKTsNCj4g
DQo+ICBib29sIGlzX2lvbWVtX3BhZ2UobWZuX3QgbWZuKTsNCj4gDQo+ICsvKg0KPiArICogUGFn
ZXMgd2l0aCBubyBvd25lciB3aGljaCBtYXkgZ2V0IHBhc3NlZCB0byBmdW5jdGlvbnMgd2FudGlu
ZyB0bw0KPiArICogcmVmY291bnQgdGhlbSBjYW4gYmUgbWFya2VkIFBHQ19leHRyYSB0byBieXBh
c3MgdGhpcyByZWZjb3VudGluZw0KPiAod2hpY2gNCj4gKyAqIHdvdWxkIGZhaWwgZHVlIHRvIHRo
ZSBsYWNrIG9mIGFuIG93bmVyKS4NCj4gKyAqDQo+ICsgKiAoRm9yIHBhZ2VzIHdpdGggb3duZXIg
UEdDX2V4dHJhIGhhcyBkaWZmZXJlbnQgbWVhbmluZy4pDQo+ICsgKi8NCj4gK3N0YXRpYyBpbmxp
bmUgdm9pZCBwYWdlX3N1cHByZXNzX3JlZmNvdW50aW5nKHN0cnVjdCBwYWdlX2luZm8gKnBnKQ0K
PiArew0KPiArICAgQVNTRVJUKCFwYWdlX2dldF9vd25lcihwZykpOw0KPiArICAgcGctPmNvdW50
X2luZm8gfD0gUEdDX2V4dHJhOw0KPiArfQ0KPiArDQo+ICtzdGF0aWMgaW5saW5lIGJvb2wgcGFn
ZV9yZWZjb3VudGluZ19zdXBwcmVzc2VkKGNvbnN0IHN0cnVjdCBwYWdlX2luZm8gKnBnKQ0KPiAr
ew0KPiArICAgIHJldHVybiAhcGFnZV9nZXRfb3duZXIocGcpICYmIChwZy0+Y291bnRfaW5mbyAm
IFBHQ19leHRyYSk7DQo+ICt9DQo+ICsNCj4gIHN0cnVjdCBwbGF0Zm9ybV9iYWRfcGFnZSB7DQo+
ICAgICAgdW5zaWduZWQgbG9uZyBtZm47DQo+ICAgICAgdW5zaWduZWQgaW50IG9yZGVyOw0KDQo=


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 02:40:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 02:40:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116984.222895 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laUhA-0007Qo-0z; Sun, 25 Apr 2021 02:40:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116984.222895; Sun, 25 Apr 2021 02: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 1laUh9-0007Qh-T3; Sun, 25 Apr 2021 02:40:27 +0000
Received: by outflank-mailman (input) for mailman id 116984;
 Sun, 25 Apr 2021 02:40: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 1laUh8-0007QZ-EN; Sun, 25 Apr 2021 02:40: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 1laUh8-0007IN-8D; Sun, 25 Apr 2021 02:40: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 1laUh7-0007gx-TT; Sun, 25 Apr 2021 02:40:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laUh7-0002XP-Sz; Sun, 25 Apr 2021 02: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=CMBSDBVsHsfzpNnJvmlbsEfC8l7WMCsdAm/M+lyvdsw=; b=p2PrCiLE+SJKpYiEZg1J4U3Ehg
	qpfayIBs78CI4OCOS/mjD46ObljJx9eUxkfEbPZ55tqm/rXh4fLE+Es9tX6i83BRVy03lH9hcQeuj
	mjJKNVCBKR8M5lFaZD5JmQYge7GQFAi9780OsaAZEYxGbJkC+YnvcPuhHXtm1waf3beI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161431-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161431: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 02:40:25 +0000

flight 161431 xen-4.12-testing real [real]
flight 161440 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161431/
http://logs.test-lab.xenproject.org/osstest/logs/161440/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161415 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 161415 pass in 161431
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161415

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 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
 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-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   67 days
Failing since        160128  2021-03-18 14:36:18 Z   37 days   49 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   35 days   47 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 05:45:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 05:45:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.116994.222910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laXaM-0000wk-Dc; Sun, 25 Apr 2021 05:45:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 116994.222910; Sun, 25 Apr 2021 05: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 1laXaM-0000wd-Ah; Sun, 25 Apr 2021 05:45:38 +0000
Received: by outflank-mailman (input) for mailman id 116994;
 Sun, 25 Apr 2021 05:45: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 1laXaK-0000wV-HQ; Sun, 25 Apr 2021 05:45: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 1laXaK-0002KZ-9s; Sun, 25 Apr 2021 05:45: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 1laXaJ-00082b-TW; Sun, 25 Apr 2021 05:45:36 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laXaJ-0004mS-T0; Sun, 25 Apr 2021 05: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=7xyS69qhSWAmJL8jQL2O48XUzSA6s0yBPly2LzyZ3UI=; b=g+1GmNwvfRnXZzyvbs/X+MhnJb
	j703hnFwwt5xisMesjmpBW+CO//4KvOc7ji3SnkV3rSV34BGFzaUJJd+piU7ZyfuZWMFH2Ls7+U/l
	ZixAzZ2dzGjU4NkLyN6lOrzrrxmQp5Y77FXmqxLYYSZyYezCbYGppOMiRqR9LxqTiijM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161434-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161434: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=ffa090bc56e73e287a63261e70ac02c0970be61a
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 05:45:35 +0000

flight 161434 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161434/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                ffa090bc56e73e287a63261e70ac02c0970be61a
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  247 days
Failing since        152659  2020-08-21 14:07:39 Z  246 days  454 attempts
Testing same since   161419  2021-04-24 00:07:02 Z    1 days    2 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 143011 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 07:52:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 07:52:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117017.222931 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laZYp-0005PL-Sd; Sun, 25 Apr 2021 07:52:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117017.222931; Sun, 25 Apr 2021 07: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 1laZYp-0005PE-PO; Sun, 25 Apr 2021 07:52:11 +0000
Received: by outflank-mailman (input) for mailman id 117017;
 Sun, 25 Apr 2021 07:52: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 1laZYo-0005P6-T4; Sun, 25 Apr 2021 07:52: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 1laZYo-0004Qw-MX; Sun, 25 Apr 2021 07:52: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 1laZYo-0004zI-Bp; Sun, 25 Apr 2021 07:52:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laZYo-0000HS-BF; Sun, 25 Apr 2021 07:52: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=XTrKl3lFMWkVbggZfGOaOJfbFnU4weSc8tOQs0+4dxs=; b=jGUopg8DgAT8iRulXCwR86ERpU
	NhcNdKUe4GqCisBFTAdh8TcJ4aLHp2XcaIUuJ1KoFElNvIOwPSup8OipoGTpbyJ+d3N2lZlp7agXt
	9x5kiE+zODmRjFtd/U2bCQPzhpGMj1m0s8fVUAEcfij3MtpOCfU4cW6lfHti7va4nSCM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161443-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161443: regressions - trouble: blocked/fail/pass/starved
X-Osstest-Failures:
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:build-armhf-libvirt:build-check(1):starved:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):starved:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):starved:nonblocking
    libvirt:build-armhf:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    libvirt=3c3c55be66e230ef09ad927eda038dc32f01a166
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 07:52:10 +0000

flight 161443 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161443/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 build-armhf-libvirt           1 build-check(1)               starved  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               starved  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               starved  n/a
 build-armhf                   2 hosts-allocate               starved  n/a

version targeted for testing:
 libvirt              3c3c55be66e230ef09ad927eda038dc32f01a166
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  289 days
Failing since        151818  2020-07-11 04:18:52 Z  288 days  281 attempts
Testing same since   161423  2021-04-24 04:18:53 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastian Germann <bastiangermann@fishpost.de>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  starved 
 build-i386                                                   pass    
 build-amd64-libvirt                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          starved 
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     starved 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 starved 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 54631 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 07:57:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 07:57:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117024.222946 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laZdp-0005l0-Hh; Sun, 25 Apr 2021 07:57:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117024.222946; Sun, 25 Apr 2021 07:57:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laZdp-0005kt-Dz; Sun, 25 Apr 2021 07:57:21 +0000
Received: by outflank-mailman (input) for mailman id 117024;
 Sun, 25 Apr 2021 07:57: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 1laZdn-0005kl-Sb; Sun, 25 Apr 2021 07:57: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 1laZdn-0004WK-GF; Sun, 25 Apr 2021 07:57: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 1laZdn-0005CP-3l; Sun, 25 Apr 2021 07:57:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laZdn-00064T-3J; Sun, 25 Apr 2021 07:57: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=KJxYXVn0xECACygAxFIOGt1GN8WXoa0DzT2bkHnmv+8=; b=zCjJt1cXgcmxEUhAUtRaQIxxRL
	+CCyWuPwTUynFP1/PoNrZx6YIDpYNW1Uy4Sr/TmCEY/RkKWHINbvCg/KTxlbOKXCtvHROQqCtiJ2T
	ZtToQS/0xvx+AxgL+mHZmouLyl4qT6lbmQlgx76uz/quo+cBigKYs2ZYGWpzM5rEjwIc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161437-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161437: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-examine:memdisk-try-append:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-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-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx: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-vhd: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: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-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2a1d7946fa53cea2083e5981ff55a8176ab2be6b
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 07:57:19 +0000

flight 161437 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161437/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-examine      4 memdisk-try-append       fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                2a1d7946fa53cea2083e5981ff55a8176ab2be6b
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  267 days
Failing since        152366  2020-08-01 20:49:34 Z  266 days  447 attempts
Testing same since   161437  2021-04-24 21:42:10 Z    0 days    1 attempts

------------------------------------------------------------
5357 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1330275 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 09:49:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 09:49:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117059.222960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1labNr-0000Qt-Mf; Sun, 25 Apr 2021 09:48:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117059.222960; Sun, 25 Apr 2021 09:48:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1labNr-0000Qm-Jm; Sun, 25 Apr 2021 09:48:59 +0000
Received: by outflank-mailman (input) for mailman id 117059;
 Sun, 25 Apr 2021 09:48: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 1labNq-0000Qe-D8; Sun, 25 Apr 2021 09:48: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 1labNq-0006rm-40; Sun, 25 Apr 2021 09:48: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 1labNp-00040r-SG; Sun, 25 Apr 2021 09:48:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1labNp-00036V-Rl; Sun, 25 Apr 2021 09: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=OoLRm7Pm04gCdGKmAOVndC18agwgnwhp2fURrmMVP34=; b=EGlWrWOxRbnAosgyEPLG6WTOky
	L44TZLzWTNeF+8TKpzQlpAAoQYlxCPxfyoR6OTOyodouMi4JSpejbrVOAwGjxD4cxapqvjUgf/63C
	x37pxh6u9EcQcT7H7KNg/3UWyo6voPrI68DBUZJAp5oPSqbHijs5MNwI7tO8isA/P5fI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161447-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-coverity test] 161447: all pass - PUSHED
X-Osstest-Versions-This:
    xen=bea65a212c0581520203b6ad0d07615693f42f73
X-Osstest-Versions-That:
    xen=aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 09:48:57 +0000

flight 161447 xen-unstable-coverity real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161447/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xen                  bea65a212c0581520203b6ad0d07615693f42f73
baseline version:
 xen                  aaa3eafb3ba8b544d19ca41cda1477640b22b8fc

Last test of basis   161350  2021-04-21 09:19:38 Z    4 days
Testing same since   161447  2021-04-25 09:19:30 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Costin Lupu <costin.lupu@cs.pub.ro>
  Dario Faggioli <dfaggioli@suse.com>
  Doug Goldstein <cardoe@cardoe.com>
  Hongyan Xia <hongyxia@amazon.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Wei Liu <wei.liu2@citrix.com>
  Wei Liu <wl@xen.org>

jobs:
 coverity-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/xen.git
   aaa3eafb3b..bea65a212c  bea65a212c0581520203b6ad0d07615693f42f73 -> coverity-tested/smoke


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 11:58:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 11:58:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117121.222982 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ladPL-0004z4-5y; Sun, 25 Apr 2021 11:58:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117121.222982; Sun, 25 Apr 2021 11: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 1ladPL-0004yx-2H; Sun, 25 Apr 2021 11:58:39 +0000
Received: by outflank-mailman (input) for mailman id 117121;
 Sun, 25 Apr 2021 11:58: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 1ladPJ-0004yp-SE; Sun, 25 Apr 2021 11:58: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 1ladPJ-0000Yy-L6; Sun, 25 Apr 2021 11:58: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 1ladPJ-0001Vr-Ae; Sun, 25 Apr 2021 11:58:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1ladPJ-0001SS-AF; Sun, 25 Apr 2021 11:58:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=9+ESdZ3TRXa2/lSEsNDYQTSKiIa+lAOdG9AXoRJBgw8=; b=2yuC27BRmqijWuryShWDNVJiKn
	YKIo8h9ZJqZwQR0nD+feEhxZI4cjZvGzdz8BBZA0ms4nECeHXWDE2BVdCx/GBkW9Scn/bMFVq5r0F
	8IQONfGvIfFC9Zhwn4KslxxEfgPQcTRddrVFFdz7iDwH1TCEpzzGgAScHEYT/KAENTxo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161439-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161439: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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: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-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-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-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-amd64-libvirt-vhd: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw: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-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
X-Osstest-Versions-This:
    xen=bea65a212c0581520203b6ad0d07615693f42f73
X-Osstest-Versions-That:
    xen=bea65a212c0581520203b6ad0d07615693f42f73
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 11:58:37 +0000

flight 161439 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161439/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-examine    4 memdisk-try-append fail in 161421 pass in 161439
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 161421 pass in 161439
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat  fail pass in 161421

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161421
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161421
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161421
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161421
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161421
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161421
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161421
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161421
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161421
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161421
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161421
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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

version targeted for testing:
 xen                  bea65a212c0581520203b6ad0d07615693f42f73
baseline version:
 xen                  bea65a212c0581520203b6ad0d07615693f42f73

Last test of basis   161439  2021-04-25 01:52:38 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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  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-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 12:50:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 12:50:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117142.222997 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laeD9-0002Aa-5b; Sun, 25 Apr 2021 12:50:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117142.222997; Sun, 25 Apr 2021 12: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 1laeD9-0002AT-1C; Sun, 25 Apr 2021 12:50:07 +0000
Received: by outflank-mailman (input) for mailman id 117142;
 Sun, 25 Apr 2021 12:50: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 1laeD7-0001zC-Mx
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 12:50: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 1laeD6-0001Nm-Ds; Sun, 25 Apr 2021 12:50:04 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1laeD5-0006OM-Jh; Sun, 25 Apr 2021 12:50: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=2Ps+FB4jNhogDBgVcMafzdbJTl1575eff1zTCK8JFm0=; b=az7++oWCDkBrjPmbBQKtDacwZw
	ErQk5PD/kdZyuPpzk3bCEmJxMFF+ZMCZ76bu4OF+Ux3EjgtnkxZzyX0X4nh7Vs6XMg1muPvRZcyLW
	IaGu/PSYLC7Fw5YaHKSg3NNJzN7lKAMSrTBHyRIFUvlTSHP/caz5pPrRz6Ju3vmSDP3U=;
Subject: Re: [PATCH] tools/xenstored: Remove unused prototype
To: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org
Cc: Julien Grall <jgrall@amazon.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>
References: <20210420134906.10910-1-julien@xen.org>
 <756df886-2e18-f2d0-a6d7-27e9817cb9c6@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <7f10922b-fae7-9acd-8b3c-f25012741c38@xen.org>
Date: Sun, 25 Apr 2021 13:50:01 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <756df886-2e18-f2d0-a6d7-27e9817cb9c6@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Juergen,

On 21/04/2021 08:39, Juergen Gross wrote:
> On 20.04.21 15:49, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> A prototype for dump_conn() has been present for quite a long time
>> but there are no implementation. Even, AFAICT in the patch that
>> introduced it. So drop it.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> Reviewed-by: Juergen Gross <jgross@suse.com>

Thanks! I have committed it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 12:56:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 12:56:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117153.223017 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laeJc-0002ke-Vs; Sun, 25 Apr 2021 12:56:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117153.223017; Sun, 25 Apr 2021 12:56:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laeJc-0002kX-Rm; Sun, 25 Apr 2021 12:56:48 +0000
Received: by outflank-mailman (input) for mailman id 117153;
 Sun, 25 Apr 2021 12:56: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 1laeJa-0002kS-Pa
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 12:56: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 1laeJZ-0001VS-5d; Sun, 25 Apr 2021 12:56:45 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1laeJY-0006uO-TI; Sun, 25 Apr 2021 12:56: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=mUIbIz+FutOPuc5vsbUn0JngfNoKUlFHFen65Y5k3WU=; b=OmIZHUkQyr5Fa4TiyqUxqHnDpX
	2X9QUXuKyno7fqkTa5fxM6J0J/79fMNzMROGGc6BeucVFtkhRqKkb3mgtS5l9YoCPbNPPmD4iJt2k
	xFBtRcBQf9ejysdCzDxnfhh0Q3lsL/Vql1olU01h7eedAQuAHt+Fuk0NCg+CgG87KExQ=;
Subject: Re: [PATCH] tools/xenstored: Wire properly the command line option
 -M/--path-max
To: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org
Cc: Julien Grall <jgrall@amazon.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>
References: <20210421140255.23437-1-julien@xen.org>
 <673f6a7e-a63c-ca0c-054d-5c33682e901e@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <3c1f428d-242b-d076-824d-cc382e413cb4@xen.org>
Date: Sun, 25 Apr 2021 13:56:43 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <673f6a7e-a63c-ca0c-054d-5c33682e901e@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Juergen,

On 21/04/2021 16:07, Juergen Gross wrote:
> On 21.04.21 16:02, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> The command line option -M/--path-max was meant to be added by
>> commit 924bf8c793cb "tools/xenstore: rework path length check" but this
>> wasn't wired through properly.
>>
>> Fix it by adding the missing "case 'M':".
>>
>> Fixes: 924bf8c793cb ("tools/xenstore: rework path length check")
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> Reviewed-by: Juergen Gross <jgross@suse.com>

Thanks! I have committed it.

> I wonder why no compiler cared about the obviously dead coding.
Coverity actually spotted it (see CID-1470790) back in December 2020. 
Although, I wasn't aware of it because I just check coverity now.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 13:41:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 13:41:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117164.223032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laf0X-0007FK-GG; Sun, 25 Apr 2021 13:41:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117164.223032; Sun, 25 Apr 2021 13:41: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 1laf0X-0007FD-DF; Sun, 25 Apr 2021 13:41:09 +0000
Received: by outflank-mailman (input) for mailman id 117164;
 Sun, 25 Apr 2021 13:41: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 1laf0W-0007F8-7t
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 13:41: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 1laf0U-0002EX-P1; Sun, 25 Apr 2021 13:41:06 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1laf0U-0001ND-DA; Sun, 25 Apr 2021 13: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=jcseDq2ZdU1T0/rnFxbHc4SJN0BhJiMohi8QIY8/hu8=; b=PqcaPzFM5/uNcsvWa9hcWuVCV7
	idWyZZkkQ8Z/b5vY/ipzo74swD6/Ke/cg+fgcAFGrmGIfWGKobhhre5/7CFZCeXnQrV3pl+4VoP+O
	Yv/XE1eSQVH3ygzTDhVSJg+d/fJhMtmGYp0xxnvLjj1iQ5ywq+7XElFmggFluiXFASSA=;
Subject: Re: [PATCH] xen/page_alloc: Remove dead code in alloc_domheap_pages()
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210406192246.15657-1-julien@xen.org>
 <6d3593cb-40d4-df17-4070-a6c18ea7d62b@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <6b37dc84-a251-a9d7-071d-65d2afad6361@xen.org>
Date: Sun, 25 Apr 2021 14:41:04 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6d3593cb-40d4-df17-4070-a6c18ea7d62b@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 07/04/2021 10:25, Jan Beulich wrote:
> On 06.04.2021 21:22, Julien Grall wrote:
>> --- a/xen/common/page_alloc.c
>> +++ b/xen/common/page_alloc.c
>> @@ -457,6 +457,12 @@ static long total_avail_pages;
>>   static DEFINE_SPINLOCK(heap_lock);
>>   static long outstanding_claims; /* total outstanding claims by all domains */
>>   
>> +static void __init __maybe_unused build_assertions(void)
>> +{
>> +    /* Zone 0 is reserved for Xen, so we at least need two zones to function.*/
>> +    BUILD_BUG_ON(NR_ZONES < 2);
>> +}
> 
> With a couple of transformations this could also be
> 
>      BUILD_BUG_ON(PADDR_BITS <= PAGE_SHIFT);
> 
> i.e. you're checking that the architecture allows for at least two
> pages to be addressable. Is this really a useful thing to check?

I saw it, but I was concerned that someone may modify the definition of 
NR_ZONES without looking at the rest of the code base.

Anyway, I guess that the ASSERT(zone_hi != 0) in the code should be 
sufficient to catch such problem. So I will drop it.

> 
> Irrespective of the usefulness, if this is to be kept I think the
> function wants to live at the end of the source file, like the
> majority of other files have it (another consistent place could
> be at the top of the file, after all #include-s, as can be found
> in two other cases).
> 
>> @@ -2340,8 +2346,9 @@ struct page_info *alloc_domheap_pages(
>>   
>>       bits = domain_clamp_alloc_bitsize(memflags & MEMF_no_owner ? NULL : d,
>>                                         bits ? : (BITS_PER_LONG+PAGE_SHIFT));
>> -    if ( (zone_hi = min_t(unsigned int, bits_to_zone(bits), zone_hi)) == 0 )
>> -        return NULL;
>> +
>> +    zone_hi = min_t(unsigned int, bits_to_zone(bits), zone_hi);
>> +    ASSERT(zone_hi != 0);
> 
> With the function above preferably dropped or at least moved,
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> 
> I'd like to point out though that I think this would be a good
> opportunity to eliminate the use of min_t() here, by changing
> bits_to_zone()'s 1 to 1u. But I suppose you again would prefer
> to not make this extra change right here, despite it being
> somewhat related to bits_to_zone() only ever returning positive
> values.

In general, I am in not in favor to modify unrelated to code (e.g. 
coding style) or things that deserved a more than a one-line explanation 
in the commit message. This is not the case here, so I will respin it 
and switch from min_t to min.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 15:12:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 15:12:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117236.223047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lagQD-0007Lm-Bs; Sun, 25 Apr 2021 15:11:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117236.223047; Sun, 25 Apr 2021 15: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 1lagQD-0007Lf-8q; Sun, 25 Apr 2021 15:11:45 +0000
Received: by outflank-mailman (input) for mailman id 117236;
 Sun, 25 Apr 2021 15:11: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 1lagQC-0007La-19
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 15:11: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 1lagQA-0003kz-9C; Sun, 25 Apr 2021 15:11:42 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lagQA-0007Hi-2d; Sun, 25 Apr 2021 15: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=7C6eqqB4u8svDNxQWrKNWGDuzYXTR3XnATeXIg04FiY=; b=xhyri9Shxt5jirzCtdBPoop/fC
	1r7njQsj2OcZiWCiME8zT3ILppbsBugYNLiHad3nYUn7/dGHbqZaFqSpWtmtZ5G0VunExgbQfOvZd
	vTcgAdtumc+sutip7i1iUf9fKxdXvZPd4sBxjGMCONeJGBXxLljitVowjXXAExq0d0ac=;
Subject: Re: [PATCH RFC 4/6] xen/arm: mm: Allow other mapping size in
 xen_pt_update_entry()
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Julien Grall <julien.grall@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20201119190751.22345-1-julien@xen.org>
 <20201119190751.22345-5-julien@xen.org>
 <alpine.DEB.2.21.2011191706420.7979@sstabellini-ThinkPad-T480s>
 <1ba4afef-7efa-6d1a-5929-ec2652dbbb21@xen.org>
 <alpine.DEB.2.21.2011231409050.7979@sstabellini-ThinkPad-T480s>
 <eff4cb40-ac90-940c-aa97-16a5021386d3@xen.org>
 <alpine.DEB.2.21.2011231612330.7979@sstabellini-ThinkPad-T480s>
 <d02e29cb-a4f1-4ebe-a04f-67b4a159a193@xen.org>
 <alpine.DEB.2.21.2011301359290.1100@sstabellini-ThinkPad-T480s>
From: Julien Grall <julien@xen.org>
Message-ID: <7aa25179-2926-d829-3fac-41aeda61dd4f@xen.org>
Date: Sun, 25 Apr 2021 16:11:40 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <alpine.DEB.2.21.2011301359290.1100@sstabellini-ThinkPad-T480s>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 30/11/2020 22:05, Stefano Stabellini wrote:
> On Sat, 28 Nov 2020, Julien Grall wrote:
>> If you take the ``if`` alone, yes they are alignment check. But if you take
>> the overall code, then it will just compute which mapping size can be used.
>>
>> However, what I am disputing here is "rely" because there are no assumption
>> made on the alignment in the loop (we are able to cater any size). In fact,
>> the fact mfn and vfn should be aligned to the mapping size is a requirement
>> from the hardware and not the implementation.
> 
> OK, maybe the "rely" gives a bad impression. What about:
> 
> This loop relies on mfn, vfn, and nr_mfn, to be all superpage aligned
> (mfn and vfn have to be architecturally), and it uses `mask' to check
> for that.
 >
> Feel free to reword it differently if you have a better idea.
I have used your new wording proposal.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 15:44:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 15:44:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117253.223059 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lagvm-0001m0-Po; Sun, 25 Apr 2021 15:44:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117253.223059; Sun, 25 Apr 2021 15: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 1lagvm-0001lt-Mr; Sun, 25 Apr 2021 15:44:22 +0000
Received: by outflank-mailman (input) for mailman id 117253;
 Sun, 25 Apr 2021 15:44: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 1lagvl-0001ll-AZ; Sun, 25 Apr 2021 15:44: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 1lagvl-0004Fb-3u; Sun, 25 Apr 2021 15:44: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 1lagvk-0005NG-Pi; Sun, 25 Apr 2021 15:44:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lagvk-0003dT-PC; Sun, 25 Apr 2021 15:44:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=2yyXF2KQjxpCQGHkNVr/fuH8hPgSLwE2S4P+u6P8Ij4=; b=wbCZIK3U0fXjjKt/2Mhqd5oi50
	+bwTmcdPh1RrV74pVqdOOzu9u08I+DDTecByTQatSJtyUf26Jzqsi0g7Q8vSouZF2fAOaxC5h6NGC
	K2BZjNjV5M377oWBvZKNQDNM/Kwjhd1DLB6dRFzjwMRGSWmB7jRxr+9yLwAQ31FHQhCI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161449-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161449: 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=ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
X-Osstest-Versions-That:
    xen=bea65a212c0581520203b6ad0d07615693f42f73
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 15:44:20 +0000

flight 161449 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161449/

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                  ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
baseline version:
 xen                  bea65a212c0581520203b6ad0d07615693f42f73

Last test of basis   161413  2021-04-23 18:00:31 Z    1 days
Testing same since   161449  2021-04-25 13:01:33 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
   bea65a212c..ab392969ea  ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed -> smoke


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 19:52:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 19:52:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117290.223080 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laknY-0007op-Oc; Sun, 25 Apr 2021 19:52:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117290.223080; Sun, 25 Apr 2021 19:52: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 1laknY-0007oi-KJ; Sun, 25 Apr 2021 19:52:08 +0000
Received: by outflank-mailman (input) for mailman id 117290;
 Sun, 25 Apr 2021 19:52: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 1laknX-0007oa-RV; Sun, 25 Apr 2021 19:52: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 1laknX-0000No-LZ; Sun, 25 Apr 2021 19:52: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 1laknX-0001Fm-8q; Sun, 25 Apr 2021 19:52:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1laknX-0002Rw-8J; Sun, 25 Apr 2021 19:52:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=dGmyflTd29jew/L5/AGPEYPD+zjQwGSHmo5bWT+KvEE=; b=I0EsuvsOq4kdvNSJgj/yA3s1fO
	l+ygrQAa8m/bhVScOdx5NiBroyALMW8AcKio3S/HrFgfbCX30FS4KOLBh1O7dwhXPUqE0M7skAR7D
	NXYIV9tgLcNYGyBAxLkRFjc1wCfyEfTQZ8W/EciEeXPZzkSGYuzmutIjGcFlmV8HBp5A=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161442-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161442: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 19:52:07 +0000

flight 161442 xen-4.12-testing real [real]
flight 161452 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161442/
http://logs.test-lab.xenproject.org/osstest/logs/161452/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 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
 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-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   68 days
Failing since        160128  2021-03-18 14:36:18 Z   38 days   50 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   36 days   48 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117303.223130 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8C-0001Uw-G0; Sun, 25 Apr 2021 20:13:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117303.223130; Sun, 25 Apr 2021 20:13: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 1lal8C-0001Uo-Cj; Sun, 25 Apr 2021 20:13:28 +0000
Received: by outflank-mailman (input) for mailman id 117303;
 Sun, 25 Apr 2021 20:13: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 1lal8B-0001Tv-5i
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal8A-0000oJ-Pf; Sun, 25 Apr 2021 20:13:26 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8A-0005m7-HE; Sun, 25 Apr 2021 20: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=jWWczyhwx5+vonIhKTnyI8FTuC3mdInSZ1tXL3+0cBg=; b=Ib3Ub05fstFLx8pqFUj2tpx+l
	trTAMuc4XOpZ5Ge3426W5ETmcqn+9nMYRWdSyFl1hqYnuX24sOs/5xujbt/yU6hFC4Lf/3TBv1XyX
	O/RHbp+NCSWqVgNXGMv5ufJ5fIS+JQAYXDDVPXNLyDD3J+BCASCvzJ22oiGOXTiS813jc=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH RFCv2 03/15] xen/arm: p2m: Replace level_{orders, masks} arrays with LEVEL_{ORDER, MASK}
Date: Sun, 25 Apr 2021 21:13:06 +0100
Message-Id: <20210425201318.15447-4-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

The array level_orders and level_masks can be replaced with the
recently introduced macros LEVEL_ORDER and LEVEL_MASK.

Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch
---
 xen/arch/arm/p2m.c | 16 +++++-----------
 1 file changed, 5 insertions(+), 11 deletions(-)

diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index ac5031262061..1b04c3534439 100644
--- a/xen/arch/arm/p2m.c
+++ b/xen/arch/arm/p2m.c
@@ -36,12 +36,6 @@ static unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT;
  */
 unsigned int __read_mostly p2m_ipa_bits = 64;
 
-/* Helpers to lookup the properties of each level */
-static const paddr_t level_masks[] =
-    { ZEROETH_MASK, FIRST_MASK, SECOND_MASK, THIRD_MASK };
-static const uint8_t level_orders[] =
-    { ZEROETH_ORDER, FIRST_ORDER, SECOND_ORDER, THIRD_ORDER };
-
 static mfn_t __read_mostly empty_root_mfn;
 
 static uint64_t generate_vttbr(uint16_t vmid, mfn_t root_mfn)
@@ -232,7 +226,7 @@ static lpae_t *p2m_get_root_pointer(struct p2m_domain *p2m,
      * 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) >> (level_orders[P2M_ROOT_LEVEL] + LPAE_SHIFT);
+    root_table = gfn_x(gfn) >> (LEVEL_ORDER(P2M_ROOT_LEVEL) + LPAE_SHIFT);
     if ( root_table >= P2M_ROOT_PAGES )
         return NULL;
 
@@ -378,7 +372,7 @@ mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn,
     if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
     {
         for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
-            if ( (gfn_x(gfn) & (level_masks[level] >> PAGE_SHIFT)) >
+            if ( (gfn_x(gfn) & (LEVEL_MASK(level) >> PAGE_SHIFT)) >
                  gfn_x(p2m->max_mapped_gfn) )
                 break;
 
@@ -421,7 +415,7 @@ mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn,
          * The entry may point to a superpage. Find the MFN associated
          * to the GFN.
          */
-        mfn = mfn_add(mfn, gfn_x(gfn) & ((1UL << level_orders[level]) - 1));
+        mfn = mfn_add(mfn, gfn_x(gfn) & ((1UL << LEVEL_ORDER(level)) - 1));
 
         if ( valid )
             *valid = lpae_is_valid(entry);
@@ -432,7 +426,7 @@ out_unmap:
 
 out:
     if ( page_order )
-        *page_order = level_orders[level];
+        *page_order = LEVEL_ORDER(level);
 
     return mfn;
 }
@@ -806,7 +800,7 @@ static bool p2m_split_superpage(struct p2m_domain *p2m, lpae_t *entry,
     /* Convenience aliases */
     mfn_t mfn = lpae_get_mfn(*entry);
     unsigned int next_level = level + 1;
-    unsigned int level_order = level_orders[next_level];
+    unsigned int level_order = LEVEL_ORDER(next_level);
 
     /*
      * This should only be called with target != level and the entry is
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117302.223114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8A-0001S6-8J; Sun, 25 Apr 2021 20:13:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117302.223114; Sun, 25 Apr 2021 20:13:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8A-0001Rp-23; Sun, 25 Apr 2021 20:13:26 +0000
Received: by outflank-mailman (input) for mailman id 117302;
 Sun, 25 Apr 2021 20:13: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 1lal89-0001RJ-KT
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal89-0000o9-9c; Sun, 25 Apr 2021 20:13:25 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal89-0005m7-0v; Sun, 25 Apr 2021 20:13: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=LKWf7A+MF6uxi0Yzj4E+EHypbxoopwZaOMfIEc68W2U=; b=1SDMm0QKKs7ZTmqP/oyO5AZh9
	0OPJ6JkxMteNKRWqu9oagsX/IqwziRYQxxOGM+zopceh8gifGisQ16kLw7DSM1BBWXXCHBqUL/WzF
	PG9/sViCrlB0jH55Aa9+Sr5Vu6QiedEczvB96Tb6NYy7xL2yVOyb9zzQBanYC1wVznCQ4=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH RFCv2 02/15] xen/arm: lpae: Use the generic helpers to defined the Xen PT helpers
Date: Sun, 25 Apr 2021 21:13:05 +0100
Message-Id: <20210425201318.15447-3-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Currently, Xen PT helpers are only working with 4KB page granularity
and open-code the generic helpers. To allow more flexibility, we can
re-use the generic helpers and pass Xen's page granularity
(PAGE_SHIFT).

As Xen PT helpers are used in both C and assembly, we need to move
the generic helpers definition outside of the !__ASSEMBLY__ section.

Note the aliases for each level are still kept for the time being so we
can avoid a massive patch to change all the callers.

Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch
---
 xen/include/asm-arm/lpae.h | 71 +++++++++++++++++++++-----------------
 1 file changed, 40 insertions(+), 31 deletions(-)

diff --git a/xen/include/asm-arm/lpae.h b/xen/include/asm-arm/lpae.h
index 4fb9a40a4ca9..310f5225e056 100644
--- a/xen/include/asm-arm/lpae.h
+++ b/xen/include/asm-arm/lpae.h
@@ -159,6 +159,17 @@ static inline bool lpae_is_superpage(lpae_t pte, unsigned int level)
 #define lpae_get_mfn(pte)    (_mfn((pte).walk.base))
 #define lpae_set_mfn(pte, mfn)  ((pte).walk.base = mfn_x(mfn))
 
+/* Generate an array @var containing the offset for each level from @addr */
+#define DECLARE_OFFSETS(var, addr)          \
+    const unsigned int var[4] = {           \
+        zeroeth_table_offset(addr),         \
+        first_table_offset(addr),           \
+        second_table_offset(addr),          \
+        third_table_offset(addr)            \
+    }
+
+#endif /* __ASSEMBLY__ */
+
 /*
  * AArch64 supports pages with different sizes (4K, 16K, and 64K).
  * Provide a set of generic helpers that will compute various
@@ -190,17 +201,6 @@ static inline bool lpae_is_superpage(lpae_t pte, unsigned int level)
 #define LPAE_TABLE_INDEX_GS(gs, lvl, addr)   \
     (((addr) >> LEVEL_SHIFT_GS(gs, lvl)) & LPAE_ENTRY_MASK_GS(gs))
 
-/* Generate an array @var containing the offset for each level from @addr */
-#define DECLARE_OFFSETS(var, addr)          \
-    const unsigned int var[4] = {           \
-        zeroeth_table_offset(addr),         \
-        first_table_offset(addr),           \
-        second_table_offset(addr),          \
-        third_table_offset(addr)            \
-    }
-
-#endif /* __ASSEMBLY__ */
-
 /*
  * These numbers add up to a 48-bit input address space.
  *
@@ -211,26 +211,35 @@ static inline bool lpae_is_superpage(lpae_t pte, unsigned int level)
  * therefore 39-bits are sufficient.
  */
 
-#define LPAE_SHIFT      9
-#define LPAE_ENTRIES    (_AC(1,U) << LPAE_SHIFT)
-#define LPAE_ENTRY_MASK (LPAE_ENTRIES - 1)
-
-#define THIRD_SHIFT    (PAGE_SHIFT)
-#define THIRD_ORDER    (THIRD_SHIFT - PAGE_SHIFT)
-#define THIRD_SIZE     (_AT(paddr_t, 1) << THIRD_SHIFT)
-#define THIRD_MASK     (~(THIRD_SIZE - 1))
-#define SECOND_SHIFT   (THIRD_SHIFT + LPAE_SHIFT)
-#define SECOND_ORDER   (SECOND_SHIFT - PAGE_SHIFT)
-#define SECOND_SIZE    (_AT(paddr_t, 1) << SECOND_SHIFT)
-#define SECOND_MASK    (~(SECOND_SIZE - 1))
-#define FIRST_SHIFT    (SECOND_SHIFT + LPAE_SHIFT)
-#define FIRST_ORDER    (FIRST_SHIFT - PAGE_SHIFT)
-#define FIRST_SIZE     (_AT(paddr_t, 1) << FIRST_SHIFT)
-#define FIRST_MASK     (~(FIRST_SIZE - 1))
-#define ZEROETH_SHIFT  (FIRST_SHIFT + LPAE_SHIFT)
-#define ZEROETH_ORDER  (ZEROETH_SHIFT - PAGE_SHIFT)
-#define ZEROETH_SIZE   (_AT(paddr_t, 1) << ZEROETH_SHIFT)
-#define ZEROETH_MASK   (~(ZEROETH_SIZE - 1))
+#define LPAE_SHIFT          LPAE_SHIFT_GS(PAGE_SHIFT)
+#define LPAE_ENTRIES        LPAE_ENTRIES_GS(PAGE_SHIFT)
+#define LPAE_ENTRY_MASK     LPAE_ENTRY_MASK_GS(PAGE_SHIFT)
+
+#define LEVEL_SHIFT(lvl)    LEVEL_SHIFT_GS(PAGE_SHIFT, lvl)
+#define LEVEL_ORDER(lvl)    LEVEL_ORDER_GS(PAGE_SHIFT, lvl)
+#define LEVEL_SIZE(lvl)     LEVEL_SIZE_GS(PAGE_SHIFT, lvl)
+#define LEVEL_MASK(lvl)     (~(LEVEL_SIZE(lvl) - 1))
+
+/* Convenience aliases */
+#define THIRD_SHIFT         LEVEL_SHIFT(3)
+#define THIRD_ORDER         LEVEL_ORDER(3)
+#define THIRD_SIZE          LEVEL_SIZE(3)
+#define THIRD_MASK          LEVEL_MASK(3)
+
+#define SECOND_SHIFT        LEVEL_SHIFT(2)
+#define SECOND_ORDER        LEVEL_ORDER(2)
+#define SECOND_SIZE         LEVEL_SIZE(2)
+#define SECOND_MASK         LEVEL_MASK(2)
+
+#define FIRST_SHIFT         LEVEL_SHIFT(1)
+#define FIRST_ORDER         LEVEL_ORDER(1)
+#define FIRST_SIZE          LEVEL_SIZE(1)
+#define FIRST_MASK          LEVEL_MASK(1)
+
+#define ZEROETH_SHIFT       LEVEL_SHIFT(0)
+#define ZEROETH_ORDER       LEVEL_ORDER(0)
+#define ZEROETH_SIZE        LEVEL_SIZE(0)
+#define ZEROETH_MASK        LEVEL_MASK(0)
 
 /* Calculate the offsets into the pagetables for a given VA */
 #define zeroeth_linear_offset(va) ((va) >> ZEROETH_SHIFT)
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117300.223095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal88-0001QW-KA; Sun, 25 Apr 2021 20:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117300.223095; Sun, 25 Apr 2021 20: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 1lal88-0001QP-H7; Sun, 25 Apr 2021 20:13:24 +0000
Received: by outflank-mailman (input) for mailman id 117300;
 Sun, 25 Apr 2021 20: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 1lal87-0001QF-BU
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20: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 1lal86-0000nv-CE; Sun, 25 Apr 2021 20:13:22 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal86-0005m7-0Y; Sun, 25 Apr 2021 20: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:MIME-Version:
	Message-Id:Date:Subject:Cc:To:From;
	bh=X15PJsfA8ZZe0WJ5gNkzuQ01mz4/pctOMdwEQyJoq0Y=; b=aki4KyKmRPMzQcN3N664q1pYhD
	VFTvNwGwcH5NDAaoSfIoOX7a3w5naRxH6VpTQlXTZrvpODwI6KALAvbnX9pN+rUvHY/fGka9pMnlo
	LfzN1dbaGBsRsREAT4kOMZIk8AcysTciftxSL0sCPKwO0b4lZ63OKFn6Kh/D6G1gAUSw=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Hongian Xia <hongyax@amazon.com>
Subject: [PATCH RFCv2 00/15] xen/arm: mm: Remove open-coding mappings
Date: Sun, 25 Apr 2021 21:13:03 +0100
Message-Id: <20210425201318.15447-1-julien@xen.org>
X-Mailer: git-send-email 2.17.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Julien Grall <jgrall@amazon.com>

Hi all,

This series was originally sent as "xen/arm: mm: Add limited support
for superpages" [1] and finally has grown enough to remove most of
the open-coding mappings in the boot code.

This will help to:
    1) Get better compliance with the Arm memory model
    2) Pave the way to support other page size (64KB, 16KB)

This is not fully finished (only boot tested on Arm64) but I sent it
early to get more testing and also unblock some of the on-going work
to support static memory allocation for dom0less (see [2]).

There are still a few TODOs:
    - Add support for setting the contiguous bits
    - Remove 1GB alignment in setup_xenheap_mappings()
    - Decide whether we want to provide a common PMAP

Cheers,

[1] <20201119190751.22345-1-julien@xen.org>
[2] <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>

Julien Grall (14):
  xen/arm: lpae: Rename LPAE_ENTRIES_MASK_GS to LPAE_ENTRY_MASK_GS
  xen/arm: lpae: Use the generic helpers to defined the Xen PT helpers
  xen/arm: p2m: Replace level_{orders, masks} arrays with LEVEL_{ORDER,
    MASK}
  xen/arm: mm: Allow other mapping size in xen_pt_update_entry()
  xen/arm: mm: Avoid flushing the TLBs when mapping are inserted
  xen/arm: mm: Don't open-code Xen PT update in remove_early_mappings()
  xen/arm: mm: Re-implement early_fdt_map() using map_pages_to_xen()
  xen/arm32: mm: Check if the virtual address is shared before updating
    it
  xen/arm32: mm: Re-implement setup_xenheap_mappings() using
    map_pages_to_xen()
  xen/arm: mm: Allocate xen page tables in domheap rather than xenheap
  xen/arm: mm: Allow page-table allocation from the boot allocator
  xen/arm: mm: Use the PMAP helpers in xen_{,un}map_table()
  xen/arm: mm: Rework setup_xenheap_mappings()
  xen/arm: mm: Re-implement setup_frame_table_mappings() with
    map_pages_to_xen()

Wei Liu (1):
  xen/arm: add Persistent Map (PMAP) infrastructure

 xen/arch/arm/Makefile        |   1 +
 xen/arch/arm/mm.c            | 362 +++++++++++++++++------------------
 xen/arch/arm/p2m.c           |  16 +-
 xen/arch/arm/pmap.c          | 101 ++++++++++
 xen/arch/arm/setup.c         |  10 +-
 xen/include/asm-arm/config.h |   6 +
 xen/include/asm-arm/lpae.h   |  83 ++++----
 xen/include/asm-arm/page.h   |   4 +
 xen/include/asm-arm/pmap.h   |  10 +
 9 files changed, 356 insertions(+), 237 deletions(-)
 create mode 100644 xen/arch/arm/pmap.c
 create mode 100644 xen/include/asm-arm/pmap.h

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117301.223106 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal89-0001RV-Rr; Sun, 25 Apr 2021 20:13:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117301.223106; Sun, 25 Apr 2021 20:13:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal89-0001RO-OP; Sun, 25 Apr 2021 20:13:25 +0000
Received: by outflank-mailman (input) for mailman id 117301;
 Sun, 25 Apr 2021 20:13: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 1lal88-0001QK-8J
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal87-0000o0-R7; Sun, 25 Apr 2021 20:13:23 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal87-0005m7-Gv; Sun, 25 Apr 2021 20:13: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=aeGTdR45KQ3asOXLFfCMyppOP+nTbqurYRYNJDh+L6k=; b=iMNjfTueq2jlaMv+RGtfn2lyn
	u750jZZVVvNq5BUM8wRsDBVg3PJlrmq3C5kCCB69a1gNwAiwBtlClrn73J6zujzywaGAM53jADEFx
	41AGctMqHBV7mQ5CO/IRrpuYlpXglS/SK/AyuYPoXgFAn+30fTzbt/iSmRzj/xHcBu8Aw=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH RFCv2 01/15] xen/arm: lpae: Rename LPAE_ENTRIES_MASK_GS to LPAE_ENTRY_MASK_GS
Date: Sun, 25 Apr 2021 21:13:04 +0100
Message-Id: <20210425201318.15447-2-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Commit 05031fa87357 "xen/arm: guest_walk: Only generate necessary
offsets/masks" introduced LPAE_ENTRIES_MASK_GS. In a follow-up patch,
we will use it for to define LPAE_ENTRY_MASK.

This will lead to inconsistent naming. As LPAE_ENTRY_MASK is used in
many places, it is better to rename LPAE_ENTRIES_MASK_GS and avoid
some churn.

So rename LPAE_ENTRIES_MASK_GS to LPAE_ENTRY_MASK_GS.

Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch
---
 xen/include/asm-arm/lpae.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/include/asm-arm/lpae.h b/xen/include/asm-arm/lpae.h
index e94de2e7d8e8..4fb9a40a4ca9 100644
--- a/xen/include/asm-arm/lpae.h
+++ b/xen/include/asm-arm/lpae.h
@@ -180,7 +180,7 @@ static inline bool lpae_is_superpage(lpae_t pte, unsigned int level)
  */
 #define LPAE_SHIFT_GS(gs)         ((gs) - 3)
 #define LPAE_ENTRIES_GS(gs)       (_AC(1, U) << LPAE_SHIFT_GS(gs))
-#define LPAE_ENTRIES_MASK_GS(gs)  (LPAE_ENTRIES_GS(gs) - 1)
+#define LPAE_ENTRY_MASK_GS(gs)  (LPAE_ENTRIES_GS(gs) - 1)
 
 #define LEVEL_ORDER_GS(gs, lvl)   ((3 - (lvl)) * LPAE_SHIFT_GS(gs))
 #define LEVEL_SHIFT_GS(gs, lvl)   (LEVEL_ORDER_GS(gs, lvl) + (gs))
@@ -188,7 +188,7 @@ static inline bool lpae_is_superpage(lpae_t pte, unsigned int level)
 
 /* Offset in the table at level 'lvl' */
 #define LPAE_TABLE_INDEX_GS(gs, lvl, addr)   \
-    (((addr) >> LEVEL_SHIFT_GS(gs, lvl)) & LPAE_ENTRIES_MASK_GS(gs))
+    (((addr) >> LEVEL_SHIFT_GS(gs, lvl)) & LPAE_ENTRY_MASK_GS(gs))
 
 /* Generate an array @var containing the offset for each level from @addr */
 #define DECLARE_OFFSETS(var, addr)          \
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117304.223143 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8E-0001Yc-Qk; Sun, 25 Apr 2021 20:13:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117304.223143; Sun, 25 Apr 2021 20: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 1lal8E-0001YT-NH; Sun, 25 Apr 2021 20:13:30 +0000
Received: by outflank-mailman (input) for mailman id 117304;
 Sun, 25 Apr 2021 20:13:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lal8C-0001W7-Vu
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal8C-0000oV-Hb; Sun, 25 Apr 2021 20:13:28 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8C-0005m7-4y; Sun, 25 Apr 2021 20:13: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=lBfQueqmN8lGEfYvmwCQNPeVCuWNGXAaHJKI8fcyO7c=; b=ypvOlVCA4WHF0pL5/WG6c5HOo
	k9ybUduQYf91ZwDEarIKEk6z1uwks64TuJ3Pz1cGWgW0O7vUTP0IEMsP/dogcLhRB9E0IFu1b4haA
	zkhTQFFg3irUF+JPz9h+sbZIMexFdageCS/DsCX39slv4XPCAm6ZwLTdcihHAmB8BuvjQ=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <julien.grall@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH RFCv2 04/15] xen/arm: mm: Allow other mapping size in xen_pt_update_entry()
Date: Sun, 25 Apr 2021 21:13:07 +0100
Message-Id: <20210425201318.15447-5-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <julien.grall@arm.com>

At the moment, xen_pt_update_entry() only supports mapping at level 3
(i.e 4KB mapping). While this is fine for most of the runtime helper,
the boot code will require to use superpage mapping.

We don't want to allow superpage mapping by default as some of the
callers may expect small mappings (i.e populate_pt_range()) or even
expect to unmap only a part of a superpage.

To keep the code simple, a new flag _PAGE_BLOCK is introduced to
allow the caller to enable superpage mapping.

As the code doesn't support all the combinations, xen_pt_check_entry()
is extended to take into account the cases we don't support when
using block mapping:
    - Replacing a table with a mapping. This may happen if region was
    first mapped with 4KB mapping and then later on replaced with a 2MB
    (or 1GB mapping)
    - Removing/modify a table. This may happen if a caller try to
    remove a region with _PAGE_BLOCK set when it was created without it

Note that the current restriction mean that the caller must ensure that
_PAGE_BLOCK is consistently set/cleared across all the updates on a
given virtual region. This ought to be fine with the expected use-cases.

More rework will be necessary if we wanted to remove the restrictions.

Note that nr_mfns is now marked const as it is used for flushing the
TLBs and we don't want it to be modified.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>

---

    Changes in v2:
        - Pass the target level rather than the order to
        xen_pt_update_entry()
        - Update some comments
        - Open-code paddr_to_pfn()
        - Add my AWS signed-off-by
---
 xen/arch/arm/mm.c          | 93 ++++++++++++++++++++++++++++++--------
 xen/include/asm-arm/page.h |  4 ++
 2 files changed, 79 insertions(+), 18 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 59f8a3f15fd1..8ebb36899314 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -1060,9 +1060,10 @@ static int xen_pt_next_level(bool read_only, unsigned int level,
 }
 
 /* Sanity check of the entry */
-static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int flags)
+static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int level,
+                               unsigned int flags)
 {
-    /* Sanity check when modifying a page. */
+    /* Sanity check when modifying an entry. */
     if ( (flags & _PAGE_PRESENT) && mfn_eq(mfn, INVALID_MFN) )
     {
         /* We don't allow modifying an invalid entry. */
@@ -1072,6 +1073,13 @@ static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int flags)
             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) )
         {
@@ -1087,7 +1095,7 @@ static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int flags)
             return false;
         }
     }
-    /* Sanity check when inserting a page */
+    /* Sanity check when inserting a mapping */
     else if ( flags & _PAGE_PRESENT )
     {
         /* We should be here with a valid MFN. */
@@ -1096,18 +1104,28 @@ static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int flags)
         /* We don't allow replacing any valid entry. */
         if ( lpae_is_valid(entry) )
         {
-            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));
+            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 page. */
+    /* 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 page with contiguous bit set. */
+        /* 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");
@@ -1125,13 +1143,13 @@ static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int flags)
     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 flags)
+                               mfn_t mfn, unsigned int target,
+                               unsigned int flags)
 {
     int rc;
     unsigned int level;
-    /* We only support 4KB mapping (i.e level 3) for now */
-    unsigned int target = 3;
     lpae_t *table;
     /*
      * The intermediate page tables are read-only when the MFN is not valid
@@ -1186,7 +1204,7 @@ static int xen_pt_update_entry(mfn_t root, unsigned long virt,
     entry = table + offsets[level];
 
     rc = -EINVAL;
-    if ( !xen_pt_check_entry(*entry, mfn, flags) )
+    if ( !xen_pt_check_entry(*entry, mfn, level, flags) )
         goto out;
 
     /* If we are only populating page-table, then we are done. */
@@ -1204,8 +1222,11 @@ static int xen_pt_update_entry(mfn_t root, unsigned long virt,
         {
             pte = mfn_to_xen_entry(mfn, PAGE_AI_MASK(flags));
 
-            /* Third level entries set pte.pt.table = 1 */
-            pte.pt.table = 1;
+            /*
+             * 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;
@@ -1229,11 +1250,12 @@ static DEFINE_SPINLOCK(xen_pt_lock);
 
 static int xen_pt_update(unsigned long virt,
                          mfn_t mfn,
-                         unsigned long nr_mfns,
+                         const unsigned long nr_mfns,
                          unsigned int flags)
 {
     int rc = 0;
-    unsigned long addr = virt, addr_end = addr + nr_mfns * PAGE_SIZE;
+    unsigned long vfn = virt >> PAGE_SHIFT;
+    unsigned long left = nr_mfns;
 
     /*
      * For arm32, page-tables are different on each CPUs. Yet, they share
@@ -1265,14 +1287,49 @@ static int xen_pt_update(unsigned long virt,
 
     spin_lock(&xen_pt_lock);
 
-    for ( ; addr < addr_end; addr += PAGE_SIZE )
+    while ( left )
     {
-        rc = xen_pt_update_entry(root, addr, mfn, flags);
+        unsigned int order, level;
+        unsigned long mask;
+
+        /*
+         * Don't take into account the MFN when removing mapping (i.e
+         * MFN_INVALID) to calculate the correct target order.
+         *
+         * This loop relies on mfn, vfn, and nr_mfn to be all superpage
+         * aligned (mfn and vfn have to be architecturally), and it uses
+         * `mask` to check for that.
+         *
+         * XXX: Support superpage mappings if nr is not aligned to a
+         * superpage size.
+         */
+        mask = !mfn_eq(mfn, INVALID_MFN) ? mfn_x(mfn) : 0;
+        mask |= vfn | left;
+
+        /*
+         * 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)) )
+            level = 1;
+        else if ( !(mask & (BIT(SECOND_ORDER, UL) - 1)) )
+            level = 2;
+        else
+            level = 3;
+
+        order = LEVEL_ORDER(level);
+
+        rc = xen_pt_update_entry(root, pfn_to_paddr(vfn), mfn, level, flags);
         if ( rc )
             break;
 
+        vfn += 1U << order;
         if ( !mfn_eq(mfn, INVALID_MFN) )
-            mfn = mfn_add(mfn, 1);
+            mfn = mfn_add(mfn, 1U << order);
+
+        left -= (1U << order);
     }
 
     /*
diff --git a/xen/include/asm-arm/page.h b/xen/include/asm-arm/page.h
index 131507a51712..7052a87ec0fe 100644
--- a/xen/include/asm-arm/page.h
+++ b/xen/include/asm-arm/page.h
@@ -69,6 +69,7 @@
  * [3:4] Permission flags
  * [5]   Page present
  * [6]   Only populate page tables
+ * [7]   Superpage mappings is allowed
  */
 #define PAGE_AI_MASK(x) ((x) & 0x7U)
 
@@ -82,6 +83,9 @@
 #define _PAGE_PRESENT    (1U << 5)
 #define _PAGE_POPULATE   (1U << 6)
 
+#define _PAGE_BLOCK_BIT     7
+#define _PAGE_BLOCK         (1U << _PAGE_BLOCK_BIT)
+
 /*
  * _PAGE_DEVICE and _PAGE_NORMAL are convenience defines. They are not
  * meant to be used outside of this header.
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117305.223152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8F-0001aF-IZ; Sun, 25 Apr 2021 20:13:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117305.223152; Sun, 25 Apr 2021 20:13:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8F-0001Zz-8n; Sun, 25 Apr 2021 20:13:31 +0000
Received: by outflank-mailman (input) for mailman id 117305;
 Sun, 25 Apr 2021 20:13: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 1lal8E-0001Y5-Am
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal8E-0000od-1A; Sun, 25 Apr 2021 20:13:30 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8D-0005m7-Ow; Sun, 25 Apr 2021 20: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=qdn1le94TFR9RGBuVbMK3tl4UOk0qVZcjP09VJjmTGA=; b=kSyw3dlhX1A7P2j0w/l4hybr8
	Ud7zQLDGt7Mn8i2uLPIulsJTxh+GPmAfBOJ+yF7305IdEUH38vps72MRsC2vx5R8CCCdDVKY8IHQD
	9hFVBq73P0B1YneXKbnrgn/waWH4v8dVnu9t/ZXBysrReYhDJFh8i2DS0ckzPd97eWLYM=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH RFCv2 05/15] xen/arm: mm: Avoid flushing the TLBs when mapping are inserted
Date: Sun, 25 Apr 2021 21:13:08 +0100
Message-Id: <20210425201318.15447-6-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Currently, the function xen_pt_update() will flush the TLBs even when
the mappings are inserted. This is a bit wasteful because we don't
allow mapping replacement. Even if we were, the flush would need to
happen earlier because mapping replacement should use Break-Before-Make
when updating the entry.

A single call to xen_pt_update() can perform a single action. IOW, it
is not possible to, for instance, mix inserting and removing mappings.
Therefore, we can use `flags` to determine what action is performed.

This change will be particularly help to limit the impact of switching
boot time mapping to use xen_pt_update().

Signed-off-by: Julien Grall <jgrall@amazon.com>

---

    Changes in v2:
        - New patch
---
 xen/arch/arm/mm.c | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 8ebb36899314..1fe52b3af722 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -1101,7 +1101,13 @@ static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int level,
         /* We should be here with a valid MFN. */
         ASSERT(!mfn_eq(mfn, INVALID_MFN));
 
-        /* We don't allow replacing any valid entry. */
+        /*
+         * 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) )
@@ -1333,11 +1339,16 @@ static int xen_pt_update(unsigned long virt,
     }
 
     /*
-     * Flush the TLBs even in case of failure because we may have
+     * The TLBs flush can be safely skipped when a mapping is inserted
+     * as we don't allow mapping replacement (see xen_pt_check_entry()).
+     *
+     * For all the other cases, the TLBs will be flushed unconditionally
+     * even if the mapping are failed. This is because we may have
      * partially modified the PT. This will prevent any unexpected
      * behavior afterwards.
      */
-    flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns);
+    if ( !(flags & _PAGE_PRESENT) || mfn_eq(mfn, INVALID_MFN) )
+        flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns);
 
     spin_unlock(&xen_pt_lock);
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117306.223167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8H-0001ex-S2; Sun, 25 Apr 2021 20:13:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117306.223167; Sun, 25 Apr 2021 20:13: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 1lal8H-0001el-NM; Sun, 25 Apr 2021 20:13:33 +0000
Received: by outflank-mailman (input) for mailman id 117306;
 Sun, 25 Apr 2021 20:13: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 1lal8G-0001ci-6i
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal8F-0000om-LM; Sun, 25 Apr 2021 20:13:31 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8F-0005m7-Cs; Sun, 25 Apr 2021 20:13: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=siVUWwfApP96aB3lihKwJZ2TVvy/coY05i6ribyQkaQ=; b=TFO4q8j8JOAgGjBBHSZTLC9+u
	iMlWqMTBkWFPT36hYWWc45g8Fn5uSG78rEvAy+6H21I/Zi1kc+RNJ+JDddxtmVz/WrZPfWXlehK++
	RbjszRSe7SLY8uM6Tn4Vd5WPAUN7qbDigjXmUG8LihxVjqOpSclHnKLMMocAWn9vFeTmM=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <julien.grall@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH RFCv2 06/15] xen/arm: mm: Don't open-code Xen PT update in remove_early_mappings()
Date: Sun, 25 Apr 2021 21:13:09 +0100
Message-Id: <20210425201318.15447-7-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <julien.grall@arm.com>

Now that xen_pt_update_entry() is able to deal with different mapping
size, we can replace the open-coding of the page-tables update by a call
to modify_xen_mappings().

As the function is not meant to fail, a BUG_ON() is added to check the
return.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - Stay consistent with how function name are used in the commit
        message
        - Add my AWS signed-off-by
---
 xen/arch/arm/mm.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 1fe52b3af722..2cbfbe25240e 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -598,11 +598,11 @@ void * __init early_fdt_map(paddr_t fdt_paddr)
 
 void __init remove_early_mappings(void)
 {
-    lpae_t pte = {0};
-    write_pte(xen_second + second_table_offset(BOOT_FDT_VIRT_START), pte);
-    write_pte(xen_second + second_table_offset(BOOT_FDT_VIRT_START + SZ_2M),
-              pte);
-    flush_xen_tlb_range_va(BOOT_FDT_VIRT_START, BOOT_FDT_SLOT_SIZE);
+    int rc;
+
+    rc = modify_xen_mappings(BOOT_FDT_VIRT_START, BOOT_FDT_VIRT_END,
+                             _PAGE_BLOCK);
+    BUG_ON(rc);
 }
 
 /*
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117307.223179 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8J-0001iY-Cr; Sun, 25 Apr 2021 20:13:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117307.223179; Sun, 25 Apr 2021 20: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 1lal8J-0001iD-4n; Sun, 25 Apr 2021 20:13:35 +0000
Received: by outflank-mailman (input) for mailman id 117307;
 Sun, 25 Apr 2021 20:13: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 1lal8H-0001eY-IA
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal8H-0000ow-92; Sun, 25 Apr 2021 20:13:33 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8H-0005m7-0N; Sun, 25 Apr 2021 20:13: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=BjS7PbV9YIvothNxojvfyxpwJGXVh+HIjQYc5MW8oEY=; b=5HLK2dyh1X7dCPn8EtxAG9MCg
	Bsj2Nv2kLQNEpk6BmPmNgnoREbSJ8Ey6254znwK/FVhZvMRRVfzwomElROXT24J4u34Avbssq+C0b
	NIrGT3Cae/S5MRKrG9thBQjGB4MOjLU4O0CUmtuFf5eWGgBQMki4bjoQEFLQw+9MHNe/c=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <julien.grall@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH RFCv2 07/15] xen/arm: mm: Re-implement early_fdt_map() using map_pages_to_xen()
Date: Sun, 25 Apr 2021 21:13:10 +0100
Message-Id: <20210425201318.15447-8-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <julien.grall@arm.com>

Now that map_pages_to_xen() has been extended to support 2MB mappings,
we can replace the create_mappings() calls by map_pages_to_xen() calls.

The mapping can also be marked read-only has Xen as no business to
modify the host Device Tree.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - Add my AWS signed-off-by
        - Fix typo in the commit message
---
 xen/arch/arm/mm.c | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 2cbfbe25240e..8fac24d80086 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -558,6 +558,7 @@ void * __init early_fdt_map(paddr_t fdt_paddr)
     paddr_t offset;
     void *fdt_virt;
     uint32_t size;
+    int rc;
 
     /*
      * Check whether the physical FDT address is set and meets the minimum
@@ -573,8 +574,12 @@ void * __init early_fdt_map(paddr_t fdt_paddr)
     /* The FDT is mapped using 2MB superpage */
     BUILD_BUG_ON(BOOT_FDT_VIRT_START % SZ_2M);
 
-    create_mappings(xen_second, BOOT_FDT_VIRT_START, paddr_to_pfn(base_paddr),
-                    SZ_2M >> PAGE_SHIFT, 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;
@@ -588,9 +593,12 @@ void * __init early_fdt_map(paddr_t fdt_paddr)
 
     if ( (offset + size) > SZ_2M )
     {
-        create_mappings(xen_second, BOOT_FDT_VIRT_START + SZ_2M,
-                        paddr_to_pfn(base_paddr + SZ_2M),
-                        SZ_2M >> PAGE_SHIFT, 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;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117308.223187 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8K-0001kE-7t; Sun, 25 Apr 2021 20:13:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117308.223187; Sun, 25 Apr 2021 20:13: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 1lal8J-0001ji-Ln; Sun, 25 Apr 2021 20:13:35 +0000
Received: by outflank-mailman (input) for mailman id 117308;
 Sun, 25 Apr 2021 20:13: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 1lal8J-0001i6-0m
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal8I-0000p4-Ou; Sun, 25 Apr 2021 20:13:34 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8I-0005m7-GR; Sun, 25 Apr 2021 20:13: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=NkFXrdGqH4EPmzou9mWkeqYkQCSaITClqSn4Be5r/zI=; b=F12nHvd4PDHg3Ann1gEV5mT4c
	Uyt5mKxNT0Cx4WZY9me+oL5J3D/WXAT5LwiE0CtuebDNHBPCDkY/xwx5/hvekdxLkyxdp96WPtOYW
	ShK7euMpoS4UkgoRNayfziVBZWzNdioOmRY1Zq5PGedJHx43r8QbptSw+5TBrdshL7AiM=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH RFCv2 08/15] xen/arm32: mm: Check if the virtual address is shared before updating it
Date: Sun, 25 Apr 2021 21:13:11 +0100
Message-Id: <20210425201318.15447-9-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Only the first 2GB of the virtual address space is shared between all
the page-tables on Arm32.

There is a long outstanding TODO in xen_pt_update() stating that the
function is can only work with shared mapping. Nobody has ever called
the function with private mapping, however as we add more callers
there is a risk to mess things up.

Introduce a new define to mark the ened of the shared mappings and use
it in xen_pt_update() to verify if the address is correct.

Note that on Arm64, all the mappings are shared. Some compiler may
complain about an always true check, so the new define is not introduced
for arm64 and the code is protected with an #ifdef.

Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch
---
 xen/arch/arm/mm.c            | 11 +++++++++--
 xen/include/asm-arm/config.h |  4 ++++
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 8fac24d80086..5c17cafff847 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -1275,11 +1275,18 @@ static int xen_pt_update(unsigned long virt,
      * 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 = virt_to_mfn(THIS_CPU_PGTABLE);
 
+#ifdef SHARED_VIRT_END
+    if ( virt > SHARED_VIRT_END ||
+         (SHARED_VIRT_END - virt) < nr_mfns )
+    {
+        mm_printk("Trying to map outside of the shared area.\n");
+        return -EINVAL;
+    }
+#endif
+
     /*
      * The hardware was configured to forbid mapping both writeable and
      * executable.
diff --git a/xen/include/asm-arm/config.h b/xen/include/asm-arm/config.h
index c7b77912013e..85d4a510ce8a 100644
--- a/xen/include/asm-arm/config.h
+++ b/xen/include/asm-arm/config.h
@@ -137,6 +137,10 @@
 
 #define XENHEAP_VIRT_START     _AT(vaddr_t,0x40000000)
 #define XENHEAP_VIRT_END       _AT(vaddr_t,0x7fffffff)
+
+/* The first 2GB is always shared between all the page-tables. */
+#define SHARED_VIRT_END        _AT(vaddr_t, 0x7fffffff)
+
 #define DOMHEAP_VIRT_START     _AT(vaddr_t,0x80000000)
 #define DOMHEAP_VIRT_END       _AT(vaddr_t,0xffffffff)
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:13:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:13:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117309.223203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lal8M-0001rN-MS; Sun, 25 Apr 2021 20:13:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117309.223203; Sun, 25 Apr 2021 20: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 1lal8M-0001r4-Ep; Sun, 25 Apr 2021 20:13:38 +0000
Received: by outflank-mailman (input) for mailman id 117309;
 Sun, 25 Apr 2021 20:13: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 1lal8K-0001mW-IE
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:13: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 1lal8K-0000pC-8v; Sun, 25 Apr 2021 20:13:36 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8K-0005m7-0R; Sun, 25 Apr 2021 20: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=Moqxyc1ZPjrdBFjtAzt9LgU5Lw+fiLu9r1elfDAEKcE=; b=yM5oyAyjNFkRoriEbAu8nWkgg
	UlBONVmOVRgQO+sDd02/RWxitSO8BTbZai7UE596NzmhmJKm7Nt9Ga0ZR0gKc7Fy7I76MQp4D/2eJ
	e8q1+blNljXuHofnGkUdwe60An/1k1cLI+uGyXeIIuczJV16/QlepsBcue5JTfx0B6QOU=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH RFCv2 09/15] xen/arm32: mm: Re-implement setup_xenheap_mappings() using map_pages_to_xen()
Date: Sun, 25 Apr 2021 21:13:12 +0100
Message-Id: <20210425201318.15447-10-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

Now that map_pages_to_xen() has been extended to support 2MB mappings,
we can replace the create_mappings() call by map_pages_to_xen() call.

Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch

    TODOs:
        - add support for contiguous mapping
---
 xen/arch/arm/mm.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 5c17cafff847..19ecf73542ce 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -806,7 +806,12 @@ void mmu_init_secondary_cpu(void)
 void __init setup_xenheap_mappings(unsigned long base_mfn,
                                    unsigned long nr_mfns)
 {
-    create_mappings(xen_second, XENHEAP_VIRT_START, base_mfn, nr_mfns, MB(32));
+    int rc;
+
+    rc = map_pages_to_xen(XENHEAP_VIRT_START, base_mfn, nr_mfns,
+                          PAGE_HYPERVISOR_RW | _PAGE_BLOCK);
+    if ( rc )
+        panic("Unable to setup the xenheap mappings.\n");
 
     /* Record where the xenheap is, for translation routines. */
     xenheap_virt_end = XENHEAP_VIRT_START + nr_mfns * PAGE_SIZE;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:20:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:20:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117350.223215 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lalET-0002hm-HW; Sun, 25 Apr 2021 20:19:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117350.223215; Sun, 25 Apr 2021 20: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 1lalET-0002hf-E9; Sun, 25 Apr 2021 20:19:57 +0000
Received: by outflank-mailman (input) for mailman id 117350;
 Sun, 25 Apr 2021 20:19: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 1lalER-0002ha-Pg
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:19: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 1lalER-0000vY-Fj; Sun, 25 Apr 2021 20:19:55 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lalER-00068g-6J; Sun, 25 Apr 2021 20: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=ug2O5bX0F+VGmViQca4vCK0pBhVytLBv0K5BxrV+pbA=; b=hTPj6F+DKppW898qF4fktcGw3S
	xIkDFQGkLusPhy/IsEd1BhNVdvOrLcPrwvB0d0wa0RVkChMg1vkZOv+dIPNebd/2GXACx2dI0RB74
	ZvxSfvtgZYJbhCrt4mb0WoHBpeG+UwdT3UMwrEtGICoFMJoJxqgOcKhy/ZtDX5ASxPko=;
Subject: Re: Discussion of Xenheap problems on AArch64
To: Henry Wang <Henry.Wang@arm.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Wei Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>
References: <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <cdde98ca-4183-c92b-adca-801330992fc5@xen.org>
 <PA4PR08MB62538BBA256E66A0415F0C7192479@PA4PR08MB6253.eurprd08.prod.outlook.com>
From: Julien Grall <julien@xen.org>
Message-ID: <f14aa1d6-35d2-a9a3-0672-7f0d3ae3ec89@xen.org>
Date: Sun, 25 Apr 2021 21:19:53 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <PA4PR08MB62538BBA256E66A0415F0C7192479@PA4PR08MB6253.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 21/04/2021 10:32, Henry Wang wrote:
> Hi Julien,

Hi Henry,

>> -----Original Message-----
>> From: Julien Grall <julien@xen.org>
>> Sent: Wednesday, April 21, 2021 5:04 PM
>> To: Henry Wang <Henry.Wang@arm.com>; sstabellini@kernel.org; xen-
>> devel@lists.xenproject.org
>> Cc: Wei Chen <Wei.Chen@arm.com>; Penny Zheng
>> <Penny.Zheng@arm.com>; Bertrand Marquis <Bertrand.Marquis@arm.com>
>> Subject: Re: Discussion of Xenheap problems on AArch64
>>
>>
>>
>> On 21/04/2021 07:28, Henry Wang wrote:
>>> Hi,
>>
>> Hi Henry,
>>
>>>
>>> We are trying to implement the static memory allocation on AArch64. Part
>> of
>>> this feature is the reserved heap memory allocation, where a specific range
>> of
>>> memory is reserved only for heap. In the development process, we found a
>>> pitfall in current AArch64 setup_xenheap_mappings() function.
>>>
>>> According to a previous discussion in community
>>> https://lore.kernel.org/xen-devel/20190216134456.10681-1-
>> peng.fan@nxp.com/,
>>> on AArch64, bootmem is initialized after setup_xenheap_mappings(),
>>> setup_xenheap_mappings() may try to allocate memory before memory
>> has been
>>> handed over to the boot allocator. If the reserved heap memory allocation
>> is
>>> introduced, either of below 2 cases will trigger a crash:
>>>
>>> 1. If the reserved heap memory is at the end of the memory block list and
>> the
>>> gap between reserved and unreserved memory is bigger than 512GB, when
>> we setup
>>> mappings from the beginning of the memory block list, we will get OOM
>> caused
>>> by lack of pages in boot allocator. This is because the memory that is
>> reserved
>>> for heap has not been mapped and added to the boot allocator.
>>>
>>> 2. If we add the memory that is reserved for heap to boot allocator first,
>> and
>>> then setup mappings for banks in the memory block list, we may get a page
>> which
>>> has not been setup mapping, causing a data abort.
>>
>> There are a few issues with setup_xenheap_mappings(). I have been
>> reworking the code on my spare time and started to upstream bits of it.
>> A PoC can be found here:
>>
>> https://xenbits.xen.org/gitweb/?p=people/julieng/xen-
>> unstable.git;a=shortlog;h=refs/heads/pt/dev
>>
> 
> Really great news! Thanks you very much for the information and your hard
> work on the PoC :) I will start to go through your PoC code then.

I spent sometimes today to clean-up the PoC and sent a series on the ML 
(see [1]). This has been lightly tested so far.

Would you be able to give a try and let me know if it helps your problem?

For convenience, I have pushed a branch with the series applied here:

https://xenbits.xen.org/gitweb/?p=people/julieng/xen-unstable.git;a=shortlog;h=refs/heads/pt/rfc-v2

Cheers,

[1] https://lore.kernel.org/xen-devel/20210425201318.15447-1-julien@xen.org/

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:32:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:32:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117362.223272 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lalQP-0004VN-K7; Sun, 25 Apr 2021 20:32:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117362.223272; Sun, 25 Apr 2021 20:32: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 1lalQP-0004Us-5d; Sun, 25 Apr 2021 20:32:17 +0000
Received: by outflank-mailman (input) for mailman id 117362;
 Sun, 25 Apr 2021 20:32: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 1lalQL-0004RP-Tj
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:32: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 1lalQL-00019x-B1; Sun, 25 Apr 2021 20:32:13 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8P-0005m7-E0; Sun, 25 Apr 2021 20:13: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:MIME-Version:
	References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=d6/VERpOpmisc9IqH4nSo3nCT42W307X8jAJ7pAR9wY=; b=QsI0i3rJK15J/0NratxUSYmB11
	vqx01X+WXK6ipXuw4wnzdoVpmp4I6SyXrpjlZ3uWaXiFaxzBYJ7MROjAr/udNlVZ+j6HoMLC89me/
	U2gp72yg8I8k7DB5XhtWB8QDPNffTJgN7DfyV3HYm8MATdClvH0+Ka/Pd4dTJNRR7cBU=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Wei Liu <wei.liu2@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Hongyan Xia <hongyxia@amazon.com>,
	Julien Grall <jgrall@amazon.com>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Hongian Xia <hongyax@amazon.com>
Subject: [PATCH RFCv2 12/15] xen/arm: add Persistent Map (PMAP) infrastructure
Date: Sun, 25 Apr 2021 21:13:15 +0100
Message-Id: <20210425201318.15447-13-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Wei Liu <wei.liu2@citrix.com>

The basic idea is like Persistent Kernel Map (PKMAP) in Linux. We
pre-populate all the relevant page tables before the system is fully
set up.

We will need it on Arm in order to rework the arm64 version of
xenheap_setup_mappings() as we may need to use pages allocated from
the boot allocator before they are effectively mapped.

This infrastructure is not lock-protected therefore can only be used
before smpboot. After smpboot, map_domain_page() has to be used.

This is based on the x86 version [1] that was originally implemented
by Wei Liu.

Take the opportunity to switch the parameter attr from unsigned to
unsigned int.

[1] <e92da4ad6015b6089737fcccba3ec1d6424649a5.1588278317.git.hongyxia@amazon.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
[julien: Adapted for Arm]
Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch

Cc: Jan Beulich <jbeulich@suse.com>
Cc: Wei Liu <wl@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Roger Pau Monné <roger.pau@citrix.com>
Cc: Hongian Xia <hongyax@amazon.com>

This is mostly a copy of the PMAP infrastructure currently discussed
on x86. The only difference is how the page-tables are updated.

I think we want to consider to provide a common infrastructure. But
I haven't done it yet to gather feedback on the overall series
first.
---
 xen/arch/arm/Makefile        |   1 +
 xen/arch/arm/mm.c            |   7 +--
 xen/arch/arm/pmap.c          | 101 +++++++++++++++++++++++++++++++++++
 xen/include/asm-arm/config.h |   2 +
 xen/include/asm-arm/lpae.h   |   8 +++
 xen/include/asm-arm/pmap.h   |  10 ++++
 6 files changed, 123 insertions(+), 6 deletions(-)
 create mode 100644 xen/arch/arm/pmap.c
 create mode 100644 xen/include/asm-arm/pmap.h

diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
index ca75f1040dcc..2196ada24941 100644
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -40,6 +40,7 @@ obj-y += percpu.o
 obj-y += platform.o
 obj-y += platform_hypercall.o
 obj-y += physdev.o
+obj-y += pmap.init.o
 obj-y += processor.o
 obj-y += psci.o
 obj-y += setup.o
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index d090fdfd5994..5e713b599611 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -288,12 +288,7 @@ void dump_hyp_walk(vaddr_t addr)
     dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1);
 }
 
-/*
- * Standard entry type that we'll use to build Xen's own pagetables.
- * We put the same permissions at every level, because they're ignored
- * by the walker in non-leaf entries.
- */
-static inline lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned attr)
+lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr)
 {
     lpae_t e = (lpae_t) {
         .pt = {
diff --git a/xen/arch/arm/pmap.c b/xen/arch/arm/pmap.c
new file mode 100644
index 000000000000..702b1bde982d
--- /dev/null
+++ b/xen/arch/arm/pmap.c
@@ -0,0 +1,101 @@
+#include <xen/init.h>
+#include <xen/mm.h>
+
+#include <asm/bitops.h>
+#include <asm/flushtlb.h>
+#include <asm/pmap.h>
+
+/*
+ * To be able to use FIXMAP_PMAP_BEGIN.
+ * XXX: move fixmap definition in a separate header
+ */
+#include <xen/acpi.h>
+
+/*
+ * Simple mapping infrastructure to map / unmap pages in fixed map.
+ * This is used to set up the page table for mapcache, which is used
+ * by map domain page infrastructure.
+ *
+ * This structure is not protected by any locks, so it must not be used after
+ * smp bring-up.
+ */
+
+/* Bitmap to track which slot is used */
+static unsigned long __initdata inuse;
+
+/* XXX: Find an header to declare it */
+extern lpae_t xen_fixmap[LPAE_ENTRIES];
+
+void *__init pmap_map(mfn_t mfn)
+{
+    unsigned long flags;
+    unsigned int idx;
+    vaddr_t linear;
+    unsigned int slot;
+    lpae_t *entry, pte;
+
+    BUILD_BUG_ON(sizeof(inuse) * BITS_PER_LONG < NUM_FIX_PMAP);
+
+    ASSERT(system_state < SYS_STATE_smp_boot);
+
+    local_irq_save(flags);
+
+    idx = find_first_zero_bit(&inuse, NUM_FIX_PMAP);
+    if ( idx == NUM_FIX_PMAP )
+        panic("Out of PMAP slots\n");
+
+    __set_bit(idx, &inuse);
+
+    slot = idx + FIXMAP_PMAP_BEGIN;
+    ASSERT(slot >= FIXMAP_PMAP_BEGIN && slot <= FIXMAP_PMAP_END);
+
+    linear = FIXMAP_ADDR(slot);
+    /*
+     * We cannot use set_fixmap() here. We use PMAP when there is no direct map,
+     * so map_pages_to_xen() called by set_fixmap() needs to map pages on
+     * demand, which then calls pmap() again, resulting in a loop. Modify the
+     * PTEs directly instead. The same is true for pmap_unmap().
+     */
+    entry = &xen_fixmap[third_table_offset(linear)];
+
+    ASSERT(!lpae_is_valid(*entry));
+
+    pte = mfn_to_xen_entry(mfn, PAGE_HYPERVISOR_RW);
+    pte.pt.table = 1;
+    write_pte(entry, pte);
+
+    local_irq_restore(flags);
+
+    return (void *)linear;
+}
+
+void __init pmap_unmap(const void *p)
+{
+    unsigned long flags;
+    unsigned int idx;
+    lpae_t *entry;
+    lpae_t pte = { 0 };
+    unsigned int slot = third_table_offset((vaddr_t)p);
+
+    ASSERT(system_state < SYS_STATE_smp_boot);
+    ASSERT(slot >= FIXMAP_PMAP_BEGIN && slot <= FIXMAP_PMAP_END);
+
+    idx = slot - FIXMAP_PMAP_BEGIN;
+    local_irq_save(flags);
+
+    __clear_bit(idx, &inuse);
+    entry = &xen_fixmap[third_table_offset((vaddr_t)p)];
+    write_pte(entry, pte);
+    flush_xen_tlb_range_va_local((vaddr_t)p, PAGE_SIZE);
+
+    local_irq_restore(flags);
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/include/asm-arm/config.h b/xen/include/asm-arm/config.h
index 85d4a510ce8a..35050855b6e1 100644
--- a/xen/include/asm-arm/config.h
+++ b/xen/include/asm-arm/config.h
@@ -180,6 +180,8 @@
 #define FIXMAP_MISC     1  /* Ephemeral mappings of hardware */
 #define FIXMAP_ACPI_BEGIN  2  /* Start mappings of ACPI tables */
 #define FIXMAP_ACPI_END    (FIXMAP_ACPI_BEGIN + NUM_FIXMAP_ACPI_PAGES - 1)  /* End mappings of ACPI tables */
+#define FIXMAP_PMAP_BEGIN (FIXMAP_ACPI_END + 1)
+#define FIXMAP_PMAP_END (FIXMAP_PMAP_BEGIN + NUM_FIX_PMAP - 1)
 
 #define NR_hypercalls 64
 
diff --git a/xen/include/asm-arm/lpae.h b/xen/include/asm-arm/lpae.h
index 310f5225e056..81fd482ab2ce 100644
--- a/xen/include/asm-arm/lpae.h
+++ b/xen/include/asm-arm/lpae.h
@@ -4,6 +4,7 @@
 #ifndef __ASSEMBLY__
 
 #include <xen/page-defs.h>
+#include <xen/mm-frame.h>
 
 /*
  * WARNING!  Unlike the x86 pagetable code, where l1 is the lowest level and
@@ -168,6 +169,13 @@ static inline bool lpae_is_superpage(lpae_t pte, unsigned int level)
         third_table_offset(addr)            \
     }
 
+/*
+ * Standard entry type that we'll use to build Xen's own pagetables.
+ * We put the same permissions at every level, because they're ignored
+ * by the walker in non-leaf entries.
+ */
+lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr);
+
 #endif /* __ASSEMBLY__ */
 
 /*
diff --git a/xen/include/asm-arm/pmap.h b/xen/include/asm-arm/pmap.h
new file mode 100644
index 000000000000..8e1dce93f8e4
--- /dev/null
+++ b/xen/include/asm-arm/pmap.h
@@ -0,0 +1,10 @@
+#ifndef __ASM_PMAP_H__
+#define __ARM_PMAP_H__
+
+/* Large enough for mapping 5 levels of page tables with some headroom */
+#define NUM_FIX_PMAP 8
+
+void *pmap_map(mfn_t mfn);
+void pmap_unmap(const void *p);
+
+#endif	/* __ASM_PMAP_H__ */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:32:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:32:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117359.223243 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lalQO-0004So-BC; Sun, 25 Apr 2021 20:32:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117359.223243; Sun, 25 Apr 2021 20: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 1lalQO-0004ST-4L; Sun, 25 Apr 2021 20:32:16 +0000
Received: by outflank-mailman (input) for mailman id 117359;
 Sun, 25 Apr 2021 20:32: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 1lalQL-0004RD-NI
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:32: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 1lalQL-00019v-8G; Sun, 25 Apr 2021 20:32:13 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8N-0005m7-4G; Sun, 25 Apr 2021 20:13: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=kyXJNvfLj/1Qpk3hX2ctxX4bb1KB1kLqdFkNoEVhegI=; b=DMPjMKHaz0psSHPwnrQmyg1DL
	5KZAnETEyRoMzMfgNqCyiOVcqcKu1W0hkOR3+LKUZ+oLcbcewEYQEtAqwwO50IMuRjtPur0d88H8y
	NL+elfsaML0BFMmROqtyeTC1Lp8vamrPgfUlhv+xqULeHNNcCEWErnA/oq7g15AaS6YZM=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <julien.grall@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH RFCv2 11/15] xen/arm: mm: Allow page-table allocation from the boot allocator
Date: Sun, 25 Apr 2021 21:13:14 +0100
Message-Id: <20210425201318.15447-12-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <julien.grall@arm.com>

At the moment, page-table can only be allocated from domheap. This means
it is not possible to create mapping in the page-tables via
map_pages_to_xen() if page-table needs to be allocated.

In order to avoid open-coding page-tables update in early boot, we need
to be able to allocate page-tables much earlier. Thankfully, we have the
boot allocator for those cases.

create_xen_table() is updated to cater early boot allocation by using
alloc_boot_pages().

Note, this is not sufficient to bootstrap the page-tables (i.e mapping
before any memory is actually mapped). This will be addressed
separately.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch
---
 xen/arch/arm/mm.c | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index ae5a07ea956b..d090fdfd5994 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -1011,19 +1011,27 @@ static void xen_unmap_table(const lpae_t *table)
 
 static int create_xen_table(lpae_t *entry)
 {
-    struct page_info *pg;
+    mfn_t mfn;
     void *p;
     lpae_t pte;
 
-    pg = alloc_domheap_page(NULL, 0);
-    if ( pg == NULL )
-        return -ENOMEM;
+    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(page_to_mfn(pg));
+    p = xen_map_table(mfn);
     clear_page(p);
     xen_unmap_table(p);
 
-    pte = mfn_to_xen_entry(page_to_mfn(pg), MT_NORMAL);
+    pte = mfn_to_xen_entry(mfn, MT_NORMAL);
     pte.pt.table = 1;
     write_pte(entry, pte);
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:32:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:32:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117358.223233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lalQO-0004S8-08; Sun, 25 Apr 2021 20:32:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117358.223233; Sun, 25 Apr 2021 20:32: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 1lalQN-0004Ry-RZ; Sun, 25 Apr 2021 20:32:15 +0000
Received: by outflank-mailman (input) for mailman id 117358;
 Sun, 25 Apr 2021 20:32: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 1lalQL-0004R4-K9
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:32: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 1lalQL-00019t-6O; Sun, 25 Apr 2021 20:32:13 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8U-0005m7-5k; Sun, 25 Apr 2021 20: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=PFAiZzvNdX0XtM/ZLCXS9tRAO1+3c66q0ERBXXoUxuU=; b=18GiCLTtl3bnQ66urZwClAPR7
	yLQ1IBqgCGqcFBm7zM/2dUEJM6KCFcBJxZ5R+qhBaRdb2XfUMOyVd/cIof87Zs21TbEYVmZloReOc
	q7H2sLamLiNK7pd4N/BIdavxN+YJKF4rOTO+A7foq6rQcSlD9vCTv3ysK1+YTVYdpQ/kA=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <julien.grall@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH RFCv2 15/15] xen/arm: mm: Re-implement setup_frame_table_mappings() with map_pages_to_xen()
Date: Sun, 25 Apr 2021 21:13:18 +0100
Message-Id: <20210425201318.15447-16-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <julien.grall@arm.com>

Now that map_pages_to_xen() has been extended to support 2MB mappings,
we can replace the create_mappings() call by map_pages_to_xen() call.

This has the advantage to remove the different between 32-bit and 64-bit
code.

Lastly remove create_mappings() as there is no more callers.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch

    TODO:
        - Add support for setting the contiguous bit
---
 xen/arch/arm/mm.c | 64 +++++------------------------------------------
 1 file changed, 6 insertions(+), 58 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index c49403b687f5..5f8ae029dd6d 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -359,40 +359,6 @@ void clear_fixmap(unsigned map)
     BUG_ON(res != 0);
 }
 
-/* Create Xen's mappings of memory.
- * Mapping_size must be either 2MB or 32MB.
- * Base and virt must be mapping_size aligned.
- * Size must be a multiple of mapping_size.
- * second must be a contiguous set of second level page tables
- * covering the region starting at virt_offset. */
-static void __init create_mappings(lpae_t *second,
-                                   unsigned long virt_offset,
-                                   unsigned long base_mfn,
-                                   unsigned long nr_mfns,
-                                   unsigned int mapping_size)
-{
-    unsigned long i, count;
-    const unsigned long granularity = mapping_size >> PAGE_SHIFT;
-    lpae_t pte, *p;
-
-    ASSERT((mapping_size == MB(2)) || (mapping_size == MB(32)));
-    ASSERT(!((virt_offset >> PAGE_SHIFT) % granularity));
-    ASSERT(!(base_mfn % granularity));
-    ASSERT(!(nr_mfns % granularity));
-
-    count = nr_mfns / LPAE_ENTRIES;
-    p = second + second_linear_offset(virt_offset);
-    pte = mfn_to_xen_entry(_mfn(base_mfn), MT_NORMAL);
-    if ( granularity == 16 * LPAE_ENTRIES )
-        pte.pt.contig = 1;  /* These maps are in 16-entry contiguous chunks. */
-    for ( i = 0; i < count; i++ )
-    {
-        write_pte(p + i, pte);
-        pte.pt.base += 1 << LPAE_SHIFT;
-    }
-    flush_xen_tlb_local();
-}
-
 #ifdef CONFIG_DOMAIN_PAGE
 void *map_domain_page_global(mfn_t mfn)
 {
@@ -850,36 +816,18 @@ void __init setup_frametable_mappings(paddr_t ps, paddr_t pe)
     unsigned long frametable_size = nr_pdxs * sizeof(struct page_info);
     mfn_t base_mfn;
     const unsigned long mapping_size = frametable_size < MB(32) ? MB(2) : MB(32);
-#ifdef CONFIG_ARM_64
-    lpae_t *second, pte;
-    unsigned long nr_second;
-    mfn_t second_base;
-    int i;
-#endif
+    int rc;
 
     frametable_base_pdx = mfn_to_pdx(maddr_to_mfn(ps));
     /* Round up to 2M or 32M boundary, as appropriate. */
     frametable_size = ROUNDUP(frametable_size, mapping_size);
     base_mfn = alloc_boot_pages(frametable_size >> PAGE_SHIFT, 32<<(20-12));
 
-#ifdef CONFIG_ARM_64
-    /* Compute the number of second level pages. */
-    nr_second = ROUNDUP(frametable_size, FIRST_SIZE) >> FIRST_SHIFT;
-    second_base = alloc_boot_pages(nr_second, 1);
-    second = mfn_to_virt(second_base);
-    for ( i = 0; i < nr_second; i++ )
-    {
-        clear_page(mfn_to_virt(mfn_add(second_base, i)));
-        pte = mfn_to_xen_entry(mfn_add(second_base, i), MT_NORMAL);
-        pte.pt.table = 1;
-        write_pte(&xen_first[first_table_offset(FRAMETABLE_VIRT_START)+i], pte);
-    }
-    create_mappings(second, 0, mfn_x(base_mfn), frametable_size >> PAGE_SHIFT,
-                    mapping_size);
-#else
-    create_mappings(xen_second, FRAMETABLE_VIRT_START, mfn_x(base_mfn),
-                    frametable_size >> PAGE_SHIFT, mapping_size);
-#endif
+    /* XXX: Handle contiguous bit */
+    rc = map_pages_to_xen(FRAMETABLE_VIRT_START, base_mfn,
+                          frametable_size >> PAGE_SHIFT, PAGE_HYPERVISOR_RW);
+    if ( rc )
+        panic("Unable to setup the frametable mappings.\n");
 
     memset(&frame_table[0], 0, nr_pdxs * sizeof(struct page_info));
     memset(&frame_table[nr_pdxs], -1,
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:32:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:32:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117357.223226 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lalQN-0004Re-Lk; Sun, 25 Apr 2021 20:32:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117357.223226; Sun, 25 Apr 2021 20:32: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 1lalQN-0004RX-Iq; Sun, 25 Apr 2021 20:32:15 +0000
Received: by outflank-mailman (input) for mailman id 117357;
 Sun, 25 Apr 2021 20:32: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 1lalQL-0004R3-KB
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:32: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 1lalQL-00019r-2B; Sun, 25 Apr 2021 20:32:13 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8L-0005m7-GV; Sun, 25 Apr 2021 20:13: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=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=MTKf2MkfWHAQW1rNB3O16F5z9jItgd6Wm5yHl60rcz0=; b=G4cjzDdnao/cYiBL47XbuXs7H
	jcxnQhIHE7VNkYj+iwSl9M8ppJlJlms/56Y8BuWXUNIKuS4swrS8gfymRWyh7URLqVBIPPRmOKRrq
	3kvfWWmum3NoGMd6aslV38Tmoj7VYoOOAnEaAlzcTsOPbL/KQJSqIVINt6GZUrLEgE7qE=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH RFCv2 10/15] xen/arm: mm: Allocate xen page tables in domheap rather than xenheap
Date: Sun, 25 Apr 2021 21:13:13 +0100
Message-Id: <20210425201318.15447-11-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

xen_{un,}map_table() already uses the helper to map/unmap pages
on-demand (note this is currently a NOP on arm64). So switching to
domheap don't have any disavantage.

But this as the benefit:
    - to keep the page tables unmapped if an arch decided to do so
    - reduce xenheap use on arm32 which can be pretty small

Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch
---
 xen/arch/arm/mm.c | 36 +++++++++++++++++++++---------------
 1 file changed, 21 insertions(+), 15 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 19ecf73542ce..ae5a07ea956b 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -969,21 +969,6 @@ void *ioremap(paddr_t pa, size_t len)
     return ioremap_attr(pa, len, PAGE_HYPERVISOR_NOCACHE);
 }
 
-static int create_xen_table(lpae_t *entry)
-{
-    void *p;
-    lpae_t pte;
-
-    p = alloc_xenheap_page();
-    if ( p == NULL )
-        return -ENOMEM;
-    clear_page(p);
-    pte = mfn_to_xen_entry(virt_to_mfn(p), MT_NORMAL);
-    pte.pt.table = 1;
-    write_pte(entry, pte);
-    return 0;
-}
-
 static lpae_t *xen_map_table(mfn_t mfn)
 {
     /*
@@ -1024,6 +1009,27 @@ static void xen_unmap_table(const lpae_t *table)
     unmap_domain_page(table);
 }
 
+static int create_xen_table(lpae_t *entry)
+{
+    struct page_info *pg;
+    void *p;
+    lpae_t pte;
+
+    pg = alloc_domheap_page(NULL, 0);
+    if ( pg == NULL )
+        return -ENOMEM;
+
+    p = xen_map_table(page_to_mfn(pg));
+    clear_page(p);
+    xen_unmap_table(p);
+
+    pte = mfn_to_xen_entry(page_to_mfn(pg), MT_NORMAL);
+    pte.pt.table = 1;
+    write_pte(entry, pte);
+
+    return 0;
+}
+
 #define XEN_TABLE_MAP_FAILED 0
 #define XEN_TABLE_SUPER_PAGE 1
 #define XEN_TABLE_NORMAL_PAGE 2
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:32:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:32:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117360.223251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lalQO-0004Ti-M1; Sun, 25 Apr 2021 20:32:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117360.223251; Sun, 25 Apr 2021 20: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 1lalQO-0004TE-EG; Sun, 25 Apr 2021 20:32:16 +0000
Received: by outflank-mailman (input) for mailman id 117360;
 Sun, 25 Apr 2021 20:32: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 1lalQL-0004RI-Nv
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:32: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 1lalQL-00019z-Ce; Sun, 25 Apr 2021 20:32:13 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8Q-0005m7-UI; Sun, 25 Apr 2021 20: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=ifKF5vlWlY6l4PDeK/yzMglzvzJIHrIdX0+DxnqU6gM=; b=aDVnd/t+JJAmjS00rJXk2q4jN
	NB5fjWXRYRB+MKeBuWXa+51DmJcKGs1okA0zWazHweIwAGmQuQ690dWiAfxlOETAZcE/HXrdIpYiR
	9ITanj2BNk+LUga8ozVtM/xy09nsQjKU+H7TSQvg2ECM433eSsnRQ4dJR1QbD5ssqU8Gw=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH RFCv2 13/15] xen/arm: mm: Use the PMAP helpers in xen_{,un}map_table()
Date: Sun, 25 Apr 2021 21:13:16 +0100
Message-Id: <20210425201318.15447-14-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <jgrall@amazon.com>

During early boot, it is not possible to use xen_{,un}map_table()
if the page tables are not residing the Xen binary.

This is a blocker to switch some of the helpers to use xen_pt_update()
as we may need to allocate extra page tables and access them before
the domheap has been initialized (see setup_xenheap_mappings()).

xen_{,un}map_table() are now updated to use the PMAP helpers for early
boot map/unmap. Note that the special case for page-tables residing
in Xen binary has been dropped because it is "complex" and was
only added as a workaround in 8d4f1b8878e0 ("xen/arm: mm: Allow
generic xen page-tables helpers to be called early").

Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch
---
 xen/arch/arm/mm.c | 33 +++++++++------------------------
 1 file changed, 9 insertions(+), 24 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 5e713b599611..f5768f2d4a81 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -41,6 +41,7 @@
 #include <xen/sizes.h>
 #include <xen/libfdt/libfdt.h>
 
+#include <asm/pmap.h>
 #include <asm/setup.h>
 
 /* Override macros from asm/page.h to make them work with mfn_t */
@@ -967,27 +968,11 @@ void *ioremap(paddr_t pa, size_t len)
 static lpae_t *xen_map_table(mfn_t mfn)
 {
     /*
-     * We may require to map the page table before map_domain_page() is
-     * useable. The requirements here is it must be useable as soon as
-     * page-tables are allocated dynamically via alloc_boot_pages().
-     *
-     * We need to do the check on physical address rather than virtual
-     * address to avoid truncation on Arm32. Therefore is_kernel() cannot
-     * be used.
+     * 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 )
-    {
-        if ( is_xen_fixed_mfn(mfn) )
-        {
-            /*
-             * It is fine to demote the type because the size of Xen
-             * will always fit in vaddr_t.
-             */
-            vaddr_t offset = mfn_to_maddr(mfn) - virt_to_maddr(&_start);
-
-            return (lpae_t *)(XEN_VIRT_START + offset);
-        }
-    }
+        return pmap_map(mfn);
 
     return map_domain_page(mfn);
 }
@@ -996,12 +981,12 @@ static void xen_unmap_table(const lpae_t *table)
 {
     /*
      * During early boot, xen_map_table() will not use map_domain_page()
-     * for page-tables residing in Xen binary. So skip the unmap part.
+     * but the PMAP.
      */
-    if ( system_state == SYS_STATE_early_boot && is_kernel(table) )
-        return;
-
-    unmap_domain_page(table);
+    if ( system_state == SYS_STATE_early_boot )
+        pmap_unmap(table);
+    else
+        unmap_domain_page(table);
 }
 
 static int create_xen_table(lpae_t *entry)
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 20:32:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 20:32:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117361.223265 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lalQP-0004UO-9Q; Sun, 25 Apr 2021 20:32:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117361.223265; Sun, 25 Apr 2021 20:32: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 1lalQO-0004U0-PL; Sun, 25 Apr 2021 20:32:16 +0000
Received: by outflank-mailman (input) for mailman id 117361;
 Sun, 25 Apr 2021 20:32: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 1lalQL-0004RN-TQ
 for xen-devel@lists.xenproject.org; Sun, 25 Apr 2021 20:32: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 1lalQL-0001A1-FU; Sun, 25 Apr 2021 20:32:13 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=ufe34d9ed68d054.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lal8S-0005m7-I0; Sun, 25 Apr 2021 20:13:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	 bh=kWwF6/XiImdq/NMXQrU9YONcKwipFpia2KSsKJxknoU=; b=fuqgFWg/KYT7rBgGpcjFUhEDq
	wF64yv2LQnpsv33Z7VtoKGU67NQb+prKwQkNbVylwDYBIAChrckdb3+aPe9pjsdONt7cI9jsj3m5/
	+KpYjEY0MTcKXzpJf2BI1nEDzCn0NunKJphZQU5WK/1shoDKv3v20HUzbRhtzhXKpJy7I=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Wei.Chen@arm.com,
	Henry.Wang@arm.com,
	Penny.Zheng@arm.com,
	Bertrand.Marquis@arm.com,
	Julien Grall <julien.grall@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH RFCv2 14/15] xen/arm: mm: Rework setup_xenheap_mappings()
Date: Sun, 25 Apr 2021 21:13:17 +0100
Message-Id: <20210425201318.15447-15-julien@xen.org>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210425201318.15447-1-julien@xen.org>
References: <20210425201318.15447-1-julien@xen.org>

From: Julien Grall <julien.grall@arm.com>

A few issues have been reported with setup_xenheap_mappings() over the
last couple of years. The main ones are:
    - It will break on platform supporting more than 512GB of RAM
      because the memory allocated by the boot allocator is not yet
      mapped.
    - Aligning all the regions to 1GB may lead to unexpected result
      because we may alias non-cacheable region (such as device or reserved
      regions).

map_pages_to_xen() was recently reworked to allow superpage mappings and
deal with the use of page-tables before they are mapped.

Most of the code in setup_xenheap_mappings() is now replaced with a
single call to map_pages_to_xen().

This also require to re-order the steps setup_mm() so the regions are
given to the boot allocator first and then we setup the xenheap
mappings.

Note that the 1GB alignment is not yet removed.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>

---
    Changes in v2:
        - New patch

    TODO:
        - Remove the 1GB alignment
        - Add support for setting the contiguous bit
---
 xen/arch/arm/mm.c    | 60 ++++----------------------------------------
 xen/arch/arm/setup.c | 10 ++++++--
 2 files changed, 13 insertions(+), 57 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index f5768f2d4a81..c49403b687f5 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -143,17 +143,6 @@ static DEFINE_PAGE_TABLE(cpu0_pgtable);
 static DEFINE_PAGE_TABLES(cpu0_dommap, DOMHEAP_SECOND_PAGES);
 #endif
 
-#ifdef CONFIG_ARM_64
-/* The first page of the first level mapping of the xenheap. The
- * subsequent xenheap first level pages are dynamically allocated, but
- * we need this one to bootstrap ourselves. */
-static DEFINE_PAGE_TABLE(xenheap_first_first);
-/* The zeroeth level slot which uses xenheap_first_first. Used because
- * setup_xenheap_mappings otherwise relies on mfn_to_virt which isn't
- * valid for a non-xenheap mapping. */
-static __initdata int xenheap_first_first_slot = -1;
-#endif
-
 /* Common pagetable leaves */
 /* Second level page tables.
  *
@@ -818,9 +807,9 @@ void __init setup_xenheap_mappings(unsigned long base_mfn,
 void __init setup_xenheap_mappings(unsigned long base_mfn,
                                    unsigned long nr_mfns)
 {
-    lpae_t *first, pte;
     unsigned long mfn, end_mfn;
     vaddr_t vaddr;
+    int rc;
 
     /* Align to previous 1GB boundary */
     mfn = base_mfn & ~((FIRST_SIZE>>PAGE_SHIFT)-1);
@@ -846,49 +835,10 @@ void __init setup_xenheap_mappings(unsigned long base_mfn,
      */
     vaddr = (vaddr_t)__mfn_to_virt(base_mfn) & FIRST_MASK;
 
-    while ( mfn < end_mfn )
-    {
-        int slot = zeroeth_table_offset(vaddr);
-        lpae_t *p = &xen_pgtable[slot];
-
-        if ( p->pt.valid )
-        {
-            /* mfn_to_virt is not valid on the 1st 1st mfn, since it
-             * is not within the xenheap. */
-            first = slot == xenheap_first_first_slot ?
-                xenheap_first_first : mfn_to_virt(lpae_get_mfn(*p));
-        }
-        else if ( xenheap_first_first_slot == -1)
-        {
-            /* Use xenheap_first_first to bootstrap the mappings */
-            first = xenheap_first_first;
-
-            pte = pte_of_xenaddr((vaddr_t)xenheap_first_first);
-            pte.pt.table = 1;
-            write_pte(p, pte);
-
-            xenheap_first_first_slot = slot;
-        }
-        else
-        {
-            mfn_t first_mfn = alloc_boot_pages(1, 1);
-
-            clear_page(mfn_to_virt(first_mfn));
-            pte = mfn_to_xen_entry(first_mfn, MT_NORMAL);
-            pte.pt.table = 1;
-            write_pte(p, pte);
-            first = mfn_to_virt(first_mfn);
-        }
-
-        pte = mfn_to_xen_entry(_mfn(mfn), MT_NORMAL);
-        /* TODO: Set pte.pt.contig when appropriate. */
-        write_pte(&first[first_table_offset(vaddr)], pte);
-
-        mfn += FIRST_SIZE>>PAGE_SHIFT;
-        vaddr += FIRST_SIZE;
-    }
-
-    flush_xen_tlb_local();
+    rc = map_pages_to_xen(vaddr, _mfn(mfn), end_mfn - mfn,
+                          PAGE_HYPERVISOR_RW | _PAGE_BLOCK);
+    if ( rc )
+        panic("Unable to setup the xenheap mappings.\n");
 }
 #endif
 
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 00aad1c194b9..0993a4bb52d4 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -761,8 +761,11 @@ static void __init setup_mm(void)
         ram_start = min(ram_start,bank_start);
         ram_end = max(ram_end,bank_end);
 
-        setup_xenheap_mappings(bank_start>>PAGE_SHIFT, bank_size>>PAGE_SHIFT);
-
+        /*
+         * Add the region to the boot allocator first, so we can use
+         * some to allocate page-tables for setting up the xenheap
+         * mappings.
+         */
         s = bank_start;
         while ( s < bank_end )
         {
@@ -781,6 +784,9 @@ static void __init setup_mm(void)
             fw_unreserved_regions(s, e, init_boot_pages, 0);
             s = n;
         }
+
+        setup_xenheap_mappings(bank_start >> PAGE_SHIFT,
+                               bank_size >> PAGE_SHIFT);
     }
 
     total_pages += ram_size >> PAGE_SHIFT;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Sun Apr 25 22:02:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 25 Apr 2021 22:02:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117402.223299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lamp0-0004kR-OQ; Sun, 25 Apr 2021 22:01:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117402.223299; Sun, 25 Apr 2021 22:01: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 1lamp0-0004kK-Kw; Sun, 25 Apr 2021 22:01:46 +0000
Received: by outflank-mailman (input) for mailman id 117402;
 Sun, 25 Apr 2021 22:01: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 1lamoz-0004jR-Dh; Sun, 25 Apr 2021 22:01: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 1lamoz-0002ey-6A; Sun, 25 Apr 2021 22:01: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 1lamoy-0008UT-Ow; Sun, 25 Apr 2021 22:01:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lamoy-0004P9-ON; Sun, 25 Apr 2021 22:01: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=4WxO3qF/ig2fzyode7rf58iJpA8Ket+nAiM+Db6mspw=; b=yJqqDncY29IAko/Sq0KFFeEbof
	ueP4GOKvzVpWZqzWPCz4ToEalh1pLjcJcIzpyYZ1S6IkqswVd/VV4aOhHeR8n9230/MsNFgvn0ODC
	UfNO8EDQbjnId95COJMeNfEhDKdcOhwBqVuA0JFEXZjSaV/dTz856+vcqVKmU00NHyh0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161444-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161444: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-raw:guest-start/debian.repeat:fail:heisenbug
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=ffa090bc56e73e287a63261e70ac02c0970be61a
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 25 Apr 2021 22:01:44 +0000

flight 161444 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161444/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-raw       21 guest-start/debian.repeat  fail pass in 161434

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                ffa090bc56e73e287a63261e70ac02c0970be61a
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  248 days
Failing since        152659  2020-08-21 14:07:39 Z  247 days  455 attempts
Testing same since   161419  2021-04-24 00:07:02 Z    1 days    3 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 143011 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 00:24:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 00:24:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117423.223320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lap2m-00017I-M5; Mon, 26 Apr 2021 00:24:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117423.223320; Mon, 26 Apr 2021 00:24: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 1lap2m-00017B-Ir; Mon, 26 Apr 2021 00:24:08 +0000
Received: by outflank-mailman (input) for mailman id 117423;
 Mon, 26 Apr 2021 00:24:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lap2k-000173-Gu; Mon, 26 Apr 2021 00:24:06 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lap2k-0005V6-C1; Mon, 26 Apr 2021 00:24:06 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lap2k-0007fD-0e; Mon, 26 Apr 2021 00:24:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lap2k-00043n-0B; Mon, 26 Apr 2021 00:24: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=LNwvX6/NH8qJ0WOf1PJhoGoTBz6yX1YAv3aNNy1N+50=; b=L+y7V8e9IrDYGgiLSiCqikvNML
	07SrpocWuAa0Avrde4xGuBNmzQ5ROh34oSeEzTtDKmUeXgI9AgZ+QFEdGIFnlNIbvq2myA5Jg+X+9
	g3DeJ2ZED7Nt3tvJ7L6USv9SWoJdMT3QVoDewPTPHk1q7D6SUksD95BJXUtQZ5HYp7zs=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161446-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161446: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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: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-amd64-amd64-libvirt-vhd: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: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-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2: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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2a1d7946fa53cea2083e5981ff55a8176ab2be6b
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 00:24:06 +0000

flight 161446 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161446/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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          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-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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

version targeted for testing:
 linux                2a1d7946fa53cea2083e5981ff55a8176ab2be6b
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  268 days
Failing since        152366  2020-08-01 20:49:34 Z  267 days  448 attempts
Testing same since   161437  2021-04-24 21:42:10 Z    1 days    2 attempts

------------------------------------------------------------
5357 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1330275 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 03:48:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 03:48:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117436.223341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lasEH-0000ON-FF; Mon, 26 Apr 2021 03:48:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117436.223341; Mon, 26 Apr 2021 03: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 1lasEH-0000OE-7L; Mon, 26 Apr 2021 03:48:13 +0000
Received: by outflank-mailman (input) for mailman id 117436;
 Mon, 26 Apr 2021 03:48:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ltoc=JX=invisiblethingslab.com=marmarek@srs-us1.protection.inumbo.net>)
 id 1lasEF-0000O6-P4
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 03:48:11 +0000
Received: from out2-smtp.messagingengine.com (unknown [66.111.4.26])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9095dbae-5d5d-4f96-b99b-98b77f4501ce;
 Mon, 26 Apr 2021 03:48:08 +0000 (UTC)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id 9A8B65C0078;
 Sun, 25 Apr 2021 23:48:08 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute3.internal (MEProxy); Sun, 25 Apr 2021 23:48:08 -0400
Received: from localhost.localdomain (ip5b434f04.dynamic.kabel-deutschland.de
 [91.67.79.4])
 by mail.messagingengine.com (Postfix) with ESMTPA id A6E71240057;
 Sun, 25 Apr 2021 23:48:07 -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: 9095dbae-5d5d-4f96-b99b-98b77f4501ce
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-transfer-encoding:content-type
	:date:from:message-id:mime-version:subject:to:x-me-proxy
	:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=g3BlWP
	aDuhYbF02cJ6YoeePymT94Qfj0PRakYSq2bxw=; b=PNBptw/QQT8lCwmC0Mn/o0
	xXYNhh9jv65KPbHvD6qTPe+3198OwdipKkpiJhJaFghdoxKL2rXg82/2nARlMIQD
	61z92iBLJlkKE5OC4JPod/cSwFCMLVUPJ2tltu+7VK03Dk95ofXGiJBCK1DPOCHa
	mk+PTlUqfi+Ioyc9432cWeQe/8eHOYVTfclhk1LuJlQtvvxRL7BtQ94tZ1/Cw9dI
	wIuArOMXXsN0MHlbV0fSRLfgACsFL6HI5EV5eKxxilAoWihwKAn+qhLhqyEM8wC2
	3C8Dw2MugKJR+y0F4jhQx68HuqYh/KNe+T1yJ+q5QLmbTi8v33nqQ5YSsprVVK3A
	==
X-ME-Sender: <xms:-DeGYKtwHWCTAFZvSuVHKhdBl4W7TCXpvZ59rEirOvjbPECRlwYDMg>
    <xme:-DeGYPe2XM_IRdHwR-jf9F3QuZ8M47WiYqrzbN3cGhF4txjcq9XPTSpr4FP7KXCbi
    yjZKmPkFOo6Ug>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvddujedgjeegucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkofggtghogfesthekre
    dtredtjeenucfhrhhomhepofgrrhgvkhcuofgrrhgtiiihkhhofihskhhiqdfikphrvggt
    khhiuceomhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
    eqnecuggftrfgrthhtvghrnhephefhfeetueelvddvtedttdevieeluedtvedtfeejieel
    hedutdeuheduieejgfegnecuffhomhgrihhnpehkvghrnhgvlhdrohhrghenucfkpheple
    durdeijedrjeelrdegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghi
    lhhfrhhomhepmhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtg
    homh
X-ME-Proxy: <xmx:-DeGYFwp8Gv-mQfG9HsP2DIaCapDgasBkUij_-MKuh2S_A9oDD7gFw>
    <xmx:-DeGYFOwHegGMcKXwH3B9cytPLXUJti4d2zZkKxXkdDOS7Kx4kJTZw>
    <xmx:-DeGYK9p1kNEy35qL_JRyEK8OWzHoiMm5IuRLOyb1t_VkCOmMy7Sxw>
    <xmx:-DeGYLIxDpt0H1Ujid8eyf3LaL3PjbaT95R7DGAEqQUAze_McSEWbA>
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: qemu-devel@nongnu.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH] i386: load kernel on xen using DMA
Date: Mon, 26 Apr 2021 05:47:10 +0200
Message-Id: <20210426034709.595432-1-marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.26.3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Organization: Invisible Things Lab
Content-Transfer-Encoding: 8bit

Kernel on Xen is loaded via fw_cfg. Previously it used non-DMA version,
which loaded the kernel (and initramfs) byte by byte. Change this
to DMA, to load in bigger chunks.
This change alone reduces load time of a (big) kernel+initramfs from
~10s down to below 1s.

This change was suggested initially here:
https://lore.kernel.org/xen-devel/20180216204031.000052e9@gmail.com/
Apparently this alone is already enough to get massive speedup.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 hw/i386/pc.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 8a84b25a03..14e43d4da4 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -839,7 +839,8 @@ void xen_load_linux(PCMachineState *pcms)
 
     assert(MACHINE(pcms)->kernel_filename != NULL);
 
-    fw_cfg = fw_cfg_init_io(FW_CFG_IO_BASE);
+    fw_cfg = fw_cfg_init_io_dma(FW_CFG_IO_BASE, FW_CFG_IO_BASE + 4,
+                                &address_space_memory);
     fw_cfg_add_i16(fw_cfg, FW_CFG_NB_CPUS, x86ms->boot_cpus);
     rom_set_fw(fw_cfg);
 
-- 
2.26.3



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 04:42:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 04:42:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117442.223353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lat51-00062Q-C7; Mon, 26 Apr 2021 04:42:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117442.223353; Mon, 26 Apr 2021 04: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 1lat51-00062J-7T; Mon, 26 Apr 2021 04:42:43 +0000
Received: by outflank-mailman (input) for mailman id 117442;
 Mon, 26 Apr 2021 04:42: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 1lat4z-00062A-Td; Mon, 26 Apr 2021 04:42: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 1lat4z-00088H-IF; Mon, 26 Apr 2021 04:42: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 1lat4z-0005Oc-7G; Mon, 26 Apr 2021 04:42:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lat4z-0000d1-6m; Mon, 26 Apr 2021 04:42: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=Cc+gL7hCRKZSwc3n2DJkq27Kn9H7uLcik4mFU4nKCUM=; b=pFksPN0N6jiRRBqH8CYYknJseK
	bYYdg9Rou7yl1UeFZSFwIKMnUVFzzleTB8qZaIR9dptcjR4FVLwQnuMhCrD77ioh2gBB9TatIpHos
	0gxNzqSOX4c2YHHGEBSkh0BUofiTXrYH/Z4tx/HOS7dRwms/mHHDYvzgRBq4LvyUu76I=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161451-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161451: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-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-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-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-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-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-amd64-libvirt-vhd: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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    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-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
X-Osstest-Versions-This:
    xen=ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
X-Osstest-Versions-That:
    xen=bea65a212c0581520203b6ad0d07615693f42f73
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 04:42:41 +0000

flight 161451 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161451/

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 161439
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161439
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161439
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161439
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161439
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161439
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161439
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161439
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161439
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161439
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161439
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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

version targeted for testing:
 xen                  ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
baseline version:
 xen                  bea65a212c0581520203b6ad0d07615693f42f73

Last test of basis   161439  2021-04-25 01:52:38 Z    1 days
Testing same since   161451  2021-04-25 16:07:40 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   bea65a212c..ab392969ea  ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed -> master


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 06:16:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 06:16:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117451.223375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lauXe-0006I5-EU; Mon, 26 Apr 2021 06:16:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117451.223375; Mon, 26 Apr 2021 06: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 1lauXe-0006Hy-Bf; Mon, 26 Apr 2021 06:16:22 +0000
Received: by outflank-mailman (input) for mailman id 117451;
 Mon, 26 Apr 2021 06:16:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=bjrt=JX=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1lauXc-0006Ht-OS
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 06:16:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2c42e720-8fe3-4808-9dbe-98bbf88ce4f5;
 Mon, 26 Apr 2021 06:16:20 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 27CC7B016;
 Mon, 26 Apr 2021 06:16:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2c42e720-8fe3-4808-9dbe-98bbf88ce4f5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619417779; 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=50i75pznbchD9PzeshpgAZn1yFWSGeZXlL3S4MIsCwc=;
	b=YFGc+VpqKy1DNcwLyhrCIugzaI8AL2Pqe30J3GpQ4k10+E+vwXIY4ccjo9Maqd6gV++swC
	Q50/agexbloedjEiMfx5wCI2NDsliVsKmLjIE+QIzrUNoV2HBzzFx9SZNlXdrsecmwjZk3
	hdkXjZrG17jo3tJkiBsOq2XRY8FKhFU=
From: Juergen Gross <jgross@suse.com>
To: torvalds@linux-foundation.org
Cc: linux-kernel@vger.kernel.org,
	xen-devel@lists.xenproject.org,
	boris.ostrovsky@oracle.com
Subject: [GIT PULL] xen: branch for v5.13-rc1
Date: Mon, 26 Apr 2021 08:16:18 +0200
Message-Id: <20210426061618.22978-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Linus,

Please git pull the following tag:

 git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-5.13-rc1-tag

xen: branch for v5.13-rc1

It contains:

- A patch for removing some PV ACPI cpu/memory hotplug code which has
  been broken for a long time.

- A patch supporting direct mapped guests (other than dom0) on Arm.

- Several small fixes and cleanups.


Thanks.

Juergen

 arch/arm/include/asm/xen/swiotlb-xen.h   |   1 +
 arch/arm/xen/mm.c                        |  14 +-
 arch/arm64/include/asm/xen/swiotlb-xen.h |   1 +
 arch/arm64/mm/dma-mapping.c              |   2 +-
 drivers/block/xen-blkback/common.h       |   1 +
 drivers/block/xen-blkback/xenbus.c       |  38 ++-
 drivers/block/xen-blkfront.c             |   2 +-
 drivers/xen/Kconfig                      |  31 --
 drivers/xen/Makefile                     |   3 -
 drivers/xen/pcpu.c                       |  35 ---
 drivers/xen/xen-acpi-cpuhotplug.c        | 446 -----------------------------
 drivers/xen/xen-acpi-memhotplug.c        | 475 -------------------------------
 drivers/xen/xen-pciback/pci_stub.c       |   6 +-
 drivers/xen/xen-pciback/vpci.c           |   7 +-
 drivers/xen/xen-stub.c                   |  90 ------
 include/xen/acpi.h                       |  35 ---
 include/xen/arm/swiotlb-xen.h            |   7 +
 include/xen/interface/features.h         |  14 +
 include/xen/swiotlb-xen.h                |   1 +
 19 files changed, 60 insertions(+), 1149 deletions(-)

Bjorn Helgaas (1):
      xen-blkfront: Fix 'physical' typos

Boris Ostrovsky (1):
      xen: Remove support for PV ACPI cpu/memory hotplug

Jan Beulich (1):
      xen-pciback: simplify vpci's find hook

Muhammad Usama Anjum (1):
      xen/pciback: Fix incorrect type warnings

Paul Durrant (1):
      xen-blkback: fix compatibility bug with single page rings

Stefano Stabellini (1):
      xen/arm: introduce XENFEAT_direct_mapped and XENFEAT_not_direct_mapped


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 07:12:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 07:12:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117458.223387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lavPz-0003Fo-Pl; Mon, 26 Apr 2021 07:12:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117458.223387; Mon, 26 Apr 2021 07: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 1lavPz-0003Fh-Ms; Mon, 26 Apr 2021 07:12:31 +0000
Received: by outflank-mailman (input) for mailman id 117458;
 Mon, 26 Apr 2021 07:12:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8ADy=JX=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lavPy-0003Fc-7b
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 07:12:30 +0000
Received: from mail-wr1-x432.google.com (unknown [2a00:1450:4864:20::432])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 07782790-0018-4b62-a835-50fc3efa1caf;
 Mon, 26 Apr 2021 07:12:29 +0000 (UTC)
Received: by mail-wr1-x432.google.com with SMTP id r7so42593519wrm.1
 for <xen-devel@lists.xenproject.org>; Mon, 26 Apr 2021 00:12:29 -0700 (PDT)
Received: from [192.168.1.186]
 (host86-180-176-157.range86-180.btcentralplus.com. [86.180.176.157])
 by smtp.gmail.com with ESMTPSA id y19sm19010159wmj.28.2021.04.26.00.12.27
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 26 Apr 2021 00:12: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: 07782790-0018-4b62-a835-50fc3efa1caf
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=s8szxA9dFUURpU5en1n24UwJUZgqcgS6Nfs5tFCES68=;
        b=fyNqDknePLC4+sBCVGj2WeWtGJgzvtzprH3opL3k7AyZZQkMI4faZqdUZ2Uavm7t73
         tBqcyUOVcJ68NrLaPuUnVp/QTHThuCyzddbVqFZFrxRGbtT1CCOvAzjz1y/oqSRoRbgq
         W/tZ7+VMS0ZHaO+a/qEJ4HBBP8rjHVY5Dn9hlD4hAknVk8Aj79ztIybhZGy+2DO7F8zr
         J1dz8MzqCHvksvRpDwD3Mi7o8con4wvLFOitT2bwVF73RIu/6n6X4RYqobPUV4yASeAx
         PGRNiTVnDAKt4i4QkPhbgtv02Wlk1TbmbdIRz9MtH+iocVO/wlsZYmpaAxC28VK0prgL
         UPsQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=s8szxA9dFUURpU5en1n24UwJUZgqcgS6Nfs5tFCES68=;
        b=trnT60ERkBUfqzf4mC2EzZsxuFdGy6Y7t3uZxp0auULWjgpoMEaaTHp3vZaGahHHnW
         5hw6eJJrfFYQeSaPB8MbzawJ4jwb4Ko293dIrNzSDSpdchb9yh+1oqBdM46nSrOZgmJn
         +KRiaH7gETX0p9+YcSDBWJXB/S41nQ/s9RNoN4VJRWJKaAg6rZi2J2pRxu5yyJo84jrV
         u5BFIWb1yxXKfdalStWad4+Ta4CzQJG0d5QwttNveIkZrBFP9Inuc+UfQGnuWUl/ZaBo
         N+12xPHWTmu+qgGTcI250LKxBkvhFmZ1PRPLNRicx2/GzRecJjd3EHyj5Zb0ryRi7q3E
         wX5w==
X-Gm-Message-State: AOAM53261OdJ8HRGnZD+3IbbyWEK+qdUPCWgTr6dx9GPMHKH9w2OMzYC
	DlJ6vyrAVHl8kfSxBejbmEHDRai/rlo=
X-Google-Smtp-Source: ABdhPJxkVvzKIbfRUpCXRCun+Y24dK4Z6JqTpvyL4srfmvuFbOtQVcy0IHPn+Qv4p7bN+eKO52xQLw==
X-Received: by 2002:a5d:6d0a:: with SMTP id e10mr21450736wrq.161.1619421148354;
        Mon, 26 Apr 2021 00:12:28 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 19/22] x86emul: support TILELOADD{,T1} and TILESTORE
To: xen-devel@lists.xenproject.org
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
 <fc272d90-9a3c-98e9-d811-ea9b70f89e22@suse.com>
 <6b604011-a618-871a-2a3e-9118dd1b702b@suse.com>
 <c63e6988-196d-ab7c-5971-611eba99a7d6@suse.com>
Message-ID: <3c1d6f14-b091-6244-0ef0-3925601c770d@xen.org>
Date: Mon, 26 Apr 2021 08:12:27 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <c63e6988-196d-ab7c-5971-611eba99a7d6@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 22/04/2021 16:11, Jan Beulich wrote:
> On 22.04.2021 17:06, Jan Beulich wrote:
>> On 22.04.2021 16:55, Jan Beulich wrote:
>>> +        do {
>>> +            /* Limit rows to just as many to cover the next one to access. */
>>> +            cfg->start_row = i;
>>> +            cfg->rows[modrm_reg] = i + 1;
>>> +            write_tilecfg(cfg);
>>> +
>>> +            if ( vex.pfx != vex_f3 )
>>> +                rc = ops->read(ea.mem.seg,
>>> +                               truncate_ea(ea.mem.off + i * ea.val),
>>> +                               row, cfg->colsb[modrm_reg], ctxt);
>>> +
>>> +            invoke_stub("", "", "=m" (dummy) : "a" (row));
>>> +
>>> +            if ( vex.pfx == vex_f3 )
>>> +                rc = ops->write(ea.mem.seg,
>>> +                                truncate_ea(ea.mem.off + i * ea.val),
>>> +                                row, cfg->colsb[modrm_reg], ctxt);
>>> +        } while ( rc == X86EMUL_OKAY && ++i < n );
>>
>> in principle tiles could have rows larger than 64 bytes without any
>> separate CPUID feature flag qualifying this. struct hvm_mmio_cache,
>> otoh, is having a fixed-size 64-byte buffer right now. Therefore I'm
>> wondering whether we'd want to switch to dynamically allocating that
>> to the minimum of 64 bytes and the size of a tile row, just as a
>> precautionary measure.
> 
> Actually, as it occurred to me only after sending, enlarging tile size
> would under almost all circumstances require a new XSTATE component,
> which we'd need to enable first. I consider it less likely that they'd
> permit a wider range of layouts without increasing tile size. But we
> might still want to play safe.
> 

I guess on-demand reallocation to a larger size would be fine. Certainly 
we want to be sure we don't overflow.

   Paul

> Jan
> 



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 07:49:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 07:49:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117479.223400 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lavzZ-0006Em-P0; Mon, 26 Apr 2021 07:49:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117479.223400; Mon, 26 Apr 2021 07: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 1lavzZ-0006Ef-Lt; Mon, 26 Apr 2021 07:49:17 +0000
Received: by outflank-mailman (input) for mailman id 117479;
 Mon, 26 Apr 2021 07:49:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=l+oD=JX=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lavzY-0006Ea-CQ
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 07:49:16 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3c2fc105-64e5-429a-9c02-0b7d03a9dbee;
 Mon, 26 Apr 2021 07:49:15 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8AAECB005;
 Mon, 26 Apr 2021 07:49: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: 3c2fc105-64e5-429a-9c02-0b7d03a9dbee
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619423354; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=q6Z72miestu9ihm0WvJW4RRO+RGPuGjuzeLPySU/wqc=;
	b=OR88A73DBSRXH32WiuIQ4bxGU27R4iJI5c5n2OCdK6heV0mFSL/3LDqt6KJMUWZcvFSHB8
	vdBMLga/14TczSoLLPGC8JBf4El2tWkSxU22viBdUXes2VGUXxKlv77xjDxMTc1EMG97Aa
	DzUBrOZGT7+qOJE3bQkEgjkEVIoshaY=
Subject: Re: [PATCH v2] x86/oprofile: remove compat accessors usage from
 backtrace
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: <20210423143755.12189-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e2f1f3a6-ca54-7459-c60e-ff02e6857b17@suse.com>
Date: Mon, 26 Apr 2021 09:49:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210423143755.12189-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 23.04.2021 16:37, Roger Pau Monne wrote:
> Remove the unneeded usage of the compat layer to copy frame pointers
> from guest address space. Instead just use raw_copy_from_guest.
> 
> While there drop the checks for the accessibility of one struct
> frame_head beyond the current one: it's not clear why it's needed and
> all the hypnoses point to dropping such check being harmless. The

DYM "hypotheses"?

> worse that could happen is that a failure happens later if data past
> frame_head is attempted to be fetched, albeit I'm not able to spot any
> such access.
> 
> Also drop the explicit truncation of the head pointer in the 32bit
> case as all callers already pass a zero extended value. The first
> value being rsp from the guest registers,

While I know I'm guilty of splitting hair saying so, I'd like to point
out that I'm unaware of guarantees that the upper halves of GPRs are
zero after a switch from compat to 64-bit mode. With this I'm also
unconvinced there are guarantees that the %rsp stored into a stack
frame is actually guaranteed to be zero-extended. Nevertheless I'm not
meaning this remark to keep the change from going in as is - for all
practical purposes what you say is presumably true.

What I would consider nice though is if the two remaining if() could
be corrected for coding style: Adjacent code is already inconsistent,
so taking the opportunity to move it a little in the right direction
would seem desirable to me. (I would suggest doing so myself while
committing, but because I don't fully agree with dropping the 2-frame
checks described further up without properly understanding why they're
there, I'd like to not put my name on this change in any way, not even
just as committer. But I guess Andrew or Wei or whoever ends up
committing this could do so, as long as they agree of course.)

Jan

> and further calls will use ebp from frame_head_32bit struct.
> 
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> Changes since v2:
>  - Expand commit message.
> ---
>  xen/arch/x86/oprofile/backtrace.c | 26 +++-----------------------
>  1 file changed, 3 insertions(+), 23 deletions(-)
> 
> diff --git a/xen/arch/x86/oprofile/backtrace.c b/xen/arch/x86/oprofile/backtrace.c
> index bd5d1b0f6ce..45f7fb65fa2 100644
> --- a/xen/arch/x86/oprofile/backtrace.c
> +++ b/xen/arch/x86/oprofile/backtrace.c
> @@ -20,7 +20,6 @@ struct __packed frame_head {
>      unsigned long ret;
>  };
>  typedef struct frame_head frame_head_t;
> -DEFINE_XEN_GUEST_HANDLE(frame_head_t);
>  
>  struct __packed frame_head_32bit {
>      uint32_t ebp;
> @@ -43,7 +42,6 @@ dump_hypervisor_backtrace(struct vcpu *vcpu, const struct frame_head *head,
>      return head->ebp;
>  }
>  
> -#ifdef CONFIG_COMPAT
>  static inline int is_32bit_vcpu(struct vcpu *vcpu)
>  {
>      if (is_hvm_vcpu(vcpu))
> @@ -51,7 +49,6 @@ static inline int is_32bit_vcpu(struct vcpu *vcpu)
>      else
>          return is_pv_32bit_vcpu(vcpu);
>  }
> -#endif
>  
>  static struct frame_head *
>  dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
> @@ -59,34 +56,17 @@ dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
>  {
>      frame_head_t bufhead;
>  
> -#ifdef CONFIG_COMPAT
>      if ( is_32bit_vcpu(vcpu) )
>      {
> -        DEFINE_COMPAT_HANDLE(frame_head32_t);
> -        __compat_handle_const_frame_head32_t guest_head =
> -            { .c = (unsigned long)head };
>          frame_head32_t bufhead32;
>  
> -        /* Also check accessibility of one struct frame_head beyond */
> -        if (!compat_handle_okay(guest_head, 2))
> -            return 0;
> -        if (__copy_from_compat(&bufhead32, guest_head, 1))
> +        if (raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)))
>              return 0;
>          bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
>          bufhead.ret = bufhead32.ret;
>      }
> -    else
> -#endif
> -    {
> -        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
> -            const_guest_handle_from_ptr(head, frame_head_t);
> -
> -        /* Also check accessibility of one struct frame_head beyond */
> -        if (!guest_handle_okay(guest_head, 2))
> -            return 0;
> -        if (__copy_from_guest(&bufhead, guest_head, 1))
> -            return 0;
> -    }
> +    else if (raw_copy_from_guest(&bufhead, head, sizeof(bufhead)))
> +        return 0;
>      
>      if (!xenoprof_add_trace(vcpu, bufhead.ret, mode))
>          return 0;
> 



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 09:42:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 09:42:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117526.223446 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laxkb-0000fy-Dk; Mon, 26 Apr 2021 09:41:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117526.223446; Mon, 26 Apr 2021 09:41: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 1laxkb-0000fr-9Z; Mon, 26 Apr 2021 09:41:57 +0000
Received: by outflank-mailman (input) for mailman id 117526;
 Mon, 26 Apr 2021 09:41:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=mXBP=JX=amazon.com=prvs=74380e36c=hongyxia@srs-us1.protection.inumbo.net>)
 id 1laxka-0000fm-Mc
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 09:41:56 +0000
Received: from smtp-fw-4101.amazon.com (unknown [72.21.198.25])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 71f77170-66e2-478b-8dcf-df5a3c4a83c2;
 Mon, 26 Apr 2021 09:41:54 +0000 (UTC)
Received: from iad12-co-svc-p1-lb1-vlan3.amazon.com (HELO
 email-inbound-relay-1d-2c665b5d.us-east-1.amazon.com) ([10.43.8.6])
 by smtp-border-fw-4101.iad4.amazon.com with ESMTP; 26 Apr 2021 09:41:48 +0000
Received: from EX13D37EUA003.ant.amazon.com
 (iad12-ws-svc-p26-lb9-vlan3.iad.amazon.com [10.40.163.38])
 by email-inbound-relay-1d-2c665b5d.us-east-1.amazon.com (Postfix) with ESMTPS
 id D46B5A1D41; Mon, 26 Apr 2021 09:41:43 +0000 (UTC)
Received: from EX13D37EUA003.ant.amazon.com (10.43.165.7) by
 EX13D37EUA003.ant.amazon.com (10.43.165.7) with Microsoft SMTP Server (TLS)
 id 15.0.1497.2; Mon, 26 Apr 2021 09:41:42 +0000
Received: from EX13D37EUA003.ant.amazon.com ([10.43.165.7]) by
 EX13D37EUA003.ant.amazon.com ([10.43.165.7]) with mapi id 15.00.1497.015;
 Mon, 26 Apr 2021 09:41:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 71f77170-66e2-478b-8dcf-df5a3c4a83c2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
  d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209;
  t=1619430115; x=1650966115;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-id:content-transfer-encoding:
   mime-version;
  bh=JQi79qMmHO7NYKbh8fcMxghGDhxN/rf8QDLGHzK2lV0=;
  b=g0V7h4cjRq654J3QbU/rbkHtfmq388yN09r9v13qrtwxuRBCzj0csxg+
   yIBRnw3CiWTQ5oqbP7mV9ITBn+XrbLvHMrD41vLy72hl5/+ALBazO0yXE
   QEsot2mxQTy2nxspe7CJg9YJScwIwwC6LQ4/ga+xo9kUQ2PuBmtRbyfev
   Y=;
X-IronPort-AV: E=Sophos;i="5.82,252,1613433600"; 
   d="scan'208";a="103927592"
From: "Xia, Hongyan" <hongyxia@amazon.com>
To: "julien@xen.org" <julien@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: "Penny.Zheng@arm.com" <Penny.Zheng@arm.com>, "Bertrand.Marquis@arm.com"
	<Bertrand.Marquis@arm.com>, "Wei.Chen@arm.com" <Wei.Chen@arm.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>, "wei.liu2@citrix.com"
	<wei.liu2@citrix.com>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, "roger.pau@citrix.com" <roger.pau@citrix.com>,
	"Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>,
	"hongyax@amazon.com" <hongyax@amazon.com>, "Henry.Wang@arm.com"
	<Henry.Wang@arm.com>, "wl@xen.org" <wl@xen.org>, "Grall, Julien"
	<jgrall@amazon.co.uk>, "jbeulich@suse.com" <jbeulich@suse.com>
Subject: Re: [PATCH RFCv2 12/15] xen/arm: add Persistent Map (PMAP)
 infrastructure
Thread-Topic: [PATCH RFCv2 12/15] xen/arm: add Persistent Map (PMAP)
 infrastructure
Thread-Index: AQHXOoBcsB9zBVKLMkGe/ouZ8wFP5w==
Date: Mon, 26 Apr 2021 09:41:41 +0000
Message-ID: <baccb4ab6c71a655a4ac19cc27f2eacc116b8d4b.camel@amazon.com>
References: <20210425201318.15447-1-julien@xen.org>
	 <20210425201318.15447-13-julien@xen.org>
In-Reply-To: <20210425201318.15447-13-julien@xen.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.43.162.28]
Content-Type: text/plain; charset="utf-8"
Content-ID: <E6E7D978078988419BCAEDDE1B852C82@amazon.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Precedence: Bulk

T24gU3VuLCAyMDIxLTA0LTI1IGF0IDIxOjEzICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6DQo+
IEZyb206IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+DQo+IA0KPiBUaGUgYmFzaWMgaWRl
YSBpcyBsaWtlIFBlcnNpc3RlbnQgS2VybmVsIE1hcCAoUEtNQVApIGluIExpbnV4LiBXZQ0KPiBw
cmUtcG9wdWxhdGUgYWxsIHRoZSByZWxldmFudCBwYWdlIHRhYmxlcyBiZWZvcmUgdGhlIHN5c3Rl
bSBpcyBmdWxseQ0KPiBzZXQgdXAuDQo+IA0KPiBXZSB3aWxsIG5lZWQgaXQgb24gQXJtIGluIG9y
ZGVyIHRvIHJld29yayB0aGUgYXJtNjQgdmVyc2lvbiBvZg0KPiB4ZW5oZWFwX3NldHVwX21hcHBp
bmdzKCkgYXMgd2UgbWF5IG5lZWQgdG8gdXNlIHBhZ2VzIGFsbG9jYXRlZCBmcm9tDQo+IHRoZSBi
b290IGFsbG9jYXRvciBiZWZvcmUgdGhleSBhcmUgZWZmZWN0aXZlbHkgbWFwcGVkLg0KPiANCj4g
VGhpcyBpbmZyYXN0cnVjdHVyZSBpcyBub3QgbG9jay1wcm90ZWN0ZWQgdGhlcmVmb3JlIGNhbiBv
bmx5IGJlIHVzZWQNCj4gYmVmb3JlIHNtcGJvb3QuIEFmdGVyIHNtcGJvb3QsIG1hcF9kb21haW5f
cGFnZSgpIGhhcyB0byBiZSB1c2VkLg0KPiANCj4gVGhpcyBpcyBiYXNlZCBvbiB0aGUgeDg2IHZl
cnNpb24gWzFdIHRoYXQgd2FzIG9yaWdpbmFsbHkgaW1wbGVtZW50ZWQNCj4gYnkgV2VpIExpdS4N
Cj4gDQo+IFRha2UgdGhlIG9wcG9ydHVuaXR5IHRvIHN3aXRjaCB0aGUgcGFyYW1ldGVyIGF0dHIg
ZnJvbSB1bnNpZ25lZCB0bw0KPiB1bnNpZ25lZCBpbnQuDQo+IA0KPiBbMV0gPA0KPiBlOTJkYTRh
ZDYwMTViNjA4OTczN2ZjY2NiYTNlYzFkNjQyNDY0OWE1LjE1ODgyNzgzMTcuZ2l0Lmhvbmd5eGlh
QGFtYXpvbi5jb20NCj4gPg0KPiANCj4gU2lnbmVkLW9mZi1ieTogV2VpIExpdSA8d2VpLmxpdTJA
Y2l0cml4LmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogSG9uZ3lhbiBYaWEgPGhvbmd5eGlhQGFtYXpv
bi5jb20+DQo+IFtqdWxpZW46IEFkYXB0ZWQgZm9yIEFybV0NCj4gU2lnbmVkLW9mZi1ieTogSnVs
aWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCg0KWy4uLl0NCg0KPiBkaWZmIC0tZ2l0IGEv
eGVuL2FyY2gvYXJtL3BtYXAuYyBiL3hlbi9hcmNoL2FybS9wbWFwLmMNCj4gbmV3IGZpbGUgbW9k
ZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAwLi43MDJiMWJkZTk4MmQNCj4gLS0tIC9kZXYv
bnVsbA0KPiArKysgYi94ZW4vYXJjaC9hcm0vcG1hcC5jDQo+IEBAIC0wLDAgKzEsMTAxIEBADQo+
ICsjaW5jbHVkZSA8eGVuL2luaXQuaD4NCj4gKyNpbmNsdWRlIDx4ZW4vbW0uaD4NCj4gKw0KPiAr
I2luY2x1ZGUgPGFzbS9iaXRvcHMuaD4NCj4gKyNpbmNsdWRlIDxhc20vZmx1c2h0bGIuaD4NCj4g
KyNpbmNsdWRlIDxhc20vcG1hcC5oPg0KPiArDQo+ICsvKg0KPiArICogVG8gYmUgYWJsZSB0byB1
c2UgRklYTUFQX1BNQVBfQkVHSU4uDQo+ICsgKiBYWFg6IG1vdmUgZml4bWFwIGRlZmluaXRpb24g
aW4gYSBzZXBhcmF0ZSBoZWFkZXINCj4gKyAqLw0KPiArI2luY2x1ZGUgPHhlbi9hY3BpLmg+DQo+
ICsNCj4gKy8qDQo+ICsgKiBTaW1wbGUgbWFwcGluZyBpbmZyYXN0cnVjdHVyZSB0byBtYXAgLyB1
bm1hcCBwYWdlcyBpbiBmaXhlZCBtYXAuDQo+ICsgKiBUaGlzIGlzIHVzZWQgdG8gc2V0IHVwIHRo
ZSBwYWdlIHRhYmxlIGZvciBtYXBjYWNoZSwgd2hpY2ggaXMgdXNlZA0KPiArICogYnkgbWFwIGRv
bWFpbiBwYWdlIGluZnJhc3RydWN0dXJlLg0KPiArICoNCj4gKyAqIFRoaXMgc3RydWN0dXJlIGlz
IG5vdCBwcm90ZWN0ZWQgYnkgYW55IGxvY2tzLCBzbyBpdCBtdXN0IG5vdCBiZQ0KPiB1c2VkIGFm
dGVyDQo+ICsgKiBzbXAgYnJpbmctdXAuDQo+ICsgKi8NCj4gKw0KPiArLyogQml0bWFwIHRvIHRy
YWNrIHdoaWNoIHNsb3QgaXMgdXNlZCAqLw0KPiArc3RhdGljIHVuc2lnbmVkIGxvbmcgX19pbml0
ZGF0YSBpbnVzZTsNCj4gKw0KPiArLyogWFhYOiBGaW5kIGFuIGhlYWRlciB0byBkZWNsYXJlIGl0
ICovDQo+ICtleHRlcm4gbHBhZV90IHhlbl9maXhtYXBbTFBBRV9FTlRSSUVTXTsNCj4gKw0KPiAr
dm9pZCAqX19pbml0IHBtYXBfbWFwKG1mbl90IG1mbikNCj4gK3sNCj4gKyAgICB1bnNpZ25lZCBs
b25nIGZsYWdzOw0KPiArICAgIHVuc2lnbmVkIGludCBpZHg7DQo+ICsgICAgdmFkZHJfdCBsaW5l
YXI7DQo+ICsgICAgdW5zaWduZWQgaW50IHNsb3Q7DQo+ICsgICAgbHBhZV90ICplbnRyeSwgcHRl
Ow0KPiArDQo+ICsgICAgQlVJTERfQlVHX09OKHNpemVvZihpbnVzZSkgKiBCSVRTX1BFUl9MT05H
IDwgTlVNX0ZJWF9QTUFQKTsNCg0KVGhpcyBzZWVtcyB3cm9uZyB0byBtZS4gSXQgc2hvdWxkIG11
bHRpcGx5IHdpdGggc29tZXRoaW5nIGxpa2UNCkJJVFNfUEVSX0JZVEUuDQoNCkkgbm90aWNlZCB0
aGlzIGxpbmUgd2FzIGFscmVhZHkgcHJlc2VudCBiZWZvcmUgdGhlIEFybSB2ZXJzaW9uIHNvDQpw
cm9iYWJseSBteSBmYXVsdCA6KCwgd2hpY2ggYWxzbyBuZWVkcyB0byBiZSBmaXhlZC4NCg0KPiAr
DQo+ICsgICAgQVNTRVJUKHN5c3RlbV9zdGF0ZSA8IFNZU19TVEFURV9zbXBfYm9vdCk7DQo+ICsN
Cj4gKyAgICBsb2NhbF9pcnFfc2F2ZShmbGFncyk7DQo+ICsNCj4gKyAgICBpZHggPSBmaW5kX2Zp
cnN0X3plcm9fYml0KCZpbnVzZSwgTlVNX0ZJWF9QTUFQKTsNCj4gKyAgICBpZiAoIGlkeCA9PSBO
VU1fRklYX1BNQVAgKQ0KPiArICAgICAgICBwYW5pYygiT3V0IG9mIFBNQVAgc2xvdHNcbiIpOw0K
PiArDQo+ICsgICAgX19zZXRfYml0KGlkeCwgJmludXNlKTsNCj4gKw0KPiArICAgIHNsb3QgPSBp
ZHggKyBGSVhNQVBfUE1BUF9CRUdJTjsNCj4gKyAgICBBU1NFUlQoc2xvdCA+PSBGSVhNQVBfUE1B
UF9CRUdJTiAmJiBzbG90IDw9IEZJWE1BUF9QTUFQX0VORCk7DQo+ICsNCg0KRnJvbSBoZXJlLi4u
DQoNCj4gKyAgICBsaW5lYXIgPSBGSVhNQVBfQUREUihzbG90KTsNCj4gKyAgICAvKg0KPiArICAg
ICAqIFdlIGNhbm5vdCB1c2Ugc2V0X2ZpeG1hcCgpIGhlcmUuIFdlIHVzZSBQTUFQIHdoZW4gdGhl
cmUgaXMgbm8NCj4gZGlyZWN0IG1hcCwNCj4gKyAgICAgKiBzbyBtYXBfcGFnZXNfdG9feGVuKCkg
Y2FsbGVkIGJ5IHNldF9maXhtYXAoKSBuZWVkcyB0byBtYXANCj4gcGFnZXMgb24NCj4gKyAgICAg
KiBkZW1hbmQsIHdoaWNoIHRoZW4gY2FsbHMgcG1hcCgpIGFnYWluLCByZXN1bHRpbmcgaW4gYSBs
b29wLg0KPiBNb2RpZnkgdGhlDQo+ICsgICAgICogUFRFcyBkaXJlY3RseSBpbnN0ZWFkLiBUaGUg
c2FtZSBpcyB0cnVlIGZvciBwbWFwX3VubWFwKCkuDQo+ICsgICAgICovDQo+ICsgICAgZW50cnkg
PSAmeGVuX2ZpeG1hcFt0aGlyZF90YWJsZV9vZmZzZXQobGluZWFyKV07DQo+ICsNCj4gKyAgICBB
U1NFUlQoIWxwYWVfaXNfdmFsaWQoKmVudHJ5KSk7DQo+ICsNCj4gKyAgICBwdGUgPSBtZm5fdG9f
eGVuX2VudHJ5KG1mbiwgUEFHRV9IWVBFUlZJU09SX1JXKTsNCj4gKyAgICBwdGUucHQudGFibGUg
PSAxOw0KPiArICAgIHdyaXRlX3B0ZShlbnRyeSwgcHRlKTsNCj4gKw0KDQouLi50byBoZXJlLCBJ
IHdvbmRlciBpZiB3ZSBjYW4gbW92ZSB0aGlzIGNodW5rIGludG8gYXJjaCAobGlrZSB2b2lkDQoq
YXJjaF93cml0ZV9wbWFwX3Nsb3Qoc2xvdCkpLiBTdWNoIGFuIGFyY2ggZnVuY3Rpb24gaGlkZXMg
aG93IGZpeG1hcCBpcw0KaGFuZGxlZCBhbmQgaG93IHBhZ2UgdGFibGUgZW50cnkgaXMgd3JpdHRl
biBiZWhpbmQgYXJjaCwgYW5kIHRoZSByZXN0DQpjYW4ganVzdCBiZSBjb21tb24uDQoNCj4gKyAg
ICBsb2NhbF9pcnFfcmVzdG9yZShmbGFncyk7DQo+ICsNCj4gKyAgICByZXR1cm4gKHZvaWQgKils
aW5lYXI7DQo+ICt9DQo+ICsNCj4gK3ZvaWQgX19pbml0IHBtYXBfdW5tYXAoY29uc3Qgdm9pZCAq
cCkNCj4gK3sNCj4gKyAgICB1bnNpZ25lZCBsb25nIGZsYWdzOw0KPiArICAgIHVuc2lnbmVkIGlu
dCBpZHg7DQo+ICsgICAgbHBhZV90ICplbnRyeTsNCj4gKyAgICBscGFlX3QgcHRlID0geyAwIH07
DQo+ICsgICAgdW5zaWduZWQgaW50IHNsb3QgPSB0aGlyZF90YWJsZV9vZmZzZXQoKHZhZGRyX3Qp
cCk7DQo+ICsNCj4gKyAgICBBU1NFUlQoc3lzdGVtX3N0YXRlIDwgU1lTX1NUQVRFX3NtcF9ib290
KTsNCj4gKyAgICBBU1NFUlQoc2xvdCA+PSBGSVhNQVBfUE1BUF9CRUdJTiAmJiBzbG90IDw9IEZJ
WE1BUF9QTUFQX0VORCk7DQo+ICsNCj4gKyAgICBpZHggPSBzbG90IC0gRklYTUFQX1BNQVBfQkVH
SU47DQo+ICsgICAgbG9jYWxfaXJxX3NhdmUoZmxhZ3MpOw0KPiArDQo+ICsgICAgX19jbGVhcl9i
aXQoaWR4LCAmaW51c2UpOw0KPiArICAgIGVudHJ5ID0gJnhlbl9maXhtYXBbdGhpcmRfdGFibGVf
b2Zmc2V0KCh2YWRkcl90KXApXTsNCj4gKyAgICB3cml0ZV9wdGUoZW50cnksIHB0ZSk7DQo+ICsg
ICAgZmx1c2hfeGVuX3RsYl9yYW5nZV92YV9sb2NhbCgodmFkZHJfdClwLCBQQUdFX1NJWkUpOw0K
DQphbmQgdGhlIHNhbWUgZm9yIHRoZSBhYm92ZSwgc29tZXRoaW5nIGxpa2UgYXJjaF9jbGVhcl9w
bWFwKHZvaWQgKikgYW5kDQp0aGUgcmVzdCBpbnRvIGNvbW1vbi4NCg0KRnJvbSBhIHF1aWNrIGds
YW5jZSwgSSBkb24ndCB0aGluayB4ODYgYW5kIEFybSBzaGFyZSBhbnkgdXNlZnVsIFRMQg0KZmx1
c2ggaGVscGVycz8gU28gdGhlIFRMQiBmbHVzaCBwcm9iYWJseSBzaG91bGQgYmUgYmVoaW5kIGFy
Y2ggYXMgd2VsbC4NCg0KPiArDQo+ICsgICAgbG9jYWxfaXJxX3Jlc3RvcmUoZmxhZ3MpOw0KPiAr
fQ0KPiArDQo+ICsvKg0KPiArICogTG9jYWwgdmFyaWFibGVzOg0KPiArICogbW9kZTogQw0KPiAr
ICogYy1maWxlLXN0eWxlOiAiQlNEIg0KPiArICogYy1iYXNpYy1vZmZzZXQ6IDQNCj4gKyAqIGlu
ZGVudC10YWJzLW1vZGU6IG5pbA0KPiArICogRW5kOg0KPiArICovDQoNClsuLi5dDQoNCj4gZGlm
ZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vcG1hcC5oIGIveGVuL2luY2x1ZGUvYXNtLWFy
bS9wbWFwLmgNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAwLi44
ZTFkY2U5M2Y4ZTQNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi94ZW4vaW5jbHVkZS9hc20tYXJt
L3BtYXAuaA0KPiBAQCAtMCwwICsxLDEwIEBADQo+ICsjaWZuZGVmIF9fQVNNX1BNQVBfSF9fDQo+
ICsjZGVmaW5lIF9fQVJNX1BNQVBfSF9fDQoNClRoaXMgbGluZSBkb2Vzbid0IHNlZW0gdG8gbWF0
Y2ggdGhlICNpZm5kZWYsIGJ1dCBpZiB0aGUgZnVuY3Rpb25zIGFyZQ0KbW92ZWQgdG8gY29tbW9u
LCB0aGlzIGhlYWRlciBjYW4gYmUgbW92ZWQgdG8gY29tbW9uIGFzIHdlbGwuDQoNCkhvbmd5YW4N
Cg==


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 09:54:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 09:54:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117535.223458 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laxwW-0001hr-IQ; Mon, 26 Apr 2021 09:54:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117535.223458; Mon, 26 Apr 2021 09:54:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1laxwW-0001hk-Ed; Mon, 26 Apr 2021 09:54:16 +0000
Received: by outflank-mailman (input) for mailman id 117535;
 Mon, 26 Apr 2021 09:54:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=l+oD=JX=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1laxwV-0001hf-HU
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 09:54:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5b5adb57-707f-4978-92bf-2b11decc674b;
 Mon, 26 Apr 2021 09:54:14 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A7072ADA2;
 Mon, 26 Apr 2021 09:54: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: 5b5adb57-707f-4978-92bf-2b11decc674b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619430853; 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=ie/uZd0oRdkfScOgFpcaD7DCEzFZHlhzJX6XVwGYkWU=;
	b=FLIddvawrFUkLsy6lMVKCohXAVrQ7BTcgZ9ZaGMykl8XPSOmxu3o4qjiQUR0GOdM3svmk4
	9eaYUiMI40fYGTw4xahEBqKD+33ezNFwMss+8JfzpSzC54mPLBIUZIx5oyuWxJHiWbaEh0
	9xZ1KsyO7Vt0Pf+HElwBzBojcJxsv3I=
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: fix build race when generating temporary object files
 (take 2)
Message-ID: <c35ad629-0dea-688a-199d-895186aeffb2@suse.com>
Date: Mon, 26 Apr 2021 11:54:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

The original commit wasn't quite sufficient: Emptying DEPS is helpful
only when nothing will get added to it subsequently. xen/Rules.mk will,
after including the local Makefile, amend DEPS by dependencies for
objects living in sub-directories though. For the purpose of suppressing
dependencies of the makefiles on the .*.d2 files (and thus to avoid
their re-generation) it is, however, not necessary at all to play with
DEPS. Instead we can override DEPS_INCLUDE (which generally is a late-
expansion variable).

Fixes: 761bb575ce97 ("x86: fix build race when generating temporary object files")
Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -314,5 +314,5 @@ clean::
 # Suppress loading of DEPS files for internal, temporary target files.  This
 # then also suppresses re-generation of the respective .*.d2 files.
 ifeq ($(filter-out .xen%.o,$(notdir $(MAKECMDGOALS))),)
-DEPS:=
+DEPS_INCLUDE:=
 endif


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 10:49:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 10:49:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117552.223470 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1layns-0006Qt-K1; Mon, 26 Apr 2021 10:49:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117552.223470; Mon, 26 Apr 2021 10:49: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 1layns-0006Qm-EV; Mon, 26 Apr 2021 10:49:24 +0000
Received: by outflank-mailman (input) for mailman id 117552;
 Mon, 26 Apr 2021 10:49:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3yA5=JX=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1laynq-0006Qh-RY
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 10:49:23 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 753eb2c3-2ac8-40b8-a5ab-d67f7bea699e;
 Mon, 26 Apr 2021 10:49: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: 753eb2c3-2ac8-40b8-a5ab-d67f7bea699e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619434161;
  h=from:to:subject:date:message-id:content-id:
   content-transfer-encoding:mime-version;
  bh=F6t4cpHDHqQ8e4+WkFTEt44Zj39tPKO/tE3ckr1xr0M=;
  b=FJ4a7BZh85bbaWAzV+Asj3b7X//4ESnfen3u+/DDRDBEtt6y9Y5a9Aki
   jrI7VULKAE/AmH8rvL/WuUbwpqMhfzJNb+xKfs3rAy5xZN/MM5kCCLvBG
   sG15A+yqN/ez2fpX3OE8ZK94JJMrH8f6pA3OSCE8X7SvGEhfpf+RQHZea
   s=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: v31iT/diMpuBHCQ0TaDi4Qbzfd0trqqJynGLNkpfR6qjOYoVk8H87ZGAih0qxQZzd9Z3nHXBR3
 8wPfI6XUtcvqyHRThBIgWzSpsu1Il23n4p362GvZJhZd8ABGD2/WpXZfJvO2t8XdEHYeOGPR83
 9ug60fJu3gHHbK02pM5EggzF27YTDuXKjNwBEDCzvMigKQFdOfs8z/Savia4DPU5N+M6elAiUs
 ISfuYmqQX9snre6wUn+20dzHN+ZzT8BN/7PqHmMpsNCtfrrtQdFhhES1mteLZwKC2Xn3W0QwZx
 kck=
X-SBRS: 5.2
X-MesageID: 42513194
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:LNLMVaihbYoFVw+nks0VP1CZ/XBQX3hw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+YsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmuZ
 tIW5NVTOf9BV0St6vHySGzGdo43Z2j+Kenme/Rwx5WPHlXQotn6Bp0DRveMmAefngKObMSEp
 2A6s1b4x+pfnoKZsq2b0N1JNTrjdvNiZ7gfFo6HBYh8gaDlneF77T9Hhie0H4lIn9y6J0l9n
 XIlBG827W7v5iAu1Xh/kLwz7ATotvuzdNfGNeB4/J6FhzAghulDb4RPYGqkysypIiUmTUXuf
 3thztlAMhp8XPWeQiO0FTQ8i3tyiwn5XOn6XLwuwqbneXDSDg3C9VMiOtiG3OzgStBgPhG3L
 9WxGXcjpJLDHr77X3AzuLVXBJnnFfcmwtGrccvjmdSWYZbSLhdoZ13xjIzLL48HTn34I1iLe
 92DMu03oczTXqmaRnizwtS6e3pek52MgaNQ0AEtMDQ+SNRhmpFw0wRw9Fatmsc9bomIqM0qd
 jsA+BNrvVjX8UWZaVyCKMqWs2sEFHARhrKLSa7PUnnLqcaIHjAwqSHoYkd1aWPQtgl3ZEykJ
 POXBdzrmgpYX/jDsWIwdlt/g3SRn6+GRDg0NtX6ZQ8mrCUfsuqDQSzDHQV1+ewqfQWBcPWH9
 ypPohNPvPlJWzyXYlT2QnzXIRTNGkeXMUZts1TYSPNnuv7bqnR8sDLevfaI7TgVRw+XHnkP3
 cFVD/vYMVMh3rbH0PQsVz0YTfAa0b/9ZV/HOzx5O4I0rUAMYVKr0wQgVS97cebNC1avsUNDQ
 9DCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PoxQLPUPyebMKoM6eZmhWwXuCKnZEPoDrOT
 8ag24y1bO8LpSWyyxnIcmgKHimg3wao2/PU40RgbSZ5cDueooxC5EvXKAZL3SNKzVF3SJR7E
 tTYg4NQUHSUg70gaK+lZoOGaX0bN9nmjqmJsZStFPSvUiRvtsUW3MeRjKiOPTnxzoGdn5xvB
 lR+7VaqKeckTyvQFFP+tgQARlpUiCrJ55oSC6Cf55Zn7j3fhoYdxb2uRWqzzcpemTr8E0OgH
 fGNiP8Q4CSPnNUpm1Y3qH28Fl9a2WaeAZqZmpntJBmfF62xUpbwKuFYLG+3HCWbUZHyuYBMC
 vdaT9XOQ92wcurvSTl0AqqBDEjzpUqMve1NsVeT5jDnnesIpaPj6cIArtd+4tkLsnntoYwIJ
 SiUh7QKDPzEOUy3QOJ4n4jJSlvsXEh1fflwgfs4mT93HkxB5PpUR1bbqBeJ9GX9G7/QfmUlJ
 1/kNIupOO1dnzrdcTu89CjUxdTbhfI5WKmReAhrp5Z+ao0qbtoBpHeFT/FzmtO0hkyJNr9/X
 luC5hT8fTEIMtibsYScyVW8h4ymNODIFAivwb2DuU9FGtd+EPzLpeM+f7FuLAvCkqOqE/sIl
 GZ6TRa5OqAUC2Z17IWYphAU1h+eQw58jBl8+yDfYGLV1nveOFH4VagMniyNLVaU7OIHL0Mrh
 B8p9GE9tXnBxbQyUTVp398JKkL7mOsBcW1CwiIEfRT89O7NU+X65HalPKbnXPyU3+jd08chY
 dZbkQeYcRIlyk6gOQMo1mPY72yplhgjkBX7j5mnEP8w4Sq4G/UGkddLA3S668mLgV7IzyPls
 TK8e+RyXT77nxEwPD4ZTltQu0=
X-IronPort-AV: E=Sophos;i="5.82,252,1613451600"; 
   d="scan'208";a="42513194"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BjjaS4XpFg1QCcFMyx7XMJ2rKLViEJjvGyLdhecXIGCCf4+VopMfk03T1FNCVU542ClXCbaNIsQpRqkQ254VJ1uXlGrIW0AGLJwqn72TGEdGa0FvSc4pEIkjquyzqmvyEzlKmr4J5zVEbyUSYem2W7a9XGK6muZ6FfgiQLmVl1I4WQ2zG8gMk1xGmSTimqD3S8yhejSRpwCBnx+IsigGfbttH4uXEMvKtytPV4rIx74gqzRlvD6gvsi848mytCLn9Vdg5rJz8ww88In1e2hQ1KpUldMzxBVbonAKZPsNiEzgtivIoXw/J5hCJ06r3I/iF6v2KmopgFf7zFj3jmThEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=F6t4cpHDHqQ8e4+WkFTEt44Zj39tPKO/tE3ckr1xr0M=;
 b=BJAj5jKAZALLIYKiaQF1OZMc7HpcU1GlZY7wPDELYUbv0KQUJjUDVimEYwXYWqqEH5BbZDo141mdvQc/Syt9VDtp3a5LB2bOSpG3d+YfsmNIUmGRv2WTe0/cQfYBZslr1GXweqDUOX6MJXbZlTxdt0rnNfL9ML0K76kbHCnAp5enrerISk9aBVmrC2YAzO1ly7Or8as0uKOfcSH3lvFlOPqlD/fyAmk68uXuWqkbPFUS52An5DVNyXGmBb9LUxVheciR7N7igrupeFhp30feZBt4kll8gfq1fOm4kLPRoMtthMbKMYinLOpCEHRmJ2Yn0QHnDk24oUqTY4iD5b1e3A==
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=F6t4cpHDHqQ8e4+WkFTEt44Zj39tPKO/tE3ckr1xr0M=;
 b=XI2zImarNG+cWxa5Vjf1/XGmR7f7R/kG4hncMK/9I1l9rZW4NnryGXB2WqFKac37mANDEq/GCckEUmKT+OYebus5k3XmqT7MRYKGERTwbvEfZkAGcjSSvccZDGePckU82mfFwGZU8s2oJrCJmKBGOIbaHIZlt2NzwZ4LM+OAPrM=
From: George Dunlap <George.Dunlap@citrix.com>
To: xen-devel <xen-devel@lists.xenproject.org>, "security@xenproject"
	<security@xenproject.org>, Roger Pau Monne <roger.pau@citrix.com>
Subject: =?utf-8?B?UGxlYXNlIFdlbGNvbWUgUm9nZXIgUGF1IE1vbm7DqSB0byB0aGUgU2VjdXJp?=
 =?utf-8?Q?ty_Team?=
Thread-Topic: =?utf-8?B?UGxlYXNlIFdlbGNvbWUgUm9nZXIgUGF1IE1vbm7DqSB0byB0aGUgU2VjdXJp?=
 =?utf-8?Q?ty_Team?=
Thread-Index: AQHXOonPQTvGiS9KVEadp4399FYPdQ==
Date: Mon, 26 Apr 2021 10:49:18 +0000
Message-ID: <53BA2BDF-86B0-45F3-8F20-15DBCA72AF89@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.60.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: b13f2065-85e7-4f50-4bab-08d908a0f1a4
x-ms-traffictypediagnostic: PH0PR03MB6349:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <PH0PR03MB63498565D668D32401D2115699429@PH0PR03MB6349.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8273;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: KSPxpF4o6KCwgyc4KShu5SwtylXcXU+H0vf48JsPPB1XvC2NmjTp7n9JoepIGafkcZzMYvbVOZSjDgk6kE1dxsRA8fpUhggoijr30nXxscMmJMo1heT2wH+XINGLFnBh7qYY3kkN8rxTfQeU3zdOF/QjSb7v7YMTqRqROO1b1DwRIxstrERioV2Qr8qpdL3IV07oHigY42SWOXTIkN1ZSpKGL0UE+d3875stQM0rAWI4tJyehGCzZQ0GVAFzNcDCRCeNJRKmBbmYt9BP2erznodGgVfjVylO5v9v0oPQprNKnWPR2Vdgod9GhCb/QFvfv6c7Kw+Yl3Y+AAvg4HqDuBinWGbTKoiX0GodWB0u2fXRQ8ozaxNnYXlfYc1W1QLadDtmsx4fXPz96m2nti+IuaM1qn2criJsD9WIsXvZcMW0OJlPZw4Xb1fqha5kNJz7kqK3cRKu+bhirQD88LEiMx6WV7+WoQnwVv5Bgbb/WshdhWq8O37zN0UOX3dljRet2lCQ0r2RVqPl8WKAzUxHLxbAHA7uXPFA884XLvK5tPV9LZ0K9mBNP0MmR0okUAC76PmKEiQ2X0KrMJwAwojaguG/b3pDLf/N3rtzW0JdVUMd5s9QbS9/JSxVG3knUmRe2OCDRjyi/gVC8MUaqTAEz8FkvqCSZs0sjTCwPwB3tn8=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR03MB5669.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(366004)(136003)(39860400002)(346002)(396003)(15650500001)(2906002)(33656002)(8936002)(6636002)(2616005)(91956017)(110136005)(5660300002)(83380400001)(64756008)(6486002)(66556008)(122000001)(224303003)(186003)(66946007)(316002)(71200400001)(26005)(38100700002)(66446008)(478600001)(6512007)(36756003)(76116006)(6506007)(86362001)(4744005)(66476007)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: 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
 =?utf-8?B?SXN2UFBmOEhYcUlXb0hpZz09?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <6B503E37D4E89F40B1D539C4D58465AC@namprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR03MB5669.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b13f2065-85e7-4f50-4bab-08d908a0f1a4
X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Apr 2021 10:49:19.0028
 (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: xbp2S1Qy7+qJe7YB4oJxt6KAfdMXEpot7Ne4yHymiBhctRtdH/+l1y60sC4naCPyRN9OjVvs9Fd6EZ4sCByLgA3H6q4GwY4gV9jA740vhTQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6349
X-OriginatorOrg: citrix.com

RGVhciBDb21tdW5pdHkgTWVtYmVycywNCg0KSSBhbSBwbGVhc2VkIHRvIGFubm91bmNlIHRoYXQg
Um9nZXIgUGF1IE1vbm7DqSBoYXMgYmVlbiBub21pbmF0ZWQgYW5kIHZvdGVkIHRvIGJlY29tZSBh
IG5ldyBtZW1iZXIgb2YgdGhlIFhlblByb2plY3QgU2VjdXJpdHkgVGVhbS4NCg0KUm9nZXIgaGFz
IG1hZGUgc2lnbmlmaWNhbnQgY29udHJpYnV0aW9ucyB0byB0aGUgWGVuUHJvamVjdCBvdmVyIHRo
ZSB5ZWFyczsgaGUgaXMgY28tbWFpbnRhaW5lciBvZiB0aGUgeDg2IHN1YnN5c3RlbSwgbWFpbnRh
aW5lciBmb3IgbWFueSBYZW4tcmVsYXRlZCBzdWJzeXN0ZW1zIGluIExpbnV4LCBhcyB3ZWxsIGFz
IGtub3dsZWRnZWFibGUgYWJvdXQgWGVuLXJlbGF0ZWQgY29kZSBpbiB0aGUgQlNEcy4NCg0KQmVz
dCBSZWdhcmRzLA0KDQotIEdlb3JnZSBEdW5sYXANClhlblByb2plY3QgQ29tbXVuaXR5IE1hbmFn
ZXINCkNoYWlybWFuIG9mIHRoZSBYZW5Qcm9qZWN0IEFkdmlzb3J5IEJvYXJk


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 11:26:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 11:26:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117568.223482 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lazNV-0001iB-HH; Mon, 26 Apr 2021 11:26:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117568.223482; Mon, 26 Apr 2021 11: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 1lazNV-0001i4-EI; Mon, 26 Apr 2021 11:26:13 +0000
Received: by outflank-mailman (input) for mailman id 117568;
 Mon, 26 Apr 2021 11:26: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 1lazNT-0001hw-PQ; Mon, 26 Apr 2021 11:26: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 1lazNT-0007Qa-Fw; Mon, 26 Apr 2021 11:26: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 1lazNT-0000gb-6b; Mon, 26 Apr 2021 11:26:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lazNT-00060B-65; Mon, 26 Apr 2021 11:26: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=RDAPZ3fV9HDPmyLV4cyDhiHohL/4KiFurf7rQtTSSKs=; b=FGIVJc1ARQGPf5dZTXFhkKJEUh
	PUOxV2CoPLeJ4B9VDrQHSwTEUh4kET70TRfXO8SFCx3NEqqczweO35Vr1PTkq4DnuchWdbc77g2Cd
	AFbVRxo2aBviKvxsImzF8wVBc0chRZBuztr/PG6f9ajf6X0vrrwyzQfYG7jAx+yie4c8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161455-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161455: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=ffa090bc56e73e287a63261e70ac02c0970be61a
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 11:26:11 +0000

flight 161455 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161455/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                ffa090bc56e73e287a63261e70ac02c0970be61a
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  249 days
Failing since        152659  2020-08-21 14:07:39 Z  247 days  456 attempts
Testing same since   161419  2021-04-24 00:07:02 Z    2 days    4 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 143011 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 11:51:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 11:51:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117581.223496 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lazlN-0004Qn-JD; Mon, 26 Apr 2021 11:50:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117581.223496; Mon, 26 Apr 2021 11:50:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lazlN-0004Qg-G8; Mon, 26 Apr 2021 11:50:53 +0000
Received: by outflank-mailman (input) for mailman id 117581;
 Mon, 26 Apr 2021 11:50:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lazlM-0004QY-Pa; Mon, 26 Apr 2021 11:50:52 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lazlM-0007mr-E7; Mon, 26 Apr 2021 11:50:52 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lazlM-0002M6-2d; Mon, 26 Apr 2021 11:50:52 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lazlM-0007P4-26; Mon, 26 Apr 2021 11:50: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=RtwfYLMUS4uakp0NB0sqaqxH64jHSfhfWPsgNly8kLw=; b=WMogwh9IGFhxEDQx6O1gX4cXJe
	byQV1fGGgPo3RtXr/nGTBQ7KwvjghKvx9SQSi4tlLQ8KqjEBf63WmhEgYKvvxUMzPrzKyhp0KzalW
	rwTHTGFMaqniJbi2oKvdOG1AbVhfe2jtcmTexOTi1DFFX35HFzJH4JyOfbd2coaBY7to=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161454-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161454: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 11:50:52 +0000

flight 161454 xen-4.12-testing real [real]
flight 161463 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161454/
http://logs.test-lab.xenproject.org/osstest/logs/161463/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161442 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161442
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 161442

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   68 days
Failing since        160128  2021-03-18 14:36:18 Z   38 days   51 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   37 days   49 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 12:21:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 12:21:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117601.223512 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb0F8-0007Fd-7t; Mon, 26 Apr 2021 12:21:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117601.223512; Mon, 26 Apr 2021 12: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 1lb0F8-0007FW-4w; Mon, 26 Apr 2021 12:21:38 +0000
Received: by outflank-mailman (input) for mailman id 117601;
 Mon, 26 Apr 2021 12:21: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 1lb0F6-0007FO-C6; Mon, 26 Apr 2021 12:21: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 1lb0F6-0008Jn-6T; Mon, 26 Apr 2021 12:21: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 1lb0F5-0003jq-Ti; Mon, 26 Apr 2021 12:21:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lb0F5-0007X7-TE; Mon, 26 Apr 2021 12:21: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=GYFxS7sIcHVLuQt8anyCLz3ifJSf3iAjHRLxdqhF2lE=; b=u9M+j4NQPWssMuCWvARxqxvWBp
	laQipB8tApxnJsuZDp4NAeQq8FETT6yq8hNfQXllaFBU2OqN9joyUbuwMWaVhPFFX+3bNTiNLVdQZ
	5IktowP55qBoenN94BnDMkyZ1laQkP/TQWUKX2iFoo0XVex4EwDKzroTVAAGnya+nBFc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161462-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161462: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-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
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=11e7f0fe72ca0060762d18268e0388731fe8ccb6
X-Osstest-Versions-That:
    xen=ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 12:21:35 +0000

flight 161462 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161462/

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-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-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

version targeted for testing:
 xen                  11e7f0fe72ca0060762d18268e0388731fe8ccb6
baseline version:
 xen                  ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed

Last test of basis   161449  2021-04-25 13:01:33 Z    0 days
Testing same since   161462  2021-04-26 09:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Chao Gao <chao.gao@intel.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  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
   ab392969ea..11e7f0fe72  11e7f0fe72ca0060762d18268e0388731fe8ccb6 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 12:46:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 12:46:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117617.223533 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb0cc-0000pp-EI; Mon, 26 Apr 2021 12:45:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117617.223533; Mon, 26 Apr 2021 12:45: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 1lb0cc-0000pi-9O; Mon, 26 Apr 2021 12:45:54 +0000
Received: by outflank-mailman (input) for mailman id 117617;
 Mon, 26 Apr 2021 12:45:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rjXZ=JX=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lb0ca-0000pd-OY
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 12:45:52 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id daf02e7f-7fd6-453d-992a-8e0288d52f8a;
 Mon, 26 Apr 2021 12:45: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: daf02e7f-7fd6-453d-992a-8e0288d52f8a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619441145;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=iuzlso4pBC+TdOlXUDjNTwBIVsTCvj5+Vrzx6ippOp8=;
  b=djFn0uVpl2GCiY5k2iU2w6XrcmTewfk6Fm7Qok1MAFd122FkGVDmF9d5
   AN+25Ez46lwNloYriELVwCMUREW1AFH6kljkD+RAOrye6z7n6NqqjCi9v
   RGrvuLAsjLvtdV8MB/K2IDd0r0urCnRsGkwpYydfrv9iIeMlPXRsd1gST
   Q=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: Stay24yxzxFeQLWaerg5VHIFgtIxDx842leqzcXLhOdubOtSsjfF9tjvxKo8IuBAs4LvqJnO36
 KsZ4LzxFa9Io6YzgKhp6LAzjPUJ3kzoe9EXmMWXKFJyCQiZFIA5kE7vSSqK6DM3QJ3GjjhkbQk
 p0Z4DC62O289vkORh6kqJEUGGZzOq7WdSQ5UAxBGICQeXhJE5U+67EqDA+Puco1P1KCQNFeJe0
 Fl5EIAEFQctcDHo3D43DrfLho+mXqkViYomwCTpmI4YRARSQUkwkPGNT3PZbNRkmbVr35g119/
 JNM=
X-SBRS: 4.0
X-MesageID: 42521308
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:t0zDoaoYRP9VGNb49kpVDeAaV5vXL9V00zAX/kB9WHVpW+STnc
 y2gbA/3Rj7lD4eVBgb6Le9EYOHRm7R8oMwxIEXM6urUgWOghrPEKhJ64z+zzr8XxDv7+I179
 YQT4FSAMD9ZGIK7vrSzxK/F78brOWv0KftvuvGymcocAcCUdAF0y5cKiK2VnJ7XxNHA51RLu
 vt2uNiqyC7cXoaKuSXb0N1PdTrnNHAmJL4bRNuPXdOg2PisRqS5LH3CBSe1BsFOgk/pIsKy3
 TPkADy+8yY3c2T9x7G22ffq7RQldfxo+EiOOWwi9MYIjiptwCwZI4JYdy/lQ0yydvB1H8a1P
 PLpAotONk20XnYeWa4rHLWqnrd+Qdrz0Wn6FeDxVP/vMTyRVsBerN8rLMcViGc1m0Nk5VX1r
 lR02eQqpxNZCmw5BjV6t3QEwhwkEepq2dKq59vs1VTVJJbc7NYp5Ee+kQ9KuZ7IAv27ZliD+
 V0FsHb459tACinRmGctDJ329qnUm4oEhqBWUZqgL3q7xFG2HRyx0QVyMEbhzMc/JwyR5Qs3Z
 W5Do140LdUTsEXaqphBOAOBcuvY1a9Pi7xDA==
X-IronPort-AV: E=Sophos;i="5.82,252,1613451600"; 
   d="scan'208";a="42521308"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86/emul: Use existing X86_EXC_* constants
Date: Mon, 26 Apr 2021 13:45:35 +0100
Message-ID: <20210426124535.23814-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

... rather than having separate definitions locally.  EXC_HAS_EC in particular
is missing #CP, #VC and #SX vs X86_EXC_HAVE_EC.

Also switch a raw 14 for X86_EXC_PF in x86_emul_pagefault().

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/x86_emulate/x86_emulate.c | 739 ++++++++++++++++-----------------
 xen/arch/x86/x86_emulate/x86_emulate.h |   4 +-
 2 files changed, 361 insertions(+), 382 deletions(-)

diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c b/xen/arch/x86/x86_emulate/x86_emulate.c
index 4a33fe9613..138b85c4bf 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -1005,28 +1005,6 @@ struct x86_fxsr {
 /* MXCSR bit definitions. */
 #define MXCSR_MM  (1U << 17)
 
-/* Exception definitions. */
-#define EXC_DE  0
-#define EXC_DB  1
-#define EXC_BP  3
-#define EXC_OF  4
-#define EXC_BR  5
-#define EXC_UD  6
-#define EXC_NM  7
-#define EXC_DF  8
-#define EXC_TS 10
-#define EXC_NP 11
-#define EXC_SS 12
-#define EXC_GP 13
-#define EXC_PF 14
-#define EXC_MF 16
-#define EXC_AC 17
-#define EXC_XM 19
-
-#define EXC_HAS_EC                                                      \
-    ((1u << EXC_DF) | (1u << EXC_TS) | (1u << EXC_NP) |                 \
-     (1u << EXC_SS) | (1u << EXC_GP) | (1u << EXC_PF) | (1u << EXC_AC))
-
 /* Segment selector error code bits. */
 #define ECODE_EXT (1 << 0)
 #define ECODE_IDT (1 << 1)
@@ -1240,7 +1218,7 @@ do {                                                    \
 
 static inline int mkec(uint8_t e, int32_t ec, ...)
 {
-    return (e < 32 && ((1u << e) & EXC_HAS_EC)) ? ec : X86_EVENT_NO_EC;
+    return (e < 32 && ((1u << e) & X86_EXC_HAVE_EC)) ? ec : X86_EVENT_NO_EC;
 }
 
 #define generate_exception_if(p, e, ec...)                                \
@@ -1293,7 +1271,7 @@ static inline int mkec(uint8_t e, int32_t ec, ...)
    state->ip += (_size); /* real hardware doesn't truncate */           \
    generate_exception_if((uint8_t)(state->ip -                          \
                                    ctxt->regs->r(ip)) > MAX_INST_LEN,   \
-                         EXC_GP, 0);                                    \
+                         X86_EXC_GP, 0);                                \
    rc = ops->insn_fetch(x86_seg_cs, _ip, &_x, (_size), ctxt);           \
    if ( rc ) goto done;                                                 \
    _x;                                                                  \
@@ -1371,11 +1349,11 @@ do {                                                                    \
 #define validate_far_branch(cs, ip) ({                                  \
     if ( sizeof(ip) <= 4 ) {                                            \
         ASSERT(!ctxt->lma);                                             \
-        generate_exception_if((ip) > (cs)->limit, EXC_GP, 0);           \
+        generate_exception_if((ip) > (cs)->limit, X86_EXC_GP, 0);       \
     } else                                                              \
         generate_exception_if(ctxt->lma && (cs)->l                      \
                               ? !is_canonical_address(ip)               \
-                              : (ip) > (cs)->limit, EXC_GP, 0);         \
+                              : (ip) > (cs)->limit, X86_EXC_GP, 0);     \
 })
 
 #define commit_far_branch(cs, newip) ({                                 \
@@ -1442,7 +1420,7 @@ static int _get_fpu(
                 return rc;
             generate_exception_if(!(cr4 & ((type == X86EMUL_FPU_xmm)
                                            ? X86_CR4_OSFXSR : X86_CR4_OSXSAVE)),
-                                  EXC_UD);
+                                  X86_EXC_UD);
         }
 
         rc = ops->read_cr(0, &cr0, ctxt);
@@ -1455,13 +1433,13 @@ static int _get_fpu(
         }
         if ( cr0 & X86_CR0_EM )
         {
-            generate_exception_if(type == X86EMUL_FPU_fpu, EXC_NM);
-            generate_exception_if(type == X86EMUL_FPU_mmx, EXC_UD);
-            generate_exception_if(type == X86EMUL_FPU_xmm, EXC_UD);
+            generate_exception_if(type == X86EMUL_FPU_fpu, X86_EXC_NM);
+            generate_exception_if(type == X86EMUL_FPU_mmx, X86_EXC_UD);
+            generate_exception_if(type == X86EMUL_FPU_xmm, X86_EXC_UD);
         }
         generate_exception_if((cr0 & X86_CR0_TS) &&
                               (type != X86EMUL_FPU_wait || (cr0 & X86_CR0_MP)),
-                              EXC_NM);
+                              X86_EXC_NM);
     }
 
  done:
@@ -1861,7 +1839,7 @@ static int ioport_access_check(
         return rc == X86EMUL_DONE ? X86EMUL_OKAY : rc;
 
     /* Ensure the TSS has an io-bitmap-offset field. */
-    generate_exception_if(tr.type != 0xb, EXC_GP, 0);
+    generate_exception_if(tr.type != 0xb, X86_EXC_GP, 0);
 
     switch ( rc = read_ulong(x86_seg_tr, 0x66, &iobmp, 2, ctxt, ops) )
     {
@@ -1869,7 +1847,7 @@ static int ioport_access_check(
         break;
 
     case X86EMUL_EXCEPTION:
-        generate_exception_if(!ctxt->event_pending, EXC_GP, 0);
+        generate_exception_if(!ctxt->event_pending, X86_EXC_GP, 0);
         /* fallthrough */
 
     default:
@@ -1884,7 +1862,7 @@ static int ioport_access_check(
         break;
 
     case X86EMUL_EXCEPTION:
-        generate_exception_if(!ctxt->event_pending, EXC_GP, 0);
+        generate_exception_if(!ctxt->event_pending, X86_EXC_GP, 0);
         /* fallthrough */
 
     default:
@@ -1892,7 +1870,7 @@ static int ioport_access_check(
     }
 
     generate_exception_if(iobmp & (((1 << bytes) - 1) << (first_port & 7)),
-                          EXC_GP, 0);
+                          X86_EXC_GP, 0);
 
  done:
     return rc;
@@ -2012,7 +1990,7 @@ amd_like(const struct x86_emulate_ctxt *ctxt)
 #define vcpu_has_avx512_bf16() (ctxt->cpuid->feat.avx512_bf16)
 
 #define vcpu_must_have(feat) \
-    generate_exception_if(!vcpu_has_##feat(), EXC_UD)
+    generate_exception_if(!vcpu_has_##feat(), X86_EXC_UD)
 
 #ifdef __XEN__
 /*
@@ -2022,7 +2000,7 @@ amd_like(const struct x86_emulate_ctxt *ctxt)
  * the actual operation.
  */
 #define host_and_vcpu_must_have(feat) ({ \
-    generate_exception_if(!cpu_has_##feat, EXC_UD); \
+    generate_exception_if(!cpu_has_##feat, X86_EXC_UD); \
     vcpu_must_have(feat); \
 })
 #else
@@ -2082,7 +2060,7 @@ protmode_load_seg(
     uint8_t dpl, rpl;
     int cpl = get_cpl(ctxt, ops);
     uint32_t a_flag = 0x100;
-    int rc, fault_type = EXC_GP;
+    int rc, fault_type = X86_EXC_GP;
 
     if ( cpl < 0 )
         return X86EMUL_UNHANDLEABLE;
@@ -2210,7 +2188,7 @@ protmode_load_seg(
     /* Segment present in memory? */
     if ( !(desc.b & (1 << 15)) && seg != x86_seg_none )
     {
-        fault_type = seg != x86_seg_ss ? EXC_NP : EXC_SS;
+        fault_type = seg != x86_seg_ss ? X86_EXC_NP : X86_EXC_SS;
         goto raise_exn;
     }
 
@@ -2436,7 +2414,7 @@ static unsigned int decode_disp8scale(enum disp8scale scale,
     switch ( evex.lr ) \
     { \
     default: \
-        generate_exception(EXC_UD); \
+        generate_exception(X86_EXC_UD); \
     case 2: \
         break; \
     case 0: case 1: \
@@ -2596,7 +2574,7 @@ x86_decode_onebyte(
 
     case 0x9a: /* call (far, absolute) */
     case 0xea: /* jmp (far, absolute) */
-        generate_exception_if(mode_64bit(), EXC_UD);
+        generate_exception_if(mode_64bit(), X86_EXC_UD);
 
         imm1 = insn_fetch_bytes(op_bytes);
         imm2 = insn_fetch_type(uint16_t);
@@ -2710,7 +2688,7 @@ x86_decode_twobyte(
         /* fall through */
     case 0x21: case 0x23: /* mov to/from dr */
         ASSERT(ea.type == OP_REG); /* Early operand adjustment ensures this. */
-        generate_exception_if(lock_prefix, EXC_UD);
+        generate_exception_if(lock_prefix, X86_EXC_UD);
         op_bytes = mode_64bit() ? 8 : 4;
         break;
 
@@ -3062,7 +3040,7 @@ x86_decode(
                 /* fall through */
             case 8:
                 /* VEX / XOP / EVEX */
-                generate_exception_if(rex_prefix || vex.pfx, EXC_UD);
+                generate_exception_if(rex_prefix || vex.pfx, X86_EXC_UD);
                 /*
                  * With operand size override disallowed (see above), op_bytes
                  * should not have changed from its default.
@@ -3108,8 +3086,8 @@ x86_decode(
                         evex.raw[1] = vex.raw[1];
                         evex.raw[2] = insn_fetch_type(uint8_t);
 
-                        generate_exception_if(!evex.mbs || evex.mbz, EXC_UD);
-                        generate_exception_if(!evex.opmsk && evex.z, EXC_UD);
+                        generate_exception_if(!evex.mbs || evex.mbz, X86_EXC_UD);
+                        generate_exception_if(!evex.opmsk && evex.z, X86_EXC_UD);
 
                         if ( !mode_64bit() )
                             evex.R = 1;
@@ -3369,7 +3347,7 @@ x86_decode(
 
         if ( modrm_mod == 3 )
         {
-            generate_exception_if(d & vSIB, EXC_UD);
+            generate_exception_if(d & vSIB, X86_EXC_UD);
             modrm_rm |= ((rex_prefix & 1) << 3) |
                         ((evex_encoded() && !evex.x) << 4);
             ea.type = OP_REG;
@@ -3377,7 +3355,7 @@ x86_decode(
         else if ( ad_bytes == 2 )
         {
             /* 16-bit ModR/M decode. */
-            generate_exception_if(d & vSIB, EXC_UD);
+            generate_exception_if(d & vSIB, X86_EXC_UD);
             ea.type = OP_MEM;
             switch ( modrm_rm )
             {
@@ -3465,7 +3443,7 @@ x86_decode(
             }
             else
             {
-                generate_exception_if(d & vSIB, EXC_UD);
+                generate_exception_if(d & vSIB, X86_EXC_UD);
                 modrm_rm |= (rex_prefix & 1) << 3;
                 ea.mem.off = *decode_gpr(state->regs, modrm_rm);
                 if ( (modrm_rm == 5) && (modrm_mod != 0) )
@@ -3639,11 +3617,11 @@ x86_decode(
             op_bytes = 16 << evex.lr;
             break;
         case vex_f3:
-            generate_exception_if(evex_encoded() && evex.w, EXC_UD);
+            generate_exception_if(evex_encoded() && evex.w, X86_EXC_UD);
             op_bytes = 4;
             break;
         case vex_f2:
-            generate_exception_if(evex_encoded() && !evex.w, EXC_UD);
+            generate_exception_if(evex_encoded() && !evex.w, X86_EXC_UD);
             op_bytes = 8;
             break;
         }
@@ -3718,7 +3696,7 @@ x86_emulate(
     generate_exception_if((mode_vif() &&
                            (_regs.eflags & X86_EFLAGS_VIF) &&
                            (_regs.eflags & X86_EFLAGS_VIP)),
-                          EXC_GP, 0);
+                          X86_EXC_GP, 0);
 
     rc = x86_decode(&state, ctxt, ops);
     if ( rc != X86EMUL_OKAY )
@@ -3747,7 +3725,7 @@ x86_emulate(
 #define state (&state)
     elem_bytes = 4 << evex.w;
 
-    generate_exception_if(state->not_64bit && mode_64bit(), EXC_UD);
+    generate_exception_if(state->not_64bit && mode_64bit(), X86_EXC_UD);
 
     if ( ea.type == OP_REG )
         ea.reg = _decode_gpr(&_regs, modrm_rm, (d & ByteOp) && !rex_prefix && !vex.opcx);
@@ -3864,12 +3842,12 @@ x86_emulate(
         generate_exception_if(lock_prefix &&
                               (vex.opcx || ext != ext_0f || b != 0xc7 ||
                                (modrm_reg & 7) != 1 || ea.type != OP_MEM),
-                              EXC_UD);
+                              X86_EXC_UD);
         dst.type = OP_NONE;
         break;
 
     case DstReg:
-        generate_exception_if(lock_prefix, EXC_UD);
+        generate_exception_if(lock_prefix, X86_EXC_UD);
         dst.type = OP_REG;
         if ( d & ByteOp )
         {
@@ -3921,17 +3899,17 @@ x86_emulate(
         d = (d & ~DstMask) | DstMem;
         /* Becomes a normal DstMem operation from here on. */
     case DstMem:
-        generate_exception_if(ea.type == OP_MEM && evex.z, EXC_UD);
+        generate_exception_if(ea.type == OP_MEM && evex.z, X86_EXC_UD);
         if ( state->simd_size )
         {
-            generate_exception_if(lock_prefix, EXC_UD);
+            generate_exception_if(lock_prefix, X86_EXC_UD);
             break;
         }
         ea.bytes = (d & ByteOp) ? 1 : op_bytes;
         dst = ea;
         if ( dst.type == OP_REG )
         {
-            generate_exception_if(lock_prefix, EXC_UD);
+            generate_exception_if(lock_prefix, X86_EXC_UD);
             switch ( dst.bytes )
             {
             case 1: dst.val = *(uint8_t  *)dst.reg; break;
@@ -3943,7 +3921,7 @@ x86_emulate(
         else if ( d & Mov ) /* optimisation - avoid slow emulated read */
         {
             /* Lock prefix is allowed only on RMW instructions. */
-            generate_exception_if(lock_prefix, EXC_UD);
+            generate_exception_if(lock_prefix, X86_EXC_UD);
             fail_if(!ops->write);
         }
         else if ( !ops->rmw )
@@ -4174,14 +4152,14 @@ x86_emulate(
     case 0x62: /* bound */ {
         int lb, ub, idx;
 
-        generate_exception_if(src.type != OP_MEM, EXC_UD);
+        generate_exception_if(src.type != OP_MEM, X86_EXC_UD);
         if ( (rc = read_ulong(src.mem.seg, truncate_ea(src.mem.off + op_bytes),
                               &ea.val, op_bytes, ctxt, ops)) )
             goto done;
         ub  = (op_bytes == 2) ? (int16_t)ea.val   : (int32_t)ea.val;
         lb  = (op_bytes == 2) ? (int16_t)src.val  : (int32_t)src.val;
         idx = (op_bytes == 2) ? (int16_t)dst.val  : (int32_t)dst.val;
-        generate_exception_if((idx < lb) || (idx > ub), EXC_BR);
+        generate_exception_if((idx < lb) || (idx > ub), X86_EXC_BR);
         dst.type = OP_NONE;
         break;
     }
@@ -4204,7 +4182,7 @@ x86_emulate(
             /* arpl */
             unsigned int src_rpl = dst.val & 3;
 
-            generate_exception_if(!in_protmode(ctxt, ops), EXC_UD);
+            generate_exception_if(!in_protmode(ctxt, ops), X86_EXC_UD);
 
             dst = ea;
             dst.bytes = 2;
@@ -4399,7 +4377,7 @@ x86_emulate(
             dst.type = OP_NONE;
             break;
         }
-        generate_exception_if((modrm_reg & 7) != 0, EXC_UD);
+        generate_exception_if((modrm_reg & 7) != 0, X86_EXC_UD);
     case 0x88 ... 0x8b: /* mov */
     case 0xa0 ... 0xa1: /* mov mem.offs,{%al,%ax,%eax,%rax} */
     case 0xa2 ... 0xa3: /* mov {%al,%ax,%eax,%rax},mem.offs */
@@ -4408,7 +4386,7 @@ x86_emulate(
 
     case 0x8c: /* mov Sreg,r/m */
         seg = modrm_reg & 7; /* REX.R is ignored. */
-        generate_exception_if(!is_x86_user_segment(seg), EXC_UD);
+        generate_exception_if(!is_x86_user_segment(seg), X86_EXC_UD);
     store_selector:
         fail_if(ops->read_segment == NULL);
         if ( (rc = ops->read_segment(seg, &sreg, ctxt)) != 0 )
@@ -4419,14 +4397,14 @@ x86_emulate(
         break;
 
     case 0x8d: /* lea */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         dst.val = ea.mem.off;
         break;
 
     case 0x8e: /* mov r/m,Sreg */
         seg = modrm_reg & 7; /* REX.R is ignored. */
         generate_exception_if(!is_x86_user_segment(seg) ||
-                              seg == x86_seg_cs, EXC_UD);
+                              seg == x86_seg_cs, X86_EXC_UD);
         if ( (rc = load_seg(seg, src.val, 0, NULL, ctxt, ops)) != 0 )
             goto done;
         if ( seg == x86_seg_ss )
@@ -4435,7 +4413,7 @@ x86_emulate(
         break;
 
     case 0x8f: /* pop (sole member of Grp1a) */
-        generate_exception_if((modrm_reg & 7) != 0, EXC_UD);
+        generate_exception_if((modrm_reg & 7) != 0, X86_EXC_UD);
         /* 64-bit mode: POP defaults to a 64-bit operand. */
         if ( mode_64bit() && (dst.bytes == 4) )
             dst.bytes = 8;
@@ -4516,7 +4494,7 @@ x86_emulate(
                 if ( rc != X86EMUL_OKAY )
                     goto done;
             }
-            generate_exception_if(!(cr4 & X86_CR4_VME), EXC_GP, 0);
+            generate_exception_if(!(cr4 & X86_CR4_VME), X86_EXC_GP, 0);
             src.val = (_regs.flags & ~X86_EFLAGS_IF) | X86_EFLAGS_IOPL;
             if ( _regs.eflags & X86_EFLAGS_VIF )
                 src.val |= X86_EFLAGS_IF;
@@ -4546,7 +4524,7 @@ x86_emulate(
                 /* All IOPL != 3 POPFs fail, except in vm86 mode. */
                 generate_exception_if(!(cr4 & X86_CR4_VME) &&
                                       MASK_EXTR(_regs.eflags, X86_EFLAGS_IOPL) != 3,
-                                      EXC_GP, 0);
+                                      X86_EXC_GP, 0);
             }
             /*
              * IOPL cannot be modified outside of CPL 0.  IF cannot be
@@ -4570,11 +4548,11 @@ x86_emulate(
             if ( (cr4 & X86_CR4_VME) &&
                  MASK_EXTR(_regs.eflags, X86_EFLAGS_IOPL) != 3 )
             {
-                generate_exception_if(dst.val & X86_EFLAGS_TF, EXC_GP, 0);
+                generate_exception_if(dst.val & X86_EFLAGS_TF, X86_EXC_GP, 0);
                 if ( dst.val & X86_EFLAGS_IF )
                 {
                     generate_exception_if(_regs.eflags & X86_EFLAGS_VIP,
-                                          EXC_GP, 0);
+                                          X86_EXC_GP, 0);
                     dst.val |= X86_EFLAGS_VIF;
                 }
                 else
@@ -4709,7 +4687,7 @@ x86_emulate(
         break;
 
     case 0xc0 ... 0xc1: grp2: /* Grp2 */
-        generate_exception_if(lock_prefix, EXC_UD);
+        generate_exception_if(lock_prefix, X86_EXC_UD);
 
         switch ( modrm_reg & 7 )
         {
@@ -4749,7 +4727,7 @@ x86_emulate(
     case 0xc5: /* lds */
         seg = (b & 1) * 3; /* es = 0, ds = 3 */
     les:
-        generate_exception_if(src.type != OP_MEM, EXC_UD);
+        generate_exception_if(src.type != OP_MEM, X86_EXC_UD);
         if ( (rc = read_ulong(src.mem.seg, truncate_ea(src.mem.off + src.bytes),
                               &dst.val, 2, ctxt, ops)) != X86EMUL_OKAY )
             goto done;
@@ -4828,7 +4806,7 @@ x86_emulate(
         switch ( ctxt->opcode )
         {
         case 0xcc: /* int3 */
-            ctxt->event.vector = EXC_BP;
+            ctxt->event.vector = X86_EXC_BP;
             ctxt->event.type = X86_EVENTTYPE_SW_EXCEPTION;
             break;
         case 0xcd: /* int imm8 */
@@ -4836,11 +4814,11 @@ x86_emulate(
             ctxt->event.type = X86_EVENTTYPE_SW_INTERRUPT;
             break;
         case 0xce: /* into */
-            ctxt->event.vector = EXC_OF;
+            ctxt->event.vector = X86_EXC_OF;
             ctxt->event.type = X86_EVENTTYPE_SW_EXCEPTION;
             break;
         case 0xf1: /* icebp */
-            ctxt->event.vector = EXC_DB;
+            ctxt->event.vector = X86_EXC_DB;
             ctxt->event.type = X86_EVENTTYPE_PRI_SW_EXCEPTION;
             break;
         }
@@ -4889,7 +4867,7 @@ x86_emulate(
             _regs.ax = (uint8_t)(_regs.al + (_regs.ah * n));
         else
         {
-            generate_exception_if(!n, EXC_DE);
+            generate_exception_if(!n, X86_EXC_DE);
             _regs.al = _regs.al % n;
             _regs.ah = _regs.al / n;
         }
@@ -4981,7 +4959,7 @@ x86_emulate(
             emulate_fpu_insn_stub(0xd9, modrm);
             break;
         default:
-            generate_exception_if(ea.type != OP_MEM, EXC_UD);
+            generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
             switch ( modrm_reg & 7 )
             {
             case 0: /* fld m32fp */
@@ -5029,7 +5007,7 @@ x86_emulate(
                 emulate_fpu_insn_memdst(b, modrm_reg & 7, dst.val);
                 break;
             default:
-                generate_exception(EXC_UD);
+                generate_exception(X86_EXC_UD);
             }
             /*
              * Control instructions can't raise FPU exceptions, so we need
@@ -5056,7 +5034,7 @@ x86_emulate(
             emulate_fpu_insn_stub(0xda, modrm);
             break;
         default:
-            generate_exception_if(ea.type != OP_MEM, EXC_UD);
+            generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
             goto fpu_memsrc32;
         }
         break;
@@ -5085,7 +5063,7 @@ x86_emulate(
             emulate_fpu_insn_stub(0xdb, modrm);
             break;
         default:
-            generate_exception_if(ea.type != OP_MEM, EXC_UD);
+            generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
             switch ( modrm_reg & 7 )
             {
             case 0: /* fild m32i */
@@ -5113,7 +5091,7 @@ x86_emulate(
                     goto done;
                 break;
             default:
-                generate_exception(EXC_UD);
+                generate_exception(X86_EXC_UD);
             }
         }
         break;
@@ -5158,7 +5136,7 @@ x86_emulate(
             emulate_fpu_insn_stub(0xdd, modrm);
             break;
         default:
-            generate_exception_if(ea.type != OP_MEM, EXC_UD);
+            generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
             switch ( modrm_reg & 7 )
             {
             case 0: /* fld m64fp */;
@@ -5197,7 +5175,7 @@ x86_emulate(
                 state->fpu_ctrl = true;
                 goto fpu_memdst16;
             default:
-                generate_exception(EXC_UD);
+                generate_exception(X86_EXC_UD);
             }
             /*
              * Control instructions can't raise FPU exceptions, so we need
@@ -5224,7 +5202,7 @@ x86_emulate(
             emulate_fpu_insn_stub(0xde, modrm);
             break;
         default:
-            generate_exception_if(ea.type != OP_MEM, EXC_UD);
+            generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
             emulate_fpu_insn_memsrc(b, modrm_reg & 7, src.val);
             break;
         }
@@ -5255,7 +5233,7 @@ x86_emulate(
             emulate_fpu_insn_stub(0xdf, modrm);
             break;
         default:
-            generate_exception_if(ea.type != OP_MEM, EXC_UD);
+            generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
             switch ( modrm_reg & 7 )
             {
             case 0: /* fild m16i */
@@ -5360,7 +5338,7 @@ x86_emulate(
         break;
 
     case 0xf4: /* hlt */
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
         ctxt->retire.hlt = true;
         break;
 
@@ -5479,7 +5457,7 @@ x86_emulate(
                 v    = (uint8_t)src.val;
                 generate_exception_if(
                     div_dbl(u, v) || ((uint8_t)u[0] != (uint16_t)u[0]),
-                    EXC_DE);
+                    X86_EXC_DE);
                 dst.val = (uint8_t)u[0];
                 _regs.ah = u[1];
                 break;
@@ -5489,7 +5467,7 @@ x86_emulate(
                 v    = (uint16_t)src.val;
                 generate_exception_if(
                     div_dbl(u, v) || ((uint16_t)u[0] != (uint32_t)u[0]),
-                    EXC_DE);
+                    X86_EXC_DE);
                 dst.val = (uint16_t)u[0];
                 _regs.dx = u[1];
                 break;
@@ -5500,7 +5478,7 @@ x86_emulate(
                 v    = (uint32_t)src.val;
                 generate_exception_if(
                     div_dbl(u, v) || ((uint32_t)u[0] != u[0]),
-                    EXC_DE);
+                    X86_EXC_DE);
                 dst.val   = (uint32_t)u[0];
                 _regs.rdx = (uint32_t)u[1];
                 break;
@@ -5509,7 +5487,7 @@ x86_emulate(
                 u[0] = _regs.r(ax);
                 u[1] = _regs.r(dx);
                 v    = src.val;
-                generate_exception_if(div_dbl(u, v), EXC_DE);
+                generate_exception_if(div_dbl(u, v), X86_EXC_DE);
                 dst.val     = u[0];
                 _regs.r(dx) = u[1];
                 break;
@@ -5524,7 +5502,7 @@ x86_emulate(
                 v    = (int8_t)src.val;
                 generate_exception_if(
                     idiv_dbl(u, v) || ((int8_t)u[0] != (int16_t)u[0]),
-                    EXC_DE);
+                    X86_EXC_DE);
                 dst.val = (int8_t)u[0];
                 _regs.ah = u[1];
                 break;
@@ -5534,7 +5512,7 @@ x86_emulate(
                 v    = (int16_t)src.val;
                 generate_exception_if(
                     idiv_dbl(u, v) || ((int16_t)u[0] != (int32_t)u[0]),
-                    EXC_DE);
+                    X86_EXC_DE);
                 dst.val = (int16_t)u[0];
                 _regs.dx = u[1];
                 break;
@@ -5545,7 +5523,7 @@ x86_emulate(
                 v    = (int32_t)src.val;
                 generate_exception_if(
                     idiv_dbl(u, v) || ((int32_t)u[0] != u[0]),
-                    EXC_DE);
+                    X86_EXC_DE);
                 dst.val   = (int32_t)u[0];
                 _regs.rdx = (uint32_t)u[1];
                 break;
@@ -5554,7 +5532,7 @@ x86_emulate(
                 u[0] = _regs.r(ax);
                 u[1] = _regs.r(dx);
                 v    = src.val;
-                generate_exception_if(idiv_dbl(u, v), EXC_DE);
+                generate_exception_if(idiv_dbl(u, v), X86_EXC_DE);
                 dst.val     = u[0];
                 _regs.r(dx) = u[1];
                 break;
@@ -5576,7 +5554,7 @@ x86_emulate(
             _regs.eflags &= ~X86_EFLAGS_IF;
         else
         {
-            generate_exception_if(!mode_vif(), EXC_GP, 0);
+            generate_exception_if(!mode_vif(), X86_EXC_GP, 0);
             _regs.eflags &= ~X86_EFLAGS_VIF;
         }
         break;
@@ -5591,8 +5569,7 @@ x86_emulate(
         else
         {
             generate_exception_if((_regs.eflags & X86_EFLAGS_VIP) ||
-				  !mode_vif(),
-                                  EXC_GP, 0);
+				  !mode_vif(), X86_EXC_GP, 0);
             if ( !(_regs.eflags & X86_EFLAGS_VIF) )
                 ctxt->retire.sti = true;
             _regs.eflags |= X86_EFLAGS_VIF;
@@ -5608,7 +5585,7 @@ x86_emulate(
         break;
 
     case 0xfe: /* Grp4 */
-        generate_exception_if((modrm_reg & 7) >= 2, EXC_UD);
+        generate_exception_if((modrm_reg & 7) >= 2, X86_EXC_UD);
         /* Fallthrough. */
     case 0xff: /* Grp5 */
         switch ( modrm_reg & 7 )
@@ -5642,7 +5619,7 @@ x86_emulate(
             break;
         case 3: /* call (far, absolute indirect) */
         case 5: /* jmp (far, absolute indirect) */
-            generate_exception_if(src.type != OP_MEM, EXC_UD);
+            generate_exception_if(src.type != OP_MEM, X86_EXC_UD);
 
             if ( (rc = read_ulong(src.mem.seg,
                                   truncate_ea(src.mem.off + op_bytes),
@@ -5655,20 +5632,20 @@ x86_emulate(
         case 6: /* push */
             goto push;
         case 7:
-            generate_exception(EXC_UD);
+            generate_exception(X86_EXC_UD);
         }
         break;
 
     case X86EMUL_OPC(0x0f, 0x00): /* Grp6 */
         seg = (modrm_reg & 1) ? x86_seg_tr : x86_seg_ldtr;
-        generate_exception_if(!in_protmode(ctxt, ops), EXC_UD);
+        generate_exception_if(!in_protmode(ctxt, ops), X86_EXC_UD);
         switch ( modrm_reg & 6 )
         {
         case 0: /* sldt / str */
-            generate_exception_if(umip_active(ctxt, ops), EXC_GP, 0);
+            generate_exception_if(umip_active(ctxt, ops), X86_EXC_GP, 0);
             goto store_selector;
         case 2: /* lldt / ltr */
-            generate_exception_if(!mode_ring0(), EXC_GP, 0);
+            generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
             if ( (rc = load_seg(seg, src.val, 0, NULL, ctxt, ops)) != 0 )
                 goto done;
             break;
@@ -5686,7 +5663,7 @@ x86_emulate(
             case X86EMUL_EXCEPTION:
                 if ( ctxt->event_pending )
                 {
-                    ASSERT(ctxt->event.vector == EXC_PF);
+                    ASSERT(ctxt->event.vector == X86_EXC_PF);
             default:
                     goto done;
                 }
@@ -5696,7 +5673,7 @@ x86_emulate(
             }
             break;
         default:
-            generate_exception_if(true, EXC_UD);
+            generate_exception_if(true, X86_EXC_UD);
             break;
         }
         break;
@@ -5712,7 +5689,7 @@ x86_emulate(
         case 0xca: /* clac */
         case 0xcb: /* stac */
             vcpu_must_have(smap);
-            generate_exception_if(vex.pfx || !mode_ring0(), EXC_UD);
+            generate_exception_if(vex.pfx || !mode_ring0(), X86_EXC_UD);
 
             _regs.eflags &= ~X86_EFLAGS_AC;
             if ( modrm == 0xcb )
@@ -5720,11 +5697,11 @@ x86_emulate(
             break;
 
         case 0xd0: /* xgetbv */
-            generate_exception_if(vex.pfx, EXC_UD);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
             if ( !ops->read_cr || !ops->read_xcr ||
                  ops->read_cr(4, &cr4, ctxt) != X86EMUL_OKAY )
                 cr4 = 0;
-            generate_exception_if(!(cr4 & X86_CR4_OSXSAVE), EXC_UD);
+            generate_exception_if(!(cr4 & X86_CR4_OSXSAVE), X86_EXC_UD);
             rc = ops->read_xcr(_regs.ecx, &msr_val, ctxt);
             if ( rc != X86EMUL_OKAY )
                 goto done;
@@ -5733,12 +5710,12 @@ x86_emulate(
             break;
 
         case 0xd1: /* xsetbv */
-            generate_exception_if(vex.pfx, EXC_UD);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
             if ( !ops->read_cr || !ops->write_xcr ||
                  ops->read_cr(4, &cr4, ctxt) != X86EMUL_OKAY )
                 cr4 = 0;
-            generate_exception_if(!(cr4 & X86_CR4_OSXSAVE), EXC_UD);
-            generate_exception_if(!mode_ring0(), EXC_GP, 0);
+            generate_exception_if(!(cr4 & X86_CR4_OSXSAVE), X86_EXC_UD);
+            generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
             rc = ops->write_xcr(_regs.ecx,
                                 _regs.eax | ((uint64_t)_regs.edx << 32), ctxt);
             if ( rc != X86EMUL_OKAY )
@@ -5746,22 +5723,22 @@ x86_emulate(
             break;
 
         case 0xd4: /* vmfunc */
-            generate_exception_if(vex.pfx, EXC_UD);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
             fail_if(!ops->vmfunc);
             if ( (rc = ops->vmfunc(ctxt)) != X86EMUL_OKAY )
                 goto done;
             break;
 
         case 0xd5: /* xend */
-            generate_exception_if(vex.pfx, EXC_UD);
-            generate_exception_if(!vcpu_has_rtm(), EXC_UD);
-            generate_exception_if(vcpu_has_rtm(), EXC_GP, 0);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
+            generate_exception_if(!vcpu_has_rtm(), X86_EXC_UD);
+            generate_exception_if(vcpu_has_rtm(), X86_EXC_GP, 0);
             break;
 
         case 0xd6: /* xtest */
-            generate_exception_if(vex.pfx, EXC_UD);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
             generate_exception_if(!vcpu_has_rtm() && !vcpu_has_hle(),
-                                  EXC_UD);
+                                  X86_EXC_UD);
             /* Neither HLE nor RTM can be active when we get here. */
             _regs.eflags |= X86_EFLAGS_ZF;
             break;
@@ -5773,8 +5750,8 @@ x86_emulate(
                 goto done;
             /* Finding SVME set implies vcpu_has_svm(). */
             generate_exception_if(!(msr_val & EFER_SVME) ||
-                                  !in_protmode(ctxt, ops), EXC_UD);
-            generate_exception_if(!mode_ring0(), EXC_GP, 0);
+                                  !in_protmode(ctxt, ops), X86_EXC_UD);
+            generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
             fail_if(!ops->tlb_op);
             if ( (rc = ops->tlb_op(x86emul_invlpga, truncate_ea(_regs.r(ax)),
                                    _regs.ecx, ctxt)) != X86EMUL_OKAY )
@@ -5816,8 +5793,8 @@ x86_emulate(
             break;
 
         case 0xf8: /* swapgs */
-            generate_exception_if(!mode_64bit(), EXC_UD);
-            generate_exception_if(!mode_ring0(), EXC_GP, 0);
+            generate_exception_if(!mode_64bit(), X86_EXC_UD);
+            generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
             fail_if(!ops->read_segment || !ops->read_msr ||
                     !ops->write_segment || !ops->write_msr);
             if ( (rc = ops->read_segment(x86_seg_gs, &sreg,
@@ -5855,7 +5832,7 @@ x86_emulate(
                    ad_bytes == 4 ? _regs.eax : _regs.ax;
             limit = ctxt->cpuid->basic.clflush_size * 8;
             generate_exception_if(limit < sizeof(long) ||
-                                  (limit & (limit - 1)), EXC_UD);
+                                  (limit & (limit - 1)), X86_EXC_UD);
             base &= ~(limit - 1);
             if ( ops->rep_stos )
             {
@@ -5891,7 +5868,7 @@ x86_emulate(
         case GRP7_MEM(0): /* sgdt */
         case GRP7_MEM(1): /* sidt */
             ASSERT(ea.type == OP_MEM);
-            generate_exception_if(umip_active(ctxt, ops), EXC_GP, 0);
+            generate_exception_if(umip_active(ctxt, ops), X86_EXC_GP, 0);
             fail_if(!ops->read_segment || !ops->write);
             if ( (rc = ops->read_segment(seg, &sreg, ctxt)) )
                 goto done;
@@ -5912,7 +5889,7 @@ x86_emulate(
         case GRP7_MEM(2): /* lgdt */
         case GRP7_MEM(3): /* lidt */
             ASSERT(ea.type == OP_MEM);
-            generate_exception_if(!mode_ring0(), EXC_GP, 0);
+            generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
             fail_if(ops->write_segment == NULL);
             memset(&sreg, 0, sizeof(sreg));
             if ( (rc = read_ulong(ea.mem.seg, ea.mem.off,
@@ -5920,7 +5897,7 @@ x86_emulate(
                  (rc = read_ulong(ea.mem.seg, truncate_ea(ea.mem.off + 2),
                                   &base, mode_64bit() ? 8 : 4, ctxt, ops)) )
                 goto done;
-            generate_exception_if(!is_canonical_address(base), EXC_GP, 0);
+            generate_exception_if(!is_canonical_address(base), X86_EXC_GP, 0);
             sreg.base = base;
             sreg.limit = limit;
             if ( !mode_64bit() && op_bytes == 2 )
@@ -5930,7 +5907,7 @@ x86_emulate(
             break;
 
         case GRP7_ALL(4): /* smsw */
-            generate_exception_if(umip_active(ctxt, ops), EXC_GP, 0);
+            generate_exception_if(umip_active(ctxt, ops), X86_EXC_GP, 0);
             if ( ea.type == OP_MEM )
             {
                 fail_if(!ops->write);
@@ -5948,7 +5925,7 @@ x86_emulate(
         case GRP7_ALL(6): /* lmsw */
             fail_if(ops->read_cr == NULL);
             fail_if(ops->write_cr == NULL);
-            generate_exception_if(!mode_ring0(), EXC_GP, 0);
+            generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
             if ( (rc = ops->read_cr(0, &cr0, ctxt)) )
                 goto done;
             if ( ea.type == OP_REG )
@@ -5964,7 +5941,7 @@ x86_emulate(
 
         case GRP7_MEM(7): /* invlpg */
             ASSERT(ea.type == OP_MEM);
-            generate_exception_if(!mode_ring0(), EXC_GP, 0);
+            generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
             fail_if(!ops->tlb_op);
             if ( (rc = ops->tlb_op(x86emul_invlpg, ea.mem.off, ea.mem.seg,
                                    ctxt)) != X86EMUL_OKAY )
@@ -5982,7 +5959,7 @@ x86_emulate(
     }
 
     case X86EMUL_OPC(0x0f, 0x02): /* lar */
-        generate_exception_if(!in_protmode(ctxt, ops), EXC_UD);
+        generate_exception_if(!in_protmode(ctxt, ops), X86_EXC_UD);
         _regs.eflags &= ~X86_EFLAGS_ZF;
         switch ( rc = protmode_load_seg(x86_seg_none, src.val, false, &sreg,
                                         ctxt, ops) )
@@ -6013,7 +5990,7 @@ x86_emulate(
         case X86EMUL_EXCEPTION:
             if ( ctxt->event_pending )
             {
-                ASSERT(ctxt->event.vector == EXC_PF);
+                ASSERT(ctxt->event.vector == X86_EXC_PF);
         default:
                 goto done;
             }
@@ -6030,7 +6007,7 @@ x86_emulate(
         break;
 
     case X86EMUL_OPC(0x0f, 0x03): /* lsl */
-        generate_exception_if(!in_protmode(ctxt, ops), EXC_UD);
+        generate_exception_if(!in_protmode(ctxt, ops), X86_EXC_UD);
         _regs.eflags &= ~X86_EFLAGS_ZF;
         switch ( rc = protmode_load_seg(x86_seg_none, src.val, false, &sreg,
                                         ctxt, ops) )
@@ -6058,7 +6035,7 @@ x86_emulate(
         case X86EMUL_EXCEPTION:
             if ( ctxt->event_pending )
             {
-                ASSERT(ctxt->event.vector == EXC_PF);
+                ASSERT(ctxt->event.vector == X86_EXC_PF);
         default:
                 goto done;
             }
@@ -6081,8 +6058,8 @@ x86_emulate(
         fail_if(ops->read_msr == NULL);
         if ( (rc = ops->read_msr(MSR_EFER, &msr_val, ctxt)) != X86EMUL_OKAY )
             goto done;
-        generate_exception_if((msr_val & EFER_SCE) == 0, EXC_UD);
-        generate_exception_if(!amd_like(ctxt) && !mode_64bit(), EXC_UD);
+        generate_exception_if((msr_val & EFER_SCE) == 0, X86_EXC_UD);
+        generate_exception_if(!amd_like(ctxt) && !mode_64bit(), X86_EXC_UD);
 
         if ( (rc = ops->read_msr(MSR_STAR, &msr_val, ctxt)) != X86EMUL_OKAY )
             goto done;
@@ -6150,7 +6127,7 @@ x86_emulate(
         break;
 
     case X86EMUL_OPC(0x0f, 0x06): /* clts */
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
         fail_if((ops->read_cr == NULL) || (ops->write_cr == NULL));
         if ( (rc = ops->read_cr(0, &dst.val, ctxt)) != X86EMUL_OKAY ||
              (rc = ops->write_cr(0, dst.val & ~X86_CR0_TS, ctxt)) != X86EMUL_OKAY )
@@ -6166,10 +6143,10 @@ x86_emulate(
         fail_if(!ops->read_msr);
         if ( (rc = ops->read_msr(MSR_EFER, &msr_val, ctxt)) != X86EMUL_OKAY )
             goto done;
-        generate_exception_if(!(msr_val & EFER_SCE), EXC_UD);
-        generate_exception_if(!amd_like(ctxt) && !mode_64bit(), EXC_UD);
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
-        generate_exception_if(!in_protmode(ctxt, ops), EXC_GP, 0);
+        generate_exception_if(!(msr_val & EFER_SCE), X86_EXC_UD);
+        generate_exception_if(!amd_like(ctxt) && !mode_64bit(), X86_EXC_UD);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
+        generate_exception_if(!in_protmode(ctxt, ops), X86_EXC_GP, 0);
 #ifdef __x86_64__
         /*
          * Doing this for just Intel (rather than e.g. !amd_like()) as this is
@@ -6178,7 +6155,7 @@ x86_emulate(
          */
         generate_exception_if(ctxt->cpuid->x86_vendor == X86_VENDOR_INTEL &&
                               op_bytes == 8 && !is_canonical_address(_regs.rcx),
-                              EXC_GP, 0);
+                              X86_EXC_GP, 0);
 #endif
 
         if ( (rc = ops->read_msr(MSR_STAR, &msr_val, ctxt)) != X86EMUL_OKAY )
@@ -6237,7 +6214,7 @@ x86_emulate(
 
     case X86EMUL_OPC(0x0f, 0x08): /* invd */
     case X86EMUL_OPC(0x0f, 0x09): /* wbinvd / wbnoinvd */
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
         fail_if(!ops->cache_op);
         if ( (rc = ops->cache_op(b == 0x09 ? !repe_prefix() ||
                                              !vcpu_has_wbnoinvd()
@@ -6252,7 +6229,7 @@ x86_emulate(
     case X86EMUL_OPC(0x0f, 0x0b): /* ud2 */
     case X86EMUL_OPC(0x0f, 0xb9): /* ud1 */
     case X86EMUL_OPC(0x0f, 0xff): /* ud0 */
-        generate_exception(EXC_UD);
+        generate_exception(X86_EXC_UD);
 
     case X86EMUL_OPC(0x0f, 0x0d): /* GrpP (prefetch) */
     case X86EMUL_OPC(0x0f, 0x18): /* Grp16 (prefetch/nop) */
@@ -6272,7 +6249,7 @@ x86_emulate(
         else if ( _3dnow_ext_table[(imm1 >> 4) & 0xf] & (1 << (imm1 & 0xf)) )
             host_and_vcpu_must_have(3dnow_ext);
         else
-            generate_exception(EXC_UD);
+            generate_exception(X86_EXC_UD);
 
         get_fpu(X86EMUL_FPU_mmx);
 
@@ -6351,7 +6328,7 @@ x86_emulate(
         /* fall through */
     CASE_SIMD_PACKED_FP_VEX(0x0f, 0x2b):   /* movntp{s,d} xmm,m128 */
                                            /* vmovntp{s,d} {x,y}mm,mem */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         sfence = true;
         /* fall through */
     CASE_SIMD_ALL_FP_VEX(0x0f, 0x10):      /* mov{up,s}{s,d} xmm/mem,xmm */
@@ -6437,7 +6414,7 @@ x86_emulate(
         break;
 
     CASE_SIMD_PACKED_FP(_EVEX, 0x0f, 0x2b): /* vmovntp{s,d} [xyz]mm,mem */
-        generate_exception_if(ea.type != OP_MEM || evex.opmsk, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM || evex.opmsk, X86_EXC_UD);
         sfence = true;
         /* fall through */
     CASE_SIMD_PACKED_FP(_EVEX, 0x0f, 0x10): /* vmovup{s,d} [xyz]mm/mem,[xyz]mm{k} */
@@ -6451,7 +6428,7 @@ x86_emulate(
         /* vmovs{s,d} to/from memory have only two operands. */
         if ( (b & ~1) == 0x10 && ea.type == OP_MEM )
             d |= TwoOp;
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         /* fall through */
     CASE_SIMD_ALL_FP(_EVEX, 0x0f, 0x51):    /* vsqrtp{s,d} [xyz]mm/mem,[xyz]mm{k} */
                                             /* vsqrts{s,d} xmm/m32,xmm,xmm{k} */
@@ -6465,7 +6442,7 @@ x86_emulate(
         generate_exception_if((evex.w != (evex.pfx & VEX_PREFIX_DOUBLE_MASK) ||
                                (ea.type != OP_REG && evex.brs &&
                                 (evex.pfx & VEX_PREFIX_SCALAR_MASK))),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( ea.type != OP_REG || !evex.brs )
             avx512_vlen_check(evex.pfx & VEX_PREFIX_SCALAR_MASK);
@@ -6493,7 +6470,7 @@ x86_emulate(
     case X86EMUL_OPC_VEX_66(0x0f, 0x16):   /* vmovhpd m64,xmm,xmm */
     CASE_SIMD_PACKED_FP_VEX(0x0f, 0x17):   /* movhp{s,d} xmm,m64 */
                                            /* vmovhp{s,d} xmm,m64 */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC(0x0f, 0x12):          /* movlps m64,xmm */
                                            /* movhlps xmm,xmm */
@@ -6503,7 +6480,7 @@ x86_emulate(
                                            /* movlhps xmm,xmm */
     case X86EMUL_OPC_VEX(0x0f, 0x16):      /* vmovhps m64,xmm,xmm */
                                            /* vmovlhps xmm,xmm,xmm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         if ( (d & DstMask) != DstMem )
             d &= ~TwoOp;
         op_bytes = 8;
@@ -6513,7 +6490,7 @@ x86_emulate(
     CASE_SIMD_PACKED_FP(_EVEX, 0x0f, 0x13): /* vmovlp{s,d} xmm,m64 */
     case X86EMUL_OPC_EVEX_66(0x0f, 0x16):   /* vmovhpd m64,xmm,xmm */
     CASE_SIMD_PACKED_FP(_EVEX, 0x0f, 0x17): /* vmovhp{s,d} xmm,m64 */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX(0x0f, 0x12):      /* vmovlps m64,xmm,xmm */
                                             /* vmovhlps xmm,xmm,xmm */
@@ -6521,7 +6498,7 @@ x86_emulate(
                                             /* vmovlhps xmm,xmm,xmm */
         generate_exception_if((evex.lr || evex.opmsk || evex.brs ||
                                evex.w != (evex.pfx & VEX_PREFIX_DOUBLE_MASK)),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( (d & DstMask) != DstMem )
             d &= ~TwoOp;
@@ -6548,7 +6525,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_F3(0x0f, 0x16):   /* vmovshdup [xyz]mm/mem,[xyz]mm{k} */
         generate_exception_if((evex.brs ||
                                evex.w != (evex.pfx & VEX_PREFIX_DOUBLE_MASK)),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         avx512_vlen_check(false);
         d |= TwoOp;
@@ -6560,7 +6537,7 @@ x86_emulate(
     CASE_SIMD_PACKED_FP(_EVEX, 0x0f, 0x14): /* vunpcklp{s,d} [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     CASE_SIMD_PACKED_FP(_EVEX, 0x0f, 0x15): /* vunpckhp{s,d} [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         generate_exception_if(evex.w != (evex.pfx & VEX_PREFIX_DOUBLE_MASK),
-                              EXC_UD);
+                              X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x76): /* vpermi2{d,q} [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x77): /* vpermi2p{s,d} [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
@@ -6587,7 +6564,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x65): /* vblendmp{s,d} [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     avx512f_no_sae:
         host_and_vcpu_must_have(avx512f);
-        generate_exception_if(ea.type != OP_MEM && evex.brs, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM && evex.brs, X86_EXC_UD);
         avx512_vlen_check(false);
         goto simd_zmm;
 
@@ -6597,7 +6574,7 @@ x86_emulate(
     case X86EMUL_OPC(0x0f, 0x21): /* mov dr,reg */
     case X86EMUL_OPC(0x0f, 0x22): /* mov reg,cr */
     case X86EMUL_OPC(0x0f, 0x23): /* mov reg,dr */
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
         if ( b & 2 )
         {
             /* Write to CR/DR. */
@@ -6665,7 +6642,7 @@ x86_emulate(
     CASE_SIMD_SCALAR_FP(_EVEX, 0x0f, 0x2a): /* vcvtsi2s{s,d} r/m,xmm,xmm */
     CASE_SIMD_SCALAR_FP(_EVEX, 0x0f, 0x7b): /* vcvtusi2s{s,d} r/m,xmm,xmm */
         generate_exception_if(evex.opmsk || (ea.type != OP_REG && evex.brs),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( !evex.brs )
             avx512_vlen_check(true);
@@ -6717,7 +6694,7 @@ x86_emulate(
         }
         else
         {
-            generate_exception_if(vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.reg != 0xf, X86_EXC_UD);
             host_and_vcpu_must_have(avx);
             get_fpu(X86EMUL_FPU_ymm);
 
@@ -6776,7 +6753,7 @@ x86_emulate(
     CASE_SIMD_SCALAR_FP(_EVEX, 0x0f, 0x79): /* vcvts{s,d}2usi xmm/mem,reg */
         generate_exception_if((evex.reg != 0xf || !evex.RX || evex.opmsk ||
                                (ea.type != OP_REG && evex.brs)),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( !evex.brs )
             avx512_vlen_check(true);
@@ -6796,7 +6773,7 @@ x86_emulate(
         }
         else
         {
-            generate_exception_if(vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.reg != 0xf, X86_EXC_UD);
             host_and_vcpu_must_have(avx);
             get_fpu(X86EMUL_FPU_ymm);
         }
@@ -6845,7 +6822,7 @@ x86_emulate(
         generate_exception_if((evex.reg != 0xf || !evex.RX || evex.opmsk ||
                                (ea.type != OP_REG && evex.brs) ||
                                evex.w != evex.pfx),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( !evex.brs )
             avx512_vlen_check(true);
@@ -6856,7 +6833,7 @@ x86_emulate(
         goto vcomi;
 
     case X86EMUL_OPC(0x0f, 0x30): /* wrmsr */
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
         fail_if(ops->write_msr == NULL);
         if ( (rc = ops->write_msr(_regs.ecx,
                                   ((uint64_t)_regs.r(dx) << 32) | _regs.eax,
@@ -6870,7 +6847,7 @@ x86_emulate(
             fail_if(ops->read_cr == NULL);
             if ( (rc = ops->read_cr(4, &cr4, ctxt)) )
                 goto done;
-            generate_exception_if(cr4 & X86_CR4_TSD, EXC_GP, 0);
+            generate_exception_if(cr4 & X86_CR4_TSD, X86_EXC_GP, 0);
         }
         fail_if(ops->read_msr == NULL);
         if ( (rc = ops->read_msr(MSR_IA32_TSC,
@@ -6881,7 +6858,7 @@ x86_emulate(
         break;
 
     case X86EMUL_OPC(0x0f, 0x32): /* rdmsr */
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
         fail_if(ops->read_msr == NULL);
         if ( (rc = ops->read_msr(_regs.ecx, &msr_val, ctxt)) != X86EMUL_OKAY )
             goto done;
@@ -6891,15 +6868,15 @@ x86_emulate(
 
     case X86EMUL_OPC(0x0f, 0x34): /* sysenter */
         vcpu_must_have(sep);
-        generate_exception_if(amd_like(ctxt) && ctxt->lma, EXC_UD);
-        generate_exception_if(!in_protmode(ctxt, ops), EXC_GP, 0);
+        generate_exception_if(amd_like(ctxt) && ctxt->lma, X86_EXC_UD);
+        generate_exception_if(!in_protmode(ctxt, ops), X86_EXC_GP, 0);
 
         fail_if(ops->read_msr == NULL);
         if ( (rc = ops->read_msr(MSR_IA32_SYSENTER_CS,
                                  &msr_val, ctxt)) != X86EMUL_OKAY )
             goto done;
 
-        generate_exception_if(!(msr_val & 0xfffc), EXC_GP, 0);
+        generate_exception_if(!(msr_val & 0xfffc), X86_EXC_GP, 0);
 
         _regs.eflags &= ~(X86_EFLAGS_VM | X86_EFLAGS_IF | X86_EFLAGS_RF);
 
@@ -6940,20 +6917,20 @@ x86_emulate(
 
     case X86EMUL_OPC(0x0f, 0x35): /* sysexit */
         vcpu_must_have(sep);
-        generate_exception_if(amd_like(ctxt) && ctxt->lma, EXC_UD);
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
-        generate_exception_if(!in_protmode(ctxt, ops), EXC_GP, 0);
+        generate_exception_if(amd_like(ctxt) && ctxt->lma, X86_EXC_UD);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
+        generate_exception_if(!in_protmode(ctxt, ops), X86_EXC_GP, 0);
 
         fail_if(ops->read_msr == NULL);
         if ( (rc = ops->read_msr(MSR_IA32_SYSENTER_CS,
                                  &msr_val, ctxt)) != X86EMUL_OKAY )
             goto done;
 
-        generate_exception_if(!(msr_val & 0xfffc), EXC_GP, 0);
+        generate_exception_if(!(msr_val & 0xfffc), X86_EXC_GP, 0);
         generate_exception_if(op_bytes == 8 &&
                               (!is_canonical_address(_regs.r(dx)) ||
                                !is_canonical_address(_regs.r(cx))),
-                              EXC_GP, 0);
+                              X86_EXC_GP, 0);
 
         cs.sel = (msr_val | 3) + /* SELECTOR_RPL_MASK */
                  (op_bytes == 8 ? 32 : 16);
@@ -7001,7 +6978,7 @@ x86_emulate(
     case X86EMUL_OPC_VEX(0x0f, 0x47):    /* kxor{w,q} k,k,k */
     case X86EMUL_OPC_VEX_66(0x0f, 0x47): /* kxor{b,d} k,k,k */
     case X86EMUL_OPC_VEX_66(0x0f, 0x4a): /* kadd{b,d} k,k,k */
-        generate_exception_if(!vex.l, EXC_UD);
+        generate_exception_if(!vex.l, X86_EXC_UD);
     opmask_basic:
         if ( vex.w )
             host_and_vcpu_must_have(avx512bw);
@@ -7010,7 +6987,7 @@ x86_emulate(
     opmask_common:
         host_and_vcpu_must_have(avx512f);
         generate_exception_if(!vex.r || (mode_64bit() && !(vex.reg & 8)) ||
-                              ea.type != OP_REG, EXC_UD);
+                              ea.type != OP_REG, X86_EXC_UD);
 
         vex.reg |= 8;
         d &= ~TwoOp;
@@ -7028,16 +7005,16 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX(0x0f, 0x44):    /* knot{w,q} k,k */
     case X86EMUL_OPC_VEX_66(0x0f, 0x44): /* knot{b,d} k,k */
-        generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+        generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
         goto opmask_basic;
 
     case X86EMUL_OPC_VEX(0x0f, 0x4b):    /* kunpck{w,d}{d,q} k,k,k */
-        generate_exception_if(!vex.l, EXC_UD);
+        generate_exception_if(!vex.l, X86_EXC_UD);
         host_and_vcpu_must_have(avx512bw);
         goto opmask_common;
 
     case X86EMUL_OPC_VEX_66(0x0f, 0x4b): /* kunpckbw k,k,k */
-        generate_exception_if(!vex.l || vex.w, EXC_UD);
+        generate_exception_if(!vex.l || vex.w, X86_EXC_UD);
         goto opmask_common;
 
 #endif /* X86EMUL_NO_SIMD */
@@ -7058,7 +7035,7 @@ x86_emulate(
     simd_0f_to_gpr:
         opc[insn_bytes - PFX_BYTES] = 0xc3;
 
-        generate_exception_if(ea.type != OP_REG, EXC_UD);
+        generate_exception_if(ea.type != OP_REG, X86_EXC_UD);
 
         if ( vex.opcx == vex_none )
         {
@@ -7081,7 +7058,7 @@ x86_emulate(
         }
         else
         {
-            generate_exception_if(vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.reg != 0xf, X86_EXC_UD);
             if ( b == 0x50 || !vex.l )
                 host_and_vcpu_must_have(avx);
             else
@@ -7104,7 +7081,7 @@ x86_emulate(
     CASE_SIMD_PACKED_FP(_EVEX, 0x0f, 0x57): /* vxorp{s,d} [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         generate_exception_if((evex.w != (evex.pfx & VEX_PREFIX_DOUBLE_MASK) ||
                                (ea.type != OP_MEM && evex.brs)),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512dq);
         avx512_vlen_check(false);
         goto simd_zmm;
@@ -7137,7 +7114,7 @@ x86_emulate(
 
     case X86EMUL_OPC_EVEX_66(0x0f, 0x5b): /* vcvtps2dq [xyz]mm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_F3(0x0f, 0x5b): /* vcvttps2dq [xyz]mm/mem,[xyz]mm{k} */
-        generate_exception_if(evex.w, EXC_UD);
+        generate_exception_if(evex.w, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX(0x0f, 0x5b):    /* vcvtdq2ps [xyz]mm/mem,[xyz]mm{k} */
                                           /* vcvtqq2ps [xyz]mm/mem,{x,y}mm{k} */
@@ -7329,7 +7306,7 @@ x86_emulate(
 #ifndef X86EMUL_NO_SIMD
 
     case X86EMUL_OPC_EVEX_66(0x0f, 0xf6): /* vpsadbw [xyz]mm/mem,[xyz]mm,[xyz]mm */
-        generate_exception_if(evex.opmsk, EXC_UD);
+        generate_exception_if(evex.opmsk, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f, 0x60): /* vpunpcklbw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f, 0x61): /* vpunpcklwd [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
@@ -7368,13 +7345,13 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x1d): /* vpabsw [xyz]mm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x66): /* vpblendm{b,w} [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         elem_bytes = 1 << (b & 1);
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_EVEX_66(0x0f, 0x62): /* vpunpckldq [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f, 0x6a): /* vpunpckhdq [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(evex.w, EXC_UD);
+        generate_exception_if(evex.w, X86_EXC_UD);
         fault_suppression = false;
         op_bytes = 16 << evex.lr;
         goto avx512f_no_sae;
@@ -7393,21 +7370,21 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x27): /* vptestm{d,q} [xyz]mm/mem,[xyz]mm,k{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x29): /* vpcmpeqq [xyz]mm/mem,[xyz]mm,k{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x37): /* vpcmpgtq [xyz]mm/mem,[xyz]mm,k{k} */
-        generate_exception_if(!evex.r || !evex.R || evex.z, EXC_UD);
+        generate_exception_if(!evex.r || !evex.R || evex.z, X86_EXC_UD);
         if ( b & (ext == ext_0f38 ? 1 : 2) )
         {
-            generate_exception_if(b != 0x27 && evex.w != (b & 1), EXC_UD);
+            generate_exception_if(b != 0x27 && evex.w != (b & 1), X86_EXC_UD);
             goto avx512f_no_sae;
         }
         host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         elem_bytes = 1 << (ext == ext_0f ? b & 1 : evex.w);
         avx512_vlen_check(false);
         goto simd_zmm;
 
     case X86EMUL_OPC_EVEX_66(0x0f, 0x6b): /* vpackssdw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x2b): /* vpackusdw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(evex.w || evex.brs, EXC_UD);
+        generate_exception_if(evex.w || evex.brs, X86_EXC_UD);
         fault_suppression = false;
         goto avx512f_no_sae;
 
@@ -7418,7 +7395,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f, 0xd4): /* vpaddq [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f, 0xf4): /* vpmuludq [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x28): /* vpmuldq [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(!evex.w, EXC_UD);
+        generate_exception_if(!evex.w, X86_EXC_UD);
         goto avx512f_no_sae;
 
 #endif /* X86EMUL_NO_SIMD */
@@ -7429,7 +7406,7 @@ x86_emulate(
                                           /* vmov{d,q} xmm,r/m */
         if ( vex.opcx != vex_none )
         {
-            generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
             host_and_vcpu_must_have(avx);
             get_fpu(X86EMUL_FPU_ymm);
         }
@@ -7470,7 +7447,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f, 0x7e): /* vmov{d,q} xmm,r/m */
         generate_exception_if((evex.lr || evex.opmsk || evex.brs ||
                                evex.reg != 0xf || !evex.RX),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         get_fpu(X86EMUL_FPU_zmm);
 
@@ -7494,7 +7471,7 @@ x86_emulate(
 
     case X86EMUL_OPC_66(0x0f, 0xe7):     /* movntdq xmm,m128 */
     case X86EMUL_OPC_VEX_66(0x0f, 0xe7): /* vmovntdq {x,y}mm,mem */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         sfence = true;
         /* fall through */
     case X86EMUL_OPC_66(0x0f, 0x6f):     /* movdqa xmm/m128,xmm */
@@ -7514,7 +7491,7 @@ x86_emulate(
 
     case X86EMUL_OPC_EVEX_66(0x0f, 0xe7): /* vmovntdq [xyz]mm,mem */
         generate_exception_if(ea.type != OP_MEM || evex.opmsk || evex.w,
-                              EXC_UD);
+                              X86_EXC_UD);
         sfence = true;
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f, 0x6f): /* vmovdqa{32,64} [xyz]mm/mem,[xyz]mm{k} */
@@ -7522,7 +7499,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f, 0x7f): /* vmovdqa{32,64} [xyz]mm,[xyz]mm/mem{k} */
     case X86EMUL_OPC_EVEX_F3(0x0f, 0x7f): /* vmovdqu{32,64} [xyz]mm,[xyz]mm/mem{k} */
     vmovdqa:
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         d |= TwoOp;
         op_bytes = 16 << evex.lr;
         goto avx512f_no_sae;
@@ -7534,7 +7511,7 @@ x86_emulate(
         goto vmovdqa;
 
     case X86EMUL_OPC_VEX_66(0x0f, 0xd6): /* vmovq xmm,xmm/m64 */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         d |= TwoOp;
         /* fall through */
     case X86EMUL_OPC_66(0x0f, 0xd6):     /* movq xmm,xmm/m64 */
@@ -7619,11 +7596,11 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_F3(0x0f, 0x70): /* vpshufhw $imm8,[xyz]mm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_F2(0x0f, 0x70): /* vpshuflw $imm8,[xyz]mm/mem,[xyz]mm{k} */
         if ( evex.pfx == vex_66 )
-            generate_exception_if(evex.w, EXC_UD);
+            generate_exception_if(evex.w, X86_EXC_UD);
         else
         {
             host_and_vcpu_must_have(avx512bw);
-            generate_exception_if(evex.brs, EXC_UD);
+            generate_exception_if(evex.brs, X86_EXC_UD);
         }
         d = (d & ~SrcMask) | SrcMem | TwoOp;
         op_bytes = 16 << evex.lr;
@@ -7647,7 +7624,7 @@ x86_emulate(
             goto unrecognized_insn;
         }
     simd_0f_shift_imm:
-        generate_exception_if(ea.type != OP_REG, EXC_UD);
+        generate_exception_if(ea.type != OP_REG, X86_EXC_UD);
 
         if ( vex.opcx != vex_none )
         {
@@ -7707,7 +7684,7 @@ x86_emulate(
         {
         case 2: /* vpsrld $imm8,[xyz]mm/mem,[xyz]mm{k} */
         case 6: /* vpslld $imm8,[xyz]mm/mem,[xyz]mm{k} */
-            generate_exception_if(evex.w, EXC_UD);
+            generate_exception_if(evex.w, X86_EXC_UD);
             /* fall through */
         case 0: /* vpror{d,q} $imm8,[xyz]mm/mem,[xyz]mm{k} */
         case 1: /* vprol{d,q} $imm8,[xyz]mm/mem,[xyz]mm{k} */
@@ -7755,11 +7732,11 @@ x86_emulate(
         {
         case 2: /* vpsrlq $imm8,[xyz]mm/mem,[xyz]mm{k} */
         case 6: /* vpsllq $imm8,[xyz]mm/mem,[xyz]mm{k} */
-            generate_exception_if(!evex.w, EXC_UD);
+            generate_exception_if(!evex.w, X86_EXC_UD);
             goto avx512f_shift_imm;
         case 3: /* vpsrldq $imm8,[xyz]mm/mem,[xyz]mm */
         case 7: /* vpslldq $imm8,[xyz]mm/mem,[xyz]mm */
-            generate_exception_if(evex.opmsk, EXC_UD);
+            generate_exception_if(evex.opmsk, X86_EXC_UD);
             goto avx512bw_shift_imm;
         }
         goto unrecognized_insn;
@@ -7773,7 +7750,7 @@ x86_emulate(
     case X86EMUL_OPC_VEX(0x0f, 0x77):    /* vzero{all,upper} */
         if ( vex.opcx != vex_none )
         {
-            generate_exception_if(vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.reg != 0xf, X86_EXC_UD);
             host_and_vcpu_must_have(avx);
             get_fpu(X86EMUL_FPU_ymm);
 
@@ -7841,7 +7818,7 @@ x86_emulate(
         }
         /* fall through */
     case X86EMUL_OPC_F2(0x0f, 0x78):     /* insertq $imm8,$imm8,xmm,xmm */
-        generate_exception_if(ea.type != OP_REG, EXC_UD);
+        generate_exception_if(ea.type != OP_REG, X86_EXC_UD);
 
         host_and_vcpu_must_have(sse4a);
         get_fpu(X86EMUL_FPU_xmm);
@@ -7856,14 +7833,14 @@ x86_emulate(
 
     case X86EMUL_OPC_66(0x0f, 0x79):     /* extrq xmm,xmm */
     case X86EMUL_OPC_F2(0x0f, 0x79):     /* insertq xmm,xmm */
-        generate_exception_if(ea.type != OP_REG, EXC_UD);
+        generate_exception_if(ea.type != OP_REG, X86_EXC_UD);
         host_and_vcpu_must_have(sse4a);
         op_bytes = 8;
         goto simd_0f_xmm;
 
     case X86EMUL_OPC_EVEX_66(0x0f, 0xe6):   /* vcvttpd2dq [xyz]mm/mem,{x,y}mm{k} */
     case X86EMUL_OPC_EVEX_F2(0x0f, 0xe6):   /* vcvtpd2dq [xyz]mm/mem,{x,y}mm{k} */
-        generate_exception_if(!evex.w, EXC_UD);
+        generate_exception_if(!evex.w, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_F3(0x0f, 0x7a):   /* vcvtudq2pd {x,y}mm/mem,[xyz]mm{k} */
                                             /* vcvtuqq2pd [xyz]mm/mem,[xyz]mm{k} */
@@ -7886,7 +7863,7 @@ x86_emulate(
         else
         {
             host_and_vcpu_must_have(avx512f);
-            generate_exception_if(ea.type != OP_MEM && evex.brs, EXC_UD);
+            generate_exception_if(ea.type != OP_MEM && evex.brs, X86_EXC_UD);
         }
         if ( ea.type != OP_REG || !evex.brs )
             avx512_vlen_check(false);
@@ -7896,7 +7873,7 @@ x86_emulate(
 
     case X86EMUL_OPC_F2(0x0f, 0xf0):     /* lddqu m128,xmm */
     case X86EMUL_OPC_VEX_F2(0x0f, 0xf0): /* vlddqu mem,{x,y}mm */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_66(0x0f, 0x7c):     /* haddpd xmm/m128,xmm */
     case X86EMUL_OPC_F2(0x0f, 0x7c):     /* haddps xmm/m128,xmm */
@@ -7915,14 +7892,14 @@ x86_emulate(
 
     case X86EMUL_OPC_F3(0x0f, 0x7e):     /* movq xmm/m64,xmm */
     case X86EMUL_OPC_VEX_F3(0x0f, 0x7e): /* vmovq xmm/m64,xmm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         op_bytes = 8;
         goto simd_0f_int;
 
     case X86EMUL_OPC_EVEX_F3(0x0f, 0x7e): /* vmovq xmm/m64,xmm */
     case X86EMUL_OPC_EVEX_66(0x0f, 0xd6): /* vmovq xmm,xmm/m64 */
         generate_exception_if(evex.lr || !evex.w || evex.opmsk || evex.brs,
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         d |= TwoOp;
         op_bytes = 8;
@@ -7944,11 +7921,11 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX(0x0f, 0x91):    /* kmov{w,q} k,mem */
     case X86EMUL_OPC_VEX_66(0x0f, 0x91): /* kmov{b,d} k,mem */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_VEX(0x0f, 0x90):    /* kmov{w,q} k/mem,k */
     case X86EMUL_OPC_VEX_66(0x0f, 0x90): /* kmov{b,d} k/mem,k */
-        generate_exception_if(vex.l || !vex.r, EXC_UD);
+        generate_exception_if(vex.l || !vex.r, X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( vex.w )
         {
@@ -7981,14 +7958,14 @@ x86_emulate(
     case X86EMUL_OPC_VEX_66(0x0f, 0x92): /* kmovb r32,k */
     case X86EMUL_OPC_VEX_F2(0x0f, 0x92): /* kmov{d,q} reg,k */
         generate_exception_if(vex.l || !vex.r || vex.reg != 0xf ||
-                              ea.type != OP_REG, EXC_UD);
+                              ea.type != OP_REG, X86_EXC_UD);
 
         host_and_vcpu_must_have(avx512f);
         if ( vex.pfx == vex_f2 )
             host_and_vcpu_must_have(avx512bw);
         else
         {
-            generate_exception_if(vex.w, EXC_UD);
+            generate_exception_if(vex.w, X86_EXC_UD);
             if ( vex.pfx )
                 host_and_vcpu_must_have(avx512dq);
         }
@@ -8018,7 +7995,7 @@ x86_emulate(
     case X86EMUL_OPC_VEX_66(0x0f, 0x93): /* kmovb k,r32 */
     case X86EMUL_OPC_VEX_F2(0x0f, 0x93): /* kmov{d,q} k,reg */
         generate_exception_if(vex.l || vex.reg != 0xf || ea.type != OP_REG,
-                              EXC_UD);
+                              X86_EXC_UD);
         dst = ea;
         dst.reg = decode_gpr(&_regs, modrm_reg);
 
@@ -8030,7 +8007,7 @@ x86_emulate(
         }
         else
         {
-            generate_exception_if(vex.w, EXC_UD);
+            generate_exception_if(vex.w, X86_EXC_UD);
             dst.bytes = 4;
             if ( vex.pfx )
                 host_and_vcpu_must_have(avx512dq);
@@ -8063,7 +8040,7 @@ x86_emulate(
     case X86EMUL_OPC_VEX_66(0x0f, 0x98): /* kortest{b,d} k,k */
     case X86EMUL_OPC_VEX_66(0x0f, 0x99): /* ktest{b,d} k,k */
         generate_exception_if(vex.l || !vex.r || vex.reg != 0xf ||
-                              ea.type != OP_REG, EXC_UD);
+                              ea.type != OP_REG, X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( vex.w )
             host_and_vcpu_must_have(avx512bw);
@@ -8109,7 +8086,7 @@ x86_emulate(
             goto done;
 
         generate_exception_if((msr_val & MSR_MISC_FEATURES_CPUID_FAULTING),
-                              EXC_GP, 0); /* Faulting active? (Inc. CPL test) */
+                              X86_EXC_GP, 0); /* Faulting active? (Inc. CPL test) */
 
         rc = ops->cpuid(_regs.eax, _regs.ecx, &cpuid_leaf, ctxt);
         if ( rc != X86EMUL_OKAY )
@@ -8121,7 +8098,7 @@ x86_emulate(
         break;
 
     case X86EMUL_OPC(0x0f, 0xa3): bt: /* bt */
-        generate_exception_if(lock_prefix, EXC_UD);
+        generate_exception_if(lock_prefix, X86_EXC_UD);
 
         if ( ops->rmw && dst.type == OP_MEM &&
              (rc = read_ulong(dst.mem.seg, dst.mem.off, &dst.val,
@@ -8138,7 +8115,7 @@ x86_emulate(
     case X86EMUL_OPC(0x0f, 0xad): /* shrd %%cl,r,r/m */ {
         uint8_t shift, width = dst.bytes << 3;
 
-        generate_exception_if(lock_prefix, EXC_UD);
+        generate_exception_if(lock_prefix, X86_EXC_UD);
 
         if ( b & 1 )
             shift = _regs.cl;
@@ -8192,12 +8169,12 @@ x86_emulate(
     !defined(X86EMUL_NO_SIMD)
         case 0: /* fxsave */
         case 1: /* fxrstor */
-            generate_exception_if(vex.pfx, EXC_UD);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
             vcpu_must_have(fxsr);
-            generate_exception_if(ea.type != OP_MEM, EXC_UD);
+            generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
             generate_exception_if(!is_aligned(ea.mem.seg, ea.mem.off, 16,
                                               ctxt, ops),
-                                  EXC_GP, 0);
+                                  X86_EXC_GP, 0);
             fail_if(!ops->blk);
             op_bytes =
 #ifdef __x86_64__
@@ -8233,20 +8210,20 @@ x86_emulate(
 
 #ifndef X86EMUL_NO_SIMD
         case 2: /* ldmxcsr */
-            generate_exception_if(vex.pfx, EXC_UD);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
             vcpu_must_have(sse);
         ldmxcsr:
-            generate_exception_if(src.type != OP_MEM, EXC_UD);
+            generate_exception_if(src.type != OP_MEM, X86_EXC_UD);
             get_fpu(vex.opcx ? X86EMUL_FPU_ymm : X86EMUL_FPU_xmm);
-            generate_exception_if(src.val & ~mxcsr_mask, EXC_GP, 0);
+            generate_exception_if(src.val & ~mxcsr_mask, X86_EXC_GP, 0);
             asm volatile ( "ldmxcsr %0" :: "m" (src.val) );
             break;
 
         case 3: /* stmxcsr */
-            generate_exception_if(vex.pfx, EXC_UD);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
             vcpu_must_have(sse);
         stmxcsr:
-            generate_exception_if(dst.type != OP_MEM, EXC_UD);
+            generate_exception_if(dst.type != OP_MEM, X86_EXC_UD);
             get_fpu(vex.opcx ? X86EMUL_FPU_ymm : X86EMUL_FPU_xmm);
             asm volatile ( "stmxcsr %0" : "=m" (dst.val) );
             break;
@@ -8254,14 +8231,14 @@ x86_emulate(
 
         case 5: /* lfence */
             fail_if(modrm_mod != 3);
-            generate_exception_if(vex.pfx, EXC_UD);
+            generate_exception_if(vex.pfx, X86_EXC_UD);
             vcpu_must_have(sse2);
             asm volatile ( "lfence" ::: "memory" );
             break;
         case 6:
             if ( modrm_mod == 3 ) /* mfence */
             {
-                generate_exception_if(vex.pfx, EXC_UD);
+                generate_exception_if(vex.pfx, X86_EXC_UD);
                 vcpu_must_have(sse2);
                 asm volatile ( "mfence" ::: "memory" );
                 break;
@@ -8277,7 +8254,7 @@ x86_emulate(
         case 7:
             if ( modrm_mod == 3 ) /* sfence */
             {
-                generate_exception_if(vex.pfx, EXC_UD);
+                generate_exception_if(vex.pfx, X86_EXC_UD);
                 vcpu_must_have(mmxext);
                 asm volatile ( "sfence" ::: "memory" );
                 break;
@@ -8305,11 +8282,11 @@ x86_emulate(
         switch ( modrm_reg & 7 )
         {
         case 2: /* vldmxcsr */
-            generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
             vcpu_must_have(avx);
             goto ldmxcsr;
         case 3: /* vstmxcsr */
-            generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
             vcpu_must_have(avx);
             goto stmxcsr;
         }
@@ -8319,11 +8296,11 @@ x86_emulate(
 
     case X86EMUL_OPC_F3(0x0f, 0xae): /* Grp15 */
         fail_if(modrm_mod != 3);
-        generate_exception_if((modrm_reg & 4) || !mode_64bit(), EXC_UD);
+        generate_exception_if((modrm_reg & 4) || !mode_64bit(), X86_EXC_UD);
         fail_if(!ops->read_cr);
         if ( (rc = ops->read_cr(4, &cr4, ctxt)) != X86EMUL_OKAY )
             goto done;
-        generate_exception_if(!(cr4 & X86_CR4_FSGSBASE), EXC_UD);
+        generate_exception_if(!(cr4 & X86_CR4_FSGSBASE), X86_EXC_UD);
         seg = modrm_reg & 1 ? x86_seg_gs : x86_seg_fs;
         fail_if(!ops->read_segment);
         if ( (rc = ops->read_segment(seg, &sreg, ctxt)) != X86EMUL_OKAY )
@@ -8343,7 +8320,7 @@ x86_emulate(
             {
                 sreg.base = *dst.reg;
                 generate_exception_if(!is_canonical_address(sreg.base),
-                                      EXC_GP, 0);
+                                      X86_EXC_GP, 0);
             }
             else
                 sreg.base = (uint32_t)*dst.reg;
@@ -8445,7 +8422,7 @@ x86_emulate(
         case 5: goto bts;
         case 6: goto btr;
         case 7: goto btc;
-        default: generate_exception(EXC_UD);
+        default: generate_exception(X86_EXC_UD);
         }
         break;
 
@@ -8563,7 +8540,7 @@ x86_emulate(
                                (ea.type != OP_REG && evex.brs &&
                                 (evex.pfx & VEX_PREFIX_SCALAR_MASK)) ||
                                !evex.r || !evex.R || evex.z),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( ea.type != OP_REG || !evex.brs )
             avx512_vlen_check(evex.pfx & VEX_PREFIX_SCALAR_MASK);
@@ -8595,7 +8572,7 @@ x86_emulate(
 
     CASE_SIMD_PACKED_INT_VEX(0x0f, 0xc4):  /* pinsrw $imm8,r32/m16,{,x}mm */
                                            /* vpinsrw $imm8,r32/m16,xmm,xmm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         memcpy(mmvalp, &src.val, 2);
         ea.type = OP_MEM;
         state->simd_size = simd_other;
@@ -8606,7 +8583,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f, 0xc4):   /* vpinsrw $imm8,r32/m16,xmm,xmm */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x20): /* vpinsrb $imm8,r32/m8,xmm,xmm */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x22): /* vpinsr{d,q} $imm8,r/m,xmm,xmm */
-        generate_exception_if(evex.lr || evex.opmsk || evex.brs, EXC_UD);
+        generate_exception_if(evex.lr || evex.opmsk || evex.brs, X86_EXC_UD);
         if ( b & 2 )
             host_and_vcpu_must_have(avx512dq);
         else
@@ -8623,7 +8600,7 @@ x86_emulate(
 
     CASE_SIMD_PACKED_INT_VEX(0x0f, 0xc5):  /* pextrw $imm8,{,x}mm,reg */
                                            /* vpextrw $imm8,xmm,reg */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         opc = init_prefixes(stub);
         opc[0] = b;
         /* Convert GPR destination to %rAX. */
@@ -8640,7 +8617,7 @@ x86_emulate(
 
     CASE_SIMD_PACKED_FP(_EVEX, 0x0f, 0xc6): /* vshufp{s,d} $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         generate_exception_if(evex.w != (evex.pfx & VEX_PREFIX_DOUBLE_MASK),
-                              EXC_UD);
+                              X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x03): /* valign{d,q} $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         fault_suppression = false;
@@ -8648,7 +8625,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x25): /* vpternlog{d,q} $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     avx512f_imm8_no_sae:
         host_and_vcpu_must_have(avx512f);
-        generate_exception_if(ea.type != OP_MEM && evex.brs, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM && evex.brs, X86_EXC_UD);
         avx512_vlen_check(false);
         goto simd_imm8_zmm;
 
@@ -8672,7 +8649,7 @@ x86_emulate(
 
             case 6: /* rdrand */
 #ifdef HAVE_AS_RDRAND
-                generate_exception_if(rep_prefix(), EXC_UD);
+                generate_exception_if(rep_prefix(), X86_EXC_UD);
                 host_and_vcpu_must_have(rdrand);
                 dst = ea;
                 switch ( op_bytes )
@@ -8703,7 +8680,7 @@ x86_emulate(
             case 7: /* rdseed / rdpid */
                 if ( repe_prefix() ) /* rdpid */
                 {
-                    generate_exception_if(ea.type != OP_REG, EXC_UD);
+                    generate_exception_if(ea.type != OP_REG, X86_EXC_UD);
                     vcpu_must_have(rdpid);
                     fail_if(!ops->read_msr);
                     if ( (rc = ops->read_msr(MSR_TSC_AUX, &msr_val,
@@ -8715,7 +8692,7 @@ x86_emulate(
                     break;
                 }
 #ifdef HAVE_AS_RDSEED
-                generate_exception_if(rep_prefix(), EXC_UD);
+                generate_exception_if(rep_prefix(), X86_EXC_UD);
                 host_and_vcpu_must_have(rdseed);
                 dst = ea;
                 switch ( op_bytes )
@@ -8745,14 +8722,14 @@ x86_emulate(
         }
 
         /* cmpxchg8b/cmpxchg16b */
-        generate_exception_if((modrm_reg & 7) != 1, EXC_UD);
+        generate_exception_if((modrm_reg & 7) != 1, X86_EXC_UD);
         fail_if(!ops->cmpxchg);
         if ( rex_prefix & REX_W )
         {
             host_and_vcpu_must_have(cx16);
             generate_exception_if(!is_aligned(ea.mem.seg, ea.mem.off, 16,
                                               ctxt, ops),
-                                  EXC_GP, 0);
+                                  X86_EXC_GP, 0);
             op_bytes = 16;
         }
         else
@@ -8851,7 +8828,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f, 0xe2): /* vpsra{d,q} xmm/m128,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f, 0xf2): /* vpslld xmm/m128,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f, 0xf3): /* vpsllq xmm/m128,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x0c): /* vpermilps [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x0d): /* vpermilpd [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
@@ -8864,7 +8841,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f, 0xfe): /* vpaddd [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x1e): /* vpabsd [xyz]mm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x1f): /* vpabsq [xyz]mm/mem,[xyz]mm{k} */
-        generate_exception_if(evex.w != (b & 1), EXC_UD);
+        generate_exception_if(evex.w != (b & 1), X86_EXC_UD);
         goto avx512f_no_sae;
 
 #endif /* !X86EMUL_NO_SIMD */
@@ -8881,7 +8858,7 @@ x86_emulate(
 
     case X86EMUL_OPC_F3(0x0f, 0xd6):     /* movq2dq mm,xmm */
     case X86EMUL_OPC_F2(0x0f, 0xd6):     /* movdq2q xmm,mm */
-        generate_exception_if(ea.type != OP_REG, EXC_UD);
+        generate_exception_if(ea.type != OP_REG, X86_EXC_UD);
         op_bytes = 8;
         host_and_vcpu_must_have(mmx);
         goto simd_0f_int;
@@ -8890,7 +8867,7 @@ x86_emulate(
 #ifndef X86EMUL_NO_MMX
 
     case X86EMUL_OPC(0x0f, 0xe7):        /* movntq mm,m64 */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         sfence = true;
         /* fall through */
     case X86EMUL_OPC(0x0f, 0xda):        /* pminub mm/m64,mm */
@@ -8913,7 +8890,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f, 0xea): /* vpminsw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f, 0xee): /* vpmaxsw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         elem_bytes = b & 0x10 ? 1 : 2;
         goto avx512f_no_sae;
 
@@ -8930,10 +8907,10 @@ x86_emulate(
 #endif /* !X86EMUL_NO_SIMD */
 
     CASE_SIMD_PACKED_INT_VEX(0x0f, 0xf7): /* {,v}maskmov{q,dqu} {,x}mm,{,x}mm */
-        generate_exception_if(ea.type != OP_REG, EXC_UD);
+        generate_exception_if(ea.type != OP_REG, X86_EXC_UD);
         if ( vex.opcx != vex_none )
         {
-            generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
             d |= TwoOp;
             host_and_vcpu_must_have(avx);
             get_fpu(X86EMUL_FPU_ymm);
@@ -9036,23 +9013,23 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0x19): /* vbroadcastsd xmm/m64,ymm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x1a): /* vbroadcastf128 m128,ymm */
-        generate_exception_if(!vex.l, EXC_UD);
+        generate_exception_if(!vex.l, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x18): /* vbroadcastss xmm/m32,{x,y}mm */
         if ( ea.type != OP_MEM )
         {
-            generate_exception_if(b & 2, EXC_UD);
+            generate_exception_if(b & 2, X86_EXC_UD);
             host_and_vcpu_must_have(avx2);
         }
         /* fall through */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x0c): /* vpermilps {x,y}mm/mem,{x,y}mm,{x,y}mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x0d): /* vpermilpd {x,y}mm/mem,{x,y}mm,{x,y}mm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_avx;
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0x0e): /* vtestps {x,y}mm/mem,{x,y}mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x0f): /* vtestpd {x,y}mm/mem,{x,y}mm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_66(0x0f38, 0x17):     /* ptest xmm/m128,xmm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x17): /* vptest {x,y}mm/mem,{x,y}mm */
@@ -9063,7 +9040,7 @@ x86_emulate(
         }
         else
         {
-            generate_exception_if(vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.reg != 0xf, X86_EXC_UD);
             host_and_vcpu_must_have(avx);
             get_fpu(X86EMUL_FPU_ymm);
         }
@@ -9138,7 +9115,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x11): /* vpsravw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x12): /* vpsllvw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(!evex.w || evex.brs, EXC_UD);
+        generate_exception_if(!evex.w || evex.brs, X86_EXC_UD);
         elem_bytes = 2;
         goto avx512f_no_sae;
 
@@ -9160,7 +9137,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x33): /* vpmovzxwd {x,y}mm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x34): /* vpmovzxwq xmm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x35): /* vpmovzxdq {x,y}mm/mem,[xyz]mm{k} */
-            generate_exception_if(evex.w && (b & 7) == 5, EXC_UD);
+            generate_exception_if(evex.w && (b & 7) == 5, X86_EXC_UD);
         }
         else
         {
@@ -9179,22 +9156,22 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x33): /* vpmovdw [xyz]mm,{x,y}mm/mem{k} */
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x34): /* vpmovqw [xyz]mm,xmm/mem{k} */
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x35): /* vpmovqd [xyz]mm,{x,y}mm/mem{k} */
-            generate_exception_if(evex.w || (ea.type != OP_REG && evex.z), EXC_UD);
+            generate_exception_if(evex.w || (ea.type != OP_REG && evex.z), X86_EXC_UD);
             d = DstMem | SrcReg | TwoOp;
         }
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         op_bytes = 32 >> (pmov_convert_delta[b & 7] + 1 - evex.lr);
         elem_bytes = (b & 7) < 3 ? 1 : (b & 7) != 5 ? 2 : 4;
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0x13): /* vcvtph2ps xmm/mem,{x,y}mm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         host_and_vcpu_must_have(f16c);
         op_bytes = 8 << vex.l;
         goto simd_0f_ymm;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x13): /* vcvtph2ps {x,y}mm/mem,[xyz]mm{k} */
-        generate_exception_if(evex.w || (ea.type != OP_REG && evex.brs), EXC_UD);
+        generate_exception_if(evex.w || (ea.type != OP_REG && evex.brs), X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         if ( !evex.brs )
             avx512_vlen_check(false);
@@ -9204,19 +9181,19 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0x16): /* vpermps ymm/m256,ymm,ymm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x36): /* vpermd ymm/m256,ymm,ymm */
-        generate_exception_if(!vex.l || vex.w, EXC_UD);
+        generate_exception_if(!vex.l || vex.w, X86_EXC_UD);
         goto simd_0f_avx2;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x16): /* vpermp{s,d} {y,z}mm/mem,{y,z}mm,{y,z}mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x36): /* vperm{d,q} {y,z}mm/mem,{y,z}mm,{y,z}mm{k} */
-        generate_exception_if(!evex.lr, EXC_UD);
+        generate_exception_if(!evex.lr, X86_EXC_UD);
         fault_suppression = false;
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x18): /* vbroadcastss xmm/m32,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x58): /* vpbroadcastd xmm/m32,[xyz]mm{k} */
         op_bytes = elem_bytes;
-        generate_exception_if(evex.w || evex.brs, EXC_UD);
+        generate_exception_if(evex.w || evex.brs, X86_EXC_UD);
     avx512_broadcast:
         /*
          * For the respective code below the main switch() to work we need to
@@ -9237,17 +9214,17 @@ x86_emulate(
                                             /* vbroadcastf64x4 m256,zmm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x5b): /* vbroadcasti32x8 m256,zmm{k} */
                                             /* vbroadcasti64x4 m256,zmm{k} */
-        generate_exception_if(ea.type != OP_MEM || evex.lr != 2, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM || evex.lr != 2, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x19): /* vbroadcastsd xmm/m64,{y,z}mm{k} */
                                             /* vbroadcastf32x2 xmm/m64,{y,z}mm{k} */
-        generate_exception_if(!evex.lr, EXC_UD);
+        generate_exception_if(!evex.lr, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x59): /* vpbroadcastq xmm/m64,[xyz]mm{k} */
                                             /* vbroadcasti32x2 xmm/m64,[xyz]mm{k} */
         if ( b == 0x59 )
             op_bytes = 8;
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         if ( !evex.w )
             host_and_vcpu_must_have(avx512dq);
         goto avx512_broadcast;
@@ -9257,7 +9234,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x5a): /* vbroadcasti32x4 m128,{y,z}mm{k} */
                                             /* vbroadcasti64x2 m128,{y,z}mm{k} */
         generate_exception_if(ea.type != OP_MEM || !evex.lr || evex.brs,
-                              EXC_UD);
+                              X86_EXC_UD);
         if ( evex.w )
             host_and_vcpu_must_have(avx512dq);
         goto avx512_broadcast;
@@ -9279,7 +9256,7 @@ x86_emulate(
 
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x29): /* vpmov{b,w}2m [xyz]mm,k */
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x39): /* vpmov{d,q}2m [xyz]mm,k */
-        generate_exception_if(!evex.r || !evex.R, EXC_UD);
+        generate_exception_if(!evex.r || !evex.R, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x28): /* vpmovm2{b,w} k,[xyz]mm */
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x38): /* vpmovm2{d,q} k,[xyz]mm */
@@ -9287,14 +9264,14 @@ x86_emulate(
             host_and_vcpu_must_have(avx512dq);
         else
             host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.opmsk || ea.type != OP_REG, EXC_UD);
+        generate_exception_if(evex.opmsk || ea.type != OP_REG, X86_EXC_UD);
         d |= TwoOp;
         op_bytes = 16 << evex.lr;
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_66(0x0f38, 0x2a):     /* movntdqa m128,xmm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x2a): /* vmovntdqa mem,{x,y}mm */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         /* Ignore the non-temporal hint for now, using movdqa instead. */
         asm volatile ( "mfence" ::: "memory" );
         b = 0x6f;
@@ -9310,7 +9287,7 @@ x86_emulate(
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x2a): /* vmovntdqa mem,[xyz]mm */
         generate_exception_if(ea.type != OP_MEM || evex.opmsk || evex.w,
-                              EXC_UD);
+                              X86_EXC_UD);
         /* Ignore the non-temporal hint for now, using vmovdqa32 instead. */
         asm volatile ( "mfence" ::: "memory" );
         b = 0x6f;
@@ -9321,7 +9298,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x3a): /* vpbroadcastmw2d k,[xyz]mm */
         generate_exception_if((ea.type != OP_REG || evex.opmsk ||
                                evex.w == ((b >> 4) & 1)),
-                              EXC_UD);
+                              X86_EXC_UD);
         d |= TwoOp;
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xc4): /* vpconflict{d,q} [xyz]mm/mem,[xyz]mm{k} */
@@ -9338,7 +9315,7 @@ x86_emulate(
     {
         typeof(vex) *pvex;
 
-        generate_exception_if(ea.type != OP_MEM || vex.w, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM || vex.w, X86_EXC_UD);
         host_and_vcpu_must_have(avx);
         elem_bytes = 4 << (b & 1);
     vmaskmov:
@@ -9425,7 +9402,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xbf): /* vfnmsub231s{s,d} xmm/mem,xmm,xmm{k} */
         host_and_vcpu_must_have(avx512f);
     simd_zmm_scalar_sae:
-        generate_exception_if(ea.type != OP_REG && evex.brs, EXC_UD);
+        generate_exception_if(ea.type != OP_REG && evex.brs, X86_EXC_UD);
         if ( !evex.brs )
             avx512_vlen_check(true);
         goto simd_zmm;
@@ -9439,7 +9416,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x3c): /* vpmaxsb [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x3e): /* vpmaxuw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         elem_bytes = b & 2 ?: 1;
         goto avx512f_no_sae;
 
@@ -9459,7 +9436,7 @@ x86_emulate(
             goto simd_0f38_common;
         /* fall through */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x41): /* vphminposuw xmm/m128,xmm,xmm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         goto simd_0f_avx;
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0x50): /* vpdpbusd [xy]mm/mem,[xy]mm,[xy]mm */
@@ -9467,7 +9444,7 @@ x86_emulate(
     case X86EMUL_OPC_VEX_66(0x0f38, 0x52): /* vpdpwssd [xy]mm/mem,[xy]mm,[xy]mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x53): /* vpdpwssds [xy]mm/mem,[xy]mm,[xy]mm */
         host_and_vcpu_must_have(avx_vnni);
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_avx;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x50): /* vpdpbusd [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
@@ -9475,7 +9452,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x52): /* vpdpwssd [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x53): /* vpdpwssds [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512_vnni);
-        generate_exception_if(evex.w, EXC_UD);
+        generate_exception_if(evex.w, X86_EXC_UD);
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_EVEX_F2(0x0f38, 0x72): /* vcvtne2ps2bf16 [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
@@ -9487,7 +9464,7 @@ x86_emulate(
         /* fall through */
     case X86EMUL_OPC_EVEX_F3(0x0f38, 0x52): /* vdpbf16ps [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512_bf16);
-        generate_exception_if(evex.w, EXC_UD);
+        generate_exception_if(evex.w, X86_EXC_UD);
         op_bytes = 16 << evex.lr;
         goto avx512f_no_sae;
 
@@ -9498,13 +9475,13 @@ x86_emulate(
         op_bytes = 1 << ((!(b & 0x20) * 2) + (b & 1));
         /* fall through */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x46): /* vpsravd {x,y}mm/mem,{x,y}mm,{x,y}mm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_avx2;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x4d): /* vrcp14s{s,d} xmm/mem,xmm,xmm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x4f): /* vrsqrt14s{s,d} xmm/mem,xmm,xmm{k} */
         host_and_vcpu_must_have(avx512f);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         avx512_vlen_check(true);
         goto simd_zmm;
 
@@ -9513,16 +9490,16 @@ x86_emulate(
         host_and_vcpu_must_have(avx512_4vnniw);
         generate_exception_if((ea.type != OP_MEM || evex.w || evex.brs ||
                                evex.lr != 2),
-                              EXC_UD);
+                              X86_EXC_UD);
         op_mask = op_mask & 0xffff ? 0xf : 0;
         goto simd_zmm;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x8f): /* vpshufbitqmb [xyz]mm/mem,[xyz]mm,k{k} */
-        generate_exception_if(evex.w || !evex.r || !evex.R || evex.z, EXC_UD);
+        generate_exception_if(evex.w || !evex.r || !evex.R || evex.z, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x54): /* vpopcnt{b,w} [xyz]mm/mem,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512_bitalg);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         elem_bytes = 1 << evex.w;
         goto avx512f_no_sae;
 
@@ -9531,7 +9508,7 @@ x86_emulate(
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0x5a): /* vbroadcasti128 m128,ymm */
-        generate_exception_if(ea.type != OP_MEM || !vex.l || vex.w, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM || !vex.l || vex.w, X86_EXC_UD);
         goto simd_0f_avx2;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x62): /* vpexpand{b,w} [xyz]mm/mem,[xyz]mm{k} */
@@ -9544,7 +9521,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x8a): /* vcompressp{s,d} [xyz]mm,[xyz]mm/mem{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x8b): /* vpcompress{d,q} [xyz]mm,[xyz]mm/mem{k} */
         host_and_vcpu_must_have(avx512f);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         avx512_vlen_check(false);
         /*
          * For the respective code below the main switch() to work we need to
@@ -9566,13 +9543,13 @@ x86_emulate(
 
     case X86EMUL_OPC_EVEX_F2(0x0f38, 0x68): /* vp2intersect{d,q} [xyz]mm/mem,[xyz]mm,k+1 */
         host_and_vcpu_must_have(avx512_vp2intersect);
-        generate_exception_if(evex.opmsk || !evex.r || !evex.R, EXC_UD);
+        generate_exception_if(evex.opmsk || !evex.r || !evex.R, X86_EXC_UD);
         op_bytes = 16 << evex.lr;
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x70): /* vpshldvw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x72): /* vpshrdvw [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(!evex.w, EXC_UD);
+        generate_exception_if(!evex.w, X86_EXC_UD);
         elem_bytes = 2;
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x71): /* vpshldv{d,q} [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
@@ -9587,14 +9564,14 @@ x86_emulate(
             host_and_vcpu_must_have(avx512_vbmi);
         else
             host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         fault_suppression = false;
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x78): /* vpbroadcastb xmm/m8,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x79): /* vpbroadcastw xmm/m16,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.w || evex.brs, EXC_UD);
+        generate_exception_if(evex.w || evex.brs, X86_EXC_UD);
         op_bytes = elem_bytes = 1 << (b & 1);
         /* See the comment at the avx512_broadcast label. */
         op_mask |= !(b & 1 ? !(uint32_t)op_mask : !op_mask);
@@ -9603,12 +9580,12 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x7a): /* vpbroadcastb r32,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x7b): /* vpbroadcastw r32,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.w, EXC_UD);
+        generate_exception_if(evex.w, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x7c): /* vpbroadcast{d,q} reg,[xyz]mm{k} */
         generate_exception_if((ea.type != OP_REG || evex.brs ||
                                evex.reg != 0xf || !evex.RX),
-                              EXC_UD);
+                              X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         avx512_vlen_check(false);
         get_fpu(X86EMUL_FPU_zmm);
@@ -9634,21 +9611,21 @@ x86_emulate(
 
     case X86EMUL_OPC_66(0x0f38, 0x82): /* invpcid reg,m128 */
         vcpu_must_have(invpcid);
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
-        generate_exception_if(!mode_ring0(), EXC_GP, 0);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
+        generate_exception_if(!mode_ring0(), X86_EXC_GP, 0);
 
         if ( (rc = ops->read(ea.mem.seg, ea.mem.off, mmvalp, 16,
                              ctxt)) != X86EMUL_OKAY )
             goto done;
 
-        generate_exception_if(mmvalp->xmm[0] & ~0xfff, EXC_GP, 0);
+        generate_exception_if(mmvalp->xmm[0] & ~0xfff, X86_EXC_GP, 0);
         dst.val = mode_64bit() ? *dst.reg : (uint32_t)*dst.reg;
 
         switch ( dst.val )
         {
         case X86_INVPCID_INDIV_ADDR:
              generate_exception_if(!is_canonical_address(mmvalp->xmm[1]),
-                                   EXC_GP, 0);
+                                   X86_EXC_GP, 0);
              /* fall through */
         case X86_INVPCID_SINGLE_CTXT:
              if ( !mode_64bit() || !ops->read_cr )
@@ -9656,13 +9633,13 @@ x86_emulate(
              else if ( (rc = ops->read_cr(4, &cr4, ctxt)) != X86EMUL_OKAY )
                  goto done;
              generate_exception_if(!(cr4 & X86_CR4_PCIDE) && mmvalp->xmm[0],
-                                   EXC_GP, 0);
+                                   X86_EXC_GP, 0);
              break;
         case X86_INVPCID_ALL_INCL_GLOBAL:
         case X86_INVPCID_ALL_NON_GLOBAL:
              break;
         default:
-             generate_exception(EXC_GP, 0);
+             generate_exception(X86_EXC_GP, 0);
         }
 
         fail_if(!ops->tlb_op);
@@ -9677,14 +9654,14 @@ x86_emulate(
 #ifndef X86EMUL_NO_SIMD
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0x83): /* vpmultishiftqb [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(!evex.w, EXC_UD);
+        generate_exception_if(!evex.w, X86_EXC_UD);
         host_and_vcpu_must_have(avx512_vbmi);
         fault_suppression = false;
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0x8c): /* vpmaskmov{d,q} mem,{x,y}mm,{x,y}mm */
     case X86EMUL_OPC_VEX_66(0x0f38, 0x8e): /* vpmaskmov{d,q} {x,y}mm,{x,y}mm,mem */
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         host_and_vcpu_must_have(avx2);
         elem_bytes = 4 << vex.w;
         goto vmaskmov;
@@ -9705,8 +9682,8 @@ x86_emulate(
         ASSERT(ea.type == OP_MEM);
         generate_exception_if(modrm_reg == state->sib_index ||
                               modrm_reg == mask_reg ||
-                              state->sib_index == mask_reg, EXC_UD);
-        generate_exception_if(!cpu_has_avx, EXC_UD);
+                              state->sib_index == mask_reg, X86_EXC_UD);
+        generate_exception_if(!cpu_has_avx, X86_EXC_UD);
         vcpu_must_have(avx2);
         get_fpu(X86EMUL_FPU_ymm);
 
@@ -9825,7 +9802,7 @@ x86_emulate(
         generate_exception_if((!evex.opmsk || evex.brs || evex.z ||
                                evex.reg != 0xf ||
                                modrm_reg == state->sib_index),
-                              EXC_UD);
+                              X86_EXC_UD);
         avx512_vlen_check(false);
         host_and_vcpu_must_have(avx512f);
         get_fpu(X86EMUL_FPU_zmm);
@@ -9975,7 +9952,7 @@ x86_emulate(
         host_and_vcpu_must_have(avx512_4fmaps);
         generate_exception_if((ea.type != OP_MEM || evex.w || evex.brs ||
                                evex.lr != 2),
-                              EXC_UD);
+                              X86_EXC_UD);
         op_mask = op_mask & 0xffff ? 0xf : 0;
         goto simd_zmm;
 
@@ -9984,7 +9961,7 @@ x86_emulate(
         host_and_vcpu_must_have(avx512_4fmaps);
         generate_exception_if((ea.type != OP_MEM || evex.w || evex.brs ||
                                evex.lr == 3),
-                              EXC_UD);
+                              X86_EXC_UD);
         op_mask = op_mask & 1 ? 0xf : 0;
         goto simd_zmm;
 
@@ -10005,7 +9982,7 @@ x86_emulate(
         generate_exception_if((!evex.opmsk || evex.brs || evex.z ||
                                evex.reg != 0xf ||
                                modrm_reg == state->sib_index),
-                              EXC_UD);
+                              X86_EXC_UD);
         avx512_vlen_check(false);
         host_and_vcpu_must_have(avx512f);
         get_fpu(X86EMUL_FPU_zmm);
@@ -10091,7 +10068,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xb4): /* vpmadd52luq [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xb5): /* vpmadd52huq [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512_ifma);
-        generate_exception_if(!evex.w, EXC_UD);
+        generate_exception_if(!evex.w, X86_EXC_UD);
         goto avx512f_no_sae;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xc6):
@@ -10108,7 +10085,7 @@ x86_emulate(
         ASSERT(ea.type == OP_MEM);
         generate_exception_if((!cpu_has_avx512f || !evex.opmsk || evex.brs ||
                                evex.z || evex.reg != 0xf || evex.lr != 2),
-                              EXC_UD);
+                              X86_EXC_UD);
 
         switch ( modrm_reg & 7 )
         {
@@ -10119,7 +10096,7 @@ x86_emulate(
             vcpu_must_have(avx512pf);
             break;
         default:
-            generate_exception(EXC_UD);
+            generate_exception(X86_EXC_UD);
         }
 
         get_fpu(X86EMUL_FPU_zmm);
@@ -10200,7 +10177,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xcc): /* vrsqrt28p{s,d} zmm/mem,zmm{k} */
         host_and_vcpu_must_have(avx512er);
         generate_exception_if((ea.type != OP_REG || !evex.brs) && evex.lr != 2,
-                              EXC_UD);
+                              X86_EXC_UD);
         goto simd_zmm;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xcb): /* vrcp28s{s,d} xmm/mem,xmm,xmm{k} */
@@ -10214,12 +10191,12 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX_66(0x0f38, 0xcf):  /* vgf2p8mulb {x,y}mm/mem,{x,y}mm,{x,y}mm */
         host_and_vcpu_must_have(gfni);
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_avx;
 
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xcf): /* vgf2p8mulb [xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(gfni);
-        generate_exception_if(evex.w || evex.brs, EXC_UD);
+        generate_exception_if(evex.w || evex.brs, X86_EXC_UD);
         elem_bytes = 1;
         goto avx512f_no_sae;
 
@@ -10238,7 +10215,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xde): /* vaesdec [xyz]mm/mem,[xyz]mm,[xyz]mm */
     case X86EMUL_OPC_EVEX_66(0x0f38, 0xdf): /* vaesdeclast [xyz]mm/mem,[xyz]mm,[xyz]mm */
         host_and_vcpu_must_have(vaes);
-        generate_exception_if(evex.brs || evex.opmsk, EXC_UD);
+        generate_exception_if(evex.brs || evex.opmsk, X86_EXC_UD);
         goto avx512f_no_sae;
 
 #endif /* !X86EMUL_NO_SIMD */
@@ -10311,7 +10288,7 @@ x86_emulate(
             host_and_vcpu_must_have(bmi2);
         else
             host_and_vcpu_must_have(bmi1);
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
 
         buf[0] = 0xc4;
         *pvex = vex;
@@ -10345,7 +10322,7 @@ x86_emulate(
             goto unrecognized_insn;
         }
 
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
 
         buf[0] = 0xc4;
         *pvex = vex;
@@ -10398,7 +10375,7 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX_F2(0x0f38, 0xf6): /* mulx r/m,r,r */
         vcpu_must_have(bmi2);
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         ea.reg = decode_vex_gpr(vex.reg, &_regs, ctxt);
         if ( mode_64bit() && vex.w )
             asm ( "mulq %3" : "=a" (*ea.reg), "=d" (dst.val)
@@ -10410,10 +10387,10 @@ x86_emulate(
 
     case X86EMUL_OPC_66(0x0f38, 0xf8): /* movdir64b r,m512 */
         host_and_vcpu_must_have(movdir64b);
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
         src.val = truncate_ea(*dst.reg);
         generate_exception_if(!is_aligned(x86_seg_es, src.val, 64, ctxt, ops),
-                              EXC_GP, 0);
+                              X86_EXC_GP, 0);
         fail_if(!ops->blk);
         state->blk = blk_movdir;
         BUILD_BUG_ON(sizeof(*mmvalp) < 64);
@@ -10428,11 +10405,11 @@ x86_emulate(
     case X86EMUL_OPC_F2(0x0f38, 0xf8): /* enqcmd r,m512 */
     case X86EMUL_OPC_F3(0x0f38, 0xf8): /* enqcmds r,m512 */
         host_and_vcpu_must_have(enqcmd);
-        generate_exception_if(ea.type != OP_MEM, EXC_UD);
-        generate_exception_if(vex.pfx != vex_f2 && !mode_ring0(), EXC_GP, 0);
+        generate_exception_if(ea.type != OP_MEM, X86_EXC_UD);
+        generate_exception_if(vex.pfx != vex_f2 && !mode_ring0(), X86_EXC_GP, 0);
         src.val = truncate_ea(*dst.reg);
         generate_exception_if(!is_aligned(x86_seg_es, src.val, 64, ctxt, ops),
-                              EXC_GP, 0);
+                              X86_EXC_GP, 0);
         fail_if(!ops->blk);
         BUILD_BUG_ON(sizeof(*mmvalp) < 64);
         if ( (rc = ops->read(ea.mem.seg, ea.mem.off, mmvalp, 64,
@@ -10444,7 +10421,7 @@ x86_emulate(
             if ( (rc = ops->read_msr(MSR_PASID, &msr_val,
                                      ctxt)) != X86EMUL_OKAY )
                 goto done;
-            generate_exception_if(!(msr_val & PASID_VALID), EXC_GP, 0);
+            generate_exception_if(!(msr_val & PASID_VALID), X86_EXC_GP, 0);
             mmvalp->data32[0] = MASK_EXTR(msr_val, PASID_PASID_MASK);
         }
         mmvalp->data32[0] &= ~0x7ff00000;
@@ -10457,7 +10434,7 @@ x86_emulate(
 
     case X86EMUL_OPC(0x0f38, 0xf9): /* movdiri mem,r */
         host_and_vcpu_must_have(movdiri);
-        generate_exception_if(dst.type != OP_MEM, EXC_UD);
+        generate_exception_if(dst.type != OP_MEM, X86_EXC_UD);
         fail_if(!ops->blk);
         state->blk = blk_movdir;
         if ( (rc = ops->blk(dst.mem.seg, dst.mem.off, &src.val, op_bytes,
@@ -10470,37 +10447,37 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x00): /* vpermq $imm8,ymm/m256,ymm */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x01): /* vpermpd $imm8,ymm/m256,ymm */
-        generate_exception_if(!vex.l || !vex.w, EXC_UD);
+        generate_exception_if(!vex.l || !vex.w, X86_EXC_UD);
         goto simd_0f_imm8_avx2;
 
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x00): /* vpermq $imm8,{y,z}mm/mem,{y,z}mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x01): /* vpermpd $imm8,{y,z}mm/mem,{y,z}mm{k} */
-        generate_exception_if(!evex.lr || !evex.w, EXC_UD);
+        generate_exception_if(!evex.lr || !evex.w, X86_EXC_UD);
         fault_suppression = false;
         goto avx512f_imm8_no_sae;
 
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x38): /* vinserti128 $imm8,xmm/m128,ymm,ymm */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x39): /* vextracti128 $imm8,ymm,xmm/m128 */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x46): /* vperm2i128 $imm8,ymm/m256,ymm,ymm */
-        generate_exception_if(!vex.l, EXC_UD);
+        generate_exception_if(!vex.l, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x02): /* vpblendd $imm8,{x,y}mm/mem,{x,y}mm,{x,y}mm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_imm8_avx2;
 
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x06): /* vperm2f128 $imm8,ymm/m256,ymm,ymm */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x18): /* vinsertf128 $imm8,xmm/m128,ymm,ymm */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x19): /* vextractf128 $imm8,ymm,xmm/m128 */
-        generate_exception_if(!vex.l, EXC_UD);
+        generate_exception_if(!vex.l, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x04): /* vpermilps $imm8,{x,y}mm/mem,{x,y}mm */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x05): /* vpermilpd $imm8,{x,y}mm/mem,{x,y}mm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_imm8_avx;
 
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x04): /* vpermilps $imm8,[xyz]mm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x05): /* vpermilpd $imm8,[xyz]mm/mem,[xyz]mm{k} */
-        generate_exception_if(evex.w != (b & 1), EXC_UD);
+        generate_exception_if(evex.w != (b & 1), X86_EXC_UD);
         fault_suppression = false;
         goto avx512f_imm8_no_sae;
 
@@ -10519,12 +10496,12 @@ x86_emulate(
 
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x0a): /* vrndscaless $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x0b): /* vrndscalesd $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(ea.type != OP_REG && evex.brs, EXC_UD);
+        generate_exception_if(ea.type != OP_REG && evex.brs, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x08): /* vrndscaleps $imm8,[xyz]mm/mem,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x09): /* vrndscalepd $imm8,[xyz]mm/mem,[xyz]mm{k} */
         host_and_vcpu_must_have(avx512f);
-        generate_exception_if(evex.w != (b & 1), EXC_UD);
+        generate_exception_if(evex.w != (b & 1), X86_EXC_UD);
         avx512_vlen_check(b & 2);
         goto simd_imm8_zmm;
 
@@ -10560,7 +10537,7 @@ x86_emulate(
 #ifndef X86EMUL_NO_SIMD
 
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x42): /* vdbpsadbw $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(evex.w, EXC_UD);
+        generate_exception_if(evex.w, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x0f): /* vpalignr $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         fault_suppression = false;
@@ -10608,7 +10585,7 @@ x86_emulate(
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x15): /* vpextrw $imm8,xmm,r/m */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x16): /* vpextr{d,q} $imm8,xmm,r/m */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x17): /* vextractps $imm8,xmm,r/m */
-        generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+        generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
         host_and_vcpu_must_have(avx);
         get_fpu(X86EMUL_FPU_ymm);
 
@@ -10620,7 +10597,7 @@ x86_emulate(
         goto pextr;
 
     case X86EMUL_OPC_EVEX_66(0x0f, 0xc5):   /* vpextrw $imm8,xmm,reg */
-        generate_exception_if(ea.type != OP_REG, EXC_UD);
+        generate_exception_if(ea.type != OP_REG, X86_EXC_UD);
         /* Convert to alternative encoding: We want to use a memory operand. */
         evex.opcx = ext_0f3a;
         b = 0x15;
@@ -10634,7 +10611,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x17): /* vextractps $imm8,xmm,r/m */
         generate_exception_if((evex.lr || evex.reg != 0xf || !evex.RX ||
                                evex.opmsk || evex.brs),
-                              EXC_UD);
+                              X86_EXC_UD);
         if ( !(b & 2) )
             host_and_vcpu_must_have(avx512bw);
         else if ( !(b & 1) )
@@ -10655,13 +10632,13 @@ x86_emulate(
                                             /* vextracti64x2 $imm8,{y,z}mm,xmm/m128{k} */
         if ( evex.w )
             host_and_vcpu_must_have(avx512dq);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x23): /* vshuff32x4 $imm8,{y,z}mm/mem,{y,z}mm,{y,z}mm{k} */
                                             /* vshuff64x2 $imm8,{y,z}mm/mem,{y,z}mm,{y,z}mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x43): /* vshufi32x4 $imm8,{y,z}mm/mem,{y,z}mm,{y,z}mm{k} */
                                             /* vshufi64x2 $imm8,{y,z}mm/mem,{y,z}mm,{y,z}mm{k} */
-        generate_exception_if(!evex.lr, EXC_UD);
+        generate_exception_if(!evex.lr, X86_EXC_UD);
         fault_suppression = false;
         goto avx512f_imm8_no_sae;
 
@@ -10675,7 +10652,7 @@ x86_emulate(
                                             /* vextracti64x4 $imm8,zmm,ymm/m256{k} */
         if ( !evex.w )
             host_and_vcpu_must_have(avx512dq);
-        generate_exception_if(evex.lr != 2 || evex.brs, EXC_UD);
+        generate_exception_if(evex.lr != 2 || evex.brs, X86_EXC_UD);
         fault_suppression = false;
         goto avx512f_imm8_no_sae;
 
@@ -10689,14 +10666,14 @@ x86_emulate(
         {
             generate_exception_if((evex.w || evex.reg != 0xf || !evex.RX ||
                                    (ea.type != OP_REG && (evex.z || evex.brs))),
-                                  EXC_UD);
+                                  X86_EXC_UD);
             host_and_vcpu_must_have(avx512f);
             avx512_vlen_check(false);
             opc = init_evex(stub);
         }
         else
         {
-            generate_exception_if(vex.w || vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.w || vex.reg != 0xf, X86_EXC_UD);
             host_and_vcpu_must_have(f16c);
             opc = init_prefixes(stub);
         }
@@ -10778,12 +10755,12 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x1f): /* vpcmp{d,q} $imm8,[xyz]mm/mem,[xyz]mm,k{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x3e): /* vpcmpu{b,w} $imm8,[xyz]mm/mem,[xyz]mm,k{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x3f): /* vpcmp{b,w} $imm8,[xyz]mm/mem,[xyz]mm,k{k} */
-        generate_exception_if(!evex.r || !evex.R || evex.z, EXC_UD);
+        generate_exception_if(!evex.r || !evex.R || evex.z, X86_EXC_UD);
         if ( !(b & 0x20) )
             goto avx512f_imm8_no_sae;
     avx512bw_imm:
         host_and_vcpu_must_have(avx512bw);
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         elem_bytes = 1 << evex.w;
         avx512_vlen_check(false);
         goto simd_imm8_zmm;
@@ -10799,7 +10776,7 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x20): /* vpinsrb $imm8,r32/m8,xmm,xmm */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x22): /* vpinsr{d,q} $imm8,r/m,xmm,xmm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         if ( !mode_64bit() )
             vex.w = 0;
         memcpy(mmvalp, &src.val, src.bytes);
@@ -10817,13 +10794,13 @@ x86_emulate(
         op_bytes = 4;
         /* fall through */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x41): /* vdppd $imm8,{x,y}mm/mem,{x,y}mm,{x,y}mm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         goto simd_0f_imm8_avx;
 
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x21): /* vinsertps $imm8,xmm/m32,xmm,xmm */
         host_and_vcpu_must_have(avx512f);
         generate_exception_if(evex.lr || evex.w || evex.opmsk || evex.brs,
-                              EXC_UD);
+                              X86_EXC_UD);
         op_bytes = 4;
         goto simd_imm8_zmm;
 
@@ -10845,7 +10822,7 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x27): /* vgetmants{s,d} $imm8,xmm/mem,xmm,xmm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x55): /* vfixupimms{s,d} $imm8,xmm/mem,xmm,xmm{k} */
         host_and_vcpu_must_have(avx512f);
-        generate_exception_if(ea.type != OP_REG && evex.brs, EXC_UD);
+        generate_exception_if(ea.type != OP_REG && evex.brs, X86_EXC_UD);
         if ( !evex.brs )
             avx512_vlen_check(true);
         goto simd_imm8_zmm;
@@ -10856,7 +10833,7 @@ x86_emulate(
             host_and_vcpu_must_have(avx512dq);
     opmask_shift_imm:
         generate_exception_if(vex.l || !vex.r || vex.reg != 0xf ||
-                              ea.type != OP_REG, EXC_UD);
+                              ea.type != OP_REG, X86_EXC_UD);
         host_and_vcpu_must_have(avx512f);
         get_fpu(X86EMUL_FPU_opmask);
         op_bytes = 1; /* Any non-zero value will do. */
@@ -10878,7 +10855,7 @@ x86_emulate(
 
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x44): /* vpclmulqdq $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm */
         host_and_vcpu_must_have(vpclmulqdq);
-        generate_exception_if(evex.brs || evex.opmsk, EXC_UD);
+        generate_exception_if(evex.brs || evex.opmsk, X86_EXC_UD);
         goto avx512f_imm8_no_sae;
 
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x48): /* vpermil2ps $imm,{x,y}mm/mem,{x,y}mm,{x,y}mm,{x,y}mm */
@@ -10890,11 +10867,11 @@ x86_emulate(
 
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x4a): /* vblendvps {x,y}mm,{x,y}mm/mem,{x,y}mm,{x,y}mm */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x4b): /* vblendvpd {x,y}mm,{x,y}mm/mem,{x,y}mm,{x,y}mm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_imm8_avx;
 
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x4c): /* vpblendvb {x,y}mm,{x,y}mm/mem,{x,y}mm,{x,y}mm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_int_imm8;
 
     case X86EMUL_OPC_VEX_66(0x0f3a, 0x5c): /* vfmaddsubps {x,y}mm,{x,y}mm/mem,{x,y}mm,{x,y}mm */
@@ -10955,7 +10932,7 @@ x86_emulate(
         }
         else
         {
-            generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+            generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
             host_and_vcpu_must_have(avx);
             get_fpu(X86EMUL_FPU_ymm);
         }
@@ -11006,16 +10983,16 @@ x86_emulate(
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x66): /* vfpclassp{s,d} $imm8,[xyz]mm/mem,k{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x67): /* vfpclasss{s,d} $imm8,[xyz]mm/mem,k{k} */
         host_and_vcpu_must_have(avx512dq);
-        generate_exception_if(!evex.r || !evex.R || evex.z, EXC_UD);
+        generate_exception_if(!evex.r || !evex.R || evex.z, X86_EXC_UD);
         if ( !(b & 1) )
             goto avx512f_imm8_no_sae;
-        generate_exception_if(evex.brs, EXC_UD);
+        generate_exception_if(evex.brs, X86_EXC_UD);
         avx512_vlen_check(true);
         goto simd_imm8_zmm;
 
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x70): /* vpshldw $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x72): /* vpshrdw $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
-        generate_exception_if(!evex.w, EXC_UD);
+        generate_exception_if(!evex.w, X86_EXC_UD);
         elem_bytes = 2;
         /* fall through */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0x71): /* vpshld{d,q} $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
@@ -11036,13 +11013,13 @@ x86_emulate(
     case X86EMUL_OPC_VEX_66(0x0f3a, 0xce):  /* vgf2p8affineqb $imm8,{x,y}mm/mem,{x,y}mm,{x,y}mm */
     case X86EMUL_OPC_VEX_66(0x0f3a, 0xcf):  /* vgf2p8affineinvqb $imm8,{x,y}mm/mem,{x,y}mm,{x,y}mm */
         host_and_vcpu_must_have(gfni);
-        generate_exception_if(!vex.w, EXC_UD);
+        generate_exception_if(!vex.w, X86_EXC_UD);
         goto simd_0f_imm8_avx;
 
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0xce): /* vgf2p8affineqb $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
     case X86EMUL_OPC_EVEX_66(0x0f3a, 0xcf): /* vgf2p8affineinvqb $imm8,[xyz]mm/mem,[xyz]mm,[xyz]mm{k} */
         host_and_vcpu_must_have(gfni);
-        generate_exception_if(!evex.w, EXC_UD);
+        generate_exception_if(!evex.w, X86_EXC_UD);
         fault_suppression = false;
         goto avx512f_imm8_no_sae;
 
@@ -11051,14 +11028,14 @@ x86_emulate(
         host_and_vcpu_must_have(aesni);
         if ( vex.opcx == vex_none )
             goto simd_0f3a_common;
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         goto simd_0f_imm8_avx;
 
 #endif /* X86EMUL_NO_SIMD */
 
     case X86EMUL_OPC_VEX_F2(0x0f3a, 0xf0): /* rorx imm,r/m,r */
         vcpu_must_have(bmi2);
-        generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+        generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
         if ( ea.type == OP_REG )
             src.val = *ea.reg;
         else if ( (rc = read_ulong(ea.mem.seg, ea.mem.off, &src.val, op_bytes,
@@ -11096,11 +11073,11 @@ x86_emulate(
     case X86EMUL_OPC_XOP(08, 0xed): /* vpcomuw $imm,xmm/m128,xmm,xmm */
     case X86EMUL_OPC_XOP(08, 0xee): /* vpcomud $imm,xmm/m128,xmm,xmm */
     case X86EMUL_OPC_XOP(08, 0xef): /* vpcomuq $imm,xmm/m128,xmm,xmm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_XOP(08, 0xa3): /* vpperm xmm/m128,xmm,xmm,xmm */
                                     /* vpperm xmm,xmm/m128,xmm,xmm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_XOP(08, 0xa2): /* vpcmov {x,y}mm/mem,{x,y}mm,{x,y}mm,{x,y}mm */
                                     /* vpcmov {x,y}mm,{x,y}mm/mem,{x,y}mm,{x,y}mm */
@@ -11130,7 +11107,7 @@ x86_emulate(
         uint8_t *buf = get_stub(stub);
         typeof(vex) *pxop = container_of(buf + 1, typeof(vex), raw[0]);
 
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
 
         buf[0] = 0x8f;
         *pxop = vex;
@@ -11164,7 +11141,7 @@ x86_emulate(
         case 0: /* llwpcb r */
         case 1: /* slwpcb r */
             /* LWP is unsupported, so produce #UD unconditionally. */
-            generate_exception(EXC_UD);
+            generate_exception(X86_EXC_UD);
         }
         goto unrecognized_insn;
 
@@ -11172,12 +11149,12 @@ x86_emulate(
 
     case X86EMUL_OPC_XOP(09, 0x82): /* vfrczss xmm/m128,xmm */
     case X86EMUL_OPC_XOP(09, 0x83): /* vfrczsd xmm/m128,xmm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_XOP(09, 0x80): /* vfrczps {x,y}mm/mem,{x,y}mm */
     case X86EMUL_OPC_XOP(09, 0x81): /* vfrczpd {x,y}mm/mem,{x,y}mm */
         host_and_vcpu_must_have(xop);
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         goto simd_0f_ymm;
 
     case X86EMUL_OPC_XOP(09, 0xc1): /* vphaddbw xmm/m128,xmm */
@@ -11195,7 +11172,7 @@ x86_emulate(
     case X86EMUL_OPC_XOP(09, 0xe2): /* vphsubwd xmm/m128,xmm */
     case X86EMUL_OPC_XOP(09, 0xe3): /* vphsubdq xmm/m128,xmm */
     case X86EMUL_OPC_XOP(09, 0xe1): /* vphsubbw xmm/m128,xmm */
-        generate_exception_if(vex.w, EXC_UD);
+        generate_exception_if(vex.w, X86_EXC_UD);
         /* fall through */
     case X86EMUL_OPC_XOP(09, 0x90): /* vprotb xmm/m128,xmm,xmm */
                                     /* vprotb xmm,xmm/m128,xmm */
@@ -11221,7 +11198,7 @@ x86_emulate(
                                     /* vpshad xmm,xmm/m128,xmm */
     case X86EMUL_OPC_XOP(09, 0x9b): /* vpshaq xmm/m128,xmm,xmm */
                                     /* vpshaq xmm,xmm/m128,xmm */
-        generate_exception_if(vex.l, EXC_UD);
+        generate_exception_if(vex.l, X86_EXC_UD);
         host_and_vcpu_must_have(xop);
         goto simd_0f_ymm;
 
@@ -11233,7 +11210,7 @@ x86_emulate(
         typeof(vex) *pxop = container_of(buf + 1, typeof(vex), raw[0]);
 
         host_and_vcpu_must_have(tbm);
-        generate_exception_if(vex.l || vex.reg != 0xf, EXC_UD);
+        generate_exception_if(vex.l || vex.reg != 0xf, X86_EXC_UD);
 
         if ( ea.type == OP_REG )
             src.val = *ea.reg;
@@ -11262,7 +11239,7 @@ x86_emulate(
         case 0: /* lwpins $imm32,r/m,r */
         case 1: /* lwpval $imm32,r/m,r */
             /* LWP is unsupported, so produce #UD unconditionally. */
-            generate_exception(EXC_UD);
+            generate_exception(X86_EXC_UD);
         }
         goto unrecognized_insn;
 
@@ -11306,10 +11283,10 @@ x86_emulate(
     }
     else if ( state->simd_size )
     {
-        generate_exception_if(!op_bytes, EXC_UD);
+        generate_exception_if(!op_bytes, X86_EXC_UD);
         generate_exception_if((vex.opcx && (d & TwoOp) &&
                                (vex.reg != 0xf || (evex_encoded() && !evex.RX))),
-                              EXC_UD);
+                              X86_EXC_UD);
 
         if ( !opc )
             BUG();
@@ -11348,7 +11325,7 @@ x86_emulate(
             generate_exception_if(!(mxcsr & MXCSR_MM) &&
                                   !is_aligned(ea.mem.seg, ea.mem.off, op_bytes,
                                               ctxt, ops),
-                                  EXC_GP, 0);
+                                  X86_EXC_GP, 0);
 
             EXPECT(elem_bytes > 0);
             if ( evex.brs )
@@ -11519,14 +11496,14 @@ x86_emulate(
 
 #ifdef __XEN__
  emulation_stub_failure:
-    generate_exception_if(stub_exn.info.fields.trapnr == EXC_MF, EXC_MF);
-    if ( stub_exn.info.fields.trapnr == EXC_XM )
+    generate_exception_if(stub_exn.info.fields.trapnr == X86_EXC_MF, X86_EXC_MF);
+    if ( stub_exn.info.fields.trapnr == X86_EXC_XM )
     {
         unsigned long cr4;
 
         if ( !ops->read_cr || ops->read_cr(4, &cr4, ctxt) != X86EMUL_OKAY )
             cr4 = X86_CR4_OSXMMEXCPT;
-        generate_exception(cr4 & X86_CR4_OSXMMEXCPT ? EXC_XM : EXC_UD);
+        generate_exception(cr4 & X86_CR4_OSXMMEXCPT ? X86_EXC_XM : X86_EXC_UD);
     }
     gprintk(XENLOG_WARNING,
             "exception %u (ec=%04x) in emulation stub (line %u)\n",
@@ -11534,7 +11511,7 @@ x86_emulate(
             stub_exn.line);
     gprintk(XENLOG_INFO, "  stub: %"__stringify(MAX_INST_LEN)"ph\n",
             stub.func);
-    generate_exception_if(stub_exn.info.fields.trapnr == EXC_UD, EXC_UD);
+    generate_exception_if(stub_exn.info.fields.trapnr == X86_EXC_UD, X86_EXC_UD);
     domain_crash(current->domain);
 #endif
 
@@ -11987,7 +11964,7 @@ int x86_emul_blk(
                               (unsigned int)offsetof(struct x86_fxsr, rsvd)));
         memset(fxsr->rsvd, 0, sizeof(*fxsr) - offsetof(struct x86_fxsr, rsvd));
 
-        generate_exception_if(fxsr->mxcsr & ~mxcsr_mask, EXC_GP, 0);
+        generate_exception_if(fxsr->mxcsr & ~mxcsr_mask, X86_EXC_GP, 0);
 
         if ( state->rex_prefix & REX_W )
         {
diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
index d8fb3a9909..041cb040c1 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.h
+++ b/xen/arch/x86/x86_emulate/x86_emulate.h
@@ -25,6 +25,8 @@
 
 #include <xen/lib/x86/cpuid.h>
 
+#include <asm/x86-defns.h>
+
 #define MAX_INST_LEN 15
 
 #if defined(__i386__)
@@ -836,7 +838,7 @@ static inline void x86_emul_pagefault(
 {
     ASSERT(!ctxt->event_pending);
 
-    ctxt->event.vector = 14; /* TRAP_page_fault */
+    ctxt->event.vector = X86_EXC_PF;
     ctxt->event.type = X86_EVENTTYPE_HW_EXCEPTION;
     ctxt->event.error_code = error_code;
     ctxt->event.cr2 = cr2;
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 15:30:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 15:30:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117712.223563 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb3C2-0007ke-BV; Mon, 26 Apr 2021 15:30:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117712.223563; Mon, 26 Apr 2021 15:30: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 1lb3C2-0007kX-8L; Mon, 26 Apr 2021 15:30:38 +0000
Received: by outflank-mailman (input) for mailman id 117712;
 Mon, 26 Apr 2021 15: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 1lb3C0-0007kP-W3; Mon, 26 Apr 2021 15: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 1lb3C0-00032h-R1; Mon, 26 Apr 2021 15:30: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 1lb3C0-00051f-In; Mon, 26 Apr 2021 15:30:36 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lb3C0-0005kn-II; Mon, 26 Apr 2021 15: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=K6lhHQLlOigeLgl5yZQG9wNHNxlhoh/dYgPFd1TEz7o=; b=aIXo+pnzIq12OE4J+FB2aLsiNp
	Gi9aF9qkoZNy8tTdDEw0wPS67VvnA6G6ccQPI3GuwHd+j2/1/lIX65fmI4Qo/gd8oJa0F1EM//NFI
	R9RYD1kPh3+RUZq5bxbCnTB5GyQnfzwmGTawRTxM6LKSKYVeIhbxV8o9Luoo8/0wEmjM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161459-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161459: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=3c3c55be66e230ef09ad927eda038dc32f01a166
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 15:30:36 +0000

flight 161459 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161459/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              3c3c55be66e230ef09ad927eda038dc32f01a166
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  290 days
Failing since        151818  2020-07-11 04:18:52 Z  289 days  282 attempts
Testing same since   161423  2021-04-24 04:18:53 Z    2 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastian Germann <bastiangermann@fishpost.de>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 54631 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 15:38:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 15:38:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117724.223590 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb3JM-00083n-EO; Mon, 26 Apr 2021 15:38:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117724.223590; Mon, 26 Apr 2021 15:38: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 1lb3JM-00083g-B2; Mon, 26 Apr 2021 15:38:12 +0000
Received: by outflank-mailman (input) for mailman id 117724;
 Mon, 26 Apr 2021 15:38:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vTY+=JX=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lb3JL-00081u-L2
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 15:38:11 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id ed0af932-ab0d-4a79-aaad-ee8818ca0352;
 Mon, 26 Apr 2021 15:38:06 +0000 (UTC)
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 50D691042;
 Mon, 26 Apr 2021 08:38:06 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E3AAC3F7B4;
 Mon, 26 Apr 2021 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: ed0af932-ab0d-4a79-aaad-ee8818ca0352
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH v3 3/3] docs/doxygen: doxygen documentation for grant_table.h
Date: Mon, 26 Apr 2021 16:37:41 +0100
Message-Id: <20210426153741.26904-4-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210426153741.26904-1-luca.fancellu@arm.com>
References: <20210426153741.26904-1-luca.fancellu@arm.com>

Modification to include/public/grant_table.h:

1) Add doxygen tags to:
 - Create Grant tables section
 - include variables in the generated documentation
2) Add .rst file for grant table for Arm64

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
v3 changes:
- removed tags to skip anonymous union/struct
- moved back comment pointed out by Jan
- moved down defines related to struct gnttab_copy
  as pointed out by Jan
v2 changes:
- Revert back to anonymous union/struct
- add doxygen tags to skip anonymous union/struct
---
 docs/hypercall-interfaces/arm64.rst           |  1 +
 .../arm64/grant_tables.rst                    |  8 ++
 docs/xen-doxygen/doxy_input.list              |  1 +
 xen/include/public/grant_table.h              | 75 ++++++++++++-------
 4 files changed, 57 insertions(+), 28 deletions(-)
 create mode 100644 docs/hypercall-interfaces/arm64/grant_tables.rst

diff --git a/docs/hypercall-interfaces/arm64.rst b/docs/hypercall-interfaces/arm64.rst
index 5e701a2adc..c30a7142b1 100644
--- a/docs/hypercall-interfaces/arm64.rst
+++ b/docs/hypercall-interfaces/arm64.rst
@@ -8,6 +8,7 @@ Starting points
 .. toctree::
    :maxdepth: 2
 
+   arm64/grant_tables
 
 
 Functions
diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hypercall-interfaces/arm64/grant_tables.rst
new file mode 100644
index 0000000000..8955ec5812
--- /dev/null
+++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
@@ -0,0 +1,8 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Grant Tables
+============
+
+.. doxygengroup:: grant_table
+   :project: Xen
+   :members:
diff --git a/docs/xen-doxygen/doxy_input.list b/docs/xen-doxygen/doxy_input.list
index e69de29bb2..233d692fa7 100644
--- a/docs/xen-doxygen/doxy_input.list
+++ b/docs/xen-doxygen/doxy_input.list
@@ -0,0 +1 @@
+xen/include/public/grant_table.h
diff --git a/xen/include/public/grant_table.h b/xen/include/public/grant_table.h
index 84b1d26b36..9b5ccf07a4 100644
--- a/xen/include/public/grant_table.h
+++ b/xen/include/public/grant_table.h
@@ -25,15 +25,19 @@
  * Copyright (c) 2004, K A Fraser
  */
 
+/**
+ * @file
+ * @brief Interface for granting foreign access to page frames, and receiving
+ * page-ownership transfers.
+ */
+
 #ifndef __XEN_PUBLIC_GRANT_TABLE_H__
 #define __XEN_PUBLIC_GRANT_TABLE_H__
 
 #include "xen.h"
 
-/*
- * `incontents 150 gnttab Grant Tables
- *
- * Xen's grant tables provide a generic mechanism to memory sharing
+/**
+ * @brief Xen's grant tables provide a generic mechanism to memory sharing
  * between domains. This shared memory interface underpins the split
  * device drivers for block and network IO.
  *
@@ -51,13 +55,10 @@
  * know the real machine address of a page it is sharing. This makes
  * it possible to share memory correctly with domains running in
  * fully virtualised memory.
- */
-
-/***********************************
+ *
  * GRANT TABLE REPRESENTATION
- */
-
-/* Some rough guidelines on accessing and updating grant-table entries
+ *
+ * Some rough guidelines on accessing and updating grant-table entries
  * in a concurrency-safe manner. For more information, Linux contains a
  * reference implementation for guest OSes (drivers/xen/grant_table.c, see
  * http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=drivers/xen/grant-table.c;hb=HEAD
@@ -66,6 +67,7 @@
  *     compiler barrier will still be required.
  *
  * Introducing a valid entry into the grant table:
+ * @code
  *  1. Write ent->domid.
  *  2. Write ent->frame:
  *      GTF_permit_access:   Frame to which access is permitted.
@@ -73,20 +75,25 @@
  *                           frame, or zero if none.
  *  3. Write memory barrier (WMB).
  *  4. Write ent->flags, inc. valid type.
+ * @endcode
  *
  * Invalidating an unused GTF_permit_access entry:
+ * @code
  *  1. flags = ent->flags.
  *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
  *  NB. No need for WMB as reuse of entry is control-dependent on success of
  *      step 3, and all architectures guarantee ordering of ctrl-dep writes.
+ * @endcode
  *
  * Invalidating an in-use GTF_permit_access entry:
+ *
  *  This cannot be done directly. Request assistance from the domain controller
  *  which can set a timeout on the use of a grant entry and take necessary
  *  action. (NB. This is not yet implemented!).
  *
  * Invalidating an unused GTF_accept_transfer entry:
+ * @code
  *  1. flags = ent->flags.
  *  2. Observe that !(flags & GTF_transfer_committed). [*]
  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
@@ -97,18 +104,23 @@
  *      transferred frame is written. It is safe for the guest to spin waiting
  *      for this to occur (detect by observing GTF_transfer_completed in
  *      ent->flags).
+ * @endcode
  *
  * Invalidating a committed GTF_accept_transfer entry:
  *  1. Wait for (ent->flags & GTF_transfer_completed).
  *
  * Changing a GTF_permit_access from writable to read-only:
+ *
  *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writing.
  *
  * Changing a GTF_permit_access from read-only to writable:
+ *
  *  Use SMP-safe bit-setting instruction.
+ * @addtogroup grant_table Grant Tables
+ * @{
  */
 
-/*
+/**
  * Reference to a grant entry in a specified domain's grant table.
  */
 typedef uint32_t grant_ref_t;
@@ -120,24 +132,26 @@ typedef uint32_t grant_ref_t;
  * [GST]: This field is written by the guest and read by Xen.
  */
 
-/*
- * Version 1 of the grant table entry structure is maintained purely
- * for backwards compatibility.  New guests should use version 2.
- */
 #if __XEN_INTERFACE_VERSION__ < 0x0003020a
 #define grant_entry_v1 grant_entry
 #define grant_entry_v1_t grant_entry_t
 #endif
+/**
+ * Version 1 of the grant table entry structure is maintained purely
+ * for backwards compatibility.  New guests should use version 2.
+ */
 struct grant_entry_v1 {
-    /* GTF_xxx: various type and flag information.  [XEN,GST] */
+    /** GTF_xxx: various type and flag information.  [XEN,GST] */
     uint16_t flags;
-    /* The domain being granted foreign privileges. [GST] */
+    /** The domain being granted foreign privileges. [GST] */
     domid_t  domid;
-    /*
+    /**
+     * @code
      * GTF_permit_access: GFN that @domid is allowed to map and access. [GST]
      * GTF_accept_transfer: GFN that @domid is allowed to transfer into. [GST]
      * GTF_transfer_completed: MFN whose ownership transferred by @domid
      *                         (non-translated guests only). [XEN]
+     * @endcode
      */
     uint32_t frame;
 };
@@ -228,7 +242,7 @@ struct grant_entry_header {
 };
 typedef struct grant_entry_header grant_entry_header_t;
 
-/*
+/**
  * Version 2 of the grant entry structure.
  */
 union grant_entry_v2 {
@@ -433,7 +447,7 @@ typedef struct gnttab_transfer gnttab_transfer_t;
 DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
 
 
-/*
+/**
  * GNTTABOP_copy: Hypervisor based copy
  * source and destinations can be eithers MFNs or, for foreign domains,
  * grant references. the foreign domain has to grant read/write access
@@ -451,11 +465,6 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
  * bytes to be copied.
  */
 
-#define _GNTCOPY_source_gref      (0)
-#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
-#define _GNTCOPY_dest_gref        (1)
-#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
-
 struct gnttab_copy {
     /* IN parameters. */
     struct gnttab_copy_ptr {
@@ -471,6 +480,12 @@ struct gnttab_copy {
     /* OUT parameters. */
     int16_t       status;
 };
+
+#define _GNTCOPY_source_gref      (0)
+#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
+#define _GNTCOPY_dest_gref        (1)
+#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
+
 typedef struct gnttab_copy  gnttab_copy_t;
 DEFINE_XEN_GUEST_HANDLE(gnttab_copy_t);
 
@@ -579,7 +594,7 @@ struct gnttab_swap_grant_ref {
 typedef struct gnttab_swap_grant_ref gnttab_swap_grant_ref_t;
 DEFINE_XEN_GUEST_HANDLE(gnttab_swap_grant_ref_t);
 
-/*
+/**
  * Issue one or more cache maintenance operations on a portion of a
  * page granted to the calling domain by a foreign domain.
  */
@@ -588,8 +603,8 @@ struct gnttab_cache_flush {
         uint64_t dev_bus_addr;
         grant_ref_t ref;
     } a;
-    uint16_t offset; /* offset from start of grant */
-    uint16_t length; /* size within the grant */
+    uint16_t offset; /**< offset from start of grant */
+    uint16_t length; /**< size within the grant */
 #define GNTTAB_CACHE_CLEAN          (1u<<0)
 #define GNTTAB_CACHE_INVAL          (1u<<1)
 #define GNTTAB_CACHE_SOURCE_GREF    (1u<<31)
@@ -673,6 +688,10 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_cache_flush_t);
     "operation not done; try again"             \
 }
 
+/**
+ * @}
+*/
+
 #endif /* __XEN_PUBLIC_GRANT_TABLE_H__ */
 
 /*
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 15:38:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 15:38:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117723.223578 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb3JI-000826-65; Mon, 26 Apr 2021 15:38:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117723.223578; Mon, 26 Apr 2021 15:38: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 1lb3JI-00081z-2Z; Mon, 26 Apr 2021 15:38:08 +0000
Received: by outflank-mailman (input) for mailman id 117723;
 Mon, 26 Apr 2021 15:38:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vTY+=JX=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lb3JG-00081u-MN
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 15:38:06 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 595707a6-3faa-4ad1-8211-4333dd4728e6;
 Mon, 26 Apr 2021 15:38:05 +0000 (UTC)
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 AE97EED1;
 Mon, 26 Apr 2021 08:38:04 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 409EA3F7B4;
 Mon, 26 Apr 2021 08:38: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: 595707a6-3faa-4ad1-8211-4333dd4728e6
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH v3 2/3] docs: hypercalls sphinx skeleton for generated html
Date: Mon, 26 Apr 2021 16:37:40 +0100
Message-Id: <20210426153741.26904-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210426153741.26904-1-luca.fancellu@arm.com>
References: <20210426153741.26904-1-luca.fancellu@arm.com>

Create a skeleton for the documentation about hypercalls

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 .gitignore                             |  1 +
 docs/Makefile                          |  4 ++++
 docs/hypercall-interfaces/arm32.rst    |  4 ++++
 docs/hypercall-interfaces/arm64.rst    | 32 ++++++++++++++++++++++++++
 docs/hypercall-interfaces/index.rst.in |  7 ++++++
 docs/hypercall-interfaces/x86_64.rst   |  4 ++++
 docs/index.rst                         |  8 +++++++
 7 files changed, 60 insertions(+)
 create mode 100644 docs/hypercall-interfaces/arm32.rst
 create mode 100644 docs/hypercall-interfaces/arm64.rst
 create mode 100644 docs/hypercall-interfaces/index.rst.in
 create mode 100644 docs/hypercall-interfaces/x86_64.rst

diff --git a/.gitignore b/.gitignore
index d271e0ce6a..a9aab120ae 100644
--- a/.gitignore
+++ b/.gitignore
@@ -64,6 +64,7 @@ docs/xen.doxyfile
 docs/xen.doxyfile.tmp
 docs/xen-doxygen/doxygen_include.h
 docs/xen-doxygen/doxygen_include.h.tmp
+docs/hypercall-interfaces/index.rst
 extras/mini-os*
 install/*
 stubdom/*-minios-config.mk
diff --git a/docs/Makefile b/docs/Makefile
index 2f784c36ce..b02c3dfb79 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -61,6 +61,9 @@ build: html txt pdf man-pages figs
 sphinx-html: $(DOXY_DEPS) $(DOXY_LIST_SOURCES)
 ifneq ($(SPHINXBUILD),no)
 	$(DOXYGEN) xen.doxyfile
+	@echo "Generating hypercall-interfaces/index.rst"
+	@sed -e "s,@XEN_TARGET_ARCH@,$(XEN_TARGET_ARCH),g" \
+		hypercall-interfaces/index.rst.in > hypercall-interfaces/index.rst
 	XEN_ROOT=$(realpath $(XEN_ROOT)) $(SPHINXBUILD) -b html . sphinx/html
 else
 	@echo "Sphinx is not installed; skipping sphinx-html documentation."
@@ -108,6 +111,7 @@ clean: clean-man-pages
 	rm -f xen.doxyfile.tmp
 	rm -f xen-doxygen/doxygen_include.h
 	rm -f xen-doxygen/doxygen_include.h.tmp
+	rm -f hypercall-interfaces/index.rst
 
 .PHONY: distclean
 distclean: clean
diff --git a/docs/hypercall-interfaces/arm32.rst b/docs/hypercall-interfaces/arm32.rst
new file mode 100644
index 0000000000..4e973fbbaf
--- /dev/null
+++ b/docs/hypercall-interfaces/arm32.rst
@@ -0,0 +1,4 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - arm32
+============================
diff --git a/docs/hypercall-interfaces/arm64.rst b/docs/hypercall-interfaces/arm64.rst
new file mode 100644
index 0000000000..5e701a2adc
--- /dev/null
+++ b/docs/hypercall-interfaces/arm64.rst
@@ -0,0 +1,32 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - arm64
+============================
+
+Starting points
+---------------
+.. toctree::
+   :maxdepth: 2
+
+
+
+Functions
+---------
+
+
+Structs
+-------
+
+
+Enums and sets of #defines
+--------------------------
+
+
+Typedefs
+--------
+
+
+Enum values and individual #defines
+-----------------------------------
+
+
diff --git a/docs/hypercall-interfaces/index.rst.in b/docs/hypercall-interfaces/index.rst.in
new file mode 100644
index 0000000000..e4dcc5db8d
--- /dev/null
+++ b/docs/hypercall-interfaces/index.rst.in
@@ -0,0 +1,7 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces
+====================
+
+.. toctree::
+   @XEN_TARGET_ARCH@
diff --git a/docs/hypercall-interfaces/x86_64.rst b/docs/hypercall-interfaces/x86_64.rst
new file mode 100644
index 0000000000..3ed70dff95
--- /dev/null
+++ b/docs/hypercall-interfaces/x86_64.rst
@@ -0,0 +1,4 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Hypercall Interfaces - x86_64
+=============================
diff --git a/docs/index.rst b/docs/index.rst
index b75487a05d..52226a42d8 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -53,6 +53,14 @@ kind of development environment.
    hypervisor-guide/index
 
 
+Hypercall Interfaces documentation
+----------------------------------
+
+.. toctree::
+   :maxdepth: 2
+
+   hypercall-interfaces/index
+
 Miscellanea
 -----------
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 15:38:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 15:38:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117725.223602 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb3JR-00087y-TG; Mon, 26 Apr 2021 15:38:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117725.223602; Mon, 26 Apr 2021 15: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 1lb3JR-00087r-OX; Mon, 26 Apr 2021 15:38:17 +0000
Received: by outflank-mailman (input) for mailman id 117725;
 Mon, 26 Apr 2021 15:38:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vTY+=JX=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lb3JQ-00081u-LH
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 15:38:16 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 14e2c6f3-ad2f-4356-b552-4b7ffe242672;
 Mon, 26 Apr 2021 15:38:06 +0000 (UTC)
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 E7EDB101E;
 Mon, 26 Apr 2021 08:38:05 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7FD9A3F73B;
 Mon, 26 Apr 2021 08:37: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: 14e2c6f3-ad2f-4356-b552-4b7ffe242672
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH v3 0/3] Use Doxygen and sphinx for html documentation
Date: Mon, 26 Apr 2021 16:37:38 +0100
Message-Id: <20210426153741.26904-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1

This serie introduce doxygen in the sphinx html docs generation.
One benefit is to keep most of the documentation in the source
files of xen so that it's more maintainable, on the other hand
there are some limitation of doxygen that should be addressed
modifying the current codebase (for example doxygen can't parse
anonymous structure/union).

To reproduce the documentation xen must be compiled because
most of the headers are generated on compilation time from
the makefiles.

Here follows the steps to generate the sphinx html docs, some
package may be required on your machine, everything is suggested
by the autoconf script.
Here I'm building the arm64 docs (the only introduced for now by
this serie):

./configure
make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-" menuconfig
make -C xen XEN_TARGET_ARCH="arm64" CROSS_COMPILE="aarch64-linux-gnu-"
make -C docs XEN_TARGET_ARCH="arm64" sphinx-html

now in docs/sphinx/html/ we have the generated docs starting
from the index.html page.

Luca Fancellu (3):
  docs: add doxygen support for html documentation
  docs: hypercalls sphinx skeleton for generated html
  docs/doxygen: doxygen documentation for grant_table.h

 .gitignore                                    |    7 +
 config/Docs.mk.in                             |    2 +
 docs/Makefile                                 |   46 +-
 docs/conf.py                                  |   48 +-
 docs/configure                                |  258 ++
 docs/configure.ac                             |   15 +
 docs/hypercall-interfaces/arm32.rst           |    4 +
 docs/hypercall-interfaces/arm64.rst           |   33 +
 .../arm64/grant_tables.rst                    |    8 +
 docs/hypercall-interfaces/index.rst.in        |    7 +
 docs/hypercall-interfaces/x86_64.rst          |    4 +
 docs/index.rst                                |    8 +
 docs/xen-doxygen/customdoxygen.css            |   36 +
 docs/xen-doxygen/doxy-preprocessor.py         |  110 +
 docs/xen-doxygen/doxy_input.list              |    1 +
 docs/xen-doxygen/doxygen_include.h.in         |   32 +
 docs/xen-doxygen/footer.html                  |   21 +
 docs/xen-doxygen/header.html                  |   56 +
 docs/xen-doxygen/mainpage.md                  |    5 +
 docs/xen-doxygen/xen_project_logo_165x67.png  |  Bin 0 -> 18223 bytes
 docs/xen.doxyfile.in                          | 2314 +++++++++++++++++
 m4/ax_python_module.m4                        |   56 +
 m4/docs_tool.m4                               |    9 +
 xen/include/public/grant_table.h              |   75 +-
 24 files changed, 3121 insertions(+), 34 deletions(-)
 create mode 100644 docs/hypercall-interfaces/arm32.rst
 create mode 100644 docs/hypercall-interfaces/arm64.rst
 create mode 100644 docs/hypercall-interfaces/arm64/grant_tables.rst
 create mode 100644 docs/hypercall-interfaces/index.rst.in
 create mode 100644 docs/hypercall-interfaces/x86_64.rst
 create mode 100644 docs/xen-doxygen/customdoxygen.css
 create mode 100755 docs/xen-doxygen/doxy-preprocessor.py
 create mode 100644 docs/xen-doxygen/doxy_input.list
 create mode 100644 docs/xen-doxygen/doxygen_include.h.in
 create mode 100644 docs/xen-doxygen/footer.html
 create mode 100644 docs/xen-doxygen/header.html
 create mode 100644 docs/xen-doxygen/mainpage.md
 create mode 100644 docs/xen-doxygen/xen_project_logo_165x67.png
 create mode 100644 docs/xen.doxyfile.in
 create mode 100644 m4/ax_python_module.m4

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 15:38:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 15:38:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117727.223614 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb3JX-0008CX-8b; Mon, 26 Apr 2021 15:38:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117727.223614; Mon, 26 Apr 2021 15:38: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 1lb3JX-0008CO-2q; Mon, 26 Apr 2021 15:38:23 +0000
Received: by outflank-mailman (input) for mailman id 117727;
 Mon, 26 Apr 2021 15:38:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vTY+=JX=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lb3JV-00081u-LT
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 15:38:21 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 08d42ebb-f3d8-4237-9dfd-201764de86a2;
 Mon, 26 Apr 2021 15:38:03 +0000 (UTC)
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 0E0031FB;
 Mon, 26 Apr 2021 08:38:03 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.cambridge.arm.com
 [10.1.197.16])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 27CE73F7B4;
 Mon, 26 Apr 2021 08:38: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: 08d42ebb-f3d8-4237-9dfd-201764de86a2
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	wei.chen@arm.com,
	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>
Subject: [PATCH v3 1/3] docs: add doxygen support for html documentation
Date: Mon, 26 Apr 2021 16:37:39 +0100
Message-Id: <20210426153741.26904-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20210426153741.26904-1-luca.fancellu@arm.com>
References: <20210426153741.26904-1-luca.fancellu@arm.com>

Add doxygen support to build html documentation with sphinx,
to do that the following modification are applied:

1) Modify docs/configure.ac and consequently configure script
   to check, through the ./configure script, the presence in
   the system of the sphinx-build binary, if it is found then
   it checks also the presence of the doxygen binary, breathe
   and sphinx-rtd-theme python packages.
   Doxygen and the packages are required only if sphinx-build
   is found, otherwise the Makefile will simply skip the
   sphinx html generation.
   The ax_python_module.m4 support is needed to check for
   python packages.
2) Add doxygen templates and configuration file
3) Modify docs/Makefile to call in sequence doxygen and
   sphinx-build, the doxygen configuration file will be
   modified to include the xen absolute path and
   a list of header to parse.
   A doxygen_input.h file is generated to include every
   header listed in the doxy_input.list file.
4) Add preprocessor called by doxygen before parsing headers,
   it will include in every header a doxygen_include.h file
   that provides missing defines and includes that are
   usually passed by the compiler.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
v3 changes:
- add preprocessor to handle missing defines and anonymous
  structs/unions before doxygen parsing
- modification to Makefile to handle the new process
v2 changes:
- Fix bug in Makefile when sphinx is not found in the system
---
 .gitignore                                   |    6 +
 config/Docs.mk.in                            |    2 +
 docs/Makefile                                |   42 +-
 docs/conf.py                                 |   48 +-
 docs/configure                               |  258 ++
 docs/configure.ac                            |   15 +
 docs/xen-doxygen/customdoxygen.css           |   36 +
 docs/xen-doxygen/doxy-preprocessor.py        |  110 +
 docs/xen-doxygen/doxy_input.list             |    0
 docs/xen-doxygen/doxygen_include.h.in        |   32 +
 docs/xen-doxygen/footer.html                 |   21 +
 docs/xen-doxygen/header.html                 |   56 +
 docs/xen-doxygen/mainpage.md                 |    5 +
 docs/xen-doxygen/xen_project_logo_165x67.png |  Bin 0 -> 18223 bytes
 docs/xen.doxyfile.in                         | 2314 ++++++++++++++++++
 m4/ax_python_module.m4                       |   56 +
 m4/docs_tool.m4                              |    9 +
 17 files changed, 3004 insertions(+), 6 deletions(-)
 create mode 100644 docs/xen-doxygen/customdoxygen.css
 create mode 100755 docs/xen-doxygen/doxy-preprocessor.py
 create mode 100644 docs/xen-doxygen/doxy_input.list
 create mode 100644 docs/xen-doxygen/doxygen_include.h.in
 create mode 100644 docs/xen-doxygen/footer.html
 create mode 100644 docs/xen-doxygen/header.html
 create mode 100644 docs/xen-doxygen/mainpage.md
 create mode 100644 docs/xen-doxygen/xen_project_logo_165x67.png
 create mode 100644 docs/xen.doxyfile.in
 create mode 100644 m4/ax_python_module.m4

diff --git a/.gitignore b/.gitignore
index 1c2fa1530b..d271e0ce6a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -58,6 +58,12 @@ docs/man7/
 docs/man8/
 docs/pdf/
 docs/txt/
+docs/doxygen-output
+docs/sphinx
+docs/xen.doxyfile
+docs/xen.doxyfile.tmp
+docs/xen-doxygen/doxygen_include.h
+docs/xen-doxygen/doxygen_include.h.tmp
 extras/mini-os*
 install/*
 stubdom/*-minios-config.mk
diff --git a/config/Docs.mk.in b/config/Docs.mk.in
index e76e5cd5ff..dfd4a02838 100644
--- a/config/Docs.mk.in
+++ b/config/Docs.mk.in
@@ -7,3 +7,5 @@ POD2HTML            := @POD2HTML@
 POD2TEXT            := @POD2TEXT@
 PANDOC              := @PANDOC@
 PERL                := @PERL@
+SPHINXBUILD         := @SPHINXBUILD@
+DOXYGEN             := @DOXYGEN@
diff --git a/docs/Makefile b/docs/Makefile
index 8de1efb6f5..2f784c36ce 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -17,6 +17,18 @@ TXTSRC-y := $(sort $(shell find misc -name '*.txt' -print))
 
 PANDOCSRC-y := $(sort $(shell find designs/ features/ misc/ process/ specs/ \( -name '*.pandoc' -o -name '*.md' \) -print))
 
+# Directory in which the doxygen documentation is created
+# This must be kept in sync with breathe_projects value in conf.py
+DOXYGEN_OUTPUT = doxygen-output
+
+# Doxygen input headers from xen-doxygen/doxy_input.list file
+DOXY_LIST_SOURCES != cat "xen-doxygen/doxy_input.list"
+DOXY_LIST_SOURCES := $(realpath $(addprefix $(XEN_ROOT)/,$(DOXY_LIST_SOURCES)))
+
+DOXY_DEPS := xen.doxyfile \
+			 xen-doxygen/mainpage.md \
+			 xen-doxygen/doxygen_include.h
+
 # Documentation targets
 $(foreach i,$(MAN_SECTIONS), \
   $(eval DOC_MAN$(i) := $(patsubst man/%.$(i),man$(i)/%.$(i), \
@@ -46,8 +58,28 @@ all: build
 build: html txt pdf man-pages figs
 
 .PHONY: sphinx-html
-sphinx-html:
-	sphinx-build -b html . sphinx/html
+sphinx-html: $(DOXY_DEPS) $(DOXY_LIST_SOURCES)
+ifneq ($(SPHINXBUILD),no)
+	$(DOXYGEN) xen.doxyfile
+	XEN_ROOT=$(realpath $(XEN_ROOT)) $(SPHINXBUILD) -b html . sphinx/html
+else
+	@echo "Sphinx is not installed; skipping sphinx-html documentation."
+endif
+
+xen.doxyfile: xen.doxyfile.in xen-doxygen/doxy_input.list
+	@echo "Generating $@"
+	@sed -e "s,@XEN_BASE@,$(realpath $(XEN_ROOT)),g" $< \
+		| sed -e "s,@DOXY_OUT@,$(DOXYGEN_OUTPUT),g" > $@.tmp
+	@$(foreach inc,\
+		$(DOXY_LIST_SOURCES),\
+		echo "INPUT += \"$(inc)\"" >> $@.tmp; \
+	)
+	mv $@.tmp $@
+
+xen-doxygen/doxygen_include.h: xen-doxygen/doxygen_include.h.in
+	@echo "Generating $@"
+	@sed -e "s,@XEN_BASE@,$(realpath $(XEN_ROOT)),g" $< > $@.tmp
+	@mv $@.tmp $@
 
 .PHONY: html
 html: $(DOC_HTML) html/index.html
@@ -71,7 +103,11 @@ clean: clean-man-pages
 	$(MAKE) -C figs 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
+	rm -rf html txt pdf sphinx $(DOXYGEN_OUTPUT)
+	rm -f xen.doxyfile
+	rm -f xen.doxyfile.tmp
+	rm -f xen-doxygen/doxygen_include.h
+	rm -f xen-doxygen/doxygen_include.h.tmp
 
 .PHONY: distclean
 distclean: clean
diff --git a/docs/conf.py b/docs/conf.py
index 50e41501db..a48de42331 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -13,13 +13,17 @@
 # add these directories to sys.path here. If the directory is relative to the
 # documentation root, use os.path.abspath to make it absolute, like shown here.
 #
-# import os
-# import sys
+import os
+import sys
 # sys.path.insert(0, os.path.abspath('.'))
 
 
 # -- Project information -----------------------------------------------------
 
+if "XEN_ROOT" not in os.environ:
+    sys.exit("$XEN_ROOT environment variable undefined.")
+XEN_ROOT = os.path.abspath(os.environ["XEN_ROOT"])
+
 project = u'Xen'
 copyright = u'2019, The Xen development community'
 author = u'The Xen development community'
@@ -35,6 +39,7 @@ try:
             xen_subver = line.split(u"=")[1].strip()
         elif line.startswith(u"export XEN_EXTRAVERSION"):
             xen_extra = line.split(u"=")[1].split(u"$", 1)[0].strip()
+
 except:
     pass
 finally:
@@ -44,6 +49,15 @@ finally:
     else:
         version = release = u"unknown version"
 
+try:
+    xen_doxygen_output = None
+
+    for line in open(u"Makefile"):
+        if line.startswith(u"DOXYGEN_OUTPUT"):
+                xen_doxygen_output = line.split(u"=")[1].strip()
+except:
+    sys.exit("DOXYGEN_OUTPUT variable undefined.")
+
 # -- General configuration ---------------------------------------------------
 
 # If your documentation needs a minimal Sphinx version, state it here.
@@ -53,7 +67,8 @@ needs_sphinx = '1.4'
 # Add any Sphinx extension module names here, as strings. They can be
 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
 # ones.
-extensions = []
+# breathe -> extension that integrates doxygen xml output with sphinx
+extensions = ['breathe']
 
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']
@@ -175,6 +190,33 @@ texinfo_documents = [
      'Miscellaneous'),
 ]
 
+# -- Options for Breathe extension -------------------------------------------
+
+breathe_projects = {
+    "Xen": "{}/docs/{}/xml".format(XEN_ROOT, xen_doxygen_output)
+}
+breathe_default_project = "Xen"
+
+breathe_domain_by_extension = {
+    "h": "c",
+    "c": "c",
+}
+breathe_separate_member_pages = True
+breathe_show_enumvalue_initializer = True
+breathe_show_define_initializer = True
+
+# Qualifiers to a function are causing Sphihx/Breathe to warn about
+# Error when parsing function declaration and more.  This is a list
+# of strings that the parser additionally should accept as
+# attributes.
+cpp_id_attributes = [
+    '__syscall', '__deprecated', '__may_alias',
+    '__used', '__unused', '__weak',
+    '__DEPRECATED_MACRO', 'FUNC_NORETURN',
+    '__subsystem',
+]
+c_id_attributes = cpp_id_attributes
+
 
 # -- Options for Epub output -------------------------------------------------
 
diff --git a/docs/configure b/docs/configure
index 569bd4c2ff..0ebf046a79 100755
--- a/docs/configure
+++ b/docs/configure
@@ -588,6 +588,8 @@ ac_unique_file="misc/xen-command-line.pandoc"
 ac_subst_vars='LTLIBOBJS
 LIBOBJS
 PERL
+DOXYGEN
+SPHINXBUILD
 PANDOC
 POD2TEXT
 POD2HTML
@@ -673,6 +675,7 @@ POD2MAN
 POD2HTML
 POD2TEXT
 PANDOC
+DOXYGEN
 PERL'
 
 
@@ -1318,6 +1321,7 @@ Some influential environment variables:
   POD2HTML    Path to pod2html tool
   POD2TEXT    Path to pod2text tool
   PANDOC      Path to pandoc tool
+  DOXYGEN     Path to doxygen tool
   PERL        Path to Perl parser
 
 Use these variables to override the choices made by `configure' or to help
@@ -1800,6 +1804,7 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
 
+
 case "$host_os" in
 *freebsd*) XENSTORED_KVA=/dev/xen/xenstored ;;
 *) XENSTORED_KVA=/proc/xen/xsd_kva ;;
@@ -1812,6 +1817,53 @@ case "$host_os" in
 esac
 
 
+# ===========================================================================
+#     https://www.gnu.org/software/autoconf-archive/ax_python_module.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_PYTHON_MODULE(modname[, fatal, python])
+#
+# DESCRIPTION
+#
+#   Checks for Python module.
+#
+#   If fatal is non-empty then absence of a module will trigger an error.
+#   The third parameter can either be "python" for Python 2 or "python3" for
+#   Python 3; defaults to Python 3.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Andrew Collier
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved. This file is offered as-is, without any
+#   warranty.
+
+#serial 9
+
+# This is what autoupdate's m4 run will expand.  It fires
+# the warning (with _au_warn_XXX), outputs it into the
+# updated configure.ac (with AC_DIAGNOSE), and then outputs
+# the replacement expansion.
+
+
+# This is an auxiliary macro that is also run when
+# autoupdate runs m4.  It simply calls m4_warning, but
+# we need a wrapper so that each warning is emitted only
+# once.  We break the quoting in m4_warning's argument in
+# order to expand this macro's arguments, not AU_DEFUN's.
+
+
+# Finally, this is the expansion that is picked up by
+# autoconf.  It tells the user to run autoupdate, and
+# then outputs the replacement expansion.  We do not care
+# about autoupdate's warning because that contains
+# information on what to do *after* running autoupdate.
+
+
 
 
 test "x$prefix" = "xNONE" && prefix=$ac_default_prefix
@@ -2232,6 +2284,212 @@ $as_echo "$as_me: WARNING: pandoc is not available so some documentation won't b
 fi
 
 
+# If sphinx is installed, make sure to have also the dependencies to build
+# Sphinx documentation.
+for ac_prog in sphinx-build
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_SPHINXBUILD+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$SPHINXBUILD"; then
+  ac_cv_prog_SPHINXBUILD="$SPHINXBUILD" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_SPHINXBUILD="$ac_prog"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+SPHINXBUILD=$ac_cv_prog_SPHINXBUILD
+if test -n "$SPHINXBUILD"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SPHINXBUILD" >&5
+$as_echo "$SPHINXBUILD" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+  test -n "$SPHINXBUILD" && break
+done
+test -n "$SPHINXBUILD" || SPHINXBUILD="no"
+
+    if test "x$SPHINXBUILD" = xno; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: sphinx-build is not available so sphinx documentation \
+won't be built" >&5
+$as_echo "$as_me: WARNING: sphinx-build is not available so sphinx documentation \
+won't be built" >&2;}
+else
+
+            # Extract the first word of "sphinx-build", so it can be a program name with args.
+set dummy sphinx-build; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_SPHINXBUILD+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $SPHINXBUILD in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_SPHINXBUILD="$SPHINXBUILD" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_SPHINXBUILD="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+SPHINXBUILD=$ac_cv_path_SPHINXBUILD
+if test -n "$SPHINXBUILD"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SPHINXBUILD" >&5
+$as_echo "$SPHINXBUILD" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+
+
+    # Extract the first word of "doxygen", so it can be a program name with args.
+set dummy doxygen; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_DOXYGEN+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $DOXYGEN in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_DOXYGEN="$DOXYGEN" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_DOXYGEN="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+DOXYGEN=$ac_cv_path_DOXYGEN
+if test -n "$DOXYGEN"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DOXYGEN" >&5
+$as_echo "$DOXYGEN" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+    if ! test -x "$ac_cv_path_DOXYGEN"; then :
+
+        as_fn_error $? "doxygen is needed" "$LINENO" 5
+
+fi
+
+
+    if test -z $PYTHON;
+    then
+        if test -z "";
+        then
+            PYTHON="python3"
+        else
+            PYTHON=""
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking $PYTHON_NAME module: breathe" >&5
+$as_echo_n "checking $PYTHON_NAME module: breathe... " >&6; }
+    $PYTHON -c "import breathe" 2>/dev/null
+    if test $? -eq 0;
+    then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        eval HAVE_PYMOD_BREATHE=yes
+    else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+        eval HAVE_PYMOD_BREATHE=no
+        #
+        if test -n "yes"
+        then
+            as_fn_error $? "failed to find required module breathe" "$LINENO" 5
+            exit 1
+        fi
+    fi
+
+
+    if test -z $PYTHON;
+    then
+        if test -z "";
+        then
+            PYTHON="python3"
+        else
+            PYTHON=""
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking $PYTHON_NAME module: sphinx_rtd_theme" >&5
+$as_echo_n "checking $PYTHON_NAME module: sphinx_rtd_theme... " >&6; }
+    $PYTHON -c "import sphinx_rtd_theme" 2>/dev/null
+    if test $? -eq 0;
+    then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        eval HAVE_PYMOD_SPHINX_RTD_THEME=yes
+    else
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+        eval HAVE_PYMOD_SPHINX_RTD_THEME=no
+        #
+        if test -n "yes"
+        then
+            as_fn_error $? "failed to find required module sphinx_rtd_theme" "$LINENO" 5
+            exit 1
+        fi
+    fi
+
+
+
+fi
+
 
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
diff --git a/docs/configure.ac b/docs/configure.ac
index c2e5edd3b3..a2ff55f30a 100644
--- a/docs/configure.ac
+++ b/docs/configure.ac
@@ -20,6 +20,7 @@ m4_include([../m4/docs_tool.m4])
 m4_include([../m4/path_or_fail.m4])
 m4_include([../m4/features.m4])
 m4_include([../m4/paths.m4])
+m4_include([../m4/ax_python_module.m4])
 
 AX_XEN_EXPAND_CONFIG()
 
@@ -29,6 +30,20 @@ AX_DOCS_TOOL_PROG([POD2HTML], [pod2html])
 AX_DOCS_TOOL_PROG([POD2TEXT], [pod2text])
 AX_DOCS_TOOL_PROG([PANDOC], [pandoc])
 
+# If sphinx is installed, make sure to have also the dependencies to build
+# Sphinx documentation.
+AC_CHECK_PROGS([SPHINXBUILD], [sphinx-build], [no])
+    AS_IF([test "x$SPHINXBUILD" = xno],
+        [AC_MSG_WARN(sphinx-build is not available so sphinx documentation \
+won't be built)],
+        [
+            AC_PATH_PROG([SPHINXBUILD], [sphinx-build])
+            AX_DOCS_TOOL_REQ_PROG([DOXYGEN], [doxygen])
+            AX_PYTHON_MODULE([breathe],[yes])
+            AX_PYTHON_MODULE([sphinx_rtd_theme], [yes])
+        ]
+    )
+
 AC_ARG_VAR([PERL], [Path to Perl parser])
 AX_PATH_PROG_OR_FAIL([PERL], [perl])
 
diff --git a/docs/xen-doxygen/customdoxygen.css b/docs/xen-doxygen/customdoxygen.css
new file mode 100644
index 0000000000..4735e41cf5
--- /dev/null
+++ b/docs/xen-doxygen/customdoxygen.css
@@ -0,0 +1,36 @@
+/* Custom CSS for Doxygen-generated HTML
+ * Copyright (c) 2015 Intel Corporation
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+code {
+  font-family: Monaco,Menlo,Consolas,"Courier New",monospace;
+  background-color: #D8D8D8;
+  padding: 0 0.25em 0 0.25em;
+}
+
+pre.fragment {
+  display: block;
+  font-family: Monaco,Menlo,Consolas,"Courier New",monospace;
+  padding: 1rem;
+  word-break: break-all;
+  word-wrap: break-word;
+  white-space: pre;
+  background-color: #D8D8D8;
+}
+
+#projectlogo
+{
+  vertical-align: middle;
+}
+
+#projectname
+{
+  font: 200% Tahoma, Arial,sans-serif;
+  color: #3D578C;
+}
+
+#projectbrief
+{
+  color: #3D578C;
+}
diff --git a/docs/xen-doxygen/doxy-preprocessor.py b/docs/xen-doxygen/doxy-preprocessor.py
new file mode 100755
index 0000000000..496899d8e6
--- /dev/null
+++ b/docs/xen-doxygen/doxy-preprocessor.py
@@ -0,0 +1,110 @@
+#!/usr/bin/python3
+#
+# Copyright (c) 2021, Arm Limited.
+#
+# SPDX-License-Identifier: GPL-2.0
+#
+
+import os, sys, re
+
+
+# Variables that holds the preprocessed header text
+output_text = ""
+header_file_name = ""
+
+# Variables to enumerate the anonymous structs/unions
+anonymous_struct_count = 0
+anonymous_union_count = 0
+
+
+def error(text):
+    sys.stderr.write("{}\n".format(text))
+    sys.exit(1)
+
+
+def write_to_output(text):
+    sys.stdout.write(text)
+
+
+def insert_doxygen_header(text):
+    # Here the strategy is to insert the #include <doxygen_include.h> in the
+    # first line of the header
+    abspath = os.path.dirname(os.path.abspath(__file__))
+    text += "#include \"{}/doxygen_include.h\"\n".format(abspath)
+
+    return text
+
+
+def enumerate_anonymous(match):
+    global anonymous_struct_count
+    global anonymous_union_count
+
+    if "struct" in match.group(1):
+        label = "anonymous_struct_%d" % anonymous_struct_count
+        anonymous_struct_count += 1
+    else:
+        label = "anonymous_union_%d" % anonymous_union_count
+        anonymous_union_count += 1
+
+    return match.group(1) + " " + label + " {"
+
+
+def manage_anonymous_structs_unions(text):
+    # Match anonymous unions/structs with this pattern:
+    # struct/union {
+    #     [...]
+    #
+    # and substitute it in this way:
+    #
+    # struct anonymous_struct_# {
+    #     [...]
+    # or
+    # union anonymous_union_# {
+    #     [...]
+    # where # is a counter starting from zero, different between structs and
+    # unions
+    #
+    # We don't count anonymous union/struct that are part of a typedef because
+    # they don't create any issue for doxygen
+    text = re.sub(
+        "(?<!typedef\s)(struct|union)\s+?\{",
+        enumerate_anonymous,
+        text,
+        flags=re.S
+    )
+
+    return text
+
+
+def main(argv):
+    global output_text
+    global header_file_name
+
+    if len(argv) != 1:
+        error("Script called without arguments!")
+
+    header_file_name = argv[0]
+
+    # Open header file
+    input_header_file = open(header_file_name, 'r')
+    # Read all lines
+    lines = input_header_file.readlines()
+
+    # Inject config.h and some defines in the current header, during compilation
+    # this job is done by the -include argument passed to the compiler.
+    output_text = insert_doxygen_header(output_text)
+
+    # Load file content in a variable
+    for line in lines:
+        output_text += "{}".format(line)
+
+    # Try to get rid of any anonymous union/struct
+    output_text = manage_anonymous_structs_unions(output_text)
+
+    # Final stage of the preprocessor, print the output to stdout
+    write_to_output(output_text)
+
+
+if __name__ == "__main__":
+    main(sys.argv[1:])
+    sys.exit(0)
diff --git a/docs/xen-doxygen/doxy_input.list b/docs/xen-doxygen/doxy_input.list
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/docs/xen-doxygen/doxygen_include.h.in b/docs/xen-doxygen/doxygen_include.h.in
new file mode 100644
index 0000000000..df284f3931
--- /dev/null
+++ b/docs/xen-doxygen/doxygen_include.h.in
@@ -0,0 +1,32 @@
+/*
+ * Doxygen include header
+ * It supplies the xen/include/xen/config.h that is included using the -include
+ * argument of the compiler in Xen Makefile.
+ * Other macros are defined because they are usually provided by the compiler.
+ *
+ * Copyright (C) 2021 ARM Limited
+ *
+ * Author: Luca Fancellu <luca.fancellu@arm.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0
+ */
+
+#include "@XEN_BASE@/xen/include/xen/config.h"
+
+#if defined(CONFIG_X86_64)
+
+#define __x86_64__ 1
+
+#elif defined(CONFIG_ARM_64)
+
+#define __aarch64__ 1
+
+#elif defined(CONFIG_ARM_32)
+
+#define __arm__ 1
+
+#else
+
+#error Architecture not supported/recognized.
+
+#endif
diff --git a/docs/xen-doxygen/footer.html b/docs/xen-doxygen/footer.html
new file mode 100644
index 0000000000..a24bf2b9b4
--- /dev/null
+++ b/docs/xen-doxygen/footer.html
@@ -0,0 +1,21 @@
+<!-- HTML footer for doxygen 1.8.13-->
+<!-- start footer part -->
+<!--BEGIN GENERATE_TREEVIEW-->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    $navpath
+    <li class="footer">$generatedby
+    <a href="http://www.doxygen.org/index.html">
+    <img class="footer" src="$relpath^doxygen.png" alt="doxygen"/></a> $doxygenversion </li>
+  </ul>
+</div>
+<!--END GENERATE_TREEVIEW-->
+<!--BEGIN !GENERATE_TREEVIEW-->
+<hr class="footer"/><address class="footer"><small>
+$generatedby &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="$relpath^doxygen.png" alt="doxygen"/>
+</a> $doxygenversion
+</small></address>
+<!--END !GENERATE_TREEVIEW-->
+</body>
+</html>
diff --git a/docs/xen-doxygen/header.html b/docs/xen-doxygen/header.html
new file mode 100644
index 0000000000..83ac2f1835
--- /dev/null
+++ b/docs/xen-doxygen/header.html
@@ -0,0 +1,56 @@
+<!-- HTML header for doxygen 1.8.13-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen $doxygenversion"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<!--BEGIN PROJECT_NAME--><title>$projectname: $title</title><!--END PROJECT_NAME-->
+<!--BEGIN !PROJECT_NAME--><title>$title</title><!--END !PROJECT_NAME-->
+<link href="$relpath^tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="$relpath^jquery.js"></script>
+<script type="text/javascript" src="$relpath^dynsections.js"></script>
+$treeview
+$search
+$mathjax
+<link href="$relpath^$stylesheet" rel="stylesheet" type="text/css" />
+$extrastylesheet
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+
+<!--BEGIN TITLEAREA-->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <!--BEGIN PROJECT_LOGO-->
+  <td id="projectlogo"><img alt="Logo" src="$relpath^$projectlogo"/></td>
+  <!--END PROJECT_LOGO-->
+  <!--BEGIN PROJECT_NAME-->
+  <td id="projectalign" style="padding-left: 1em;">
+   <div id="projectname">$projectname
+   <!--BEGIN PROJECT_NUMBER-->&#160;<span id="projectnumber">$projectnumber</span><!--END PROJECT_NUMBER-->
+   </div>
+   <!--BEGIN PROJECT_BRIEF--><div id="projectbrief">$projectbrief</div><!--END PROJECT_BRIEF-->
+  </td>
+  <!--END PROJECT_NAME-->
+  <!--BEGIN !PROJECT_NAME-->
+   <!--BEGIN PROJECT_BRIEF-->
+    <td style="padding-left: 0.5em;">
+    <div id="projectbrief">$projectbrief</div>
+    </td>
+   <!--END PROJECT_BRIEF-->
+  <!--END !PROJECT_NAME-->
+  <!--BEGIN DISABLE_INDEX-->
+   <!--BEGIN SEARCHENGINE-->
+   <td>$searchbox</td>
+   <!--END SEARCHENGINE-->
+  <!--END DISABLE_INDEX-->
+ </tr>
+ </tbody>
+</table>
+</div>
+<!--END TITLEAREA-->
+<!-- end header part -->
diff --git a/docs/xen-doxygen/mainpage.md b/docs/xen-doxygen/mainpage.md
new file mode 100644
index 0000000000..ff548b87fc
--- /dev/null
+++ b/docs/xen-doxygen/mainpage.md
@@ -0,0 +1,5 @@
+# API Documentation   {#index}
+
+## Introduction
+
+## Licensing
diff --git a/docs/xen-doxygen/xen_project_logo_165x67.png b/docs/xen-doxygen/xen_project_logo_165x67.png
new file mode 100644
index 0000000000000000000000000000000000000000..7244959d59cdeb9f23c5202160ea45508dfc7265
GIT binary patch
literal 18223
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

literal 0
HcmV?d00001

diff --git a/docs/xen.doxyfile.in b/docs/xen.doxyfile.in
new file mode 100644
index 0000000000..36f0d18b1f
--- /dev/null
+++ b/docs/xen.doxyfile.in
@@ -0,0 +1,2314 @@
+# Doxyfile 1.8.13
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project.
+#
+# All text after a double hash (##) is considered a comment and is placed in
+# front of the TAG it is preceding.
+#
+# All text after a single hash (#) is considered a comment and will be ignored.
+# The format is:
+# TAG = value [value, ...]
+# For lists, items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (\" \").
+#
+# This file is base on doc/zephyr.doxyfile.in zephry 2.3
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all text
+# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
+# built into libc) for the transcoding. See
+# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
+# The default value is: UTF-8.
+
+DOXYFILE_ENCODING      = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
+# double-quotes, unless you are using Doxywizard) that should identify the
+# project for which the documentation is generated. This name is used in the
+# title of most generated pages and in a few other places.
+# The default value is: My Project.
+
+PROJECT_NAME           = "Xen Project"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
+# could be handy for archiving the generated documentation or if some version
+# control system is used.
+
+PROJECT_NUMBER         =
+
+# Using the PROJECT_BRIEF tag one can provide an optional one line description
+# for a project that appears at the top of each page and should give viewer a
+# quick idea about the purpose of the project. Keep the description short.
+
+PROJECT_BRIEF          = "An Open Source Type 1 Hypervisor"
+
+# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
+# in the documentation. The maximum height of the logo should not exceed 55
+# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
+# the logo to the output directory.
+
+PROJECT_LOGO           = "xen-doxygen/xen_project_logo_165x67.png"
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
+# into which the generated documentation will be written. If a relative path is
+# entered, it will be relative to the location where doxygen was started. If
+# left blank the current directory will be used.
+
+OUTPUT_DIRECTORY       = @DOXY_OUT@
+
+# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
+# directories (in 2 levels) under the output directory of each output format and
+# will distribute the generated files over these directories. Enabling this
+# option can be useful when feeding doxygen a huge amount of source files, where
+# putting all generated files in the same directory would otherwise causes
+# performance problems for the file system.
+# The default value is: NO.
+
+CREATE_SUBDIRS         = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
+# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
+# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
+# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
+# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
+# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
+# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
+# Ukrainian and Vietnamese.
+# The default value is: English.
+
+OUTPUT_LANGUAGE        = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
+# descriptions after the members that are listed in the file and class
+# documentation (similar to Javadoc). Set to NO to disable this.
+# The default value is: YES.
+
+BRIEF_MEMBER_DESC      = YES
+
+# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
+# description of a member or function before the detailed description
+#
+# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+# The default value is: YES.
+
+REPEAT_BRIEF           = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator that is
+# used to form the text in various listings. Each string in this list, if found
+# as the leading text of the brief description, will be stripped from the text
+# and the result, after processing the whole list, is used as the annotated
+# text. Otherwise, the brief description is used as-is. If left blank, the
+# following values are used ($name is automatically replaced with the name of
+# the entity):The $name class, The $name widget, The $name file, is, provides,
+# specifies, contains, represents, a, an and the.
+
+ABBREVIATE_BRIEF       = YES
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# doxygen will generate a detailed section even if there is only a brief
+# description.
+# The default value is: NO.
+
+ALWAYS_DETAILED_SEC    = YES
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+# The default value is: NO.
+
+INLINE_INHERITED_MEMB  = YES
+
+# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
+# before files name in the file list and in the header files. If set to NO the
+# shortest path that makes the file name unique will be used
+# The default value is: YES.
+
+FULL_PATH_NAMES        = YES
+
+# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
+# Stripping is only done if one of the specified strings matches the left-hand
+# part of the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the path to
+# strip.
+#
+# Note that you can specify absolute paths here, but also relative paths, which
+# will be relative from the directory where doxygen is started.
+# This tag requires that the tag FULL_PATH_NAMES is set to YES.
+
+STRIP_FROM_PATH        = @XEN_BASE@
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
+# path mentioned in the documentation of a class, which tells the reader which
+# header file to include in order to use a class. If left blank only the name of
+# the header file containing the class definition is used. Otherwise one should
+# specify the list of include paths that are normally passed to the compiler
+# using the -I flag.
+
+STRIP_FROM_INC_PATH    =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
+# less readable) file names. This can be useful is your file systems doesn't
+# support long names like on DOS, Mac, or CD-ROM.
+# The default value is: NO.
+
+SHORT_NAMES            = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
+# first line (until the first dot) of a Javadoc-style comment as the brief
+# description. If set to NO, the Javadoc-style will behave just like regular Qt-
+# style comments (thus requiring an explicit @brief command for a brief
+# description.)
+# The default value is: NO.
+
+JAVADOC_AUTOBRIEF      = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
+# line (until the first dot) of a Qt-style comment as the brief description. If
+# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
+# requiring an explicit \brief command for a brief description.)
+# The default value is: NO.
+
+QT_AUTOBRIEF           = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
+# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
+# a brief description. This used to be the default behavior. The new default is
+# to treat a multi-line C++ comment block as a detailed description. Set this
+# tag to YES if you prefer the old behavior instead.
+#
+# Note that setting this tag to YES also means that rational rose comments are
+# not recognized any more.
+# The default value is: NO.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
+# documentation from any documented member that it re-implements.
+# The default value is: YES.
+
+INHERIT_DOCS           = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
+# page for each member. If set to NO, the documentation of a member will be part
+# of the file/class/namespace that contains it.
+# The default value is: NO.
+
+SEPARATE_MEMBER_PAGES  = YES
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
+# uses this value to replace tabs by spaces in code fragments.
+# Minimum value: 1, maximum value: 16, default value: 4.
+
+TAB_SIZE               = 8
+
+# This tag can be used to specify a number of aliases that act as commands in
+# the documentation. An alias has the form:
+# name=value
+# For example adding
+# "sideeffect=@par Side Effects:\n"
+# will allow you to put the command \sideeffect (or @sideeffect) in the
+# documentation, which will result in a user-defined paragraph with heading
+# "Side Effects:". You can put \n's in the value part of an alias to insert
+# newlines.
+
+ALIASES                = "rst=\verbatim embed:rst:leading-asterisk" \
+                         "endrst=\endverbatim"
+
+ALIASES += req{1}="\ref XEN_\1 \"XEN-\1\" "
+ALIASES += satisfy{1}="\xrefitem satisfy \"Satisfies requirement\" \"Requirement Implementation\" \1"
+ALIASES += verify{1}="\xrefitem verify \"Verifies requirement\" \"Requirement Verification\" \1"
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C. For
+# instance, some of the names that are used will be different. The list of all
+# members will be omitted, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_FOR_C  = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
+# Python sources only. Doxygen will then generate output that is more tailored
+# for that language. For instance, namespaces will be presented as packages,
+# qualified scopes will look different, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_JAVA   = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources. Doxygen will then generate output that is tailored for Fortran.
+# The default value is: NO.
+
+OPTIMIZE_FOR_FORTRAN   = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for VHDL.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_VHDL   = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension, and
+# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
+# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
+# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
+# Fortran. In the later case the parser tries to guess whether the code is fixed
+# or free formatted code, this is the default for Fortran type files), VHDL. For
+# instance to make doxygen treat .inc files as Fortran files (default is PHP),
+# and .f files as C (default is Fortran), use: inc=Fortran f=C.
+#
+# Note: For files without extension you can use no_extension as a placeholder.
+#
+# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
+# the files are not read by doxygen.
+
+EXTENSION_MAPPING      =
+
+# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
+# according to the Markdown format, which allows for more readable
+# documentation. See http://daringfireball.net/projects/markdown/ for details.
+# The output of markdown processing is further processed by doxygen, so you can
+# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
+# case of backward compatibilities issues.
+# The default value is: YES.
+
+MARKDOWN_SUPPORT       = YES
+
+# When enabled doxygen tries to link words that correspond to documented
+# classes, or namespaces to their corresponding documentation. Such a link can
+# be prevented in individual cases by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
+# The default value is: YES.
+
+AUTOLINK_SUPPORT       = YES
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should set this
+# tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string);
+# versus func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+# The default value is: NO.
+
+BUILTIN_STL_SUPPORT    = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+# The default value is: NO.
+
+CPP_CLI_SUPPORT        = YES
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
+# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen
+# will parse them like normal C++ but will assume all classes use public instead
+# of private inheritance when no explicit protection keyword is present.
+# The default value is: NO.
+
+SIP_SUPPORT            = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES will make
+# doxygen to replace the get and set methods by a property in the documentation.
+# This will only work if the methods are indeed getting or setting a simple
+# type. If this is not the case, or you want to show the methods anyway, you
+# should set this option to NO.
+# The default value is: YES.
+
+IDL_PROPERTY_SUPPORT   = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+# The default value is: NO.
+
+DISTRIBUTE_GROUP_DOC   = NO
+
+# Set the SUBGROUPING tag to YES to allow class member groups of the same type
+# (for instance a group of public functions) to be put as a subgroup of that
+# type (e.g. under the Public Functions section). Set it to NO to prevent
+# subgrouping. Alternatively, this can be done per class using the
+# \nosubgrouping command.
+# The default value is: YES.
+
+SUBGROUPING            = YES
+
+# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
+# are shown inside the group in which they are included (e.g. using \ingroup)
+# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
+# and RTF).
+#
+# Note that this feature does not work in combination with
+# SEPARATE_MEMBER_PAGES.
+# The default value is: NO.
+
+INLINE_GROUPED_CLASSES = NO
+
+# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
+# with only public data fields or simple typedef fields will be shown inline in
+# the documentation of the scope in which they are defined (i.e. file,
+# namespace, or group documentation), provided this scope is documented. If set
+# to NO, structs, classes, and unions are shown on a separate page (for HTML and
+# Man pages) or section (for LaTeX and RTF).
+# The default value is: NO.
+
+INLINE_SIMPLE_STRUCTS  = YES
+
+# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
+# enum is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically be
+# useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+# The default value is: NO.
+
+TYPEDEF_HIDES_STRUCT   = NO
+
+# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
+# cache is used to resolve symbols given their name and scope. Since this can be
+# an expensive process and often the same symbol appears multiple times in the
+# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
+# doxygen will become slower. If the cache is too large, memory is wasted. The
+# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
+# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
+# symbols. At the end of a run doxygen will report the cache usage and suggest
+# the optimal cache size from a speed point of view.
+# Minimum value: 0, maximum value: 9, default value: 0.
+
+LOOKUP_CACHE_SIZE      = 9
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
+# documentation are documented, even if no documentation was available. Private
+# class members and static file members will be hidden unless the
+# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
+# Note: This will also disable the warnings about undocumented members that are
+# normally produced when WARNINGS is set to YES.
+# The default value is: NO.
+
+EXTRACT_ALL            = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
+# be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIVATE        = NO
+
+# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
+# scope will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PACKAGE        = YES
+
+# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
+# included in the documentation.
+# The default value is: NO.
+
+EXTRACT_STATIC         = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
+# locally in source files will be included in the documentation. If set to NO,
+# only classes defined in header files are included. Does not have any effect
+# for Java sources.
+# The default value is: YES.
+
+EXTRACT_LOCAL_CLASSES  = YES
+
+# This flag is only useful for Objective-C code. If set to YES, local methods,
+# which are defined in the implementation section but not in the interface are
+# included in the documentation. If set to NO, only methods in the interface are
+# included.
+# The default value is: NO.
+
+EXTRACT_LOCAL_METHODS  = YES
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base name of
+# the file that contains the anonymous namespace. By default anonymous namespace
+# are hidden.
+# The default value is: NO.
+
+EXTRACT_ANON_NSPACES   = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
+# undocumented members inside documented classes or files. If set to NO these
+# members will be included in the various overviews, but no documentation
+# section is generated. This option has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_MEMBERS     = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy. If set
+# to NO, these classes will be included in the various overviews. This option
+# has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_CLASSES     = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
+# (class|struct|union) declarations. If set to NO, these declarations will be
+# included in the documentation.
+# The default value is: NO.
+
+HIDE_FRIEND_COMPOUNDS  = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
+# documentation blocks found inside the body of a function. If set to NO, these
+# blocks will be appended to the function's detailed documentation block.
+# The default value is: NO.
+
+HIDE_IN_BODY_DOCS      = NO
+
+# The INTERNAL_DOCS tag determines if documentation that is typed after a
+# \internal command is included. If the tag is set to NO then the documentation
+# will be excluded. Set it to YES to include the internal documentation.
+# The default value is: NO.
+
+INTERNAL_DOCS          = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
+# names in lower-case letters. If set to YES, upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+# The default value is: system dependent.
+
+CASE_SENSE_NAMES       = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
+# their full class and namespace scopes in the documentation. If set to YES, the
+# scope will be hidden.
+# The default value is: NO.
+
+HIDE_SCOPE_NAMES       = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
+# the files that are included by a file in the documentation of that file.
+# The default value is: YES.
+
+SHOW_INCLUDE_FILES     = YES
+
+# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
+# grouped member an include statement to the documentation, telling the reader
+# which file to include in order to use the member.
+# The default value is: NO.
+
+SHOW_GROUPED_MEMB_INC  = YES
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
+# files with double quotes in the documentation rather than with sharp brackets.
+# The default value is: NO.
+
+FORCE_LOCAL_INCLUDES   = NO
+
+# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
+# documentation for inline members.
+# The default value is: YES.
+
+INLINE_INFO            = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
+# (detailed) documentation of file and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order.
+# The default value is: YES.
+
+SORT_MEMBER_DOCS       = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
+# descriptions of file, namespace and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order. Note that
+# this will also influence the order of the classes in the class list.
+# The default value is: NO.
+
+SORT_BRIEF_DOCS        = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
+# (brief and detailed) documentation of class members so that constructors and
+# destructors are listed first. If set to NO the constructors will appear in the
+# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
+# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
+# member documentation.
+# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
+# detailed member documentation.
+# The default value is: NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
+# of group names into alphabetical order. If set to NO the group names will
+# appear in their defined order.
+# The default value is: NO.
+
+SORT_GROUP_NAMES       = YES
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
+# fully-qualified names, including namespaces. If set to NO, the class list will
+# be sorted only by class name, not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the alphabetical
+# list.
+# The default value is: NO.
+
+SORT_BY_SCOPE_NAME     = YES
+
+# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
+# type resolution of all parameters of a function it will reject a match between
+# the prototype and the implementation of a member function even if there is
+# only one candidate or it is obvious which candidate to choose by doing a
+# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
+# accept a match between prototype and implementation in such cases.
+# The default value is: NO.
+
+STRICT_PROTO_MATCHING  = YES
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
+# list. This list is created by putting \todo commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TODOLIST      = NO
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
+# list. This list is created by putting \test commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TESTLIST      = NO
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
+# list. This list is created by putting \bug commands in the documentation.
+# The default value is: YES.
+
+GENERATE_BUGLIST       = NO
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
+# the deprecated list. This list is created by putting \deprecated commands in
+# the documentation.
+# The default value is: YES.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional documentation
+# sections, marked by \if <section_label> ... \endif and \cond <section_label>
+# ... \endcond blocks.
+
+ENABLED_SECTIONS       = YES
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
+# initial value of a variable or macro / define can have for it to appear in the
+# documentation. If the initializer consists of more lines than specified here
+# it will be hidden. Use a value of 0 to hide initializers completely. The
+# appearance of the value of individual variables and macros / defines can be
+# controlled using \showinitializer or \hideinitializer command in the
+# documentation regardless of this setting.
+# Minimum value: 0, maximum value: 10000, default value: 30.
+
+MAX_INITIALIZER_LINES  = 300
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
+# the bottom of the documentation of classes and structs. If set to YES, the
+# list will mention the files that were used to generate the documentation.
+# The default value is: YES.
+
+SHOW_USED_FILES        = YES
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
+# will remove the Files entry from the Quick Index and from the Folder Tree View
+# (if specified).
+# The default value is: YES.
+
+SHOW_FILES             = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
+# page. This will remove the Namespaces entry from the Quick Index and from the
+# Folder Tree View (if specified).
+# The default value is: YES.
+
+SHOW_NAMESPACES        = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command command input-file, where command is the value of the
+# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
+# by doxygen. Whatever the program writes to standard output is used as the file
+# version. For an example see the documentation.
+
+FILE_VERSION_FILTER    =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. To create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option. You can
+# optionally specify a file name after the option, if omitted DoxygenLayout.xml
+# will be used as the name of the layout file.
+#
+# Note that if you run doxygen from a directory containing a file called
+# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
+# tag is left empty.
+
+LAYOUT_FILE            =
+
+# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
+# the reference definitions. This must be a list of .bib files. The .bib
+# extension is automatically appended if omitted. This requires the bibtex tool
+# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
+# For LaTeX the style of the bibliography can be controlled using
+# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
+# search path. See also \cite for info how to create references.
+
+CITE_BIB_FILES         =
+
+#---------------------------------------------------------------------------
+# Configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated to
+# standard output by doxygen. If QUIET is set to YES this implies that the
+# messages are off.
+# The default value is: NO.
+
+QUIET                  = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
+# this implies that the warnings are on.
+#
+# Tip: Turn warnings on while writing the documentation.
+# The default value is: YES.
+
+WARNINGS               = YES
+
+# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
+# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
+# will automatically be disabled.
+# The default value is: YES.
+
+WARN_IF_UNDOCUMENTED   = YES
+
+# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some parameters
+# in a documented function, or documenting parameters that don't exist or using
+# markup commands wrongly.
+# The default value is: YES.
+
+WARN_IF_DOC_ERROR      = YES
+
+# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
+# are documented, but have no documentation for their parameters or return
+# value. If set to NO, doxygen will only warn about wrong or incomplete
+# parameter documentation, but not about the absence of documentation.
+# The default value is: NO.
+
+WARN_NO_PARAMDOC       = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that doxygen
+# can produce. The string should contain the $file, $line, and $text tags, which
+# will be replaced by the file and line number from which the warning originated
+# and the warning text. Optionally the format may contain $version, which will
+# be replaced by the version of the file (if it could be obtained via
+# FILE_VERSION_FILTER)
+# The default value is: $file:$line: $text.
+
+WARN_FORMAT            = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning and error
+# messages should be written. If left blank the output is written to standard
+# error (stderr).
+
+WARN_LOGFILE           =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag is used to specify the files and/or directories that contain
+# documented source files. You may enter file names like myfile.cpp or
+# directories like /usr/src/myproject. Separate the files or directories with
+# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
+# Note: If this tag is empty the current directory is searched.
+
+INPUT                  = "@XEN_BASE@/docs/xen-doxygen/mainpage.md"
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
+# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
+# documentation (see: https://www.gnu.org/software/libiconv/) for the list of
+# possible encodings.
+# The default value is: UTF-8.
+
+INPUT_ENCODING         = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
+# *.h) to filter out the source-files in the directories.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# read by doxygen.
+#
+# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
+# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
+# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
+# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08,
+# *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf and *.qsf.
+
+# This MUST be kept in sync with DOXY_SOURCES in doc/CMakeLists.txt
+# for incremental (and faster) builds to work correctly.
+FILE_PATTERNS          = "*.c" \
+                         "*.h" \
+                         "*.S" \
+                         "*.md"
+
+# The RECURSIVE tag can be used to specify whether or not subdirectories should
+# be searched for input files as well.
+# The default value is: NO.
+
+RECURSIVE              = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should be
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+#
+# Note that relative paths are relative to the directory from which doxygen is
+# run.
+
+EXCLUDE                = @XEN_BASE@/include/nothing.h
+
+# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+# directories that are symbolic links (a Unix file system feature) are excluded
+# from the input.
+# The default value is: NO.
+
+EXCLUDE_SYMLINKS       = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories for example use the pattern */test/*
+
+EXCLUDE_PATTERNS       =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories use the pattern */test/*
+
+# Hide internal names (starting with an underscore, and doxygen-generated names
+# for nested unnamed unions that don't generate meaningful sphinx output anyway.
+EXCLUDE_SYMBOLS        =
+# _*  *.__unnamed__ z_* Z_*
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or directories
+# that contain example code fragments that are included (see the \include
+# command).
+
+EXAMPLE_PATH           =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
+# *.h) to filter out the source-files in the directories. If left blank all
+# files are included.
+
+EXAMPLE_PATTERNS       =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude commands
+# irrespective of the value of the RECURSIVE tag.
+# The default value is: NO.
+
+EXAMPLE_RECURSIVE      = YES
+
+# The IMAGE_PATH tag can be used to specify one or more files or directories
+# that contain images that are to be included in the documentation (see the
+# \image command).
+
+IMAGE_PATH             =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command:
+#
+# <filter> <input-file>
+#
+# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
+# name of an input file. Doxygen will then use the output that the filter
+# program writes to standard output. If FILTER_PATTERNS is specified, this tag
+# will be ignored.
+#
+# Note that the filter must not add or remove lines; it is applied before the
+# code is scanned, but not when the output code is generated. If lines are added
+# or removed, the anchors will not be placed correctly.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+INPUT_FILTER           =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form: pattern=filter
+# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
+# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
+# patterns match the file name, INPUT_FILTER is applied.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+FILTER_PATTERNS     = *.h="\"@XEN_BASE@/docs/xen-doxygen/doxy-preprocessor.py\""
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will also be used to filter the input files that are used for
+# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
+# The default value is: NO.
+
+FILTER_SOURCE_FILES    = NO
+
+# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
+# it is also possible to disable source filtering for a specific pattern using
+# *.ext= (so without naming a filter).
+# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
+
+FILTER_SOURCE_PATTERNS =
+
+# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+# is part of the input, its contents will be placed on the main page
+# (index.html). This can be useful if you have a project on for instance GitHub
+# and want to reuse the introduction page also for the doxygen output.
+
+USE_MDFILE_AS_MAINPAGE = "mainpage.md"
+
+#---------------------------------------------------------------------------
+# Configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
+# generated. Documented entities will be cross-referenced with these sources.
+#
+# Note: To get rid of all source code in the generated output, make sure that
+# also VERBATIM_HEADERS is set to NO.
+# The default value is: NO.
+
+SOURCE_BROWSER         = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body of functions,
+# classes and enums directly into the documentation.
+# The default value is: NO.
+
+INLINE_SOURCES         = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
+# special comment blocks from generated source code fragments. Normal C, C++ and
+# Fortran comments will always remain visible.
+# The default value is: YES.
+
+STRIP_CODE_COMMENTS    = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
+# function all documented functions referencing it will be listed.
+# The default value is: NO.
+
+REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES then for each documented function
+# all documented entities called/used by that function will be listed.
+# The default value is: NO.
+
+REFERENCES_RELATION    = NO
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
+# to YES then the hyperlinks from functions in REFERENCES_RELATION and
+# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
+# link to the documentation.
+# The default value is: YES.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
+# source code will show a tooltip with additional information such as prototype,
+# brief description and links to the definition and documentation. Since this
+# will make the HTML file larger and loading of large files a bit slower, you
+# can opt to disable this feature.
+# The default value is: YES.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+SOURCE_TOOLTIPS        = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code will
+# point to the HTML generated by the htags(1) tool instead of doxygen built-in
+# source browser. The htags tool is part of GNU's global source tagging system
+# (see https://www.gnu.org/software/global/global.html). You will need version
+# 4.8.6 or higher.
+#
+# To use it do the following:
+# - Install the latest version of global
+# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
+# - Make sure the INPUT points to the root of the source tree
+# - Run doxygen as normal
+#
+# Doxygen will invoke htags (and that will in turn invoke gtags), so these
+# tools must be available from the command line (i.e. in the search path).
+#
+# The result: instead of the source browser generated by doxygen, the links to
+# source code will now point to the output of htags.
+# The default value is: NO.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+USE_HTAGS              = NO
+
+# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
+# verbatim copy of the header file for each class for which an include is
+# specified. Set to NO to disable this.
+# See also: Section \class.
+# The default value is: YES.
+
+VERBATIM_HEADERS       = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
+# compounds will be generated. Enable this if the project contains a lot of
+# classes, structs, unions or interfaces.
+# The default value is: YES.
+
+ALPHABETICAL_INDEX     = YES
+
+# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
+# which the alphabetical index list will be split.
+# Minimum value: 1, maximum value: 20, default value: 5.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+COLS_IN_ALPHA_INDEX    = 2
+
+# In case all classes in a project start with a common prefix, all classes will
+# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
+# can be used to specify a prefix (or a list of prefixes) that should be ignored
+# while generating the index headers.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+IGNORE_PREFIX          =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
+# The default value is: YES.
+
+GENERATE_HTML          = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_OUTPUT            = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
+# generated HTML page (for example: .htm, .php, .asp).
+# The default value is: .html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FILE_EXTENSION    = .html
+
+# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
+# each generated HTML page. If the tag is left blank doxygen will generate a
+# standard header.
+#
+# To get valid HTML the header file that includes any scripts and style sheets
+# that doxygen needs, which is dependent on the configuration options used (e.g.
+# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
+# default header using
+# doxygen -w html new_header.html new_footer.html new_stylesheet.css
+# YourConfigFile
+# and then modify the file new_header.html. See also section "Doxygen usage"
+# for information on how to generate the default header that doxygen normally
+# uses.
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. For a description
+# of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_HEADER            = xen-doxygen/header.html
+
+# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+# generated HTML page. If the tag is left blank doxygen will generate a standard
+# footer. See HTML_HEADER for more information on how to generate a default
+# footer and what special commands can be used inside the footer. See also
+# section "Doxygen usage" for information on how to generate the default footer
+# that doxygen normally uses.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FOOTER            =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
+# sheet that is used by each HTML page. It can be used to fine-tune the look of
+# the HTML output. If left blank doxygen will generate a default style sheet.
+# See also section "Doxygen usage" for information on how to generate the style
+# sheet that doxygen normally uses.
+# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
+# it is more robust and this tag (HTML_STYLESHEET) will in the future become
+# obsolete.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_STYLESHEET        =
+
+# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# cascading style sheets that are included after the standard style sheets
+# created by doxygen. Using this option one can overrule certain style aspects.
+# This is preferred over using HTML_STYLESHEET since it does not replace the
+# standard style sheet and is therefore more robust against future updates.
+# Doxygen will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list). For an example see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_STYLESHEET  = xen-doxygen/customdoxygen.css
+
+# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the HTML output directory. Note
+# that these files will be copied to the base HTML output directory. Use the
+# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
+# files will be copied as-is; there are no commands or markers available.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_FILES       =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
+# will adjust the colors in the style sheet and background images according to
+# this color. Hue is specified as an angle on a colorwheel, see
+# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
+# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
+# purple, and 360 is red again.
+# Minimum value: 0, maximum value: 359, default value: 220.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_HUE    =
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
+# in the HTML output. For a value of 0 the output will use grayscales only. A
+# value of 255 will produce the most vivid colors.
+# Minimum value: 0, maximum value: 255, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_SAT    =
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
+# luminance component of the colors in the HTML output. Values below 100
+# gradually make the output lighter, whereas values above 100 make the output
+# darker. The value divided by 100 is the actual gamma applied, so 80 represents
+# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
+# change the gamma.
+# Minimum value: 40, maximum value: 240, default value: 80.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_GAMMA  =
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting this
+# to YES can help to show when doxygen was last run and thus if the
+# documentation is up to date.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_TIMESTAMP         = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_SECTIONS  = YES
+
+# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
+# shown in the various tree structured indices initially; the user can expand
+# and collapse entries dynamically later on. Doxygen will expand the tree to
+# such a level that at most the specified number of entries are visible (unless
+# a fully collapsed tree already exceeds this amount). So setting the number of
+# entries 1 will produce a full collapsed tree by default. 0 is a special value
+# representing an infinite number of entries and will result in a full expanded
+# tree by default.
+# Minimum value: 0, maximum value: 9999, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_INDEX_NUM_ENTRIES = 100
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files will be
+# generated that can be used as input for Apple's Xcode 3 integrated development
+# environment (see: https://developer.apple.com/tools/xcode/), introduced with
+# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
+# Makefile in the HTML output directory. Running make will produce the docset in
+# that directory and running make install will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
+# startup. See https://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+# for more information.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_DOCSET        = YES
+
+# This tag determines the name of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# The default value is: Doxygen generated docs.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDNAME        = "Doxygen generated docs"
+
+# This tag specifies a string that should uniquely identify the documentation
+# set bundle. This should be a reverse domain-name style string, e.g.
+# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+
+# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+# The default value is: org.doxygen.Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
+
+# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+# The default value is: Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_NAME  = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
+# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
+# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
+# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
+# Windows.
+#
+# The HTML Help Workshop contains a compiler that can convert all HTML output
+# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
+# files are now used as the Windows 98 help format, and will replace the old
+# Windows help format (.hlp) on all Windows platforms in the future. Compressed
+# HTML files also contain an index, a table of contents, and you can search for
+# words in the documentation. The HTML workshop also contains a viewer for
+# compressed HTML files.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_HTMLHELP      = NO
+
+# The CHM_FILE tag can be used to specify the file name of the resulting .chm
+# file. You can add a path in front of the file if the result should not be
+# written to the html output directory.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_FILE               = NO
+
+# The HHC_LOCATION tag can be used to specify the location (absolute path
+# including file name) of the HTML help compiler (hhc.exe). If non-empty,
+# doxygen will try to run the HTML help compiler on the generated index.hhp.
+# The file has to be specified with full path.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+HHC_LOCATION           =
+
+# The GENERATE_CHI flag controls if a separate .chi index file is generated
+# (YES) or that it should be included in the master .chm file (NO).
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+GENERATE_CHI           = NO
+
+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
+# and project file content.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_INDEX_ENCODING     =
+
+# The BINARY_TOC flag controls whether a binary table of contents is generated
+# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
+# enables the Previous and Next buttons.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+BINARY_TOC             = YES
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members to
+# the table of contents of the HTML help documentation and to the tree view.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+TOC_EXPAND             = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
+# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
+# (.qch) of the generated HTML documentation.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_QHP           = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
+# the file name of the resulting .qch file. The path specified is relative to
+# the HTML output folder.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QCH_FILE               =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
+# Project output. For more information please see Qt Help Project / Namespace
+# (see: http://doc.qt.io/qt-4.8/qthelpproject.html#namespace).
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_NAMESPACE          = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
+# Help Project output. For more information please see Qt Help Project / Virtual
+# Folders (see: http://doc.qt.io/qt-4.8/qthelpproject.html#virtual-folders).
+# The default value is: doc.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_VIRTUAL_FOLDER     = doc
+
+# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
+# filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_NAME   =
+
+# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_ATTRS  =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's filter section matches. Qt Help Project / Filter Attributes (see:
+# http://doc.qt.io/qt-4.8/qthelpproject.html#filter-attributes).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_SECT_FILTER_ATTRS  =
+
+# The QHG_LOCATION tag can be used to specify the location of Qt's
+# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
+# generated .qhp file.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHG_LOCATION           =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
+# generated, together with the HTML files, they form an Eclipse help plugin. To
+# install this plugin and make it available under the help contents menu in
+# Eclipse, the contents of the directory containing the HTML and XML files needs
+# to be copied into the plugins directory of eclipse. The name of the directory
+# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
+# After copying Eclipse needs to be restarted before the help appears.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_ECLIPSEHELP   = NO
+
+# A unique identifier for the Eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have this
+# name. Each documentation set should have its own identifier.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
+
+ECLIPSE_DOC_ID         = org.doxygen.Project
+
+# If you want full control over the layout of the generated HTML pages it might
+# be necessary to disable the index and replace it with your own. The
+# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
+# of each HTML page. A value of NO enables the index and the value YES disables
+# it. Since the tabs in the index contain the same information as the navigation
+# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+DISABLE_INDEX          = NO
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information. If the tag
+# value is set to YES, a side panel will be generated containing a tree-like
+# index structure (just like the one that is generated for HTML Help). For this
+# to work a browser that supports JavaScript, DHTML, CSS and frames is required
+# (i.e. any modern browser). Windows users are probably better off using the
+# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
+# further fine-tune the look of the index. As an example, the default style
+# sheet generated by doxygen has an example that shows how to put an image at
+# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
+# the same information as the tab index, you could consider setting
+# DISABLE_INDEX to YES when enabling this option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_TREEVIEW      = YES
+
+# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
+# doxygen will group on one line in the generated HTML documentation.
+#
+# Note that a value of 0 will completely suppress the enum values from appearing
+# in the overview section.
+# Minimum value: 0, maximum value: 20, default value: 4.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+ENUM_VALUES_PER_LINE   = 4
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
+# to set the initial width (in pixels) of the frame in which the tree is shown.
+# Minimum value: 0, maximum value: 1500, default value: 250.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+TREEVIEW_WIDTH         = 250
+
+# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
+# external symbols imported via tag files in a separate window.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+EXT_LINKS_IN_WINDOW    = NO
+
+# Use this tag to change the font size of LaTeX formulas included as images in
+# the HTML documentation. When you change the font size after a successful
+# doxygen run you need to manually remove any form_*.png images from the HTML
+# output directory to force them to be regenerated.
+# Minimum value: 8, maximum value: 50, default value: 10.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_FONTSIZE       = 10
+
+# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are not
+# supported properly for IE 6.0, but are supported on all modern browsers.
+#
+# Note that when changing this option you need to delete any form_*.png files in
+# the HTML output directory before the changes have effect.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_TRANSPARENT    = YES
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# https://www.mathjax.org) which uses client side Javascript for the rendering
+# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX            = NO
+
+# When MathJax is enabled you can set the default output format to be used for
+# the MathJax output. See the MathJax site (see:
+# http://docs.mathjax.org/en/latest/output.html) for more details.
+# Possible values are: HTML-CSS (which is slower, but has the best
+# compatibility), NativeMML (i.e. MathML) and SVG.
+# The default value is: HTML-CSS.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_FORMAT         = HTML-CSS
+
+# When MathJax is enabled you need to specify the location relative to the HTML
+# output directory using the MATHJAX_RELPATH option. The destination directory
+# should contain the MathJax.js script. For instance, if the mathjax directory
+# is located at the same level as the HTML output directory, then
+# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
+# Content Delivery Network so you can quickly see the result without installing
+# MathJax. However, it is strongly recommended to install a local copy of
+# MathJax from https://www.mathjax.org before deployment.
+# The default value is: http://cdn.mathjax.org/mathjax/latest.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_RELPATH        = http://cdn.mathjax.org/mathjax/latest
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+# extension names that should be enabled during MathJax rendering. For example
+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_EXTENSIONS     =
+
+# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
+# of code that will be used on startup of the MathJax code. See the MathJax site
+# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
+# example see the documentation.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_CODEFILE       =
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
+# the HTML output. The underlying search engine uses javascript and DHTML and
+# should work on any modern browser. Note that when using HTML help
+# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
+# there is already a search function so this one should typically be disabled.
+# For large projects the javascript based search engine can be slow, then
+# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
+# search using the keyboard; to jump to the search box use <access key> + S
+# (what the <access key> is depends on the OS and browser, but it is typically
+# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
+# key> to jump into the search results window, the results can be navigated
+# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
+# the search. The filter options can be selected when the cursor is inside the
+# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
+# to select a filter and <Enter> or <escape> to activate or cancel the filter
+# option.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+SEARCHENGINE           = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a web server instead of a web client using Javascript. There
+# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
+# setting. When disabled, doxygen will generate a PHP script for searching and
+# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
+# and searching needs to be provided by external tools. See the section
+# "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SERVER_BASED_SEARCH    = NO
+
+# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+# script for searching. Instead the search results are written to an XML file
+# which needs to be processed by an external indexer. Doxygen will invoke an
+# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
+# search results.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: https://xapian.org/).
+#
+# See the section "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH        = NO
+
+# The SEARCHENGINE_URL should point to a search engine hosted by a web server
+# which will return the search results when EXTERNAL_SEARCH is enabled.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: https://xapian.org/). See the section "External Indexing and
+# Searching" for details.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHENGINE_URL       =
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+# search data is written to a file for indexing by an external tool. With the
+# SEARCHDATA_FILE tag the name of this file can be specified.
+# The default file is: searchdata.xml.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHDATA_FILE        = searchdata.xml
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
+# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
+# projects and redirect the results back to the right project.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH_ID     =
+
+# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+# projects other than the one defined by this configuration file, but that are
+# all added to the same external search index. Each project needs to have a
+# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
+# to a relative location where the documentation can be found. The format is:
+# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTRA_SEARCH_MAPPINGS  =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
+# The default value is: YES.
+
+GENERATE_LATEX         = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_OUTPUT           = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked.
+#
+# Note that when enabling USE_PDFLATEX this option is only used for generating
+# bitmaps for formulas in the HTML output, but not in the Makefile that is
+# written to the output directory.
+# The default file is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_CMD_NAME         = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+# index for LaTeX.
+# The default file is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+MAKEINDEX_CMD_NAME     = makeindex
+
+# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+COMPACT_LATEX          = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used by the
+# printer.
+# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
+# 14 inches) and executive (7.25 x 10.5 inches).
+# The default value is: a4.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PAPER_TYPE             = a4
+
+# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
+# that should be included in the LaTeX output. The package can be specified just
+# by its name or with the correct syntax as to be used with the LaTeX
+# \usepackage command. To get the times font for instance you can specify :
+# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}
+# To use the option intlimits with the amsmath package you can specify:
+# EXTRA_PACKAGES=[intlimits]{amsmath}
+# If left blank no extra packages will be included.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+EXTRA_PACKAGES         =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
+# generated LaTeX document. The header should contain everything until the first
+# chapter. If it is left blank doxygen will generate a standard header. See
+# section "Doxygen usage" for information on how to let doxygen write the
+# default header to a separate file.
+#
+# Note: Only use a user-defined header if you know what you are doing! The
+# following commands have a special meaning inside the header: $title,
+# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
+# $projectbrief, $projectlogo. Doxygen will replace $title with the empty
+# string, for the replacement values of the other commands the user is referred
+# to HTML_HEADER.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HEADER           =
+
+# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
+# generated LaTeX document. The footer should contain everything after the last
+# chapter. If it is left blank doxygen will generate a standard footer. See
+# LATEX_HEADER for more information on how to generate a default footer and what
+# special commands can be used inside the footer.
+#
+# Note: Only use a user-defined footer if you know what you are doing!
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_FOOTER           =
+
+# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the LATEX_OUTPUT output
+# directory. Note that the files will be copied as-is; there are no commands or
+# markers available.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_FILES      =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
+# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
+# contain links (just like the HTML output) instead of page references. This
+# makes the output suitable for online browsing using a PDF viewer.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PDF_HYPERLINKS         = YES
+
+# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
+# the PDF file directly from the LaTeX files. Set this option to YES, to get a
+# higher quality PDF documentation.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+USE_PDFLATEX           = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
+# command to the generated LaTeX files. This will instruct LaTeX to keep running
+# if errors occur, instead of asking the user for help. This option is also used
+# when generating formulas in HTML.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BATCHMODE        = NO
+
+# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
+# index chapters (such as File Index, Compound Index, etc.) in the output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HIDE_INDICES     = NO
+
+# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
+# code with syntax highlighting in the LaTeX output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_SOURCE_CODE      = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. See
+# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+# The default value is: plain.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BIB_STYLE        = plain
+
+#---------------------------------------------------------------------------
+# Configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
+# RTF output is optimized for Word 97 and may not look too pretty with other RTF
+# readers/editors.
+# The default value is: NO.
+
+GENERATE_RTF           = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: rtf.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_OUTPUT             = rtf
+
+# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+COMPACT_RTF            = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
+# contain hyperlink fields. The RTF file will contain links (just like the HTML
+# output) instead of page references. This makes the output suitable for online
+# browsing using Word or some other Word compatible readers that support those
+# fields.
+#
+# Note: WordPad (write) and others do not support links.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_HYPERLINKS         = YES
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's config
+# file, i.e. a series of assignments. You only have to provide replacements,
+# missing definitions are set to their default value.
+#
+# See also section "Doxygen usage" for information on how to generate the
+# default style sheet that doxygen normally uses.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_STYLESHEET_FILE    =
+
+# Set optional variables used in the generation of an RTF document. Syntax is
+# similar to doxygen's config file. A template extensions file can be generated
+# using doxygen -e rtf extensionFile.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_EXTENSIONS_FILE    =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
+# classes and files.
+# The default value is: NO.
+
+GENERATE_MAN           = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it. A directory man3 will be created inside the directory specified by
+# MAN_OUTPUT.
+# The default directory is: man.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_OUTPUT             = man
+
+# The MAN_EXTENSION tag determines the extension that is added to the generated
+# man pages. In case the manual section does not start with a number, the number
+# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
+# optional.
+# The default value is: .3.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_EXTENSION          = .3
+
+# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
+# will generate one additional man file for each entity documented in the real
+# man page(s). These additional files only source the real man page, but without
+# them the man command would be unable to find the correct page.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_LINKS              = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
+# captures the structure of the code including all documentation.
+# The default value is: NO.
+
+GENERATE_XML           = YES
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: xml.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_OUTPUT             = xml
+
+# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
+# listings (including syntax highlighting and cross-referencing information) to
+# the XML output. Note that enabling this will significantly increase the size
+# of the XML output.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_PROGRAMLISTING     = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the DOCBOOK output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
+# that can be used to generate PDF.
+# The default value is: NO.
+
+GENERATE_DOCBOOK       = NO
+
+# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
+# front of it.
+# The default directory is: docbook.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_OUTPUT         = docbook
+
+#---------------------------------------------------------------------------
+# Configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
+# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
+# the structure of the code including all documentation. Note that this feature
+# is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_AUTOGEN_DEF   = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
+# file that captures the structure of the code including all documentation.
+#
+# Note that this feature is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_PERLMOD       = NO
+
+# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
+# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
+# output from the Perl module output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_LATEX          = NO
+
+# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
+# formatted so it can be parsed by a human reader. This is useful if you want to
+# understand what is going on. On the other hand, if this tag is set to NO, the
+# size of the Perl module output will be much smaller and Perl will parse it
+# just the same.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_PRETTY         = YES
+
+# The names of the make variables in the generated doxyrules.make file are
+# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
+# so different doxyrules.make files included by the same Makefile don't
+# overwrite each other's variables.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
+# C-preprocessor directives found in the sources and include files.
+# The default value is: YES.
+
+ENABLE_PREPROCESSING   = YES
+
+# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
+# in the source code. If set to NO, only conditional compilation will be
+# performed. Macro expansion can be done in a controlled way by setting
+# EXPAND_ONLY_PREDEF to YES.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+MACRO_EXPANSION        = YES
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
+# the macro expansion is limited to the macros specified with the PREDEFINED and
+# EXPAND_AS_DEFINED tags.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_ONLY_PREDEF     = NO
+
+# If the SEARCH_INCLUDES tag is set to YES, the include files in the
+# INCLUDE_PATH will be searched if a #include is found.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SEARCH_INCLUDES        = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by the
+# preprocessor.
+# This tag requires that the tag SEARCH_INCLUDES is set to YES.
+
+INCLUDE_PATH           = "@XEN_BASE@/xen/include/generated" \
+                         "@XEN_BASE@/xen/include/"
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will be
+# used.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+INCLUDE_FILE_PATTERNS  =
+
+# The PREDEFINED tag can be used to specify one or more macro names that are
+# defined before the preprocessor is started (similar to the -D option of e.g.
+# gcc). The argument of the tag is a list of macros of the form: name or
+# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
+# is assumed. To prevent a macro definition from being undefined via #undef or
+# recursively expanded use the := operator instead of the = operator.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+PREDEFINED             = __attribute__(x)= \
+                         DOXYGEN \
+                         __XEN__
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
+# tag can be used to specify a list of macro names that should be expanded. The
+# macro definition that is found in the sources will be used. Use the PREDEFINED
+# tag if you want to use a different macro definition that overrules the
+# definition found in the source code.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_AS_DEFINED      =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
+# remove all references to function-like macros that are alone on a line, have
+# an all uppercase name, and do not end with a semicolon. Such function macros
+# are typically used for boiler-plate code, and will confuse the parser if not
+# removed.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SKIP_FUNCTION_MACROS   = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tag files. For each tag
+# file the location of the external documentation should be added. The format of
+# a tag file without this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where loc1 and loc2 can be relative or absolute paths or URLs. See the
+# section "Linking to external documentation" for more information about the use
+# of tag files.
+# Note: Each tag file must have a unique name (where the name does NOT include
+# the path). If a tag file is not located in the directory in which doxygen is
+# run, you must also specify the path to the tagfile here.
+
+TAGFILES               =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
+# tag file that is based on the input files it reads. See section "Linking to
+# external documentation" for more information about the usage of tag files.
+
+GENERATE_TAGFILE       =
+
+# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
+# the class index. If set to NO, only the inherited external classes will be
+# listed.
+# The default value is: NO.
+
+ALLEXTERNALS           = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will be
+# listed.
+# The default value is: YES.
+
+EXTERNAL_GROUPS        = YES
+
+# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
+# the related pages index. If set to NO, only the current project's pages will
+# be listed.
+# The default value is: YES.
+
+EXTERNAL_PAGES         = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram
+# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
+# NO turns the diagrams off. Note that this option also works with HAVE_DOT
+# disabled, but it is recommended to install and use dot, since it yields more
+# powerful graphs.
+# The default value is: YES.
+
+CLASS_DIAGRAMS         = NO
+
+# You can include diagrams made with dia in doxygen documentation. Doxygen will
+# then run dia to produce the diagram and insert it in the documentation. The
+# DIA_PATH tag allows you to specify the directory where the dia binary resides.
+# If left empty dia is assumed to be found in the default search path.
+
+DIA_PATH               =
+
+# If set to YES the inheritance and collaboration graphs will hide inheritance
+# and usage relations if the target is undocumented or is not a class.
+# The default value is: YES.
+
+HIDE_UNDOC_RELATIONS   = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz (see:
+# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
+# Bell Labs. The other options in this section have no effect if this option is
+# set to NO
+# The default value is: NO.
+
+HAVE_DOT               = NO
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
+# to run in parallel. When set to 0 doxygen will base this on the number of
+# processors available in the system. You can set it explicitly to a value
+# larger than 0 to get control over the balance between CPU load and processing
+# speed.
+# Minimum value: 0, maximum value: 32, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_NUM_THREADS        = 0
+
+# When you want a differently looking font in the dot files that doxygen
+# generates you can specify the font name using DOT_FONTNAME. You need to make
+# sure dot is able to find the font, which can be done by putting it in a
+# standard location or by setting the DOTFONTPATH environment variable or by
+# setting DOT_FONTPATH to the directory containing the font.
+# The default value is: Helvetica.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTNAME           = Helvetica
+
+# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
+# dot graphs.
+# Minimum value: 4, maximum value: 24, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTSIZE           = 10
+
+# By default doxygen will tell dot to use the default font as specified with
+# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
+# the path where dot can find it using this tag.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTPATH           =
+
+# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
+# each documented class showing the direct and indirect inheritance relations.
+# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CLASS_GRAPH            = YES
+
+# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
+# graph for each documented class showing the direct and indirect implementation
+# dependencies (inheritance, containment, and class references variables) of the
+# class with other documented classes.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+COLLABORATION_GRAPH    = YES
+
+# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
+# groups, showing the direct groups dependencies.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GROUP_GRAPHS           = YES
+
+# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LOOK               = NO
+
+# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
+# class node. If there are many fields or methods and many nodes the graph may
+# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
+# number of items for each type to make the size more manageable. Set this to 0
+# for no limit. Note that the threshold may be exceeded by 50% before the limit
+# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
+# but if the number exceeds 15, the total amount of fields shown is limited to
+# 10.
+# Minimum value: 0, maximum value: 100, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LIMIT_NUM_FIELDS   = 10
+
+# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
+# collaboration graphs will show the relations between templates and their
+# instances.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+TEMPLATE_RELATIONS     = NO
+
+# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
+# YES then doxygen will generate a graph for each documented file showing the
+# direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDE_GRAPH          = YES
+
+# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
+# set to YES then doxygen will generate a graph for each documented file showing
+# the direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDED_BY_GRAPH      = YES
+
+# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command. Disabling a call graph can be
+# accomplished by means of the command \hidecallgraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALL_GRAPH             = NO
+
+# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable caller graphs for selected
+# functions only using the \callergraph command. Disabling a caller graph can be
+# accomplished by means of the command \hidecallergraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALLER_GRAPH           = NO
+
+# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
+# hierarchy of all classes instead of a textual one.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GRAPHICAL_HIERARCHY    = YES
+
+# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
+# dependencies a directory has on other directories in a graphical way. The
+# dependency relations are determined by the #include relations between the
+# files in the directories.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DIRECTORY_GRAPH        = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. For an explanation of the image formats see the section
+# output formats in the documentation of the dot tool (Graphviz (see:
+# http://www.graphviz.org/)).
+# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
+# to make the SVG files visible in IE 9+ (other browsers do not have this
+# requirement).
+# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,
+# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
+# png:gdiplus:gdiplus.
+# The default value is: png.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_IMAGE_FORMAT       = png
+
+# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+# enable generation of interactive SVG images that allow zooming and panning.
+#
+# Note that this requires a modern browser other than Internet Explorer. Tested
+# and working are Firefox, Chrome, Safari, and Opera.
+# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
+# the SVG files visible. Older versions of IE do not have SVG support.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INTERACTIVE_SVG        = NO
+
+# The DOT_PATH tag can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_PATH               =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the \dotfile
+# command).
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOTFILE_DIRS           =
+
+# The MSCFILE_DIRS tag can be used to specify one or more directories that
+# contain msc files that are included in the documentation (see the \mscfile
+# command).
+
+MSCFILE_DIRS           =
+
+# The DIAFILE_DIRS tag can be used to specify one or more directories that
+# contain dia files that are included in the documentation (see the \diafile
+# command).
+
+DIAFILE_DIRS           =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
+# that will be shown in the graph. If the number of nodes in a graph becomes
+# larger than this value, doxygen will truncate the graph, which is visualized
+# by representing a node as a red box. Note that doxygen if the number of direct
+# children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
+# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+# Minimum value: 0, maximum value: 10000, default value: 50.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_GRAPH_MAX_NODES    = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
+# generated by dot. A depth value of 3 means that only nodes reachable from the
+# root by following a path via at most 3 edges will be shown. Nodes that lay
+# further from the root node will be omitted. Note that setting this option to 1
+# or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+# Minimum value: 0, maximum value: 1000, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+MAX_DOT_GRAPH_DEPTH    = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not seem
+# to support this out of the box.
+#
+# Warning: Depending on the platform used, enabling this option may lead to
+# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+# read).
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_TRANSPARENT        = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10) support
+# this, this feature is disabled by default.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_MULTI_TARGETS      = NO
+
+# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
+# explaining the meaning of the various boxes and arrows in the dot generated
+# graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GENERATE_LEGEND        = YES
+
+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
+# files that are used to generate the various graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_CLEANUP            = YES
diff --git a/m4/ax_python_module.m4 b/m4/ax_python_module.m4
new file mode 100644
index 0000000000..107d88264a
--- /dev/null
+++ b/m4/ax_python_module.m4
@@ -0,0 +1,56 @@
+# ===========================================================================
+#     https://www.gnu.org/software/autoconf-archive/ax_python_module.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_PYTHON_MODULE(modname[, fatal, python])
+#
+# DESCRIPTION
+#
+#   Checks for Python module.
+#
+#   If fatal is non-empty then absence of a module will trigger an error.
+#   The third parameter can either be "python" for Python 2 or "python3" for
+#   Python 3; defaults to Python 3.
+#
+# LICENSE
+#
+#   Copyright (c) 2008 Andrew Collier
+#
+#   Copying and distribution of this file, with or without modification, are
+#   permitted in any medium without royalty provided the copyright notice
+#   and this notice are preserved. This file is offered as-is, without any
+#   warranty.
+
+#serial 9
+
+AU_ALIAS([AC_PYTHON_MODULE], [AX_PYTHON_MODULE])
+AC_DEFUN([AX_PYTHON_MODULE],[
+    if test -z $PYTHON;
+    then
+        if test -z "$3";
+        then
+            PYTHON="python3"
+        else
+            PYTHON="$3"
+        fi
+    fi
+    PYTHON_NAME=`basename $PYTHON`
+    AC_MSG_CHECKING($PYTHON_NAME module: $1)
+    $PYTHON -c "import $1" 2>/dev/null
+    if test $? -eq 0;
+    then
+        AC_MSG_RESULT(yes)
+        eval AS_TR_CPP(HAVE_PYMOD_$1)=yes
+    else
+        AC_MSG_RESULT(no)
+        eval AS_TR_CPP(HAVE_PYMOD_$1)=no
+        #
+        if test -n "$2"
+        then
+            AC_MSG_ERROR(failed to find required module $1)
+            exit 1
+        fi
+    fi
+])
\ No newline at end of file
diff --git a/m4/docs_tool.m4 b/m4/docs_tool.m4
index 3e8814ac8d..39aa348026 100644
--- a/m4/docs_tool.m4
+++ b/m4/docs_tool.m4
@@ -15,3 +15,12 @@ dnl
         AC_MSG_WARN([$2 is not available so some documentation won't be built])
     ])
 ])
+
+AC_DEFUN([AX_DOCS_TOOL_REQ_PROG], [
+dnl
+    AC_ARG_VAR([$1], [Path to $2 tool])
+    AC_PATH_PROG([$1], [$2])
+    AS_IF([! test -x "$ac_cv_path_$1"], [
+        AC_MSG_ERROR([$2 is needed])
+    ])
+])
\ No newline at end of file
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 15:40:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 15:40:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117747.223626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb3Ll-0000nh-Vh; Mon, 26 Apr 2021 15:40:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117747.223626; Mon, 26 Apr 2021 15:40: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 1lb3Ll-0000na-SA; Mon, 26 Apr 2021 15:40:41 +0000
Received: by outflank-mailman (input) for mailman id 117747;
 Mon, 26 Apr 2021 15:40:41 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vTY+=JX=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lb3Lk-0000nV-RC
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 15:40:40 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (unknown
 [40.107.6.65]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f8129547-73f5-4f9f-a1f0-46c719333c8d;
 Mon, 26 Apr 2021 15:40:38 +0000 (UTC)
Received: from MR2P264CA0107.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:33::23)
 by AM6PR08MB4692.eurprd08.prod.outlook.com (2603:10a6:20b:d2::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Mon, 26 Apr
 2021 15:40:34 +0000
Received: from VE1EUR03FT037.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:500:33:cafe::98) by MR2P264CA0107.outlook.office365.com
 (2603:10a6:500:33::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend
 Transport; Mon, 26 Apr 2021 15:40:34 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT037.mail.protection.outlook.com (10.152.19.70) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Mon, 26 Apr 2021 15:40:34 +0000
Received: ("Tessian outbound 82c2d58b350b:v90");
 Mon, 26 Apr 2021 15:40:33 +0000
Received: from 66d2042c478f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 29852ADE-E7A8-44F8-A7D8-43225DA35995.1; 
 Mon, 26 Apr 2021 15:40:14 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 66d2042c478f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 26 Apr 2021 15:40:14 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3869.eurprd08.prod.outlook.com (2603:10a6:803:bf::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20; Mon, 26 Apr
 2021 15:40:12 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4065.027; Mon, 26 Apr 2021
 15:40:10 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO2P123CA0061.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1::25) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.25 via Frontend Transport; Mon, 26 Apr 2021 15: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>
X-Inumbo-ID: f8129547-73f5-4f9f-a1f0-46c719333c8d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TMIkCg9QqaEkIQuG694JzwGAJwB2d7CoeYJw3aDOIgE=;
 b=6x9FTgKucNgWzzg7/y0wragDHmY2hNTDEUOdxNzg/mHXB5B8os+96rfC4Pg4Efj2nw7WiD8Mv+LjEcInAQ26c/pwCEDFW2GJaEIQ97mtF5iflPkePo6kqGDYEgWEszbRc8k2+3JxCMe/NjlGd7KXbq+9YhGZt5VA6FEUXJy9gzU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 8741621415b47ab0
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YOzm2TSlSjx6sXM02v7yGoXntZs6sYpdvsSK5TBleIps3ULWI9xBDC1RkUBLU+I/VXfIxhEhoRi16897S24V5Ajf4iHG5FBeQy6vgBwoPJuuVagVFEHiSot0grel2s9B0mHeYQEgLupp3xg6viP6gGgE4mHu4W2yCS6rwVtewcbSiEKar+3/zA0td4OEAfGh863zsslRuJdrtn8YDZfpuxwNjgJViSboPz7pUhcVuU858y2LHN4q8wI1IK9pQPf+LW2n+vahdhT5SWI8DBa2of9vYMyEoufHP0NqE6gBvODVPuGcBeqqIbD1PkH2DeqqVh0A+P2EYgDenNFZN7TtDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TMIkCg9QqaEkIQuG694JzwGAJwB2d7CoeYJw3aDOIgE=;
 b=mP8l8FNeAAsdy09HLp1wSjbYQhnRFyAoPyS5vTouGY6oVSateCroF+/u8tPKZgs8S/hANhgjcJDHwUGvBmL0Vi5K8naWKG0nV8PZvVnTB2ZW2gtob3Nr6sVruJImtQ12/v3KRYkUXonzn1bkVYgDiAl3hSMvpT4pMet1mxL/ViMPkVjXBtaCaCVFtxiO88IrI60qYA96xG2/6s+ZYyw6nhPYVeKN5MTYLbzbgCBUOVUNrWvMUNpVEamnlt7MCu7EeHtFm9gaqJ0QzxipuXtSX1tasUOkgztcXovgkT57gBGyEIzJaZ1csndiYepnpFZYnMOE65gvVJ/rAFKnhvRn9g==
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=TMIkCg9QqaEkIQuG694JzwGAJwB2d7CoeYJw3aDOIgE=;
 b=6x9FTgKucNgWzzg7/y0wragDHmY2hNTDEUOdxNzg/mHXB5B8os+96rfC4Pg4Efj2nw7WiD8Mv+LjEcInAQ26c/pwCEDFW2GJaEIQ97mtF5iflPkePo6kqGDYEgWEszbRc8k2+3JxCMe/NjlGd7KXbq+9YhGZt5VA6FEUXJy9gzU=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v2 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <62112712-7ace-3cad-8bc5-b5656fdd42f8@suse.com>
Date: Mon, 26 Apr 2021 16:40:02 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <52B5BFEF-95C9-438D-81AF-60CE2570631C@arm.com>
References: <20210419091231.55684-1-luca.fancellu@arm.com>
 <20210419091231.55684-4-luca.fancellu@arm.com>
 <c8e1022f-abb0-56f3-db37-5cec4d01dead@suse.com>
 <0F26E53E-0C0A-4596-AC88-F803BC7A0493@arm.com>
 <c6d80a92-b8e7-703a-e051-18dc845b242a@suse.com>
 <ADF98BE7-02CA-48C1-B0CF-E4C7B4C0E828@arm.com>
 <dbcf10ef-0d40-a687-d242-f01a01bca342@suse.com>
 <91B2399E-2E91-44A9-A5F2-C55F42F52F52@arm.com>
 <62112712-7ace-3cad-8bc5-b5656fdd42f8@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P123CA0061.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1::25) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5223418d-ea12-4bc3-c271-08d908c9a1c6
X-MS-TrafficTypeDiagnostic: VI1PR08MB3869:|AM6PR08MB4692:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AM6PR08MB4692961DD3E36A47A2C45A4EE4429@AM6PR08MB4692.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 y43Ku36VeMh5TFznO1qua6ZuRL9kU4AY/v4mhD8cywSOw5AIhwFFh8QPRAqVKSMLW5rEy55IHYlsTvAqxAn2fd3pp3VQQQM6ITD9AVQvFwiRh8WkjOjPyv9dSBL2t0ukQaL36T9jijnUl0Dltc2ZCO3GymmS99QEItRGa31TXiRrPD4qOuM8cu4elIzBzX3UJa8FP4RvD+I1aHlKtverf+liCgoue+E4ru3TL2YXJFAaRNZfVhP6SP5qTA/7BCUEn8NVMjJf0KlcuXfw8brhw1QAp4lKM4A0/Q/ldrXRufYbOPPJIpsxZjDe27fUDwKQBusCHsw8aRrW/DISIK13SRPzcaqFmLl/dT2fFRwKPOn8nKNvnRCn1MawO6BpC7PKVZgug0FDX55do1D9aD0HEcdFo1Mn1Dtd3NcTIhnkKwil5ODaFh5gXEEyPtxe6qH5xiXLbcxOcVkGyBsBCYCfAFJL16m/uJ5u1k2823lieyhzXM1gYX8rqjfdnAvE9Y++uBjGH05c6MUTw5ZV0ZM9hrwDs2VrSM8ttrDUKoGEAtl3mVNzqyoXT1CTC4Okzsk5eRqtF2/lAxaF3/lNBWK+GxsEqkdgy+zCVhaJcIZB147d2wrCjIYCltsmJkJ98hjusPMvD5cqEERDC1Z2aWu6iqda8DU6CSd3+ZbdYGdfHzJqGi/CTdoHkeAjl1tPx94EpUdMj1IIV5XCb+TPcZ8DNw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(39860400002)(346002)(366004)(396003)(376002)(7696005)(186003)(52116002)(316002)(33656002)(16526019)(38100700002)(86362001)(38350700002)(2906002)(5660300002)(26005)(53546011)(6486002)(4326008)(966005)(83380400001)(66946007)(8676002)(54906003)(6916009)(6666004)(8936002)(66476007)(66556008)(478600001)(44832011)(2616005)(36756003)(956004)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3869
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT037.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	d408822a-4432-4470-b0a0-08d908c99352
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KuSLe/3AiiGv/2iwthnlTPAz4Y9bqJj141Tfk+uKTw5cr3WR8BrrTk30KaPUasNIlDOabD7ajBQFXzN9LL//a01OZADq87dJV/6Hyqwae0xZJEDNi2f4YKE5AOFop6l85LPcbZ7zEv+VQQeNjAtJlETSI3FgiF0vZItnn0ulc2R4NsfHYh+o56LjSE/1OvqUfx0qdk4uVRfUF9DJw2h2wF5ESBFQOyTcKoTVX/8KRSRuNlpzVR+x8F26boojZ+vZMmp/KMmpAnuLQs5jh+g5KOrXyIs7oiultlk94CCWfrYIdDzlFicqStVx0XutGpVNqNs1NF5vI+xVE8UIOosbZ0IwD0fgj28VkIdQPjUjp/7dTMSS2gjfdTHd0Drh10Bf1GRv5drDkhE/F3gYPlPnY4wXPKskzrjol5cPeGFrd5R9zjvb6rWjAJdC3tsdh7ZVpi1+GG6z6t5R1rekbtBrCBE396qaJFc7uVFJZkn1cXnf8aTWnD6SRCfhkVk+GBIZH76cWJJfKPSMcT8eKqyIKjDzN6DHCeqbBxT7i2Jyo9o2bsldeTXW8HGFzohAl+T2qkkr3hlNOs2+VkQBStzXVaa8LhUcKugguE6Yjk+jEmxeXpe5C1PPqDFDAfOusN/8kKf0iCx0fz9DMH48y8giHUOYLLTOkOcEuSqFE53R1zflO3jGJf7oHvJ++AQKhyW72A2S9PT16/EN6JT6UdrcRgxJ+PLAtGAuy0NpGZZzXkM=
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:(4636009)(136003)(39860400002)(346002)(376002)(396003)(46966006)(36840700001)(966005)(70586007)(81166007)(5660300002)(2616005)(336012)(26005)(83380400001)(82740400003)(47076005)(54906003)(70206006)(316002)(356005)(33656002)(2906002)(478600001)(6862004)(956004)(53546011)(7696005)(82310400003)(34020700004)(44832011)(6486002)(8936002)(86362001)(36756003)(8676002)(186003)(4326008)(36860700001)(6666004)(16526019);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Apr 2021 15:40:34.3543
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5223418d-ea12-4bc3-c271-08d908c9a1c6
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:
	VE1EUR03FT037.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB4692



> On 22 Apr 2021, at 09:06, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 22.04.2021 09:39, Luca Fancellu wrote:
>>> On 20 Apr 2021, at 11:27, Jan Beulich <jbeulich@suse.com> wrote:
>>> On 20.04.2021 11:42, Luca Fancellu wrote:
>>>>> On 20 Apr 2021, at 10:14, Jan Beulich <jbeulich@suse.com> wrote:
>>>>> On 20.04.2021 10:46, Luca Fancellu wrote:
>>>>>>> On 19 Apr 2021, at 12:05, Jan Beulich <jbeulich@suse.com> wrote:
>>>>>>> On 19.04.2021 11:12, Luca Fancellu wrote:
>>>>>>>> - */
>>>>>>>> -
>>>>>>>> -/*
>>>>>>>> - * Reference to a grant entry in a specified domain's grant table=
.
>>>>>>>> - */
>>>>>>>> -typedef uint32_t grant_ref_t;
>>>>>>>=20
>>>>>>> Why does this get moved ...
>>>>>>>=20
>>>>>>>> -
>>>>>>>> -/*
>>>>>>>> + *
>>>>>>>> * A grant table comprises a packed array of grant entries in one o=
r more
>>>>>>>> * page frames shared between Xen and a guest.
>>>>>>>> + *
>>>>>>>> * [XEN]: This field is written by Xen and read by the sharing gues=
t.
>>>>>>>> + *
>>>>>>>> * [GST]: This field is written by the guest and read by Xen.
>>>>>>>> + *
>>>>>>>> + * @addtogroup grant_table Grant Tables
>>>>>>>> + * @{
>>>>>>>> */
>>>>>>>>=20
>>>>>>>> -/*
>>>>>>>> - * Version 1 of the grant table entry structure is maintained pur=
ely
>>>>>>>> - * for backwards compatibility.  New guests should use version 2.
>>>>>>>> +/**
>>>>>>>> + * Reference to a grant entry in a specified domain's grant table=
.
>>>>>>>> */
>>>>>>>> +typedef uint32_t grant_ref_t;
>>>>>>>=20
>>>>>>> ... here, past a comment unrelated to it?
>>>>>>=20
>>>>>> The comment =E2=80=9CVersion 1 of the grant table entry [=E2=80=A6]=
=E2=80=9D was moved on top of the struct grant_entry_v1, in this way
>>>>>> Doxygen associate the comment to that structure.
>>>>>>=20
>>>>>> The comment =E2=80=9CReference to a grant entry in a specified domai=
n's grant table.=E2=80=9D Is moved on top of typedef uint32_t grant_ref_t
>>>>>> for the same reason above
>>>>>=20
>>>>> But it's the other comment ("A grant table comprises ...") that I
>>>>> was asking about.
>>>>=20
>>>> I thought it was part of the brief about grant tables, am I wrong? For=
 that reason I moved it.
>>>=20
>>> Well, the comment talks about grant table entries (the layout of which
>>> gets defined immediately below, as visible in the original patch), not
>>> grant references.
>>=20
>> Hi Jan,
>>=20
>> Of course this can be reverted back if it is wrong.=20
>>=20
>> I=E2=80=99ve prepared a page with the output of all my commits (some of =
them are not yet in the ML),
>> so anyone can have a look on what is the output and how can sphinx+doxyg=
en improve
>> the quality of the documentation.
>>=20
>> Here:=20
>>=20
>> https://luca.fancellu.gitlab.io/xen-docs/hypercall-interfaces/arm64.html
>=20
> The doc looks fine in this regard, but the C header should remain
> properly ordered as well.

Hi Jan,

I=E2=80=99ve pushed outside the v3 addressing your comment

>=20
>>>>>>>> @@ -243,23 +258,27 @@ union grant_entry_v2 {
>>>>>>>>   * In that case, the frame field has the same semantics as the
>>>>>>>>   * field of the same name in the V1 entry structure.
>>>>>>>>   */
>>>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>>>  struct {
>>>>>>>>      grant_entry_header_t hdr;
>>>>>>>>      uint32_t pad0;
>>>>>>>>      uint64_t frame;
>>>>>>>>  } full_page;
>>>>>>>> +    /** @endcond */
>>>>>>>>=20
>>>>>>>>  /*
>>>>>>>>   * If the grant type is GTF_grant_access and GTF_sub_page is set,
>>>>>>>>   * @domid is allowed to access bytes [@page_off,@page_off+@length=
)
>>>>>>>>   * in frame @frame.
>>>>>>>>   */
>>>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>>>  struct {
>>>>>>>>      grant_entry_header_t hdr;
>>>>>>>>      uint16_t page_off;
>>>>>>>>      uint16_t length;
>>>>>>>>      uint64_t frame;
>>>>>>>>  } sub_page;
>>>>>>>> +    /** @endcond */
>>>>>>>>=20
>>>>>>>>  /*
>>>>>>>>   * If the grant is GTF_transitive, @domid is allowed to use the
>>>>>>>> @@ -270,12 +289,14 @@ union grant_entry_v2 {
>>>>>>>>   * The current version of Xen does not allow transitive grants
>>>>>>>>   * to be mapped.
>>>>>>>>   */
>>>>>>>> +    /** @cond skip anonymous struct/union for doxygen */
>>>>>>>>  struct {
>>>>>>>>      grant_entry_header_t hdr;
>>>>>>>>      domid_t trans_domid;
>>>>>>>>      uint16_t pad0;
>>>>>>>>      grant_ref_t gref;
>>>>>>>>  } transitive;
>>>>>>>> +    /** @endcond */
>>>>>>>=20
>>>>>>> While already better than the introduction of strange struct tags,
>>>>>>> I'm still not convinced we want this extra clutter (sorry). Plus -
>>>>>>> don't these additions mean the sub-structures then won't be
>>>>>>> represented in the generated doc, rendering it (partly) useless?
>>>>>>=20
>>>>>> Are you suggesting to remove the structure from docs?
>>>>>=20
>>>>> Just yet I'm not suggesting anything here - I was merely guessing at
>>>>> the effect of "@cond" and the associated "skip ..." to mean that this
>>>>> construct makes doxygen skip the enclosed section. If that's not the
>>>>> effect, then maybe the comment wants rewording? (And then - what does
>>>>> @cond mean?)
>>>>=20
>>>> Yes you were right, in the documentation the structure grant_entry_v2 =
won=E2=80=99t display the
>>>> anonymous union.
>>>=20
>>> In which case I'm now completely unclear about your prior question.
>>=20
>> We have to choose just if the struct is useful even if it=E2=80=99s part=
ially documented or if
>> it=E2=80=99s better to hide it completely from the docs since it can=E2=
=80=99t be fully documented.
>=20
> I've never suggested to hide it completely (aiui doing so would
> mean widening the scope of the @cond, i.e. there would still be
> extra clutter). Instead I was trying to suggest to make sure the
> struct gets fully documented despite the absence of struct tags.

In the v3 I preprocess the header to give a name to the anonymous struct so=
 that it appears in the
docs without touching the header.

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 16:21:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 16:21:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117768.223644 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb3zS-0004xE-4P; Mon, 26 Apr 2021 16:21:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117768.223644; Mon, 26 Apr 2021 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 1lb3zS-0004x7-1N; Mon, 26 Apr 2021 16:21:42 +0000
Received: by outflank-mailman (input) for mailman id 117768;
 Mon, 26 Apr 2021 16:21:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TQk4=JX=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lb3zP-0004x2-UK
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 16:21:39 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 4a6c3450-1979-4d21-aae2-ed2e87b604ff;
 Mon, 26 Apr 2021 16:21:38 +0000 (UTC)
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 709661FB;
 Mon, 26 Apr 2021 09:21:37 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id AF2543F73B;
 Mon, 26 Apr 2021 09:21: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: 4a6c3450-1979-4d21-aae2-ed2e87b604ff
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>,
	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>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: [PATCH v3 0/3] xen/pci: Make PCI passthrough code non-x86 specific
Date: Mon, 26 Apr 2021 17:21:24 +0100
Message-Id: <cover.1619453100.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1

This patch series is preparatory work to implement the PCI passthrough support
for the ARM architecture.

Rahul Singh (3):
  xen/iommu: Move iommu_update_ire_from_msi(..) to xen/iommu.h
  xen/pci: Refactor PCI MSI intercept related code
  xen/pci: Refactor MSI code that implements MSI functionality within
    XEN

 xen/arch/x86/Kconfig                    |  1 +
 xen/drivers/passthrough/Makefile        |  1 +
 xen/drivers/passthrough/msi-intercept.c | 93 +++++++++++++++++++++++++
 xen/drivers/passthrough/pci.c           | 57 +++------------
 xen/drivers/pci/Kconfig                 |  4 ++
 xen/drivers/vpci/Makefile               |  3 +-
 xen/drivers/vpci/header.c               | 19 ++---
 xen/drivers/vpci/msix.c                 | 25 +++++++
 xen/drivers/vpci/vpci.c                 |  3 +-
 xen/include/xen/iommu.h                 | 13 +++-
 xen/include/xen/msi-intercept.h         | 55 +++++++++++++++
 xen/include/xen/pci.h                   | 11 +--
 xen/include/xen/vpci.h                  | 23 ++++++
 xen/xsm/flask/hooks.c                   |  8 +--
 14 files changed, 241 insertions(+), 75 deletions(-)
 create mode 100644 xen/drivers/passthrough/msi-intercept.c
 create mode 100644 xen/include/xen/msi-intercept.h

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 16:22:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 16:22:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117772.223656 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb401-000524-EB; Mon, 26 Apr 2021 16:22:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117772.223656; Mon, 26 Apr 2021 16:22: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 1lb401-00051x-An; Mon, 26 Apr 2021 16:22:17 +0000
Received: by outflank-mailman (input) for mailman id 117772;
 Mon, 26 Apr 2021 16:22:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TQk4=JX=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lb400-00051q-Sx
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 16:22:16 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id ee8e2cf1-8407-410e-8596-3d6d76011d4b;
 Mon, 26 Apr 2021 16:22:15 +0000 (UTC)
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 652021FB;
 Mon, 26 Apr 2021 09:22:15 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 97D3E3F73B;
 Mon, 26 Apr 2021 09:22: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: ee8e2cf1-8407-410e-8596-3d6d76011d4b
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v3 1/3] xen/iommu: Move iommu_update_ire_from_msi(..) to xen/iommu.h
Date: Mon, 26 Apr 2021 17:21:25 +0100
Message-Id: <30f0c8057969f9777f11352b9b7ca1e4a7a730e8.1619453100.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619453100.git.rahul.singh@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>
In-Reply-To: <cover.1619453100.git.rahul.singh@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>

Move iommu_update_ire_from_msi(..) from passthrough/pci.c to
xen/iommu.h and wrap it under CONFIG_X86 as it is referenced in x86
code only to avoid compilation error for other architecture when
HAS_PCI is enabled.

No functional change intended.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
Changes since v2:
- This patch is added in this version to make sure iommu related code is in
  separate patch.
---
 xen/drivers/passthrough/pci.c |  7 -------
 xen/include/xen/iommu.h       | 13 ++++++++++---
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 705137f8be..199ce08612 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -1303,13 +1303,6 @@ static int __init setup_dump_pcidevs(void)
 }
 __initcall(setup_dump_pcidevs);
 
-int iommu_update_ire_from_msi(
-    struct msi_desc *msi_desc, struct msi_msg *msg)
-{
-    return iommu_intremap
-           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
-}
-
 static int iommu_add_device(struct pci_dev *pdev)
 {
     const struct domain_iommu *hd;
diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index 4f0e5ac622..460755df29 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -187,8 +187,6 @@ void free_hvm_irq_dpci(struct hvm_irq_dpci *dpci);
 struct msi_desc;
 struct msi_msg;
 
-int iommu_update_ire_from_msi(struct msi_desc *msi_desc, struct msi_msg *msg);
-
 #define PT_IRQ_TIME_OUT MILLISECS(8)
 #endif /* HAS_PCI */
 
@@ -238,7 +236,6 @@ struct iommu_ops {
                            u8 devfn, device_t *dev);
 #ifdef CONFIG_HAS_PCI
     int (*get_device_group_id)(u16 seg, u8 bus, u8 devfn);
-    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
 #endif /* HAS_PCI */
 
     void (*teardown)(struct domain *d);
@@ -267,6 +264,7 @@ struct iommu_ops {
     int (*adjust_irq_affinities)(void);
     void (*sync_cache)(const void *addr, unsigned int size);
     void (*clear_root_pgtable)(struct domain *d);
+    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
 #endif /* CONFIG_X86 */
 
     int __must_check (*suspend)(void);
@@ -374,6 +372,15 @@ extern struct page_list_head iommu_pt_cleanup_list;
 
 bool arch_iommu_use_permitted(const struct domain *d);
 
+#ifdef CONFIG_X86
+static inline int iommu_update_ire_from_msi(
+    struct msi_desc *msi_desc, struct msi_msg *msg)
+{
+    return iommu_intremap
+           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
+}
+#endif
+
 #endif /* _IOMMU_H_ */
 
 /*
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 16:22:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 16:22:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117774.223668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb40M-00057j-MY; Mon, 26 Apr 2021 16:22:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117774.223668; Mon, 26 Apr 2021 16: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 1lb40M-00057b-Ja; Mon, 26 Apr 2021 16:22:38 +0000
Received: by outflank-mailman (input) for mailman id 117774;
 Mon, 26 Apr 2021 16:22:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TQk4=JX=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lb40L-00057T-El
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 16:22:37 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id e5fc57fb-0d70-4b38-88ec-a8275d962832;
 Mon, 26 Apr 2021 16:22:35 +0000 (UTC)
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 3F4061FB;
 Mon, 26 Apr 2021 09:22:35 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 667A13F73B;
 Mon, 26 Apr 2021 09:22: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: e5fc57fb-0d70-4b38-88ec-a8275d962832
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.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>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Paul Durrant <paul@xen.org>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
Date: Mon, 26 Apr 2021 17:21:26 +0100
Message-Id: <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619453100.git.rahul.singh@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>
In-Reply-To: <cover.1619453100.git.rahul.singh@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>

MSI intercept related code is not useful for ARM when MSI interrupts are
injected via GICv3 ITS.

Therefore introducing the new flag CONFIG_PCI_MSI_INTERCEPT to gate the
MSI code for ARM in common code and also implemented the stub version
for the unused code for ARM to avoid compilation error when HAS_PCI
is enabled for ARM.

No functional change intended.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
Changes since v1:
 - Rename CONFIG_HAS_PCI_MSI to CONFIG_PCI_MSI_INTERCEPT
 - Implement stub version of the unused function for ARM.
 - Move unneeded function to x86 file.

Changes since v2:
 - Rename function name as per the comments.
 - Created a separate non-arch specific file msi-intercept.c.
---
 xen/arch/x86/Kconfig                    |  1 +
 xen/drivers/passthrough/Makefile        |  1 +
 xen/drivers/passthrough/msi-intercept.c | 52 +++++++++++++++++++++++++
 xen/drivers/passthrough/pci.c           | 16 +++-----
 xen/drivers/pci/Kconfig                 |  4 ++
 xen/drivers/vpci/Makefile               |  3 +-
 xen/drivers/vpci/header.c               | 19 ++-------
 xen/drivers/vpci/msix.c                 | 25 ++++++++++++
 xen/drivers/vpci/vpci.c                 |  3 +-
 xen/include/xen/msi-intercept.h         | 48 +++++++++++++++++++++++
 xen/include/xen/vpci.h                  | 23 +++++++++++
 xen/xsm/flask/hooks.c                   |  8 ++--
 12 files changed, 170 insertions(+), 33 deletions(-)
 create mode 100644 xen/drivers/passthrough/msi-intercept.c
 create mode 100644 xen/include/xen/msi-intercept.h

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 32b9f23a20..4d72798f00 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -20,6 +20,7 @@ config X86
 	select HAS_NS16550
 	select HAS_PASSTHROUGH
 	select HAS_PCI
+	select PCI_MSI_INTERCEPT
 	select HAS_PDX
 	select HAS_SCHED_GRANULARITY
 	select HAS_UBSAN
diff --git a/xen/drivers/passthrough/Makefile b/xen/drivers/passthrough/Makefile
index 445690e3e5..3c707706b0 100644
--- a/xen/drivers/passthrough/Makefile
+++ b/xen/drivers/passthrough/Makefile
@@ -7,3 +7,4 @@ obj-y += iommu.o
 obj-$(CONFIG_HAS_PCI) += pci.o
 obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o
 obj-$(CONFIG_HAS_PCI) += ats.o
+obj-$(CONFIG_PCI_MSI_INTERCEPT) += msi-intercept.o
diff --git a/xen/drivers/passthrough/msi-intercept.c b/xen/drivers/passthrough/msi-intercept.c
new file mode 100644
index 0000000000..1edae6d4e8
--- /dev/null
+++ b/xen/drivers/passthrough/msi-intercept.c
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2021 Arm Ltd.
+ *
+ * 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/init.h>
+#include <xen/pci.h>
+#include <asm/msi.h>
+#include <asm/hvm/io.h>
+
+int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
+{
+    int rc;
+
+    if ( pdev->msix )
+    {
+        rc = pci_reset_msix_state(pdev);
+        if ( rc )
+            return rc;
+        msixtbl_init(d);
+    }
+
+    return 0;
+}
+
+void pdev_dump_msi(const struct pci_dev *pdev)
+{
+    const struct msi_desc *msi;
+
+    list_for_each_entry ( msi, &pdev->msi_list, list )
+        printk("%d ", msi->irq);
+}
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 199ce08612..298be21b5b 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -32,8 +32,8 @@
 #include <xen/softirq.h>
 #include <xen/tasklet.h>
 #include <xen/vpci.h>
+#include <xen/msi-intercept.h>
 #include <xsm/xsm.h>
-#include <asm/msi.h>
 #include "ats.h"
 
 struct pci_seg {
@@ -1271,7 +1271,6 @@ bool_t pcie_aer_get_firmware_first(const struct pci_dev *pdev)
 static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
 {
     struct pci_dev *pdev;
-    struct msi_desc *msi;
 
     printk("==== segment %04x ====\n", pseg->nr);
 
@@ -1280,8 +1279,7 @@ static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
         printk("%pp - %pd - node %-3d - MSIs < ",
                &pdev->sbdf, pdev->domain,
                (pdev->node != NUMA_NO_NODE) ? pdev->node : -1);
-        list_for_each_entry ( msi, &pdev->msi_list, list )
-               printk("%d ", msi->irq);
+        pdev_dump_msi(pdev);
         printk(">\n");
     }
 
@@ -1422,13 +1420,9 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
     ASSERT(pdev && (pdev->domain == hardware_domain ||
                     pdev->domain == dom_io));
 
-    if ( pdev->msix )
-    {
-        rc = pci_reset_msix_state(pdev);
-        if ( rc )
-            goto done;
-        msixtbl_init(d);
-    }
+    rc = pdev_msix_assign(d, pdev);
+    if ( rc )
+        goto done;
 
     pdev->fault.count = 0;
 
diff --git a/xen/drivers/pci/Kconfig b/xen/drivers/pci/Kconfig
index 7da03fa13b..e6bf0b7441 100644
--- a/xen/drivers/pci/Kconfig
+++ b/xen/drivers/pci/Kconfig
@@ -1,3 +1,7 @@
 
 config HAS_PCI
 	bool
+
+config PCI_MSI_INTERCEPT
+	bool
+	depends on HAS_PCI
diff --git a/xen/drivers/vpci/Makefile b/xen/drivers/vpci/Makefile
index 55d1bdfda0..f91fa71a40 100644
--- a/xen/drivers/vpci/Makefile
+++ b/xen/drivers/vpci/Makefile
@@ -1 +1,2 @@
-obj-y += vpci.o header.o msi.o msix.o
+obj-y += vpci.o header.o
+obj-$(CONFIG_PCI_MSI_INTERCEPT) += msi.o msix.o
diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index ba9a036202..ec735c5b4b 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -206,7 +206,6 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
     struct vpci_header *header = &pdev->vpci->header;
     struct rangeset *mem = rangeset_new(NULL, NULL, 0);
     struct pci_dev *tmp, *dev = NULL;
-    const struct vpci_msix *msix = pdev->vpci->msix;
     unsigned int i;
     int rc;
 
@@ -244,21 +243,11 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
     }
 
     /* Remove any MSIX regions if present. */
-    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
+    rc = vpci_remove_msix_regions(pdev, mem);
+    if ( rc )
     {
-        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
-        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
-                                     vmsix_table_size(pdev->vpci, i) - 1);
-
-        rc = rangeset_remove_range(mem, start, end);
-        if ( rc )
-        {
-            printk(XENLOG_G_WARNING
-                   "Failed to remove MSIX table [%lx, %lx]: %d\n",
-                   start, end, rc);
-            rangeset_destroy(mem);
-            return rc;
-        }
+        rangeset_destroy(mem);
+        return rc;
     }
 
     /*
diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
index 846f1b8d70..3efbaebc92 100644
--- a/xen/drivers/vpci/msix.c
+++ b/xen/drivers/vpci/msix.c
@@ -428,6 +428,31 @@ int vpci_make_msix_hole(const struct pci_dev *pdev)
     return 0;
 }
 
+int vpci_remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem)
+{
+    const struct vpci_msix *msix = pdev->vpci->msix;
+    unsigned int i;
+    int rc;
+
+    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
+    {
+        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
+        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
+                vmsix_table_size(pdev->vpci, i) - 1);
+
+        rc = rangeset_remove_range(mem, start, end);
+        if ( rc )
+        {
+            printk(XENLOG_G_WARNING
+                    "Failed to remove MSIX table [%lx, %lx]: %d\n",
+                    start, end, rc);
+            return rc;
+        }
+    }
+
+    return 0;
+}
+
 static int init_msix(struct pci_dev *pdev)
 {
     struct domain *d = pdev->domain;
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index cbd1bac7fc..85084dd924 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -48,8 +48,7 @@ void vpci_remove_device(struct pci_dev *pdev)
         xfree(r);
     }
     spin_unlock(&pdev->vpci->lock);
-    xfree(pdev->vpci->msix);
-    xfree(pdev->vpci->msi);
+    vpci_msi_free(pdev->vpci);
     xfree(pdev->vpci);
     pdev->vpci = NULL;
 }
diff --git a/xen/include/xen/msi-intercept.h b/xen/include/xen/msi-intercept.h
new file mode 100644
index 0000000000..77c105e286
--- /dev/null
+++ b/xen/include/xen/msi-intercept.h
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2021 Arm Ltd.
+ *
+ * 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/>.
+ */
+
+#ifndef __XEN_MSI_INTERCEPT_H_
+#define __XEN_MSI_INTERCEPT_H_
+
+#ifdef CONFIG_PCI_MSI_INTERCEPT
+
+#include <asm/msi.h>
+
+int pdev_msix_assign(struct domain *d, struct pci_dev *pdev);
+void pdev_dump_msi(const struct pci_dev *pdev);
+
+#else /* !CONFIG_PCI_MSI_INTERCEPT */
+
+static inline int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
+{
+    return 0;
+}
+
+static inline void pdev_dump_msi(const struct pci_dev *pdev) {}
+static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
+
+#endif /* CONFIG_PCI_MSI_INTERCEPT */
+
+#endif /* __XEN_MSI_INTERCEPT_H */
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 9f5b5d52e1..2cd3647305 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -91,6 +91,7 @@ struct vpci {
         /* FIXME: currently there's no support for SR-IOV. */
     } header;
 
+#ifdef CONFIG_PCI_MSI_INTERCEPT
     /* MSI data. */
     struct vpci_msi {
       /* Address. */
@@ -136,6 +137,7 @@ struct vpci {
             struct vpci_arch_msix_entry arch;
         } entries[];
     } *msix;
+#endif /* CONFIG_PCI_MSI_INTERCEPT */
 #endif
 };
 
@@ -148,6 +150,7 @@ struct vpci_vcpu {
 };
 
 #ifdef __XEN__
+#ifdef CONFIG_PCI_MSI_INTERCEPT
 void vpci_dump_msi(void);
 
 /* Make sure there's a hole in the p2m for the MSIX mmio areas. */
@@ -174,6 +177,7 @@ int __must_check vpci_msix_arch_disable_entry(struct vpci_msix_entry *entry,
                                               const struct pci_dev *pdev);
 void vpci_msix_arch_init_entry(struct vpci_msix_entry *entry);
 int vpci_msix_arch_print(const struct vpci_msix *msix);
+int vpci_remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem);
 
 /*
  * Helper functions to fetch MSIX related data. They are used by both the
@@ -208,6 +212,25 @@ static inline unsigned int vmsix_entry_nr(const struct vpci_msix *msix,
 {
     return entry - msix->entries;
 }
+
+static inline void vpci_msi_free(struct vpci *vpci)
+{
+    XFREE(vpci->msix);
+    XFREE(vpci->msi);
+}
+#else /* !CONFIG_PCI_MSI_INTERCEPT */
+static inline int vpci_make_msix_hole(const struct pci_dev *pdev)
+{
+    return 0;
+}
+
+static inline int vpci_remove_msix_regions(const struct pci_dev *pdev,
+                                      struct rangeset *mem)
+{
+    return 0;
+}
+static inline void vpci_msi_free(struct vpci *vpci) {}
+#endif /* CONFIG_PCI_MSI_INTERCEPT */
 #endif /* __XEN__ */
 
 #else /* !CONFIG_HAS_VPCI */
diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c
index 5a24d01f04..d87f56fc95 100644
--- a/xen/xsm/flask/hooks.c
+++ b/xen/xsm/flask/hooks.c
@@ -21,7 +21,7 @@
 #include <xen/guest_access.h>
 #include <xen/xenoprof.h>
 #include <xen/iommu.h>
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_PCI_MSI_INTERCEPT
 #include <asm/msi.h>
 #endif
 #include <public/xen.h>
@@ -114,7 +114,7 @@ static int get_irq_sid(int irq, u32 *sid, struct avc_audit_data *ad)
         }
         return security_irq_sid(irq, sid);
     }
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_PCI_MSI_INTERCEPT
     {
         struct irq_desc *desc = irq_to_desc(irq);
         if ( desc->msi_desc && desc->msi_desc->dev ) {
@@ -874,7 +874,7 @@ static int flask_map_domain_pirq (struct domain *d)
 static int flask_map_domain_msi (struct domain *d, int irq, const void *data,
                                  u32 *sid, struct avc_audit_data *ad)
 {
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_PCI_MSI_INTERCEPT
     const struct msi_info *msi = data;
     u32 machine_bdf = (msi->seg << 16) | (msi->bus << 8) | msi->devfn;
 
@@ -940,7 +940,7 @@ static int flask_unmap_domain_pirq (struct domain *d)
 static int flask_unmap_domain_msi (struct domain *d, int irq, const void *data,
                                    u32 *sid, struct avc_audit_data *ad)
 {
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_PCI_MSI_INTERCEPT
     const struct pci_dev *pdev = data;
     u32 machine_bdf = (pdev->seg << 16) | (pdev->bus << 8) | pdev->devfn;
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 16:23:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 16:23:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117783.223680 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb40w-0005G7-6E; Mon, 26 Apr 2021 16:23:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117783.223680; Mon, 26 Apr 2021 16: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 1lb40w-0005Fy-2b; Mon, 26 Apr 2021 16:23:14 +0000
Received: by outflank-mailman (input) for mailman id 117783;
 Mon, 26 Apr 2021 16:23: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 1lb40u-0005Fn-V3; Mon, 26 Apr 2021 16:23: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 1lb40u-0004SY-PU; Mon, 26 Apr 2021 16:23: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 1lb40u-0007WF-Er; Mon, 26 Apr 2021 16:23:12 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lb40u-00049V-EK; Mon, 26 Apr 2021 16:23:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=5DZLRELv8vWrGayu18fp2eVKs53yTwtFQ9NE7kAALQQ=; b=gMgsT2I+XVZv5YRK3Ec2MB4C84
	sty5tZOquGm7v5nbO7TyyJSgPhwoEtP7n52K7WtRrfvWCmvWPdXq3CKafgeC7kuf3iml4nht/Ay8d
	XBNU5bS5ssypEttvJcjDRjJNFHzSKDWeKs23q7bODFyMcwSrjS1xS873NLb3rpA3v3ZQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161457-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161457: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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: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-amd64-amd64-libvirt-vhd: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: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-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2: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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=9f4ad9e425a1d3b6a34617b8ea226d56a119a717
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 16:23:12 +0000

flight 161457 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161457/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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          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-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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

version targeted for testing:
 linux                9f4ad9e425a1d3b6a34617b8ea226d56a119a717
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  268 days
Failing since        152366  2020-08-01 20:49:34 Z  267 days  449 attempts
Testing same since   161457  2021-04-26 00:42:12 Z    0 days    1 attempts

------------------------------------------------------------
5359 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1330641 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 16:23:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 16:23:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117785.223695 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb410-0005J1-Fy; Mon, 26 Apr 2021 16:23:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117785.223695; Mon, 26 Apr 2021 16: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 1lb410-0005Is-Cf; Mon, 26 Apr 2021 16:23:18 +0000
Received: by outflank-mailman (input) for mailman id 117785;
 Mon, 26 Apr 2021 16:23:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TQk4=JX=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lb40y-0005IC-9f
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 16:23:16 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id a0539e98-d2f5-4c07-989d-58d5af27a81c;
 Mon, 26 Apr 2021 16:23:14 +0000 (UTC)
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 CC9B11FB;
 Mon, 26 Apr 2021 09:23:13 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 609AE3F73B;
 Mon, 26 Apr 2021 09: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: a0539e98-d2f5-4c07-989d-58d5af27a81c
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v3 3/3] xen/pci: Refactor MSI code that implements MSI functionality within XEN
Date: Mon, 26 Apr 2021 17:21:27 +0100
Message-Id: <7b6651f10922571a10685dc7652fbce03b6b6e51.1619453100.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619453100.git.rahul.singh@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>
In-Reply-To: <cover.1619453100.git.rahul.singh@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>

MSI code that implements MSI functionality to support MSI within XEN is
not usable on ARM. Move the code under CONFIG_PCI_MSI_INTERCEPT flag to
gate the code for ARM.

Currently, we have no idea how MSI functionality will be supported for
other architecture therefore we have decided to move the code under
CONFIG_PCI_MSI_INTERCEPT. We know this is not the right flag to gate the
code but to avoid an extra flag we decided to use this.

No functional change intended.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
Changes since v2:
 - This patch is added in this version.
---
 xen/drivers/passthrough/msi-intercept.c | 41 +++++++++++++++++++++++++
 xen/drivers/passthrough/pci.c           | 34 ++++----------------
 xen/include/xen/msi-intercept.h         |  7 +++++
 xen/include/xen/pci.h                   | 11 ++++---
 4 files changed, 61 insertions(+), 32 deletions(-)

diff --git a/xen/drivers/passthrough/msi-intercept.c b/xen/drivers/passthrough/msi-intercept.c
index 1edae6d4e8..33ab71514d 100644
--- a/xen/drivers/passthrough/msi-intercept.c
+++ b/xen/drivers/passthrough/msi-intercept.c
@@ -19,6 +19,47 @@
 #include <asm/msi.h>
 #include <asm/hvm/io.h>
 
+int pdev_msi_init(struct pci_dev *pdev)
+{
+    unsigned int pos;
+
+    INIT_LIST_HEAD(&pdev->msi_list);
+
+    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
+                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSI);
+    if ( pos )
+    {
+        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
+
+        pdev->msi_maxvec = multi_msi_capable(ctrl);
+    }
+
+    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
+                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSIX);
+    if ( pos )
+    {
+        struct arch_msix *msix = xzalloc(struct arch_msix);
+        uint16_t ctrl;
+
+        if ( !msix )
+            return -ENOMEM;
+
+        spin_lock_init(&msix->table_lock);
+
+        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
+        msix->nr_entries = msix_table_size(ctrl);
+
+        pdev->msix = msix;
+    }
+
+    return 0;
+}
+
+void pdev_msi_deinit(struct pci_dev *pdev)
+{
+    XFREE(pdev->msix);
+}
+
 int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
 {
     int rc;
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 298be21b5b..b1e3c711ad 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -314,6 +314,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
 {
     struct pci_dev *pdev;
     unsigned int pos;
+    int rc;
 
     list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
         if ( pdev->bus == bus && pdev->devfn == devfn )
@@ -327,35 +328,12 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
     *((u8*) &pdev->bus) = bus;
     *((u8*) &pdev->devfn) = devfn;
     pdev->domain = NULL;
-    INIT_LIST_HEAD(&pdev->msi_list);
-
-    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
-                              PCI_CAP_ID_MSI);
-    if ( pos )
-    {
-        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
 
-        pdev->msi_maxvec = multi_msi_capable(ctrl);
-    }
-
-    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
-                              PCI_CAP_ID_MSIX);
-    if ( pos )
+    rc = pdev_msi_init(pdev);
+    if ( rc )
     {
-        struct arch_msix *msix = xzalloc(struct arch_msix);
-        uint16_t ctrl;
-
-        if ( !msix )
-        {
-            xfree(pdev);
-            return NULL;
-        }
-        spin_lock_init(&msix->table_lock);
-
-        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
-        msix->nr_entries = msix_table_size(ctrl);
-
-        pdev->msix = msix;
+        XFREE(pdev);
+        return NULL;
     }
 
     list_add(&pdev->alldevs_list, &pseg->alldevs_list);
@@ -449,7 +427,7 @@ static void free_pdev(struct pci_seg *pseg, struct pci_dev *pdev)
     }
 
     list_del(&pdev->alldevs_list);
-    xfree(pdev->msix);
+    pdev_msi_deinit(pdev);
     xfree(pdev);
 }
 
diff --git a/xen/include/xen/msi-intercept.h b/xen/include/xen/msi-intercept.h
index 77c105e286..38ff7a09e1 100644
--- a/xen/include/xen/msi-intercept.h
+++ b/xen/include/xen/msi-intercept.h
@@ -21,16 +21,23 @@
 
 #include <asm/msi.h>
 
+int pdev_msi_init(struct pci_dev *pdev);
+void pdev_msi_deinit(struct pci_dev *pdev);
 int pdev_msix_assign(struct domain *d, struct pci_dev *pdev);
 void pdev_dump_msi(const struct pci_dev *pdev);
 
 #else /* !CONFIG_PCI_MSI_INTERCEPT */
+static inline int pdev_msi_init(struct pci_dev *pdev)
+{
+    return 0;
+}
 
 static inline int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
 {
     return 0;
 }
 
+static inline void pdev_msi_deinit(struct pci_dev *pdev) {}
 static inline void pdev_dump_msi(const struct pci_dev *pdev) {}
 static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
 
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index 8e3d4d9454..f5b57270be 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -79,10 +79,6 @@ struct pci_dev {
     struct list_head alldevs_list;
     struct list_head domain_list;
 
-    struct list_head msi_list;
-
-    struct arch_msix *msix;
-
     struct domain *domain;
 
     const union {
@@ -94,7 +90,14 @@ struct pci_dev {
         pci_sbdf_t sbdf;
     };
 
+#ifdef CONFIG_PCI_MSI_INTERCEPT
+    struct list_head msi_list;
+
+    struct arch_msix *msix;
+
     uint8_t msi_maxvec;
+#endif
+
     uint8_t phantom_stride;
 
     nodeid_t node; /* NUMA node */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 16:37:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 16:37:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117808.223706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb4Ex-0006Xa-Pu; Mon, 26 Apr 2021 16:37:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117808.223706; Mon, 26 Apr 2021 16: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 1lb4Ex-0006XT-Mo; Mon, 26 Apr 2021 16:37:43 +0000
Received: by outflank-mailman (input) for mailman id 117808;
 Mon, 26 Apr 2021 16:37:42 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MWrc=JX=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lb4Ew-0006XO-Oq
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 16:37:42 +0000
Received: from mail-pg1-x542.google.com (unknown [2607:f8b0:4864:20::542])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 73d06650-9487-44c1-b7b1-e35a3f33f142;
 Mon, 26 Apr 2021 16:37:41 +0000 (UTC)
Received: by mail-pg1-x542.google.com with SMTP id t22so5166323pgu.0
 for <xen-devel@lists.xenproject.org>; Mon, 26 Apr 2021 09:37:41 -0700 (PDT)
Received: from mail-pg1-f171.google.com (mail-pg1-f171.google.com.
 [209.85.215.171])
 by smtp.gmail.com with ESMTPSA id m11sm15125710pjs.34.2021.04.26.09.37.40
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 26 Apr 2021 09:37:40 -0700 (PDT)
Received: by mail-pg1-f171.google.com with SMTP id d10so2037861pgf.12
 for <xen-devel@lists.xenproject.org>; Mon, 26 Apr 2021 09:37: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: 73d06650-9487-44c1-b7b1-e35a3f33f142
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=w+xLIOm1aUR+ojar7SxT7aE31iJaS6lTTL9NFfLTdqs=;
        b=ctSitjX8LR7O2ZMk4lsR8Irz6egx7wTYNYpP5lwZVohPuAIjgk70gq0rLgnAswDS5J
         OwrGL0fnjKjd/25GMaUPOEt1BY6NfF//O6cQPXnTolYLDRghV+Gs0xVvNzh51W3LGUxd
         u8ZH2pOBpUkLUeomCja6RAPBZaNGl3ag01nF0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=w+xLIOm1aUR+ojar7SxT7aE31iJaS6lTTL9NFfLTdqs=;
        b=HdAKrXbYjlEctQhOFdF3DTMuDbTfLgcUpRYRKMlvB7AN47nB0U5vVTRzpwqoyJ9flQ
         zIGPaRJEyLl4KU3pNIj49GL97YwAca3YhDnOcpyhwkJHZAA/AOUW5vsHI88g5y9mzAKD
         ZtbJN3VV9HK0Yi79KNs6b86hc4ElMjpqey8IY01Gvm2OGavGa30lLJYLnbwSLBnEXQ8j
         6xnu8yoxfXnPLrK63D8c1/oX+GCg+gC7mI1dJZe5oIQxyKl4xF7w0gCqMGS6SCQtFl4+
         TSNgLcukkeoYjYKmU1aJ+PTV76z+McCX/w8OPSyEh9bpW8ou4tfpFwM6h4lxDggG/2bl
         jTzw==
X-Gm-Message-State: AOAM530vI3wgmNWtv3YS5gWdU60+swNw33Ttu3Z47h4XW8RwXq5oS2Lu
	Y74ObPZ5WNi+7SP1/gvVMHeFU76aK3Nz+Q==
X-Google-Smtp-Source: ABdhPJwZTUJEiFbRvSi4tFMIQTz6mGt21dwc4Md7Gg3mCkvn0KF1QRxEwiFRVjICE/0FOuAdkcv6Ug==
X-Received: by 2002:a65:618c:: with SMTP id c12mr17832885pgv.296.1619455060939;
        Mon, 26 Apr 2021 09:37:40 -0700 (PDT)
X-Received: by 2002:a5d:8c82:: with SMTP id g2mr15143365ion.34.1619455049397;
 Mon, 26 Apr 2021 09:37:29 -0700 (PDT)
MIME-Version: 1.0
References: <20210422081508.3942748-1-tientzu@chromium.org>
 <20210422081508.3942748-6-tientzu@chromium.org> <c9abca62-328d-d0d6-a8a6-a67475171f92@arm.com>
In-Reply-To: <c9abca62-328d-d0d6-a8a6-a67475171f92@arm.com>
From: Claire Chang <tientzu@chromium.org>
Date: Tue, 27 Apr 2021 00:37:18 +0800
X-Gmail-Original-Message-ID: <CALiNf2_tffc65PhLxCr3-+gmVYKGO2HjYiJVkBNa5U5HYdi9pg@mail.gmail.com>
Message-ID: <CALiNf2_tffc65PhLxCr3-+gmVYKGO2HjYiJVkBNa5U5HYdi9pg@mail.gmail.com>
Subject: Re: [PATCH v5 05/16] swiotlb: Add restricted DMA pool initialization
To: Steven Price <steven.price@arm.com>
Cc: Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>, 
	Frank Rowand <frowand.list@gmail.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, 
	boris.ostrovsky@oracle.com, jgross@suse.com, Christoph Hellwig <hch@lst.de>, 
	Marek Szyprowski <m.szyprowski@samsung.com>, benh@kernel.crashing.org, paulus@samba.org, 
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>, sstabellini@kernel.org, 
	Robin Murphy <robin.murphy@arm.com>, grant.likely@arm.com, xypron.glpk@gmx.de, 
	Thierry Reding <treding@nvidia.com>, mingo@kernel.org, bauerman@linux.ibm.com, 
	peterz@infradead.org, Greg KH <gregkh@linuxfoundation.org>, 
	Saravana Kannan <saravanak@google.com>, "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>, 
	heikki.krogerus@linux.intel.com, 
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>, Randy Dunlap <rdunlap@infradead.org>, 
	Dan Williams <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>, 
	linux-devicetree <devicetree@vger.kernel.org>, lkml <linux-kernel@vger.kernel.org>, 
	linuxppc-dev@lists.ozlabs.org, xen-devel@lists.xenproject.org, 
	Nicolas Boichat <drinkcat@chromium.org>, Jim Quinlan <james.quinlan@broadcom.com>, 
	Tomasz Figa <tfiga@chromium.org>, bskeggs@redhat.com, 
	Bjorn Helgaas <bhelgaas@google.com>, chris@chris-wilson.co.uk, 
	Daniel Vetter <daniel@ffwll.ch>, airlied@linux.ie, dri-devel@lists.freedesktop.org, 
	intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com, 
	Jianxiong Gao <jxgao@google.com>, joonas.lahtinen@linux.intel.com, 
	linux-pci@vger.kernel.org, maarten.lankhorst@linux.intel.com, 
	matthew.auld@intel.com, nouveau@lists.freedesktop.org, rodrigo.vivi@intel.com, 
	thomas.hellstrom@linux.intel.com
Content-Type: text/plain; charset="UTF-8"

On Fri, Apr 23, 2021 at 7:34 PM Steven Price <steven.price@arm.com> wrote:
>
> On 22/04/2021 09:14, Claire Chang wrote:
> > Add the initialization function to create restricted DMA pools from
> > matching reserved-memory nodes.
> >
> > Signed-off-by: Claire Chang <tientzu@chromium.org>
> > ---
> >   include/linux/device.h  |  4 +++
> >   include/linux/swiotlb.h |  3 +-
> >   kernel/dma/swiotlb.c    | 80 +++++++++++++++++++++++++++++++++++++++++
> >   3 files changed, 86 insertions(+), 1 deletion(-)
> >
> > diff --git a/include/linux/device.h b/include/linux/device.h
> > index 38a2071cf776..4987608ea4ff 100644
> > --- a/include/linux/device.h
> > +++ b/include/linux/device.h
> > @@ -416,6 +416,7 @@ struct dev_links_info {
> >    * @dma_pools:      Dma pools (if dma'ble device).
> >    * @dma_mem:        Internal for coherent mem override.
> >    * @cma_area:       Contiguous memory area for dma allocations
> > + * @dma_io_tlb_mem: Internal for swiotlb io_tlb_mem override.
> >    * @archdata:       For arch-specific additions.
> >    * @of_node:        Associated device tree node.
> >    * @fwnode: Associated device node supplied by platform firmware.
> > @@ -521,6 +522,9 @@ struct device {
> >   #ifdef CONFIG_DMA_CMA
> >       struct cma *cma_area;           /* contiguous memory area for dma
> >                                          allocations */
> > +#endif
> > +#ifdef CONFIG_DMA_RESTRICTED_POOL
> > +     struct io_tlb_mem *dma_io_tlb_mem;
> >   #endif
> >       /* arch specific additions */
> >       struct dev_archdata     archdata;
> > diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> > index 216854a5e513..03ad6e3b4056 100644
> > --- a/include/linux/swiotlb.h
> > +++ b/include/linux/swiotlb.h
> > @@ -72,7 +72,8 @@ extern enum swiotlb_force swiotlb_force;
> >    *          range check to see if the memory was in fact allocated by this
> >    *          API.
> >    * @nslabs: The number of IO TLB blocks (in groups of 64) between @start and
> > - *           @end. This is command line adjustable via setup_io_tlb_npages.
> > + *           @end. For default swiotlb, this is command line adjustable via
> > + *           setup_io_tlb_npages.
> >    * @used:   The number of used IO TLB block.
> >    * @list:   The free list describing the number of free entries available
> >    *          from each index.
> > diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> > index 57a9adb920bf..ffbb8724e06c 100644
> > --- a/kernel/dma/swiotlb.c
> > +++ b/kernel/dma/swiotlb.c
> > @@ -39,6 +39,13 @@
> >   #ifdef CONFIG_DEBUG_FS
> >   #include <linux/debugfs.h>
> >   #endif
> > +#ifdef CONFIG_DMA_RESTRICTED_POOL
> > +#include <linux/io.h>
> > +#include <linux/of.h>
> > +#include <linux/of_fdt.h>
> > +#include <linux/of_reserved_mem.h>
> > +#include <linux/slab.h>
> > +#endif
> >
> >   #include <asm/io.h>
> >   #include <asm/dma.h>
> > @@ -681,3 +688,76 @@ static int __init swiotlb_create_default_debugfs(void)
> >   late_initcall(swiotlb_create_default_debugfs);
> >
> >   #endif
> > +
> > +#ifdef CONFIG_DMA_RESTRICTED_POOL
> > +static int rmem_swiotlb_device_init(struct reserved_mem *rmem,
> > +                                 struct device *dev)
> > +{
> > +     struct io_tlb_mem *mem = rmem->priv;
> > +     unsigned long nslabs = rmem->size >> IO_TLB_SHIFT;
> > +
> > +     if (dev->dma_io_tlb_mem)
> > +             return 0;
> > +
> > +     /* Since multiple devices can share the same pool, the private data,
> > +      * io_tlb_mem struct, will be initialized by the first device attached
> > +      * to it.
> > +      */
> > +     if (!mem) {
> > +             mem = kzalloc(struct_size(mem, slots, nslabs), GFP_KERNEL);
> > +             if (!mem)
> > +                     return -ENOMEM;
> > +#ifdef CONFIG_ARM
> > +             if (!PageHighMem(pfn_to_page(PHYS_PFN(rmem->base)))) {
> > +                     kfree(mem);
> > +                     return -EINVAL;
> > +             }
> > +#endif /* CONFIG_ARM */
> > +             swiotlb_init_io_tlb_mem(mem, rmem->base, nslabs, false);
> > +
> > +             rmem->priv = mem;
> > +     }
> > +
> > +#ifdef CONFIG_DEBUG_FS
> > +     if (!io_tlb_default_mem->debugfs)
> > +             io_tlb_default_mem->debugfs =
> > +                     debugfs_create_dir("swiotlb", NULL);
>
> At this point it's possible for io_tlb_default_mem to be NULL, leading
> to a splat.

Thanks for pointing this out.

>
> But even then if it's not and we have the situation where debugfs==NULL
> then the debugfs_create_dir() here will cause a subsequent attempt in
> swiotlb_create_debugfs() to fail (directory already exists) leading to
> mem->debugfs being assigned an error value. I suspect the creation of
> the debugfs directory needs to be separated from io_tlb_default_mem
> being set.

debugfs creation should move into the if (!mem) {...} above to avoid
duplication.
I think having a separated struct dentry pointer for the default
debugfs should be enough?

if (!debugfs)
    debugfs = debugfs_create_dir("swiotlb", NULL);
swiotlb_create_debugfs(mem, rmem->name, debugfs);

>
> Other than that I gave this series a go with our prototype of Arm's
> Confidential Computer Architecture[1] - since the majority of the
> guest's memory is protected from the host the restricted DMA pool allows
> (only) a small area to be shared with the host.
>
> After fixing (well hacking round) the above it all seems to be working
> fine with virtio drivers.
>
> Thanks,
>
> Steve
>
> [1]
> https://www.arm.com/why-arm/architecture/security-features/arm-confidential-compute-architecture


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 16:38:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 16:38:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117812.223718 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb4FS-0006cS-2M; Mon, 26 Apr 2021 16:38:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117812.223718; Mon, 26 Apr 2021 16:38: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 1lb4FR-0006cK-Vd; Mon, 26 Apr 2021 16:38:13 +0000
Received: by outflank-mailman (input) for mailman id 117812;
 Mon, 26 Apr 2021 16:38:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MWrc=JX=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lb4FQ-0006c8-Oi
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 16:38:12 +0000
Received: from mail-pj1-x1035.google.com (unknown [2607:f8b0:4864:20::1035])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0cd4ae7c-88fe-4363-8a0a-01fcf29c9b9b;
 Mon, 26 Apr 2021 16:38:11 +0000 (UTC)
Received: by mail-pj1-x1035.google.com with SMTP id
 f11-20020a17090a638bb02901524d3a3d48so5521091pjj.3
 for <xen-devel@lists.xenproject.org>; Mon, 26 Apr 2021 09:38:11 -0700 (PDT)
Received: from mail-pf1-f176.google.com (mail-pf1-f176.google.com.
 [209.85.210.176])
 by smtp.gmail.com with ESMTPSA id q26sm224567pfg.146.2021.04.26.09.38.08
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 26 Apr 2021 09:38:08 -0700 (PDT)
Received: by mail-pf1-f176.google.com with SMTP id c3so20553592pfo.3
 for <xen-devel@lists.xenproject.org>; Mon, 26 Apr 2021 09:38: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: 0cd4ae7c-88fe-4363-8a0a-01fcf29c9b9b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=cFKXKq/sKurvSVgvNvGkxgOiMlOZ5bG92GQyZxG6/Ow=;
        b=hQyrvIvY0OkwlUkO65L/o3TMJboyrA/EOLuUe0Pq7KgqeFtR8O9LJWrjeU2EQISYlu
         bJHPBsPqEo2jNERM7Qly7inrbryADiFPyU5whSnn5mfATXbgH1UnC4GjWrov7E7itgl/
         y/vmAUUGiGEmxu0IFynSQLccMWdifgG50rRhw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=cFKXKq/sKurvSVgvNvGkxgOiMlOZ5bG92GQyZxG6/Ow=;
        b=KE7ycAex85qFYZUnP7WuRfJ3KrCl49If8yODagciK9CGu0Yg15YePK6irj7zXKRoNY
         76qlrrx2/AUwiDSVlIqxIlxtyFMnTgIQXsfG6dxejPuFMnCtGo3AHAP4NfD79FSufy9a
         2qn9SFVRLDuaTFNlTS4/zOe4ag0LBVjMv7zxYXZdUXsABmB3pLMZBeYB2NvSz9cEWPdT
         vV0Y2mhRi05kafJg7fCveLXurzsGs9JkXVYyAJQoGCk32qDW3iaFZvR8iEm5ltLV3oov
         DcIvJKaDcJA5ocq8Zc8eOwvManxb8cUHHWw48DA8u5yk53JQj3NEBTBcy3NY2S1YKGT6
         jLww==
X-Gm-Message-State: AOAM533uOkvrnK69g4TBxCQhxAzgUc0GnxBN6HTb1crrJ+3vy8OEnIpr
	2lzcOQJg9P3tLyBSCIuhwAFXviMVewLzhQ==
X-Google-Smtp-Source: ABdhPJy2tmpQDEHs6da1EkE2NEPQIbqbfCMXRrHbmcxgdnBYNqEm9wruWum5ezMjDUYCLlveodSf2g==
X-Received: by 2002:a17:90a:303:: with SMTP id 3mr24147321pje.36.1619455090084;
        Mon, 26 Apr 2021 09:38:10 -0700 (PDT)
X-Received: by 2002:a92:7307:: with SMTP id o7mr14655769ilc.5.1619455077553;
 Mon, 26 Apr 2021 09:37:57 -0700 (PDT)
MIME-Version: 1.0
References: <20210422081508.3942748-1-tientzu@chromium.org>
 <20210422081508.3942748-9-tientzu@chromium.org> <1f84aa4c-f966-0986-b5a4-eecbf3b454ec@arm.com>
In-Reply-To: <1f84aa4c-f966-0986-b5a4-eecbf3b454ec@arm.com>
From: Claire Chang <tientzu@chromium.org>
Date: Tue, 27 Apr 2021 00:37:46 +0800
X-Gmail-Original-Message-ID: <CALiNf29N3U5GZKNN90NzjSeQ0WG4dxyRzU97fJ-r9OuChzLWKA@mail.gmail.com>
Message-ID: <CALiNf29N3U5GZKNN90NzjSeQ0WG4dxyRzU97fJ-r9OuChzLWKA@mail.gmail.com>
Subject: Re: [PATCH v5 08/16] swiotlb: Update is_swiotlb_active to add a
 struct device argument
To: Robin Murphy <robin.murphy@arm.com>
Cc: Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>, 
	Frank Rowand <frowand.list@gmail.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, 
	boris.ostrovsky@oracle.com, jgross@suse.com, Christoph Hellwig <hch@lst.de>, 
	Marek Szyprowski <m.szyprowski@samsung.com>, benh@kernel.crashing.org, paulus@samba.org, 
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>, sstabellini@kernel.org, 
	grant.likely@arm.com, xypron.glpk@gmx.de, Thierry Reding <treding@nvidia.com>, 
	mingo@kernel.org, bauerman@linux.ibm.com, peterz@infradead.org, 
	Greg KH <gregkh@linuxfoundation.org>, Saravana Kannan <saravanak@google.com>, 
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>, heikki.krogerus@linux.intel.com, 
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>, Randy Dunlap <rdunlap@infradead.org>, 
	Dan Williams <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>, 
	linux-devicetree <devicetree@vger.kernel.org>, lkml <linux-kernel@vger.kernel.org>, 
	linuxppc-dev@lists.ozlabs.org, xen-devel@lists.xenproject.org, 
	Nicolas Boichat <drinkcat@chromium.org>, Jim Quinlan <james.quinlan@broadcom.com>, 
	Tomasz Figa <tfiga@chromium.org>, bskeggs@redhat.com, 
	Bjorn Helgaas <bhelgaas@google.com>, chris@chris-wilson.co.uk, 
	Daniel Vetter <daniel@ffwll.ch>, airlied@linux.ie, dri-devel@lists.freedesktop.org, 
	intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com, 
	Jianxiong Gao <jxgao@google.com>, joonas.lahtinen@linux.intel.com, 
	linux-pci@vger.kernel.org, maarten.lankhorst@linux.intel.com, 
	matthew.auld@intel.com, nouveau@lists.freedesktop.org, rodrigo.vivi@intel.com, 
	thomas.hellstrom@linux.intel.com
Content-Type: text/plain; charset="UTF-8"

On Fri, Apr 23, 2021 at 9:31 PM Robin Murphy <robin.murphy@arm.com> wrote:
>
> On 2021-04-22 09:15, Claire Chang wrote:
> > Update is_swiotlb_active to add a struct device argument. This will be
> > useful later to allow for restricted DMA pool.
> >
> > Signed-off-by: Claire Chang <tientzu@chromium.org>
> > ---
> >   drivers/gpu/drm/i915/gem/i915_gem_internal.c | 2 +-
> >   drivers/gpu/drm/nouveau/nouveau_ttm.c        | 2 +-
> >   drivers/pci/xen-pcifront.c                   | 2 +-
> >   include/linux/swiotlb.h                      | 4 ++--
> >   kernel/dma/direct.c                          | 2 +-
> >   kernel/dma/swiotlb.c                         | 4 ++--
> >   6 files changed, 8 insertions(+), 8 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_internal.c b/drivers/gpu/drm/i915/gem/i915_gem_internal.c
> > index ce6b664b10aa..7d48c433446b 100644
> > --- a/drivers/gpu/drm/i915/gem/i915_gem_internal.c
> > +++ b/drivers/gpu/drm/i915/gem/i915_gem_internal.c
> > @@ -42,7 +42,7 @@ static int i915_gem_object_get_pages_internal(struct drm_i915_gem_object *obj)
> >
> >       max_order = MAX_ORDER;
> >   #ifdef CONFIG_SWIOTLB
> > -     if (is_swiotlb_active()) {
> > +     if (is_swiotlb_active(NULL)) {
> >               unsigned int max_segment;
> >
> >               max_segment = swiotlb_max_segment();
> > diff --git a/drivers/gpu/drm/nouveau/nouveau_ttm.c b/drivers/gpu/drm/nouveau/nouveau_ttm.c
> > index e8b506a6685b..2a2ae6d6cf6d 100644
> > --- a/drivers/gpu/drm/nouveau/nouveau_ttm.c
> > +++ b/drivers/gpu/drm/nouveau/nouveau_ttm.c
> > @@ -321,7 +321,7 @@ nouveau_ttm_init(struct nouveau_drm *drm)
> >       }
> >
> >   #if IS_ENABLED(CONFIG_SWIOTLB) && IS_ENABLED(CONFIG_X86)
> > -     need_swiotlb = is_swiotlb_active();
> > +     need_swiotlb = is_swiotlb_active(NULL);
> >   #endif
> >
> >       ret = ttm_device_init(&drm->ttm.bdev, &nouveau_bo_driver, drm->dev->dev,
> > diff --git a/drivers/pci/xen-pcifront.c b/drivers/pci/xen-pcifront.c
> > index b7a8f3a1921f..6d548ce53ce7 100644
> > --- a/drivers/pci/xen-pcifront.c
> > +++ b/drivers/pci/xen-pcifront.c
> > @@ -693,7 +693,7 @@ static int pcifront_connect_and_init_dma(struct pcifront_device *pdev)
> >
> >       spin_unlock(&pcifront_dev_lock);
> >
> > -     if (!err && !is_swiotlb_active()) {
> > +     if (!err && !is_swiotlb_active(NULL)) {
> >               err = pci_xen_swiotlb_init_late();
> >               if (err)
> >                       dev_err(&pdev->xdev->dev, "Could not setup SWIOTLB!\n");
> > diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> > index 2a6cca07540b..c530c976d18b 100644
> > --- a/include/linux/swiotlb.h
> > +++ b/include/linux/swiotlb.h
> > @@ -123,7 +123,7 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
> >   void __init swiotlb_exit(void);
> >   unsigned int swiotlb_max_segment(void);
> >   size_t swiotlb_max_mapping_size(struct device *dev);
> > -bool is_swiotlb_active(void);
> > +bool is_swiotlb_active(struct device *dev);
> >   void __init swiotlb_adjust_size(unsigned long size);
> >   #else
> >   #define swiotlb_force SWIOTLB_NO_FORCE
> > @@ -143,7 +143,7 @@ static inline size_t swiotlb_max_mapping_size(struct device *dev)
> >       return SIZE_MAX;
> >   }
> >
> > -static inline bool is_swiotlb_active(void)
> > +static inline bool is_swiotlb_active(struct device *dev)
> >   {
> >       return false;
> >   }
> > diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c
> > index 84c9feb5474a..7a88c34d0867 100644
> > --- a/kernel/dma/direct.c
> > +++ b/kernel/dma/direct.c
> > @@ -495,7 +495,7 @@ int dma_direct_supported(struct device *dev, u64 mask)
> >   size_t dma_direct_max_mapping_size(struct device *dev)
> >   {
> >       /* If SWIOTLB is active, use its maximum mapping size */
> > -     if (is_swiotlb_active() &&
> > +     if (is_swiotlb_active(dev) &&
> >           (dma_addressing_limited(dev) || swiotlb_force == SWIOTLB_FORCE))
>
> I wonder if it's worth trying to fold these other conditions into
> is_swiotlb_active() itself? I'm not entirely sure what matters for Xen,
> but for the other cases it seems like they probably only care about
> whether bouncing may occur for their particular device or not (possibly
> they want to be using dma_max_mapping_size() now anyway - TBH I'm
> struggling to make sense of what the swiotlb_max_segment business is
> supposed to mean).

I think leaving those conditions outside of is_swiotlb_active() might
help avoid confusion with is_dev_swiotlb_force() in patch #9? We need
is_dev_swiotlb_force() only because the restricted DMA pool supports
memory allocation, but the default swiotlb doesn't.

>
> Otherwise, patch #9 will need to touch here as well to make sure that
> per-device forced bouncing is reflected correctly.

You're right. Otherwise, is_dev_swiotlb_force is needed here.


>
> Robin.
>
> >               return swiotlb_max_mapping_size(dev);
> >       return SIZE_MAX;
> > diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> > index ffbb8724e06c..1d221343f1c8 100644
> > --- a/kernel/dma/swiotlb.c
> > +++ b/kernel/dma/swiotlb.c
> > @@ -659,9 +659,9 @@ size_t swiotlb_max_mapping_size(struct device *dev)
> >       return ((size_t)IO_TLB_SIZE) * IO_TLB_SEGSIZE;
> >   }
> >
> > -bool is_swiotlb_active(void)
> > +bool is_swiotlb_active(struct device *dev)
> >   {
> > -     return io_tlb_default_mem != NULL;
> > +     return get_io_tlb_mem(dev) != NULL;
> >   }
> >   EXPORT_SYMBOL_GPL(is_swiotlb_active);
> >
> >


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 16:44:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 16:44:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117819.223731 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb4LF-0007XS-PD; Mon, 26 Apr 2021 16:44:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117819.223731; Mon, 26 Apr 2021 16:44: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 1lb4LF-0007XL-Ko; Mon, 26 Apr 2021 16:44:13 +0000
Received: by outflank-mailman (input) for mailman id 117819;
 Mon, 26 Apr 2021 16:44:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MWrc=JX=chromium.org=tientzu@srs-us1.protection.inumbo.net>)
 id 1lb4LE-0007XG-75
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 16:44:12 +0000
Received: from mail-qk1-x729.google.com (unknown [2607:f8b0:4864:20::729])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 30cdc03d-9319-40ec-b94b-52b9603b2123;
 Mon, 26 Apr 2021 16:44:11 +0000 (UTC)
Received: by mail-qk1-x729.google.com with SMTP id q136so36163968qka.7
 for <xen-devel@lists.xenproject.org>; Mon, 26 Apr 2021 09:44:11 -0700 (PDT)
Received: from mail-qt1-f170.google.com (mail-qt1-f170.google.com.
 [209.85.160.170])
 by smtp.gmail.com with ESMTPSA id q14sm11517428qtp.26.2021.04.26.09.44.10
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 26 Apr 2021 09:44:10 -0700 (PDT)
Received: by mail-qt1-f170.google.com with SMTP id a18so18280254qtj.10
 for <xen-devel@lists.xenproject.org>; Mon, 26 Apr 2021 09:44: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: 30cdc03d-9319-40ec-b94b-52b9603b2123
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=KlgosoMJOAaR/ET01AhknsNf3mj6gtcliiDg0dLL1e0=;
        b=FfxC6YTfTyKRjULzScvZeh080rowzObsgfkNkB6PbFU85WK18TorFZb3nTplFpotQN
         FCzKzeHFiWHC6SAAz0H1ZvobWir4E6RenbNbEqtrFbyTUyimRczwWol0BDixJHUTha+x
         eXWW6lC9g26ZhTBX/V5pk140gf+3zGj/JaWxQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=KlgosoMJOAaR/ET01AhknsNf3mj6gtcliiDg0dLL1e0=;
        b=Fm+Tg2T0DdYUSXpOmBsmVad6lYlGt+j59pppbltRbTOEc/izHqBjYhF+s8djs3ZaNa
         Go/l7v9+l2bQlucseUuwWf3rKcsN1MBBTf9Qs7p5w4MvIWoBNn8r2ucA2sNRnw7i6JEL
         WGlLbf0UBpiz7Z2Tn2fPt/mkEBixDllXWZrgFkX24cvLqN4WzyKrOeqi/qTwJaz/uGnv
         Dkk/r0xv/tg2xBDjHrlZnUOJWVCVPBq5YqUTY1v5EOO0s3Czdu7jH5UjrDt/pdH2c8A2
         G/SPU/1oxXuIuB7x2fC4c3oDzlF3rOjbuCYOwR5EaoQSGcgKfAIE0r4ZOV3OTRnovIrY
         zOdw==
X-Gm-Message-State: AOAM530pEtXMG3OT0nCYt91yAzONJJRPfCESy4fZxhXAswV452oQEVuE
	K33XWcC3D5p1OM9tCg2HHLd2wOgCibHJYw==
X-Google-Smtp-Source: ABdhPJzVHTsXveYJFHdWmdSUKcEcmkDKH3h5f0wbWlnCWvL/pDj5HU/C3eGpJDiRJraor3HO5NMcJA==
X-Received: by 2002:a37:a68a:: with SMTP id p132mr18679664qke.413.1619455450619;
        Mon, 26 Apr 2021 09:44:10 -0700 (PDT)
X-Received: by 2002:a05:6638:68b:: with SMTP id i11mr17242768jab.90.1619455099476;
 Mon, 26 Apr 2021 09:38:19 -0700 (PDT)
MIME-Version: 1.0
References: <20210422081508.3942748-1-tientzu@chromium.org>
 <20210422081508.3942748-17-tientzu@chromium.org> <03c5bc8a-3965-bf1d-01a4-97d074dfbe2b@arm.com>
In-Reply-To: <03c5bc8a-3965-bf1d-01a4-97d074dfbe2b@arm.com>
From: Claire Chang <tientzu@chromium.org>
Date: Tue, 27 Apr 2021 00:38:08 +0800
X-Gmail-Original-Message-ID: <CALiNf28ExE8OLsuDaN9nC=eAi-iG0rct_TJCCxAcWW4+_pdj2g@mail.gmail.com>
Message-ID: <CALiNf28ExE8OLsuDaN9nC=eAi-iG0rct_TJCCxAcWW4+_pdj2g@mail.gmail.com>
Subject: Re: [PATCH v5 16/16] of: Add plumbing for restricted DMA pool
To: Robin Murphy <robin.murphy@arm.com>
Cc: Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>, 
	Frank Rowand <frowand.list@gmail.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, 
	boris.ostrovsky@oracle.com, jgross@suse.com, Christoph Hellwig <hch@lst.de>, 
	Marek Szyprowski <m.szyprowski@samsung.com>, benh@kernel.crashing.org, paulus@samba.org, 
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>, sstabellini@kernel.org, 
	grant.likely@arm.com, xypron.glpk@gmx.de, Thierry Reding <treding@nvidia.com>, 
	mingo@kernel.org, bauerman@linux.ibm.com, peterz@infradead.org, 
	Greg KH <gregkh@linuxfoundation.org>, Saravana Kannan <saravanak@google.com>, 
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>, heikki.krogerus@linux.intel.com, 
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>, Randy Dunlap <rdunlap@infradead.org>, 
	Dan Williams <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>, 
	linux-devicetree <devicetree@vger.kernel.org>, lkml <linux-kernel@vger.kernel.org>, 
	linuxppc-dev@lists.ozlabs.org, xen-devel@lists.xenproject.org, 
	Nicolas Boichat <drinkcat@chromium.org>, Jim Quinlan <james.quinlan@broadcom.com>, 
	Tomasz Figa <tfiga@chromium.org>, bskeggs@redhat.com, 
	Bjorn Helgaas <bhelgaas@google.com>, chris@chris-wilson.co.uk, 
	Daniel Vetter <daniel@ffwll.ch>, airlied@linux.ie, dri-devel@lists.freedesktop.org, 
	intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com, 
	Jianxiong Gao <jxgao@google.com>, joonas.lahtinen@linux.intel.com, 
	linux-pci@vger.kernel.org, maarten.lankhorst@linux.intel.com, 
	matthew.auld@intel.com, nouveau@lists.freedesktop.org, rodrigo.vivi@intel.com, 
	thomas.hellstrom@linux.intel.com
Content-Type: text/plain; charset="UTF-8"

On Fri, Apr 23, 2021 at 9:35 PM Robin Murphy <robin.murphy@arm.com> wrote:
>
> On 2021-04-22 09:15, Claire Chang wrote:
> > If a device is not behind an IOMMU, we look up the device node and set
> > up the restricted DMA when the restricted-dma-pool is presented.
> >
> > Signed-off-by: Claire Chang <tientzu@chromium.org>
> > ---
> >   drivers/of/address.c    | 25 +++++++++++++++++++++++++
> >   drivers/of/device.c     |  3 +++
> >   drivers/of/of_private.h |  5 +++++
> >   3 files changed, 33 insertions(+)
> >
> > diff --git a/drivers/of/address.c b/drivers/of/address.c
> > index 54f221dde267..fff3adfe4986 100644
> > --- a/drivers/of/address.c
> > +++ b/drivers/of/address.c
> > @@ -8,6 +8,7 @@
> >   #include <linux/logic_pio.h>
> >   #include <linux/module.h>
> >   #include <linux/of_address.h>
> > +#include <linux/of_reserved_mem.h>
> >   #include <linux/pci.h>
> >   #include <linux/pci_regs.h>
> >   #include <linux/sizes.h>
> > @@ -1109,6 +1110,30 @@ bool of_dma_is_coherent(struct device_node *np)
> >   }
> >   EXPORT_SYMBOL_GPL(of_dma_is_coherent);
> >
> > +int of_dma_set_restricted_buffer(struct device *dev)
> > +{
> > +     struct device_node *node;
> > +     int count, i;
> > +
> > +     if (!dev->of_node)
> > +             return 0;
> > +
> > +     count = of_property_count_elems_of_size(dev->of_node, "memory-region",
> > +                                             sizeof(phandle));
> > +     for (i = 0; i < count; i++) {
> > +             node = of_parse_phandle(dev->of_node, "memory-region", i);
> > +             /* There might be multiple memory regions, but only one
> > +              * restriced-dma-pool region is allowed.
> > +              */
>
> What's the use-case for having multiple regions if the restricted pool
> is by definition the only one accessible?

There might be a device coherent pool (shared-dma-pool) and
dma_alloc_attrs might allocate memory from that pool [1].
I'm not sure if it makes sense to have another device coherent pool
while using restricted DMA pool though.

[1] https://elixir.bootlin.com/linux/v5.12/source/kernel/dma/mapping.c#L435


>
> Robin.
>
> > +             if (of_device_is_compatible(node, "restricted-dma-pool") &&
> > +                 of_device_is_available(node))
> > +                     return of_reserved_mem_device_init_by_idx(
> > +                             dev, dev->of_node, i);
> > +     }
> > +
> > +     return 0;
> > +}
> > +
> >   /**
> >    * of_mmio_is_nonposted - Check if device uses non-posted MMIO
> >    * @np:     device node
> > diff --git a/drivers/of/device.c b/drivers/of/device.c
> > index c5a9473a5fb1..d8d865223e51 100644
> > --- a/drivers/of/device.c
> > +++ b/drivers/of/device.c
> > @@ -165,6 +165,9 @@ int of_dma_configure_id(struct device *dev, struct device_node *np,
> >
> >       arch_setup_dma_ops(dev, dma_start, size, iommu, coherent);
> >
> > +     if (!iommu)
> > +             return of_dma_set_restricted_buffer(dev);
> > +
> >       return 0;
> >   }
> >   EXPORT_SYMBOL_GPL(of_dma_configure_id);
> > diff --git a/drivers/of/of_private.h b/drivers/of/of_private.h
> > index d717efbd637d..e9237f5eff48 100644
> > --- a/drivers/of/of_private.h
> > +++ b/drivers/of/of_private.h
> > @@ -163,12 +163,17 @@ struct bus_dma_region;
> >   #if defined(CONFIG_OF_ADDRESS) && defined(CONFIG_HAS_DMA)
> >   int of_dma_get_range(struct device_node *np,
> >               const struct bus_dma_region **map);
> > +int of_dma_set_restricted_buffer(struct device *dev);
> >   #else
> >   static inline int of_dma_get_range(struct device_node *np,
> >               const struct bus_dma_region **map)
> >   {
> >       return -ENODEV;
> >   }
> > +static inline int of_dma_get_restricted_buffer(struct device *dev)
> > +{
> > +     return -ENODEV;
> > +}
> >   #endif
> >
> >   #endif /* _LINUX_OF_PRIVATE_H */
> >


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 17:12:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 17:12:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117832.223742 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb4mk-0001qh-3g; Mon, 26 Apr 2021 17:12:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117832.223742; Mon, 26 Apr 2021 17:12:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb4mk-0001qa-0i; Mon, 26 Apr 2021 17:12:38 +0000
Received: by outflank-mailman (input) for mailman id 117832;
 Mon, 26 Apr 2021 17:12: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 1lb4mi-0001qS-CG; Mon, 26 Apr 2021 17:12: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 1lb4mi-0005IW-1p; Mon, 26 Apr 2021 17:12: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 1lb4mh-0000ij-MJ; Mon, 26 Apr 2021 17:12:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lb4mh-0004Jv-LX; Mon, 26 Apr 2021 17:12: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=dCpfTXI8zfnVtHSUkmPRoLOzCSj8sOMYr1GUpXeNVpU=; b=xHaJC12yCImZdlRZzlcNROcheu
	xsePAf1dJm8nxPbwLnqxCJLL3kK7/naTwZ96j3RTieVV7h9xgVFKKM2nGs/2R4JxqLbwyHj4O4LQL
	yOZGpr0CA5DLrc6lM2caaOE8AJmCbzBKUfyeNCO5hgFSwNynK1KN1pWEJ4hrMLkcp5Ss=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161460-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161460: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-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-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-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-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-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-amd64-libvirt-vhd: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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    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-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
X-Osstest-Versions-This:
    xen=ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
X-Osstest-Versions-That:
    xen=ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 17:12:35 +0000

flight 161460 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161460/

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 161451
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161451
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161451
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161451
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161451
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161451
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161451
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161451
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161451
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161451
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161451
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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

version targeted for testing:
 xen                  ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
baseline version:
 xen                  ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed

Last test of basis   161460  2021-04-26 04:44: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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 17:47:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 17:47:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117848.223757 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb5KH-0004fo-Jk; Mon, 26 Apr 2021 17:47:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117848.223757; Mon, 26 Apr 2021 17:47: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 1lb5KH-0004fh-Gh; Mon, 26 Apr 2021 17:47:17 +0000
Received: by outflank-mailman (input) for mailman id 117848;
 Mon, 26 Apr 2021 17:47:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=EtcY=JX=kernel.org=pr-tracker-bot@srs-us1.protection.inumbo.net>)
 id 1lb5KG-0004fc-9G
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 17:47:16 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ec1f66e0-54b0-4458-86a7-930cdb74901e;
 Mon, 26 Apr 2021 17:47:15 +0000 (UTC)
Received: by mail.kernel.org (Postfix) with ESMTPS id A37C161185;
 Mon, 26 Apr 2021 17:47:14 +0000 (UTC)
Received: from pdx-korg-docbuild-2.ci.codeaurora.org (localhost.localdomain
 [127.0.0.1])
 by pdx-korg-docbuild-2.ci.codeaurora.org (Postfix) with ESMTP id 98C95609AE;
 Mon, 26 Apr 2021 17:47: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: ec1f66e0-54b0-4458-86a7-930cdb74901e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1619459234;
	bh=AkfP3c7uXWzzHU4ILsdwUMUtNDEsa+/IWcgMK4s9unY=;
	h=Subject:From:In-Reply-To:References:Date:To:Cc:From;
	b=Me8Wkv1My1rPOYbgcAJZhXjfFCFG+sgvXhaCspQg+74gnCNphEjnmq5flUEHNTYZc
	 7GFM7qhJRb7GQs2WczH60RYxL2/VnU1ZoJkQ2UNt8mumrJXjy7qj0DfiGrHGJhg3WB
	 82Jg5UDzl4MkWQaeW6QMm5jO0oN6UBmzHZeIrTIk6m72DjlMQJCsSTZTPuWe6PRu33
	 tYqz6ZNWpZEjeh2AHKTtEXLDvzst18DBq+RHALRdlSIVShjBycY/zRQsxQDvcrUfFP
	 9JhXCdPFyaZ20OSh6YFVIBBfcBqHfImI57uxe1CCD4C3Ekik1TxkW3WhaNOHFVds87
	 7OfbbGUKCnTXg==
Subject: Re: [GIT PULL] xen: branch for v5.13-rc1
From: pr-tracker-bot@kernel.org
In-Reply-To: <20210426061618.22978-1-jgross@suse.com>
References: <20210426061618.22978-1-jgross@suse.com>
X-PR-Tracked-List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
X-PR-Tracked-Message-Id: <20210426061618.22978-1-jgross@suse.com>
X-PR-Tracked-Remote: git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-5.13-rc1-tag
X-PR-Tracked-Commit-Id: f5079a9a2a31607a2343e544e9182ce35b030578
X-PR-Merge-Tree: torvalds/linux.git
X-PR-Merge-Refname: refs/heads/master
X-PR-Merge-Commit-Id: 8e47c5f0e23234659daea78256bc1b04ea019a4b
Message-Id: <161945923456.30101.3675025824805536211.pr-tracker-bot@kernel.org>
Date: Mon, 26 Apr 2021 17:47:14 +0000
To: Juergen Gross <jgross@suse.com>
Cc: torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, boris.ostrovsky@oracle.com

The pull request you sent on Mon, 26 Apr 2021 08:16:18 +0200:

> git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-5.13-rc1-tag

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/8e47c5f0e23234659daea78256bc1b04ea019a4b

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 17:53:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 17:53:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117856.223770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb5QZ-0005YR-BN; Mon, 26 Apr 2021 17:53:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117856.223770; Mon, 26 Apr 2021 17: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 1lb5QZ-0005YK-6q; Mon, 26 Apr 2021 17:53:47 +0000
Received: by outflank-mailman (input) for mailman id 117856;
 Mon, 26 Apr 2021 17:53:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=/oNb=JX=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lb5QX-0005YF-0M
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 17:53:45 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7a282536-b0cd-40da-a182-427bcb94200d;
 Mon, 26 Apr 2021 17:53:44 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lb5QQ-00065I-Lo; Mon, 26 Apr 2021 17:53: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: 7a282536-b0cd-40da-a182-427bcb94200d
Date: Mon, 26 Apr 2021 18:53:38 +0100
From: Tim Deegan <tim@xen.org>
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>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Jun Nakajima <jun.nakajima@intel.com>
Subject: Re: [PATCH v4 1/3] VMX: use a single, global APIC access page
Message-ID: <YIb+Iky2sQuoubxR@deinos.phlegethon.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
 <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 12:52 +0200 on 23 Apr (1619182377), Jan Beulich wrote:
> The address of this page is used by the CPU only to recognize when to
> access the virtual APIC page instead. No accesses would ever go to this
> page. It only needs to be present in the (CPU) page tables so that
> address translation will produce its address as result for respective
> accesses.
> 
> By making this page global, we also eliminate the need to refcount it,
> or to assign it to any domain in the first place.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Looks good, thanks for the changes!

Acked-by: Tim Deegan <tim@xen.org>


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 17:54:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 17:54:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117860.223782 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb5RV-0005gJ-Ku; Mon, 26 Apr 2021 17:54:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117860.223782; Mon, 26 Apr 2021 17: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 1lb5RV-0005gC-HD; Mon, 26 Apr 2021 17:54:45 +0000
Received: by outflank-mailman (input) for mailman id 117860;
 Mon, 26 Apr 2021 17:54:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rjXZ=JX=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lb5RU-0005en-Ax
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 17:54:44 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5bb7c0a9-7076-49e0-b2e9-00c1037efc58;
 Mon, 26 Apr 2021 17:54: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: 5bb7c0a9-7076-49e0-b2e9-00c1037efc58
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619459683;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=yf7x/q/ho2Rnc9G0Aw34AN0uVo0SC6wFmv3rxC78ogg=;
  b=SKw3C0ThoAMi9E8AA8CQd4AaQAaW+A4nAQByuTZ4Nr25xMl+vAGKChav
   8pihSe+6tItA3dm/KlJH7oHjA/zjCuG6swpZRha9EmM3yUaJWXSP8uqwq
   EfWxyu+IDZCGPhRN1wCw7E+1k+NecXW2Vcco9mr59tefgBUROH6kpShQG
   E=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: BdEPhuNVyXveWMoxan8Skh0bqQw1Rt4PsN/rSsVCQ6DOUhN8B5uyPSfzLfTIXszlKZFdgsQDvv
 RfA1i3iOmsdktmqMzS2lxoIePpik6Nf1334p1A+99kiJfG4ssFE87xePkhUi2uD6yGBfv/ko42
 uzQuHGs5flLddc9HQbgeHZ4BMnUYOFOWqrcQ65VYQLjf0EP3Ngv1I0B3yeWOMHv8bnivfai1GV
 u+10UzVj5CoQzmO4nEsFcMyEd6oEGxLsolGiy/djARAoY+yxQE6PO62PkvK8h9oRRTqYBLVNHv
 uHo=
X-SBRS: 4.0
X-MesageID: 42553819
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:WyJkzqsYvVnDBVBRHET57gNV7skD89V00zAX/kB9WHVpW+az/v
 rBoN0w0xjohDENHEw6kdebN6WaBV/a/5h54Y4eVI3SJTXOkm2uMY1k8M/e0yTtcheOkNJ1+K
 98f8FFaOHYIkN9ia/BjDWQM9Fl+9Wf9bDtuOG29QYJcShPS4VNqzh0ERyaFEoefnggObMcGI
 CH7sRK4xqMEE5nDfiTPXUOU+jdq9CjrvuPCnRqOzcd5AaDlj+u4rLheiLouis2aD9T3awktV
 HMjg2R3NTaj9iA1hTe22XPhq42pPLdzLJ4a/Cku4wwIjXohh3AXvUCZ4G/
X-IronPort-AV: E=Sophos;i="5.82,252,1613451600"; 
   d="scan'208";a="42553819"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 2/3] x86/svm: Enumeration for CET
Date: Mon, 26 Apr 2021 18:54:20 +0100
Message-ID: <20210426175421.30497-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210426175421.30497-1-andrew.cooper3@citrix.com>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

On CET-capable hardware, VMRUN/EXIT unconditionally swaps S_SET, SSP and
ISST (subject to cleanbits) without further settings.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/hvm/svm/svm.c         |  1 +
 xen/arch/x86/hvm/svm/svmdebug.c    |  2 ++
 xen/include/asm-x86/hvm/svm/svm.h  |  2 ++
 xen/include/asm-x86/hvm/svm/vmcb.h | 10 ++++++++--
 4 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index 4585efe1f8..642a64b747 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -1658,6 +1658,7 @@ const struct hvm_function_table * __init start_svm(void)
     P(cpu_has_pause_filter, "Pause-Intercept Filter");
     P(cpu_has_pause_thresh, "Pause-Intercept Filter Threshold");
     P(cpu_has_tsc_ratio, "TSC Rate MSR");
+    P(cpu_has_svm_sss, "NPT Supervisor Shadow Stack");
 #undef P
 
     if ( !printed )
diff --git a/xen/arch/x86/hvm/svm/svmdebug.c b/xen/arch/x86/hvm/svm/svmdebug.c
index f450391df4..bce86f0ef7 100644
--- a/xen/arch/x86/hvm/svm/svmdebug.c
+++ b/xen/arch/x86/hvm/svm/svmdebug.c
@@ -82,6 +82,8 @@ void svm_vmcb_dump(const char *from, const struct vmcb_struct *vmcb)
            vmcb->cstar, vmcb->sfmask);
     printk("KernGSBase = 0x%016"PRIx64" PAT = 0x%016"PRIx64"\n",
            vmcb->kerngsbase, vmcb_get_g_pat(vmcb));
+    printk("SSP = 0x%016"PRIx64" S_CET = 0x%016"PRIx64" ISST = 0x%016"PRIx64"\n",
+           vmcb->_ssp, vmcb->_msr_s_cet, vmcb->_msr_isst);
     printk("H_CR3 = 0x%016"PRIx64" CleanBits = %#x\n",
            vmcb_get_h_cr3(vmcb), vmcb->cleanbits.raw);
 
diff --git a/xen/include/asm-x86/hvm/svm/svm.h b/xen/include/asm-x86/hvm/svm/svm.h
index faeca40174..bee939156f 100644
--- a/xen/include/asm-x86/hvm/svm/svm.h
+++ b/xen/include/asm-x86/hvm/svm/svm.h
@@ -75,6 +75,7 @@ extern u32 svm_feature_flags;
 #define SVM_FEATURE_PAUSETHRESH   12 /* Pause intercept filter support */
 #define SVM_FEATURE_VLOADSAVE     15 /* virtual vmload/vmsave */
 #define SVM_FEATURE_VGIF          16 /* Virtual GIF */
+#define SVM_FEATURE_SSS           19 /* NPT Supervisor Shadow Stacks */
 
 #define cpu_has_svm_feature(f) (svm_feature_flags & (1u << (f)))
 #define cpu_has_svm_npt       cpu_has_svm_feature(SVM_FEATURE_NPT)
@@ -89,6 +90,7 @@ extern u32 svm_feature_flags;
 #define cpu_has_pause_thresh  cpu_has_svm_feature(SVM_FEATURE_PAUSETHRESH)
 #define cpu_has_tsc_ratio     cpu_has_svm_feature(SVM_FEATURE_TSCRATEMSR)
 #define cpu_has_svm_vloadsave cpu_has_svm_feature(SVM_FEATURE_VLOADSAVE)
+#define cpu_has_svm_sss       cpu_has_svm_feature(SVM_FEATURE_SSS)
 
 #define SVM_PAUSEFILTER_INIT    4000
 #define SVM_PAUSETHRESH_INIT    1000
diff --git a/xen/include/asm-x86/hvm/svm/vmcb.h b/xen/include/asm-x86/hvm/svm/vmcb.h
index 0b03a8f076..fbedea209e 100644
--- a/xen/include/asm-x86/hvm/svm/vmcb.h
+++ b/xen/include/asm-x86/hvm/svm/vmcb.h
@@ -248,6 +248,8 @@ enum VMEXIT_EXITCODE
     VMEXIT_EXCEPTION_AC  =  81, /* 0x51, alignment-check */
     VMEXIT_EXCEPTION_MC  =  82, /* 0x52, machine-check */
     VMEXIT_EXCEPTION_XF  =  83, /* 0x53, simd floating-point */
+/*  VMEXIT_EXCEPTION_20  =  84,    0x54, #VE (Intel specific) */
+    VMEXIT_EXCEPTION_CP  =  85, /* 0x55, controlflow protection */
 
     /* exceptions 20-31 (exitcodes 84-95) are reserved */
 
@@ -397,6 +399,8 @@ typedef union
         bool seg:1;        /* 8:  cs, ds, es, ss, cpl */
         bool cr2:1;        /* 9:  cr2 */
         bool lbr:1;        /* 10: debugctlmsr, last{branch,int}{to,from}ip */
+        bool :1;
+        bool cet:1;        /* 12: msr_s_set, ssp, msr_isst */
     };
     uint32_t raw;
 } vmcbcleanbits_t;
@@ -451,7 +455,7 @@ struct vmcb_struct {
             bool _sev_enable    :1;
             bool _sev_es_enable :1;
             bool _gmet          :1;
-            bool                :1;
+            bool _np_sss        :1;
             bool _vte           :1;
         };
         uint64_t _np_ctrl;
@@ -497,7 +501,9 @@ struct vmcb_struct {
     u64 rip;
     u64 res14[11];
     u64 rsp;
-    u64 res15[3];
+    u64 _msr_s_cet;             /* offset 0x400 + 0x1E0 - cleanbit 12 */
+    u64 _ssp;                   /* offset 0x400 + 0x1E8   | */
+    u64 _msr_isst;              /* offset 0x400 + 0x1F0   v */
     u64 rax;
     u64 star;
     u64 lstar;
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 17:54:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 17:54:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117861.223789 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb5RW-0005gs-20; Mon, 26 Apr 2021 17:54:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117861.223789; Mon, 26 Apr 2021 17: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 1lb5RV-0005ga-QL; Mon, 26 Apr 2021 17:54:45 +0000
Received: by outflank-mailman (input) for mailman id 117861;
 Mon, 26 Apr 2021 17:54:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rjXZ=JX=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lb5RU-0005es-MX
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 17:54:44 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a46a4116-aa03-4c51-b5b0-ef4f7482ef01;
 Mon, 26 Apr 2021 17:54: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: a46a4116-aa03-4c51-b5b0-ef4f7482ef01
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619459683;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=yqRxPvsEyspJLb30NiO614S66+MdC18nJNcU+EsvAWo=;
  b=TRQ4df8BOE7T37aYoz0KoJHXfTARwYWs5tfx4S97Nr2/mjthmwmZgb3O
   jGLzZD28ms+lRBch0KcLH7oPhG/Wl++5w9TvCwRxDE32B4xgpgyRT0pkS
   FnChvVfN/LdMZ0R+7+mXLL/dPZBmPzUNkmS5fWGUJs3+ZIrIs3Hi0hCph
   I=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: VsSjowmybIBQmp1G3dUWjFn+rApumEg143mCIcQqeFbYYJlzc4dmRCY1ssfZNWKo2xOcEKMBXy
 sI3oAVuZ/2j+p9GAZFId8epyOBPznTKkAzXQHVG2wDJRu9QFr347HoltphRavfvBdzCRT0s4K9
 N6r9hQiUw5cSv+O+oBOj3Fu2XkYfewQUEgajxs8DAGZmfofyvUbAm7NNtHRT9GTEhrAIK0R0xk
 FIDwmbDP1HExEZCAJ21CLZr5RpS93ETupiD8mghCcLhHOzqkqL1ZUdvSvS/z0DiGq6Yuyw3bNh
 rDI=
X-SBRS: 4.0
X-MesageID: 42818490
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:xC3EUaqOJWPVvhJEc0n+/igaV5qseYIsi2QD101hICF9WObwra
 GTtd4c0gL5jytUZWopnsqONLLFbXTX85N05od5B8bbYCDNvmy0IIZ+qbbz2jGIIVyGysdx3b
 ptGpIOa+HYIkN9ia/BjzWQM9Fl+9Wf9bDtuOG29QYIcShPS4VNqzh0ERyaFEoefnghObMcGI
 CH7sRK4xqMEE5nDPiTPXUOU+jdq9CjrvuPCnRqayIP0wWAgSil77T3CXGjr3AjeghC3Ks49i
 z9mxH5j5/TyM2T8APW1GPY8v1t+OfJ990rPqKxo/lQDj3tjwqyDb4RPoG/gA==
X-IronPort-AV: E=Sophos;i="5.82,252,1613451600"; 
   d="scan'208";a="42818490"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 1/3] x86/hvm: Introduce experimental guest CET support
Date: Mon, 26 Apr 2021 18:54:19 +0100
Message-ID: <20210426175421.30497-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210426175421.30497-1-andrew.cooper3@citrix.com>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

For now, let VMs opt into using CET by setting cet_ss/ibt in the CPUID
policy.  Also extend cr4 handling to permit CR4.CET being set, along with
logic to interlock CR4.CET and CR0.WP.

Everything else will malfunction for now, but this will help adding support
incrementally - there is a lot to do before CET will work properly.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/hvm/hvm.c                      | 18 ++++++++++++++++--
 xen/include/public/arch-x86/cpufeatureset.h |  4 ++--
 2 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
index ae37bc434a..28beacc45b 100644
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -976,11 +976,12 @@ const char *hvm_efer_valid(const struct vcpu *v, uint64_t value,
 unsigned long hvm_cr4_guest_valid_bits(const struct domain *d)
 {
     const struct cpuid_policy *p = d->arch.cpuid;
-    bool mce, vmxe;
+    bool mce, vmxe, cet;
 
     /* Logic broken out simply to aid readability below. */
     mce  = p->basic.mce || p->basic.mca;
     vmxe = p->basic.vmx && nestedhvm_enabled(d);
+    cet  = p->feat.cet_ss || p->feat.cet_ibt;
 
     return ((p->basic.vme     ? X86_CR4_VME | X86_CR4_PVI : 0) |
             (p->basic.tsc     ? X86_CR4_TSD               : 0) |
@@ -999,7 +1000,8 @@ unsigned long hvm_cr4_guest_valid_bits(const struct domain *d)
             (p->basic.xsave   ? X86_CR4_OSXSAVE           : 0) |
             (p->feat.smep     ? X86_CR4_SMEP              : 0) |
             (p->feat.smap     ? X86_CR4_SMAP              : 0) |
-            (p->feat.pku      ? X86_CR4_PKE               : 0));
+            (p->feat.pku      ? X86_CR4_PKE               : 0) |
+            (cet              ? X86_CR4_CET               : 0));
 }
 
 static int hvm_load_cpu_ctxt(struct domain *d, hvm_domain_context_t *h)
@@ -2289,6 +2291,12 @@ int hvm_set_cr0(unsigned long value, bool may_defer)
         }
     }
 
+    if ( !(value & X86_CR0_WP) && (v->arch.hvm.guest_cr[4] & X86_CR4_CET) )
+    {
+        gprintk(XENLOG_DEBUG, "Trying to clear WP with CET set\n");
+        return X86EMUL_EXCEPTION;
+    }
+
     if ( (value & X86_CR0_PG) && !(old_value & X86_CR0_PG) )
     {
         if ( v->arch.hvm.guest_efer & EFER_LME )
@@ -2444,6 +2452,12 @@ int hvm_set_cr4(unsigned long value, bool may_defer)
         }
     }
 
+    if ( (value & X86_CR4_CET) && !(v->arch.hvm.guest_cr[0] & X86_CR0_WP) )
+    {
+        gprintk(XENLOG_DEBUG, "Trying to set CET without WP\n");
+        return X86EMUL_EXCEPTION;
+    }
+
     old_cr = v->arch.hvm.guest_cr[4];
 
     if ( (value & X86_CR4_PCIDE) && !(old_cr & X86_CR4_PCIDE) &&
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index c42f56bdd4..6f94a73408 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -232,7 +232,7 @@ XEN_CPUFEATURE(UMIP,          6*32+ 2) /*S  User Mode Instruction Prevention */
 XEN_CPUFEATURE(PKU,           6*32+ 3) /*H  Protection Keys for Userspace */
 XEN_CPUFEATURE(OSPKE,         6*32+ 4) /*!  OS Protection Keys Enable */
 XEN_CPUFEATURE(AVX512_VBMI2,  6*32+ 6) /*A  Additional AVX-512 Vector Byte Manipulation Instrs */
-XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*   CET - Shadow Stacks */
+XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*h  CET - Shadow Stacks */
 XEN_CPUFEATURE(GFNI,          6*32+ 8) /*A  Galois Field Instrs */
 XEN_CPUFEATURE(VAES,          6*32+ 9) /*A  Vector AES Instrs */
 XEN_CPUFEATURE(VPCLMULQDQ,    6*32+10) /*A  Vector Carry-less Multiplication Instrs */
@@ -267,7 +267,7 @@ XEN_CPUFEATURE(SRBDS_CTRL,    9*32+ 9) /*   MSR_MCU_OPT_CTRL and RNGDS_MITG_DIS.
 XEN_CPUFEATURE(MD_CLEAR,      9*32+10) /*A  VERW clears microarchitectural buffers */
 XEN_CPUFEATURE(TSX_FORCE_ABORT, 9*32+13) /* MSR_TSX_FORCE_ABORT.RTM_ABORT */
 XEN_CPUFEATURE(SERIALIZE,     9*32+14) /*a  SERIALIZE insn */
-XEN_CPUFEATURE(CET_IBT,       9*32+20) /*   CET - Indirect Branch Tracking */
+XEN_CPUFEATURE(CET_IBT,       9*32+20) /*h  CET - Indirect Branch Tracking */
 XEN_CPUFEATURE(IBRSB,         9*32+26) /*A  IBRS and IBPB support (used by Intel) */
 XEN_CPUFEATURE(STIBP,         9*32+27) /*A  STIBP */
 XEN_CPUFEATURE(L1D_FLUSH,     9*32+28) /*S  MSR_FLUSH_CMD and L1D flush. */
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 17:54:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 17:54:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117862.223806 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb5Rb-0005nI-Cx; Mon, 26 Apr 2021 17:54:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117862.223806; Mon, 26 Apr 2021 17: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 1lb5Rb-0005nA-9T; Mon, 26 Apr 2021 17:54:51 +0000
Received: by outflank-mailman (input) for mailman id 117862;
 Mon, 26 Apr 2021 17:54:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rjXZ=JX=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lb5RZ-0005en-7o
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 17:54:49 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2c1a38a8-caa3-4c52-bbec-486e8f184571;
 Mon, 26 Apr 2021 17:54: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: 2c1a38a8-caa3-4c52-bbec-486e8f184571
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619459683;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=TIlizZZ6/SV8wIV+HJj7CybmCt2XEZ70Xa/B8F5BtQ8=;
  b=c1Io0r+QDzNqq7Z1AHCVGEMx6Bn24e0gAmLJfnr3TPYfjyS1KlCaRhXg
   FiFPLSPF/Z7yenpTN86E5wNeFhid+asGFUW4snETIfAJQz6zjP9GpmeXN
   YqEmzmP/oBlW9QutP+YZXbclYpiOSox9x5Ewr2n5CwaIFrJqpp7AkVc4r
   4=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: aehgQZ+/NmRodpZ9D16q1mc5pNcQKyV/aE9VAYyl0d7leW+spjFIzsvC3kb/vyQkFm+w6lPH3E
 XR80BXh33vorbvjduxuVyHtUEJdef8z0ikvPL2tqSkq6+zK114MAd0jB6kaNZfWW75fy6hORYq
 4uD1Nsop3m3ij1oCysI2aQ9gvpfaSs70AFjRp8VqCYCUhPQwHTVstoc4OpJMG9b8hMzD5nV7iz
 fcVrVTIxENXWLnkGpjlIvs+pO9Vc7eWV6gil0yN/niRhg00MzjzdZ/tvupiYEl00iQy54S0stF
 hJc=
X-SBRS: 4.0
X-MesageID: 42553821
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:W7a0F6mWTV+u3jZQXfV+chzzwjPpDfKr3DAbvn1ZSRFFG/Gwve
 rGppUm/DXzjyscX2xlpMuJP7OOTWiZ2Zl+54QQOrnKZnifhEKDKoZ+4Yz+hwDxAiGWzJ8l6Y
 5Me7VzYeeAbmRSot395GCDfOoI4N7Cy6ywgPeb8nEFd3APV4hFzyNUTjmWCVd3Qg4uP+teKL
 O56tBcrzStPVQ7B/7LZEUtZOTIq93VmJ+OW3dvbHRLhDWmtj+m5KX3FBKVxH4lIlRy6Iwv7H
 TflEjB7rij2svLsSP07XPZ7JhdhbLaqudrOcrksKYoAwSprg6pYYh7Mofy2QwInA==
X-IronPort-AV: E=Sophos;i="5.82,252,1613451600"; 
   d="scan'208";a="42553821"
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>, Jun Nakajima
	<jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH 3/3] x86/VT-x: Enumeration for CET
Date: Mon, 26 Apr 2021 18:54:21 +0100
Message-ID: <20210426175421.30497-4-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
In-Reply-To: <20210426175421.30497-1-andrew.cooper3@citrix.com>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

VT-x has separate entry/exit control for loading guest/host state.  Saving
guest state on vmexit is performed unconditionally.

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: Jun Nakajima <jun.nakajima@intel.com>
CC: Kevin Tian <kevin.tian@intel.com>
---
 xen/arch/x86/hvm/vmx/vmcs.c        |  6 ++++++
 xen/include/asm-x86/hvm/vmx/vmcs.h | 11 ++++++++++-
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/hvm/vmx/vmcs.c b/xen/arch/x86/hvm/vmx/vmcs.c
index f9f9bc18cd..5849817630 100644
--- a/xen/arch/x86/hvm/vmx/vmcs.c
+++ b/xen/arch/x86/hvm/vmx/vmcs.c
@@ -2014,6 +2014,9 @@ void vmcs_dump_vcpu(struct vcpu *v)
     printk("RFLAGS=0x%08lx (0x%08lx)  DR7 = 0x%016lx\n",
            vmr(GUEST_RFLAGS), regs->rflags,
            vmr(GUEST_DR7));
+    if ( vmentry_ctl & VM_ENTRY_LOAD_GUEST_CET )
+        printk("SSP = 0x%016lx S_CET = 0x%016lx ISST = 0x%016lx\n",
+               vmr(GUEST_SSP), vmr(GUEST_S_CET), vmr(GUEST_ISST));
     printk("Sysenter RSP=%016lx CS:RIP=%04x:%016lx\n",
            vmr(GUEST_SYSENTER_ESP),
            vmr32(GUEST_SYSENTER_CS), vmr(GUEST_SYSENTER_EIP));
@@ -2057,6 +2060,9 @@ void vmcs_dump_vcpu(struct vcpu *v)
            vmr(HOST_GDTR_BASE), vmr(HOST_IDTR_BASE));
     printk("CR0=%016lx CR3=%016lx CR4=%016lx\n",
            vmr(HOST_CR0), vmr(HOST_CR3), vmr(HOST_CR4));
+    if ( vmexit_ctl & VM_EXIT_LOAD_HOST_CET )
+        printk("SSP = 0x%016lx S_CET = 0x%016lx ISST = 0x%016lx\n",
+               vmr(HOST_SSP), vmr(HOST_S_CET), vmr(HOST_ISST));
     printk("Sysenter RSP=%016lx CS:RIP=%04x:%016lx\n",
            vmr(HOST_SYSENTER_ESP),
            vmr32(HOST_SYSENTER_CS), vmr(HOST_SYSENTER_EIP));
diff --git a/xen/include/asm-x86/hvm/vmx/vmcs.h b/xen/include/asm-x86/hvm/vmx/vmcs.h
index 8073af323b..4c4246f190 100644
--- a/xen/include/asm-x86/hvm/vmx/vmcs.h
+++ b/xen/include/asm-x86/hvm/vmx/vmcs.h
@@ -46,7 +46,8 @@ struct ept_data {
             uint64_t mt:3,   /* Memory Type. */
                      wl:3,   /* Walk length -1. */
                      ad:1,   /* Enable EPT A/D bits. */
-                     :5,     /* rsvd. */
+                     sss:1,  /* Supervisor Shadow Stack. */
+                     :4,     /* rsvd. */
                      mfn:52;
         };
         u64 eptp;
@@ -238,6 +239,7 @@ extern u32 vmx_pin_based_exec_control;
 #define VM_EXIT_LOAD_HOST_EFER          0x00200000
 #define VM_EXIT_SAVE_PREEMPT_TIMER      0x00400000
 #define VM_EXIT_CLEAR_BNDCFGS           0x00800000
+#define VM_EXIT_LOAD_HOST_CET           0x10000000
 extern u32 vmx_vmexit_control;
 
 #define VM_ENTRY_IA32E_MODE             0x00000200
@@ -247,6 +249,7 @@ extern u32 vmx_vmexit_control;
 #define VM_ENTRY_LOAD_GUEST_PAT         0x00004000
 #define VM_ENTRY_LOAD_GUEST_EFER        0x00008000
 #define VM_ENTRY_LOAD_BNDCFGS           0x00010000
+#define VM_ENTRY_LOAD_GUEST_CET         0x00100000
 extern u32 vmx_vmentry_control;
 
 #define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES 0x00000001
@@ -516,6 +519,9 @@ enum vmcs_field {
     GUEST_PENDING_DBG_EXCEPTIONS    = 0x00006822,
     GUEST_SYSENTER_ESP              = 0x00006824,
     GUEST_SYSENTER_EIP              = 0x00006826,
+    GUEST_S_CET                     = 0x00006828,
+    GUEST_SSP                       = 0x0000682a,
+    GUEST_ISST                      = 0x0000682c,
     HOST_CR0                        = 0x00006c00,
     HOST_CR3                        = 0x00006c02,
     HOST_CR4                        = 0x00006c04,
@@ -528,6 +534,9 @@ enum vmcs_field {
     HOST_SYSENTER_EIP               = 0x00006c12,
     HOST_RSP                        = 0x00006c14,
     HOST_RIP                        = 0x00006c16,
+    HOST_S_CET                      = 0x00006c18,
+    HOST_SSP                        = 0x00006c1a,
+    HOST_ISST                       = 0x00006c1c,
 };
 
 #define VMCS_VPID_WIDTH 16
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 17:54:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 17:54:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117863.223812 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb5Rb-0005nv-P8; Mon, 26 Apr 2021 17:54:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117863.223812; Mon, 26 Apr 2021 17: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 1lb5Rb-0005nf-Ij; Mon, 26 Apr 2021 17:54:51 +0000
Received: by outflank-mailman (input) for mailman id 117863;
 Mon, 26 Apr 2021 17:54:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rjXZ=JX=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lb5RZ-0005es-LI
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 17:54:49 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c2509d97-e291-4486-b22f-ee6565b601a7;
 Mon, 26 Apr 2021 17:54: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: c2509d97-e291-4486-b22f-ee6565b601a7
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619459687;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=U+WoR/W6bembQjWIT6B8eKI+oOn2O6XV4PVMTKQwpn8=;
  b=eQukbDc4r6XsZd/L3AyEsjqpOYHo2/MX3L9ZFP78sj08Gx2rrLijE8nH
   /hmYau212b6t6XtLDCq+d4ryzb+BJ5WXApz5kM+l8wasaRXkwR7KBs+qj
   n1+O5/SF9R8svf7oLDbFCvazaRsmte8eoJX84s+AxsWbQUd3NbR75LbtW
   I=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: iBVDQd1bj29weW1h2hyFJpLX+LSdPxMwZhebu2gV/b4NzPFZDILW+53yVsyIDPXEP5vDljUuIz
 8waaCfxSHBO4kx+JUjjz0tJJCeIM1B4nYLvu0DN4DWSOXxKNyceXO2g/SzOgTBgXjH/PuPHx2F
 zk1671X6cCQ/lJ8LN3/oi0/l0Hw/DyE8C+Am5kHS6xxvU+UcyZcxus1sjge/psEjiihQIBOcc7
 AHHHKRZX8e7oc4h0LydwmYBDlV73goNZUk6LzeSo0mE1JzknLY78sewhcDqGYA/aDChz542qbS
 2YI=
X-SBRS: 4.0
X-MesageID: 42818497
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:1B65kq3E0qULAibdA6WiVAqjBFYkLtp033Aq2lEZdDV+WKWj+f
 yGtvIdyBPylXItQ3kmg9+NI+2tRnnb+J5z7+AqTNCfdSPhv3alK5wn0Jv6z1TbaknD38NUyK
 sISchDIfLqC1wSt6rHyS2ZN/pl/9Wd6qCvgo7lvhJQZCVncbtp4Qs8KivzKDwUeCB8CZA0FI
 WR66N8zlLKExkqR/+2G2UfWKz7r8DL/aiWByIuPQIt6wWFkFqTiYLSLh7w5HgjegIK5b8j9G
 Tf+jaJhJmejw==
X-IronPort-AV: E=Sophos;i="5.82,252,1613451600"; 
   d="scan'208";a="42818497"
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>, Jun Nakajima
	<jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH 0/3] x86: Initial pieces for guest CET support
Date: Mon, 26 Apr 2021 18:54:18 +0100
Message-ID: <20210426175421.30497-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Some initial pieces for guest support.  Everything will currently malfunction
for VMs which explicitly opt in to CET_SS/IBT.

Still TODO as a minimum:
 * Teach the pagewalk logic about shadow stack accesses and errors.
 * Emulator support for the new instructions.  WRUSS is an irritating corner
   case, requiring a change to how we express pagewalk inputs, as
   user/supervisor is no longer dependent on CPL.
 * Context switching of U/S_CET state.  Recommended way is with XSAVES, except
   the S_CET has broken sematics - it ends up as a mix of host and guest
   state, and isn't safe to XRSTOR without editing what the CPU wrote out.

The above ought to suffice for getting some XTF testing in place.  For general
guest support:
 * In-guest XSAVES support.  Windows is the only OS to support CET at the time
   of writing, and it cross-checks for XSAVES.  Linux expected to perform the
   same cross-check in due course.

Stretch features (not for initial support):
  * Adding EPT/NPT Supervisor Shadow Stack protections into mem_access, so
    introspection can block aliasing attacks.

Andrew Cooper (3):
  x86/hvm: Introduce experimental guest CET support
  x86/svm: Enumeration for CET
  x86/VT-x: Enumeration for CET

 xen/arch/x86/hvm/hvm.c                      | 18 ++++++++++++++++--
 xen/arch/x86/hvm/svm/svm.c                  |  1 +
 xen/arch/x86/hvm/svm/svmdebug.c             |  2 ++
 xen/arch/x86/hvm/vmx/vmcs.c                 |  6 ++++++
 xen/include/asm-x86/hvm/svm/svm.h           |  2 ++
 xen/include/asm-x86/hvm/svm/vmcb.h          | 10 ++++++++--
 xen/include/asm-x86/hvm/vmx/vmcs.h          | 11 ++++++++++-
 xen/include/public/arch-x86/cpufeatureset.h |  4 ++--
 8 files changed, 47 insertions(+), 7 deletions(-)

-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Mon Apr 26 17:55:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 17:55:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117877.223829 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb5S7-00065D-1d; Mon, 26 Apr 2021 17:55:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117877.223829; Mon, 26 Apr 2021 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 1lb5S6-000656-Ux; Mon, 26 Apr 2021 17:55:22 +0000
Received: by outflank-mailman (input) for mailman id 117877;
 Mon, 26 Apr 2021 17:55:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=/oNb=JX=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lb5S6-00063z-4b
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 17:55:22 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 29f2d5a3-d2a7-4d32-942e-728e8f647f4a;
 Mon, 26 Apr 2021 17:55:21 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lb5S3-000668-KQ; Mon, 26 Apr 2021 17:55:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 29f2d5a3-d2a7-4d32-942e-728e8f647f4a
Date: Mon, 26 Apr 2021 18:55:19 +0100
From: Tim Deegan <tim@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Jun Nakajima <jun.nakajima@intel.com>
Subject: Re: [PATCH v4 1/3] VMX: use a single, global APIC access page
Message-ID: <YIb+h9BKG5w+Px6P@deinos.phlegethon.org>
References: <4731a3a3-906a-98ac-11ba-6a0723903391@suse.com>
 <3e7ad009-f062-d58a-9380-103ce1573a73@suse.com>
 <837a427a-a74e-00e9-70c7-1d3cfa28b30c@suse.com>
 <YILXDfXfR69mwfHH@Air-de-Roger>
 <d4c91967-2934-5b55-4228-e8028a5c4290@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <d4c91967-2934-5b55-4228-e8028a5c4290@suse.com>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 16:42 +0200 on 23 Apr (1619196141), Jan Beulich wrote:
> On 23.04.2021 16:17, Roger Pau Monn wrote:
> > On Fri, Apr 23, 2021 at 12:52:57PM +0200, Jan Beulich wrote:
> >> +    if ( mfn_valid(mfn = shadow_l1e_get_mfn(sl1e)) &&
> > 
> > Nit: I would prefer if assigned mfn outside of the condition, like
> > it's done in the chunk added to shadow_get_page_from_l1e.
> 
> Well, I did it differently here because the variable really is
> only needed inside the if(), whereas in "get" the subsequent
> patches use it elsewhere as well. I'll wait what Tim says.

No strong feelings on this, but since you asked me, I would also
prefer it to be outside the condition.

Cheers,

Tim.


From xen-devel-bounces@lists.xenproject.org Mon Apr 26 22:45:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 26 Apr 2021 22:45:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117926.223848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lb9yL-0006oH-2u; Mon, 26 Apr 2021 22:44:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117926.223848; Mon, 26 Apr 2021 22:44: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 1lb9yK-0006oA-VP; Mon, 26 Apr 2021 22:44:56 +0000
Received: by outflank-mailman (input) for mailman id 117926;
 Mon, 26 Apr 2021 22:44: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 1lb9yJ-0006o2-6D; Mon, 26 Apr 2021 22:44: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 1lb9yI-0002Kk-QM; Mon, 26 Apr 2021 22:44: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 1lb9yI-0001rd-Eb; Mon, 26 Apr 2021 22:44:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lb9yI-0007Xx-E6; Mon, 26 Apr 2021 22: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=cTP4AuBrAMe/wmWakjP0RYab6kMKjmgLiRh9srqW+eU=; b=rUB87Ospumm9Ja48xeod27o+tx
	HTJQmrzqqpTW34QuW60NcE3v5tx/hr/vejMeEiSe2FsA49MTxPnUmGePwVH//6GTm/7MI4wEc9iqa
	K4+q2GexPTigTKAp34aKCWJELNmzrRK1D+3CgZzzdDyxB0a4I4NByeimlFwO3rgeQOFQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161464-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161464: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    qemu-mainline:test-armhf-armhf-xl:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-vhd:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-cubietruck:<job status>:broken:regression
    qemu-mainline:test-armhf-armhf-xl-credit2:<job status>:broken:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-xl-rtds:debian-install:fail:heisenbug
    qemu-mainline:test-armhf-armhf-xl-multivcpu:debian-install:fail:heisenbug
    qemu-mainline:test-armhf-armhf-xl-arndale:debian-install:fail:heisenbug
    qemu-mainline:test-armhf-armhf-xl-vhd:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl:host-install(5):broken:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=ffa090bc56e73e287a63261e70ac02c0970be61a
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 26 Apr 2021 22:44:54 +0000

flight 161464 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161464/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl             <job status>                 broken
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-vhd         <job status>                 broken
 test-armhf-armhf-xl-cubietruck    <job status>                 broken
 test-armhf-armhf-xl-credit2     <job status>                 broken
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-rtds     12 debian-install             fail pass in 161455
 test-armhf-armhf-xl-multivcpu 12 debian-install            fail pass in 161455
 test-armhf-armhf-xl-arndale  12 debian-install             fail pass in 161455

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-vhd       5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-credit1   5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-credit2   5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-cubietruck  5 host-install(5)     broken blocked in 152631
 test-armhf-armhf-xl           5 host-install(5)       broken blocked in 152631
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 161455 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 161455 never pass
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 161455 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 161455 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 161455 never pass
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 161455 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 161455 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 161455 never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check fail in 161455 never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check fail in 161455 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 161455 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 161455 never pass
 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 161455 never pass
 test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 161455 never pass
 test-armhf-armhf-xl         15 migrate-support-check fail in 161455 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 161455 never pass
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 qemuu                ffa090bc56e73e287a63261e70ac02c0970be61a
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  249 days
Failing since        152659  2020-08-21 14:07:39 Z  248 days  457 attempts
Testing same since   161419  2021-04-24 00:07:02 Z    2 days    5 attempts

------------------------------------------------------------
478 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                                          broken  
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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                                  fail    
 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                                  broken  
 test-armhf-armhf-xl-cubietruck                               broken  
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      fail    
 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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-armhf-armhf-xl-vhd                                      broken  


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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 broken
broken-job test-armhf-armhf-xl-credit1 broken
broken-job test-armhf-armhf-xl-vhd broken
broken-job test-armhf-armhf-xl-cubietruck broken
broken-job test-armhf-armhf-xl-credit2 broken
broken-step test-armhf-armhf-xl-vhd host-install(5)
broken-step test-armhf-armhf-xl-credit1 host-install(5)
broken-step test-armhf-armhf-xl-credit2 host-install(5)
broken-step test-armhf-armhf-xl-cubietruck host-install(5)
broken-step test-armhf-armhf-xl host-install(5)

Not pushing.

(No revision log; it would be 143011 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 00:23:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 00:23:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117946.223887 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbBW0-0007r6-19; Tue, 27 Apr 2021 00:23:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117946.223887; Tue, 27 Apr 2021 00:23: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 1lbBVz-0007qw-Tu; Tue, 27 Apr 2021 00:23:47 +0000
Received: by outflank-mailman (input) for mailman id 117946;
 Tue, 27 Apr 2021 00:23:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=+jew=JY=invisiblethingslab.com=marmarek@srs-us1.protection.inumbo.net>)
 id 1lbBVy-0007mO-IG
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 00:23:46 +0000
Received: from out1-smtp.messagingengine.com (unknown [66.111.4.25])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8e946aa0-51b7-41c1-ac44-77d88261096f;
 Tue, 27 Apr 2021 00:23:37 +0000 (UTC)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id 798F45C017C;
 Mon, 26 Apr 2021 20:23:37 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute3.internal (MEProxy); Mon, 26 Apr 2021 20:23:37 -0400
Received: from localhost.localdomain (ip5b434f04.dynamic.kabel-deutschland.de
 [91.67.79.4])
 by mail.messagingengine.com (Postfix) with ESMTPA id BAAD6108005F;
 Mon, 26 Apr 2021 20:23:36 -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: 8e946aa0-51b7-41c1-ac44-77d88261096f
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; bh=c2QDLs+tJ379utFzbl/w+Nqe4CBOem8f00hNMpbEn
	bU=; b=AJXJHgSOQcqW0r01N3LcHa4VJa1gE4dtvghNkuJbrgkVZiecPzGKXSY/+
	oCNM8kkzWcyyRfLg6xU7BUvLVZrWanIVNnXR4XPhT9Ospu+xOaxLE0CaYQHiKVGF
	hUjwR1ZcqKitWWxdKH5DmpViUCzinSivzI4K88vfsz/85YYJ3j2gD/hiC3s6EqPV
	Bv2510pdw0ap/aYRyFEmNrIYGMF6zWoPBCOl9bQWX5soNNDcGCtfESP9Z1iDaAF+
	ygYtINZ68CNlibKCL0f2WLklhkO+4n1eijQ7bQznq7d5NLa9Rkx//vK4iRw/NNLQ
	wrvMBLtvjneE/ZSCoXbO2yuU40VRA==
X-ME-Sender: <xms:iVmHYLES6LrHJBbVSoVJsGIFYyRl1csw2XT7lNU26KP4tJqFIq3cvg>
    <xme:iVmHYEPOq8UfXT6iFemZw3ORNfLb7VwG_soJLGoQj_zqRybKJFrdDW2XHgY1YgRLD
    GZNLTH41ASclw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvdduledgieefucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhephffvufffkffojghfgggtgfesthekredtredtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfei
    ueethfeivdetffetueeftdeileeiteeiudefveeugedvfeeggeeiudekteeunecuffhomh
    grihhnpehpohgurdhinhenucfkphepledurdeijedrjeelrdegnecuvehluhhsthgvrhfu
    ihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghksehinhhvih
    hsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:iVmHYKIfBpX-ZZLYSKL2n0earZEEWS2kQO-24x6U1R89Htb3cEd6Ig>
    <xmx:iVmHYN9ukFa6j4YYTUvOOCbWjtecmAKXbAlMGb0VgLbqQKqthWCA7A>
    <xmx:iVmHYGHIAP-wbZ_zBom0lfp5L6r0pcfGtzavtLcxXV1-ga7tkUtjBA>
    <xmx:iVmHYIwCEvDOaLoJU2mEw_ekMcM_x3QzKF5nmwObnTw4MkrowArQjQ>
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>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [RFC PATCH 2/2] libxl: allow to skip block script completely
Date: Tue, 27 Apr 2021 02:22:32 +0200
Message-Id: <25fbb81f8f7805a390613521dadedaeab4cd4563.1619482896.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.26.3
In-Reply-To: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
References: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Default block script is quite slow and requires global lock which slows
it down even more (for domains with multiple disks). The common case of
a block device-based disk is trivial to handle and does not require
locking. This can be handled directly within libxl, to avoid slow script
execution and waiting for it to finish. This, depending on the hardware,
may save about 0.5s of domain start time per disk.

Allow setting script name to empty string to skip executing the script
at all, and use target name as a block device path directly.

This does skip two functions of the block script:
 - checking if device isn't used anywhere else (including mounted in
   dom0)
 - setting up loop device for a file-based disk

The former is expected to be done by the operator manually (or by a
higher level management stack, that calls into libxl). The later is a
limitation of the current implementation, but should be possible to
extend in the future.

The code to fill 'physical-device' xenstore node is added via
libxl__hotplug_disk() (in libxl_linux.c) intentionally. This code is
called in device backend domain (which may be not dom0), contrary to
device_disk_add() which fills all the other xenstore entries, but is
called always in the toolstack domain (dom0).
libxl__hoplug_disk() is called from libxl__get_hotplug_script_info(),
which may not sound like the most logical place to actually change
some state, but it is called when we need it.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 docs/man/xl-disk-configuration.5.pod.in |  4 ++-
 tools/libs/light/libxl_disk.c           |  7 ++-
 tools/libs/light/libxl_linux.c          | 62 ++++++++++++++++++++++++++-
 3 files changed, 71 insertions(+), 2 deletions(-)

diff --git a/docs/man/xl-disk-configuration.5.pod.in b/docs/man/xl-disk-configuration.5.pod.in
index 71d0e86e3d63..3b3b3c329e13 100644
--- a/docs/man/xl-disk-configuration.5.pod.in
+++ b/docs/man/xl-disk-configuration.5.pod.in
@@ -261,6 +261,10 @@ information to be interpreted by the executable program I<SCRIPT>,
 
 These scripts are normally called "block-I<SCRIPT>".
 
+Setting empty script avoids calling the hoplug script at all (including
+the default one). It skips device sharing safety check and
+requires the target to point at a block device. Empty script value is supported
+on Linux backend domain only.
 
 =item B<direct-io-safe>
 
diff --git a/tools/libs/light/libxl_disk.c b/tools/libs/light/libxl_disk.c
index 411ffeaca6ce..4278db449a2f 100644
--- a/tools/libs/light/libxl_disk.c
+++ b/tools/libs/light/libxl_disk.c
@@ -324,8 +324,11 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
                 flexarray_append(back, "params");
                 flexarray_append(back, dev);
 
-                script = libxl__abs_path(gc, disk->script?: "block",
-                                         libxl__xen_script_dir_path());
+                if (disk->script && !disk->script[0])
+                    script = "";
+                else
+                    script = libxl__abs_path(gc, disk->script?: "block",
+                                             libxl__xen_script_dir_path());
                 flexarray_append_pair(back, "script", script);
 
                 assert(device->backend_kind == LIBXL__DEVICE_KIND_VBD);
diff --git a/tools/libs/light/libxl_linux.c b/tools/libs/light/libxl_linux.c
index cc8baf5c3eae..8832f2c6483a 100644
--- a/tools/libs/light/libxl_linux.c
+++ b/tools/libs/light/libxl_linux.c
@@ -160,6 +160,62 @@ out:
     return rc;
 }
 
+static int libxl__hotplug_disk_direct_add(libxl__gc *gc, libxl__device *dev,
+                                      const char *be_path)
+{
+    char *params;
+    xs_transaction_t t = XBT_NULL;
+    struct stat st;
+    int rc = 0;
+    char *xs_kvs[] = { "physical-device", NULL,
+                       "physical-device-path", NULL,
+                       "hotplug-status", "connected",
+                       NULL, NULL, };
+
+    for (;;) {
+        rc = libxl__xs_transaction_start(gc, &t);
+        if (rc) goto error;
+
+        params = libxl__xs_read(gc, t,
+                                GCSPRINTF("%s/%s", be_path, "params"));
+        if (!params) {
+            rc = ERROR_FAIL;
+            goto error;
+        }
+
+        if (stat(params, &st) == -1) {
+            LOGED(ERROR, dev->domid, "failed to stat %s", params);
+            rc = ERROR_FAIL;
+            goto error;
+        }
+
+        if ((st.st_mode & S_IFMT) != S_IFBLK) {
+            LOGD(ERROR, dev->domid, "not a block device: %s", params);
+            rc = ERROR_FAIL;
+            goto error;
+        }
+
+        xs_kvs[1] = GCSPRINTF("%x:%x", major(st.st_rdev), minor(st.st_rdev));
+        xs_kvs[3] = params;
+        rc = libxl__xs_writev(gc, t, be_path, xs_kvs);
+        if (rc) goto error;
+
+        rc = libxl__xs_transaction_commit(gc, &t);
+        if (!rc) break;
+        if (rc < 0) goto error;
+    }
+
+    return 0;
+
+error:
+    libxl__xs_transaction_abort(gc, &t);
+    if (libxl__xs_write_checked(gc, XBT_NULL,
+                                GCSPRINTF("%s/%s", be_path, "hotplug-status"),
+                                "error"))
+        LOGD(ERROR, dev->domid, "failed to write 'hotplug-status'");
+    return rc;
+}
+
 static int libxl__hotplug_disk(libxl__gc *gc, libxl__device *dev,
                                char ***args, char ***env,
                                libxl__device_action action)
@@ -177,6 +233,12 @@ static int libxl__hotplug_disk(libxl__gc *gc, libxl__device *dev,
         goto out;
     }
 
+    if (!script[0]) {
+        if (action == LIBXL__DEVICE_ACTION_ADD)
+            rc = libxl__hotplug_disk_direct_add(gc, dev, be_path);
+        goto out;
+    }
+
     *env = get_hotplug_env(gc, script, dev);
     if (!*env) {
         LOGD(ERROR, dev->domid, "Failed to get hotplug environment");
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 00:23:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 00:23:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117945.223875 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbBVu-0007o4-Nc; Tue, 27 Apr 2021 00:23:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117945.223875; Tue, 27 Apr 2021 00:23: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 1lbBVu-0007nx-KG; Tue, 27 Apr 2021 00:23:42 +0000
Received: by outflank-mailman (input) for mailman id 117945;
 Tue, 27 Apr 2021 00:23:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=+jew=JY=invisiblethingslab.com=marmarek@srs-us1.protection.inumbo.net>)
 id 1lbBVt-0007mO-Hv
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 00:23:41 +0000
Received: from out1-smtp.messagingengine.com (unknown [66.111.4.25])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ff006c37-d6e3-459e-b112-eb77e50d2c5c;
 Tue, 27 Apr 2021 00:23:36 +0000 (UTC)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id 8D7155C0186;
 Mon, 26 Apr 2021 20:23:36 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute3.internal (MEProxy); Mon, 26 Apr 2021 20:23:36 -0400
Received: from localhost.localdomain (ip5b434f04.dynamic.kabel-deutschland.de
 [91.67.79.4])
 by mail.messagingengine.com (Postfix) with ESMTPA id CFF411080069;
 Mon, 26 Apr 2021 20:23: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: ff006c37-d6e3-459e-b112-eb77e50d2c5c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; bh=gATBZhf8O/GcC36i+t7uFp1kBc9s8YNPkw1529oUZ
	4k=; b=jDabQXVSz8HPFf8uOdBIg9gjT4yW2qRtksPiEFN70PJUfAz2iyfxz531N
	ReTWL4PfGcVaPcSr7Yj0Lui4DFicUWIUG+KKWzDX9tSJ9/M95IUnJ0ienNfRZngb
	H7KGDywlK/6aoJu2ISk2CgOTyHkYTTpr7EXlMvEyMYANVFhCDe09C39yvheh+zyn
	xwHdK1xvgMVQjgIX+gjB90c0TMmTtRnXC0MjWGUg76p573/TNjS/kR4SzpgIXNlx
	X5CJZ/wQE/mjUvT/5+0RVYcKKINqAKwP7Idy/4lNGcrqLhHCTi6+Rallqqk54WzB
	YlfAbBD+A8qLcOCYkPfmcRnzGnj9Q==
X-ME-Sender: <xms:iFmHYK6VOaSGXQ4VDvf4AD6MN7dxgcleu0RqFrfwSDid0vdeynw29Q>
    <xme:iFmHYMJZ5Pca2g5V-Zi07U0emXlnxnD6wDRgMoyaJEVABmEwjefATS0JOze47DRhs
    tC4FgGrrsqPnw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvdduledgieefucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhephffvufffkffojghfgggtgfesthekredtredtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepkeff
    ieeiuedvudekgfetgfelveffhfeuieejgeelhefhteethedtheeuteekvdeinecukfhppe
    eluddrieejrdejledrgeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgr
    ihhlfhhrohhmpehmrghrmhgrrhgvkhesihhnvhhishhisghlvghthhhinhhgshhlrggsrd
    gtohhm
X-ME-Proxy: <xmx:iFmHYPXTk63JSmeHGpsD2XXOIQa8I6nqYYLvJiMC9Wwl9vjTU9ZH2A>
    <xmx:iFmHYI15lQ8PUaffHYHetmWBUr32RyBGWkh6eaysaE08cYZqLeatkw>
    <xmx:iFmHYD1zncQdvgq6DzY_XIixOhlTKdkDTL4GCkUFrjm91c12ce2YBw>
    <xmx:iFmHYG1FMktnUxCrKAqzMR6WnA9MIYeEyGzFetsvsIxg24m_VBBiCA>
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>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [RFC PATCH 1/2] libxl: rename 'error' label to 'out' as it is used for success too
Date: Tue, 27 Apr 2021 02:22:31 +0200
Message-Id: <ccd0fa66b7a87a66556e5494a9534873009b80bc.1619482896.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.26.3
In-Reply-To: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
References: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 tools/libs/light/libxl_linux.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/libs/light/libxl_linux.c b/tools/libs/light/libxl_linux.c
index 8d62dfd255cb..cc8baf5c3eae 100644
--- a/tools/libs/light/libxl_linux.c
+++ b/tools/libs/light/libxl_linux.c
@@ -174,14 +174,14 @@ static int libxl__hotplug_disk(libxl__gc *gc, libxl__device *dev,
         LOGEVD(ERROR, errno, dev->domid,
                "unable to read script from %s", be_path);
         rc = ERROR_FAIL;
-        goto error;
+        goto out;
     }
 
     *env = get_hotplug_env(gc, script, dev);
     if (!*env) {
         LOGD(ERROR, dev->domid, "Failed to get hotplug environment");
         rc = ERROR_FAIL;
-        goto error;
+        goto out;
     }
 
     const int arraysize = 3;
@@ -194,7 +194,7 @@ static int libxl__hotplug_disk(libxl__gc *gc, libxl__device *dev,
     LOGD(DEBUG, dev->domid, "Args and environment ready");
     rc = 1;
 
-error:
+out:
     return rc;
 }
 
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 00:23:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 00:23:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117944.223863 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbBVq-0007mq-EJ; Tue, 27 Apr 2021 00:23:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117944.223863; Tue, 27 Apr 2021 00:23: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 1lbBVq-0007mj-BA; Tue, 27 Apr 2021 00:23:38 +0000
Received: by outflank-mailman (input) for mailman id 117944;
 Tue, 27 Apr 2021 00:23:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=+jew=JY=invisiblethingslab.com=marmarek@srs-us1.protection.inumbo.net>)
 id 1lbBVo-0007mO-NU
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 00:23:36 +0000
Received: from out1-smtp.messagingengine.com (unknown [66.111.4.25])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5cfe31a5-7ee7-4350-b395-082a8645ab5d;
 Tue, 27 Apr 2021 00:23:36 +0000 (UTC)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id C94975C0185;
 Mon, 26 Apr 2021 20:23:35 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute3.internal (MEProxy); Mon, 26 Apr 2021 20:23:35 -0400
Received: from localhost.localdomain (ip5b434f04.dynamic.kabel-deutschland.de
 [91.67.79.4])
 by mail.messagingengine.com (Postfix) with ESMTPA id DE1C11080066;
 Mon, 26 Apr 2021 20:23: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: 5cfe31a5-7ee7-4350-b395-082a8645ab5d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-transfer-encoding:content-type
	:date:from:message-id:mime-version:subject:to:x-me-proxy
	:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=9JA14x
	ievcjIUIwWayy4OYytev3Y9fSXpEqU52FkmQk=; b=W8w0PEipskmQ1hyE4Z6w60
	DtvGC1V2p44UmGSWjkTZ3EkGk6zcqAr15mzIAXDpb5EuDV6uBPG3rvKWI8YOAjGx
	bVsLEIfG17sL529hx3xcD/TXMYGyPgBR3pS5JoV8j9EXtjVLB+9e/VmnvsCfPZ0/
	x75xs3A1bmJVtMppKA5k2qhM/GR2H8sUXp3O4jpviQnP3+QaWfFFvw+NjdZW+jEH
	zZgGNfv/ij+80vwcK74uij7sOVDeTZpD6nXGMfQ+mtcWJi2oeQaZuOTZm/anXcxV
	Grj0EoI6IESEqpKUbqXkM8c/Fu/Xbb+zhJqQrk/YKXRVjrzjI7Rbm96r98KjHxVQ
	==
X-ME-Sender: <xms:h1mHYKOKWyKxNG5FRFigk1C-zodKMFnyRio7_7KVhYCB96WYDcXkzA>
    <xme:h1mHYKUQ52kKLhFIbiVday7keWcFcgwhUzVM2zOzcC8LJjUjvTCi9hIzOlwXxR3Ay
    DpmC579CKqBOw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvdduledgieefucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhephffvufffkffogggtgfesthekredtredtjeenucfhrhhomhepofgrrhgvkhcu
    ofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinhhvih
    hsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnheptdevvdev
    ffetffevhfevhffhteefffdvheelleffjeelhfefgfeljeejffekueefnecuffhomhgrih
    hnpehpohgurdhinhenucfkphepledurdeijedrjeelrdegnecuvehluhhsthgvrhfuihii
    vgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghksehinhhvihhsih
    gslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:h1mHYKgTKbquht3y9I6IlNcuZKcQcNycLlUxelelSKt5GHvk_CbL0w>
    <xmx:h1mHYC8F_f39II1hyJDw_ZbM7Yg2yY5srlcctuutjHBN8ucaSBYxig>
    <xmx:h1mHYJR4XRZrf73cPf3BjvMgvYHqt_ZyTiuf4APE8twx8N6CnBEVuw>
    <xmx:h1mHYGT7Jc1cDcW62WLLuyyHHV-aoCwGizZ0Zln1Ck-4k65uLZwR2g>
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>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [RFC PATCH 0/2] libxl: support common cases without block script
Date: Tue, 27 Apr 2021 02:22:30 +0200
Message-Id: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.26.3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This series in an attempt to speed up the domain start by removing slow block
script from the picture. The current RFC covers the simplest possible case only
- target being a block device directly. This case does not require locking at
all. Further version will cover also setting up a loop device.

This, compared to the default block script, saves about 0.5s of domain start
time, per disk. Similar speedup can be achieved with a trivial lock-less script
too. But for file-based disks, it won't be that simple with a script - setting
up a loop device lock-less is tricky and ability to keep an FD open and call
different ioctls on it greatly helps. Furthermore reusing the same loop device
for the same file can be done significantly better with a cache (which can be
stored in the libxl hosting process - like xl devd, or libvirt).

This surely isn't the only option to improve disk setup time, but is a very
atractive one. Few questions:
1. Is it acceptable approach at all?
2. Is empty 'script' parameter value going to fly? Unfortunately, NULL is
   already taken as "use default".

Marek Marczykowski-Górecki (2):
  libxl: rename 'error' label to 'out' as it is used for success too
  libxl: allow to skip block script completely

 docs/man/xl-disk-configuration.5.pod.in |  4 ++-
 tools/libs/light/libxl_disk.c           |  7 ++-
 tools/libs/light/libxl_linux.c          | 68 ++++++++++++++++++++++++--
 3 files changed, 74 insertions(+), 5 deletions(-)

base-commit: bea65a212c0581520203b6ad0d07615693f42f73
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 00:34:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 00:34:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117959.223899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbBft-0000ao-1s; Tue, 27 Apr 2021 00:34:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117959.223899; Tue, 27 Apr 2021 00:34: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 1lbBfs-0000ah-Uj; Tue, 27 Apr 2021 00:34:00 +0000
Received: by outflank-mailman (input) for mailman id 117959;
 Tue, 27 Apr 2021 00:33: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 1lbBfr-0000aZ-4X; Tue, 27 Apr 2021 00:33: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 1lbBfq-00057W-VI; Tue, 27 Apr 2021 00:33: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 1lbBfq-0007NO-Jw; Tue, 27 Apr 2021 00:33:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbBfq-0004Jb-JR; Tue, 27 Apr 2021 00:33:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=sujppvLPlXVgYqdNcrghpU+0IVNlJzynaGEsFG58OVQ=; b=RBpn5kXYQ6PI3VlS/7wVtLiVCP
	0DLc2ka1dBLvONUCDqebzViM7w7xYCW36wnrLFBOq2PI0ajF97r3QlEc2RTGCIqWP7nzU0anqmM35
	TJOZYdi9erXEheF9MrdZ/faxoPQaNQ7OEU0lqljUbhGHAoAagyGAKJ6FYspUuK7N/ZbA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161469-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161469: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=5396354b868bd6652600a654bba7df16701ac1cb
X-Osstest-Versions-That:
    ovmf=f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 00:33:58 +0000

flight 161469 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161469/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 5396354b868bd6652600a654bba7df16701ac1cb
baseline version:
 ovmf                 f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294

Last test of basis   161417  2021-04-23 22:13:28 Z    3 days
Testing same since   161469  2021-04-26 16:40:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jiaqi Gao <jiaqi.gao@intel.com>
  Jiewen Yao <jiewen.yao@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
   f2f4c6be2d..5396354b86  5396354b868bd6652600a654bba7df16701ac1cb -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 05:23:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 05:23:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117992.223920 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbGBt-0007Sf-St; Tue, 27 Apr 2021 05:23:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117992.223920; Tue, 27 Apr 2021 05: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 1lbGBt-0007SY-OF; Tue, 27 Apr 2021 05:23:21 +0000
Received: by outflank-mailman (input) for mailman id 117992;
 Tue, 27 Apr 2021 05:23: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 1lbGBs-0007SQ-MH; Tue, 27 Apr 2021 05:23: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 1lbGBs-0007be-CP; Tue, 27 Apr 2021 05: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 1lbGBs-0006Vc-1x; Tue, 27 Apr 2021 05:23:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbGBs-0007LV-1U; Tue, 27 Apr 2021 05: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=CTTuRxKSu7Q41p5vrJ6zqDSuCZCOlHUVWELInpU6o+s=; b=6TPFokH9Ba2l1ApTGCkE0uhkv1
	FcAmpkyfv1PYpH+CAfpPlY2PMiGVvD6q95w0X5wAoretdyZengCW3apV/jSG0c9ngXTYjkTouk1wz
	ylYAB4ZuMWlH5t3LtyNF7w2/1FIvpJZlWWseYvk2gguwIWHAi8GAFaRDKwTuXRCIbuJw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161465-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161465: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 05:23:20 +0000

flight 161465 xen-4.12-testing real [real]
flight 161474 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161465/
http://logs.test-lab.xenproject.org/osstest/logs/161474/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161442 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 161454 pass in 161465
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161442
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 161454

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   69 days
Failing since        160128  2021-03-18 14:36:18 Z   39 days   52 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   38 days   50 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 06:30:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 06:30:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118008.223935 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHE8-0004bD-7A; Tue, 27 Apr 2021 06:29:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118008.223935; Tue, 27 Apr 2021 06:29:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHE8-0004b6-3U; Tue, 27 Apr 2021 06:29:44 +0000
Received: by outflank-mailman (input) for mailman id 118008;
 Tue, 27 Apr 2021 06:29:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cl93=JY=arm.com=henry.wang@srs-us1.protection.inumbo.net>)
 id 1lbHE6-0004al-2B
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 06:29:42 +0000
Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown
 [40.107.1.61]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 273f6daa-7ec0-4408-b0f8-cdf0bf88804b;
 Tue, 27 Apr 2021 06:29:38 +0000 (UTC)
Received: from AM6P195CA0032.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:81::45)
 by DB7PR08MB3387.eurprd08.prod.outlook.com (2603:10a6:10:45::30) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.23; Tue, 27 Apr
 2021 06:29:36 +0000
Received: from AM5EUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:81:cafe::c3) by AM6P195CA0032.outlook.office365.com
 (2603:10a6:209:81::45) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend
 Transport; Tue, 27 Apr 2021 06:29:36 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT061.mail.protection.outlook.com (10.152.16.247) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Tue, 27 Apr 2021 06:29:34 +0000
Received: ("Tessian outbound 34291f7cb530:v90");
 Tue, 27 Apr 2021 06:29:33 +0000
Received: from 0f1bfd6ecc37.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 EAE6AC4B-45E6-4F4E-A733-EC4656B7AEBC.1; 
 Tue, 27 Apr 2021 06:29:27 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0f1bfd6ecc37.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 27 Apr 2021 06:29:27 +0000
Received: from PA4PR08MB6253.eurprd08.prod.outlook.com (2603:10a6:102:e4::8)
 by PR3PR08MB5723.eurprd08.prod.outlook.com (2603:10a6:102:89::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.23; Tue, 27 Apr
 2021 06:29:25 +0000
Received: from PA4PR08MB6253.eurprd08.prod.outlook.com
 ([fe80::19f9:d346:b9af:5cad]) by PA4PR08MB6253.eurprd08.prod.outlook.com
 ([fe80::19f9:d346:b9af:5cad%3]) with mapi id 15.20.4065.027; Tue, 27 Apr 2021
 06:29: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: 273f6daa-7ec0-4408-b0f8-cdf0bf88804b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Jb2FS5OzopljNYnTWSRHtMTkg6OcRK5aJZQwsHUkLK4=;
 b=lgxPZfDvcmdnnUlA1ZJVWBC9mtDXkowZeeWzko3RkRXwjsK03+prWzvJ+NF+sTw+Ek8dVgFvf0QWRhGjJVv5Aw0ZcDUoXZ1fSt5RQ3hfc/La90bw4ZCA4vzHEEdTmcuyh+PH26Xjemc0tDWNB44s0j8MtdsF8FcUN3i/wgV4VY4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h9dYftoizxSnHzsQvhjkUgwCWg0HDEVMAzqicsqUrxbUa7bvJ/PpNDri5Jb/Ov6WAOwfQhrICOC56nzRs4A/Bt9d95fsDYpwPuc0ZMFInGkUORiA+fGtQO9Bhz9ihoMmxr6xJrrjJCooUHeZ17UKypu5QT2u+q85fYuR/v0Hef7LI9rApUR2SendcFER3Yfucz//CR2oAdB5ycDF3p4Cmj0fOwHwfQ+bK7JCfKF5HCRdJvECNzZaVULGPtcNwnylZYmaDTfZwi1zZ4L339CcY6Z6d+xd6KypZKz8fnR2DOWAGso6NiIWzHSMNJSK8f1DGLA5X+jkshbu0SwjrwP09Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Jb2FS5OzopljNYnTWSRHtMTkg6OcRK5aJZQwsHUkLK4=;
 b=ToZNZFamBCVlJXratRqptaQRnglpA0pXH8w/p0LRiOUi0oAbsSSxF1TI7jZUM4r56IoPmKoBxWtRxx5gvHKhMvPoPT6xvVPMYYS9CKUWryF45f+V+OoIjKZElcvfPFESHRNVZP1MygtmtrxpbhFEMghGXOGEPPGG2awJGAfPgs+t4a2rqmycGOYZ53m2098PVOcrGafrfh7KqJ3ib4BUD+OOUgcfSR8SBsaN9oQazWLDYJspYgTzZbRSkQJBSOXqbBQljzjlhioDVrGvsBxQ5tL3qblWn1Yp/EOPR5mHUw572G0POqvxFqRXooq53sFJXWR/yfX6o7y/OXyfBRFbVg==
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=Jb2FS5OzopljNYnTWSRHtMTkg6OcRK5aJZQwsHUkLK4=;
 b=lgxPZfDvcmdnnUlA1ZJVWBC9mtDXkowZeeWzko3RkRXwjsK03+prWzvJ+NF+sTw+Ek8dVgFvf0QWRhGjJVv5Aw0ZcDUoXZ1fSt5RQ3hfc/La90bw4ZCA4vzHEEdTmcuyh+PH26Xjemc0tDWNB44s0j8MtdsF8FcUN3i/wgV4VY4=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Wei Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>
Subject: RE: Discussion of Xenheap problems on AArch64
Thread-Topic: Discussion of Xenheap problems on AArch64
Thread-Index: Adc2dyA8lkZGRqbyRiSglHolanVkwQAFhaqAAACgy/AA4CfqgABHcHyA
Date: Tue, 27 Apr 2021 06:29:25 +0000
Message-ID:
 <PA4PR08MB62534C4130B59CAA9A8A8BF792419@PA4PR08MB6253.eurprd08.prod.outlook.com>
References:
 <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <cdde98ca-4183-c92b-adca-801330992fc5@xen.org>
 <PA4PR08MB62538BBA256E66A0415F0C7192479@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <f14aa1d6-35d2-a9a3-0672-7f0d3ae3ec89@xen.org>
In-Reply-To: <f14aa1d6-35d2-a9a3-0672-7f0d3ae3ec89@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ts-tracking-id: 006D80AD84100F4A8251E9F822F611E5.0
x-checkrecipientchecked: true
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [203.126.0.111]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: c01cbb24-225b-4f0b-7cd4-08d90945d2b9
x-ms-traffictypediagnostic: PR3PR08MB5723:|DB7PR08MB3387:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<DB7PR08MB33873DFDF5989F1942F30D8D92419@DB7PR08MB3387.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 ycfWYfwSuNfzUa94m3OUclrZTzCqo106N5ijAvA73W9etdIqaXpqC4e0HXpQeBDO6kUg9un1un4bgcCB1YWwXjRP/kYLT5Rtt0ebwqmVoYJz95UgQaz1I0CmkfikUXBAniX/CWFiDfsG1kt+vDiuFLIKWICawlQ7lWCN9n1MprHGWxNJ0kVnHKYefs++pGZTHLkrEv81Qz4EIJ6F7MAOTv7nACx+jt83TEFjstWu3HIcC22WTP2w0IiU3teZQMILdB92FCw1Xwhj1T6ckBnj+8V56Du27pisvqWavUYrpS/+H/ug6cnzvklPA9gcVjWai/ozys+lARs3RbnHRt+vz7X3wvVXKKX+AnA03+/hj3dL0QmtYzTLpWd2qXfNuhLdkSys67tJf6Bre8a7qLglE+mF914+sXfet2Fy6b0XCUNdhh+Q2BdCG95MUyMDSkYbSP3MHiBQZH5pBCM10SguMC70pnRDgkVnU/IBu43auHS01MdQW5naiFF28wtDNXWeKFJQWYJcA0ZomgPmkoVmHWWK3MgsMLwN7aeYEV7ZoGY8ySGSi+ikK/5Clxcd4AMQJ1rkfEcKGXcEsxCbPLcfwnL33msJZgJFQbuYhC5vRrBg2qLyJ2ORFWBBBSVaaUQXisYg5220dQJ716xBLwdIYkcHhWPYzY6gIBMROASEXQDAjANpBfeKzLL0JrxM1a0G
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR08MB6253.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(366004)(136003)(396003)(346002)(376002)(9686003)(55016002)(5660300002)(478600001)(52536014)(110136005)(2906002)(966005)(122000001)(53546011)(7696005)(316002)(33656002)(76116006)(38100700002)(66446008)(186003)(66946007)(4326008)(66556008)(26005)(54906003)(66476007)(64756008)(71200400001)(83380400001)(8676002)(6506007)(86362001)(8936002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?utf-8?B?NlBDc1ZJS3d0T0wzaDQzc3EyK2JlY0tQSzl0bXFjb0JIUmJLL3dNMjFnV2xG?=
 =?utf-8?B?WkdKUEFKOTBVSDRkcFA2cEtmell0b0s2cDBCOWNBQmptVE5nNVpZTTVFK0xv?=
 =?utf-8?B?LzFEY1ZzdXozZEtDUmFObHVwSStvYmZzNTZaSTc0Wm81YkFQWGZ3Tjh6Q3Az?=
 =?utf-8?B?MDQ3Y2FrN1NoUExpRndXdjBDdnV6VFZNNnlqNVNTaXAzcEFJcDBPMnFrRzVR?=
 =?utf-8?B?ODlTUlVnSWRFTnpGRmIxVWg5UmgyUDg3M1dQYVpJUjBsOUp4b2o2R1lmaVhH?=
 =?utf-8?B?SFptMHFhaGJjcjlJMkowQ1pyMllWbDFZVVUxb3pRc2RyYVMzRnFna2o3d2RV?=
 =?utf-8?B?Q3QwYkxZUWxFcW9sY2k2OE93NzNLYkhtUFdJNHRKNmVKekhkT0c4bjBZYm1r?=
 =?utf-8?B?eTV5REM4QmU2MTgrYzliVUlJV21FNU8zdVlDOERkdFU1bEpJbUxxSXI1NDNr?=
 =?utf-8?B?cytTdlNicGV5Mm8waE1ZMDFlWmJXV1pobmxrMDVFbkhINi80dDAvMHUwTENN?=
 =?utf-8?B?cXI4QXViek91R1pQOVZUQit6SVY3bjVJK1k4WTYzWUI2NjZUK3p3dVk3K2o4?=
 =?utf-8?B?b1k5NXNhYnpob2JZNW83UWNiaW4wQm1WcTRGdzRaZ0MzdHc3ZzNqRmt2NUdy?=
 =?utf-8?B?U1ROdEtONTgwOWY0SnpCbUh6L3pLOXIwZXZjcVhlTFhyT04zYWc2NHg3Smkw?=
 =?utf-8?B?SW44ZnQrWXArUlJjY1U0RW5MTTI3NkZZdHIvS3g0MUUrUzBSRkMwemIvaHhl?=
 =?utf-8?B?TmVoV05kNzlqQ3h3b01obUs3SlR5dWc3SExFWFZsU09XQ0FkUVVxZ2tXWkVv?=
 =?utf-8?B?MFp1TC8reThQMTJ0T1dRTW9wcDRKVnJQeTRoN3pnbmJ3RVE0UUZrajY3VzV2?=
 =?utf-8?B?bnZNZXIrT0l0WjI3b0tDQkNZZ01hWTdTN1NXdDkzemhGSXZNbFoySmR4a1o0?=
 =?utf-8?B?VXlNdjduT2NXcTRoQkhKWTB1dVlFZTJSZjFXSTFZMlBZSVRLOXZsRzlPK3pq?=
 =?utf-8?B?SEUwa1lSMnd4OHBReU5nR0xvR1h4Z1VqZTB1WXdad2tVTTBiRXZHSDB2bTBS?=
 =?utf-8?B?ZEI2MUpVS2ZuK3Y4OUtkTkdYWlFnZHBXOWZvWjlicm9lUHY4MzR6N2VkenAx?=
 =?utf-8?B?NDhkWGNybVVsVmdlOXZoYmx1QlRyRGhnc1FGK2VaSWxDaVBaTnNIYzh4VFJN?=
 =?utf-8?B?ZjBCYVVNZ0N3SG5ISkM1K1Vzb2c0d1BYVlFCUFlNd05jQ0JhU3pDYmdJVjlJ?=
 =?utf-8?B?L2JOZUd6SDAyQ3ZONE9ZbTJlOGhuMUY3L0JEOFk3M0QyWmhiaGM0SlQyNXJW?=
 =?utf-8?B?eXZhTU1IUzVhWk1PS1lxdmRLTlR0RlVhQ3J0S1E1cVFmWCt3YzBnZG5kelNy?=
 =?utf-8?B?UzR3Vk1vcENLeDhPWFRGbkFEVmJKNUNoNG11NzVhVUtSRnlwVzFKQ2hGRG1V?=
 =?utf-8?B?RzRuSnA4ZVQ5eThsUjBSaE9rQTczOTBZa3hva2RQNFF0aExaUytHTmJTUTdY?=
 =?utf-8?B?bExIaUJRZnllM0wrelNydmhiRUpvdG1PSTJ2THFoWS9PcTlYb3JJWDNiVDZC?=
 =?utf-8?B?MHM3MldTMzRzd0cwR2l1Zm0zUEtOUzdHY1BmZU9PZnpqVG9tTzFMV2QraTVv?=
 =?utf-8?B?eVg5enhDamgzWGNWL2V4MUZaSjNsYjN3eHJoZ2lPb3prVUIxVlFyQUdVWUhv?=
 =?utf-8?B?ci8vNi9oQ2V2K0lRL1pPZEVEMW5zSEpSWTZGWnRJSzhXcWU0M0RMNHQ5c0NX?=
 =?utf-8?Q?GwNRyyL0RT7Hvov42jKcrVe70MH4LhhG2jComnv?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5723
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b7cc45ca-0d50-48d5-ca22-08d90945cd5b
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	IHXbaAzJ7C4BW0GAbzyO5+5TOKgwPQ3tp300GmpTjcW4Qdrj43LN1IACItyg06fuKWqXilYUzdIka4HHdRh6slATtfqVBGMC//pHPuzWYIlIJ8NB2w4JIcGhz/gz3FNChYawkneaFyxynztNhQicbAg2bSJZaNNTdhNqJMQM2lwIYLpU5Y1paRrXyYgLmQWqd+vRgSHEjDcFX5k7iqKNlFA6WaR+UflPc2lNf+s0xG4sFQFVc7SMwWJmlifyYqvI6oB2bg/s+wyVExmSdJP1T89o3AQHCGZ1AWSCeEGijzm0Eq8z15sNf4XoiNXOWBe7L6FyC73CkdTRgoef32GufvGwFvqbKEu4OO9kuosqPL+clu+jk3b9UXhxM8w/i+BNCN6fRoJcqSUUiVEo5hDk1r2V4lWwuNRLnCT8U9TgPMpfZqdp+SA4fFMd9X7xYGIDyw1fN5PSj148fXiWEswMuiKX56/bEngF2kGAF4ivML7c8iF+Xzafwy3bhvROGN17mD2A9V+EBsOXqQA7Jo2bOmCovYkJRANCGXFsavaD1gRzEgGEnaI/ldDmQI9WBM2C3r/8QYKb8Y+zs0mkvgwsmGCDHgze2D56T4E9mQ6NQ0dPkfbc7XoGwAZWoQkZM9KXUEtU114YF1HWMVtvivfig9WrpgeivIjLD07ewDAsKotChK6vMbAplHgHUhFxxCsrXSnM5LJvzW/L9E+XdI+xKu/TbJSoitf5lrJ/YPrUIWSi/rjRi9RERV3sr+AKWnpAVgBK+Ryj2uDXKzDLQbHu9tXkgdRGc/dGqkNejxgLMts=
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:ErrorRetry;CAT:NONE;SFS:(4636009)(39860400002)(396003)(376002)(346002)(136003)(46966006)(36840700001)(4326008)(9686003)(54906003)(5660300002)(81166007)(316002)(966005)(110136005)(8676002)(336012)(356005)(36860700001)(70206006)(47076005)(70586007)(8936002)(186003)(52536014)(7696005)(83380400001)(34020700004)(33656002)(26005)(6506007)(82310400003)(53546011)(82740400003)(86362001)(55016002)(2906002)(478600001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 06:29:34.1751
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c01cbb24-225b-4f0b-7cd4-08d90945d2b9
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:
	AM5EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3387

SGkgSnVsaWVuLA0KDQpTb3JyeSBmb3IgdGhlIGxhdGUgcmVwbHksIEkga2luZGEgbWlzc2VkIHRo
aXMgZW1haWwgc29tZWhvdy4uLi4NCg0KUGxlYXNlIHNlZSBteSBpbmxpbmUgcmVwbHkgXl4NCg0K
PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBYZW4tZGV2ZWwgPHhlbi1kZXZl
bC1ib3VuY2VzQGxpc3RzLnhlbnByb2plY3Qub3JnPiBPbiBCZWhhbGYgT2YNCj4gSnVsaWVuIEdy
YWxsDQo+IFNlbnQ6IE1vbmRheSwgQXByaWwgMjYsIDIwMjEgNDoyMCBBTQ0KPiBUbzogSGVucnkg
V2FuZyA8SGVucnkuV2FuZ0Bhcm0uY29tPjsgc3N0YWJlbGxpbmlAa2VybmVsLm9yZzsgeGVuLQ0K
PiBkZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogV2VpIENoZW4gPFdlaS5DaGVuQGFy
bS5jb20+OyBQZW5ueSBaaGVuZw0KPiA8UGVubnkuWmhlbmdAYXJtLmNvbT47IEJlcnRyYW5kIE1h
cnF1aXMgPEJlcnRyYW5kLk1hcnF1aXNAYXJtLmNvbT4NCj4gU3ViamVjdDogUmU6IERpc2N1c3Np
b24gb2YgWGVuaGVhcCBwcm9ibGVtcyBvbiBBQXJjaDY0DQo+IA0KPiANCj4gDQo+IE9uIDIxLzA0
LzIwMjEgMTA6MzIsIEhlbnJ5IFdhbmcgd3JvdGU6DQo+ID4gSGkgSnVsaWVuLA0KPiANCj4gSGkg
SGVucnksDQo+IA0KPiA+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiBGcm9tOiBK
dWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4ub3JnPg0KPiA+PiBTZW50OiBXZWRuZXNkYXksIEFwcmls
IDIxLCAyMDIxIDU6MDQgUE0NCj4gPj4gVG86IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNv
bT47IHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc7IHhlbi0NCj4gPj4gZGV2ZWxAbGlzdHMueGVucHJv
amVjdC5vcmcNCj4gPj4gQ2M6IFdlaSBDaGVuIDxXZWkuQ2hlbkBhcm0uY29tPjsgUGVubnkgWmhl
bmcNCj4gPj4gPFBlbm55LlpoZW5nQGFybS5jb20+OyBCZXJ0cmFuZCBNYXJxdWlzDQo+IDxCZXJ0
cmFuZC5NYXJxdWlzQGFybS5jb20+DQo+ID4+IFN1YmplY3Q6IFJlOiBEaXNjdXNzaW9uIG9mIFhl
bmhlYXAgcHJvYmxlbXMgb24gQUFyY2g2NA0KPiA+Pg0KPiA+Pg0KPiA+Pg0KPiA+PiBPbiAyMS8w
NC8yMDIxIDA3OjI4LCBIZW5yeSBXYW5nIHdyb3RlOg0KPiA+Pj4gSGksDQo+ID4+DQo+ID4+IEhp
IEhlbnJ5LA0KPiA+Pg0KPiA+Pj4NCj4gPj4+IFdlIGFyZSB0cnlpbmcgdG8gaW1wbGVtZW50IHRo
ZSBzdGF0aWMgbWVtb3J5IGFsbG9jYXRpb24gb24gQUFyY2g2NC4NCj4gUGFydA0KPiA+PiBvZg0K
PiA+Pj4gdGhpcyBmZWF0dXJlIGlzIHRoZSByZXNlcnZlZCBoZWFwIG1lbW9yeSBhbGxvY2F0aW9u
LCB3aGVyZSBhIHNwZWNpZmljDQo+IHJhbmdlDQo+ID4+IG9mDQo+ID4+PiBtZW1vcnkgaXMgcmVz
ZXJ2ZWQgb25seSBmb3IgaGVhcC4gSW4gdGhlIGRldmVsb3BtZW50IHByb2Nlc3MsIHdlDQo+IGZv
dW5kIGENCj4gPj4+IHBpdGZhbGwgaW4gY3VycmVudCBBQXJjaDY0IHNldHVwX3hlbmhlYXBfbWFw
cGluZ3MoKSBmdW5jdGlvbi4NCj4gPj4+DQo+ID4+PiBBY2NvcmRpbmcgdG8gYSBwcmV2aW91cyBk
aXNjdXNzaW9uIGluIGNvbW11bml0eQ0KPiA+Pj4gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcveGVu
LWRldmVsLzIwMTkwMjE2MTM0NDU2LjEwNjgxLTEtDQo+ID4+IHBlbmcuZmFuQG54cC5jb20vLA0K
PiA+Pj4gb24gQUFyY2g2NCwgYm9vdG1lbSBpcyBpbml0aWFsaXplZCBhZnRlciBzZXR1cF94ZW5o
ZWFwX21hcHBpbmdzKCksDQo+ID4+PiBzZXR1cF94ZW5oZWFwX21hcHBpbmdzKCkgbWF5IHRyeSB0
byBhbGxvY2F0ZSBtZW1vcnkgYmVmb3JlIG1lbW9yeQ0KPiA+PiBoYXMgYmVlbg0KPiA+Pj4gaGFu
ZGVkIG92ZXIgdG8gdGhlIGJvb3QgYWxsb2NhdG9yLiBJZiB0aGUgcmVzZXJ2ZWQgaGVhcCBtZW1v
cnkNCj4gYWxsb2NhdGlvbg0KPiA+PiBpcw0KPiA+Pj4gaW50cm9kdWNlZCwgZWl0aGVyIG9mIGJl
bG93IDIgY2FzZXMgd2lsbCB0cmlnZ2VyIGEgY3Jhc2g6DQo+ID4+Pg0KPiA+Pj4gMS4gSWYgdGhl
IHJlc2VydmVkIGhlYXAgbWVtb3J5IGlzIGF0IHRoZSBlbmQgb2YgdGhlIG1lbW9yeSBibG9jayBs
aXN0DQo+IGFuZA0KPiA+PiB0aGUNCj4gPj4+IGdhcCBiZXR3ZWVuIHJlc2VydmVkIGFuZCB1bnJl
c2VydmVkIG1lbW9yeSBpcyBiaWdnZXIgdGhhbiA1MTJHQiwNCj4gd2hlbg0KPiA+PiB3ZSBzZXR1
cA0KPiA+Pj4gbWFwcGluZ3MgZnJvbSB0aGUgYmVnaW5uaW5nIG9mIHRoZSBtZW1vcnkgYmxvY2sg
bGlzdCwgd2Ugd2lsbCBnZXQgT09NDQo+ID4+IGNhdXNlZA0KPiA+Pj4gYnkgbGFjayBvZiBwYWdl
cyBpbiBib290IGFsbG9jYXRvci4gVGhpcyBpcyBiZWNhdXNlIHRoZSBtZW1vcnkgdGhhdCBpcw0K
PiA+PiByZXNlcnZlZA0KPiA+Pj4gZm9yIGhlYXAgaGFzIG5vdCBiZWVuIG1hcHBlZCBhbmQgYWRk
ZWQgdG8gdGhlIGJvb3QgYWxsb2NhdG9yLg0KPiA+Pj4NCj4gPj4+IDIuIElmIHdlIGFkZCB0aGUg
bWVtb3J5IHRoYXQgaXMgcmVzZXJ2ZWQgZm9yIGhlYXAgdG8gYm9vdCBhbGxvY2F0b3IgZmlyc3Qs
DQo+ID4+IGFuZA0KPiA+Pj4gdGhlbiBzZXR1cCBtYXBwaW5ncyBmb3IgYmFua3MgaW4gdGhlIG1l
bW9yeSBibG9jayBsaXN0LCB3ZSBtYXkgZ2V0IGENCj4gcGFnZQ0KPiA+PiB3aGljaA0KPiA+Pj4g
aGFzIG5vdCBiZWVuIHNldHVwIG1hcHBpbmcsIGNhdXNpbmcgYSBkYXRhIGFib3J0Lg0KPiA+Pg0K
PiA+PiBUaGVyZSBhcmUgYSBmZXcgaXNzdWVzIHdpdGggc2V0dXBfeGVuaGVhcF9tYXBwaW5ncygp
LiBJIGhhdmUgYmVlbg0KPiA+PiByZXdvcmtpbmcgdGhlIGNvZGUgb24gbXkgc3BhcmUgdGltZSBh
bmQgc3RhcnRlZCB0byB1cHN0cmVhbSBiaXRzIG9mIGl0Lg0KPiA+PiBBIFBvQyBjYW4gYmUgZm91
bmQgaGVyZToNCj4gPj4NCj4gPj4gaHR0cHM6Ly94ZW5iaXRzLnhlbi5vcmcvZ2l0d2ViLz9wPXBl
b3BsZS9qdWxpZW5nL3hlbi0NCj4gPj4gdW5zdGFibGUuZ2l0O2E9c2hvcnRsb2c7aD1yZWZzL2hl
YWRzL3B0L2Rldg0KPiA+Pg0KPiA+DQo+ID4gUmVhbGx5IGdyZWF0IG5ld3MhIFRoYW5rcyB5b3Ug
dmVyeSBtdWNoIGZvciB0aGUgaW5mb3JtYXRpb24gYW5kIHlvdXINCj4gaGFyZA0KPiA+IHdvcmsg
b24gdGhlIFBvQyA6KSBJIHdpbGwgc3RhcnQgdG8gZ28gdGhyb3VnaCB5b3VyIFBvQyBjb2RlIHRo
ZW4uDQo+IA0KPiBJIHNwZW50IHNvbWV0aW1lcyB0b2RheSB0byBjbGVhbi11cCB0aGUgUG9DIGFu
ZCBzZW50IGEgc2VyaWVzIG9uIHRoZSBNTA0KPiAoc2VlIFsxXSkuIFRoaXMgaGFzIGJlZW4gbGln
aHRseSB0ZXN0ZWQgc28gZmFyLg0KPiANCj4gV291bGQgeW91IGJlIGFibGUgdG8gZ2l2ZSBhIHRy
eSBhbmQgbGV0IG1lIGtub3cgaWYgaXQgaGVscHMgeW91ciBwcm9ibGVtPw0KDQpZZXMgb2YgY291
cnNlISBJIHdpbGwgc3RhcnQgdG8gdGVzdCB0aGlzIHNlcmllcyBeXiBUaGFuayB5b3UgZm9yIHlv
dXIgd29yayENCg0KPiANCj4gRm9yIGNvbnZlbmllbmNlLCBJIGhhdmUgcHVzaGVkIGEgYnJhbmNo
IHdpdGggdGhlIHNlcmllcyBhcHBsaWVkIGhlcmU6DQo+IA0KPiBodHRwczovL3hlbmJpdHMueGVu
Lm9yZy9naXR3ZWIvP3A9cGVvcGxlL2p1bGllbmcveGVuLQ0KPiB1bnN0YWJsZS5naXQ7YT1zaG9y
dGxvZztoPXJlZnMvaGVhZHMvcHQvcmZjLXYyDQo+IA0KDQpHcmVhdCwgdGhhbmtzIQ0KDQo+IENo
ZWVycywNCj4gDQo+IFsxXSBodHRwczovL2xvcmUua2VybmVsLm9yZy94ZW4tZGV2ZWwvMjAyMTA0
MjUyMDEzMTguMTU0NDctMS0NCj4ganVsaWVuQHhlbi5vcmcvDQo+IA0KPiAtLQ0KPiBKdWxpZW4g
R3JhbGwNCg0K


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 06:32:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 06:32:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118012.223947 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHGo-0005SZ-LC; Tue, 27 Apr 2021 06:32:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118012.223947; Tue, 27 Apr 2021 06:32: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 1lbHGo-0005SS-I6; Tue, 27 Apr 2021 06:32:30 +0000
Received: by outflank-mailman (input) for mailman id 118012;
 Tue, 27 Apr 2021 06:32: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 1lbHGm-0005SK-TK; Tue, 27 Apr 2021 06:32: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 1lbHGm-0000MN-NK; Tue, 27 Apr 2021 06:32: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 1lbHGm-0001Bc-AY; Tue, 27 Apr 2021 06:32:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbHGm-0008Aw-A2; Tue, 27 Apr 2021 06:32:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=+s3mODF0Wa6txYbLPPrHgI8r+Mxssd3/ZCFfTZI1Ldw=; b=o09CIzLZYMifNoMv/P3BIFDy1y
	aALrm394AdCK7ZdseYOmOXafO5qvKjrq9QmlQFgxUqj9pLkgIXZagKlT1QRcpj0MERikwffrDde7l
	hbSof/8GVZJk21b9bFU/SyY78tEbjq/1uK+5pYrMsmJO5O1pQMe+0CKZGxooBV0CRQr0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161468-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161468: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:build-arm64-pvops:kernel-build:fail:regression
    linux-linus:test-arm64-arm64-examine:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop: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-amd64-amd64-libvirt-vhd: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: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-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2: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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a4a78bc8ead44c3cdb470c6e1f37afcabdddfc14
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 06:32:28 +0000

flight 161468 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161468/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 build-arm64-pvops             6 kernel-build             fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-examine      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-seattle   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 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-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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

version targeted for testing:
 linux                a4a78bc8ead44c3cdb470c6e1f37afcabdddfc14
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  269 days
Failing since        152366  2020-08-01 20:49:34 Z  268 days  450 attempts
Testing same since   161468  2021-04-26 16:26:18 Z    0 days    1 attempts

------------------------------------------------------------
5372 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                                            fail    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  fail    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       fail    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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                                  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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     blocked 
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  blocked 
 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                                    fail    
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-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 1334332 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 06:47:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 06:47:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118024.223968 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHUn-0006ab-9A; Tue, 27 Apr 2021 06:46:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118024.223968; Tue, 27 Apr 2021 06: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 1lbHUn-0006aU-5g; Tue, 27 Apr 2021 06:46:57 +0000
Received: by outflank-mailman (input) for mailman id 118024;
 Tue, 27 Apr 2021 06:46:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbHUm-0006aP-8t
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 06:46:56 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3c73d739-c057-45de-865f-6f894cfe2563;
 Tue, 27 Apr 2021 06:46:55 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6926AAF8C;
 Tue, 27 Apr 2021 06:46: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: 3c73d739-c057-45de-865f-6f894cfe2563
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619506014; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Bxnl+t91Qu4B3Nz/2s7RePJqK+7uiTp5BaSl7tQspJY=;
	b=l/Q/nN9SKs0EuIF628OE1hap9TJVtqJR1DOQLFcFb8f9/Q9BmrKuWWp4G/av/7nXepkyQ6
	fr5M0V+XYVG8esbggMyAw09xGNcwAm3Pihte+7hFoWmkZ7BRK3TJSBJ6XkRep+DaEBG9Sb
	IN1vFfTfhKfuf8WayiTr0K0wVbpGJM4=
Subject: Re: [PATCH 0/3] x86: Initial pieces for guest CET support
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>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <03630ebd-861e-b02c-e845-1e2324211562@suse.com>
Date: Tue, 27 Apr 2021 08:46:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210426175421.30497-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 19:54, Andrew Cooper wrote:
> Some initial pieces for guest support.  Everything will currently malfunction
> for VMs which explicitly opt in to CET_SS/IBT.
> 
> Still TODO as a minimum:
>  * Teach the pagewalk logic about shadow stack accesses and errors.
>  * Emulator support for the new instructions.  WRUSS is an irritating corner
>    case, requiring a change to how we express pagewalk inputs, as
>    user/supervisor is no longer dependent on CPL.

I can put this on my todo list, considering that I'm the one to play
with the emulator the most. Just let me know if you would prefer to
do it yourself. (Otherwise my next item there after AMX is now
complete would have been KeyLocker insns.)

>  * Context switching of U/S_CET state.  Recommended way is with XSAVES, except
>    the S_CET has broken sematics - it ends up as a mix of host and guest
>    state, and isn't safe to XRSTOR without editing what the CPU wrote out.

Hmm, I wasn't aware of quirks here - would you mind going into more
detail?

> The above ought to suffice for getting some XTF testing in place.  For general
> guest support:
>  * In-guest XSAVES support.  Windows is the only OS to support CET at the time
>    of writing, and it cross-checks for XSAVES.  Linux expected to perform the
>    same cross-check in due course.

What specifically do you mean here? The XSAVES CPU feature is marked
'S', so ought to be visible to Windows. Hence I guess you mean support
for the respective XSS bits?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 06:54:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 06:54:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.117839.223980 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHbl-0007T2-2T; Tue, 27 Apr 2021 06:54:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 117839.223980; Tue, 27 Apr 2021 06: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 1lbHbk-0007Sv-Ts; Tue, 27 Apr 2021 06:54:08 +0000
Received: by outflank-mailman (input) for mailman id 117839;
 Mon, 26 Apr 2021 17:25:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=2OOr=JX=gmail.com=scottwd@srs-us1.protection.inumbo.net>)
 id 1lb4z4-0002uj-AJ
 for xen-devel@lists.xenproject.org; Mon, 26 Apr 2021 17:25:22 +0000
Received: from mail-qv1-xf2f.google.com (unknown [2607:f8b0:4864:20::f2f])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4d641eb6-058d-44d8-a1c3-2ae2c604017a;
 Mon, 26 Apr 2021 17:25:21 +0000 (UTC)
Received: by mail-qv1-xf2f.google.com with SMTP id gv2so18312271qvb.8
 for <xen-devel@lists.xenproject.org>; Mon, 26 Apr 2021 10:25:21 -0700 (PDT)
Received: from lagunitas.localdomain (c-73-133-107-223.hsd1.md.comcast.net.
 [73.133.107.223])
 by smtp.gmail.com with ESMTPSA id n16sm12106858qtl.48.2021.04.26.10.25.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 26 Apr 2021 10: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: 4d641eb6-058d-44d8-a1c3-2ae2c604017a
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:mime-version
         :content-transfer-encoding;
        bh=yavZ8Mp3QoAF3oXvGJpeEdswou3Jx8Tn5pRND0ZlaNg=;
        b=B84teXQJslcnj210mBWkFDKbE8jvJUmlNZL/qTImqptMgap+j/G8W8wkxum+RZedJl
         +KkQmMv02MtyuQAqjzPMIVJFWWpRwU7ddlmT3rVhFfGT2KV7UYup7MxrnQJmiCW9OUQY
         zuE/ki7ixlf1UQzglhkR8LXhUr3lYxTvKasx3Lj++P+IKq3pWOcZnjG1X9lf7zyb2334
         egVgEh2cbXYlndBCqCduyhEG+8QHBPlUYwMK1ThebZ0AKQZ/AzF+vF1AG2A/vfGg8IfO
         ePcWHJESse3MqkmP1bznSpALQmrxc9S2tnPSyW+ik392I6SXpsjEUWMn0TDhEDY5YdFQ
         L8bw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version
         :content-transfer-encoding;
        bh=yavZ8Mp3QoAF3oXvGJpeEdswou3Jx8Tn5pRND0ZlaNg=;
        b=e9p9Vk3hlUZYLN2SInIF9i81dX69O0OtL8if1MS5ew2OhkThDQWaZJnrCgA/pAfKq1
         VpGIuRENjILGcAAMJXxOiShq5C23QDYbJsSvggWgybh5APBPMTZsaolpqCe4kvzsVb3G
         lcOwC0tAMUQTssRDlf/Z7/jvsPf1puPrRl54WV8XdCO8pCCsH2H8PqMnkRDijQ9orbNL
         gq2mxp26OeKkPtW6uhM9g6i/P/HB8GsE9ECLaYtxs4WO2aj99JFD3DLfOYtxQNaIp7Ig
         QvQAemf4wmFsjUQwlOpOvTSw15NL45CNpTznaOF4qUAURv/b0BonTIEFpJkW+Rv+8aDs
         WXPw==
X-Gm-Message-State: AOAM531BWqqN/7oNwJK5GBWpscejJ+MIlnc/aIPI3UzsvZObp5IeUhG4
	mxdLBEvr8xeJQgKqo4DjoeaVNP0gJEQDqmt4
X-Google-Smtp-Source: ABdhPJx+VaIsfSDf8tNITIvqClyd3IVcPWhiNYkJ1Vr/Rzjdku9LVpGOjSGuYZAaQgzUScU+JLt0rA==
X-Received: by 2002:a0c:b218:: with SMTP id x24mr19197551qvd.55.1619457920442;
        Mon, 26 Apr 2021 10:25:20 -0700 (PDT)
From: Scott Davis <scottwd@gmail.com>
X-Google-Original-From: Scott Davis <scott.davis@starlab.io>
To: xen-devel@lists.xenproject.org
Cc: Scott Davis <scott.davis@starlab.io>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <ian.jackson@eu.citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>
Subject: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
Date: Mon, 26 Apr 2021 13:25:12 -0400
Message-Id: <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This patch modifies Xen's behavior when making devices assignable while the
iommu=no-quarantine command line option is in effect. Currently this option
only affects device deassignment, causing devices to get immediately assigned
back to Dom0 instead of to the quarantine dom_io domain. This patch extends
no-quarantine to device assignment as well, preventing devices from being
assigned to dom_io when they are made assignable while no-quarantine is in
effect.

Signed-off-by: Scott Davis <scott.davis@starlab.io>
---
First patch submission, apologies in advance for any formatting or other errors.

Background: I am setting up a QEMU-based development and testing environment for
the Crucible team at Star Lab that includes emulated PCIe devices for
passthrough and hotplug. I encountered an issue with `xl pci-assignable-add`
that causes the host QEMU to rapidly allocate memory until getting OOM-killed.
I then found that the issue could be worked around either by using manual sysfs
commands to rebind devices to pciback or by skipping over the quarantine logic
in `libxl__device_pci_assignable_add`, producing a working system. I hoped that
setting iommu=no-quarantine on the command line would have the same effect, only
to be surprised that it did not.

This patch fixes the issue I encountered and, in my opinion, makes the behavior
of no-quarantine more intuitive. While I intend to root-cause whatever
interaction between Xen and QEMU's VT-d vIOMMU is causing the problem, I plan to
carry this patch, or one like it, in the meantime. I'd welcome any feedback on
its design or intent. Note that this RFC version is based and tested on
Crucible's 4.14.1 branch of Xen, but I will rebase and test on staging if it's
desired upstream in some form.
---
 docs/misc/xen-command-line.pandoc | 8 ++++----
 xen/drivers/passthrough/pci.c     | 9 +++++++--
 2 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index 4ae9391fcd..1015f95dd5 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -1317,10 +1317,10 @@ boolean (e.g. `iommu=no`) can override this and leave the IOMMUs disabled.
     successfully.

 *   The `quarantine` boolean can be used to control Xen's behavior when
-    de-assigning devices from guests.  If enabled (the default), Xen always
-    quarantines such devices; they must be explicitly assigned back to Dom0
-    before they can be used there again.  If disabled, Xen will only
-    quarantine devices the toolstack hass arranged for getting quarantined.
+    making devices assignable to guests and de-assigning devices from guests.
+    If enabled (the default), Xen will quarantine such devices; they must be
+    explicitly assigned back to Dom0 before they can be used there again.  If
+    disabled, Xen will not quarantine devices.

 *   The `sharept` boolean controls whether the IOMMU pagetables are shared
     with the CPU-side HAP pagetables, or allocated separately.  Sharing
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 2d6238a5bb..4c37f2d272 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -935,9 +935,14 @@ static int deassign_device(struct domain *d, uint16_t seg, uint8_t bus,
         return -EINVAL;

     ASSERT(pcidevs_locked());
-    pdev = pci_get_pdev_by_domain(d, seg, bus, devfn);
+    pdev = pci_get_pdev(seg, bus, devfn);
     if ( !pdev )
         return -ENODEV;
+    else if ( d == dom_io && pdev->domain != dom_io )
+        /* OK: Request to de-quarantine a device that is not quarantined */
+        return 0;
+    else if ( pdev->domain != d )
+        return -ENODEV;

     /* De-assignment from dom_io should de-quarantine the device */
     target = ((pdev->quarantine || iommu_quarantine) &&
@@ -1510,7 +1515,7 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
     struct pci_dev *pdev;
     int rc = 0;

-    if ( !is_iommu_enabled(d) )
+    if ( !is_iommu_enabled(d) || (d == dom_io && !iommu_quarantine) )
         return 0;

     /* Prevent device assign if mem paging or mem sharing have been
--
2.25.1


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 06:56:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 06:56:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118032.223992 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHe4-0007dh-EC; Tue, 27 Apr 2021 06:56:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118032.223992; Tue, 27 Apr 2021 06:56: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 1lbHe4-0007da-BC; Tue, 27 Apr 2021 06:56:32 +0000
Received: by outflank-mailman (input) for mailman id 118032;
 Tue, 27 Apr 2021 06:56:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbHe3-0007dV-2g
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 06:56:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6f715d80-4288-417f-b627-7e262185731c;
 Tue, 27 Apr 2021 06:56:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 48CFDAF88;
 Tue, 27 Apr 2021 06:56: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: 6f715d80-4288-417f-b627-7e262185731c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619506589; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=pjGui25wUiC5sijz/4iOg+LwF5L69MBvHR4cTMbP3VI=;
	b=PWtwKxhHVa7RiNpR8dpGaFFzz7cQepGl+yCcwytfAfFw8gj5sgQ6k+nfVCK6N+wDefjfgl
	VU+3aPOATlWDipbaLpBCfS5ookNFwmO7JA3u3R75ef1thBxN53MzJExwwP/+T9eg3JpXxt
	If7Rms4bT7zfUmStj/4FGKTVbuc7fA4=
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
To: Scott Davis <scottwd@gmail.com>
Cc: Scott Davis <scott.davis@starlab.io>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
Date: Tue, 27 Apr 2021 08:56:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 19:25, Scott Davis wrote:
> This patch modifies Xen's behavior when making devices assignable while the
> iommu=no-quarantine command line option is in effect. Currently this option
> only affects device deassignment, causing devices to get immediately assigned
> back to Dom0 instead of to the quarantine dom_io domain. This patch extends
> no-quarantine to device assignment as well, preventing devices from being
> assigned to dom_io when they are made assignable while no-quarantine is in
> effect.

Well, the term "quarantine" to me means a safety action taken _after_
possible exposure to something "bad". Therefore I see this being specific
to device de-assignment as the logical thing. Hence if a mode like what
you describe was wanted, I don't think it should be the result of
"iommu=no-quarantine".

> First patch submission, apologies in advance for any formatting or other errors.

I couldn't spot any, except maybe ...

> Background: I am setting up a QEMU-based development and testing environment for
> the Crucible team at Star Lab that includes emulated PCIe devices for
> passthrough and hotplug. I encountered an issue with `xl pci-assignable-add`
> that causes the host QEMU to rapidly allocate memory until getting OOM-killed.
> I then found that the issue could be worked around either by using manual sysfs
> commands to rebind devices to pciback or by skipping over the quarantine logic
> in `libxl__device_pci_assignable_add`, producing a working system. I hoped that
> setting iommu=no-quarantine on the command line would have the same effect, only
> to be surprised that it did not.

... some of this "why do we want this" would belong in the commit message
imo, not just here.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 07:09:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 07:09:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118042.224004 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHqi-0000I9-Ie; Tue, 27 Apr 2021 07:09:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118042.224004; Tue, 27 Apr 2021 07: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 1lbHqi-0000I2-FX; Tue, 27 Apr 2021 07:09:36 +0000
Received: by outflank-mailman (input) for mailman id 118042;
 Tue, 27 Apr 2021 07:09:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbHqh-0000Hx-6Y
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 07:09:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 05e1c6a8-3724-4155-a1b6-07036d071dac;
 Tue, 27 Apr 2021 07:09:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 51A58AFA9;
 Tue, 27 Apr 2021 07:09: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: 05e1c6a8-3724-4155-a1b6-07036d071dac
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619507373; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=wuGrBc3fgJjN9PLSBZcv+KjMhbROZ/4NSCSTRK3tonA=;
	b=bakdxKFJK4Q+Pvo1TFZx6kfPhYdBYVHR+m/vPEoxkOt+RcFyehrtc/l1iX/lGA1HHeOTn5
	2XEjK8i4TE2o1DrZgA2PCePbeQw6736e6Bs/65MkKJInyXLifWEcp6T/EO5SLL0Kma/3pv
	LAQl3bSto0QmlOobjuq1b3DLAdLkKGk=
Subject: Re: [PATCH] x86/emul: Use existing X86_EXC_* constants
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426124535.23814-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <f11189be-7ce7-ed54-a078-541eb3513eba@suse.com>
Date: Tue, 27 Apr 2021 09:09:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210426124535.23814-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 26.04.2021 14:45, Andrew Cooper wrote:
> ... rather than having separate definitions locally.  EXC_HAS_EC in particular
> is missing #CP, #VC and #SX vs X86_EXC_HAVE_EC.
> 
> Also switch a raw 14 for X86_EXC_PF in x86_emul_pagefault().
> 
> No functional change.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> CC: Wei Liu <wl@xen.org>
> ---
>  xen/arch/x86/x86_emulate/x86_emulate.c | 739 ++++++++++++++++-----------------
>  xen/arch/x86/x86_emulate/x86_emulate.h |   4 +-
>  2 files changed, 361 insertions(+), 382 deletions(-)

This is a lot of code churn (almost all some slight growth) for this
kind of a change. I'm not opposed, but I'd like to explore alternatives
first. I know you often dislike token concatenation in macros, which
would be my first suggestion to get churn down here. The other option,
not reducing churn but reducing rather than increasing code volume (and
hence imo helping readability), would be to have shorthands for at
least some frequently raised exceptions like #UD and #GP - e.g.
generate_ud_if(). Thougths?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 07:16:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 07:16:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118052.224016 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHxH-0001Ed-AA; Tue, 27 Apr 2021 07:16:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118052.224016; Tue, 27 Apr 2021 07:16:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbHxH-0001EW-6d; Tue, 27 Apr 2021 07:16:23 +0000
Received: by outflank-mailman (input) for mailman id 118052;
 Tue, 27 Apr 2021 07:16:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbHxG-0001ER-B0
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 07:16:22 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 4a958f5e-648c-4268-83de-09a5ab17fc76;
 Tue, 27 Apr 2021 07:16:21 +0000 (UTC)
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 E57C731B;
 Tue, 27 Apr 2021 00:16:20 -0700 (PDT)
Received: from [10.57.27.22] (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 9A32C3F70D;
 Tue, 27 Apr 2021 00:16: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: 4a958f5e-648c-4268-83de-09a5ab17fc76
Subject: Re: [PATCH 9/9] xen/arm64: Remove READ/WRITE_SYSREG32 helper macros
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-10-michal.orzel@arm.com>
 <c318c303-1187-3a64-833b-0684a2dc4312@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <a37f7d85-dee7-d2f8-9883-1a8004d1ca25@arm.com>
Date: Tue, 27 Apr 2021 09:16:14 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <c318c303-1187-3a64-833b-0684a2dc4312@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Jilien,

On 21.04.2021 21:16, Julien Grall wrote:
> Hi Michal,
> 
> On 20/04/2021 08:08, Michal Orzel wrote:
>> AArch64 system registers are 64bit whereas AArch32 ones
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 sysregs have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
> 
> As a general comment, all your commit message contains information about the goal (which is great). But they don't go much in details about the actual changes. I have tried to point out where I think those details would be helpful.
> 
>>
>> As there are no other places in the code using READ/WRITE_SYSREG32,
>> remove the helper macros.
>>
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> ---
>>   xen/arch/arm/vcpreg.c               | 16 ++++++++++++++++
>>   xen/include/asm-arm/arm64/sysregs.h |  5 -----
>>   2 files changed, 16 insertions(+), 5 deletions(-)
>>
>> diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c
>> index c7f516ee0a..6cb7f3108c 100644
>> --- a/xen/arch/arm/vcpreg.c
>> +++ b/xen/arch/arm/vcpreg.c
>> @@ -48,6 +48,7 @@
>>    */
>>     /* The name is passed from the upper macro to workaround macro expansion. */
>> +#ifdef CONFIG_ARM_32
>>   #define TVM_REG(sz, func, reg...)                                           \
>>   static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
>>   {                                                                           \
>> @@ -61,6 +62,21 @@ static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
>>                                                                               \
>>       return true;                                                            \
>>   }
>> +#else /* CONFIG_ARM_64 */
>> +#define TVM_REG(sz, func, reg...)                                           \
>> +static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
>> +{                                                                           \
>> +    struct vcpu *v = current;                                               \
>> +    bool cache_enabled = vcpu_has_cache_enabled(v);                         \
>> +                                                                            \
>> +    GUEST_BUG_ON(read);                                                     \
>> +    WRITE_SYSREG(*r, reg);                                                  \
>> +                                                                            \
>> +    p2m_toggle_cache(v, cache_enabled);                                     \
>> +                                                                            \
>> +    return true;                                                            \
>> +}
>> +#endif
> 
> It would be nice if this change can be explained in the commit message. However, I think we can avoid the duplication by aliasing TVM_REG32() to TVM_REG64() on Arm64.
> 
Unfortunately we cannot. This is the only working solution for now.
If we do the alias we will get many errors due to incompatbile pointer type in vreg_emulate_*.
Without a proper change in this functions we can't do that.
I will modify it once I start working on vreg_emulate topic but it requires more investigation.

For now I'd suggest to keep it as it is + explain the change in the commit.
I will push v2 soon.
>>     #define TVM_REG32(regname, xreg) TVM_REG(32, vreg_emulate_##regname, xreg)
>>   #define TVM_REG64(regname, xreg) TVM_REG(64, vreg_emulate_##regname, xreg)
>> diff --git a/xen/include/asm-arm/arm64/sysregs.h b/xen/include/asm-arm/arm64/sysregs.h
>> index 077fd95fb7..83a1157ac4 100644
>> --- a/xen/include/asm-arm/arm64/sysregs.h
>> +++ b/xen/include/asm-arm/arm64/sysregs.h
>> @@ -86,11 +86,6 @@
>>   #endif
>>     /* Access to system registers */
>> -
>> -#define READ_SYSREG32(name) ((uint32_t)READ_SYSREG64(name))
>> -
>> -#define WRITE_SYSREG32(v, name) WRITE_SYSREG64((uint64_t)v, name)
>> -
>>   #define WRITE_SYSREG64(v, name) do {                    \
>>       uint64_t _r = v;                                    \
>>       asm volatile("msr "__stringify(name)", %0" : : "r" (_r));       \
>>
> 
> Cheers,
> 
Cheers,
Michal


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 08:30:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 08:30:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118081.224027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbJ6T-0008CU-QF; Tue, 27 Apr 2021 08:29:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118081.224027; Tue, 27 Apr 2021 08:29:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbJ6T-0008CN-NB; Tue, 27 Apr 2021 08:29:57 +0000
Received: by outflank-mailman (input) for mailman id 118081;
 Tue, 27 Apr 2021 08:29: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 1lbJ6S-0008CF-Jt; Tue, 27 Apr 2021 08:29: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 1lbJ6S-0002o0-BH; Tue, 27 Apr 2021 08:29: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 1lbJ6S-000793-1i; Tue, 27 Apr 2021 08:29:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbJ6S-0001o1-1C; Tue, 27 Apr 2021 08:29: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=z/Y9OkyOyV/HbTclPipB+lj+LnINaSH+UztAWwvrAYQ=; b=2peswXQezHkv1MpWEGKmI5Zqfc
	VcGzuuFCfi4HjfheEHEDmzpAx8rNcUe4XLpFrn5wFiFqG47m0/cGgnYe+WOc2enNwPrLUfp0kHpUk
	H4fvalINs8mmDLgcQegw3PYDszW4oIKDhrUi2PVH+8xroiREfn+0M2kZmCHJ5uvY/Xz4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161470-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161470: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-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-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-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-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-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-amd64-libvirt-vhd: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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl: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-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-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
X-Osstest-Versions-This:
    xen=11e7f0fe72ca0060762d18268e0388731fe8ccb6
X-Osstest-Versions-That:
    xen=ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 08:29:56 +0000

flight 161470 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161470/

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 161460
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161460
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161460
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161460
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161460
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161460
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161460
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161460
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161460
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161460
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161460
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-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

version targeted for testing:
 xen                  11e7f0fe72ca0060762d18268e0388731fe8ccb6
baseline version:
 xen                  ab392969ea178ef9a4b499f92c3fb5bd2e4e13ed

Last test of basis   161460  2021-04-26 04:44:35 Z    1 days
Testing same since   161470  2021-04-26 17:39:20 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Chao Gao <chao.gao@intel.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   ab392969ea..11e7f0fe72  11e7f0fe72ca0060762d18268e0388731fe8ccb6 -> master


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 08:31:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 08:31:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118089.224042 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbJ7Y-0000Zl-CE; Tue, 27 Apr 2021 08:31:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118089.224042; Tue, 27 Apr 2021 08:31: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 1lbJ7Y-0000Ze-8j; Tue, 27 Apr 2021 08:31:04 +0000
Received: by outflank-mailman (input) for mailman id 118089;
 Tue, 27 Apr 2021 08:31: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 1lbJ7W-0000ZZ-NY
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 08:31: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 1lbJ7V-0002pA-K8; Tue, 27 Apr 2021 08:31:01 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbJ7V-0006ZD-8w; Tue, 27 Apr 2021 08:31: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=IsSeQwunhPr9X8tbKJhnbEUAHOEGZqQCyFjpQoCetZE=; b=SJWFf8YgPT6b8uXs3ugOBr9SPf
	Wttg+bhZtsG69HBJU+44PdorLpw7esQZ8aPjWKwV5fgHZolBevfr55cu946HgJ5Ti4hgbHMJNl9fK
	f1VP2rFCNSupoj7llhm/QeqjQ35i3z0EFQI8l9R4ph87GN6ReqOQAtM8m9PGULWdP1f8=;
Subject: Re: [PATCH 9/9] xen/arm64: Remove READ/WRITE_SYSREG32 helper macros
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210420070853.8918-1-michal.orzel@arm.com>
 <20210420070853.8918-10-michal.orzel@arm.com>
 <c318c303-1187-3a64-833b-0684a2dc4312@xen.org>
 <a37f7d85-dee7-d2f8-9883-1a8004d1ca25@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <0d4ffc04-3fbb-4b62-f6d8-e33da427e505@xen.org>
Date: Tue, 27 Apr 2021 09:30:59 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <a37f7d85-dee7-d2f8-9883-1a8004d1ca25@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 27/04/2021 08:16, Michal Orzel wrote:
> Hi Jilien,

Hi,

> On 21.04.2021 21:16, Julien Grall wrote:
>> Hi Michal,
>>
>> On 20/04/2021 08:08, Michal Orzel wrote:
>>> AArch64 system registers are 64bit whereas AArch32 ones
>>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>>> we should get rid of helpers READ/WRITE_SYSREG32
>>> in favour of using READ/WRITE_SYSREG.
>>> We should also use register_t type when reading sysregs
>>> which can correspond to uint64_t or uint32_t.
>>> Even though many AArch64 sysregs have upper 32bit reserved
>>> it does not mean that they can't be widen in the future.
>>
>> As a general comment, all your commit message contains information about the goal (which is great). But they don't go much in details about the actual changes. I have tried to point out where I think those details would be helpful.
>>
>>>
>>> As there are no other places in the code using READ/WRITE_SYSREG32,
>>> remove the helper macros.
>>>
>>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>>> ---
>>>    xen/arch/arm/vcpreg.c               | 16 ++++++++++++++++
>>>    xen/include/asm-arm/arm64/sysregs.h |  5 -----
>>>    2 files changed, 16 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c
>>> index c7f516ee0a..6cb7f3108c 100644
>>> --- a/xen/arch/arm/vcpreg.c
>>> +++ b/xen/arch/arm/vcpreg.c
>>> @@ -48,6 +48,7 @@
>>>     */
>>>      /* The name is passed from the upper macro to workaround macro expansion. */
>>> +#ifdef CONFIG_ARM_32
>>>    #define TVM_REG(sz, func, reg...)                                           \
>>>    static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
>>>    {                                                                           \
>>> @@ -61,6 +62,21 @@ static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
>>>                                                                                \
>>>        return true;                                                            \
>>>    }
>>> +#else /* CONFIG_ARM_64 */
>>> +#define TVM_REG(sz, func, reg...)                                           \
>>> +static bool func(struct cpu_user_regs *regs, uint##sz##_t *r, bool read)    \
>>> +{                                                                           \
>>> +    struct vcpu *v = current;                                               \
>>> +    bool cache_enabled = vcpu_has_cache_enabled(v);                         \
>>> +                                                                            \
>>> +    GUEST_BUG_ON(read);                                                     \
>>> +    WRITE_SYSREG(*r, reg);                                                  \
>>> +                                                                            \
>>> +    p2m_toggle_cache(v, cache_enabled);                                     \
>>> +                                                                            \
>>> +    return true;                                                            \
>>> +}
>>> +#endif
>>
>> It would be nice if this change can be explained in the commit message. However, I think we can avoid the duplication by aliasing TVM_REG32() to TVM_REG64() on Arm64.
>>
> Unfortunately we cannot. This is the only working solution for now.
> If we do the alias we will get many errors due to incompatbile pointer type in vreg_emulate_*.
> Without a proper change in this functions we can't do that.

Right, so the prototype needs to stay the same. How about provide a 
wrapper WRITE_SYSREG_SZ(sz, val, sysreg) internal to vcpreg.c?

On 32-bit it would expand to WRITE_SYSREG##sz(val, sysreg) and on 
64-bit, it would expand to WRITE_SYSREG().

> I will modify it once I start working on vreg_emulate topic but it requires more investigation.

While it would be great to get rid of {READ, WRITE}_SYSREG32, I don't 
want to duplicate the code (even temporarily) just for the sake for 
removing the helpers.

If the new proposal I suggested above doesn't work, then I would 
strongly prefer to keep the existing code until vreg_emulate_* is reworked.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 08:35:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 08:35:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118107.224083 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbJCB-0000z4-7u; Tue, 27 Apr 2021 08:35:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118107.224083; Tue, 27 Apr 2021 08:35:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbJCB-0000yx-4l; Tue, 27 Apr 2021 08:35:51 +0000
Received: by outflank-mailman (input) for mailman id 118107;
 Tue, 27 Apr 2021 08:35:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbJCA-0000ys-KB
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 08:35:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3e716c9e-8ce6-4e62-a500-5bfe7e6b153f;
 Tue, 27 Apr 2021 08:35:49 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C5C9AB007;
 Tue, 27 Apr 2021 08:35: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: 3e716c9e-8ce6-4e62-a500-5bfe7e6b153f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619512548; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=6JO7X/cz5eg8beGmPKE/svwlRrvFNg2TXGXMs5rnfos=;
	b=J9H0zW28bfXIe842IgKqhSXFQrr9sWcTuZRhEYSxispjyLgV7joWkxBrRsNCxMO3DuUsfV
	4LM/o+TunHv/Nw1IZEclz5Hx6Oa+NXhFm4XduJI/C+7SlYJOXoGTov7drg87MXxn4ll3fi
	zh+kGXKV6fKmJgNbtXxOXLCsI/tNoA0=
Subject: Ping: [Bugfix PATCH for-4.15] xen: credit2: fix per-entity load
 tracking when continuing running
To: Dario Faggioli <dfaggioli@suse.com>,
 George Dunlap <george.dunlap@citrix.com>
Cc: Ian Jackson <iwj@xenproject.org>, xen-devel@lists.xenproject.org
References: <161615605709.5036.4052641880659992679.stgit@Wayrath>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a3f31cde-f1e5-e643-28bc-cdb2b36f372d@suse.com>
Date: Tue, 27 Apr 2021 10:35:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <161615605709.5036.4052641880659992679.stgit@Wayrath>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 19.03.2021 13:14, Dario Faggioli wrote:
> If we schedule, and the current vCPU continues to run, its statistical
> load is not properly updated, resulting in something like this, even if
> all the 8 vCPUs are 100% busy:
> 
> (XEN) Runqueue 0:
> (XEN) [...]
> (XEN)   aveload            = 2097152 (~800%)
> (XEN) [...]
> (XEN)   Domain: 0 w 256 c 0 v 8
> (XEN)     1: [0.0] flags=2 cpu=4 credit=9996885 [w=256] load=35 (~0%)
> (XEN)     2: [0.1] flags=2 cpu=2 credit=9993725 [w=256] load=796 (~0%)
> (XEN)     3: [0.2] flags=2 cpu=1 credit=9995885 [w=256] load=883 (~0%)
> (XEN)     4: [0.3] flags=2 cpu=5 credit=9998833 [w=256] load=487 (~0%)
> (XEN)     5: [0.4] flags=2 cpu=6 credit=9998942 [w=256] load=1595 (~0%)
> (XEN)     6: [0.5] flags=2 cpu=0 credit=9994669 [w=256] load=22 (~0%)
> (XEN)     7: [0.6] flags=2 cpu=7 credit=9997706 [w=256] load=0 (~0%)
> (XEN)     8: [0.7] flags=2 cpu=3 credit=9992440 [w=256] load=0 (~0%)
> 
> As we can see, the average load of the runqueue as a whole is, instead,
> computed properly.
> 
> This issue would, in theory, potentially affect Credit2 load balancing
> logic. In practice, however, the problem only manifests (at least with
> these characteristics) when there is only 1 runqueue active in the
> cpupool, which also means there is no need to do any load-balancing.
> 
> Hence its real impact is pretty much limited to wrong per-vCPU load
> percentages, when looking at the output of the 'r' debug-key.
> 
> With this patch, the load is updated and displayed correctly:
> 
> (XEN) Runqueue 0:
> (XEN) [...]
> (XEN)   aveload            = 2097152 (~800%)
> (XEN) [...]
> (XEN) Domain info:
> (XEN)   Domain: 0 w 256 c 0 v 8
> (XEN)     1: [0.0] flags=2 cpu=4 credit=9995584 [w=256] load=262144 (~100%)
> (XEN)     2: [0.1] flags=2 cpu=6 credit=9992992 [w=256] load=262144 (~100%)
> (XEN)     3: [0.2] flags=2 cpu=3 credit=9998918 [w=256] load=262118 (~99%)
> (XEN)     4: [0.3] flags=2 cpu=5 credit=9996867 [w=256] load=262144 (~100%)
> (XEN)     5: [0.4] flags=2 cpu=1 credit=9998912 [w=256] load=262144 (~100%)
> (XEN)     6: [0.5] flags=2 cpu=2 credit=9997842 [w=256] load=262144 (~100%)
> (XEN)     7: [0.6] flags=2 cpu=7 credit=9994623 [w=256] load=262144 (~100%)
> (XEN)     8: [0.7] flags=2 cpu=0 credit=9991815 [w=256] load=262144 (~100%)
> 
> Signed-off-by: Dario Faggioli <dfaggioli@suse.com>
> ---
> Cc: George Dunlap <george.dunlap@citrix.com>
> Cc: Ian Jackson <iwj@xenproject.org>
> ---
> Despite the limited effect, it's a bug. So:
> - it should be backported;
> - I think it should be included in 4.15. The risk is pretty low, for
>   the same reasons already explained when describing its limited impact.

I'm a little puzzled to find this is still in my waiting-to-go-in
folder, for not having had an ack (or otherwise). George?

Jan

> ---
>  xen/common/sched/credit2.c |    2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/xen/common/sched/credit2.c b/xen/common/sched/credit2.c
> index eb5e5a78c5..b3b5de94cf 100644
> --- a/xen/common/sched/credit2.c
> +++ b/xen/common/sched/credit2.c
> @@ -3646,6 +3646,8 @@ static void csched2_schedule(
>              runq_remove(snext);
>              __set_bit(__CSFLAG_scheduled, &snext->flags);
>          }
> +        else
> +            update_load(ops, rqd, snext, 0, now);
>  
>          /* Clear the idle mask if necessary */
>          if ( cpumask_test_cpu(sched_cpu, &rqd->idle) )
> 
> 
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 08:55:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 08:55:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118124.224095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbJUh-0002s5-Rd; Tue, 27 Apr 2021 08:54:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118124.224095; Tue, 27 Apr 2021 08: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 1lbJUh-0002ry-Nf; Tue, 27 Apr 2021 08:54:59 +0000
Received: by outflank-mailman (input) for mailman id 118124;
 Tue, 27 Apr 2021 08:54:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iXGC=JY=gmail.com=jiangshanlai@srs-us1.protection.inumbo.net>)
 id 1lbJUg-0002rt-PX
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 08:54:58 +0000
Received: from mail-pj1-x102e.google.com (unknown [2607:f8b0:4864:20::102e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 53d7ae31-15f2-4883-9adb-0a6bda47f70c;
 Tue, 27 Apr 2021 08:54:57 +0000 (UTC)
Received: by mail-pj1-x102e.google.com with SMTP id
 gc22-20020a17090b3116b02901558435aec1so3121635pjb.4
 for <xen-devel@lists.xenproject.org>; Tue, 27 Apr 2021 01:54:57 -0700 (PDT)
Received: from localhost ([47.251.4.198])
 by smtp.gmail.com with ESMTPSA id a65sm1986221pfb.116.2021.04.27.01.54.55
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 27 Apr 2021 01:54: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: 53d7ae31-15f2-4883-9adb-0a6bda47f70c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :mime-version:content-transfer-encoding;
        bh=DvudTC2BwHZGDoQJqasDl9cPJYuqaFYI5WCZvH5B/Zw=;
        b=oZTdWHWa9y4vR0NRkwGHue6dwcl2JqZgsg7a6+YjFGuPfYA01jgtr5CG2FVV6JxsZ9
         mypKHQE3nwLiAe0xgegucJmA7TC2ZoXS596vwbQv8YCiSKBLOMOYJ8Im+ZlEXh+zSJ9g
         CHv2PTnEtz7IYhTMf68AtMxtuO4rUylhz0qM2NHyetmNgDmoXfdZvPmgKbnLQf4ilqyT
         H0MgsAj/qVMZiQ9HbXjDKU6nbYGbANvN+DVIMT23z4vlS7QnD53TDBNLTwkBxXpsNpZE
         +KC9qHwy4uf+fbZxJj96Zrs7SPVrj/7U1zxWyVqqlCxxH8NWiTS4Q0V+XrcwxNqP1099
         RhDw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:mime-version:content-transfer-encoding;
        bh=DvudTC2BwHZGDoQJqasDl9cPJYuqaFYI5WCZvH5B/Zw=;
        b=ZEd+Frre0uiGn3lBteE+5rFTRHhgL7QAZoUV5j8Nu+bHsPPt+p/2mWt3vxgloDBXay
         N3JBWpHiTA1M5HsGViqkZzNwH0IsoWQ5OcwApKroY2UFR21EzU7p+TNz2hu9XWVa43DX
         l+qCA47fcULtjOo+Zqpv+JNq4n1VePeQa1iHVtd9S/TdsVbA/3Gbga2qA57i4RK7rjN9
         XSTZTQt1kAKmVOj0NKcCY5fpkcM4MHaF2PMoS+nQmKWOUo+RbUvLE0yc62UJuwS2ygXi
         2ubxK9mx8Cuosau5xlbuA9E7Mi1JuwyEtZVFMNfGDq9qylAbdk3QRj766Mt/bEqPz8tP
         hDdA==
X-Gm-Message-State: AOAM532wVB6sxlv0bMB1Fr/JsYCexfXX/O+2StMoOj063fOYZTwXaToa
	WVLHIvybHHuhLqf757xj/wM=
X-Google-Smtp-Source: ABdhPJyED8YOs73pY8DPavmzXj80ySfIXNvSlWASjVV8n8Ia2PPeO5IlLOQb7WEVRwY9uJ/wGmcSPA==
X-Received: by 2002:a17:90b:2393:: with SMTP id mr19mr3656655pjb.24.1619513697046;
        Tue, 27 Apr 2021 01:54:57 -0700 (PDT)
From: Lai Jiangshan <jiangshanlai@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: Lai Jiangshan <laijs@linux.alibaba.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Sean Christopherson <seanjc@google.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Andi Kleen <ak@linux.intel.com>,
	Andy Lutomirski <luto@kernel.org>,
	Vitaly Kuznetsov <vkuznets@redhat.com>,
	Wanpeng Li <wanpengli@tencent.com>,
	Jim Mattson <jmattson@google.com>,
	Joerg Roedel <joro@8bytes.org>,
	kvm@vger.kernel.org,
	Josh Poimboeuf <jpoimboe@redhat.com>,
	Uros Bizjak <ubizjak@gmail.com>,
	Maxim Levitsky <mlevitsk@redhat.com>,
	Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	x86@kernel.org,
	"H. Peter Anvin" <hpa@zytor.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Alexandre Chartre <alexandre.chartre@oracle.com>,
	Joerg Roedel <jroedel@suse.de>,
	Jian Cai <caij2003@gmail.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 1/4] x86/xen/entry: Rename xenpv_exc_nmi to noist_exc_nmi
Date: Tue, 27 Apr 2021 07:09:46 +0800
Message-Id: <20210426230949.3561-2-jiangshanlai@gmail.com>
X-Mailer: git-send-email 2.19.1.6.gb485710b
In-Reply-To: <20210426230949.3561-1-jiangshanlai@gmail.com>
References: <20210426230949.3561-1-jiangshanlai@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Lai Jiangshan <laijs@linux.alibaba.com>

There is no any functionality change intended.  Just rename it and
move it to arch/x86/kernel/nmi.c so that we can resue it later in
next patch for early NMI and kvm.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Sean Christopherson <seanjc@google.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Vitaly Kuznetsov <vkuznets@redhat.com>
Cc: Wanpeng Li <wanpengli@tencent.com>
Cc: Jim Mattson <jmattson@google.com>
Cc: Joerg Roedel <joro@8bytes.org>
Cc: kvm@vger.kernel.org
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Uros Bizjak <ubizjak@gmail.com>
Cc: Maxim Levitsky <mlevitsk@redhat.com>
Signed-off-by: Lai Jiangshan <laijs@linux.alibaba.com>
---
 arch/x86/include/asm/idtentry.h | 2 +-
 arch/x86/kernel/nmi.c           | 8 ++++++++
 arch/x86/xen/enlighten_pv.c     | 9 +++------
 arch/x86/xen/xen-asm.S          | 2 +-
 4 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/arch/x86/include/asm/idtentry.h b/arch/x86/include/asm/idtentry.h
index e35e342673c7..5b11d2ddbb5c 100644
--- a/arch/x86/include/asm/idtentry.h
+++ b/arch/x86/include/asm/idtentry.h
@@ -590,7 +590,7 @@ DECLARE_IDTENTRY_RAW(X86_TRAP_MC,	xenpv_exc_machine_check);
 /* NMI */
 DECLARE_IDTENTRY_NMI(X86_TRAP_NMI,	exc_nmi);
 #ifdef CONFIG_XEN_PV
-DECLARE_IDTENTRY_RAW(X86_TRAP_NMI,	xenpv_exc_nmi);
+DECLARE_IDTENTRY_RAW(X86_TRAP_NMI,	noist_exc_nmi);
 #endif
 
 /* #DB */
diff --git a/arch/x86/kernel/nmi.c b/arch/x86/kernel/nmi.c
index bf250a339655..2b907a76d0a1 100644
--- a/arch/x86/kernel/nmi.c
+++ b/arch/x86/kernel/nmi.c
@@ -524,6 +524,14 @@ DEFINE_IDTENTRY_RAW(exc_nmi)
 		mds_user_clear_cpu_buffers();
 }
 
+#ifdef CONFIG_XEN_PV
+DEFINE_IDTENTRY_RAW(noist_exc_nmi)
+{
+	/* On Xen PV, NMI doesn't use IST.  The C part is the same as native. */
+	exc_nmi(regs);
+}
+#endif
+
 void stop_nmi(void)
 {
 	ignore_nmis++;
diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
index 4f18cd9eacd8..5efbdb0905b7 100644
--- a/arch/x86/xen/enlighten_pv.c
+++ b/arch/x86/xen/enlighten_pv.c
@@ -565,12 +565,6 @@ static void xen_write_ldt_entry(struct desc_struct *dt, int entrynum,
 
 void noist_exc_debug(struct pt_regs *regs);
 
-DEFINE_IDTENTRY_RAW(xenpv_exc_nmi)
-{
-	/* On Xen PV, NMI doesn't use IST.  The C part is the same as native. */
-	exc_nmi(regs);
-}
-
 DEFINE_IDTENTRY_RAW_ERRORCODE(xenpv_exc_double_fault)
 {
 	/* On Xen PV, DF doesn't use IST.  The C part is the same as native. */
@@ -626,6 +620,9 @@ struct trap_array_entry {
 	.xen		= xen_asm_xenpv_##func,		\
 	.ist_okay	= ist_ok }
 
+/* Alias to make TRAP_ENTRY_REDIR() happy for nmi */
+#define xen_asm_xenpv_exc_nmi	xen_asm_noist_exc_nmi
+
 static struct trap_array_entry trap_array[] = {
 	TRAP_ENTRY_REDIR(exc_debug,			true  ),
 	TRAP_ENTRY_REDIR(exc_double_fault,		true  ),
diff --git a/arch/x86/xen/xen-asm.S b/arch/x86/xen/xen-asm.S
index 1e626444712b..12e7cbbb2a8d 100644
--- a/arch/x86/xen/xen-asm.S
+++ b/arch/x86/xen/xen-asm.S
@@ -130,7 +130,7 @@ _ASM_NOKPROBE(xen_\name)
 xen_pv_trap asm_exc_divide_error
 xen_pv_trap asm_xenpv_exc_debug
 xen_pv_trap asm_exc_int3
-xen_pv_trap asm_xenpv_exc_nmi
+xen_pv_trap asm_noist_exc_nmi
 xen_pv_trap asm_exc_overflow
 xen_pv_trap asm_exc_bounds
 xen_pv_trap asm_exc_invalid_op
-- 
2.19.1.6.gb485710b



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:05:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:05:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118132.224107 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbJep-0003yN-RH; Tue, 27 Apr 2021 09:05:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118132.224107; Tue, 27 Apr 2021 09:05:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbJep-0003yG-Nq; Tue, 27 Apr 2021 09:05:27 +0000
Received: by outflank-mailman (input) for mailman id 118132;
 Tue, 27 Apr 2021 09:05:26 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbJen-0003yB-Sn
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:05:26 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9c638880-03d0-4055-a19b-276ac693fa07;
 Tue, 27 Apr 2021 09:05: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: 9c638880-03d0-4055-a19b-276ac693fa07
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619514325;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=iDSOyvMPnznbZSaO1Ik0WZ81sWqPTRI2ohVT6ZZ06uQ=;
  b=ZHVi5vNKFxDFXlQH1QiNxCnLCsxNfu3AywSBxWNMT2v5xbF/ItLyDVIZ
   7O5XvluF2KwW/3pOQe9x6ocqiJi49sPQzMqwXzdUNAhfs/29ye3ngf/Vg
   CE4JmsQF916gRvTCrZnKWOoRlxbZ0FmeipU3EWqyf+ejdPqfcH/jP90Cm
   4=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: TJYSPKYT41JeKeKdfl1Ar1HQAYcjYlSz0erVMdWaK3VDWLEjFq3nY3gTNtpetW8FmzLA9nNI9Z
 fOooXuY+0VZytPfIpaNYUSTr6PaoCb8X2f8TtIjr4+zj9bO0OSMWqOQt+ncCgq2wLtN45hyuPf
 j2JE7bZx6aE8i6OU397awyiw9b4MWzRLbCMgpr6TktHd50GhVY8x777JcBPF/5+e//nkiG9HZ1
 78vvYrdEeM+j7PzfDU3yKYgzuR8/8E9/Kpjjr6y3htJf7XZ081Ert87HiDrO8APiOU7W6vnSD9
 vxA=
X-SBRS: 5.1
X-MesageID: 42481323
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:K7k2P6HuxHx4P0SppLqFWJTXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76
 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYfNi+wFEpqSA5aQbc4Do
 Ob/MpbpzymEE5nFPiTLH8DQuTFupn3j5rgexELHFoK7wOJgDOu5tfBYmWl9z0ZVC5CxqpnzH
 jdn2XCl96emtyY6juZ7W/c6JxKhMDso+EsOOWggtUYQw+c6DqAS59mX9S5zVUIicGprG0nid
 zd5yonVv4Dl0/5WkGQjV/T1xL70DAogkWSuWOwpXf4u8T2SHYbJqN69PtkWyDU4UYho91wuZ
 gjtwny1+s1fGH9tR/w6NTSWxZhmlDcmwtbrccpg2FCSoxbUbdNrOUkjTJoOa0dFyH34p1PKp
 gJMOjg4p9tADenRkGclGxuzNuwZ280DxeLT2MT0/blrQR+rTRXyVAVy9cYmWpF3JUhS4Nc7+
 CBCahwkqpSJ/VmIZ5VNaMke4+aG2bNSRXDPCa7JknmLrgOPzbop4Ts6Ls4yem2cPUzvdQPsa
 WEdGkdmX85ekroB8HL9oZM6ArxTGK0Wimo4t1C5rBi04eMBIbDAGmmchQDgsGgq/IQDonwQP
 CoIq9bBPflMC/HBZtJ5QvjQJNfQENuEfE9i5IeYRajs8jLIorluqjwa/DIPofgFj4iRyfRGX
 0GcD/vJNhRz0yiV3Pi6SKhGU/FSwjax9ZdAaLa9+8cxMwmLYtXqDUYjly/+4WqJFR5w+kLVX
 o7BImivrKwpGGw82qNxX5uIABhAkFc56ild3tLoAQNIn7laLprgaTaRUlimF+8YjNvRcLfFw
 BS435t/7isEpCWzSc+T/WqL3ydlHlWgH6RVZ8Tlumi6K7eC90FJ6djfJY0ORTAFhRzlwovgn
 xEchU4SkjWES6rr76kgpwSDOT2bMJ9nw+vHM5RpRvkxAahjPBqYkFecy+lUMaRjwprbSFTnE
 dN/6gWh6fFpSyiMlIlgOMzMERFbUOeBL4uNnXDWKxk3pTQPC1gR2aDgjKXzzU+YHDj+Ukpim
 v9FiGMYv3QDl1BundX77by/DpPBxagVnM1Tko/nZx2FGzAtHo26+ONa6ap+0a6a1cJwIgmQX
 r4SApXBjkr68G81RaTljrHKG4vwY82OPfBSJ45davI53+rIIqUtK0PEvNO5qx5PNT2vuJja5
 PYRyalaBfDT8850Q2coXgofBRuoH4/iPXyxVnL6nO70HNXO4ulHH1WA5UgZ/eS4GjvS6zWjN
 FXjdcpsfCxNWu0QNic0q3TZyNCLBSWgWPedZBdlblk+YYJ8J10FN3ndBGN8ldt9hA3Nt31m0
 MTW74T2sGIBqZfO+gpPxtE9V8onumVJEQlsgbKEvYzFGtd+kPzDpes2f70srIhDU2KmRvoNX
 Se+yNb+e3ZXyHr789sN4sAZUBXYlM78nJs4aercJDREhyjc4h4jRCHG074VL9WU66eH7oM6j
 58/tGThueSMw71whrZszc+AqVA9Q+cMI6PKTPJPe5D6NqhP1uQxoOs/c6olT/yDQKBVH5wv/
 wNSWUgKuJZijcji4Ur0i+9DozPy3hV7Gd20HVAjV7i2o+v/WHBO1pJWDep26lrYQ==
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42481323"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JzMrzk+h6/822B/PQ47BQ5oKG0+8sMeylw3Vy6Zy41Oi3mnPiCWR9VXEpxfjQJBRy+blw5ITMoQ+RIBFpNPwalvZD0wbDtY0PYTzHV6a2EEMiLJYYYFztKRYe0RxxEWvbFv61wU3sFE+N0sTq/fVr1j/XCQiSHFozobcteIsRU/sqG8K4t3/ZDrmTLht6liDkTh9+0qs1aSEr4Aav0lmivIyy7FxA/MrhVz4dMZWW2Evievk5vaqyYqvaATDejypOX5dGZuFubfqcaFS/Lmj27H0KIbmHTZuR/ss5yeLAsiGx5aqiBI7wuS95+NIXJ8/I+I3OlfHGF1VBR+C6BNMbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0NuqRjCniaUA8Mei4lmYCrH2yhGuw8nFaNF5XuwRRCo=;
 b=U5z6hVADurrvj63ErNLwzZ5OlgukfqvT5LVoZPJUs/PIltmTepzCnfG8jGPO9E4fcbVzJ4VRFeV/U/kSjNXA61QniMm960myZXqLZtSQ41QsH3F0XK+Q/4Qvf+WjDtu2rYCa2HuP6jEhC61iUm3k4hGrYcB2+g1wlz52evrdxHScqzQyfUTRXu8W4JWQtK/eo8i5h3P1L5o1sBwN+BVqoLVLgWRps43n31uEEHCQLfQXW8XUtK0Pp8AOiIDW+9wI2fwRH2nfthCGR//axdxs5EG4BKVPNHB72C4qQ8VsFr1uWIAU6ZrsyqQnMfJW25+o1P5RATV5xMaLinwjFowT+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=0NuqRjCniaUA8Mei4lmYCrH2yhGuw8nFaNF5XuwRRCo=;
 b=mLClvkNgqSn9o41/GmP/8r5hZxavBlZb+ZQr5mrGGfh3E5i8pPr9/KidKh1Pwk0RFUKpXo5WOlSzpjwYcOmJf4Z72aZ2LXgjPooOlxlHRxp5OsLFBaOubKnSS6wGYrfhwFreHnrpNw7wpt/9cJov7qYS4kj+m6Of8aislw+na8o=
Date: Tue, 27 Apr 2021 11:05:13 +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>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
Message-ID: <YIfTyT4rvD9yEqiM@Air-de-Roger>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
 <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
 <YH7/SvkrB2yGgRij@Air-de-Roger>
 <5170aa51-8e34-3a45-5bf6-c0a187b1c427@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <5170aa51-8e34-3a45-5bf6-c0a187b1c427@suse.com>
X-ClientProxiedBy: PR0P264CA0052.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:1d::16) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: cfa8c1c3-32e7-4042-5c68-08d9095b9467
X-MS-TrafficTypeDiagnostic: DM5PR03MB2491:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB24914A5CD0B931B77691EF3F8F419@DM5PR03MB2491.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3968;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: EulcsP6JMhr76Ub1gybOQR4kdK8meOyFPLA5V5M7SYL+911EfVIpFLbM6LOgJOEQ+rj2e1M3nZwwaKwRJTkzYeQu4ONl83gb0gXuoMmGNfvFyo0YJNpcejHTXMT3NlrdhKhCtpwxM1kPJepFK1k7hAOWOIk4d/7dzqxpR0jFySr/f1cxYuev80C6V1TwTVVND4I2UCsSDM1KypVVkV6dA9aAv8/XaLB0wZfMzhPBrveqVQFJZXGsZXE7Y4TrX21AKteFs5zzF6lQL6s9Dg3khZp/pvfzF+JB25boy6kLlgXElHq7bLnUe0c1WB4Q0iZC27Wm7aKX1U4N61dDYyPbqY5zpQRVOzsPoIKBe7Wmw8orC+suZWMbAamDpJCkrQ0n7Hca1BIsVb1zh4NWex/tpOpPXloF+s3NQGzkhYEX6HL9z1AQud+wa8mf2EU3Pi34nQmso2TB/oxB1X4+pv/nHjPLH4iTdlClXM7dDf2q71QQrKa3cy7S2U2rElgRVzmNrUKhQoWJTuNmtUJ5qi6hi1U4hKli2WwiuEJ4NQnnWqCtnFcHmhO8AlfFCFHqRdYVZsFAnHs6pe7KKib4sU7/swj0d/Xpy98dGsc+p2FOyAE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(136003)(376002)(366004)(39860400002)(346002)(396003)(4326008)(8676002)(2906002)(8936002)(5660300002)(6916009)(83380400001)(53546011)(6496006)(956004)(66556008)(6486002)(186003)(26005)(38100700002)(16526019)(316002)(6666004)(54906003)(33716001)(478600001)(9686003)(86362001)(66946007)(66476007)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/AitO/utB?=
X-MS-Exchange-CrossTenant-Network-Message-Id: cfa8c1c3-32e7-4042-5c68-08d9095b9467
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 09:05:18.7694
 (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: ZJnuoIGYgxM8ermu839xW3Zrp+a5ZkRqAMPxfL1t6y/O15tQ5nHx1r7cxYC71UK4C40E2DG4uxEGgzbFKIY+/g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2491
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 04:09:03PM +0200, Jan Beulich wrote:
> On 20.04.2021 18:20, Roger Pau Monné wrote:
> > On Tue, Apr 20, 2021 at 05:47:49PM +0200, Jan Beulich wrote:
> >> On 20.04.2021 17:29, Roger Pau Monné wrote:
> >>> On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
> >>>> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
> >>>>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
> >>>>  	@mv -f $@.new $@
> >>>>  
> >>>> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
> >>>> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
> >>>> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
> >>>> +	$(call move-if-changed,$@.new,$@)
> >>>
> >>> Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?
> >>
> >> Yes and no: Yes as far as the actual file location is concerned.
> >> No when considering where it gets generated: I generally consider
> >> it risky to generate files outside of the directory where make
> >> currently runs. There may be good reasons for certain exceptions,
> >> but personally I don't see this case as good enough a reason.
> >>
> >> Somewhat related - if doing as you suggest, which Makefile's
> >> clean: rule should clean up that file in your opinion?
> > 
> > The clean rule should be in the makefile where it's generated IMO,
> > same as asm-offsets.h clean rule currently in xen/Makefile.
> > 
> >> Nevertheless, if there's general agreement that keeping the file
> >> there is better, I'd make the change and simply ignore my unhappy
> >> feelings about it.
> > 
> > I don't have a strong opinion, it just feels weird to have this IMO
> > stray asm-offsets.s outside of it's arch directory, taking into
> > account that we have asm-offsets.h generated from xen/Makefile into an
> > arch specific directory already as a precedent in that makefile.
> 
> Well, asm-offsets.h generation doesn't involve the compiler, hence
> no .*.d files get generated and want including later. For
> asm-offsets.s to have dependencies properly honored, if we
> generated it in xen/arch/<arch>, .asm-offsets.d would also end up
> there, and hence including of it would need separately taking care
> of.

I'm not sure I understand what do you mean with inclusion need taking
care of separately. Isn't it expected for .d file to reside in the
same directory as the output, and hence picked up automatically?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118148.224126 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8Q-0006k4-Lp; Tue, 27 Apr 2021 09:36:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118148.224126; Tue, 27 Apr 2021 09: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 1lbK8Q-0006ju-F4; Tue, 27 Apr 2021 09:36:02 +0000
Received: by outflank-mailman (input) for mailman id 118148;
 Tue, 27 Apr 2021 09:36:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8P-0006jO-J7
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:01 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 4891b552-7a6d-4c71-a791-3c7fd5c57315;
 Tue, 27 Apr 2021 09:35:59 +0000 (UTC)
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 E2C88ED1;
 Tue, 27 Apr 2021 02:35:58 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 60BEA3F694;
 Tue, 27 Apr 2021 02:35: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: 4891b552-7a6d-4c71-a791-3c7fd5c57315
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v2 01/10] arm64/vfp: Get rid of READ/WRITE_SYSREG32
Date: Tue, 27 Apr 2021 11:35:37 +0200
Message-Id: <20210427093546.30703-2-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of FPCR, FPSR, FPEXC32_EL2 to register_t.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
 xen/arch/arm/arm64/vfp.c        | 12 ++++++------
 xen/include/asm-arm/arm64/vfp.h |  6 +++---
 2 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/xen/arch/arm/arm64/vfp.c b/xen/arch/arm/arm64/vfp.c
index 999a0d58a5..47885e76ba 100644
--- a/xen/arch/arm/arm64/vfp.c
+++ b/xen/arch/arm/arm64/vfp.c
@@ -26,10 +26,10 @@ void vfp_save_state(struct vcpu *v)
                  "stp q30, q31, [%1, #16 * 30]\n\t"
                  : "=Q" (*v->arch.vfp.fpregs) : "r" (v->arch.vfp.fpregs));
 
-    v->arch.vfp.fpsr = READ_SYSREG32(FPSR);
-    v->arch.vfp.fpcr = READ_SYSREG32(FPCR);
+    v->arch.vfp.fpsr = READ_SYSREG(FPSR);
+    v->arch.vfp.fpcr = READ_SYSREG(FPCR);
     if ( is_32bit_domain(v->domain) )
-        v->arch.vfp.fpexc32_el2 = READ_SYSREG32(FPEXC32_EL2);
+        v->arch.vfp.fpexc32_el2 = READ_SYSREG(FPEXC32_EL2);
 }
 
 void vfp_restore_state(struct vcpu *v)
@@ -55,8 +55,8 @@ void vfp_restore_state(struct vcpu *v)
                  "ldp q30, q31, [%1, #16 * 30]\n\t"
                  : : "Q" (*v->arch.vfp.fpregs), "r" (v->arch.vfp.fpregs));
 
-    WRITE_SYSREG32(v->arch.vfp.fpsr, FPSR);
-    WRITE_SYSREG32(v->arch.vfp.fpcr, FPCR);
+    WRITE_SYSREG(v->arch.vfp.fpsr, FPSR);
+    WRITE_SYSREG(v->arch.vfp.fpcr, FPCR);
     if ( is_32bit_domain(v->domain) )
-        WRITE_SYSREG32(v->arch.vfp.fpexc32_el2, FPEXC32_EL2);
+        WRITE_SYSREG(v->arch.vfp.fpexc32_el2, FPEXC32_EL2);
 }
diff --git a/xen/include/asm-arm/arm64/vfp.h b/xen/include/asm-arm/arm64/vfp.h
index 6ab5d36c6c..e6e8c363bc 100644
--- a/xen/include/asm-arm/arm64/vfp.h
+++ b/xen/include/asm-arm/arm64/vfp.h
@@ -7,9 +7,9 @@
 struct vfp_state
 {
     uint64_t fpregs[64] __vfp_aligned;
-    uint32_t fpcr;
-    uint32_t fpexc32_el2;
-    uint32_t fpsr;
+    register_t fpcr;
+    register_t fpexc32_el2;
+    register_t fpsr;
 };
 
 #endif /* _ARM_ARM64_VFP_H */
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118150.224155 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8a-0006qR-3n; Tue, 27 Apr 2021 09:36:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118150.224155; Tue, 27 Apr 2021 09: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 1lbK8a-0006qK-0j; Tue, 27 Apr 2021 09:36:12 +0000
Received: by outflank-mailman (input) for mailman id 118150;
 Tue, 27 Apr 2021 09:36:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8Y-0006jJ-AT
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:10 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id e7887ec5-a427-4c04-9f58-01a7c570b171;
 Tue, 27 Apr 2021 09:36:02 +0000 (UTC)
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 20B63106F;
 Tue, 27 Apr 2021 02:36:02 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id D37C63F694;
 Tue, 27 Apr 2021 02:36: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: e7887ec5-a427-4c04-9f58-01a7c570b171
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH v2 03/10] arm: Modify type of actlr to register_t
Date: Tue, 27 Apr 2021 11:35:39 +0200
Message-Id: <20210427093546.30703-4-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/arch/arm/domain.c        | 2 +-
 xen/include/asm-arm/domain.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index 621f518b83..c021a03c61 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -330,7 +330,7 @@ static void schedule_tail(struct vcpu *prev)
 
 static void continue_new_vcpu(struct vcpu *prev)
 {
-    current->arch.actlr = READ_SYSREG32(ACTLR_EL1);
+    current->arch.actlr = READ_SYSREG(ACTLR_EL1);
     processor_vcpu_initialise(current);
 
     schedule_tail(prev);
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index c6b59ee755..2d4f38c669 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -156,7 +156,7 @@ struct arch_vcpu
 
     /* Control Registers */
     register_t sctlr;
-    uint32_t actlr;
+    register_t actlr;
     uint32_t cpacr;
 
     uint32_t contextidr;
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118149.224143 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8U-0006mU-QW; Tue, 27 Apr 2021 09:36:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118149.224143; Tue, 27 Apr 2021 09:36: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 1lbK8U-0006mN-NG; Tue, 27 Apr 2021 09:36:06 +0000
Received: by outflank-mailman (input) for mailman id 118149;
 Tue, 27 Apr 2021 09:36:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8T-0006jJ-AQ
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:05 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 5a263592-b28c-4e82-bdce-c7fba4e098b1;
 Tue, 27 Apr 2021 09:36:01 +0000 (UTC)
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 85BFF101E;
 Tue, 27 Apr 2021 02:36:00 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3A6B53F694;
 Tue, 27 Apr 2021 02:35: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: 5a263592-b28c-4e82-bdce-c7fba4e098b1
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH v2 02/10] arm/domain: Get rid of READ/WRITE_SYSREG32
Date: Tue, 27 Apr 2021 11:35:38 +0200
Message-Id: <20210427093546.30703-3-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of register cntkctl to register_t.
Modify accesses to thumbee registers to use READ/WRITE_SYSREG.
No need to change type of thumbee registers to register_t as they
only exist on arm32.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
Changes since v1:
-Move modification of ACTLR into seperate patch
---
 xen/arch/arm/domain.c        | 18 +++++++++---------
 xen/include/asm-arm/domain.h |  2 +-
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index bdd3d3e5b5..621f518b83 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -113,13 +113,13 @@ static void ctxt_switch_from(struct vcpu *p)
     p->arch.tpidr_el1 = READ_SYSREG(TPIDR_EL1);
 
     /* Arch timer */
-    p->arch.cntkctl = READ_SYSREG32(CNTKCTL_EL1);
+    p->arch.cntkctl = READ_SYSREG(CNTKCTL_EL1);
     virt_timer_save(p);
 
     if ( is_32bit_domain(p->domain) && cpu_has_thumbee )
     {
-        p->arch.teecr = READ_SYSREG32(TEECR32_EL1);
-        p->arch.teehbr = READ_SYSREG32(TEEHBR32_EL1);
+        p->arch.teecr = READ_SYSREG(TEECR32_EL1);
+        p->arch.teehbr = READ_SYSREG(TEEHBR32_EL1);
     }
 
 #ifdef CONFIG_ARM_32
@@ -175,7 +175,7 @@ static void ctxt_switch_from(struct vcpu *p)
 
 static void ctxt_switch_to(struct vcpu *n)
 {
-    uint32_t vpidr;
+    register_t vpidr;
 
     /* When the idle VCPU is running, Xen will always stay in hypervisor
      * mode. Therefore we don't need to restore the context of an idle VCPU.
@@ -183,8 +183,8 @@ static void ctxt_switch_to(struct vcpu *n)
     if ( is_idle_vcpu(n) )
         return;
 
-    vpidr = READ_SYSREG32(MIDR_EL1);
-    WRITE_SYSREG32(vpidr, VPIDR_EL2);
+    vpidr = READ_SYSREG(MIDR_EL1);
+    WRITE_SYSREG(vpidr, VPIDR_EL2);
     WRITE_SYSREG(n->arch.vmpidr, VMPIDR_EL2);
 
     /* VGIC */
@@ -257,8 +257,8 @@ static void ctxt_switch_to(struct vcpu *n)
 
     if ( is_32bit_domain(n->domain) && cpu_has_thumbee )
     {
-        WRITE_SYSREG32(n->arch.teecr, TEECR32_EL1);
-        WRITE_SYSREG32(n->arch.teehbr, TEEHBR32_EL1);
+        WRITE_SYSREG(n->arch.teecr, TEECR32_EL1);
+        WRITE_SYSREG(n->arch.teehbr, TEEHBR32_EL1);
     }
 
 #ifdef CONFIG_ARM_32
@@ -274,7 +274,7 @@ static void ctxt_switch_to(struct vcpu *n)
 
     /* This is could trigger an hardware interrupt from the virtual
      * timer. The interrupt needs to be injected into the guest. */
-    WRITE_SYSREG32(n->arch.cntkctl, CNTKCTL_EL1);
+    WRITE_SYSREG(n->arch.cntkctl, CNTKCTL_EL1);
     virt_timer_restore(n);
 }
 
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 0a74df9931..c6b59ee755 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -190,7 +190,7 @@ struct arch_vcpu
     struct vgic_cpu vgic;
 
     /* Timer registers  */
-    uint32_t cntkctl;
+    register_t cntkctl;
 
     struct vtimer phys_timer;
     struct vtimer virt_timer;
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118147.224119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8Q-0006ja-AV; Tue, 27 Apr 2021 09:36:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118147.224119; Tue, 27 Apr 2021 09: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 1lbK8Q-0006jT-6x; Tue, 27 Apr 2021 09:36:02 +0000
Received: by outflank-mailman (input) for mailman id 118147;
 Tue, 27 Apr 2021 09:36:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8O-0006jJ-FD
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:00 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 59114410-c351-4e18-bd09-fc0a53efbb0f;
 Tue, 27 Apr 2021 09:35:58 +0000 (UTC)
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 0F2AFD6E;
 Tue, 27 Apr 2021 02:35:57 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A0CD53F694;
 Tue, 27 Apr 2021 02:35: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: 59114410-c351-4e18-bd09-fc0a53efbb0f
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	bertrand.marquis@arm.com
Subject: [PATCH v2 00/10] Get rid of READ/WRITE_SYSREG32
Date: Tue, 27 Apr 2021 11:35:36 +0200
Message-Id: <20210427093546.30703-1-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The purpose of this patch series is to remove usage of 32bit helper
macros READ/WRITE_SYSREG32 on arm64 as the idea of them is
not following the latest ARMv8 specification and mrs/msr instructions
are expecting 64bit values.
According to ARM DDI 0487G.a all the AArch64 system registers
are 64bit wide even though many of them have upper 32bit reserved.
This does not mean that in the newer versions of ARMv8 or in the next
architecture, some of the sysregs will get widen.
Also when dealing with system registers we should use register_t
type.

This patch series removes the use of READ/WRITE_SYSREG32
and replaces these calls with READ/WRITE_SYSREG. The change was
splited into several small patches to make the review proces easier.

This patch series focuses on removing READ/WRITE_SYSREG32.
The next thing to do is to also get rid of vreg_emulate_sysreg32
and other parts related to it like TVM_REG macro.
The final part will be to completely remove macros READ/WRITE_SYSREG32.

Michal Orzel (10):
  arm64/vfp: Get rid of READ/WRITE_SYSREG32
  arm/domain: Get rid of READ/WRITE_SYSREG32
  arm: Modify type of actlr to register_t
  arm/gic: Remove member hcr of structure gic_v3
  arm/gic: Get rid of READ/WRITE_SYSREG32
  arm/p2m: Get rid of READ/WRITE_SYSREG32
  arm/mm: Get rid of READ/WRITE_SYSREG32
  arm/page: Get rid of READ/WRITE_SYSREG32
  arm/time,vtimer: Get rid of READ/WRITE_SYSREG32
  arm64: Change type of hsr, cpsr, spsr_el1 to uint64_t

 xen/arch/arm/arm64/entry.S            |  4 +-
 xen/arch/arm/arm64/traps.c            |  2 +-
 xen/arch/arm/arm64/vfp.c              | 12 ++--
 xen/arch/arm/arm64/vsysreg.c          |  3 +-
 xen/arch/arm/domain.c                 | 22 +++---
 xen/arch/arm/gic-v3-lpi.c             |  2 +-
 xen/arch/arm/gic-v3.c                 | 98 ++++++++++++++-------------
 xen/arch/arm/mm.c                     |  2 +-
 xen/arch/arm/p2m.c                    |  8 +--
 xen/arch/arm/time.c                   | 28 ++++----
 xen/arch/arm/traps.c                  | 34 ++++++----
 xen/arch/arm/vcpreg.c                 | 13 ++--
 xen/arch/arm/vtimer.c                 | 10 +--
 xen/include/asm-arm/arm64/processor.h | 11 +--
 xen/include/asm-arm/arm64/vfp.h       |  6 +-
 xen/include/asm-arm/domain.h          |  6 +-
 xen/include/asm-arm/gic.h             |  6 +-
 xen/include/asm-arm/gic_v3_defs.h     |  2 +
 xen/include/asm-arm/hsr.h             | 14 +++-
 xen/include/asm-arm/page.h            |  4 +-
 xen/include/asm-arm/processor.h       |  9 ++-
 xen/include/public/arch-arm.h         |  4 +-
 xen/include/public/vm_event.h         |  4 ++
 23 files changed, 169 insertions(+), 135 deletions(-)

-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118151.224167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8f-0006vk-EI; Tue, 27 Apr 2021 09:36:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118151.224167; Tue, 27 Apr 2021 09: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 1lbK8f-0006vd-AU; Tue, 27 Apr 2021 09:36:17 +0000
Received: by outflank-mailman (input) for mailman id 118151;
 Tue, 27 Apr 2021 09:36:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8d-0006jJ-Ae
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:15 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 101a5026-5b11-48f9-9d27-0185aa048d18;
 Tue, 27 Apr 2021 09:36:04 +0000 (UTC)
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 C2AE0101E;
 Tue, 27 Apr 2021 02:36:03 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6CAC33F694;
 Tue, 27 Apr 2021 02:36: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: 101a5026-5b11-48f9-9d27-0185aa048d18
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH v2 04/10] arm/gic: Remove member hcr of structure gic_v3
Date: Tue, 27 Apr 2021 11:35:40 +0200
Message-Id: <20210427093546.30703-5-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

... as it is never used even in the patch introducing it.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 xen/include/asm-arm/gic.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
index ad0f7452d0..5069ab4aac 100644
--- a/xen/include/asm-arm/gic.h
+++ b/xen/include/asm-arm/gic.h
@@ -171,7 +171,7 @@
  * GICv3 registers that needs to be saved/restored
  */
 struct gic_v3 {
-    uint32_t hcr, vmcr, sre_el1;
+    uint32_t vmcr, sre_el1;
     uint32_t apr0[4];
     uint32_t apr1[4];
     uint64_t lr[16];
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118152.224179 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8j-000708-Nt; Tue, 27 Apr 2021 09:36:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118152.224179; Tue, 27 Apr 2021 09:36: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 1lbK8j-0006zz-KX; Tue, 27 Apr 2021 09:36:21 +0000
Received: by outflank-mailman (input) for mailman id 118152;
 Tue, 27 Apr 2021 09:36:20 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8i-0006jJ-Aq
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:20 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id c325b09f-43b8-4fb6-bdbc-016a89d43e5d;
 Tue, 27 Apr 2021 09:36:06 +0000 (UTC)
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 16075101E;
 Tue, 27 Apr 2021 02:36:06 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 1F6BD3F694;
 Tue, 27 Apr 2021 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: c325b09f-43b8-4fb6-bdbc-016a89d43e5d
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH v2 05/10] arm/gic: Get rid of READ/WRITE_SYSREG32
Date: Tue, 27 Apr 2021 11:35:41 +0200
Message-Id: <20210427093546.30703-6-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify types of following members of struct gic_v3 to register_t:
-vmcr
-sre_el1
-apr0
-apr1

Add new macro GICC_IAR_INTID_MASK containing the mask
for INTID field of ICC_IAR0/1_EL1 register.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
Changes since v1:
-Remove hcr member of gic_v3 in a seperate patch
-Add macro GICC_IAR_INTID_MASK
-Remove explicit cast in favor of implicit cast
---
 xen/arch/arm/gic-v3-lpi.c         |  2 +-
 xen/arch/arm/gic-v3.c             | 98 ++++++++++++++++---------------
 xen/include/asm-arm/gic.h         |  6 +-
 xen/include/asm-arm/gic_v3_defs.h |  2 +
 4 files changed, 58 insertions(+), 50 deletions(-)

diff --git a/xen/arch/arm/gic-v3-lpi.c b/xen/arch/arm/gic-v3-lpi.c
index 869bc97fa1..e1594dd20e 100644
--- a/xen/arch/arm/gic-v3-lpi.c
+++ b/xen/arch/arm/gic-v3-lpi.c
@@ -178,7 +178,7 @@ void gicv3_do_LPI(unsigned int lpi)
     irq_enter();
 
     /* EOI the LPI already. */
-    WRITE_SYSREG32(lpi, ICC_EOIR1_EL1);
+    WRITE_SYSREG(lpi, ICC_EOIR1_EL1);
 
     /* Find out if a guest mapped something to this physical LPI. */
     hlpip = gic_get_host_lpi(lpi);
diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
index ac28013c19..b86f040589 100644
--- a/xen/arch/arm/gic-v3.c
+++ b/xen/arch/arm/gic-v3.c
@@ -246,12 +246,12 @@ static void gicv3_ich_write_lr(int lr, uint64_t val)
  */
 static void gicv3_enable_sre(void)
 {
-    uint32_t val;
+    register_t val;
 
-    val = READ_SYSREG32(ICC_SRE_EL2);
+    val = READ_SYSREG(ICC_SRE_EL2);
     val |= GICC_SRE_EL2_SRE;
 
-    WRITE_SYSREG32(val, ICC_SRE_EL2);
+    WRITE_SYSREG(val, ICC_SRE_EL2);
     isb();
 }
 
@@ -315,16 +315,16 @@ static void restore_aprn_regs(const union gic_state_data *d)
     switch ( gicv3.nr_priorities )
     {
     case 7:
-        WRITE_SYSREG32(d->v3.apr0[2], ICH_AP0R2_EL2);
-        WRITE_SYSREG32(d->v3.apr1[2], ICH_AP1R2_EL2);
+        WRITE_SYSREG(d->v3.apr0[2], ICH_AP0R2_EL2);
+        WRITE_SYSREG(d->v3.apr1[2], ICH_AP1R2_EL2);
         /* Fall through */
     case 6:
-        WRITE_SYSREG32(d->v3.apr0[1], ICH_AP0R1_EL2);
-        WRITE_SYSREG32(d->v3.apr1[1], ICH_AP1R1_EL2);
+        WRITE_SYSREG(d->v3.apr0[1], ICH_AP0R1_EL2);
+        WRITE_SYSREG(d->v3.apr1[1], ICH_AP1R1_EL2);
         /* Fall through */
     case 5:
-        WRITE_SYSREG32(d->v3.apr0[0], ICH_AP0R0_EL2);
-        WRITE_SYSREG32(d->v3.apr1[0], ICH_AP1R0_EL2);
+        WRITE_SYSREG(d->v3.apr0[0], ICH_AP0R0_EL2);
+        WRITE_SYSREG(d->v3.apr1[0], ICH_AP1R0_EL2);
         break;
     default:
         BUG();
@@ -338,16 +338,16 @@ static void save_aprn_regs(union gic_state_data *d)
     switch ( gicv3.nr_priorities )
     {
     case 7:
-        d->v3.apr0[2] = READ_SYSREG32(ICH_AP0R2_EL2);
-        d->v3.apr1[2] = READ_SYSREG32(ICH_AP1R2_EL2);
+        d->v3.apr0[2] = READ_SYSREG(ICH_AP0R2_EL2);
+        d->v3.apr1[2] = READ_SYSREG(ICH_AP1R2_EL2);
         /* Fall through */
     case 6:
-        d->v3.apr0[1] = READ_SYSREG32(ICH_AP0R1_EL2);
-        d->v3.apr1[1] = READ_SYSREG32(ICH_AP1R1_EL2);
+        d->v3.apr0[1] = READ_SYSREG(ICH_AP0R1_EL2);
+        d->v3.apr1[1] = READ_SYSREG(ICH_AP1R1_EL2);
         /* Fall through */
     case 5:
-        d->v3.apr0[0] = READ_SYSREG32(ICH_AP0R0_EL2);
-        d->v3.apr1[0] = READ_SYSREG32(ICH_AP1R0_EL2);
+        d->v3.apr0[0] = READ_SYSREG(ICH_AP0R0_EL2);
+        d->v3.apr1[0] = READ_SYSREG(ICH_AP1R0_EL2);
         break;
     default:
         BUG();
@@ -371,15 +371,15 @@ static void gicv3_save_state(struct vcpu *v)
     dsb(sy);
     gicv3_save_lrs(v);
     save_aprn_regs(&v->arch.gic);
-    v->arch.gic.v3.vmcr = READ_SYSREG32(ICH_VMCR_EL2);
-    v->arch.gic.v3.sre_el1 = READ_SYSREG32(ICC_SRE_EL1);
+    v->arch.gic.v3.vmcr = READ_SYSREG(ICH_VMCR_EL2);
+    v->arch.gic.v3.sre_el1 = READ_SYSREG(ICC_SRE_EL1);
 }
 
 static void gicv3_restore_state(const struct vcpu *v)
 {
-    uint32_t val;
+    register_t val;
 
-    val = READ_SYSREG32(ICC_SRE_EL2);
+    val = READ_SYSREG(ICC_SRE_EL2);
     /*
      * Don't give access to system registers when the guest is using
      * GICv2
@@ -388,7 +388,7 @@ static void gicv3_restore_state(const struct vcpu *v)
         val &= ~GICC_SRE_EL2_ENEL1;
     else
         val |= GICC_SRE_EL2_ENEL1;
-    WRITE_SYSREG32(val, ICC_SRE_EL2);
+    WRITE_SYSREG(val, ICC_SRE_EL2);
 
     /*
      * VFIQEn is RES1 if ICC_SRE_EL1.SRE is 1. This causes a Group0
@@ -398,9 +398,9 @@ static void gicv3_restore_state(const struct vcpu *v)
      * want before starting to mess with the rest of the GIC, and
      * VMCR_EL1 in particular.
      */
-    WRITE_SYSREG32(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
+    WRITE_SYSREG(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
     isb();
-    WRITE_SYSREG32(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
+    WRITE_SYSREG(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
     restore_aprn_regs(&v->arch.gic);
     gicv3_restore_lrs(v);
 
@@ -468,24 +468,25 @@ static void gicv3_mask_irq(struct irq_desc *irqd)
 static void gicv3_eoi_irq(struct irq_desc *irqd)
 {
     /* Lower the priority */
-    WRITE_SYSREG32(irqd->irq, ICC_EOIR1_EL1);
+    WRITE_SYSREG(irqd->irq, ICC_EOIR1_EL1);
     isb();
 }
 
 static void gicv3_dir_irq(struct irq_desc *irqd)
 {
     /* Deactivate */
-    WRITE_SYSREG32(irqd->irq, ICC_DIR_EL1);
+    WRITE_SYSREG(irqd->irq, ICC_DIR_EL1);
     isb();
 }
 
 static unsigned int gicv3_read_irq(void)
 {
-    unsigned int irq = READ_SYSREG32(ICC_IAR1_EL1);
+    register_t irq = READ_SYSREG(ICC_IAR1_EL1);
 
     dsb(sy);
 
-    return irq;
+    /* IRQs are encoded using 23bit. */
+    return (irq & GICC_IAR_INTID_MASK);
 }
 
 /*
@@ -857,16 +858,16 @@ static int gicv3_cpu_init(void)
     gicv3_enable_sre();
 
     /* No priority grouping */
-    WRITE_SYSREG32(0, ICC_BPR1_EL1);
+    WRITE_SYSREG(0, ICC_BPR1_EL1);
 
     /* Set priority mask register */
-    WRITE_SYSREG32(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
+    WRITE_SYSREG(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
 
     /* EOI drops priority, DIR deactivates the interrupt (mode 1) */
-    WRITE_SYSREG32(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
+    WRITE_SYSREG(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
 
     /* Enable Group1 interrupts */
-    WRITE_SYSREG32(1, ICC_IGRPEN1_EL1);
+    WRITE_SYSREG(1, ICC_IGRPEN1_EL1);
 
     /* Sync at once at the end of cpu interface configuration */
     isb();
@@ -876,15 +877,15 @@ static int gicv3_cpu_init(void)
 
 static void gicv3_cpu_disable(void)
 {
-    WRITE_SYSREG32(0, ICC_CTLR_EL1);
+    WRITE_SYSREG(0, ICC_CTLR_EL1);
     isb();
 }
 
 static void gicv3_hyp_init(void)
 {
-    uint32_t vtr;
+    register_t vtr;
 
-    vtr = READ_SYSREG32(ICH_VTR_EL2);
+    vtr = READ_SYSREG(ICH_VTR_EL2);
     gicv3_info.nr_lrs  = (vtr & ICH_VTR_NRLRGS) + 1;
     gicv3.nr_priorities = ((vtr >> ICH_VTR_PRIBITS_SHIFT) &
                           ICH_VTR_PRIBITS_MASK) + 1;
@@ -892,8 +893,8 @@ static void gicv3_hyp_init(void)
     if ( !((gicv3.nr_priorities > 4) && (gicv3.nr_priorities < 8)) )
         panic("GICv3: Invalid number of priority bits\n");
 
-    WRITE_SYSREG32(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
-    WRITE_SYSREG32(GICH_HCR_EN, ICH_HCR_EL2);
+    WRITE_SYSREG(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
+    WRITE_SYSREG(GICH_HCR_EN, ICH_HCR_EL2);
 }
 
 /* Set up the per-CPU parts of the GIC for a secondary CPU */
@@ -917,11 +918,11 @@ out:
 
 static void gicv3_hyp_disable(void)
 {
-    uint32_t hcr;
+    register_t hcr;
 
-    hcr = READ_SYSREG32(ICH_HCR_EL2);
+    hcr = READ_SYSREG(ICH_HCR_EL2);
     hcr &= ~GICH_HCR_EN;
-    WRITE_SYSREG32(hcr, ICH_HCR_EL2);
+    WRITE_SYSREG(hcr, ICH_HCR_EL2);
     isb();
 }
 
@@ -1140,39 +1141,44 @@ static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
 
 static void gicv3_hcr_status(uint32_t flag, bool status)
 {
-    uint32_t hcr;
+    register_t hcr;
 
-    hcr = READ_SYSREG32(ICH_HCR_EL2);
+    hcr = READ_SYSREG(ICH_HCR_EL2);
     if ( status )
-        WRITE_SYSREG32(hcr | flag, ICH_HCR_EL2);
+        WRITE_SYSREG(hcr | flag, ICH_HCR_EL2);
     else
-        WRITE_SYSREG32(hcr & (~flag), ICH_HCR_EL2);
+        WRITE_SYSREG(hcr & (~flag), ICH_HCR_EL2);
     isb();
 }
 
 static unsigned int gicv3_read_vmcr_priority(void)
 {
-   return ((READ_SYSREG32(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
+   return ((READ_SYSREG(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
             ICH_VMCR_PRIORITY_MASK);
 }
 
 /* Only support reading GRP1 APRn registers */
 static unsigned int gicv3_read_apr(int apr_reg)
 {
+    register_t apr;
+
     switch ( apr_reg )
     {
     case 0:
         ASSERT(gicv3.nr_priorities > 4 && gicv3.nr_priorities < 8);
-        return READ_SYSREG32(ICH_AP1R0_EL2);
+        apr = READ_SYSREG(ICH_AP1R0_EL2);
     case 1:
         ASSERT(gicv3.nr_priorities > 5 && gicv3.nr_priorities < 8);
-        return READ_SYSREG32(ICH_AP1R1_EL2);
+        apr = READ_SYSREG(ICH_AP1R1_EL2);
     case 2:
         ASSERT(gicv3.nr_priorities > 6 && gicv3.nr_priorities < 8);
-        return READ_SYSREG32(ICH_AP1R2_EL2);
+        apr = READ_SYSREG(ICH_AP1R2_EL2);
     default:
         BUG();
     }
+
+    /* Number of priority levels do not exceed 32bit. */
+    return apr;
 }
 
 static bool gicv3_read_pending_state(struct irq_desc *irqd)
diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
index 5069ab4aac..c7f0c343d1 100644
--- a/xen/include/asm-arm/gic.h
+++ b/xen/include/asm-arm/gic.h
@@ -171,9 +171,9 @@
  * GICv3 registers that needs to be saved/restored
  */
 struct gic_v3 {
-    uint32_t vmcr, sre_el1;
-    uint32_t apr0[4];
-    uint32_t apr1[4];
+    register_t vmcr, sre_el1;
+    register_t apr0[4];
+    register_t apr1[4];
     uint64_t lr[16];
 };
 #endif
diff --git a/xen/include/asm-arm/gic_v3_defs.h b/xen/include/asm-arm/gic_v3_defs.h
index 5a578e7c11..34ed5f857d 100644
--- a/xen/include/asm-arm/gic_v3_defs.h
+++ b/xen/include/asm-arm/gic_v3_defs.h
@@ -45,6 +45,8 @@
 #define GICC_SRE_EL2_DIB             (1UL << 2)
 #define GICC_SRE_EL2_ENEL1           (1UL << 3)
 
+#define GICC_IAR_INTID_MASK          (0xFFFFFF)
+
 /* Additional bits in GICD_TYPER defined by GICv3 */
 #define GICD_TYPE_ID_BITS_SHIFT 19
 #define GICD_TYPE_ID_BITS(r)    ((((r) >> GICD_TYPE_ID_BITS_SHIFT) & 0x1f) + 1)
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118155.224191 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8p-000764-9S; Tue, 27 Apr 2021 09:36:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118155.224191; Tue, 27 Apr 2021 09:36:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8p-00075w-4r; Tue, 27 Apr 2021 09:36:27 +0000
Received: by outflank-mailman (input) for mailman id 118155;
 Tue, 27 Apr 2021 09:36:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8n-0006jJ-Av
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:25 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id 936cbc0e-97a9-4437-bdb8-34e6d9e003d6;
 Tue, 27 Apr 2021 09:36:08 +0000 (UTC)
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 4243DED1;
 Tue, 27 Apr 2021 02:36:08 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A000A3F694;
 Tue, 27 Apr 2021 02:36: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: 936cbc0e-97a9-4437-bdb8-34e6d9e003d6
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v2 06/10] arm/p2m: Get rid of READ/WRITE_SYSREG32
Date: Tue, 27 Apr 2021 11:35:42 +0200
Message-Id: <20210427093546.30703-7-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of vtcr to register_t.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
 xen/arch/arm/p2m.c   | 8 ++++----
 xen/arch/arm/traps.c | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index ac50312620..d414c4feb9 100644
--- a/xen/arch/arm/p2m.c
+++ b/xen/arch/arm/p2m.c
@@ -1973,11 +1973,11 @@ void __init p2m_restrict_ipa_bits(unsigned int ipa_bits)
 }
 
 /* VTCR value to be configured by all CPUs. Set only once by the boot CPU */
-static uint32_t __read_mostly vtcr;
+static register_t __read_mostly vtcr;
 
 static void setup_virt_paging_one(void *data)
 {
-    WRITE_SYSREG32(vtcr, VTCR_EL2);
+    WRITE_SYSREG(vtcr, VTCR_EL2);
 
     /*
      * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from
@@ -2000,7 +2000,7 @@ static void setup_virt_paging_one(void *data)
 void __init setup_virt_paging(void)
 {
     /* Setup Stage 2 address translation */
-    unsigned long val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA;
+    register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA;
 
 #ifdef CONFIG_ARM_32
     if ( p2m_ipa_bits < 40 )
@@ -2089,7 +2089,7 @@ void __init setup_virt_paging(void)
            pa_range_info[pa_range].pabits,
            ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8);
 #endif
-    printk("P2M: %d levels with order-%d root, VTCR 0x%lx\n",
+    printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n",
            4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val);
 
     p2m_vmid_allocator_init();
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index ccc0827107..c7acdb2087 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -911,7 +911,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
         show_registers_32(regs, ctxt, guest_mode, v);
 #endif
     }
-    printk("  VTCR_EL2: %08"PRIx32"\n", READ_SYSREG32(VTCR_EL2));
+    printk("  VTCR_EL2: %"PRIregister"\n", READ_SYSREG(VTCR_EL2));
     printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
     printk("\n");
 
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118158.224203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8s-0007AA-Jf; Tue, 27 Apr 2021 09:36:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118158.224203; Tue, 27 Apr 2021 09: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 1lbK8s-0007A2-FG; Tue, 27 Apr 2021 09:36:30 +0000
Received: by outflank-mailman (input) for mailman id 118158;
 Tue, 27 Apr 2021 09:36:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8q-00078W-Th
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:28 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id a2e6f0ca-dac9-499f-b95e-afb98979a864;
 Tue, 27 Apr 2021 09:36:27 +0000 (UTC)
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 84C9BD6E;
 Tue, 27 Apr 2021 02:36:27 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A03933F694;
 Tue, 27 Apr 2021 02:36: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: a2e6f0ca-dac9-499f-b95e-afb98979a864
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v2 08/10] arm/page: Get rid of READ/WRITE_SYSREG32
Date: Tue, 27 Apr 2021 11:35:44 +0200
Message-Id: <20210427093546.30703-9-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify accesses to CTR_EL0 to use READ/WRITE_SYSREG.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
 xen/include/asm-arm/page.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/include/asm-arm/page.h b/xen/include/asm-arm/page.h
index 131507a517..c6f9fb0d4e 100644
--- a/xen/include/asm-arm/page.h
+++ b/xen/include/asm-arm/page.h
@@ -137,10 +137,10 @@ extern size_t dcache_line_bytes;
 
 static inline size_t read_dcache_line_bytes(void)
 {
-    uint32_t ctr;
+    register_t ctr;
 
     /* Read CTR */
-    ctr = READ_SYSREG32(CTR_EL0);
+    ctr = READ_SYSREG(CTR_EL0);
 
     /* Bits 16-19 are the log2 number of words in the cacheline. */
     return (size_t) (4 << ((ctr >> 16) & 0xf));
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118161.224215 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK8t-0007CP-Ta; Tue, 27 Apr 2021 09:36:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118161.224215; Tue, 27 Apr 2021 09:36: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 1lbK8t-0007CF-PW; Tue, 27 Apr 2021 09:36:31 +0000
Received: by outflank-mailman (input) for mailman id 118161;
 Tue, 27 Apr 2021 09:36:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK8s-0006jJ-BB
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:30 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id eb4f75da-ec1a-4229-9c12-0fb90e007502;
 Tue, 27 Apr 2021 09:36:18 +0000 (UTC)
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 4F4EF101E;
 Tue, 27 Apr 2021 02:36:18 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 9FDCB3F694;
 Tue, 27 Apr 2021 02:36: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: eb4f75da-ec1a-4229-9c12-0fb90e007502
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH v2 07/10] arm/mm: Get rid of READ/WRITE_SYSREG32
Date: Tue, 27 Apr 2021 11:35:43 +0200
Message-Id: <20210427093546.30703-8-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify SCTLR_EL2 accesses to use READ/WRITE_SYSREG.

SCTLR_EL2 already has bits defined in the range [32:63].
The ARM ARM defines them as unknown if implemented.
By writing in head.S SCTLR_EL2_SET we are zeroing the upper
32bit half which is correct but referring to this sysreg
as 32bit is a latent bug because the top 32bit was not used
by Xen.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
Changes since v1:
-Update commit message with SCTLR_EL2 analysis
---
 xen/arch/arm/mm.c    | 2 +-
 xen/arch/arm/traps.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 59f8a3f15f..0e07335291 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -613,7 +613,7 @@ void __init remove_early_mappings(void)
  */
 static void xen_pt_enforce_wnx(void)
 {
-    WRITE_SYSREG32(READ_SYSREG32(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2);
+    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.
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index c7acdb2087..e7384381cc 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -915,7 +915,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
     printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
     printk("\n");
 
-    printk(" SCTLR_EL2: %08"PRIx32"\n", READ_SYSREG32(SCTLR_EL2));
+    printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));
     printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
     printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
     printk("\n");
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118172.224226 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK96-0007Qw-9W; Tue, 27 Apr 2021 09:36:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118172.224226; Tue, 27 Apr 2021 09: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 1lbK96-0007Qp-63; Tue, 27 Apr 2021 09:36:44 +0000
Received: by outflank-mailman (input) for mailman id 118172;
 Tue, 27 Apr 2021 09:36:42 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK94-00078W-Oz
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:42 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 120e5367-5bcb-46fe-b6dc-58acf6d94cd0;
 Tue, 27 Apr 2021 09:36:30 +0000 (UTC)
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 E1237ED1;
 Tue, 27 Apr 2021 02:36:29 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id CF6FF3F694;
 Tue, 27 Apr 2021 02:36: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: 120e5367-5bcb-46fe-b6dc-58acf6d94cd0
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	bertrand.marquis@arm.com
Subject: [PATCH v2 09/10] arm/time,vtimer: Get rid of READ/WRITE_SYSREG32
Date: Tue, 27 Apr 2021 11:35:45 +0200
Message-Id: <20210427093546.30703-10-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of vtimer structure's member: ctl to register_t.

Add macro CNTFRQ_MASK containing mask for timer clock frequency
field of CNTFRQ_EL0 register.

Modify CNTx_CTL_MASK to return unsigned long instead of
unsigned int as ctl is now of type register_t.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
Changes since v1:
-Add macro CNTFRQ_MASK
-Modify CNTx_CTL_MASK, CNTx_CTL_ENABLE, CNTx_CTL_PENDING to return ul
---
 xen/arch/arm/time.c             | 28 ++++++++++++++--------------
 xen/arch/arm/vtimer.c           | 10 +++++-----
 xen/include/asm-arm/domain.h    |  2 +-
 xen/include/asm-arm/processor.h |  9 ++++++---
 4 files changed, 26 insertions(+), 23 deletions(-)

diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
index b0021c2c69..7dbd363537 100644
--- a/xen/arch/arm/time.c
+++ b/xen/arch/arm/time.c
@@ -145,7 +145,7 @@ void __init preinit_xen_time(void)
         preinit_acpi_xen_time();
 
     if ( !cpu_khz )
-        cpu_khz = READ_SYSREG32(CNTFRQ_EL0) / 1000;
+        cpu_khz = (READ_SYSREG(CNTFRQ_EL0) & CNTFRQ_MASK) / 1000;
 
     res = platform_init_time();
     if ( res )
@@ -205,13 +205,13 @@ int reprogram_timer(s_time_t timeout)
 
     if ( timeout == 0 )
     {
-        WRITE_SYSREG32(0, CNTHP_CTL_EL2);
+        WRITE_SYSREG(0, CNTHP_CTL_EL2);
         return 1;
     }
 
     deadline = ns_to_ticks(timeout) + boot_count;
     WRITE_SYSREG64(deadline, CNTHP_CVAL_EL2);
-    WRITE_SYSREG32(CNTx_CTL_ENABLE, CNTHP_CTL_EL2);
+    WRITE_SYSREG(CNTx_CTL_ENABLE, CNTHP_CTL_EL2);
     isb();
 
     /* No need to check for timers in the past; the Generic Timer fires
@@ -223,23 +223,23 @@ int reprogram_timer(s_time_t timeout)
 static void timer_interrupt(int irq, void *dev_id, struct cpu_user_regs *regs)
 {
     if ( irq == (timer_irq[TIMER_HYP_PPI]) &&
-         READ_SYSREG32(CNTHP_CTL_EL2) & CNTx_CTL_PENDING )
+         READ_SYSREG(CNTHP_CTL_EL2) & CNTx_CTL_PENDING )
     {
         perfc_incr(hyp_timer_irqs);
         /* Signal the generic timer code to do its work */
         raise_softirq(TIMER_SOFTIRQ);
         /* Disable the timer to avoid more interrupts */
-        WRITE_SYSREG32(0, CNTHP_CTL_EL2);
+        WRITE_SYSREG(0, CNTHP_CTL_EL2);
     }
 
     if ( irq == (timer_irq[TIMER_PHYS_NONSECURE_PPI]) &&
-         READ_SYSREG32(CNTP_CTL_EL0) & CNTx_CTL_PENDING )
+         READ_SYSREG(CNTP_CTL_EL0) & CNTx_CTL_PENDING )
     {
         perfc_incr(phys_timer_irqs);
         /* Signal the generic timer code to do its work */
         raise_softirq(TIMER_SOFTIRQ);
         /* Disable the timer to avoid more interrupts */
-        WRITE_SYSREG32(0, CNTP_CTL_EL0);
+        WRITE_SYSREG(0, CNTP_CTL_EL0);
     }
 }
 
@@ -260,8 +260,8 @@ static void vtimer_interrupt(int irq, void *dev_id, struct cpu_user_regs *regs)
 
     perfc_incr(virt_timer_irqs);
 
-    current->arch.virt_timer.ctl = READ_SYSREG32(CNTV_CTL_EL0);
-    WRITE_SYSREG32(current->arch.virt_timer.ctl | CNTx_CTL_MASK, CNTV_CTL_EL0);
+    current->arch.virt_timer.ctl = READ_SYSREG(CNTV_CTL_EL0);
+    WRITE_SYSREG(current->arch.virt_timer.ctl | CNTx_CTL_MASK, CNTV_CTL_EL0);
     vgic_inject_irq(current->domain, current, current->arch.virt_timer.irq, true);
 }
 
@@ -297,9 +297,9 @@ void init_timer_interrupt(void)
     /* Sensible defaults */
     WRITE_SYSREG64(0, CNTVOFF_EL2);     /* No VM-specific offset */
     /* Do not let the VMs program the physical timer, only read the physical counter */
-    WRITE_SYSREG32(CNTHCTL_EL2_EL1PCTEN, CNTHCTL_EL2);
-    WRITE_SYSREG32(0, CNTP_CTL_EL0);    /* Physical timer disabled */
-    WRITE_SYSREG32(0, CNTHP_CTL_EL2);   /* Hypervisor's timer disabled */
+    WRITE_SYSREG(CNTHCTL_EL2_EL1PCTEN, CNTHCTL_EL2);
+    WRITE_SYSREG(0, CNTP_CTL_EL0);    /* Physical timer disabled */
+    WRITE_SYSREG(0, CNTHP_CTL_EL2);   /* Hypervisor's timer disabled */
     isb();
 
     request_irq(timer_irq[TIMER_HYP_PPI], 0, timer_interrupt,
@@ -320,8 +320,8 @@ void init_timer_interrupt(void)
  */
 static void deinit_timer_interrupt(void)
 {
-    WRITE_SYSREG32(0, CNTP_CTL_EL0);    /* Disable physical timer */
-    WRITE_SYSREG32(0, CNTHP_CTL_EL2);   /* Disable hypervisor's timer */
+    WRITE_SYSREG(0, CNTP_CTL_EL0);    /* Disable physical timer */
+    WRITE_SYSREG(0, CNTHP_CTL_EL2);   /* Disable hypervisor's timer */
     isb();
 
     release_irq(timer_irq[TIMER_HYP_PPI], NULL);
diff --git a/xen/arch/arm/vtimer.c b/xen/arch/arm/vtimer.c
index c2b27915c6..167fc6127a 100644
--- a/xen/arch/arm/vtimer.c
+++ b/xen/arch/arm/vtimer.c
@@ -138,8 +138,8 @@ void virt_timer_save(struct vcpu *v)
 {
     ASSERT(!is_idle_vcpu(v));
 
-    v->arch.virt_timer.ctl = READ_SYSREG32(CNTV_CTL_EL0);
-    WRITE_SYSREG32(v->arch.virt_timer.ctl & ~CNTx_CTL_ENABLE, CNTV_CTL_EL0);
+    v->arch.virt_timer.ctl = READ_SYSREG(CNTV_CTL_EL0);
+    WRITE_SYSREG(v->arch.virt_timer.ctl & ~CNTx_CTL_ENABLE, CNTV_CTL_EL0);
     v->arch.virt_timer.cval = READ_SYSREG64(CNTV_CVAL_EL0);
     if ( (v->arch.virt_timer.ctl & CNTx_CTL_ENABLE) &&
          !(v->arch.virt_timer.ctl & CNTx_CTL_MASK))
@@ -159,7 +159,7 @@ void virt_timer_restore(struct vcpu *v)
 
     WRITE_SYSREG64(v->domain->arch.virt_timer_base.offset, CNTVOFF_EL2);
     WRITE_SYSREG64(v->arch.virt_timer.cval, CNTV_CVAL_EL0);
-    WRITE_SYSREG32(v->arch.virt_timer.ctl, CNTV_CTL_EL0);
+    WRITE_SYSREG(v->arch.virt_timer.ctl, CNTV_CTL_EL0);
 }
 
 static bool vtimer_cntp_ctl(struct cpu_user_regs *regs, uint32_t *r, bool read)
@@ -347,7 +347,7 @@ bool vtimer_emulate(struct cpu_user_regs *regs, union hsr hsr)
 }
 
 static void vtimer_update_irq(struct vcpu *v, struct vtimer *vtimer,
-                              uint32_t vtimer_ctl)
+                              register_t vtimer_ctl)
 {
     bool level;
 
@@ -389,7 +389,7 @@ void vtimer_update_irqs(struct vcpu *v)
      * but this requires reworking the arch timer to implement this.
      */
     vtimer_update_irq(v, &v->arch.virt_timer,
-                      READ_SYSREG32(CNTV_CTL_EL0) & ~CNTx_CTL_MASK);
+                      READ_SYSREG(CNTV_CTL_EL0) & ~CNTx_CTL_MASK);
 
     /* For the physical timer we rely on our emulated state. */
     vtimer_update_irq(v, &v->arch.phys_timer, v->arch.phys_timer.ctl);
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
index 2d4f38c669..c9277b5c6d 100644
--- a/xen/include/asm-arm/domain.h
+++ b/xen/include/asm-arm/domain.h
@@ -36,7 +36,7 @@ struct vtimer {
     struct vcpu *v;
     int irq;
     struct timer timer;
-    uint32_t ctl;
+    register_t ctl;
     uint64_t cval;
 };
 
diff --git a/xen/include/asm-arm/processor.h b/xen/include/asm-arm/processor.h
index 5c1768cdec..2058b69447 100644
--- a/xen/include/asm-arm/processor.h
+++ b/xen/include/asm-arm/processor.h
@@ -484,9 +484,12 @@ extern register_t __cpu_logical_map[];
 #define CNTKCTL_EL1_EL0PTEN  (1u<<9) /* Expose phys timer registers to EL0 */
 
 /* Timer control registers */
-#define CNTx_CTL_ENABLE   (1u<<0)  /* Enable timer */
-#define CNTx_CTL_MASK     (1u<<1)  /* Mask IRQ */
-#define CNTx_CTL_PENDING  (1u<<2)  /* IRQ pending */
+#define CNTx_CTL_ENABLE   (1ul<<0)  /* Enable timer */
+#define CNTx_CTL_MASK     (1ul<<1)  /* Mask IRQ */
+#define CNTx_CTL_PENDING  (1ul<<2)  /* IRQ pending */
+
+/* Timer frequency mask */
+#define CNTFRQ_MASK       GENMASK(31, 0)
 
 /* Exception Vector offsets */
 /* ... ARM32 */
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:36:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:36:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118177.224239 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbK9B-0007WN-KY; Tue, 27 Apr 2021 09:36:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118177.224239; Tue, 27 Apr 2021 09:36: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 1lbK9B-0007WE-GN; Tue, 27 Apr 2021 09:36:49 +0000
Received: by outflank-mailman (input) for mailman id 118177;
 Tue, 27 Apr 2021 09:36:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S3fO=JY=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lbK99-00078W-Ox
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:36:47 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 96b9f535-4541-4d69-af90-8d7a9be5f886;
 Tue, 27 Apr 2021 09:36:35 +0000 (UTC)
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 598EDD6E;
 Tue, 27 Apr 2021 02:36:35 -0700 (PDT)
Received: from e123311-lin.arm.com (unknown [10.57.27.22])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 93FD03F7B4;
 Tue, 27 Apr 2021 02:36: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: 96b9f535-4541-4d69-af90-8d7a9be5f886
From: Michal Orzel <michal.orzel@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	bertrand.marquis@arm.com
Subject: [PATCH v2 10/10] arm64: Change type of hsr, cpsr, spsr_el1 to uint64_t
Date: Tue, 27 Apr 2021 11:35:46 +0200
Message-Id: <20210427093546.30703-11-michal.orzel@arm.com>
X-Mailer: git-send-email 2.29.0
In-Reply-To: <20210427093546.30703-1-michal.orzel@arm.com>
References: <20210427093546.30703-1-michal.orzel@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

Modify type of hsr, cpsr, spsr_el1 to uint64_t.

Add 32bit RES0 members to structures inside hsr union.

Remove 32bit padding in cpu_user_regs before spsr_fiq
as it is no longer needed due to upper union being 64bit now.

Add 64bit padding in cpu_user_regs before spsr_el1
because offset of spsr_el1 must be a multiple of 8.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
Changes since v1:
-Modify type of cpsr, spsr_el1
-Remove ifdefery in hsr union protecting _res0 members
-Fix formatting of printk calls
---
 xen/arch/arm/arm64/entry.S            |  4 ++--
 xen/arch/arm/arm64/traps.c            |  2 +-
 xen/arch/arm/arm64/vsysreg.c          |  3 ++-
 xen/arch/arm/domain.c                 |  2 +-
 xen/arch/arm/traps.c                  | 30 +++++++++++++++------------
 xen/arch/arm/vcpreg.c                 | 13 ++++++------
 xen/include/asm-arm/arm64/processor.h | 11 +++++-----
 xen/include/asm-arm/hsr.h             | 14 ++++++++++++-
 xen/include/public/arch-arm.h         |  4 ++--
 xen/include/public/vm_event.h         |  4 ++++
 10 files changed, 55 insertions(+), 32 deletions(-)

diff --git a/xen/arch/arm/arm64/entry.S b/xen/arch/arm/arm64/entry.S
index ab9a65fc14..fc3811ad0a 100644
--- a/xen/arch/arm/arm64/entry.S
+++ b/xen/arch/arm/arm64/entry.S
@@ -155,7 +155,7 @@
         add     x21, sp, #UREGS_CPSR
         mrs     x22, spsr_el2
         mrs     x23, esr_el2
-        stp     w22, w23, [x21]
+        stp     x22, x23, [x21]
 
         .endm
 
@@ -432,7 +432,7 @@ return_from_trap:
         msr     daifset, #IFLAGS___I_ /* Mask interrupts */
 
         ldr     x21, [sp, #UREGS_PC]            /* load ELR */
-        ldr     w22, [sp, #UREGS_CPSR]          /* load SPSR */
+        ldr     x22, [sp, #UREGS_CPSR]          /* load SPSR */
 
         pop     x0, x1
         pop     x2, x3
diff --git a/xen/arch/arm/arm64/traps.c b/xen/arch/arm/arm64/traps.c
index babfc1d884..9113a15c7a 100644
--- a/xen/arch/arm/arm64/traps.c
+++ b/xen/arch/arm/arm64/traps.c
@@ -36,7 +36,7 @@ void do_bad_mode(struct cpu_user_regs *regs, int reason)
     union hsr hsr = { .bits = regs->hsr };
 
     printk("Bad mode in %s handler detected\n", handler[reason]);
-    printk("ESR=0x%08"PRIx32":  EC=%"PRIx32", IL=%"PRIx32", ISS=%"PRIx32"\n",
+    printk("ESR=%#"PRIregister":  EC=%"PRIx32", IL=%"PRIx32", ISS=%"PRIx32"\n",
            hsr.bits, hsr.ec, hsr.len, hsr.iss);
 
     local_irq_disable();
diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c
index 41f18612c6..caf17174b8 100644
--- a/xen/arch/arm/arm64/vsysreg.c
+++ b/xen/arch/arm/arm64/vsysreg.c
@@ -368,7 +368,8 @@ void do_sysreg(struct cpu_user_regs *regs,
                      sysreg.op2,
                      sysreg.read ? "=>" : "<=",
                      sysreg.reg, regs->pc);
-            gdprintk(XENLOG_ERR, "unhandled 64-bit sysreg access %#x\n",
+            gdprintk(XENLOG_ERR,
+                     "unhandled 64-bit sysreg access %#"PRIregister"\n",
                      hsr.bits & HSR_SYSREG_REGS_MASK);
             inject_undef_exception(regs, hsr);
             return;
diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index c021a03c61..74bdbb9082 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -845,7 +845,7 @@ static int is_guest_pv32_psr(uint32_t psr)
 
 
 #ifdef CONFIG_ARM_64
-static int is_guest_pv64_psr(uint32_t psr)
+static int is_guest_pv64_psr(uint64_t psr)
 {
     if ( psr & PSR_MODE_BIT )
         return 0;
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index e7384381cc..c8f9773566 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -546,7 +546,7 @@ void inject_undef64_exception(struct cpu_user_regs *regs, int instr_len)
         PSR_IRQ_MASK | PSR_DBG_MASK;
     regs->pc = handler;
 
-    WRITE_SYSREG32(esr.bits, ESR_EL1);
+    WRITE_SYSREG(esr.bits, ESR_EL1);
 }
 
 /* Inject an abort exception into a 64 bit guest */
@@ -580,7 +580,7 @@ static void inject_abt64_exception(struct cpu_user_regs *regs,
     regs->pc = handler;
 
     WRITE_SYSREG(addr, FAR_EL1);
-    WRITE_SYSREG32(esr.bits, ESR_EL1);
+    WRITE_SYSREG(esr.bits, ESR_EL1);
 }
 
 static void inject_dabt64_exception(struct cpu_user_regs *regs,
@@ -717,7 +717,7 @@ struct reg_ctxt {
     uint64_t vttbr_el2;
 };
 
-static const char *mode_string(uint32_t cpsr)
+static const char *mode_string(register_t cpsr)
 {
     uint32_t mode;
     static const char *mode_strings[] = {
@@ -756,14 +756,16 @@ static void show_registers_32(const struct cpu_user_regs *regs,
 #ifdef CONFIG_ARM_64
     BUG_ON( ! (regs->cpsr & PSR_MODE_BIT) );
     printk("PC:     %08"PRIx32"\n", regs->pc32);
+    printk("CPSR:   %016"PRIx64" MODE:%s\n", regs->cpsr,
+           mode_string(regs->cpsr));
 #else
     printk("PC:     %08"PRIx32, regs->pc);
     if ( !guest_mode )
         printk(" %pS", _p(regs->pc));
     printk("\n");
-#endif
     printk("CPSR:   %08"PRIx32" MODE:%s\n", regs->cpsr,
            mode_string(regs->cpsr));
+#endif
     printk("     R0: %08"PRIx32" R1: %08"PRIx32" R2: %08"PRIx32" R3: %08"PRIx32"\n",
            regs->r0, regs->r1, regs->r2, regs->r3);
     printk("     R4: %08"PRIx32" R5: %08"PRIx32" R6: %08"PRIx32" R7: %08"PRIx32"\n",
@@ -846,7 +848,7 @@ static void show_registers_64(const struct cpu_user_regs *regs,
     {
         printk("SP:     %016"PRIx64"\n", regs->sp);
     }
-    printk("CPSR:   %08"PRIx32" MODE:%s\n", regs->cpsr,
+    printk("CPSR:   %016"PRIx64" MODE:%s\n", regs->cpsr,
            mode_string(regs->cpsr));
     printk("     X0: %016"PRIx64"  X1: %016"PRIx64"  X2: %016"PRIx64"\n",
            regs->x0, regs->x1, regs->x2);
@@ -919,7 +921,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
     printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
     printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
     printk("\n");
-    printk("   ESR_EL2: %08"PRIx32"\n", regs->hsr);
+    printk("   ESR_EL2: %"PRIregister"\n", regs->hsr);
     printk(" HPFAR_EL2: %"PRIregister"\n", READ_SYSREG(HPFAR_EL2));
 
 #ifdef CONFIG_ARM_32
@@ -1599,7 +1601,7 @@ static const unsigned short cc_map[16] = {
 
 int check_conditional_instr(struct cpu_user_regs *regs, const union hsr hsr)
 {
-    unsigned long cpsr, cpsr_cond;
+    register_t cpsr, cpsr_cond;
     int cond;
 
     /*
@@ -1661,7 +1663,7 @@ int check_conditional_instr(struct cpu_user_regs *regs, const union hsr hsr)
 
 void advance_pc(struct cpu_user_regs *regs, const union hsr hsr)
 {
-    unsigned long itbits, cond, cpsr = regs->cpsr;
+    register_t itbits, cond, cpsr = regs->cpsr;
     bool is_thumb = psr_mode_is_32bit(regs) && (cpsr & PSR_THUMB);
 
     if ( is_thumb && (cpsr & PSR_IT_MASK) )
@@ -2004,13 +2006,15 @@ static void do_trap_stage2_abort_guest(struct cpu_user_regs *regs,
 
         break;
     default:
-        gprintk(XENLOG_WARNING, "Unsupported FSC: HSR=%#x DFSC=%#x\n",
+        gprintk(XENLOG_WARNING,
+                "Unsupported FSC: HSR=%#"PRIregister" DFSC=%#x\n",
                 hsr.bits, xabt.fsc);
     }
 
 inject_abt:
-    gdprintk(XENLOG_DEBUG, "HSR=0x%x pc=%#"PRIregister" gva=%#"PRIvaddr
-             " gpa=%#"PRIpaddr"\n", hsr.bits, regs->pc, gva, gpa);
+    gdprintk(XENLOG_DEBUG,
+             "HSR=%#"PRIregister" pc=%#"PRIregister" gva=%#"PRIvaddr" gpa=%#"PRIpaddr"\n",
+             hsr.bits, regs->pc, gva, gpa);
     if ( is_data )
         inject_dabt_exception(regs, gva, hsr.len);
     else
@@ -2204,7 +2208,7 @@ void do_trap_guest_sync(struct cpu_user_regs *regs)
 
     default:
         gprintk(XENLOG_WARNING,
-                "Unknown Guest Trap. HSR=0x%x EC=0x%x IL=%x Syndrome=0x%"PRIx32"\n",
+                "Unknown Guest Trap. HSR=%#"PRIregister" EC=0x%x IL=%x Syndrome=0x%"PRIx32"\n",
                 hsr.bits, hsr.ec, hsr.len, hsr.iss);
         inject_undef_exception(regs, hsr);
     }
@@ -2242,7 +2246,7 @@ void do_trap_hyp_sync(struct cpu_user_regs *regs)
         break;
     }
     default:
-        printk("Hypervisor Trap. HSR=0x%x EC=0x%x IL=%x Syndrome=0x%"PRIx32"\n",
+        printk("Hypervisor Trap. HSR=%#"PRIregister" EC=0x%x IL=%x Syndrome=0x%"PRIx32"\n",
                hsr.bits, hsr.ec, hsr.len, hsr.iss);
         do_unexpected_trap("Hypervisor", regs);
     }
diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c
index 55351fc087..f0cdcc8a54 100644
--- a/xen/arch/arm/vcpreg.c
+++ b/xen/arch/arm/vcpreg.c
@@ -385,7 +385,7 @@ void do_cp15_32(struct cpu_user_regs *regs, const union hsr hsr)
                  "%s p15, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
                  cp32.read ? "mrc" : "mcr",
                  cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
-        gdprintk(XENLOG_ERR, "unhandled 32-bit CP15 access %#x\n",
+        gdprintk(XENLOG_ERR, "unhandled 32-bit CP15 access %#"PRIregister"\n",
                  hsr.bits & HSR_CP32_REGS_MASK);
         inject_undef_exception(regs, hsr);
         return;
@@ -454,7 +454,8 @@ void do_cp15_64(struct cpu_user_regs *regs, const union hsr hsr)
                      "%s p15, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
                      cp64.read ? "mrrc" : "mcrr",
                      cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
-            gdprintk(XENLOG_ERR, "unhandled 64-bit CP15 access %#x\n",
+            gdprintk(XENLOG_ERR,
+                     "unhandled 64-bit CP15 access %#"PRIregister"\n",
                      hsr.bits & HSR_CP64_REGS_MASK);
             inject_undef_exception(regs, hsr);
             return;
@@ -585,7 +586,7 @@ void do_cp14_32(struct cpu_user_regs *regs, const union hsr hsr)
                  "%s p14, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
                   cp32.read ? "mrc" : "mcr",
                   cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
-        gdprintk(XENLOG_ERR, "unhandled 32-bit cp14 access %#x\n",
+        gdprintk(XENLOG_ERR, "unhandled 32-bit cp14 access %#"PRIregister"\n",
                  hsr.bits & HSR_CP32_REGS_MASK);
         inject_undef_exception(regs, hsr);
         return;
@@ -627,7 +628,7 @@ void do_cp14_64(struct cpu_user_regs *regs, const union hsr hsr)
              "%s p14, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
              cp64.read ? "mrrc" : "mcrr",
              cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
-    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 access %#x\n",
+    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 access %#"PRIregister"\n",
              hsr.bits & HSR_CP64_REGS_MASK);
     inject_undef_exception(regs, hsr);
 }
@@ -658,7 +659,7 @@ void do_cp14_dbg(struct cpu_user_regs *regs, const union hsr hsr)
              "%s p14, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
              cp64.read ? "mrrc" : "mcrr",
              cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
-    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 DBG access %#x\n",
+    gdprintk(XENLOG_ERR, "unhandled 64-bit CP14 DBG access %#"PRIregister"\n",
              hsr.bits & HSR_CP64_REGS_MASK);
 
     inject_undef_exception(regs, hsr);
@@ -692,7 +693,7 @@ void do_cp10(struct cpu_user_regs *regs, const union hsr hsr)
                  "%s p10, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
                  cp32.read ? "mrc" : "mcr",
                  cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
-        gdprintk(XENLOG_ERR, "unhandled 32-bit CP10 access %#x\n",
+        gdprintk(XENLOG_ERR, "unhandled 32-bit CP10 access %#"PRIregister"\n",
                  hsr.bits & HSR_CP32_REGS_MASK);
         inject_undef_exception(regs, hsr);
         return;
diff --git a/xen/include/asm-arm/arm64/processor.h b/xen/include/asm-arm/arm64/processor.h
index 81dfc5e615..0e86079cbb 100644
--- a/xen/include/asm-arm/arm64/processor.h
+++ b/xen/include/asm-arm/arm64/processor.h
@@ -63,18 +63,19 @@ struct cpu_user_regs
 
     /* Return address and mode */
     __DECL_REG(pc,           pc32);             /* ELR_EL2 */
-    uint32_t cpsr;                              /* SPSR_EL2 */
-    uint32_t hsr;                               /* ESR_EL2 */
+    uint64_t cpsr;                              /* SPSR_EL2 */
+    uint64_t hsr;                               /* ESR_EL2 */
+
+    /* Offset of spsr_el1 must be a multiple of 8 */
+    uint64_t pad0;
 
     /* Outer guest frame only from here on... */
 
     union {
-        uint32_t spsr_el1;       /* AArch64 */
+        uint64_t spsr_el1;       /* AArch64 */
         uint32_t spsr_svc;       /* AArch32 */
     };
 
-    uint32_t pad1; /* Doubleword-align the user half of the frame */
-
     /* AArch32 guests only */
     uint32_t spsr_fiq, spsr_irq, spsr_und, spsr_abt;
 
diff --git a/xen/include/asm-arm/hsr.h b/xen/include/asm-arm/hsr.h
index 29d4531f40..fb4a3b1274 100644
--- a/xen/include/asm-arm/hsr.h
+++ b/xen/include/asm-arm/hsr.h
@@ -16,11 +16,12 @@ enum dabt_size {
 };
 
 union hsr {
-    uint32_t bits;
+    register_t bits;
     struct {
         unsigned long iss:25;  /* Instruction Specific Syndrome */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+        unsigned long _res0:32;
     };
 
     /* Common to all conditional exception classes (0x0N, except 0x00). */
@@ -30,6 +31,7 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+        unsigned long _res0:32;
     } cond;
 
     struct hsr_wfi_wfe {
@@ -39,6 +41,7 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+        unsigned long _res0:32;
     } wfi_wfe;
 
     /* reg, reg0, reg1 are 4 bits on AArch32, the fifth bit is sbzp. */
@@ -53,6 +56,7 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+        unsigned long _res0:32;
     } cp32; /* HSR_EC_CP15_32, CP14_32, CP10 */
 
     struct hsr_cp64 {
@@ -66,6 +70,7 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;    /* Instruction length */
         unsigned long ec:6;     /* Exception Class */
+        unsigned long _res0:32;
     } cp64; /* HSR_EC_CP15_64, HSR_EC_CP14_64 */
 
      struct hsr_cp {
@@ -77,6 +82,7 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;    /* Instruction length */
         unsigned long ec:6;     /* Exception Class */
+        unsigned long _res0:32;
     } cp; /* HSR_EC_CP */
 
     /*
@@ -94,6 +100,7 @@ union hsr {
         unsigned long ccvalid:1;/* CC Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+        unsigned long _res0:32;
     } smc32; /* HSR_EC_SMC32 */
 
 #ifdef CONFIG_ARM_64
@@ -108,6 +115,7 @@ union hsr {
         unsigned long res0:3;
         unsigned long len:1;    /* Instruction length */
         unsigned long ec:6;
+        unsigned long _res0:32;
     } sysreg; /* HSR_EC_SYSREG */
 #endif
 
@@ -121,6 +129,7 @@ union hsr {
         unsigned long res2:14;
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+        unsigned long _res0:32;
     } iabt; /* HSR_EC_INSTR_ABORT_* */
 
     struct hsr_dabt {
@@ -143,6 +152,7 @@ union hsr {
         unsigned long valid:1; /* Syndrome Valid */
         unsigned long len:1;   /* Instruction length */
         unsigned long ec:6;    /* Exception Class */
+        unsigned long _res0:32;
     } dabt; /* HSR_EC_DATA_ABORT_* */
 
     /* Contain the common bits between DABT and IABT */
@@ -156,6 +166,7 @@ union hsr {
         unsigned long pad3:14;  /* Not common */
         unsigned long len:1;    /* Instruction length */
         unsigned long ec:6;     /* Exception Class */
+        unsigned long _res0:32;
     } xabt;
 
 #ifdef CONFIG_ARM_64
@@ -164,6 +175,7 @@ union hsr {
         unsigned long res0:9;
         unsigned long len:1;        /* Instruction length */
         unsigned long ec:6;         /* Exception Class */
+        unsigned long _res0:32;
     } brk;
 #endif
 };
diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
index 713fd65317..c49bce2983 100644
--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -267,10 +267,10 @@ struct vcpu_guest_core_regs
 
     /* Return address and mode */
     __DECL_REG(pc64,         pc32);             /* ELR_EL2 */
-    uint32_t cpsr;                              /* SPSR_EL2 */
+    register_t cpsr;                            /* SPSR_EL2 */
 
     union {
-        uint32_t spsr_el1;       /* AArch64 */
+        uint64_t spsr_el1;       /* AArch64 */
         uint32_t spsr_svc;       /* AArch32 */
     };
 
diff --git a/xen/include/public/vm_event.h b/xen/include/public/vm_event.h
index 36135ba4f1..ad3d141fe8 100644
--- a/xen/include/public/vm_event.h
+++ b/xen/include/public/vm_event.h
@@ -266,8 +266,12 @@ struct vm_event_regs_arm {
     uint64_t ttbr1;
     uint64_t ttbcr;
     uint64_t pc;
+#ifdef CONFIG_ARM_32
     uint32_t cpsr;
     uint32_t _pad;
+#else
+    uint64_t cpsr;
+#endif
 };
 
 /*
-- 
2.29.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:46:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:46:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118215.224251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKI0-0000Qj-Tc; Tue, 27 Apr 2021 09:45:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118215.224251; Tue, 27 Apr 2021 09:45: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 1lbKI0-0000Qc-Pp; Tue, 27 Apr 2021 09:45:56 +0000
Received: by outflank-mailman (input) for mailman id 118215;
 Tue, 27 Apr 2021 09:45: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 1lbKHz-0000QK-E7
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:45: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 1lbKHy-000455-0l; Tue, 27 Apr 2021 09:45:54 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbKHx-0003cO-Qg; Tue, 27 Apr 2021 09:45: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=Gcce72EVWykg8tKTLN8YcyZiUqvztOHg30hiE6nG67g=; b=eHLTY6ONMb/9I39mkudpZ/+Ucg
	SpkrZlp37O4aLvYjViMq6QMKfzJaencQz/vslfZzA+XsvLwp5dYfm5ABSj8J+1MyCMifZ0Y7TcbHJ
	oOnNKbB81z0jaxlkjXgYu66DxCiWisK83AaX9Hpy58AGT8IFRelXVRugCnyWtJup8Njg=;
Subject: Re: [PATCH v2 02/10] arm/domain: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-3-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <718ea929-edd0-1a30-65f2-f3d0ca17756b@xen.org>
Date: Tue, 27 Apr 2021 10:45:52 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427093546.30703-3-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 27/04/2021 10:35, Michal Orzel wrote:
> AArch64 registers are 64bit whereas AArch32 registers
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 registers have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify type of register cntkctl to register_t.
> Modify accesses to thumbee registers to use READ/WRITE_SYSREG.
> No need to change type of thumbee registers to register_t as they
> only exist on arm32.

This is a bit ambiguous, I think in this context you mean it is only 
usable by 32-bit domain but should really be only accessed on Armv7 as 
they were restrospectively dropped on Armv8.

> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
> Changes since v1:
> -Move modification of ACTLR into seperate patch
> ---
>   xen/arch/arm/domain.c        | 18 +++++++++---------
>   xen/include/asm-arm/domain.h |  2 +-
>   2 files changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
> index bdd3d3e5b5..621f518b83 100644
> --- a/xen/arch/arm/domain.c
> +++ b/xen/arch/arm/domain.c
> @@ -113,13 +113,13 @@ static void ctxt_switch_from(struct vcpu *p)
>       p->arch.tpidr_el1 = READ_SYSREG(TPIDR_EL1);
>   
>       /* Arch timer */
> -    p->arch.cntkctl = READ_SYSREG32(CNTKCTL_EL1);
> +    p->arch.cntkctl = READ_SYSREG(CNTKCTL_EL1);
>       virt_timer_save(p);
>   
>       if ( is_32bit_domain(p->domain) && cpu_has_thumbee )
>       {
> -        p->arch.teecr = READ_SYSREG32(TEECR32_EL1);
> -        p->arch.teehbr = READ_SYSREG32(TEEHBR32_EL1);
> +        p->arch.teecr = READ_SYSREG(TEECR32_EL1);
> +        p->arch.teehbr = READ_SYSREG(TEEHBR32_EL1);
>       }
>   
>   #ifdef CONFIG_ARM_32
> @@ -175,7 +175,7 @@ static void ctxt_switch_from(struct vcpu *p)
>   
>   static void ctxt_switch_to(struct vcpu *n)
>   {
> -    uint32_t vpidr;
> +    register_t vpidr;
>   
>       /* When the idle VCPU is running, Xen will always stay in hypervisor
>        * mode. Therefore we don't need to restore the context of an idle VCPU.
> @@ -183,8 +183,8 @@ static void ctxt_switch_to(struct vcpu *n)
>       if ( is_idle_vcpu(n) )
>           return;
>   
> -    vpidr = READ_SYSREG32(MIDR_EL1);
> -    WRITE_SYSREG32(vpidr, VPIDR_EL2);
> +    vpidr = READ_SYSREG(MIDR_EL1);
> +    WRITE_SYSREG(vpidr, VPIDR_EL2);
>       WRITE_SYSREG(n->arch.vmpidr, VMPIDR_EL2);
>   
>       /* VGIC */
> @@ -257,8 +257,8 @@ static void ctxt_switch_to(struct vcpu *n)
>   
>       if ( is_32bit_domain(n->domain) && cpu_has_thumbee )
>       {
> -        WRITE_SYSREG32(n->arch.teecr, TEECR32_EL1);
> -        WRITE_SYSREG32(n->arch.teehbr, TEEHBR32_EL1);
> +        WRITE_SYSREG(n->arch.teecr, TEECR32_EL1);
> +        WRITE_SYSREG(n->arch.teehbr, TEEHBR32_EL1);
>       }
>   
>   #ifdef CONFIG_ARM_32
> @@ -274,7 +274,7 @@ static void ctxt_switch_to(struct vcpu *n)
>   
>       /* This is could trigger an hardware interrupt from the virtual
>        * timer. The interrupt needs to be injected into the guest. */
> -    WRITE_SYSREG32(n->arch.cntkctl, CNTKCTL_EL1);
> +    WRITE_SYSREG(n->arch.cntkctl, CNTKCTL_EL1);
>       virt_timer_restore(n);
>   }
>   
> diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
> index 0a74df9931..c6b59ee755 100644
> --- a/xen/include/asm-arm/domain.h
> +++ b/xen/include/asm-arm/domain.h
> @@ -190,7 +190,7 @@ struct arch_vcpu
>       struct vgic_cpu vgic;
>   
>       /* Timer registers  */
> -    uint32_t cntkctl;
> +    register_t cntkctl;
>   
>       struct vtimer phys_timer;
>       struct vtimer virt_timer;
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:47:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:47:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118224.224263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKJg-0000b6-9I; Tue, 27 Apr 2021 09:47:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118224.224263; Tue, 27 Apr 2021 09:47: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 1lbKJg-0000az-5X; Tue, 27 Apr 2021 09:47:40 +0000
Received: by outflank-mailman (input) for mailman id 118224;
 Tue, 27 Apr 2021 09:47: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 1lbKJf-0000au-2T
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:47: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 1lbKJd-00047q-SA; Tue, 27 Apr 2021 09:47:37 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbKJd-0003fN-M2; Tue, 27 Apr 2021 09:47: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=HKwdU9LGuBne+RvINOhZ14VyltUsSbX4S42lXLXJwo8=; b=LG1q4UMizetf4RTUg2mbvdJCwW
	gynrYmTDZT/vQHbIGdXJLcQDc7rcY4qWoZC1vhOm5UzHwKum8lJubDsZnSRNDPPuIwRqIJbZMFm2f
	OzpoIJv9maUFXmrRAtcXLPb5RMHclP5/vbQPqxHOcX3lpWAg7MM2VlEmRFIkpQqw6ebQ=;
Subject: Re: [PATCH v2 03/10] arm: Modify type of actlr to register_t
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-4-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <160ccd79-1a6e-059f-82a7-996c8bcc68f3@xen.org>
Date: Tue, 27 Apr 2021 10:47:36 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427093546.30703-4-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 27/04/2021 10:35, Michal Orzel wrote:
> AArch64 registers are 64bit whereas AArch32 registers
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 registers have upper 32bit reserved
> it does not mean that they can't be widen in the future.

This is a pretty generic message but doesn't really explain the change 
itself and point out this is a bug (possibly latent on current HW) 
because it is implementation defined. IOW a CPU implementer may already 
have decided to use the top 32-bit without our knowledge.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:48:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:48:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118228.224275 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKKF-0000gu-H0; Tue, 27 Apr 2021 09:48:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118228.224275; Tue, 27 Apr 2021 09:48:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKKF-0000gm-E1; Tue, 27 Apr 2021 09:48:15 +0000
Received: by outflank-mailman (input) for mailman id 118228;
 Tue, 27 Apr 2021 09:48: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 1lbKKE-0000gg-5M
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:48: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 1lbKKD-00048R-7o; Tue, 27 Apr 2021 09:48:13 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbKKD-0003gS-1r; Tue, 27 Apr 2021 09:48: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=6/A3FWeGHyi1UdmHrUcy7Ko+RZp+UBzwXwvpzv22Ot0=; b=LUPzlqlWXK7PxeuXEFDIlrtayi
	k9sgyzNlR7Q0bPsRqf+A3vZyBVDU8GNEtukxuVoUvvWsD9PcfAGpj9xV8i3oDsucscLIQk4JDl8IV
	1oAtNxj+Og4F5KQHPfmsHM6CBX5EQkGPF5qfFRqVjLICAXEqC25KqR9/RDAjq1SNBmSw=;
Subject: Re: [PATCH v2 04/10] arm/gic: Remove member hcr of structure gic_v3
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-5-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <7b2bde96-cd69-980c-59c5-4c787bc54a55@xen.org>
Date: Tue, 27 Apr 2021 10:48:11 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427093546.30703-5-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 27/04/2021 10:35, Michal Orzel wrote:
> ... as it is never used even in the patch introducing it.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

> ---
>   xen/include/asm-arm/gic.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
> index ad0f7452d0..5069ab4aac 100644
> --- a/xen/include/asm-arm/gic.h
> +++ b/xen/include/asm-arm/gic.h
> @@ -171,7 +171,7 @@
>    * GICv3 registers that needs to be saved/restored
>    */
>   struct gic_v3 {
> -    uint32_t hcr, vmcr, sre_el1;
> +    uint32_t vmcr, sre_el1;
>       uint32_t apr0[4];
>       uint32_t apr1[4];
>       uint64_t lr[16];
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 09:59:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 09:59:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118240.224286 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKUq-0001im-Fa; Tue, 27 Apr 2021 09:59:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118240.224286; Tue, 27 Apr 2021 09:59: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 1lbKUq-0001if-C3; Tue, 27 Apr 2021 09:59:12 +0000
Received: by outflank-mailman (input) for mailman id 118240;
 Tue, 27 Apr 2021 09:59: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 1lbKUo-0001iZ-J6
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 09:59: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 1lbKUn-0004L4-F8; Tue, 27 Apr 2021 09:59:09 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbKUn-0004Rb-76; Tue, 27 Apr 2021 09:59: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=Ue+9v2gwlNVwuhNATN+1E8U73dWgRMwYYjw379jVXgc=; b=Z/M8HInnohrQDYBWX8XpfAsq+A
	ZAC4a3Q0x5YPiqk1ZFkZE6mJaFIqVQpN9LYm/P3DfqTqXDPNCj9HKu6Bh3jsqplk/lu/kiRlJW/Dc
	BkvU8WsYwqKoQ3EBOG7rNZZMXKX/uOpAsFmucWekbjlyBQ0pe/OsXMMSeZUXZCUTQvUk=;
Subject: Re: [PATCH v2 07/10] arm/mm: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-8-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <04adaf9b-e2fe-460e-35e4-09e5e5ff7b6f@xen.org>
Date: Tue, 27 Apr 2021 10:59:07 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427093546.30703-8-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 27/04/2021 10:35, Michal Orzel wrote:
> AArch64 registers are 64bit whereas AArch32 registers
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 registers have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify SCTLR_EL2 accesses to use READ/WRITE_SYSREG.
> 
> SCTLR_EL2 already has bits defined in the range [32:63].
> The ARM ARM defines them as unknown if implemented.

This is a bit ambiguous.

> By writing in head.S SCTLR_EL2_SET we are zeroing the upper
> 32bit half which is correct but referring to this sysreg
> as 32bit is a latent bug because the top 32bit was not used
> by Xen.

This seems to suggest the patch below will call SCTLR_EL2_SET whereas 
this is already existing code.

> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
> Changes since v1:
> -Update commit message with SCTLR_EL2 analysis
> ---
>   xen/arch/arm/mm.c    | 2 +-
>   xen/arch/arm/traps.c | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index 59f8a3f15f..0e07335291 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -613,7 +613,7 @@ void __init remove_early_mappings(void)
>    */
>   static void xen_pt_enforce_wnx(void)
>   {
> -    WRITE_SYSREG32(READ_SYSREG32(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2);
> +    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.
> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
> index c7acdb2087..e7384381cc 100644
> --- a/xen/arch/arm/traps.c
> +++ b/xen/arch/arm/traps.c
> @@ -915,7 +915,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
>       printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
>       printk("\n");
>   
> -    printk(" SCTLR_EL2: %08"PRIx32"\n", READ_SYSREG32(SCTLR_EL2));
> +    printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));

Your commit title suggests that you will modify mm.c but you are also 
modifying traps.c. So how about the following commit message:

"
xen/arm: Always access SCTLR_EL2 using {READ, WRITE}_SYSREG()

The Armv8 specification describes the system register as a 64-bit value 
on AArch64 and 32-bit value on AArch32 (same as Armv7).

Unfortunately, Xen is accessing the system registers using {READ, 
WRITE}_SYSREG32() which means the top 32-bit are clobbered.

This is only a latent bug so far because Xen will not yet use the top 
32-bit.

There is also no change in behavior because arch/arm/arm64/head.S will 
initialize SCTLR_EL2 to a sane value with the top 32-bit zeroed.
"

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 10:02:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 10:02:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118244.224299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKY3-0002ep-Ut; Tue, 27 Apr 2021 10:02:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118244.224299; Tue, 27 Apr 2021 10:02:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKY3-0002ei-RY; Tue, 27 Apr 2021 10:02:31 +0000
Received: by outflank-mailman (input) for mailman id 118244;
 Tue, 27 Apr 2021 10:02: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 1lbKY3-0002ed-0U
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 10:02: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 1lbKY1-0004WT-Sm; Tue, 27 Apr 2021 10:02:29 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbKY1-0004m4-Hg; Tue, 27 Apr 2021 10: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=gzJMqW6/QnH0TzXeQcRrEirnojj0rlgmUTzS+K3U03I=; b=EpFK3t/hlcLsOxacUGzMmyro7q
	LnmbEYaleqQ+3Q0eXU0wki7/VPzewrsuPu8XpDmpNodS3F5Fpz8IT6+121Z8Ldz2y9ryMKxHF2YdT
	FpbQ3fYAQHFlY1o1395hJ+TOdDNoKU2yeqJKf5HTqrx++W03mPxhTtSt+m3Xla9avMMs=;
Subject: Re: [PATCH v2 05/10] arm/gic: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-6-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <c530ba7a-a64a-efad-cb57-0a174d0676c0@xen.org>
Date: Tue, 27 Apr 2021 11:02:27 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427093546.30703-6-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 27/04/2021 10:35, Michal Orzel wrote:
> AArch64 registers are 64bit whereas AArch32 registers
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 registers have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify types of following members of struct gic_v3 to register_t:
> -vmcr
> -sre_el1
> -apr0
> -apr1
> 
> Add new macro GICC_IAR_INTID_MASK containing the mask
> for INTID field of ICC_IAR0/1_EL1 register.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
> Changes since v1:
> -Remove hcr member of gic_v3 in a seperate patch
> -Add macro GICC_IAR_INTID_MASK

This change needs to be explained in the commit message. Saying 
something like:

"Only the first 23-bits of IAR contains the interrupt number. The rest 
are RES0. Therefore, take the opportunity to mask the bits [23:31] as 
they should be used for an IRQ number (we don't know how the top bits 
will be used).
"

> -Remove explicit cast in favor of implicit cast
> ---
>   xen/arch/arm/gic-v3-lpi.c         |  2 +-
>   xen/arch/arm/gic-v3.c             | 98 ++++++++++++++++---------------
>   xen/include/asm-arm/gic.h         |  6 +-
>   xen/include/asm-arm/gic_v3_defs.h |  2 +
>   4 files changed, 58 insertions(+), 50 deletions(-)
> 
> diff --git a/xen/arch/arm/gic-v3-lpi.c b/xen/arch/arm/gic-v3-lpi.c
> index 869bc97fa1..e1594dd20e 100644
> --- a/xen/arch/arm/gic-v3-lpi.c
> +++ b/xen/arch/arm/gic-v3-lpi.c
> @@ -178,7 +178,7 @@ void gicv3_do_LPI(unsigned int lpi)
>       irq_enter();
>   
>       /* EOI the LPI already. */
> -    WRITE_SYSREG32(lpi, ICC_EOIR1_EL1);
> +    WRITE_SYSREG(lpi, ICC_EOIR1_EL1);
>   
>       /* Find out if a guest mapped something to this physical LPI. */
>       hlpip = gic_get_host_lpi(lpi);
> diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
> index ac28013c19..b86f040589 100644
> --- a/xen/arch/arm/gic-v3.c
> +++ b/xen/arch/arm/gic-v3.c
> @@ -246,12 +246,12 @@ static void gicv3_ich_write_lr(int lr, uint64_t val)
>    */
>   static void gicv3_enable_sre(void)
>   {
> -    uint32_t val;
> +    register_t val;
>   
> -    val = READ_SYSREG32(ICC_SRE_EL2);
> +    val = READ_SYSREG(ICC_SRE_EL2);
>       val |= GICC_SRE_EL2_SRE;
>   
> -    WRITE_SYSREG32(val, ICC_SRE_EL2);
> +    WRITE_SYSREG(val, ICC_SRE_EL2);
>       isb();
>   }
>   
> @@ -315,16 +315,16 @@ static void restore_aprn_regs(const union gic_state_data *d)
>       switch ( gicv3.nr_priorities )
>       {
>       case 7:
> -        WRITE_SYSREG32(d->v3.apr0[2], ICH_AP0R2_EL2);
> -        WRITE_SYSREG32(d->v3.apr1[2], ICH_AP1R2_EL2);
> +        WRITE_SYSREG(d->v3.apr0[2], ICH_AP0R2_EL2);
> +        WRITE_SYSREG(d->v3.apr1[2], ICH_AP1R2_EL2);
>           /* Fall through */
>       case 6:
> -        WRITE_SYSREG32(d->v3.apr0[1], ICH_AP0R1_EL2);
> -        WRITE_SYSREG32(d->v3.apr1[1], ICH_AP1R1_EL2);
> +        WRITE_SYSREG(d->v3.apr0[1], ICH_AP0R1_EL2);
> +        WRITE_SYSREG(d->v3.apr1[1], ICH_AP1R1_EL2);
>           /* Fall through */
>       case 5:
> -        WRITE_SYSREG32(d->v3.apr0[0], ICH_AP0R0_EL2);
> -        WRITE_SYSREG32(d->v3.apr1[0], ICH_AP1R0_EL2);
> +        WRITE_SYSREG(d->v3.apr0[0], ICH_AP0R0_EL2);
> +        WRITE_SYSREG(d->v3.apr1[0], ICH_AP1R0_EL2);
>           break;
>       default:
>           BUG();
> @@ -338,16 +338,16 @@ static void save_aprn_regs(union gic_state_data *d)
>       switch ( gicv3.nr_priorities )
>       {
>       case 7:
> -        d->v3.apr0[2] = READ_SYSREG32(ICH_AP0R2_EL2);
> -        d->v3.apr1[2] = READ_SYSREG32(ICH_AP1R2_EL2);
> +        d->v3.apr0[2] = READ_SYSREG(ICH_AP0R2_EL2);
> +        d->v3.apr1[2] = READ_SYSREG(ICH_AP1R2_EL2);
>           /* Fall through */
>       case 6:
> -        d->v3.apr0[1] = READ_SYSREG32(ICH_AP0R1_EL2);
> -        d->v3.apr1[1] = READ_SYSREG32(ICH_AP1R1_EL2);
> +        d->v3.apr0[1] = READ_SYSREG(ICH_AP0R1_EL2);
> +        d->v3.apr1[1] = READ_SYSREG(ICH_AP1R1_EL2);
>           /* Fall through */
>       case 5:
> -        d->v3.apr0[0] = READ_SYSREG32(ICH_AP0R0_EL2);
> -        d->v3.apr1[0] = READ_SYSREG32(ICH_AP1R0_EL2);
> +        d->v3.apr0[0] = READ_SYSREG(ICH_AP0R0_EL2);
> +        d->v3.apr1[0] = READ_SYSREG(ICH_AP1R0_EL2);
>           break;
>       default:
>           BUG();
> @@ -371,15 +371,15 @@ static void gicv3_save_state(struct vcpu *v)
>       dsb(sy);
>       gicv3_save_lrs(v);
>       save_aprn_regs(&v->arch.gic);
> -    v->arch.gic.v3.vmcr = READ_SYSREG32(ICH_VMCR_EL2);
> -    v->arch.gic.v3.sre_el1 = READ_SYSREG32(ICC_SRE_EL1);
> +    v->arch.gic.v3.vmcr = READ_SYSREG(ICH_VMCR_EL2);
> +    v->arch.gic.v3.sre_el1 = READ_SYSREG(ICC_SRE_EL1);
>   }
>   
>   static void gicv3_restore_state(const struct vcpu *v)
>   {
> -    uint32_t val;
> +    register_t val;
>   
> -    val = READ_SYSREG32(ICC_SRE_EL2);
> +    val = READ_SYSREG(ICC_SRE_EL2);
>       /*
>        * Don't give access to system registers when the guest is using
>        * GICv2
> @@ -388,7 +388,7 @@ static void gicv3_restore_state(const struct vcpu *v)
>           val &= ~GICC_SRE_EL2_ENEL1;
>       else
>           val |= GICC_SRE_EL2_ENEL1;
> -    WRITE_SYSREG32(val, ICC_SRE_EL2);
> +    WRITE_SYSREG(val, ICC_SRE_EL2);
>   
>       /*
>        * VFIQEn is RES1 if ICC_SRE_EL1.SRE is 1. This causes a Group0
> @@ -398,9 +398,9 @@ static void gicv3_restore_state(const struct vcpu *v)
>        * want before starting to mess with the rest of the GIC, and
>        * VMCR_EL1 in particular.
>        */
> -    WRITE_SYSREG32(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
> +    WRITE_SYSREG(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
>       isb();
> -    WRITE_SYSREG32(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
> +    WRITE_SYSREG(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
>       restore_aprn_regs(&v->arch.gic);
>       gicv3_restore_lrs(v);
>   
> @@ -468,24 +468,25 @@ static void gicv3_mask_irq(struct irq_desc *irqd)
>   static void gicv3_eoi_irq(struct irq_desc *irqd)
>   {
>       /* Lower the priority */
> -    WRITE_SYSREG32(irqd->irq, ICC_EOIR1_EL1);
> +    WRITE_SYSREG(irqd->irq, ICC_EOIR1_EL1);
>       isb();
>   }
>   
>   static void gicv3_dir_irq(struct irq_desc *irqd)
>   {
>       /* Deactivate */
> -    WRITE_SYSREG32(irqd->irq, ICC_DIR_EL1);
> +    WRITE_SYSREG(irqd->irq, ICC_DIR_EL1);
>       isb();
>   }
>   
>   static unsigned int gicv3_read_irq(void)
>   {
> -    unsigned int irq = READ_SYSREG32(ICC_IAR1_EL1);
> +    register_t irq = READ_SYSREG(ICC_IAR1_EL1);
>   
>       dsb(sy);
>   
> -    return irq;
> +    /* IRQs are encoded using 23bit. */
> +    return (irq & GICC_IAR_INTID_MASK);
>   }
>   
>   /*
> @@ -857,16 +858,16 @@ static int gicv3_cpu_init(void)
>       gicv3_enable_sre();
>   
>       /* No priority grouping */
> -    WRITE_SYSREG32(0, ICC_BPR1_EL1);
> +    WRITE_SYSREG(0, ICC_BPR1_EL1);
>   
>       /* Set priority mask register */
> -    WRITE_SYSREG32(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
> +    WRITE_SYSREG(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
>   
>       /* EOI drops priority, DIR deactivates the interrupt (mode 1) */
> -    WRITE_SYSREG32(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
> +    WRITE_SYSREG(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
>   
>       /* Enable Group1 interrupts */
> -    WRITE_SYSREG32(1, ICC_IGRPEN1_EL1);
> +    WRITE_SYSREG(1, ICC_IGRPEN1_EL1);
>   
>       /* Sync at once at the end of cpu interface configuration */
>       isb();
> @@ -876,15 +877,15 @@ static int gicv3_cpu_init(void)
>   
>   static void gicv3_cpu_disable(void)
>   {
> -    WRITE_SYSREG32(0, ICC_CTLR_EL1);
> +    WRITE_SYSREG(0, ICC_CTLR_EL1);
>       isb();
>   }
>   
>   static void gicv3_hyp_init(void)
>   {
> -    uint32_t vtr;
> +    register_t vtr;
>   
> -    vtr = READ_SYSREG32(ICH_VTR_EL2);
> +    vtr = READ_SYSREG(ICH_VTR_EL2);
>       gicv3_info.nr_lrs  = (vtr & ICH_VTR_NRLRGS) + 1;
>       gicv3.nr_priorities = ((vtr >> ICH_VTR_PRIBITS_SHIFT) &
>                             ICH_VTR_PRIBITS_MASK) + 1;
> @@ -892,8 +893,8 @@ static void gicv3_hyp_init(void)
>       if ( !((gicv3.nr_priorities > 4) && (gicv3.nr_priorities < 8)) )
>           panic("GICv3: Invalid number of priority bits\n");
>   
> -    WRITE_SYSREG32(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
> -    WRITE_SYSREG32(GICH_HCR_EN, ICH_HCR_EL2);
> +    WRITE_SYSREG(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
> +    WRITE_SYSREG(GICH_HCR_EN, ICH_HCR_EL2);
>   }
>   
>   /* Set up the per-CPU parts of the GIC for a secondary CPU */
> @@ -917,11 +918,11 @@ out:
>   
>   static void gicv3_hyp_disable(void)
>   {
> -    uint32_t hcr;
> +    register_t hcr;
>   
> -    hcr = READ_SYSREG32(ICH_HCR_EL2);
> +    hcr = READ_SYSREG(ICH_HCR_EL2);
>       hcr &= ~GICH_HCR_EN;
> -    WRITE_SYSREG32(hcr, ICH_HCR_EL2);
> +    WRITE_SYSREG(hcr, ICH_HCR_EL2);
>       isb();
>   }
>   
> @@ -1140,39 +1141,44 @@ static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
>   
>   static void gicv3_hcr_status(uint32_t flag, bool status)
>   {
> -    uint32_t hcr;
> +    register_t hcr;
>   
> -    hcr = READ_SYSREG32(ICH_HCR_EL2);
> +    hcr = READ_SYSREG(ICH_HCR_EL2);
>       if ( status )
> -        WRITE_SYSREG32(hcr | flag, ICH_HCR_EL2);
> +        WRITE_SYSREG(hcr | flag, ICH_HCR_EL2);
>       else
> -        WRITE_SYSREG32(hcr & (~flag), ICH_HCR_EL2);
> +        WRITE_SYSREG(hcr & (~flag), ICH_HCR_EL2);
>       isb();
>   }
>   
>   static unsigned int gicv3_read_vmcr_priority(void)
>   {
> -   return ((READ_SYSREG32(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
> +   return ((READ_SYSREG(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
>               ICH_VMCR_PRIORITY_MASK);
>   }
>   
>   /* Only support reading GRP1 APRn registers */
>   static unsigned int gicv3_read_apr(int apr_reg)
>   {
> +    register_t apr;
> +
>       switch ( apr_reg )
>       {
>       case 0:
>           ASSERT(gicv3.nr_priorities > 4 && gicv3.nr_priorities < 8);
> -        return READ_SYSREG32(ICH_AP1R0_EL2);
> +        apr = READ_SYSREG(ICH_AP1R0_EL2);
>       case 1:
>           ASSERT(gicv3.nr_priorities > 5 && gicv3.nr_priorities < 8);
> -        return READ_SYSREG32(ICH_AP1R1_EL2);
> +        apr = READ_SYSREG(ICH_AP1R1_EL2);
>       case 2:
>           ASSERT(gicv3.nr_priorities > 6 && gicv3.nr_priorities < 8);
> -        return READ_SYSREG32(ICH_AP1R2_EL2);
> +        apr = READ_SYSREG(ICH_AP1R2_EL2);
>       default:
>           BUG();
>       }
> +
> +    /* Number of priority levels do not exceed 32bit. */
> +    return apr;
>   }
>   
>   static bool gicv3_read_pending_state(struct irq_desc *irqd)
> diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
> index 5069ab4aac..c7f0c343d1 100644
> --- a/xen/include/asm-arm/gic.h
> +++ b/xen/include/asm-arm/gic.h
> @@ -171,9 +171,9 @@
>    * GICv3 registers that needs to be saved/restored
>    */
>   struct gic_v3 {
> -    uint32_t vmcr, sre_el1;
> -    uint32_t apr0[4];
> -    uint32_t apr1[4];
> +    register_t vmcr, sre_el1;
> +    register_t apr0[4];
> +    register_t apr1[4];
>       uint64_t lr[16];
>   };
>   #endif
> diff --git a/xen/include/asm-arm/gic_v3_defs.h b/xen/include/asm-arm/gic_v3_defs.h
> index 5a578e7c11..34ed5f857d 100644
> --- a/xen/include/asm-arm/gic_v3_defs.h
> +++ b/xen/include/asm-arm/gic_v3_defs.h
> @@ -45,6 +45,8 @@
>   #define GICC_SRE_EL2_DIB             (1UL << 2)
>   #define GICC_SRE_EL2_ENEL1           (1UL << 3)
>   
> +#define GICC_IAR_INTID_MASK          (0xFFFFFF)
> +
>   /* Additional bits in GICD_TYPER defined by GICv3 */
>   #define GICD_TYPE_ID_BITS_SHIFT 19
>   #define GICD_TYPE_ID_BITS(r)    ((((r) >> GICD_TYPE_ID_BITS_SHIFT) & 0x1f) + 1)
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 10:09:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 10:09:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118258.224312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKek-0002xZ-Q1; Tue, 27 Apr 2021 10:09:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118258.224312; Tue, 27 Apr 2021 10:09: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 1lbKek-0002xS-KG; Tue, 27 Apr 2021 10:09:26 +0000
Received: by outflank-mailman (input) for mailman id 118258;
 Tue, 27 Apr 2021 10:09: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 1lbKei-0002xN-RO
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 10:09: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 1lbKeh-0004eL-M3; Tue, 27 Apr 2021 10:09:23 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbKeh-0005Eq-C5; Tue, 27 Apr 2021 10:09: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=oodx0IIQ1y1r/WdXkQ45vjtLEEdiPEgCDItjeq6aTZ0=; b=l2Ydouw3m95Fxh1Z8i+fpigigi
	uQt3Csk/uf8NCgCxK4fknOFpKtX+mGpPobuC2FCG1E4OOhQ9+KPYK52hFSldQtDfbGm0GnMIB9jJk
	EcSLRgXk60Y4zTxcfLUID/ISLpuC64nQkpvmzYDVYbk/rAbht1+Cximrxn4lTZSvbY4A=;
Subject: Re: [PATCH v2 09/10] arm/time,vtimer: Get rid of READ/WRITE_SYSREG32
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-10-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <99d4150b-32cf-5065-0599-bc625deacc22@xen.org>
Date: Tue, 27 Apr 2021 11:09:21 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427093546.30703-10-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 27/04/2021 10:35, Michal Orzel wrote:
> AArch64 registers are 64bit whereas AArch32 registers
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 registers have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify type of vtimer structure's member: ctl to register_t.
> 
> Add macro CNTFRQ_MASK containing mask for timer clock frequency
> field of CNTFRQ_EL0 register.
> 
> Modify CNTx_CTL_MASK to return unsigned long instead of
> unsigned int as ctl is now of type register_t.

You modify all the CTX_CTL_* macros.

This can be fixed on commit.

> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 10:14:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 10:14:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118266.224322 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbKjC-0003r3-A8; Tue, 27 Apr 2021 10:14:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118266.224322; Tue, 27 Apr 2021 10:14: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 1lbKjC-0003qw-73; Tue, 27 Apr 2021 10:14:02 +0000
Received: by outflank-mailman (input) for mailman id 118266;
 Tue, 27 Apr 2021 10:14:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbKjA-0003qr-52
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 10:14:00 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id bbdd89e2-0a8f-4c64-8b84-a33d84ffa95f;
 Tue, 27 Apr 2021 10:13: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: bbdd89e2-0a8f-4c64-8b84-a33d84ffa95f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619518437;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=7jDF6Wvf8LVzhXAQGKXkV6e43XO9sOj1GM8weZbQFQE=;
  b=F7t3H+hpdNi3IhD0gZRch9sPqyc+nlfW0b1uTzAtCwFMF6ncR9+gGmOZ
   esGSK2U1kGGkeiWuLJLse5CrzUyKJFeGhiqLYnw3dRV5rpbR5mk9GZx/Y
   XkDVwF4EeHfh5ynvqQWqMempNF4BZZWnIkpcgCCjODhARziUTIVl2ZVRR
   8=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: W7EoRAjsmgLknpOKyR85bYP4doE++5uewmPnaULHx4MoCQs91YxbhTr+syaksVCdelZ/BBgxsY
 Zy1lYywvLPyJqINzUwymRXkmbtIPZtCmfnvZGz0fvfB+P6kZQNoj5/OwiTc3yRXLEMysDSMQEJ
 g6LZwZUT4tXIt3Pfn6BS7Ebt8Gyv81KMPzVwLnE9F7ThhXL7I+mda6H45EuKZ4VuhVrdHw76WO
 zTtMMZ00qBGuePNAIOmorC45i+QmvX7yEfV13utThqqemCNDj+wz/kKuEzQx2+v2zWTl1oRYPy
 rF8=
X-SBRS: 5.1
X-MesageID: 43991520
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9uR0lqDPv6BfyG3lHej/tceALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPvfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VLdMgXE3Kpm2a
 9kGpITNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0McShBQchbnmNEIyycFVB7QxQDIJI/Go
 aV6MYvnUvfRV08aMOnCn4ZG9XZr9rQm578JTIADRgr6A6B5AnYl4LSOR6ewxsYTndz0a4vmF
 K17zDRy4eCl7WAyhHa33LO9Jg+orrc4/ZKGcDksLlvFhzCkQCtDb4RPYGqnDdwm+237UZvrd
 +kmWZcA+1Wy1f8Ol64ugHs3Q6I6kdd11bHxUWDiXXu5ezVLQhKc/Zpvo5SfhvH50dIhrgVu8
 gnrgHp1esiMTr6kCvw/NTOXR1x/3DExkYKquIPk2dZFbIXdb45l/1twGpuDJwCECjmgbpXad
 VGMce03ocyTXqndXzD+kFgzNuwN05DZCuucwwpv8yY1CVuh3Zpz0cU79x3pAZxyLsND7ZD/O
 jKKaJuifVnSdIXd7t0AKM7TdKwEXGle2OMDEuiZXHLUJgdPXjAsYT67dwOlamXUa1N6KF3tI
 XKUVteu2J3U0XyCfeW1JkO1hzWWm2yURnk18k23ek4hpTMAJ7QdQGTQlEnlMWt598FBNfAZv
 q1MJVKR9f+MGrHA+9yrkjDcqgXDUNbfNweu949VV7LiNnMMJfWuuvSd+uWDKbxEAwjRnj0Dh
 I4LXrODfQFynrudm7zgRDXVX+oUFf454hMHK/T+PVW55MKMqFKrwgJmXW07syGMlR5w+sLVX
 o7BImivrKwpGGw82qNxX5uIABhAkFc56ilc34in35ND2rENZI4//mPc2Fb23WKYjVlSdnNLQ
 JZr1NrvYa+L5mawzEeG8uqW1jq1kc7lTavddMxi6eD7cDqdtcTFZA9QpF8Eg3NClhTlRt1rn
 xALCsJXFXWGD+rqajNtu1WOMjvM/1HxCu7K89drnzS8W+Go9s0e3cdVzmyFeiNgQgvQDJQrk
 Zr87AWhYeBnTrHExp6vM0IdHl3LEiHCrNPCwqIIK9OnKrwRQ12RWCWwQCBhwoLYWrs/UUKjm
 nHJSmZEMu7WmZ1izR96OLH4Vl0fmKScwZVZmphuYNwL2jAp01+yPSGfKa1zmuXZGYT2+11Ck
 CxXRIiZidVg/yn3h+cnziPUU8rwZgjJcTxJrUuebO74ALgFKS40YU9W9NE9pdsM97j9tIRWe
 WEYgmPMXfTEOUywTGYoX4jJQh5oHQpiunTxRXg9WS0tURPWsb6ERBDffU2Mtuc52/rS7K0y5
 1/l8sypvb1HWPraNKKoJunJAJrG1f2myqRQO4po5wP4v53m7t3ApXBUTzHkFtAxw4zKc/olE
 UYBIR3iYqxTLNHTog3QWZ++FFsqfGkaG0MmSbyCvUlfV4sg2TAVun5robgmP4KOAm5uAD0OV
 Oj6CVT8PfOYjub2dchetUNCFUTTHJ51W9r8+yDfbDBEQmGd+lM+1yhL3+2GYUtAZStKPE1rh
 xg5cuPkPLSXy3k2BrItT8TGNMAz0+XBeezChmLA+hG7piTPkmNmLKj5IqWgC3sQTW2L2Qeio
 stTz1fUu1zzh0jhpYwyC68V+jepV8kiUJX5XVfrWHWs7LWqlvzLAVhKg3WgpJfQDlVPDyptK
 3+gJml/UW4xiNE15nFHFpXZfdUFbErP9LKExs=
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="43991520"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GrqTFBs1m9n/0dz/kFqflQiBmQ/Ulyaybk4/pinJnE6SknLBW4aKcioFYmsVqBb9lTp+XpZv8P3jFbSuyCQVSDAX/2HtdQJZ1Ip4F0UI4lxPE//tgJxYnWUL8BWwMtgoKqbSqHspfzlh0Rr7W9FnIhY3EAJK5T8b4J5ii0C/rJW4e/KG+gD+LQMp1MZMCmfFYkLlYSsOwVYcMmNQXsC/FZRMUuZz8krrsuzEXAKECSUz6VO08GSHr9NbM7YbvjsY4Juu0FhqgcLF4qCn92rmuUmZ0Lu5LZ1Iw/TGaoK3t+kx9YqtGYBOnaNNva2ysdFxkjWHtjWOVRUGlrUoUKYNjQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CdDLMUlgbjmhB7z9vklvy5BuyDYDvl/ql/xjhKF4GR0=;
 b=TW8Kk6rI8y70SiWs/0HaTJV79X7kDwvtas+z/gDUNCq2VsHHtobAz1eZ0DZFhpkjP2TnDgqzFVqDm/vWQM83aPNZ8n9PpeHpxtQrCxX4US1R9iqHe4MOp/102Gbl9xpv/3GodMFj9XvWVScKvMH1aumKniq8YUhSV3U0wjFG1K+Y0GEiJu5OPJLtWrOw/0vQ6LFYMepdjEsf0AN1JJKqN9IT8GBnlX1Lp8N3NaVEsYxAyY319pb/smvq3bPLGHOlTk67UB/4UWC0ciiCshh9tfsr12qQO1yHZ8+g3rm6VS0J1v4qHmtDdGAO+Pon4iK2bp8mJKD7zvPF1VP8OtIupQ==
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=CdDLMUlgbjmhB7z9vklvy5BuyDYDvl/ql/xjhKF4GR0=;
 b=g+Pa0WAfophBiFz4CDzAYokmS61BY7BHOH4QWj8DX+HEo+ClASxitlXNobOWhJVKl4txtu/AmgVpA4ztuq+3EuHo5/UjtwK3e3TToUFIWfWANPKmOk6fFzrTL13lmAh5SB0NiB3Mk6a2tj8MUDJfmO3k4S6lHc6soud3lOV46Ic=
To: Jan Beulich <jbeulich@suse.com>
CC: =?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 <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <03630ebd-861e-b02c-e845-1e2324211562@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 0/3] x86: Initial pieces for guest CET support
Message-ID: <3e5369d1-a6eb-92c4-868c-0b9d205aba7a@citrix.com>
Date: Tue, 27 Apr 2021 11:13:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <03630ebd-861e-b02c-e845-1e2324211562@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0206.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:9e::26) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5db2505b-bfa1-4b54-94bf-08d9096528c1
X-MS-TrafficTypeDiagnostic: BY5PR03MB5284:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB52846098FD84EC5D597E3535BA419@BY5PR03MB5284.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: RkOdrQPsdd0XbuvM/EGExN1DAU4s1hGoEd/wQS5U637loXcON5AkBzHZwQgKrng3P5qvLmsbd+VIzHyycVZhT+YTTo5IluMLNcNIpvqyZ96Km+1DuR/AQRWcmUIJ8p10An1ooVozc+U6g9gXAZFrWf4dgNNfXZ61NCGQAefklME3qN/h7aziaBiw1JS1j5HoGw5Uz2PbBryM1RVJMXSAXhEURSsA9M8VB9CcpT1VrWbjFygB0nsfqVq1MMWeMP6HoRbc2hZHgKy8u3vIPAYRCMqSjNnsw2V061fmaRbyTqlPpkzsTrNWFRN09vFgGSK+Hc16nXx+KinxJ05stoYBA1nXOi166q8wWIGzzZSyR7h0r6pPaH5kxbLNp8MQ7LFrdKdNt968oE4+UOP9FJ/MnkfjcYo8gVBnw30Tr3DXJ0jzagvLjKlg6h5X2SSMF11L/T2D2T9ZXpUzNE8GEdnNYj6OST3CPu260iUxKXpoxuWlTMAQt69gqvuEH63+jJ0nqhDVJXy7clZSSdohb2dmPR5wDuMSgvuAGmG5SYND5syJrguEa/7DNJ4pYIi+GEFnBBESIHamJFLF79yI74SpmrHHTn5ZJ+Vx7iLqCoog/J0fWbBOuqgadJG3BtbP9laD4o415baBNq5x0wvu1VwHdP0kuriTxHbO+jg4QBt8dvUAAy7KETtwt+Wmo7tLdoWm
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(136003)(396003)(366004)(376002)(39850400004)(36756003)(66556008)(66476007)(6666004)(8676002)(31686004)(26005)(956004)(86362001)(2616005)(8936002)(66946007)(2906002)(83380400001)(53546011)(5660300002)(478600001)(38100700002)(54906003)(316002)(6486002)(4326008)(31696002)(186003)(16526019)(6916009)(16576012)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/O3czrt?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 5db2505b-bfa1-4b54-94bf-08d9096528c1
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 10:13:53.1187
 (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: uXA04xM4oHIjnUpb77O76HwfZIp6A9xlGS+ts3336XfbBEDJb7QBWCOd4LJK/ZlYKGjzkK7QBBmC/5AtVYirbp1UYZ9ZOoQ6YEyvakpo814=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5284
X-OriginatorOrg: citrix.com

On 27/04/2021 07:46, Jan Beulich wrote:
> On 26.04.2021 19:54, Andrew Cooper wrote:
>> Some initial pieces for guest support.  Everything will currently malfun=
ction
>> for VMs which explicitly opt in to CET_SS/IBT.
>>
>> Still TODO as a minimum:
>>  * Teach the pagewalk logic about shadow stack accesses and errors.
>>  * Emulator support for the new instructions.  WRUSS is an irritating co=
rner
>>    case, requiring a change to how we express pagewalk inputs, as
>>    user/supervisor is no longer dependent on CPL.
> I can put this on my todo list, considering that I'm the one to play
> with the emulator the most. Just let me know if you would prefer to
> do it yourself. (Otherwise my next item there after AMX is now
> complete would have been KeyLocker insns.)

My plan was actually to start with WRSS and do the pagewalk side of
things, including refreshing my comprehensive pagewalk XTF test.=C2=A0 This
will block work on all the other shadow stack instructions.

There are 3 emulator complexities for shadow stack instructions.=C2=A0 SSP
itself as a register, WRUSS no longer being CPL-based for
user/supervisor, and the fact that RSTORSSP in particular uses an atomic
block which microcode can express, but can't be encoded at an ISA
level.=C2=A0 I've got no idea what to do about this last problem, because w=
e
can't map the two guest frames and re-issue the instruction - the
aliasing check on the tokens forces us to map the two frames in their
correct linear addresses.


IBT is quite different.=C2=A0 There are only two new instructions,
ENDBR{32,64} but tweaks to lots of other instructions (all indirect
control transfers), as well as 0x3e for the notrack prefix, and the
legacy code page bitmap.=C2=A0 The tracker bits themselves are somewhat
irritating to access in the {U,S}_CET MSRs.

Furthermore, I don't have access to hardware with CET-IBT (the SDP seems
to have let out some blue smoke), so any support here would be speculative.


Other bits I'd forgotten from the first set of bullet points.
* {RD,WR}MSR support for all the MSRs, including finally breaking into
the non-trivial work of context-dependent state.
* Changes to Task Switch.

>>  * Context switching of U/S_CET state.  Recommended way is with XSAVES, =
except
>>    the S_CET has broken sematics - it ends up as a mix of host and guest
>>    state, and isn't safe to XRSTOR without editing what the CPU wrote ou=
t.
> Hmm, I wasn't aware of quirks here - would you mind going into more
> detail?

I'll double check my notes.

>
>> The above ought to suffice for getting some XTF testing in place.  For g=
eneral
>> guest support:
>>  * In-guest XSAVES support.  Windows is the only OS to support CET at th=
e time
>>    of writing, and it cross-checks for XSAVES.  Linux expected to perfor=
m the
>>    same cross-check in due course.
> What specifically do you mean here? The XSAVES CPU feature is marked
> 'S', so ought to be visible to Windows. Hence I guess you mean support
> for the respective XSS bits?

We really shouldn't have exposed XSAVES without XSS bits, but yes - what
matters is that the {U,S}_CET XSTATE components are usable in the guest.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 10:40:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 10:40:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118278.224335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbL8d-0006b9-Dq; Tue, 27 Apr 2021 10:40:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118278.224335; Tue, 27 Apr 2021 10: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 1lbL8d-0006b2-Ai; Tue, 27 Apr 2021 10:40:19 +0000
Received: by outflank-mailman (input) for mailman id 118278;
 Tue, 27 Apr 2021 10:40:17 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbL8b-0006ax-DC
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 10:40:17 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id fe439cac-45a5-43fe-a316-f3576079147f;
 Tue, 27 Apr 2021 10:40: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: fe439cac-45a5-43fe-a316-f3576079147f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619520015;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=uDR2InhuMZ+Ku4ILvWLvp3R3aYfqra5pTE6KnbUdCzw=;
  b=Uda4pAIciEBKgv7dFEbiJ0QXyzsmU3C9zIqpJtP6R+fYtVqVzC6zDRqt
   JfCjAukyM2Z1wJk/8r1HIgpR6XsUrgsXZqn7+fDvUewk4SLUcMS3GVn9P
   7D+D+s0tOqg1UvBkUuF2Qt0PHH5LJAujdad0KzP9TU0MEQ6fGTN0tenqa
   o=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 1/+UHZH78b/gU5M8xinw8TUpM0/k6kfgKhQwx87YOHmZCvLWIANbX67LtGJMKMWIoPEsXw37tL
 3kvkyQ69JF5Kp0XPwbpezt1lFXMXMGeTZrZaV6rM0AXOsrHzLgVoMyMK8vzgPSPXPYWg2ChegN
 AZ6XOMdZW41VCVWJB/U6lFv6797h0dGl34gycwR8TD8VXHKS8CZMXNGj3GGYe3/ZxQiGcSxRWm
 T8legNedOiux1Z3XK8MlNzaxPpGxDTD+IkC8twsDIouvR1TdVcEaZHTE9kSZZDC4gWGUUOJOLL
 u7E=
X-SBRS: 5.1
X-MesageID: 42487399
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:tyqidavkZ8MMP9R1xf9uqpeg7skCkIYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOj7U5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qz6Y
 5JSII7MtH5CDFB4frSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjztRICzzKDwQeCBtA50lGJ
 2Aovddrz27dngNKui9DH8JX+/Mzue76a7OSxgAGhIh9U2ynSqlgYSKaSSw8zU/d3d0wbkk+X
 XYiACR3MSemtyy1xO07R6r0714g93ko+EzYfCkrugwBnHShh2zZIJnMofyzQwdhO208l4lnJ
 3tjn4bTrxOwkjcdG20vhfhsjOIuF1Fhg6AuD3o8kfLmsDlWCk8T/NImIMxSGqm12MboNp+3K
 hXtljp0aZ/MBWoplWY2/H4EztulkayvEM4l/8Sg3F1QeIlGcBshL1a00VPHJgaGiXmrKghDe
 l1FcnZoM1baFWAchnizyRS6e3pek52MgaNQ0AEtMDQ+z9KnEphx09d4MAEhH8P+L80VpEs3Z
 WJDo1Y0JV1CuMGZ6N0A+kMBeGtDHbWfB7KOGWOZXz6CaAuIRv22t/KyYRwwNvvVI0DzZM0lp
 iEekhfr3QOd0XnDtDL9IFX8yrKXH62UV3Wu49jzqk8noe5aKvgMCWFRlxrudCnue8jDsrSXO
 v2F4lRB9PlMGvyCadE1wDzQPBpWDojefxQnux+d0OFo8rNJIGvnPfcauzvKL3kFithem6XOA
 pAYBHDYOF7qmy7UH7xhxbcH1n3fFbkwJ52GK/Gu8wayI0HMJxwohEY4G7Jo/2jGHlniOgbbU
 F+KLTonueQvm+t51vF6G1vJ157AltK5q7jF1dHvxUDPU+xUbtrgaTRRUlimF+8YjNvRcLfFw
 BS435t/7isEpCWzSc+T/S9MmybiHMXjGmQT4gVn5CC4cuNQOJ5Mr8WHIhKUSnbHR18nghn7E
 1ZbhUfe0PZHjTyzZm+gIcsH+HZfdlkiAKNKcpZwEiv8Xm0lIUKfD82TjSuWcmYjUILSyBPjl
 N8yaMZnYGNgC2iM2c5neQ+PmBdcWj/OsM3MC21IKFv3pz7cgB5SmmHwQaXjBw+YULG3UQfjG
 6JF1zdRdj7Rn5m/lxI2Kfj9115MliHd0Vrc3ZgrMlWDmLdoEt+1ueNe4u+22accUE53+kYKT
 3JCAFiZT9G9pSS7lq4iTyCHXIpytESJeTbFq0kaKyW9XW3KoGE/Jt2aMN8zdJADpTJveAKW+
 7EJFPQAzP8Fu8z2wua4lwiIzJ5rXE4kfXunD3phVLIqUIXML73GhBBQbpeHvS3q07DbNyM2I
 9ijd00sfCrW1+BI+Ku+OXyVXp7NhjXoWSKVOkmppBfgLIquNJIbuvmeAqN8EsC4Q43I8j1nn
 4PWahX4LjOPYl0YswZEhgpimYBpZCqJEsvvheeOJ5EQXgdy1vaNciO+bzGtP4GBVCAvhL5PT
 CkgmZg1saAeyuIzrgBDa0sZUxQdUgn8XxnuMePbZfZBgnvV+ZN+jOBQzWAWY4YbKiOArMLqB
 lmp/mOgu+MbiL9nDnqggETGNM5z0+XBeWoAAyNHuZU89u1fXS065HanPKbvXPQUju0a0MRmI
 tfU1cfB/4zzAUfsA==
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42487399"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EAwfEjWwnVg7/zng8qREDMvkEdAQogw7G7g+he8y+BEe2klLLAkAEla5UqZ+tW6N3w21F8vS5Frftk0pvRUuKn23f8tOSkPcU0dslsbgWXD6KTHhdCzpyQdl0OxwxsqbCr7jmskHK+CnpuctjF+6odA57BpNIywq97CzyKgSbK5Q9huQauZ2XWehj7pKNDArZRnxpxiVCVhXjEpi2hJ60PCP30mmACIBJVfvaC5u/qJTnBVP26u05O+FGkOuiZDnqxZtETToS/vB064JL+XA8/imWoyz03mUytul9hUim3uMdRod4UrWZ6yI8QAXx4EWRrkFDZ+w4OkxDF3gRygyqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JasgR5TCxnMA8cjQDKVfqLzmgPfmxIZoYVzZ2bFEgzg=;
 b=hZrCJpLda/VGUg014chTJcrympvJnHhsOkJRPK+yxKWcOW/EqmN2vekSRFkv/UPQ+0VAHr39eO+8WCdrnRHUJi/7Lkpd6jiB+FVmqfJjZlPif9hsNsHS9fGa9HuSTi711KDzdaeObl9hH1JgI4bmXWJ5r7r+kGPTIldq1PJtqjswWOEwtWqLOj7Fc2wItxvWh3ES0wgKwMNa3izAgsjdiOIFgZ2ISCR4Lu5ZXFdmE7+zvPunVWdtzez6ZW5GxwsXNPcVbHDGT0IBgPp01iaJGvNsQ1Yv3TbpqE5V7iL7477D3xg/cQlkTojbMgAJsf8gOoBB3XmVOVZth9mBOGpVNg==
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=JasgR5TCxnMA8cjQDKVfqLzmgPfmxIZoYVzZ2bFEgzg=;
 b=F/dOQ9RE060qaAIYpi+ZmDU4znIMN+mjRYHMoHPTmvojdD+AunF+q5dSi2wfkt1JlG/FZ43lsNHELrBKlMoPPIAhWj7MLRiiit0coeUCdMUupVZFBZTwhO4WthJjbEF4rqZZRA5KH4riWtVqJfdbVOLXuiPuRSEegegfhafEA6A=
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/shadow: fix build without PV or HVM
Date: Tue, 27 Apr 2021 12:40:03 +0200
Message-ID: <20210427104003.28075-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: PR0P264CA0166.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:1b::34) To SA0PR03MB5610.namprd03.prod.outlook.com
 (2603:10b6:806:b2::9)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e0bfe345-cb3a-4188-dbfa-08d90968d559
X-MS-TrafficTypeDiagnostic: SN2PR03MB2414:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SN2PR03MB241419A9670B533EEC5FC1138F419@SN2PR03MB2414.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2276;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Gk2huuBrpZ2oxUtWnF5Ds97tZKTGszOflGkYkloRw10cwEEBODTCU7xCbWyuJ1a9VCNVwNhkQFtQN9+PAxw0vX+xG5zl0PZNXblDVXqwrapx6ennA9u649QHCtLD1+JY/rLZfyaMOuPKk8+D4GxN9J3hW6uOSLEk/9XZMNVf6QkVK4pUtv3+FSEqIb0wEKYiYg5WRF4WirUb1IT4R2E4jEVDv4hjUh+/QOzB1kJOpTaOR/9owQCiRhHx84enqTFTQaSgfBg28XS1lnayFOesngGzuXM3Zt3vlqVzMT8l5enokDLyureAb1GFPoB51ydKFcx1IoqaTrQN1RodEiW2k2wqLF419o6bYL3VM+sCtYO9iiZ6rcSBQzoarPX1WhwTP4DG/sUsGimOU/uawnGPoRdAQlE52VxzffjUl0Z665DqA1R22BVXf/9o0vroBy+wgYz5dpM7aqU6XRpi0fHyrxTuetbEzLYT7xakdvZoRJJP92gp/KtoFBV+0NeyOxP7TnYS6OeEBfYf/ZCl3ch21GLUkAaC0NDX5lXIXz2tnW/3KMhA28pOh3MfLJATW63AvfR6tonIYgS0XUwV7ROYCQi1d5UguUZeLJaghUjIvYY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA0PR03MB5610.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(39850400004)(346002)(366004)(396003)(376002)(8936002)(8676002)(38100700002)(6486002)(26005)(6666004)(2906002)(66556008)(16526019)(54906003)(1076003)(6496006)(316002)(83380400001)(4326008)(6916009)(66476007)(956004)(2616005)(36756003)(478600001)(186003)(5660300002)(86362001)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?pvQjbEpb/0RGGciFh2mt5WcH0jUgyu/m2dtJLKp?=
X-MS-Exchange-CrossTenant-Network-Message-Id: e0bfe345-cb3a-4188-dbfa-08d90968d559
X-MS-Exchange-CrossTenant-AuthSource: SA0PR03MB5610.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 10:40:11.1734
 (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: ddhEqPLS4Ipb1ZEhhvOeoRJto9T1krtMgMXMjRdKCSvUfSWNF28dxksLtJpDpLEKkiyAwPHrF2Iipms7qp85sg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN2PR03MB2414
X-OriginatorOrg: citrix.com

When trying to build an hypervisor without PV or HVM (ie: using
automation/configs/x86/no_hvm_pv_config) it fails to link with:

prelink.o: In function `sh_remove_write_access_from_sl1p':
arch/x86/mm/shadow/common.c:(.text+0x72b4c): undefined reference to `sh_rm_write_access_from_sl1p__guest_4'
arch/x86/mm/shadow/common.c:(.text+0x72b4c): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_rm_write_access_from_sl1p__guest_4'
prelink.o: In function `sh_remove_shadow_via_pointer':
arch/x86/mm/shadow/common.c:(.text+0x72bfa): undefined reference to `sh_clear_shadow_entry__guest_4'
arch/x86/mm/shadow/common.c:(.text+0x72bfa): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_clear_shadow_entry__guest_4'
prelink.o: In function `_sh_resync':
arch/x86/mm/shadow/common.c:(.text+0x72e4a): undefined reference to `sh_resync_l1__guest_4'
arch/x86/mm/shadow/common.c:(.text+0x72e4a): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_resync_l1__guest_4'
prelink.o: In function `shadow_vcpu_init':
(.text+0x72eeb): undefined reference to `sh_paging_mode__guest_4'
prelink.o: In function `shadow_vcpu_init':
(.text+0x72eeb): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_paging_mode__guest_4'
prelink.o: In function `sh_resync_all':
(.text+0x73315): undefined reference to `sh_safe_not_to_sync__guest_4'
prelink.o: In function `sh_resync_all':
(.text+0x73315): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_safe_not_to_sync__guest_4'
prelink.o: In function `sh_resync_all':
(.text+0x7336a): undefined reference to `sh_resync_l1__guest_4'
prelink.o: In function `sh_resync_all':
(.text+0x7336a): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_resync_l1__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x736bd): undefined reference to `sh_map_and_validate_gl4e__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x736bd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_map_and_validate_gl4e__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x736dd): undefined reference to `sh_map_and_validate_gl1e__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x736dd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_map_and_validate_gl1e__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x736fd): undefined reference to `sh_map_and_validate_gl2e__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x736fd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_map_and_validate_gl2e__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x7371d): undefined reference to `sh_map_and_validate_gl2he__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x7371d): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_map_and_validate_gl2he__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x7373d): undefined reference to `sh_map_and_validate_gl3e__guest_4'
prelink.o: In function `sh_validate_guest_entry':
(.text+0x7373d): additional relocation overflows omitted from the output
prelink.o: In function `shadow_unhook_mappings':
(.text+0x7379b): undefined reference to `sh_unhook_64b_mappings__guest_4'
prelink.o: In function `sh_destroy_shadow':
(.text+0x74183): undefined reference to `sh_destroy_l1_shadow__guest_4'
prelink.o: In function `sh_destroy_shadow':
(.text+0x74199): undefined reference to `sh_destroy_l4_shadow__guest_4'
prelink.o: In function `sh_destroy_shadow':
(.text+0x741a1): undefined reference to `sh_destroy_l3_shadow__guest_4'
prelink.o: In function `sh_destroy_shadow':
(.text+0x741a9): undefined reference to `sh_destroy_l2_shadow__guest_4'
prelink.o:(.data.rel.ro.local+0x1018): undefined reference to `sh_remove_l1_shadow__guest_4'
prelink.o:(.data.rel.ro.local+0x1020): undefined reference to `sh_remove_l1_shadow__guest_4'
prelink.o:(.data.rel.ro.local+0x1028): undefined reference to `sh_remove_l2_shadow__guest_4'
prelink.o:(.data.rel.ro.local+0x1030): undefined reference to `sh_remove_l3_shadow__guest_4'
prelink.o:(.data.rel.ro.local+0x1068): undefined reference to `sh_rm_mappings_from_l1__guest_4'
prelink.o:(.data.rel.ro.local+0x1070): undefined reference to `sh_rm_mappings_from_l1__guest_4'
ld: /root/src/xen/xen/.xen-syms.0: hidden symbol `sh_destroy_l2_shadow__guest_4' isn't defined
ld: final link failed: Bad value

Fix this by making shadow depend on either PV or HVM being selected in
Kconfig.

Fixes: aff8bf94ce6 ('x86/shadow: only 4-level guest code needs building when !HVM')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 32b9f23a20e..966b3634591 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -121,6 +121,7 @@ config XEN_SHSTK
 
 config SHADOW_PAGING
 	bool "Shadow Paging"
+	depends on PV || HVM
 	default !PV_SHIM_EXCLUSIVE
 	depends on PV || HVM
 	---help---
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 10:47:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 10:47:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118290.224346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbLFR-0006r5-9W; Tue, 27 Apr 2021 10:47:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118290.224346; Tue, 27 Apr 2021 10:47: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 1lbLFR-0006qy-6Y; Tue, 27 Apr 2021 10:47:21 +0000
Received: by outflank-mailman (input) for mailman id 118290;
 Tue, 27 Apr 2021 10:47:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=sA9O=JY=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lbLFQ-0006qs-4c
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 10:47:20 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::7])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a9d2cc11-f445-4603-bae6-e5d09ca95a1a;
 Tue, 27 Apr 2021 10:47:18 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.25.2 DYNA|AUTH)
 with ESMTPSA id D0155dx3RAlH09k
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate)
 for <xen-devel@lists.xenproject.org>;
 Tue, 27 Apr 2021 12: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: a9d2cc11-f445-4603-bae6-e5d09ca95a1a
ARC-Seal: i=1; a=rsa-sha256; t=1619520437; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=Ki1Z7R1d0kzo95iq0M9E0a2tRSm9iXPqGzMNTMNh+LODZlhwdntXg0J74Ui7CGNQ+M
    chyVC+sNixSWbAUceTHZVqCsCtBxBmvlJSHAgJlGDyHhHjxN7SVwlHhRUMGQ/xpz2bFU
    TO59ebrnwh/sMoGfkcHwS6jksI0eD7dLSBiFaADSZqFOebaaEFs1KMjfctEC6Oz6Yip5
    yWYZjQK2u7x6C5KV0I4k2j1HpbzCLpmD2f8qybGhDeRhSxk9rBE/tB8m9kgnZ8QDTevz
    EKqGTJuxjtryCBndOIJXTkdMSoKZ599N+9GzNHobpgiroZf3ljwvDife1umB2CLnySUS
    kUkA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619520437;
    s=strato-dkim-0002; d=strato.com;
    h=Message-ID:Subject:To:From:Date:Cc:Date:From:Subject:Sender;
    bh=Skn0ST4l/hyJtjamObmZL1MnfQrrqMO44BlAGZPozRU=;
    b=Vr7LvFy3LXJd2B5vAHgN7Qu/Q87PA4/dV0X462NgU7e04hgxdaIduWlftmbMZcJG8x
    TbTLBWN7LOcUMn9UKmoKUnGekUTB8lYrkq6gz7xcu9uOopU3w4yb2dY4zYV+jLFxZnwr
    +hBlDa6gT+nlt+1vYTzCllEbBU53PK0p7nadtvK4N0w9bYIWTUWT6e9hpI/VkWcbBmhT
    PtAZnvy76eA8hDtKYXR7pjSJ0dAAdqgjZwjM/PsBQphwTuPITK22fiGIiSv/b5HkNSzB
    y5SWDmhNUNDoABprC8Itq4L/pTB713vaiTtEcrDh+5TeL/s4dHzzjwkNdKgHeZufvFre
    Yx0g==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619520437;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-ID:Subject:To:From:Date:Cc:Date:From:Subject:Sender;
    bh=Skn0ST4l/hyJtjamObmZL1MnfQrrqMO44BlAGZPozRU=;
    b=pLmJ/SGquJaG6H6nW6mrKe+QbeUuaXV4Ql1R9wT87Vwv4X9qmxcA0LasqykWV41YUt
    Bhpcfg5evJ4R02HnwGyNxBa1dBXEP+blKGxCajm0m6Mq8hcPBuoboOzlavV+9eCXUuof
    f7EQYiaxjcCq78RDdCQ6fkPZxrRd6/1Bng0AJ4VKiWlQQc0/GoNFH0Vkmr+/FegSMiIn
    m/EaSF9OUAzqRferZIl3u8bdhHUYb3FLiWfSNxo3kxQiyDesOF4CQyVUiW29LaNmOAtr
    LI8+3g2KaZNxmMkcwKtlm+56CYLY+O7dEz4ztJHI6T0FYiHheREu3Ln9NUTy3cmL6sNe
    Wphg==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDXmEVBDI4vdCIUVoI+FPGA=="
X-RZG-CLASS-ID: mo00
Date: Tue, 27 Apr 2021 12:47:08 +0200
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Subject: libxl uses wall clock to wait for backend devices
Message-ID: <20210427124708.47985c64.olaf@aepfle.de>
X-Mailer: Claws Mail 2021.04.21 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 boundary="Sig_/h1Oze/5M/4vh2r1PD6Ht_6W"; protocol="application/pgp-signature"

--Sig_/h1Oze/5M/4vh2r1PD6Ht_6W
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Does anyone happen to know why libxl__wait_device_connection (via libxl__ev=
_time_register_rel) uses absolute time values, instead of relative monotoni=
c times, to wait for the expected state changes?

I think this can easily confuse libxl when the system time is corrected by =
some ntp daemon while libxl is launching domUs.


Olaf

--Sig_/h1Oze/5M/4vh2r1PD6Ht_6W
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmCH66wACgkQ86SN7mm1
DoAVOg//W7dZqTCitS2K5zMNBs4byV20N+WpVzhxTr/LUK3s3EdxEOt3vFZ6i/1s
oHYPMHWugoKmsPV2XhoW5CdkFM/IUWHfJoVkaplWsImtq8tkwiCJvaQhEHnYya4v
KHv2NKXERcHDWPju5l2uWWJCfV44gHO3RLrzsxFko+mHW9nvvr0oeWG/RhahMxsG
WjROTAwm/YVbgRJHqXV3PKNCUlvQxLQb5aCJpUt08MavVRY2dWFuJFlCR3UOEC7n
mer5YWtEy2EQ1vkfD0ujXL9UxxDv2oRQ9l9B2wI8TNSSmIDpOpsBMaLA5bpvX15U
5Q29az21s8V9lp2A5lF4a5y6kM1WhUO65Ur8fLuoOEYR1voFrw6/RnuCm467gpCd
pl+rMR5ymBu+igGJgpHPRJ08o+FvklqyXGqWWLxuIAQBIYasWkuxLlNfJiF+4imQ
4h4TJGVh7JiRQ8AK1Im2rSUcMUFWNlYKdWyjxJpoJUNYetYcth7URouuStGa3Na6
REs3LG7JkzZY7y+AHlhGXuWUSnOedGd9FGYLCrqRYA5FTHXNIcflymx8l/QQoSKy
3oVFSY7j+Hz5Wdzr95CUC3c17R9oR2vq+/nO1QeQ3O+PRPYYo1A3+fybUpXiHm5G
EqClpBI1li6Pi8OZj26rzM/coDUwvBmkOh3YE+xPBRKpuKvi2eQ=
=4aOa
-----END PGP SIGNATURE-----

--Sig_/h1Oze/5M/4vh2r1PD6Ht_6W--


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 10:50:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 10:50:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118295.224359 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbLI9-0007hm-Ow; Tue, 27 Apr 2021 10:50:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118295.224359; Tue, 27 Apr 2021 10:50:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbLI9-0007hf-L2; Tue, 27 Apr 2021 10:50:09 +0000
Received: by outflank-mailman (input) for mailman id 118295;
 Tue, 27 Apr 2021 10:50:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbLI8-0007ha-Pj
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 10:50:08 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 54278c6c-d795-4c94-b156-bfc73b0b2271;
 Tue, 27 Apr 2021 10: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: 54278c6c-d795-4c94-b156-bfc73b0b2271
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619520608;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Zj2aJDOtNI/nXqo2vEdc3df4arHwa9FAPQdH2O9GCVs=;
  b=FJOMeqCklQqYRM+LNW6N7HK8biToz4X+AI0bZNVXDuYta+TI4CFK6LbI
   pKiUAlJhVv1FcVAH7FRuVjTFNCIu/+yArkjEF3EucW83a/5xZVdin1M70
   /7H8C93x0hnQ+z2V4vlxl+Qtw1NNGncrrhJp/pxvwvBmjwCiPXpczTkLW
   A=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: nUtMqLxo/97i1MIzknHRnIx7oyQxGpoknKeypjTgQG0iw9ILNfCRd9gKxa0aUkB5Ys7k552v66
 pE4NzXXkj7Nn/kqhJEES0+T7Li8tUxfkD+1DsT5/HoD6Z9ECQXAZUG0QX59T93lLWjCMLnPEju
 CVlLu2mwDSacDQRH42ghWINW07pvARqBlTjM3vMvAEa/zThOVjMYhRN+Ajdagm2txuqir6xF/5
 A/ei8XTvqMXSNa9QmstHyOjdZOQwt+hDzRJ5w2R7XU4mFvn1BwtisrsKHKq/M8TCwfyC3R5t4e
 gfo=
X-SBRS: 5.1
X-MesageID: 42878000
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:LPKnMKCDrkHbccXlHegctMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmBEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVsUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbiSw9BEYTj9J3PMe4X
 HI+jaJnZmLntOa7lvn12HV54lLg9eJ8LV+LeGFl8R9EESPti+Gf4JkMofy2QwdgObq01oylc
 mJnhFIBbUO11r0XkWY5STgwBPh1jFG0Q6T9Xa9jWH4qcL0ABIWYvAx/L5xSRfS50o+sNwU6s
 sitAj4xvknfy/opyjz68PFUBtnjCOP0AIfuNUekmBFVs8mYKJRxLZvjX99KosKHy7x9ekcYY
 9TJfzbjcwmFW+yXjTyu2lix8GURXIjHhuKaVhqgL3q7xFm2F9+1EcW38oZgzMp8488UYBN46
 D+Pr1vj6wmdL5bUYtNQMM6BeenAG3ERhzBdEqUPFTcDakCf1bAsYT+7rkZ7PyjEaZ4g6caqd
 Dkahd1pGQyc0XhBYmlx5tQ6C3AR227QHDE1txez4IRgMy9eJPbdQm4DHw+mcqppPsSRufBXe
 yoBZ5QC/j/aUPzBIdy2RHkUZU6EwhebOQl/vIAH36eqMPCLYPn8sbBduzIGbbrGTE4HkzlBH
 8uWyXyOdVg4kinVmSQummSZ1rdPmjEub5gGqnT+OYejKIXMJdXjwQTgVOlouGHQAcy95AeTQ
 9bGvfKg6m7rW658SLj9GNyICdQCU5T/fHFW3NOrgkaDlPsfd84ypGiUFEX+EHCCg50TsvQHg
 IajU9w47iLI5uZwj1nLN67LGSAjT82qGiRR5kR3o2PjP2VNK8QP9IDYuhcBA/LHxt6lUJBs2
 FYcjIJQUfZC3fJkqWqjJsdAcnFbNliiAKXIcpZwEiv9nm0lIUKfD82TjSuWcmYjUIFXDxPnG
 B89KcZnf69gzq1EHA+h+45KVVIT2ySDNt9fUO4TbQRvoquVBB7TG+MizDfrx0oYGLl+38fgX
 HbITSOdevGBUdcvX5kwr/nmWkEBVm1TgZVUDRXoId9HWPJtjJI3eiHarGa/kGRZlEBq9ttew
 3tUH83GEdD1tq33BmalHK+Dn0g3IwpJfGYJq8kaavv1nSkL5ComakKE+RPxotsMMnjv4YwIK
 SiUj7QCAm9J/Ii2gSTqHpgBTJ9r2M8l+j0nDLi92q10RcEcIzvCWUjY4teBd6S72LpHanVlL
 p4iM84puu2PCHabMWcxaTecj5ELVfyrAeNPpUVgKERmZh3kr15W6T/e3/v8lps2R0lNsf6lE
 8EWs1Akfj8E74qW/ZXQj5T+1oiqc+GI0QquDHnG+NWRyBZs1bre/eyp4fSobUhAke9tBL9FF
 mW/Spa5erEVUK4pMknIpN1BWRdc04n7nt+uMuEao3LEQ2vHtsztmaSAzuYcLVHTrKCFqhVhh
 Fm48uQl+vSUybjwgjfsX9aJa1JmlzXDP+aMUapGeRS9ca9NknJqqy24NSrhDOycACFUS0j9M
 R4XH1VSN9ChDkkhJA21Sb3apWfmDNbr3JupRd9llDs3YC65nz8Bk8uC3yBvqlr
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42878000"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NIqxdvL5fHtwsZLg+eLkqaE0WhPXdUxHafRbhJUvvgUR1ynbSDvoE7x+xmyk0Og2W3ypmDvPJumZBQHly0O4sQBd6cPiNz9XrCZFzbOlcb51/vtxvt5BuUXnbeXw5R7fsr1QRwPQuzsf+N1Jd+Yo4nOg+ACVeByK8A9wZHOFWBOxG2Xnnh9LrlAwk+S2rMf6Ek5FhkrXd1vypGv1XLV1kiGWRhgR5L7H6ZWShn98VtNVx0ggMYeFqfglrbfRm1D2jDi2Bs4wrVgaeks+KOYhfXgbGxsAQ/5OjQY8Bap4PGXRoZ8dzjgTxIJ+CwAdV38zuPcp/orQA+J9l5CswtjBFQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=khLL002hRBXd9WKfica/99bJXhH5ZJ+qh+xZdE2rdSs=;
 b=YN6oZR8sEHXtr6kIymcGKohoYMMiVQiJYZA21Sh7TBG/TjgELw9RSRVgk+9l5cy7oVDN76+W674rOo4wLKqxkKOvz3+nE8PUtKnACDpEuDgVg3a+otTJUvoBitcRs/rcR+uJ+hItR0n0fLg70qOo6W7RLnwZfvgNZyBupWAV29G6Fu2wUjqOzCWlTZfmmrm8sf8szXsLoCrDhQMPcsFO+asBY0KyQp+oabKH2azTMfRpqR9RRTsUnNrmETldpT+CUCMxCmAQF+0WWW8pKpIfxK7PzxdasWkjzZZgCLZPZcXF/4PzF0hF6woxVv9GBfT8KQksOKVs7Xk4OagJuhL0DA==
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=khLL002hRBXd9WKfica/99bJXhH5ZJ+qh+xZdE2rdSs=;
 b=WYFDgjNp55b4yIOBQL+ThnAbiUlrJJmQuTxjuUh9PJuTaWQPK0kCwAlvve3AfMXUpYxGgXFr41MW7vKNU9ZOkS1hz2f28UATBVSJ1UaiAEfS8XqgyOOIV/YQkUok08MfLwalb9VwPXvISKmJIn5Rs3x7v+v+Y05dxIL0U5oDyBg=
Date: Tue, 27 Apr 2021 12:49:46 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/shadow: fix build without PV or HVM
Message-ID: <YIfsSsoAnCJX4V4D@Air-de-Roger>
References: <20210427104003.28075-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210427104003.28075-1-roger.pau@citrix.com>
X-ClientProxiedBy: MRXP264CA0036.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::24) To SA0PR03MB5610.namprd03.prod.outlook.com
 (2603:10b6:806:b2::9)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 85edd391-5081-45fb-2fb9-08d9096a3027
X-MS-TrafficTypeDiagnostic: SN6PR03MB3759:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SN6PR03MB375974B9023AE6E4F64E6AE28F419@SN6PR03MB3759.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4502;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 7HckLIuUSmunhe2xnqMEJoEO3bF2F3W7zUaHWTe1Ko25fOYOxZcyS3v3f8rKXzpFH8ziGHiy0uM5ceHMl25vEFHT/DhfPvwj7zjGJreb5pgzkR+70FqtJ0MG21+mzOSqYqk+DHWzzg32qSjcOB/66NxRt7GeU0UV7D0VY2TIMHj89RNgFyW4lPRuB+UHL7zHoMyNEYwvhxmw9/Sy16C+eubad7qQpPMfdAxGXtexhwlyH8cwlw1uKwgJOFbZcHlLRQ+y7NmTJkbqFNXQvtstnlxtfjzNSC0wD1WycgGwuJj/dGbIuj/Sa+rqCbnQrS6i1DsbaBv28e/2hPCubEDN78uDAsjrqFk9Jt/YFRLc4eu4JUnXBQqet2Y/yD2FzYbV6sqXRO7qBEZNbgzmK7h8sQGVZwIEaJkgXt/Wmbpww9cN3Pvrwf3tWA4+KjObBcBQyuF/eMXRVlEZ2EpXY2OakcGVWNRKGXglRcJ81/WFSLpKAewL2Iw2P5Z1bRtZukpexaKhJASW+x0bsoVSHDG3aAaZwC3cs+1zTvd9qwvmQqQSl8zufwP65UfY+EXKdQt8CanvZfqatgSGczRscEG4bEovCEiqYQ/NiH6EYVZ2GKI=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA0PR03MB5610.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(376002)(366004)(396003)(346002)(39850400004)(956004)(66556008)(83380400001)(478600001)(33716001)(4326008)(8936002)(6916009)(2906002)(86362001)(6666004)(38100700002)(6486002)(8676002)(9686003)(5660300002)(66476007)(16526019)(186003)(85182001)(6496006)(66946007)(316002)(54906003)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 85edd391-5081-45fb-2fb9-08d9096a3027
X-MS-Exchange-CrossTenant-AuthSource: SA0PR03MB5610.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 10:49:53.0167
 (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: gAc9FgNW9xwDz6NnwaVJaAqI8EeIxVRblXgVeHj5i2CyCPHR2J2wXMHu+nqjw4iN37KPSx8mAd1bl0zVCxL/8g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR03MB3759
X-OriginatorOrg: citrix.com

On Tue, Apr 27, 2021 at 12:40:03PM +0200, Roger Pau Monne wrote:
> When trying to build an hypervisor without PV or HVM (ie: using
> automation/configs/x86/no_hvm_pv_config) it fails to link with:
> 
> prelink.o: In function `sh_remove_write_access_from_sl1p':
> arch/x86/mm/shadow/common.c:(.text+0x72b4c): undefined reference to `sh_rm_write_access_from_sl1p__guest_4'
> arch/x86/mm/shadow/common.c:(.text+0x72b4c): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_rm_write_access_from_sl1p__guest_4'
> prelink.o: In function `sh_remove_shadow_via_pointer':
> arch/x86/mm/shadow/common.c:(.text+0x72bfa): undefined reference to `sh_clear_shadow_entry__guest_4'
> arch/x86/mm/shadow/common.c:(.text+0x72bfa): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_clear_shadow_entry__guest_4'
> prelink.o: In function `_sh_resync':
> arch/x86/mm/shadow/common.c:(.text+0x72e4a): undefined reference to `sh_resync_l1__guest_4'
> arch/x86/mm/shadow/common.c:(.text+0x72e4a): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_resync_l1__guest_4'
> prelink.o: In function `shadow_vcpu_init':
> (.text+0x72eeb): undefined reference to `sh_paging_mode__guest_4'
> prelink.o: In function `shadow_vcpu_init':
> (.text+0x72eeb): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_paging_mode__guest_4'
> prelink.o: In function `sh_resync_all':
> (.text+0x73315): undefined reference to `sh_safe_not_to_sync__guest_4'
> prelink.o: In function `sh_resync_all':
> (.text+0x73315): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_safe_not_to_sync__guest_4'
> prelink.o: In function `sh_resync_all':
> (.text+0x7336a): undefined reference to `sh_resync_l1__guest_4'
> prelink.o: In function `sh_resync_all':
> (.text+0x7336a): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_resync_l1__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x736bd): undefined reference to `sh_map_and_validate_gl4e__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x736bd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_map_and_validate_gl4e__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x736dd): undefined reference to `sh_map_and_validate_gl1e__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x736dd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_map_and_validate_gl1e__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x736fd): undefined reference to `sh_map_and_validate_gl2e__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x736fd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_map_and_validate_gl2e__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x7371d): undefined reference to `sh_map_and_validate_gl2he__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x7371d): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `sh_map_and_validate_gl2he__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x7373d): undefined reference to `sh_map_and_validate_gl3e__guest_4'
> prelink.o: In function `sh_validate_guest_entry':
> (.text+0x7373d): additional relocation overflows omitted from the output
> prelink.o: In function `shadow_unhook_mappings':
> (.text+0x7379b): undefined reference to `sh_unhook_64b_mappings__guest_4'
> prelink.o: In function `sh_destroy_shadow':
> (.text+0x74183): undefined reference to `sh_destroy_l1_shadow__guest_4'
> prelink.o: In function `sh_destroy_shadow':
> (.text+0x74199): undefined reference to `sh_destroy_l4_shadow__guest_4'
> prelink.o: In function `sh_destroy_shadow':
> (.text+0x741a1): undefined reference to `sh_destroy_l3_shadow__guest_4'
> prelink.o: In function `sh_destroy_shadow':
> (.text+0x741a9): undefined reference to `sh_destroy_l2_shadow__guest_4'
> prelink.o:(.data.rel.ro.local+0x1018): undefined reference to `sh_remove_l1_shadow__guest_4'
> prelink.o:(.data.rel.ro.local+0x1020): undefined reference to `sh_remove_l1_shadow__guest_4'
> prelink.o:(.data.rel.ro.local+0x1028): undefined reference to `sh_remove_l2_shadow__guest_4'
> prelink.o:(.data.rel.ro.local+0x1030): undefined reference to `sh_remove_l3_shadow__guest_4'
> prelink.o:(.data.rel.ro.local+0x1068): undefined reference to `sh_rm_mappings_from_l1__guest_4'
> prelink.o:(.data.rel.ro.local+0x1070): undefined reference to `sh_rm_mappings_from_l1__guest_4'
> ld: /root/src/xen/xen/.xen-syms.0: hidden symbol `sh_destroy_l2_shadow__guest_4' isn't defined
> ld: final link failed: Bad value
> 
> Fix this by making shadow depend on either PV or HVM being selected in
> Kconfig.
> 
> Fixes: aff8bf94ce6 ('x86/shadow: only 4-level guest code needs building when !HVM')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Urg, I see this has already been fixed. Not sure why my rebase didn't
clear the patch.

Sorry for the noise.


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 11:09:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 11:09:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118320.224370 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbLbC-0000Vc-DO; Tue, 27 Apr 2021 11:09:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118320.224370; Tue, 27 Apr 2021 11:09: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 1lbLbC-0000VV-A3; Tue, 27 Apr 2021 11:09:50 +0000
Received: by outflank-mailman (input) for mailman id 118320;
 Tue, 27 Apr 2021 11:09: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 1lbLbA-0000VQ-CZ
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 11:09: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 1lbLb5-0005fW-Mp; Tue, 27 Apr 2021 11:09:43 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbLb5-0000yM-GA; Tue, 27 Apr 2021 11:09:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=W62HCWVXy6rlu8W4oI1txuJETwCA2yr7wxkT9JOKv3U=; b=bSrE1YV9ybBYSeGcpzwyBtaL9g
	kB/+qsuNWCwNJQU4nGBW3aznYQF7xBhHuH1GuQkQ9CxWYansec4anoyjhNSwM6ytVx3fcO9zrd+WG
	yIYdr7DUbKrTrQVpy6BcoQmk2kiYZ2tKeU7e1YkeUSoU7U15ChbhLs2XbcpPSy99PkLg=;
Subject: Re: [PATCH v2 10/10] arm64: Change type of hsr, cpsr, spsr_el1 to
 uint64_t
To: Michal Orzel <michal.orzel@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-11-michal.orzel@arm.com>
From: Julien Grall <julien@xen.org>
Message-ID: <f414e061-7afa-d781-e6ae-e6293f29cd40@xen.org>
Date: Tue, 27 Apr 2021 12:09:41 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427093546.30703-11-michal.orzel@arm.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Michal,

On 27/04/2021 10:35, Michal Orzel wrote:
> AArch64 registers are 64bit whereas AArch32 registers
> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> we should get rid of helpers READ/WRITE_SYSREG32
> in favour of using READ/WRITE_SYSREG.
> We should also use register_t type when reading sysregs
> which can correspond to uint64_t or uint32_t.
> Even though many AArch64 registers have upper 32bit reserved
> it does not mean that they can't be widen in the future.
> 
> Modify type of hsr, cpsr, spsr_el1 to uint64_t.

As I pointed out in v1, the access to SPSR_EL1 has been quite fragile 
because we relied on the padding afterwards. I think this was ought to 
be explain in the commit message because it explain why the access in 
the assembly code is not modified.

> 
> Add 32bit RES0 members to structures inside hsr union.
> 
> Remove 32bit padding in cpu_user_regs before spsr_fiq
> as it is no longer needed due to upper union being 64bit now.
> 
> Add 64bit padding in cpu_user_regs before spsr_el1
> because offset of spsr_el1 must be a multiple of 8.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> diff --git a/xen/include/asm-arm/hsr.h b/xen/include/asm-arm/hsr.h
> index 29d4531f40..fb4a3b1274 100644
> --- a/xen/include/asm-arm/hsr.h
> +++ b/xen/include/asm-arm/hsr.h
> @@ -16,11 +16,12 @@ enum dabt_size {
>   };
>   
>   union hsr {
> -    uint32_t bits;
> +    register_t bits;
>       struct {
>           unsigned long iss:25;  /* Instruction Specific Syndrome */
>           unsigned long len:1;   /* Instruction length */
>           unsigned long ec:6;    /* Exception Class */
> +        unsigned long _res0:32;

Sorry I wasn't clear in my original comment, what I meant I would rather 
not add this field (and also the _res0) because they are not strictly 
necessary.

> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
> index 713fd65317..c49bce2983 100644
> --- a/xen/include/public/arch-arm.h
> +++ b/xen/include/public/arch-arm.h
> @@ -267,10 +267,10 @@ struct vcpu_guest_core_regs
>   
>       /* Return address and mode */
>       __DECL_REG(pc64,         pc32);             /* ELR_EL2 */
> -    uint32_t cpsr;                              /* SPSR_EL2 */
> +    register_t cpsr;                            /* SPSR_EL2 */

You can't use register_t here because this is a public header (we don't 
export register_t) and the header should be bitness agnostic.

Also, because this is a public header, you ought to explain why breaking 
the ABI is fine.

In this case, this is an ABI between the tools and this is not stable. 
However, we would still need to bump XEN_DOMCTL_INTERFACE_VERSION as I 
think this wasn't done for this development cycle.

Of course, this will also need a suitable mention in the commit message 
(I can help with that).

>   
>       union {
> -        uint32_t spsr_el1;       /* AArch64 */
> +        uint64_t spsr_el1;       /* AArch64 */
>           uint32_t spsr_svc;       /* AArch32 */
>       };
>   
> diff --git a/xen/include/public/vm_event.h b/xen/include/public/vm_event.h
> index 36135ba4f1..ad3d141fe8 100644
> --- a/xen/include/public/vm_event.h
> +++ b/xen/include/public/vm_event.h
> @@ -266,8 +266,12 @@ struct vm_event_regs_arm {
>       uint64_t ttbr1;
>       uint64_t ttbcr;
>       uint64_t pc;
> +#ifdef CONFIG_ARM_32
>       uint32_t cpsr;
>       uint32_t _pad;
> +#else
> +    uint64_t cpsr;
> +#endif

CONFIG_ARM_32 is not defined for public header. They also should be 
bitness agnostic. So cpsr should always be uint64_t.

Also, similar to public/arch-arm.h, this is not a stable ABI but you 
will need to bump VM_EVENT_INTERFACE_VERSION if this hasn't been done 
for this development cycle.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 11:47:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 11:47:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118338.224383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMB7-00041Q-3U; Tue, 27 Apr 2021 11:46:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118338.224383; Tue, 27 Apr 2021 11: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 1lbMB7-00041J-0K; Tue, 27 Apr 2021 11:46:57 +0000
Received: by outflank-mailman (input) for mailman id 118338;
 Tue, 27 Apr 2021 11:46: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 1lbMB4-00041B-PK; Tue, 27 Apr 2021 11:46: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 1lbMB4-0006GO-HH; Tue, 27 Apr 2021 11:46: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 1lbMB4-0002eK-2C; Tue, 27 Apr 2021 11:46:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbMB4-0005NM-1h; Tue, 27 Apr 2021 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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/JoaeLrHsCqs5F8tAvv4nu2AGP450ejQ60QsuC/EQ58=; b=alJMuLPmBjOiQaN98kTwgGiFmU
	sLukV5VOyrhQxGU9hEsBnx5Z+cQzsWKI2spglk5Hl43se6ntYb+LwcBa76VuLPU7FGuLRqKmzeP36
	U0/zNLdl5+hMEg1RqR1OilPVck9EqvHjGjTbMKuQRde6KimmkFDoXL/NCAcgISjwLets=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161472-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161472: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=0cef06d18762374c94eb4d511717a4735d668a24
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 11:46:54 +0000

flight 161472 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161472/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 qemuu                0cef06d18762374c94eb4d511717a4735d668a24
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  250 days
Failing since        152659  2020-08-21 14:07:39 Z  248 days  458 attempts
Testing same since   161472  2021-04-26 23:08:10 Z    0 days    1 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 143040 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 11:50:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 11:50:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118346.224398 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMEY-0004tU-Qk; Tue, 27 Apr 2021 11:50:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118346.224398; Tue, 27 Apr 2021 11: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 1lbMEY-0004tN-NM; Tue, 27 Apr 2021 11:50:30 +0000
Received: by outflank-mailman (input) for mailman id 118346;
 Tue, 27 Apr 2021 11:50:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbMEX-0004tI-M0
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 11:50:29 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d53d7965-f1fb-4c72-a9bc-d065589f5af1;
 Tue, 27 Apr 2021 11:50: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: d53d7965-f1fb-4c72-a9bc-d065589f5af1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619524228;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=hz7IYbfx0HCzaHaC0j8zxMW6UIZADZQLYxucFuc/kkU=;
  b=fA0nqrgO5zy7apzeMpvv+ptCkn4ve4ohzryVx3QbV7eEEVT++CzSkkIN
   VCquqXFpg8SOoq85lyCxR481j2Vwajavm2HBtXsoS8RU4jaH6oH8z9BAi
   IofmEO1xAgoZ6+7Ye7o076AM2Cldpmk4bMti15prloPxXj+jOyZu9nVjS
   A=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: EYRS8S1cGMfK+AlcbiCz59+4wdDwHLch0UVIutt0d4qk2fmL9SJEFofgzQ1VGR8FEICz4IA/ta
 0HAhlopQ3rcNKzgLPHY58NnXOx1xHgKGK7b5LdX0fvtamtNoUeNp4Pf0m5VG3yvkda65aPDiht
 e40Xb6B4odJiIzhL1L+AVRakxWfQ/IW+RlIC+BLBOUIkxTzm96OaG/4bXuTTmLUxVITcT7we82
 +12Ojfmnu3kSSjqT+OQ9Ab8C3mUSA8YdzNROrjW73m6YJasqzaxgVCuhAGyYlGaXwYWAtJ6jcu
 G60=
X-SBRS: 5.1
X-MesageID: 43997859
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:syzhuKrRNLqb92B+ab/DVjkaV5uRKtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQZ3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIRg/I
 9aWexFBNX0ZGIQse/T6gO1Cstl5dGB/ryhi+u29QYXcShBQchbnmREIyycFVB7QxQDIJI/Go
 aV6MYvnUvbRV08aMOnCn4ZG9XSvtGjruOqXTcqJT4CrDOPgzSh9aLgH3Gjsis2fjtTzd4ZgA
 /4uiPj4KHLiZCG4z/ak1Te9pFH3Obmo+EzfPCkrugwBnHShh2zZIJnMofy8AwdhO208l4lnJ
 3tjn4bTqJOwkjcdG20vhfhsjOIuFlB11bYxVCVmnflq8DiLQhKcvZpv55TcRfS9iMbzbNB+Z
 9LxG6Qut52Ch7NjU3Glrz1fixqjUa9rD4el/cShRVkIO4jQYJWxLZ+wGplVLM7WA7q4oEuF+
 djSOvG4uxNTF+cZ3fF+kFy3d2FRB0Ib1m7a3lHnvbQ/yldnXh/wUdd7tcYhG08+JU0TIQBz/
 jYM55viKpFQqYtHONALdZEZfHyJn3GQBrKPm7XC0/gDrs7N3XErIOyx7kp+uewetgtwIEpkJ
 rMFHNU3FRCO37GOImr5tlm4xrNSGKyUXDG0cdF/aV0vbX6Wf7lKiuGRFcyk9axovkWD8HBMs
 zDeq5+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49RhaPr6vwW8jXn92eVMyWCKvmED4iVG+6KG
 AERiLPKMJJ6V3uXnf5hRPWSm78Y0CXx+M1LIHqu8wojKQdPIxFtQYYzX6j4NuQFDFEuqsqOE
 1kIL3mlau/rXKs/XnB6nhoPhY1NDcX3JzQF1dx4SMaOUL9drgO//+Ff3pJ4XeBLhhjC9/NHB
 VHvFRx86KvJ5mWzSQvYujXdV6yvj82njanXp0ckqqM6YPZYZs+FI8hQ7E0Px7MDQZJlQFjr3
 pjZAcISlTELC7njbyogfUvdafiXug5pD3uAMZP7VrDqE2XpKgUNwYmdg/rdfTSvCEDaH5/gE
 Zr/6oWnbya8AzfVVcXsaAfK11DaGOeHbRcKh+KDb8k1YzDcB1sTGuMmDyRgwwyfG2v7EkJmm
 n9N0SvCI/2K15Gumlv167g/FZvH1/tAH5YezR0t5ZwGn/BvWs22eiXZrCr22/UcVcaxPoBWQ
 u1Kgc6M0drx9qt0gSSlyvHHXI6xo82Nui1NsVrT5jDnnesIpaPj6cIArtd+4tkLsnntqsOXf
 iEcwGYaDP+BOVB4X3cml81fC11omIji/XmxVns63W5xmc2Bb7KO0t9LotrV+20/izhXbKFwZ
 95hdU6sa+5NXjwcMePzeXSYyRYIh3erGaqR4gT2NpplLN3sKE2E4jQUDPO2n0Cxhk4IcvunE
 4VQahw4tn6S/lSVt1Xfzgc8ksildyJIkdurxf/BfUme0oxy3DcJNGE7tPz2M8SK1zEoBG1P1
 aR8ydQpaiYGySC0KMXEKI2LyBdblMm5HFr4eOFcMnRBWyRBpJ+1Uv/NmX4drlXDLWBE/EXqB
 1x5tmThe+ZdybiwmnrzExGC7ML93ziWN+4BQKHBPVB/NO7M0mdm6fC2r/CsB7nDT+gL1kCjY
 JLdUYMft1OhzkrgoowyDWzQMXM0zAYukob5ypmmF7r0pWn52meHVguC3ypvqlr
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="43997859"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ioM2tmTAfzIBeCNFz6HL/iAlHOmwrpdJHrYMhSe+35Q3ih1/MvQS8MLTSfEyX1J6c8d0ArAZhyJr797Puu4umHqJMXxUxiQmEXg3BErqs8eumZy2D2WKIzAcVnKylwYQRqgR32L5Otclc4txhziiw/fbYtzvlKPIAgoaBrCAEdi4GkNC7z46PEK3ArBcVHvaQUfaSmTP44CQo9mxkypv+pdKMIKkEut/Azh0R/kQyamc0N8MHE2Zmh7f5+ja+QOJeYcI+xwJcDmxx1rHl4dmhW0QLtHYBljo3JFmeNEyhv2nGDFVjA7ZxfbYFS8Gb0Ajq7vaivljgxlWjAI17GfKdQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=NBhYHFcqwLgMG01x8oXgMRgHYh1klyA5h9cl6AsWXSM=;
 b=KkgBguGphhEz0IQPTNaFAdZNupBq4ep75rXApZ4Tz3qn+4HK7eyv329SaU99R2eCPY5PgUuTL4N9pQh+9nwbBGEXVxJTS4CQIFFrt+a04LU5mXWiQ0ZDNzCXurWMyB0+MPpKYEnlzsCoHw/j17w/QzsHUyo1kzeFUQgLbqYBNbBpICE8V01tD2GWykFnvZVUkm6uCuIEn60CvTjQPH+kl4+a2/nU2g1zbARV2gt1y4HAES58PLqTMynDQDyX9SPhcARxI+9nbH2GSe0cF33fpeKl98qL95Suhd6DkR5iTux+6pRpPDHFpRXz6wyC878h1vGLeB2GbzltX5+URDd8bQ==
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=NBhYHFcqwLgMG01x8oXgMRgHYh1klyA5h9cl6AsWXSM=;
 b=GZ5vHr871AOsCN2pecyKd07SOlBOe6nZAJq2JIf/O7r4JvI8YdltwxNPdDLetaEV4+Q3b0TZUfy8DDwq3fbjZL7+BUpB6Qisvkp6JaVEaEx3ueZXBQgUKyY/HN640tpNU8IL0kZyyLD+6SG8X/vX0oL+ryJUtOShFHVkEF6g7NI=
Date: Tue, 27 Apr 2021 13:50: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/oprofile: remove compat accessors usage from
 backtrace
Message-ID: <YIf6eji3jr3vy1El@Air-de-Roger>
References: <20210423143755.12189-1-roger.pau@citrix.com>
 <e2f1f3a6-ca54-7459-c60e-ff02e6857b17@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <e2f1f3a6-ca54-7459-c60e-ff02e6857b17@suse.com>
X-ClientProxiedBy: AM6P192CA0019.EURP192.PROD.OUTLOOK.COM
 (2603:10a6:209:83::32) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3206323c-c23e-42e1-ed0c-08d90972a4a9
X-MS-TrafficTypeDiagnostic: DM5PR03MB3147:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB3147406B7A1F0E6683B6C0FC8F419@DM5PR03MB3147.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: kClEqS2E+ggbnisyUn1/lSxtTo3ck2FlAmnyDVsnfOvTJtdhROuHAi+MBsIbekmM9J/nM934sU+QNHB20bLyebVzOjy76VfptSWN6PgcxQ6u5l4KO2nUKz/3OACGkv7YPapFxZuvzTKqQsXlhTARdMprnT9lCxKgI0CsEZmyvDE6/BRnE57Nmr6p4DpjFkGkCg8c7u80x/g8NM/RmV1MEsh2CYv/45aafC8cXdOswCqoDnOZmuTs1Dde5M1Ykmb9GcHyuSfN0dX0qPjVTY5FocJerCvspAlkzy/cBlAorVgYRbiKeRNVkyg0bZBvrO5z4MVT69/Ant7sCjXwjgVbF0m59jycWzYfmxHSL3DlNOXdJyj9N2OsjRHB0YmINxUqKA5cALkF3YBHaxlW893DCo/XIJ6qGr3rBmFcWbTmtY7Gyq+PqGHjCuEhZYbz0Jp9xmCqvXXNtT8pldW9D7jMlaYLUj7H+Pt/IJa1wDOwYcDWU1OgeoIICkv1h7mGRB7p/f007IS9kOlfeePIahNFiwgJUGroAYlukD53R+G17p4uZwLwbQxpexgUDzC84KGJhn/DQitUU2sw9f6Am4ck8NKKL2/uJLsQDmXG6osJNCw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(396003)(346002)(376002)(39850400004)(366004)(66476007)(66946007)(66556008)(54906003)(86362001)(38100700002)(53546011)(6496006)(85182001)(8676002)(26005)(5660300002)(4326008)(2906002)(83380400001)(16526019)(6916009)(33716001)(316002)(8936002)(956004)(186003)(6666004)(9686003)(478600001)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?xYoRX+6BMbCf/vjBGrdG+ndlBwBB3pjNDNLPD+2?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3206323c-c23e-42e1-ed0c-08d90972a4a9
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 11:50:24.5586
 (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: SjFIrqgNXJ+AM9trMhqDilT8W4q1P884nZj7VnUcExWmKp/tUCIDmCgXjeG7+3DSt2d3TS5owgZojeB9/4kU6Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB3147
X-OriginatorOrg: citrix.com

On Mon, Apr 26, 2021 at 09:49:13AM +0200, Jan Beulich wrote:
> On 23.04.2021 16:37, Roger Pau Monne wrote:
> > Remove the unneeded usage of the compat layer to copy frame pointers
> > from guest address space. Instead just use raw_copy_from_guest.
> > 
> > While there drop the checks for the accessibility of one struct
> > frame_head beyond the current one: it's not clear why it's needed and
> > all the hypnoses point to dropping such check being harmless. The
> 
> DYM "hypotheses"?

Yes, sorry, selected the wrong spell checker suggestion I guess.

> 
> > worse that could happen is that a failure happens later if data past
> > frame_head is attempted to be fetched, albeit I'm not able to spot any
> > such access.
> > 
> > Also drop the explicit truncation of the head pointer in the 32bit
> > case as all callers already pass a zero extended value. The first
> > value being rsp from the guest registers,
> 
> While I know I'm guilty of splitting hair saying so, I'd like to point
> out that I'm unaware of guarantees that the upper halves of GPRs are
> zero after a switch from compat to 64-bit mode. With this I'm also
> unconvinced there are guarantees that the %rsp stored into a stack
> frame is actually guaranteed to be zero-extended. Nevertheless I'm not
> meaning this remark to keep the change from going in as is - for all
> practical purposes what you say is presumably true.

Also, given the context of this code (oprofile backtrace generation),
I'm unsure what issues could arise from not using a zero extended
value for a guest in 32bit mode apart from a failure to obtain the
backtrace itself.

> What I would consider nice though is if the two remaining if() could
> be corrected for coding style: Adjacent code is already inconsistent,
> so taking the opportunity to move it a little in the right direction
> would seem desirable to me. (I would suggest doing so myself while
> committing, but because I don't fully agree with dropping the 2-frame
> checks described further up without properly understanding why they're
> there, I'd like to not put my name on this change in any way, not even
> just as committer. But I guess Andrew or Wei or whoever ends up
> committing this could do so, as long as they agree of course.)

OK, I can add the 2-frame checks back in, I certainly don't have that
strong opinion and the resulting code will be better just by dropping
the usage of the compat layer even if we decide to keep those
checks.

Let me prepare a new version.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:05:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:05:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118360.224418 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMT5-00063b-KI; Tue, 27 Apr 2021 12:05:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118360.224418; Tue, 27 Apr 2021 12: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 1lbMT5-00063R-CL; Tue, 27 Apr 2021 12:05:31 +0000
Received: by outflank-mailman (input) for mailman id 118360;
 Tue, 27 Apr 2021 12:05:30 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HmyD=JY=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbMT4-00062t-4R
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:05:30 +0000
Received: from mx.upb.ro (unknown [141.85.13.220])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6c09d5c7-2c62-4a8e-8c59-2555e05fe806;
 Tue, 27 Apr 2021 12:05:28 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 32687B5600B3;
 Tue, 27 Apr 2021 15:05:27 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id sT9FuaziNEZ1; Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 3707BB5600B6;
 Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 2S4aCd2cXliT; Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id BAB95B560069;
 Tue, 27 Apr 2021 15:05:24 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6c09d5c7-2c62-4a8e-8c59-2555e05fe806
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Tim Deegan <tim@xen.org>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 1/5] tools/debugger: Fix PAGE_SIZE redefinition error
Date: Tue, 27 Apr 2021 15:05:16 +0300
Message-Id: <0cd234096c9bfa8d29eac9906553af79d378733e.1619524463.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619524463.git.costin.lupu@cs.pub.ro>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PAGE_SIZE is already defined in the system (e.g. in
/usr/include/limits.h header) then gcc will trigger a redefinition error
because of -Werror. This commit also protects PAGE_SHIFT definitions for
keeping consistency.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/debugger/kdd/kdd-xen.c | 4 ++++
 tools/debugger/kdd/kdd.c     | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/tools/debugger/kdd/kdd-xen.c b/tools/debugger/kdd/kdd-xen.c
index f3f9529f9f..04d2361ba7 100644
--- a/tools/debugger/kdd/kdd-xen.c
+++ b/tools/debugger/kdd/kdd-xen.c
@@ -48,8 +48,12 @@
=20
 #define MAPSIZE 4093 /* Prime */
=20
+#ifndef PAGE_SHIFT
 #define PAGE_SHIFT 12
+#endif
+#ifndef PAGE_SIZE
 #define PAGE_SIZE (1U << PAGE_SHIFT)
+#endif
=20
 struct kdd_guest {
     struct xentoollog_logger xc_log; /* Must be first for xc log callbac=
ks */
diff --git a/tools/debugger/kdd/kdd.c b/tools/debugger/kdd/kdd.c
index 17513c2650..acd5832714 100644
--- a/tools/debugger/kdd/kdd.c
+++ b/tools/debugger/kdd/kdd.c
@@ -288,8 +288,12 @@ static void kdd_log_pkt(kdd_state *s, const char *na=
me, kdd_pkt *p)
  *  Memory access: virtual addresses and syntactic sugar.
  */
=20
+#ifndef PAGE_SHIFT
 #define PAGE_SHIFT (12)
+#endif
+#ifndef PAGE_SIZE
 #define PAGE_SIZE (1ULL << PAGE_SHIFT)=20
+#endif
=20
 static uint32_t kdd_read_physical(kdd_state *s, uint64_t addr,=20
                                   uint32_t len, void *buf)
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:05:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:05:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118359.224410 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMT5-000639-7W; Tue, 27 Apr 2021 12:05:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118359.224410; Tue, 27 Apr 2021 12: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 1lbMT5-000632-4W; Tue, 27 Apr 2021 12:05:31 +0000
Received: by outflank-mailman (input) for mailman id 118359;
 Tue, 27 Apr 2021 12:05:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HmyD=JY=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbMT3-00062s-Se
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:05:29 +0000
Received: from mx.upb.ro (unknown [141.85.13.210])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c473d602-2685-4745-811b-c3584038b9c6;
 Tue, 27 Apr 2021 12:05:28 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id E0564B560057;
 Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id TZiBNHiUn-kX; Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id BAF2BB5600B3;
 Tue, 27 Apr 2021 15:05:24 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id Q0MQEfLE2F_s; Tue, 27 Apr 2021 15:05:24 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 0422CB560057;
 Tue, 27 Apr 2021 15:05:23 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c473d602-2685-4745-811b-c3584038b9c6
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Tim Deegan <tim@xen.org>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Christian Lindig <christian.lindig@citrix.com>,
	David Scott <dave@recoil.org>
Subject: [PATCH 0/5] Fix redefinition errors for toolstack libs
Date: Tue, 27 Apr 2021 15:05:15 +0300
Message-Id: <cover.1619524463.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

For replication I used gcc 10.3 on an Alpine system. In order to replicat=
e the
redefinition error for PAGE_SIZE one should install the 'fortify-headers'
package which will change the chain of included headers by indirectly inc=
luding
/usr/include/limits.h where PAGE_SIZE and PATH_MAX are defined.

Costin Lupu (5):
  tools/debugger: Fix PAGE_SIZE redefinition error
  tools/libfsimage: Fix PATH_MAX redefinition error
  tools/libs/foreignmemory: Fix PAGE_SIZE redefinition error
  tools/libs/gnttab: Fix PAGE_SIZE redefinition error
  tools/ocaml: Fix redefinition errors

 tools/debugger/kdd/kdd-xen.c                   | 4 ++++
 tools/debugger/kdd/kdd.c                       | 4 ++++
 tools/libfsimage/ext2fs/fsys_ext2fs.c          | 2 ++
 tools/libfsimage/reiserfs/fsys_reiserfs.c      | 2 ++
 tools/libs/foreignmemory/private.h             | 6 ++++--
 tools/libs/gnttab/linux.c                      | 6 ++++++
 tools/ocaml/libs/xc/xenctrl_stubs.c            | 8 ++++++++
 tools/ocaml/libs/xentoollog/xentoollog_stubs.c | 4 ++++
 tools/ocaml/libs/xl/xenlight_stubs.c           | 4 ++++
 9 files changed, 38 insertions(+), 2 deletions(-)

--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:05:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:05:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118361.224434 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMT9-00066Y-Ow; Tue, 27 Apr 2021 12:05:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118361.224434; Tue, 27 Apr 2021 12:05: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 1lbMT9-00066Q-Lm; Tue, 27 Apr 2021 12:05:35 +0000
Received: by outflank-mailman (input) for mailman id 118361;
 Tue, 27 Apr 2021 12:05:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HmyD=JY=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbMT8-00062s-RD
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:05:34 +0000
Received: from mx.upb.ro (unknown [141.85.13.220])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 995564d1-63ae-4e44-bc03-4d4a0bde0b66;
 Tue, 27 Apr 2021 12:05:30 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 478AFB5600B9;
 Tue, 27 Apr 2021 15:05:28 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id XMZxpq2MkaK4; Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 71715B5600BA;
 Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 6IiaJN9JLXvb; Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 1CB92B560057;
 Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 995564d1-63ae-4e44-bc03-4d4a0bde0b66
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 4/5] tools/libs/gnttab: Fix PAGE_SIZE redefinition error
Date: Tue, 27 Apr 2021 15:05:19 +0300
Message-Id: <bd1e79d7dade6dc6a8d89b1d0e96d47be6b2d315.1619524463.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619524463.git.costin.lupu@cs.pub.ro>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PAGE_SIZE is already defined in the system (e.g. in
/usr/include/limits.h header) then gcc will trigger a redefinition error
because of -Werror. This commit also protects PAGE_SHIFT and PAGE_MASK
definitions for keeping consistency.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/libs/gnttab/linux.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tools/libs/gnttab/linux.c b/tools/libs/gnttab/linux.c
index 74331a4c7b..e12f2697a5 100644
--- a/tools/libs/gnttab/linux.c
+++ b/tools/libs/gnttab/linux.c
@@ -36,9 +36,15 @@
=20
 #include "private.h"
=20
+#ifndef PAGE_SHIFT
 #define PAGE_SHIFT           12
+#endif
+#ifndef PAGE_SIZE
 #define PAGE_SIZE            (1UL << PAGE_SHIFT)
+#endif
+#ifndef PAGE_MASK
 #define PAGE_MASK            (~(PAGE_SIZE-1))
+#endif
=20
 #define DEVXEN "/dev/xen/"
=20
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:05:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:05:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118362.224440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMTA-00067T-4Z; Tue, 27 Apr 2021 12:05:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118362.224440; Tue, 27 Apr 2021 12: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 1lbMT9-00067B-Un; Tue, 27 Apr 2021 12:05:35 +0000
Received: by outflank-mailman (input) for mailman id 118362;
 Tue, 27 Apr 2021 12:05:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HmyD=JY=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbMT8-00062t-UJ
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:05:34 +0000
Received: from mx.upb.ro (unknown [141.85.13.210])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7b7d1fb2-0de2-4f02-986c-29249f071718;
 Tue, 27 Apr 2021 12:05:28 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id ED01AB560069;
 Tue, 27 Apr 2021 15:05:27 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id HxNMnXbwKZLk; Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 1D4ECB5600B9;
 Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id rk5V-VS7Et-W; Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id A39C2B560069;
 Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7b7d1fb2-0de2-4f02-986c-29249f071718
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 3/5] tools/libs/foreignmemory: Fix PAGE_SIZE redefinition error
Date: Tue, 27 Apr 2021 15:05:18 +0300
Message-Id: <b9a300edca034d44375d8b16d352110186657e75.1619524463.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619524463.git.costin.lupu@cs.pub.ro>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PAGE_SIZE is already defined in the system (e.g. in
/usr/include/limits.h header) then gcc will trigger a redefinition error
because of -Werror. This commit also protects PAGE_SHIFT and PAGE_MASK
definitions for keeping consistency.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/libs/foreignmemory/private.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tools/libs/foreignmemory/private.h b/tools/libs/foreignmemor=
y/private.h
index 1ee3626dd2..f3c1ba2867 100644
--- a/tools/libs/foreignmemory/private.h
+++ b/tools/libs/foreignmemory/private.h
@@ -10,11 +10,13 @@
 #include <xen/xen.h>
 #include <xen/sys/privcmd.h>
=20
-#ifndef PAGE_SHIFT /* Mini-os, Yukk */
+#ifndef PAGE_SHIFT
 #define PAGE_SHIFT           12
 #endif
-#ifndef __MINIOS__ /* Yukk */
+#ifndef PAGE_SIZE
 #define PAGE_SIZE            (1UL << PAGE_SHIFT)
+#endif
+#ifndef PAGE_MASK
 #define PAGE_MASK            (~(PAGE_SIZE-1))
 #endif
=20
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:05:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:05:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118363.224458 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMTF-0006Co-EC; Tue, 27 Apr 2021 12:05:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118363.224458; Tue, 27 Apr 2021 12:05: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 1lbMTF-0006Ch-9H; Tue, 27 Apr 2021 12:05:41 +0000
Received: by outflank-mailman (input) for mailman id 118363;
 Tue, 27 Apr 2021 12:05:40 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HmyD=JY=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbMTD-00062t-UE
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:05:39 +0000
Received: from mx.upb.ro (unknown [141.85.13.210])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 034b139a-45ed-4413-939d-90671de231b2;
 Tue, 27 Apr 2021 12:05:30 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 019FFB5600BB;
 Tue, 27 Apr 2021 15:05:30 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id sFRqpkv4cXg7; Tue, 27 Apr 2021 15:05:27 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 41889B5600B6;
 Tue, 27 Apr 2021 15:05:27 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 2eqPK_g_p6EI; Tue, 27 Apr 2021 15:05:27 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 71557B560069;
 Tue, 27 Apr 2021 15:05:26 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 034b139a-45ed-4413-939d-90671de231b2
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Christian Lindig <christian.lindig@citrix.com>,
	David Scott <dave@recoil.org>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 5/5] tools/ocaml: Fix redefinition errors
Date: Tue, 27 Apr 2021 15:05:20 +0300
Message-Id: <91dc6057e7c58c2acf8d3f6f6201d9f70a84fb3d.1619524463.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619524463.git.costin.lupu@cs.pub.ro>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PAGE_SIZE is already defined in the system (e.g. in
/usr/include/limits.h header) then gcc will trigger a redefinition error
because of -Werror. This commit also protects PAGE_SHIFT and PAGE_MASK
definitions for keeping consistency.

Same issue applies for redefinitions of Val_none and Some_val macros whic=
h
can be already define in the OCaml system headers (e.g.
/usr/lib/ocaml/caml/mlvalues.h).

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/ocaml/libs/xc/xenctrl_stubs.c            | 8 ++++++++
 tools/ocaml/libs/xentoollog/xentoollog_stubs.c | 4 ++++
 tools/ocaml/libs/xl/xenlight_stubs.c           | 4 ++++
 3 files changed, 16 insertions(+)

diff --git a/tools/ocaml/libs/xc/xenctrl_stubs.c b/tools/ocaml/libs/xc/xe=
nctrl_stubs.c
index d05d7bb30e..1c82e76b19 100644
--- a/tools/ocaml/libs/xc/xenctrl_stubs.c
+++ b/tools/ocaml/libs/xc/xenctrl_stubs.c
@@ -36,14 +36,22 @@
=20
 #include "mmap_stubs.h"
=20
+#ifndef PAGE_SHIFT
 #define PAGE_SHIFT		12
+#endif
+#ifndef PAGE_SIZE
 #define PAGE_SIZE               (1UL << PAGE_SHIFT)
+#endif
+#ifndef PAGE_MASK
 #define PAGE_MASK               (~(PAGE_SIZE-1))
+#endif
=20
 #define _H(__h) ((xc_interface *)(__h))
 #define _D(__d) ((uint32_t)Int_val(__d))
=20
+#ifndef Val_none
 #define Val_none (Val_int(0))
+#endif
=20
 #define string_of_option_array(array, index) \
 	((Field(array, index) =3D=3D Val_none) ? NULL : String_val(Field(Field(=
array, index), 0)))
diff --git a/tools/ocaml/libs/xentoollog/xentoollog_stubs.c b/tools/ocaml=
/libs/xentoollog/xentoollog_stubs.c
index bf64b211c2..e4306a0c2f 100644
--- a/tools/ocaml/libs/xentoollog/xentoollog_stubs.c
+++ b/tools/ocaml/libs/xentoollog/xentoollog_stubs.c
@@ -53,8 +53,12 @@ static char * dup_String_val(value s)
 #include "_xtl_levels.inc"
=20
 /* Option type support as per http://www.linux-nantes.org/~fmonnier/ocam=
l/ocaml-wrapping-c.php */
+#ifndef Val_none
 #define Val_none Val_int(0)
+#endif
+#ifndef Some_val
 #define Some_val(v) Field(v,0)
+#endif
=20
 static value Val_some(value v)
 {
diff --git a/tools/ocaml/libs/xl/xenlight_stubs.c b/tools/ocaml/libs/xl/x=
enlight_stubs.c
index 352a00134d..45b8af61c7 100644
--- a/tools/ocaml/libs/xl/xenlight_stubs.c
+++ b/tools/ocaml/libs/xl/xenlight_stubs.c
@@ -227,8 +227,12 @@ static value Val_string_list(libxl_string_list *c_va=
l)
 }
=20
 /* Option type support as per http://www.linux-nantes.org/~fmonnier/ocam=
l/ocaml-wrapping-c.php */
+#ifndef Val_none
 #define Val_none Val_int(0)
+#endif
+#ifndef Some_val
 #define Some_val(v) Field(v,0)
+#endif
=20
 static value Val_some(value v)
 {
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:05:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:05:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118364.224470 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMTK-0006Ic-LZ; Tue, 27 Apr 2021 12:05:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118364.224470; Tue, 27 Apr 2021 12: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 1lbMTK-0006IT-Hr; Tue, 27 Apr 2021 12:05:46 +0000
Received: by outflank-mailman (input) for mailman id 118364;
 Tue, 27 Apr 2021 12:05:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HmyD=JY=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbMTI-00062t-UP
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:05:44 +0000
Received: from mx.upb.ro (unknown [141.85.13.200])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7eb09498-64b8-432c-b5ef-d660233f1178;
 Tue, 27 Apr 2021 12:05:34 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 99E19B560069;
 Tue, 27 Apr 2021 15:05:32 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 0OFQ6eJ013ed; Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id A40DCB5600B8;
 Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id WxSkCHgP_ggo; Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 36F35B560057;
 Tue, 27 Apr 2021 15:05:25 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7eb09498-64b8-432c-b5ef-d660233f1178
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 2/5] tools/libfsimage: Fix PATH_MAX redefinition error
Date: Tue, 27 Apr 2021 15:05:17 +0300
Message-Id: <e44209c8981a68604a34f3066d53989f84ce8f49.1619524463.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619524463.git.costin.lupu@cs.pub.ro>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PATH_MAX is already defined in the system (e.g. in /usr/include/limits=
.h
header) then gcc will trigger a redefinition error because of -Werror.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/libfsimage/ext2fs/fsys_ext2fs.c     | 2 ++
 tools/libfsimage/reiserfs/fsys_reiserfs.c | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/tools/libfsimage/ext2fs/fsys_ext2fs.c b/tools/libfsimage/ext=
2fs/fsys_ext2fs.c
index a4ed10419c..5ed8fce90e 100644
--- a/tools/libfsimage/ext2fs/fsys_ext2fs.c
+++ b/tools/libfsimage/ext2fs/fsys_ext2fs.c
@@ -278,7 +278,9 @@ struct ext4_extent_header {
=20
 #define EXT2_SUPER_MAGIC      0xEF53	/* include/linux/ext2_fs.h */
 #define EXT2_ROOT_INO              2	/* include/linux/ext2_fs.h */
+#ifndef PATH_MAX
 #define PATH_MAX                1024	/* include/linux/limits.h */
+#endif
 #define MAX_LINK_COUNT             5	/* number of symbolic links to foll=
ow */
=20
 /* made up, these are pointers into FSYS_BUF */
diff --git a/tools/libfsimage/reiserfs/fsys_reiserfs.c b/tools/libfsimage=
/reiserfs/fsys_reiserfs.c
index 916eb15292..10ca657476 100644
--- a/tools/libfsimage/reiserfs/fsys_reiserfs.c
+++ b/tools/libfsimage/reiserfs/fsys_reiserfs.c
@@ -284,7 +284,9 @@ struct reiserfs_de_head
 #define S_ISDIR(mode) (((mode) & 0170000) =3D=3D 0040000)
 #define S_ISLNK(mode) (((mode) & 0170000) =3D=3D 0120000)
=20
+#ifndef PATH_MAX
 #define PATH_MAX       1024	/* include/linux/limits.h */
+#endif
 #define MAX_LINK_COUNT    5	/* number of symbolic links to follow */
=20
 /* The size of the node cache */
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:30:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:30:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118397.224488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbMrP-0000nJ-R1; Tue, 27 Apr 2021 12:30:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118397.224488; Tue, 27 Apr 2021 12: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 1lbMrP-0000nC-NT; Tue, 27 Apr 2021 12:30:39 +0000
Received: by outflank-mailman (input) for mailman id 118397;
 Tue, 27 Apr 2021 12:30:39 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbMrP-0000n7-5J
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:30:39 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 918c2e85-20d9-4376-a9a8-13b224a2c90c;
 Tue, 27 Apr 2021 12:30:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9BB3DB19E;
 Tue, 27 Apr 2021 12:30: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: 918c2e85-20d9-4376-a9a8-13b224a2c90c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619526636; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=+wHkM2KxNMSNO+NMsfMUTi+YRP+pC/vCyyGdQmOYFvM=;
	b=I5l1GYF5c1RqL++oUVJOBUpx2dXhb1J1so8oX/WlL9z2y/jpNh4giP+EgtrSxv78C2bZ+A
	uWUynsqJ+r6TO4yo2KPHVZN8LTyay1jL6fl8sVYptrMxQQREmC3gE9vM8WiiG98qPnFIPe
	DMjYsWfCnH3RT6aZK1rmaTHmDLljEPI=
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
 <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
 <YH7/SvkrB2yGgRij@Air-de-Roger>
 <5170aa51-8e34-3a45-5bf6-c0a187b1c427@suse.com>
 <YIfTyT4rvD9yEqiM@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5018479d-b566-a32b-9a01-5ccf01fe0880@suse.com>
Date: Tue, 27 Apr 2021 14:30:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIfTyT4rvD9yEqiM@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 11:05, Roger Pau Monné wrote:
> On Wed, Apr 21, 2021 at 04:09:03PM +0200, Jan Beulich wrote:
>> On 20.04.2021 18:20, Roger Pau Monné wrote:
>>> On Tue, Apr 20, 2021 at 05:47:49PM +0200, Jan Beulich wrote:
>>>> On 20.04.2021 17:29, Roger Pau Monné wrote:
>>>>> On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
>>>>>> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
>>>>>>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
>>>>>>  	@mv -f $@.new $@
>>>>>>  
>>>>>> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
>>>>>> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
>>>>>> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
>>>>>> +	$(call move-if-changed,$@.new,$@)
>>>>>
>>>>> Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?
>>>>
>>>> Yes and no: Yes as far as the actual file location is concerned.
>>>> No when considering where it gets generated: I generally consider
>>>> it risky to generate files outside of the directory where make
>>>> currently runs. There may be good reasons for certain exceptions,
>>>> but personally I don't see this case as good enough a reason.
>>>>
>>>> Somewhat related - if doing as you suggest, which Makefile's
>>>> clean: rule should clean up that file in your opinion?
>>>
>>> The clean rule should be in the makefile where it's generated IMO,
>>> same as asm-offsets.h clean rule currently in xen/Makefile.
>>>
>>>> Nevertheless, if there's general agreement that keeping the file
>>>> there is better, I'd make the change and simply ignore my unhappy
>>>> feelings about it.
>>>
>>> I don't have a strong opinion, it just feels weird to have this IMO
>>> stray asm-offsets.s outside of it's arch directory, taking into
>>> account that we have asm-offsets.h generated from xen/Makefile into an
>>> arch specific directory already as a precedent in that makefile.
>>
>> Well, asm-offsets.h generation doesn't involve the compiler, hence
>> no .*.d files get generated and want including later. For
>> asm-offsets.s to have dependencies properly honored, if we
>> generated it in xen/arch/<arch>, .asm-offsets.d would also end up
>> there, and hence including of it would need separately taking care
>> of.
> 
> I'm not sure I understand what do you mean with inclusion need taking
> care of separately. Isn't it expected for .d file to reside in the
> same directory as the output,

Yes, ...

> and hence picked up automatically?

... and hence they _wouldn't_ be picked up automatically while
building in xen/ if the .s file got created in xen/arch/<arch>/.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:52:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:52:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118415.224512 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNC6-0002j1-Kg; Tue, 27 Apr 2021 12:52:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118415.224512; Tue, 27 Apr 2021 12: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 1lbNC6-0002iu-HI; Tue, 27 Apr 2021 12:52:02 +0000
Received: by outflank-mailman (input) for mailman id 118415;
 Tue, 27 Apr 2021 12:52:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNC5-0002ip-JH
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:52:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 462ed3de-a0a4-4632-9a81-72e20029f8b5;
 Tue, 27 Apr 2021 12:52:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D0F24B190;
 Tue, 27 Apr 2021 12:51: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: 462ed3de-a0a4-4632-9a81-72e20029f8b5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619527919; 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=Gbc0X2QS/6HUJBiSa/FTfSmvRkFaJfU/nMdzne667GI=;
	b=o/uqEfGJUDRAnec3Bvbq4H81ePpSu18IluizQyp6+6QFl5i4KneyFuXxytF54R95ruxesL
	EpjakhDIF8p3FFRVnHuTDd02R8Rsr1IURyiCukcxqD5HBGmsfOwYzRwyQBnKdFvg7y9xDB
	D+y4bE4zoir7G6guqM7LYBmiyvp61ZI=
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 0/7] x86: memcpy() / memset() (non-)ERMS flavors plus fallout
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Message-ID: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Date: Tue, 27 Apr 2021 14:51:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

While the performance varies quite a bit on older (pre-ERMS) and
newer (ERMS) hardware, so far we've been going with just a single
flavor of these two functions, and oddly enough with ones not
consistent with one another. Using plain memcpy() / memset() on
MMIO (video frame buffer) is generally okay, but the ERMS variant
of memcpy() turned out to regress (boot) performance in a way
easily visible to the human eye. Hence as a prerequisite step
this series switches the frame buffer (and VGA) mapping to be
write-combining independent of firmware arrangements (of MTRRs
in particular).

1: x86: correct comment about alternatives ordering
2: x86: introduce ioremap_wc()
3: x86: re-work memset()
4: x86: re-work memcpy()
5: video/vesa: unmap frame buffer when relinquishing console
6: video/vesa: drop "vesa-mtrr" command line option
7: video/vesa: adjust (not just) command line option handling

Side note: While strictly speaking the xen/drivers/video/ changes
fall under REST maintainership, with that code getting built for
x86 only I'm restricting Cc-s to x86 maintainers.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:53:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:53:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118424.224524 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNDE-0002rf-3P; Tue, 27 Apr 2021 12:53:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118424.224524; Tue, 27 Apr 2021 12:53:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNDE-0002rY-0T; Tue, 27 Apr 2021 12:53:12 +0000
Received: by outflank-mailman (input) for mailman id 118424;
 Tue, 27 Apr 2021 12:53:10 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNDC-0002rS-6q
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:53:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2f82e92e-5cd4-4e22-a8aa-3c780d14dad7;
 Tue, 27 Apr 2021 12:53:09 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BFE99B19D;
 Tue, 27 Apr 2021 12:53: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: 2f82e92e-5cd4-4e22-a8aa-3c780d14dad7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619527988; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5HO69LOYF/q+tMqUDzvDRQvMkLc5+o3wKO8eXoOtaQw=;
	b=ZcDjdrS+nrZcOBJjf3H1DMDCmoQXr+fLdQGL/aJRjASAKoL2G1J9w6sd678pAZe6s3LfLZ
	PkAdcOlKWqtOmN/zGwbo1Pd8eD8c2iHT+HYUBm+RYzPM+jA9c0gFM0Ck/PzpHNvcm2ZzQh
	QL2GNmZgX2Tvr45++JbfNeSjPkPkzYo=
Subject: [PATCH 1/7] x86: correct comment about alternatives ordering
From: Jan Beulich <jbeulich@suse.com>
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>
References: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Message-ID: <e6f362b3-2339-c5cb-362b-743271dbe826@suse.com>
Date: Tue, 27 Apr 2021 14:53:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Unlike Linux, Xen has never (so far) used alternatives patching for
memcpy() or memset(), even less such utilizing multiple alternatives.
Correct the Linux-inherited comment to match reality.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/alternative.c
+++ b/xen/arch/x86/alternative.c
@@ -194,8 +194,7 @@ static void init_or_livepatch _apply_alt
     /*
      * The scan order should be from start to end. A later scanned
      * alternative code can overwrite a previous scanned alternative code.
-     * Some kernel functions (e.g. memcpy, memset, etc) use this order to
-     * patch code.
+     * Some code (e.g. ALTERNATIVE_2()) relies on this order of patching.
      *
      * So be careful if you want to change the scan order to any other
      * order.



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:54:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:54:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118428.224536 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNE6-0002z9-DO; Tue, 27 Apr 2021 12:54:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118428.224536; Tue, 27 Apr 2021 12: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 1lbNE6-0002z2-AF; Tue, 27 Apr 2021 12:54:06 +0000
Received: by outflank-mailman (input) for mailman id 118428;
 Tue, 27 Apr 2021 12:54:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNE5-0002yx-TK
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:54:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c994d678-aca9-4722-aefb-bf810ac7d32f;
 Tue, 27 Apr 2021 12:54:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id DDFC7B19F;
 Tue, 27 Apr 2021 12:54: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: c994d678-aca9-4722-aefb-bf810ac7d32f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619528044; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=eSwx+Ch4DJEhXgtanSLj4JnHwm25Fc0vQPq7pvTWlEE=;
	b=oDvVJg5gpy9mBJcyTLMIyNUuvSiefpdEUvTwTQReb7RrcaZRVXVG4l4pmQSvG4EGmo6B/d
	SHgBWTT37Rf5NewaQJS0XZHJWSXKHLqAPGQaxG3e1IVv3HjMLorIWWuq6mhlRzPmxwvs2j
	Q7OrqCZ7uB604mQ1jFL2Bkh0T1Y8Sdg=
Subject: [PATCH 2/7] x86: introduce ioremap_wc()
From: Jan Beulich <jbeulich@suse.com>
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>
References: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Message-ID: <0e1d3e9e-ed29-d7e8-e4fc-e48a0454faa4@suse.com>
Date: Tue, 27 Apr 2021 14:54:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

In order for a to-be-introduced ERMS form of memcpy() to not regress
boot performance on certain systems when video output is active, we
first need to arrange for avoiding further dependency on firmware
setting up MTRRs in a way we can actually further modify. On many
systems, due to the continuously growing amounts of installed memory,
MTRRs get configured with at least one huge WB range, and with MMIO
ranges below 4Gb then forced to UC via overlapping MTRRs. mtrr_add(), as
it is today, can't deal with such a setup. Hence on such systems we
presently leave the frame buffer mapped UC, leading to significantly
reduced performance when using REP STOSB / REP MOVSB.

On post-PentiumII hardware (i.e. any that's capable of running 64-bit
code), an effective memory type of WC can be achieved without MTRRs, by
simply referencing the respective PAT entry from the PTEs. While this
will leave the switch to ERMS forms of memset() and memcpy() with
largely unchanged performance, the change here on its own improves
performance on affected systems quite significantly: Measuring just the
individual affected memcpy() invocations yielded a speedup by a factor
of over 250 on my initial (Skylake) test system. memset() isn't getting
improved by as much there, but still by a factor of about 20.

While adding {__,}PAGE_HYPERVISOR_WC, also add {__,}PAGE_HYPERVISOR_WT
to, at the very least, make clear what PTE flags this memory type uses.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
TBD: Both callers are __init, so in principle ioremap_wc() could be so,
     too, at least for the time being.
TBD: If the VGA range is WC in the fixed range MTRRs, reusing the low
     1st Mb mapping (like ioremap() does) would be an option.

--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5883,6 +5883,20 @@ void __iomem *ioremap(paddr_t pa, size_t
     return (void __force __iomem *)va;
 }
 
+void __iomem *ioremap_wc(paddr_t pa, size_t len)
+{
+    mfn_t mfn = _mfn(PFN_DOWN(pa));
+    unsigned int offs = pa & (PAGE_SIZE - 1);
+    unsigned int nr = PFN_UP(offs + len);
+    void *va;
+
+    WARN_ON(page_is_ram_type(mfn_x(mfn), RAM_TYPE_CONVENTIONAL));
+
+    va = __vmap(&mfn, nr, 1, 1, PAGE_HYPERVISOR_WC, VMAP_DEFAULT);
+
+    return (void __force __iomem *)(va + offs);
+}
+
 int create_perdomain_mapping(struct domain *d, unsigned long va,
                              unsigned int nr, l1_pgentry_t **pl1tab,
                              struct page_info **ppg)
--- a/xen/drivers/video/vesa.c
+++ b/xen/drivers/video/vesa.c
@@ -9,9 +9,9 @@
 #include <xen/param.h>
 #include <xen/xmalloc.h>
 #include <xen/kernel.h>
+#include <xen/mm.h>
 #include <xen/vga.h>
 #include <asm/io.h>
-#include <asm/page.h>
 #include "font.h"
 #include "lfb.h"
 
@@ -103,7 +103,7 @@ void __init vesa_init(void)
     lfbp.text_columns = vlfb_info.width / font->width;
     lfbp.text_rows = vlfb_info.height / font->height;
 
-    lfbp.lfb = lfb = ioremap(lfb_base(), vram_remap);
+    lfbp.lfb = lfb = ioremap_wc(lfb_base(), vram_remap);
     if ( !lfb )
         return;
 
@@ -179,8 +179,7 @@ void __init vesa_mtrr_init(void)
 
 static void lfb_flush(void)
 {
-    if ( vesa_mtrr == 3 )
-        __asm__ __volatile__ ("sfence" : : : "memory");
+    __asm__ __volatile__ ("sfence" : : : "memory");
 }
 
 void __init vesa_endboot(bool_t keep)
--- a/xen/drivers/video/vga.c
+++ b/xen/drivers/video/vga.c
@@ -79,7 +79,7 @@ void __init video_init(void)
     {
     case XEN_VGATYPE_TEXT_MODE_3:
         if ( page_is_ram_type(paddr_to_pfn(0xB8000), RAM_TYPE_CONVENTIONAL) ||
-             ((video = ioremap(0xB8000, 0x8000)) == NULL) )
+             ((video = ioremap_wc(0xB8000, 0x8000)) == NULL) )
             return;
         outw(0x200a, 0x3d4); /* disable cursor */
         columns = vga_console_info.u.text_mode_3.columns;
@@ -164,7 +164,11 @@ void __init video_endboot(void)
     {
     case XEN_VGATYPE_TEXT_MODE_3:
         if ( !vgacon_keep )
+        {
             memset(video, 0, columns * lines * 2);
+            iounmap(video);
+            video = ZERO_BLOCK_PTR;
+        }
         break;
     case XEN_VGATYPE_VESA_LFB:
     case XEN_VGATYPE_EFI_LFB:
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -615,6 +615,8 @@ void destroy_perdomain_mapping(struct do
                                unsigned int nr);
 void free_perdomain_mappings(struct domain *);
 
+void __iomem *ioremap_wc(paddr_t, size_t);
+
 extern int memory_add(unsigned long spfn, unsigned long epfn, unsigned int pxm);
 
 void domain_set_alloc_bitsize(struct domain *d);
--- a/xen/include/asm-x86/page.h
+++ b/xen/include/asm-x86/page.h
@@ -349,8 +349,10 @@ void efi_update_l4_pgtable(unsigned int
 #define __PAGE_HYPERVISOR_RX      (_PAGE_PRESENT | _PAGE_ACCESSED)
 #define __PAGE_HYPERVISOR         (__PAGE_HYPERVISOR_RX | \
                                    _PAGE_DIRTY | _PAGE_RW)
+#define __PAGE_HYPERVISOR_WT      (__PAGE_HYPERVISOR | _PAGE_PWT)
 #define __PAGE_HYPERVISOR_UCMINUS (__PAGE_HYPERVISOR | _PAGE_PCD)
 #define __PAGE_HYPERVISOR_UC      (__PAGE_HYPERVISOR | _PAGE_PCD | _PAGE_PWT)
+#define __PAGE_HYPERVISOR_WC      (__PAGE_HYPERVISOR | _PAGE_PAT)
 #define __PAGE_HYPERVISOR_SHSTK   (__PAGE_HYPERVISOR_RO | _PAGE_DIRTY)
 
 #define MAP_SMALL_PAGES _PAGE_AVAIL0 /* don't use superpages mappings */
--- a/xen/include/asm-x86/x86_64/page.h
+++ b/xen/include/asm-x86/x86_64/page.h
@@ -154,6 +154,10 @@ static inline intpte_t put_pte_flags(uns
                                  _PAGE_GLOBAL | _PAGE_NX)
 #define PAGE_HYPERVISOR_UC      (__PAGE_HYPERVISOR_UC | \
                                  _PAGE_GLOBAL | _PAGE_NX)
+#define PAGE_HYPERVISOR_WC      (__PAGE_HYPERVISOR_WC | \
+                                 _PAGE_GLOBAL | _PAGE_NX)
+#define PAGE_HYPERVISOR_WT      (__PAGE_HYPERVISOR_WT | \
+                                 _PAGE_GLOBAL | _PAGE_NX)
 
 #endif /* __X86_64_PAGE_H__ */
 



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:54:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:54:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118431.224547 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNER-000344-M3; Tue, 27 Apr 2021 12:54:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118431.224547; Tue, 27 Apr 2021 12: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 1lbNER-00033x-JB; Tue, 27 Apr 2021 12:54:27 +0000
Received: by outflank-mailman (input) for mailman id 118431;
 Tue, 27 Apr 2021 12:54:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNEQ-00033m-RI
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:54:26 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4090ac78-7dfd-47aa-a158-bc6b57c317a1;
 Tue, 27 Apr 2021 12:54:26 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 63310B1A4;
 Tue, 27 Apr 2021 12:54: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: 4090ac78-7dfd-47aa-a158-bc6b57c317a1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619528065; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0I4gNzPs7QkUzQaZgNM9qNeznBTvZe1/bKfap9B3u8w=;
	b=I1oe92Je8Git0pBVz5wloJ4ZcuaPiMaX7eJBoYyZQdx0mtYAQ54W+1WpH7FSXlhvqcgJIs
	4fkkcoxEaCh2Om/DNFlrYGGZNRTpTSqk0bQBE73DQTXILdvr2G+26UzAAL1asdq5Ngy8Jw
	y/ZvERG+fdVMDvdcI9Zci1cSX7k6jio=
Subject: [PATCH 3/7] x86: re-work memset()
From: Jan Beulich <jbeulich@suse.com>
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>
References: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Message-ID: <f976337c-5dec-ddc3-19e8-a0ee4273cd36@suse.com>
Date: Tue, 27 Apr 2021 14:54:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Move the function to its own assembly file. Having it in C just for the
entire body to be an asm() isn't really helpful. Then have two flavors:
A "basic" version using qword steps for the bulk of the operation, and an
ERMS version for modern hardware, to be substituted in via alternatives
patching.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
We may want to consider branching over the REP STOSQ as well, if the
number of qwords turns out to be zero.
We may also want to consider using non-REP STOS{L,W,B} for the tail.

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -43,6 +43,7 @@ obj-$(CONFIG_INDIRECT_THUNK) += indirect
 obj-y += ioport_emulate.o
 obj-y += irq.o
 obj-$(CONFIG_KEXEC) += machine_kexec.o
+obj-y += memset.o
 obj-y += mm.o x86_64/mm.o
 obj-$(CONFIG_HVM) += monitor.o
 obj-y += mpparse.o
--- /dev/null
+++ b/xen/arch/x86/memset.S
@@ -0,0 +1,31 @@
+#include <asm/asm_defns.h>
+
+.macro memset
+        and     $7, %edx
+        shr     $3, %rcx
+        movzbl  %sil, %esi
+        mov     $0x0101010101010101, %rax
+        imul    %rsi, %rax
+        mov     %rdi, %rsi
+        rep stosq
+        or      %edx, %ecx
+        jz      0f
+        rep stosb
+0:
+        mov     %rsi, %rax
+        ret
+.endm
+
+.macro memset_erms
+        mov     %esi, %eax
+        mov     %rdi, %rsi
+        rep stosb
+        mov     %rsi, %rax
+        ret
+.endm
+
+ENTRY(memset)
+        mov     %rdx, %rcx
+        ALTERNATIVE memset, memset_erms, X86_FEATURE_ERMS
+        .type memset, @function
+        .size memset, . - memset
--- a/xen/arch/x86/string.c
+++ b/xen/arch/x86/string.c
@@ -22,19 +22,6 @@ void *(memcpy)(void *dest, const void *s
     return dest;
 }
 
-void *(memset)(void *s, int c, size_t n)
-{
-    long d0, d1;
-
-    asm volatile (
-        "rep stosb"
-        : "=&c" (d0), "=&D" (d1)
-        : "a" (c), "1" (s), "0" (n)
-        : "memory");
-
-    return s;
-}
-
 void *(memmove)(void *dest, const void *src, size_t n)
 {
     long d0, d1, d2;



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:54:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:54:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118435.224560 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNEl-0003B6-W5; Tue, 27 Apr 2021 12:54:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118435.224560; Tue, 27 Apr 2021 12: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 1lbNEl-0003Ay-Rg; Tue, 27 Apr 2021 12:54:47 +0000
Received: by outflank-mailman (input) for mailman id 118435;
 Tue, 27 Apr 2021 12:54:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNEk-00039o-7d
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:54:46 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0232e8a0-3c79-4da9-b604-6f2b1bf4d1cc;
 Tue, 27 Apr 2021 12:54:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0A119B190;
 Tue, 27 Apr 2021 12:54: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: 0232e8a0-3c79-4da9-b604-6f2b1bf4d1cc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619528084; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=8iVlQanP290BLy02LDzP89TcI1dKH7MaEcZKdyou000=;
	b=b0wz4jX28laKvsVX8HiLepw1mQA2W8pJiR97VNGmmr0IosgDIIiYOiuYunPlOX5e1u2Am6
	Vu6jHC2KcAxsMueg287YK4yXoJj5VQM6PD3IOfemwaEb/OEmVM+S0cNlycjnyOZfgYHO2B
	tz92XjOFrtxds7v94a+30uAFkC2h5XE=
Subject: [PATCH 4/7] x86: re-work memcpy()
From: Jan Beulich <jbeulich@suse.com>
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>
References: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Message-ID: <58bd0a42-4700-cf02-94a5-d68a22cbec1a@suse.com>
Date: Tue, 27 Apr 2021 14:54:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Move the function to its own assembly file. Having it in C just for the
entire body to be an asm() isn't really helpful. Then have two flavors:
A "basic" version using qword steps for the bulk of the operation, and an
ERMS version for modern hardware, to be substituted in via alternatives
patching.

Alternatives patching, however, requires an extra precaution: It uses
memcpy() itself, and hence the function may patch itself. Luckily the
patched-in code only replaces the prolog of the original function. Make
sure this remains this way.

Additionally alternatives patching, while supposedly safe via enforcing
a control flow change when modifying already prefetched code, may not
really be. Afaict a request is pending to drop the first of the two
options in the SDM's "Handling Self- and Cross-Modifying Code" section.
Insert a serializing instruction there. To avoid having to introduce a
local variable, also switch text_poke() to return void: Neither of its
callers cares about the returned value.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
We may want to consider branching over the REP MOVSQ as well, if the
number of qwords turns out to be zero.
We may also want to consider using non-REP MOVS{L,W,B} for the tail.

--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -43,6 +43,7 @@ obj-$(CONFIG_INDIRECT_THUNK) += indirect
 obj-y += ioport_emulate.o
 obj-y += irq.o
 obj-$(CONFIG_KEXEC) += machine_kexec.o
+obj-y += memcpy.o
 obj-y += memset.o
 obj-y += mm.o x86_64/mm.o
 obj-$(CONFIG_HVM) += monitor.o
--- a/xen/arch/x86/alternative.c
+++ b/xen/arch/x86/alternative.c
@@ -164,12 +164,14 @@ void init_or_livepatch add_nops(void *in
  * executing.
  *
  * "noinline" to cause control flow change and thus invalidate I$ and
- * cause refetch after modification.
+ * cause refetch after modification.  While the SDM continues to suggest this
+ * is sufficient, it may not be - issue a serializing insn afterwards as well.
  */
-static void *init_or_livepatch noinline
+static void init_or_livepatch noinline
 text_poke(void *addr, const void *opcode, size_t len)
 {
-    return memcpy(addr, opcode, len);
+    memcpy(addr, opcode, len);
+    cpuid_eax(0);
 }
 
 /*
--- /dev/null
+++ b/xen/arch/x86/memcpy.S
@@ -0,0 +1,21 @@
+#include <asm/asm_defns.h>
+
+ENTRY(memcpy)
+        mov     %rdx, %rcx
+        mov     %rdi, %rax
+        /*
+         * We need to be careful here: memcpy() is involved in alternatives
+         * patching, so the code doing the actual copying (i.e. past setting
+         * up registers) may not be subject to patching (unless further
+         * precautions were taken).
+         */
+        ALTERNATIVE "and $7, %edx; shr $3, %rcx", \
+                    "rep movsb; ret", X86_FEATURE_ERMS
+        rep movsq
+        or      %edx, %ecx
+        jz      1f
+        rep movsb
+1:
+        ret
+        .type memcpy, @function
+        .size memcpy, . - memcpy
--- a/xen/arch/x86/string.c
+++ b/xen/arch/x86/string.c
@@ -7,21 +7,6 @@
 
 #include <xen/lib.h>
 
-void *(memcpy)(void *dest, const void *src, size_t n)
-{
-    long d0, d1, d2;
-
-    asm volatile (
-        "   rep ; movs"__OS" ; "
-        "   mov %k4,%k3      ; "
-        "   rep ; movsb        "
-        : "=&c" (d0), "=&D" (d1), "=&S" (d2)
-        : "0" (n/BYTES_PER_LONG), "r" (n%BYTES_PER_LONG), "1" (dest), "2" (src)
-        : "memory" );
-
-    return dest;
-}
-
 void *(memmove)(void *dest, const void *src, size_t n)
 {
     long d0, d1, d2;



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:55:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:55:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118444.224572 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNFN-0003M6-8C; Tue, 27 Apr 2021 12:55:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118444.224572; Tue, 27 Apr 2021 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 1lbNFN-0003Ly-52; Tue, 27 Apr 2021 12:55:25 +0000
Received: by outflank-mailman (input) for mailman id 118444;
 Tue, 27 Apr 2021 12:55:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNFL-0003Lo-Mt
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:55:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3bb411cd-11a1-47c0-b1a6-4f2ce7d9945b;
 Tue, 27 Apr 2021 12:55:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5F6FAB190;
 Tue, 27 Apr 2021 12: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: 3bb411cd-11a1-47c0-b1a6-4f2ce7d9945b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619528122; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=s14UwhbZNQTt7lOAtjre/DnjC1roVy/CdMyBN/BeKjU=;
	b=j0ZgO+8VYxR9jYhyKz3/FGOkEndMeocpXtE5n0MpwOczBwQyH4bAc+PGBsMTydViUUedqr
	v/W1obmYpbHqxLSrteNgjyW3Uj1gJqC983XytjkDhGjHdRkF5Mbus7VNZdhqYVuxqS14jK
	3Tok0bQaM9vLrZImIvz/6Bqp0CNTYQE=
Subject: [PATCH 5/7] video/vesa: unmap frame buffer when relinquishing console
From: Jan Beulich <jbeulich@suse.com>
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>
References: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Message-ID: <46af3a52-e0e3-a85e-7957-21bee8877836@suse.com>
Date: Tue, 27 Apr 2021 14:55:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

There's no point in keeping the VA space occupied when no further output
will occur.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/drivers/video/lfb.c
+++ b/xen/drivers/video/lfb.c
@@ -168,4 +168,5 @@ void lfb_free(void)
     xfree(lfb.lbuf);
     xfree(lfb.text_buf);
     xfree(lfb.line_len);
+    lfb.lfbp.lfb = ZERO_BLOCK_PTR;
 }
--- a/xen/drivers/video/vesa.c
+++ b/xen/drivers/video/vesa.c
@@ -197,5 +197,7 @@ void __init vesa_endboot(bool_t keep)
                    vlfb_info.width * bpp);
         lfb_flush();
         lfb_free();
+        iounmap(lfb);
+        lfb = ZERO_BLOCK_PTR;
     }
 }



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:56:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:56:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118451.224584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNG2-0003U9-Gy; Tue, 27 Apr 2021 12:56:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118451.224584; Tue, 27 Apr 2021 12:56: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 1lbNG2-0003U2-E0; Tue, 27 Apr 2021 12:56:06 +0000
Received: by outflank-mailman (input) for mailman id 118451;
 Tue, 27 Apr 2021 12:56:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNG0-0003Tr-JM
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:56:04 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id b7ab6b57-a9d3-4583-b7f3-7c3c671f4866;
 Tue, 27 Apr 2021 12:56:03 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 5C9A5B1A1;
 Tue, 27 Apr 2021 12:56: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: b7ab6b57-a9d3-4583-b7f3-7c3c671f4866
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619528162; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=3OIBovXA6yG6lrqXw8NYqJSgjs0t+0xYyiIEpQitrFw=;
	b=St9ue35hfYB7GEoMBFRtGvR00USUKgO8QlS7VRtGVGYx7OMMLjOBOFIrbNEQ9eNnpT3Leg
	bTvW7UE+qP9M3QyVchtbNRsKcAEB7sjJjJ0/kwp9PPPsMexoIS8I1l2ju+v8JHhG6g96dM
	sm3ZQe+ol/62Pu1f5X31BsCFXP8XkzY=
Subject: [PATCH 6/7] video/vesa: drop "vesa-mtrr" command line option
From: Jan Beulich <jbeulich@suse.com>
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>
References: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Message-ID: <afa6121c-42bc-4078-0013-24fa7397fb12@suse.com>
Date: Tue, 27 Apr 2021 14:56:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Now that we use ioremap_wc() for mapping the frame buffer, there's no
need for this option anymore. As noted in the change introducing the
use of ioremap_wc(), mtrr_add() didn't work in certain cases anyway.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,6 +6,9 @@ The format is based on [Keep a Changelog
 
 ## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
 
+### Removed / support downgraded
+ - dropped support for the (x86-only) "vesa-mtrr" command line option
+
 ## [4.15.0 UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.15.0) - TBD
 
 ### Added / support upgraded
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -2369,9 +2369,6 @@ cache-warming. 1ms (1000) has been measu
 ### vesa-map
 > `= <integer>`
 
-### vesa-mtrr
-> `= <integer>`
-
 ### vesa-ram
 > `= <integer>`
 
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -1813,8 +1813,6 @@ void __init noreturn __start_xen(unsigne
 
     local_irq_enable();
 
-    vesa_mtrr_init();
-
     early_msi_init();
 
     iommu_setup();    /* setup iommu if available */
--- a/xen/drivers/video/vesa.c
+++ b/xen/drivers/video/vesa.c
@@ -145,38 +145,6 @@ void __init vesa_init(void)
     video_puts = lfb_redraw_puts;
 }
 
-#include <asm/mtrr.h>
-
-static unsigned int vesa_mtrr;
-integer_param("vesa-mtrr", vesa_mtrr);
-
-void __init vesa_mtrr_init(void)
-{
-    static const int mtrr_types[] = {
-        0, MTRR_TYPE_UNCACHABLE, MTRR_TYPE_WRBACK,
-        MTRR_TYPE_WRCOMB, MTRR_TYPE_WRTHROUGH };
-    unsigned int size_total;
-    int rc, type;
-
-    if ( !lfb || (vesa_mtrr == 0) || (vesa_mtrr >= ARRAY_SIZE(mtrr_types)) )
-        return;
-
-    type = mtrr_types[vesa_mtrr];
-    if ( !type )
-        return;
-
-    /* Find the largest power-of-two */
-    size_total = vram_total;
-    while ( size_total & (size_total - 1) )
-        size_total &= size_total - 1;
-
-    /* Try and find a power of two to add */
-    do {
-        rc = mtrr_add(lfb_base(), size_total, type, 1);
-        size_total >>= 1;
-    } while ( (size_total >= PAGE_SIZE) && (rc == -EINVAL) );
-}
-
 static void lfb_flush(void)
 {
     __asm__ __volatile__ ("sfence" : : : "memory");
--- a/xen/include/asm-x86/setup.h
+++ b/xen/include/asm-x86/setup.h
@@ -25,10 +25,8 @@ void init_IRQ(void);
 
 #ifdef CONFIG_VIDEO
 void vesa_init(void);
-void vesa_mtrr_init(void);
 #else
 static inline void vesa_init(void) {};
-static inline void vesa_mtrr_init(void) {};
 #endif
 
 int construct_dom0(



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 12:56:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 12:56:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118459.224596 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNGV-0003bp-Uf; Tue, 27 Apr 2021 12:56:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118459.224596; Tue, 27 Apr 2021 12:56:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNGV-0003bi-R5; Tue, 27 Apr 2021 12:56:35 +0000
Received: by outflank-mailman (input) for mailman id 118459;
 Tue, 27 Apr 2021 12:56:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNGV-0003bb-7O
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 12:56:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c390bd37-2823-428f-b64b-871f8272425d;
 Tue, 27 Apr 2021 12:56:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id AFE0EB190;
 Tue, 27 Apr 2021 12:56: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: c390bd37-2823-428f-b64b-871f8272425d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619528193; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=P0oy01Y/07q3+WCTPLWPJmj0XnG5cCqIDnUl08wgz+c=;
	b=dTXmFjwO5z3Xu+AfHxr94gHX42Lej1gFRshWInrkSPuCTHllJ2i6q7EDkkaPGmZ5fEkp/C
	UYuu9rmBpUGfMYP+X/6FBuKn8VZyVn4geK6ZwVckLEAOBmGtlnRKQ+q0MR1h97F9/ct0Z6
	0oZt6s44BuFyKAbFKdZdJqAt1vVeDB8=
Subject: [PATCH 7/7] video/vesa: adjust (not just) command line option
 handling
From: Jan Beulich <jbeulich@suse.com>
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>
References: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Message-ID: <7e3f69d7-23e8-397d-72b6-8c489d80ea45@suse.com>
Date: Tue, 27 Apr 2021 14:56:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Document both options. Add section annotations to both variables holding
the parsed values as well as a few adjacent ones. Adjust the types of
font_height and vga_compat.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -2369,9 +2369,21 @@ cache-warming. 1ms (1000) has been measu
 ### vesa-map
 > `= <integer>`
 
+> Default: `0`
+
+Specify, in MiB, the portion of video RAM to actually remap.  This will be
+honored only when large enough to cover the space needed for the chosen video
+mode, and only when less than a non-zero value possibly specified through
+'vesa-ram'.
+
 ### vesa-ram
 > `= <integer>`
 
+> Default: `0`
+
+This allows to override the amount of video RAM, in MiB, determined to be
+present.
+
 ### vga
 > `= ( ask | current | text-80x<rows> | gfx-<width>x<height>x<depth> | mode-<mode> )[,keep]`
 
--- a/xen/drivers/video/vesa.c
+++ b/xen/drivers/video/vesa.c
@@ -19,17 +19,17 @@
 
 static void lfb_flush(void);
 
-static unsigned char *lfb;
-static const struct font_desc *font;
-static bool_t vga_compat;
+static unsigned char *__read_mostly lfb;
+static const struct font_desc *__initdata font;
+static bool __initdata vga_compat;
 
-static unsigned int vram_total;
+static unsigned int __initdata vram_total;
 integer_param("vesa-ram", vram_total);
 
-static unsigned int vram_remap;
+static unsigned int __initdata vram_remap;
 integer_param("vesa-map", vram_remap);
 
-static int font_height;
+static unsigned int __initdata font_height;
 static int __init parse_font_height(const char *s)
 {
     if ( simple_strtoul(s, &s, 10) == 8 && (*s++ == 'x') )



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:02:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:02:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118469.224608 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNLx-0004ZH-Ku; Tue, 27 Apr 2021 13:02:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118469.224608; Tue, 27 Apr 2021 13: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 1lbNLx-0004ZA-HF; Tue, 27 Apr 2021 13:02:13 +0000
Received: by outflank-mailman (input) for mailman id 118469;
 Tue, 27 Apr 2021 13:02:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbNLv-0004Z1-KQ
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:02:11 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8b643ff9-b132-4f97-a415-5e1c4ebc5da4;
 Tue, 27 Apr 2021 13: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: 8b643ff9-b132-4f97-a415-5e1c4ebc5da4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619528530;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=j8rfiKwxLVCA9XN4GQqGSeIv+LVmoP8r/ogHPPMRtI8=;
  b=IRtxpZJq9jdeCu7s+vS0WUvTx3DwhU7ksj3/qcqtNPqjL1QIgfxU2FPN
   2/OME+ig/VJNrue2PM5DkYI1T0crgbKTDSm8PXSYcpZfMYiExuB84/voi
   +6u+XocT6tg+PzfXzMkqtlL6fECirsAdI4IM8B3pYZ/mEEmTGP9UgRf5y
   U=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: vQNol3zRlXtIlon/saqdVtXVuPC8eNJCKcs31b8GGwid6S3NkMt2IsbvRMWQuPVieefszOxWNg
 T2mgFcRpCH1QrxrNvWzaEPTmp22O1zh5OoglZML59nfsYrKOyA5gwzAwFitLOdKZnmdGfvdnPD
 i8SIkjY3HTzi36vMAsMqF2z3XdGYwKftj6aHdpw4Wrj5GLxOBOZxmrCVcUhHOf6MwSfX2uw6kZ
 5xG04JRlkTg3gNgn4Ty30QYayVwcBAm4VpuAUSoCP+zdiN+0XK/lk2cQUMlTB6cfbkdyhjinGR
 4/I=
X-SBRS: 5.1
X-MesageID: 44004430
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:OL9FAanPvjOovgAbj7+xDaCLlg3pDfOFimdD5ilNYBxZY6Wkvu
 illvgDyFvQgDEeRHkvlbm7Sc+9aFvB6J945pQQN7++XA/g/FClNp1m8JGK+UyfJwTV8OlB2a
 B8N413D9PtBVZ35PyKkzWQOdAm3dWB7eSUlf7Tpk0dPz1CRql8425Ce2SmO2JsQg0uP/UEPb
 qaovFKvj+xPUkQB/7LYUUte8jmi5n1mIn9YRgAbiRXlzWmqT+z8rb1H1y5834lIlZy6Iwv+2
 TEjAD1j5/L25rXpiP07GPd449bn9Hs0LJ4daixo/IIITbhgBvAXuVccoCCpzw8raWO71sngb
 D30nQdFvlz8H/YcyWJpwLs0WDbsAoG1nmK8zGlqEqmhea8eDU7E9ZM7LgyTjLpr24b+PB1yu
 Ziwn+QvZs/N2K4oA3No/zzEyxMumXxi3w4iuIXh2FYSuIlGcdshL1a2ENQHJ0JBj+/zpsmHu
 loBNzb/59tACOnRkGcmmlqzNalRGl2JA6PRgw5sMqP31Ft7QFE5lpdyN0Um38B8J4nD51Io+
 /FPbhynrlSTskQKaJ7HvoIRsG6Y1a9PC7kISafMF7jHKECN2mIr5Oy6rMz6+GlEaZ4tqcaid
 DMQVlcvW43d1mrDcDLxpFC6RrNBGewTV3Wu71jzok8vKb9SrrtOTCCT15rk9LImYRlPvHm
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="44004430"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86/pv: Drop HYPERVISOR_COMPAT_VIRT_START()
Date: Tue, 27 Apr 2021 14:02:01 +0100
Message-ID: <20210427130201.2142-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

This is pure obfuscation (in particular, hiding the two locations where the
variable gets set), and is longer than the code it replaces.

Also fix MACH2PHYS_COMPAT_VIRT_START to be expressed as a 1-parameter macro,
which is how it is used.  The current construct only works because
HYPERVISOR_COMPAT_VIRT_START was also a 1-parameter macro.

No functional change, but does create easier-to-follow logic.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/domain.c                | 2 +-
 xen/arch/x86/pv/descriptor-tables.c  | 2 +-
 xen/arch/x86/pv/dom0_build.c         | 4 ++--
 xen/arch/x86/x86_64/mm.c             | 4 ++--
 xen/common/compat/kernel.c           | 2 +-
 xen/include/asm-x86/config.h         | 9 ++-------
 xen/include/asm-x86/x86_64/uaccess.h | 2 +-
 7 files changed, 10 insertions(+), 15 deletions(-)

diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 4dc27f798e..5d8b864718 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -791,7 +791,7 @@ int arch_domain_create(struct domain *d,
     d->arch.emulation_flags = emflags;
 
 #ifdef CONFIG_PV32
-    HYPERVISOR_COMPAT_VIRT_START(d) =
+    d->arch.hv_compat_vstart =
         is_pv_domain(d) ? __HYPERVISOR_COMPAT_VIRT_START : ~0u;
 #endif
 
diff --git a/xen/arch/x86/pv/descriptor-tables.c b/xen/arch/x86/pv/descriptor-tables.c
index 5e84704400..0d22759820 100644
--- a/xen/arch/x86/pv/descriptor-tables.c
+++ b/xen/arch/x86/pv/descriptor-tables.c
@@ -235,7 +235,7 @@ static bool check_descriptor(const struct domain *dom, seg_desc_t *d)
             if ( b & _SEGMENT_G )
                 limit <<= 12;
 
-            if ( (base == 0) && (limit > HYPERVISOR_COMPAT_VIRT_START(dom)) )
+            if ( (base == 0) && (limit > dom->arch.hv_compat_vstart) )
             {
                 a |= 0x0000ffff;
                 b |= 0x000f0000;
diff --git a/xen/arch/x86/pv/dom0_build.c b/xen/arch/x86/pv/dom0_build.c
index e0801a9e6d..5e70422678 100644
--- a/xen/arch/x86/pv/dom0_build.c
+++ b/xen/arch/x86/pv/dom0_build.c
@@ -432,7 +432,7 @@ int __init dom0_construct_pv(struct domain *d,
                 printk("Dom0 expects too high a hypervisor start address\n");
                 return -ERANGE;
             }
-            HYPERVISOR_COMPAT_VIRT_START(d) =
+            d->arch.hv_compat_vstart =
                 max_t(unsigned int, m2p_compat_vstart, value);
         }
 
@@ -603,7 +603,7 @@ int __init dom0_construct_pv(struct domain *d,
 
     /* Overlap with Xen protected area? */
     if ( compat
-         ? v_end > HYPERVISOR_COMPAT_VIRT_START(d)
+         ? v_end > d->arch.hv_compat_vstart
          : (v_start < HYPERVISOR_VIRT_END) && (v_end > HYPERVISOR_VIRT_START) )
     {
         printk("DOM0 image overlaps with Xen private area.\n");
diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index c41ce847b3..a51c2b52d9 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -1029,7 +1029,7 @@ int pagefault_by_memadd(unsigned long addr, struct cpu_user_regs *regs)
     struct domain *d = current->domain;
 
     return mem_hotplug && guest_mode(regs) && is_pv_32bit_domain(d) &&
-           (addr >= HYPERVISOR_COMPAT_VIRT_START(d)) &&
+           (addr >= d->arch.hv_compat_vstart) &&
            (addr < MACH2PHYS_COMPAT_VIRT_END);
 }
 
@@ -1048,7 +1048,7 @@ int handle_memadd_fault(unsigned long addr, struct cpu_user_regs *regs)
     if (!is_pv_32bit_domain(d))
         return 0;
 
-    if ( (addr < HYPERVISOR_COMPAT_VIRT_START(d)) ||
+    if ( (addr < d->arch.hv_compat_vstart) ||
          (addr >= MACH2PHYS_COMPAT_VIRT_END) )
         return 0;
 
diff --git a/xen/common/compat/kernel.c b/xen/common/compat/kernel.c
index 804b919bdc..57845a6c07 100644
--- a/xen/common/compat/kernel.c
+++ b/xen/common/compat/kernel.c
@@ -27,7 +27,7 @@ CHECK_TYPE(capabilities_info);
 #define xen_platform_parameters compat_platform_parameters
 #define xen_platform_parameters_t compat_platform_parameters_t
 #undef HYPERVISOR_VIRT_START
-#define HYPERVISOR_VIRT_START HYPERVISOR_COMPAT_VIRT_START(current->domain)
+#define HYPERVISOR_VIRT_START current->domain->arch.hv_compat_vstart
 
 #define xen_changeset_info compat_changeset_info
 #define xen_changeset_info_t compat_changeset_info_t
diff --git a/xen/include/asm-x86/config.h b/xen/include/asm-x86/config.h
index 883c2ef0df..130db90b5c 100644
--- a/xen/include/asm-x86/config.h
+++ b/xen/include/asm-x86/config.h
@@ -254,21 +254,16 @@ extern unsigned char boot_edid_info[128];
 
 /* This is not a fixed value, just a lower limit. */
 #define __HYPERVISOR_COMPAT_VIRT_START 0xF5800000
-#define HYPERVISOR_COMPAT_VIRT_START(d) ((d)->arch.hv_compat_vstart)
-
-#else /* !CONFIG_PV32 */
-
-#define HYPERVISOR_COMPAT_VIRT_START(d) ((void)(d), 0)
 
 #endif /* CONFIG_PV32 */
 
-#define MACH2PHYS_COMPAT_VIRT_START    HYPERVISOR_COMPAT_VIRT_START
+#define MACH2PHYS_COMPAT_VIRT_START(d) (d)->arch.hv_compat_vstart
 #define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000
 #define MACH2PHYS_COMPAT_NR_ENTRIES(d) \
     ((MACH2PHYS_COMPAT_VIRT_END-MACH2PHYS_COMPAT_VIRT_START(d))>>2)
 
 #define COMPAT_L2_PAGETABLE_FIRST_XEN_SLOT(d) \
-    l2_table_offset(HYPERVISOR_COMPAT_VIRT_START(d))
+    l2_table_offset((d)->arch.hv_compat_vstart)
 #define COMPAT_L2_PAGETABLE_LAST_XEN_SLOT  l2_table_offset(~0U)
 #define COMPAT_L2_PAGETABLE_XEN_SLOTS(d) \
     (COMPAT_L2_PAGETABLE_LAST_XEN_SLOT - COMPAT_L2_PAGETABLE_FIRST_XEN_SLOT(d) + 1)
diff --git a/xen/include/asm-x86/x86_64/uaccess.h b/xen/include/asm-x86/x86_64/uaccess.h
index ba79f950fb..8c7df060d5 100644
--- a/xen/include/asm-x86/x86_64/uaccess.h
+++ b/xen/include/asm-x86/x86_64/uaccess.h
@@ -55,7 +55,7 @@ extern void *xlat_malloc(unsigned long *xlat_page_current, size_t size);
      access_ok(addr, (count) * (size)))
 
 #define __compat_addr_ok(d, addr) \
-    ((unsigned long)(addr) < HYPERVISOR_COMPAT_VIRT_START(d))
+    ((unsigned long)(addr) < (d)->arch.hv_compat_vstart)
 
 #define __compat_access_ok(d, addr, size) \
     __compat_addr_ok(d, (unsigned long)(addr) + ((size) ? (size) - 1 : 0))
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:10:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:10:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118477.224619 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNUB-0005eT-Fx; Tue, 27 Apr 2021 13:10:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118477.224619; Tue, 27 Apr 2021 13:10:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNUB-0005eM-Cw; Tue, 27 Apr 2021 13:10:43 +0000
Received: by outflank-mailman (input) for mailman id 118477;
 Tue, 27 Apr 2021 13:10: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 1lbNU9-0005eE-Ph; Tue, 27 Apr 2021 13:10: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 1lbNU9-0007ga-JS; Tue, 27 Apr 2021 13:10: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 1lbNU9-0006a6-A6; Tue, 27 Apr 2021 13:10:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbNU9-0006bn-9c; Tue, 27 Apr 2021 13:10:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/dXHF5WrU+exKTG0QVGIhP3hTsEqDIQhQvRxhfhqYHc=; b=ke1VUJXfVSSebslt6BSJZKu4Ud
	ZllM+x2OQNzk/VzdfJqEt2r5dM59kyyFB1PfYyv6TxAx82lS2yGPLIWZoyrIWpRtRBsmTSd6Um/6E
	VJuyYXIjoQF6CQW7wvGC41N1kOeGpFRCO942r+doNVfqQk12qlQJC8rXNB4OVy8chPmo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161477-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161477: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=8d2012035db3cb869d1da8a95c1308025cadbeee
X-Osstest-Versions-That:
    ovmf=5396354b868bd6652600a654bba7df16701ac1cb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 13:10:41 +0000

flight 161477 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161477/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 8d2012035db3cb869d1da8a95c1308025cadbeee
baseline version:
 ovmf                 5396354b868bd6652600a654bba7df16701ac1cb

Last test of basis   161469  2021-04-26 16:40:08 Z    0 days
Testing same since   161477  2021-04-27 06:10:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   5396354b86..8d2012035d  8d2012035db3cb869d1da8a95c1308025cadbeee -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:15:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:15:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118487.224639 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNYx-0005vW-6t; Tue, 27 Apr 2021 13:15:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118487.224639; Tue, 27 Apr 2021 13: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 1lbNYx-0005vP-2t; Tue, 27 Apr 2021 13:15:39 +0000
Received: by outflank-mailman (input) for mailman id 118487;
 Tue, 27 Apr 2021 13:15:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lK8l=JY=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lbNYv-0005v1-EI
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:15:37 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fd13f9aa-6fa8-4618-980c-d8afa5865583;
 Tue, 27 Apr 2021 13:15: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: fd13f9aa-6fa8-4618-980c-d8afa5865583
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619529330;
  h=from:to:cc:subject:date:message-id:content-id:
   content-transfer-encoding:mime-version;
  bh=gnW8G/vAb0VlOlI6ZVQZ7LbKL4kCnohKmz5KAXT8mCE=;
  b=JWROFhYiaVsjBGFG0elEMm6nhX9Q/yp/Y6z5vFcRVr50lN4JyASE7gHQ
   Q+aeCArw9fi8AdDck7eWZairMg84Mk03aR+MCsWXIbt1lRhlT3jBeoF8r
   j2c7LtAUXPHsBRrZO6u+h6qIoW+ExrsAAFvrN5EgbOZyKPSaM6UVVQn7X
   Y=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: RXsDLrmN5FDQ9em2O4Jxb+LjLuXSi2gnfOa2dygCX7JomAkyvIL18RP+RDDoIVkGNKZWe7lELn
 tnFQqyvLDOiwmD475syZe860cGtV45GR+dsFuwOa6eqHBuBz9iMflq2VUj9dwPbsR2qLh2Bkre
 f810x2RjTHW0ZuYPhvzKIm5Rd3AvMoM5Wr2r6KIj8O0HyMHGLWPwb74/jbzjvZ1i6qbbAw9j8d
 E1dKaDBiTRwLYBOuVdz8cx1aUL9/40B2IUBsg8NtRflLRRq3enMAAasKD5EDkdxhtkzPyYF2FL
 u8o=
X-SBRS: 5.1
X-MesageID: 42889963
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:0g1Aa6Gze+jcj9XBpLqFtJXXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7L0/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeOJwTXzcQY76
 tpdsFFZOHYJVJxgd/mpCyxFNg9yNeKmZrY/9v25V0Fd3APV4hL6QBlBgGHVm1aLTM2SqYRPp
 ya+8ZBun6EcXMYcsy0ChA+LpX+jvfMk4/rZgNDOgUu7xOAgSjtxLnxFRWZ2Rl2aUIA/Z4J92
 /Znwvlopiyqv3T8G6R60b/zbRz3OHgxNxKGdCWhqEuSwnEpw60aO1aKsW/lR8vpuXH0idJrP
 DpgzMNe/t+8GnQeGbdm2qt5yDF3Cw143HvjX+06EGT2vDRfz4xB8pfiY8xSHKwgCBM3KAe7I
 tx03+ErJ0SNBvcnU3GloP1fit3nUm5q2dKq591s1VjUJATYLIUjYsT8FI9KuZ4IAvG6ZsqGO
 QrMcfE5Pw+SyL9U1nluABUsbmRd0V2Oi3DblkJu8ST3TQTtmt+1VEkyMsWmWpF3I4hSrFfjt
 60cphApfVrdIs7fKh9DOAOTY+cEWrWWy/BN2qUPBDOCLwHAXTQsJT6iY9Fp92CSdgt9t8fiZ
 7BWFRXuSoZYET1E/CD25VN71TrTHiiWy/ujuVT/YJwtLG5ZLeDC1zAdHke1++b59kPCMzSXP
 i+fLhMBeX4EGfoEYFVmwLkXZ1fLmQfTd0Vtt43V0nmmLOOFqTa8sjgNNrDLrvkFjgpHknlBG
 EYYTT1LMJcqkCnM0WIxyT5ajfIQAjS7JhwGK/V86w4044WLLBBtQATlBC87sGPIjtSr7wucC
 JFUfXau5L+gVPz0XfD7m1vNBYYJF1S+q/cX3RDohJPNVj1f7YFs9CWYntTw3ODOx96Q6rtYU
 tijmUy3ZjyA42bxCgkBd7iGHmdlWEvqHWDSIpZhreO/t7/epQzDo8vXat4EQmjLW0tpS9a7E
 N4LCMUTE7WET3jzZi/hJsPHefFap1XmwGwO/NZrnrZqGSRrcwiXWEgQjarSMKb6DxeHwZ8tx
 lUyes/iKDFsSuzIWE/6d5ITGFkWSCyOvZ6KyirIK9TgavmfQlsS3ziv03ktzgDPkzw90sTgW
 T9KzazYv+jOCsGhllRzrvq/FRodm+UYkJ3bTRgvZdgEHnd00wDoNOjd+691XCcZUAFxfxYOD
 bZYSEKKgcr3Nyv0gWJ8QzyXkkO19ErNuzZAK9LScCs5lq9bImJn7oBBfla4dJsM83vqPYCVY
 ukCkaoBSK9D+MiwAqOoHk5fCFytXk/iPvtnBno9nKx0nJ6Af3cJj1dNvkmCsDZ62jvXPCT1p
 plydozoOurK230Lsec1ru/VU82FjrD5WqtC+04o5Fduqw/8LN1ApnASDPNkHVKxg83Isv4nF
 4XKZ4LqozpK8tqZYgfaihZ9l0mmJCUIEwnvhf/D+U+cVsu5kWrSe+h8v7Ns/4iE0eBrAz/NR
 2D6CVb5e7CRDbG2rgACa48SF4mJXQU+TBn5qeFeILRAgnxKL0G81q+L3OncLhSDKKCAq4dqx
 5m49eO2++bHhCIqjz4rH9+OOZJ9W3iXMa5RASLEuRM+8ahOVuNjrCxifTD+wvfWH++cQAAmY
 ZBdUYMdcxNhTkpkZ0v3kGJO9/Ki1Ngl0Eb/CpumVHs0JW3+WvXHUlJNgvCn5VdNAMjR0SgnI
 DC6uiX1HP0/ThD193CDS5rD6FzJ+Q=
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42889963"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gOGeWoTm9M2ugQ3/PwguLkTYST4WjlRnMjuy8hZ+jGPFnpC8cojLdN8hIWRW2OoMqqe2SqDGRMp1M5pyipd6sfpG+P7E6tekhIFNYohf3otQrTlaf7g7Kwic1M0IeXpaRRoaTaIY+Mudla2qTIkLq7JWPS2vPiZpBjSVVrrtslZRldm8hc6awzb2fk5RFaSVsNNxjbBUo4LTD40xd7sNESHd+fziRz5HYzi+T0huUUTcZMAOzaRC+nHgXGQ45GaTvK78tghJix/T4bbu2mjisWdHCcWwSsTFW4i11qOTGqtRQAnJuEVPhcqtnlwgvUi/bC2mwMc72UuqOlqaCzX0mg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gnW8G/vAb0VlOlI6ZVQZ7LbKL4kCnohKmz5KAXT8mCE=;
 b=apNwm4nn1na8cXr9+JZzFnqgHPVZYEbAvZB0tcjQoqm8Q3qOaGJks72nMfK4U9D2PLi1T731sYeAzh5E1nd00A/AH34XEztEDv1jgNVTNyAthzkF8aKwmlFYsT+NMypUyfx7wXrMIk+4UC1RF6leIcG9VfWQm2xOfFcXuN2ORi7LvIz8Pea9Wu7wzeQ2UvdzMYFeAjTl8HoacteX5Y6+6B+wlvpqasyzJtpV/E27iCVQi+Vfk43aT90laN0scB4uFm+55A6FGI85xr652nhcPyTs5W29FyrFCRgsj/JU4r/ONcOfVX27vFeY5TziytflWaBW/xcv+z/hTi0V6LnQ+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=gnW8G/vAb0VlOlI6ZVQZ7LbKL4kCnohKmz5KAXT8mCE=;
 b=G/U9xWKy1vTTWCYuTpj0WzvRuDJXDnTFrhRNiU2ML5b2HoJWhuv3/8gQ4eGYh2ccP2aaYN2eCxC71eH1vf7rpoH8hkrcIkFv9FQKk4aIOHe+h7S4MPLVvVlk6E2vmZBzLHi0zz7e4ACNFDqJbCphErtBYd4s3tNrJt7k7IJJpas=
From: George Dunlap <George.Dunlap@citrix.com>
To: xen-devel <xen-devel@lists.xenproject.org>,
	"xen-announce@lists.xenproject.org" <xen-announce@lists.xenproject.org>
CC: Deb Giles <dgiles@linuxfoundation.org>
Subject: XenSummit Design sessions website open for submissions
Thread-Topic: XenSummit Design sessions website open for submissions
Thread-Index: AQHXO2dccUzbfq2SvkKpmPaTgJNKlg==
Date: Tue, 27 Apr 2021 13:15:14 +0000
Message-ID: <E0F52712-59FD-40E9-9488-EB4F7871EA06@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.60.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 5f13abae-3bc8-4259-0ca0-08d9097e7eb7
x-ms-traffictypediagnostic: PH0PR03MB5768:
x-microsoft-antispam-prvs: <PH0PR03MB5768D6386932AEE665DCF98A99419@PH0PR03MB5768.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: HSEah2fX61AqBIaqAQsiCu//M6eRpuMoVbWU78lDCHPOgv4Xag23KS+deJF8N1NhVBJX9wIH0ZNFX0QXktet9B7RktPfiFVi99CVTntknRLJMueMJCrMr2pTP0czpKZKv0qPJidV9LNTZqI2+gkYG2SC0fZmxivELvXkV1rChQbgNLKj96aqWvGZO5JnBmXOcLkIx0lR9zFZFQK/TnKI7GNTO8GYsFRrXmfivWl4BB+VozWICIGrt0Yzk+EwENpHQ5RzIqYXb2bNJNQQ7CphLjN6pZcAvipUsCGY511x8ypV+CPPLUEdksgeI6Aa0iEsjWDJ72B70fL3ZBspGOSCfiFSRpQEbd/XzIV/OLbxM1eqECrwT6rKTemk+M6tL//d8vajp1NevlqFjDrkJnfFFpeEZ6pUdBvknZWBTlV7/wo77JRO0aWcjnIucRZKRVcSKGQageBcBX3ht5byxY16aUZVGUyXOMvQA8T26I9GPFLhCIT4H/Jrdy2KGuaceuzyMNfrlme1aaWvfW8QBCjDovRWfMLJhqvkmKzswGjOecvQp6kz5tejZ4G6AttNIfXzfj0sVaCtd4ADalnmxcInHPhKs6P5GBawQzjLJiiEvNF1Kv9FWoUuUMXFNlm8G0GpruMQwXWqwAuwJAUMH6f5dmoxh4Ah5Ga95oCqVx43+x1QIZV1pBOn8qE0MiBedKVl+80v50Z9sozM/LUpEPZLuld++cMvkdlmuINFP8MpcyFtT3FNsIkDvkV/Ojv7pnvl7fPE/zq3M+8NJquUDBvYlA==
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR03MB5669.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(39850400004)(376002)(136003)(366004)(38100700002)(26005)(83380400001)(186003)(66446008)(71200400001)(66946007)(316002)(64756008)(478600001)(91956017)(2616005)(122000001)(110136005)(4744005)(36756003)(6512007)(66476007)(86362001)(6506007)(6486002)(66556008)(966005)(76116006)(8676002)(4326008)(8936002)(2906002)(5660300002)(33656002)(49320200005)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: =?utf-8?B?MlpxY3ZNTGwyTnMxSDFhbk8rdmZzNXFUMUk1eVQ5VG91WGRYUGdKUUdYMmhK?=
 =?utf-8?B?NzNhMXQvNlN0ZG4zRG1sQXhnQlJ4NTMyRUJYWTZNTTdzdmNpR2kxQkJkMmdj?=
 =?utf-8?B?YWNhZTFFMnkxYitQVEYvbzVNUllVTHgreTRpNm0rUE5Cd0c4UkdkVjJqZmVo?=
 =?utf-8?B?OU1EYTZTUGc4VGJVZGhHTU9kV1RlUnJnUWhNaGJXdjE5emFUNFg3VGY4bmN5?=
 =?utf-8?B?dXo1UFBFR1BCRWg4bTVUendYVG9Wd0cva2pqN2JWWVozWFpSSWx4ZXU3eFJT?=
 =?utf-8?B?Wi85OHJZcG5hVjVwM3FldDkwT2c5QitOTytiSVZmai9iNlNncXd6dGRBRFZZ?=
 =?utf-8?B?OXBmM3JSRzRjMkI2Ni9sWmZEdHAzcEJhZW1laHU4OS9yU1pGMXFueC9Ta0lP?=
 =?utf-8?B?WEY1cFFlTTZRdWVrR0VzeU9sMU5qZE5nR3ZITzlPOU5oRXpiYURxeU1yQ0oz?=
 =?utf-8?B?RzdPeTBOSEtCZjhPYlZPNiszSm13TFBrVWhjdWMwYnBJajNWZWM4VjkxSjMw?=
 =?utf-8?B?UVhnd1lyVVl1VzFlSGVESStUUVFaZy8ybTl3VHRIZmloMm12a1pFZC9MK2dM?=
 =?utf-8?B?Ry9kUm1TcHYrU1JuVkxPVUl4S09vYWR1SGF5azQyYlJDMkNVaU9mUU9EQzRD?=
 =?utf-8?B?dGw4c011cUc5bWE2OTN0aEpDckdhdVNLN24vODEraXBnci92dW5SS21uQktT?=
 =?utf-8?B?UnM5Nlo2Qkx6QXJrMHVRcmxORTNyVm5wNVVGalRvOXR1aFF0SkJkWGtMU0xi?=
 =?utf-8?B?THNsVzJzaEZXYy9VTTZ5OVpBYzNlazdNUzlINk9UTHFIOXowS2w0cjlQU1o0?=
 =?utf-8?B?cDlSb2h2T2VoUFBiY0NFb004NTRpL09uckNRRG5abGhwRWNFb1dLNXlwVE1u?=
 =?utf-8?B?N0pYZUE0c25VRFp2dll6b01iWUc2MmJ2OGJvQklsODdkZUxxc2h2WE1FZk1R?=
 =?utf-8?B?NHNEdHJlSDBkTGh1Yk0yL21TbHlta0VVbEhRTjZEbE1ObFowSHlTTStmWG9l?=
 =?utf-8?B?aENaZGFobUVVWGUySFNNOGg2TmpDL1QrQWhGZ1E4UitLcmRGT3RNaS92V0lS?=
 =?utf-8?B?bkpMWXNwa3FJTkVYR3ZBd3J0YWVOWG9RNExVcFdoY3FCSlRvUnJLV21Fa21E?=
 =?utf-8?B?Z1NOZFBuM2lWTy9wTXFhc01vR3owVGtUOERSSkdwSEsvbkhSK2pQNjIxQlRJ?=
 =?utf-8?B?NUF6dUJvdGJhU0JqWUtpTEYvZDhqSEVzMVBrL010Yk5OMlBsWENNcmIyVDZB?=
 =?utf-8?B?UGVmK0RQc0lsS2thN1lGZWdmT01pcmpNNzhMKytNMElKVDFpdStWazZKaHpw?=
 =?utf-8?B?Z3B3NkszNzltTWNYY0tzblB3UjNEQ0YzekdHT1BEeVpLRGFvSnAzWXlVM2p3?=
 =?utf-8?B?UHkxN0hkeEhyVGd6Y1I0Q05RZWxUMlFONW11NU1PT1dCWEk0WXBwV3I3K0Nl?=
 =?utf-8?B?R3lwZFdNVHdZeGNvQ1kxZ0xkQVdqbUhJM1g5bHhYcERpM0IzKzB6TmtaL0ZW?=
 =?utf-8?B?dW56UFZGQWI4MWlSKzJZOElFVnIzZlpIQXhRMkFueDJKeE8rQmd6bVBNUExx?=
 =?utf-8?B?Mzk5c2lhdDYwaXNqMEQySkZHYmhlWk9qWU5NbWVKajhTelBYZGJaQ3FQaU9J?=
 =?utf-8?B?dldJSmJ0TVZZYzQzNnFSQTI2amcweFVMZ0tIcSs4S1VZamViVlNneURBY0tI?=
 =?utf-8?B?RGNUeVBocHRwM0p5RFJVdmd6c1hoSXBpeDF2VHBSNlJ1N2RTSlA0dGJYWmYv?=
 =?utf-8?B?WlQ5QzhJQnZId2p5djR6T05IRkNUL3lZU1JxLzF0cnhCV1p5L1VMckthOTZJ?=
 =?utf-8?B?bm9BanVaMEJ3MTdKNndwdz09?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <95D7067AA1E5454585F49357A309A262@namprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: PH0PR03MB5669.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5f13abae-3bc8-4259-0ca0-08d9097e7eb7
X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Apr 2021 13:15:14.5373
 (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: u5WbEthwQOBSmpoL9h/0MpWNMwB7yP/LuAC50gmyq5/fFAko3Yda87bJv6qWQ7UdbCrDt07cvg0aB6k4mdQkh75xmtR6k7dD7lX/7ZqjvJ4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5768
X-OriginatorOrg: citrix.com

SGVsbG8gZXZlcnlvbmUsDQoNCmh0dHBzOi8vZGVzaWduLXNlc3Npb25zLnhlbnByb2plY3Qub3Jn
IGlzIG5vdyBvcGVuIGZvciByZWdpc3RyYXRpb24gYW5kIHRvcGljIHN1Ym1pc3Npb25zLg0KDQpB
bnlvbmUgY2FuIHJlZ2lzdGVyIGFuZCBzdWJtaXQgc2Vzc2lvbnMsIGJ1dCBuZXcgYWNjb3VudHMg
c3RhcnQgb3V0IGFzIOKAnHVudmVyaWZpZWTigJ0gdW50aWwgbWFudWFsbHkgdmVyaWZpZWQsIG9y
IGEgdmVyaWZpY2F0aW9uIGNvZGUgKHNlbnQgYmVmb3JlIHRoZSBzdW1taXQgdG8gcmVnaXN0ZXJl
ZCBhdHRlbmRlZXMpIGlzIGVudGVyZWQuICBBbnkgYWN0aXZpdHkgZnJvbSB1bnZlcmlmaWVkIHVz
ZXJzIG11c3QgYmUgbW9kZXJhdGVkIGJlZm9yZSBpdOKAmXMgdmlzaWJsZSB0byB0aGUgd29ybGQg
YXQgbGFyZ2UgKHRvIGRpc2NvdXJhZ2Ugc3BhbSkuDQoNCldlIGhhdmUgYSAqbG90KiBvZiByZWFs
bHkgZ29vZCB0YWxrcyB0aGlzIHllYXI7IGJ1dCBpZiB5b3UgaGF2ZSBhIHRhbGsgeW914oCZZCBs
aWtlIHRvIHN1Ym1pdCBsYXN0LW1pbnV0ZSwgeW914oCZcmUgd2VsY29tZSB0byBzdWJtaXQgaXQg
YXMgYSBzZXNzaW9uLCB3aXRoIOKAnFtUQUxLXeKAnSBpbiB0aGUgdGl0bGUuICBJdCB3aWxsIGJl
IHNjaGVkdWxlZCBhY2NvcmRpbmcgdG8gdGhlIGludGVyZXN0IGl0IHJlY2VpdmVzLg0KDQpUaGFu
a3MgZXZlcnlvbmUhDQoNCiAtR2Vvcmdl


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:18:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:18:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118495.224651 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNc6-00068P-Qn; Tue, 27 Apr 2021 13:18:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118495.224651; Tue, 27 Apr 2021 13:18:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNc6-00068I-Nh; Tue, 27 Apr 2021 13:18:54 +0000
Received: by outflank-mailman (input) for mailman id 118495;
 Tue, 27 Apr 2021 13:18:53 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNc5-000687-Ms
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:18:53 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4324aac7-6ebb-4042-bc7a-2298f692f18d;
 Tue, 27 Apr 2021 13:18:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C310AB1A0;
 Tue, 27 Apr 2021 13:18: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: 4324aac7-6ebb-4042-bc7a-2298f692f18d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619529531; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=zOweu7VjQk5zycGCfzN3tNxUozmRx2KYeuQLH43qV44=;
	b=aXhiKBz2LEjQj6/e7wPjEk/z03jP6tAe8BgNmRbnYieeP0UGW0lM8JzOqxdtuKEQ99ZKXB
	yZXtBybyMkAwUpiOfa+iGARrjDxUzwA2GFb6m5WnVzVx+rtYcDCC1nhoRTjcrQpXOffNJ3
	joY0OKAbE2HrX/CZdjIfi5MfE71yu6o=
Subject: Re: [PATCH] x86/pv: Drop HYPERVISOR_COMPAT_VIRT_START()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210427130201.2142-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <bdc85c8d-db7c-e9cb-d436-317a31f96e69@suse.com>
Date: Tue, 27 Apr 2021 15:18:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427130201.2142-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 27.04.2021 15:02, Andrew Cooper wrote:
> This is pure obfuscation (in particular, hiding the two locations where the
> variable gets set), and is longer than the code it replaces.

Obfuscation - not just; see below.

> Also fix MACH2PHYS_COMPAT_VIRT_START to be expressed as a 1-parameter macro,
> which is how it is used.  The current construct only works because
> HYPERVISOR_COMPAT_VIRT_START was also a 1-parameter macro.

I don't mind this getting changed, but I don't think there's any
"fixing" involved here. Omitting macro parameters from macros
forwarding to other macros (or functions) is well defined and imo
not a problem at all. In fact, if at the end of all expansions a
macro evaluates to a function, it may be necessary to do so in case
covering not just function invocations is intended, but also taking
of its address.

> --- a/xen/arch/x86/pv/descriptor-tables.c
> +++ b/xen/arch/x86/pv/descriptor-tables.c
> @@ -235,7 +235,7 @@ static bool check_descriptor(const struct domain *dom, seg_desc_t *d)
>              if ( b & _SEGMENT_G )
>                  limit <<= 12;
>  
> -            if ( (base == 0) && (limit > HYPERVISOR_COMPAT_VIRT_START(dom)) )
> +            if ( (base == 0) && (limit > dom->arch.hv_compat_vstart) )

I expect this (and a few more instances) to fail to build when !PV32.
It was the purpose of ...

> --- a/xen/include/asm-x86/config.h
> +++ b/xen/include/asm-x86/config.h
> @@ -254,21 +254,16 @@ extern unsigned char boot_edid_info[128];
>  
>  /* This is not a fixed value, just a lower limit. */
>  #define __HYPERVISOR_COMPAT_VIRT_START 0xF5800000
> -#define HYPERVISOR_COMPAT_VIRT_START(d) ((d)->arch.hv_compat_vstart)
> -
> -#else /* !CONFIG_PV32 */
> -
> -#define HYPERVISOR_COMPAT_VIRT_START(d) ((void)(d), 0)

... this to allow things to build in the absence of the actual struct
member.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:19:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:19:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118499.224662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNcc-0006Du-49; Tue, 27 Apr 2021 13:19:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118499.224662; Tue, 27 Apr 2021 13: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 1lbNcc-0006Dn-0z; Tue, 27 Apr 2021 13:19:26 +0000
Received: by outflank-mailman (input) for mailman id 118499;
 Tue, 27 Apr 2021 13:19:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbNcb-0006DS-7C
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:19:25 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a978bd86-e563-4be9-9554-89b549adaaa8;
 Tue, 27 Apr 2021 13: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: a978bd86-e563-4be9-9554-89b549adaaa8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619529564;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=uLUd233mBG+Fxusj6Unmqf25KWhNUEn6J+kWJNxNvnE=;
  b=ZkGxbj0WBSkbii5s4zQb9Z1VYrlZakLvfM6IaMfCVZ6bSkDwnKAsL6Ee
   dNnxnLu8XHUGzAB1zJ8cWnEMwgOVkDZUfSiwpbF+w2Ca8kTUw3Z2RHgpY
   9P7Y14kmbJzyoBJjFCYW15mEWdS1emCCszOMYkcgiLxm2d16PfFTiMO9Y
   g=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: xA+Z6CCxRfCk3vZec/6D9OT+IP636IA7xA4aetobkVGhZ1XPqdqYsiy1fpuafObiYd/vG3LeMN
 Qohy1xsIA6JgaXFIemkiEC8uT80rOTJZLyEIPQOSPv/lp3rJVcOmMcf/eiRC7/k67/SN/VuWa5
 abk4xIfW4P9BKSUsbevwbyK1NEOskqrlM95f6HEA8DglimdQZR7se4N85f0RccDKtKiBjOwHn/
 IxyLFv/iomn0TJwDNgk40br9PJbdQ6UsHBOtNISRdB2z1yJB84n0cf/YHamBeUzI+1TzYHpUwh
 ozY=
X-SBRS: 5.1
X-MesageID: 42514110
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:hiTniqv3yYOZw2ZA+p9hSD6s7skCB4Mji2hD6mlwRA09T+Wxnc
 qjhele8BfyhioYVn1Io6HlBICrR3TA+ZlppawYOrm/VAfr0VHYS71Kx43k3jHmBmnC5vdQvJ
 0QCJRWJdXsATFB7frSzxK/F78breWv0KftvuvGymcocAcCUdAE0y5cKiK2VnJ7XxNHA51RLu
 vn2uNiqyC7cXoaKuSXb0N1PNTrnNHAmJL4bRNuPXdOg2OzpAil57LgHx+T0g12aUIs/Z4Z7W
 PHnwblj5/Nj9iHywTR32KWz5NalMqJ8Lp+LfGMkcQcJ3HQjB+pbu1aNYGqgTZdmo2SwWdvtO
 OJgh87e+xv9nvafwiO0H3Q8jil9Axr1ljP5huzh2D5rcnwWTQgYvAx/L5xY1/e8EovvNZ1za
 JN0SaYrvNsfGv9oBg=
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42514110"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GN+gth6KhphB4YNH1tYdRwOLcugsFdn8yLJfGto6rionXuvfCsALdPnJx7PHaHWlE/vP7WwyUXh9eOhLjvxT6iryTEN8GxzDqbmejrUTPGJJ+vEY16IbUO031sRZvH7jhY4+vtMJJIKVjcyCASyyPvUEWcVXOdPUhOpMdIkV9X+vomcUPHct//Jcilc96uKk8C4kthCfc8LswRj8mKVul39J4h7s7p5d89e4oHQfhlfg4WcSk4SP84dNcvsNMwC+Zml5+EHyLpmrQQgEHGRL0kYmPa9/LT3novFWdZKiJ8f3aBVIz9AJ/sKoOS862c3bXZ67rIPRk7lIqs5G+bGQNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uLUd233mBG+Fxusj6Unmqf25KWhNUEn6J+kWJNxNvnE=;
 b=ct6mlNU/80axlN0gssutBp0PzR8RuvWaavWzwfc7M0CaqcQcqWO9vQyt3spXoM/6YtDpCkPMTECVdr8AUH+hWszRZLU2lZZeww8OnL7NjwXH1bwHjGlOZw7W4cEEKoiU3hfxNgIafpXKm5+OVIHs6RiCMZW5NGPcHbNZVRrndQAUwdd4vAwAA6y0D7RvN+l3tgreufKrKw6YZ0ZvAH31PrJoMhMGDWY2nhfxZvffHMQKodMmc93UD5fNsY8EG6y03A3ysDeEzrVer2nue193WFzx97t1hy4u+1xFFzdTWftqDq2nczIQnLMN4BNbrLfzAvTAfavwQzQ9zwUrkYUzYQ==
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=uLUd233mBG+Fxusj6Unmqf25KWhNUEn6J+kWJNxNvnE=;
 b=xBYQn+mg/4BYNL0HWRzmfGRi+EzBA/p5t9pVbhYt+IhzTITuyE3opW6DatsnPc0/csfLNQ6wGC6OmxhsPqKroItr6+QKk0JnJ3JHpT6We4s6Y2s8ZDnUqwgFaE9OklELal3UTZZpL8B4k+4p1RyCTNEqBlbx+vPCLDR+5/TSmUE=
Subject: Re: [PATCH 1/7] x86: correct comment about alternatives ordering
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: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
 <e6f362b3-2339-c5cb-362b-743271dbe826@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <c826609f-e4ba-f598-1519-5387e3d632df@citrix.com>
Date: Tue, 27 Apr 2021 14:19:11 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <e6f362b3-2339-c5cb-362b-743271dbe826@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0292.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::16) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 1217c668-de5e-413f-c458-08d9097f0fb5
X-MS-TrafficTypeDiagnostic: BYAPR03MB4295:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB42955EDF0E53C4522F092C6CBA419@BYAPR03MB4295.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3383;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /lbBqRvmTlJBXl6G5DGiVrTAyu4q8gpBFy/3aVnZBQWeb4v5joBzpz/ttWbUCd1ilZYgK6mZ5bryz8+H+Sz3dqJqYWHDIXlwq6cPHdL3aU/vRAgYUas//SyN6gEu42y+ntNKpRvjSCxs06JfKmFEa4NOyegGoAoK7juRh+qMqgh9tArsD0DQ97zUd441HHf0liVxJmP67ifbHRwAtrC19grfaDV1VeD0mQk9ax8uEtZWo8GArwE7Rrivz2qSvJ4yIsI7/pliSmDFH5iMUuylaNue2tpCxSOzAHD3WWQpvDeigvMHAb710PIfi3ROx3JUhWgSMO4suG58Rsr9AhLrCiCgECrbeL7vcElIVsE7Isow/c+iq8u2plynPAR4Iw7Mlk4K27dLdw8SMpuM9PGzltiXsjac06GxaD7TZkUrBY5tuNNOz+aHWWSpM+MpGtB3LwNuUVkHuZ2SYyOE94e7c8h71u6jVpvU4MY6TE1kiL9oTc0+GftIR1E0C0aEjUz9aKDGslOG1msC5RltoPCwON739zqmEhDb+BjeWCK9f1Vop33e/HZgMXIZM8E6FS8ww3yij7JlhPGsmRgIaSsDcKTxbVhkbm2wOUxS/899t3UdLNmyz3TbU/rC3pET5JN53NdG0rWx4vL9hj5MnkD4bXWJVhfG2KtSebT7aU9+xhs4CjFBGERowVoaAr2NcK9s
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(376002)(39860400002)(136003)(366004)(396003)(66556008)(36756003)(5660300002)(66946007)(6666004)(38100700002)(4744005)(86362001)(16576012)(66476007)(110136005)(316002)(54906003)(31686004)(478600001)(6486002)(107886003)(956004)(2616005)(16526019)(53546011)(8676002)(186003)(8936002)(31696002)(4326008)(2906002)(26005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 1217c668-de5e-413f-c458-08d9097f0fb5
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 13:19:18.0391
 (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: kGhCp9e50HWocXe2LBb+oGL2WNjwI2bAY0hMxMmfxP1rxIvaTwN0HNJI7NbV+2jwQTpHIT08FxtNkPgUM0nilLzjGjQw0EywYg7VSFZIl0M=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4295
X-OriginatorOrg: citrix.com

On 27/04/2021 13:53, Jan Beulich wrote:
> Unlike Linux, Xen has never (so far) used alternatives patching for
> memcpy() or memset(), even less such utilizing multiple alternatives.
> Correct the Linux-inherited comment to match reality.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:21:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:21:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118503.224675 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNeG-00073m-Gf; Tue, 27 Apr 2021 13:21:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118503.224675; Tue, 27 Apr 2021 13:21: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 1lbNeG-00073f-Cu; Tue, 27 Apr 2021 13:21:08 +0000
Received: by outflank-mailman (input) for mailman id 118503;
 Tue, 27 Apr 2021 13:21:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbNeE-00073a-KG
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:21:06 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8ec2ecc8-ee4b-4c16-8cc3-143e24368119;
 Tue, 27 Apr 2021 13:21: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: 8ec2ecc8-ee4b-4c16-8cc3-143e24368119
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619529665;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=HxO45XiQmkjoqoXBwjfek8oYkGhQ66n/lVcY1VECMoQ=;
  b=W4JjTq0wbIyfSqFe9cN11CpDG+xBgG2UOdRwxPYfuB8PXj/O+shcDHcG
   OlTARHaJ5NRdcCoPdyWibxr0JT/6gvJhco6z2sRHDAoNPeHHSaZ6XigPp
   sFCFV7fhyada1LyOW6o1xN0W97+bBWr2Ee+OWjtQr23lhAABPLNpgzLCq
   Q=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: vnDHYbU7NcUBsMXUR7JH5xtSe/uFaDm8AcKQkLkAj4xsCLTse4LIbK2AP0HY2YclFG8zJ/USwu
 UBnuR4p2MhTi+8pX+M1JyMlSi2+YWLS5pv545GRSojQ8w8Vzs7QTz6Uqf2x7MlXwhNB9YtedJA
 KsSMMxlLb38sKr+gSs5woKuaxeFNRE5azR9du0qWziEmZsvHwCZw8aF/XkYWzHdrnjFmsZc3+O
 ONqEj+MNNOx7DKT1ps7H6+sfk2Mq4lPliq1JGKXz2PWzUKYsO0ZwmrniH6c0x3X7lWFrkm+rCG
 2wk=
X-SBRS: 5.1
X-MesageID: 42890654
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:sM4/e62pmHhOoTaU6jJVSAqjBR93eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/FIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmtJ1/Z
 xLN5JzANiYNzVHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcBdxi1SYzzrdnFebg9AGJY/Cd
 647s1IuzKvdR0sH7uGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnl4j41VTRTzbA+tV
 XUigCR3NTfj9iX6D/5k1XS4ZNfhcf7xrJ4avCkp8AJJlzX+36VTat7XbnqhkFSnMiO7xIQnM
 DIs1McOa1ImgnsV0WUhTeo5AX6yjYp7BbZuCylqF/uu9bwSj5/K+cpv/MhTjLj50AtvM5x3c
 twtgrz3fonbmK0oA3H69fFTB1snEavyEBS9tI7tHBDTZAYLIZYsI13xjIkLL47ACn45Io7ed
 Mebv302fA+SyL+U1nkpGV1hPSjUnMvdy32OXQqi4i+1jhbm21B1E0IxMATtWdozuNNd7B0o8
 vDKahmj7dIU4s/ar98Hv4IRY+NBnXKWg+kChPcHX3XUIU8f17doZ/+57s4oMmsZZwz1ZM33L
 DMSklRu2Iec1/nYPf+kqFjw1ToeiGQTD7twsZR69xSobvnXofmNiWFVRQHj9agi+93OLyZZ9
 +DfLZtR9PzJ2rnHohEmyfkXYNJFHUYWMoJ/v4mRlO1pN7RIIGCjJ2aTN/jYJ7WVRo0UGL2BX
 UOGBLpIt9b00ytUnjkxDfLXXfAfVH+4IJQHKDW8/N78vlJCqR89iwuzXip7MCCLjNP9oYsel
 FlHb/hmqSn4Um6lFy4q1lBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCR31HuDLRlvctPOHG
 dk1hNK0JPyC6bV6TEpCtqhPG7fpWAUvmi2Q5AVnbDGwsv5ZJUiDNIDVLZqHQvGUzx58Dwa6V
 trWUshfAvyBznugaKqgNg/H+fEbeRxhw+tPIpzsnLQtUKVoOk1XXsFVzuSUcqa6DxeBQZ8tx
 lUyesykbCAkTGgJS8Um+IjKmBBb2yRHfZ7FgifXZ5VnbrqYQl0am+PiVWh+lcOU1uv039Xqn
 3qLCWSd/2OJlZGoHhX3pzn905OenyHc1h9bW17toNBBX3L00wDo9OjV+6W6S+8e1ECyuYSPH
 X+bTweLhhH6vq32BSW8QzyX0kO99ELBKjwHb4je7bc1jeRM4WOj7gBBOIR1o1iLsrSvugCVv
 +/dweZICjjMf4g3xWYqx8eSXBJgUhhtcmt9Azu7WC+0nJ6POHbJ05+QaoHZ/6b9GrpSp+zod
 xEpONwmdH1FGr/atSLk/6KKxFCLw7eum6wQaUDr4tOsac7qbt0GN36XFLzpQZ69SR7CP2xsk
 UUBJlfyvTmHKREesQJYSJX/lYzjr20XQAWmz2zJtV7RE0nin/QAsiA7LXJo4c+G0HpnnqFBX
 Cvtwlmu8rfVySN1bQmG7s9DGRfZk878mlj9oq5BvvtITTvU+FI51yhNHChNJdbVaieAL0Vxy
 wKru2grquydyDi3hrXsiY+CqVS83y/Scf3JA6XA+ZH/5ibPluL65HarPKbvXPSSTGhbV4fip
 AAXUsMbt5bgj1ntbYJ6EGJO+TKi3NgtUBf7zFhnkPs3YbjwF6zJzA5DSTpxrNMXTdSNXCUi9
 /i6ubw7gWk3AR4
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42890654"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O9bMtcuGdsJfnV2JWUmIXG6TSxjQVw3c8fZ/susWrpMkuWuLIKwxjqvDz1pr9iq0Ku3DqoMfKNC7YGfgghbq32ykl9CIIPTZwoSWzVsiY4qcIr1LvymkC/I4L6XTXNQJ3YHFLsgLHPgJE1SWAxmydU9IJ3cSrlLUwdVxALoKhXdNRwcMRayd5PRExPrPVS6f+KAt6M8Zwx4Uw7Q0eNas1iiSjYLzgDSDFhWejjAM7iC4+KH0wuGCRzsNvXDwCBWUUwN4pAxdgZxSv9+5T2actuGyCtDLfqWd1Ug7D4kh2AO25VoQ+ATCt6JuvPkDhMVeD2HR6IdgCGFmrdCEFG86bA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HxO45XiQmkjoqoXBwjfek8oYkGhQ66n/lVcY1VECMoQ=;
 b=dQXhD2WaPA/ripu98+mD/gfaogUK/fndFy+GOGSsGYIIMf5imC6oaQempKs6SN3fJ7x2w4MrC6hqCNCVpcUPtcrP2oxrtPqJ3dA5Apigy1YALQltAUQf8/X9xtOQWMD3DrB5cesxLCzf3a083VQZ1mwNgIhVdFtO5DVL27oQR7XGZsbGXJrcm7G7/UpNcFFZE1O/bNIJvoSsV9uzeUpb7KKny8ZFBGjmzzqpy54jXe102vtl3kng9i0egYyFVT31qN93c35LDQm4E5ZLmf6gB3P5wPhcdGZRnAPYVPS4j/zylmbUjLneNa+gBR3XvJovqPz6ZdXNk5+Rq8vwD7CiHw==
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=HxO45XiQmkjoqoXBwjfek8oYkGhQ66n/lVcY1VECMoQ=;
 b=B34H1y5Y2AV6y4XXnimRDBnVzIjoPkc0wjBOapCFG7B5poa4WT6H1nCErgBaXwOfi0c6VeneP0ETsyyOf5oKv4gj0XMhakxUtoLQV/8RNF7QbgQeL7rY1QHPQdAmxA57u/kw4aCbyKNvP05BTnnBhANID8d9ubPXUuW5AzPhBHI=
Subject: Re: [PATCH 6/7] video/vesa: drop "vesa-mtrr" command line option
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: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
 <afa6121c-42bc-4078-0013-24fa7397fb12@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <7a08eb5b-3281-fb2f-57c8-0fa0fe76c7ff@citrix.com>
Date: Tue, 27 Apr 2021 14:20:54 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <afa6121c-42bc-4078-0013-24fa7397fb12@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0293.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::17) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8ce12dc0-8788-4b40-26c7-08d9097f4d28
X-MS-TrafficTypeDiagnostic: BYAPR03MB4359:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4359ACB03E50F9315664CBB6BA419@BYAPR03MB4359.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5797;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: SwwI5keq+I9x2Aa1aObZMidcbnmCSTs2w/9a8FFxKU9QSIueKOE+B3dUYof2IK/z2G7mvuI3ty7EI7qa1xU4ZOVXZ565pffYdQ7Ak/+b3zKbp1cFmvaQTxhjE3FVwrNGaguO+w5tki5t7MXOPCOXx/w+kShO0Ua/E1NorG4Y9V8m1dLufYmt9jTNKCCciKvd2BGmNThrbD3hvzcn18V0lSScpXMlfma4xz3G6hYG14ILIYIuM/OOv/kk9yhZXSoeqFkwZZoXx8NwHtR7F2/oqb5TzKGITI0qozwBqla9HMb9HkFcQDK4uuO3a18/y2e8HFXEV/OuVHJoFY9t+Xw8UpPG9jyL2L1yQBCeYcFgZ0DMulpLP6OZURxCvKiorsRZaUr4Yn8iMNOTTj8luO4cARyYJZH/l6nhxRLvmMqquxurFYH+xrSVZ+YWypZVGlb7lU4dZOAXzm6YYMaQY/c95P520u+UjWv5xxIYbzcgK58slE5FbiDnkRv39g/TEXn/R0+TwAAOGycH7RocbqpQKKPtqFpGL4cWOFKLCns9UJdpUZtGx3y4c1GTP3K1yUF6EMEhoHdgqP2Q2LuSv32WrzwF/N+6Jt7qEEKHLRGnJ5rSXX8wKZZQ5kRYTnJGu1YAHgewBjlHyMoB8GpwvOaEp8ABk+Ns7jYFvG+2ABQkkAYwBzqlpjDO6iNC6zGUPJ0C
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(366004)(376002)(39860400002)(136003)(396003)(4326008)(6666004)(478600001)(36756003)(107886003)(86362001)(110136005)(53546011)(8936002)(5660300002)(316002)(54906003)(38100700002)(956004)(4744005)(8676002)(186003)(66476007)(16576012)(2906002)(26005)(66946007)(66556008)(31686004)(2616005)(6486002)(31696002)(16526019)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 8ce12dc0-8788-4b40-26c7-08d9097f4d28
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 13:21:01.1158
 (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: gX6s4OX1J29H7e/yWyDyyToU7p8nCcWCyYz71/xVj6oBZkmlQ72CXY7QTrNLoZKpBN0AqRj2cO24ua6w77Sxhoo76b4U5mUHsTUU74R9Oww=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4359
X-OriginatorOrg: citrix.com

On 27/04/2021 13:56, Jan Beulich wrote:
> Now that we use ioremap_wc() for mapping the frame buffer, there's no
> need for this option anymore. As noted in the change introducing the
> use of ioremap_wc(), mtrr_add() didn't work in certain cases anyway.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:31:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:31:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118519.224687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNoY-00085Q-GV; Tue, 27 Apr 2021 13:31:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118519.224687; Tue, 27 Apr 2021 13: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 1lbNoY-00085J-DY; Tue, 27 Apr 2021 13:31:46 +0000
Received: by outflank-mailman (input) for mailman id 118519;
 Tue, 27 Apr 2021 13:31:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbNoW-00085E-HH
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:31:44 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3711e990-4fc5-4190-99e6-8a98ae7551ea;
 Tue, 27 Apr 2021 13:31: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: 3711e990-4fc5-4190-99e6-8a98ae7551ea
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619530303;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=YWKbgukm4XKoHrvXDpW87wh8q/Vmje5ke70McYW2k6o=;
  b=J3yahkiU/PBhKSN4DMG3GDbuyiEjQndO1HSPQ3uByIjmkMmuGEOJPc7e
   l2aBQovVOk2kxDvTFCKwzDDTb4X34hR5Ca4aoeSQ46Eq74SWKXFNIOADY
   6Rvd54FxAtEpT/nIRGkf2960aJnlYLH12XCwCRG3GBtRzLlJptwfvFsJa
   U=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: +L1ODzA2H4Z9vnOQlSjSRcHxwv2hcRKVXIhUH/aXZZCPwIGLaXgiTsFIWLoMKaAu6QEB6leObt
 FnTul0ojgs6SJb7YKEE0vOgiKWQNCoiKTJjrwJxlBhMYly82HYZNsVUpIfJXqYfdqOZSJDERpG
 7N6SCEhHTsQsvQoPrJAvnMpfrq3fRXpFSjpN0jB5dMrip2rnxrafvNIjh1xJUaZGRyWX3dcM9y
 2aJbRpZywgu7sKZ69EkoNE4sgbcYZPt167ogw9e4B3WleRccLnrRPgLprEEr8lPvjfVuuo7v5w
 GOQ=
X-SBRS: 5.1
X-MesageID: 44007917
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:JvxXf6sU3xfTJ7w2IU17dyh97skCxoYji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwQeCBtA50lGJ
 2AoudGvSOnY3QLbsK9b0N1JdTrjdvNiZ7gfFo6HBYh8gaDlneF77T9Hhie0H4lIk5y6J0l9n
 XIlBG827W7v5iAu2Th/kLwz7ATotvuzdNfGNeB4/J6FhzAghulDb4ROYGqkysypIiUmTMXuf
 nK5ywtJsFir07WF1vF3SfF/ynF/HIQ52T5yVme6EGT0fDRYD4hEcJOicZ4X3LimjMdlepx2q
 5KwG6V3qA/ZXir/FWflqr1fipnmUaurX0pnfR7tQ0mbaIkZKJMtotaxUtJEf47bVPHwbo6G+
 pjBty03ocxTXqmaRnizw1S6e3pdHEyEhCae1MFq8yY3hNH9UoJsXcw9YgxmGwN+4k6TIQBz+
 PYMr5wnLULdcMOa7lhbd1xDfefOyjoe1bhIWiSKVPoGOUuPG/MkYf+5PEQ6PuxcJIF4ZMukP
 36IRxlnF93X3irJdyF3ZVN/ByIan66Ry7RxsZX4IU8kqHgRZLwWBfzCGwGoo+FmbEyE8fbU/
 G8NNZ9GPn4N1bjHo5PwknXR4RSE38DS8cY0+xLGm6mk4buEMnHp+bbePHcKP7GCjA/QF7yBX
 MFQXzdP8NFwke3WmLpoRTYVn/3E3aPv65YIez/xaw+2YINPopDvkw+klKi/PyGLjVEr+gXcS
 JFUfbau5L+gVPz0XfD7m1vNBYYJF1S+q/cX3RDohJPF0v1dL0EquiOYGw65grCGjZPC+ftVC
 JPrVV+/qy6a7aKwzo5Nt6hOmWGy1weuWyNVJVZvqGY/8/qdtcZA/8dKeJMPDSOMyYwtRdhqW
 9FZgNBbFTYDCnShaKsi4FRIvreedl6iAKCOtVVtnrbiEWZqagUNzgmdg/rdfTSrRclRjJSiF
 E02bQYmqC8lTGmLnZ6vP41K2RWaGOcAKtPCSOMYIk8oMGtRChACUOxwRCKgRA6fWTns2EfnH
 boIyGvdfbXOVZFoXxD3qH28FR7S3WFcytLGwNHmLw4MV6Dlmd40OeNaKb26WeXZ1cY6sw2MT
 3OY1IpU0hT7uHy8CTQtCeJFH0gyJlrA/fUC647darPnlm3LpeTqK0AF/hI3ZpsOdz0qNUXWe
 aHdwL9FkK/N8oZnyiu4lo1Mih9r3cp1c7y0Br+9W6iwToRB+HRLFkOfcBsH/isq0zfA9CG35
 VygYhr4a+eMmDtZsWHzq+SRThZMR/XqXO3SeZtiZ08h9NHiJJDW73gFR3P3zV7+T97CuHevk
 YXWr5677DMIZUHRb1bRwtpun4S0O2SJ04quDHsCuAwfVsRn2bWVun5lobgmP4KOAm9vwP+Nl
 mUzj1F89rEVyWF06QGC6hYGxUgVGEMrFBj9viFbYveFUGDcPxC5kOzNhaGAfVgYZnAPbUbtR
 Bh5d6U28eRairjwQjV+R92OLhH/WriYcS8Bmu3aKN12u3/HVSHma2x5sGvyB/xVDugckwdwb
 R/SnZ4VLULthASyKst0iazTaTrokUq13tmiAsX6WLF68yB+2fUHUZPLAvDpI5ZNAMja0S1sQ
 ==
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="44007917"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZGjv/N2ZFZY92QInw01b9flEiEuEJm09AD/GB3102Hse3tUeIPI624RCo7rkLUZ9hTvVtHP25/rhsGOIyRsVBleMYJtmFOEY58JRVQy+4MS8oZzs3xy6yUCNMPfeOOAkIsy1A+jr2gYbH11Uzt9Ws0dcxP7SLG1eR1rxnFD57sQqlDuqpO1iq+jeVAnpFmKlkB+MAfS3mO43CXZhkMGX6A1cbfVyis0G+HGBIjK+t/XxCT8h9PoMXPkHzsIpn5rJSu8gEghRBUfXRYuEjfSR9Z/OYiNOKcbWMgJ7Vo73M0iw72B8P9+5m9iBrujV4RhlokQnGzhbh3+hQ+exUb4EOw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=l4qPPYs7ylAFq+D4F8H6y9XshZfXSK7Ok3uVpRHKs3E=;
 b=Ir7lBFGsh1841C4B6UCoYa0gHjy9XUfcyfacSJePm7s9CfdR4jW+90jhbrbW40TNl4cX5zjbPpUpaKgEcpNy1IKQvz46VWVQaOphRgvRSqvVk/ZWyRubOSAlwPmLRUGAGK3DN5MuVRV4/HSYZcGPrNqv0iNGMXAn1K3DfjVfimQAG0SjrUy4tJVsb81z/lpL6q4SHAfx4y7IYsPP1cjZ+nob8kPbFkXtupyPWUOu44CCru9ihvb0Ot9wH09Rak4cidqV4CwURQEJpCpzwzG1tcPYmggKQ4Kwe7o4ApkI0/GK5SFSvBPNU9iOUErMd8RojCQn8bmFy6eBAjhYN08sAw==
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=l4qPPYs7ylAFq+D4F8H6y9XshZfXSK7Ok3uVpRHKs3E=;
 b=cnUXfAYdyKdFCV+p0jyRn+lp/53tjL+n9OklR4CAL0fHJR3P6PkeT4hqR8y36U88c/S6c0opk6zDCkAPcoZQv9YqCFvEmPYbLv7oeJs78QAKSLS21eiU4qIJpSKDXut0C9dRUs7qYDWBPWsjBYol2b9Az5VkxChAGUMoeV7zHGA=
Date: Tue, 27 Apr 2021 15:31:33 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
Message-ID: <YIgSNRq2w7KSSaiD@Air-de-Roger>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
 <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
 <YH7/SvkrB2yGgRij@Air-de-Roger>
 <5170aa51-8e34-3a45-5bf6-c0a187b1c427@suse.com>
 <YIfTyT4rvD9yEqiM@Air-de-Roger>
 <5018479d-b566-a32b-9a01-5ccf01fe0880@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <5018479d-b566-a32b-9a01-5ccf01fe0880@suse.com>
X-ClientProxiedBy: MR2P264CA0143.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::35) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 1f76b496-2eb6-4f6e-06ea-08d90980c9ea
X-MS-TrafficTypeDiagnostic: DM6PR03MB4681:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4681D104955D5586D4A3F0C98F419@DM6PR03MB4681.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4303;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: kQTIC4DUKV/a3H9ibmMumBgHWpQQrM6HrxPc7FnGcsY8I8ZzSHmT4DD2D1LWJCLQgsfVSMn0bDhON+5mdfqhbywIqdjS+5sQkyZtHMSY7T8ApPr2Ml1lGk2GkTiVjXHbYQZVV5hoqtiYVTgr0EpXPJPT97VRSyOnoCzOtkIUu0r9pUl6ck79kWekbO0oZYX8Nrfbxf/t4rvNgG5OKUom7e0aorcPct2CcYn/POt7h78qJwmS99ZVETEi78S92kw5kq82/A8zDDNqc3kKvWchBNhKz9vtmRiYMRfnnJAHr1O9DAK+zXvsv1ii1XSTpeacySLxyBPSIUYS5KCjbzJXbjBnbFkEQR77tdxYO6RdcP2wsR5kd3jzUdsNbmptjpuBSVtTPFNVvSIFLMOphOGI26tRBAv5uBvY3smN1QfURc6C29Gfs3T8F77IvrbJZVJ7UyMc/gUK+WoFFFKW/T2vHD3L0bfoRDiC3/1ruQ0NFexG9asmFAiMIkJoBji+Xdhwl9Ooj9m+4aLJ7pJP1WPWuA3ShbLDynBapgYmps/c0qTi/7ykCjIDasZ7MkbgUEgSDgtWKMp82fYn93zsj7Gf4IhTTHzed6X8158EQZmYvsw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(396003)(376002)(136003)(39850400004)(366004)(346002)(5660300002)(956004)(2906002)(6916009)(4326008)(33716001)(316002)(16526019)(54906003)(9686003)(478600001)(26005)(6486002)(186003)(6666004)(6496006)(85182001)(66556008)(86362001)(8936002)(66476007)(8676002)(66946007)(83380400001)(53546011)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 1f76b496-2eb6-4f6e-06ea-08d90980c9ea
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 13:31:39.8672
 (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: BuSg2MzQeKenmLo6+ZwoG/t2uakzEWx1eMDH5AbBZ1OHO8tJvpd9Dmkxs/nUWQqvs8rcN1Goe4RF+MoBKCJbrg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4681
X-OriginatorOrg: citrix.com

On Tue, Apr 27, 2021 at 02:30:35PM +0200, Jan Beulich wrote:
> On 27.04.2021 11:05, Roger Pau Monné wrote:
> > On Wed, Apr 21, 2021 at 04:09:03PM +0200, Jan Beulich wrote:
> >> On 20.04.2021 18:20, Roger Pau Monné wrote:
> >>> On Tue, Apr 20, 2021 at 05:47:49PM +0200, Jan Beulich wrote:
> >>>> On 20.04.2021 17:29, Roger Pau Monné wrote:
> >>>>> On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
> >>>>>> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
> >>>>>>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
> >>>>>>  	@mv -f $@.new $@
> >>>>>>  
> >>>>>> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
> >>>>>> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
> >>>>>> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
> >>>>>> +	$(call move-if-changed,$@.new,$@)
> >>>>>
> >>>>> Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?
> >>>>
> >>>> Yes and no: Yes as far as the actual file location is concerned.
> >>>> No when considering where it gets generated: I generally consider
> >>>> it risky to generate files outside of the directory where make
> >>>> currently runs. There may be good reasons for certain exceptions,
> >>>> but personally I don't see this case as good enough a reason.
> >>>>
> >>>> Somewhat related - if doing as you suggest, which Makefile's
> >>>> clean: rule should clean up that file in your opinion?
> >>>
> >>> The clean rule should be in the makefile where it's generated IMO,
> >>> same as asm-offsets.h clean rule currently in xen/Makefile.
> >>>
> >>>> Nevertheless, if there's general agreement that keeping the file
> >>>> there is better, I'd make the change and simply ignore my unhappy
> >>>> feelings about it.
> >>>
> >>> I don't have a strong opinion, it just feels weird to have this IMO
> >>> stray asm-offsets.s outside of it's arch directory, taking into
> >>> account that we have asm-offsets.h generated from xen/Makefile into an
> >>> arch specific directory already as a precedent in that makefile.
> >>
> >> Well, asm-offsets.h generation doesn't involve the compiler, hence
> >> no .*.d files get generated and want including later. For
> >> asm-offsets.s to have dependencies properly honored, if we
> >> generated it in xen/arch/<arch>, .asm-offsets.d would also end up
> >> there, and hence including of it would need separately taking care
> >> of.
> > 
> > I'm not sure I understand what do you mean with inclusion need taking
> > care of separately. Isn't it expected for .d file to reside in the
> > same directory as the output,
> 
> Yes, ...
> 
> > and hence picked up automatically?
> 
> ... and hence they _wouldn't_ be picked up automatically while
> building in xen/ if the .s file got created in xen/arch/<arch>/.

Hm, so that would prevent re-building the target when the dependencies
changed as the .d file being in the arch directory would attempt the
rebuild from there instead of the top level xen/?

I guess the alternative would be to force a rebuild of the target
every time, in order to not depend on the .d logic?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:40:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:40:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118529.224699 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbNwy-0000f6-Gp; Tue, 27 Apr 2021 13:40:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118529.224699; Tue, 27 Apr 2021 13: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 1lbNwy-0000ez-DJ; Tue, 27 Apr 2021 13:40:28 +0000
Received: by outflank-mailman (input) for mailman id 118529;
 Tue, 27 Apr 2021 13:40:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbNwx-0000eu-6C
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:40:27 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d0deed7d-9c02-4296-a84b-c5553139defb;
 Tue, 27 Apr 2021 13:40:26 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2DFF2B1A6;
 Tue, 27 Apr 2021 13:40: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: d0deed7d-9c02-4296-a84b-c5553139defb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619530825; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=e0K88bY66T/sELGaa669kb2WYhoeCelsVAdFOgrePek=;
	b=B2h62G1DSzLbn36CgDtN9js73koLTE+aiFaHVnjtgc0CxpvknOVghWdklQFOFX5aWIQT5o
	qcSI4JQ3O+G9rC3T93DcLHNlxyV8vmDzp/2JO4p0L5fBnJB/g8ILkOebi0Fi5Wwno+R5Tu
	9J0SEZm70GTwiYo+Yh55l4+BSMerPTs=
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
 <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
 <YH7/SvkrB2yGgRij@Air-de-Roger>
 <5170aa51-8e34-3a45-5bf6-c0a187b1c427@suse.com>
 <YIfTyT4rvD9yEqiM@Air-de-Roger>
 <5018479d-b566-a32b-9a01-5ccf01fe0880@suse.com>
 <YIgSNRq2w7KSSaiD@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e9a7b3c5-db38-76d8-64ec-2cfd9f46f1fd@suse.com>
Date: Tue, 27 Apr 2021 15:40:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIgSNRq2w7KSSaiD@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 15:31, Roger Pau Monné wrote:
> On Tue, Apr 27, 2021 at 02:30:35PM +0200, Jan Beulich wrote:
>> On 27.04.2021 11:05, Roger Pau Monné wrote:
>>> On Wed, Apr 21, 2021 at 04:09:03PM +0200, Jan Beulich wrote:
>>>> On 20.04.2021 18:20, Roger Pau Monné wrote:
>>>>> On Tue, Apr 20, 2021 at 05:47:49PM +0200, Jan Beulich wrote:
>>>>>> On 20.04.2021 17:29, Roger Pau Monné wrote:
>>>>>>> On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
>>>>>>>> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
>>>>>>>>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
>>>>>>>>  	@mv -f $@.new $@
>>>>>>>>  
>>>>>>>> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
>>>>>>>> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
>>>>>>>> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
>>>>>>>> +	$(call move-if-changed,$@.new,$@)
>>>>>>>
>>>>>>> Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?
>>>>>>
>>>>>> Yes and no: Yes as far as the actual file location is concerned.
>>>>>> No when considering where it gets generated: I generally consider
>>>>>> it risky to generate files outside of the directory where make
>>>>>> currently runs. There may be good reasons for certain exceptions,
>>>>>> but personally I don't see this case as good enough a reason.
>>>>>>
>>>>>> Somewhat related - if doing as you suggest, which Makefile's
>>>>>> clean: rule should clean up that file in your opinion?
>>>>>
>>>>> The clean rule should be in the makefile where it's generated IMO,
>>>>> same as asm-offsets.h clean rule currently in xen/Makefile.
>>>>>
>>>>>> Nevertheless, if there's general agreement that keeping the file
>>>>>> there is better, I'd make the change and simply ignore my unhappy
>>>>>> feelings about it.
>>>>>
>>>>> I don't have a strong opinion, it just feels weird to have this IMO
>>>>> stray asm-offsets.s outside of it's arch directory, taking into
>>>>> account that we have asm-offsets.h generated from xen/Makefile into an
>>>>> arch specific directory already as a precedent in that makefile.
>>>>
>>>> Well, asm-offsets.h generation doesn't involve the compiler, hence
>>>> no .*.d files get generated and want including later. For
>>>> asm-offsets.s to have dependencies properly honored, if we
>>>> generated it in xen/arch/<arch>, .asm-offsets.d would also end up
>>>> there, and hence including of it would need separately taking care
>>>> of.
>>>
>>> I'm not sure I understand what do you mean with inclusion need taking
>>> care of separately. Isn't it expected for .d file to reside in the
>>> same directory as the output,
>>
>> Yes, ...
>>
>>> and hence picked up automatically?
>>
>> ... and hence they _wouldn't_ be picked up automatically while
>> building in xen/ if the .s file got created in xen/arch/<arch>/.
> 
> Hm, so that would prevent re-building the target when the dependencies
> changed as the .d file being in the arch directory would attempt the
> rebuild from there instead of the top level xen/?

No, in the arch directory nothing should happen at all, as there's
no rule to rebuild asm-offsets.s. And if we built it in the subarch
directory (where asm-offsets.c lives), the wrong rule would kick in
(the general one compiling C to assembly).

> I guess the alternative would be to force a rebuild of the target
> every time, in order to not depend on the .d logic?

Simply rebuilding always is not going to be good: There should be
no re-building at all when actually just installing Xen. Hence
while move-if-changed would be able to suppress the bulk of the
fallout, this would still be too much rebuilding for my taste in
that specific case.

The option I've been hinting at was to explicitly include the .d
files from the arch dir. But I don't really like this either ...

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:49:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:49:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118538.224711 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbO5y-0000y3-E3; Tue, 27 Apr 2021 13:49:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118538.224711; Tue, 27 Apr 2021 13:49: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 1lbO5y-0000xw-Au; Tue, 27 Apr 2021 13:49:46 +0000
Received: by outflank-mailman (input) for mailman id 118538;
 Tue, 27 Apr 2021 13:49:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbO5x-0000xr-3v
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:49:45 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1e22a430-b5ea-427f-b2f2-7b201dccc6eb;
 Tue, 27 Apr 2021 13:49: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: 1e22a430-b5ea-427f-b2f2-7b201dccc6eb
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619531383;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=myd1toTVqBSZ/mDSJU313TzT1RmUg/niLq4KzAKmSV8=;
  b=ZUo3K5IIVEDJzW1Kue3DxXTDYg7/tS+vyMKkWBPf9OSiVk3ECBRBqKSC
   9urWbHoDM5GKw8iXBBNxxFQCnOHcfeY2FxBxGKFLtIcv2uxFgK1xdvLT+
   W5LXcG9dwaHYZl4CRFbEI3BVXAEWn7fNw+GHEQqQW+6EkIX7h/XXsgvxt
   U=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: vYiV2VBx7Lot6df5TsSArbAITVBuqz3OmY4JLWQZ+RX/X/gm/UYsVFoq6BsOVPXODs0bxKYdAS
 TLG6o/T2FENnAOMxhBrGjoKueBTDZrvotzdm9T/PZEmVcmyD1VH4tYK7ZIJCEseS8jDYiNxK7K
 EoGce7lg/aXjVCZYs8/FNYvpu07pSYRz6bjC9WDc6mrhqsAPjuGxjlE6YqoxgulhAe2fn87/J0
 WxDkX/ot8QJmE+kFuhWzO1e94hfxYeiaVXpEel80KHAdn9Rc/Gs6izE5QK0VQNfOBIvX7sya+m
 MC8=
X-SBRS: 5.1
X-MesageID: 42503665
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:KJDiTqML2XU8R8BcT2zw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsa9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrwHIMxbVstRQ3a
 IIScVDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RZQZCtBApsQijtRIACdD0FwWU1iDZ02CJ
 KT6qN81kWdUF4Qadm2AWRAYvPKoMfFmImjTRkNARMm7wfmt0LV1JfRFR+E0hACFw5e2LtKyx
 m5ryXVxIWG98u6xBjVynPJ4/1t9ufJ59NfCKW3+7AoAxr2jALAXvUHZ5Sju3QPrPir+BIWlr
 D30m0dFuBSz1+UQW2vuxvq3GDboUUTwlvv00WRj3emgeGRfkNCN+N7iYhUcgTU5iMb1bkWus
 I7vBPti7NtARzNhyj77dTTPisa8nacmnY+jfUVy0VWTIp2Us4gkaUk4EhXHJ0cdRiKjrwPLe
 8GNrC/2N9ra1+AK1jWsm5zqebcJUgbL1OtR0gPvdGtyD5GnHx15Ftw/r1vol4wsL06UJVK/O
 LCL+BBk6xPVNYfaeZHCP4GWtbfMB2DfTv8dEapZXj3HqAOPHzA77bx/bUO/emvPLgF1oE7lp
 jtWE5R3FRCNX7GOImr5tlm4xrNSGKyUXDG0cdF/aV0vbX6Wf7CLTCDYEpGqbrin9wvRungH9
 qjMpNfBPHuaUH0H5xS4gH4U55ObVEDTcwuvMohUV7mmLOKFqTa8sjgNNrDLrvkFjgpHknlBG
 EYYTT1LMJcqm+xXHvVhwXQRmPNdkTz8YkYKtmew8EjjKw2cqFcuAkcjlq0ouuRLydZj6AwdE
 xiZJPr+5nL4VWezCLt1SFEKxBdBkFa7PHLSHVRvzIHNEvybPIms9WbcmZC4WufKnZEPoTrOT
 8ag24y1bO8LpSWyyxnIcmgKHimg3wao2/PaJsAhKuZ54PAdokjBpgrHIx9fD+7ViBdqEJPki
 NueQUETkjQGnfFkqO+lqEZA+nZap1bmwekIcldrFrFrkWCrcQTRn8WNgTeE/K/sEILfX55l1
 dx+6gQjP6rgjC0M1Yyh+w+LRlxcmiNOalHCw6EfY1QvbjudGhLPCG3rA3fryt2Vnvh9k0UiG
 CkCSGPY/nEDmBQvW1i3r/w/El5cXiceExMeml32LcNZ1juizJW66umd6Cz22yeZh85zuYRPC
 rsTBESLgltrurHniK9qXKnLzEL158uNuvSAPAfaLnVwGqqM5DNv7oBBeVo8JFsM83OvucHXf
 mEQRKcKCr1BooSqlWoj0dgHBMxhGgvkPvu1hGg0XOx22QnB+HOZHthXLMWLrinniHZbsfN9K
 88q907veG9aDqsLvGHzLzadD5FJFf4p3WsQ+QhtJBTuuYTudJIbu7meAqN8EsC+hM0aPrQvg
 c5Zo9Q5bjaII9hf8AIYUtijxEUveXKCHFuixD8B+81QEokgHDaNe6Y+ragk8taPmSx4C/LfW
 SF+yJT//35TzKO+L4TBaU3O3lXYiEHmQJf1dLHU43bEwOxce5fuHK8L3+mabdYIZL1VIk4n1
 Jf49uSmfWQeDe98AfMvSFjKqYL12q8W8u9DEatHuFPmubKdWiks++P4MSpii3wRib+Q0MEhZ
 ddfUhVV/99sFAZ/cUK+xn3bLf2rEIjm0Zf5j8itmeF4PnZ3E7rWWdcMQPYhZ1KWyJ0KXbgt7
 WczdSl
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42503665"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kftpUsl9ahP770wUgFRuWwpNgPC+56o2XxJdQcTGHGrttwoOg6GV4s/+heapQAT8fS4aeSITOXBNeA+qAP8hmGjBnopDUQCBGJz6EJTGAs54zo28ewDxFzhtsVrINR/nQt4r4VmT9om1SH3cwElNPng0Vn6AGzFHkd0CP11QALCZyXwJ5+2lKALfM9JXnAcdM2uNL/hfczSZTzKcKHPOX/c8cD4TCNfzoEwyVwauGacKdICCkOyjNeHDrLcY4QXYdeEL77qUeR670IoekO4GXJstdEJBgAq5fZUo0neikOsF6kz1fIf8YXtCkjAlbE+n0EHhyfbSQNf19JcAOX4QRQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bwtXDBCQ26b6RTnXMLuKc9pHWYZut9qbFGnhyFz+F5I=;
 b=jNrCAS8lw4oqq4UIspTGfcrA48V9Q1TVNyo8vd3qd5y5/jWX0I2HWrKD4E2tthB/Bf28v6XIO/B6Tt9acve9xaeEVjzatUqQ1R0GSux8ysL+m2jbxqVnbuhfaPQ92wZhcFvcCqad5aCp+vIr3PKbZhyvi+kw1MKDNIfSl5ZZWZk4pUJWoQ+s2VRqhH6k4wAoUPK4vo/lMQwlfncI3WPSmFKEFzB96Z+hGB8uH6HJBcRRiKcw1oGNkJU4WhlB7ICbJY/P/1lH2hk2vXZ89gC3qk9HvJ7JRGJB2jjD6EtMFzJoMXvX7xpFYnNgVtTTUL9JNU4yGlcM7NioPp90OghaVQ==
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=bwtXDBCQ26b6RTnXMLuKc9pHWYZut9qbFGnhyFz+F5I=;
 b=dE0E3yB3JkJRj9EZLmLGJeitWH8inMR8xuIE4yU+A3A/vELlHph3/kZ6Zvle8dbk84jPGr+xIuQ3RM56A/XfZnvn9jklw7HL1OwbBV94n/OpW1tIbU/eNG+vDU9hwXUsV+4vlUt8oHxCITV2wZXa4joGDalE2muIZviRjCYw2r4=
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: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
 <7e3f69d7-23e8-397d-72b6-8c489d80ea45@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 7/7] video/vesa: adjust (not just) command line option
 handling
Message-ID: <3e04b606-4e4f-e181-d3be-bcf99a2c8fa2@citrix.com>
Date: Tue, 27 Apr 2021 14:49:12 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <7e3f69d7-23e8-397d-72b6-8c489d80ea45@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0014.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:a6::26) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 94f8cd40-142f-48d6-0cfb-08d9098340f9
X-MS-TrafficTypeDiagnostic: BYAPR03MB4871:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB48716FF1ED7DE4E52732E715BA419@BYAPR03MB4871.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3383;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Kfilim/Fzurdi67iT1rnQ5KmmZFt7Kj0DqyWeU3SEV8xJZAGX+wtnmjpB3jK4Eop0yoLxTVeEA6cLz9NNxhT+rHp04AVUlqu+dQXKtjt1CgyNdr4cpFnHRTT3gMpD2xM+WNruR8Ic59WiPhRbQw9Tf6xRjANEE1C+oGIminTQ6jshc0Yr+Pd+lckoRRIW8VgcHhKF1tVoZxUEkdGw/dLSiESQR8FNHPdk2zfsVOj3g9KkHj9uNY0SnEGoEbAxyzmWZU9+NmwJ1mupuvK6ySaLYBYuWebdEzF6yTYTkbHACh57Pbw0jBTFIT/8D3B0BVuDVzjOLsEV4Xjg1iAdo7upFAoPEoLVAqBCfTQJvalsiBipWVP98qvj2xnIRvGXqgZzq0oMqa74eA+L3p/6vKrBcxR7hSOCpxEMkdCYI09GldvZRSj48O3eoq/DiTzaFRQLveob66SeurcaBRSfYpxEHNM0PXiW+KEG4IXWcRSYapbghHi3CqpiaM/CFFaPGwm/xlAZEaKweM6lexT/F5Z5U5hYsIsFMZdxNuEJ3ZQumcAmOp47EwFOQIM8Es4+EkckIolJbKlH2fsbMQ9O7iTvT2xb8ZOlCH43RfmUe0pjh5HBNoUUSYrBx63MNQFXzanq7pQ1ccoePzi/DzMTMP1/t9zepno3BCfFaRxjax+K3BVH3XitS45D7FUVIpDHQfY
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39860400002)(366004)(136003)(346002)(396003)(66476007)(16576012)(8676002)(31686004)(316002)(5660300002)(66556008)(66946007)(2906002)(54906003)(4326008)(86362001)(186003)(107886003)(38100700002)(8936002)(36756003)(16526019)(6666004)(2616005)(26005)(956004)(31696002)(53546011)(110136005)(6486002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?dHFsdHdRN2hFaG5SY3NHeTVlYlhRcStRWDh0Nyt6Rm1aSGNyY0M5UEJYS0xL?=
 =?utf-8?B?MXpwQ2Jjay9sbTJJUlRleGFXUGR1K2VVdHJidGZtUkZsUXNURkZKUTkwT2VN?=
 =?utf-8?B?d0c1bDR3V1oyL2pjbkZUU2IyOFZFT05GbVAyOFBNb0N4b3RYcmpKa2pBVXlN?=
 =?utf-8?B?Ym5MdHBObXdudHQ2WWJ0REU1dVBFNnl1RmZaYmtzem1aVnd1V0UzRVNqWWVN?=
 =?utf-8?B?a002WjlDWGR6V1IwUHljOWs2MkF3S1k2TDVJNHhVSVNMb2xPNWV6d1JhcHhI?=
 =?utf-8?B?R3d0dEhIK1h4K2hmVVU5Z3hkTlQxemMwdStVZlN5ZzA2dE1BRGx2MkNxNXJG?=
 =?utf-8?B?TENLcytuQ1BDaE5GREgydmgyV2NTQ045OFp2eDllZTZhTmxHbU91UHhXY1li?=
 =?utf-8?B?KzJUR2Z3TVExRW50UDhJZ2N1R1F5Nk9VaTJHOXBPKzJFWS9qU1ovaldsQ0xY?=
 =?utf-8?B?NGlUK0oxSkp4K0RlNHZKaDlKQ2FVOXQ4V3RoK3lUNkxDb29la0l0MFBRY1ZH?=
 =?utf-8?B?aU5LUUlQV1V6K09XL0F6T0tjTDZJRUpUOHMzVnp5R2FaVVgwSDBUOENOL2ha?=
 =?utf-8?B?TDlKc0NSSjl5bWFka0p1aHZ4WXFMNFMzU0taR0djVGJHUWlYbnJ4ZU1yZGRN?=
 =?utf-8?B?ejcxTUJ1ZkV5TEo1dTBNMkdRVlBEOGNhbzdyODhlaHVPb1JDaU1DNEtSWVVj?=
 =?utf-8?B?ZzZ0U09IWmFsQjMyR3JwdFVrcE12L2RQNFBHWnNYTDIwamxMbCs3WEVNRmtt?=
 =?utf-8?B?bjRJaHJXNVZjYkRPcUM3QStUSVdHZUNLZzFFVDRLNi9hMUFVTmlrUUlra1dp?=
 =?utf-8?B?Q2ZRYWxDNFBrY0N1dEpvQUFwWUhUOUJnNEpCR3REWFhXd2k0L0FqMFc1bnVD?=
 =?utf-8?B?YStFNjVmNGl0SER0N0pZOXBEbE5lWTB4eVFjRlRsbVRIblFzNDgyak5aaGE5?=
 =?utf-8?B?QjVtZTRDQXkxQXhMRjdsNXlZRzNYeUR4TDZhUUh0KzE0ZmZOeHlnKzdUSUhD?=
 =?utf-8?B?bmFvdXFGWjdYOVY3Z0EycGJ5cmxZdys1ZG12dk1uakJYY2M1OTVLN2pQU1Rt?=
 =?utf-8?B?YzNvQXZpOTVabWpqS2JOOGxGN29GY0pMTjRmZ2NDcm9sMUxlU2R5d2VkYjRz?=
 =?utf-8?B?N0hhOTBXeG13UmZBbjZMWEVKNld4U1gvM0ZmTlVvZGxZK2ljRVd2dlFYR0xw?=
 =?utf-8?B?QnhQbEpOUE1GMkxOQThQeFQyUkNaeEpCVzZseGJLb0ovRzNLUTVuSDZXaER3?=
 =?utf-8?B?SG1pZlV3dzl3TWtJSk9YS0dLQ1BIbWVUbHZIWkp3SUkzcXNLWWZMVy9UUDl3?=
 =?utf-8?B?VzVZMG9pOHdtWHVHekRualE1RE9lTGpKY0EydkZJd0ZnSGpybXBJMkRMNmk4?=
 =?utf-8?B?NXp2YkxVcnRWeWNzaTB6OEdDNHR2c095ODk2RFQxSEdwWW9ZaENkUjZRSngz?=
 =?utf-8?B?anZ2Yk9VcldmOFByU3hSZkx5bTN0SWZUd0pnMTIxVmNXdHl4aldSNjdlZkxy?=
 =?utf-8?B?N0d2dGd0VUtyOExJNVRya2lSSmF4cHRQNTBBcG5ianpUaE9iSng5ajBybWRw?=
 =?utf-8?B?cjFKZnhWLzRBT05qOVlyOEw4U1Q5VXZtNUZWaXI5cWZBaFVuV3lSQWtLdmkv?=
 =?utf-8?B?SHhlNFNtRWdnWDdaMHllZG9pRkxFKzBudk1TQ0thK05jZytxR3ZnekE5NlMz?=
 =?utf-8?B?S3JPZi9MQWd1M3dTMllRbjkxU1hjdGY1d21FRjcxOEZTRUpaQWovTjFkc1Ax?=
 =?utf-8?Q?ni8bGRQtuJaB3RNmCDXRBYNffXnemkSmukU1KBS?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 94f8cd40-142f-48d6-0cfb-08d9098340f9
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 13:49:18.8023
 (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: zPZeonURZwYsZe1ESqAjJXTGGvc/golBuv4vKwiHM5anskO9kKpfRaI5TS/L34irmotHgx/NZIGz4dQM1Y0M5XfAmy4Od+IMeh7bQ82ZVQc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4871
X-OriginatorOrg: citrix.com

On 27/04/2021 13:56, Jan Beulich wrote:

The grammar in the subject is very awkward.=C2=A0 The (not just) like that =
is
weird.

If it were me, I'd phrase this as "minor adjustments to command line
handling".

> Document both options. Add section annotations to both variables holding
> the parsed values as well as a few adjacent ones. Adjust the types of
> font_height and vga_compat.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

In principle, Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>, with
one note below.

However, is there really any value in these options?=C2=A0 I can't see a ca=
se
where their use will result in a less broken system.

>
> --- a/docs/misc/xen-command-line.pandoc
> +++ b/docs/misc/xen-command-line.pandoc
> @@ -2369,9 +2369,21 @@ cache-warming. 1ms (1000) has been measu
>  ### vesa-map
>  > `=3D <integer>`
> =20
> +> Default: `0`
> +
> +Specify, in MiB, the portion of video RAM to actually remap.  This will =
be
> +honored only when large enough to cover the space needed for the chosen =
video
> +mode, and only when less than a non-zero value possibly specified throug=
h
> +'vesa-ram'.

"and only when less than a non-zero value possibly specified" is
confusing to follow.

What I think you mean is that vesa-map will be honoured when it is >=3D
chosen video mode, and <=3D vesa-ram?

~Andrew

> +
>  ### vesa-ram
>  > `=3D <integer>`
> =20
> +> Default: `0`
> +
> +This allows to override the amount of video RAM, in MiB, determined to b=
e
> +present.
> +
>  ### vga
>  > `=3D ( ask | current | text-80x<rows> | gfx-<width>x<height>x<depth> |=
 mode-<mode> )[,keep]`
> =20
> --- a/xen/drivers/video/vesa.c
> +++ b/xen/drivers/video/vesa.c
> @@ -19,17 +19,17 @@
> =20
>  static void lfb_flush(void);
> =20
> -static unsigned char *lfb;
> -static const struct font_desc *font;
> -static bool_t vga_compat;
> +static unsigned char *__read_mostly lfb;
> +static const struct font_desc *__initdata font;
> +static bool __initdata vga_compat;
> =20
> -static unsigned int vram_total;
> +static unsigned int __initdata vram_total;
>  integer_param("vesa-ram", vram_total);
> =20
> -static unsigned int vram_remap;
> +static unsigned int __initdata vram_remap;
>  integer_param("vesa-map", vram_remap);
> =20
> -static int font_height;
> +static unsigned int __initdata font_height;
>  static int __init parse_font_height(const char *s)
>  {
>      if ( simple_strtoul(s, &s, 10) =3D=3D 8 && (*s++ =3D=3D 'x') )
>




From xen-devel-bounces@lists.xenproject.org Tue Apr 27 13:57:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 13:57:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118548.224723 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbODg-0001v4-88; Tue, 27 Apr 2021 13:57:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118548.224723; Tue, 27 Apr 2021 13:57: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 1lbODg-0001ux-4I; Tue, 27 Apr 2021 13:57:44 +0000
Received: by outflank-mailman (input) for mailman id 118548;
 Tue, 27 Apr 2021 13:57:42 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbODe-0001us-IT
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 13:57:42 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dc7b1868-b9dc-464b-85a4-1ebf76e5a6a4;
 Tue, 27 Apr 2021 13:57:41 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 219D7B1AC;
 Tue, 27 Apr 2021 13:57: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: dc7b1868-b9dc-464b-85a4-1ebf76e5a6a4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619531860; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Ziu448iwVTiu7zaHwT9INHVOOxgt9JVGpigiLE7MrRk=;
	b=jjHNKuNR7NxOuAmN3xbMj0VPV2yztQFMmCmPeUyV+Bjr4zRA1SoWbQnl8SX1hlL4CxIHCK
	fNE+O2jS6wRtP1Y9igFl1+7lUXD3PpYyJONRakmDqVfP0aUbO4MtCFwgLdA97IzdY9kVpI
	KumZKZGENvfKW6K+asyVvZreAEkqgAo=
Subject: Re: [PATCH v3 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210426153741.26904-1-luca.fancellu@arm.com>
 <20210426153741.26904-4-luca.fancellu@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
Date: Tue, 27 Apr 2021 15:57:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210426153741.26904-4-luca.fancellu@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 17:37, Luca Fancellu wrote:
> --- a/docs/hypercall-interfaces/arm64.rst
> +++ b/docs/hypercall-interfaces/arm64.rst
> @@ -8,6 +8,7 @@ Starting points
>  .. toctree::
>     :maxdepth: 2
>  
> +   arm64/grant_tables
>  
>  
>  Functions
> diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hypercall-interfaces/arm64/grant_tables.rst
> new file mode 100644
> index 0000000000..8955ec5812
> --- /dev/null
> +++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
> @@ -0,0 +1,8 @@
> +.. SPDX-License-Identifier: CC-BY-4.0
> +
> +Grant Tables
> +============
> +
> +.. doxygengroup:: grant_table

I continue to object to this giving the impression that grant tables
are something Arm64 specific.

> @@ -66,6 +67,7 @@
>   *     compiler barrier will still be required.
>   *
>   * Introducing a valid entry into the grant table:
> + * @code
>   *  1. Write ent->domid.
>   *  2. Write ent->frame:
>   *      GTF_permit_access:   Frame to which access is permitted.
> @@ -73,20 +75,25 @@
>   *                           frame, or zero if none.
>   *  3. Write memory barrier (WMB).
>   *  4. Write ent->flags, inc. valid type.
> + * @endcode
>   *
>   * Invalidating an unused GTF_permit_access entry:
> + * @code
>   *  1. flags = ent->flags.
>   *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
>   *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>   *  NB. No need for WMB as reuse of entry is control-dependent on success of
>   *      step 3, and all architectures guarantee ordering of ctrl-dep writes.
> + * @endcode
>   *
>   * Invalidating an in-use GTF_permit_access entry:
> + *
>   *  This cannot be done directly. Request assistance from the domain controller
>   *  which can set a timeout on the use of a grant entry and take necessary
>   *  action. (NB. This is not yet implemented!).
>   *
>   * Invalidating an unused GTF_accept_transfer entry:
> + * @code
>   *  1. flags = ent->flags.
>   *  2. Observe that !(flags & GTF_transfer_committed). [*]
>   *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).

Since neither in the cover letter nor in the description here I could
spot a link to the resulting generated doc, I wonder what the
inconsistencies above are about: You add @code/@endcode (and no blank
lines) to parts of what's being described, and _instead_ a blank line
to another part. I think the goal should be that not only the
generated doc ends up looking "nice", but that the source code also
remains consistent. Otherwise, someone like me coming across this
later on might easily conclude that there was a @code/@endcode pair
missed.

> @@ -97,18 +104,23 @@
>   *      transferred frame is written. It is safe for the guest to spin waiting
>   *      for this to occur (detect by observing GTF_transfer_completed in
>   *      ent->flags).
> + * @endcode
>   *
>   * Invalidating a committed GTF_accept_transfer entry:
>   *  1. Wait for (ent->flags & GTF_transfer_completed).
>   *

Why did this not also get enclosed by @code/@endcode?

>   * Changing a GTF_permit_access from writable to read-only:
> + *
>   *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writing.
>   *
>   * Changing a GTF_permit_access from read-only to writable:
> + *
>   *  Use SMP-safe bit-setting instruction.

And these two?

> + * @addtogroup grant_table Grant Tables

And no blank (comment) line ahead of this?

> @@ -120,24 +132,26 @@ typedef uint32_t grant_ref_t;
>   * [GST]: This field is written by the guest and read by Xen.
>   */
>  
> -/*
> - * Version 1 of the grant table entry structure is maintained purely
> - * for backwards compatibility.  New guests should use version 2.
> - */
>  #if __XEN_INTERFACE_VERSION__ < 0x0003020a
>  #define grant_entry_v1 grant_entry
>  #define grant_entry_v1_t grant_entry_t
>  #endif
> +/**
> + * Version 1 of the grant table entry structure is maintained purely
> + * for backwards compatibility.  New guests should use version 2.
> + */

In case I didn't say so already before - I think this would be a good
opportunity to drop the comment pointing at v2. With v2 optionally
unavailable altogether, this can't possibly be a generally valid
course of action.

> @@ -451,11 +465,6 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>   * bytes to be copied.
>   */
>  
> -#define _GNTCOPY_source_gref      (0)
> -#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
> -#define _GNTCOPY_dest_gref        (1)
> -#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
> -
>  struct gnttab_copy {
>      /* IN parameters. */
>      struct gnttab_copy_ptr {
> @@ -471,6 +480,12 @@ struct gnttab_copy {
>      /* OUT parameters. */
>      int16_t       status;
>  };
> +
> +#define _GNTCOPY_source_gref      (0)
> +#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
> +#define _GNTCOPY_dest_gref        (1)
> +#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)

I guess I didn't express myself precisely enough: I think these
would better live _immediately_ next to the field that uses them.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 14:01:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 14:01:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118552.224734 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbOHD-0002qs-OP; Tue, 27 Apr 2021 14:01:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118552.224734; Tue, 27 Apr 2021 14:01: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 1lbOHD-0002ql-Ky; Tue, 27 Apr 2021 14:01:23 +0000
Received: by outflank-mailman (input) for mailman id 118552;
 Tue, 27 Apr 2021 14:01: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 1lbOHB-0002qa-Gv
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 14:01: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 1lbOHA-0000Ep-7b; Tue, 27 Apr 2021 14:01:20 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbOHA-0005Cy-09; Tue, 27 Apr 2021 14: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=QOz5+fD2+ZaOVs72M29oHJ/kbi7jMnLM1FKQY/BV/rg=; b=hJjfWasN0DLsk/g3kwzBqQDBzB
	TGCNxxb2kehZKAgg8d03/1OSuS04CMPB1SU33/pUcjQyR0x5XgGoN2r5xWWUsMuO1wQ8YDtkDlJvs
	GjZ+5ZKRtBvvhUaoI5LzJjI0FVwdE6bRZnXP+MIm8HzIRBaGRfczv67ukIcLtv7Xn1tw=;
Subject: Re: [PATCH v3 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Jan Beulich <jbeulich@suse.com>, Luca Fancellu <luca.fancellu@arm.com>
Cc: bertrand.marquis@arm.com, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20210426153741.26904-1-luca.fancellu@arm.com>
 <20210426153741.26904-4-luca.fancellu@arm.com>
 <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <f9ac61bd-13d1-c6a0-cbc7-85b4121f974a@xen.org>
Date: Tue, 27 Apr 2021 15:01:17 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

On 27/04/2021 14:57, Jan Beulich wrote:
>> diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hypercall-interfaces/arm64/grant_tables.rst
>> new file mode 100644
>> index 0000000000..8955ec5812
>> --- /dev/null
>> +++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
>> @@ -0,0 +1,8 @@
>> +.. SPDX-License-Identifier: CC-BY-4.0
>> +
>> +Grant Tables
>> +============
>> +
>> +.. doxygengroup:: grant_table
> 
> I continue to object to this giving the impression that grant tables
> are something Arm64 specific.

+1, grant tables is common interface so why do they need to be described 
per arch?

I haven't looked at the history of the patch, but if there was some 
rationale about this approach, then this ought to be written in the 
commit message or at least after (---).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 14:04:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 14:04:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118561.224747 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbOK5-00032i-Bs; Tue, 27 Apr 2021 14:04:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118561.224747; Tue, 27 Apr 2021 14: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 1lbOK5-00032b-8q; Tue, 27 Apr 2021 14:04:21 +0000
Received: by outflank-mailman (input) for mailman id 118561;
 Tue, 27 Apr 2021 14:04:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbOK4-00032W-9w
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 14:04:20 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e5b71c7f-10d2-4a31-912f-e075cb0c0e25;
 Tue, 27 Apr 2021 14:04:19 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A3DF8B1AB;
 Tue, 27 Apr 2021 14:04: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: e5b71c7f-10d2-4a31-912f-e075cb0c0e25
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619532258; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=irnD8H+Ltmvio0+MIZZ5Td0oWNCdmHTWC4V6hkG+DG8=;
	b=hpMcwtclNRBJ7t9z68H7RwrhNIzDMAP/mgKEq3+HhU9wZxMUmVFMWLdZNYFwpQ7JhQFrxi
	DaaBQ52HwQSnAB/g/6U1JPXo0vxCyUD/Q0LbbEHCMgItVEhkEE2U3WFlfWWyv5UNV75gz4
	6t1Q9y+18AxQgodv527g1UEQnzZII/o=
Subject: Re: [PATCH 7/7] video/vesa: adjust (not just) command line option
 handling
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: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
 <7e3f69d7-23e8-397d-72b6-8c489d80ea45@suse.com>
 <3e04b606-4e4f-e181-d3be-bcf99a2c8fa2@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3aadebaa-5a0b-e21b-c86a-289c2fae5d44@suse.com>
Date: Tue, 27 Apr 2021 16:04:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3e04b606-4e4f-e181-d3be-bcf99a2c8fa2@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 15:49, Andrew Cooper wrote:
> On 27/04/2021 13:56, Jan Beulich wrote:
> 
> The grammar in the subject is very awkward.  The (not just) like that is
> weird.
> 
> If it were me, I'd phrase this as "minor adjustments to command line
> handling".

Well, the (not just) is intentionally there because there are changes
to stuff unrelated to command line option handling as well.

>> Document both options. Add section annotations to both variables holding
>> the parsed values as well as a few adjacent ones. Adjust the types of
>> font_height and vga_compat.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> In principle, Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>, with
> one note below.

Thanks.

> However, is there really any value in these options?  I can't see a case
> where their use will result in a less broken system.

Well, if we mis-detect VRAM size, the respective option might indeed
help. I'm less certain of the utility of the mapping option, the more
that now there's no possible (and implicit) effect on MTRRs anymore.

>> --- a/docs/misc/xen-command-line.pandoc
>> +++ b/docs/misc/xen-command-line.pandoc
>> @@ -2369,9 +2369,21 @@ cache-warming. 1ms (1000) has been measu
>>  ### vesa-map
>>  > `= <integer>`
>>  
>> +> Default: `0`
>> +
>> +Specify, in MiB, the portion of video RAM to actually remap.  This will be
>> +honored only when large enough to cover the space needed for the chosen video
>> +mode, and only when less than a non-zero value possibly specified through
>> +'vesa-ram'.
> 
> "and only when less than a non-zero value possibly specified" is
> confusing to follow.
> 
> What I think you mean is that vesa-map will be honoured when it is >=
> chosen video mode, and <= vesa-ram?

Yes. Any suggestion how to improve the wording without using >= and
<= ?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 14:13:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 14:13:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118569.224759 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbOSv-00041b-8r; Tue, 27 Apr 2021 14:13:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118569.224759; Tue, 27 Apr 2021 14:13: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 1lbOSv-00041U-5k; Tue, 27 Apr 2021 14:13:29 +0000
Received: by outflank-mailman (input) for mailman id 118569;
 Tue, 27 Apr 2021 14:13:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbOSt-00041P-LE
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 14:13:27 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0f0ffec1-eedd-4db6-bf62-2454ab1822f1;
 Tue, 27 Apr 2021 14:13: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: 0f0ffec1-eedd-4db6-bf62-2454ab1822f1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619532806;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=5vRfZ76jKmud33To7lIgl3dm994iuL0j5sMVzXUbJKo=;
  b=ZPrjvUJeD1g8FjIFmmHR3M8140fq3tXZLiY49t9yhlnv3SppukRnICqL
   6pFox+UV28WdRajE2l4HxCts7Pf7kY7gfudVN3CfjkGt8ZNwu0uH4tlWx
   KfOeBj8QjG0ipVb63kKfaVohfUyM505fe6pG+UmTQisDMb22krB+pvYni
   M=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: hVRqE7I6v8c+CMYcuoj5RoKAMPBaX+579rOFwTz1Q2ZeNFipWijvHXWQOcHATO1+ITBLFN1SIi
 osoyWej5fd25JEsmHNcOLhCn6InjNBTETF+JzDEMk4Z0LdqOTibUxiORerVC6MQ70mzqnWw83F
 t2qTaK6AU/C1KS/r2CltIcrIl9WqooQ9gsWDBGy/nvX6LaDMlfKgzRB+07LucvkNfWPXaZQJXO
 k4NetObZjozI6XrkoviHTKPgzUCTosCYwJaATQm4hrc/51bN5S2HIMiQ+dkh7GzQnG1rSBFeqf
 H+Y=
X-SBRS: 5.1
X-MesageID: 42630621
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:ZTxqiaDsH4ITD5DlHehTtMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VfdMgXE3Kpm2a
 9kGpIUNPTZB1J3lNu/xQG+HcopztXvytHRuc71yXBxQQZ2L4Rp6AlkAgiWe3cGPzVuL5w/CZ
 aa+457tyOtEE5nJviTK3EZU4H41rn2vb38ZxpuPX8awSmIyQil8bvrVyWfty1uKg9n5ZcH3S
 z7nxfi5qOl2svLgSP082PI9ZxZlJ/A57J4dauxo/MYIDntlQqkDb4JM9Hs0gwdm+2h5E0nl9
 PBuX4bTqJOwknMdWK4qwaF4XiC7B8S6mTvwVLdoXzvrd2RfkNeN+N9hJlUehac1kw4vNsU6t
 Mo40ulsfNsbS/orWDY3ZzlRhtqnk27rT4JiugIlUFSVoMYdft4sZEf1Fk9KuZMIAvKrKQcVM
 V+BsDV4/hbNXmAaWrCg2VpyNuwGlwuAxa9RFQYsMD96UkboFlJi28jgOAPlHYJ85wwD7Ne4f
 7fD6hunLZSCugbcLx6H+VEZcesEGTCTVbtPQupUBraPZBCH0iIh4/84b0z6u3vUocP1oEOlJ
 PIV04djkoJP3vjEtePxoBG/zrKR3+gWTj37NpRjqIJ9YHUdf7OC2muWVoum8yvr7E0GcvAQc
 u+P5pQHrvtNm3rFYFV3xDvWpVbJHUEOfdl+uoTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8CUVHIVYZ9x3HufkW9rAnaWnvrdEC614l3CrLm8+8az5VIMJZNvAgTgVGw/dqKNjVGr6wzcC
 JFUfLau5L+gVPz0XfD7m1vNBYYJF1S+q/cX3RDohJPKEfvNa8OoM+eY31f0XGAIQViS8/MFh
 VQzm4Hu56fHti1/2QPGtinOmWVgz8vv3qMVY4bgbDGz9ziYIkEApEvX7FRGQ3HGwduoxtjrH
 5OZWY/NwriPwKrrZ/grZQPQMnDatF3gW6QULRpgEOakX/ZmOYCaT8wWSW0XcuenAA0LgAk+2
 FZwus4m7qPmTGmNG0lpv83WWc8Ili/EfZLCh2MeZhOmrv2ZQ18SWuRnzSVh3gICxnX3lRXhm
 vqKymVfv/LDlJRtmtT1Lrs7TpPBxWgVlM1andxt4l8EmravG9z3eeHarG223CSZkBq+JBgDB
 jVJT8TKBhp3da5yVqcnyuDD2wvwvwVT5jgJaVmd7HYwXW2LoKU0akAAv9P5Z5gcNTjqPUCX+
 7aewibKlrDepQU8h3QomxgNDh/qXEin/+t0Br57HKg1Hp6BfbJOlxpS7wSPtn01RmTe9+YlJ
 Fiyd4lt+q5NWv8LtqL07veYTJYJhTPumKuVO0zpZdIvaU9qatrE/DgIET1/WAC2A97INb/lU
 sYTqg+/avIPZV3edcOPy1e5Vgkmb20XQIWmx2zBvV7e14jj3XWZYzUp7XJrKciGU2Hqk/7P0
 KF/yhU4vfCWG+C2NchetANCHUTbFJ58Who+eOJapbZBwqrffxS5VbSCA7NTJZNDKyeXagKph
 l049uUj/aaeirx1gfXpyZ6KMt1ghOaaNL3HQaKcNQ4jeCHBQ==
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42630621"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EFwtTO7RdHxnQriaxov6zCX7GB/Z5wMQA5ThpLj9xfGWqs6DJN+PU6MpfZYa8WR1gznwm/AoN35LfFPErotDdGc6+yK3d/QCIjNKS+3/fzDSguJUgt+FaOHY3WJmR+Y5DSJEeprcBNP0ikEvKmqtQR29nz7iSteCy7/Wo8yDND67k+7+cQGJWS4lpU4XF8VouPUXq5wL0RzTqlTY2oPx1QQPiZ9Np9hlE3EEInplg5MGexHDfdUjVJ/v4KThgKzg/LCqtVQIgvcTyS7BpPzL/iM/m0Xq9z7YPqldgXB3T/0xJGmP7Mo7GA532zXfLh93ZVICP4LNNGHgZ46WJFvKEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Xvl8tUv11v88ac6cNVZFYsL7nrvLWJfVU0qKFveb444=;
 b=PSiFIwqMlLGmjn63Obm3FezlskOdjhW5LLtb9kAHNlhhJxZTnyAnqYrcILmwb4qLnGs950y9UTLIxPRgHqKCZzNJevLmQBUhvYhDJRb2ECP7HEr1Z/tBUkzFjzYptWJLj++34503Asc19K1mDUamjo0kKviKoqulgXim3PdV0fs2FqEs/2c3JZsc9sbgJJ1hcsVk8KARR7kZPYbLDaZFJ4lFeM3KscfNcxOqpG3XiFczIpML3NcZEcNPIUIceZh1ueBGnmtalh/e5zQFHbKJZtX4YyIOHmc4Rr5FYS4ZetBzrmEvoxfJj1dFq9ozB4WYGLBWV1KoGVyaDU9yCuXlGg==
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=Xvl8tUv11v88ac6cNVZFYsL7nrvLWJfVU0qKFveb444=;
 b=c3pL/Ff0uVvpOfGFfezRtN6AijCx6HMaSW2CHdVZiLhMVDKoAsnn2d7eiwwvAPgWwfTyxpccyFDHRdI947Aq5/OrxjzXs7pCGUnv9GHgbxOUP6yetz7syGsXoqYR9Ij+/AN/H8PgORKeqPmtqCw3upteHVFBGme/wh9c/9PgJS4=
Date: Tue, 27 Apr 2021 16:13:17 +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>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] build: centralize / unify asm-offsets generation
Message-ID: <YIgb/Tz/ic6uVXWo@Air-de-Roger>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
 <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
 <YH7/SvkrB2yGgRij@Air-de-Roger>
 <5170aa51-8e34-3a45-5bf6-c0a187b1c427@suse.com>
 <YIfTyT4rvD9yEqiM@Air-de-Roger>
 <5018479d-b566-a32b-9a01-5ccf01fe0880@suse.com>
 <YIgSNRq2w7KSSaiD@Air-de-Roger>
 <e9a7b3c5-db38-76d8-64ec-2cfd9f46f1fd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e9a7b3c5-db38-76d8-64ec-2cfd9f46f1fd@suse.com>
X-ClientProxiedBy: MR2P264CA0053.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a8df7d18-f24b-480c-bb44-08d909869ddf
X-MS-TrafficTypeDiagnostic: DM6PR03MB5081:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB5081A42535AB31A746B1B6B38F419@DM6PR03MB5081.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5236;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: co3AjPGFset1N2QN2a5N8ksQFgYX8BPP9hkpkZtwEgxIY+K3ApbOaW6rXM6JBB2iuG9v4jiBBirj0MXW6oJGjwE6wzJyuBfm6VejGgWntcdUdo+7elhduE574Gy5vvENR1T1a8XhsCjuYMrRsmkoiiRgl+OPazpqHDzXFX+jd2lUAgLvYQKJLX3SmYBFIcX9Wfhmbi89+KP0AlWibMqqbHKmVDyV5ZlUIx04UcSD+8XmZdMi/PhNilk4ZtRM/YHZFxCqrxT52NbUwVnpcXrVRXEiLGq/mIN9jC7Uee6T1UkYOPV6aYkV5G8NdmaADnpXdS7qiLpUe4Vg1uYtVUqxCK1ITXG8j1SiEV9kvtTZ+Wdcw9jap46OX51USgDDaY1+pBIygCJ6NuBBtU5zZ8H7PU+DDcVceLY/Zu//lpXvt+/zAPWndj2QL6p1dUMVa487Hdf61mYVyhbV0jMlKJlo9vfenrDJRDkHpfInXpLH5E8F8ytDSuatCgw4KkVEmkd3deR9JAUemtfnw/XLA7K3iQDvbABiDFwiy0c91vRTTiZLT/Ty6mqUBcfiww5lR2vXONxSUUZ0VuLykgC1NviIzPdlvzh9izOXCyCfeNci5TE=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(39860400002)(376002)(136003)(346002)(396003)(53546011)(83380400001)(33716001)(6916009)(478600001)(5660300002)(26005)(16526019)(86362001)(956004)(66556008)(6666004)(6496006)(9686003)(186003)(6486002)(54906003)(66476007)(316002)(66946007)(8936002)(2906002)(85182001)(8676002)(38100700002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/?=
X-MS-Exchange-CrossTenant-Network-Message-Id: a8df7d18-f24b-480c-bb44-08d909869ddf
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 14:13:22.9504
 (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: 4dkIX7yplFOfk/UYAjJqHEF3lgNHSiHpsqUDze92RGENlLzFpzwRvki2tdkQJ5vCz5l96eqV4DMf6MqlM7vNZQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5081
X-OriginatorOrg: citrix.com

On Tue, Apr 27, 2021 at 03:40:24PM +0200, Jan Beulich wrote:
> On 27.04.2021 15:31, Roger Pau Monné wrote:
> > On Tue, Apr 27, 2021 at 02:30:35PM +0200, Jan Beulich wrote:
> >> On 27.04.2021 11:05, Roger Pau Monné wrote:
> >>> On Wed, Apr 21, 2021 at 04:09:03PM +0200, Jan Beulich wrote:
> >>>> On 20.04.2021 18:20, Roger Pau Monné wrote:
> >>>>> On Tue, Apr 20, 2021 at 05:47:49PM +0200, Jan Beulich wrote:
> >>>>>> On 20.04.2021 17:29, Roger Pau Monné wrote:
> >>>>>>> On Thu, Apr 01, 2021 at 10:33:47AM +0200, Jan Beulich wrote:
> >>>>>>>> @@ -399,7 +399,11 @@ include/xen/compile.h: include/xen/compi
> >>>>>>>>  	@sed -rf tools/process-banner.sed < .banner >> $@.new
> >>>>>>>>  	@mv -f $@.new $@
> >>>>>>>>  
> >>>>>>>> -include/asm-$(TARGET_ARCH)/asm-offsets.h: arch/$(TARGET_ARCH)/asm-offsets.s
> >>>>>>>> +asm-offsets.s: arch/$(TARGET_ARCH)/$(TARGET_SUBARCH)/asm-offsets.c
> >>>>>>>> +	$(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -g0 -o $@.new -MQ $@ $<
> >>>>>>>> +	$(call move-if-changed,$@.new,$@)
> >>>>>>>
> >>>>>>> Won't it be more natural to keep the .s file in arch/$(TARGET_ARCH)?
> >>>>>>
> >>>>>> Yes and no: Yes as far as the actual file location is concerned.
> >>>>>> No when considering where it gets generated: I generally consider
> >>>>>> it risky to generate files outside of the directory where make
> >>>>>> currently runs. There may be good reasons for certain exceptions,
> >>>>>> but personally I don't see this case as good enough a reason.
> >>>>>>
> >>>>>> Somewhat related - if doing as you suggest, which Makefile's
> >>>>>> clean: rule should clean up that file in your opinion?
> >>>>>
> >>>>> The clean rule should be in the makefile where it's generated IMO,
> >>>>> same as asm-offsets.h clean rule currently in xen/Makefile.
> >>>>>
> >>>>>> Nevertheless, if there's general agreement that keeping the file
> >>>>>> there is better, I'd make the change and simply ignore my unhappy
> >>>>>> feelings about it.
> >>>>>
> >>>>> I don't have a strong opinion, it just feels weird to have this IMO
> >>>>> stray asm-offsets.s outside of it's arch directory, taking into
> >>>>> account that we have asm-offsets.h generated from xen/Makefile into an
> >>>>> arch specific directory already as a precedent in that makefile.
> >>>>
> >>>> Well, asm-offsets.h generation doesn't involve the compiler, hence
> >>>> no .*.d files get generated and want including later. For
> >>>> asm-offsets.s to have dependencies properly honored, if we
> >>>> generated it in xen/arch/<arch>, .asm-offsets.d would also end up
> >>>> there, and hence including of it would need separately taking care
> >>>> of.
> >>>
> >>> I'm not sure I understand what do you mean with inclusion need taking
> >>> care of separately. Isn't it expected for .d file to reside in the
> >>> same directory as the output,
> >>
> >> Yes, ...
> >>
> >>> and hence picked up automatically?
> >>
> >> ... and hence they _wouldn't_ be picked up automatically while
> >> building in xen/ if the .s file got created in xen/arch/<arch>/.
> > 
> > Hm, so that would prevent re-building the target when the dependencies
> > changed as the .d file being in the arch directory would attempt the
> > rebuild from there instead of the top level xen/?
> 
> No, in the arch directory nothing should happen at all, as there's
> no rule to rebuild asm-offsets.s. And if we built it in the subarch
> directory (where asm-offsets.c lives), the wrong rule would kick in
> (the general one compiling C to assembly).
> 
> > I guess the alternative would be to force a rebuild of the target
> > every time, in order to not depend on the .d logic?
> 
> Simply rebuilding always is not going to be good: There should be
> no re-building at all when actually just installing Xen. Hence
> while move-if-changed would be able to suppress the bulk of the
> fallout, this would still be too much rebuilding for my taste in
> that specific case.
> 
> The option I've been hinting at was to explicitly include the .d
> files from the arch dir. But I don't really like this either ...

It's hard to tell whether I would prefer that option without seeing
it. In any case, the change is an improvement overall as the logic
gets shared between architectures, so I don't plan to hold it just
because of the placement nit:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 14:21:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 14:21:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118575.224771 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbOab-0004xv-3d; Tue, 27 Apr 2021 14:21:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118575.224771; Tue, 27 Apr 2021 14: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 1lbOab-0004xo-0J; Tue, 27 Apr 2021 14:21:25 +0000
Received: by outflank-mailman (input) for mailman id 118575;
 Tue, 27 Apr 2021 14:21:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbOaZ-0004xi-Qw
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 14:21:23 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1222ffe8-80fd-4214-8129-4e3536af62d3;
 Tue, 27 Apr 2021 14:21: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: 1222ffe8-80fd-4214-8129-4e3536af62d3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619533282;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=Zdo3fp5CvqsMMKr4CyeVT52LrHSl77tZNf5xxonG4Qo=;
  b=ZS7zg69lnrGIyoIu/I1D6TrG12FYWa1Fde9xKiRY5oOmwmWyzwEff8wZ
   ZfAmx7GcKG8gpMl/s+TF3NInNPkbt4Fkx3gcywReO1k4P1/VMQxcPb7JF
   HXwS/ztYH9VQXwEE6MWkgHuUpaCfAv9NYAlqY+BE3pOk12qIJhOBtT+Qt
   8=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: P7HVEKNakn6aPiMbHT1sQ9yisEkyxsdU1++FhbsVV9tq7UFllDsqjwYJntwrFOc4LNd1h8rTYm
 9UX3I3hxZLNgkZSA/S/hlKHRgXa09mgwe/ifqgIvleCFdP7OA/76jf4ywW2kZ/3L+7xZb54x+U
 74DwtyAeVyM4FBcZg2waRyMOKuJTJxvXncPhMRKGY83aQFUgizhr8iEpCV6zNWxkk7WQqmS8dQ
 ybszTG/lERsbePZrHljciOPyWq/Zt0PJUSAZVkIiP06xxGH9CbVNZQu2dwUlEM3inMYQi2SiIl
 rb4=
X-SBRS: 5.1
X-MesageID: 42507873
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:5iNmraG6MYLwcwCSpLqF6JHXdLJzesId70hD6mlYQxZYa9Hdss
 iokugS2xOcskd3ZFgLs7m7V5Woa3Xa6JJz/M01NbCtQAHptAKTXedfxKHlxCDtHDC7y/5F2c
 5bAtVDIfD5EFQSt7eY3CCWCNAlqePrzImJgqPkw25pXUVWbchbnmNEIyK6NmEzewVcH5o+E/
 Onl7Z6jh6tY24eYMj+JlRtZZmgm/TxmJjrYQELCnccgWHk5w+A07L0HwOV2R0TSVp0sNIf2F
 PIjhDj4eGbu+y7oyWsqFP71Yhcm9fq17J4avCkt8kPJj3gziauaYhxMofjgBkJofqi4Ftvrd
 /Uox1IBaVOwk7WF1vYnTLdny3blBcn8TvL1EKRi3qLm72BeBsKT+56wb9/XjScwUw6p9142L
 9MxAuixuJqJAKFln/l/N7DWwtxmkezunRKq59os1VPFY0EaLFQqoQD/ERaVJcYdRiKk7waLA
 ==
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42507873"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ofgk/kMociav3X2u8Xgv/yi7dwvo6TBB34bHNzOlueiF2P+1D5LCFSEPDucQw2Gce+ZU63eaTo5I7FAWFluexDIgMEW2K+30yDl7XPJl1hUoWZGGXmsU2Wtph0wsoGOELUsq8LAQ9OWP/25JCLnEpHi4frNsln7ggwAxpC/hv+QLTUyWqhJYqprN9+otb/5XvgZWguBhAZuMSeGgEQ1BCeMIzLOQ2MoZKQ8GhEKL8VGmil5WyTooKD4YfnVlnJN3RPUKJjCkrq/iirrQT9+FE1zv7cbJNlJ4uXFJv78SYLTpad7LlrBYbKZtYor60XCWQr4X00hAE+YuoHh7Drj+Ow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ykm6C/DdorPDyWCv/5zxEwbKtGIhtsjujRU+lqObAZc=;
 b=ZRu9LvebRasUav4/cQJU9R04gAy1kJZ1bqrtaomKTxpmHP3+d4EmPtfES1Z67Xk3wpycZ8bstVZVvLBpRjeaWDpBffpmhjRXSucwdt/rNtC+BSWEjikj30q6ubPr/CZKFjyzMf2v4a6YGG05e78JnXuM2Gp5huIYYALqp2kumAvF5aTSFqVrUrulA6mMa+jI/ZbDitEysutipYlRUolJ/f98tnmqu2nThjMBZ0r+LtUgCB6+1OuCPfXA9n79ki47DiYd4rcTMoNeX6rbOwGUXFdFCZJg5O8kbhifQx4TOUsjRyBzi4ScrApmiu++d019OFsWMtFPgJcCi+rxUbDErg==
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=ykm6C/DdorPDyWCv/5zxEwbKtGIhtsjujRU+lqObAZc=;
 b=fmzYY8+PSrBoEEQYuhwMolPAB3WvzzLk0tPRRArh8qJ/5jOKXB2otIw6RwpGRjmtaJaAKQUNkMgHpIoby36KYi70+TzEi6Ar0dPc4SG2F8WCY7GUJ0k8SD/Z0L8LngfwEnRn2Ep6KuY+GdmmTAitYHEhZ+7VGHZRp+xD0THvt7s=
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/oprofile: remove compat accessors usage from backtrace
Date: Tue, 27 Apr 2021 16:21:13 +0200
Message-ID: <20210427142113.31961-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.30.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0017.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::29) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ef59c822-c52e-45bb-3c6f-08d90987b9d8
X-MS-TrafficTypeDiagnostic: DM6PR03MB4298:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4298F186DA0F9078BFEAD9B98F419@DM6PR03MB4298.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:2331;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: sG+uTBOpuO3/4CkCYg4IHUyehrMlhJPSktg0I0nDm/8oThZQtx7/dgZCZLFE0kMHuiGp2nD3xZ69OH/LOi8QTEUn7VEuTp95ZKN44oORyMmy8kTQE0jW9bQd80rukXll+be1RmuB9j+r/ZoZKBvb70HHOBMhULW9eX9Ycr7kYo7YPLu9NPvCGRvgUXhurxy71PtH3OCUfY5YhiDP15Ut7kOgsFWDB5SbKXXck89kMxQrqIgA8OcruArt0x0YBSuzuIPwl9icQ76mmnaddiGeykDRee2H2uQs7tFF71Djzz2vy2E9OfEapXE6+UWz5IaqqMgzp/XLpvsrdKUs3IKUgiZueyXMIq9CegWFpLJ7EfP9QMzL5MUYKB+Ee8qhfLKpnzupNHwaTzSk4/VMKiacFwV266PLj1XlydPNEOJ75fOs7zrRZ8ZopIfSJ1N1RJIyPUxxmgvbd0QwZhCmAOmU4BunonQXhTv2NP1wyEpvPl8w4Mz/KryPFX3i23dSCMq6s9FTuPcNoLk6ieumvdwX12FSFN8hSzAcw17s+HxWfrcL3fQ0YQn/arJZyuwJTaGxBkj06CjRwaWDlmYJ0DKAvX6GfHod9hi8lmmFWXN3/mw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(136003)(39860400002)(366004)(376002)(66946007)(6496006)(186003)(66556008)(16526019)(83380400001)(8936002)(478600001)(54906003)(316002)(26005)(6916009)(36756003)(66476007)(4326008)(2616005)(956004)(1076003)(6666004)(86362001)(38100700002)(6486002)(8676002)(2906002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: ef59c822-c52e-45bb-3c6f-08d90987b9d8
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 14:21:19.4569
 (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: IWqB8+bK3zY6ZIcsO8l3/QIgen7AmQaBp8fvrC90uf75TUdm8A1BLMJriwbiy6sHwwu4oKzYcGlZKQ54yUXBig==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4298
X-OriginatorOrg: citrix.com

Remove the unneeded usage of the compat layer to copy frame pointers
from guest address space. Instead just use raw_copy_from_guest.

While there change the accessibility check of one frame_head beyond to
be performed as part of the copy, like it's done in the Linux code.
Note it's unclear why this is needed.

Also drop the explicit truncation of the head pointer in the 32bit
case as all callers already pass a zero extended value. The first
value being rsp from the guest registers, and further calls will use
ebp from frame_head_32bit struct.

Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v2:
 - Keep accessibility check for one frame_head beyond.
 - Fix coding style.

Changes since v1:
 - Expand commit message.
---
 xen/arch/x86/oprofile/backtrace.c | 41 +++++++++----------------------
 1 file changed, 11 insertions(+), 30 deletions(-)

diff --git a/xen/arch/x86/oprofile/backtrace.c b/xen/arch/x86/oprofile/backtrace.c
index bd5d1b0f6ce..21b14f63bdb 100644
--- a/xen/arch/x86/oprofile/backtrace.c
+++ b/xen/arch/x86/oprofile/backtrace.c
@@ -20,7 +20,6 @@ struct __packed frame_head {
     unsigned long ret;
 };
 typedef struct frame_head frame_head_t;
-DEFINE_XEN_GUEST_HANDLE(frame_head_t);
 
 struct __packed frame_head_32bit {
     uint32_t ebp;
@@ -43,7 +42,6 @@ dump_hypervisor_backtrace(struct vcpu *vcpu, const struct frame_head *head,
     return head->ebp;
 }
 
-#ifdef CONFIG_COMPAT
 static inline int is_32bit_vcpu(struct vcpu *vcpu)
 {
     if (is_hvm_vcpu(vcpu))
@@ -51,52 +49,35 @@ static inline int is_32bit_vcpu(struct vcpu *vcpu)
     else
         return is_pv_32bit_vcpu(vcpu);
 }
-#endif
 
 static struct frame_head *
 dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
                      int mode)
 {
-    frame_head_t bufhead;
+    /* Also check accessibility of one struct frame_head beyond. */
+    frame_head_t bufhead[2];
 
-#ifdef CONFIG_COMPAT
     if ( is_32bit_vcpu(vcpu) )
     {
-        DEFINE_COMPAT_HANDLE(frame_head32_t);
-        __compat_handle_const_frame_head32_t guest_head =
-            { .c = (unsigned long)head };
-        frame_head32_t bufhead32;
-
-        /* Also check accessibility of one struct frame_head beyond */
-        if (!compat_handle_okay(guest_head, 2))
-            return 0;
-        if (__copy_from_compat(&bufhead32, guest_head, 1))
-            return 0;
-        bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
-        bufhead.ret = bufhead32.ret;
-    }
-    else
-#endif
-    {
-        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
-            const_guest_handle_from_ptr(head, frame_head_t);
+        frame_head32_t bufhead32[2];
 
-        /* Also check accessibility of one struct frame_head beyond */
-        if (!guest_handle_okay(guest_head, 2))
-            return 0;
-        if (__copy_from_guest(&bufhead, guest_head, 1))
+        if ( raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)) )
             return 0;
+        bufhead[0].ebp = (struct frame_head *)(unsigned long)bufhead32[0].ebp;
+        bufhead[0].ret = bufhead32[0].ret;
     }
+    else if ( raw_copy_from_guest(&bufhead, head, sizeof(bufhead)) )
+        return 0;
     
-    if (!xenoprof_add_trace(vcpu, bufhead.ret, mode))
+    if ( !xenoprof_add_trace(vcpu, bufhead[0].ret, mode) )
         return 0;
     
     /* frame pointers should strictly progress back up the stack
      * (towards higher addresses) */
-    if (head >= bufhead.ebp)
+    if ( head >= bufhead[0].ebp )
         return NULL;
     
-    return bufhead.ebp;
+    return bufhead[0].ebp;
 }
 
 /*
-- 
2.30.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 14:54:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 14:54:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118592.224783 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbP63-0007kz-M7; Tue, 27 Apr 2021 14:53:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118592.224783; Tue, 27 Apr 2021 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 1lbP63-0007ks-JD; Tue, 27 Apr 2021 14:53:55 +0000
Received: by outflank-mailman (input) for mailman id 118592;
 Tue, 27 Apr 2021 14:53:54 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DJzn=JY=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lbP62-0007kn-Fj
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 14:53:54 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 06709bdb-e01d-4f81-b927-4191a5d58cb4;
 Tue, 27 Apr 2021 14:53: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: 06709bdb-e01d-4f81-b927-4191a5d58cb4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619535233;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=PmraJt2PcZLw3ukoqUIUIMkKDk24eKFb6OB4E8yxfWI=;
  b=H3YCvxlWBzRLSQMTFhTkrr40dnzYYk8AOhQqtKMTo6IOH0iX5tbzXUjr
   eDYkm/cT9Ug0PWc1Xf1kBfrjCFByjc/k9uJVQJW3h873leX9NA1KXibMr
   4Gkr8vf1ioTq3Kfw16WYUjHBP2ys49CJ2AaUODDriawxgj0z6fO0UR3Cl
   M=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: DkviUs63HqyqHYYrNN0GLeM6LxJMLtcFF5kch6awNEytKwxD1tW3rrHCCDoFG9etmHDgmNKHPB
 5yGatkp2srVuVyq+IWQL7Svtd0Sda1K6fkosY/gzt2y0oQSLgO7N/p8wuAKZV035StNROYAXFy
 9eC7CQTr6BLLyL8PqchWPhrrjLT3GEur8yh1d4tdWX576lsZvsJJOMkcS+GOwv5btHRsmwMl0U
 rTRqvRZmWoP0mUYp3hWYPk6Lm5uA44jryIzULsikcFvlwxDioXRj3oBesqC/7bUQuIPf0IaNys
 kto=
X-SBRS: 5.1
X-MesageID: 42902082
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:ifoPCqgK0Fmgv1wWzjBkTCaJMXBQXkUji2hD6mlwRA09T+Wzva
 mV8sgz/xnylToXRTUMmcqYPrOBXHPb8vdOkO0sFJ2lWxTrv3btEZF64eLZsljdMgD36+I178
 pdWodkDtmYNzRHpOb8pDK1CtMxhOSAmZrY4tv261dIYUVUZ7p77wF/YzzrcHFeYAVdH5I2GN
 69y6N8xwaIQngcYsSlCnRtZYGqzLf2vanrbhIcCxks5BPmt0LK1JfAHwWFxRBbajtTwN4ZgA
 74ujbk7aauuezT8H7h/lLUhq44pOfc
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42902082"
Date: Tue, 27 Apr 2021 15:53:47 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Elliott Mitchell <ehem+xen@m5p.com>
CC: <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, Wei
 Liu <wl@xen.org>
Subject: Re: [RESEND PATCH 1/2] tools/libxl: Mark pointer args of many
 functions constant
Message-ID: <YIgle+MaWg8fhtQy@perard>
References: <cover.1613496229.git.ehem+xen@m5p.com>
 <2e18b114fc91028459b2d6cbfd0f1204501dfde9.1613496229.git.ehem+xen@m5p.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <2e18b114fc91028459b2d6cbfd0f1204501dfde9.1613496229.git.ehem+xen@m5p.com>

On Fri, Dec 18, 2020 at 01:37:44PM -0800, Elliott Mitchell wrote:
> Anything *_is_empty(), *_is_default(), or *_gen_json() is going to be
> examining the pointed to thing, not modifying it.  This potentially
> results in higher-performance output.  This also allows spreading
> constants further, allowing more checking and security.
> 
> Signed-off-by: Elliott Mitchell <ehem+xen@m5p.com>
> ---
> diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
> index 028bc013d9..e3df881d08 100644
> --- a/tools/libs/light/libxl_internal.h
> +++ b/tools/libs/light/libxl_internal.h
[..]
> -static inline bool libxl__string_is_default(char **s)
> +static inline bool libxl__string_is_default(char *const *s)

That looks weird to not also have "char" been "const", but I've tried to
change that and the compiler wasn't cooperative so I guess that's fine.


> diff --git a/tools/libs/light/libxl_nocpuid.c b/tools/libs/light/libxl_nocpuid.c
> index f47336565b..73580351b3 100644
> --- a/tools/libs/light/libxl_nocpuid.c
> +++ b/tools/libs/light/libxl_nocpuid.c
> @@ -40,7 +40,7 @@ void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
>  }
>  
>  yajl_gen_status libxl_cpuid_policy_list_gen_json(yajl_gen hand,
> -                                libxl_cpuid_policy_list *pcpuid)
> +                                const libxl_cpuid_policy_list *pcpuid)

That change is missing in libxl_cpuid.c.


The rest looks fine, so once libxl_cpuid.c is fix, you can have my Reviewed-by.

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 14:54:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 14:54:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118596.224795 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbP6t-0007rD-Vy; Tue, 27 Apr 2021 14:54:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118596.224795; Tue, 27 Apr 2021 14: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 1lbP6t-0007r6-Ss; Tue, 27 Apr 2021 14:54:47 +0000
Received: by outflank-mailman (input) for mailman id 118596;
 Tue, 27 Apr 2021 14:54:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DJzn=JY=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lbP6t-0007r1-4m
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 14:54:47 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 73cbe049-c438-4fd8-afcf-c207636eedbe;
 Tue, 27 Apr 2021 14:54: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: 73cbe049-c438-4fd8-afcf-c207636eedbe
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619535285;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=8951Nr5NGMqjfjcUFbgAETZ4PC9TRa4OrmF/P30vJEM=;
  b=IjHRpDyGg8xOG9NbuEALnACUtAgJigBmffEJT/8aQ21tG+Cd/6whdy38
   UvK+RJAEkXsQsMqZCQzgNt5yJl924hc1mQYwuP/f6agLfrCNNuZJq0Pop
   mzihuDiLRNuVx7JFZQSrIaHE3q1+qYw6/MK+a7RVlwLI/sNT2f8PrUI3/
   U=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: fZXVBe5Mb0Higb1v4qLtzAWYM+bIQeqF9CHCF/FTDwaFjzQ1kuEimKC6ITxtEOZQgfCUdoPhhT
 dQEKESd5y9EtmkeZL5G5Jv5k5zOrPP8oTere4yniQ4E7Z8fma3b2LMxlEsmhYJua1ks5JzyQun
 zhsS9l9aCQhAK3lFNKhHHHKqMMXMYoFK+05g4P4/j8BTLRBp9Wc5TWGxgqlhPCQGmAG7CtgIL4
 zRGxKKhqPnwWG5fyZ4PzwdTd8zzvBklI1g4inTeu1jIqtBygWu9kT6xMzy0+e6wpUD0Dpo7t59
 i9w=
X-SBRS: 5.1
X-MesageID: 42635895
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:YilQzKiWfXFZEBClUgRm0j3Q+3BQXksji2hD6mlwRA09T+Wzva
 mV/cgz/xnylToXRTUMmcqYPrOBXHPb8vdOkO4sFJ2lWxTrv3btEZF64eLZslndMgD36+I178
 tdWodkDtmYNzdHpOb8pDK1CtMxhOSAmZrY49v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7ag+a7OWhIICwUq7wODl1qTmdzHOiOVwwsEVHd3yaoimF
 K16jDR3LmpsP2w13bnt1P70pI+orXc9uc=
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42635895"
Date: Tue, 27 Apr 2021 15:54:42 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Elliott Mitchell <ehem+xen@m5p.com>
CC: <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, "Wei
 Liu" <wl@xen.org>
Subject: Re: [RESEND PATCH 2/2] tools/xl: Mark libxl_domain_config * arg of
 printf_info_*() const
Message-ID: <YIglskTXOkAL+hgA@perard>
References: <cover.1613496229.git.ehem+xen@m5p.com>
 <7de11de51475d98197ad30124674b9785a731dda.1613496229.git.ehem+xen@m5p.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <7de11de51475d98197ad30124674b9785a731dda.1613496229.git.ehem+xen@m5p.com>

On Fri, Dec 18, 2020 at 01:32:33PM -0800, Elliott Mitchell wrote:
> With libxl having gotten a lot more constant, now printf_info_sexp() and
> printf_info_one_json() can add consts.  May not be particularly
> important, but it is best to mark things constant when they are known to
> be so.
> 
> Signed-off-by: Elliott Mitchell <ehem+xen@m5p.com>

Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 15:30:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 15:30:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118628.224806 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbPf3-0002rf-OF; Tue, 27 Apr 2021 15:30:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118628.224806; Tue, 27 Apr 2021 15: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 1lbPf3-0002r1-Kz; Tue, 27 Apr 2021 15:30:05 +0000
Received: by outflank-mailman (input) for mailman id 118628;
 Tue, 27 Apr 2021 15:30: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 1lbPf2-0002ho-LZ; Tue, 27 Apr 2021 15:30: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 1lbPf2-0001fI-Ex; Tue, 27 Apr 2021 15:30: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 1lbPf2-0004uj-5z; Tue, 27 Apr 2021 15:30:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbPf2-0002uQ-5Y; Tue, 27 Apr 2021 15:30: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=3/c3g1dnDJCZEMswpdbJewgxw4tfUBx5SY10wFwn3QQ=; b=dlP+Iztztc9S2c/zpvfZHsV/uG
	/S+zHFCbm0T0m6N6bOe/gT72DDuYAAVgSPia0rQVD5HpfI0D408KOTz5pswh66/IUHbwN/eyv2ib7
	AFW1t6YF5RZYTw1bK3UCXIZhFjaySRwM3rNpLC6mdV1irebZwnroY48wQz1CNX+geJbw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161475-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161475: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=68580a517624040be764e0b3d58f3d174d94fdf5
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 15:30:04 +0000

flight 161475 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161475/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              68580a517624040be764e0b3d58f3d174d94fdf5
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  291 days
Failing since        151818  2020-07-11 04:18:52 Z  290 days  283 attempts
Testing same since   161475  2021-04-27 04:18:57 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastian Germann <bastiangermann@fishpost.de>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 54980 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 15:31:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 15:31:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118633.224822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbPgP-00036l-3r; Tue, 27 Apr 2021 15:31:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118633.224822; Tue, 27 Apr 2021 15: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 1lbPgP-00036e-0j; Tue, 27 Apr 2021 15:31:29 +0000
Received: by outflank-mailman (input) for mailman id 118633;
 Tue, 27 Apr 2021 15:31:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbPgN-00036Z-MD
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 15:31:27 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 84573d28-fe5d-4c53-99e9-41a8e03bf0ed;
 Tue, 27 Apr 2021 15:31:26 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C9101B1C9;
 Tue, 27 Apr 2021 15:31: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: 84573d28-fe5d-4c53-99e9-41a8e03bf0ed
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619537485; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Dr3lNssrnegV65sh/XYbCcnihlj+poCpFJ5i+N5Pe5E=;
	b=ls6jWpiG0bGa6VZoDfRRaAJ7Sq1lqZQCTL6dxUkRKJrbzFvSBPpNmxTbVPeVKWRRHpE+gI
	Z9WCQY3lDNwuQfH/0V4rXub0zhoD1pe8MPQ+2HwVDG2WGByS8I6vtO+y4+XXRwPN7QDwuZ
	dBCz6WRZosYPG51AtiFxADC42wqMhSU=
Subject: Re: [PATCH v3] x86/oprofile: remove compat accessors usage from
 backtrace
To: Roger Pau Monne <roger.pau@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210427142113.31961-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3aa0fdb1-87c8-39db-98eb-26664a0569ab@suse.com>
Date: Tue, 27 Apr 2021 17:31:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427142113.31961-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 16:21, Roger Pau Monne wrote:
> Remove the unneeded usage of the compat layer to copy frame pointers
> from guest address space. Instead just use raw_copy_from_guest.
> 
> While there change the accessibility check of one frame_head beyond to
> be performed as part of the copy, like it's done in the Linux code.
> Note it's unclear why this is needed.
> 
> Also drop the explicit truncation of the head pointer in the 32bit
> case as all callers already pass a zero extended value. The first
> value being rsp from the guest registers, and further calls will use
> ebp from frame_head_32bit struct.
> 
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> Changes since v2:
>  - Keep accessibility check for one frame_head beyond.
>  - Fix coding style.

I'm indeed more comfortable with this variant, so
Acked-by: Jan Beulich <jbeulich@suse.com>

Andrew - can you live with the 2-frame thingy staying around?

> @@ -51,52 +49,35 @@ static inline int is_32bit_vcpu(struct vcpu *vcpu)
>      else
>          return is_pv_32bit_vcpu(vcpu);
>  }
> -#endif
>  
>  static struct frame_head *
>  dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
>                       int mode)
>  {
> -    frame_head_t bufhead;
> +    /* Also check accessibility of one struct frame_head beyond. */
> +    frame_head_t bufhead[2];
>  
> -#ifdef CONFIG_COMPAT
>      if ( is_32bit_vcpu(vcpu) )
>      {
> -        DEFINE_COMPAT_HANDLE(frame_head32_t);
> -        __compat_handle_const_frame_head32_t guest_head =
> -            { .c = (unsigned long)head };
> -        frame_head32_t bufhead32;
> -
> -        /* Also check accessibility of one struct frame_head beyond */
> -        if (!compat_handle_okay(guest_head, 2))
> -            return 0;
> -        if (__copy_from_compat(&bufhead32, guest_head, 1))
> -            return 0;
> -        bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
> -        bufhead.ret = bufhead32.ret;
> -    }
> -    else
> -#endif
> -    {
> -        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
> -            const_guest_handle_from_ptr(head, frame_head_t);
> +        frame_head32_t bufhead32[2];
>  
> -        /* Also check accessibility of one struct frame_head beyond */
> -        if (!guest_handle_okay(guest_head, 2))
> -            return 0;
> -        if (__copy_from_guest(&bufhead, guest_head, 1))
> +        if ( raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)) )

As a minor remark, personally I'd prefer the & to be dropped here
and ...

>              return 0;
> +        bufhead[0].ebp = (struct frame_head *)(unsigned long)bufhead32[0].ebp;
> +        bufhead[0].ret = bufhead32[0].ret;
>      }
> +    else if ( raw_copy_from_guest(&bufhead, head, sizeof(bufhead)) )

... here (and doing so while committing would be easy), but I'm
not going to insist.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 15:37:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 15:37:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118640.224834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbPm9-0003MM-QB; Tue, 27 Apr 2021 15:37:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118640.224834; Tue, 27 Apr 2021 15:37: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 1lbPm9-0003MF-MI; Tue, 27 Apr 2021 15:37:25 +0000
Received: by outflank-mailman (input) for mailman id 118640;
 Tue, 27 Apr 2021 15:37:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbPm8-0003MA-Bw
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 15:37:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e356a5e6-f412-4ee8-8eb7-137953bb92e5;
 Tue, 27 Apr 2021 15:37:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C011EB1E0;
 Tue, 27 Apr 2021 15:37: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: e356a5e6-f412-4ee8-8eb7-137953bb92e5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619537842; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=dKn6Ilad4P4Vpe8uZAU87CBKzN9AMeVUavwViwojt6k=;
	b=pU56aHK4QjyAMHYg10faj2BDu9Otf3Ff0tmFGFgaluGmFK3W3L0hAvBOxz90WrAyRF1N51
	NhLOYLaEsVQ3TcNAu/4MFid9htWBRi6adV2ue6cHZBdeoaZtFvVH0APPFjoWEKEYXlhW75
	EYNLg/15nKRV1e8H1Ig07nxuKc4VBx4=
Subject: Re: [PATCH v3] x86/oprofile: remove compat accessors usage from
 backtrace
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: <20210427142113.31961-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <6812da01-72ef-7b88-9512-2feb250de223@suse.com>
Date: Tue, 27 Apr 2021 17:37:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427142113.31961-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 27.04.2021 16:21, Roger Pau Monne wrote:
> Remove the unneeded usage of the compat layer to copy frame pointers
> from guest address space. Instead just use raw_copy_from_guest.
> 
> While there change the accessibility check of one frame_head beyond to
> be performed as part of the copy, like it's done in the Linux code.

Oh, one further question: I suppose you mean historic Linux here? I
can't find anything like this anymore in current one. If so, I'm
inclined to suggest "..., like used to be done in the Linux code."
Or something substantially similar.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 15:48:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 15:48:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118650.224846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbPwK-0004M9-UD; Tue, 27 Apr 2021 15:47:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118650.224846; Tue, 27 Apr 2021 15:47: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 1lbPwK-0004M2-Qp; Tue, 27 Apr 2021 15:47:56 +0000
Received: by outflank-mailman (input) for mailman id 118650;
 Tue, 27 Apr 2021 15:47:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbPwJ-0004Lx-V6
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 15:47:55 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id df810926-be53-4f08-9e19-f6c2439c53f6;
 Tue, 27 Apr 2021 15:47:54 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C80E9B1F6;
 Tue, 27 Apr 2021 15:47: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: df810926-be53-4f08-9e19-f6c2439c53f6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619538473; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=HGx66DYCmZHHS7wXrnuhbCi8ZHHXXldxK8v9S5gA9Ig=;
	b=vQfGF+9HosuoWNXk4yG8UE2/d0SQ713DGwynRWOMiSRVjjwFo5V566S2C5wYVjOmcewnT8
	GzsBNFKJMqowOcMRsDJoupldNpO2u6FTkHoHqGja68nbqlZJElRFTRMl9kuAg0yKHmoQY3
	gbPJoOOBdEJ3SDY3ioaJwmJOtrwFqck=
Subject: Re: [PATCH 1/3] x86/hvm: Introduce experimental guest CET support
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-2-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d8bd932d-071a-4a5b-747c-02cbd5e296cd@suse.com>
Date: Tue, 27 Apr 2021 17:47:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210426175421.30497-2-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 19:54, Andrew Cooper wrote:
> For now, let VMs opt into using CET by setting cet_ss/ibt in the CPUID
> policy.  Also extend cr4 handling to permit CR4.CET being set, along with
> logic to interlock CR4.CET and CR0.WP.
> 
> Everything else will malfunction for now, but this will help adding support
> incrementally - there is a lot to do before CET will work properly.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Jan Beulich <jbeulich@suse.com>

Just one consideration:

> --- a/xen/include/public/arch-x86/cpufeatureset.h
> +++ b/xen/include/public/arch-x86/cpufeatureset.h
> @@ -232,7 +232,7 @@ XEN_CPUFEATURE(UMIP,          6*32+ 2) /*S  User Mode Instruction Prevention */
>  XEN_CPUFEATURE(PKU,           6*32+ 3) /*H  Protection Keys for Userspace */
>  XEN_CPUFEATURE(OSPKE,         6*32+ 4) /*!  OS Protection Keys Enable */
>  XEN_CPUFEATURE(AVX512_VBMI2,  6*32+ 6) /*A  Additional AVX-512 Vector Byte Manipulation Instrs */
> -XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*   CET - Shadow Stacks */
> +XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*h  CET - Shadow Stacks */
>  XEN_CPUFEATURE(GFNI,          6*32+ 8) /*A  Galois Field Instrs */
>  XEN_CPUFEATURE(VAES,          6*32+ 9) /*A  Vector AES Instrs */
>  XEN_CPUFEATURE(VPCLMULQDQ,    6*32+10) /*A  Vector Carry-less Multiplication Instrs */
> @@ -267,7 +267,7 @@ XEN_CPUFEATURE(SRBDS_CTRL,    9*32+ 9) /*   MSR_MCU_OPT_CTRL and RNGDS_MITG_DIS.
>  XEN_CPUFEATURE(MD_CLEAR,      9*32+10) /*A  VERW clears microarchitectural buffers */
>  XEN_CPUFEATURE(TSX_FORCE_ABORT, 9*32+13) /* MSR_TSX_FORCE_ABORT.RTM_ABORT */
>  XEN_CPUFEATURE(SERIALIZE,     9*32+14) /*a  SERIALIZE insn */
> -XEN_CPUFEATURE(CET_IBT,       9*32+20) /*   CET - Indirect Branch Tracking */
> +XEN_CPUFEATURE(CET_IBT,       9*32+20) /*h  CET - Indirect Branch Tracking */
>  XEN_CPUFEATURE(IBRSB,         9*32+26) /*A  IBRS and IBPB support (used by Intel) */
>  XEN_CPUFEATURE(STIBP,         9*32+27) /*A  STIBP */
>  XEN_CPUFEATURE(L1D_FLUSH,     9*32+28) /*S  MSR_FLUSH_CMD and L1D flush. */

If by the time 4.16 finishes up the various todo items haven't been
taken care of, should we take note to undo these markings? I would
have suggested allowing them for debug builds only, but that's kind
of ugly to achieve in a public header.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 15:53:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 15:53:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118655.224858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQ1r-0005Fl-JG; Tue, 27 Apr 2021 15:53:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118655.224858; Tue, 27 Apr 2021 15:53: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 1lbQ1r-0005Fe-G6; Tue, 27 Apr 2021 15:53:39 +0000
Received: by outflank-mailman (input) for mailman id 118655;
 Tue, 27 Apr 2021 15:53:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbQ1p-0005FZ-Ks
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 15:53:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 668b3bfd-540f-4270-9bdf-fbff76833bfd;
 Tue, 27 Apr 2021 15:53:36 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D648AB121;
 Tue, 27 Apr 2021 15:53:35 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 668b3bfd-540f-4270-9bdf-fbff76833bfd
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619538815; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=2AAWmYpCtZQ6byRIs0y9Gyaj9Nudnugd7FEFyoyoGH0=;
	b=mAHhxuVP67Xc1c1J2NiFPnVsb0T3vaiffWBzQNXo1uL2FJci0noI3tjW9HKxgpuLNtfAR1
	ir+2VlakDnJGILA3Wc5Z0ZnpmZK+xLGH/VVRjO+r+jADj7XnOM1WG4+VXmDW5pxhlQ3WBH
	B3V0oNYey49dGG1ogWI+u/zCRapqqS0=
Subject: Re: [PATCH 2/3] x86/svm: Enumeration for CET
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-3-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a5d73b34-8200-ae0c-6c91-252ad2812f3d@suse.com>
Date: Tue, 27 Apr 2021 17:53:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210426175421.30497-3-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 19:54, Andrew Cooper wrote:
> On CET-capable hardware, VMRUN/EXIT unconditionally swaps S_SET, SSP and

Nit: S_CET?

> ISST (subject to cleanbits) without further settings.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Jan Beulich <jbeulich@suse.com>
with one question:

> @@ -497,7 +501,9 @@ struct vmcb_struct {
>      u64 rip;
>      u64 res14[11];
>      u64 rsp;
> -    u64 res15[3];
> +    u64 _msr_s_cet;             /* offset 0x400 + 0x1E0 - cleanbit 12 */
> +    u64 _ssp;                   /* offset 0x400 + 0x1E8   | */
> +    u64 _msr_isst;              /* offset 0x400 + 0x1F0   v */
>      u64 rax;
>      u64 star;
>      u64 lstar;

Any reason for the leading underscores, when none of the neighboring
fields have such? Did you perhaps mean to add VMCB_ACCESSORS()
instances for them? (Ack remains in effect if you decide to do so.)

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 15:56:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 15:56:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118659.224870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQ4u-0005RP-06; Tue, 27 Apr 2021 15:56:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118659.224870; Tue, 27 Apr 2021 15:56:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQ4t-0005RH-TG; Tue, 27 Apr 2021 15:56:47 +0000
Received: by outflank-mailman (input) for mailman id 118659;
 Tue, 27 Apr 2021 15:56:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbQ4s-0005RC-IF
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 15:56:46 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 3f46117b-8939-40b9-9c77-c7f2f4f4544c;
 Tue, 27 Apr 2021 15:56:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C9EBDB118;
 Tue, 27 Apr 2021 15:56: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: 3f46117b-8939-40b9-9c77-c7f2f4f4544c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619539004; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=wq/PW9ZB7quAFHCy0XCp53jcNJAonPrfJYOJHlxRxmY=;
	b=uspOmFH6Bn7XFSKpdGM6HdhpjpzfJa5Q/OxSmKHnA9IglDFmoG9auTxES4Ljq2suV/MaP+
	Rz0gqQfZzh7ZN2THB+aMufnLx0IQRghR2Tbprg90Qm81/D8fD6Fe4o3fkn/1w2Uo0KfHFY
	vqUMrCCyHU43QigX3g3PAB93sdfLGBA=
Subject: Re: [PATCH 3/3] x86/VT-x: Enumeration for CET
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>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-4-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d5ae2cf3-1157-d589-6c1d-8717a45a2753@suse.com>
Date: Tue, 27 Apr 2021 17:56:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210426175421.30497-4-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 19:54, Andrew Cooper wrote:
> VT-x has separate entry/exit control for loading guest/host state.  Saving
> guest state on vmexit is performed unconditionally.

With the latter I find ...

> --- a/xen/arch/x86/hvm/vmx/vmcs.c
> +++ b/xen/arch/x86/hvm/vmx/vmcs.c
> @@ -2014,6 +2014,9 @@ void vmcs_dump_vcpu(struct vcpu *v)
>      printk("RFLAGS=0x%08lx (0x%08lx)  DR7 = 0x%016lx\n",
>             vmr(GUEST_RFLAGS), regs->rflags,
>             vmr(GUEST_DR7));
> +    if ( vmentry_ctl & VM_ENTRY_LOAD_GUEST_CET )
> +        printk("SSP = 0x%016lx S_CET = 0x%016lx ISST = 0x%016lx\n",
> +               vmr(GUEST_SSP), vmr(GUEST_S_CET), vmr(GUEST_ISST));

... the conditional here a little odd, but I expect the plan is
to have the various bits all set consistently once actually
enabling the functionality.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 15:58:58 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 15:58:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118671.224882 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQ6v-0005bH-Cn; Tue, 27 Apr 2021 15:58:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118671.224882; Tue, 27 Apr 2021 15:58: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 1lbQ6v-0005bA-9o; Tue, 27 Apr 2021 15:58:53 +0000
Received: by outflank-mailman (input) for mailman id 118671;
 Tue, 27 Apr 2021 15:58:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbQ6u-0005b5-T3
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 15:58:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a881996d-2d9f-49a6-8040-37eaef588b29;
 Tue, 27 Apr 2021 15:58:52 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 30318B1FA;
 Tue, 27 Apr 2021 15:58: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: a881996d-2d9f-49a6-8040-37eaef588b29
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619539131; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Fq0bu51wYO3X1ZxQDlRmzgRTn2eHOZIMOHsbxgkpLEo=;
	b=dAKg23OnU3UOFfHgcefxDtzmpPp1LbvoCpHw5D/f4i3gEfLWcPGgbgMQhUDiSFudvtpbJ+
	vZj+US3NRrQkpQP5mr6qpftUhUd2Mf1AgnCKV1f+42zP4ZgTHvGSEek48LpTUJ3a3Aw9F1
	SflGpVl6nDzRumOraoSEeJuWiNWG7N0=
Subject: Re: [PATCH v3 1/3] xen/iommu: Move iommu_update_ire_from_msi(..) to
 xen/iommu.h
To: Rahul Singh <rahul.singh@arm.com>
Cc: bertrand.marquis@arm.com, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1619453100.git.rahul.singh@arm.com>
 <30f0c8057969f9777f11352b9b7ca1e4a7a730e8.1619453100.git.rahul.singh@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <bf6efea8-5f2a-6d05-2eb9-59ad02ae1e58@suse.com>
Date: Tue, 27 Apr 2021 17:58:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <30f0c8057969f9777f11352b9b7ca1e4a7a730e8.1619453100.git.rahul.singh@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 18:21, Rahul Singh wrote:
> Move iommu_update_ire_from_msi(..) from passthrough/pci.c to
> xen/iommu.h and wrap it under CONFIG_X86 as it is referenced in x86
> code only to avoid compilation error for other architecture when
> HAS_PCI is enabled.
> 
> No functional change intended.
> 
> Signed-off-by: Rahul Singh <rahul.singh@arm.com>

Acked-by: Jan Beulich <jbeulich@suse.com>



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 16:01:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 16:01:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118677.224894 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQ9j-0006xO-SO; Tue, 27 Apr 2021 16:01:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118677.224894; Tue, 27 Apr 2021 16:01:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQ9j-0006xH-Ny; Tue, 27 Apr 2021 16:01:47 +0000
Received: by outflank-mailman (input) for mailman id 118677;
 Tue, 27 Apr 2021 16:01:46 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbQ9i-0006xB-9H
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 16:01:46 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3f5fe67a-76a9-4a8a-b87e-d1c28f2c70d2;
 Tue, 27 Apr 2021 16:01:45 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BF79BB121;
 Tue, 27 Apr 2021 16:01: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: 3f5fe67a-76a9-4a8a-b87e-d1c28f2c70d2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619539304; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=IJ8Loc3sGRY6G1ZJNWwc8SlwNFUWiDjTKpsX39X5qbk=;
	b=ZSCLoVws+kW0pvBUwxw8QjtAi0GlOxHpAfGqtCmGdmMVHyw6WbJyApmWFgjeghwL6offr5
	jwEnShkyMOAKNzhve9KhvqwFsgKlYOv7iSgWbJKMV/6iiDS0UBNbFJeGLtR1FNfLdUkiZQ
	DcYhcjT9MVBhvk0CA/EBIokavu4EKLI=
Subject: Ping: [PATCH] docs: release-technician-checklist: update to leaf tree
 version pinning
From: Jan Beulich <jbeulich@suse.com>
To: Ian Jackson <iwj@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>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <adc2ba4f-81b9-9841-a53c-8c52278ae62a@suse.com>
Message-ID: <f60da828-ed27-abaf-0301-559cfe017201@suse.com>
Date: Tue, 27 Apr 2021 18:01:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <adc2ba4f-81b9-9841-a53c-8c52278ae62a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 07.04.2021 11:56, Jan Beulich wrote:
> Our releases look to flip-flop between keeping or discarding the date
> and title of the referenced qemu-trad commit. I think with the hash
> replaced by a tag, the commit's date and title would better also be
> purged.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> I've been noticing this inconsistency repeatedly because I simply re-use
> version update patches for the stable trees - the context mismatch
> results in a such updated patch to then not apply, due to said flip-
> flopping. For 4.15 I'm inclined to drop the two offending lines perhaps
> while updating the version to 4.15.1-pre.

Ian (and others), any thoughts here either way?

Thanks, Jan

> --- a/docs/process/release-technician-checklist.txt
> +++ b/docs/process/release-technician-checklist.txt
> @@ -53,6 +53,7 @@
>  #   QEMU_UPSTREAM_REVISION,
>  #   QEMU_TRADITIONAL_REVISION
>  #   MINIOS_UPSTREAM_REVISION
> +#     (drop any references to the specific commits, e.g. date or title)
>  * change SUPPORT.md heading version number; -unstable or -rc tag
>  *     (empty in stable branches after .0 release).
>  * SUPPORT.md: insert correct version number in release-notes link
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 16:04:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 16:04:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118683.224906 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQCE-000772-A9; Tue, 27 Apr 2021 16:04:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118683.224906; Tue, 27 Apr 2021 16:04: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 1lbQCE-00076v-5O; Tue, 27 Apr 2021 16:04:22 +0000
Received: by outflank-mailman (input) for mailman id 118683;
 Tue, 27 Apr 2021 16:04:20 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DJzn=JY=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lbQCC-00076m-Im
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 16:04:20 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 88c953f8-dc97-4b4e-a6bf-c618cc8a8e04;
 Tue, 27 Apr 2021 16:04: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: 88c953f8-dc97-4b4e-a6bf-c618cc8a8e04
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619539455;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=VtRKiZFtOx0T950MQ1uHjCSXNqxajWiX6qcEGgMUJ5Q=;
  b=QB1z8ohQbgNymipi011+vY+PNbrvfhOONRW83Rfv4gMm8SYOW3UXGFgY
   wNxgs8MHgiSI5Aojh4sbZtDZbkepMnZUXaAAZPPYAKKnbbX/SBEtX24vh
   zFVJFcwt8EbUitmhUVsmG0uMmMEsLBCpXB2xgrSvgbvVTxgOZjOmMcMQX
   Q=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: CYJCK2B+Nsj5xqlWeyHlX63lEcJtxsSC+uY1vxQUpUbMFK34mtuGfQW3U+A1HVpD09tJtHKf+H
 52iph6cukiZsGPgd11FveQ741TnZZBB8VOguWXjjAvXy285FjEnLusZDdA95udL6Qw2zTKi5Rx
 NDjBH1UXeJiAZSmraU+SUGbLUkokfFYBNuxRMRV0Q8SCdkvvsOPSUDYLscMtR4u8cetJOWqW3L
 1fCMOGHWjoW/4R2lldTR2F6Xjjqphyf9gzx6l+pyisLyqfhh7+RJ7DN98+OdVs0X1pXDiVrfRI
 fpQ=
X-SBRS: 5.1
X-MesageID: 42344144
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:y0wbDKiDqam3VUVtrPH+cKElBXBQXwB13DAbvn1ZSRFFG/Gwv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdy48XILukQU3aqHKlRbsSiLfK7h/BP2nF9uBb3b
 p9aKQWMrfNJHVzkMqS2maFOvk6xt3vys6VrMP/61socg1wcaFn6G5Ce2SmO2l7XhNPC5Z8NL
 f03Kp6jgGtc3gWcci3b0NtN4T+jubGiY78Zlo+DwMngTPksRqT9LX4HxKEty1uMA9n/LFKyw
 n4uj283IqPmbWRyhjQ12jchq4m4ufJ+594K+GnzuQQIjXooA60aIpmQK3qhkFJnMifrGwEvf
 OJjxA8P9liy365RBDInTLdnzPO/Rxry3j+xUSWiXHuyPaJOw4SOo56qq9yNj76gnBQ2O1U4e
 Zw8E+y86dzN1fmmh/w4tDZPisa7nackD4ZvsM4y0BEXZB2Us43kaUvuHl7Pb0nByzA5IUuAI
 BVfbrhzccTS1+cYnzD11MfpuCEbzA2FheCdEAIptaY5ThQhGx41EsV3qUk7w49yK4=
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42344144"
Date: Tue, 27 Apr 2021 17:04:11 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Julien Grall <julien@xen.org>
CC: <xen-devel@lists.xenproject.org>, Julien Grall <jgrall@amazon.com>, Ian
 Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 07/14] tools/xl: Use const whenever we point to literal
 strings
Message-ID: <YIg1+x/cR1Ft5H3u@perard>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-8-julien@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20210405155713.29754-8-julien@xen.org>

On Mon, Apr 05, 2021 at 04:57:06PM +0100, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> literal strings are not meant to be modified. So we should use const
> char * rather than char * when we want to store a pointer to them.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> ---
> diff --git a/tools/xl/xl.h b/tools/xl/xl.h
> index 137a29077c1e..3052e3db0072 100644
> --- a/tools/xl/xl.h
> +++ b/tools/xl/xl.h
> @@ -21,13 +21,13 @@
>  #include <xentoollog.h>
>  
>  struct cmd_spec {
> -    char *cmd_name;
> +    const char *cmd_name;
>      int (*cmd_impl)(int argc, char **argv);
>      int can_dryrun;
>      int modifies;
> -    char *cmd_desc;
> -    char *cmd_usage;
> -    char *cmd_option;
> +    const char *cmd_desc;
> +    const char *cmd_usage;
> +    const char *cmd_option;
>  };

Those const in cmd_spec feels almost the wrong things to do, but it is
also unlikely that we would want to modify the strings in a cmd_spec so
I guess that's fine.

I'm thinking that `cmd_table` should be const as well (I mean
const struct cmd_spec cmd_table[];) as there is no reason to modify the
entries once they are in the table. I'll send a patch.


The rest looks good.
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 16:08:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 16:08:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118689.224918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQGL-0007LE-Qx; Tue, 27 Apr 2021 16:08:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118689.224918; Tue, 27 Apr 2021 16:08:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQGL-0007L7-No; Tue, 27 Apr 2021 16:08:37 +0000
Received: by outflank-mailman (input) for mailman id 118689;
 Tue, 27 Apr 2021 16:08:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=4dJ3=JY=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbQGK-0007L2-Mk
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 16:08:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ccb77838-5384-4d1f-b1e9-7233640b6b57;
 Tue, 27 Apr 2021 16:08:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B8AB2B121;
 Tue, 27 Apr 2021 16:08: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: ccb77838-5384-4d1f-b1e9-7233640b6b57
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619539714; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=lZiSY23CY1+qj+w9k/ix6u/jHIc98/LgC2nmXFIovmk=;
	b=VZ/F3bIfO7AkLiNBvAjqSk6zKnMwx2GEbUNWwgLHoe47NzCCEj6UHM+BjVUcw1Me2ZNP3T
	tqhQWM8kD3FKhIu2QG3TIdOv9MEvsqbpatpyDKC9fuSZ6CBJe9WXKwiWpMOnZBtVLhufoi
	cx+69jc088UuEGVW1XE9RzTd+sUAW00=
Subject: Ping: [PATCH v4] x86/shim: don't permit HVM and PV_SHIM_EXCLUSIVE at
 the same time
From: Jan Beulich <jbeulich@suse.com>
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>
References: <d09b0690-c5e0-a90b-b4c0-4396a5f62c59@suse.com>
 <164d8e67-fd65-9e98-53ef-51187310de0b@suse.com>
Message-ID: <d9d62ba4-2a0f-5fe8-a0be-e6e1f0777348@suse.com>
Date: Tue, 27 Apr 2021 18:08:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <164d8e67-fd65-9e98-53ef-51187310de0b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 15.04.2021 11:27, Jan Beulich wrote:
> This combination doesn't really make sense (and there likely are more);
> in particular even if the code built with both options set, HVM guests
> wouldn't work (and I think one wouldn't be able to create one in the
> first place). The alternative here would be some presumably intrusive
> #ifdef-ary to get this combination to actually build (but still not
> work) again.
> 
> Fixes: 8b5b49ceb3d9 ("x86: don't include domctl and alike in shim-exclusive builds")
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Andrew,

I know you're not happy with this change, but I also don't recall
you proposing any sufficiently straightforward alternative. Nor do
I recall you responding to my claim that the combination is useless
anyway, since the PV shim exists solely to create a single PV guest.
Since I have Roger's ack, may I ask that you firmly NACK the change
here (accompanied by an alternative proposal), if you're really
convinced that your view on the situation is the only sensible one?
If I don't hear back by the end of the week, I guess I'll put the
change in early next week.

Jan


> ---
> v4: Default HVM to !PV_SHIM, as suggested by Jürgen.
> v2: Restore lost default setting.
> 
> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -23,7 +23,7 @@ config X86
>  	select HAS_PDX
>  	select HAS_SCHED_GRANULARITY
>  	select HAS_UBSAN
> -	select HAS_VPCI if !PV_SHIM_EXCLUSIVE && HVM
> +	select HAS_VPCI if HVM
>  	select NEEDS_LIBELF
>  	select NUMA
>  
> @@ -90,9 +90,10 @@ config PV_LINEAR_PT
>           If unsure, say Y.
>  
>  config HVM
> -	def_bool !PV_SHIM_EXCLUSIVE
> +	bool "HVM support"
> +	depends on !PV_SHIM_EXCLUSIVE
> +	default !PV_SHIM
>  	select IOREQ_SERVER
> -	prompt "HVM support"
>  	---help---
>  	  Interfaces to support HVM domains.  HVM domains require hardware
>  	  virtualisation extensions (e.g. Intel VT-x, AMD SVM), but can boot
> 



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 16:11:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 16:11:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118693.224930 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQJ5-0008AH-9p; Tue, 27 Apr 2021 16:11:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118693.224930; Tue, 27 Apr 2021 16:11:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQJ5-0008AA-5z; Tue, 27 Apr 2021 16:11:27 +0000
Received: by outflank-mailman (input) for mailman id 118693;
 Tue, 27 Apr 2021 16:11:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DJzn=JY=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lbQJ3-0008A4-Nm
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 16:11:25 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ab5810a2-e339-46eb-a73a-fbde90406247;
 Tue, 27 Apr 2021 16:11: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: ab5810a2-e339-46eb-a73a-fbde90406247
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619539884;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=k8R0nO84vdjD7WiYzhu/0REIsxIMiDXT7mDSGYyyDyw=;
  b=Tt0yjHBidmNF+pUGsCYZTYl+Ly/FundHJzf4zPv+QXwtzKYNBATJTuAZ
   BrKarJEdt3PXX/+a6hitnM7OxdU1zXd3yBrPyL5iHKX4id0GqoBsdeyRZ
   9cKK5vSVeW8gWbgeNqRqCg1aegj5EHling9Pj/koDA/JKCFEgmHOgF8yW
   s=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: wJOM4cQgGs07JbsFRbISyax5rQ3QfbhgkmK58glV7BBREzKJ1rT7efqQJxXjT8871WQj1O2+us
 thT0yC0HFahD6109raqj4sknp+GnfV/0IUF0DFZ3Op3zYBiUZtQbCtvWXl9+I69WURDNWeu5BJ
 trfjZwVzBykZPM4QV+Rv+p3prMaK976yUXr34zFS4O8A74KgtZLsuvoilK9P1EH7403j1iaJtY
 vyoX0C3hqnGquaR1yxeKoYQmdvGrh95GOIqFbXd0m9Hhkt4wlCpLkzUDfSMJkphvwCn2XcSpTq
 75c=
X-SBRS: 5.1
X-MesageID: 44029925
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:rq5bZaM1Uz6MisBcT7b155DYdL4zR+YMi2QD/0p6RQVJNumRkM
 6zlPoWvCWE7Ao5cltIo7y9EYOHRm7R8oMwxIEXM6urUgWOghrOEKhJ64z+zzr8XxDv7+I179
 YaT4FSAMD9ZGIbse/U+w+9euxL/PCm9+SSif7a3zNRS2hRGsRdxiNYLireLUFsXglBAvMCZe
 Chz+5KvSCpd3hSTunTPAhnY8H5q9fGlI3rbHc9bnZN1CC0gTyl87L8GRSDty1uMQ9n+6so8m
 TOjmXCiZmLjvChxhfQk0/V4phG8eGB9vJ/BdeBgsVQFzP0igzAXupccoCF1QpZnMifrHIR1P
 jFuVMJItl64XK5RBDSnTLdny3blAsIx1Cn41mCmnfnqdH+X1sBerN8rJMcdADY5UomtMx916
 wO33vxjesuMS/9
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="44029925"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Julien Grall <julien@xen.org>, Anthony PERARD <anthony.perard@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: [XEN PATCH] xl: constify cmd_table entries
Date: Tue, 27 Apr 2021 17:11:04 +0100
Message-ID: <20210427161105.91731-1-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

and cmdtable_len.

The entries in cmd_table don't need to be modified once xl is running.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/xl/xl.c          | 4 ++--
 tools/xl/xl.h          | 6 +++---
 tools/xl/xl_cmdtable.c | 8 ++++----
 3 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/tools/xl/xl.c b/tools/xl/xl.c
index 3a8929580212..4107d10fd469 100644
--- a/tools/xl/xl.c
+++ b/tools/xl/xl.c
@@ -362,7 +362,7 @@ int main(int argc, char **argv)
 {
     int opt = 0;
     char *cmd = 0;
-    struct cmd_spec *cspec;
+    const struct cmd_spec *cspec;
     int ret;
     void *config_data = 0;
     int config_len = 0;
@@ -462,7 +462,7 @@ int child_report(xlchildnum child)
 void help(const char *command)
 {
     int i;
-    struct cmd_spec *cmd;
+    const struct cmd_spec *cmd;
 
     if (!command || !strcmp(command, "help")) {
         printf("Usage xl [-vfNtT] <subcommand> [args]\n\n");
diff --git a/tools/xl/xl.h b/tools/xl/xl.h
index 137a29077c1e..e5a106dfbc82 100644
--- a/tools/xl/xl.h
+++ b/tools/xl/xl.h
@@ -218,10 +218,10 @@ int main_qemu_monitor_command(int argc, char **argv);
 void help(const char *command);
 
 extern const char *common_domname;
-extern struct cmd_spec cmd_table[];
-extern int cmdtable_len;
+extern const struct cmd_spec cmd_table[];
+extern const int cmdtable_len;
 /* Look up a command in the table, allowing unambiguous truncation */
-struct cmd_spec *cmdtable_lookup(const char *s);
+const struct cmd_spec *cmdtable_lookup(const char *s);
 
 extern libxl_ctx *ctx;
 extern xentoollog_logger_stdiostream *logger;
diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c
index 07f54daabec3..84e2067e278b 100644
--- a/tools/xl/xl_cmdtable.c
+++ b/tools/xl/xl_cmdtable.c
@@ -18,7 +18,7 @@
 
 #include "xl.h"
 
-struct cmd_spec cmd_table[] = {
+const struct cmd_spec cmd_table[] = {
     { "create",
       &main_create, 1, 1,
       "Create a domain from config file <filename>",
@@ -631,12 +631,12 @@ struct cmd_spec cmd_table[] = {
     },
 };
 
-int cmdtable_len = sizeof(cmd_table)/sizeof(struct cmd_spec);
+const int cmdtable_len = sizeof(cmd_table)/sizeof(struct cmd_spec);
 
 /* Look up a command in the table, allowing unambiguous truncation */
-struct cmd_spec *cmdtable_lookup(const char *s)
+const struct cmd_spec *cmdtable_lookup(const char *s)
 {
-    struct cmd_spec *cmd = NULL;
+    const struct cmd_spec *cmd = NULL;
     size_t len;
     int i, count = 0;
 
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 16:25:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 16:25:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118713.224942 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQWe-0000rt-NI; Tue, 27 Apr 2021 16:25:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118713.224942; Tue, 27 Apr 2021 16:25:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQWe-0000rm-J2; Tue, 27 Apr 2021 16:25:28 +0000
Received: by outflank-mailman (input) for mailman id 118713;
 Tue, 27 Apr 2021 16:25: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 1lbQWd-0000re-TH; Tue, 27 Apr 2021 16:25: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 1lbQWd-0003BO-MP; Tue, 27 Apr 2021 16:25: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 1lbQWd-0008FX-CO; Tue, 27 Apr 2021 16:25:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbQWd-0003R5-Bu; Tue, 27 Apr 2021 16:25: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=7uYyYbledvybBOXnE7tUp5IenGAijVbAWY02HDvDdXM=; b=1gb4/uJDX317UJaUwKu4VO1Fhc
	DfNp4aKzGLgf5CZxQ4TQ2yrJz/p7DAoE/AwjIja5+YCCPr+waw+tQH9Hw/WA0lDamwM+PinqZaSdp
	samBeISdPSyL+ITcARm1YkBUJlca1NB/mNEOUI1CqSHp+gzIRNfcgHhJ86GTaberTTTE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161483-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161483: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-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
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
X-Osstest-Versions-That:
    xen=11e7f0fe72ca0060762d18268e0388731fe8ccb6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 16:25:27 +0000

flight 161483 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161483/

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-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-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

version targeted for testing:
 xen                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
baseline version:
 xen                  11e7f0fe72ca0060762d18268e0388731fe8ccb6

Last test of basis   161462  2021-04-26 09:00:28 Z    1 days
Testing same since   161483  2021-04-27 13:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Tim Deegan <tim@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
   11e7f0fe72..972ba1d1d4  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 16:27:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 16:27:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118721.224957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQYY-00011I-3I; Tue, 27 Apr 2021 16:27:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118721.224957; Tue, 27 Apr 2021 16: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 1lbQYX-00011B-WA; Tue, 27 Apr 2021 16:27:25 +0000
Received: by outflank-mailman (input) for mailman id 118721;
 Tue, 27 Apr 2021 16:27:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbQYW-000116-Lh
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 16:27:24 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c003f525-04bc-46ab-9c3e-2f0a1fe80b49;
 Tue, 27 Apr 2021 16:27: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: c003f525-04bc-46ab-9c3e-2f0a1fe80b49
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619540843;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=bV0mfb941fe4d/uke03OXZCDUbgJbx6pjGuucBkrI7A=;
  b=IqhvLWXqi4dNEynH2QEcW0jfJBX6Hmf5BsVXH2+uECRJ9mm3mR4PCI9J
   TLIdibaNfbNy7+rL+JFsyNJsAfmQ+Dmbp1cyyj1McjNm4mWHAM7EosQ9+
   o5rOv1oMcARrE5xHB5mo9tLNIx6Hff2jbXJewZUPh8AeRPZyWJt9uIYUj
   M=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Sd1pSDfj37GY7Oe+pIwBawbygO+D74GEwl+X4ZNRo9BIOBu1OMQcxk90ZIm8eE8QHq+NG180C7
 BLRu6bzJ9+18JgqVgM7Emy6Z5SxfWzO2vpikIm9YdzHRgAYXbfptl7Twm+qLel3jMJQkv2nefD
 iWaaNkEpMf6UyIA8fUbTQhDeHo8qc/+NqXZfYjSriXRCKFLPbdspKgs1GGbouPvNUge0K11THD
 sVlFsp1TLHmju6yWEDtJosl5Oxs90XFrpI7VmqKw42lchjN9ah52gPIf9rZPWOe8h6+uUFPwhP
 K/Q=
X-SBRS: 5.1
X-MesageID: 44032189
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:rFnuR695HJc3KAYgOvhuk+EKdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qH/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7H2vanrfAIcAFof4BSO5AnC1JfBDxOa0h0COgk/o4sKzG
 6tqW3Ez5Tmid6X4Fv212jf75NZ8eGRt+drNYi3peU+bhnpggasTox9V7OFpyBdmpDS1H8a1O
 Pijj1lE8Nv627AXmzdm2qT5yDQlAwAxlWn6ViEjWDtqcb0LQhKdfZptMZiXTbyr28D1esMt5
 5j7iaimLd8SS7kpmDb4ePFUhl7/3DE2kYKoKoooFF0FbcFZKQ5l/14wGplVK0uMQjd844dHO
 xnHKjnlYxrWGLfVXzfs2V1qebcJ0gbL1ODSkgGjMSfzyJbqnB/11cZ38wShB47heoAd6U=
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="44032189"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bwWs2eTAODuv0hJBY6W0uMNBkF9FK2N8nBiaGC5bMnLuaNXsHO2LGLh0JGaeSR6IR/YIe+lH+MXHgs9TXwsOQ9qVIrKbfIlH5HOeRzTWYfLMdmSHpv122wJWfWg9s5gvUiHQz/ARolscqYbgIwXSzLBvmxBKlI1nynllW0l1Y0+nEVaCdg60+HFYiAwwQQfzH5CZIdQvLYnttQTZ3RnvFFyuZCujmZEv36938WcrHtL5iOLERHKB0t0zwZtcE3SpTiJqxjSBiGLzbj9XljBDoZMHpKlQ519OQHDc+3mNAJKBIym3dCLHjfKono0tQ2tGwZu8dminYRVYi+8U3efZ2w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OWOmSjSkEwI1z9Uzn9NpaSo1L4nV4SOTyRWOmQR/87s=;
 b=PnRCFBO6a6N59gqT9VNtHmNMIv8PEHalBQ21005Egn2ZKaOcbPD5/mdjayr67uB9+PZzetdFQFWckYjmRYSU/wL7rg7rEvv2WN9X75i/QRaMnPl09b0WmMA+6jcXGvEen99itF1g0Sgic6rWYIvstLcMPRQQlqYHHsrRgUtSSpRoSGzDPGtWGNKUwgUCpemBXJhtxhoLxP6i7RFh67PeJEYiYiDPhMPNLI7dwCHe2FQqCjtm2+34XKqAxOWy0wcdIXVdAEGl0NBgGwl/qZFeeKr6/uuEIY6tiZ3Q1B4C43KzdPyFBe22gWFxWH//JRfEmTJFvo0PDUhfZWV6JPLJvQ==
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=OWOmSjSkEwI1z9Uzn9NpaSo1L4nV4SOTyRWOmQR/87s=;
 b=d2QzQ7lMMmy+8tWsaOWy9nXiTG3+QWKpJGdtph6JRIFX6tI1UtYguBp2QyI9saVteiZN+pNF0GYRowuyE02/3OI7Vy2TqxM8z6MCwH+0R854TLdPxGKUDjXDyZ+OtJdZiNa3niMTpQAdAoiYsDb86XcGLNFsFBt98tScE3sBxr4=
To: Jan Beulich <jbeulich@suse.com>
CC: =?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 <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-4-andrew.cooper3@citrix.com>
 <d5ae2cf3-1157-d589-6c1d-8717a45a2753@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 3/3] x86/VT-x: Enumeration for CET
Message-ID: <0cebcfeb-68d2-f225-11a2-6d39a4a353dd@citrix.com>
Date: Tue, 27 Apr 2021 17:27:11 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <d5ae2cf3-1157-d589-6c1d-8717a45a2753@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0337.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:d::13) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 81a79213-cb60-4040-12e7-08d9099952f6
X-MS-TrafficTypeDiagnostic: BYAPR03MB3990:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3990FC7E31100B3D349DEDEEBA419@BYAPR03MB3990.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: txJwTPn1W8fhgYOlBpKmmg1i1wbASND7OL58Az0Ie5t/ioR5Kyih2f1WkVEwfMf9r1xg1/XyH1i0uFr6XX6QeF8kbHMGsmyJaNoyLM0b8orMxKLhw3q3KZ3UZ7Jjtngf1ZH4FsJIB5fsWL3rBVGim3hBkPjgTBjRUNk1QMYijltcLH2smEsbaXJ4+bhJvOjHZZCdCdjITPlvKnYHzaOzU6/DdDl8usjFFStbIfTI+R674GDmtgNGv3KTwqpzf5RCelhSEFQ5ND+9wrF+TtpsfGoTJUSQuSUp9hqNStQP6yV1vpDGBQDEukpmfFVKGLh+WWZVcX8JCt/BtXfFVB+dD17wBAttSY/W8zwXYTV/KQSWvwZFarMBmNmIgr/O9vVVx8fxuxdUueUer8q3NGg2LH7c0n/9mKZWm2hxvLIr57q8vYc/G/eyq2bujBXT2e7GeO1492TmP7fNDEUtMBp3qjUj0WIgw6cLcOmlYHbsaBzTe+MPhv0TLyRtpLHQGxj/Tn36uqhpkkWQwllDnaqAUM1IomULSbGiIvSdU5aZvOESKERzhzweM+htVCtXVHTjFbndxY5N6+DspAiTVhZhRdsieo7RGZBT7y/UxP6QShzzqzMWpL5GhroOsmTlt2Mzgiz8JoTZF2qTIYN5IJE+eA4KPCl0k3G8c00wEyyuwoxGDxievu3FTsvSiLu6bnbq
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(366004)(346002)(39860400002)(376002)(8936002)(16526019)(956004)(86362001)(2616005)(6666004)(478600001)(186003)(53546011)(66946007)(8676002)(6486002)(66476007)(31696002)(38100700002)(66556008)(4326008)(31686004)(26005)(36756003)(54906003)(6916009)(2906002)(316002)(16576012)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?2WhmHfRCJ0D+XdN1gWjE5BDRf5/io0vxAm9Vbzh?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 81a79213-cb60-4040-12e7-08d9099952f6
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 16:27:17.7419
 (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: 6Z6D/i3mzCSAO+KZVNMLebccK0uHkaZ88/mwmVQUDhLJ1WO+aBjOEqNEIWUja8S9PRQ48nJOpYaz5AsckPAn4YRK2eozsV87c/rViZbMfW8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3990
X-OriginatorOrg: citrix.com

On 27/04/2021 16:56, Jan Beulich wrote:
> On 26.04.2021 19:54, Andrew Cooper wrote:
>> VT-x has separate entry/exit control for loading guest/host state.  Savi=
ng
>> guest state on vmexit is performed unconditionally.
> With the latter I find ...
>
>> --- a/xen/arch/x86/hvm/vmx/vmcs.c
>> +++ b/xen/arch/x86/hvm/vmx/vmcs.c
>> @@ -2014,6 +2014,9 @@ void vmcs_dump_vcpu(struct vcpu *v)
>>      printk("RFLAGS=3D0x%08lx (0x%08lx)  DR7 =3D 0x%016lx\n",
>>             vmr(GUEST_RFLAGS), regs->rflags,
>>             vmr(GUEST_DR7));
>> +    if ( vmentry_ctl & VM_ENTRY_LOAD_GUEST_CET )
>> +        printk("SSP =3D 0x%016lx S_CET =3D 0x%016lx ISST =3D 0x%016lx\n=
",
>> +               vmr(GUEST_SSP), vmr(GUEST_S_CET), vmr(GUEST_ISST));
> ... the conditional here a little odd, but I expect the plan is
> to have the various bits all set consistently once actually
> enabling the functionality.

TBH, the general behaviour here is poor.

What happens now, as Xen does use CET itself, is that Xen's values
propagate into guest context, and are written back into the VMCS on
VMExit.=C2=A0 There is no way to turn this behaviour off AFAICT.

Therefore, we must not print the guest values when the vCPU isn't
configured for CET, because otherwise we'd be rendering what is actually
Xen state, in the guest state area.

Once a VM is using CET, we'll have both VM_ENTRY_LOAD_GUEST_CET and
VM_EXIT_LOAD_HOST_CET set.


There is theoretically an optimisations to be had for a hypervisor not
using CET, to only use the VM_ENTRY_LOAD_GUEST_CET control and leave
VM_EXIT_LOAD_HOST_CET clear, but getting this optimisation wrong will
leave the VMM running with guest controlled values.

Personally, I think it was be a far safer interface for there only to be
a single bit to control "switch CET state" or not.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 16:28:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 16:28:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118730.224969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbQZf-00019w-DU; Tue, 27 Apr 2021 16:28:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118730.224969; Tue, 27 Apr 2021 16:28: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 1lbQZf-00019p-AR; Tue, 27 Apr 2021 16:28:35 +0000
Received: by outflank-mailman (input) for mailman id 118730;
 Tue, 27 Apr 2021 16:28: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 1lbQZe-00019j-8r
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 16:28: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 1lbQZc-0003FA-GB; Tue, 27 Apr 2021 16:28:32 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbQZc-0007vt-8k; Tue, 27 Apr 2021 16: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=StjzRaZfN+kNWl72qIf7AbhfCy0WcOXJl0Cq4/uXr1Q=; b=Z3iWNztLdJQm3Qm40DeeyBcnQM
	RKLsebhYzRWHTZ9h8CFVX/kJQ6GTHVt4/849DADBibmhucEC07AVo/iOMFCIEEqwGplFxCBYEysFi
	9BXGOAb2eZ7L2lnTOd3CU2n2cd7DH965vgch9aLvvGpX+WFElh1vXmihHxbCk3LNneSQ=;
Subject: Re: [PATCH 07/14] tools/xl: Use const whenever we point to literal
 strings
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
 Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-8-julien@xen.org> <YIg1+x/cR1Ft5H3u@perard>
From: Julien Grall <julien@xen.org>
Message-ID: <7bda03dd-d943-98c5-e2e8-69f6a9677da0@xen.org>
Date: Tue, 27 Apr 2021 17:28:30 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIg1+x/cR1Ft5H3u@perard>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Anthony,

On 27/04/2021 17:04, Anthony PERARD wrote:
> On Mon, Apr 05, 2021 at 04:57:06PM +0100, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> literal strings are not meant to be modified. So we should use const
>> char * rather than char * when we want to store a pointer to them.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>> ---
>> diff --git a/tools/xl/xl.h b/tools/xl/xl.h
>> index 137a29077c1e..3052e3db0072 100644
>> --- a/tools/xl/xl.h
>> +++ b/tools/xl/xl.h
>> @@ -21,13 +21,13 @@
>>   #include <xentoollog.h>
>>   
>>   struct cmd_spec {
>> -    char *cmd_name;
>> +    const char *cmd_name;
>>       int (*cmd_impl)(int argc, char **argv);
>>       int can_dryrun;
>>       int modifies;
>> -    char *cmd_desc;
>> -    char *cmd_usage;
>> -    char *cmd_option;
>> +    const char *cmd_desc;
>> +    const char *cmd_usage;
>> +    const char *cmd_option;
>>   };
> 
> Those const in cmd_spec feels almost the wrong things to do, but it is
> also unlikely that we would want to modify the strings in a cmd_spec so
> I guess that's fine.

May I ask why you think it feels wrong things to do?

Using char * to point to literal string is a recipe for disaster because 
the compiler will not warn you if you end up to write in them. Instead, 
you will get a runtime error. xl only deals with a single domain, so the 
consequences will not be too bad, but for other piece of the userspace 
(e.g. libxl, xenstored) this would be a nice host DoS.

Both GCC and Clang provide an option (see -Wwrite-strings) to throw an 
error at compile time if char * points to literal string. I would like 
to enable it because it will harden our code.

The price to pay to use const char * for some fo the field. This is not 
that bad compare to the other options (e.g strdup(), casting...) or the 
potential fallout with the existing code.

> 
> I'm thinking that `cmd_table` should be const as well (I mean
> const struct cmd_spec cmd_table[];) as there is no reason to modify the
> entries once they are in the table. I'll send a patch.
> 
> 
> The rest looks good.
> Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 17:04:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 17:04:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118750.224986 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbR7m-0004qI-9G; Tue, 27 Apr 2021 17:03:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118750.224986; Tue, 27 Apr 2021 17: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 1lbR7m-0004qB-64; Tue, 27 Apr 2021 17:03:50 +0000
Received: by outflank-mailman (input) for mailman id 118750;
 Tue, 27 Apr 2021 17:03:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DJzn=JY=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lbR7l-0004pq-Hl
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 17:03:49 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8d461ec2-0ce7-4af0-aafb-ac844c18bcde;
 Tue, 27 Apr 2021 17: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: 8d461ec2-0ce7-4af0-aafb-ac844c18bcde
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619543027;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=K+bzGFivev2TuOEy70gfW124IELyRD9Yog4gYkyIE7c=;
  b=Q7L2Jc1fe6BY+GicxuZVRUuSevSw3Q+yu05UjsNFw47/YS8HPi8efBrY
   XMtHm6XdZiNlZmk3MX9aFVwE1867fdpDJ/mVOPFjCw4+qfFbdtLhivvE0
   V7PQN/nGF0p6cux+p77XeVAxmNPk74kXbODWdQP1rj/X5vbKqoZAtoDrS
   E=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: zT2tRsWY2XNK0qQkjmUU0r84hOFMapARpXDggJuwHT+3/qeGHvftO5bIiLDF97DYOaGKD+u4wj
 60rg7pd/fQSs6q6rMo5WbCdAz1AvPl+y7EgcHXMA+FDWEIOIuk9f9TflhX6Wcq+AsJ8tmdhk/c
 FnmuDHwthooqQ3BNwEEBIxSFsXAIZMEjDbKJ6zpa06WdtFyEGWwyZDXzAWO+1zvjyNHffMjjth
 EWz5aLp8lrvMnxp6m8R2o8MyxB6mxYQj6g2gXkbgqxkUuddAHd/nn3wquRTsq2/6M6+hXRl70r
 70I=
X-SBRS: 5.1
X-MesageID: 42541668
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:5A5WaanKp+61jS8qdJkO+9F5DGLpDfP+imdD5ilNYBxZY6Wkvu
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKMaVI3DYCDNvmy0IIZ+qbbz2jGIIVybysdx94
 dFN5J/Btr5EERgga/BijWQPt48zLC8n5yAqvzZyx5WIz1CT4FFw0NHBh2AEktwLTM2YKYRMJ
 aH/MJIq36BVB0sH6eGL0IIVeTCuNHH/aiOCXI7LiUq9RWUineQ4KP6eiLy4j4lTzhNzb0+mF
 K18TDR26PLiZCG4y6Z7UD/xdB8mNztytxMbfb89/Q9G3HXpSuDIKhkU72GljgprO+o80ZCqq
 ixnz4Qe/5dxlmUUmapoQb8+wSI6kdQ11bSjWW2rFGmgcvlSCk0A8BM7LgpDCfx2g4bk/xXlI
 dotljp0KZ/PFf7swnWo+XsbVVMkHG5pHIz+NRj9EB3YM8lR5J66bAE8Fg9KuZnIAvKrLoJPc
 NJF8/m6PNfYTqhHgrkl1gq+tCqU3gpdy32O3Qqi4iQ2zhSqnhz01EV8swZhmsB75IwUfB/lp
 z5Dpg=
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42541668"
Date: Tue, 27 Apr 2021 18:03:22 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Julien Grall <julien@xen.org>
CC: <xen-devel@lists.xenproject.org>, Julien Grall <jgrall@amazon.com>, "Ian
 Jackson" <iwj@xenproject.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 07/14] tools/xl: Use const whenever we point to literal
 strings
Message-ID: <YIhD2qF494Chg66+@perard>
References: <20210405155713.29754-1-julien@xen.org>
 <20210405155713.29754-8-julien@xen.org> <YIg1+x/cR1Ft5H3u@perard>
 <7bda03dd-d943-98c5-e2e8-69f6a9677da0@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <7bda03dd-d943-98c5-e2e8-69f6a9677da0@xen.org>

On Tue, Apr 27, 2021 at 05:28:30PM +0100, Julien Grall wrote:
> On 27/04/2021 17:04, Anthony PERARD wrote:
> > On Mon, Apr 05, 2021 at 04:57:06PM +0100, Julien Grall wrote:
> > >   struct cmd_spec {
> > > -    char *cmd_name;
> > > +    const char *cmd_name;
> > >       int (*cmd_impl)(int argc, char **argv);
> > >       int can_dryrun;
> > >       int modifies;
> > > -    char *cmd_desc;
> > > -    char *cmd_usage;
> > > -    char *cmd_option;
> > > +    const char *cmd_desc;
> > > +    const char *cmd_usage;
> > > +    const char *cmd_option;
> > >   };
> > 
> > Those const in cmd_spec feels almost the wrong things to do, but it is
> > also unlikely that we would want to modify the strings in a cmd_spec so
> > I guess that's fine.
> 
> May I ask why you think it feels wrong things to do?
> 
> Using char * to point to literal string [...]

Well, they are no literal string here as we only describe a struct, and
I though that having "const struct cmd_spec" would have been enough. But
I gave a try with only "const struct" and found that the strings could
be modified. So I don't have anything anymore to say about the patch,
and "const char" in the "struct" are necessary.

I just need to fix my intuition about how const works in C, even if I
already know the rule about it.

Cheers,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 17:14:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 17:14:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118756.224999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbRHa-0005pV-8i; Tue, 27 Apr 2021 17:13:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118756.224999; Tue, 27 Apr 2021 17: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 1lbRHa-0005pO-5L; Tue, 27 Apr 2021 17:13:58 +0000
Received: by outflank-mailman (input) for mailman id 118756;
 Tue, 27 Apr 2021 17:13:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbRHZ-0005pJ-7b
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 17:13:57 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6ee50396-22f9-46d7-8dcf-7fcde2e0f8c2;
 Tue, 27 Apr 2021 17:13: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: 6ee50396-22f9-46d7-8dcf-7fcde2e0f8c2
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619543635;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=JbRKzhpVlf2VbjtmobxWZxnb1SqtXCD1SpVPktVam6c=;
  b=VAW0ik+QltTVFoH1vFb05XpgoBjWTXojYfraiTPuVPK4YGcxhu13pSLw
   Of9hK2y2a1ZqIkFINP8MJD9yjpY5UzWM6eDz0Mhl6Z75CFvAqRnuV2lRu
   TAeSRny241eUY6yzmbH86DAtPQnuXWTc0ufyCcZUIuCnktxgpQMcCsFgS
   8=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: qRHSuBtCZr5dASpfiQGim+CKw+WJLb/80628vXnIR4RLhVB4wFhxUE+QAR54WgN9NrF+Yh8nBM
 +09kaKpD0IdNZRXdpuH0aclbF8UiByd7yDe5O9e3AJEmw/DFe8CQi6vOybk8EFpW8weTeVu5Ws
 XadIdM+2aqkyBm1GrCacU7fFqaHQhK8KoM/q3smuDbgHulR4og2FYG4G2jERmNAowbW0KjQv6H
 ujz4IJ8VJEU07VZylv/TsQV8m/CVl5L7LCBxrfsMpnRy+G6w9rgBgyAobMySSA9P4s2CdrL0o0
 uSc=
X-SBRS: 5.1
X-MesageID: 42528467
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:aRa/m68DB4SmEyFHJ1puk+B3I+orLtY04lQ7vn1ZYxY9SKKlvu
 qpm+kW0gKxtSYJVBgb6LS9EYSJXH+0z/NIyKYLO7PKZmXbkUuuaLpv9I7zhwDnchefysd49Y
 NNN5dzE8fxC18St7ee3CCdH8w7yNeKtICE7N2+815XQQtna75t4m5CY27xeHFefwVICYE0E5
 CR/KN81lmdUE4KZce2DGRtZZmgm/T3lYnraRNDJxkr5Bjmt0LR1JfGEgOV1hpbbjVXwb1Kyx
 m9ryXF4MyY3M2T+1v16Cv47phdmtfto+Ezf/Cku4wwIjXohh3AXvUGZ5Sy+BYvoO+u7142kN
 7D5zcYVv4DjE/sQg==
X-IronPort-AV: E=Sophos;i="5.82,254,1613451600"; 
   d="scan'208";a="42528467"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JHEiLs9Cjp1fS2kB7pEFGbtx9oE2g21cZkzTGaJYbDFuq0qCGi/qg1QREfnjsi+FUuXQejYwLWcVxp/NwiTWO2/TM7Fdmqb11Nkpj/x7vsCCId/4nURuj/DK8Y2yKM3L6h/xyyzG1XNqfLKU7SCpp7rqIAgxR2XPnqeFmeITWrH/trjrhtbKD6sUQSE0rAvgGVdST43l58GeHuXfYbD8elKC2eYVI2XwOi2d5Jabm5OrJwNlkLvpD0kY4/duZSs+d5LS6fNm9DsIxuxGJVOixiYbFW9siFrJI8PQt11hhDXA0CSgvjdtDKJIogRIQ8Cz7JqXe4XmIex3OvWEffgdBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GipC76gcOYhyuCYNSQNZrDDtl/VDAGbMS971GClrTis=;
 b=nTiFCnnSxZ1eF/9Fu2gCqT6sVh3P0X5SWjKWCQSpSiQtw+/cebbotORWae81gWMdHcEhWnVSxnIVFzZF1Yhh1lY+0RSVAWxSCgk9IQEMTGdXJ8lEE/e7evUKhxw/m8RHjiDOoYtLE5JS5yaYuaT8Hn6frfsfQjvJYY0EhbCDM5VO8lXYHHcSvlmxGgNh61jLfH0IaInCGJ1mMn4lCwlVc147YzRxlDXD985pD9HnOjZiSPsi75j61wn69qui3RFAb3oog4e7v26CgAvSsYI6cpmENZbjSKMXrne8me+xI9SjOcvyWMG9NVrYCGEH/cNr8aZjOMP8HUXsPjXuQBVlcQ==
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=GipC76gcOYhyuCYNSQNZrDDtl/VDAGbMS971GClrTis=;
 b=Q/9y6P4lXYcJRD7exCleOSCpI3twzJY/MBO9+GyrIeM2M8Ya/HcBIGTqDokCxR6XU8JdyDUCjRjr/piL+fSW05kLUK8vKBgKVjXfiHlun6XT/EbPtyY6bHjkij0q5ioJbybIG4T/0HiliOgKQ84M0IRF+950GlCk6cJepcYDnEo=
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: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
 <0e1d3e9e-ed29-d7e8-e4fc-e48a0454faa4@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/7] x86: introduce ioremap_wc()
Message-ID: <8cb67c2c-d5f9-a72b-d0d3-9289f6c9b512@citrix.com>
Date: Tue, 27 Apr 2021 18:13:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <0e1d3e9e-ed29-d7e8-e4fc-e48a0454faa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0029.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:151::16) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 358c9015-33b8-47cd-568d-08d9099fd4a2
X-MS-TrafficTypeDiagnostic: BYAPR03MB3493:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB349377FB1580BCA9DE14EF78BA419@BYAPR03MB3493.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Ty6aVe2YFgU5xjIQF2XrqstRH7YTv2V0tWDCg0jUkvkfvK1KTDVE6eZwgoIxsy11eZomOcw/PLrpSYHKtWDUcWH3A+SLI3dL+pXPGMAW0E4NS09V7qmhNOwo+0Fra0anN5oFP5yKL+RGwD4sKZF5u/LkSIMhNf66489EiScfH07cgANqMryrpWkliaQPk2uLGYcuFPQmQQbFw9q01u5oIym7synsjzYmw8mb2M0TXWBucRVCn4Rgeq8YJiJeFpWRj6Z7znsZbt7BqNmNgpMt1eSYa26O+GNiGPJOZIxy5l07Znt/1GuexiCjrzqsHj65eFyEtjGsvhi2TluBZj22KpiXXVaZcnMEYVB+By+YqWwMbCNVHITcPvVdvovCCi9DisFF2Wj8FBt97xF+GoDkeXN8qJHLbOaZrxsmm0pSxTZdhFaLhRseitH663DgL7gfA4wby3qfjzXdOrFiQfYJDiGNhLQQMrvh+Bt5lwmT2sbUkPDJKlsJbez6XGWTpP0SArS/xbnQmE28g2PpP2EFd/kLxu1onguwk2djtKx1RrHBCBBCPdFr6QRFzegVuAC/xhshpr4Lo++KjWsz7krdrQZx7qLNTeS2AF97WtBUODW7QTxiMNODwgKtE0tM4doZ+poVfiXGNlzCsgn3CWLKRL427rzZc0odz9tMlYgNF5xkBUaPD+qCjn4CUWp9HZjY9+rdWVAXN0JlOL3MdMsyRjbfWDGxfo+C2NQcCNuw0/Q=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(366004)(376002)(136003)(346002)(396003)(5660300002)(53546011)(316002)(478600001)(66946007)(66556008)(8676002)(31686004)(6486002)(107886003)(4326008)(83380400001)(66476007)(31696002)(54906003)(110136005)(38100700002)(8936002)(16526019)(186003)(6666004)(2906002)(2616005)(86362001)(36756003)(956004)(26005)(16576012)(45980500001)(43740500002)(473944003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?nwy/rkHz7TXoTjFszpcesVhAPAtAthYRwVYXTPA?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 358c9015-33b8-47cd-568d-08d9099fd4a2
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 17:13:52.2983
 (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: LxnOQXEVvmmiwH7cMi6ilw+Jc0zrNVmLSKTx966BKgtkk4bNSwkoT/+moabFiuiloF8cg0GqK61acc99G70JOUYiFvrABnNTrO/rWg8aNYQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3493
X-OriginatorOrg: citrix.com

On 27/04/2021 13:54, Jan Beulich wrote:
> In order for a to-be-introduced ERMS form of memcpy() to not regress
> boot performance on certain systems when video output is active, we
> first need to arrange for avoiding further dependency on firmware
> setting up MTRRs in a way we can actually further modify. On many
> systems, due to the continuously growing amounts of installed memory,
> MTRRs get configured with at least one huge WB range, and with MMIO
> ranges below 4Gb then forced to UC via overlapping MTRRs. mtrr_add(), as
> it is today, can't deal with such a setup. Hence on such systems we
> presently leave the frame buffer mapped UC, leading to significantly
> reduced performance when using REP STOSB / REP MOVSB.
>
> On post-PentiumII hardware (i.e. any that's capable of running 64-bit
> code), an effective memory type of WC can be achieved without MTRRs, by
> simply referencing the respective PAT entry from the PTEs. While this
> will leave the switch to ERMS forms of memset() and memcpy() with
> largely unchanged performance, the change here on its own improves
> performance on affected systems quite significantly: Measuring just the
> individual affected memcpy() invocations yielded a speedup by a factor
> of over 250 on my initial (Skylake) test system. memset() isn't getting
> improved by as much there, but still by a factor of about 20.
>
> While adding {__,}PAGE_HYPERVISOR_WC, also add {__,}PAGE_HYPERVISOR_WT
> to, at the very least, make clear what PTE flags this memory type uses.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---

Seeing as MTRRs are full of firmware issues, shouldn't we also
cross-check that the vram is marked WC, or we'll still fall into bad
perf from combining down to UC.=C2=A0 (Obviously follow-up work if so.)

> TBD: Both callers are __init, so in principle ioremap_wc() could be so,
>      too, at least for the time being.

I don't see us making use this at runtime.=C2=A0 Uses of WC are few and far
between.

> TBD: If the VGA range is WC in the fixed range MTRRs, reusing the low
>      1st Mb mapping (like ioremap() does) would be an option.

It might be fine to do that unconditionally.=C2=A0 The low VRAM has had kno=
wn
settings for 2 decades now.

That said, the low 1MB does use UC- mappings, which means we're entirely
dependent on MTRRs specifying WC for sensible performance.

> --- a/xen/arch/x86/mm.c
> +++ b/xen/arch/x86/mm.c
> @@ -5883,6 +5883,20 @@ void __iomem *ioremap(paddr_t pa, size_t
>      return (void __force __iomem *)va;
>  }
> =20
> +void __iomem *ioremap_wc(paddr_t pa, size_t len)
> +{
> +    mfn_t mfn =3D _mfn(PFN_DOWN(pa));
> +    unsigned int offs =3D pa & (PAGE_SIZE - 1);
> +    unsigned int nr =3D PFN_UP(offs + len);
> +    void *va;
> +
> +    WARN_ON(page_is_ram_type(mfn_x(mfn), RAM_TYPE_CONVENTIONAL));
> +
> +    va =3D __vmap(&mfn, nr, 1, 1, PAGE_HYPERVISOR_WC, VMAP_DEFAULT);

This doesn't look correct.=C2=A0 granularity and nr are passed the wrong wa=
y
around, but maybe that's related to the fact that only a single mfn is
passed.=C2=A0 I'm confused.

Also, several truncations will occur for a framebuffer > 4G, both with
calculations here, and the types of __vmap()'s parameters.

> +
> +    return (void __force __iomem *)(va + offs);
> +}
> +
>  int create_perdomain_mapping(struct domain *d, unsigned long va,
>                               unsigned int nr, l1_pgentry_t **pl1tab,
>                               struct page_info **ppg)
> --- a/xen/drivers/video/vesa.c
> +++ b/xen/drivers/video/vesa.c
> @@ -9,9 +9,9 @@
>  #include <xen/param.h>
>  #include <xen/xmalloc.h>
>  #include <xen/kernel.h>
> +#include <xen/mm.h>
>  #include <xen/vga.h>
>  #include <asm/io.h>
> -#include <asm/page.h>
>  #include "font.h"
>  #include "lfb.h"
> =20
> @@ -103,7 +103,7 @@ void __init vesa_init(void)
>      lfbp.text_columns =3D vlfb_info.width / font->width;
>      lfbp.text_rows =3D vlfb_info.height / font->height;
> =20
> -    lfbp.lfb =3D lfb =3D ioremap(lfb_base(), vram_remap);
> +    lfbp.lfb =3D lfb =3D ioremap_wc(lfb_base(), vram_remap);
>      if ( !lfb )
>          return;
> =20
> @@ -179,8 +179,7 @@ void __init vesa_mtrr_init(void)
> =20
>  static void lfb_flush(void)
>  {
> -    if ( vesa_mtrr =3D=3D 3 )
> -        __asm__ __volatile__ ("sfence" : : : "memory");
> +    __asm__ __volatile__ ("sfence" : : : "memory");

wmb(), seeing as that is the operation we mean here?

>  }
> =20
>  void __init vesa_endboot(bool_t keep)
> --- a/xen/drivers/video/vga.c
> +++ b/xen/drivers/video/vga.c
> @@ -79,7 +79,7 @@ void __init video_init(void)
>      {
>      case XEN_VGATYPE_TEXT_MODE_3:
>          if ( page_is_ram_type(paddr_to_pfn(0xB8000), RAM_TYPE_CONVENTION=
AL) ||
> -             ((video =3D ioremap(0xB8000, 0x8000)) =3D=3D NULL) )
> +             ((video =3D ioremap_wc(0xB8000, 0x8000)) =3D=3D NULL) )
>              return;
>          outw(0x200a, 0x3d4); /* disable cursor */
>          columns =3D vga_console_info.u.text_mode_3.columns;
> @@ -164,7 +164,11 @@ void __init video_endboot(void)
>      {
>      case XEN_VGATYPE_TEXT_MODE_3:
>          if ( !vgacon_keep )
> +        {
>              memset(video, 0, columns * lines * 2);
> +            iounmap(video);
> +            video =3D ZERO_BLOCK_PTR;
> +        }
>          break;

Shouldn't this hunk be in patch 5?

>      case XEN_VGATYPE_VESA_LFB:
>      case XEN_VGATYPE_EFI_LFB:
> --- a/xen/include/asm-x86/mm.h
> +++ b/xen/include/asm-x86/mm.h
> @@ -615,6 +615,8 @@ void destroy_perdomain_mapping(struct do
>                                 unsigned int nr);
>  void free_perdomain_mappings(struct domain *);
> =20
> +void __iomem *ioremap_wc(paddr_t, size_t);

I'm not sure we want to add a second prototype.=C2=A0 ARM has ioremap_wc()
too, and we absolutely don't want them to get out of sync, and we have
two new architectures on the horizon.

Perhaps a new xen/ioremap.h which includes asm/ioremap.h=C2=A0 (although
thinking forward to encrypted RAM, we might want something which can
also encompass the memremap*() variants.)

ARM can #define ioremap_wc ioremap_wc and provide their inline wrapper.=C2=
=A0
x86 can fall back to the common prototype.=C2=A0 Other architectures can do
whatever is best for them.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 17:40:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 17:40:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118773.225011 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbRge-0007oa-Hd; Tue, 27 Apr 2021 17:39:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118773.225011; Tue, 27 Apr 2021 17:39: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 1lbRge-0007oT-EX; Tue, 27 Apr 2021 17:39:52 +0000
Received: by outflank-mailman (input) for mailman id 118773;
 Tue, 27 Apr 2021 17:39:51 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbRgc-0007oO-SN
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 17:39:51 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cac06641-3a8e-4a2d-a474-1152891fe5b3;
 Tue, 27 Apr 2021 17:39: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: cac06641-3a8e-4a2d-a474-1152891fe5b3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619545189;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=z/nUx5ZYByjQkZLvL9Y3BI6Z9E4Zd0OxgV4WjExZAJM=;
  b=WnqXz7xPizlsIslVsYAyqqt8GXSZOSoR4NdeR2tYDU12QPXHoU0LglGI
   9j8K1yztZEb2aYw8Q076ymxYgs8UOnc9GtcwwPwlvidvd5hnC3v6RFeEp
   jUWyomirgT3BVmUDXhURBrfauWVMECC3xEdXFVvybquLaEc8CyVUdMJEh
   k=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: o6SIMkhNQNFbAnx6ADbpi2t/MsuxE3KeB78qjUbMSrjsv5S/NT20q1LKmGRUVRGNRfKwyNOYYw
 VOcofYOlY/3FbhoshOXoUov6gQsdf0ydMY9YVeSlAM/j7uoFw5n7X8OAwz+awzz49kCsoxe6Wm
 tUzRanoS7NFVlb3bFziYP3RxZQiVelfQhU4a7T/6f6tbQ0lZh+3/ddnZZZHj+PvRjyYeFrjT70
 9nxP3785y5KejGuNBxLZ7O3E8S9ISg8EptGQGNfGY1loT9ExG/QMSSBA2NbRnWaZ0MFol31uNK
 Lbo=
X-SBRS: 5.1
X-MesageID: 42354577
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:4lFleaDd0CIYcMLlHegdtMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPsfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VfdMgXE3Kpm2a
 9kGpIUNPTZB1J3lNu/xQG+HcopztXvytHSuc715R5WPGJXQotn6Bp0DRveN0VwShVPC5ZRLu
 vn2uNsoT28dXMLKvmqH3VtZZmPm/TntrLDJSQHCRku9RWUgVqThILSPhCE0n4lIlRy6Jg492
 ytqW3Ez4Wl98q20xrNk1LUhq4m4OfJ7vtmKIiyhtMOKjPq4zzYKLhJf7GZpjg6rKWOxT8R4b
 /xiiwtNchy9H/dF1vdyXSC5yDa3Dkj8HPkw1OD6EGT2PDRfi4wCMZKmOtiA3nkwncgp9113e
 Zq2G+UpvNsfHf9tRn9/NTBWlVWkFO1qxMZ4IsupkFYOLF/VJZh6agkuG9FGpYJGyz3rKo9Fv
 N1Mc3a7PFKNXuHcnHwpABUsZKRd0V2Oi3DblkJu8ST3TQTtmt+1VEkyMsWmWpF3I4hSqND+/
 /PPs1T5fBzZ/5TSZg4KPYKQMOxBGCIawnLKniuLVPuE7xCHH7RtZjt4vEQ6PuxcJIFiLs+8a
 6xEG9whCoXQQbDGMeO1JpE/lTmW2OmRwngzclY+tx3obv5SL33MTCSSVwnnse6ys9vQPHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYkUt78AKhezi/OODrevmv3Qcf7VKraoOy0jQHnDDn
 wKWyW2IM1B60usS2LpmRS5YQKoRmXPubZLVITK9ekaz4YAcqdWtBIOtFi/7saXbTtYsqI3e0
 N6KKj9kryyoHS3+Wqg1RQrBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmGecKgRnVMPQGg
 5Hr1Fx8aa6RqbgghwKOpaCCCa3nnETrHWFQ9MggaWF/97iYY59JI0hQrZNGQLCEAFVlQ5mpH
 xYUhINQlbSG1rV+OOYpa1RINuaVtFnxC+3PMZfqBvkxDihjPBqYkFeYhmDfoq8hx00Sz9dm1
 trmpVv/IaoqHKIMmswgOMxLVtWTn+YaYg2QzitbJlIm7ztZQF7RXqLgzvfkB0oZm/27Swp9x
 PcBDCOasfXGUZGp3xU5Lzn9155bQymDjZNQ2E/votnGWvcvHFvleeNe6qoymOULkAP2+cHLV
 j+EHAvCxIrw9C8zxiOnjmeUX0g25U1J+TYZY5TOo37yzeoKIeSk7sBEOIR9JF5NMr2uutOVe
 6EYQeaIHf5DOwusjbl7koNKW1xqHM+l+nv1wCg5G+k3GQnCf6XOU94XdggUqShxnmhQ+zN3I
 RyjNozs+f1OmLtasSewaWSazJYMBvcrWO/UulAk+EfgYsi8L9oW5XLWzrB039KmA8zK8r5j0
 sSSqV26rKpAP4YQ+UCPyZCulY5ntWGK0Um9hHsCuglZFc3kjvVOciK77egk8tcPmSR4A/rfV
 +R/C1W862bA2+N1bsGB7kxJmoTYk4m83hm9P6DcYqVCAjCTZAywHOqdnumNLlaQ+yZHL9VqB
 Bw6dSBhfWWeCr1wxq4h0oNHotet2K8BdqvCweNE/NS+9O0OV6QkrKnifTD/QvfWH++cQAEno
 VLekwbc9RbhjQjhIMx1DKuSqafmDNXr3JOpTd9llDs3YC64GDUWUFeWDep/KlrYQ==
X-IronPort-AV: E=Sophos;i="5.82,255,1613451600"; 
   d="scan'208";a="42354577"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CPAZtyJlVUTO7DAXboVJL80RS6/yJvbgk6WpJrLlmFqaJa7rnc+zrzu20pPNWEV+yL4xEnH+xSlown+/4ftmyPvFPq6HF32LtxCXZ5FnKiPJlxb318fgpAAd9BdFF1eEeuXZQ+O97hj5TtnbSjVBMfltaSg/b92AsMlW4o7sjww+l7x/QBkY/Lrb4jUrX401Xanc5PbN1ZsOWMzt0qOMjF6C7yLZ8mFZ1/Nq/C2NIZYbdjrhdhAFyIooT7qOi9gtqTzlpUmnKHW3NmggVOFsQpCT1Hg5uSlMMXy/uv9/Vxs4HRITvGCaLP1c2vL7qqR+0bels3DURWbKzgGTmuH2nA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GP2X3wJy5OPcWXes3uQygbAiRP0GWy1p9/edshS9LOc=;
 b=k3luw9ihxQMfb+adWqUpaP9s8pZMACBTLD9LtaFHbUfHddbn7BY3HaO7DHfWhxzxIUYWsyJWUsic9w1NqotDy+yI/5rjiyIUFkUomsSIBZYh8oOa06a+p8MV4nILI/pTBuFRRgq37rYPpLDl5LSj5LoNtp8VrDyuvd/IawVs2Enox94tfKWer4XTwx49bPb1oQ1YuC4ToJKumh+Ih16H2B5AiD0U2dOVNfrR+BSFSt3pWhk4YWpVAqa417fySSRZqnQkV0y8SCPp4YiAturogKiqAihZyeerkiH9VBMdz2mq/DZr6yo+1kct0PNkoXPBS3AryF3MpHpa2cYxRdkaCQ==
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=GP2X3wJy5OPcWXes3uQygbAiRP0GWy1p9/edshS9LOc=;
 b=LoJTkCIo9NwKS2OwnDFPBKTXrijaft1kABBZo8Rbie+B/ds/wIapFJEkT7A5YSphTvGmyQCg6pVmwD6vnHDIw4KNXcdZCCIWuAsW/JfSIptlvPsEBUDKraxl7vM89ESHu+Vlb0WDm2/SBqsO/DOFifX7/YxnCsTcnwyg+XgOo4E=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-2-andrew.cooper3@citrix.com>
 <d8bd932d-071a-4a5b-747c-02cbd5e296cd@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 1/3] x86/hvm: Introduce experimental guest CET support
Message-ID: <86cf1d97-2034-7791-071a-48208b6ba54b@citrix.com>
Date: Tue, 27 Apr 2021 18:39:21 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <d8bd932d-071a-4a5b-747c-02cbd5e296cd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0364.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18e::9) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d6f7d3cb-4daa-49f2-fc14-08d909a371ae
X-MS-TrafficTypeDiagnostic: BYAPR03MB3797:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3797227E76EDC51B77DB7AB5BA419@BYAPR03MB3797.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 0jmNkxiRhqo6+DhQ0KTZu8/ePriYflX6ZbJTwh4rDn76ieseZXiOyCzVmiXKhyb4SlkJ0ffss6+zsqyb+IoU+pHorLr+Ams5qCzuqb17yYf82tFJ1bAL0GxMkkAZTpSl+RsdQMjtgmQyRV94uDl1hzGn820GbUZ6RDP72gNJhl/h4sgUMStAsEPf/gKmXtdS7GPipx3u+ady+Q8eoxoVy9XNRHQWqLWuo28dX5XlMaxu68AkrAerpsWxkjMQX2Uo5Cjoo27mcEpLTxkXgCpi3Jk+OWA8l++KNqGy5DWp/f38U/1Y4eSrKSt9TKVo5fMN65EPcdAkqbCfcVJERpA6jyq1sRd6h9U919MpBQrLlypQr0FA26cF8x3JTwJIUXVq3s6cMn6rHftyFz8GytTkltFK5l0huDkIBmThT/evcRJoh2qnbBtK2MLx4YvqSy1r4brfgD6NIIDOv15+RXmQH6gFeaKPr2GteerWw/lQURh9R/Hu2VeTeFWIODOHQ8knUP7QToZMpbOG2lSclB3s8Eema+4oKKAvrjeJh/PKSjHwblUruuOnSCKaAmeKgpPcUJASJsQdAUNY9DaWiyzMQII89x/K2iBy+rXmMOF2YZWo+cDNZbQp6IFFuft7LVpLlayQLlfaFv+kU8c4x81U0CnP3yMfkK7bzAGPWqMivUpwpzb1Dz6YvYKyCsaTTERN
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(376002)(346002)(396003)(136003)(366004)(6916009)(31686004)(53546011)(5660300002)(8936002)(36756003)(186003)(16526019)(8676002)(66476007)(2906002)(66946007)(6486002)(31696002)(54906003)(86362001)(16576012)(316002)(83380400001)(6666004)(26005)(38100700002)(478600001)(4326008)(66556008)(956004)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: d6f7d3cb-4daa-49f2-fc14-08d909a371ae
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 17:39:44.5136
 (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: U/gVIJ6VjE/8bjWcG/UoEM1i7AgBsVi4+BZyO2zL10xz6LWetHKkoJZOvYbIpmCxwaULmnRhj9btTLJ2/Xzzz1RRrSn4znqJ8KzhozSpW1g=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3797
X-OriginatorOrg: citrix.com

On 27/04/2021 16:47, Jan Beulich wrote:
> On 26.04.2021 19:54, Andrew Cooper wrote:
>> For now, let VMs opt into using CET by setting cet_ss/ibt in the CPUID
>> policy.  Also extend cr4 handling to permit CR4.CET being set, along wit=
h
>> logic to interlock CR4.CET and CR0.WP.
>>
>> Everything else will malfunction for now, but this will help adding supp=
ort
>> incrementally - there is a lot to do before CET will work properly.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Acked-by: Jan Beulich <jbeulich@suse.com>
>
> Just one consideration:
>
>> --- a/xen/include/public/arch-x86/cpufeatureset.h
>> +++ b/xen/include/public/arch-x86/cpufeatureset.h
>> @@ -232,7 +232,7 @@ XEN_CPUFEATURE(UMIP,          6*32+ 2) /*S  User Mod=
e Instruction Prevention */
>>  XEN_CPUFEATURE(PKU,           6*32+ 3) /*H  Protection Keys for Userspa=
ce */
>>  XEN_CPUFEATURE(OSPKE,         6*32+ 4) /*!  OS Protection Keys Enable *=
/
>>  XEN_CPUFEATURE(AVX512_VBMI2,  6*32+ 6) /*A  Additional AVX-512 Vector B=
yte Manipulation Instrs */
>> -XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*   CET - Shadow Stacks */
>> +XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*h  CET - Shadow Stacks */
>>  XEN_CPUFEATURE(GFNI,          6*32+ 8) /*A  Galois Field Instrs */
>>  XEN_CPUFEATURE(VAES,          6*32+ 9) /*A  Vector AES Instrs */
>>  XEN_CPUFEATURE(VPCLMULQDQ,    6*32+10) /*A  Vector Carry-less Multiplic=
ation Instrs */
>> @@ -267,7 +267,7 @@ XEN_CPUFEATURE(SRBDS_CTRL,    9*32+ 9) /*   MSR_MCU_=
OPT_CTRL and RNGDS_MITG_DIS.
>>  XEN_CPUFEATURE(MD_CLEAR,      9*32+10) /*A  VERW clears microarchitectu=
ral buffers */
>>  XEN_CPUFEATURE(TSX_FORCE_ABORT, 9*32+13) /* MSR_TSX_FORCE_ABORT.RTM_ABO=
RT */
>>  XEN_CPUFEATURE(SERIALIZE,     9*32+14) /*a  SERIALIZE insn */
>> -XEN_CPUFEATURE(CET_IBT,       9*32+20) /*   CET - Indirect Branch Track=
ing */
>> +XEN_CPUFEATURE(CET_IBT,       9*32+20) /*h  CET - Indirect Branch Track=
ing */
>>  XEN_CPUFEATURE(IBRSB,         9*32+26) /*A  IBRS and IBPB support (used=
 by Intel) */
>>  XEN_CPUFEATURE(STIBP,         9*32+27) /*A  STIBP */
>>  XEN_CPUFEATURE(L1D_FLUSH,     9*32+28) /*S  MSR_FLUSH_CMD and L1D flush=
. */
> If by the time 4.16 finishes up the various todo items haven't been
> taken care of, should we take note to undo these markings? I would
> have suggested allowing them for debug builds only, but that's kind
> of ugly to achieve in a public header.

TBH, I still don't think this should be a public header.=C2=A0 If I would
have forseen how much of a PITA is it, I would have argued harder
against it.

It is, at best, tools-only (via SYSCTL_get_featureset), and I don't
intend that interface to survive the tools ABI stabilisation=C2=A0 work, as
it has been fully superseded by the cpu_policy interfaces and libx86.


As for the max markings themselves, I'm not sure they ought to be
debug-only.=C2=A0 Its important aspect of making guest support "tech previe=
w"
to ensure the logic works irrespective of CONFIG_DEBUG, and I think it
is entirely fine for an experimental feature to be of status "your VM
will explode if you enable this right now", even if that spills over
into 4.17.

In reality, once we've got {U,S}_CET context switching working at the
Xen level, and {RD,WR}MSR plumbing done, it ought to be safe to people
to turn on an experiment with.=C2=A0 At this point, we're in the position o=
f
"expected to work correctly in a subset of usecases".=C2=A0 I'd ideally lik=
e
to get to this point before 4.16 releases, but that will be very subject
to other work.


All the emulator work is for cases that a VM won't encounter by default
(Task Switch too, as Minix in the Intel Management Engine is the only
known 32-bit CET-SS implementation).

Obviously, we want to get the checklist complete before enabling by
default, but give the complexities in the emulator, I suspect we'll have
a long gap between "believed can be used safely in a subset of cases",
and "believed safe to use in general", and a long list of people happy
to use it in a "doesn't work under introspection yet" state.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 17:47:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 17:47:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118778.225023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbRo6-0000JA-B0; Tue, 27 Apr 2021 17:47:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118778.225023; Tue, 27 Apr 2021 17: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 1lbRo6-0000J3-7w; Tue, 27 Apr 2021 17:47:34 +0000
Received: by outflank-mailman (input) for mailman id 118778;
 Tue, 27 Apr 2021 17:47:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbRo5-0000Iy-5B
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 17:47:33 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 33e55958-2512-4f6f-a31b-725bf9e543c8;
 Tue, 27 Apr 2021 17:47: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: 33e55958-2512-4f6f-a31b-725bf9e543c8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619545651;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=DjqTqISuw+hjifpu84C9J+eBP5RoPrrsnkQs06FNqNg=;
  b=gScOeJzEPSTqYNNJMDURgZA6bH0ZQ34YtAaMuoYVlBtxzpTBonawfIDw
   4EGsd2JrRShN6+OX4iSYqNW5sjLi5mUxnhOtk0vYcpdY4EviePb1/E93o
   xk2kRQh5rRn5n+SidtLwx4bgWDWj1GB5kTMY9WDetmBolgCACyQuyTCO/
   o=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: eQWpx9yKZs+oAEUfvha+3vAKYGADwl22yZgUZ+aTZREtuvqWUJ4RXFdWY5oqIhQ/Ak3SxQOm20
 w+d9lfWznHhGnCBlw4H6zRocwu7aHSEX9vqZVP5nYTxhkodcPAww1lDls12Lh6Y9n/Wf/4qfSn
 rZz9qR26FIjjeAxKt4l36Xpc/OAGmoPobxyGgbB2I68CbCN5W1g06vdO2BiTaO8XHT76NvEhG6
 tq+Ey0ulNKQXEdvVbElUCqR3ZVET0gHpiL7tj8PsxdZJl2OJ1uIYfIriPLm5SRxnOedpZ2PGgn
 bJI=
X-SBRS: 5.1
X-MesageID: 42921496
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:XwddWawYPc54YaS2DdbMKrPxmeskLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnhOdIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFh4hg/I
 9aWexFBNX0ZGIK6vrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbnn1EIyycFVB7QxQDOIEwE4
 CS6tECiz2rf3kWacrTPAhyY8HoodrXmJX6JSMXHhJP0nj4sRqE4KP3eiLoqys2fChIxd4ZgB
 v4uijYwonmjP2h0B/b0AbonuRrsf/s0MFKCsDJquV9EESSti+SaI5sW6KPsVkOyYnFhzhK8K
 i10modFv9+4X/QYW255SHV9GDboU0TwkTv1EOChj/bqdH5LQhXN+N6mYlbfhHFgnBQyO1U7a
 Qj5RPqi7NnSTvdgSX6/NjUR1VDkUKwsWAji4co4kB3YM81TJd86aAZ409RFo4NdRiKoLwPIa
 1BCIX56OxNeV2XK0rFtnRiqebcPUgbL1OpRE4Nv8DQ6TxKhTRCyVcCzsB3pAZkyLsND71/w+
 zFN+BQj7FJVc8KfctGdZY8aPryM3fMRwnNLXL6GyWYKIg3f0nAoZL2/7k5jdvaGu1t8LIC3K
 nMVU9D8UYvZkPjBKS1tuw2zjn9BFa8WT/3woVw4YNmsqbwSLeDC1zLdGwT
X-IronPort-AV: E=Sophos;i="5.82,255,1613451600"; 
   d="scan'208";a="42921496"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JcfA5dalPDn+Di/pcsI5BkCQIVzqwoYaJxN0EO5HJlzatd6wMXuuG4n1XwquaO06aKX1okYbLhlw69jANz6VH8jnxQp8AYazHO1vNQIt2g6k/SYoxGemOiQ2VODtdVP7n6c6dVmurA3srDLNViujO8OR0ulIvFy+ROL27hCGkBX03q9e+b3NiiMFe0q0Qk5ffSoRia8niXXlUWjvv5ona0k2M1z7ORqkDmSeHFqjg/Rh7f2X1+Slcv0aEZl+2KVl0NQgfNON3UIYYeacERzaxwz4rQYR90S2plJtcGLmLus51B1sXrsLM7lgn6HBQOHiwEyrstb1FcUyOXMJTycuZg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nkG2IVGWhESiBgy59AutGh86vukv+s9IkC45h/sU0NU=;
 b=G0ncjQnUbNzEUOXEn4v3EhCFNKDkpjhGU7pxQL/qic64IEpH9flJxPE3YLrmXb/8hBITfheZyzNXuF5/b2W0u4zYEV+A9pMdqMenUHIPW/EFxhpUIFlnN0kqSlBEG/Jt6sfeKZJkor5uyjLwgqbSJzAxpJS0ULm2yfb+AfrMe1IjpSZTWotA+YrXDymyNQCB9EVvMCxy8wSZoCmbYjNG8PQ4sqs5RFnftoD3aZuvThanVeFu3u3AGNWzSxgkvQcXOsIBLijYP+y+bPt81YWEQmKfdzrQwI7wsCVDhgb811mq+YfK9KdYwIGI/Webhg9I11VZqNI3D9J6d0MVDLQO2w==
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=nkG2IVGWhESiBgy59AutGh86vukv+s9IkC45h/sU0NU=;
 b=rR/4sqAp2hbqyUNcCjhsi4Az/wnaW6C5A7eGF1jnnuDEWwfSqzdMyK7xjhzqe5MuSpK3CcuS0Up5rW+FVqnVO5rSl5u6VhkmYoeF/+x8mCq4mUXhTxE+uYviyjN9MuEvK3dG7aiAhu7bVIcomGHF18BaAaFhc93+6XNs0aZc83M=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-3-andrew.cooper3@citrix.com>
 <a5d73b34-8200-ae0c-6c91-252ad2812f3d@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/3] x86/svm: Enumeration for CET
Message-ID: <f50d2a46-ef8b-d867-4773-aa291586e26c@citrix.com>
Date: Tue, 27 Apr 2021 18:47:22 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <a5d73b34-8200-ae0c-6c91-252ad2812f3d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0351.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18d::14) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 24aae070-1e35-4410-64a6-08d909a4864d
X-MS-TrafficTypeDiagnostic: BYAPR03MB4805:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB48052340D7C919B31E7CD293BA419@BYAPR03MB4805.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4303;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: yaqpPGcYDo5ynzMHFlUQGgPWRZBBlENYDr5uHDkIQ4ELNHfIKA+/5wZ+GsxMk82nIlg8aIPV9petzIU2MP2g/vfhSwgV1BqSEzJKvKgv6uiKyRjwjoovxZ8XIklIih8YnRPm1RdW+eA+wBkuV3Q7f4G8cFZAr1GsJ5f/LSD5YFn468+y2Qs9DC++KoTKoNAw8FC1ZRLjHilgZUuHcipKNfwzqQJWLQX90GgJ+1NCa11YKV+qh7BvLbY7gxszgCCvHxzkHa2MPqM8p4FGdtWVZxBLyfUJi2AE2U3eJVuqJJTT8QV5VsUoPSx2vb/d6TEACR98XHJCapjT0HIoMy73wFF3/xVBMwcg2d5JsFlq4DmVrSe+7eF51ziLvfpauQM2oHALhP6KlT5Yssi3CWvtmUOqjqyJ9AnONdQ6++ntQifSCnCDZYDHLSLA/q39474TAKR/s6h02m3YUTg6EvaCgXD2aJP/EuWV3pQSP152ppZiKTpnCMJjwnXpQofurmlgmhBEQ0dtCtm43EOGeCtGjJrvvPeMcD/FiZaxhuvpj7Et7BrckWZaFTDXl/ZMTaEmV/PhPkpt9dfnYf16c+djFErUBbuwFDH4PXhJd+3PreaMSps9ALazqw92DpwJ7pbDWJIp5nqK/+puscAs0hpbFahRp1VfjnhIbM8qyrI5RC75fj0pHA01GrLokyruFPXu
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(366004)(39860400002)(346002)(376002)(53546011)(4326008)(66476007)(54906003)(38100700002)(36756003)(186003)(6916009)(86362001)(2906002)(16526019)(316002)(26005)(16576012)(6666004)(2616005)(956004)(6486002)(31686004)(83380400001)(8936002)(5660300002)(66946007)(8676002)(478600001)(31696002)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/We?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 24aae070-1e35-4410-64a6-08d909a4864d
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 17:47:28.3180
 (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: FmWvnEYM76KFAIwFYeOG+Gfaj3NMbdt8NT61nH8L5Z93NKhKqEBrPetB/MPbhU6JyAWTR2L35RFbQ4DGQsT6BDTWNzZ8JC8aFDZjJdOSKLs=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4805
X-OriginatorOrg: citrix.com

On 27/04/2021 16:53, Jan Beulich wrote:
> On 26.04.2021 19:54, Andrew Cooper wrote:
>> On CET-capable hardware, VMRUN/EXIT unconditionally swaps S_SET, SSP and
> Nit: S_CET?

Ah yes.

>
>> ISST (subject to cleanbits) without further settings.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Acked-by: Jan Beulich <jbeulich@suse.com>

Thanks.

> with one question:
>
>> @@ -497,7 +501,9 @@ struct vmcb_struct {
>>      u64 rip;
>>      u64 res14[11];
>>      u64 rsp;
>> -    u64 res15[3];
>> +    u64 _msr_s_cet;             /* offset 0x400 + 0x1E0 - cleanbit 12 *=
/
>> +    u64 _ssp;                   /* offset 0x400 + 0x1E8   | */
>> +    u64 _msr_isst;              /* offset 0x400 + 0x1F0   v */
>>      u64 rax;
>>      u64 star;
>>      u64 lstar;
> Any reason for the leading underscores, when none of the neighboring
> fields have such?

Yes - they're covered by a cleanbit, and for better or worse, this is
our style.

> Did you perhaps mean to add VMCB_ACCESSORS()
> instances for them?

TBH, I opencoded the cleanbit handling because I thoroughly hate that
entire infrastructure.

I ought to add lines, but I'm still very tempted to rip it all up and
implement something which is less obfuscating.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:00:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:00:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118788.225035 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0q-00027V-IR; Tue, 27 Apr 2021 18:00:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118788.225035; Tue, 27 Apr 2021 18:00: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 1lbS0q-00027O-Ey; Tue, 27 Apr 2021 18:00:44 +0000
Received: by outflank-mailman (input) for mailman id 118788;
 Tue, 27 Apr 2021 18:00:43 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0p-000279-DZ
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:43 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0p-0004pc-Aw
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:43 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0p-0001lJ-9A
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:43 +0000
Received: from [172.18.45.5] (helo=zealot.relativity.greenend.org.uk)
 by mariner.uk.xensource.com with esmtp (Exim 4.89)
 (envelope-from <ijackson@chiark.greenend.org.uk>)
 id 1lbS0n-0003ln-8q; Tue, 27 Apr 2021 19:00:41 +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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:
	Message-Id:Date:Subject:Cc:To:From;
	bh=pT4CoDCgL5NrpGe49CSBrGo4Pg7w41vK4bXDlDYaoAg=; b=uZsl5TIZbbY5yxRq+4csWKLPp2
	mmdzPFNjQZXTvdHYUzqf77xYhXY+dHtp0Q52nfsvk5CF4QShUEdAtPtI2G+OACdGIB8/Z+R9kXMce
	K6rB6WjLU0PJk1/ep3yo0dk+2BwuNnnE7QEVeAfWr363Hd81nhnDEv6yfxPCRoOnLp9U=;
From: Ian Jackson <iwj@xenproject.org>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>
Subject: [OSSTEST PATCH 0/7] Fixes for postgresql etc. upgrade
Date: Tue, 27 Apr 2021 19:00:26 +0100
Message-Id: <20210427180033.9439-1-iwj@xenproject.org>
X-Mailer: git-send-email 2.20.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Evidently it has been a while since I last ran this script since
it really didn't work at all.  Fix it.

Ian Jackson (7):
  mg-schema-test-database: posgtres compat: psql transactions
  mg-schema-test-database: Be slightly more defensive
  mg-schema-test-database: posgtres compat: Cope with schema name
  mg-schema-test-database: GetOpt compat: work around arg bundling bug
  mg-schema-test-database: posgtres compat: Sequences
  mg-schema-test-database: Fix following host_lifecycle
  mg-schema-test-database: posgtres compat: tidy messages

 mg-schema-create        |  2 +-
 mg-schema-test-database | 41 +++++++++++++++++++++++++----------------
 2 files changed, 26 insertions(+), 17 deletions(-)

-- 
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:00:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:00:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118790.225059 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0s-00029t-8t; Tue, 27 Apr 2021 18:00:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118790.225059; Tue, 27 Apr 2021 18:00:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0s-00029k-5C; Tue, 27 Apr 2021 18:00:46 +0000
Received: by outflank-mailman (input) for mailman id 118790;
 Tue, 27 Apr 2021 18:00:44 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0q-00027J-68
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:44 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0q-0004pi-47
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:44 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0q-0001lo-3P
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:44 +0000
Received: from [172.18.45.5] (helo=zealot.relativity.greenend.org.uk)
 by mariner.uk.xensource.com with esmtp (Exim 4.89)
 (envelope-from <ijackson@chiark.greenend.org.uk>)
 id 1lbS0o-0003ln-9t; Tue, 27 Apr 2021 19:00:42 +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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:
	References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=JK5vF50HzYVrWkX33Nf1/Ad7XzKV6qN4f/xq8FqYezg=; b=vo5YpuUM/wL0h3CDOEOROI4Bj+
	dTs7EVQV9MsMXtzYn+eAoXoXgwKuwBV1JHx3K7bLipI93CV0cbK/uCh/3hkWpWcVT6Iir1likLsiL
	ceWsi8hej+ui/n4RRHpT82jsanJNGEciZZVOVeXtnR8VhfaP2vDwtYLJgD2K4ihfPziE=;
From: Ian Jackson <iwj@xenproject.org>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>
Subject: [OSSTEST PATCH 2/7] mg-schema-test-database: Be slightly more defensive
Date: Tue, 27 Apr 2021 19:00:28 +0100
Message-Id: <20210427180033.9439-3-iwj@xenproject.org>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <20210427180033.9439-1-iwj@xenproject.org>
References: <20210427180033.9439-1-iwj@xenproject.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Ian Jackson <iwj@xenproject.org>
---
 mg-schema-test-database | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/mg-schema-test-database b/mg-schema-test-database
index e69b9881..b49fbecf 100755
--- a/mg-schema-test-database
+++ b/mg-schema-test-database
@@ -381,7 +381,8 @@ END
 			print "sequences+=\" $1\"\n";
 		} elsif (m/^CREATE TABLE (\w+)/) {
 			$table=$1;
-		} elsif (m/^\s*flight\s+integer/) {
+		} elsif (m/^\s*flight\s+integer\s/) {
+			die unless $table;
 			print "ftables+=\" $table\"\n";
 		} elsif ($table && m/^\)\;$/) {
 			print "tables+=\" $table\"\n";
-- 
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:00:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:00:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118791.225064 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0s-0002Ak-NA; Tue, 27 Apr 2021 18:00:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118791.225064; Tue, 27 Apr 2021 18:00:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0s-0002AP-GL; Tue, 27 Apr 2021 18:00:46 +0000
Received: by outflank-mailman (input) for mailman id 118791;
 Tue, 27 Apr 2021 18:00:44 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0q-00027c-IV
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:44 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0q-0004pl-Hh
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:44 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0q-0001mB-GM
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:44 +0000
Received: from [172.18.45.5] (helo=zealot.relativity.greenend.org.uk)
 by mariner.uk.xensource.com with esmtp (Exim 4.89)
 (envelope-from <ijackson@chiark.greenend.org.uk>)
 id 1lbS0o-0003ln-Mo; Tue, 27 Apr 2021 19:00:42 +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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:
	References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=Kz6hhyMq9BuTwgBd5X7OokkNSvFgm9TeRwsQBEvDUck=; b=AUiANCSekuq3zAdpmX3MlnSqnT
	/QSY+HlUHsbncx0aIozCNl1OZW+CyCBq+6HgF+oamdePRCDRWTjsw+RvGTru5ZE/pOCJ+COhUSw1s
	Gj84cmONznb0CDR3tC+kYFI6NcHANYbdg5bP2ArUDVGxPbGjETijcssbxFG0hxCxcouc=;
From: Ian Jackson <iwj@xenproject.org>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>
Subject: [OSSTEST PATCH 3/7] mg-schema-test-database: posgtres compat: Cope with schema name
Date: Tue, 27 Apr 2021 19:00:29 +0100
Message-Id: <20210427180033.9439-4-iwj@xenproject.org>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <20210427180033.9439-1-iwj@xenproject.org>
References: <20210427180033.9439-1-iwj@xenproject.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The dump now (postgresql 11) contains lots of "public." which made
these regexps not match.

Signed-off-by: Ian Jackson <iwj@xenproject.org>
---
 mg-schema-test-database | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/mg-schema-test-database b/mg-schema-test-database
index b49fbecf..b5906d70 100755
--- a/mg-schema-test-database
+++ b/mg-schema-test-database
@@ -377,9 +377,10 @@ END
 
 	# What tables are there ?
 	perl -ne <$t.schema >$t.tablevars '
-		if (m/^CREATE SEQUENCE (\w+)/) {
+		BEGIN { $sch_re = qr{(?:public\.)?}; }
+		if (m/^CREATE SEQUENCE $sch_re(\w+)/) {
 			print "sequences+=\" $1\"\n";
-		} elsif (m/^CREATE TABLE (\w+)/) {
+		} elsif (m/^CREATE TABLE $sch_re(\w+)\s+/) {
 			$table=$1;
 		} elsif (m/^\s*flight\s+integer\s/) {
 			die unless $table;
-- 
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:00:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:00:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118793.225087 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0t-0002DZ-VA; Tue, 27 Apr 2021 18:00:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118793.225087; Tue, 27 Apr 2021 18: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 1lbS0t-0002D2-Hr; Tue, 27 Apr 2021 18:00:47 +0000
Received: by outflank-mailman (input) for mailman id 118793;
 Tue, 27 Apr 2021 18:00:45 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0r-00029a-Ji
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:45 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0r-0004px-Ix
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:45 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0r-0001n0-IG
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:45 +0000
Received: from [172.18.45.5] (helo=zealot.relativity.greenend.org.uk)
 by mariner.uk.xensource.com with esmtp (Exim 4.89)
 (envelope-from <ijackson@chiark.greenend.org.uk>)
 id 1lbS0p-0003ln-Nj; Tue, 27 Apr 2021 19:00: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
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:
	References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=BOGeV0UJXxuJsKF2TUUsYhyibwoa6RDq0MP2ZccTrRM=; b=yO53tsGjHmBT3w0CEv7d11HdZY
	2eXRLo7szATEdBELG4lSlIrDOa9S0IXHaxqm2vgjtIZI1WWEgrUFoSQTgRBcorL97UQ3MfTngSdQV
	+rVZklXjGO/Kl11AhN8hr5U7AkswqWfDQC8WKPOqF6+QQMDMo0BTzOK5CDSATM8wFlMU=;
From: Ian Jackson <iwj@xenproject.org>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>
Subject: [OSSTEST PATCH 5/7] mg-schema-test-database: posgtres compat: Sequences
Date: Tue, 27 Apr 2021 19:00:31 +0100
Message-Id: <20210427180033.9439-6-iwj@xenproject.org>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <20210427180033.9439-1-iwj@xenproject.org>
References: <20210427180033.9439-1-iwj@xenproject.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Now (postgresql 11) start_value is in a different table.  We don't
really care about it very much and mostly care about the last value,
so we fix that (and launder the for-db comparison dumps).

Signed-off-by: Ian Jackson <iwj@xenproject.org>
---
 mg-schema-test-database | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/mg-schema-test-database b/mg-schema-test-database
index 26e35c5b..eab0746e 100755
--- a/mg-schema-test-database
+++ b/mg-schema-test-database
@@ -425,16 +425,16 @@ END
         seq_alters=""
         for seq in $sequences; do
         	orgseqval=$(psql_query <<END
-			SELECT start_value || ' ' || last_value FROM $seq
+			SELECT s.last_value FROM $seq s
 END
                 )
-                read orgstart orglast <<END
+                read orglast <<END
 $orgseqval
 END
 		newlast=$(( 10000 * (2 + $orglast / 10000) ))
                 seq_alters+="
 			ALTER SEQUENCE $seq
-				START WITH $orgstart
+				START WITH $newlast
 				RESTART WITH $newlast;
 "
         done
@@ -447,7 +447,15 @@ END
 
 	# Schema should now be identical to main DB
 	$(withtest get_pgdump_cmd) -s -O -x >$t.schema.created
-	diff -u $t.schema.orig $t.schema.created
+
+	for wh in orig created; do
+		perl -pe '
+			next unless m{^CREATE SEQUENCE }..m{^\)};
+			$_ = "" if m/^\s*START WITH \d+$/;
+		' <$t.schema.$wh >$t.schema.$wh-laund
+	done
+
+	diff -u $t.schema.orig-laund $t.schema.created-laund
 
 	#---------- mark resources that we are going to borrow ----------
 
-- 
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:00:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:00:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118792.225076 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0t-0002Br-Bb; Tue, 27 Apr 2021 18:00:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118792.225076; Tue, 27 Apr 2021 18: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 1lbS0s-0002Be-Vh; Tue, 27 Apr 2021 18:00:46 +0000
Received: by outflank-mailman (input) for mailman id 118792;
 Tue, 27 Apr 2021 18:00:45 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0r-000290-7P
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:45 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0r-0004pr-6A
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:45 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0r-0001mZ-5C
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:45 +0000
Received: from [172.18.45.5] (helo=zealot.relativity.greenend.org.uk)
 by mariner.uk.xensource.com with esmtp (Exim 4.89)
 (envelope-from <ijackson@chiark.greenend.org.uk>)
 id 1lbS0p-0003ln-Ap; Tue, 27 Apr 2021 19:00: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
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:
	References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=GPsVEgG49IbvxwSgXeOfWoV57FVaGCeJs+NVaTRdMcg=; b=MwcKLUDWBID14rZBNy1FTln4Wl
	0V4UlsEqWjOkSIMETEXYMNjP/8lQFUQmGybeylmLKAhtTDhZR/SgAUpLjD7RyyIepLscF7RSrLo7L
	833hUryWkOInZAN2UVnF0FmQpH4Jjdptv80sE4i45SBl8ymAHGKZYZFiSfkW96EwhTIU=;
From: Ian Jackson <iwj@xenproject.org>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>
Subject: [OSSTEST PATCH 4/7] mg-schema-test-database: GetOpt compat: work around arg bundling bug
Date: Tue, 27 Apr 2021 19:00:30 +0100
Message-Id: <20210427180033.9439-5-iwj@xenproject.org>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <20210427180033.9439-1-iwj@xenproject.org>
References: <20210427180033.9439-1-iwj@xenproject.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

With -qff it now complains, daftly, that -q doesn't take a value.

Signed-off-by: Ian Jackson <iwj@xenproject.org>
---
 mg-schema-test-database | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mg-schema-test-database b/mg-schema-test-database
index b5906d70..26e35c5b 100755
--- a/mg-schema-test-database
+++ b/mg-schema-test-database
@@ -419,7 +419,7 @@ END
 END
 	withtest ./mg-schema-create -q --no-updates
 
-	withtest ./mg-schema-update -qff apply $wantupdates
+	withtest ./mg-schema-update -q -f -f apply $wantupdates
 
         printf " (seqs)"
         seq_alters=""
-- 
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:00:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:00:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118794.225099 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0u-0002F3-MC; Tue, 27 Apr 2021 18:00:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118794.225099; Tue, 27 Apr 2021 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 1lbS0u-0002EO-3y; Tue, 27 Apr 2021 18:00:48 +0000
Received: by outflank-mailman (input) for mailman id 118794;
 Tue, 27 Apr 2021 18:00:46 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0s-00029f-3K
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:46 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0s-0004q5-2g
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:46 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0s-0001nc-1n
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:46 +0000
Received: from [172.18.45.5] (helo=zealot.relativity.greenend.org.uk)
 by mariner.uk.xensource.com with esmtp (Exim 4.89)
 (envelope-from <ijackson@chiark.greenend.org.uk>)
 id 1lbS0q-0003ln-4E; Tue, 27 Apr 2021 19:00: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
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:
	References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=H7py3//w0QUlttXfH9n5X0hN6r5MeX1YzG0RyQXhqDo=; b=1X6l0pdLMSWa1b0n54OL3xljC8
	r9TqZiJ38cL35NJ29N/Taw+8AEW4Ml9EmSAano2g4gUx1FxST+Zyh0izG2STsG+oCXY38eHB1/s+N
	vh8tjQsZPbzkNZv1r4vuyBDa54xS7yWmRtha9OW0CtshZUycbkiKrbPVqzGEIS3sLf3s=;
From: Ian Jackson <iwj@xenproject.org>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>
Subject: [OSSTEST PATCH 6/7] mg-schema-test-database: Fix following host_lifecycle
Date: Tue, 27 Apr 2021 19:00:32 +0100
Message-Id: <20210427180033.9439-7-iwj@xenproject.org>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <20210427180033.9439-1-iwj@xenproject.org>
References: <20210427180033.9439-1-iwj@xenproject.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This data doesn't really survive, since the tasks are all mangled.
Rather than trying to transpose it, just don't transfer it for now.

Signed-off-by: Ian Jackson <iwj@xenproject.org>
---
 mg-schema-test-database | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mg-schema-test-database b/mg-schema-test-database
index eab0746e..df83b65a 100755
--- a/mg-schema-test-database
+++ b/mg-schema-test-database
@@ -482,6 +482,7 @@ END
 	for table in $tables; do
 		case $table in
 		schema_updates)	continue ;;
+		host_lifecycle)	continue ;;
 		esac
 		case " $ftables " in
 		*" $table "*)
-- 
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:00:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:00:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118789.225043 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0q-000288-VA; Tue, 27 Apr 2021 18:00:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118789.225043; Tue, 27 Apr 2021 18:00: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 1lbS0q-00027s-OW; Tue, 27 Apr 2021 18:00:44 +0000
Received: by outflank-mailman (input) for mailman id 118789;
 Tue, 27 Apr 2021 18:00:43 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0p-00027E-QX
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:43 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0p-0004pf-NX
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:43 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0p-0001lX-MX
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:43 +0000
Received: from [172.18.45.5] (helo=zealot.relativity.greenend.org.uk)
 by mariner.uk.xensource.com with esmtp (Exim 4.89)
 (envelope-from <ijackson@chiark.greenend.org.uk>)
 id 1lbS0n-0003ln-MJ; Tue, 27 Apr 2021 19:00:42 +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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:
	References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=RKj3y4pvDAFofYle6tGS37iZPPboeDEgBiU4eIgQ5Oo=; b=Iv9qXyWlqrkF1561qEKKRTlVgV
	Qe0/MVYjEZkbbkYSRd4Bfo7qQg9vFhScsvBHH7Qojk9sV4pB8/tHk7Y014UxWvKs3Rm8fmKwnnoC/
	UCJU4XIRjALRaumWidOn1G2w0Vc4Ks6/Dh5Q+55EoGSxVNOQwI4/Kp8deBNs6VZ7bQN4=;
From: Ian Jackson <iwj@xenproject.org>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>
Subject: [OSSTEST PATCH 1/7] mg-schema-test-database: posgtres compat: psql transactions
Date: Tue, 27 Apr 2021 19:00:27 +0100
Message-Id: <20210427180033.9439-2-iwj@xenproject.org>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <20210427180033.9439-1-iwj@xenproject.org>
References: <20210427180033.9439-1-iwj@xenproject.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Now (postgresql 11):

 * psql transaction behaviour has changed so that now we want to
   use the -1 option.  This obviates a few BEGIN and COMMITs.

 * SET implicitly starts a transaction and DROP and CREATE DATABASE
   aren't transactional and now complain if they are run in a
   transaction.  So we must add COMMIT after SET.

Signed-off-by: Ian Jackson <iwj@xenproject.org>
---
 mg-schema-create        |  2 +-
 mg-schema-test-database | 12 +++++-------
 2 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/mg-schema-create b/mg-schema-create
index 9bb3040a..3a344db4 100755
--- a/mg-schema-create
+++ b/mg-schema-create
@@ -89,7 +89,7 @@ fi
 
 $progress "Populating database..."
 
-$(get_psql_cmd) $quietopt -f schema/initial.sql
+$(get_psql_cmd) $quietopt -1 -f schema/initial.sql
 
 if $do_updates; then
     ./mg-schema-update $quietopt apply-all "${updates[@]}"
diff --git a/mg-schema-test-database b/mg-schema-test-database
index dab536c5..e69b9881 100755
--- a/mg-schema-test-database
+++ b/mg-schema-test-database
@@ -132,7 +132,7 @@ psql_query () {
 }
 
 psql_do_cmd () {
-	echo "$(get_psql_cmd) ${OSSTEST_DEBUG:+-e -a}" 
+	echo "$(get_psql_cmd) ${OSSTEST_DEBUG:+-e -a}" -1
 }
 
 psql_do () {
@@ -411,7 +411,9 @@ END
 	#---------- create test db ----------
 
 	psql_do <<END
+		COMMIT;
 		CREATE DATABASE $dbname;
+		BEGIN;
 END
 	withtest ./mg-schema-create -q --no-updates
 
@@ -449,12 +451,10 @@ END
 
 	for task in $tasks; do
 		psql_do <<END
-			BEGIN;
 			$(make_xdbref_task $dbname 'borrowed for test db' \
 				$task "$username@$nodename")
 			UPDATE resources SET owntaskid = $(borrowtaskid $task)
 				WHERE owntaskid=$task;
-			COMMIT;
 END
 	done
 
@@ -466,7 +466,6 @@ END
 
 	cat >>$t.import <<END
 		\o $t.import-output
-		BEGIN;
 		SET CONSTRAINTS ALL DEFERRED;
 END
 
@@ -500,7 +499,6 @@ END
 			WHERE owntaskid != $(borrowtaskid $task)
 			  AND owntaskid != $(taskid magic shared)
 			  AND owntaskid != $(taskid magic preparing);
-		COMMIT;
 END
 
 	printf "Copy..."
@@ -519,11 +517,9 @@ END
 
 	for task in $tasks; do
 		(withtest psql_do <<END
-			BEGIN;
 			UPDATE resources
 				SET owntaskid = $(taskid magic idle)
 				WHERE owntaskid = $(borrowtaskid $task);
-			COMMIT;
 END
                 )
 	done
@@ -551,7 +547,9 @@ drop)
 
 	psql_do <<END
                 SET client_min_messages = WARNING;
+		COMMIT;
 		DROP DATABASE IF EXISTS $dbname;
+		BEGIN;
 		UPDATE resources
 			SET owntaskid = CAST(tasks.refinfo AS INTEGER)
 			FROM tasks
-- 
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:00:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:00:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118795.225106 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS0v-0002GN-8a; Tue, 27 Apr 2021 18:00:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118795.225106; Tue, 27 Apr 2021 18: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 1lbS0u-0002Fo-Kb; Tue, 27 Apr 2021 18:00:48 +0000
Received: by outflank-mailman (input) for mailman id 118795;
 Tue, 27 Apr 2021 18:00:46 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0s-0002A9-DN
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:46 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0s-0004qA-Bx
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:46 +0000
Received: from iwj (helo=mariner.uk.xensource.com)
 by xenbits.xenproject.org with local-bsmtp (Exim 4.92)
 (envelope-from <ijackson@chiark.greenend.org.uk>) id 1lbS0s-0001nm-B6
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:00:46 +0000
Received: from [172.18.45.5] (helo=zealot.relativity.greenend.org.uk)
 by mariner.uk.xensource.com with esmtp (Exim 4.89)
 (envelope-from <ijackson@chiark.greenend.org.uk>)
 id 1lbS0q-0003ln-Gs; Tue, 27 Apr 2021 19:00: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
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:
	References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=vRaPgoPnoLJb6QLe4U8c/AoTASF6SMKUVJYPeAdSMmI=; b=CXN2fELc3Awpay2InSBACFEa0k
	0DpafSGB/pWIf5xuzQuO+dezyKIfuaNsYI9xl8DSf+59rFSOPBRrYXaW1tp54MVGCwWCbWgVXNm0M
	t7o7l++cBBkJsz5D//51urWw72cA5OCv7+LxLYMD7xF7YXT/lMCwG2mHGKh91AWChJOk=;
From: Ian Jackson <iwj@xenproject.org>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>
Subject: [OSSTEST PATCH 7/7] mg-schema-test-database: posgtres compat: tidy messages
Date: Tue, 27 Apr 2021 19:00:33 +0100
Message-Id: <20210427180033.9439-8-iwj@xenproject.org>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <20210427180033.9439-1-iwj@xenproject.org>
References: <20210427180033.9439-1-iwj@xenproject.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Now (postgresql 11) this prints a bunch of COPY notices.  Suppress
them with a -q.

Signed-off-by: Ian Jackson <iwj@xenproject.org>
---
 mg-schema-test-database | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mg-schema-test-database b/mg-schema-test-database
index df83b65a..357646bb 100755
--- a/mg-schema-test-database
+++ b/mg-schema-test-database
@@ -515,7 +515,7 @@ END
 	printf "Copy..."
 
 	printf "export..."
-	$(psql_do_cmd) -f $t.export
+	$(psql_do_cmd) -q -f $t.export
 
 	printf "import..."
 	$(withtest psql_do_cmd) -f $t.import
-- 
2.20.1



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:06:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:06:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118828.225130 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS61-0003AE-Qp; Tue, 27 Apr 2021 18:06:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118828.225130; Tue, 27 Apr 2021 18:06: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 1lbS61-0003A7-Nn; Tue, 27 Apr 2021 18:06:05 +0000
Received: by outflank-mailman (input) for mailman id 118828;
 Tue, 27 Apr 2021 18:06:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbS60-0003A2-Kv
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:06:04 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 0fb75646-08d9-4a58-9c5b-9bec28cea720;
 Tue, 27 Apr 2021 18:06: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: 0fb75646-08d9-4a58-9c5b-9bec28cea720
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619546763;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=ARRrqWngyUsTEGqu04kX5fw2ebzwQT6Y5Jr8DNKc7JM=;
  b=dcDzlvuJyCViueox2+pgmjmNCp+jJHujTZlGyFhejv+CUTkOoTTrySAk
   nZRcpvDx0dau6uEZu6YdCnNECH5+S9YeV0iB02U5jHE95LZku1TjGSxcI
   P5zk5Ji8oecaFNx2orS1mll73LiOIWewtc1dTv51xDIOMz0g4/KVdn/i/
   g=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 88DkJtVLEn5oSbeLruBjn8A3t8OJLEkFQ5YXhfrlqS/myBJgxVmLCmdCB7N8mOii5hdDqPdyKf
 TcrjVN4f6+tk+YQ7viAoeuiQluGPCh6n2fu039wnp7gYnM8Bzc9Bb7fv6TxUyYEMAsab8ATQov
 y64suw29zEKbqogoQvN9E68gSSBL8tafpCzNNPJx8AWUws3ik8y1rvCd0GmWn6mGpiztux5xwy
 Drn407NT+EghdH2iXXVq33DPaOfkM/QrzTnph9kVTDl3Qh7Zp5mMDoUt6X8BFAVvHWp9A197oX
 vSQ=
X-SBRS: 5.1
X-MesageID: 44041930
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fMmuyqva7ew9O0331zVN8ZgU7skCrIMji2hD6mlwRA09T+Wxi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmwybde544NMbC+GDT3oWfAFvAG0aLO4R3FXxf/+OlUyL
 t6f8FFYuHYIFBmga/BjzWQPM0nxLC8npyAocf74zNTQRpxa6dmhj0JaDqzNkFtXgFJCd4YOf
 OnhvZvnDardXQJYsnTPBBsM9TrnNHXiIngJScPGh9P0mKzpAm14733GQXw5GZ8bxpzx94ZkF
 TtokjCyYiI99q6zRLd0GG71eUtpPLRjuFtKebJpswcKjDHghulaoJ7S9S5zU0IidDq0nkGup
 3hpAohItRS5hrqDx2IiCqo4SbM+nIP7GLv0lCRi3eLm72HeBsKT/BvqKgcVzmx0TtFgPhMlJ
 hl8kjcir9sSTTHpyj578igbWATqmOE5UAMvMRWs2ZSSuIlGdhshL1axmx5OrEaEhn37Yg2ed
 Med/301bJtfVSWY2uxhBgI/PWcGnA6HhKxSkMfoMCi0z9PgHBjz0cDrfZv50s9yA==
X-IronPort-AV: E=Sophos;i="5.82,255,1613451600"; 
   d="scan'208";a="44041930"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YdcvkmpVhacNnANTd1oWofQuP6SHe1Dmy4g01hLG9cmAk2YFpL7tlAlExM2OF2OWg/lA07QqvbsdVB011DUl0nK7rpXEfgcWNskthJ1SVvMwgv2ewrKTwgv8urhxRHT9yMcKUzp99ETOUcwkWIo7rkN0JPKhSecP3HNYW9S5PUfd8FgEheB7hCIaxWHeChX2IZCWQcJeuH6obiertaehHyyR1D1h2QmB58bXGyjqsDjUHoE2Rv7JZrXE6w6zMGTehL7GJJwwIJ7sVICQw4kNV5yUqej0dgza+Te+bpqAjVQztmGL9VIel70Ba344G69E3iMMY8GguTvFgc555FCtbQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7AwccjTeH6mHGrlVLGtmNRrlrzvyZQE3qRjnJ1R6P1Q=;
 b=O88T3txHTTV4IzasBYM5VaQwTDL9N0Oco/hmk9BTeQULxwlyMdQbtvKHZY4tVZR05MzqUejirVLWeGBpjUjL9mVcZ5sSGe2hfgncjtn9oJrG36Yqcf/067XKd4o7pGWWQr2VHK6Gc7MC4PWI9SnzkRU77ibCbkm+l3DRKRwJ4mJZ2wEjMOJpqXDP1ApcU7bgm5956vhai4Og2uzbRp+oN/JZ5lvmxgtGeo3/qy0g4JkbwIw8j/FIBUo8UhclclOVl4k26QRfFFgaVx0S5xIa+wXHdTX1J++8Xawei+Vs7zjGQw4Dt3U2UALeIi3TrMKr1q9p178PKD8XeQh1tPteZw==
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=7AwccjTeH6mHGrlVLGtmNRrlrzvyZQE3qRjnJ1R6P1Q=;
 b=G0fehtwD7u8WB/PUAJr0WXn/toAQtmk7sdM2hJjOhQr3V6Mgyao2rMxjqi197C1omow/Bw0eF9OEIYsTUxsUymQbdyzVbcpmBDtIowk3/qspb6Zy2GGeXXVOzDWqBdWtNl5Tc9ekYV2FvdY4xsDL0ZJHgkIK5S3gVi4A+VV4zKc=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210427130201.2142-1-andrew.cooper3@citrix.com>
 <bdc85c8d-db7c-e9cb-d436-317a31f96e69@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/pv: Drop HYPERVISOR_COMPAT_VIRT_START()
Message-ID: <bdd45821-5164-a785-67bd-8f660c6353cf@citrix.com>
Date: Tue, 27 Apr 2021 19:05:54 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <bdc85c8d-db7c-e9cb-d436-317a31f96e69@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0285.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a1::33) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 2beefd9a-2bc2-4861-dcf4-08d909a71d37
X-MS-TrafficTypeDiagnostic: BYAPR03MB3799:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3799F0F2BB45E92D1D5EF207BA419@BYAPR03MB3799.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: mMyc8mqwI1K4wjnUcTJyHE6rV/R3DmVFEXsgfJAVbrtYIy1tR4IIQBmwy2WF0Z7pCcX2YymUaKrEKhxIfFulsP4K59PR8jEEhzXpDGeokDhrcjByJ6c4Af38j1sWTGHi3mL9Hv9XfWkXpfbTYS90oA0M9/GWfKqjdhzAQXrU/BgV1ZuKWy2BaC5Du7acko2VVyPm2i7i0XW67Z0s7m+r76DiGFgAMVh+Z8M9+XXHKlEm43re17Jl8E3RFo+NPPqNCts2ztYoxbSzI0OwDZCBmGW4MD8IFzhuxxC6fq2AWziQB8ssZXDopCoR80ShSRyso1/pfHQuagdAq3lWrudegMnbpcdz3M0g02MPtBRwklaKXa070d0WK4dtg09GTIUsFDQAAjj4AIVtSovhtnE202VLzPrTlGNwfVB5azf7shJZgzFvIKGfBGOOHveEniOGtgDkbUDQWJ1oINY389/vOFDj2tVY0ohURhtSxKbBD0n2LLczMYYgZZzi6eEehXGmqIBqQyN+HzjiVRn1vURG5qRTRHhGq2WtU7/kMBVPczUfAX2t1o2uHCS7r22qGW2TpmbQrVHXZybKsSipC+ntjqxeXk6G5Q3fS/mOeef2rLbtdHECvd0cJuuWqYpRVFCl0JzZfxzbPYsYRlVeQXY+HgaaTdT/SRhR+sq//ZAOKQFVzs/t1F0Eps5Yftebapsq
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39860400002)(136003)(346002)(366004)(376002)(6486002)(53546011)(2616005)(86362001)(36756003)(956004)(66946007)(31696002)(66476007)(66556008)(2906002)(83380400001)(8936002)(8676002)(316002)(478600001)(26005)(6916009)(54906003)(4326008)(31686004)(186003)(6666004)(16526019)(38100700002)(5660300002)(16576012)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?91sBe26SR19VvfeG7t48b/1b5TNhXZmsa0bqm/1?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 2beefd9a-2bc2-4861-dcf4-08d909a71d37
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 18:06:00.7662
 (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: NQZmRkZmnAIK4x+R8Mc+Lp5pEBSVcfpZ+zOUmCGiivOf0JJMw4CxCnSRJVNGfN3R77rgpGuSJ2vy5KRaUPHZC3fFbFZVRRzyLbA92IudpqQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3799
X-OriginatorOrg: citrix.com

On 27/04/2021 14:18, Jan Beulich wrote:
> On 27.04.2021 15:02, Andrew Cooper wrote:
>> This is pure obfuscation (in particular, hiding the two locations where =
the
>> variable gets set), and is longer than the code it replaces.
> Obfuscation - not just; see below.
>
>> Also fix MACH2PHYS_COMPAT_VIRT_START to be expressed as a 1-parameter ma=
cro,
>> which is how it is used.  The current construct only works because
>> HYPERVISOR_COMPAT_VIRT_START was also a 1-parameter macro.
> I don't mind this getting changed, but I don't think there's any
> "fixing" involved here. Omitting macro parameters from macros
> forwarding to other macros (or functions) is well defined and imo
> not a problem at all. In fact, if at the end of all expansions a
> macro evaluates to a function, it may be necessary to do so in case
> covering not just function invocations is intended, but also taking
> of its address.

It might be well formed, but it doesn't help at all with trying to
follow what the code does.

>
>> --- a/xen/arch/x86/pv/descriptor-tables.c
>> +++ b/xen/arch/x86/pv/descriptor-tables.c
>> @@ -235,7 +235,7 @@ static bool check_descriptor(const struct domain *do=
m, seg_desc_t *d)
>>              if ( b & _SEGMENT_G )
>>                  limit <<=3D 12;
>> =20
>> -            if ( (base =3D=3D 0) && (limit > HYPERVISOR_COMPAT_VIRT_STA=
RT(dom)) )
>> +            if ( (base =3D=3D 0) && (limit > dom->arch.hv_compat_vstart=
) )
> I expect this (and a few more instances) to fail to build when !PV32.
> It was the purpose of ...
>
>> --- a/xen/include/asm-x86/config.h
>> +++ b/xen/include/asm-x86/config.h
>> @@ -254,21 +254,16 @@ extern unsigned char boot_edid_info[128];
>> =20
>>  /* This is not a fixed value, just a lower limit. */
>>  #define __HYPERVISOR_COMPAT_VIRT_START 0xF5800000
>> -#define HYPERVISOR_COMPAT_VIRT_START(d) ((d)->arch.hv_compat_vstart)
>> -
>> -#else /* !CONFIG_PV32 */
>> -
>> -#define HYPERVISOR_COMPAT_VIRT_START(d) ((void)(d), 0)
> ... this to allow things to build in the absence of the actual struct
> member.

Hmm - I really should have got this change in earlier, shouldn't I...

For this example you've pointed out, feeding 0 into the limit
calculation is not a correct thing to do in the slightest.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:07:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:07:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118834.225143 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS7m-0003IA-CY; Tue, 27 Apr 2021 18:07:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118834.225143; Tue, 27 Apr 2021 18: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 1lbS7m-0003I3-8i; Tue, 27 Apr 2021 18:07:54 +0000
Received: by outflank-mailman (input) for mailman id 118834;
 Tue, 27 Apr 2021 18:07:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbS7l-0003Hx-U3
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:07:53 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 95c9866a-8691-439b-829c-f1c14cd3e28c;
 Tue, 27 Apr 2021 18:07: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: 95c9866a-8691-439b-829c-f1c14cd3e28c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619546872;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=5bhsfNCvq6u5nRAaWA7AijvgxaPM7/WhSGEiveMMfoM=;
  b=iHmf0+b/Rqf2P6zEii1wPNMkUPqfWPSkoX/f0+O7KuuCI7xd8o7kaWB8
   eLAK4QTTEw4t4jT0PmGUAF31OnUyFQf5+UI5AiT0VmUsgvv2B2nGbuIVA
   fPHOaUGMAjdgIvFchA+mwHNQOBetgIfk3aDl/j6NzUK6+bbMhUsSsqBdd
   o=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: /Pus4mt7meV4lbn1fyrJLKulIfF9BWGeRsjpqgpDYqTmtUO8ZaFVHBVTZzakHQUPotUP/SgeCz
 roxXxbN4mqHtHfi9Y7H9rBnBRntKznLRZcWIKr4IpV7xltsba7yTYbRJp3UtfTD7VUD/dPYetg
 p0tv92mw6bVBNK7NLTCg5JwADG1sLTrVac0hCNWICQgUQ6z9R2b0lhBo3ahpQOtO5W5ps8tz/r
 gwprRohR4kaJ6SALIfr+i2sGTDpsCIVYbnnRCbNsUUWElWhdHWL+KFkB3kfUCIMqWPbkfK/XrB
 BU4=
X-SBRS: 5.1
X-MesageID: 42658483
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:QhXpCKhcdFRRDsSqLca9PBKljHBQX4t13DAbvn1ZSRFFG/Gwvc
 rGppsm/DXzjyscX2xls9WJIrPoewK6ybde544NMbC+GDT8sGyzI414qafkyTvsGyrxn9QtsJ
 tIWa54FdH2EBxGnd/3iTPIceoI7dGb/MmT5Nv24GxqSWhRBp1IzwNhDB2HGkp9SGB9dPwEPb
 69wuYCmDa6Y3QQaa2Adxo4dszOvcfCmp6jQTNuPX4awTCUjTWy6KPreiLopys2aD9Ezbc8/W
 WtqWWQ2oyYr/q5xhXAvlW8071qmcDswtYGOcqUisJ9EF7RozuvDb4MZ5Sy+BQ8oOSi8z8R4b
 3xiiZlG8R251X1UgiO0GPQ8hTgyzon5jvjzlKVkBLYy/DEeA==
X-IronPort-AV: E=Sophos;i="5.82,255,1613451600"; 
   d="scan'208";a="42658483"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=acaaoUuxvNrx9DS8/CFx0l0l5E8sH/B03Hi5YtYo/tPi+4edVYTv2rkjERXk4Ook7peNO/5gDOQEkp6G/2Lxvx4uhMr5VSpWCj1YQcA+GBmi8k9c9nZQPbcwD80WG7wLDKpNnlJH1C2JLaybnjJC/EITC2SNsXh0JPIkZdV5Kxj3GhQOEG1tnaJBMklhgng66ZC8iUJqLV3h9waADifRXMO3OeLIoj3XifAn2vGdjIyzGUxjQeSEmHkXQ9jTbph/yDACLvHkxSPyO4znPG1i/9cvgAfs/93q/qZkvUKL5FMKffkKNzyhHmx73QXw3/hVuiqz3q7cAySnec6TwODzkA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0cD5Er0KujSlLLnnmEad21Ga6zZz6hn6HOhqtsSdkss=;
 b=VDazG8baqIaqIqJmhIJlCuikAWnF5vH6iigDDZUNYaRIx6LSTHKAs7B0de90U3w/ctmXIxx/xbAAbJv2X2g3VbU/M0BiCViHXYrGOhRyh2kTbXp7e607UDn8o/VeCRrjZkYPQpZppzNv0aGErIVH0urYYGLobczbGIF5qjCO3PZbgrwrC+PVRwHvXxd3VB43b+MNRZMy/uKhGrl67iQ/8X6Ygf6BNrwscQ6C0mcjLW57FYNWhS98irb/OISu3DI38kjRUYDmXpQMfqxW3g9ly9vrKI8BQV5pHYjnbyxIQNluLjaP5nQTVHdhriXmvH3kOAELNRQBOAUQuHNbpnbRGg==
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=0cD5Er0KujSlLLnnmEad21Ga6zZz6hn6HOhqtsSdkss=;
 b=enxdslWs0Hig0HtNsL2zSwAAEfT61jcTCQ3CcihVsPxT9hu6DKBE7kjr42/xzLXs4O2Z3j2wqupmZcrUfjdMmudgmdCulgI1oTQJ59G3IZQSgeXoAwxaQDTtui4vxf4Of83/FvOq+m/r4gozj+0Mo277T3TM6coFFf2hYzjkjVM=
Date: Tue, 27 Apr 2021 20:07:43 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3] x86/oprofile: remove compat accessors usage from
 backtrace
Message-ID: <YIhS79tn2J3FpJSy@Air-de-Roger>
References: <20210427142113.31961-1-roger.pau@citrix.com>
 <6812da01-72ef-7b88-9512-2feb250de223@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <6812da01-72ef-7b88-9512-2feb250de223@suse.com>
X-ClientProxiedBy: MR2P264CA0190.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::29)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 342d97c4-7771-4459-c3a1-08d909a75e4f
X-MS-TrafficTypeDiagnostic: DM5PR03MB2556:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2556E29A277E65E4F7833E0C8F419@DM5PR03MB2556.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: InoQttS2DIiL2/yQmF9aWXul9bKZQT14lF/0/8gBKsvkDrgrXAySQOCajs4C//nuPDK72rzAZAagDvZK52dLdGsQgUPvfuLw1Nl3tXGzu1TZcdnSMBmFG9PUoFsN9umiapQbR39OXDXAbIuz1f/PE5P1daf9o3sSS14dIJ14SonxO7x3XcuRExmjLUaJW+GoXsnxwlmDPTbIw4mZt5txTaLVlHRUe/kGvbkIMPnZn+UFEG1L1ZdqW5CvFEBx/PyzydZ2KPHK/nGwYORNuBXHqDHBvCwJfJK7H+2GVR9jlkiEXqVGDfpDJ0wS3tLpAn03mkn+6dPvi86Nko5xN5GDio+/k9ZOA8ddKJvLMwWQiOelLTIFyQGk1Rzutk4vDYE47ou3d6rBo3xsiQNlmCFI5BYNvwC93CiPeNWV4p67j7xf2ItGNoInn2xA/+M6w/IKU7hXcJSiVdOceHy+27ewWoj2X9jvX4f13gqyG/DkCgXLlDNb746m0iufj9J0oeLASoIxH5/WMPJ+v/VwDY1DowuinhBxVzj4w4rIUR+kaM/4q/pJMLvRxJTDhXegjYeGWuq0spiBONetc4DGu3JNLkUjywUockWy4ujyouBa1mc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(39860400002)(396003)(376002)(346002)(366004)(136003)(6666004)(6916009)(2906002)(4326008)(53546011)(6496006)(86362001)(478600001)(316002)(54906003)(33716001)(16526019)(186003)(6486002)(38100700002)(83380400001)(8676002)(26005)(85182001)(4744005)(9686003)(5660300002)(66946007)(956004)(8936002)(66476007)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 342d97c4-7771-4459-c3a1-08d909a75e4f
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 18:07:49.7175
 (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: mfdIeFKMDpxkrZog+6sWH9JLi761R+GKiN+mCVFeH+jEcd8RtPATkqIpUgQSh77lyOkU5WAAwkUOyZzk6nlu2g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2556
X-OriginatorOrg: citrix.com

On Tue, Apr 27, 2021 at 05:37:22PM +0200, Jan Beulich wrote:
> On 27.04.2021 16:21, Roger Pau Monne wrote:
> > Remove the unneeded usage of the compat layer to copy frame pointers
> > from guest address space. Instead just use raw_copy_from_guest.
> > 
> > While there change the accessibility check of one frame_head beyond to
> > be performed as part of the copy, like it's done in the Linux code.
> 
> Oh, one further question: I suppose you mean historic Linux here? I
> can't find anything like this anymore in current one. If so, I'm
> inclined to suggest "..., like used to be done in the Linux code."
> Or something substantially similar.

Oh, so my local copy of Linux seems to be circa 5.11, and AFAICT the
code was removed in 5.12. I can reword as: "..., like it's done in the
Linux code in 5.11 and earlier versions".

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:09:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:09:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118842.225154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbS9e-0003Ra-Og; Tue, 27 Apr 2021 18:09:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118842.225154; Tue, 27 Apr 2021 18:09: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 1lbS9e-0003RT-Lj; Tue, 27 Apr 2021 18:09:50 +0000
Received: by outflank-mailman (input) for mailman id 118842;
 Tue, 27 Apr 2021 18:09:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D0mD=JY=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbS9d-0003R8-Sk
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:09:49 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id aa5fdbeb-668e-453b-b05a-f57b2b8e9dd3;
 Tue, 27 Apr 2021 18:09: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: aa5fdbeb-668e-453b-b05a-f57b2b8e9dd3
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619546988;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=1AvFKeOrp4+O/HvBaERDw6y5ogw43qaHXbedk47mTvE=;
  b=eSPPhJxqEN1EAXWT+ENFzN5iFQxHTM4lS6qQV0Ww5X3fLlbbX8f/yqF8
   oifEMy+xDzxiYYWB5F6ZVqb3rSRhDZHtRVXODE373EHJ9NBeVwwAN3qkf
   B9p20nRbl4Q+jplgtrcIhommo56aai9vW06xoDW3Nj1Nekmfn35APaKVZ
   g=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: C/I8yhMGUUf2e6ZOJl+Msqrhff7KIEWzWtcBrCWAzyNqh7zL1UdzHRPU318NC8D+pTAKvD/XAb
 9zi3WC+qUav3IHiGq2X7xgoNBIWjCBhMRlSMtZmh/m/8nx6jYDEF0S6HFED/a0hlngMoEEoE70
 mG4M+Hyx7LbmRodps5b2OvLVOOGlIzIcY0H4WjPIjmZhd6uuw9pES1Q4qHE98c0/o7eHTDKQoI
 zjo+Bg7tBPYdmRjIJOYVlQVmiNNktkGXtggO50VTwoKeQI1brGQvtLFGhCvr11FaxvaACqjf0G
 7VI=
X-SBRS: 5.1
X-MesageID: 42547804
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:O2ZqBa5eS4t5v+hxVwPXwXiEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbTqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH76GL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnk4j41VTRTzbA+tV
 XUigCR3NTZj9iX6D/5k1XS4ZNfhcf7xrJ4avCkp8AJJlzX+2SVTat7XbnqhkFRnMiO7xIQnM
 DIs1McOa1Img/sV0WUhTeo5AX6yjYp7BbZuC+lqF/uu9bwSj5/K+cpv/MhTjLj50AtvM5x3c
 twtgrz3fonbmKzoA3H69fFTB1snEavyEBS6dI7tHBDTZAYLIZYsI13xjIlLL47ACn45Io7ed
 Meav302fA+SyL/U1np+kNrwNCqQ00pGAaHTkUoqqWuokZrtUE84E0CyMMFmHAcsLo7Vplf/u
 zBdp9ljbdUU6YtHO5ALdZEZfHyJn3GQBrKPm7XCVP7FJsfM3aIj5Ls+r066MyjZZRg9up8pL
 3xFHdj8UIicUPnDsODmLdR9ArWfWm7VTPxjulD+plQoNTHNfrWGBzGbGprv9qrov0ZDMGece
 20IohqD/jqKnarMZpV3jf5R4JZJRAlIYwok+d+f2jLjtPAK4XsuOCeWu3UPqDRHTEtXX66LW
 AEWBT1OcVc/mGmUnL1m3HqKjHQU3262ag1PLnR/uAVxoRIHJZLqBIphVOw4dzOCTAqiN1yQG
 JOZJfc1o+rr2i/+mjFq09zPABGM0pT6LL8F1dDpQoANVLIYa8O0u/vPVx67T+iHFtSXsnWGA
 lQqxBc4qSsNaGdwigkFpaBPn+FiWAQ4FaHVY0VlKHGxcqNQOJ3Mr8WHIhKUSnbHR18nghn7E
 1ZbhUfe0PZHjTyzYO/jJIVA+nbX8JmgBiiJPNVrX63jzTemegfAl8gGxK+W8+ehggjAxBOgE
 dqzqMZiL2c3Qq0JXAHm+Q+Ol1UYGGxCLZLZT71I7l8q/TOQkVdXG2KjTuVh1UWdnDx/0sfvG
 DnMBaZYOrGGFZbp3Be3Jv76V8cTBTvQ2tALlRB9aFtH2XPvXh+ldWGYae+yEO9QFoPyON1Ck
 CPXRIiZidVg/yn3h+cnziPUUg8zpI1J+rHEfAIaLfIwE6gL4WOiIALF/JZ54xeKdjrq+MHON
 jvPTO9HXfdMacEygaVrnEqNG1Is3Eii+rvwwCgw26i3nIzaMCiVmhOdvU+GZW74GflTfrTj8
 k8otIxoOeqMmL+LvSB0rraajZfKhXV5U66JttY3ax8jOYXjv9UGZKebB7jkFdg9z86JN3vlE
 wfTL9giYqxcrNHTog3QWZh4lEtlN6zN0MlvQz9P/8mcTgW/grmFuLMx4CNlKEmDUKArjbhIF
 Wz8yVS+PHeQiuIvIRqfJ4YECBzaEIm7m5l8/7HX4rMCB+yf+UrxivxDlaNNJtcQrOCA7Mes1
 JT5MyJhfaec27d1BrLtTV2ZoJI/GDPe7L+PCu8XcpJ+ce9I1KCn++D59Oyli7+TX+DUHsj7L
 c1PHA4X4BkkTktjIo+zyi0ROjWmyse4iRjyAAisEXs1Iig6HrcBmdcP2Ti88xrYQU=
X-IronPort-AV: E=Sophos;i="5.82,255,1613451600"; 
   d="scan'208";a="42547804"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XjUZw2r3+XR5inio0OGo2Kw2wgCCw4VvDBfI41tMWcBIJ6S8tfkU4nPgciw/JjZFpS6W/JtbFxH6C5IOUxfYBDLBuwynfhjH6f0pXg5RjgPanaHjhT721etGxhtaGUMxt1a5tzVJ9K/3NbVgHCqAsc05tCHxjl1+b3Rx9rfG4o5Xp5mvN+J8fpVSUM236KaISeaF7kvxTm8DnGtL1OhEoDBFLF031zlqwXggbU/E8M72jIIgO1lgwxoy9JPQaOjZJ2qi29mR/94am8rAkn8cVheOeyBnlwQwLXs4gB1PBMaqnuyI4agzOxitvTPHrG4qbuTCVX4BzSa+L5/cwXNSag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8EtjslWbA3PPA9T1H+hic1zK3kJFLC2l/VM20RxDb94=;
 b=PWLfM8wVqCSHPEvoTlGyHAUggE91TiXKMGP5mcXqOwz8LhD8GKrK1hETvFvxueyKGHW9cYBSajsE91aRVipQK0Qza/+uczbJpT6PzDgQqEz8RXCBu6W47Dh1+ZLiMkKe2HweGMtZubkKf8rek/8zv5zxI4taLlOf7UVpmOj+Gim6J3VPWkF2MmNSQawpKV4Snct23FgqAqmZefAm31FofHofrv3R3Mwm/z7qH5Kx84etphM4GSV80mBNA7wIQ2g3czt3y5YtvJOpuh5apjp0if75ySpzdXWmhfUUXPpdajyoKov2BkTEMkYCK2RnAU5+DR5Q3fNAUp3S4OCQNCaFyA==
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=8EtjslWbA3PPA9T1H+hic1zK3kJFLC2l/VM20RxDb94=;
 b=n7916bY9vcu8ajBxYKxCNMDJH7VmZmhUsgcqJ8Tc+spyt1mcyNHtZb+yhFbxNGmyiFmBx7MmQ3flXMKlU3K2zTeEXOXa52sLloLAmhhYIc4A7MaKwq9f5ztMIc1FANvCVJ7sEeAkOGMqoLGUX5Cmoq0dFUpHVsOdFrncl7Lrdf4=
Date: Tue, 27 Apr 2021 20:09:38 +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/oprofile: remove compat accessors usage from
 backtrace
Message-ID: <YIhTYn668JwHgvqj@Air-de-Roger>
References: <20210427142113.31961-1-roger.pau@citrix.com>
 <3aa0fdb1-87c8-39db-98eb-26664a0569ab@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <3aa0fdb1-87c8-39db-98eb-26664a0569ab@suse.com>
X-ClientProxiedBy: MR2P264CA0060.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::24) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0859e362-6d83-4792-69ce-08d909a7a293
X-MS-TrafficTypeDiagnostic: DM5PR03MB2489:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB24891A7B0E3DE6C85A29AC3A8F419@DM5PR03MB2489.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 0xKCRlFUJwPqWdTzu2Z8UP3IMeV6SKOAYV+J9F9j0yhoD1Id6jGjvIgwFQfyX1+f51mr1TQyqrUxMRLgBk0M/S8ku6jQXh2oRW2n83CVWFJYWvTx4RkCVDZcItjg6NxfovcMbpKgB0Iba0Ffe347zND44LeCAHXvaOAojvyipl8gxFFd89XS4MqWSsVjEl2L7Su5w61buRn2FpwKmcAPFgnoSgP2HZpZ6GVlSL98PiOUe0Sg70UrhXkKWwzo9aPn10mj8FaExRnbPs6+0/98TForR4mhJNQPUEUkxLXiyo6wnnfOLJK1GuAuNhDpZv3Td2kmfaj2s3C9zNhG3rglchfCoYHaPruqcRrK69fJtX6+VGhGjZ18RLuBWaqsEauwDFbAZ470cwSJ6VbKSXVpDZGfSEkEm7FD2segsaCKxcSvd2HnSNAiPRRuiuaCGQ64IY3M5goly8lHL7PJMznQW648T+ePTLWgQ0hCvE8yNFHMvTMoUC/MOkSSqa398tsv4cwAIYURbsVecIi5RI1+tc7LC73/70jDL7BVRLRkQIPYP3aHtduAKMjkDAvOuwV5Nr90/HsjVkQv1sN1l1UE8gvPRhkOBatJm6nOG19eAgA=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(39860400002)(376002)(136003)(346002)(366004)(396003)(9686003)(26005)(16526019)(54906003)(6666004)(6496006)(86362001)(186003)(4326008)(38100700002)(85182001)(6916009)(6486002)(83380400001)(956004)(33716001)(316002)(66476007)(8936002)(66556008)(8676002)(66946007)(478600001)(5660300002)(2906002)(53546011);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 0859e362-6d83-4792-69ce-08d909a7a293
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 18:09:44.3654
 (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: 78XrNRSGMpBpzs2c/y/nPTTt7TjLTH+iP3b03M+8YepGtUn4v6eBGbz7dvwquOePBxAKMOF5b7sENhjlhvNTTw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2489
X-OriginatorOrg: citrix.com

On Tue, Apr 27, 2021 at 05:31:25PM +0200, Jan Beulich wrote:
> On 27.04.2021 16:21, Roger Pau Monne wrote:
> > Remove the unneeded usage of the compat layer to copy frame pointers
> > from guest address space. Instead just use raw_copy_from_guest.
> > 
> > While there change the accessibility check of one frame_head beyond to
> > be performed as part of the copy, like it's done in the Linux code.
> > Note it's unclear why this is needed.
> > 
> > Also drop the explicit truncation of the head pointer in the 32bit
> > case as all callers already pass a zero extended value. The first
> > value being rsp from the guest registers, and further calls will use
> > ebp from frame_head_32bit struct.
> > 
> > Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > Changes since v2:
> >  - Keep accessibility check for one frame_head beyond.
> >  - Fix coding style.
> 
> I'm indeed more comfortable with this variant, so
> Acked-by: Jan Beulich <jbeulich@suse.com>
> 
> Andrew - can you live with the 2-frame thingy staying around?
> 
> > @@ -51,52 +49,35 @@ static inline int is_32bit_vcpu(struct vcpu *vcpu)
> >      else
> >          return is_pv_32bit_vcpu(vcpu);
> >  }
> > -#endif
> >  
> >  static struct frame_head *
> >  dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
> >                       int mode)
> >  {
> > -    frame_head_t bufhead;
> > +    /* Also check accessibility of one struct frame_head beyond. */
> > +    frame_head_t bufhead[2];
> >  
> > -#ifdef CONFIG_COMPAT
> >      if ( is_32bit_vcpu(vcpu) )
> >      {
> > -        DEFINE_COMPAT_HANDLE(frame_head32_t);
> > -        __compat_handle_const_frame_head32_t guest_head =
> > -            { .c = (unsigned long)head };
> > -        frame_head32_t bufhead32;
> > -
> > -        /* Also check accessibility of one struct frame_head beyond */
> > -        if (!compat_handle_okay(guest_head, 2))
> > -            return 0;
> > -        if (__copy_from_compat(&bufhead32, guest_head, 1))
> > -            return 0;
> > -        bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
> > -        bufhead.ret = bufhead32.ret;
> > -    }
> > -    else
> > -#endif
> > -    {
> > -        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
> > -            const_guest_handle_from_ptr(head, frame_head_t);
> > +        frame_head32_t bufhead32[2];
> >  
> > -        /* Also check accessibility of one struct frame_head beyond */
> > -        if (!guest_handle_okay(guest_head, 2))
> > -            return 0;
> > -        if (__copy_from_guest(&bufhead, guest_head, 1))
> > +        if ( raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)) )
> 
> As a minor remark, personally I'd prefer the & to be dropped here
> and ...
> 
> >              return 0;
> > +        bufhead[0].ebp = (struct frame_head *)(unsigned long)bufhead32[0].ebp;
> > +        bufhead[0].ret = bufhead32[0].ret;
> >      }
> > +    else if ( raw_copy_from_guest(&bufhead, head, sizeof(bufhead)) )
> 
> ... here (and doing so while committing would be easy), but I'm
> not going to insist.

Sure, the & is a leftover from when bufhead wasn't an array, or else I
wouldn't have added it.

Would you be OK to drop the '&' and adjust the message mentioning
Linux <= 5.11 on commit?

If not I don't mind sending an updated version.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 18:57:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 18:57:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118861.225167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbStD-00083c-Bl; Tue, 27 Apr 2021 18:56:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118861.225167; Tue, 27 Apr 2021 18: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 1lbStD-00083V-7Q; Tue, 27 Apr 2021 18:56:55 +0000
Received: by outflank-mailman (input) for mailman id 118861;
 Tue, 27 Apr 2021 18:56:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vdCB=JY=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbStB-00083O-L9
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 18:56:53 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a5426bc5-cf69-4c9f-81f6-07dac1f9d463;
 Tue, 27 Apr 2021 18:56: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: a5426bc5-cf69-4c9f-81f6-07dac1f9d463
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619549812;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=u05wjO5t5p/1YzwMkHEjmTBXoni8xkmWqYG69Y9UsjQ=;
  b=TXTnkPTYzO93wjPYCkhdqeRH5aZ7mwxlvZP+TMRNKJpgZbVPWQh3VQJ/
   g8lDJUX7JKI9PpLGrnSgAPTDcW2dEY6EWvvNdvuPuWdLk3doTIp2FvwBH
   y7p8FG37vW+xO5NZS/igD7kWdDN/fl0VkEcBD31KzYaT6heMVCevsxrm4
   E=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: G0O1+TQPNxZGkCgtgvJ6Jdv6MwwqAfGoT5W2QV8vHAtPieTm+4j0jeGRxBe/1J7NiZJKD3zDEN
 S044cfxk2Ibc6Ljv+uUlK4EsuXRBZTOwflID6uq02eBuYN9vZkJ9x+TBX3MjS7vsUKsgNiuc58
 TQ3rMPYKmJlaY9ElTyaKBS/xcKy14dkY/ZnPf8Er0zuAdxW4teELgDVZo4CipbvL/Ljvu7lzWB
 s63wvBbomJ2H81wTPT/6Uq8YGFt+HVwScWRzEJshzh+cD0MaWp8WtlUDknhnHhdMdIDTRAzTMu
 GNY=
X-SBRS: 5.1
X-MesageID: 42662134
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:WuP1iqHjiM7m7OA9pLqFR5TXdLJzesId70hD6mlYcjYQWtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7L0/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeOJwTXzcQY76
 tpdsFFZOHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLT1CQYsI1XYcNi+wFEpqSA5aQb8wE5
 SB7sRKzgDQB0g/RMK9G3UDQqz/vNXNjp3relorABQg5QmIg1qTmcHHOjKf2QoTVC4K/Kc6/Q
 H+4nDEz4iAk9X+8B/T0GfP849b8eGB9vJvDNGB4/JlUQnEpR2vYO1aKtu/lRAz5Nqi8VM71O
 TLyi1QQvhbz1P0UiWLrQD22w/muQxemUPK7VODm3PsrYjYaVsBerJ8rLlUeBfY9EYs1esUuM
 kgshP7xvgneS/opyjz68PFUBtnjCOP0B0fuNUekmBFVs8mYKJRxLZvj399KosKHy7x9ekcYZ
 BTJfzbjcwmFG+yU2rUpS1GztCqQx0Ib227a3lHkMmU3z9KpWt+3ksVyecO901whK4Vet1q4f
 /JPb9vk6wLZsgKbbhlDONEesevDHfRKCi8fl66EBDCLuUqKnjNo5n47PEc4/yrQoUByN8XlI
 7aWF1VmGYucyvVeIyz9awO1iqIbHS2XDzrxM0bzYN+oKfASL3iNjDGYEwykuO7ys9vQPHzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYk8pss7YVSTucjGQ7ea9dDzQbL2Hv7AADwkUmTwDj
 8oRz7oPvhN6UitRzvWmx7Ud3TxelHu3J55HaTAltJjjLQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eaqACNjCH1xlQsHiAYIlde4b3mXX8PjxQNKVnIfbEKvMjaXWhT2XCANyJuVs++Kn
 8Ym31HvYaMa7CAzyErDNyqdkiAiWEImX6MR5AA3oqO+NniYZF9Kpo9QqR+GUHqGnVO6EZXgV
 YGTDVBal7UFzvoh6ngpocTHvvje951hxruB9VVp3LZvUC1vtouWXMfYj6rXaes8EMTbgsRom
 c0374UgbKGlzrqA3A4mv4EPFpFb3nSPKhLFz2fZIJfmqnifSZ5SWviv03CtzgDPk7Rs2kCjG
 3oKiOZPdXGGEBUtHxj3qH2y19sbWmGc0Vsand1jJ1lGQ39ywNO+N7OQpD2/3qaa1MEzO1YCj
 3DbDcICi5Fxty81neu6Xu/PERj4q9rEv3WDbwlfb2W52ikL5eQk7oaW9VO+ox+CdzouugXcO
 6WdgOPNgnkA+cx1wH9nAd8BABE7F0f1d/40hzs62a1mEMlCf3JOVJ8WvU1Jcqf42WMfYfB7L
 xJyfYO+c2+PWX6ZoTYleX5bztfJgjSpmDzZecyspxQtb8zsrw2P5Sza0q/6Fh3mDEFaOHznw
 ciZY4+xpbrEIpmZdYTdCJU5UBBrqXEEGIb9ijNRtYjdlQshULBN9yH47D0uaMia3fx0zfYCB
 26yWlh5P/LUCuI6K4CB48xKWpQblIg6H4KxpLKS6TgTCGrffpE5ly0LzuUd6JcUrGMHdwr31
 pHyuDNu++cbCzj3g/M+RN9P6JV6m6iBee/GhiFF+IN09u0Pz238+SXyf/2qDf8Uj2gbUsEwa
 VDaEwLd8xGzgAYs7df6Fn4doXH5mQ/k1Vf5jl7llninqieiV2rbH1uAEn+mZVZXT5aL36Sq9
 /KmNLoj0jA3A==
X-IronPort-AV: E=Sophos;i="5.82,255,1613451600"; 
   d="scan'208";a="42662134"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EhoNKBm7CJlQZT5mKI9tNzaW9ZcX0Q8uP6CIIZUYbcTUNf0DRXa2kVUEzwayOALw0BWFBHSfuUUwzAaGfwEXs7rsTaACYMjl3LBsyYc3A0qX4wkWXec9Gs2GvlcL0AA2OlYd2W2a/TP8JZlmjXiSm5sBE1UL2K5D7VMEVpR//FyqjcnjMmAikvbzMkchYQQFkdx30cLoQwmT/kv5ywiq8A7rk103hdLlUrx0bCF/ZVpuISgHDolK4kjqTKLELgQl4wcwXCbppE/ZhDaeBvwljsruwtBbnWNowPdPzE6IR11kPdSdydZDEHBtoxePsE51mc78FcLygmhc9YDZbXfRIA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UNba0iWHx+8tnNGEoXRZkYz9+FAmFBLwR09IWBw4wGs=;
 b=BELf1WkwlPEdBrTVjbew9Xi7xqBye59Exwp3oiiGqz0MLWX5FJSt1OzXJj6sZKEv7cGmMalzBbyktPJT5t/cnUvFE4vIF48aXsl9yaZu/V9qavr1nejsCXx1JwgTE7NocfEkjBFxr5pu/cX91jWFcVSnvokXWDSKM4ieM6ITwUITJzOmLn2WJDivVBeiqcZWilTyaZ8Q5yqduWudOA7s3uE3q52MOzxjsIhPx3cLtn4JZ1sWc7bw8M+gJqbOiockBL4n4hGiaPBzJ0zqBu5dDAi9DSbIYgCKydJ0wqr8vnYdf6YqyxnjaRcg/6mZAfQlDm8aq3NQf5TscOakkRpZCg==
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=UNba0iWHx+8tnNGEoXRZkYz9+FAmFBLwR09IWBw4wGs=;
 b=ep16otc+qhKRxJKZA/MOPPTcfyOJkz/a7EWtGY/a6a0j/OmjZdeNKG/6MPxEJO+io1tpvnztIZd8bY4PE3meL15Cb5+K4kZm01VE1Lc4QP+LzJ48YBE/ZODnbIR0DvkYLAy/YHQBCWKXMMAS6FWbE+ijfFQUryCUNjy2Ia7Wcx8=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426124535.23814-1-andrew.cooper3@citrix.com>
 <f11189be-7ce7-ed54-a078-541eb3513eba@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/emul: Use existing X86_EXC_* constants
Message-ID: <8c23d63a-e93f-6d2d-aaff-c816503f73e2@citrix.com>
Date: Tue, 27 Apr 2021 19:56:41 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <f11189be-7ce7-ed54-a078-541eb3513eba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0493.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13a::18) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 4fd13e7b-24c2-44b8-dfb5-08d909ae35c3
X-MS-TrafficTypeDiagnostic: BYAPR03MB3735:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3735FDB33BEAAF54D78452ACBA419@BYAPR03MB3735.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: EgAQsJvfoJumPCroDOzN4HhbujIm5HyTqtD3DbzE16WA/Rb+dJDNhE5Lyo2zUk0DA+mgDmlqn7/gqNbCxT8rK3zk9QmAD5RLC0xVNZatSUSRw3aHHO24ocEyzM1VbCPI+hPqoq2mUmVCoFcjcvdznnjZ3/Bq9qnRzpx3izrZAxT55DcHm1G9SADhqmZgIIH/QQaYD7Hr2g1oPUmFVAmN8qDewIN2Alg+nr0pbPoUTrWF3GUhTX8q8XY1rBHI/RFP6sHm3VaQONnZBYW/Y0AukIeBQGpm7LXWLI1XCfustYRkOen12+Qhp6joYMTg6HnK/e9JHZZym1q+H5Qo9SB3Fk04Sll/NRAjZxZnGTpzRf8VIeU5MRrgFrq8IMDSM4eP05CxFdomhM1NgDWlMnZVvJLsdETrH3cQjks3GZ0+PVexyImMBhZuVkUBlcZyO5Q8H2prnreGSUwEfNj/rqxYgW6DiuPf9Q3l+raabDXsqZSBaa2Cm6gbc20/Ro9ezpLW/CHMgEXy2myrod01sFWGu6AtfEYTPgeJ6ah03rB0z7ew4hGEMQR5atX+vf0Um3PspzjUSC1iRXcFfIAzSIQYSP8qzsdQcKAMUXyam4iKhzWUaF56UQjdUoEFv3zaiKf6j6Gsd+R3wDAFSQTxwKi44sXNJNV4GqG7O3NWC052wMdSkSJjrQ6Uu5iQoUEf1/Gq
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(346002)(396003)(136003)(39850400004)(66556008)(66476007)(31686004)(66946007)(186003)(2616005)(6486002)(956004)(16526019)(54906003)(26005)(316002)(6666004)(36756003)(16576012)(5660300002)(53546011)(478600001)(8936002)(38100700002)(83380400001)(8676002)(6916009)(31696002)(2906002)(4326008)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?Zxt16VhbC2fxrRtc4Jlqt30PYyOdR/Pr76eSxWe?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 4fd13e7b-24c2-44b8-dfb5-08d909ae35c3
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2021 18:56:48.3412
 (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: NlJlmv3NhoO+prqXeEQoyqkc2O+sRtok41payjxWTeJrfiCiI05PhUV1YLsnloeeiRAv08R2akGv94Gu6bk9RmOoHXbKZKe4SXSvWzdPAxk=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3735
X-OriginatorOrg: citrix.com

On 27/04/2021 08:09, Jan Beulich wrote:
> On 26.04.2021 14:45, Andrew Cooper wrote:
>> ... rather than having separate definitions locally.  EXC_HAS_EC in part=
icular
>> is missing #CP, #VC and #SX vs X86_EXC_HAVE_EC.
>>
>> Also switch a raw 14 for X86_EXC_PF in x86_emul_pagefault().
>>
>> No functional change.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> ---
>> CC: Jan Beulich <JBeulich@suse.com>
>> CC: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
>> CC: Wei Liu <wl@xen.org>
>> ---
>>  xen/arch/x86/x86_emulate/x86_emulate.c | 739 ++++++++++++++++----------=
-------
>>  xen/arch/x86/x86_emulate/x86_emulate.h |   4 +-
>>  2 files changed, 361 insertions(+), 382 deletions(-)
> This is a lot of code churn (almost all some slight growth) for this
> kind of a change.

Interestingly, no lines needed re-wrapping as a consequence.

[Answering out of order]

>  The other option,
> not reducing churn but reducing rather than increasing code volume (and
> hence imo helping readability), would be to have shorthands for at
> least some frequently raised exceptions like #UD and #GP - e.g.
> generate_ud_if(). Thougths?

#UD and #GP[0] are the overwhelming majority of cases.=C2=A0=C2=A0 If you w=
ant to
reduce code volume further, I've always found the "generate" on the
front rather gratuitous.=C2=A0 "raise" is a more common expression to use
with exceptions.

>  I'm not opposed, but I'd like to explore alternatives
> first. I know you often dislike token concatenation in macros, which
> would be my first suggestion to get churn down here.

Outside of a few specific cases, yes, but as you can see in XTF,
exception handling is one area where IMO clarity can be improved with
certain limited macro magic.

In the emulator, I could get behind a single #define RAISE() along the
lines of:

#define RAISE(e, ...)
do {
=C2=A0=C2=A0=C2=A0 BUILD_BUG_ON(((X86_EXC_HAS_EC & (1u=C2=A0 << X86_EXC_##e=
)) !=3D
__count_args(__VA_ARGS__));
=C2=A0=C2=A0=C2=A0 x86_emul_hw_exception(X86_EXC_##e, __count_args(__VA_ARG=
S__) ?
__VA_ARGS__ : X86_EVENT_NO_EC, ctxt);
=C2=A0=C2=A0=C2=A0 rc =3D X86EMUL_EXCEPTION;
=C2=A0=C2=A0=C2=A0 goto done;
} while ( 0 )


It's obviously playing behind your back, unlike generate_exception(),
and does build-time checking that error codes are handled correctly
(unlike mkec() which has a substantial quantity of code bloat to not
actually handle it correctly at runtime).

I dislike _if() suffixed macros, again for obfuscation reasons.

if ( foo )
=C2=A0=C2=A0=C2=A0 RAISE(UD);

is far more normal C than

RAISE_IF(UD, foo);
or
RAISE_IF(foo, UD);

neither if which is a natural reading order.=C2=A0 The reduction in line
count does not equate to improved code clarity.=C2=A0 Frankly, areas of
x86_emulate() would benefit greatly from extra spacing per our normal
coding style.

~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Apr 27 19:37:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 19:37:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118875.225179 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbTWR-0003IE-CS; Tue, 27 Apr 2021 19:37:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118875.225179; Tue, 27 Apr 2021 19: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 1lbTWR-0003I7-8Z; Tue, 27 Apr 2021 19:37:27 +0000
Received: by outflank-mailman (input) for mailman id 118875;
 Tue, 27 Apr 2021 19:37: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 1lbTWP-0003Hz-Jw; Tue, 27 Apr 2021 19:37: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 1lbTWP-0006Rd-Cm; Tue, 27 Apr 2021 19:37: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 1lbTWP-0001hq-3i; Tue, 27 Apr 2021 19:37:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbTWP-0002Ex-3E; Tue, 27 Apr 2021 19:37: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=bJW5THTyTgjdoCOTjMi0g37Ai95+/J1gwy+L24nOdSI=; b=3enOWRuwoJ5OS5rHsUxkHQ+tw5
	9dy3gerCKBBgrkQB/qyPKZET1woDN7jaGZKVLyj2NJ/npgYtO94j0HCNFntNZS/sMDh2raYkufuRY
	MWJ4pDHDkmNvRdpmZgdntFMipQ91qyuDlMcmsuycAGSIK3XRMecca3y2Gorg2nJNpJfw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161476-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161476: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-arm64-arm64-xl:xen-boot:fail:heisenbug
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 19:37:25 +0000

flight 161476 xen-4.12-testing real [real]
flight 161488 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161476/
http://logs.test-lab.xenproject.org/osstest/logs/161488/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2 18 guest-saverestore.2 fail in 161465 pass in 161476
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 161465 pass in 161476
 test-arm64-arm64-xl           8 xen-boot                   fail pass in 161465

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl         15 migrate-support-check fail in 161465 never pass
 test-arm64-arm64-xl     16 saverestore-support-check fail in 161465 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   70 days
Failing since        160128  2021-03-18 14:36:18 Z   40 days   53 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   38 days   51 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          fail    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 21:20:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 21:20:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118898.225199 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbV8E-0004bO-4i; Tue, 27 Apr 2021 21:20:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118898.225199; Tue, 27 Apr 2021 21:20: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 1lbV8E-0004bH-1e; Tue, 27 Apr 2021 21:20:34 +0000
Received: by outflank-mailman (input) for mailman id 118898;
 Tue, 27 Apr 2021 21:20: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 1lbV8D-0004b9-JF; Tue, 27 Apr 2021 21:20: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 1lbV8D-0008Bm-Aq; Tue, 27 Apr 2021 21:20: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 1lbV8D-0006Hv-0Z; Tue, 27 Apr 2021 21:20:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbV8D-00010i-03; Tue, 27 Apr 2021 21:20: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=p1tFdbL+pr0XgSU8lsLQAG4QINd8nC/Ysw3e4wj74rI=; b=txfoFbvYWecoqGaN9AtwGTF+2g
	PG5qBuLtGK9ZKuI6q0+KGGuREudAWi2kF2eJ4dI12943/pKjGBu2VTp+9bfJEcZltkgNqdV8WSg2W
	Hq0RxNrKTUS8L9+DFi4eZPDdcciHin1/QzVydtqnfwazGMZzgJw/4YbFCO6vbGe9hUGA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161478-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161478: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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: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-amd64-amd64-libvirt-vhd: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=4a0225c3d208cfa6e4550f2210ffd9114a952a81
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 21:20:33 +0000

flight 161478 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161478/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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          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-amd64-amd64-libvirt-vhd 14 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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

version targeted for testing:
 linux                4a0225c3d208cfa6e4550f2210ffd9114a952a81
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  270 days
Failing since        152366  2020-08-01 20:49:34 Z  269 days  451 attempts
Testing same since   161478  2021-04-27 06:36:30 Z    0 days    1 attempts

------------------------------------------------------------
5597 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1414277 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 22:01:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 22:01:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118913.225214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbVlQ-0008Fx-GN; Tue, 27 Apr 2021 22:01:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118913.225214; Tue, 27 Apr 2021 22:01:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbVlQ-0008Fq-DF; Tue, 27 Apr 2021 22:01:04 +0000
Received: by outflank-mailman (input) for mailman id 118913;
 Tue, 27 Apr 2021 22:01:03 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m5m6=JY=starlab.io=scott.davis@srs-us1.protection.inumbo.net>)
 id 1lbVlO-0008Fl-QO
 for xen-devel@lists.xenproject.org; Tue, 27 Apr 2021 22:01:03 +0000
Received: from GCC02-BL0-obe.outbound.protection.outlook.com (unknown
 [40.107.89.119]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d24e2f0f-6adb-4411-a457-69e338c3ae5f;
 Tue, 27 Apr 2021 22:01:01 +0000 (UTC)
Received: from MN2PR09MB5258.namprd09.prod.outlook.com (2603:10b6:208:220::11)
 by MN2PR09MB4922.namprd09.prod.outlook.com (2603:10b6:208:216::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.25; Tue, 27 Apr
 2021 22:00:56 +0000
Received: from MN2PR09MB5258.namprd09.prod.outlook.com
 ([fe80::2939:7b58:8863:9a07]) by MN2PR09MB5258.namprd09.prod.outlook.com
 ([fe80::2939:7b58:8863:9a07%7]) with mapi id 15.20.4065.027; Tue, 27 Apr 2021
 22:00: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: d24e2f0f-6adb-4411-a457-69e338c3ae5f
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UoQJ1EiPsungv3GiBzBTvZSiDXfG22wewC1QxqzQEH2OCyqdF9jwUGaSFiGXumwHDPGVpr7k6C6cB3s6IdFpKVzNhnMiQCXTcUpKGdPYnb5hW8XW6P6afET7iVwsBKprSS5jNN38xXgSH5E7J7IuJ3ptrjW8ncNLfXJSbo3hkeO9CXXGadULUPM2CgMtJe4PXNXu+C+csA7bJRl0ynnWfMd1KiFoH0jY73R+zQ6f25EnpiaIhxVjhKfeUSzDnXN5o4ZmVljVS+keCX683StlxfGHNkevleNBtTOznx6mq8EVBjdGnZCxF7lllBiqvWE7d4neTZkCuFsl4+seyF416g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q8j6s5msbrbc5bV7Il9956h/ZbycnyfmCNCvD4b0gyE=;
 b=dcw9P13qq6w4CZ9IDqyTzGFo3PWLZMYKqMvvUmPTyFl1ly5nVNxuoUT+CG6pWN9+MkJBluVBLWRWeUMTjbkmdRyXWs5WoifvO8wIKq+7yYyhNjAmDDu7dfKtMmoqRZWvGTssT9sms3W2mYUYGS4z1CHNTSjiCC1t2KjygbiMtukUgmbXSrjWku2dzZGvxyNkkzShtICuZZPKbXnxkVfNvIU03NiIZPA0lJla8aYjyN4grx94UJX1NBerV9haNFRSq47TJVj2F8rqv5JIpA4atBN2UYutPf7OfB+6reBkWdH3GPpjcwSCU5pg8ExLvkV52vUKD5a/FOJP0SpEtFUNlA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=starlab.io; dmarc=pass action=none header.from=starlab.io;
 dkim=pass header.d=starlab.io; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=starlab.io;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q8j6s5msbrbc5bV7Il9956h/ZbycnyfmCNCvD4b0gyE=;
 b=PRa48NEyD6WjwY+Z/WEYdRBjgn05CuAyvzwdMQno5wQaW1BUnusxh73c7ieJofSGQLbHUWp0DQGp8wU88y56SC5D+sO5mgnKkGaof2DPuDKMEyPNfJ0HGfbBiKw15hG6flWyNl3E0Z6m0HX1BCQsuycsAl6kclZ3Fr0SfKEeraw=
From: Scott Davis <scott.davis@starlab.io>
To: Jan Beulich <jbeulich@suse.com>, Scott Davis <scottwd@gmail.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <ian.jackson@eu.citrix.com>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>, Paul Durrant <paul@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
Thread-Topic: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
Thread-Index: AQHXOsEjPlXZorMQi0Kt8384oCpmdqrH72EAgAC5poA=
Date: Tue, 27 Apr 2021 22:00:56 +0000
Message-ID: <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
References:
 <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
 <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
In-Reply-To: <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=starlab.io;
x-originating-ip: [73.133.107.223]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: f2937f64-52c9-4920-58c0-08d909c7ef26
x-ms-traffictypediagnostic: MN2PR09MB4922:
x-microsoft-antispam-prvs:
 <MN2PR09MB49220B5BB0D6E93E3E9FA76591419@MN2PR09MB4922.namprd09.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 oHcUE5vKO4DW8Dyu4K1bT8P5fFVNDuOUnIjHmcwTMaNhldIbc2pGU+QZKMHVOYwxaOoEdoovO4YsafCA/ufgK6hsxxM70JaY3j/hwm0FK359KJXMiklF7gONNjzPvbhHPXKgqdSHoxVBXY565x8itn7TXOwNA97WHBESzs6RWF94idbDA1EY6bT8xQhAY+8jaMK8hVwC+W951+3ZZ3ZTo4kTp1q/KSU9YsyQwRAhvzrnDjz4WiBPUZ4rAjyZG64ROwf1uCJFWJ8oap6rxvkolmj5Gv+eVCl7mJJJq229LP5/cBeMDaTPsOyd366vSS3rgXmUGd70ovqTuTJ+qexgZqUmfNYA9Re3rCAr5voxgDjNQwDcNY32TkH7Za6a9QeaKk0p5Ai/kHb4AH3HT01BuZDfKK1uMqzoAgAdtewIkupe901vMmaaUe7++tMkVJNvxD/yN9OPoKWIXbykwQHA6Js9Jr6XLFkC5aZrhINSx0AOmWmAoCA4CQFBG09gfygevxAduVxFv4FeDJTLCo/yWSeluOEfMq/l8L0fOhhajL1fMiQ1n+/4IhpCGXrUQUVJTOTRqCrwHJ9mGi0Gt4IBkKui3YHVOO0UZ5y8k4a6as/l6BRPrcy0AXcIZQbrm2Hkotz2NaJkRR1c7oxcfedz67giKSP7Z92/dOeVJdg6Jd4=
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR09MB5258.namprd09.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(346002)(66556008)(64756008)(66446008)(76116006)(66946007)(33656002)(66476007)(186003)(86362001)(2616005)(26005)(6506007)(6486002)(71200400001)(6512007)(83380400001)(5660300002)(7416002)(44832011)(508600001)(122000001)(2906002)(4326008)(8936002)(110136005)(36756003)(53546011)(38100700002)(8676002)(54906003)(45980500001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata:
 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
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <5857A24BE7BDE44EA470B30AAB758482@namprd09.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: starlab.io
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MN2PR09MB5258.namprd09.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f2937f64-52c9-4920-58c0-08d909c7ef26
X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Apr 2021 22:00:56.2138
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5e611933-986f-4838-a403-4acb432ce224
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR09MB4922

VGhhbmtzIGZvciB0aGUgZmVlZGJhY2ssIEphbiENCg0KT24gNC8yNy8yMSwgMjo1NiBBTSwgSmFu
IEJldWxpY2ggd3JvdGU6DQo+IE9uIDI2LjA0LjIwMjEgMTk6MjUsIFNjb3R0IERhdmlzIHdyb3Rl
Og0KPj4gVGhpcyBwYXRjaCBtb2RpZmllcyBYZW4ncyBiZWhhdmlvciB3aGVuIG1ha2luZyBkZXZp
Y2VzIGFzc2lnbmFibGUgd2hpbGUgdGhlDQo+PiBpb21tdT1uby1xdWFyYW50aW5lIGNvbW1hbmQg
bGluZSBvcHRpb24gaXMgaW4gZWZmZWN0LiBDdXJyZW50bHkgdGhpcyBvcHRpb24NCj4+IG9ubHkg
YWZmZWN0cyBkZXZpY2UgZGVhc3NpZ25tZW50LCBjYXVzaW5nIGRldmljZXMgdG8gZ2V0IGltbWVk
aWF0ZWx5IGFzc2lnbmVkDQo+PiBiYWNrIHRvIERvbTAgaW5zdGVhZCBvZiB0byB0aGUgcXVhcmFu
dGluZSBkb21faW8gZG9tYWluLiBUaGlzIHBhdGNoIGV4dGVuZHMNCj4+IG5vLXF1YXJhbnRpbmUg
dG8gZGV2aWNlIGFzc2lnbm1lbnQgYXMgd2VsbCwgcHJldmVudGluZyBkZXZpY2VzIGZyb20gYmVp
bmcNCj4+IGFzc2lnbmVkIHRvIGRvbV9pbyB3aGVuIHRoZXkgYXJlIG1hZGUgYXNzaWduYWJsZSB3
aGlsZSBuby1xdWFyYW50aW5lIGlzIGluDQo+PiBlZmZlY3QuDQo+DQo+IFdlbGwsIHRoZSB0ZXJt
ICJxdWFyYW50aW5lIiB0byBtZSBtZWFucyBhIHNhZmV0eSBhY3Rpb24gdGFrZW4gX2FmdGVyXw0K
PiBwb3NzaWJsZSBleHBvc3VyZSB0byBzb21ldGhpbmcgImJhZCIuIFRoZXJlZm9yZSBJIHNlZSB0
aGlzIGJlaW5nIHNwZWNpZmljDQo+IHRvIGRldmljZSBkZS1hc3NpZ25tZW50IGFzIHRoZSBsb2dp
Y2FsIHRoaW5nLiBIZW5jZSBpZiBhIG1vZGUgbGlrZSB3aGF0DQo+IHlvdSBkZXNjcmliZSB3YXMg
d2FudGVkLCBJIGRvbid0IHRoaW5rIGl0IHNob3VsZCBiZSB0aGUgcmVzdWx0IG9mDQo+ICJpb21t
dT1uby1xdWFyYW50aW5lIi4NCg0KU29ycnkgSSdtIGEgYml0IGNvbmZ1c2VkIGJ5IHRoaXMuIENv
cnJlY3QgbWUgaWYgd3JvbmcsIGJ1dCBteSB1bmRlcnN0YW5kaW5nIGlzICANCnRoYXQgdGhlIHB1
cnBvc2Ugb2YgYXNzaWduaW5nIGEgZGV2aWNlIHRvIGRvbV9pbyBvbiBkZS1hc3NpZ25tZW50IGlz
IHRvIHByb3RlY3QgIA0KRG9tMCBmcm9tIHRoZSBlZmZlY3RzIG9mIGluLWZsaWdodCBETUEgb3Bl
cmF0aW9ucyBpbml0aWF0ZWQgYnkgYSBEb21VLiBJIGFzc3VtZWQgIA0KdGhhdCB0aGUgcHVycG9z
ZSBvZiAodGVtcG9yYXJpbHkpIGFzc2lnbmluZyB0byBkb21faW8gb24gYXNzaWdubWVudCB3YXMg
dGhlIHNhbWUgIA0KYnV0IGluIHJldmVyc2U6IHByb3RlY3RpbmcgYSBEb21VIGZyb20gRG9tMC1p
bml0aWF0ZWQgb3BzLiBJcyB0aGlzIG5vdCB0aGUgY2FzZT8NCg0KQWxzbywgZG9jdW1lbnRhdGlv
biBhbmQgY29kZSBhbHJlYWR5IHJlZmVyIHRvIHRoZSBvcGVyYXRpb24gaW4gcXVlc3Rpb24gYXMg
YSANCiJxdWFyYW50aW5lIiAoc2VlIHhsIGNvbW1hbmQgbGluZSBkb2NzIGFuZCBsaWJ4bF9fZGV2
aWNlX3BjaV9hc3NpZ25hYmxlX2FkZCkgDQphbmQgdG8gZGV2aWNlcyB0aGF0IGhhdmUgdW5kZXJn
b25lIGl0IGFzIGJlaW5nICJxdWFyYW50aW5lZCIgKHNlZSBhc3NpZ25fZGV2aWNlIA0KaW4geGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMpLiBTbyBpZiB0aGF0IGlzIG5vdCB0aGUgY29ycmVj
dCB0ZXJtLCB0aGVyZSBtYXkgDQpiZSBzb21lIGFkZGl0aW9uYWwgY2hhbmdlcyBuZWVkZWQgZm9y
IGNvbnNpc3RlbmN5LiBJcyB0aGVyZSBhbm90aGVyIG5hbWUgdGhhdCANCndvdWxkIGJlIG1vcmUg
YXBwcm9wcmlhdGU/DQoNCkkgd291bGQgYWxzbyBwb2ludCBvdXQgdGhhdCwgY3VycmVudGx5LCB0
aGVyZSBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB3YXkgZm9yIGFuIA0KeGwgdXNlciB0byBvcHQg
b3V0IG9mIHF1YXJhbnRpbmUgZnVuY3Rpb25hbGl0eSBpbiBlaXRoZXIgZGlyZWN0aW9uIG90aGVy
IHRoYW4gYnkgDQptYW51YWxseSBtYWtpbmcgZGV2aWNlcyBhc3NpZ25hYmxlLiBUaGVyZSBpcyBu
byB4bCBjb21tYW5kIGxpbmUgZmxhZyB0byBkaXNhYmxlIA0KaXQgYW5kIGlvbW11PW5vLXF1YXJh
bnRpbmUgd2lsbCBoYXZlIG5vIGVmZmVjdCBiZWNhdXNlIGFueSBkZXZpY2UgdGhhdCB4bCBpdHNl
bGYNCm1ha2VzIGFzc2lnbmFibGUgd2lsbCBoYXZlIHRoZSBzdHJ1Y3QgcGNpX2Rldi5xdWFyYW50
aW5lIGZsYWcgc2V0LCB3aGljaCANCm92ZXJyaWRlcyBpb21tdT1uby1xdWFyYW50aW5lLiBJcyB0
aGF0IGludGVudGlvbmFsPw0KDQpJZiBJIG1pc3VuZGVyc3Rvb2QgYW5kIHlvdXIgb2JqZWN0aW9u
IGlzIHNpbXBseSB0aGF0ICJxdWFyYW50aW5lLW9uLWFzc2lnbm1lbnQiICANCmFuZCAicXVhcmFu
dGluZS1vbi1kZWFzc2lnbm1lbnQiIHNob3VsZCBiZSBjb250cm9sbGFibGUgYnkgc2VwYXJhdGUg
aW9tbXUgIA0Kb3B0aW9ucywgdGhhdCdzIGFuIGVhc3kgZW5vdWdoIGNoYW5nZSB0byBtYWtlLiBB
bHRob3VnaCBJIHRoaW5rIHRoYXQgbWlnaHQgYWxzbyANCm5lZ2F0ZSB0aGUgbmVlZCBmb3IvZWZm
ZWN0IG9mIHN0cnVjdCBwY2lfZGV2LnF1YXJhbnRpbmUgYXMgZGVzY3JpYmVkIGFib3ZlLiBJZiAN
CnRoYXQncyB3aGF0IGlzIGRlc2lyZWQsIGFueSB0aG91Z2h0cyBvbiB3aGF0IHRoZSBuZXcgb3B0
aW9uKHMpIHNob3VsZCBiZSBjYWxsZWQ/DQoNCj4+IEJhY2tncm91bmQ6IEkgYW0gc2V0dGluZyB1
cCBhIFFFTVUtYmFzZWQgZGV2ZWxvcG1lbnQgYW5kIHRlc3RpbmcgZW52aXJvbm1lbnQgZm9yDQo+
PiB0aGUgQ3J1Y2libGUgdGVhbSBhdCBTdGFyIExhYiB0aGF0IGluY2x1ZGVzIGVtdWxhdGVkIFBD
SWUgZGV2aWNlcyBmb3INCj4+IHBhc3N0aHJvdWdoIGFuZCBob3RwbHVnLiBJIGVuY291bnRlcmVk
IGFuIGlzc3VlIHdpdGggYHhsIHBjaS1hc3NpZ25hYmxlLWFkZGANCj4+IHRoYXQgY2F1c2VzIHRo
ZSBob3N0IFFFTVUgdG8gcmFwaWRseSBhbGxvY2F0ZSBtZW1vcnkgdW50aWwgZ2V0dGluZyBPT00t
a2lsbGVkLg0KPj4gSSB0aGVuIGZvdW5kIHRoYXQgdGhlIGlzc3VlIGNvdWxkIGJlIHdvcmtlZCBh
cm91bmQgZWl0aGVyIGJ5IHVzaW5nIG1hbnVhbCBzeXNmcw0KPj4gY29tbWFuZHMgdG8gcmViaW5k
IGRldmljZXMgdG8gcGNpYmFjayBvciBieSBza2lwcGluZyBvdmVyIHRoZSBxdWFyYW50aW5lIGxv
Z2ljDQo+PiBpbiBgbGlieGxfX2RldmljZV9wY2lfYXNzaWduYWJsZV9hZGRgLCBwcm9kdWNpbmcg
YSB3b3JraW5nIHN5c3RlbS4gSSBob3BlZCB0aGF0DQo+PiBzZXR0aW5nIGlvbW11PW5vLXF1YXJh
bnRpbmUgb24gdGhlIGNvbW1hbmQgbGluZSB3b3VsZCBoYXZlIHRoZSBzYW1lIGVmZmVjdCwgb25s
eQ0KPj4gdG8gYmUgc3VycHJpc2VkIHRoYXQgaXQgZGlkIG5vdC4NCj4NCj4gLi4uIHNvbWUgb2Yg
dGhpcyAid2h5IGRvIHdlIHdhbnQgdGhpcyIgd291bGQgYmVsb25nIGluIHRoZSBjb21taXQgbWVz
c2FnZQ0KPiBpbW8sIG5vdCBqdXN0IGhlcmUuDQoNClRoYW5rcyBmb3IgdGhlIHRpcCwgSSB3aWxs
IGluY2x1ZGUgdGhpcyBpbmZvIGluIGNvbW1pdCBtZXNzYWdlIGluIGFueSBmdXR1cmUgDQpyZXZp
c2lvbnMuDQoNCkdvb2QgZGF5LA0KU2NvdHQNCg0K


From xen-devel-bounces@lists.xenproject.org Tue Apr 27 22:58:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 27 Apr 2021 22:58:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118927.225227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbWf8-0004Pn-0C; Tue, 27 Apr 2021 22:58:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118927.225227; Tue, 27 Apr 2021 22: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 1lbWf7-0004Pg-SI; Tue, 27 Apr 2021 22:58:37 +0000
Received: by outflank-mailman (input) for mailman id 118927;
 Tue, 27 Apr 2021 22:58: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 1lbWf6-0004PY-Md; Tue, 27 Apr 2021 22:58: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 1lbWf6-0001KR-CN; Tue, 27 Apr 2021 22:58: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 1lbWf6-00025x-3D; Tue, 27 Apr 2021 22:58:36 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbWf5-00050d-RO; Tue, 27 Apr 2021 22:58: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=7NmcYrlCZpblRV6qkoh7BSXsDdoZNJZKQL2ty8Je8fI=; b=b569UMfDBns2mPjjD8/PoyIbL5
	wvPWhEUr3z0Ulx80p9L6UbkXhuNDU7BX27a06hpKPY4aIwyyAizTAQ6LnaiXNhkmqUcsHxZ4Fk6FM
	zlHn4BxbtiRHahbifyuWZb05xGXDF4dxJf6TVMBvdLMcjJtBE595CQsJ1ZwVv2H/PlXU=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161480-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161480: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:build-arm64:xen-build:fail:regression
    xen-unstable:test-arm64-arm64-examine: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-seattle:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    xen-unstable:build-arm64-libvirt:build-check(1):blocked:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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: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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-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-amd64-amd64-libvirt-vhd: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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl: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-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-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
X-Osstest-Versions-This:
    xen=11e7f0fe72ca0060762d18268e0388731fe8ccb6
X-Osstest-Versions-That:
    xen=11e7f0fe72ca0060762d18268e0388731fe8ccb6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 27 Apr 2021 22:58:35 +0000

flight 161480 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161480/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64                   6 xen-build                fail REGR. vs. 161470

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-examine      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-seattle   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161470
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161470
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161470
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161470
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161470
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161470
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161470
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161470
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161470
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161470
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161470
 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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-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-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

version targeted for testing:
 xen                  11e7f0fe72ca0060762d18268e0388731fe8ccb6
baseline version:
 xen                  11e7f0fe72ca0060762d18268e0388731fe8ccb6

Last test of basis   161480  2021-04-27 08:33:02 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  fail    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 03:51:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 03:51:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118968.225251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbbDy-00040Q-Bz; Wed, 28 Apr 2021 03:50:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118968.225251; Wed, 28 Apr 2021 03: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 1lbbDy-00040I-4b; Wed, 28 Apr 2021 03:50:54 +0000
Received: by outflank-mailman (input) for mailman id 118968;
 Wed, 28 Apr 2021 03:50: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 1lbbDx-00040A-5X; Wed, 28 Apr 2021 03:50: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 1lbbDw-0003sS-Se; Wed, 28 Apr 2021 03:50:52 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lbbDw-0002OC-HF; Wed, 28 Apr 2021 03:50:52 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbbDw-0007r6-Gk; Wed, 28 Apr 2021 03:50: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=PMoxYxT3FewUMzWHz+Eu+t5E4AAe2eJxNwjTQW7GJIE=; b=cnImzIbUyraoZXlf0cGbPHzelr
	oTU2yr0n6Cc3x8P1u6B4bTM3hMvmRqumiSGY9ZbuDYbfJqEl5CAf52007rKM1l/ijYTVqW5lw757I
	AzVcndjscmGnMADt9BwouquJB6jExU3JD74fbeWMNiqx2BRyI2VWWbzl++ciSG9L4lhA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161481-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161481: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=0cef06d18762374c94eb4d511717a4735d668a24
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 03:50:52 +0000

flight 161481 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161481/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-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-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-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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
 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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 qemuu                0cef06d18762374c94eb4d511717a4735d668a24
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  250 days
Failing since        152659  2020-08-21 14:07:39 Z  249 days  459 attempts
Testing same since   161472  2021-04-26 23:08:10 Z    1 days    2 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 143040 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 03:52:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 03:52:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.118973.225266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbbF5-00046X-Il; Wed, 28 Apr 2021 03:52:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 118973.225266; Wed, 28 Apr 2021 03: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 1lbbF5-00046Q-Fj; Wed, 28 Apr 2021 03:52:03 +0000
Received: by outflank-mailman (input) for mailman id 118973;
 Wed, 28 Apr 2021 03:52: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 1lbbF3-00046I-Lg; Wed, 28 Apr 2021 03:52: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 1lbbF3-0003v3-GS; Wed, 28 Apr 2021 03:52: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 1lbbF3-0002SM-7I; Wed, 28 Apr 2021 03:52:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbbF3-0000mH-6n; Wed, 28 Apr 2021 03:52: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=0300Mr2ZD+SAd845CscOIDhRjHYIo8SfY2hGXt6Rq1Q=; b=oMyrPO03o081KguljcmTT7FQHZ
	jhjQIfOes6+Jwqgm+z0ZGUiqKTZDoAmx5E31PZ7awVsq2U2cZyTjiLeiTjKdY7SD9Sq94CB5y8Mb4
	0e4QR5ofkEh4BClwsiLfeC78nW8Dxcu6YjUW5966t7Ga34UF94bG9N6Zf84VjD3G9wa4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161485-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161485: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=5b90b8abb4049e2d98040f548ad23b6ab22d5d19
X-Osstest-Versions-That:
    ovmf=8d2012035db3cb869d1da8a95c1308025cadbeee
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 03:52:01 +0000

flight 161485 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161485/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 5b90b8abb4049e2d98040f548ad23b6ab22d5d19
baseline version:
 ovmf                 8d2012035db3cb869d1da8a95c1308025cadbeee

Last test of basis   161477  2021-04-27 06:10:06 Z    0 days
Testing same since   161485  2021-04-27 13:41:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Rebecca Cran <rebecca@nuviainc.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
   8d2012035d..5b90b8abb4  5b90b8abb4049e2d98040f548ad23b6ab22d5d19 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 06:01:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 06:01:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119000.225287 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbdG6-0007Br-BB; Wed, 28 Apr 2021 06:01:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119000.225287; Wed, 28 Apr 2021 06: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 1lbdG6-0007Bk-6b; Wed, 28 Apr 2021 06:01:14 +0000
Received: by outflank-mailman (input) for mailman id 119000;
 Wed, 28 Apr 2021 06:01:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbdG4-0007Bf-Hd
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 06:01:12 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dbbcd946-a80a-40bd-a50e-0e6a8f1c75a6;
 Wed, 28 Apr 2021 06:01:11 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3C8EFAF23;
 Wed, 28 Apr 2021 06:01: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: dbbcd946-a80a-40bd-a50e-0e6a8f1c75a6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619589670; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=bap4zeVnkWqoXJ6yYYfr2X8lZzJ6fexJMyGXHLG5GN0=;
	b=pJIUUbgAV6mnACd2dUmXQ9i70pmyB0vgmF7ZVx30XAy4RTw/sAtGcXFkLS2rRsRaR1XaIh
	3P4VlyCQrRDpJfxXdvGYJtP12EK1f6YNc7+G7tmpunp6DM6y6H29+3QOfAhybj/ROdxolS
	g+v3ugZAw/QKNOWU3mAKaaI7yzo+cik=
Subject: Re: [PATCH v3] x86/oprofile: remove compat accessors usage from
 backtrace
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: <20210427142113.31961-1-roger.pau@citrix.com>
 <6812da01-72ef-7b88-9512-2feb250de223@suse.com>
 <YIhS79tn2J3FpJSy@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5e2307ed-ce38-f006-e221-98b629ca5a33@suse.com>
Date: Wed, 28 Apr 2021 08:01:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIhS79tn2J3FpJSy@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 20:07, Roger Pau Monné wrote:
> On Tue, Apr 27, 2021 at 05:37:22PM +0200, Jan Beulich wrote:
>> On 27.04.2021 16:21, Roger Pau Monne wrote:
>>> Remove the unneeded usage of the compat layer to copy frame pointers
>>> from guest address space. Instead just use raw_copy_from_guest.
>>>
>>> While there change the accessibility check of one frame_head beyond to
>>> be performed as part of the copy, like it's done in the Linux code.
>>
>> Oh, one further question: I suppose you mean historic Linux here? I
>> can't find anything like this anymore in current one. If so, I'm
>> inclined to suggest "..., like used to be done in the Linux code."
>> Or something substantially similar.
> 
> Oh, so my local copy of Linux seems to be circa 5.11, and AFAICT the
> code was removed in 5.12. I can reword as: "..., like it's done in the
> Linux code in 5.11 and earlier versions".

Oh, I will admit I didn't look at the date of the removal commit.
I just double checked that it didn't get moved elsewhere.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 06:03:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 06:03:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119004.225299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbdIH-0007In-PQ; Wed, 28 Apr 2021 06:03:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119004.225299; Wed, 28 Apr 2021 06:03:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbdIH-0007Ig-K9; Wed, 28 Apr 2021 06:03:29 +0000
Received: by outflank-mailman (input) for mailman id 119004;
 Wed, 28 Apr 2021 06:03:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbdIG-0007Ia-FX
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 06:03:28 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0957882f-9ecf-4972-8b8b-8484d6ae94fa;
 Wed, 28 Apr 2021 06:03:27 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id A3371AF23;
 Wed, 28 Apr 2021 06:03: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: 0957882f-9ecf-4972-8b8b-8484d6ae94fa
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619589806; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=72R9j1S7qsvwGnVbisiZAfSDg3OxSzgQqo5js5Zkcws=;
	b=o2/eBuZbMxE1I0xx+VlU9zIsoc1WaMn02/djwDQqPLdIEaDBIeU+kPo2GGHZlt+xAv0xD/
	4S1QPvNTzexrUBfs4mvsXq15YawFdd/LUFap7pJChQ4Yr/jeY78QdL7lARlVDGMc0LEMk5
	IQNDjq4kzl6ze8x1g6queur/0Nzyv60=
Subject: Re: [PATCH v3] x86/oprofile: remove compat accessors usage from
 backtrace
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: <20210427142113.31961-1-roger.pau@citrix.com>
 <3aa0fdb1-87c8-39db-98eb-26664a0569ab@suse.com>
 <YIhTYn668JwHgvqj@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a270e2b3-884e-a621-f11f-8b3a0a851ef5@suse.com>
Date: Wed, 28 Apr 2021 08:03:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIhTYn668JwHgvqj@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 20:09, Roger Pau Monné wrote:
> On Tue, Apr 27, 2021 at 05:31:25PM +0200, Jan Beulich wrote:
>> On 27.04.2021 16:21, Roger Pau Monne wrote:
>>> Remove the unneeded usage of the compat layer to copy frame pointers
>>> from guest address space. Instead just use raw_copy_from_guest.
>>>
>>> While there change the accessibility check of one frame_head beyond to
>>> be performed as part of the copy, like it's done in the Linux code.
>>> Note it's unclear why this is needed.
>>>
>>> Also drop the explicit truncation of the head pointer in the 32bit
>>> case as all callers already pass a zero extended value. The first
>>> value being rsp from the guest registers, and further calls will use
>>> ebp from frame_head_32bit struct.
>>>
>>> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>> ---
>>> Changes since v2:
>>>  - Keep accessibility check for one frame_head beyond.
>>>  - Fix coding style.
>>
>> I'm indeed more comfortable with this variant, so
>> Acked-by: Jan Beulich <jbeulich@suse.com>
>>
>> Andrew - can you live with the 2-frame thingy staying around?
>>
>>> @@ -51,52 +49,35 @@ static inline int is_32bit_vcpu(struct vcpu *vcpu)
>>>      else
>>>          return is_pv_32bit_vcpu(vcpu);
>>>  }
>>> -#endif
>>>  
>>>  static struct frame_head *
>>>  dump_guest_backtrace(struct vcpu *vcpu, const struct frame_head *head,
>>>                       int mode)
>>>  {
>>> -    frame_head_t bufhead;
>>> +    /* Also check accessibility of one struct frame_head beyond. */
>>> +    frame_head_t bufhead[2];
>>>  
>>> -#ifdef CONFIG_COMPAT
>>>      if ( is_32bit_vcpu(vcpu) )
>>>      {
>>> -        DEFINE_COMPAT_HANDLE(frame_head32_t);
>>> -        __compat_handle_const_frame_head32_t guest_head =
>>> -            { .c = (unsigned long)head };
>>> -        frame_head32_t bufhead32;
>>> -
>>> -        /* Also check accessibility of one struct frame_head beyond */
>>> -        if (!compat_handle_okay(guest_head, 2))
>>> -            return 0;
>>> -        if (__copy_from_compat(&bufhead32, guest_head, 1))
>>> -            return 0;
>>> -        bufhead.ebp = (struct frame_head *)(unsigned long)bufhead32.ebp;
>>> -        bufhead.ret = bufhead32.ret;
>>> -    }
>>> -    else
>>> -#endif
>>> -    {
>>> -        XEN_GUEST_HANDLE_PARAM(const_frame_head_t) guest_head =
>>> -            const_guest_handle_from_ptr(head, frame_head_t);
>>> +        frame_head32_t bufhead32[2];
>>>  
>>> -        /* Also check accessibility of one struct frame_head beyond */
>>> -        if (!guest_handle_okay(guest_head, 2))
>>> -            return 0;
>>> -        if (__copy_from_guest(&bufhead, guest_head, 1))
>>> +        if ( raw_copy_from_guest(&bufhead32, head, sizeof(bufhead32)) )
>>
>> As a minor remark, personally I'd prefer the & to be dropped here
>> and ...
>>
>>>              return 0;
>>> +        bufhead[0].ebp = (struct frame_head *)(unsigned long)bufhead32[0].ebp;
>>> +        bufhead[0].ret = bufhead32[0].ret;
>>>      }
>>> +    else if ( raw_copy_from_guest(&bufhead, head, sizeof(bufhead)) )
>>
>> ... here (and doing so while committing would be easy), but I'm
>> not going to insist.
> 
> Sure, the & is a leftover from when bufhead wasn't an array, or else I
> wouldn't have added it.
> 
> Would you be OK to drop the '&' and adjust the message mentioning
> Linux <= 5.11 on commit?

Of course - there's no reason at all for you to bother re-sending.
Assuming of course Andrew can live with this effectively halfway
simplification. (If not, as said, I wouldn't object to the earlier
version going in, but I wouldn't want to commit it myself.)

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 06:16:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 06:16:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119014.225311 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbdUP-0008LD-1t; Wed, 28 Apr 2021 06:16:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119014.225311; Wed, 28 Apr 2021 06:16:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbdUO-0008L6-UP; Wed, 28 Apr 2021 06:16:00 +0000
Received: by outflank-mailman (input) for mailman id 119014;
 Wed, 28 Apr 2021 06:16:00 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbdUO-0008L1-0y
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 06:16:00 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d5997129-3df2-44ca-8525-807cd1adedd5;
 Wed, 28 Apr 2021 06:15:58 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 587E5B038;
 Wed, 28 Apr 2021 06:15:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d5997129-3df2-44ca-8525-807cd1adedd5
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619590557; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=tfsbMaVbupruodGRfFDhlP9TcZdO7Ld22RhuGKVfXcY=;
	b=mi9yFLJzNe4vEclRIwp1doaP7IBPXBvbGzbdodbmt//VCjtZ2n+ZzvheaddqvjpxtNIqFd
	fNTZzYwlsNKMUfTIfAsD5ju7r8emDk+Xr6wRuByvcw7lMJABu6DwpoSZd7dKhlxfgambqb
	oGvjJRcGgMTLPMp6Np82p5PI0NYs7Ek=
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
To: Scott Davis <scott.davis@starlab.io>, Scott Davis <scottwd@gmail.com>,
 Paul Durrant <paul@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
 <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
 <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <237ad45b-b68d-9d31-0fbc-1af52dfca808@suse.com>
Date: Wed, 28 Apr 2021 08:15:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28.04.2021 00:00, Scott Davis wrote:
> On 4/27/21, 2:56 AM, Jan Beulich wrote:
>> On 26.04.2021 19:25, Scott Davis wrote:
>>> This patch modifies Xen's behavior when making devices assignable while the
>>> iommu=no-quarantine command line option is in effect. Currently this option
>>> only affects device deassignment, causing devices to get immediately assigned
>>> back to Dom0 instead of to the quarantine dom_io domain. This patch extends
>>> no-quarantine to device assignment as well, preventing devices from being
>>> assigned to dom_io when they are made assignable while no-quarantine is in
>>> effect.
>>
>> Well, the term "quarantine" to me means a safety action taken _after_
>> possible exposure to something "bad". Therefore I see this being specific
>> to device de-assignment as the logical thing. Hence if a mode like what
>> you describe was wanted, I don't think it should be the result of
>> "iommu=no-quarantine".
> 
> Sorry I'm a bit confused by this. Correct me if wrong, but my understanding is  
> that the purpose of assigning a device to dom_io on de-assignment is to protect  
> Dom0 from the effects of in-flight DMA operations initiated by a DomU. I assumed  
> that the purpose of (temporarily) assigning to dom_io on assignment was the same  
> but in reverse: protecting a DomU from Dom0-initiated ops. Is this not the case?

Well, no, not really. Dom0 is considered fully trusted for a variety of
reasons.

> Also, documentation and code already refer to the operation in question as a 
> "quarantine" (see xl command line docs and libxl__device_pci_assignable_add) 
> and to devices that have undergone it as being "quarantined" (see assign_device 
> in xen/drivers/passthrough/pci.c). So if that is not the correct term, there may 
> be some additional changes needed for consistency. Is there another name that 
> would be more appropriate?

I don't see what's wrong with the term for how things are currently. If
you talk about an adjustment to terminology to accompany your proposed
change - not sure.

> I would also point out that, currently, there does not appear to be a way for an 
> xl user to opt out of quarantine functionality in either direction other than by 
> manually making devices assignable. There is no xl command line flag to disable 
> it and iommu=no-quarantine will have no effect because any device that xl itself
> makes assignable will have the struct pci_dev.quarantine flag set, which 
> overrides iommu=no-quarantine. Is that intentional?

Not sure here either: It may also have been that it was assumed to not
be of interest. Paul?

> If I misunderstood and your objection is simply that "quarantine-on-assignment"  
> and "quarantine-on-deassignment" should be controllable by separate iommu  
> options, that's an easy enough change to make.

Yes, effectively it's that what I think things would want to be, if
"quarantine-on-assignment" is really something that we think is needed.
It would default to off imo.

> Although I think that might also 
> negate the need for/effect of struct pci_dev.quarantine as described above. If 
> that's what is desired, any thoughts on what the new option(s) should be called?

Following the extension to the command line option I'm putting in place
in "IOMMU: make DMA containment of quarantined devices optional" (which
I still need to get around to address review feedback for and resubmit),
I'd be inclined to suggest "iommu=quarantine=always" or
"iommu=quarantine=on-assign". Unless of course we'd prefer to have the
caller of the assignment operation have full control over the behavior
here anyway (in which case a command line option control simply is not
necessary).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 06:55:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 06:55:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119030.225333 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbe6G-0003Lw-Ai; Wed, 28 Apr 2021 06:55:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119030.225333; Wed, 28 Apr 2021 06: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 1lbe6G-0003Lp-5y; Wed, 28 Apr 2021 06:55:08 +0000
Received: by outflank-mailman (input) for mailman id 119030;
 Wed, 28 Apr 2021 06:55: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 1lbe6F-0003Lh-CL; Wed, 28 Apr 2021 06:55: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 1lbe6F-0007PI-6B; Wed, 28 Apr 2021 06:55: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 1lbe6E-0003un-SE; Wed, 28 Apr 2021 06:55:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbe6E-00034W-Re; Wed, 28 Apr 2021 06:55: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=ji36rLbH02SZbAFVUj2FEn9PyEZSTbkUxF68qC7HVg8=; b=fQsRajix9qSzCI0jRvtWLpnS3A
	MLNTFcfHJI+n4AN3HtDEJrks6ctLWBiAkV0VBtuMkLknL2/1KYBwa0Yze7d/e/6qFAOXwbnY1gydY
	P1vLOjP9OubHFeJEvMvE6h+PKk8/79k7OvZ/oOZWbQLTZA6fo1McUZ1Hi7kBBqrBZlrQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161484-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.14-testing test] 161484: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.14-testing:test-amd64-amd64-xl-pvhv2-intel:debian-fixup:fail:heisenbug
    xen-4.14-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.14-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=207c70c5b622e87682152728b4ea4f0970ad2aad
X-Osstest-Versions-That:
    xen=b14d8345e530a54710700ec5fcb0879c2e056d31
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 06:55:06 +0000

flight 161484 xen-4.14-testing real [real]
flight 161498 xen-4.14-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161484/
http://logs.test-lab.xenproject.org/osstest/logs/161498/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-pvhv2-intel 13 debian-fixup     fail pass in 161498-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161324
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161324
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161324
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161324
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161324
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161324
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161324
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161324
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161324
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161324
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161324
 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-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-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-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-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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                  207c70c5b622e87682152728b4ea4f0970ad2aad
baseline version:
 xen                  b14d8345e530a54710700ec5fcb0879c2e056d31

Last test of basis   161324  2021-04-20 10:36:29 Z    7 days
Testing same since   161484  2021-04-27 13:06:22 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               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                              fail    
 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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   b14d8345e5..207c70c5b6  207c70c5b622e87682152728b4ea4f0970ad2aad -> stable-4.14


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 06:59:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 06:59:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119027.225348 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbeAs-0003XS-W5; Wed, 28 Apr 2021 06:59:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119027.225348; Wed, 28 Apr 2021 06: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 1lbeAs-0003XL-Sw; Wed, 28 Apr 2021 06:59:54 +0000
Received: by outflank-mailman (input) for mailman id 119027;
 Wed, 28 Apr 2021 06:48:57 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yQaW=JZ=invisiblethingslab.com=demi@srs-us1.protection.inumbo.net>)
 id 1lbe0H-0002Yv-8u
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 06:48:57 +0000
Received: from wout2-smtp.messagingengine.com (unknown [64.147.123.25])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ea6d6ba8-da56-492e-8d60-2fb9099017cc;
 Wed, 28 Apr 2021 06:48:56 +0000 (UTC)
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.west.internal (Postfix) with ESMTP id 8DA2FD72;
 Wed, 28 Apr 2021 02:48:54 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute4.internal (MEProxy); Wed, 28 Apr 2021 02:48:54 -0400
Received: from [10.139.255.254] (unknown [66.115.173.166])
 by mail.messagingengine.com (Postfix) with ESMTPA;
 Wed, 28 Apr 2021 02:48:53 -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: ea6d6ba8-da56-492e-8d60-2fb9099017cc
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-type:date:from:in-reply-to
	:message-id:mime-version:references:subject:to:x-me-proxy
	:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=n+NkJe
	fZdFCSii+qnQS0wALGULSVUtTiSpLmzmY/7jo=; b=gA98iOA2LLxpEkvq+L9Rf6
	Of5TnBsgXw2i3ZZaXHxDOQNIDIgPDkkVgDLRpwXKNTur//bX/Aa2yVCbR72a4NSg
	b+Q5FxQNL13L3WVIxlYo78CIZEQFsic71+qb7vf4zvQrQWO/2caUhWMtqtLz2jxo
	x8mX4hWWGIA49TORyRU5Rx4UuhJsNLL0flULk24tQAya4/x3uwxPabh7ULJj7zdF
	MDJT3c/zsMqBUeP89GzUgZfTypCLyOK49qSh3cxG+OJTMhdTvwtavBiV7ixmsuaI
	URlSyUhuZJ7LtXmHfClLYHhc1p3v/RHtzHvRZRVGzUCDhPybUyIUwzFysOxmSHMA
	==
X-ME-Sender: <xms:VgWJYGf_qy2UgJxcueWkkHtnmnJEDrRZjAxZ0cxLup9pbY39xcEcUg>
    <xme:VgWJYANlnAb5F4mIYEFQKiUxaAXx_ICbUpy2P7bZWKsOnFp4S7VmmwHlG-GhtixAR
    gPp2DGxTy-sTeU>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvddvuddgudduudcutefuodetggdotefrod
    ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
    necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
    enucfjughrpefvfhfhuffkffgfgggjtgesghdtrefotdefjeenucfhrhhomhepffgvmhhi
    ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh
    hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepffeutdevlefghfehheekheegieel
    gfeffffhudduueduhfevhfejteehffehueevnecukfhppeeiiedrudduhedrudejfedrud
    eiieenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegu
    vghmihesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:VgWJYHgMfAMs4ErI0U3WOefSrZ03Nd3KlSpoVfkWQeN-sPOFJxhbpw>
    <xmx:VgWJYD-LiMKv9e4j3y4Fg9ZX5icD8nKcIgt-E7T_8wQUtjFdrSgd9Q>
    <xmx:VgWJYCuolb2xGhNW313C6ldcSJRhfps9v1GBu8dJ3yhyYREOPXvnPw>
    <xmx:VgWJYHUfiD63xFokX4COScfW17bXg4Bmfe2MoEcOSjiohkpiSLpZig>
To: =?UTF-8?Q?Marek_Marczycowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
From: Demi Marie Obenour <demi@invisiblethingslab.com>
Subject: Re: [RFC PATCH 0/2] libxl: support common cases without block script
Message-ID: <41538969-c59d-acc5-9eee-0dffca50d6ac@invisiblethingslab.com>
Date: Wed, 28 Apr 2021 02:48:47 -0400
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="QuSxHp8sqUgk0op65Pzl6XtmQMEDuaDN3"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--QuSxHp8sqUgk0op65Pzl6XtmQMEDuaDN3
Content-Type: multipart/mixed; boundary="rtxUu6I7pPr2GiYXoLWVbrSlSu6ESUvqI";
 protected-headers="v1"
From: Demi Marie Obenour <demi@invisiblethingslab.com>
To: =?UTF-8?Q?Marek_Marczycowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
Message-ID: <41538969-c59d-acc5-9eee-0dffca50d6ac@invisiblethingslab.com>
Subject: Re: [RFC PATCH 0/2] libxl: support common cases without block script
References: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
In-Reply-To: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>

--rtxUu6I7pPr2GiYXoLWVbrSlSu6ESUvqI
Content-Type: multipart/mixed;
 boundary="------------B5CDC002198864B3CFD74116"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------B5CDC002198864B3CFD74116
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

When it comes to file-based block devices, the major difficulty is
the extremely bad kernel API.  The only fully safe way to use loop
devices is to use LOOP_CONFIGURE with LO_FLAGS_AUTOCLEAR and hold a
file descriptor open to the device until another piece of code (either
another userspace program or the kernel) has grabbed a reference to it.
Everything else risks either using a freed loop device (that might now
be attached to a different file) or risks leaking them on unclean exit.
The only exception is if one can make certain assumptions, such as no
other program freeing loop devices for the file in question.  This is
a reasonable assumption for Qubes dom0, but neither for Qubes domU nor
for Xen dom0 in general.  Nevertheless, this is effectively what the
current block script does: if I understand the code correctly, there
is a race where badly timed calls to losetup by another process could
result in the block script freeing the wrong loop device.

Worse, writes to XenStore only cause Linux to take a reference to
the device at some unspecified point in the future, rather than
synchronously.  It takes a major and minor number, which means we
need to hold a reference to the relevant loop device ourselves.
FreeBSD solves this by having XenStore include a path to the device
and/or regular file, but on Linux this leads to awkward issues with
namespaces.  Instead, I recommend that Linux gain an ioctl-based
interface in the future, which takes a file descriptor to the device
to use.  The kernel would then do the writes itself.

Thankfully, not all hope is lost, even with the current kernel API.
We can use sd_pid_notify_with_fds to stash the file descriptors in PID
1, which will never exit.  We can give those file descriptors a name,
so that we know which is which if we are restarted.  And we can close
devices that we know are not in use by any VMs.  The cache will allow
us to avoid duplicating devices, which is actually quite important =E2=80=
=95
QubesOS doesn=E2=80=99t want each qube to have a separate file descriptor=20
for
its kernel, for example.

Initially, I recommend focusing on handle the case where the process
using libxl is not restarted.  That is the simpler case, by far.
I suggest starting by just setting up a loop device prior to attaching
it, and destroying it when the device is detached.  Caching can be
added as the next step.
--=20
Demi Marie Obenour
she/her/hers
QubesOS Developer, Invisible Things Lab

--------------B5CDC002198864B3CFD74116
Content-Type: application/pgp-keys;
 name="OpenPGP_0xB288B55FFF9C22C1.asc"
Content-Transfer-Encoding: quoted-printable
Content-Description: OpenPGP public key
Content-Disposition: attachment;
 filename="OpenPGP_0xB288B55FFF9C22C1.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsFNBFp+A0oBEADffj6anl9/BHhUSxGTICeVl2tob7hPDdhHNgPR4C8xlYt5q49yB+l2nipda=
q+4
Gk6FZfqC825TKl7eRpUjMriwle4r3R0ydSIGcy4M6eb0IcxmuPYfbWpr/si88QKgyGSVZ7GeN=
W1U
nzTdhYHuFlk8dBSmB1fzhEYEk0RcJqg4AKoq6/3/UorR+FaSuVwT7rqzGrTlscnTDlPWgRzrQ=
3js
sesI7sZLm82E3pJSgaUoCdCOlL7MMPCJwI8JpPlBedRpe9tfVyfu3euTPLPxwcV3L/cfWPGSL=
4Po
fBtB8NUU6QwYiQ9Hzx4xOyn67zW73/G0Q2vPPRst8LBDqlxLjbtx/WLR6h3nBc3eyuZ+q62HS=
1pJ
5EvUT1vjyJ1ySrqtUXWQ4XlZyoEFUfpJxJoN0A9HCxmHGVckzTRl5FMWo8TCniHynNXsBtDQb=
abt
7aNEOaAJdE7to0AH3T/Bvwzcp0ZJtBk0EM6YeMLtotUut7h2Bkg1b//r6bTBswMBXVJ5H44Qf=
0+e
KeUg7whSC9qpYOzzrm7+0r9F5u3qF8ZTx55TJc2g656C9a1P1MYVysLvkLvS4H+crmxA/i08T=
c1h
+x9RRvqba4lSzZ6/Tmt60DPM5Sc4R0nSm9BBff0Nm0bSNRS8InXdO1Aq3362QKX2NOwcL5YaS=
twO
DNyZUqF7izjK4QARAQABzTxEZW1pIE1hcmllIE9iZW5vdXIgKGxvdmVyIG9mIGNvZGluZykgP=
GRl
bWlvYmVub3VyQGdtYWlsLmNvbT7CwXgEEwECACIFAlp+A0oCGwMGCwkIBwMCBhUIAgkKCwQWA=
gMB
Ah4BAheAAAoJELKItV//nCLBhr8QAK/xrb4wyi71xII2hkFBpT59ObLN+32FQT7R3lbZRjVFj=
c6y
MUjOb1H/hJVxx+yo5gsSj5LS9AwggioUSrcUKldfA/PKKai2mzTlUDxTcF3vKx6iMXKA6AqwA=
w4B
57ZEJoMM6egm57TV19kzPMc879NV2nc6+elaKl+/kbVeD3qvBuEwsTe2Do3HAAdrfUG/j9erw=
Ik6
gha/Hp9yZlCnPTX+VK+xifQqt8RtMqS5R/S8z0msJMI/ajNU03kFjOpqrYziv6OZLJ5cuKb3b=
ZU5
aoaRQRDzkFIR6aqtFLTohTo20QywXwRa39uFaOT/0YMpNyel0kdOszFOykTEGI2u+kja35g9T=
kH9
0kkBTG+aEWttIht0Hy6YFmwjcAxisSakBuHnHuMSOiyRQLu43ej2+mDWgItLZ48Mu0C3IG1se=
eQD
jEYPtqvyZ6bGkf2Vj+L6wLoLLIhRZxQOedqArIk/Sb2SzQYuxN44IDRt+3ZcDqsPppoKcxSyd=
1Ny
2tpvjYJXlfKmOYLhTWs8nwlAlSHX/c/jz/ywwf7eSvGknToo1Y0VpRtoxMaKW1nvH0OeCSVJi=
tfR
P7YbiRVc2aNqWPCSgtqHAuVraBRbAFLKh9d2rKFB3BmynTUpc1BQLJP8+D5oNyb8Ts4xXd3iV=
/uD
8JLGJfYZIR7oGWFLP4uZ3tkneDfYzTxEZW1pIE9iZW5vdXIgKElUTCBFbWFpbCBLZXkpIDxhd=
Ghl
bmFAaW52aXNpYmxldGhpbmdzbGFiLmNvbT7CwY4EEwEIADgWIQR2h02fEza6IlkHHHGyiLVf/=
5wi
wQUCX6YJvQIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRCyiLVf/5wiwWRhD/0YR+YYC=
5Kd
uv/2LBgQJIygMsFiRHbR4+tWXuTFqgrxxFSlMktZ6gQrQCWe38WnOXkBoY6n/5lSJdfnuGd2U=
agZ
/9dkaGMUkqt+5WshLFly4BnP7pSsWReKgMP7etRTwn3Szk1OwFx2lzY1EnnconPLfPBc6rWG2=
moA
6l0WX+3WNR1B1ndqpl2hPSjT2jUCBWDVrGOUSX7r5f1WgtBeNYnEXPBCUUM51pFGESmfHIXQr=
qFD
A7nBNiIVFDJTmQzuEqIyJl67pKNgooij5mKzRhFKHfjLRAH4mmWZlB9UjDStAfFBAoDFHwd1H=
L5V
QCNQdqEc/9lZDApqWuCPadZN+pGouqLysesIYsNxUhJ7dtWOWHl0vs7/3qkWmWun/2uOJMQhr=
a2u
8nA9g91FbOobWqjrDd6x3ZJoGQf4zLqjmn/P514gb697788e573WN/MpQ5XIFl7aM2d6/GJiq=
6LC
9T2gSUW4rbPBiqOCeiUx7Kd/sVm41p9TOA7fEG4bYddCfDsNxaQJH6VRK3NOuBUGeL+iQEVF5=
Xs6
Yp+U+jwvv2M5Lel3EqAYo5xXTx4ls0xaxDCufudcAh8CMMqx3fguSb7Mi31WlnZpk0fDuWQVN=
KyD
P7lYpwc4nCCGNKCj622ZSocHAcQmX28L8pJdLYacv9pU3jPy4fHcQYvmTavTqowGnM1ARGVta=
SBN
YXJpZSBPYmVub3VyIChJVEwgRW1haWwgS2V5KSA8ZGVtaUBpbnZpc2libGV0aGluZ3NsYWIuY=
29t
PsLBjgQTAQgAOBYhBHaHTZ8TNroiWQcccbKItV//nCLBBQJgOEV+AhsDBQsJCAcCBhUKCQgLA=
gQW
AgMBAh4BAheAAAoJELKItV//nCLBKwoP/1WSnFdvSAD0g7fD0WlF+oi7ISFT7oqJnchFLOwVH=
K4J
g0e4hGn1ekWsF3Ha5tFLh4V/7UUuobYJpTfBAA2CckspYBqLtKGjFxcaqjjpO1I2W/jeNELVt=
SYu
COZICjdNGw2Hl9yHKRZiBkqc9u8lQcHDZKq4LIpVJj6ZQV/nxttDX90ax2No1nLLQXFbr5wb4=
65L
APpUlXwunYDij7xJGye+VUASQh9datye6orZYuJvNo8Tr3mAQxxkfR46LzWgxFCPEAZJ5P56N=
c0I
MHdJZj0Uc9+1jxERhOGppp5jlLgYGK7faGB/jTV6LaRQ4Ad+xiqokDWpmUOZsmA+bMbtPfYjD=
ZBz
5mlyHcIRKIFpE1l3Y8F7PhJuzzMUKkJi90CYakCV4x/aZs4pzk5E96c2VQx01RIEJ7fzHF7lw=
Fdt
fTS4YsLtAbQFsKayqwkGcVv2B1AHeqdoTMX+cgDvjd1ZganGlWA8Sv9RkNSMchn1hMuTwERTy=
FTr
2dKPnQdA1F480+jUap41ClXgn227WkCIMrNhQGNyJsnwyzi5wS8rBVRQ3BOTMyvGM07j3axUO=
Yae
jEpg7wKiwTPZGLGH1sz5GljD/916v5+v2xLbOo5606j9dWf5/tAhbPuqrQgWv41wuKDi+dDDE=
KkO
DF7DHes8No+QcHTDyETMn1RYm7t0RKR4zsFNBFp+A0oBEAC9ynZI9LU+uJkMeEJeJyQ/8VFkC=
JQP
QZEsIGzOTlPnwvVna0AS86n2Z+rK7R/usYs5iJCZ55/JISWd8xD57ue0eB47bcJvVqGlObI2D=
EG8
TwaW0O0duRhDgzMEL4t1KdRAepIESBEA/iPpI4gfUbVEIEQuqdqQyO4GAe+MkD0Hy5JH/0qgF=
mba
SegNTdQg5iqYjRZ3ttiswalql1/iSyv1WYeC1OAs+2BLOAT2NEggSiVOtxEfgewsQtCWi8H1S=
oir
akIfo45Hz0tk/Ad9ZWh2PvOGt97Ka85o4TLJxgJJqGEnqcFUZnJJriwoaRIS8N2C8/nEM53jb=
1sH
0gYddMU3QxY7dYNLIUrRKQeNkF30dK7V6JRH7pleRlf+wQcNfRAIUrNlatj9TxwivQrKnC9aI=
FFH
Ey/0mAgtrQShcMRmMgVlRoOA5B8RTulRLCmkafvwuhs6dCxN0GNAORIVVFxjx9Vn7OqYPgwio=
fZ6
SbEl0hgPyWBQvE85klFLZLoj7p+joDY1XNQztmfArnJ9x+YV4igjWImINAZSlmEcYtd+xy3Li=
/8o
eYDAqrsnrOjb+WvGhCykJk4urBog2LNtcyCjkTs7F+WeXGUo0NDhbd3Z6AyFfqeF7uJ3D5hlp=
X2n
I9no/ugPrrTVoVZAgrrnNz0iZG2DVx46x913pVKHl5mlYQARAQABwsFfBBgBAgAJBQJafgNKA=
hsM
AAoJELKItV//nCLBwNIP/AiIHE8boIqReFQyaMzxq6lE4YZCZNj65B/nkDOvodSiwfwjjVVE2=
V3i
EzxMHbgyTCGA67+Bo/d5aQGjgn0TPtsGzelyQHipaUzEyrsceUGWYoKXYyVWKEfyh0cDfnd9d=
iAm
3VeNqchtcMpoehETH8frRHnJdBcjf112PzQSdKC6kqU0Q196c4Vp5HDOQfNiDnTf7gZSj0Bra=
HOB
yy9LEDCLhQiCmr+2E0rW4tBtDAn2HkT9uf32ZGqJCn1O+2uVfFhGu6vPE5qkqrbSE8TG+03H8=
ecU
2q50zgHWPdHMOBvy3EhzfAh2VmOSTcRK+tSUe/u3wdLRDPwv/DTzGI36Kgky9MsDC5gpIwNbO=
JP2
G/q1wT1oGkw4IXfWv2ufWiXqJ+k7HEi2N1sree7Dy9KBCqb+ca1vFhYPDJfhP75I/VnzHVssZ=
/rY
Z9+51yDoUABoNdJNSGUYl+Yh9Pw9pE3Kt4EFzUlFZWbE4xKL/NPno+z4J9aWemLLszcYz/u3X=
nbO
vUSQHSrmfOzX3cV4yfmjM5lewgSstoxGyTx2M8enslgdXhPthZlDnTnOT+C+OTsh8+m5tos8H=
Qja
PM01MKBiAqdPgksm1wu2DrrwUi6ChRVTUBcj6+/9IJ81H2P2gJk3Ls3AVIxIffLoY34E+MYSf=
kEj
Bz0E8CLOcAw7JIwAaeBT
=3Dx+Ro
-----END PGP PUBLIC KEY BLOCK-----

--------------B5CDC002198864B3CFD74116--

--rtxUu6I7pPr2GiYXoLWVbrSlSu6ESUvqI--

--QuSxHp8sqUgk0op65Pzl6XtmQMEDuaDN3
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmCJBVQACgkQsoi1X/+c
IsEB6xAA3NaPsDQNhy9DCjozQ8lR1uGp12su5Sl0Wmd86OQg1TVLjMqx0JiGFTYw
iwcuPY3QjyEG5gsAIN5rL7ujx8/aurNBD9ca+SdDVHA6ofjlseXN4z9kZtO4gsGd
v+pqzzntzAJ5QXIelKibyxh1mmMeQHASOnC7GBOmlw+6deHc1yNIDsUm0zftWJwH
InLa/aap8yOXMv+rIhMWkQd0ukiSgiL0APtj+UrfhPCAN75sVmmuFSP5mpdYOUC9
nvgpOMEi8BEXwJi7pXTvgf2dh4r6MJHypIa8pIgoxALA5eHwxFX0I4xhd2Fs4iBo
rHiCyoE5mfb9smcR1S2RBS0qgSnI5A2vjWhtfmKhMuHiB3Xqanu5+SZua12dhHAd
mEulIiiX8xhohJizPJ++m4DxJhjTSCVaWf5qaQ6JN2w0uQhEC06LMgdKWGlkEEcl
mueBAsvP6O84ZuzrWGxTM4Jx+MWliQdAG0m/tetRVPb0pLJr9YCpBvHKpriN3ih7
Q5v2legcKMjk522ihLSkqu9gabh8qYzs/IeTvdbasS2MPX6dJ8xREmq1GIFsImcl
p+EOOl8xNXfRclNfr1t6RJkTUhI8LMBfw0MvhE7atNmKIPVo5P02KqZh1eLhfPFx
1tr6w5sby26u2eR8zpZ2zo42BZS9Zv3Ouhm9aQejfuY4RxvlkfQ=
=nPfN
-----END PGP SIGNATURE-----

--QuSxHp8sqUgk0op65Pzl6XtmQMEDuaDN3--


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 07:20:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 07:20:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119044.225360 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbeUN-0005fZ-Ow; Wed, 28 Apr 2021 07:20:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119044.225360; Wed, 28 Apr 2021 07:20: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 1lbeUN-0005fD-K6; Wed, 28 Apr 2021 07:20:03 +0000
Received: by outflank-mailman (input) for mailman id 119044;
 Wed, 28 Apr 2021 07:20:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1uJE=JZ=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lbeUM-0005Wf-7i
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 07:20:02 +0000
Received: from mail-wm1-x332.google.com (unknown [2a00:1450:4864:20::332])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4a2386d2-c7dc-428e-9722-5ed356ce97e0;
 Wed, 28 Apr 2021 07:20:01 +0000 (UTC)
Received: by mail-wm1-x332.google.com with SMTP id n127so21288002wmb.5
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 00:20:01 -0700 (PDT)
Received: from [192.168.1.186]
 (host86-180-176-157.range86-180.btcentralplus.com. [86.180.176.157])
 by smtp.gmail.com with ESMTPSA id h63sm2810018wmh.13.2021.04.28.00.19.59
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 28 Apr 2021 00:19: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: 4a2386d2-c7dc-428e-9722-5ed356ce97e0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:cc:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=r5xGVk7hzGDeqe6D9siNjnGXs4m1MYAh6B0t/kk7rXk=;
        b=XbiCyyaQk0Sd1WHxBa9jRmZuW5f3v5+D4/DNHkRdgkjXIHmb4lEg0TgiCKv8iNX6eh
         8510ZbTTR097+zBBiwAOQt5PgDhrb/VD2NI1BUDqZnnJbRKYDTO46wH4d15ve543cTsE
         hA5/HZ8Dtu9yzq3BIbV4IDVL0pWz/hYwr/fhsQzxwhcnHmdjTCQ2UW7/+SaiapELuddf
         yz8/+m8ICAbjbB6x3djqCkNLnN3uTMr7tu5jFrMaM6mYU3h7SCZFznRb7qQjBVXbSHQf
         XwzEdxPOthpH+h062SQazOKgdveCQWtVhgTNSbt+9QK/+nryat8eknq8p2PfFdshYUlj
         yyyQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:cc:references
         :message-id:date:user-agent:mime-version:in-reply-to
         :content-language:content-transfer-encoding;
        bh=r5xGVk7hzGDeqe6D9siNjnGXs4m1MYAh6B0t/kk7rXk=;
        b=Gd/KSVRmeNAobuFUCmnba0lJG7c0HESyyr6jupWglZuu6hrnSHMKVfz/OGxblKMPZs
         GbbxfBq+GDr5OEOz64c6omZ9/R4m2cLT7mp82cZ2U3ve8la9lnWIPc+yjahMT4/4FZig
         z8kP4ijU/2ntZSPZZxrsfTZFyJcHSBmO06ImjbnOE0c6Q4y5diNGklJyq1CdrRbRjXbH
         J/4Kqu7aHrLS2raTy+9ACUySaJdqzVCjwh2xDBLc5AnNlYc3hLT2yMeT+sW0dkZNSll4
         DBoMS66xGhhUKtb8sCTzxNAcKl2JzYFVqSiVlSucxmdkRMqg1FckqsP2L132xbDuDATe
         UD1A==
X-Gm-Message-State: AOAM533UzkWtwtooTrXBsm6bWCU83vVF+Kvarx083o75IoqYLkCaqD3v
	PkaByUtf3kg6TpehYlpCfdg74urmXX0=
X-Google-Smtp-Source: ABdhPJzreyOhtk6E+heq9UbzAYTMnkmac6Ad/iNc402Ol4Zc5ovemv2y9Pw7wtZENnX58SytF9L9bw==
X-Received: by 2002:a7b:c248:: with SMTP id b8mr2789584wmj.150.1619594400378;
        Wed, 28 Apr 2021 00:20:00 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
To: Jan Beulich <jbeulich@suse.com>, Scott Davis <scott.davis@starlab.io>,
 Scott Davis <scottwd@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
 <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
 <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
 <237ad45b-b68d-9d31-0fbc-1af52dfca808@suse.com>
Message-ID: <dc6556ae-c653-8519-1a81-9524e4472f26@xen.org>
Date: Wed, 28 Apr 2021 08:19:58 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <237ad45b-b68d-9d31-0fbc-1af52dfca808@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/04/2021 07:15, Jan Beulich wrote:
> On 28.04.2021 00:00, Scott Davis wrote:
>> On 4/27/21, 2:56 AM, Jan Beulich wrote:
>>> On 26.04.2021 19:25, Scott Davis wrote:
>>>> This patch modifies Xen's behavior when making devices assignable while the
>>>> iommu=no-quarantine command line option is in effect. Currently this option
>>>> only affects device deassignment, causing devices to get immediately assigned
>>>> back to Dom0 instead of to the quarantine dom_io domain. This patch extends
>>>> no-quarantine to device assignment as well, preventing devices from being
>>>> assigned to dom_io when they are made assignable while no-quarantine is in
>>>> effect.
>>>
>>> Well, the term "quarantine" to me means a safety action taken _after_
>>> possible exposure to something "bad". Therefore I see this being specific
>>> to device de-assignment as the logical thing. Hence if a mode like what
>>> you describe was wanted, I don't think it should be the result of
>>> "iommu=no-quarantine".
>>
>> Sorry I'm a bit confused by this. Correct me if wrong, but my understanding is
>> that the purpose of assigning a device to dom_io on de-assignment is to protect
>> Dom0 from the effects of in-flight DMA operations initiated by a DomU. I assumed
>> that the purpose of (temporarily) assigning to dom_io on assignment was the same
>> but in reverse: protecting a DomU from Dom0-initiated ops. Is this not the case?
> 
> Well, no, not really. Dom0 is considered fully trusted for a variety of
> reasons.
> 
>> Also, documentation and code already refer to the operation in question as a
>> "quarantine" (see xl command line docs and libxl__device_pci_assignable_add)
>> and to devices that have undergone it as being "quarantined" (see assign_device
>> in xen/drivers/passthrough/pci.c). So if that is not the correct term, there may
>> be some additional changes needed for consistency. Is there another name that
>> would be more appropriate?
> 
> I don't see what's wrong with the term for how things are currently. If
> you talk about an adjustment to terminology to accompany your proposed
> change - not sure.
> 
>> I would also point out that, currently, there does not appear to be a way for an
>> xl user to opt out of quarantine functionality in either direction other than by
>> manually making devices assignable. There is no xl command line flag to disable
>> it and iommu=no-quarantine will have no effect because any device that xl itself
>> makes assignable will have the struct pci_dev.quarantine flag set, which
>> overrides iommu=no-quarantine. Is that intentional?
> 
> Not sure here either: It may also have been that it was assumed to not
> be of interest. Paul?
> 

TBH I'm not sure. When I implemented quarantining it was non-optional 
for good reason and no-quarantine came along later (and somewhat 
hurriedly IIRC).

>> If I misunderstood and your objection is simply that "quarantine-on-assignment"
>> and "quarantine-on-deassignment" should be controllable by separate iommu
>> options, that's an easy enough change to make.
> 
> Yes, effectively it's that what I think things would want to be, if
> "quarantine-on-assignment" is really something that we think is needed.
> It would default to off imo.
> 
>> Although I think that might also
>> negate the need for/effect of struct pci_dev.quarantine as described above. If
>> that's what is desired, any thoughts on what the new option(s) should be called?
> 
> Following the extension to the command line option I'm putting in place
> in "IOMMU: make DMA containment of quarantined devices optional" (which
> I still need to get around to address review feedback for and resubmit),
> I'd be inclined to suggest "iommu=quarantine=always" or
> "iommu=quarantine=on-assign". Unless of course we'd prefer to have the
> caller of the assignment operation have full control over the behavior
> here anyway (in which case a command line option control simply is not
> necessary).
> 

I'm still not entirely sure why not quarantining on is a problem, other 
than it triggering an as-yet undiagnosed issue in QEMU, but I agree that 
that the expectation of 'no-quarantine' meaning just that (i.e. the old 
dom0->domU and domU->dom0 transitions are re-instated) is reasonable. Do 
we really want yet more command line options?

   Paul


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 07:51:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 07:51:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119057.225372 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbeyO-0000Fo-8y; Wed, 28 Apr 2021 07:51:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119057.225372; Wed, 28 Apr 2021 07: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 1lbeyO-0000Fh-60; Wed, 28 Apr 2021 07:51:04 +0000
Received: by outflank-mailman (input) for mailman id 119057;
 Wed, 28 Apr 2021 07:51:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vSVs=JZ=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lbeyM-0000Fc-4K
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 07:51:02 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1b795db7-9504-4ea0-86b4-7c294e4bccf2;
 Wed, 28 Apr 2021 07:51:00 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.25.2 AUTH)
 with ESMTPSA id D0155dx3S7ow3hl
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate)
 for <xen-devel@lists.xenproject.org>;
 Wed, 28 Apr 2021 09:50: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: 1b795db7-9504-4ea0-86b4-7c294e4bccf2
ARC-Seal: i=1; a=rsa-sha256; t=1619596259; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=Eq7L8vJwqnIbI6PCSzdg9/PEOAzpyGzoVPlazYpm5jnnIfuOF3n4J2w5j+NMOFilfD
    b3fugFwMLhKXDYbJGKdvkJre7y2FG0c//nHgmXnGXS6rDCs6vyc7ehSxM2Tz6ttS387N
    suy40KMtj4Arced931E/v459qXRpBoyfwFsrTCG6wA7jpiRhOL7uhkCpczs7v4FkWmXL
    4VDE8adAryKtsTUEcFRdQiTTQ80dN1AF1Oq1ylZm8Cbg7IZQooTjH4rNTTo/6xANVoc7
    ft44R+fsVAglo1dM1yK6AZN/h7HQbp7hS0qU93F8ERZUlwstPgb/EaKVBLYBv3UZszxF
    im8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619596259;
    s=strato-dkim-0002; d=strato.com;
    h=Message-ID:Subject:To:From:Date:Cc:Date:From:Subject:Sender;
    bh=Vf4gFG2hXiU7RxjRytL1xvL8OT69uRvJR5wULQDYZ1Q=;
    b=oCMtTreFdB2mUfRVxQwFJ+sArLnvp+xpFwTMmY6Gvpc/9c98i/rGhr+Vna07XV9uuH
    sJB/kRVSei1tMuzuvsSwejt2ZC/vLP9nhQiezCWJ235koXi9P/a4QcdP3U8otRu1OHcd
    hnIz1k2uOnzjykUcANqdo6NX9/8ScaE05OIE420bILKt1EUJ4vV7IUSAGOyW8vKxz52d
    Vh4hhIyZusSh5N/K7IfWzhKW/nJlf5/EhTQ1OseQz0Yi4Uy7ZPJAAk9c6a9t+ic9LJN0
    cjfVhpC+S3DdnQ60LSrEXwBWlgTbRAKQRAV2VWN7/VDMtQbwZeeeY0EE/7DHG3mxUPpy
    aVkA==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619596259;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-ID:Subject:To:From:Date:Cc:Date:From:Subject:Sender;
    bh=Vf4gFG2hXiU7RxjRytL1xvL8OT69uRvJR5wULQDYZ1Q=;
    b=UmquaNWoOsC9wuypOTomaxwKkCxSKCAF5eCQTwsrK0I6FVn0zbHiFg2zqYT/1BE6g0
    9T8fI5vGDFkSChIbXZY+UUanng+gP78RuM0Mqf4JjhzQPF0hb3biCPR3BGXnmYaGUw6b
    4y82jhYjBYyHjNoJx+H6iY0623gPPguAlnSXC55n0ta/2K0+vc6PQrK8RCsc3SCm4kIP
    KwzV0pF/gfo+FWhw63Vxyp+w1rtKOPaNjJsEqK4kYNWOysy7dEPprfgW7sa1yl3sZAeC
    3z7I++itqe3rIPAr0uwXJ2ZR/uTwvtJr4P0HlZW8BMG6QWbPP6kyHv9qivNJ3xBXqzjt
    Dxow==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisEsVR6GbU3svGYLiH9zFD0wpO7hNb2D/K88Gfjs"
X-RZG-CLASS-ID: mo00
Date: Wed, 28 Apr 2021 09:50:49 +0200
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Subject: obtain a list of granttable PFNs from toolstack
Message-ID: <20210428095049.14a8272b.olaf@aepfle.de>
X-Mailer: Claws Mail 2021.04.21 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="Sig_/dE8OC3P8fXpfa_9Ehs93HrM";
 protocol="application/pgp-signature"; micalg=pgp-sha256

--Sig_/dE8OC3P8fXpfa_9Ehs93HrM
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Is there an API to get a list of PFNs which are currently being active in t=
he grant table for a given domid?

Olaf

--Sig_/dE8OC3P8fXpfa_9Ehs93HrM
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmCJE9kACgkQ86SN7mm1
DoCxzQ//XxJprA3nZdIGwu9eqqyBgDMtwI994+GogphqN9S9j52V7ewHVuBvMqsY
Kgl6JCvmS4e+LYNXI+sz2PoPNMvgH+oUfZcHGa2Sirtoo13BqsNzYCIW+cZhUhat
g75J4GdeKrDfAOdPA8drJNFvjQkoGJiqI0cwXvRzaMsRMBj8FFQEY6OWu8kdzIPD
rfggo8XIJgyfrx0z1N/fRHW+D6WCyVLXZZrhfHSmZcYYeIzTwwMP6H4z8TtpsYy7
g8ockcD30CtgkvQhZCaVy5s5HB8XgZ87i38Pf5lK0r9VqIu0xXnuEGCgAFbeY9D8
3b3sjEg94TA7XwojMm2WFB84Q1Q4blJQoIHQeuVLXXopk1weTRI6vxkvuWiVj5gV
lDQhUCfI2kHbBV6Bpt4OpijuxBxIAnDNI6ngZ/T5MNCa9FxskB3Inf2u1bMvYDWT
j7Rfa58/D8HHlqReHjWfc5v+U0HWfrSJOs6YtO9FYNP/F7Sl+WQgTiyGyVjKD8if
tl1CYBAjbHfWmc6YalPTW3/ZuJxkiUtdIEh1h3VviWSzHFZuh2QoRZ+rIcHghGrr
ZGmuJwQ6YLiK4sGmkA+BoeGyeqOLoz5jjDnoNGqlDj0QtHji9Js4BBOYMmI6/ml3
UxbNtJUybym0WKvT7jaRUCuRRPHaYUGvO3w7B4nN4O39mbJXl/A=
=PyOQ
-----END PGP SIGNATURE-----

--Sig_/dE8OC3P8fXpfa_9Ehs93HrM--


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 08:10:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 08:10:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119068.225384 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbfGh-0001ou-5x; Wed, 28 Apr 2021 08:09:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119068.225384; Wed, 28 Apr 2021 08: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 1lbfGh-0001on-1E; Wed, 28 Apr 2021 08:09:59 +0000
Received: by outflank-mailman (input) for mailman id 119068;
 Wed, 28 Apr 2021 08:09:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbfGf-0001oi-Jp
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 08:09:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 97d2edf3-2dee-4b06-9462-9ca424369808;
 Wed, 28 Apr 2021 08:09:56 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C77B6AF95;
 Wed, 28 Apr 2021 08:09: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: 97d2edf3-2dee-4b06-9462-9ca424369808
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619597395; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=fReZqMPUNfMhAARkRPCF3f9jLn936E5fNOwz/nQswsY=;
	b=WqVVf0hnfDFxavXCaWh0g7ObHvSMn7huwszwhHZx17BQkNobBJIcT3+MHTBBOVks431nit
	n1v3juvO9/ma7AxfFDMD9OUFgWSid0j0M29HLz+rq1ifQ7Hb5g53qBxNLXhlDAkdwCk3bK
	NDsX0HGJgxVE/eVIIsZ8W/WfkKe+BgI=
Subject: Re: [PATCH] x86/pv: Drop HYPERVISOR_COMPAT_VIRT_START()
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210427130201.2142-1-andrew.cooper3@citrix.com>
 <bdc85c8d-db7c-e9cb-d436-317a31f96e69@suse.com>
 <bdd45821-5164-a785-67bd-8f660c6353cf@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <159b5b07-7d09-3cf3-0ce9-4280d931480a@suse.com>
Date: Wed, 28 Apr 2021 10:09:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <bdd45821-5164-a785-67bd-8f660c6353cf@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 27.04.2021 20:05, Andrew Cooper wrote:
> On 27/04/2021 14:18, Jan Beulich wrote:
>> On 27.04.2021 15:02, Andrew Cooper wrote:
>>> --- a/xen/include/asm-x86/config.h
>>> +++ b/xen/include/asm-x86/config.h
>>> @@ -254,21 +254,16 @@ extern unsigned char boot_edid_info[128];
>>>  
>>>  /* This is not a fixed value, just a lower limit. */
>>>  #define __HYPERVISOR_COMPAT_VIRT_START 0xF5800000
>>> -#define HYPERVISOR_COMPAT_VIRT_START(d) ((d)->arch.hv_compat_vstart)
>>> -
>>> -#else /* !CONFIG_PV32 */
>>> -
>>> -#define HYPERVISOR_COMPAT_VIRT_START(d) ((void)(d), 0)
>> ... this to allow things to build in the absence of the actual struct
>> member.
> 
> Hmm - I really should have got this change in earlier, shouldn't I...
> 
> For this example you've pointed out, feeding 0 into the limit
> calculation is not a correct thing to do in the slightest.

Does it actually get fed into any such calculation? From looking
around yesterday as well as from when I made that change over
half a year ago I seem to recall that all potentially problematic
uses are already suitably guarded.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 08:39:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 08:39:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119083.225396 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbfif-0004Od-EL; Wed, 28 Apr 2021 08:38:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119083.225396; Wed, 28 Apr 2021 08:38:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbfif-0004OW-B5; Wed, 28 Apr 2021 08:38:53 +0000
Received: by outflank-mailman (input) for mailman id 119083;
 Wed, 28 Apr 2021 08:38:52 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbfie-0004OR-7G
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 08:38:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a53303be-6df7-44f2-991b-7de50071bdcb;
 Wed, 28 Apr 2021 08:38:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 0D589AFD0;
 Wed, 28 Apr 2021 08:38: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: a53303be-6df7-44f2-991b-7de50071bdcb
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619599130; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=XXMQ2UMp5IapWeYwowL8EQKa47GsyR+L7IZoMOU2bh4=;
	b=BNtb4MFIL0nEZWZ3Al46LMcYnHMJ3Elvnswpo7AlgHwN715a/xHAG65hmNtNEJch0aMGxT
	waI060vyGmDpvz6j/CZq7o9so5/vrQJbiXTSy670CBnx2snw4OD0v2el8lJdhx/Yt77Tg9
	D41KkVLCBgnuFxN7YpKq3BLrDoNtJlc=
Subject: Re: [PATCH] x86/emul: Use existing X86_EXC_* constants
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426124535.23814-1-andrew.cooper3@citrix.com>
 <f11189be-7ce7-ed54-a078-541eb3513eba@suse.com>
 <8c23d63a-e93f-6d2d-aaff-c816503f73e2@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7425e0e7-f4ea-9bf2-d063-ba142b61b388@suse.com>
Date: Wed, 28 Apr 2021 10:38:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <8c23d63a-e93f-6d2d-aaff-c816503f73e2@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 20:56, Andrew Cooper wrote:
> On 27/04/2021 08:09, Jan Beulich wrote:
>> On 26.04.2021 14:45, Andrew Cooper wrote:
>>> ... rather than having separate definitions locally.  EXC_HAS_EC in particular
>>> is missing #CP, #VC and #SX vs X86_EXC_HAVE_EC.
>>>
>>> Also switch a raw 14 for X86_EXC_PF in x86_emul_pagefault().
>>>
>>> No functional change.
>>>
>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>> ---
>>> CC: Jan Beulich <JBeulich@suse.com>
>>> CC: Roger Pau Monné <roger.pau@citrix.com>
>>> CC: Wei Liu <wl@xen.org>
>>> ---
>>>  xen/arch/x86/x86_emulate/x86_emulate.c | 739 ++++++++++++++++-----------------
>>>  xen/arch/x86/x86_emulate/x86_emulate.h |   4 +-
>>>  2 files changed, 361 insertions(+), 382 deletions(-)
>> This is a lot of code churn (almost all some slight growth) for this
>> kind of a change.
> 
> Interestingly, no lines needed re-wrapping as a consequence.
> 
> [Answering out of order]
> 
>>  The other option,
>> not reducing churn but reducing rather than increasing code volume (and
>> hence imo helping readability), would be to have shorthands for at
>> least some frequently raised exceptions like #UD and #GP - e.g.
>> generate_ud_if(). Thougths?
> 
> #UD and #GP[0] are the overwhelming majority of cases.   If you want to
> reduce code volume further, I've always found the "generate" on the
> front rather gratuitous.  "raise" is a more common expression to use
> with exceptions.

Indeed I, too, have been wondering whether "raise" wouldn't be better
(but see also below). "generate_exception" predates my participation
in development, iirc.

>>  I'm not opposed, but I'd like to explore alternatives
>> first. I know you often dislike token concatenation in macros, which
>> would be my first suggestion to get churn down here.
> 
> Outside of a few specific cases, yes, but as you can see in XTF,
> exception handling is one area where IMO clarity can be improved with
> certain limited macro magic.
> 
> In the emulator, I could get behind a single #define RAISE() along the
> lines of:
> 
> #define RAISE(e, ...)
> do {
>     BUILD_BUG_ON(((X86_EXC_HAS_EC & (1u  << X86_EXC_##e)) !=
> __count_args(__VA_ARGS__));
>     x86_emul_hw_exception(X86_EXC_##e, __count_args(__VA_ARGS__) ?
> __VA_ARGS__ : X86_EVENT_NO_EC, ctxt);
>     rc = X86EMUL_EXCEPTION;
>     goto done;
> } while ( 0 )

Looks good to me at a first glance, except that I think the left
side of the != in the BUILD_BUG_ON() needs converting to bool
(either explicitly, or by shifting right X86_EXC_HAS_EC instead
of shifting left 1u).

> It's obviously playing behind your back, unlike generate_exception(),

Playing behind our backs? I don't think I see what you mean. 

> and does build-time checking that error codes are handled correctly
> (unlike mkec() which has a substantial quantity of code bloat to not
> actually handle it correctly at runtime).

Are you telling me that the compiler doesn't do enough constant
folding there? And I'm also not seeing what doesn't get handled
correctly there.

> I dislike _if() suffixed macros, again for obfuscation reasons.
> 
> if ( foo )
>     RAISE(UD);
> 
> is far more normal C than
> 
> RAISE_IF(UD, foo);
> or
> RAISE_IF(foo, UD);
> 
> neither if which is a natural reading order.  The reduction in line
> count does not equate to improved code clarity.

Not sure here. I wouldn't object the change you suggest, but I've
never had a problem with generate_exception_if(). I guess it's
less clear with RAISE_IF(), but that may be an entirely personal
perception. It was for that reason though that I suggested (now
adapting to the alternative naming) RAISE_UD_IF() as a possible
shorthand. As a good example where I think all the extra if()
would make the code harder to read, please see e.g. the pending
"x86emul: support tile multiplication insns".

>  Frankly, areas of
> x86_emulate() would benefit greatly from extra spacing per our normal
> coding style.

I wonder what you refer to by "normal" here: If I guess correctly
what you mean, I don't think ./CODING_STYLE mandates anything.
Not even blank lines between non-fall-through case label blocks.
In recent work I've been trying to separate logical chunks, but I
guess I may not have gone far enough for your taste ...

Really what I'm still hoping to have a good idea for is how to
split up the gigantic switch() statement in there, without having
to introduce dozens of functions with very long parameter lists,
and without sacrificing the centralized SIMD handling immediately
after that switch(). Ideally I'd want to even split up the
monolithic source file, as - especially with older gcc - its
compilation has been dominating build time particularly when
passing make a sufficiently high -j.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 08:49:08 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 08:49:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119088.225408 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbfsV-0005KK-AF; Wed, 28 Apr 2021 08:49:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119088.225408; Wed, 28 Apr 2021 08: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 1lbfsV-0005KD-5W; Wed, 28 Apr 2021 08:49:03 +0000
Received: by outflank-mailman (input) for mailman id 119088;
 Wed, 28 Apr 2021 08:49:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbfsU-0005K8-Mo
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 08:49:02 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 98d80166-d8f7-4163-8ef9-8371b7770d3b;
 Wed, 28 Apr 2021 08:49:01 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E627EAF2F;
 Wed, 28 Apr 2021 08:49: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: 98d80166-d8f7-4163-8ef9-8371b7770d3b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619599741; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=aeY/g3ui4YX7dtEb5NxwJh5hT4ZgkkgX63VRBnZlm+Q=;
	b=smDG6emRtYjSHL5FEdlEOXbtp3XJO9B+IBKzOO2BZgrMSW2FLoti5UM56m8SD72gsd+yxx
	Fj7nJytEHaeG8QPXg8qxQN430MKH1lkGy3zWR5C0AwRf4XFf6cFh4K//mkw+MsiYWAEjmW
	/p7TNwRtEH6fo825MYLMl0ew1fIFhZ0=
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
To: paul@xen.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Scott Davis <scottwd@gmail.com>, Scott Davis <scott.davis@starlab.io>
References: <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
 <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
 <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
 <237ad45b-b68d-9d31-0fbc-1af52dfca808@suse.com>
 <dc6556ae-c653-8519-1a81-9524e4472f26@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b6888c16-92fa-7ece-8882-3775c08f212b@suse.com>
Date: Wed, 28 Apr 2021 10:49:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <dc6556ae-c653-8519-1a81-9524e4472f26@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28.04.2021 09:19, Paul Durrant wrote:
> On 28/04/2021 07:15, Jan Beulich wrote:
>> Following the extension to the command line option I'm putting in place
>> in "IOMMU: make DMA containment of quarantined devices optional" (which
>> I still need to get around to address review feedback for and resubmit),
>> I'd be inclined to suggest "iommu=quarantine=always" or
>> "iommu=quarantine=on-assign". Unless of course we'd prefer to have the
>> caller of the assignment operation have full control over the behavior
>> here anyway (in which case a command line option control simply is not
>> necessary).
>>
> 
> I'm still not entirely sure why not quarantining on is a problem,

Well, I continue to think that it is a mistake to hide problems (with
their hardware) from system administrators by default. I guess most
everyone else put usability in foreground, as my view to workarounds
(with non-benign [side-]effects) being enabled by default looks to be
generally different.

> other 
> than it triggering an as-yet undiagnosed issue in QEMU, but I agree that 
> that the expectation of 'no-quarantine' meaning just that (i.e. the old 
> dom0->domU and domU->dom0 transitions are re-instated) is reasonable.

I'm afraid I'm not clear what you're talking about here. What "old
transitions"? The ones prior to the introduction of quarantining? If
so, and if the tool stack is given (some level of) control, I guess
we'd first need to establish who "rules": The command line option,
or the tool stack (which imo ought to be acting whichever particular
way based on admin requests, not to blindly override Xen's defaults).

> Do we really want yet more command line options?

If we can avoid them without sacrificing functionality / flexibility ...

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 08:51:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 08:51:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119092.225420 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbfv1-0006AP-Nt; Wed, 28 Apr 2021 08:51:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119092.225420; Wed, 28 Apr 2021 08:51: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 1lbfv1-0006AI-KE; Wed, 28 Apr 2021 08:51:39 +0000
Received: by outflank-mailman (input) for mailman id 119092;
 Wed, 28 Apr 2021 08:51:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1uJE=JZ=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1lbfv0-0006AD-Qd
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 08:51:38 +0000
Received: from mail-wr1-x429.google.com (unknown [2a00:1450:4864:20::429])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8b9a893d-c069-4b82-8d03-3150cc6a9883;
 Wed, 28 Apr 2021 08:51:37 +0000 (UTC)
Received: by mail-wr1-x429.google.com with SMTP id n2so8987271wrm.0
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 01:51:37 -0700 (PDT)
Received: from [192.168.1.186]
 (host86-180-176-157.range86-180.btcentralplus.com. [86.180.176.157])
 by smtp.gmail.com with ESMTPSA id c2sm2968700wmr.22.2021.04.28.01.51.35
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 28 Apr 2021 01:51: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: 8b9a893d-c069-4b82-8d03-3150cc6a9883
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:cc:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=jKXMTjZ0qBJxc7j3aTexvAKgrQx1Wu0ZuRIGlJnZkw8=;
        b=gCmdiqOJvy+pxT9RGyt+YV972ZKPm49MvOfBrpCgab/SHIefJTRFy1iD+EDynLiYyX
         gZYRLuhFtN5tRzXko0J1EeXse8KWS4C95NDk1bLhjci1tY5MeuKkRBJA/UKg+Wadkw2c
         J/UjZdXRakY2EQxgsn9PDdWuAgzb5AEaHB5HK6k6OpqTVcGrBmGW+CzqAHj43j1B6fte
         WN3/j31estmIspRucDpbRDEaJ21cBgSWVGphC275+tBWaPxHm5o3s5wd5Ii4DJH7I83u
         kxx40GJ9tY+xvbRSUtpxwnY9pbIWxBDLIl7/mbUTq9L1ZuJhEvnEuNzKzzZfHUvvyjT5
         Vu2Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:cc:references
         :message-id:date:user-agent:mime-version:in-reply-to
         :content-language:content-transfer-encoding;
        bh=jKXMTjZ0qBJxc7j3aTexvAKgrQx1Wu0ZuRIGlJnZkw8=;
        b=cSqajXyOX/JVGts5D/r9MswYsvXA1KOq1ol1kRIuqJS7kr05mPduQMosZfy6/+oxTR
         nk9+1Avfyh77eWhb093eJikmDvtGsiX6X+mO5/0SpdLENH8wOOCQP8KS3hrQteLMTxl6
         ZZ3pVm/elB/9FbYxnFIvl46DXnfQsrFhNWdlYHakm917AABY0+SisOJdY+KBe86/9CaO
         AfIfmx9whiDZmtsb8XwUnOChVuGxJg8/LJ5xhijMsdJgslPb0vCAhh7gX6nmDfkVox5l
         gw/RfqLkWQ5JLRL+TOJ4GMWdPf576TxX4xfhSAt0Cf9QaNEQ0eX4egI36NYMX6L3m5Qk
         bgbQ==
X-Gm-Message-State: AOAM532cmHBriQN8q8JG/CrDT0skPtXifiLLJ1tn+ChsDvDbKDg8Oebo
	gumpr3oPjCaTTKPGxoAq1/g=
X-Google-Smtp-Source: ABdhPJzLCV6NpYxZvXEVRPsKL2lH0BXGQJWA4TkwPmVSWyjJKWlMmBFngRNsop6PHieRRR6IJzI+TA==
X-Received: by 2002:adf:9d88:: with SMTP id p8mr34480679wre.138.1619599897077;
        Wed, 28 Apr 2021 01:51:37 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Scott Davis <scottwd@gmail.com>, Scott Davis <scott.davis@starlab.io>
References: <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
 <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
 <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
 <237ad45b-b68d-9d31-0fbc-1af52dfca808@suse.com>
 <dc6556ae-c653-8519-1a81-9524e4472f26@xen.org>
 <b6888c16-92fa-7ece-8882-3775c08f212b@suse.com>
Message-ID: <4108bcab-e3e0-3e20-07d3-48c73c8903ec@xen.org>
Date: Wed, 28 Apr 2021 09:51:35 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <b6888c16-92fa-7ece-8882-3775c08f212b@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/04/2021 09:49, Jan Beulich wrote:
> On 28.04.2021 09:19, Paul Durrant wrote:
>> On 28/04/2021 07:15, Jan Beulich wrote:
>>> Following the extension to the command line option I'm putting in place
>>> in "IOMMU: make DMA containment of quarantined devices optional" (which
>>> I still need to get around to address review feedback for and resubmit),
>>> I'd be inclined to suggest "iommu=quarantine=always" or
>>> "iommu=quarantine=on-assign". Unless of course we'd prefer to have the
>>> caller of the assignment operation have full control over the behavior
>>> here anyway (in which case a command line option control simply is not
>>> necessary).
>>>
>>
>> I'm still not entirely sure why not quarantining on is a problem,
> 
> Well, I continue to think that it is a mistake to hide problems (with
> their hardware) from system administrators by default. I guess most
> everyone else put usability in foreground, as my view to workarounds
> (with non-benign [side-]effects) being enabled by default looks to be
> generally different.
> 
>> other
>> than it triggering an as-yet undiagnosed issue in QEMU, but I agree that
>> that the expectation of 'no-quarantine' meaning just that (i.e. the old
>> dom0->domU and domU->dom0 transitions are re-instated) is reasonable.
> 
> I'm afraid I'm not clear what you're talking about here. What "old
> transitions"? The ones prior to the introduction of quarantining?

FAOD, that's what I meant.

   Paul

> If
> so, and if the tool stack is given (some level of) control, I guess
> we'd first need to establish who "rules": The command line option,
> or the tool stack (which imo ought to be acting whichever particular
> way based on admin requests, not to blindly override Xen's defaults).
> 
>> Do we really want yet more command line options?
> 
> If we can avoid them without sacrificing functionality / flexibility ...
> 
> Jan
> 



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:03:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:03:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119102.225432 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbg6U-0007AW-W2; Wed, 28 Apr 2021 09:03:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119102.225432; Wed, 28 Apr 2021 09: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 1lbg6U-0007AP-T0; Wed, 28 Apr 2021 09:03:30 +0000
Received: by outflank-mailman (input) for mailman id 119102;
 Wed, 28 Apr 2021 09:03: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 1lbg6T-0007AK-9x
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:03: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 1lbg6Q-0001bC-Lb; Wed, 28 Apr 2021 09:03:26 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbg6Q-0001f6-Eq; Wed, 28 Apr 2021 09:03:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=eHFzXnHUscmXvrgxAaF8yNtuyNlmy6RdKsx6rlFJHpc=; b=TfaNUbE1ksxC67omLjCM1MFgsZ
	7DsGXXObcMC+3fLCLrevbLozMhG41vHP5hz4ytNAXqcmfexZYnD89evViOAn0GfUmS0LeKGcHXFWl
	GyD68jED9bLBuyIfsW6suydzr47Qszdrn9ZzQs5Ieq3dAGsczI1rhjcCETus9eEhZRoo=;
Subject: Re: [PATCH 3/5] tools/libs/foreignmemory: Fix PAGE_SIZE redefinition
 error
To: Costin Lupu <costin.lupu@cs.pub.ro>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <b9a300edca034d44375d8b16d352110186657e75.1619524463.git.costin.lupu@cs.pub.ro>
From: Julien Grall <julien@xen.org>
Message-ID: <8803561c-b3bd-4979-f9ef-3f58542af70b@xen.org>
Date: Wed, 28 Apr 2021 10:03:23 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <b9a300edca034d44375d8b16d352110186657e75.1619524463.git.costin.lupu@cs.pub.ro>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Costin,

On 27/04/2021 13:05, Costin Lupu wrote:
>   tools/libs/foreignmemory/private.h | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/libs/foreignmemory/private.h b/tools/libs/foreignmemory/private.h
> index 1ee3626dd2..f3c1ba2867 100644
> --- a/tools/libs/foreignmemory/private.h
> +++ b/tools/libs/foreignmemory/private.h
> @@ -10,11 +10,13 @@
>   #include <xen/xen.h>
>   #include <xen/sys/privcmd.h>
>   
> -#ifndef PAGE_SHIFT /* Mini-os, Yukk */
> +#ifndef PAGE_SHIFT
>   #define PAGE_SHIFT           12
>   #endif
> -#ifndef __MINIOS__ /* Yukk */
> +#ifndef PAGE_SIZE
>   #define PAGE_SIZE            (1UL << PAGE_SHIFT)
> +#endif
> +#ifndef PAGE_MASK
>   #define PAGE_MASK            (~(PAGE_SIZE-1))
>   #endif

Looking at the usage, I believe PAGE_* are referring to the page 
granularity of Xen rather than the page granularity of the control 
domain itself.

So it would be incorrect to use the domain's page granularity here and 
would break dom0 using 64KB page granularity on Arm.

Instead, we should replace PAGE_* with XC_PAGE_*. If some of them are 
still referring to the control domain granularity, then we should use 
getpageshift() (Or equivalent) because the userspace shouldn't rely on a 
specific page granularity.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:04:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:04:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119106.225444 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbg7j-0007HI-Ap; Wed, 28 Apr 2021 09:04:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119106.225444; Wed, 28 Apr 2021 09:04: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 1lbg7j-0007HB-7e; Wed, 28 Apr 2021 09:04:47 +0000
Received: by outflank-mailman (input) for mailman id 119106;
 Wed, 28 Apr 2021 09:04: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 1lbg7i-0007H5-AD
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:04: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 1lbg7g-0001c3-QT; Wed, 28 Apr 2021 09:04:44 +0000
Received: from [54.239.6.190] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbg7g-0001ja-GS; Wed, 28 Apr 2021 09:04: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=1HhgNlvVh89LsWYdwwB897Go5ylU1RxlYREqwp+CApw=; b=29BppQjSc/AKH5NKCVuU4qykuR
	OrAApK0ik4fiE7J5OgLaz8EfNZtB1kFmliYkCEbomL8IpQ0glg2srW4Jndp7Y9AQhfP6mkNhC+xym
	8cMp2F9JEJsosgWdShfSMtFm6IAia27XcEwND9J7xRCtEb7UmeRcpB07zoWBzrojScHs=;
Subject: Re: [PATCH 2/5] tools/libfsimage: Fix PATH_MAX redefinition error
To: Costin Lupu <costin.lupu@cs.pub.ro>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <e44209c8981a68604a34f3066d53989f84ce8f49.1619524463.git.costin.lupu@cs.pub.ro>
From: Julien Grall <julien@xen.org>
Message-ID: <9ef85c5b-b757-bbaa-be23-4ceb1d45cddd@xen.org>
Date: Wed, 28 Apr 2021 10:04:43 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <e44209c8981a68604a34f3066d53989f84ce8f49.1619524463.git.costin.lupu@cs.pub.ro>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 27/04/2021 13:05, Costin Lupu wrote:
> If PATH_MAX is already defined in the system (e.g. in /usr/include/limits.h
> header) then gcc will trigger a redefinition error because of -Werror.
> 
> Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
> ---
>   tools/libfsimage/ext2fs/fsys_ext2fs.c     | 2 ++
>   tools/libfsimage/reiserfs/fsys_reiserfs.c | 2 ++
>   2 files changed, 4 insertions(+)
> 
> diff --git a/tools/libfsimage/ext2fs/fsys_ext2fs.c b/tools/libfsimage/ext2fs/fsys_ext2fs.c
> index a4ed10419c..5ed8fce90e 100644
> --- a/tools/libfsimage/ext2fs/fsys_ext2fs.c
> +++ b/tools/libfsimage/ext2fs/fsys_ext2fs.c
> @@ -278,7 +278,9 @@ struct ext4_extent_header {
>   
>   #define EXT2_SUPER_MAGIC      0xEF53	/* include/linux/ext2_fs.h */
>   #define EXT2_ROOT_INO              2	/* include/linux/ext2_fs.h */
> +#ifndef PATH_MAX
>   #define PATH_MAX                1024	/* include/linux/limits.h */
> +#endif

Can we drop it completely and just rely on limits.h?

>   #define MAX_LINK_COUNT             5	/* number of symbolic links to follow */
>   
>   /* made up, these are pointers into FSYS_BUF */
> diff --git a/tools/libfsimage/reiserfs/fsys_reiserfs.c b/tools/libfsimage/reiserfs/fsys_reiserfs.c
> index 916eb15292..10ca657476 100644
> --- a/tools/libfsimage/reiserfs/fsys_reiserfs.c
> +++ b/tools/libfsimage/reiserfs/fsys_reiserfs.c
> @@ -284,7 +284,9 @@ struct reiserfs_de_head
>   #define S_ISDIR(mode) (((mode) & 0170000) == 0040000)
>   #define S_ISLNK(mode) (((mode) & 0170000) == 0120000)
>   
> +#ifndef PATH_MAX
>   #define PATH_MAX       1024	/* include/linux/limits.h */
> +#endif
>   #define MAX_LINK_COUNT    5	/* number of symbolic links to follow */
>   
>   /* The size of the node cache */
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:11:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:11:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119115.225462 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgEB-0008DI-5G; Wed, 28 Apr 2021 09:11:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119115.225462; Wed, 28 Apr 2021 09:11:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgEB-0008DB-1r; Wed, 28 Apr 2021 09:11:27 +0000
Received: by outflank-mailman (input) for mailman id 119115;
 Wed, 28 Apr 2021 09:11:25 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbgE9-0008D6-NZ
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:11:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f677f27b-155a-46da-aed5-32d98747eec3;
 Wed, 28 Apr 2021 09:11:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C0121AFE2;
 Wed, 28 Apr 2021 09:11: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: f677f27b-155a-46da-aed5-32d98747eec3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619601083; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=7bZDrMwaZBomTURa/fISaXQuoY9dA/cWiu2EPmuEx9Y=;
	b=l0x40CPAoD1VhCO6T0Z/hlYeMiwdThRaT6Fqkp7QFxxnRB946tNGoXLVCyeef+dJADPfo7
	5iPCd8Jxa9Q2VCoKwPqn0XYs/ww3e3bmnHAz69CifHg3dzIQj748GmF/HO8iOmgMmCrTzP
	rkb4IdnX+klgZawJ7z8MHHAVaaFr9CI=
Subject: Re: [PATCH 1/3] x86/hvm: Introduce experimental guest CET support
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-2-andrew.cooper3@citrix.com>
 <d8bd932d-071a-4a5b-747c-02cbd5e296cd@suse.com>
 <86cf1d97-2034-7791-071a-48208b6ba54b@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <28d7b7a9-9dd2-1664-e946-d7e4a330da0f@suse.com>
Date: Wed, 28 Apr 2021 11:11:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <86cf1d97-2034-7791-071a-48208b6ba54b@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 19:39, Andrew Cooper wrote:
> On 27/04/2021 16:47, Jan Beulich wrote:
>> On 26.04.2021 19:54, Andrew Cooper wrote:
>>> --- a/xen/include/public/arch-x86/cpufeatureset.h
>>> +++ b/xen/include/public/arch-x86/cpufeatureset.h
>>> @@ -232,7 +232,7 @@ XEN_CPUFEATURE(UMIP,          6*32+ 2) /*S  User Mode Instruction Prevention */
>>>  XEN_CPUFEATURE(PKU,           6*32+ 3) /*H  Protection Keys for Userspace */
>>>  XEN_CPUFEATURE(OSPKE,         6*32+ 4) /*!  OS Protection Keys Enable */
>>>  XEN_CPUFEATURE(AVX512_VBMI2,  6*32+ 6) /*A  Additional AVX-512 Vector Byte Manipulation Instrs */
>>> -XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*   CET - Shadow Stacks */
>>> +XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*h  CET - Shadow Stacks */
>>>  XEN_CPUFEATURE(GFNI,          6*32+ 8) /*A  Galois Field Instrs */
>>>  XEN_CPUFEATURE(VAES,          6*32+ 9) /*A  Vector AES Instrs */
>>>  XEN_CPUFEATURE(VPCLMULQDQ,    6*32+10) /*A  Vector Carry-less Multiplication Instrs */
>>> @@ -267,7 +267,7 @@ XEN_CPUFEATURE(SRBDS_CTRL,    9*32+ 9) /*   MSR_MCU_OPT_CTRL and RNGDS_MITG_DIS.
>>>  XEN_CPUFEATURE(MD_CLEAR,      9*32+10) /*A  VERW clears microarchitectural buffers */
>>>  XEN_CPUFEATURE(TSX_FORCE_ABORT, 9*32+13) /* MSR_TSX_FORCE_ABORT.RTM_ABORT */
>>>  XEN_CPUFEATURE(SERIALIZE,     9*32+14) /*a  SERIALIZE insn */
>>> -XEN_CPUFEATURE(CET_IBT,       9*32+20) /*   CET - Indirect Branch Tracking */
>>> +XEN_CPUFEATURE(CET_IBT,       9*32+20) /*h  CET - Indirect Branch Tracking */
>>>  XEN_CPUFEATURE(IBRSB,         9*32+26) /*A  IBRS and IBPB support (used by Intel) */
>>>  XEN_CPUFEATURE(STIBP,         9*32+27) /*A  STIBP */
>>>  XEN_CPUFEATURE(L1D_FLUSH,     9*32+28) /*S  MSR_FLUSH_CMD and L1D flush. */
>> If by the time 4.16 finishes up the various todo items haven't been
>> taken care of, should we take note to undo these markings? I would
>> have suggested allowing them for debug builds only, but that's kind
>> of ugly to achieve in a public header.
> 
> TBH, I still don't think this should be a public header.  If I would
> have forseen how much of a PITA is it, I would have argued harder
> against it.
> 
> It is, at best, tools-only (via SYSCTL_get_featureset), and I don't
> intend that interface to survive the tools ABI stabilisation  work, as
> it has been fully superseded by the cpu_policy interfaces and libx86.

Well - what features we expose is part of the (or at least something
like an) ABI. The actual numbering of course isn't (or shouldn't be).
I'm in no way opposed to moving the header out of public/ (and until
now I was of the impression that it was you who put it there), but if
we do I think we will want an alternative way of expressing which
extended features we support. I say this in particular because I think
SUPPORT.md doesn't lend itself to documenting support status at this
level of granularity. I'd much rather see that file refer to this
header, even if this may mean some difficulty to non-programmers.

> As for the max markings themselves, I'm not sure they ought to be
> debug-only.  Its important aspect of making guest support "tech preview"
> to ensure the logic works irrespective of CONFIG_DEBUG, and I think it
> is entirely fine for an experimental feature to be of status "your VM
> will explode if you enable this right now", even if that spills over
> into 4.17.

For a release I consider this undesirable. If a feature is in such a
state at the point of entering the RC phase, I think such markings
ought to be undone.

> In reality, once we've got {U,S}_CET context switching working at the
> Xen level, and {RD,WR}MSR plumbing done, it ought to be safe to people
> to turn on an experiment with.  At this point, we're in the position of
> "expected to work correctly in a subset of usecases".  I'd ideally like
> to get to this point before 4.16 releases, but that will be very subject
> to other work.

At _that_ point I could see the markings getting introduced outside
of debug builds, but still lower-case.

> All the emulator work is for cases that a VM won't encounter by default
> (Task Switch too, as Minix in the Intel Management Engine is the only
> known 32-bit CET-SS implementation).

Right, this is what is a prereq for the markings to become upper-case
ones (if - not specifically for the features here, but as a general
remark - we want them to become so ever in the first place) and the
features fully supported.

Jan

> Obviously, we want to get the checklist complete before enabling by
> default, but give the complexities in the emulator, I suspect we'll have
> a long gap between "believed can be used safely in a subset of cases",
> and "believed safe to use in general", and a long list of people happy
> to use it in a "doesn't work under introspection yet" state.
> 
> ~Andrew
> 



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:14:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:14:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119120.225474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgHT-0008M5-Ld; Wed, 28 Apr 2021 09:14:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119120.225474; Wed, 28 Apr 2021 09: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 1lbgHT-0008Ly-Hm; Wed, 28 Apr 2021 09:14:51 +0000
Received: by outflank-mailman (input) for mailman id 119120;
 Wed, 28 Apr 2021 09:14:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbgHS-0008Lt-MU
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:14:50 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8ff1838f-8620-43ce-8348-a1ed51a8e037;
 Wed, 28 Apr 2021 09:14:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 465B1AC38;
 Wed, 28 Apr 2021 09:14: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: 8ff1838f-8620-43ce-8348-a1ed51a8e037
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619601289; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=qlW2cejnmqsgFc6rvuekdCqxwXni4EEycvzeQ0FUllw=;
	b=ImBUOGVnUR2eByjdCnl9xdwdF0MnrrcjyVS4kvL0pDmCGTyjL4Pi1E4/hD6g4t9MJDTgB5
	iPrPJs0YuTxn1WUZ99otLY2ON/vkZYp9UD4t42AMEe/TxR9ML4aKTR2yduIIaDykh0K/lu
	WxidbiQDE4oNICrJ67C461DYcXmd/P4=
Subject: Re: [PATCH 2/3] x86/svm: Enumeration for CET
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-3-andrew.cooper3@citrix.com>
 <a5d73b34-8200-ae0c-6c91-252ad2812f3d@suse.com>
 <f50d2a46-ef8b-d867-4773-aa291586e26c@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <55c50b27-e8cc-873e-e768-7e9dec6f06a0@suse.com>
Date: Wed, 28 Apr 2021 11:14:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <f50d2a46-ef8b-d867-4773-aa291586e26c@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 27.04.2021 19:47, Andrew Cooper wrote:
> On 27/04/2021 16:53, Jan Beulich wrote:
>> On 26.04.2021 19:54, Andrew Cooper wrote:
>>> @@ -497,7 +501,9 @@ struct vmcb_struct {
>>>      u64 rip;
>>>      u64 res14[11];
>>>      u64 rsp;
>>> -    u64 res15[3];
>>> +    u64 _msr_s_cet;             /* offset 0x400 + 0x1E0 - cleanbit 12 */
>>> +    u64 _ssp;                   /* offset 0x400 + 0x1E8   | */
>>> +    u64 _msr_isst;              /* offset 0x400 + 0x1F0   v */
>>>      u64 rax;
>>>      u64 star;
>>>      u64 lstar;
>> Any reason for the leading underscores, when none of the neighboring
>> fields have such?
> 
> Yes - they're covered by a cleanbit, and for better or worse, this is
> our style.

The underscore prefixes are, to my understanding, there only to
emphasize that the fields shouldn't be accessed directly, but ...

>> Did you perhaps mean to add VMCB_ACCESSORS()
>> instances for them?
> 
> TBH, I opencoded the cleanbit handling because I thoroughly hate that
> entire infrastructure.

... via this (or something with similar abstracting effect). So
for any fields you mean to access directly they imo shouldn't be
there. I particularly don't view them as indicators of being
covered by cleanbits (if the respective accessors aren't used).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:19:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:19:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119128.225486 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgLQ-0008WO-8B; Wed, 28 Apr 2021 09:18:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119128.225486; Wed, 28 Apr 2021 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 1lbgLQ-0008WH-3q; Wed, 28 Apr 2021 09:18:56 +0000
Received: by outflank-mailman (input) for mailman id 119128;
 Wed, 28 Apr 2021 09:18:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbgLO-0008WB-9D
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:18:54 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 69d4ed58-6e59-47c4-94e4-afbb7affc701;
 Wed, 28 Apr 2021 09:18:53 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id BE84DAFE8;
 Wed, 28 Apr 2021 09:18:52 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 69d4ed58-6e59-47c4-94e4-afbb7affc701
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619601532; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=RjpndbxELtnnZIDfTz2mogtdoeO4SpIH65kAzKgtwpM=;
	b=kT0cE9MbINLhmeFsGV0EztM49az/GkNCR3A8IfIFev74psNumwHAJC6pWqmIWFL49g8cSE
	YOuL4XSKedROj3eF27jFdo7fk+GoeW38aMLxuvfoMpgyQaFel4wLiZCsdXYsoue3kJloPG
	2h57ouUrschT5DBrdzGca39UmFPo3ew=
Subject: Re: [PATCH 3/3] x86/VT-x: Enumeration for CET
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>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-4-andrew.cooper3@citrix.com>
 <d5ae2cf3-1157-d589-6c1d-8717a45a2753@suse.com>
 <0cebcfeb-68d2-f225-11a2-6d39a4a353dd@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <a82e93b4-ad2e-536d-a015-1f41cc61b217@suse.com>
Date: Wed, 28 Apr 2021 11:18:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <0cebcfeb-68d2-f225-11a2-6d39a4a353dd@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 18:27, Andrew Cooper wrote:
> On 27/04/2021 16:56, Jan Beulich wrote:
>> On 26.04.2021 19:54, Andrew Cooper wrote:
>>> VT-x has separate entry/exit control for loading guest/host state.  Saving
>>> guest state on vmexit is performed unconditionally.
>> With the latter I find ...
>>
>>> --- a/xen/arch/x86/hvm/vmx/vmcs.c
>>> +++ b/xen/arch/x86/hvm/vmx/vmcs.c
>>> @@ -2014,6 +2014,9 @@ void vmcs_dump_vcpu(struct vcpu *v)
>>>      printk("RFLAGS=0x%08lx (0x%08lx)  DR7 = 0x%016lx\n",
>>>             vmr(GUEST_RFLAGS), regs->rflags,
>>>             vmr(GUEST_DR7));
>>> +    if ( vmentry_ctl & VM_ENTRY_LOAD_GUEST_CET )
>>> +        printk("SSP = 0x%016lx S_CET = 0x%016lx ISST = 0x%016lx\n",
>>> +               vmr(GUEST_SSP), vmr(GUEST_S_CET), vmr(GUEST_ISST));
>> ... the conditional here a little odd, but I expect the plan is
>> to have the various bits all set consistently once actually
>> enabling the functionality.
> 
> TBH, the general behaviour here is poor.
> 
> What happens now, as Xen does use CET itself, is that Xen's values
> propagate into guest context, and are written back into the VMCS on
> VMExit.  There is no way to turn this behaviour off AFAICT.
> 
> Therefore, we must not print the guest values when the vCPU isn't
> configured for CET, because otherwise we'd be rendering what is actually
> Xen state, in the guest state area.
> 
> Once a VM is using CET, we'll have both VM_ENTRY_LOAD_GUEST_CET and
> VM_EXIT_LOAD_HOST_CET set.

As I did assume then, so fair enough.

> There is theoretically an optimisations to be had for a hypervisor not
> using CET, to only use the VM_ENTRY_LOAD_GUEST_CET control and leave
> VM_EXIT_LOAD_HOST_CET clear, but getting this optimisation wrong will
> leave the VMM running with guest controlled values.
> 
> Personally, I think it was be a far safer interface for there only to be
> a single bit to control "switch CET state" or not.

I agree, but this then goes for other state having multiple controls
as well, I guess. I've been wondering whether this separation somehow
helps them with the implementation of the guest-save, host-load, and
guest-load steps.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:29:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:29:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119133.225498 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgV7-00011f-5J; Wed, 28 Apr 2021 09:28:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119133.225498; Wed, 28 Apr 2021 09: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 1lbgV7-00011Y-2I; Wed, 28 Apr 2021 09:28:57 +0000
Received: by outflank-mailman (input) for mailman id 119133;
 Wed, 28 Apr 2021 09:28:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eWUI=JZ=arm.com=henry.wang@srs-us1.protection.inumbo.net>)
 id 1lbgV4-00011T-Rf
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:28:54 +0000
Received: from FRA01-MR2-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:7e19::622])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7862fab0-ec0b-42ba-8237-2b9d87b15eed;
 Wed, 28 Apr 2021 09:28:51 +0000 (UTC)
Received: from DB6PR0601CA0017.eurprd06.prod.outlook.com (2603:10a6:4:7b::27)
 by PR2PR08MB4811.eurprd08.prod.outlook.com (2603:10a6:101:21::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.25; Wed, 28 Apr
 2021 09:28:48 +0000
Received: from DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:7b:cafe::9a) by DB6PR0601CA0017.outlook.office365.com
 (2603:10a6:4:7b::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend
 Transport; Wed, 28 Apr 2021 09:28:48 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT054.mail.protection.outlook.com (10.152.20.248) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Wed, 28 Apr 2021 09:28:48 +0000
Received: ("Tessian outbound 9bcb3c8d6cb1:v90");
 Wed, 28 Apr 2021 09:28:48 +0000
Received: from b02969fec33d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 57AC1C00-D421-4BD7-84AB-D97C9117B6FA.1; 
 Wed, 28 Apr 2021 09:28:37 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b02969fec33d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 28 Apr 2021 09:28:37 +0000
Received: from PA4PR08MB6253.eurprd08.prod.outlook.com (2603:10a6:102:e4::8)
 by PAXPR08MB6365.eurprd08.prod.outlook.com (2603:10a6:102:156::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Wed, 28 Apr
 2021 09:28:28 +0000
Received: from PA4PR08MB6253.eurprd08.prod.outlook.com
 ([fe80::19f9:d346:b9af:5cad]) by PA4PR08MB6253.eurprd08.prod.outlook.com
 ([fe80::19f9:d346:b9af:5cad%3]) with mapi id 15.20.4065.027; Wed, 28 Apr 2021
 09:28:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7862fab0-ec0b-42ba-8237-2b9d87b15eed
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7M4zHgC/qRDgYyAz+PrKmEWGRjCoFfjajhnzFhc75zM=;
 b=XBfwi3HcP672njKH4z5uSNJSDyWYZoRJE0os7TUq7cdzogmNXo8/ozkbUcZiFhpMeqbF0x1PTKZ/7TeJbo6CSthC6RPHiIycdfGOFhBINN95o0vUeDEcM9/ah+48agGMzMvzD2JKg/XJv/RYRtSGBh+AjyyGnvJdUKpo7rITiOA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AXTRWKjLh5ay9jpENMpv0BAfFia6aho3N3P9lwekT3hg4OL54JGM7HAcVn1xHEhYXGDJcuRRilm2sgcEL8vR3iz5WuW4gytFf7IqfJlDDrexEil5u8ZnVK0rslgHWXoiPlKcJj5zFqNi/jZzwGMQNLr6aJvlhB+061stkcpg9CJK+M5ztmxmuqXeC0jXJHXdE5C5rGMeTn4fWAx2htiQbfMscVEghU/hM+vsrFMM4PGg7yDOTBYJSowARWsLwAAWVPnEpqrYxrE8xs6PIgHN6jS6tNrzyjOAhC7e1KdbWhn86KrBrUPUE+eUzs8LwNi2IT05tA54FbyvcNAx87t2mA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7M4zHgC/qRDgYyAz+PrKmEWGRjCoFfjajhnzFhc75zM=;
 b=Nt9jiAqirSrWM0UsJrDEJmD+uomoxU8nrUbkY+jvPhO+s97tFQ4QMYaxdM3un98rlYEsMiBrVWZ1uSLPiAMrHfRE9DzolPGKv3q/9TB1eV59XJ4qkayPJU2zJuePJdREtlbSZbCSpxZCMAxPx6ZMLIjTw+f5vmgSuxtZ517CBeFNWfg9zqGUI/Ekd1XPAjPNg3OR/uhXT/DOKR27TZO/OZPDKKPeupbwIk6gtHmaJLvK/pmHm+znWq8UYEtFYHyfQODZDehHW88CXdoyTMtHhT8hkHXz2cO0/4tUlnd+oSK/GyTB7W0IRAkgShxVPVpprt2vQnpSgdjMCKOh7GWIbg==
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=7M4zHgC/qRDgYyAz+PrKmEWGRjCoFfjajhnzFhc75zM=;
 b=XBfwi3HcP672njKH4z5uSNJSDyWYZoRJE0os7TUq7cdzogmNXo8/ozkbUcZiFhpMeqbF0x1PTKZ/7TeJbo6CSthC6RPHiIycdfGOFhBINN95o0vUeDEcM9/ah+48agGMzMvzD2JKg/XJv/RYRtSGBh+AjyyGnvJdUKpo7rITiOA=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Wei Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>
Subject: RE: Discussion of Xenheap problems on AArch64
Thread-Topic: Discussion of Xenheap problems on AArch64
Thread-Index: Adc2dyA8lkZGRqbyRiSglHolanVkwQAFhaqAAACgy/AA4CfqgABHcHyAADhcqlA=
Date: Wed, 28 Apr 2021 09:28:28 +0000
Message-ID:
 <PA4PR08MB6253FBC7F5E690DB74F2E11F92409@PA4PR08MB6253.eurprd08.prod.outlook.com>
References:
 <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <cdde98ca-4183-c92b-adca-801330992fc5@xen.org>
 <PA4PR08MB62538BBA256E66A0415F0C7192479@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <f14aa1d6-35d2-a9a3-0672-7f0d3ae3ec89@xen.org>
 <PA4PR08MB62534C4130B59CAA9A8A8BF792419@PA4PR08MB6253.eurprd08.prod.outlook.com>
In-Reply-To:
 <PA4PR08MB62534C4130B59CAA9A8A8BF792419@PA4PR08MB6253.eurprd08.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ts-tracking-id: 837C46BA11711642B4732B2F1D2B72EC.0
x-checkrecipientchecked: true
Authentication-Results-Original: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
x-originating-ip: [203.126.0.111]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 1d547103-b813-4731-ff24-08d90a280735
x-ms-traffictypediagnostic: PAXPR08MB6365:|PR2PR08MB4811:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<PR2PR08MB48118171CCBEDDB35A2F925092409@PR2PR08MB4811.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 jbsQIHjRRJ2TCIER0nt+mH40LtW9NsbPLD1A4bnsMg3s++WNnwTdhzdskxrBO3gYg0IQta9GKTbWf5fB1BIpA/0MvJoJ4hw1UsYKSrtFTFhoZLqVru/dPi5uHua6iQeSRl3r21V2LpiAyJSfeFNJiiBHqVCT4OIb0ZnT8rdVjBBKqd+n3Wf5z+WA5rLCyjJHeC++8uXzetDSRQ3iWMkhvIJhYceWlWtD8xIHfRpurzF6FDNUjzxyb6YXQs3gQc3ybEMEnf5xd8r94KnfYuAFXU0QTkyS+SInvVpSmb/PNVT4EtCshXXHmCAqcHdMJTjkR/UNQ8KIMR3fBwIsA0YNLtp1BuaXFnehu+8u+SHNz5ADWESErTzb3tNFhdDbXIYY5kEGttwgGvakEO1kokT02tze80ZyFI/UafJ7mbLLx+vNdsoN4f3kM0EAB+1pLR4z3TLsoQnTlDj1YDafibKo/JYvjupKlCgjzKGz1FduPepgyhGYjf8sOZhfzApCNrb06KHnIh92uVuy+vx5WfKQBjCa9puLiQtVkAflPnZsX2+2yyy1nrpShB91s62+tDkGooPq6oCTRdF8CIOokRr4CVBgxwHmyipA3fGrCM68T5bZxZyVRexX53LduPQG6IsPFOkynvsU8oynz6u87Huv3xbtQYPdUEiBOGT4QzQy9QPvnS7PLoBicEAo9a+05vs2
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR08MB6253.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(39860400002)(346002)(376002)(366004)(396003)(8936002)(8676002)(76116006)(19627235002)(122000001)(55016002)(66946007)(4326008)(6506007)(478600001)(2906002)(9686003)(38100700002)(66446008)(66476007)(66556008)(83380400001)(64756008)(5660300002)(52536014)(316002)(54906003)(110136005)(7696005)(86362001)(33656002)(26005)(186003)(71200400001)(53546011)(966005);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6365
Original-Authentication-Results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	100af014-2b2d-4bcd-a643-08d90a27fb48
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zvuaI/eizERyrnmeWAfOym3f5I5zEq/qARf/hjbdMcrP2r60ayf/5c8MtOEDVMDuZEpQrEcKC2noSKphZ/+UihbEBDvVAjcNrYBrN67WSTLWHf8PhIhFCHCOFzsnEgJVjeF5X28sJSdGxwCUaoN5Sc3cxWU8LECXMj70hBHll3nshPDNJJWYGym42TT4CCPPDrZpCUhFtsRt+7WzhfGAi4FpbBT2ft10mIPo9rSOjQnY3FscYqrY2/1tlP8WOVK/RMwtVsL1xehohx9ibRyBGu/v2D64MhN58Y7mIYVWNnOHPmV0V+QzUSS1XD7v8TnNJ1wBiZsDTeNOBjIOoAMMjECt51deRiJLXHyPLu1PavSHMJM33MudDcU+opCHH1j5Q/o0yNnVEGGKr8D7MWC7ulJV23jzU3i956H4pZ+jwXeL9LoUYmrwj5/QNOrDDza4WXVYXc94DH1P1FrbLZ8DfLG3wk0YlQuQ57ONM8bhH1+LAXp4V2471smQiYCv/ze0JFWsu0aoMt5u4E4it4SCgJikdt2Tr1hTeLAtya1Ucnw8qelR5R3qt7BtcHj7VxOBWXFXUctgFT0QpaTh6oIiMsokbKlIolAB0xS5QGpp0MlD4KwJYnjWEa2DaA8w8NL3HE+Rymnma/3H3wexnu4QnE1isjVGPg27BCsy/0odRaj8if11xkP3aSTBRkj2gUzfEx0sJAsuuNSsn+icNPood4Jk6Soi844OLVGyax8/CyflF5KaMclhh1OoDYdj/iV2DXYf7gAsi3fpNDccrjjgIg==
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:(4636009)(346002)(376002)(136003)(396003)(39860400002)(46966006)(36840700001)(336012)(54906003)(110136005)(8676002)(4326008)(47076005)(70206006)(26005)(8936002)(86362001)(70586007)(7696005)(83380400001)(316002)(81166007)(36860700001)(19627235002)(186003)(2906002)(34020700004)(6506007)(356005)(33656002)(52536014)(53546011)(966005)(5660300002)(478600001)(9686003)(82740400003)(82310400003)(55016002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 09:28:48.5474
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1d547103-b813-4731-ff24-08d90a280735
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:
	DB5EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR2PR08MB4811

SGkgSnVsaWVuLA0KDQpJJ3ZlIGRvbmUgc29tZSB0ZXN0IGFib3V0IHRoZSBwYXRjaCBzZXJpZXMg
aW4NCmh0dHBzOi8veGVuYml0cy54ZW4ub3JnL2dpdHdlYi8/cD1wZW9wbGUvanVsaWVuZy94ZW4t
dW5zdGFibGUuZ2l0O2E9c2hvcnRsb2c7aD1yZWZzL2hlYWRzL3B0L3JmYy12Mg0KDQpJZiB5b3Ug
aGF2ZSB0aW1lLCBjb3VsZCB5b3UgcGxlYXNlIHRha2UgYSBsb29rIGF0IHRoZSBpbmxpbmUgdGVz
dCByZXN1bHQgYW5kDQpraW5kbHkgaW5mb3JtIGlmIEkgdGVzdGVkIHRoZSBwYXRjaCBzZXJpZXMg
Y29ycmVjdGx5PyBUaGFua3MhDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJv
bTogSGVucnkgV2FuZw0KPiBTZW50OiBUdWVzZGF5LCBBcHJpbCAyNywgMjAyMSAyOjI5IFBNDQo+
IFRvOiBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4ub3JnPjsgc3N0YWJlbGxpbmlAa2VybmVsLm9y
ZzsgeGVuLQ0KPiBkZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBDYzogV2VpIENoZW4gPFdl
aS5DaGVuQGFybS5jb20+OyBQZW5ueSBaaGVuZw0KPiA8UGVubnkuWmhlbmdAYXJtLmNvbT47IEJl
cnRyYW5kIE1hcnF1aXMgPEJlcnRyYW5kLk1hcnF1aXNAYXJtLmNvbT4NCj4gU3ViamVjdDogUkU6
IERpc2N1c3Npb24gb2YgWGVuaGVhcCBwcm9ibGVtcyBvbiBBQXJjaDY0DQo+IA0KPiBIaSBKdWxp
ZW4sDQo+IA0KPiBTb3JyeSBmb3IgdGhlIGxhdGUgcmVwbHksIEkga2luZGEgbWlzc2VkIHRoaXMg
ZW1haWwgc29tZWhvdy4uLi4NCj4gDQo+IFBsZWFzZSBzZWUgbXkgaW5saW5lIHJlcGx5IF5eDQo+
IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogWGVuLWRldmVsIDx4
ZW4tZGV2ZWwtYm91bmNlc0BsaXN0cy54ZW5wcm9qZWN0Lm9yZz4gT24gQmVoYWxmIE9mDQo+ID4g
SnVsaWVuIEdyYWxsDQo+ID4gU2VudDogTW9uZGF5LCBBcHJpbCAyNiwgMjAyMSA0OjIwIEFNDQo+
ID4gVG86IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT47IHNzdGFiZWxsaW5pQGtlcm5l
bC5vcmc7IHhlbi0NCj4gPiBkZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiA+IENjOiBXZWkg
Q2hlbiA8V2VpLkNoZW5AYXJtLmNvbT47IFBlbm55IFpoZW5nDQo+ID4gPFBlbm55LlpoZW5nQGFy
bS5jb20+OyBCZXJ0cmFuZCBNYXJxdWlzDQo+IDxCZXJ0cmFuZC5NYXJxdWlzQGFybS5jb20+DQo+
ID4gU3ViamVjdDogUmU6IERpc2N1c3Npb24gb2YgWGVuaGVhcCBwcm9ibGVtcyBvbiBBQXJjaDY0
DQo+ID4NCj4gPg0KPiA+DQo+ID4gT24gMjEvMDQvMjAyMSAxMDozMiwgSGVucnkgV2FuZyB3cm90
ZToNCj4gPiA+IEhpIEp1bGllbiwNCj4gPg0KPiA+IEhpIEhlbnJ5LA0KPiA+DQo+ID4gPj4gLS0t
LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+PiBGcm9tOiBKdWxpZW4gR3JhbGwgPGp1bGll
bkB4ZW4ub3JnPg0KPiA+ID4+IFNlbnQ6IFdlZG5lc2RheSwgQXByaWwgMjEsIDIwMjEgNTowNCBQ
TQ0KPiA+ID4+IFRvOiBIZW5yeSBXYW5nIDxIZW5yeS5XYW5nQGFybS5jb20+OyBzc3RhYmVsbGlu
aUBrZXJuZWwub3JnOyB4ZW4tDQo+ID4gPj4gZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcNCj4g
PiA+PiBDYzogV2VpIENoZW4gPFdlaS5DaGVuQGFybS5jb20+OyBQZW5ueSBaaGVuZw0KPiA+ID4+
IDxQZW5ueS5aaGVuZ0Bhcm0uY29tPjsgQmVydHJhbmQgTWFycXVpcw0KPiA+IDxCZXJ0cmFuZC5N
YXJxdWlzQGFybS5jb20+DQo+ID4gPj4gU3ViamVjdDogUmU6IERpc2N1c3Npb24gb2YgWGVuaGVh
cCBwcm9ibGVtcyBvbiBBQXJjaDY0DQo+ID4gPj4NCj4gPiA+Pg0KPiA+ID4+DQo+ID4gPj4gT24g
MjEvMDQvMjAyMSAwNzoyOCwgSGVucnkgV2FuZyB3cm90ZToNCj4gPiA+Pj4gSGksDQo+ID4gPj4N
Cj4gPiA+PiBIaSBIZW5yeSwNCj4gPiA+Pg0KPiA+ID4+Pg0KPiA+ID4+PiBXZSBhcmUgdHJ5aW5n
IHRvIGltcGxlbWVudCB0aGUgc3RhdGljIG1lbW9yeSBhbGxvY2F0aW9uIG9uIEFBcmNoNjQuDQo+
ID4gUGFydA0KPiA+ID4+IG9mDQo+ID4gPj4+IHRoaXMgZmVhdHVyZSBpcyB0aGUgcmVzZXJ2ZWQg
aGVhcCBtZW1vcnkgYWxsb2NhdGlvbiwgd2hlcmUgYSBzcGVjaWZpYw0KPiA+IHJhbmdlDQo+ID4g
Pj4gb2YNCj4gPiA+Pj4gbWVtb3J5IGlzIHJlc2VydmVkIG9ubHkgZm9yIGhlYXAuIEluIHRoZSBk
ZXZlbG9wbWVudCBwcm9jZXNzLCB3ZQ0KPiA+IGZvdW5kIGENCj4gPiA+Pj4gcGl0ZmFsbCBpbiBj
dXJyZW50IEFBcmNoNjQgc2V0dXBfeGVuaGVhcF9tYXBwaW5ncygpIGZ1bmN0aW9uLg0KPiA+ID4+
Pg0KPiA+ID4+PiBBY2NvcmRpbmcgdG8gYSBwcmV2aW91cyBkaXNjdXNzaW9uIGluIGNvbW11bml0
eQ0KPiA+ID4+PiBodHRwczovL2xvcmUua2VybmVsLm9yZy94ZW4tZGV2ZWwvMjAxOTAyMTYxMzQ0
NTYuMTA2ODEtMS0NCj4gPiA+PiBwZW5nLmZhbkBueHAuY29tLywNCj4gPiA+Pj4gb24gQUFyY2g2
NCwgYm9vdG1lbSBpcyBpbml0aWFsaXplZCBhZnRlciBzZXR1cF94ZW5oZWFwX21hcHBpbmdzKCks
DQo+ID4gPj4+IHNldHVwX3hlbmhlYXBfbWFwcGluZ3MoKSBtYXkgdHJ5IHRvIGFsbG9jYXRlIG1l
bW9yeSBiZWZvcmUNCj4gbWVtb3J5DQo+ID4gPj4gaGFzIGJlZW4NCj4gPiA+Pj4gaGFuZGVkIG92
ZXIgdG8gdGhlIGJvb3QgYWxsb2NhdG9yLiBJZiB0aGUgcmVzZXJ2ZWQgaGVhcCBtZW1vcnkNCj4g
PiBhbGxvY2F0aW9uDQo+ID4gPj4gaXMNCj4gPiA+Pj4gaW50cm9kdWNlZCwgZWl0aGVyIG9mIGJl
bG93IDIgY2FzZXMgd2lsbCB0cmlnZ2VyIGEgY3Jhc2g6DQo+ID4gPj4+DQo+ID4gPj4+IDEuIElm
IHRoZSByZXNlcnZlZCBoZWFwIG1lbW9yeSBpcyBhdCB0aGUgZW5kIG9mIHRoZSBtZW1vcnkgYmxv
Y2sgbGlzdA0KPiA+IGFuZA0KPiA+ID4+IHRoZQ0KPiA+ID4+PiBnYXAgYmV0d2VlbiByZXNlcnZl
ZCBhbmQgdW5yZXNlcnZlZCBtZW1vcnkgaXMgYmlnZ2VyIHRoYW4gNTEyR0IsDQo+ID4gd2hlbg0K
PiA+ID4+IHdlIHNldHVwDQo+ID4gPj4+IG1hcHBpbmdzIGZyb20gdGhlIGJlZ2lubmluZyBvZiB0
aGUgbWVtb3J5IGJsb2NrIGxpc3QsIHdlIHdpbGwgZ2V0DQo+IE9PTQ0KPiA+ID4+IGNhdXNlZA0K
PiA+ID4+PiBieSBsYWNrIG9mIHBhZ2VzIGluIGJvb3QgYWxsb2NhdG9yLiBUaGlzIGlzIGJlY2F1
c2UgdGhlIG1lbW9yeSB0aGF0IGlzDQo+ID4gPj4gcmVzZXJ2ZWQNCj4gPiA+Pj4gZm9yIGhlYXAg
aGFzIG5vdCBiZWVuIG1hcHBlZCBhbmQgYWRkZWQgdG8gdGhlIGJvb3QgYWxsb2NhdG9yLg0KPiA+
ID4+Pg0KPiA+ID4+PiAyLiBJZiB3ZSBhZGQgdGhlIG1lbW9yeSB0aGF0IGlzIHJlc2VydmVkIGZv
ciBoZWFwIHRvIGJvb3QgYWxsb2NhdG9yIGZpcnN0LA0KPiA+ID4+IGFuZA0KPiA+ID4+PiB0aGVu
IHNldHVwIG1hcHBpbmdzIGZvciBiYW5rcyBpbiB0aGUgbWVtb3J5IGJsb2NrIGxpc3QsIHdlIG1h
eSBnZXQgYQ0KPiA+IHBhZ2UNCj4gPiA+PiB3aGljaA0KPiA+ID4+PiBoYXMgbm90IGJlZW4gc2V0
dXAgbWFwcGluZywgY2F1c2luZyBhIGRhdGEgYWJvcnQuDQo+ID4gPj4NCj4gPiA+PiBUaGVyZSBh
cmUgYSBmZXcgaXNzdWVzIHdpdGggc2V0dXBfeGVuaGVhcF9tYXBwaW5ncygpLiBJIGhhdmUgYmVl
bg0KPiA+ID4+IHJld29ya2luZyB0aGUgY29kZSBvbiBteSBzcGFyZSB0aW1lIGFuZCBzdGFydGVk
IHRvIHVwc3RyZWFtIGJpdHMgb2YgaXQuDQo+ID4gPj4gQSBQb0MgY2FuIGJlIGZvdW5kIGhlcmU6
DQo+ID4gPj4NCj4gPiA+PiBodHRwczovL3hlbmJpdHMueGVuLm9yZy9naXR3ZWIvP3A9cGVvcGxl
L2p1bGllbmcveGVuLQ0KPiA+ID4+IHVuc3RhYmxlLmdpdDthPXNob3J0bG9nO2g9cmVmcy9oZWFk
cy9wdC9kZXYNCj4gPiA+Pg0KPiA+ID4NCj4gPiA+IFJlYWxseSBncmVhdCBuZXdzISBUaGFua3Mg
eW91IHZlcnkgbXVjaCBmb3IgdGhlIGluZm9ybWF0aW9uIGFuZCB5b3VyDQo+ID4gaGFyZA0KPiA+
ID4gd29yayBvbiB0aGUgUG9DIDopIEkgd2lsbCBzdGFydCB0byBnbyB0aHJvdWdoIHlvdXIgUG9D
IGNvZGUgdGhlbi4NCj4gPg0KPiA+IEkgc3BlbnQgc29tZXRpbWVzIHRvZGF5IHRvIGNsZWFuLXVw
IHRoZSBQb0MgYW5kIHNlbnQgYSBzZXJpZXMgb24gdGhlIE1MDQo+ID4gKHNlZSBbMV0pLiBUaGlz
IGhhcyBiZWVuIGxpZ2h0bHkgdGVzdGVkIHNvIGZhci4NCj4gPg0KPiA+IFdvdWxkIHlvdSBiZSBh
YmxlIHRvIGdpdmUgYSB0cnkgYW5kIGxldCBtZSBrbm93IGlmIGl0IGhlbHBzIHlvdXIgcHJvYmxl
bT8NCj4gDQo+IFllcyBvZiBjb3Vyc2UhIEkgd2lsbCBzdGFydCB0byB0ZXN0IHRoaXMgc2VyaWVz
IF5eIFRoYW5rIHlvdSBmb3IgeW91ciB3b3JrIQ0KPiANCg0KVGVzdCBwbGF0Zm9ybTogRlZQX0Jh
c2VfUmV2Q18yeEFFTXZBICh3aXRoIC1DIGJwLmRyYW1fc2l6ZT0xMDI0KQ0KDQpEZWZhdWx0IG1l
bW9yeSBjb25maWd1cmF0aW9uICh3b3JrcyB3ZWxsKToNCm1lbW9yeUA4MDAwMDAwMCB7DQogICAg
ICAgICAgICAgICAgZGV2aWNlX3R5cGUgPSAibWVtb3J5IjsNCiAgICAgICAgICAgICAgICByZWcg
PSA8MHgwMCAweDgwMDAwMDAwIDB4MDAgMHg3ZjAwMDAwMCAweDA4IDB4ODAwMDAwMDAgMHgwMCAw
eDgwMDAwMDAwPjsNCn07DQoNCkFzIHRoZSBsb3dlc3QgcGFydCBvZiBEUkFNIHJhbmdlIG9ubHkg
aGFzIDJHQiBSQU0gDQooaHR0cHM6Ly9kZXZlbG9wZXIuYXJtLmNvbS9kb2N1bWVudGF0aW9uLzEw
MDk2NC8xMTE0L0Jhc2UtUGxhdGZvcm0vQmFzZS0tLW1lbW9yeS9CYXNlLVBsYXRmb3JtLW1lbW9y
eS1tYXApLA0KSSBvbmx5IHRlc3RlZCB0d28gbWVtb3J5IGJhbmtzIHdpdGggYSBiaWcgZ2FwIGNh
c2UuDQoNCjEuIFdpdGhvdXQgcGF0Y2ggKGNvbW1pdCBiZWE2NWEyMTJjMDU4MTUyMDIwM2I2YWQw
ZDA3NjE1NjkzZjQyZjczKQ0KYW5kIHVzZSB0d28gbWVtb3J5IGJhbmtzIHdoaWNoIGhhdmUgYSBi
aWcgZ2FwOg0KDQpNZW1vcnkgbm9kZToNCm1lbW9yeUA4MDAwMDAwMCB7DQogICAgICAgICAgICAg
ICAgZGV2aWNlX3R5cGUgPSAibWVtb3J5IjsNCiAgICAgICAgICAgICAgICByZWcgPSA8MHgwMCAw
eDgwMDAwMDAwIDB4MDAgMHg3ZjAwMDAwMCAweDg4MDAgMHgwMDAwMDAwMCAweDAwIDB4ODAwMDAw
MDA+Ow0KfTsNCg0KTG9nOg0KKFhFTikgICBWVENSX0VMMjogODAwMDAwMDANCihYRU4pICBWVFRC
Ul9FTDI6IDAwMDAwMDAwMDAwMDAwMDANCihYRU4pDQooWEVOKSAgU0NUTFJfRUwyOiAzMGNkMTgz
ZA0KKFhFTikgICAgSENSX0VMMjogMDAwMDAwMDAwMDAwMDAzOA0KKFhFTikgIFRUQlIwX0VMMjog
MDAwMDAwMDA4NDEzZDAwMA0KKFhFTikNCihYRU4pICAgIEVTUl9FTDI6IDk2MDAwMDQxDQooWEVO
KSAgSFBGQVJfRUwyOiAwMDAwMDAwMDAwMDAwMDAwDQooWEVOKSAgICBGQVJfRUwyOiAwMDAwODAx
MGMzZmZmMDAwDQooWEVOKSBYZW4gY2FsbCB0cmFjZToNCihYRU4pICAgIFs8MDAwMDAwMDAwMDI1
YzdhMD5dIGNsZWFyX3BhZ2UrMHgxMC8weDJjIChQQykNCihYRU4pICAgIFs8MDAwMDAwMDAwMDJj
YWEzMD5dIHNldHVwX2ZyYW1ldGFibGVfbWFwcGluZ3MrMHgxYWMvMHgyZTAgKExSKQ0KKFhFTikg
ICAgWzwwMDAwMDAwMDAwMmNiZjM0Pl0gc3RhcnRfeGVuKzB4MzQ4LzB4YmM0DQooWEVOKSAgICBb
PDAwMDAwMDAwMDAyMDAxYzA+XSBhcm02NC9oZWFkLm8jcHJpbWFyeV9zd2l0Y2hlZCsweDEwLzB4
MzANCihYRU4pDQooWEVOKQ0KKFhFTikgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKg0KKFhFTikgUGFuaWMgb24gQ1BVIDA6DQooWEVOKSBDUFUwOiBVbmV4cGVjdGVkIFRy
YXA6IERhdGEgQWJvcnQNCihYRU4pICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioNCg0KMi4gQXBwbHkgcGF0Y2ggYW5kIHVzZSB0d28gbWVtb3J5IGJhbmtzIHdoaWNoIGhh
dmUgYSBiaWcgZ2FwOg0KTWVtb3J5IG5vZGU6DQptZW1vcnlAODAwMDAwMDAgew0KICAgICAgICAg
ICAgICAgIGRldmljZV90eXBlID0gIm1lbW9yeSI7DQogICAgICAgICAgICAgICAgcmVnID0gPDB4
MDAgMHg4MDAwMDAwMCAweDAwIDB4N2YwMDAwMDAgMHg4ODAwIDB4MDAwMDAwMDAgMHgwMCAweDgw
MDAwMDAwPjsNCn07DQoNCkxvZzoNCihYRU4pICAgVlRDUl9FTDI6IDgwMDAwMDAwDQooWEVOKSAg
VlRUQlJfRUwyOiAwMDAwMDAwMDAwMDAwMDAwDQooWEVOKQ0KKFhFTikgIFNDVExSX0VMMjogMzBj
ZDE4M2QNCihYRU4pICAgIEhDUl9FTDI6IDAwMDAwMDAwMDAwMDAwMzgNCihYRU4pICBUVEJSMF9F
TDI6IDAwMDAwMDAwODQxM2MwMDANCihYRU4pDQooWEVOKSAgICBFU1JfRUwyOiA5NjAwMDA0Mw0K
KFhFTikgIEhQRkFSX0VMMjogMDAwMDAwMDAwMDAwMDAwMA0KKFhFTikgICAgRkFSX0VMMjogMDAw
MDAwMDAwMDQ0MzAwMA0KKFhFTikNCihYRU4pIFhlbiBjYWxsIHRyYWNlOg0KKFhFTikgICAgWzww
MDAwMDAwMDAwMjVjN2EwPl0gY2xlYXJfcGFnZSsweDEwLzB4MmMgKFBDKQ0KKFhFTikgICAgWzww
MDAwMDAwMDAwMjZjZjljPl0gbW0uYyN4ZW5fcHRfdXBkYXRlKzB4MWI4LzB4N2IwIChMUikNCihY
RU4pICAgIFs8MDAwMDAwMDAwMDJjYTI5OD5dIHNldHVwX3hlbmhlYXBfbWFwcGluZ3MrMHhiNC8w
eDEzNA0KKFhFTikgICAgWzwwMDAwMDAwMDAwMmNjMWIwPl0gc3RhcnRfeGVuKzB4YjZjLzB4YmNj
DQooWEVOKSAgICBbPDAwMDAwMDAwMDAyMDAxYzA+XSBhcm02NC9oZWFkLm8jcHJpbWFyeV9zd2l0
Y2hlZCsweDEwLzB4MzANCihYRU4pDQooWEVOKQ0KKFhFTikgKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKg0KKFhFTikgUGFuaWMgb24gQ1BVIDA6DQooWEVOKSBDUFUwOiBV
bmV4cGVjdGVkIFRyYXA6IERhdGEgQWJvcnQNCihYRU4pICoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioNCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0KPiA+DQo+ID4gRm9y
IGNvbnZlbmllbmNlLCBJIGhhdmUgcHVzaGVkIGEgYnJhbmNoIHdpdGggdGhlIHNlcmllcyBhcHBs
aWVkIGhlcmU6DQo+ID4NCj4gPiBodHRwczovL3hlbmJpdHMueGVuLm9yZy9naXR3ZWIvP3A9cGVv
cGxlL2p1bGllbmcveGVuLQ0KPiA+IHVuc3RhYmxlLmdpdDthPXNob3J0bG9nO2g9cmVmcy9oZWFk
cy9wdC9yZmMtdjINCj4gPg0KPiANCj4gR3JlYXQsIHRoYW5rcyENCj4gDQo+ID4gQ2hlZXJzLA0K
PiA+DQo+ID4gWzFdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL3hlbi1kZXZlbC8yMDIxMDQyNTIw
MTMxOC4xNTQ0Ny0xLQ0KPiA+IGp1bGllbkB4ZW4ub3JnLw0KPiA+DQo+ID4gLS0NCj4gPiBKdWxp
ZW4gR3JhbGwNCg0K


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:41:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:41:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119141.225509 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbghL-0002j8-El; Wed, 28 Apr 2021 09:41:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119141.225509; Wed, 28 Apr 2021 09: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 1lbghL-0002j1-Bv; Wed, 28 Apr 2021 09:41:35 +0000
Received: by outflank-mailman (input) for mailman id 119141;
 Wed, 28 Apr 2021 09:41:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbghK-0002iw-3Z
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:41:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2d246316-0e2a-47bc-ac4b-16561774e741;
 Wed, 28 Apr 2021 09:41:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C6171AF9A;
 Wed, 28 Apr 2021 09:41: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: 2d246316-0e2a-47bc-ac4b-16561774e741
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619602891; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=60GGbupj7K9ZuisOkyzm2T9O0yuwmOZmdJkkt4K4c/c=;
	b=OTE3vumO/a3Ebi9+rCrZMIQbH4QbxwS+LclO0LYX/xmo22aZMdr3zc+bewjL6WfnQdnFqp
	ex/QPKiaN+odiVIwgj4GMarEGT4ZZW6g8HtBMwbIShU9CDZJ7uyp7ParorUvtECimXm4MN
	ZrDEVQIJKJBNJd9VhtlMrLcwNX+sQ8E=
Subject: Re: [PATCH 2/7] x86: introduce ioremap_wc()
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: <6d6da76c-ccc8-afa2-bd06-5ae132c354f2@suse.com>
 <0e1d3e9e-ed29-d7e8-e4fc-e48a0454faa4@suse.com>
 <8cb67c2c-d5f9-a72b-d0d3-9289f6c9b512@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5a2c3037-67b3-7e6e-9080-1a7a97a14ffb@suse.com>
Date: Wed, 28 Apr 2021 11:41:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <8cb67c2c-d5f9-a72b-d0d3-9289f6c9b512@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 19:13, Andrew Cooper wrote:
> On 27/04/2021 13:54, Jan Beulich wrote:
>> In order for a to-be-introduced ERMS form of memcpy() to not regress
>> boot performance on certain systems when video output is active, we
>> first need to arrange for avoiding further dependency on firmware
>> setting up MTRRs in a way we can actually further modify. On many
>> systems, due to the continuously growing amounts of installed memory,
>> MTRRs get configured with at least one huge WB range, and with MMIO
>> ranges below 4Gb then forced to UC via overlapping MTRRs. mtrr_add(), as
>> it is today, can't deal with such a setup. Hence on such systems we
>> presently leave the frame buffer mapped UC, leading to significantly
>> reduced performance when using REP STOSB / REP MOVSB.
>>
>> On post-PentiumII hardware (i.e. any that's capable of running 64-bit
>> code), an effective memory type of WC can be achieved without MTRRs, by
>> simply referencing the respective PAT entry from the PTEs. While this
>> will leave the switch to ERMS forms of memset() and memcpy() with
>> largely unchanged performance, the change here on its own improves
>> performance on affected systems quite significantly: Measuring just the
>> individual affected memcpy() invocations yielded a speedup by a factor
>> of over 250 on my initial (Skylake) test system. memset() isn't getting
>> improved by as much there, but still by a factor of about 20.
>>
>> While adding {__,}PAGE_HYPERVISOR_WC, also add {__,}PAGE_HYPERVISOR_WT
>> to, at the very least, make clear what PTE flags this memory type uses.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
> 
> Seeing as MTRRs are full of firmware issues, shouldn't we also
> cross-check that the vram is marked WC, or we'll still fall into bad
> perf from combining down to UC.  (Obviously follow-up work if so.)

VRAM generally isn't marked WC nowadays, at least from my observations.
And it doesn't need to be - there's no "combining down to UC" when the
WC PAT entry is chosen by the PTE. Plus firmware doing so may actually
be counter-productive, as the VRAM address range may easily move when
BARs get re-assigned by an OS.

>> TBD: Both callers are __init, so in principle ioremap_wc() could be so,
>>      too, at least for the time being.
> 
> I don't see us making use this at runtime.  Uses of WC are few and far
> between.

Okay, will mark the function __init then.

>> TBD: If the VGA range is WC in the fixed range MTRRs, reusing the low
>>      1st Mb mapping (like ioremap() does) would be an option.
> 
> It might be fine to do that unconditionally.  The low VRAM has had known
> settings for 2 decades now.
> 
> That said, the low 1MB does use UC- mappings, which means we're entirely
> dependent on MTRRs specifying WC for sensible performance.

The two parts of your reply look to contradict one another: I've been
suggesting to use the low-Mb mapping precisely only when the fixed
range MTRRs covering the range are all saying WC.

>> --- a/xen/arch/x86/mm.c
>> +++ b/xen/arch/x86/mm.c
>> @@ -5883,6 +5883,20 @@ void __iomem *ioremap(paddr_t pa, size_t
>>      return (void __force __iomem *)va;
>>  }
>>  
>> +void __iomem *ioremap_wc(paddr_t pa, size_t len)
>> +{
>> +    mfn_t mfn = _mfn(PFN_DOWN(pa));
>> +    unsigned int offs = pa & (PAGE_SIZE - 1);
>> +    unsigned int nr = PFN_UP(offs + len);
>> +    void *va;
>> +
>> +    WARN_ON(page_is_ram_type(mfn_x(mfn), RAM_TYPE_CONVENTIONAL));
>> +
>> +    va = __vmap(&mfn, nr, 1, 1, PAGE_HYPERVISOR_WC, VMAP_DEFAULT);
> 
> This doesn't look correct.  granularity and nr are passed the wrong way
> around, but maybe that's related to the fact that only a single mfn is
> passed.  I'm confused.

It's identical to ioremap(). And yes, it's this way because of there
just being a single MFN getting passed in here. If I flipped the 2nd
and 3rd arguments, nr calls to map_pages_to_xen() would result
instead of just one.

> Also, several truncations will occur for a framebuffer > 4G, both with
> calculations here, and the types of __vmap()'s parameters.

Truncations may occur, indeed, but for frame buffers >= 16Tb. I
didn't think I needed to worry about this more here than ioremap()
does.

>> @@ -179,8 +179,7 @@ void __init vesa_mtrr_init(void)
>>  
>>  static void lfb_flush(void)
>>  {
>> -    if ( vesa_mtrr == 3 )
>> -        __asm__ __volatile__ ("sfence" : : : "memory");
>> +    __asm__ __volatile__ ("sfence" : : : "memory");
> 
> wmb(), seeing as that is the operation we mean here?

Not sure, to be honest. It's not been all this long ago that
smp_wmb() and wmb() were the same. And it's also not a write
barrier we mean here, but specifically SFENCE (which merely
happens to be the insn of choice for implementing wmb()). We
don't care about having a full-fledged write barrier here -
other writes getting reordered would in principle be fine.

>> --- a/xen/drivers/video/vga.c
>> +++ b/xen/drivers/video/vga.c
>> @@ -79,7 +79,7 @@ void __init video_init(void)
>>      {
>>      case XEN_VGATYPE_TEXT_MODE_3:
>>          if ( page_is_ram_type(paddr_to_pfn(0xB8000), RAM_TYPE_CONVENTIONAL) ||
>> -             ((video = ioremap(0xB8000, 0x8000)) == NULL) )
>> +             ((video = ioremap_wc(0xB8000, 0x8000)) == NULL) )
>>              return;
>>          outw(0x200a, 0x3d4); /* disable cursor */
>>          columns = vga_console_info.u.text_mode_3.columns;
>> @@ -164,7 +164,11 @@ void __init video_endboot(void)
>>      {
>>      case XEN_VGATYPE_TEXT_MODE_3:
>>          if ( !vgacon_keep )
>> +        {
>>              memset(video, 0, columns * lines * 2);
>> +            iounmap(video);
>> +            video = ZERO_BLOCK_PTR;
>> +        }
>>          break;
> 
> Shouldn't this hunk be in patch 5?

Only if ioremap_wc() unconditionally re-used the low-Mb mapping;
I don't want to introduce another leak, paralleling the one which
patch 5 addresses. And as per above I see ioremap_wc() use __va()
at best conditionally.

>> --- a/xen/include/asm-x86/mm.h
>> +++ b/xen/include/asm-x86/mm.h
>> @@ -615,6 +615,8 @@ void destroy_perdomain_mapping(struct do
>>                                 unsigned int nr);
>>  void free_perdomain_mappings(struct domain *);
>>  
>> +void __iomem *ioremap_wc(paddr_t, size_t);
> 
> I'm not sure we want to add a second prototype.  ARM has ioremap_wc()
> too, and we absolutely don't want them to get out of sync, and we have
> two new architectures on the horizon.
> 
> Perhaps a new xen/ioremap.h which includes asm/ioremap.h  (although
> thinking forward to encrypted RAM, we might want something which can
> also encompass the memremap*() variants.)
> 
> ARM can #define ioremap_wc ioremap_wc and provide their inline wrapper. 
> x86 can fall back to the common prototype.  Other architectures can do
> whatever is best for them.

I'm afraid I don't see how what you suggest would not lead to
duplicate prototypes. Arm wanting the function be an inline
one precludes exposing the extern declaration there. Hence
there will still be a risk of things going out of sync. In
fact I first had the declaration next to ioremap()'s, until I
ran into the build issue on Arm.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:50:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:50:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119151.225522 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgpY-0003KV-9O; Wed, 28 Apr 2021 09:50:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119151.225522; Wed, 28 Apr 2021 09: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 1lbgpY-0003Js-6K; Wed, 28 Apr 2021 09:50:04 +0000
Received: by outflank-mailman (input) for mailman id 119151;
 Wed, 28 Apr 2021 09:50:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbgpW-00037t-ES
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:50:02 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8e74ee31-f046-4686-b230-d063dbf4667f;
 Wed, 28 Apr 2021 09:50:01 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 994E7B009;
 Wed, 28 Apr 2021 09:50: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: 8e74ee31-f046-4686-b230-d063dbf4667f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619603400; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=rgjffVT7rN9FXahfIWa5+HxfMwWfZyhCzfD9lwf9tT4=;
	b=U7T2cRB/e1AL0/hnFIPB8MYqvmOXvYsXzE10pEotpEWodfcXB/VISFWkyzF5f3nFWqueau
	pIP+E8dKWOl9SMBeiB22R9FGB/FbsQLeR3Zef/9zAfXK1EN8u7dXimx4RnYeFSJ4R6U9XF
	z8q1LpxXZH9pEj2094x4Yr2fp2TTrb4=
Subject: Re: obtain a list of granttable PFNs from toolstack
To: Olaf Hering <olaf@aepfle.de>
References: <20210428095049.14a8272b.olaf@aepfle.de>
Cc: xen-devel@lists.xenproject.org
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <8427397f-0953-94df-04f6-8dfe2a4ceee8@suse.com>
Date: Wed, 28 Apr 2021 11:49:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210428095049.14a8272b.olaf@aepfle.de>
Content-Type: text/plain; charset=windows-1252
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28.04.2021 09:50, Olaf Hering wrote:
> Is there an API to get a list of PFNs which are currently being active in the grant table for a given domid?

Do you really mean PFNs? For PV, the P <=> M relationship is
guest-managed, and hence any value returned here would be stale by
the time the caller gets to use it, even if the grant table itself
didn't change.

Also, what do you mean by "active in the grant table"? A grant
present in the table referencing said page? Or a page comprising
the grant table? In the latter case, the acquire-resource interface
would allow you to obtain the MFNs from a PV guest; a HVM caller
would specify GFNs as input, for the MFNs to get (foreign-)mapped
at instead.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:50:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:50:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119155.225534 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgq7-0003kU-JY; Wed, 28 Apr 2021 09:50:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119155.225534; Wed, 28 Apr 2021 09:50: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 1lbgq7-0003kM-GF; Wed, 28 Apr 2021 09:50:39 +0000
Received: by outflank-mailman (input) for mailman id 119155;
 Wed, 28 Apr 2021 09:50:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aavt=JZ=arm.com=steven.price@srs-us1.protection.inumbo.net>)
 id 1lbgq5-0003kE-Li
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:50:37 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id d8d00590-54e5-48c2-a2d0-7628a001574b;
 Wed, 28 Apr 2021 09:50:36 +0000 (UTC)
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 EC27EED1;
 Wed, 28 Apr 2021 02:50:35 -0700 (PDT)
Received: from [192.168.1.179] (unknown [172.31.20.19])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 47C643F70D;
 Wed, 28 Apr 2021 02:50: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: d8d00590-54e5-48c2-a2d0-7628a001574b
Subject: Re: [PATCH v5 05/16] swiotlb: Add restricted DMA pool initialization
To: Claire Chang <tientzu@chromium.org>
Cc: Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>,
 Frank Rowand <frowand.list@gmail.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, boris.ostrovsky@oracle.com,
 jgross@suse.com, Christoph Hellwig <hch@lst.de>,
 Marek Szyprowski <m.szyprowski@samsung.com>, benh@kernel.crashing.org,
 paulus@samba.org,
 "list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
 sstabellini@kernel.org, Robin Murphy <robin.murphy@arm.com>,
 grant.likely@arm.com, xypron.glpk@gmx.de, Thierry Reding
 <treding@nvidia.com>, mingo@kernel.org, bauerman@linux.ibm.com,
 peterz@infradead.org, Greg KH <gregkh@linuxfoundation.org>,
 Saravana Kannan <saravanak@google.com>,
 "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
 heikki.krogerus@linux.intel.com,
 Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
 Randy Dunlap <rdunlap@infradead.org>, Dan Williams
 <dan.j.williams@intel.com>, Bartosz Golaszewski <bgolaszewski@baylibre.com>,
 linux-devicetree <devicetree@vger.kernel.org>,
 lkml <linux-kernel@vger.kernel.org>, linuxppc-dev@lists.ozlabs.org,
 xen-devel@lists.xenproject.org, Nicolas Boichat <drinkcat@chromium.org>,
 Jim Quinlan <james.quinlan@broadcom.com>, Tomasz Figa <tfiga@chromium.org>,
 bskeggs@redhat.com, Bjorn Helgaas <bhelgaas@google.com>,
 chris@chris-wilson.co.uk, Daniel Vetter <daniel@ffwll.ch>, airlied@linux.ie,
 dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
 jani.nikula@linux.intel.com, Jianxiong Gao <jxgao@google.com>,
 joonas.lahtinen@linux.intel.com, linux-pci@vger.kernel.org,
 maarten.lankhorst@linux.intel.com, matthew.auld@intel.com,
 nouveau@lists.freedesktop.org, rodrigo.vivi@intel.com,
 thomas.hellstrom@linux.intel.com
References: <20210422081508.3942748-1-tientzu@chromium.org>
 <20210422081508.3942748-6-tientzu@chromium.org>
 <c9abca62-328d-d0d6-a8a6-a67475171f92@arm.com>
 <CALiNf2_tffc65PhLxCr3-+gmVYKGO2HjYiJVkBNa5U5HYdi9pg@mail.gmail.com>
From: Steven Price <steven.price@arm.com>
Message-ID: <64137d13-cfa2-5f72-94c1-19b367489c78@arm.com>
Date: Wed, 28 Apr 2021 10:50:24 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.1
MIME-Version: 1.0
In-Reply-To: <CALiNf2_tffc65PhLxCr3-+gmVYKGO2HjYiJVkBNa5U5HYdi9pg@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

On 26/04/2021 17:37, Claire Chang wrote:
> On Fri, Apr 23, 2021 at 7:34 PM Steven Price <steven.price@arm.com> wrote:
[...]
>>
>> But even then if it's not and we have the situation where debugfs==NULL
>> then the debugfs_create_dir() here will cause a subsequent attempt in
>> swiotlb_create_debugfs() to fail (directory already exists) leading to
>> mem->debugfs being assigned an error value. I suspect the creation of
>> the debugfs directory needs to be separated from io_tlb_default_mem
>> being set.
> 
> debugfs creation should move into the if (!mem) {...} above to avoid
> duplication.
> I think having a separated struct dentry pointer for the default
> debugfs should be enough?
> 
> if (!debugfs)
>      debugfs = debugfs_create_dir("swiotlb", NULL);
> swiotlb_create_debugfs(mem, rmem->name, debugfs);

Yes that looks like a good solution to me. Although I'd name the 
variable something a bit more descriptive than just "debugfs" e.g. 
"debugfs_dir" or "debugfs_root".

Thanks,

Steve


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:52:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:52:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119159.225546 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgrX-0003u5-UR; Wed, 28 Apr 2021 09:52:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119159.225546; Wed, 28 Apr 2021 09: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 1lbgrX-0003ty-RD; Wed, 28 Apr 2021 09:52:07 +0000
Received: by outflank-mailman (input) for mailman id 119159;
 Wed, 28 Apr 2021 09:52:06 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbgrW-0003tr-Cw
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 09:52:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bf4fffd1-0243-43b4-973b-ae8db2d7cda4;
 Wed, 28 Apr 2021 09:52:05 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D10FFB007;
 Wed, 28 Apr 2021 09:52: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: bf4fffd1-0243-43b4-973b-ae8db2d7cda4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619603524; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=NSaixhNho0gXUt4ASqiIgTLsOmmMP8aSVtHmnkBVMGI=;
	b=UR9kkPz+1pplOpoId8EMo53BEBz7zkvxNJFhH25kUSAy+Iotkh2J7RzYBmXFOPfwnE5GWw
	pLrXPucIqW6YZPX+qbYO1OKmZkW5D2jwTP+coYYDVaMZPlVN/OUy756Ozhfp9qNHF0R8VF
	JM0bTFXY4NGU/urNRbX8LM/i6Q6diSk=
Subject: Re: [xen-unstable test] 161480: regressions - FAIL
To: osstest service owner <osstest-admin@xenproject.org>,
 xen-devel@lists.xenproject.org
References: <osstest-161480-mainreport@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <8504719d-09ca-d1ff-275b-b67efb0c0689@suse.com>
Date: Wed, 28 Apr 2021 11:52:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <osstest-161480-mainreport@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28.04.2021 00:58, osstest service owner wrote:
> flight 161480 xen-unstable real [real]
> http://logs.test-lab.xenproject.org/osstest/logs/161480/
> 
> Regressions :-(
> 
> Tests which did not succeed and are blocking,
> including tests which could not be run:
>  build-arm64                   6 xen-build                fail REGR. vs. 161470

Interesting:

cc: internal compiler error: Segmentation fault signal terminated program cc1
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-8/README.Bugs> for instructions.
make: *** [/home/osstest/build.161480.build-arm64/xen/tools/qemu-xen-dir/rules.mak:69: util/qemu-sockets.o] Error 4

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 09:59:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 09:59:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119166.225557 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgyh-000498-Mf; Wed, 28 Apr 2021 09:59:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119166.225557; Wed, 28 Apr 2021 09:59:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbgyh-000491-Jb; Wed, 28 Apr 2021 09:59:31 +0000
Received: by outflank-mailman (input) for mailman id 119166;
 Wed, 28 Apr 2021 09:59: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 1lbgyg-00048o-Ll; Wed, 28 Apr 2021 09:59: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 1lbgyg-0002V5-Dd; Wed, 28 Apr 2021 09:59: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 1lbgyg-0004in-1F; Wed, 28 Apr 2021 09:59:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbgyg-0000lI-0l; Wed, 28 Apr 2021 09:59: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=ENQz2cl4j+JD7MjieK67i2HCZC49BT6bZxKbqVe40ys=; b=tViAdRhPB6K7OWklHQXsN8m1w9
	Jy3F0EFiV3aaJxpjUxD0wJB3TrFxOSK/6Y1EnpM5jN3ftiweI/NbNzv8ZiGp1B7g7AIXVcLAH1AX/
	ld5/gZ3Qpo9CFKJz/pHQjIiVSRp5AGp2MSUEAvqKY/ihqv32pMwqUgnyGd/2u9Fgissw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161502-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-coverity test] 161502: all pass - PUSHED
X-Osstest-Versions-This:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
X-Osstest-Versions-That:
    xen=bea65a212c0581520203b6ad0d07615693f42f73
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 09:59:30 +0000

flight 161502 xen-unstable-coverity real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161502/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xen                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
baseline version:
 xen                  bea65a212c0581520203b6ad0d07615693f42f73

Last test of basis   161447  2021-04-25 09:19:30 Z    3 days
Testing same since   161502  2021-04-28 09:18:31 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Chao Gao <chao.gao@intel.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Tim Deegan <tim@xen.org>

jobs:
 coverity-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/xen.git
   bea65a212c..972ba1d1d4  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3 -> coverity-tested/smoke


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 10:14:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 10:14:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119184.225573 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbhDC-0005w3-0e; Wed, 28 Apr 2021 10:14:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119184.225573; Wed, 28 Apr 2021 10: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 1lbhDB-0005vw-TU; Wed, 28 Apr 2021 10:14:29 +0000
Received: by outflank-mailman (input) for mailman id 119184;
 Wed, 28 Apr 2021 10:14:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lbhDA-0005vr-TE
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 10:14:29 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lbhD8-0002qo-IG; Wed, 28 Apr 2021 10:14:26 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lbhD8-0006hL-2G; Wed, 28 Apr 2021 10: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Mime-Version:Content-Type:
	References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID;
	bh=WwQ0JBul44XZzb6di5GoXeN52HnDI99XCMYHc3FiYss=; b=EQZy+fxzmejz2bJMAQevBPOLpV
	6eCKiiehHnInTM+wjfgKkozQkAwxn8YECMrbABq6YzOjAr+uAip/YzuJkLn1tOAW93U6LiJLc1oBA
	rgFSPV+Z1dvrJCdL4PUWfo7P0+Fsf2wfStOf/S9/iVuuq/PYHUVmsmRmcVf9k5l++z5s=;
Message-ID: <5562d4e4df8a6efc4f74486d24a85339c9803b6f.camel@xen.org>
Subject: Re: [PATCH 00/16] Remove the direct map
From: Hongyan Xia <hx242@xen.org>
To: Wei Liu <wl@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, julien@xen.org, Andrew
 Cooper <andrew.cooper3@citrix.com>, Ian Jackson
 <ian.jackson@eu.citrix.com>, George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>,  xen-devel@lists.xenproject.org, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>,  Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>
Date: Wed, 28 Apr 2021 11:14:21 +0100
In-Reply-To: <20200602090851.hxfxwoiflip6kcym@liuwe-devbox-debian-v2.j3c5onc20sse1dnehy4noqpfcg.zx.internal.cloudapp.net>
References: <cover.1588278317.git.hongyxia@amazon.com>
	 <20200501120715.hjak2gjp7ialwfq5@liuwe-devbox-debian-v2.j3c5onc20sse1dnehy4noqpfcg.zx.internal.cloudapp.net>
	 <689a7c860a8a551e3b6009b16590e812dbf21055.camel@xen.org>
	 <20200602090851.hxfxwoiflip6kcym@liuwe-devbox-debian-v2.j3c5onc20sse1dnehy4noqpfcg.zx.internal.cloudapp.net>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit

On Tue, 2020-06-02 at 09:08 +0000, Wei Liu wrote:
> On Fri, May 01, 2020 at 02:53:08PM +0100, Hongyan Xia wrote:

[...]

> Not sure about hiding EPT. I will leave this question to Jan and
> Andrew...

Quick update on performance numbers. I have seen noticeable performance
drop if we need to map and unmap EPT. This translates to up to 10%
degredation in networking and database applications.

With EPT always mapped (not considering it as secrets), I have not seen
any noticeable performance drop in any real-world applications. The
only performance drop is from a micro-benchmark that programs HPET in a
tight loop (abusing MMIO page table walks), and the worst case is
around 10% to 15%.

Note that all above results are based on the mapcache rewrite patch

4058e92ce21627731c49b588a95809dc0affd83a.1581015491.git.hongyxia@amazon.com
to fix the mapcache lock contention first.

Hongyan



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 10:17:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 10:17:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119188.225585 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbhFy-000669-FW; Wed, 28 Apr 2021 10:17:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119188.225585; Wed, 28 Apr 2021 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 1lbhFy-000662-Bl; Wed, 28 Apr 2021 10:17:22 +0000
Received: by outflank-mailman (input) for mailman id 119188;
 Wed, 28 Apr 2021 10:17:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vSVs=JZ=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lbhFx-00065x-6h
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 10:17:21 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::9])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0852dfb0-729d-48c1-b6e8-40d22f910c25;
 Wed, 28 Apr 2021 10:17:17 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.25.2 AUTH)
 with ESMTPSA id D0155dx3SAHG4dp
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Wed, 28 Apr 2021 12:17: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: 0852dfb0-729d-48c1-b6e8-40d22f910c25
ARC-Seal: i=1; a=rsa-sha256; t=1619605036; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=XNFyyNzH2irl+uH57pno4GXiTsiAvEVqH6/GzXsTcI+oV+s32F5KCEBkgpqVFoW8Xp
    Mwx5kQshkq1B4HhkSLUcrauGMVkPpKCXjcALYbgjDqoJlLQvmE8My7lb7+hVEKhC6MOj
    QtPV41ku62yCihDKWvLJzDNJqPLXkk9prsEUfkVP0tn9ZQkXpz8wRCCYpEu7qlh0zBao
    HWd3nI+ehOvBbNqqpe8HjwEiVi2IH0NNXEZyeMrRI6zAfp8U13W5TX4PzdrcWWvjGUZ5
    gQFdCWAbTfXRzIhaPtwfwt+ge7R0qUwcU8O3QjRi20ZkkabYg42msGAl3nPpU57IbOXi
    9sGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619605036;
    s=strato-dkim-0002; d=strato.com;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=N5nQUN5MWj1mH/UBfQFfLyS6eJoSa6tcFa9x8CMfRYE=;
    b=BzeNBJZRFMYHiQLWQ9Yw2jpRIdxvX0fzA+sN1I76ujVtZKVotZ19BK9DpiyI6K8yaq
    yqdbtUEgW3N3a42kaYAruvX1G7K5zHpi2lzlHagcOc+Z5qJ3ARvw3fOEd6ySIuWwE1JI
    frm8N0zr36+i94wpkMEd45/M1g4yJUE0lHcIUdl0FjDVVT4Oyzhn+7Rhc5solDBh7yw4
    l5ov2/l+irfoPGeHb45fbllfCNjGIhRKGReTzINhTQA7i0Q6+zCyDIyYvkKKKzppqfVM
    WHnAjHbG4PIfo7u+lSxa1sAk5m1+i0kMDYH3t7UBtXjgSop0FqmTtj7zc3mrQzVZSmQF
    Z7rg==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619605036;
    s=strato-dkim-0002; d=aepfle.de;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=N5nQUN5MWj1mH/UBfQFfLyS6eJoSa6tcFa9x8CMfRYE=;
    b=HRVCwJacUAKl2tptrET5T0MP2k0tWOjXj6fR9ACCq6fKM0IE8bqK9K9PRsTKEh3tFw
    +C55xngP1Qs6oraYFElxgrTH7hFY0PekV3q035/hUNTQe7un66QlcroLVMqPtPSyDTQh
    Li7YiLIPvngXNLcTZn4+Fh5QtEr804R44dBCkd0kr9XKEEBLkRxXmMcs3mlkUiOx50tg
    oJ+2XyDCMSwktRcs0rRTuVYm9/DNBkAQfYem3wDD76eZUpgmAuCL1th6/Tjq/z1EzC0N
    K1GRHkW6JY0eprdGUtEng7qRajQ7CdDcaFprljPyPEH7JeWiESaj92WaNYgX5yV2HBju
    QBJg==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisEsVR6GbU3svGYLiH9zFD0wpO7hNb2D/K88Gfjs"
X-RZG-CLASS-ID: mo00
Date: Wed, 28 Apr 2021 12:17:01 +0200
From: Olaf Hering <olaf@aepfle.de>
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xenproject.org
Subject: Re: obtain a list of granttable PFNs from toolstack
Message-ID: <20210428121701.3272b369.olaf@aepfle.de>
In-Reply-To: <8427397f-0953-94df-04f6-8dfe2a4ceee8@suse.com>
References: <20210428095049.14a8272b.olaf@aepfle.de>
	<8427397f-0953-94df-04f6-8dfe2a4ceee8@suse.com>
X-Mailer: Claws Mail 2021.04.21 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="Sig_/ch0cKgUjIGd9Bu1D+6w_rjf";
 protocol="application/pgp-signature"; micalg=pgp-sha256

--Sig_/ch0cKgUjIGd9Bu1D+6w_rjf
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Am Wed, 28 Apr 2021 11:49:59 +0200
schrieb Jan Beulich <jbeulich@suse.com>:

> On 28.04.2021 09:50, Olaf Hering wrote:
> > Is there an API to get a list of PFNs which are currently being active =
in the grant table for a given domid? =20
> Do you really mean PFNs?

The save/restore code uses the term "pfn" to refer to page indices from the=
 domU point of view. Since I usually just follow the HVM code paths, the te=
rm might indeed be incorrect for PV.

> Also, what do you mean by "active in the grant table"?

I'm not familiar with grants. My guess is, a domU pro-actively shares some =
of its pages with someone else. These shared pages have to be tracked somew=
here, and I guess Xen has to establish proper access permissions for such p=
ages. I guess the "grant table" is the place where things are collected.

Looking through xen/grant_table.h, I see no API. But that might be the wron=
g place anyway.

Olaf

--Sig_/ch0cKgUjIGd9Bu1D+6w_rjf
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmCJNh4ACgkQ86SN7mm1
DoCI8BAAiVzOkHcsRNfCl16SguUIq2C/kkeUZUGLBYWnp7zMHnj5f6zCi1LUV/Vi
vFzYMUfBGF7IqlK+6DgjVsPiEFARg5y1DV/gpwlyit53GSyXZrCbnct0S4UTGKCx
9sqcOY2lt4qJ4lwVLT9iGqzHGz/G1bYGaEe0rXOIqebuI09WS/h6SD5w1Y4aTC1W
xspTLkjqrGE+PjwjIHT2AdhMCCYumdqP0+q0BI5oixsIRg0ZJID8+gMe1ebdptXZ
reZ5ZQH1UC2IT/bv55NyERPJAEDekAJGaSplI6KUc5oiYHugUsf1suEm1u8Hp79+
fCUc7+D74rez91chHXlk/fnbdrG3WauXHy+TY1ye/6X6dHUAsitktpWHvx7lkNQr
T7JUPSCBh0NWaV6RbIITYsM79QO9lLKV5hw/Lw8LqIX9dtkhcocS8XdIxUm89l03
pCLWzj58tF6dt69r8xBXdFnhMsA4s3pTUNIBg3jBJqkJsu1HtVCVjkSEUQWQl1bd
hSSAf9Dm4Ou+8wEYykBg6NA4KsHlNaP3RXbb7Yxtlzl/yZc9a4UcfqY/K8qOfRbw
8Srk4ug+XMTI/YijZP8vIx7Avp3PDRPrkOzRFEeN8lULQgmY5KUdVP6XJPpJSz3h
AbJjO26G8WM1xUcErpULtGg901Vyt5KTigJVBzcNNHY+NDbWfMs=
=xk57
-----END PGP SIGNATURE-----

--Sig_/ch0cKgUjIGd9Bu1D+6w_rjf--


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 10:43:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 10:43:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119201.225596 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbhel-0000Cj-Jq; Wed, 28 Apr 2021 10:42:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119201.225596; Wed, 28 Apr 2021 10:42:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbhel-0000Cc-Gp; Wed, 28 Apr 2021 10:42:59 +0000
Received: by outflank-mailman (input) for mailman id 119201;
 Wed, 28 Apr 2021 10:42:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbhej-0000CX-Az
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 10:42:57 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1bbbbc7c-38f2-4c31-83f2-b28423764023;
 Wed, 28 Apr 2021 10:42:56 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9CAEBB0E5;
 Wed, 28 Apr 2021 10:42: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: 1bbbbc7c-38f2-4c31-83f2-b28423764023
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619606575; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=+LOGq98ESKwX8CsvSDyYlHh1rsJb1mlOPfegjkDhoLU=;
	b=DFSRzA3NSX3QldD8u7NVmCpR3kME4fwjQ5DE/FyWF/fl8dcuChgeBkvfMZu35lJ7br86H/
	wVCIw+Alzc0W+CHzoW4yGN04TTbrTPA/MHqynJuL8isKjRcoYVJQcejTAsYdR1jB84LR7P
	Ca1PHdpaSWtgTsU0ZAKe01aWpe+CKxM=
Subject: Re: obtain a list of granttable PFNs from toolstack
To: Olaf Hering <olaf@aepfle.de>
Cc: xen-devel@lists.xenproject.org
References: <20210428095049.14a8272b.olaf@aepfle.de>
 <8427397f-0953-94df-04f6-8dfe2a4ceee8@suse.com>
 <20210428121701.3272b369.olaf@aepfle.de>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d508af0b-dd4a-7c13-f33e-bc60a4fb7272@suse.com>
Date: Wed, 28 Apr 2021 12:42:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210428121701.3272b369.olaf@aepfle.de>
Content-Type: text/plain; charset=windows-1252
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28.04.2021 12:17, Olaf Hering wrote:
> Am Wed, 28 Apr 2021 11:49:59 +0200
> schrieb Jan Beulich <jbeulich@suse.com>:
>> On 28.04.2021 09:50, Olaf Hering wrote:
>>> Is there an API to get a list of PFNs which are currently being active in the grant table for a given domid?  
>> 
>> Also, what do you mean by "active in the grant table"?
> 
> I'm not familiar with grants. My guess is, a domU pro-actively shares some of its pages with someone else. These shared pages have to be tracked somewhere, and I guess Xen has to establish proper access permissions for such pages. I guess the "grant table" is the place where things are collected.

The grant table is where the guest stores which pages it allows to
be accessed by which other domains. Upon request to access a grant,
Xen then updates that table entry to indicate what access is
currently in progress.

> Looking through xen/grant_table.h, I see no API. But that might be the wrong place anyway.

There's none, and so far I can't see a reason why one would be
wanted / needed. Any inspection results are immediately stale
afterwards, as there's no synchronization at all to what guests
may put when into their grant table.

It might help if you would outline what you're actually after by
knowing a domain's active grants.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 10:43:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 10:43:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119205.225608 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbhfJ-0000IM-TJ; Wed, 28 Apr 2021 10:43:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119205.225608; Wed, 28 Apr 2021 10: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 1lbhfJ-0000IE-Q7; Wed, 28 Apr 2021 10:43:33 +0000
Received: by outflank-mailman (input) for mailman id 119205;
 Wed, 28 Apr 2021 10:43:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SCdR=JZ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbhfI-0000I8-7l
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 10:43:32 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5ff66579-feeb-4488-b705-ff53d0f6cfb2;
 Wed, 28 Apr 2021 10:43: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: 5ff66579-feeb-4488-b705-ff53d0f6cfb2
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619606610;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=UBmz4u4fOl2UUfadjVwCn/w4it6gdDIl4Rcbwj6o7QQ=;
  b=ZwNLW84Vy0LeK2BSm7lDW25PnYE6vuRVyvBCeaQRR/TuVzGzqvOUmfRA
   QWg6iBDoLRi1ewbW3maPGunDRpKYaaMxc8Y9KdilWraFe4m1JYTWApLmN
   5TjaaBo+u4IrPGEOwKEsI9O2VHnGV0jFtAu6ytqohJWukIT5okfy56CBA
   0=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 54J8XzvzCPfO975986IYAtVV1cxuv/jQ7BySMuq5fc6daN+AXvR4ehU1/Gqv70U83/wYwY/oh4
 +naVp/A0vPQkpsiyve59l0fMbP5lg6vLY19IbrEDgCZP92m9O8YGoOYCdsaJPIPrbzGPfga97A
 mlBst6dNc/XCfD4wAz396jiDebnY13uTbgNQHr1QhKMv9FB516ZBJy1D061rWvSq9Z3q0s9oxC
 vzSXTgxDNNDobK9OAPW6mueAIAOGXMGKCFtfoCiHMDATZbI10AzE7Vy8AfcZV7kM3hXr5aUFyq
 0QM=
X-SBRS: 5.1
X-MesageID: 42710876
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:cydaya98u6VeTOQdMwRuk+FLcL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmzybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIULD38Zn/+
 Nbf6B6YeedMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsLV4hLxW5Ce2CmO2dxQxRLAod8OZ
 qH/8xcpyehf3N/VLXHOlAuWe/fq9rX0K/3eBJuPW9c1CCirxONrIT7HR+RwwsEX1p0oIsK3G
 DZn2XCl8Cemt6hzBu07R620713n5/bxsJHFIiwjKEuW0nRoyKJQKgkZLGYpjAyp4iUmSYXuf
 3BuQ0pMcg2y165RBDMnTLX1wPt0Ckj5hbZoDfy6xaTwr2aNUAHIvFMio5DfhzS51BIhqAG7I
 tx03+ErJ0SNBvcnU3Glqn1fit3nUm5q2dKq59rs1VjV+IlGdhshL1a1kZUHJAcJTn9+YAqHc
 J/Zfusmsp+QBe0aWvUsXJox8HpdnMvHg2eSkxHgcCN1SNK9UoJg3cw9Yg6pDMt5Zg9Q55L66
 DtNblprqhHSoszYbhmDOkMbMOrAgX2MF3xGVPXBW6iOLAMOnrLpZKyyq4y/vuWdJsBy4Z3sI
 jdUXtD3FRCO37GOImr5tlm4xrNSGKyUXDG0cdF/aV0vbX6Wf7CLTCDclYziMGtys9vQ/Hzar
 KWAtZ7EvXjJWzhFcJixAvlQaRfLnEYTYk7odA+d1WSot/aC4Hju+DBGcyjZobFIHIBYCfSE3
 EDVD/8KIFr9UawQEL1hxDXRjfMdyXEjNdNOZmf29JW5JkGN4VKvARQo0++/Nu3JTpLtbFzWE
 N/Jbjgg56qvGXexxeN00xZfj5mSmpF6rTpVH1H4SUQNVnvTLoFs9KDPUdfwWWAPR06a8/NCg
 ZQqxBW9MuMXtKt7BFnL+jiHnORjnMVqn7PZYwbgLe/6cDsfY59KI0nVqx3HQDiDAd0hg5ulW
 dGZGY/NwziPwKrrZ/goI0fBenZedU5qhysO9RopXXWsljZmdsiXUIBXzmlUdeehCEnQzY8vC
 w3z4YvxJ673Rq/I2o2h+o1dHlBcn6eDr59AAOZX4lMgbzwdAZsTWCFuCyCh3gICxnX3nRXol
 akATyfePnNDFYYgHxe36rw2H5fd2mWfStLGztHmLw4MV6Dlmd40OeNaKb27nCYbUEaxPoBdB
 vfZyEJHw9oz9er9RKclTqYD086zpE2MuG1NsVkT5jjnleWbKGYn6APGPFZuKt/PNf1q+kRTK
 axfRSWID6QMZJe5yWl4lIefA96p3kvnam2hFnL7G2k0GU+BvSXClJ8XL0fK8yd6W+hZ/vg6u
 QMsfsF+c+LdkP2YZq67IuSSRhpABbau3S3QOElsoo8h9N7iJJDW73gFQLV33RG1igkJMj6lE
 kiUL12iYqxT7NHTog3QWZl5VInm9SEEVszviH3CuE4e0sxj3WzBaL/35P47Z4uCFaGvg3+JB
 229DBc5e7MW0K4pPQnIpN1BWRdc04n7nt+uMuEao3LEQ2vM8VO5kCzPHP4ULhTTsG+aPgthy
 c/x9GDhOmMcSXknCjWoDtgO6pLt1+dfvnaOnPEJcd4t/qgOVqNhaO24Mm8yBfPIAHLFHgwtM
 libkwfbsNKlz84qpY4uxLCE5DKng==
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42710876"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HyeEydjzsMBD7cVFLGHXwvjKmCEbb5jvqjpWYBJQ1mUANH+Wk7+WwFb6lQrvrS3sYJ1ANtVkCc4Pzcn0fOBZzRAtU6YnAwALr3tL4P9rn7xo7eKA/qUAyZiIPLAaqbw3V5LRrN1bqdhOwp2I7INdV1kpwjupoK+c9FwhEAQqJ5BqPnbWHAar3pxi2FUuRQ9nBzUJwS96T1x5012EePGnMclytmVym/bKDwcBQRLtzZtr6ON8Duu8U+vuzfcld2/0qWFX6ISn8PcRugNx2ZFlZhDxiqzModrExiGxfT1Cu6luk3QEXUfWG8ULOGyO67pClIuNkC0EYnoNUIlULk1P0g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=w9ROJ9R4WO/Bh42xfzQP22PffVLgW5SbjUWF/ZSO8JE=;
 b=Wp+ux6z/Lfy0BzwtrJZEihp4PvL6FZtwNP2gcECbvGxlzoDRUSvnReCJbUonbMm94iG2aRj5bBgRhHbJEnP7ZCsR17N+xYMFu2FycqdHgQEdF3UAT6BpaBJiHtskDv+2DTLnXcKC4CHp9ykDkpioOhOXcvyDfjTo3+yD2iIFBsCcTh62l5XpI2MglDngdbHbV/CnK8ho30ghwdT8LJjljlzIUXS0V+0rOrGyJRGFXcdFO/ctgQdXLQcZAk4r71u7D/cpLQ5m+eZiVodkTQskkoccTZNZUrkYbWxd2bCnf6KbJRWGzzspwt+6sPevejKcf2NRSEAheuiRkrOS6QHwgw==
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=w9ROJ9R4WO/Bh42xfzQP22PffVLgW5SbjUWF/ZSO8JE=;
 b=oNiYjrAMVxCBhPkkJvQNbGpG2ryhR4wY9+8WIUX1vfslRbO5gAYZqQS3ZijScScpkjoykLqDT0r2JgWWp5CZqEzGkGwuxzfWoaus9hME/fMzVIdbYdvOy8Ga77kA2BPrD1xIn0Tp9iKktdk1zVYF8JYj35XhC53Ef+WquvvLtRA=
Date: Wed, 28 Apr 2021 12:42:57 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Rahul Singh <rahul.singh@arm.com>
CC: <xen-devel@lists.xenproject.org>, <bertrand.marquis@arm.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@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>, Paul Durrant <paul@xen.org>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
Message-ID: <YIk8MYCeKi0eKkrg@Air-de-Roger>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
X-ClientProxiedBy: MR2P264CA0139.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::31) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0af2960a-e1f8-4bae-241d-08d90a326693
X-MS-TrafficTypeDiagnostic: DM6PR03MB4217:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB42179FD3E5EA14D5F832CCF38F409@DM6PR03MB4217.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: PdC4lHE77vBjJezpeI7TmavTed4OB09Bm33Z6nKEe4GW/i37GvggnIoiZ/RcMoYnhnMKBtYOaxmDPCn4VFY754k5ZPfODTbWcN/c00aMSssQ/HQzpjoC8ol9nG+84emOr1ofpSfFcldOQ+voUriDCngvG21eRKO9WweolBFYammMAcNb/9m+VkedSEUcAKVRsHK+5nc2Vu7S+v2pmPM3T47c+SmYs673dmBnTXEZ+lOdaQOT8FGMGtMXT2qoHjYY0aYGBGWWB67WlWFZNubYJCzriyuPwEy11on0QaPbwKFWFM6hBYysp0WcH/cJZ3w1Xx6JL7R+/O5+FPpmuTl5DYdC8ZdwMI/8QKC/v+133zc01+ajte0Ij8LwmxuR030c9N27ftF22hUsuilk36UXQ2bxn4BTIlrW0Ih11Krd2KI4S1TPVuoZklWzHzAt3/TuECwBxO0B0YDQVsLB0bWX96XY+e0gs65bo6qBsrg8o2zhPlSnt7oeLl3Z3habU8dL2fA+ps6u9PePRzh5LH7aFxmENKZqSfs+IvDHTPFqVhH+2crGndkg4EdqVB2rujyD9/i+g0GA/5lI8Bv9RYHuA2YHYW6Irzyz55m5ws/ko/Dm1imkJ5KBdTar6OuiOYIVEB4nxr+xWNNPsDug9lPYW6j0qo/bO4ygTfExrVWnomc9OCkH8dVtj7/Me4PyiRnS6cAnZZAtl1++2mectQAkRN25ZBNrQzqtf4WHqu14iJY=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(39860400002)(366004)(136003)(376002)(346002)(396003)(6496006)(6916009)(86362001)(316002)(2906002)(6486002)(33716001)(66946007)(85182001)(9686003)(7416002)(8936002)(66556008)(66476007)(8676002)(5660300002)(6666004)(26005)(16526019)(478600001)(83380400001)(4326008)(38100700002)(186003)(956004)(54906003)(30864003)(2004002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?QhgE0lswzXp/CE2ZbN/fizYVhdKP4ib53+/gB4C?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 0af2960a-e1f8-4bae-241d-08d90a326693
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 10:43:03.6760
 (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: 23kaQFb3IqLSGdgsetjVJHYpC7pfywBueVkI+hkrucdSCLBmnk2BPJ33+tmgALjbAblNWls7uzxNwbh2Hg4Z8A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4217
X-OriginatorOrg: citrix.com

On Mon, Apr 26, 2021 at 05:21:26PM +0100, Rahul Singh wrote:
> MSI intercept related code is not useful for ARM when MSI interrupts are
> injected via GICv3 ITS.
> 
> Therefore introducing the new flag CONFIG_PCI_MSI_INTERCEPT to gate the
> MSI code for ARM in common code and also implemented the stub version
> for the unused code for ARM to avoid compilation error when HAS_PCI
> is enabled for ARM.
> 
> No functional change intended.
> 
> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
> ---
> Changes since v1:
>  - Rename CONFIG_HAS_PCI_MSI to CONFIG_PCI_MSI_INTERCEPT
>  - Implement stub version of the unused function for ARM.
>  - Move unneeded function to x86 file.
> 
> Changes since v2:
>  - Rename function name as per the comments.
>  - Created a separate non-arch specific file msi-intercept.c.
> ---
>  xen/arch/x86/Kconfig                    |  1 +
>  xen/drivers/passthrough/Makefile        |  1 +
>  xen/drivers/passthrough/msi-intercept.c | 52 +++++++++++++++++++++++++
>  xen/drivers/passthrough/pci.c           | 16 +++-----
>  xen/drivers/pci/Kconfig                 |  4 ++
>  xen/drivers/vpci/Makefile               |  3 +-
>  xen/drivers/vpci/header.c               | 19 ++-------
>  xen/drivers/vpci/msix.c                 | 25 ++++++++++++
>  xen/drivers/vpci/vpci.c                 |  3 +-
>  xen/include/xen/msi-intercept.h         | 48 +++++++++++++++++++++++
>  xen/include/xen/vpci.h                  | 23 +++++++++++
>  xen/xsm/flask/hooks.c                   |  8 ++--
>  12 files changed, 170 insertions(+), 33 deletions(-)
>  create mode 100644 xen/drivers/passthrough/msi-intercept.c
>  create mode 100644 xen/include/xen/msi-intercept.h
> 
> diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
> index 32b9f23a20..4d72798f00 100644
> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -20,6 +20,7 @@ config X86
>  	select HAS_NS16550
>  	select HAS_PASSTHROUGH
>  	select HAS_PCI
> +	select PCI_MSI_INTERCEPT
>  	select HAS_PDX
>  	select HAS_SCHED_GRANULARITY
>  	select HAS_UBSAN

This list is sorted alphabetically AFAICT, and new additions should
respect that.

> diff --git a/xen/drivers/passthrough/Makefile b/xen/drivers/passthrough/Makefile
> index 445690e3e5..3c707706b0 100644
> --- a/xen/drivers/passthrough/Makefile
> +++ b/xen/drivers/passthrough/Makefile
> @@ -7,3 +7,4 @@ obj-y += iommu.o
>  obj-$(CONFIG_HAS_PCI) += pci.o
>  obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o
>  obj-$(CONFIG_HAS_PCI) += ats.o
> +obj-$(CONFIG_PCI_MSI_INTERCEPT) += msi-intercept.o
> diff --git a/xen/drivers/passthrough/msi-intercept.c b/xen/drivers/passthrough/msi-intercept.c
> new file mode 100644
> index 0000000000..1edae6d4e8
> --- /dev/null
> +++ b/xen/drivers/passthrough/msi-intercept.c
> @@ -0,0 +1,52 @@
> +/*
> + * Copyright (C) 2021 Arm Ltd.

Since this is code movement, I think it should keep the copyright of
the file they are moved from.

> + *
> + * 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/init.h>
> +#include <xen/pci.h>
> +#include <asm/msi.h>
> +#include <asm/hvm/io.h>
> +
> +int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
> +{
> +    int rc;
> +
> +    if ( pdev->msix )
> +    {
> +        rc = pci_reset_msix_state(pdev);
> +        if ( rc )
> +            return rc;
> +        msixtbl_init(d);
> +    }
> +
> +    return 0;
> +}
> +
> +void pdev_dump_msi(const struct pci_dev *pdev)
> +{
> +    const struct msi_desc *msi;
> +
> +    list_for_each_entry ( msi, &pdev->msi_list, list )
> +        printk("%d ", msi->irq);
> +}
> +/*

Missing newline.

> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * tab-width: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> index 199ce08612..298be21b5b 100644
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -32,8 +32,8 @@
>  #include <xen/softirq.h>
>  #include <xen/tasklet.h>
>  #include <xen/vpci.h>
> +#include <xen/msi-intercept.h>
>  #include <xsm/xsm.h>
> -#include <asm/msi.h>
>  #include "ats.h"
>  
>  struct pci_seg {
> @@ -1271,7 +1271,6 @@ bool_t pcie_aer_get_firmware_first(const struct pci_dev *pdev)
>  static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
>  {
>      struct pci_dev *pdev;
> -    struct msi_desc *msi;
>  
>      printk("==== segment %04x ====\n", pseg->nr);
>  
> @@ -1280,8 +1279,7 @@ static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
>          printk("%pp - %pd - node %-3d - MSIs < ",
>                 &pdev->sbdf, pdev->domain,
>                 (pdev->node != NUMA_NO_NODE) ? pdev->node : -1);
> -        list_for_each_entry ( msi, &pdev->msi_list, list )
> -               printk("%d ", msi->irq);
> +        pdev_dump_msi(pdev);
>          printk(">\n");

Maybe the whole '- MSIs < ... >' should be removed, instead of
printing an empty list of MSIs when MSI interception is not supported?

Or else you give the impression that no MSIs are in use, when instead
Xen is not tracking them.

>      }
>  
> @@ -1422,13 +1420,9 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
>      ASSERT(pdev && (pdev->domain == hardware_domain ||
>                      pdev->domain == dom_io));
>  
> -    if ( pdev->msix )
> -    {
> -        rc = pci_reset_msix_state(pdev);
> -        if ( rc )
> -            goto done;
> -        msixtbl_init(d);
> -    }
> +    rc = pdev_msix_assign(d, pdev);
> +    if ( rc )
> +        goto done;
>  
>      pdev->fault.count = 0;
>  
> diff --git a/xen/drivers/pci/Kconfig b/xen/drivers/pci/Kconfig
> index 7da03fa13b..e6bf0b7441 100644
> --- a/xen/drivers/pci/Kconfig
> +++ b/xen/drivers/pci/Kconfig
> @@ -1,3 +1,7 @@
>  
>  config HAS_PCI
>  	bool
> +
> +config PCI_MSI_INTERCEPT
> +	bool
> +	depends on HAS_PCI
> diff --git a/xen/drivers/vpci/Makefile b/xen/drivers/vpci/Makefile
> index 55d1bdfda0..f91fa71a40 100644
> --- a/xen/drivers/vpci/Makefile
> +++ b/xen/drivers/vpci/Makefile
> @@ -1 +1,2 @@
> -obj-y += vpci.o header.o msi.o msix.o
> +obj-y += vpci.o header.o
> +obj-$(CONFIG_PCI_MSI_INTERCEPT) += msi.o msix.o
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index ba9a036202..ec735c5b4b 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -206,7 +206,6 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>      struct vpci_header *header = &pdev->vpci->header;
>      struct rangeset *mem = rangeset_new(NULL, NULL, 0);
>      struct pci_dev *tmp, *dev = NULL;
> -    const struct vpci_msix *msix = pdev->vpci->msix;
>      unsigned int i;
>      int rc;
>  
> @@ -244,21 +243,11 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>      }
>  
>      /* Remove any MSIX regions if present. */
> -    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
> +    rc = vpci_remove_msix_regions(pdev, mem);
> +    if ( rc )
>      {
> -        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
> -        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
> -                                     vmsix_table_size(pdev->vpci, i) - 1);
> -
> -        rc = rangeset_remove_range(mem, start, end);
> -        if ( rc )
> -        {
> -            printk(XENLOG_G_WARNING
> -                   "Failed to remove MSIX table [%lx, %lx]: %d\n",
> -                   start, end, rc);
> -            rangeset_destroy(mem);
> -            return rc;
> -        }
> +        rangeset_destroy(mem);
> +        return rc;
>      }
>  
>      /*
> diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
> index 846f1b8d70..3efbaebc92 100644
> --- a/xen/drivers/vpci/msix.c
> +++ b/xen/drivers/vpci/msix.c
> @@ -428,6 +428,31 @@ int vpci_make_msix_hole(const struct pci_dev *pdev)
>      return 0;
>  }
>  
> +int vpci_remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem)

You could pass struct vpci here, since there's no need to pass the
pdev, but I don't really have a strong opinion.

> +{
> +    const struct vpci_msix *msix = pdev->vpci->msix;
> +    unsigned int i;
> +    int rc;

Nit: you can define rc inside the loop, like it's done for start and
end.

> +
> +    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
> +    {
> +        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
> +        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
> +                vmsix_table_size(pdev->vpci, i) - 1);

You can now also move vmsix_table_{base,addr,size} to be local static
inlines to msix.c instead of being defined in the header AFAICT.

> +
> +        rc = rangeset_remove_range(mem, start, end);
> +        if ( rc )
> +        {
> +            printk(XENLOG_G_WARNING
> +                    "Failed to remove MSIX table [%lx, %lx]: %d\n",
> +                    start, end, rc);
> +            return rc;
> +        }
> +    }
> +
> +    return 0;
> +}
> +
>  static int init_msix(struct pci_dev *pdev)
>  {
>      struct domain *d = pdev->domain;
> diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
> index cbd1bac7fc..85084dd924 100644
> --- a/xen/drivers/vpci/vpci.c
> +++ b/xen/drivers/vpci/vpci.c
> @@ -48,8 +48,7 @@ void vpci_remove_device(struct pci_dev *pdev)
>          xfree(r);
>      }
>      spin_unlock(&pdev->vpci->lock);
> -    xfree(pdev->vpci->msix);
> -    xfree(pdev->vpci->msi);
> +    vpci_msi_free(pdev->vpci);
>      xfree(pdev->vpci);
>      pdev->vpci = NULL;
>  }
> diff --git a/xen/include/xen/msi-intercept.h b/xen/include/xen/msi-intercept.h
> new file mode 100644
> index 0000000000..77c105e286
> --- /dev/null
> +++ b/xen/include/xen/msi-intercept.h
> @@ -0,0 +1,48 @@
> +/*
> + * Copyright (C) 2021 Arm Ltd.
> + *
> + * 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/>.
> + */
> +
> +#ifndef __XEN_MSI_INTERCEPT_H_
> +#define __XEN_MSI_INTERCEPT_H_
> +
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
> +
> +#include <asm/msi.h>
> +
> +int pdev_msix_assign(struct domain *d, struct pci_dev *pdev);
> +void pdev_dump_msi(const struct pci_dev *pdev);
> +
> +#else /* !CONFIG_PCI_MSI_INTERCEPT */
> +
> +static inline int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
> +{
> +    return 0;
> +}
> +
> +static inline void pdev_dump_msi(const struct pci_dev *pdev) {}
> +static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
> +
> +#endif /* CONFIG_PCI_MSI_INTERCEPT */
> +
> +#endif /* __XEN_MSI_INTERCEPT_H */
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * tab-width: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
> index 9f5b5d52e1..2cd3647305 100644
> --- a/xen/include/xen/vpci.h
> +++ b/xen/include/xen/vpci.h
> @@ -91,6 +91,7 @@ struct vpci {
>          /* FIXME: currently there's no support for SR-IOV. */
>      } header;
>  
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>      /* MSI data. */
>      struct vpci_msi {
>        /* Address. */
> @@ -136,6 +137,7 @@ struct vpci {
>              struct vpci_arch_msix_entry arch;
>          } entries[];
>      } *msix;
> +#endif /* CONFIG_PCI_MSI_INTERCEPT */
>  #endif
>  };
>  
> @@ -148,6 +150,7 @@ struct vpci_vcpu {
>  };
>  
>  #ifdef __XEN__
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>  void vpci_dump_msi(void);
>  
>  /* Make sure there's a hole in the p2m for the MSIX mmio areas. */
> @@ -174,6 +177,7 @@ int __must_check vpci_msix_arch_disable_entry(struct vpci_msix_entry *entry,
>                                                const struct pci_dev *pdev);
>  void vpci_msix_arch_init_entry(struct vpci_msix_entry *entry);
>  int vpci_msix_arch_print(const struct vpci_msix *msix);
> +int vpci_remove_msix_regions(const struct pci_dev *pdev, struct rangeset *mem);
>  
>  /*
>   * Helper functions to fetch MSIX related data. They are used by both the
> @@ -208,6 +212,25 @@ static inline unsigned int vmsix_entry_nr(const struct vpci_msix *msix,
>  {
>      return entry - msix->entries;
>  }
> +
> +static inline void vpci_msi_free(struct vpci *vpci)
> +{
> +    XFREE(vpci->msix);
> +    XFREE(vpci->msi);
> +}
> +#else /* !CONFIG_PCI_MSI_INTERCEPT */
> +static inline int vpci_make_msix_hole(const struct pci_dev *pdev)
> +{
> +    return 0;
> +}
> +
> +static inline int vpci_remove_msix_regions(const struct pci_dev *pdev,
> +                                      struct rangeset *mem)

Nit: line seems to not be properly aligned.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 11:04:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 11:04:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119218.225621 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbhz9-00029L-Km; Wed, 28 Apr 2021 11:04:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119218.225621; Wed, 28 Apr 2021 11:04: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 1lbhz9-00029E-Gq; Wed, 28 Apr 2021 11:04:03 +0000
Received: by outflank-mailman (input) for mailman id 119218;
 Wed, 28 Apr 2021 11:04:02 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vSVs=JZ=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lbhz7-00028t-PI
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 11:04:02 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::5])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f9812885-e5e9-449f-98ad-f3506912a14a;
 Wed, 28 Apr 2021 11:04:00 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.25.2 AUTH)
 with ESMTPSA id D0155dx3SB3x4vw
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Wed, 28 Apr 2021 13:03: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: f9812885-e5e9-449f-98ad-f3506912a14a
ARC-Seal: i=1; a=rsa-sha256; t=1619607839; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=BV4m9YABiwArQ+YcLdS9A6E79UsxIPgCu4DoZ31VGwhQd37gR6sUoqVWWVX6zmetF5
    TGah1M0qqU2gXhKFojVYHGMk2HfG/sB4R7cp4qjwUMIHXBIvoVkEQZw+mQTeM0foUgtI
    aGeNRGNyruZ/lXbw1X7T/L8JONHOmobCVzJH3t0w1UQP0chZgur7DH261gwCwUmOAVjX
    DmMqJBzyOMZhNLd0pDzSr40vAsjowpK1L4p3N1mOOY+HmEw8iezZryPvD7C14GgrBzsD
    gq9enmwgm5LtsK5M5t7shOtyip4FIiA5M1EneRB0x7eJeWHmw6kPprIMEoG1A3ngtXJc
    RJyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619607839;
    s=strato-dkim-0002; d=strato.com;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=CJKpLB6He3yiYcrruXOeknmH/h0X8Q5MiiC/wF/SVsI=;
    b=WLxCt5tAWaskRX0spMTlo355PRMsg9ZbgqY4ZmGOuXtKI4ozixBaTSlxrQ7z308ec8
    /1GLfVLsgw2jRtByEDjJzWW2eOlZR0CfwCu4Pw0xD91o5GFEWwFgFsyis6ANfUVv8/uM
    2/LGXs1d1x9KfO+xlO02Z6noc3+xgFCAj/Urhi/tT/Y/Ks3I/fJGwX9Y3jizE9gxUEqo
    rPNcwotypIbw497Uo8xVrt/rhTBCiII8594THbNu3HWI2UZvBIxFl4FlpqtEAxx8QssE
    8FTDf0Bg1opHS7JuPP90CRwJD5YZT70BfdwhmInBbNJnFRDDx/kVDmUxe1EYOZDIgQ2f
    Gd4A==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619607839;
    s=strato-dkim-0002; d=aepfle.de;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=CJKpLB6He3yiYcrruXOeknmH/h0X8Q5MiiC/wF/SVsI=;
    b=L1hEdCdwCJ23JnJbA28HIzRLJMYA+Hu2VLn5XkES1nHHz5lyQcNxHcP2SusA22p8P/
    9R4MwINGOQmiX7SefOwmSuL1pXlQ9eQfxER4BGW1mmbw9D6N2tej9pjesBOQpLNFB/AO
    GKSRqhmylbpltQRID3pgJGXZid0R5l/8aT8LJag+8AwKLvfDXnGPMpCEScjLpcefmEW/
    DVEbjQnBKscKgZ+3tBOmIsdNPJYloQPscA50p9I6HhYM0N9fG+f6FFiHUxmEk8eRYNq8
    RcumFsPCbWSzDdUbTMHpLIsPan8HZv9x3xINhvvpYV0q/5lwBf1Nu8DDAuzb1VOImRRA
    yOXA==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisEsVR6GbU3svGYLiH9zFD0wpO7hNb2D/K88Gfjs"
X-RZG-CLASS-ID: mo00
Date: Wed, 28 Apr 2021 13:03:46 +0200
From: Olaf Hering <olaf@aepfle.de>
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xenproject.org
Subject: Re: obtain a list of granttable PFNs from toolstack
Message-ID: <20210428130346.2477ffda.olaf@aepfle.de>
In-Reply-To: <d508af0b-dd4a-7c13-f33e-bc60a4fb7272@suse.com>
References: <20210428095049.14a8272b.olaf@aepfle.de>
	<8427397f-0953-94df-04f6-8dfe2a4ceee8@suse.com>
	<20210428121701.3272b369.olaf@aepfle.de>
	<d508af0b-dd4a-7c13-f33e-bc60a4fb7272@suse.com>
X-Mailer: Claws Mail 2021.04.23 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="Sig_/sqePbG.ExxylZ16qgiB28K=";
 protocol="application/pgp-signature"; micalg=pgp-sha256

--Sig_/sqePbG.ExxylZ16qgiB28K=
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Am Wed, 28 Apr 2021 12:42:54 +0200
schrieb Jan Beulich <jbeulich@suse.com>:

> It might help if you would outline what you're actually after by
> knowing a domain's active grants.

There is REC_TYPE_VERIFY, which will re-transmit all memory of a paused dom=
U and compare what was previously transferred. Last time I used it a large =
number of pages are different. I did not spent time to dig further into it,=
 what pfns are affected, how the pages differ. I suspect the backends do st=
ill write into the granted pages, hence the question.

I think the domU may undo all grants during its suspend anyway, that is som=
ething to explore as well.


Olaf

--Sig_/sqePbG.ExxylZ16qgiB28K=
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmCJQRIACgkQ86SN7mm1
DoAmrhAAiSnuk4q+fVLzLd/yaw3pPXQXDPveClVE68p7VwoRGiWqktWdaqJelhLt
7rIgs+YxAOPaaazhPphQungs1HyyEjdcH7J9YWsk20xSqMTmRUMEmQaFRR+aDsBB
Gk6AtdzP5JM9iMSJcN1lBxR7y74nvvynj7Ahq0QsKJhodUQuBAYG/JUHN8PgoWKf
eqS2xFLt8ZF9+s6FbmDbT1PLY+948Xdno1zlSe88gW+F5pYL6I8UKEj1vEqsQc+3
wGtr3EGp8tKVaCjjWh1hfFgitR+1HtWrJwFQKxofY1EdOqLd8u1Kv0CnvxpkV61R
EQjDkbAdS+B8aY8u8PO4dtqrifBvkU/qs6hQ+ex+5t3j5MVa0ZCYyRmxxjxg70uO
sffcVh9zhQ6lUTUIPgAya1VafOOXIV1wiLMAESBWELmBUp9N4XmowOfBU5WuOHNt
3HpHThcGT7lEqKQ07SN1c5IMjtL4SdTbZ0/Nhg+3cSaBgh5mutx9ZPUkf78eSAZY
dEQePugIUnkpcqZM26uf5LXdT3xRydxA69lPuvTyOPHNnfoymlYLe/eU3GNca5dn
fh8kaoXXpt8snQxGnV43MkxZK0S/HvTvYCVBrxP6bTGEJQkQL9oGail+p9qMJ2f3
G+8YUE2FV7eGn3RokVRz26bOq/xjo2wyPlEJ1DsagHSPewhtYMU=
=jBFO
-----END PGP SIGNATURE-----

--Sig_/sqePbG.ExxylZ16qgiB28K=--


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 11:05:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 11:05:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119225.225632 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbi04-0002H0-2K; Wed, 28 Apr 2021 11:05:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119225.225632; Wed, 28 Apr 2021 11:05: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 1lbi03-0002Gt-VQ; Wed, 28 Apr 2021 11:04:59 +0000
Received: by outflank-mailman (input) for mailman id 119225;
 Wed, 28 Apr 2021 11:04:58 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lbi02-0002Gm-Qp
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 11:04:58 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lbhzz-0003hQ-LJ; Wed, 28 Apr 2021 11:04:55 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lbhzz-00026Q-6P; Wed, 28 Apr 2021 11: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Mime-Version:Content-Type:
	References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID;
	bh=69MVAyGcIfT3FsUHh/jvNeUT2ENrdkUxLG6OCXyG6fk=; b=QaNvjseb5/dS22R0e5rjWavcSF
	nQk5gdR1E8361Qc0T6yvXXlxFEGkDQ45LN8/fbM9lQ64KFnM65fOuTwsfDU7Qo7nJEcFZbb+95clb
	ziqcRCU3SgFATKg+C52OR1Ze1Fk9YSfvBvqKqORmg33oKnn+awpd/7UWxS1KPOb3ihqQ=;
Message-ID: <943480f695052163b540919c9c55655e5b4f741a.camel@xen.org>
Subject: Re: [PATCH 13/16] xen/page_alloc: add a path for xenheap when there
 is no direct map
From: Hongyan Xia <hx242@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: julien@xen.org, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Ian Jackson <ian.jackson@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Date: Wed, 28 Apr 2021 12:04:51 +0100
In-Reply-To: <a1bd2c72-1310-f018-dda5-90521be03fe4@suse.com>
References: <cover.1588278317.git.hongyxia@amazon.com>
	 <32ae7c14babf7e78b60febb53095a74c5e865456.1588278317.git.hongyxia@amazon.com>
	 <a1bd2c72-1310-f018-dda5-90521be03fe4@suse.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit

On Thu, 2021-04-22 at 14:31 +0200, Jan Beulich wrote:
> On 30.04.2020 22:44, Hongyan Xia wrote:
> > From: Hongyan Xia <hongyxia@amazon.com>
> > 
> > When there is not an always-mapped direct map, xenheap allocations
> > need
> > to be mapped and unmapped on-demand.
> > 
> > Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
> 
> This series has been left uncommented for far too long - I'm sorry.
> While earlier patches here are probably reasonable (but would likely
> need re-basing, so I'm not sure whether to try to get to look though
> them before that makes much sense),

No worries. This series depends on the domheap Xen page table
conversion series anyway (which was just fully merged. Thanks.). I will
re-base now since the dependency is resolved.

> As I don't think we have many cases where code actually depends on
> being able to apply __va() (or equivalent) to the address returned
> from alloc_xenheap_pages(), I think this should instead involve
> vmap(), with the vmap area drastically increased (perhaps taking all
> of the space the direct map presently consumes). For any remaining
> users of __va() or alike these should perhaps be converted into an
> alias / derivation of vmap_to_{mfn,page}() then.

That's true, and this was my first implementation (and also Wei's
original proposal) which worked okay. But, several problems got in the
way.

1. Partial unmap. Biggest offender is xmalloc which allocates and could
then free part of it, which means we need to be able to partially unmap
the region. vmap() does not support this.

2. Fast PA->VA. There is currently no way to go from PA to VA in
vmapped pages, unless we somehow repurpose or add new fields in
page_info. Also, VA->PA is possible but very slow now. There is not
much PA->VA in the critical path but see 3.

3. EPT. Mapping and unmapping EPT in HVM hypercalls and MMIO are so
many and so slow that it is probably not possible to keep them as
domheap pages due to the big performance drop after removing the direct
map. If we move them to xenheap pages on vmap, then this depends on 2
for page table walking.

In the end, I could not find a way that met all 3 above without massive
and intrusive changes. If there is a way, it certainly needs a design
document. The "on-demand" direct map solves all the problems without
breaking any APIs and is very easy to understand. We have been using
Xen without the direct map for a while now with this approach with
decent performance (in fact, you cannot tell that this is a Xen without
the direct map by just real-world benchmarks alone).

I too agree that this approach is a litte hacky and wastes a big chunk
of virtual address space. Definitely wants some discussion if a better
way can be found that solves the problems.

Thanks,
Hongyan



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 11:06:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 11:06:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119230.225645 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbi1a-0002Qf-DH; Wed, 28 Apr 2021 11:06:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119230.225645; Wed, 28 Apr 2021 11: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 1lbi1a-0002QY-A2; Wed, 28 Apr 2021 11:06:34 +0000
Received: by outflank-mailman (input) for mailman id 119230;
 Wed, 28 Apr 2021 11:06:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SCdR=JZ=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lbi1Y-0002QS-UJ
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 11:06:32 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a13cb6ce-6c81-47f5-aa74-1577f614331a;
 Wed, 28 Apr 2021 11:06: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: a13cb6ce-6c81-47f5-aa74-1577f614331a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619607991;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=+8qCObxRB8JssHPAPVXli65FHYrSPDhjLFOe6o/JdWs=;
  b=PEZ9boZfhG3Tjymren/KWKE0LjzDdYVdcz2S6wYeBZp3AbQE6Y9PiTHU
   JxXJr0SDFliBuLGJxk6GebBK2cSiEloukOooaA+89R/SC7dHYb3DL0QIL
   K/bQPeFnSwnMN9MdJjTFUrBAzRfV8IIXYBZ8V3KbZKEb8aqG1Rm6rVMh6
   c=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: WgASG3NqSUC6CIZoLqE21aEE3+3k2QgspxjPPbvlkZ/02o3lVH68S6BYGosEqdQNIkyepy15Ut
 feAMpngzq/VCgCjCRx0dHkcRKdrXMX8qMInhwDrRa1MpErpQSOM6PeXPF4F3f8DXxapLjLFFAL
 dzxcncBFxJL7Yy4ZJvR25pFJKYpOOiLa2J7qhDrntuOwv9FrlhKbzmzdxTUpVEAcpAVSfDp2gm
 2AgtE3hRpGTaCJu0MiTf5eE7u36uUPRSCzxnKWb/VpYY+rasN6KjiQ28wrDtf4CQLT5sUmbn5s
 IcE=
X-SBRS: 5.1
X-MesageID: 42712285
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:b9yFG6wip6jTjUdzJ5dVKrPxnu4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnm6JdybI6eZOvRhPvtmftFoFt6oP+3ybtcheQysd07o
 0lSaR3DbTLYWRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRC51IxS0RMHf8LmRdQg5aCZ0lUL
 ed/NNAvTq8eXIRB/7Le0Utde7FutHNidbaehYAHREq802jijmv5b78HXGjr2sjehlIxqov9n
 WArhzh6syYwouG4zL/90uW1ZRZn9P91sBObfbstuE5Iijh4zzYAbhJdKaFuFkO0YWSwXYs1O
 LBuhIxe/l0gkmhAV2dhTvI903e3C0163nkoGXo8kfLhcDiXjo1B45gqOtiA2PkwnEttt19z6
 5Htljx3/E8YGKi7UaNkuTgbB1kmlG5pnAvi4co/gdieLATdaNLqsgn9F5Vea1wbB7S0pwtE+
 VlEajnlY9rWG6dBkqp2VVH8ZiHW3Q+GQq+WU4SusCZ+Cg+pgEJ82IogOMYhXsO75Q7Vt1t4P
 nFKL1hkPV0QtYRdr8VPpZPfeKHTkj2BT7cOmObJlrqUIkBJnL2spbypJE4/vujdpAkxIY78a
 6xHm9whCoXQQbDGMeO1JpE/lTmW2OmRwngzclY+txQpqD8bKCDC1zBdHke1++b59kPCMzSXP
 i+fLhMBeX4EGfoEYFVmyXjRphpL2UEWsF9gKd6Z3u+5ubwbqH6vO3Sd/jeYJD3Fyw/Z2/5Cn
 wfGBfpIsFt6V2qR2/YjBDdV2iFQD27wbtAVIzhu8QDwokEMYNB9iIPj06i282NITpe9ow6FX
 EOZI/Po+eeny2b7GzI52JmNl52FUBO+ojtVHtMuEsvO0PwerAThsWHdQlprTy6Dy46a/mTPB
 9Uplxx967yBYeX3zoeB9WuNX/fqHcPunSQTdM5lreY7cnoPrM0Z6xWGZBZJEHuLVhYiAxqoG
 BMZEsvXUnEDA7jjq2jkdgzH+HQd951hS+xOs5KoXfjtUGRzPtfBEczbnqLa4q6kAwuTz1bih
 la6KkEmoeNnj6pNC8CmugiCUZNb26WGbpCKwyAaOxv6/bWUTA1aV3PqS2Rihk1dGav00kJnG
 TuIReZfuzxDkNHtmpV1bvr911IZnyQFngAGExSgMlYLyDrq3xz2eiEau6I32ydZkAr78sdPD
 vGCAFiaD9G9pSS7lq4iTyCHXIpytESJeTbFq0kaKyW8GiqMpe0maYPGOJ08J5pOMv1iPICVf
 uSdmauXWrFItJs/zbQimcuOSFypnVhrOjh3wf96nOkmFE4GvjfLT1dNvgmCuDZy1KhYfmG0J
 90141o+cSxN3j8cd6Ax+X8aSVZJhbavG6xSKUJpPlvzNUPnYo2O6Oedz3CkExj9lEZCuzfkU
 sFWqR14LzbIOZUDocvUhMc2mBsrciFKUsgjxf/DeA/d2w8lnOzBaL835P47Z4URnCbrAT+OV
 Oj4zRQ0vfMUSyEz6MbAcsLUBJrQXl5zHRp5+WZcYLMTC2sauFY5VK/W0XNPYN1eeygGb8KqA
 x97MzNt+iLdzDg0ASVmTdgOKpB/yKGRsy1aTj8VdJgwpifOV6WhLGt79P2pDDrSSGjY0BdvL
 Z7TyUrH4x+owhnqpY23Ci0QrH2pUxgs2I220AYqnfdnq684GnaGklaNxb+mZs+Z0gKDkS1
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42712285"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ToX4TrWcP1uqBKGzFkNmwGlsEHkPV/9hf0AauPSpvP1bGT7Jdb5M96Hh/GPzcC8BMYgdiCqS77LliGKxVOFRsoiq7uTR0xzaXBjw0pTrjVtx2peM7YjT1c1/diCmszFphen49kUIEkoEA4rh2MFWCTXZOv59oD7h7sJlU0Ikaigrc9Aoe8bMo0J2Ewg8UhoVPCVnJEJPoFhj6rFd6guYODL2ioo2h/4vlKinOUAxhXFFmQ6QKG7+yfh4ymwdBDO93eNV5bk/bVwDiyEFOClEwCrIlWmJK4RlpgjKSCT3Z76lWIM8uGSpjwBTMRJpsqkVtCjkTpc0NNpVYiCJGEx2rg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SkHRjpcmHEhszRzziguO/Z26ZAnZT1U3ct/YJ0mTU3Q=;
 b=BABmtcxtDN0r56VszU5gHsFlbCH8XisqrsQXnYQ/GwO4rTwygjbWRQ0lLdnOd5SPOkd+kglga3b8TnV8Ym45x/AND8VBy0sBFtrPvJeTHz3RPXph4cq+9ubmzS8UOMuK4SLY0EYmsGF67ztCekldO3cpjiz1dfbYOfxbSz7c5NuRG5DKe+UqA/5TMMuCA9eYrjUlZnRBzlRzlSmMYxGX9ju+xv/aHoQufmuZk76pV7c3A2pdLn/scY5Qm8DtZPeGNFDSmnqMzcnjoYHvRArZg9lwR1pPyopabStUEnjeay6buVJ/XR3UMNEL2S9weuCEumhyKp1kWJf5nkZwsl/Dzg==
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=SkHRjpcmHEhszRzziguO/Z26ZAnZT1U3ct/YJ0mTU3Q=;
 b=ELg9QEmOMIGtEk8/d8JSsX11G5m7FG0ylc9CCbrBWaud38jERA3sCMeb6jNebME0Ru2FOtd8UuWOBaJuLU3Vs7htunAe96316N1MLNgh2lYuPt21PU/IkNfIikG6Xi1qwTfSFouJyftZ/prkgcDhXoLOOekii6PVlwJrxxTPEMk=
Date: Wed, 28 Apr 2021 13:06:05 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Rahul Singh <rahul.singh@arm.com>
CC: <xen-devel@lists.xenproject.org>, <bertrand.marquis@arm.com>, Jan Beulich
	<jbeulich@suse.com>, Paul Durrant <paul@xen.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Ian
 Jackson" <iwj@xenproject.org>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 3/3] xen/pci: Refactor MSI code that implements MSI
 functionality within XEN
Message-ID: <YIlBnQO+iuFFx2XO@Air-de-Roger>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <7b6651f10922571a10685dc7652fbce03b6b6e51.1619453100.git.rahul.singh@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <7b6651f10922571a10685dc7652fbce03b6b6e51.1619453100.git.rahul.singh@arm.com>
X-ClientProxiedBy: MR2P264CA0003.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::15) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: a2577591-a4a4-463f-20b0-08d90a35a1e9
X-MS-TrafficTypeDiagnostic: DM6PR03MB5323:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB532398EFA6ABA3A2B579054E8F409@DM6PR03MB5323.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: xhBlnDjSCk5MzE43rF4yUwzror7C8wGxw6XLvdtNIsH60WwQNuiwrc+w1/zO6PBmsgogTW3Mf+szpIrbrNaTcBI27Z+hqI5m4OMmZZ7iMnIVtP/cwoAsmtMExoK5+ce4KhbfakVJ4qoYRn0u5Yks+cqrW4yCgKglXKD8UE8MR+t7CmNTw8JwdxYtuwi3UcPXYrWSX+w7uaoF0lhGZyHZpPGgdtKUVpZsE17imAFqexDaeXtsr2WtKwGtOU6GhmMrKWRwEtDh6SQGJfFdYySRzoIBM+1geCe9iS/zkjoKTPNI4iwPQtTlAtut4Hd8Tc2KY6+yhkWl92pqoAcod0Savwz8qCiaFBDOXGRZJkyqFs9BgkyodNS74MblIq3ow9hmoL8NozQ+7tg1/qvazLDXqIpj0FQfsjmSFcffmVT/v7vZ8khTipXR2agz/kYG4pbUToqKWkDtY6CuMXbgyMdF5e/2pK1E3n9PePW/ngWDQRpq9MteM46KgigHPo0/9DNsU1Q3mof58eUCSXC4X+G5nUhSoM+Ac+WIaSDu/UvtKIQAD/J7vzRr1UT87Tr2hVL1ql0RwynsFGXC6uGj6+0BIdyKKVLPtH0YqNu6DI8Z8ADsrHdkhFo2Mu5SLJtibNq7RkuQZndAPbevh1jlb2piTw==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(39860400002)(396003)(346002)(376002)(366004)(136003)(478600001)(4326008)(2906002)(6916009)(8936002)(6496006)(33716001)(8676002)(38100700002)(6486002)(54906003)(6666004)(316002)(16526019)(26005)(186003)(85182001)(66946007)(66556008)(66476007)(956004)(9686003)(83380400001)(86362001)(5660300002)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?mTgMG/H9zSquo1JCf35CqxZQDHawnj5d3j6Zl1G?=
X-MS-Exchange-CrossTenant-Network-Message-Id: a2577591-a4a4-463f-20b0-08d90a35a1e9
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 11:06:11.6914
 (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: safv87N3NCM2gGNWvYPT5xqlsYNATr4b8aoWP8XoAV5LD6fMW8CeFo7w1g5r2bjNWYoDAQaPctya9xqudVr0Pg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5323
X-OriginatorOrg: citrix.com

On Mon, Apr 26, 2021 at 05:21:27PM +0100, Rahul Singh wrote:
> MSI code that implements MSI functionality to support MSI within XEN is
> not usable on ARM. Move the code under CONFIG_PCI_MSI_INTERCEPT flag to
> gate the code for ARM.
> 
> Currently, we have no idea how MSI functionality will be supported for
> other architecture therefore we have decided to move the code under
> CONFIG_PCI_MSI_INTERCEPT. We know this is not the right flag to gate the
> code but to avoid an extra flag we decided to use this.
> 
> No functional change intended.
> 
> Signed-off-by: Rahul Singh <rahul.singh@arm.com>

I think this is fine, as we don't really want to add another Kconfig
option (ie: CONFIG_PCI_MSI) for just the non explicitly intercept MSI
code.

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Some nits below...

> ---
> Changes since v2:
>  - This patch is added in this version.
> ---
>  xen/drivers/passthrough/msi-intercept.c | 41 +++++++++++++++++++++++++
>  xen/drivers/passthrough/pci.c           | 34 ++++----------------
>  xen/include/xen/msi-intercept.h         |  7 +++++
>  xen/include/xen/pci.h                   | 11 ++++---
>  4 files changed, 61 insertions(+), 32 deletions(-)
> 
> diff --git a/xen/drivers/passthrough/msi-intercept.c b/xen/drivers/passthrough/msi-intercept.c
> index 1edae6d4e8..33ab71514d 100644
> --- a/xen/drivers/passthrough/msi-intercept.c
> +++ b/xen/drivers/passthrough/msi-intercept.c
> @@ -19,6 +19,47 @@
>  #include <asm/msi.h>
>  #include <asm/hvm/io.h>
>  
> +int pdev_msi_init(struct pci_dev *pdev)
> +{
> +    unsigned int pos;
> +
> +    INIT_LIST_HEAD(&pdev->msi_list);
> +
> +    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
> +                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSI);
> +    if ( pos )
> +    {
> +        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
> +
> +        pdev->msi_maxvec = multi_msi_capable(ctrl);
> +    }
> +
> +    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
> +                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSIX);
> +    if ( pos )
> +    {
> +        struct arch_msix *msix = xzalloc(struct arch_msix);
> +        uint16_t ctrl;
> +
> +        if ( !msix )
> +            return -ENOMEM;
> +
> +        spin_lock_init(&msix->table_lock);
> +
> +        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
> +        msix->nr_entries = msix_table_size(ctrl);
> +
> +        pdev->msix = msix;
> +    }
> +
> +    return 0;
> +}
> +
> +void pdev_msi_deinit(struct pci_dev *pdev)
> +{
> +    XFREE(pdev->msix);
> +}
> +
>  int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
>  {
>      int rc;
> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> index 298be21b5b..b1e3c711ad 100644
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -314,6 +314,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
>  {
>      struct pci_dev *pdev;
>      unsigned int pos;
> +    int rc;
>  
>      list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
>          if ( pdev->bus == bus && pdev->devfn == devfn )
> @@ -327,35 +328,12 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
>      *((u8*) &pdev->bus) = bus;
>      *((u8*) &pdev->devfn) = devfn;
>      pdev->domain = NULL;
> -    INIT_LIST_HEAD(&pdev->msi_list);
> -
> -    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
> -                              PCI_CAP_ID_MSI);
> -    if ( pos )
> -    {
> -        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
>  
> -        pdev->msi_maxvec = multi_msi_capable(ctrl);
> -    }
> -
> -    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
> -                              PCI_CAP_ID_MSIX);
> -    if ( pos )
> +    rc = pdev_msi_init(pdev);
> +    if ( rc )
>      {
> -        struct arch_msix *msix = xzalloc(struct arch_msix);
> -        uint16_t ctrl;
> -
> -        if ( !msix )
> -        {
> -            xfree(pdev);
> -            return NULL;
> -        }
> -        spin_lock_init(&msix->table_lock);
> -
> -        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
> -        msix->nr_entries = msix_table_size(ctrl);
> -
> -        pdev->msix = msix;
> +        XFREE(pdev);

There's no need to use XFREE here, plain xfree is fine since pdev is a
local variable so makes no sense to assign to NULL before returning.

> +        return NULL;
>      }
>  
>      list_add(&pdev->alldevs_list, &pseg->alldevs_list);
> @@ -449,7 +427,7 @@ static void free_pdev(struct pci_seg *pseg, struct pci_dev *pdev)
>      }
>  
>      list_del(&pdev->alldevs_list);
> -    xfree(pdev->msix);
> +    pdev_msi_deinit(pdev);
>      xfree(pdev);
>  }
>  
> diff --git a/xen/include/xen/msi-intercept.h b/xen/include/xen/msi-intercept.h
> index 77c105e286..38ff7a09e1 100644
> --- a/xen/include/xen/msi-intercept.h
> +++ b/xen/include/xen/msi-intercept.h
> @@ -21,16 +21,23 @@
>  
>  #include <asm/msi.h>
>  
> +int pdev_msi_init(struct pci_dev *pdev);
> +void pdev_msi_deinit(struct pci_dev *pdev);
>  int pdev_msix_assign(struct domain *d, struct pci_dev *pdev);
>  void pdev_dump_msi(const struct pci_dev *pdev);
>  
>  #else /* !CONFIG_PCI_MSI_INTERCEPT */
> +static inline int pdev_msi_init(struct pci_dev *pdev)
> +{
> +    return 0;
> +}
>  
>  static inline int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
>  {
>      return 0;
>  }
>  
> +static inline void pdev_msi_deinit(struct pci_dev *pdev) {}
>  static inline void pdev_dump_msi(const struct pci_dev *pdev) {}
>  static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
>  
> diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
> index 8e3d4d9454..f5b57270be 100644
> --- a/xen/include/xen/pci.h
> +++ b/xen/include/xen/pci.h
> @@ -79,10 +79,6 @@ struct pci_dev {
>      struct list_head alldevs_list;
>      struct list_head domain_list;
>  
> -    struct list_head msi_list;
> -
> -    struct arch_msix *msix;
> -
>      struct domain *domain;
>  
>      const union {
> @@ -94,7 +90,14 @@ struct pci_dev {
>          pci_sbdf_t sbdf;
>      };
>  
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
> +    struct list_head msi_list;
> +
> +    struct arch_msix *msix;
> +
>      uint8_t msi_maxvec;
> +#endif

This seems to introduce some padding between the sbdf and the msi_list
field. I guess that's better than having two different
CONFIG_PCI_MSI_INTERCEPT guarded regions?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 11:10:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 11:10:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119239.225657 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbi5S-0003HO-WD; Wed, 28 Apr 2021 11:10:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119239.225657; Wed, 28 Apr 2021 11: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 1lbi5S-0003HH-Sa; Wed, 28 Apr 2021 11:10:34 +0000
Received: by outflank-mailman (input) for mailman id 119239;
 Wed, 28 Apr 2021 11:10:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=X8fo=JZ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbi5R-0003HC-Fv
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 11:10:33 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ecbaf8c1-15ec-47c2-9c08-6382afc4204e;
 Wed, 28 Apr 2021 11:10: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: ecbaf8c1-15ec-47c2-9c08-6382afc4204e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619608232;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=BJVMstSmdT9cBJonoVkZZzlvQ+PVVaGm1iirV4qXqBY=;
  b=WPPYrIFTOzluqYNgKbJ0ipnGcvD1AZnMMYc0z9+ls2WVbYVwgaSB0fZl
   qsr/FEm4Q4BIzEMPfXwP5/eunF4804eF/3lxUVJW3Rm+he4gN7WnHuTs9
   va2T4eEOYoN0Kfc5zDSAyFaQmyPrdoRbHxDNhszD4mYMH2PrRNayWovX4
   g=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=hardfail (body hash did not verify [final]) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 5DV938n/vaVp8JZoFAnaL+dwDy0ut0DOLIxi8KMCVvSyUfl1aS9glQqLLR58wAiJecKw3bxFQq
 a1ijpR1+lCUe+1+h7zPjsq+McfqFaq2sa11MpqORq+E9mMKgYmKhh6Ls4tcC/eelVJH0go9nIC
 q1U4ErRF/rwpn0nnGmgxP5SGOk6Iolz6Zp4UaXRIK3RshcxWvtPbfW4DANxPxxZrPrsMoG4fJT
 GsmfpgZyHcsKAg5F1OOh+T92usoESRe9VuSgmuGTld3Y8nOMi3UcCBckrNJ4XpSs7U/Qk+vMzi
 rG0=
X-SBRS: 5.1
X-MesageID: 42606162
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:gI2lDKkgWeh7azk2/LTMUHN6LsbpDfOnj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN+AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 hdWoBEIpnLAVB+5PyX3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0YNi+wOCRNNW57LLA+E4
 eR4dcCgjKmd2geYMjTPAh6Y8HoodrXmJX6JSMcDxk85wWUyR+u4rj2Ex+Xty1uLA9n67Ek7G
 TDjkjF9ryu2svLtiP0+k3yy9BtmNXnwsZeH8DksKkoAxjllwrAXvUbZ5SspzYwydvfkWoCsN
 6JmBs4OtQ21nW5RBDJnTLI+y3NlAkj8GXjz1jwuwqQneXcSCghA8RMwaJ1GyGpk3YIh9133K
 JV02/xjfM+Znms7UeNham9azhQmkW5unYkm+II5kYvN7c2U7NNsZcZuHpcDZZoJlOI1KkcDO
 JsAMvAjcwmFG+yUnaxhBgK/PWRRHgpWj+JTk8e0/blqQR+rTRSyksVw9EnhXEQ9J4xYIks3Z
 W1Do1Y0J5JVcMYdqR7GaMoRta2EHXERVb2PHuVOkmPLtBJB1v977rMpJkl7uCjf5IFiLM0hZ
 T6SVtd8Uo/YVjnB8Gi1IBCmyq9DlmVbHDI8IVz9pJ5srrzSP7AKiuYUm0jlMOmvrE2HtDbc+
 zbAuMUP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5urWN4zRsPDBevq7HsusLR8UHkfERl
 cTVjn6I8tNqmqxXGXjvRTXU3TxPmPl+5ZdF7Xb4vgzxIABOpYkiHlRtX2JouWwbRFSuK0/e0
 VzZJn9lLmgmGWw9WHUq0VlUyAtSnp90fHFaTdntAUKO0T7ffIooNOEY11f23OBO1taR8PSGw
 hPmkRv9cuMXtut7BFnL+jiHnORjnMVqn7PZYwbgLe/6cDsfY59KZo6RqprF0HuGwZukQhn7E
 dPATV0B3P3J3fLs+GInZYUDObQe51XmwGwO/NZrnrZqAG7vsEgRnwSWha0Ss6JiQMSRz5Z72
 cBsZM3sf6lo3KCOGE/iOM3PBlnc2KMGo9LCwyDecFpgLzxQRpxSm2LnDSerBk2dgPRhgMvr1
 2kCRfRVeDAA1JbtHwd9qrx6lt7el+QeF9KZmlgvZdwEnnHvXhPwfaGD5DDple5Wx8n+KUwIT
 vFaTwdLkdVy9e72AW8tRyCGX8lr69edND1PfAGSfX+y3mtIIqHmeU6BPdS5o9iL82rmPQMS/
 ijdwicKy7YB+sl1xeOnGssPDB5pRAf4KrV8SygyFL9+nExAfDfegs7A54aJsyR9GjiSbKj1o
 5jgdc8oOu3NSHQZ7e9uNfqRg8GDimWh2i8C9wMg9Rzm4kZsbNoBZnVUTfSzhh8rV4DBfaxsH
 lbebhx5bDKB5RmcMMTcR9I51ZBrqX5EGIb9ijNRtIkdV4jj3XnL8qEzrrBp70oGFCArmLLSB
 Ci2hwY2/fORC2Y07EGT4o2PGRNcUA5gU4Ssd+qRsn1CA+wcftE80f/GnihcKVFQKzAPbkLtB
 5175WpmOCQHhCIlDz4jH9eIqhU9XygTt73KAWQGfRQ+9j/AG+yuMKRkYaOpQaybyC6ZUQejZ
 BEckJVTv0rsEhSsKQHlg6oSqL2pUo5lUB5+j8PrC+05rSb
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42606162"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kOEz9NRafsamUc4LN1W0I6pjHgqsQNf5twiVg+F3uCPhDrLvh8vhciYgTyFclh40xjsj1C2FTk8mg9hu7sv6SUv/Ewf6dDpLZgQ7VgfhHaOQ2vLuLH5rOcBaPnW6DcjxlwrrgR6X64Xd9q33KfxhHUERsc5OQSiQc+F55k/gtKhDk1RVWGdwZ9+SPPbc8AlWgNJELjIud9BWGMqAJgoOoAxfRsVr4zhJNOEwufjJRTqw1Syw7CMIAbQ4PhVy8BuV2jcmRhS9NG2AaLOsRTWje8ShACyFIRNOM97HLIxyMJju9+Bp2vPUvwyxpHL/TvurMSW4Ozq2+oUA8ZUonQswTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nF5Z5XFVP+34JlH6bPaU+/FlpvrsSKOTrIb97eHbun8=;
 b=O2ataJVEtkQJM+/heBU+8KmPFAk9mfDmXaYuUtr4KekpDvDTy3313rI5NevIf0ZySEed8QkIGJL0jKaWEPyfDw1tyw03wLWZZ0l8U25QLKmprnv7RMfmmFcYqQsiEIBIR5JtwqUk5n6EHaYmy6qacFEKQAPKDniDCRIx4F+APjHbAW+B/4iZc/6qre/jCAaydhOK90mXXbD+LG737agcLHFctzoy0azDeMhuGzeiQh22I52vl4vWE1SUUHXq7usBgIOLbkH1zT7BPKLAr2z/MdVPtqxrOAmPAJl1+91Y7rj4P/oWbO3ASGUsKvbkDG6UXm3hc0LvRp6ZXbRVmjkPOw==
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=nF5Z5XFVP+34JlH6bPaU+/FlpvrsSKOTrIb97eHbun8=;
 b=I36W5zw9JkGSfBbx8ughpCemxa1j3pa5lAq/iXpCZqwtvZBWad0nE2AJiq24D6rYZqvvUoiRvYxYSHikzw2vAdRtBt1+H/scgOEjxrBdSO5xQERvAow1mK6Iu8LLnk+jl9UHUc0J6PFahGw9JGkUR2KfLqwxRIjuOxm6en4zCrU=
Subject: Re: obtain a list of granttable PFNs from toolstack
To: Olaf Hering <olaf@aepfle.de>, Jan Beulich <jbeulich@suse.com>
CC: <xen-devel@lists.xenproject.org>
References: <20210428095049.14a8272b.olaf@aepfle.de>
 <8427397f-0953-94df-04f6-8dfe2a4ceee8@suse.com>
 <20210428121701.3272b369.olaf@aepfle.de>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <244fb189-c740-7625-3242-568d82bc394c@citrix.com>
Date: Wed, 28 Apr 2021 12:10:11 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210428121701.3272b369.olaf@aepfle.de>
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0193.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:9e::13) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: bd6b0c6e-a274-4bee-3aa8-08d90a363433
X-MS-TrafficTypeDiagnostic: BYAPR03MB4120:
X-Microsoft-Antispam-PRVS: <BYAPR03MB4120C29B59501B3DA80D1FC3BA409@BYAPR03MB4120.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5797;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: eubCEpifcQpHJNsFvSy7EpyX6Ekad2zgrh8cFcvzmXnkh6VINvhZkSsNksys57iTpbShEjS7MUgg2D4qK8JQjyLs+QxQB5KTDsqwPEsOXLnh8sutRAOuGpBt7ij5lN4pbO9Kf+bm1oLuBSLuyAOyL4hzaO42W+roEAXyrr5270VXLdnRfHykDH/moq1068K+VHw2ap1mbx9qonHtFnckJ47opgLyJAfUH4L/eJnZV7H7xn4wia0YczJFRPSUxx1ZfmAZlSl46mqlB9X9S7HgR8mQ6b48d8CQy/CA+wEKlIez3nPMSRUjQ0FP2qvtQKVvqG3PbTLWaZooLve55hG06OMNqw389eTdlS+FahzzRI+++wfJl6HL3hzsNbtiAvudFQJ5lIwOz8RZ91ExNfVnRweUAd0lFvGIJacbnpP7UXWhLq0OenKhb+HcXIaPiVFbzbVTJUizKM3SBh1eQ1GfjaBJCqMp8OWcQuu4Du4FDTiTElMH6yu7mH/9OasVz45NrBTrJoXxWmKM8HuMR3VLSBQzt3wANASxl/BwZK9euGI4TQsPccZ0BzZ2Sk9Li4mIAu1N+f4cEWAK5mdW0QvzqgsnnS1qdiY9EdyhhZO2iZaYQ7fFrR+OuHwOZ8F5+HfvyOhULS/z05ktcjmPwmCp8A46dYrAw5sFS2N9w/QcJoH72MJh9Mjil80lEhUktj9f
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(136003)(366004)(39860400002)(346002)(376002)(31686004)(478600001)(53546011)(316002)(8936002)(8676002)(956004)(6486002)(16576012)(66476007)(5660300002)(4326008)(2616005)(38100700002)(4744005)(26005)(83380400001)(2906002)(110136005)(6666004)(186003)(31696002)(66946007)(36756003)(16526019)(86362001)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?Windows-1252?Q?Ned07F3XfQlyKQ6h7oLMpoImlnxOVhYIsrl1l5lisoKlTzjntcvDef49?=
 =?Windows-1252?Q?MhiKP0hpscNcKnzVSKVSuRmLAKmubOJniYbMemiSsJKE13Y5KcMJPTsZ?=
 =?Windows-1252?Q?sn/MO6CyotJ0snxm6v15Gh6abplQE6DOTCytVmROwxwlaM3cEraBfbNG?=
 =?Windows-1252?Q?z6w12rBrXO86tt/k97dpewhss7MsWhNTvKr+J/od1R6ccCnqswIzwIrT?=
 =?Windows-1252?Q?7Gazi3ltJj5wbKo2MT2wjJiSdPkg8LbOCuLbATDSdHynEKx1Io3wKXx3?=
 =?Windows-1252?Q?/6heBzMOgSZn8jaJE7CHqJ2OqBE2kVwAIaVr4vCboOUnJpi8ATkuzm5R?=
 =?Windows-1252?Q?r7aofHv3RkhpVRy+p5XJu8JwGs97szQ0DaD01XUnj/mZHme85rD3u/QP?=
 =?Windows-1252?Q?mfabkappuCkzAQSa5L7f5fPY+NDyOca7VRepkCafPv20pdkVuJHHbdnJ?=
 =?Windows-1252?Q?Vj4hV62BO6/83SS8vdVwRrn2KMnzowDm/LySYzxtn1ghfFnALfSDAnYB?=
 =?Windows-1252?Q?ah9KH0EzK7DFYwKm65dD7w0LysC5yaZ7ozguPpA88aYn63eN4CvvGOtp?=
 =?Windows-1252?Q?rOy45njK7JuYDdhxdv+HV5tY6V0JHmQ5PacBkpi8ZxjxknNrQzCWTgFJ?=
 =?Windows-1252?Q?OQVXkOZqcHDqwuez047XU5fM0vWQMCo/YVbToWVqJic3DZQZty54xI8j?=
 =?Windows-1252?Q?ubtzVFxYC9nssNEmneB15yoCXZoEsWsuyNTg3KLCO3HjCh6hPZiPTH5a?=
 =?Windows-1252?Q?WMwtiw67AacMwJVemhAQL0Pi08DJJGPbW6Rs71hleLPrGdtl8vBqiFtj?=
 =?Windows-1252?Q?esv18DBJWPVYe08WZo+EyFR9SX2A0dxVyiWzVQ45E59aVeSoymy+kZky?=
 =?Windows-1252?Q?ddHtMrWtTKejsAYi8TCvkdQsd5waen+1ei60YLQf8UNWclWKQzR0U3Qv?=
 =?Windows-1252?Q?CEQL7dfLGZ11pzdftAACQbFtTA8X9bR/yZ2rGWWP/gwWGERNCbs2LLJz?=
 =?Windows-1252?Q?J9C/EGySyAauWuRYr0WIgtwq1Stbo4Tx2Vp3NDWc5tp/OQTksYycERZ6?=
 =?Windows-1252?Q?b3yWjOrGankma67q8GbbsDJb55wlgMxQHOwQI5fSlWrhpA33eJQqyqIq?=
 =?Windows-1252?Q?gMwnrH/CwyrXfTnJ7s0BlBdyyyCPB2e968zP9Z3qENhwTAa7Qcq78zrv?=
 =?Windows-1252?Q?yxDhjx8gXY4pPtPA7LuZqrdXn7iGwxNV2/HcUYZPFvXaQRt4wXBPM1FW?=
 =?Windows-1252?Q?gzwz3piigtToz6r/3WTovlWTURNE0qEwBP+M0Zr72vEWaEKzv5/392GZ?=
 =?Windows-1252?Q?7ai+msbTl7Y77RWAWPLTRMGOENOr9W7l8sjTmEPk6kI9P3jlbkM2EMYI?=
 =?Windows-1252?Q?LvYmBBCee1QZrQztEjmwvRy4c5efC39kb/VFeZbe45gobadTOcnkBkf/?=
X-MS-Exchange-CrossTenant-Network-Message-Id: bd6b0c6e-a274-4bee-3aa8-08d90a363433
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 11:10:17.1929
 (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: Iw4YXXeo6nl5J7DhlguUpiIh4tXHNv6j3ByWgs5KCtBYOzWpqA1yAewdoaSJA9HtYj0QG/5G65otKCP3sA8YfL3rMa4for413SWtyyblJYU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4120
X-OriginatorOrg: citrix.com

On 28/04/2021 11:17, Olaf Hering wrote:
> Am Wed, 28 Apr 2021 11:49:59 +0200
> schrieb Jan Beulich <jbeulich@suse.com>:
>
>> On 28.04.2021 09:50, Olaf Hering wrote:
>>> Is there an API to get a list of PFNs which are currently being active in the grant table for a given domid?  
>> Do you really mean PFNs?
> The save/restore code uses the term "pfn" to refer to page indices from the domU point of view. Since I usually just follow the HVM code paths, the term might indeed be incorrect for PV.

pfn's is correct here. The migration logic tracks dirty pages in the
same address space as Xen's logdirty bitmap.

For HVM guests, this is ==gfn.

For PV guests, this is the guest's logical idea of its physmap layout,
as written in the M2P, and specifically not mfn/gfn's.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 11:44:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 11:44:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119262.225671 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbibl-0005xM-Lb; Wed, 28 Apr 2021 11:43:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119262.225671; Wed, 28 Apr 2021 11:43: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 1lbibl-0005xF-IX; Wed, 28 Apr 2021 11:43:57 +0000
Received: by outflank-mailman (input) for mailman id 119262;
 Wed, 28 Apr 2021 11:43:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=X8fo=JZ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbibk-0005xA-74
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 11:43:56 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 02dbc3f1-84c9-4055-8c0e-8f80552a42a4;
 Wed, 28 Apr 2021 11:43: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: 02dbc3f1-84c9-4055-8c0e-8f80552a42a4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619610234;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=jN+ndvN9/DrxVG3muYUg2aYVO7Vk22ndV6F7PGNQf7A=;
  b=QESqDbc9tjyhr/A+Lpbi6boxW91dOzahwfNsBNt8mDEsDzxIUec+7inX
   P2wuepDmjhEyu2vihpoX3JUuP0MaW/0OlakTdSwUgFBbZ1OAcIhfyiGMR
   oVUMJ3iEpmSa4xhhb4ZrucJrj2vK9nJSJxU56BY+HfNolAlVDqJYn/dsa
   s=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: T5HGxE53Z6Z6jB55asCXhL1K51fCaAxt8eVcYKjtZfusPHPnULYk30waoNzNuDUqdXhxr7dBWI
 pb5pDi7V8bjd2EtvtwEgRqeMd7Pu2agAaPqWZuJEqN/C2tl0bbsAdFHbj0vGCqT+eR6uqpWeB1
 RGiDwbnZtm8I1bMyNh+GAoYopC0Cosip+YuyBaf5ZEPB4f50W+iH2j6LnpXs/mf+oVOjaoDspU
 4VVpgQYp1jB2kZm+a1i5V2zacOoZsK9S7TdoxkQvG1js9o3BTNy0K8fOhEFfEhRFOIfLjYOzYU
 vsE=
X-SBRS: 5.1
X-MesageID: 42607899
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:8csJfampuHVYFjbIsYN24p9amh/pDfP+imdD5ilNYBxZY6Wkvu
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKMaVI3DYCDNvmy0IIZ+qbbz2jGIIVybysdx94
 dFN5J/Btr5EERgga/BijWQPt48zLC8n5yAqvzZyx5WIz1CT4FFw0NHBh2AEktwLTM2YKYRMJ
 aH/MJIq36BVB0sH6eGL0IIVeTCuNHH/aiOCXI7LiUq9RWUineQ4KP6eiLy4j4lTzhNzb0+mF
 K18TDR26PLiZCG4y6Z7UD/xdB8mNztytxMbfb89/Q9G3HXpSuDIKhkU72GljgprO+o80ZCqq
 ixnz4Qe/5dxlmUUmapoQb8+wSI6kdQ11bSjWW2rFGmgcvlSCk0A8BM7LgpDCfx2g4bk/xXlI
 dotljp0KZ/PFf7swnWo+XsbVVMkHG5pHIz+NRj9EB3YM8lR5J66bAE8Fg9KuZnIAvKrLoJPc
 NJF8/m6PNfYTqhHgrkl1gq+tCqU3gpdy32O3Qqi4iQ2zhSqnhz01EV8swZhmsB75IwUfB/lp
 z5Dpg=
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42607899"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Mgc9hEZ53b1cb7EDcyd51+epUwxeZhb8ujg7RMjPkmcokANO6JoGRND2L2Mump231TIgmuNwXCHPsqFd6Hw48KTakhbkzG2BzXsm0viwTqkkUM/ZcQut+aYqQ2niV8wq74tTV1dvsgnxwl5+tmO9xYnaT2YfgriqPf/ArbbD2UNGq/NQqOnYkYfNb60AzNXYXpq4i3b0jHHdaYR7BLRmMXn3Bcon1q78aPualh+OxXNnJMz09tVB1tunpjYIj1H/0lC8PjZ591k3HqjOHjbSMs7YzyGLaVCTPgDqdt2YqFjxvoQjax9p8quDaDzv823mieIuzJ84LRY2DChIYEWTAg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jN+ndvN9/DrxVG3muYUg2aYVO7Vk22ndV6F7PGNQf7A=;
 b=hC3z6p/ZejZ2mYpOBklLJzdxtkVx03r/oR1xDZAymx33XTYYCvehAW6geT89AMS0DzXNJDDqs38ZYLdL6cwjz5q05t2fQeVn2HMhJlQXcss4LFy2YBD7rvBUIIu+Xxv/TU/M7A1ZgsqAailSBx6wr9YIlnxoAh2qtn6XiZdTyvdlL1i0YBWycLO93ig2Qlajz2dalTA/gyk6NS9uUjEDggQdNtZ6BwjN9dIOyZord9DXzVchl47Tx+qe7pZ3fq5uu/BRVVba2etNeWV7kUSWVb6tXd83YdRFkY9rlEMJH7zAfPssgzxJwjSkwbjKYdAadp6YhvjetxYs9EKy9nZKtg==
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=jN+ndvN9/DrxVG3muYUg2aYVO7Vk22ndV6F7PGNQf7A=;
 b=raA3m8IAVABFRSqy6GP0mJyojyiVDxWe4C+Gb9qOn2U0pLR4SgV/1Z4X8emwq60VPOW8AsSHwS7FkpVO9TmTLmLnwP1wveGGJUj5yHLdAjQEzhkkUrbYo1BFiLGF4Ts0rUWeSUZb3EYmJ34sISUAySwOvx7Hufw/jDZgvJL88sE=
To: Olaf Hering <olaf@aepfle.de>, Jan Beulich <jbeulich@suse.com>
CC: <xen-devel@lists.xenproject.org>
References: <20210428095049.14a8272b.olaf@aepfle.de>
 <8427397f-0953-94df-04f6-8dfe2a4ceee8@suse.com>
 <20210428121701.3272b369.olaf@aepfle.de>
 <d508af0b-dd4a-7c13-f33e-bc60a4fb7272@suse.com>
 <20210428130346.2477ffda.olaf@aepfle.de>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: obtain a list of granttable PFNs from toolstack
Message-ID: <efef0c49-aa39-8df2-4f0c-2b4f86795956@citrix.com>
Date: Wed, 28 Apr 2021 12:43:45 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <20210428130346.2477ffda.olaf@aepfle.de>
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0031.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:151::18) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 844a4a75-82a9-4283-9cff-08d90a3ae498
X-MS-TrafficTypeDiagnostic: BY5PR03MB5032:
X-Microsoft-Antispam-PRVS: <BY5PR03MB5032A44B01EA6F9C2C0430CCBA409@BY5PR03MB5032.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: R/D36/4jZa15FkXzPn6auJUDvsn96WpYrIrma53wXyNc9je1IyKtGONgVem4S6WzYHuqmtXlE2wjc7KOSSmLxjtfLvTZH0/I4DGNUoVutUySRovmB2NyIMLKL18kfiyyb5Szit2V0YYGPI7GZ5diAaEO86PMCzckrFvHJ0jg7ZB1VGEhnI8nErn2QyVkJgRqG7PAiuyt+Q/120i93QYdRbWVWrk8F5TfrEJsULMGj8st0WU2DHKAIKorew/iFGZ9NZtnffWMKdkbQCfx02iyMrrcPLT4w+FVRRucXTADTusNDBbdKlol4eSW4AMQ0xYUt+TD+SWmw24o58RTAJDGuPzl9BLz9OHm1q23AxkET1row0vcYavrwgCrYxTYIn/lqnvlZstAkomu8wyFjweCvAG5htNrv2X2/76u+uOMYOLGe7+V3locMUPMilPYZGIfjd4eR/udRgDJse1hCeCAC3z7I/6OE95m3xLzn0UFEsWeAT8J5iHKbIuTtMxvxlqg/Lpc1gmZZ1z+tvEYsuX5IWcwGqbsE2tYVkdaQc1Y9WlhqVdlZcAot8Y1HJ/KPzddGVXvA48qXcS68BMXs6E/fDBqcNT+u9wyTOha2gck2W49hJypIofhNg6VkTwRHVri7xy7BmwWfMb/DSHz43jI2dMY4ezm9yuu5OZgaL9/2xn1ZgjcHzqxXSCFWDq7rATR
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(366004)(136003)(376002)(396003)(346002)(53546011)(6666004)(16576012)(83380400001)(2906002)(6486002)(186003)(16526019)(36756003)(26005)(86362001)(316002)(4326008)(110136005)(2616005)(66946007)(956004)(5660300002)(8676002)(66476007)(66556008)(31686004)(31696002)(8936002)(38100700002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?Windows-1252?Q?xtLn9mTnkSDizUjznTdJGs0sSlqOVRudNbB+FGs0KB9FHdOu1RQzGHVp?=
 =?Windows-1252?Q?be+cwEdYOi3Kw89xj7ORNYry6gYxs/qnwDxcvfcxBgT0V/yM4GdJA29r?=
 =?Windows-1252?Q?kkz6cTYq8W6jqaBWe4PGbgvuTdiHtbiNFAmGMbT8cGdkAzp4x59ZzZe3?=
 =?Windows-1252?Q?CRtogvorvJErhoExYdO0Gf2xenaKpxTqoRqfNO68cHHYWTwocmKv3YT2?=
 =?Windows-1252?Q?fCYrnCghWs4Ycxi3jHaJGMoqe6x8wlAv6GxEoRbrOr8rZv6uIwcCDQHo?=
 =?Windows-1252?Q?xpv1C75c1ElWSWk9//N6eZSK4F58GFFeJLXXlB39+OhMVOgSfrDqUceq?=
 =?Windows-1252?Q?M64P8TVFMvuSjh1XmqXip7zIEry7WgX8g4UZCd/dsTmXvf4PcGmNRd9Z?=
 =?Windows-1252?Q?rZ49Tfb09kje2M8v14Ci0PaR5kpqabtllBaym6Z7Qvc/Q0KIwhvQUZcO?=
 =?Windows-1252?Q?eMIzo2w3k4JVaIc/GEObkTHnUW5JI4eSWxxwIpDsaWfEXRTpS9e4tRGN?=
 =?Windows-1252?Q?I7Pv/nAYtMz/br47zFIdFCLmXMDRO4lx+BjsMwJALcN4AHEHl/EQvOvw?=
 =?Windows-1252?Q?nYIQke43CfGovGhUCC+u3c5f/g4T0nBpoQa+rCWy2VG2J56/tlBFRA0O?=
 =?Windows-1252?Q?J0c0H13SDBaP4Li8vQNJ6FQm3vqc5W/Q3mjpW2XaKLdpDLypOoKPwCTG?=
 =?Windows-1252?Q?Uzr/WKC5LBCWtiOHQHC9Re8dQszMitrC0u/6iV/xgnW+T9ep7COTWxOB?=
 =?Windows-1252?Q?oDhnRRZnLuN50VlGxAo2tRTu0h/5+hhHSD8jP/X2Pmo77uZdz54OIYbn?=
 =?Windows-1252?Q?ApaR5lTp6fZ6dWpwN8ZwfmNLwXpdndqIRY6LPCRFBLbqo5izYwIJWBKK?=
 =?Windows-1252?Q?KFBpzh3gQXyadmheVxN4AB7UjceedVdy+h1lzeF1Z4+J3aQfjS01p0Wt?=
 =?Windows-1252?Q?cLb7B9panjpIM+3TVPE9Hht3n7/hhX+Hmp4x5OPqVJGN06mUyTycXwNq?=
 =?Windows-1252?Q?4Vskx1YCjuzr4HL466qDJJjikEn2fhkxIeQmVcZDOk1pLc0tRKigS3Ot?=
 =?Windows-1252?Q?X7ajY7yepRaj9B5zM0MW02DTgI2NKgyz5m/qzppQ93B6h/rcqoNQQCJ3?=
 =?Windows-1252?Q?+DJuP42VjTZLEZI7UGUeASkSekBSDA/i9kbHLOnUTVsb+ewp8v60A68Z?=
 =?Windows-1252?Q?V7B/nJccldfJXmWVTjNSFIXKy9wGQ6qH3U+1a6AKDOiIJOxZ7WMINHA5?=
 =?Windows-1252?Q?wnlF8PgCDve7sSxtFcs+DUGX8FEVVbu94LIA6+69CeBPUPNGuMmIJwaO?=
 =?Windows-1252?Q?AKu/M3zzO39nsezylnJRqUbyyBTaw0U7W0dnJIdQ8TElBsVz7PQ8Bsny?=
 =?Windows-1252?Q?D20G9Mcxrui/j3LNzfpugi6BwvQoAa4S/ljvapCdlSBbkLdZbb9tUdS1?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 844a4a75-82a9-4283-9cff-08d90a3ae498
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 11:43:51.1542
 (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: hZ3TlqgNo8kVTYsrMWrWiuH9s/fZcwU4q635ZnIiFsMal3hnDLYSxSc1zbPwVbGdIXGgDLX2Ib3PKY+kPesEJgt7apMKHA6BhgTGDlA2aCw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5032
X-OriginatorOrg: citrix.com

On 28/04/2021 12:03, Olaf Hering wrote:
> Am Wed, 28 Apr 2021 12:42:54 +0200
> schrieb Jan Beulich <jbeulich@suse.com>:
>
>> It might help if you would outline what you're actually after by
>> knowing a domain's active grants.
> There is REC_TYPE_VERIFY, which will re-transmit all memory of a paused d=
omU and compare what was previously transferred. Last time I used it a larg=
e number of pages are different. I did not spent time to dig further into i=
t, what pfns are affected, how the pages differ. I suspect the backends do =
still write into the granted pages, hence the question.
>
> I think the domU may undo all grants during its suspend anyway, that is s=
omething to explore as well.

Grants are not properly accounted for in the logdirty bitmap, because
they're not unmapped during the final phase.

This came as an unexpected surprise when I was doing migration v2.=A0 You
really will see `--debug` identify dirty frames, but its "fine", allegedly.

The reason is that frontends and backends can't disconnect while the VM
is paused, and will continue to process outstanding IO.=A0 The reason this
doesn't explode on the destination is because the guest kernel replays
the command ring.

Disks get possibly re-issued read/writes.=A0 Networks really does drop
some to-guest packets, and may send duplicate to-host packets - TCP
handles this normal mechanisms, and UDP is UDP.=A0 Other PV protocols will
encounter similar problems.

I didn't get the impression that this behaviour was intentional in the
first place, and its certainly not something you'd deliberately design.=A0
It appears to have been a consequence of how PV guests evolved, where
kernel cooperation on migrate is mandatory, which caused kernel
cooperation to be mandatory for the paravirt driver pairs too.

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 11:51:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 11:51:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119268.225684 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbijA-0006sn-Fx; Wed, 28 Apr 2021 11:51:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119268.225684; Wed, 28 Apr 2021 11: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 1lbijA-0006sf-Ck; Wed, 28 Apr 2021 11:51:36 +0000
Received: by outflank-mailman (input) for mailman id 119268;
 Wed, 28 Apr 2021 11:51:34 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbij8-0006sa-GJ
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 11:51:34 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2ad4c323-b77e-4261-8136-367685e0c9f4;
 Wed, 28 Apr 2021 11:51:33 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id C6A0DB155;
 Wed, 28 Apr 2021 11:51: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: 2ad4c323-b77e-4261-8136-367685e0c9f4
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619610692; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=uocNQ6cVlsLNTMgKENbh5tUDcffYvr09JXYanuSOEyM=;
	b=NlIrLFBvMiLFrxUtWXs3jJFlzs9k0BpRnLfNGFtQulaC2oQx6/4MTgiblux7C+pH8P86y/
	iX/fkjP0r9tdOObgQ0ut5kjnupKOGVtMaFMWaHTnlGwb5eDa+1WPbLnxOa+6sqGyxSCa+s
	9cehRPeSTG4T7z7XYRNVyM3icSHYpLU=
Subject: Re: [PATCH 13/16] xen/page_alloc: add a path for xenheap when there
 is no direct map
To: Hongyan Xia <hx242@xen.org>
Cc: julien@xen.org, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1588278317.git.hongyxia@amazon.com>
 <32ae7c14babf7e78b60febb53095a74c5e865456.1588278317.git.hongyxia@amazon.com>
 <a1bd2c72-1310-f018-dda5-90521be03fe4@suse.com>
 <943480f695052163b540919c9c55655e5b4f741a.camel@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1edc8d66-ca10-8e90-d8e8-2e299ef715d7@suse.com>
Date: Wed, 28 Apr 2021 13:51:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <943480f695052163b540919c9c55655e5b4f741a.camel@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28.04.2021 13:04, Hongyan Xia wrote:
> On Thu, 2021-04-22 at 14:31 +0200, Jan Beulich wrote:
>> As I don't think we have many cases where code actually depends on
>> being able to apply __va() (or equivalent) to the address returned
>> from alloc_xenheap_pages(), I think this should instead involve
>> vmap(), with the vmap area drastically increased (perhaps taking all
>> of the space the direct map presently consumes). For any remaining
>> users of __va() or alike these should perhaps be converted into an
>> alias / derivation of vmap_to_{mfn,page}() then.
> 
> That's true, and this was my first implementation (and also Wei's
> original proposal) which worked okay. But, several problems got in the
> way.
> 
> 1. Partial unmap. Biggest offender is xmalloc which allocates and could
> then free part of it, which means we need to be able to partially unmap
> the region. vmap() does not support this.

If the direct map went fully away, and hence if Xen heap pages got
vmap()-ed, there's no reason to keep xmalloc() from forwarding to
vmalloc() instead of going this partial-unmap route.

> 2. Fast PA->VA. There is currently no way to go from PA to VA in
> vmapped pages, unless we somehow repurpose or add new fields in
> page_info. Also, VA->PA is possible but very slow now. There is not
> much PA->VA in the critical path but see 3.

There would better not be any PA->VA. Can you point out examples
where it would be hard to avoid using such? I also don't see the
connection to 3 - is EPT code using PA->VA a lot? p2m-ept.c does
not look to have a single use of __va() or ..._to_virt().

> 3. EPT. Mapping and unmapping EPT in HVM hypercalls and MMIO are so
> many and so slow that it is probably not possible to keep them as
> domheap pages due to the big performance drop after removing the direct
> map. If we move them to xenheap pages on vmap, then this depends on 2
> for page table walking.

See my proposal to defer unmapping of the domain's own pages
(and I would consider the p2m pages to be part of the domain's
ones for this purpose). In fact, since the p2m pages come from a
fixed, separate pool I wonder whether the entire pool couldn't
be mapped in e.g. the per-domain VA range.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 12:26:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 12:26:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119288.225702 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbjGQ-0001Ae-HP; Wed, 28 Apr 2021 12:25:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119288.225702; Wed, 28 Apr 2021 12:25:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbjGQ-0001AX-EI; Wed, 28 Apr 2021 12:25:58 +0000
Received: by outflank-mailman (input) for mailman id 119288;
 Wed, 28 Apr 2021 12:25:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=X8fo=JZ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbjGP-0001AS-9n
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 12:25:57 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8c24b0d9-5eb7-4c37-992c-9050b018786a;
 Wed, 28 Apr 2021 12:25: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: 8c24b0d9-5eb7-4c37-992c-9050b018786a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619612756;
  h=from:to:cc:references:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=3GSTP0sOz+gvVg67wg/hpzHOIkbb60iO32BepmLw2aE=;
  b=LelskdGV1MP8WZaBLqqr4eioCyo4vLzwQLRujNkFoi1vygzPrezUxT+S
   pVFUp5AztpTiQvwQGBb/8aw+VfyIhW9wPO7lCLBuJJNuGzXGs4gxC7Uyp
   os7/19gerRX9PdI7DGatsx+vmuIbEaw+2r2woqUAQY0zbSsNU6FIdeVXN
   g=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: NHe41w5qBUg2H+4UaymrR0r6Qe7L8yLGs+6CxN0RE2wtd5XFa/Ykzn3k+qaAFzSO7AySta7T0o
 Y+38oTmnulEBZXfZSHQfyt8NIh6FakOeQoMUGLBs0wDG+Kp4JyvxEfHAh06rRt7x8eSf9XK4m1
 usTDI1rWZcU+uWdE+ZF1sUOLrTeG9E65uGlh448Tm9ss9w9UIE60iGaOlQeII9j9TTBarnaPsP
 9BlD5nqAi6WGV/EoJ/bKsltGnoBqYS/uJ/ngi3HeL8t6QIJ0D4IuYFmmHdwV4NqnU7PVdFxt61
 /eI=
X-SBRS: 5.1
X-MesageID: 44105916
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Ocu9Ma9Ew2rvChj7DTBuk+FLdb1zdoIgy1knxilNYDReeMCAio
 SKlPMUyRf7hF8qKRcdsPqLUZPwMU/035hz/IUXIPOGVA7ppGOnIOhZnPLf6hfnHDDz8fMY6L
 d4f8FFeaHNJHVzkMqS2njbL/8O29+CmZrGuc7/yDNXQRhue+Vc6W5Ce2GmO2lXYCUDOpYjDp
 qb4aN81kWdUFAadN6yCHVAf8WrnayvqLvcbRQLBwEq5WC15FvCgtOXLzGi0hgTSD9Jy7s5mF
 K19zDR3LmpsP2w13bntlP70pVMlNPtjvtFCcCc4/JlSQnEtweyaIxtH4CFpTA+ydvO1H8Wlr
 D3zSsIDoBW0TfxdnvwiQbx0wPguQxek0PK+Bu9uz/fhuDXABg9ENFMgIpFdACx0TtagPhMlJ
 1z+wuixu5qJCKFox3Yo/TufVVQumSVhVZKq59gs1VvFbQmTPt+lqoixQd0Pf47bVHHwbFiL9
 BLSOD73ss+SyLqU1np+lZX5JiNZDATLjy8YmVqgL3h7xFm2E9B6w89/uJavlpozuNCd7B0o9
 v8FuBUsYsLdOMwQI5Hbd1xNvefGyjKWhLDMGWbPFThGuUGIhv22uTKyaRw+eXvYpsU1t8pnI
 nZOWkoyFIPRw==
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="44105916"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XwXvphdkGghxrO3pZ3vssAAKk4QJ7ZOTSZvQPngA9lo7y75Yum6AXeo+zUjpQXs/wvmQ819ZmizA88D8vmECz6kA8t8y4klXb7lNctmLBM7WP8asGRoUkAKpr3gwmw6QyU219aMdHp5eiUg7pmLvKbMDzk2bCiDyJgtAymwvEXv2MDWVajH1PexMApqldVCx+rezM/2hoo9jOabr8c9QzSvg4q0KUXKzPHbKSXEn9Ssx1gSFCZZ1I7of948znK8oAihN1musNj36ujQ4721WndmSovLb1AMz/iYmxkTe/wD0HuZ7g0MDz3E4mCVNF59DcGaVuplEdY64UVRw+p276A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3GSTP0sOz+gvVg67wg/hpzHOIkbb60iO32BepmLw2aE=;
 b=f+TE09p6mPeYFs8pQD42nQTR0CjY7VXae7jjhzIidEwvf18XjdS9AUHdXhSd8gnQGeDV165wnzGWsSgqBvMtnJqFF8TXMf1bzS9tPkO9oXK9EvpHov1eI/3vF6tAQcTviTNIA0iUTi4JmFmvawhGKQQsWYqIKPlLUI7NHdZce4FHHOGg4afdqEizmdA76J9LqN6SDzkd/ukxbptWn79zDZNt8TOzdZim6vFK3rRezatSXPrZ24QSsJTGtM3Ui1qFXs/hbMhVBBCfUIqusocl76gkhB7kQtgqg41om2xJWfOJ+JSP7zNCht/SulqSNkuLe/9omB0VAfaPdnsUKevpMg==
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=3GSTP0sOz+gvVg67wg/hpzHOIkbb60iO32BepmLw2aE=;
 b=a++ijO393Ki9Ka+ab+fP8UGepH/FrFzrjGQGdJfnjJ4VA4qUy879fsnAVoxslFa3BtgBqyrCeA0wxck0SI0omjq7xtkG1FzPJ162p5THQmTeGGScCIz/Jpx2YU+JmYeOzCfnt+5/KFW8BDfUyEXQovRq31hHmMzAHnybX1Spvnw=
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: =?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 <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <03630ebd-861e-b02c-e845-1e2324211562@suse.com>
 <3e5369d1-a6eb-92c4-868c-0b9d205aba7a@citrix.com>
Subject: Re: [PATCH 0/3] x86: Initial pieces for guest CET support
Message-ID: <d687a294-f0d8-62d0-12ac-2cb5582b8605@citrix.com>
Date: Wed, 28 Apr 2021 13:25:45 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <3e5369d1-a6eb-92c4-868c-0b9d205aba7a@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0514.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13b::21) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 121a52dd-e382-4451-de48-08d90a40c2d8
X-MS-TrafficTypeDiagnostic: BYAPR03MB4871:
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB487196E244D03110C3E05F4CBA409@BYAPR03MB4871.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: hmt5sKvl4lUBnAmzRhuLR+p+RhxMYzCelk3/LydoccZ5NvlOsKSKBu4MR0C8T1KFLappePJZndW9GhJg8M4E4TqKvRvEcMYrphNEtDz+lwAKl4YT+51R2pmXvksnFjx2OwVCoCXqwN/iZ5n3V0ksNc4QPwxlYf/nktj4tfvpT+xiuYsSGkuShr8If2r0m+uqbbXLE5jBDVK3JlJPyOWIQtoWvoolcoUZdfrvGn6vvAL/K3FXtJBxYctfDQzVkjAmIbIMkxtPk5kFmIGxI/HXTBW6aw8rOFcaN5UemfJEnk53WDWrSFoYgEArUovuvKTS8LM+ijtQQJW4hAkBxUsL85PA7ECqvYu2JTwTjvNuYc5VGRDRssXGvnbJ9dUsu5X/1bQeKHxe050gc1yD8Eaqb5lOiOwr/OWNcbSMAzrlvdjMsk3t8IWiGJaI1v3Ck/prZ7pz2pncztaIXPBgbxA31j/BcinyT2ip2ySL9i4v6fmPGizfz7F9jrEBZ1neTe0aOWIgHghUonyoKrm8gFJR0hIfY+WwmScWpCN48VK9Zqil0G3vE6b4QCKGFPnTNFLQBgWDxaTpKB091XVaDyTRwL6K441E5f76YCuft28sgFH7v6KF0PzTepaU+xossxdPT1Q1LoCwAwTP1I/fcn3y9Wj7SUCnEB9nU+uP/wg9V0Fl8MyeJDmPSf3W3lbVcTgX
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(31686004)(66946007)(66556008)(66476007)(5660300002)(36756003)(8676002)(186003)(54906003)(86362001)(6916009)(2906002)(38100700002)(16576012)(8936002)(83380400001)(4326008)(53546011)(2616005)(26005)(31696002)(16526019)(956004)(498600001)(6486002)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 121a52dd-e382-4451-de48-08d90a40c2d8
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 12:25:51.5121
 (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: vjLPqSxGQgzv6T0Jtp1eV/rzHhl66hl4YwRGkUouquXfC2Fw0Ljp0QKdhdtMA0A+sW6hyUWdJvGOFGw8ego1BzgzgA+pdtIXl4AgkSjfaiA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4871
X-OriginatorOrg: citrix.com

On 27/04/2021 11:13, Andrew Cooper wrote:
> There are 3 emulator complexities for shadow stack instructions.=C2=A0 SS=
P
> itself as a register, WRUSS no longer being CPL-based for
> user/supervisor, and the fact that RSTORSSP in particular uses an atomic
> block which microcode can express, but can't be encoded at an ISA
> level.=C2=A0 I've got no idea what to do about this last problem, because=
 we
> can't map the two guest frames and re-issue the instruction - the
> aliasing check on the tokens forces us to map the two frames in their
> correct linear addresses.

Actually, RSTORSSP isn't too difficult.=C2=A0 I'd mis-read the pseudocode.

The atomic block is a check&edit of the token on the remote stack (not
both stacks, as I'd mistakenly thought).=C2=A0 The purpose is to prevent tw=
o
concurrent RSTORSSP's moving two threads onto the same shadow stack.

Without microcode superpowers, the best we can do this with a read,
check, cmpxchg() loop.

The common case will be no conflict, as stack switching will be well
formed (outside of debugging).=C2=A0 Any conflict here from real code is
going to yield #GP/#CP on one of the threads participating, so in the
case of a conflict in the emulator, a likely consequence of the 2nd
iteration is going to be a hard failure.

That said, malicious cases within the guest, or from foreign mappings,
can cause the cmpxchg() loop to take an unbounded time, so after 3
retries or so, we need to escalate to vcpu_pause_all_except_self(), and
or the ARM stop_machine() big hammer.

I'm tempted to just throw #GP back after 3 retries.=C2=A0 Its potentially
non-architectural behaviour, but won't occur in non-malicious
circumstances, and all fallback mechanisms have system-wide implications
that we oughtn't to be bowing to in a malicious circumstance.

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 12:26:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 12:26:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119292.225714 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbjH1-0001Hf-Qo; Wed, 28 Apr 2021 12:26:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119292.225714; Wed, 28 Apr 2021 12:26: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 1lbjH1-0001HY-NS; Wed, 28 Apr 2021 12:26:35 +0000
Received: by outflank-mailman (input) for mailman id 119292;
 Wed, 28 Apr 2021 12:26:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IcpV=JZ=gmail.com=jandryuk@srs-us1.protection.inumbo.net>)
 id 1lbjH0-0001HR-8p
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 12:26:34 +0000
Received: from mail-lj1-x22a.google.com (unknown [2a00:1450:4864:20::22a])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3987e45e-254f-4eb9-9628-3c957a7cc58d;
 Wed, 28 Apr 2021 12:26:33 +0000 (UTC)
Received: by mail-lj1-x22a.google.com with SMTP id a5so35023280ljk.0
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 05:26: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: 3987e45e-254f-4eb9-9628-3c957a7cc58d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=cH1z0ZO0vxP1AJOT84VOmLj8IDaNqDd7p72bPEP7AIE=;
        b=qPoJ0us1yds5P3sKJsPmCd8Nsge7eoctespdJx62HnbD/3chtGa+mJsbagqejI6Gx4
         r1nLyeb+k3dSP2AiwBI+dF+AIDeHEqv5ItLRZ9/3HuvdJRBnBzj3Z2VvjpOBABnvh8Zf
         JpFmww8B3FXSKhxTtyndayb+aST3LQre9pnuPsQv512+owjU1cQgrNqwCE9oaCiwIVAh
         m2zTbRzHbXiLRjm+3akuKyHjmPdAL9V0gtyC5E+x62nRf0LZvpI5VuyTujPrAbGx1zSa
         mHDIXeaEX4/K/dHGyOddINyAzKxU25ryugyff2tC7KJujJLm5dR7ioyrT35rBmvExnOu
         n42w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=cH1z0ZO0vxP1AJOT84VOmLj8IDaNqDd7p72bPEP7AIE=;
        b=DYUJ7YiXIEGMlP/bxBtL0P0MzXP5qMytMO26jlgfzM4pG1DMe/z+I+5CYJQzO973Zg
         7lU8oCLGNO9dGmEkA135xOvZ/jWSbaJaB+QMUUuvx9ObVMWgzVDjVSPsJeIQg35tHGaY
         1slSxBn7dYVWvLe91RI2y6ZJocghufHd3CTOGsVDEyDqtv4B0UCcGqWQRBmNU/pg6AC6
         GCWCcDjWLIE7N8b6pNiSJ1PPF6fVe5+QOwBxXgkoFlPN5DrRXV3LEU3kyTNmQ8fn6LNE
         ADQjj68z3stls3zly63car51OFkbTjBLmmIiW4q2Y/u3gJS1mxQ8n70XT31BCYKnh8M/
         KxKg==
X-Gm-Message-State: AOAM5336o3SmNx+PaC0KP1+d0QYSmCBSI3r9orfKXG+A8notX/lEk22E
	6uUdSrzzJzwP326McV3OA3LktWGYMStzFxsENTQ=
X-Google-Smtp-Source: ABdhPJwEK31p2B5ntSQQROnQStfJ7NR5qcVMx4353F4fpnWsYEu+v3jB5fYHVNTPEAVrmXAHJo6xsh9QsoBtH1ZE7e8=
X-Received: by 2002:a2e:a309:: with SMTP id l9mr20077243lje.77.1619612792416;
 Wed, 28 Apr 2021 05:26:32 -0700 (PDT)
MIME-Version: 1.0
References: <cover.3a5d506462133586bd805b72a226916af6a33799.1619482896.git-series.marmarek@invisiblethingslab.com>
 <41538969-c59d-acc5-9eee-0dffca50d6ac@invisiblethingslab.com>
In-Reply-To: <41538969-c59d-acc5-9eee-0dffca50d6ac@invisiblethingslab.com>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Wed, 28 Apr 2021 08:26:20 -0400
Message-ID: <CAKf6xpvKFP6COEP+LBDHRe+MWy6rg=4YYO70rd7SU_96-FFY-Q@mail.gmail.com>
Subject: Re: [RFC PATCH 0/2] libxl: support common cases without block script
To: Demi Marie Obenour <demi@invisiblethingslab.com>
Cc: =?UTF-8?Q?Marek_Marczycowski=2DG=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
	Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, xen-devel <xen-devel@lists.xenproject.org>
Content-Type: text/plain; charset="UTF-8"

On Wed, Apr 28, 2021 at 3:00 AM Demi Marie Obenour
<demi@invisiblethingslab.com> wrote:
>
> When it comes to file-based block devices, the major difficulty is
> the extremely bad kernel API.  The only fully safe way to use loop
> devices is to use LOOP_CONFIGURE with LO_FLAGS_AUTOCLEAR and hold a
> file descriptor open to the device until another piece of code (either
> another userspace program or the kernel) has grabbed a reference to it.
> Everything else risks either using a freed loop device (that might now
> be attached to a different file) or risks leaking them on unclean exit.
> The only exception is if one can make certain assumptions, such as no
> other program freeing loop devices for the file in question.  This is
> a reasonable assumption for Qubes dom0, but neither for Qubes domU nor
> for Xen dom0 in general.  Nevertheless, this is effectively what the
> current block script does: if I understand the code correctly, there
> is a race where badly timed calls to losetup by another process could
> result in the block script freeing the wrong loop device.

I posted this a while ago, but didn't get any response:

https://lore.kernel.org/xen-devel/CAKf6xpv-U91nF2Fik7GRN3SFeOWWcdR5R+ZcK5fgojE+-D43sg@mail.gmail.com/

tl;dr: AFAICT, the block script check_sharing function doesn't work
for loop devices

Regards,
Jason


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 12:34:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 12:34:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119298.225726 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbjOc-0002DJ-KI; Wed, 28 Apr 2021 12:34:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119298.225726; Wed, 28 Apr 2021 12: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 1lbjOc-0002DC-Gl; Wed, 28 Apr 2021 12:34:26 +0000
Received: by outflank-mailman (input) for mailman id 119298;
 Wed, 28 Apr 2021 12:34:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cpBE=JZ=citrix.com=christian.lindig@srs-us1.protection.inumbo.net>)
 id 1lbjOb-0002D7-8S
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 12:34:25 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id e3eb5dce-1dae-4502-aac6-d8ce8114e22e;
 Wed, 28 Apr 2021 12:34: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: e3eb5dce-1dae-4502-aac6-d8ce8114e22e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619613263;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:mime-version;
  bh=Le0gWx7wut1Zo5pYM1/cp2biusyQgv5NLEq99iXwqWU=;
  b=gQ5tttRAZLcNzNvqMttZdMdG74FknhFYB2JHNZylTRXrCS+0+aulUQ9s
   CFE5XA1WClweo7I6e1pG64thz+vpbBogunPhId7qeSPOTngz8t/3sPySD
   1GFrFSbeiHdyzQxLWfoG3MGdxfyrkLt+oFwwLCBo6SHOUxiN46iHI0eZN
   A=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: LpTO5jvh/cL4D74N4pAi36XdNrdFUbK7kp5Wre2KoLKx+li4XtlXIMwNpNbYhdiEisKZ8k7Tmy
 w/a40u25EaJZbRM6wzk1UrriAJB5rGiadAeeEq1PBwOUtwW5Eo92+dUXrtuJAQLOtrsdGHfCFA
 NSWKAadbh6yGNPn/pMVYvNJm06ulC/48lDXcghh+c5zz9sDq83djdS8RxGWCooJLE+v4TjHYUn
 DKnbf6H9mIWeYW1CsDjNBm7ThmcDPMz0S2nu9yiyz/k7zwoy6iv8vUgioWpIifyUDUOmuxjmZ+
 zdA=
X-SBRS: 5.1
X-MesageID: 42596002
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Ehfs4a+V6LWpUkZLJJRuk+EKdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qH/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7H2vanrfAIcAFof4BSO5AnC1JfBDxOa0h0COgk/o4sKzG
 6tqW3Ez5Tmid6X4Fv212jf75NZ8eGRt+drNYi3peU+bhnpggasTox9V7OFpyBdmpDS1H8a1O
 Pijj1lE8Nv627AXmzdm2qT5yDQlAwAxlWn6ViEjWDtqcb0LQhKdfZptMZiXTbyr28D1esMt5
 5j7iaimLd8SS7kpmDb4ePFUhl7/3DE2kYKoKoooFF0FbcFZKQ5l/14wGplVK0uMQjd844dHO
 xnHKjnlYxrWGLfVXzfs2V1qebcJ0gbL1ODSkgGjMSfzyJbqnB/11cZ38wShB47heoAd6U=
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208,217";a="42596002"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fmCx9t94AonCMjKwhNnTODY3GV7HDcXu4nIiHvG/JZ+iqUuI/DlZlQfNqnTMHaBF/5hYRG1GQMACkwV5wGSi0LVYcLIB+KNBrdc0H+rdQ+8vATdj+mVIgiTTSQwNoaWXnTCsXYT816ytP1zepZ8DKl1bmrxww9xvn/3bCpfo/b4VTG65sC/yNK4FI2hxxf5mdUInpBqnNcDAe+2nBcO9akam5IEBNPMTI6QvR0mbwlsoAdry+OZzGcihNHjtu+EmyrViuePUAuFOXcLglPJhphHv5dhxAXbCdyNC/FVx8eqM9gaYr0T3VaEWkqSLf+d+vMY8NzPFxXht/eNL3iieyQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Le0gWx7wut1Zo5pYM1/cp2biusyQgv5NLEq99iXwqWU=;
 b=X7G651djLcO2DtDZdaAACWH0Hm5iw3VxT0v20jerT/jR9rV9vf93n3UUxJfpPEPWfYFh9Ddql7/AFPRmmYFMw9tYb5YuXbxrh0wQEEAH6mkOPvdRXPw400GzZX80HCw26ut/0BKKWlKO2paEl9bW0gzo/SybhWVRTQet+rJMXZGhoS+9GTc9NEe+BY2ooo5nlu4RMySOFqZ6BbZaJcTqeg2RcENILHmLurSoqC9GQbYvCdH4Y/eFvFX3qKEujVsRsenmb/jBRCYTCsFfH5LC0O7iALxvnIpzfvZPlqBI0hIs/61l6xKrs2jA5dAuPApLl7K9+XB0zJ8EuEy0b1Cepg==
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=Le0gWx7wut1Zo5pYM1/cp2biusyQgv5NLEq99iXwqWU=;
 b=B+Z/CNoXbvoESmmAlq2GezSrQT9C35hHpLfgREBSJ3nR9npYAdvfrg3AiL9djloONvE0upqJkK3pGJyk3bAl3dkPgWh95vDA5tJAjvdRPWnKa+9+YHncenMjtBLudfdSnXep7rTnXhaHZuY6ZNoRurqkwmYRUdXPcVbUAfXoTOw=
From: Christian Lindig <christian.lindig@citrix.com>
To: Costin Lupu <costin.lupu@cs.pub.ro>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Tim
 (Xen.org)" <tim@xen.org>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, David Scott <dave@recoil.org>
Subject: Re: [PATCH 0/5] Fix redefinition errors for toolstack libs
Thread-Topic: [PATCH 0/5] Fix redefinition errors for toolstack libs
Thread-Index: AQHXO12k0/hgjfv/3kiQm5n2yrTGaqrJ3uCA
Date: Wed, 28 Apr 2021 12:34:17 +0000
Message-ID: <AE965271-FE62-4EA7-91CC-F6438C34962A@citrix.com>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
In-Reply-To: <cover.1619524463.git.costin.lupu@cs.pub.ro>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3608.120.23.2.4)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: f53fd963-6f00-4709-c1d1-08d90a41f0d1
x-ms-traffictypediagnostic: MWHPR03MB2944:
x-ld-processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
x-microsoft-antispam-prvs: <MWHPR03MB2944F89F2A29F46D2ED5C3FAF6409@MWHPR03MB2944.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:7219;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: TOhLBpoEK/b69CuKTsjC8J10ZI9d4v9x16S0939kIoY8unC+mT6TAClnVpyfYHJ+ZHtzbv8bjYRF1zNhZxuKLw5NJO5L2mK5DzsQizyEXUv8XGas4Zq/OGsNIy2OwXAs2TDHU1mUjl7LBm/9UBJtGMvcb6lXLp9zPG11e7QxnCty+pSLiV5Rsq9/VyX0qnN1SmnqbTDjR2qyfIYDu7FRq5Z7DpW62sbgicKi2nR/EPOZOiMz+6piBu45FMjLrgCl5PYtIO6xRR3P6BLQavrK4ZxyA5rr7eAnmYjpVmBnyp1IUz1Ur89QEwYag2GIQ9gBieL2YeqRsgTwWq+OXgJ6alGA0nLWURGn1ao1M64iRl6sBKbobPY6NeA25BaPq/EQl3abYZ5a8/WgG9fqdn2wX9vXxP4fbXYU7eBD1riJ7wNL9MYYX3DgfvjGHoMwVHK/KPmm/3n4ZNqHOJ063SlLRrylNtfX+fj1zSoeUG0rUwd2FnkGGYNuVVIJWkf6nHPlMe1hJoSEpqcNK/FhGZ8IPBC81l505ZniwPkkMi5lLypUoXcYqrwaOq53i5E8mE37jdZPhYAA3JE5p9XWVPqjXcPZppOJ+wsmbtbw1er2xjiqPf2fJIItoHgNbPMbEu7CDaLww+4nrqxh2bgB3kxHlBB0pla4SHoS/9bUDlrZpFs=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR03MB2445.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(376002)(346002)(396003)(136003)(39860400002)(66946007)(316002)(478600001)(2616005)(66476007)(6916009)(33656002)(66556008)(66446008)(6512007)(64756008)(38100700002)(8936002)(53546011)(6486002)(2906002)(86362001)(54906003)(76116006)(26005)(44832011)(83380400001)(122000001)(6506007)(8676002)(36756003)(4326008)(5660300002)(91956017)(71200400001)(186003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: =?utf-8?B?aUdNTmNsMXBmSkpDaFNxeS9BSDhyRi85VUtPVTlRL3NaUE1abkcyRkIzSmt5?=
 =?utf-8?B?eWhPazZtMnh1RTJzeHdsYzlvYjJZL0xQeVFjRVMwajZDa3pOZ3k2bVArYXcy?=
 =?utf-8?B?WkJLVEZWRnRKUTRHa3ZuclFiV29EdE9RK2YydStoc21NVllmMWFIZjluVk82?=
 =?utf-8?B?UnlhL0gvV2czWnhlQ0pOQlVjeXYycUJqZEFHUG9kU0x4bituYVE5WGZCWmtK?=
 =?utf-8?B?Mm5tUzBzYjMxemh4L2d4RythM01hLzVjcStJK0svWFhOTDEwQ1ZxazhMNzE5?=
 =?utf-8?B?WVFxQjE3QmxDa1ZNWS9QV2pMQWhNQU8vY0hKNmhNNHBqY3MxRllBOUp3STVS?=
 =?utf-8?B?bXhiU3RxU0xwZHZuNHB4MHZ3QTZ6eC92c2xFSDlXR2ZkRW9xa2FKaUJoRjNt?=
 =?utf-8?B?OGhPMlZGVVdUWTVMVWNXUE8vTWFSMnhVT3lLVU9zTm5zL0lTa0pSTUFyS20z?=
 =?utf-8?B?NGpTeWVPaVNPWFNoYVdEa24yNU1CVzJ5RG5LMmIrNXZPY01WR0E0c2V1djg3?=
 =?utf-8?B?VStqSmJkU2U1bTdCWlZGQnRnaExTRGNpVkNvWVFMWVZ0MkwyM2pxUlROV2VC?=
 =?utf-8?B?VHkvUUgxditYRkIwWTlkUzZWaURqQ0ZyY0tVTEVOWUtWVEgyUEo1d2FGbVFs?=
 =?utf-8?B?RWY1a2tZTVRHL3F4UG00R0gyZTdWTzdJSHJYZmpENVpld2grZmNWY1NVTVJR?=
 =?utf-8?B?aGZWcVVGWnhGZDVHN3pXazNrK21EL3NkY3hNbVFVL3g5aTNjYVZQcHhYQjFa?=
 =?utf-8?B?YnU3TVRQUUVTRGgrU3NyYi9WN2p5MzRTZmY0YUlNWlJDVStLTVFUamNRcUZN?=
 =?utf-8?B?a1Fnc0lwWU5LMS9lTi92VHlwV0p0UVdJOU5aZnA1Sm1IZC83bjU4RHg0Q3lG?=
 =?utf-8?B?dURqVG9SWGc1TVN4YUVIbTc3dkhRUkpmMWN3SFYxSWdmUWlsUWdQR0N6OGxk?=
 =?utf-8?B?TmY2V2tTK0tIYUc5RWRHeHF3VlNYOExOR2g5R2c1b0c4TTk5aVhIblJ5dVFi?=
 =?utf-8?B?d1dZa3hEUkdWMk01ZW50cjZ5d2JSbng4Und3b1Bqb3A2QlN4OWNWbFFJT1pG?=
 =?utf-8?B?UXZWb1hFaStXcHluY2s3SldCWFdtN1Eram9nMzdNSU1LbzhMMjhVODFGU0tG?=
 =?utf-8?B?NkEvWUxBSXBQKzdTTkp1VTVIbTdMSlRrR093WWpMMHdXd1VUZDA2c21QcTdO?=
 =?utf-8?B?ZFZDWWtHZks0ME93V210SU1kaTRpNytoSFFieU9mNGxUcmtjZWFYL1piYU1l?=
 =?utf-8?B?RlRmczg5alNUQ1puK0Zmd2pUTFkycW1vSDdCUHoxVVM5SWhNTEtHdlZYM3dX?=
 =?utf-8?B?K3BJbTIyU2pTcTRjZUdYbE1oYXZKRjFEb1pxWTZCSWVoY05tYjVNM2gzcHMv?=
 =?utf-8?B?WXgrUHRxUUtEL3dETlpGMDAvbEhHSlZrRWtZM0hZNThsRlJmNXJTVi90T3Bt?=
 =?utf-8?B?Y0pGTzFvbitzZzYvQXFBeEdTbWQ5MVpXZHVNSVZLZGZmdy9HdklKak9DTkRq?=
 =?utf-8?B?dzdPdm9OTGtEOFJEZ2RoK0lrcHpacWoxZVZLL0FqaTRFRmVjbzNTQ2ZqUG83?=
 =?utf-8?B?S2pXQ3hCMC9tMmdFWUZZZlZGTXBCSXBDUlNQTEtOL255VGYxK2JoQWRpb2RT?=
 =?utf-8?B?RlZMejdvN2JyVHZ1UE5MditGZU1RTm53VDJqT1dtYThaWUorbXdFakQyN2Qz?=
 =?utf-8?B?clJWNFB3cHMrN3o3bXJlRTlSL2ZqR3dTNnc4UnhabUwxemVWTHA0WDkxRGJw?=
 =?utf-8?Q?Bx1A0dO9G4I2vMz1jgyjqor3EUztlPZtyclWFbw?=
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative;
	boundary="_000_AE965271FE624EA791CCF6438C34962Acitrixcom_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MWHPR03MB2445.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f53fd963-6f00-4709-c1d1-08d90a41f0d1
X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Apr 2021 12:34:17.7826
 (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: F/3aw+soOBRl71Xs341DWvWubrMn5V4r/I7MNaPIK+Fx6j8YWBtOKWLjCwNPcTNJTfovnsrx3er2LeOzs1eIL2fyod34rSn0QAOMSLUUPa8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR03MB2944
X-OriginatorOrg: citrix.com

--_000_AE965271FE624EA791CCF6438C34962Acitrixcom_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

DQoNCk9uIDI3IEFwciAyMDIxLCBhdCAxMzowNSwgQ29zdGluIEx1cHUgPGNvc3Rpbi5sdXB1QGNz
LnB1Yi5ybzxtYWlsdG86Y29zdGluLmx1cHVAY3MucHViLnJvPj4gd3JvdGU6DQoNCkZvciByZXBs
aWNhdGlvbiBJIHVzZWQgZ2NjIDEwLjMgb24gYW4gQWxwaW5lIHN5c3RlbS4gSW4gb3JkZXIgdG8g
cmVwbGljYXRlIHRoZQ0KcmVkZWZpbml0aW9uIGVycm9yIGZvciBQQUdFX1NJWkUgb25lIHNob3Vs
ZCBpbnN0YWxsIHRoZSAnZm9ydGlmeS1oZWFkZXJzJw0KcGFja2FnZSB3aGljaCB3aWxsIGNoYW5n
ZSB0aGUgY2hhaW4gb2YgaW5jbHVkZWQgaGVhZGVycyBieSBpbmRpcmVjdGx5IGluY2x1ZGluZw0K
L3Vzci9pbmNsdWRlL2xpbWl0cy5oIHdoZXJlIFBBR0VfU0laRSBhbmQgUEFUSF9NQVggYXJlIGRl
ZmluZWQuDQoNCkNvc3RpbiBMdXB1ICg1KToNCiB0b29scy9kZWJ1Z2dlcjogRml4IFBBR0VfU0la
RSByZWRlZmluaXRpb24gZXJyb3INCiB0b29scy9saWJmc2ltYWdlOiBGaXggUEFUSF9NQVggcmVk
ZWZpbml0aW9uIGVycm9yDQogdG9vbHMvbGlicy9mb3JlaWdubWVtb3J5OiBGaXggUEFHRV9TSVpF
IHJlZGVmaW5pdGlvbiBlcnJvcg0KIHRvb2xzL2xpYnMvZ250dGFiOiBGaXggUEFHRV9TSVpFIHJl
ZGVmaW5pdGlvbiBlcnJvcg0KIHRvb2xzL29jYW1sOiBGaXggcmVkZWZpbml0aW9uIGVycm9ycw0K
DQp0b29scy9kZWJ1Z2dlci9rZGQva2RkLXhlbi5jICAgICAgICAgICAgICAgICAgIHwgNCArKysr
DQp0b29scy9kZWJ1Z2dlci9rZGQva2RkLmMgICAgICAgICAgICAgICAgICAgICAgIHwgNCArKysr
DQp0b29scy9saWJmc2ltYWdlL2V4dDJmcy9mc3lzX2V4dDJmcy5jICAgICAgICAgIHwgMiArKw0K
dG9vbHMvbGliZnNpbWFnZS9yZWlzZXJmcy9mc3lzX3JlaXNlcmZzLmMgICAgICB8IDIgKysNCnRv
b2xzL2xpYnMvZm9yZWlnbm1lbW9yeS9wcml2YXRlLmggICAgICAgICAgICAgfCA2ICsrKystLQ0K
dG9vbHMvbGlicy9nbnR0YWIvbGludXguYyAgICAgICAgICAgICAgICAgICAgICB8IDYgKysrKysr
DQp0b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYyAgICAgICAgICAgIHwgOCArKysr
KysrKw0KdG9vbHMvb2NhbWwvbGlicy94ZW50b29sbG9nL3hlbnRvb2xsb2dfc3R1YnMuYyB8IDQg
KysrKw0KdG9vbHMvb2NhbWwvbGlicy94bC94ZW5saWdodF9zdHVicy5jICAgICAgICAgICB8IDQg
KysrKw0KOSBmaWxlcyBjaGFuZ2VkLCAzOCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQ0K
DQrigJQNCjIuMjAuMQ0KDQoNCkZvciB0aGUgT0NhbWwgYmluZGluZ3MsIHRoaXMgYXZvaWRzIHJl
ZGVmaW5pdGlvbnMgYXMgeW91IHNheS4gTG9va3MgZ29vZCB0byBtZS4NCg0KQWNrZWQtYnk6IENo
cmlzdGlhbiBMaW5kaWcgPGNocmlzdGlhbi5saW5kaWdAY2l0cml4LmNvbTxtYWlsdG86Y2hyaXN0
aWFuLmxpbmRpZ0BjaXRyaXguY29tPj4NCg0K

--_000_AE965271FE624EA791CCF6438C34962Acitrixcom_
Content-Type: text/html; charset="utf-8"
Content-ID: <DD18F8B03CA87F469630EEA882208C37@namprd03.prod.outlook.com>
Content-Transfer-Encoding: base64

PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i
dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3b3JkLXdy
YXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgbGluZS1icmVhazogYWZ0
ZXItd2hpdGUtc3BhY2U7IiBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4NCjxkaXY+PGJyIGNsYXNz
PSIiPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2xhc3M9IiI+DQo8ZGl2IGNsYXNzPSIiPk9u
IDI3IEFwciAyMDIxLCBhdCAxMzowNSwgQ29zdGluIEx1cHUgJmx0OzxhIGhyZWY9Im1haWx0bzpj
b3N0aW4ubHVwdUBjcy5wdWIucm8iIGNsYXNzPSIiPmNvc3Rpbi5sdXB1QGNzLnB1Yi5ybzwvYT4m
Z3Q7IHdyb3RlOjwvZGl2Pg0KPGJyIGNsYXNzPSJBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5lIj4N
CjxkaXYgY2xhc3M9IiI+DQo8ZGl2IGNsYXNzPSIiPkZvciByZXBsaWNhdGlvbiBJIHVzZWQgZ2Nj
IDEwLjMgb24gYW4gQWxwaW5lIHN5c3RlbS4gSW4gb3JkZXIgdG8gcmVwbGljYXRlIHRoZTxiciBj
bGFzcz0iIj4NCnJlZGVmaW5pdGlvbiBlcnJvciBmb3IgUEFHRV9TSVpFIG9uZSBzaG91bGQgaW5z
dGFsbCB0aGUgJ2ZvcnRpZnktaGVhZGVycyc8YnIgY2xhc3M9IiI+DQpwYWNrYWdlIHdoaWNoIHdp
bGwgY2hhbmdlIHRoZSBjaGFpbiBvZiBpbmNsdWRlZCBoZWFkZXJzIGJ5IGluZGlyZWN0bHkgaW5j
bHVkaW5nPGJyIGNsYXNzPSIiPg0KL3Vzci9pbmNsdWRlL2xpbWl0cy5oIHdoZXJlIFBBR0VfU0la
RSBhbmQgUEFUSF9NQVggYXJlIGRlZmluZWQuPGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0K
Q29zdGluIEx1cHUgKDUpOjxiciBjbGFzcz0iIj4NCiZuYnNwO3Rvb2xzL2RlYnVnZ2VyOiBGaXgg
UEFHRV9TSVpFIHJlZGVmaW5pdGlvbiBlcnJvcjxiciBjbGFzcz0iIj4NCiZuYnNwO3Rvb2xzL2xp
YmZzaW1hZ2U6IEZpeCBQQVRIX01BWCByZWRlZmluaXRpb24gZXJyb3I8YnIgY2xhc3M9IiI+DQom
bmJzcDt0b29scy9saWJzL2ZvcmVpZ25tZW1vcnk6IEZpeCBQQUdFX1NJWkUgcmVkZWZpbml0aW9u
IGVycm9yPGJyIGNsYXNzPSIiPg0KJm5ic3A7dG9vbHMvbGlicy9nbnR0YWI6IEZpeCBQQUdFX1NJ
WkUgcmVkZWZpbml0aW9uIGVycm9yPGJyIGNsYXNzPSIiPg0KJm5ic3A7dG9vbHMvb2NhbWw6IEZp
eCByZWRlZmluaXRpb24gZXJyb3JzPGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KdG9vbHMv
ZGVidWdnZXIva2RkL2tkZC14ZW4uYyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDt8IDQgKysrKzxiciBjbGFzcz0iIj4NCnRvb2xzL2RlYnVnZ2VyL2tk
ZC9rZGQuYyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt8IDQgKysrKzxiciBjbGFzcz0iIj4NCnRvb2xzL2xp
YmZzaW1hZ2UvZXh0MmZzL2ZzeXNfZXh0MmZzLmMgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fCAyICsrPGJyIGNsYXNzPSIiPg0KdG9vbHMvbGli
ZnNpbWFnZS9yZWlzZXJmcy9mc3lzX3JlaXNlcmZzLmMgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7
Jm5ic3A7fCAyICsrPGJyIGNsYXNzPSIiPg0KdG9vbHMvbGlicy9mb3JlaWdubWVtb3J5L3ByaXZh
dGUuaCAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDt8IDYgKysrKy0tPGJyIGNsYXNzPSIiPg0KdG9vbHMvbGlicy9n
bnR0YWIvbGludXguYyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz
cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt8IDYgKysrKysrPGJyIGNsYXNzPSIiPg0KdG9vbHMv
b2NhbWwvbGlicy94Yy94ZW5jdHJsX3N0dWJzLmMgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i
c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fCA4ICsrKysrKysrPGJyIGNs
YXNzPSIiPg0KdG9vbHMvb2NhbWwvbGlicy94ZW50b29sbG9nL3hlbnRvb2xsb2dfc3R1YnMuYyB8
IDQgKysrKzxiciBjbGFzcz0iIj4NCnRvb2xzL29jYW1sL2xpYnMveGwveGVubGlnaHRfc3R1YnMu
YyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm
bmJzcDt8IDQgKysrKzxiciBjbGFzcz0iIj4NCjkgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9u
cygrKSwgMiBkZWxldGlvbnMoLSk8YnIgY2xhc3M9IiI+DQo8YnIgY2xhc3M9IiI+DQrigJQgPGJy
IGNsYXNzPSIiPg0KMi4yMC4xPGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8
L2Rpdj4NCjwvYmxvY2txdW90ZT4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0iIj48YnIgY2xhc3M9IiI+
DQo8L2Rpdj4NCkZvciB0aGUgT0NhbWwgYmluZGluZ3MsIHRoaXMgYXZvaWRzIHJlZGVmaW5pdGlv
bnMgYXMgeW91IHNheS4gTG9va3MgZ29vZCB0byBtZS4NCjxkaXYgY2xhc3M9IiI+PGJyIGNsYXNz
PSIiPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSIiPkFja2VkLWJ5OiBDaHJpc3RpYW4gTGluZGlnICZs
dDs8YSBocmVmPSJtYWlsdG86Y2hyaXN0aWFuLmxpbmRpZ0BjaXRyaXguY29tIiBjbGFzcz0iIj5j
aHJpc3RpYW4ubGluZGlnQGNpdHJpeC5jb208L2E+Jmd0OzxiciBjbGFzcz0iIj4NCjxkaXYgY2xh
c3M9IiI+PGJyIGNsYXNzPSIiPg0KPC9kaXY+DQo8L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg==

--_000_AE965271FE624EA791CCF6438C34962Acitrixcom_--


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 12:46:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 12:46:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119310.225738 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbja0-0003DP-Qv; Wed, 28 Apr 2021 12:46:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119310.225738; Wed, 28 Apr 2021 12:46:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbja0-0003DI-Nw; Wed, 28 Apr 2021 12:46:12 +0000
Received: by outflank-mailman (input) for mailman id 119310;
 Wed, 28 Apr 2021 12:46:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1lbjZy-0003DD-V0
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 12:46: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 1lbjZy-0005O2-F3; Wed, 28 Apr 2021 12:46:10 +0000
Received: from [54.239.6.190] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbjZy-0000f1-7x; Wed, 28 Apr 2021 12: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=uJsCxf4Vu0qb3CoGNz7sE9H1wWrv8iQ7ATmxRvsCo4s=; b=N8iVWdBCyYixJQLqGkrpncOGMn
	IlqO/UOg+DRe/s405KNuvmTN7xM8FE5DoceDzOyD/NiuUFsk4mOfB1A+AVaue3dwGe1iOwu2WpC2+
	FKW+NkB06q5Ok4rqZ3kfcDbNjJS9ZnYIgHi9hpxJGRMysjTxh9wQNb3Yl+BHhC3twmYQ=;
Subject: Re: Discussion of Xenheap problems on AArch64
To: Henry Wang <Henry.Wang@arm.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Wei Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>
References: <PA4PR08MB6253F49C13ED56811BA5B64E92479@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <cdde98ca-4183-c92b-adca-801330992fc5@xen.org>
 <PA4PR08MB62538BBA256E66A0415F0C7192479@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <f14aa1d6-35d2-a9a3-0672-7f0d3ae3ec89@xen.org>
 <PA4PR08MB62534C4130B59CAA9A8A8BF792419@PA4PR08MB6253.eurprd08.prod.outlook.com>
 <PA4PR08MB6253FBC7F5E690DB74F2E11F92409@PA4PR08MB6253.eurprd08.prod.outlook.com>
From: Julien Grall <julien@xen.org>
Message-ID: <2a65b8c0-fccc-2ccc-f736-7f3f666e84d1@xen.org>
Date: Wed, 28 Apr 2021 13:46:08 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <PA4PR08MB6253FBC7F5E690DB74F2E11F92409@PA4PR08MB6253.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

On 28/04/2021 10:28, Henry Wang wrote:
> Hi Julien,

Hi Henry,

> 
> I've done some test about the patch series in
> https://xenbits.xen.org/gitweb/?p=people/julieng/xen-unstable.git;a=shortlog;h=refs/heads/pt/rfc-v2
> 

Thanks you for the testing. Some questions below.

> Log:
> (XEN)   VTCR_EL2: 80000000
> (XEN)  VTTBR_EL2: 0000000000000000
> (XEN)
> (XEN)  SCTLR_EL2: 30cd183d
> (XEN)    HCR_EL2: 0000000000000038
> (XEN)  TTBR0_EL2: 000000008413d000
> (XEN)
> (XEN)    ESR_EL2: 96000041
> (XEN)  HPFAR_EL2: 0000000000000000
> (XEN)    FAR_EL2: 00008010c3fff000
> (XEN) Xen call trace:
> (XEN)    [<000000000025c7a0>] clear_page+0x10/0x2c (PC)
> (XEN)    [<00000000002caa30>] setup_frametable_mappings+0x1ac/0x2e0 (LR)
> (XEN)    [<00000000002cbf34>] start_xen+0x348/0xbc4
> (XEN)    [<00000000002001c0>] arm64/head.o#primary_switched+0x10/0x30
> (XEN)
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) CPU0: Unexpected Trap: Data Abort
> (XEN) ****************************************
> 
> 2. Apply patch and use two memory banks which have a big gap:
> Memory node:
> memory@80000000 {
>                  device_type = "memory";
>                  reg = <0x00 0x80000000 0x00 0x7f000000 0x8800 0x00000000 0x00 0x80000000>;
> };
> 
> Log:
> (XEN)   VTCR_EL2: 80000000
> (XEN)  VTTBR_EL2: 0000000000000000
> (XEN)
> (XEN)  SCTLR_EL2: 30cd183d
> (XEN)    HCR_EL2: 0000000000000038
> (XEN)  TTBR0_EL2: 000000008413c000
> (XEN)
> (XEN)    ESR_EL2: 96000043
> (XEN)  HPFAR_EL2: 0000000000000000
> (XEN)    FAR_EL2: 0000000000443000
> (XEN)
> (XEN) Xen call trace:
> (XEN)    [<000000000025c7a0>] clear_page+0x10/0x2c (PC)
> (XEN)    [<000000000026cf9c>] mm.c#xen_pt_update+0x1b8/0x7b0 (LR)
> (XEN)    [<00000000002ca298>] setup_xenheap_mappings+0xb4/0x134
> (XEN)    [<00000000002cc1b0>] start_xen+0xb6c/0xbcc
> (XEN)    [<00000000002001c0>] arm64/head.o#primary_switched+0x10/0x30
> (XEN)
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) CPU0: Unexpected Trap: Data Abort
> (XEN) ****************************************

I am a bit confused with the output with and without my patches. Both of 
them are showing a data abort in clear_page().

Above, you suggested that there is a big gap between the two memory 
banks. Are the banks still point to actual RAM?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 12:51:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 12:51:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119316.225750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbjed-00044f-Dq; Wed, 28 Apr 2021 12:50:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119316.225750; Wed, 28 Apr 2021 12:50: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 1lbjed-00044Y-An; Wed, 28 Apr 2021 12:50:59 +0000
Received: by outflank-mailman (input) for mailman id 119316;
 Wed, 28 Apr 2021 12:50:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vSVs=JZ=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lbjec-00044T-7R
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 12:50:58 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::2])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 27ad9e1f-da35-4bed-837b-e065ee620a2b;
 Wed, 28 Apr 2021 12:50:56 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.25.2 AUTH)
 with ESMTPSA id D0155dx3SCot5dk
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Wed, 28 Apr 2021 14:50: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: 27ad9e1f-da35-4bed-837b-e065ee620a2b
ARC-Seal: i=1; a=rsa-sha256; t=1619614255; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=Os4jWg6LUFqj2Hqx7jbOfOjmn0F49ylbbb9MX2WVXkwjaT23kGLp4CokQBJ2bIbbZH
    JhPDpO2CLEHqNsxbS3E/qYokm16jXSOsCqDIUB7Lz++Bf+UGqj7lxMo+07+3JU4RiXbC
    pZRY0DyyazOF5xywjTnYJDX4YPph05Des/lSAua98lPkdOO6Di4V0Mnm3Hs01hwZ5hhM
    PY4c6zJVzeHtugRQWaY0LyueFv/3QFwmwrN5G0gPC5Wrhn9aZUtPwHqEd1++LRensP1q
    KHkp7oq5vztqxMNwbCWbysTVNrTfw/UypIMFwHVDTuVy8bCc2CwA0v3cZupfjajX5DN7
    m8mw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619614255;
    s=strato-dkim-0002; d=strato.com;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=VKzqJlyu9RYeBB6aIvGkP+DPfcPhMEW0M2dD+tfVMSk=;
    b=p7YewUciqGodMk5bkxiUqIfDL3seXXpYl18PIXDZ1wOdMChaFKj1UhN0YA3938z82E
    2AKdm+65xRM98HazP5LNtS5d9TpWEG+fsloN5NO6/H4wH/d566nvVVN7MBV/1FwR2anp
    BILKBbsBvGM4pPE/6iMSwKaiPjB0/cx9WPa6T/3QVhffR0ry02LNcsjIT320Hm1yxye2
    1JifJ0ZOE3TjZZJUQ23BlBTcn/Kh7vQ34H+K07/J7LJDWUChRtNHCtNGJya2RCKXtTKq
    gvkFkYcWft2kly1enTH0Y0Z/kxro5+5KBHMktyCbwb63jDCkA0L4D2AqwY3aOOaF00dc
    o5lw==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619614255;
    s=strato-dkim-0002; d=aepfle.de;
    h=References:In-Reply-To:Message-ID:Subject:Cc:To:From:Date:Cc:Date:
    From:Subject:Sender;
    bh=VKzqJlyu9RYeBB6aIvGkP+DPfcPhMEW0M2dD+tfVMSk=;
    b=JEImOL71mDyrbS+6wvpATg70vrLGo+NR6AZPE1LiWhTWC4N6uRG84oTL4rIm3/uaAU
    csD8QCwbofTnkLpX+nY8Fi/qeJhSJlxuSyCFqx7BiiAacK/iWOffuRQf/PuWPYMDogeD
    QsRkGwW4gkyu4u4oJocpW4Fh3zhoJ5DFrh/fgFgWOfRYoHJJ4bEJhfxCetia13aY48in
    C3EESBbqJNY5WlQ5te4GZYltlSs6hkyX4FYWaUZ1F1gsCvDYvZ+JX/BwoneYiSTE5cuw
    wCneSLU5fK/esHTWNP3k98hSzHzp77h63xaxmda7Cw9BtKMgichxe5vIY7tSD1MNtJwv
    8lvQ==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QLpd5ylWvMDX3y/OuD5rXVisEsVR6GbU3svGYLiH9zFD0wpO7hNb2D/K88Gfjs"
X-RZG-CLASS-ID: mo00
Date: Wed, 28 Apr 2021 14:50:44 +0200
From: Olaf Hering <olaf@aepfle.de>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>, <xen-devel@lists.xenproject.org>
Subject: Re: obtain a list of granttable PFNs from toolstack
Message-ID: <20210428145044.75ab84cc.olaf@aepfle.de>
In-Reply-To: <efef0c49-aa39-8df2-4f0c-2b4f86795956@citrix.com>
References: <20210428095049.14a8272b.olaf@aepfle.de>
	<8427397f-0953-94df-04f6-8dfe2a4ceee8@suse.com>
	<20210428121701.3272b369.olaf@aepfle.de>
	<d508af0b-dd4a-7c13-f33e-bc60a4fb7272@suse.com>
	<20210428130346.2477ffda.olaf@aepfle.de>
	<efef0c49-aa39-8df2-4f0c-2b4f86795956@citrix.com>
X-Mailer: Claws Mail 2021.04.23 (GTK+ 2.24.32; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="Sig_/x8Jm_K5T7DcQ.rDVU.ozvuO";
 protocol="application/pgp-signature"; micalg=pgp-sha256

--Sig_/x8Jm_K5T7DcQ.rDVU.ozvuO
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Am Wed, 28 Apr 2021 12:43:45 +0100
schrieb Andrew Cooper <andrew.cooper3@citrix.com>:

> Grants are not properly accounted for in the logdirty bitmap, because
> they're not unmapped during the final phase.

Yeah, which means the verify code can do no useful work.

This can be addressed by either removing it. Or by giving the granted pages=
 a dedicate type so that the verify code can skip them. I assume if assigni=
ng a dedicated type is easy, it would have been done already.


Olaf

--Sig_/x8Jm_K5T7DcQ.rDVU.ozvuO
Content-Type: application/pgp-signature
Content-Description: Digitale Signatur von OpenPGP

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEE97o7Um30LT3B+5b/86SN7mm1DoAFAmCJWiQACgkQ86SN7mm1
DoB2YBAAjBbafIG4eiL+QxRuEg5pvLVD4Y7mHLkok9ASqDusiV+odL1CMydD+PeD
ciP+h7NMCHMfk5LNvLHko8paItt32oyD0jDHA2+mGnRzNJnndU2bgwoeXdMvKy61
R2HZuE/RZy2H1AD2Hne2LPHyRwSy2qOoPispcwyTyJl2AgCAlkQvU6eGJ66fTnBn
sB4iDk+zJSt5nP1t6sLC7zfiQ1d9KH5Bv1aolTcIv5oaOyaZWgFoGDizuYJPPRIL
WX0fVWy2mcQXbtdM9EFS8PjZDPtruIaN2+2N9E5zGKi5UELVzI9H2n0tzNAJ+oK7
Hf1VPn9u+zaBFjszp+6WV1aJwpnl49afLHp+qfcUJf/jSIeAFOipgy7l++167+FY
d+ocDzFvpZR7rOd+ZjWFH8BcHkvCX/2Ah4VD6aKRFJmOY4PgHrm+r3kDJ2jJQ463
v8rSJXb7cAwJOXmBAVF8Vr+dfyEzx1D4zqQ6TtANy7LI4k8S2LOAOn8IkmJAikbT
pNY4/ACz2YxCrlcx+NIHytZ3lBeALmF4CP0vgTj/I0wbb3pb8R9z4pT8CTl2dIDh
xKwAXMpql3QPju549s3xiiIcWDD3JLQ5b7r8PXpcD5AhDo9KX/+rxPPGdy6Nbj+M
Q0bAVRC9/Qh1LejXzOTdi8jmDz/1FD04ReRWK9dLic3kN1h4hFo=
=2L9b
-----END PGP SIGNATURE-----

--Sig_/x8Jm_K5T7DcQ.rDVU.ozvuO--


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 12:54:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 12:54:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119323.225761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbjiF-0004FB-Vo; Wed, 28 Apr 2021 12:54:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119323.225761; Wed, 28 Apr 2021 12: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 1lbjiF-0004F4-S0; Wed, 28 Apr 2021 12:54:43 +0000
Received: by outflank-mailman (input) for mailman id 119323;
 Wed, 28 Apr 2021 12:54: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 1lbjiE-0004Ez-72
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 12:54: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 1lbjiD-0005VL-8O; Wed, 28 Apr 2021 12:54:41 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbjiD-0001Im-21; Wed, 28 Apr 2021 12: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=VOmnTql4yGp3HV6+dThJmA2YVQ5HHGu99D0K71CUp0A=; b=E7+oyqDjBm5qEZiRP0xpoCKRoc
	QetUCs1bsQMkNfbWgcRKwsAc9h2p9sI90dWKDBnaJ+9bJvAPq18O8lDznx/C4BWZCT5ddne2tVdEu
	K5w2O9NtVTWCFnlBZYEx7gZStgiIJ+Y86mKuKhWCfPgihtwSUUTF5vPq4QEJqqL3E0FM=;
Subject: Re: [XEN PATCH] xl: constify cmd_table entries
To: Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <20210427161105.91731-1-anthony.perard@citrix.com>
From: Julien Grall <julien@xen.org>
Message-ID: <5cbe94d4-2d07-b517-af9f-c5f1e47f7588@xen.org>
Date: Wed, 28 Apr 2021 13:54:39 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210427161105.91731-1-anthony.perard@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

NIT: I would suggest to add "..." so it is clear...

On 27/04/2021 17:11, Anthony PERARD wrote:
> and cmdtable_len.

... this is a continuation of the title.

> 
> The entries in cmd_table don't need to be modified once xl is running.
> 
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> ---
>   tools/xl/xl.c          | 4 ++--
>   tools/xl/xl.h          | 6 +++---
>   tools/xl/xl_cmdtable.c | 8 ++++----
>   3 files changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/tools/xl/xl.c b/tools/xl/xl.c
> index 3a8929580212..4107d10fd469 100644
> --- a/tools/xl/xl.c
> +++ b/tools/xl/xl.c
> @@ -362,7 +362,7 @@ int main(int argc, char **argv)
>   {
>       int opt = 0;
>       char *cmd = 0;
> -    struct cmd_spec *cspec;
> +    const struct cmd_spec *cspec;
>       int ret;
>       void *config_data = 0;
>       int config_len = 0;
> @@ -462,7 +462,7 @@ int child_report(xlchildnum child)
>   void help(const char *command)
>   {
>       int i;
> -    struct cmd_spec *cmd;
> +    const struct cmd_spec *cmd;
>   
>       if (!command || !strcmp(command, "help")) {
>           printf("Usage xl [-vfNtT] <subcommand> [args]\n\n");
> diff --git a/tools/xl/xl.h b/tools/xl/xl.h
> index 137a29077c1e..e5a106dfbc82 100644
> --- a/tools/xl/xl.h
> +++ b/tools/xl/xl.h
> @@ -218,10 +218,10 @@ int main_qemu_monitor_command(int argc, char **argv);
>   void help(const char *command);
>   
>   extern const char *common_domname;
> -extern struct cmd_spec cmd_table[];
> -extern int cmdtable_len;
> +extern const struct cmd_spec cmd_table[];
> +extern const int cmdtable_len;
>   /* Look up a command in the table, allowing unambiguous truncation */
> -struct cmd_spec *cmdtable_lookup(const char *s);
> +const struct cmd_spec *cmdtable_lookup(const char *s);
>   
>   extern libxl_ctx *ctx;
>   extern xentoollog_logger_stdiostream *logger;
> diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c
> index 07f54daabec3..84e2067e278b 100644
> --- a/tools/xl/xl_cmdtable.c
> +++ b/tools/xl/xl_cmdtable.c
> @@ -18,7 +18,7 @@
>   
>   #include "xl.h"
>   
> -struct cmd_spec cmd_table[] = {
> +const struct cmd_spec cmd_table[] = {
>       { "create",
>         &main_create, 1, 1,
>         "Create a domain from config file <filename>",
> @@ -631,12 +631,12 @@ struct cmd_spec cmd_table[] = {
>       },
>   };
>   
> -int cmdtable_len = sizeof(cmd_table)/sizeof(struct cmd_spec);
> +const int cmdtable_len = sizeof(cmd_table)/sizeof(struct cmd_spec);

NIT: This can be replaced with ARRAY_SIZE().

>   
>   /* Look up a command in the table, allowing unambiguous truncation */
> -struct cmd_spec *cmdtable_lookup(const char *s)
> +const struct cmd_spec *cmdtable_lookup(const char *s)
>   {
> -    struct cmd_spec *cmd = NULL;
> +    const struct cmd_spec *cmd = NULL;
>       size_t len;
>       int i, count = 0;
>   
> 

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 13:03:31 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 13:03:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119330.225774 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbjqf-0005El-R8; Wed, 28 Apr 2021 13:03:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119330.225774; Wed, 28 Apr 2021 13: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 1lbjqf-0005Ee-NX; Wed, 28 Apr 2021 13:03:25 +0000
Received: by outflank-mailman (input) for mailman id 119330;
 Wed, 28 Apr 2021 13:03:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbjqe-0005EZ-6x
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 13:03:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d45dd5e4-2d19-452e-8446-f71693284ce6;
 Wed, 28 Apr 2021 13:03:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E4C1EB181;
 Wed, 28 Apr 2021 13:03:21 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d45dd5e4-2d19-452e-8446-f71693284ce6
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619615002; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Bb2X/zWNGgoHjla4O1+5XkvRuAvUb+IU89t7YVxTqbc=;
	b=JuWCwOERnc3gYm7cGj1uzbs/9aJ19eaS97f2ISXYdmXM4mQdkYofgkEDf5wPQ+cf49uFd4
	xx2VIz6LGpalUKqoKy6cOXHRJKcigu7b5G728oEF22k6XNWcEUmmx7NVJ9lSM0OOySANlN
	ey7f9+Z14IDX6qd32BAXSLETaXrEAlU=
Subject: Re: [PATCH 0/3] x86: Initial pieces for guest CET support
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>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <03630ebd-861e-b02c-e845-1e2324211562@suse.com>
 <3e5369d1-a6eb-92c4-868c-0b9d205aba7a@citrix.com>
 <d687a294-f0d8-62d0-12ac-2cb5582b8605@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d4f0446c-545f-f7c0-172a-a2ff88e19ad9@suse.com>
Date: Wed, 28 Apr 2021 15:03:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <d687a294-f0d8-62d0-12ac-2cb5582b8605@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 28.04.2021 14:25, Andrew Cooper wrote:
> On 27/04/2021 11:13, Andrew Cooper wrote:
>> There are 3 emulator complexities for shadow stack instructions.  SSP
>> itself as a register, WRUSS no longer being CPL-based for
>> user/supervisor, and the fact that RSTORSSP in particular uses an atomic
>> block which microcode can express, but can't be encoded at an ISA
>> level.  I've got no idea what to do about this last problem, because we
>> can't map the two guest frames and re-issue the instruction - the
>> aliasing check on the tokens forces us to map the two frames in their
>> correct linear addresses.
> 
> Actually, RSTORSSP isn't too difficult.  I'd mis-read the pseudocode.
> 
> The atomic block is a check&edit of the token on the remote stack (not
> both stacks, as I'd mistakenly thought).  The purpose is to prevent two
> concurrent RSTORSSP's moving two threads onto the same shadow stack.
> 
> Without microcode superpowers, the best we can do this with a read,
> check, cmpxchg() loop.
> 
> The common case will be no conflict, as stack switching will be well
> formed (outside of debugging).  Any conflict here from real code is
> going to yield #GP/#CP on one of the threads participating, so in the
> case of a conflict in the emulator, a likely consequence of the 2nd
> iteration is going to be a hard failure.
> 
> That said, malicious cases within the guest, or from foreign mappings,
> can cause the cmpxchg() loop to take an unbounded time, so after 3
> retries or so, we need to escalate to vcpu_pause_all_except_self(), and
> or the ARM stop_machine() big hammer.
> 
> I'm tempted to just throw #GP back after 3 retries.  Its potentially
> non-architectural behaviour, but won't occur in non-malicious
> circumstances, and all fallback mechanisms have system-wide implications
> that we oughtn't to be bowing to in a malicious circumstance.

I agree.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 13:19:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 13:19:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119340.225786 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbk5v-0006Go-6R; Wed, 28 Apr 2021 13:19:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119340.225786; Wed, 28 Apr 2021 13:19: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 1lbk5v-0006Gh-3L; Wed, 28 Apr 2021 13:19:11 +0000
Received: by outflank-mailman (input) for mailman id 119340;
 Wed, 28 Apr 2021 13:19: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 1lbk5u-0006Gb-03
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 13:19: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 1lbk5q-0005vk-NP; Wed, 28 Apr 2021 13:19:06 +0000
Received: from [54.239.6.185] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbk5q-00033z-FN; Wed, 28 Apr 2021 13:19: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=DxuBhAX3lsT1hRldIN66Xd0lE8F6yBD/eSoZcZ4kPsQ=; b=19Jl+RA+zXja8MMOYUR3budJ+u
	GdnlKPDLWklTfa59PbB0dCjtqO7epa2x4VBJSav9Wl50lhAgag/3dGfSlN3NP2GmpjOKE50v3/XvA
	gNTkxFKodGjZBVBCQIkTLB2LgdxEdPgPWdsss/JVxNwwuAtij/2jaxCgV6fIvBGOCUU0=;
Subject: Re: [PATCH RESEND v3 1/3] arm,smmu: switch to using iommu_fwspec
 functions
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: Bertrand.Marquis@arm.com, Volodymyr_Babchuk@epam.com,
 rahul.singh@arm.com, brian.woods@xilinx.com,
 Stefano Stabellini <stefano.stabellini@xilinx.com>
References: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>
 <20210413175905.15123-1-sstabellini@kernel.org>
From: Julien Grall <julien@xen.org>
Message-ID: <c3173a62-55ad-389d-0b49-9641f50351a9@xen.org>
Date: Wed, 28 Apr 2021 14:19:04 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210413175905.15123-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 13/04/2021 18:59, Stefano Stabellini wrote:
> From: Brian Woods <brian.woods@xilinx.com>
> 
> Modify the smmu driver so that it uses the iommu_fwspec helper
> functions.  This means both ARM IOMMU drivers will both use the
> iommu_fwspec helper functions, making enabling generic device tree
> bindings in the SMMU driver much cleaner.
> 
> Signed-off-by: Brian Woods <brian.woods@xilinx.com>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
> Reviewed-by: Rahul Singh <rahul.singh@arm.com> > ---
>   xen/drivers/passthrough/arm/smmu.c    | 75 ++++++++++++++++++---------
>   xen/drivers/passthrough/device_tree.c |  7 +++
>   2 files changed, 58 insertions(+), 24 deletions(-)

It would be nice to have a changelog. This can help to figure out what 
changes was done in each revision.

> 
> diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
> index 3456daa03f..ac75e23268 100644
> --- a/xen/drivers/passthrough/arm/smmu.c
> +++ b/xen/drivers/passthrough/arm/smmu.c
> @@ -32,6 +32,9 @@
>    *	- 4k and 64k pages, with contiguous pte hints.
>    *	- Up to 48-bit addressing (dependent on VA_BITS)
>    *	- Context fault reporting
> + *
> + * Changes compared to Linux driver:
> + *	- support for fwspec
>    */
>   
>   
> @@ -49,6 +52,7 @@
>   #include <asm/atomic.h>
>   #include <asm/device.h>
>   #include <asm/io.h>
> +#include <asm/iommu_fwspec.h>
>   #include <asm/platform.h>
>   
>   /* Xen: The below defines are redefined within the file. Undef it */
> @@ -615,13 +619,11 @@ struct arm_smmu_smr {
>   
>   struct arm_smmu_master_cfg {
>   	struct arm_smmu_device		*smmu;
> -	int				num_streamids;
> -	u16				streamids[MAX_MASTER_STREAMIDS];
>   	s16				smendx[MAX_MASTER_STREAMIDS];
>   };
>   #define INVALID_SMENDX			-1
> -#define for_each_cfg_sme(cfg, i, idx) \
> -	for (i = 0; idx = cfg->smendx[i], i < cfg->num_streamids; ++i)
> +#define for_each_cfg_sme(cfg, i, idx, num) \
> +	for (i = 0; idx = cfg->smendx[i], i < num; ++i)
>   
>   struct arm_smmu_master {
>   	struct device_node		*of_node;
> @@ -711,6 +713,14 @@ static struct arm_smmu_option_prop arm_smmu_options[] = {
>   	{ 0, NULL},
>   };
>   
> +static inline struct iommu_fwspec *
> +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);
> +}
> +
>   static void parse_driver_options(struct arm_smmu_device *smmu)
>   {
>   	int i = 0;
> @@ -804,8 +814,9 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
>   				struct device *dev,
>   				struct of_phandle_args *masterspec)
>   {
> -	int i;
> +	int i, ret = 0;
>   	struct arm_smmu_master *master;
> +	struct iommu_fwspec *fwspec;
>   
>   	master = find_smmu_master(smmu, masterspec->np);
>   	if (master) {
> @@ -815,24 +826,29 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
>   		return -EBUSY;
>   	}
>   
> -	if (masterspec->args_count > MAX_MASTER_STREAMIDS) {
> -		dev_err(dev,
> -			"reached maximum number (%d) of stream IDs for master device %s\n",
> -			MAX_MASTER_STREAMIDS, masterspec->np->name);
> -		return -ENOSPC;
> -	}
> -
>   	master = devm_kzalloc(dev, sizeof(*master), GFP_KERNEL);
>   	if (!master)
>   		return -ENOMEM;
> +	master->of_node = masterspec->np;
>   
> -	master->of_node			= masterspec->np;
> -	master->cfg.num_streamids	= masterspec->args_count;
> +	ret = iommu_fwspec_init(&master->of_node->dev, smmu->dev);
> +	if (ret) {
> +		kfree(master);
> +		return ret;
> +	}
> +	fwspec = dev_iommu_fwspec_get(dev);
> +
> +	/* adding the ids here */
> +	ret = iommu_fwspec_add_ids(&masterspec->np->dev,
> +				   masterspec->args,
> +				   masterspec->args_count);
> +	if (ret)
> +		return ret;
>   
>   	/* Xen: Let Xen know that the device is protected by an SMMU */
>   	dt_device_set_protected(masterspec->np);
>   
> -	for (i = 0; i < master->cfg.num_streamids; ++i) {
> +	for (i = 0; i < fwspec->num_ids; ++i) {
>   		u16 streamid = masterspec->args[i];
>   
>   		if (!(smmu->features & ARM_SMMU_FEAT_STREAM_MATCH) &&
> @@ -842,9 +858,9 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
>   				masterspec->np->name, smmu->num_mapping_groups);
>   			return -ERANGE;
>   		}
> -		master->cfg.streamids[i] = streamid;
>   		master->cfg.smendx[i] = INVALID_SMENDX;
>   	}
> +

NIT: Spurious line.

>   	return insert_smmu_master(smmu, master);
>   }
>   
> @@ -1498,22 +1514,23 @@ static int arm_smmu_master_alloc_smes(struct device *dev)
>   	struct arm_smmu_device *smmu = cfg->smmu;
>   	struct arm_smmu_smr *smrs = smmu->smrs;
>   	int i, idx, ret;
> +	struct iommu_fwspec *fwspec = arm_smmu_get_fwspec(cfg);
>   
>   	spin_lock(&smmu->stream_map_lock);
>   	/* Figure out a viable stream map entry allocation */
> -	for_each_cfg_sme(cfg, i, idx) {
> +	for_each_cfg_sme(cfg, i, idx, fwspec->num_ids) {
>   		if (idx != INVALID_SMENDX) {
>   			ret = -EEXIST;
>   			goto out_err;
>   		}
>   
> -		ret = arm_smmu_find_sme(smmu, cfg->streamids[i], 0);
> +		ret = arm_smmu_find_sme(smmu, fwspec->ids[i], 0);
>   		if (ret < 0)
>   			goto out_err;
>   
>   		idx = ret;
>   		if (smrs && smmu->s2crs[idx].count == 0) {
> -			smrs[idx].id = cfg->streamids[i];
> +			smrs[idx].id = fwspec->ids[i];
>   			smrs[idx].mask = 0; /* We don't currently share SMRs */
>   			smrs[idx].valid = true;
>   		}
> @@ -1522,7 +1539,7 @@ static int arm_smmu_master_alloc_smes(struct device *dev)
>   	}
>   
>   	/* It worked! Now, poke the actual hardware */
> -	for_each_cfg_sme(cfg, i, idx) {
> +	for_each_cfg_sme(cfg, i, idx, fwspec->num_ids) {
>   		arm_smmu_write_sme(smmu, idx);
>   	}
>   
> @@ -1542,9 +1559,10 @@ static void arm_smmu_master_free_smes(struct arm_smmu_master_cfg *cfg)
>   {
>       struct arm_smmu_device *smmu = cfg->smmu;
>   	int i, idx;
> +	struct iommu_fwspec *fwspec = arm_smmu_get_fwspec(cfg);
>   
>   	spin_lock(&smmu->stream_map_lock);
> -	for_each_cfg_sme(cfg, i, idx) {
> +	for_each_cfg_sme(cfg, i, idx, fwspec->num_ids) {
>   		if (arm_smmu_free_sme(smmu, idx))
>   			arm_smmu_write_sme(smmu, idx);
>   		cfg->smendx[i] = INVALID_SMENDX;
> @@ -1560,8 +1578,9 @@ static int arm_smmu_domain_add_master(struct arm_smmu_domain *smmu_domain,
>   	enum arm_smmu_s2cr_type type = S2CR_TYPE_TRANS;
>   	u8 cbndx = smmu_domain->cfg.cbndx;
>   	int i, idx;
> +	struct iommu_fwspec *fwspec = arm_smmu_get_fwspec(cfg);
>   
> -	for_each_cfg_sme(cfg, i, idx) {
> +	for_each_cfg_sme(cfg, i, idx, fwspec->num_ids) {
>   		if (type == s2cr[idx].type && cbndx == s2cr[idx].cbndx)
>   			continue;
>   
> @@ -1960,6 +1979,7 @@ 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)
> @@ -1967,19 +1987,26 @@ static int arm_smmu_add_device(struct device *dev)
>   
>   	if (dev_is_pci(dev)) {
>   		struct pci_dev *pdev = to_pci_dev(dev);
> +		struct iommu_fwspec *fwspec;
>   
>   		cfg = kzalloc(sizeof(*cfg), GFP_KERNEL);
>   		if (!cfg) {
>   			return -ENOMEM;
>   		}
>   
> -		cfg->num_streamids = 1;
> +		ret = iommu_fwspec_init(dev, smmu->dev);
> +		if (ret) {
> +			kfree(cfg);
> +			return ret;
> +		}
> +		fwspec = dev_iommu_fwspec_get(dev);
> +
>   		/*
>   		 * Assume Stream ID == Requester ID for now.
>   		 * We need a way to describe the ID mappings in FDT.
>   		 */
>   		pci_for_each_dma_alias(pdev, __arm_smmu_get_pci_sid,
> -				       &cfg->streamids[0]);
> +				       &fwspec->ids[0]);
>   		releasefn = __arm_smmu_release_pci_iommudata;
>   		cfg->smmu = smmu;
>   	} else {
> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> index 999b831d90..a51ae3c9c3 100644
> --- a/xen/drivers/passthrough/device_tree.c
> +++ b/xen/drivers/passthrough/device_tree.c
> @@ -140,6 +140,13 @@ int iommu_add_dt_device(struct dt_device_node *np)
>       if ( !ops )
>           return -EINVAL;
>   
> +	/*
> +	 * This is needed in case a device has both the iommus property and
> +	 * also apperars in the mmu-masters list.

s/apperars/appears/

> +	 */
> +    if ( dt_device_is_protected(np) )
> +        return 0;
We already have a check dt_device_is_protected() below. So why a second 
one is necessary?

But... as I pointed out in v2, I don't particularly like the idea to 
keep adding hack for the SMMUv{1, 2} in generic code.

In fact what you describe above is nothing different than someone 
calling twice iommu_add_dt_device() on a device. This can already happen 
today because XEN_DOMCTL_assign_device will try to add the device first 
and then assign. So if your VM reboot, iommu_add_dt_device() would 
return -EEXIST.

The code in XEN_DOMCTL_assign_device is already able to deal with 
-EEXIST. So I think the other callers should deal with it. 
Alternatively, I could be convinced to return...

> +
>       if ( dev_iommu_fwspec_get(dev) )
>           return -EEXIST;

... 0 here instead.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 13:23:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 13:23:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119348.225798 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbk9g-00078y-SR; Wed, 28 Apr 2021 13:23:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119348.225798; Wed, 28 Apr 2021 13:23: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 1lbk9g-00078r-Nr; Wed, 28 Apr 2021 13:23:04 +0000
Received: by outflank-mailman (input) for mailman id 119348;
 Wed, 28 Apr 2021 13:23:03 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>) id 1lbk9f-00078k-QP
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 13:23:03 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lbk9d-0005zk-2t; Wed, 28 Apr 2021 13:23:01 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=ua82172827c7b5a.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92)
 (envelope-from <hx242@xen.org>)
 id 1lbk9c-0003dv-Kt; Wed, 28 Apr 2021 13:23: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:Content-Type:
	References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID;
	bh=lY8qDKZUompIliZ1J3+wYZpeMeyzjOh6pnesKoSHdAM=; b=E4O1kezxm00KbkqR1I1vDZAmCz
	uu4dQk2iLBHr/gvhP83toyXhRerxm383U87/h9kIQlxzXf903JgXOrKkueWtJhNFiJJsLxYIMi2uP
	IY/G5TVo8LHJHs6nPITPiovPD69GMozik8YFIXDuj2XeYuWa1/CpezdrFM2MtLT4Ln04=;
Message-ID: <4317b9a308cce76de8c75288d41af9dde10cbe6e.camel@xen.org>
Subject: Re: [PATCH 13/16] xen/page_alloc: add a path for xenheap when there
 is no direct map
From: Hongyan Xia <hx242@xen.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: julien@xen.org, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Ian Jackson <ian.jackson@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Date: Wed, 28 Apr 2021 14:22:57 +0100
In-Reply-To: <1edc8d66-ca10-8e90-d8e8-2e299ef715d7@suse.com>
References: <cover.1588278317.git.hongyxia@amazon.com>
	 <32ae7c14babf7e78b60febb53095a74c5e865456.1588278317.git.hongyxia@amazon.com>
	 <a1bd2c72-1310-f018-dda5-90521be03fe4@suse.com>
	 <943480f695052163b540919c9c55655e5b4f741a.camel@xen.org>
	 <1edc8d66-ca10-8e90-d8e8-2e299ef715d7@suse.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit

On Wed, 2021-04-28 at 13:51 +0200, Jan Beulich wrote:
> On 28.04.2021 13:04, Hongyan Xia wrote:
> > On Thu, 2021-04-22 at 14:31 +0200, Jan Beulich wrote:
> > > As I don't think we have many cases where code actually depends
> > > on
> > > being able to apply __va() (or equivalent) to the address
> > > returned
> > > from alloc_xenheap_pages(), I think this should instead involve
> > > vmap(), with the vmap area drastically increased (perhaps taking
> > > all
> > > of the space the direct map presently consumes). For any
> > > remaining
> > > users of __va() or alike these should perhaps be converted into
> > > an
> > > alias / derivation of vmap_to_{mfn,page}() then.
> > 
> > That's true, and this was my first implementation (and also Wei's
> > original proposal) which worked okay. But, several problems got in
> > the
> > way.
> > 
> > 1. Partial unmap. Biggest offender is xmalloc which allocates and
> > could
> > then free part of it, which means we need to be able to partially
> > unmap
> > the region. vmap() does not support this.
> 
> If the direct map went fully away, and hence if Xen heap pages got
> vmap()-ed, there's no reason to keep xmalloc() from forwarding to
> vmalloc() instead of going this partial-unmap route.
> 
> > 2. Fast PA->VA. There is currently no way to go from PA to VA in
> > vmapped pages, unless we somehow repurpose or add new fields in
> > page_info. Also, VA->PA is possible but very slow now. There is not
> > much PA->VA in the critical path but see 3.
> 
> There would better not be any PA->VA. Can you point out examples
> where it would be hard to avoid using such? I also don't see the
> connection to 3 - is EPT code using PA->VA a lot? p2m-ept.c does
> not look to have a single use of __va() or ..._to_virt().

p2m does not have any __va(), but my performance results showed that
mapping and unmapping EPT when there is no direct map was incredibly
slow, hence why I moved EPT to xenheap in my local branch, which uses
__va().

> See my proposal to defer unmapping of the domain's own pages
> (and I would consider the p2m pages to be part of the domain's
> ones for this purpose). In fact, since the p2m pages come from a
> fixed, separate pool I wonder whether the entire pool couldn't
> be mapped in e.g. the per-domain VA range.

I thought about that as well, not just EPT but a lot of domain-private
pages can be moved to the per-domain range, and the secrets are hidden
by virtue of cr3 switches when switching to other domains. But still we
have the problem of quickly finding PA->VA (I don't mean __va(), I mean
finding the VA that can access a page table page) for EPT walks.

Mapping in bigger pages should work wonders for pre-partitioned guests
where we know the guest mostly just has contiguous physical memory and
a superpage map probably covers all pages in an HVM 2-level walk. But
for a generic solution where domain memory can be really fragmented
(and context switches can happen a lot on a pCPU), how can we quickly
find PA->VA in EPT walking without some intrusive changes to Xen? Of
course, if we do not allow the HAP pool to change and force the HAP
pool to be physically contiguous, we can just remember the base VA of
its vmapped region for quick PA->VA, but I don't think this is a
generic solution.

Am I missing anything?

Hongyan



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 13:24:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 13:24:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119352.225809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbkAr-0007Fm-5H; Wed, 28 Apr 2021 13:24:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119352.225809; Wed, 28 Apr 2021 13:24: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 1lbkAr-0007Ff-2O; Wed, 28 Apr 2021 13:24:17 +0000
Received: by outflank-mailman (input) for mailman id 119352;
 Wed, 28 Apr 2021 13:24: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 1lbkAp-0007Fa-On
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 13:24: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 1lbkAn-000619-Sk; Wed, 28 Apr 2021 13:24:13 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbkAn-0003jb-Lr; Wed, 28 Apr 2021 13: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=BfmwjtxpTqfULQSOpPgJAWr61uzi2QVJe+BRWGqYGWE=; b=QyjmcsBrKzFba7di+1RG0GXkbX
	QU0rF0H9GOgsu1pGaZchZBi4ijmxjiGpRddR4aNwDRVB/4K0iY+ovi28lXeWG/UKoIAKmcxThDeEg
	hOVRSGBPJH/9U4E1nAC8bTq5CVDpwhDQ9rQBLrjAzxvRfpXYYxmOhMdUY3MxAMUoaEyo=;
Subject: Re: [PATCH RESEND v3 2/3] arm,smmu: restructure code in preparation
 to new bindings support
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: Bertrand.Marquis@arm.com, Volodymyr_Babchuk@epam.com,
 rahul.singh@arm.com, brian.woods@xilinx.com,
 Stefano Stabellini <stefano.stabellini@xilinx.com>
References: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>
 <20210413175905.15123-2-sstabellini@kernel.org>
From: Julien Grall <julien@xen.org>
Message-ID: <c412eb38-8fdf-3d12-7e38-2e5eddcd7285@xen.org>
Date: Wed, 28 Apr 2021 14:24:11 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210413175905.15123-2-sstabellini@kernel.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 13/04/2021 18:59, Stefano Stabellini wrote:
> From: Brian Woods <brian.woods@xilinx.com>
> 
> Restructure some of the code and add supporting functions for adding
> generic device tree (DT) binding support.  This will allow for using
> current Linux device trees with just modifying the chosen field to
> enable Xen.
> 
> Signed-off-by: Brian Woods <brian.woods@xilinx.com>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
> Reviewed-by: Rahul Singh <rahul.singh@arm.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

> ---
>   xen/drivers/passthrough/arm/smmu.c | 62 +++++++++++++++++-------------
>   1 file changed, 35 insertions(+), 27 deletions(-)
> 
> diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
> index ac75e23268..f949c110ad 100644
> --- a/xen/drivers/passthrough/arm/smmu.c
> +++ b/xen/drivers/passthrough/arm/smmu.c
> @@ -810,52 +810,36 @@ static int insert_smmu_master(struct arm_smmu_device *smmu,
>   	return 0;
>   }
>   
> -static int register_smmu_master(struct arm_smmu_device *smmu,
> -				struct device *dev,
> -				struct of_phandle_args *masterspec)
> +static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu,
> +					 struct device *dev,
> +					 struct iommu_fwspec *fwspec)
>   {
> -	int i, ret = 0;
> +	int i;
>   	struct arm_smmu_master *master;
> -	struct iommu_fwspec *fwspec;
> +	struct device_node *dev_node = dev_get_dev_node(dev);
>   
> -	master = find_smmu_master(smmu, masterspec->np);
> +	master = find_smmu_master(smmu, dev_node);
>   	if (master) {
>   		dev_err(dev,
>   			"rejecting multiple registrations for master device %s\n",
> -			masterspec->np->name);
> +			dev_node->name);
>   		return -EBUSY;
>   	}
>   
>   	master = devm_kzalloc(dev, sizeof(*master), GFP_KERNEL);
>   	if (!master)
>   		return -ENOMEM;
> -	master->of_node = masterspec->np;
> -
> -	ret = iommu_fwspec_init(&master->of_node->dev, smmu->dev);
> -	if (ret) {
> -		kfree(master);
> -		return ret;
> -	}
> -	fwspec = dev_iommu_fwspec_get(dev);
> -
> -	/* adding the ids here */
> -	ret = iommu_fwspec_add_ids(&masterspec->np->dev,
> -				   masterspec->args,
> -				   masterspec->args_count);
> -	if (ret)
> -		return ret;
> +	master->of_node = dev_node;
>   
>   	/* Xen: Let Xen know that the device is protected by an SMMU */
> -	dt_device_set_protected(masterspec->np);
> +	dt_device_set_protected(dev_node);
>   
>   	for (i = 0; i < fwspec->num_ids; ++i) {
> -		u16 streamid = masterspec->args[i];
> -
>   		if (!(smmu->features & ARM_SMMU_FEAT_STREAM_MATCH) &&
> -		     (streamid >= smmu->num_mapping_groups)) {
> +		     (fwspec->ids[i] >= smmu->num_mapping_groups)) {
>   			dev_err(dev,
>   				"stream ID for master device %s greater than maximum allowed (%d)\n",
> -				masterspec->np->name, smmu->num_mapping_groups);
> +				dev_node->name, smmu->num_mapping_groups);
>   			return -ERANGE;
>   		}
>   		master->cfg.smendx[i] = INVALID_SMENDX;
> @@ -864,6 +848,30 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
>   	return insert_smmu_master(smmu, master);
>   }
>   
> +static int register_smmu_master(struct arm_smmu_device *smmu,
> +				struct device *dev,
> +				struct of_phandle_args *masterspec)
> +{
> +	int ret = 0;
> +	struct iommu_fwspec *fwspec;
> +
> +	ret = iommu_fwspec_init(&masterspec->np->dev, smmu->dev);
> +	if (ret)
> +		return ret;
> +
> +	fwspec = dev_iommu_fwspec_get(&masterspec->np->dev);
> +
> +	ret = iommu_fwspec_add_ids(&masterspec->np->dev,
> +				   masterspec->args,
> +				   masterspec->args_count);
> +	if (ret)
> +		return ret;
> +
> +	return arm_smmu_dt_add_device_legacy(smmu,
> +					     &masterspec->np->dev,
> +					     fwspec);
> +}
> +
>   static struct arm_smmu_device *find_smmu_for_device(struct device *dev)
>   {
>   	struct arm_smmu_device *smmu;
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 13:55:26 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 13:55:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119378.225822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbkei-0001UP-Kk; Wed, 28 Apr 2021 13:55:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119378.225822; Wed, 28 Apr 2021 13: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 1lbkei-0001UI-HX; Wed, 28 Apr 2021 13:55:08 +0000
Received: by outflank-mailman (input) for mailman id 119378;
 Wed, 28 Apr 2021 13:55:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbkeh-0001UD-97
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 13:55:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 54927e7a-1631-463e-92ec-6c1af4a60206;
 Wed, 28 Apr 2021 13:55:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 70778B197;
 Wed, 28 Apr 2021 13:55: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: 54927e7a-1631-463e-92ec-6c1af4a60206
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619618105; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=UMVnwNnoLMDZf5nSSh7sqO65rAV0iBlhVquou0Wers8=;
	b=eHLEJ5NoTutlamblIYkYZKBRMFkEQq/Jlx4ITifXsL++rh1Z6qGfMLfxhEjPY0ieYnhbhW
	ddt3cvhDV0oKpDZftK8iXIL4V8jIo0hdpqPqT7cRiFw5auZkwppy3ntunaEOH36TizaoXU
	E3GHh5mq/43n0I/pMs/bs7WPb9L0M58=
Subject: Re: [PATCH 13/16] xen/page_alloc: add a path for xenheap when there
 is no direct map
To: Hongyan Xia <hx242@xen.org>
Cc: julien@xen.org, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1588278317.git.hongyxia@amazon.com>
 <32ae7c14babf7e78b60febb53095a74c5e865456.1588278317.git.hongyxia@amazon.com>
 <a1bd2c72-1310-f018-dda5-90521be03fe4@suse.com>
 <943480f695052163b540919c9c55655e5b4f741a.camel@xen.org>
 <1edc8d66-ca10-8e90-d8e8-2e299ef715d7@suse.com>
 <4317b9a308cce76de8c75288d41af9dde10cbe6e.camel@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <3a5deabc-d711-651a-8d76-44fb03613901@suse.com>
Date: Wed, 28 Apr 2021 15:55:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <4317b9a308cce76de8c75288d41af9dde10cbe6e.camel@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28.04.2021 15:22, Hongyan Xia wrote:
> On Wed, 2021-04-28 at 13:51 +0200, Jan Beulich wrote:
>> See my proposal to defer unmapping of the domain's own pages
>> (and I would consider the p2m pages to be part of the domain's
>> ones for this purpose). In fact, since the p2m pages come from a
>> fixed, separate pool I wonder whether the entire pool couldn't
>> be mapped in e.g. the per-domain VA range.
> 
> I thought about that as well, not just EPT but a lot of domain-private
> pages can be moved to the per-domain range, and the secrets are hidden
> by virtue of cr3 switches when switching to other domains. But still we
> have the problem of quickly finding PA->VA (I don't mean __va(), I mean
> finding the VA that can access a page table page) for EPT walks.
> 
> Mapping in bigger pages should work wonders for pre-partitioned guests
> where we know the guest mostly just has contiguous physical memory and
> a superpage map probably covers all pages in an HVM 2-level walk. But
> for a generic solution where domain memory can be really fragmented
> (and context switches can happen a lot on a pCPU), how can we quickly
> find PA->VA in EPT walking without some intrusive changes to Xen? Of
> course, if we do not allow the HAP pool to change and force the HAP
> pool to be physically contiguous, we can just remember the base VA of
> its vmapped region for quick PA->VA, but I don't think this is a
> generic solution.

We don't need to make the p2m pool static, but I think we can build on
it changing rarely, if ever. Hence it changing may be acceptable to be
moderately expensive.

If we made the pool physically contiguous, translation - as you say -
would be easy. But even if we can't find enough physical memory for it
to be contiguous, we can still help ourselves. The intermediate case is
when we can still make it consist of all 2M pages. There translation
may be fast enough even via a brute force array lookup. If we need to
resort to 4k pages, why not maintain the PA->VA association in a radix
tree?

Independent of that I think there are some cycles to be gained by,
already today, not having to map and unmap the root page table for
every access (get, set, etc).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 13:56:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 13:56:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119382.225834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbkgF-0001cE-02; Wed, 28 Apr 2021 13:56:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119382.225834; Wed, 28 Apr 2021 13: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 1lbkgE-0001c7-TE; Wed, 28 Apr 2021 13:56:42 +0000
Received: by outflank-mailman (input) for mailman id 119382;
 Wed, 28 Apr 2021 13:56: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 1lbkgD-0001bG-Pl
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 13:56: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 1lbkgC-0006XB-5s; Wed, 28 Apr 2021 13:56:40 +0000
Received: from [54.239.6.188] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbkgB-0005jy-ST; Wed, 28 Apr 2021 13:56: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=z+23nAtDHbUY6XtDN0eg5wKMgkU70ngjKlgGQv+CiUg=; b=tg1BVbf7E59GdeIW3ghPuyhEqH
	4yjSCsVeKyaswNUY0hJa/p/mfmM8sw1d6Y9t3anpnuUG/T8sZGA1jEw4WWNQA/3aF/uNYhDDvtgvX
	XwRCDg+A8YOaqxFBCm07gWG7pqErAm1xnZSz5pKRTLo2Yo99SEkntVVm3vGUA2INiDC4=;
Subject: Re: [PATCH RESEND v3 3/3] arm,smmu: add support for generic DT
 bindings. Implement add_device and dt_xlate.
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: Bertrand.Marquis@arm.com, Volodymyr_Babchuk@epam.com,
 rahul.singh@arm.com, brian.woods@xilinx.com,
 Stefano Stabellini <stefano.stabellini@xilinx.com>
References: <alpine.DEB.2.21.2104131055580.4885@sstabellini-ThinkPad-T480s>
 <20210413175905.15123-3-sstabellini@kernel.org>
From: Julien Grall <julien@xen.org>
Message-ID: <a9802e45-9405-5b19-3d21-9c4b56374f23@xen.org>
Date: Wed, 28 Apr 2021 14:56:37 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210413175905.15123-3-sstabellini@kernel.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit



On 13/04/2021 18:59, Stefano Stabellini wrote:
> From: Brian Woods <brian.woods@xilinx.com>
> 
> Now that all arm iommu drivers support generic bindings we can remove
> the workaround from iommu_add_dt_device().

Well, it was just added in a different place in patch #1. ;) I have 
commented about it in patch #1.

> 
> Note that if both legacy bindings and generic bindings are present in
> device tree, the legacy bindings are the ones that are used
Can you oultine what guarantee that? Also what happen if some of devices 
are using the generic bindings while other are using the legacy one?
> 
> Signed-off-by: Brian Woods <brian.woods@xilinx.com>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
> Reviewed-by: Rahul Singh <rahul.singh@arm.com>
> ---
>   xen/drivers/passthrough/arm/smmu.c    | 42 ++++++++++++++++++++++++++-
>   xen/drivers/passthrough/device_tree.c | 17 +----------
>   2 files changed, 42 insertions(+), 17 deletions(-)
> 
> diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
> index f949c110ad..b564851a56 100644
> --- a/xen/drivers/passthrough/arm/smmu.c
> +++ b/xen/drivers/passthrough/arm/smmu.c
> @@ -254,6 +254,8 @@ struct iommu_group
>   	atomic_t ref;
>   };
>   
> +static struct arm_smmu_device *find_smmu(const struct device *dev);
> +
>   static struct iommu_group *iommu_group_alloc(void)
>   {
>   	struct iommu_group *group = xzalloc(struct iommu_group);
> @@ -442,6 +444,8 @@ static struct iommu_group *iommu_group_get(struct device *dev)
>   #define SMR_VALID			(1U << 31)
>   #define SMR_MASK_SHIFT			16
>   #define SMR_ID_SHIFT			0
> +#define SMR_ID_MASK			0x7fff
> +#define SMR_MASK_MASK			0x7fff
>   
>   #define ARM_SMMU_GR0_S2CR(n)		(0xc00 + ((n) << 2))
>   #define S2CR_CBNDX_SHIFT		0
> @@ -872,6 +876,40 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
>   					     fwspec);
>   }
>   
> +static int arm_smmu_dt_add_device_generic(u8 devfn, struct device *dev)
> +{
> +	struct arm_smmu_device *smmu;
> +	struct iommu_fwspec *fwspec;
> +
> +	fwspec = dev_iommu_fwspec_get(dev);
> +	if (fwspec == NULL)
> +		return -ENXIO;
> +
> +	smmu = find_smmu(fwspec->iommu_dev);
> +	if (smmu == NULL)
> +		return -ENXIO;
> +
> +	return arm_smmu_dt_add_device_legacy(smmu, dev, fwspec);

Patch #2 seems to imply the code was reworked to have distinct path 
between legacy and generic. But now, you are calling the legacy code 
from the generic helper. This is pretty confusing, can you explain 
what's going on?

> +}
> +
> +static int arm_smmu_dt_xlate_generic(struct device *dev,
> +				    const struct dt_phandle_args *spec)

This seems to be a verbatim copy from Linux. It would be good to mention 
it in the commit message. This would make easier to track any change.

> +{
> +	uint32_t mask, fwid = 0;
> +
> +	if (spec->args_count > 0)
> +		fwid |= (SMR_ID_MASK & spec->args[0]) << SMR_ID_SHIFT;
> +
> +	if (spec->args_count > 1)
> +		fwid |= (SMR_MASK_MASK & spec->args[1]) << SMR_MASK_SHIFT;
> +	else if (!of_property_read_u32(spec->np, "stream-match-mask", &mask))
> +		fwid |= (SMR_MASK_MASK & mask) << SMR_MASK_SHIFT;
> +
> +	return iommu_fwspec_add_ids(dev,
> +				    &fwid,
> +				    1);

NIT: This feels a bit odd to read. Can't they be defined on the same line?

> +}
> +
>   static struct arm_smmu_device *find_smmu_for_device(struct device *dev)
>   {
>   	struct arm_smmu_device *smmu;
> @@ -2836,6 +2874,7 @@ static void arm_smmu_iommu_domain_teardown(struct domain *d)
>   static const struct iommu_ops arm_smmu_iommu_ops = {
>       .init = arm_smmu_iommu_domain_init,
>       .hwdom_init = arm_smmu_iommu_hwdom_init,
> +    .add_device = arm_smmu_dt_add_device_generic,
>       .teardown = arm_smmu_iommu_domain_teardown,
>       .iotlb_flush = arm_smmu_iotlb_flush,
>       .iotlb_flush_all = arm_smmu_iotlb_flush_all,
> @@ -2843,9 +2882,10 @@ static const struct iommu_ops arm_smmu_iommu_ops = {
>       .reassign_device = arm_smmu_reassign_dev,
>       .map_page = arm_iommu_map_page,
>       .unmap_page = arm_iommu_unmap_page,
> +    .dt_xlate = arm_smmu_dt_xlate_generic,
>   };
>   
> -static __init const struct arm_smmu_device *find_smmu(const struct device *dev)
> +static struct arm_smmu_device *find_smmu(const struct device *dev)
>   {
>   	struct arm_smmu_device *smmu;
>   	bool found = false;
> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> index a51ae3c9c3..ae07f272e1 100644
> --- a/xen/drivers/passthrough/device_tree.c
> +++ b/xen/drivers/passthrough/device_tree.c
> @@ -162,22 +162,7 @@ int iommu_add_dt_device(struct dt_device_node *np)
>            * these callback implemented.
>            */
>           if ( !ops->add_device || !ops->dt_xlate )
> -        {
> -            /*
> -             * Some Device Trees may expose both legacy SMMU and generic
> -             * IOMMU bindings together. However, the SMMU driver is only
> -             * supporting the former and will protect them during the
> -             * initialization. So we need to skip them and not return
> -             * error here.
> -             *
> -             * XXX: This can be dropped when the SMMU is able to deal
> -             * with generic bindings.
> -             */
> -            if ( dt_device_is_protected(np) )
> -                return 0;
> -            else
> -                return -EINVAL;
> -        }
> +            return -EINVAL;
>   
>           if ( !dt_device_is_available(iommu_spec.np) )
>               break;
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 13:57:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 13:57:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119386.225846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbkhG-0001jK-9x; Wed, 28 Apr 2021 13:57:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119386.225846; Wed, 28 Apr 2021 13: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 1lbkhG-0001jC-6l; Wed, 28 Apr 2021 13:57:46 +0000
Received: by outflank-mailman (input) for mailman id 119386;
 Wed, 28 Apr 2021 13:57:45 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbkhF-0001j7-K2
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 13:57:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a8b8683d-b589-4415-aebd-ca22cbe80d4e;
 Wed, 28 Apr 2021 13:57:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 152ECB195;
 Wed, 28 Apr 2021 13:57: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: a8b8683d-b589-4415-aebd-ca22cbe80d4e
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619618264; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=T6BD+5OjSCi9y551mCIhNBmZQEpHYMNCs4DI9SEOV34=;
	b=EgoEnfJ5URKrW4hSnrIgOa34b2ZDNKbt7HMJLdSNeK9LT9/U/JLJWfBqh5UlcrsWHVbI0v
	ihDQQZ/JwcOnFHOD5+eTrEOXR2Hxqs2OyexugvaASIjsJNcXXVzSSXK+iHfOYPzBaNCkhC
	mbKjNGDGcprL+V5Z+RF9Fh/u5RR6WQE=
Subject: Re: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Andrew Cooper <andrew.cooper3@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>,
 Paul Durrant <paul@xen.org>, Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
 <YIk8MYCeKi0eKkrg@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <f0120aa9-f0f5-8756-d8e5-3190c2494618@suse.com>
Date: Wed, 28 Apr 2021 15:57:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIk8MYCeKi0eKkrg@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 28.04.2021 12:42, Roger Pau Monné wrote:
> On Mon, Apr 26, 2021 at 05:21:26PM +0100, Rahul Singh wrote:
>> --- a/xen/arch/x86/Kconfig
>> +++ b/xen/arch/x86/Kconfig
>> @@ -20,6 +20,7 @@ config X86
>>  	select HAS_NS16550
>>  	select HAS_PASSTHROUGH
>>  	select HAS_PCI
>> +	select PCI_MSI_INTERCEPT
>>  	select HAS_PDX
>>  	select HAS_SCHED_GRANULARITY
>>  	select HAS_UBSAN
> 
> This list is sorted alphabetically AFAICT, and new additions should
> respect that.

Since this isn't a user visible option, perhaps it wants to be
HAS_PCI_MSI_INTERCEPT anyway?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 14:06:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 14:06:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119394.225858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbkpM-0002lU-68; Wed, 28 Apr 2021 14:06:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119394.225858; Wed, 28 Apr 2021 14: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 1lbkpM-0002lN-2K; Wed, 28 Apr 2021 14:06:08 +0000
Received: by outflank-mailman (input) for mailman id 119394;
 Wed, 28 Apr 2021 14:06:06 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbkpK-0002lH-Dl
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 14:06:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d08075ab-3c2a-4a77-9ac1-c7e3cd08bda9;
 Wed, 28 Apr 2021 14:06:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 16DD0B197;
 Wed, 28 Apr 2021 14:06: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: d08075ab-3c2a-4a77-9ac1-c7e3cd08bda9
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619618764; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=+4s+PUF2FwuA2cRUZo+p7z3OIOchDLcXVbXHxrJiSVE=;
	b=Geb3MzCzE8rjPufBr/Om8ptdMg9/HVIVvs42RArlUC5y+XMsNuS2qUqd+utXMqizvHWzUd
	gSb9yVmVTZx8DYUSYsljqvNDY8NEK1BHlKQV7SNn77m23glMNaEGbYx+Y+XZdjbGCyOh/Q
	OyeTFj2/UYyX24XKBBKrdcF876ewbFQ=
Subject: Re: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
To: Rahul Singh <rahul.singh@arm.com>, xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.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>,
 Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <69e0f583-3c61-afe9-0710-6531f99e8a2e@suse.com>
Date: Wed, 28 Apr 2021 16:06:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 18:21, Rahul Singh wrote:
> --- a/xen/xsm/flask/hooks.c
> +++ b/xen/xsm/flask/hooks.c
> @@ -21,7 +21,7 @@
>  #include <xen/guest_access.h>
>  #include <xen/xenoprof.h>
>  #include <xen/iommu.h>
> -#ifdef CONFIG_HAS_PCI
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>  #include <asm/msi.h>
>  #endif
>  #include <public/xen.h>
> @@ -114,7 +114,7 @@ static int get_irq_sid(int irq, u32 *sid, struct avc_audit_data *ad)
>          }
>          return security_irq_sid(irq, sid);
>      }
> -#ifdef CONFIG_HAS_PCI
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>      {
>          struct irq_desc *desc = irq_to_desc(irq);
>          if ( desc->msi_desc && desc->msi_desc->dev ) {
> @@ -874,7 +874,7 @@ static int flask_map_domain_pirq (struct domain *d)
>  static int flask_map_domain_msi (struct domain *d, int irq, const void *data,
>                                   u32 *sid, struct avc_audit_data *ad)
>  {
> -#ifdef CONFIG_HAS_PCI
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>      const struct msi_info *msi = data;
>      u32 machine_bdf = (msi->seg << 16) | (msi->bus << 8) | msi->devfn;
>  
> @@ -940,7 +940,7 @@ static int flask_unmap_domain_pirq (struct domain *d)
>  static int flask_unmap_domain_msi (struct domain *d, int irq, const void *data,
>                                     u32 *sid, struct avc_audit_data *ad)
>  {
> -#ifdef CONFIG_HAS_PCI
> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>      const struct pci_dev *pdev = data;
>      u32 machine_bdf = (pdev->seg << 16) | (pdev->bus << 8) | pdev->devfn;
>  

Is all of this really related to MSI interception? Iirc the code here
has been around for much longer, and hence is more related to MSI
support in Xen in general (as required for PV guests in particular).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 14:11:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 14:11:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119403.225870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbkug-0003ec-Ud; Wed, 28 Apr 2021 14:11:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119403.225870; Wed, 28 Apr 2021 14:11: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 1lbkug-0003eV-RZ; Wed, 28 Apr 2021 14:11:38 +0000
Received: by outflank-mailman (input) for mailman id 119403;
 Wed, 28 Apr 2021 14:11:36 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x+xa=JZ=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lbkue-0003eQ-TR
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 14:11:36 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 50185ddb-13ca-4030-a196-a9e73423a793;
 Wed, 28 Apr 2021 14:11:35 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D9ACEB195;
 Wed, 28 Apr 2021 14:11: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: 50185ddb-13ca-4030-a196-a9e73423a793
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619619095; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=jF+yy4hFRh6bktEpd5I8Z5ZdHXSOdrEZkcW2+mFB2Vk=;
	b=oaAGtjuOjgQQth4VmmS23pH1zYQgb0cEptJxxXHT2ucgVhiPtxddoZ0Kw58rXsMDgC+8E3
	vq6y7avf8lJ7nEvyqmoGf6wLKzqWuvenixlzBbBgTrC4UxrWVb6WhKN+5iysxWnCQmFk08
	t8dmo/a85gtc6VsKj9gnfv8PBmQ8ThU=
Subject: Re: [PATCH v3 3/3] xen/pci: Refactor MSI code that implements MSI
 functionality within XEN
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Paul Durrant <paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <7b6651f10922571a10685dc7652fbce03b6b6e51.1619453100.git.rahul.singh@arm.com>
 <YIlBnQO+iuFFx2XO@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <976e133f-ee94-8a2a-bc50-ebed50e2bd71@suse.com>
Date: Wed, 28 Apr 2021 16:11:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIlBnQO+iuFFx2XO@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 28.04.2021 13:06, Roger Pau Monné wrote:
> On Mon, Apr 26, 2021 at 05:21:27PM +0100, Rahul Singh wrote:
>> MSI code that implements MSI functionality to support MSI within XEN is
>> not usable on ARM. Move the code under CONFIG_PCI_MSI_INTERCEPT flag to
>> gate the code for ARM.
>>
>> Currently, we have no idea how MSI functionality will be supported for
>> other architecture therefore we have decided to move the code under
>> CONFIG_PCI_MSI_INTERCEPT. We know this is not the right flag to gate the
>> code but to avoid an extra flag we decided to use this.
>>
>> No functional change intended.
>>
>> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
> 
> I think this is fine, as we don't really want to add another Kconfig
> option (ie: CONFIG_PCI_MSI) for just the non explicitly intercept MSI
> code.

While a separate config option may be excessive, keying it to the
wrong one is not desirable imo. If we want to avoid having PCI_MSI,
then keeping respective bits guarded by X86 would look better to me.
I'm not convinced though that doing the separation properly right
away (see also the XSM changes in patch 2 which imo belong here)
isn't going to be better in the long run, and hence introducing
HAS_PCI_MSI right away isn't the way to go.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 14:17:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 14:17:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119410.225882 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbl0a-0003st-L6; Wed, 28 Apr 2021 14:17:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119410.225882; Wed, 28 Apr 2021 14:17:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbl0a-0003sm-H6; Wed, 28 Apr 2021 14:17:44 +0000
Received: by outflank-mailman (input) for mailman id 119410;
 Wed, 28 Apr 2021 14:17:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=X8fo=JZ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbl0a-0003sh-09
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 14:17:44 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a646a2f5-b77a-4b3a-aa45-c1fd9b027881;
 Wed, 28 Apr 2021 14: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: a646a2f5-b77a-4b3a-aa45-c1fd9b027881
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619619462;
  h=subject:to:cc:references:from:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=xVrOoZYNt/VnZPD14bxlvfO2RS4K5RisfalQtDud74w=;
  b=fC9j0Vuo8dumoQ0WRaAYlStwmCyG0flD+fFVPBht7va9KVJv0iNleZW7
   phlxVm/zTNycR7rL9Xwb+oSPZRs6TIZiztSC3hSm/OTv8EOd9yD7886KL
   zy4tU+yQOCisdmOVMKSF3z/du6zVU3jZ6R2sKKJLNZ/tbe6TlPEILcCV6
   0=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: HJt9diM2L5ww4eZ9Pbns2umRI4QABfWX/MA67IrHgM20SUpsVrl4E6o5xtDBW0vLzUbxwzD4Tn
 DpoZC5UutcXp2LM8/dLbm32h3Bo7Y3T04gX6SSJR2ogdzync4c/J9vlXUA5ICEcxWpnukuQaJ4
 eThPb6cZVoHP+qHcnDGPPVO4l6yMR6Nx3X8D8P4hiLAgBhFAQIvezdeczVD482J3r9L/cAMmx1
 j2GKizSNHbaD0QoFwfDRek6+cQ5e2Y51t7mbmCVQROzGLO6hewYr3TVDeWqqoDFpnqNAVcx4eH
 7fY=
X-SBRS: 5.1
X-MesageID: 42608502
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:sRiO1KDZjNbQeJ/lHegDtMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPvfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VLdMgXE3Kpm2a
 9kGpITNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0McShBQchbnmBEIyycFVB7QxQDIJI/Go
 aV6MYvnUvfRV08aMOnCn4ZG9XZr9rQm578JTIADRgr6A6B5AnYl4LSOR6ewxsYTndz0a4vmF
 K17zDRy4eCl7WAyhHa33LO9Jg+orrc4/ZKGcDksLlvFhzCkQCtDb4RIoGqnDdwm+237UZvrd
 +kmWZcA+1Wy1f8Ol64ugHs3Q6I6kdd11bHxUWDiXXu5ezVLQhKc/Zpvo5SfhvH50dIhrgVu8
 gnrgHp1esiMTr6kCvw/NTOXR1x/3DEx0YKquIPk2dZFbIXdb45l/1twGpuDJwCECjmgbpXdd
 VGMce03oczTXqndXzD+kFgzNuwN05DZCuucwwpv8yY1CVuh3Zpz0cU79x3pAZxyLsND7ZD/O
 jKKaJuifVnSdIXd7t0AKM7TdKwEXGle2ODDEuiZXDcUI0XMXPErJD6pJ0z+eGRYZQNiL8/go
 7IXl90vXM7EnieSPGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uu9HImYRcPuTrH9
 KIfL5GCf7qKmXjXaxT2RflZpVUIX4CFOUIp9cAXU6UqM6jEPyoisXrNNLoYJb9GzctXW3yRl
 EZWiLoGclG5ke3HlDihhz8XG7sZ1zf8Zp8HLOyxZlW9KE9cql39iQFg1Ww4c+GbRdYtLYtQU
 d4KLT71oO3zFPGulrg3iFMAF5wH0xV6LLvXzdhvgkRKX75dr4FppG6cWBW132XGw9nQ6rtYU
 hijmUy3ZjyA42bxCgkBd7iGHmdlWEvqHWDSIpZvaGf+8H/eNcdAow9UKJ8USXHfiYF2TpCmS
 NmUkspV0XfHjThheGOl5oPHtzScNF6nUOMOs5bqXXWsG2GvsExTn4nXzqjOPTnxDoGdn5xvB
 lc4qUfiL2PlXKEMm0kmtk1N1VKdSCqGr5cNR+EY49Vg7jvXwl1QQ6x9GWnoiB2XlCv21QZh2
 TnIyHRXf3QGFJStkpV1bvQ/Epuen+QeF9xbX5GoZRwfF62z0pb4KuuXO6ewmGRYlwNzqUmPD
 bJbSA7Dyluy9q0vSTl1QqqJDED/NEDL+bdBLMsf/XvwXurMpSPjrxDNeRT5oxZONfntfIrXe
 qTdxSOFi7xD/ok1mWu1y4YERgxjENhveLj2RXj4mT94WU2BuDKJk96A54cONOR4gHfNr61+a
 Q8qehwm+S+Mm/8MIHbjY7WaiNOMRPVryqdSfoypZVdoKI1s/9SEvDgIE31/UAC+C97CsH+0H
 46auBcxpvqP4d0Zcwcey5D5DMS5Z6yBXpuljazO/M0eFEmsmTSMNyI6YfZsLZHODz3mCLAfX
 2ktxBH9/jLXyG/xacXJqI5L2NRclU94h1Zjaq/XryVLAWhbOdY+lWmdle7bb9GUaCAcI9g4i
 pS0pWtn+WNcTD/1x2VlTxnIrhW+2LiZc+pGgqDFapp9NO9UG78zZeC0YqWjD3tTyG8ZFldrY
 pZdVYIZsAGswIctuQMo2OPY52yhFkknVtY6SxmkVCo+rHO2harIWh2dSvDgptXWjFPNGOvls
 qty5nC6EjA
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42608502"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FLk3XEmV0jSARIVUxdgvaAVlN7yimVPuq95w9AicAwSc3QBkM2WTnNqoGrHGVvX9xWUmT0EPvbnMcml58AJTkjX78b7NOHq7orBOTqb8BUnI7od9mb+QufwcdKLj0MLltQgDfrtJIe9p5MewAeNBeBtQBq5+jqWDE5Z8zZINO0tsUH/hqPt7SoCc29j3yDJeOCG5Ny1/tQH86C6DmZut4jllzQ5NYMeitVrtNkFRkywLJtuJx5zURsfqoTIsnk9FmWWvE7al4o01GY+eKA+CAAxjTSo/moZ5c0X6GTRG/k8Kd2DsC0ggUoAouPfj/ylQTVMrq36rxkIWcndRxrVOXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=n+WP1I2cTtE3ypHvFpo6R6D/N3KMJYfW2us5beYhPps=;
 b=bHHLrZc5J4jCCSIjBRk+njTS8I5Ye65eu2LK0u0/30ubgGr01u0sDzC2LMSzFps4mgGNOJuPkpC3w/WcOZYF9QlSCEIj7Wfn6JdiJvy3ciqEUP/HIEfSon88tvrtUWABLgwJ2n+yVXh/omc4rjUiVU8kBjUdW/brwBbGPFKsajauLj7MzGQ0CbXHdWin+tvGRxOVQ9a/efHazyxLQzZ2UzRFpYEL70S1gNWPgPNWRKC1Q0LZopN3neldOaQmug5zvFKo5uX+DLiyZGxBSZEAf+I7kHSljkK8Ee9aiAfXDVHXNmZm9LnXu1GOiKAmuSfUHMJegJHpGwpLjzKAoAeEeg==
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=n+WP1I2cTtE3ypHvFpo6R6D/N3KMJYfW2us5beYhPps=;
 b=DJZpPB+IPW0Mqn+FLrum/vNfIjMkSMiYR2QbNxRN70sScIVmNn3SiWVqGkcpbpKdjvrOCqPMTr/bQJ4H+9awdJBluR198NQvOkMGbe3urUZc3Oz7UixvvRR+klu24QJHsWebrlRTY5wVc3MnVY4oB83ch2tZr8Qf0FH2lYnOF1c=
Subject: Re: [PATCH 2/3] x86/svm: Enumeration for CET
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-3-andrew.cooper3@citrix.com>
 <a5d73b34-8200-ae0c-6c91-252ad2812f3d@suse.com>
 <f50d2a46-ef8b-d867-4773-aa291586e26c@citrix.com>
 <55c50b27-e8cc-873e-e768-7e9dec6f06a0@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Message-ID: <b20b3a2c-9923-af5a-c04c-c381bdc15e60@citrix.com>
Date: Wed, 28 Apr 2021 15:17:32 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <55c50b27-e8cc-873e-e768-7e9dec6f06a0@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0143.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:193::22) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 128796bb-6948-45f7-a011-08d90a5060ce
X-MS-TrafficTypeDiagnostic: SJ0PR03MB5567:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <SJ0PR03MB5567118EEE66395AB3C7FC84BA409@SJ0PR03MB5567.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: DSOZl9LD3hb2OoNTjODJn3Bz3M/0H5GWZzPv1mGuO6Wz72zOI3I6qgpd0lYuivIeyeQO0MEN2JXfLIAUzhK9vNAgP8uaNBOeQaDegV1Dez5FhMcbbrTdubtl9IrpJ8iEaZryC3DdzYkUxKJYvUfs+WwPUR9yzKzViIQzhMRg4FlRZqAj8SQIwpnat8Yn6Br/S81H2276FJ3QUnM017BsgwOvR7u45xvyYaBLJosjrkZT+Dsyl3hbVGhe98qKlYeTn2iKvFOeFPV4LTbLpQApDo7t0gS2aI32f6FZ1aUFLxVcJSt/UiX/4UzKU+3bbJ4ba9aeAYVcDikT/FgZYYozssuFQWmdatq/HqMZdZezMI3PSdiel9mFccLO9N4xrp52hh4OLQbRVrqucNaQvSylGZOcHqz78WnTqZhenY5O6rbDSfn90UJnHAvNkgnJDGC8ATEAhvB2IoqvbAqmZKJy8AO5WHRkJleB1O+Fv5eCTsXf2ZyWb7aRKrLJp1LHwuMEd5y79O+pcgFck/mS054Cpv2/oQJuXrMA3pfLA0efVnU1Y+5cucOfN5xhdWvXqqmr49ORw+2u62Ya8Ok075QgC3KVwCIm9scPY2j603o/432YxyANRmDL/OA2ZU2rdfr8Jqkyt04X3HHTQDPoP0UVCOYJVF6stRIn7RHlfDXp8nTrvDY0ImHc3BBSQBSWFK+i
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(376002)(396003)(366004)(346002)(136003)(316002)(478600001)(186003)(956004)(5660300002)(16526019)(2616005)(2906002)(53546011)(6486002)(86362001)(38100700002)(31696002)(83380400001)(26005)(6916009)(54906003)(8936002)(8676002)(31686004)(6666004)(66476007)(66556008)(36756003)(4326008)(66946007)(16576012)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?/EH3U3ZL+U8Qrd+Aeuuy2DGfVNmh7CHkCc1XEuL?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 128796bb-6948-45f7-a011-08d90a5060ce
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 14:17:38.8810
 (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: dB6/xuKusGmZw8z4VzyVhuMnD85ZjhyXHCpTDFv4xX/sjsx2oocXqCKE5jR2cCi7ob1z6LzLyHQkAljT/qNqw0V/MGkay9QxjZZqTcILpyI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5567
X-OriginatorOrg: citrix.com

On 28/04/2021 10:14, Jan Beulich wrote:
> On 27.04.2021 19:47, Andrew Cooper wrote:
>> On 27/04/2021 16:53, Jan Beulich wrote:
>>> On 26.04.2021 19:54, Andrew Cooper wrote:
>>>> @@ -497,7 +501,9 @@ struct vmcb_struct {
>>>>      u64 rip;
>>>>      u64 res14[11];
>>>>      u64 rsp;
>>>> -    u64 res15[3];
>>>> +    u64 _msr_s_cet;             /* offset 0x400 + 0x1E0 - cleanbit 12 */
>>>> +    u64 _ssp;                   /* offset 0x400 + 0x1E8   | */
>>>> +    u64 _msr_isst;              /* offset 0x400 + 0x1F0   v */
>>>>      u64 rax;
>>>>      u64 star;
>>>>      u64 lstar;
>>> Any reason for the leading underscores, when none of the neighboring
>>> fields have such?
>> Yes - they're covered by a cleanbit, and for better or worse, this is
>> our style.
> The underscore prefixes are, to my understanding, there only to
> emphasize that the fields shouldn't be accessed directly, but ...
>
>>> Did you perhaps mean to add VMCB_ACCESSORS()
>>> instances for them?
>> TBH, I opencoded the cleanbit handling because I thoroughly hate that
>> entire infrastructure.
> ... via this (or something with similar abstracting effect). So
> for any fields you mean to access directly they imo shouldn't be
> there. I particularly don't view them as indicators of being
> covered by cleanbits (if the respective accessors aren't used).

The leading underscores are enforced by 'vmcb->_ ## name' in
VMCB_ACCESSORS().

The cleanbits are the only reason we can't treat this as a simple struct.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 14:26:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 14:26:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119415.225893 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbl8k-0004ms-Ea; Wed, 28 Apr 2021 14:26:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119415.225893; Wed, 28 Apr 2021 14:26:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbl8k-0004ml-Bk; Wed, 28 Apr 2021 14:26:10 +0000
Received: by outflank-mailman (input) for mailman id 119415;
 Wed, 28 Apr 2021 14:26: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 1lbl8j-0004mg-Bv
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 14:26: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 1lbl8h-00077a-Cj; Wed, 28 Apr 2021 14:26:07 +0000
Received: from [54.239.6.186] (helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lbl8h-0007qZ-21; Wed, 28 Apr 2021 14:26: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=C90CyP+ruIQPPCv8QaI4mFnhpoGJnKM2i2JgHT7xgWw=; b=UBwnWcADh5TLGoCqoxe7layeZB
	elV4B7BWx0Wb0ieOie/uv52/To2Roh6/9SjttaLivir9cfwPgPXBoWwoBT9r2z6xY8U2b5iOeNwoi
	d/RbBDP21agp+KzEBryQFFa1cxqlSjqrBrHWzDPNjfyXstTAjTVi59jMg8ocan3bnwu8=;
Subject: Re: [PATCH v3 3/3] xen/pci: Refactor MSI code that implements MSI
 functionality within XEN
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Rahul Singh <rahul.singh@arm.com>
Cc: xen-devel@lists.xenproject.org, bertrand.marquis@arm.com,
 Jan Beulich <jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <7b6651f10922571a10685dc7652fbce03b6b6e51.1619453100.git.rahul.singh@arm.com>
 <YIlBnQO+iuFFx2XO@Air-de-Roger>
From: Julien Grall <julien@xen.org>
Message-ID: <a4ff0fba-2d33-64ff-2fbe-ba4f24cfc602@xen.org>
Date: Wed, 28 Apr 2021 15:26:04 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIlBnQO+iuFFx2XO@Air-de-Roger>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 28/04/2021 12:06, Roger Pau Monné wrote:
> On Mon, Apr 26, 2021 at 05:21:27PM +0100, Rahul Singh wrote:
>> MSI code that implements MSI functionality to support MSI within XEN is
>> not usable on ARM. Move the code under CONFIG_PCI_MSI_INTERCEPT flag to
>> gate the code for ARM.
>>
>> Currently, we have no idea how MSI functionality will be supported for
>> other architecture therefore we have decided to move the code under
>> CONFIG_PCI_MSI_INTERCEPT. We know this is not the right flag to gate the
>> code but to avoid an extra flag we decided to use this.
>>
>> No functional change intended.
>>
>> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
> 
> I think this is fine, as we don't really want to add another Kconfig
> option (ie: CONFIG_PCI_MSI) for just the non explicitly intercept MSI
> code.

+1 This is code and therefore can be revisited once we have more data 
(e.g. a second arch that will re-use it).

> 
> 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 Apr 28 15:00:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 15:00:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119434.225906 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lblfG-0007Sf-6S; Wed, 28 Apr 2021 14:59:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119434.225906; Wed, 28 Apr 2021 14:59:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lblfG-0007SY-2Q; Wed, 28 Apr 2021 14:59:46 +0000
Received: by outflank-mailman (input) for mailman id 119434;
 Wed, 28 Apr 2021 14:59:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=d1tw=JZ=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lblfE-0007ST-HG
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 14:59:44 +0000
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [40.107.4.78]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d29d7d79-23d5-4d0b-9819-bc573370a0cf;
 Wed, 28 Apr 2021 14:59:41 +0000 (UTC)
Received: from AM6P193CA0102.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:88::43)
 by VI1PR08MB4528.eurprd08.prod.outlook.com (2603:10a6:803:fd::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Wed, 28 Apr
 2021 14:59:38 +0000
Received: from VE1EUR03FT027.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:88:cafe::4) by AM6P193CA0102.outlook.office365.com
 (2603:10a6:209:88::43) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.25 via Frontend
 Transport; Wed, 28 Apr 2021 14:59:38 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT027.mail.protection.outlook.com (10.152.18.154) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Wed, 28 Apr 2021 14:59:37 +0000
Received: ("Tessian outbound 1e34f83e4964:v91");
 Wed, 28 Apr 2021 14:59:37 +0000
Received: from 0b2f47f2d573.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 195C26B2-E392-47DC-9426-B97AE2920802.1; 
 Wed, 28 Apr 2021 14:59:31 +0000
Received: from EUR03-AM5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0b2f47f2d573.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 28 Apr 2021 14:59:31 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3550.eurprd08.prod.outlook.com (2603:10a6:803:84::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Wed, 28 Apr
 2021 14:59:29 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4065.028; Wed, 28 Apr 2021
 14:59:29 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO2P123CA0089.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:138::22) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Wed, 28 Apr 2021 14:59: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: d29d7d79-23d5-4d0b-9819-bc573370a0cf
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3tgEjj362FzydY290hwrze0IlDLLZE0jiTB8K6Yi4O4=;
 b=jbd/DojTW9wZRbrBR1YQGkXxj2fjcmSQvUzkV5OENJsUdm7IV4H1okTVEGED/QC75hkDwX1gbBkyEDeTGK+0NWozgaKOcCe+/EmVuOCeiFYRgd2mX2fetgoZTtrwmOjYB5PMeHhEC5N+LZqyTSGqJAMcIIMTIL2scStkC94g0jY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 2ec16a4a6ee14d41
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ix+stedP6hP5SUmUro2J4qnh3vrFhNPyzG+E9Ozr6GlglwR+HhsekFbf6JJF27DXfe2j3wYBIdEw1QnjylQ0gordfsXtdwZMX7j96mcUH6xraaq5LxnqR7KutMP5m7x06Spoj1PCH9smBHtZcUmOmYeLspTHnDFJfugVqO4zNHbGoewV+P/0fPNXuwfCJOFlFov6EVuGwGP0d4dYt4+/lMKGJTYff4UMOaRhjBeDgkIp+Cx5/T9rICCDSpy8qC+gfDuofSucZ8XtD9GCDGEfsiubcgIAZOvKYHqfHFU8UzyaFWK+Wc1VXUb1GJl3Yc3BxTRuTv36huMI5z6TgZVNWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3tgEjj362FzydY290hwrze0IlDLLZE0jiTB8K6Yi4O4=;
 b=K6cYaGUEUPuNkcqb4Iyo04Y9dWU/Cs4qgz+BN4aHQuiavNHoziW3mf7PbiKRnmoKmvNvt5GgBSznJXfP+se5OlRdi/FKf5w8XFiwAf3b8MBkzaEaN6IZ9PaIDMvY2skNWx3lnYbko+NIhHwIXjggtBDVt+VE4AV342wuhqKedR+8hYhTihPc8naFcN3HS8A+Q8RQlOrsswPMr+psa0x/jRpoHfvAvVE6w9hSFtXfsuP/zn3hKuBjZGJPU2aiFHgLDPzVUUIfF64JHaf5XLSIkyeBW6Uh1gvFuKiDbvw9xXY47bDkBQ+oAXnibPyITAp9E+H1r48lE+mpnJKofc2S1A==
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=3tgEjj362FzydY290hwrze0IlDLLZE0jiTB8K6Yi4O4=;
 b=jbd/DojTW9wZRbrBR1YQGkXxj2fjcmSQvUzkV5OENJsUdm7IV4H1okTVEGED/QC75hkDwX1gbBkyEDeTGK+0NWozgaKOcCe+/EmVuOCeiFYRgd2mX2fetgoZTtrwmOjYB5PMeHhEC5N+LZqyTSGqJAMcIIMTIL2scStkC94g0jY=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v3 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
Date: Wed, 28 Apr 2021 15:59:21 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <E47AFE69-CA75-468D-868D-182F78C6992C@arm.com>
References: <20210426153741.26904-1-luca.fancellu@arm.com>
 <20210426153741.26904-4-luca.fancellu@arm.com>
 <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P123CA0089.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:138::22) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: cc54c152-6dc7-468e-a977-08d90a563e5b
X-MS-TrafficTypeDiagnostic: VI1PR08MB3550:|VI1PR08MB4528:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR08MB45289EEE72BA6BA0464560F3E4409@VI1PR08MB4528.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 LeFWBDaIVkz9EbBK7F/8JBpMO+PWgFFAKL/R7wC6b6Wf7NgWOTuAtl4CEuL8NIc7REwtGifzfkp0cRWIYD7uTwt4zh69feKu4IlZ0PpHtleXQKWdSODWCfiWYvTe6kapFpioUnBs2ccHTEGwFIKxH6q2w8yMB0ws/ib5ujaYFgbnKVG+wMTyjECDaCyipe5/ZYpXbcfHr4GgzuSC2Q1FZRVLMBOjoy7w0vpN1ENbryb1QUYrrtXGO5DBopnQb5cAIpnRe43dbkhdyMMT0IYWJvwvuSgog3MdzfkPHkNcLIq0HclM6ckixFg0PyejNhQoZCk44LG12187/Azm2dpptqNdhTmdVb/4DDSXSHC2tQ1CRJT4keAY8g3BqEhb3+QgDrip7n1Vec+BzvGyrD6dpritZEvM9lx1p+y0e9ycCwr1yJ1obqZINQVQADcfHg5jksNPE5TvnB4onXrWaPNhjZLUzbYn7R1+GzhUZtmste1SIn389e4KUYfuccjWZk2qFcZ7bkQrdiLpS2REWYI8fESswrbpFOWZTtMi4IDCaDzQJTKtAgWT9pnC/4hkGWKaIUt6T9Ed/cYc80EMQhxQEsszkKYCEiDk33XIZgyN7ZYvfZKFwVPlB8P0/4aSBofVfuYj5XfE3DM/7lFO3i10LkeqeXBuyV8dP/L11JYCbdCaJy8wuUBZZQSwBY72Md1BJIlKi9kFcPNnZprCBaEqwJtJ3ouK+Pyaf+ZpLvwGauM=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39830400003)(376002)(346002)(396003)(136003)(366004)(86362001)(66946007)(5660300002)(83380400001)(966005)(38100700002)(36756003)(6666004)(44832011)(4326008)(478600001)(7696005)(33656002)(38350700002)(53546011)(66556008)(6486002)(26005)(2906002)(66476007)(8676002)(2616005)(16526019)(316002)(52116002)(8936002)(54906003)(186003)(6916009)(956004)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3550
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	da23df62-6553-43c9-fcb3-08d90a563937
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Zxgx8joh9MrfIxLlH9oEtyfx3hkM28hFKPPNzvEL9jnAN3aSGl2fbLSOOe5v4qyzteEJCrPSt2MNeKzW+SPCxxxXAqLDuF/9pR70hhidQuNLK/7UwTdIgxvoKL7hxOZ2ZeDWZpYuiGb72ps0o/VU7M47GGDao8Wdt80c4rc6nzY5IzjjSBRSrFzA2IEoygnr4x3jAjgQ/FQ/3G1uTQCTy6s0Y/opOIXdkpx0oFIJFkFxerl7rHK1i38TV5CAT7asqx3igOOi6a20j1pkaHwdYysCwYoUXAj1EYbwUdsG0G1rZaOMZuERZLA9QLdQ/wuyhpT8grNVILAZ0emkzPaCfbWnlDJbX+uxNhMipUVZ8ChJKWtOgmlQL8vjNYPduoK31MWOnGEvpajuz0975g95OHfKpGIyZRZU435KUyLskeunFVnI6q12kGRDC8nTSOHgvA6oNUylt5DGFFaku9klnkbiDsW9iqs5U0E5v4g6hllEtHTDCTQWGd9yhawgk7cHFqouwbmg7PN/6wb3QOAwHbL1KIWNLZr1WbBdWuMAUwCaWXr/7ojUlmtNCa1Q87wRdjtjE6Pi/+12gKRBDQ/J+qGUhodUKlSb7n81ubLj1gNlar5LRjXisk7KUhAzbBf/FpH9asQ1zp1K9GeVFy3E2RYnQdftBCdezmmwnxbJMhnpvnAkp4ppbSm1Qme/JkL7jL4S5Lyev+GISames7pdasyxJNaJ5nP75/+s5mwPE5g=
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:(4636009)(376002)(396003)(346002)(136003)(39860400002)(36840700001)(46966006)(26005)(82310400003)(2616005)(47076005)(6486002)(34020700004)(70206006)(33656002)(81166007)(6666004)(70586007)(956004)(86362001)(186003)(36756003)(44832011)(7696005)(2906002)(336012)(8676002)(36860700001)(966005)(16526019)(53546011)(478600001)(5660300002)(83380400001)(8936002)(6862004)(54906003)(82740400003)(316002)(4326008)(356005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 14:59:37.6996
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: cc54c152-6dc7-468e-a977-08d90a563e5b
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:
	VE1EUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4528



> On 27 Apr 2021, at 14:57, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 26.04.2021 17:37, Luca Fancellu wrote:
>> --- a/docs/hypercall-interfaces/arm64.rst
>> +++ b/docs/hypercall-interfaces/arm64.rst
>> @@ -8,6 +8,7 @@ Starting points
>> .. toctree::
>>    :maxdepth: 2
>>=20
>> +   arm64/grant_tables
>>=20
>>=20
>> Functions
>> diff --git a/docs/hypercall-interfaces/arm64/grant_tables.rst b/docs/hyp=
ercall-interfaces/arm64/grant_tables.rst
>> new file mode 100644
>> index 0000000000..8955ec5812
>> --- /dev/null
>> +++ b/docs/hypercall-interfaces/arm64/grant_tables.rst
>> @@ -0,0 +1,8 @@
>> +.. SPDX-License-Identifier: CC-BY-4.0
>> +
>> +Grant Tables
>> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>> +
>> +.. doxygengroup:: grant_table
>=20
> I continue to object to this giving the impression that grant tables
> are something Arm64 specific.

Hi Jan,

I=E2=80=99ll put it in a folder named =E2=80=9Ccommon"

>=20
>> @@ -66,6 +67,7 @@
>>  *     compiler barrier will still be required.
>>  *
>>  * Introducing a valid entry into the grant table:
>> + * @code
>>  *  1. Write ent->domid.
>>  *  2. Write ent->frame:
>>  *      GTF_permit_access:   Frame to which access is permitted.
>> @@ -73,20 +75,25 @@
>>  *                           frame, or zero if none.
>>  *  3. Write memory barrier (WMB).
>>  *  4. Write ent->flags, inc. valid type.
>> + * @endcode
>>  *
>>  * Invalidating an unused GTF_permit_access entry:
>> + * @code
>>  *  1. flags =3D ent->flags.
>>  *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
>>  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>  *  NB. No need for WMB as reuse of entry is control-dependent on succes=
s of
>>  *      step 3, and all architectures guarantee ordering of ctrl-dep wri=
tes.
>> + * @endcode
>>  *
>>  * Invalidating an in-use GTF_permit_access entry:
>> + *
>>  *  This cannot be done directly. Request assistance from the domain con=
troller
>>  *  which can set a timeout on the use of a grant entry and take necessa=
ry
>>  *  action. (NB. This is not yet implemented!).
>>  *
>>  * Invalidating an unused GTF_accept_transfer entry:
>> + * @code
>>  *  1. flags =3D ent->flags.
>>  *  2. Observe that !(flags & GTF_transfer_committed). [*]
>>  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>=20
> Since neither in the cover letter nor in the description here I could
> spot a link to the resulting generated doc, I wonder what the
> inconsistencies above are about: You add @code/@endcode (and no blank
> lines) to parts of what's being described, and _instead_ a blank line
> to another part. I think the goal should be that not only the
> generated doc ends up looking "nice", but that the source code also
> remains consistent. Otherwise, someone like me coming across this
> later on might easily conclude that there was a @code/@endcode pair
> missed.

Yes I=E2=80=99ll explain better in the commit message, that part and other =
parts are
enclosed by @code/@endcode because they are formatted using spaces.
If the block is not enclosed the spaces are missing in the html page result=
ing
In a mess.
If you can suggest an alias for the @code/@endcode command, I can create
it so that the user looking the source code can understand better what's go=
ing on.
An example: @keepformat/@endkeepformat OR @keepindent/@endkeepindent

Here a link to the documentation right now:=20
https://luca.fancellu.gitlab.io/xen-docs/hypercall-interfaces/arm64/grant_t=
ables.html

>=20
>> @@ -97,18 +104,23 @@
>>  *      transferred frame is written. It is safe for the guest to spin w=
aiting
>>  *      for this to occur (detect by observing GTF_transfer_completed in
>>  *      ent->flags).
>> + * @endcode
>>  *
>>  * Invalidating a committed GTF_accept_transfer entry:
>>  *  1. Wait for (ent->flags & GTF_transfer_completed).
>>  *
>=20
> Why did this not also get enclosed by @code/@endcode?

In this case there are no spaces that contributes to the indentation.

>=20
>>  * Changing a GTF_permit_access from writable to read-only:
>> + *
>>  *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writin=
g.
>>  *
>>  * Changing a GTF_permit_access from read-only to writable:
>> + *
>>  *  Use SMP-safe bit-setting instruction.
>=20
> And these two?

These two lines makes the resulting html page looks better, the source code=
 however
seems not too impacted by the change though.

>=20
>> + * @addtogroup grant_table Grant Tables
>=20
> And no blank (comment) line ahead of this?

Here there is no need for a blank line in the comment, but if in your opini=
on the source
code will look better I can add it

>=20
>> @@ -120,24 +132,26 @@ typedef uint32_t grant_ref_t;
>>  * [GST]: This field is written by the guest and read by Xen.
>>  */
>>=20
>> -/*
>> - * Version 1 of the grant table entry structure is maintained purely
>> - * for backwards compatibility.  New guests should use version 2.
>> - */
>> #if __XEN_INTERFACE_VERSION__ < 0x0003020a
>> #define grant_entry_v1 grant_entry
>> #define grant_entry_v1_t grant_entry_t
>> #endif
>> +/**
>> + * Version 1 of the grant table entry structure is maintained purely
>> + * for backwards compatibility.  New guests should use version 2.
>> + */
>=20
> In case I didn't say so already before - I think this would be a good
> opportunity to drop the comment pointing at v2. With v2 optionally
> unavailable altogether, this can't possibly be a generally valid
> course of action.

Could you explain me better that? Do you want to get rid of this comment?

/**
* Version 1 of the grant table entry structure is maintained purely
* for backwards compatibility.  New guests should use version 2.
*/

In this case I don=E2=80=99t think this commit is the right place to do tha=
t, I can just
put it back where it was so that the documentation simply doesn=E2=80=99t s=
how that.

>=20
>> @@ -451,11 +465,6 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_transfer_t);
>>  * bytes to be copied.
>>  */
>>=20
>> -#define _GNTCOPY_source_gref      (0)
>> -#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
>> -#define _GNTCOPY_dest_gref        (1)
>> -#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
>> -
>> struct gnttab_copy {
>>     /* IN parameters. */
>>     struct gnttab_copy_ptr {
>> @@ -471,6 +480,12 @@ struct gnttab_copy {
>>     /* OUT parameters. */
>>     int16_t       status;
>> };
>> +
>> +#define _GNTCOPY_source_gref      (0)
>> +#define GNTCOPY_source_gref       (1<<_GNTCOPY_source_gref)
>> +#define _GNTCOPY_dest_gref        (1)
>> +#define GNTCOPY_dest_gref         (1<<_GNTCOPY_dest_gref)
>=20
> I guess I didn't express myself precisely enough: I think these
> would better live _immediately_ next to the field that uses them.

Ok I didn=E2=80=99t get that, I=E2=80=99ll put them right next to the field

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 15:11:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 15:11:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119443.225917 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lblqO-0000ig-DK; Wed, 28 Apr 2021 15:11:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119443.225917; Wed, 28 Apr 2021 15:11: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 1lblqO-0000iZ-AA; Wed, 28 Apr 2021 15:11:16 +0000
Received: by outflank-mailman (input) for mailman id 119443;
 Wed, 28 Apr 2021 15:11: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 1lblqM-0000iR-HU; Wed, 28 Apr 2021 15:11: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 1lblqM-0007tB-7l; Wed, 28 Apr 2021 15:11: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 1lblqL-0003fT-Td; Wed, 28 Apr 2021 15:11:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lblqL-0005bR-RM; Wed, 28 Apr 2021 15: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=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=KICURXja7Swwmiu5lAy3XreXwylnAlMOGbWOh2RnlNc=; b=g7StzfVEzbpvSpWeAeLRqKdElX
	OIYDA4Vqbjv/EAoTUPC0hfZY8Zo12OJqrdrbttspUTIZ99A2svnWNlYmCJQ/Nsy35resHXWX53F5W
	U1LGJrpSGUz+m9kX8kAKc3rHUG+GO/cmeFRaqy+aQRLS6BppAPbdneW1rSpis4rYAcFw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-armhf-armhf-libvirt
Message-Id: <E1lblqL-0005bR-RM@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 15:11:13 +0000

branch xen-unstable
xenbranch xen-unstable
job test-armhf-armhf-libvirt
testid guest-start

Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161505/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-armhf-armhf-libvirt.guest-start.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-armhf-armhf-libvirt.guest-start --summary-out=tmp/161505.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-armhf-armhf-libvirt guest-start
Searching for failure / basis pass:
 161481 fail [host=arndale-westfield] / 160125 [host=arndale-bluewater] 160119 [host=arndale-lakeside] 160113 [host=cubietruck-braque] 160104 [host=cubietruck-gleizes] 160097 [host=arndale-metrocentre] 160091 ok.
Failure / basis pass flights: 161481 / 160091
Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 5396354b868bd6652600a654bba7df16701ac1cb 0cef06d18762374c94eb4d511717a4735d668a24 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 11e7f0fe72ca0060762d18268e0388731fe8ccb6
Basis pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/libvirt.git#2c846fa6bcc11929c9fb857a22430fb9945654ad-2c846fa6bcc11929c9fb857a22430fb9945654ad https://gitlab.com/keycodemap/keycodemapdb.git#27acf0ef828bf719b2053ba398b195829413dbdd-27acf0ef828bf719b2053ba398b195829413dbdd git://xenbits.xen.org/linux-pvops.git#a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9-a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\
 dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#4751a48aeb2ab828b0a5cbdc585fd3642967cda1-5396354b868bd6652600a654bba7df16701ac1cb git://git.qemu.org/qemu.git#e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c-0cef06d18762374c94eb4d511717a4735d668a24 git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#14b95b3b8546db201e7efd0636ae0e215fae98f3-11e7f0fe72ca0060762d1826\
 8e0388731fe8ccb6
Loaded 34963 nodes in revision graph
Searching for test results:
 160091 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 160097 [host=arndale-metrocentre]
 160104 [host=cubietruck-gleizes]
 160113 [host=cubietruck-braque]
 160119 [host=arndale-lakeside]
 160125 [host=arndale-bluewater]
 160134 fail irrelevant
 160147 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail irrelevant
 160748 fail irrelevant
 160779 fail irrelevant
 160801 fail irrelevant
 160827 fail irrelevant
 160851 fail irrelevant
 160883 fail irrelevant
 160916 fail irrelevant
 160980 fail irrelevant
 161050 fail irrelevant
 161088 fail irrelevant
 161121 fail irrelevant
 161147 fail irrelevant
 161171 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2ad22420a710dc07e3b644f91a5b55c09c39ecf3 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161191 fail irrelevant
 161210 fail irrelevant
 161232 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b53173e7cdafb7a318a239d557478fd73734a86a
 161256 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161276 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161290 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161308 fail irrelevant
 161334 fail irrelevant
 161364 fail irrelevant
 161388 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3b0d007a135284981fa750612a47234b83976f9 b1cffefa1b163bce9aebc3416f562c1d3886eeaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
 161401 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3b0d007a135284981fa750612a47234b83976f9 b1cffefa1b163bce9aebc3416f562c1d3886eeaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
 161419 fail irrelevant
 161433 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 4751a48aeb2ab828b0a5cbdc585fd3642967cda1 e7c6a8cf9f5c82aa152273e1c9e80d07b1b0c32c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 14b95b3b8546db201e7efd0636ae0e215fae98f3
 161436 fail irrelevant
 161438 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161434 fail irrelevant
 161441 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161445 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 1db136a29ce8594b693938ab8e788d8bcef54770 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161448 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 2255564fd21059960966b47212def9069cb56077 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161450 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 5e8892db93f3fb6a7221f2d47f3c952a7e489737 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161444 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294 ffa090bc56e73e287a63261e70ac02c0970be61a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee bea65a212c0581520203b6ad0d07615693f42f73
 161453 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 8b858f9998a9d59a9a7188f2c5c6ffb99eff6115 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161456 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 87a80dc4f2f5e51894db143685a5e39c8ce6f651 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161458 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 30ca7eddc486646fa19c9619fcf233ceaa65e28c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161455 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294 ffa090bc56e73e287a63261e70ac02c0970be61a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee bea65a212c0581520203b6ad0d07615693f42f73
 161461 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 313d86c956d4599054a9dcd524668f67797d317a 571d413b5da6bc6f1c2aaca8484717642255ddb0 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161466 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 56b89f455894e4628ad7994fe5dd348145d1a9c5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161471 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 b50101833987b47e0740f1621de48637c468c3d1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161473 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 bc3a65e99254cfe001bd16a569a5aa7d20f930e8 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161472 fail irrelevant
 161479 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161482 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 ad1324e044240ae9fcf67e4c215481b7a35591b9 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161486 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 81cbfd5088690c53541ffd0d74851c8ab055a829 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161490 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161481 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 5396354b868bd6652600a654bba7df16701ac1cb 0cef06d18762374c94eb4d511717a4735d668a24 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 11e7f0fe72ca0060762d18268e0388731fe8ccb6
 161494 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161497 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161499 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161500 pass 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161505 fail 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 8d17adf34f501ded65a106572740760f0a75577c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Searching for interesting versions
 Result found: flight 160091 (pass), for basis pass
 Result found: flight 161388 (fail), for basis failure (at ancestor ~92)
 Repro found: flight 161433 (pass), for basis pass
 Repro found: flight 161481 (fail), for basis failure
 0 revisions at 2c846fa6bcc11929c9fb857a22430fb9945654ad 27acf0ef828bf719b2053ba398b195829413dbdd a6c5dd1dbaffe4cc398d8454546ba9246b9a95c9 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 e67d8e2928200e24ecb47c7be3ea8270077f2996 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
No revisions left to test, checking graph state.
 Result found: flight 161490 (pass), for last pass
 Result found: flight 161494 (fail), for first failure
 Repro found: flight 161497 (pass), for last pass
 Repro found: flight 161499 (fail), for first failure
 Repro found: flight 161500 (pass), for last pass
 Repro found: flight 161505 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8d17adf34f501ded65a106572740760f0a75577c
  Bug not present: e67d8e2928200e24ecb47c7be3ea8270077f2996
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161505/


  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.825615 to fit
pnmtopng: 231 colors found
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-armhf-armhf-libvirt.guest-start.{dot,ps,png,html,svg}.
----------------------------------------
161505: tolerable FAIL

flight 161505 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/161505/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-armhf-armhf-libvirt     14 guest-start             fail baseline untested


jobs:
 build-armhf-libvirt                                          pass    
 test-armhf-armhf-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 15:13:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 15:13:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119448.225933 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lblsI-0000rn-R2; Wed, 28 Apr 2021 15:13:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119448.225933; Wed, 28 Apr 2021 15:13: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 1lblsI-0000rg-Nv; Wed, 28 Apr 2021 15:13:14 +0000
Received: by outflank-mailman (input) for mailman id 119448;
 Wed, 28 Apr 2021 15:13:13 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=k1fc=JZ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lblsH-0000ra-QQ
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 15:13:13 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ea299211-b00a-422c-8626-5ff78fff2a3f;
 Wed, 28 Apr 2021 15:13: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: ea299211-b00a-422c-8626-5ff78fff2a3f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619622792;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:content-transfer-encoding:in-reply-to;
  bh=B1kvqioY2QIgFfLucJImIn48CIcFgfNBNhRcQVhS7ZU=;
  b=ZockHUVLoIhYColB4huz02kRkrX24iWLNLkShXLSN3CmwdBHOghqyk6w
   ez3Jz6tJ0MwWIMnz08k6aKIRTKUv/3/RzkiZ0HSRMdms5thGEf9oHwhFz
   WjkNIrYh2GHhwtqrsVYjHZ5MPq8PJ6vYYFib3BqgnYrSorIqi8Q112wfU
   4=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: HI0k7YqSjqQ0kp4ecvWo/tVCWs1mUiW2VA6PDCqpsT0euI0b8vriQa6oIk7ZJjvQESgd4d0mSk
 tTXlQGwtV4pHSmWO/2tCfEqHmktc7La6KNG1B0vA8rNV6YB0O6NWYYslCl9eE24r4ghUGjW3sR
 4Wr0ocA0yQ3dUOMxrFo/aCiMfsEbGeHhm1PADOicBZo0w3SreZHu6lRbrdjXFkV4MAkykjelIT
 43AWlK90RxHcJZ/QspaI28ZBFYuuee72dKGPDE4ReZ/wpVIkenCNSYUdbxArH26DfyMevYpU+1
 gjs=
X-SBRS: 5.1
X-MesageID: 42437383
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:yLyZTqlsqy55uEoy5voSZabYfUvpDfK23DAbvn1ZSRFFG/Gwvc
 aogfgdyFvIkz4XQn4tgpStP6OHTHPa+/dOkOssFJ2lWxTrv3btEZF64eLZsl7dMgDd1soY76
 dvdKBiFMb9ZGIQse/W6BS1euxA/PCp66at7N2w815IbSVHL55t9B14DAHzKCFLbS1LH4AwGp
 bZxucvnUvERV0tYs62BmYIUoH4zrWg+a7OWwIMBBIs9WC17Q+A1biSKXal9yZbdShOz7ck+W
 3siBf4+a2njvG+xnbnpgvu06g=
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42437383"
Date: Wed, 28 Apr 2021 16:13:08 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Roger Pau Monne <roger.pau@citrix.com>
CC: <xen-devel@lists.xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH v2 01/21] libxl: don't ignore the return value from
 xc_cpuid_apply_policy
Message-ID: <YIl7hMpnN5lxXJ+m@perard>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-2-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: <20210413140140.73690-2-roger.pau@citrix.com>

On Tue, Apr 13, 2021 at 04:01:19PM +0200, Roger Pau Monne wrote:
> Also change libxl__cpuid_legacy to propagate the error from
> xc_cpuid_apply_policy into callers.
> 
> Signed-off-by: Roger Pau Monn <roger.pau@citrix.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> ---
> Changes since 1:
>  - Return ERROR_FAIL on error.
> ---
>  tools/libs/light/libxl_cpuid.c    | 15 +++++++++++----
>  tools/libs/light/libxl_create.c   |  5 +++--
>  tools/libs/light/libxl_dom.c      |  2 +-
>  tools/libs/light/libxl_internal.h |  4 ++--
>  tools/libs/light/libxl_nocpuid.c  |  5 +++--
>  5 files changed, 20 insertions(+), 11 deletions(-)
> 
> diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
> index 289c59c7420..539fc4869e6 100644
> --- a/tools/libs/light/libxl_cpuid.c
> +++ b/tools/libs/light/libxl_cpuid.c
> @@ -419,11 +419,13 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
>      return 0;
>  }
>  
> -void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
> -                         libxl_domain_build_info *info)
> +int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
> +                        libxl_domain_build_info *info)
>  {
> +    GC_INIT(ctx);
>      bool pae = true;
>      bool itsc;
> +    int rc;
>  
>      /*
>       * Gross hack.  Using libxl_defbool_val() here causes libvirt to crash in
> @@ -462,8 +464,13 @@ void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
>      itsc = (libxl_defbool_val(info->disable_migrate) ||
>              info->tsc_mode == LIBXL_TSC_MODE_ALWAYS_EMULATE);
>  
> -    xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0,
> -                          pae, itsc, nested_virt, info->cpuid);
> +    rc = xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0,
> +                               pae, itsc, nested_virt, info->cpuid);
> +    if (rc)
> +        LOGE(ERROR, "Failed to apply CPUID policy");

Is logging `errno` is going to be accurate enough ? The
xc_cpuid_apply_policy() seems to only set `rc` and never change `errno`
directly. It would often return "-errno" or an error code. There's one
instance where we have "rc = -EOPNOTSUPP" but `errno` doesn't seems to
be change to the same value (when checking "featureset).

So maybe having "LOGEV(ERROR, -rc, ...)" would be better?

And it should be `r` instead of `rc`. The latter is for libxl error
code, the former for system call/libxc.

> +
> +    GC_FREE;
> +    return rc ? ERROR_FAIL : 0;

The rest looks good.

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 15:35:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 15:35:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119461.225947 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbmDz-0002hN-KF; Wed, 28 Apr 2021 15:35:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119461.225947; Wed, 28 Apr 2021 15: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 1lbmDz-0002hG-HA; Wed, 28 Apr 2021 15:35:39 +0000
Received: by outflank-mailman (input) for mailman id 119461;
 Wed, 28 Apr 2021 15:35: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 1lbmDy-0002h8-VX; Wed, 28 Apr 2021 15:35: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 1lbmDy-0008Fr-QB; Wed, 28 Apr 2021 15:35: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 1lbmDy-0005PF-9X; Wed, 28 Apr 2021 15:35:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbmDy-00065D-91; Wed, 28 Apr 2021 15:35: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=ZzIgnDi2HnZe6MXMntHIR2JWgdfwKJkSvZL383JaWOg=; b=zfS95ibFjqu/YFZvUdFgE8KLvR
	MptUdDbzPUbYLRxhQGaWugh1yjy9nEabjJwdN8YwdIHJ9ebMPlpmDkG8ba9YjqIwsaUZEE1awrqhM
	AyI5a7dQsd4iWbplJd5noDVjsKsC6ltocGbk7Zug0nREB3ikXlfyW9tiyC78LrVPp4jw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161489-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161489: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 15:35:38 +0000

flight 161489 xen-4.12-testing real [real]
flight 161506 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161489/
http://logs.test-lab.xenproject.org/osstest/logs/161506/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 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-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-vhd 14 migrate-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-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   71 days
Failing since        160128  2021-03-18 14:36:18 Z   41 days   54 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   39 days   52 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 16:20:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 16:20:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119474.225963 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbmur-0006pH-16; Wed, 28 Apr 2021 16:19:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119474.225963; Wed, 28 Apr 2021 16:19: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 1lbmuq-0006pA-UC; Wed, 28 Apr 2021 16:19:56 +0000
Received: by outflank-mailman (input) for mailman id 119474;
 Wed, 28 Apr 2021 16:19:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=k1fc=JZ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lbmup-0006p5-Q8
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 16:19:55 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 58e4627c-8d69-4064-9496-80e293909010;
 Wed, 28 Apr 2021 16:19: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: 58e4627c-8d69-4064-9496-80e293909010
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619626794;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=awQiHHh7o4kNgACH03sYnlx/j6evZ4mcTWvR9z5m6wA=;
  b=Z0JGY58ePHmHt4aw3mL6bqVbsxmGlVf762zOLf9PlvXXUSKBl//AoOjH
   bsqaVtiTORMPMIOmxE4HdjEzA334G6Gv1kUBNRX8DilAvA9zuvHNXcXSB
   +6p7+xsI2zTWkKrZ8D7MZxT8GMaOor9EEp9TKp/m0HMEvrH8C5KIWtdVn
   I=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: Ue+jQdC6130Paog5bfm6Im+/tDkchCcOnM8EUptCulEHyQ0NDeoRyyWA6qIYBjGROZX8oYkrGK
 7rs9rPKKRkdgb433K45GA8URa6Q9A/09S1AhhwQY3Jm02F+mcRayEdmm5M95xHh28fg2fgc2FR
 9mGw/HDzQ1cnsCdETkVM3xYgstR2EpVofRv8NMSU3Fpw56QTz+Y3h0Tavv2w6rbCf/3vrwDfwc
 rTbVrgq2njcXKUeenL7XE7G0Sz6zy250+GA/JjwQh1gMwJLElBrnlAed21PpXogaG8R6Fmu8wz
 XqQ=
X-SBRS: 5.1
X-MesageID: 43011809
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fFsx+6zAmPR9uzfeHmI8KrPw5b1zdoIgy1knxilNYDZSddGVkN
 3roeQD2XbP+VQscVwphNzoAse9aFzG85od2+gsFJekGDLroW65aLxlhLGP/xTFOwnTstFQzr
 1hda8WMrLNJHx3l9zz7gX9M/tI+rm62Zulj+vf0HthJDsCA8pdxjx0EwOKVnBxLTMtObMCCJ
 Ge6sBbzgDQGkg/U8LTPBQ4Y9Q=
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="43011809"
Date: Wed, 28 Apr 2021 17:19:50 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Roger Pau Monne <roger.pau@citrix.com>
CC: <xen-devel@lists.xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: Re: [PATCH v2 20/21] libs/{light,guest}: implement
 xc_cpuid_apply_policy in libxl
Message-ID: <YImLJmwTX2E7waOr@perard>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-21-roger.pau@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20210413140140.73690-21-roger.pau@citrix.com>

On Tue, Apr 13, 2021 at 04:01:38PM +0200, Roger Pau Monne wrote:
> diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
> index 539fc4869e6..cadc8b2a05e 100644
> --- a/tools/libs/light/libxl_cpuid.c
> +++ b/tools/libs/light/libxl_cpuid.c
> @@ -436,6 +438,42 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
>       */
>      bool nested_virt = info->nested_hvm.val > 0;
>  
> +    policy = xc_cpu_policy_init();
> +    if (!policy) {
> +        LOGE(ERROR, "Failed to init CPU policy");
> +        rc = ERROR_FAIL;
> +        goto out;
> +    }
> +
> +    rc = xc_cpu_policy_get_domain(ctx->xch, domid, policy);

libxc return values should be stored in 'r'.

> +    if (rc) {
> +        LOGE(ERROR, "Failed to fetch domain %u CPU policy", domid);

It's probably better to use LOGED(ERROR, domid, ...)  to log the domid.
libvirt might be able to use that domid information, but I'm not sure
about that. At least, using LOG*D macros would make logging the domid
consistent with the rest of libxl.

Also use the LOG*D variant for other LOG*, to record the domid
every time.

> +        rc = ERROR_FAIL;
> +        goto out;
> +    }
> +
> +    /*
> +     * Account for feature which have been disabled by default since Xen 4.13,

Why the 's' from "features" has been removed? Also, if it must be
removed then I'm pretty sure that we should also change "have been"
to "has been".


Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 16:46:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 16:46:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119488.225975 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbnKV-00011T-7q; Wed, 28 Apr 2021 16:46:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119488.225975; Wed, 28 Apr 2021 16:46: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 1lbnKV-00011M-3w; Wed, 28 Apr 2021 16:46:27 +0000
Received: by outflank-mailman (input) for mailman id 119488;
 Wed, 28 Apr 2021 16:46:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=k1fc=JZ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lbnKT-00011H-Is
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 16:46:25 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 55e21b68-c561-4e78-b39f-01abe6afd4fe;
 Wed, 28 Apr 2021 16:46: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: 55e21b68-c561-4e78-b39f-01abe6afd4fe
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619628384;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=s8Wl/0SNGm01WkEH6lmRxy+gLY5wuyFsVXOVP9gosiQ=;
  b=c/sSMYqsgAVcgPOJXba0bS1ZvRM3LL4PvGTiZsoDejieixxSHo4MpcW/
   vKlj1XTz91XhAdo/KUHtwEZZBeUl33YFZNiOuxxXHZEXQOfmJObtwgpAv
   6XFetC2oNSE6CzNQQ04VWpOlxrnHM1pXqGRbAV8cG8eLHRjETagQpAa9Q
   w=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: YZNX38uhHeiNnrQ8TT4+aPPFs0zROO1tfRo6NVfMkZM6QA4K+X3CqgmFiTGh8qRQTrSwtjMM+l
 Pbqg+1oObi8rQoBjBlh4ml2ot7h3al+ZXafJsM8UlZfMNMQJdRcINAxR3nU6GJXOzPugMx9lX9
 QQoVk64voLDrhrmuW5Ewhdwsva2dbkHnvyono70k1GgmYWcBmwkG/RGU23HPX/pPNCKfJDDbDt
 vFh1EBu8Rc4jcKUSecM1PotizR2CokbEs58vX5qX5f4fEJj1qZp0G+shwR1nGML2AB3ahc+DS3
 fyI=
X-SBRS: 5.1
X-MesageID: 42641249
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:AUO3sauiKy02AJZc3YsYGOHp7skD6dV00zAX/kB9WHVpW+az/v
 rBoN0w0xjohDENHFwhg8mHIqmcQXXanKQFhbU5F7GkQQXgpS+UPJhvhLGSpgHINiXi+odmuJ
 tIXLN5DLTLYWRSrcG/2wWgFsZl/d/vytHOuc7771NACT5ncLth6QARMHf4LmRTSBNdDZQ0UL
 qwj/AmmxOadX4abtu2CxA+NoCpzeHjr57obQULABQq8mC1/FCVwYX3DgSC2VMmWy5PqI1Sl1
 TtqRDz5amorpiAqyP06mm71ftrpOc=
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42641249"
Date: Wed, 28 Apr 2021 17:45:59 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Roger Pau Monne <roger.pau@citrix.com>
CC: <xen-devel@lists.xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: Re: [PATCH v2 21/21] libs/guest: (re)move xc_cpu_policy_apply_cpuid
Message-ID: <YImRRw++5Kayv+Cn@perard>
References: <20210413140140.73690-1-roger.pau@citrix.com>
 <20210413140140.73690-22-roger.pau@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20210413140140.73690-22-roger.pau@citrix.com>

On Tue, Apr 13, 2021 at 04:01:39PM +0200, Roger Pau Monne wrote:
> diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
> index cadc8b2a05e..6be2d773d1d 100644
> --- a/tools/libs/light/libxl_cpuid.c
> +++ b/tools/libs/light/libxl_cpuid.c
> @@ -419,6 +419,136 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
>      return 0;
>  }
>  
> +static int apply_cpuid(libxl_ctx *ctx, xc_cpu_policy_t policy,

I'm pretty sure we want `libxl__gc` here instead of `ctx`. `ctx` will
then by available via `CTX`. (and the GC_* macro will not need to be called)


Beside that, there is also the need to store libxc return values in 'r'
instead 'rc', and maybe use LOG*D macros to log the domid on error
messages.

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 16:53:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 16:53:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119493.225986 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbnRH-0001vN-VN; Wed, 28 Apr 2021 16:53:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119493.225986; Wed, 28 Apr 2021 16: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 1lbnRH-0001vG-SM; Wed, 28 Apr 2021 16:53:27 +0000
Received: by outflank-mailman (input) for mailman id 119493;
 Wed, 28 Apr 2021 16:53:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IcpV=JZ=gmail.com=jandryuk@srs-us1.protection.inumbo.net>)
 id 1lbnRG-0001vB-Gq
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 16:53:26 +0000
Received: from mail-lf1-x12d.google.com (unknown [2a00:1450:4864:20::12d])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 57342018-1a9b-46a9-b2a9-212fe78e5c6e;
 Wed, 28 Apr 2021 16:53:25 +0000 (UTC)
Received: by mail-lf1-x12d.google.com with SMTP id 12so100009725lfq.13
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 09:53: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: 57342018-1a9b-46a9-b2a9-212fe78e5c6e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=XVXPPNqMC7N1jiFQWqYQF+nR/MNLUt8azTiplue1Zoc=;
        b=iUmy5r3jYCUtyIZQKiT8gey3l7muLBcQVSO9toPRT7R7PrHZTb2xex0K/1eqld7Lv2
         FA6O2G9aLfzYFnwcO4oWqwNLfF8vNm3dFcABdOeEV+c4xOEuKjNmJGeR3j8kyqJILGEe
         bHGYWPKXebS6GJLmyT999f4ZWJAGGf3iGW1ORKZ8KDdLSm9xRY8KJAaag6N1CBX1/mFz
         v/GT++WY9L4/sAVbiDH0BDJmveCQkopxiwPnWg1Q14NH5y2WlTzY2Rxe10zi/9hIpATi
         bC5Hami+ULR6GAAVtsJOwLG6RtiAbc5yMDaPRvjZGE1opUUwnX2UB3IGkPmB40qK4Uxb
         4rCA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=XVXPPNqMC7N1jiFQWqYQF+nR/MNLUt8azTiplue1Zoc=;
        b=XoMCJhjjO447NmLda7XQDb+vrjyO/F0MmVByzxd9Fv1NPLvFFLuGkj2yAgOrzwZVCZ
         wmpNrXQEq5PZpJYi1xIUyilqoNYXmvaxfZS+DlalXbzUp8+d0B4ppa67z6HKlxIieB0m
         WD+xXMy7lhdzTpxYWH79OmlkcSgYSk+5oiuqsaIqznJ06VsPhwWEZik2XLc4RmcLfHZz
         30wFLUZ+pHRPNjUzHfIrspeJ3MUa8ZFe51USzTMsbXbb6WgrqyCu+fVrYNqxULwrbZEY
         eCXioCf4cfDiK5Ue/S0sYec+stuRg8LEtSGXCbS5eff74g2eZML7yjF0vVc6nZFlL7vB
         Vgvg==
X-Gm-Message-State: AOAM532juNJrkKt+2FbAVS30XGDPUJml1FsuYAw7rperSZ1aoResOs27
	mgP2c6zUJmVj4a+VLqhQta3gCv//MGhGKSZQkys=
X-Google-Smtp-Source: ABdhPJy5lEqqTi8pI6bq0RuBQi12wXaz/8xP6rvPjJdB8PEtg6UJefePHG8g+AW9jKt7tg6EkUeWRwM2a9vaXsnedFM=
X-Received: by 2002:a19:431b:: with SMTP id q27mr8040535lfa.226.1619628804485;
 Wed, 28 Apr 2021 09:53:24 -0700 (PDT)
MIME-Version: 1.0
References: <20210423161558.224367-1-anthony.perard@citrix.com> <20210423161558.224367-2-anthony.perard@citrix.com>
In-Reply-To: <20210423161558.224367-2-anthony.perard@citrix.com>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Wed, 28 Apr 2021 12:53:12 -0400
Message-ID: <CAKf6xpuDQuUbJ+Gn9OHNU6BXb2Rm+Bdv7hPNtMxcX1CA4d_aYA@mail.gmail.com>
Subject: Re: [XEN PATCH 1/8] libxl: Replace deprecated QMP command by "query-cpus-fast"
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, 
	Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"

On Fri, Apr 23, 2021 at 12:16 PM Anthony PERARD
<anthony.perard@citrix.com> wrote:
>
> We use the deprecated QMP command "query-cpus" which is removed in the
> QEMU 6.0 release. There's a replacement which is "query-cpus-fast",
> and have been available since QEMU 2.12 (April 2018).
>
> This patch try the new command first and when the command isn't
> available, it fall back to the deprecated one so libxl still works
> with older QEMU versions.
>
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> ---
>
> Notes:
>     This is v2 of '[XEN PATCH for-4.15] libxl: Replace deprecated QMP
>     command by "query-cpus-fast"' as the patch never made it into the
>     release.
>
>     changes:
>     - introduce a fallback for when the new command isn't available.
>
>  tools/libs/light/libxl_domain.c | 103 ++++++++++++++++++++++++++++++--
>  1 file changed, 98 insertions(+), 5 deletions(-)
>
> diff --git a/tools/libs/light/libxl_domain.c b/tools/libs/light/libxl_domain.c
> index 5d4ec9071160..8c003aa7cb04 100644
> --- a/tools/libs/light/libxl_domain.c
> +++ b/tools/libs/light/libxl_domain.c
> @@ -1740,6 +1740,35 @@ static int libxl__set_vcpuonline_xenstore(libxl__gc *gc, uint32_t domid,
>      return rc;
>  }
>
> +static int qmp_parse_query_cpus_fast(libxl__gc *gc,
> +                                     libxl_domid domid,
> +                                     const libxl__json_object *response,
> +                                     libxl_bitmap *const map)
> +{
> +    int i;
> +    const libxl__json_object *cpu;
> +
> +    libxl_bitmap_set_none(map);
> +    /* Parse response to QMP command "query-cpus-fast":
> +     * [ { 'cpu-index': 'int',...} ]
> +     */
> +    for (i = 0; (cpu = libxl__json_array_get(response, i)); i++) {
> +        unsigned int cpu_index;
> +        const libxl__json_object *o;
> +
> +        o = libxl__json_map_get("cpu-index", cpu, JSON_INTEGER);

Looks like qmp_parse_query_cpus_fast and qmp_parse_query_cpus just
differ by the key string.  So you could pass it in as an argument -
maybe with qmp_parse_query_cpus_fast and qmp_parse_query_cpus as
wrappers around a common implementation?

But if you prefer this separate function, it's fine.

Reviewed-by: Jason Andryuk <jandryuk@gmail.com>


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 17:12:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 17:12:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119502.225999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbnjm-0003he-HP; Wed, 28 Apr 2021 17:12:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119502.225999; Wed, 28 Apr 2021 17: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 1lbnjm-0003hX-ED; Wed, 28 Apr 2021 17:12:34 +0000
Received: by outflank-mailman (input) for mailman id 119502;
 Wed, 28 Apr 2021 17:12:34 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=k1fc=JZ=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lbnjl-0003hS-UQ
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 17:12:33 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c5fa1fd5-bbf6-4a70-aa77-e1975c64c6db;
 Wed, 28 Apr 2021 17:12: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: c5fa1fd5-bbf6-4a70-aa77-e1975c64c6db
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619629952;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=mklfZ2wXVf5x/X6VQtHr66OIW5LFqHBxp/SN4TTXNOU=;
  b=M3/15tLVFPSaKYCmbh7tQu+BmSvWSgGfv9c2pVMHJAphrsOirYNK76zM
   dQu1G3vPTii4qvcjuOYn45GM3X0yTlabnNwVPmZlxUd5JnPgapj2u+I1a
   bKZzcVBjh2oGMGtTBRk+aRwYT0L2NEducc4CoBYdXsFl549PL03EC3Xux
   Y=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 1ZkLDtpa6R+gCGA4tSZJAVut+9ez2wS+Gg4LBrfueD6uSZNLwz2x32kXtiIy2YR6tOVKGZIM67
 +E7xyb1Ymn0oTfH7Qh0Dhc9qw15M8hPSJ21NTKp56sMDocKqs0aw1JC+G6e25VRUiaq0Q/32pG
 3UKrwL3azARVtFaIMdpJT4qeaCWthxXP6mkYE1Iaku12UVGND2USnrs5zY8sPXkkNH0XB93JXE
 Gu1FTDvGf2obah4f56wPnHnTi1FyNBYAL+0yfMY4MQhDPJrddDPzlM2nshFet5tNnZO72i1Q+i
 SZU=
X-SBRS: 5.1
X-MesageID: 42644011
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Ovf2BajE6NSRCH4cFjOKv3PWLXBQXksji2hD6mlwRA09T+Wzva
 mV/cgz/xnylToXRTUMmcqYPrOBXHPb8vdOkO4sFJ2lWxTrv3btEZF64eLZslndMgD36+I178
 tdWodkDtmYNzdHpOb8pDK1CtMxhOSAmZrY49v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7ag+a7OWhIICwUq7wODl1qTmdzHOiOVwwsEVHd3yaoimF
 K16jDR3LmpsP2w13bnt1P70pI+orXc9uc=
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42644011"
Date: Wed, 28 Apr 2021 18:12:29 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Elliott Mitchell <ehem+xen@m5p.com>
CC: <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, "Wei
 Liu" <wl@xen.org>
Subject: Re: [SUSPECTED SPAM][RESEND PATCH 1/2] tools/libxl: Mark pointer
 args of many functions constant
Message-ID: <YImXfc4oaPgWzkeT@perard>
References: <cover.1613496229.git.ehem+xen@m5p.com>
 <2e18b114fc91028459b2d6cbfd0f1204501dfde9.1613496229.git.ehem+xen@m5p.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <2e18b114fc91028459b2d6cbfd0f1204501dfde9.1613496229.git.ehem+xen@m5p.com>

On Fri, Dec 18, 2020 at 01:37:44PM -0800, Elliott Mitchell wrote:
> --- a/tools/libs/light/libxl_internal.h
> +++ b/tools/libs/light/libxl_internal.h
> @@ -2073,9 +2073,9 @@ struct libxl__xen_console_reader {
>  /* parse the string @s as a sequence of 6 colon separated bytes in to @mac */
>  _hidden int libxl__parse_mac(const char *s, libxl_mac mac);
>  /* compare mac address @a and @b. 0 if the same, -ve if a<b and +ve if a>b */
> -_hidden int libxl__compare_macs(libxl_mac *a, libxl_mac *b);
> +_hidden int libxl__compare_macs(const libxl_mac *a, const libxl_mac *b);
>  /* return true if mac address is all zero (the default value) */
> -_hidden int libxl__mac_is_default(libxl_mac *mac);
> +_hidden int libxl__mac_is_default(const libxl_mac *mac);

It turns out that older version of gcc complains about the const of
libxl_mac:


    libxl_nic.c: In function 'libxl_mac_to_device_nic':
    libxl_nic.c:40:9: error: passing argument 1 of 'libxl__compare_macs' from incompatible pointer type [-Werror]
             if (!libxl__compare_macs(&mac_n, &nics[i].mac)) {
             ^
    In file included from libxl_nic.c:18:0:
    libxl_internal.h:2076:13: note: expected 'const uint8_t (*)[6]' but argument is of type 'uint8_t (*)[6]'
     _hidden int libxl__compare_macs(const libxl_mac *a, const libxl_mac *b);
                 ^
    libxl_nic.c:40:9: error: passing argument 2 of 'libxl__compare_macs' from incompatible pointer type [-Werror]
             if (!libxl__compare_macs(&mac_n, &nics[i].mac)) {
             ^
    In file included from libxl_nic.c:18:0:
    libxl_internal.h:2076:13: note: expected 'const uint8_t (*)[6]' but argument is of type 'uint8_t (*)[6]'
     _hidden int libxl__compare_macs(const libxl_mac *a, const libxl_mac *b);
                 ^
    libxl_nic.c: In function 'libxl__device_nic_setdefault':
    libxl_nic.c:69:5: error: passing argument 1 of 'libxl__mac_is_default' from incompatible pointer type [-Werror]
         if (libxl__mac_is_default(&nic->mac)) {
         ^
    In file included from libxl_nic.c:18:0:
    libxl_internal.h:2078:13: note: expected 'const uint8_t (*)[6]' but argument is of type 'uint8_t (*)[6]'
     _hidden int libxl__mac_is_default(const libxl_mac *mac);
                 ^
    cc1: all warnings being treated as errors


That happens on ubuntu trusty, debian jessie, and centos 7.

Cheers,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 17:30:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 17:30:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119512.226010 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbo0M-0004i1-0g; Wed, 28 Apr 2021 17:29:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119512.226010; Wed, 28 Apr 2021 17: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 1lbo0L-0004hu-Tb; Wed, 28 Apr 2021 17:29:41 +0000
Received: by outflank-mailman (input) for mailman id 119512;
 Wed, 28 Apr 2021 17:29:41 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=X8fo=JZ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lbo0L-0004hp-1K
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 17:29:41 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dcf63884-3125-4396-849a-e27c19f101ff;
 Wed, 28 Apr 2021 17:29: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: dcf63884-3125-4396-849a-e27c19f101ff
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619630979;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=HnPrBoiK4M37W+OPi5MQpi4GdfpP/ImB8aXe9ptMp1o=;
  b=HF1x+0wbyJeL/DPQp/csbjthegUVJKZLv6x3/S+zdXHqatnnRP662KWX
   fnbykNf2eBGB2010gbY11tZiNi+edNCPAEns1kCB1Vr8Jd5hned8h85Jy
   UQ7wRrqD0Wn/X36M60mVifTF3QE+/7XDuoUBZFuLvrM1L8QGa5mslUnvG
   o=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: PuFU5jf7FqKEKT3lmqSNZ2DKcXPRIePr4BbqUtZhGTAQZpvA+EbJI1h0yDHpxP3/2f6PLnjzI1
 WArNLCr1LNF9K6EMO2heaAUDatQG9e6TNG/1f1gHPxg5LHoNR1WpuFoWvEY/czjwVFwRbe+nPY
 89OkEVvDFMlo38QK3GEXHqhxitUqBXLrqxMVPnCOtBpdIgNKCfmq381Nqo1HNxEg1ky3Di985Z
 9uUcC7DysRWBuaB+LnyNHNU1FVw1iZWHuhqjWrxrVecybiAwEO0LN6Kq5/BJ0J+esbvVw6x+dw
 NEI=
X-SBRS: 5.1
X-MesageID: 44140935
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:JqDUuK5v4bMlGizT7APXwTuBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3m0z/5IyKMWOqqvWxSjhXuwIOhZnO3f6hDDOwm7zO5S0q
 98b7NzYeebMXFWhdv3iTPWL/8O29+CmZrHuc7/yDNXQRhue+Vc6W5Ce2SmO2lXYCUDOpYjDp
 qb4aN81l2dUFAadN6yCHVAf8WrnaypqLvcbRQLBwEq5WC15FvF1JfAHxeVxRsYWT9UqI1SlF
 TtqADl+r6l98iy1x607QTuxq5Lk9jswMYrPr3ptuEpLFzX6zqAVcBadJCp+Bs0p+yu71hCqq
 iynz4Qe/5dxlmUUmW8oR7G0xTt3jA0+xbZuCGlqEqmm+PVbnYXDNdAmJJ4f3LimjsdleA56o
 1n9Sa4sIdaFhzJliiV3am5azha0nCajFBntMx7tQ0nbaIuLIV/gKZawWZuVLAHJy7+4JBPKp
 gSMOjsoMx4XHnfU2rUpQBUsaSRd0V2JDiqaG4YtPeY1jBH9UoJs3cw9YgkknAM+IlVceg+28
 30dqBhlLR5RsQLd65KBOAYXcutCmDWKCi8Sl6vHQ==
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="44140935"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bl5cnXMdHdgDrCMDJJ1nCOk4JupLsLXGjry2jgcABjit721zKy4fxkPNB5zB46ofvaR5g0W8fi9VLUKOqV9GSnpExfatOFdQK/zY7T2BmBmHAw8BYmshJluf90qtLg4/a9rVFJWZHOc8FnYOAZFGQ3FeBR6oCFvKYpZOVIK0LH6QF9nB/2B0VadjA5TD7+o9SkAJJbSnmQ/BOEEEsCjCaR68A+X4nqFAHna1oAb0/sLwhy8c46Zg0iDOGW7AcSfso+rdTUgDkXfCnRHYv8g4U0eB6rNtGVtWIDQvPoRW2zSJhNQnacFNd6g33mjj3l5kmo0T7138J/g55bM4NJfjMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aCz4otgMugYERjOoAomc5RppSGjfrhSdAplMcZqRPeo=;
 b=di1RtvUf3yc8IhSRXAT54gBDtLOx2c67djpG6SFMvCDTBXTA3TAF7FADYsfDdU5Bcb7TiBSNq9DsW2DI2ryNgt6Te+YHXZOsb0SxLN9ejhtLUv4sbmLSrUfXvveWn0bVA4dhVrROvioWiTDNI6nA/S4FLQ84IEncPiRmF20VlreNwR2xynCNP7mQIsdFsWTFPSDDzUFijRvhBp6ReqCT76eCAxtQH9s/K1p9nLdgxdEpUK5VUnIbhQOCjjujoEuf19S3H2SSO+EYTZL/Ks0BfvZYQatBVZo/gRRkeOiaDkIrXLvglqlCd3/0z9QEQDUr4QnYhPeRfCVCLk9WfmGybw==
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=aCz4otgMugYERjOoAomc5RppSGjfrhSdAplMcZqRPeo=;
 b=sS/islqaImj4qzYNvWVYkfe3tSc+rH2/Adogni/5yU6vvWDO3zpip40fpYyB0GmFy8KRx3aebjQaLdmnN/ZCfHqbdoAOlwplG7U8si3PuoxUMGRSZfunsO9WGrPxbB0fOlY4EEvlNKVeR2tl/xiZlOSGliC5FLCcBtB4lkJnQa4=
To: Anthony PERARD <anthony.perard@citrix.com>, Elliott Mitchell
	<ehem+xen@m5p.com>
CC: <xen-devel@lists.xenproject.org>, Ian Jackson <iwj@xenproject.org>, Wei
 Liu <wl@xen.org>
References: <cover.1613496229.git.ehem+xen@m5p.com>
 <2e18b114fc91028459b2d6cbfd0f1204501dfde9.1613496229.git.ehem+xen@m5p.com>
 <YImXfc4oaPgWzkeT@perard>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [SUSPECTED SPAM][RESEND PATCH 1/2] tools/libxl: Mark pointer args
 of many functions constant
Message-ID: <0ba9b44b-1e3d-bf96-2b91-0d85686357b9@citrix.com>
Date: Wed, 28 Apr 2021 18:29:28 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <YImXfc4oaPgWzkeT@perard>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0390.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18f::17) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: b68eb0bb-d615-407c-f980-08d90a6b30c3
X-MS-TrafficTypeDiagnostic: BYAPR03MB4421:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4421D39CEEBF239086E4DE78BA409@BYAPR03MB4421.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:1388;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: H21HDkEK5Uo130XgOnQdFiuitX3AlDcMfCvoBJo3rNKb0MnLEgHaslnciQePQB97h9arvSL4OKD+Ypph+BsmtdLLjZWp5yIXA9TWAFbEzS4sK7DniX8AWhP5v3Mc69j4tWGXji5rfrfHmiXnkkfWqbu5OTbvSbN3MvYe4lO4DpZgap31dwwXLFZ8/yEBATAAEdceiWikThWz2kpBXSwEHezKf6YXEP0Ls7fX9O1DOkV3WrAuCoUuwDOSnToUM1D47rg2F8EKYYX02mzR9SbH1kJg3q4lx4eKAakIIeYoi+kkKr/4HUqOga/n3M58JEcPWL4/ZtA5J4LfPLRcq2Dn+og5TYTe1Ok1b5BMePI27qwmnjzbw0cda4souSKYMeLCYkIpyl1DA2MbX+aGTTfnZizAagsVlRGKhLM1ecvuxQ6IkQrSCD4FYgqAgZ5KcSyDVe/4lo7qXrDq6uyogs+ST0/AaEKdCok+o54wibMFAahnfp93irFmAKwO8xOL5xVwnqW9HzjKSaZY2pykc3Z1YvPmQqTJC+tTtalqNBCC4NRIUO8EThJ0/q1zTvYfHzy1f8QQEOhMARQdq5RDp/ybXiD1XtJD/4nLY6X4kYSecRgW34AUthxJzFF9iH8MP+sowS/LiBKyw8FyMw0ojBIjwP/T9clFxZRysJbb+BM+EYE1mgukQEnSg/E6u6mwsitw
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(346002)(376002)(39860400002)(396003)(136003)(36756003)(5660300002)(86362001)(478600001)(38100700002)(4326008)(8936002)(110136005)(316002)(54906003)(6486002)(186003)(956004)(2906002)(31686004)(53546011)(2616005)(16526019)(16576012)(83380400001)(6666004)(66946007)(8676002)(31696002)(66476007)(66556008)(26005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?QWF4RnVCemhpUDRKQklzYXB4UzNNZlJ0Qm5DODVBWXBydU5zZWtmZlppbWpp?=
 =?utf-8?B?dmk5ZHc1RXNhUnNmT2lxU3RaL2NxZUd6azRFMU5lcHNFU0ozc3dTanJQODRs?=
 =?utf-8?B?RXhWbjgvalhFNnhob3I5VFdBcWREbGw3bndxOFE4dDVBaytjUWptbWFZYlBz?=
 =?utf-8?B?K0dNdDN0dmRCQ3ErVUdDSy9ydC84Rk1rMHBZZy95WGh4V01veHJnb1I1Ryt0?=
 =?utf-8?B?ZzZ3UTZNeXhnWnIyTGcyS0dnT3ZBdzZEL21PWDZsM0I2OTlVU3FxMHN2RzZS?=
 =?utf-8?B?Q2VkZWNPQjdySEpWUWtRa05qT05wVFlIVW15eFpKM1E0RkJvUEc5aHZuQWFn?=
 =?utf-8?B?dWV5ZElTd2daUjl0ZTBqTk9vMTJPREtmVDJXdUkrNnZCeEtkcE1vdjhIcE5F?=
 =?utf-8?B?NjN4WTQwMHNzRmZIaWg4K2VmcmsrQVpSYXZBbGErZGRQVHV3RHVzRGdsRElV?=
 =?utf-8?B?SWgwbzRpRXZ4cCtnNUFEOHFtNjlxOEZhb3R0c05udkp0eEJKdVpFbVV1SmpL?=
 =?utf-8?B?emtlakMwMmJTRFMvY2p0cXB4ZnpqRzQ3ejBnVzA4dXZ6QjIrNFRWWVVaVFRN?=
 =?utf-8?B?NFNaNG9MNUJHT2NjemI3bDRsaWFKVVBKVGIwaFRpaU9vSEFzZHpXanVYOFM2?=
 =?utf-8?B?MGxhZVEvZVhOY3lwYlFRMkl3ZjJXUWF1TnowT0kzcHlOQ1pyMWVmdVNhV0kw?=
 =?utf-8?B?bEtVdUMwUWRhejJaYnI3aThXcHZxd0pSU3VlS0VFdWp5NHROSkZ2MDZpVTlv?=
 =?utf-8?B?TTJoci9NZGVoeklJUmJaY3FFSzZ1OW43RHF4dVljN3VIbnJ1K1BTTE1KQTZ4?=
 =?utf-8?B?K3RQNW80V1YreWYrSVdrOUhneHRBQmFvT2djK1o3RGVpMCtyMzZTbmRpTjk0?=
 =?utf-8?B?M2lYcWtIT3Jpdi90bUd6eDIyb1JBcmR2RldvUndnUWFqYTh0WnNSanVQdDY5?=
 =?utf-8?B?TjVlQUwvcFFmdnB2NkVXWHVxbkRFMDdER2M4VVNqazRTOGZnalhsajFzVEps?=
 =?utf-8?B?MkQyM2VidGV0Q08xNTJxb2VzTC81a1NuQXFVUFBCSGNIUWh2QzZWZ284Y0pE?=
 =?utf-8?B?N0J6cEFMSFc2RDc0R1FES1krS3Z4NFZxdXpxQUIyQ1RPc3FSMHY0ODZLc2Rs?=
 =?utf-8?B?djhOVzhrQmJNTUFtL2doTGVSdUpIcmtxNkxGcjJENCtwU3F4R2IwVVpCaC9r?=
 =?utf-8?B?bGpLRFJud0F6Y1ZDZmUvZXZJQk0rUXhLeGMwK1JreWpiNlU1N3Q0eDQ4VDh4?=
 =?utf-8?B?MFVOa2J4MVJDMWk3UGE1Ym96czY0a2poc1U0TmwxcWMwcDVxUjl6TkVQbnRR?=
 =?utf-8?B?WTA5S3hEaXE4d1lGb2RNdXZlSEhmMmg5UU84b2tKSlFMSEcxM0ZjWXRVY01K?=
 =?utf-8?B?NnBVcGVJUlZ1c015Z3E4V3FyNDVCYS9KdlF3SG1LbjBtN08ramRjSmpMUFpN?=
 =?utf-8?B?Vk1SQ0FTL2NDSWQrWUNMeG9IajBhMkFRQWJJN2VHV2ZHMTVmemNnY2ZoZWRJ?=
 =?utf-8?B?UGRCckc5MlhrZkI5L2x0Uy9ubXVNeDFVWkJ0K1RuM0FLWFhJYnFCaUNSc0Vp?=
 =?utf-8?B?VmNvNEo4ZTJ0ZVFPNzBmTDZDSGZJYmxxNk9pbXZscXNsaWdXQitnK3Z0aEFI?=
 =?utf-8?B?UWlxYlc2L3Jjekl4RHZqQS9ZUk4xbkdPU25iVmduUzBsc2FvbGEyV2poNjRO?=
 =?utf-8?B?SHo4T2RKY2hVUGV6d1JBaStibjloSUlqRmVGYnRWTGlXbFdkaVRhV3k0enR1?=
 =?utf-8?Q?swUbLDtVSzfZ3ccGqOqqr/m3HhelR6zMV2s1nHe?=
X-MS-Exchange-CrossTenant-Network-Message-Id: b68eb0bb-d615-407c-f980-08d90a6b30c3
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 17:29:34.7802
 (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: o5NNM0+xAy425l9DyAgQnecGbdifxdFclVk6pJJ4DKOWrh2ZsPQ+B+Les/35eXk8X0AQRwXqGb9iUy2mqRaNHpMxSuYJownOJuBkugxgGxk=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4421
X-OriginatorOrg: citrix.com

On 28/04/2021 18:12, Anthony PERARD wrote:
> On Fri, Dec 18, 2020 at 01:37:44PM -0800, Elliott Mitchell wrote:
>> --- a/tools/libs/light/libxl_internal.h
>> +++ b/tools/libs/light/libxl_internal.h
>> @@ -2073,9 +2073,9 @@ struct libxl__xen_console_reader {
>>  /* parse the string @s as a sequence of 6 colon separated bytes in to @=
mac */
>>  _hidden int libxl__parse_mac(const char *s, libxl_mac mac);
>>  /* compare mac address @a and @b. 0 if the same, -ve if a<b and +ve if =
a>b */
>> -_hidden int libxl__compare_macs(libxl_mac *a, libxl_mac *b);
>> +_hidden int libxl__compare_macs(const libxl_mac *a, const libxl_mac *b)=
;
>>  /* return true if mac address is all zero (the default value) */
>> -_hidden int libxl__mac_is_default(libxl_mac *mac);
>> +_hidden int libxl__mac_is_default(const libxl_mac *mac);
> It turns out that older version of gcc complains about the const of
> libxl_mac:
>
>
>     libxl_nic.c: In function 'libxl_mac_to_device_nic':
>     libxl_nic.c:40:9: error: passing argument 1 of 'libxl__compare_macs' =
from incompatible pointer type [-Werror]
>              if (!libxl__compare_macs(&mac_n, &nics[i].mac)) {
>              ^
>     In file included from libxl_nic.c:18:0:
>     libxl_internal.h:2076:13: note: expected 'const uint8_t (*)[6]' but a=
rgument is of type 'uint8_t (*)[6]'
>      _hidden int libxl__compare_macs(const libxl_mac *a, const libxl_mac =
*b);
>                  ^
>     libxl_nic.c:40:9: error: passing argument 2 of 'libxl__compare_macs' =
from incompatible pointer type [-Werror]
>              if (!libxl__compare_macs(&mac_n, &nics[i].mac)) {
>              ^
>     In file included from libxl_nic.c:18:0:
>     libxl_internal.h:2076:13: note: expected 'const uint8_t (*)[6]' but a=
rgument is of type 'uint8_t (*)[6]'
>      _hidden int libxl__compare_macs(const libxl_mac *a, const libxl_mac =
*b);
>                  ^
>     libxl_nic.c: In function 'libxl__device_nic_setdefault':
>     libxl_nic.c:69:5: error: passing argument 1 of 'libxl__mac_is_default=
' from incompatible pointer type [-Werror]
>          if (libxl__mac_is_default(&nic->mac)) {
>          ^
>     In file included from libxl_nic.c:18:0:
>     libxl_internal.h:2078:13: note: expected 'const uint8_t (*)[6]' but a=
rgument is of type 'uint8_t (*)[6]'
>      _hidden int libxl__mac_is_default(const libxl_mac *mac);
>                  ^
>     cc1: all warnings being treated as errors

That's because the typedef for libxl_mac violates one of the well known
C beginner mistakes, by being a plain array behind the scenes.

A prototype of 'const libxl_mac mac[]' might fair better, except it
makes the code even more confusing to follow.

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 17:47:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 17:47:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119521.226023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lboHR-0006Sd-KM; Wed, 28 Apr 2021 17:47:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119521.226023; Wed, 28 Apr 2021 17:47: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 1lboHR-0006SW-HK; Wed, 28 Apr 2021 17:47:21 +0000
Received: by outflank-mailman (input) for mailman id 119521;
 Wed, 28 Apr 2021 17:47: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 1lboHP-0006SO-SA; Wed, 28 Apr 2021 17:47: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 1lboHP-0002lW-HH; Wed, 28 Apr 2021 17:47: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 1lboHP-00044d-2g; Wed, 28 Apr 2021 17:47:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lboHP-0002ko-28; Wed, 28 Apr 2021 17:47: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=1cXDMkZxyhmZQBBx7qkk4udq/Dinmy2QAooG+lNn5qs=; b=TGlVeOd3Orm/YgFQVkN1ry8MTG
	rypi+FftVaTxObLha1pui7welzwvwni3AQPTpA4DdW4z8RCdhslGuC0fZCIWwKldrxhm9vECLYKS0
	YbMD0I5/lRHdk54Red0n3tDyjuer4dpXpsY4W33u2NZ23YDdciHTNsHJ7f4Qn6IpTTm4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161491-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161491: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:guest-start.2:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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: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-amd64-amd64-libvirt-vhd: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=e359bce39d9085ab24eaa0bb0778bb5f6894144a
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 17:47:19 +0000

flight 161491 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161491/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-xl-shadow   23 guest-start.2            fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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          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-amd64-amd64-libvirt-vhd 14 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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

version targeted for testing:
 linux                e359bce39d9085ab24eaa0bb0778bb5f6894144a
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  270 days
Failing since        152366  2020-08-01 20:49:34 Z  269 days  452 attempts
Testing same since   161491  2021-04-27 21:42:30 Z    0 days    1 attempts

------------------------------------------------------------
5606 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-amd64-i386-xl-shadow                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1417587 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 17:54:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 17:54:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119527.226038 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lboOT-0007Nz-EI; Wed, 28 Apr 2021 17:54:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119527.226038; Wed, 28 Apr 2021 17:54: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 1lboOT-0007Ns-BK; Wed, 28 Apr 2021 17:54:37 +0000
Received: by outflank-mailman (input) for mailman id 119527;
 Wed, 28 Apr 2021 17:54:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=X8fo=JZ=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lboOR-0007Nn-Sr
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 17:54:35 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 1d437c87-0d52-450e-a649-2181adc5a218;
 Wed, 28 Apr 2021 17:54: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: 1d437c87-0d52-450e-a649-2181adc5a218
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619632474;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=+85mThslUdn7Mqn4W4u4tqNhNUT6oqVngKQkRJ0P3cg=;
  b=PcKnFTD7oRjHyFR7VCbH5YHWs9mGMoiH9AOt2q/A9/QAgUA/N9ayZtTj
   bNObvGE5kXlW3BNowL8zsERqNKB9vCKWSZPWy9t1rZqfESBao7IyHvjvN
   X16u8bPnk5SbxBiSNHpzkXyX/ofp+m+T43ZEHZEoGSMWV1fO2OZqV1FJw
   U=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: qgj1cDKD7cQVnOjOnjfp1jkT2fBM0b73+U1gQkcBTRns3CwnefSbUmz6Yww7FoUe77Cz5vkJni
 owKIWI6XUbJdJTuEHTMTK0L75mYS0Lrege355s6PaKj8tN/1Gxq153+84TYxbKiaWu01zOw5JS
 WRja7yhTg2vqaPmgt2gNAuCsd2EkXITeqSBlYXhXrrBtGJ2B944ire+5zMgEsGQeC9OHbOOr2z
 W2v1s1CaOWvJBJp1nlr6YIEfMO+LloME43yKeZTP4cQ3O13Z/ouAZNQGODXkJnQ7sa2jB3rTnJ
 898=
X-SBRS: 5.1
X-MesageID: 42647182
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Q2Dj/6uvS/ntl+RkmN7HyzRa7skC24Yji2hD6mlwRA09T+WxrO
 rrtOgH1BPylTYaUGwhn9fFA6WbXXbA7/dOjrU5FYyJGC3ronGhIo0n14vtxDX8Bzbzn9Qw6Y
 5JSII7MtH5CDFB4PrSyBWkEtom3dmM+L2pg+Cb9Ht2UQR2cchbjjtRICzzKDwSeCBtA50lGJ
 2Aou9OoDS9cXoaB/7LeUUtde7FutHNidbaehYAHREq802jijmv5b78HXGjr2sjehlIxqov9n
 WArhzh6syYwoyG4zL/90uW1ZRZn9P91sBObfbjtuE5Iijh4zzYHLhJdKaFuFkO0YaSwXYs1O
 LBuhIxe/l0gkmhBF2dhTvI903e3C0163nkoGXo8kfLhcDiXjo1B45gqOtiA2LkwnEttt19z6
 5Htljx3/E8bWKi7VHAzuPFWB1wmk2/rWBKq592s1VlXZYDc7gUlIQD/SpuYec9NRjn44MqGv
 QGNrC72N9qdzqhHhLkl1V0zMfpdno+GQrueDl4huWllxJSnHx/0nICwt0eknoq5PsGOuh5zt
 WBHaJymL5USMgKKYp7GecaWMOyTlfAWBTWLQupUBvaPZBCH0iIh4/84b0z6u3vUJsUzKEqkJ
 CEdF9Dr2Y9d2/nFMXm5uwEzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQ2GKTgKr
 WOEaMTJ8WmAXrlGI5P0QG7cYJVM2MiXMocvct+c06So/jMNpbhuoXgAbbuDYuoNQxhdnL0A3
 MFUjS2Dt5H9FqXVnjxhwWUdGjqfmD54JJsAInX9+Ue0+E2R8hxmzlQrW78ytCAKDVEvKBzVl
 B5OqnbnqSyonTz3Wug1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmF+OJhp1SdLqAB
 dSzm4Hvp6fHti1/2QPGtinOmWVgz84v3SRVaoRnaWF+IPDdo4nCI0lHIh8Dx/CGRAwuQsCkh
 YDVCY0AmvkUh/+g6Ssi5IZQMvFccNnvQutKclI7VTFtUudoskrbmABXyGnVPOWhQpGfUsXun
 RBt4skxJaQkzemLmUyxM4iNkdXVWiRCLVaSDieaJ5sgbDtcgFoRWKsjTiX4itDPFbCxgE3vC
 jMPCeUcfbEDh54tmpD2qjnyl9ya16QZll9cHx8rI17G1nXo3ob6574WoODl0+qLncSyOAUNz
 /IJQEfJQ5j3Pib/h+YkjTqLwRt+rweesjmSJgzebDa3X2gbLCSnaYdBvlO4dJOL9b1qNIGVu
 qZZi6YJD71EPkSxgSQv3opURME8UUMoLfN4lnI/WK41HkwDb7uO1xgXagcOMzZwG7+RfqEua
 8JxO4djK+VCCHWZdGHw62MMGIGBRPXvGKsT+Yn7bpTprk/sbNvH5/dFRvEvUs3qykWHYPRrg
 c5Rq8+3ZXqfqlIVOYWczhC/lUomM+URXFb+TDeM6sbRxUVk3TfP9m1+LLGprokP12ZqGLLSC
 2i2hwY282AYjCK2rEbAZ8hOGh6aEAz73J54eOJHregfjmCRqVm/FCgNGW6f6IYYK+ZGa8Iph
 IS2aDEo8anMw750hvXpz11P+Zn9HumW9q7BEapFfRT+9K3fXSKja3C2r/+sB7HDR+6YV8fn4
 tLaAg5adlCkCAriMkP6ReJI5aH6n4Noh95+jFollnkx4ig7iP6JCh9QHPkq6QTeyJSPHiOhd
 nC6s6C2h3GkWB45aU=
X-IronPort-AV: E=Sophos;i="5.82,258,1613451600"; 
   d="scan'208";a="42647182"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZRzuySKaLvpnVs9kMEIwGb22VaocQ9HShOtMQzjw0Qg0nBaUUtfJT7S1RXAdZCujL7PHaRtHKC5mCpBrOd8/jltpNERWUC/xVED79luQEyJlmIi4R8OvvA4rmMrFEv7/x/CsSokH6YLhCTZiZFJor6bdfRzKgOMVX1B8491sKsiQDuoUnaRlabN7s71TnM6L1FE49WdhgRASE8yT9cDprHyB4gtgaidKchHABo7YJByRLi0FhLEb5N/3PFzCuoS42uvjYFRfw3qowCwbwQkLMa+SRwhQw3BKaQ/S50lqQKdpQAKKpRlR/WYVNM5UwpIimdPQnSJC0AYtXSH6/o5Dbw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8Tqwm8Fs2ADZOHdM1i3IdulpDkSnIyXb4xED76D59oY=;
 b=B67yk/fYpNAJTqbxgmVbhhA54KF5QcsjUTicOpXNPQHC/u3auG1nLYC0M+/AAmGH/7CJZ7ZUxKPmlOasmsHT4ye4mPkzL3tenjwmDByOhHOV4dZK4+xprwqJJhGOTLwlTG5003OvzJTUn3b8xs0ALrHIefbL0l7hziNL69NyCDIxeFv0tyk4x9bZUgP/arajYHwVlOYEVb22zVRG7MQXET3m68eWFVoMqbPYkC+yazFtcFs6oYXiCGxI+pGiMWb1ZRZiDpyoEkRPqXHUyaNLCQ06Xeg9eYejjuOmULBIexVwQ7Hz0RY+L6sucTFXL4XcMQd+howqy9MRkH3qLKHGbA==
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=8Tqwm8Fs2ADZOHdM1i3IdulpDkSnIyXb4xED76D59oY=;
 b=phXpnzMDkcRtxZeG2KQrf1P3vuO8yw3qLI0DwqIWQa8D/7H9N2kPmNMQZgEjU2JwYuXZ00Hu9kSz3GmpqlZp/4T/gQpgRMMFoZfVNsGt2Bs2c9k+sP4nDru72eyn26wLRHQhBdbHMMjgofa8R7lCYeWMCrjd4ws8tw06w++RqLQ=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-2-andrew.cooper3@citrix.com>
 <d8bd932d-071a-4a5b-747c-02cbd5e296cd@suse.com>
 <86cf1d97-2034-7791-071a-48208b6ba54b@citrix.com>
 <28d7b7a9-9dd2-1664-e946-d7e4a330da0f@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 1/3] x86/hvm: Introduce experimental guest CET support
Message-ID: <3d1847f2-4ba6-416a-7957-3310b5d5124c@citrix.com>
Date: Wed, 28 Apr 2021 18:54:22 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <28d7b7a9-9dd2-1664-e946-d7e4a330da0f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0134.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:193::13) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 63627e6a-3438-47b8-ec3e-08d90a6eabc5
X-MS-TrafficTypeDiagnostic: BY5PR03MB5029:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB50290C830F5FC5DB744C8695BA409@BY5PR03MB5029.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: GvaBcj6bZDrKcC5bxYJNviJuXZOLyWrZMKM+aW+Hqj8RgsJKwjSQW9CZz8Qy6+WqZGzCe0PEntN/iUQBpUmqvQpk1Unlq8hvfdqN4/6ktcNAPPit36blF20uWhoXvsRwSAVlNfvy9AtUHXTQQYBPgcmtuEjLu9wjaoEibgkbJJaQ/pSzC4LEsuKDagwee0e4g4beyUMypNuAEARZ7X4nFAVPjSQfUZ+PgwXB6XX++uCZWN7RcJcuhEk724c89U0mXuvL6qjF7oUZUITIowyBHQphN+1VDpmP14DAY3kzF9XbgZ83XhHnt7QQEoIWkqfcAUvj6yMsKo0vNCfD3LLqU+GHmU+EP/qfRPT+sYtROnfU8OV+D+L2czFvjA+RVz8A1jGVpZ4+FLF8RN2TaJSILUeJV1t2EC6flIAvbtPbu/jTjw/a5DDh6jyRJIwl28V3DbuiK8W+H678xseMtkPU8ELTp1DXY8TABDQrW2CL4uuBmyKuXkhPdRWyTlEgzUgF3SNeRJpeqa1GjGB8/2Ilh7a5BaAqPu1JrAdAvoMLUZHF1YX01oEiddoe4KRg+xH3KS8Dqa0ywMjy5sVB92748LpbpIRM7iqjIn3nxOoP/LjNTW3uPibdlvv11O6KSwPUadANyRvVWEG60aDdkbM2vFeg64XDFiNDua/MbxJT/+klz7k7B6yWqCKxsZcWA5Ud
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(376002)(346002)(39830400003)(396003)(31696002)(2906002)(16576012)(66476007)(8676002)(2616005)(66946007)(36756003)(8936002)(956004)(26005)(16526019)(186003)(4326008)(6486002)(38100700002)(31686004)(478600001)(86362001)(53546011)(6916009)(316002)(6666004)(66556008)(54906003)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 63627e6a-3438-47b8-ec3e-08d90a6eabc5
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 17:54:29.5650
 (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: oXfeVVjKN7aAXAP5gdqDOeGDGqjCh6sol/wXoL7mRSK2+NsLcxkdV4t3AT6yAm8WYikQF81VaQxy6/r9rvhvRu9jh2dCTB5YU9i6hP9Dqnk=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5029
X-OriginatorOrg: citrix.com

On 28/04/2021 10:11, Jan Beulich wrote:
> On 27.04.2021 19:39, Andrew Cooper wrote:
>> On 27/04/2021 16:47, Jan Beulich wrote:
>>> On 26.04.2021 19:54, Andrew Cooper wrote:
>>>> --- a/xen/include/public/arch-x86/cpufeatureset.h
>>>> +++ b/xen/include/public/arch-x86/cpufeatureset.h
>>>> @@ -232,7 +232,7 @@ XEN_CPUFEATURE(UMIP,          6*32+ 2) /*S  User M=
ode Instruction Prevention */
>>>>  XEN_CPUFEATURE(PKU,           6*32+ 3) /*H  Protection Keys for Users=
pace */
>>>>  XEN_CPUFEATURE(OSPKE,         6*32+ 4) /*!  OS Protection Keys Enable=
 */
>>>>  XEN_CPUFEATURE(AVX512_VBMI2,  6*32+ 6) /*A  Additional AVX-512 Vector=
 Byte Manipulation Instrs */
>>>> -XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*   CET - Shadow Stacks */
>>>> +XEN_CPUFEATURE(CET_SS,        6*32+ 7) /*h  CET - Shadow Stacks */
>>>>  XEN_CPUFEATURE(GFNI,          6*32+ 8) /*A  Galois Field Instrs */
>>>>  XEN_CPUFEATURE(VAES,          6*32+ 9) /*A  Vector AES Instrs */
>>>>  XEN_CPUFEATURE(VPCLMULQDQ,    6*32+10) /*A  Vector Carry-less Multipl=
ication Instrs */
>>>> @@ -267,7 +267,7 @@ XEN_CPUFEATURE(SRBDS_CTRL,    9*32+ 9) /*   MSR_MC=
U_OPT_CTRL and RNGDS_MITG_DIS.
>>>>  XEN_CPUFEATURE(MD_CLEAR,      9*32+10) /*A  VERW clears microarchitec=
tural buffers */
>>>>  XEN_CPUFEATURE(TSX_FORCE_ABORT, 9*32+13) /* MSR_TSX_FORCE_ABORT.RTM_A=
BORT */
>>>>  XEN_CPUFEATURE(SERIALIZE,     9*32+14) /*a  SERIALIZE insn */
>>>> -XEN_CPUFEATURE(CET_IBT,       9*32+20) /*   CET - Indirect Branch Tra=
cking */
>>>> +XEN_CPUFEATURE(CET_IBT,       9*32+20) /*h  CET - Indirect Branch Tra=
cking */
>>>>  XEN_CPUFEATURE(IBRSB,         9*32+26) /*A  IBRS and IBPB support (us=
ed by Intel) */
>>>>  XEN_CPUFEATURE(STIBP,         9*32+27) /*A  STIBP */
>>>>  XEN_CPUFEATURE(L1D_FLUSH,     9*32+28) /*S  MSR_FLUSH_CMD and L1D flu=
sh. */
>>> If by the time 4.16 finishes up the various todo items haven't been
>>> taken care of, should we take note to undo these markings? I would
>>> have suggested allowing them for debug builds only, but that's kind
>>> of ugly to achieve in a public header.
>> TBH, I still don't think this should be a public header.=C2=A0 If I woul=
d
>> have forseen how much of a PITA is it, I would have argued harder
>> against it.
>>
>> It is, at best, tools-only (via SYSCTL_get_featureset), and I don't
>> intend that interface to survive the tools ABI stabilisation=C2=A0 work,=
 as
>> it has been fully superseded by the cpu_policy interfaces and libx86.
> Well - what features we expose is part of the (or at least something
> like an) ABI.

Yes, but that ABI is called CPUID and MSRs, per Intel/AMD's spec.

VM's see it via the real instructions.=C2=A0 Control software sees it via a
pair of arrays ({leaf, subleaf, a, b, c, d} and {idx, val}) expressed in
terms of the vendors ABI.

>  The actual numbering of course isn't (or shouldn't be).
> I'm in no way opposed to moving the header out of public/ (and until
> now I was of the impression that it was you who put it there), but if
> we do I think we will want an alternative way of expressing which
> extended features we support. I say this in particular because I think
> SUPPORT.md doesn't lend itself to documenting support status at this
> level of granularity. I'd much rather see that file refer to this
> header, even if this may mean some difficulty to non-programmers.

We don't need to say or do anything for experimental features.

Hitting Tech Preview and supported ought to be in release notes.=C2=A0 I do
agree that SUPPORT.md isn't great.

>> As for the max markings themselves, I'm not sure they ought to be
>> debug-only.=C2=A0 Its important aspect of making guest support "tech pre=
view"
>> to ensure the logic works irrespective of CONFIG_DEBUG, and I think it
>> is entirely fine for an experimental feature to be of status "your VM
>> will explode if you enable this right now", even if that spills over
>> into 4.17.
> For a release I consider this undesirable. If a feature is in such a
> state at the point of entering the RC phase, I think such markings
> ought to be undone.

Well no.=C2=A0 They either don't go in in the first place, or they go in an=
d
stay.=C2=A0 Putting them in with an expectation to take them out later is a
recipe for forgetting to do so.

I know we're making up our "how to do complicated experimental features"
process as we go here, but nothing *in Xen* will malfunction if a user
opts into CET_SS/IBT.=C2=A0 Therefore I think they're fine to go in and sta=
y.

~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Apr 28 18:27:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 18:27:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119539.226049 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbouV-0001ea-33; Wed, 28 Apr 2021 18:27:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119539.226049; Wed, 28 Apr 2021 18:27:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbouV-0001eT-07; Wed, 28 Apr 2021 18:27:43 +0000
Received: by outflank-mailman (input) for mailman id 119539;
 Wed, 28 Apr 2021 18:27:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=mtt6=JZ=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbouU-0001eO-3r
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 18:27:42 +0000
Received: from mx.upb.ro (unknown [141.85.13.200])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id f1c280a2-84b6-4663-b8c0-2f6994f3e896;
 Wed, 28 Apr 2021 18:27:40 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 14D33B560061;
 Wed, 28 Apr 2021 21:27:39 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id MWgPoSrfEsNY; Wed, 28 Apr 2021 21:27:37 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 1244DB56006C;
 Wed, 28 Apr 2021 21:27:37 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id c3xTvHpBNZob; Wed, 28 Apr 2021 21:27:36 +0300 (EEST)
Received: from [192.168.1.35] (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 69AA1B560061;
 Wed, 28 Apr 2021 21:27:36 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f1c280a2-84b6-4663-b8c0-2f6994f3e896
X-Virus-Scanned: amavisd-new at upb.ro
Subject: Re: [PATCH 3/5] tools/libs/foreignmemory: Fix PAGE_SIZE redefinition
 error
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <b9a300edca034d44375d8b16d352110186657e75.1619524463.git.costin.lupu@cs.pub.ro>
 <8803561c-b3bd-4979-f9ef-3f58542af70b@xen.org>
From: Costin Lupu <costin.lupu@cs.pub.ro>
Message-ID: <7c465859-5af3-3d9f-81f4-2062b29e57f0@cs.pub.ro>
Date: Wed, 28 Apr 2021 21:27:36 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <8803561c-b3bd-4979-f9ef-3f58542af70b@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable

Hi Julien,

On 4/28/21 12:03 PM, Julien Grall wrote:
> Hi Costin,
>=20
> On 27/04/2021 13:05, Costin Lupu wrote:
>> =C2=A0 tools/libs/foreignmemory/private.h | 6 ++++--
>> =C2=A0 1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/tools/libs/foreignmemory/private.h
>> b/tools/libs/foreignmemory/private.h
>> index 1ee3626dd2..f3c1ba2867 100644
>> --- a/tools/libs/foreignmemory/private.h
>> +++ b/tools/libs/foreignmemory/private.h
>> @@ -10,11 +10,13 @@
>> =C2=A0 #include <xen/xen.h>
>> =C2=A0 #include <xen/sys/privcmd.h>
>> =C2=A0 -#ifndef PAGE_SHIFT /* Mini-os, Yukk */
>> +#ifndef PAGE_SHIFT
>> =C2=A0 #define PAGE_SHIFT=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 12
>> =C2=A0 #endif
>> -#ifndef __MINIOS__ /* Yukk */
>> +#ifndef PAGE_SIZE
>> =C2=A0 #define PAGE_SIZE=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 (1UL << PAGE_SHIFT)
>> +#endif
>> +#ifndef PAGE_MASK
>> =C2=A0 #define PAGE_MASK=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 (~(PAGE_SIZE-1))
>> =C2=A0 #endif
>=20
> Looking at the usage, I believe PAGE_* are referring to the page
> granularity of Xen rather than the page granularity of the control
> domain itself.
>=20
> So it would be incorrect to use the domain's page granularity here and
> would break dom0 using 64KB page granularity on Arm.
>=20
> Instead, we should replace PAGE_* with XC_PAGE_*. If some of them are
> still referring to the control domain granularity, then we should use
> getpageshift() (Or equivalent) because the userspace shouldn't rely on =
a
> specific page granularity.

Yes, this makes sense. One thing I need to clarify: what does XC stand
for? I thought for some time it stands for Xen Control.

Thanks,
Costin


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 18:36:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 18:36:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119547.226061 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbp2R-0002Yf-Th; Wed, 28 Apr 2021 18:35:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119547.226061; Wed, 28 Apr 2021 18: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 1lbp2R-0002YY-Qn; Wed, 28 Apr 2021 18:35:55 +0000
Received: by outflank-mailman (input) for mailman id 119547;
 Wed, 28 Apr 2021 18:35:55 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=mtt6=JZ=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbp2R-0002YT-0s
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 18:35:55 +0000
Received: from mx.upb.ro (unknown [141.85.13.5])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 560b810f-7a01-423d-87a8-a7a95b815aa4;
 Wed, 28 Apr 2021 18:35:54 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 163B9B560070;
 Wed, 28 Apr 2021 21:35:53 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id sCoWxJG2UuUp; Wed, 28 Apr 2021 21:35:50 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 7B5DBB56006C;
 Wed, 28 Apr 2021 21:35:50 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id gFPh4Dzn5c1F; Wed, 28 Apr 2021 21:35:50 +0300 (EEST)
Received: from [192.168.1.35] (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 131CBB560061;
 Wed, 28 Apr 2021 21:35:49 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 560b810f-7a01-423d-87a8-a7a95b815aa4
X-Virus-Scanned: amavisd-new at upb.ro
Subject: Re: [PATCH 2/5] tools/libfsimage: Fix PATH_MAX redefinition error
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <e44209c8981a68604a34f3066d53989f84ce8f49.1619524463.git.costin.lupu@cs.pub.ro>
 <9ef85c5b-b757-bbaa-be23-4ceb1d45cddd@xen.org>
From: Costin Lupu <costin.lupu@cs.pub.ro>
Message-ID: <d29a7d0a-d83e-a437-d38f-d142a2f0d1a7@cs.pub.ro>
Date: Wed, 28 Apr 2021 21:35:49 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <9ef85c5b-b757-bbaa-be23-4ceb1d45cddd@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable

On 4/28/21 12:04 PM, Julien Grall wrote:
>=20
>=20
> On 27/04/2021 13:05, Costin Lupu wrote:
>> If PATH_MAX is already defined in the system (e.g. in
>> /usr/include/limits.h
>> header) then gcc will trigger a redefinition error because of -Werror.
>>
>> Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
>> ---
>> =C2=A0 tools/libfsimage/ext2fs/fsys_ext2fs.c=C2=A0=C2=A0=C2=A0=C2=A0 |=
 2 ++
>> =C2=A0 tools/libfsimage/reiserfs/fsys_reiserfs.c | 2 ++
>> =C2=A0 2 files changed, 4 insertions(+)
>>
>> diff --git a/tools/libfsimage/ext2fs/fsys_ext2fs.c
>> b/tools/libfsimage/ext2fs/fsys_ext2fs.c
>> index a4ed10419c..5ed8fce90e 100644
>> --- a/tools/libfsimage/ext2fs/fsys_ext2fs.c
>> +++ b/tools/libfsimage/ext2fs/fsys_ext2fs.c
>> @@ -278,7 +278,9 @@ struct ext4_extent_header {
>> =C2=A0 =C2=A0 #define EXT2_SUPER_MAGIC=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0=
xEF53=C2=A0=C2=A0=C2=A0 /* include/linux/ext2_fs.h */
>> =C2=A0 #define EXT2_ROOT_INO=C2=A0=C2=A0=C2=A0=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=C2=A0 /* include/linux=
/ext2_fs.h */
>> +#ifndef PATH_MAX
>> =C2=A0 #define PATH_MAX=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1024=C2=A0=C2=A0=C2=A0 /* incl=
ude/linux/limits.h */
>> +#endif
>=20
> Can we drop it completely and just rely on limits.h?
>=20

One problem here is that the system limits.h header doesn't necessarily
include linux/limits.h, which would mean we would have to include
linux/limits.h. But this is problematic for other systems such as BSD.

I had a look on a FreeBSD source tree to see how this is done there. It
seems that there are lots of submodules, apps and libs that redefine
PATH_MAX in case it wasn't defined before so the changes introduced by
the current patch seem to be very popular. Another clean approach I saw
was for jemalloc [1] which includes unistd.h. They redefine PATH_MAX
only for MS C compiler, but AFAIK we don't need that.

So IMHO the current changes seem to be the most portable, but I'm open
to any suggestions.

[1]
https://github.com/jemalloc/jemalloc/blob/dev/include/jemalloc/internal/j=
emalloc_internal_decls.h#L76


>> =C2=A0 #define MAX_LINK_COUNT=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 5=C2=A0=C2=A0=C2=A0 /* number of symbolic =
links
>> to follow */
>> =C2=A0 =C2=A0 /* made up, these are pointers into FSYS_BUF */
>> diff --git a/tools/libfsimage/reiserfs/fsys_reiserfs.c
>> b/tools/libfsimage/reiserfs/fsys_reiserfs.c
>> index 916eb15292..10ca657476 100644
>> --- a/tools/libfsimage/reiserfs/fsys_reiserfs.c
>> +++ b/tools/libfsimage/reiserfs/fsys_reiserfs.c
>> @@ -284,7 +284,9 @@ struct reiserfs_de_head
>> =C2=A0 #define S_ISDIR(mode) (((mode) & 0170000) =3D=3D 0040000)
>> =C2=A0 #define S_ISLNK(mode) (((mode) & 0170000) =3D=3D 0120000)
>> =C2=A0 +#ifndef PATH_MAX
>> =C2=A0 #define PATH_MAX=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1024=C2=A0=
=C2=A0=C2=A0 /* include/linux/limits.h */
>> +#endif
>> =C2=A0 #define MAX_LINK_COUNT=C2=A0=C2=A0=C2=A0 5=C2=A0=C2=A0=C2=A0 /*=
 number of symbolic links to follow */
>> =C2=A0 =C2=A0 /* The size of the node cache */
>>
>=20


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 18:37:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 18:37:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119551.226074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbp44-0002h7-9d; Wed, 28 Apr 2021 18:37:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119551.226074; Wed, 28 Apr 2021 18: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 1lbp44-0002h0-6D; Wed, 28 Apr 2021 18:37:36 +0000
Received: by outflank-mailman (input) for mailman id 119551;
 Wed, 28 Apr 2021 18:37:35 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=mtt6=JZ=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lbp43-0002gu-E3
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 18:37:35 +0000
Received: from mx.upb.ro (unknown [141.85.13.220])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a4a473da-f179-436f-a8c9-77c2d90ae833;
 Wed, 28 Apr 2021 18:37:34 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id DFE4BB560061;
 Wed, 28 Apr 2021 21:37:33 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id A_siWEe2lhhp; Wed, 28 Apr 2021 21:37:32 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id E38A2B56006C;
 Wed, 28 Apr 2021 21:37:31 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id cRuVjwTr9jPD; Wed, 28 Apr 2021 21:37:31 +0300 (EEST)
Received: from [192.168.1.35] (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id F2E09B560061;
 Wed, 28 Apr 2021 21:37:30 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a4a473da-f179-436f-a8c9-77c2d90ae833
X-Virus-Scanned: amavisd-new at upb.ro
Subject: Re: [PATCH 0/5] Fix redefinition errors for toolstack libs
To: Christian Lindig <christian.lindig@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 "Tim (Xen.org)" <tim@xen.org>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, David Scott <dave@recoil.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <AE965271-FE62-4EA7-91CC-F6438C34962A@citrix.com>
From: Costin Lupu <costin.lupu@cs.pub.ro>
Message-ID: <0b82dc88-fe59-3074-471f-2e36ba3b840e@cs.pub.ro>
Date: Wed, 28 Apr 2021 21:37:30 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <AE965271-FE62-4EA7-91CC-F6438C34962A@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable

On 4/28/21 3:34 PM, Christian Lindig wrote:
>=20
>=20
>> On 27 Apr 2021, at 13:05, Costin Lupu <costin.lupu@cs.pub.ro
>> <mailto:costin.lupu@cs.pub.ro>> wrote:
>>
>> For replication I used gcc 10.3 on an Alpine system. In order to
>> replicate the
>> redefinition error for PAGE_SIZE one should install the 'fortify-heade=
rs'
>> package which will change the chain of included headers by indirectly
>> including
>> /usr/include/limits.h where PAGE_SIZE and PATH_MAX are defined.
>>
>> Costin Lupu (5):
>> =C2=A0tools/debugger: Fix PAGE_SIZE redefinition error
>> =C2=A0tools/libfsimage: Fix PATH_MAX redefinition error
>> =C2=A0tools/libs/foreignmemory: Fix PAGE_SIZE redefinition error
>> =C2=A0tools/libs/gnttab: Fix PAGE_SIZE redefinition error
>> =C2=A0tools/ocaml: Fix redefinition errors
>>
>> tools/debugger/kdd/kdd-xen.c =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0| 4 +++=
+
>> tools/debugger/kdd/kdd.c =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0| 4 ++++
>> tools/libfsimage/ext2fs/fsys_ext2fs.c =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0| 2 ++
>> tools/libfsimage/reiserfs/fsys_reiserfs.c =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
| 2 ++
>> tools/libs/foreignmemory/private.h =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0| 6 ++++--
>> tools/libs/gnttab/linux.c =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0| 6 ++++++
>> tools/ocaml/libs/xc/xenctrl_stubs.c =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0| 8 ++++++++
>> tools/ocaml/libs/xentoollog/xentoollog_stubs.c | 4 ++++
>> tools/ocaml/libs/xl/xenlight_stubs.c =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0| 4 ++++
>> 9 files changed, 38 insertions(+), 2 deletions(-)
>>
>> =E2=80=94
>> 2.20.1
>>
>=20
> For the OCaml bindings, this avoids redefinitions as you say. Looks goo=
d
> to me.
>=20
> Acked-by: Christian Lindig <christian.lindig@citrix.com
> <mailto:christian.lindig@citrix.com>>
>=20

Thanks, Christian, I'll add your ack on the Ocaml patch for the next
version of the series.

Cheers,
Costin


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 18:50:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 18:50:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119560.226086 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbpGa-0004Lf-Bw; Wed, 28 Apr 2021 18:50:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119560.226086; Wed, 28 Apr 2021 18: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 1lbpGa-0004LY-8o; Wed, 28 Apr 2021 18:50:32 +0000
Received: by outflank-mailman (input) for mailman id 119560;
 Wed, 28 Apr 2021 18:50:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=G7It=JZ=gmail.com=charles.fg@srs-us1.protection.inumbo.net>)
 id 1lbpGY-0004LT-VY
 for xen-devel@lists.xen.org; Wed, 28 Apr 2021 18:50:31 +0000
Received: from mail-wr1-x42f.google.com (unknown [2a00:1450:4864:20::42f])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 02d0d920-b83e-4976-b7c9-272c5c3e8da3;
 Wed, 28 Apr 2021 18:50:30 +0000 (UTC)
Received: by mail-wr1-x42f.google.com with SMTP id h15so11930095wre.11
 for <xen-devel@lists.xen.org>; Wed, 28 Apr 2021 11:50: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: 02d0d920-b83e-4976-b7c9-272c5c3e8da3
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:from:date:message-id:subject:to;
        bh=Vx263jBtX2kkYoq9sW5vOyFgpPN7Y2dvpLTzvCBCUPM=;
        b=E8x5WaIg15Jv+fEawwrMFXDK+jTAKZXkb4wRdUjNen9XzRZy/9+Lf8Lv97j4sGyxRt
         DZ4oLbABBbnVqkpYPNoRzattXTjM4c1ekfXe9S5Rp3077TaTRyUxyOwHdT65Z7ML20JI
         VPlwOf7cYXDcDqaKu5gVFx8FDjav/jRhgYzXNDNpIEZpD/xqPuOrc/YUL10NQWVqt8go
         WbzqjV0XwL8jWSacCUq2sfA56aeY4kZ5cfLp85WLoUYTx1WQLnf8J6prsHQNnBonM+cV
         4ixH8OLa5eqFiA3AvTGzNZFA57bPsSpcQN7hGFs/5DJtpidaRHkDZs+BBB11POg5P6zc
         nPIQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
        bh=Vx263jBtX2kkYoq9sW5vOyFgpPN7Y2dvpLTzvCBCUPM=;
        b=e75b08BUt5UngYdYTsL1HTZMAQ9PcoLB8bjOdBRVjW04egtmtBFri1gOyYIO5nBG8D
         BWgpnX0sAZsp+44cDxWoydQmTc64lRRprkyXluK5dFnLgwvPR0/pxi3kLbT4RWPzWcHk
         bypdsuBXA/7oLL7hnFqr7VHgvNsOaDKJkWuCrcmuRp7P71eFRbVDPsmBUNFrzlcxOJX8
         hInzN2AfHX/OMIc5tqJB/SrQ+S3TroXYxJj0VMBIdoloJz+BvdWql1gmJkH5gCYGtoiG
         hzAZdQ0L4O7Mw0sMc0/RzGZAq/cBC34nBQVNHbqiA27OitX16sh75SIQHyotsPuQ+9D/
         Sj7A==
X-Gm-Message-State: AOAM531Ns0mmIyV42C8voLguL/DrNHUUqagMT4cMBlcX3lOa4LoQJ8sN
	pgdSatvD0qntznVIymzdo0NqdChHr+J3+QX78KWIdo7MUms=
X-Google-Smtp-Source: ABdhPJxojyihSVikYF+E2TGx9ahF4ICIczqLF+gZhcg1JNgPRYWVKSPlJgTBNviM3YGY0f008vp70x6Za0EMlpPUtNU=
X-Received: by 2002:a05:6000:180a:: with SMTP id m10mr30751975wrh.215.1619635828777;
 Wed, 28 Apr 2021 11:50:28 -0700 (PDT)
MIME-Version: 1.0
From: =?UTF-8?Q?Charles_Gon=C3=A7alves?= <charles.fg@gmail.com>
Date: Wed, 28 Apr 2021 19:49:53 +0100
Message-ID: <CAAQRGoBi4tC+K_FHJceXxEqC6wy79qX0aE60OOeBWSo8tTEbjg@mail.gmail.com>
Subject: Serial Console : SOL vs Physical Port
To: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="0000000000003d686105c10cda56"

--0000000000003d686105c10cda56
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello Guys,

Is there any difference between both?
I'm trying to debug an issue using a SOL but the host crashes before any
meaningful message.

The SOL is working properly when I can debug some crashes perfectly. But
for a specific case I'm wondering if I could be losing some messages.

Atenciosamente,
*Charles Ferreira Gon=C3=A7alves *

--0000000000003d686105c10cda56
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hello Guys,<div><br></div><div>Is there any difference bet=
ween both?</div><div>I&#39;m trying to debug an issue using a SOL but the h=
ost crashes before any meaningful message.</div><div><br></div><div>The SOL=
 is working properly when I can debug some crashes perfectly. But for a spe=
cific case I&#39;m wondering if I could be losing some messages.<br clear=
=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature" data-smartmail=3D"=
gmail_signature"><div dir=3D"ltr"><div><br></div><div>Atenciosamente,</div>=
<b>Charles Ferreira Gon=C3=A7alves </b><br><font color=3D"#666666"><br></fo=
nt><font color=3D"#666666" size=3D"1"><br></font></div></div></div></div></=
div>

--0000000000003d686105c10cda56--


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 19:32:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 19:32:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119565.226097 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbpvS-0007mb-Mt; Wed, 28 Apr 2021 19:32:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119565.226097; Wed, 28 Apr 2021 19: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 1lbpvS-0007mU-Jj; Wed, 28 Apr 2021 19:32:46 +0000
Received: by outflank-mailman (input) for mailman id 119565;
 Wed, 28 Apr 2021 19: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 1lbpvR-0007mM-3z; Wed, 28 Apr 2021 19: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 1lbpvQ-00056c-UP; Wed, 28 Apr 2021 19:32: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 1lbpvQ-00036z-Ij; Wed, 28 Apr 2021 19:32:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbpvQ-0005zx-IF; Wed, 28 Apr 2021 19: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=+sRJJPIAv3ZrfxJUum/7vEK2uWWJTUasOFMF/+qS9nc=; b=uu8abGwq+MkjBLU4nJKACACTNA
	eZIgFPSp9W1YLw4FSbfqKzZb0gtFbxwVHhenS3uCpGtQXXGGEi0ZWPAxslYFkyghIgbl6nYgr74Dy
	4wwly3aFwwRWCpQ4WVAns7wPTp6WHsi6tOBaMXnpZTloeznQLzSv0W97jiXtN86R2ctA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161496-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161496: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=16042d684966728a52a39bb42db575ccc2e8f15f
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 19:32:44 +0000

flight 161496 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161496/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              16042d684966728a52a39bb42db575ccc2e8f15f
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  292 days
Failing since        151818  2020-07-11 04:18:52 Z  291 days  284 attempts
Testing same since   161496  2021-04-28 04:18:58 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastian Germann <bastiangermann@fishpost.de>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 55077 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 21:27:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 21:27:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119583.226113 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbriO-0000EL-1X; Wed, 28 Apr 2021 21:27:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119583.226113; Wed, 28 Apr 2021 21: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 1lbriN-0000EE-UT; Wed, 28 Apr 2021 21:27:23 +0000
Received: by outflank-mailman (input) for mailman id 119583;
 Wed, 28 Apr 2021 21:27:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=RKXr=JZ=goodmis.org=rostedt@kernel.org>)
 id 1lbriM-0000E6-33
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 21:27:22 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 83793284-a4c2-4e3d-9a80-719f8191aa93;
 Wed, 28 Apr 2021 21:27:21 +0000 (UTC)
Received: from gandalf.local.home (cpe-66-24-58-225.stny.res.rr.com
 [66.24.58.225])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mail.kernel.org (Postfix) with ESMTPSA id CB10F6143C;
 Wed, 28 Apr 2021 21:27: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: 83793284-a4c2-4e3d-9a80-719f8191aa93
Date: Wed, 28 Apr 2021 17:27:14 -0400
From: Steven Rostedt <rostedt@goodmis.org>
To: Lai Jiangshan <jiangshanlai@gmail.com>
Cc: linux-kernel@vger.kernel.org, Lai Jiangshan <laijs@linux.alibaba.com>,
 Thomas Gleixner <tglx@linutronix.de>, Paolo Bonzini <pbonzini@redhat.com>,
 Sean Christopherson <seanjc@google.com>, Andi Kleen <ak@linux.intel.com>,
 Andy Lutomirski <luto@kernel.org>, Vitaly Kuznetsov <vkuznets@redhat.com>,
 Wanpeng Li <wanpengli@tencent.com>, Jim Mattson <jmattson@google.com>,
 Joerg Roedel <joro@8bytes.org>, kvm@vger.kernel.org, Josh Poimboeuf
 <jpoimboe@redhat.com>, Uros Bizjak <ubizjak@gmail.com>, Maxim Levitsky
 <mlevitsk@redhat.com>, Ingo Molnar <mingo@redhat.com>, Borislav Petkov
 <bp@alien8.de>, x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Juergen Gross <jgross@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Peter Zijlstra
 <peterz@infradead.org>, Alexandre Chartre <alexandre.chartre@oracle.com>,
 Joerg Roedel <jroedel@suse.de>, Jian Cai <caij2003@gmail.com>,
 xen-devel@lists.xenproject.org
Subject: Re: [PATCH 1/4] x86/xen/entry: Rename xenpv_exc_nmi to
 noist_exc_nmi
Message-ID: <20210428172714.53adac43@gandalf.local.home>
In-Reply-To: <20210426230949.3561-2-jiangshanlai@gmail.com>
References: <20210426230949.3561-1-jiangshanlai@gmail.com>
	<20210426230949.3561-2-jiangshanlai@gmail.com>
X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Tue, 27 Apr 2021 07:09:46 +0800
Lai Jiangshan <jiangshanlai@gmail.com> wrote:

> From: Lai Jiangshan <laijs@linux.alibaba.com>
> 
> There is no any functionality change intended.  Just rename it and
> move it to arch/x86/kernel/nmi.c so that we can resue it later in
> next patch for early NMI and kvm.

Nit, but in change logs, please avoid stating "next patch" as searching git
history (via git blame or whatever) there is no such thing as "next patch".

Just state: "so that we can reuse it for early NMI and KVM."

I also just noticed the typo in "resue". Or maybe both NMI and KVM should
be sued again ;-)

-- Steve


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 21:47:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 21:47:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119588.226124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbs1c-00020K-ME; Wed, 28 Apr 2021 21:47:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119588.226124; Wed, 28 Apr 2021 21: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 1lbs1c-00020D-JJ; Wed, 28 Apr 2021 21:47:16 +0000
Received: by outflank-mailman (input) for mailman id 119588;
 Wed, 28 Apr 2021 21:47:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=CQXR=JZ=gmail.com=wei.liu.xen@srs-us1.protection.inumbo.net>)
 id 1lbs1b-000208-C5
 for xen-devel@lists.xenproject.org; Wed, 28 Apr 2021 21:47:15 +0000
Received: from mail-wm1-f47.google.com (unknown [209.85.128.47])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 3d98b096-9b14-4177-882b-4407b4fa9ec5;
 Wed, 28 Apr 2021 21:47:14 +0000 (UTC)
Received: by mail-wm1-f47.google.com with SMTP id
 b19-20020a05600c06d3b029014258a636e8so5453225wmn.2
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 14:47:14 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([51.145.34.42])
 by smtp.gmail.com with ESMTPSA id g11sm1415698wri.59.2021.04.28.14.47.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 14:47: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: 3d98b096-9b14-4177-882b-4407b4fa9ec5
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:content-transfer-encoding
         :in-reply-to;
        bh=HEMsuhb6RIOSWGDsdfDgT0wSbV+yIfaLeVOJdIJc/Gg=;
        b=orU6LhuB6qVmyOt8e23pLemBSolMyJKuu7NttcNrTy/NS5jWhDJkeFL2SgnOL9mp3W
         vfRfn48xKrFx4jjqzlZXabPHa8LdWoE2xnCm2Zo4daQADxn2pGZpSzkYKvrKcV7KForN
         I4QZeO5JNfC9X7NpC+lEbuSE62FWwRYUjw9IkkF86srSCtxeSYBFLQgiQIzb0iDjzbak
         edNn3XlIfr1ooZimLl2v5vsK2D/utBq8+TVW0OChU5N5JN9koSs6RZc13pLGeP2j9Lb1
         AYvMaG0mlR4TsHUu7WzQIIWg0M6irawIHBROyFSmueiM6m+o8ZdSXOg88CC8F1rSbibw
         2/oQ==
X-Gm-Message-State: AOAM530vUY2nIIxiBXLeQcuXzsHg99NUli0wVS70hBA1/FMncG9cbWmG
	1llfYWnBjJAI1X3YXMipO/U=
X-Google-Smtp-Source: ABdhPJwt4S3YZg9772iJOslM8XH6XCAOKnZw6qBWYfusg5VwBsDdt9QFtLftVjbgDbk5RPIbHth7jg==
X-Received: by 2002:a1c:e906:: with SMTP id q6mr33474523wmc.138.1619646433741;
        Wed, 28 Apr 2021 14:47:13 -0700 (PDT)
Date: Wed, 28 Apr 2021 21:47:11 +0000
From: Wei Liu <wl@xen.org>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, Wei.Chen@arm.com, Henry.Wang@arm.com,
	Penny.Zheng@arm.com, Bertrand.Marquis@arm.com,
	Wei Liu <wei.liu2@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Hongyan Xia <hongyxia@amazon.com>, Julien Grall <jgrall@amazon.com>,
	Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>,
	Hongian Xia <hongyax@amazon.com>
Subject: Re: [PATCH RFCv2 12/15] xen/arm: add Persistent Map (PMAP)
 infrastructure
Message-ID: <20210428214711.7kujg337ja34jb7k@liuwe-devbox-debian-v2>
References: <20210425201318.15447-1-julien@xen.org>
 <20210425201318.15447-13-julien@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210425201318.15447-13-julien@xen.org>

On Sun, Apr 25, 2021 at 09:13:15PM +0100, Julien Grall wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> The basic idea is like Persistent Kernel Map (PKMAP) in Linux. We
> pre-populate all the relevant page tables before the system is fully
> set up.
> 
> We will need it on Arm in order to rework the arm64 version of
> xenheap_setup_mappings() as we may need to use pages allocated from
> the boot allocator before they are effectively mapped.
> 
> This infrastructure is not lock-protected therefore can only be used
> before smpboot. After smpboot, map_domain_page() has to be used.
> 
> This is based on the x86 version [1] that was originally implemented
> by Wei Liu.
> 
> Take the opportunity to switch the parameter attr from unsigned to
> unsigned int.
> 
> [1] <e92da4ad6015b6089737fcccba3ec1d6424649a5.1588278317.git.hongyxia@amazon.com>
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
> [julien: Adapted for Arm]
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> ---
>     Changes in v2:
>         - New patch
> 
> Cc: Jan Beulich <jbeulich@suse.com>
> Cc: Wei Liu <wl@xen.org>
> Cc: Andrew Cooper <andrew.cooper3@citrix.com>
> Cc: Roger Pau Monn <roger.pau@citrix.com>
> Cc: Hongian Xia <hongyax@amazon.com>
> 
> This is mostly a copy of the PMAP infrastructure currently discussed
> on x86. The only difference is how the page-tables are updated.
> 
> I think we want to consider to provide a common infrastructure. But
> I haven't done it yet to gather feedback on the overall series
> first.

+1. This infrastructure should be common code with arch hooks where
appropriate.

Wei.


From xen-devel-bounces@lists.xenproject.org Wed Apr 28 23:37:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 28 Apr 2021 23:37:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119607.226154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbtk8-0002zS-Jx; Wed, 28 Apr 2021 23:37:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119607.226154; Wed, 28 Apr 2021 23:37:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbtk8-0002zL-H2; Wed, 28 Apr 2021 23:37:20 +0000
Received: by outflank-mailman (input) for mailman id 119607;
 Wed, 28 Apr 2021 23:37: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 1lbtk6-0002zD-Ut; Wed, 28 Apr 2021 23:37: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 1lbtk6-0000gB-OO; Wed, 28 Apr 2021 23:37: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 1lbtk6-0007AH-Dj; Wed, 28 Apr 2021 23:37:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbtk6-0006yb-DC; Wed, 28 Apr 2021 23:37: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=D+IjuFlLz7PmaksJBzF1bj3fp4tiGQR4pEgLT7AUGe4=; b=VMM01MeV6hytN57PgANIf4QmFC
	cdHReu4qlVKapKz/DhM4RQp1VPZUAuN+4rXv9KAGT+FTaOfspJEOoqNZ9f4zOResEQDH8A8MtZnKB
	tuPb8AILzkMiqaORTjdE3QWJIIAlD4WPp7yz7t5Ey5fC7ZgsW22tbmFE5YtVFaADiscw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161492-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161492: 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-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-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-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-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-credit2:migrate-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-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-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-amd64-libvirt-vhd: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-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-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
    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-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
X-Osstest-Versions-This:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
X-Osstest-Versions-That:
    xen=11e7f0fe72ca0060762d18268e0388731fe8ccb6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 28 Apr 2021 23:37:18 +0000

flight 161492 xen-unstable real [real]
flight 161510 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161492/
http://logs.test-lab.xenproject.org/osstest/logs/161510/

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 161510-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161480
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161480
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161480
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161480
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161480
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161480
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161480
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161480
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161480
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161480
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161480
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-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-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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          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-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-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

version targeted for testing:
 xen                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
baseline version:
 xen                  11e7f0fe72ca0060762d18268e0388731fe8ccb6

Last test of basis   161480  2021-04-27 08:33:02 Z    1 days
Testing same since   161492  2021-04-27 23:07:55 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Tim Deegan <tim@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                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 :

To xenbits.xen.org:/home/xen/git/xen.git
   11e7f0fe72..972ba1d1d4  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3 -> master


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:14:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:14:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119615.226182 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKL-00074W-Db; Thu, 29 Apr 2021 00:14:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119615.226182; Thu, 29 Apr 2021 00: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 1lbuKL-00074D-9a; Thu, 29 Apr 2021 00:14:45 +0000
Received: by outflank-mailman (input) for mailman id 119615;
 Thu, 29 Apr 2021 00:14:43 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKJ-00072A-Tc
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:14:43 +0000
Received: from mail-qt1-x82b.google.com (unknown [2607:f8b0:4864:20::82b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1b171eda-13ee-459c-a382-a7efd0e3d097;
 Thu, 29 Apr 2021 00:14:39 +0000 (UTC)
Received: by mail-qt1-x82b.google.com with SMTP id j19so7738082qtx.13
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:39 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.37
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: 1b171eda-13ee-459c-a382-a7efd0e3d097
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references;
        bh=CIwXzDWTaek3ruD8eh2yS/rqRAAsDRXtMIQbC1kOPa4=;
        b=f4V0FpJy9dRR1osaw30MbdWHpAUh9x90l7i8MllowCfeAGnUpma9AH3jZ8bTYzatum
         c7Dq6lKdNNqZPysBSV7COSk/TwuvsYfQ+BxFgh4EkzTtl5ukyN1xjO2amvCMfd76HdPZ
         5YML492by4O2ov+4fI5kux8KA8ldGwd0WIKD+73iUtj8S+Gmy3lJkXGbxNilpziBGAGI
         teUpGyA4MI8phADiH05UjHQ7Q4JqZdeiZEbah/vxIf5O+//57sDqmIK8GiyJs3eZvFOJ
         wtDqHs4EapiS0T2u7J3nGMpr2Hih/GuNM1QQmGdWPrdbypJLRJJJpnoMX6es13s3URs9
         559g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references;
        bh=CIwXzDWTaek3ruD8eh2yS/rqRAAsDRXtMIQbC1kOPa4=;
        b=Jij7OVThzqNPxk1KIjAMZmNFIJYUDXHPK7SUYgcF/E8Y1VPleNgSsu3Z8pH821yPqx
         dvr0aj+y7nNX0UonNTMNQs339GqC2MO5dTopYx2qiMZA4SZa5+fX66b9bwkPWrCnc6F4
         3UuOhGwVJEP2sUvC48Xwx/jsOdR+ZiymRn9CBarG873VXLdtUeNX5Y+FHqao/mrWpdOQ
         LxHvhHZPK8F6b2CXrA9ToXgb8UD/mxyF6h+Y9v93L3BZyi1ASzse7HkstSIz2Fpgqo/j
         G73mH241acD+eEupc4ixI9lWLBcJFfUkGoMmlSmbdrBQwTT9E/7SK4E7N31zLfCXdwK2
         DjHA==
X-Gm-Message-State: AOAM530BWuZvO8VYw6MaTs3/foXzSldufWuju/Ej3GlxHTMejxpY/QvU
	t64OY7NNNVnOAcVSzYVqO0S+aHDUsRc=
X-Google-Smtp-Source: ABdhPJx5ujgeg0d2gbXMFIdGB8a53HLirR//KrIoxV+Z+RbA2Qo/1ZTg9ErpjBQj8PdPoOQsS9nFWA==
X-Received: by 2002:ac8:5286:: with SMTP id s6mr29135170qtn.71.1619655278457;
        Wed, 28 Apr 2021 17:14:38 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 01/12] golang/xenlight: update generated code
Date: Wed, 28 Apr 2021 20:14:23 -0400
Message-Id: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>

Re-generate code to reflect changes to libxl_types.idl from the
following commits:

0570d7f276 x86/msr: introduce an option for compatible MSR behavior selection
7e5cffcd1e viridian: allow vCPU hotplug for Windows VMs
9835246710 viridian: remove implicit limit of 64 VPs per partition

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/helpers.gen.go | 6 ++++++
 tools/golang/xenlight/types.gen.go   | 5 +++++
 2 files changed, 11 insertions(+)

diff --git a/tools/golang/xenlight/helpers.gen.go b/tools/golang/xenlight/helpers.gen.go
index 4c60d27a9c..b454b12d52 100644
--- a/tools/golang/xenlight/helpers.gen.go
+++ b/tools/golang/xenlight/helpers.gen.go
@@ -1113,6 +1113,9 @@ default:
 return fmt.Errorf("invalid union key '%v'", x.Type)}
 x.ArchArm.GicVersion = GicVersion(xc.arch_arm.gic_version)
 x.ArchArm.Vuart = VuartType(xc.arch_arm.vuart)
+if err := x.ArchX86.MsrRelaxed.fromC(&xc.arch_x86.msr_relaxed);err != nil {
+return fmt.Errorf("converting field ArchX86.MsrRelaxed: %v", err)
+}
 x.Altp2M = Altp2MMode(xc.altp2m)
 x.VmtraceBufKb = int(xc.vmtrace_buf_kb)
 
@@ -1589,6 +1592,9 @@ default:
 return fmt.Errorf("invalid union key '%v'", x.Type)}
 xc.arch_arm.gic_version = C.libxl_gic_version(x.ArchArm.GicVersion)
 xc.arch_arm.vuart = C.libxl_vuart_type(x.ArchArm.Vuart)
+if err := x.ArchX86.MsrRelaxed.toC(&xc.arch_x86.msr_relaxed); err != nil {
+return fmt.Errorf("converting field ArchX86.MsrRelaxed: %v", err)
+}
 xc.altp2m = C.libxl_altp2m_mode(x.Altp2M)
 xc.vmtrace_buf_kb = C.int(x.VmtraceBufKb)
 
diff --git a/tools/golang/xenlight/types.gen.go b/tools/golang/xenlight/types.gen.go
index cb13002fdb..f2ceceb61c 100644
--- a/tools/golang/xenlight/types.gen.go
+++ b/tools/golang/xenlight/types.gen.go
@@ -211,6 +211,8 @@ ViridianEnlightenmentSynic ViridianEnlightenment = 7
 ViridianEnlightenmentStimer ViridianEnlightenment = 8
 ViridianEnlightenmentHcallIpi ViridianEnlightenment = 9
 ViridianEnlightenmentExProcessorMasks ViridianEnlightenment = 10
+ViridianEnlightenmentNoVpLimit ViridianEnlightenment = 11
+ViridianEnlightenmentCpuHotplug ViridianEnlightenment = 12
 )
 
 type Hdtype int
@@ -513,6 +515,9 @@ ArchArm struct {
 GicVersion GicVersion
 Vuart VuartType
 }
+ArchX86 struct {
+MsrRelaxed Defbool
+}
 Altp2M Altp2MMode
 VmtraceBufKb int
 }
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:14:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:14:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119614.226170 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKH-00072S-05; Thu, 29 Apr 2021 00:14:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119614.226170; Thu, 29 Apr 2021 00: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 1lbuKG-00072L-Ss; Thu, 29 Apr 2021 00:14:40 +0000
Received: by outflank-mailman (input) for mailman id 119614;
 Thu, 29 Apr 2021 00:14:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKE-00072A-VM
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:14:39 +0000
Received: from mail-qk1-x735.google.com (unknown [2607:f8b0:4864:20::735])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 26db95de-88d3-4037-9cca-b69fde44230c;
 Thu, 29 Apr 2021 00:14:38 +0000 (UTC)
Received: by mail-qk1-x735.google.com with SMTP id u20so33409107qku.10
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:38 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.36
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: 26db95de-88d3-4037-9cca-b69fde44230c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id;
        bh=JgWNZYdWbxhv4Vwgh6STOe2vmJwSi9uDZw25xJ4C5u0=;
        b=NZJwCNiz2Y3t20rRF9tiRZD4hJZeP4/XZ8GU+/jaUIDw2q7cbxaF1d72TEbEgbofmV
         ABB6gE18HdBVOw04MMxnYHfdx3qWiSz2cMYNwfnQy50MhqxbRy9TVYs65GgFtiG8K1OI
         WwkF/M20459aCVchnq9blTawaUSCcVwVq3DlCZxen1dBUINwkdUhemqD4tVc86lFmOJ3
         inmQ/dhqW9K7Yvox0IZyAuxGVGZYml/3xLPWVlKFNUYWiDAgWOgbJHbqv9LBMcTN0CO+
         2kAvGHRX9ZUe1PZs4O7arhQdtTJGVJQYceosvc8+WIBGD0w7apj4EZI15ommwSZ6f2vy
         38mw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id;
        bh=JgWNZYdWbxhv4Vwgh6STOe2vmJwSi9uDZw25xJ4C5u0=;
        b=Z3BUEttelbo/8umz6/CV0B3GwPM3+H+MvnvoykYBlkFBismmUPmuVhvcNezUzYTg8q
         +MoE98LjdBiaWK5p9LKCSq2y1npF9e6eJrzLuJujenRwxtGZt0+5CYbgAswuJiY8wRMT
         qH7zlzVVBascjkeHq/LE2UEizRN/grFcAQ1y/7f+16yFPm+Oeq+REAZAHDww7h+bfVby
         N/nRuCy4jGEA+UwO/T8o8NWgPd54hnRsSV8SsC6hQza4u+p7MZPE79c2TIv+TzeMKilY
         QCntypUVAiGZwne3D6x4BqKetgqxVSqnmFSmZtEiKID9skMuPzrEiew2GjdBvMuZ3lug
         J2zA==
X-Gm-Message-State: AOAM530Sylq9WTPniGlrUA4RgpoSBSWuGRmv3mV6fpbAGOeO7mT3K2aD
	Odx5ZilOjElDQLLc+/Jd0lLR7qrl0bY=
X-Google-Smtp-Source: ABdhPJzhvrGgmwZ9/SbsyzA7VyJs2aFfFrFK9G+0nBKx8C0jibnMbVZi9Nb9ku7q0SjemOErk8tQlw==
X-Received: by 2002:a05:620a:4553:: with SMTP id u19mr21009894qkp.485.1619655277468;
        Wed, 28 Apr 2021 17:14:37 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 00/12] golang/xenlight: domain life cycle support
Date: Wed, 28 Apr 2021 20:14:22 -0400
Message-Id: <cover.1619650820.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1

The primary goal of this patch series is to allow users of the xenlight
package to manage a full domain life cycle. In particular, it provides
support for receiving domain death events so that domain shutdown,
reboot, destroy, etc. can be handled. And, it addresses issues found
when using the package to boot domains with various configurations.

These patches address several things (e.g. bug fixes, code style,
conveniences, new wrapper functions), but are all work towards the final
goal of allowing a package user to manage a full domain life cycle.

Nick Rosbrook (12):
  golang/xenlight: update generated code
  golang/xenlight: fix StringList toC conversion
  golang/xenlight: fix string conversion in generated toC functions
  golang/xenlight: export keyed union interface types
  golang/xenlight: use struct pointers in keyed union fields
  golang/xenlight: rename Ctx receivers to ctx
  golang/xenlight: add logging conveniences for within xenlight
  golang/xenlight: add functional options to configure Context
  golang/xenlight: add DomainDestroy wrapper
  golang/xenlight: add SendTrigger wrapper
  golang/xenlight: do not negate ret when converting to Error
  golang/xenlight: add NotifyDomainDeath method to Context

 tools/golang/xenlight/gengotypes.py  |  11 +-
 tools/golang/xenlight/helpers.gen.go | 210 ++++++++++++--
 tools/golang/xenlight/types.gen.go   |  63 +++--
 tools/golang/xenlight/xenlight.go    | 395 ++++++++++++++++++++-------
 4 files changed, 518 insertions(+), 161 deletions(-)

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:14:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:14:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119616.226194 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKQ-000786-Lg; Thu, 29 Apr 2021 00:14:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119616.226194; Thu, 29 Apr 2021 00: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 1lbuKQ-00077z-Ia; Thu, 29 Apr 2021 00:14:50 +0000
Received: by outflank-mailman (input) for mailman id 119616;
 Thu, 29 Apr 2021 00:14:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKO-00072A-Tq
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:14:48 +0000
Received: from mail-qk1-x736.google.com (unknown [2607:f8b0:4864:20::736])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 436ed0b2-c47d-45a4-a919-3f92849f675e;
 Thu, 29 Apr 2021 00:14:40 +0000 (UTC)
Received: by mail-qk1-x736.google.com with SMTP id o5so65593653qkb.0
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:40 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.38
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: 436ed0b2-c47d-45a4-a919-3f92849f675e
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=0XtO/J2QIxV3EsCnIwGPbPpW2RCXziWsO8eq8KNOMcc=;
        b=brDXVwtZ9DOU5zpYvrl7RNpKNGJxeMznujlMSHAqojenCtF9ZFdDnle8brORshOy7M
         42qo8z82cPE5wzfyb+2yYp6twrd4mnfILFLsVK+77Pracr3i9pZ6ztpMC99BTMdm1ClA
         cYKE9wUNf+ykjqnyoqoZIny5xYvuAEi8abL9Bv6/zuc4ztmY6Hr9rK4KeSXqKyojuI83
         mC2dAy3kzNXxXwIn1B96GCBBQrpOeBaemjL7aIDEppDSR1t5BREoVz1lQv0cDq0HJchR
         zI+iRFU2g+no3aAw/asUTOlJ6M7kTf9Jj4nMTw85NAm9DZ8GlLSZFOWPqn0NFfea4Ana
         CFBA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=0XtO/J2QIxV3EsCnIwGPbPpW2RCXziWsO8eq8KNOMcc=;
        b=rS38t0/Fq5TYiC1cNCFXxkcJwdO32E5vGvGW6xZ2REZ0awie+FmlMl799UV8j9pf+J
         t7gZqydtFbGaCDOrsMNJH+x0iy/FhumylDnIBTuV/Yh1lSSoTxvVHS9dnMEqG30QdJeW
         r90Xn0bY5XhailyT4m9OgwbJGLV0Tz0YBthKn3R5BL3bHXIyRWzPr83Jpx5p4+kQtkEP
         S6diJ9ZYztqGX5B3XpcJsaWtEWOendMgLu8eCi3djim0EY/U7V88bpsQU7QIsh6kQcit
         CMT6ZIMWhMykaKfKOUkLy1hP87FmFwdzpTZjW8pq+gsd70OZA9wHMkFgLcJ+Ym2urW/R
         EVXw==
X-Gm-Message-State: AOAM5339gN5Vw3hmG8X+/HIXMfyLFRJLeYxkFJC/aVvAcVbhQo6qNFI2
	3SA0hVwwgMxa9DHAO9hVwsuzes8LzSk=
X-Google-Smtp-Source: ABdhPJzvTftEET+PZK17rrlsHnVK9BhzZX5bMB8KQl6sVY3DdiswQ0xNZIi3w0WOnBBdguaMxlnOJQ==
X-Received: by 2002:a37:5a46:: with SMTP id o67mr31675105qkb.240.1619655279544;
        Wed, 28 Apr 2021 17:14:39 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 02/12] golang/xenlight: fix StringList toC conversion
Date: Wed, 28 Apr 2021 20:14:24 -0400
Message-Id: <0a15ed9eb6cd70416995f5d9805c98572eb6bd50.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

The current implementation of StringList.toC does not correctly account
for how libxl_string_list is expected to be laid out in C, which is clear
when one looks at libxl_string_list_length in libxl.c. In particular,
StringList.toC does not account for the extra memory that should be
allocated for the "sentinel" entry. And, when using the "slice trick" to
create a slice that can address C memory, the unsafe.Pointer conversion
should be on a C.libxl_string_list, not *C.libxl_string_list.

Fix these problems by (1) allocating an extra slot in the slice used to
address the C memory, and explicity set the last entry to nil so the C
memory will be zeroed out, and (2) dereferencing csl in the
unsafe.Pointer conversion.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/xenlight.go | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
index b9189dec5c..13171d0ad1 100644
--- a/tools/golang/xenlight/xenlight.go
+++ b/tools/golang/xenlight/xenlight.go
@@ -491,13 +491,14 @@ func (sl *StringList) fromC(csl *C.libxl_string_list) error {
 
 func (sl StringList) toC(csl *C.libxl_string_list) error {
 	var char *C.char
-	size := len(sl)
+	size := len(sl) + 1
 	*csl = (C.libxl_string_list)(C.malloc(C.ulong(size) * C.ulong(unsafe.Sizeof(char))))
-	clist := (*[1 << 30]*C.char)(unsafe.Pointer(csl))[:size:size]
+	clist := (*[1 << 30]*C.char)(unsafe.Pointer(*csl))[:size:size]
 
 	for i, v := range sl {
 		clist[i] = C.CString(v)
 	}
+	clist[len(clist)-1] = nil
 
 	return nil
 }
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:14:56 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:14:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119617.226206 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKV-0007Cj-V4; Thu, 29 Apr 2021 00:14:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119617.226206; Thu, 29 Apr 2021 00:14:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKV-0007Ca-RN; Thu, 29 Apr 2021 00:14:55 +0000
Received: by outflank-mailman (input) for mailman id 119617;
 Thu, 29 Apr 2021 00:14:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKT-00072A-Tx
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:14:53 +0000
Received: from mail-qk1-x731.google.com (unknown [2607:f8b0:4864:20::731])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d2f678f5-9d9f-493b-ab92-319259b8698b;
 Thu, 29 Apr 2021 00:14:42 +0000 (UTC)
Received: by mail-qk1-x731.google.com with SMTP id v23so13535062qkj.13
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:42 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.40
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d2f678f5-9d9f-493b-ab92-319259b8698b
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=hfBP94KizJpDruLBLBLMUfOcD8AldREODeB/q9SIq2M=;
        b=nwB/PeMLkI5d5Mqyaog1rfa0K2BxHc+Qq5tQqH/hyNbAD8mcLSzN90mrysxA9dNmkC
         72SwKu3SVMXjLtLh8M+3S2y9GU4L2pnCItbWq1adnWsxSFEoHVT3gX5ES/1tg1c/JRxe
         jpvMkBTCQVXnkaPbTUZgyuKXddPHZIr6WahTALnVulbTPqX1WbmRD0Wvwgl2BNom614r
         Zi5WgKyqp5YPxLqdJV8lvoIo8b0K6IoaHmNI5jItQbBWp0uGC+xs8GO6Zd7PeK67oveH
         3u+I0ohJyC1cHAnwEyrtnF3JJvOi2l2gBg/rQJgvcYmieT++3Af7Np4pIWamdGRXr6lU
         WWpg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=hfBP94KizJpDruLBLBLMUfOcD8AldREODeB/q9SIq2M=;
        b=pTONOOesor04uXZTiDYzFTPA/tlZ+yUgN8TmG1HV0HBTZwGy0urJl3qdlJ/s4REA97
         hNgvDZx0K4Vw6ImtkRipmrm4m8Ysa3CfLYfBqyr2R5qK+a5HEw8+FIO9LVsT5fNJRMvo
         goaIZKR3myiMLpwAZvRUKimaSdanw5HN6Qn9d0HmwIHHrpYVLg2Kq/ae6Y1DBbAljnEg
         pwHzLy6HWWlVv/aps1dj+xtOQV6ercolDBxZIe0LvdG9tFiQgudtlvgTeqvv+mUkplZt
         HgfJtRXzStTJvGJOJaVuAsDwzlfC4qr/graOpYsrMkCxW12T1MVcyu/fb5cBw4R7wkEc
         h1+A==
X-Gm-Message-State: AOAM533Ta02snuHvxcAJYOK8R0dsRXVTauJ42TBJYhi2N2O0Lbn9+NzV
	8QK5VZh/dh0CDK9PxexNWKS7nQ9EfMg=
X-Google-Smtp-Source: ABdhPJxJ9iyXQi7HJ8FElJttOTZBsESnGgPJlcEya9pvWEkOAtrcG1pmBttr40tyMannomyjlrVwOQ==
X-Received: by 2002:a05:620a:24c4:: with SMTP id m4mr32883604qkn.114.1619655281508;
        Wed, 28 Apr 2021 17:14:41 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 04/12] golang/xenlight: export keyed union interface types
Date: Wed, 28 Apr 2021 20:14:26 -0400
Message-Id: <29a3fbc93262cb9b31f02d6c94c018b200dfa43e.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

For structs that have a keyed union, e.g. DomainBuildInfo, the TypeUnion
field must be exported so that package users can get/set the fields
within. This means that users are aware of the existence of the
interface type used in those fields (see [1]), so it is awkward that the
interface itself is not exported. However, the single method within the
interface must remain unexported so that users cannot mistakenly "implement"
those interfaces.

Since there seems to be no reason to do otherwise, export the keyed
union interface types.

[1] https://pkg.go.dev/xenbits.xenproject.org/git-http/xen.git/tools/golang/xenlight?tab=doc#DeviceUsbdev

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/gengotypes.py |  6 +--
 tools/golang/xenlight/types.gen.go  | 58 ++++++++++++++---------------
 2 files changed, 32 insertions(+), 32 deletions(-)

diff --git a/tools/golang/xenlight/gengotypes.py b/tools/golang/xenlight/gengotypes.py
index e6daa9b92f..3796632f7d 100644
--- a/tools/golang/xenlight/gengotypes.py
+++ b/tools/golang/xenlight/gengotypes.py
@@ -159,7 +159,7 @@ def xenlight_golang_define_union(ty = None, struct_name = '', union_name = ''):
     extras = []
 
     interface_name = '{0}_{1}_union'.format(struct_name, ty.keyvar.name)
-    interface_name = xenlight_golang_fmt_name(interface_name, exported=False)
+    interface_name = xenlight_golang_fmt_name(interface_name)
 
     s += 'type {0} interface {{\n'.format(interface_name)
     s += 'is{0}()\n'.format(interface_name)
@@ -341,7 +341,7 @@ def xenlight_golang_union_from_C(ty = None, union_name = '', struct_name = ''):
     field_name = xenlight_golang_fmt_name('{0}_union'.format(keyname))
 
     interface_name = '{0}_{1}_union'.format(struct_name, keyname)
-    interface_name = xenlight_golang_fmt_name(interface_name, exported=False)
+    interface_name = xenlight_golang_fmt_name(interface_name)
 
     cgo_keyname = keyname
     if cgo_keyname in go_keywords:
@@ -546,7 +546,7 @@ def xenlight_golang_union_to_C(ty = None, union_name = '',
     gokeytype = xenlight_golang_fmt_name(keytype)
 
     interface_name = '{0}_{1}_union'.format(struct_name, keyname)
-    interface_name = xenlight_golang_fmt_name(interface_name, exported=False)
+    interface_name = xenlight_golang_fmt_name(interface_name)
 
     cgo_keyname = keyname
     if cgo_keyname in go_keywords:
diff --git a/tools/golang/xenlight/types.gen.go b/tools/golang/xenlight/types.gen.go
index f2ceceb61c..a214dd9df6 100644
--- a/tools/golang/xenlight/types.gen.go
+++ b/tools/golang/xenlight/types.gen.go
@@ -337,18 +337,18 @@ State int
 Evtch int
 Rref int
 Connection ChannelConnection
-ConnectionUnion channelinfoConnectionUnion
+ConnectionUnion ChannelinfoConnectionUnion
 }
 
-type channelinfoConnectionUnion interface {
-ischannelinfoConnectionUnion()
+type ChannelinfoConnectionUnion interface {
+isChannelinfoConnectionUnion()
 }
 
 type ChannelinfoConnectionUnionPty struct {
 Path string
 }
 
-func (x ChannelinfoConnectionUnionPty) ischannelinfoConnectionUnion(){}
+func (x ChannelinfoConnectionUnionPty) isChannelinfoConnectionUnion(){}
 
 type Vminfo struct {
 Uuid Uuid
@@ -510,7 +510,7 @@ Apic Defbool
 DmRestrict Defbool
 Tee TeeType
 Type DomainType
-TypeUnion domainBuildInfoTypeUnion
+TypeUnion DomainBuildInfoTypeUnion
 ArchArm struct {
 GicVersion GicVersion
 Vuart VuartType
@@ -522,8 +522,8 @@ Altp2M Altp2MMode
 VmtraceBufKb int
 }
 
-type domainBuildInfoTypeUnion interface {
-isdomainBuildInfoTypeUnion()
+type DomainBuildInfoTypeUnion interface {
+isDomainBuildInfoTypeUnion()
 }
 
 type DomainBuildInfoTypeUnionHvm struct {
@@ -575,7 +575,7 @@ RdmMemBoundaryMemkb uint64
 McaCaps uint64
 }
 
-func (x DomainBuildInfoTypeUnionHvm) isdomainBuildInfoTypeUnion(){}
+func (x DomainBuildInfoTypeUnionHvm) isDomainBuildInfoTypeUnion(){}
 
 type DomainBuildInfoTypeUnionPv struct {
 Kernel string
@@ -588,7 +588,7 @@ Features string
 E820Host Defbool
 }
 
-func (x DomainBuildInfoTypeUnionPv) isdomainBuildInfoTypeUnion(){}
+func (x DomainBuildInfoTypeUnionPv) isDomainBuildInfoTypeUnion(){}
 
 type DomainBuildInfoTypeUnionPvh struct {
 Pvshim Defbool
@@ -597,7 +597,7 @@ PvshimCmdline string
 PvshimExtra string
 }
 
-func (x DomainBuildInfoTypeUnionPvh) isdomainBuildInfoTypeUnion(){}
+func (x DomainBuildInfoTypeUnionPvh) isDomainBuildInfoTypeUnion(){}
 
 type DeviceVfb struct {
 BackendDomid Domid
@@ -761,11 +761,11 @@ type DeviceUsbdev struct {
 Ctrl Devid
 Port int
 Type UsbdevType
-TypeUnion deviceUsbdevTypeUnion
+TypeUnion DeviceUsbdevTypeUnion
 }
 
-type deviceUsbdevTypeUnion interface {
-isdeviceUsbdevTypeUnion()
+type DeviceUsbdevTypeUnion interface {
+isDeviceUsbdevTypeUnion()
 }
 
 type DeviceUsbdevTypeUnionHostdev struct {
@@ -773,7 +773,7 @@ Hostbus byte
 Hostaddr byte
 }
 
-func (x DeviceUsbdevTypeUnionHostdev) isdeviceUsbdevTypeUnion(){}
+func (x DeviceUsbdevTypeUnionHostdev) isDeviceUsbdevTypeUnion(){}
 
 type DeviceDtdev struct {
 Path string
@@ -807,18 +807,18 @@ BackendDomname string
 Devid Devid
 Name string
 Connection ChannelConnection
-ConnectionUnion deviceChannelConnectionUnion
+ConnectionUnion DeviceChannelConnectionUnion
 }
 
-type deviceChannelConnectionUnion interface {
-isdeviceChannelConnectionUnion()
+type DeviceChannelConnectionUnion interface {
+isDeviceChannelConnectionUnion()
 }
 
 type DeviceChannelConnectionUnionSocket struct {
 Path string
 }
 
-func (x DeviceChannelConnectionUnionSocket) isdeviceChannelConnectionUnion(){}
+func (x DeviceChannelConnectionUnionSocket) isDeviceChannelConnectionUnion(){}
 
 type ConnectorParam struct {
 UniqueId string
@@ -1116,31 +1116,31 @@ Domid Domid
 Domuuid Uuid
 ForUser uint64
 Type EventType
-TypeUnion eventTypeUnion
+TypeUnion EventTypeUnion
 }
 
-type eventTypeUnion interface {
-iseventTypeUnion()
+type EventTypeUnion interface {
+isEventTypeUnion()
 }
 
 type EventTypeUnionDomainShutdown struct {
 ShutdownReason byte
 }
 
-func (x EventTypeUnionDomainShutdown) iseventTypeUnion(){}
+func (x EventTypeUnionDomainShutdown) isEventTypeUnion(){}
 
 type EventTypeUnionDiskEject struct {
 Vdev string
 Disk DeviceDisk
 }
 
-func (x EventTypeUnionDiskEject) iseventTypeUnion(){}
+func (x EventTypeUnionDiskEject) isEventTypeUnion(){}
 
 type EventTypeUnionOperationComplete struct {
 Rc int
 }
 
-func (x EventTypeUnionOperationComplete) iseventTypeUnion(){}
+func (x EventTypeUnionOperationComplete) isEventTypeUnion(){}
 
 type PsrCmtType int
 const(
@@ -1175,11 +1175,11 @@ PsrFeatTypeMba PsrFeatType = 2
 type PsrHwInfo struct {
 Id uint32
 Type PsrFeatType
-TypeUnion psrHwInfoTypeUnion
+TypeUnion PsrHwInfoTypeUnion
 }
 
-type psrHwInfoTypeUnion interface {
-ispsrHwInfoTypeUnion()
+type PsrHwInfoTypeUnion interface {
+isPsrHwInfoTypeUnion()
 }
 
 type PsrHwInfoTypeUnionCat struct {
@@ -1188,7 +1188,7 @@ CbmLen uint32
 CdpEnabled bool
 }
 
-func (x PsrHwInfoTypeUnionCat) ispsrHwInfoTypeUnion(){}
+func (x PsrHwInfoTypeUnionCat) isPsrHwInfoTypeUnion(){}
 
 type PsrHwInfoTypeUnionMba struct {
 CosMax uint32
@@ -1196,5 +1196,5 @@ ThrtlMax uint32
 Linear bool
 }
 
-func (x PsrHwInfoTypeUnionMba) ispsrHwInfoTypeUnion(){}
+func (x PsrHwInfoTypeUnionMba) isPsrHwInfoTypeUnion(){}
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:15:01 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:15:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119621.226218 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKb-0007Hz-7g; Thu, 29 Apr 2021 00:15:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119621.226218; Thu, 29 Apr 2021 00:15:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKb-0007Hp-3q; Thu, 29 Apr 2021 00:15:01 +0000
Received: by outflank-mailman (input) for mailman id 119621;
 Thu, 29 Apr 2021 00:14:59 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKY-00072A-Tx
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:14:58 +0000
Received: from mail-qk1-x72a.google.com (unknown [2607:f8b0:4864:20::72a])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 319f02a1-26ba-43dc-8aaf-c36d6b6dd190;
 Thu, 29 Apr 2021 00:14:41 +0000 (UTC)
Received: by mail-qk1-x72a.google.com with SMTP id 66so26014580qkf.2
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:41 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.39
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: 319f02a1-26ba-43dc-8aaf-c36d6b6dd190
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=uzJn8fV3EdSO38YaBLqYQLo0qSO3Ncl/nRlIGcswrmU=;
        b=Hqn+oUKMlcXpq1h0ExB/ZfAy86ZQYkb32unXiTP+XSq3xFHLZ7+0p/aR2EVAJSpTBW
         AZrHcTCiUOX5kL7JX5qcuD3WVOqlbma7q234AtivYvByeS1qCAraUslZ2dtwT/mi/abx
         5+KIptlww5bump2pG9vpM9riM0iqOPg35bZkxtkFZ2BQ3HtjiqGcP6uXptGzB5KtGanq
         waL8II4ko7Aa5A6EVjIAJ9JvaeXUyOfPKnzweNlRP5NjDvDXQ1Muw42tXFw+Csyza5pe
         ymVDjeAwqvF6htxqNqPnjAVUR1Ft0iN4lBCuhVVjzwjIExUorDGnhUqpaO7Ofq8KBf2l
         1fWg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=uzJn8fV3EdSO38YaBLqYQLo0qSO3Ncl/nRlIGcswrmU=;
        b=acgoB5ZjI4L0026R9NzlwVyBTLRXitOP/UPUhfXvY0rKerEWB/JFdyjb9Kjaaga5ZX
         6x6LoFaPpE1Wandxx0+ckH5eXh/NcTKx0gBFHvOTcv3RQkoXe1gi1hCks7rv15Bu0j94
         jlVAd80svdcE+wduQ1kWY7+fR9nX58WNIbVJnwfyBGY0bOrrfJmE6Wm96+P7bC6pnKBO
         gEUAGqSal5DIfHxduAEUB/49NPfWrO2Fm+TiPfg6VC3ga2EjywoCyIfdVo5baVYM/K4c
         +nleLoaeimHjBzb58MiWPMqK5/zpUKTwydxoPW3WjdKUmhiaOYlXRTw57RoiQno+lD1G
         TQOw==
X-Gm-Message-State: AOAM533Mw0V+idimjMRrdwEZGtQnkQzokWzBsykxD2zZgcwnEDaSyEYI
	mbzsZdQkB+BfH2/AZOJEi72zZynjcgU=
X-Google-Smtp-Source: ABdhPJxDrhgR+Agdwwa8GG3hVHvQHKk01WIAOp/Q3pWpvt/3bdUQRS+80FsrYDY+hItRfBhByWnSrw==
X-Received: by 2002:a37:6249:: with SMTP id w70mr24334594qkb.99.1619655280638;
        Wed, 28 Apr 2021 17:14:40 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 03/12] golang/xenlight: fix string conversion in generated toC functions
Date: Wed, 28 Apr 2021 20:14:25 -0400
Message-Id: <06763aceff41167d3d3bbd603f729572c1f55c77.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

In gengotypes.py, the toC functions only set C string fields when
the Go strings are non-empty. However, to prevent segfaults in some
cases, these fields should always at least be set to nil so that the C
memory is zeroed out.

Update gengotypes.py so that the generated code always sets these fields
to nil first, and then proceeds to check if the Go string is non-empty.
And, commit the new generated code.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/gengotypes.py  |   1 +
 tools/golang/xenlight/helpers.gen.go | 160 +++++++++++++++++++++++++++
 2 files changed, 161 insertions(+)

diff --git a/tools/golang/xenlight/gengotypes.py b/tools/golang/xenlight/gengotypes.py
index 3e40c3d5dc..e6daa9b92f 100644
--- a/tools/golang/xenlight/gengotypes.py
+++ b/tools/golang/xenlight/gengotypes.py
@@ -527,6 +527,7 @@ def xenlight_golang_convert_to_C(ty = None, outer_name = None,
 
     elif gotypename == 'string':
         # Use the cgo helper for converting C strings.
+        s += '{0}.{1} = nil\n'.format(cvarname, cname)
         s += 'if {0}.{1} != "" {{\n'.format(govarname,goname)
         s += '{0}.{1} = C.CString({2}.{3})}}\n'.format(cvarname,cname,
                                                    govarname,goname)
diff --git a/tools/golang/xenlight/helpers.gen.go b/tools/golang/xenlight/helpers.gen.go
index b454b12d52..5222898fb8 100644
--- a/tools/golang/xenlight/helpers.gen.go
+++ b/tools/golang/xenlight/helpers.gen.go
@@ -154,8 +154,10 @@ C.libxl_vnc_info_dispose(xc)}
 if err := x.Enable.toC(&xc.enable); err != nil {
 return fmt.Errorf("converting field Enable: %v", err)
 }
+xc.listen = nil
 if x.Listen != "" {
 xc.listen = C.CString(x.Listen)}
+xc.passwd = nil
 if x.Passwd != "" {
 xc.passwd = C.CString(x.Passwd)}
 xc.display = C.int(x.Display)
@@ -216,11 +218,13 @@ return fmt.Errorf("converting field Enable: %v", err)
 }
 xc.port = C.int(x.Port)
 xc.tls_port = C.int(x.TlsPort)
+xc.host = nil
 if x.Host != "" {
 xc.host = C.CString(x.Host)}
 if err := x.DisableTicketing.toC(&xc.disable_ticketing); err != nil {
 return fmt.Errorf("converting field DisableTicketing: %v", err)
 }
+xc.passwd = nil
 if x.Passwd != "" {
 xc.passwd = C.CString(x.Passwd)}
 if err := x.AgentMouse.toC(&xc.agent_mouse); err != nil {
@@ -233,8 +237,10 @@ if err := x.ClipboardSharing.toC(&xc.clipboard_sharing); err != nil {
 return fmt.Errorf("converting field ClipboardSharing: %v", err)
 }
 xc.usbredirection = C.int(x.Usbredirection)
+xc.image_compression = nil
 if x.ImageCompression != "" {
 xc.image_compression = C.CString(x.ImageCompression)}
+xc.streaming_video = nil
 if x.StreamingVideo != "" {
 xc.streaming_video = C.CString(x.StreamingVideo)}
 
@@ -278,8 +284,10 @@ return fmt.Errorf("converting field Enable: %v", err)
 if err := x.Opengl.toC(&xc.opengl); err != nil {
 return fmt.Errorf("converting field Opengl: %v", err)
 }
+xc.display = nil
 if x.Display != "" {
 xc.display = C.CString(x.Display)}
+xc.xauthority = nil
 if x.Xauthority != "" {
 xc.xauthority = C.CString(x.Xauthority)}
 
@@ -337,6 +345,7 @@ return fmt.Errorf("converting field Uuid: %v", err)
 }
 xc.domid = C.libxl_domid(x.Domid)
 xc.ssidref = C.uint32_t(x.Ssidref)
+xc.ssid_label = nil
 if x.SsidLabel != "" {
 xc.ssid_label = C.CString(x.SsidLabel)}
 xc.running = C.bool(x.Running)
@@ -391,6 +400,7 @@ C.libxl_cpupoolinfo_dispose(xc)}
 }()
 
 xc.poolid = C.uint32_t(x.Poolid)
+xc.pool_name = nil
 if x.PoolName != "" {
 xc.pool_name = C.CString(x.PoolName)}
 xc.sched = C.libxl_scheduler(x.Sched)
@@ -458,9 +468,11 @@ if err != nil{
 C.libxl_channelinfo_dispose(xc)}
 }()
 
+xc.backend = nil
 if x.Backend != "" {
 xc.backend = C.CString(x.Backend)}
 xc.backend_id = C.uint32_t(x.BackendId)
+xc.frontend = nil
 if x.Frontend != "" {
 xc.frontend = C.CString(x.Frontend)}
 xc.frontend_id = C.uint32_t(x.FrontendId)
@@ -478,6 +490,7 @@ if !ok {
 return errors.New("wrong type for union key connection")
 }
 var pty C.libxl_channelinfo_connection_union_pty
+pty.path = nil
 if tmp.Path != "" {
 pty.path = C.CString(tmp.Path)}
 ptyBytes := C.GoBytes(unsafe.Pointer(&pty),C.sizeof_libxl_channelinfo_connection_union_pty)
@@ -563,24 +576,33 @@ C.libxl_version_info_dispose(xc)}
 
 xc.xen_version_major = C.int(x.XenVersionMajor)
 xc.xen_version_minor = C.int(x.XenVersionMinor)
+xc.xen_version_extra = nil
 if x.XenVersionExtra != "" {
 xc.xen_version_extra = C.CString(x.XenVersionExtra)}
+xc.compiler = nil
 if x.Compiler != "" {
 xc.compiler = C.CString(x.Compiler)}
+xc.compile_by = nil
 if x.CompileBy != "" {
 xc.compile_by = C.CString(x.CompileBy)}
+xc.compile_domain = nil
 if x.CompileDomain != "" {
 xc.compile_domain = C.CString(x.CompileDomain)}
+xc.compile_date = nil
 if x.CompileDate != "" {
 xc.compile_date = C.CString(x.CompileDate)}
+xc.capabilities = nil
 if x.Capabilities != "" {
 xc.capabilities = C.CString(x.Capabilities)}
+xc.changeset = nil
 if x.Changeset != "" {
 xc.changeset = C.CString(x.Changeset)}
 xc.virt_start = C.uint64_t(x.VirtStart)
 xc.pagesize = C.int(x.Pagesize)
+xc.commandline = nil
 if x.Commandline != "" {
 xc.commandline = C.CString(x.Commandline)}
+xc.build_id = nil
 if x.BuildId != "" {
 xc.build_id = C.CString(x.BuildId)}
 
@@ -650,8 +672,10 @@ if err := x.Oos.toC(&xc.oos); err != nil {
 return fmt.Errorf("converting field Oos: %v", err)
 }
 xc.ssidref = C.uint32_t(x.Ssidref)
+xc.ssid_label = nil
 if x.SsidLabel != "" {
 xc.ssid_label = C.CString(x.SsidLabel)}
+xc.name = nil
 if x.Name != "" {
 xc.name = C.CString(x.Name)}
 xc.domid = C.libxl_domid(x.Domid)
@@ -665,6 +689,7 @@ if err := x.Platformdata.toC(&xc.platformdata); err != nil {
 return fmt.Errorf("converting field Platformdata: %v", err)
 }
 xc.poolid = C.uint32_t(x.Poolid)
+xc.pool_name = nil
 if x.PoolName != "" {
 xc.pool_name = C.CString(x.PoolName)}
 if err := x.RunHotplugScripts.toC(&xc.run_hotplug_scripts); err != nil {
@@ -712,6 +737,7 @@ C.libxl_domain_restore_params_dispose(xc)}
 
 xc.checkpointed_stream = C.int(x.CheckpointedStream)
 xc.stream_version = C.uint32_t(x.StreamVersion)
+xc.colo_proxy_script = nil
 if x.ColoProxyScript != "" {
 xc.colo_proxy_script = C.CString(x.ColoProxyScript)}
 if err := x.UserspaceColoProxy.toC(&xc.userspace_colo_proxy); err != nil {
@@ -1312,6 +1338,7 @@ xc.shadow_memkb = C.uint64_t(x.ShadowMemkb)
 xc.iommu_memkb = C.uint64_t(x.IommuMemkb)
 xc.rtc_timeoffset = C.uint32_t(x.RtcTimeoffset)
 xc.exec_ssidref = C.uint32_t(x.ExecSsidref)
+xc.exec_ssid_label = nil
 if x.ExecSsidLabel != "" {
 xc.exec_ssid_label = C.CString(x.ExecSsidLabel)}
 if err := x.Localtime.toC(&xc.localtime); err != nil {
@@ -1323,6 +1350,7 @@ return fmt.Errorf("converting field DisableMigrate: %v", err)
 if err := x.Cpuid.toC(&xc.cpuid); err != nil {
 return fmt.Errorf("converting field Cpuid: %v", err)
 }
+xc.blkdev_start = nil
 if x.BlkdevStart != "" {
 xc.blkdev_start = C.CString(x.BlkdevStart)}
 if numVnumaNodes := len(x.VnumaNodes); numVnumaNodes > 0 {
@@ -1342,15 +1370,20 @@ if err := x.DeviceModelStubdomain.toC(&xc.device_model_stubdomain); err != nil {
 return fmt.Errorf("converting field DeviceModelStubdomain: %v", err)
 }
 xc.stubdomain_memkb = C.uint64_t(x.StubdomainMemkb)
+xc.stubdomain_kernel = nil
 if x.StubdomainKernel != "" {
 xc.stubdomain_kernel = C.CString(x.StubdomainKernel)}
+xc.stubdomain_ramdisk = nil
 if x.StubdomainRamdisk != "" {
 xc.stubdomain_ramdisk = C.CString(x.StubdomainRamdisk)}
+xc.device_model = nil
 if x.DeviceModel != "" {
 xc.device_model = C.CString(x.DeviceModel)}
 xc.device_model_ssidref = C.uint32_t(x.DeviceModelSsidref)
+xc.device_model_ssid_label = nil
 if x.DeviceModelSsidLabel != "" {
 xc.device_model_ssid_label = C.CString(x.DeviceModelSsidLabel)}
+xc.device_model_user = nil
 if x.DeviceModelUser != "" {
 xc.device_model_user = C.CString(x.DeviceModelUser)}
 if err := x.Extra.toC(&xc.extra); err != nil {
@@ -1397,17 +1430,22 @@ if err := x.ClaimMode.toC(&xc.claim_mode); err != nil {
 return fmt.Errorf("converting field ClaimMode: %v", err)
 }
 xc.event_channels = C.uint32_t(x.EventChannels)
+xc.kernel = nil
 if x.Kernel != "" {
 xc.kernel = C.CString(x.Kernel)}
+xc.cmdline = nil
 if x.Cmdline != "" {
 xc.cmdline = C.CString(x.Cmdline)}
+xc.ramdisk = nil
 if x.Ramdisk != "" {
 xc.ramdisk = C.CString(x.Ramdisk)}
+xc.device_tree = nil
 if x.DeviceTree != "" {
 xc.device_tree = C.CString(x.DeviceTree)}
 if err := x.Acpi.toC(&xc.acpi); err != nil {
 return fmt.Errorf("converting field Acpi: %v", err)
 }
+xc.bootloader = nil
 if x.Bootloader != "" {
 xc.bootloader = C.CString(x.Bootloader)}
 if err := x.BootloaderArgs.toC(&xc.bootloader_args); err != nil {
@@ -1432,6 +1470,7 @@ if !ok {
 return errors.New("wrong type for union key type")
 }
 var hvm C.libxl_domain_build_info_type_union_hvm
+hvm.firmware = nil
 if tmp.Firmware != "" {
 hvm.firmware = C.CString(tmp.Firmware)}
 hvm.bios = C.libxl_bios_type(tmp.Bios)
@@ -1465,6 +1504,7 @@ return fmt.Errorf("converting field ViridianEnable: %v", err)
 if err := tmp.ViridianDisable.toC(&hvm.viridian_disable); err != nil {
 return fmt.Errorf("converting field ViridianDisable: %v", err)
 }
+hvm.timeoffset = nil
 if tmp.Timeoffset != "" {
 hvm.timeoffset = C.CString(tmp.Timeoffset)}
 if err := tmp.Hpet.toC(&hvm.hpet); err != nil {
@@ -1481,10 +1521,13 @@ return fmt.Errorf("converting field NestedHvm: %v", err)
 if err := tmp.Altp2M.toC(&hvm.altp2m); err != nil {
 return fmt.Errorf("converting field Altp2M: %v", err)
 }
+hvm.system_firmware = nil
 if tmp.SystemFirmware != "" {
 hvm.system_firmware = C.CString(tmp.SystemFirmware)}
+hvm.smbios_firmware = nil
 if tmp.SmbiosFirmware != "" {
 hvm.smbios_firmware = C.CString(tmp.SmbiosFirmware)}
+hvm.acpi_firmware = nil
 if tmp.AcpiFirmware != "" {
 hvm.acpi_firmware = C.CString(tmp.AcpiFirmware)}
 hvm.hdtype = C.libxl_hdtype(tmp.Hdtype)
@@ -1497,6 +1540,7 @@ return fmt.Errorf("converting field Vga: %v", err)
 if err := tmp.Vnc.toC(&hvm.vnc); err != nil {
 return fmt.Errorf("converting field Vnc: %v", err)
 }
+hvm.keymap = nil
 if tmp.Keymap != "" {
 hvm.keymap = C.CString(tmp.Keymap)}
 if err := tmp.Sdl.toC(&hvm.sdl); err != nil {
@@ -1509,19 +1553,23 @@ if err := tmp.GfxPassthru.toC(&hvm.gfx_passthru); err != nil {
 return fmt.Errorf("converting field GfxPassthru: %v", err)
 }
 hvm.gfx_passthru_kind = C.libxl_gfx_passthru_kind(tmp.GfxPassthruKind)
+hvm.serial = nil
 if tmp.Serial != "" {
 hvm.serial = C.CString(tmp.Serial)}
+hvm.boot = nil
 if tmp.Boot != "" {
 hvm.boot = C.CString(tmp.Boot)}
 if err := tmp.Usb.toC(&hvm.usb); err != nil {
 return fmt.Errorf("converting field Usb: %v", err)
 }
 hvm.usbversion = C.int(tmp.Usbversion)
+hvm.usbdevice = nil
 if tmp.Usbdevice != "" {
 hvm.usbdevice = C.CString(tmp.Usbdevice)}
 if err := tmp.VkbDevice.toC(&hvm.vkb_device); err != nil {
 return fmt.Errorf("converting field VkbDevice: %v", err)
 }
+hvm.soundhw = nil
 if tmp.Soundhw != "" {
 hvm.soundhw = C.CString(tmp.Soundhw)}
 if err := tmp.XenPlatformPci.toC(&hvm.xen_platform_pci); err != nil {
@@ -1550,18 +1598,23 @@ if !ok {
 return errors.New("wrong type for union key type")
 }
 var pv C.libxl_domain_build_info_type_union_pv
+pv.kernel = nil
 if tmp.Kernel != "" {
 pv.kernel = C.CString(tmp.Kernel)}
 pv.slack_memkb = C.uint64_t(tmp.SlackMemkb)
+pv.bootloader = nil
 if tmp.Bootloader != "" {
 pv.bootloader = C.CString(tmp.Bootloader)}
 if err := tmp.BootloaderArgs.toC(&pv.bootloader_args); err != nil {
 return fmt.Errorf("converting field BootloaderArgs: %v", err)
 }
+pv.cmdline = nil
 if tmp.Cmdline != "" {
 pv.cmdline = C.CString(tmp.Cmdline)}
+pv.ramdisk = nil
 if tmp.Ramdisk != "" {
 pv.ramdisk = C.CString(tmp.Ramdisk)}
+pv.features = nil
 if tmp.Features != "" {
 pv.features = C.CString(tmp.Features)}
 if err := tmp.E820Host.toC(&pv.e820_host); err != nil {
@@ -1578,10 +1631,13 @@ var pvh C.libxl_domain_build_info_type_union_pvh
 if err := tmp.Pvshim.toC(&pvh.pvshim); err != nil {
 return fmt.Errorf("converting field Pvshim: %v", err)
 }
+pvh.pvshim_path = nil
 if tmp.PvshimPath != "" {
 pvh.pvshim_path = C.CString(tmp.PvshimPath)}
+pvh.pvshim_cmdline = nil
 if tmp.PvshimCmdline != "" {
 pvh.pvshim_cmdline = C.CString(tmp.PvshimCmdline)}
+pvh.pvshim_extra = nil
 if tmp.PvshimExtra != "" {
 pvh.pvshim_extra = C.CString(tmp.PvshimExtra)}
 pvhBytes := C.GoBytes(unsafe.Pointer(&pvh),C.sizeof_libxl_domain_build_info_type_union_pvh)
@@ -1635,6 +1691,7 @@ C.libxl_device_vfb_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 xc.devid = C.libxl_devid(x.Devid)
@@ -1644,6 +1701,7 @@ return fmt.Errorf("converting field Vnc: %v", err)
 if err := x.Sdl.toC(&xc.sdl); err != nil {
 return fmt.Errorf("converting field Sdl: %v", err)
 }
+xc.keymap = nil
 if x.Keymap != "" {
 xc.keymap = C.CString(x.Keymap)}
 
@@ -1689,10 +1747,12 @@ C.libxl_device_vkb_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 xc.devid = C.libxl_devid(x.Devid)
 xc.backend_type = C.libxl_vkb_backend(x.BackendType)
+xc.unique_id = nil
 if x.UniqueId != "" {
 xc.unique_id = C.CString(x.UniqueId)}
 xc.feature_disable_keyboard = C.bool(x.FeatureDisableKeyboard)
@@ -1758,14 +1818,18 @@ C.libxl_device_disk_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
+xc.pdev_path = nil
 if x.PdevPath != "" {
 xc.pdev_path = C.CString(x.PdevPath)}
+xc.vdev = nil
 if x.Vdev != "" {
 xc.vdev = C.CString(x.Vdev)}
 xc.backend = C.libxl_disk_backend(x.Backend)
 xc.format = C.libxl_disk_format(x.Format)
+xc.script = nil
 if x.Script != "" {
 xc.script = C.CString(x.Script)}
 xc.removable = C.int(x.Removable)
@@ -1781,13 +1845,17 @@ return fmt.Errorf("converting field ColoEnable: %v", err)
 if err := x.ColoRestoreEnable.toC(&xc.colo_restore_enable); err != nil {
 return fmt.Errorf("converting field ColoRestoreEnable: %v", err)
 }
+xc.colo_host = nil
 if x.ColoHost != "" {
 xc.colo_host = C.CString(x.ColoHost)}
 xc.colo_port = C.int(x.ColoPort)
+xc.colo_export = nil
 if x.ColoExport != "" {
 xc.colo_export = C.CString(x.ColoExport)}
+xc.active_disk = nil
 if x.ActiveDisk != "" {
 xc.active_disk = C.CString(x.ActiveDisk)}
+xc.hidden_disk = nil
 if x.HiddenDisk != "" {
 xc.hidden_disk = C.CString(x.HiddenDisk)}
 
@@ -1883,124 +1951,180 @@ C.libxl_device_nic_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 xc.devid = C.libxl_devid(x.Devid)
 xc.mtu = C.int(x.Mtu)
+xc.model = nil
 if x.Model != "" {
 xc.model = C.CString(x.Model)}
 if err := x.Mac.toC(&xc.mac); err != nil {
 return fmt.Errorf("converting field Mac: %v", err)
 }
+xc.ip = nil
 if x.Ip != "" {
 xc.ip = C.CString(x.Ip)}
+xc.bridge = nil
 if x.Bridge != "" {
 xc.bridge = C.CString(x.Bridge)}
+xc.ifname = nil
 if x.Ifname != "" {
 xc.ifname = C.CString(x.Ifname)}
+xc.script = nil
 if x.Script != "" {
 xc.script = C.CString(x.Script)}
 xc.nictype = C.libxl_nic_type(x.Nictype)
 xc.rate_bytes_per_interval = C.uint64_t(x.RateBytesPerInterval)
 xc.rate_interval_usecs = C.uint32_t(x.RateIntervalUsecs)
+xc.gatewaydev = nil
 if x.Gatewaydev != "" {
 xc.gatewaydev = C.CString(x.Gatewaydev)}
+xc.coloft_forwarddev = nil
 if x.ColoftForwarddev != "" {
 xc.coloft_forwarddev = C.CString(x.ColoftForwarddev)}
+xc.colo_sock_mirror_id = nil
 if x.ColoSockMirrorId != "" {
 xc.colo_sock_mirror_id = C.CString(x.ColoSockMirrorId)}
+xc.colo_sock_mirror_ip = nil
 if x.ColoSockMirrorIp != "" {
 xc.colo_sock_mirror_ip = C.CString(x.ColoSockMirrorIp)}
+xc.colo_sock_mirror_port = nil
 if x.ColoSockMirrorPort != "" {
 xc.colo_sock_mirror_port = C.CString(x.ColoSockMirrorPort)}
+xc.colo_sock_compare_pri_in_id = nil
 if x.ColoSockComparePriInId != "" {
 xc.colo_sock_compare_pri_in_id = C.CString(x.ColoSockComparePriInId)}
+xc.colo_sock_compare_pri_in_ip = nil
 if x.ColoSockComparePriInIp != "" {
 xc.colo_sock_compare_pri_in_ip = C.CString(x.ColoSockComparePriInIp)}
+xc.colo_sock_compare_pri_in_port = nil
 if x.ColoSockComparePriInPort != "" {
 xc.colo_sock_compare_pri_in_port = C.CString(x.ColoSockComparePriInPort)}
+xc.colo_sock_compare_sec_in_id = nil
 if x.ColoSockCompareSecInId != "" {
 xc.colo_sock_compare_sec_in_id = C.CString(x.ColoSockCompareSecInId)}
+xc.colo_sock_compare_sec_in_ip = nil
 if x.ColoSockCompareSecInIp != "" {
 xc.colo_sock_compare_sec_in_ip = C.CString(x.ColoSockCompareSecInIp)}
+xc.colo_sock_compare_sec_in_port = nil
 if x.ColoSockCompareSecInPort != "" {
 xc.colo_sock_compare_sec_in_port = C.CString(x.ColoSockCompareSecInPort)}
+xc.colo_sock_compare_notify_id = nil
 if x.ColoSockCompareNotifyId != "" {
 xc.colo_sock_compare_notify_id = C.CString(x.ColoSockCompareNotifyId)}
+xc.colo_sock_compare_notify_ip = nil
 if x.ColoSockCompareNotifyIp != "" {
 xc.colo_sock_compare_notify_ip = C.CString(x.ColoSockCompareNotifyIp)}
+xc.colo_sock_compare_notify_port = nil
 if x.ColoSockCompareNotifyPort != "" {
 xc.colo_sock_compare_notify_port = C.CString(x.ColoSockCompareNotifyPort)}
+xc.colo_sock_redirector0_id = nil
 if x.ColoSockRedirector0Id != "" {
 xc.colo_sock_redirector0_id = C.CString(x.ColoSockRedirector0Id)}
+xc.colo_sock_redirector0_ip = nil
 if x.ColoSockRedirector0Ip != "" {
 xc.colo_sock_redirector0_ip = C.CString(x.ColoSockRedirector0Ip)}
+xc.colo_sock_redirector0_port = nil
 if x.ColoSockRedirector0Port != "" {
 xc.colo_sock_redirector0_port = C.CString(x.ColoSockRedirector0Port)}
+xc.colo_sock_redirector1_id = nil
 if x.ColoSockRedirector1Id != "" {
 xc.colo_sock_redirector1_id = C.CString(x.ColoSockRedirector1Id)}
+xc.colo_sock_redirector1_ip = nil
 if x.ColoSockRedirector1Ip != "" {
 xc.colo_sock_redirector1_ip = C.CString(x.ColoSockRedirector1Ip)}
+xc.colo_sock_redirector1_port = nil
 if x.ColoSockRedirector1Port != "" {
 xc.colo_sock_redirector1_port = C.CString(x.ColoSockRedirector1Port)}
+xc.colo_sock_redirector2_id = nil
 if x.ColoSockRedirector2Id != "" {
 xc.colo_sock_redirector2_id = C.CString(x.ColoSockRedirector2Id)}
+xc.colo_sock_redirector2_ip = nil
 if x.ColoSockRedirector2Ip != "" {
 xc.colo_sock_redirector2_ip = C.CString(x.ColoSockRedirector2Ip)}
+xc.colo_sock_redirector2_port = nil
 if x.ColoSockRedirector2Port != "" {
 xc.colo_sock_redirector2_port = C.CString(x.ColoSockRedirector2Port)}
+xc.colo_filter_mirror_queue = nil
 if x.ColoFilterMirrorQueue != "" {
 xc.colo_filter_mirror_queue = C.CString(x.ColoFilterMirrorQueue)}
+xc.colo_filter_mirror_outdev = nil
 if x.ColoFilterMirrorOutdev != "" {
 xc.colo_filter_mirror_outdev = C.CString(x.ColoFilterMirrorOutdev)}
+xc.colo_filter_redirector0_queue = nil
 if x.ColoFilterRedirector0Queue != "" {
 xc.colo_filter_redirector0_queue = C.CString(x.ColoFilterRedirector0Queue)}
+xc.colo_filter_redirector0_indev = nil
 if x.ColoFilterRedirector0Indev != "" {
 xc.colo_filter_redirector0_indev = C.CString(x.ColoFilterRedirector0Indev)}
+xc.colo_filter_redirector0_outdev = nil
 if x.ColoFilterRedirector0Outdev != "" {
 xc.colo_filter_redirector0_outdev = C.CString(x.ColoFilterRedirector0Outdev)}
+xc.colo_filter_redirector1_queue = nil
 if x.ColoFilterRedirector1Queue != "" {
 xc.colo_filter_redirector1_queue = C.CString(x.ColoFilterRedirector1Queue)}
+xc.colo_filter_redirector1_indev = nil
 if x.ColoFilterRedirector1Indev != "" {
 xc.colo_filter_redirector1_indev = C.CString(x.ColoFilterRedirector1Indev)}
+xc.colo_filter_redirector1_outdev = nil
 if x.ColoFilterRedirector1Outdev != "" {
 xc.colo_filter_redirector1_outdev = C.CString(x.ColoFilterRedirector1Outdev)}
+xc.colo_compare_pri_in = nil
 if x.ColoComparePriIn != "" {
 xc.colo_compare_pri_in = C.CString(x.ColoComparePriIn)}
+xc.colo_compare_sec_in = nil
 if x.ColoCompareSecIn != "" {
 xc.colo_compare_sec_in = C.CString(x.ColoCompareSecIn)}
+xc.colo_compare_out = nil
 if x.ColoCompareOut != "" {
 xc.colo_compare_out = C.CString(x.ColoCompareOut)}
+xc.colo_compare_notify_dev = nil
 if x.ColoCompareNotifyDev != "" {
 xc.colo_compare_notify_dev = C.CString(x.ColoCompareNotifyDev)}
+xc.colo_sock_sec_redirector0_id = nil
 if x.ColoSockSecRedirector0Id != "" {
 xc.colo_sock_sec_redirector0_id = C.CString(x.ColoSockSecRedirector0Id)}
+xc.colo_sock_sec_redirector0_ip = nil
 if x.ColoSockSecRedirector0Ip != "" {
 xc.colo_sock_sec_redirector0_ip = C.CString(x.ColoSockSecRedirector0Ip)}
+xc.colo_sock_sec_redirector0_port = nil
 if x.ColoSockSecRedirector0Port != "" {
 xc.colo_sock_sec_redirector0_port = C.CString(x.ColoSockSecRedirector0Port)}
+xc.colo_sock_sec_redirector1_id = nil
 if x.ColoSockSecRedirector1Id != "" {
 xc.colo_sock_sec_redirector1_id = C.CString(x.ColoSockSecRedirector1Id)}
+xc.colo_sock_sec_redirector1_ip = nil
 if x.ColoSockSecRedirector1Ip != "" {
 xc.colo_sock_sec_redirector1_ip = C.CString(x.ColoSockSecRedirector1Ip)}
+xc.colo_sock_sec_redirector1_port = nil
 if x.ColoSockSecRedirector1Port != "" {
 xc.colo_sock_sec_redirector1_port = C.CString(x.ColoSockSecRedirector1Port)}
+xc.colo_filter_sec_redirector0_queue = nil
 if x.ColoFilterSecRedirector0Queue != "" {
 xc.colo_filter_sec_redirector0_queue = C.CString(x.ColoFilterSecRedirector0Queue)}
+xc.colo_filter_sec_redirector0_indev = nil
 if x.ColoFilterSecRedirector0Indev != "" {
 xc.colo_filter_sec_redirector0_indev = C.CString(x.ColoFilterSecRedirector0Indev)}
+xc.colo_filter_sec_redirector0_outdev = nil
 if x.ColoFilterSecRedirector0Outdev != "" {
 xc.colo_filter_sec_redirector0_outdev = C.CString(x.ColoFilterSecRedirector0Outdev)}
+xc.colo_filter_sec_redirector1_queue = nil
 if x.ColoFilterSecRedirector1Queue != "" {
 xc.colo_filter_sec_redirector1_queue = C.CString(x.ColoFilterSecRedirector1Queue)}
+xc.colo_filter_sec_redirector1_indev = nil
 if x.ColoFilterSecRedirector1Indev != "" {
 xc.colo_filter_sec_redirector1_indev = C.CString(x.ColoFilterSecRedirector1Indev)}
+xc.colo_filter_sec_redirector1_outdev = nil
 if x.ColoFilterSecRedirector1Outdev != "" {
 xc.colo_filter_sec_redirector1_outdev = C.CString(x.ColoFilterSecRedirector1Outdev)}
+xc.colo_filter_sec_rewriter0_queue = nil
 if x.ColoFilterSecRewriter0Queue != "" {
 xc.colo_filter_sec_rewriter0_queue = C.CString(x.ColoFilterSecRewriter0Queue)}
+xc.colo_checkpoint_host = nil
 if x.ColoCheckpointHost != "" {
 xc.colo_checkpoint_host = C.CString(x.ColoCheckpointHost)}
+xc.colo_checkpoint_port = nil
 if x.ColoCheckpointPort != "" {
 xc.colo_checkpoint_port = C.CString(x.ColoCheckpointPort)}
 
@@ -2053,6 +2177,7 @@ xc.power_mgmt = C.bool(x.PowerMgmt)
 xc.permissive = C.bool(x.Permissive)
 xc.seize = C.bool(x.Seize)
 xc.rdm_policy = C.libxl_rdm_reserve_policy(x.RdmPolicy)
+xc.name = nil
 if x.Name != "" {
 xc.name = C.CString(x.Name)}
 
@@ -2126,6 +2251,7 @@ xc.devid = C.libxl_devid(x.Devid)
 xc.version = C.int(x.Version)
 xc.ports = C.int(x.Ports)
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 
@@ -2223,6 +2349,7 @@ if err != nil{
 C.libxl_device_dtdev_dispose(xc)}
 }()
 
+xc.path = nil
 if x.Path != "" {
 xc.path = C.CString(x.Path)}
 
@@ -2259,6 +2386,7 @@ C.libxl_device_vtpm_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 xc.devid = C.libxl_devid(x.Devid)
@@ -2299,12 +2427,16 @@ C.libxl_device_p9_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
+xc.tag = nil
 if x.Tag != "" {
 xc.tag = C.CString(x.Tag)}
+xc.path = nil
 if x.Path != "" {
 xc.path = C.CString(x.Path)}
+xc.security_model = nil
 if x.SecurityModel != "" {
 xc.security_model = C.CString(x.SecurityModel)}
 xc.devid = C.libxl_devid(x.Devid)
@@ -2339,6 +2471,7 @@ C.libxl_device_pvcallsif_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 xc.devid = C.libxl_devid(x.Devid)
@@ -2399,9 +2532,11 @@ C.libxl_device_channel_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 xc.devid = C.libxl_devid(x.Devid)
+xc.name = nil
 if x.Name != "" {
 xc.name = C.CString(x.Name)}
 xc.connection = C.libxl_channel_connection(x.Connection)
@@ -2416,6 +2551,7 @@ if !ok {
 return errors.New("wrong type for union key connection")
 }
 var socket C.libxl_device_channel_connection_union_socket
+socket.path = nil
 if tmp.Path != "" {
 socket.path = C.CString(tmp.Path)}
 socketBytes := C.GoBytes(unsafe.Pointer(&socket),C.sizeof_libxl_device_channel_connection_union_socket)
@@ -2452,6 +2588,7 @@ if err != nil{
 C.libxl_connector_param_dispose(xc)}
 }()
 
+xc.unique_id = nil
 if x.UniqueId != "" {
 xc.unique_id = C.CString(x.UniqueId)}
 xc.width = C.uint32_t(x.Width)
@@ -2497,6 +2634,7 @@ C.libxl_device_vdispl_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 xc.devid = C.libxl_devid(x.Devid)
@@ -2608,6 +2746,7 @@ if err != nil{
 C.libxl_vsnd_stream_dispose(xc)}
 }()
 
+xc.unique_id = nil
 if x.UniqueId != "" {
 xc.unique_id = C.CString(x.UniqueId)}
 xc._type = C.libxl_vsnd_stream_type(x.Type)
@@ -2654,6 +2793,7 @@ if err != nil{
 C.libxl_vsnd_pcm_dispose(xc)}
 }()
 
+xc.name = nil
 if x.Name != "" {
 xc.name = C.CString(x.Name)}
 if err := x.Params.toC(&xc.params); err != nil {
@@ -2714,11 +2854,14 @@ C.libxl_device_vsnd_dispose(xc)}
 }()
 
 xc.backend_domid = C.libxl_domid(x.BackendDomid)
+xc.backend_domname = nil
 if x.BackendDomname != "" {
 xc.backend_domname = C.CString(x.BackendDomname)}
 xc.devid = C.libxl_devid(x.Devid)
+xc.short_name = nil
 if x.ShortName != "" {
 xc.short_name = C.CString(x.ShortName)}
+xc.long_name = nil
 if x.LongName != "" {
 xc.long_name = C.CString(x.LongName)}
 if err := x.Params.toC(&xc.params); err != nil {
@@ -3103,9 +3246,11 @@ if err != nil{
 C.libxl_diskinfo_dispose(xc)}
 }()
 
+xc.backend = nil
 if x.Backend != "" {
 xc.backend = C.CString(x.Backend)}
 xc.backend_id = C.uint32_t(x.BackendId)
+xc.frontend = nil
 if x.Frontend != "" {
 xc.frontend = C.CString(x.Frontend)}
 xc.frontend_id = C.uint32_t(x.FrontendId)
@@ -3149,9 +3294,11 @@ if err != nil{
 C.libxl_nicinfo_dispose(xc)}
 }()
 
+xc.backend = nil
 if x.Backend != "" {
 xc.backend = C.CString(x.Backend)}
 xc.backend_id = C.uint32_t(x.BackendId)
+xc.frontend = nil
 if x.Frontend != "" {
 xc.frontend = C.CString(x.Frontend)}
 xc.frontend_id = C.uint32_t(x.FrontendId)
@@ -3198,9 +3345,11 @@ if err != nil{
 C.libxl_vtpminfo_dispose(xc)}
 }()
 
+xc.backend = nil
 if x.Backend != "" {
 xc.backend = C.CString(x.Backend)}
 xc.backend_id = C.uint32_t(x.BackendId)
+xc.frontend = nil
 if x.Frontend != "" {
 xc.frontend = C.CString(x.Frontend)}
 xc.frontend_id = C.uint32_t(x.FrontendId)
@@ -3254,9 +3403,11 @@ xc._type = C.libxl_usbctrl_type(x.Type)
 xc.devid = C.libxl_devid(x.Devid)
 xc.version = C.int(x.Version)
 xc.ports = C.int(x.Ports)
+xc.backend = nil
 if x.Backend != "" {
 xc.backend = C.CString(x.Backend)}
 xc.backend_id = C.uint32_t(x.BackendId)
+xc.frontend = nil
 if x.Frontend != "" {
 xc.frontend = C.CString(x.Frontend)}
 xc.frontend_id = C.uint32_t(x.FrontendId)
@@ -3422,6 +3573,7 @@ if err != nil{
 C.libxl_connectorinfo_dispose(xc)}
 }()
 
+xc.unique_id = nil
 if x.UniqueId != "" {
 xc.unique_id = C.CString(x.UniqueId)}
 xc.width = C.uint32_t(x.Width)
@@ -3473,9 +3625,11 @@ if err != nil{
 C.libxl_vdisplinfo_dispose(xc)}
 }()
 
+xc.backend = nil
 if x.Backend != "" {
 xc.backend = C.CString(x.Backend)}
 xc.backend_id = C.uint32_t(x.BackendId)
+xc.frontend = nil
 if x.Frontend != "" {
 xc.frontend = C.CString(x.Frontend)}
 xc.frontend_id = C.uint32_t(x.FrontendId)
@@ -3611,9 +3765,11 @@ if err != nil{
 C.libxl_vsndinfo_dispose(xc)}
 }()
 
+xc.backend = nil
 if x.Backend != "" {
 xc.backend = C.CString(x.Backend)}
 xc.backend_id = C.uint32_t(x.BackendId)
+xc.frontend = nil
 if x.Frontend != "" {
 xc.frontend = C.CString(x.Frontend)}
 xc.frontend_id = C.uint32_t(x.FrontendId)
@@ -3664,9 +3820,11 @@ if err != nil{
 C.libxl_vkbinfo_dispose(xc)}
 }()
 
+xc.backend = nil
 if x.Backend != "" {
 xc.backend = C.CString(x.Backend)}
 xc.backend_id = C.uint32_t(x.BackendId)
+xc.frontend = nil
 if x.Frontend != "" {
 xc.frontend = C.CString(x.Frontend)}
 xc.frontend_id = C.uint32_t(x.FrontendId)
@@ -3902,6 +4060,7 @@ return fmt.Errorf("converting field Compression: %v", err)
 if err := x.Netbuf.toC(&xc.netbuf); err != nil {
 return fmt.Errorf("converting field Netbuf: %v", err)
 }
+xc.netbufscript = nil
 if x.Netbufscript != "" {
 xc.netbufscript = C.CString(x.Netbufscript)}
 if err := x.Diskbuf.toC(&xc.diskbuf); err != nil {
@@ -4035,6 +4194,7 @@ if !ok {
 return errors.New("wrong type for union key type")
 }
 var disk_eject C.libxl_event_type_union_disk_eject
+disk_eject.vdev = nil
 if tmp.Vdev != "" {
 disk_eject.vdev = C.CString(tmp.Vdev)}
 if err := tmp.Disk.toC(&disk_eject.disk); err != nil {
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:15:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:15:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119622.226230 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKe-0007N5-Rb; Thu, 29 Apr 2021 00:15:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119622.226230; Thu, 29 Apr 2021 00: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 1lbuKe-0007Ms-Mb; Thu, 29 Apr 2021 00:15:04 +0000
Received: by outflank-mailman (input) for mailman id 119622;
 Thu, 29 Apr 2021 00:15:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKd-00072A-U8
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:15:03 +0000
Received: from mail-qk1-x733.google.com (unknown [2607:f8b0:4864:20::733])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e524f946-e987-4ffd-935f-e56f2d0521ca;
 Thu, 29 Apr 2021 00:14:43 +0000 (UTC)
Received: by mail-qk1-x733.google.com with SMTP id q136so44605561qka.7
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:43 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.41
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: e524f946-e987-4ffd-935f-e56f2d0521ca
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=gmgGK17wIRa1DlqHFSQ1z3Zv/54AdOc2b0ySCVRt0yU=;
        b=OKNJ37sxZCgorQWpDPLeSEJcBm6eJe3y/hN4NqQtbP7wif3VlS/ztMfU4dGIk//aqz
         htT7IKDGhQ583NfaDB43UTo75FfOKjbEDmDUI+2MDY/o36LjTKiTUNbDD1IosAnl9jJk
         yMSyJvw8Hp67O+KpoJ1V+8W/7V+qhrjsygpe3n2ab4pw4iAc4XbUq283x4ECQVykc6C0
         0RGY0fnnttdZhTDp9Tkjg725E/HMCJJNn8UqU2hBkZuJgDB24+Ab5SYPJ67Bg2qPf9kk
         keUigpG40+MdYs+tR+ipH1ZNFYpH9fZYF2iGA7zBUfmm3BowguzFmXbHMXtlBxddoEyG
         sYKQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=gmgGK17wIRa1DlqHFSQ1z3Zv/54AdOc2b0ySCVRt0yU=;
        b=UM680fMaCB4R1ZXIHZawt3yRqVTqCFyWoTxBt3JndYHtMAKboyh6uaAJ/wYn77ipyo
         iU84jQCEmYV1auBJ0B4vtRJOMgyf/CIemX/U7o+omCUKtX5j0myOHxNMUSKs7b8UPkHd
         oO0Z1BqhDtVR0OEpge1YphAsVoSvfVmVX8txgr1NTMnoG6x47pkmLEjZFRst5YneFqsT
         1XWDzZuEwMFd0V9uKfigqmukBC2w67GAaftU+lOsqjz7hGY7a6pR+qbJiVtK+aT0/Ynj
         KtFBBcMzc5ciTjxAja9Sc9tkbfOSQkWsgp8S6mPlWsOYY8VOO9Yk9KE5iDeOQs7U432Z
         Nfnw==
X-Gm-Message-State: AOAM533syWJG0CgxXYnYgSJHYgzndRavzzcfhyV/l/sV+bct7BtVVM+w
	dA8MvxHLnMjcQdr4ooI08SlKbrZitk4=
X-Google-Smtp-Source: ABdhPJwJCDwbqS4/N2++moiTvGiiZFQkUvJeGhOuRY3EcwdojMxZhZuIoPVa0twtVUM0W8GZgVzdIg==
X-Received: by 2002:a05:620a:1025:: with SMTP id a5mr2345999qkk.395.1619655282448;
        Wed, 28 Apr 2021 17:14:42 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 05/12] golang/xenlight: use struct pointers in keyed union fields
Date: Wed, 28 Apr 2021 20:14:27 -0400
Message-Id: <ebeb085b9b4b5d3dddd66607b409590f5e7cdfc6.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

Currently, when marshalig Go types with keyed union fields, we assign the
value of the struct (e.g. DomainBuildInfoTypeUnionHvm) which implements the
interface of the keyed union field (e.g. DomainBuildInfoTypeUnion).
As-is, this means that if a populated DomainBuildInfo is marshaled to
e.g. JSON, unmarshaling back to DomainBuildInfo will fail.

When the encoding/json is unmarshaling data into a Go type, and
encounters a JSON object, it basically can either marshal the data into
an empty interface, a map, or a struct. It cannot, however, marshal data
into an interface with at least one method defined on it (e.g.
DomainBuildInfoTypeUnion). Before this check is done, however, the
decoder will check if the Go type is a pointer, and dereference it if
so. It will then use the type of this value as the "target" type.

This means that if the TypeUnion field is populated with a
DomainBuildInfoTypeUnion, the decoder will see a non-empty interface and
fail. If the TypeUnion field is populated with a
*DomainBuildInfoTypeUnionHvm, it dereferences the pointer and sees a
struct instead, allowing decoding to continue normally.

Since there does not appear to be a strict need for NOT using pointers
in these fields, update code generation to set keyed union fields to
pointers of their implementing structs.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/gengotypes.py  |  4 +--
 tools/golang/xenlight/helpers.gen.go | 44 ++++++++++++++--------------
 2 files changed, 24 insertions(+), 24 deletions(-)

diff --git a/tools/golang/xenlight/gengotypes.py b/tools/golang/xenlight/gengotypes.py
index 3796632f7d..57f2576468 100644
--- a/tools/golang/xenlight/gengotypes.py
+++ b/tools/golang/xenlight/gengotypes.py
@@ -404,7 +404,7 @@ def xenlight_golang_union_from_C(ty = None, union_name = '', struct_name = ''):
         s += 'if err := {0}.fromC(xc);'.format(goname)
         s += 'err != nil {{\n return fmt.Errorf("converting field {0}: %v", err)\n}}\n'.format(goname)
 
-        s += 'x.{0} = {1}\n'.format(field_name, goname)
+        s += 'x.{0} = &{1}\n'.format(field_name, goname)
 
     # End switch statement
     s += 'default:\n'
@@ -571,7 +571,7 @@ def xenlight_golang_union_to_C(ty = None, union_name = '',
         gotype  = xenlight_golang_fmt_name(cgotype)
 
         field_name = xenlight_golang_fmt_name('{0}_union'.format(keyname))
-        s += 'tmp, ok := x.{0}.({1})\n'.format(field_name,gotype)
+        s += 'tmp, ok := x.{0}.(*{1})\n'.format(field_name,gotype)
         s += 'if !ok {\n'
         s += 'return errors.New("wrong type for union key {0}")\n'.format(keyname)
         s += '}\n'
diff --git a/tools/golang/xenlight/helpers.gen.go b/tools/golang/xenlight/helpers.gen.go
index 5222898fb8..8fc5ec1649 100644
--- a/tools/golang/xenlight/helpers.gen.go
+++ b/tools/golang/xenlight/helpers.gen.go
@@ -443,7 +443,7 @@ var connectionPty ChannelinfoConnectionUnionPty
 if err := connectionPty.fromC(xc);err != nil {
  return fmt.Errorf("converting field connectionPty: %v", err)
 }
-x.ConnectionUnion = connectionPty
+x.ConnectionUnion = &connectionPty
 case ChannelConnectionSocket:
 x.ConnectionUnion = nil
 case ChannelConnectionUnknown:
@@ -485,7 +485,7 @@ switch x.Connection{
 case ChannelConnectionUnknown:
 break
 case ChannelConnectionPty:
-tmp, ok := x.ConnectionUnion.(ChannelinfoConnectionUnionPty)
+tmp, ok := x.ConnectionUnion.(*ChannelinfoConnectionUnionPty)
 if !ok {
 return errors.New("wrong type for union key connection")
 }
@@ -1120,7 +1120,7 @@ var typeHvm DomainBuildInfoTypeUnionHvm
 if err := typeHvm.fromC(xc);err != nil {
  return fmt.Errorf("converting field typeHvm: %v", err)
 }
-x.TypeUnion = typeHvm
+x.TypeUnion = &typeHvm
 case DomainTypeInvalid:
 x.TypeUnion = nil
 case DomainTypePv:
@@ -1128,13 +1128,13 @@ var typePv DomainBuildInfoTypeUnionPv
 if err := typePv.fromC(xc);err != nil {
  return fmt.Errorf("converting field typePv: %v", err)
 }
-x.TypeUnion = typePv
+x.TypeUnion = &typePv
 case DomainTypePvh:
 var typePvh DomainBuildInfoTypeUnionPvh
 if err := typePvh.fromC(xc);err != nil {
  return fmt.Errorf("converting field typePvh: %v", err)
 }
-x.TypeUnion = typePvh
+x.TypeUnion = &typePvh
 default:
 return fmt.Errorf("invalid union key '%v'", x.Type)}
 x.ArchArm.GicVersion = GicVersion(xc.arch_arm.gic_version)
@@ -1465,7 +1465,7 @@ xc.tee = C.libxl_tee_type(x.Tee)
 xc._type = C.libxl_domain_type(x.Type)
 switch x.Type{
 case DomainTypeHvm:
-tmp, ok := x.TypeUnion.(DomainBuildInfoTypeUnionHvm)
+tmp, ok := x.TypeUnion.(*DomainBuildInfoTypeUnionHvm)
 if !ok {
 return errors.New("wrong type for union key type")
 }
@@ -1593,7 +1593,7 @@ hvm.mca_caps = C.uint64_t(tmp.McaCaps)
 hvmBytes := C.GoBytes(unsafe.Pointer(&hvm),C.sizeof_libxl_domain_build_info_type_union_hvm)
 copy(xc.u[:],hvmBytes)
 case DomainTypePv:
-tmp, ok := x.TypeUnion.(DomainBuildInfoTypeUnionPv)
+tmp, ok := x.TypeUnion.(*DomainBuildInfoTypeUnionPv)
 if !ok {
 return errors.New("wrong type for union key type")
 }
@@ -1623,7 +1623,7 @@ return fmt.Errorf("converting field E820Host: %v", err)
 pvBytes := C.GoBytes(unsafe.Pointer(&pv),C.sizeof_libxl_domain_build_info_type_union_pv)
 copy(xc.u[:],pvBytes)
 case DomainTypePvh:
-tmp, ok := x.TypeUnion.(DomainBuildInfoTypeUnionPvh)
+tmp, ok := x.TypeUnion.(*DomainBuildInfoTypeUnionPvh)
 if !ok {
 return errors.New("wrong type for union key type")
 }
@@ -2283,7 +2283,7 @@ var typeHostdev DeviceUsbdevTypeUnionHostdev
 if err := typeHostdev.fromC(xc);err != nil {
  return fmt.Errorf("converting field typeHostdev: %v", err)
 }
-x.TypeUnion = typeHostdev
+x.TypeUnion = &typeHostdev
 default:
 return fmt.Errorf("invalid union key '%v'", x.Type)}
 
@@ -2310,7 +2310,7 @@ xc.port = C.int(x.Port)
 xc._type = C.libxl_usbdev_type(x.Type)
 switch x.Type{
 case UsbdevTypeHostdev:
-tmp, ok := x.TypeUnion.(DeviceUsbdevTypeUnionHostdev)
+tmp, ok := x.TypeUnion.(*DeviceUsbdevTypeUnionHostdev)
 if !ok {
 return errors.New("wrong type for union key type")
 }
@@ -2508,7 +2508,7 @@ var connectionSocket DeviceChannelConnectionUnionSocket
 if err := connectionSocket.fromC(xc);err != nil {
  return fmt.Errorf("converting field connectionSocket: %v", err)
 }
-x.ConnectionUnion = connectionSocket
+x.ConnectionUnion = &connectionSocket
 case ChannelConnectionUnknown:
 x.ConnectionUnion = nil
 default:
@@ -2546,7 +2546,7 @@ break
 case ChannelConnectionPty:
 break
 case ChannelConnectionSocket:
-tmp, ok := x.ConnectionUnion.(DeviceChannelConnectionUnionSocket)
+tmp, ok := x.ConnectionUnion.(*DeviceChannelConnectionUnionSocket)
 if !ok {
 return errors.New("wrong type for union key connection")
 }
@@ -4107,7 +4107,7 @@ var typeDiskEject EventTypeUnionDiskEject
 if err := typeDiskEject.fromC(xc);err != nil {
  return fmt.Errorf("converting field typeDiskEject: %v", err)
 }
-x.TypeUnion = typeDiskEject
+x.TypeUnion = &typeDiskEject
 case EventTypeDomainCreateConsoleAvailable:
 x.TypeUnion = nil
 case EventTypeDomainDeath:
@@ -4117,13 +4117,13 @@ var typeDomainShutdown EventTypeUnionDomainShutdown
 if err := typeDomainShutdown.fromC(xc);err != nil {
  return fmt.Errorf("converting field typeDomainShutdown: %v", err)
 }
-x.TypeUnion = typeDomainShutdown
+x.TypeUnion = &typeDomainShutdown
 case EventTypeOperationComplete:
 var typeOperationComplete EventTypeUnionOperationComplete
 if err := typeOperationComplete.fromC(xc);err != nil {
  return fmt.Errorf("converting field typeOperationComplete: %v", err)
 }
-x.TypeUnion = typeOperationComplete
+x.TypeUnion = &typeOperationComplete
 default:
 return fmt.Errorf("invalid union key '%v'", x.Type)}
 
@@ -4178,7 +4178,7 @@ xc.for_user = C.uint64_t(x.ForUser)
 xc._type = C.libxl_event_type(x.Type)
 switch x.Type{
 case EventTypeDomainShutdown:
-tmp, ok := x.TypeUnion.(EventTypeUnionDomainShutdown)
+tmp, ok := x.TypeUnion.(*EventTypeUnionDomainShutdown)
 if !ok {
 return errors.New("wrong type for union key type")
 }
@@ -4189,7 +4189,7 @@ copy(xc.u[:],domain_shutdownBytes)
 case EventTypeDomainDeath:
 break
 case EventTypeDiskEject:
-tmp, ok := x.TypeUnion.(EventTypeUnionDiskEject)
+tmp, ok := x.TypeUnion.(*EventTypeUnionDiskEject)
 if !ok {
 return errors.New("wrong type for union key type")
 }
@@ -4203,7 +4203,7 @@ return fmt.Errorf("converting field Disk: %v", err)
 disk_ejectBytes := C.GoBytes(unsafe.Pointer(&disk_eject),C.sizeof_libxl_event_type_union_disk_eject)
 copy(xc.u[:],disk_ejectBytes)
 case EventTypeOperationComplete:
-tmp, ok := x.TypeUnion.(EventTypeUnionOperationComplete)
+tmp, ok := x.TypeUnion.(*EventTypeUnionOperationComplete)
 if !ok {
 return errors.New("wrong type for union key type")
 }
@@ -4278,13 +4278,13 @@ var typeCat PsrHwInfoTypeUnionCat
 if err := typeCat.fromC(xc);err != nil {
  return fmt.Errorf("converting field typeCat: %v", err)
 }
-x.TypeUnion = typeCat
+x.TypeUnion = &typeCat
 case PsrFeatTypeMba:
 var typeMba PsrHwInfoTypeUnionMba
 if err := typeMba.fromC(xc);err != nil {
  return fmt.Errorf("converting field typeMba: %v", err)
 }
-x.TypeUnion = typeMba
+x.TypeUnion = &typeMba
 default:
 return fmt.Errorf("invalid union key '%v'", x.Type)}
 
@@ -4323,7 +4323,7 @@ xc.id = C.uint32_t(x.Id)
 xc._type = C.libxl_psr_feat_type(x.Type)
 switch x.Type{
 case PsrFeatTypeCat:
-tmp, ok := x.TypeUnion.(PsrHwInfoTypeUnionCat)
+tmp, ok := x.TypeUnion.(*PsrHwInfoTypeUnionCat)
 if !ok {
 return errors.New("wrong type for union key type")
 }
@@ -4334,7 +4334,7 @@ cat.cdp_enabled = C.bool(tmp.CdpEnabled)
 catBytes := C.GoBytes(unsafe.Pointer(&cat),C.sizeof_libxl_psr_hw_info_type_union_cat)
 copy(xc.u[:],catBytes)
 case PsrFeatTypeMba:
-tmp, ok := x.TypeUnion.(PsrHwInfoTypeUnionMba)
+tmp, ok := x.TypeUnion.(*PsrHwInfoTypeUnionMba)
 if !ok {
 return errors.New("wrong type for union key type")
 }
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:15:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:15:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119626.226242 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKk-0007Sz-7U; Thu, 29 Apr 2021 00:15:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119626.226242; Thu, 29 Apr 2021 00: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 1lbuKk-0007So-1a; Thu, 29 Apr 2021 00:15:10 +0000
Received: by outflank-mailman (input) for mailman id 119626;
 Thu, 29 Apr 2021 00:15:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKi-00072A-US
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:15:09 +0000
Received: from mail-qk1-x72e.google.com (unknown [2607:f8b0:4864:20::72e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e05fc5d8-357b-4cd6-bced-e529ee992f98;
 Thu, 29 Apr 2021 00:14:44 +0000 (UTC)
Received: by mail-qk1-x72e.google.com with SMTP id u20so33409358qku.10
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:44 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.42
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: e05fc5d8-357b-4cd6-bced-e529ee992f98
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=x72Z2VWLOz6ahDBGysPBZw8qVE2KpRZgT2UaiLPYGoc=;
        b=AclHR21OF7DBtUfPmwFG5nF2yNdL/m8bAG9xxI9OZm5LV56D7PahB9o+EkUh+lJ1dS
         Aepx4S5e57N8dbC5L8oBIXDcDH7I7pLAq6nqXm7obVCofihKVHkjUYqgmor5unlU1Ti8
         OPMQCNycctNYCK+q7jfWhFDRqiR6LxRg2c1+xx6IFa+63K9CsiIP2QH7y0Whr+j6u0By
         IT1bd8yGp5tACKa3cKLER/8+TYRJXopkR0qxicA7utA07w2Erm/plZ3/zR1zgBjGGpa2
         0Vrh/8iXCRlDzG78wmeRC3ERblsDaqA36st1yjLYrsgsq4kla8zxm5F9+a7bLyrUaJVs
         Z01A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=x72Z2VWLOz6ahDBGysPBZw8qVE2KpRZgT2UaiLPYGoc=;
        b=b7AU9+PBFLgRRdQwEVdp6xdEfOsCdAtsgeoNKSauODlpJPpeCOLIi7ieM1b4+2UAsb
         Zdc37MlzbshfSy5ci4kWmXvNhc/aR89vZaGG25XECR0biXHVU27XWG2/duPEBWVvlhQH
         wC/vLmX6WPI9ZDRogTt1oqumJdr1OuCr/8Dxt+xvwCOOUsaUrV796Js6mgUNx68oek7I
         rNl+p2Qj0WboOUB/CzHB2j+O1X27gwbHE7CiAwgRoLiMU6s7H5V24HTfyDxK4buUYOEh
         KHLho/HjCx1u9FW90hCOglLnrs4L7uKMi5sVARx6yWedgRjdW793+P+qcMLDZnlQ7obr
         F/pw==
X-Gm-Message-State: AOAM531ufoFzyaLSTpBI8r7tW8BuPGzCI1rj6Gr5Y/DflErrcpbFkTUW
	WvVawldMrCt4uf57kCQUCLuj5NMCF2k=
X-Google-Smtp-Source: ABdhPJy6vRIJABOYIaT301DzlBZh8O3C4qFp+PzNGYvMjdaXD6KQhdnIOr4sqM+HtXvw6LKkum4cnA==
X-Received: by 2002:ae9:f50b:: with SMTP id o11mr20255434qkg.19.1619655283507;
        Wed, 28 Apr 2021 17:14:43 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 06/12] golang/xenlight: rename Ctx receivers to ctx
Date: Wed, 28 Apr 2021 20:14:28 -0400
Message-Id: <c1f7b48068d3855f48f818d93ddd23638a0f9f70.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

As a matter of style, it is strange to see capitalized receiver names,
due to the significance of capitalized symbols in Go (although there is
in fact nothing special about a capitalized receiver name). Fix this in
xenlight.go by running:

  gofmt -w -r 'Ctx -> ctx' xenlight.go

from tools/golang/xenlight. There is no functional change.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/xenlight.go | 154 +++++++++++++++---------------
 1 file changed, 77 insertions(+), 77 deletions(-)

diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
index 13171d0ad1..fc3eb0bf3f 100644
--- a/tools/golang/xenlight/xenlight.go
+++ b/tools/golang/xenlight/xenlight.go
@@ -203,13 +203,13 @@ type Domid uint32
 // NameToDomid does not guarantee that the domid associated with name at
 // the time NameToDomid is called is the same as the domid associated with
 // name at the time NameToDomid returns.
-func (Ctx *Context) NameToDomid(name string) (Domid, error) {
+func (ctx *Context) NameToDomid(name string) (Domid, error) {
 	var domid C.uint32_t
 
 	cname := C.CString(name)
 	defer C.free(unsafe.Pointer(cname))
 
-	if ret := C.libxl_name_to_domid(Ctx.ctx, cname, &domid); ret != 0 {
+	if ret := C.libxl_name_to_domid(ctx.ctx, cname, &domid); ret != 0 {
 		return DomidInvalid, Error(ret)
 	}
 
@@ -223,8 +223,8 @@ func (Ctx *Context) NameToDomid(name string) (Domid, error) {
 // DomidToName does not guarantee that the name (if any) associated with domid
 // at the time DomidToName is called is the same as the name (if any) associated
 // with domid at the time DomidToName returns.
-func (Ctx *Context) DomidToName(domid Domid) string {
-	cname := C.libxl_domid_to_name(Ctx.ctx, C.uint32_t(domid))
+func (ctx *Context) DomidToName(domid Domid) string {
+	cname := C.libxl_domid_to_name(ctx.ctx, C.uint32_t(domid))
 	defer C.free(unsafe.Pointer(cname))
 
 	return C.GoString(cname)
@@ -594,10 +594,10 @@ func SchedulerFromString(name string) (s Scheduler, err error) {
 
 // libxl_cpupoolinfo * libxl_list_cpupool(libxl_ctx*, int *nb_pool_out);
 // void libxl_cpupoolinfo_list_free(libxl_cpupoolinfo *list, int nb_pool);
-func (Ctx *Context) ListCpupool() (list []Cpupoolinfo) {
+func (ctx *Context) ListCpupool() (list []Cpupoolinfo) {
 	var nbPool C.int
 
-	c_cpupool_list := C.libxl_list_cpupool(Ctx.ctx, &nbPool)
+	c_cpupool_list := C.libxl_list_cpupool(ctx.ctx, &nbPool)
 
 	defer C.libxl_cpupoolinfo_list_free(c_cpupool_list, nbPool)
 
@@ -617,10 +617,10 @@ func (Ctx *Context) ListCpupool() (list []Cpupoolinfo) {
 }
 
 // int libxl_cpupool_info(libxl_ctx *ctx, libxl_cpupoolinfo *info, uint32_t poolid);
-func (Ctx *Context) CpupoolInfo(Poolid uint32) (pool Cpupoolinfo, err error) {
+func (ctx *Context) CpupoolInfo(Poolid uint32) (pool Cpupoolinfo, err error) {
 	var c_cpupool C.libxl_cpupoolinfo
 
-	ret := C.libxl_cpupool_info(Ctx.ctx, &c_cpupool, C.uint32_t(Poolid))
+	ret := C.libxl_cpupool_info(ctx.ctx, &c_cpupool, C.uint32_t(Poolid))
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -638,7 +638,7 @@ func (Ctx *Context) CpupoolInfo(Poolid uint32) (pool Cpupoolinfo, err error) {
 //                          uint32_t *poolid);
 // FIXME: uuid
 // FIXME: Setting poolid
-func (Ctx *Context) CpupoolCreate(Name string, Scheduler Scheduler, Cpumap Bitmap) (err error, Poolid uint32) {
+func (ctx *Context) CpupoolCreate(Name string, Scheduler Scheduler, Cpumap Bitmap) (err error, Poolid uint32) {
 	poolid := C.uint32_t(C.LIBXL_CPUPOOL_POOLID_ANY)
 	name := C.CString(Name)
 	defer C.free(unsafe.Pointer(name))
@@ -653,7 +653,7 @@ func (Ctx *Context) CpupoolCreate(Name string, Scheduler Scheduler, Cpumap Bitma
 	}
 	defer C.libxl_bitmap_dispose(&cbm)
 
-	ret := C.libxl_cpupool_create(Ctx.ctx, name, C.libxl_scheduler(Scheduler),
+	ret := C.libxl_cpupool_create(ctx.ctx, name, C.libxl_scheduler(Scheduler),
 		cbm, &uuid, &poolid)
 	if ret != 0 {
 		err = Error(-ret)
@@ -666,8 +666,8 @@ func (Ctx *Context) CpupoolCreate(Name string, Scheduler Scheduler, Cpumap Bitma
 }
 
 // int libxl_cpupool_destroy(libxl_ctx *ctx, uint32_t poolid);
-func (Ctx *Context) CpupoolDestroy(Poolid uint32) (err error) {
-	ret := C.libxl_cpupool_destroy(Ctx.ctx, C.uint32_t(Poolid))
+func (ctx *Context) CpupoolDestroy(Poolid uint32) (err error) {
+	ret := C.libxl_cpupool_destroy(ctx.ctx, C.uint32_t(Poolid))
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -677,8 +677,8 @@ func (Ctx *Context) CpupoolDestroy(Poolid uint32) (err error) {
 }
 
 // int libxl_cpupool_cpuadd(libxl_ctx *ctx, uint32_t poolid, int cpu);
-func (Ctx *Context) CpupoolCpuadd(Poolid uint32, Cpu int) (err error) {
-	ret := C.libxl_cpupool_cpuadd(Ctx.ctx, C.uint32_t(Poolid), C.int(Cpu))
+func (ctx *Context) CpupoolCpuadd(Poolid uint32, Cpu int) (err error) {
+	ret := C.libxl_cpupool_cpuadd(ctx.ctx, C.uint32_t(Poolid), C.int(Cpu))
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -689,14 +689,14 @@ func (Ctx *Context) CpupoolCpuadd(Poolid uint32, Cpu int) (err error) {
 
 // int libxl_cpupool_cpuadd_cpumap(libxl_ctx *ctx, uint32_t poolid,
 //                                 const libxl_bitmap *cpumap);
-func (Ctx *Context) CpupoolCpuaddCpumap(Poolid uint32, Cpumap Bitmap) (err error) {
+func (ctx *Context) CpupoolCpuaddCpumap(Poolid uint32, Cpumap Bitmap) (err error) {
 	var cbm C.libxl_bitmap
 	if err = Cpumap.toC(&cbm); err != nil {
 		return
 	}
 	defer C.libxl_bitmap_dispose(&cbm)
 
-	ret := C.libxl_cpupool_cpuadd_cpumap(Ctx.ctx, C.uint32_t(Poolid), &cbm)
+	ret := C.libxl_cpupool_cpuadd_cpumap(ctx.ctx, C.uint32_t(Poolid), &cbm)
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -706,8 +706,8 @@ func (Ctx *Context) CpupoolCpuaddCpumap(Poolid uint32, Cpumap Bitmap) (err error
 }
 
 // int libxl_cpupool_cpuremove(libxl_ctx *ctx, uint32_t poolid, int cpu);
-func (Ctx *Context) CpupoolCpuremove(Poolid uint32, Cpu int) (err error) {
-	ret := C.libxl_cpupool_cpuremove(Ctx.ctx, C.uint32_t(Poolid), C.int(Cpu))
+func (ctx *Context) CpupoolCpuremove(Poolid uint32, Cpu int) (err error) {
+	ret := C.libxl_cpupool_cpuremove(ctx.ctx, C.uint32_t(Poolid), C.int(Cpu))
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -718,14 +718,14 @@ func (Ctx *Context) CpupoolCpuremove(Poolid uint32, Cpu int) (err error) {
 
 // int libxl_cpupool_cpuremove_cpumap(libxl_ctx *ctx, uint32_t poolid,
 //                                    const libxl_bitmap *cpumap);
-func (Ctx *Context) CpupoolCpuremoveCpumap(Poolid uint32, Cpumap Bitmap) (err error) {
+func (ctx *Context) CpupoolCpuremoveCpumap(Poolid uint32, Cpumap Bitmap) (err error) {
 	var cbm C.libxl_bitmap
 	if err = Cpumap.toC(&cbm); err != nil {
 		return
 	}
 	defer C.libxl_bitmap_dispose(&cbm)
 
-	ret := C.libxl_cpupool_cpuremove_cpumap(Ctx.ctx, C.uint32_t(Poolid), &cbm)
+	ret := C.libxl_cpupool_cpuremove_cpumap(ctx.ctx, C.uint32_t(Poolid), &cbm)
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -735,11 +735,11 @@ func (Ctx *Context) CpupoolCpuremoveCpumap(Poolid uint32, Cpumap Bitmap) (err er
 }
 
 // int libxl_cpupool_rename(libxl_ctx *ctx, const char *name, uint32_t poolid);
-func (Ctx *Context) CpupoolRename(Name string, Poolid uint32) (err error) {
+func (ctx *Context) CpupoolRename(Name string, Poolid uint32) (err error) {
 	name := C.CString(Name)
 	defer C.free(unsafe.Pointer(name))
 
-	ret := C.libxl_cpupool_rename(Ctx.ctx, name, C.uint32_t(Poolid))
+	ret := C.libxl_cpupool_rename(ctx.ctx, name, C.uint32_t(Poolid))
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -749,10 +749,10 @@ func (Ctx *Context) CpupoolRename(Name string, Poolid uint32) (err error) {
 }
 
 // int libxl_cpupool_cpuadd_node(libxl_ctx *ctx, uint32_t poolid, int node, int *cpus);
-func (Ctx *Context) CpupoolCpuaddNode(Poolid uint32, Node int) (Cpus int, err error) {
+func (ctx *Context) CpupoolCpuaddNode(Poolid uint32, Node int) (Cpus int, err error) {
 	ccpus := C.int(0)
 
-	ret := C.libxl_cpupool_cpuadd_node(Ctx.ctx, C.uint32_t(Poolid), C.int(Node), &ccpus)
+	ret := C.libxl_cpupool_cpuadd_node(ctx.ctx, C.uint32_t(Poolid), C.int(Node), &ccpus)
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -764,10 +764,10 @@ func (Ctx *Context) CpupoolCpuaddNode(Poolid uint32, Node int) (Cpus int, err er
 }
 
 // int libxl_cpupool_cpuremove_node(libxl_ctx *ctx, uint32_t poolid, int node, int *cpus);
-func (Ctx *Context) CpupoolCpuremoveNode(Poolid uint32, Node int) (Cpus int, err error) {
+func (ctx *Context) CpupoolCpuremoveNode(Poolid uint32, Node int) (Cpus int, err error) {
 	ccpus := C.int(0)
 
-	ret := C.libxl_cpupool_cpuremove_node(Ctx.ctx, C.uint32_t(Poolid), C.int(Node), &ccpus)
+	ret := C.libxl_cpupool_cpuremove_node(ctx.ctx, C.uint32_t(Poolid), C.int(Node), &ccpus)
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -779,8 +779,8 @@ func (Ctx *Context) CpupoolCpuremoveNode(Poolid uint32, Node int) (Cpus int, err
 }
 
 // int libxl_cpupool_movedomain(libxl_ctx *ctx, uint32_t poolid, uint32_t domid);
-func (Ctx *Context) CpupoolMovedomain(Poolid uint32, Id Domid) (err error) {
-	ret := C.libxl_cpupool_movedomain(Ctx.ctx, C.uint32_t(Poolid), C.uint32_t(Id))
+func (ctx *Context) CpupoolMovedomain(Poolid uint32, Id Domid) (err error) {
+	ret := C.libxl_cpupool_movedomain(ctx.ctx, C.uint32_t(Poolid), C.uint32_t(Id))
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -792,8 +792,8 @@ func (Ctx *Context) CpupoolMovedomain(Poolid uint32, Id Domid) (err error) {
 //
 // Utility functions
 //
-func (Ctx *Context) CpupoolFindByName(name string) (info Cpupoolinfo, found bool) {
-	plist := Ctx.ListCpupool()
+func (ctx *Context) CpupoolFindByName(name string) (info Cpupoolinfo, found bool) {
+	plist := ctx.ListCpupool()
 
 	for i := range plist {
 		if plist[i].PoolName == name {
@@ -805,14 +805,14 @@ func (Ctx *Context) CpupoolFindByName(name string) (info Cpupoolinfo, found bool
 	return
 }
 
-func (Ctx *Context) CpupoolMakeFree(Cpumap Bitmap) (err error) {
-	plist := Ctx.ListCpupool()
+func (ctx *Context) CpupoolMakeFree(Cpumap Bitmap) (err error) {
+	plist := ctx.ListCpupool()
 
 	for i := range plist {
 		var Intersection Bitmap
 		Intersection = Cpumap.And(plist[i].Cpumap)
 		if !Intersection.IsEmpty() {
-			err = Ctx.CpupoolCpuremoveCpumap(plist[i].Poolid, Intersection)
+			err = ctx.CpupoolCpuremoveCpumap(plist[i].Poolid, Intersection)
 			if err != nil {
 				return
 			}
@@ -940,8 +940,8 @@ func (bm Bitmap) String() (s string) {
 }
 
 //int libxl_get_max_cpus(libxl_ctx *ctx);
-func (Ctx *Context) GetMaxCpus() (maxCpus int, err error) {
-	ret := C.libxl_get_max_cpus(Ctx.ctx)
+func (ctx *Context) GetMaxCpus() (maxCpus int, err error) {
+	ret := C.libxl_get_max_cpus(ctx.ctx)
 	if ret < 0 {
 		err = Error(-ret)
 		return
@@ -951,8 +951,8 @@ func (Ctx *Context) GetMaxCpus() (maxCpus int, err error) {
 }
 
 //int libxl_get_online_cpus(libxl_ctx *ctx);
-func (Ctx *Context) GetOnlineCpus() (onCpus int, err error) {
-	ret := C.libxl_get_online_cpus(Ctx.ctx)
+func (ctx *Context) GetOnlineCpus() (onCpus int, err error) {
+	ret := C.libxl_get_online_cpus(ctx.ctx)
 	if ret < 0 {
 		err = Error(-ret)
 		return
@@ -962,8 +962,8 @@ func (Ctx *Context) GetOnlineCpus() (onCpus int, err error) {
 }
 
 //int libxl_get_max_nodes(libxl_ctx *ctx);
-func (Ctx *Context) GetMaxNodes() (maxNodes int, err error) {
-	ret := C.libxl_get_max_nodes(Ctx.ctx)
+func (ctx *Context) GetMaxNodes() (maxNodes int, err error) {
+	ret := C.libxl_get_max_nodes(ctx.ctx)
 	if ret < 0 {
 		err = Error(-ret)
 		return
@@ -973,9 +973,9 @@ func (Ctx *Context) GetMaxNodes() (maxNodes int, err error) {
 }
 
 //int libxl_get_free_memory(libxl_ctx *ctx, uint64_t *memkb);
-func (Ctx *Context) GetFreeMemory() (memkb uint64, err error) {
+func (ctx *Context) GetFreeMemory() (memkb uint64, err error) {
 	var cmem C.uint64_t
-	ret := C.libxl_get_free_memory(Ctx.ctx, &cmem)
+	ret := C.libxl_get_free_memory(ctx.ctx, &cmem)
 
 	if ret < 0 {
 		err = Error(-ret)
@@ -988,12 +988,12 @@ func (Ctx *Context) GetFreeMemory() (memkb uint64, err error) {
 }
 
 //int libxl_get_physinfo(libxl_ctx *ctx, libxl_physinfo *physinfo)
-func (Ctx *Context) GetPhysinfo() (physinfo *Physinfo, err error) {
+func (ctx *Context) GetPhysinfo() (physinfo *Physinfo, err error) {
 	var cphys C.libxl_physinfo
 	C.libxl_physinfo_init(&cphys)
 	defer C.libxl_physinfo_dispose(&cphys)
 
-	ret := C.libxl_get_physinfo(Ctx.ctx, &cphys)
+	ret := C.libxl_get_physinfo(ctx.ctx, &cphys)
 
 	if ret < 0 {
 		err = Error(ret)
@@ -1005,22 +1005,22 @@ func (Ctx *Context) GetPhysinfo() (physinfo *Physinfo, err error) {
 }
 
 //const libxl_version_info* libxl_get_version_info(libxl_ctx *ctx);
-func (Ctx *Context) GetVersionInfo() (info *VersionInfo, err error) {
+func (ctx *Context) GetVersionInfo() (info *VersionInfo, err error) {
 	var cinfo *C.libxl_version_info
 
-	cinfo = C.libxl_get_version_info(Ctx.ctx)
+	cinfo = C.libxl_get_version_info(ctx.ctx)
 
 	err = info.fromC(cinfo)
 
 	return
 }
 
-func (Ctx *Context) DomainInfo(Id Domid) (di *Dominfo, err error) {
+func (ctx *Context) DomainInfo(Id Domid) (di *Dominfo, err error) {
 	var cdi C.libxl_dominfo
 	C.libxl_dominfo_init(&cdi)
 	defer C.libxl_dominfo_dispose(&cdi)
 
-	ret := C.libxl_domain_info(Ctx.ctx, &cdi, C.uint32_t(Id))
+	ret := C.libxl_domain_info(ctx.ctx, &cdi, C.uint32_t(Id))
 
 	if ret != 0 {
 		err = Error(-ret)
@@ -1032,8 +1032,8 @@ func (Ctx *Context) DomainInfo(Id Domid) (di *Dominfo, err error) {
 	return
 }
 
-func (Ctx *Context) DomainUnpause(Id Domid) (err error) {
-	ret := C.libxl_domain_unpause(Ctx.ctx, C.uint32_t(Id), nil)
+func (ctx *Context) DomainUnpause(Id Domid) (err error) {
+	ret := C.libxl_domain_unpause(ctx.ctx, C.uint32_t(Id), nil)
 
 	if ret != 0 {
 		err = Error(-ret)
@@ -1042,8 +1042,8 @@ func (Ctx *Context) DomainUnpause(Id Domid) (err error) {
 }
 
 //int libxl_domain_pause(libxl_ctx *ctx, uint32_t domain);
-func (Ctx *Context) DomainPause(id Domid) (err error) {
-	ret := C.libxl_domain_pause(Ctx.ctx, C.uint32_t(id), nil)
+func (ctx *Context) DomainPause(id Domid) (err error) {
+	ret := C.libxl_domain_pause(ctx.ctx, C.uint32_t(id), nil)
 
 	if ret != 0 {
 		err = Error(-ret)
@@ -1052,8 +1052,8 @@ func (Ctx *Context) DomainPause(id Domid) (err error) {
 }
 
 //int libxl_domain_shutdown(libxl_ctx *ctx, uint32_t domid);
-func (Ctx *Context) DomainShutdown(id Domid) (err error) {
-	ret := C.libxl_domain_shutdown(Ctx.ctx, C.uint32_t(id), nil)
+func (ctx *Context) DomainShutdown(id Domid) (err error) {
+	ret := C.libxl_domain_shutdown(ctx.ctx, C.uint32_t(id), nil)
 
 	if ret != 0 {
 		err = Error(-ret)
@@ -1062,8 +1062,8 @@ func (Ctx *Context) DomainShutdown(id Domid) (err error) {
 }
 
 //int libxl_domain_reboot(libxl_ctx *ctx, uint32_t domid);
-func (Ctx *Context) DomainReboot(id Domid) (err error) {
-	ret := C.libxl_domain_reboot(Ctx.ctx, C.uint32_t(id), nil)
+func (ctx *Context) DomainReboot(id Domid) (err error) {
+	ret := C.libxl_domain_reboot(ctx.ctx, C.uint32_t(id), nil)
 
 	if ret != 0 {
 		err = Error(-ret)
@@ -1073,9 +1073,9 @@ func (Ctx *Context) DomainReboot(id Domid) (err error) {
 
 //libxl_dominfo * libxl_list_domain(libxl_ctx*, int *nb_domain_out);
 //void libxl_dominfo_list_free(libxl_dominfo *list, int nb_domain);
-func (Ctx *Context) ListDomain() (glist []Dominfo) {
+func (ctx *Context) ListDomain() (glist []Dominfo) {
 	var nbDomain C.int
-	clist := C.libxl_list_domain(Ctx.ctx, &nbDomain)
+	clist := C.libxl_list_domain(ctx.ctx, &nbDomain)
 	defer C.libxl_dominfo_list_free(clist, nbDomain)
 
 	if int(nbDomain) == 0 {
@@ -1095,11 +1095,11 @@ func (Ctx *Context) ListDomain() (glist []Dominfo) {
 //libxl_vcpuinfo *libxl_list_vcpu(libxl_ctx *ctx, uint32_t domid,
 //				int *nb_vcpu, int *nr_cpus_out);
 //void libxl_vcpuinfo_list_free(libxl_vcpuinfo *, int nr_vcpus);
-func (Ctx *Context) ListVcpu(id Domid) (glist []Vcpuinfo) {
+func (ctx *Context) ListVcpu(id Domid) (glist []Vcpuinfo) {
 	var nbVcpu C.int
 	var nrCpu C.int
 
-	clist := C.libxl_list_vcpu(Ctx.ctx, C.uint32_t(id), &nbVcpu, &nrCpu)
+	clist := C.libxl_list_vcpu(ctx.ctx, C.uint32_t(id), &nbVcpu, &nrCpu)
 	defer C.libxl_vcpuinfo_list_free(clist, nbVcpu)
 
 	if int(nbVcpu) == 0 {
@@ -1125,9 +1125,9 @@ func (ct ConsoleType) String() (str string) {
 
 //int libxl_console_get_tty(libxl_ctx *ctx, uint32_t domid, int cons_num,
 //libxl_console_type type, char **path);
-func (Ctx *Context) ConsoleGetTty(id Domid, consNum int, conType ConsoleType) (path string, err error) {
+func (ctx *Context) ConsoleGetTty(id Domid, consNum int, conType ConsoleType) (path string, err error) {
 	var cpath *C.char
-	ret := C.libxl_console_get_tty(Ctx.ctx, C.uint32_t(id), C.int(consNum), C.libxl_console_type(conType), &cpath)
+	ret := C.libxl_console_get_tty(ctx.ctx, C.uint32_t(id), C.int(consNum), C.libxl_console_type(conType), &cpath)
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -1140,9 +1140,9 @@ func (Ctx *Context) ConsoleGetTty(id Domid, consNum int, conType ConsoleType) (p
 
 //int libxl_primary_console_get_tty(libxl_ctx *ctx, uint32_t domid_vm,
 //					char **path);
-func (Ctx *Context) PrimaryConsoleGetTty(domid uint32) (path string, err error) {
+func (ctx *Context) PrimaryConsoleGetTty(domid uint32) (path string, err error) {
 	var cpath *C.char
-	ret := C.libxl_primary_console_get_tty(Ctx.ctx, C.uint32_t(domid), &cpath)
+	ret := C.libxl_primary_console_get_tty(ctx.ctx, C.uint32_t(domid), &cpath)
 	if ret != 0 {
 		err = Error(-ret)
 		return
@@ -1154,7 +1154,7 @@ func (Ctx *Context) PrimaryConsoleGetTty(domid uint32) (path string, err error)
 }
 
 // DeviceNicAdd adds a nic to a domain.
-func (Ctx *Context) DeviceNicAdd(domid Domid, nic *DeviceNic) error {
+func (ctx *Context) DeviceNicAdd(domid Domid, nic *DeviceNic) error {
 	var cnic C.libxl_device_nic
 
 	if err := nic.toC(&cnic); err != nil {
@@ -1162,7 +1162,7 @@ func (Ctx *Context) DeviceNicAdd(domid Domid, nic *DeviceNic) error {
 	}
 	defer C.libxl_device_nic_dispose(&cnic)
 
-	ret := C.libxl_device_nic_add(Ctx.ctx, C.uint32_t(domid), &cnic, nil)
+	ret := C.libxl_device_nic_add(ctx.ctx, C.uint32_t(domid), &cnic, nil)
 	if ret != 0 {
 		return Error(ret)
 	}
@@ -1171,7 +1171,7 @@ func (Ctx *Context) DeviceNicAdd(domid Domid, nic *DeviceNic) error {
 }
 
 // DeviceNicRemove removes a nic from a domain.
-func (Ctx *Context) DeviceNicRemove(domid Domid, nic *DeviceNic) error {
+func (ctx *Context) DeviceNicRemove(domid Domid, nic *DeviceNic) error {
 	var cnic C.libxl_device_nic
 
 	if err := nic.toC(&cnic); err != nil {
@@ -1179,7 +1179,7 @@ func (Ctx *Context) DeviceNicRemove(domid Domid, nic *DeviceNic) error {
 	}
 	defer C.libxl_device_nic_dispose(&cnic)
 
-	ret := C.libxl_device_nic_remove(Ctx.ctx, C.uint32_t(domid), &cnic, nil)
+	ret := C.libxl_device_nic_remove(ctx.ctx, C.uint32_t(domid), &cnic, nil)
 	if ret != 0 {
 		return Error(ret)
 	}
@@ -1188,7 +1188,7 @@ func (Ctx *Context) DeviceNicRemove(domid Domid, nic *DeviceNic) error {
 }
 
 // DevicePciAdd is used to passthrough a PCI device to a domain.
-func (Ctx *Context) DevicePciAdd(domid Domid, pci *DevicePci) error {
+func (ctx *Context) DevicePciAdd(domid Domid, pci *DevicePci) error {
 	var cpci C.libxl_device_pci
 
 	if err := pci.toC(&cpci); err != nil {
@@ -1196,7 +1196,7 @@ func (Ctx *Context) DevicePciAdd(domid Domid, pci *DevicePci) error {
 	}
 	defer C.libxl_device_pci_dispose(&cpci)
 
-	ret := C.libxl_device_pci_add(Ctx.ctx, C.uint32_t(domid), &cpci, nil)
+	ret := C.libxl_device_pci_add(ctx.ctx, C.uint32_t(domid), &cpci, nil)
 	if ret != 0 {
 		return Error(ret)
 	}
@@ -1205,7 +1205,7 @@ func (Ctx *Context) DevicePciAdd(domid Domid, pci *DevicePci) error {
 }
 
 // DevicePciRemove removes a PCI device from a domain.
-func (Ctx *Context) DevicePciRemove(domid Domid, pci *DevicePci) error {
+func (ctx *Context) DevicePciRemove(domid Domid, pci *DevicePci) error {
 	var cpci C.libxl_device_pci
 
 	if err := pci.toC(&cpci); err != nil {
@@ -1213,7 +1213,7 @@ func (Ctx *Context) DevicePciRemove(domid Domid, pci *DevicePci) error {
 	}
 	defer C.libxl_device_pci_dispose(&cpci)
 
-	ret := C.libxl_device_pci_remove(Ctx.ctx, C.uint32_t(domid), &cpci, nil)
+	ret := C.libxl_device_pci_remove(ctx.ctx, C.uint32_t(domid), &cpci, nil)
 	if ret != 0 {
 		return Error(ret)
 	}
@@ -1222,7 +1222,7 @@ func (Ctx *Context) DevicePciRemove(domid Domid, pci *DevicePci) error {
 }
 
 // DeviceUsbdevAdd adds a USB device to a domain.
-func (Ctx *Context) DeviceUsbdevAdd(domid Domid, usbdev *DeviceUsbdev) error {
+func (ctx *Context) DeviceUsbdevAdd(domid Domid, usbdev *DeviceUsbdev) error {
 	var cusbdev C.libxl_device_usbdev
 
 	if err := usbdev.toC(&cusbdev); err != nil {
@@ -1230,7 +1230,7 @@ func (Ctx *Context) DeviceUsbdevAdd(domid Domid, usbdev *DeviceUsbdev) error {
 	}
 	defer C.libxl_device_usbdev_dispose(&cusbdev)
 
-	ret := C.libxl_device_usbdev_add(Ctx.ctx, C.uint32_t(domid), &cusbdev, nil)
+	ret := C.libxl_device_usbdev_add(ctx.ctx, C.uint32_t(domid), &cusbdev, nil)
 	if ret != 0 {
 		return Error(ret)
 	}
@@ -1239,7 +1239,7 @@ func (Ctx *Context) DeviceUsbdevAdd(domid Domid, usbdev *DeviceUsbdev) error {
 }
 
 // DeviceUsbdevRemove removes a USB device from a domain.
-func (Ctx *Context) DeviceUsbdevRemove(domid Domid, usbdev *DeviceUsbdev) error {
+func (ctx *Context) DeviceUsbdevRemove(domid Domid, usbdev *DeviceUsbdev) error {
 	var cusbdev C.libxl_device_usbdev
 
 	if err := usbdev.toC(&cusbdev); err != nil {
@@ -1247,7 +1247,7 @@ func (Ctx *Context) DeviceUsbdevRemove(domid Domid, usbdev *DeviceUsbdev) error
 	}
 	defer C.libxl_device_usbdev_dispose(&cusbdev)
 
-	ret := C.libxl_device_usbdev_remove(Ctx.ctx, C.uint32_t(domid), &cusbdev, nil)
+	ret := C.libxl_device_usbdev_remove(ctx.ctx, C.uint32_t(domid), &cusbdev, nil)
 	if ret != 0 {
 		return Error(ret)
 	}
@@ -1256,7 +1256,7 @@ func (Ctx *Context) DeviceUsbdevRemove(domid Domid, usbdev *DeviceUsbdev) error
 }
 
 // DomainCreateNew creates a new domain.
-func (Ctx *Context) DomainCreateNew(config *DomainConfig) (Domid, error) {
+func (ctx *Context) DomainCreateNew(config *DomainConfig) (Domid, error) {
 	var cdomid C.uint32_t
 	var cconfig C.libxl_domain_config
 	err := config.toC(&cconfig)
@@ -1265,7 +1265,7 @@ func (Ctx *Context) DomainCreateNew(config *DomainConfig) (Domid, error) {
 	}
 	defer C.libxl_domain_config_dispose(&cconfig)
 
-	ret := C.libxl_domain_create_new(Ctx.ctx, &cconfig, &cdomid, nil, nil)
+	ret := C.libxl_domain_create_new(ctx.ctx, &cconfig, &cdomid, nil, nil)
 	if ret != 0 {
 		return Domid(0), Error(ret)
 	}
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:15:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:15:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119631.226254 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKo-0007ZK-Nz; Thu, 29 Apr 2021 00:15:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119631.226254; Thu, 29 Apr 2021 00: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 1lbuKo-0007ZA-Jj; Thu, 29 Apr 2021 00:15:14 +0000
Received: by outflank-mailman (input) for mailman id 119631;
 Thu, 29 Apr 2021 00:15:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKn-00072A-Ue
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:15:13 +0000
Received: from mail-qk1-x72e.google.com (unknown [2607:f8b0:4864:20::72e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 37bb3426-b71e-45e2-bc68-03a2f74e5d3c;
 Thu, 29 Apr 2021 00:14:44 +0000 (UTC)
Received: by mail-qk1-x72e.google.com with SMTP id 66so26014683qkf.2
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:44 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.43
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: 37bb3426-b71e-45e2-bc68-03a2f74e5d3c
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=9uXGDDpJ9CrrbQAMDJkXAgE2yF4sZn3Mfqg0mD2vt8w=;
        b=GnTD7+ioGmWtK61iTA0bx7cyHU0a79TZRJjUpxX7SJpCsngstCsdi8DNFAftO8wNct
         qdsunU3kYNZsykJBWeKY9spMoDYeZTlwDTrJg5/GttOrqKBg02GZnPcaktxDb3OPGdEj
         knlQn9X9yacB7NSIEouOOdQ/nIFAbH1jlrd+bAl05cFNz0xU4xUf4cjnhP2WWo4BXCUl
         vnwqEJmOto/5beyWSbfhiIq7ICi4KgPJqm3562XL8nWxBQnyXRX/JEkuoJRJcOHif0BN
         Oih51vEEyTJjO4eRNgQ/rrGNSzMqqNkM/8Nz0s3zceE86DnA+yXmOXjk264HW2uoevLo
         I4yw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=9uXGDDpJ9CrrbQAMDJkXAgE2yF4sZn3Mfqg0mD2vt8w=;
        b=c9sZN3w70RzfS87gsYc4Kb9bz1ipUcCkk1pqCrwvd8NF+KH/I09EY16p2xrEiihFI/
         K8rwcwCaYfHZ9LlscadZOgWpbY5ugn6VKtR6lPMbx7oYnAcX62e9JgHRQ0BVlkMp4eYi
         yVTIJXwGuZWQee8agpe5YOv3CgmeRsTFsdT8QvQgsrAja0mVaUbaEwTi1z9sknck3y8m
         y6v5EKnx3wvRTRKXcRtx5uVK83YL/VlRUw6Z2KxSPVtnHxZEWmg4UJpgnNdsogNtl3PO
         JH7L9tOy/R+0CZDy9krzgOLC8PfRB13Y1d9D6/A2QgXSkdOMjIKlwhrSRSI40+KBDdBv
         Ip5w==
X-Gm-Message-State: AOAM530ApSorZxHeTCZxyTqpIiSheFNDiwQ3BIBQu+ViMOXg1aOzId+2
	8oaFTqs8Bg6Rpiumz26kYnpC2Wobsvo=
X-Google-Smtp-Source: ABdhPJzmlwZ2l6XQ2OEYQV12XIJkjXJHZ2yBLWVjPqShw9X6B6nDd+5PO1V3AVAs411HFMk1LjskBA==
X-Received: by 2002:a37:492:: with SMTP id 140mr31742249qke.161.1619655284380;
        Wed, 28 Apr 2021 17:14:44 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 07/12] golang/xenlight: add logging conveniences for within xenlight
Date: Wed, 28 Apr 2021 20:14:29 -0400
Message-Id: <452aac2489990ac0195c62d8cb820fbe5786c466.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

Add some logging methods to Context to provide easy use of the
Contenxt's xentoollog_logger. These are not exported, but the LogLevel
type is so that a later commit can allow the Context's log level to be
configurable.

Becuase cgo does not support calling C functions with variable
arguments, e.g. xtl_log, add an xtl_log_wrap function to the cgo preamble
that accepts an already formatted string, and handle the formatting in
Go.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/xenlight.go | 45 +++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
index fc3eb0bf3f..f68d7b6e97 100644
--- a/tools/golang/xenlight/xenlight.go
+++ b/tools/golang/xenlight/xenlight.go
@@ -32,6 +32,15 @@ static const libxl_childproc_hooks childproc_hooks = { .chldowner = libxl_sigchl
 void xenlight_set_chldproc(libxl_ctx *ctx) {
 	libxl_childproc_setmode(ctx, &childproc_hooks, NULL);
 }
+
+void xtl_log_wrap(struct xentoollog_logger *logger,
+		  xentoollog_level level,
+		  int errnoval,
+		  const char *context,
+		  const char *msg)
+{
+    xtl_log(logger, level, errnoval, context, "%s", msg);
+}
 */
 import "C"
 
@@ -192,6 +201,42 @@ func (ctx *Context) Close() error {
 	return nil
 }
 
+// LogLevel represents an xentoollog_level, and can be used to configre the log
+// level of a Context's logger.
+type LogLevel int
+
+const (
+	//LogLevelNone     LogLevel = C.XTL_NONE
+	LogLevelDebug    LogLevel = C.XTL_DEBUG
+	LogLevelVerbose  LogLevel = C.XTL_VERBOSE
+	LogLevelDetail   LogLevel = C.XTL_DETAIL
+	LogLevelProgress LogLevel = C.XTL_PROGRESS
+	LogLevelInfo     LogLevel = C.XTL_INFO
+	LogLevelNotice   LogLevel = C.XTL_NOTICE
+	LogLevelWarn     LogLevel = C.XTL_WARN
+	LogLevelError    LogLevel = C.XTL_ERROR
+	LogLevelCritical LogLevel = C.XTL_CRITICAL
+	//LogLevelNumLevels LogLevel = C.XTL_NUM_LEVELS
+)
+
+func (ctx *Context) log(lvl LogLevel, errnoval int, format string, a ...interface{}) {
+	msg := C.CString(fmt.Sprintf(format, a...))
+	defer C.free(unsafe.Pointer(msg))
+	context := C.CString("xenlight")
+	defer C.free(unsafe.Pointer(context))
+
+	C.xtl_log_wrap((*C.xentoollog_logger)(unsafe.Pointer(ctx.logger)),
+		C.xentoollog_level(lvl), C.int(errnoval), context, msg)
+}
+
+func (ctx *Context) logd(format string, a ...interface{}) {
+	ctx.log(LogLevelDebug, -1, format, a...)
+}
+
+func (ctx *Context) logw(format string, a ...interface{}) {
+	ctx.log(LogLevelWarn, -1, format, a...)
+}
+
 /*
  * Types: Builtins
  */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:15:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:15:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119634.226266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKu-0007fD-0N; Thu, 29 Apr 2021 00:15:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119634.226266; Thu, 29 Apr 2021 00: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 1lbuKt-0007f3-T1; Thu, 29 Apr 2021 00:15:19 +0000
Received: by outflank-mailman (input) for mailman id 119634;
 Thu, 29 Apr 2021 00:15:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKs-00072A-V0
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:15:18 +0000
Received: from mail-qk1-x734.google.com (unknown [2607:f8b0:4864:20::734])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 386a6d89-0e87-4b8b-8b32-2cc2046bbd63;
 Thu, 29 Apr 2021 00:14:45 +0000 (UTC)
Received: by mail-qk1-x734.google.com with SMTP id z2so28593406qkb.9
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:45 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: 386a6d89-0e87-4b8b-8b32-2cc2046bbd63
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=kEyMtRkVLFS8i1iO7mYtPK1CFn3AKiqVnXMVPcMO4BI=;
        b=X3RpbNRLFIasvagDXGGPh4iUBDU69CrFMYzRIyLErGYCEdZ/F3ViE3SE66plN6a5Es
         gQkA6VfDpOKa+gfrhuUgEQqg0s3s40nSIS0TD3SKMmysMLO81KwfJelOvzVR/RmrX6cQ
         DYx9BKcFLihTy9DxumdgX4q5TTVzgoqJZcwTSPMFIi6nsa/0EBoxCmDlGmviX/RMozqb
         R/jrQU19YigGSDaIQJgF2vtl0vhDSvVydYT8kUALZT9MBoxn2zyyhzDNkhXrl8B4IvFZ
         TMiNDUapu0vrLGPlIa+fa3zAPGUy8OJ03glUmg8F2pe3wgirARY73Gk192qkx1ImG9Kz
         H4rA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=kEyMtRkVLFS8i1iO7mYtPK1CFn3AKiqVnXMVPcMO4BI=;
        b=NAPg34CgIfU0i5z8vvzL6l5VBDcrl6r0rMdq0IK0a6FLk71vEydQ29IQyh/0s9UGzq
         1VInsBCNBuZfKEVhfOaW8UnnvyubYfjyFmVjC979q0cm29ZRVtItcmlpX1I5c9Vc3zYK
         KhK8bla3mfcVWJQJbBlID7gMrD2Qv42VI1ykENqV5TTF/8UQLV0XXTA+yASFXMefiL0N
         Qo4bmr3ywxTKmX4sKCmNhx/FVRBcs8TClMdx0yuysHxa2J9whcu/NudYQwvnbYIC1KTL
         sgmYpWeTqqjz3JuN3GDahmAry75DqT6OOxoD+n+iTwDemPGIv7yDTFCoZRzmOerf/WbN
         OEOA==
X-Gm-Message-State: AOAM531zPF0Cm4R673pW/vnebAFeTesIHxbS+S0ZBPu+jBEOfhbdQvH2
	o6TYSQDfxHn7DqSSoUUTi8IWhkr5fbQ=
X-Google-Smtp-Source: ABdhPJwd6DikwTnvprfp3pacBRfo7u3DzsZpMRnz89VqwVPX1hHAa4qPM5XCgXmkwZii7SBHi9g5wA==
X-Received: by 2002:ae9:ebd1:: with SMTP id b200mr31607745qkg.200.1619655285229;
        Wed, 28 Apr 2021 17:14:45 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 08/12] golang/xenlight: add functional options to configure Context
Date: Wed, 28 Apr 2021 20:14:30 -0400
Message-Id: <dc5cd6728e8477c9eb3ba75a55c7128da46a86ef.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

Add a ContextOption type to support functional options in NewContext.
Then, add a variadic ContextOption parameter to NewContext, which allows
callers to specify 0 or more configuration options.

For now, just add the WithLogLevel option so that callers can set the
log level of the Context's xentoollog_logger. Future configuration
options can be created by adding an appropriate field to the
contextOptions struct and creating a With<OptionName> function to return
a ContextOption

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/xenlight.go | 44 +++++++++++++++++++++++++++++--
 1 file changed, 42 insertions(+), 2 deletions(-)

diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
index f68d7b6e97..65f93abe32 100644
--- a/tools/golang/xenlight/xenlight.go
+++ b/tools/golang/xenlight/xenlight.go
@@ -136,7 +136,7 @@ func sigchldHandler(ctx *Context) {
 }
 
 // NewContext returns a new Context.
-func NewContext() (ctx *Context, err error) {
+func NewContext(opts ...ContextOption) (ctx *Context, err error) {
 	ctx = &Context{}
 
 	defer func() {
@@ -146,8 +146,19 @@ func NewContext() (ctx *Context, err error) {
 		}
 	}()
 
+	// Set the default context options. These fields may
+	// be modified by the provided opts.
+	copts := &contextOptions{
+		logLevel: LogLevelError,
+	}
+
+	for _, opt := range opts {
+		opt.apply(copts)
+	}
+
 	// Create a logger
-	ctx.logger = C.xtl_createlogger_stdiostream(C.stderr, C.XTL_ERROR, 0)
+	ctx.logger = C.xtl_createlogger_stdiostream(C.stderr,
+		C.xentoollog_level(copts.logLevel), 0)
 
 	// Allocate a context
 	ret := C.libxl_ctx_alloc(&ctx.ctx, C.LIBXL_VERSION, 0,
@@ -201,6 +212,35 @@ func (ctx *Context) Close() error {
 	return nil
 }
 
+type contextOptions struct {
+	logLevel LogLevel
+}
+
+// ContextOption is used to configure options for a Context.
+type ContextOption interface {
+	apply(*contextOptions)
+}
+
+type funcContextOption struct {
+	f func(*contextOptions)
+}
+
+func (fco *funcContextOption) apply(c *contextOptions) {
+	fco.f(c)
+}
+
+func newFuncContextOption(f func(*contextOptions)) *funcContextOption {
+	return &funcContextOption{f}
+}
+
+// WithLogLevel sets the log level for a Context's logger. The default level is
+// LogLevelError.
+func WithLogLevel(level LogLevel) ContextOption {
+	return newFuncContextOption(func(co *contextOptions) {
+		co.logLevel = level
+	})
+}
+
 // LogLevel represents an xentoollog_level, and can be used to configre the log
 // level of a Context's logger.
 type LogLevel int
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:15:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:15:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119637.226278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuKz-0007lw-Ds; Thu, 29 Apr 2021 00:15:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119637.226278; Thu, 29 Apr 2021 00: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 1lbuKz-0007lk-7N; Thu, 29 Apr 2021 00:15:25 +0000
Received: by outflank-mailman (input) for mailman id 119637;
 Thu, 29 Apr 2021 00:15:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuKx-00072A-V3
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:15:23 +0000
Received: from mail-qk1-x736.google.com (unknown [2607:f8b0:4864:20::736])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fb983bb6-d786-472c-a295-f9d1d4d9f0d2;
 Thu, 29 Apr 2021 00:14:46 +0000 (UTC)
Received: by mail-qk1-x736.google.com with SMTP id v23so13535198qkj.13
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:46 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: fb983bb6-d786-472c-a295-f9d1d4d9f0d2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=MJAWGHEUAw5eoKAlFYrwM/9yu/NhcTzkr9C5oJHPCDA=;
        b=A3V+fBzZ4EoTKzTgolB/bZYw7Klk1qmndxu6OOWrHZBriH848HFpj4AEu43ZxF6Wmu
         yJpX+j6noOzGf1wgdYy3RhjwQj00aM7xzUVHjm7Q2kvLaNn4A/hVr3C1qjD+JJoZJcFS
         1LV+PiN6qBjgxBvVbDhf0xSu21N2oTVt7vF/YFRO/usUXBq5+8MrYTzUF4usUW4WHWkh
         2BMD+FbmZtTpNZDA19k1gbq+cgzcCKlbGLhRSf+IMdDCje/Q+KrXRXJwXhmjJKIAggXC
         NcGWgKJz0pRGyDVauXBKuz9/ohr0d54QDKyAj+KnGZKR/ypEa5frxpJ0FQ/+Deagxuvr
         g/4w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=MJAWGHEUAw5eoKAlFYrwM/9yu/NhcTzkr9C5oJHPCDA=;
        b=ca19crPCNWirTcF190tfRmB+J/3NcE6Dp/gUjHoX1bZqHWht058DVfwexiskjgnbRy
         b6K+RBwdmvYkWOYKHnWfJn5x01avan9WROV07iv4WnUxP2Miw8xUrJrtN6yP53QWrsiY
         RA7q3fUQZm5dMryZjj4psL/JyTlH/28KU4U3zx5gxbexqJYnpYMcN4+wbQCtQZXWJyrD
         T3SifoyTjwMapAL/mNFdgXcCBNJQk0D1BYONLVQ0tyRJHTwjs5jEqLpH3wh+kiHRwX3l
         sfwZWjJHLpdeuHTP3p/Yxmrrpzvu90IcSwEKtCTkuNmTaKB3Ob0YKvzcZVqSX60/wk1t
         H15g==
X-Gm-Message-State: AOAM532sin4EU3OiQ7oRmCKusYBaBqrf8ZE3p4RCvyW7PVeOO3SBo2wj
	OZN+JI2Ez5KqWtd4DQhXIg9mxsj5bNc=
X-Google-Smtp-Source: ABdhPJz213UIAeTBYH23T7QfFdK82E35bw+YhB4TQXfha7S9X87I0gsA002TsDpf/HqtYHz4Gy5emw==
X-Received: by 2002:a37:b807:: with SMTP id i7mr31446519qkf.126.1619655286335;
        Wed, 28 Apr 2021 17:14:46 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 09/12] golang/xenlight: add DomainDestroy wrapper
Date: Wed, 28 Apr 2021 20:14:31 -0400
Message-Id: <82c68547f4cec1c82132cd6a867696f4b38dcd3d.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

Add a wrapper around libxl_domain_destroy.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/xenlight.go | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
index 65f93abe32..1e0ed109e4 100644
--- a/tools/golang/xenlight/xenlight.go
+++ b/tools/golang/xenlight/xenlight.go
@@ -1357,3 +1357,13 @@ func (ctx *Context) DomainCreateNew(config *DomainConfig) (Domid, error) {
 
 	return Domid(cdomid), nil
 }
+
+// DomainDestroy destroys a domain given a domid.
+func (ctx *Context) DomainDestroy(domid Domid) error {
+	ret := C.libxl_domain_destroy(ctx.ctx, C.uint32_t(domid), nil)
+	if ret != 0 {
+		return Error(ret)
+	}
+
+	return nil
+}
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:24:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:24:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119678.226290 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuU4-0000bx-Bc; Thu, 29 Apr 2021 00:24:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119678.226290; Thu, 29 Apr 2021 00: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 1lbuU4-0000bq-8V; Thu, 29 Apr 2021 00:24:48 +0000
Received: by outflank-mailman (input) for mailman id 119678;
 Thu, 29 Apr 2021 00:24:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuL7-00072A-VB
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:15:33 +0000
Received: from mail-qk1-x72f.google.com (unknown [2607:f8b0:4864:20::72f])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8575b3df-66e4-428c-9981-ed711e13a6d6;
 Thu, 29 Apr 2021 00:14:48 +0000 (UTC)
Received: by mail-qk1-x72f.google.com with SMTP id o5so65593965qkb.0
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:48 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.47
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: 8575b3df-66e4-428c-9981-ed711e13a6d6
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=8RHEO4rjzSWCDCSeU8KH/ouMS7fzg0KSm8WpWB6iQ0M=;
        b=WuagplF/N+6Qq3E3bKSharLO65EdAjIlxj0a/hc7jj5kuwpyBG1FZx14nl01G5YTCq
         LHhx+jn0FnfUtRbj4/xtTRPICM+M2YM7N30iH1B0utAd7t1sB73yZSNu9wjXl2w5+Xh4
         AW396aY11QYihqi1MV7Fu495FGeyyN2gjzl1xgLLS6MKZTNkMt4t7gnuayA6rVbOyKLk
         +7vKsndChV4728Zbr8rWg8uWZRYgzhfrhjvw+UNQOmVoZICskbdvA5ZtM9ZLxRDgZ0eA
         FElsAcFCCGetVd0MOIioW7qOvXJ4Bts4JJ5vEJ/ibUq6RcJ8x4o8PidJk2Mg1PPNyTH+
         YQyA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=8RHEO4rjzSWCDCSeU8KH/ouMS7fzg0KSm8WpWB6iQ0M=;
        b=p/DcpLka2CRs0rinA5iVlWRim+33zpzEyi1kfHFLzN0fnqJhPOpE9U7SlTiUZXJ/IX
         7kpPNI3pCyKBmGq94cqi3l220/Ad1AJA5Q5XFIZE0o3gxtu7vwQb+MzrrImoNCNAwF/B
         KRGDMOFKe9jHPWJn3oaFhUi13IAAV5bZ9PH84lw8raRwq0GX6zRy8tQd+oxDlONg1P8+
         nMsFL2N2TB6/R4j+8S3rRhjAJzikSkQ31j3j0n0ZEucGC6tyPO4JAGYeP384drLzEgXm
         0isezo9OarSO6Cpw88pMa905LBZKvGYFeguxeASqL09QKwYUCdJBMRAcsO1Z4qQKvHF4
         +0Cw==
X-Gm-Message-State: AOAM531H/VO2PjR/jjgFK0a+mBZNrM12kvSWGjgSuRzKaEqU2jp7F5W0
	Ya57+eu+0V2/yxzfVK7iJHWDyIHMtlA=
X-Google-Smtp-Source: ABdhPJxDHHI9SX8SkOYc/LaA6GkpLiaYOCLPx1hZghaJbVgf3Qube0QSBLyc+Ww/Bu6L15GUalEg6A==
X-Received: by 2002:a37:6249:: with SMTP id w70mr24335100qkb.99.1619655288147;
        Wed, 28 Apr 2021 17:14:48 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 11/12] golang/xenlight: do not negate ret when converting to Error
Date: Wed, 28 Apr 2021 20:14:33 -0400
Message-Id: <82bc8b720c3dfb178e52d10ddbebfa8dc5880e7b.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

There are several locations where the return code from calling into C is
negated when being converted to Error. This results in error strings
like "libxl error: <x>", rather than the correct message. Fix all
occurrances of this by running:

  gofmt -w -r 'Error(-ret) -> Error(ret)' xenlight.go

from tools/golang/xenlight.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/xenlight.go | 46 +++++++++++++++----------------
 1 file changed, 23 insertions(+), 23 deletions(-)

diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
index d153feb851..6fb22665cc 100644
--- a/tools/golang/xenlight/xenlight.go
+++ b/tools/golang/xenlight/xenlight.go
@@ -668,7 +668,7 @@ func SchedulerFromString(name string) (s Scheduler, err error) {
 
 	ret := C.libxl_scheduler_from_string(cname, &cs)
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -707,7 +707,7 @@ func (ctx *Context) CpupoolInfo(Poolid uint32) (pool Cpupoolinfo, err error) {
 
 	ret := C.libxl_cpupool_info(ctx.ctx, &c_cpupool, C.uint32_t(Poolid))
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 	defer C.libxl_cpupoolinfo_dispose(&c_cpupool)
@@ -741,7 +741,7 @@ func (ctx *Context) CpupoolCreate(Name string, Scheduler Scheduler, Cpumap Bitma
 	ret := C.libxl_cpupool_create(ctx.ctx, name, C.libxl_scheduler(Scheduler),
 		cbm, &uuid, &poolid)
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -754,7 +754,7 @@ func (ctx *Context) CpupoolCreate(Name string, Scheduler Scheduler, Cpumap Bitma
 func (ctx *Context) CpupoolDestroy(Poolid uint32) (err error) {
 	ret := C.libxl_cpupool_destroy(ctx.ctx, C.uint32_t(Poolid))
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -765,7 +765,7 @@ func (ctx *Context) CpupoolDestroy(Poolid uint32) (err error) {
 func (ctx *Context) CpupoolCpuadd(Poolid uint32, Cpu int) (err error) {
 	ret := C.libxl_cpupool_cpuadd(ctx.ctx, C.uint32_t(Poolid), C.int(Cpu))
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -783,7 +783,7 @@ func (ctx *Context) CpupoolCpuaddCpumap(Poolid uint32, Cpumap Bitmap) (err error
 
 	ret := C.libxl_cpupool_cpuadd_cpumap(ctx.ctx, C.uint32_t(Poolid), &cbm)
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -794,7 +794,7 @@ func (ctx *Context) CpupoolCpuaddCpumap(Poolid uint32, Cpumap Bitmap) (err error
 func (ctx *Context) CpupoolCpuremove(Poolid uint32, Cpu int) (err error) {
 	ret := C.libxl_cpupool_cpuremove(ctx.ctx, C.uint32_t(Poolid), C.int(Cpu))
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -812,7 +812,7 @@ func (ctx *Context) CpupoolCpuremoveCpumap(Poolid uint32, Cpumap Bitmap) (err er
 
 	ret := C.libxl_cpupool_cpuremove_cpumap(ctx.ctx, C.uint32_t(Poolid), &cbm)
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -826,7 +826,7 @@ func (ctx *Context) CpupoolRename(Name string, Poolid uint32) (err error) {
 
 	ret := C.libxl_cpupool_rename(ctx.ctx, name, C.uint32_t(Poolid))
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -839,7 +839,7 @@ func (ctx *Context) CpupoolCpuaddNode(Poolid uint32, Node int) (Cpus int, err er
 
 	ret := C.libxl_cpupool_cpuadd_node(ctx.ctx, C.uint32_t(Poolid), C.int(Node), &ccpus)
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -854,7 +854,7 @@ func (ctx *Context) CpupoolCpuremoveNode(Poolid uint32, Node int) (Cpus int, err
 
 	ret := C.libxl_cpupool_cpuremove_node(ctx.ctx, C.uint32_t(Poolid), C.int(Node), &ccpus)
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -867,7 +867,7 @@ func (ctx *Context) CpupoolCpuremoveNode(Poolid uint32, Node int) (Cpus int, err
 func (ctx *Context) CpupoolMovedomain(Poolid uint32, Id Domid) (err error) {
 	ret := C.libxl_cpupool_movedomain(ctx.ctx, C.uint32_t(Poolid), C.uint32_t(Id))
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -1028,7 +1028,7 @@ func (bm Bitmap) String() (s string) {
 func (ctx *Context) GetMaxCpus() (maxCpus int, err error) {
 	ret := C.libxl_get_max_cpus(ctx.ctx)
 	if ret < 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 	maxCpus = int(ret)
@@ -1039,7 +1039,7 @@ func (ctx *Context) GetMaxCpus() (maxCpus int, err error) {
 func (ctx *Context) GetOnlineCpus() (onCpus int, err error) {
 	ret := C.libxl_get_online_cpus(ctx.ctx)
 	if ret < 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 	onCpus = int(ret)
@@ -1050,7 +1050,7 @@ func (ctx *Context) GetOnlineCpus() (onCpus int, err error) {
 func (ctx *Context) GetMaxNodes() (maxNodes int, err error) {
 	ret := C.libxl_get_max_nodes(ctx.ctx)
 	if ret < 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 	maxNodes = int(ret)
@@ -1063,7 +1063,7 @@ func (ctx *Context) GetFreeMemory() (memkb uint64, err error) {
 	ret := C.libxl_get_free_memory(ctx.ctx, &cmem)
 
 	if ret < 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -1108,7 +1108,7 @@ func (ctx *Context) DomainInfo(Id Domid) (di *Dominfo, err error) {
 	ret := C.libxl_domain_info(ctx.ctx, &cdi, C.uint32_t(Id))
 
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 
@@ -1121,7 +1121,7 @@ func (ctx *Context) DomainUnpause(Id Domid) (err error) {
 	ret := C.libxl_domain_unpause(ctx.ctx, C.uint32_t(Id), nil)
 
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 	}
 	return
 }
@@ -1131,7 +1131,7 @@ func (ctx *Context) DomainPause(id Domid) (err error) {
 	ret := C.libxl_domain_pause(ctx.ctx, C.uint32_t(id), nil)
 
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 	}
 	return
 }
@@ -1141,7 +1141,7 @@ func (ctx *Context) DomainShutdown(id Domid) (err error) {
 	ret := C.libxl_domain_shutdown(ctx.ctx, C.uint32_t(id), nil)
 
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 	}
 	return
 }
@@ -1151,7 +1151,7 @@ func (ctx *Context) DomainReboot(id Domid) (err error) {
 	ret := C.libxl_domain_reboot(ctx.ctx, C.uint32_t(id), nil)
 
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 	}
 	return
 }
@@ -1214,7 +1214,7 @@ func (ctx *Context) ConsoleGetTty(id Domid, consNum int, conType ConsoleType) (p
 	var cpath *C.char
 	ret := C.libxl_console_get_tty(ctx.ctx, C.uint32_t(id), C.int(consNum), C.libxl_console_type(conType), &cpath)
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 	defer C.free(unsafe.Pointer(cpath))
@@ -1229,7 +1229,7 @@ func (ctx *Context) PrimaryConsoleGetTty(domid uint32) (path string, err error)
 	var cpath *C.char
 	ret := C.libxl_primary_console_get_tty(ctx.ctx, C.uint32_t(domid), &cpath)
 	if ret != 0 {
-		err = Error(-ret)
+		err = Error(ret)
 		return
 	}
 	defer C.free(unsafe.Pointer(cpath))
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:24:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:24:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119679.226296 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuU4-0000cO-LX; Thu, 29 Apr 2021 00:24:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119679.226296; Thu, 29 Apr 2021 00: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 1lbuU4-0000cH-GP; Thu, 29 Apr 2021 00:24:48 +0000
Received: by outflank-mailman (input) for mailman id 119679;
 Thu, 29 Apr 2021 00:24:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuLC-00072A-VU
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:15:39 +0000
Received: from mail-qk1-x733.google.com (unknown [2607:f8b0:4864:20::733])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7791350c-8fd4-4740-ba4f-cc1d7a80a2d8;
 Thu, 29 Apr 2021 00:14:50 +0000 (UTC)
Received: by mail-qk1-x733.google.com with SMTP id q136so44605762qka.7
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:50 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.48
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: 7791350c-8fd4-4740-ba4f-cc1d7a80a2d8
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=qZQxVcviBuvDjUeKOepu8YHqa+eGuG2DXDt5FNQL7LQ=;
        b=Wmm7rj/vyt50koaS67R5V5VtQ04AK9utAPe54iBby3oY7Cy+nLzkYQ1rwyKaigciEN
         0RT4FZX6lVOgNpi9JtuICBw+qRFZbU/KRgXiHbEn8+vqGBEhtj+LqEqba/AU1fHfwW1m
         eaYltcHWDFyLDU5Ob2Z87zERdA6lkDZX6VcV+YVGq9cMbHOyD7FY71qg9oTScdipxcGV
         KRXlBdc8QoPG8euVyHhq/7lmFBKuFC+GQTmf45ukF8/dg3+z8EGtvhZ+uZod6L4Zu9+Y
         B7sWhTKdiBsdqxuL0FwhjbBy9KOrXIat+bE1P/NqqJeFfCabyBDRKFZpjvkWt6K3QsIt
         i95g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=qZQxVcviBuvDjUeKOepu8YHqa+eGuG2DXDt5FNQL7LQ=;
        b=jWgPym+CFm4Oh1PclF7l2zhJObbDKVBIaHYff9BpaMVgEV3KfUEdT7fZU2ixbV94dF
         tdo3RIWXbof7UDGlM1h8cdwMkplyZS+uaFgcOVJpE09hCgzSDSbuiBEx/p9jF9t66Kju
         QHN2zklln4A8TYt984VJ+ofcGRfV+5cF6bkgMbh6sYoG4kx38fZJp+TK91rQBfbqxRCo
         QmOUWF/MIRK5sSBWpIxgaRaWRjkBaI5R+8oQ2NJg6ZszOFZ4LnNkGDfsnoIbKNDPbJG+
         rCFoBJ/Edluml2nTwFNKWa0lzpzWfqFMKmKfNijUBNq+F/z1WTMeAvo/fiUIhtlauCZd
         lPww==
X-Gm-Message-State: AOAM533zaWkMvT3246Os3Jp9WvoZHLpVnoruNvvzMxalhUpK5pTWKHWV
	y7WaiAxzULJjwsne/QiPMwhvTbUR6EA=
X-Google-Smtp-Source: ABdhPJwqF5FqnlBcGP5vzfDZED1P0vTiFUV/Etl+1E4/OMgfLzLyiP/fs3umjbOR+C2uVj88o022Mg==
X-Received: by 2002:a37:a1d5:: with SMTP id k204mr32185392qke.164.1619655289437;
        Wed, 28 Apr 2021 17:14:49 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 12/12] golang/xenlight: add NotifyDomainDeath method to Context
Date: Wed, 28 Apr 2021 20:14:34 -0400
Message-Id: <e415b0e26954cfc6689fbd3ba7d79fe664f3bb50.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

Add a helper function to wait for domain death events, and then write
the events to a provided channel. This handles the enabling/disabling of
the event type, freeing the event, and converting it to a Go type. The
caller can then handle the event however they need to. This function
will run until a provided context.Context is cancelled.

NotifyDomainDeath spawns two goroutines that return when the
context.Context is done. The first will make sure that the domain death
event is disabled, and that the corresponding event queue is cleared.
The second calls libxl_event_wait, and writes the event to the provided
channel.

With this, callers should be able to manage a full domain life cycle.
Add to the comment of DomainCreateNew so that package uses know they
should use this method in conjunction with DomainCreateNew.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/xenlight.go | 83 ++++++++++++++++++++++++++++++-
 1 file changed, 82 insertions(+), 1 deletion(-)

diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
index 6fb22665cc..8406883433 100644
--- a/tools/golang/xenlight/xenlight.go
+++ b/tools/golang/xenlight/xenlight.go
@@ -53,6 +53,7 @@ import "C"
  */
 
 import (
+	"context"
 	"fmt"
 	"os"
 	"os/signal"
@@ -1340,7 +1341,9 @@ func (ctx *Context) DeviceUsbdevRemove(domid Domid, usbdev *DeviceUsbdev) error
 	return nil
 }
 
-// DomainCreateNew creates a new domain.
+// DomainCreateNew creates a new domain. Callers of DomainCreateNew are
+// responsible for handling the death of the resulting domain. This should be
+// done using NotifyDomainDeath.
 func (ctx *Context) DomainCreateNew(config *DomainConfig) (Domid, error) {
 	var cdomid C.uint32_t
 	var cconfig C.libxl_domain_config
@@ -1358,6 +1361,84 @@ func (ctx *Context) DomainCreateNew(config *DomainConfig) (Domid, error) {
 	return Domid(cdomid), nil
 }
 
+// NotifyDomainDeath registers an event handler for domain death events for a
+// given domnid, and writes events received to ec. NotifyDomainDeath returns an
+// error if it cannot register the event handler, but other errors encountered
+// are just logged. The goroutine spawned by calling NotifyDomainDeath runs
+// until the provided context.Context's Done channel is closed.
+func (ctx *Context) NotifyDomainDeath(c context.Context, domid Domid, ec chan<- Event) error {
+	var deathw *C.libxl_evgen_domain_death
+
+	ret := C.libxl_evenable_domain_death(ctx.ctx, C.uint32_t(domid), 0, &deathw)
+	if ret != 0 {
+		return Error(ret)
+	}
+
+	// Spawn a goroutine that is responsible for cleaning up when the
+	// passed context.Context's Done channel is closed.
+	go func() {
+		<-c.Done()
+
+		ctx.logd("cleaning up domain death event handler for domain %d", domid)
+
+		// Disable the event generation.
+		C.libxl_evdisable_domain_death(ctx.ctx, deathw)
+
+		// Make sure any events that were generated get cleaned up so they
+		// do not linger in the libxl event queue.
+		var evc *C.libxl_event
+		for {
+			ret := C.libxl_event_check(ctx.ctx, &evc, C.LIBXL_EVENTMASK_ALL, nil, nil)
+			if ret != 0 {
+				return
+			}
+			C.libxl_event_free(ctx.ctx, evc)
+		}
+	}()
+
+	go func() {
+		var (
+			ev  Event
+			evc *C.libxl_event
+		)
+
+		for {
+			select {
+			case <-c.Done():
+				return
+			default:
+				// Go on and check for an event...
+			}
+
+			ret := C.libxl_event_wait(ctx.ctx, &evc, C.LIBXL_EVENTMASK_ALL, nil, nil)
+			if ret != 0 {
+				ctx.logw("unexpected error waiting for event: %s", Error(ret))
+				continue
+			}
+
+			// Try to convert the event to Go, and then free the
+			// C.libxl_event no matter what.
+			err := ev.fromC(evc)
+			C.libxl_event_free(ctx.ctx, evc)
+			if err != nil {
+				ctx.logw("error converting event from C: %v", err)
+				continue
+			}
+
+			ctx.logd("received domain death event (domid=%v, type=%v)", ev.Domid, ev.Type)
+
+			// Write the event to the channel
+			select {
+			case ec <- ev:
+			case <-c.Done():
+				return
+			}
+		}
+	}()
+
+	return nil
+}
+
 // DomainDestroy destroys a domain given a domid.
 func (ctx *Context) DomainDestroy(domid Domid) error {
 	ret := C.libxl_domain_destroy(ctx.ctx, C.uint32_t(domid), nil)
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 00:24:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 00:24:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119681.226314 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbuUF-0000j8-1W; Thu, 29 Apr 2021 00:24:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119681.226314; Thu, 29 Apr 2021 00: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 1lbuUE-0000iy-Tv; Thu, 29 Apr 2021 00:24:58 +0000
Received: by outflank-mailman (input) for mailman id 119681;
 Thu, 29 Apr 2021 00:24:57 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S48z=J2=gmail.com=rosbrookn@srs-us1.protection.inumbo.net>)
 id 1lbuL2-00072A-V6
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 00:15:28 +0000
Received: from mail-qk1-x72e.google.com (unknown [2607:f8b0:4864:20::72e])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b6b165b2-64d5-4b58-8b10-6fffed4de8e4;
 Thu, 29 Apr 2021 00:14:47 +0000 (UTC)
Received: by mail-qk1-x72e.google.com with SMTP id 8so31839670qkv.8
 for <xen-devel@lists.xenproject.org>; Wed, 28 Apr 2021 17:14:47 -0700 (PDT)
Received: from localhost.localdomain (c-73-89-138-5.hsd1.vt.comcast.net.
 [73.89.138.5])
 by smtp.gmail.com with ESMTPSA id r185sm1021694qkf.78.2021.04.28.17.14.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 28 Apr 2021 17:14: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: b6b165b2-64d5-4b58-8b10-6fffed4de8e4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:to:cc:subject:date:message-id:in-reply-to:references
         :in-reply-to:references;
        bh=Bztafs77V0wo2Yc5MZ62RAYiSnYmIu905Zy3uFkoAyc=;
        b=BMp2XQVr6/Bk3JgUr4BuYQ6V1vk9K5+ShWTeHPcy8TPZveeNr2e4hoxAx5pRsCyCAe
         +U2/nEIjSpAgjEK39Os+Ei/AIrfEVuRQHwfhb+C2FyH+XHP8uefypULwaF/as/Y7bcgz
         kDHfGU4FWK+J3qAiJIwAl80G3x6V9nvxX8Ll3S2XV0jqg6yo8TBdzYFg2ua7L/2lojXc
         0xPwsW+hSGsZa4hMIWq/jE6RwP5lXr9MFEL40QGxI8Q4Mi50xpz8sVVAreTJjwXf41/Z
         7xt4mbzrcJ5Y4+KaPTBKY1eDylgcm0gYHlQEjfYUXGoYUagpAYKOzBJ/wBiHx7WeQXTJ
         TSOg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
         :references:in-reply-to:references;
        bh=Bztafs77V0wo2Yc5MZ62RAYiSnYmIu905Zy3uFkoAyc=;
        b=fCaU2d8snhpABUxmghvEF7vi3ogLhSh8BzxsehX0OHTk4s8Hrt9rYIJCfnGmhgTtYz
         TH486xX2fgbHj+XxdRlnBQm8S+WaUdFsFOCE1tLShw8DeR2ODaLc4RfxAiuvCqCCiz2d
         Ne1ru/ds6q7ZRN62C4RmHhk3JfbOoLbHpImagvUvQqUbLkz4g7KSUEvEASEGpRzUB6rw
         rjgTCK55UAWfrnjIhRyVkGcGVUK2y+TzOVPhnQvUThjyrHCLYCZZ6wEeGmi+qUp/lMtw
         cUSItvtvQH6q8u4vmpOs+JvpuIWTF8F0EnGgFUs5SmMa7TuvIjH5hBZC15AbyFvn8ON7
         ZTTA==
X-Gm-Message-State: AOAM531Z/5j0LnmAQGj0T0TmowssM2yhODdRN9dsCsuyXCxZsDUIw5lj
	HNT6eqA1IF6mNN5AIREo17O6s1psCaE=
X-Google-Smtp-Source: ABdhPJzH0CL1HcR82zMaOQdo32G8QM+l2xu/U9sGBjsc7/PfvshIqGFyz6KDHUQQ11ZD8BiaaQolvw==
X-Received: by 2002:a37:a90a:: with SMTP id s10mr31041821qke.63.1619655287219;
        Wed, 28 Apr 2021 17:14:47 -0700 (PDT)
From: Nick Rosbrook <rosbrookn@gmail.com>
X-Google-Original-From: Nick Rosbrook <rosbrookn@ainfosec.com>
To: xen-devel@lists.xenproject.org
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 10/12] golang/xenlight: add SendTrigger wrapper
Date: Wed, 28 Apr 2021 20:14:32 -0400
Message-Id: <7788e3f5f1af622782ede1b879f4f02ec63fa546.1619655104.git.rosbrookn@ainfosec.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619650820.git.rosbrookn@ainfosec.com>
References: <cover.1619650820.git.rosbrookn@ainfosec.com>
In-Reply-To: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>
References: <29e665fc1c9313f5e221e9e5e15d7c2d9c1eb4a7.1619655104.git.rosbrookn@ainfosec.com>

Add a warpper around libxl_send_trigger.

Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
---
 tools/golang/xenlight/xenlight.go | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
index 1e0ed109e4..d153feb851 100644
--- a/tools/golang/xenlight/xenlight.go
+++ b/tools/golang/xenlight/xenlight.go
@@ -1367,3 +1367,14 @@ func (ctx *Context) DomainDestroy(domid Domid) error {
 
 	return nil
 }
+
+// SendTrigger sends a Trigger to the domain specified by domid.
+func (ctx *Context) SendTrigger(domid Domid, trigger Trigger, vcpuid int) error {
+	ret := C.libxl_send_trigger(ctx.ctx, C.uint32_t(domid),
+		C.libxl_trigger(trigger), C.uint32_t(vcpuid), nil)
+	if ret != 0 {
+		return Error(ret)
+	}
+
+	return nil
+}
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 03:04:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 03:04:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119718.226332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbwyi-0003Y4-QY; Thu, 29 Apr 2021 03:04:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119718.226332; Thu, 29 Apr 2021 03:04: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 1lbwyi-0003Xx-MJ; Thu, 29 Apr 2021 03:04:36 +0000
Received: by outflank-mailman (input) for mailman id 119718;
 Thu, 29 Apr 2021 03:04: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 1lbwyh-0003Xn-V2; Thu, 29 Apr 2021 03:04:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lbwyh-00026A-Dr; Thu, 29 Apr 2021 03:04: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 1lbwyh-0001Q4-1g; Thu, 29 Apr 2021 03:04:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbwyh-0004b9-0j; Thu, 29 Apr 2021 03: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ghQmu04HpuYyPNcMJef7OAL+H3S3UhcSjlqsrNP1wv8=; b=4Y4sp4MUG4Nuz5dGJqZHyURlyM
	IdMZul2f93+PL6PWE71c56eqM2uSXIrsZrlGMVgt9X0UQWeXSY1C0x9cQBn7mau1RmavChx1bvugb
	3amo0RORhT+kQE1uoIeg1eSz0t9F8jZ1ytQG94QmYgizf45DAWkKhWwCAlgPyOopwb9A=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161495-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161495: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-xsm:guest-localmigrate/x10:fail:heisenbug
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=0cef06d18762374c94eb4d511717a4735d668a24
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 03:04:35 +0000

flight 161495 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161495/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-xsm       20 guest-localmigrate/x10     fail pass in 161481

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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          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:
 qemuu                0cef06d18762374c94eb4d511717a4735d668a24
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  251 days
Failing since        152659  2020-08-21 14:07:39 Z  250 days  460 attempts
Testing same since   161472  2021-04-26 23:08:10 Z    2 days    3 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 test-amd64-i386-libvirt-xsm                                  fail    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       fail    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 143040 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 05:39:57 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 05:39:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119729.226353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lbzOi-0008Fo-89; Thu, 29 Apr 2021 05:39:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119729.226353; Thu, 29 Apr 2021 05: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 1lbzOi-0008Fh-4r; Thu, 29 Apr 2021 05:39:36 +0000
Received: by outflank-mailman (input) for mailman id 119729;
 Thu, 29 Apr 2021 05:39: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 1lbzOg-0008FZ-TV; Thu, 29 Apr 2021 05:39:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lbzOg-00059N-Lr; Thu, 29 Apr 2021 05:39: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 1lbzOg-0001FN-9p; Thu, 29 Apr 2021 05:39:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lbzOg-0002ZC-8W; Thu, 29 Apr 2021 05:39:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=1j1YbnI0kPoqBK0Tr6h86y3GAI81i3CeS6LlsBSwacA=; b=yJ7lcQnelG2G2yAGpichfollVl
	JRlzwrQJ57UKr1mAg7CpkVER6ReYP8S0ctf+esW84tkEr2FlRW0sIGCPQUGYVEr0vhSdmMNbwrahq
	HGjgTbPPSQYdgC5jCo0QCeBap1omG74eP90w2p6FxQLaTi+o+ZrZQVgs94LFDfVmav9A=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161503-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 161503: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-5.4:test-amd64-amd64-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-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-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-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-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:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-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-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-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-libvirt-xsm: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-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-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-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-cubietruck:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=19bfeb47e96bb342d8c43a8ba0e68baf053b0dfc
X-Osstest-Versions-That:
    linux=a7eb81c1d11ae311c25db88c25a7d5228fe5680a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 05:39:34 +0000

flight 161503 linux-5.4 real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161503/

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 161352
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161352
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161352
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161352
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161352
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161352
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161352
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161352
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161352
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161352
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161352
 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-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-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-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-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-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-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
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                19bfeb47e96bb342d8c43a8ba0e68baf053b0dfc
baseline version:
 linux                a7eb81c1d11ae311c25db88c25a7d5228fe5680a

Last test of basis   161352  2021-04-21 11:11:07 Z    7 days
Testing same since   161503  2021-04-28 11:42:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adrian Hunter <adrian.hunter@intel.com>
  Ali Saidi <alisaidi@amazon.com>
  Andi Kleen <ak@linux.intel.com>
  Andre Przywara <andre.przywara@arm.com>
  Andrew Morton <akpm@linux-foundation.org>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Arnaldo Carvalho de Melo <acme@redhat.com>
  Bartosz Golaszewski <bgolaszewski@baylibre.com>
  Borislav Petkov <bp@suse.de>
  David S. Miller <davem@davemloft.net>
  Eric Dumazet <edumazet@google.com>
  Florian Fainelli <f.fainelli@gmail.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Grygorii Strashko <grygorii.strashko@ti.com>
  Guenter Roeck <linux@roeck-us.net>
  Guo Ren <guoren@kernel.org>
  Heiko Carstens <hca@linux.ibm.com>
  Hulk Robot <hulkrobot@huawei.com>
  Jason Self <jason@bluehome.net>
  Jia-Ju Bai <baijiaju1990@gmail.com>
  Jiapeng Zhong <abaci-bugfix@linux.alibaba.com>
  Jim Mattson <jmattson@google.com>
  Jiri Kosina <jkosina@suse.cz>
  Johan Hovold <johan@kernel.org>
  John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  Jon Hunter <jonathanh@nvidia.com>
  Kan Liang <kan.liang@linux.intel.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
  Leo Yan <leo.yan@linaro.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Maxime Ripard <maxime@cerno.tech>
  Michael Brown <mbrown@fensystems.co.uk>
  Michael Weiser <michael.weiser@gmx.de>
  Mike Galbraith <efault@gmx.de>
  Oliver Neukum <oneukum@suse.com>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Phillip Potter <phil@philpotter.co.uk>
  Randy Dunlap <rdunlap@infradead.org>
  Sasha Levin <sashal@kernel.org>
  Shou-Chieh Hsu <shouchieh@chromium.org>
  Shuah Khan <skhan@linuxfoundation.org>
  Steve Capper <steve.capper@arm.com>
  Steve Wahl <steve.wahl@hpe.com>
  Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
  Sven Schnelle <svens@linux.ibm.com>
  Tony Lindgren <tony@atomide.com>
  Vasily Gorbik <gor@linux.ibm.com>
  Waiman Long <longman@redhat.com>
  Wan Jiabing <wanjiabing@vivo.com>
  Will Deacon <will@kernel.org>
  Yuanyuan Zhong <yzhong@purestorage.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                              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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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
   a7eb81c1d11a..19bfeb47e96b  19bfeb47e96bb342d8c43a8ba0e68baf053b0dfc -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 06:43:27 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 06:43:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119741.226373 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc0O5-0005ft-DE; Thu, 29 Apr 2021 06:43:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119741.226373; Thu, 29 Apr 2021 06:43:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc0O5-0005fm-AI; Thu, 29 Apr 2021 06:43:01 +0000
Received: by outflank-mailman (input) for mailman id 119741;
 Thu, 29 Apr 2021 06:43:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lc0O4-0005fe-Bk; Thu, 29 Apr 2021 06:43:00 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lc0O4-0006E5-5a; Thu, 29 Apr 2021 06:43:00 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lc0O3-0006DS-Th; Thu, 29 Apr 2021 06:42:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lc0O3-00068E-TE; Thu, 29 Apr 2021 06:42:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=MnWnoIG3ylXDxV/XKDpItESoYEwdqMQYJ3Wh8rxJJo0=; b=5lxHgUvZmhSjwxspe+GzP3UAtM
	JjW7p/N+3L/rsViIbt4+iFcvmYDWE1bwYO0G58XFlYnhe1OQq8bG4UMXULOT2Kin7qnsd6Cw3sR5M
	9DyVmqkFO5KXEEeEiFrHBlO9rR78yJma0/r2XqpPD/zpQJe2K7HS0ci0q7yVL1MSE074=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161504-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161504: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=01c0ab90beb3d2a80f913d4a0866b4e92656a42a
X-Osstest-Versions-That:
    ovmf=5b90b8abb4049e2d98040f548ad23b6ab22d5d19
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 06:42:59 +0000

flight 161504 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161504/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 01c0ab90beb3d2a80f913d4a0866b4e92656a42a
baseline version:
 ovmf                 5b90b8abb4049e2d98040f548ad23b6ab22d5d19

Last test of basis   161485  2021-04-27 13:41:25 Z    1 days
Testing same since   161504  2021-04-28 12:10:11 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bret Barkelew <bret.barkelew@microsoft.com>
  Pierre Gondois <Pierre.Gondois@arm.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   5b90b8abb4..01c0ab90be  01c0ab90beb3d2a80f913d4a0866b4e92656a42a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 06:59:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 06:59:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119748.226388 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc0dm-0006fd-Np; Thu, 29 Apr 2021 06:59:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119748.226388; Thu, 29 Apr 2021 06: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 1lc0dm-0006fW-Kw; Thu, 29 Apr 2021 06:59:14 +0000
Received: by outflank-mailman (input) for mailman id 119748;
 Thu, 29 Apr 2021 06:59:13 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Zyx=J2=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lc0dl-0006fR-SX
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 06:59:13 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id f7268968-87ac-4a47-b37f-dd0b72a0eeef;
 Thu, 29 Apr 2021 06:59:11 +0000 (UTC)
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 3BE8831B;
 Wed, 28 Apr 2021 23:59:11 -0700 (PDT)
Received: from [10.57.1.124] (unknown [10.57.1.124])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 413AD3F73B;
 Wed, 28 Apr 2021 23:59: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: f7268968-87ac-4a47-b37f-dd0b72a0eeef
Subject: Re: [PATCH v2 02/10] arm/domain: Get rid of READ/WRITE_SYSREG32
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-3-michal.orzel@arm.com>
 <718ea929-edd0-1a30-65f2-f3d0ca17756b@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <2165036b-3ca5-6ebe-5c8d-1a43d9540fc2@arm.com>
Date: Thu, 29 Apr 2021 08:58:59 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <718ea929-edd0-1a30-65f2-f3d0ca17756b@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Julien,

On 27.04.2021 11:45, Julien Grall wrote:
> Hi Michal,
> 
> On 27/04/2021 10:35, Michal Orzel wrote:
>> AArch64 registers are 64bit whereas AArch32 registers
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 registers have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
>>
>> Modify type of register cntkctl to register_t.
>> Modify accesses to thumbee registers to use READ/WRITE_SYSREG.
>> No need to change type of thumbee registers to register_t as they
>> only exist on arm32.
> 
> This is a bit ambiguous, I think in this context you mean it is only usable by 32-bit domain but should really be only accessed on Armv7 as they were restrospectively dropped on Armv8.
> 
Is the following ok for a v3?:
"
...
Modify type of register cntkctl to register_t.

Modify accesses to thumbee registers to use READ/WRITE_SYSREG.
Thumbee registers are only usable by a 32bit domain and in fact
should be only accessed on ARMv7 as they were retrospectively dropped
on ARMv8.
"
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> ---
>> Changes since v1:
>> -Move modification of ACTLR into seperate patch
>> ---
>>   xen/arch/arm/domain.c        | 18 +++++++++---------
>>   xen/include/asm-arm/domain.h |  2 +-
>>   2 files changed, 10 insertions(+), 10 deletions(-)
>>
>> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
>> index bdd3d3e5b5..621f518b83 100644
>> --- a/xen/arch/arm/domain.c
>> +++ b/xen/arch/arm/domain.c
>> @@ -113,13 +113,13 @@ static void ctxt_switch_from(struct vcpu *p)
>>       p->arch.tpidr_el1 = READ_SYSREG(TPIDR_EL1);
>>         /* Arch timer */
>> -    p->arch.cntkctl = READ_SYSREG32(CNTKCTL_EL1);
>> +    p->arch.cntkctl = READ_SYSREG(CNTKCTL_EL1);
>>       virt_timer_save(p);
>>         if ( is_32bit_domain(p->domain) && cpu_has_thumbee )
>>       {
>> -        p->arch.teecr = READ_SYSREG32(TEECR32_EL1);
>> -        p->arch.teehbr = READ_SYSREG32(TEEHBR32_EL1);
>> +        p->arch.teecr = READ_SYSREG(TEECR32_EL1);
>> +        p->arch.teehbr = READ_SYSREG(TEEHBR32_EL1);
>>       }
>>     #ifdef CONFIG_ARM_32
>> @@ -175,7 +175,7 @@ static void ctxt_switch_from(struct vcpu *p)
>>     static void ctxt_switch_to(struct vcpu *n)
>>   {
>> -    uint32_t vpidr;
>> +    register_t vpidr;
>>         /* When the idle VCPU is running, Xen will always stay in hypervisor
>>        * mode. Therefore we don't need to restore the context of an idle VCPU.
>> @@ -183,8 +183,8 @@ static void ctxt_switch_to(struct vcpu *n)
>>       if ( is_idle_vcpu(n) )
>>           return;
>>   -    vpidr = READ_SYSREG32(MIDR_EL1);
>> -    WRITE_SYSREG32(vpidr, VPIDR_EL2);
>> +    vpidr = READ_SYSREG(MIDR_EL1);
>> +    WRITE_SYSREG(vpidr, VPIDR_EL2);
>>       WRITE_SYSREG(n->arch.vmpidr, VMPIDR_EL2);
>>         /* VGIC */
>> @@ -257,8 +257,8 @@ static void ctxt_switch_to(struct vcpu *n)
>>         if ( is_32bit_domain(n->domain) && cpu_has_thumbee )
>>       {
>> -        WRITE_SYSREG32(n->arch.teecr, TEECR32_EL1);
>> -        WRITE_SYSREG32(n->arch.teehbr, TEEHBR32_EL1);
>> +        WRITE_SYSREG(n->arch.teecr, TEECR32_EL1);
>> +        WRITE_SYSREG(n->arch.teehbr, TEEHBR32_EL1);
>>       }
>>     #ifdef CONFIG_ARM_32
>> @@ -274,7 +274,7 @@ static void ctxt_switch_to(struct vcpu *n)
>>         /* This is could trigger an hardware interrupt from the virtual
>>        * timer. The interrupt needs to be injected into the guest. */
>> -    WRITE_SYSREG32(n->arch.cntkctl, CNTKCTL_EL1);
>> +    WRITE_SYSREG(n->arch.cntkctl, CNTKCTL_EL1);
>>       virt_timer_restore(n);
>>   }
>>   diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h
>> index 0a74df9931..c6b59ee755 100644
>> --- a/xen/include/asm-arm/domain.h
>> +++ b/xen/include/asm-arm/domain.h
>> @@ -190,7 +190,7 @@ struct arch_vcpu
>>       struct vgic_cpu vgic;
>>         /* Timer registers  */
>> -    uint32_t cntkctl;
>> +    register_t cntkctl;
>>         struct vtimer phys_timer;
>>       struct vtimer virt_timer;
>>
> 


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 07:10:46 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 07:10:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119753.226401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc0or-0008NY-RV; Thu, 29 Apr 2021 07:10:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119753.226401; Thu, 29 Apr 2021 07:10: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 1lc0or-0008NR-OW; Thu, 29 Apr 2021 07:10:41 +0000
Received: by outflank-mailman (input) for mailman id 119753;
 Thu, 29 Apr 2021 07:10:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Zyx=J2=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lc0oq-0008NM-LQ
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 07:10:40 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id e1329bdb-66d4-4a96-9d37-ff09e26ea398;
 Thu, 29 Apr 2021 07:10:39 +0000 (UTC)
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 BAAB331B;
 Thu, 29 Apr 2021 00:10:38 -0700 (PDT)
Received: from [10.57.1.124] (unknown [10.57.1.124])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C70FF3F73B;
 Thu, 29 Apr 2021 00:10: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: e1329bdb-66d4-4a96-9d37-ff09e26ea398
Subject: Re: [PATCH v2 03/10] arm: Modify type of actlr to register_t
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-4-michal.orzel@arm.com>
 <160ccd79-1a6e-059f-82a7-996c8bcc68f3@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <9c2f6d85-2b03-0360-ffa6-a3433a30a9bd@arm.com>
Date: Thu, 29 Apr 2021 09:10:35 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <160ccd79-1a6e-059f-82a7-996c8bcc68f3@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Hi Julien,

On 27.04.2021 11:47, Julien Grall wrote:
> Hi Michal,
> 
> On 27/04/2021 10:35, Michal Orzel wrote:
>> AArch64 registers are 64bit whereas AArch32 registers
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 registers have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
> 
> This is a pretty generic message but doesn't really explain the change itself and point out this is a bug (possibly latent on current HW) because it is implementation defined. IOW a CPU implementer may already have decided to use the top 32-bit without our knowledge.
> 
> Cheers,
> Is the following ok?
"
AArch64 registers are 64bit whereas AArch32 registers
are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
we should get rid of helpers READ/WRITE_SYSREG32
in favour of using READ/WRITE_SYSREG.
We should also use register_t type when reading sysregs
which can correspond to uint64_t or uint32_t.
Even though many AArch64 registers have upper 32bit reserved
it does not mean that they can't be widen in the future.

ACTLR_EL1 system register bits are implementation defined
which means it is possibly a bug on current HW as the CPU
implementer may already have decided to use the top 32bit.
"

Cheers
Michal


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 07:14:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 07:14:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119757.226413 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc0sI-0008VT-Bm; Thu, 29 Apr 2021 07:14:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119757.226413; Thu, 29 Apr 2021 07:14: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 1lc0sI-0008VM-88; Thu, 29 Apr 2021 07:14:14 +0000
Received: by outflank-mailman (input) for mailman id 119757;
 Thu, 29 Apr 2021 07:14:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Zyx=J2=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lc0sG-0008VG-Fl
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 07:14:12 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 9d48841d-94dd-4d7f-9bc8-78ef56a72cbc;
 Thu, 29 Apr 2021 07:14:10 +0000 (UTC)
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 47AAC31B;
 Thu, 29 Apr 2021 00:14:10 -0700 (PDT)
Received: from [10.57.1.124] (unknown [10.57.1.124])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 313433F73B;
 Thu, 29 Apr 2021 00: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: 9d48841d-94dd-4d7f-9bc8-78ef56a72cbc
Subject: Re: [PATCH v2 05/10] arm/gic: Get rid of READ/WRITE_SYSREG32
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-6-michal.orzel@arm.com>
 <c530ba7a-a64a-efad-cb57-0a174d0676c0@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <50835a70-6cc6-a53d-4594-9ce33f8067fc@arm.com>
Date: Thu, 29 Apr 2021 09:14:07 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <c530ba7a-a64a-efad-cb57-0a174d0676c0@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Julien,

On 27.04.2021 12:02, Julien Grall wrote:
> 
> 
> On 27/04/2021 10:35, Michal Orzel wrote:
>> AArch64 registers are 64bit whereas AArch32 registers
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 registers have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
>>
>> Modify types of following members of struct gic_v3 to register_t:
>> -vmcr
>> -sre_el1
>> -apr0
>> -apr1
>>
>> Add new macro GICC_IAR_INTID_MASK containing the mask
>> for INTID field of ICC_IAR0/1_EL1 register.
>>
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> ---
>> Changes since v1:
>> -Remove hcr member of gic_v3 in a seperate patch
>> -Add macro GICC_IAR_INTID_MASK
> 
> This change needs to be explained in the commit message. Saying something like:
> 
> "Only the first 23-bits of IAR contains the interrupt number. The rest are RES0. Therefore, take the opportunity to mask the bits [23:31] as they should be used for an IRQ number (we don't know how the top bits will be used).
> "
> 
Ok, will change in v3.
>> -Remove explicit cast in favor of implicit cast
>> ---
>>   xen/arch/arm/gic-v3-lpi.c         |  2 +-
>>   xen/arch/arm/gic-v3.c             | 98 ++++++++++++++++---------------
>>   xen/include/asm-arm/gic.h         |  6 +-
>>   xen/include/asm-arm/gic_v3_defs.h |  2 +
>>   4 files changed, 58 insertions(+), 50 deletions(-)
>>
>> diff --git a/xen/arch/arm/gic-v3-lpi.c b/xen/arch/arm/gic-v3-lpi.c
>> index 869bc97fa1..e1594dd20e 100644
>> --- a/xen/arch/arm/gic-v3-lpi.c
>> +++ b/xen/arch/arm/gic-v3-lpi.c
>> @@ -178,7 +178,7 @@ void gicv3_do_LPI(unsigned int lpi)
>>       irq_enter();
>>         /* EOI the LPI already. */
>> -    WRITE_SYSREG32(lpi, ICC_EOIR1_EL1);
>> +    WRITE_SYSREG(lpi, ICC_EOIR1_EL1);
>>         /* Find out if a guest mapped something to this physical LPI. */
>>       hlpip = gic_get_host_lpi(lpi);
>> diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
>> index ac28013c19..b86f040589 100644
>> --- a/xen/arch/arm/gic-v3.c
>> +++ b/xen/arch/arm/gic-v3.c
>> @@ -246,12 +246,12 @@ static void gicv3_ich_write_lr(int lr, uint64_t val)
>>    */
>>   static void gicv3_enable_sre(void)
>>   {
>> -    uint32_t val;
>> +    register_t val;
>>   -    val = READ_SYSREG32(ICC_SRE_EL2);
>> +    val = READ_SYSREG(ICC_SRE_EL2);
>>       val |= GICC_SRE_EL2_SRE;
>>   -    WRITE_SYSREG32(val, ICC_SRE_EL2);
>> +    WRITE_SYSREG(val, ICC_SRE_EL2);
>>       isb();
>>   }
>>   @@ -315,16 +315,16 @@ static void restore_aprn_regs(const union gic_state_data *d)
>>       switch ( gicv3.nr_priorities )
>>       {
>>       case 7:
>> -        WRITE_SYSREG32(d->v3.apr0[2], ICH_AP0R2_EL2);
>> -        WRITE_SYSREG32(d->v3.apr1[2], ICH_AP1R2_EL2);
>> +        WRITE_SYSREG(d->v3.apr0[2], ICH_AP0R2_EL2);
>> +        WRITE_SYSREG(d->v3.apr1[2], ICH_AP1R2_EL2);
>>           /* Fall through */
>>       case 6:
>> -        WRITE_SYSREG32(d->v3.apr0[1], ICH_AP0R1_EL2);
>> -        WRITE_SYSREG32(d->v3.apr1[1], ICH_AP1R1_EL2);
>> +        WRITE_SYSREG(d->v3.apr0[1], ICH_AP0R1_EL2);
>> +        WRITE_SYSREG(d->v3.apr1[1], ICH_AP1R1_EL2);
>>           /* Fall through */
>>       case 5:
>> -        WRITE_SYSREG32(d->v3.apr0[0], ICH_AP0R0_EL2);
>> -        WRITE_SYSREG32(d->v3.apr1[0], ICH_AP1R0_EL2);
>> +        WRITE_SYSREG(d->v3.apr0[0], ICH_AP0R0_EL2);
>> +        WRITE_SYSREG(d->v3.apr1[0], ICH_AP1R0_EL2);
>>           break;
>>       default:
>>           BUG();
>> @@ -338,16 +338,16 @@ static void save_aprn_regs(union gic_state_data *d)
>>       switch ( gicv3.nr_priorities )
>>       {
>>       case 7:
>> -        d->v3.apr0[2] = READ_SYSREG32(ICH_AP0R2_EL2);
>> -        d->v3.apr1[2] = READ_SYSREG32(ICH_AP1R2_EL2);
>> +        d->v3.apr0[2] = READ_SYSREG(ICH_AP0R2_EL2);
>> +        d->v3.apr1[2] = READ_SYSREG(ICH_AP1R2_EL2);
>>           /* Fall through */
>>       case 6:
>> -        d->v3.apr0[1] = READ_SYSREG32(ICH_AP0R1_EL2);
>> -        d->v3.apr1[1] = READ_SYSREG32(ICH_AP1R1_EL2);
>> +        d->v3.apr0[1] = READ_SYSREG(ICH_AP0R1_EL2);
>> +        d->v3.apr1[1] = READ_SYSREG(ICH_AP1R1_EL2);
>>           /* Fall through */
>>       case 5:
>> -        d->v3.apr0[0] = READ_SYSREG32(ICH_AP0R0_EL2);
>> -        d->v3.apr1[0] = READ_SYSREG32(ICH_AP1R0_EL2);
>> +        d->v3.apr0[0] = READ_SYSREG(ICH_AP0R0_EL2);
>> +        d->v3.apr1[0] = READ_SYSREG(ICH_AP1R0_EL2);
>>           break;
>>       default:
>>           BUG();
>> @@ -371,15 +371,15 @@ static void gicv3_save_state(struct vcpu *v)
>>       dsb(sy);
>>       gicv3_save_lrs(v);
>>       save_aprn_regs(&v->arch.gic);
>> -    v->arch.gic.v3.vmcr = READ_SYSREG32(ICH_VMCR_EL2);
>> -    v->arch.gic.v3.sre_el1 = READ_SYSREG32(ICC_SRE_EL1);
>> +    v->arch.gic.v3.vmcr = READ_SYSREG(ICH_VMCR_EL2);
>> +    v->arch.gic.v3.sre_el1 = READ_SYSREG(ICC_SRE_EL1);
>>   }
>>     static void gicv3_restore_state(const struct vcpu *v)
>>   {
>> -    uint32_t val;
>> +    register_t val;
>>   -    val = READ_SYSREG32(ICC_SRE_EL2);
>> +    val = READ_SYSREG(ICC_SRE_EL2);
>>       /*
>>        * Don't give access to system registers when the guest is using
>>        * GICv2
>> @@ -388,7 +388,7 @@ static void gicv3_restore_state(const struct vcpu *v)
>>           val &= ~GICC_SRE_EL2_ENEL1;
>>       else
>>           val |= GICC_SRE_EL2_ENEL1;
>> -    WRITE_SYSREG32(val, ICC_SRE_EL2);
>> +    WRITE_SYSREG(val, ICC_SRE_EL2);
>>         /*
>>        * VFIQEn is RES1 if ICC_SRE_EL1.SRE is 1. This causes a Group0
>> @@ -398,9 +398,9 @@ static void gicv3_restore_state(const struct vcpu *v)
>>        * want before starting to mess with the rest of the GIC, and
>>        * VMCR_EL1 in particular.
>>        */
>> -    WRITE_SYSREG32(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
>> +    WRITE_SYSREG(v->arch.gic.v3.sre_el1, ICC_SRE_EL1);
>>       isb();
>> -    WRITE_SYSREG32(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
>> +    WRITE_SYSREG(v->arch.gic.v3.vmcr, ICH_VMCR_EL2);
>>       restore_aprn_regs(&v->arch.gic);
>>       gicv3_restore_lrs(v);
>>   @@ -468,24 +468,25 @@ static void gicv3_mask_irq(struct irq_desc *irqd)
>>   static void gicv3_eoi_irq(struct irq_desc *irqd)
>>   {
>>       /* Lower the priority */
>> -    WRITE_SYSREG32(irqd->irq, ICC_EOIR1_EL1);
>> +    WRITE_SYSREG(irqd->irq, ICC_EOIR1_EL1);
>>       isb();
>>   }
>>     static void gicv3_dir_irq(struct irq_desc *irqd)
>>   {
>>       /* Deactivate */
>> -    WRITE_SYSREG32(irqd->irq, ICC_DIR_EL1);
>> +    WRITE_SYSREG(irqd->irq, ICC_DIR_EL1);
>>       isb();
>>   }
>>     static unsigned int gicv3_read_irq(void)
>>   {
>> -    unsigned int irq = READ_SYSREG32(ICC_IAR1_EL1);
>> +    register_t irq = READ_SYSREG(ICC_IAR1_EL1);
>>         dsb(sy);
>>   -    return irq;
>> +    /* IRQs are encoded using 23bit. */
>> +    return (irq & GICC_IAR_INTID_MASK);
>>   }
>>     /*
>> @@ -857,16 +858,16 @@ static int gicv3_cpu_init(void)
>>       gicv3_enable_sre();
>>         /* No priority grouping */
>> -    WRITE_SYSREG32(0, ICC_BPR1_EL1);
>> +    WRITE_SYSREG(0, ICC_BPR1_EL1);
>>         /* Set priority mask register */
>> -    WRITE_SYSREG32(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
>> +    WRITE_SYSREG(DEFAULT_PMR_VALUE, ICC_PMR_EL1);
>>         /* EOI drops priority, DIR deactivates the interrupt (mode 1) */
>> -    WRITE_SYSREG32(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
>> +    WRITE_SYSREG(GICC_CTLR_EL1_EOImode_drop, ICC_CTLR_EL1);
>>         /* Enable Group1 interrupts */
>> -    WRITE_SYSREG32(1, ICC_IGRPEN1_EL1);
>> +    WRITE_SYSREG(1, ICC_IGRPEN1_EL1);
>>         /* Sync at once at the end of cpu interface configuration */
>>       isb();
>> @@ -876,15 +877,15 @@ static int gicv3_cpu_init(void)
>>     static void gicv3_cpu_disable(void)
>>   {
>> -    WRITE_SYSREG32(0, ICC_CTLR_EL1);
>> +    WRITE_SYSREG(0, ICC_CTLR_EL1);
>>       isb();
>>   }
>>     static void gicv3_hyp_init(void)
>>   {
>> -    uint32_t vtr;
>> +    register_t vtr;
>>   -    vtr = READ_SYSREG32(ICH_VTR_EL2);
>> +    vtr = READ_SYSREG(ICH_VTR_EL2);
>>       gicv3_info.nr_lrs  = (vtr & ICH_VTR_NRLRGS) + 1;
>>       gicv3.nr_priorities = ((vtr >> ICH_VTR_PRIBITS_SHIFT) &
>>                             ICH_VTR_PRIBITS_MASK) + 1;
>> @@ -892,8 +893,8 @@ static void gicv3_hyp_init(void)
>>       if ( !((gicv3.nr_priorities > 4) && (gicv3.nr_priorities < 8)) )
>>           panic("GICv3: Invalid number of priority bits\n");
>>   -    WRITE_SYSREG32(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
>> -    WRITE_SYSREG32(GICH_HCR_EN, ICH_HCR_EL2);
>> +    WRITE_SYSREG(ICH_VMCR_EOI | ICH_VMCR_VENG1, ICH_VMCR_EL2);
>> +    WRITE_SYSREG(GICH_HCR_EN, ICH_HCR_EL2);
>>   }
>>     /* Set up the per-CPU parts of the GIC for a secondary CPU */
>> @@ -917,11 +918,11 @@ out:
>>     static void gicv3_hyp_disable(void)
>>   {
>> -    uint32_t hcr;
>> +    register_t hcr;
>>   -    hcr = READ_SYSREG32(ICH_HCR_EL2);
>> +    hcr = READ_SYSREG(ICH_HCR_EL2);
>>       hcr &= ~GICH_HCR_EN;
>> -    WRITE_SYSREG32(hcr, ICH_HCR_EL2);
>> +    WRITE_SYSREG(hcr, ICH_HCR_EL2);
>>       isb();
>>   }
>>   @@ -1140,39 +1141,44 @@ static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
>>     static void gicv3_hcr_status(uint32_t flag, bool status)
>>   {
>> -    uint32_t hcr;
>> +    register_t hcr;
>>   -    hcr = READ_SYSREG32(ICH_HCR_EL2);
>> +    hcr = READ_SYSREG(ICH_HCR_EL2);
>>       if ( status )
>> -        WRITE_SYSREG32(hcr | flag, ICH_HCR_EL2);
>> +        WRITE_SYSREG(hcr | flag, ICH_HCR_EL2);
>>       else
>> -        WRITE_SYSREG32(hcr & (~flag), ICH_HCR_EL2);
>> +        WRITE_SYSREG(hcr & (~flag), ICH_HCR_EL2);
>>       isb();
>>   }
>>     static unsigned int gicv3_read_vmcr_priority(void)
>>   {
>> -   return ((READ_SYSREG32(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
>> +   return ((READ_SYSREG(ICH_VMCR_EL2) >> ICH_VMCR_PRIORITY_SHIFT) &
>>               ICH_VMCR_PRIORITY_MASK);
>>   }
>>     /* Only support reading GRP1 APRn registers */
>>   static unsigned int gicv3_read_apr(int apr_reg)
>>   {
>> +    register_t apr;
>> +
>>       switch ( apr_reg )
>>       {
>>       case 0:
>>           ASSERT(gicv3.nr_priorities > 4 && gicv3.nr_priorities < 8);
>> -        return READ_SYSREG32(ICH_AP1R0_EL2);
>> +        apr = READ_SYSREG(ICH_AP1R0_EL2);
>>       case 1:
>>           ASSERT(gicv3.nr_priorities > 5 && gicv3.nr_priorities < 8);
>> -        return READ_SYSREG32(ICH_AP1R1_EL2);
>> +        apr = READ_SYSREG(ICH_AP1R1_EL2);
>>       case 2:
>>           ASSERT(gicv3.nr_priorities > 6 && gicv3.nr_priorities < 8);
>> -        return READ_SYSREG32(ICH_AP1R2_EL2);
>> +        apr = READ_SYSREG(ICH_AP1R2_EL2);
>>       default:
>>           BUG();
>>       }
>> +
>> +    /* Number of priority levels do not exceed 32bit. */
>> +    return apr;
>>   }
>>     static bool gicv3_read_pending_state(struct irq_desc *irqd)
>> diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h
>> index 5069ab4aac..c7f0c343d1 100644
>> --- a/xen/include/asm-arm/gic.h
>> +++ b/xen/include/asm-arm/gic.h
>> @@ -171,9 +171,9 @@
>>    * GICv3 registers that needs to be saved/restored
>>    */
>>   struct gic_v3 {
>> -    uint32_t vmcr, sre_el1;
>> -    uint32_t apr0[4];
>> -    uint32_t apr1[4];
>> +    register_t vmcr, sre_el1;
>> +    register_t apr0[4];
>> +    register_t apr1[4];
>>       uint64_t lr[16];
>>   };
>>   #endif
>> diff --git a/xen/include/asm-arm/gic_v3_defs.h b/xen/include/asm-arm/gic_v3_defs.h
>> index 5a578e7c11..34ed5f857d 100644
>> --- a/xen/include/asm-arm/gic_v3_defs.h
>> +++ b/xen/include/asm-arm/gic_v3_defs.h
>> @@ -45,6 +45,8 @@
>>   #define GICC_SRE_EL2_DIB             (1UL << 2)
>>   #define GICC_SRE_EL2_ENEL1           (1UL << 3)
>>   +#define GICC_IAR_INTID_MASK          (0xFFFFFF)
>> +
>>   /* Additional bits in GICD_TYPER defined by GICv3 */
>>   #define GICD_TYPE_ID_BITS_SHIFT 19
>>   #define GICD_TYPE_ID_BITS(r)    ((((r) >> GICD_TYPE_ID_BITS_SHIFT) & 0x1f) + 1)
>>
> 


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 07:16:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 07:16:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119765.226425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc0ui-0000F4-Tm; Thu, 29 Apr 2021 07:16:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119765.226425; Thu, 29 Apr 2021 07: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 1lc0ui-0000Ex-PH; Thu, 29 Apr 2021 07:16:44 +0000
Received: by outflank-mailman (input) for mailman id 119765;
 Thu, 29 Apr 2021 07:16:44 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Zyx=J2=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lc0ui-0000Er-57
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 07:16:44 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id a2771862-c108-4ab4-b06c-17cc1c38aae8;
 Thu, 29 Apr 2021 07:16:43 +0000 (UTC)
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 2598531B;
 Thu, 29 Apr 2021 00:16:43 -0700 (PDT)
Received: from [10.57.1.124] (unknown [10.57.1.124])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 340663F73B;
 Thu, 29 Apr 2021 00:16: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: a2771862-c108-4ab4-b06c-17cc1c38aae8
Subject: Re: [PATCH v2 07/10] arm/mm: Get rid of READ/WRITE_SYSREG32
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-8-michal.orzel@arm.com>
 <04adaf9b-e2fe-460e-35e4-09e5e5ff7b6f@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <00f462b7-c5db-5228-cad2-13c4b6e82c6e@arm.com>
Date: Thu, 29 Apr 2021 09:16:40 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <04adaf9b-e2fe-460e-35e4-09e5e5ff7b6f@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Julien,

On 27.04.2021 11:59, Julien Grall wrote:
> 
> 
> On 27/04/2021 10:35, Michal Orzel wrote:
>> AArch64 registers are 64bit whereas AArch32 registers
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 registers have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
>>
>> Modify SCTLR_EL2 accesses to use READ/WRITE_SYSREG.
>>
>> SCTLR_EL2 already has bits defined in the range [32:63].
>> The ARM ARM defines them as unknown if implemented.
> 
> This is a bit ambiguous.
> 
>> By writing in head.S SCTLR_EL2_SET we are zeroing the upper
>> 32bit half which is correct but referring to this sysreg
>> as 32bit is a latent bug because the top 32bit was not used
>> by Xen.
> 
> This seems to suggest the patch below will call SCTLR_EL2_SET whereas this is already existing code.
> 
>>
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> ---
>> Changes since v1:
>> -Update commit message with SCTLR_EL2 analysis
>> ---
>>   xen/arch/arm/mm.c    | 2 +-
>>   xen/arch/arm/traps.c | 2 +-
>>   2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
>> index 59f8a3f15f..0e07335291 100644
>> --- a/xen/arch/arm/mm.c
>> +++ b/xen/arch/arm/mm.c
>> @@ -613,7 +613,7 @@ void __init remove_early_mappings(void)
>>    */
>>   static void xen_pt_enforce_wnx(void)
>>   {
>> -    WRITE_SYSREG32(READ_SYSREG32(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2);
>> +    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.
>> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
>> index c7acdb2087..e7384381cc 100644
>> --- a/xen/arch/arm/traps.c
>> +++ b/xen/arch/arm/traps.c
>> @@ -915,7 +915,7 @@ static void _show_registers(const struct cpu_user_regs *regs,
>>       printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
>>       printk("\n");
>>   -    printk(" SCTLR_EL2: %08"PRIx32"\n", READ_SYSREG32(SCTLR_EL2));
>> +    printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));
> 
> Your commit title suggests that you will modify mm.c but you are also modifying traps.c. So how about the following commit message:
> 
> "
> xen/arm: Always access SCTLR_EL2 using {READ, WRITE}_SYSREG()
> 
> The Armv8 specification describes the system register as a 64-bit value on AArch64 and 32-bit value on AArch32 (same as Armv7).
> 
> Unfortunately, Xen is accessing the system registers using {READ, WRITE}_SYSREG32() which means the top 32-bit are clobbered.
> 
> This is only a latent bug so far because Xen will not yet use the top 32-bit.
> 
> There is also no change in behavior because arch/arm/arm64/head.S will initialize SCTLR_EL2 to a sane value with the top 32-bit zeroed.
> "
> 
Thank you. I will modify the commit msg according to what you suggested.
> Cheers,
> 


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 08:24:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 08:24:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119775.226437 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc1xW-0006c3-5F; Thu, 29 Apr 2021 08:23:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119775.226437; Thu, 29 Apr 2021 08:23: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 1lc1xW-0006bw-1z; Thu, 29 Apr 2021 08:23:42 +0000
Received: by outflank-mailman (input) for mailman id 119775;
 Thu, 29 Apr 2021 08:23:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sKbL=J2=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lc1xU-0006bp-RA
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 08:23:41 +0000
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (unknown
 [40.107.5.41]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 797232e1-c0b4-43b4-bc57-bb3c6df22bd1;
 Thu, 29 Apr 2021 08:23:38 +0000 (UTC)
Received: from DBBPR09CA0014.eurprd09.prod.outlook.com (2603:10a6:10:c0::26)
 by VI1PR08MB3181.eurprd08.prod.outlook.com (2603:10a6:803:3f::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20; Thu, 29 Apr
 2021 08:23:33 +0000
Received: from DB5EUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:c0:cafe::eb) by DBBPR09CA0014.outlook.office365.com
 (2603:10a6:10:c0::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend
 Transport; Thu, 29 Apr 2021 08:23:33 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT043.mail.protection.outlook.com (10.152.20.236) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 08:23:32 +0000
Received: ("Tessian outbound aff50003470c:v91");
 Thu, 29 Apr 2021 08:23:32 +0000
Received: from fc3e2f541adb.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 9F9FDD2B-7556-40C5-BABB-03D62B346EE1.1; 
 Thu, 29 Apr 2021 08:23:20 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id fc3e2f541adb.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 29 Apr 2021 08:23:20 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AM5PR0802MB2564.eurprd08.prod.outlook.com (2603:10a6:203:a0::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Thu, 29 Apr
 2021 08:23:13 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4065.027; Thu, 29 Apr 2021
 08:23:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 797232e1-c0b4-43b4-bc57-bb3c6df22bd1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pZIK5vuh14CHPMpdBD0xK/63vdFpBZJUtUfoFBcm2D4=;
 b=RWojO5BNhFmI5K0vO4tlpYDkIIutp/nKL8MuTzfnxO8hnrRv0dWF1hLGE7dzC0SadSMR8W9Mfh3YOrJoPDeS+yeByEH/Qi0yqH69IJL2+prsZDMcytBlmlmYEUVxjARQyMnE5mYrUq0SSK/mNqTFNt5yg5Iu6ceNCmWt4NQkt8A=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: fb1c189674faa9b1
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lLe7gGKcvIBaNoeSQkaZxvVC47BaMB6IXJ+II+X6iyGng3/Oxxg6JQUo8blCSFg7qnI6KdIIZ3C5X4r6N8OqKrIKfEKbKtWH8+QlUtIzz2KSvm1jMhBFwic2l8o5SHf9lqFYEy7/7vnWuNvLuNsSXVmpVzGOiVb9NKK8jiXoi0pI9ny/rHfwtHmZnhJLEvO8cHRK/bqz9Q4T1gpNsGUNINCv66WZfmXNKMPuDK4jqfkfdEbEwecKJ3G/1hPGGJoq//cCdu+FSDrDyf3k5GRBgzKFn75Gt3RGCWMTMStJRWoRKhPechJhkGvmoJoGo/+LznmO/Z5WGM1ZOySyDAEn0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pZIK5vuh14CHPMpdBD0xK/63vdFpBZJUtUfoFBcm2D4=;
 b=Vc5ISsDsyCuAehU3Z7OHjsXgng6aXz3gOeKymTK+kc3eADjANwbACUPeHCajLpRLWytYDdFyhT30pg16G2Qwct2fnTyrioeuK6ZbLHAGXEt6pGuip0qgriw/74RDUbDSeIgPYxQaFW7rENUbjz5zGD2xp51ykF+o0Z2r3/Ere/Ekf1f6hVe9KSyK8OEZ6SOm6iG0Gc5KWK6t/mhOGuNvuhEdpboKd4oSY5T5R3y9ruvIRQCNovWxOC2BLfjIDOlPZGo/mQReopTpKNXt1oT36mcWRiEllqjlpRZHLG+c2kJ9sM6m7AJ6aHCL3IqZIGG3nOYRLdlr/y1hnLq12cOMiA==
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=pZIK5vuh14CHPMpdBD0xK/63vdFpBZJUtUfoFBcm2D4=;
 b=RWojO5BNhFmI5K0vO4tlpYDkIIutp/nKL8MuTzfnxO8hnrRv0dWF1hLGE7dzC0SadSMR8W9Mfh3YOrJoPDeS+yeByEH/Qi0yqH69IJL2+prsZDMcytBlmlmYEUVxjARQyMnE5mYrUq0SSK/mNqTFNt5yg5Iu6ceNCmWt4NQkt8A=
From: Rahul Singh <Rahul.Singh@arm.com>
To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
CC: xen-devel <xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@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>, Paul Durrant
	<paul@xen.org>, Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
Thread-Topic: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
Thread-Index: AQHXOrhr42FH3XtdSEulNtIMBWAh5arJwQ+AgAFrSIA=
Date: Thu, 29 Apr 2021 08:23:11 +0000
Message-ID: <C2FCB8EE-FDBF-4329-A867-8AF621620826@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
 <YIk8MYCeKi0eKkrg@Air-de-Roger>
In-Reply-To: <YIk8MYCeKi0eKkrg@Air-de-Roger>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 4de6f6a2-045c-4197-b63b-08d90ae81399
x-ms-traffictypediagnostic: AM5PR0802MB2564:|VI1PR08MB3181:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<VI1PR08MB3181659D5A07E67D327CC139FC5F9@VI1PR08MB3181.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:6790;OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 H6l1czu9KLr6j3eaPNed9TlJMM/+Atj7N1Cut3AVSRPMbJVWs7HOmL6fgLlMGItPC0qVcMzszPbFjeKr6N/9zEcZN7QvC+iwEDR99h+/z50G+iIGcAuD8YvxHu7P6sSNgJQb0/Ap+53mZYSMqN7FMAkSlbFCfSJyNoHFnrOCRB1cQ1FUtFJAlkyUUFZqPW7JWUm8NmHrWafzeF1q0axy9jvBgKmhV/Yolrjf0eTGCkmVeltpLkN3icLamSiRLmbVl92xmv1Pq8h4wzscVifZ8FpfE8SPsquKQDuri8w0wL8868Ct3zZRcye57aP/QkvgmkmiOoD6x9inUqmBU4qGBlG68r9Hqs28nucpEi9Fa+A0h1Xa4CI8p3oheytj9S7bbzBbrL1rgt4uRPzK7pPjK2RtyAFa87QGv39/bhJf+qNaDgSUZSg90kgNotKg9GXqhM8RqNZoZngxvWujoxcoYhWS6DiALWdV5H4Zei1fHvZYWPhrLXu6uWdFb83XnDMYu3r46yuQSeFGVoF2EULbJYHtEbn1XmflpY4chjIlTXZrPXi/KZUWeIaHJfCLEP8G2h9RK4pKmU1ux8XvPEwnXn7Uxl6XkqbwhGO4u2VPbsfsHqNMmryLIXYRYuh3s92FNW/wRnPHXx6h6DY2PCb9JpPKVJ77p5NqY5HMIDQJI2ZmINUXrXAyKf13yz4pxwfsiZa+nuUWoVJsuzXD7sdUkUVlfcCUuHcDygrG7LhXfIW0Qy9LrnBFKudE8oqmb8iz0KcaSDdjct3pyI4koxzlvQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(39850400004)(396003)(376002)(346002)(366004)(4326008)(76116006)(316002)(66556008)(5660300002)(8676002)(66476007)(6512007)(8936002)(6916009)(36756003)(54906003)(186003)(6506007)(26005)(2906002)(66446008)(30864003)(478600001)(33656002)(7416002)(6486002)(38100700002)(53546011)(86362001)(83380400001)(91956017)(64756008)(71200400001)(66946007)(2616005)(122000001)(2004002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
Content-Type: text/plain; charset="utf-8"
Content-ID: <0AC242645D1EB74FB703109700F21C6C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2564
Original-Authentication-Results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT043.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	4e05f640-c576-4d66-8516-08d90ae8074f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8BxpNwnVloLVksNrY0qPiQ7QJ9/1Fqmj6po8EzvLiT0ElkN3R9PIDmZgO3DoAAlWu8aHcdoLSZhL02F3ZU5QwOD9eJrPxGs/ovrU0gCNLOiAYWZaG4WergOO97CVJHPp5/Fhg3dOtL0Cin5KsF+S/UaUCjfL7K/5hpe0gbHD0vALOafhZa773qZiCm44sSHzzIlpFsQ2q6b0mwZLqwVl+l/9PAtQTpcCAhT39BVpykfjWu7SzWyew41zoZWWvI+loFxiw7z9m39RhdTPp+7uDzWiq4nFpjGXfr1K4QPjnyGZhVXb/JL+USFWoKxH3nNHSgpD5kY+2Qn4+RdclHGMcXqtivPDkqKUjIuHOEhdyk0qDDqNFVB+J8ceKCi5mXwaoOctOzTBtum5OFPsIJGf6QS/MjcNn5FsT593P0ve1Bp4KLZoUBRAfNt/H2MjaCzTL00pYlLIOfVCvSetafFb0pI7qKXaSERaozXHSPZoE1aqiLUbiMOfNi85GXaLGbDnR/Em72pVBXwUi+KLTHbbULKa2hUCQXJYyAu7gRtV1jgG+V+KmS8ZkvnNlMS4CQCzfyzj+1ITcvICyoFG1vqD0/NpZSm3KCyfJYyJe5r9KFM98yKuiGOPIMCmnPVXALgvZnmlNZ1f1J2gIPx6aA2uVMGbU0MiaY3axLJGlVFuGJ04AtqhiLp9iFoShub32pXhnISMPjmWKY39XLGbbCqjjUSRbNrtBSGKc/6iDpB7nBjPwr2BZ9jz7Xuc5c4hiR2PK/B+eaBNufcZ8JgbqyLj/8Ul8xKbJb2f49hVOdiLY/o=
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:(4636009)(136003)(39850400004)(376002)(396003)(346002)(46966006)(36840700001)(36756003)(6506007)(6862004)(36860700001)(2906002)(356005)(82310400003)(30864003)(81166007)(70586007)(47076005)(316002)(33656002)(478600001)(70206006)(5660300002)(54906003)(26005)(34020700004)(83380400001)(8936002)(86362001)(8676002)(186003)(82740400003)(6486002)(2616005)(6512007)(4326008)(53546011)(336012)(2004002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 08:23:32.7077
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4de6f6a2-045c-4197-b63b-08d90ae81399
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:
	DB5EUR03FT043.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3181

SGkgUm9nZXIsDQoNCj4gT24gMjggQXByIDIwMjEsIGF0IDExOjQyIGFtLCBSb2dlciBQYXUgTW9u
bsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4gd3JvdGU6DQo+IA0KPiBPbiBNb24sIEFwciAyNiwg
MjAyMSBhdCAwNToyMToyNlBNICswMTAwLCBSYWh1bCBTaW5naCB3cm90ZToNCj4+IE1TSSBpbnRl
cmNlcHQgcmVsYXRlZCBjb2RlIGlzIG5vdCB1c2VmdWwgZm9yIEFSTSB3aGVuIE1TSSBpbnRlcnJ1
cHRzIGFyZQ0KPj4gaW5qZWN0ZWQgdmlhIEdJQ3YzIElUUy4NCj4+IA0KPj4gVGhlcmVmb3JlIGlu
dHJvZHVjaW5nIHRoZSBuZXcgZmxhZyBDT05GSUdfUENJX01TSV9JTlRFUkNFUFQgdG8gZ2F0ZSB0
aGUNCj4+IE1TSSBjb2RlIGZvciBBUk0gaW4gY29tbW9uIGNvZGUgYW5kIGFsc28gaW1wbGVtZW50
ZWQgdGhlIHN0dWIgdmVyc2lvbg0KPj4gZm9yIHRoZSB1bnVzZWQgY29kZSBmb3IgQVJNIHRvIGF2
b2lkIGNvbXBpbGF0aW9uIGVycm9yIHdoZW4gSEFTX1BDSQ0KPj4gaXMgZW5hYmxlZCBmb3IgQVJN
Lg0KPj4gDQo+PiBObyBmdW5jdGlvbmFsIGNoYW5nZSBpbnRlbmRlZC4NCj4+IA0KPj4gU2lnbmVk
LW9mZi1ieTogUmFodWwgU2luZ2ggPHJhaHVsLnNpbmdoQGFybS5jb20+DQo+PiAtLS0NCj4+IENo
YW5nZXMgc2luY2UgdjE6DQo+PiAtIFJlbmFtZSBDT05GSUdfSEFTX1BDSV9NU0kgdG8gQ09ORklH
X1BDSV9NU0lfSU5URVJDRVBUDQo+PiAtIEltcGxlbWVudCBzdHViIHZlcnNpb24gb2YgdGhlIHVu
dXNlZCBmdW5jdGlvbiBmb3IgQVJNLg0KPj4gLSBNb3ZlIHVubmVlZGVkIGZ1bmN0aW9uIHRvIHg4
NiBmaWxlLg0KPj4gDQo+PiBDaGFuZ2VzIHNpbmNlIHYyOg0KPj4gLSBSZW5hbWUgZnVuY3Rpb24g
bmFtZSBhcyBwZXIgdGhlIGNvbW1lbnRzLg0KPj4gLSBDcmVhdGVkIGEgc2VwYXJhdGUgbm9uLWFy
Y2ggc3BlY2lmaWMgZmlsZSBtc2ktaW50ZXJjZXB0LmMuDQo+PiAtLS0NCj4+IHhlbi9hcmNoL3g4
Ni9LY29uZmlnICAgICAgICAgICAgICAgICAgICB8ICAxICsNCj4+IHhlbi9kcml2ZXJzL3Bhc3N0
aHJvdWdoL01ha2VmaWxlICAgICAgICB8ICAxICsNCj4+IHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo
L21zaS1pbnRlcmNlcHQuYyB8IDUyICsrKysrKysrKysrKysrKysrKysrKysrKysNCj4+IHhlbi9k
cml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jICAgICAgICAgICB8IDE2ICsrKy0tLS0tDQo+PiB4ZW4v
ZHJpdmVycy9wY2kvS2NvbmZpZyAgICAgICAgICAgICAgICAgfCAgNCArKw0KPj4geGVuL2RyaXZl
cnMvdnBjaS9NYWtlZmlsZSAgICAgICAgICAgICAgIHwgIDMgKy0NCj4+IHhlbi9kcml2ZXJzL3Zw
Y2kvaGVhZGVyLmMgICAgICAgICAgICAgICB8IDE5ICsrLS0tLS0tLQ0KPj4geGVuL2RyaXZlcnMv
dnBjaS9tc2l4LmMgICAgICAgICAgICAgICAgIHwgMjUgKysrKysrKysrKysrDQo+PiB4ZW4vZHJp
dmVycy92cGNpL3ZwY2kuYyAgICAgICAgICAgICAgICAgfCAgMyArLQ0KPj4geGVuL2luY2x1ZGUv
eGVuL21zaS1pbnRlcmNlcHQuaCAgICAgICAgIHwgNDggKysrKysrKysrKysrKysrKysrKysrKysN
Cj4+IHhlbi9pbmNsdWRlL3hlbi92cGNpLmggICAgICAgICAgICAgICAgICB8IDIzICsrKysrKysr
KysrDQo+PiB4ZW4veHNtL2ZsYXNrL2hvb2tzLmMgICAgICAgICAgICAgICAgICAgfCAgOCArKy0t
DQo+PiAxMiBmaWxlcyBjaGFuZ2VkLCAxNzAgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0p
DQo+PiBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvbXNpLWludGVy
Y2VwdC5jDQo+PiBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2luY2x1ZGUveGVuL21zaS1pbnRlcmNl
cHQuaA0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L0tjb25maWcgYi94ZW4vYXJj
aC94ODYvS2NvbmZpZw0KPj4gaW5kZXggMzJiOWYyM2EyMC4uNGQ3Mjc5OGYwMCAxMDA2NDQNCj4+
IC0tLSBhL3hlbi9hcmNoL3g4Ni9LY29uZmlnDQo+PiArKysgYi94ZW4vYXJjaC94ODYvS2NvbmZp
Zw0KPj4gQEAgLTIwLDYgKzIwLDcgQEAgY29uZmlnIFg4Ng0KPj4gCXNlbGVjdCBIQVNfTlMxNjU1
MA0KPj4gCXNlbGVjdCBIQVNfUEFTU1RIUk9VR0gNCj4+IAlzZWxlY3QgSEFTX1BDSQ0KPj4gKwlz
ZWxlY3QgUENJX01TSV9JTlRFUkNFUFQNCj4+IAlzZWxlY3QgSEFTX1BEWA0KPj4gCXNlbGVjdCBI
QVNfU0NIRURfR1JBTlVMQVJJVFkNCj4+IAlzZWxlY3QgSEFTX1VCU0FODQo+IA0KPiBUaGlzIGxp
c3QgaXMgc29ydGVkIGFscGhhYmV0aWNhbGx5IEFGQUlDVCwgYW5kIG5ldyBhZGRpdGlvbnMgc2hv
dWxkDQo+IHJlc3BlY3QgdGhhdC4NCg0KT2suIEFzIHBlciB0aGUgSmFuIHJlcXVlc3QsIEkgd2ls
bCBtb2RpZnkgdGhlIEtjb25maWcgbmFtZSBIQVNfUENJX01TSV9JTlRFUkNFUFQuIA0KPiANCj4+
IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9NYWtlZmlsZSBiL3hlbi9kcml2
ZXJzL3Bhc3N0aHJvdWdoL01ha2VmaWxlDQo+PiBpbmRleCA0NDU2OTBlM2U1Li4zYzcwNzcwNmIw
IDEwMDY0NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvTWFrZWZpbGUNCj4+ICsr
KyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL01ha2VmaWxlDQo+PiBAQCAtNywzICs3LDQgQEAg
b2JqLXkgKz0gaW9tbXUubw0KPj4gb2JqLSQoQ09ORklHX0hBU19QQ0kpICs9IHBjaS5vDQo+PiBv
YmotJChDT05GSUdfSEFTX0RFVklDRV9UUkVFKSArPSBkZXZpY2VfdHJlZS5vDQo+PiBvYmotJChD
T05GSUdfSEFTX1BDSSkgKz0gYXRzLm8NCj4+ICtvYmotJChDT05GSUdfUENJX01TSV9JTlRFUkNF
UFQpICs9IG1zaS1pbnRlcmNlcHQubw0KPj4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0
aHJvdWdoL21zaS1pbnRlcmNlcHQuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL21zaS1pbnRl
cmNlcHQuYw0KPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4+IGluZGV4IDAwMDAwMDAwMDAuLjFl
ZGFlNmQ0ZTgNCj4+IC0tLSAvZGV2L251bGwNCj4+ICsrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJv
dWdoL21zaS1pbnRlcmNlcHQuYw0KPj4gQEAgLTAsMCArMSw1MiBAQA0KPj4gKy8qDQo+PiArICog
Q29weXJpZ2h0IChDKSAyMDIxIEFybSBMdGQuDQo+IA0KPiBTaW5jZSB0aGlzIGlzIGNvZGUgbW92
ZW1lbnQsIEkgdGhpbmsgaXQgc2hvdWxkIGtlZXAgdGhlIGNvcHlyaWdodCBvZg0KPiB0aGUgZmls
ZSB0aGV5IGFyZSBtb3ZlZCBmcm9tLg0KPiANCg0KT2suIA0KDQo+PiArICoNCj4+ICsgKiBUaGlz
IHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
IG1vZGlmeQ0KPj4gKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UgdmVyc2lvbiAyIGFzDQo+PiArICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24uDQo+PiArICoNCj4+ICsgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJp
YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCj4+ICsgKiBidXQgV0lU
SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0K
Pj4gKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RS4gIFNlZSB0aGUNCj4+ICsgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLg0KPj4gKyAqDQo+PiArICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCj4+ICsgKiBhbG9uZyB3aXRoIHRoaXMg
cHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4NCj4+
ICsgKi8NCj4+ICsNCj4+ICsjaW5jbHVkZSA8eGVuL2luaXQuaD4NCj4+ICsjaW5jbHVkZSA8eGVu
L3BjaS5oPg0KPj4gKyNpbmNsdWRlIDxhc20vbXNpLmg+DQo+PiArI2luY2x1ZGUgPGFzbS9odm0v
aW8uaD4NCj4+ICsNCj4+ICtpbnQgcGRldl9tc2l4X2Fzc2lnbihzdHJ1Y3QgZG9tYWluICpkLCBz
dHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+ICt7DQo+PiArICAgIGludCByYzsNCj4+ICsNCj4+ICsg
ICAgaWYgKCBwZGV2LT5tc2l4ICkNCj4+ICsgICAgew0KPj4gKyAgICAgICAgcmMgPSBwY2lfcmVz
ZXRfbXNpeF9zdGF0ZShwZGV2KTsNCj4+ICsgICAgICAgIGlmICggcmMgKQ0KPj4gKyAgICAgICAg
ICAgIHJldHVybiByYzsNCj4+ICsgICAgICAgIG1zaXh0YmxfaW5pdChkKTsNCj4+ICsgICAgfQ0K
Pj4gKw0KPj4gKyAgICByZXR1cm4gMDsNCj4+ICt9DQo+PiArDQo+PiArdm9pZCBwZGV2X2R1bXBf
bXNpKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gK3sNCj4+ICsgICAgY29uc3Qgc3Ry
dWN0IG1zaV9kZXNjICptc2k7DQo+PiArDQo+PiArICAgIGxpc3RfZm9yX2VhY2hfZW50cnkgKCBt
c2ksICZwZGV2LT5tc2lfbGlzdCwgbGlzdCApDQo+PiArICAgICAgICBwcmludGsoIiVkICIsIG1z
aS0+aXJxKTsNCj4+ICt9DQo+PiArLyoNCj4gDQo+IE1pc3NpbmcgbmV3bGluZS4NCg0KQWNrLg0K
PiANCj4+ICsgKiBMb2NhbCB2YXJpYWJsZXM6DQo+PiArICogbW9kZTogQw0KPj4gKyAqIGMtZmls
ZS1zdHlsZTogIkJTRCINCj4+ICsgKiBjLWJhc2ljLW9mZnNldDogNA0KPj4gKyAqIHRhYi13aWR0
aDogNA0KPj4gKyAqIGluZGVudC10YWJzLW1vZGU6IG5pbA0KPj4gKyAqIEVuZDoNCj4+ICsgKi8N
Cj4+IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYyBiL3hlbi9kcml2
ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jDQo+PiBpbmRleCAxOTljZTA4NjEyLi4yOThiZTIxYjViIDEw
MDY0NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMNCj4+ICsrKyBiL3hl
bi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jDQo+PiBAQCAtMzIsOCArMzIsOCBAQA0KPj4gI2lu
Y2x1ZGUgPHhlbi9zb2Z0aXJxLmg+DQo+PiAjaW5jbHVkZSA8eGVuL3Rhc2tsZXQuaD4NCj4+ICNp
bmNsdWRlIDx4ZW4vdnBjaS5oPg0KPj4gKyNpbmNsdWRlIDx4ZW4vbXNpLWludGVyY2VwdC5oPg0K
Pj4gI2luY2x1ZGUgPHhzbS94c20uaD4NCj4+IC0jaW5jbHVkZSA8YXNtL21zaS5oPg0KPj4gI2lu
Y2x1ZGUgImF0cy5oIg0KPj4gDQo+PiBzdHJ1Y3QgcGNpX3NlZyB7DQo+PiBAQCAtMTI3MSw3ICsx
MjcxLDYgQEAgYm9vbF90IHBjaWVfYWVyX2dldF9maXJtd2FyZV9maXJzdChjb25zdCBzdHJ1Y3Qg
cGNpX2RldiAqcGRldikNCj4+IHN0YXRpYyBpbnQgX2R1bXBfcGNpX2RldmljZXMoc3RydWN0IHBj
aV9zZWcgKnBzZWcsIHZvaWQgKmFyZykNCj4+IHsNCj4+ICAgICBzdHJ1Y3QgcGNpX2RldiAqcGRl
djsNCj4+IC0gICAgc3RydWN0IG1zaV9kZXNjICptc2k7DQo+PiANCj4+ICAgICBwcmludGsoIj09
PT0gc2VnbWVudCAlMDR4ID09PT1cbiIsIHBzZWctPm5yKTsNCj4+IA0KPj4gQEAgLTEyODAsOCAr
MTI3OSw3IEBAIHN0YXRpYyBpbnQgX2R1bXBfcGNpX2RldmljZXMoc3RydWN0IHBjaV9zZWcgKnBz
ZWcsIHZvaWQgKmFyZykNCj4+ICAgICAgICAgcHJpbnRrKCIlcHAgLSAlcGQgLSBub2RlICUtM2Qg
LSBNU0lzIDwgIiwNCj4+ICAgICAgICAgICAgICAgICZwZGV2LT5zYmRmLCBwZGV2LT5kb21haW4s
DQo+PiAgICAgICAgICAgICAgICAocGRldi0+bm9kZSAhPSBOVU1BX05PX05PREUpID8gcGRldi0+
bm9kZSA6IC0xKTsNCj4+IC0gICAgICAgIGxpc3RfZm9yX2VhY2hfZW50cnkgKCBtc2ksICZwZGV2
LT5tc2lfbGlzdCwgbGlzdCApDQo+PiAtICAgICAgICAgICAgICAgcHJpbnRrKCIlZCAiLCBtc2kt
PmlycSk7DQo+PiArICAgICAgICBwZGV2X2R1bXBfbXNpKHBkZXYpOw0KPj4gICAgICAgICBwcmlu
dGsoIj5cbiIpOw0KPiANCj4gTWF5YmUgdGhlIHdob2xlICctIE1TSXMgPCAuLi4gPicgc2hvdWxk
IGJlIHJlbW92ZWQsIGluc3RlYWQgb2YNCj4gcHJpbnRpbmcgYW4gZW1wdHkgbGlzdCBvZiBNU0lz
IHdoZW4gTVNJIGludGVyY2VwdGlvbiBpcyBub3Qgc3VwcG9ydGVkPw0KPiANCj4gT3IgZWxzZSB5
b3UgZ2l2ZSB0aGUgaW1wcmVzc2lvbiB0aGF0IG5vIE1TSXMgYXJlIGluIHVzZSwgd2hlbiBpbnN0
ZWFkDQo+IFhlbiBpcyBub3QgdHJhY2tpbmcgdGhlbS4NCj4gDQpPayBJIHdpbGwgcmVtb3ZlIC0g
TVNJcyA8IOKApiA+IHdoZW4gIE1TSSBpbnRlcmNlcHRpb24gaXMgbm90IHN1cHBvcnRlZC4NCj4+
ICAgICB9DQo+PiANCj4+IEBAIC0xNDIyLDEzICsxNDIwLDkgQEAgc3RhdGljIGludCBhc3NpZ25f
ZGV2aWNlKHN0cnVjdCBkb21haW4gKmQsIHUxNiBzZWcsIHU4IGJ1cywgdTggZGV2Zm4sIHUzMiBm
bGFnKQ0KPj4gICAgIEFTU0VSVChwZGV2ICYmIChwZGV2LT5kb21haW4gPT0gaGFyZHdhcmVfZG9t
YWluIHx8DQo+PiAgICAgICAgICAgICAgICAgICAgIHBkZXYtPmRvbWFpbiA9PSBkb21faW8pKTsN
Cj4+IA0KPj4gLSAgICBpZiAoIHBkZXYtPm1zaXggKQ0KPj4gLSAgICB7DQo+PiAtICAgICAgICBy
YyA9IHBjaV9yZXNldF9tc2l4X3N0YXRlKHBkZXYpOw0KPj4gLSAgICAgICAgaWYgKCByYyApDQo+
PiAtICAgICAgICAgICAgZ290byBkb25lOw0KPj4gLSAgICAgICAgbXNpeHRibF9pbml0KGQpOw0K
Pj4gLSAgICB9DQo+PiArICAgIHJjID0gcGRldl9tc2l4X2Fzc2lnbihkLCBwZGV2KTsNCj4+ICsg
ICAgaWYgKCByYyApDQo+PiArICAgICAgICBnb3RvIGRvbmU7DQo+PiANCj4+ICAgICBwZGV2LT5m
YXVsdC5jb3VudCA9IDA7DQo+PiANCj4+IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wY2kvS2Nv
bmZpZyBiL3hlbi9kcml2ZXJzL3BjaS9LY29uZmlnDQo+PiBpbmRleCA3ZGEwM2ZhMTNiLi5lNmJm
MGI3NDQxIDEwMDY0NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvcGNpL0tjb25maWcNCj4+ICsrKyBi
L3hlbi9kcml2ZXJzL3BjaS9LY29uZmlnDQo+PiBAQCAtMSwzICsxLDcgQEANCj4+IA0KPj4gY29u
ZmlnIEhBU19QQ0kNCj4+IAlib29sDQo+PiArDQo+PiArY29uZmlnIFBDSV9NU0lfSU5URVJDRVBU
DQo+PiArCWJvb2wNCj4+ICsJZGVwZW5kcyBvbiBIQVNfUENJDQo+PiBkaWZmIC0tZ2l0IGEveGVu
L2RyaXZlcnMvdnBjaS9NYWtlZmlsZSBiL3hlbi9kcml2ZXJzL3ZwY2kvTWFrZWZpbGUNCj4+IGlu
ZGV4IDU1ZDFiZGZkYTAuLmY5MWZhNzFhNDAgMTAwNjQ0DQo+PiAtLS0gYS94ZW4vZHJpdmVycy92
cGNpL01ha2VmaWxlDQo+PiArKysgYi94ZW4vZHJpdmVycy92cGNpL01ha2VmaWxlDQo+PiBAQCAt
MSArMSwyIEBADQo+PiAtb2JqLXkgKz0gdnBjaS5vIGhlYWRlci5vIG1zaS5vIG1zaXgubw0KPj4g
K29iai15ICs9IHZwY2kubyBoZWFkZXIubw0KPj4gK29iai0kKENPTkZJR19QQ0lfTVNJX0lOVEVS
Q0VQVCkgKz0gbXNpLm8gbXNpeC5vDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvdnBjaS9o
ZWFkZXIuYyBiL3hlbi9kcml2ZXJzL3ZwY2kvaGVhZGVyLmMNCj4+IGluZGV4IGJhOWEwMzYyMDIu
LmVjNzM1YzViNGIgMTAwNjQ0DQo+PiAtLS0gYS94ZW4vZHJpdmVycy92cGNpL2hlYWRlci5jDQo+
PiArKysgYi94ZW4vZHJpdmVycy92cGNpL2hlYWRlci5jDQo+PiBAQCAtMjA2LDcgKzIwNiw2IEBA
IHN0YXRpYyBpbnQgbW9kaWZ5X2JhcnMoY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsIHVpbnQx
Nl90IGNtZCwgYm9vbCByb21fb25seSkNCj4+ICAgICBzdHJ1Y3QgdnBjaV9oZWFkZXIgKmhlYWRl
ciA9ICZwZGV2LT52cGNpLT5oZWFkZXI7DQo+PiAgICAgc3RydWN0IHJhbmdlc2V0ICptZW0gPSBy
YW5nZXNldF9uZXcoTlVMTCwgTlVMTCwgMCk7DQo+PiAgICAgc3RydWN0IHBjaV9kZXYgKnRtcCwg
KmRldiA9IE5VTEw7DQo+PiAtICAgIGNvbnN0IHN0cnVjdCB2cGNpX21zaXggKm1zaXggPSBwZGV2
LT52cGNpLT5tc2l4Ow0KPj4gICAgIHVuc2lnbmVkIGludCBpOw0KPj4gICAgIGludCByYzsNCj4+
IA0KPj4gQEAgLTI0NCwyMSArMjQzLDExIEBAIHN0YXRpYyBpbnQgbW9kaWZ5X2JhcnMoY29uc3Qg
c3RydWN0IHBjaV9kZXYgKnBkZXYsIHVpbnQxNl90IGNtZCwgYm9vbCByb21fb25seSkNCj4+ICAg
ICB9DQo+PiANCj4+ICAgICAvKiBSZW1vdmUgYW55IE1TSVggcmVnaW9ucyBpZiBwcmVzZW50LiAq
Lw0KPj4gLSAgICBmb3IgKCBpID0gMDsgbXNpeCAmJiBpIDwgQVJSQVlfU0laRShtc2l4LT50YWJs
ZXMpOyBpKysgKQ0KPj4gKyAgICByYyA9IHZwY2lfcmVtb3ZlX21zaXhfcmVnaW9ucyhwZGV2LCBt
ZW0pOw0KPj4gKyAgICBpZiAoIHJjICkNCj4+ICAgICB7DQo+PiAtICAgICAgICB1bnNpZ25lZCBs
b25nIHN0YXJ0ID0gUEZOX0RPV04odm1zaXhfdGFibGVfYWRkcihwZGV2LT52cGNpLCBpKSk7DQo+
PiAtICAgICAgICB1bnNpZ25lZCBsb25nIGVuZCA9IFBGTl9ET1dOKHZtc2l4X3RhYmxlX2FkZHIo
cGRldi0+dnBjaSwgaSkgKw0KPj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB2bXNpeF90YWJsZV9zaXplKHBkZXYtPnZwY2ksIGkpIC0gMSk7DQo+PiAtDQo+PiAtICAgICAg
ICByYyA9IHJhbmdlc2V0X3JlbW92ZV9yYW5nZShtZW0sIHN0YXJ0LCBlbmQpOw0KPj4gLSAgICAg
ICAgaWYgKCByYyApDQo+PiAtICAgICAgICB7DQo+PiAtICAgICAgICAgICAgcHJpbnRrKFhFTkxP
R19HX1dBUk5JTkcNCj4+IC0gICAgICAgICAgICAgICAgICAgIkZhaWxlZCB0byByZW1vdmUgTVNJ
WCB0YWJsZSBbJWx4LCAlbHhdOiAlZFxuIiwNCj4+IC0gICAgICAgICAgICAgICAgICAgc3RhcnQs
IGVuZCwgcmMpOw0KPj4gLSAgICAgICAgICAgIHJhbmdlc2V0X2Rlc3Ryb3kobWVtKTsNCj4+IC0g
ICAgICAgICAgICByZXR1cm4gcmM7DQo+PiAtICAgICAgICB9DQo+PiArICAgICAgICByYW5nZXNl
dF9kZXN0cm95KG1lbSk7DQo+PiArICAgICAgICByZXR1cm4gcmM7DQo+PiAgICAgfQ0KPj4gDQo+
PiAgICAgLyoNCj4+IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy92cGNpL21zaXguYyBiL3hlbi9k
cml2ZXJzL3ZwY2kvbXNpeC5jDQo+PiBpbmRleCA4NDZmMWI4ZDcwLi4zZWZiYWViYzkyIDEwMDY0
NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMNCj4+ICsrKyBiL3hlbi9kcml2ZXJz
L3ZwY2kvbXNpeC5jDQo+PiBAQCAtNDI4LDYgKzQyOCwzMSBAQCBpbnQgdnBjaV9tYWtlX21zaXhf
aG9sZShjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+ICAgICByZXR1cm4gMDsNCj4+IH0N
Cj4+IA0KPj4gK2ludCB2cGNpX3JlbW92ZV9tc2l4X3JlZ2lvbnMoY29uc3Qgc3RydWN0IHBjaV9k
ZXYgKnBkZXYsIHN0cnVjdCByYW5nZXNldCAqbWVtKQ0KPiANCj4gWW91IGNvdWxkIHBhc3Mgc3Ry
dWN0IHZwY2kgaGVyZSwgc2luY2UgdGhlcmUncyBubyBuZWVkIHRvIHBhc3MgdGhlDQo+IHBkZXYs
IGJ1dCBJIGRvbid0IHJlYWxseSBoYXZlIGEgc3Ryb25nIG9waW5pb24uDQpBY2suDQo+IA0KPj4g
K3sNCj4+ICsgICAgY29uc3Qgc3RydWN0IHZwY2lfbXNpeCAqbXNpeCA9IHBkZXYtPnZwY2ktPm1z
aXg7DQo+PiArICAgIHVuc2lnbmVkIGludCBpOw0KPj4gKyAgICBpbnQgcmM7DQo+IA0KPiBOaXQ6
IHlvdSBjYW4gZGVmaW5lIHJjIGluc2lkZSB0aGUgbG9vcCwgbGlrZSBpdCdzIGRvbmUgZm9yIHN0
YXJ0IGFuZA0KPiBlbmQuDQoNCkFjay4NCj4gDQo+PiArDQo+PiArICAgIGZvciAoIGkgPSAwOyBt
c2l4ICYmIGkgPCBBUlJBWV9TSVpFKG1zaXgtPnRhYmxlcyk7IGkrKyApDQo+PiArICAgIHsNCj4+
ICsgICAgICAgIHVuc2lnbmVkIGxvbmcgc3RhcnQgPSBQRk5fRE9XTih2bXNpeF90YWJsZV9hZGRy
KHBkZXYtPnZwY2ksIGkpKTsNCj4+ICsgICAgICAgIHVuc2lnbmVkIGxvbmcgZW5kID0gUEZOX0RP
V04odm1zaXhfdGFibGVfYWRkcihwZGV2LT52cGNpLCBpKSArDQo+PiArICAgICAgICAgICAgICAg
IHZtc2l4X3RhYmxlX3NpemUocGRldi0+dnBjaSwgaSkgLSAxKTsNCj4gDQo+IFlvdSBjYW4gbm93
IGFsc28gbW92ZSB2bXNpeF90YWJsZV97YmFzZSxhZGRyLHNpemV9IHRvIGJlIGxvY2FsIHN0YXRp
Yw0KPiBpbmxpbmVzIHRvIG1zaXguYyBpbnN0ZWFkIG9mIGJlaW5nIGRlZmluZWQgaW4gdGhlIGhl
YWRlciBBRkFJQ1QuDQoNCk9rLg0KPiANCj4+ICsNCj4+ICsgICAgICAgIHJjID0gcmFuZ2VzZXRf
cmVtb3ZlX3JhbmdlKG1lbSwgc3RhcnQsIGVuZCk7DQo+PiArICAgICAgICBpZiAoIHJjICkNCj4+
ICsgICAgICAgIHsNCj4+ICsgICAgICAgICAgICBwcmludGsoWEVOTE9HX0dfV0FSTklORw0KPj4g
KyAgICAgICAgICAgICAgICAgICAgIkZhaWxlZCB0byByZW1vdmUgTVNJWCB0YWJsZSBbJWx4LCAl
bHhdOiAlZFxuIiwNCj4+ICsgICAgICAgICAgICAgICAgICAgIHN0YXJ0LCBlbmQsIHJjKTsNCj4+
ICsgICAgICAgICAgICByZXR1cm4gcmM7DQo+PiArICAgICAgICB9DQo+PiArICAgIH0NCj4+ICsN
Cj4+ICsgICAgcmV0dXJuIDA7DQo+PiArfQ0KPj4gKw0KPj4gc3RhdGljIGludCBpbml0X21zaXgo
c3RydWN0IHBjaV9kZXYgKnBkZXYpDQo+PiB7DQo+PiAgICAgc3RydWN0IGRvbWFpbiAqZCA9IHBk
ZXYtPmRvbWFpbjsNCj4+IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy92cGNpL3ZwY2kuYyBiL3hl
bi9kcml2ZXJzL3ZwY2kvdnBjaS5jDQo+PiBpbmRleCBjYmQxYmFjN2ZjLi44NTA4NGRkOTI0IDEw
MDY0NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvdnBjaS92cGNpLmMNCj4+ICsrKyBiL3hlbi9kcml2
ZXJzL3ZwY2kvdnBjaS5jDQo+PiBAQCAtNDgsOCArNDgsNyBAQCB2b2lkIHZwY2lfcmVtb3ZlX2Rl
dmljZShzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+ICAgICAgICAgeGZyZWUocik7DQo+PiAgICAg
fQ0KPj4gICAgIHNwaW5fdW5sb2NrKCZwZGV2LT52cGNpLT5sb2NrKTsNCj4+IC0gICAgeGZyZWUo
cGRldi0+dnBjaS0+bXNpeCk7DQo+PiAtICAgIHhmcmVlKHBkZXYtPnZwY2ktPm1zaSk7DQo+PiAr
ICAgIHZwY2lfbXNpX2ZyZWUocGRldi0+dnBjaSk7DQo+PiAgICAgeGZyZWUocGRldi0+dnBjaSk7
DQo+PiAgICAgcGRldi0+dnBjaSA9IE5VTEw7DQo+PiB9DQo+PiBkaWZmIC0tZ2l0IGEveGVuL2lu
Y2x1ZGUveGVuL21zaS1pbnRlcmNlcHQuaCBiL3hlbi9pbmNsdWRlL3hlbi9tc2ktaW50ZXJjZXB0
LmgNCj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+PiBpbmRleCAwMDAwMDAwMDAwLi43N2MxMDVl
Mjg2DQo+PiAtLS0gL2Rldi9udWxsDQo+PiArKysgYi94ZW4vaW5jbHVkZS94ZW4vbXNpLWludGVy
Y2VwdC5oDQo+PiBAQCAtMCwwICsxLDQ4IEBADQo+PiArLyoNCj4+ICsgKiBDb3B5cmlnaHQgKEMp
IDIwMjEgQXJtIEx0ZC4NCj4+ICsgKg0KPj4gKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3
YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQo+PiArICogaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIg
YXMNCj4+ICsgKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4NCj4+
ICsgKg0KPj4gKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0
IGl0IHdpbGwgYmUgdXNlZnVsLA0KPj4gKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0
aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQo+PiArICogTUVSQ0hBTlRBQklMSVRZ
IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KPj4gKyAqIEdO
VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQo+PiArICoNCj4+ICsg
KiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZQ0KPj4gKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUg
PGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+Lg0KPj4gKyAqLw0KPj4gKw0KPj4gKyNpZm5k
ZWYgX19YRU5fTVNJX0lOVEVSQ0VQVF9IXw0KPj4gKyNkZWZpbmUgX19YRU5fTVNJX0lOVEVSQ0VQ
VF9IXw0KPj4gKw0KPj4gKyNpZmRlZiBDT05GSUdfUENJX01TSV9JTlRFUkNFUFQNCj4+ICsNCj4+
ICsjaW5jbHVkZSA8YXNtL21zaS5oPg0KPj4gKw0KPj4gK2ludCBwZGV2X21zaXhfYXNzaWduKHN0
cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwY2lfZGV2ICpwZGV2KTsNCj4+ICt2b2lkIHBkZXZfZHVt
cF9tc2koY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYpOw0KPj4gKw0KPj4gKyNlbHNlIC8qICFD
T05GSUdfUENJX01TSV9JTlRFUkNFUFQgKi8NCj4+ICsNCj4+ICtzdGF0aWMgaW5saW5lIGludCBw
ZGV2X21zaXhfYXNzaWduKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0K
Pj4gK3sNCj4+ICsgICAgcmV0dXJuIDA7DQo+PiArfQ0KPj4gKw0KPj4gK3N0YXRpYyBpbmxpbmUg
dm9pZCBwZGV2X2R1bXBfbXNpKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2KSB7fQ0KPj4gK3N0
YXRpYyBpbmxpbmUgdm9pZCBwY2lfY2xlYW51cF9tc2koc3RydWN0IHBjaV9kZXYgKnBkZXYpIHt9
DQo+PiArDQo+PiArI2VuZGlmIC8qIENPTkZJR19QQ0lfTVNJX0lOVEVSQ0VQVCAqLw0KPj4gKw0K
Pj4gKyNlbmRpZiAvKiBfX1hFTl9NU0lfSU5URVJDRVBUX0ggKi8NCj4+ICsvKg0KPj4gKyAqIExv
Y2FsIHZhcmlhYmxlczoNCj4+ICsgKiBtb2RlOiBDDQo+PiArICogYy1maWxlLXN0eWxlOiAiQlNE
Ig0KPj4gKyAqIGMtYmFzaWMtb2Zmc2V0OiA0DQo+PiArICogdGFiLXdpZHRoOiA0DQo+PiArICog
aW5kZW50LXRhYnMtbW9kZTogbmlsDQo+PiArICogRW5kOg0KPj4gKyAqLw0KPj4gZGlmZiAtLWdp
dCBhL3hlbi9pbmNsdWRlL3hlbi92cGNpLmggYi94ZW4vaW5jbHVkZS94ZW4vdnBjaS5oDQo+PiBp
bmRleCA5ZjViNWQ1MmUxLi4yY2QzNjQ3MzA1IDEwMDY0NA0KPj4gLS0tIGEveGVuL2luY2x1ZGUv
eGVuL3ZwY2kuaA0KPj4gKysrIGIveGVuL2luY2x1ZGUveGVuL3ZwY2kuaA0KPj4gQEAgLTkxLDYg
KzkxLDcgQEAgc3RydWN0IHZwY2kgew0KPj4gICAgICAgICAvKiBGSVhNRTogY3VycmVudGx5IHRo
ZXJlJ3Mgbm8gc3VwcG9ydCBmb3IgU1ItSU9WLiAqLw0KPj4gICAgIH0gaGVhZGVyOw0KPj4gDQo+
PiArI2lmZGVmIENPTkZJR19QQ0lfTVNJX0lOVEVSQ0VQVA0KPj4gICAgIC8qIE1TSSBkYXRhLiAq
Lw0KPj4gICAgIHN0cnVjdCB2cGNpX21zaSB7DQo+PiAgICAgICAvKiBBZGRyZXNzLiAqLw0KPj4g
QEAgLTEzNiw2ICsxMzcsNyBAQCBzdHJ1Y3QgdnBjaSB7DQo+PiAgICAgICAgICAgICBzdHJ1Y3Qg
dnBjaV9hcmNoX21zaXhfZW50cnkgYXJjaDsNCj4+ICAgICAgICAgfSBlbnRyaWVzW107DQo+PiAg
ICAgfSAqbXNpeDsNCj4+ICsjZW5kaWYgLyogQ09ORklHX1BDSV9NU0lfSU5URVJDRVBUICovDQo+
PiAjZW5kaWYNCj4+IH07DQo+PiANCj4+IEBAIC0xNDgsNiArMTUwLDcgQEAgc3RydWN0IHZwY2lf
dmNwdSB7DQo+PiB9Ow0KPj4gDQo+PiAjaWZkZWYgX19YRU5fXw0KPj4gKyNpZmRlZiBDT05GSUdf
UENJX01TSV9JTlRFUkNFUFQNCj4+IHZvaWQgdnBjaV9kdW1wX21zaSh2b2lkKTsNCj4+IA0KPj4g
LyogTWFrZSBzdXJlIHRoZXJlJ3MgYSBob2xlIGluIHRoZSBwMm0gZm9yIHRoZSBNU0lYIG1taW8g
YXJlYXMuICovDQo+PiBAQCAtMTc0LDYgKzE3Nyw3IEBAIGludCBfX211c3RfY2hlY2sgdnBjaV9t
c2l4X2FyY2hfZGlzYWJsZV9lbnRyeShzdHJ1Y3QgdnBjaV9tc2l4X2VudHJ5ICplbnRyeSwNCj4+
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1
Y3QgcGNpX2RldiAqcGRldik7DQo+PiB2b2lkIHZwY2lfbXNpeF9hcmNoX2luaXRfZW50cnkoc3Ry
dWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnkpOw0KPj4gaW50IHZwY2lfbXNpeF9hcmNoX3ByaW50
KGNvbnN0IHN0cnVjdCB2cGNpX21zaXggKm1zaXgpOw0KPj4gK2ludCB2cGNpX3JlbW92ZV9tc2l4
X3JlZ2lvbnMoY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsIHN0cnVjdCByYW5nZXNldCAqbWVt
KTsNCj4+IA0KPj4gLyoNCj4+ICAqIEhlbHBlciBmdW5jdGlvbnMgdG8gZmV0Y2ggTVNJWCByZWxh
dGVkIGRhdGEuIFRoZXkgYXJlIHVzZWQgYnkgYm90aCB0aGUNCj4+IEBAIC0yMDgsNiArMjEyLDI1
IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHZtc2l4X2VudHJ5X25yKGNvbnN0IHN0cnVj
dCB2cGNpX21zaXggKm1zaXgsDQo+PiB7DQo+PiAgICAgcmV0dXJuIGVudHJ5IC0gbXNpeC0+ZW50
cmllczsNCj4+IH0NCj4+ICsNCj4+ICtzdGF0aWMgaW5saW5lIHZvaWQgdnBjaV9tc2lfZnJlZShz
dHJ1Y3QgdnBjaSAqdnBjaSkNCj4+ICt7DQo+PiArICAgIFhGUkVFKHZwY2ktPm1zaXgpOw0KPj4g
KyAgICBYRlJFRSh2cGNpLT5tc2kpOw0KPj4gK30NCj4+ICsjZWxzZSAvKiAhQ09ORklHX1BDSV9N
U0lfSU5URVJDRVBUICovDQo+PiArc3RhdGljIGlubGluZSBpbnQgdnBjaV9tYWtlX21zaXhfaG9s
ZShjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+ICt7DQo+PiArICAgIHJldHVybiAwOw0K
Pj4gK30NCj4+ICsNCj4+ICtzdGF0aWMgaW5saW5lIGludCB2cGNpX3JlbW92ZV9tc2l4X3JlZ2lv
bnMoY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsDQo+PiArICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzdHJ1Y3QgcmFuZ2VzZXQgKm1lbSkNCj4gDQo+IE5pdDogbGluZSBz
ZWVtcyB0byBub3QgYmUgcHJvcGVybHkgYWxpZ25lZC4NCg0KQWNrLg0KDQpSZWdhcmRzLA0KUmFo
dWwNCj4gDQo+IFRoYW5rcywgUm9nZXIuDQoNCg==


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 08:27:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 08:27:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119783.226449 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc21G-0006op-Qi; Thu, 29 Apr 2021 08:27:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119783.226449; Thu, 29 Apr 2021 08: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 1lc21G-0006oi-Ma; Thu, 29 Apr 2021 08:27:34 +0000
Received: by outflank-mailman (input) for mailman id 119783;
 Thu, 29 Apr 2021 08:27:33 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sKbL=J2=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lc21F-0006od-HQ
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 08:27:33 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:7e1a::624])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 62de9204-a0fa-41e8-8824-33f21f5b5783;
 Thu, 29 Apr 2021 08:27:31 +0000 (UTC)
Received: from DB6PR07CA0018.eurprd07.prod.outlook.com (2603:10a6:6:2d::28) by
 AM0PR08MB4161.eurprd08.prod.outlook.com (2603:10a6:208:134::29) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.22; Thu, 29 Apr
 2021 08:27:27 +0000
Received: from DB5EUR03FT057.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:6:2d:cafe::3c) by DB6PR07CA0018.outlook.office365.com
 (2603:10a6:6:2d::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.8 via Frontend
 Transport; Thu, 29 Apr 2021 08:27:27 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT057.mail.protection.outlook.com (10.152.20.235) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.21 via Frontend Transport; Thu, 29 Apr 2021 08:27:27 +0000
Received: ("Tessian outbound e566ed09e411:v91");
 Thu, 29 Apr 2021 08:27:27 +0000
Received: from 895957f84f1e.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 BBE3441B-F156-465B-A2D4-64A4FF9E2582.1; 
 Thu, 29 Apr 2021 08:27:17 +0000
Received: from EUR02-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 895957f84f1e.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 29 Apr 2021 08:27:17 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AM6PR08MB4437.eurprd08.prod.outlook.com (2603:10a6:20b:bf::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.23; Thu, 29 Apr
 2021 08:27:14 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4065.027; Thu, 29 Apr 2021
 08:27: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: 62de9204-a0fa-41e8-8824-33f21f5b5783
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gqafzmGHUxx2gy76AV37qLVoESIMB1wY4moj2vZiXqI=;
 b=K3PpzrnTfPQEQw+j1uxRT4P9y2+SzPp8RIvVHmuZW0xLRmb+LAXRSC9dOYWZ0OyijWCbwXgwWlE0AiZC0j1epEOechclFmWI6biOp5TSoxrN1Xl7zz5M+JBO3Mz2CFPutAGyUDynwF4yhYB06jKVJwnKtnFo8PTHkU/6XpJ8W3I=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: a89511d88cfbe72d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h3axqdCOv/3VUTV5lmddNVwOdKAfZnnixLF7Y15F8/yzW4nLmAK1g5X31AZmbgrBQKNkcb48Q5AQ4IS4u0y9fWrsPRAd/qdv3cUr9fw/zAgDryvOqjxNJwTXL2iOVq6KPRKNe7YMKAgyuVTSPyRKwO+eOSt3GUsIHsZ1AWZEkVjH5PkzbSREkaMNGr9OnZX/jodAVauPJX1ZK761mhR0APD7G5x6PIvii4U9a3qX/+lS9RuSZi07Vl4nfjjuGNujRhGLh8C4DKED1YBibkmX3T8iTw9AyxcnaFdF5GHMfdUeSULmlL5o4YILR8Ig0DG0ahZXFvjIQRK1GkKmquJsuQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gqafzmGHUxx2gy76AV37qLVoESIMB1wY4moj2vZiXqI=;
 b=jO5amxRqYdlPDRk3D//bJosyF8VDDcp4f26fT7SST8IEpd7C3d4W8YgntZ40Eq8hdifwcE74+TuDBL/EbUu0qjEOS6oqDuIO4celzYIviEfgj3lD1iYg/OCz3xsfbKguWj9iYgRQiVXjHPIkJhrLfvNvKZuJy0WWjdEkff8rOtmLO59ETA+CM4i1nJOr5V//enTZ/2+V73dRXl97ofFKjo7niFSkyGG0Bs/yZKqpZVad6uZVEyRGU5KRtO2EEn7KsLEhohv41qV6Vo+rmRPQUtqwn+GJBFn2FrwggraCaMy7tCwhnYm3wQy2UUi0E0zfnqygN/lXP8bwwBodVdvmnA==
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=gqafzmGHUxx2gy76AV37qLVoESIMB1wY4moj2vZiXqI=;
 b=K3PpzrnTfPQEQw+j1uxRT4P9y2+SzPp8RIvVHmuZW0xLRmb+LAXRSC9dOYWZ0OyijWCbwXgwWlE0AiZC0j1epEOechclFmWI6biOp5TSoxrN1Xl7zz5M+JBO3Mz2CFPutAGyUDynwF4yhYB06jKVJwnKtnFo8PTHkU/6XpJ8W3I=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, xen-devel
	<xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Andrew Cooper <andrew.cooper3@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>, Paul Durrant <paul@xen.org>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
Thread-Topic: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
Thread-Index: AQHXOrhr42FH3XtdSEulNtIMBWAh5arJwQ+AgAA2a4CAATX+gA==
Date: Thu, 29 Apr 2021 08:27:14 +0000
Message-ID: <24B38FDC-A474-44CE-B4F9-A0146B535D93@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
 <YIk8MYCeKi0eKkrg@Air-de-Roger>
 <f0120aa9-f0f5-8756-d8e5-3190c2494618@suse.com>
In-Reply-To: <f0120aa9-f0f5-8756-d8e5-3190c2494618@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: fcd4c73e-10f3-4dac-1ef0-08d90ae89f7e
x-ms-traffictypediagnostic: AM6PR08MB4437:|AM0PR08MB4161:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AM0PR08MB4161FF290364DE18CF058E4BFC5F9@AM0PR08MB4161.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:6790;OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 2nB3RTu3zRGOZjbBI4Xh96w9G24QmV6K7zDKMUL7wqYmGg3meWRbi9jY7Ky7WbLZtfA9DyJ1D2RPouguudygevrRIaXkB3S8godRsTq3rEYKl7cp28XnbbedevBHzUi/EKPAPmkneZQtNvIgxqqGy1i4m+0m7y7K9y5sZielREYvmtpSsIQdYCwtCmj/pFmoy9YrXpo5Xll8YnmjXwgMx41Bl9oS5oyiB3fHwaItjQMi6eAzV7/RD3qpPYvfoQj3G6bhh1EqAQh2Mw2ztThSW9KnudDYr3Nsfx5283yIaFmeGl3UxnqrhaBV+8muMKJugcl2EpTym7RI5eLZ2qh4q3ttVcIeJncWlxpkhpYBP9/TgGEnxKDOacbvEW7nykJVVASY2dbNSwllgiE5fKemYfwmfKmLhOtsv61fBgjStAR1xS8cQbADgfKR86ME7SmkNHcFGjSo5/3JtAYn7m9knsjHsHFEX79nMviooHhFNtzus/3xICsa++jisdYZMQr115fy0K2algYIYysBtSxJrhvSwgmqp1tA9tyey6X4yCgglbuEu1ZLfMSsqMjmo4j0L2d3+DnkeXrh+5Mm/DNWVMRW2H+u9UkIupzVtqSD+sRKrZUjt1UFb6MDc9vDNbZ6TjmFn4wzLGgPL1CYVAPY4BJNEBae6PLss0hR35JYQ8Q=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39850400004)(376002)(346002)(366004)(396003)(136003)(6506007)(122000001)(36756003)(6512007)(53546011)(186003)(7416002)(4326008)(5660300002)(38100700002)(2616005)(54906003)(4744005)(66946007)(76116006)(91956017)(64756008)(316002)(6916009)(2906002)(8936002)(8676002)(71200400001)(66476007)(66556008)(33656002)(478600001)(66446008)(26005)(6486002)(86362001)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 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
 =?utf-8?Q?4txeGBS8xtwK/n2JKjYNi9IAp1eaSBvYXYXJZRQ?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <9F37068A0E743245B61DDFC4E4A03728@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB4437
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT057.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	d8d9ec5f-da06-4347-0e83-08d90ae897e8
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hwWcd8zhqo73hQhW6bg2L0VuUWmwZvIm4ENlLtjZNvsgk7edQKb6GWNInFAlm2b49d6vvWl6QYvSH8DhT+NwJL+DwF6tHArliSIC/2IpHNM++8pO3SJxhJRhlXBArPkm8cIUS7Mx3RtE0Mp88uz3Opa94aj5DfsAmJN0EGm8JXF/vYklEygNW1i2lhY1me6iLM4oJSsEvvj7E5Bmk00MQmh7VBbNXihTMDpQHhDWCWO0403rkvABTPThWU+bnijNxgoh8KyT4fKZAEvVhWShaGSP3s7b+djuQoK6pJxCSgyFRKiFDVJVW30QBPE0iol/Dtxn4VAeaGmVGhh7E9IFbKTeLT/ArUm+h4+Rha8MVkpFMOTW5pk8dqPdkxIuumTrMF3RIq9Eu7L+FObJg5RFBkb6NW4xpt4CAxU+XhzV1kfSpBGd2R/pSrwHjkeoZkzQwRSMeBO1iw+9aGUbtvO8UU0NlXnF3IMCXBj/lTyVDllbppMg0HD863fVPIfWW9sXEwK5GzsmCtk6eqINrvdKDB89ylm+1LxiN7QGtvuePpPX+VLjQlCFCFNJ0BMb0PRtZX6Lu/7fwLslWCKlotEMBvCNg5di2xY29T2pY6so6tnCrxrQrBQcqnBhU2yodIsVhQDFHzmswhfRGO/hwliA2dZj0kRFN0RifFZ4ePJWihDolYsWLM+eHddXYr6n5elN
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:(4636009)(396003)(376002)(39850400004)(346002)(136003)(36840700001)(46966006)(336012)(54906003)(2906002)(5660300002)(70206006)(4744005)(81166007)(26005)(356005)(47076005)(6486002)(186003)(70586007)(33656002)(478600001)(82310400003)(53546011)(4326008)(86362001)(8676002)(6506007)(6512007)(8936002)(36756003)(82740400003)(6862004)(36860700001)(2616005)(34020700004)(316002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 08:27:27.4099
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: fcd4c73e-10f3-4dac-1ef0-08d90ae89f7e
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:
	DB5EUR03FT057.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB4161

SGkgSmFuLA0KDQo+IE9uIDI4IEFwciAyMDIxLCBhdCAyOjU3IHBtLCBKYW4gQmV1bGljaCA8amJl
dWxpY2hAc3VzZS5jb20+IHdyb3RlOg0KPiANCj4gT24gMjguMDQuMjAyMSAxMjo0MiwgUm9nZXIg
UGF1IE1vbm7DqSB3cm90ZToNCj4+IE9uIE1vbiwgQXByIDI2LCAyMDIxIGF0IDA1OjIxOjI2UE0g
KzAxMDAsIFJhaHVsIFNpbmdoIHdyb3RlOg0KPj4+IC0tLSBhL3hlbi9hcmNoL3g4Ni9LY29uZmln
DQo+Pj4gKysrIGIveGVuL2FyY2gveDg2L0tjb25maWcNCj4+PiBAQCAtMjAsNiArMjAsNyBAQCBj
b25maWcgWDg2DQo+Pj4gCXNlbGVjdCBIQVNfTlMxNjU1MA0KPj4+IAlzZWxlY3QgSEFTX1BBU1NU
SFJPVUdIDQo+Pj4gCXNlbGVjdCBIQVNfUENJDQo+Pj4gKwlzZWxlY3QgUENJX01TSV9JTlRFUkNF
UFQNCj4+PiAJc2VsZWN0IEhBU19QRFgNCj4+PiAJc2VsZWN0IEhBU19TQ0hFRF9HUkFOVUxBUklU
WQ0KPj4+IAlzZWxlY3QgSEFTX1VCU0FODQo+PiANCj4+IFRoaXMgbGlzdCBpcyBzb3J0ZWQgYWxw
aGFiZXRpY2FsbHkgQUZBSUNULCBhbmQgbmV3IGFkZGl0aW9ucyBzaG91bGQNCj4+IHJlc3BlY3Qg
dGhhdC4NCj4gDQo+IFNpbmNlIHRoaXMgaXNuJ3QgYSB1c2VyIHZpc2libGUgb3B0aW9uLCBwZXJo
YXBzIGl0IHdhbnRzIHRvIGJlDQo+IEhBU19QQ0lfTVNJX0lOVEVSQ0VQVCBhbnl3YXk/DQo+IA0K
DQpZZXMgSSBhZ3JlZSB3aXRoIHlvdSBJIHdpbGwgY2hhbmdlIHRoZSBuYW1lIHRvIEhBU19QQ0lf
TVNJX0lOVEVSQ0VQVCBpbiBuZXh0IHZlcnNpb24uDQoNClJlZ2FyZHMsDQpSYWh1bA0KPiBKYW4N
Cj4gDQoNCg==


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 08:53:17 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 08:53:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119792.226466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2Q4-00012V-Qz; Thu, 29 Apr 2021 08:53:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119792.226466; Thu, 29 Apr 2021 08:53:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2Q4-00012O-O0; Thu, 29 Apr 2021 08:53:12 +0000
Received: by outflank-mailman (input) for mailman id 119792;
 Thu, 29 Apr 2021 08:53:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Zyx=J2=arm.com=michal.orzel@srs-us1.protection.inumbo.net>)
 id 1lc2Q2-00012J-HX
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 08:53:10 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTP
 id bdacfc8e-9912-4a63-b629-628e5053aa53;
 Thu, 29 Apr 2021 08:53:07 +0000 (UTC)
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 79C4D1FB;
 Thu, 29 Apr 2021 01:53:07 -0700 (PDT)
Received: from [10.57.1.124] (unknown [10.57.1.124])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 9F7833F73B;
 Thu, 29 Apr 2021 01:53:05 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bdacfc8e-9912-4a63-b629-628e5053aa53
Subject: Re: [PATCH v2 10/10] arm64: Change type of hsr, cpsr, spsr_el1 to
 uint64_t
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-11-michal.orzel@arm.com>
 <f414e061-7afa-d781-e6ae-e6293f29cd40@xen.org>
From: Michal Orzel <michal.orzel@arm.com>
Message-ID: <0c90579b-4861-8f90-2978-9e7f9015fae3@arm.com>
Date: Thu, 29 Apr 2021 10:53:02 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <f414e061-7afa-d781-e6ae-e6293f29cd40@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

Hi Julien,

On 27.04.2021 13:09, Julien Grall wrote:
> Hi Michal,
> 
> On 27/04/2021 10:35, Michal Orzel wrote:
>> AArch64 registers are 64bit whereas AArch32 registers
>> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>> we should get rid of helpers READ/WRITE_SYSREG32
>> in favour of using READ/WRITE_SYSREG.
>> We should also use register_t type when reading sysregs
>> which can correspond to uint64_t or uint32_t.
>> Even though many AArch64 registers have upper 32bit reserved
>> it does not mean that they can't be widen in the future.
>>
>> Modify type of hsr, cpsr, spsr_el1 to uint64_t.
> 
> As I pointed out in v1, the access to SPSR_EL1 has been quite fragile because we relied on the padding afterwards. I think this was ought to be explain in the commit message because it explain why the access in the assembly code is not modified.
> 
How about:
"
Modify type of hsr, cpsr, spsr_el1 to uint64_t.
Previously we relied on the padding after SPSR_EL1. As we removed the padding, modify the union to be 64bit
so we don't corrupt SPSR_FIQ.
No need to modify the assembly code becuase the accesses were based on 64bit registers as there was a 32bit padding after SPSR_EL1.
"
>>
>> Add 32bit RES0 members to structures inside hsr union.
>>
>> Remove 32bit padding in cpu_user_regs before spsr_fiq
>> as it is no longer needed due to upper union being 64bit now.
>>
>> Add 64bit padding in cpu_user_regs before spsr_el1
>> because offset of spsr_el1 must be a multiple of 8.
>>
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> diff --git a/xen/include/asm-arm/hsr.h b/xen/include/asm-arm/hsr.h
>> index 29d4531f40..fb4a3b1274 100644
>> --- a/xen/include/asm-arm/hsr.h
>> +++ b/xen/include/asm-arm/hsr.h
>> @@ -16,11 +16,12 @@ enum dabt_size {
>>   };
>>     union hsr {
>> -    uint32_t bits;
>> +    register_t bits;
>>       struct {
>>           unsigned long iss:25;  /* Instruction Specific Syndrome */
>>           unsigned long len:1;   /* Instruction length */
>>           unsigned long ec:6;    /* Exception Class */
>> +        unsigned long _res0:32;
> 
> Sorry I wasn't clear in my original comment, what I meant I would rather not add this field (and also the _res0) because they are not strictly necessary.
> 
Ok I'll remove _res0 members. But bits can be of type register_t, right?
>> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
>> index 713fd65317..c49bce2983 100644
>> --- a/xen/include/public/arch-arm.h
>> +++ b/xen/include/public/arch-arm.h
>> @@ -267,10 +267,10 @@ struct vcpu_guest_core_regs
>>         /* Return address and mode */
>>       __DECL_REG(pc64,         pc32);             /* ELR_EL2 */
>> -    uint32_t cpsr;                              /* SPSR_EL2 */
>> +    register_t cpsr;                            /* SPSR_EL2 */
> 
> You can't use register_t here because this is a public header (we don't export register_t) and the header should be bitness agnostic.
> 
> Also, because this is a public header, you ought to explain why breaking the ABI is fine.
> 
> In this case, this is an ABI between the tools and this is not stable. However, we would still need to bump XEN_DOMCTL_INTERFACE_VERSION as I think this wasn't done for this development cycle.
> 
> Of course, this will also need a suitable mention in the commit message (I can help with that).
> 
Ok so I'll increment XEN_DOMCTL_INTERFACE_VERSION and write in commit msg:
"
Change type of cpsr to uint64_t in the public outside interface "public/arch-arm.h" to allow ABI compatibility between 32bit and 64bit.
Increment XEN_DOMCTL_INTERFACE_VERSION.
"
>>         union {
>> -        uint32_t spsr_el1;       /* AArch64 */
>> +        uint64_t spsr_el1;       /* AArch64 */
>>           uint32_t spsr_svc;       /* AArch32 */
>>       };
>>   diff --git a/xen/include/public/vm_event.h b/xen/include/public/vm_event.h
>> index 36135ba4f1..ad3d141fe8 100644
>> --- a/xen/include/public/vm_event.h
>> +++ b/xen/include/public/vm_event.h
>> @@ -266,8 +266,12 @@ struct vm_event_regs_arm {
>>       uint64_t ttbr1;
>>       uint64_t ttbcr;
>>       uint64_t pc;
>> +#ifdef CONFIG_ARM_32
>>       uint32_t cpsr;
>>       uint32_t _pad;
>> +#else
>> +    uint64_t cpsr;
>> +#endif
> 
> CONFIG_ARM_32 is not defined for public header. They also should be bitness agnostic. So cpsr should always be uint64_t.
> 
> Also, similar to public/arch-arm.h, this is not a stable ABI but you will need to bump VM_EVENT_INTERFACE_VERSION if this hasn't been done for this development cycle.
> 
Ok so I will change type of cpsr here to uint64_t, increment VM_EVENT_INTERFACE_VERSION and write in commit msg:
"
Change type of cpsr to uint64_t in the public outside interface "public/vm_event.h" to allow ABI compatibility between 32bit and 64bit.
Increment VM_EVENT_INTERFACE_VERSION.
"
Ok?
> Cheers,
> 
Cheers,
Michal


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:04:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:04:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119797.226479 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2ad-00023T-TO; Thu, 29 Apr 2021 09:04:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119797.226479; Thu, 29 Apr 2021 09:04:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2ad-00023M-QF; Thu, 29 Apr 2021 09:04:07 +0000
Received: by outflank-mailman (input) for mailman id 119797;
 Thu, 29 Apr 2021 09:04:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc2ac-00023H-Pq
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:04:06 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9e3d16e3-ab0e-4c77-8ee9-8fe481de6eae;
 Thu, 29 Apr 2021 09:04:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 89683AE8D;
 Thu, 29 Apr 2021 09:04: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: 9e3d16e3-ab0e-4c77-8ee9-8fe481de6eae
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619687043; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=XMf+4zQQ0ncV4K8/XY2rrqIbwGFQSKNYsoW5/w5lIDw=;
	b=rk1glSRJd+y/NPPJacZsgIphyVxHgKuqRelCyQ5q0HYqYo7yUsZXxkmXk7YElwU0y1gybX
	vC403CyndNTnkDefLDcIzfxzwqeUGTobc9NY4NiDt/9BcwxnmAF7KqvYPlhVIJigNVIq3T
	CHnQpe+Rqa/9BI6m1SYtOKSdk9a282A=
Subject: Re: [PATCH v3 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210426153741.26904-1-luca.fancellu@arm.com>
 <20210426153741.26904-4-luca.fancellu@arm.com>
 <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
 <E47AFE69-CA75-468D-868D-182F78C6992C@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d50b05f7-f644-0123-9994-d31668bd5b5f@suse.com>
Date: Thu, 29 Apr 2021 11:04:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <E47AFE69-CA75-468D-868D-182F78C6992C@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 28.04.2021 16:59, Luca Fancellu wrote:
>> On 27 Apr 2021, at 14:57, Jan Beulich <jbeulich@suse.com> wrote:
>> On 26.04.2021 17:37, Luca Fancellu wrote:
>>> @@ -66,6 +67,7 @@
>>>  *     compiler barrier will still be required.
>>>  *
>>>  * Introducing a valid entry into the grant table:
>>> + * @code
>>>  *  1. Write ent->domid.
>>>  *  2. Write ent->frame:
>>>  *      GTF_permit_access:   Frame to which access is permitted.
>>> @@ -73,20 +75,25 @@
>>>  *                           frame, or zero if none.
>>>  *  3. Write memory barrier (WMB).
>>>  *  4. Write ent->flags, inc. valid type.
>>> + * @endcode
>>>  *
>>>  * Invalidating an unused GTF_permit_access entry:
>>> + * @code
>>>  *  1. flags = ent->flags.
>>>  *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
>>>  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>>  *  NB. No need for WMB as reuse of entry is control-dependent on success of
>>>  *      step 3, and all architectures guarantee ordering of ctrl-dep writes.
>>> + * @endcode
>>>  *
>>>  * Invalidating an in-use GTF_permit_access entry:
>>> + *
>>>  *  This cannot be done directly. Request assistance from the domain controller
>>>  *  which can set a timeout on the use of a grant entry and take necessary
>>>  *  action. (NB. This is not yet implemented!).
>>>  *
>>>  * Invalidating an unused GTF_accept_transfer entry:
>>> + * @code
>>>  *  1. flags = ent->flags.
>>>  *  2. Observe that !(flags & GTF_transfer_committed). [*]
>>>  *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>
>> Since neither in the cover letter nor in the description here I could
>> spot a link to the resulting generated doc, I wonder what the
>> inconsistencies above are about: You add @code/@endcode (and no blank
>> lines) to parts of what's being described, and _instead_ a blank line
>> to another part. I think the goal should be that not only the
>> generated doc ends up looking "nice", but that the source code also
>> remains consistent. Otherwise, someone like me coming across this
>> later on might easily conclude that there was a @code/@endcode pair
>> missed.
> 
> Yes I’ll explain better in the commit message, that part and other parts are
> enclosed by @code/@endcode because they are formatted using spaces.
> If the block is not enclosed the spaces are missing in the html page resulting
> In a mess.
> If you can suggest an alias for the @code/@endcode command, I can create
> it so that the user looking the source code can understand better what's going on.
> An example: @keepformat/@endkeepformat OR @keepindent/@endkeepindent

Oh, are you suggesting @code / @endcode isn't something doxygen mandates?
In this case either of your alternative suggestions would look better to
me. Which one depend on whether the goal to to merely keep indentation or
whether formatting should be kept altogether.

>>> @@ -97,18 +104,23 @@
>>>  *      transferred frame is written. It is safe for the guest to spin waiting
>>>  *      for this to occur (detect by observing GTF_transfer_completed in
>>>  *      ent->flags).
>>> + * @endcode
>>>  *
>>>  * Invalidating a committed GTF_accept_transfer entry:
>>>  *  1. Wait for (ent->flags & GTF_transfer_completed).
>>>  *
>>
>> Why did this not also get enclosed by @code/@endcode?
> 
> In this case there are no spaces that contributes to the indentation.

But if, for consistency, @code / @endcode were added here, all would
still be well?

>>>  * Changing a GTF_permit_access from writable to read-only:
>>> + *
>>>  *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writing.
>>>  *
>>>  * Changing a GTF_permit_access from read-only to writable:
>>> + *
>>>  *  Use SMP-safe bit-setting instruction.
>>
>> And these two?
> 
> These two lines makes the resulting html page looks better, the source code however
> seems not too impacted by the change though.

I was rather asking about the absence of @code / @endcode here.

>>> + * @addtogroup grant_table Grant Tables
>>
>> And no blank (comment) line ahead of this?
> 
> Here there is no need for a blank line in the comment, but if in your opinion the source
> code will look better I can add it

I think so, yes.

>>> @@ -120,24 +132,26 @@ typedef uint32_t grant_ref_t;
>>>  * [GST]: This field is written by the guest and read by Xen.
>>>  */
>>>
>>> -/*
>>> - * Version 1 of the grant table entry structure is maintained purely
>>> - * for backwards compatibility.  New guests should use version 2.
>>> - */
>>> #if __XEN_INTERFACE_VERSION__ < 0x0003020a
>>> #define grant_entry_v1 grant_entry
>>> #define grant_entry_v1_t grant_entry_t
>>> #endif
>>> +/**
>>> + * Version 1 of the grant table entry structure is maintained purely
>>> + * for backwards compatibility.  New guests should use version 2.
>>> + */
>>
>> In case I didn't say so already before - I think this would be a good
>> opportunity to drop the comment pointing at v2. With v2 optionally
>> unavailable altogether, this can't possibly be a generally valid
>> course of action.
> 
> Could you explain me better that? Do you want to get rid of this comment?

Especially the second sentence is misleading. If new code used v2, it
would not work on Xen with v2 support turned off.

> /**
> * Version 1 of the grant table entry structure is maintained purely
> * for backwards compatibility.  New guests should use version 2.
> */
> 
> In this case I don’t think this commit is the right place to do that, I can just
> put it back where it was so that the documentation simply doesn’t show that.

Keeping misleading information out of the docs is imo rather desirable.
Of course we should, independently of that, also address the misleading
information in the source code. I can accept that doing the adjustment
right in this patch may not be ideal. I don't suppose I could talk you
into adding a prereq patch dropping at least that 2nd sentence?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:07:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:07:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119804.226491 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2dx-0002FK-GD; Thu, 29 Apr 2021 09:07:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119804.226491; Thu, 29 Apr 2021 09:07: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 1lc2dx-0002FD-DA; Thu, 29 Apr 2021 09:07:33 +0000
Received: by outflank-mailman (input) for mailman id 119804;
 Thu, 29 Apr 2021 09:07:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc2dv-0002F4-NY
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:07:31 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 13c38456-034e-4087-a699-bd33d3cad37d;
 Thu, 29 Apr 2021 09:07:31 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 525A0AE58;
 Thu, 29 Apr 2021 09:07: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: 13c38456-034e-4087-a699-bd33d3cad37d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619687250; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=kZ8+Q0zgIfts31fsZzNLTN14pbGji5DamqlpHSrtT/w=;
	b=rgyfqqm6G0/t0ldcFBNqX/3beysXbMHoZujSmJeRqTXi1IWYirAmmXqTgO36zUvERCJqWO
	vyHYu7NNyogYmB9c+OzERDcLQKf2AG4L+WZxY7sTWzp5jVSVOTNiiDH76AjItonjxxdv6S
	aR87k2KlRrdbJe1rsBnQI9CnF/HQpbI=
Subject: Re: [PATCH 1/3] x86/hvm: Introduce experimental guest CET support
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-2-andrew.cooper3@citrix.com>
 <d8bd932d-071a-4a5b-747c-02cbd5e296cd@suse.com>
 <86cf1d97-2034-7791-071a-48208b6ba54b@citrix.com>
 <28d7b7a9-9dd2-1664-e946-d7e4a330da0f@suse.com>
 <3d1847f2-4ba6-416a-7957-3310b5d5124c@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <d0731b8b-7dd7-ed9f-e3fa-6543ed5e5afd@suse.com>
Date: Thu, 29 Apr 2021 11:07:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3d1847f2-4ba6-416a-7957-3310b5d5124c@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 28.04.2021 19:54, Andrew Cooper wrote:
> I know we're making up our "how to do complicated experimental features"
> process as we go here, but nothing *in Xen* will malfunction if a user
> opts into CET_SS/IBT.  Therefore I think they're fine to go in and stay.

Well, okay then. I hope possibls future additions of mine then will
get similar treatment.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:18:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:18:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119811.226502 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2oL-0003BH-Gv; Thu, 29 Apr 2021 09:18:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119811.226502; Thu, 29 Apr 2021 09:18: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 1lc2oL-0003BA-DS; Thu, 29 Apr 2021 09:18:17 +0000
Received: by outflank-mailman (input) for mailman id 119811;
 Thu, 29 Apr 2021 09:18:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc2oJ-0003Ap-KV
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:18:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4923acbb-d0bf-498c-bccb-89b290e81eba;
 Thu, 29 Apr 2021 09:18:14 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 111A7B2B6;
 Thu, 29 Apr 2021 09:18: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: 4923acbb-d0bf-498c-bccb-89b290e81eba
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619687894; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=orlt8YPBXc/hv8qsFpbphi6yj1nqbQAqbao7g0jbPJ8=;
	b=LaezvqF4urqOpuMikfVmPCnkmKNwWeWzpW8wbAsIIOJUKu71k2xzeC8+FvC+AO0ukWxgS6
	SG4VLCACgKk03c6KT3dlsJJF0bl7ieWHrxx8Y0v0zU0eGFk8tcad1h8dAVLiPOoLCqTPK5
	tmlI9+FrKEOtqB1rVexidI7EyUdT/ZQ=
Subject: Ping: [PATCH] build: centralize / unify asm-offsets generation
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>
References: <fa340caa-4ee1-a302-fbf1-1df400493d6b@suse.com>
 <YH7zXpPz03+kLzEr@Air-de-Roger>
 <e9de883b-604b-1193-b748-5a59795a9f31@suse.com>
 <YH7/SvkrB2yGgRij@Air-de-Roger>
 <5170aa51-8e34-3a45-5bf6-c0a187b1c427@suse.com>
 <YIfTyT4rvD9yEqiM@Air-de-Roger>
 <5018479d-b566-a32b-9a01-5ccf01fe0880@suse.com>
 <YIgSNRq2w7KSSaiD@Air-de-Roger>
 <e9a7b3c5-db38-76d8-64ec-2cfd9f46f1fd@suse.com>
 <YIgb/Tz/ic6uVXWo@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <8c34d016-47fb-eb6a-2be5-9497094effa7@suse.com>
Date: Thu, 29 Apr 2021 11:18:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIgb/Tz/ic6uVXWo@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 27.04.2021 16:13, Roger Pau Monné wrote:
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks Roger.

Julien, Stefano, may I ask for an Arm side ack (or otherwise) here
as well?

Thanks, Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:19:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:19:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119815.226515 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2ps-0003Jo-Rt; Thu, 29 Apr 2021 09:19:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119815.226515; Thu, 29 Apr 2021 09: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 1lc2ps-0003Jh-Ob; Thu, 29 Apr 2021 09:19:52 +0000
Received: by outflank-mailman (input) for mailman id 119815;
 Thu, 29 Apr 2021 09:19:51 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc2pr-0003Jb-H3
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:19:51 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 900f8a68-65dd-4694-b1e9-e663f11312a7;
 Thu, 29 Apr 2021 09:19:50 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 231FFAFDC;
 Thu, 29 Apr 2021 09:19: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: 900f8a68-65dd-4694-b1e9-e663f11312a7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619687990; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=G31M1ct4Lsq5HdFATXqrZXz44D7Ks0DUB+Hxh1cG+zI=;
	b=hfQUvud/Ja9sTtS+EKaiuC0D4nV6k0RqvRtH/T9urT/A5Hs1RnAP2eePo4TyPoBt5PYsgl
	0U8tGXfUF43NAhW47ykfcgz118ZYqvY0DacdQEKzeOgP+ogxR0yvqOFyABzCNO9bYgMnzx
	i8NAVRpHXkytwDIgdjj2zHm5hj6DZmo=
Subject: Ping: [PATCH v4 0/3] zstd decompression fallout / consolidation
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Ian Jackson <iwj@xenproject.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Message-ID: <dbaf9f53-9e11-ef5d-e609-f327895f4015@suse.com>
Date: Thu, 29 Apr 2021 11:19:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 21.04.2021 12:20, Jan Beulich wrote:
> 1: unzstd: replace INIT{,DATA} and STATIC
> 2: xen/decompress: drop STATIC and INIT
> 3: unzstd: make helper symbols static

Anyone?

Thanks, Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:21:43 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:21:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119820.226527 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2re-00048R-79; Thu, 29 Apr 2021 09:21:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119820.226527; Thu, 29 Apr 2021 09: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 1lc2re-00048K-4B; Thu, 29 Apr 2021 09:21:42 +0000
Received: by outflank-mailman (input) for mailman id 119820;
 Thu, 29 Apr 2021 09:21:41 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc2rd-00048F-Nr
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:21:41 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id efa0eb8d-2f5d-436f-aca0-c8631e464765;
 Thu, 29 Apr 2021 09:21:41 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4BAA2B139;
 Thu, 29 Apr 2021 09:21: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: efa0eb8d-2f5d-436f-aca0-c8631e464765
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619688100; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mpgj3TFsXUoHUD8oolMPIq9zL7H+tsMnvs1tyZlY+zs=;
	b=UOqt0ewcilpZ6C6XOHscUlggywwxXwQN/Jh8PnL4QSPJ+tNchrdOkBrLCVqOq/fPVbkTU3
	oLU1y/M+8D+a0N0qZXyM7EHrgjhA+j8MoB+JreT8X13CmF5fZwCiGaDVOMOMTr2a/s9bXB
	EtlXL4QMvP8PhlLEE/ZhfvBH6gqnWQk=
Subject: Re: [PATCH] x86/AMD: also determine L3 cache size
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: <7ffeec9f-2ce4-9122-4699-32c3ffb06a5d@suse.com>
 <3ff79e34-da70-85c3-0324-efa50313d5b4@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <487bed52-bd1d-ceee-a85a-9bed9aad4712@suse.com>
Date: Thu, 29 Apr 2021 11:21:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3ff79e34-da70-85c3-0324-efa50313d5b4@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 16.04.2021 16:21, Andrew Cooper wrote:
> On 16/04/2021 14:20, Jan Beulich wrote:
>> For Intel CPUs we record L3 cache size, hence we should also do so for
>> AMD and alike.
>>
>> While making these additions, also make sure (throughout the function)
>> that we don't needlessly overwrite prior values when the new value to be
>> stored is zero.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> I have to admit though that I'm not convinced the sole real use of the
>> field (in flush_area_local()) is a good one - flushing an entire L3's
>> worth of lines via CLFLUSH may not be more efficient than using WBINVD.
>> But I didn't measure it (yet).
> 
> WBINVD always needs a broadcast IPI to work correctly.
> 
> CLFLUSH and friends let you do this from a single CPU, using cache
> coherency to DTRT with the line, wherever it is.
> 
> 
> Looking at that logic in flush_area_local(), I don't see how it can be
> correct.  The WBINVD path is a decomposition inside the IPI, but in the
> higher level helpers, I don't see how the "area too big, convert to
> WBINVD" can be safe.
> 
> All users of FLUSH_CACHE are flush_all(), except two PCI
> Passthrough-restricted cases. MMUEXT_FLUSH_CACHE_GLOBAL looks to be
> safe, while vmx_do_resume() has very dubious reasoning, and is dead code
> I think, because I'm not aware of a VT-x capable CPU without WBINVD-exiting.

Besides my prior question on your reply, may I also ask what all of
this means for the patch itself? After all you've been replying to
the post-commit-message remark only so far.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:24:48 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:24:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119825.226539 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2uH-0004Go-Lq; Thu, 29 Apr 2021 09:24:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119825.226539; Thu, 29 Apr 2021 09:24:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2uH-0004Gh-Hu; Thu, 29 Apr 2021 09:24:25 +0000
Received: by outflank-mailman (input) for mailman id 119825;
 Thu, 29 Apr 2021 09:24:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc2uG-0004Gc-Dc
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:24:24 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 287a7591-3749-4d46-8285-f0391eb17a10;
 Thu, 29 Apr 2021 09:24:23 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 90D8CB004;
 Thu, 29 Apr 2021 09:24: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: 287a7591-3749-4d46-8285-f0391eb17a10
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619688262; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=knfMbILYQH2XVxt+stei43N3k9ZVl38cxLCI2LaNVv0=;
	b=nG2q2HXnUKPt4dsyQ/OVx+B/DhTKMvaTG5cDyrVQJkbqR9O2kBZIbLWgjg+dff5WLdwYES
	X+6zKfuEC9w9P3KPi1FWHPIFLRJOpJ+yAtnbQXhLvI7oKy4QTk9jyRxyM+dpvQnxQQcuxt
	qSyVjCpYByyKbR3SXPdxz5eOYg75TLU=
Subject: Ping: [PATCH] x86emul: fix test harness build for gas 2.36
From: Jan Beulich <jbeulich@suse.com>
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: <723af87e-329d-6f52-ece4-fc3314796960@suse.com>
 <5e6f7769-ba07-bccb-9d73-4c7c0db67f89@citrix.com>
 <62d6134b-cf49-275e-d1a8-1b47d9152888@suse.com>
Message-ID: <c6bff966-4341-8648-49d6-b243a2d821ac@suse.com>
Date: Thu, 29 Apr 2021 11:24:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <62d6134b-cf49-275e-d1a8-1b47d9152888@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 19.04.2021 17:51, Jan Beulich wrote:
> On 19.04.2021 17:41, Andrew Cooper wrote:
>> On 19/04/2021 16:30, Jan Beulich wrote:
>>> All of the sudden, besides .text and .rodata and alike, an always
>>> present .note.gnu.property section has appeared. This section, when
>>> converting to binary format output, gets placed according to its
>>> linked address, causing the resulting blobs to be about 128Mb in size.
>>> The resulting headers with a C representation of the binary blobs then
>>> are, of course all a multiple of that size (and take accordingly long
>>> to create). I didn't bother waiting to see what size the final
>>> test_x86_emulator binary then would have had.
>>>
>>> See also https://sourceware.org/bugzilla/show_bug.cgi?id=27753.
>>>
>>> Rather than figuring out whether gas supports -mx86-used-note=, simply
>>> remove the section while creating *.bin.
>>>
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>
>>> --- a/tools/tests/x86_emulator/testcase.mk
>>> +++ b/tools/tests/x86_emulator/testcase.mk
>>> @@ -12,11 +12,11 @@ all: $(TESTCASE).bin
>>>  %.bin: %.c
>>>  	$(CC) $(filter-out -M% .%,$(CFLAGS)) -c $<
>>>  	$(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x100000 -o $*.tmp $*.o
>>> -	$(OBJCOPY) -O binary $*.tmp $@
>>> +	$(OBJCOPY) -O binary -R .note.gnu.property $*.tmp $@
>>>  	rm -f $*.tmp
>>>  
>>>  %-opmask.bin: opmask.S
>>>  	$(CC) $(filter-out -M% .%,$(CFLAGS)) -c $< -o $(basename $@).o
>>>  	$(LD) $(LDFLAGS_DIRECT) -N -Ttext 0x100000 -o $(basename $@).tmp $(basename $@).o
>>> -	$(OBJCOPY) -O binary $(basename $@).tmp $@
>>> +	$(OBJCOPY) -O binary -R .note.gnu.property $(basename $@).tmp $@
>>>  	rm -f $(basename $@).tmp
>>
>> Hmm - this is very ugly.  We don't really want to be stripping this
>> information, because it covers various properties of the binary which
>> need not to be lost, including stack-clash mitigations, and CET status.
> 
> Could you clarify who you think wants to consume this information from
> these format-less binary blobs? They're strictly internal to the test
> harness.
> 
>> We might be able to get away with saying that we're operating strictly
>> with defaults, and folding these *.bin's back into a program which is
>> also linked with defaults, at which point the resulting binary ought to
>> end up with a compatible .note.gnu.property section, but I'm not sure
>> how convinced I am by this argument.
> 
> Well, if we want to make it complicated, we could of course extract
> the notes into a separate ELF object, and include that object in the
> linking process. But these notes are wrong anyway: Whichever insns the
> blobs use, test_x86_emulator does _not_ need CPU support for them, as
> it'll suitably avoid executing any of the blobs. Similarly stack and
> CET related information is not of interest for the blobs, only for the
> "normal" object files.

Besides there not having been any response from you so far, I'd like to
point out that stripping the section is also what H.J. suggests in the
referenced bugzilla entry. (As said there, I don't view this as an
excuse to break use cases like ours by default, but that's orthogonal.)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:27:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:27:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119830.226551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc2xP-0004QQ-4O; Thu, 29 Apr 2021 09:27:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119830.226551; Thu, 29 Apr 2021 09:27: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 1lc2xP-0004QJ-1I; Thu, 29 Apr 2021 09:27:39 +0000
Received: by outflank-mailman (input) for mailman id 119830;
 Thu, 29 Apr 2021 09:27:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc2xN-0004QD-RP
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:27:37 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id d420ae85-4cdc-4011-aea0-a52817d82253;
 Thu, 29 Apr 2021 09:27:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3DB17B00D;
 Thu, 29 Apr 2021 09:27: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: d420ae85-4cdc-4011-aea0-a52817d82253
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619688456; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=Mt20MGHTZyuBJYIFruA0EHjGY1qpWv39VDyBCo/fRGI=;
	b=nWTAGdbTIQ3TXexS50Ol/W1vLndoo3hoP0zaM4mCZwZOg4SAlMsXwhgHXSEz5U11z0DfzI
	6AaMYgdgWbZZNmMoNWhCceyeUiWC3Nf4gJAL8vQEVoDx/6TXWrlvGIPs1ntzZtKxDisLFy
	iIzVtLZXv2c5Te4/T5bJ5eHQwdP+Od0=
Subject: Ping: [PATCH v2 00/12] x86/p2m: restrict more code to build just for
 HVM
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Cc: George Dunlap <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Message-ID: <b619a0de-c88c-1882-7e27-8f5cb3ef7103@suse.com>
Date: Thu, 29 Apr 2021 11:27:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 12.04.2021 16:03, Jan Beulich wrote:
> Since it was brought up in the discussion of v1: I think the end
> goal is to be for mm/p2m.c to become a HVM-only file. Any "wrappers"
> also trying to take care of !paging_mode_translate() guests ought to
> be moved elsewhere. To see what actually still needs taking care of,
> incrementally extending the #ifdef CONFIG_HVM regions there is the
> way to go imo.
> 
> Compared to v1 there are many new patches here plus build fixes to
> two of the three remaining ones from v1.
> 
> 01: p2m: set_{foreign,mmio}_p2m_entry() are HVM-only
> 02: p2m: {,un}map_mmio_regions() are HVM-only
> 03: mm: the gva_to_gfn() hook is HVM-only
> 04: AMD/IOMMU: guest IOMMU support is for HVM only
> 05: p2m: change_entry_type_* hooks are HVM-only
> 06: p2m: hardware-log-dirty related hooks are HVM-only
> 07: p2m: the recalc hook is HVM-only
> 08: mem-access is HVM-only
> 09: make mem-paging configuarable and default it to off for being unsupported
> 10: p2m: {get,set}_entry hooks and p2m-pt.c are HVM-only
> 11: p2m: write_p2m_entry_{pre,post} hooks are HVM-only
> 12: p2m: re-arrange struct p2m_domain

Besides patch 8, which has gone in, I've got two acks from Tim for
shadow code changes and contradicting feedback on patch 9, but
nothing else.

Thanks for acks or otherwise,
Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:31:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:31:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119836.226562 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc30v-0005If-Kt; Thu, 29 Apr 2021 09:31:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119836.226562; Thu, 29 Apr 2021 09: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 1lc30v-0005IY-Hj; Thu, 29 Apr 2021 09:31:17 +0000
Received: by outflank-mailman (input) for mailman id 119836;
 Thu, 29 Apr 2021 09:31:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc30t-0005IA-TP
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:31:15 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id daf7eead-c94e-4af9-aea9-f483e61b1c38;
 Thu, 29 Apr 2021 09:31:10 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 3BA10B004;
 Thu, 29 Apr 2021 09:31: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: daf7eead-c94e-4af9-aea9-f483e61b1c38
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619688669; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=oAekxrxornC8EWfdiuAI1iWCTS4Ircvg83KybkTn3k8=;
	b=dO2PY+4Hj1nUgvHnzWwBU6IXA2Mr4eekbaQ9tRQdJ9HIJq/ZngLak+DmhOWgDxb/HoLO0r
	GYAesu49/40OE0lNVOEM9rDlqSobD8nEf3IkXWpUo0QfYIsa12lYCP28LcLhASAZfbDblU
	JyzHTJwBJEPBR0rWZcb6PhsIQyQxSeY=
Subject: Ping: [PATCH v3] gnttab: defer allocation of status frame tracking
 array
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>
Cc: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2397cd4-040e-3cc0-22d8-3f65d01f9326@suse.com>
Message-ID: <bea459c9-32ed-a800-40ea-456b465cd38a@suse.com>
Date: Thu, 29 Apr 2021 11:31:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <d2397cd4-040e-3cc0-22d8-3f65d01f9326@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 15.04.2021 11:41, Jan Beulich wrote:
> This array can be large when many grant frames are permitted; avoid
> allocating it when it's not going to be used anyway, by doing this only
> in gnttab_populate_status_frames().
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

I know there has been controversy here. Julien - you seemed to agree,
and iirc you partly drove how the patch is looking now. May I ask for
an ack? Andrew - you disagreed for reasons that neither Julien nor I
could really understand. Would you firmly nack the change and suggest
a way out, or would you allow this to go in with someone else's ack?

Thanks, Jan

> ---
> v3: Drop smp_wmb(). Re-base.
> v2: Defer allocation to when a domain actually switches to the v2 grant
>     API.
> 
> --- a/xen/common/grant_table.c
> +++ b/xen/common/grant_table.c
> @@ -1747,6 +1747,17 @@ gnttab_populate_status_frames(struct dom
>      /* Make sure, prior version checks are architectural visible */
>      block_speculation();
>  
> +    if ( gt->status == ZERO_BLOCK_PTR )
> +    {
> +        gt->status = xzalloc_array(grant_status_t *,
> +                                   grant_to_status_frames(gt->max_grant_frames));
> +        if ( !gt->status )
> +        {
> +            gt->status = ZERO_BLOCK_PTR;
> +            return -ENOMEM;
> +        }
> +    }
> +
>      for ( i = nr_status_frames(gt); i < req_status_frames; i++ )
>      {
>          if ( (gt->status[i] = alloc_xenheap_page()) == NULL )
> @@ -1767,18 +1778,23 @@ status_alloc_failed:
>          free_xenheap_page(gt->status[i]);
>          gt->status[i] = NULL;
>      }
> +    if ( !nr_status_frames(gt) )
> +    {
> +        xfree(gt->status);
> +        gt->status = ZERO_BLOCK_PTR;
> +    }
>      return -ENOMEM;
>  }
>  
>  static int
>  gnttab_unpopulate_status_frames(struct domain *d, struct grant_table *gt)
>  {
> -    unsigned int i;
> +    unsigned int i, n = nr_status_frames(gt);
>  
>      /* Make sure, prior version checks are architectural visible */
>      block_speculation();
>  
> -    for ( i = 0; i < nr_status_frames(gt); i++ )
> +    for ( i = 0; i < n; i++ )
>      {
>          struct page_info *pg = virt_to_page(gt->status[i]);
>          gfn_t gfn = gnttab_get_frame_gfn(gt, true, i);
> @@ -1833,12 +1849,11 @@ gnttab_unpopulate_status_frames(struct d
>          page_set_owner(pg, NULL);
>      }
>  
> -    for ( i = 0; i < nr_status_frames(gt); i++ )
> -    {
> -        free_xenheap_page(gt->status[i]);
> -        gt->status[i] = NULL;
> -    }
>      gt->nr_status_frames = 0;
> +    for ( i = 0; i < n; i++ )
> +        free_xenheap_page(gt->status[i]);
> +    xfree(gt->status);
> +    gt->status = ZERO_BLOCK_PTR;
>  
>      return 0;
>  }
> @@ -1969,11 +1984,11 @@ int grant_table_init(struct domain *d, i
>      if ( gt->shared_raw == NULL )
>          goto out;
>  
> -    /* Status pages for grant table - for version 2 */
> -    gt->status = xzalloc_array(grant_status_t *,
> -                               grant_to_status_frames(gt->max_grant_frames));
> -    if ( gt->status == NULL )
> -        goto out;
> +    /*
> +     * Status page tracking array for v2 gets allocated on demand. But don't
> +     * leave a NULL pointer there.
> +     */
> +    gt->status = ZERO_BLOCK_PTR;
>  
>      grant_write_lock(gt);
>  
> @@ -4047,11 +4062,12 @@ int gnttab_acquire_resource(
>          if ( gt->gt_version != 2 )
>              break;
>  
> +        rc = gnttab_get_status_frame_mfn(d, final_frame, &tmp);
> +
>          /* Check that void ** is a suitable representation for gt->status. */
>          BUILD_BUG_ON(!__builtin_types_compatible_p(
>                           typeof(gt->status), grant_status_t **));
>          vaddrs = (void **)gt->status;
> -        rc = gnttab_get_status_frame_mfn(d, final_frame, &tmp);
>          break;
>      }
>  
> 



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:32:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:32:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119843.226575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc32T-0005QZ-5F; Thu, 29 Apr 2021 09:32:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119843.226575; Thu, 29 Apr 2021 09: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 1lc32T-0005QS-1Q; Thu, 29 Apr 2021 09:32:53 +0000
Received: by outflank-mailman (input) for mailman id 119843;
 Thu, 29 Apr 2021 09:32:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc32S-0005QM-63
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:32:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id da431c97-9227-4130-8623-7ec2ca63f1e3;
 Thu, 29 Apr 2021 09:32:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 76672B139;
 Thu, 29 Apr 2021 09: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: da431c97-9227-4130-8623-7ec2ca63f1e3
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619688770; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=EUYmNWnLJxTNmla9okYoJpep/XPGDEc2+rHLv9z/CaE=;
	b=S/40pMkosT/PEb4+xsCaamHz03k0TimzEu76JGCai7L4tLgcPXWfOSLblh37cefYz7ZPPa
	9dqRL3R4+1FLlI/FfFv5DcMkDDPwzPKnLBBnjPHUcfBVrfxiWt9cDNjzX1kqCg8tIxqGId
	LNyabRjVuplDs2zQXDoVVUr5zu8kSUQ=
Subject: Re: [PATCH v4 3/3] x86/time: avoid reading the platform timer in
 rendezvous functions
From: Jan Beulich <jbeulich@suse.com>
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: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
 <YH79ZxNRhW24jmUS@Air-de-Roger>
 <88819ae1-d021-9192-4be7-a70064f23feb@suse.com>
Message-ID: <0c00ed2c-0f8d-ad6e-863e-71c904270407@suse.com>
Date: Thu, 29 Apr 2021 11:32:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <88819ae1-d021-9192-4be7-a70064f23feb@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 21.04.2021 12:06, Jan Beulich wrote:
> On 20.04.2021 18:12, Roger Pau Monné wrote:
>> On Thu, Apr 01, 2021 at 11:55:10AM +0200, Jan Beulich wrote:
>>> Reading the platform timer isn't cheap, so we'd better avoid it when the
>>> resulting value is of no interest to anyone.
>>>
>>> The consumer of master_stime, obtained by
>>> time_calibration_{std,tsc}_rendezvous() and propagated through
>>> this_cpu(cpu_calibration), is local_time_calibration(). With
>>> CONSTANT_TSC the latter function uses an early exit path, which doesn't
>>> explicitly use the field. While this_cpu(cpu_calibration) (including the
>>> master_stime field) gets propagated to this_cpu(cpu_time).stamp on that
>>> path, both structures' fields get consumed only by the !CONSTANT_TSC
>>> logic of the function.
>>>
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>> ---
>>> v4: New.
>>> ---
>>> I realize there's some risk associated with potential new uses of the
>>> field down the road. What would people think about compiling time.c a
>>> 2nd time into a dummy object file, with a conditional enabled to force
>>> assuming CONSTANT_TSC, and with that conditional used to suppress
>>> presence of the field as well as all audited used of it (i.e. in
>>> particular that large part of local_time_calibration())? Unexpected new
>>> users of the field would then cause build time errors.
>>
>> Wouldn't that add quite a lot of churn to the file itself in the form
>> of pre-processor conditionals?
> 
> Possibly - I didn't try yet, simply because of fearing this might
> not be liked even without presenting it in patch form.
> 
>> Could we instead set master_stime to an invalid value that would make
>> the consumers explode somehow?
> 
> No idea whether there is any such "reliable" value.
> 
>> I know there might be new consumers, but those should be able to
>> figure whether the value is sane by looking at the existing ones.
> 
> This could be the hope, yes. But the effort of auditing the code to
> confirm the potential of optimizing this (after vaguely getting the
> impression there might be room) was non-negligible (in fact I did
> three runs just to be really certain). This in particular means
> that I'm in no way certain that looking at existing consumers would
> point out the possible pitfall.
> 
>> Also, since this is only done on the BSP on the last iteration I
>> wonder if it really makes such a difference performance-wise to
>> warrant all this trouble.
> 
> By "all this trouble", do you mean the outlined further steps or
> the patch itself? In the latter case, while it's only the BSP to
> read the value, all other CPUs are waiting for the BSP to get its
> part done. So the extra time it takes to read the platform clock
> affects the overall duration of the rendezvous, and hence the time
> not "usefully" spent by _all_ of the CPUs.

Ping? Your answer here has a significant effect on the disposition
of this change.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:35:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:35:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119849.226587 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc35I-0005b0-K4; Thu, 29 Apr 2021 09:35:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119849.226587; Thu, 29 Apr 2021 09:35:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc35I-0005at-H0; Thu, 29 Apr 2021 09:35:48 +0000
Received: by outflank-mailman (input) for mailman id 119849;
 Thu, 29 Apr 2021 09:35:47 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc35H-0005ao-Jv
 for xen-devel@lists.xen.org; Thu, 29 Apr 2021 09:35:47 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4c34e34e-bbe1-43c4-a7b5-a7629065df28;
 Thu, 29 Apr 2021 09:35:46 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CE49DAFE1;
 Thu, 29 Apr 2021 09:35: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: 4c34e34e-bbe1-43c4-a7b5-a7629065df28
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619688945; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=X2OV4pAIm+D4Mq+z1muNo/etlA5NNla0VOkM/UVJRjg=;
	b=FLGgcREr+5LcXo0eECpJVPz/NwgjEjIXAYGaXjxmOV130A9P3z7aGwa5KWYpK2mOemoMYK
	hsMz5I5zro39JDrFO25ZFTC7H0N+BvebXB+DciZ5oZ+pfv0tvpKwXk+Mw0ZB09tv75CjHU
	B2T1xSFPOvj/eo8pMxiCaHBIbB327vY=
Subject: Re: Serial Console : SOL vs Physical Port
To: =?UTF-8?Q?Charles_Gon=c3=a7alves?= <charles.fg@gmail.com>
References: <CAAQRGoBi4tC+K_FHJceXxEqC6wy79qX0aE60OOeBWSo8tTEbjg@mail.gmail.com>
Cc: xen-devel@lists.xen.org
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <37488d5d-eec9-53f2-4ba7-157a7f9f5a9d@suse.com>
Date: Thu, 29 Apr 2021 11:35:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <CAAQRGoBi4tC+K_FHJceXxEqC6wy79qX0aE60OOeBWSo8tTEbjg@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 28.04.2021 20:49, Charles Gonçalves wrote:
> Is there any difference between both?
> I'm trying to debug an issue using a SOL but the host crashes before any
> meaningful message.
> 
> The SOL is working properly when I can debug some crashes perfectly. But
> for a specific case I'm wondering if I could be losing some messages.

Well, without having an explanation, experience tells me that SOL in
some cases is more fragile. Do you have "sync_console" in place? Does
the crash perhaps happen too early for the serial output to have got
configured in Xen yet?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:40:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:40:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119854.226599 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc39T-0006OJ-7B; Thu, 29 Apr 2021 09:40:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119854.226599; Thu, 29 Apr 2021 09: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 1lc39T-0006OC-2D; Thu, 29 Apr 2021 09:40:07 +0000
Received: by outflank-mailman (input) for mailman id 119854;
 Thu, 29 Apr 2021 09:40:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc39R-0006BD-JS
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:40:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 93005f52-26b4-41a4-a676-e4cd29567c9d;
 Thu, 29 Apr 2021 09:40:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9FD95B018;
 Thu, 29 Apr 2021 09:40: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: 93005f52-26b4-41a4-a676-e4cd29567c9d
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619689203; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=vahH0cyhzgCAdu5nMA3Vm4iCr2LnlAjH9wZJn6cLx9I=;
	b=SOfrPhyqXARHNLVeopc75SXTUMHVwUkpF/MLEXKOgLncsFODqnBkBhfmGMqcPGMGuuc6Gq
	wg9AzlNVTBFjYRtVJXc+l7B8H5EFXA28XXiWQ50wTZ9r5RRR5mk1hOjNF6ZRs9yHn45EUH
	a8FOD8zuK9fZ1jseCE+TZugmEBLzmok=
Subject: Re: [PATCH v3 19/22] x86emul: support TILELOADD{,T1} and TILESTORE
To: paul@xen.org
References: <322de6db-e01f-0b57-5777-5d94a13c441a@suse.com>
 <fc272d90-9a3c-98e9-d811-ea9b70f89e22@suse.com>
 <6b604011-a618-871a-2a3e-9118dd1b702b@suse.com>
 <c63e6988-196d-ab7c-5971-611eba99a7d6@suse.com>
 <3c1d6f14-b091-6244-0ef0-3925601c770d@xen.org>
Cc: xen-devel@lists.xenproject.org
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <4f129a52-06ce-ab14-3e70-a7c78b64d344@suse.com>
Date: Thu, 29 Apr 2021 11:40:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <3c1d6f14-b091-6244-0ef0-3925601c770d@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 26.04.2021 09:12, Paul Durrant wrote:
> On 22/04/2021 16:11, Jan Beulich wrote:
>> On 22.04.2021 17:06, Jan Beulich wrote:
>>> On 22.04.2021 16:55, Jan Beulich wrote:
>>>> +        do {
>>>> +            /* Limit rows to just as many to cover the next one to access. */
>>>> +            cfg->start_row = i;
>>>> +            cfg->rows[modrm_reg] = i + 1;
>>>> +            write_tilecfg(cfg);
>>>> +
>>>> +            if ( vex.pfx != vex_f3 )
>>>> +                rc = ops->read(ea.mem.seg,
>>>> +                               truncate_ea(ea.mem.off + i * ea.val),
>>>> +                               row, cfg->colsb[modrm_reg], ctxt);
>>>> +
>>>> +            invoke_stub("", "", "=m" (dummy) : "a" (row));
>>>> +
>>>> +            if ( vex.pfx == vex_f3 )
>>>> +                rc = ops->write(ea.mem.seg,
>>>> +                                truncate_ea(ea.mem.off + i * ea.val),
>>>> +                                row, cfg->colsb[modrm_reg], ctxt);
>>>> +        } while ( rc == X86EMUL_OKAY && ++i < n );
>>>
>>> in principle tiles could have rows larger than 64 bytes without any
>>> separate CPUID feature flag qualifying this. struct hvm_mmio_cache,
>>> otoh, is having a fixed-size 64-byte buffer right now. Therefore I'm
>>> wondering whether we'd want to switch to dynamically allocating that
>>> to the minimum of 64 bytes and the size of a tile row, just as a
>>> precautionary measure.
>>
>> Actually, as it occurred to me only after sending, enlarging tile size
>> would under almost all circumstances require a new XSTATE component,
>> which we'd need to enable first. I consider it less likely that they'd
>> permit a wider range of layouts without increasing tile size. But we
>> might still want to play safe.
>>
> 
> I guess on-demand reallocation to a larger size would be fine. Certainly 
> we want to be sure we don't overflow.

Okay, I've added a patch doing not just this, but (perhaps even more
important) also increase struct hvmemul_cache's capacity on such
hardware.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 09:51:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 09:51:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119859.226610 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc3KP-0007O9-8N; Thu, 29 Apr 2021 09:51:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119859.226610; Thu, 29 Apr 2021 09: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 1lc3KP-0007O2-4g; Thu, 29 Apr 2021 09:51:25 +0000
Received: by outflank-mailman (input) for mailman id 119859;
 Thu, 29 Apr 2021 09:51:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hKuK=J2=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lc3KN-0007Nw-It
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 09:51:23 +0000
Received: from EUR02-VE1-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe06::608])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fae62a45-f470-4003-b37a-529f20ff2da5;
 Thu, 29 Apr 2021 09:51:21 +0000 (UTC)
Received: from MR1P264CA0026.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:2f::13)
 by AM7PR08MB5350.eurprd08.prod.outlook.com (2603:10a6:20b:101::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Thu, 29 Apr
 2021 09:51:10 +0000
Received: from VE1EUR03FT015.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:501:2f:cafe::cd) by MR1P264CA0026.outlook.office365.com
 (2603:10a6:501:2f::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend
 Transport; Thu, 29 Apr 2021 09:51:08 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT015.mail.protection.outlook.com (10.152.18.176) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 09:51:08 +0000
Received: ("Tessian outbound 13cdc29c30b8:v91");
 Thu, 29 Apr 2021 09:51:07 +0000
Received: from 89079452d038.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B2BD8398-0CCE-4258-A063-5ACAEBBC4191.1; 
 Thu, 29 Apr 2021 09:51:00 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 89079452d038.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 29 Apr 2021 09:51:00 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR0802MB2541.eurprd08.prod.outlook.com (2603:10a6:800:b1::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.22; Thu, 29 Apr
 2021 09:50:57 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4065.028; Thu, 29 Apr 2021
 09:50:57 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO2P265CA0213.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:9e::33) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.28 via Frontend Transport; Thu, 29 Apr 2021 09:50:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fae62a45-f470-4003-b37a-529f20ff2da5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=79WTCZcz/4zCFT2hVqvW4JD7Ce1azRGiFoIX3Tb5AQU=;
 b=dXIpiycyviaqLoJVW2+DVFlVgcnw6fZX+3eoFMf/txsfnS8ZQd6pxCPhjRRb8aCkNe2o6b1aD6DARFtpfCWT9HsJ7jOy3DVafFRzEnLCFcz/8OXkXxEP2YrRHAQas1zt0b6CZw+hz7DCI4Szc1kssXQq1M8MBS4DnJXz9p0IAD0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 419381b64f7f2dc4
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JvQjUW9mg3jL0hVmH+9nS+SupC/rWO+/vr/iO974yLUglh496K2zLttpltNItZ8QW//53ELf/Pcyl4Ba99z5Dd7FAimqJOvR3lJPBegx3vILx1qgSuH+ibqaPSTXYAe3D9qoqexlomK3IITaTKWA+L9InOMzkpu/x8FCNI2MsXpk9piFWpBcySWHq1TgCJqs6YXo3SxVrA0276FxdaGE1V+w9ToHPSa3TcItXwcvvgnrtmZsl6WMSzO6CI0ObIVIw9JA9G2dKGbCCKQrU3hj3plLnPb9OOWsld5giemdYzNKnjnIGLL3ASPdeLsmfr/mjvrJA5mR2t1j8StcflifxA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=79WTCZcz/4zCFT2hVqvW4JD7Ce1azRGiFoIX3Tb5AQU=;
 b=niBFl892Pewkl6mUCIb6O/UGk8rgrvjvHthGr8oQiu09hB9MghUZGxcCDX2vBFcQIn3UEndxs2Kh3JKxNl554Dd2zzlUMrRL00yHitnbib83SlOauqT2j8E2dW2M7qP9Cg/B7gT7ZcpqnTdRa3TWwkiun+3EYVESoEeffBmIuIhRf2rVvAGdRXqXS4/BMvbKWKw/y7EPI+HuMqypBxg8bDD0UWYbG7XytixBV+oALC0vy3GbDcdlj9NtgAhHyvdNoUuqv9Ol5DxxhnkE8mWr7aYuGFHTVdoOMwxI5+tVRG4iTmsUjoZF0lVvClJ0/ONUhZVpdm2Wtm/N0xhWHXrPYw==
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=79WTCZcz/4zCFT2hVqvW4JD7Ce1azRGiFoIX3Tb5AQU=;
 b=dXIpiycyviaqLoJVW2+DVFlVgcnw6fZX+3eoFMf/txsfnS8ZQd6pxCPhjRRb8aCkNe2o6b1aD6DARFtpfCWT9HsJ7jOy3DVafFRzEnLCFcz/8OXkXxEP2YrRHAQas1zt0b6CZw+hz7DCI4Szc1kssXQq1M8MBS4DnJXz9p0IAD0=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v3 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <d50b05f7-f644-0123-9994-d31668bd5b5f@suse.com>
Date: Thu, 29 Apr 2021 10:50:48 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <38004B72-8F91-4B4E-843E-B80911DC48B3@arm.com>
References: <20210426153741.26904-1-luca.fancellu@arm.com>
 <20210426153741.26904-4-luca.fancellu@arm.com>
 <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
 <E47AFE69-CA75-468D-868D-182F78C6992C@arm.com>
 <d50b05f7-f644-0123-9994-d31668bd5b5f@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO2P265CA0213.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:9e::33) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 1f283752-718f-4b9a-97ab-08d90af45056
X-MS-TrafficTypeDiagnostic: VI1PR0802MB2541:|AM7PR08MB5350:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AM7PR08MB53509EC57E97B27840D53B33E45F9@AM7PR08MB5350.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 j7YF5nSN4XqpOU8W4gHttwhXDpKstbWKUs1gUMbT7ynkdx7oi3s25mc9mlxzPgf5h1j44dVq8H/iWN/Hwu/bVBnAsTFsesESNqazAGhG2XHUyAk4GSe6Fk1hRJQBffvZhNx9KmBYhqIsHbZSH2uoJmZN95kS10I8on20d3MAItZWNFB64fFXxPrAFitY0uBLKV1qqmSgoWtqVYiNY48lThVJUT0bhWtTlDX8pm+NB3F7W1+M+pWQeP4EidmSoww5/NfsDG2WU20l6fcG5SFVRdDdRoR2IrZCQsFF3eFRW2mcQhWzY6DpUZ9u35IGAmkfkokXodRs4UjjsfmedJoS6MF+qpr5/awxn2t4ayt3Ma5w0TpuPEHm5HOEwrcv8xndJzZ5/fhnuDR/cDtc4uqPJ8CrAa35yVXcarABRWW3cEXHQGzdYkwpIZtTZ/i9NXF3U3nOLjtY9B/iyXHBGDfu/f9eWqEDLUGJW7pD5tSwgwZBfzIhQqq3yrsWvfHdwLvIDufP/P523IHgRaXpiRJLdw3J5uSynFvqEscFc8ua8OmQLshF3QzFJYT2eNBQHTNzB+X+7e9X5MT1C18ioqjHQwCOHw+RFrtIM4uJQr8U5oIIOUO4BXrcuj77cbdALd2NjR20jSObm4SuwdQUXT3ZUBbYlU4+/CAXrwRWHgBazLQbpHVVPmBhsuwMmQudm21J
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(396003)(346002)(376002)(136003)(366004)(2616005)(26005)(38350700002)(5660300002)(66476007)(66946007)(7696005)(186003)(53546011)(6916009)(38100700002)(316002)(8936002)(478600001)(16526019)(83380400001)(956004)(36756003)(6666004)(44832011)(54906003)(66556008)(2906002)(6486002)(4326008)(52116002)(86362001)(33656002)(8676002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2541
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT015.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	5c0d5e4b-0090-4c05-a787-08d90af44957
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hzKR0GHz9DdC4uPz8MZoRXglqPBO80rgeEX5o3uUogUoMP9vgEqZyBjjcco4bUx2A6toGQDb5LNJHBsfVUpEs2P6P/NLR/CLAdOu5OmRT6XfcAexyJoGV98x3IThAFygzSitmGzWLDGuyRprS8XspOsxDCHqPdai6c0VbouocZLLIw1ou7Cp6Wk4mMXUGw3n4yLO9eBTk6rF/3SvqH1i7O5jglO5UbTeDw/TqP8RFqZnGRAv09WIgMpRd9VJvJiNBynCmuXwcr2/bxlOlrqaqQjDhcFRY9KGUFxYkG9gzu28hjfrwmY49+mUzsNoUdA/J9HyeF5KgKnOA3iF/BsBEJM+vb6P8H8XKR/F/Rlv78Wr6pSDCijsf2FkzKf6E8ykEavPi2/m1Evd9BFzm8ejRlGcRpdmJpJDa7rgQdUkTpIfjNHh0WVfce1vMd1osADSLvlKPmhiwMe1ldVFzAabqHEyw9LMFY/+/f21o6yZA++UHG6zn73rFOHIJWqnjA4sYJSHYWLlICBfPSwOYrc+2qSI1TBcXezkRkUxTrHLfSYAxNHls68BzssPiKI7HL8CpvvlYuAQ8XyTN7us4L2MwcGSE+GAUKAHig8DaaAbdoJS8ROQyG29fr6O0qkhCop6Hog4rbvEB2lOj0UDE33ak0Y7GA6wwqP0orXm917uE3KH5OnHwDra466yF9mGRXpb
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:(4636009)(396003)(136003)(346002)(39860400002)(376002)(46966006)(36840700001)(956004)(82310400003)(6666004)(44832011)(5660300002)(478600001)(34020700004)(8936002)(36756003)(4326008)(26005)(8676002)(6862004)(336012)(2616005)(356005)(6486002)(81166007)(83380400001)(33656002)(86362001)(82740400003)(2906002)(54906003)(47076005)(36860700001)(70206006)(7696005)(316002)(16526019)(186003)(70586007)(53546011);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 09:51:08.4066
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1f283752-718f-4b9a-97ab-08d90af45056
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:
	VE1EUR03FT015.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5350



> On 29 Apr 2021, at 10:04, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 28.04.2021 16:59, Luca Fancellu wrote:
>>> On 27 Apr 2021, at 14:57, Jan Beulich <jbeulich@suse.com> wrote:
>>> On 26.04.2021 17:37, Luca Fancellu wrote:
>>>> @@ -66,6 +67,7 @@
>>>> *     compiler barrier will still be required.
>>>> *
>>>> * Introducing a valid entry into the grant table:
>>>> + * @code
>>>> *  1. Write ent->domid.
>>>> *  2. Write ent->frame:
>>>> *      GTF_permit_access:   Frame to which access is permitted.
>>>> @@ -73,20 +75,25 @@
>>>> *                           frame, or zero if none.
>>>> *  3. Write memory barrier (WMB).
>>>> *  4. Write ent->flags, inc. valid type.
>>>> + * @endcode
>>>> *
>>>> * Invalidating an unused GTF_permit_access entry:
>>>> + * @code
>>>> *  1. flags =3D ent->flags.
>>>> *  2. Observe that !(flags & (GTF_reading|GTF_writing)).
>>>> *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>>> *  NB. No need for WMB as reuse of entry is control-dependent on succe=
ss of
>>>> *      step 3, and all architectures guarantee ordering of ctrl-dep wr=
ites.
>>>> + * @endcode
>>>> *
>>>> * Invalidating an in-use GTF_permit_access entry:
>>>> + *
>>>> *  This cannot be done directly. Request assistance from the domain co=
ntroller
>>>> *  which can set a timeout on the use of a grant entry and take necess=
ary
>>>> *  action. (NB. This is not yet implemented!).
>>>> *
>>>> * Invalidating an unused GTF_accept_transfer entry:
>>>> + * @code
>>>> *  1. flags =3D ent->flags.
>>>> *  2. Observe that !(flags & GTF_transfer_committed). [*]
>>>> *  3. Check result of SMP-safe CMPXCHG(&ent->flags, flags, 0).
>>>=20
>>> Since neither in the cover letter nor in the description here I could
>>> spot a link to the resulting generated doc, I wonder what the
>>> inconsistencies above are about: You add @code/@endcode (and no blank
>>> lines) to parts of what's being described, and _instead_ a blank line
>>> to another part. I think the goal should be that not only the
>>> generated doc ends up looking "nice", but that the source code also
>>> remains consistent. Otherwise, someone like me coming across this
>>> later on might easily conclude that there was a @code/@endcode pair
>>> missed.
>>=20
>> Yes I=E2=80=99ll explain better in the commit message, that part and oth=
er parts are
>> enclosed by @code/@endcode because they are formatted using spaces.
>> If the block is not enclosed the spaces are missing in the html page res=
ulting
>> In a mess.
>> If you can suggest an alias for the @code/@endcode command, I can create
>> it so that the user looking the source code can understand better what's=
 going on.
>> An example: @keepformat/@endkeepformat OR @keepindent/@endkeepindent
>=20
> Oh, are you suggesting @code / @endcode isn't something doxygen mandates?
> In this case either of your alternative suggestions would look better to
> me. Which one depend on whether the goal to to merely keep indentation or
> whether formatting should be kept altogether.

Hi Jan,

Sure, I can go with @keepindent/@endkeepindent

>=20
>>>> @@ -97,18 +104,23 @@
>>>> *      transferred frame is written. It is safe for the guest to spin =
waiting
>>>> *      for this to occur (detect by observing GTF_transfer_completed i=
n
>>>> *      ent->flags).
>>>> + * @endcode
>>>> *
>>>> * Invalidating a committed GTF_accept_transfer entry:
>>>> *  1. Wait for (ent->flags & GTF_transfer_completed).
>>>> *
>>>=20
>>> Why did this not also get enclosed by @code/@endcode?
>>=20
>> In this case there are no spaces that contributes to the indentation.
>=20
> But if, for consistency, @code / @endcode were added here, all would
> still be well?

Yes it would be ok, in the html page you will see a box with this text insi=
de.
If you see the url I sent in previous mail, you can see the rendering of th=
e
@code/@endcode in the html page to have an idea on how it looks.

>=20
>>>> * Changing a GTF_permit_access from writable to read-only:
>>>> + *
>>>> *  Use SMP-safe CMPXCHG to set GTF_readonly, while checking !GTF_writi=
ng.
>>>> *
>>>> * Changing a GTF_permit_access from read-only to writable:
>>>> + *
>>>> *  Use SMP-safe bit-setting instruction.
>>>=20
>>> And these two?
>>=20
>> These two lines makes the resulting html page looks better, the source c=
ode however
>> seems not too impacted by the change though.
>=20
> I was rather asking about the absence of @code / @endcode here.

I didn=E2=80=99t use it because there is no space indentation to be kept, i=
t looks better either in the
source code and in the html page in this way

>=20
>>>> + * @addtogroup grant_table Grant Tables
>>>=20
>>> And no blank (comment) line ahead of this?
>>=20
>> Here there is no need for a blank line in the comment, but if in your op=
inion the source
>> code will look better I can add it
>=20
> I think so, yes.

I will add it in the next patch

>=20
>>>> @@ -120,24 +132,26 @@ typedef uint32_t grant_ref_t;
>>>> * [GST]: This field is written by the guest and read by Xen.
>>>> */
>>>>=20
>>>> -/*
>>>> - * Version 1 of the grant table entry structure is maintained purely
>>>> - * for backwards compatibility.  New guests should use version 2.
>>>> - */
>>>> #if __XEN_INTERFACE_VERSION__ < 0x0003020a
>>>> #define grant_entry_v1 grant_entry
>>>> #define grant_entry_v1_t grant_entry_t
>>>> #endif
>>>> +/**
>>>> + * Version 1 of the grant table entry structure is maintained purely
>>>> + * for backwards compatibility.  New guests should use version 2.
>>>> + */
>>>=20
>>> In case I didn't say so already before - I think this would be a good
>>> opportunity to drop the comment pointing at v2. With v2 optionally
>>> unavailable altogether, this can't possibly be a generally valid
>>> course of action.
>>=20
>> Could you explain me better that? Do you want to get rid of this comment=
?
>=20
> Especially the second sentence is misleading. If new code used v2, it
> would not work on Xen with v2 support turned off.

Can you suggest what to write here? I=E2=80=99m not very familiar with this=
 xen
Interface

>=20
>> /**
>> * Version 1 of the grant table entry structure is maintained purely
>> * for backwards compatibility.  New guests should use version 2.
>> */
>>=20
>> In this case I don=E2=80=99t think this commit is the right place to do =
that, I can just
>> put it back where it was so that the documentation simply doesn=E2=80=99=
t show that.
>=20
> Keeping misleading information out of the docs is imo rather desirable.
> Of course we should, independently of that, also address the misleading
> information in the source code. I can accept that doing the adjustment
> right in this patch may not be ideal. I don't suppose I could talk you
> into adding a prereq patch dropping at least that 2nd sentence?
>=20

I will push a patch to change this comment and I will rebase this serie on
Top of that.

Cheers,
Luca

> Jan



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 10:32:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 10:32:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119867.226623 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc3xO-0002Qh-LE; Thu, 29 Apr 2021 10:31:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119867.226623; Thu, 29 Apr 2021 10: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 1lc3xO-0002Qa-I9; Thu, 29 Apr 2021 10:31:42 +0000
Received: by outflank-mailman (input) for mailman id 119867;
 Thu, 29 Apr 2021 10:31:41 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DDPA=J2=tklengyel.com=tamas@srs-us1.protection.inumbo.net>)
 id 1lc3xN-0002QV-QA
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 10:31:41 +0000
Received: from MTA-10-1.privateemail.com (unknown [68.65.122.30])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fdbc17f1-1c6a-44d7-863d-9666b9c54a64;
 Thu, 29 Apr 2021 10:31:40 +0000 (UTC)
Received: from MTA-10.privateemail.com (localhost [127.0.0.1])
 by MTA-10.privateemail.com (Postfix) with ESMTP id 2E4FD60062
 for <xen-devel@lists.xenproject.org>; Thu, 29 Apr 2021 06:31:39 -0400 (EDT)
Received: from mail-wr1-f51.google.com (unknown [10.20.151.248])
 by MTA-10.privateemail.com (Postfix) with ESMTPA id C2CB460059
 for <xen-devel@lists.xenproject.org>; Thu, 29 Apr 2021 06:31:38 -0400 (EDT)
Received: by mail-wr1-f51.google.com with SMTP id d11so8495248wrw.8
 for <xen-devel@lists.xenproject.org>; Thu, 29 Apr 2021 03:31: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: fdbc17f1-1c6a-44d7-863d-9666b9c54a64
X-Gm-Message-State: AOAM5331Mu3Qc7SN8yJBYOz0fRzuwvBzzjjHM8Y/F5JK30zAZUfiguoj
	OZZDuZneLXU7sHmL+xhqkm8yJ0muFz8DvsHY02c=
X-Google-Smtp-Source: ABdhPJyeLhKkV+sStlHt/t5xZfevZ8rJ6uEhlgTphBIygXdqeQrDAbRsPriDdAL0pLnu/lDR+6g0BTXcOrtubwvFG/c=
X-Received: by 2002:adf:8b02:: with SMTP id n2mr41127675wra.259.1619692297465;
 Thu, 29 Apr 2021 03:31:37 -0700 (PDT)
MIME-Version: 1.0
References: <20210427093546.30703-1-michal.orzel@arm.com> <20210427093546.30703-11-michal.orzel@arm.com>
 <f414e061-7afa-d781-e6ae-e6293f29cd40@xen.org> <0c90579b-4861-8f90-2978-9e7f9015fae3@arm.com>
In-Reply-To: <0c90579b-4861-8f90-2978-9e7f9015fae3@arm.com>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Thu, 29 Apr 2021 06:31:25 -0400
X-Gmail-Original-Message-ID: <CABfawhndnBQZtiRXXy_Xys5LWDqmz1VaquMxTPBY2ii+d8ATEQ@mail.gmail.com>
Message-ID: <CABfawhndnBQZtiRXXy_Xys5LWDqmz1VaquMxTPBY2ii+d8ATEQ@mail.gmail.com>
Subject: Re: [PATCH v2 10/10] arm64: Change type of hsr, cpsr, spsr_el1 to uint64_t
To: Michal Orzel <michal.orzel@arm.com>
Cc: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
	Alexandru Isaila <aisaila@bitdefender.com>, Petre Pircalabu <ppircalabu@bitdefender.com>, 
	bertrand.marquis@arm.com
Content-Type: multipart/alternative; boundary="00000000000009331e05c11a00de"
X-Virus-Scanned: ClamAV using ClamSMTP

--00000000000009331e05c11a00de
Content-Type: text/plain; charset="UTF-8"

On Thu, Apr 29, 2021, 4:53 AM Michal Orzel <michal.orzel@arm.com> wrote:

> Hi Julien,
>
> On 27.04.2021 13:09, Julien Grall wrote:
> > Hi Michal,
> >
> > On 27/04/2021 10:35, Michal Orzel wrote:
> >> AArch64 registers are 64bit whereas AArch32 registers
> >> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
> >> we should get rid of helpers READ/WRITE_SYSREG32
> >> in favour of using READ/WRITE_SYSREG.
> >> We should also use register_t type when reading sysregs
> >> which can correspond to uint64_t or uint32_t.
> >> Even though many AArch64 registers have upper 32bit reserved
> >> it does not mean that they can't be widen in the future.
> >>
> >> Modify type of hsr, cpsr, spsr_el1 to uint64_t.
> >
> > As I pointed out in v1, the access to SPSR_EL1 has been quite fragile
> because we relied on the padding afterwards. I think this was ought to be
> explain in the commit message because it explain why the access in the
> assembly code is not modified.
> >
> How about:
> "
> Modify type of hsr, cpsr, spsr_el1 to uint64_t.
> Previously we relied on the padding after SPSR_EL1. As we removed the
> padding, modify the union to be 64bit
> so we don't corrupt SPSR_FIQ.
> No need to modify the assembly code becuase the accesses were based on
> 64bit registers as there was a 32bit padding after SPSR_EL1.
> "
> >>
> >> Add 32bit RES0 members to structures inside hsr union.
> >>
> >> Remove 32bit padding in cpu_user_regs before spsr_fiq
> >> as it is no longer needed due to upper union being 64bit now.
> >>
> >> Add 64bit padding in cpu_user_regs before spsr_el1
> >> because offset of spsr_el1 must be a multiple of 8.
> >>
> >> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> >> diff --git a/xen/include/asm-arm/hsr.h b/xen/include/asm-arm/hsr.h
> >> index 29d4531f40..fb4a3b1274 100644
> >> --- a/xen/include/asm-arm/hsr.h
> >> +++ b/xen/include/asm-arm/hsr.h
> >> @@ -16,11 +16,12 @@ enum dabt_size {
> >>   };
> >>     union hsr {
> >> -    uint32_t bits;
> >> +    register_t bits;
> >>       struct {
> >>           unsigned long iss:25;  /* Instruction Specific Syndrome */
> >>           unsigned long len:1;   /* Instruction length */
> >>           unsigned long ec:6;    /* Exception Class */
> >> +        unsigned long _res0:32;
> >
> > Sorry I wasn't clear in my original comment, what I meant I would rather
> not add this field (and also the _res0) because they are not strictly
> necessary.
> >
> Ok I'll remove _res0 members. But bits can be of type register_t, right?
> >> diff --git a/xen/include/public/arch-arm.h
> b/xen/include/public/arch-arm.h
> >> index 713fd65317..c49bce2983 100644
> >> --- a/xen/include/public/arch-arm.h
> >> +++ b/xen/include/public/arch-arm.h
> >> @@ -267,10 +267,10 @@ struct vcpu_guest_core_regs
> >>         /* Return address and mode */
> >>       __DECL_REG(pc64,         pc32);             /* ELR_EL2 */
> >> -    uint32_t cpsr;                              /* SPSR_EL2 */
> >> +    register_t cpsr;                            /* SPSR_EL2 */
> >
> > You can't use register_t here because this is a public header (we don't
> export register_t) and the header should be bitness agnostic.
> >
> > Also, because this is a public header, you ought to explain why breaking
> the ABI is fine.
> >
> > In this case, this is an ABI between the tools and this is not stable.
> However, we would still need to bump XEN_DOMCTL_INTERFACE_VERSION as I
> think this wasn't done for this development cycle.
> >
> > Of course, this will also need a suitable mention in the commit message
> (I can help with that).
> >
> Ok so I'll increment XEN_DOMCTL_INTERFACE_VERSION and write in commit msg:
> "
> Change type of cpsr to uint64_t in the public outside interface
> "public/arch-arm.h" to allow ABI compatibility between 32bit and 64bit.
> Increment XEN_DOMCTL_INTERFACE_VERSION.
> "
> >>         union {
> >> -        uint32_t spsr_el1;       /* AArch64 */
> >> +        uint64_t spsr_el1;       /* AArch64 */
> >>           uint32_t spsr_svc;       /* AArch32 */
> >>       };
> >>   diff --git a/xen/include/public/vm_event.h
> b/xen/include/public/vm_event.h
> >> index 36135ba4f1..ad3d141fe8 100644
> >> --- a/xen/include/public/vm_event.h
> >> +++ b/xen/include/public/vm_event.h
> >> @@ -266,8 +266,12 @@ struct vm_event_regs_arm {
> >>       uint64_t ttbr1;
> >>       uint64_t ttbcr;
> >>       uint64_t pc;
> >> +#ifdef CONFIG_ARM_32
> >>       uint32_t cpsr;
> >>       uint32_t _pad;
> >> +#else
> >> +    uint64_t cpsr;
> >> +#endif
> >
> > CONFIG_ARM_32 is not defined for public header. They also should be
> bitness agnostic. So cpsr should always be uint64_t.
> >
> > Also, similar to public/arch-arm.h, this is not a stable ABI but you
> will need to bump VM_EVENT_INTERFACE_VERSION if this hasn't been done for
> this development cycle.
> >
> Ok so I will change type of cpsr here to uint64_t, increment
> VM_EVENT_INTERFACE_VERSION and write in commit msg:
> "
> Change type of cpsr to uint64_t in the public outside interface
> "public/vm_event.h" to allow ABI compatibility between 32bit and 64bit.
> Increment VM_EVENT_INTERFACE_VERSION.
> "
> Ok?
>

There is no need to bump the interface version for this, you are not
changing the layout or size of the structure since there was already 64bit
space there for cspr for both 32bit and 64bit builds. You are just folding
that padding field into cspr on 32bit builds.

Thanks,
Tamas

>

--00000000000009331e05c11a00de
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto"><div><br><br><div class=3D"gmail_quote"><div dir=3D"ltr" =
class=3D"gmail_attr">On Thu, Apr 29, 2021, 4:53 AM Michal Orzel &lt;<a href=
=3D"mailto:michal.orzel@arm.com">michal.orzel@arm.com</a>&gt; wrote:<br></d=
iv><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left=
:1px #ccc solid;padding-left:1ex">Hi Julien,<br>
<br>
On 27.04.2021 13:09, Julien Grall wrote:<br>
&gt; Hi Michal,<br>
&gt; <br>
&gt; On 27/04/2021 10:35, Michal Orzel wrote:<br>
&gt;&gt; AArch64 registers are 64bit whereas AArch32 registers<br>
&gt;&gt; are 32bit or 64bit. MSR/MRS are expecting 64bit values thus<br>
&gt;&gt; we should get rid of helpers READ/WRITE_SYSREG32<br>
&gt;&gt; in favour of using READ/WRITE_SYSREG.<br>
&gt;&gt; We should also use register_t type when reading sysregs<br>
&gt;&gt; which can correspond to uint64_t or uint32_t.<br>
&gt;&gt; Even though many AArch64 registers have upper 32bit reserved<br>
&gt;&gt; it does not mean that they can&#39;t be widen in the future.<br>
&gt;&gt;<br>
&gt;&gt; Modify type of hsr, cpsr, spsr_el1 to uint64_t.<br>
&gt; <br>
&gt; As I pointed out in v1, the access to SPSR_EL1 has been quite fragile =
because we relied on the padding afterwards. I think this was ought to be e=
xplain in the commit message because it explain why the access in the assem=
bly code is not modified.<br>
&gt; <br>
How about:<br>
&quot;<br>
Modify type of hsr, cpsr, spsr_el1 to uint64_t.<br>
Previously we relied on the padding after SPSR_EL1. As we removed the paddi=
ng, modify the union to be 64bit<br>
so we don&#39;t corrupt SPSR_FIQ.<br>
No need to modify the assembly code becuase the accesses were based on 64bi=
t registers as there was a 32bit padding after SPSR_EL1.<br>
&quot;<br>
&gt;&gt;<br>
&gt;&gt; Add 32bit RES0 members to structures inside hsr union.<br>
&gt;&gt;<br>
&gt;&gt; Remove 32bit padding in cpu_user_regs before spsr_fiq<br>
&gt;&gt; as it is no longer needed due to upper union being 64bit now.<br>
&gt;&gt;<br>
&gt;&gt; Add 64bit padding in cpu_user_regs before spsr_el1<br>
&gt;&gt; because offset of spsr_el1 must be a multiple of 8.<br>
&gt;&gt;<br>
&gt;&gt; Signed-off-by: Michal Orzel &lt;<a href=3D"mailto:michal.orzel@arm=
.com" target=3D"_blank" rel=3D"noreferrer">michal.orzel@arm.com</a>&gt;<br>
&gt;&gt; diff --git a/xen/include/asm-arm/hsr.h b/xen/include/asm-arm/hsr.h=
<br>
&gt;&gt; index 29d4531f40..fb4a3b1274 100644<br>
&gt;&gt; --- a/xen/include/asm-arm/hsr.h<br>
&gt;&gt; +++ b/xen/include/asm-arm/hsr.h<br>
&gt;&gt; @@ -16,11 +16,12 @@ enum dabt_size {<br>
&gt;&gt; =C2=A0 };<br>
&gt;&gt; =C2=A0 =C2=A0 union hsr {<br>
&gt;&gt; -=C2=A0=C2=A0=C2=A0 uint32_t bits;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 register_t bits;<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct {<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned lo=
ng iss:25;=C2=A0 /* Instruction Specific Syndrome */<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned lo=
ng len:1;=C2=A0=C2=A0 /* Instruction length */<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned lo=
ng ec:6;=C2=A0=C2=A0=C2=A0 /* Exception Class */<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned long _res0:32=
;<br>
&gt; <br>
&gt; Sorry I wasn&#39;t clear in my original comment, what I meant I would =
rather not add this field (and also the _res0) because they are not strictl=
y necessary.<br>
&gt; <br>
Ok I&#39;ll remove _res0 members. But bits can be of type register_t, right=
?<br>
&gt;&gt; diff --git a/xen/include/public/arch-arm.h b/xen/include/public/ar=
ch-arm.h<br>
&gt;&gt; index 713fd65317..c49bce2983 100644<br>
&gt;&gt; --- a/xen/include/public/arch-arm.h<br>
&gt;&gt; +++ b/xen/include/public/arch-arm.h<br>
&gt;&gt; @@ -267,10 +267,10 @@ struct vcpu_guest_core_regs<br>
&gt;&gt; =C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* Return address and mode *=
/<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 __DECL_REG(pc64,=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pc32);=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* ELR_EL2 */<br>
&gt;&gt; -=C2=A0=C2=A0=C2=A0 uint32_t cpsr;=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* SP=
SR_EL2 */<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 register_t cpsr;=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* SPSR_EL2 */<br=
>
&gt; <br>
&gt; You can&#39;t use register_t here because this is a public header (we =
don&#39;t export register_t) and the header should be bitness agnostic.<br>
&gt; <br>
&gt; Also, because this is a public header, you ought to explain why breaki=
ng the ABI is fine.<br>
&gt; <br>
&gt; In this case, this is an ABI between the tools and this is not stable.=
 However, we would still need to bump XEN_DOMCTL_INTERFACE_VERSION as I thi=
nk this wasn&#39;t done for this development cycle.<br>
&gt; <br>
&gt; Of course, this will also need a suitable mention in the commit messag=
e (I can help with that).<br>
&gt; <br>
Ok so I&#39;ll increment XEN_DOMCTL_INTERFACE_VERSION and write in commit m=
sg:<br>
&quot;<br>
Change type of cpsr to uint64_t in the public outside interface &quot;publi=
c/arch-arm.h&quot; to allow ABI compatibility between 32bit and 64bit.<br>
Increment XEN_DOMCTL_INTERFACE_VERSION.<br>
&quot;<br>
&gt;&gt; =C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 union {<br>
&gt;&gt; -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint32_t spsr_el1;=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* AArch64 */<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint64_t spsr_el1;=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* AArch64 */<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint32_t sp=
sr_svc;=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* AArch32 */<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 };<br>
&gt;&gt; =C2=A0 diff --git a/xen/include/public/vm_event.h b/xen/include/pu=
blic/vm_event.h<br>
&gt;&gt; index 36135ba4f1..ad3d141fe8 100644<br>
&gt;&gt; --- a/xen/include/public/vm_event.h<br>
&gt;&gt; +++ b/xen/include/public/vm_event.h<br>
&gt;&gt; @@ -266,8 +266,12 @@ struct vm_event_regs_arm {<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint64_t ttbr1;<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint64_t ttbcr;<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint64_t pc;<br>
&gt;&gt; +#ifdef CONFIG_ARM_32<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint32_t cpsr;<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint32_t _pad;<br>
&gt;&gt; +#else<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 uint64_t cpsr;<br>
&gt;&gt; +#endif<br>
&gt; <br>
&gt; CONFIG_ARM_32 is not defined for public header. They also should be bi=
tness agnostic. So cpsr should always be uint64_t.<br>
&gt; <br>
&gt; Also, similar to public/arch-arm.h, this is not a stable ABI but you w=
ill need to bump VM_EVENT_INTERFACE_VERSION if this hasn&#39;t been done fo=
r this development cycle.<br>
&gt; <br>
Ok so I will change type of cpsr here to uint64_t, increment VM_EVENT_INTER=
FACE_VERSION and write in commit msg:<br>
&quot;<br>
Change type of cpsr to uint64_t in the public outside interface &quot;publi=
c/vm_event.h&quot; to allow ABI compatibility between 32bit and 64bit.<br>
Increment VM_EVENT_INTERFACE_VERSION.<br>
&quot;<br>
Ok?<br></blockquote></div></div><div dir=3D"auto"><br></div><div dir=3D"aut=
o">There is no need to bump the interface version for this, you are not cha=
nging the layout or size of the structure since there was already 64bit spa=
ce there for cspr for both 32bit and 64bit builds. You are just folding tha=
t padding field into cspr on 32bit builds.</div><div dir=3D"auto"><br></div=
><div dir=3D"auto">Thanks,</div><div dir=3D"auto">Tamas</div><div dir=3D"au=
to"><div class=3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"m=
argin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>

--00000000000009331e05c11a00de--


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 10:36:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 10:36:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119871.226635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc41c-0002b0-6V; Thu, 29 Apr 2021 10:36:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119871.226635; Thu, 29 Apr 2021 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 1lc41c-0002at-3X; Thu, 29 Apr 2021 10:36:04 +0000
Received: by outflank-mailman (input) for mailman id 119871;
 Thu, 29 Apr 2021 10:36: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 1lc41a-0002aj-9d
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 10:36: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 1lc41X-0002Cx-Kw; Thu, 29 Apr 2021 10:35:59 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lc41X-0005ys-Cw; Thu, 29 Apr 2021 10: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>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=XniPsPk20xrjYoIPkNxgwdKtaJBQN/X11+WKVNigLew=; b=gPFPJNbSn6aVA08yYBhIfMSz4V
	CaU+UEyTvePLRuZgWue6LLzgm1+/k6NRs3umNyKdyLxPyO4JN5BWQUbITbTB5md+FcqbyBIluhV9o
	4fGrqD7DmT9oVCNKBs/rmqyM/END5zvmd89Pr4NSWS8Ds0nvHHeR2j00YUox5suQZIhI=;
Subject: Re: [PATCH v2 10/10] arm64: Change type of hsr, cpsr, spsr_el1 to
 uint64_t
To: Tamas K Lengyel <tamas@tklengyel.com>, Michal Orzel <michal.orzel@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, bertrand.marquis@arm.com
References: <20210427093546.30703-1-michal.orzel@arm.com>
 <20210427093546.30703-11-michal.orzel@arm.com>
 <f414e061-7afa-d781-e6ae-e6293f29cd40@xen.org>
 <0c90579b-4861-8f90-2978-9e7f9015fae3@arm.com>
 <CABfawhndnBQZtiRXXy_Xys5LWDqmz1VaquMxTPBY2ii+d8ATEQ@mail.gmail.com>
From: Julien Grall <julien@xen.org>
Message-ID: <c27347d7-4dfb-7251-c819-ca7ca176f7c0@xen.org>
Date: Thu, 29 Apr 2021 11:35:57 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <CABfawhndnBQZtiRXXy_Xys5LWDqmz1VaquMxTPBY2ii+d8ATEQ@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 29/04/2021 11:31, Tamas K Lengyel wrote:
> On Thu, Apr 29, 2021, 4:53 AM Michal Orzel <michal.orzel@arm.com 
> <mailto:michal.orzel@arm.com>> wrote:
> 
>     Hi Julien,
> 
>     On 27.04.2021 13:09, Julien Grall wrote:
>      > Hi Michal,
>      >
>      > On 27/04/2021 10:35, Michal Orzel wrote:
>      >> AArch64 registers are 64bit whereas AArch32 registers
>      >> are 32bit or 64bit. MSR/MRS are expecting 64bit values thus
>      >> we should get rid of helpers READ/WRITE_SYSREG32
>      >> in favour of using READ/WRITE_SYSREG.
>      >> We should also use register_t type when reading sysregs
>      >> which can correspond to uint64_t or uint32_t.
>      >> Even though many AArch64 registers have upper 32bit reserved
>      >> it does not mean that they can't be widen in the future.
>      >>
>      >> Modify type of hsr, cpsr, spsr_el1 to uint64_t.
>      >
>      > As I pointed out in v1, the access to SPSR_EL1 has been quite
>     fragile because we relied on the padding afterwards. I think this
>     was ought to be explain in the commit message because it explain why
>     the access in the assembly code is not modified.
>      >
>     How about:
>     "
>     Modify type of hsr, cpsr, spsr_el1 to uint64_t.
>     Previously we relied on the padding after SPSR_EL1. As we removed
>     the padding, modify the union to be 64bit
>     so we don't corrupt SPSR_FIQ.
>     No need to modify the assembly code becuase the accesses were based
>     on 64bit registers as there was a 32bit padding after SPSR_EL1.
>     "
>      >>
>      >> Add 32bit RES0 members to structures inside hsr union.
>      >>
>      >> Remove 32bit padding in cpu_user_regs before spsr_fiq
>      >> as it is no longer needed due to upper union being 64bit now.
>      >>
>      >> Add 64bit padding in cpu_user_regs before spsr_el1
>      >> because offset of spsr_el1 must be a multiple of 8.
>      >>
>      >> Signed-off-by: Michal Orzel <michal.orzel@arm.com
>     <mailto:michal.orzel@arm.com>>
>      >> diff --git a/xen/include/asm-arm/hsr.h b/xen/include/asm-arm/hsr.h
>      >> index 29d4531f40..fb4a3b1274 100644
>      >> --- a/xen/include/asm-arm/hsr.h
>      >> +++ b/xen/include/asm-arm/hsr.h
>      >> @@ -16,11 +16,12 @@ enum dabt_size {
>      >>   };
>      >>     union hsr {
>      >> -    uint32_t bits;
>      >> +    register_t bits;
>      >>       struct {
>      >>           unsigned long iss:25;  /* Instruction Specific Syndrome */
>      >>           unsigned long len:1;   /* Instruction length */
>      >>           unsigned long ec:6;    /* Exception Class */
>      >> +        unsigned long _res0:32;
>      >
>      > Sorry I wasn't clear in my original comment, what I meant I would
>     rather not add this field (and also the _res0) because they are not
>     strictly necessary.
>      >
>     Ok I'll remove _res0 members. But bits can be of type register_t, right?
>      >> diff --git a/xen/include/public/arch-arm.h
>     b/xen/include/public/arch-arm.h
>      >> index 713fd65317..c49bce2983 100644
>      >> --- a/xen/include/public/arch-arm.h
>      >> +++ b/xen/include/public/arch-arm.h
>      >> @@ -267,10 +267,10 @@ struct vcpu_guest_core_regs
>      >>         /* Return address and mode */
>      >>       __DECL_REG(pc64,         pc32);             /* ELR_EL2 */
>      >> -    uint32_t cpsr;                              /* SPSR_EL2 */
>      >> +    register_t cpsr;                            /* SPSR_EL2 */
>      >
>      > You can't use register_t here because this is a public header (we
>     don't export register_t) and the header should be bitness agnostic.
>      >
>      > Also, because this is a public header, you ought to explain why
>     breaking the ABI is fine.
>      >
>      > In this case, this is an ABI between the tools and this is not
>     stable. However, we would still need to bump
>     XEN_DOMCTL_INTERFACE_VERSION as I think this wasn't done for this
>     development cycle.
>      >
>      > Of course, this will also need a suitable mention in the commit
>     message (I can help with that).
>      >
>     Ok so I'll increment XEN_DOMCTL_INTERFACE_VERSION and write in
>     commit msg:
>     "
>     Change type of cpsr to uint64_t in the public outside interface
>     "public/arch-arm.h" to allow ABI compatibility between 32bit and 64bit.
>     Increment XEN_DOMCTL_INTERFACE_VERSION.
>     "
>      >>         union {
>      >> -        uint32_t spsr_el1;       /* AArch64 */
>      >> +        uint64_t spsr_el1;       /* AArch64 */
>      >>           uint32_t spsr_svc;       /* AArch32 */
>      >>       };
>      >>   diff --git a/xen/include/public/vm_event.h
>     b/xen/include/public/vm_event.h
>      >> index 36135ba4f1..ad3d141fe8 100644
>      >> --- a/xen/include/public/vm_event.h
>      >> +++ b/xen/include/public/vm_event.h
>      >> @@ -266,8 +266,12 @@ struct vm_event_regs_arm {
>      >>       uint64_t ttbr1;
>      >>       uint64_t ttbcr;
>      >>       uint64_t pc;
>      >> +#ifdef CONFIG_ARM_32
>      >>       uint32_t cpsr;
>      >>       uint32_t _pad;
>      >> +#else
>      >> +    uint64_t cpsr;
>      >> +#endif
>      >
>      > CONFIG_ARM_32 is not defined for public header. They also should
>     be bitness agnostic. So cpsr should always be uint64_t.
>      >
>      > Also, similar to public/arch-arm.h, this is not a stable ABI but
>     you will need to bump VM_EVENT_INTERFACE_VERSION if this hasn't been
>     done for this development cycle.
>      >
>     Ok so I will change type of cpsr here to uint64_t, increment
>     VM_EVENT_INTERFACE_VERSION and write in commit msg:
>     "
>     Change type of cpsr to uint64_t in the public outside interface
>     "public/vm_event.h" to allow ABI compatibility between 32bit and 64bit.
>     Increment VM_EVENT_INTERFACE_VERSION.
>     "
>     Ok?
> 
> 
> There is no need to bump the interface version for this, you are not 
> changing the layout or size of the structure since there was already 
> 64bit space there for cspr for both 32bit and 64bit builds. You are just 
> folding that padding field into cspr on 32bit builds.

Ah I didn't realize the padding was already there. Although, is it 
always zeroed?

If not, then this is would technically be an ABI breakage if you build a 
vm event tool using public/vm_event.h from Xen 4.16 and use it on Xen 4.15.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:05:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:05:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119877.226647 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc4Tk-0005Be-D4; Thu, 29 Apr 2021 11:05:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119877.226647; Thu, 29 Apr 2021 11:05:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc4Tk-0005BX-A2; Thu, 29 Apr 2021 11:05:08 +0000
Received: by outflank-mailman (input) for mailman id 119877;
 Thu, 29 Apr 2021 11:05: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 1lc4Ti-0005BS-Al
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:05: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 1lc4Tf-0002hP-BX; Thu, 29 Apr 2021 11:05:03 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lc4Te-0007wS-Qn; Thu, 29 Apr 2021 11:05: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=sTBBD3ROWoZ6/dUsoO0WjCydTDhEHo72VuqeXTqNvJc=; b=qB3igKQ6JuvXdKIlJM/oW1F1uC
	D8/uogkbB+jM+pTCByxvddQlPHuc7332A8KhTyJ+FWDV+tQZ93hvYJ4vN/2rZESiF5GAhjVKgASsH
	hLXRM5BL/XGyR8wsM/H7N9hoBidScZSvTwr7mpG0y617fPSvTSCcyby/0Jbs0VVNJjno=;
Subject: Re: [PATCH v4 1/3] unzstd: replace INIT and STATIC
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
 <0e70ff46-5969-6d9e-58e1-a7338ccdcbf2@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <cb9862a1-ef46-06ac-440d-a5355dd9d194@xen.org>
Date: Thu, 29 Apr 2021 12:05:00 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <0e70ff46-5969-6d9e-58e1-a7338ccdcbf2@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 21/04/2021 11:21, Jan Beulich wrote:
> With xen/common/decompress.h now agreeing in both build modes about
> what STATIC expands to, there's no need for these abstractions anymore.
> 
> Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

> ---
> v4: Minor wording adjustment to description.
> v3: New.
> 
> --- a/xen/common/unzstd.c
> +++ b/xen/common/unzstd.c
> @@ -71,7 +71,7 @@
>    */
>   #define ZSTD_IOBUF_SIZE		(1 << 17)
>   
> -static int INIT handle_zstd_error(size_t ret, void (*error)(const char *x))
> +static int __init handle_zstd_error(size_t ret, void (*error)(const char *x))
>   {
>   	const int err = ZSTD_getErrorCode(ret);
>   
> @@ -102,9 +102,9 @@ static int INIT handle_zstd_error(size_t
>    * We can allocate less memory (no circular buffer for the sliding window),
>    * and avoid some memcpy() calls.
>    */
> -static int INIT decompress_single(const u8 *in_buf, long in_len, u8 *out_buf,
> -				  long out_len, unsigned int *in_pos,
> -				  void (*error)(const char *x))
> +static int __init decompress_single(const u8 *in_buf, long in_len, u8 *out_buf,
> +				    long out_len, unsigned int *in_pos,
> +				    void (*error)(const char *x))
>   {
>   	const size_t wksp_size = ZSTD_DCtxWorkspaceBound();
>   	void *wksp = large_malloc(wksp_size);
> @@ -142,11 +142,11 @@ out:
>   	return err;
>   }
>   
> -int INIT unzstd(unsigned char *in_buf, unsigned int in_len,
> -	        int (*fill)(void*, unsigned int),
> -	        int (*flush)(void*, unsigned int),
> -	        unsigned char *out_buf, unsigned int *in_pos,
> -	        void (*error)(const char *x))
> +int __init unzstd(unsigned char *in_buf, unsigned int in_len,
> +		  int (*fill)(void*, unsigned int),
> +		  int (*flush)(void*, unsigned int),
> +		  unsigned char *out_buf, unsigned int *in_pos,
> +		  void (*error)(const char *x))
>   {
>   	ZSTD_inBuffer in;
>   	ZSTD_outBuffer out;
> --- a/xen/common/zstd/decompress.c
> +++ b/xen/common/zstd/decompress.c
> @@ -46,7 +46,7 @@
>   /*_*******************************************************
>   *  Memory operations
>   **********************************************************/
> -static void INIT ZSTD_copy4(void *dst, const void *src) { memcpy(dst, src, 4); }
> +static void __init ZSTD_copy4(void *dst, const void *src) { memcpy(dst, src, 4); }
>   
>   /*-*************************************************************
>   *   Context management
> @@ -98,12 +98,12 @@ struct ZSTD_DCtx_s {
>   	BYTE headerBuffer[ZSTD_FRAMEHEADERSIZE_MAX];
>   }; /* typedef'd to ZSTD_DCtx within "zstd.h" */
>   
> -STATIC size_t INIT ZSTD_DCtxWorkspaceBound(void)
> +static size_t __init ZSTD_DCtxWorkspaceBound(void)
>   {
>   	return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DCtx));
>   }
>   
> -STATIC size_t INIT ZSTD_decompressBegin(ZSTD_DCtx *dctx)
> +static size_t __init ZSTD_decompressBegin(ZSTD_DCtx *dctx)
>   {
>   	dctx->expected = ZSTD_frameHeaderSize_prefix;
>   	dctx->stage = ZSTDds_getFrameHeaderSize;
> @@ -123,7 +123,7 @@ STATIC size_t INIT ZSTD_decompressBegin(
>   	return 0;
>   }
>   
> -STATIC ZSTD_DCtx *INIT ZSTD_createDCtx_advanced(ZSTD_customMem customMem)
> +static ZSTD_DCtx *__init ZSTD_createDCtx_advanced(ZSTD_customMem customMem)
>   {
>   	ZSTD_DCtx *dctx;
>   
> @@ -138,13 +138,13 @@ STATIC ZSTD_DCtx *INIT ZSTD_createDCtx_a
>   	return dctx;
>   }
>   
> -STATIC ZSTD_DCtx *INIT ZSTD_initDCtx(void *workspace, size_t workspaceSize)
> +static ZSTD_DCtx *__init ZSTD_initDCtx(void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
>   	return ZSTD_createDCtx_advanced(stackMem);
>   }
>   
> -size_t INIT ZSTD_freeDCtx(ZSTD_DCtx *dctx)
> +size_t __init ZSTD_freeDCtx(ZSTD_DCtx *dctx)
>   {
>   	if (dctx == NULL)
>   		return 0; /* support free on NULL */
> @@ -153,15 +153,15 @@ size_t INIT ZSTD_freeDCtx(ZSTD_DCtx *dct
>   }
>   
>   #ifdef BUILD_DEAD_CODE
> -void INIT ZSTD_copyDCtx(ZSTD_DCtx *dstDCtx, const ZSTD_DCtx *srcDCtx)
> +void __init ZSTD_copyDCtx(ZSTD_DCtx *dstDCtx, const ZSTD_DCtx *srcDCtx)
>   {
>   	size_t const workSpaceSize = (ZSTD_BLOCKSIZE_ABSOLUTEMAX + WILDCOPY_OVERLENGTH) + ZSTD_frameHeaderSize_max;
>   	memcpy(dstDCtx, srcDCtx, sizeof(ZSTD_DCtx) - workSpaceSize); /* no need to copy workspace */
>   }
>   #endif
>   
> -STATIC size_t ZSTD_findFrameCompressedSize(const void *src, size_t srcSize);
> -STATIC size_t ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict,
> +static size_t ZSTD_findFrameCompressedSize(const void *src, size_t srcSize);
> +static size_t ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict,
>   	size_t dictSize);
>   
>   static void ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict);
> @@ -176,7 +176,7 @@ static void ZSTD_refDDict(ZSTD_DCtx *dst
>    *  Note : Frame Identifier is 4 bytes. If `size < 4`, @return will always be 0.
>    *  Note 2 : Legacy Frame Identifiers are considered valid only if Legacy Support is enabled.
>    *  Note 3 : Skippable Frame Identifiers are considered valid. */
> -unsigned INIT ZSTD_isFrame(const void *buffer, size_t size)
> +unsigned __init ZSTD_isFrame(const void *buffer, size_t size)
>   {
>   	if (size < 4)
>   		return 0;
> @@ -194,7 +194,7 @@ unsigned INIT ZSTD_isFrame(const void *b
>   /** ZSTD_frameHeaderSize() :
>   *   srcSize must be >= ZSTD_frameHeaderSize_prefix.
>   *   @return : size of the Frame Header */
> -static size_t INIT ZSTD_frameHeaderSize(const void *src, size_t srcSize)
> +static size_t __init ZSTD_frameHeaderSize(const void *src, size_t srcSize)
>   {
>   	if (srcSize < ZSTD_frameHeaderSize_prefix)
>   		return ERROR(srcSize_wrong);
> @@ -212,7 +212,7 @@ static size_t INIT ZSTD_frameHeaderSize(
>   *   @return : 0, `fparamsPtr` is correctly filled,
>   *            >0, `srcSize` is too small, result is expected `srcSize`,
>   *             or an error code, which can be tested using ZSTD_isError() */
> -STATIC size_t INIT ZSTD_getFrameParams(ZSTD_frameParams *fparamsPtr, const void *src, size_t srcSize)
> +static size_t __init ZSTD_getFrameParams(ZSTD_frameParams *fparamsPtr, const void *src, size_t srcSize)
>   {
>   	const BYTE *ip = (const BYTE *)src;
>   
> @@ -303,7 +303,7 @@ STATIC size_t INIT ZSTD_getFrameParams(Z
>   *   @return : decompressed size of the single frame pointed to be `src` if known, otherwise
>   *             - ZSTD_CONTENTSIZE_UNKNOWN if the size cannot be determined
>   *             - ZSTD_CONTENTSIZE_ERROR if an error occurred (e.g. invalid magic number, srcSize too small) */
> -unsigned long long INIT ZSTD_getFrameContentSize(const void *src, size_t srcSize)
> +unsigned long long __init ZSTD_getFrameContentSize(const void *src, size_t srcSize)
>   {
>   	{
>   		ZSTD_frameParams fParams;
> @@ -325,7 +325,7 @@ unsigned long long INIT ZSTD_getFrameCon
>    *  `srcSize` must be the exact length of some number of ZSTD compressed and/or
>    *      skippable frames
>    *  @return : decompressed size of the frames contained */
> -unsigned long long INIT ZSTD_findDecompressedSize(const void *src, size_t srcSize)
> +unsigned long long __init ZSTD_findDecompressedSize(const void *src, size_t srcSize)
>   {
>   	{
>   		unsigned long long totalDstSize = 0;
> @@ -379,7 +379,7 @@ unsigned long long INIT ZSTD_findDecompr
>   /** ZSTD_decodeFrameHeader() :
>   *   `headerSize` must be the size provided by ZSTD_frameHeaderSize().
>   *   @return : 0 if success, or an error code, which can be tested using ZSTD_isError() */
> -static size_t INIT ZSTD_decodeFrameHeader(ZSTD_DCtx *dctx, const void *src, size_t headerSize)
> +static size_t __init ZSTD_decodeFrameHeader(ZSTD_DCtx *dctx, const void *src, size_t headerSize)
>   {
>   	size_t const result = ZSTD_getFrameParams(&(dctx->fParams), src, headerSize);
>   	if (ZSTD_isError(result))
> @@ -401,7 +401,7 @@ typedef struct {
>   
>   /*! ZSTD_getcBlockSize() :
>   *   Provides the size of compressed block from block header `src` */
> -STATIC size_t INIT ZSTD_getcBlockSize(const void *src, size_t srcSize, blockProperties_t *bpPtr)
> +static size_t __init ZSTD_getcBlockSize(const void *src, size_t srcSize, blockProperties_t *bpPtr)
>   {
>   	if (srcSize < ZSTD_blockHeaderSize)
>   		return ERROR(srcSize_wrong);
> @@ -419,7 +419,7 @@ STATIC size_t INIT ZSTD_getcBlockSize(co
>   	}
>   }
>   
> -static size_t INIT ZSTD_copyRawBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +static size_t __init ZSTD_copyRawBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	if (srcSize > dstCapacity)
>   		return ERROR(dstSize_tooSmall);
> @@ -427,7 +427,7 @@ static size_t INIT ZSTD_copyRawBlock(voi
>   	return srcSize;
>   }
>   
> -static size_t INIT ZSTD_setRleBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize, size_t regenSize)
> +static size_t __init ZSTD_setRleBlock(void *dst, size_t dstCapacity, const void *src, size_t srcSize, size_t regenSize)
>   {
>   	if (srcSize != 1)
>   		return ERROR(srcSize_wrong);
> @@ -439,7 +439,7 @@ static size_t INIT ZSTD_setRleBlock(void
>   
>   /*! ZSTD_decodeLiteralsBlock() :
>   	@return : nb of bytes read from src (< srcSize ) */
> -STATIC size_t INIT ZSTD_decodeLiteralsBlock(ZSTD_DCtx *dctx, const void *src, size_t srcSize) /* note : srcSize < BLOCKSIZE */
> +static size_t __init ZSTD_decodeLiteralsBlock(ZSTD_DCtx *dctx, const void *src, size_t srcSize) /* note : srcSize < BLOCKSIZE */
>   {
>   	if (srcSize < MIN_CBLOCK_SIZE)
>   		return ERROR(corruption_detected);
> @@ -759,10 +759,10 @@ static const FSE_decode_t4 OF_defaultDTa
>   	@return : nb bytes read from src,
>   			  or an error code if it fails, testable with ZSTD_isError()
>   */
> -static size_t INIT ZSTD_buildSeqTable(FSE_DTable *DTableSpace, const FSE_DTable **DTablePtr,
> -				      symbolEncodingType_e type, U32 max, U32 maxLog, const void *src,
> -				      size_t srcSize, const FSE_decode_t4 *defaultTable,
> -				      U32 flagRepeatTable, void *workspace, size_t workspaceSize)
> +static size_t __init ZSTD_buildSeqTable(FSE_DTable *DTableSpace, const FSE_DTable **DTablePtr,
> +					symbolEncodingType_e type, U32 max, U32 maxLog, const void *src,
> +					size_t srcSize, const FSE_decode_t4 *defaultTable,
> +					U32 flagRepeatTable, void *workspace, size_t workspaceSize)
>   {
>   	const void *const tmpPtr = defaultTable; /* bypass strict aliasing */
>   	switch (type) {
> @@ -803,7 +803,7 @@ static size_t INIT ZSTD_buildSeqTable(FS
>   	}
>   }
>   
> -STATIC size_t INIT ZSTD_decodeSeqHeaders(ZSTD_DCtx *dctx, int *nbSeqPtr, const void *src, size_t srcSize)
> +static size_t __init ZSTD_decodeSeqHeaders(ZSTD_DCtx *dctx, int *nbSeqPtr, const void *src, size_t srcSize)
>   {
>   	const BYTE *const istart = (const BYTE *const)src;
>   	const BYTE *const iend = istart + srcSize;
> @@ -940,7 +940,7 @@ size_t ZSTD_execSequenceLast7(BYTE *op,
>   	return sequenceLength;
>   }
>   
> -static seq_t INIT ZSTD_decodeSequence(seqState_t *seqState)
> +static seq_t __init ZSTD_decodeSequence(seqState_t *seqState)
>   {
>   	seq_t seq;
>   
> @@ -1102,7 +1102,7 @@ size_t ZSTD_execSequence(BYTE *op, BYTE
>   	return sequenceLength;
>   }
>   
> -static size_t INIT ZSTD_decompressSequences(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
> +static size_t __init ZSTD_decompressSequences(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
>   {
>   	const BYTE *ip = (const BYTE *)seqStart;
>   	const BYTE *const iend = ip + seqSize;
> @@ -1262,7 +1262,7 @@ FORCE_INLINE seq_t ZSTD_decodeSequenceLo
>   	return seq;
>   }
>   
> -static seq_t INIT ZSTD_decodeSequenceLong(seqState_t *seqState, unsigned const windowSize)
> +static seq_t __init ZSTD_decodeSequenceLong(seqState_t *seqState, unsigned const windowSize)
>   {
>   	if (ZSTD_highbit32(windowSize) > STREAM_ACCUMULATOR_MIN) {
>   		return ZSTD_decodeSequenceLong_generic(seqState, 1);
> @@ -1272,9 +1272,9 @@ static seq_t INIT ZSTD_decodeSequenceLon
>   }
>   
>   FORCE_INLINE
> -size_t INIT ZSTD_execSequenceLong(BYTE *op, BYTE *const oend, seq_t sequence, const BYTE **litPtr,
> -				  const BYTE *const litLimit, const BYTE *const base,
> -				  const BYTE *const vBase, const BYTE *const dictEnd)
> +size_t __init ZSTD_execSequenceLong(BYTE *op, BYTE *const oend, seq_t sequence, const BYTE **litPtr,
> +				    const BYTE *const litLimit, const BYTE *const base,
> +				    const BYTE *const vBase, const BYTE *const dictEnd)
>   {
>   	BYTE *const oLitEnd = op + sequence.litLength;
>   	size_t const sequenceLength = sequence.litLength + sequence.matchLength;
> @@ -1358,7 +1358,7 @@ size_t INIT ZSTD_execSequenceLong(BYTE *
>   	return sequenceLength;
>   }
>   
> -static size_t INIT ZSTD_decompressSequencesLong(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
> +static size_t __init ZSTD_decompressSequencesLong(ZSTD_DCtx *dctx, void *dst, size_t maxDstSize, const void *seqStart, size_t seqSize)
>   {
>   	const BYTE *ip = (const BYTE *)seqStart;
>   	const BYTE *const iend = ip + seqSize;
> @@ -1455,7 +1455,7 @@ static size_t INIT ZSTD_decompressSequen
>   	return op - ostart;
>   }
>   
> -static size_t INIT ZSTD_decompressBlock_internal(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +static size_t __init ZSTD_decompressBlock_internal(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   { /* blockType == blockCompressed */
>   	const BYTE *ip = (const BYTE *)src;
>   
> @@ -1479,7 +1479,7 @@ static size_t INIT ZSTD_decompressBlock_
>   	return ZSTD_decompressSequences(dctx, dst, dstCapacity, ip, srcSize);
>   }
>   
> -static void INIT ZSTD_checkContinuity(ZSTD_DCtx *dctx, const void *dst)
> +static void __init ZSTD_checkContinuity(ZSTD_DCtx *dctx, const void *dst)
>   {
>   	if (dst != dctx->previousDstEnd) { /* not contiguous */
>   		dctx->dictEnd = dctx->previousDstEnd;
> @@ -1490,7 +1490,7 @@ static void INIT ZSTD_checkContinuity(ZS
>   }
>   
>   #ifdef BUILD_DEAD_CODE
> -size_t INIT ZSTD_decompressBlock(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +size_t __init ZSTD_decompressBlock(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	size_t dSize;
>   	ZSTD_checkContinuity(dctx, dst);
> @@ -1501,7 +1501,7 @@ size_t INIT ZSTD_decompressBlock(ZSTD_DC
>   
>   /** ZSTD_insertBlock() :
>   	insert `src` block into `dctx` history. Useful to track uncompressed blocks. */
> -size_t INIT ZSTD_insertBlock(ZSTD_DCtx *dctx, const void *blockStart, size_t blockSize)
> +size_t __init ZSTD_insertBlock(ZSTD_DCtx *dctx, const void *blockStart, size_t blockSize)
>   {
>   	ZSTD_checkContinuity(dctx, blockStart);
>   	dctx->previousDstEnd = (const char *)blockStart + blockSize;
> @@ -1509,7 +1509,7 @@ size_t INIT ZSTD_insertBlock(ZSTD_DCtx *
>   }
>   #endif /* BUILD_DEAD_CODE */
>   
> -STATIC size_t INIT ZSTD_generateNxBytes(void *dst, size_t dstCapacity, BYTE byte, size_t length)
> +static size_t __init ZSTD_generateNxBytes(void *dst, size_t dstCapacity, BYTE byte, size_t length)
>   {
>   	if (length > dstCapacity)
>   		return ERROR(dstSize_tooSmall);
> @@ -1522,7 +1522,7 @@ STATIC size_t INIT ZSTD_generateNxBytes(
>    *  `src` must point to the start of a ZSTD frame, ZSTD legacy frame, or skippable frame
>    *  `srcSize` must be at least as large as the frame contained
>    *  @return : the compressed size of the frame starting at `src` */
> -STATIC size_t INIT ZSTD_findFrameCompressedSize(const void *src, size_t srcSize)
> +static size_t __init ZSTD_findFrameCompressedSize(const void *src, size_t srcSize)
>   {
>   	if (srcSize >= ZSTD_skippableHeaderSize && (ZSTD_readLE32(src) & 0xFFFFFFF0U) == ZSTD_MAGIC_SKIPPABLE_START) {
>   		return ZSTD_skippableHeaderSize + ZSTD_readLE32((const BYTE *)src + 4);
> @@ -1578,7 +1578,7 @@ STATIC size_t INIT ZSTD_findFrameCompres
>   
>   /*! ZSTD_decompressFrame() :
>   *   @dctx must be properly initialized */
> -static size_t INIT ZSTD_decompressFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void **srcPtr, size_t *srcSizePtr)
> +static size_t __init ZSTD_decompressFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void **srcPtr, size_t *srcSizePtr)
>   {
>   	const BYTE *ip = (const BYTE *)(*srcPtr);
>   	BYTE *const ostart = (BYTE * const)dst;
> @@ -1655,7 +1655,7 @@ static size_t INIT ZSTD_decompressFrame(
>   static const void *ZSTD_DDictDictContent(const ZSTD_DDict *ddict);
>   static size_t ZSTD_DDictDictSize(const ZSTD_DDict *ddict);
>   
> -static size_t INIT ZSTD_decompressMultiFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize,
> +static size_t __init ZSTD_decompressMultiFrame(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize,
>   					const ZSTD_DDict *ddict)
>   {
>   	void *const dststart = dst;
> @@ -1719,12 +1719,12 @@ static size_t INIT ZSTD_decompressMultiF
>   	return (BYTE *)dst - (BYTE *)dststart;
>   }
>   
> -STATIC size_t INIT ZSTD_decompress_usingDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize)
> +static size_t __init ZSTD_decompress_usingDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const void *dict, size_t dictSize)
>   {
>   	return ZSTD_decompressMultiFrame(dctx, dst, dstCapacity, src, srcSize, dict, dictSize, NULL);
>   }
>   
> -STATIC size_t INIT ZSTD_decompressDCtx(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +static size_t __init ZSTD_decompressDCtx(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	return ZSTD_decompress_usingDict(dctx, dst, dstCapacity, src, srcSize, NULL, 0);
>   }
> @@ -1733,12 +1733,12 @@ STATIC size_t INIT ZSTD_decompressDCtx(Z
>   *   Advanced Streaming Decompression API
>   *   Bufferless and synchronous
>   ****************************************/
> -STATIC size_t INIT ZSTD_nextSrcSizeToDecompress(ZSTD_DCtx *dctx)
> +static size_t __init ZSTD_nextSrcSizeToDecompress(ZSTD_DCtx *dctx)
>   {
>   	return dctx->expected;
>   }
>   
> -STATIC ZSTD_nextInputType_e INIT ZSTD_nextInputType(ZSTD_DCtx *dctx)
> +static ZSTD_nextInputType_e __init ZSTD_nextInputType(ZSTD_DCtx *dctx)
>   {
>   	switch (dctx->stage) {
>   	default: /* should not happen */
> @@ -1753,12 +1753,12 @@ STATIC ZSTD_nextInputType_e INIT ZSTD_ne
>   	}
>   }
>   
> -int INIT ZSTD_isSkipFrame(ZSTD_DCtx *dctx) { return dctx->stage == ZSTDds_skipFrame; } /* for zbuff */
> +int __init ZSTD_isSkipFrame(ZSTD_DCtx *dctx) { return dctx->stage == ZSTDds_skipFrame; } /* for zbuff */
>   
>   /** ZSTD_decompressContinue() :
>   *   @return : nb of bytes generated into `dst` (necessarily <= `dstCapacity)
>   *             or an error code, which can be tested using ZSTD_isError() */
> -STATIC size_t INIT ZSTD_decompressContinue(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +static size_t __init ZSTD_decompressContinue(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	/* Sanity check */
>   	if (srcSize != dctx->expected)
> @@ -1877,7 +1877,7 @@ STATIC size_t INIT ZSTD_decompressContin
>   	}
>   }
>   
> -static size_t INIT ZSTD_refDictContent(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
> +static size_t __init ZSTD_refDictContent(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
>   {
>   	dctx->dictEnd = dctx->previousDstEnd;
>   	dctx->vBase = (const char *)dict - ((const char *)(dctx->previousDstEnd) - (const char *)(dctx->base));
> @@ -1889,7 +1889,7 @@ static size_t INIT ZSTD_refDictContent(Z
>   /* ZSTD_loadEntropy() :
>    * dict : must point at beginning of a valid zstd dictionary
>    * @return : size of entropy tables read */
> -static size_t INIT ZSTD_loadEntropy(ZSTD_entropyTables_t *entropy, const void *const dict, size_t const dictSize)
> +static size_t __init ZSTD_loadEntropy(ZSTD_entropyTables_t *entropy, const void *const dict, size_t const dictSize)
>   {
>   	const BYTE *dictPtr = (const BYTE *)dict;
>   	const BYTE *const dictEnd = dictPtr + dictSize;
> @@ -1958,7 +1958,7 @@ static size_t INIT ZSTD_loadEntropy(ZSTD
>   	return dictPtr - (const BYTE *)dict;
>   }
>   
> -static size_t INIT ZSTD_decompress_insertDictionary(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
> +static size_t __init ZSTD_decompress_insertDictionary(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
>   {
>   	if (dictSize < 8)
>   		return ZSTD_refDictContent(dctx, dict, dictSize);
> @@ -1984,7 +1984,7 @@ static size_t INIT ZSTD_decompress_inser
>   	return ZSTD_refDictContent(dctx, dict, dictSize);
>   }
>   
> -STATIC size_t INIT ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
> +static size_t __init ZSTD_decompressBegin_usingDict(ZSTD_DCtx *dctx, const void *dict, size_t dictSize)
>   {
>   	CHECK_F(ZSTD_decompressBegin(dctx));
>   	if (dict && dictSize)
> @@ -2005,14 +2005,14 @@ struct ZSTD_DDict_s {
>   }; /* typedef'd to ZSTD_DDict within "zstd.h" */
>   
>   #ifdef BUILD_DEAD_CODE
> -size_t INIT ZSTD_DDictWorkspaceBound(void) { return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DDict)); }
> +size_t __init ZSTD_DDictWorkspaceBound(void) { return ZSTD_ALIGN(sizeof(ZSTD_stack)) + ZSTD_ALIGN(sizeof(ZSTD_DDict)); }
>   #endif
>   
> -static const void *INIT ZSTD_DDictDictContent(const ZSTD_DDict *ddict) { return ddict->dictContent; }
> +static const void *__init ZSTD_DDictDictContent(const ZSTD_DDict *ddict) { return ddict->dictContent; }
>   
> -static size_t INIT ZSTD_DDictDictSize(const ZSTD_DDict *ddict) { return ddict->dictSize; }
> +static size_t __init ZSTD_DDictDictSize(const ZSTD_DDict *ddict) { return ddict->dictSize; }
>   
> -static void INIT ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict)
> +static void __init ZSTD_refDDict(ZSTD_DCtx *dstDCtx, const ZSTD_DDict *ddict)
>   {
>   	ZSTD_decompressBegin(dstDCtx); /* init */
>   	if (ddict) {		       /* support refDDict on NULL */
> @@ -2039,7 +2039,7 @@ static void INIT ZSTD_refDDict(ZSTD_DCtx
>   }
>   
>   #ifdef BUILD_DEAD_CODE
> -static size_t INIT ZSTD_loadEntropy_inDDict(ZSTD_DDict *ddict)
> +static size_t __init ZSTD_loadEntropy_inDDict(ZSTD_DDict *ddict)
>   {
>   	ddict->dictID = 0;
>   	ddict->entropyPresent = 0;
> @@ -2058,7 +2058,7 @@ static size_t INIT ZSTD_loadEntropy_inDD
>   	return 0;
>   }
>   
> -static ZSTD_DDict *INIT ZSTD_createDDict_advanced(const void *dict, size_t dictSize, unsigned byReference, ZSTD_customMem customMem)
> +static ZSTD_DDict *__init ZSTD_createDDict_advanced(const void *dict, size_t dictSize, unsigned byReference, ZSTD_customMem customMem)
>   {
>   	if (!customMem.customAlloc || !customMem.customFree)
>   		return NULL;
> @@ -2101,14 +2101,14 @@ static ZSTD_DDict *INIT ZSTD_createDDict
>   *   Create a digested dictionary, to start decompression without startup delay.
>   *   `dict` content is copied inside DDict.
>   *   Consequently, `dict` can be released after `ZSTD_DDict` creation */
> -ZSTD_DDict *INIT ZSTD_initDDict(const void *dict, size_t dictSize, void *workspace, size_t workspaceSize)
> +ZSTD_DDict *__init ZSTD_initDDict(const void *dict, size_t dictSize, void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
>   	return ZSTD_createDDict_advanced(dict, dictSize, 1, stackMem);
>   }
>   #endif /* BUILD_DEAD_CODE */
>   
> -size_t INIT ZSTD_freeDDict(ZSTD_DDict *ddict)
> +size_t __init ZSTD_freeDDict(ZSTD_DDict *ddict)
>   {
>   	if (ddict == NULL)
>   		return 0; /* support free on NULL */
> @@ -2125,7 +2125,7 @@ size_t INIT ZSTD_freeDDict(ZSTD_DDict *d
>    *  Provides the dictID stored within dictionary.
>    *  if @return == 0, the dictionary is not conformant with Zstandard specification.
>    *  It can still be loaded, but as a content-only dictionary. */
> -unsigned INIT ZSTD_getDictID_fromDict(const void *dict, size_t dictSize)
> +unsigned __init ZSTD_getDictID_fromDict(const void *dict, size_t dictSize)
>   {
>   	if (dictSize < 8)
>   		return 0;
> @@ -2138,7 +2138,7 @@ unsigned INIT ZSTD_getDictID_fromDict(co
>    *  Provides the dictID of the dictionary loaded into `ddict`.
>    *  If @return == 0, the dictionary is not conformant to Zstandard specification, or empty.
>    *  Non-conformant dictionaries can still be loaded, but as content-only dictionaries. */
> -unsigned INIT ZSTD_getDictID_fromDDict(const ZSTD_DDict *ddict)
> +unsigned __init ZSTD_getDictID_fromDDict(const ZSTD_DDict *ddict)
>   {
>   	if (ddict == NULL)
>   		return 0;
> @@ -2155,7 +2155,7 @@ unsigned INIT ZSTD_getDictID_fromDDict(c
>    *  - `srcSize` is too small, and as a result, the frame header could not be decoded (only possible if `srcSize < ZSTD_FRAMEHEADERSIZE_MAX`).
>    *  - This is not a Zstandard frame.
>    *  When identifying the exact failure cause, it's possible to used ZSTD_getFrameParams(), which will provide a more precise error code. */
> -unsigned INIT ZSTD_getDictID_fromFrame(const void *src, size_t srcSize)
> +unsigned __init ZSTD_getDictID_fromFrame(const void *src, size_t srcSize)
>   {
>   	ZSTD_frameParams zfp = {0, 0, 0, 0};
>   	size_t const hError = ZSTD_getFrameParams(&zfp, src, srcSize);
> @@ -2168,7 +2168,7 @@ unsigned INIT ZSTD_getDictID_fromFrame(c
>   /*! ZSTD_decompress_usingDDict() :
>   *   Decompression using a pre-digested Dictionary
>   *   Use dictionary without significant overhead. */
> -STATIC size_t INIT ZSTD_decompress_usingDDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const ZSTD_DDict *ddict)
> +static size_t __init ZSTD_decompress_usingDDict(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, const void *src, size_t srcSize, const ZSTD_DDict *ddict)
>   {
>   	/* pass content and size in case legacy frames are encountered */
>   	return ZSTD_decompressMultiFrame(dctx, dst, dstCapacity, src, srcSize, NULL, 0, ddict);
> @@ -2205,7 +2205,7 @@ struct ZSTD_DStream_s {
>   	U32 hostageByte;
>   }; /* typedef'd to ZSTD_DStream within "zstd.h" */
>   
> -STATIC size_t INIT ZSTD_DStreamWorkspaceBound(size_t maxWindowSize)
> +static size_t __init ZSTD_DStreamWorkspaceBound(size_t maxWindowSize)
>   {
>   	size_t const blockSize = MIN(maxWindowSize, ZSTD_BLOCKSIZE_ABSOLUTEMAX);
>   	size_t const inBuffSize = blockSize;
> @@ -2213,7 +2213,7 @@ STATIC size_t INIT ZSTD_DStreamWorkspace
>   	return ZSTD_DCtxWorkspaceBound() + ZSTD_ALIGN(sizeof(ZSTD_DStream)) + ZSTD_ALIGN(inBuffSize) + ZSTD_ALIGN(outBuffSize);
>   }
>   
> -static ZSTD_DStream *INIT ZSTD_createDStream_advanced(ZSTD_customMem customMem)
> +static ZSTD_DStream *__init ZSTD_createDStream_advanced(ZSTD_customMem customMem)
>   {
>   	ZSTD_DStream *zds;
>   
> @@ -2235,7 +2235,7 @@ static ZSTD_DStream *INIT ZSTD_createDSt
>   	return zds;
>   }
>   
> -STATIC ZSTD_DStream *INIT ZSTD_initDStream(size_t maxWindowSize, void *workspace, size_t workspaceSize)
> +static ZSTD_DStream *__init ZSTD_initDStream(size_t maxWindowSize, void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_customMem const stackMem = ZSTD_initStack(workspace, workspaceSize);
>   	ZSTD_DStream *zds = ZSTD_createDStream_advanced(stackMem);
> @@ -2269,7 +2269,7 @@ STATIC ZSTD_DStream *INIT ZSTD_initDStre
>   }
>   
>   #ifdef BUILD_DEAD_CODE
> -ZSTD_DStream *INIT ZSTD_initDStream_usingDDict(size_t maxWindowSize, const ZSTD_DDict *ddict, void *workspace, size_t workspaceSize)
> +ZSTD_DStream *__init ZSTD_initDStream_usingDDict(size_t maxWindowSize, const ZSTD_DDict *ddict, void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_DStream *zds = ZSTD_initDStream(maxWindowSize, workspace, workspaceSize);
>   	if (zds) {
> @@ -2279,7 +2279,7 @@ ZSTD_DStream *INIT ZSTD_initDStream_usin
>   }
>   #endif
>   
> -size_t INIT ZSTD_freeDStream(ZSTD_DStream *zds)
> +size_t __init ZSTD_freeDStream(ZSTD_DStream *zds)
>   {
>   	if (zds == NULL)
>   		return 0; /* support free on null */
> @@ -2301,11 +2301,11 @@ size_t INIT ZSTD_freeDStream(ZSTD_DStrea
>   /* *** Initialization *** */
>   
>   #ifdef BUILD_DEAD_CODE
> -size_t INIT ZSTD_DStreamInSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX + ZSTD_blockHeaderSize; }
> -size_t INIT ZSTD_DStreamOutSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX; }
> +size_t __init ZSTD_DStreamInSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX + ZSTD_blockHeaderSize; }
> +size_t __init ZSTD_DStreamOutSize(void) { return ZSTD_BLOCKSIZE_ABSOLUTEMAX; }
>   #endif
>   
> -STATIC size_t INIT ZSTD_resetDStream(ZSTD_DStream *zds)
> +static size_t __init ZSTD_resetDStream(ZSTD_DStream *zds)
>   {
>   	zds->stage = zdss_loadHeader;
>   	zds->lhSize = zds->inPos = zds->outStart = zds->outEnd = 0;
> @@ -2316,14 +2316,14 @@ STATIC size_t INIT ZSTD_resetDStream(ZST
>   
>   /* *****   Decompression   ***** */
>   
> -ZSTD_STATIC size_t INIT ZSTD_limitCopy(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
> +ZSTD_STATIC size_t __init ZSTD_limitCopy(void *dst, size_t dstCapacity, const void *src, size_t srcSize)
>   {
>   	size_t const length = MIN(dstCapacity, srcSize);
>   	memcpy(dst, src, length);
>   	return length;
>   }
>   
> -STATIC size_t INIT ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inBuffer *input)
> +static size_t __init ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inBuffer *input)
>   {
>   	const char *const istart = (const char *)(input->src) + input->pos;
>   	const char *const iend = (const char *)(input->src) + input->size;
> --- a/xen/common/zstd/entropy_common.c
> +++ b/xen/common/zstd/entropy_common.c
> @@ -46,17 +46,17 @@
>   #include "mem.h"
>   
>   /*===   Version   ===*/
> -unsigned INIT FSE_versionNumber(void) { return FSE_VERSION_NUMBER; }
> +unsigned __init FSE_versionNumber(void) { return FSE_VERSION_NUMBER; }
>   
>   /*===   Error Management   ===*/
> -unsigned INIT FSE_isError(size_t code) { return ERR_isError(code); }
> +unsigned __init FSE_isError(size_t code) { return ERR_isError(code); }
>   
> -unsigned INIT HUF_isError(size_t code) { return ERR_isError(code); }
> +unsigned __init HUF_isError(size_t code) { return ERR_isError(code); }
>   
>   /*-**************************************************************
>   *  FSE NCount encoding-decoding
>   ****************************************************************/
> -size_t INIT FSE_readNCount(short *normalizedCounter, unsigned *maxSVPtr, unsigned *tableLogPtr, const void *headerBuffer, size_t hbSize)
> +size_t __init FSE_readNCount(short *normalizedCounter, unsigned *maxSVPtr, unsigned *tableLogPtr, const void *headerBuffer, size_t hbSize)
>   {
>   	const BYTE *const istart = (const BYTE *)headerBuffer;
>   	const BYTE *const iend = istart + hbSize;
> @@ -164,7 +164,7 @@ size_t INIT FSE_readNCount(short *normal
>   	@return : size read from `src` , or an error Code .
>   	Note : Needed by HUF_readCTable() and HUF_readDTableX?() .
>   */
> -size_t INIT HUF_readStats_wksp(BYTE *huffWeight, size_t hwSize, U32 *rankStats, U32 *nbSymbolsPtr, U32 *tableLogPtr, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_readStats_wksp(BYTE *huffWeight, size_t hwSize, U32 *rankStats, U32 *nbSymbolsPtr, U32 *tableLogPtr, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
>   {
>   	U32 weightTotal;
>   	const BYTE *ip = (const BYTE *)src;
> --- a/xen/common/zstd/error_private.h
> +++ b/xen/common/zstd/error_private.h
> @@ -67,9 +67,9 @@ typedef ZSTD_ErrorCode ERR_enum;
>   ******************************************/
>   #define ERROR(name) ((size_t)-PREFIX(name))
>   
> -ERR_STATIC unsigned INIT ERR_isError(size_t code) { return (code > ERROR(maxCode)); }
> +ERR_STATIC unsigned __init ERR_isError(size_t code) { return (code > ERROR(maxCode)); }
>   
> -ERR_STATIC ERR_enum INIT ERR_getErrorCode(size_t code)
> +ERR_STATIC ERR_enum __init ERR_getErrorCode(size_t code)
>   {
>   	if (!ERR_isError(code))
>   		return (ERR_enum)0;
> @@ -82,7 +82,7 @@ ERR_STATIC ERR_enum INIT ERR_getErrorCod
>    *
>    * Return: Non-zero iff the code is an error.
>    */
> -static __attribute__((unused)) unsigned int INIT ZSTD_isError(size_t code)
> +static __attribute__((unused)) unsigned int __init ZSTD_isError(size_t code)
>   {
>   	return code > (size_t)-ZSTD_error_maxCode;
>   }
> @@ -94,7 +94,7 @@ static __attribute__((unused)) unsigned
>    * Return:          The ZSTD_ErrorCode corresponding to the functionResult or 0
>    *                  if the functionResult isn't an error.
>    */
> -static __attribute__((unused)) ZSTD_ErrorCode INIT ZSTD_getErrorCode(
> +static __attribute__((unused)) ZSTD_ErrorCode __init ZSTD_getErrorCode(
>   	size_t functionResult)
>   {
>   	if (!ZSTD_isError(functionResult))
> --- a/xen/common/zstd/fse_decompress.c
> +++ b/xen/common/zstd/fse_decompress.c
> @@ -82,7 +82,7 @@
>   
>   /* Function templates */
>   
> -size_t INIT FSE_buildDTable_wksp(FSE_DTable *dt, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void *workspace, size_t workspaceSize)
> +size_t __init FSE_buildDTable_wksp(FSE_DTable *dt, const short *normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, void *workspace, size_t workspaceSize)
>   {
>   	void *const tdPtr = dt + 1; /* because *dt is unsigned, 32-bits aligned on 32-bits */
>   	FSE_DECODE_TYPE *const tableDecode = (FSE_DECODE_TYPE *)(tdPtr);
> @@ -157,7 +157,7 @@ size_t INIT FSE_buildDTable_wksp(FSE_DTa
>   /*-*******************************************************
>   *  Decompression (Byte symbols)
>   *********************************************************/
> -size_t INIT FSE_buildDTable_rle(FSE_DTable *dt, BYTE symbolValue)
> +size_t __init FSE_buildDTable_rle(FSE_DTable *dt, BYTE symbolValue)
>   {
>   	void *ptr = dt;
>   	FSE_DTableHeader *const DTableH = (FSE_DTableHeader *)ptr;
> @@ -174,7 +174,7 @@ size_t INIT FSE_buildDTable_rle(FSE_DTab
>   	return 0;
>   }
>   
> -size_t INIT FSE_buildDTable_raw(FSE_DTable *dt, unsigned nbBits)
> +size_t __init FSE_buildDTable_raw(FSE_DTable *dt, unsigned nbBits)
>   {
>   	void *ptr = dt;
>   	FSE_DTableHeader *const DTableH = (FSE_DTableHeader *)ptr;
> @@ -269,7 +269,7 @@ FORCE_INLINE size_t FSE_decompress_using
>   	return op - ostart;
>   }
>   
> -size_t INIT FSE_decompress_usingDTable(void *dst, size_t originalSize, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt)
> +size_t __init FSE_decompress_usingDTable(void *dst, size_t originalSize, const void *cSrc, size_t cSrcSize, const FSE_DTable *dt)
>   {
>   	const void *ptr = dt;
>   	const FSE_DTableHeader *DTableH = (const FSE_DTableHeader *)ptr;
> @@ -281,7 +281,7 @@ size_t INIT FSE_decompress_usingDTable(v
>   	return FSE_decompress_usingDTable_generic(dst, originalSize, cSrc, cSrcSize, dt, 0);
>   }
>   
> -size_t INIT FSE_decompress_wksp(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, unsigned maxLog, void *workspace, size_t workspaceSize)
> +size_t __init FSE_decompress_wksp(void *dst, size_t dstCapacity, const void *cSrc, size_t cSrcSize, unsigned maxLog, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *const istart = (const BYTE *)cSrc;
>   	const BYTE *ip = istart;
> --- a/xen/common/zstd/huf_decompress.c
> +++ b/xen/common/zstd/huf_decompress.c
> @@ -68,7 +68,7 @@ typedef struct {
>   	BYTE reserved;
>   } DTableDesc;
>   
> -static DTableDesc INIT HUF_getDTableDesc(const HUF_DTable *table)
> +static DTableDesc __init HUF_getDTableDesc(const HUF_DTable *table)
>   {
>   	DTableDesc dtd;
>   	memcpy(&dtd, table, sizeof(dtd));
> @@ -84,7 +84,7 @@ typedef struct {
>   	BYTE nbBits;
>   } HUF_DEltX2; /* single-symbol decoding */
>   
> -size_t INIT HUF_readDTableX2_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_readDTableX2_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
>   {
>   	U32 tableLog = 0;
>   	U32 nbSymbols = 0;
> @@ -152,7 +152,7 @@ size_t INIT HUF_readDTableX2_wksp(HUF_DT
>   	return iSize;
>   }
>   
> -static BYTE INIT HUF_decodeSymbolX2(BIT_DStream_t *Dstream, const HUF_DEltX2 *dt, const U32 dtLog)
> +static BYTE __init HUF_decodeSymbolX2(BIT_DStream_t *Dstream, const HUF_DEltX2 *dt, const U32 dtLog)
>   {
>   	size_t const val = BIT_lookBitsFast(Dstream, dtLog); /* note : dtLog >= 1 */
>   	BYTE const c = dt[val].byte;
> @@ -193,7 +193,7 @@ FORCE_INLINE size_t HUF_decodeStreamX2(B
>   	return pEnd - pStart;
>   }
>   
> -static size_t INIT HUF_decompress1X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +static size_t __init HUF_decompress1X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	BYTE *op = (BYTE *)dst;
>   	BYTE *const oend = op + dstSize;
> @@ -218,7 +218,7 @@ static size_t INIT HUF_decompress1X2_usi
>   	return dstSize;
>   }
>   
> -size_t INIT HUF_decompress1X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress1X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
>   	if (dtd.tableType != 0)
> @@ -226,7 +226,7 @@ size_t INIT HUF_decompress1X2_usingDTabl
>   	return HUF_decompress1X2_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress1X2_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress1X2_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *ip = (const BYTE *)cSrc;
>   
> @@ -241,7 +241,7 @@ size_t INIT HUF_decompress1X2_DCtx_wksp(
>   	return HUF_decompress1X2_usingDTable_internal(dst, dstSize, ip, cSrcSize, DCtx);
>   }
>   
> -static size_t INIT HUF_decompress4X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +static size_t __init HUF_decompress4X2_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	/* Check */
>   	if (cSrcSize < 10)
> @@ -349,7 +349,7 @@ static size_t INIT HUF_decompress4X2_usi
>   	}
>   }
>   
> -size_t INIT HUF_decompress4X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress4X2_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
>   	if (dtd.tableType != 0)
> @@ -357,7 +357,7 @@ size_t INIT HUF_decompress4X2_usingDTabl
>   	return HUF_decompress4X2_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress4X2_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *ip = (const BYTE *)cSrc;
>   
> @@ -388,7 +388,7 @@ typedef struct {
>   
>   /* HUF_fillDTableX4Level2() :
>    * `rankValOrigin` must be a table of at least (HUF_TABLELOG_MAX + 1) U32 */
> -static void INIT HUF_fillDTableX4Level2(HUF_DEltX4 *DTable, U32 sizeLog, const U32 consumed, const U32 *rankValOrigin, const int minWeight,
> +static void __init HUF_fillDTableX4Level2(HUF_DEltX4 *DTable, U32 sizeLog, const U32 consumed, const U32 *rankValOrigin, const int minWeight,
>   					const sortedSymbol_t *sortedSymbols, const U32 sortedListSize, U32 nbBitsBaseline, U16 baseSeq)
>   {
>   	HUF_DEltX4 DElt;
> @@ -434,7 +434,7 @@ static void INIT HUF_fillDTableX4Level2(
>   typedef U32 rankVal_t[HUF_TABLELOG_MAX][HUF_TABLELOG_MAX + 1];
>   typedef U32 rankValCol_t[HUF_TABLELOG_MAX + 1];
>   
> -static void INIT HUF_fillDTableX4(HUF_DEltX4 *DTable, const U32 targetLog, const sortedSymbol_t *sortedList,
> +static void __init HUF_fillDTableX4(HUF_DEltX4 *DTable, const U32 targetLog, const sortedSymbol_t *sortedList,
>   				  const U32 sortedListSize, const U32 *rankStart,
>   			          rankVal_t rankValOrigin, const U32 maxWeight, const U32 nbBitsBaseline)
>   {
> @@ -477,7 +477,7 @@ static void INIT HUF_fillDTableX4(HUF_DE
>   	}
>   }
>   
> -size_t INIT HUF_readDTableX4_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_readDTableX4_wksp(HUF_DTable *DTable, const void *src, size_t srcSize, void *workspace, size_t workspaceSize)
>   {
>   	U32 tableLog, maxW, sizeOfSort, nbSymbols;
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
> @@ -590,7 +590,7 @@ size_t INIT HUF_readDTableX4_wksp(HUF_DT
>   	return iSize;
>   }
>   
> -static U32 INIT HUF_decodeSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
> +static U32 __init HUF_decodeSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
>   {
>   	size_t const val = BIT_lookBitsFast(DStream, dtLog); /* note : dtLog >= 1 */
>   	memcpy(op, dt + val, 2);
> @@ -598,7 +598,7 @@ static U32 INIT HUF_decodeSymbolX4(void
>   	return dt[val].length;
>   }
>   
> -static U32 INIT HUF_decodeLastSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
> +static U32 __init HUF_decodeLastSymbolX4(void *op, BIT_DStream_t *DStream, const HUF_DEltX4 *dt, const U32 dtLog)
>   {
>   	size_t const val = BIT_lookBitsFast(DStream, dtLog); /* note : dtLog >= 1 */
>   	memcpy(op, dt + val, 1);
> @@ -650,7 +650,7 @@ FORCE_INLINE size_t HUF_decodeStreamX4(B
>   	return p - pStart;
>   }
>   
> -static size_t INIT HUF_decompress1X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +static size_t __init HUF_decompress1X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	BIT_DStream_t bitD;
>   
> @@ -679,7 +679,7 @@ static size_t INIT HUF_decompress1X4_usi
>   	return dstSize;
>   }
>   
> -size_t INIT HUF_decompress1X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress1X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
>   	if (dtd.tableType != 1)
> @@ -687,7 +687,7 @@ size_t INIT HUF_decompress1X4_usingDTabl
>   	return HUF_decompress1X4_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress1X4_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress1X4_DCtx_wksp(HUF_DTable *DCtx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *ip = (const BYTE *)cSrc;
>   
> @@ -702,7 +702,7 @@ size_t INIT HUF_decompress1X4_DCtx_wksp(
>   	return HUF_decompress1X4_usingDTable_internal(dst, dstSize, ip, cSrcSize, DCtx);
>   }
>   
> -static size_t INIT HUF_decompress4X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +static size_t __init HUF_decompress4X4_usingDTable_internal(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	if (cSrcSize < 10)
>   		return ERROR(corruption_detected); /* strict minimum : jump table + 1 byte per stream */
> @@ -812,7 +812,7 @@ static size_t INIT HUF_decompress4X4_usi
>   	}
>   }
>   
> -size_t INIT HUF_decompress4X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress4X4_usingDTable(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc dtd = HUF_getDTableDesc(DTable);
>   	if (dtd.tableType != 1)
> @@ -820,7 +820,7 @@ size_t INIT HUF_decompress4X4_usingDTabl
>   	return HUF_decompress4X4_usingDTable_internal(dst, dstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress4X4_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	const BYTE *ip = (const BYTE *)cSrc;
>   
> @@ -839,14 +839,14 @@ size_t INIT HUF_decompress4X4_DCtx_wksp(
>   /* Generic decompression selector */
>   /* ********************************/
>   
> -size_t INIT HUF_decompress1X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress1X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc const dtd = HUF_getDTableDesc(DTable);
>   	return dtd.tableType ? HUF_decompress1X4_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable)
>   			     : HUF_decompress1X2_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable);
>   }
>   
> -size_t INIT HUF_decompress4X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
> +size_t __init HUF_decompress4X_usingDTable(void *dst, size_t maxDstSize, const void *cSrc, size_t cSrcSize, const HUF_DTable *DTable)
>   {
>   	DTableDesc const dtd = HUF_getDTableDesc(DTable);
>   	return dtd.tableType ? HUF_decompress4X4_usingDTable_internal(dst, maxDstSize, cSrc, cSrcSize, DTable)
> @@ -882,7 +882,7 @@ static const algo_time_t algoTime[16 /*
>   *   based on a set of pre-determined metrics.
>   *   @return : 0==HUF_decompress4X2, 1==HUF_decompress4X4 .
>   *   Assumption : 0 < cSrcSize < dstSize <= 128 KB */
> -U32 INIT HUF_selectDecoder(size_t dstSize, size_t cSrcSize)
> +U32 __init HUF_selectDecoder(size_t dstSize, size_t cSrcSize)
>   {
>   	/* decoder timing evaluation */
>   	U32 const Q = (U32)(cSrcSize * 16 / dstSize); /* Q < 16 since dstSize > cSrcSize */
> @@ -896,7 +896,7 @@ U32 INIT HUF_selectDecoder(size_t dstSiz
>   
>   typedef size_t (*decompressionAlgo)(void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize);
>   
> -size_t INIT HUF_decompress4X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress4X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	/* validation checks */
>   	if (dstSize == 0)
> @@ -919,7 +919,7 @@ size_t INIT HUF_decompress4X_DCtx_wksp(H
>   	}
>   }
>   
> -size_t INIT HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress4X_hufOnly_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	/* validation checks */
>   	if (dstSize == 0)
> @@ -934,7 +934,7 @@ size_t INIT HUF_decompress4X_hufOnly_wks
>   	}
>   }
>   
> -size_t INIT HUF_decompress1X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
> +size_t __init HUF_decompress1X_DCtx_wksp(HUF_DTable *dctx, void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize, void *workspace, size_t workspaceSize)
>   {
>   	/* validation checks */
>   	if (dstSize == 0)
> --- a/xen/common/zstd/zstd_common.c
> +++ b/xen/common/zstd/zstd_common.c
> @@ -31,7 +31,7 @@
>   		(stack)->ptr <= (stack)->end ? ptr : NULL;      \
>   	})
>   
> -ZSTD_customMem INIT ZSTD_initStack(void *workspace, size_t workspaceSize)
> +ZSTD_customMem __init ZSTD_initStack(void *workspace, size_t workspaceSize)
>   {
>   	ZSTD_customMem stackMem = {ZSTD_stackAlloc, ZSTD_stackFree, workspace};
>   	ZSTD_stack *stack = (ZSTD_stack *)workspace;
> @@ -47,27 +47,27 @@ ZSTD_customMem INIT ZSTD_initStack(void
>   	return stackMem;
>   }
>   
> -void *INIT ZSTD_stackAllocAll(void *opaque, size_t *size)
> +void *__init ZSTD_stackAllocAll(void *opaque, size_t *size)
>   {
>   	ZSTD_stack *stack = (ZSTD_stack *)opaque;
>   	*size = (BYTE const *)stack->end - (BYTE *)ZSTD_PTR_ALIGN(stack->ptr);
>   	return stack_push(stack, *size);
>   }
>   
> -void *INIT ZSTD_stackAlloc(void *opaque, size_t size)
> +void *__init ZSTD_stackAlloc(void *opaque, size_t size)
>   {
>   	ZSTD_stack *stack = (ZSTD_stack *)opaque;
>   	return stack_push(stack, size);
>   }
> -void INIT ZSTD_stackFree(void *opaque, void *address)
> +void __init ZSTD_stackFree(void *opaque, void *address)
>   {
>   	(void)opaque;
>   	(void)address;
>   }
>   
> -void *INIT ZSTD_malloc(size_t size, ZSTD_customMem customMem) { return customMem.customAlloc(customMem.opaque, size); }
> +void *__init ZSTD_malloc(size_t size, ZSTD_customMem customMem) { return customMem.customAlloc(customMem.opaque, size); }
>   
> -void INIT ZSTD_free(void *ptr, ZSTD_customMem customMem)
> +void __init ZSTD_free(void *ptr, ZSTD_customMem customMem)
>   {
>   	if (ptr != NULL)
>   		customMem.customFree(customMem.opaque, ptr);
> --- a/xen/common/zstd/zstd_internal.h
> +++ b/xen/common/zstd/zstd_internal.h
> @@ -21,7 +21,7 @@
>   *  Compiler specifics
>   *********************************************************/
>   #define FORCE_INLINE static always_inline
> -#define FORCE_NOINLINE static noinline INIT
> +#define FORCE_NOINLINE static noinline __init
>   
>   /*-*************************************
>   *  Dependencies
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:27:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:27:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119887.226664 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc4pm-000734-EX; Thu, 29 Apr 2021 11:27:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119887.226664; Thu, 29 Apr 2021 11: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 1lc4pm-00072x-Be; Thu, 29 Apr 2021 11:27:54 +0000
Received: by outflank-mailman (input) for mailman id 119887;
 Thu, 29 Apr 2021 11:27:53 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rkAN=J2=redhat.com=david@srs-us1.protection.inumbo.net>)
 id 1lc4pl-00072n-RD
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:27:53 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [216.205.24.124])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id cbbfa78a-5ce5-47ee-9caa-5fa2bdec6dff;
 Thu, 29 Apr 2021 11:27:52 +0000 (UTC)
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-405-5Pvl26hHO4OBYFbRkMiEmQ-1; Thu, 29 Apr 2021 07:27:50 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com
 [10.5.11.16])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 6DF1A8042A6;
 Thu, 29 Apr 2021 11:27:48 +0000 (UTC)
Received: from t480s.redhat.com (ovpn-114-50.ams2.redhat.com [10.36.114.50])
 by smtp.corp.redhat.com (Postfix) with ESMTP id C705F67CC4;
 Thu, 29 Apr 2021 11:27: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: cbbfa78a-5ce5-47ee-9caa-5fa2bdec6dff
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1619695672;
	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=UNce5xZGYwSY6mhN845V4iwjhXo75SIJ2plRmjN8C/4=;
	b=Bz4fI4OIZeB35QXYouiHWX0Ha/gcpjWhn8KOejU4ODk3AWYXiybUdWHM5QkEqy3LXHJIiV
	LKPwD9lw4NK4JBNnwQ5xAfHPA7BXxGxxKFJgLWkGkHiqBGX5NuPy3JHU1UBBhEHMiprRrw
	wFqzk7zEhztABPZ5siNmFmJO4YycitU=
X-MC-Unique: 5Pvl26hHO4OBYFbRkMiEmQ-1
From: David Hildenbrand <david@redhat.com>
To: qemu-devel@nongnu.org
Cc: David Hildenbrand <david@redhat.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Juan Quintela <quintela@redhat.com>,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
	Peter Xu <peterx@redhat.com>,
	Alex Williamson <alex.williamson@redhat.com>,
	Paul Durrant <paul@xen.org>,
	xen-devel@lists.xenproject.org,
	haxm-team@intel.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Wenchao Wang <wenchao.wang@intel.com>,
	Colin Xu <colin.xu@intel.com>
Subject: [PATCH v5 02/10] numa: Teach ram block notifiers about resizeable ram blocks
Date: Thu, 29 Apr 2021 13:27:00 +0200
Message-Id: <20210429112708.12291-3-david@redhat.com>
In-Reply-To: <20210429112708.12291-1-david@redhat.com>
References: <20210429112708.12291-1-david@redhat.com>
MIME-Version: 1.0
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=david@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="US-ASCII"

Ram block notifiers are currently not aware of resizes. To properly
handle resizes during migration, we want to teach ram block notifiers about
resizeable ram.

Introduce the basic infrastructure but keep using max_size in the
existing notifiers. Supply the max_size when adding and removing ram
blocks. Also, notify on resizes.

Acked-by: Paul Durrant <paul@xen.org>
Reviewed-by: Peter Xu <peterx@redhat.com>
Cc: xen-devel@lists.xenproject.org
Cc: haxm-team@intel.com
Cc: Paul Durrant <paul@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Wenchao Wang <wenchao.wang@intel.com>
Cc: Colin Xu <colin.xu@intel.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
---
 hw/core/numa.c             | 22 +++++++++++++++++-----
 hw/i386/xen/xen-mapcache.c |  7 ++++---
 include/exec/ramlist.h     | 13 +++++++++----
 softmmu/physmem.c          | 12 ++++++++++--
 target/i386/hax/hax-mem.c  |  5 +++--
 target/i386/sev.c          | 18 ++++++++++--------
 util/vfio-helpers.c        | 16 ++++++++--------
 7 files changed, 61 insertions(+), 32 deletions(-)

diff --git a/hw/core/numa.c b/hw/core/numa.c
index 7f08c27a6d..921bf86ab4 100644
--- a/hw/core/numa.c
+++ b/hw/core/numa.c
@@ -806,11 +806,12 @@ void query_numa_node_mem(NumaNodeMem node_mem[], MachineState *ms)
 static int ram_block_notify_add_single(RAMBlock *rb, void *opaque)
 {
     const ram_addr_t max_size = qemu_ram_get_max_length(rb);
+    const ram_addr_t size = qemu_ram_get_used_length(rb);
     void *host = qemu_ram_get_host_addr(rb);
     RAMBlockNotifier *notifier = opaque;
 
     if (host) {
-        notifier->ram_block_added(notifier, host, max_size);
+        notifier->ram_block_added(notifier, host, size, max_size);
     }
     return 0;
 }
@@ -827,20 +828,31 @@ void ram_block_notifier_remove(RAMBlockNotifier *n)
     QLIST_REMOVE(n, next);
 }
 
-void ram_block_notify_add(void *host, size_t size)
+void ram_block_notify_add(void *host, size_t size, size_t max_size)
 {
     RAMBlockNotifier *notifier;
 
     QLIST_FOREACH(notifier, &ram_list.ramblock_notifiers, next) {
-        notifier->ram_block_added(notifier, host, size);
+        notifier->ram_block_added(notifier, host, size, max_size);
     }
 }
 
-void ram_block_notify_remove(void *host, size_t size)
+void ram_block_notify_remove(void *host, size_t size, size_t max_size)
 {
     RAMBlockNotifier *notifier;
 
     QLIST_FOREACH(notifier, &ram_list.ramblock_notifiers, next) {
-        notifier->ram_block_removed(notifier, host, size);
+        notifier->ram_block_removed(notifier, host, size, max_size);
+    }
+}
+
+void ram_block_notify_resize(void *host, size_t old_size, size_t new_size)
+{
+    RAMBlockNotifier *notifier;
+
+    QLIST_FOREACH(notifier, &ram_list.ramblock_notifiers, next) {
+        if (notifier->ram_block_resized) {
+            notifier->ram_block_resized(notifier, host, old_size, new_size);
+        }
     }
 }
diff --git a/hw/i386/xen/xen-mapcache.c b/hw/i386/xen/xen-mapcache.c
index 5b120ed44b..d6dcea65d1 100644
--- a/hw/i386/xen/xen-mapcache.c
+++ b/hw/i386/xen/xen-mapcache.c
@@ -169,7 +169,8 @@ static void xen_remap_bucket(MapCacheEntry *entry,
 
     if (entry->vaddr_base != NULL) {
         if (!(entry->flags & XEN_MAPCACHE_ENTRY_DUMMY)) {
-            ram_block_notify_remove(entry->vaddr_base, entry->size);
+            ram_block_notify_remove(entry->vaddr_base, entry->size,
+                                    entry->size);
         }
         if (munmap(entry->vaddr_base, entry->size) != 0) {
             perror("unmap fails");
@@ -211,7 +212,7 @@ static void xen_remap_bucket(MapCacheEntry *entry,
     }
 
     if (!(entry->flags & XEN_MAPCACHE_ENTRY_DUMMY)) {
-        ram_block_notify_add(vaddr_base, size);
+        ram_block_notify_add(vaddr_base, size, size);
     }
 
     entry->vaddr_base = vaddr_base;
@@ -452,7 +453,7 @@ static void xen_invalidate_map_cache_entry_unlocked(uint8_t *buffer)
     }
 
     pentry->next = entry->next;
-    ram_block_notify_remove(entry->vaddr_base, entry->size);
+    ram_block_notify_remove(entry->vaddr_base, entry->size, entry->size);
     if (munmap(entry->vaddr_base, entry->size) != 0) {
         perror("unmap fails");
         exit(-1);
diff --git a/include/exec/ramlist.h b/include/exec/ramlist.h
index 26704aa3b0..ece6497ee2 100644
--- a/include/exec/ramlist.h
+++ b/include/exec/ramlist.h
@@ -65,15 +65,20 @@ void qemu_mutex_lock_ramlist(void);
 void qemu_mutex_unlock_ramlist(void);
 
 struct RAMBlockNotifier {
-    void (*ram_block_added)(RAMBlockNotifier *n, void *host, size_t size);
-    void (*ram_block_removed)(RAMBlockNotifier *n, void *host, size_t size);
+    void (*ram_block_added)(RAMBlockNotifier *n, void *host, size_t size,
+                            size_t max_size);
+    void (*ram_block_removed)(RAMBlockNotifier *n, void *host, size_t size,
+                              size_t max_size);
+    void (*ram_block_resized)(RAMBlockNotifier *n, void *host, size_t old_size,
+                              size_t new_size);
     QLIST_ENTRY(RAMBlockNotifier) next;
 };
 
 void ram_block_notifier_add(RAMBlockNotifier *n);
 void ram_block_notifier_remove(RAMBlockNotifier *n);
-void ram_block_notify_add(void *host, size_t size);
-void ram_block_notify_remove(void *host, size_t size);
+void ram_block_notify_add(void *host, size_t size, size_t max_size);
+void ram_block_notify_remove(void *host, size_t size, size_t max_size);
+void ram_block_notify_resize(void *host, size_t old_size, size_t new_size);
 
 void ram_block_dump(Monitor *mon);
 
diff --git a/softmmu/physmem.c b/softmmu/physmem.c
index bd2c0dc4ec..d6463f203d 100644
--- a/softmmu/physmem.c
+++ b/softmmu/physmem.c
@@ -1810,6 +1810,7 @@ static int memory_try_enable_merging(void *addr, size_t len)
  */
 int qemu_ram_resize(RAMBlock *block, ram_addr_t newsize, Error **errp)
 {
+    const ram_addr_t oldsize = block->used_length;
     const ram_addr_t unaligned_size = newsize;
 
     assert(block);
@@ -1846,6 +1847,11 @@ int qemu_ram_resize(RAMBlock *block, ram_addr_t newsize, Error **errp)
         return -EINVAL;
     }
 
+    /* Notify before modifying the ram block and touching the bitmaps. */
+    if (block->host) {
+        ram_block_notify_resize(block->host, oldsize, newsize);
+    }
+
     cpu_physical_memory_clear_dirty_range(block->offset, block->used_length);
     block->used_length = newsize;
     cpu_physical_memory_set_dirty_range(block->offset, block->used_length,
@@ -2013,7 +2019,8 @@ static void ram_block_add(RAMBlock *new_block, Error **errp, bool shared)
             qemu_madvise(new_block->host, new_block->max_length,
                          QEMU_MADV_DONTFORK);
         }
-        ram_block_notify_add(new_block->host, new_block->max_length);
+        ram_block_notify_add(new_block->host, new_block->used_length,
+                             new_block->max_length);
     }
 }
 
@@ -2192,7 +2199,8 @@ void qemu_ram_free(RAMBlock *block)
     }
 
     if (block->host) {
-        ram_block_notify_remove(block->host, block->max_length);
+        ram_block_notify_remove(block->host, block->used_length,
+                                block->max_length);
     }
 
     qemu_mutex_lock_ramlist();
diff --git a/target/i386/hax/hax-mem.c b/target/i386/hax/hax-mem.c
index 35495f5e82..8d44edbffd 100644
--- a/target/i386/hax/hax-mem.c
+++ b/target/i386/hax/hax-mem.c
@@ -293,7 +293,8 @@ static MemoryListener hax_memory_listener = {
     .priority = 10,
 };
 
-static void hax_ram_block_added(RAMBlockNotifier *n, void *host, size_t size)
+static void hax_ram_block_added(RAMBlockNotifier *n, void *host, size_t size,
+                                size_t max_size)
 {
     /*
      * We must register each RAM block with the HAXM kernel module, or
@@ -304,7 +305,7 @@ static void hax_ram_block_added(RAMBlockNotifier *n, void *host, size_t size)
      * host physical pages for the RAM block as part of this registration
      * process, hence the name hax_populate_ram().
      */
-    if (hax_populate_ram((uint64_t)(uintptr_t)host, size) < 0) {
+    if (hax_populate_ram((uint64_t)(uintptr_t)host, max_size) < 0) {
         fprintf(stderr, "HAX failed to populate RAM\n");
         abort();
     }
diff --git a/target/i386/sev.c b/target/i386/sev.c
index 72b9e2ab40..9cfe5afe31 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -181,7 +181,8 @@ sev_set_guest_state(SevGuestState *sev, SevState new_state)
 }
 
 static void
-sev_ram_block_added(RAMBlockNotifier *n, void *host, size_t size)
+sev_ram_block_added(RAMBlockNotifier *n, void *host, size_t size,
+                    size_t max_size)
 {
     int r;
     struct kvm_enc_region range;
@@ -198,19 +199,20 @@ sev_ram_block_added(RAMBlockNotifier *n, void *host, size_t size)
     }
 
     range.addr = (__u64)(unsigned long)host;
-    range.size = size;
+    range.size = max_size;
 
-    trace_kvm_memcrypt_register_region(host, size);
+    trace_kvm_memcrypt_register_region(host, max_size);
     r = kvm_vm_ioctl(kvm_state, KVM_MEMORY_ENCRYPT_REG_REGION, &range);
     if (r) {
         error_report("%s: failed to register region (%p+%#zx) error '%s'",
-                     __func__, host, size, strerror(errno));
+                     __func__, host, max_size, strerror(errno));
         exit(1);
     }
 }
 
 static void
-sev_ram_block_removed(RAMBlockNotifier *n, void *host, size_t size)
+sev_ram_block_removed(RAMBlockNotifier *n, void *host, size_t size,
+                      size_t max_size)
 {
     int r;
     struct kvm_enc_region range;
@@ -227,13 +229,13 @@ sev_ram_block_removed(RAMBlockNotifier *n, void *host, size_t size)
     }
 
     range.addr = (__u64)(unsigned long)host;
-    range.size = size;
+    range.size = max_size;
 
-    trace_kvm_memcrypt_unregister_region(host, size);
+    trace_kvm_memcrypt_unregister_region(host, max_size);
     r = kvm_vm_ioctl(kvm_state, KVM_MEMORY_ENCRYPT_UNREG_REGION, &range);
     if (r) {
         error_report("%s: failed to unregister region (%p+%#zx)",
-                     __func__, host, size);
+                     __func__, host, max_size);
     }
 }
 
diff --git a/util/vfio-helpers.c b/util/vfio-helpers.c
index 92b9565797..911115b86e 100644
--- a/util/vfio-helpers.c
+++ b/util/vfio-helpers.c
@@ -459,26 +459,26 @@ fail_container:
     return ret;
 }
 
-static void qemu_vfio_ram_block_added(RAMBlockNotifier *n,
-                                      void *host, size_t size)
+static void qemu_vfio_ram_block_added(RAMBlockNotifier *n, void *host,
+                                      size_t size, size_t max_size)
 {
     QEMUVFIOState *s = container_of(n, QEMUVFIOState, ram_notifier);
     int ret;
 
-    trace_qemu_vfio_ram_block_added(s, host, size);
-    ret = qemu_vfio_dma_map(s, host, size, false, NULL);
+    trace_qemu_vfio_ram_block_added(s, host, max_size);
+    ret = qemu_vfio_dma_map(s, host, max_size, false, NULL);
     if (ret) {
-        error_report("qemu_vfio_dma_map(%p, %zu) failed: %s", host, size,
+        error_report("qemu_vfio_dma_map(%p, %zu) failed: %s", host, max_size,
                      strerror(-ret));
     }
 }
 
-static void qemu_vfio_ram_block_removed(RAMBlockNotifier *n,
-                                        void *host, size_t size)
+static void qemu_vfio_ram_block_removed(RAMBlockNotifier *n, void *host,
+                                        size_t size, size_t max_size)
 {
     QEMUVFIOState *s = container_of(n, QEMUVFIOState, ram_notifier);
     if (host) {
-        trace_qemu_vfio_ram_block_removed(s, host, size);
+        trace_qemu_vfio_ram_block_removed(s, host, max_size);
         qemu_vfio_dma_unmap(s, host);
     }
 }
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:27:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:27:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119888.226670 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc4pm-00073W-Np; Thu, 29 Apr 2021 11:27:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119888.226670; Thu, 29 Apr 2021 11: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 1lc4pm-00073O-JZ; Thu, 29 Apr 2021 11:27:54 +0000
Received: by outflank-mailman (input) for mailman id 119888;
 Thu, 29 Apr 2021 11:27: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 1lc4pl-00072o-Rv
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:27: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 1lc4pj-00033f-JF; Thu, 29 Apr 2021 11:27:51 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lc4pj-00014n-CK; Thu, 29 Apr 2021 11:27: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=5lORt5x6BV5eAFqPhrdiakTGkNYAtS037+8oc7UMlY4=; b=Dn5toUWnX3Hn54Dmqn1g54KHwY
	HaE4/XyM6hfi18rlMdQGMm/xbS4njcc/wsWbLrMyHaS7xP+jwlH/IRGho/gFJKYhircWtQ5gct4Ek
	CJ5g8kjP2p6vw0UbqNkU7+LeweEx3a5mWXu/BSNI2BVXuf9//fqHbgAIPAuakIJHT87c=;
Subject: Re: [PATCH v4 3/3] unzstd: make helper symbols static
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
 <759c8524-cc01-fac8-bc62-0ba6558477bd@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <cb8fa703-f421-ce55-811a-d4a649bc201a@xen.org>
Date: Thu, 29 Apr 2021 12:27:49 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <759c8524-cc01-fac8-bc62-0ba6558477bd@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 21/04/2021 11:22, Jan Beulich wrote:
> While for the original library's purposes these functions of course want
> to be externally exposed, we don't need this, and we also don't want
> this both to prevent unintended use and to keep the name space tidy.
> (When functions have no callers at all, wrap them with a suitable
> #ifdef.) This has the added benefit of reducing the resulting binary
> size - while this is all .init code, it's still desirable to not carry
> dead code.

So I understand the desire to keep the code close to Linux and removing 
the dead code. However I am still not convinced that the approach taken 
is actually worth the amount of memory saved.

How much memory are we talking about here?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:29:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:29:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119895.226689 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc4rN-0007Gc-4W; Thu, 29 Apr 2021 11:29:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119895.226689; Thu, 29 Apr 2021 11:29:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc4rN-0007GV-1N; Thu, 29 Apr 2021 11:29:33 +0000
Received: by outflank-mailman (input) for mailman id 119895;
 Thu, 29 Apr 2021 11:29: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 1lc4rM-0007GQ-7w
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:29: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 1lc4rK-00035E-P4; Thu, 29 Apr 2021 11:29:30 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lc4rK-00019y-Ic; Thu, 29 Apr 2021 11:29: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=rOxxts5pM2NKEoFqF46g5CZbNAxszbWHdxsPtitv6V0=; b=SKrTTmkXJmXLfsYQAYTVG4WnGF
	EaOb0hVe+j7IVgXWAXfrvsFAFceILvxyAWwli6MDwlh9dCwCK3uN392kZb82S1Aq/tt4u9uYgTkS6
	Dw3S/MW+C97wxxn2chzLCh308Qw5SpXwpnEQQy/ZS5Oc0JPNoLev+rIPukUT0GTzml98=;
Subject: Re: [PATCH 3/5] tools/libs/foreignmemory: Fix PAGE_SIZE redefinition
 error
To: Costin Lupu <costin.lupu@cs.pub.ro>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <b9a300edca034d44375d8b16d352110186657e75.1619524463.git.costin.lupu@cs.pub.ro>
 <8803561c-b3bd-4979-f9ef-3f58542af70b@xen.org>
 <7c465859-5af3-3d9f-81f4-2062b29e57f0@cs.pub.ro>
From: Julien Grall <julien@xen.org>
Message-ID: <4d527d96-6baa-1558-5df0-363300572044@xen.org>
Date: Thu, 29 Apr 2021 12:29:29 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <7c465859-5af3-3d9f-81f4-2062b29e57f0@cs.pub.ro>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit



On 28/04/2021 19:27, Costin Lupu wrote:
> Hi Julien,

Hi Costin,

> On 4/28/21 12:03 PM, Julien Grall wrote:
>> Hi Costin,
>>
>> On 27/04/2021 13:05, Costin Lupu wrote:
>>>    tools/libs/foreignmemory/private.h | 6 ++++--
>>>    1 file changed, 4 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/tools/libs/foreignmemory/private.h
>>> b/tools/libs/foreignmemory/private.h
>>> index 1ee3626dd2..f3c1ba2867 100644
>>> --- a/tools/libs/foreignmemory/private.h
>>> +++ b/tools/libs/foreignmemory/private.h
>>> @@ -10,11 +10,13 @@
>>>    #include <xen/xen.h>
>>>    #include <xen/sys/privcmd.h>
>>>    -#ifndef PAGE_SHIFT /* Mini-os, Yukk */
>>> +#ifndef PAGE_SHIFT
>>>    #define PAGE_SHIFT           12
>>>    #endif
>>> -#ifndef __MINIOS__ /* Yukk */
>>> +#ifndef PAGE_SIZE
>>>    #define PAGE_SIZE            (1UL << PAGE_SHIFT)
>>> +#endif
>>> +#ifndef PAGE_MASK
>>>    #define PAGE_MASK            (~(PAGE_SIZE-1))
>>>    #endif
>>
>> Looking at the usage, I believe PAGE_* are referring to the page
>> granularity of Xen rather than the page granularity of the control
>> domain itself.
>>
>> So it would be incorrect to use the domain's page granularity here and
>> would break dom0 using 64KB page granularity on Arm.
>>
>> Instead, we should replace PAGE_* with XC_PAGE_*. If some of them are
>> still referring to the control domain granularity, then we should use
>> getpageshift() (Or equivalent) because the userspace shouldn't rely on a
>> specific page granularity.
> 
> Yes, this makes sense. One thing I need to clarify: what does XC stand
> for? I thought for some time it stands for Xen Control.

I think it is Xen Control, which is a bit confusing for that specific 
define.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:31:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:31:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119901.226701 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc4tK-00087W-HP; Thu, 29 Apr 2021 11:31:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119901.226701; Thu, 29 Apr 2021 11: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 1lc4tK-00087P-Dh; Thu, 29 Apr 2021 11:31:34 +0000
Received: by outflank-mailman (input) for mailman id 119901;
 Thu, 29 Apr 2021 11:31:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sKbL=J2=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lc4tI-00087K-GX
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:31:32 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.44]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2ba1cb86-2e31-4746-b7b7-e7b1b90bd4e9;
 Thu, 29 Apr 2021 11:31:30 +0000 (UTC)
Received: from DB6P191CA0002.EURP191.PROD.OUTLOOK.COM (2603:10a6:6:28::12) by
 DB8PR08MB4985.eurprd08.prod.outlook.com (2603:10a6:10:bf::22) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4065.24; Thu, 29 Apr 2021 11:31:27 +0000
Received: from DB5EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:6:28:cafe::fb) by DB6P191CA0002.outlook.office365.com
 (2603:10a6:6:28::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.25 via Frontend
 Transport; Thu, 29 Apr 2021 11:31:27 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT042.mail.protection.outlook.com (10.152.21.123) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 11:31:27 +0000
Received: ("Tessian outbound 6c4b4bc1cefb:v91");
 Thu, 29 Apr 2021 11:31:27 +0000
Received: from d3da924730e7.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A165D93C-8DE3-4F6E-937C-D520BB273203.1; 
 Thu, 29 Apr 2021 11:31:17 +0000
Received: from EUR02-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d3da924730e7.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 29 Apr 2021 11:31:17 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AM5PR0801MB1940.eurprd08.prod.outlook.com (2603:10a6:203:48::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.24; Thu, 29 Apr
 2021 11:31:15 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4065.027; Thu, 29 Apr 2021
 11:31: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: 2ba1cb86-2e31-4746-b7b7-e7b1b90bd4e9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=USL8mQT5el1o/fEf63MaGqw+KZW/W8Fc8WnR4UffJko=;
 b=45aG0qsUBztgA8ZlYjn2ZhzSvW40f8YVp4DPpiJIVdu2lmPpFxa9LhESjOKeJNP7/AATravMkugTkOdODxBM+1nk+k0sbv3ljxIWT0cdNAEnqqRqQhGnayGbQlUiC9A0/gXHm0rCKOEBwcqAbae+AuGQMXuZO6He/8PS8vOW2dY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 1db6d910a668f173
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L4Rx/1MoCgE5RARAY4ceKVo2GbEazUNhmyPQMsDVtCNiOzmmzvMX39rTSJmQ9bZbJjzBLAN0goJKe+YjFnfzStHsnR+nsRrwoP5h797NgKV147ijXLbhuhcrg6p2Zx9M/TvJ6qPDzz2v6ReVL5iT+/9bAY4SVRw6NuAj290DIsjNqEBzfSrnIJnZW/cqQk47BnD47p4Lcon5eZFzoeDeibxsgMOpP7UDAl2A4uiDojeODq4Or+dDK2+BtmFvN6xKjspAR45kMGRRedIgZj7qbJTV/J7iIOn38mO2mgS7rbmlVQVSGXsxpuOMtY4lCigfPgfNuWspoNM/ElIMNWQa5A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=USL8mQT5el1o/fEf63MaGqw+KZW/W8Fc8WnR4UffJko=;
 b=BN4mRMAVo1djmEYFG1dsvz7oyJDwL07pRs4sr/P/vg8yL25j+AdVgJwokkjqrUjRTxXccAlY7NVPvi6d3Tj9Nv9AvVJ33qUNfW0QsJGJO6WQGta/PFykko0soR+SCBBVtSsR+uByDbbe0rSi8RnIq5noMTMYEydPzZRV9J4nlEcO3JZQgeUJOZoGqjZbMHoK7AiX3duBiYqhooyPUecZVrx60iOu8wbymIQ2ZtGLN3bxvz3x560RbbEfABz6eNWy5NLz9LV331TqBxHhsaizglE55J/VmZGrbaPHTxThq78XgN83u+cxLNLxF18Py7WlmynRBvLIrnwCpfqxb2UaEg==
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=USL8mQT5el1o/fEf63MaGqw+KZW/W8Fc8WnR4UffJko=;
 b=45aG0qsUBztgA8ZlYjn2ZhzSvW40f8YVp4DPpiJIVdu2lmPpFxa9LhESjOKeJNP7/AATravMkugTkOdODxBM+1nk+k0sbv3ljxIWT0cdNAEnqqRqQhGnayGbQlUiC9A0/gXHm0rCKOEBwcqAbae+AuGQMXuZO6He/8PS8vOW2dY=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: xen-devel <xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.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>, Ian Jackson
	<iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Paul Durrant <paul@xen.org>, Daniel De Graaf
	<dgdegra@tycho.nsa.gov>
Subject: Re: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
Thread-Topic: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
Thread-Index: AQHXOrhr42FH3XtdSEulNtIMBWAh5arJ+c6AgAFnEwA=
Date: Thu, 29 Apr 2021 11:31:15 +0000
Message-ID: <636D798B-3635-4F3A-ABF0-ECA42695352B@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
 <69e0f583-3c61-afe9-0710-6531f99e8a2e@suse.com>
In-Reply-To: <69e0f583-3c61-afe9-0710-6531f99e8a2e@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 414c2f28-62b1-42dd-f1b2-08d90b0253fe
x-ms-traffictypediagnostic: AM5PR0801MB1940:|DB8PR08MB4985:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<DB8PR08MB49852C0E2E9537E24129A83BFC5F9@DB8PR08MB4985.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 CygG21Btq6gZPG7k6FCTpCCLDza7hKuDff0et6v6Tc+MSztsXCAoPULQ9bdaP2brKYlSZ/nJQ06GD7G3fmN7h6XDbV3FGNEOQXAN9KDhc4s1j/6thil2otDh/GI7/1VBZ8LCze9EdNTehRK9GRh5dGD5Gia4LTLt9fQIcMt7rM42wh9Oj5fb5GhZ9YN4z2rUl/wOjMnnvneNYrCGH2KQn+o84BwALd94GWd/iYPLCx4ZQOzBrHTn1irb4ViHy0rmISQ8d6afNXBJb2VFtN7s7nkIzNZFpSbshDZU2pxMlcw6UFfPG2ys3c8Q9zdGPluRg1gwwQBHHTUhtuAHbc8iezQuuJ4M0pbrArlklMdYUOafyZ6NylVG/ZeqIUY/C7N5AU6lCxtOnt6rrpyt2ZS6P6Wq84RTJFnA/jSYK+rYaUdlSequIgOH60EzK7swRBAWtwchXZ/ryw33dU76AAIJbLbLudTE9ixgbNy72Y6W9mmLorrFD6Vp1AAuunzJrHaFVYySJJ+ihaqYTTqB+RGx3o55hInClPOD60aOFewmt5XAqfEkZiPJaapwlNK8BaL83MnB/gGsW3IpXZy83RH+vFZJ658XJXeszhh2uvjha32Ll5ypop59iGU6EEO+wZDOaIUm5vb7yqj05dWfoTU5XIcX6LZHUwSU/kD7DlB4XtM=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(136003)(346002)(39860400002)(376002)(396003)(38100700002)(8936002)(33656002)(8676002)(186003)(66556008)(64756008)(91956017)(6512007)(66946007)(76116006)(26005)(6916009)(66476007)(71200400001)(122000001)(36756003)(83380400001)(2906002)(7416002)(86362001)(6506007)(478600001)(2616005)(53546011)(316002)(5660300002)(6486002)(4326008)(66446008)(54906003)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?iso-8859-1?Q?U+2ym+r5QH/38FMDZGriUiHTK4PMXHQplfX+c/bSxJceOMZQBSE8deH9Ze?=
 =?iso-8859-1?Q?vGl/eUphHom98Gmk9G37yyKCagSayAQYn0rKVVHA8jK3WGdGalXCnEWKjO?=
 =?iso-8859-1?Q?nXUA3ibtSxkWXndkltCl1jjDhxVUt2xtoNe4NhfZjXODUQfSN0MQsj1F4R?=
 =?iso-8859-1?Q?9jyhQT6cYW/QsXcRywF81JsEBJHn014ylhQ3L7kku7gzrA6UtuQm/NGhwX?=
 =?iso-8859-1?Q?wA5nXnAm4BWK1f6b/PUywt/+7Wi4CmxouzO2qqrELNChtMyybPiZvahkVq?=
 =?iso-8859-1?Q?cNUTHovAXT2tILvfdkzKS+shW2RoWQSM9ElSd8VtQq2erLbGv3jsWm7N0e?=
 =?iso-8859-1?Q?Pkci1fu6ugZkobRVHC8rerv1zAuNc2SL0xkdDHkKc/f54PiIfVjIvag7BO?=
 =?iso-8859-1?Q?nKUNTYSHTVyy8qOzQ+zwX81FHepSrNp0CSB9E8yoHeYN3EqQZp03H81TtY?=
 =?iso-8859-1?Q?OPkjLBRpO4nnsg0rKSifTlhpOcuv/grnvWfUuj0JzliHnZFZQXA9fbepLY?=
 =?iso-8859-1?Q?OAG64IgWHZo+geSB4/xtz1OaiTqn7XgLnPMX5hbCcYUsUzPDNnl6ip60T5?=
 =?iso-8859-1?Q?HvfwfLvrCDlWfpBmUBXR3SLlKkvRxDtPCM+3cWJZLYQANSrYneRMIbKrEv?=
 =?iso-8859-1?Q?4xCaSFfyCub+jJpH2UI4ojGfhVjKn8hXZYQNLXOiKTuFuk0xffutkvjYBN?=
 =?iso-8859-1?Q?zPBYa8JzHlyWwW10DiC0tCKgV9E8S6mrBBFKO0XAszw0fbXyHsUqJ4xvhu?=
 =?iso-8859-1?Q?iwuzULiY2g/YcFjjSZPz9iNWe1xH/6a9xhunz6qchdRWm2znOS4AQgxcc4?=
 =?iso-8859-1?Q?BZGAXa0D4MBqK/kl7jAgYRd5GeRH1SpQbjwGJ5H+2fSSs5w6TFiIYjagM+?=
 =?iso-8859-1?Q?kKTSkPtIgWIE+HXM4eemJ+By0SXOMWGhWzCE98WSJ9Z3NbHSMNncChxCtN?=
 =?iso-8859-1?Q?gkJKjcTiA8cIbHq8xfdzfxKdQCDJ7xtCkzCr8WlYP4BuN0fxwNDjcDpT/c?=
 =?iso-8859-1?Q?4QNV/pkkTjuS1zXaVK/3MrI/5IdIYiV9gKPVtqgXAsFk70JxwYgVw+eG+n?=
 =?iso-8859-1?Q?Ema/59geDa+TrpN2rC7dTwOa6SizNJjQnCHvW6WiP6RBPrrpX7e71JG042?=
 =?iso-8859-1?Q?706JliZkQu59F4XjnYgDvEthgGEzCN0D9+Zr6wHYZSfNcoACbu+RZ61Qza?=
 =?iso-8859-1?Q?6uSQJgFmt0T94n6wP/wRSKatAQLKZ5kf449nJGWER7UH0+vJLdI6NAKR4e?=
 =?iso-8859-1?Q?Ndu3Z9NaQd5F6Y5r/ot1oD2xhaurM3H8JmG7z4XquREaC+S/Y64OGRVAo9?=
 =?iso-8859-1?Q?afHrOC46m4IzB18Vm+BTGqO6CuAnOx65hICOh++AnE5U14cEUqvLB+BnU0?=
 =?iso-8859-1?Q?XpuOHqAAUG?=
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <81D5513216289040BE7C0A7CE830ADE8@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0801MB1940
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	73978460-f66b-4083-0d7d-08d90b024ccc
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wY0hHBqW3+4s6ZVF6TCo+lwfrHObWNCmAaIkGLbyQT3+lIAufK5B2Jt+AeE4AX9aw2JTU13E1aQVadExGu03BGpFRwkG1qXHueAlrCAONZRSEoXInPtsQWEKYEG+Gxw2YZyQiKdN1OF8+LgM9qdOaXUHffSwznzl5h+pFaA6mrMhsW5I7rXaxH4SolgsAto1GHJorZQXhnh7AUMwxz7sofNxhAVRBeiwBHbCCmp2eYd/RRIPwM3oGZqkg4zJcDPOvoKmsBgc50NE3TR4Aj0J6VCHDqt4UG4lM63rnOx+0sEB2gGiquHjpDRDUR5McKT20KUE1yjJWG7g4gHi7IBXUR+j8k/tZx+cLZKUf1uZMllkMRORceCzbfyILud8ltZuGBw19puKjmWoTqnjBDXih6NRXrGwxClutjnWcZEYTXXSkIma8I/5vViLWsJo06kt0JQYo4J0TvAfjtDY8BIUgRX5TH5hQH7GMVrJLbQtwvw/kFtO2wMmonu+Vys58b+Lou1oLfuSvIYsy9dMZJT5I96eY1E2lHjJYswsy9u1vdwj36kQoZlSZjlQn4+7UJQo/RswkN5tzZYqPeXlEfR8VvUC+EebGP9QhrDX8IgpJDDQ58+kr+2wCz6iQxApCx6v/JNXatPfUwq/cEvnzlXN2a4oQb/eW63kqmBRCkSKm67j3Uu6rP4VNhjs9OFng/H0
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:(4636009)(39860400002)(396003)(376002)(136003)(346002)(46966006)(36840700001)(4326008)(33656002)(186003)(6506007)(356005)(70206006)(70586007)(2906002)(34020700004)(336012)(6486002)(6862004)(47076005)(2616005)(54906003)(26005)(316002)(86362001)(82740400003)(81166007)(36756003)(8936002)(6512007)(478600001)(8676002)(53546011)(36860700001)(82310400003)(83380400001)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 11:31:27.6622
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 414c2f28-62b1-42dd-f1b2-08d90b0253fe
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:
	DB5EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB4985

Hi Jan,

> On 28 Apr 2021, at 3:06 pm, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 26.04.2021 18:21, Rahul Singh wrote:
>> --- a/xen/xsm/flask/hooks.c
>> +++ b/xen/xsm/flask/hooks.c
>> @@ -21,7 +21,7 @@
>> #include <xen/guest_access.h>
>> #include <xen/xenoprof.h>
>> #include <xen/iommu.h>
>> -#ifdef CONFIG_HAS_PCI
>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>> #include <asm/msi.h>
>> #endif
>> #include <public/xen.h>
>> @@ -114,7 +114,7 @@ static int get_irq_sid(int irq, u32 *sid, struct avc=
_audit_data *ad)
>>         }
>>         return security_irq_sid(irq, sid);
>>     }
>> -#ifdef CONFIG_HAS_PCI
>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>     {
>>         struct irq_desc *desc =3D irq_to_desc(irq);
>>         if ( desc->msi_desc && desc->msi_desc->dev ) {
>> @@ -874,7 +874,7 @@ static int flask_map_domain_pirq (struct domain *d)
>> static int flask_map_domain_msi (struct domain *d, int irq, const void *=
data,
>>                                  u32 *sid, struct avc_audit_data *ad)
>> {
>> -#ifdef CONFIG_HAS_PCI
>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>     const struct msi_info *msi =3D data;
>>     u32 machine_bdf =3D (msi->seg << 16) | (msi->bus << 8) | msi->devfn;
>>=20
>> @@ -940,7 +940,7 @@ static int flask_unmap_domain_pirq (struct domain *d=
)
>> static int flask_unmap_domain_msi (struct domain *d, int irq, const void=
 *data,
>>                                    u32 *sid, struct avc_audit_data *ad)
>> {
>> -#ifdef CONFIG_HAS_PCI
>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>     const struct pci_dev *pdev =3D data;
>>     u32 machine_bdf =3D (pdev->seg << 16) | (pdev->bus << 8) | pdev->dev=
fn;
>>=20
>=20
> Is all of this really related to MSI interception? Iirc the code here
> has been around for much longer, and hence is more related to MSI
> support in Xen in general (as required for PV guests in particular).

Yes I agree this code is not related to MSI interception but I decide to mo=
ve the code=20
under CONFIG_PCI_MSI_INTERCEPT flag to gate the code for ARM as to avoid an=
=20
extra flag. We can modify this code once we have more data how MSI will be=
=20
supported for other architecture. =20

Regards,
Rahul
>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:40:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:40:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119911.226713 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc51S-0008LC-I4; Thu, 29 Apr 2021 11:39:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119911.226713; Thu, 29 Apr 2021 11: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 1lc51S-0008L5-Ez; Thu, 29 Apr 2021 11:39:58 +0000
Received: by outflank-mailman (input) for mailman id 119911;
 Thu, 29 Apr 2021 11:39: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 1lc51R-0008Kz-I6
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:39: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 1lc51Q-0003Fs-3X; Thu, 29 Apr 2021 11:39:56 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lc51P-0001wU-Ro; Thu, 29 Apr 2021 11:39:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=YmLd22T4/0R5UNIjPLfJFoGiLZhaUFQk01l2lXTkOys=; b=pZA0PPaRa8V/A+NGwith9GgsbG
	cw8mKzTvVikdu3puISp33FtLPV4vPiiEsYFbX8HpMVEj8CDdWGVcwF5faYPhisCVw4hLCOJsXzmmt
	fqB0bfu62fq0P+dUNefT1HvAr6qDrQNfBX/OKQ3Pywol5HP/TcG/0AiJZ80BK8FejMoY=;
Subject: Re: [PATCH 2/5] tools/libfsimage: Fix PATH_MAX redefinition error
To: Costin Lupu <costin.lupu@cs.pub.ro>, xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <e44209c8981a68604a34f3066d53989f84ce8f49.1619524463.git.costin.lupu@cs.pub.ro>
 <9ef85c5b-b757-bbaa-be23-4ceb1d45cddd@xen.org>
 <d29a7d0a-d83e-a437-d38f-d142a2f0d1a7@cs.pub.ro>
From: Julien Grall <julien@xen.org>
Message-ID: <3a94e14d-9b4f-50b7-97bd-da6caedf250e@xen.org>
Date: Thu, 29 Apr 2021 12:39:54 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <d29a7d0a-d83e-a437-d38f-d142a2f0d1a7@cs.pub.ro>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit

Hi Costin,

On 28/04/2021 19:35, Costin Lupu wrote:
> On 4/28/21 12:04 PM, Julien Grall wrote:
>>
>>
>> On 27/04/2021 13:05, Costin Lupu wrote:
>>> If PATH_MAX is already defined in the system (e.g. in
>>> /usr/include/limits.h
>>> header) then gcc will trigger a redefinition error because of -Werror.
>>>
>>> Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
>>> ---
>>>    tools/libfsimage/ext2fs/fsys_ext2fs.c     | 2 ++
>>>    tools/libfsimage/reiserfs/fsys_reiserfs.c | 2 ++
>>>    2 files changed, 4 insertions(+)
>>>
>>> diff --git a/tools/libfsimage/ext2fs/fsys_ext2fs.c
>>> b/tools/libfsimage/ext2fs/fsys_ext2fs.c
>>> index a4ed10419c..5ed8fce90e 100644
>>> --- a/tools/libfsimage/ext2fs/fsys_ext2fs.c
>>> +++ b/tools/libfsimage/ext2fs/fsys_ext2fs.c
>>> @@ -278,7 +278,9 @@ struct ext4_extent_header {
>>>      #define EXT2_SUPER_MAGIC      0xEF53    /* include/linux/ext2_fs.h */
>>>    #define EXT2_ROOT_INO              2    /* include/linux/ext2_fs.h */
>>> +#ifndef PATH_MAX
>>>    #define PATH_MAX                1024    /* include/linux/limits.h */
>>> +#endif
>>
>> Can we drop it completely and just rely on limits.h?
>>
> 
> One problem here is that the system limits.h header doesn't necessarily
> include linux/limits.h, which would mean we would have to include
> linux/limits.h. But this is problematic for other systems such as BSD.

That's annoying :).

> 
> I had a look on a FreeBSD source tree to see how this is done there. It
> seems that there are lots of submodules, apps and libs that redefine
> PATH_MAX in case it wasn't defined before so the changes introduced by
> the current patch seem to be very popular. Another clean approach I saw
> was for jemalloc [1] which includes unistd.h. They redefine PATH_MAX
> only for MS C compiler, but AFAIK we don't need that.

I am not aware of anyone using MS C compiler to build the tools.

> 
> So IMHO the current changes seem to be the most portable, but I'm open
> to any suggestions.

Right, this is the good thing of your approach. I can't see a better 
solution if the system limits.h doesn't always define PATH_MAX. So:

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:47:10 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:47:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119916.226725 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc58L-0000oV-Bz; Thu, 29 Apr 2021 11:47:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119916.226725; Thu, 29 Apr 2021 11:47:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc58L-0000oO-7n; Thu, 29 Apr 2021 11:47:05 +0000
Received: by outflank-mailman (input) for mailman id 119916;
 Thu, 29 Apr 2021 11:47: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 1lc58J-0000oG-Jr; Thu, 29 Apr 2021 11:47: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 1lc58J-0003Nv-EN; Thu, 29 Apr 2021 11:47: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 1lc58J-0005B6-5t; Thu, 29 Apr 2021 11:47:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lc58J-0004ju-5P; Thu, 29 Apr 2021 11:47: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=dOAUToqtEVnTEsrki+r+mvvTBEIqsDiL9hvU3E6UaoU=; b=ERFi+3hHFUI+CMGAwcP0B/1+ue
	pl9dEN+1hb9F1olUUhH40aTHVn0I0Y6Sr907U1f7p8ah68j6DwdlWqDvIQDoeGY+CdN8mX6fFJN57
	t7MJqKQqdDm2KfLMS9S5tXS8O8n6QXDpI9bJbJgde4BVUL0Qdaf+QI+5zXWBEUa48JLE=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161508-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161508: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 11:47:03 +0000

flight 161508 xen-4.12-testing real [real]
flight 161521 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161508/
http://logs.test-lab.xenproject.org/osstest/logs/161521/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 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-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-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-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   71 days
Failing since        160128  2021-03-18 14:36:18 Z   41 days   55 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   40 days   53 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:48:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:48:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119921.226740 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc59H-0000v9-PL; Thu, 29 Apr 2021 11:48:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119921.226740; Thu, 29 Apr 2021 11:48: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 1lc59H-0000v2-Kh; Thu, 29 Apr 2021 11:48:03 +0000
Received: by outflank-mailman (input) for mailman id 119921;
 Thu, 29 Apr 2021 11:48:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc59F-0000uu-Q5
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:48:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e63c8a20-dab0-46ba-a9ce-c488cd60c323;
 Thu, 29 Apr 2021 11:48:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id F1000AF8A;
 Thu, 29 Apr 2021 11: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: e63c8a20-dab0-46ba-a9ce-c488cd60c323
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619696880; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=EXLsYN96hM0C4264e2h1fST5VV7WfoE/9uYTOFO3urk=;
	b=LYU37jyiTn/BHvsztU1yXichoY0uIxQGhOspN9KXkeE/W27WFXucx7sc11I6L/Dv5aXP4r
	jRY3IwNpyEsphXkYo17nmpFG9luVJYA1eAasN1UE3iAKFaz8BjVbZa6gqLcwYvkU50RG0g
	4nkj05knGUWIEfTDUCGIoOHW5rgSfvg=
Subject: Re: [PATCH v3 2/3] xen/pci: Refactor PCI MSI intercept related code
To: Rahul Singh <Rahul.Singh@arm.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.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>,
 Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
 Daniel De Graaf <dgdegra@tycho.nsa.gov>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <480947d549c46270fccc4c6d83ae8beca3c0fce6.1619453100.git.rahul.singh@arm.com>
 <69e0f583-3c61-afe9-0710-6531f99e8a2e@suse.com>
 <636D798B-3635-4F3A-ABF0-ECA42695352B@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7db06025-374e-e431-1ad6-3710ef99d62d@suse.com>
Date: Thu, 29 Apr 2021 13:47:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <636D798B-3635-4F3A-ABF0-ECA42695352B@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 29.04.2021 13:31, Rahul Singh wrote:
>> On 28 Apr 2021, at 3:06 pm, Jan Beulich <jbeulich@suse.com> wrote:
>> On 26.04.2021 18:21, Rahul Singh wrote:
>>> --- a/xen/xsm/flask/hooks.c
>>> +++ b/xen/xsm/flask/hooks.c
>>> @@ -21,7 +21,7 @@
>>> #include <xen/guest_access.h>
>>> #include <xen/xenoprof.h>
>>> #include <xen/iommu.h>
>>> -#ifdef CONFIG_HAS_PCI
>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>> #include <asm/msi.h>
>>> #endif
>>> #include <public/xen.h>
>>> @@ -114,7 +114,7 @@ static int get_irq_sid(int irq, u32 *sid, struct avc_audit_data *ad)
>>>         }
>>>         return security_irq_sid(irq, sid);
>>>     }
>>> -#ifdef CONFIG_HAS_PCI
>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>>     {
>>>         struct irq_desc *desc = irq_to_desc(irq);
>>>         if ( desc->msi_desc && desc->msi_desc->dev ) {
>>> @@ -874,7 +874,7 @@ static int flask_map_domain_pirq (struct domain *d)
>>> static int flask_map_domain_msi (struct domain *d, int irq, const void *data,
>>>                                  u32 *sid, struct avc_audit_data *ad)
>>> {
>>> -#ifdef CONFIG_HAS_PCI
>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>>     const struct msi_info *msi = data;
>>>     u32 machine_bdf = (msi->seg << 16) | (msi->bus << 8) | msi->devfn;
>>>
>>> @@ -940,7 +940,7 @@ static int flask_unmap_domain_pirq (struct domain *d)
>>> static int flask_unmap_domain_msi (struct domain *d, int irq, const void *data,
>>>                                    u32 *sid, struct avc_audit_data *ad)
>>> {
>>> -#ifdef CONFIG_HAS_PCI
>>> +#ifdef CONFIG_PCI_MSI_INTERCEPT
>>>     const struct pci_dev *pdev = data;
>>>     u32 machine_bdf = (pdev->seg << 16) | (pdev->bus << 8) | pdev->devfn;
>>>
>>
>> Is all of this really related to MSI interception? Iirc the code here
>> has been around for much longer, and hence is more related to MSI
>> support in Xen in general (as required for PV guests in particular).
> 
> Yes I agree this code is not related to MSI interception but I decide to move the code 
> under CONFIG_PCI_MSI_INTERCEPT flag to gate the code for ARM as to avoid an 
> extra flag. We can modify this code once we have more data how MSI will be 
> supported for other architecture.  

In any event the change belongs into the other patch. My objection
there then still holds, but if I'm to be outvoted there, so be it.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:55:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:55:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119930.226752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc5GZ-0001sC-MK; Thu, 29 Apr 2021 11:55:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119930.226752; Thu, 29 Apr 2021 11:55:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc5GZ-0001s5-IL; Thu, 29 Apr 2021 11:55:35 +0000
Received: by outflank-mailman (input) for mailman id 119930;
 Thu, 29 Apr 2021 11:55: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 1lc5GY-0001s0-5g
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:55: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 1lc5GY-0003VT-0M; Thu, 29 Apr 2021 11:55:34 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lc5GX-00034d-O7; Thu, 29 Apr 2021 11: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=6uim1+IRw/02nA1d4ujSW+6FKnUnu1DbHh1PJtrZPJ0=; b=T1YhCNNAz/yIpqwjSd8zrpt4Sz
	wrR7QiBNR+dpoROVfh2NPzSke48Mh+sQaypyWOIfaudVd18JKtFOYKvV3wgDaQ/YU6lsergy5DRki
	HSX9xxFnwL1BBXpiJHi45DWX2r0YPxnIBN5fQIOzM/mwRLWgVlM1GBLey+of9dIwA+uQ=;
Subject: Re: [PATCH v3] evtchn/fifo: don't enforce higher than necessary
 alignment
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <George.Dunlap@eu.citrix.com>,
 Ian Jackson <ian.jackson@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <2a08aa31-fdbf-89ee-cd49-813f818b709a@suse.com>
 <e6ce03a5-cfec-42ea-91c4-b51849e2f299@suse.com>
 <69766ecb-d234-eebb-9b31-1533389a502e@xen.org>
 <0377e61a-3813-0a9e-f724-418383c01050@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <04ef688f-1eb4-c17f-02f0-2cb7e5cb5c68@xen.org>
Date: Thu, 29 Apr 2021 12:55:31 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <0377e61a-3813-0a9e-f724-418383c01050@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 22/04/2021 10:19, Jan Beulich wrote:
> On 21.04.2021 21:52, Julien Grall wrote:
>> Hi,
>>
>> On 21/04/2021 15:36, Jan Beulich wrote:
>>> Neither the code nor the original commit provide any justification for
>>> the need to 8-byte align the struct in all cases. Enforce just as much
>>> alignment as the structure actually needs - 4 bytes - by using alignof()
>>> instead of a literal number.
>>
>> I had another fresh look today at this patch. The 32-bit padding is
>> right after the field 'ready'.
>>
>> I can't for sure tell how the second half is going to ever be used and how.
>>
>> However, one possibility would be to extend the field 'ready' to 64-bit.
>> With the current code, we could easily make a single 64-bit access
>> without having to know whether the guest is able to interpret the top half.
> 
> I don't think extending field sizes is generally to be considered ABI-
> compatible. I also don't think we can re-use the field at all, as I
> couldn't find any checking of it being zero (input) or it getting set
> to zero (output). 

That's would be fine so long we have a flag to control it. We can still 
write unconditionally because a guest can't rely on the pad...

> struct evtchn_init_control, which in principle could
> be a way to convey respective controlling flags, similarly has no room
> for extension, as its _pad[] also doesn't look to get checked anywhere.
Right, we would need to have a different way to convey. Yet, I am still 
unconvinced of the benefits change offer in this patch.

I am not going to Nack. So another maintainer in "THE REST" can express 
support for your patch and ack it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 11:59:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 11:59:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119936.226764 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc5Ka-000214-7M; Thu, 29 Apr 2021 11:59:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119936.226764; Thu, 29 Apr 2021 11:59:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc5Ka-00020x-3s; Thu, 29 Apr 2021 11:59:44 +0000
Received: by outflank-mailman (input) for mailman id 119936;
 Thu, 29 Apr 2021 11:59:43 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sKbL=J2=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lc5KZ-00020s-1A
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 11:59:43 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown
 [40.107.21.40]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8cd8d075-3415-4656-900f-301450f60256;
 Thu, 29 Apr 2021 11:59:40 +0000 (UTC)
Received: from MR1P264CA0026.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:2f::13)
 by AS8PR08MB6006.eurprd08.prod.outlook.com (2603:10a6:20b:29a::24) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Thu, 29 Apr
 2021 11:59:37 +0000
Received: from VE1EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:501:2f:cafe::9f) by MR1P264CA0026.outlook.office365.com
 (2603:10a6:501:2f::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend
 Transport; Thu, 29 Apr 2021 11:59:37 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VE1EUR03FT016.mail.protection.outlook.com (10.152.18.115) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 11:59:37 +0000
Received: ("Tessian outbound 13cdc29c30b8:v91");
 Thu, 29 Apr 2021 11:59:36 +0000
Received: from 35ac60e5a93c.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 28FA03B7-E263-41E9-95E4-24F821F0593F.1; 
 Thu, 29 Apr 2021 11:59:06 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 35ac60e5a93c.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 29 Apr 2021 11:59:06 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com (2603:10a6:20b:39e::10)
 by AM6PR08MB4708.eurprd08.prod.outlook.com (2603:10a6:20b:ce::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.25; Thu, 29 Apr
 2021 11:59:04 +0000
Received: from AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50]) by AS8PR08MB6919.eurprd08.prod.outlook.com
 ([fe80::856e:d103:212c:8f50%4]) with mapi id 15.20.4065.027; Thu, 29 Apr 2021
 11: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: 8cd8d075-3415-4656-900f-301450f60256
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=s2khhl9pdasRffxjkbVK8Pm3ROh/+0CR90sZoRfSWaI=;
 b=V/a5qdiKUS3x0oww4N5ZqLm2rJ/LhQuQJulmQficGIYLXI+/mhQDlGxYIJK+UjIftKvOcMC3ODNTsPgk5b4wlxZpta+jD5x91qCBdw1b54nAyfJAlFjrc/suNK3FdMcXHoa/g44iOn/YNV7kPEywa86AmbUUDnraMf3cFaZiHG0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: 4a8b3ef51c1fc583
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=odgsXFju7T/hhNGSUvC7DJf/Jpmu4KizK7j9u1/ieYMxiymJvNg7Vt8+2at7yQZe7A9caftsQbOGR9a2Ex3dP0QQ6a2qjAEqHwtvdGubn8TILMyKVRYGLsU7BG11gl7hbfiypUu3cd1i+kfw9VSHBAusLMO+x2Wv+kqu89gvmQdS7DzmaxV8AlJzPQ+6WqD3siFsmhRvhpeza3VYuU1g5n9W9xi9SM/MHWXwIZDEMdSiqaHEVbBgJzrTdXrMlvta5KQoqUKT74Y1vpmzMEMdCfNOelxERSfc0QwzWjECr3pSxmc1FonIGbPxgBNmU/b0cG/HROFr9SFv78rmOBYOeQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=s2khhl9pdasRffxjkbVK8Pm3ROh/+0CR90sZoRfSWaI=;
 b=fABBi3vLAYjaV34FbPa4YEdLE/PK+rlhu2B/b4rvjJq6eXeYK3XseyiKyiRw1IUkgQNlO6gy0AuCzNd5clRn7DzGb6eEWquZgz6eetWUJHGONtPGnE6GOV8769TlKV/s9nFZG0ohT3SvPDMjK0oJR1id3WUqUbWlDSBQqJxMRzdR2m8bl8SBW8ksJwGLmtDlejnliBzpFvf2TrOQPNDUJ89L0hiUbqsfUq9E5eEw4H5W8KUShAGg1GGgIHirTdvGnPZEnHzV9Tv3ErUH2SPraBqjxmal8pM3usoZafY8Ss/X3K4qGbwtR/PwYQ0epdBVRCN6yTBJSIBMDTVCLO5x5Q==
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=s2khhl9pdasRffxjkbVK8Pm3ROh/+0CR90sZoRfSWaI=;
 b=V/a5qdiKUS3x0oww4N5ZqLm2rJ/LhQuQJulmQficGIYLXI+/mhQDlGxYIJK+UjIftKvOcMC3ODNTsPgk5b4wlxZpta+jD5x91qCBdw1b54nAyfJAlFjrc/suNK3FdMcXHoa/g44iOn/YNV7kPEywa86AmbUUDnraMf3cFaZiHG0=
From: Rahul Singh <Rahul.Singh@arm.com>
To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
CC: xen-devel <xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@suse.com>, Paul Durrant
	<paul@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>, Julien Grall
	<julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>
Subject: Re: [PATCH v3 3/3] xen/pci: Refactor MSI code that implements MSI
 functionality within XEN
Thread-Topic: [PATCH v3 3/3] xen/pci: Refactor MSI code that implements MSI
 functionality within XEN
Thread-Index: AQHXOrh4cv5EbJqd3U+gSr1g4kEjParJx4aAgAGhIYA=
Date: Thu, 29 Apr 2021 11:59:04 +0000
Message-ID: <11500C08-219E-4638-AD4A-9DADD20910ED@arm.com>
References: <cover.1619453100.git.rahul.singh@arm.com>
 <7b6651f10922571a10685dc7652fbce03b6b6e51.1619453100.git.rahul.singh@arm.com>
 <YIlBnQO+iuFFx2XO@Air-de-Roger>
In-Reply-To: <YIlBnQO+iuFFx2XO@Air-de-Roger>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
x-originating-ip: [80.1.41.211]
x-ms-publictraffictype: Email
X-MS-Office365-Filtering-Correlation-Id: 6f827aa0-beb4-4bfe-7fed-08d90b064325
x-ms-traffictypediagnostic: AM6PR08MB4708:|AS8PR08MB6006:
x-ms-exchange-transport-forked: True
X-Microsoft-Antispam-PRVS:
	<AS8PR08MB6006F28001D184C09B309288FC5F9@AS8PR08MB6006.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
nodisclaimer: true
x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 RHEsdkOfiHhumD7WyHsQnsp+iOEtuMlNe9q5akafmRtH/fJ5YvYX4qtDwQOP0DgnGynQv+iNim7kg/B/f9nzak/Ha94a7rvPFugj8KdqW05OhMc0Vm+6ffiVfP4g6hvvMHBGLl7siAs3XSLTuRN3a5qeKyO0SRcYiL157dVLQJrq+gBEjor5+KbNH9Uu1hlG4jeKSm6/S3vcuCg7UdwbYmWWLYRzoL7cF7P+Wyv/hBn7JCPmQn3+WEUOEdiqFtD+qutNEaTsAj8HygEE77efjYxHFc6uhgQZqWbrIJ+NkDrDZvRsOfsUT4WjtRMqClWvUl2Yio+JUa0y0ivzEOjIpum5vXotj/n5YK1HAQACIgVIy2DzOhVCZNRISJHYzqWndRuoTvPleT/ze1aJj4kDAv77ZwpR08xf2PXuS7Doqo6+HaDt1/r5Q8cFvJLKPfzCfD5V5OL+dM8Y3Pc7GUCP0t1gdO2VfVWoSiIZK/umGzdrxG1sHcvN7NULsMBFU4lC2wGcsAuhA5gBlrv6IOlUlaDYh6wVeebetqLJDIM8ogqTjqCWFVkS+9Jkytody6PAswqQ3/GWmBen++sAW+HtnhaiPhWWoqR7YbvYIM+GuP8zeYXXwb0Dq3EaF0OTd4shOt+DcKh/La2xjEHOrc+/ZKH6qAjIx5+9fig5g+iOSc0=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6919.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39860400002)(376002)(346002)(366004)(136003)(71200400001)(2616005)(83380400001)(8936002)(54906003)(2906002)(4326008)(36756003)(6486002)(6512007)(6506007)(38100700002)(53546011)(6916009)(7416002)(33656002)(186003)(66946007)(5660300002)(86362001)(478600001)(64756008)(91956017)(316002)(66446008)(66556008)(66476007)(26005)(76116006)(122000001)(8676002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata:
 =?utf-8?B?ZUtMejlyaVRUSVpMNEJ4RDk4QkkzSk9MWnAwV2s3cm9LS2pFaEE0VE93S1pR?=
 =?utf-8?B?YnFCVWREazNtdm9BaWNubWYveVFyTm5kQk9uRW9hdVp1cUZQSjhwYlBieGJH?=
 =?utf-8?B?RWYydWUzTzNKSXQwdWMvWEZxUmtuSTBIdzZWRWZqMSt0bm8yMUFPVHN1M3hB?=
 =?utf-8?B?OEVOUkI4b24ydFFiMkFmS29nVForenJQTmtIWS8zT2VqSVBkN2Yrei9DY290?=
 =?utf-8?B?UjVrdVRsOU00UHl1OFhnMHQyUHlGMEJER3hMQW1KNnpzbGJMWXAwWFlkbEwv?=
 =?utf-8?B?cGc1ZFpxazkvU1RXeXcyUWR6L3F5cEhLYk1Hbkt6c210aWhKcVNFd1NEdmF1?=
 =?utf-8?B?ZzIySWgxc1I5ck12UEJzU1prdkhQSUtoVzRHOW5hZnViRkZHaGlwNkRPK1pC?=
 =?utf-8?B?RDFTMzJORWNuUVlTNmFnbmZMckxSMUVHc29hV1VXcVdIbjBiRnpmYzJxM2Zz?=
 =?utf-8?B?cS9ZZDZDNUMxYnJMVFJSRjd0WXA5Sk9QRUtOU1B0ZHBPdGZyTWNSKzlKQ3ND?=
 =?utf-8?B?UTlOazMyRlpERUZXSTNHcVpVN2s2MkN5bTR6a2VPYWNGUW0xKy9PZmtvSkVh?=
 =?utf-8?B?N3pyaVZHRkpFU3BzN2lRb2phNzZ3VDBsSVZMOXBiOXExZWZLYWpLYjBTNVRm?=
 =?utf-8?B?OCtOejV5VktlbnlyaWExWEcxVWVhbjJHNHFXeWQ4cnRMOHNQTHZPVlF1Q2NT?=
 =?utf-8?B?RFQ4RXdxdld1RHplRGZZYmg2RTFVTWcrK3hjd3ZURGtiT0drODRDUUpNNWlv?=
 =?utf-8?B?b256S0cvdUJrNVZIMlFsYXRVSjh2ZkhQT1FjSG5hQVdIbkVjY01SUTVzSHND?=
 =?utf-8?B?TTVQUHk2QXlUNVVIOGtDV2JUWVdTV1A5MGZHMGtFcFhCRFUwOXFJSHU2SWtL?=
 =?utf-8?B?ajFQQXlaQmFFU0JvZ2cveFlUcjBWeWZBVjNjZkJiVWl3SnJLQVFDWXB3QS90?=
 =?utf-8?B?UE5KZU5UcytxRmZSSXpFSG40d0c5dGptcFJsRWM4ZDMzVlI2MEdXYlRGcTdM?=
 =?utf-8?B?SllaV01Nd2FMYStjQ0V5VU9uSFM4VXhQeTl6OVRwTkpVb2hNUzMrRjJzc2Mv?=
 =?utf-8?B?WFBJaG5zZXZXY0N6M202VW1icE1CSDNmVlZXVnNyeGhLcCtWM1lqU0Fzam96?=
 =?utf-8?B?a3Z0ZTFFWnEvSWRUM0tnd2tZaDdMMklOR3dEYmJUczJlRXNQaDlBcFBDOTZP?=
 =?utf-8?B?R3FtRHRVSURDaXZ3dkxsQVZ3a1VJRVFrS05BSzlQZXA5Mk1oWWhmTkwvejlY?=
 =?utf-8?B?eU1GN2N3RFNlL3VMU05kWndhb3pJbTAxRHI0SlUycDdsTUhzbGp5ZVR3dXJX?=
 =?utf-8?B?KzErL0RYWG1iUWQvMERZQkR5MzlISDhHbHBwNytEajVSRHIvR1lCT0luQ29I?=
 =?utf-8?B?TTVYK3ZYMWppV2VMRDUwWm9yOTNXQ0xVaWF1S29EeDU0Ym5nRXFZcm9oQ1do?=
 =?utf-8?B?bGZMOFRzMzBFSHlLeTNUQnVsa3RPMjdRQlVMSTFmVU93UDl3SnExMmUxSTh5?=
 =?utf-8?B?bU5Kb1NDWnV6M0VKTm5uQ1RDK2tOUU1icDZBUGl4R21Ud0ZXKzc3MTdrUS8r?=
 =?utf-8?B?c1Q0czRNbkl4Y0NLRHRHdWFxdnMzOEpoaVNBMHFmVWZHdjl3cFVSMlBRQW9o?=
 =?utf-8?B?SEpvNHIyTE5XNWM2U1VQNWhZSktMTkxSUlhGeW5HamQvUzcwNVBWNVhvRjFF?=
 =?utf-8?B?MFNUYzA0VGpMMDFETnhoVHg2dUV5MU95OExZNUlMcmZuT0QxVzBTU0tSWFhE?=
 =?utf-8?Q?GjTrKsBotzwrfLfhBwLuQo4cYOKLk1EvNY1ZOza?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <0B330B871D7D0F4F8A19739780CE9566@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB4708
Original-Authentication-Results: citrix.com; dkim=none (message not signed)
 header.d=none;citrix.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VE1EUR03FT016.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e17da56a-4c93-4ba4-5a38-08d90b062f62
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OKeAG+BqIiMw5+2leahvkgozgVzO5j/dL09R53NZFjvnopzD0BtbUP7RjiVT3zkulflCrSm+EItW5+yAywRNqPV8vlPNsXUoUjTPsQaq+ZDN8dmdeRGjI28kSiUbJyIBK0wuM3VSZucI/XpJVB/Cn3PdlswExwEszAnZSA+2V0IrXROB/3Ni9q4oGnZhByI47k1jV1zvU6sV5VHlTmrVauKCMaOjCYiRIfHXUloSOUyhJ49k2uDeDgRcVN48L2EfAw4SjFMVYQQ9s5feGPpkM7mildYUZbSH82qmI8twyYtmwFrsKDUqyc4U0RRT5xqEZ2ASHr7cY9vOQRs+XCo2wKhp9yHdGZPuiatT3bp5l9cz1uUALk2tlxC8QqiJyxHKCi42OjI2pooBj54ZuRCymhzssnknXb2NKbHfobJ7a1Ok/flwTS+PRZUm56kcgLuGArpyWylI4cUMMiePGAGMyVqNulZy4DmLC44cYMu0jqrA8395Dbc+gaT7BbCLcpdhRTde6PoZhwqGZBevB6zCadDQO1Gdyg2q6udg3MQ4/iQHO6kT+gTb2cYDdaJEx9bfpLJGuE+3z7zaVLezzhBj8c3L7uys4SFHkLsK/SbxMuqa72sEN9BJzoTGPlyfWwJX33J4TkJYAECOgVMlhpfiAhtIJg6RAwl/slTLTFGGcUQOZTaCEmA1sU8s12gfQzak
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:(4636009)(39860400002)(376002)(346002)(396003)(136003)(36840700001)(46966006)(36756003)(36860700001)(83380400001)(54906003)(86362001)(478600001)(2906002)(4326008)(33656002)(53546011)(336012)(6862004)(186003)(6512007)(316002)(5660300002)(8676002)(8936002)(70206006)(70586007)(6506007)(6486002)(356005)(82740400003)(26005)(34020700004)(2616005)(47076005)(81166007)(82310400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 11:59:37.2186
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6f827aa0-beb4-4bfe-7fed-08d90b064325
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:
	VE1EUR03FT016.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6006

SGkgUm9nZXIsDQoNCj4gT24gMjggQXByIDIwMjEsIGF0IDEyOjA2IHBtLCBSb2dlciBQYXUgTW9u
bsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4gd3JvdGU6DQo+IA0KPiBPbiBNb24sIEFwciAyNiwg
MjAyMSBhdCAwNToyMToyN1BNICswMTAwLCBSYWh1bCBTaW5naCB3cm90ZToNCj4+IE1TSSBjb2Rl
IHRoYXQgaW1wbGVtZW50cyBNU0kgZnVuY3Rpb25hbGl0eSB0byBzdXBwb3J0IE1TSSB3aXRoaW4g
WEVOIGlzDQo+PiBub3QgdXNhYmxlIG9uIEFSTS4gTW92ZSB0aGUgY29kZSB1bmRlciBDT05GSUdf
UENJX01TSV9JTlRFUkNFUFQgZmxhZyB0bw0KPj4gZ2F0ZSB0aGUgY29kZSBmb3IgQVJNLg0KPj4g
DQo+PiBDdXJyZW50bHksIHdlIGhhdmUgbm8gaWRlYSBob3cgTVNJIGZ1bmN0aW9uYWxpdHkgd2ls
bCBiZSBzdXBwb3J0ZWQgZm9yDQo+PiBvdGhlciBhcmNoaXRlY3R1cmUgdGhlcmVmb3JlIHdlIGhh
dmUgZGVjaWRlZCB0byBtb3ZlIHRoZSBjb2RlIHVuZGVyDQo+PiBDT05GSUdfUENJX01TSV9JTlRF
UkNFUFQuIFdlIGtub3cgdGhpcyBpcyBub3QgdGhlIHJpZ2h0IGZsYWcgdG8gZ2F0ZSB0aGUNCj4+
IGNvZGUgYnV0IHRvIGF2b2lkIGFuIGV4dHJhIGZsYWcgd2UgZGVjaWRlZCB0byB1c2UgdGhpcy4N
Cj4+IA0KPj4gTm8gZnVuY3Rpb25hbCBjaGFuZ2UgaW50ZW5kZWQuDQo+PiANCj4+IFNpZ25lZC1v
ZmYtYnk6IFJhaHVsIFNpbmdoIDxyYWh1bC5zaW5naEBhcm0uY29tPg0KPiANCj4gSSB0aGluayB0
aGlzIGlzIGZpbmUsIGFzIHdlIGRvbid0IHJlYWxseSB3YW50IHRvIGFkZCBhbm90aGVyIEtjb25m
aWcNCj4gb3B0aW9uIChpZTogQ09ORklHX1BDSV9NU0kpIGZvciBqdXN0IHRoZSBub24gZXhwbGlj
aXRseSBpbnRlcmNlcHQgTVNJDQo+IGNvZGUuDQo+IA0KPiBSZXZpZXdlZC1ieTogUm9nZXIgUGF1
IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+DQo+IA0KDQpUaGFua3MuDQoNCj4gU29tZSBu
aXRzIGJlbG93Li4uDQo+IA0KPj4gLS0tDQo+PiBDaGFuZ2VzIHNpbmNlIHYyOg0KPj4gLSBUaGlz
IHBhdGNoIGlzIGFkZGVkIGluIHRoaXMgdmVyc2lvbi4NCj4+IC0tLQ0KPj4geGVuL2RyaXZlcnMv
cGFzc3Rocm91Z2gvbXNpLWludGVyY2VwdC5jIHwgNDEgKysrKysrKysrKysrKysrKysrKysrKysr
Kw0KPj4geGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMgICAgICAgICAgIHwgMzQgKysrKy0t
LS0tLS0tLS0tLS0tLS0NCj4+IHhlbi9pbmNsdWRlL3hlbi9tc2ktaW50ZXJjZXB0LmggICAgICAg
ICB8ICA3ICsrKysrDQo+PiB4ZW4vaW5jbHVkZS94ZW4vcGNpLmggICAgICAgICAgICAgICAgICAg
fCAxMSArKysrLS0tDQo+PiA0IGZpbGVzIGNoYW5nZWQsIDYxIGluc2VydGlvbnMoKyksIDMyIGRl
bGV0aW9ucygtKQ0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv
bXNpLWludGVyY2VwdC5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvbXNpLWludGVyY2VwdC5j
DQo+PiBpbmRleCAxZWRhZTZkNGU4Li4zM2FiNzE1MTRkIDEwMDY0NA0KPj4gLS0tIGEveGVuL2Ry
aXZlcnMvcGFzc3Rocm91Z2gvbXNpLWludGVyY2VwdC5jDQo+PiArKysgYi94ZW4vZHJpdmVycy9w
YXNzdGhyb3VnaC9tc2ktaW50ZXJjZXB0LmMNCj4+IEBAIC0xOSw2ICsxOSw0NyBAQA0KPj4gI2lu
Y2x1ZGUgPGFzbS9tc2kuaD4NCj4+ICNpbmNsdWRlIDxhc20vaHZtL2lvLmg+DQo+PiANCj4+ICtp
bnQgcGRldl9tc2lfaW5pdChzdHJ1Y3QgcGNpX2RldiAqcGRldikNCj4+ICt7DQo+PiArICAgIHVu
c2lnbmVkIGludCBwb3M7DQo+PiArDQo+PiArICAgIElOSVRfTElTVF9IRUFEKCZwZGV2LT5tc2lf
bGlzdCk7DQo+PiArDQo+PiArICAgIHBvcyA9IHBjaV9maW5kX2NhcF9vZmZzZXQocGRldi0+c2Vn
LCBwZGV2LT5idXMsIFBDSV9TTE9UKHBkZXYtPmRldmZuKSwNCj4+ICsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBQQ0lfRlVOQyhwZGV2LT5kZXZmbiksIFBDSV9DQVBfSURfTVNJKTsNCj4+
ICsgICAgaWYgKCBwb3MgKQ0KPj4gKyAgICB7DQo+PiArICAgICAgICB1aW50MTZfdCBjdHJsID0g
cGNpX2NvbmZfcmVhZDE2KHBkZXYtPnNiZGYsIG1zaV9jb250cm9sX3JlZyhwb3MpKTsNCj4+ICsN
Cj4+ICsgICAgICAgIHBkZXYtPm1zaV9tYXh2ZWMgPSBtdWx0aV9tc2lfY2FwYWJsZShjdHJsKTsN
Cj4+ICsgICAgfQ0KPj4gKw0KPj4gKyAgICBwb3MgPSBwY2lfZmluZF9jYXBfb2Zmc2V0KHBkZXYt
PnNlZywgcGRldi0+YnVzLCBQQ0lfU0xPVChwZGV2LT5kZXZmbiksDQo+PiArICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgUENJX0ZVTkMocGRldi0+ZGV2Zm4pLCBQQ0lfQ0FQX0lEX01TSVgp
Ow0KPj4gKyAgICBpZiAoIHBvcyApDQo+PiArICAgIHsNCj4+ICsgICAgICAgIHN0cnVjdCBhcmNo
X21zaXggKm1zaXggPSB4emFsbG9jKHN0cnVjdCBhcmNoX21zaXgpOw0KPj4gKyAgICAgICAgdWlu
dDE2X3QgY3RybDsNCj4+ICsNCj4+ICsgICAgICAgIGlmICggIW1zaXggKQ0KPj4gKyAgICAgICAg
ICAgIHJldHVybiAtRU5PTUVNOw0KPj4gKw0KPj4gKyAgICAgICAgc3Bpbl9sb2NrX2luaXQoJm1z
aXgtPnRhYmxlX2xvY2spOw0KPj4gKw0KPj4gKyAgICAgICAgY3RybCA9IHBjaV9jb25mX3JlYWQx
NihwZGV2LT5zYmRmLCBtc2l4X2NvbnRyb2xfcmVnKHBvcykpOw0KPj4gKyAgICAgICAgbXNpeC0+
bnJfZW50cmllcyA9IG1zaXhfdGFibGVfc2l6ZShjdHJsKTsNCj4+ICsNCj4+ICsgICAgICAgIHBk
ZXYtPm1zaXggPSBtc2l4Ow0KPj4gKyAgICB9DQo+PiArDQo+PiArICAgIHJldHVybiAwOw0KPj4g
K30NCj4+ICsNCj4+ICt2b2lkIHBkZXZfbXNpX2RlaW5pdChzdHJ1Y3QgcGNpX2RldiAqcGRldikN
Cj4+ICt7DQo+PiArICAgIFhGUkVFKHBkZXYtPm1zaXgpOw0KPj4gK30NCj4+ICsNCj4+IGludCBw
ZGV2X21zaXhfYXNzaWduKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0K
Pj4gew0KPj4gICAgIGludCByYzsNCj4+IGRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhy
b3VnaC9wY2kuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jDQo+PiBpbmRleCAyOThi
ZTIxYjViLi5iMWUzYzcxMWFkIDEwMDY0NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvcGNpLmMNCj4+ICsrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jDQo+PiBAQCAt
MzE0LDYgKzMxNCw3IEBAIHN0YXRpYyBzdHJ1Y3QgcGNpX2RldiAqYWxsb2NfcGRldihzdHJ1Y3Qg
cGNpX3NlZyAqcHNlZywgdTggYnVzLCB1OCBkZXZmbikNCj4+IHsNCj4+ICAgICBzdHJ1Y3QgcGNp
X2RldiAqcGRldjsNCj4+ICAgICB1bnNpZ25lZCBpbnQgcG9zOw0KPj4gKyAgICBpbnQgcmM7DQo+
PiANCj4+ICAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5ICggcGRldiwgJnBzZWctPmFsbGRldnNfbGlz
dCwgYWxsZGV2c19saXN0ICkNCj4+ICAgICAgICAgaWYgKCBwZGV2LT5idXMgPT0gYnVzICYmIHBk
ZXYtPmRldmZuID09IGRldmZuICkNCj4+IEBAIC0zMjcsMzUgKzMyOCwxMiBAQCBzdGF0aWMgc3Ry
dWN0IHBjaV9kZXYgKmFsbG9jX3BkZXYoc3RydWN0IHBjaV9zZWcgKnBzZWcsIHU4IGJ1cywgdTgg
ZGV2Zm4pDQo+PiAgICAgKigodTgqKSAmcGRldi0+YnVzKSA9IGJ1czsNCj4+ICAgICAqKCh1OCop
ICZwZGV2LT5kZXZmbikgPSBkZXZmbjsNCj4+ICAgICBwZGV2LT5kb21haW4gPSBOVUxMOw0KPj4g
LSAgICBJTklUX0xJU1RfSEVBRCgmcGRldi0+bXNpX2xpc3QpOw0KPj4gLQ0KPj4gLSAgICBwb3Mg
PSBwY2lfZmluZF9jYXBfb2Zmc2V0KHBzZWctPm5yLCBidXMsIFBDSV9TTE9UKGRldmZuKSwgUENJ
X0ZVTkMoZGV2Zm4pLA0KPj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBDSV9DQVBf
SURfTVNJKTsNCj4+IC0gICAgaWYgKCBwb3MgKQ0KPj4gLSAgICB7DQo+PiAtICAgICAgICB1aW50
MTZfdCBjdHJsID0gcGNpX2NvbmZfcmVhZDE2KHBkZXYtPnNiZGYsIG1zaV9jb250cm9sX3JlZyhw
b3MpKTsNCj4+IA0KPj4gLSAgICAgICAgcGRldi0+bXNpX21heHZlYyA9IG11bHRpX21zaV9jYXBh
YmxlKGN0cmwpOw0KPj4gLSAgICB9DQo+PiAtDQo+PiAtICAgIHBvcyA9IHBjaV9maW5kX2NhcF9v
ZmZzZXQocHNlZy0+bnIsIGJ1cywgUENJX1NMT1QoZGV2Zm4pLCBQQ0lfRlVOQyhkZXZmbiksDQo+
PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUENJX0NBUF9JRF9NU0lYKTsNCj4+IC0g
ICAgaWYgKCBwb3MgKQ0KPj4gKyAgICByYyA9IHBkZXZfbXNpX2luaXQocGRldik7DQo+PiArICAg
IGlmICggcmMgKQ0KPj4gICAgIHsNCj4+IC0gICAgICAgIHN0cnVjdCBhcmNoX21zaXggKm1zaXgg
PSB4emFsbG9jKHN0cnVjdCBhcmNoX21zaXgpOw0KPj4gLSAgICAgICAgdWludDE2X3QgY3RybDsN
Cj4+IC0NCj4+IC0gICAgICAgIGlmICggIW1zaXggKQ0KPj4gLSAgICAgICAgew0KPj4gLSAgICAg
ICAgICAgIHhmcmVlKHBkZXYpOw0KPj4gLSAgICAgICAgICAgIHJldHVybiBOVUxMOw0KPj4gLSAg
ICAgICAgfQ0KPj4gLSAgICAgICAgc3Bpbl9sb2NrX2luaXQoJm1zaXgtPnRhYmxlX2xvY2spOw0K
Pj4gLQ0KPj4gLSAgICAgICAgY3RybCA9IHBjaV9jb25mX3JlYWQxNihwZGV2LT5zYmRmLCBtc2l4
X2NvbnRyb2xfcmVnKHBvcykpOw0KPj4gLSAgICAgICAgbXNpeC0+bnJfZW50cmllcyA9IG1zaXhf
dGFibGVfc2l6ZShjdHJsKTsNCj4+IC0NCj4+IC0gICAgICAgIHBkZXYtPm1zaXggPSBtc2l4Ow0K
Pj4gKyAgICAgICAgWEZSRUUocGRldik7DQo+IA0KPiBUaGVyZSdzIG5vIG5lZWQgdG8gdXNlIFhG
UkVFIGhlcmUsIHBsYWluIHhmcmVlIGlzIGZpbmUgc2luY2UgcGRldiBpcyBhDQo+IGxvY2FsIHZh
cmlhYmxlIHNvIG1ha2VzIG5vIHNlbnNlIHRvIGFzc2lnbiB0byBOVUxMIGJlZm9yZSByZXR1cm5p
bmcuDQoNCk9rLiBJIHdpbGwgY2hhbmdlIGl0IHRvIHhmcmVlIGluIG5leHQgdmVyc2lvbi4NCg0K
PiANCj4+ICsgICAgICAgIHJldHVybiBOVUxMOw0KPj4gICAgIH0NCj4+IA0KPj4gICAgIGxpc3Rf
YWRkKCZwZGV2LT5hbGxkZXZzX2xpc3QsICZwc2VnLT5hbGxkZXZzX2xpc3QpOw0KPj4gQEAgLTQ0
OSw3ICs0MjcsNyBAQCBzdGF0aWMgdm9pZCBmcmVlX3BkZXYoc3RydWN0IHBjaV9zZWcgKnBzZWcs
IHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0KPj4gICAgIH0NCj4+IA0KPj4gICAgIGxpc3RfZGVsKCZw
ZGV2LT5hbGxkZXZzX2xpc3QpOw0KPj4gLSAgICB4ZnJlZShwZGV2LT5tc2l4KTsNCj4+ICsgICAg
cGRldl9tc2lfZGVpbml0KHBkZXYpOw0KPj4gICAgIHhmcmVlKHBkZXYpOw0KPj4gfQ0KPj4gDQo+
PiBkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL21zaS1pbnRlcmNlcHQuaCBiL3hlbi9pbmNs
dWRlL3hlbi9tc2ktaW50ZXJjZXB0LmgNCj4+IGluZGV4IDc3YzEwNWUyODYuLjM4ZmY3YTA5ZTEg
MTAwNjQ0DQo+PiAtLS0gYS94ZW4vaW5jbHVkZS94ZW4vbXNpLWludGVyY2VwdC5oDQo+PiArKysg
Yi94ZW4vaW5jbHVkZS94ZW4vbXNpLWludGVyY2VwdC5oDQo+PiBAQCAtMjEsMTYgKzIxLDIzIEBA
DQo+PiANCj4+ICNpbmNsdWRlIDxhc20vbXNpLmg+DQo+PiANCj4+ICtpbnQgcGRldl9tc2lfaW5p
dChzdHJ1Y3QgcGNpX2RldiAqcGRldik7DQo+PiArdm9pZCBwZGV2X21zaV9kZWluaXQoc3RydWN0
IHBjaV9kZXYgKnBkZXYpOw0KPj4gaW50IHBkZXZfbXNpeF9hc3NpZ24oc3RydWN0IGRvbWFpbiAq
ZCwgc3RydWN0IHBjaV9kZXYgKnBkZXYpOw0KPj4gdm9pZCBwZGV2X2R1bXBfbXNpKGNvbnN0IHN0
cnVjdCBwY2lfZGV2ICpwZGV2KTsNCj4+IA0KPj4gI2Vsc2UgLyogIUNPTkZJR19QQ0lfTVNJX0lO
VEVSQ0VQVCAqLw0KPj4gK3N0YXRpYyBpbmxpbmUgaW50IHBkZXZfbXNpX2luaXQoc3RydWN0IHBj
aV9kZXYgKnBkZXYpDQo+PiArew0KPj4gKyAgICByZXR1cm4gMDsNCj4+ICt9DQo+PiANCj4+IHN0
YXRpYyBpbmxpbmUgaW50IHBkZXZfbXNpeF9hc3NpZ24oc3RydWN0IGRvbWFpbiAqZCwgc3RydWN0
IHBjaV9kZXYgKnBkZXYpDQo+PiB7DQo+PiAgICAgcmV0dXJuIDA7DQo+PiB9DQo+PiANCj4+ICtz
dGF0aWMgaW5saW5lIHZvaWQgcGRldl9tc2lfZGVpbml0KHN0cnVjdCBwY2lfZGV2ICpwZGV2KSB7
fQ0KPj4gc3RhdGljIGlubGluZSB2b2lkIHBkZXZfZHVtcF9tc2koY29uc3Qgc3RydWN0IHBjaV9k
ZXYgKnBkZXYpIHt9DQo+PiBzdGF0aWMgaW5saW5lIHZvaWQgcGNpX2NsZWFudXBfbXNpKHN0cnVj
dCBwY2lfZGV2ICpwZGV2KSB7fQ0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVu
L3BjaS5oIGIveGVuL2luY2x1ZGUveGVuL3BjaS5oDQo+PiBpbmRleCA4ZTNkNGQ5NDU0Li5mNWI1
NzI3MGJlIDEwMDY0NA0KPj4gLS0tIGEveGVuL2luY2x1ZGUveGVuL3BjaS5oDQo+PiArKysgYi94
ZW4vaW5jbHVkZS94ZW4vcGNpLmgNCj4+IEBAIC03OSwxMCArNzksNiBAQCBzdHJ1Y3QgcGNpX2Rl
diB7DQo+PiAgICAgc3RydWN0IGxpc3RfaGVhZCBhbGxkZXZzX2xpc3Q7DQo+PiAgICAgc3RydWN0
IGxpc3RfaGVhZCBkb21haW5fbGlzdDsNCj4+IA0KPj4gLSAgICBzdHJ1Y3QgbGlzdF9oZWFkIG1z
aV9saXN0Ow0KPj4gLQ0KPj4gLSAgICBzdHJ1Y3QgYXJjaF9tc2l4ICptc2l4Ow0KPj4gLQ0KPj4g
ICAgIHN0cnVjdCBkb21haW4gKmRvbWFpbjsNCj4+IA0KPj4gICAgIGNvbnN0IHVuaW9uIHsNCj4+
IEBAIC05NCw3ICs5MCwxNCBAQCBzdHJ1Y3QgcGNpX2RldiB7DQo+PiAgICAgICAgIHBjaV9zYmRm
X3Qgc2JkZjsNCj4+ICAgICB9Ow0KPj4gDQo+PiArI2lmZGVmIENPTkZJR19QQ0lfTVNJX0lOVEVS
Q0VQVA0KPj4gKyAgICBzdHJ1Y3QgbGlzdF9oZWFkIG1zaV9saXN0Ow0KPj4gKw0KPj4gKyAgICBz
dHJ1Y3QgYXJjaF9tc2l4ICptc2l4Ow0KPj4gKw0KPj4gICAgIHVpbnQ4X3QgbXNpX21heHZlYzsN
Cj4+ICsjZW5kaWYNCj4gDQo+IFRoaXMgc2VlbXMgdG8gaW50cm9kdWNlIHNvbWUgcGFkZGluZyBi
ZXR3ZWVuIHRoZSBzYmRmIGFuZCB0aGUgbXNpX2xpc3QNCj4gZmllbGQuIEkgZ3Vlc3MgdGhhdCdz
IGJldHRlciB0aGFuIGhhdmluZyB0d28gZGlmZmVyZW50DQo+IENPTkZJR19QQ0lfTVNJX0lOVEVS
Q0VQVCBndWFyZGVkIHJlZ2lvbnM/DQoNClllcy4gVGhhdOKAmXMgd2h5IEkgbW92ZSBhbGwgdGhl
IGZpZWxkcyByZWxhdGVkIHRvIE1TSSB0byBvbmUgcGxhY2UgdG8gYXZvaWQgdGhlIA0KZXh0cmEg
Q09ORklHX1BDSV9NU0lfSU5URVJDRVBUIGluc3RhbmNlLg0KDQpSZWdhcmRzLA0KUmFodWwNCj4g
DQo+IFRoYW5rcywgUm9nZXIuDQoNCg==


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 12:08:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 12:08:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119945.226775 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc5SV-0002yg-8b; Thu, 29 Apr 2021 12:07:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119945.226775; Thu, 29 Apr 2021 12:07: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 1lc5SV-0002yZ-5d; Thu, 29 Apr 2021 12:07:55 +0000
Received: by outflank-mailman (input) for mailman id 119945;
 Thu, 29 Apr 2021 12:07:54 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=fSb/=J2=aepfle.de=olaf@srs-us1.protection.inumbo.net>)
 id 1lc5SU-0002yU-0J
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 12:07:54 +0000
Received: from mo6-p00-ob.smtp.rzone.de (unknown [2a01:238:400:100::b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2d7c76f4-377e-40d1-a8b1-bd71fa75d0e7;
 Thu, 29 Apr 2021 12:07:52 +0000 (UTC)
Received: from sender by smtp.strato.de (RZmta 47.25.2 AUTH)
 with ESMTPSA id D0155dx3TC7kACq
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Thu, 29 Apr 2021 14:07: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: 2d7c76f4-377e-40d1-a8b1-bd71fa75d0e7
ARC-Seal: i=1; a=rsa-sha256; t=1619698066; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=Ifz75dVG1r/Je4u0EAxdM02I0lsk0gLi3GuyHmbqM0lL5f/rjNW8k6vp07tiw8g9UW
    UVB2nSnVB/SUGLInRI7w5zfdgDToOnzbEESjla59DQ1GHpQ5eGIIsGg4+3KGF3PTY4f+
    4J0CQSBNiGqCoYS+qzk01ll+xIDH+7jYufCICceKyw5Br6aVYdGFssSbJ98GnoX0v1uV
    pr2OZT3Mv6lcMtgSDyltUoOGJ4A1FXqV4+3cj7ULB1t3pPmI5+gLiMyvcUAqeo0LCiUN
    JBYcUO2NGkvPcCJXk1oBu4EsnOrrLLxJ85isOThLAJFAKSLvWcSbwM3sWDqU61fLZ6Gq
    aBfg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1619698066;
    s=strato-dkim-0002; d=strato.com;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=mxbQOROFPZL1+SoZVbdk5iB2hNC3eCQBFDcijtPOp4A=;
    b=ZMBFncACkyHPasJZ2fP2/+TRDzpXNYaElyTAqGDos7e4MikbZVmG3JjUYTuYuuFK1c
    rIaI/ENfhoyEnxlW86Qd9ShTmT22MRDuCKWuWtB5eVyk9MdG2PIuroZFwNVUop89l3yx
    LQSvkW87tv5kVPJaallICXsWxkUD/uMAaiD7Qyy68W+/CDMKp3TA/HtyvoiNWegq0Hac
    dn6Udim6EycKps4Wj4G+6jYGm0sCucl37ga7mU41X0RPK0081NeYNqOc5AHkPQHXKbJW
    TK3rmHCqMjEmkLZGa266L641G2nXAsexmbv/weET0zS6EdpUFxLMZzfBBTTzXN4cEddo
    yyNg==
ARC-Authentication-Results: i=1; strato.com;
    dkim=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1619698066;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=mxbQOROFPZL1+SoZVbdk5iB2hNC3eCQBFDcijtPOp4A=;
    b=E6hkanNkjjSxgMzD4grUtfyCklKMI+4sjhD74ILSchxmo5KBfn4b8y7io7WNPQovBl
    A2hYOW3DxD7Y96pzrLGerGYXR9fcRjNwd8ouSpvLPDuGKH6OYlHEarztvfvZRPz2C34G
    hcE/O8TrGZQI2N8Cve4R5iTj3bV+c7V8UcP6HtW6SIQdpwM4U+VG0tP46LAE0oYQ80jL
    HvhPvkRhfshdS6fqhcSphIxIoxYG8ihMLfotbucJFasH/8MeCfNdGqlmZJUPtu+04j2t
    vPsIPIJOGVDjYWXhVy+eSBoKhrGD7Akb67kemRWcZwy6TqM4HiGJ1q/c/75ArVuqxkUc
    /lRw==
Authentication-Results: strato.com;
    dkim=none
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAgtl+1b1FMstFZvCqIQN5N7TvWFg4vzhFVdoKAuQ"
X-RZG-CLASS-ID: mo00
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v4] hotplug/Linux: fix starting of xenstored with restarting systemd
Date: Thu, 29 Apr 2021 14:07:45 +0200
Message-Id: <20210429120745.28644-1-olaf@aepfle.de>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

A hard to trigger race with another unrelated systemd service and
xenstored.service unveiled a bug in the way how xenstored is launched
with systemd.

launch-xenstore may start either a daemon or a domain. In case a domain
is used, systemd-notify was called. If another service triggered a
restart of systemd while xenstored.service was executed, systemd may
temporary lose track of services with Type=notify. As a result,
xenstored.service would be marked as failed and units that depend on it
will not be started. This breaks the enire Xen toolstack.

The chain of events is basically: xenstored.service sends the
notification to systemd, this is a one-way event. Then systemd may be
restarted by the other unit. During this time, xenstored.service is done
and exits. Once systemd is done with its restart, it collects the pending
notifications and childs. If it does not find the unit which sent the
notification it will declare it as failed.

A workaround for this scenario is to leave the child processes running
for a short time after sending the "READY=1" notification. If systemd
happens to restart it will still find the unit it launched.

Adjust the callers of launch-xenstore to specifiy the init system:
Do not fork xenstored with systemd, preserve pid. This wil also avoid
the need for a sleep because the process which sent the "READY=1" (the
previously forked child) is still alive.

Remove the --pid-file in the systemd case because the pid of the child
is known, and the file had probably little effect anyway due to lack of
PidFile= and Type=forking in the unit file.

Be verbose about xenstored startup only with sysv to avoid interleaved
output in systemd journal. Do the same also for domain case, even if is
not strictly needed because init-xenstore-domain has no output.

The fix for upstream systemd which is supposed to fix it:
575b300b795b6 ("pid1: rework how we dispatch SIGCHLD and other signals")

Signed-off-by: Olaf Hering <olaf@aepfle.de>

--
v04:
- do mkdir unconditionally because init-xenstore-domain writes the domid to
  xenstored.pid
v03:
- remove run_xenstored function, follow style of shell built-in test function
v02:
- preserve Type=notify
---
 tools/hotplug/Linux/init.d/xencommons.in      |  2 +-
 tools/hotplug/Linux/launch-xenstore.in        | 40 ++++++++++++++-----
 .../Linux/systemd/xenstored.service.in        |  2 +-
 3 files changed, 31 insertions(+), 13 deletions(-)

diff --git a/tools/hotplug/Linux/init.d/xencommons.in b/tools/hotplug/Linux/init.d/xencommons.in
index 7fd6903b98..dcb0ce4b73 100644
--- a/tools/hotplug/Linux/init.d/xencommons.in
+++ b/tools/hotplug/Linux/init.d/xencommons.in
@@ -60,7 +60,7 @@ do_start () {
 	mkdir -m700 -p ${XEN_LOCK_DIR}
 	mkdir -p ${XEN_LOG_DIR}
 
-	@XEN_SCRIPT_DIR@/launch-xenstore || exit 1
+	@XEN_SCRIPT_DIR@/launch-xenstore 'sysv' || exit 1
 
 	echo Setting domain 0 name, domid and JSON config...
 	${LIBEXEC_BIN}/xen-init-dom0 ${XEN_DOM0_UUID}
diff --git a/tools/hotplug/Linux/launch-xenstore.in b/tools/hotplug/Linux/launch-xenstore.in
index 991dec8d25..fa4ea4af49 100644
--- a/tools/hotplug/Linux/launch-xenstore.in
+++ b/tools/hotplug/Linux/launch-xenstore.in
@@ -15,6 +15,17 @@
 # License along with this library; If not, see <http://www.gnu.org/licenses/>.
 #
 
+initd=$1
+
+case "$initd" in
+	sysv) nonl='-n' ;;
+	systemd) nonl= ;;
+	*)
+	echo "first argument must be 'sysv' or 'systemd'"
+	exit 1
+	;;
+esac
+
 XENSTORED=@XENSTORED@
 
 . @XEN_SCRIPT_DIR@/hotplugpath.sh
@@ -44,14 +55,16 @@ timeout_xenstore () {
 	return 0
 }
 
-test_xenstore && exit 0
+mkdir -p @XEN_RUN_DIR@
+
+if test "$initd" = 'sysv' ; then
+	test_xenstore && exit 0
+fi
 
 test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons
 
 [ "$XENSTORETYPE" = "" ] && XENSTORETYPE=daemon
 
-/bin/mkdir -p @XEN_RUN_DIR@
-
 [ "$XENSTORETYPE" = "daemon" ] && {
 	[ -z "$XENSTORED_ROOTDIR" ] && XENSTORED_ROOTDIR="@XEN_LIB_STORED@"
 	[ -z "$XENSTORED_TRACE" ] || XENSTORED_ARGS="$XENSTORED_ARGS -T @XEN_LOG_DIR@/xenstored-trace.log"
@@ -60,13 +73,15 @@ test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CONFIG_LEAF
 		echo "No xenstored found"
 		exit 1
 	}
+	[ "$initd" = 'sysv' ] && {
+		echo $nonl Starting $XENSTORED...
+		$XENSTORED --pid-file @XEN_RUN_DIR@/xenstored.pid $XENSTORED_ARGS
+		timeout_xenstore $XENSTORED || exit 1
+		exit 0
+	}
 
-	echo -n Starting $XENSTORED...
-	$XENSTORED --pid-file @XEN_RUN_DIR@/xenstored.pid $XENSTORED_ARGS
-
-	systemd-notify --booted 2>/dev/null || timeout_xenstore $XENSTORED || exit 1
-
-	exit 0
+	exec $XENSTORED -N $XENSTORED_ARGS
+	exit 1
 }
 
 [ "$XENSTORETYPE" = "domain" ] && {
@@ -76,9 +91,12 @@ test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CONFIG_LEAF
 	XENSTORE_DOMAIN_ARGS="$XENSTORE_DOMAIN_ARGS --memory $XENSTORE_DOMAIN_SIZE"
 	[ -z "$XENSTORE_MAX_DOMAIN_SIZE" ] || XENSTORE_DOMAIN_ARGS="$XENSTORE_DOMAIN_ARGS --maxmem $XENSTORE_MAX_DOMAIN_SIZE"
 
-	echo -n Starting $XENSTORE_DOMAIN_KERNEL...
+	echo $nonl Starting $XENSTORE_DOMAIN_KERNEL...
 	${LIBEXEC_BIN}/init-xenstore-domain $XENSTORE_DOMAIN_ARGS || exit 1
-	systemd-notify --ready 2>/dev/null
+	[ "$initd" = 'systemd' ] && {
+		systemd-notify --ready
+		sleep 9
+	}
 
 	exit 0
 }
diff --git a/tools/hotplug/Linux/systemd/xenstored.service.in b/tools/hotplug/Linux/systemd/xenstored.service.in
index 80c1d408a5..c226eb3635 100644
--- a/tools/hotplug/Linux/systemd/xenstored.service.in
+++ b/tools/hotplug/Linux/systemd/xenstored.service.in
@@ -11,7 +11,7 @@ Type=notify
 NotifyAccess=all
 RemainAfterExit=true
 ExecStartPre=/bin/grep -q control_d /proc/xen/capabilities
-ExecStart=@XEN_SCRIPT_DIR@/launch-xenstore
+ExecStart=@XEN_SCRIPT_DIR@/launch-xenstore 'systemd'
 
 [Install]
 WantedBy=multi-user.target


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 12:11:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 12:11:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119951.226787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc5Vw-0003po-OM; Thu, 29 Apr 2021 12:11:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119951.226787; Thu, 29 Apr 2021 12: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 1lc5Vw-0003ph-LS; Thu, 29 Apr 2021 12:11:28 +0000
Received: by outflank-mailman (input) for mailman id 119951;
 Thu, 29 Apr 2021 12:11:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x+wV=J2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lc5Vu-0003pc-RV
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 12:11:26 +0000
Received: from mx.upb.ro (unknown [141.85.13.200])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ec14441a-45b1-4ed4-98a3-d91da804a1ee;
 Thu, 29 Apr 2021 12:11:24 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id BCA1AB560111;
 Thu, 29 Apr 2021 15:11:23 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id dWKHISy5oTLp; Thu, 29 Apr 2021 15:11:21 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id DB37CB560113;
 Thu, 29 Apr 2021 15:11:21 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id UyrHAYFsH8iD; Thu, 29 Apr 2021 15:11:21 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 1BC53B560111;
 Thu, 29 Apr 2021 15:11:21 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ec14441a-45b1-4ed4-98a3-d91da804a1ee
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
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] x86/ACPI: Fix build error when tboot is disabled
Date: Thu, 29 Apr 2021 15:11:16 +0300
Message-Id: <79df12ade0840338590f440cd064052a961fe23b.1619698239.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

When tboot is disabled via menuconfig we get undefined reference error fo=
r
g_tboot_shared. This patch fixes that by disabling the causing source cod=
e
when tboot is disabled.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 xen/arch/x86/acpi/power.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/xen/arch/x86/acpi/power.c b/xen/arch/x86/acpi/power.c
index 91a8c4d0bd..29d9775aed 100644
--- a/xen/arch/x86/acpi/power.c
+++ b/xen/arch/x86/acpi/power.c
@@ -407,6 +407,7 @@ static int acpi_get_wake_status(void)
     return val;
 }
=20
+#ifdef CONFIG_TBOOT
 static void tboot_sleep(u8 sleep_state)
 {
     uint32_t shutdown_type;
@@ -451,18 +452,21 @@ static void tboot_sleep(u8 sleep_state)
=20
     tboot_shutdown(shutdown_type);
 }
+#endif
=20
 /* System is really put into sleep state by this stub */
 acpi_status acpi_enter_sleep_state(u8 sleep_state)
 {
     acpi_status status;
=20
+#ifdef CONFIG_TBOOT
     if ( tboot_in_measured_env() )
     {
         tboot_sleep(sleep_state);
         printk(XENLOG_ERR "TBOOT failed entering s3 state\n");
         return_ACPI_STATUS(AE_ERROR);
     }
+#endif
=20
     ACPI_FLUSH_CPU_CACHE();
=20
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 12:40:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 12:40:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119958.226799 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc5xg-0006Mp-2t; Thu, 29 Apr 2021 12:40:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119958.226799; Thu, 29 Apr 2021 12: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 1lc5xg-0006Mi-02; Thu, 29 Apr 2021 12:40:08 +0000
Received: by outflank-mailman (input) for mailman id 119958;
 Thu, 29 Apr 2021 12:40:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc5xf-0006Ij-0U
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 12:40:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f436054e-f3a2-4fd5-bfd9-50f5ed6fd231;
 Thu, 29 Apr 2021 12:40:06 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 70CFDB053;
 Thu, 29 Apr 2021 12: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: f436054e-f3a2-4fd5-bfd9-50f5ed6fd231
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619700005; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=qBYCKE/qWo2Sh0FBRZ4Js/EXaubXOE97zpAKQJpjSfI=;
	b=ckJDYH8iOBHY+zDHIkX1kB2Ycn1aX/o5kzcMxTerehhqgwCdUBJxVCuZ/H8CARRe9hCBs2
	MXUQugYX8hvS1OVuyvSgx3TRMUjJM1QNMNK68MnvwF6xTsxH5gxCY3ndLfRazl/mgzertl
	Yga2qsgSkICBNWUKn6vUnl6iVhhegzQ=
Subject: Re: [PATCH] x86/ACPI: Fix build error when tboot is disabled
To: Costin Lupu <costin.lupu@cs.pub.ro>
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: <79df12ade0840338590f440cd064052a961fe23b.1619698239.git.costin.lupu@cs.pub.ro>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ce98780e-5a32-9faf-832e-04eae6cdfbcb@suse.com>
Date: Thu, 29 Apr 2021 14:40:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <79df12ade0840338590f440cd064052a961fe23b.1619698239.git.costin.lupu@cs.pub.ro>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 29.04.2021 14:11, Costin Lupu wrote:
> When tboot is disabled via menuconfig we get undefined reference error for
> g_tboot_shared. This patch fixes that by disabling the causing source code
> when tboot is disabled.

There must be more to this: Our shim config also builds with tboot
disabled, without running into any build issue. Furthermore ...

> --- a/xen/arch/x86/acpi/power.c
> +++ b/xen/arch/x86/acpi/power.c
> @@ -407,6 +407,7 @@ static int acpi_get_wake_status(void)
>      return val;
>  }
>  
> +#ifdef CONFIG_TBOOT
>  static void tboot_sleep(u8 sleep_state)
>  {
>      uint32_t shutdown_type;
> @@ -451,18 +452,21 @@ static void tboot_sleep(u8 sleep_state)
>  
>      tboot_shutdown(shutdown_type);
>  }
> +#endif
>  
>  /* System is really put into sleep state by this stub */
>  acpi_status acpi_enter_sleep_state(u8 sleep_state)
>  {
>      acpi_status status;
>  
> +#ifdef CONFIG_TBOOT
>      if ( tboot_in_measured_env() )
>      {
>          tboot_sleep(sleep_state);
>          printk(XENLOG_ERR "TBOOT failed entering s3 state\n");
>          return_ACPI_STATUS(AE_ERROR);
>      }
> +#endif

... tboot_in_measured_env() already has a stub returning 0 when
!TBOOT (which is what I would have recommended instead of the
#ifdef-ary).

If there is a specific case where the compiler fails to DCE the
offending code, then you need to describe this in sufficient
detail.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 12:48:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 12:48:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119963.226812 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc65a-0006aq-U0; Thu, 29 Apr 2021 12:48:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119963.226812; Thu, 29 Apr 2021 12: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 1lc65a-0006aj-Qp; Thu, 29 Apr 2021 12:48:18 +0000
Received: by outflank-mailman (input) for mailman id 119963;
 Thu, 29 Apr 2021 12:48:17 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SJyU=J2=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lc65Z-0006ac-H5
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 12:48:17 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a1b68935-dde3-424f-94fe-f24db5f26077;
 Thu, 29 Apr 2021 12:48: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: a1b68935-dde3-424f-94fe-f24db5f26077
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619700496;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=uofni5z3KVX9TkIOfn3NPOXcBG80KY35TFOrY9zykZY=;
  b=fsWdeuKus39gQeqxClA92Sor5BO5YepV5L6jXwP/uzUrPx0T5N78Ac0a
   eg36blHaXlp25mitqtUAwbvg/qD+zSeErcFrbKSncvjFuQer93GbrUf9G
   /30cAMx3UuIjY5pUoqqhqTHakkTMw0rNMGVbkC6yGN87utmaj8kbTEwUe
   0=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ZRCgqkzlZgsf0qw6zHWzCXlOtyxfwNQhB80hSHLy0oE7eNwHKCODsjghKKUuf2seaLSpdfN///
 iLR8J0OnoY+7/0Hi2MK857pRARE1bfGJ6rHYIbkZnCaW7F1m8aEuQ/SwiFG1TW9c3ZDj2RhjSv
 3+5g2a8bJ54BXPT6vx/NV58awiq9xleAMxvbBZg57KucXr5SVwJMJ0gD1bHCQz5KKI9shrjTOL
 8ms0m9Z+jIOxaQTHFJzkv36EsYi+2S/II/Z6yiC+j2LI0C67cd0O8w4hPC73Vswlom6sPB/X2u
 0fo=
X-SBRS: 5.1
X-MesageID: 42511731
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:86okcKM9l5ou6cBcTg2jsMiAIKoaSvp033AA0UdtRRtJNvGJjs
 zGppgm/DL9lTp5YhsdsP+aPq3oexPh3LpUxaVUAru4RgnhvwKTQ71KyYf52TXvF2nf24dmpM
 RdWpNzAtHxElR25PySiGLUL/8b3NKF/Kq07N2x815RS2hRCp1I3kNBEQCcHVRxRA5aQaU4D4
 aHovVKvCChf3N/VLXYOkU4
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="42511731"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lKEuqyd6E7wImRZHcnV/ZuY6UP/uBgJnvDb8FFSwbGm/H9b7RPGPmjiNAILH0tsePQqnJRxGHMkuvOVPlLPHt/Csj7IQnd/KqG1rg+POZDaWqkYb465JinFZVyexzwivmsfrAEOUDNMna55bNSAbAwMu68K+/PtznBfqW6XEqVIXtRMcdHL577xk218kL75R/XJmyT1QIlY8bvVH+bLIj1t4eWrwT8A2iDlxtkK0d0pwdvnO+mewexPG1LY+bmUGz5DjgEolGAChSKcQ4cEZ6bZO4cQ0RmDucxCj/KK/qIlKPi+Hz0upP9qH60plyl6vVhYF7rCSFTUE9q/sLsQW5w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FRthqBanK0WJd1E4h2/7VSBTh9DXU++Z91NzpJ9oJvQ=;
 b=S5mvZ36VsTozO7OInGMHzMm3oz5mhVCZPEDliuD4tvD3TFifPamgRhBzYidpuFGlZE5rhHdCtdRjx8bBI1AT1Yt0XOmu/f9Z+4SD9YvJAnZRyEeO5T0jIPUiujxgC6rq/wSPTk7Rg95GpkTwSLLOzp0qkRgJ4JLIhNZugjkaV0KpdxORFLiv9lfzVWEAZDH7+BtmAi+FFg99CNVu7IxyC0+9HBqazZbQxQrh7WCxCP83RGrTCxTuIwN8AHqM+RM92k2EC8UA8Fs9uERE8zxw9p/6fUIsnA+PFxGEFRh5WfrU2ZGDf7N/sj4LMqBKXPynzr/ETEaEHgKYMzFcoIVGHw==
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=FRthqBanK0WJd1E4h2/7VSBTh9DXU++Z91NzpJ9oJvQ=;
 b=tktJ89VEBpsfIwCgeBIZIA5uyCZl2oF3Ru7CwNSJn+IopOX3KrqTsJ9xX1kf1NryQuux1DLTMExfry3XgojARsP3/ZOyDNXLOpt0CZuTmAlOVQ8DiR8fiDjktJSpvM8R25POUnn0MuxkUGTC14fjfCf7YYzhtXflv0GtLVzrtvw=
Date: Thu, 29 Apr 2021 14:48:01 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v4 3/3] x86/time: avoid reading the platform timer in
 rendezvous functions
Message-ID: <YIqrAdzcR6KM1b2u@Air-de-Roger>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
 <YH79ZxNRhW24jmUS@Air-de-Roger>
 <88819ae1-d021-9192-4be7-a70064f23feb@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <88819ae1-d021-9192-4be7-a70064f23feb@suse.com>
X-ClientProxiedBy: PAZP264CA0013.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:102:21::18) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 6c3fc877-eb44-4416-7342-08d90b0d0c5b
X-MS-TrafficTypeDiagnostic: DM5PR03MB2969:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2969DCEE06A57A0A13F0F9868F5F9@DM5PR03MB2969.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: gRLwfHruUsZL9TGbUxDuCYf8KcVp9f1nG5Eo+3JXtWMhhM2HqOiA5IIZYaxL9mysg1dVcknTDQhySbD/wU7hOR2hQadc1ccqEl4W4POQw7MRBkcjssEr5P5ygRXudffE1ioBUYMxgjzvfq5Mb5PDgoRm5dAE6UiHU74xIh1JKFEkwEKIwuC01qlTw61wOzSmlXdZxL9LxxwtQfQ0l0fJ6XnnlLEHx84x/xFblN7vRqffIcf1+cwSPtj8vZPHS0AZvsSLZ5b0FLPyX3ODAT5A/fvEvJ2aWhiXtYmVtHeNZNJLhF12fHg+hOEioPlyBJGbJsbqd++NgNaLEkRzH8V2MTs+g7Ehpaiv3wdF517FXG3B84zkplSB6o8WnbwyYYnN7VwEmMVKfO6k8WpqnodE6MZlw0qn7FvHyYyZEjRy4Afr6ZaVAtgTmdFjW5do3sd1nGAn5I+R4tiZJYu2OYhjdu3vTZre2Ta76/bvghP/qLkgfc7zANL4Eq1t6L+b7+3XGR7kHOkVOzM7CermtrrTFKT4HylCIKGWbUPsY7PDxLBUqx4QW+RGkigh0q+vU8vRPHAc5u0TcOdJfCLOIDOWE6ZBYfN0LEvOVJFcg6Nf/bs=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(39860400002)(136003)(376002)(366004)(396003)(346002)(5660300002)(8676002)(2906002)(478600001)(956004)(86362001)(83380400001)(66476007)(8936002)(16526019)(38100700002)(26005)(6916009)(6486002)(66556008)(6666004)(66946007)(9686003)(186003)(33716001)(54906003)(316002)(85182001)(53546011)(4326008)(6496006);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 6c3fc877-eb44-4416-7342-08d90b0d0c5b
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 12:48:12.1516
 (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: fL1HDg6/eC78DLzO+4wt/+DAScYxQa2BLmjjmJvq4YdcSjtfheu2kdLfR9ZjaypGD1M4VBb8whuHtR5ZfPkkYQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2969
X-OriginatorOrg: citrix.com

On Wed, Apr 21, 2021 at 12:06:34PM +0200, Jan Beulich wrote:
> On 20.04.2021 18:12, Roger Pau Monné wrote:
> > On Thu, Apr 01, 2021 at 11:55:10AM +0200, Jan Beulich wrote:
> >> Reading the platform timer isn't cheap, so we'd better avoid it when the
> >> resulting value is of no interest to anyone.
> >>
> >> The consumer of master_stime, obtained by
> >> time_calibration_{std,tsc}_rendezvous() and propagated through
> >> this_cpu(cpu_calibration), is local_time_calibration(). With
> >> CONSTANT_TSC the latter function uses an early exit path, which doesn't
> >> explicitly use the field. While this_cpu(cpu_calibration) (including the
> >> master_stime field) gets propagated to this_cpu(cpu_time).stamp on that
> >> path, both structures' fields get consumed only by the !CONSTANT_TSC
> >> logic of the function.
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> >> ---
> >> v4: New.
> >> ---
> >> I realize there's some risk associated with potential new uses of the
> >> field down the road. What would people think about compiling time.c a
> >> 2nd time into a dummy object file, with a conditional enabled to force
> >> assuming CONSTANT_TSC, and with that conditional used to suppress
> >> presence of the field as well as all audited used of it (i.e. in
> >> particular that large part of local_time_calibration())? Unexpected new
> >> users of the field would then cause build time errors.
> > 
> > Wouldn't that add quite a lot of churn to the file itself in the form
> > of pre-processor conditionals?
> 
> Possibly - I didn't try yet, simply because of fearing this might
> not be liked even without presenting it in patch form.
> 
> > Could we instead set master_stime to an invalid value that would make
> > the consumers explode somehow?
> 
> No idea whether there is any such "reliable" value.
> 
> > I know there might be new consumers, but those should be able to
> > figure whether the value is sane by looking at the existing ones.
> 
> This could be the hope, yes. But the effort of auditing the code to
> confirm the potential of optimizing this (after vaguely getting the
> impression there might be room) was non-negligible (in fact I did
> three runs just to be really certain). This in particular means
> that I'm in no way certain that looking at existing consumers would
> point out the possible pitfall.
> 
> > Also, since this is only done on the BSP on the last iteration I
> > wonder if it really makes such a difference performance-wise to
> > warrant all this trouble.
> 
> By "all this trouble", do you mean the outlined further steps or
> the patch itself?

Yes, either the further steps or the fact that we would have to be
careful to not introduce new users of master_stime that expect it to
be set when CONSTANT_TSC is true.

> In the latter case, while it's only the BSP to
> read the value, all other CPUs are waiting for the BSP to get its
> part done. So the extra time it takes to read the platform clock
> affects the overall duration of the rendezvous, and hence the time
> not "usefully" spent by _all_ of the CPUs.

Right, but that's only during the time rendezvous, which doesn't
happen that often. And I guess that just the rendezvous of all CPUs is
biggest hit in terms of performance.

While I don't think I would have done the work myself, I guess there's
no reason to block it.

In any case I would prefer if such performance related changes come
with some proof that they do indeed make a difference, or else we
might just be making the code more complicated for no concrete
performance benefit.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 12:53:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 12:53:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119971.226823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6AP-0007UR-KD; Thu, 29 Apr 2021 12:53:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119971.226823; Thu, 29 Apr 2021 12:53: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 1lc6AP-0007UK-HI; Thu, 29 Apr 2021 12:53:17 +0000
Received: by outflank-mailman (input) for mailman id 119971;
 Thu, 29 Apr 2021 12:53:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SJyU=J2=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lc6AN-0007UF-L2
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 12:53:15 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b2880039-6900-4eed-9b33-a593ea60d022;
 Thu, 29 Apr 2021 12: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: b2880039-6900-4eed-9b33-a593ea60d022
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619700794;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=fl+fG7uBfvFVf1XtVmyXSjirX9il7vv6OxS8eaRcidk=;
  b=TcnYKeOPfvG7kTD5hYFzxkP6KGELYb1ykpszmwbFqSJ0T6W9Ufe4gYYB
   0HUJECX6Fy2ODO/1bmGlGRioYv1JkdSRQwfNmdQftXLk8t6en53lReeZA
   31LCIrMXQh9+P3xn/rWVmOhEfZJcXyrSOwIh7/aelXaNZkTxj64vUBcs2
   s=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: hQobtcBtJaxchpyBd1xNS7eLAQQqQiXvOB93XG14OCCHLw4bgKJzWjJFjpy+CahhoDlVhXGCkL
 TCiWmqnw35Dq8pfmzaYoLodPZyI8aRdwnhOWQmxJbe0rNQZv+Gqil55vFes1yNOhK5MPi+LyAK
 OhZjt//0wdzGkSyC5La/iA4C1sz7BMwKVicTav7oIM3bBkfgKD9Qix+wSJ1Q7eNjqZOZ7a8qAl
 ROFKQ7s5YctnYOdK5rIKaMFWdU7N9IuHxuQM6lE/oSwd54XUtnM0IGDg5RmLi04Dyz699DcUUM
 VwU=
X-SBRS: 5.1
X-MesageID: 42512183
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:JsJaHK+pF3pERobM/eZuk+EKdb1zdoIgy1knxilNYDRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAsS9aFnXnKQU3aA6O7C+UA76/Fa5NY0K1/qH/xTMOQ3bstRc26
 BpbrRkBLTLZ2RSoM7m7GCDfOoI78KA9MmT69v261dIYUVUZ7p77wF/Yzzrd3FeYAVdH5I2GN
 69y6N81lmdUE8aZMi6GXUJNtKrz7H2vanrfAIcAFof4BSO5AnC1JfBDxOa0h0COgk/o4sKzG
 6tqW3Ez5Tmid6X4Fv212jf75NZ8eGRt+drNYi3peU+bhnpggasTox9V7OFpyBdmpDS1H8a1O
 Pijj1lE8Nv627AXmzdm2qT5yDQlAwAxlWn6ViEjWDtqcb0LQhKdfZptMZiXTbyr28D1esMt5
 5j7iaimLd8SS7kpmDb4ePFUhl7/3DE2kYKoKoooFF0FbcFZKQ5l/14wGplVK0uMQjd844dHO
 xnHKjnlYxrWGLfVXzfs2V1qebcJ0gbL1ODSkgGjMSfzyJbqnB/11cZ38wShB47heoAd6U=
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="42512183"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mePG3VqNxalrbiMylxfRCOopY8Het/9YG4043ihjl57emb0JveYIxETg2b2FvOlXWZSztFu3Kr6lERpB3XLctI37awZqyEi6hKB7uGIeVjW0YroqmNEZoWTzuNnVHIS5yl2eUvc7NFoy9vT7GB/KaEQhJ+HQRZpaCaWalPMk4gv/AVPCmQEI2Ndq/QQsGBjl5dBzGw2WZNZwiS1S6bmkozOpa5Y+esDh/PjpPDCdqkfhhZwvLsllei5/B/s/DxYAPNx1P41htE99aYm2fSZ0yjiSx22X0Aec7Uc/dPr6blrtY7YaNx/J60srMeFtysA/+hNHIQ3yfsil+ci5i5gYLA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=peozl4LdcWYvy7JNYsFHyULLZmOhsGfUGU0UMSPMSkw=;
 b=ARnPb9GwAxGwPdhwZYqADjV7BeaJ9u8seompaADqlIXhEyOm6gi7Pf7UjJBph7ruBYujHup15DkTXQGBMXp/nRg3pkg29HwJrXxr8LpNeFhs91Q4YqLNgAT7b+stynUn+Ye06mmELkgIA1eeUGSch8WmX1c1qYhKxudQv7Dg4JUJwJWYntPvY04ssBSDxoO86adXZAb9mZxCwQ4XEINj0A0IodQoecWX5H7iLHQBGyg0GaQef7M1Say1PUsu4LG4v6mPAwG1XTGFT/MbTFKyozczuIJnPxTK2F4V/69U+3WlzMDfim6rO4N13q7HUM5Q1iHF7nPrezC1YDOgT3vm5A==
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=peozl4LdcWYvy7JNYsFHyULLZmOhsGfUGU0UMSPMSkw=;
 b=D6XJ5NmHUuE4Zqiqx3fJ8RCIaJ3P2zaRLvqZIE8/wKDaQbYq8MnBBPWniWvGtaTnbU8qYWPr1M2x2VwP1YauHWYCJiGfLeHlnfzVfeB6rsxq4V22czPQ4Z54phkN8KcrkusOivU733atVJ81VVlmvwvzrpjgYaqSmlZJJer98eA=
Date: Thu, 29 Apr 2021 14:53:06 +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 v4 3/3] x86/time: avoid reading the platform timer in
 rendezvous functions
Message-ID: <YIqsMi4kyf3Xohmc@Air-de-Roger>
References: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
X-ClientProxiedBy: MR2P264CA0008.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::20) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c9731ab2-13d8-4d9e-d550-08d90b0dbeb7
X-MS-TrafficTypeDiagnostic: DM6PR03MB3915:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB3915A8FE926623B09844A1528F5F9@DM6PR03MB3915.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: j1E00GRfL2fIaci5OgxX7Sd7rX64A7SFe/GI4eZ1kSxgiGIfKbVYKNsYdx+vQbumwY/PADX58wZKJIFWlGdoioek08qK0QbgOl8wwRkNA1UdxL5AJJLzNpH75f8UvKIBCGQR03m/o6gyMEiIQh7awdQlfN3EA5y5KOS443UC9ZUc6ByaoeVMzrkehoiCkYscZzVp57AKbo+FtgC414nB7x4lTqqBOJgTIcsSyrElm7cbrzb9cYuCfwNE2agER96N3NJe/E/s+zQMV9EGopIp2ANAzxCd3VNf4DalkCfXnSBJ1JSlS8xDxqUrzbkNQ0kCoomMYJUqMirL9anl9kzZ6lcr8P6HaBg7BzpPYwGqpgx8iRqdqGwqHJSiohrIYRZtClduhbAD25hkuVC5FS5QjIaRJOmjhm7FznnQHxYmWUb1ZOrB9b8KDC4qXsGGEgFJJspnAtJ6SIUO1tdvSVpTbtHo0mMVMdkIINk8Dk0FVFHvq/x9F2ATWiKqV1agdzqCkkmserb9pfQxau6/FSyxMKgrtcDHgxSAcOqoWiZrM/lE8u6StWr5IRSjvb6MOKYXQU5xiG4bYGnlPtR5ZuJFQIoPSfMIJd13zetFshcjUxw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(396003)(366004)(136003)(346002)(39860400002)(83380400001)(4326008)(33716001)(316002)(38100700002)(478600001)(8936002)(6486002)(5660300002)(66556008)(6916009)(66476007)(8676002)(66946007)(2906002)(6666004)(86362001)(85182001)(6496006)(9686003)(54906003)(956004)(186003)(16526019)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: c9731ab2-13d8-4d9e-d550-08d90b0dbeb7
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 12:53:11.4433
 (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: Z2zdGbnnsfWZWaM/HV9Ib+B5+TSUhnIlgf3F/JewvMAeRvRDFp7buwUTKInBPyOYa0Fv8+BM/308T1H8OHADpQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB3915
X-OriginatorOrg: citrix.com

On Thu, Apr 01, 2021 at 11:55:10AM +0200, Jan Beulich wrote:
> Reading the platform timer isn't cheap, so we'd better avoid it when the
> resulting value is of no interest to anyone.
> 
> The consumer of master_stime, obtained by
> time_calibration_{std,tsc}_rendezvous() and propagated through
> this_cpu(cpu_calibration), is local_time_calibration(). With
> CONSTANT_TSC the latter function uses an early exit path, which doesn't
> explicitly use the field. While this_cpu(cpu_calibration) (including the
> master_stime field) gets propagated to this_cpu(cpu_time).stamp on that
> path, both structures' fields get consumed only by the !CONSTANT_TSC
> logic of the function.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Albeit as said on my other email I would prefer performance related
changes like this one to be accompanied with some proof that they
actually make a difference, or else we risk making the code more
complicated for no concrete benefit.

> ---
> v4: New.
> ---
> I realize there's some risk associated with potential new uses of the
> field down the road. What would people think about compiling time.c a
> 2nd time into a dummy object file, with a conditional enabled to force
> assuming CONSTANT_TSC, and with that conditional used to suppress
> presence of the field as well as all audited used of it (i.e. in
> particular that large part of local_time_calibration())? Unexpected new
> users of the field would then cause build time errors.
> 
> --- a/xen/arch/x86/time.c
> +++ b/xen/arch/x86/time.c
> @@ -52,6 +52,7 @@ unsigned long pit0_ticks;
>  struct cpu_time_stamp {
>      u64 local_tsc;
>      s_time_t local_stime;
> +    /* Next field unconditionally valid only when !CONSTANT_TSC. */

Could you also mention this is only true for the cpu_time_stamp that's
used in cpu_calibration?

For ap_bringup_ref master_stime is valid regardless of CONSTANT_TSC.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 12:53:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 12:53:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119974.226836 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6Ah-0007ZH-TQ; Thu, 29 Apr 2021 12:53:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119974.226836; Thu, 29 Apr 2021 12:53:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6Ah-0007Z6-Ps; Thu, 29 Apr 2021 12:53:35 +0000
Received: by outflank-mailman (input) for mailman id 119974;
 Thu, 29 Apr 2021 12:53: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 1lc6Ag-0007Yn-12
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 12:53: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 1lc6Af-0004SZ-30; Thu, 29 Apr 2021 12:53:33 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lc6Ae-0007Kw-Pk; Thu, 29 Apr 2021 12: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=E3fgMWl9QSkClW5gK51nPnACc7/dVNVArBj9SnXr0z0=; b=No4y2rxKxxbi2L4AUp72bKs+QX
	0GIv+Avcn2iDfa1R14WDSAK7ue14rF3brTwhgCTFaBEIPjbI3VJKrxDDxuS8KNaFDyV4d22uR8Moi
	iH1Y4NiGmhYQEhgwtCIan/X9NVEwfrVlGYjBY8X/qPXx0XXBcUMZczcpvstPYa2glcfI=;
Subject: Re: Ping: [PATCH v3] gnttab: defer allocation of status frame
 tracking array
To: Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Ian Jackson
 <iwj@xenproject.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2397cd4-040e-3cc0-22d8-3f65d01f9326@suse.com>
 <bea459c9-32ed-a800-40ea-456b465cd38a@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <cb700031-2e7e-51e8-50d5-89fdc76b036e@xen.org>
Date: Thu, 29 Apr 2021 13:53:30 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <bea459c9-32ed-a800-40ea-456b465cd38a@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 29/04/2021 10:31, Jan Beulich wrote:
> On 15.04.2021 11:41, Jan Beulich wrote:
>> This array can be large when many grant frames are permitted; avoid
>> allocating it when it's not going to be used anyway, by doing this only
>> in gnttab_populate_status_frames().
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> I know there has been controversy here. Julien - you seemed to agree,
> and iirc you partly drove how the patch is looking now. May I ask for
> an ack? Andrew - you disagreed for reasons that neither Julien nor I
> could really understand. Would you firmly nack the change and suggest
> a way out, or would you allow this to go in with someone else's ack?

I was mostly waiting on the discussion with Andrew to settle before 
reviewing. I can have a look now.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 12:57:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 12:57:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119981.226848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6E3-0007mT-D9; Thu, 29 Apr 2021 12:57:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119981.226848; Thu, 29 Apr 2021 12: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 1lc6E3-0007mM-A4; Thu, 29 Apr 2021 12:57:03 +0000
Received: by outflank-mailman (input) for mailman id 119981;
 Thu, 29 Apr 2021 12:57:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PMrA=J2=gmail.com=charles.fg@srs-us1.protection.inumbo.net>)
 id 1lc6E1-0007mH-Qq
 for xen-devel@lists.xen.org; Thu, 29 Apr 2021 12:57:01 +0000
Received: from mail-wm1-x333.google.com (unknown [2a00:1450:4864:20::333])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fa1b4cf6-8934-4dd5-91a0-67a28d5ae673;
 Thu, 29 Apr 2021 12:57:00 +0000 (UTC)
Received: by mail-wm1-x333.google.com with SMTP id
 b19-20020a05600c06d3b029014258a636e8so6606751wmn.2
 for <xen-devel@lists.xen.org>; Thu, 29 Apr 2021 05: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: fa1b4cf6-8934-4dd5-91a0-67a28d5ae673
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc;
        bh=AM+E5CxDZ0NC7cA7sp5jX6WZqHaLGbGHMU22EPjieRE=;
        b=Cv7auC2OtmosvjXpx4kJe2a/fh37//zKWUwGPcgz6GkpmtbhWZhDIlrN+7OpIwysCr
         mfPzeaq5XG5yuoJXYY80ETkI2e7FPrjvJpvUJYXmtNOE2w5h1O2RotIeCuw9V7BtW7fP
         5WQwb/O9nRbTyaZOYxkJo7uK5KCTkMQQ7PRf7Uui/9H4/mrUmpFQymZvDRExgVymI84e
         muxef4LIRqb/4r0lsLsQ5JsXg/JEfbRejG/LKrHcZpbGoOTGjBBtdXrq2FwyjYxfRhV1
         bEY9s6fqJM8XmP0di8iFRr/Og9FuUhARkpthP1HOEvWcfXV2VmosP1yW2LISSLt+yHHd
         3abw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc;
        bh=AM+E5CxDZ0NC7cA7sp5jX6WZqHaLGbGHMU22EPjieRE=;
        b=LZ4qRdwtcszScLko8CuHALOaGNHXsbuXA2n0CXYxH3FCgmBJcDMjDgRtNM+t8erlkQ
         AqjiVwBvWD3iHKdd7FO9+UNwLWZLo0wg+i6J50whdDppTPvDUoIC/kjd3Bt+o16UXEeY
         M2N4ic33Z9bFl1YWfpLnDnx655F5ICNv0P0Hhl6RUuJDtcVoqKonwKK4RBVjqIQ349Kv
         oC1DlAZgdPBPljtzokoYlgApRbfvYy3CsQx0iLY8fMQrr/YPyvUuVZWXQekT4a6RkECt
         JTax7A3DxHxbdfdfbPDk9DnV+S3EdYZUC8CjsHIUw696ecicicA/dcYxbHXe2gDATXLR
         HOfA==
X-Gm-Message-State: AOAM532Wp6Yrnq5CYutjXfgEDLeQJQJuxJT88tSGjvQnJi6loyZrnElx
	iIzAFyjK5cJYb8jzrQwoCa/zqlg4+Tn/SuTfC/o=
X-Google-Smtp-Source: ABdhPJyyZfOAGdLl0/kOA++jcC2L5Q3YtxMaX+9G+jDXZjUpv2dwVc3StZ+rO5PAe9YJo3clfvB0xvISH06HQzVN/Vk=
X-Received: by 2002:a05:600c:4a17:: with SMTP id c23mr22211694wmp.78.1619701019868;
 Thu, 29 Apr 2021 05:56:59 -0700 (PDT)
MIME-Version: 1.0
References: <CAAQRGoBi4tC+K_FHJceXxEqC6wy79qX0aE60OOeBWSo8tTEbjg@mail.gmail.com>
 <37488d5d-eec9-53f2-4ba7-157a7f9f5a9d@suse.com>
In-Reply-To: <37488d5d-eec9-53f2-4ba7-157a7f9f5a9d@suse.com>
From: =?UTF-8?Q?Charles_Gon=C3=A7alves?= <charles.fg@gmail.com>
Date: Thu, 29 Apr 2021 13:56:24 +0100
Message-ID: <CAAQRGoA+5_LQ+QFZmg0yoBrQR+X_m_im58DAN6cujZ4yvqoZMg@mail.gmail.com>
Subject: Re: Serial Console : SOL vs Physical Port
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xen.org
Content-Type: multipart/alternative; boundary="000000000000ee832f05c11c077d"

--000000000000ee832f05c11c077d
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Thanks @Jan Beulich <JBeulich@suse.com>

On Thu, Apr 29, 2021 at 10:35 AM Jan Beulich <jbeulich@suse.com> wrote:

> On 28.04.2021 20:49, Charles Gon=C3=A7alves wrote:
> > Is there any difference between both?
> > I'm trying to debug an issue using a SOL but the host crashes before an=
y
> > meaningful message.
> >
> > The SOL is working properly when I can debug some crashes perfectly. Bu=
t
> > for a specific case I'm wondering if I could be losing some messages.
>
> Well, without having an explanation, experience tells me that SOL in
> some cases is more fragile. Do you have "sync_console" in place?

I was missing the options  `sync_console console_to_ring`.
But this did not help either.


> Does
> the crash perhaps happen too early for the serial output to have got
> configured in Xen yet?
>
This is not the case, I trigger  intentionally the "bug" invoking an HC

But thanks for your help!


> Jan
>

--000000000000ee832f05c11c077d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">Thanks=C2=A0<a class=3D"gmail_plusreply" =
id=3D"plusReplyChip-0" href=3D"mailto:JBeulich@suse.com" tabindex=3D"-1">@J=
an Beulich</a>=C2=A0<div><br></div></div><div class=3D"gmail_quote"><div di=
r=3D"ltr" class=3D"gmail_attr">On Thu, Apr 29, 2021 at 10:35 AM Jan Beulich=
 &lt;<a href=3D"mailto:jbeulich@suse.com">jbeulich@suse.com</a>&gt; wrote:<=
br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8e=
x;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 28.04.2021 20=
:49, Charles Gon=C3=A7alves wrote:<br>
&gt; Is there any difference between both?<br>
&gt; I&#39;m trying to debug an issue using a SOL but the host crashes befo=
re any<br>
&gt; meaningful message.<br>
&gt; <br>
&gt; The SOL is working properly when I can debug some crashes perfectly. B=
ut<br>
&gt; for a specific case I&#39;m wondering if I could be losing some messag=
es.<br>
<br>
Well, without having an explanation, experience tells me that SOL in<br>
some cases is more fragile. Do you have &quot;sync_console&quot; in place? =
</blockquote><div>I was missing the options=C2=A0 `<span style=3D"backgroun=
d-color:rgb(248,249,250);color:rgb(0,0,0);font-family:monospace,monospace;f=
ont-size:12.7px;white-space:pre-wrap">sync_console console_to_ring`. </span=
></div><div>But this did not help either.=C2=A0</div><div></div><div>=C2=A0=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;b=
order-left:1px solid rgb(204,204,204);padding-left:1ex">Does<br>
the crash perhaps happen too early for the serial output to have got<br>
configured in Xen yet?<br></blockquote><div>This is not the case, I trigger=
=C2=A0 intentionally the &quot;bug&quot; invoking an HC</div><div><br></div=
><div>But thanks for your help!</div><div><br></div><blockquote class=3D"gm=
ail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,=
204,204);padding-left:1ex">
<br>
Jan<br>
</blockquote></div></div>

--000000000000ee832f05c11c077d--


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:10:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:10:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119987.226860 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6Qk-00015I-Ld; Thu, 29 Apr 2021 13:10:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119987.226860; Thu, 29 Apr 2021 13: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 1lc6Qk-00015B-I2; Thu, 29 Apr 2021 13:10:10 +0000
Received: by outflank-mailman (input) for mailman id 119987;
 Thu, 29 Apr 2021 13:10:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc6Qj-000154-Hm
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:10:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 57ebc86c-7861-4f11-baf3-d3c0bd0e841c;
 Thu, 29 Apr 2021 13:10:08 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 44ED5B12E;
 Thu, 29 Apr 2021 13:10: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: 57ebc86c-7861-4f11-baf3-d3c0bd0e841c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619701807; 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=3k+xAgvQZtJpxfl3IYt7nqtMgLjyZZ2LoR7FStHB82k=;
	b=Le3PWrken0cEVs2Q+FgPVAceMIZKGAfJutSJh62jPcpFRqw1p7HNreE7n9VVm9AXctIL83
	qTjsgFFIG85JrQDfasiLZyIpI6Kd061rNo9E2qQx284XO4bb0QuWOD3nWjOr3o2ne5DvIb
	ekpDDjz9GTg9jZx6G3L1ddDgkhYLACs=
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Luca Fancellu <luca.fancellu@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] public/gnttab: relax v2 recommendation
Message-ID: <dcd9ede1-9471-6866-4ba7-b6a7664b5e35@suse.com>
Date: Thu, 29 Apr 2021 15:10:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

With there being a way to disable v2 support, telling new guests to use
v2 exclusively is not a good suggestion.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/include/public/grant_table.h
+++ b/xen/include/public/grant_table.h
@@ -121,8 +121,10 @@ typedef uint32_t grant_ref_t;
  */
 
 /*
- * Version 1 of the grant table entry structure is maintained purely
- * for backwards compatibility.  New guests should use version 2.
+ * Version 1 of the grant table entry structure is maintained largely for
+ * backwards compatibility.  New guests are recommended to support using
+ * version 2 to overcome version 1 limitations, but to be able to fall back
+ * to version 1.
  */
 #if __XEN_INTERFACE_VERSION__ < 0x0003020a
 #define grant_entry_v1 grant_entry


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:11:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:11:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119991.226871 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6Rg-0001D6-Uz; Thu, 29 Apr 2021 13:11:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119991.226871; Thu, 29 Apr 2021 13:11: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 1lc6Rg-0001Cz-Rz; Thu, 29 Apr 2021 13:11:08 +0000
Received: by outflank-mailman (input) for mailman id 119991;
 Thu, 29 Apr 2021 13:11:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc6Rf-0001Cq-7W
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:11:07 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1ec80139-08ed-4b19-83ef-ce175221c69f;
 Thu, 29 Apr 2021 13:11:03 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 4DF40B156;
 Thu, 29 Apr 2021 13:11: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: 1ec80139-08ed-4b19-83ef-ce175221c69f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619701862; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=22pQnCVeFanA9VjLo2fhHSQH5l3LKKD+EW3AOqi0V0E=;
	b=fKT8HdmLaAiD0Hc5+awYuCrJE28Jz/cFkOg48m0A886aBkglSTvP9nsi/dk4FTUGf1D+Ga
	8Y5U4W5BL3BSjeM6V7DLroe+/M+a7+TKna+4WAQYJjrWJWmwze7s4wM3zTZoyBrRsXQ5+g
	W2Eu1KeUFWDy31f5Y/JBRP4YhePuk0U=
Subject: Re: [PATCH v3 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210426153741.26904-1-luca.fancellu@arm.com>
 <20210426153741.26904-4-luca.fancellu@arm.com>
 <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
 <E47AFE69-CA75-468D-868D-182F78C6992C@arm.com>
 <d50b05f7-f644-0123-9994-d31668bd5b5f@suse.com>
 <38004B72-8F91-4B4E-843E-B80911DC48B3@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <843b7489-bf08-7313-767c-9c9f1c719736@suse.com>
Date: Thu, 29 Apr 2021 15:11:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <38004B72-8F91-4B4E-843E-B80911DC48B3@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 29.04.2021 11:50, Luca Fancellu wrote:
>> On 29 Apr 2021, at 10:04, Jan Beulich <jbeulich@suse.com> wrote:
>> On 28.04.2021 16:59, Luca Fancellu wrote:
>>>> On 27 Apr 2021, at 14:57, Jan Beulich <jbeulich@suse.com> wrote:
>>>> On 26.04.2021 17:37, Luca Fancellu wrote:
>>>>> @@ -120,24 +132,26 @@ typedef uint32_t grant_ref_t;
>>>>> * [GST]: This field is written by the guest and read by Xen.
>>>>> */
>>>>>
>>>>> -/*
>>>>> - * Version 1 of the grant table entry structure is maintained purely
>>>>> - * for backwards compatibility.  New guests should use version 2.
>>>>> - */
>>>>> #if __XEN_INTERFACE_VERSION__ < 0x0003020a
>>>>> #define grant_entry_v1 grant_entry
>>>>> #define grant_entry_v1_t grant_entry_t
>>>>> #endif
>>>>> +/**
>>>>> + * Version 1 of the grant table entry structure is maintained purely
>>>>> + * for backwards compatibility.  New guests should use version 2.
>>>>> + */
>>>>
>>>> In case I didn't say so already before - I think this would be a good
>>>> opportunity to drop the comment pointing at v2. With v2 optionally
>>>> unavailable altogether, this can't possibly be a generally valid
>>>> course of action.
>>>
>>> Could you explain me better that? Do you want to get rid of this comment?
>>
>> Especially the second sentence is misleading. If new code used v2, it
>> would not work on Xen with v2 support turned off.
> 
> Can you suggest what to write here? I’m not very familiar with this xen
> Interface

I've sent a patch myself just a few seconds ago.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:15:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:15:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.119997.226884 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6W9-0001Py-HP; Thu, 29 Apr 2021 13:15:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 119997.226884; Thu, 29 Apr 2021 13:15: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 1lc6W9-0001Pr-E2; Thu, 29 Apr 2021 13:15:45 +0000
Received: by outflank-mailman (input) for mailman id 119997;
 Thu, 29 Apr 2021 13:15: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 1lc6W8-0001Pm-AY
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:15: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 1lc6W6-0004qM-9y; Thu, 29 Apr 2021 13:15:42 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lc6W6-0000kC-0v; Thu, 29 Apr 2021 13:15: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=e0Q1Ff80FfEIWIQMfznCRyf4yKWW+MH4snAWf1VboQQ=; b=RmuL+ku1QfzoVKyxo1Liyj8zCy
	1laW4g69Wj5cl/a9w7yLt97PNqq1bToulwJJlBqIULhxe8R+UhDFqwM0dErAwlHoKje6gShCjiy3b
	i75O5eKI1V1DOusNqPl6xGp5fyskHAiA71TpKV7nA1tVEtdm24vBkI0ZOdlF3FqcBM34=;
Subject: Re: [PATCH v3] gnttab: defer allocation of status frame tracking
 array
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <d2397cd4-040e-3cc0-22d8-3f65d01f9326@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <581f843f-25de-bf8a-e8b9-7a407158bd4f@xen.org>
Date: Thu, 29 Apr 2021 14:15:39 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <d2397cd4-040e-3cc0-22d8-3f65d01f9326@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 15/04/2021 10:41, Jan Beulich wrote:
> This array can be large when many grant frames are permitted; avoid
> allocating it when it's not going to be used anyway, by doing this only
> in gnttab_populate_status_frames().

Given the controversy of the change, I would suggest to summarize why 
this approach is considered to be ok in the commit message.

> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v3: Drop smp_wmb(). Re-base.
> v2: Defer allocation to when a domain actually switches to the v2 grant
>      API.
> 
> --- a/xen/common/grant_table.c
> +++ b/xen/common/grant_table.c
> @@ -1747,6 +1747,17 @@ gnttab_populate_status_frames(struct dom
>       /* Make sure, prior version checks are architectural visible */
>       block_speculation();
>   
> +    if ( gt->status == ZERO_BLOCK_PTR )
> +    {
> +        gt->status = xzalloc_array(grant_status_t *,
> +                                   grant_to_status_frames(gt->max_grant_frames));
> +        if ( !gt->status )
> +        {
> +            gt->status = ZERO_BLOCK_PTR;
> +            return -ENOMEM;
> +        }
> +    }
> +
>       for ( i = nr_status_frames(gt); i < req_status_frames; i++ )
>       {
>           if ( (gt->status[i] = alloc_xenheap_page()) == NULL )
> @@ -1767,18 +1778,23 @@ status_alloc_failed:
>           free_xenheap_page(gt->status[i]);
>           gt->status[i] = NULL;
>       }

NIT: can you add a newline here and...

> +    if ( !nr_status_frames(gt) )
> +    {
> +        xfree(gt->status);
> +        gt->status = ZERO_BLOCK_PTR;
> +    }

... here for readability.

>       return -ENOMEM;
>   }
>   
>   static int
>   gnttab_unpopulate_status_frames(struct domain *d, struct grant_table *gt)
>   {
> -    unsigned int i;
> +    unsigned int i, n = nr_status_frames(gt);
>   
>       /* Make sure, prior version checks are architectural visible */
>       block_speculation();
>   
> -    for ( i = 0; i < nr_status_frames(gt); i++ )
> +    for ( i = 0; i < n; i++ )
>       {
>           struct page_info *pg = virt_to_page(gt->status[i]);
>           gfn_t gfn = gnttab_get_frame_gfn(gt, true, i);
> @@ -1833,12 +1849,11 @@ gnttab_unpopulate_status_frames(struct d
>           page_set_owner(pg, NULL);
>       }
>   
> -    for ( i = 0; i < nr_status_frames(gt); i++ )
> -    {
> -        free_xenheap_page(gt->status[i]);
> -        gt->status[i] = NULL;
> -    }
>       gt->nr_status_frames = 0;
> +    for ( i = 0; i < n; i++ )
> +        free_xenheap_page(gt->status[i]);
> +    xfree(gt->status);
> +    gt->status = ZERO_BLOCK_PTR;
The new position of the for loop seems unrelated to the purpose of the 
patch. May I ask why this was done?

>   
>       return 0;
>   }
> @@ -1969,11 +1984,11 @@ int grant_table_init(struct domain *d, i
>       if ( gt->shared_raw == NULL )
>           goto out;
>   
> -    /* Status pages for grant table - for version 2 */
> -    gt->status = xzalloc_array(grant_status_t *,
> -                               grant_to_status_frames(gt->max_grant_frames));
> -    if ( gt->status == NULL )
> -        goto out;
> +    /*
> +     * Status page tracking array for v2 gets allocated on demand. But don't
> +     * leave a NULL pointer there.
> +     */
> +    gt->status = ZERO_BLOCK_PTR;
>   
>       grant_write_lock(gt);
>   
> @@ -4047,11 +4062,12 @@ int gnttab_acquire_resource(
>           if ( gt->gt_version != 2 )
>               break;
>   
> +        rc = gnttab_get_status_frame_mfn(d, final_frame, &tmp);

NIT: It wasn't obvious to me why gnttab_get_status_frame_mfn() is moved 
before gt->status. May I suggest to add a in-code comment abouve the 
ordering?

> +
>           /* Check that void ** is a suitable representation for gt->status. */
>           BUILD_BUG_ON(!__builtin_types_compatible_p(
>                            typeof(gt->status), grant_status_t **));
>           vaddrs = (void **)gt->status;
> -        rc = gnttab_get_status_frame_mfn(d, final_frame, &tmp);
>           break;
>       }
>   
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:16:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:16:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120000.226895 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6WS-0001VE-Te; Thu, 29 Apr 2021 13:16:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120000.226895; Thu, 29 Apr 2021 13: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 1lc6WS-0001V7-QW; Thu, 29 Apr 2021 13:16:04 +0000
Received: by outflank-mailman (input) for mailman id 120000;
 Thu, 29 Apr 2021 13:16:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hKuK=J2=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lc6WS-0001Uy-8B
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:16:04 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (unknown
 [40.107.20.62]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 56d007e1-daa6-4c8b-b245-1526442588c4;
 Thu, 29 Apr 2021 13:16:01 +0000 (UTC)
Received: from AM5PR0101CA0001.eurprd01.prod.exchangelabs.com
 (2603:10a6:206:16::14) by AM4PR08MB2772.eurprd08.prod.outlook.com
 (2603:10a6:205:3::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Thu, 29 Apr
 2021 13:15:58 +0000
Received: from AM5EUR03FT011.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:16:cafe::3d) by AM5PR0101CA0001.outlook.office365.com
 (2603:10a6:206:16::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend
 Transport; Thu, 29 Apr 2021 13:15:58 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM5EUR03FT011.mail.protection.outlook.com (10.152.16.152) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 13:15:58 +0000
Received: ("Tessian outbound 13cdc29c30b8:v91");
 Thu, 29 Apr 2021 13:15:57 +0000
Received: from 7d43fad22ac3.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B323D4C7-101F-4003-9620-1F6876D80ADE.1; 
 Thu, 29 Apr 2021 13:15:49 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7d43fad22ac3.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 29 Apr 2021 13:15:49 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3197.eurprd08.prod.outlook.com (2603:10a6:803:3e::27)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Thu, 29 Apr
 2021 13:15:44 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4065.028; Thu, 29 Apr 2021
 13:15:44 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LNXP265CA0027.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:5c::15) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 13:15: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: 56d007e1-daa6-4c8b-b245-1526442588c4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D8qhvCw39d1uUVtlEmSp51yR+Os6gWlJ4knARHVTV74=;
 b=jule1LUpdH8Q5u8q22muoIOCORtlTNlLQKpXv8Vr9dEc7Gvhkpi62fhbbHPs4CsaHasrDJLMV4OY0kcp/fAZkpbrr5vobN2mmwH0OLh6R847+lPyMytucVHrLaGCj9SBKhjHjJSDxKlpIIcxDoYq6Wsa7Lcr3MM3k3+3bXKy9Po=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: ac9cc124c855b25c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y0R0gJ4xKyJeg9Nrdubn8dPqiWRke7CFJstgZXas1P4BWdAppMyL2jFgzIYqKnmQb1EMkE4kb0XLquysfthJ3/G6v7F/zRr74FHtqi4I6gAZON59tpk23BYS6VsUpsfoR220CmvL25pUwBvVtqMzH2JJJDHjoLCCkYNdzTGW1ioweKJbo5+OlMA31PprbPhZE2xPuUgIWYhsxpofCqB6S2qICRNMd/eS3xY2Ss5FJzGny/HzgQwpp+IuierOCbNwpGeTIPiRQsNyzW/Ie58cdeUfXBKEnXNQbm773K2ApR23zSz7+Xzpjd952FyxahAmKNUj2794dtpPIpXP1BpNIg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D8qhvCw39d1uUVtlEmSp51yR+Os6gWlJ4knARHVTV74=;
 b=f6gC7OufDySpuTcQAYYGufsGkQdPyfzer6GWdAM3tVCs2aRhSKl956SpwzcTyEiyDTaNSdTMV4+/2pIUBn7+KdBBPObcX750DZpmgVrqderLxyxgRTGW9Pe6vGGAAKPOjJnMFrKA+0A/ZmgYIZixRxxAEyqdVg2+vnT7Opkp3byMez+SyCJXRMXhidETz2Tx0pHBMVHvJHNfxB/zARQ27d6i6r0N3IfQ6yng78MYM4CFWBPYnyPqaNUoU5RHMpZM9pdkJ99vOE/v11dQqxSEYLGlPK9GIt5a9R+PQmton0uCJBtD4nwcLUYU9LtvRlNx69bkDOFLVPDI/bgvpyDAIA==
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=D8qhvCw39d1uUVtlEmSp51yR+Os6gWlJ4knARHVTV74=;
 b=jule1LUpdH8Q5u8q22muoIOCORtlTNlLQKpXv8Vr9dEc7Gvhkpi62fhbbHPs4CsaHasrDJLMV4OY0kcp/fAZkpbrr5vobN2mmwH0OLh6R847+lPyMytucVHrLaGCj9SBKhjHjJSDxKlpIIcxDoYq6Wsa7Lcr3MM3k3+3bXKy9Po=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=utf-8
Subject: Re: [PATCH v3 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <843b7489-bf08-7313-767c-9c9f1c719736@suse.com>
Date: Thu, 29 Apr 2021 14:15:37 +0100
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <9B01F170-25AC-4777-B913-C46358F49D28@arm.com>
References: <20210426153741.26904-1-luca.fancellu@arm.com>
 <20210426153741.26904-4-luca.fancellu@arm.com>
 <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
 <E47AFE69-CA75-468D-868D-182F78C6992C@arm.com>
 <d50b05f7-f644-0123-9994-d31668bd5b5f@suse.com>
 <38004B72-8F91-4B4E-843E-B80911DC48B3@arm.com>
 <843b7489-bf08-7313-767c-9c9f1c719736@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LNXP265CA0027.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:5c::15) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e163c04c-ef01-417d-1b12-08d90b10ed8b
X-MS-TrafficTypeDiagnostic: VI1PR08MB3197:|AM4PR08MB2772:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS:
	<AM4PR08MB2772A66BA3EAE34CE7821E50E45F9@AM4PR08MB2772.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 9kjZ/qB9DVMVkNWLKnZmskQNIQ0ib81DA4Y41NJRkAGXxuKaqenHu17R8T7OxfCmNBJ4YCiX+8tzKLZ6LtfJf7Xhfb2MBqRJUlC1iiN2/DavGbe3ld6ubwXzKL8gfxLYbHbEWAUQ+dlNGXY+h+JsYTRdKop3+ZHEuBG70viJIaMd76ebVAF/tpH995aSVy+2/aRct6jTA9Tm5R+/DOQ1MKm7RSMK73Mqu8rm8o89uinXflY6b1YQ/C0t1enLiZR32ZlvItwi1R9U/420MDFd5J41+79o5SRsrQRtYDY+951yR8b5hYHf954icJGhHqDva+u41JWO/lovNeX9xpGvj/ydNH0TJYTImOutfWkel+MIl8pdK3zKdHGHorm363Fp/CraZ2l6gbAthuu1JkNgrudE85iK4nSR5gUygjMR4LHMLCmrpSJII+SbA3B/GuTcfe9Z648e8eXxQAZLHuM4R35oLCJpcyd6RlbGherwcb+vKMvcR9Lq7efP2PClXlSas+wW+DTo/3CA++SzdsGVhFwgeDTlkbBMb25tKllpkYdDs71JmcXSOnNTmdpMuvLft6NECgqf8PoN5ZVMNH4Oadld6CwGfqoYa8lE3jbaBVAktm4nrEKo+j88nCPvoXAX0RgFDVqF8Sz/FAqH5cJ1h+q4R+Acovgvc6kmwgtZXsY3dUvaGBCmX1NmgFb3bFvX
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(396003)(346002)(376002)(136003)(39850400004)(53546011)(316002)(38100700002)(36756003)(7696005)(6666004)(6916009)(38350700002)(6486002)(52116002)(54906003)(26005)(4326008)(66556008)(8936002)(86362001)(5660300002)(2616005)(8676002)(2906002)(66476007)(66946007)(956004)(33656002)(44832011)(186003)(478600001)(16526019)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 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
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3197
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM5EUR03FT011.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	dc38df79-0ee6-40df-94c0-08d90b10e55c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	90yEb6psU15t3KBuFqV7vdlIZoHDoS2CP0qj8N+x7/YhLpWWKAQHfY4cFAvjcBxgFfLz8NAdkZmg1vrmypsGo5ZpvyCEXU7nGgLLWRKlKhiPW/Lr+/xcqxQDfu2XMtoI9j0WCG3fI/ZZglQwUJ3NWC2tKJlUwZ8JsQe8RE8YRJ0MeUMTUs5Z441AmkowiY20i42ABTzz/oCO3Hyt2pxB1u1ynnuGtc2bTK31/ltMHyDS1QiJwZiX8rzMNcYRcbgAINU1y2uoK9omrDYqhcjAAsfUN8pCJaM2UlFxrkeaaF6qzBudk7pbAxvIQNamWJgAbKPDCr8hrp9LtJ/JpNDZHIpgmALLWYGyrWr6r1mjzjSkSQgqGAKsmeM5SBq+KZ6W7JGQs1TyuleCR1Z3Hi966W3s1SNxo1BLZjbA6HKu7CO2mFMCfjRJnC2qoFI5NcSOoMWvUBUqSqZpuEGHcpwR9s2st5LPN2ycky6YaXUihpZ9tXgmMBi1phxLX4ncJH8jPoN98wF2owK+5bH7La28woKKE+G4twFDU250IjmNu5NTiSXjJZEu/MOAWQwfzY6ESYw14atRwzvlvXUV/sg/xK8Y5oRqXg5uyfWSnDECGjmvbScV8cV+amqEdcKIgK4dCZ8lHsZqDPPFYjWpOAst/eZRg3PxUx/u7as/vqiFu8XBdz1YKNY6s4oS9S0Aye6I
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:(4636009)(39850400004)(136003)(376002)(396003)(346002)(46966006)(36840700001)(336012)(4326008)(316002)(82310400003)(7696005)(53546011)(5660300002)(356005)(33656002)(6666004)(36756003)(6862004)(16526019)(54906003)(8676002)(47076005)(86362001)(6486002)(70206006)(81166007)(478600001)(2616005)(956004)(34020700004)(82740400003)(44832011)(8936002)(26005)(70586007)(36860700001)(2906002)(186003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 13:15:58.1715
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e163c04c-ef01-417d-1b12-08d90b10ed8b
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:
	AM5EUR03FT011.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR08MB2772



> On 29 Apr 2021, at 14:11, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 29.04.2021 11:50, Luca Fancellu wrote:
>>> On 29 Apr 2021, at 10:04, Jan Beulich <jbeulich@suse.com> wrote:
>>> On 28.04.2021 16:59, Luca Fancellu wrote:
>>>>> On 27 Apr 2021, at 14:57, Jan Beulich <jbeulich@suse.com> wrote:
>>>>> On 26.04.2021 17:37, Luca Fancellu wrote:
>>>>>> @@ -120,24 +132,26 @@ typedef uint32_t grant_ref_t;
>>>>>> * [GST]: This field is written by the guest and read by Xen.
>>>>>> */
>>>>>>=20
>>>>>> -/*
>>>>>> - * Version 1 of the grant table entry structure is maintained purel=
y
>>>>>> - * for backwards compatibility.  New guests should use version 2.
>>>>>> - */
>>>>>> #if __XEN_INTERFACE_VERSION__ < 0x0003020a
>>>>>> #define grant_entry_v1 grant_entry
>>>>>> #define grant_entry_v1_t grant_entry_t
>>>>>> #endif
>>>>>> +/**
>>>>>> + * Version 1 of the grant table entry structure is maintained purel=
y
>>>>>> + * for backwards compatibility.  New guests should use version 2.
>>>>>> + */
>>>>>=20
>>>>> In case I didn't say so already before - I think this would be a good
>>>>> opportunity to drop the comment pointing at v2. With v2 optionally
>>>>> unavailable altogether, this can't possibly be a generally valid
>>>>> course of action.
>>>>=20
>>>> Could you explain me better that? Do you want to get rid of this comme=
nt?
>>>=20
>>> Especially the second sentence is misleading. If new code used v2, it
>>> would not work on Xen with v2 support turned off.
>>=20
>> Can you suggest what to write here? I=E2=80=99m not very familiar with t=
his xen
>> Interface
>=20
> I've sent a patch myself just a few seconds ago.

Hi Jan,

That=E2=80=99s great, I=E2=80=99m going to push the v4 for this serie soon,=
 now that the comment is fixed,
I can include it in the docs too, do you agree?

Cheers,
Luca

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:19:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:19:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120010.226908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6Zn-0001hS-EI; Thu, 29 Apr 2021 13:19:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120010.226908; Thu, 29 Apr 2021 13:19:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6Zn-0001hL-Ai; Thu, 29 Apr 2021 13:19:31 +0000
Received: by outflank-mailman (input) for mailman id 120010;
 Thu, 29 Apr 2021 13:19:29 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SJyU=J2=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lc6Zl-0001hB-Sd
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:19:29 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c966840f-34e9-489e-91ef-919d71b1dcef;
 Thu, 29 Apr 2021 13:19: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: c966840f-34e9-489e-91ef-919d71b1dcef
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619702369;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=xEgcVM+Nvzkld4Ycor3ZvY74UftrxJJGUnWGGB+VW1k=;
  b=NVSqaxt/bR6JcPTgT5v0MTLREyVc7EDTsPP4o+GBE2lM4Mv+hBOo87RD
   s6e8POkxxGBQ/lvKfjDszqEtUuowAdk2B+sXD08NqBbpw3dSah04jk/cS
   tbybCMsJcHbUViGi/LI3o0V/pIV01prwcbdkthqeAKZQWpmJZL/9W9tC0
   w=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: axtOQswOmSNn1/UuQQS7fQIwFkMFrQgfkyMc77wAxMx03LGNJZvEespEilmomTdJyVDLctsiuM
 +v2FaiuphegE7fL3vtn4FeZNiQARmV6eIXZoxJO8446sSAWKJR9SO+WQZSlelb+vaAh0rh0Uya
 lV+X1hXbuwNrugOyMR/CsPPrjpOLZiXaM71eD+uR7HGI/R7Z1mZ4jB/pN66cYkRAuInClvkBau
 nOSkyYqd3eksrxjx0LNpbmfDX1/f2IeI4oNm9QFBVIMetpRV6Sd0/Ujrm7phEYUeyk+dLFKeBe
 OHc=
X-SBRS: 5.1
X-MesageID: 42715852
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:+Rdt7aA/qRK/I7blHeg9tMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a
 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmBEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVsUu2QAH4ZU+/f4+DajZ6OW298OzcLyimryQmp5rnzDgSC0n4lPQ9n7L8+/Q
 H+4m7Ez4q5tfXT8G6460by6NBslMLl2p9/AqW3+7UoAxHNrirtW4h7Qb2Fu1kO0ZCSwXInis
 PFrRtlH+kb0QKpQkiPrRHg2xbt3V8VgheIoz/o4gqRneXDSD03EMZHj45CGyGpk3YIh91gzL
 lNm1uQqps/N2K/oA3G+9PKWxt2/3DEx0YKrOh7tQ06baIuLJVVrYAZ4XpPFoYBEC/Q+OkcYZ
 ZTJfCZy/BMfVyAaXfF+kFp3dy3R3w2WiyLW04Yp6WuonVrtUE863Fd6N0Un38G+p54Y55Y59
 7cOqAtsL1VVMcZYY90Ge9pe7r6NkX9BTb3dE6CK1XuE68Kf1jXrYTs3bkz7Oa2PLQV0Zobgv
 36IRJlnF93X3irJdyF3ZVN/ByIan66Ry7RxsZX4IU8kqHgRYDsLTaIRDkV4oWdisRaJveed+
 e4OZpQDfOmB3DpA5x10wr3XIQXBmIZVOETp9YnS3ODqs/GMeTRx6/mWceWAICoPScvW2v5DH
 dGdiP0Pt984keiXWK9oBW5YQKuRmXPubZLVITK9ekaz4YAcqdWtBIOtFi/7saXbRlLsqk8el
 pCMKrq+5nL4FWezCLt1SFEKxBdBkFa7PHLSHVRvzIHNEvybPIlt8iAf3tRmF+KPAV2Qc+TMA
 M3nSU5xYuHa7irgQwyAdOuNWyXy1EJomiRcpsakqqfoeH/ep05CZ4icLdrFRrCEiF0nQoCkh
 YCVCY0AmvkUh/+g6Ssi5IZQMvFccNnvQutKclI7U7EuV6kvsEpTHsDVzuIWcqa6DxeAwZ8tx
 lUyesykbCAkTGgJS8ajP4jOFNBUmiRHYlLFR+IfolSh7DtdjxhVGviv03rtzgDPk7Rs2kCjG
 3oKiOZPcvGBVdQoVh0+Kfn+lEcTBTUQ2tALlRB9aFtH2XPvXh+ldKRbq2oym2Ldx8p2ecGKg
 zIZjMUPyJjz926zwSuhT6HDHkqr69eedD1PfAGSfX+y3mtIIqHmeU6BPdS5o9iL82rnekRU+
 6TEjXlWw/QOqcM4UiyqXkkMiUv9yVhvvPsxRH/7G+3mFQ4GuHfJVx6R7cdZ/GQhlKUMsqg4d
 Fct5YSu+D1D0DaLvih4ovTZyRYKhzSrXWtJttY4Kx8jOYXjv9LA5LfUTH0z3lJ0xU1EdfsmC
 olMdZGyYGEHrUqQtcbdC1Y9Gc4jdijLEMktQrtH+81FGtd+0PzDpes47DSr6AoDVDEjAzsOU
 OH+yk1xYaPYwKzkZobAbk3O2JYdQwV72lj5vqLc8n1BB+xf+9OuHq8PXnVSs4WdIG1XZERpA
 19+deGgqu+cDf5whnZuX9DGZ11mlzXN/+aMUarAu5H89uzJFSKjO+L2aeI/UvKYAr+TV8Zi4
 1DfVEXdeJZhFAZ/csK7hQ=
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="42715852"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Uh5Zr9fz9/X9w6BXmEcU1CpGNKkPlSh7ArrYQ4m7yvaS8scnozTrM4e5D7wfxOXjk+8Z3HHflvJEh6QgreL/3/klN/d6jMLNfelHs2oJ7wHhgYQQbULdwv0gD7q4LWShj7HgwqWQtz1iqLJI/53pIxxdmQ1RsMbiKu2gTGfJQTaGU3Wu2TjWwg145mkItO7RJXyadTqh04fSyYzIsgHYOeqmkZK09FN29OUQrn0Zt/Z3r7/ohIYj8Yfucb5C76kViTNfqiGYw6CKjJJ1DTpwBDTjrAiTnYGkj9nROsglpcIbrm3rQza080M26uA+BSb9VMeSU/1wwboUq32KwSdVmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xEgcVM+Nvzkld4Ycor3ZvY74UftrxJJGUnWGGB+VW1k=;
 b=mPtwuhx7+XHf71oCUwSRQSs0HfSdOI1Lru9gIL36UgssPMYyUZ6gDgMS0Exi6w6cLSBkjnZmP8CdNcikjwVGsWYjUaOurZVlZZ9F/4dOSUH97dOIzHhKROJUgv1eUqW/dvV6AcMI1uhuCpjbkviehQREJZVwAnVaCCqhIwu0etaRkELTsa8fH/ewgrvKnv8zRErHXqUMQn/l96v2azhdNiQrPcMyAfEV9/7iQIoJsl9Jc6/eNJ+4KlGhtdvTPM9TCbBgsObpP/ouEuib6CX5KZjs4QKvHWSQkQG4l0L4fFB+cNAz9FfQH6zw9FqhvHDn0w7GfQQGzpyzZRnEeDEZPA==
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=xEgcVM+Nvzkld4Ycor3ZvY74UftrxJJGUnWGGB+VW1k=;
 b=B3XTBMJNvj9dF4VGrduSSwy2fiYFAUuXnKJdIqIDeoQfqAFpk4kVdU5cea426aMLYTPRQdsVGMymZu4EVCjypLfWhkjDFyQjdRgg2/85MPbghaCJN2DNPDgUZzMuoPKNwanCzB4sXuYJjOI9UGKlU5RagAq+kW0lIG7jPOpkaHE=
Date: Thu, 29 Apr 2021 15:17:16 +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>, George Dunlap
	<george.dunlap@citrix.com>
Subject: Re: [PATCH v2 01/12] x86/p2m: set_{foreign,mmio}_p2m_entry() are
 HVM-only
Message-ID: <YIqx3LahSx1bmgNo@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <4b842581-e24d-6b74-eef5-7ac48f0ff0a4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <4b842581-e24d-6b74-eef5-7ac48f0ff0a4@suse.com>
X-ClientProxiedBy: MR2P264CA0087.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::27) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 266b1be1-03c6-419e-db0c-08d90b111f40
X-MS-TrafficTypeDiagnostic: DM6PR03MB5065:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB50652959CCB112F8A13EFCE58F5F9@DM6PR03MB5065.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8273;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: UjN5E+nZgeqUdVajQ1Kgkrm42kv+LBJzVpnZTLA4X68jfh4bAhle20MGsKRQ4Q/Wye44mStjErqYUh5MapRvGzos830+7uhvJECiHot6YjjXmFHUDecXp8EAn3q3yGTreqx3TI95b9IszwzBmS2CnEyzXLRWxGI35ESToI4djXuCjRKqWvNKqymhK530blFPYkqoH3fW+LxicReCn8HDNCQETH6ch1XC1Ku5RRDaIsk/cLL1IloTHug7PxJ1jpOEneP1E1RiFgCRZDR8osET7wJ/9HZatzXwvPx2E75hUZ6kW900vMVZdGuuuLzJ3DlpW3LmyhVjnkgvkpjE1d3MqYkTjoVcyj0GwwtnBFRs/nSW9+l7t2Gzwy5DsBALE7t4lwCvwGm1jznMzV0Ifu3JF63JBAZnGjOE984LiKfhXawJox9MHSWtG+6EToJGEjBd7gh69jp+SaX8GPYcWOro5W/Hpcp7BKkLktzzO+BjowAYmZ0+pMfJW3ibx6bMVuIeZuwjTJaA0FZPXD0p39QmT5mOjCtZAcCU1z5trI1EWMXwO+R7YxQLf12EhCFXiHdgTvQWRAWk23JwkeZnCgnYiJoW7f7Te6XEINft2aBF+bMIHjGTmXq7+Na1P6FqJVf7EMdkBGgQuuDYpYrG3MGqTqD+jXFZpRhCQkD9XhEdlg0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(396003)(376002)(136003)(39860400002)(346002)(366004)(66946007)(66476007)(6496006)(16526019)(316002)(85182001)(54906003)(26005)(186003)(5660300002)(956004)(33716001)(107886003)(478600001)(6486002)(8936002)(86362001)(38100700002)(6666004)(66556008)(4326008)(6916009)(2906002)(8676002)(9686003)(4744005)(70780200001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?8IcDvtI/w9yK67NxtGXW3q0xo8xRZf8+kqBuPin?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 266b1be1-03c6-419e-db0c-08d90b111f40
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 13:17:21.7544
 (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: aj7RDryQeLY+9xPr8xx44c5MwFaRYaOEuvBU0SRoRo9PjIJ2JK9+E92dmArK9QtbsXQrEXOSYuiAS2J6ZU6D5Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5065
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:05:41PM +0200, Jan Beulich wrote:
> Extend a respective #ifdef from inside set_typed_p2m_entry() to around
> all three functions. Add ASSERT_UNREACHABLE() to the latter one's safety
> check path.

Wouldn't it be better to also move the prototypes in p2m.h into a
CONFIG_HVM guarded region, so that it fails at compile time rather
than link time?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:19:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:19:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120012.226920 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6a6-0001mB-Mb; Thu, 29 Apr 2021 13:19:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120012.226920; Thu, 29 Apr 2021 13:19:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6a6-0001m4-JY; Thu, 29 Apr 2021 13:19:50 +0000
Received: by outflank-mailman (input) for mailman id 120012;
 Thu, 29 Apr 2021 13:19:49 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc6a5-0001ll-0p
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:19:49 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id de947845-3734-4545-8f5c-1edd2c518c8c;
 Thu, 29 Apr 2021 13:19:48 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 9A667B12E;
 Thu, 29 Apr 2021 13:19: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: de947845-3734-4545-8f5c-1edd2c518c8c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619702387; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=WUojYK+ADZ+pn5Dj/+VL+HIYJ8qwn0dfSX5cpYO46so=;
	b=X49POZH181Lf4PZd3eCu7zT0pji5xLzRIbs6JJQMO7XzoB+2JZVUziAiDWJ7jAaUw3uQ5u
	W2WSFf9vASmGdIKuZfn92MGDZJUj8ejWz7drd2oxuhmqH/bXYkZLl4mTCNnuTInd3ExEqQ
	MuTQ3+WxgP1FnDrtGPrWD1ZdoEvX9QI=
Subject: Re: [PATCH v3 3/3] docs/doxygen: doxygen documentation for
 grant_table.h
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>, wei.chen@arm.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20210426153741.26904-1-luca.fancellu@arm.com>
 <20210426153741.26904-4-luca.fancellu@arm.com>
 <eae12602-0616-9363-c8c6-ef6bbd78673c@suse.com>
 <E47AFE69-CA75-468D-868D-182F78C6992C@arm.com>
 <d50b05f7-f644-0123-9994-d31668bd5b5f@suse.com>
 <38004B72-8F91-4B4E-843E-B80911DC48B3@arm.com>
 <843b7489-bf08-7313-767c-9c9f1c719736@suse.com>
 <9B01F170-25AC-4777-B913-C46358F49D28@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5931c416-4fb3-d246-e406-481333223dad@suse.com>
Date: Thu, 29 Apr 2021 15:19:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <9B01F170-25AC-4777-B913-C46358F49D28@arm.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 29.04.2021 15:15, Luca Fancellu wrote:
> That’s great, I’m going to push the v4 for this serie soon, now that the comment is fixed,
> I can include it in the docs too, do you agree?

Of course (provided the patch will not get objected to).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:22:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:22:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120020.226932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6cW-0002fk-AI; Thu, 29 Apr 2021 13:22:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120020.226932; Thu, 29 Apr 2021 13:22: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 1lc6cW-0002fd-5W; Thu, 29 Apr 2021 13:22:20 +0000
Received: by outflank-mailman (input) for mailman id 120020;
 Thu, 29 Apr 2021 13:22:18 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x+wV=J2=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lc6cU-0002fG-Ix
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:22:18 +0000
Received: from mx.upb.ro (unknown [141.85.13.210])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4d729eda-62e3-4bad-af83-eb9795582a1d;
 Thu, 29 Apr 2021 13:22:17 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 0D8F5B56005D;
 Thu, 29 Apr 2021 16:22:16 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id mxzMJmped_IR; Thu, 29 Apr 2021 16:22:14 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 2E353B56010D;
 Thu, 29 Apr 2021 16:22:14 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 5jb0hJhPIRwG; Thu, 29 Apr 2021 16:22:14 +0300 (EEST)
Received: from [192.168.1.35] (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 5CC83B56005D;
 Thu, 29 Apr 2021 16:22:13 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4d729eda-62e3-4bad-af83-eb9795582a1d
X-Virus-Scanned: amavisd-new at upb.ro
Subject: Re: [PATCH] x86/ACPI: Fix build error when tboot is disabled
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: <79df12ade0840338590f440cd064052a961fe23b.1619698239.git.costin.lupu@cs.pub.ro>
 <ce98780e-5a32-9faf-832e-04eae6cdfbcb@suse.com>
From: Costin Lupu <costin.lupu@cs.pub.ro>
Message-ID: <32cb6cda-5522-02fc-f800-9e4c279e45f6@cs.pub.ro>
Date: Thu, 29 Apr 2021 16:22:13 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <ce98780e-5a32-9faf-832e-04eae6cdfbcb@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 4/29/21 3:40 PM, Jan Beulich wrote:
> On 29.04.2021 14:11, Costin Lupu wrote:
>> When tboot is disabled via menuconfig we get undefined reference error for
>> g_tboot_shared. This patch fixes that by disabling the causing source code
>> when tboot is disabled.
> 
> There must be more to this: Our shim config also builds with tboot
> disabled, without running into any build issue. Furthermore ...
> 
>> --- a/xen/arch/x86/acpi/power.c
>> +++ b/xen/arch/x86/acpi/power.c
>> @@ -407,6 +407,7 @@ static int acpi_get_wake_status(void)
>>      return val;
>>  }
>>  
>> +#ifdef CONFIG_TBOOT
>>  static void tboot_sleep(u8 sleep_state)
>>  {
>>      uint32_t shutdown_type;
>> @@ -451,18 +452,21 @@ static void tboot_sleep(u8 sleep_state)
>>  
>>      tboot_shutdown(shutdown_type);
>>  }
>> +#endif
>>  
>>  /* System is really put into sleep state by this stub */
>>  acpi_status acpi_enter_sleep_state(u8 sleep_state)
>>  {
>>      acpi_status status;
>>  
>> +#ifdef CONFIG_TBOOT
>>      if ( tboot_in_measured_env() )
>>      {
>>          tboot_sleep(sleep_state);
>>          printk(XENLOG_ERR "TBOOT failed entering s3 state\n");
>>          return_ACPI_STATUS(AE_ERROR);
>>      }
>> +#endif
> 
> ... tboot_in_measured_env() already has a stub returning 0 when
> !TBOOT (which is what I would have recommended instead of the
> #ifdef-ary).
> 
> If there is a specific case where the compiler fails to DCE the
> offending code, then you need to describe this in sufficient
> detail.

Yes, indeed. My bad, it is for a debug build with -O0, so without DCE.

Cheers,
Costin


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:26:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:26:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120028.226944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6gj-0002qn-RQ; Thu, 29 Apr 2021 13:26:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120028.226944; Thu, 29 Apr 2021 13:26: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 1lc6gj-0002qg-OM; Thu, 29 Apr 2021 13:26:41 +0000
Received: by outflank-mailman (input) for mailman id 120028;
 Thu, 29 Apr 2021 13:26:41 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc6gj-0002qb-3d
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:26:41 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id def364bf-6d6d-4c5d-9a9b-de402cc93860;
 Thu, 29 Apr 2021 13:26:39 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D22C8B4AF;
 Thu, 29 Apr 2021 13:26: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: def364bf-6d6d-4c5d-9a9b-de402cc93860
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619702798; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=rI5XBE2fV5gz1Y+GT0S2AL6B7Ff0xoPq4hxa6rQRBbk=;
	b=atfy46RjhdRXqYn6zKoph28BYfsezf/hS03AiUnbIQ/vFA3eoAufFvdM+9uHGp4Tw2F7j2
	uNu7cQ4LIbEI3+JnPVv656Usy8MA2GQ04XE7k/QiQDVFpgQS+/wKkPMmnnzkbUBqcReRdc
	Bk2zUMUPEG3yATp06O98rhh624ZtG/o=
Subject: Re: [PATCH v4 3/3] unzstd: make helper symbols static
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <12054cba-4386-0dbf-46fd-41ace0344f8e@suse.com>
 <759c8524-cc01-fac8-bc62-0ba6558477bd@suse.com>
 <cb8fa703-f421-ce55-811a-d4a649bc201a@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1696e5f2-481a-5a7f-258d-b2a0679b041f@suse.com>
Date: Thu, 29 Apr 2021 15:26:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <cb8fa703-f421-ce55-811a-d4a649bc201a@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 29.04.2021 13:27, Julien Grall wrote:
> On 21/04/2021 11:22, Jan Beulich wrote:
>> While for the original library's purposes these functions of course want
>> to be externally exposed, we don't need this, and we also don't want
>> this both to prevent unintended use and to keep the name space tidy.
>> (When functions have no callers at all, wrap them with a suitable
>> #ifdef.) This has the added benefit of reducing the resulting binary
>> size - while this is all .init code, it's still desirable to not carry
>> dead code.
> 
> So I understand the desire to keep the code close to Linux and removing 
> the dead code. However I am still not convinced that the approach taken 
> is actually worth the amount of memory saved.
> 
> How much memory are we talking about here?

There are no (runtime) memory savings, as is being said by the
description. There are savings on the image and symbol table sizes
(see below - .*.0/ holding files as produced without the patch
applied, while .*.1/ holding output with it in place), the image
size reduction part of which is - as also expressed by the
description - a nice side effect, but not the main motivation for
the change.

Jan

xen/.debug-info.0/:
total 64124
-rwxr-xr-x 1 jbeulich users  2817324 Apr 29 15:13 xen
-rwxr-xr-x 1 jbeulich users 33159787 Apr 29 15:13 xen.efi
-rw-r--r-- 1 jbeulich users   382568 Apr 29 15:13 xen.efi.map
-rw-r--r-- 1 jbeulich users  1233207 Apr 29 15:13 xen.gz
-rwxr-xr-x 1 jbeulich users 27616424 Apr 29 15:13 xen-syms
-rw-r--r-- 1 jbeulich users   382569 Apr 29 15:13 xen-syms.map

xen/.debug-info.1/:
total 64092
-rwxr-xr-x 1 jbeulich users  2809132 Apr 29 15:15 xen
-rwxr-xr-x 1 jbeulich users 33155283 Apr 29 15:14 xen.efi
-rw-r--r-- 1 jbeulich users   380862 Apr 29 15:15 xen.efi.map
-rw-r--r-- 1 jbeulich users  1230365 Apr 29 15:15 xen.gz
-rwxr-xr-x 1 jbeulich users 27608800 Apr 29 15:14 xen-syms
-rw-r--r-- 1 jbeulich users   380863 Apr 29 15:14 xen-syms.map

xen/.stripped.0/:
total 10876
-rwxr-xr-x 1 jbeulich users 2817324 Apr 29 15:16 xen
-rwxr-xr-x 1 jbeulich users 3143360 Apr 29 15:16 xen.efi
-rw-r--r-- 1 jbeulich users  382568 Apr 29 15:16 xen.efi.map
-rw-r--r-- 1 jbeulich users 1233197 Apr 29 15:16 xen.gz
-rwxr-xr-x 1 jbeulich users 3169360 Apr 29 15:16 xen-syms
-rw-r--r-- 1 jbeulich users  382569 Apr 29 15:16 xen-syms.map

xen/.stripped.1/:
total 10840
-rwxr-xr-x 1 jbeulich users 2809132 Apr 29 15:15 xen
-rwxr-xr-x 1 jbeulich users 3136552 Apr 29 15:15 xen.efi
-rw-r--r-- 1 jbeulich users  380862 Apr 29 15:15 xen.efi.map
-rw-r--r-- 1 jbeulich users 1230352 Apr 29 15:15 xen.gz
-rwxr-xr-x 1 jbeulich users 3159376 Apr 29 15:15 xen-syms
-rw-r--r-- 1 jbeulich users  380863 Apr 29 15:15 xen-syms.map



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:40:44 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:40:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120033.226955 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6u3-0004WR-0b; Thu, 29 Apr 2021 13:40:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120033.226955; Thu, 29 Apr 2021 13:40:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6u2-0004WK-Tl; Thu, 29 Apr 2021 13:40:26 +0000
Received: by outflank-mailman (input) for mailman id 120033;
 Thu, 29 Apr 2021 13:40:25 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc6u1-0004WF-EF
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:40:25 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id cde30a05-ed0e-4ae1-b709-e53fd06200e7;
 Thu, 29 Apr 2021 13:40:24 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 74330B293;
 Thu, 29 Apr 2021 13:40: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: cde30a05-ed0e-4ae1-b709-e53fd06200e7
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619703623; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=D/BuXRS814jOEGBV0Sd0wSce8NKS3huwM2nKbpbHMvc=;
	b=uVffAl/b+3E53FD5OKtNlqfIVc6BfLZMFfGSAfC4/14QLh1VDX/JUjvop5zR1sHI5iR1Rd
	HRLzW9viVcjkaCkzIwh+EpGMoLp+aAts7uzpI3WS37oBYdm7wpJxGx/aCQRM/cZMoOvgHG
	NygEesmy3v4a02cYpx+0UGeurWTetL0=
Subject: Re: [PATCH v3] gnttab: defer allocation of status frame tracking
 array
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2397cd4-040e-3cc0-22d8-3f65d01f9326@suse.com>
 <581f843f-25de-bf8a-e8b9-7a407158bd4f@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <150783e6-1bc5-d646-354b-9cddd2f236c2@suse.com>
Date: Thu, 29 Apr 2021 15:40:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <581f843f-25de-bf8a-e8b9-7a407158bd4f@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 29.04.2021 15:15, Julien Grall wrote:
> On 15/04/2021 10:41, Jan Beulich wrote:
>> This array can be large when many grant frames are permitted; avoid
>> allocating it when it's not going to be used anyway, by doing this only
>> in gnttab_populate_status_frames().
> 
> Given the controversy of the change, I would suggest to summarize why 
> this approach is considered to be ok in the commit message.

I've added "While the delaying of the respective memory allocation adds
possible reasons for failure of the respective enclosing operations,
there are other memory allocations there already, so callers can't
expect these operations to always succeed anyway."

>> @@ -1767,18 +1778,23 @@ status_alloc_failed:
>>           free_xenheap_page(gt->status[i]);
>>           gt->status[i] = NULL;
>>       }
> 
> NIT: can you add a newline here and...
> 
>> +    if ( !nr_status_frames(gt) )
>> +    {
>> +        xfree(gt->status);
>> +        gt->status = ZERO_BLOCK_PTR;
>> +    }
> 
> ... here for readability.

Can do.

>> @@ -1833,12 +1849,11 @@ gnttab_unpopulate_status_frames(struct d
>>           page_set_owner(pg, NULL);
>>       }
>>   
>> -    for ( i = 0; i < nr_status_frames(gt); i++ )
>> -    {
>> -        free_xenheap_page(gt->status[i]);
>> -        gt->status[i] = NULL;
>> -    }
>>       gt->nr_status_frames = 0;
>> +    for ( i = 0; i < n; i++ )
>> +        free_xenheap_page(gt->status[i]);
>> +    xfree(gt->status);
>> +    gt->status = ZERO_BLOCK_PTR;
> The new position of the for loop seems unrelated to the purpose of the 
> patch. May I ask why this was done?

Since I was touching this anyway, I thought I could also bring it
into "canonical" order: Up-ing of an array's size should always
first populate the higher entries, then bump the upper bound.
Shrinking of an array's size should always first shrink the upper
bound, then un-populate the higher entries. This may not strictly
be needed here, but I think code we have would better not set bad
precedents (which may otherwise propagate elsewhere).

>> @@ -4047,11 +4062,12 @@ int gnttab_acquire_resource(
>>           if ( gt->gt_version != 2 )
>>               break;
>>   
>> +        rc = gnttab_get_status_frame_mfn(d, final_frame, &tmp);
> 
> NIT: It wasn't obvious to me why gnttab_get_status_frame_mfn() is moved 
> before gt->status. May I suggest to add a in-code comment abouve the 
> ordering?

I've added

        /* This may change gt->status, so has to happen before setting vaddrs. */ 

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:43:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:43:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120037.226968 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc6wY-0004dj-E6; Thu, 29 Apr 2021 13:43:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120037.226968; Thu, 29 Apr 2021 13: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 1lc6wY-0004dc-B4; Thu, 29 Apr 2021 13:43:02 +0000
Received: by outflank-mailman (input) for mailman id 120037;
 Thu, 29 Apr 2021 13:43:01 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc6wX-0004dX-Fa
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:43:01 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a182b1e8-528f-4112-aa29-38e35d2beead;
 Thu, 29 Apr 2021 13:43:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E9C34B286;
 Thu, 29 Apr 2021 13:42: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: a182b1e8-528f-4112-aa29-38e35d2beead
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619703780; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=uuUaKh06of2ktr9Q3/hKc7QkSEccf38zGi6lripnjTI=;
	b=HaPFUSpn6bLe8KW2D1opNh4pcEkWTlAgLnkeJv2ojxhItdc433XcRTJguG5C2UdtSp371W
	6QTO0gn07gd/6RcHJy9+5h6Lb4mAVX7H1NbYFX9Vh+TYy+70QOr3dCT454NEHQPge2DJfP
	TN6ZC6lFMy2pUBYmfSDhnudpDeffuzA=
Subject: Re: [PATCH] x86/ACPI: Fix build error when tboot is disabled
To: Costin Lupu <costin.lupu@cs.pub.ro>
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: <79df12ade0840338590f440cd064052a961fe23b.1619698239.git.costin.lupu@cs.pub.ro>
 <ce98780e-5a32-9faf-832e-04eae6cdfbcb@suse.com>
 <32cb6cda-5522-02fc-f800-9e4c279e45f6@cs.pub.ro>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <fdcfbbcb-7657-6a48-b0a5-21b02593b36e@suse.com>
Date: Thu, 29 Apr 2021 15:42:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <32cb6cda-5522-02fc-f800-9e4c279e45f6@cs.pub.ro>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 29.04.2021 15:22, Costin Lupu wrote:
> On 4/29/21 3:40 PM, Jan Beulich wrote:
>> If there is a specific case where the compiler fails to DCE the
>> offending code, then you need to describe this in sufficient
>> detail.
> 
> Yes, indeed. My bad, it is for a debug build with -O0, so without DCE.

Iirc there's a series pending to switch to -Og; I don't think we
build with -O0 under any circumstances (for this very reason).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:51:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:51:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120044.226982 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc74u-0005a9-BH; Thu, 29 Apr 2021 13:51:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120044.226982; Thu, 29 Apr 2021 13:51:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc74u-0005a2-80; Thu, 29 Apr 2021 13:51:40 +0000
Received: by outflank-mailman (input) for mailman id 120044;
 Thu, 29 Apr 2021 13:51:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc74s-0005Zx-Oi
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:51:38 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e3c0f7cb-8acd-4291-a432-2f9babb62434;
 Thu, 29 Apr 2021 13:51:37 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id B5C86AF3B;
 Thu, 29 Apr 2021 13:51: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: e3c0f7cb-8acd-4291-a432-2f9babb62434
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619704296; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=X0Qb7HReSrvAVRt2FzgRgMXEnfz9Tn2WlratBNNPF8U=;
	b=gWJEtliq/0vouE93eqkZaIOT8xqSLfCTxyQ1S3sfje3CQwdPdZDpl0a45kOX2z0KoszaJM
	O0OQthHIcRY7CaITXzwvYztKZdOZ8yBrw9HW/hmOaHiMTRnc937KagBR/YRTDitsG5NjmP
	1vQiF/omMYWfXXj/GYjP7k3O5BmVyNI=
Subject: Re: [PATCH v4 3/3] x86/time: avoid reading the platform timer in
 rendezvous functions
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: <d929903c-0e7a-adb9-3317-b66782f13b36@suse.com>
 <bdf9640d-3c70-461f-6680-9ce883c19719@suse.com>
 <YIqsMi4kyf3Xohmc@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <5bb44cdc-0ec8-e62b-315b-08e99baebf22@suse.com>
Date: Thu, 29 Apr 2021 15:51:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIqsMi4kyf3Xohmc@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 29.04.2021 14:53, Roger Pau Monné wrote:
> On Thu, Apr 01, 2021 at 11:55:10AM +0200, Jan Beulich wrote:
>> Reading the platform timer isn't cheap, so we'd better avoid it when the
>> resulting value is of no interest to anyone.
>>
>> The consumer of master_stime, obtained by
>> time_calibration_{std,tsc}_rendezvous() and propagated through
>> this_cpu(cpu_calibration), is local_time_calibration(). With
>> CONSTANT_TSC the latter function uses an early exit path, which doesn't
>> explicitly use the field. While this_cpu(cpu_calibration) (including the
>> master_stime field) gets propagated to this_cpu(cpu_time).stamp on that
>> path, both structures' fields get consumed only by the !CONSTANT_TSC
>> logic of the function.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> Albeit as said on my other email I would prefer performance related
> changes like this one to be accompanied with some proof that they
> actually make a difference, or else we risk making the code more
> complicated for no concrete benefit.

I'm not sure that's always sensible or useful. Removing an operation
that may take hundreds of clocks is surely not going to make things
worse performance-wise. Whether it's measurable in any way with
real world workloads is hard to predict. Micro-measurement, as
expected, shows an improvement.

>> --- a/xen/arch/x86/time.c
>> +++ b/xen/arch/x86/time.c
>> @@ -52,6 +52,7 @@ unsigned long pit0_ticks;
>>  struct cpu_time_stamp {
>>      u64 local_tsc;
>>      s_time_t local_stime;
>> +    /* Next field unconditionally valid only when !CONSTANT_TSC. */
> 
> Could you also mention this is only true for the cpu_time_stamp that's
> used in cpu_calibration?
> 
> For ap_bringup_ref master_stime is valid regardless of CONSTANT_TSC.

Well, that's precisely why I put "unconditionally" there. I'm not
convinced it's helpful to point out ap_bringup_ref in particular,
as the comment would then likely not get updated when yet another
instance appears which sets the field in all cases. If you have a
suggestion on how to word this better without mentioning particular
instances of the struct, I'll be happy to consider taking that.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 13:52:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 13:52:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120046.226995 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc75G-0005eW-K5; Thu, 29 Apr 2021 13:52:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120046.226995; Thu, 29 Apr 2021 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 1lc75G-0005eP-Gm; Thu, 29 Apr 2021 13:52:02 +0000
Received: by outflank-mailman (input) for mailman id 120046;
 Thu, 29 Apr 2021 13:52:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/KXr=J2=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lc75E-0005e6-Tw
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 13:52:01 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2a82c594-4acc-4912-86c9-2acffd763b54;
 Thu, 29 Apr 2021 13:51: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: 2a82c594-4acc-4912-86c9-2acffd763b54
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619704319;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=J0rkSehxRnaP5OEe+FeL+nBVXIlDkDepSVoh1kZEQLU=;
  b=SvLZi2uuKOs4BxDCzQFezho5genhWjrToJx367WT2lD726/7/k3M3V68
   QsmUy7j1ZCs1HeCqY8d3iFl09BawKWnDUt7Fip/7km6l5Ol1zo9iZyn5F
   RTjph7QnEkCTrGZ/tN+dFoLQm1VXEO7ab8eMOY8ihI3wTLbh8wviaT9ov
   U=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: /RnKoD8LpbVW7jBNZMw1h2g3o9mumYRsDm219nAXpSg+PkgEYL9nR0VeFYwZyNTgRcglOHRwTf
 Uf1JYAeWNRVGFWadVxZsWrHRACNTgEftUYTxB7txAOimpRyKpFiZueJazuavIkBDjZ25hPzL8W
 bICBHvgBw3bVjIs69k/FGGI8vNpySVwAvai6Y8YaEl8EOw1J68s7qBx5DyLQDn6Fxj//nen6mf
 vVaPkr7WSdtQuBZt+qUqG26zFJ+OxOh4FNTQwTJI8Tg+ZgzswzyWqnhCJl9AEn57gHvLHd9Yw0
 z3Y=
X-SBRS: 5.1
X-MesageID: 42822720
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:QChOFa4xqpb4QliKKAPXwT2CI+orLtY04lQ7vn1ZYRZeftWE0+
 Wnm/oG3RH54QxhIE0Is9aGJaWGXDf4/Zl6/YEeMd6ZLXLbkUGvK5xv6pan/i34F0TFh5Bg/I
 ppbqQWMqyVMXFUlsD/iTPXL/8Bx529/LmslaPiyR5WPHhXQoVByys8NQqBCE1xQ2B9dOsEPb
 6R/NBOqTblWVl/VLXdOlA/U+LOp8LGmfvdCHZta3EawTKDgj+y5LnxHwLw5GZ5bxp03bwg/W
 LZ+jaY2oyfsuq2whKZ92jf44U+oqqF9vJ/BdeBgsVQFzP0igzAXvUDZ5S+ulkOwd2H2RIDqv
 eJjhsqI8o2y165RAqIiCqo8zPPlBA063Gn80OSghLY0K7EbQN/IMJbnopSbhbQr2Eages56r
 9Cwn6C3qAneS/orWDX78PSXxt3m0Lxi3wkluIYkhVkIPsjQY4UhoQF50teDJoJWA784ps2Cf
 RjAajnlYRrWGLfRHjDpWFk3NGlGlg1ARuCRFEP/uOP1Tw+ph1E5npd78QFhX8L6J80D6NP7+
 OBFr5n0ItPXcN+V9MKOM4xBeC+EXfESw7AOCapOFziUJoKInTXtvfMkf4IzdDvU5QS15M5hJ
 nIFGlAvWp3QUjpEsHm5uwDzjn9BE60Ri/kwN1S79xCo7X5AID3OTCeUjkV4oOdisRaKcXBQP
 64JJ9fR8X/JXDyXbtI2wGWYeggFVAuFOYcoc0yUU6Cqob2EaiCjJ2vTN/jYJ7WVRctQCfWH2
 YKVjmbHrQ70mmbHlvDxCX3d1yoUErl5p50GLXd5IEoufUwH7wJjQgPlU783MuCLjpPv8UNDT
 xDCaKilrn+qXi9/G7O4WksJwFUCVxN5q78F3xQowsHNF71bKYDt92TdXs65gr6GjZvC8XMEA
 BeoFxr+aW4a5yIrBpSdO6aDg==
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="42822720"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Yf3TYGEqcf6QQCGuNB7jh67v1z/hF68b5DzJ74RMW7/SESlqwjjKZ6E3DfP0qL82quOXrmbIQ/CvfE0aZ+G16M7uJY00FafAWzN/EkVW/gX8knbDFHM2/Sgl9fCtv7AfLn6N4euAlf9RtLiw6tQKKIVE+3gkuJh3NbTX3qBaUgZqjNH950OSmcY5jeG6KN0vuB8nr/Z2E2eSHtRO3Sa17tb/Un39uKBcB3iYdmb0d6vhPdF/2+nzh+K1tpt/Faw2r107kdTPBw6RR0OSi6gJnt07Zvwhz6mK77BJhvuEuWx3WhFvZ2Q6O99Cqf++nCu+JYIg9MQy73+4aklobMz/ww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=J0rkSehxRnaP5OEe+FeL+nBVXIlDkDepSVoh1kZEQLU=;
 b=UL927m5XzQBXzBQ3ZLGw+TgbfbYFtlwQkNwSIKxsDgd/U/NLNOTt8sixTGAnNFIhfD6NwlTplyvzBVoVuJm6az8tgGb0olo0TOdLQApy+w8BsQLyI8T0MCVfnMDqmy7XNUXjGmZVP+wubtrmZuZyJB19x4wKYFsopweM8myTfdLxrO0HtbeQqRqEaOmlgWmldpA+Xym91QT3LlNC9CogLUbU8V2rfoA/NHAhv8db+Sg5id2A/JstrQRmTNBGRvdzwZkuGuVmE5kur/vDVJjjRYRw/CeDCZsJxd1BrUDsUCpedMKmxjijtVmtSuDPHaDZ1jQSbBE4Rx3LEOnDF4siJg==
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=J0rkSehxRnaP5OEe+FeL+nBVXIlDkDepSVoh1kZEQLU=;
 b=i7p4lF/ykb1y5w/PFMoQXJVH6Rw7RK+y4/keXq+7H00hRzGKCYzCgltq/yMs/MC3H3vmdg0+vDYJawEDnTP9dMTSedyQ334IqSVi0GlDlIGj5iNlRwfXKbwd1yOpC0XdjRCX7xjfVbuDFl7YTGXZDP3W1GtZjuefDApKF/ySfE8=
To: Jan Beulich <jbeulich@suse.com>, Costin Lupu <costin.lupu@cs.pub.ro>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, <xen-devel@lists.xenproject.org>
References: <79df12ade0840338590f440cd064052a961fe23b.1619698239.git.costin.lupu@cs.pub.ro>
 <ce98780e-5a32-9faf-832e-04eae6cdfbcb@suse.com>
 <32cb6cda-5522-02fc-f800-9e4c279e45f6@cs.pub.ro>
 <fdcfbbcb-7657-6a48-b0a5-21b02593b36e@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/ACPI: Fix build error when tboot is disabled
Message-ID: <410b3c74-f718-d4b6-ace3-9c26a6ba06e3@citrix.com>
Date: Thu, 29 Apr 2021 14:51:48 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <fdcfbbcb-7657-6a48-b0a5-21b02593b36e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P265CA0230.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:b::26) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 973730cc-af02-4a9f-b3a8-08d90b15f255
X-MS-TrafficTypeDiagnostic: BYAPR03MB3559:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB3559EB531CE4C355C6D11FA2BA5F9@BYAPR03MB3559.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: /AczAqZR3bOOaG6tJGmQj25A5r12u2rpCSEEkPI9ZiTPmEalAPbw9ll859qkmapo5k9udqQhgjPAPfIHGzGNE9mDQFpE8rT3cR6WcktVDcJAunNk8ZmHP0a6MMniR2huO7/cfpdrj0FOISoaL6Z8JRwTImi+oaLi9lsWhY5uf6oxzmgV6GQQoNQKgGashFJkrunAkkt2epKIy0JSMmppXChCkczJjlr4lY8yaF2mJ1CzhN6I0Iil5q7y9B7kAJqzy9bfmd2iXwF9y1bw352TFq+7Io+Qj7DRtvrnW6KhJ5UIUkI2gJwqUW4KEm7pddVVs+u9ERPx6xMMnYPg2rilLEzdEX7CQj/K3VxDnHa8WD09PRwQL4Wjk08EXFipmRuea+pvPHMjEalsDOhnbvwweQXn5QUJ7YGVB1v/pOMlExtKcXkH2z67nbFWI/bhc3Ma/PrkU7NVRt5TJkiNpSo1utnZZ156t8bCRB4ZiU3N06hfWGR+N3D2BahFw9iAfXys5NTmsitpv9lbpKRC2hMH6NO0gQrF4q8LBbweRpWaxKmoRrdy5KrVc1/C+LDDKKiOtE9dqrlq5IKu3giWnI91oRk1RiKwxBQdkytTc7m/laJCzpqPFAKXRuRPl29KC/tUbicVHIRRelsX1Pv5GARa6ufDX3VtwtDg5YRdK+CUmUvDswjL/Ln/4cO2rINBmXus
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(376002)(39860400002)(366004)(346002)(6666004)(31696002)(478600001)(31686004)(66476007)(16526019)(66556008)(66946007)(956004)(26005)(8676002)(36756003)(8936002)(5660300002)(316002)(6486002)(186003)(2616005)(4326008)(86362001)(53546011)(16576012)(2906002)(110136005)(54906003)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?x/8/pPKW9S03yN4m6xxNoXamTQMJtUdVMO9XuAt?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 973730cc-af02-4a9f-b3a8-08d90b15f255
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 13:51:53.9456
 (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: FJAY1tpBbiHrDtuAgZjrHUcLiutq06+1Zzy82WJ6qjohEKgKhQOchM824iQhBoq3K40Zko4eFpT5JLEaupQxiP/gcFhF+FItWVngp3Qo3lk=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB3559
X-OriginatorOrg: citrix.com

On 29/04/2021 14:42, Jan Beulich wrote:
> On 29.04.2021 15:22, Costin Lupu wrote:
>> On 4/29/21 3:40 PM, Jan Beulich wrote:
>>> If there is a specific case where the compiler fails to DCE the
>>> offending code, then you need to describe this in sufficient
>>> detail.
>> Yes, indeed. My bad, it is for a debug build with -O0, so without DCE.
> Iirc there's a series pending to switch to -Og; I don't think we
> build with -O0 under any circumstances (for this very reason).

-Og is roughly about -O0.9.=C2=A0 There is certainly some trivial DCE
involved, but no optimisations which radically rearrange the code
structure.=C2=A0 The -Og series did survive some randconfig testing, but I
can't guarantee that it was comprehensive.

As for -O0, I think causality is the other way around there.=C2=A0 Wei
elected to rely on DCE for conditional compilation because we didn't
seem to care about compiling at -O0.


Part of me thinks that we ought to cope compiling at any optimisation
level, including -O0, but I doubt I'd like the extra ifdef-ary required
to make that work.

I think we absolutely should have Kconfig to select between -Og/1/2/3,
as well as binutils new microarch levels

~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:09:42 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:09:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120059.227010 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7ME-0006nz-BZ; Thu, 29 Apr 2021 14:09:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120059.227010; Thu, 29 Apr 2021 14: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 1lc7ME-0006ns-6s; Thu, 29 Apr 2021 14:09:34 +0000
Received: by outflank-mailman (input) for mailman id 120059;
 Thu, 29 Apr 2021 14:09:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc7MD-0006nn-4U
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 14:09:33 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a72244b9-74ee-4745-b9b7-8d40458d34f1;
 Thu, 29 Apr 2021 14:09:32 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 354BFAFEF;
 Thu, 29 Apr 2021 14:09: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: a72244b9-74ee-4745-b9b7-8d40458d34f1
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619705371; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=YKda29C6GYFrABuEbzPGpGpuYIDjiSuo344X77Amdyc=;
	b=lFDv8p6eQa6htqjMVnoIzFSjBAiWlCdU7VS5ZS0i+/fXVFmtO707nhHwWkCbxZ4phWuCHW
	7YXE4pf3aMp0CapqEv+PPJLfvV8jPyElGef0WlTJKEH7QBksqKx6oHCWa2Ts6yDzRS982h
	4mL+D63Dpe1vwPmixOzzuZu7Thxl1N4=
Subject: Re: [PATCH v2 01/12] x86/p2m: set_{foreign,mmio}_p2m_entry() are
 HVM-only
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>,
 George Dunlap <george.dunlap@citrix.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <4b842581-e24d-6b74-eef5-7ac48f0ff0a4@suse.com>
 <YIqx3LahSx1bmgNo@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <9dc64292-d87c-77ba-1356-80cb14348973@suse.com>
Date: Thu, 29 Apr 2021 16:09:30 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIqx3LahSx1bmgNo@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 29.04.2021 15:17, Roger Pau Monné wrote:
> On Mon, Apr 12, 2021 at 04:05:41PM +0200, Jan Beulich wrote:
>> Extend a respective #ifdef from inside set_typed_p2m_entry() to around
>> all three functions. Add ASSERT_UNREACHABLE() to the latter one's safety
>> check path.
> 
> Wouldn't it be better to also move the prototypes in p2m.h into a
> CONFIG_HVM guarded region, so that it fails at compile time rather
> than link time?

In the header I'm fearing this ending up as spaghetti more than in
the .c file. I think where possible we may want to do so once we
have a clear / clean set of APIs which are generic vs such which
are HVM-specific (which I expect to be the case once p2m.c as a
whole becomes HVM-only).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:22:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:22:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120070.227042 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7Yv-00007w-Jv; Thu, 29 Apr 2021 14:22:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120070.227042; Thu, 29 Apr 2021 14:22: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 1lc7Yv-00007p-Ee; Thu, 29 Apr 2021 14:22:41 +0000
Received: by outflank-mailman (input) for mailman id 120070;
 Thu, 29 Apr 2021 14:22: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 1lc7Yu-00007h-C9; Thu, 29 Apr 2021 14:22: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 1lc7Yu-00062R-46; Thu, 29 Apr 2021 14:22: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 1lc7Yt-0005Fe-Pb; Thu, 29 Apr 2021 14:22:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lc7Yt-0004HL-P8; Thu, 29 Apr 2021 14:22: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=y3K7j1EbGAVfdx8iyGAKu9axbj2n/9beaYfDCnTLtUI=; b=LJ22MIrC7XBcVkVs8o48fS7dmv
	swsobZsdGIBG/meDEp1iu7X6HN0J2Y5QKNaJ/raQZbXnjD6xB937F/I8JzT5K80V7OEIFH9RvKf6M
	8/VPmnPgZRx0avvmOXnywi4B3ndIIa8j8Qd8zn97gRUJQZhKWewpwukNM59aoDeENnNQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161509-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161509: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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: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-amd64-amd64-libvirt-vhd: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=68a32ba14177d4a21c4a9a941cf1d7aea86d436f
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 14:22:39 +0000

flight 161509 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161509/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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          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-amd64-amd64-libvirt-vhd 14 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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-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

version targeted for testing:
 linux                68a32ba14177d4a21c4a9a941cf1d7aea86d436f
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  271 days
Failing since        152366  2020-08-01 20:49:34 Z  270 days  453 attempts
Testing same since   161509  2021-04-28 17:51:49 Z    0 days    1 attempts

------------------------------------------------------------
5674 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-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 1457834 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:47:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:47:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120077.227057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7wc-0001w0-Jy; Thu, 29 Apr 2021 14:47:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120077.227057; Thu, 29 Apr 2021 14:47: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 1lc7wc-0001vt-Ge; Thu, 29 Apr 2021 14:47:10 +0000
Received: by outflank-mailman (input) for mailman id 120077;
 Thu, 29 Apr 2021 14:47:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sKbL=J2=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lc7wa-0001vo-EM
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 14:47:08 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 356d9e51-bb3c-4020-b062-c28ea55e641f;
 Thu, 29 Apr 2021 14:47:06 +0000 (UTC)
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 B794A1FB;
 Thu, 29 Apr 2021 07:47:05 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 0D4293F73B;
 Thu, 29 Apr 2021 07:47: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: 356d9e51-bb3c-4020-b062-c28ea55e641f
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>,
	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>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: [PATCH v4 0/3] xen/pci: Make PCI passthrough code non-x86 specific
Date: Thu, 29 Apr 2021 15:46:50 +0100
Message-Id: <cover.1619707144.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1

This patch series is preparatory work to implement the PCI passthrough support
for the ARM architecture.

Rahul Singh (3):
  xen/iommu: Move iommu_update_ire_from_msi(..) to xen/iommu.h
  xen/pci: Refactor PCI MSI intercept related code
  xen/pci: Refactor MSI code that implements MSI functionality within
    XEN

 xen/arch/x86/Kconfig                    |  1 +
 xen/drivers/passthrough/Makefile        |  1 +
 xen/drivers/passthrough/msi-intercept.c | 94 +++++++++++++++++++++++++
 xen/drivers/passthrough/pci.c           | 61 ++++------------
 xen/drivers/pci/Kconfig                 |  4 ++
 xen/drivers/vpci/Makefile               |  3 +-
 xen/drivers/vpci/header.c               | 19 ++---
 xen/drivers/vpci/msix.c                 | 55 +++++++++++++++
 xen/drivers/vpci/vpci.c                 |  3 +-
 xen/include/xen/iommu.h                 | 13 +++-
 xen/include/xen/msi-intercept.h         | 56 +++++++++++++++
 xen/include/xen/pci.h                   | 11 +--
 xen/include/xen/vpci.h                  | 41 +++++------
 xen/xsm/flask/hooks.c                   |  8 +--
 14 files changed, 270 insertions(+), 100 deletions(-)
 create mode 100644 xen/drivers/passthrough/msi-intercept.c
 create mode 100644 xen/include/xen/msi-intercept.h

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:47:32 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:47:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120080.227069 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7wy-00021D-1A; Thu, 29 Apr 2021 14:47:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120080.227069; Thu, 29 Apr 2021 14: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 1lc7wx-000216-UO; Thu, 29 Apr 2021 14:47:31 +0000
Received: by outflank-mailman (input) for mailman id 120080;
 Thu, 29 Apr 2021 14:47:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sKbL=J2=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lc7ww-00020q-GK
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 14:47:30 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 4d73e45a-6464-43d6-aaa6-87f0b1fb6232;
 Thu, 29 Apr 2021 14:47:29 +0000 (UTC)
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 051091FB;
 Thu, 29 Apr 2021 07:47:29 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 387803F73B;
 Thu, 29 Apr 2021 07:47: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: 4d73e45a-6464-43d6-aaa6-87f0b1fb6232
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v4 1/3] xen/iommu: Move iommu_update_ire_from_msi(..) to xen/iommu.h
Date: Thu, 29 Apr 2021 15:46:51 +0100
Message-Id: <3dd255f5715eee3f359a6187d83c57a262065830.1619707144.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619707144.git.rahul.singh@arm.com>
References: <cover.1619707144.git.rahul.singh@arm.com>
In-Reply-To: <cover.1619707144.git.rahul.singh@arm.com>
References: <cover.1619707144.git.rahul.singh@arm.com>

Move iommu_update_ire_from_msi(..) from passthrough/pci.c to
xen/iommu.h and wrap it under CONFIG_X86 as it is referenced in x86
code only to avoid compilation error for other architecture when
HAS_PCI is enabled.

No functional change intended.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
 xen/drivers/passthrough/pci.c |  7 -------
 xen/include/xen/iommu.h       | 13 ++++++++++---
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 705137f8be..199ce08612 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -1303,13 +1303,6 @@ static int __init setup_dump_pcidevs(void)
 }
 __initcall(setup_dump_pcidevs);
 
-int iommu_update_ire_from_msi(
-    struct msi_desc *msi_desc, struct msi_msg *msg)
-{
-    return iommu_intremap
-           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
-}
-
 static int iommu_add_device(struct pci_dev *pdev)
 {
     const struct domain_iommu *hd;
diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index 4f0e5ac622..460755df29 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -187,8 +187,6 @@ void free_hvm_irq_dpci(struct hvm_irq_dpci *dpci);
 struct msi_desc;
 struct msi_msg;
 
-int iommu_update_ire_from_msi(struct msi_desc *msi_desc, struct msi_msg *msg);
-
 #define PT_IRQ_TIME_OUT MILLISECS(8)
 #endif /* HAS_PCI */
 
@@ -238,7 +236,6 @@ struct iommu_ops {
                            u8 devfn, device_t *dev);
 #ifdef CONFIG_HAS_PCI
     int (*get_device_group_id)(u16 seg, u8 bus, u8 devfn);
-    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
 #endif /* HAS_PCI */
 
     void (*teardown)(struct domain *d);
@@ -267,6 +264,7 @@ struct iommu_ops {
     int (*adjust_irq_affinities)(void);
     void (*sync_cache)(const void *addr, unsigned int size);
     void (*clear_root_pgtable)(struct domain *d);
+    int (*update_ire_from_msi)(struct msi_desc *msi_desc, struct msi_msg *msg);
 #endif /* CONFIG_X86 */
 
     int __must_check (*suspend)(void);
@@ -374,6 +372,15 @@ extern struct page_list_head iommu_pt_cleanup_list;
 
 bool arch_iommu_use_permitted(const struct domain *d);
 
+#ifdef CONFIG_X86
+static inline int iommu_update_ire_from_msi(
+    struct msi_desc *msi_desc, struct msi_msg *msg)
+{
+    return iommu_intremap
+           ? iommu_call(&iommu_ops, update_ire_from_msi, msi_desc, msg) : 0;
+}
+#endif
+
 #endif /* _IOMMU_H_ */
 
 /*
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:47:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:47:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120083.227081 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7xB-00026M-An; Thu, 29 Apr 2021 14:47:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120083.227081; Thu, 29 Apr 2021 14:47:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7xB-00026E-6d; Thu, 29 Apr 2021 14:47:45 +0000
Received: by outflank-mailman (input) for mailman id 120083;
 Thu, 29 Apr 2021 14:47:44 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sKbL=J2=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lc7xA-000265-Cm
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 14:47:44 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id 53b275d3-9361-444c-98a8-0deddf254de2;
 Thu, 29 Apr 2021 14:47:42 +0000 (UTC)
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 D94411FB;
 Thu, 29 Apr 2021 07:47:41 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 30D5F3F73B;
 Thu, 29 Apr 2021 07:47: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: 53b275d3-9361-444c-98a8-0deddf254de2
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.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>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v4 2/3] xen/pci: Refactor PCI MSI intercept related code
Date: Thu, 29 Apr 2021 15:46:52 +0100
Message-Id: <07cb9f45a91a283af1991c42266555bb0bfe3b71.1619707144.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619707144.git.rahul.singh@arm.com>
References: <cover.1619707144.git.rahul.singh@arm.com>
In-Reply-To: <cover.1619707144.git.rahul.singh@arm.com>
References: <cover.1619707144.git.rahul.singh@arm.com>

MSI intercept related code is not useful for ARM when MSI interrupts are
injected via GICv3 ITS.

Therefore introducing the new flag CONFIG_HAS_PCI_MSI_INTERCEPT to gate
the MSI code for ARM in common code and also implemented the stub
version for the unused code for ARM to avoid compilation error when
HAS_PCI is enabled for ARM.

No functional change intended.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
 xen/arch/x86/Kconfig                    |  1 +
 xen/drivers/passthrough/Makefile        |  1 +
 xen/drivers/passthrough/msi-intercept.c | 53 ++++++++++++++++++++++++
 xen/drivers/passthrough/pci.c           | 20 ++++-----
 xen/drivers/pci/Kconfig                 |  4 ++
 xen/drivers/vpci/Makefile               |  3 +-
 xen/drivers/vpci/header.c               | 19 ++-------
 xen/drivers/vpci/msix.c                 | 55 +++++++++++++++++++++++++
 xen/drivers/vpci/vpci.c                 |  3 +-
 xen/include/xen/msi-intercept.h         | 49 ++++++++++++++++++++++
 xen/include/xen/vpci.h                  | 41 ++++++++----------
 11 files changed, 195 insertions(+), 54 deletions(-)
 create mode 100644 xen/drivers/passthrough/msi-intercept.c
 create mode 100644 xen/include/xen/msi-intercept.h

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 32b9f23a20..a822687c2e 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -20,6 +20,7 @@ config X86
 	select HAS_NS16550
 	select HAS_PASSTHROUGH
 	select HAS_PCI
+	select HAS_PCI_MSI_INTERCEPT
 	select HAS_PDX
 	select HAS_SCHED_GRANULARITY
 	select HAS_UBSAN
diff --git a/xen/drivers/passthrough/Makefile b/xen/drivers/passthrough/Makefile
index 445690e3e5..eb27d10f5a 100644
--- a/xen/drivers/passthrough/Makefile
+++ b/xen/drivers/passthrough/Makefile
@@ -7,3 +7,4 @@ obj-y += iommu.o
 obj-$(CONFIG_HAS_PCI) += pci.o
 obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o
 obj-$(CONFIG_HAS_PCI) += ats.o
+obj-$(CONFIG_HAS_PCI_MSI_INTERCEPT) += msi-intercept.o
diff --git a/xen/drivers/passthrough/msi-intercept.c b/xen/drivers/passthrough/msi-intercept.c
new file mode 100644
index 0000000000..ed3ec38003
--- /dev/null
+++ b/xen/drivers/passthrough/msi-intercept.c
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2008,  Netronome Systems, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program; If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <xen/init.h>
+#include <xen/pci.h>
+#include <asm/msi.h>
+#include <asm/hvm/io.h>
+
+int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
+{
+    int rc;
+
+    if ( pdev->msix )
+    {
+        rc = pci_reset_msix_state(pdev);
+        if ( rc )
+            return rc;
+        msixtbl_init(d);
+    }
+
+    return 0;
+}
+
+void pdev_dump_msi(const struct pci_dev *pdev)
+{
+    const struct msi_desc *msi;
+
+    list_for_each_entry ( msi, &pdev->msi_list, list )
+        printk("- MSIs < %d >", msi->irq);
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 199ce08612..237461b4ab 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -32,8 +32,8 @@
 #include <xen/softirq.h>
 #include <xen/tasklet.h>
 #include <xen/vpci.h>
+#include <xen/msi-intercept.h>
 #include <xsm/xsm.h>
-#include <asm/msi.h>
 #include "ats.h"
 
 struct pci_seg {
@@ -1271,18 +1271,16 @@ bool_t pcie_aer_get_firmware_first(const struct pci_dev *pdev)
 static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
 {
     struct pci_dev *pdev;
-    struct msi_desc *msi;
 
     printk("==== segment %04x ====\n", pseg->nr);
 
     list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
     {
-        printk("%pp - %pd - node %-3d - MSIs < ",
+        printk("%pp - %pd - node %-3d ",
                &pdev->sbdf, pdev->domain,
                (pdev->node != NUMA_NO_NODE) ? pdev->node : -1);
-        list_for_each_entry ( msi, &pdev->msi_list, list )
-               printk("%d ", msi->irq);
-        printk(">\n");
+        pdev_dump_msi(pdev);
+        printk("\n");
     }
 
     return 0;
@@ -1422,13 +1420,9 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
     ASSERT(pdev && (pdev->domain == hardware_domain ||
                     pdev->domain == dom_io));
 
-    if ( pdev->msix )
-    {
-        rc = pci_reset_msix_state(pdev);
-        if ( rc )
-            goto done;
-        msixtbl_init(d);
-    }
+    rc = pdev_msix_assign(d, pdev);
+    if ( rc )
+        goto done;
 
     pdev->fault.count = 0;
 
diff --git a/xen/drivers/pci/Kconfig b/xen/drivers/pci/Kconfig
index 7da03fa13b..295731a3f4 100644
--- a/xen/drivers/pci/Kconfig
+++ b/xen/drivers/pci/Kconfig
@@ -1,3 +1,7 @@
 
 config HAS_PCI
 	bool
+
+config HAS_PCI_MSI_INTERCEPT
+	bool
+	depends on HAS_PCI
diff --git a/xen/drivers/vpci/Makefile b/xen/drivers/vpci/Makefile
index 55d1bdfda0..a95e6c2ca0 100644
--- a/xen/drivers/vpci/Makefile
+++ b/xen/drivers/vpci/Makefile
@@ -1 +1,2 @@
-obj-y += vpci.o header.o msi.o msix.o
+obj-y += vpci.o header.o
+obj-$(CONFIG_HAS_PCI_MSI_INTERCEPT) += msi.o msix.o
diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index ba9a036202..81d3d2d17f 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -206,7 +206,6 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
     struct vpci_header *header = &pdev->vpci->header;
     struct rangeset *mem = rangeset_new(NULL, NULL, 0);
     struct pci_dev *tmp, *dev = NULL;
-    const struct vpci_msix *msix = pdev->vpci->msix;
     unsigned int i;
     int rc;
 
@@ -244,21 +243,11 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
     }
 
     /* Remove any MSIX regions if present. */
-    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
+    rc = vpci_remove_msix_regions(pdev->vpci, mem);
+    if ( rc )
     {
-        unsigned long start = PFN_DOWN(vmsix_table_addr(pdev->vpci, i));
-        unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
-                                     vmsix_table_size(pdev->vpci, i) - 1);
-
-        rc = rangeset_remove_range(mem, start, end);
-        if ( rc )
-        {
-            printk(XENLOG_G_WARNING
-                   "Failed to remove MSIX table [%lx, %lx]: %d\n",
-                   start, end, rc);
-            rangeset_destroy(mem);
-            return rc;
-        }
+        rangeset_destroy(mem);
+        return rc;
     }
 
     /*
diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
index 846f1b8d70..b62106ddf9 100644
--- a/xen/drivers/vpci/msix.c
+++ b/xen/drivers/vpci/msix.c
@@ -27,6 +27,36 @@
     ((addr) >= vmsix_table_addr(vpci, nr) &&                              \
      (addr) < vmsix_table_addr(vpci, nr) + vmsix_table_size(vpci, nr))
 
+/*
+ * Helper functions to fetch MSIX related data. They are used by both the
+ * emulated MSIX code and the BAR handlers.
+ */
+static inline paddr_t vmsix_table_base(const struct vpci *vpci,
+                                       unsigned int nr)
+{
+    return vpci->header.bars[vpci->msix->tables[nr] & PCI_MSIX_BIRMASK].addr;
+}
+
+static inline paddr_t vmsix_table_addr(const struct vpci *vpci,
+                                       unsigned int nr)
+{
+    return vmsix_table_base(vpci, nr) +
+           (vpci->msix->tables[nr] & ~PCI_MSIX_BIRMASK);
+}
+
+/*
+ * Note regarding the size calculation of the PBA: the spec mentions "The last
+ * QWORD will not necessarily be fully populated", so it implies that the PBA
+ * size is 64-bit aligned.
+ */
+static inline size_t vmsix_table_size(const struct vpci *vpci, unsigned int nr)
+{
+    return
+        (nr == VPCI_MSIX_TABLE) ? vpci->msix->max_entries * PCI_MSIX_ENTRY_SIZE
+                                : ROUNDUP(DIV_ROUND_UP(vpci->msix->max_entries,
+                                                       8), 8);
+}
+
 static uint32_t control_read(const struct pci_dev *pdev, unsigned int reg,
                              void *data)
 {
@@ -428,6 +458,31 @@ int vpci_make_msix_hole(const struct pci_dev *pdev)
     return 0;
 }
 
+int vpci_remove_msix_regions(const struct vpci *vpci, struct rangeset *mem)
+{
+    const struct vpci_msix *msix = vpci->msix;
+    unsigned int i;
+    int rc;
+
+    for ( i = 0; msix && i < ARRAY_SIZE(msix->tables); i++ )
+    {
+        unsigned long start = PFN_DOWN(vmsix_table_addr(vpci, i));
+        unsigned long end = PFN_DOWN(vmsix_table_addr(vpci, i) +
+                vmsix_table_size(vpci, i) - 1);
+
+        rc = rangeset_remove_range(mem, start, end);
+        if ( rc )
+        {
+            printk(XENLOG_G_WARNING
+                    "Failed to remove MSIX table [%lx, %lx]: %d\n",
+                    start, end, rc);
+            return rc;
+        }
+    }
+
+    return 0;
+}
+
 static int init_msix(struct pci_dev *pdev)
 {
     struct domain *d = pdev->domain;
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index cbd1bac7fc..85084dd924 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -48,8 +48,7 @@ void vpci_remove_device(struct pci_dev *pdev)
         xfree(r);
     }
     spin_unlock(&pdev->vpci->lock);
-    xfree(pdev->vpci->msix);
-    xfree(pdev->vpci->msi);
+    vpci_msi_free(pdev->vpci);
     xfree(pdev->vpci);
     pdev->vpci = NULL;
 }
diff --git a/xen/include/xen/msi-intercept.h b/xen/include/xen/msi-intercept.h
new file mode 100644
index 0000000000..1bf9fc4465
--- /dev/null
+++ b/xen/include/xen/msi-intercept.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2008,  Netronome Systems, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program; If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef __XEN_MSI_INTERCEPT_H_
+#define __XEN_MSI_INTERCEPT_H_
+
+#ifdef CONFIG_HAS_PCI_MSI_INTERCEPT
+
+#include <asm/msi.h>
+
+int pdev_msix_assign(struct domain *d, struct pci_dev *pdev);
+void pdev_dump_msi(const struct pci_dev *pdev);
+
+#else /* !CONFIG_HAS_PCI_MSI_INTERCEPT */
+
+static inline int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
+{
+    return 0;
+}
+
+static inline void pdev_dump_msi(const struct pci_dev *pdev) {}
+static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
+
+#endif /* CONFIG_HAS_PCI_MSI_INTERCEPT */
+
+#endif /* __XEN_MSI_INTERCEPT_H */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 9f5b5d52e1..4197407464 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -91,6 +91,7 @@ struct vpci {
         /* FIXME: currently there's no support for SR-IOV. */
     } header;
 
+#ifdef CONFIG_HAS_PCI_MSI_INTERCEPT
     /* MSI data. */
     struct vpci_msi {
       /* Address. */
@@ -136,6 +137,7 @@ struct vpci {
             struct vpci_arch_msix_entry arch;
         } entries[];
     } *msix;
+#endif /* CONFIG_HAS_PCI_MSI_INTERCEPT */
 #endif
 };
 
@@ -148,6 +150,7 @@ struct vpci_vcpu {
 };
 
 #ifdef __XEN__
+#ifdef CONFIG_HAS_PCI_MSI_INTERCEPT
 void vpci_dump_msi(void);
 
 /* Make sure there's a hole in the p2m for the MSIX mmio areas. */
@@ -174,40 +177,32 @@ int __must_check vpci_msix_arch_disable_entry(struct vpci_msix_entry *entry,
                                               const struct pci_dev *pdev);
 void vpci_msix_arch_init_entry(struct vpci_msix_entry *entry);
 int vpci_msix_arch_print(const struct vpci_msix *msix);
+int vpci_remove_msix_regions(const struct vpci *vpci, struct rangeset *mem);
 
-/*
- * Helper functions to fetch MSIX related data. They are used by both the
- * emulated MSIX code and the BAR handlers.
- */
-static inline paddr_t vmsix_table_base(const struct vpci *vpci, unsigned int nr)
+static inline unsigned int vmsix_entry_nr(const struct vpci_msix *msix,
+                                          const struct vpci_msix_entry *entry)
 {
-    return vpci->header.bars[vpci->msix->tables[nr] & PCI_MSIX_BIRMASK].addr;
+    return entry - msix->entries;
 }
 
-static inline paddr_t vmsix_table_addr(const struct vpci *vpci, unsigned int nr)
+static inline void vpci_msi_free(struct vpci *vpci)
 {
-    return vmsix_table_base(vpci, nr) +
-           (vpci->msix->tables[nr] & ~PCI_MSIX_BIRMASK);
+    XFREE(vpci->msix);
+    XFREE(vpci->msi);
 }
-
-/*
- * Note regarding the size calculation of the PBA: the spec mentions "The last
- * QWORD will not necessarily be fully populated", so it implies that the PBA
- * size is 64-bit aligned.
- */
-static inline size_t vmsix_table_size(const struct vpci *vpci, unsigned int nr)
+#else /* !CONFIG_HAS_PCI_MSI_INTERCEPT */
+static inline int vpci_make_msix_hole(const struct pci_dev *pdev)
 {
-    return
-        (nr == VPCI_MSIX_TABLE) ? vpci->msix->max_entries * PCI_MSIX_ENTRY_SIZE
-                                : ROUNDUP(DIV_ROUND_UP(vpci->msix->max_entries,
-                                                       8), 8);
+    return 0;
 }
 
-static inline unsigned int vmsix_entry_nr(const struct vpci_msix *msix,
-                                          const struct vpci_msix_entry *entry)
+static inline int vpci_remove_msix_regions(const struct vpci *vpci,
+                                           struct rangeset *mem)
 {
-    return entry - msix->entries;
+    return 0;
 }
+static inline void vpci_msi_free(struct vpci *vpci) {}
+#endif /* CONFIG_HAS_PCI_MSI_INTERCEPT */
 #endif /* __XEN__ */
 
 #else /* !CONFIG_HAS_VPCI */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:48:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:48:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120092.227093 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7xf-0002EI-Kr; Thu, 29 Apr 2021 14:48:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120092.227093; Thu, 29 Apr 2021 14:48:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7xf-0002EB-HH; Thu, 29 Apr 2021 14:48:15 +0000
Received: by outflank-mailman (input) for mailman id 120092;
 Thu, 29 Apr 2021 14:48:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sKbL=J2=arm.com=rahul.singh@srs-us1.protection.inumbo.net>)
 id 1lc7xe-0002Dy-Fk
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 14:48:14 +0000
Received: from foss.arm.com (unknown [217.140.110.172])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id ee86eacc-7629-43de-987d-0fb95e68d49e;
 Thu, 29 Apr 2021 14:48:13 +0000 (UTC)
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 B5E1D1FB;
 Thu, 29 Apr 2021 07:48:12 -0700 (PDT)
Received: from e109506.cambridge.arm.com (e109506.cambridge.arm.com
 [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2F0723F73B;
 Thu, 29 Apr 2021 07:48: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: ee86eacc-7629-43de-987d-0fb95e68d49e
From: Rahul Singh <rahul.singh@arm.com>
To: xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com,
	rahul.singh@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Paul Durrant <paul@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: [PATCH v4 3/3] xen/pci: Refactor MSI code that implements MSI functionality within XEN
Date: Thu, 29 Apr 2021 15:46:53 +0100
Message-Id: <60b4c33fdcc2f7ad68d383ffae191e22b0b32f1c.1619707144.git.rahul.singh@arm.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <cover.1619707144.git.rahul.singh@arm.com>
References: <cover.1619707144.git.rahul.singh@arm.com>
In-Reply-To: <cover.1619707144.git.rahul.singh@arm.com>
References: <cover.1619707144.git.rahul.singh@arm.com>

MSI code that implements MSI functionality to support MSI within XEN is
not usable on ARM. Move the code under CONFIG_HAS_PCI_MSI_INTERCEPT flag
to gate the code for ARM.

Currently, we have no idea how MSI functionality will be supported for
other architecture therefore we have decided to move the code under
CONFIG_PCI_MSI_INTERCEPT. We know this is not the right flag to gate the
code but to avoid an extra flag we decided to use this.

No functional change intended.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
 xen/drivers/passthrough/msi-intercept.c | 41 +++++++++++++++++++++++++
 xen/drivers/passthrough/pci.c           | 34 ++++----------------
 xen/include/xen/msi-intercept.h         |  7 +++++
 xen/include/xen/pci.h                   | 11 ++++---
 xen/xsm/flask/hooks.c                   |  8 ++---
 5 files changed, 65 insertions(+), 36 deletions(-)

diff --git a/xen/drivers/passthrough/msi-intercept.c b/xen/drivers/passthrough/msi-intercept.c
index ed3ec38003..12187bc9b9 100644
--- a/xen/drivers/passthrough/msi-intercept.c
+++ b/xen/drivers/passthrough/msi-intercept.c
@@ -19,6 +19,47 @@
 #include <asm/msi.h>
 #include <asm/hvm/io.h>
 
+int pdev_msi_init(struct pci_dev *pdev)
+{
+    unsigned int pos;
+
+    INIT_LIST_HEAD(&pdev->msi_list);
+
+    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
+                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSI);
+    if ( pos )
+    {
+        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
+
+        pdev->msi_maxvec = multi_msi_capable(ctrl);
+    }
+
+    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
+                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSIX);
+    if ( pos )
+    {
+        struct arch_msix *msix = xzalloc(struct arch_msix);
+        uint16_t ctrl;
+
+        if ( !msix )
+            return -ENOMEM;
+
+        spin_lock_init(&msix->table_lock);
+
+        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
+        msix->nr_entries = msix_table_size(ctrl);
+
+        pdev->msix = msix;
+    }
+
+    return 0;
+}
+
+void pdev_msi_deinit(struct pci_dev *pdev)
+{
+    XFREE(pdev->msix);
+}
+
 int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
 {
     int rc;
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 237461b4ab..a3ec85c293 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -314,6 +314,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
 {
     struct pci_dev *pdev;
     unsigned int pos;
+    int rc;
 
     list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
         if ( pdev->bus == bus && pdev->devfn == devfn )
@@ -327,35 +328,12 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
     *((u8*) &pdev->bus) = bus;
     *((u8*) &pdev->devfn) = devfn;
     pdev->domain = NULL;
-    INIT_LIST_HEAD(&pdev->msi_list);
-
-    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
-                              PCI_CAP_ID_MSI);
-    if ( pos )
-    {
-        uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
 
-        pdev->msi_maxvec = multi_msi_capable(ctrl);
-    }
-
-    pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
-                              PCI_CAP_ID_MSIX);
-    if ( pos )
+    rc = pdev_msi_init(pdev);
+    if ( rc )
     {
-        struct arch_msix *msix = xzalloc(struct arch_msix);
-        uint16_t ctrl;
-
-        if ( !msix )
-        {
-            xfree(pdev);
-            return NULL;
-        }
-        spin_lock_init(&msix->table_lock);
-
-        ctrl = pci_conf_read16(pdev->sbdf, msix_control_reg(pos));
-        msix->nr_entries = msix_table_size(ctrl);
-
-        pdev->msix = msix;
+        xfree(pdev);
+        return NULL;
     }
 
     list_add(&pdev->alldevs_list, &pseg->alldevs_list);
@@ -449,7 +427,7 @@ static void free_pdev(struct pci_seg *pseg, struct pci_dev *pdev)
     }
 
     list_del(&pdev->alldevs_list);
-    xfree(pdev->msix);
+    pdev_msi_deinit(pdev);
     xfree(pdev);
 }
 
diff --git a/xen/include/xen/msi-intercept.h b/xen/include/xen/msi-intercept.h
index 1bf9fc4465..7b094e08f7 100644
--- a/xen/include/xen/msi-intercept.h
+++ b/xen/include/xen/msi-intercept.h
@@ -21,16 +21,23 @@
 
 #include <asm/msi.h>
 
+int pdev_msi_init(struct pci_dev *pdev);
+void pdev_msi_deinit(struct pci_dev *pdev);
 int pdev_msix_assign(struct domain *d, struct pci_dev *pdev);
 void pdev_dump_msi(const struct pci_dev *pdev);
 
 #else /* !CONFIG_HAS_PCI_MSI_INTERCEPT */
+static inline int pdev_msi_init(struct pci_dev *pdev)
+{
+    return 0;
+}
 
 static inline int pdev_msix_assign(struct domain *d, struct pci_dev *pdev)
 {
     return 0;
 }
 
+static inline void pdev_msi_deinit(struct pci_dev *pdev) {}
 static inline void pdev_dump_msi(const struct pci_dev *pdev) {}
 static inline void pci_cleanup_msi(struct pci_dev *pdev) {}
 
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index 8e3d4d9454..01a92ce9e6 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -79,10 +79,6 @@ struct pci_dev {
     struct list_head alldevs_list;
     struct list_head domain_list;
 
-    struct list_head msi_list;
-
-    struct arch_msix *msix;
-
     struct domain *domain;
 
     const union {
@@ -94,7 +90,14 @@ struct pci_dev {
         pci_sbdf_t sbdf;
     };
 
+#ifdef CONFIG_HAS_PCI_MSI_INTERCEPT
+    struct list_head msi_list;
+
+    struct arch_msix *msix;
+
     uint8_t msi_maxvec;
+#endif
+
     uint8_t phantom_stride;
 
     nodeid_t node; /* NUMA node */
diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c
index 5a24d01f04..394455cc42 100644
--- a/xen/xsm/flask/hooks.c
+++ b/xen/xsm/flask/hooks.c
@@ -21,7 +21,7 @@
 #include <xen/guest_access.h>
 #include <xen/xenoprof.h>
 #include <xen/iommu.h>
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_HAS_PCI_MSI_INTERCEPT
 #include <asm/msi.h>
 #endif
 #include <public/xen.h>
@@ -114,7 +114,7 @@ static int get_irq_sid(int irq, u32 *sid, struct avc_audit_data *ad)
         }
         return security_irq_sid(irq, sid);
     }
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_HAS_PCI_MSI_INTERCEPT
     {
         struct irq_desc *desc = irq_to_desc(irq);
         if ( desc->msi_desc && desc->msi_desc->dev ) {
@@ -874,7 +874,7 @@ static int flask_map_domain_pirq (struct domain *d)
 static int flask_map_domain_msi (struct domain *d, int irq, const void *data,
                                  u32 *sid, struct avc_audit_data *ad)
 {
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_HAS_PCI_MSI_INTERCEPT
     const struct msi_info *msi = data;
     u32 machine_bdf = (msi->seg << 16) | (msi->bus << 8) | msi->devfn;
 
@@ -940,7 +940,7 @@ static int flask_unmap_domain_pirq (struct domain *d)
 static int flask_unmap_domain_msi (struct domain *d, int irq, const void *data,
                                    u32 *sid, struct avc_audit_data *ad)
 {
-#ifdef CONFIG_HAS_PCI
+#ifdef CONFIG_HAS_PCI_MSI_INTERCEPT
     const struct pci_dev *pdev = data;
     u32 machine_bdf = (pdev->seg << 16) | (pdev->bus << 8) | pdev->devfn;
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:48:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:48:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120096.227105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7y5-0002M7-31; Thu, 29 Apr 2021 14:48:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120096.227105; Thu, 29 Apr 2021 14:48: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 1lc7y4-0002M0-W0; Thu, 29 Apr 2021 14:48:40 +0000
Received: by outflank-mailman (input) for mailman id 120096;
 Thu, 29 Apr 2021 14:48:39 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SJyU=J2=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lc7y3-0002Lt-KN
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 14:48:39 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a4c3f26a-87f7-4661-a924-0cfb53d3d8a4;
 Thu, 29 Apr 2021 14:48: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: a4c3f26a-87f7-4661-a924-0cfb53d3d8a4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619707718;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=uGRKuWDFEhDA18TLkC0O0XmtGBHNUZZgLuda8cHIjpU=;
  b=YIc5JG+2yDA4wbmJSsz7RTDkVLw6RdOOBZKQa8zAJg+JSwmek7sPXadq
   4THQ1fFeekwkTC+mkY7KhfEjJHVmJeDssMN3e7hax/62VKF/YkONvhpnV
   87EkanJyOe2cNjkXxKOOVbZ7mIu8DbqXwYmqNzxEVEslrMbnk4iufL6Ne
   0=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: j6M3DB7Bbs+8es7ITWchEyYVbv1jP8VrAUkGn/BjMoKxmXNX818WYV9VwRNIJwlEK6QH42SG8K
 g/sU2AVculHLus3MZu7XUzTJkGOe8b+Zg5oAbXeG1AO6odBhURzKag5xE4kW7oPdeFNQBKWlp4
 WezRtiWHTXTjdN45fokeXqDUW7p9ug52/KUqOY8Bax4CuVcyYG5hxJMDjK6Qr8FgC+juILM9gi
 n0BiM21AizN2nBmp1CP7JKAUcTh38BKRgSvxcQITAarbgM0ddGGNB3FV539bVpEf0D/Vf4I8Td
 rJs=
X-SBRS: 5.1
X-MesageID: 44226658
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:IKQkzK1jWom5Bk+CmG5S6QqjBWByeYIsi2QD101hICF9WtCEls
 yogfQQ3QL1jjFUY307hdWcIsC7LE/035Qd2+ksFJ2lWxTrv3btEZF64eLZslndMgDd1soY76
 dvdKBiFMb9ZGIRse/W6BS1euxO/PCp66at7N2x815IbSVHL55t9B14DAHzKDwSeCBjCYAiHJ
 SRouprzgDQGkg/VciwCnkbU+WrnbSi+K7OWhIaGwUhrDCHkDLA0tXHOiKF1RQTWS4n+8ZBzU
 H5lWXCh5mLgrWA5TL3k0TS6JlXn9WJ8Ko/OOW8zvI7Bx+ppgKhZIFKU6CPsjYvsIiUmSoXue
 iJmTgMFYBe7G7QY3GUrHLWqnbd+Qdr0VDO4xu5hmbuusPwTj5SMbs+uatpNiH3xmBlmfMU6t
 Mt40up86B5IDmFoQHGo//PbB1unlrcmwtYrccjy0ZxfKFbVKVctuUkjSVoOaZFJg3WwqY9Ht
 JjCcnNjcwmC2+yXjTism5jzMfEZAVLIj62BkwLusmi2zNLhnxOz0wB2MwFnnsbnahNM6V52w
 ==
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="44226658"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OAg/1RJr+GYM6XkerJ5xaWiQ+alps+Yrkm+/ZdNH4j6wMPP511DCVInnjHsZ39g81j43j4Yl5F4j9W9DCwHYXo1o3G59AixIzT2agGxz7VFb5xSH+SBDvodS/YHoekBWsmWyJsZ4t3SiGvTTx/QRg86LZ1sQfVflua+S/QP7uQqYjENKzHt0PCdXRFxqH+6163UNsbaobm1+YS9wx9S1hRl03g95CdHQZW5XoOdpVr+1KVdMkBEqNJI220ZwxNXJcTMoFJUM7P/D1zuhqEa18HdlIXMLfvGS3LWrd804cHv2RlqPQ6R9a95M16lyY9NUupJEwdZO1W8KVpHbQyFEUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8Ts9uf6fqgeWYkiCVUmkIi2paOGwarj6Nlyuw81TH8Y=;
 b=XibxoVjY7h8qY92/SE7wNu5mpOa3Ibg+Gfc0ky+ScJKVTAclLa20SE4jPzsH9zDA6W+QeiwPvPeSGSh/Es8K/lasZX+NwbFeMCw2lWPhnGiO4ZsB8cs7zjSLiPErHqiZSxFHdnCWOSbGtqTIjgJOGwZdG4uSmLISJJUea0CqH/eCsu2sdA9QgLlbNm0INjA68aXYnCqNrX72AHYB6Nq89HOQi0PpLSPYk1fhke1jX7cfTh/8UU74y4R+sFfckQRAX1dthUuYC16CBVDWoW7wE5/RVvNynmx2mI8B/Qsr3AS9yYqaOEasguXMAeQUj0lAm2otrFPiD/T5hvynpeK5Jg==
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=8Ts9uf6fqgeWYkiCVUmkIi2paOGwarj6Nlyuw81TH8Y=;
 b=VSF0DY8dpQcmS5Q8L5I0xRqD3pe25D+NsKwmIimvkls7gus7q5ddyM1StodPeox//HtpE24xT3GlO7enDBBY0BWn9+f0oISv8b7zfS5WO9nsEUqRsoHslUYcTgUboq7uYd2jxdMH/ZfLfQLn3X/8+EKFaajUZlrGtZjVVKXNnmI=
Date: Thu, 29 Apr 2021 16:48:27 +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>, Ian Jackson <iwj@xenproject.org>, Julien Grall
	<julien@xen.org>, "Stefano Stabellini" <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>
Subject: Re: [PATCH v2 02/12] x86/p2m: {,un}map_mmio_regions() are HVM-only
Message-ID: <YIrHO9N6YgQEOpJh@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <7f8ca70d-8bbe-bd5d-533a-c5ea81dc91a2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <7f8ca70d-8bbe-bd5d-533a-c5ea81dc91a2@suse.com>
X-ClientProxiedBy: PR3P195CA0016.EURP195.PROD.OUTLOOK.COM
 (2603:10a6:102:b6::21) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 73594721-1c41-4f79-1c40-08d90b1ddca6
X-MS-TrafficTypeDiagnostic: DM4PR03MB5997:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM4PR03MB5997B7C55626A426EBACE1D18F5F9@DM4PR03MB5997.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: udC5F/24Q8rvYIhLPOxFG1ESiZART0mEXQdgkp1zIRq1y6yT130HIPN9eon1mbF9lp5ssYj72ojzWqDmIsoFp4O23v7WBiyHBhlIW8071RGB9cvam/FKCPZVa4wD0h2h/ERGqdkJNrf8UOi5sYe/jfa9Wy40Z9nLqR+q87sap6DfTPH/5AkUD8PkTCpqojbkIPncWBOqNh7FG61u1IiTR3pemj5+PbPszxkWIqqMxAiEYN5+ttDN/LZLK3M5gpZlbCaqN6gPYbyb213dnnzbVQc/J3SrDsJ53n75tdacWbSDHZbKbRui4ObmWfHUxEEhVL+9wXXctN3HDlz8cebFclSgWv0gG/4LWcvCz4ZwdkAT0RgFoazpq9zXWr1SknXhjLrQpdsV2sT3JTM2iOiHq/UR66x1KmGidWr95ZTq/LAZWysoy1vF9DkyVSmbwWGs3GbJVdGNpsQo7KsjKoQfO1NpLq3TCBwatX+Djm66awSMXzgXx1YY9UM3aaCGGPmnTR3UbV5iyOTwCrGH/559LTwiMKpK/ulDkC+4xBLvWNRVdC933TwJmaAxhj2NhrZDXzipoV+g1pW1cPF/RSxsbkndL3jCXLRG72uAkXLwZzo=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(346002)(396003)(136003)(39860400002)(366004)(8676002)(6486002)(83380400001)(54906003)(16526019)(6916009)(2906002)(86362001)(85182001)(4326008)(316002)(956004)(6496006)(66946007)(66556008)(8936002)(66476007)(186003)(9686003)(33716001)(5660300002)(38100700002)(6666004)(478600001)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?S25mejR3R1lZdkhMZWxlK2N1ck52MmdKdW40alIyOGp0ZnF0cUtDVWJIellI?=
 =?utf-8?B?V3lnRC9HdXdiblJKODZTN2lqTjZqVi9CWmgwZWVlZFR2ZzAxbTF4NWlSNTd4?=
 =?utf-8?B?V2QwNk5uVWNSMW5UbUZhN1NkS3B4dTY1Z0RDYllCaElnQW83NHhzcXJEOE9J?=
 =?utf-8?B?T1M4ZmFEM2FiZGtSalVaOFQybTR0VWxFeEh1SzNCaVdhOWl2UXhRVUlJRUN0?=
 =?utf-8?B?eE9OMHRRMU1rdm9nQXA0aWhVQm5JM3VqUkh1VCtLK1NJUktPNWlIWUNYMm5U?=
 =?utf-8?B?bFRVZHo2VXNxS2lnek1QeVlyMHBzT0UxQzZGRnhNYTV0ZXhsdmExb2FveGIr?=
 =?utf-8?B?ekFhaHZLMWJPeDNGV1hPbVlwSjhNeXdnZGl0V2RWZm9GNzBIajNvQkhtWTdR?=
 =?utf-8?B?RWJlN2pQSDJIZWJObW5NTjc5T0VmVzIrUFArcnVVTFpHclNlZFp0cmY3SnBH?=
 =?utf-8?B?Z0JqZ0llZDNwbU84OWpuTTduVEhmcW4wYmxsTk13cDQ3L3JOQmY1ZDVodzNo?=
 =?utf-8?B?MmNuQXZJcHprQi8yRG9zdW5lNlJibVZobkM1TDJZTE9lMDVvVVRxUnJ2ZzM1?=
 =?utf-8?B?VFQ3UTdnTWdJZ0tRRWp1dGhjM29hNTJRY3QrQi9zc00wQTFvOGtRK2hreVpp?=
 =?utf-8?B?Tko5L3RCQitJRTJQUkxyMWduZXIyYkFPL1RyS2habG0rWHQramVlY1NXUkp5?=
 =?utf-8?B?bW1Fbk80QVNhT05iQit5KzFqZzRRcXpLQ1prdk1wRHZwbFpxTEJMSGpBcHlh?=
 =?utf-8?B?c3ZTOGhjNXU2ZGFOdlFwakxlSHRIRCtRM25RL3V0UDJ4L1JVWDNwWkRGYWVl?=
 =?utf-8?B?My8waFpZckM3Yk53ZU82QlZvZW51WjlNQTVjWVQ1S3lQeFNwMWdJWndyeEIw?=
 =?utf-8?B?VmJvMGV4UkhoU1BnRmVFV0s4WDVsVk5RbWkzK0xpbm9VZ3FPb2xxVWJHbm5y?=
 =?utf-8?B?OVMwdHhYN2gyVzc1WEFOMjMvbFYweS9TQnlqV1N2L1BGdWt0c1BwN3RXLy8v?=
 =?utf-8?B?UkpHZUVtYXFhZHZMa2lyU0FBUzJpc2s5eWplcmtjM1gvZ2RYRzQ4aGZNdE94?=
 =?utf-8?B?eGVBN3dkT2RLQytjWGM0MEt5UlZ4M1A3ZUdiQWExSW5ySldmWUNMV0IvNVBw?=
 =?utf-8?B?V1hhZmg0K1I4V2thRk1tb1d4dW1aYitlcVUxbGVoUmY4WGk3NEVxMUNjQUZQ?=
 =?utf-8?B?bmdSRUNLQ1ZzbGZ4NzI3VFBUQXc2MHVod3VEYk53cjBXNkRwcFR0OGhPVXhN?=
 =?utf-8?B?Wk8yaHE1aUw5YVVOazVqV054TUFYZ05lbGRjamVKZ3RTaXI1U0lHWDh2UDJD?=
 =?utf-8?B?VU1EVFNvN1ovSlhaWnVMdnZSNlRCVEoxU3ZWMUdhWkVzaVh6N0lDVUdSelNM?=
 =?utf-8?B?bXprR1AxNGd5TnVnMWh1ZzFzdEF0V0NhUm9TREJHaEUrY29raVZSKzl5eHpj?=
 =?utf-8?B?ZFpQSmsyTnVNK2xsZmU3elRycTR6eHYzVzN0TndhYWUvb3ZYTWtwMzJ1TC9I?=
 =?utf-8?B?WkYxVXVZNU1hT1NHeUVkbjBwelo1RWttTFBNSWV3TFRubzdpd2Jpb0dHYmpy?=
 =?utf-8?B?Rm1TQ2JJTnFXUXM0cFVldzJlL01td2xMUFV3aklsRlUvRkR4ZTlZUmUzY25U?=
 =?utf-8?B?emNDVWhBVVZUd3FRR3BsclVkam1FY0JIdXJiNjRLcHN2THdiaEw3d09TUDBy?=
 =?utf-8?B?WHNPZHBZeTMvNVRLbWFBWGtVWk8xbzJMbFN4ZENSTk1LVzllb1prT1pFUXJO?=
 =?utf-8?Q?h3n27gav37sIdMbdkgSzgDkISsO1DlFbX+L+fFI?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 73594721-1c41-4f79-1c40-08d90b1ddca6
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 14:48:33.5398
 (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: mhyHzAaq8i4o8XeIkXGfoJT5AzrTKUFrKtkp1Gi2i1SWs6+4+zsN5tnFi37VdXHYi8PlelTYImPlKoXkHkv0Sw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5997
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:06:34PM +0200, Jan Beulich wrote:
> Mirror the "translated" check the functions do to do_domctl(), allowing
> the calls to be DCEd by the compiler. Add ASSERT_UNREACHABLE() to the
> original checks.
> 
> Also arrange for {set,clear}_mmio_p2m_entry() and
> {set,clear}_identity_p2m_entry() to respectively live next to each
> other, such that clear_mmio_p2m_entry() can also be covered by the
> #ifdef already covering set_mmio_p2m_entry().

Seeing the increase in HVM specific regions, would it make sense to
consider splitting the HVM bits into p2m-hvm.c or some such?

> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v2: Fix build.
> ---
> Arguably the original checks, returning success, could also be dropped
> at this point.
> 
> --- a/xen/arch/x86/mm/p2m.c
> +++ b/xen/arch/x86/mm/p2m.c
> @@ -1352,52 +1352,6 @@ int set_mmio_p2m_entry(struct domain *d,
>                                 p2m_get_hostp2m(d)->default_access);
>  }
>  
> -#endif /* CONFIG_HVM */
> -
> -int set_identity_p2m_entry(struct domain *d, unsigned long gfn_l,
> -                           p2m_access_t p2ma, unsigned int flag)
> -{
> -    p2m_type_t p2mt;
> -    p2m_access_t a;
> -    gfn_t gfn = _gfn(gfn_l);
> -    mfn_t mfn;
> -    struct p2m_domain *p2m = p2m_get_hostp2m(d);
> -    int ret;
> -
> -    if ( !paging_mode_translate(p2m->domain) )
> -    {
> -        if ( !is_iommu_enabled(d) )
> -            return 0;
> -        return iommu_legacy_map(d, _dfn(gfn_l), _mfn(gfn_l),
> -                                1ul << PAGE_ORDER_4K,
> -                                IOMMUF_readable | IOMMUF_writable);
> -    }
> -
> -    gfn_lock(p2m, gfn, 0);
> -
> -    mfn = p2m->get_entry(p2m, gfn, &p2mt, &a, 0, NULL, NULL);
> -
> -    if ( p2mt == p2m_invalid || p2mt == p2m_mmio_dm )
> -        ret = p2m_set_entry(p2m, gfn, _mfn(gfn_l), PAGE_ORDER_4K,
> -                            p2m_mmio_direct, p2ma);
> -    else if ( mfn_x(mfn) == gfn_l && p2mt == p2m_mmio_direct && a == p2ma )
> -        ret = 0;
> -    else
> -    {
> -        if ( flag & XEN_DOMCTL_DEV_RDM_RELAXED )
> -            ret = 0;
> -        else
> -            ret = -EBUSY;
> -        printk(XENLOG_G_WARNING
> -               "Cannot setup identity map d%d:%lx,"
> -               " gfn already mapped to %lx.\n",
> -               d->domain_id, gfn_l, mfn_x(mfn));
> -    }
> -
> -    gfn_unlock(p2m, gfn, 0);
> -    return ret;
> -}
> -
>  /*
>   * Returns:
>   *    0        for success
> @@ -1447,6 +1401,52 @@ int clear_mmio_p2m_entry(struct domain *
>      return rc;
>  }
>  
> +#endif /* CONFIG_HVM */
> +
> +int set_identity_p2m_entry(struct domain *d, unsigned long gfn_l,
> +                           p2m_access_t p2ma, unsigned int flag)
> +{
> +    p2m_type_t p2mt;
> +    p2m_access_t a;
> +    gfn_t gfn = _gfn(gfn_l);
> +    mfn_t mfn;
> +    struct p2m_domain *p2m = p2m_get_hostp2m(d);
> +    int ret;
> +
> +    if ( !paging_mode_translate(p2m->domain) )
> +    {
> +        if ( !is_iommu_enabled(d) )
> +            return 0;
> +        return iommu_legacy_map(d, _dfn(gfn_l), _mfn(gfn_l),
> +                                1ul << PAGE_ORDER_4K,
> +                                IOMMUF_readable | IOMMUF_writable);
> +    }
> +
> +    gfn_lock(p2m, gfn, 0);
> +
> +    mfn = p2m->get_entry(p2m, gfn, &p2mt, &a, 0, NULL, NULL);
> +
> +    if ( p2mt == p2m_invalid || p2mt == p2m_mmio_dm )
> +        ret = p2m_set_entry(p2m, gfn, _mfn(gfn_l), PAGE_ORDER_4K,
> +                            p2m_mmio_direct, p2ma);
> +    else if ( mfn_x(mfn) == gfn_l && p2mt == p2m_mmio_direct && a == p2ma )
> +        ret = 0;
> +    else
> +    {
> +        if ( flag & XEN_DOMCTL_DEV_RDM_RELAXED )
> +            ret = 0;
> +        else
> +            ret = -EBUSY;
> +        printk(XENLOG_G_WARNING
> +               "Cannot setup identity map d%d:%lx,"
> +               " gfn already mapped to %lx.\n",
> +               d->domain_id, gfn_l, mfn_x(mfn));
> +    }
> +
> +    gfn_unlock(p2m, gfn, 0);
> +    return ret;
> +}
> +
>  int clear_identity_p2m_entry(struct domain *d, unsigned long gfn_l)
>  {
>      p2m_type_t p2mt;
> @@ -1892,6 +1892,8 @@ void *map_domain_gfn(struct p2m_domain *
>      return map_domain_page(*mfn);
>  }
>  
> +#ifdef CONFIG_HVM
> +
>  static unsigned int mmio_order(const struct domain *d,
>                                 unsigned long start_fn, unsigned long nr)
>  {
> @@ -1932,7 +1934,10 @@ int map_mmio_regions(struct domain *d,
>      unsigned int iter, order;
>  
>      if ( !paging_mode_translate(d) )
> +    {
> +        ASSERT_UNREACHABLE();
>          return 0;
> +    }
>  
>      for ( iter = i = 0; i < nr && iter < MAP_MMIO_MAX_ITER;
>            i += 1UL << order, ++iter )
> @@ -1964,7 +1969,10 @@ int unmap_mmio_regions(struct domain *d,
>      unsigned int iter, order;
>  
>      if ( !paging_mode_translate(d) )
> +    {
> +        ASSERT_UNREACHABLE();
>          return 0;

Maybe consider returning an error here now instead of silently
failing? It's not supposed to be reached, so getting here likely means
something else has gone wrong and it's best to just report an error?

The rest LGTM:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:49:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:49:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120106.227117 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc7zK-0002WF-DG; Thu, 29 Apr 2021 14:49:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120106.227117; Thu, 29 Apr 2021 14: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 1lc7zK-0002W8-A7; Thu, 29 Apr 2021 14:49:58 +0000
Received: by outflank-mailman (input) for mailman id 120106;
 Thu, 29 Apr 2021 14:49: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 1lc7zI-0002W0-Us; Thu, 29 Apr 2021 14:49: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 1lc7zI-0006TH-PM; Thu, 29 Apr 2021 14:49: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 1lc7zI-0006kJ-FQ; Thu, 29 Apr 2021 14:49:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lc7zI-0004Cw-Ex; Thu, 29 Apr 2021 14:49:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=nKFB3gg/Djm7eeleHZ2Ml7TA0sJxzSD9V6Tbz8ntAZo=; b=5MAM9Ey3t+MBYYMwgE+KIo24a2
	ikq4Ta1lHMAqMuU6L4be2R4VyL8oaUatP15ZjSmQ3ER7HZWONvf2qlLfy9ejOwaq8dWZdx1TzHABg
	Btf74oojdUPeKlTX6aP1P/4wnX9K4J712yCJJEh9dWIUqmb5njLeyXxExlAJBJW3YhM8=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161516-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161516: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=ec2e3336b8c8df572600043976e1ab5feead656e
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 14:49:56 +0000

flight 161516 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161516/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              ec2e3336b8c8df572600043976e1ab5feead656e
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  293 days
Failing since        151818  2020-07-11 04:18:52 Z  292 days  285 attempts
Testing same since   161516  2021-04-29 04:18:53 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastian Germann <bastiangermann@fishpost.de>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 55101 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 14:53:24 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 14:53:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120117.227132 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc82R-0003PI-U8; Thu, 29 Apr 2021 14:53:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120117.227132; Thu, 29 Apr 2021 14: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 1lc82R-0003PB-Qm; Thu, 29 Apr 2021 14:53:11 +0000
Received: by outflank-mailman (input) for mailman id 120117;
 Thu, 29 Apr 2021 14:53:10 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc82Q-0003P6-Bt
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 14:53:10 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 975a48b9-01ac-431a-a293-d32427b3c153;
 Thu, 29 Apr 2021 14:53:09 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8D241B14D;
 Thu, 29 Apr 2021 14:53: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: 975a48b9-01ac-431a-a293-d32427b3c153
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619707988; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=adXf7HtP868fYunjNDwKNqaEg8tQ5pEWsSpuZOoMxE4=;
	b=sQtftRAxkQUgrCJITKkmwK61qR8sKmIaOCGWHAI/uNjsjuSOpx2ERORHYSz+cWiFAslvkD
	v6eCeqJ0Dgwg6DpZ+7SeDEcDJzEkxSlLADddHYg0+HAzqPNaY6Nr7RUlm6MBiA/kJQkGAJ
	iIrYithIhQ+gAnjaEYFz9hGhTwTiAyM=
Subject: Re: [PATCH v4 01/12] x86/rtc: drop code related to strict mode
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: <20210420140723.65321-1-roger.pau@citrix.com>
 <20210420140723.65321-2-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <f282a2a2-e5cb-6a65-690a-b9c27c03089a@suse.com>
Date: Thu, 29 Apr 2021 16:53:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210420140723.65321-2-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 20.04.2021 16:07, Roger Pau Monne wrote:
> --- a/xen/arch/x86/hvm/rtc.c
> +++ b/xen/arch/x86/hvm/rtc.c
> @@ -46,15 +46,6 @@
>  #define epoch_year     1900
>  #define get_year(x)    (x + epoch_year)
>  
> -enum rtc_mode {
> -   rtc_mode_no_ack,
> -   rtc_mode_strict
> -};
> -
> -/* This must be in sync with how hvmloader sets the ACPI WAET flags. */
> -#define mode_is(d, m) ((void)(d), rtc_mode_##m == rtc_mode_no_ack)
> -#define rtc_mode_is(s, m) mode_is(vrtc_domain(s), m)

Leaving aside my concerns about this removal, I think some form of
reference to hvmloader and its respective behavior should remain
here, presumably in form of a (replacement) comment.

> @@ -337,8 +336,7 @@ int pt_update_irq(struct vcpu *v)
>      {
>          if ( pt->pending_intr_nr )
>          {
> -            /* RTC code takes care of disabling the timer itself. */
> -            if ( (pt->irq != RTC_IRQ || !pt->priv) && pt_irq_masked(pt) &&
> +            if ( pt_irq_masked(pt) &&
>                   /* Level interrupts should be asserted even if masked. */
>                   !pt->level )
>              {

I'm struggling to relate this to any other part of the patch. In
particular I can't find the case where a periodic timer would be
registered with RTC_IRQ and a NULL private pointer. The only use
I can find is with a non-NULL pointer, which would mean the "else"
path is always taken at present for the RTC case (which you now
change).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 15:01:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 15:01:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120126.227143 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc8AN-0004N9-RK; Thu, 29 Apr 2021 15:01:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120126.227143; Thu, 29 Apr 2021 15:01: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 1lc8AN-0004N2-OK; Thu, 29 Apr 2021 15:01:23 +0000
Received: by outflank-mailman (input) for mailman id 120126;
 Thu, 29 Apr 2021 15:01:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc8AM-0004Mx-1h
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 15:01:22 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c2ef2041-cea2-49b7-bce5-b4bc2df13556;
 Thu, 29 Apr 2021 15:01:21 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 256D5B155;
 Thu, 29 Apr 2021 15:01: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: c2ef2041-cea2-49b7-bce5-b4bc2df13556
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619708480; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=PvmUm53KgHCXUaJWnWOnwWFCAA9Erof4GJ5DZXmYtiA=;
	b=fbnn1mcexhEDrmoScLvJ9FadC3pZd8Ibh4+f2kbrz0K7ml+q5jmVDAh/qa5vDv2lnz8csA
	PDR2uGG6rwLxEvfyU6FXrLnLbATOGUERGNBkX7gtw+V4j2LgM9f9cYwMeKzkjaDtVVqE2p
	7U8wlwf2uh+bVkE7ei5WBZUrvrSUFrU=
Subject: Re: [PATCH v2 02/12] x86/p2m: {,un}map_mmio_regions() are HVM-only
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <7f8ca70d-8bbe-bd5d-533a-c5ea81dc91a2@suse.com>
 <YIrHO9N6YgQEOpJh@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <b11df1ad-6e2e-9c87-6adb-410402c8dcb5@suse.com>
Date: Thu, 29 Apr 2021 17:01:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIrHO9N6YgQEOpJh@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 29.04.2021 16:48, Roger Pau Monné wrote:
> On Mon, Apr 12, 2021 at 04:06:34PM +0200, Jan Beulich wrote:
>> Mirror the "translated" check the functions do to do_domctl(), allowing
>> the calls to be DCEd by the compiler. Add ASSERT_UNREACHABLE() to the
>> original checks.
>>
>> Also arrange for {set,clear}_mmio_p2m_entry() and
>> {set,clear}_identity_p2m_entry() to respectively live next to each
>> other, such that clear_mmio_p2m_entry() can also be covered by the
>> #ifdef already covering set_mmio_p2m_entry().
> 
> Seeing the increase in HVM specific regions, would it make sense to
> consider splitting the HVM bits into p2m-hvm.c or some such?

As said on the 01/12 sub-thread, I see the goal as p2m.c as a whole
becoming HVM specific.

>> @@ -1932,7 +1934,10 @@ int map_mmio_regions(struct domain *d,
>>      unsigned int iter, order;
>>  
>>      if ( !paging_mode_translate(d) )
>> +    {
>> +        ASSERT_UNREACHABLE();
>>          return 0;
>> +    }
>>  
>>      for ( iter = i = 0; i < nr && iter < MAP_MMIO_MAX_ITER;
>>            i += 1UL << order, ++iter )
>> @@ -1964,7 +1969,10 @@ int unmap_mmio_regions(struct domain *d,
>>      unsigned int iter, order;
>>  
>>      if ( !paging_mode_translate(d) )
>> +    {
>> +        ASSERT_UNREACHABLE();
>>          return 0;
> 
> Maybe consider returning an error here now instead of silently
> failing? It's not supposed to be reached, so getting here likely means
> something else has gone wrong and it's best to just report an error?

Can do, sure. Would be -EOPNOTSUPP.

> The rest LGTM:
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 15:06:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 15:06:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120131.227155 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc8Fb-0004Xm-Fl; Thu, 29 Apr 2021 15:06:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120131.227155; Thu, 29 Apr 2021 15:06:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc8Fb-0004Xf-Cm; Thu, 29 Apr 2021 15:06:47 +0000
Received: by outflank-mailman (input) for mailman id 120131;
 Thu, 29 Apr 2021 15:06:46 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SJyU=J2=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lc8Fa-0004Xa-Ju
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 15:06:46 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9235659a-aa41-44d8-81ce-4a4c56d1524e;
 Thu, 29 Apr 2021 15:06: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: 9235659a-aa41-44d8-81ce-4a4c56d1524e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619708805;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=t4THo9la8+oLv8Q0KTwPtDuBq1zsumXO5en4gS8KQRk=;
  b=XzzkpC727l+Yy08bGrHvK5ZEJbJ1vrszf+IzTWgvEB+srnbnCxjt6nPV
   YbalMA63MLrGeYQXiYNQZOZHXkVk/KL0dwVQ3iEyd6RLa/dDEr16IH1o9
   j2t/DwKoh7d6neFTAPOIEQAFlv8jEZ7FacZjXSK9yx1jmWepwlqlCTWSe
   U=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: gIPNEHYh1ImQe8UpVUOF7jTpR3YkMbGnst8+xFZmWKCAzBD0kxBdllUV3O8jyMK1o1P5PBMImj
 xx9TbJsFANAGv2CDm3/42Cg1VtWHsMNoAcfh+/ju5Hl9AVcrNX8O4XvYrh1aHywhEQIusH5+Ul
 tmR0jnlQk6lyMiDCUJs0MDweWWhFGKv3MikV2QEkg8uYQj8zm0ZAthvyonSx3x0aIXs7X6/j8i
 /ufQk3wePDbjXlgX3NBV4ZcFO4fqwH6HIbNcDEi9WRcQ5qAzbKUTCjBO3ODxXASosvNrMzALkP
 HIw=
X-SBRS: 5.1
X-MesageID: 42531525
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:QvBgpqqiuoELcODvI6/r8OsaV5uWKtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQZ3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIRg/I
 9aWexFBNX0ZGIQse/T6gO1Cstl5dGB/ryhi+u29QYXcShBQchbnmREIyycFVB7QxQDIJI/Go
 aV6MYvnUvbRV08aMOnCn4ZG9XSvtGjruOqXTcqJT4CrDOPgzSh9aLgH3Gjsis2fjtTzd4ZgA
 /4uiPj4KHLiZCG4z/ak1Te9pFH3Obmo+EzfPCkrugwBnHShh2zZIJnMofy8AwdhO208l4lnJ
 3tjn4bTqJOwkjcdG20vhfhsjOIuFlB11bYxVCVmnflq8DiLQhKcvZpv55TcRfS9iMbzbNB+Z
 9LxG6Qut52Ch7NjU3Glrz1fixqjUa9rD4el/cShRVkIO4jQYJWxLZ+wGplVLM7WA7q4oEuF+
 djSOvG4uxNTF+cZ3fF+kFy3d2FRB0Ib1m7a3lHnvbQ/yldnXh/wUdd7tcYhG08+JU0TIQBz/
 jYM55viKpFQqYtHONALdZEZfHyJn3GQBrKPm7XC0/gDrs7N3XErIOyx7kp+uewetgtwIEpkJ
 rMFHNU3FRCO37GOImr5tlm4xrNSGKyUXDG0cdF/aV0vbX6Wf7lKiuGRFcyk9axovkWD8HBMs
 zDeq5+MrvGFy/DCIxJ1wrxV915Mn8FSvAYvd49RhaPr6vwW8jXn92eVMyWCKvmED4iVG+6KG
 AERiLPKMJJ6V3uXnf5hRPWSm78Y0CXx+M1LIHqu8wojKQdPIxFtQYYzX6j4NuQFDFEuqsqOE
 1kIL3mlau/rXKs/XnB6nhoPhY1NDcX3JzQF1dx4SMaOUL9drgO//+Ff3pJ4XeBLhhjC9/NHB
 VHvFRx86KvJ5mWzSQvYujXdV6yvj82njanXp0ckqqM6YPZYZs+FI8hQ7E0Px7MDQZJlQFjr3
 pjZAcISlTELC7njbyogfUvdafiXug5pD3uAMZP7VrDqE2XpKgUNwYmdg/rdfTSvCEDaH5/gE
 Zr/6oWnbya8AzfVVcXsaAfK11DaGOeHbRcKh+KDb8k1YzDcB1sTGuMmDyRgwwyfG2v7EkJmm
 n9N0SvCI72K0sYtXZC3qnw9lRoMm2bYkJrc3h/9ZZwDGLcpx9IoKS2T7v21mbUc0AFyO0GKj
 3JCAFiVj9G1pSy1BSPniyFGmhjzpIyPvbFBLBLScCb5lq9bImJn7oBBfla4dJsM83vqPYCVa
 aadxWOJD31T+Mv1Ar9nAdsBABk7H0lm+jvwhvr8Syx22M+G+PbJBB+XK4ASuvsmlTMVrKNyt
 F0nNg1tey/PiH4bcOH07jea3pGJgnIqWC7Quk0oflvzOgPnao2G4OeXSrD1XlB0hl7NsvymU
 8ESKlw4bzKOOZUDrovUjMc+kBsmMWELUMtvACzH/Q3eks1iWTHe9yO+LjFpNMUcz+8jRq1PU
 Pa9SJT//3IBXTekbEbDr89OmRQZgw37m948OaLao3XD0Greoh4jSqHG274dKUYTq6PXagUpF
 J95dqDmueMbSr22AzKp1JAU9Vz2nfiRdn3GR6GHO5D7sezNluNiLa7+cLbtkaHdRKrL0ADwZ
 BffUMebs5fmiAvgY0+3C+1ULH2qCse4ihjyCAikEXs1Iig6HraGk8DMRSxuOQpYQVu
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="42531525"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I3atVyNVLyqacKdamjeeLeAfF7kM6j7/bwCjFqa+jP6gl6W+mjE20rTmfQOmVPompOsEawaSxW5V2nmR5+rh6KyaQZnk90YKSzc2FD8Goxo8uBqKgvUJUkv9Tj7Ptx7Qg/crOFGC0qWVD3J7qH/f4XG64yqJLYavHhQbpKUoD272GMHCqiG9+47B2pQ+6VFrw1jBpShLqHcNBwtqZYUgte2FyZsMHy0yMFeCa8kh1gCFmy6Hgnisf24h10tMU1WDzLUh0vbS6xlWPSDSL3D1LZatgyQ+bC4PdH01ObdbmDrQJdXt29T9nH5TmKFnzsuoSGwwVi6W3AoBLGmh19fl2w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gYxT9YNRP9D0r9dmMFv3NEeRnQz1i+fp5X4gJx5oSkY=;
 b=HL800/m5j2S2zbPfIJcglnqC+SjkR5di18r4OPeLUdD+rNCnTdUyyEm30iK49LdiNvuLHQE/LC1JpofOTidslJTFPj0qa+WYITUkffDaGGCeWcOyN100vkE3O3xTEoNeD8P1ZE8JesDqgecf1taLZiWE6QR1lY3k+unJHCcsexYYvsLAHExTDhquDAW7OwErq3nyXTNaVtiW3OxU/c+a+U6zcR1vuR4mNi5dhMjw/3/BXIopeRi+sHzuPNG7FQfew9IjaRZB2TAvAxeb09Wowyn1oCop3gtNsx0Xv4HlW/Qa+lPMGd5pAr9ywUusK8/jK5roYdAfLTZCnFiuPBfuWw==
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=gYxT9YNRP9D0r9dmMFv3NEeRnQz1i+fp5X4gJx5oSkY=;
 b=GkPU0rjN8F9zpU9oGR0lJhcjENh5sr8zVMKgfWHLH+3lnIzvPPlFkLxWZxZnbAZOiuLKkMWuFoYGDDDLQzkTPQMAIWzWjiXBguy9NY4hbxYLeQQqv5pGz7kWQABNB4NURGombJUVO1BJ/dTZiyPR4maTdmWygdCmXsONn1iTyFE=
Date: Thu, 29 Apr 2021 17:06:37 +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>, George Dunlap
	<george.dunlap@citrix.com>
Subject: Re: [PATCH v2 01/12] x86/p2m: set_{foreign,mmio}_p2m_entry() are
 HVM-only
Message-ID: <YIrLfRzQ2ADeF3/n@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <4b842581-e24d-6b74-eef5-7ac48f0ff0a4@suse.com>
 <YIqx3LahSx1bmgNo@Air-de-Roger>
 <9dc64292-d87c-77ba-1356-80cb14348973@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <9dc64292-d87c-77ba-1356-80cb14348973@suse.com>
X-ClientProxiedBy: MR2P264CA0118.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::34) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0a29f5cf-3832-4266-545d-08d90b20655e
X-MS-TrafficTypeDiagnostic: DM6PR03MB4299:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB42994DECD171911C1F551D658F5F9@DM6PR03MB4299.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: rqGhXfIclNEDxnox1uMrxwIi3pjqxoQM2FdA4fc1UcPUyBGvBZGJDUkEmG1/bAIZluqYm5gJVIs3i91X6tLKdNwb2W57FTjk+PFAglTSQptRkLHEqyY7E7gHAJ7TieMa04aNq1+Oy1QD0rymn0YVt/L+W7aCF2K9RBUTsybqHcSpyYAe7ouJ2ZDoRiwKApJ9bPUcajF7wV6n4IA6wghuOE6ZKdGxdyJlj4mT5mtgdigDPsAp0g1kfLgJbS50ChEkNgqdWYjV2MDXyoWptOunVvfLBgiwNTvcfwc3CmcdB43XgaZi15i7oG+EI4lSaN7spTyFyqW+9E/Q8vDhvN9kocYbKcyo1NjvHElp5YZzxyOSh8u58X9JtovPEhT80mVTuMCpaiNyHs/AXS8UptDvSwd4G0KXnbkwmfA+Xp052uH9yK4UnWa/kJsn1fWgCEyflKullSsgjR5Co6dbSB6M6HRm3zYvowcWIc6GeU1d0HANqYAOrN1eZGRQ7kT4GSwwgBQQy5t6XtHYKMR/MRNuFQiZ3CiqIdm4o4m6iniL3Fpv9NGA/4A5GMzBAxKoDowOodp+H309O80tsHi9j3Lvb1u3Otm758l+gkJyKQGX4yCgWu2iI0tmut80ue/Vw3Rc8EJS05+3zKKwbhpyxTRg/NG7G3+xkON1XvtUcYUuzJ0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(366004)(396003)(376002)(346002)(39860400002)(66556008)(85182001)(54906003)(478600001)(9686003)(66946007)(956004)(2906002)(8936002)(6916009)(26005)(186003)(6666004)(316002)(16526019)(6486002)(53546011)(5660300002)(107886003)(33716001)(86362001)(6496006)(38100700002)(4326008)(8676002)(66476007)(70780200001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 0a29f5cf-3832-4266-545d-08d90b20655e
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 15:06:41.9475
 (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: h3isXGEsDYsyuErrvTwDkn20P8P+AVOdEbZWgZS23Vc26Iv0OHll+WYypgkmAVsvMQAxN9m+83xUOyLTqdu9Aw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4299
X-OriginatorOrg: citrix.com

On Thu, Apr 29, 2021 at 04:09:30PM +0200, Jan Beulich wrote:
> On 29.04.2021 15:17, Roger Pau Monné wrote:
> > On Mon, Apr 12, 2021 at 04:05:41PM +0200, Jan Beulich wrote:
> >> Extend a respective #ifdef from inside set_typed_p2m_entry() to around
> >> all three functions. Add ASSERT_UNREACHABLE() to the latter one's safety
> >> check path.
> > 
> > Wouldn't it be better to also move the prototypes in p2m.h into a
> > CONFIG_HVM guarded region, so that it fails at compile time rather
> > than link time?
> 
> In the header I'm fearing this ending up as spaghetti more than in
> the .c file.

I would just move them all into a common CONFIG_HVM section rather
than adding CONFIG_HVM guards around each of them.

> I think where possible we may want to do so once we
> have a clear / clean set of APIs which are generic vs such which
> are HVM-specific (which I expect to be the case once p2m.c as a
> whole becomes HVM-only).

Oh, I would certainly like p2m.c to be HVM-only (see my comment about
introducing a p2m-hvm.c). Anyway, my only comment was about the
header, so:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 15:14:22 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 15:14:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120136.227168 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc8Mr-0005R5-89; Thu, 29 Apr 2021 15:14:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120136.227168; Thu, 29 Apr 2021 15: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 1lc8Mr-0005Qy-48; Thu, 29 Apr 2021 15:14:17 +0000
Received: by outflank-mailman (input) for mailman id 120136;
 Thu, 29 Apr 2021 15:14:16 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SJyU=J2=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lc8Mp-0005Qt-V9
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 15:14:15 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dee5d07a-eb56-4728-87da-0244666d802f;
 Thu, 29 Apr 2021 15:14: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: dee5d07a-eb56-4728-87da-0244666d802f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619709254;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=VF19BFw0+zJIX3rOxY8qXszM9kX8YGmGMLuQjlGFEEc=;
  b=QVVtWpERyJdyWEzl5u0jOiZ9yVYkbV451aKGxfc0xS1Kahos1B4HhoD8
   RfDH4c3JPnDlGKk+16MvOujdvRo+Rcafsxl49uW8Cmw+av4EEE7Ox3QSd
   K2LX4+DJLPlW8UXm/f7BxFkfbRLmsk1RwONbMjQI0Fnz5hJ6FuWkzijZZ
   M=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: +mMeZz95DOHkLV/bWuJ6pKTZnRPfVOYcXl5YBYoxiZeTIbUL/IKvZmwBN1VxAJeWlNhjxy2nPW
 nJ73s7uRjeOxM65ISs9kmm0VAUMNRYldZJHdLAO/S+Zmh7e5nkbYUXMYDXiRt86ePP28smazPK
 T+0Rs681ZLxMnDBBqJ+E0izNnjLNrQYQ4Xp0OTfAhxpQQGtgqi/nOdhSxgcz1k1RV69ebvguhA
 JwqiFYeHnI5mNnMBM3dVZ5eUqbmMdvJRw3O70oGEYaDBB5ws0IDbIPdCGnKd0pPYFp9xgoo7lY
 HRU=
X-SBRS: 5.1
X-MesageID: 43103969
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:yvqVBKMlVRJHasBcT3Pw55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAse9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrAHIMxbVstRQ3a
 IIScRDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RdQZCtBApsQiTtRIACdD0FwWU1qBYAhEo
 Cd+8pAoFObCAkqR+68AWQIWPWGmsbCk4jobQVDKxks7gSPij3A0s+HLzGz2BACXzRThYoz6G
 StqX2C2oyPkdGejiXd2Wja8ohMlLLaq+drKcSQhqEuW1DRoymyYoAJYczngBkUp6WV5E8ugJ
 3wpX4bTrtOwlfwWk3wnhf3wQnn118Vmgzf4HuVm2Hqr8C8ZB9SMbs4uatjfhHU61UtsbhHuc
 ohtQ/p1Os0fGb9tR/w6NTSWxZhmlDcmwtYrccpg2FCSoxbUbdNrOUkjTNoOa0dFyH34p1PKp
 gWMOjg4p9tADSnRkGclGxuzNuwZ280DxeLT2MT0/blogR+rTRXyVAVy9cYmWpF3JUhS4Nc7+
 CBCahwkqpSJ/VmIp5VNaMke4+aG2bNSRXDPCa7JknmLrgOPzbop4Ts6Ls4yem2cPUzvdUPsa
 WEdGkdmX85ekroB8HL9oZM6ArxTGK0Wimo4t1C5rBi04eMB4bDAGmmchQDgsGgq/IQDonwQP
 CoIq9bBPflMC/HBZtJ5QvjQJNfQENuEPE9i5IeYRajs8jLIorluqjwa/DIPofgFj4iRyfRGX
 0GcD/vJNhRz0yiV3Pi6SKhHk/FSwjax9ZdAaLa9+8cxMwmLYtXqDUYjly/+4WqJFR5w+gLVX
 o7BImivrKwpGGw82qNxX5uIABhAkFc56ild3tLoAQNIn7laLprgaTZRUlimF+8YjNvRcLfFw
 BS435t/7isEpCWzSc+T/WqL3ydlHlWgH6RVZ8Tlumi6K7eC9IFJ6djfJY0ORTAFhRzlwovgn
 xEchU4SkjWES6rr76kgpwSDOT2bMJ9nw+vHM5RpRvkxAehjPBqYkFecy+lUMaRjwprbSFTnE
 dN/6gWh6fFpSyiMlIlgOMzMERFbUOeBL4uNnXCWKxk3pTQPC1gR2aDgjKXzzU+YHDj+Ukpim
 v9FiGMYv3QDl1BundX77by/DpPBxegVnM1Tko/nZx2FGzAtHo26+ONa6ap+0a6a1cJwIgmQX
 v4SApXBjkr68G81RaTljrHKG4vwY82OPfBSJ45davI53+rIIqUtK0PEvNO5qx5PNT2vuJja5
 PHRyalaBfDT8850Q2coXgofBRuoH4/iPXyxVnL6nO70HNXO4uaHH1WA5UgZ/eS4GjvS6zWjN
 FXjdcpsfCxNWu0QNic0q3TZyNCLBSWgWPedZBelblk+YYJ8J10FN3ndBGN8ldt9hA3Nt31m0
 MTW74T2sGLBqZfO+gpPxtE9V8onumVJEQlsgbKEvYzFGtd+0PzDpes2f70srIhDU2KmRvoNX
 Se+yNb+e3ZXyHr789tN4sAZUBXYlM78nJs4aercJDREhyjc4h4jReHG074VL9WU66eH7oM6j
 58/tGThueSMw71whrZszc+AqVA9Q+cMI+PKTPJPe5D6NqhP1uQxoOs/c6olT/yDQKBVH5wv/
 wMSWUgKuJZijcji4Ur0i+9DozPy3hV7Wd20HVAjV7i2o+v/WHBO1pJWDep2qlrYQ==
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="43103969"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fRzm7bf0grBwkzaTr8zl0R40iid5h0ika5V8OOlD/zwX8faVNe4sDAFiRdsxrwciDCedC8SXPJ+00L2qQzQdWhqksbGSdQALpP3ez3qLtuaV7ZPee2U3Wteu1tIeVTo6JdZSr2obslxlct1ZQ11/wElhJW8giBD0AEYwVAt2AGI3sASjNM6i1DTdqWc06LCggIIa2Xp5BmcsKAJVcl+535Jh65Rk0rCU55l8pbfoFJrKYFe3bZWHj9TUNet2jvBzCsbFlorZKd7PHBej7nTJFwYu9ZltBb8qyRYaqhUWOdD6rI/mzwrgksjK89e8XTeiGPOe4coW9lyZ3eiOGloboA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=x0Bbs3LphpW85oFXqn3E6en/H/xTRIyg7eLQBHAY4fA=;
 b=gsaKOAPj4nXtHZMSY/OX6x1NbY5S/bDjnKoOaqgQQN+inwf3zR7Fz451VGuV9O3rxLONB91jneOBg5Jdmzehqx/uJuvQ488N+XAoKcL4dliD2xi7nv15LogkO2j9oBl+AD9SEoCBZKB/olGOpEUqcSOs/9Vv/t/CRUpVbP0hzDotSbaJ7OoOprY6HN4E9OdlFVwVCSqWUWxF2SYvLBF9WmqLTKH78RRgeWa+BY99WWelEGnbFhGXwSzbbAbReV9PHe+kdUp8oX9+EdHBjMtnNOa2o3JnPMpAEXBwwcb6ktBY3iKiz6sgULCFnFmJPy5G/zcX8q0qwNWiyeKS6CvQWQ==
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=x0Bbs3LphpW85oFXqn3E6en/H/xTRIyg7eLQBHAY4fA=;
 b=n2xFktvxxp0ulxMxXtq6IKa5c+VcEFgs7CeWgZz1Ow4iifVxMmQCy2VHALBdAXvn6Mj5u9ao+86c8ybifc/EVcCKTD6GzCMw6BCFB1snACzXTdyiLtvnzZK5jM4+2ly1LpB3CiwEQNuba6dKFvkp1nPTWIsDqJCW9FXczAu1A4E=
Date: Thu, 29 Apr 2021 17:14:06 +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>
Subject: Re: [PATCH v2 04/12] AMD/IOMMU: guest IOMMU support is for HVM only
Message-ID: <YIrNPltSssVDYwGm@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <187fa031-c237-2298-6b39-2c4a63b06c0f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <187fa031-c237-2298-6b39-2c4a63b06c0f@suse.com>
X-ClientProxiedBy: MR2P264CA0179.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::18)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: f7c22270-707c-4c18-5803-08d90b217175
X-MS-TrafficTypeDiagnostic: DS7PR03MB5605:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5605150D78BADB5AFD14EB818F5F9@DS7PR03MB5605.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:4941;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: UD6DS+YP3cLuvCsuTzL0lYW81ZEriI1Gz6800gePPeVJQdlDyx5mUwumKAEArbylB+mEZ1g0USvDIIqYaMg/nv6ngbr+vMPH6VISbJtmJoVCPeGbFZNJmkdyXxQONv74LqozAZaf/dc2S1sMA+BM4q1jus7k7L/cpAnDQzodFU59QTqu9DyTDbeFfKPLPLXYrYDFSVw4I626kPsCEVgnLfk5pG1NFAA+zx5vLNAD9+8j/xbMR+N+60FP015N66yDrJdJTtiMIZq+Cw4GkvIeWTE39+V2qDZPLi3hDm5cVTr57QcsYia9saNYsViWr9GvlqajzXy37pxHHLBHkCTmJGdzKVT0cv8B16pryF5ffYLdMjF2k4ovI8ei/MwBV1kA96t7FNYqoFybFD7pCKWUE//GOL7dJ6ozrCmGa6g5y7bF2TmYXlAdqWXCWG4PAtPpRBCxps9AFLnSHPGDoEGUyaLi7OC2E8Z2LPffAyqJiijUZguPboyxjERUkn+Twx6qOnMTNQFGnwhqgzqLzHZ4gEfHU1lNb12u4bhuo5xA5MPv7wVUmZItIlqrmUrnWOcyUfzullDhMv9UJwcAtWn4Jk1UwWGqYZ/aGn00eFbsg+g=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(39860400002)(396003)(136003)(346002)(376002)(5660300002)(33716001)(478600001)(38100700002)(26005)(9686003)(6666004)(186003)(107886003)(956004)(66476007)(54906003)(85182001)(6486002)(6916009)(8676002)(4744005)(16526019)(86362001)(66946007)(66556008)(8936002)(6496006)(4326008)(2906002)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: f7c22270-707c-4c18-5803-08d90b217175
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 15:14:11.5843
 (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: n12JfDnLC9yaoC+pbqSNcZDvX1HSuluAIFEePpb48eQKoRfE3bKfymGh+TBCYsXD7+oY9ra6YOFRGARfQW4H0A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5605
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:07:50PM +0200, Jan Beulich wrote:
> Generally all of this is dead code anyway, but there's a caller of
> guest_iommu_add_ppr_log(), and the code itself calls
> p2m_change_type_one(), which is about to become HVM-only. Hence this
> code, short of deleting it altogether, needs to become properly HVM-
> only as well.
> 
> 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 Thu Apr 29 15:48:50 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 15:48:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120144.227182 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc8u0-00082s-09; Thu, 29 Apr 2021 15:48:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120144.227182; Thu, 29 Apr 2021 15:48:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc8tz-00082l-Sx; Thu, 29 Apr 2021 15:48:31 +0000
Received: by outflank-mailman (input) for mailman id 120144;
 Thu, 29 Apr 2021 15:48:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc8ty-00082g-5N
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 15:48:30 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 11ecf22d-4f25-4b67-a06c-0cd87944ca2a;
 Thu, 29 Apr 2021 15:48:29 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6FD25AEA6;
 Thu, 29 Apr 2021 15:48: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: 11ecf22d-4f25-4b67-a06c-0cd87944ca2a
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619711308; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=kRcHWeI7wrH2wqnPkM+OfGLeZ3hELeyUsbrDTyst9uY=;
	b=tG3ILaGD4ENzkhqHMqZReuOWi9VmkysgeQ2/KyferAilSdK7axw+ZGoJQwLcpoGetc5iZU
	WfPgEUJDa5IUOOGNsXRiX+khTh61/DQTwPIGziWTabNMGGmg5y7LIUTjXafFTNpWecfVVt
	ljwWKvfc/BupM+ci4hb/tOvesX1QfmA=
Subject: Re: [PATCH v4 02/12] x86/vlapic: introduce an EOI callback mechanism
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: <20210420140723.65321-1-roger.pau@citrix.com>
 <20210420140723.65321-3-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <393a1804-6761-9f40-efc8-815993a815bd@suse.com>
Date: Thu, 29 Apr 2021 17:48:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210420140723.65321-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 16:07, Roger Pau Monne wrote:
> Add a new vlapic_set_irq_callback helper in order to inject a vector
> and set a callback to be executed when the guest performs the end of
> interrupt acknowledgment.
> 
> Such functionality will be used to migrate the current ad hoc handling
> done in vlapic_handle_EOI for the vectors that require some logic to
> be executed when the end of interrupt is performed.
> 
> The setter of the callback will be in charge for setting the callback
> again on guest restore, as callbacks are not saved as part of the
> vlapic state. That is the reason why vlapic_set_callback is not a
> static function.
> 
> No current users are migrated to use this new functionality yet, so no
> functional change expected as a result.
> 
> 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 Apr 29 15:49:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 15:49:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120151.227195 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc8uh-000898-EN; Thu, 29 Apr 2021 15:49:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120151.227195; Thu, 29 Apr 2021 15: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 1lc8uh-000891-AS; Thu, 29 Apr 2021 15:49:15 +0000
Received: by outflank-mailman (input) for mailman id 120151;
 Thu, 29 Apr 2021 15:49:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SJyU=J2=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lc8ug-00088v-A4
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 15:49:14 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 40eb7255-dcaf-4bc6-b7a6-bc5b089e14dd;
 Thu, 29 Apr 2021 15:49: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: 40eb7255-dcaf-4bc6-b7a6-bc5b089e14dd
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619711353;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=z1fKSP2QNwtgtSjcUP4UZliXkg6w39GVof3uaP1bGWE=;
  b=hrfHD0hro7lZsZfmNrPC6ZNLrYQ+bjsCPaUHWseP5cwJ1/ih2VwWQum+
   HjIzWrNBLOAfdRYJsfzjIaQAR0rkSGZ6ca7PZTrwMotc8TbzMQFrxM/ac
   hzAjdaS9MtiO3nVhZiLWhJIcZNF5i7QYCV4XcQxniATNwppxMxiHZtY1L
   k=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 6JLJtJaDxiQcVkDKblPaZEk9xHfPDKjKttCHfbTPETRTLoGhqKJ5IcHOJZJi/zLCNZN6vqajB1
 vbiGYsHFT+6peC5quJpCTiJQZ4kwX90nco+S28f8L/V3Z2PtH3QhWB5rIGF2TDFYwN0Ow4Ymlm
 MAnglIY2LycVWcDUy/lJFNfginoO+Jj1a6zKnyY+4uWLHHszGioIlOlh3wjamm/WK1DpC74aLl
 WX/DBo6m8+01pBhc8HBB8XbyxkL28Ua/MWnAurOzTBrWJOJ9/aGT8mnVToU+wDZ00LYLZGAtn3
 0kE=
X-SBRS: 5.1
X-MesageID: 43107644
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23: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
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="43107644"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MTl0Hud9PgaLcCRqJ0ANEPSUuYbNMgvQL7hMZSHxereF6bvOYpb1bWm5pt/WG9uWoFaqNMlz2dWGk40GDqFm1qLoNjOQzNFnrcxBOwrhn8SLYOz9CDOpCuIFLsE+RVIbkEbOjgyJhCiJCOCh0B+q7qPUchU9I/hV93uwMy/EP8DtgtdZWOtOnjo755gEeg/munzAiiiG3Yl/uix1HvrsS5WGXUlb5SQq5qURYJUblO81x9cXy60l8oXp8tZY8qbstwLScv07E045iTBo3bCdKbxRrm+7m4L2TzAxPJZMbRFnWistNXUNBs4F2zdF0lbzNCKK7Y1lCYMrDtHnueQviQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/MM05zdT3QVI80XF6xaBWZr+I6gI6WFhIVfCbdXKHU8=;
 b=NFFJOftkTURiHwJFg4+8+DRoq79qpl94wEyxWTxj9bc24eTHt1hZzzKFmvf4fPXF4tNDoE7kHTBUGl3RifG3o1Idx6g1k0gq4hnTPhVdc3UuL+jYDi6l0HIgu4udUOFbTSU/rbryQSR/zPe6IpryHrVnro7cu+TB+aiuvC+s11uUS47Xi/ukySYtXdl4izwvFmI8w0LV9UBxv4Xwf8Fyxm9IpPsl0+5lAqyzn1cBo+w/dRBbADirSp5TAtwvIXRGGiV2bszNG654feCv0jAJ51OcNbOsH6NatPMG4LUUKAPB+6j8Nm04GKl1Vh0mjsMhHX3G3ylmID9GrQao4gFBqA==
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=/MM05zdT3QVI80XF6xaBWZr+I6gI6WFhIVfCbdXKHU8=;
 b=BP1bSYLleWiQBBveSSF67BOJw0DaX8tcHmm+g/UQDcP+i5j1uy8bk6HLVrXDeHL0SJHe2QYF3kv8Hd/WQdFfhygcACxEggSiI/DQk4NqFKZfO1bv79JIy713Qf1BBeD79r163jRsyZW6UUEAuOYhFXoOl+BJD1n5tdbtMB09ABc=
Date: Thu, 29 Apr 2021 17:49: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>, George Dunlap
	<george.dunlap@citrix.com>
Subject: Re: [PATCH v2 05/12] x86/p2m: change_entry_type_* hooks are HVM-only
Message-ID: <YIrVb1xCYsYF94Vi@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <8f6e2834-fbc1-4f3b-c305-71bb20b04502@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8f6e2834-fbc1-4f3b-c305-71bb20b04502@suse.com>
X-ClientProxiedBy: MR2P264CA0092.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::32) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d868a2c2-8192-4746-4914-08d90b265394
X-MS-TrafficTypeDiagnostic: DM6PR03MB4057:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4057E809E588351E64C00C0B8F5F9@DM6PR03MB4057.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: kluUoXpwLEDkoObOlcOfAo4cDCK7fiZM0ZjOrNMFqthFZ5/q5rga5qE9Q6+JP1fXVPQyAQNaQ7s9KK9/wWoEWDGI06/nx28p7B08sn9um1boNaKLjDRVba0MhvpkdOGlumTjg98jYn4QKxaJnrUdiwOWXCvef+CbPogbkYSMZLJAZ2GMirRQyepsyNr1ZVSaH6KV/TNu2dHndg+3n8/1AJ3U30KL21LbOVve7dTZNTU+om+SruGpSCl3fAfxOcxRQhB0a9+4rHIlBM2cdw/5pxZRfOyx31bP6zncZpgKkKD0JPzAlHEQsP9jfQp9qzhQyAw3bxWe/kulkvHSCXM5JfKycZXPFXQSnYnkASzZA4ToXMK2XSoI6uC85F+YvUDrmycWyrodJJVYFEDNvTiMsdYQWLcBnPZTPlf4vXN8+F+YIsLccLcYneG+23qBlDNGdaDxhcGFnJM65NPMoAc7pYXLJYx5Tp2ifDZeWriisqp7BxwJ/X30xdcsGj+4P3INhrjQChUlsi2jl8aZttrbXZtbDlXffHz/PLtRp+4jwVy+7bgEk3qW6Bj7aJJOxEVvxu+XW7LOdHOtJ/srKWWaPw==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(396003)(136003)(346002)(366004)(39860400002)(8936002)(107886003)(86362001)(6916009)(4326008)(5660300002)(66556008)(66476007)(9686003)(16526019)(66946007)(33716001)(186003)(54906003)(8676002)(4744005)(956004)(316002)(26005)(478600001)(2906002)(6486002)(6666004)(38100700002)(85182001)(6496006);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?nacIfx5x+q67urPuxMVP3m7FYo3/vvZLHPsRU+s?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d868a2c2-8192-4746-4914-08d90b265394
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 15:49:08.9570
 (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: JWvpO6ced8ojcYPjILog+RLVC4ZRk1KWT6MRmtl6+YnArhvjRBfapkAcurHo+qT6qS2yHGh52xA34flEGUGuCA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4057
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:08:29PM +0200, Jan Beulich wrote:
> Exclude functions using them from !HVM builds, thus making it possible
> to exclude the hooks as well. Also cover the already unused
> memory_type_changed hook while inserting the #ifdef in the struct.
> 
> While no respective check was there, I can't see how
> XEN_DOMCTL_set_broken_page_p2m could have been meant to work for PV the
> way it is implemented. Restrict this operation to acting on HVM guests.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

I see you also make the recalc hook HVM only in a later patch, which
I was going to ask, so:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 15:51:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 15:51:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120156.227210 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc8wb-0000aP-T0; Thu, 29 Apr 2021 15:51:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120156.227210; Thu, 29 Apr 2021 15: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 1lc8wb-0000aI-PK; Thu, 29 Apr 2021 15:51:13 +0000
Received: by outflank-mailman (input) for mailman id 120156;
 Thu, 29 Apr 2021 15:51:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xfjL=J2=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lc8wa-0000aB-Q5
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 15:51:12 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6df97246-ae9e-4d53-a6eb-f047fd397faf;
 Thu, 29 Apr 2021 15:51:11 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id CE8AAAEA6;
 Thu, 29 Apr 2021 15:51: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: 6df97246-ae9e-4d53-a6eb-f047fd397faf
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619711470; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=bkwe+HJmqmilqg8AsmCJ4pWgrTNaXBW/4xK6N4eMWhI=;
	b=X38kS2rSb94Q36f5n65BgkhmWtv8UxliONrobN+oO3BJmyb+BaQ0bOd9SkMs3uZGzSmWnc
	cIQNZu9nZbDmCVnqBig4YVl4Pa+Ohyr51xQPl+2jNyQ1+vWjiLY+8t8oXW0cCGWuS1Vc5T
	5VSd7/BvwIJZNQ9YtPffLW09rjeMqA8=
Subject: Re: [PATCH v4 04/12] x86/vioapic: switch to use the EOI callback
 mechanism
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: <20210420140723.65321-1-roger.pau@citrix.com>
 <20210420140723.65321-5-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <e1fcc651-a554-d10c-a84e-d79518ae5888@suse.com>
Date: Thu, 29 Apr 2021 17:51:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210420140723.65321-5-roger.pau@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 20.04.2021 16:07, Roger Pau Monne wrote:
> Switch the emulated IO-APIC code to use the local APIC EOI callback
> mechanism. This allows to remove the last hardcoded callback from
> vlapic_handle_EOI. Removing the hardcoded vIO-APIC callback also
> allows to getting rid of setting the EOI exit bitmap based on the
> triggering mode, as now all users that require an EOI action use the
> newly introduced callback mechanism.
> 
> Move and rename the vioapic_update_EOI now that it can be made static.
> 
> 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 Apr 29 16:06:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 16:06:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120163.227222 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc9Aj-000273-66; Thu, 29 Apr 2021 16:05:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120163.227222; Thu, 29 Apr 2021 16:05:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lc9Aj-00026w-2q; Thu, 29 Apr 2021 16:05:49 +0000
Received: by outflank-mailman (input) for mailman id 120163;
 Thu, 29 Apr 2021 16:05:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SJyU=J2=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lc9Ah-00026r-Ue
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 16:05:47 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a823715c-e5a1-42d9-8662-90c8d807dce8;
 Thu, 29 Apr 2021 16:05: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: a823715c-e5a1-42d9-8662-90c8d807dce8
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619712346;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=3hacTCb/WoQp/xqK6ImKMPS674gvSTql/IYh9Vwwaoc=;
  b=Ox1IWHej0Hz6gW1GM6Vixr2RpnqVpppFPM3o2oVIfq6FXY2liJPmjhcU
   UDynCrgFC/besNuRlRddb8BNWqKB/kyoVXZf6SknWdEFjcfDijQyMQ9ng
   AmLz61ehVrKAsvsMJdbK8hEBkhNhPsX1jdYTFWyQIHQ33SlC5ul/p2ast
   o=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: xG8wnfF9cKaSZaCi0CspR/gQnv9WR9hwpAj3l53UEIZ0tcBI3TLvW3vtKeGGOSH6TmLQcG2jzL
 Q9H2zeamaNe2wtnE6ip6orIL8mjBsl/hCIPKUAA6alISxMpgkyql3DL8HcAfcuFfDKqR/S+0Tc
 sVls/lZlPQPbIKVJRSWzKwD1jsHwhsxCjuLSFqdwqI80Zt3ykElpSIDku3yNueTO7UbrMwwamG
 Ba/IdL80QcL7SUI2tHFmspmhGmGQfAJqB1NpQHbkBGSW/lRY25ywqX/uw+y6lGEar2YYV9xMNj
 Kew=
X-SBRS: 5.1
X-MesageID: 42719391
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:NJWlXa7hKlTZVyvUbgPXwXqEI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbDqzOEtwWQVAGN4VFI
 CE4NBGujqnfh0sH7mGL1MCWPXOoMCOqYnvZgQICwVixA6Fiz6p77CSKWnl4j41VTRTzbA+tV
 XUigCR3NTYj9iX6D/5k1XS4ZNfhcf7xrJ4ZfCkp8AJJlzX+2OVTat7XbnqhkFQnMiO7xIQnM
 DIs1McOa1ImgzsV0WUhTeo5AX6yjYp7BbZuCylqF/uu9bwSj5/K+cpv/MgTjLj50AtvM5x3c
 twtgrz3fcnbmKj7VHAzuPFWB1wmk2/rWBKq59ps1VlXZYDc7gUlIQD/SpuYec9NRjn44MqGv
 QGNrCk2N9qdzqhHhfkl1gq6tmtUnMvJwyBU0gPt+eEugIm7UxR/g82wtcSkWwH8494Y55Y5/
 7cOqAtr71WSNQKBJgNS9spcI+SMCjgUBjMOGWdLRDOE7wGAWvEr9rS7K8u7O+nVZQUxPIJ6d
 r8eWIdkVR3V1PlCMWI0pEO2AvKWn+BUTPkzdwbz4Rlu5XnLYCbchGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJgwxD+YZ9PMnMTOfdl+uoTaharmIbmO4fqvuvUfLL4P7z2CwspXWv5Hz
 8tRz72CMJc7l26e3PxjRTLMkmdP3DXzNZVKuz37uITwI8COslnqQ4Ok2m04cmNNHljv8UNDQ
 9DCYKitpn+iXi9/G7O4WksEAFaFFxp7LLpVG4PgQcLNkjzYIsSotn3QxEU4FK3YjtEC+/GGg
 9WoFp6vYitKYaL+CwkA9W7dkWXkmUUv3DPa5sHgKWM6YPEd/oDf9cbcZ00MT+OOw1+mA5spm
 sGQhQDXFXjGjTnjrjgqocVCuHZf9xVmxyqPsZQlHLauSyn1IMSb0peewTrfd+cgA4oSTYRrE
 Z26bUjjL2JnivqFXEym90iMFpHaH2eBZVPCAjtXvQTppnbPCVLCUuajz2TjB8+Pk7n7V8biG
 DaISqIQv3TGVZGtndE0qHlzUNsegymDjBNQ0E/lbc4OXXNu3513+POXKa13meLQnYpw+0WMl
 j+EHEvCzIr4+ry+A+emT6EG3lj+44nOfbFCq8/N5vJ3Gm2FYGOnaYaPvNd8Zp/LuryuusTXe
 /3QX7NEBrIT8cSnyCFrHcsPyd57EQ+mfTzwRv/8SyW2mU8Dfe6GiUue5grZ/Wnq07qSPaD3M
 8n0ZYbve6sPn7wbdDD46fNdDJHIg7Sp2nzb+xAk+EigYsC8J9IW7/cWn/08VsC+jMUBsL9jl
 kfT6R2+6qpAP4lQ+UiPwZiumM0n9GOJnYxugP4AuUCbUgg5kWrS++h0v7tk/4TGUWPqwv7BE
 mH/wBc9/nDWTGf1bRyMdNHHU1mLGw94m9l5uWMasn5DxirbfhK+DOBQzKAWY4YbKiOArMLqB
 lmp/mOgu+MbiL9nCTdpyFyLK4L02GpR6qJcU6xMN8N19yxIlKXhKS2pOa1kTfsUDO+L30iur
 ctTz1ZUu1zzh84jIM21SCuSqv45mId+mEunw1PpxrKwYip4GDSAEdcFxbW668mBQVuDg==
X-IronPort-AV: E=Sophos;i="5.82,259,1613451600"; 
   d="scan'208";a="42719391"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=f4UHYtz0Y1e1UGCk3DxUAU8dSC5h/hma70kaxxMYzjkPSvZuZ6QWjWG0kaA3VRpJ7trzioYvwyEgpIAkQqYftvojT8l6xNevRkR4qMpbEkFiOLTUHAkA0rRIWEWK+irrZMFFDQPLuyKM0psPEQ3+bCg4e7EY0z3uGD7Z6tLQEJ5QJCWO6qJlRpULrGUCVvhBnqC9e+r3rGj+FP2gtwWngr9enCG/D07NB6FbcU1RIBI0rxj3lYWaYQkUo8EVNPjL/P9wvLBPmsoYgav1/HlDelxnQQUVoi5lwntut1p1gUeGZ6tHeTE7fKk++6oC1D4wL9xF4QS/hmRwLTTpaNdbEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LbM7t5Aj3WdR8o4bnwkUQGfUjGA4FZ7S3PafoLezcdo=;
 b=NO+SoT6mRztZo1xSWDUjTmnm0GIP+ZjCsvLnQUU6u2pNHkZK7As8UPxx1+zQNXSTNcmmSJcDO/K9Eivw5fdiZ6ua18EWde2daaZDN7PtoOzaUDXUchm1Yw3DyiiqzLatGpOdDhrEYHh3c04NSU0LlDM4UwlG3wTt3ZpZDDkv+KYmQWbItZ1v+UKFtfbVWkcI7cF0Bqp7NYbQk/r1RFAER96QBN+RiJgM1g2nPonhPtwQ/9TI9OX13ynX4rh2bfc0ZjkUlVOJ6zZ8bHvks5jFeZHIX/r+AjxM6eXm+9SItPwHd60ly4rTAxQOhyl3VG/PuO6msTURo435SfC/zh0vyQ==
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=LbM7t5Aj3WdR8o4bnwkUQGfUjGA4FZ7S3PafoLezcdo=;
 b=sivYiQSKnlE6Sj5K7NTrzsd0uGmoocXDmwWrdpt7qF98SIHCfp7ORBfkKqjGxniE9hybrIHaFPbKqpNxUzqy0KwlCXmFj1NRLEY7Q+OF80q50SNLKn3xqXEMWLZCNFKUOEzLV/Gb/7y0kjd1t/3uutgxyro92N+E8Kxb7wG2+nM=
Date: Thu, 29 Apr 2021 18:05:35 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Andrew
 Cooper" <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>
Subject: Re: [PATCH v2 06/12] x86/p2m: hardware-log-dirty related hooks are
 HVM-only
Message-ID: <YIrZTw2iSG8FJgT1@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <e11aa162-9a07-9326-5b5b-5f4114f80255@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e11aa162-9a07-9326-5b5b-5f4114f80255@suse.com>
X-ClientProxiedBy: MR2P264CA0059.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::23) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 8d9595f5-f353-42bd-ac37-08d90b28a2ab
X-MS-TrafficTypeDiagnostic: DM6PR03MB5356:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB53569AD5D429917F0C02A8BD8F5F9@DM6PR03MB5356.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: c+v3OEIWQ3jFNmRiek8QXqAUOYdXfPNQQEtNTAHH6D1uUXGH6biQ6+VGSOuirdofjcsBzSGsPMaPEUoYZuCVnJiRPdnDoJ68qn18UEdz5RguJ+/LxHZ8SSpqmZi9u4I2Q9E1yENnfmYP4DUBJ/OksoDNsZyNcnosglkFIyXHKZKw8K/H2DZrBKCOPK6MLQLKKULayEpkFo1QSwpxufNMXsFOLhvnx45kEs9CqASHTwfBNn213bfdO/4r4a9v0ffK77yHoQQ8DMXE4eNkJbCLsiO6JKsr+6ebgz+Zwjq6Z6Oji0s5SIjtsGUemFPuOzzegz9RpXAn4pCUaBK669QOVZ+BwJvP9YCNvnc8NDhhmXzXNsGhgViUKrYnQ6XFWvhxlQ7PzTXijOiQvB6lqg/bCru25/4VGEeF3HeLwGAI4FYl7HLkGBQAgwZTi+arUKmaifBlmlp9znBh6zK6x5JW2l2OxXkyCd3AYw/suwzbE2/zg5lDfHOx/ogfuifRHzsRRqBUjXcexktUDLbnlAxkDWDIfk7buNWLxQDwnOJiYMSlsUJCvVn1E4AKSCqOsSldqkeGq9rRbOQZSMEMH44n3JvDW2BGgrtOEAfz/Bdykaxmgr27ebtYLsOqWB6KdRyAWtfBntVtWP+9hiG37uY0nA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(346002)(39860400002)(396003)(376002)(366004)(136003)(4326008)(4744005)(8936002)(478600001)(38100700002)(2906002)(6916009)(6496006)(54906003)(33716001)(8676002)(85182001)(66476007)(316002)(16526019)(107886003)(956004)(66946007)(66556008)(26005)(6666004)(9686003)(6486002)(5660300002)(186003)(86362001)(14143004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?GiofDZaPmIa+pxQ9KBpHFQA/7akeq1Jtp//Y8M7?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 8d9595f5-f353-42bd-ac37-08d90b28a2ab
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 16:05:40.6518
 (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: BAqnbajrGcK2szrFlyowXX4GZBrefJjPUKZxdGvm4zvcf9n5jmwF3YTq3cooFmj71C15f19b4TiGwu7ts1AMXA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5356
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:08:50PM +0200, Jan Beulich wrote:
> Exclude functions using them from !HVM builds, thus making it possible
> to exclude the hooks as well.
> 
> By moving an #endif in p2m.c (instead of introducing yet another one)
> p2m_{get,set}_ioreq_server() get excluded for !HVM builds as well.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 19:12:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 19:12:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120181.227278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcC4Y-0001HY-K1; Thu, 29 Apr 2021 19:11:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120181.227278; Thu, 29 Apr 2021 19:11: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 1lcC4Y-0001HR-Gr; Thu, 29 Apr 2021 19:11:38 +0000
Received: by outflank-mailman (input) for mailman id 120181;
 Thu, 29 Apr 2021 19:11:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yMpM=J2=vps.thesusis.net=psusi@srs-us1.protection.inumbo.net>)
 id 1lcC4W-0001HM-SA
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 19:11:36 +0000
Received: from vps.thesusis.net (unknown [34.202.238.73])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0e5ded02-895d-494b-9fb0-a88929ff5ed2;
 Thu, 29 Apr 2021 19:11:36 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by vps.thesusis.net (Postfix) with ESMTP id AB69F2ECA5
 for <xen-devel@lists.xenproject.org>; Thu, 29 Apr 2021 15:11:35 -0400 (EDT)
Received: from vps.thesusis.net ([IPv6:::1])
 by localhost (vps.thesusis.net [IPv6:::1]) (amavisd-new, port 10024)
 with ESMTP id zsHz4GR4vlWB for <xen-devel@lists.xenproject.org>;
 Thu, 29 Apr 2021 15:11:35 -0400 (EDT)
Received: by vps.thesusis.net (Postfix, from userid 1000)
 id 7BC0D2ECA3; Thu, 29 Apr 2021 15:11: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: 0e5ded02-895d-494b-9fb0-a88929ff5ed2
User-agent: mu4e 1.5.7; emacs 26.3
From: Phillip Susi <phill@thesusis.net>
To: xen-devel@lists.xenproject.org
Subject: Xen Virtual Keyboard modalias breaking uevents
Date: Thu, 29 Apr 2021 15:08:21 -0400
Message-ID: <87o8dw52jc.fsf@vps.thesusis.net>
MIME-Version: 1.0
Content-Type: text/plain

So I have finally drilled down to the modalias for the Xen Virtual
Keyboard driver being so long ( over 2KB ) that it causes an -ENOMEM
when trying to add it to the environment for uevents.  This causes
coldplug to fail, which causes the script doing coldplug as part of the
debian-installer init to fail, which causes a kernel panic when init
exits, which then for reasons I have yet to understand, causes the Xen
domU to reboot.

Why is this modalias so huge?  Can we pare it down, or or is there
another solution to get uevents working on this device again?  Maybe the
environment block size needs to be increased?  I don't know.



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 19:59:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 19:59:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120187.227290 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcCo1-0004hq-3V; Thu, 29 Apr 2021 19:58:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120187.227290; Thu, 29 Apr 2021 19: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 1lcCo0-0004hj-Vq; Thu, 29 Apr 2021 19:58:36 +0000
Received: by outflank-mailman (input) for mailman id 120187;
 Thu, 29 Apr 2021 19:58:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=DefK=J2=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lcCnz-0004hb-Je
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 19:58:35 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 184d094b-3b00-411c-8b04-17e8809499e8;
 Thu, 29 Apr 2021 19:58:34 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lcCnv-0002je-Vr; Thu, 29 Apr 2021 19:58:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 184d094b-3b00-411c-8b04-17e8809499e8
Date: Thu, 29 Apr 2021 20:58:31 +0100
From: Tim Deegan <tim@xen.org>
To: Costin Lupu <costin.lupu@cs.pub.ro>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH 1/5] tools/debugger: Fix PAGE_SIZE redefinition error
Message-ID: <YIsP5z1ejJbUhmPc@deinos.phlegethon.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <0cd234096c9bfa8d29eac9906553af79d378733e.1619524463.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <0cd234096c9bfa8d29eac9906553af79d378733e.1619524463.git.costin.lupu@cs.pub.ro>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

Hi,

At 15:05 +0300 on 27 Apr (1619535916), Costin Lupu wrote:
> If PAGE_SIZE is already defined in the system (e.g. in
> /usr/include/limits.h header) then gcc will trigger a redefinition error
> because of -Werror. This commit also protects PAGE_SHIFT definitions for
> keeping consistency.

Thanks for looking into this!  I think properly speaking we should fix
this by defining KDD_PAGE_SHIFT and KDD_PAGE_SIZE in kdd.h and using
those everywhere we currently use PAGE_SIZE/PAGE_SHIFT. in kdd.c and
kdd-xen.c.  If for some reason we ever ended up with a system-defined
PAGE_SIZE that wasn't 4096u then we would not want to use it here
because it would break our guest operations.

Cheers,

Tim


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 19:59:38 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 19:59:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120194.227301 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcCp0-0004ow-HB; Thu, 29 Apr 2021 19:59:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120194.227301; Thu, 29 Apr 2021 19: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 1lcCp0-0004op-E3; Thu, 29 Apr 2021 19:59:38 +0000
Received: by outflank-mailman (input) for mailman id 120194;
 Thu, 29 Apr 2021 19:59: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 1lcCoz-0004og-5u; Thu, 29 Apr 2021 19:59: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 1lcCoy-0003gi-Vs; Thu, 29 Apr 2021 19:59: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 1lcCoy-0007B2-PG; Thu, 29 Apr 2021 19:59:36 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcCoy-0004NG-Ol; Thu, 29 Apr 2021 19:59: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=EgqsTLl6Rc3bvYJRylZMiNsw9niNwKdTyxt31C6whHg=; b=fmBX1z9Xo7b42kOj4DBSVYQiMS
	XRmKRbNleT6QAi53GhUjmH5VPQxEIIfDIzWmBkCaNRrN88BmiPgR027C7Vk7U/L6GEVSWQiSiMsON
	h+BSiiTHpSH9XXsdPWqfJo6VYZnmqGf56EGHnPMZHZPoIIy4xS3Ekywf/so39GC3nMtw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161518-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161518: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=612edbe6cd71f4392b681b75849b2ab6e48f592d
X-Osstest-Versions-That:
    ovmf=01c0ab90beb3d2a80f913d4a0866b4e92656a42a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 19:59:36 +0000

flight 161518 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161518/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 612edbe6cd71f4392b681b75849b2ab6e48f592d
baseline version:
 ovmf                 01c0ab90beb3d2a80f913d4a0866b4e92656a42a

Last test of basis   161504  2021-04-28 12:10:11 Z    1 days
Testing same since   161518  2021-04-29 06:44:35 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   01c0ab90be..612edbe6cd  612edbe6cd71f4392b681b75849b2ab6e48f592d -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 20:03:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 20:03:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120201.227317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcCsq-0005nx-2u; Thu, 29 Apr 2021 20:03:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120201.227317; Thu, 29 Apr 2021 20: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 1lcCsp-0005nq-W4; Thu, 29 Apr 2021 20:03:35 +0000
Received: by outflank-mailman (input) for mailman id 120201;
 Thu, 29 Apr 2021 20:03: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 1lcCso-0005nf-J2; Thu, 29 Apr 2021 20:03: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 1lcCso-0003rP-Ef; Thu, 29 Apr 2021 20:03: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 1lcCso-0007ZB-83; Thu, 29 Apr 2021 20:03:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcCso-0005sm-7a; Thu, 29 Apr 2021 20: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=oh8kl3NBWRkOP+QcTcPAu/1ZF0nALcnBBe7c9iNmMZY=; b=KTkImwKiDHH/uRwKtJi+E2rLqy
	CZkhYOK6tjmV1P5KoPcpIf4oWm7Tf6wS9EgG/Y1Kr4/Whm/5ATRWGJCz0yS0loCKN3Lgx/xH0vzPK
	S8ftR3ZZvIKRXN4KgBFqleTaPrPr/AHm3sFwRix3SINN3EH0OCV18enEJoIfXyRJSLPc=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161525-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161525: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-start/debianhvm.repeat:fail:regression
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-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
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=39e7a942738f1ef48878fff67d140bbc0c83e7ff
X-Osstest-Versions-That:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 20:03:34 +0000

flight 161525 xen-unstable-smoke real [real]
flight 161528 xen-unstable-smoke real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161525/
http://logs.test-lab.xenproject.org/osstest/logs/161528/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 20 guest-start/debianhvm.repeat fail REGR. vs. 161483

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  39e7a942738f1ef48878fff67d140bbc0c83e7ff
baseline version:
 xen                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3

Last test of basis   161483  2021-04-27 13:00:27 Z    2 days
Testing same since   161525  2021-04-29 15:01:31 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.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                    fail    
 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 39e7a942738f1ef48878fff67d140bbc0c83e7ff
Author: Roger Pau Monné <roger.pau@citrix.com>
Date:   Thu Apr 29 16:05:00 2021 +0200

    x86/oprofile: remove compat accessors usage from backtrace
    
    Remove the unneeded usage of the compat layer to copy frame pointers
    from guest address space. Instead just use raw_copy_from_guest.
    
    While there change the accessibility check of one frame_head beyond to
    be performed as part of the copy, like it's done in the Linux code in
    5.11 and earlier versions. Note it's unclear why this is needed.
    
    Also drop the explicit truncation of the head pointer in the 32bit
    case as all callers already pass a zero extended value. The first
    value being rsp from the guest registers, and further calls will use
    ebp from frame_head_32bit struct.
    
    Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 9a5071e80be67e7a480ef9ba9680af6754198cdb
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Apr 29 16:04:35 2021 +0200

    x86: correct comment about alternatives ordering
    
    Unlike Linux, Xen has never (so far) used alternatives patching for
    memcpy() or memset(), even less such utilizing multiple alternatives.
    Correct the Linux-inherited comment to match reality.
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

commit 111c8c33a8a18588f3da3c5dbb7f5c63ddb98ce5
Author: Roger Pau Monné <roger.pau@citrix.com>
Date:   Thu Apr 29 16:04:11 2021 +0200

    x86/cpuid: do not expand max leaves on restore
    
    When restoring limit the maximum leaves to the ones supported by Xen
    4.12 in order to not expand the maximum leaves a guests sees. Note
    this is unlikely to cause real issues.
    
    Guests restored from Xen versions 4.13 or greater will contain CPUID
    data on the stream that will override the values set by
    xc_cpuid_apply_policy.
    
    Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit ec0ec164877be4e99dfef2ae27eea4ca6460cdf7
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Apr 29 16:03:38 2021 +0200

    xen/decompress: drop STATIC and INIT
    
    Except for one last instance, all users have been removed in earlier
    changes.
    
    Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Acked-by: Julien Grall <jgrall@amazon.com>

commit 2c6af6c7bbaa7c6b6945c0d4cd88aeebec5e85fd
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Apr 29 16:02:59 2021 +0200

    unzstd: replace INIT and STATIC
    
    With xen/common/decompress.h now agreeing in both build modes about
    what STATIC expands to, there's no need for these abstractions anymore.
    
    Requested-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 20:14:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 20:14:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120208.227331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcD37-0006je-4P; Thu, 29 Apr 2021 20:14:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120208.227331; Thu, 29 Apr 2021 20:14:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcD37-0006jX-1R; Thu, 29 Apr 2021 20:14:13 +0000
Received: by outflank-mailman (input) for mailman id 120208;
 Thu, 29 Apr 2021 20:14:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yMpM=J2=vps.thesusis.net=psusi@srs-us1.protection.inumbo.net>)
 id 1lcD36-0006jS-5f
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 20:14:12 +0000
Received: from vps.thesusis.net (unknown [34.202.238.73])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 38c3b407-288e-4d0a-8f6b-7d62307723de;
 Thu, 29 Apr 2021 20:14:11 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by vps.thesusis.net (Postfix) with ESMTP id 201FE2EC90;
 Thu, 29 Apr 2021 16:14:11 -0400 (EDT)
Received: from vps.thesusis.net ([IPv6:::1])
 by localhost (vps.thesusis.net [IPv6:::1]) (amavisd-new, port 10024)
 with ESMTP id 89QMLZuC1OIo; Thu, 29 Apr 2021 16:14:10 -0400 (EDT)
Received: by vps.thesusis.net (Postfix, from userid 1000)
 id D9C722ECB9; Thu, 29 Apr 2021 16:14: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: 38c3b407-288e-4d0a-8f6b-7d62307723de
References: <87o8dw52jc.fsf@vps.thesusis.net>
User-agent: mu4e 1.5.7; emacs 26.3
From: Phillip Susi <phill@thesusis.net>
To: xen-devel@lists.xenproject.org
Cc: linux-input@vger.kernel.org, dmitry.torokhov@gmail.com
Subject: Re: Xen Virtual Keyboard modalias breaking uevents
Date: Thu, 29 Apr 2021 16:10:09 -0400
In-reply-to: <87o8dw52jc.fsf@vps.thesusis.net>
Message-ID: <87fsz84zn1.fsf@vps.thesusis.net>
MIME-Version: 1.0
Content-Type: text/plain


It appears that input/input.c is responsible for the insane modalias
length.  If I am reading input_print_modalias() correctly, it appends a
"k" plus every key code that the keyboard supports, and the Xen Virtual
Keyboard supports a lot of keycodes.  Why does it do this?

Phillip Susi writes:

> So I have finally drilled down to the modalias for the Xen Virtual
> Keyboard driver being so long ( over 2KB ) that it causes an -ENOMEM
> when trying to add it to the environment for uevents.  This causes
> coldplug to fail, which causes the script doing coldplug as part of the
> debian-installer init to fail, which causes a kernel panic when init
> exits, which then for reasons I have yet to understand, causes the Xen
> domU to reboot.
>
> Why is this modalias so huge?  Can we pare it down, or or is there
> another solution to get uevents working on this device again?  Maybe the
> environment block size needs to be increased?  I don't know.



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 21:02:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 21:02:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120216.227353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcDnq-0002WK-Vt; Thu, 29 Apr 2021 21:02:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120216.227353; Thu, 29 Apr 2021 21: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 1lcDnq-0002WD-SQ; Thu, 29 Apr 2021 21:02:30 +0000
Received: by outflank-mailman (input) for mailman id 120216;
 Thu, 29 Apr 2021 21:02: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 1lcDnp-0002W5-KZ; Thu, 29 Apr 2021 21:02: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 1lcDnp-0004qj-BD; Thu, 29 Apr 2021 21:02: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 1lcDnp-0002lT-1H; Thu, 29 Apr 2021 21:02:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcDnp-0002jW-0l; Thu, 29 Apr 2021 21: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eLvZt8I/zqR6B3TWBg57yYhZqeN3tPPI94d3ZHGe5+M=; b=kPO0AtljJwe5Um6rM1PW+mRd63
	K6jgRK0q9skptqDtKeew1c0lqW+2v39VHeurgND2H8tzY5QTKOvCD6zVQuU+nJTv9aITMUmO3cvSP
	G6WvXJ7+A6JN/YUMvfBiV2AqKBvQsYqDAcK+SZg1/94BsmJsISyDLBvSHoOL38tl5kOA=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161512-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161512: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-xtf-amd64-amd64-3:xtf/test-pv32pae-xsa-286:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-start/debianhvm.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check: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-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm: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-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-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-amd64-amd64-libvirt-vhd: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-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
    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
X-Osstest-Versions-This:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
X-Osstest-Versions-That:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 21:02:29 +0000

flight 161512 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161512/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 161492 pass in 161512
 test-xtf-amd64-amd64-3       92 xtf/test-pv32pae-xsa-286   fail pass in 161492
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 20 guest-start/debianhvm.repeat fail pass in 161492

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161492
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161492
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161492
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161492
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161492
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161492
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161492
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161492
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161492
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161492
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161492
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-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-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-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-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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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          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-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

version targeted for testing:
 xen                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
baseline version:
 xen                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3

Last test of basis   161512  2021-04-28 23:39: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                  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                    fail    
 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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 21:05:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 21:05:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120224.227368 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcDqM-0002fS-Lt; Thu, 29 Apr 2021 21:05:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120224.227368; Thu, 29 Apr 2021 21: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 1lcDqM-0002fL-HJ; Thu, 29 Apr 2021 21:05:06 +0000
Received: by outflank-mailman (input) for mailman id 120224;
 Thu, 29 Apr 2021 21:05:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0vEL=J2=starlab.io=scott.davis@srs-us1.protection.inumbo.net>)
 id 1lcDqL-0002fG-My
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 21:05:05 +0000
Received: from GCC02-DM3-obe.outbound.protection.outlook.com (unknown
 [40.107.91.105]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 8330ee7a-db8a-423e-99c6-1c5341ec07a2;
 Thu, 29 Apr 2021 21:05:04 +0000 (UTC)
Received: from MN2PR09MB5258.namprd09.prod.outlook.com (2603:10b6:208:220::11)
 by BLAPR09MB6818.namprd09.prod.outlook.com (2603:10b6:208:2aa::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.28; Thu, 29 Apr
 2021 21:04:58 +0000
Received: from MN2PR09MB5258.namprd09.prod.outlook.com
 ([fe80::2939:7b58:8863:9a07]) by MN2PR09MB5258.namprd09.prod.outlook.com
 ([fe80::2939:7b58:8863:9a07%7]) with mapi id 15.20.4065.027; Thu, 29 Apr 2021
 21: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: 8330ee7a-db8a-423e-99c6-1c5341ec07a2
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RUi/siLzaXcCWb8d7npST+6L1mcsP/LRY8JNjT7Y2cTbFuz3/G0tx3FEP+4fdM3sF3sDxbYXn+vfomIhbiime/sEm3B+n3b3vlz2GddC4w29gfiOD/EPo08jAuQGxsdYUP7qDg36HXMdLbsYFJl79k3oW2MPWrv8Sj7NIjDtJG39gJ+th240E7qE54LDphY2uFFnM2BEF6rVwyOTYasHv5Q4f1M5xrTP3vUvlEvJ8RuNFB9VUzko0pqVXGwOPFAHZ5EbHZo8FcJDlwt9MKSrbvd0dOz1ZTilV9bIt2OREt/gPwBjUnJ0YaZj8g46ky+JDaK4MBvZB58nvhGd0I1yuQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2EFYX8tfPuM4fWgtWAa2+fUh+gll+yHoQFhgZvMWcHY=;
 b=il/UMDEuGIPqpYkQOVF9KHYkNaDxFIaaS3W7UdohTW1gnmUN4b3Yue7oqxWpjf18wPNoNIidanTnOrZP2tiFJwonjbYuAifb1MC2OArx5/QYFLY3QbJsaLS2HeQY621bEDFE5GChJOIeMlhk/9nrCP7IeHjMPD6RSUaEodb9SJcp1mO9lK8xY3Q20bP7TevTRUP6fkdnzZqP51DsTU8R2D7HErb6Tr+FIXkii9OccqZNZJ5OOYDNHsOIT18vflETyMzEUKVrDofXPe5xy2aMwwfbb3NQzq3ntLXUIfdzzTIfXUZ1z6SprxiO40B22MlRCvg/BBVOAIJ5MP0if8id/g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=starlab.io; dmarc=pass action=none header.from=starlab.io;
 dkim=pass header.d=starlab.io; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=starlab.io;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2EFYX8tfPuM4fWgtWAa2+fUh+gll+yHoQFhgZvMWcHY=;
 b=eN6C3foZEEGxRJn4wnGLnJMW8a4hu3tgWJO0xfVwefgd0EWzzUa1/bGiRm8tWZVlWAegBf8WD2apOl2LRcSHF9TO5b57GMIbOgFvZj+0e0fDsXW2/pdG5Z5OcfFgEXCyWilJw8R57d6bHVHF3Ohs+fbWe2WGJtpSfTRE+G/4qb4=
From: Scott Davis <scott.davis@starlab.io>
To: "paul@xen.org" <paul@xen.org>, Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <ian.jackson@eu.citrix.com>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
Thread-Topic: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
Thread-Index: AQHXOsEjPlXZorMQi0Kt8384oCpmdqrH72EAgAC5poCAAM1cAIAAEeQAgAI1xoA=
Date: Thu, 29 Apr 2021 21:04:58 +0000
Message-ID: <2A65573D-2DD6-49C7-B34C-27B15FD620B2@starlab.io>
References:
 <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
 <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
 <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
 <237ad45b-b68d-9d31-0fbc-1af52dfca808@suse.com>
 <dc6556ae-c653-8519-1a81-9524e4472f26@xen.org>
In-Reply-To: <dc6556ae-c653-8519-1a81-9524e4472f26@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: xen.org; dkim=none (message not signed)
 header.d=none;xen.org; dmarc=none action=none header.from=starlab.io;
x-originating-ip: [73.133.107.223]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 7d465265-7bb6-4e09-39f8-08d90b527262
x-ms-traffictypediagnostic: BLAPR09MB6818:
x-microsoft-antispam-prvs:
 <BLAPR09MB6818878CFA5014B991479165915F9@BLAPR09MB6818.namprd09.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 tANY73Ngk239yX4yOAMZt9omiW5n8WSjzjR0oaftDkhtoH2717TSarZ7RH7sBleeds0p1eSCGChNTjjk2rzxnyzRwgReTewY9Kl+CGMeYUq6VN95RAt5ej6STUUqOL02sKCthRGrNLwC+/FnraLTDo6tW72Ej9xXqmklXORhC5329UbMpyfuoCI4XtTmAmytEF4ZPQCiIrrzefL85nOVERunkOp8JAeVu5G/69fGEhGCRsOKWCbsRrXJDcdA6tfngqLeVX48WjdVZX+UtsHCoux31gEvj5eZSNDLGyXZUNjugYaxtMa6kG9zV4PVreAQuE4Qi/Q9q887V4NiXUD1jM70T6Pv4qI96e4pP44XZYcb+K34aSFZlkKL9TRgal05n1JZZK3UxPjt6pJgt8B7yO+zKPeuIgGk4dYVQfe4QvCwWY0fYrcffopHJbcME9vI/kjew/MYe/phLReuZdIQhbVKxFYIXMkfs8ALBFhxG+S0SZ2pjFzQnvh/1X9cDXTDwxmDngStLnVvhxUs1AQlE7jMiCRV0WYsxma7N8QyNLca0gzDyIeMng93TfKLibE9fvmDaMR1auJsrPwIg+0p3LJkGjplx4P1z3mQnqJu9zykUNu746ZCRz+uQdJm0DsQCRd+gV33xl7XvNf2xXI7x8EWSbpn9rjOPyCoOli0Tqg=
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR09MB5258.namprd09.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(346002)(136003)(396003)(366004)(39830400003)(36756003)(2616005)(316002)(66446008)(33656002)(66946007)(110136005)(478600001)(71200400001)(54906003)(76116006)(66556008)(8936002)(66476007)(38100700002)(6512007)(8676002)(44832011)(64756008)(86362001)(122000001)(4326008)(5660300002)(53546011)(6506007)(186003)(6486002)(83380400001)(2906002)(26005)(45980500001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata:
 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
 =?utf-8?Q?Ht2w65xGKmFYO9wbVMgYaODSSh/hskJJu/515mE?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <EBE09447C671E843807D071301C97173@namprd09.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: starlab.io
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MN2PR09MB5258.namprd09.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d465265-7bb6-4e09-39f8-08d90b527262
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Apr 2021 21:04:58.2455
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5e611933-986f-4838-a403-4acb432ce224
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR09MB6818

T24gNC8yOC8yMSwgMzoyMCBBTSwgUGF1bCBEdXJyYW50IHdyb3RlOg0KPj4gRm9sbG93aW5nIHRo
ZSBleHRlbnNpb24gdG8gdGhlIGNvbW1hbmQgbGluZSBvcHRpb24gSSdtIHB1dHRpbmcgaW4gcGxh
Y2UNCj4+IGluICJJT01NVTogbWFrZSBETUEgY29udGFpbm1lbnQgb2YgcXVhcmFudGluZWQgZGV2
aWNlcyBvcHRpb25hbCIgKHdoaWNoDQo+PiBJIHN0aWxsIG5lZWQgdG8gZ2V0IGFyb3VuZCB0byBh
ZGRyZXNzIHJldmlldyBmZWVkYmFjayBmb3IgYW5kIHJlc3VibWl0KSwNCj4+IEknZCBiZSBpbmNs
aW5lZCB0byBzdWdnZXN0ICJpb21tdT1xdWFyYW50aW5lPWFsd2F5cyIgb3INCj4+ICJpb21tdT1x
dWFyYW50aW5lPW9uLWFzc2lnbiIuIFVubGVzcyBvZiBjb3Vyc2Ugd2UnZCBwcmVmZXIgdG8gaGF2
ZSB0aGUNCj4+IGNhbGxlciBvZiB0aGUgYXNzaWdubWVudCBvcGVyYXRpb24gaGF2ZSBmdWxsIGNv
bnRyb2wgb3ZlciB0aGUgYmVoYXZpb3INCj4+IGhlcmUgYW55d2F5IChpbiB3aGljaCBjYXNlIGEg
Y29tbWFuZCBsaW5lIG9wdGlvbiBjb250cm9sIHNpbXBseSBpcyBub3QNCj4+IG5lY2Vzc2FyeSku
DQo+DQo+IEknbSBzdGlsbCBub3QgZW50aXJlbHkgc3VyZSB3aHkgbm90IHF1YXJhbnRpbmluZyBv
biBpcyBhIHByb2JsZW0sIG90aGVyDQo+IHRoYW4gaXQgdHJpZ2dlcmluZyBhbiBhcy15ZXQgdW5k
aWFnbm9zZWQgaXNzdWUgaW4gUUVNVSwgYnV0IEkgYWdyZWUgdGhhdA0KPiB0aGF0IHRoZSBleHBl
Y3RhdGlvbiBvZiAnbm8tcXVhcmFudGluZScgbWVhbmluZyBqdXN0IHRoYXQgKGkuZS4gdGhlIG9s
ZA0KPiBkb20wLT5kb21VIGFuZCBkb21VLT5kb20wIHRyYW5zaXRpb25zIGFyZSByZS1pbnN0YXRl
ZCkgaXMgcmVhc29uYWJsZS4gRG8NCj4gd2UgcmVhbGx5IHdhbnQgeWV0IG1vcmUgY29tbWFuZCBs
aW5lIG9wdGlvbnM/DQoNClJlZ2FyZGluZyB0aGUgcHJvYmxlbSBpbiBRRU1VLCBJIHRyYWNlZCB0
aGUgY3Jhc2ggdHJpZ2dlciBkb3duIHRvIGENCndyaXRlIHRvIHRoZSBJUSB0YWlsIHJlZ2lzdGVy
IGR1cmluZyB0aGUgbWFwcGluZyBvcGVyYXRpb24gaW50byBkb21faW8NCihiYWNrdHJhY2UgYmVs
b3cpLiBBbG9uZyB0aGUgd2F5IEkgbm90aWNlZCB0aGF0LCBzaW5jZSBhIG5vbi1wcmVzZW50DQpl
bnRyeSB3YXMgYmVpbmcgZmx1c2hlZCwgZmx1c2hfY29udGV4dF9xaSBvbmx5IHBlcmZvcm1zIHRo
aXMNCmludmFsaWRhdGlvbiBvbiBhbiBJT01NVSB3aXRoIGNhY2hpbmcgbW9kZSBlbmFibGVkIChp
LmUuIGEgc29mdHdhcmUNCklPTU1VKS4gVGhlcmVmb3JlIHRoaXMgaXNzdWUgaXMgcHJvYmFibHkg
b25seSBoaXR0YWJsZSB3aGVuIG5lc3RpbmcuDQpEaXNhYmxpbmcgY2FjaGluZyBtb2RlIG9uIHRo
ZSBRRU1VIHZJT01NVSB3YXMgZW5vdWdoIHRvIHByZXZlbnQgdGhlDQpjcmFzaCBhbmQgZ2l2ZSBt
ZSBhIHdvcmtpbmcgc3lzdGVtLg0KDQooZ2RiKSBzaQ0KMHhmZmZmODJkMDQwMjViNjhiICA3MiAg
aW4gcWludmFsLmMNCiAgIDB4ZmZmZjgyZDA0MDI1YjY4NyA8cWludmFsX3VwZGF0ZV9xdGFpbCs0
Mz46IC4uLiBzaGwgICAgJDB4NCwlcjEyDQo9PiAweGZmZmY4MmQwNDAyNWI2OGIgPHFpbnZhbF91
cGRhdGVfcXRhaWwrNDc+OiAuLi4gbW92ICAgICVyMTIsMHg4OCglcmF4KQ0KKGdkYikgYnQNCiMw
ICAweGZmZmY4MmQwNDAyNWI2OGIgaW4gcWludmFsX3VwZGF0ZV9xdGFpbCAoLi4uKSBhdCBxaW52
YWwuYzo3Mg0KIzEgIDB4ZmZmZjgyZDA0MDI1YmFhNyBpbiBxdWV1ZV9pbnZhbGlkYXRlX2NvbnRl
eHRfc3luYyAoLi4uKSBhdCBxaW52YWwuYzoxMDENCiMyICBmbHVzaF9jb250ZXh0X3FpICguLi4p
IGF0IHFpbnZhbC5jOjM0MQ0KIzMgIDB4ZmZmZjgyZDA0MDI1OTEyNSBpbiBpb21tdV9mbHVzaF9j
b250ZXh0X2RldmljZSAoLi4uKSBhdCBpb21tdS5jOjQwMA0KIzQgIGRvbWFpbl9jb250ZXh0X21h
cHBpbmdfb25lICguLi4pIGF0IGlvbW11LmM6MTQzNg0KIzUgIDB4ZmZmZjgyZDA0MDI1OTM1MSBp
biBkb21haW5fY29udGV4dF9tYXBwaW5nICguLi4pIGF0IGlvbW11LmM6MTUxMA0KIzYgIDB4ZmZm
ZjgyZDA0MDI1OWQyMCBpbiByZWFzc2lnbl9kZXZpY2Vfb3duZXJzaGlwICguLi4pIGF0IGlvbW11
LmM6MjQxMg0KIzcgIDB4ZmZmZjgyZDA0MDI1OWYxOSBpbiBpbnRlbF9pb21tdV9hc3NpZ25fZGV2
aWNlICguLi4pIGF0IGlvbW11LmM6MjQ3Ng0KIzggIDB4ZmZmZjgyZDA0MDI2NzE1NCBpbiBhc3Np
Z25fZGV2aWNlICguLi4pIGF0IHBjaS5jOjE1NDUNCiM5ICBpb21tdV9kb19wY2lfZG9tY3RsICgu
Li4pIGF0IHBjaS5jOjE3MzINCiMxMCAweGZmZmY4MmQwNDAyNjRkZTMgaW4gaW9tbXVfZG9fZG9t
Y3RsICguLi4pIGF0IGlvbW11LmM6NTM5DQojMTEgMHhmZmZmODJkMDQwMzIyY2E1IGluIGFyY2hf
ZG9fZG9tY3RsICguLi4pIGF0IGRvbWN0bC5jOjE0OTYNCiMxMiAweGZmZmY4MmQwNDAyMDVhMTkg
aW4gZG9fZG9tY3RsICguLi4pIGF0IGRvbWN0bC5jOjk1Ng0KIzEzIDB4ZmZmZjgyZDA0MDMxOTQ3
NiBpbiBwdl9oeXBlcmNhbGwgKC4uLikgYXQgaHlwZXJjYWxsLmM6MTU1DQojMTQgMHhmZmZmODJk
MDQwMzkwNDMyIGluIGxzdGFyX2VudGVyICgpIGF0IGVudHJ5LlM6MjcxDQojMTUgMHgwMDAwMDAw
MDAwMDAwMDAwIGluID8/ICgpDQoNCkFzIGEgcmVzdWx0IG9mIHRoZSBhYm92ZSwgSSBubyBsb25n
ZXIgaGF2ZSBhIG5lZWQgdG8gcGF0Y2ggWGVuIHRvIHdvcmsNCmFyb3VuZCB0aGUgcHJvYmxlbS4g
VGhvdWdoIEkgZG8gd2FudCB0byB0ZXN0IGFnYWluc3QgbmV3ZXIgdmVyc2lvbnMgb2YNClFFTVUg
KGN1cnJlbnRseSBvbiA0LjIuMSkgdG8gc2VlIGlmIGl0IHN0aWxsIGV4aXN0cy4NCg0KU28gdW5s
ZXNzIHRoZXJlJ3MgaW50ZXJlc3QgYW1vbmcgWGVuIGRldmVsb3BlcnMgZm9yIHRoaXMgcGF0Y2gs
IEkgd2lsbA0KcHJvYmFibHkgc2hlbHZlIGl0IGZvciBub3cuIEVzcGVjaWFsbHkgc2luY2UgaXQg
bG9va3MgbGlrZSBKYW4gaGFzIHNvbWUNCm9uZ29pbmcgd29yayBpbiB0aGlzIGFyZWEgdGhhdCBJ
IGhhZCBub3QgcHJldmlvdXNseSBkaXNjb3ZlcmVkLiBJZiB0aGVyZQ0KaXMgaW50ZXJlc3QsIEkg
anVzdCBuZWVkIGEgcmVzb2x1dGlvbiBvbiB3aGV0aGVyIGlvbW11PXF1YXJhbnRpbmUgc2hvdWxk
DQpiZSBsZWZ0IGFzIGEgYm9vbGVhbiBvciBleHBhbmRlZCB0byBzdXBwb3J0IGFsd2F5cywgbmV2
ZXIsDQpkZWFzc2lnbi1vbmx5LCBhbmQgKHdoeSBub3QpIGFzc2lnbi1vbmx5Lg0KDQpUaGFua3Ms
DQpTY290dA0KDQo=


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 22:13:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 22:13:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120233.227386 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcEtv-000050-NB; Thu, 29 Apr 2021 22:12:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120233.227386; Thu, 29 Apr 2021 22:12: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 1lcEtv-0008WV-Iv; Thu, 29 Apr 2021 22:12:51 +0000
Received: by outflank-mailman (input) for mailman id 120233;
 Thu, 29 Apr 2021 22:12:50 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/KXr=J2=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lcEtu-0008WQ-4o
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 22:12:50 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id caae0817-419e-4722-b369-0ded4c7450b7;
 Thu, 29 Apr 2021 22:12: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: caae0817-419e-4722-b369-0ded4c7450b7
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619734368;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=6LIVk1pu2pVsc+iERPoTgLfY8nG1QD9FVQ87ifPWYHo=;
  b=RxuM4n2OiI1FMye5NOmhKXCTV23hbyIHfVnzmGv1K1greOSP9lt7fC2b
   VfoNYmDiPcFVvkxwP+ayty2GqBLMHHeIP8bZG+rPEwvROHSEKgLoT285b
   RR2tCL5+uzYoCghMhGLEJxpDADgLQV4ahCllXduXPPJ59UkwtnNium1uV
   4=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: IFIfkzFNoIJ4cTvJ7RzIFSG6EjLriEUUXmHXlgAXR6ew1XlhUEDfeW/6/nfMGXLpxd4NhX4/zQ
 pxgeMfqzOFRK/EDQAaNuNYF1EdDkJC+RcRfsRJypW/FSS/pOTGGk72KWiT4hGJ2OFs/gGUYWh6
 NcAzb4LF4T4WQ6EDExDVuVQ4QCmtC4K/UJDyGV9FAMpeyTqmLQ2jG8e6pZU3SEsPMz9iMi5v/n
 Jt8c1d5KYipsV8ZA0DJ2gmJkOpjV1Cj795a1MS+oCUXrbuEMBEgr++AeCPw5yKwVE94/Hji9ES
 jVo=
X-SBRS: 5.1
X-MesageID: 43139989
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:ECStNqt6bsNDIAdzSLcGyZl+7skDktV00zAX/kB9WHVpW+az/v
 rBoN0w0xjohDENHEw6kdebN6WaBV/a/5h54Y4eVI3SOzXOkm2uMY1k8M/e0yTtcheOktJ1+K
 98f8FFaOHYIkN9ia/BjDWQN/YF7J25/LuzheHYpk0dKD1CT6179Q92BkK6PyRNNWp7LKE0Hp
 ad+cZLzgDIER98A/iTPXUZQ/PF4+TCiZOOW29hOzcc9AKMgTm0gYSaLzGk2H4lPA9n8PMH+W
 jBnxeR3NTAj82G
X-IronPort-AV: E=Sophos;i="5.82,260,1613451600"; 
   d="scan'208";a="43139989"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86: Always have CR4.PKE set in HVM context
Date: Thu, 29 Apr 2021 23:12:23 +0100
Message-ID: <20210429221223.28348-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

The sole user of read_pkru() is the emulated pagewalk, and guarded behind
guest_pku_enabled() which restricts the path to HVM (hap, even) context only.

The commentary in read_pkru() concerning _PAGE_GNTTAB overlapping with
_PAGE_PKEY_BITS is only applicable to PV guests.

The context switch path, via write_ptbase() unconditionally writes CR4 on any
context switch.

Therefore, we can guarantee to separate CR4.PKE between PV and HVM context at
no extra cost.  Set PKE in mmu_cr4_features on boot, so it becomes set in HVM
context, and clear it in pv_make_cr4().

Rename read_pkru() to rdpkru() now that it is a simple wrapper around the
instruction.  This saves two CR4 writes on every pagewalk, which typically
occur more than one per emulation.

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>

It also occurs to me that for HVM/Idle => HVM/Idle context switches, we never
need to change CR4.  I think this is substantially clearer following XSA-293 /
c/s b2dd00574a4f ("x86/pv: Rewrite guest %cr4 handling from scratch") which
introduced pv_make_cr4().

Therefore, it is probably work having a hvm fastpath path in write_ptbase()
which only touches CR3.
---
 xen/arch/x86/mm/guest_walk.c    |  2 +-
 xen/arch/x86/pv/domain.c        | 16 +++++++++++++++-
 xen/arch/x86/setup.c            |  3 +++
 xen/include/asm-x86/processor.h | 10 +---------
 4 files changed, 20 insertions(+), 11 deletions(-)

diff --git a/xen/arch/x86/mm/guest_walk.c b/xen/arch/x86/mm/guest_walk.c
index 1c601314f3..30d83cf1e0 100644
--- a/xen/arch/x86/mm/guest_walk.c
+++ b/xen/arch/x86/mm/guest_walk.c
@@ -416,7 +416,7 @@ guest_walk_tables(const struct vcpu *v, struct p2m_domain *p2m,
          guest_pku_enabled(v) )
     {
         unsigned int pkey = guest_l1e_get_pkey(gw->l1e);
-        unsigned int pkru = read_pkru();
+        unsigned int pkru = rdpkru();
 
         if ( read_pkru_ad(pkru, pkey) ||
              ((walk & PFEC_write_access) && read_pkru_wd(pkru, pkey) &&
diff --git a/xen/arch/x86/pv/domain.c b/xen/arch/x86/pv/domain.c
index f1cb92585e..731a262a2b 100644
--- a/xen/arch/x86/pv/domain.c
+++ b/xen/arch/x86/pv/domain.c
@@ -182,7 +182,21 @@ unsigned long pv_make_cr4(const struct vcpu *v)
 {
     const struct domain *d = v->domain;
     unsigned long cr4 = mmu_cr4_features &
-        ~(X86_CR4_PCIDE | X86_CR4_PGE | X86_CR4_TSD);
+        ~(X86_CR4_PCIDE | X86_CR4_PGE | X86_CR4_TSD | X86_CR4_PKE);
+
+    /*
+     * We want CR4.PKE set in HVM context when avaialble, but don't support it
+     * in PV context at all.
+     *
+     * _PAGE_PKEY_BITS where previously software available PTE bits.  In
+     * principle, we could let an aware PV guest enable PKE.
+     *
+     * However, Xen uses _PAGE_GNTTAB in debug builds which overlaps with
+     * _PAGE_PKEY_BITS, and the ownership of (and eligibility to move)
+     * software PTE bits is not considered in the PV ABI at all.  For now,
+     * punt the problem to whichever unluckly person finds a compelling
+     * usecase for PKRU in PV guests.
+     */
 
     /*
      * PCIDE or PGE depends on the PCID/XPTI settings, but must not both be
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index f2dff2ae6a..8105dc36bb 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -1790,6 +1790,9 @@ void __init noreturn __start_xen(unsigned long mbi_p)
     if ( boot_cpu_has(X86_FEATURE_FSGSBASE) )
         set_in_cr4(X86_CR4_FSGSBASE);
 
+    if ( boot_cpu_has(X86_FEATURE_PKU) )
+        set_in_cr4(X86_CR4_PKE);
+
     if ( opt_invpcid && cpu_has_invpcid )
         use_invpcid = true;
 
diff --git a/xen/include/asm-x86/processor.h b/xen/include/asm-x86/processor.h
index d5f467d245..d8d0dc8034 100644
--- a/xen/include/asm-x86/processor.h
+++ b/xen/include/asm-x86/processor.h
@@ -367,20 +367,12 @@ static always_inline void set_in_cr4 (unsigned long mask)
     write_cr4(read_cr4() | mask);
 }
 
-static inline unsigned int read_pkru(void)
+static inline unsigned int rdpkru(void)
 {
     unsigned int pkru;
-    unsigned long cr4 = read_cr4();
 
-    /*
-     * _PAGE_PKEY_BITS have a conflict with _PAGE_GNTTAB used by PV guests,
-     * so that X86_CR4_PKE  is disabled on hypervisor. To use RDPKRU, CR4.PKE
-     * gets temporarily enabled.
-     */
-    write_cr4(cr4 | X86_CR4_PKE);
     asm volatile (".byte 0x0f,0x01,0xee"
         : "=a" (pkru) : "c" (0) : "dx");
-    write_cr4(cr4);
 
     return pkru;
 }
-- 
2.11.0



From xen-devel-bounces@lists.xenproject.org Thu Apr 29 22:29:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 22:29:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120241.227403 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcF9v-00016l-6y; Thu, 29 Apr 2021 22:29:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120241.227403; Thu, 29 Apr 2021 22:29: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 1lcF9v-00016e-42; Thu, 29 Apr 2021 22:29:23 +0000
Received: by outflank-mailman (input) for mailman id 120241;
 Thu, 29 Apr 2021 22:29:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5QnA=J2=gmail.com=dmitry.torokhov@srs-us1.protection.inumbo.net>)
 id 1lcF9t-00016Z-EI
 for xen-devel@lists.xenproject.org; Thu, 29 Apr 2021 22:29:21 +0000
Received: from mail-pl1-x631.google.com (unknown [2607:f8b0:4864:20::631])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c54d38aa-83fb-4f36-8d4e-dc3ec78d15a9;
 Thu, 29 Apr 2021 22:29:20 +0000 (UTC)
Received: by mail-pl1-x631.google.com with SMTP id v13so21962959ple.9
 for <xen-devel@lists.xenproject.org>; Thu, 29 Apr 2021 15:29:20 -0700 (PDT)
Received: from google.com ([2620:15c:202:201:6b9:8bd2:eb38:bd68])
 by smtp.gmail.com with ESMTPSA id j7sm2048pfd.129.2021.04.29.15.29.17
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 29 Apr 2021 15:29: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: c54d38aa-83fb-4f36-8d4e-dc3ec78d15a9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=date:from:to:cc:subject:message-id:references:mime-version
         :content-disposition:in-reply-to;
        bh=sgF8y4qSHbAjhen0CmXgaqp9XHrSaJSa2Q0ESkD13WA=;
        b=tq/cCsIlvCnJBh+3GLUA7LgqRyfI04kFbPdD9WHZk2Znx/Zt/POlsXiTUSE7byz8iu
         5Nk1Vml6RCrecdX0Mj8NfTIy1LQSsNzyO6qPu1Ap6FbanlAKVxZi9rt/bAz94dpFmhdP
         FfPfYN3B90VIAW3APEFFyEFrZ0j0A5AYYbc3AA0jQBzMncEU0jXHmk7au9r966Q/ys+/
         DxUOK+OrQVAGqrM9DkAGb5x8mHOXQdtvz9BFfKc3nWPEhYULmb1iHgD4QOlv27PydA8h
         RdJDISkmkSr6mOEBfrUxevPGXE8GzZGH/jVoCgaf3XUrCmcqI7n5fwkR9p98ECahB/2y
         ycuw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=sgF8y4qSHbAjhen0CmXgaqp9XHrSaJSa2Q0ESkD13WA=;
        b=tELtKCimgvq+wbCLuC0aK3V768MV8HkIu2Dfp5Xt8EcWOzc+pgA/2GBjnKlazuEqPE
         F177w2fZ8RsoJKDfS4cHD0d9vzySUwVf9Mb9LJFDH6aS6Rhi64ELVRubyD6oyNO5rChv
         OrKgzJaUgS8sH0Csd0Nz3VuuWGmXKX6kSbLByz+CAH1Bv2R8SfHXS01mBr1VpkHmStb6
         pWZPQ3YfGhaCL+bh0zWb93TP+J2ic7wqrI5UouhvIolVzVAixumDKcBOtLpA1IExMY5z
         z6KqNXthtUPRZ6sWISNM0cybMDr7C7QD6fzu0IqdIA8IEMR4pJrAs/GCa5uK0656XCSD
         bWQQ==
X-Gm-Message-State: AOAM531hRcktiq3T3Xew1/AoD56QBQtxyZRob7fBP+gNHslNsmnOlA3B
	P/40dhUUE9mYPUAXeFlwe4E=
X-Google-Smtp-Source: ABdhPJwgS6dsHbtbdrmvAQv+WZG+s4dvsTwRZXxtfYQ5DPAe1rBRbtNpHlCFOQxg18hW22IsKoszwA==
X-Received: by 2002:a17:90b:915:: with SMTP id bo21mr2068048pjb.27.1619735359172;
        Thu, 29 Apr 2021 15:29:19 -0700 (PDT)
Date: Thu, 29 Apr 2021 15:29:15 -0700
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Phillip Susi <phill@thesusis.net>
Cc: xen-devel@lists.xenproject.org, linux-input@vger.kernel.org
Subject: Re: Xen Virtual Keyboard modalias breaking uevents
Message-ID: <YIszOwADJ8jdBov8@google.com>
References: <87o8dw52jc.fsf@vps.thesusis.net>
 <87fsz84zn1.fsf@vps.thesusis.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <87fsz84zn1.fsf@vps.thesusis.net>

On Thu, Apr 29, 2021 at 04:10:09PM -0400, Phillip Susi wrote:
> 
> It appears that input/input.c is responsible for the insane modalias
> length.  If I am reading input_print_modalias() correctly, it appends a
> "k" plus every key code that the keyboard supports,

Not every keyboard, but all keycodes above KEY_MIN_INTERESTING which is
KEY_MUTE, so that interested handlers could match on devices they are
interested in without first opening them or poking through sysfs.

> and the Xen Virtual
> Keyboard supports a lot of keycodes.  Why does it do this?

I don't know why Xen keyboard exports that many keycodes ;) In general,
my recommendation is to mirror the physical device when possible, and
instantiate several devices so there is 1:1 relationship between virtual
and physical devices.

In cases where it is not feasible, we need to be more careful about
declaring capabilities. For xen-kbdfront I do not think the keyboard
portion should be declaring keys from the various BTN_* ranges.


>  
> Phillip Susi writes:
> 
> > So I have finally drilled down to the modalias for the Xen Virtual
> > Keyboard driver being so long ( over 2KB ) that it causes an -ENOMEM
> > when trying to add it to the environment for uevents.  This causes
> > coldplug to fail, which causes the script doing coldplug as part of the
> > debian-installer init to fail, which causes a kernel panic when init
> > exits, which then for reasons I have yet to understand, causes the Xen
> > domU to reboot.
> >
> > Why is this modalias so huge?  Can we pare it down, or or is there
> > another solution to get uevents working on this device again?  Maybe the
> > environment block size needs to be increased?  I don't know.
> 

Thanks.

-- 
Dmitry


From xen-devel-bounces@lists.xenproject.org Thu Apr 29 23:15:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 29 Apr 2021 23:15:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120246.227416 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcFs6-0005J7-NJ; Thu, 29 Apr 2021 23:15:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120246.227416; Thu, 29 Apr 2021 23:15:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcFs6-0005J0-KF; Thu, 29 Apr 2021 23:15:02 +0000
Received: by outflank-mailman (input) for mailman id 120246;
 Thu, 29 Apr 2021 23:15: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 1lcFs6-0005Is-4z; Thu, 29 Apr 2021 23:15: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 1lcFs5-0006yn-Qg; Thu, 29 Apr 2021 23:15: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 1lcFs5-0000Lc-JN; Thu, 29 Apr 2021 23:15:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcFs5-0007xm-Iw; Thu, 29 Apr 2021 23:15: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=asmbWmcPqWZVFeXa4gPbODJD00tWJ7L17nOXTEUwMcY=; b=s7d5iul4N0M4ej0bTf/3qS8Zts
	Mdm9srwln8jbRFQZUb2LwnOG6x4eFDPGvNZTQxLxZGOJluyPr7lXaEAKXMvJyC7fGtnjHCUnD/byF
	yMjc2+yT6PHvErF4hZNc8ivmF3fvr8k2GAmY4I1e5WN5qx2PYx648vVHBN0hw0/iKTyM=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161533-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161533: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-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
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b8e53a81ba538849b98b0d417436f8be653fa1ff
X-Osstest-Versions-That:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 29 Apr 2021 23:15:01 +0000

flight 161533 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161533/

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-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-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

version targeted for testing:
 xen                  b8e53a81ba538849b98b0d417436f8be653fa1ff
baseline version:
 xen                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3

Last test of basis   161483  2021-04-27 13:00:27 Z    2 days
Failing since        161525  2021-04-29 15:01:31 Z    0 days    2 attempts
Testing same since   161533  2021-04-29 21:03:42 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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-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
   972ba1d1d4..b8e53a81ba  b8e53a81ba538849b98b0d417436f8be653fa1ff -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 00:20:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 00:20:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120258.227439 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcGt8-0003HP-A8; Fri, 30 Apr 2021 00:20:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120258.227439; Fri, 30 Apr 2021 00: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 1lcGt8-0003HI-7F; Fri, 30 Apr 2021 00:20:10 +0000
Received: by outflank-mailman (input) for mailman id 120258;
 Fri, 30 Apr 2021 00:20:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=963z=J3=vps.thesusis.net=psusi@srs-us1.protection.inumbo.net>)
 id 1lcGt6-0003HD-HL
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 00:20:08 +0000
Received: from vps.thesusis.net (unknown [34.202.238.73])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 76ac7c02-43e2-4ae8-b860-e1b2d6938946;
 Fri, 30 Apr 2021 00:20:07 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by vps.thesusis.net (Postfix) with ESMTP id 6E9B22ECD1;
 Thu, 29 Apr 2021 20:20:07 -0400 (EDT)
Received: from vps.thesusis.net ([127.0.0.1])
 by localhost (vps.thesusis.net [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id oj1xF6OGsgDn; Thu, 29 Apr 2021 20:20:07 -0400 (EDT)
Received: by vps.thesusis.net (Postfix, from userid 1000)
 id 3B0DE2ECD0; Thu, 29 Apr 2021 20:20:07 -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: 76ac7c02-43e2-4ae8-b860-e1b2d6938946
References: <87o8dw52jc.fsf@vps.thesusis.net> <87fsz84zn1.fsf@vps.thesusis.net> <YIszOwADJ8jdBov8@google.com>
User-agent: mu4e 1.5.7; emacs 26.3
From: Phillip Susi <phill@thesusis.net>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: xen-devel@lists.xenproject.org, linux-input@vger.kernel.org
Subject: Re: Xen Virtual Keyboard modalias breaking uevents
Date: Thu, 29 Apr 2021 20:11:03 -0400
In-reply-to: <YIszOwADJ8jdBov8@google.com>
Message-ID: <87o8dw8vyg.fsf@vps.thesusis.net>
MIME-Version: 1.0
Content-Type: text/plain


Dmitry Torokhov writes:

> Not every keyboard, but all keycodes above KEY_MIN_INTERESTING which is
> KEY_MUTE, so that interested handlers could match on devices they are
> interested in without first opening them or poking through sysfs.

/Shouldn't/ they be reading sysfs attributes to find that information
out though?  Isn't modalias there to help modprobe find the right module
that wants to bind to this device, which doesn't happen for input
devices?  If user space is looking at this information then isn't it
getting it by reading from sysfs anyway?

What in user space looks at input devices other than X and Wayland?  And
those aren't looking for particular "interesting" keys are they?

> I don't know why Xen keyboard exports that many keycodes ;) In general,
> my recommendation is to mirror the physical device when possible, and
> instantiate several devices so there is 1:1 relationship between virtual
> and physical devices.

Xen guys: any input as to why it supports so many "interesting" keys?



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 00:24:35 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 00:24:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120263.227452 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcGxO-0003Rx-Sa; Fri, 30 Apr 2021 00:24:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120263.227452; Fri, 30 Apr 2021 00: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 1lcGxO-0003Rq-PW; Fri, 30 Apr 2021 00:24:34 +0000
Received: by outflank-mailman (input) for mailman id 120263;
 Fri, 30 Apr 2021 00:24: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 1lcGxO-0003Ri-4U; Fri, 30 Apr 2021 00:24: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 1lcGxN-0000Fv-SJ; Fri, 30 Apr 2021 00:24: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 1lcGxN-00049B-KF; Fri, 30 Apr 2021 00:24:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcGxN-0006C4-Jp; Fri, 30 Apr 2021 00:24: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=/iT4IfywKB+M3NW2atfTyUeo9R2B2Q2dlwvtQ2lqnNs=; b=eGEIAmqxoRxvD1l8XONc5pVV2G
	tb8ATAGIMFblShM5m4mTpQyyqEcREEGgt95uJ14yf6JejrwWDSOeyKhebWgZppUHPkPnOlgMbEZ+l
	T0GTTc9kLlk7DWdhvcQcogC75zCzJLkF47vQTvIEbZ5NcAyXQxoOqmjB8k9HjNREoFHg=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161530-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 161530: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=ab957f036f6711869283217227480b109aedc8ef
X-Osstest-Versions-That:
    ovmf=612edbe6cd71f4392b681b75849b2ab6e48f592d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 00:24:33 +0000

flight 161530 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161530/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 ab957f036f6711869283217227480b109aedc8ef
baseline version:
 ovmf                 612edbe6cd71f4392b681b75849b2ab6e48f592d

Last test of basis   161518  2021-04-29 06:44:35 Z    0 days
Testing same since   161530  2021-04-29 20:10:02 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael D Kinney <michael.d.kinney@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   612edbe6cd..ab957f036f  ab957f036f6711869283217227480b109aedc8ef -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 00:36:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 00:36:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120269.227467 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcH8X-0004OL-Vf; Fri, 30 Apr 2021 00:36:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120269.227467; Fri, 30 Apr 2021 00:36: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 1lcH8X-0004OE-Sj; Fri, 30 Apr 2021 00:36:05 +0000
Received: by outflank-mailman (input) for mailman id 120269;
 Fri, 30 Apr 2021 00:36:04 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kML/=J3=gmail.com=dmitry.torokhov@srs-us1.protection.inumbo.net>)
 id 1lcH8W-0004O9-Jy
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 00:36:04 +0000
Received: from mail-pf1-x433.google.com (unknown [2607:f8b0:4864:20::433])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 13cadac0-c82b-43e6-ae79-e4b3148ba746;
 Fri, 30 Apr 2021 00:36:03 +0000 (UTC)
Received: by mail-pf1-x433.google.com with SMTP id c3so28553986pfo.3
 for <xen-devel@lists.xenproject.org>; Thu, 29 Apr 2021 17:36:03 -0700 (PDT)
Received: from google.com ([2620:15c:202:201:6b9:8bd2:eb38:bd68])
 by smtp.gmail.com with ESMTPSA id r1sm116104pjo.26.2021.04.29.17.36.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 29 Apr 2021 17:36: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: 13cadac0-c82b-43e6-ae79-e4b3148ba746
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=date:from:to:cc:subject:message-id:references:mime-version
         :content-disposition:in-reply-to;
        bh=UolD5z9Y/BwrWE8luDd19ytyeSssaRdFYLJsKipLFwE=;
        b=P/hqpiRefzjeEw4nU1fSlFn3OVxYvpuMZfZOtvsE9FKNP0iM9pfamhPjP7nzXsyZks
         7FGb8fAE3eE/H38Tkf3mfJ3BuXYJQb3qvfwBH55NT08gzSgiF6fcPXOXOVcg9Kn64fYW
         aIGgSNRms0U7SqKlSgxjGekCy7UIVAT4vZh8XItASQdQ7WdO1W0ioS7E2EYui1rl7kQx
         zg4TGdIKRnQcctqJVilGt4Q6CNgOb/8hWvaNKxB//BK7l21yDYVtlifDhfjfwRRrRZ0o
         BsrVy/OBnnPGEZOCv1j1qbYCtWoBEOOn9yCfCVlARIj3RVO8lKNBhrNJC/8qHqtil02p
         4cHA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:subject:message-id:references
         :mime-version:content-disposition:in-reply-to;
        bh=UolD5z9Y/BwrWE8luDd19ytyeSssaRdFYLJsKipLFwE=;
        b=YQD3Pwz4+vz3hE9QuUpZGUfpR/kg5VmpXqujeJRFo3+3cdDbi+gi21jg7/8xtG/T/m
         mEzrBfbDCkuGnuppRQIbs1K+BI3OVf399zvgamxVaIC8iLWOjkybUHrDp377rZ481V/h
         IUoRkzzaPybwFvZv5nbdhnQrsqWNQqXenuH1NwhelDQ+M9EOkX9WCUUJot+T0XpZUGIT
         GAO8eAoRdsmi2sitVYEe29zOevWCTX+JMf7cFssz1Tklu0cmu3CnIcUeNreuyTK1LPSv
         NOk5eTDvFdhcraTXLOCPTVqBE2GZvhHRFzHSEv8yzU0GxuiEPTRziW5+WxOx+lLJtRzI
         Oauw==
X-Gm-Message-State: AOAM532SiiYPthDVxY1ca9lTecx1TYi7BWTAg8PNQ+1oH/p9K/YZdJXD
	VjnFEGI5pCiQ75IxN2+QsuY=
X-Google-Smtp-Source: ABdhPJyNGbP2VbFfAou8zF4qFbXsBnaLQgpNPjVDh6CubISsMJ3KofUDczPLdkcuMoJieU089rzJUQ==
X-Received: by 2002:a62:5383:0:b029:28c:8d9e:fa3d with SMTP id h125-20020a6253830000b029028c8d9efa3dmr595294pfb.50.1619742962896;
        Thu, 29 Apr 2021 17:36:02 -0700 (PDT)
Date: Thu, 29 Apr 2021 17:35:59 -0700
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Phillip Susi <phill@thesusis.net>
Cc: xen-devel@lists.xenproject.org, linux-input@vger.kernel.org
Subject: Re: Xen Virtual Keyboard modalias breaking uevents
Message-ID: <YItQ72UkqyKuHEk4@google.com>
References: <87o8dw52jc.fsf@vps.thesusis.net>
 <87fsz84zn1.fsf@vps.thesusis.net>
 <YIszOwADJ8jdBov8@google.com>
 <87o8dw8vyg.fsf@vps.thesusis.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <87o8dw8vyg.fsf@vps.thesusis.net>

On Thu, Apr 29, 2021 at 08:11:03PM -0400, Phillip Susi wrote:
> 
> Dmitry Torokhov writes:
> 
> > Not every keyboard, but all keycodes above KEY_MIN_INTERESTING which is
> > KEY_MUTE, so that interested handlers could match on devices they are
> > interested in without first opening them or poking through sysfs.
> 
> /Shouldn't/ they be reading sysfs attributes to find that information
> out though?  Isn't modalias there to help modprobe find the right module
> that wants to bind to this device, which doesn't happen for input
> devices?  If user space is looking at this information then isn't it
> getting it by reading from sysfs anyway?

Userspace may or may not have access to sysfs (it does not have to be
mounted) and one can have modules (input handlers) that want to bind to
a specific device (see joydev, mousedev as examples, although they are
not looking for specific keys).

> 
> What in user space looks at input devices other than X and Wayland?  And
> those aren't looking for particular "interesting" keys are they?
> 
> > I don't know why Xen keyboard exports that many keycodes ;) In general,
> > my recommendation is to mirror the physical device when possible, and
> > instantiate several devices so there is 1:1 relationship between virtual
> > and physical devices.
> 
> Xen guys: any input as to why it supports so many "interesting" keys?
> 

Thanks.

-- 
Dmitry


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 00:59:12 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 00:59:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120274.227479 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcHUo-0006DC-Vn; Fri, 30 Apr 2021 00:59:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120274.227479; Fri, 30 Apr 2021 00:59: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 1lcHUo-0006D5-Rl; Fri, 30 Apr 2021 00:59:06 +0000
Received: by outflank-mailman (input) for mailman id 120274;
 Fri, 30 Apr 2021 00:59:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=963z=J3=vps.thesusis.net=psusi@srs-us1.protection.inumbo.net>)
 id 1lcHUn-0006D0-86
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 00:59:05 +0000
Received: from vps.thesusis.net (unknown [34.202.238.73])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ce33088b-ec33-49b0-b83a-54855628fb60;
 Fri, 30 Apr 2021 00:59:04 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by vps.thesusis.net (Postfix) with ESMTP id 849F72ECDB;
 Thu, 29 Apr 2021 20:59:04 -0400 (EDT)
Received: from vps.thesusis.net ([127.0.0.1])
 by localhost (vps.thesusis.net [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id PUoBqIdkD_Xa; Thu, 29 Apr 2021 20:59:04 -0400 (EDT)
Received: by vps.thesusis.net (Postfix, from userid 1000)
 id 3F4522ECDA; Thu, 29 Apr 2021 20:59:04 -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: ce33088b-ec33-49b0-b83a-54855628fb60
References: <87o8dw52jc.fsf@vps.thesusis.net> <87fsz84zn1.fsf@vps.thesusis.net> <YIszOwADJ8jdBov8@google.com> <87o8dw8vyg.fsf@vps.thesusis.net> <YItQ72UkqyKuHEk4@google.com>
User-agent: mu4e 1.5.7; emacs 26.3
From: Phillip Susi <phill@thesusis.net>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: xen-devel@lists.xenproject.org, linux-input@vger.kernel.org
Subject: Re: Xen Virtual Keyboard modalias breaking uevents
Date: Thu, 29 Apr 2021 20:57:38 -0400
In-reply-to: <YItQ72UkqyKuHEk4@google.com>
Message-ID: <87im448u5j.fsf@vps.thesusis.net>
MIME-Version: 1.0
Content-Type: text/plain


Dmitry Torokhov writes:

> Userspace may or may not have access to sysfs (it does not have to be
> mounted)

How would userspace even enumerate the input devices and read their
modalias without sysfs?


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 03:01:47 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 03:01:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120294.227503 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcJPK-00068S-96; Fri, 30 Apr 2021 03:01:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120294.227503; Fri, 30 Apr 2021 03: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 1lcJPK-00068J-1m; Fri, 30 Apr 2021 03:01:34 +0000
Received: by outflank-mailman (input) for mailman id 120294;
 Fri, 30 Apr 2021 03:01: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 1lcJPI-00068B-LY; Fri, 30 Apr 2021 03:01: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 1lcJPI-00005T-Dq; Fri, 30 Apr 2021 03:01: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 1lcJPI-0005Cd-0H; Fri, 30 Apr 2021 03:01:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcJPH-00035b-W1; Fri, 30 Apr 2021 03:01: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=I4mWKujXJUzOlV6qapzB77KlCskiah00+fAkrkEN/5M=; b=wr/NwIYYiV1BylV4KhnbP1rUdI
	tqdJlNJcfDufEnvCFGm3C30tQOVcav/9MHD5JMqTP1MdAhQKqTh0LUFJuUR64XTFXh8clYJCsSwVD
	B5Hsg2LHMFuXxwRYzxKXH3FfwSYVnuXxDhoAWIhhe1mOlyr8ntraDD+6kPwDu9yzyFAo=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161514-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161514: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-xsm:guest-localmigrate/x10:fail:heisenbug
    qemu-mainline:test-armhf-armhf-xl-vhd:debian-di-install:fail:heisenbug
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=0cef06d18762374c94eb4d511717a4735d668a24
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 03:01:31 +0000

flight 161514 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161514/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-xsm 20 guest-localmigrate/x10 fail in 161495 pass in 161514
 test-armhf-armhf-xl-vhd      12 debian-di-install          fail pass in 161495

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 161495 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 161495 never pass
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 qemuu                0cef06d18762374c94eb4d511717a4735d668a24
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  252 days
Failing since        152659  2020-08-21 14:07:39 Z  251 days  461 attempts
Testing same since   161472  2021-04-26 23:08:10 Z    3 days    4 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-armhf-armhf-xl-vhd                                      fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 143040 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 05:50:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 05:50:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120308.227529 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcM2Y-0003tI-I3; Fri, 30 Apr 2021 05:50:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120308.227529; Fri, 30 Apr 2021 05:50: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 1lcM2Y-0003tB-F6; Fri, 30 Apr 2021 05:50:14 +0000
Received: by outflank-mailman (input) for mailman id 120308;
 Fri, 30 Apr 2021 05:50: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 1lcM2X-0003t3-DT; Fri, 30 Apr 2021 05:50: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 1lcM2X-0003EA-6e; Fri, 30 Apr 2021 05:50: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 1lcM2W-0005wM-TX; Fri, 30 Apr 2021 05:50:12 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcM2W-0007rn-Sy; Fri, 30 Apr 2021 05: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=X1CGnyd0AEZKjYD9+kTm7eWiP4XBp22hT5/XutWAGHs=; b=r5EbfsCNvf9nV65ZTWZ9sZEo2W
	hNUvMv1yel4Wk3P/LP8kBnlyOEEWf3ubODh38NQ4bmCuXN9v1xD7OY1ozTWTsCAAfsy3Dmq0Ngh1M
	hZoT7re2c+8dYzt/XPFqBPVQoUfRjC9r/8PRQzvqe1q0DIKa1+PZXtEUWrYc1qanAuk0=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161522-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161522: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 05:50:12 +0000

flight 161522 xen-4.12-testing real [real]
flight 161543 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161522/
http://logs.test-lab.xenproject.org/osstest/logs/161543/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2 19 guest-localmigrate/x10 fail in 161508 REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2    18 guest-saverestore.2        fail pass in 161508

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 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-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-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-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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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     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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   72 days
Failing since        160128  2021-03-18 14:36:18 Z   42 days   56 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   41 days   54 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 06:52:19 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 06:52:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120318.227551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcN0O-0000a1-Ax; Fri, 30 Apr 2021 06:52:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120318.227551; Fri, 30 Apr 2021 06: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 1lcN0O-0000Zu-7o; Fri, 30 Apr 2021 06:52:04 +0000
Received: by outflank-mailman (input) for mailman id 120318;
 Fri, 30 Apr 2021 06:52:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcN0N-0000Zp-Cq
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 06:52:03 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2e104fae-af50-41c8-93f9-5f61e539353f;
 Fri, 30 Apr 2021 06:52:01 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id E754DAD5C;
 Fri, 30 Apr 2021 06:52: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: 2e104fae-af50-41c8-93f9-5f61e539353f
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619765521; 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=JnBWD5NpQBfhTlzKaBLfUOVzN+GB18y/5f8KvuHQ73E=;
	b=oE56zIwZW4rPsJ8YkXgrTS1GqRAo5T4VClB9gBIWlhcbP8HDNV+0eGu6jnFl33gXgtgo6z
	WzOSoYnhCyhLhwuSsH7nhuM2jm9e4LUSRO7mMg3V/tYBAgAeI2DnuS54DNVvbtnfDzBn/I
	y6R+nZgQXGH4u0DelvbxOrEOyyI5UCI=
From: Jan Beulich <jbeulich@suse.com>
Subject: Xen 4.14.2 released
To: xen-announce@lists.xenproject.org
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Message-ID: <217ea779-8995-473b-17db-04170636c801@suse.com>
Date: Fri, 30 Apr 2021 08:51:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

All,

we're pleased to announce the release of Xen 4.14.2. This is available
immediately from its git repository
http://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=refs/heads/stable-4.14
(tag RELEASE-4.14.2) or from the XenProject download page
https://xenproject.org/downloads/xen-project-archives/xen-project-4-14-series/xen-project-4-14-2/
(where a list of changes can also be found).

We recommend all users of the 4.14 stable series to update to this
latest point release.

Regards, Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 07:15:52 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 07:15:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120325.227563 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcNNL-0002RJ-BO; Fri, 30 Apr 2021 07:15:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120325.227563; Fri, 30 Apr 2021 07: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 1lcNNL-0002RC-82; Fri, 30 Apr 2021 07:15:47 +0000
Received: by outflank-mailman (input) for mailman id 120325;
 Fri, 30 Apr 2021 07:15:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcNNJ-0002R7-DC
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 07:15:45 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id b35afb90-87dd-46e8-9376-32700131ee9c;
 Fri, 30 Apr 2021 07:15:44 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 72C85AF5B;
 Fri, 30 Apr 2021 07:15: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: b35afb90-87dd-46e8-9376-32700131ee9c
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619766943; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=0XjVmHj3MbE84koE11ssAbkBVMI2IbbCKpyNWsexKNs=;
	b=qxsZGqf+E+bmAAjm6BrOK+Y+bWreHOLEIhEFwtnskDLHH8AJBLiWIiRuWVAZnIfxsiRWOo
	Oa9DlbOGTPyNfvkKPji5qpzEqaa0NQ8/KJ2dLbXHYe9SXn4MwqDhlnJFLDUceZJ83cBt1S
	OzJO96H5Q6wtpFMndlrsPbiywsrIM+0=
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
To: Scott Davis <scott.davis@starlab.io>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <ian.jackson@eu.citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 "paul@xen.org" <paul@xen.org>
References: <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
 <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
 <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
 <237ad45b-b68d-9d31-0fbc-1af52dfca808@suse.com>
 <dc6556ae-c653-8519-1a81-9524e4472f26@xen.org>
 <2A65573D-2DD6-49C7-B34C-27B15FD620B2@starlab.io>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <ec0cc346-3d56-afec-7414-bce81e9eea1d@suse.com>
Date: Fri, 30 Apr 2021 09:15:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <2A65573D-2DD6-49C7-B34C-27B15FD620B2@starlab.io>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 29.04.2021 23:04, Scott Davis wrote:
> On 4/28/21, 3:20 AM, Paul Durrant wrote:
>>> Following the extension to the command line option I'm putting in place
>>> in "IOMMU: make DMA containment of quarantined devices optional" (which
>>> I still need to get around to address review feedback for and resubmit),
>>> I'd be inclined to suggest "iommu=quarantine=always" or
>>> "iommu=quarantine=on-assign". Unless of course we'd prefer to have the
>>> caller of the assignment operation have full control over the behavior
>>> here anyway (in which case a command line option control simply is not
>>> necessary).
>>
>> I'm still not entirely sure why not quarantining on is a problem, other
>> than it triggering an as-yet undiagnosed issue in QEMU, but I agree that
>> that the expectation of 'no-quarantine' meaning just that (i.e. the old
>> dom0->domU and domU->dom0 transitions are re-instated) is reasonable. Do
>> we really want yet more command line options?
> 
> Regarding the problem in QEMU, I traced the crash trigger down to a
> write to the IQ tail register during the mapping operation into dom_io
> (backtrace below). Along the way I noticed that, since a non-present
> entry was being flushed, flush_context_qi only performs this
> invalidation on an IOMMU with caching mode enabled (i.e. a software
> IOMMU). Therefore this issue is probably only hittable when nesting.
> Disabling caching mode on the QEMU vIOMMU was enough to prevent the
> crash and give me a working system.
> 
> (gdb) si
> 0xffff82d04025b68b  72  in qinval.c
>    0xffff82d04025b687 <qinval_update_qtail+43>: ... shl    $0x4,%r12
> => 0xffff82d04025b68b <qinval_update_qtail+47>: ... mov    %r12,0x88(%rax)
> (gdb) bt
> #0  0xffff82d04025b68b in qinval_update_qtail (...) at qinval.c:72
> #1  0xffff82d04025baa7 in queue_invalidate_context_sync (...) at qinval.c:101
> #2  flush_context_qi (...) at qinval.c:341
> #3  0xffff82d040259125 in iommu_flush_context_device (...) at iommu.c:400
> #4  domain_context_mapping_one (...) at iommu.c:1436
> #5  0xffff82d040259351 in domain_context_mapping (...) at iommu.c:1510
> #6  0xffff82d040259d20 in reassign_device_ownership (...) at iommu.c:2412
> #7  0xffff82d040259f19 in intel_iommu_assign_device (...) at iommu.c:2476
> #8  0xffff82d040267154 in assign_device (...) at pci.c:1545
> #9  iommu_do_pci_domctl (...) at pci.c:1732
> #10 0xffff82d040264de3 in iommu_do_domctl (...) at iommu.c:539
> #11 0xffff82d040322ca5 in arch_do_domctl (...) at domctl.c:1496
> #12 0xffff82d040205a19 in do_domctl (...) at domctl.c:956
> #13 0xffff82d040319476 in pv_hypercall (...) at hypercall.c:155
> #14 0xffff82d040390432 in lstar_enter () at entry.S:271
> #15 0x0000000000000000 in ?? ()

Interesting. This then leaves the question whether we submit a bogus
command, or whether qemu can't deal (correctly) with a valid one here.
So far you didn't tell us what the actual crash was. I guess it's not
even clear to me whether it's Xen or qemu that did crash for you. But
I have to also admit that until now it wasn't really clear to me that
you ran Xen _under_ qemu - instead I was assuming there was an
interaction problem with a qemu serving a guest.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 07:15:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 07:15:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120326.227575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcNNX-0002UF-KS; Fri, 30 Apr 2021 07:15:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120326.227575; Fri, 30 Apr 2021 07:15:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcNNX-0002U7-H2; Fri, 30 Apr 2021 07:15:59 +0000
Received: by outflank-mailman (input) for mailman id 120326;
 Fri, 30 Apr 2021 07:15:58 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nNDj=J3=redhat.com=pbonzini@srs-us1.protection.inumbo.net>)
 id 1lcNNV-0002Tk-TN
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 07:15:58 +0000
Received: from us-smtp-delivery-124.mimecast.com (unknown [170.10.133.124])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTP
 id b9ed3253-6556-4bea-bbfc-2ff0b8b0bec7;
 Fri, 30 Apr 2021 07:15:57 +0000 (UTC)
Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com
 [209.85.208.69]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-18-j96slHjjPtCQzyW7KnLLGw-1; Fri, 30 Apr 2021 03:15:54 -0400
Received: by mail-ed1-f69.google.com with SMTP id
 h13-20020a05640250cdb02903790a9c55acso29793036edb.4
 for <xen-devel@lists.xenproject.org>; Fri, 30 Apr 2021 00:15:54 -0700 (PDT)
Received: from ?IPv6:2001:b07:6468:f312:c8dd:75d4:99ab:290a?
 ([2001:b07:6468:f312:c8dd:75d4:99ab:290a])
 by smtp.gmail.com with ESMTPSA id i19sm1367781ejd.114.2021.04.30.00.15.51
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 30 Apr 2021 00:15: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: b9ed3253-6556-4bea-bbfc-2ff0b8b0bec7
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1619766956;
	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=28TamhQnx/WTmTYJRRukTbFCMkH+GJB8ptneJQNf94c=;
	b=a/h2RXTz3elZH9Q3ky3ZB8QY6ojoZO1C8jAtL2ODlZwdfsEQGfd1V1h5broHEiLkAJt5O+
	grj3CrbDaisb8PEJ9lHlQMr4weprWVBkAK0zCRu4SNVmK6Qe+JHYeHGlEgBvX44DFKcPnY
	JCGzXjl2uvlFxfNLg0oPTd40nxi9eDk=
X-MC-Unique: j96slHjjPtCQzyW7KnLLGw-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:subject:to:cc:references:from:message-id:date
         :user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=28TamhQnx/WTmTYJRRukTbFCMkH+GJB8ptneJQNf94c=;
        b=VH9pjcvv6QmCHioD6XGSq/+PwCeEwfsQAlIKxhIGMbB6aG0uFtOEXolerNSN9pXkp8
         5MRjbIzPt+a9GDtmcWots/XLcoZ/SiDQJQW8ztoiGeehA+YYyF0434ExAL/VVsSYoOoh
         bLlHVnCCmFJkz6Dq/TQM0V4D+C/6NOHQ+Mv5e9FQBB96qq5dpxdsKa23HrrKn/NAGpxU
         B4Xm6XJ0KvpVEe/cboSSr+aqM/Svvi2+yd1BQmDRccDHa/waC0m7K1NhVjSQTEXaaQol
         jqgtmhttAZHphi6O8QHIJjuZu9A0ofm75DPW3kC+nw/DGzA0L41RSkCgEiwwcvDqksgl
         vTYA==
X-Gm-Message-State: AOAM530LVF23GEuI09rSxf08JPJNDAVWhwC7PR4V0B1y8feS0qrgHH+y
	55/tlh2kHJjTtRj+4CuqcP+dLLjjgplPN9y+u15HbWqhZNM3Q1+J32kXWRx9PEYepItxNw4xbUW
	VU5GdCl/l85EbX+aa8jk0XArjbZoPe+4AweOHN/nGIBdZj0UTBDel789BI8b8KcUujgu7MydxOL
	HbQDg=
X-Received: by 2002:a17:906:7d82:: with SMTP id v2mr2737726ejo.524.1619766953406;
        Fri, 30 Apr 2021 00:15:53 -0700 (PDT)
X-Google-Smtp-Source: ABdhPJyAQdeuZInXmsMkcogPQFLA3VeuUhCp7LSV5xe8bJEmH45eKyauY8xcO7cSejDdlfL6uAEUlg==
X-Received: by 2002:a17:906:7d82:: with SMTP id v2mr2737676ejo.524.1619766953147;
        Fri, 30 Apr 2021 00:15:53 -0700 (PDT)
Subject: Re: [PATCH 1/4] x86/xen/entry: Rename xenpv_exc_nmi to noist_exc_nmi
To: Steven Rostedt <rostedt@goodmis.org>,
 Lai Jiangshan <jiangshanlai@gmail.com>
Cc: linux-kernel@vger.kernel.org, Lai Jiangshan <laijs@linux.alibaba.com>,
 Thomas Gleixner <tglx@linutronix.de>, Sean Christopherson
 <seanjc@google.com>, Andi Kleen <ak@linux.intel.com>,
 Andy Lutomirski <luto@kernel.org>, Vitaly Kuznetsov <vkuznets@redhat.com>,
 Wanpeng Li <wanpengli@tencent.com>, Jim Mattson <jmattson@google.com>,
 Joerg Roedel <joro@8bytes.org>, kvm@vger.kernel.org,
 Josh Poimboeuf <jpoimboe@redhat.com>, Uros Bizjak <ubizjak@gmail.com>,
 Maxim Levitsky <mlevitsk@redhat.com>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, x86@kernel.org,
 "H. Peter Anvin" <hpa@zytor.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>, Juergen Gross
 <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Peter Zijlstra <peterz@infradead.org>,
 Alexandre Chartre <alexandre.chartre@oracle.com>,
 Joerg Roedel <jroedel@suse.de>, Jian Cai <caij2003@gmail.com>,
 xen-devel@lists.xenproject.org
References: <20210426230949.3561-1-jiangshanlai@gmail.com>
 <20210426230949.3561-2-jiangshanlai@gmail.com>
 <20210428172714.53adac43@gandalf.local.home>
From: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <d77ee423-53fc-d552-1ff8-6fdf75e416a7@redhat.com>
Date: Fri, 30 Apr 2021 09:15:51 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.7.0
MIME-Version: 1.0
In-Reply-To: <20210428172714.53adac43@gandalf.local.home>
Authentication-Results: relay.mimecast.com;
	auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=pbonzini@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/04/21 23:27, Steven Rostedt wrote:
> On Tue, 27 Apr 2021 07:09:46 +0800
> Lai Jiangshan <jiangshanlai@gmail.com> wrote:
> 
>> From: Lai Jiangshan <laijs@linux.alibaba.com>
>>
>> There is no any functionality change intended.  Just rename it and
>> move it to arch/x86/kernel/nmi.c so that we can resue it later in
>> next patch for early NMI and kvm.
> 
> Nit, but in change logs, please avoid stating "next patch" as searching git
> history (via git blame or whatever) there is no such thing as "next patch".

Interesting, I use next patch(es) relatively often, though you're right 
that something like "in preparation for" works just as well.  Yes, it's 
the previous in "git log", but you get what it's meant in practice. :)

Paolo

> Just state: "so that we can reuse it for early NMI and KVM."
> 
> I also just noticed the typo in "resue". Or maybe both NMI and KVM should
> be sued again ;-)
> 
> -- Steve
> 



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 07:36:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 07:36:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120338.227587 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcNhR-0004JP-Gt; Fri, 30 Apr 2021 07:36:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120338.227587; Fri, 30 Apr 2021 07: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 1lcNhR-0004JI-DY; Fri, 30 Apr 2021 07:36:33 +0000
Received: by outflank-mailman (input) for mailman id 120338;
 Fri, 30 Apr 2021 07: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 1lcNhQ-0004Iu-De; Fri, 30 Apr 2021 07: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 1lcNhQ-00053o-4p; Fri, 30 Apr 2021 07: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 1lcNhP-0003ja-Rf; Fri, 30 Apr 2021 07:36:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcNhP-0002UV-RB; Fri, 30 Apr 2021 07:36:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=dtlVx1/jCD03cuWD2nVy9qXEuSBnnvnLR1Wg4MCdwRE=; b=5Py7RR3WN9A8RItI5E16CJK0/W
	5pMkuoyxFUbNjvOckOhznoePKMkidRn4o6+JCTFGiU0sP3GY9S4XYcrC+FwP64Rr/COu2XfYJn5Cx
	ySf2DNL2IEOKAJDbfQavY9tcDfrFD7+ZDBqvTtlP2wcR13ZJVs6UmKmgzEkaQMiFVAFw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161542-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 161542: regressions - FAIL
X-Osstest-Failures:
    libvirt:build-armhf-libvirt:libvirt-build:fail:regression
    libvirt:build-amd64-libvirt:libvirt-build:fail:regression
    libvirt:build-i386-libvirt:libvirt-build:fail:regression
    libvirt:build-arm64-libvirt:libvirt-build:fail:regression
    libvirt:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:build-check(1):blocked:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    libvirt=ec2e3336b8c8df572600043976e1ab5feead656e
X-Osstest-Versions-That:
    libvirt=2c846fa6bcc11929c9fb857a22430fb9945654ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 07:36:31 +0000

flight 161542 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161542/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-armhf-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-amd64-libvirt           6 libvirt-build            fail REGR. vs. 151777
 build-i386-libvirt            6 libvirt-build            fail REGR. vs. 151777
 build-arm64-libvirt           6 libvirt-build            fail REGR. vs. 151777

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a

version targeted for testing:
 libvirt              ec2e3336b8c8df572600043976e1ab5feead656e
baseline version:
 libvirt              2c846fa6bcc11929c9fb857a22430fb9945654ad

Last test of basis   151777  2020-07-10 04:19:19 Z  294 days
Failing since        151818  2020-07-11 04:18:52 Z  293 days  286 attempts
Testing same since   161516  2021-04-29 04:18:53 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adolfo Jayme Barrientos <fitoschido@gmail.com>
  Aleksandr Alekseev <alexander.alekseev@virtuozzo.com>
  Aleksei Zakharov <zaharov@selectel.ru>
  Andika Triwidada <andika@gmail.com>
  Andrea Bolognani <abologna@redhat.com>
  Balázs Meskó <meskobalazs@mailbox.org>
  Barrett Schonefeld <bschoney@utexas.edu>
  Bastian Germann <bastiangermann@fishpost.de>
  Bastien Orivel <bastien.orivel@diateam.net>
  BiaoXiang Ye <yebiaoxiang@huawei.com>
  Bihong Yu <yubihong@huawei.com>
  Binfeng Wu <wubinfeng@huawei.com>
  Boris Fiuczynski <fiuczy@linux.ibm.com>
  Brian Turek <brian.turek@gmail.com>
  Bruno Haible <bruno@clisp.org>
  Chris Mayo <aklhfex@gmail.com>
  Christian Ehrhardt <christian.ehrhardt@canonical.com>
  Christian Schoenebeck <qemu_oss@crudebyte.com>
  Cole Robinson <crobinso@redhat.com>
  Collin Walling <walling@linux.ibm.com>
  Cornelia Huck <cohuck@redhat.com>
  Cédric Bosdonnat <cbosdonnat@suse.com>
  Côme Borsoi <fedora@borsoi.fr>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel Letai <dani@letai.org.il>
  Daniel P. Berrange <berrange@redhat.com>
  Daniel P. Berrangé <berrange@redhat.com>
  Dmytro Linkin <dlinkin@nvidia.com>
  Eiichi Tsukata <eiichi.tsukata@nutanix.com>
  Eric Farman <farman@linux.ibm.com>
  Erik Skultety <eskultet@redhat.com>
  Fabian Affolter <mail@fabian-affolter.ch>
  Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
  Fangge Jin <fjin@redhat.com>
  Farhan Ali <alifm@linux.ibm.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  gongwei <gongwei@smartx.com>
  Guoyi Tu<tu.guoyi@h3c.com>
  Göran Uddeborg <goeran@uddeborg.se>
  Halil Pasic <pasic@linux.ibm.com>
  Han Han <hhan@redhat.com>
  Hao Wang <wanghao232@huawei.com>
  Hela Basa <r45xveza@pm.me>
  Helmut Grohne <helmut@subdivi.de>
  Ian Wienand <iwienand@redhat.com>
  Jakob Meng <jakobmeng@web.de>
  Jamie Strandboge <jamie@canonical.com>
  Jamie Strandboge <jamie@ubuntu.com>
  Jan Kuparinen <copper_fin@hotmail.com>
  Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>
  Jianan Gao <jgao@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jin Yan <jinyan12@huawei.com>
  Jiri Denemark <jdenemar@redhat.com>
  John Ferlan <jferlan@redhat.com>
  Jonathan Watt <jwatt@jwatt.org>
  Jonathon Jongsma <jjongsma@redhat.com>
  Julio Faracco <jcfaracco@gmail.com>
  Ján Tomko <jtomko@redhat.com>
  Kashyap Chamarthy <kchamart@redhat.com>
  Kevin Locke <kevin@kevinlocke.name>
  Kristina Hanicova <khanicov@redhat.com>
  Laine Stump <laine@redhat.com>
  Laszlo Ersek <lersek@redhat.com>
  Liao Pingfang <liao.pingfang@zte.com.cn>
  Lin Ma <lma@suse.com>
  Lin Ma <lma@suse.de>
  Lin Ma <morecache@gmail.com>
  Luke Yue <lukedyue@gmail.com>
  Luyao Zhong <luyao.zhong@intel.com>
  Marc Hartmayer <mhartmay@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Markus Schade <markus.schade@hetzner.com>
  Martin Kletzander <mkletzan@redhat.com>
  Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
  Matt Coleman <matt@datto.com>
  Matt Coleman <mcoleman@datto.com>
  Mauro Matteo Cascella <mcascell@redhat.com>
  Meina Li <meili@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Michał Smyk <fedora@smyk.it>
  Milo Casagrande <milo@milo.name>
  Moshe Levi <moshele@nvidia.com>
  Muha Aliss <muhaaliss@gmail.com>
  Neal Gompa <ngompa13@gmail.com>
  Nick Shyrokovskiy <nshyrokovskiy@gmail.com>
  Nickys Music Group <nickys.music.group@gmail.com>
  Nico Pache <npache@redhat.com>
  Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
  Olaf Hering <olaf@aepfle.de>
  Olesya Gerasimenko <gammaray@basealt.ru>
  Orion Poplawski <orion@nwra.com>
  Pany <geekpany@gmail.com>
  Patrick Magauran <patmagauran.j@gmail.com>
  Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
  Pavel Hrdina <phrdina@redhat.com>
  Peng Liang <liangpeng10@huawei.com>
  Peter Krempa <pkrempa@redhat.com>
  Pino Toscano <ptoscano@redhat.com>
  Pino Toscano <toscano.pino@tiscali.it>
  Piotr Drąg <piotrdrag@gmail.com>
  Prathamesh Chavan <pc44800@gmail.com>
  Ricky Tigg <ricky.tigg@gmail.com>
  Roman Bogorodskiy <bogorodskiy@gmail.com>
  Roman Bolshakov <r.bolshakov@yadro.com>
  Ryan Gahagan <rgahagan@cs.utexas.edu>
  Ryan Schmidt <git@ryandesign.com>
  Sam Hartman <hartmans@debian.org>
  Scott Shambarger <scott-libvirt@shambarger.net>
  Sebastian Mitterle <smitterl@redhat.com>
  SeongHyun Jo <caelus9536@gmail.com>
  Shalini Chellathurai Saroja <shalini@linux.ibm.com>
  Shaojun Yang <yangshaojun@phytium.com.cn>
  Shi Lei <shi_lei@massclouds.com>
  simmon <simmon@nplob.com>
  Simon Gaiser <simon@invisiblethingslab.com>
  Stefan Bader <stefan.bader@canonical.com>
  Stefan Berger <stefanb@linux.ibm.com>
  Stefan Berger <stefanb@linux.vnet.ibm.com>
  Szymon Scholz <szymonscholz@gmail.com>
  Thomas Huth <thuth@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>
  Tomáš Golembiovský <tgolembi@redhat.com>
  Tomáš Janoušek <tomi@nomi.cz>
  Tuguoyi <tu.guoyi@h3c.com>
  Ville Skyttä <ville.skytta@iki.fi>
  Wang Xin <wangxinxin.wang@huawei.com>
  WangJian <wangjian161@huawei.com>
  Weblate <noreply@weblate.org>
  Yalei Li <274268859@qq.com>
  Yalei Li <liyl43@chinatelecom.cn>
  Yang Hang <yanghang44@huawei.com>
  Yanqiu Zhang <yanqzhan@redhat.com>
  Yaroslav Kargin <ykargin@virtuozzo.com>
  Yi Li <yili@winhong.com>
  Yi Wang <wang.yi59@zte.com.cn>
  Yuri Chornoivan <yurchor@ukr.net>
  Zheng Chuan <zhengchuan@huawei.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zheng <zheng.zhenyu@outlook.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                                          fail    
 build-arm64-libvirt                                          fail    
 build-armhf-libvirt                                          fail    
 build-i386-libvirt                                           fail    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-arm64-arm64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 55101 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 07:43:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 07:43:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120344.227602 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcNnt-0005DP-80; Fri, 30 Apr 2021 07:43:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120344.227602; Fri, 30 Apr 2021 07:43: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 1lcNnt-0005DI-52; Fri, 30 Apr 2021 07:43:13 +0000
Received: by outflank-mailman (input) for mailman id 120344;
 Fri, 30 Apr 2021 07:43:11 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VJvX=J3=arm.com=luca.fancellu@srs-us1.protection.inumbo.net>)
 id 1lcNnr-0005DC-Ae
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 07:43:11 +0000
Received: from EUR03-DB5-obe.outbound.protection.outlook.com (unknown
 [2a01:111:f400:fe0a::631])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id dd6291ba-d7dc-4631-bd81-9af97993de19;
 Fri, 30 Apr 2021 07:43:08 +0000 (UTC)
Received: from DB6PR0201CA0018.eurprd02.prod.outlook.com (2603:10a6:4:3f::28)
 by AM8PR08MB5730.eurprd08.prod.outlook.com (2603:10a6:20b:1d5::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20; Fri, 30 Apr
 2021 07:43:06 +0000
Received: from DB5EUR03FT009.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:4:3f:cafe::86) by DB6PR0201CA0018.outlook.office365.com
 (2603:10a6:4:3f::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend
 Transport; Fri, 30 Apr 2021 07:43:06 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5EUR03FT009.mail.protection.outlook.com (10.152.20.117) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Fri, 30 Apr 2021 07:43:05 +0000
Received: ("Tessian outbound 52fcc5bd9d3a:v91");
 Fri, 30 Apr 2021 07:43:05 +0000
Received: from 6618c25f8f31.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E677951B-5D0B-4ADC-A743-C8575827B340.1; 
 Fri, 30 Apr 2021 07:42:59 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 6618c25f8f31.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 30 Apr 2021 07:42:59 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com (2603:10a6:803:7f::25)
 by VI1PR08MB3086.eurprd08.prod.outlook.com (2603:10a6:803:46::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20; Fri, 30 Apr
 2021 07:42:56 +0000
Received: from VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9]) by VI1PR08MB3629.eurprd08.prod.outlook.com
 ([fe80::4502:9762:8b3b:63d9%4]) with mapi id 15.20.4065.028; Fri, 30 Apr 2021
 07:42:56 +0000
Received: from a75445.arm.com (82.8.129.65) by
 LO4P123CA0501.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1ab::20) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.4087.27 via Frontend Transport; Fri, 30 Apr 2021 07:42: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: dd6291ba-d7dc-4631-bd81-9af97993de19
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=W8mWuvGkwapgAk0R2YH82Gc/Yo4jqu8ktC4qkn3vmlA=;
 b=aSh8oQWyQS+3YBLqD67OdbbiV3ur3YppkPQTX1NnFQ5mJGn/xJYi8vo1TEbjh1jKB9bkb+qdzkDDr40FUw4gILkTETEBJmR34zSa/YCESD14COOlLQV2TkXA5w040XcyYc9Xjy6qqGKduAdUi8cG3nNz8LyAtUmMRUpZPOzY60Y=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; lists.xenproject.org; dkim=pass (signature was
 verified) header.d=armh.onmicrosoft.com;lists.xenproject.org; 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;
X-CheckRecipientChecked: true
X-CR-MTA-CID: cddd7a2ed2441990
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GMc1I63wrYhhkRONafGUNdawFkdpm5d3yvzLiF7dCkJEwbhPy8BqS7ZkZns9uWZnmMbkjkUtR/bkxo8HsPMLO4xLXiKeJpJehbbVwQG5Gte6r5BMgHhZlsWhrzbYO5+rio5qs0cOF2iM7+PcfWoG1low3yPihPtQQEGJ3K/J+Z+oc6FG6lXf3agXeZZ/Gmz4kpOTpIkhQSwuj3J7GuGBRhS/vI79Oq0nK9qYmXTHnZA/rkiMksu2whlSNQrHPdUEWy+4tDaCIesjhnpKJrNSO/sFwezxvEuf4/VDNSwpOcWIV9jBzOhNhieBeKLul44e/cQiYUvbL09v00eWC27qRw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=W8mWuvGkwapgAk0R2YH82Gc/Yo4jqu8ktC4qkn3vmlA=;
 b=bT2ubH6Xf8F0HsBlGxLKPKD3dQR1bDwNy2170SaQnyG/2PAVXjA4pLUmu/v8ZTEPl7GFLzMgs13xnTV/si4NgW2eOpPj5L43DXOdMfyZNpRrpqZL8jKO8uxm0BiXiVUviSvGpGnYOnwH2F78Bw+OP4ZgO8IyteEqW0B5gkP1PEAeMEbNsaN1VfiABtMurompwVZJDMW3x5/4+1Ri/HuYeE7Yl1Gtaad73y7SOxNpyrpb2UB+sv0+yrYX/UTc8JFs9njUzwYxftDXHJQ+WP2KoIw11fTTZPtPggnZBr91umyYcadMdb0a8Vj8x8lsT0emThJuV8+QNw0ROGpSXjyjpg==
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=W8mWuvGkwapgAk0R2YH82Gc/Yo4jqu8ktC4qkn3vmlA=;
 b=aSh8oQWyQS+3YBLqD67OdbbiV3ur3YppkPQTX1NnFQ5mJGn/xJYi8vo1TEbjh1jKB9bkb+qdzkDDr40FUw4gILkTETEBJmR34zSa/YCESD14COOlLQV2TkXA5w040XcyYc9Xjy6qqGKduAdUi8cG3nNz8LyAtUmMRUpZPOzY60Y=
Authentication-Results-Original: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
Content-Type: text/plain;
	charset=us-ascii
Subject: Re: [PATCH] public/gnttab: relax v2 recommendation
From: Luca Fancellu <luca.fancellu@arm.com>
In-Reply-To: <dcd9ede1-9471-6866-4ba7-b6a7664b5e35@suse.com>
Date: Fri, 30 Apr 2021 08:42:49 +0100
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <5AE0C026-A231-473A-B5E7-2D8B1E8E1B45@arm.com>
References: <dcd9ede1-9471-6866-4ba7-b6a7664b5e35@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3654.60.0.2.21)
X-Originating-IP: [82.8.129.65]
X-ClientProxiedBy: LO4P123CA0501.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1ab::20) To VI1PR08MB3629.eurprd08.prod.outlook.com
 (2603:10a6:803:7f::25)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: cf8a7013-1db2-4970-0ce2-08d90bab9789
X-MS-TrafficTypeDiagnostic: VI1PR08MB3086:|AM8PR08MB5730:
X-Microsoft-Antispam-PRVS:
	<AM8PR08MB5730734E551B77571F70CDDEE45E9@AM8PR08MB5730.eurprd08.prod.outlook.com>
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 qhs4sSLcZwkGNM6GjMEYRuM1S/ugJ1ARDMdf4P4iKBo87UHZavjFecPn5AfgHN0RQxl9mmZtQLMIdIG7Rvq+Xqpw8mLTkRao2xeBpgnNubut4iInE7Yyj2Upc2/OFuVT6O7WH3xQYe+TTCd+SftP1oqwLzHEolzUH/e9B2Sj0xgqLkR6GtTtys/k1eGu9fuLsvrmryvRafhRh4pbvWg9GP0w27cJJeH4c+W4jYVAXweQXqGPm4m1PV10es529v0UcCkIkUw5MkMNfrZIvc4fFhcOIjIyKQLzC78KL+79aqAPBpD6x2tBkH6aL6NUGBdy7iZsKykvBM/Ae1497mstXpHDfq257NG54+pl1ghyI4SHs5rbMtPR+WDggZ56fXdXVFLquICtmxRwQnMhbjZtX5rJ1mwQgesxv7s/9vPhiL9d+VRH2f8VlK+eiwN3w3FOqTJJQ98vX7SOXuZKbN/T3Ozrc3r3SwEpOuisS9ltBciIG+7STRTu/lMeLPoXVaryGG4/bwa5hakGUAmv95kntNl6ZTuQiGMIE7J/ipvtStcGBtR2oyzwiP6IrMScOAizYkA6VD2GECqC7YZeYqBQYqjUEXnPjnW+Sb/LyuOL8O8ce/H+IxtO1oXw/KiJOuA3hswJn9nZH6lg/A+bmXmvJ19ezHryahb6bSFYWfWUadnaiDJ0lgyYjJq2z4EwRHOD
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3629.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(39850400004)(136003)(366004)(346002)(376002)(8936002)(52116002)(2906002)(186003)(86362001)(53546011)(16526019)(2616005)(956004)(8676002)(66556008)(7696005)(66946007)(6916009)(66476007)(33656002)(4744005)(6486002)(478600001)(38100700002)(316002)(38350700002)(36756003)(83380400001)(26005)(5660300002)(44832011)(4326008)(54906003)(6666004)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData:
 =?us-ascii?Q?++fIY4dvPxAje5QSgIwoHZO0MWizjhayMCB6QXx8Ze1Yj3PLjHcq2IgfY6JE?=
 =?us-ascii?Q?Vnyw6nZKcBqsry+dFGI1M/5jnKLxdGP1LACF2VYxNk2ClelUPYZ1p4y6Ro6I?=
 =?us-ascii?Q?S4NvU0DF/Fh1lUm4GisR9Dkerch4IFPgV7nldMWhsph9RUpF35DGVrTeWVtq?=
 =?us-ascii?Q?MUwQdsgzd6dSa4MUehRGqrzg3nDPMew4qTQovyZCXqUD+C5tRjkLArebm0Lb?=
 =?us-ascii?Q?C7b6dV66lcgct/bEXwhpKhnU1WBxfFWrB4I+V9cZ5CmrtkWfHs4aKRPdi6Ze?=
 =?us-ascii?Q?aIdqRy7ngJrwKYc1trb0sccu1CQByqG1nDrtRcol4JOdK/+3jwK0WZBuYJb2?=
 =?us-ascii?Q?4mp4k0x0b/Kkaix90yk09ffVNTClurdc1KLJQgFxuaBtEVHJ5PO1KlCMzv1d?=
 =?us-ascii?Q?z4y4b7/a6WLABD1hhl/insKSvs0+UA8zrLv3X7srKqgoAaADJMu8M/KUTO6C?=
 =?us-ascii?Q?26uf2XVALCQL365p+XG5T6n7ywz0NX+Dje0aTQJ/jhXxtuJJ2MpCKeAV29WW?=
 =?us-ascii?Q?OhX4b+Objsp0RWBUlyRR0DlHQ6BOfALuzW1qX65rUFSSGPVegj8ZmC2UYx4o?=
 =?us-ascii?Q?UdfuK1C5OmbPzUQzUdMWRnkGJmWSwdHJfRN4j9Hn+IB4AHiQXKCcgPjIs4H3?=
 =?us-ascii?Q?YVmSCiLx8EELf7g6J10KdjMAEWvUk98aUu8pzA101EASoQy2bIECoWcgQNu3?=
 =?us-ascii?Q?mpoOOHCg+/sIiI30Sjn6/hdsmbSdWrCZ6zlU6/yaGB/AU8xsd9QK9HdisaKt?=
 =?us-ascii?Q?36LNcq6hUXWfs1+w2aqwTf5VwosPdtewy3byW5R6XtIQ79BFcVj7m4bsRL0Y?=
 =?us-ascii?Q?bg5PclYsK0K3eaOl7DI1IEJK24TeQHOkeHGTFfxCTplUeYIyn6iPnhu/hNt2?=
 =?us-ascii?Q?UdtQefucG9Tm2BhsY4Q0VOOZ4XSFYpw/+YghAPxuPpvKZM0L+t19XW8NOGyb?=
 =?us-ascii?Q?bj2h73gP7ocdP+uhkVDkVPGCoWe/R3L1J8tnAPO78MdzjWpOZ4Enwr0xy/Gt?=
 =?us-ascii?Q?NBpcNfmaZ090OFJPBgZdV9vdBrdoH2+UaE91YUOE8f8PmFh1a5Ui7Pw9WVD/?=
 =?us-ascii?Q?RbCAkTq4CsKDckvkb+kMpZxPun4NdeuVQb+NP++R895vDlvlymZ0CEj4SJX/?=
 =?us-ascii?Q?nRp/XgBMK9VMFlD/KwxcHe7Xu7vR6EEB1vlcNN8GqZo6Af2EvTopgBuC45yV?=
 =?us-ascii?Q?gkfovj+2egkvf+NbUTBQn9L04lqt61RdefLivdVC1Nw3VxRM9E3ve16vnprd?=
 =?us-ascii?Q?Q6vrwIqqeNSVxY4EO+TFDmZBmtBNuxHoFRVAyS3L2GknLwU9g5bk3LLDnvjJ?=
 =?us-ascii?Q?Tt60vly76KkJWdcrnVvrq5MC?=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3086
Original-Authentication-Results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DB5EUR03FT009.eop-EUR03.prod.protection.outlook.com
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	451a255e-bead-4b70-b19d-08d90bab91f4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BB7sOrJZ5fMxyo+yLSI2usRS27/2G65iSjXFSCZKa/kUh+nE9mK6Lgc/gKr/jk+Cq7sMnEOKufeKYSyEl7BFoCOxzmNLQvH9aoOwAKjlQ2kh4iEKYwsSSYogGJLAfxl5aKbHqyjYiLerAhPvH6y9u0egTnMOFFyo8XvAzdgbyYNIZwci5RbwKxHWtZQToUWuaXrnq3YAb7yH/9fgfnFh4ZZ40mOBE9h40s3tVbVbgJ9eAUO/p8Yf/4AOKlfU0B+0YqFS597eavnXOG/N3j7+hE98KXjJGwKy8v+ASsNvT5/o2D/+RW+OoU+1e8qfw49Y4T2B7b1XiSr5MhQMnu/kuaiC6SptIv7Jiy8Ow+dqrwCKndWrKjkdmwXHxxJHwZG9qdiNnlnpD4lwQ4ZbMayucbXULjYKfNUwgQ56ofuOjh4mHgbyXagvnc3n8CzdSsCEMvJ74kgxS/yDcBAlsi1ozWdG+meb1ty9Hjl03E35ubujdVLkqh5/MbsvLTqSuGa+WR7oZvK0Nad6PWWKbqtNoF/Gp7Vc3+pwldh0EJCSQ7dhUYFcO93TmfRZu6jR0yoGJtsePSdyQACBF+jUzLjhaKxbcXO84Gttac/IKGP/6e3Iqd7szJQbQwtWM4i0Nv4Q/q/uo6vrwyACFnOI6ZNaQwDLhdeTL43MYwnsl0Uwoibw09L/VUkrFR8ehqsfSZNJ
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:(4636009)(346002)(376002)(39850400004)(396003)(136003)(46966006)(36840700001)(4744005)(82310400003)(2906002)(6862004)(5660300002)(6666004)(478600001)(36860700001)(44832011)(54906003)(70586007)(81166007)(316002)(36756003)(26005)(83380400001)(47076005)(34020700004)(356005)(53546011)(186003)(6486002)(956004)(7696005)(33656002)(86362001)(8936002)(82740400003)(70206006)(2616005)(8676002)(4326008)(16526019)(336012);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 07:43:05.9220
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: cf8a7013-1db2-4970-0ce2-08d90bab9789
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:
	DB5EUR03FT009.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5730



> On 29 Apr 2021, at 14:10, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> With there being a way to disable v2 support, telling new guests to use
> v2 exclusively is not a good suggestion.
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>=20
> --- a/xen/include/public/grant_table.h
> +++ b/xen/include/public/grant_table.h
> @@ -121,8 +121,10 @@ typedef uint32_t grant_ref_t;
>  */
>=20
> /*
> - * Version 1 of the grant table entry structure is maintained purely
> - * for backwards compatibility.  New guests should use version 2.
> + * Version 1 of the grant table entry structure is maintained largely fo=
r
> + * backwards compatibility.  New guests are recommended to support using
> + * version 2 to overcome version 1 limitations, but to be able to fall b=
ack
> + * to version 1.
>  */
> #if __XEN_INTERFACE_VERSION__ < 0x0003020a
> #define grant_entry_v1 grant_entry
>=20

Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>

Cheers,
Luca



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 07:44:21 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 07:44:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120348.227613 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcNoy-0005Jn-IC; Fri, 30 Apr 2021 07:44:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120348.227613; Fri, 30 Apr 2021 07: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 1lcNoy-0005Jg-FA; Fri, 30 Apr 2021 07:44:20 +0000
Received: by outflank-mailman (input) for mailman id 120348;
 Fri, 30 Apr 2021 07:44:19 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1BfJ=J3=citrix.com=george.dunlap@srs-us1.protection.inumbo.net>)
 id 1lcNow-0005JZ-Sc
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 07:44:19 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 023b2c80-5b0b-4afc-96cd-0cb0e8e19a80;
 Fri, 30 Apr 2021 07:44: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: 023b2c80-5b0b-4afc-96cd-0cb0e8e19a80
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619768657;
  h=from:to:cc:subject:date:message-id:content-id:
   content-transfer-encoding:mime-version;
  bh=Dq6GKUzU4g5H7mhTPxPPMezut9ETd44wAVunIYCqOk0=;
  b=Ir6rC+L+YSut90gORrvZcz9uapFCzgMzHbDjVAIURVEp7LKECfV6NmwL
   m6z+9QST314rZ6xv+sAvyANmn/wz2llGM+ZdjxWe4boMz15vA8RW9Two2
   2Q9qoKombEmlKq1SEThkSmnl5EwB1AMu2WJl1OTkEFOU7HeRr0lLQ5J0/
   0=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: CmmtWVDhNrgpOCuGTPYd3jtXyRp8nYaxKw5S618JswR3G9OSDvwW0UbgzJTyheXi7IjAYSSQAp
 cdZ+4kDXeRN0sYp2Xdcy29F/QVVPc0/rakNN69FyhStGHL4RT4+zDvyeecjkR4rpuRM7gS7Uye
 8oYpUi7WAvj4ikYHOyc33wOQ+IImSrySBPb4bvh5tMfTD9OcHnrmdWQFfglZHYks62fUqRmVrU
 Od31YHP++ymJnhmQ3g9ocwYirvXS/20k3pIZrR+zb/yOsQ2LNJawF6Fjs7S7icaAuxvIfrAAKn
 CT8=
X-SBRS: 5.1
X-MesageID: 42774803
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:BbfsgKOtIfEpi8BcT4Hx55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAse9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrAHIMxbVstRQ3a
 IIScRDIfX7B1RikILe6A63D94vzLC8gdqVrM31pk0dKT1CQadm8gt/F0K6PyRNNUd7LLA+E4
 eR4dcCgjKmd2geYMjTPAh5Y8HoodrXmJX6JSMcDxk85wWUyR+u4rj2Ex+Xty1uEg9n67Ek7G
 TDjkjF9ryu2svLhSP0+k3yy9BtmNXnwsZeH8DksKkoAxjllwrAXvUYZ5SspzYwydvfimoCtP
 npj1MeM99o63XXF1vF4SfF/wX7yj4h5zvD5Daj8ADeiPf0Tj47FMZN7LgxGnCyhipQ3+1U66
 5Xw3mf86NeEBKoplWm2/HzSxpomkCoyEBS9tI7sn1FXYMSLJ9XoIAPlXklaasoISPg5IgrVN
 RpFcHXjcwmF2+yUnaxhBgL/PWcGlAIWjuWSEkLvcKYlxJMmmpi8kcezMsD2l8d6ZMUUfB/lq
 f5G5UtsIsLYt4dbKp7CutEa9CwEHbxTRXFN3/XCUj7FZsAJ2nGp/fMkfcIzdDvXKZN4Io5mZ
 zHXl8dn3U1YVjSBcqH24AO1RzRXmOnX3DIxttF75Z0/p3wLYCbdBGreRQLqY+Nsv8fCsrUV7
 KYI5RNGcLuKmPoBMJHxAv7V55OKWQPUcEct9ohMmj+5f7jG8nPjKj2YfzTLL3iHXIPQWXkGE
 YOWzD1OYFB4ymQKznFqSmUf0moVl30/Jp2HqSf1fMU0pIxOopFtRVQjVy448qMOCBTq6BeRj
 omHJrX1oeA4UWm92fB6GtkfjBHCFxO3bnmW3RW4QkQM031dr4Hs86FeX9b2WaGIhMXdbKTLC
 dv43BMvY6nJZ2Zwi4vT/i9NHiBsncVrHWWC4sHlrab/sfjcJMgBpMgUKh8fD+7TyBdqEJPki
 NueQUETkjQGnfSkq2jloUTH/yaXcJ7mh2XLcldrm//uU2Qqdo0fGYSWyejXKes8F0TbgsRom
 c00qcExJKchD6kKAIE8ZgFGWwJTF7SPZVrI0CuYp5OlrXiZQdqJF36+gCyulUUYWrl90Ibm2
 r7CzabEMu7X2Z1smxE06rs7VN/fniceUU1cXxhrYhhDw39ywdO+P7Oaayp32SLbFwehukbLT
 HeeDMXZhhj3tatyXeu6Xu/PGRjw5hrJ/faBrg4ab3fs0ndXLGghOUDF/9Q8I0NDqGRjsYbFe
 aecRSSNjX2Fqcg3BGUvG8sPEBP2TIZuOKt3B3u926j2nEjRfLUPVR9XrkeZ9WR9XLtSfrN0J
 J3i7sOzKGNG3S0bt6N0qfMaTFfbhvVvG6tVukt7YlOorhajsoEI7DLFT/TkH1X1hQ3K8n50E
 sYXaRg+bjEfotiZdYbdS5V9kcg/e7/YHcDo0jzGKszbFsth3jUM5eS773EpaEmD0eBqAHzUG
 PvuxF17rPARW+OxLQaA6U/LSBKc0A68m1l5/7HeIvKCgmmHtszi2aSIzu4avtaR6eEE7lL8U
 o/7NGMguONdy33nArXpiB2J6pS82ChBcO+aTj8a9Jg4pi/IxCLhKDv/cu4yDHwQjG/Y14DhY
 JEeVcLB/4zwwUKnckyyGyqVqfzokg5iFNQ7jFsi0711uGdkRTmNFADNRecn45fUjZSOGWZlM
 jJ8eCX03Lm/ThOsKOzYXt4b5VJANgfTo/+MidoJ4wRpdeTjtoSvhg=
X-IronPort-AV: E=Sophos;i="5.82,260,1613451600"; 
   d="scan'208";a="42774803"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z2ubLyBmeZwKvsd7I0EEvEuAxgonvrvcliYvDnvsv3eOlf8SzPz253hz/u1Bou5LJ25BC5d42ubFsP5/r1l3kHtVX6k/4gpx2KGaQAyXj1TV+GrVddjcYDltMjihkBdDjYYD2TL4ztg4ZRFkhvdyoLPujzR17XpGWbqX5y1/S4a7WZ7fVG1QbrG0NFp3mIfkEmyZeBNShHBwvxF0TGgQiFORuT/O0S8/+feY9M0iv81h3hzz7ZVgRbDVvyCoX//KOc5Nh+XJAdJXib1g7UgLyCPlUBLpw9ufX1Hdl4BrOkxuKpxk5Q89CJgJEbqACBUjMCrnTtAolmRMQ+IuOMEmiw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Dq6GKUzU4g5H7mhTPxPPMezut9ETd44wAVunIYCqOk0=;
 b=Fs8Wr/RFFOVUkL4YQi+QoID6L5F/+JHRXmHAUI2dOJqE/TDgiWkycoXbwSauAiux51yq2cEWKw6faSaUBYgO3RkyCTnOZxBgePLl7cV342QnJAKGBO7RMOJcXHmqUJfhEcKPAxjyRz9JD0EtDXZA8WcIDz6yEKbov5BW7T1ESNeKND0sTQPmsOGjOxpdbPRt1AJsuhErYiHiBhThHMhtw52e1QDITZYEDIJvFxM45CfksgR4xKSpQbAoyb9yto/wTe8x2mSjVJvPJkFjrbKNL0K/K6+VSxt9tDxTh+vVUUzl8tyueL9piVn93IsLEV6yRIpil0CSpx5aMKh5TOoj9A==
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=Dq6GKUzU4g5H7mhTPxPPMezut9ETd44wAVunIYCqOk0=;
 b=GbJlhuXGU291qllFI7vAv3xShe9CyD6d2oySQ/H3xrRSzHJDbDaDHi5zDKGK+0szlEYjqUNS62KnLVqWYDXBYgjoTGbhhgfJbjI1Y1Ff2FqFVmXAndMMtivDS39KBNwE+aelHL+iDTEW5nJTarIHryZ/GIIgRmD5LhB1w/Q9qyk=
From: George Dunlap <George.Dunlap@citrix.com>
To: 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>, =?utf-8?B?UGF1bCBEdXJyYW50wqA=?= <pdurrant@amazon.com>,
	"Ji, John" <john.ji@intel.com>, "edgar.iglesias@xilinx.com"
	<edgar.iglesias@xilinx.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@dornerworks.com>, Volodymyr Babchuk
	<volodymyr_babchuk@epam.com>, "mirela.simonovic@aggios.com"
	<mirela.simonovic@aggios.com>, Jarvis Roach <Jarvis.Roach@dornerworks.com>,
	Jeff Kubascik <Jeff.Kubascik@dornerworks.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Ian Jackson
	<Ian.Jackson@citrix.com>, 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>, Wei Liu <wl@xen.org>, Ash Wilding
	<ash.j.wilding@gmail.com>, Rahul Singh <Rahul.Singh@arm.com>,
	=?utf-8?B?UGlvdHIgS3LDs2w=?= <piotr.krol@3mdeb.com>, Brendan Kerrigan
	<brendank310@gmail.com>, "Thierry Laurion (Insurgo)" <insurgo@riseup.net>,
	Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>, "Oleksandr
 Tyshchenko" <oleksandr_tyshchenko@epam.com>, Deepthi <deepthi.m@ltts.com>,
	Scott Davis <scottwd@gmail.com>
CC: xen-devel <xen-devel@lists.xenproject.org>
Subject: [ANNOUNCE] Call for agenda items for 6 May Community Call @ 1500 UTC
Thread-Topic: [ANNOUNCE] Call for agenda items for 6 May Community Call @ 1500
 UTC
Thread-Index: AQHXPZSbGGAEuewkVEi+5q2zqjkjfw==
Date: Fri, 30 Apr 2021 07:44:09 +0000
Message-ID: <216A1A5A-159E-4B1A-AEE3-77C0036EBE62@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3654.60.0.2.21)
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: b78713bf-6f2d-4c2a-55f8-08d90babbdcf
x-ms-traffictypediagnostic: MWHPR03MB2542:
x-ld-processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MWHPR03MB2542B762E6D0CC6575DFEBCC995E9@MWHPR03MB2542.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 492SGh/xhdPXeTH9ZQd3JT5hZoxTz8QnsuuoXQIRTXe0UFox6Bm49UtxCtXbk3hRFHXkwkFihTK8sP0scHcqCoifnCOE+WGOZFNFVcrf0RVn6SjQWrOYvIiR8xDp5P0fzQXwFGURPma5Vec3Wa4TRYXbQMxTiSCL6gypE/StXWUZFCdVgPL2ZO2mUqgio5l3Q6zp7T2VRkEFoy3Gz3XN7/xWLjZ6kSAwMUqfC/tSwxvy+WszjRfjaRkTKdNX9c3iltoKAcmss/B6eGpEH/nS2QDZFgOEmmcU3MNc6SanlTLbBbMLvZccn0xevqobc6NWzKPc8GgscrcEUAcwneI8XgdTyeuxsUEKJJJrQ1L/xVe/eWI2B3yDxk3/EXDjq6tP65XiCKvAtBO7QMqURF/MMntMmUBqfsAEv8y3TctgaISlktEdET95yy42YlPZRCI4Gz3z3Zo1FLcsd6KWvviX5B+x9ziTGGosgfIFVUvQRASHwv26xxwBRSFsMiALlXvv96jdqd6KkP480nAeZOQq28hIh1Mu0TXPxIreP+3+ThkVgeVhP5QorJYWmltmF4eUTelQVpR5Lc98kA9n59vz38O6VCgiQPZ9wSTkn1EfPIB45FYAWCe/9WgN4kUK7Vr67YCZhDJV+r3bE4L3QOr1P6j7DnsM2Z7G2On0qN0pPGFMzOUNASONYUInbt0wBMYMe6Ap8jTS1njp01KTBI8pGXKwqO2i2ZNlBG7nGxDaDF1iD/5Ta1cCzqH/8Pzsj3tetQkFslxuOA9+vUzc6NiiWA==
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR03MB5665.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(366004)(376002)(39860400002)(396003)(136003)(5660300002)(122000001)(36756003)(86362001)(7416002)(478600001)(38100700002)(71200400001)(8936002)(7406005)(316002)(110136005)(76116006)(4326008)(6512007)(966005)(8676002)(2616005)(921005)(2906002)(186003)(66446008)(83380400001)(91956017)(6506007)(66476007)(6486002)(26005)(64756008)(66556008)(33656002)(66946007)(221023002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata: 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
 =?utf-8?B?U2JYREQ4YnhuaWtiVm5lUT09?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <281A7AF64E57A442B67631C76B77DB7E@namprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: CO1PR03MB5665.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b78713bf-6f2d-4c2a-55f8-08d90babbdcf
X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Apr 2021 07:44:09.7488
 (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: PHUGBaP7QT+4C+Tz0egfclw9gVEQ+fje6TT4N4o0yiyHkaRUSABUvA/YpN9LDrzScb8GpiH9fh3kRDzgO/aC6lOjrNDscoyQwv80sCdSQWs=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR03MB2542
X-OriginatorOrg: citrix.com

SGkgYWxsLA0KDQpUaGUgcHJvcG9zZWQgYWdlbmRhIGlzIGluIGh0dHBzOi8vY3J5cHRwYWQuZnIv
cGFkLyMvMi9wYWQvZWRpdC9vLXBHZGZMR2pYRzhCdWktQ3UraUpMc0MvIGFuZCB5b3UgY2FuIGVk
aXQgdG8gYWRkIGl0ZW1zLiAgQWx0ZXJuYXRpdmVseSwgeW91IGNhbiByZXBseSB0byB0aGlzIG1h
aWwgZGlyZWN0bHkuDQoNCkFnZW5kYSBpdGVtcyBhcHByZWNpYXRlZCBhIGZldyBkYXlzIGJlZm9y
ZSB0aGUgY2FsbDogcGxlYXNlIHB1dCB5b3VyIG5hbWUgYmVzaWRlcyBpdGVtcyBpZiB5b3UgZWRp
dCB0aGUgZG9jdW1lbnQuDQoNCk5vdGUgdGhlIGZvbGxvd2luZyBhZG1pbmlzdHJhdGl2ZSBjb252
ZW50aW9ucyBmb3IgdGhlIGNhbGw6DQoqIFVubGVzcywgYWdyZWVkIGluIHRoZSBwZXJ2aW91cyBt
ZWV0aW5nIG90aGVyd2lzZSwgdGhlIGNhbGwgaXMgb24gdGhlIDFzdCBUaHVyc2RheSBvZiBlYWNo
IG1vbnRoIGF0IDE2MDAgQnJpdGlzaCBUaW1lIChlaXRoZXIgR01UIG9yIEJTVCkNCiogSSB1c3Vh
bGx5IHNlbmQgb3V0IGEgbWVldGluZyByZW1pbmRlciBhIGZldyBkYXlzIGJlZm9yZSB3aXRoIGEg
cHJvdmlzaW9uYWwgYWdlbmRhDQoNCiogVG8gYWxsb3cgdGltZSB0byBzd2l0Y2ggYmV0d2VlbiBt
ZWV0aW5ncywgd2UnbGwgcGxhbiBvbiBzdGFydGluZyB0aGUgYWdlbmRhIGF0IDE2OjA1IHNoYXJw
LiAgQWltIHRvIGpvaW4gYnkgMTY6MDMgaWYgcG9zc2libGUgdG8gYWxsb2NhdGUgdGltZSB0byBz
b3J0IG91dCB0ZWNobmljYWwgZGlmZmljdWx0aWVzICZjDQoNCiogSWYgeW91IHdhbnQgdG8gYmUg
Q0MnZWQgcGxlYXNlIGFkZCBvciByZW1vdmUgeW91cnNlbGYgZnJvbSB0aGUgc2lnbi11cC1zaGVl
dCBhdCBodHRwczovL2NyeXB0cGFkLmZyL3BhZC8jLzIvcGFkL2VkaXQvRDl2R3ppaFB4eEFPZTZS
RlB6MHNSQ2YrLw0KDQpCZXN0IFJlZ2FyZHMNCkdlb3JnZQ0KDQoNCg0KPT0gRGlhbC1pbiBJbmZv
cm1hdGlvbiA9PQ0KIyMgTWVldGluZyB0aW1lDQoxNTowMCAtIDE2OjAwIFVUQw0KRnVydGhlciBJ
bnRlcm5hdGlvbmFsIG1lZXRpbmcgdGltZXM6IGh0dHBzOi8vd3d3LnRpbWVhbmRkYXRlLmNvbS93
b3JsZGNsb2NrL21lZXRpbmdkZXRhaWxzLmh0bWw/eWVhcj0yMDIxJm1vbnRoPTA1JmRheT02Jmhv
dXI9MTUmbWluPTAmc2VjPTAmcDE9MTIzNCZwMj0zNyZwMz0yMjQmcDQ9MTc5DQoNCg0KIyMgRGlh
bCBpbiBkZXRhaWxzDQpXZWI6IGh0dHBzOi8vbWVldC5qaXQuc2kvWGVuUHJvamVjdENvbW11bml0
eUNhbGwNCg0KRGlhbC1pbiBpbmZvIGFuZCBwaW4gY2FuIGJlIGZvdW5kIGhlcmU6DQoNCmh0dHBz
Oi8vbWVldC5qaXQuc2kvc3RhdGljL2RpYWxJbkluZm8uaHRtbD9yb29tPVhlblByb2plY3RDb21t
dW5pdHlDYWxs


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 08:09:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 08:09:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120388.227657 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcODH-0008CY-Hj; Fri, 30 Apr 2021 08:09:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120388.227657; Fri, 30 Apr 2021 08: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 1lcODH-0008CR-Eh; Fri, 30 Apr 2021 08:09:27 +0000
Received: by outflank-mailman (input) for mailman id 120388;
 Fri, 30 Apr 2021 08:09: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 1lcODG-0008CM-2q
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 08:09: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 1lcODE-00067g-T9; Fri, 30 Apr 2021 08:09:24 +0000
Received: from 54-240-197-225.amazon.com ([54.240.197.225]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lcODE-00075Q-J1; Fri, 30 Apr 2021 08:09:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=dnZQBjJf/E8Q3K9FmB6B0nE9Gm3pGkM0l3lx/H6fGlg=; b=a8FkICAV3wTxTuiT9hZFGCR9EO
	/I9AP6zW/FfmklJcWCI0lmxfFdbVUKgYAavTL4XmU3h984+ZqB5CXu/5xYCPmeLf7/xx2UVSpfsmr
	9U7iCqI1WFHfX1oN/e0to9IxsU3wKlBAEn72S9DTHREiyco+KPCIFAPRhTL8aA398jBQ=;
Subject: Re: [PATCH v3] gnttab: defer allocation of status frame tracking
 array
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <d2397cd4-040e-3cc0-22d8-3f65d01f9326@suse.com>
 <581f843f-25de-bf8a-e8b9-7a407158bd4f@xen.org>
 <150783e6-1bc5-d646-354b-9cddd2f236c2@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <3f13d19e-3104-f71b-386a-9e768654238a@xen.org>
Date: Fri, 30 Apr 2021 09:09:22 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <150783e6-1bc5-d646-354b-9cddd2f236c2@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 29/04/2021 14:40, Jan Beulich wrote:
> On 29.04.2021 15:15, Julien Grall wrote:
>> On 15/04/2021 10:41, Jan Beulich wrote:
>>> This array can be large when many grant frames are permitted; avoid
>>> allocating it when it's not going to be used anyway, by doing this only
>>> in gnttab_populate_status_frames().
>>
>> Given the controversy of the change, I would suggest to summarize why
>> this approach is considered to be ok in the commit message.
> 
> I've added "While the delaying of the respective memory allocation adds
> possible reasons for failure of the respective enclosing operations,
> there are other memory allocations there already, so callers can't
> expect these operations to always succeed anyway."

Looks good to me, thanks!

> 
>>> @@ -1767,18 +1778,23 @@ status_alloc_failed:
>>>            free_xenheap_page(gt->status[i]);
>>>            gt->status[i] = NULL;
>>>        }
>>
>> NIT: can you add a newline here and...
>>
>>> +    if ( !nr_status_frames(gt) )
>>> +    {
>>> +        xfree(gt->status);
>>> +        gt->status = ZERO_BLOCK_PTR;
>>> +    }
>>
>> ... here for readability.
> 
> Can do.
> 
>>> @@ -1833,12 +1849,11 @@ gnttab_unpopulate_status_frames(struct d
>>>            page_set_owner(pg, NULL);
>>>        }
>>>    
>>> -    for ( i = 0; i < nr_status_frames(gt); i++ )
>>> -    {
>>> -        free_xenheap_page(gt->status[i]);
>>> -        gt->status[i] = NULL;
>>> -    }
>>>        gt->nr_status_frames = 0;
>>> +    for ( i = 0; i < n; i++ )
>>> +        free_xenheap_page(gt->status[i]);
>>> +    xfree(gt->status);
>>> +    gt->status = ZERO_BLOCK_PTR;
>> The new position of the for loop seems unrelated to the purpose of the
>> patch. May I ask why this was done?
> 
> Since I was touching this anyway, I thought I could also bring it
> into "canonical" order: Up-ing of an array's size should always
> first populate the higher entries, then bump the upper bound.
> Shrinking of an array's size should always first shrink the upper
> bound, then un-populate the higher entries. This may not strictly
> be needed here, but I think code we have would better not set bad
> precedents (which may otherwise propagate elsewhere).

I am assuming the concern here would be concurrent access. In which 
case, neither of the two versions would be actually be safe.

Anyway, I can see the theory so I am OK with it. However, this is more a 
clean-up than something strictly necessary for this patch. I can live 
with the code beeing modified here, but this at least ought to be 
explained in the commit message.

>>> @@ -4047,11 +4062,12 @@ int gnttab_acquire_resource(
>>>            if ( gt->gt_version != 2 )
>>>                break;
>>>    
>>> +        rc = gnttab_get_status_frame_mfn(d, final_frame, &tmp);
>>
>> NIT: It wasn't obvious to me why gnttab_get_status_frame_mfn() is moved
>> before gt->status. May I suggest to add a in-code comment abouve the
>> ordering?
> 
> I've added
> 
>          /* This may change gt->status, so has to happen before setting vaddrs. */

Sounds good to me!

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 08:19:49 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 08:19:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120396.227674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcONF-0000jD-Ih; Fri, 30 Apr 2021 08:19:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120396.227674; Fri, 30 Apr 2021 08: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 1lcONF-0000j6-Fl; Fri, 30 Apr 2021 08:19:45 +0000
Received: by outflank-mailman (input) for mailman id 120396;
 Fri, 30 Apr 2021 08:19: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 1lcONE-0000j1-1y
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 08:19: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 1lcONA-0006ID-SS; Fri, 30 Apr 2021 08:19:40 +0000
Received: from 54-240-197-233.amazon.com ([54.240.197.233]
 helo=a483e7b01a66.ant.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1lcONA-0007o6-HT; Fri, 30 Apr 2021 08:19: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:
	MIME-Version:Date:Message-ID:From:References:Cc:To:Subject;
	bh=glfHiN++vwRTdePC5cGdWv1bK8ZQYIWXvg/UgYJwrR4=; b=ao33Nmygkq3iM6QrmajT5TRPzj
	O+8fR7YPiOayNCYP0pEItEMVEbisa0xI40Ow1j0Rg2BzNrHHbXcb375FA4o7Ulz3SOD4zPPVVIqfZ
	npKnD7aFlq65euJOz7bUWP5XkJQLGfn9YxryW/hp6On5TyEKpgnq55rqYnzQbaXHO2rQ=;
Subject: Re: [PATCH] public/gnttab: relax v2 recommendation
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>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Luca Fancellu <luca.fancellu@arm.com>
References: <dcd9ede1-9471-6866-4ba7-b6a7664b5e35@suse.com>
From: Julien Grall <julien@xen.org>
Message-ID: <8eac6f09-4d1d-6fcc-4218-8c9a0760a6bb@xen.org>
Date: Fri, 30 Apr 2021 09:19:38 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0)
 Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <dcd9ede1-9471-6866-4ba7-b6a7664b5e35@suse.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 7bit

Hi Jan,

On 29/04/2021 14:10, Jan Beulich wrote:
> With there being a way to disable v2 support, telling new guests to use
> v2 exclusively is not a good suggestion.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> --- a/xen/include/public/grant_table.h
> +++ b/xen/include/public/grant_table.h
> @@ -121,8 +121,10 @@ typedef uint32_t grant_ref_t;
>    */
>   
>   /*
> - * Version 1 of the grant table entry structure is maintained purely
> - * for backwards compatibility.  New guests should use version 2.
> + * Version 1 of the grant table entry structure is maintained largely for
> + * backwards compatibility.  New guests are recommended to support using
> + * version 2 to overcome version 1 limitations, but to be able to fall back
> + * to version 1.

v2 is not supported on Arm and I don't see it coming anytime soon. 
AFAIK, Linux will also not use grant table v2 unless the guest has a 
address space larger than 44 (?) bits.

I can't remember why Linux decided to not use it everywhere, but this is 
a sign that v2 is not always desired.

So I think it would be better to recommend new guest to use v1 unless 
they hit the limitations (to be details).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 08:36:15 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 08:36:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120403.227687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcOd8-0002QU-TV; Fri, 30 Apr 2021 08:36:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120403.227687; Fri, 30 Apr 2021 08: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 1lcOd8-0002QN-QF; Fri, 30 Apr 2021 08:36:10 +0000
Received: by outflank-mailman (input) for mailman id 120403;
 Fri, 30 Apr 2021 08:36:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcOd7-0002QI-8p
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 08:36:09 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 33930306-fa1c-4c68-8a00-cbbfa0d2e622;
 Fri, 30 Apr 2021 08:36:07 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D489DAE4D;
 Fri, 30 Apr 2021 08:36: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: 33930306-fa1c-4c68-8a00-cbbfa0d2e622
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619771767; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=beJQEw5ju+S7GsMVd6BCBZisGUHvLaDSjLOgu5JNBnQ=;
	b=s7BNPJC17L9hVwYDMNM15YwC7+G4M7xoxQo9GQPW4e+qD1W5hupVwSjTBgyiBzOEco2Lq1
	Nb0NH0sb450KPbCi1lFQg7S/RldGsRAfYaRHLgMueEqDzUqGouyjBY51qtNR9o8MZi4nSU
	oFG5yYFKbO12B+ppUyQzmw3t2o6kB8Y=
Subject: Re: [PATCH] public/gnttab: relax v2 recommendation
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Ian Jackson <iwj@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Luca Fancellu <luca.fancellu@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <dcd9ede1-9471-6866-4ba7-b6a7664b5e35@suse.com>
 <8eac6f09-4d1d-6fcc-4218-8c9a0760a6bb@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <71e61d09-5d92-94dc-ae0c-ce09cb49b4ce@suse.com>
Date: Fri, 30 Apr 2021 10:36:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <8eac6f09-4d1d-6fcc-4218-8c9a0760a6bb@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 30.04.2021 10:19, Julien Grall wrote:
> On 29/04/2021 14:10, Jan Beulich wrote:
>> With there being a way to disable v2 support, telling new guests to use
>> v2 exclusively is not a good suggestion.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>
>> --- a/xen/include/public/grant_table.h
>> +++ b/xen/include/public/grant_table.h
>> @@ -121,8 +121,10 @@ typedef uint32_t grant_ref_t;
>>    */
>>   
>>   /*
>> - * Version 1 of the grant table entry structure is maintained purely
>> - * for backwards compatibility.  New guests should use version 2.
>> + * Version 1 of the grant table entry structure is maintained largely for
>> + * backwards compatibility.  New guests are recommended to support using
>> + * version 2 to overcome version 1 limitations, but to be able to fall back
>> + * to version 1.
> 
> v2 is not supported on Arm and I don't see it coming anytime soon. 
> AFAIK, Linux will also not use grant table v2 unless the guest has a 
> address space larger than 44 (?) bits.

Yes, as soon as there are frame numbers not representable in 32 bits.

> I can't remember why Linux decided to not use it everywhere, but this is 
> a sign that v2 is not always desired.
> 
> So I think it would be better to recommend new guest to use v1 unless 
> they hit the limitations (to be details).

IOW you'd prefer s/be able to fall back/default/? I'd be fine that way.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 09:09:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 09:09:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120408.227698 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcP8o-00058M-HL; Fri, 30 Apr 2021 09:08:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120408.227698; Fri, 30 Apr 2021 09:08: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 1lcP8o-00058F-EL; Fri, 30 Apr 2021 09:08:54 +0000
Received: by outflank-mailman (input) for mailman id 120408;
 Fri, 30 Apr 2021 09:08:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcP8m-000586-Eh
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 09:08:52 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 82284e7c-8c56-4118-a3f3-126845b824f2;
 Fri, 30 Apr 2021 09:08:51 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 8E811AF52;
 Fri, 30 Apr 2021 09:08: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: 82284e7c-8c56-4118-a3f3-126845b824f2
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619773730; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=HiE8L/EOFiLAIV4Uz0Wv/e2I783uNQglyD008AqBQbE=;
	b=r8cy38pKvqgre/GXdrSpXYGtVYNm65CvgjeVRedEDqrK7DKBk2rl7LEFHTGKKOydyZGF3p
	BNNIP7G2w0P0yVTYgGSvXlGb6nW0PwZXJLuI++Gzzo0Wb93uiDYWrhRRV4imZrGNl+h0dq
	XSDE9ADgtCv0wuy9QnVicqit4WMMrBs=
Subject: Re: [PATCH] x86: Always have CR4.PKE set in HVM context
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210429221223.28348-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <4781e8f1-d70b-2736-364c-eeed61869031@suse.com>
Date: Fri, 30 Apr 2021 11:08:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <20210429221223.28348-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 30.04.2021 00:12, Andrew Cooper wrote:
> The sole user of read_pkru() is the emulated pagewalk, and guarded behind
> guest_pku_enabled() which restricts the path to HVM (hap, even) context only.
> 
> The commentary in read_pkru() concerning _PAGE_GNTTAB overlapping with
> _PAGE_PKEY_BITS is only applicable to PV guests.
> 
> The context switch path, via write_ptbase() unconditionally writes CR4 on any
> context switch.
> 
> Therefore, we can guarantee to separate CR4.PKE between PV and HVM context at
> no extra cost.  Set PKE in mmu_cr4_features on boot, so it becomes set in HVM
> context, and clear it in pv_make_cr4().
> 
> Rename read_pkru() to rdpkru() now that it is a simple wrapper around the
> instruction.  This saves two CR4 writes on every pagewalk, which typically
> occur more than one per emulation.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

The changes looks perfectly fine to me, but I still feel urged to make
Reviewed-by: Jan Beulich <jbeulich@suse.com>
conditional upon my "x86emul: support RDPKRU/WRPKRU" (submitted exactly
half a year ago) going in first, unless there were to be review comments
making extensive rework necessary. In the absence of such review
feedback, I consider it pretty inappropriate for me to do rebasing work
(no matter that this would be largely mechanical afaics) here for a
patch which has been pending and effectively ignored for so long. (The
main thing that immediately struck me as odd was "The sole user of
read_pkru() is ...".)

I'm sorry, Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 09:14:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 09:14:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120413.227711 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcPDm-000603-5u; Fri, 30 Apr 2021 09:14:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120413.227711; Fri, 30 Apr 2021 09:14: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 1lcPDm-0005zw-28; Fri, 30 Apr 2021 09:14:02 +0000
Received: by outflank-mailman (input) for mailman id 120413;
 Fri, 30 Apr 2021 09:14: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 1lcPDk-0005zo-Eb; Fri, 30 Apr 2021 09:14: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 1lcPDk-0007AU-6Z; Fri, 30 Apr 2021 09:14: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 1lcPDj-0000aQ-Ub; Fri, 30 Apr 2021 09:14:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcPDj-00022d-U6; Fri, 30 Apr 2021 09:13: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:Message-Id:Subject:To;
	bh=Y6yWxI9os++ZlEHuGmOhsUvEAu5IdhKhgcahRQUUJnA=; b=NXqY1hXH+zEM6TnksrbjsWx0tr
	LzyeNN9V2pqQbXKAi18oEmiLrup1Qqk3wbxGnxEGhGHuQ8ZFBL74QCTurd7oHReL/0B39Q7xQlCAF
	Cg3Bm5xem6JeDtvH99g0CDvAtQYwiRku1nM7YQLhBSXtYB62Ni1WSnhtHT6peptrLKMQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Subject: [qemu-mainline bisection] complete test-amd64-i386-xl-qemuu-win7-amd64
Message-Id: <E1lcPDj-00022d-U6@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 09:13:59 +0000

branch xen-unstable
xenbranch xen-unstable
job test-amd64-i386-xl-qemuu-win7-amd64
testid guest-saverestore

Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8a40754bca14df63c6d2ffe473b68a270dc50679
  Bug not present: dc04d25e2f3f7e26f7f97b860992076b5f04afdb
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161539/


  (Revision log too long, omitted.)


*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  1b507e55f8199eaad99744613823f6929e4d57c6
  Bug not present: 4083904bc9fe5da580f7ca397b1e828fbc322732
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161547/


  commit 1b507e55f8199eaad99744613823f6929e4d57c6
  Merge: 4083904bc9 8d17adf34f
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   Thu Mar 18 19:00:49 2021 +0000
  
      Merge remote-tracking branch 'remotes/berrange-gitlab/tags/dep-many-pull-request' into staging
      
      Remove many old deprecated features
      
      The following features have been deprecated for well over the 2
      release cycle we promise
      
        ``-drive file=json:{...{'driver':'file'}}`` (since 3.0)
        ``-vnc acl`` (since 4.0.0)
        ``-mon ...,control=readline,pretty=on|off`` (since 4.1)
        ``migrate_set_downtime`` and ``migrate_set_speed`` (since 2.8.0)
        ``query-named-block-nodes`` result ``encryption_key_missing`` (since 2.10.0)
        ``query-block`` result ``inserted.encryption_key_missing`` (since 2.10.0)
        ``migrate-set-cache-size`` and ``query-migrate-cache-size`` (since 2.11.0)
        ``query-named-block-nodes`` and ``query-block`` result dirty-bitmaps[i].status (since 4.0)
        ``query-cpus`` (since 2.12.0)
        ``query-cpus-fast`` ``arch`` output member (since 3.0.0)
        ``query-events`` (since 4.0)
        chardev client socket with ``wait`` option (since 4.0)
        ``acl_show``, ``acl_reset``, ``acl_policy``, ``acl_add``, ``acl_remove`` (since 4.0.0)
        ``ide-drive`` (since 4.2)
        ``scsi-disk`` (since 4.2)
      
      # gpg: Signature made Thu 18 Mar 2021 09:23:39 GMT
      # gpg:                using RSA key DAF3A6FDB26B62912D0E8E3FBE86EBB415104FDF
      # gpg: Good signature from "Daniel P. Berrange <dan@berrange.com>" [full]
      # gpg:                 aka "Daniel P. Berrange <berrange@redhat.com>" [full]
      # Primary key fingerprint: DAF3 A6FD B26B 6291 2D0E  8E3F BE86 EBB4 1510 4FDF
      
      * remotes/berrange-gitlab/tags/dep-many-pull-request:
        block: remove support for using "file" driver with block/char devices
        block: remove 'dirty-bitmaps' field from 'BlockInfo' struct
        block: remove dirty bitmaps 'status' field
        block: remove 'encryption_key_missing' flag from QAPI
        hw/scsi: remove 'scsi-disk' device
        hw/ide: remove 'ide-drive' device
        chardev: reject use of 'wait' flag for socket client chardevs
        machine: remove 'arch' field from 'query-cpus-fast' QMP command
        machine: remove 'query-cpus' QMP command
        migrate: remove QMP/HMP commands for speed, downtime and cache size
        monitor: remove 'query-events' QMP command
        monitor: raise error when 'pretty' option is used with HMP
        ui, monitor: remove deprecated VNC ACL option and HMP commands
      
      Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
  
  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit e67d8e2928200e24ecb47c7be3ea8270077f2996
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 19:22:36 2021 +0000
  
      block: remove 'dirty-bitmaps' field from 'BlockInfo' struct
      
      The same data is available in the 'BlockDeviceInfo' struct.
      
      Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 81cbfd5088690c53541ffd0d74851c8ab055a829
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 19:19:54 2021 +0000
  
      block: remove dirty bitmaps 'status' field
      
      The same information is available via the 'recording' and 'busy' fields.
      
      Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit ad1324e044240ae9fcf67e4c215481b7a35591b9
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 18:53:17 2021 +0000
  
      block: remove 'encryption_key_missing' flag from QAPI
      
      This has been hardcoded to "false" since 2.10.0, since secrets required
      to unlock block devices are now always provided up front instead of using
      interactive prompts.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 879be3af49132d232602e0ca783ec9b4112530fa
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:40:56 2021 +0000
  
      hw/scsi: remove 'scsi-disk' device
      
      The 'scsi-hd' and 'scsi-cd' devices provide suitable alternatives.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit b50101833987b47e0740f1621de48637c468c3d1
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:40:56 2021 +0000
  
      hw/ide: remove 'ide-drive' device
      
      The 'ide-hd' and 'ide-cd' devices provide suitable alternatives.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 24e13a4dc1eb1630eceffc7ab334145d902e763d
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:47:17 2021 +0000
  
      chardev: reject use of 'wait' flag for socket client chardevs
      
      This only makes sense conceptually when used with listener chardevs.
      
      Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 445a5b4087567bf4d4ce76d394adf78d9d5c88a5
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:29:31 2021 +0000
  
      machine: remove 'arch' field from 'query-cpus-fast' QMP command
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 18:40:12 2021 +0000
  
      migrate: remove QMP/HMP commands for speed, downtime and cache size
      
      The generic 'migrate_set_parameters' command handle all types of param.
      
      Only the QMP commands were documented in the deprecations page, but the
      rationale for deprecating applies equally to HMP, and the replacements
      exist. Furthermore the HMP commands are just shims to the QMP commands,
      so removing the latter breaks the former unless they get re-implemented.
      
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 8becb36063fb14df1e3ae4916215667e2cb65fa2
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:35:15 2021 +0000
  
      monitor: remove 'query-events' QMP command
      
      The code comment suggests removing QAPIEvent_(str|lookup) symbols too,
      however, these are both auto-generated as standard for any enum in
      QAPI. As such it they'll exist whether we use them or not.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 283d845c9164f57f5dba020a4783bb290493802f
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 17:56:13 2021 +0000
  
      monitor: raise error when 'pretty' option is used with HMP
      
      This is only semantically useful for QMP.
      
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 5994dcb8d8525ac044a31913c6bceeee788ec700
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 17:47:31 2021 +0000
  
      ui, monitor: remove deprecated VNC ACL option and HMP commands
      
      The VNC ACL concept has been replaced by the pluggable "authz" framework
      which does not use monitor commands.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-win7-amd64.guest-saverestore.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-win7-amd64.guest-saverestore --summary-out=tmp/161547.bisection-summary --basis-template=152631 --blessings=real,real-bisect,real-retry qemu-mainline test-amd64-i386-xl-qemuu-win7-amd64 guest-saverestore
Searching for failure / basis pass:
 161514 fail [host=pinot0] / 160125 ok.
Failure / basis pass flights: 161514 / 160125
(tree with no url: minios)
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://git.qemu.org/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 5b90b8abb4049e2d98040f548ad23b6ab22d5d19 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0cef06d18762374c94eb4d511717a4735d668a24 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
Basis pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b12498fc575f2ad30f09fe78badc7fef526e2d76 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/osstest/ovmf.git#030ba3097a6e7d08b99f8a9d19a322f61409c1f6-5b90b8abb4049e2d98040f548ad23b6ab22d5d19 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c74\
 37ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://git.qemu.org/qemu.git#b12498fc575f2ad30f09fe78badc7fef526e2d76-0cef06d18762374c94eb4d511717a4735d668a24 git://xenbits.xen.org/osstest/seabios.git#b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee-b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee git://xenbits.xen.org/xen.git#21657ad4f01a634beac570c64c0691e51b9cf366-972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
Loaded 25109 nodes in revision graph
Searching for test results:
 160125 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b12498fc575f2ad30f09fe78badc7fef526e2d76 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 160134 fail irrelevant
 160147 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2e1293cbaac75e84f541f9acfa8e26749f4c3562 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160167 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 ca318882714080fb81fe9eb89a7b7934efc5bfae 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bdee969c0e65d4d509932b1d70e3a3b2ffbff6d5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 160328 fail irrelevant
 160361 fail irrelevant
 160392 fail irrelevant
 160418 fail irrelevant
 160448 fail irrelevant
 160477 fail irrelevant
 160501 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160522 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7b9a3c9f94bcac23c534bc9f42a9e914b433b299 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160541 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ec2e6e016d24bd429792d08cf607e4c5350dcdaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee e680cc48b7184d3489873d6776f84ba1fc238ced
 160563 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b33cf5bfcb4c941370739dfbbe1532ff508fd29d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 7993b0f83fe5c3f8555e79781d5d098f99751a94 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee cead8c0d17462f3a1150b5657d3f4eaa88faf1cb
 160619 fail irrelevant
 160632 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 62bad17dcae18f55cb3bdc19909543dfdf928a2b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6ee55e1d10c25c2f6bf5ce2084ad2327e17affa5 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 90629587e16e2efdb61da77f25c25fba3c4a5fd7
 160650 fail irrelevant
 160736 fail irrelevant
 160748 fail irrelevant
 160779 fail irrelevant
 160801 fail irrelevant
 160827 fail irrelevant
 160851 fail irrelevant
 160883 fail irrelevant
 160916 fail irrelevant
 160980 fail irrelevant
 161050 fail irrelevant
 161088 fail irrelevant
 161121 fail irrelevant
 161147 fail irrelevant
 161171 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 2ad22420a710dc07e3b644f91a5b55c09c39ecf3 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 264aa183ad85b2779b27d1312724a291259ccc9f
 161191 fail irrelevant
 161210 fail irrelevant
 161232 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee b53173e7cdafb7a318a239d557478fd73734a86a
 161256 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161276 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161290 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 99e7e48cc7117c37fc1c08a741872d0875595796 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8fe9f1f891eff4e37f82622b7480ee748bf4af74 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dd22a64de7e02b48312839a15179528c8f7db5c6
 161308 fail irrelevant
 161334 fail irrelevant
 161364 fail irrelevant
 161388 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3b0d007a135284981fa750612a47234b83976f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b1cffefa1b163bce9aebc3416f562c1d3886eeaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 9f6cd4983715cb31f0ea540e6bbb63f799a35d8a
 161401 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 d3b0d007a135284981fa750612a47234b83976f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b1cffefa1b163bce9aebc3416f562c1d3886eeaa b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee aaa3eafb3ba8b544d19ca41cda1477640b22b8fc
 161419 fail irrelevant
 161434 fail irrelevant
 161444 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ffa090bc56e73e287a63261e70ac02c0970be61a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee bea65a212c0581520203b6ad0d07615693f42f73
 161455 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 f2f4c6be2dba3f8e97ac544b9c3da71e9f81b294 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ffa090bc56e73e287a63261e70ac02c0970be61a b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee bea65a212c0581520203b6ad0d07615693f42f73
 161472 fail irrelevant
 161481 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 5396354b868bd6652600a654bba7df16701ac1cb 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0cef06d18762374c94eb4d511717a4735d668a24 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 11e7f0fe72ca0060762d18268e0388731fe8ccb6
 161507 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 030ba3097a6e7d08b99f8a9d19a322f61409c1f6 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 b12498fc575f2ad30f09fe78badc7fef526e2d76 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 21657ad4f01a634beac570c64c0691e51b9cf366
 161511 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 5396354b868bd6652600a654bba7df16701ac1cb 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0cef06d18762374c94eb4d511717a4735d668a24 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 11e7f0fe72ca0060762d18268e0388731fe8ccb6
 161495 fail irrelevant
 161513 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f2a9a6c2a86570ccbf8c5c30cbb8bf723168c459 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161515 fail irrelevant
 161517 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 17422da082ffcecb38bd1f2e2de6d56a61e8cd9c b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161519 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 dc04d25e2f3f7e26f7f97b860992076b5f04afdb b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161520 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0f418a207696b37f05d38f978c8873ee0a4f9815 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161523 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 9fd7e88c23f6fb056d25fbc3f8e2e7c1a53859d1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6e71c36557ed41017e634ae392fa80f03ced7fa1 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161526 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161527 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 87a80dc4f2f5e51894db143685a5e39c8ce6f651 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161529 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161532 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1b507e55f8199eaad99744613823f6929e4d57c6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161536 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 dc04d25e2f3f7e26f7f97b860992076b5f04afdb b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161537 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161538 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 dc04d25e2f3f7e26f7f97b860992076b5f04afdb b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161514 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 5b90b8abb4049e2d98040f548ad23b6ab22d5d19 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0cef06d18762374c94eb4d511717a4735d668a24 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee 972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
 161539 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 8a40754bca14df63c6d2ffe473b68a270dc50679 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161541 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161544 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1b507e55f8199eaad99744613823f6929e4d57c6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161546 pass c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
 161547 fail c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1b507e55f8199eaad99744613823f6929e4d57c6 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
Searching for interesting versions
 Result found: flight 160125 (pass), for basis pass
 Result found: flight 161388 (fail), for basis failure (at ancestor ~100)
 Repro found: flight 161507 (pass), for basis pass
 Repro found: flight 161514 (fail), for basis failure
 0 revisions at c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 eb07bfb09ef5483ad58ed0eba713f32fb0c909f9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 4083904bc9fe5da580f7ca397b1e828fbc322732 b0d61ecef66eb05bd7a4eb7ada88ec5dab06dfee dae3c3e8b257cd27d6b35a467a34bf79a6650340
No revisions left to test, checking graph state.
 Result found: flight 161519 (pass), for last pass
 Result found: flight 161526 (fail), for first failure
 Repro found: flight 161536 (pass), for last pass
 Repro found: flight 161537 (fail), for first failure
 Repro found: flight 161538 (pass), for last pass
 Repro found: flight 161539 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  8a40754bca14df63c6d2ffe473b68a270dc50679
  Bug not present: dc04d25e2f3f7e26f7f97b860992076b5f04afdb
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161539/


  (Revision log too long, omitted.)

 Result found: flight 161529 (pass), for last pass
 Result found: flight 161532 (fail), for first failure
 Repro found: flight 161541 (pass), for last pass
 Repro found: flight 161544 (fail), for first failure
 Repro found: flight 161546 (pass), for last pass
 Repro found: flight 161547 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu git://git.qemu.org/qemu.git
  Bug introduced:  1b507e55f8199eaad99744613823f6929e4d57c6
  Bug not present: 4083904bc9fe5da580f7ca397b1e828fbc322732
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/161547/


  commit 1b507e55f8199eaad99744613823f6929e4d57c6
  Merge: 4083904bc9 8d17adf34f
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   Thu Mar 18 19:00:49 2021 +0000
  
      Merge remote-tracking branch 'remotes/berrange-gitlab/tags/dep-many-pull-request' into staging
      
      Remove many old deprecated features
      
      The following features have been deprecated for well over the 2
      release cycle we promise
      
        ``-drive file=json:{...{'driver':'file'}}`` (since 3.0)
        ``-vnc acl`` (since 4.0.0)
        ``-mon ...,control=readline,pretty=on|off`` (since 4.1)
        ``migrate_set_downtime`` and ``migrate_set_speed`` (since 2.8.0)
        ``query-named-block-nodes`` result ``encryption_key_missing`` (since 2.10.0)
        ``query-block`` result ``inserted.encryption_key_missing`` (since 2.10.0)
        ``migrate-set-cache-size`` and ``query-migrate-cache-size`` (since 2.11.0)
        ``query-named-block-nodes`` and ``query-block`` result dirty-bitmaps[i].status (since 4.0)
        ``query-cpus`` (since 2.12.0)
        ``query-cpus-fast`` ``arch`` output member (since 3.0.0)
        ``query-events`` (since 4.0)
        chardev client socket with ``wait`` option (since 4.0)
        ``acl_show``, ``acl_reset``, ``acl_policy``, ``acl_add``, ``acl_remove`` (since 4.0.0)
        ``ide-drive`` (since 4.2)
        ``scsi-disk`` (since 4.2)
      
      # gpg: Signature made Thu 18 Mar 2021 09:23:39 GMT
      # gpg:                using RSA key DAF3A6FDB26B62912D0E8E3FBE86EBB415104FDF
      # gpg: Good signature from "Daniel P. Berrange <dan@berrange.com>" [full]
      # gpg:                 aka "Daniel P. Berrange <berrange@redhat.com>" [full]
      # Primary key fingerprint: DAF3 A6FD B26B 6291 2D0E  8E3F BE86 EBB4 1510 4FDF
      
      * remotes/berrange-gitlab/tags/dep-many-pull-request:
        block: remove support for using "file" driver with block/char devices
        block: remove 'dirty-bitmaps' field from 'BlockInfo' struct
        block: remove dirty bitmaps 'status' field
        block: remove 'encryption_key_missing' flag from QAPI
        hw/scsi: remove 'scsi-disk' device
        hw/ide: remove 'ide-drive' device
        chardev: reject use of 'wait' flag for socket client chardevs
        machine: remove 'arch' field from 'query-cpus-fast' QMP command
        machine: remove 'query-cpus' QMP command
        migrate: remove QMP/HMP commands for speed, downtime and cache size
        monitor: remove 'query-events' QMP command
        monitor: raise error when 'pretty' option is used with HMP
        ui, monitor: remove deprecated VNC ACL option and HMP commands
      
      Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
  
  commit 8d17adf34f501ded65a106572740760f0a75577c
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 11:16:32 2021 +0000
  
      block: remove support for using "file" driver with block/char devices
      
      The 'host_device' and 'host_cdrom' drivers must be used instead.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit e67d8e2928200e24ecb47c7be3ea8270077f2996
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 19:22:36 2021 +0000
  
      block: remove 'dirty-bitmaps' field from 'BlockInfo' struct
      
      The same data is available in the 'BlockDeviceInfo' struct.
      
      Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 81cbfd5088690c53541ffd0d74851c8ab055a829
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 19:19:54 2021 +0000
  
      block: remove dirty bitmaps 'status' field
      
      The same information is available via the 'recording' and 'busy' fields.
      
      Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit ad1324e044240ae9fcf67e4c215481b7a35591b9
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 18:53:17 2021 +0000
  
      block: remove 'encryption_key_missing' flag from QAPI
      
      This has been hardcoded to "false" since 2.10.0, since secrets required
      to unlock block devices are now always provided up front instead of using
      interactive prompts.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 879be3af49132d232602e0ca783ec9b4112530fa
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:40:56 2021 +0000
  
      hw/scsi: remove 'scsi-disk' device
      
      The 'scsi-hd' and 'scsi-cd' devices provide suitable alternatives.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit b50101833987b47e0740f1621de48637c468c3d1
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:40:56 2021 +0000
  
      hw/ide: remove 'ide-drive' device
      
      The 'ide-hd' and 'ide-cd' devices provide suitable alternatives.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 24e13a4dc1eb1630eceffc7ab334145d902e763d
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:47:17 2021 +0000
  
      chardev: reject use of 'wait' flag for socket client chardevs
      
      This only makes sense conceptually when used with listener chardevs.
      
      Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 445a5b4087567bf4d4ce76d394adf78d9d5c88a5
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:29:31 2021 +0000
  
      machine: remove 'arch' field from 'query-cpus-fast' QMP command
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 8af54b9172ff3b9bbdbb3191ed84994d275a0d81
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 12:54:55 2021 +0000
  
      machine: remove 'query-cpus' QMP command
      
      The newer 'query-cpus-fast' command avoids side effects on the guest
      execution. Note that some of the field names are different in the
      'query-cpus-fast' command.
      
      Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Tested-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit cbde7be900d2a2279cbc4becb91d1ddd6a014def
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 18:40:12 2021 +0000
  
      migrate: remove QMP/HMP commands for speed, downtime and cache size
      
      The generic 'migrate_set_parameters' command handle all types of param.
      
      Only the QMP commands were documented in the deprecations page, but the
      rationale for deprecating applies equally to HMP, and the replacements
      exist. Furthermore the HMP commands are just shims to the QMP commands,
      so removing the latter breaks the former unless they get re-implemented.
      
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 8becb36063fb14df1e3ae4916215667e2cb65fa2
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Mon Feb 22 13:35:15 2021 +0000
  
      monitor: remove 'query-events' QMP command
      
      The code comment suggests removing QAPIEvent_(str|lookup) symbols too,
      however, these are both auto-generated as standard for any enum in
      QAPI. As such it they'll exist whether we use them or not.
      
      Reviewed-by: Eric Blake <eblake@redhat.com>
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 283d845c9164f57f5dba020a4783bb290493802f
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 17:56:13 2021 +0000
  
      monitor: raise error when 'pretty' option is used with HMP
      
      This is only semantically useful for QMP.
      
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  
  commit 5994dcb8d8525ac044a31913c6bceeee788ec700
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 17:47:31 2021 +0000
  
      ui, monitor: remove deprecated VNC ACL option and HMP commands
      
      The VNC ACL concept has been replaced by the pluggable "authz" framework
      which does not use monitor commands.
      
      Reviewed-by: Thomas Huth <thuth@redhat.com>
      Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.887009 to fit
pnmtopng: 211 colors found
Revision graph left in /home/logs/results/bisect/qemu-mainline/test-amd64-i386-xl-qemuu-win7-amd64.guest-saverestore.{dot,ps,png,html,svg}.
----------------------------------------
161547: tolerable ALL FAIL

flight 161547 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/161547/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail baseline untested


jobs:
 test-amd64-i386-xl-qemuu-win7-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 Fri Apr 30 09:27:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 09:27:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120424.227728 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcPQq-0006z7-Js; Fri, 30 Apr 2021 09:27:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120424.227728; Fri, 30 Apr 2021 09:27:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcPQq-0006z0-Gv; Fri, 30 Apr 2021 09:27:32 +0000
Received: by outflank-mailman (input) for mailman id 120424;
 Fri, 30 Apr 2021 09:27:31 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcPQp-0006ys-1L
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 09:27:31 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7e9e7d1a-1f98-4a1c-bd8b-fdc83389265a;
 Fri, 30 Apr 2021 09:27: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: 7e9e7d1a-1f98-4a1c-bd8b-fdc83389265a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619774849;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Wd4oGLUCn58ujj+D6RpzwvNyloUoBpzwsL1wmk/htKI=;
  b=Gjfr8CuSeC8Uk99ii1CQNXW7L59ObWn5DYKJophw4phAIjPuEYTRjjs0
   gKLGVq4le6QXgVolPRQBnPHSLoNlKsx5NRTcJt593GkjjzbgDg+kuTGqt
   DOkY4cysfM+1tqNjTLqQCH5ZW05W5vsdZ0z7aq+uneeCba/NF4UMCfecG
   w=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: /6ZctzDox71SBbbhFS1pEGVmQPsLfJrE5QBTgNQyWIyQAxmn036mJxrjrpUwjuFFhsIs/hYLKo
 CqwgQrrOG29KWuyDgB62qNQ8y6rTE2TKqcc8dsPmJvx4+NI8JAZBu4GJJ8GLM3AMlaZMmH1tP9
 FkqkEayMvP68lQEtE8kdBLk+008fiWt4cA2bLcc/zztkudKZVFSqrD5wcDaTKXvMeUpS5WR5KI
 mBo1LiN0L7yZbSDY+T/JBwSBfJXBF+FpF5vJ+29t+U1sBH/sRypX+ZLWkJ1CJ0C+Lk25vFb1c5
 MIk=
X-SBRS: 5.1
X-MesageID: 44299964
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:wDq7l6BGaLKLwMblHegetMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPvfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VLdMgXE3Kpm2a
 9kGpITNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0McShBQchbnmFEIyycFVB7QxQDKJoiDZ
 yH5tdGoT3IQwVrUu2QAH4ZU+/f4+DRnJX9bhIcQzIh4g+CjTSngYSKbySw9BEYTj9J3PMe4X
 HI+jaJnJmLntOa7lvn12HV54lLg9eJ8Lp+LeGFl8R9EESIti+Gf4JkMofy2AwdgObq01oylc
 mJnhFIBbUN11r0XkWY5STgwBPh1jFG0Q6Q9Xa9jWH4qcL0ABIWYvAx/b5xSRfS50o+sNwU6s
 sitAj1xvknb2K0oA3H69fFTB1snEavyEBS6tI7tHBDTZAYLIZYsI13xjIkLL47ACn45Io7ed
 Medf302fA+SyL8U1np+kNrwNCqQ00pGAaHTkUoqqWuoklrtUE84E0CyMMFmHAcsLo7Vplf/u
 zBdp9ljbdUU6YtHO1ALdZEZfHyJn3GQBrKPm7XCVP7FJsfM3aIj5Ls+r066MyjZZRg9up9pL
 3xFHdj8UIicUPnDsODmLdR9ArWfWm7VTPxjulD+plQoNTHNfnWGBzGbGprv9qrov0ZDMGece
 20IohqD/jqKnarMZpV3jf5R4JZJRAlIY0ok+d+f2jLjtPAK4XsuOCeWu3UPqDRHTEtXX66LW
 AEWBT1OcVc/mGmUnL1m3HqKjbQU3262ag1PLnR/uAVxoRIHJZLqBIphVOw4dzOCTAqiN1zQG
 JOZJfc1o+rr2i/+mjFq09zPABGM0pT6LL8F1dDpQoANVLIYa8O0u/vPlx67T+iHFtSXsnWGA
 lQqxBc4qSsNaGdwigkFpaBPn+FiWAQ4FaHVY0VlKHGxcqNQOJ4Mr8WHIhKUSnbHR18nghn7E
 1ZbhUfe0PZHjTyzYO/jJIVA+nbX8JmgBiiJPNVrX63jzTfmegfAl8gGxK+W8+ehggjAxBOgE
 dqzqMZiL2c3Qq0JXAHm+Q+Ol1UYGGxCLZLZT71Irl8q/TOQkVdXG2KjTuVh1UWdnDx/0sfvG
 DnMBaZYOrGGFZbp3Be3Jv76V8cTBTuQ2tALlRB9aFtH2XPvXh+ldWGYae+yEO9QFoPyON1Ck
 COXRIiZidVg/yn3h+cnziPUUg8zpI1J+rHEfAIaLfIwE6gL4WOiIALF/JZ54xeKdjrq+MHON
 jvIjO9HXfdMacEygaVrnEqNG1Is3Eii+rvwwCgw26i3nIzaMCiaWhOdvU+GZW74GflTfrTj8
 k8otIxoOeqMmL+LvSB0rraajZfKhXV5U66JttY3qx8jOYXjv9UGZKebB7jkFdg9z86JN3vlE
 wfTL9giYqxcbNHTog3QWZh4lEtlN6zN0MlvQz9P/8mcTgW/gvmFuLMx4CNlKEmDUKArjbhIF
 Wz8yVS+PHeQiuIvIRqfZ4YECBzaEIm7m5l8/7HX4rMCB+yf+Urxiv2DlaNNJtcQrOCA7Mes1
 JT5MyJhfaec27d1BrLtTV2ZoJI/GDPe7L/PCu8XcpJ+ce9I1KCn++D59Oyli7+TX+DUHsj7L
 c1PXA4X4BkkTktjIo+zyi0ROjWmyse4iVjyAAisEXs1Iig6HrcBmdcP2Ti881rYQU=
X-IronPort-AV: E=Sophos;i="5.82,262,1613451600"; 
   d="scan'208";a="44299964"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Xor/Mk48uwBnpZk7/o0FcoNX2SrQVYtr78Im0Kgrnsk2hAyK38A1pyX2A1xkfXbuJLKCrSwNQT1oHZJPqHA5PxREYgZCGBO+ma5bFlXjw4BeetKc5mGcVTzjU1DwU4KjeuJ+R0WKLbloqM9cYUy4yw0XEjPJbSA584U+7nRobQz2/fqFFRROBT2D33g/sjEXAyU1t3kCobMbzRWIMjOXisLRLYGvZQORtd1BbqkuUi2T1pOwfjoM7to0CHpjq08GIz/dvXB4+fayNLSFrszLp4oiRRvO3I/o+TbevDbif9VIpTa/8cY69q3Q24tj03k56iSSkT+Rr1WpS1xlcIODww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2hGM3BEftBMwCwPrYwEQRChJCVSj8+w/8zrmQPt3DTY=;
 b=SpsRa5VENAw0KncG2I3/9umxTFwGO6Qm3HO7MNFYYx6NG7aaOMQdmZVYsZLzm2gwqNANeLWgimjtwCsjxgkvZfl6EXzW4Avx4AX5O5sYIA+32K82qfnkCSImX6KRPQHEXaUcZ60n5cuG0h82du4v2lmOo81kodI/3z+aMBShCE2SHY8J8rQ29P1bJY3zv7B24gSrur+SHNUHn1z+BcbBmYGJjnZiX7wKjWlRd7hAWdqUq7C/hoSsUF9I1LohWyJds8P2DGPUoWbRrL95fCj33KwdyLWKOLTpqOn6HvhA6wm/DCBzQxF6ESQe5rbgLP5jAxlYmfY6K6u674oE+cf/3Q==
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=2hGM3BEftBMwCwPrYwEQRChJCVSj8+w/8zrmQPt3DTY=;
 b=ksJj8+hcuL47ppCsnuBKojm0iZxSYsBIedLCrgfUGP+mVKocPUZyGiKAQ0R8lelvLlxVEKz8oct5NidhQ0/o1/rJZUV2XU6uzFPfTyKPM3PGhy+hMQLx57o1SSEH7LttIfTHgvQ45YtkoeVDF6y6rlnkip6E/gkXijckm6sWylo=
Date: Fri, 30 Apr 2021 11:27:18 +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>, George Dunlap
	<george.dunlap@citrix.com>
Subject: Re: [PATCH v2 07/12] x86/p2m: the recalc hook is HVM-only
Message-ID: <YIvNdhW+8QOP18aP@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <b99313df-f466-cf95-d772-c3153745c56b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment
Content-Transfer-Encoding: 8bit
In-Reply-To: <b99313df-f466-cf95-d772-c3153745c56b@suse.com>
X-ClientProxiedBy: MRXP264CA0025.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::13) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 49f8928e-b784-4402-a87f-08d90bba2a48
X-MS-TrafficTypeDiagnostic: DM6PR03MB4843:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4843A40115A55AB4BAD66F958F5E9@DM6PR03MB4843.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6790;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 9Rj/bg7fz6gVPuAeQiEm9l4S3y9eUx4GUR53dnLwzzLhW7/Wn4VoRhbFTMAfbbBUoGxKvypzim88VSVU8rFw2bI4/pcEUdWFc9QmHwyxFMHqe0avKg+TdeWQ5g/+ITp+iPZ/DkOh4rW3qvKCnfO+FGTxrMgIzP1ImST/lUVQOpfV6J2v+7wTQ7bJJx8mUbTyyJYzsTWFbacp47suYjflEtgEbqrdgdSUahSdZoVrfQi9wKTe6dHS1jEsrfqoi5YGPxVuqTmu7SedHc0Cd4FbW3VbphhzrKsysuIBHCY+02ni4PeEYjfgl1kOVJEYVCYEVMuJHfl1fQ0Z1Tp6YGmI+tpmM/Y6GCG7vLPdl7j6pOQwW19VoeXLLqgRSjB6pjS7so2b7ajIeoO+e3/RwPkrNQ==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(136003)(376002)(39860400002)(346002)(366004)(396003)(66616009)(2906002)(621065003)(956004)(8676002)(107886003)(316002)(6916009)(9686003)(33716001)(54906003)(4326008)(186003)(26005)(6496006)(86362001)(6486002)(38100700002)(4270600006)(16526019)(66946007)(478600001)(73894004)(6666004)(66556008)(8936002)(85182001)(66476007)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 49f8928e-b784-4402-a87f-08d90bba2a48
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 09:27:25.2227
 (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: dF2du3pnBQqtZoizTRzIwGP4r6cgnsXs+P6fcVc8IW3bCqHqW9LiOL50BceYuL/pSP2aeiPA/YzELgtRuocvlQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4843
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:09:18PM +0200, Jan Beulich wrote:
> Exclude functions involved in its use from !HVM builds, thus making it
> possible to exclude the hook as well.
> 
> 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 Fri Apr 30 09:34:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 09:34:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120429.227741 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcPXM-0007st-D9; Fri, 30 Apr 2021 09:34:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120429.227741; Fri, 30 Apr 2021 09:34: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 1lcPXM-0007sm-9G; Fri, 30 Apr 2021 09:34:16 +0000
Received: by outflank-mailman (input) for mailman id 120429;
 Fri, 30 Apr 2021 09:34: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 1lcPXK-0007se-PK; Fri, 30 Apr 2021 09:34: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 1lcPXK-0007UB-EK; Fri, 30 Apr 2021 09:34: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 1lcPXK-0001dt-4I; Fri, 30 Apr 2021 09:34:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcPXK-0003qM-3p; Fri, 30 Apr 2021 09: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=i/8Oev57Qwcvm86HqdvFx30C2ycVhdpHxBfDmWg2ujo=; b=cx3Bc57EVU1H8w/Z/ZB8NqGiwn
	IK3SB+I07kV0il6deccc2YCCyU7ruImQReAFMHi9HRaPJttiZHc+5Y/K1b/GHiOW3kLBLiE5nvvFv
	9r/lo/6nUG06Lju+wFzt1u7C6W+k4lGZKEJ8qtnwAXHZ3BAf4P/GDgPNf9tqa3dQVWhQ=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161524-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161524: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore.2:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qcow2:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-vhd:guest-start:fail:regression
    linux-linus:test-armhf-armhf-xl-vhd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:guest-start/debian.repeat:fail:allowable
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=d72cd4ad4174cfd2257c426ad51e4f53bcfde9c9
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 09:34:14 +0000

flight 161524 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161524/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-amd64-qemuu-freebsd11-amd64 18 guest-saverestore.2 fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 20 guest-stop               fail REGR. vs. 152332
 test-amd64-amd64-xl-qcow2    13 guest-start              fail REGR. vs. 152332
 test-amd64-amd64-libvirt-vhd 13 guest-start              fail REGR. vs. 152332
 test-armhf-armhf-xl-vhd      13 guest-start              fail REGR. vs. 152332

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds    22 guest-start/debian.repeat fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  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-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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

version targeted for testing:
 linux                d72cd4ad4174cfd2257c426ad51e4f53bcfde9c9
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  272 days
Failing since        152366  2020-08-01 20:49:34 Z  271 days  454 attempts
Testing same since   161524  2021-04-29 14:25:38 Z    0 days    1 attempts

------------------------------------------------------------
5742 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 fail    
 test-armhf-armhf-xl-vhd                                      fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 1489761 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 09:56:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 09:56:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120439.227760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcPsQ-0001IV-FW; Fri, 30 Apr 2021 09:56:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120439.227760; Fri, 30 Apr 2021 09: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 1lcPsQ-0001IO-CV; Fri, 30 Apr 2021 09:56:02 +0000
Received: by outflank-mailman (input) for mailman id 120439;
 Fri, 30 Apr 2021 09:56:01 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcPsP-0001IJ-R8
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 09:56:01 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 043ad108-a3f2-4afe-86f0-0426a93b6643;
 Fri, 30 Apr 2021 09:55: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: 043ad108-a3f2-4afe-86f0-0426a93b6643
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619776559;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=kuOf9la/IxfIMrrBEUp69vNwMJLJDXBi6L1PeCOtS5I=;
  b=W15xx05ATB4Pvo/MUDWY9sCzg7QMlC1koMS8ojQMi9BxLx/ONGABrLhR
   1DWqYrBcVxGHIVe3m9bWso2t647YUjkwHpx9dSwYck+KipsFyhjvOVSaW
   cs6YlVFHorkEHT7u96efPPWypQWcKgCjitRcfFTabNMxy75O2VawRGwBp
   o=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: tPyNNSaIr4QEGJ0pMs2X7zbCyT6AiRqS/Vm1amKplXTT6alQk5dKv14K3YIHEV/BwggRFbCAcH
 e7/Cp6dAjp4QMF4MDXMHjnA2rWfRWXKnLirPP118Qy3s7gEFzljiw9HtlV16I4dAUR7ylP3p2Z
 TljYzvE/ocfNaghlcn+/670Zhqyx2QFfcRSeiGrAIhFCv9Hqv/vFaTyRN7YBBXKW0drRORfg1m
 dnB6SC+t7+ycWkrgH9RoVyniS24F+WYofpwceTVL7mQJn/iI/8tPF2B1234JWKwRCOHqcMGTDD
 lkg=
X-SBRS: 5.1
X-MesageID: 44301502
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:JOiXxarfMs/ewVfvflXw4GQaV5u6KtV00zAX/kB9WHVpW+SivY
 SHgOkb2RjoiDwYRXEnnpS6NLOdRG7HnKQb3aA4Bp3neAX9omOnIMVZ7YXkyyD9ACGWzIJg/I
 9aWexFBNX0ZGIWse/T/BS4H9E8wNOO7aCvgqPkw21wSBxxApsA0y5SIG+gYypLbSNBAoc0E4
 fZy8pcvjy7eWkWaMPTPAh+Y8HoodrXmJX6JSMXHhJP0nj0sRqEyp7fVyKZ0BAXTi9Vzd4Zn1
 TtvgTl6syYwpOG4zDG0Wu71eUypPLAzZ95CNWImowpLFzX+3uVTaBAf5HHgzwvuuGo7z8R4a
 jxijMtJd565X+UXkzdm2qV5yDa3Dwj62DvxDaj6BOJy6yJJ0NIN+N7iY1UaRff4UY71esMqJ
 5j5G6Fq4FRSSrJgSWV3am3azhRikG2rXA++NRj6UB3bI12Us40kaUvuGlREJsGARvg7pEmHO
 REHKjnlYlrWGLfQHbDsmZ1xtuwGlw1AxedW0AH/veYyj5MgRlCvgYl7f1auk1F2IM2SpFC6e
 iBGqN0lItWRstTSa5mHu8OTea+F2Sle2OBDEuiZXDcUI0XMXPErJD6pJ8v4vuxRZAOxJwu3L
 zcTVJxrwcJCgPTIPzL+KcO3gHGQW27Uzio4NpZ/YJFtrr1Q6euGTGfSWopj9Crr5wkc4Pmcs
 f2HKgTL+7oLGPoF4oM9Rb5QYNuJX4XV9BQlc08X36Iv8LXOqznvuHWa5/oVfnQOAdhflm6Lm
 oIXTD1KskFxFusQGXEjB/YXG6oWkGXx+MzLIHqu8wojKQdPIxFtQYYzX6j4NuQFDFEuqsqOG
 93ILbtlLKHtXC7lFy4qllBC154NAJ48b/gW3RFqUshKEXva4sOvN2ZZCR00GaYIAR8C+fbCh
 RWqVgy2a/fFe3e+QkST/acdk6KhXoao3yHC70GnLeY2MvjcpQkSrA8WKJwEg3PPwdvmRljrV
 pCbANsfD6eKhrezYGeyLAEDuDWcNdxxC2xJ9RPlH7ZvUKA4f00SmAjRD6oW86PiQMITz5Z72
 cBt5M3sf6lo3KCOGE/iOM3PBlpZH6MCLxLNgiDeb5Zg6vmYg12UGeMiwGLkh1bQBuby2wiwk
 jaaQGEc/DCBVRQ/kpV1avn63tYXGSQdUAYUAEzjaRNUUD9/lpj2+6CYaS+l1aLYlwZ2+cHLX
 Xuej0JOD5jwNixyT+YkDuPDm8d250rJ+DRZY5TNI376zeIEsmlhKsGF/hb8NJZL9joqPYMSv
 /aVAmPLj/0YtlZrDC9lzIAAm1Tp3Ylm/+zh0Ggw2i8wXIlAf3dZH5hXKoWJtmA727iA9aEua
 8J+O4djK+VCCHWbNXD9IT8KxhkATnXqXStT+4ppYtP1JhC/YdbLt3+a3/wyHpD3B8CN8/6m0
 MVfbRj7Nn6S/1SVv1XXxgcw0Egm9uOJnY6qwDaAucxelc2kn/QVun5l4bgmP4KAkebohH3Nk
 Ta2ypB/+3dVy/r789QN4sAZUBXYlM78nJs4aercJDREhyjc6Vm8EChOnGwNJ9bR67tI8Rbkj
 9Kp/WJlfSQbSz2xUT5uiZ6OLtH9yKfevyJaTj8b9JgwpidIlSDgqyj/c61gnPWcFKAGjglrL
 wAU1cRYMRFgiQll6st3EGJO+rKnn4=
X-IronPort-AV: E=Sophos;i="5.82,262,1613451600"; 
   d="scan'208";a="44301502"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dSp9XmlDhFAKfvg9qfcQeQ5XN/OGveX9IU22DhYYtB2rHB2vsjr22ue0viIeg0SSLq3OA5xnbj/JaPEwqTxlIHMoc1yWV+HCjwKXHE7BbE81HV5+31TEotHfvxZKUfADfThm6YLLfMNgrKZiR2T6u8jx36GSBD73eYVFh4JyByM+7qpNo/zeXLx03R1/JsJMNw5zV4ocQrXT2ce3fAbxJLYItIeGb1GIkoBH7NFeWJbaqg4v7djuRO2P4M5kfn2WYMhKQsA6AT+Cf2WcYFt0vtbXhnLRt8ABqaFqIb+3WD72LqrhGEcrIG1KjgytvfEKZTNd+nZbS7AV7XjAS3wESw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UhrOKO1pJ0GlrFmkPhTE+RRD16OA/UsRDTxlz5xPP1o=;
 b=RNdruhn5i+V0RV4A2z1RaQg2LYkfUqae1y3ZTQ/XEv5DQ2QGD6+vKmjYMXcbdJVTh0QWM6fGRT/UU+rhs1DWrU/4uZdUarpIz+htO4Rb4A1/YvKz0W9xjkexUaJEDo0a/IfWpzX1GkHveSBj+/2CbKSQ4WHY1d6k5Js07wG8VZbVsWws9t2idkELdOp2EmwlHh4hXYbuJH7aW0x7Qj1ObNO5JmIz8Ff/KAw5USp66PyCylWtmMwSC6+uiYMQbNLdntoUjcmarHSbDMX8SiKqK0X9xUA50pMHaW3331W9ZOgZbvIA+TsZ7wxb0QLvvOo2VFmaUwl3/3mmP3IyD06kNw==
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=UhrOKO1pJ0GlrFmkPhTE+RRD16OA/UsRDTxlz5xPP1o=;
 b=qazRxvihrxLDggRv0WxX/CpyZRN2t6755NNG/BHSm3gZdy2H6z5P9Ay1eikQGyDBRyd3UE26fD1K5RNYTdBrZ/fjYhPFw/0JDqFeOMqAzzRpn14oXJDdfgP7CnNax5cn8eC+Z0R+Vu78uMr1gzVXdz6s29iMoX4vJugquGIIkcA=
Date: Fri, 30 Apr 2021 11:55:50 +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>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Daniel de Graaf
	<dgdegra@tycho.nsa.gov>, Paul Durrant <paul@xen.org>, Tamas K Lengyel
	<tamas@tklengyel.com>, Petre Pircalabu <ppircalabu@bitdefender.com>,
	Alexandru Isaila <aisaila@bitdefender.com>
Subject: Re: [PATCH v2 09/12] x86: make mem-paging configuarable and default
 it to off for being unsupported
Message-ID: <YIvUJqtdsOLia8nc@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
X-ClientProxiedBy: MR2P264CA0161.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::24) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 17c5aeb4-ac50-4af2-e1de-08d90bbe25b2
X-MS-TrafficTypeDiagnostic: DM6PR03MB4762:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB47629C43DB7664D85168432D8F5E9@DM6PR03MB4762.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: HdB9smfNXhQEtnJ9miHHxFWjqFZjPhoxRhJvXbokj49wJhtuK9CRQ9ZlTMH/aMOkNQoU4iHYA1HHakQSrJwJwvcg5bz5Q/9C4rj9lZEmDRE/ArDLtra3tI2EeFP3yX9wrqePNUB4Ml5jJnUvLB60MMZNIeJVU/sCYyjcm+bZTfYCz4U1xTH44FDv3x1CIuhWbSSxNBKM6NRm8ZgjcnovSdq45k7dzFh9blfxiCOwDiW3kKiBVPiDfubWgUxXlXi+UG8Isc4CWdpysieN8vqUSae9K+HEjJQtNFDja1XxzC7+yhXWWX8M6WAZ9HD9OBP182RGRat1aSkZgTxxs0N4M4RIa4CWkGDtldz63eKLErBMMz6/adtq4QR+PZ+jqSM0VrRjy2wD3258KKC5SYfFIx0WtyBiVezh3zST7wR+vyeCn6gDYUvgqaWrk7w189q/ZBp0GyA9voOB02tX2OYGOUco/bH+6q1wAQw5mTAVG34WIVDRBZhoNKPEYztTawTSQJW/LTyzEODyzjikKVuzoUTOodbNSavZ/U6vAjzPt0nq19pdytn3EbTIqKUA0frfyDnDD4dSk70wyRtBykbOI1if+Tfbr2YI5K+6fhSZxAw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(376002)(366004)(136003)(39860400002)(346002)(396003)(8936002)(8676002)(7416002)(54906003)(4326008)(2906002)(956004)(6916009)(6496006)(26005)(38100700002)(86362001)(66946007)(316002)(186003)(16526019)(66556008)(478600001)(33716001)(83380400001)(66476007)(6666004)(5660300002)(9686003)(6486002)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?zKTQ6tdUtmwPL/Jp0ZVG9pt/dftIJ9bQuKelKTq?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 17c5aeb4-ac50-4af2-e1de-08d90bbe25b2
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 09:55:55.8367
 (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: 97YzYMmb2EinZvxblVBieDtbxn9oKhA7LSSUE2Zdw+VUzrFIadao+Z8Od/Fg8FnS4qa29dLrgoqvFq/pMLeiQA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4762
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:12:41PM +0200, Jan Beulich wrote:
> While doing so, make the option dependent upon HVM, which really is the
> main purpose of the change.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v2: New.
> 
> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -15,7 +15,6 @@ config X86
>  	select HAS_FAST_MULTIPLY
>  	select HAS_IOPORTS
>  	select HAS_KEXEC
> -	select HAS_MEM_PAGING
>  	select HAS_NS16550
>  	select HAS_PASSTHROUGH
>  	select HAS_PCI
> @@ -251,6 +250,10 @@ config HYPERV_GUEST
>  
>  endif
>  
> +config MEM_PAGING
> +	bool "Xen memory paging support (UNSUPPORTED)" if UNSUPPORTED
> +	depends on HVM
> +
>  config MEM_SHARING
>  	bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED
>  	depends on HVM
> --- a/xen/arch/x86/hvm/hvm.c
> +++ b/xen/arch/x86/hvm/hvm.c
> @@ -1932,9 +1932,11 @@ int hvm_hap_nested_page_fault(paddr_t gp
>          goto out_put_gfn;
>      }
>  
> +#ifdef CONFIG_MEM_PAGING
>      /* Check if the page has been paged out */
>      if ( p2m_is_paged(p2mt) || (p2mt == p2m_ram_paging_out) )
>          paged = 1;
> +#endif
>  
>  #ifdef CONFIG_MEM_SHARING
>      /* Mem sharing: if still shared on write access then its enomem */
> --- a/xen/arch/x86/mm/Makefile
> +++ b/xen/arch/x86/mm/Makefile
> @@ -5,7 +5,7 @@ obj-$(CONFIG_HVM) += altp2m.o
>  obj-$(CONFIG_HVM) += guest_walk_2.o guest_walk_3.o guest_walk_4.o
>  obj-$(CONFIG_SHADOW_PAGING) += guest_walk_4.o
>  obj-$(CONFIG_MEM_ACCESS) += mem_access.o
> -obj-y += mem_paging.o
> +obj-$(CONFIG_MEM_PAGING) += mem_paging.o
>  obj-$(CONFIG_MEM_SHARING) += mem_sharing.o
>  obj-y += p2m.o p2m-pt.o
>  obj-$(CONFIG_HVM) += p2m-ept.o p2m-pod.o
> --- a/xen/arch/x86/x86_64/compat/mm.c
> +++ b/xen/arch/x86/x86_64/compat/mm.c
> @@ -155,8 +155,10 @@ int compat_arch_memory_op(unsigned long
>      case XENMEM_get_sharing_shared_pages:
>          return mem_sharing_get_nr_shared_mfns();
>  
> +#ifdef CONFIG_MEM_PAGING
>      case XENMEM_paging_op:
>          return mem_paging_memop(guest_handle_cast(arg, xen_mem_paging_op_t));
> +#endif
>  
>  #ifdef CONFIG_MEM_SHARING
>      case XENMEM_sharing_op:
> --- a/xen/arch/x86/x86_64/mm.c
> +++ b/xen/arch/x86/x86_64/mm.c
> @@ -994,8 +994,10 @@ long subarch_memory_op(unsigned long cmd
>      case XENMEM_get_sharing_shared_pages:
>          return mem_sharing_get_nr_shared_mfns();
>  
> +#ifdef CONFIG_MEM_PAGING
>      case XENMEM_paging_op:
>          return mem_paging_memop(guest_handle_cast(arg, xen_mem_paging_op_t));
> +#endif

I would create a dummy handler when !CONFIG_MEM_PAGING in
asm-x86/mem_paging.h.

> --- a/xen/include/asm-x86/mem_paging.h
> +++ b/xen/include/asm-x86/mem_paging.h
> @@ -24,6 +24,12 @@
>  
>  int mem_paging_memop(XEN_GUEST_HANDLE_PARAM(xen_mem_paging_op_t) arg);
>  
> +#ifdef CONFIG_MEM_PAGING
> +# define mem_paging_enabled(d) vm_event_check_ring((d)->vm_event_paging)
> +#else
> +# define mem_paging_enabled(d) false
> +#endif
> +
>  #endif /*__ASM_X86_MEM_PAGING_H__ */
>  
>  /*
> --- a/xen/include/asm-x86/p2m.h
> +++ b/xen/include/asm-x86/p2m.h
> @@ -136,11 +136,16 @@ typedef unsigned int p2m_query_t;
>  #define P2M_PAGEABLE_TYPES (p2m_to_mask(p2m_ram_rw) \
>                              | p2m_to_mask(p2m_ram_logdirty) )
>  
> +#ifdef CONFIG_MEM_PAGING
>  #define P2M_PAGING_TYPES (p2m_to_mask(p2m_ram_paging_out)        \
>                            | p2m_to_mask(p2m_ram_paged)           \
>                            | p2m_to_mask(p2m_ram_paging_in))
>  
>  #define P2M_PAGED_TYPES (p2m_to_mask(p2m_ram_paged))
> +#else
> +#define P2M_PAGING_TYPES 0
> +#define P2M_PAGED_TYPES 0
> +#endif

Since you don't guard the p2m related paged types in p2m_type_t is it
worth having diverging P2M_{PAGING/PAGED}_TYPES?

I guess it might be required in order to force the compiler to DCE
without having to add yet more CONFIG_MEM_PAGING guards?

I don't really have a strong opinion on whether the code should be
removed, IMO it's best to start by making it off by default at build
time and remove it in a later release?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 10:21:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 10:21:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120445.227772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcQGq-0003uj-JW; Fri, 30 Apr 2021 10:21:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120445.227772; Fri, 30 Apr 2021 10: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 1lcQGq-0003uB-F9; Fri, 30 Apr 2021 10:21:16 +0000
Received: by outflank-mailman (input) for mailman id 120445;
 Fri, 30 Apr 2021 10:21:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=A3Ge=J3=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lcQGp-0003u6-SI
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 10:21:15 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9303086d-0983-453f-b684-787bdecbcaf6;
 Fri, 30 Apr 2021 10:21: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: 9303086d-0983-453f-b684-787bdecbcaf6
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619778074;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=3qG1r8IKNOHWEo2AUdz9t2JT3SVHVh7z/z7DVAUYODY=;
  b=P/JKCLZXt4J/FUkKJlBSZusGx+FdLXuuMzzGAehNbMpTDz4C16ScWgcA
   Oj20eavk58ceqI9RyBOLpQidYNm8mtvnCJlgyyrhXNI9rVArDzAe5f2+3
   Du+NdcI7Ag4RlSrotMii64usNNDClV/tX9kI6CL5iazSmPo8DdcEcviGp
   0=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: OAJuauWU7ilbsg2V85uK26ZONHtUW8gi5z7i+Zo4OeLNhfqofNffN1gOTdKaab5bUy7YTvXy/V
 rM1lhnE+KLQTGA2JBbdWixSmQ5kWbqHWL02JRgO7V/OU/HDb9/5A/ru6EbgDz4VMoLj5ODd/Uc
 iibLmLj5aiwMbMaf9ccMiXXn9t+PY43NLwGCYQLe4oQe+ODpnKI5YYDYQU8sJeFYYwBI9TAZXS
 ZQBCuct7A17FSxGhJLX/7fqdE3DO+MTwX8rSzF24uJZDqPPTNDhC2OQtPI9qpeQyc0cjLGTp43
 i/Y=
X-SBRS: 5.1
X-MesageID: 43171819
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:46mWsqpwup6/zDXE9C36FqIaV5szL9V00zAX/kB9WHVpW+SFis
 brpugR0R/olTodMUtQ4eyoEq+GXH/a6NpJ+oEXJ7ivR03Lv2GvIYFk4+LZslndMgf58fNQ0r
 olTrhmBLTLfD1HpOvZwC39PNYk3dWdmZrDuc7y7VdICTtrZaZp8htjBm+gf3FeaQFaCfMCeK
 a0ydFAo1ObFkg/SuSeKj07U/PYp9vN/aiWAyIuIxI88gGBgXeJxdfBcySw5wwTWT9DzbAp/Q
 H+4nXEz56uuf261RPQvlW7h/9rseDs095SQPGL4/J6FhzXlg2qaI59Mofy3wwdnefH0jcXue
 iJmRs6IMR451TWYCWarRzgwAH83DtG0Q6Y9XaoxUHuutP4Tj4cDdQEv4REaRHUgnBQ2+1U4e
 Zw03mHt5BaKhXf2B7s/fTNXxFu0nW5umAjl+l7tQ04bbcj
X-IronPort-AV: E=Sophos;i="5.82,262,1613451600"; 
   d="scan'208";a="43171819"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=krvqKJRvTnY5WOGPr5lMXkEVNhPanEdRgrUQdcv0qcHw5bI+aDRDvNWiwQN0BbHX7iU+OQdZ2wusDDti21Q1JUkGRSenerFBeC72Sa+3MoJi6Rug2fy3cgtP2Ivpt4DjXmX/jjIhRh+PZBh7ydUiAh5MB8B7WrxwqhyirObsKo+jmS5X3DsHGVRZA5OJnEBh/pX+XgDbx6abs4TW4UETSZRBKL6efD83jTDJ367GTdqgpO0i/QgugBnAgD7QVHC0LSe7py+AdkKwLKf12Pnvw1AAPtgQ0rb4zA2UnvZK34dW+NQ3rExS8iqDegSgSBiqqRcvGrHOuNyekGk9177Sdw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pJrh4Nr3g9Zk3M1SqFliLdzySo69DpNFN9meVThbPwI=;
 b=QstqMShRN/pIDYHIJiVI8NbpUYdf7YNsLyg6wtnbUksA7l0NiSIanS7994vYrdAkubqilgeNpEalSqebdB1+oqK5b/rG619x2DOJN9QPu1J9345yRKW9bWF/4CKeJ4agv2tw4uDW2U4PJ2pcjvM62sexo6gmK3W49jTXqOQ4bELix0niTpUBfXQwW4AranPtfpAgihH/ha0CoVntkA4Pn8Q4nWM3vB/WW9qycC3xY/zDVcRSaXdfm1qI4AdNsHXx+vBuuZY2vCX2EgvILtxyA1PtHhw+k5bZNxi9JPqGaBiTnLLDxtSDgSbPwpw4xvxnhmgzCADiZQwwA8JqmQ42vg==
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=pJrh4Nr3g9Zk3M1SqFliLdzySo69DpNFN9meVThbPwI=;
 b=S0aodjvvN6fW8KvMaiQPBq+t5msZO7GOKg0i+z90PhgGsochtbCcklOX1kTJVLTTfWN+zA97/lc6UyfwGRzJwCkVnBUzWH5q7DhS0ucucMB/wRFwF+yiRYGWWu3JA3iOB2WgvC3wdC304JLQ9m4MsGyPtoN/9gnSxAgF2yjFqmo=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210429221223.28348-1-andrew.cooper3@citrix.com>
 <4781e8f1-d70b-2736-364c-eeed61869031@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86: Always have CR4.PKE set in HVM context
Message-ID: <5b1938c7-408a-5912-7e66-b5e207e268bd@citrix.com>
Date: Fri, 30 Apr 2021 11:21:00 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <4781e8f1-d70b-2736-364c-eeed61869031@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO3P123CA0005.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:ba::10) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 52a5934d-cd77-406a-d08b-08d90bc1ab44
X-MS-TrafficTypeDiagnostic: BYAPR03MB4296:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4296955C2A4DED238C81DF80BA5E9@BYAPR03MB4296.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: gMIN+/6ysghYbS/Wll5Ei1EverAgYaJSCOAsxjsVn039nP1g+mhL6ojaaS5NMC2V68Dqa+rBDMLD11CkjpPTqCq0nWyXDm4Y7a1TxvmMK3Dr5lkMjyhSObfcgKeD0d7OGiTKaEvJffgzUpmaimAnNenDCPYDp1Mw6sAbnxP3NUjF0fK/EG0KGkr8A1ccmMJ/NM9uZ/HIdsLNa6h2U7dwul5pAhaViYRkW4xXlloSPhEumfXa+4Kpk2V00a+dUU14LZzA9gDeTi1U+GYKL4azwLf+EqgUw0A0nvm6jskYcblKo8u0jKEGOHuJcAieWpVEbHvL9SFSRbl0XpuSyaN7Q35C7nKsN8lzXi6Nmwo9yv5MaiW7injjhONfsNma0I953WwGh047hKwIcOvG2haqinjCuy52HD3AFjGneWH2+eKJGgOV+en9zreSbSq9C68sc3X9Y+HuVpzQKMuWVXXqH7gjH4cWwIlX/zlidESKrI/2ODKvy174eQaLXTAgjfjMuxqY0bFpFaXuB5+loQauJvutYgB7xrAnZMxpIR5db+ImsE8erdMj93+LrKnjZIagTALCcQEUUTvKtSezB7BbXOKPmZ1XnSmMS2QSuvovEoVhyrEA6w4049EoC82bzfEFrPM5kt87yFo5E1OotOxGt9Rvk+zAmpttXYdwHWG6r26SPScNttlD2L5o8ly098DL
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(376002)(346002)(136003)(39860400002)(31696002)(86362001)(66476007)(36756003)(6666004)(2906002)(53546011)(2616005)(66946007)(83380400001)(26005)(8936002)(6916009)(66556008)(31686004)(6486002)(5660300002)(186003)(8676002)(316002)(54906003)(16576012)(38100700002)(478600001)(4326008)(956004)(16526019)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 52a5934d-cd77-406a-d08b-08d90bc1ab44
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 10:21:08.2791
 (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: sj4uM521cKFQ/6PeHDHyKS3eOWgwic/I0sm8cXRJ6eee9joclqw4hdj3zv9BnJ56++fw6HrHB5DOj4UbkxYmMQAZ9ts/H6MHHWaeYGCIzs8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4296
X-OriginatorOrg: citrix.com

On 30/04/2021 10:08, Jan Beulich wrote:
> On 30.04.2021 00:12, Andrew Cooper wrote:
>> The sole user of read_pkru() is the emulated pagewalk, and guarded behin=
d
>> guest_pku_enabled() which restricts the path to HVM (hap, even) context =
only.
>>
>> The commentary in read_pkru() concerning _PAGE_GNTTAB overlapping with
>> _PAGE_PKEY_BITS is only applicable to PV guests.
>>
>> The context switch path, via write_ptbase() unconditionally writes CR4 o=
n any
>> context switch.
>>
>> Therefore, we can guarantee to separate CR4.PKE between PV and HVM conte=
xt at
>> no extra cost.  Set PKE in mmu_cr4_features on boot, so it becomes set i=
n HVM
>> context, and clear it in pv_make_cr4().
>>
>> Rename read_pkru() to rdpkru() now that it is a simple wrapper around th=
e
>> instruction.  This saves two CR4 writes on every pagewalk, which typical=
ly
>> occur more than one per emulation.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> The changes looks perfectly fine to me, but I still feel urged to make
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> conditional upon my "x86emul: support RDPKRU/WRPKRU" (submitted exactly
> half a year ago) going in first, unless there were to be review comments
> making extensive rework necessary. In the absence of such review
> feedback, I consider it pretty inappropriate for me to do rebasing work
> (no matter that this would be largely mechanical afaics) here for a
> patch which has been pending and effectively ignored for so long. (The
> main thing that immediately struck me as odd was "The sole user of
> read_pkru() is ...".)

So the observation about "sole user" occurred to me too, right after I
sent this.=C2=A0 Then I thought "surely Jan has spotted this and done a pat=
ch
for it".

Presumably you're talking about "x86emul: support RDPKRU/WRPKRU" from
Oct 30th ?=C2=A0 I found that via the archives, but I literally don't have =
a
copy in my inbox.


If I do the rebase, are you happy for this patch to stay as it is (so
the complicated change concerning context switching doesn't get more
complicated), and so we're not knowingly adding new constructs which
need immediate changes?

~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 10:42:29 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 10:42:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120450.227784 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcQbI-0005eb-8I; Fri, 30 Apr 2021 10:42:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120450.227784; Fri, 30 Apr 2021 10: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 1lcQbI-0005eU-43; Fri, 30 Apr 2021 10:42:24 +0000
Received: by outflank-mailman (input) for mailman id 120450;
 Fri, 30 Apr 2021 10:42:22 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcQbG-0005eM-IE
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 10:42:22 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2b7b3f7b-f070-484d-b2d3-8181dd4bfb8b;
 Fri, 30 Apr 2021 10:42:21 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 854C9B20E;
 Fri, 30 Apr 2021 10:42: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: 2b7b3f7b-f070-484d-b2d3-8181dd4bfb8b
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619779340; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=/qju5zYIfdgnu78L+Gk2M7lZddq0lNK5l5W+IlSBkRk=;
	b=nlol86ckJiwp/cjWSsEiLHJcXGMFt0cdL5GSh7ArFCw/p2JRKVmygs2pNDxRChTpFGSsYF
	ze1SYRsT/YBh5PTGwGIALeZmRviAC3U8Q+zcFThvbum9/E0ylLbc3i6xAVhBxWgPON50pM
	MJLX32SseZUKqaKMcBZXFc9SJr4mjuo=
Subject: Re: [PATCH] x86: Always have CR4.PKE set in HVM context
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210429221223.28348-1-andrew.cooper3@citrix.com>
 <4781e8f1-d70b-2736-364c-eeed61869031@suse.com>
 <5b1938c7-408a-5912-7e66-b5e207e268bd@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <1150e1b5-c6a1-7685-8775-0e4039dbc903@suse.com>
Date: Fri, 30 Apr 2021 12:42:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <5b1938c7-408a-5912-7e66-b5e207e268bd@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 30.04.2021 12:21, Andrew Cooper wrote:
> On 30/04/2021 10:08, Jan Beulich wrote:
>> On 30.04.2021 00:12, Andrew Cooper wrote:
>>> The sole user of read_pkru() is the emulated pagewalk, and guarded behind
>>> guest_pku_enabled() which restricts the path to HVM (hap, even) context only.
>>>
>>> The commentary in read_pkru() concerning _PAGE_GNTTAB overlapping with
>>> _PAGE_PKEY_BITS is only applicable to PV guests.
>>>
>>> The context switch path, via write_ptbase() unconditionally writes CR4 on any
>>> context switch.
>>>
>>> Therefore, we can guarantee to separate CR4.PKE between PV and HVM context at
>>> no extra cost.  Set PKE in mmu_cr4_features on boot, so it becomes set in HVM
>>> context, and clear it in pv_make_cr4().
>>>
>>> Rename read_pkru() to rdpkru() now that it is a simple wrapper around the
>>> instruction.  This saves two CR4 writes on every pagewalk, which typically
>>> occur more than one per emulation.
>>>
>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> The changes looks perfectly fine to me, but I still feel urged to make
>> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>> conditional upon my "x86emul: support RDPKRU/WRPKRU" (submitted exactly
>> half a year ago) going in first, unless there were to be review comments
>> making extensive rework necessary. In the absence of such review
>> feedback, I consider it pretty inappropriate for me to do rebasing work
>> (no matter that this would be largely mechanical afaics) here for a
>> patch which has been pending and effectively ignored for so long. (The
>> main thing that immediately struck me as odd was "The sole user of
>> read_pkru() is ...".)
> 
> So the observation about "sole user" occurred to me too, right after I
> sent this.  Then I thought "surely Jan has spotted this and done a patch
> for it".
> 
> Presumably you're talking about "x86emul: support RDPKRU/WRPKRU" from
> Oct 30th ?  I found that via the archives, but I literally don't have a
> copy in my inbox.

Odd. Was that then the time of your severe email issues, and were your
IT folks not even able to make sure pending email got delivered
afterwards (or at least enumerate what emails got discarded)? If I had
got a reply saying the mail couldn't be delivered, I surely would have
resent it.

Just to be sure - you seem to have got a copy of "x86emul: de-duplicate
scatters to the same linear address", as I seem to recall you responding
there, albeit not with an ack or anything I could actually act upon (and
this might have been in irc). That was sent just a few days later, and
suffers a similar stall. And while in a ping I did say I would commit it
without ack, I'm really hesitant to do so there. I've put it on next
week's community meeting's agenda, just in case.

> If I do the rebase, are you happy for this patch to stay as it is (so
> the complicated change concerning context switching doesn't get more
> complicated), and so we're not knowingly adding new constructs which
> need immediate changes?

Well, the answer is not just "yes", but in reality I wouldn't mind
doing the rebasing myself, if only I knew it wasn't for the purpose of
waiting another half year for an ack (or otherwise).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 10:57:40 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 10:57:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120460.227799 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcQpx-0006ji-OI; Fri, 30 Apr 2021 10:57:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120460.227799; Fri, 30 Apr 2021 10:57:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcQpx-0006jb-Kg; Fri, 30 Apr 2021 10:57:33 +0000
Received: by outflank-mailman (input) for mailman id 120460;
 Fri, 30 Apr 2021 10:57:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcQpw-0006jT-70
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 10:57:32 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f03a6514-133f-4d1f-b677-cdc8fc12d585;
 Fri, 30 Apr 2021 10:57: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: f03a6514-133f-4d1f-b677-cdc8fc12d585
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619780250;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=AuRN35QUbwxaT6ORnxj6kDOdMZJHxjCP7bVeUFgKOoE=;
  b=NBvIv7+14IsltsqEzXzTLXR+d1++N76oFsk6ui175e6mSUR+rdW8QQcP
   Q2lpxT7PFjB2qLHAiJlQ3s+oPjDELDObTjTtucleEClD5wJtQK5eTwvDf
   muqNEJHBY1bPD2ZEd4mgH6YLK4rFjtIiQHh6qfUmoUfME1mWKBvoUz89f
   A=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: ySjvVM7JfuhNMr0y+nWvweZ9G3UHRrtUHMZuqfnF+dyav79C+SQowDuYVAhlgrVi8zJO6fAbcn
 sc6uHdJqgedDi2T9eNkiHp/Lj19jIMyk3sEiKlIgktWux+fdw4bOPqQuOJUEnTs2tfLJs4WKLX
 rLPTV59wDEDaj+j7wvRYRziio6Pi9YDfyENP1XbWH6/5Te6B12TwECcaYWSrsXfhth9d177UPp
 7lqSIVlxpMyK0VOerd/DjMse0eRhy1zEMUmCjkxcxwO0ZvVXARMCAyUkOKN45ol8VUHj9NUjQg
 PvA=
X-SBRS: 5.1
X-MesageID: 42802626
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:g0ErWa+NvLdmLZzMjwluk+FocL1zdoIgy1knxilNYDRvWIixi9
 2ukPMH1RX9lTYWXzUalcqdPbSbKEmyybdc2qNUGbu5RgHptC+TLI9k5Zb/2DGIIUHD38Zn/+
 Nbf6B6YeecMXFTkdv67A6kE9wp3dmA9+SSif3Dymp2JDsKV4hLxW5Ce2GmO2dxQxRLAod8OZ
 qH/8xcpyehf3N/VLXAOlAuWe/fq9rX0K/8aRkdCBI9rCWIhzWk6Ln1eiLooys2eTVJ3Lsk7C
 z5gxX0j5/TyM2T5z398yvo75pQkMb80dcrPqKxo+UcNzmEsHfLWK1PQLuH1QpFxd2HyFFvq9
 XUpgdlAsIb0QKsQkiQgT/Anzbtyywv7XiK8y7pvVLGrdbiTDw3T+pt7LgpCyfx0EYrsNFi3K
 8j5Qvw3PA2fHCw7hjV3NTGWwpnkUC5uxMZ4JYupkdSTJcEb/tppZEflXklYasoJj7w64wsDY
 BVfafhzctRGGnqC0zxjy1ExdyhWWkLBRGWQkQOkdz96UkpoFlJi2Qf38ARhXEG6dYUTIRF/f
 3NNuBSmKhJVdJ+V9MwOM4xBe+MTkDdSxPFN2yfZXzhCaE8InrI77r6+q886u2GcIEBpaFC16
 jpYRd9jyofakjuAcqB0Nlg6RbWWliwWjzr14V3+4V5kqeUfsuqDQSzDHQV1+ewqfQWBcPWH9
 ypPohNPvPlJWzyXa5UwgzFXYVII3V2arxVhv8LH3a15u7bIIzjseLWNNzJIqD2LDoiUmTjRl
 QZWjzeI9hB81CLVnf0jAO5YQKuRmXPubZLVITK9ekaz4YAcqdWtBIOtFi/7saXbR1O25ZGOX
 dWEffCqOeWtGO29WHH4yFCIRxGFHtY573mTjdvrQ8OOEXkTKYbt7ykCCRv9UrCAiU6Y9LdEQ
 ZZqVgy07mwNYasyScrDM/iFW6GkX0JpjavQ40HkqOOoefpE6lIQKoOaehUL0HmBhZ1kQFlpC
 NocwkfXHLSETvolOGCl5wbBObWcvFmmwe1KctoqXbS3H/s5v0Hdz8+ZXqDQMSXiQEhS35/nV
 tq6ZISh7KGhHKSM2cluf85N1dNcWyTJ7pDAG2+FcJps4GuXDs1YXaBhDSchR12Xmbx7U0dil
 bsKjCudejRDkBQvW1Z1ajW4Ep5H1/tDH5YWzRfi8lQBG7GsnF83auwaq2/33C4R3ECzuseWQ
 u1Kgc6E0dL/ZSaxRSVkDGNGTEa3Z0oJPXaF6lmWarUwGmRJIqBkrwmE/dY8I1+Ds3ntvYGXI
 ukCkmoBQK9L9ls9x2ep34jNiUxlWItlunw3gb5qEe/x3wyDJPpUSJbboBeB+vZyWfqR/yFis
 okyf00uPa9KWX3ZJqtz7rNYztKNxPUpiqXQogT2ORplJN3kIE2OZ/RFQbs/jVg+j4VKc/vjk
 MQQKhh+tn6S8dSVv1XXxgcx0YjkdSEEVAivQP3CNIvZF1FtQ6vA/q5p57z7Yc1CkKPpAHMKU
 CS3i1U8fDCRTaC39chetUNCFUTTEg383J5+uyeM6XWFQWxbulGlWDKeEOVQft4SKKfH68XoQ
 s/y9aUn/WPfy69/AzLpzN0LuZv9GmgKPnCTT6kKKpt89agP06LjbbvyMmvjC3vQT/+Un8mv+
 R+BAUtR/UGrCIjgo0x2jWzTaKygntNqSog3RhX0nj32oan52/HG1phKgOxuOQOYQVu
X-IronPort-AV: E=Sophos;i="5.82,262,1613451600"; 
   d="scan'208";a="42802626"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DtawxO57zkenmpYelBvQOEF0wHdkHFTLYAKlWnQiNriewcr05spQpbm3K4cnSazVwXlRWK4tE6TRUZkIv44Cv7QsbjhflAxHtq18pnlGxz5N8Qcf5CdboUdvQ5S3NONu+eXqV/MJhGvEE1kYiTgSZTr+XgRuLPSBpcahmQkaICrnXWj8NBXduZdtlJgA/I5sV3sp1HxhGAUrWYqbaKMF6jy1uPsjog99oAoXCxtb48WKHIw3NWIYiOc155vYUE3RQXxwdqEsU/67Xh0VNhLEcsd6JiTJ3c1+sR7TAy9qhIBNTBgcMMVkeNiKZlBdAcPjI6ydJtO7CmaoAHNyCkKPaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5zTE5dBoG/zjo9xrFuZxsi1ZDaDLyRIvBc5Zey3+Mg8=;
 b=cbhisrRPq05yhqU/UpzZ8GKaebSh/K1soXnydYPyxlwd+8arOYFnJ5k1EtGbAeqpHvE7Bq3upFQOWMe3KG9rShjNP6cB4JSO5yzb7ilUo4Y8Od/5tADC+Tj2vgOazfXeQHR4HQaCRJAZ9pBHfjTAJex3wf4KIp8bQVp7ryEGLZDHhVeRONOLxxoaggO6VpuWtf9aGkpcw10HTi+EHeKHysk4efVGRyqxs2M6fdJGpAODungwjufmMRKB1olcYjx74nEefBPcsQY7e758pxrLTWpAyspVOKWUkL1KOsObcxBF0p8ASVPjE0l/9WUltB3yxBJFIZry7yUO6LUbNVFL6g==
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=5zTE5dBoG/zjo9xrFuZxsi1ZDaDLyRIvBc5Zey3+Mg8=;
 b=oDr3dY9bmBDoj9SaD7r5SdGRJUbuWqIWwtwnDGUi0ynds/B9rNsMsVoTWuPRLZi94y4YUCvFIMDCtSGut1YfsbQohWZcgpVOyyjirDGsaAOQ7TY8ZUbOJ6Pq7sN57PPOC7eetiJwTSORqQnNDxiBeq32z2lNoviAnFUpZk3AYSc=
Date: Fri, 30 Apr 2021 12:57:18 +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>, George Dunlap
	<george.dunlap@citrix.com>
Subject: Re: [PATCH v2 10/12] x86/p2m: {get,set}_entry hooks and p2m-pt.c are
 HVM-only
Message-ID: <YIvijl5n3BQeGNbu@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <fdcdb91f-87ee-084a-da55-b6ef560d5508@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <fdcdb91f-87ee-084a-da55-b6ef560d5508@suse.com>
X-ClientProxiedBy: MR2P264CA0176.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501::15)
 To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 090d0dca-fdd7-42fe-f2fc-08d90bc6bcbb
X-MS-TrafficTypeDiagnostic: DM6PR03MB4841:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB484136E41E495C04B72BB2B78F5E9@DM6PR03MB4841.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: kdIBJDD1abpwDC1FxMVW83x+YKJs5a/LnATwVQfTwDFLn9j9qCy3vaUwjPIWc+lqj7wKUrrkue2YP+RHq4zjWqb7wahFWPmGdwpxBWgC9oUlfkXdyJRoNWZPdGOlZaJGxlACH4mdtx0WlEOCb4dFfAbTOh52SjVGrcaoUcai4k53B74K65KiL57et1ByuNt820sWSm8RWjQipn6+rBfCG93DxfiZ4G8ZTe56F8tZt3EVI+5KTiVCP+4ZVXVmh1Ac5qE9xc1+pPagQT6cUV2dcxrJis2LY9nhLxO4qGkpPVhwkzDWYqmFstxCT4zdLonYviT8wMHwlJ4HeSYJD0kZvgKuBe1OlOSbwWGylxdbX2b73fLVLYUfms849UW1SxWUMmolsin8JjjCiIqT1yHCndZDUpHlbE+yO+LAGviFzzNdqemmKrPfEStPWG6RJr8btl7bXBGpjPtTZP6u6MfxY0lRiUD3icyjnMeoWD+hOszbRIY7uj4eeheKlHhPrQW0Pkx8XFki9E4/qwGTBRrVzlFUhH0AgoxA7FXr568Of3qShFKjK9Go/ICoO1xicAc8aDYxt8k+DClYPdmePC4ep8O5Eub8RziRwPlsJFX+sLc=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(346002)(136003)(366004)(376002)(39860400002)(396003)(26005)(478600001)(66556008)(38100700002)(85182001)(5660300002)(107886003)(66476007)(66946007)(6916009)(16526019)(9686003)(186003)(33716001)(316002)(8676002)(54906003)(6666004)(83380400001)(2906002)(956004)(86362001)(4326008)(6496006)(6486002)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/KktM6m?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 090d0dca-fdd7-42fe-f2fc-08d90bc6bcbb
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 10:57:24.8306
 (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: wYUcU6GXeckUfAkH8dKkcZbao0wD02urCFLLiXzmRXKWxViyJyDYoqL5Ujj4jcrn1ZFzLu57DMZ0lmhB301fXw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4841
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:13:19PM +0200, Jan Beulich wrote:
> With the hooks no longer needing setting, p2m_pt_init() degenerates to
> (about) nothing when !HVM. As a result, p2m-pt.c doesn't need building
> anymore in this case, as long as p2m_pt_init() has proper surrogates put
> in place.
> 
> Unfortunately this means some new #ifdef-ary in p2m.c, but the mid-term
> plan there is to get rid of (almost) all of it by splitting out the then
> hopefully very few remaining non-HVM pieces.
> 
> While the movement of the paging_mode_translate() check from
> p2m_remove_page() to guest_physmap_remove_page() may not be strictly
> necessary anymore (it was in an early version of this change), it looks
> more logical to live in the latter function, allowing to avoid acquiring
> the lock in the PV case. All other callers of p2m_remove_page() already
> have such a check anyway (in the altp2m case up the call stack).
> 
> 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 Fri Apr 30 10:59:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 10:59:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120465.227814 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcQrx-0006tS-5I; Fri, 30 Apr 2021 10:59:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120465.227814; Fri, 30 Apr 2021 10:59:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcQrx-0006tL-2G; Fri, 30 Apr 2021 10:59:37 +0000
Received: by outflank-mailman (input) for mailman id 120465;
 Fri, 30 Apr 2021 10:59:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcQrv-0006tF-RX
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 10:59:35 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 193a06ee-6189-44f4-b4b8-6e3d3a130621;
 Fri, 30 Apr 2021 10:59: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: 193a06ee-6189-44f4-b4b8-6e3d3a130621
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619780374;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=AXzp3tkUJBjTwt0yFP0ffSkLGbmXFXGCLMV/jYj6o3E=;
  b=WNdX2qPbxumc+mFIj1HWwKBu+wxtF8xVhonebms+6NpEI5bmU38vEWNG
   wNap+IFzjqHN+yZflK8qM2Y+5UkIYW18BoLNXu1/kfPiFXOtPsOhyA59K
   AP5YMTS3sbxzXWAabe5VjR8iP3CcGCaevy9R+vEdVYHpvSS1JtqssKs2e
   s=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 7AFKj4i/n6Vxu/FHm6gMIfmd6pl+SZ6D+IGeQI1aRjxhh8Z9OQYubDjityRu7LPZvyvRdK88o0
 2vW6Cf0oNvoVmJQHHkyIDpTFkhkQHOVlujoVFKdIfhqNauBN4KZn0Hyy7NhgR4+GQRD3/hgvms
 wAThhcaUSSFMbbnU594r92mbxHQKfK9bs4n6Q6Ypf+f/vihFfJyg241F+pgT+r0HmOHMAPcdHB
 wxJkxkKTEEhgGf0PSn7KQhPPBpnE6Yg8kDVgBtH0KjJvG8wbmb8DaZFDhh5FmA1dVXk40evpRk
 86Q=
X-SBRS: 5.1
X-MesageID: 42905070
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:WGAf3KyWIxivJNjFO0hLKrPxnu4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnm6JdybI6eZOvRhPvtmftFoFt6oP+3ybtcheQysd07o
 0lSaR3DbTLYWRSpdrm4QW+DtYryMSG9qftvuvF03JxV2hRC51IxS0RMHf8LmRdQg5aCZ0lUL
 ed/NNAvTq8eXIRB/7Le0Utde7FutHNidbaehYAHREq802jijmv5b78HXGjr2sjehlIxqov9n
 WArhzh6syYwouG4zL/90uW1ZRZn9P91sBObfbstuE5Iijh4zzYAbhJdKaFuFkO0YWSwXYs1O
 LBuhIxe/l0gkmhAV2dhTvI903e3C0163nkoGXo8kfLhcDiXjo1B45gqOtiA2PkwnEttt19z6
 5Htljx3/E8YGKi7UaNkuTgbB1kmlG5pnAvi4co/gdieLATdaNLqsgn9F5Vea1wbB7S0pwtE+
 VlEajnlY9rWG6dBkqp2VVH8ZiHW3Q+GQq+WU4SusCZ+Cg+pgEJ82IogOMYhXsO75Q7Vt1t4P
 nFKL1hkPV0QtYRdr8VPpZPfeKHTkj2BT7cOmObJlrqUIkBJnL2spbypJE4/vujdpAkxIY78a
 6xHm9whCoXQQbDGMeO1JpE/lTmW2OmRwngzclY+txQpqD8bKCDC1zBdHke1++b59kPCMzSXP
 i+fLhMBeX4EGfoEYFVmyXjRphpL2UEWsF9gKd6Z3u+5ubwbqH6vO3Sd/jeYJD3Fyw/Z2/5Cn
 wfGBfpIsFt6V2qR2/YjBDdV2iFQD27wbtAVIzhu8QDwokEMYNB9iIPj06i282NITpe9ow6FX
 EOZI/Po+eeny2b7GzI52JmNl52FUBO+ojtVHtMuEsvO0PwerAThsWHdQlprTy6Dy46a/mTPB
 9Uplxx967yBYeX3zoeB9WuNX/fqHcPunSQTdM5lreY7cnoPrM0Z6xWGZBZJEHuLVhYiAxqoG
 BMZEsvXUnEDA7jjq2jkdgzH+HQd951hS+xOs5KoXfjtUGRzPtfBEczbnqLa4q6kAwuTz1bih
 la6KkEmoeNnj6pNC8CmugiCUZNb26WGbpCKwyAaOxv6/bWUTA1aV3PqS2Rihk1dGav00kJnG
 TuIReZfuzxDkNHtmpV1bvr911IZnyQFngAGExSgMlYLyDrq3xz2eiEau6I32ydZkAr78sdPD
 vGCAFiaD9G9pSS7lq4iTyCHXIpytESJeTbFq0kaKyW8GiqMpe0maYPGOJ08J5pOMv1iPICVf
 uSdmauXWrFItJs/zbQimcuOSFypnVhrOjh3wf96nOkmFE4GvjfLT1dNvgmCuDZy1KhYfmG0J
 90141o+cSxN3j8cd6Ax+X8aSVZJhbavG6xSKUJpPlvzNUPnYo2O6Oedz3CkExj9lEZCuzfkU
 sFWqR14LzbIOZUDocvUhMc2mBsrciFKUsgjxf/DeA/d2w8lnOzBaL835P47Z4URnCbrAT+OV
 Oj4zRQ0vfMUSyEz6MbAcsLUBJrQXl5zHRp5+WZcYLMTC2sauFY5VK/W0XNPYN1eeygGb8KqA
 x97MzNt+iLdzDg0ASVmTdgOKpB/yKGRsy1aTj8VdJgwpifOV6WhLGt79P2pDDrSSGjY0BdvL
 Z7TyUrH4x+owhnqpY23Ci0QrH2pUxgs2I220AYqnfdnq684GnaGklaNxb+mZs+Z0gKDkS1
X-IronPort-AV: E=Sophos;i="5.82,262,1613451600"; 
   d="scan'208";a="42905070"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TMZZ4tJGHrp2tn42tmyoQ0z1x1q2nNNdcg2oMJLwLdT3ISR2eKAvP0FwzgU7khvibVK4L9/pLkmomnIGMb04KV0XU41h7Rx1i1MtUo6Tzc+Cotg9L3XhLphXxt93fEXwt5EphHuw9uc7zLDtqhYCur8Q6q4r84uW5xQ2suj6khyYOilJwBdYy2/IFXjVlWcFbD3mMiCk7tCGi43kzDg6bjb0j84V6TbLKEhdtPR1DJi+VH/x8ngfyv/+5xcjA++55y4urfh8KB5ab3K/NoZqo3/8e3SdgjG0AfdQVLv6VQMHJ40VwhPhQ+dw5BlJ3ymrbDwHphqD67pX8UWy9Xci7Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XoxWQ9q1IALd5X4fdnjrdxN1rTLY3djj11Zhcd6qY6M=;
 b=jpQnRaVs2Aa2VGH2xrWVFwDKfdm1X+QEfyCP2c0V+robqn9FgCcq+qOxAt1O92Hu+PXSZm1N7LLm9rSjjc6e81rZobc21zjeNfwA+PlP9YcKW0I3empQg/HtBlUVCRy3oxHnVy3MXovLp91oedp9XU+PXbf9jrQZEB6vKwCyq6a0D3V93qInrzD3s48oDqomPUZTsUhysKLUkq6fmzgv3Mcx6faMRNx6xQBBpjaDyvIcNoSv2Ififm8UKajkXW/BbtGXhcdvjapbeF956bxaJJZimXvd0mxSQgZhDGHG4j+jdtyNkeAbAMBJyGs1EHmAFvmajaOdtMKD9KiwOwV07g==
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=XoxWQ9q1IALd5X4fdnjrdxN1rTLY3djj11Zhcd6qY6M=;
 b=H36dYQzVr/ANi1uPJfRKd+U7LuOEuaJtDky+BaQ6zHWYmjO9RS1rUh/SEJF4a0eBGy0DDH5oQaHOIxrBGdeclMVQjvt33koy8k0sOFDtClRjiFPXB74vtr98NZHnRuIJdlYnCIk9QMSxug52qk884Y5CFKuQdq3T6kAQphVEfC8=
Date: Fri, 30 Apr 2021 12:59:26 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Andrew
 Cooper" <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>
Subject: Re: [PATCH v2 12/12] x86/p2m: re-arrange struct p2m_domain
Message-ID: <YIvjDnuY8jSpU+Wq@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <f2db4101-d3fd-1a82-c38c-2efb69504821@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <f2db4101-d3fd-1a82-c38c-2efb69504821@suse.com>
X-ClientProxiedBy: MR1P264CA0023.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::10) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: cc838a93-8fe5-4998-d3fb-08d90bc70889
X-MS-TrafficTypeDiagnostic: DS7PR03MB5542:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DS7PR03MB5542BAE370E24985B4D8F5878F5E9@DS7PR03MB5542.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:5236;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: nDURschcsi0uubcUivtH9UqxNWBbC/PmDN0H3jaVajQFQKaxTpHIgaJiRFyx57DzLLXgVjR5McGrUm6cO7E5rm4Jo29e/Eky8vyppg/Gxh6jYEStDId75OhVr8YNRurxtnA9BPK523Fi2XTjr+GU9HjnYZGZ+ByeMhQMYtFvefUE8HoZR3RqfltnWF+9DwnCcpfWgUxPvxAYv+fdSaTHdXe24OXZEf28TocqGTqoiS0yG5BvM8J0cc/Tkg9/Re1ybnwj4oSn/6NVNboluMELCUJgFHjjiRX/9XVqLBMyTVorZSv0Vwv6wHx6lAYP/0GIg3wZZVOLuk3sQytKrYyc5xvVxcovNoDcTnsdxNqauex1eBS2xu++D9zMI78VIu+/pC/yEn+FShNiKqmagwiIRMjfhI8Y2HEoNt3TohKniBDJc9CGK3bvzcv1nNzLXbCgeuPuPqBeM93fvEbiQjLhcMwANVFtgnIlZABP3I5lwwZiQVtzNQdXA6iIesWf+f6vdin8v3LdzFqZ2wlOE58XkcOkkGPpMBMu2jAwOUGVKsGfkN7JypJ8Z5OuJtwIT4lEmOn+nTqkjSvQAOAe8/Ja5Mp3rnzV55xqtgTvQo70wJmreeYCvwC8Kmf2bJllEDqZ1VmtMfgo/MWk8qpakclgTA==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(7916004)(366004)(39860400002)(346002)(376002)(136003)(396003)(956004)(86362001)(6666004)(478600001)(6496006)(4326008)(186003)(5660300002)(107886003)(16526019)(26005)(8936002)(8676002)(54906003)(6486002)(83380400001)(9686003)(38100700002)(66476007)(6916009)(2906002)(85182001)(66946007)(33716001)(4744005)(316002)(66556008)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?/dUZrpQmG2BpW1i/v3+zs7dCJ7Dd+1KtJgFdkRI?=
X-MS-Exchange-CrossTenant-Network-Message-Id: cc838a93-8fe5-4998-d3fb-08d90bc70889
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 10:59:32.0040
 (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: GYYSpZO3LovSPOKdsVLVP7eczw4Uy++UHgEkFKN6kmRJBvX9un5kaulidqWL48IaexyoMnnAbB7nRmXJmj808Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5542
X-OriginatorOrg: citrix.com

On Mon, Apr 12, 2021 at 04:14:22PM +0200, Jan Beulich wrote:
> Combine two HVM-specific sections in two cases (i.e. going from four of
> them to just two). Make defer_nested_flush bool and HVM-only, moving it
> next to other nested stuff. Move default_access up into a padding hole.
> 
> When moving them anyway, also adjust comment style.
> 
> 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 Fri Apr 30 11:28:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:28:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120473.227850 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRJu-00015K-9E; Fri, 30 Apr 2021 11:28:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120473.227850; Fri, 30 Apr 2021 11: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 1lcRJu-00015C-5N; Fri, 30 Apr 2021 11:28:30 +0000
Received: by outflank-mailman (input) for mailman id 120473;
 Fri, 30 Apr 2021 11:28:28 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcRJs-00011a-Eb
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 11:28:28 +0000
Received: from mx.upb.ro (unknown [141.85.13.220])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 98151aa8-f33c-439a-9db7-ab35e1e21fc7;
 Fri, 30 Apr 2021 11:28:21 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id DCDBAB560113;
 Fri, 30 Apr 2021 14:28:20 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id jgHZByzHpTZ1; Fri, 30 Apr 2021 14:28:18 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 735A9B5600B0;
 Fri, 30 Apr 2021 14:28:18 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id Bok4qv--nPKH; Fri, 30 Apr 2021 14:28:18 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id B1651B56010D;
 Fri, 30 Apr 2021 14:28:17 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 98151aa8-f33c-439a-9db7-ab35e1e21fc7
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Tim Deegan <tim@xen.org>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 1/5] tools/debugger: Fix PAGE_SIZE redefinition error
Date: Fri, 30 Apr 2021 14:28:07 +0300
Message-Id: <26c90f29058c8f2cf36230eee4f4e3ebd097a04d.1619781564.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619781564.git.costin.lupu@cs.pub.ro>
References: <cover.1619781564.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PAGE_SIZE is already defined in the system (e.g. in /usr/include/limit=
s.h
header) then gcc will trigger a redefinition error because of -Werror. Th=
is
patch replaces usage of PAGE_* macros with XC_PAGE_* macros in order to a=
void
confusion between control domain page granularity (PAGE_* definitions) an=
d
guest domain page granularity (which is what we are dealing with here).

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/debugger/kdd/kdd-xen.c | 15 ++++++---------
 tools/debugger/kdd/kdd.c     | 21 ++++++++++-----------
 2 files changed, 16 insertions(+), 20 deletions(-)

diff --git a/tools/debugger/kdd/kdd-xen.c b/tools/debugger/kdd/kdd-xen.c
index f3f9529f9f..d6308929e8 100644
--- a/tools/debugger/kdd/kdd-xen.c
+++ b/tools/debugger/kdd/kdd-xen.c
@@ -48,9 +48,6 @@
=20
 #define MAPSIZE 4093 /* Prime */
=20
-#define PAGE_SHIFT 12
-#define PAGE_SIZE (1U << PAGE_SHIFT)
-
 struct kdd_guest {
     struct xentoollog_logger xc_log; /* Must be first for xc log callbac=
ks */
     xc_interface *xc_handle;
@@ -72,7 +69,7 @@ static void flush_maps(kdd_guest *g)
     int i;
     for (i =3D 0; i < MAPSIZE; i++) {
         if (g->maps[i] !=3D NULL)
-            munmap(g->maps[i], PAGE_SIZE);
+            munmap(g->maps[i], XC_PAGE_SIZE);
         g->maps[i] =3D NULL;
     }
 }
@@ -490,13 +487,13 @@ static uint32_t kdd_access_physical_page(kdd_guest =
*g, uint64_t addr,
     uint32_t map_pfn, map_offset;
     uint8_t *map;
=20
-    map_pfn =3D (addr >> PAGE_SHIFT);
-    map_offset =3D addr & (PAGE_SIZE - 1);
+    map_pfn =3D (addr >> XC_PAGE_SHIFT);
+    map_offset =3D addr & (XC_PAGE_SIZE - 1);
=20
     /* Evict any mapping of the wrong frame from our slot */=20
     if (g->pfns[map_pfn % MAPSIZE] !=3D map_pfn
         && g->maps[map_pfn % MAPSIZE] !=3D NULL) {
-        munmap(g->maps[map_pfn % MAPSIZE], PAGE_SIZE);
+        munmap(g->maps[map_pfn % MAPSIZE], XC_PAGE_SIZE);
         g->maps[map_pfn % MAPSIZE] =3D NULL;
     }
     g->pfns[map_pfn % MAPSIZE] =3D map_pfn;
@@ -507,7 +504,7 @@ static uint32_t kdd_access_physical_page(kdd_guest *g=
, uint64_t addr,
     else {
         map =3D xc_map_foreign_range(g->xc_handle,
                                    g->domid,
-                                   PAGE_SIZE,
+                                   XC_PAGE_SIZE,
                                    PROT_READ|PROT_WRITE,
                                    map_pfn);
=20
@@ -533,7 +530,7 @@ uint32_t kdd_access_physical(kdd_guest *g, uint64_t a=
ddr,
 {
     uint32_t chunk, rv, done =3D 0;
     while (len > 0) {
-        chunk =3D PAGE_SIZE - (addr & (PAGE_SIZE - 1));
+        chunk =3D XC_PAGE_SIZE - (addr & (XC_PAGE_SIZE - 1));
         if (chunk > len)=20
             chunk =3D len;
         rv =3D kdd_access_physical_page(g, addr, chunk, buf, write);
diff --git a/tools/debugger/kdd/kdd.c b/tools/debugger/kdd/kdd.c
index 17513c2650..fa23948242 100644
--- a/tools/debugger/kdd/kdd.c
+++ b/tools/debugger/kdd/kdd.c
@@ -50,6 +50,8 @@
 #include <netinet/in.h>
 #include <netinet/tcp.h>
=20
+#include <xenctrl.h>
+
 #include "kdd.h"
=20
 /*
@@ -288,9 +290,6 @@ static void kdd_log_pkt(kdd_state *s, const char *nam=
e, kdd_pkt *p)
  *  Memory access: virtual addresses and syntactic sugar.
  */
=20
-#define PAGE_SHIFT (12)
-#define PAGE_SIZE (1ULL << PAGE_SHIFT)=20
-
 static uint32_t kdd_read_physical(kdd_state *s, uint64_t addr,=20
                                   uint32_t len, void *buf)
 {
@@ -352,7 +351,7 @@ static uint64_t v2p(kdd_state *s, int cpuid, uint64_t=
 va)
=20
     /* Walk the appropriate number of levels */
     for (i =3D levels; i > 0; i--) {
-        shift =3D PAGE_SHIFT + bits * (i-1);
+        shift =3D XC_PAGE_SHIFT + bits * (i-1);
         mask =3D ((1ULL << bits) - 1) << shift;
         offset =3D ((va & mask) >> shift) * width;
         KDD_DEBUG(s, "level %i: mask 0x%16.16"PRIx64" pa 0x%16.16"PRIx64
@@ -364,12 +363,12 @@ static uint64_t v2p(kdd_state *s, int cpuid, uint64=
_t va)
             return -1ULL; // Not present
         pa =3D entry & 0x000ffffffffff000ULL;
         if (pse && (i =3D=3D 2) && (entry & 0x80)) { // Superpage
-            mask =3D ((1ULL << (PAGE_SHIFT + bits)) - 1);
+            mask =3D ((1ULL << (XC_PAGE_SHIFT + bits)) - 1);
             return (pa & ~mask) + (va & mask);
         }
     }
=20
-    return pa + (va & (PAGE_SIZE - 1));
+    return pa + (va & (XC_PAGE_SIZE - 1));
 }
=20
 static uint32_t kdd_access_virtual(kdd_state *s, int cpuid, uint64_t add=
r,
@@ -380,7 +379,7 @@ static uint32_t kdd_access_virtual(kdd_state *s, int =
cpuid, uint64_t addr,
    =20
     /* Process one page at a time */
     while (len > 0) {
-        chunk =3D PAGE_SIZE - (addr & (PAGE_SIZE - 1));
+        chunk =3D XC_PAGE_SIZE - (addr & (XC_PAGE_SIZE - 1));
         if (chunk > len)=20
             chunk =3D len;
         pa =3D v2p(s, cpuid, addr);
@@ -591,7 +590,7 @@ static void get_os_info_64(kdd_state *s)
     uint64_t dbgkd_addr;
     DBGKD_GET_VERSION64 dbgkd_get_version64;
     /* Maybe 1GB is too big for the limit to search? */
-    uint32_t search_limit =3D (1024 * 1024 * 1024) / PAGE_SIZE; /*1GB/Pa=
geSize*/
+    uint32_t search_limit =3D (1024 * 1024 * 1024) / XC_PAGE_SIZE; /*1GB=
/PageSize*/
     uint64_t efer;
=20
     /* if we are not in 64-bit mode, fail */
@@ -620,7 +619,7 @@ static void get_os_info_64(kdd_state *s)
      * in 1GB range above the current page base address
      */
=20
-    base =3D idt0_addr & ~(PAGE_SIZE - 1);
+    base =3D idt0_addr & ~(XC_PAGE_SIZE - 1);
=20
     while (search_limit) {
         uint16_t val;
@@ -633,7 +632,7 @@ static void get_os_info_64(kdd_state *s)
         if (val =3D=3D MZ_HEADER) // MZ
             break;
=20
-        base -=3D PAGE_SIZE;
+        base -=3D XC_PAGE_SIZE;
         search_limit -=3D 1;
     }
=20
@@ -720,7 +719,7 @@ static void find_os(kdd_state *s)
         /* Try each page in the potential range of kernel load addresses=
 */
         for (limit =3D s->os.base + s->os.range;
              s->os.base <=3D limit;
-             s->os.base +=3D PAGE_SIZE)
+             s->os.base +=3D XC_PAGE_SIZE)
             if (check_os(s))
                 return;
     }
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 11:28:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:28:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120472.227834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRJo-00012I-Sd; Fri, 30 Apr 2021 11:28:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120472.227834; Fri, 30 Apr 2021 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 1lcRJo-000123-L8; Fri, 30 Apr 2021 11:28:24 +0000
Received: by outflank-mailman (input) for mailman id 120472;
 Fri, 30 Apr 2021 11:28:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcRJn-00011a-K9
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 11:28:23 +0000
Received: from mx.upb.ro (unknown [141.85.13.210])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 90707dca-7b1e-44fd-a61a-d6a28fe7d9c1;
 Fri, 30 Apr 2021 11:28:21 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id DF555B56011C;
 Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id eBQP6ciXne0i; Fri, 30 Apr 2021 14:28:18 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id B4610B560113;
 Fri, 30 Apr 2021 14:28:17 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id DSDw40tLMBxT; Fri, 30 Apr 2021 14:28:17 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 7CD99B5600B0;
 Fri, 30 Apr 2021 14:28:16 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 90707dca-7b1e-44fd-a61a-d6a28fe7d9c1
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Tim Deegan <tim@xen.org>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Christian Lindig <christian.lindig@citrix.com>,
	David Scott <dave@recoil.org>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v2 0/5] Fix redefinition errors for toolstack libs
Date: Fri, 30 Apr 2021 14:28:06 +0300
Message-Id: <cover.1619781564.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

For replication I used gcc 10.3 on an Alpine system. In order to replicat=
e the
redefinition error for PAGE_SIZE one should install the 'fortify-headers'
package which will change the chain of included headers by indirectly inc=
luding
/usr/include/limits.h where PAGE_SIZE and PATH_MAX are defined.

Changes since v1:
- Use XC_PAGE_* macros instead of PAGE_* macros

Costin Lupu (5):
  tools/debugger: Fix PAGE_SIZE redefinition error
  tools/libfsimage: Fix PATH_MAX redefinition error
  tools/libs/foreignmemory: Fix PAGE_SIZE redefinition error
  tools/libs/gnttab: Fix PAGE_SIZE redefinition error
  tools/ocaml: Fix redefinition errors

 tools/debugger/kdd/kdd-xen.c                  | 15 ++++------
 tools/debugger/kdd/kdd.c                      | 21 +++++++-------
 tools/libfsimage/ext2fs/fsys_ext2fs.c         |  2 ++
 tools/libfsimage/reiserfs/fsys_reiserfs.c     |  2 ++
 tools/libs/foreignmemory/core.c               |  2 +-
 tools/libs/foreignmemory/freebsd.c            | 10 +++----
 tools/libs/foreignmemory/linux.c              | 23 +++++++--------
 tools/libs/foreignmemory/minios.c             |  2 +-
 tools/libs/foreignmemory/netbsd.c             | 10 +++----
 tools/libs/foreignmemory/private.h            |  9 +-----
 tools/libs/gnttab/freebsd.c                   | 28 +++++++++----------
 tools/libs/gnttab/linux.c                     | 28 +++++++++----------
 tools/libs/gnttab/netbsd.c                    | 23 +++++++--------
 tools/ocaml/libs/xc/xenctrl_stubs.c           | 10 +++----
 .../ocaml/libs/xentoollog/xentoollog_stubs.c  |  4 +++
 tools/ocaml/libs/xl/xenlight_stubs.c          |  4 +++
 16 files changed, 93 insertions(+), 100 deletions(-)

--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 11:28:33 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:28:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120471.227826 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRJo-00011m-Gi; Fri, 30 Apr 2021 11:28:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120471.227826; Fri, 30 Apr 2021 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 1lcRJo-00011f-Br; Fri, 30 Apr 2021 11:28:24 +0000
Received: by outflank-mailman (input) for mailman id 120471;
 Fri, 30 Apr 2021 11:28:23 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcRJn-00011V-0F
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 11:28:23 +0000
Received: from mx.upb.ro (unknown [141.85.13.230])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d9af1916-ede5-4400-a992-9f5a966b63df;
 Fri, 30 Apr 2021 11:28:22 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 1EDC8B5600B0;
 Fri, 30 Apr 2021 14:28:21 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Jb2eNVNYsFP2; Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 3A962B56010D;
 Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id rEdz3PHn6_Jl; Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 75072B560118;
 Fri, 30 Apr 2021 14:28:18 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d9af1916-ede5-4400-a992-9f5a966b63df
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v2 2/5] tools/libfsimage: Fix PATH_MAX redefinition error
Date: Fri, 30 Apr 2021 14:28:08 +0300
Message-Id: <9e323285b89717cd4cd8de7fb642e447b0dcfc4e.1619781564.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619781564.git.costin.lupu@cs.pub.ro>
References: <cover.1619781564.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PATH_MAX is already defined in the system (e.g. in /usr/include/limits=
.h
header) then gcc will trigger a redefinition error because of -Werror.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
 tools/libfsimage/ext2fs/fsys_ext2fs.c     | 2 ++
 tools/libfsimage/reiserfs/fsys_reiserfs.c | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/tools/libfsimage/ext2fs/fsys_ext2fs.c b/tools/libfsimage/ext=
2fs/fsys_ext2fs.c
index a4ed10419c..5ed8fce90e 100644
--- a/tools/libfsimage/ext2fs/fsys_ext2fs.c
+++ b/tools/libfsimage/ext2fs/fsys_ext2fs.c
@@ -278,7 +278,9 @@ struct ext4_extent_header {
=20
 #define EXT2_SUPER_MAGIC      0xEF53	/* include/linux/ext2_fs.h */
 #define EXT2_ROOT_INO              2	/* include/linux/ext2_fs.h */
+#ifndef PATH_MAX
 #define PATH_MAX                1024	/* include/linux/limits.h */
+#endif
 #define MAX_LINK_COUNT             5	/* number of symbolic links to foll=
ow */
=20
 /* made up, these are pointers into FSYS_BUF */
diff --git a/tools/libfsimage/reiserfs/fsys_reiserfs.c b/tools/libfsimage=
/reiserfs/fsys_reiserfs.c
index 916eb15292..10ca657476 100644
--- a/tools/libfsimage/reiserfs/fsys_reiserfs.c
+++ b/tools/libfsimage/reiserfs/fsys_reiserfs.c
@@ -284,7 +284,9 @@ struct reiserfs_de_head
 #define S_ISDIR(mode) (((mode) & 0170000) =3D=3D 0040000)
 #define S_ISLNK(mode) (((mode) & 0170000) =3D=3D 0120000)
=20
+#ifndef PATH_MAX
 #define PATH_MAX       1024	/* include/linux/limits.h */
+#endif
 #define MAX_LINK_COUNT    5	/* number of symbolic links to follow */
=20
 /* The size of the node cache */
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 11:28:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:28:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120474.227862 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRJy-00019P-IB; Fri, 30 Apr 2021 11:28:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120474.227862; Fri, 30 Apr 2021 11:28:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRJy-00019G-EQ; Fri, 30 Apr 2021 11:28:34 +0000
Received: by outflank-mailman (input) for mailman id 120474;
 Fri, 30 Apr 2021 11:28:33 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcRJx-00011a-Ej
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 11:28:33 +0000
Received: from mx.upb.ro (unknown [141.85.13.200])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id f6fa5441-43a5-4aa1-b4d8-23e7c2bdbad8;
 Fri, 30 Apr 2021 11:28:24 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 37635B560118;
 Fri, 30 Apr 2021 14:28:23 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id ymGLmKXsAxR9; Fri, 30 Apr 2021 14:28:20 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 0FE78B560121;
 Fri, 30 Apr 2021 14:28:20 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id U3G9nkr-6Er9; Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id B121DB560118;
 Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f6fa5441-43a5-4aa1-b4d8-23e7c2bdbad8
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 4/5] tools/libs/gnttab: Fix PAGE_SIZE redefinition error
Date: Fri, 30 Apr 2021 14:28:10 +0300
Message-Id: <64508f42952d971a0213dfd3fff53b990a3c6ebe.1619781564.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619781564.git.costin.lupu@cs.pub.ro>
References: <cover.1619781564.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PAGE_SIZE is already defined in the system (e.g. in /usr/include/limit=
s.h
header) then gcc will trigger a redefinition error because of -Werror. Th=
is
patch replaces usage of PAGE_* macros with XC_PAGE_* macros in order to a=
void
confusion between control domain page granularity (PAGE_* definitions) an=
d
guest domain page granularity (which is what we are dealing with here).

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/libs/gnttab/freebsd.c | 28 +++++++++++++---------------
 tools/libs/gnttab/linux.c   | 28 +++++++++++++---------------
 tools/libs/gnttab/netbsd.c  | 23 ++++++++++-------------
 3 files changed, 36 insertions(+), 43 deletions(-)

diff --git a/tools/libs/gnttab/freebsd.c b/tools/libs/gnttab/freebsd.c
index 768af701c6..e42ac3fbf3 100644
--- a/tools/libs/gnttab/freebsd.c
+++ b/tools/libs/gnttab/freebsd.c
@@ -30,14 +30,11 @@
=20
 #include <xen/sys/gntdev.h>
=20
+#include <xenctrl.h>
 #include <xen-tools/libs.h>
=20
 #include "private.h"
=20
-#define PAGE_SHIFT           12
-#define PAGE_SIZE            (1UL << PAGE_SHIFT)
-#define PAGE_MASK            (~(PAGE_SIZE-1))
-
 #define DEVXEN "/dev/xen/gntdev"
=20
 int osdep_gnttab_open(xengnttab_handle *xgt)
@@ -77,10 +74,11 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
     int domids_stride;
     unsigned int refs_size =3D ROUNDUP(count *
                                      sizeof(struct ioctl_gntdev_grant_re=
f),
-                                     PAGE_SHIFT);
+                                     XC_PAGE_SHIFT);
+    int os_page_size =3D getpagesize();
=20
     domids_stride =3D (flags & XENGNTTAB_GRANT_MAP_SINGLE_DOMAIN) ? 0 : =
1;
-    if ( refs_size <=3D PAGE_SIZE )
+    if ( refs_size <=3D os_page_size )
         map.refs =3D malloc(refs_size);
     else
     {
@@ -107,7 +105,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
         goto out;
     }
=20
-    addr =3D mmap(NULL, PAGE_SIZE * count, prot, MAP_SHARED, fd,
+    addr =3D mmap(NULL, XC_PAGE_SIZE * count, prot, MAP_SHARED, fd,
                 map.index);
     if ( addr !=3D MAP_FAILED )
     {
@@ -116,7 +114,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
=20
         notify.index =3D map.index;
         notify.action =3D 0;
-        if ( notify_offset < PAGE_SIZE * count )
+        if ( notify_offset < XC_PAGE_SIZE * count )
         {
             notify.index +=3D notify_offset;
             notify.action |=3D UNMAP_NOTIFY_CLEAR_BYTE;
@@ -131,7 +129,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
         if ( rv )
         {
             GTERROR(xgt->logger, "ioctl SET_UNMAP_NOTIFY failed");
-            munmap(addr, count * PAGE_SIZE);
+            munmap(addr, count * XC_PAGE_SIZE);
             addr =3D MAP_FAILED;
         }
     }
@@ -150,7 +148,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
     }
=20
  out:
-    if ( refs_size > PAGE_SIZE )
+    if ( refs_size > os_page_size )
         munmap(map.refs, refs_size);
     else
         free(map.refs);
@@ -189,7 +187,7 @@ int osdep_gnttab_unmap(xengnttab_handle *xgt,
     }
=20
     /* Next, unmap the memory. */
-    if ( (rc =3D munmap(start_address, count * PAGE_SIZE)) )
+    if ( (rc =3D munmap(start_address, count * XC_PAGE_SIZE)) )
         return rc;
=20
     /* Finally, unmap the driver slots used to store the grant informati=
on. */
@@ -256,7 +254,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
         goto out;
     }
=20
-    area =3D mmap(NULL, count * PAGE_SIZE, PROT_READ | PROT_WRITE, MAP_S=
HARED,
+    area =3D mmap(NULL, count * XC_PAGE_SIZE, PROT_READ | PROT_WRITE, MA=
P_SHARED,
                 fd, gref_info.index);
=20
     if ( area =3D=3D MAP_FAILED )
@@ -268,7 +266,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
=20
     notify.index =3D gref_info.index;
     notify.action =3D 0;
-    if ( notify_offset < PAGE_SIZE * count )
+    if ( notify_offset < XC_PAGE_SIZE * count )
     {
         notify.index +=3D notify_offset;
         notify.action |=3D UNMAP_NOTIFY_CLEAR_BYTE;
@@ -283,7 +281,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
     if ( err )
     {
         GSERROR(xgs->logger, "ioctl SET_UNMAP_NOTIFY failed");
-        munmap(area, count * PAGE_SIZE);
+        munmap(area, count * XC_PAGE_SIZE);
         area =3D NULL;
     }
=20
@@ -306,7 +304,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
 int osdep_gntshr_unshare(xengntshr_handle *xgs,
                          void *start_address, uint32_t count)
 {
-    return munmap(start_address, count * PAGE_SIZE);
+    return munmap(start_address, count * XC_PAGE_SIZE);
 }
=20
 /*
diff --git a/tools/libs/gnttab/linux.c b/tools/libs/gnttab/linux.c
index 74331a4c7b..9ce27bee6e 100644
--- a/tools/libs/gnttab/linux.c
+++ b/tools/libs/gnttab/linux.c
@@ -32,14 +32,11 @@
 #include <xen/sys/gntdev.h>
 #include <xen/sys/gntalloc.h>
=20
+#include <xenctrl.h>
 #include <xen-tools/libs.h>
=20
 #include "private.h"
=20
-#define PAGE_SHIFT           12
-#define PAGE_SIZE            (1UL << PAGE_SHIFT)
-#define PAGE_MASK            (~(PAGE_SIZE-1))
-
 #define DEVXEN "/dev/xen/"
=20
 #ifndef O_CLOEXEC
@@ -92,6 +89,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
     int fd =3D xgt->fd;
     struct ioctl_gntdev_map_grant_ref *map;
     unsigned int map_size =3D sizeof(*map) + (count - 1) * sizeof(map->r=
efs[0]);
+    int os_page_size =3D getpagesize();
     void *addr =3D NULL;
     int domids_stride =3D 1;
     int i;
@@ -99,11 +97,11 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
     if (flags & XENGNTTAB_GRANT_MAP_SINGLE_DOMAIN)
         domids_stride =3D 0;
=20
-    if ( map_size <=3D PAGE_SIZE )
+    if ( map_size <=3D os_page_size )
         map =3D alloca(map_size);
     else
     {
-        map_size =3D ROUNDUP(map_size, PAGE_SHIFT);
+        map_size =3D ROUNDUP(map_size, XC_PAGE_SHIFT);
         map =3D mmap(NULL, map_size, PROT_READ | PROT_WRITE,
                    MAP_PRIVATE | MAP_ANON | MAP_POPULATE, -1, 0);
         if ( map =3D=3D MAP_FAILED )
@@ -127,7 +125,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
     }
=20
  retry:
-    addr =3D mmap(NULL, PAGE_SIZE * count, prot, MAP_SHARED, fd,
+    addr =3D mmap(NULL, XC_PAGE_SIZE * count, prot, MAP_SHARED, fd,
                 map->index);
=20
     if (addr =3D=3D MAP_FAILED && errno =3D=3D EAGAIN)
@@ -152,7 +150,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
         struct ioctl_gntdev_unmap_notify notify;
         notify.index =3D map->index;
         notify.action =3D 0;
-        if (notify_offset < PAGE_SIZE * count) {
+        if (notify_offset < XC_PAGE_SIZE * count) {
             notify.index +=3D notify_offset;
             notify.action |=3D UNMAP_NOTIFY_CLEAR_BYTE;
         }
@@ -164,7 +162,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
             rv =3D ioctl(fd, IOCTL_GNTDEV_SET_UNMAP_NOTIFY, &notify);
         if (rv) {
             GTERROR(xgt->logger, "ioctl SET_UNMAP_NOTIFY failed");
-            munmap(addr, count * PAGE_SIZE);
+            munmap(addr, count * XC_PAGE_SIZE);
             addr =3D MAP_FAILED;
         }
     }
@@ -184,7 +182,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
     }
=20
  out:
-    if ( map_size > PAGE_SIZE )
+    if ( map_size > os_page_size )
         munmap(map, map_size);
=20
     return addr;
@@ -220,7 +218,7 @@ int osdep_gnttab_unmap(xengnttab_handle *xgt,
     }
=20
     /* Next, unmap the memory. */
-    if ( (rc =3D munmap(start_address, count * PAGE_SIZE)) )
+    if ( (rc =3D munmap(start_address, count * XC_PAGE_SIZE)) )
         return rc;
=20
     /* Finally, unmap the driver slots used to store the grant informati=
on. */
@@ -466,7 +464,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
         goto out;
     }
=20
-    area =3D mmap(NULL, count * PAGE_SIZE, PROT_READ | PROT_WRITE,
+    area =3D mmap(NULL, count * XC_PAGE_SIZE, PROT_READ | PROT_WRITE,
         MAP_SHARED, fd, gref_info->index);
=20
     if (area =3D=3D MAP_FAILED) {
@@ -477,7 +475,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
=20
     notify.index =3D gref_info->index;
     notify.action =3D 0;
-    if (notify_offset < PAGE_SIZE * count) {
+    if (notify_offset < XC_PAGE_SIZE * count) {
         notify.index +=3D notify_offset;
         notify.action |=3D UNMAP_NOTIFY_CLEAR_BYTE;
     }
@@ -489,7 +487,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
         err =3D ioctl(fd, IOCTL_GNTALLOC_SET_UNMAP_NOTIFY, &notify);
     if (err) {
         GSERROR(xgs->logger, "ioctl SET_UNMAP_NOTIFY failed");
-        munmap(area, count * PAGE_SIZE);
+        munmap(area, count * XC_PAGE_SIZE);
         area =3D NULL;
     }
=20
@@ -510,7 +508,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
 int osdep_gntshr_unshare(xengntshr_handle *xgs,
                          void *start_address, uint32_t count)
 {
-    return munmap(start_address, count * PAGE_SIZE);
+    return munmap(start_address, count * XC_PAGE_SIZE);
 }
=20
 /*
diff --git a/tools/libs/gnttab/netbsd.c b/tools/libs/gnttab/netbsd.c
index f8d7c356eb..a4ad624b54 100644
--- a/tools/libs/gnttab/netbsd.c
+++ b/tools/libs/gnttab/netbsd.c
@@ -28,15 +28,12 @@
 #include <sys/ioctl.h>
 #include <sys/mman.h>
=20
+#include <xenctrl.h>
 #include <xen/xen.h>
 #include <xen/xenio.h>
=20
 #include "private.h"
=20
-#define PAGE_SHIFT           12
-#define PAGE_SIZE            (1UL << PAGE_SHIFT)
-#define PAGE_MASK            (~(PAGE_SIZE-1))
-
 #define DEVXEN "/kern/xen/privcmd"
=20
 int osdep_gnttab_open(xengnttab_handle *xgt)
@@ -87,19 +84,19 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
     }
=20
     map.count =3D count;
-    addr =3D mmap(NULL, count * PAGE_SIZE,
+    addr =3D mmap(NULL, count * XC_PAGE_SIZE,
                 prot, flags | MAP_ANON | MAP_SHARED, -1, 0);
     if ( map.va =3D=3D MAP_FAILED )
     {
         GTERROR(xgt->logger, "osdep_gnttab_grant_map: mmap failed");
-        munmap((void *)map.va, count * PAGE_SIZE);
+        munmap((void *)map.va, count * XC_PAGE_SIZE);
         addr =3D MAP_FAILED;
     }
     map.va =3D addr;
=20
     map.notify.offset =3D 0;
     map.notify.action =3D 0;
-    if ( notify_offset < PAGE_SIZE * count )
+    if ( notify_offset < XC_PAGE_SIZE * count )
     {
         map.notify.offset =3D notify_offset;
         map.notify.action |=3D UNMAP_NOTIFY_CLEAR_BYTE;
@@ -115,7 +112,7 @@ void *osdep_gnttab_grant_map(xengnttab_handle *xgt,
     {
         GTERROR(xgt->logger,
             "ioctl IOCTL_GNTDEV_MMAP_GRANT_REF failed: %d", rv);
-        munmap(addr, count * PAGE_SIZE);
+        munmap(addr, count * XC_PAGE_SIZE);
         addr =3D MAP_FAILED;
     }
=20
@@ -136,7 +133,7 @@ int osdep_gnttab_unmap(xengnttab_handle *xgt,
     }
=20
     /* Next, unmap the memory. */
-    rc =3D munmap(start_address, count * PAGE_SIZE);
+    rc =3D munmap(start_address, count * XC_PAGE_SIZE);
=20
     return rc;
 }
@@ -187,7 +184,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
     alloc.domid =3D domid;
     alloc.flags =3D writable ? GNTDEV_ALLOC_FLAG_WRITABLE : 0;
     alloc.count =3D count;
-    area =3D mmap(NULL, count * PAGE_SIZE,
+    area =3D mmap(NULL, count * XC_PAGE_SIZE,
                 PROT_READ | PROT_WRITE, MAP_ANON | MAP_SHARED, -1, 0);
=20
     if ( area =3D=3D MAP_FAILED )
@@ -200,7 +197,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
=20
     alloc.notify.offset =3D 0;
     alloc.notify.action =3D 0;
-    if ( notify_offset < PAGE_SIZE * count )
+    if ( notify_offset < XC_PAGE_SIZE * count )
     {
         alloc.notify.offset =3D notify_offset;
         alloc.notify.action |=3D UNMAP_NOTIFY_CLEAR_BYTE;
@@ -215,7 +212,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
     if ( err )
     {
         GSERROR(xgs->logger, "IOCTL_GNTDEV_ALLOC_GRANT_REF failed");
-        munmap(area, count * PAGE_SIZE);
+        munmap(area, count * XC_PAGE_SIZE);
         area =3D MAP_FAILED;
         goto out;
     }
@@ -230,7 +227,7 @@ void *osdep_gntshr_share_pages(xengntshr_handle *xgs,
 int osdep_gntshr_unshare(xengntshr_handle *xgs,
                          void *start_address, uint32_t count)
 {
-    return munmap(start_address, count * PAGE_SIZE);
+    return munmap(start_address, count * XC_PAGE_SIZE);
 }
=20
 /*
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 11:28:39 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:28:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120476.227874 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRK3-0001F4-Qo; Fri, 30 Apr 2021 11:28:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120476.227874; Fri, 30 Apr 2021 11: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 1lcRK3-0001Eu-N1; Fri, 30 Apr 2021 11:28:39 +0000
Received: by outflank-mailman (input) for mailman id 120476;
 Fri, 30 Apr 2021 11:28:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcRK2-00011a-FB
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 11:28:38 +0000
Received: from mx.upb.ro (unknown [141.85.13.230])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bb8a72c0-9212-4ddc-9666-b8cc43055019;
 Fri, 30 Apr 2021 11:28:24 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 1E14DB56011F;
 Fri, 30 Apr 2021 14:28:23 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id bSylNCdeoEZB; Fri, 30 Apr 2021 14:28:20 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 8E727B560118;
 Fri, 30 Apr 2021 14:28:20 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 9hLohrSlnp5b; Fri, 30 Apr 2021 14:28:20 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 0F0BAB560113;
 Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bb8a72c0-9212-4ddc-9666-b8cc43055019
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Christian Lindig <christian.lindig@citrix.com>,
	David Scott <dave@recoil.org>,
	Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 5/5] tools/ocaml: Fix redefinition errors
Date: Fri, 30 Apr 2021 14:28:11 +0300
Message-Id: <1a8ff6dcdd70fef83828dce47e79eb846860cbe8.1619781564.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619781564.git.costin.lupu@cs.pub.ro>
References: <cover.1619781564.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PAGE_SIZE is already defined in the system (e.g. in /usr/include/limit=
s.h
header) then gcc will trigger a redefinition error because of -Werror. Th=
is
patch replaces usage of PAGE_* macros with XC_PAGE_* macros in order to a=
void
confusion between control domain page granularity (PAGE_* definitions) an=
d
guest domain page granularity (which is what we are dealing with here).

Same issue applies for redefinitions of Val_none and Some_val macros whic=
h
can be already defined in the OCaml system headers (e.g.
/usr/lib/ocaml/caml/mlvalues.h).

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/ocaml/libs/xc/xenctrl_stubs.c            | 10 ++++------
 tools/ocaml/libs/xentoollog/xentoollog_stubs.c |  4 ++++
 tools/ocaml/libs/xl/xenlight_stubs.c           |  4 ++++
 3 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/tools/ocaml/libs/xc/xenctrl_stubs.c b/tools/ocaml/libs/xc/xe=
nctrl_stubs.c
index d05d7bb30e..f9e33e599a 100644
--- a/tools/ocaml/libs/xc/xenctrl_stubs.c
+++ b/tools/ocaml/libs/xc/xenctrl_stubs.c
@@ -36,14 +36,12 @@
=20
 #include "mmap_stubs.h"
=20
-#define PAGE_SHIFT		12
-#define PAGE_SIZE               (1UL << PAGE_SHIFT)
-#define PAGE_MASK               (~(PAGE_SIZE-1))
-
 #define _H(__h) ((xc_interface *)(__h))
 #define _D(__d) ((uint32_t)Int_val(__d))
=20
+#ifndef Val_none
 #define Val_none (Val_int(0))
+#endif
=20
 #define string_of_option_array(array, index) \
 	((Field(array, index) =3D=3D Val_none) ? NULL : String_val(Field(Field(=
array, index), 0)))
@@ -818,7 +816,7 @@ CAMLprim value stub_xc_domain_memory_increase_reserva=
tion(value xch,
 	CAMLparam3(xch, domid, mem_kb);
 	int retval;
=20
-	unsigned long nr_extents =3D ((unsigned long)(Int64_val(mem_kb))) >> (P=
AGE_SHIFT - 10);
+	unsigned long nr_extents =3D ((unsigned long)(Int64_val(mem_kb))) >> (X=
C_PAGE_SHIFT - 10);
=20
 	uint32_t c_domid =3D _D(domid);
 	caml_enter_blocking_section();
@@ -924,7 +922,7 @@ CAMLprim value stub_pages_to_kib(value pages)
 {
 	CAMLparam1(pages);
=20
-	CAMLreturn(caml_copy_int64(Int64_val(pages) << (PAGE_SHIFT - 10)));
+	CAMLreturn(caml_copy_int64(Int64_val(pages) << (XC_PAGE_SHIFT - 10)));
 }
=20
=20
diff --git a/tools/ocaml/libs/xentoollog/xentoollog_stubs.c b/tools/ocaml=
/libs/xentoollog/xentoollog_stubs.c
index bf64b211c2..e4306a0c2f 100644
--- a/tools/ocaml/libs/xentoollog/xentoollog_stubs.c
+++ b/tools/ocaml/libs/xentoollog/xentoollog_stubs.c
@@ -53,8 +53,12 @@ static char * dup_String_val(value s)
 #include "_xtl_levels.inc"
=20
 /* Option type support as per http://www.linux-nantes.org/~fmonnier/ocam=
l/ocaml-wrapping-c.php */
+#ifndef Val_none
 #define Val_none Val_int(0)
+#endif
+#ifndef Some_val
 #define Some_val(v) Field(v,0)
+#endif
=20
 static value Val_some(value v)
 {
diff --git a/tools/ocaml/libs/xl/xenlight_stubs.c b/tools/ocaml/libs/xl/x=
enlight_stubs.c
index 352a00134d..45b8af61c7 100644
--- a/tools/ocaml/libs/xl/xenlight_stubs.c
+++ b/tools/ocaml/libs/xl/xenlight_stubs.c
@@ -227,8 +227,12 @@ static value Val_string_list(libxl_string_list *c_va=
l)
 }
=20
 /* Option type support as per http://www.linux-nantes.org/~fmonnier/ocam=
l/ocaml-wrapping-c.php */
+#ifndef Val_none
 #define Val_none Val_int(0)
+#endif
+#ifndef Some_val
 #define Some_val(v) Field(v,0)
+#endif
=20
 static value Val_some(value v)
 {
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 11:28:45 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:28:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120478.227886 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRK9-0001MI-7X; Fri, 30 Apr 2021 11:28:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120478.227886; Fri, 30 Apr 2021 11: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 1lcRK9-0001M7-2Z; Fri, 30 Apr 2021 11:28:45 +0000
Received: by outflank-mailman (input) for mailman id 120478;
 Fri, 30 Apr 2021 11:28:43 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcRK7-00011a-FG
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 11:28:43 +0000
Received: from mx.upb.ro (unknown [141.85.13.5])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 8b8d5e40-4c31-4353-af4a-2dcad4b481f4;
 Fri, 30 Apr 2021 11:28:23 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 08F08B56010D;
 Fri, 30 Apr 2021 14:28:23 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id mrlJ3fkq2pCv; Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id B17A3B56011F;
 Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id tM1YPzA45zOA; Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
Received: from localhost.localdomain (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 3B6CBB56011C;
 Fri, 30 Apr 2021 14:28:19 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8b8d5e40-4c31-4353-af4a-2dcad4b481f4
X-Virus-Scanned: amavisd-new at upb.ro
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v2 3/5] tools/libs/foreignmemory: Fix PAGE_SIZE redefinition error
Date: Fri, 30 Apr 2021 14:28:09 +0300
Message-Id: <3ddcf2cc440eba6869cb26455510e7d6a123a1c1.1619781564.git.costin.lupu@cs.pub.ro>
X-Mailer: git-send-email 2.20.1
In-Reply-To: <cover.1619781564.git.costin.lupu@cs.pub.ro>
References: <cover.1619781564.git.costin.lupu@cs.pub.ro>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

If PAGE_SIZE is already defined in the system (e.g. in /usr/include/limit=
s.h
header) then gcc will trigger a redefinition error because of -Werror. Th=
is
patch replaces usage of PAGE_* macros with XC_PAGE_* macros in order to a=
void
confusion between control domain page granularity (PAGE_* definitions) an=
d
guest domain page granularity (which is what we are dealing with here).

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
---
 tools/libs/foreignmemory/core.c    |  2 +-
 tools/libs/foreignmemory/freebsd.c | 10 +++++-----
 tools/libs/foreignmemory/linux.c   | 23 ++++++++++++-----------
 tools/libs/foreignmemory/minios.c  |  2 +-
 tools/libs/foreignmemory/netbsd.c  | 10 +++++-----
 tools/libs/foreignmemory/private.h |  9 +--------
 6 files changed, 25 insertions(+), 31 deletions(-)

diff --git a/tools/libs/foreignmemory/core.c b/tools/libs/foreignmemory/c=
ore.c
index 28ec311af1..7edc6f0dbf 100644
--- a/tools/libs/foreignmemory/core.c
+++ b/tools/libs/foreignmemory/core.c
@@ -202,7 +202,7 @@ int xenforeignmemory_resource_size(
     if ( rc )
         return rc;
=20
-    *size =3D fres.nr_frames << PAGE_SHIFT;
+    *size =3D fres.nr_frames << XC_PAGE_SHIFT;
     return 0;
 }
=20
diff --git a/tools/libs/foreignmemory/freebsd.c b/tools/libs/foreignmemor=
y/freebsd.c
index d94ea07862..2cf0fa1c38 100644
--- a/tools/libs/foreignmemory/freebsd.c
+++ b/tools/libs/foreignmemory/freebsd.c
@@ -63,7 +63,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_handl=
e *fmem,
     privcmd_mmapbatch_t ioctlx;
     int rc;
=20
-    addr =3D mmap(addr, num << PAGE_SHIFT, prot, flags | MAP_SHARED, fd,=
 0);
+    addr =3D mmap(addr, num << XC_PAGE_SHIFT, prot, flags | MAP_SHARED, =
fd, 0);
     if ( addr =3D=3D MAP_FAILED )
         return NULL;
=20
@@ -78,7 +78,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_handl=
e *fmem,
     {
         int saved_errno =3D errno;
=20
-        (void)munmap(addr, num << PAGE_SHIFT);
+        (void)munmap(addr, num << XC_PAGE_SHIFT);
         errno =3D saved_errno;
         return NULL;
     }
@@ -89,7 +89,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_handl=
e *fmem,
 int osdep_xenforeignmemory_unmap(xenforeignmemory_handle *fmem,
                                  void *addr, size_t num)
 {
-    return munmap(addr, num << PAGE_SHIFT);
+    return munmap(addr, num << XC_PAGE_SHIFT);
 }
=20
 int osdep_xenforeignmemory_restrict(xenforeignmemory_handle *fmem,
@@ -101,7 +101,7 @@ int osdep_xenforeignmemory_restrict(xenforeignmemory_=
handle *fmem,
 int osdep_xenforeignmemory_unmap_resource(xenforeignmemory_handle *fmem,
                                         xenforeignmemory_resource_handle=
 *fres)
 {
-    return fres ? munmap(fres->addr, fres->nr_frames << PAGE_SHIFT) : 0;
+    return fres ? munmap(fres->addr, fres->nr_frames << XC_PAGE_SHIFT) :=
 0;
 }
=20
 int osdep_xenforeignmemory_map_resource(xenforeignmemory_handle *fmem,
@@ -120,7 +120,7 @@ int osdep_xenforeignmemory_map_resource(xenforeignmem=
ory_handle *fmem,
         /* Request for resource size.  Skip mmap(). */
         goto skip_mmap;
=20
-    fres->addr =3D mmap(fres->addr, fres->nr_frames << PAGE_SHIFT,
+    fres->addr =3D mmap(fres->addr, fres->nr_frames << XC_PAGE_SHIFT,
                       fres->prot, fres->flags | MAP_SHARED, fmem->fd, 0)=
;
     if ( fres->addr =3D=3D MAP_FAILED )
         return -1;
diff --git a/tools/libs/foreignmemory/linux.c b/tools/libs/foreignmemory/=
linux.c
index c1f35e2db7..a5f6d62567 100644
--- a/tools/libs/foreignmemory/linux.c
+++ b/tools/libs/foreignmemory/linux.c
@@ -134,7 +134,7 @@ static int retry_paged(int fd, uint32_t dom, void *ad=
dr,
         /* At least one gfn is still in paging state */
         ioctlx.num =3D 1;
         ioctlx.dom =3D dom;
-        ioctlx.addr =3D (unsigned long)addr + (i<<PAGE_SHIFT);
+        ioctlx.addr =3D (unsigned long)addr + (i<<XC_PAGE_SHIFT);
         ioctlx.arr =3D arr + i;
         ioctlx.err =3D err + i;
=20
@@ -168,7 +168,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_han=
dle *fmem,
     size_t i;
     int rc;
=20
-    addr =3D mmap(addr, num << PAGE_SHIFT, prot, flags | MAP_SHARED,
+    addr =3D mmap(addr, num << XC_PAGE_SHIFT, prot, flags | MAP_SHARED,
                 fd, 0);
     if ( addr =3D=3D MAP_FAILED )
         return NULL;
@@ -198,9 +198,10 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_ha=
ndle *fmem,
          */
         privcmd_mmapbatch_t ioctlx;
         xen_pfn_t *pfn;
-        unsigned int pfn_arr_size =3D ROUNDUP((num * sizeof(*pfn)), PAGE=
_SHIFT);
+        unsigned int pfn_arr_size =3D ROUNDUP((num * sizeof(*pfn)), XC_P=
AGE_SHIFT);
+        int os_page_size =3D getpagesize();
=20
-        if ( pfn_arr_size <=3D PAGE_SIZE )
+        if ( pfn_arr_size <=3D os_page_size )
             pfn =3D alloca(num * sizeof(*pfn));
         else
         {
@@ -209,7 +210,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_han=
dle *fmem,
             if ( pfn =3D=3D MAP_FAILED )
             {
                 PERROR("mmap of pfn array failed");
-                (void)munmap(addr, num << PAGE_SHIFT);
+                (void)munmap(addr, num << XC_PAGE_SHIFT);
                 return NULL;
             }
         }
@@ -242,7 +243,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_han=
dle *fmem,
                     continue;
                 }
                 rc =3D map_foreign_batch_single(fd, dom, pfn + i,
-                        (unsigned long)addr + (i<<PAGE_SHIFT));
+                        (unsigned long)addr + (i<<XC_PAGE_SHIFT));
                 if ( rc < 0 )
                 {
                     rc =3D -errno;
@@ -254,7 +255,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_han=
dle *fmem,
             break;
         }
=20
-        if ( pfn_arr_size > PAGE_SIZE )
+        if ( pfn_arr_size > os_page_size )
             munmap(pfn, pfn_arr_size);
=20
         if ( rc =3D=3D -ENOENT && i =3D=3D num )
@@ -270,7 +271,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_han=
dle *fmem,
     {
         int saved_errno =3D errno;
=20
-        (void)munmap(addr, num << PAGE_SHIFT);
+        (void)munmap(addr, num << XC_PAGE_SHIFT);
         errno =3D saved_errno;
         return NULL;
     }
@@ -281,7 +282,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_han=
dle *fmem,
 int osdep_xenforeignmemory_unmap(xenforeignmemory_handle *fmem,
                                  void *addr, size_t num)
 {
-    return munmap(addr, num << PAGE_SHIFT);
+    return munmap(addr, num << XC_PAGE_SHIFT);
 }
=20
 int osdep_xenforeignmemory_restrict(xenforeignmemory_handle *fmem,
@@ -293,7 +294,7 @@ int osdep_xenforeignmemory_restrict(xenforeignmemory_=
handle *fmem,
 int osdep_xenforeignmemory_unmap_resource(
     xenforeignmemory_handle *fmem, xenforeignmemory_resource_handle *fre=
s)
 {
-    return fres ? munmap(fres->addr, fres->nr_frames << PAGE_SHIFT) : 0;
+    return fres ? munmap(fres->addr, fres->nr_frames << XC_PAGE_SHIFT) :=
 0;
 }
=20
 int osdep_xenforeignmemory_map_resource(
@@ -312,7 +313,7 @@ int osdep_xenforeignmemory_map_resource(
         /* Request for resource size.  Skip mmap(). */
         goto skip_mmap;
=20
-    fres->addr =3D mmap(fres->addr, fres->nr_frames << PAGE_SHIFT,
+    fres->addr =3D mmap(fres->addr, fres->nr_frames << XC_PAGE_SHIFT,
                       fres->prot, fres->flags | MAP_SHARED, fmem->fd, 0)=
;
     if ( fres->addr =3D=3D MAP_FAILED )
         return -1;
diff --git a/tools/libs/foreignmemory/minios.c b/tools/libs/foreignmemory=
/minios.c
index 43341ca301..c5453736d5 100644
--- a/tools/libs/foreignmemory/minios.c
+++ b/tools/libs/foreignmemory/minios.c
@@ -55,7 +55,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_handl=
e *fmem,
 int osdep_xenforeignmemory_unmap(xenforeignmemory_handle *fmem,
                                  void *addr, size_t num)
 {
-    return munmap(addr, num << PAGE_SHIFT);
+    return munmap(addr, num << XC_PAGE_SHIFT);
 }
=20
 /*
diff --git a/tools/libs/foreignmemory/netbsd.c b/tools/libs/foreignmemory=
/netbsd.c
index c0b1b8f79d..597db775d7 100644
--- a/tools/libs/foreignmemory/netbsd.c
+++ b/tools/libs/foreignmemory/netbsd.c
@@ -76,7 +76,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_handl=
e *fmem,
 {
     int fd =3D fmem->fd;
     privcmd_mmapbatch_v2_t ioctlx;
-    addr =3D mmap(addr, num * PAGE_SIZE, prot,
+    addr =3D mmap(addr, num * XC_PAGE_SIZE, prot,
                 flags | MAP_ANON | MAP_SHARED, -1, 0);
     if ( addr =3D=3D MAP_FAILED ) {
         PERROR("osdep_xenforeignmemory_map: mmap failed");
@@ -93,7 +93,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_handl=
e *fmem,
     {
         int saved_errno =3D errno;
         PERROR("osdep_xenforeignmemory_map: ioctl failed");
-        munmap(addr, num * PAGE_SIZE);
+        munmap(addr, num * XC_PAGE_SIZE);
         errno =3D saved_errno;
         return NULL;
     }
@@ -104,7 +104,7 @@ void *osdep_xenforeignmemory_map(xenforeignmemory_han=
dle *fmem,
 int osdep_xenforeignmemory_unmap(xenforeignmemory_handle *fmem,
                                  void *addr, size_t num)
 {
-    return munmap(addr, num * PAGE_SIZE);
+    return munmap(addr, num * XC_PAGE_SIZE);
 }
=20
 int osdep_xenforeignmemory_restrict(xenforeignmemory_handle *fmem,
@@ -117,7 +117,7 @@ int osdep_xenforeignmemory_restrict(xenforeignmemory_=
handle *fmem,
 int osdep_xenforeignmemory_unmap_resource(
     xenforeignmemory_handle *fmem, xenforeignmemory_resource_handle *fre=
s)
 {
-    return fres ? munmap(fres->addr, fres->nr_frames << PAGE_SHIFT) : 0;
+    return fres ? munmap(fres->addr, fres->nr_frames << XC_PAGE_SHIFT) :=
 0;
 }
=20
 int osdep_xenforeignmemory_map_resource(
@@ -136,7 +136,7 @@ int osdep_xenforeignmemory_map_resource(
         /* Request for resource size.  Skip mmap(). */
         goto skip_mmap;
=20
-    fres->addr =3D mmap(fres->addr, fres->nr_frames << PAGE_SHIFT,
+    fres->addr =3D mmap(fres->addr, fres->nr_frames << XC_PAGE_SHIFT,
                       fres->prot, fres->flags | MAP_ANON | MAP_SHARED, -=
1, 0);
     if ( fres->addr =3D=3D MAP_FAILED )
         return -1;
diff --git a/tools/libs/foreignmemory/private.h b/tools/libs/foreignmemor=
y/private.h
index 1ee3626dd2..65fe77aa5b 100644
--- a/tools/libs/foreignmemory/private.h
+++ b/tools/libs/foreignmemory/private.h
@@ -1,6 +1,7 @@
 #ifndef XENFOREIGNMEMORY_PRIVATE_H
 #define XENFOREIGNMEMORY_PRIVATE_H
=20
+#include <xenctrl.h>
 #include <xentoollog.h>
=20
 #include <xenforeignmemory.h>
@@ -10,14 +11,6 @@
 #include <xen/xen.h>
 #include <xen/sys/privcmd.h>
=20
-#ifndef PAGE_SHIFT /* Mini-os, Yukk */
-#define PAGE_SHIFT           12
-#endif
-#ifndef __MINIOS__ /* Yukk */
-#define PAGE_SIZE            (1UL << PAGE_SHIFT)
-#define PAGE_MASK            (~(PAGE_SIZE-1))
-#endif
-
 struct xenforeignmemory_handle {
     xentoollog_logger *logger, *logger_tofree;
     unsigned flags;
--=20
2.20.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 11:33:59 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:33:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120506.227897 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRPA-0002VU-0e; Fri, 30 Apr 2021 11:33:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120506.227897; Fri, 30 Apr 2021 11:33: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 1lcRP9-0002VN-U1; Fri, 30 Apr 2021 11:33:55 +0000
Received: by outflank-mailman (input) for mailman id 120506;
 Fri, 30 Apr 2021 11:33:55 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcRP9-0002VI-9M
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 11:33:55 +0000
Received: from mx.upb.ro (unknown [141.85.13.250])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id df915331-e302-4be2-a69f-16228458f10e;
 Fri, 30 Apr 2021 11:33:54 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 4EC59B5600B0;
 Fri, 30 Apr 2021 14:33:53 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id brLUdr8a9wgH; Fri, 30 Apr 2021 14:33:50 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id C95A1B56010D;
 Fri, 30 Apr 2021 14:33:50 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 9cCdlGKaGhQD; Fri, 30 Apr 2021 14:33:50 +0300 (EEST)
Received: from [172.19.2.117] (unknown [141.85.225.204])
 by mx.upb.ro (Postfix) with ESMTPSA id 444E5B5600B0;
 Fri, 30 Apr 2021 14:33:50 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: df915331-e302-4be2-a69f-16228458f10e
X-Virus-Scanned: amavisd-new at upb.ro
Subject: Re: [PATCH v2 5/5] tools/ocaml: Fix redefinition errors
From: Costin Lupu <costin.lupu@cs.pub.ro>
To: xen-devel@lists.xenproject.org
Cc: Christian Lindig <christian.lindig@citrix.com>,
 David Scott <dave@recoil.org>, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>
References: <cover.1619781564.git.costin.lupu@cs.pub.ro>
 <1a8ff6dcdd70fef83828dce47e79eb846860cbe8.1619781564.git.costin.lupu@cs.pub.ro>
Message-ID: <476b0736-3034-b697-a89e-1bb0e5cef4fd@cs.pub.ro>
Date: Fri, 30 Apr 2021 14:33:49 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <1a8ff6dcdd70fef83828dce47e79eb846860cbe8.1619781564.git.costin.lupu@cs.pub.ro>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

@Christian: This version is slightly changed, it uses XC_PAGE_* macros
instead of PAGE_* macros and that's why I didn't add your ack.

Cheers,
Costin

On 4/30/21 2:28 PM, Costin Lupu wrote:
> If PAGE_SIZE is already defined in the system (e.g. in /usr/include/limits.h
> header) then gcc will trigger a redefinition error because of -Werror. This
> patch replaces usage of PAGE_* macros with XC_PAGE_* macros in order to avoid
> confusion between control domain page granularity (PAGE_* definitions) and
> guest domain page granularity (which is what we are dealing with here).
> 
> Same issue applies for redefinitions of Val_none and Some_val macros which
> can be already defined in the OCaml system headers (e.g.
> /usr/lib/ocaml/caml/mlvalues.h).
> 
> Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
> ---
>  tools/ocaml/libs/xc/xenctrl_stubs.c            | 10 ++++------
>  tools/ocaml/libs/xentoollog/xentoollog_stubs.c |  4 ++++
>  tools/ocaml/libs/xl/xenlight_stubs.c           |  4 ++++
>  3 files changed, 12 insertions(+), 6 deletions(-)
> 
> diff --git a/tools/ocaml/libs/xc/xenctrl_stubs.c b/tools/ocaml/libs/xc/xenctrl_stubs.c
> index d05d7bb30e..f9e33e599a 100644
> --- a/tools/ocaml/libs/xc/xenctrl_stubs.c
> +++ b/tools/ocaml/libs/xc/xenctrl_stubs.c
> @@ -36,14 +36,12 @@
>  
>  #include "mmap_stubs.h"
>  
> -#define PAGE_SHIFT		12
> -#define PAGE_SIZE               (1UL << PAGE_SHIFT)
> -#define PAGE_MASK               (~(PAGE_SIZE-1))
> -
>  #define _H(__h) ((xc_interface *)(__h))
>  #define _D(__d) ((uint32_t)Int_val(__d))
>  
> +#ifndef Val_none
>  #define Val_none (Val_int(0))
> +#endif
>  
>  #define string_of_option_array(array, index) \
>  	((Field(array, index) == Val_none) ? NULL : String_val(Field(Field(array, index), 0)))
> @@ -818,7 +816,7 @@ CAMLprim value stub_xc_domain_memory_increase_reservation(value xch,
>  	CAMLparam3(xch, domid, mem_kb);
>  	int retval;
>  
> -	unsigned long nr_extents = ((unsigned long)(Int64_val(mem_kb))) >> (PAGE_SHIFT - 10);
> +	unsigned long nr_extents = ((unsigned long)(Int64_val(mem_kb))) >> (XC_PAGE_SHIFT - 10);
>  
>  	uint32_t c_domid = _D(domid);
>  	caml_enter_blocking_section();
> @@ -924,7 +922,7 @@ CAMLprim value stub_pages_to_kib(value pages)
>  {
>  	CAMLparam1(pages);
>  
> -	CAMLreturn(caml_copy_int64(Int64_val(pages) << (PAGE_SHIFT - 10)));
> +	CAMLreturn(caml_copy_int64(Int64_val(pages) << (XC_PAGE_SHIFT - 10)));
>  }
>  
>  
> diff --git a/tools/ocaml/libs/xentoollog/xentoollog_stubs.c b/tools/ocaml/libs/xentoollog/xentoollog_stubs.c
> index bf64b211c2..e4306a0c2f 100644
> --- a/tools/ocaml/libs/xentoollog/xentoollog_stubs.c
> +++ b/tools/ocaml/libs/xentoollog/xentoollog_stubs.c
> @@ -53,8 +53,12 @@ static char * dup_String_val(value s)
>  #include "_xtl_levels.inc"
>  
>  /* Option type support as per http://www.linux-nantes.org/~fmonnier/ocaml/ocaml-wrapping-c.php */
> +#ifndef Val_none
>  #define Val_none Val_int(0)
> +#endif
> +#ifndef Some_val
>  #define Some_val(v) Field(v,0)
> +#endif
>  
>  static value Val_some(value v)
>  {
> diff --git a/tools/ocaml/libs/xl/xenlight_stubs.c b/tools/ocaml/libs/xl/xenlight_stubs.c
> index 352a00134d..45b8af61c7 100644
> --- a/tools/ocaml/libs/xl/xenlight_stubs.c
> +++ b/tools/ocaml/libs/xl/xenlight_stubs.c
> @@ -227,8 +227,12 @@ static value Val_string_list(libxl_string_list *c_val)
>  }
>  
>  /* Option type support as per http://www.linux-nantes.org/~fmonnier/ocaml/ocaml-wrapping-c.php */
> +#ifndef Val_none
>  #define Val_none Val_int(0)
> +#endif
> +#ifndef Some_val
>  #define Some_val(v) Field(v,0)
> +#endif
>  
>  static value Val_some(value v)
>  {
> 


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 11:37:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:37:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120512.227910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRSD-0002dj-Fv; Fri, 30 Apr 2021 11:37:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120512.227910; Fri, 30 Apr 2021 11: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 1lcRSD-0002dc-Cl; Fri, 30 Apr 2021 11:37:05 +0000
Received: by outflank-mailman (input) for mailman id 120512;
 Fri, 30 Apr 2021 11:37:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcRSC-0002dX-7m
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 11:37:04 +0000
Received: from mx.upb.ro (unknown [141.85.13.200])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5102e814-acd8-4866-9e3f-63886b5c6309;
 Fri, 30 Apr 2021 11:37:03 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id CD88DB5600B0;
 Fri, 30 Apr 2021 14:37:02 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id cjCDSrUcsMWO; Fri, 30 Apr 2021 14:37:01 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 0CB7EB560113;
 Fri, 30 Apr 2021 14:37:01 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id PkeEyZ_z53MC; Fri, 30 Apr 2021 14:37:00 +0300 (EEST)
Received: from [192.168.1.35] (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id 34DCBB5600B0;
 Fri, 30 Apr 2021 14:37:00 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5102e814-acd8-4866-9e3f-63886b5c6309
X-Virus-Scanned: amavisd-new at upb.ro
Subject: Re: [PATCH 1/5] tools/debugger: Fix PAGE_SIZE redefinition error
To: Tim Deegan <tim@xen.org>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <0cd234096c9bfa8d29eac9906553af79d378733e.1619524463.git.costin.lupu@cs.pub.ro>
 <YIsP5z1ejJbUhmPc@deinos.phlegethon.org>
From: Costin Lupu <costin.lupu@cs.pub.ro>
Message-ID: <128f6672-eec7-fc8b-d43c-1e53d93d93b0@cs.pub.ro>
Date: Fri, 30 Apr 2021 14:36:59 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YIsP5z1ejJbUhmPc@deinos.phlegethon.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Hi Tim,

On 4/29/21 10:58 PM, Tim Deegan wrote:
> Hi,
> 
> At 15:05 +0300 on 27 Apr (1619535916), Costin Lupu wrote:
>> If PAGE_SIZE is already defined in the system (e.g. in
>> /usr/include/limits.h header) then gcc will trigger a redefinition error
>> because of -Werror. This commit also protects PAGE_SHIFT definitions for
>> keeping consistency.
> 
> Thanks for looking into this!  I think properly speaking we should fix
> this by defining KDD_PAGE_SHIFT and KDD_PAGE_SIZE in kdd.h and using
> those everywhere we currently use PAGE_SIZE/PAGE_SHIFT. in kdd.c and
> kdd-xen.c.  If for some reason we ever ended up with a system-defined
> PAGE_SIZE that wasn't 4096u then we would not want to use it here
> because it would break our guest operations.

As discussed for another patch of the series, an agreed solution that
would apply for other libs as well would be to use XC_PAGE_* macros
instead of PAGE_* macros. I've just sent a v2 doing that. Please let me
know if you think it would be better to introduce the KDD_PAGE_*
definitions instead.

Cheers,
Costin


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 11:47:00 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 11:47:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120517.227921 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRbh-0003Z4-Ds; Fri, 30 Apr 2021 11:46:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120517.227921; Fri, 30 Apr 2021 11:46: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 1lcRbh-0003Yx-Ax; Fri, 30 Apr 2021 11:46:53 +0000
Received: by outflank-mailman (input) for mailman id 120517;
 Fri, 30 Apr 2021 11:46:51 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lcRbf-0003Yp-MG; Fri, 30 Apr 2021 11:46:51 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lcRbf-0001VU-G6; Fri, 30 Apr 2021 11:46:51 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1lcRbf-0007qF-8Y; Fri, 30 Apr 2021 11:46:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcRbf-0000FZ-7m; Fri, 30 Apr 2021 11:46: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=ofwk5vcRawG2VdoM3lGx6Jeh1jD6RS5VWRuVQ/vTFtE=; b=o0DelCLJ9s9/SDnSFTGrHjKE/1
	cTRppIpQJIIRDP2DXqrqswteGgaPD5RPkrt0nosto0CN8yhaM9/Nq+G3rdb0sY7ri68AS4FLqc74r
	pKb/OU5yKjs1IKJSgkGx+/sEdY5ZCWUTT5iauMKDjA7mzxcyV9Gn5PDKRJaQwHj+/HL4=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161534-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 161534: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-xtf-amd64-amd64-3:xtf/test-pv32pae-xsa-286:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-start/debianhvm.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-examine:memdisk-try-append:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-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-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check: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-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-seattle:saverestore-support-check: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-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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm: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-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-amd64-amd64-libvirt-vhd: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
X-Osstest-Versions-That:
    xen=972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 11:46:51 +0000

flight 161534 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161534/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-xtf-amd64-amd64-3 92 xtf/test-pv32pae-xsa-286 fail in 161512 pass in 161534
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 20 guest-start/debianhvm.repeat fail in 161512 pass in 161534
 test-amd64-amd64-examine      4 memdisk-try-append         fail pass in 161512

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 161512
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 161512
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 161512
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 161512
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 161512
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 161512
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 161512
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 161512
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 161512
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 161512
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 161512
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-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-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                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3
baseline version:
 xen                  972ba1d1d4bcb77018b50fd2bb63c0e628859ed3

Last test of basis   161534  2021-04-29 21:04:23 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-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-armhf-armhf-xl-cubietruck                               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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 12:05:55 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 12:05:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120529.227936 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRu1-0005PJ-BN; Fri, 30 Apr 2021 12:05:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120529.227936; Fri, 30 Apr 2021 12:05:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcRu1-0005PC-8T; Fri, 30 Apr 2021 12:05:49 +0000
Received: by outflank-mailman (input) for mailman id 120529;
 Fri, 30 Apr 2021 12:05:48 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nnn9=J3=goodmis.org=rostedt@kernel.org>)
 id 1lcRu0-0005P7-Q3
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 12:05:48 +0000
Received: from mail.kernel.org (unknown [198.145.29.99])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ffb5ea80-1b43-4ccc-a9bd-5422deb8333f;
 Fri, 30 Apr 2021 12:05:48 +0000 (UTC)
Received: from oasis.local.home (cpe-66-24-58-225.stny.res.rr.com
 [66.24.58.225])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mail.kernel.org (Postfix) with ESMTPSA id 85786613EF;
 Fri, 30 Apr 2021 12:05: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: ffb5ea80-1b43-4ccc-a9bd-5422deb8333f
Date: Fri, 30 Apr 2021 08:05:42 -0400
From: Steven Rostedt <rostedt@goodmis.org>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Lai Jiangshan <jiangshanlai@gmail.com>, linux-kernel@vger.kernel.org,
 Lai Jiangshan <laijs@linux.alibaba.com>, Thomas Gleixner
 <tglx@linutronix.de>, Sean Christopherson <seanjc@google.com>, Andi Kleen
 <ak@linux.intel.com>, Andy Lutomirski <luto@kernel.org>, Vitaly Kuznetsov
 <vkuznets@redhat.com>, Wanpeng Li <wanpengli@tencent.com>, Jim Mattson
 <jmattson@google.com>, Joerg Roedel <joro@8bytes.org>, kvm@vger.kernel.org,
 Josh Poimboeuf <jpoimboe@redhat.com>, Uros Bizjak <ubizjak@gmail.com>,
 Maxim Levitsky <mlevitsk@redhat.com>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, x86@kernel.org, "H. Peter Anvin"
 <hpa@zytor.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, Juergen
 Gross <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>, Peter
 Zijlstra <peterz@infradead.org>, Alexandre Chartre
 <alexandre.chartre@oracle.com>, Joerg Roedel <jroedel@suse.de>, Jian Cai
 <caij2003@gmail.com>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH 1/4] x86/xen/entry: Rename xenpv_exc_nmi to
 noist_exc_nmi
Message-ID: <20210430080542.5d42d169@oasis.local.home>
In-Reply-To: <d77ee423-53fc-d552-1ff8-6fdf75e416a7@redhat.com>
References: <20210426230949.3561-1-jiangshanlai@gmail.com>
	<20210426230949.3561-2-jiangshanlai@gmail.com>
	<20210428172714.53adac43@gandalf.local.home>
	<d77ee423-53fc-d552-1ff8-6fdf75e416a7@redhat.com>
X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Fri, 30 Apr 2021 09:15:51 +0200
Paolo Bonzini <pbonzini@redhat.com> wrote:

> > Nit, but in change logs, please avoid stating "next patch" as searching git
> > history (via git blame or whatever) there is no such thing as "next patch".  
> 
> Interesting, I use next patch(es) relatively often, though you're right 
> that something like "in preparation for" works just as well.  Yes, it's 
> the previous in "git log", but you get what it's meant in practice. :)

It's not always the previous in a git log. Git log sorts by time, and
if an unrelated commit was created in between those two patches, it
will be in between them.

-- Steve


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 13:26:20 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 13:26:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120543.227955 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcT9h-0003lf-GL; Fri, 30 Apr 2021 13:26:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120543.227955; Fri, 30 Apr 2021 13:26:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcT9h-0003lY-Cn; Fri, 30 Apr 2021 13:26:05 +0000
Received: by outflank-mailman (input) for mailman id 120543;
 Fri, 30 Apr 2021 13:26:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=963z=J3=vps.thesusis.net=psusi@srs-us1.protection.inumbo.net>)
 id 1lcT9f-0003lT-QJ
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 13:26:03 +0000
Received: from vps.thesusis.net (unknown [34.202.238.73])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id ba49aaa2-4e07-4d07-9943-3ba45d313928;
 Fri, 30 Apr 2021 13:26:03 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by vps.thesusis.net (Postfix) with ESMTP id DE4482ED16;
 Fri, 30 Apr 2021 09:26:02 -0400 (EDT)
Received: from vps.thesusis.net ([127.0.0.1])
 by localhost (vps.thesusis.net [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id sFHONqrJWNCf; Fri, 30 Apr 2021 09:26:02 -0400 (EDT)
Received: by vps.thesusis.net (Postfix, from userid 1000)
 id 6F1D82ED15; Fri, 30 Apr 2021 09:26:02 -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: ba49aaa2-4e07-4d07-9943-3ba45d313928
References: <87o8dw52jc.fsf@vps.thesusis.net> <87fsz84zn1.fsf@vps.thesusis.net> <YIszOwADJ8jdBov8@google.com>
User-agent: mu4e 1.5.7; emacs 26.3
From: Phillip Susi <phill@thesusis.net>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: xen-devel@lists.xenproject.org, linux-input@vger.kernel.org
Subject: Re: Xen Virtual Keyboard modalias breaking uevents
Date: Fri, 30 Apr 2021 09:16:57 -0400
In-reply-to: <YIszOwADJ8jdBov8@google.com>
Message-ID: <87bl9vaoph.fsf@vps.thesusis.net>
MIME-Version: 1.0
Content-Type: text/plain


Dmitry Torokhov writes:

> I don't know why Xen keyboard exports that many keycodes ;) In general,
> my recommendation is to mirror the physical device when possible, and
> instantiate several devices so there is 1:1 relationship between virtual
> and physical devices.

I'm still trying to wrap my head around why keys are even declared in
the first place.  PS/2 ports have no idea what keys are on the keyboard
plugged into them, so I guess they don't declare any?  And that doesn't
stop them from emitting any of the scan codes, so what is the use in
declaring them in the first place?

A lot of "interesting" buttons don't seem very interesting to me, such
as left and right parenthesis.  Is a user space mail program really
going to bypass X11/wayland and open input devices directly to look for
someone to press the "send mail" key?  Even if it did, why would it only
want to open a keyboard that advertises that it has such a key instead
of listening to all keyboards?  Even if all USB keyboards report all of
their special keys, the fact that you could still have a PS/2 keyboard
that has a "send mail" key on it means that the reporting function can
not be relied on and so you just have to listen on all keyboards anyhow.

I guess as long as not reporting keys doesn't stop you from using them,
then the Xen Virtual Keyboard driver should just report none, like the
PS/2 keyboard driver.


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 14:16:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 14:16:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120549.227967 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcTwY-00081u-AS; Fri, 30 Apr 2021 14:16:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120549.227967; Fri, 30 Apr 2021 14:16:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcTwY-00081n-5C; Fri, 30 Apr 2021 14:16:34 +0000
Received: by outflank-mailman (input) for mailman id 120549;
 Fri, 30 Apr 2021 14:16:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcTwW-00081i-Aa
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 14:16:32 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 93a7280f-54a6-424b-a909-c40bd9515a44;
 Fri, 30 Apr 2021 14:16:30 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 2D416B2E6;
 Fri, 30 Apr 2021 14:16: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: 93a7280f-54a6-424b-a909-c40bd9515a44
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619792190; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=nnQVtQjBqJUlKQCYrowT+qW7Ri3Viohkvu4QRHqvtJc=;
	b=kyWcGUdEfpRI1F4rzgbEZl/BKGwW/aSbd1Yb1fQXTaF5NsnzReMKymFNDK7ANbfLIcaSuA
	RMs0afHjuZCTn+Ana4ipr1v9i513Xx3O+PL5EbySBbaNTlaDVgaFnmph39QSeHCFB7CHLq
	50FQhZunt/6BayE95GDnlQKkPm8tuWE=
Subject: Re: [PATCH v2 09/12] x86: make mem-paging configuarable and default
 it to off for being unsupported
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>, Ian Jackson <iwj@xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Daniel de Graaf <dgdegra@tycho.nsa.gov>,
 Paul Durrant <paul@xen.org>, Tamas K Lengyel <tamas@tklengyel.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>,
 Alexandru Isaila <aisaila@bitdefender.com>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
 <YIvUJqtdsOLia8nc@Air-de-Roger>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <143b84c7-84dd-6b36-997e-a38718651723@suse.com>
Date: Fri, 30 Apr 2021 16:16:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <YIvUJqtdsOLia8nc@Air-de-Roger>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 30.04.2021 11:55, Roger Pau Monné wrote:
> On Mon, Apr 12, 2021 at 04:12:41PM +0200, Jan Beulich wrote:
>> --- a/xen/arch/x86/x86_64/compat/mm.c
>> +++ b/xen/arch/x86/x86_64/compat/mm.c
>> @@ -155,8 +155,10 @@ int compat_arch_memory_op(unsigned long
>>      case XENMEM_get_sharing_shared_pages:
>>          return mem_sharing_get_nr_shared_mfns();
>>  
>> +#ifdef CONFIG_MEM_PAGING
>>      case XENMEM_paging_op:
>>          return mem_paging_memop(guest_handle_cast(arg, xen_mem_paging_op_t));
>> +#endif
>>  
>>  #ifdef CONFIG_MEM_SHARING
>>      case XENMEM_sharing_op:
>> --- a/xen/arch/x86/x86_64/mm.c
>> +++ b/xen/arch/x86/x86_64/mm.c
>> @@ -994,8 +994,10 @@ long subarch_memory_op(unsigned long cmd
>>      case XENMEM_get_sharing_shared_pages:
>>          return mem_sharing_get_nr_shared_mfns();
>>  
>> +#ifdef CONFIG_MEM_PAGING
>>      case XENMEM_paging_op:
>>          return mem_paging_memop(guest_handle_cast(arg, xen_mem_paging_op_t));
>> +#endif
> 
> I would create a dummy handler when !CONFIG_MEM_PAGING in
> asm-x86/mem_paging.h.

I was simply following the neighboring mem-sharing approach,
which you've stripped here, but which is still visible in the
xen/arch/x86/x86_64/compat/mm.c change above. I think the two
are helpful to be similar in such aspects.

>> --- a/xen/include/asm-x86/p2m.h
>> +++ b/xen/include/asm-x86/p2m.h
>> @@ -136,11 +136,16 @@ typedef unsigned int p2m_query_t;
>>  #define P2M_PAGEABLE_TYPES (p2m_to_mask(p2m_ram_rw) \
>>                              | p2m_to_mask(p2m_ram_logdirty) )
>>  
>> +#ifdef CONFIG_MEM_PAGING
>>  #define P2M_PAGING_TYPES (p2m_to_mask(p2m_ram_paging_out)        \
>>                            | p2m_to_mask(p2m_ram_paged)           \
>>                            | p2m_to_mask(p2m_ram_paging_in))
>>  
>>  #define P2M_PAGED_TYPES (p2m_to_mask(p2m_ram_paged))
>> +#else
>> +#define P2M_PAGING_TYPES 0
>> +#define P2M_PAGED_TYPES 0
>> +#endif
> 
> Since you don't guard the p2m related paged types in p2m_type_t is it
> worth having diverging P2M_{PAGING/PAGED}_TYPES?
> 
> I guess it might be required in order to force the compiler to DCE
> without having to add yet more CONFIG_MEM_PAGING guards?

Indeed, this is the reason.

> I don't really have a strong opinion on whether the code should be
> removed, IMO it's best to start by making it off by default at build
> time and remove it in a later release?

Matches my way of thinking. I also wouldn't want to be the one to
delete code completely out of the blue.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 14:37:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 14:37:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120555.227981 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUGk-0001Rx-0d; Fri, 30 Apr 2021 14:37:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120555.227981; Fri, 30 Apr 2021 14:37: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 1lcUGj-0001Rq-Tx; Fri, 30 Apr 2021 14:37:25 +0000
Received: by outflank-mailman (input) for mailman id 120555;
 Fri, 30 Apr 2021 14:37:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=A3Ge=J3=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lcUGi-0001Rl-GM
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 14:37:24 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 86d06d5c-be08-4b5a-9e24-334942e39fa1;
 Fri, 30 Apr 2021 14:37: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: 86d06d5c-be08-4b5a-9e24-334942e39fa1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619793442;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Ks5QqTy87fA4LOTzs9bca1tHdSzeC1IxbYhhfpA/iEg=;
  b=DvHs1f4JLZuruBuZkVaf7jh+yDkrpJ4gKb6aLIGXkBwz9ziA+8v73wQX
   NNpSEmeCGs6dVyW0+mz5Jj0Bg7Qyef3YoEto2Y1NcgGdubwqUH71WOaac
   DnHMmOipWw/1bN7ysTy3Me3AcdHqgXMgcMM+0956vBr4xZq378Tz1PBh1
   w=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: DZbleYGSfGGOvS4orvI060mpejXleVr7Pl4M2V3MkenXlgE1eANX5/ElKyW/K9yZnt+7IY3HZL
 N6rK7ldxbHkLfYC4Sz0kJPwK1c14iHOJ/0OSg2otyewTkLpz4lirs4mvoIQA0Z24++AO/8RHLm
 a9Gmw84wKfuvoyM/h7QKijvMo3jcAJ7Z5FKS/PRXCnGFKvcUDX0F3UJ3ZLbv8yEQi7SWqnKWn8
 s5VaTm7j1mt20Ha5hKjGkjM9hzdkF4OIwQ4/XWeBNb7R+ftiJU4726UA2J3ywOM6Lc+XJaM785
 hB8=
X-SBRS: 5.1
X-MesageID: 42618853
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:lPZVWq4u8Vur5BoeaQPXwTOBI+orLtY04lQ7vn1ZYQBJc8Ceis
 CllOka0xixszoKRHQ8g7m7VZWoa3Xa6JJz/M0tLa6vNTOW31eAAaNDyc/ZwzPmEzDj7eI178
 1dWoV3FdGYNzdHpOng5g3QKbgd6fmBtJulnOLPi0pqJDsaCJ1IyydcJkKlHlZtRA9AbKBJcK
 a0wsZcvTKvdTA2Q62AZkUtZOTIq93VmJ+OW3dvayIP0wWAgSil77T3CXGjr3UjeghC3Ks49i
 z9mxH5j5/Jj9iA1hTe22XPhq4m/efJ990rPq2xo/lQEBrAoEKCZINtW7qN1QpF3N2H2RIRv/
 Tn5zslN8R3wXvNcm+yuguF4Xie7B8er0XM5HXdrXz/odHoZD9SMbs+uatpNiH3xmBlnNZg3L
 lF12iU3qAnfC/orWDGyPXjEzRJ/3DEx0YKoKoooFF0FbY6Uvt3q7cS+UtEea1wZh7S2cQcP8
 RFSP3H6O0+SyLiU1np+lNB7faLRXoJEhKPUiE5y7Go+gkTpnx/wkcCrfZv5ksoxdY4Q5lA0e
 zOLr5lorFIVtMXdqJwHo46MLCKNlA=
X-IronPort-AV: E=Sophos;i="5.82,262,1613451600"; 
   d="scan'208";a="42618853"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KdaXs7meDncAoWT4N/Fuk82j9DDGdLwXj+X6bjfv2aSCsLpC0Hhr1udXFdgu8+KbbHHRlVTepUrRoBpHRm8sUaNtb3skVlnuSWFUnXLz8WpUvM8qcMl7zahiRNv6um0FoLzyvFPmZibNzlMzDvt6JkzlPVxPbng/bHoXqWsnggFQCMPqaQy60pZiM1jiul8jPr3DZo/Zj8+gYr+KE2AJpLXN630tj5MJUlE7uQTlp7GHWbbehD3AQ3bPVs8mkDAfidKBXhQndEpI2BKYSO5IBve/gBIEtx27nTu+OO+z8rXttQPh7W3OFQFc/+iefu9/weBxiQw1BkC4gcnER1aM9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ehLA4x5CNAUoyPN7SOlV8lVmFAdHvptm88ghkQ8wJhQ=;
 b=RPE21E9NPxxpAW086DvA/1ZI3Do2PrGY81gJooEUXEm3kvNaRNT5FwiNwyEDDYltt5oA7/yyXOkSzCpCLZ8lYfcyaqAtttUqnwNAVlgfCMKnUdivc/FRuHQWcvhm8eLuURAiXdxUdB0XHHfyBYPp5CWxxqqt3iOgQg7jKxY7YWSu0H7L8CqjjRPccx76b/oloOvlt0+5zFLLIF1DNwSZ2/WIf+IU7KtwTiUt5BShyrqEw/383D05KTaPGQGFjpW0rozHYxEsVTesBm6v+r27iV9TD3OfICE/QNsLdPCIyjGUaV6mtlHBAfwthmQmBi6yNmOnQ/9F3saftQn4CgpNyw==
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=ehLA4x5CNAUoyPN7SOlV8lVmFAdHvptm88ghkQ8wJhQ=;
 b=GgJUl1jQBHViIH38TsFW62lvLkNRy8iNdMPqkq1VBCPtBReOgIx8Xg1xK+ZxNhrX5Y1iATd7BZG8mS1mgVqTRLx1CJGixL1DEyQ90vVFQk4rkksxTAG2/ppkFlQWc/xMhg/JgI3+ZfQj4zw6BecpGekYhX9NFFVj5L3tDaNwxZA=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210429221223.28348-1-andrew.cooper3@citrix.com>
 <4781e8f1-d70b-2736-364c-eeed61869031@suse.com>
 <5b1938c7-408a-5912-7e66-b5e207e268bd@citrix.com>
 <1150e1b5-c6a1-7685-8775-0e4039dbc903@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86: Always have CR4.PKE set in HVM context
Message-ID: <d7628aff-78e5-c557-0498-b7a60a756b89@citrix.com>
Date: Fri, 30 Apr 2021 15:37:12 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <1150e1b5-c6a1-7685-8775-0e4039dbc903@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO4P123CA0352.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18d::15) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 5c359654-2eeb-45af-00d4-08d90be574e6
X-MS-TrafficTypeDiagnostic: BY5PR03MB5346:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BY5PR03MB53468353295C6529111FCE9BBA5E9@BY5PR03MB5346.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: BJPyuEmGLZ2tVvQO7uDkcJyoX9bEm4JvvRByfkrTEzOnaRNnwqnc+SpqO0klYOz9U5RiXGxY+KgoyR6+aOwd0jc99vIRhao1UhM5TVOtax8KqXPZwzqocvRgGzCZPxF5tkkRXeYzpzNoZtK1h/D4EkQPB1/j3mtzbau+W9S57cA+zGQEHj6YyksyKPGHvZLfQsH7dkkHVIbxW/eOedDP8T1rdsvXLnnsc1I3lY4EeWbJy0L6ZxLKP7KGNcEkX/8PaMVLv3Dq3YZYyCSR79h0J3pVrp1nY0aL8UDvW4ekp/rmGaNEAm5ClWC59vgjqOlA4AIQkWXUsqnvKQi7Ydou1fV0cWXnTlt6ThURgPraCZKNeIOFtfe2uWSmDpuSvqjTA8meWw6q+Nqx0DZhHN6Zt//rogu/4TtqhH8AG+RRuFQ9zADG3qCupq8uVplsImfz3W3BmKy2cV5TkkwIpgyBHQACcIXit0CTG/QkTmom+xHmUpQtpDwz0ZK2fSI+SRYkH6zNttNRfv5onSv36LpsDaHc9RXtzzc4M7QQgKBNoNFK7/8xWF1i3g4RJHjjZ02dTrXQ0TPy4+/KMwhKA1hIYkydgQJy7rxeDdW8kfBvoke672FKZDW+5GTmYJOjmcaH9IPO8xex6g2Nr6ceb4rQoTuqWoqqii61V3hhV5vzL7nhztk4hZND6WHMNeZAonCc
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(346002)(376002)(396003)(136003)(366004)(54906003)(16576012)(316002)(6916009)(83380400001)(31686004)(36756003)(5660300002)(86362001)(8936002)(4326008)(6486002)(66556008)(478600001)(38100700002)(66476007)(66946007)(8676002)(53546011)(26005)(31696002)(6666004)(2616005)(956004)(2906002)(186003)(16526019)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 5c359654-2eeb-45af-00d4-08d90be574e6
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 14:37:18.8921
 (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: BKPIlwJJ5hs7t5m2LNgZKzp/gCfyWq1Y/KdI+jljhUeTFY6YUORwI1ClqXvedS2Xo0qR6Z6Z4Stls2WxsX9UVQmFI3r+DnxR+5oDIZiP8OY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5346
X-OriginatorOrg: citrix.com

On 30/04/2021 11:42, Jan Beulich wrote:
> On 30.04.2021 12:21, Andrew Cooper wrote:
>> On 30/04/2021 10:08, Jan Beulich wrote:
>>> On 30.04.2021 00:12, Andrew Cooper wrote:
>>>> The sole user of read_pkru() is the emulated pagewalk, and guarded beh=
ind
>>>> guest_pku_enabled() which restricts the path to HVM (hap, even) contex=
t only.
>>>>
>>>> The commentary in read_pkru() concerning _PAGE_GNTTAB overlapping with
>>>> _PAGE_PKEY_BITS is only applicable to PV guests.
>>>>
>>>> The context switch path, via write_ptbase() unconditionally writes CR4=
 on any
>>>> context switch.
>>>>
>>>> Therefore, we can guarantee to separate CR4.PKE between PV and HVM con=
text at
>>>> no extra cost.  Set PKE in mmu_cr4_features on boot, so it becomes set=
 in HVM
>>>> context, and clear it in pv_make_cr4().
>>>>
>>>> Rename read_pkru() to rdpkru() now that it is a simple wrapper around =
the
>>>> instruction.  This saves two CR4 writes on every pagewalk, which typic=
ally
>>>> occur more than one per emulation.
>>>>
>>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>> The changes looks perfectly fine to me, but I still feel urged to make
>>> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>>> conditional upon my "x86emul: support RDPKRU/WRPKRU" (submitted exactly
>>> half a year ago) going in first, unless there were to be review comment=
s
>>> making extensive rework necessary. In the absence of such review
>>> feedback, I consider it pretty inappropriate for me to do rebasing work
>>> (no matter that this would be largely mechanical afaics) here for a
>>> patch which has been pending and effectively ignored for so long. (The
>>> main thing that immediately struck me as odd was "The sole user of
>>> read_pkru() is ...".)
>> So the observation about "sole user" occurred to me too, right after I
>> sent this.=C2=A0 Then I thought "surely Jan has spotted this and done a =
patch
>> for it".
>>
>> Presumably you're talking about "x86emul: support RDPKRU/WRPKRU" from
>> Oct 30th ?=C2=A0 I found that via the archives, but I literally don't ha=
ve a
>> copy in my inbox.
> Odd. Was that then the time of your severe email issues, and were your
> IT folks not even able to make sure pending email got delivered
> afterwards (or at least enumerate what emails got discarded)? If I had
> got a reply saying the mail couldn't be delivered, I surely would have
> resent it.
>
> Just to be sure - you seem to have got a copy of "x86emul: de-duplicate
> scatters to the same linear address", as I seem to recall you responding
> there, albeit not with an ack or anything I could actually act upon (and
> this might have been in irc). That was sent just a few days later, and
> suffers a similar stall. And while in a ping I did say I would commit it
> without ack, I'm really hesitant to do so there. I've put it on next
> week's community meeting's agenda, just in case.

I do recall that patch.

>
>> If I do the rebase, are you happy for this patch to stay as it is (so
>> the complicated change concerning context switching doesn't get more
>> complicated), and so we're not knowingly adding new constructs which
>> need immediate changes?
> Well, the answer is not just "yes", but in reality I wouldn't mind
> doing the rebasing myself, if only I knew it wasn't for the purpose of
> waiting another half year for an ack (or otherwise).

The patch itself looks entirely fine.=C2=A0 Reviewed-by: Andrew Cooper
<andrew.cooper3@citrix.com>

The only observation I've got is that the other instructions in Grp7
probably want a blanket conversion from generate_exception_if(vex.pfx,
EXC_UD); to use the unimplemented_insn path instead, but that's clearly
further work.

I'll commit this patch, and the rebase delta on yours ought to just be
the naming of the helpers.

~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 14:38:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 14:38:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120559.227994 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUHO-0001XH-Bj; Fri, 30 Apr 2021 14:38:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120559.227994; Fri, 30 Apr 2021 14:38: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 1lcUHO-0001X9-81; Fri, 30 Apr 2021 14:38:06 +0000
Received: by outflank-mailman (input) for mailman id 120559;
 Fri, 30 Apr 2021 14:38:05 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcUHN-0001X4-L9
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 14:38:05 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 0347e828-a7f7-490d-8f9c-1f519fc8c2f1;
 Fri, 30 Apr 2021 14:38: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: 0347e828-a7f7-490d-8f9c-1f519fc8c2f1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619793484;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=HEc+3CPnJ1db/RT4hNaK9Yh9VtsKig7nB7ETyMinqXc=;
  b=GRoN0S/ZfLv6G+k4OZ77B3qvZwZz0b5SN6fTmIWexKsbbGjLGmc0+pm7
   c+/djDu/EQM30P5XeVR1N/fhS9TPcwZtiBFYDSn4bQPoT5FPKYMUIMZ/+
   GMb4RYklycG77oomjxNwsSIkiG/utSUUVf/BQQhwBq28SchNBNtOhvAYP
   s=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: R9gneq8lKNy0l7lNl0mh34aqSZzE9ySzc9OjuLeaDbxQPH2WOSFkTICwOIYk6hv5wUkFmfK6fJ
 QHeJBVB06WukVyFMKdJj5Jx9HdVOIdECoG7VrC/kfBLgfcDnT6YR7rGFbDQm/npun5scd0jnlE
 PM6wXzud6KNmBb1OQcQ8xWnLu9snehEnc0aFbO1ssQQWJSkO2z5tDjr903aK1AbUuUG5y+/4Px
 WvKwkYaP9jsIlwk8orhs9eEBa+6xUhQkMtROetUlaKHV6wz36MccVFFFt80BDwPNesIOakvSch
 ir4=
X-SBRS: 5.1
X-MesageID: 42803436
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Eg2XSqlg35eD1lGuiy34J7lQ0CjpDfP2imdD5ilNYBxZY6Wkvu
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKMWOqqvWxSjhXuwIOhZnO7f6hDDOwm7zO5S0q
 98b7NzYeebMXFWhdv3iTPWL/8O29+CmZrHuc7771NACT5ncLth6QARMHf4LmRTSBNdDZQ0UL
 qwj/AmmxOadX4abtu2CxA+NoCum/TxmI/7ehlDPhY76WC15g+A0qLwEBSTw34lIlBy6IolmF
 KlryXJop+Nntv+4R/a2m/V4f1t6aHc4+oGPuOgoIw4Lj3tjyyheYhuXaaT1QpF3d2H2RIRv/
 Tn5zsmIsRv+1PdF1vF3SfF6k3b/xsFr1/k1FOCjnPoraXCNU0HIvsEv611WF/9ySMbzbVB+Z
 MO5U21nd5rKCmFuyLH693BR3hR5zKJiEtnq8E/pThiS4cEAYUhyrA3zQduP7orOjn104wjGP
 kGNrCm2N9mNWmXaH3UpQBUsbqRd0V2Gh+HR34LsdCO3w5Xm2hkz1AZyNZ3pAZ4yK4A
X-IronPort-AV: E=Sophos;i="5.82,262,1613451600"; 
   d="scan'208";a="42803436"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=deYF4Eaf7INnwssLOGd4H/HU7w6kew0cERyr98QuzpKf8XrPCGaQ99SDaG4z5D0Ki/aF4aumrjedaxRBx2VOcdNZDJnfh3wVwYmW+/eeiwVfW5tXhaE543BH49K4MfGCDhHa+jrhyjehFXDLt/ZbxOmEJyQjyunpGgvPm5crzH9Mj5ab4OyKZGm7bBRHLk5ppThnE5Y6rVGOxY/8qSDxAaLDIwjaSRUz3n059jfAJ1JV7reyks4UZ1Lxl9PMukZbChaaGjkyEMLmxOWatxAuKBA78/9mWUr4AfKN5IKYjJ0eWkbT9yFyejTjmoWo/i/7+apxFFUQhAutN89DO6twXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hPP+gb/1JdksoVtDSzODY1lG/SGpk1N4fr0iVoKhuTo=;
 b=EkbuKv5ZKhA0eQ3nhYyzknWcoCzqH3hf5MqDYA0ut3J05/Z0GnpSroVOq2b5ghjOyOMbr2ukcWXmv7wPG0NcFV3TDkMUjmujnAp6r101On1FYIdoggtUmF7WzxY2qaOo2dR+V7s85yOIqbZzkFFQIDjiCHS5menBoSHr1JaOyhJ8+2UaIVzWKQCZ+1Z6BUfZled1pkC63trRMlRe2d8Q71zv4lQCYPJ+6aIsXXNACDuZ0BvTj+K99DGxo0QgKoxnFW8ejEKUSzglggY+zz66NKaHB6ZgNNPL/K7nUJPzuM4Rwzv56Gid7wMmeN977R2ArhzcoiqsbB4pcvSD48DKsg==
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=hPP+gb/1JdksoVtDSzODY1lG/SGpk1N4fr0iVoKhuTo=;
 b=TiwIP6QkdAAKUi2tIr0Jmszukf0dzI7bEA+ZLzGP0OCdf++c1W7JwyY3EfKsHiR3HdvenXUbt/+4dfn6Pehe7kbdil/wgmwoSYkfMuY9DN/qPMPjQoTp9vpC8P/Rlc8koX0NwPyPyutY0PZpYm/pRrOAxtElEP46ztyJgf5L7YE=
Date: Fri, 30 Apr 2021 16:37:54 +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>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Daniel de Graaf
	<dgdegra@tycho.nsa.gov>, Paul Durrant <paul@xen.org>, Tamas K Lengyel
	<tamas@tklengyel.com>, Petre Pircalabu <ppircalabu@bitdefender.com>,
	Alexandru Isaila <aisaila@bitdefender.com>
Subject: Re: [PATCH v2 09/12] x86: make mem-paging configuarable and default
 it to off for being unsupported
Message-ID: <YIwWQnNDLFXDMYoJ@Air-de-Roger>
References: <3cf73378-b9d6-0eca-12b6-0f628518bebf@suse.com>
 <26dae9ef-5fcb-f806-059d-7cdd2974ad40@suse.com>
 <YIvUJqtdsOLia8nc@Air-de-Roger>
 <143b84c7-84dd-6b36-997e-a38718651723@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <143b84c7-84dd-6b36-997e-a38718651723@suse.com>
X-ClientProxiedBy: MR2P264CA0066.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: fb4740d7-19d2-4278-ba62-08d90be58d95
X-MS-TrafficTypeDiagnostic: DM6PR03MB4476:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4476447B15DD306168CB4A868F5E9@DM6PR03MB4476.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:9508;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 4tnCz0JbFVEx8kA9EmVFBcBrS7cr6Uq/Kszjyj5CFv1+laDkQCkttXWn85UReqmaawR49dr/Vp8DLV3uRJNxSEVMOs6Ij5oHTyARBc+r8YJZtOYgVu6VGy1anBhrxSFtyQa6Z/uvUFs5re5DrTo/C7URisqhU5rJw1Bxrrzn3md+fFTY0GtkbBX37UxKjNpcKUHYhK7or0JH16ZkChb3h2p3IUR1a5Rv3visXq23DtuW6TMGA6PLY3feb5LMxypgRavaOsZuTeFTbGUzZm8AWwAX/s6umhcXfzR+VndJtCnDx0JyP3xdqLm7neSO+Cfy8t5/BUtidwMrdQobs6AyVArP38KQ9oQwt6B9qWzxub4nCgcgYH38+t7/wW8QIr66JNFZq+DumGIxxiLrX+ILU2ycYlcBJ24IZSO6C1S/lSH1FkJ1b6sqdFGVBSlmm6crT8AH58ckvnakDt9Jbxv93lvf8Wmx2qfnf7GQN3u21WE38gSbrrAJZh9YdauFY1rALE4eBbig2l+0KfL6Wf32KT4P1HHO4iMg7nd4AezUflsPtCoP3/uC9MpV2qP8YZJIEvnaeRRj6hObc/oluwuiXtTx3yXlSREbwZ/ns3n6dDA=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(7916004)(4636009)(376002)(39860400002)(366004)(346002)(136003)(396003)(38100700002)(9686003)(53546011)(66476007)(86362001)(66556008)(66946007)(316002)(83380400001)(6486002)(6666004)(478600001)(7416002)(8676002)(54906003)(4326008)(6916009)(26005)(16526019)(33716001)(85182001)(5660300002)(956004)(6496006)(2906002)(186003)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?b+s1+xya2/3XcagfnvEhO/0qizV2iZi5koio7bd?=
X-MS-Exchange-CrossTenant-Network-Message-Id: fb4740d7-19d2-4278-ba62-08d90be58d95
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 14:38:00.3319
 (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: +xIH/qs9SeLZBmT9AA9CJXtH0osl25k/gmmVTjjb3Cbkf8VJ7BpPhDIu6KMSs6Y3vNiNRWBuDRWNb07nXbiLvg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4476
X-OriginatorOrg: citrix.com

On Fri, Apr 30, 2021 at 04:16:24PM +0200, Jan Beulich wrote:
> On 30.04.2021 11:55, Roger Pau Monné wrote:
> > On Mon, Apr 12, 2021 at 04:12:41PM +0200, Jan Beulich wrote:
> >> --- a/xen/arch/x86/x86_64/compat/mm.c
> >> +++ b/xen/arch/x86/x86_64/compat/mm.c
> >> @@ -155,8 +155,10 @@ int compat_arch_memory_op(unsigned long
> >>      case XENMEM_get_sharing_shared_pages:
> >>          return mem_sharing_get_nr_shared_mfns();
> >>  
> >> +#ifdef CONFIG_MEM_PAGING
> >>      case XENMEM_paging_op:
> >>          return mem_paging_memop(guest_handle_cast(arg, xen_mem_paging_op_t));
> >> +#endif
> >>  
> >>  #ifdef CONFIG_MEM_SHARING
> >>      case XENMEM_sharing_op:
> >> --- a/xen/arch/x86/x86_64/mm.c
> >> +++ b/xen/arch/x86/x86_64/mm.c
> >> @@ -994,8 +994,10 @@ long subarch_memory_op(unsigned long cmd
> >>      case XENMEM_get_sharing_shared_pages:
> >>          return mem_sharing_get_nr_shared_mfns();
> >>  
> >> +#ifdef CONFIG_MEM_PAGING
> >>      case XENMEM_paging_op:
> >>          return mem_paging_memop(guest_handle_cast(arg, xen_mem_paging_op_t));
> >> +#endif
> > 
> > I would create a dummy handler when !CONFIG_MEM_PAGING in
> > asm-x86/mem_paging.h.
> 
> I was simply following the neighboring mem-sharing approach,
> which you've stripped here, but which is still visible in the
> xen/arch/x86/x86_64/compat/mm.c change above. I think the two
> are helpful to be similar in such aspects.
> 
> >> --- a/xen/include/asm-x86/p2m.h
> >> +++ b/xen/include/asm-x86/p2m.h
> >> @@ -136,11 +136,16 @@ typedef unsigned int p2m_query_t;
> >>  #define P2M_PAGEABLE_TYPES (p2m_to_mask(p2m_ram_rw) \
> >>                              | p2m_to_mask(p2m_ram_logdirty) )
> >>  
> >> +#ifdef CONFIG_MEM_PAGING
> >>  #define P2M_PAGING_TYPES (p2m_to_mask(p2m_ram_paging_out)        \
> >>                            | p2m_to_mask(p2m_ram_paged)           \
> >>                            | p2m_to_mask(p2m_ram_paging_in))
> >>  
> >>  #define P2M_PAGED_TYPES (p2m_to_mask(p2m_ram_paged))
> >> +#else
> >> +#define P2M_PAGING_TYPES 0
> >> +#define P2M_PAGED_TYPES 0
> >> +#endif
> > 
> > Since you don't guard the p2m related paged types in p2m_type_t is it
> > worth having diverging P2M_{PAGING/PAGED}_TYPES?
> > 
> > I guess it might be required in order to force the compiler to DCE
> > without having to add yet more CONFIG_MEM_PAGING guards?
> 
> Indeed, this is the reason.
> 
> > I don't really have a strong opinion on whether the code should be
> > removed, IMO it's best to start by making it off by default at build
> > time and remove it in a later release?
> 
> Matches my way of thinking. I also wouldn't want to be the one to
> delete code completely out of the blue.

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 14:39:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 14:39:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120565.228006 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUIV-0001hS-RR; Fri, 30 Apr 2021 14:39:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120565.228006; Fri, 30 Apr 2021 14:39:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUIV-0001hJ-OK; Fri, 30 Apr 2021 14:39:15 +0000
Received: by outflank-mailman (input) for mailman id 120565;
 Fri, 30 Apr 2021 14:39:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcUIU-0001hC-LO
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 14:39:14 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e5b5e21b-3273-437d-95b3-307bd612ccfa;
 Fri, 30 Apr 2021 14:39:13 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1267DB03A;
 Fri, 30 Apr 2021 14:39: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: e5b5e21b-3273-437d-95b3-307bd612ccfa
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619793553; 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=cxnHY9uHGZKFgWwQkgl02BIYlcwztSONzTXf93EqENc=;
	b=JfY+w0UIbIVsCdGH2BNEJTkQXoBnE6Jm2WUaIndiTsPpNMlF780h6tA1aVTaWCqnv9c1fY
	Z9xJn3fyK/JJwYNQaNAXFIJrlZXa4HUyeBltiq1MXarv8lOxtfHq7eCDslJaRTNJHdl/of
	z00X2eWN8W+TSPJ/yQ/7s9ZdD0/OXns=
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Ian Jackson <iwj@xenproject.org>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 0/3] firmware/shim: build adjustments
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Message-ID: <19695ffc-34d8-b682-b092-668f872d4e57@suse.com>
Date: Fri, 30 Apr 2021 16:39:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Originally I meant to finally get v2 of "firmware/shim: honor symlinks
during Xen tree setup" sorted. However, the suggestion to use find's
-L option, while a suitable equivalent of the -xtype primary, has the
same drawback: It doesn't distinguish between relative and absolute
symlinks (and we specifically want to skip relative ones). Locally I'm
using '(' -type f -o -lname '/*' ')' now, but -lname again being non-
standard I didn't think it would even be worth submitting. While
looking into that I did notice a few other anomalies, though, which
this series tries to address.

I notice tools/firmware/xen-dir/ isn't included in "X86 ARCHITECTURE".
I wonder whether that should be added.

1: update linkfarm exclusions
2: drop XEN_CONFIG_EXPERT uses
3: UNSUPPORTED=n

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 14:44:07 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 14:44:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120573.228018 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUN9-0002ZK-Ej; Fri, 30 Apr 2021 14:44:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120573.228018; Fri, 30 Apr 2021 14:44:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUN9-0002ZD-BU; Fri, 30 Apr 2021 14:44:03 +0000
Received: by outflank-mailman (input) for mailman id 120573;
 Fri, 30 Apr 2021 14:44:02 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcUN8-0002Z8-4E
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 14:44:02 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c6a8a42e-123d-443f-948a-289655a324d8;
 Fri, 30 Apr 2021 14:44:00 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1EC00B038;
 Fri, 30 Apr 2021 14:44: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: c6a8a42e-123d-443f-948a-289655a324d8
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619793840; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=6oCDlYqqGUYNrVBiSX4LnnYH4/TGpQyc8Ua94Bo9cz4=;
	b=kh52rfQ1VbsqkBNHFH7MztwWog9cjV53kxOQg3f46X35nGXMQG7qgpiUB6nqUaQe1hv7/S
	Zcu36SmSsRzZra521hbcF9CLbPdkH9YmbQxWcW1o4/OCVfpbAk1IZ+l3EZvOPkhC73XG8+
	ltKwjMSAesnXsZCduLOdRo7fNlaacio=
Subject: [PATCH 1/3] firmware/shim: update linkfarm exclusions
From: Jan Beulich <jbeulich@suse.com>
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>,
 Ian Jackson <iwj@xenproject.org>
References: <19695ffc-34d8-b682-b092-668f872d4e57@suse.com>
Message-ID: <d6f37d26-a883-b194-07a9-1ab87d5961f7@suse.com>
Date: Fri, 30 Apr 2021 16:43:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <19695ffc-34d8-b682-b092-668f872d4e57@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Some intermediate files weren't considered at all at the time. Also
after its introduction, various changes to the build environment have
rendered the exclusion sets stale. For example, we now have some .*.cmd
files in the build tree.  Combine all respective patterns into a single
.* one, seeing that we don't have any actual source files matching this
pattern in the tree. Add other patterns as well as individual files.
Also introduce LINK_EXCLUDE_PATHS to deal with entire directories full
of generated headers as well as a few specific files the names of which
are too generic to list under LINK_EXCLUDES.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/tools/firmware/xen-dir/Makefile
+++ b/tools/firmware/xen-dir/Makefile
@@ -15,9 +15,19 @@ DEP_DIRS=$(foreach i, $(LINK_DIRS), $(XE
 DEP_FILES=$(foreach i, $(LINK_FILES), $(XEN_ROOT)/$(i))
 
 # Exclude some intermediate files and final build products
-LINK_EXCLUDES := '*.[isoa]' '.*.d' '.*.d2' '.config'
-LINK_EXCLUDES += '*.map' 'xen' 'xen.gz' 'xen.efi' 'xen-syms'
-LINK_EXCLUDES += '.*.tmp'
+LINK_EXCLUDES := '*.[isoa]' '*.bin' '*.chk' '*.lnk' '*.gz' '.*'
+LINK_EXCLUDES += lexer.lex.? parser.tab.? conf
+LINK_EXCLUDES += asm-offsets.h asm-macros.h compile.h '*-autogen.h'
+LINK_EXCLUDES += mkelf32 mkreloc symbols config_data.S xen.lds efi.lds
+LINK_EXCLUDES += '*.map' xen xen.gz xen.efi xen-syms check.efi
+
+# To exclude full subtrees or individual files of not sufficiently specific
+# names, regular expressions are used:
+LINK_EXCLUDE_PATHS := xen/include/compat/.*
+LINK_EXCLUDE_PATHS += xen/include/config/.*
+LINK_EXCLUDE_PATHS += xen/include/generated/.*
+LINK_EXCLUDE_PATHS += xen/arch/x86/boot/reloc[.]S
+LINK_EXCLUDE_PATHS += xen/arch/x86/boot/cmdline[.]S
 
 # This is all a giant mess and doesn't really work.
 #
@@ -32,9 +42,10 @@ LINK_EXCLUDES += '.*.tmp'
 # support easy development of the shim, but has a side effect of clobbering
 # the already-built shim.
 #
-# $(LINK_EXCLUDES) should be set such that a parallel build of shim and xen/
-# doesn't cause a subsequent `make install` to decide to regenerate the
-# linkfarm.  This means that all final build artefacts must be excluded.
+# $(LINK_EXCLUDES) and $(LINK_EXCLUDE_DIRS) should be set such that a parallel
+# build of shim and xen/ doesn't cause a subsequent `make install` to decide to
+# to regenerate the linkfarm.  This means that all intermediate and final build
+# artefacts must be excluded.
 linkfarm.stamp: $(DEP_DIRS) $(DEP_FILES) FORCE
 	mkdir -p $(D)
 	rm -f linkfarm.stamp.tmp
@@ -46,7 +57,8 @@ linkfarm.stamp: $(DEP_DIRS) $(DEP_FILES)
 			sed 's,^$(XEN_ROOT)/$(d)/,,g' | xargs mkdir -p .);) \
 	$(foreach d, $(LINK_DIRS), \
 		(cd $(XEN_ROOT); \
-		 find $(d) ! -type l -type f $(addprefix ! -name ,$(LINK_EXCLUDES))) \
+		 find $(d) ! -type l -type f $(addprefix ! -name ,$(LINK_EXCLUDES)) \
+		 | grep -v $(patsubst %,-e '^%$$',$(LINK_EXCLUDE_PATHS))) \
 		 >> linkfarm.stamp.tmp ; ) \
 	$(foreach f, $(LINK_FILES), \
 		echo $(f) >> linkfarm.stamp.tmp ;)



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 14:44:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 14:44:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120575.228030 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUNV-0002fi-N5; Fri, 30 Apr 2021 14:44:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120575.228030; Fri, 30 Apr 2021 14:44:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUNV-0002fb-Jz; Fri, 30 Apr 2021 14:44:25 +0000
Received: by outflank-mailman (input) for mailman id 120575;
 Fri, 30 Apr 2021 14:44:23 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcUNT-0002fK-M6
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 14:44:23 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 34d10e4c-b18a-48fb-a228-d36dbf4bd7cc;
 Fri, 30 Apr 2021 14:44:22 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 1A7ADB038;
 Fri, 30 Apr 2021 14:44: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: 34d10e4c-b18a-48fb-a228-d36dbf4bd7cc
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619793862; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=4WSaABwQNqG2JTm70xmiIAHfh+9L9Z20dtHsVXRIDIg=;
	b=TUXCJDj0WvBzBreDJt0SRxvGQx1jhnB+j2FvQP5UfpJVScQacYmgPOS0SvUqEuOcotyTXa
	8s+WExlwnFub7VBuF2xrw3t+DurZ65IPkrGDHzLERCqESrsKoN6RAGe6roAEEixmZOewaa
	WNnKM0FP05uCJZc/poHeIHvOFAtbFzU=
Subject: [PATCH 2/3] firmware/shim: drop XEN_CONFIG_EXPERT uses
From: Jan Beulich <jbeulich@suse.com>
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>,
 Ian Jackson <iwj@xenproject.org>
References: <19695ffc-34d8-b682-b092-668f872d4e57@suse.com>
Message-ID: <56bb5e87-fe35-75a8-fe18-ecc959b21799@suse.com>
Date: Fri, 30 Apr 2021 16:44:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <19695ffc-34d8-b682-b092-668f872d4e57@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

As of commit d155e4aef35c ("xen: Allow EXPERT mode to be selected from
the menuconfig directly") EXPERT is a regular config option.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/tools/firmware/xen-dir/Makefile
+++ b/tools/firmware/xen-dir/Makefile
@@ -74,10 +74,10 @@ $(D): linkfarm.stamp
 	$(MAKE) -C $(D)/xen distclean
 
 $(D)/xen/.config: $(D)
-	$(MAKE) -C $(@D) KBUILD_DEFCONFIG=pvshim_defconfig XEN_CONFIG_EXPERT=y defconfig
+	$(MAKE) -C $(@D) KBUILD_DEFCONFIG=pvshim_defconfig defconfig
 
 xen-shim: $(D)/xen/.config
-	$(MAKE) -C $(<D) build XEN_CONFIG_EXPERT=y
+	$(MAKE) -C $(<D) build
 	ln -sf $(D)/xen/xen $@
 	ln -sf $(D)/xen/xen-syms $@-syms
 



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 14:45:06 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 14:45:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120581.228045 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUOA-0002nm-2i; Fri, 30 Apr 2021 14:45:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120581.228045; Fri, 30 Apr 2021 14:45:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUO9-0002nf-Vx; Fri, 30 Apr 2021 14:45:05 +0000
Received: by outflank-mailman (input) for mailman id 120581;
 Fri, 30 Apr 2021 14:45:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcUO9-0002nX-6h
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 14:45:05 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 28b905ea-f032-476b-b7ca-c4d42db25261;
 Fri, 30 Apr 2021 14:45:04 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id 6C597B03A;
 Fri, 30 Apr 2021 14:45: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: 28b905ea-f032-476b-b7ca-c4d42db25261
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619793903; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=5fOkOupL5RkW0UbAtmQcNHl08DT14j0dorRN/S9Rg88=;
	b=eftbUYNyaqUl+jgTZ8zJQr3xdDBe9ar7LkG8nz5He2nb+vYGoz32j1n3N+QkcoRz2KCPf7
	Dm9teJWZJejjfuOirGEeI5OoYGsj0TZottA41D+avEIhgsJjrCkddK3gDqdPa5/PZjN6kG
	IouqeWGMAJ8ReryvC4aklTnkTLYmjrY=
Subject: [PATCH 3/3] firmware/shim: UNSUPPORTED=n
From: Jan Beulich <jbeulich@suse.com>
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>,
 Ian Jackson <iwj@xenproject.org>, Stefano Stabellini
 <sstabellini@kernel.org>, George Dunlap <george.dunlap@citrix.com>,
 Dario Faggioli <dfaggioli@suse.com>
References: <19695ffc-34d8-b682-b092-668f872d4e57@suse.com>
Message-ID: <dbfa9126-6809-64cf-5bd5-01b402616f11@suse.com>
Date: Fri, 30 Apr 2021 16:45:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <19695ffc-34d8-b682-b092-668f872d4e57@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

We shouldn't default to include any unsupported code in the shim. Mark
the setting as off, replacing the ARGO specification. This points out
anomalies with the scheduler configuration: Unsupported schedulers
better don't default to Y in release builds (like is already the case
for ARINC653). Without these adjustments, the shim would suddenly build
with RTDS as its default scheduler.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
----
I'm certainly open to consider alterations on the sched/Kconfig
adjustments, but _something_ needs to be done there. In particular I'm
puzzled to find the NULL scheduler marked unsupported. Clearly with
the shim defaulting to it, it must be supported at least there.

--- a/xen/arch/x86/configs/pvshim_defconfig
+++ b/xen/arch/x86/configs/pvshim_defconfig
@@ -15,7 +15,7 @@ CONFIG_SCHED_NULL=y
 # CONFIG_KEXEC is not set
 # CONFIG_XENOPROF is not set
 # CONFIG_XSM is not set
-# CONFIG_ARGO is not set
+# CONFIG_UNSUPPORTED is not set
 # CONFIG_SCHED_CREDIT is not set
 # CONFIG_SCHED_CREDIT2 is not set
 # CONFIG_SCHED_RTDS is not set
--- a/xen/common/sched/Kconfig
+++ b/xen/common/sched/Kconfig
@@ -16,7 +16,7 @@ config SCHED_CREDIT2
 
 config SCHED_RTDS
 	bool "RTDS scheduler support (UNSUPPORTED)" if UNSUPPORTED
-	default y
+	default DEBUG
 	---help---
 	  The RTDS scheduler is a soft and firm real-time scheduler for
 	  multicore, targeted for embedded, automotive, graphics and gaming
@@ -31,7 +31,7 @@ config SCHED_ARINC653
 
 config SCHED_NULL
 	bool "Null scheduler support (UNSUPPORTED)" if UNSUPPORTED
-	default y
+	default PV_SHIM || DEBUG
 	---help---
 	  The null scheduler is a static, zero overhead scheduler,
 	  for when there always are less vCPUs than pCPUs, typically



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:08:36 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:08:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120590.228057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUkn-0004d8-32; Fri, 30 Apr 2021 15:08:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120590.228057; Fri, 30 Apr 2021 15:08:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcUkm-0004d1-VZ; Fri, 30 Apr 2021 15:08:28 +0000
Received: by outflank-mailman (input) for mailman id 120590;
 Fri, 30 Apr 2021 15:08:27 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=A3Ge=J3=citrix.com=andrew.cooper3@srs-us1.protection.inumbo.net>)
 id 1lcUkl-0004cw-NW
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:08:27 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 2763b6a9-1b40-451d-a054-8e8b7a5d8487;
 Fri, 30 Apr 2021 15:08: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: 2763b6a9-1b40-451d-a054-8e8b7a5d8487
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619795306;
  h=to:cc:references:from:subject:message-id:date:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=7bFo7AR3RU498RzCm4Ttt9PVrysmrC90aMQFgr+BdgU=;
  b=e+8GlglSALCzqLb6PRsqXk+hJtKu+tYVMMCVIwLcROkBQ+vRKa2FCMgK
   pU2sz4C8IP1MO7NTSy+ZfJPBfmBAfBCo16hPi4O6FTedksbU+elF6BIxK
   2KlmLOKUqzNFWiFa8Ny8TF2kjFFzr7ldf8xwCvOQfg9/mUJ9wHUqYXUDi
   E=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: n69wzW1m8ahtAdT+6RqSLTNaSqpPncapesjCg0zom0stNEgUrKarGC2+zKbstwgO1NViAnZdPU
 6EgsHl2QzqgDXdtr8murDuL9Y88XfuvuoXp3+V30K9HS+TgVIV/UshOBDh+iDs9Ik++T2NoR/Y
 CfwNwKUnTc2Ijfea8XzpTscPHHbTIJ/9YJZJgAzcBCneVurMNpd3jdGVuy2OQ+aQ8BRQG/xFs2
 oT/LIX4iM+Ie5Wlftepcjo/bdoWhEjI8R90Ty0xl15qkuoQoLubCcvLpGo2N5aPnwUP14O6/mS
 lSs=
X-SBRS: 5.1
X-MesageID: 43194421
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:+L7ynqP3QY/+1cBcT27w55DYdL4zR+YMi2QD/3taDTRIb82VkN
 2vlvwH1RnyzA0cQm0khMroAse9aFvm39pQ7ZMKNbmvGDPntmyhMZ144eLZrAHIMxbVstRQ3a
 IIScRDIfXtEFl3itv76gGkE9AmhOKK6rysmP229RdQZCtBApsQiztRIACdD0FwWU1iDZ02CJ
 KT6qN81kSdUF4Qadm2AWRAYvPKoMfFmImjTRkNARMm7wfmt0LW1JfRFR+E0hACFw5e2LtKyx
 m4ryXVxIWG98u6xBjVynPJ4/1t+efJ59NfCKW3+7MoAxr2jALAXvUGZ5Sju3QPrPir+BIWlr
 D30modFuBSz1+UQW2vuxvq3GDboUQTwlvv00WRj3emgeGRfkNDN+N7iYhUcgTU5iMb1bkWus
 87vBP6xu5qJCjNkyjn69/DWwsCrDvSnVMYnfMOlHsaaIMCadZq3P8i1XlIG5QNFj+S0vFfLM
 BSCqjnlZNrWG+BY2uclmdix8HEZAVIIj62BmIGusCTzgFMmmF4w0Yy1KUk7wc93aN4ZJ9e6+
 veNKN00JlIU88NdKp4QNwMWM2tFwX2MFzxGVPXBW6iOLAMOnrLpZKyyLIp5NuycJhN6Jcpgp
 zOXH5RqGZaQTOuNeS+mLlwtjzdSmS0WjrgjutE4YJih7H6TL33dQWeVVEHiaKb0rciK/yef8
 z2FINdAvflI2erM51OxRfCV55bLmRbeNEJu+w8R0mFrqvwW87Xn92eVMyWCKvmED4iVG+6KG
 AERiLPKMJJ6V3udWT/hDTXRnPxam3y9Z99C8Hhjqwu4blIErcJnhkeiFy/6M3OAyZFqLYKcE
 x3J66isq7TnxjwwU/4q0FSfjZNBEdc57vtF1lQoxURDk/yebEf//GWeWVY2mq7NgZyJvmmVj
 J3lhBSw+aaPpaQzSctB5aMKWSBlUYeo3qMUtM6lrCc49zmPrc1FIwvVqA0NQijLW00pS9a7E
 N4LCMUTE7WET3jzY+/ioYPOe3Zf95gxCGxIcBVrnrbnV6Gpd4mQ0YaWzLGa7/TvS8eAx5vwn
 Fh+a4Wh7SN3Ry1L3Ekveg+OFpQLFiMDKl+FwSDboVMkrXNcAV9JF363ACyulUWQC7H5k8Sjm
 vuIWmxdevQClRQgHxez53n6Uh5bGmbYkJ2ZE1rqIEVLxWyhl9DlcuwIoaj2WqYbVUPhtsQNz
 zIehM+CAJjzdLf7m/ZpB+yUVEdgrk+NO3UC7ouN4zJ0nS2MYuSiOUtBPlP5qtoM9jor84GWe
 +SYBWuMTv9Eu8lsjbl/koNCW1Rkj0JgPno0Brq4CyEx3Y5G+PVO0kjaLcBId2QhlKUD8qg4d
 Fct5YSsuSxOGmqNYLD5qHTcjJZKhTc5USxVPolrJhIvaQ08Jt/dqOrJwfg5TVi5lEZKsyxqW
 Y1BIJcy5rFMpV0f8MTdzlCl2BZ3uinHQ8OiEjOHuQ6fVsRlHfVMNOC3qrQpdMUczq8jTq1HW
 PazjZU8PjEVRaSzLI2C6o/JmJNdUg3gU4Std+qRsn1CA+wcftE80f/GnihcKVFQKztI8Rdkj
 9Kp/WJlfSQbSz2xUT5uiZ6OLtH9yKCTdmpCAyBXc5O/NrSAyXCvoKapOqyhizwUz21dgAxgp
 BEb1UZaoB7sQYZ5bdHmRSae+jQuUIqk1xX/DFhmBrM4+GdkRbmNHADFxbYjJVQVSRUKV6Sg6
 3+gLOl6Eg=
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="43194421"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jlCt9P9RjTwzksB0Y30zKhtxK2lh7hDyi6SJu2uUZzWlcF4gVozVb2VmGYhO5Hc2gp7X9KsLry5OBLO3iq4BvfPIpRPJMNX/6nc459drjM2kx+SIUuB+ya0hm/Lb7PQT9sRuqz377GJ1BCu3HNWTtNHMMf5J/WzQWBqvJQrewI+iANAnszHBtuny3m8jOGC2YGXCdH20q8wBTuJnHRQVxghBVkYAP7lv+e6W1giWwvh0gBbLoU/VA88aU5tLJsaxIbO11YO9yc9GG+0sM83t83L4y1WOyG9AE2HXLZUgNpGByQTuzQVBSapzf5skWXJcogdLt7WNQCQnwelN+mGLJQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7bFo7AR3RU498RzCm4Ttt9PVrysmrC90aMQFgr+BdgU=;
 b=mFAGFvFEvhV2VYSIQPXklSZa6tiiJwgUKwIgGT1elbAAVNE9mPux80ymPIraYebuJSESy8I3w1YQpnfVbDxwr+yfWzU967C5HmnrSSMbFgsKDsFBhVPTP1uPdDl40AFMyfWu1rMZDpqMyLfgSwkNAUAO63Z4aDAGnIUF6OpxXMKU+X76h1E/AlpHZSVY6jFy0lma4FQHVZxbPjVmdbXEyu34wbItB7i4jfb8S7FB1rb8GBopL3IQOVo5aVu7b7SYDQ+xhV06mB4J2TUupWqH1M65X1/pl1uZBtZoxhVpOybl4DCL056dnc87HNNPyj0+6RSGCeHYqOoNEmxzjen8TQ==
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=7bFo7AR3RU498RzCm4Ttt9PVrysmrC90aMQFgr+BdgU=;
 b=pPCcxwVwKoTMuzSfA0lcGDFUtUuvmk0Ylms1a/zElXbMQvxzSlEN/OZ3NiUYpD7ktWk2I9CRSL1Z1I8tHCgIC6pfv0U3vo+VlHdgM9Seb6wAjuSkEyYYVtMLbtR8LkXwdfRuIlAmOF+VaOGm5yWembXwv6nvpx9qoKtKeEjTIfE=
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210426175421.30497-1-andrew.cooper3@citrix.com>
 <20210426175421.30497-2-andrew.cooper3@citrix.com>
 <d8bd932d-071a-4a5b-747c-02cbd5e296cd@suse.com>
 <86cf1d97-2034-7791-071a-48208b6ba54b@citrix.com>
 <28d7b7a9-9dd2-1664-e946-d7e4a330da0f@suse.com>
 <3d1847f2-4ba6-416a-7957-3310b5d5124c@citrix.com>
 <d0731b8b-7dd7-ed9f-e3fa-6543ed5e5afd@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 1/3] x86/hvm: Introduce experimental guest CET support
Message-ID: <693c7708-b699-51df-1c1b-5d25a43a2dca@citrix.com>
Date: Fri, 30 Apr 2021 16:08:14 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.8.1
In-Reply-To: <d0731b8b-7dd7-ed9f-e3fa-6543ed5e5afd@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-GB
X-ClientProxiedBy: LO2P123CA0016.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:a6::28) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 61a389f5-f82e-4872-7e6e-08d90be9cb2b
X-MS-TrafficTypeDiagnostic: BYAPR03MB4679:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <BYAPR03MB4679811DA15E2AB15CF12DC5BA5E9@BYAPR03MB4679.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:8882;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: oOCSfASGOR/079KBHjx9S6oubkdfcwUblOX227WXZOrORz0Q8YCZHx/MuXbHYUwFlUQfLC+NMAVIlEBDxonSVeY093UJDEVif9kBh2dVeNXRHWBjmaVPCurt2ZNIr0NuBvQrm52kkTQ6JuOPjNcY9sfc1e0j+piFoVsPRWhYkb4Ku96ifyaCDCQHJ4oBUoZ7aWRCQGHdIdA+JRJLuKK9JwGWLy246Ax3smFwUnOASe+Hpmqjibi7WG4hPul0ccajqiR8f841CGrrLA9VTLQkbBGi5+d+RgoiaiOo8i2VsIDwynHIEXq18ngymBhzzTpIO4p0v+j7tiY87uCfSYYGN5woJPxBGo4nEIiNPEs20Wdp1oTccK3xmMhRTe6vV2eSnG7s6VXEs9ZUTOKU14wg0Cd4GCRvEljp6XaFHGCevFMZKmwINyQwIb1n44kUSFwHAluCZIvKzWBeKsQh12ULECVvaH/7SAGtnEfbYz+DM3HwH0+fiy4IxlpsREUrpNfI5V6FQadFFJvZjKl1eBrcLhh6mi3i/O/mDyt6ZIydAK9aacoCEoPHmxStoKpCn+VIChw9h8Azfjbd+B1Tc/8+dxUufrGAktM6EqnasdW20SIOdhAL+78+CBI9qnDiEg6MrrfFz16gvov2KHDQz+32/+/Egpgtp6Osy8FvUbMIaDWuIesOPbAQvHY0KF9+nepD
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(396003)(39860400002)(376002)(136003)(366004)(86362001)(2906002)(6486002)(31686004)(6916009)(8936002)(4326008)(2616005)(956004)(8676002)(316002)(16576012)(26005)(36756003)(54906003)(186003)(16526019)(478600001)(38100700002)(53546011)(5660300002)(4744005)(66946007)(66476007)(66556008)(6666004)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?MFhONlN2b0lwTVZ3ci81VHRTM3o0NzloYWtqa1Z2UnJtL2QwdC8rZjg0SVJU?=
 =?utf-8?B?L1UzVkN6RmsvU1E4dndnYzZrM3lBWVBGcEEyT3Rxdzg2akR6NWdsSHptS0ND?=
 =?utf-8?B?Kys3U284emxJVXFNYytuV3RxYUZMdnMvUVl4Ti9ndGJjbWtqSTIweFkvRURX?=
 =?utf-8?B?VzJJMy9qLzRNT1NreE9NOTRXeFdoaUwxWDBNcE1CbjhKbmVITFlWVGRrQzlQ?=
 =?utf-8?B?cGE2S3FyN2pTMUxLTjRHQWFGT2hwQUY0QURyU2lGU1Z4MEdhVER4cjY2YSsx?=
 =?utf-8?B?bG9IRUVhRmppd0Z5Z2JzMk1ubWJHZDJQU3RvMDVPcktvMFQra1VyeFNudzVj?=
 =?utf-8?B?OFpnS2JVek1zSjQ2VURTY1pJMUprb2U1Q2FtTW1SMXZRd251dmVPbTFSN2FU?=
 =?utf-8?B?eU1VSnIxdVFqUjhuOGF4dkUvaGNIelFEY2xkSVdZRWVSbndiVTlJVEVOMURp?=
 =?utf-8?B?N1lRUUpOaDRHbHBoUjBtT1pDamNDYmVvb1NnSHpLR3JOMk5iZXZ1Y3h4ZWg4?=
 =?utf-8?B?UHFNRE1qbEhqdmsrcWN0SmNVakVNZVNTTFV5MzNmeisranY2Zm5FMzB3UjZJ?=
 =?utf-8?B?YlZVOHpidWdiMUxSNUdhT1R1aWRJckwvZG8rTjRyL29TR2FTSThHNnU0Z3Yx?=
 =?utf-8?B?RVh6anhrNEdUYkE0S09lekZCVnpoUDBrWkN2NHVCRmR4S3BCOGFySXVOdnVF?=
 =?utf-8?B?cTEwK3RvcEFvaU9nMHkvcWtoZmI1QWdGVURwUEZMVFYwQ2hmRjZwanRHeDU3?=
 =?utf-8?B?Y1JSV0p1Ukw2cjhHTitwVnQ1YUpPcURhN0pWL0JUYk5FVC9wdmdDejRpcEYv?=
 =?utf-8?B?TUM4VDV3cFZEeGlwSGh2aE1EQzBpdyszbFRRZnJ2MC9pZHFZQWVsSHdDYzJY?=
 =?utf-8?B?cUREZzRmTHAyeVRTOFFHTUlZblNFWFM3Q0h4aW1FdEVGOFcwNnF6YXkwWXMy?=
 =?utf-8?B?cVZaSXJZeVpNZzZrZnB3OVdxOGQwMHVTWE0zbXI2NTVCZmdZN2RLTHI0YmF1?=
 =?utf-8?B?WWpwNGpTNHpTeHBjdWlJak42akdiSDc5a2lXbTkycnJzMGxHeTZvVGdlL3JE?=
 =?utf-8?B?a1dDdFo2bmN5V2xWSlJGaDl4dzZSaVhuRWhBSmx6eVkyRXg3UzZiVXdQRGZU?=
 =?utf-8?B?czFmUHhHRzBBdk1mNVJFQWdNM21lQ29pVW54Z04zNzlrQzVPWnNObTB5RTVZ?=
 =?utf-8?B?cXN1N1ZyWWt0RFJ4NFFlQURuUm1sK0dtQTdVMG00MFhOQzU2d3VkbkRYNlR0?=
 =?utf-8?B?SEhhdFZmc2JoYUJZY0dUc1JpczNkVFZwV3N5ZnhXeEhvSkdFTWFLaGhiekFk?=
 =?utf-8?B?aVEwWHBOaHZDSXZTSGU4RkVYUnBUTit0TVZXMWVPaWJKSjBEMDRGNWp5bi9I?=
 =?utf-8?B?ZGUzVHRmU0tsUjI1QXFYdWR5ajkzWmliWitHTnJFZUEwUVhzL3ZGY1BzZkNy?=
 =?utf-8?B?S0xDeUV0TDFxYTZaKzlLN2RYWXdySEl4STY2bGZCUEI0b2EzalFIMDF3b3VV?=
 =?utf-8?B?V2txNUx1ZU1qZTI3bFB5Z2puTml4d0xnY1VJYmZMZjZPTjhnYnlUYkgxazRt?=
 =?utf-8?B?K1B3bTQ1SjNWWFo2VE1WcUJqaGQ3M1loblpsblpTK3I3NTRSN0JkUlVnNUhK?=
 =?utf-8?B?Y2RQVW9mTzFoblB0NEo0cVgrT3JtOEtnR0w5RS91K3Z4WkVXaHMwVktMaWRk?=
 =?utf-8?B?YTlhNDQ3eE5sVTZBU2tmT0pEQWRSTVBPY1hTajkzSXk5MHRxN2ZYTERGOHRV?=
 =?utf-8?Q?ZxpRBtVu7HCnsQgRDA3UBHrPLEU9OhUL+LgbXQn?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 61a389f5-f82e-4872-7e6e-08d90be9cb2b
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:08:21.7094
 (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: dLwwdaGJk0VkYtXjyVSQdwZaS/bWp3JqvW23wKEcR3IPhKg0btmsOzDyOEprhKfxmgjHSXTCFOUeHkcNhqYxlwhxqG+s/OvheK1kFKnZfxA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR03MB4679
X-OriginatorOrg: citrix.com

On 29/04/2021 10:07, Jan Beulich wrote:
> On 28.04.2021 19:54, Andrew Cooper wrote:
>> I know we're making up our "how to do complicated experimental features"
>> process as we go here, but nothing *in Xen* will malfunction if a user
>> opts into CET_SS/IBT.=C2=A0 Therefore I think they're fine to go in and =
stay.
> Well, okay then. I hope possibls future additions of mine then will
> get similar treatment.

So having thought on this for a while...

The annotations in the header file don't help me.=C2=A0 My dev workflow
already starts with turning them to default, skips messing around with
toolstack level things.

At this point in feature development, there is no use to anyone who
isn't also editing the hypervisor too.

So unless it is going to help you (and I suspect it wont), its probably
not helpful to the wider world.

I'll drop the markings from this patch, and put them back in at the
point that we believe "basic VMs" work.

~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:53:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:53:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120598.228093 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVSf-0000a5-CJ; Fri, 30 Apr 2021 15:53:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120598.228093; Fri, 30 Apr 2021 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 1lcVSf-0000Zw-8k; Fri, 30 Apr 2021 15:53:49 +0000
Received: by outflank-mailman (input) for mailman id 120598;
 Fri, 30 Apr 2021 15:53:47 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVSd-0000ZU-Qv
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:53:47 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 811015c8-61e6-4789-a1bd-c69fd7925069;
 Fri, 30 Apr 2021 15:53: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: 811015c8-61e6-4789-a1bd-c69fd7925069
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798026;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=hELyE44OjIjzV7+Wdf4YgVbmMqt+ERhOJXbcDBIErKg=;
  b=c83pQE82Zg5WiN92q9eMFTR5ovj7eCfSdGWd7HCj0cUHwhIbAPrRRRhH
   k1849tcdZNSOe/+6wddKU/xvBYngVioLQfFLbndJvxgh5aBbuvfQqfP0S
   sGMTKSMavidQK92hL8XYW4jgdvduaRoMDf+KKTKX3JWsMWhr1mw/2cAAC
   8=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: q8NT5IUDhpvBjtZh+pb8MBXK9/TJdmwxRNo+2fz1mnU96RaPnIR2pzn7HTUxjLuBIytJ+hpXsI
 GMVW1rxcqOakF9BEdEBu9oSG6zWhdyxubWdIKHzkAMYg/Js1ToIhbkKXBWlH0uU3djZ5F28SEV
 oJv3QDpfzaDSVoX6X6QjHzEDQMWJa3MsvSgJI6VCUPCjxfxBbwsbJCaqBys7yTi+2ux5jlX3yW
 DIhhCbT74zpoeD8MlZK//GulgnfTm9LqYu/Zkd0+i5BHo/jwlIaqgSnsfxxld5Zmww56VQsLTI
 qw8=
X-SBRS: 5.1
X-MesageID: 42930019
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:6mjpAqiS7RJv/QE8O2Enh51B/3BQXiUji2hD6mlwRA09T+Wzkc
 eykPMHkSLlkTp5Yh0dsP2jGI3Fe3PT8pZp/ZIcVI3IYCDKsHalRbsM0aLM2DvlcheRysd42b
 17e6ZzTP3cZGIK7vrSxAm9H5IezMKc8Kau7N2+815XQQtna75t4m5CY27wf3FefhVMBpYyCf
 Onl6h6jgenEE52Uu2LQlUDQujft5nqufvdEHo7Li9i0ifLoROEgYSKdiSl4g==
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42930019"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JkvwYiCWizhVRJhxjAXQcWx10lPZGXM73BL/g6Iu+E9o2Cy26PmXbKkq63W5wWhvb1/x1dg9Ll2MnHkZ51FVN0oB9WjqO25lOiS8zB2GDXj/w8CWR6rud1uG0f5ovJPRATwit7c4mA60jBrj0v/c0VuLPEZFFl/MfFl5Ca3HZu6pMowIspQVJ/1vclJDWl1YKjR1jwmO2kowXYh4BHcDeFDo4vFdrWZf6Bzcv4mL2Swmxbi4N4jEYSbWE+WPHRoMXKgYFiPuTO29teBDJyiObcQPKORdAgdfgrlIe3pSBDDfB5xiTAltphAy+JSveL3EBW87t1LlNavBKj3hqHpm2g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KyuIaS7BuF4VGyvgnC9lay8BjM2lepDtuERfKu+QpZI=;
 b=Ho9w5l4D05LOQBrKs2JJrJgvOcRfpYogmO7GKcFcmPTkAv7G3SbI9H1YbYozvqDzKVhdAVwq2UMcW0Drsol2YbUywN6vqV4dnSD88a2Wl7Y+sDOSMB8CE5bkJREl4i9qI+D19bfA1VF4o9l9ODr0fnWbKYNVtmUcFx2Di/Sjw3BuHqOcEJat1xloOwv88KI1e9DyL/fOhrLhL1lS5o0wVgZNm1UnGc4+9W/fzHqVu2i4fnAxdV4ZW01Smn7nswFyeGz7WOMdJ+U+05qdRDiZ8Ipq8hK/rfow/e7qIr1Y21lzwCoK3wOhk4kVwVlXFzvG6xT60zEPK8jBE7D+JyIw6g==
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=KyuIaS7BuF4VGyvgnC9lay8BjM2lepDtuERfKu+QpZI=;
 b=PI/0IynwZFfgoYc8FAMYx3dOqFvBahWj+tEN1Dm8unwYXWbd37ij4iMQZbn9I/phuuGGHcwUc2UnRluNNq7YvxfzQbHiJgQYyZPTCvAiG8XOc21sXIvZfFB1RFXwDRoA1ZHTxeFz6F24/N7+usK4VStmFOaIZOQYYjwoHKPELqE=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 02/13] libs/guest: allow fetching a specific CPUID leaf from a cpu policy
Date: Fri, 30 Apr 2021 17:52:00 +0200
Message-ID: <20210430155211.3709-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR1P264CA0015.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2e::20) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: c2f27cf8-99a9-4121-eb94-08d90bf020b8
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB29233AA9405A4FE4ACCA4AB98F5E9@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: AdTT5iY5vkyEqrNEX3amhdcUpI83iaHeq2FIRVkMjEGzgzPI6k577F3APc8Uoy8x9s2BlrWSidZpStscndnfpptSg2OsMNIYpKgws2WY2oDxixGZ74CIKf781CD65hCUkVO6dB0TTK83QrytSWDqcB0KC33ele/d98KLFGha7yYMHTXvKb0xLBJgLOw7lgpgceHzCP2jgy6/+ZIhHn47LkmkGvBAGRb4MadH9/aR8nMnyy+xIjgrqMUxCgYswJ8fSTInbZqF/u/lr2rpU0vMX2hZxWG2PHqTvoIrB6SyColhVUIR45FbOo1bMQmPpPhe9Y+P320a8IyqDlBvegYfKaa465ZbAMAKPcwxMPFM+skqlS63Vb6wGoaZrzeanNaRXBEKTEmpvnjmYcdvkJ7w7f0Pj6WX3/8PcuV4YNQlfjNIPtAa7OLKgRxy9kM5hOubp5rIznsBh1AwwWmU0VFmXLCKanMnK2mswsUkemw0To5hE4Al3jW8+Y322L5N425CTnyut+NLcJK7l+kETe6W3bETmZCi88ErAKdTRQEPXAJUHCEzSX0AbVAh0d12QghGYNUw4OYVKSaOBciLDcr1hRc1DLRKPGIjbyEjn2AVJoU=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(956004)(186003)(16526019)(86362001)(4326008)(8936002)(1076003)(498600001)(6486002)(2906002)(5660300002)(26005)(66946007)(2616005)(38100700002)(66476007)(83380400001)(6496006)(66556008)(6916009)(36756003)(6666004)(54906003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?Z1pxdVcwS1Q1Z2c1MVphWGdTbWx3ZnpnYkRpOWg1L0ppcllZZnpVbjdCVWdu?=
 =?utf-8?B?R3RDMEZoNkhQNkYrOEpGT1pmblJadzAybHpoY0RJR1J6TllPQnpFUXZPOHla?=
 =?utf-8?B?OC9CUlRNQ2htRXg1ZUdVb2VZWEx2RTYyZzNwQTlZY0lWY0p2dnJwRmpwb3hi?=
 =?utf-8?B?L01ZbWVybDg5c3NtazVJUEVtNEhob3Joemc2bmxIVmlWb0lqdjl5dW1qSTB2?=
 =?utf-8?B?WXlmVVdQMDR4a2p2cjNHQUYreEtUWjMydXBLS0kvT29idnJNV0xTc0IwTHFQ?=
 =?utf-8?B?Y0w0VldyVWNFZWdzcEdpZHpZcytvSUUydk1FTndxb2RiZ1MzT1FJZ3k2SEg2?=
 =?utf-8?B?RzdtMkZ0Nlc4ZTdqZzFyRHBRRnY1RWh3MkVWYkxPdUprL2NEVEFJcE5aMXpx?=
 =?utf-8?B?Q3hieWJFa3VkTnBtTTV4N2hFZEYvSTlOekhobUluY2llQXVpYUdGRmFYMUtC?=
 =?utf-8?B?eERZMWVxc1pZaTZCdTJRVVc0VlVkRHpNcGRhMFpiRzI3M2FUbFJxQmwyRHlY?=
 =?utf-8?B?L3RJUzlES0xVTktTWkx1bkZSOENqSHBEdFdkU0gra09WN3VUdTlUZzlmUURy?=
 =?utf-8?B?OVFyRWUxRVVBdTBONU9QTkl4cmFvUGJra25FbFNXWGltQU1BbThDeUFGeWJE?=
 =?utf-8?B?aG9uczVTRmZsVjQyY0Y1WVVqNTQ2N3BPOGkvcm55MTQxbHFvRFZyWmtVaVZx?=
 =?utf-8?B?bTYrVFNDUWZCUklFL0MwZlRBb0VDU05PRDhlSzdibFRhSGVaZEN0bkR3NjFu?=
 =?utf-8?B?Rk02VEk3MXJRczMwMU41cU1pV1N3M3JxRHJ2NFlSMHI0WGFzdFlJTm5MYm5O?=
 =?utf-8?B?aEltZnlzcmhmaW1uakFQN3NjR1c0c1hkR1hFUjNPcnZHTTFxdG5EOFNSUTBv?=
 =?utf-8?B?NWdGdlJEWlVWTGhEc000bEd3SGxud1IzRHNqZE12MVVpdDFaRUtMVkpMODVC?=
 =?utf-8?B?ZGpxNmRDOFBoWEJxZG1NajhXT0tOQjRtUHdQUHEzSnFlWkt0djJvVzhmaXUw?=
 =?utf-8?B?cWoyazBQVTZPRTNvZ3lLQkNGMTdtc1E4Y3ltTHUrVVdNNC9uYldaOGlaZ2pL?=
 =?utf-8?B?Q0hrWTBOT0NyQUlLRWJXaTJRKzh0WjV2SU1Sc0ZNNU1DMlJOMTZMWndBL1py?=
 =?utf-8?B?SjAxNXM2d2Y4R0NyTnFBMWlqbTRROVY3ZHUzOGNneGc2UkMySzY0TVZ3VzFk?=
 =?utf-8?B?L3ZyTXB6S2pMMDF1clB4M1hTTHA4K0ZRbnl5MGNvOE5PeXVBOEVMRGpSZDNm?=
 =?utf-8?B?Y1NITVRwUnpMeFRSWGdxNEtZTXpFREJPRzdBTG1rUDg4Wm9kdzI0VzkybGI3?=
 =?utf-8?B?YmdBQy9tOTN1S3NzLzZUbzd0OHowY1ZZVWMyZzg5NzcxbG5nVk5ob2loSFE4?=
 =?utf-8?B?b1J0eU9BQTBKOURQMFRONmRtNzdEOG93a254V0hGNWJQTU10SU9KNnV3enR3?=
 =?utf-8?B?SXFNTnZYdDNJYW0zMHUxSHNRNTFlaGtoZXFXbUlyNnNWZE5LcVN4QjU5dE83?=
 =?utf-8?B?aVdWR0lJckc3RGZ6eFp4KzhpK0c5Sml2dXAvcm52dzk5UzRjL01GQjFvTEcx?=
 =?utf-8?B?dlZWLzd2RkdDalJndTlxSHdhQ0xzY1dZSHFheHFIRXJrWHhIN3BNYlU5OFh2?=
 =?utf-8?B?cjVock5RcVRhbkU3Q3dnbmpwaWc2eEltbkJkUHl0empUZVIvUG9vYXpwRHVZ?=
 =?utf-8?B?VmU4bmNxZC9ielQ2WVUrZmY2NGlyMi9YQ2laOTdvQjhTQVFjOVlwUmJNNVNu?=
 =?utf-8?Q?mjOMJvvmqzSoVfxEP/PPYLwxwkPNq0WN1MqfAKW?=
X-MS-Exchange-CrossTenant-Network-Message-Id: c2f27cf8-99a9-4121-eb94-08d90bf020b8
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:53:42.0524
 (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: 1cBKCSNoHXWq3uKlUGXF5RyvZoT15a7I32uAk4pm8ljYi/ALFtmIMlqh6Xp9+qXHkCxJwF8N14+fEyZ8KQdfVw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

Introduce an interface that returns a specific leaf/subleaf from a cpu
policy in xen_cpuid_leaf_t format.

This is useful to callers can peek data from the opaque
xc_cpu_policy_t type.

No caller of the interface introduced on this patch.

Note that callers of find_leaf need to be slightly adjusted to use the
new helper parameters.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Use find leaf.
---
 tools/include/xenctrl.h         |  3 +++
 tools/libs/guest/xg_cpuid_x86.c | 38 ++++++++++++++++++++++++++++-----
 2 files changed, 36 insertions(+), 5 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 27cec1b93ff..cbca7209e34 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2608,6 +2608,9 @@ int xc_cpu_policy_set_domain(xc_interface *xch, uint32_t domid,
 int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t policy,
                             xen_cpuid_leaf_t *leaves, uint32_t *nr_leaves,
                             xen_msr_entry_t *msrs, uint32_t *nr_msrs);
+int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
+                            uint32_t leaf, uint32_t subleaf,
+                            xen_cpuid_leaf_t *out);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 0c9b3a960f0..de27826f415 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -280,9 +280,9 @@ static int compare_leaves(const void *l, const void *r)
 
 static xen_cpuid_leaf_t *find_leaf(
     xen_cpuid_leaf_t *leaves, unsigned int nr_leaves,
-    const struct xc_xend_cpuid *xend)
+    unsigned int leaf, unsigned int subleaf)
 {
-    const xen_cpuid_leaf_t key = { xend->leaf, xend->subleaf };
+    const xen_cpuid_leaf_t key = { leaf, subleaf };
 
     return bsearch(&key, leaves, nr_leaves, sizeof(*leaves), compare_leaves);
 }
@@ -365,9 +365,12 @@ static int xc_cpuid_xend_policy(
     rc = -EINVAL;
     for ( ; xend->leaf != XEN_CPUID_INPUT_UNUSED; ++xend )
     {
-        xen_cpuid_leaf_t *cur_leaf = find_leaf(cur, nr_cur, xend);
-        const xen_cpuid_leaf_t *def_leaf = find_leaf(def, nr_def, xend);
-        const xen_cpuid_leaf_t *host_leaf = find_leaf(host, nr_host, xend);
+        xen_cpuid_leaf_t *cur_leaf = find_leaf(cur, nr_cur,
+                                               xend->leaf, xend->subleaf);
+        const xen_cpuid_leaf_t *def_leaf = find_leaf(def, nr_def,
+                                                     xend->leaf, xend->subleaf);
+        const xen_cpuid_leaf_t *host_leaf = find_leaf(host, nr_host, xend->leaf,
+                                                      xend->subleaf);
 
         if ( cur_leaf == NULL || def_leaf == NULL || host_leaf == NULL )
         {
@@ -822,3 +825,28 @@ int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t p,
     errno = 0;
     return 0;
 }
+
+int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
+                            uint32_t leaf, uint32_t subleaf,
+                            xen_cpuid_leaf_t *out)
+{
+    unsigned int nr_leaves = ARRAY_SIZE(policy->leaves);
+    xen_cpuid_leaf_t *tmp;
+    int rc;
+
+    rc = xc_cpu_policy_serialise(xch, policy, policy->leaves, &nr_leaves,
+                                 NULL, 0);
+    if ( rc )
+        return rc;
+
+    tmp = find_leaf(policy->leaves, nr_leaves, leaf, subleaf);
+    if ( !tmp )
+    {
+        /* Unable to find a matching leaf. */
+        errno = ENOENT;
+        return -1;
+    }
+
+    *out = *tmp;
+    return 0;
+}
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:53:53 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:53:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120597.228081 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVSZ-0000Wm-2E; Fri, 30 Apr 2021 15:53:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120597.228081; Fri, 30 Apr 2021 15:53: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 1lcVSY-0000Wf-V2; Fri, 30 Apr 2021 15:53:42 +0000
Received: by outflank-mailman (input) for mailman id 120597;
 Fri, 30 Apr 2021 15:53:42 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVSY-0000Uy-BO
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:53:42 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d6e58172-2242-4fd7-a63c-504f03630e9e;
 Fri, 30 Apr 2021 15:53: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: d6e58172-2242-4fd7-a63c-504f03630e9e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798020;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=PCmZiBcei6/dqF4Y6hVv7Ycr6USHYz6GfRbyy4sLFtA=;
  b=bZivxbGxVSvCDW1P97fi6GOk3CmkPhQcOpBYPayL41vXDdHJW/fE32YA
   5KaWnht1bxJyNHQnR9RNvVl7bR7z5g9WRYqJUiVEjNVfg63hbDlfz/And
   Lj0uH2qkPs27ejtyfnuux9k7tfJgKfJLB/cp0DJvtWxmhT14LWfpLYJK6
   0=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: xNn46K4gSBOG8/JwAtcR+3jZ5Bk9XVEdayKXa8Ec/Hcs5H/UAR6/ScYLqBbQUkFeDyGDsDnL+D
 WwwyLZ3kY+Kt+hFMXuT7RTYd5xwtJa59aH+Tmhf5QvXMls9VY3QN713GBijZ7QoLYwVGxRGHLC
 I2b11ZXKB6MN9u0HrAF486hMEr6As8gjhvjZZy252sobb7wFItS0purJnoWhnVQD0NX5kFgLqC
 +baL8mrNen7zmf9RG5TO3txNWBd/xr1F5nWZQ6Y9AD2Nibg1kPt9WI7XYe1gRo3jygJ/F0TaMU
 feM=
X-SBRS: 5.1
X-MesageID: 44331678
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fEGxaqi0mfSDLtg5CfoFV0q8SnBQX11w3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+csFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmup
 tIW5NVTOf9BV0St6rHySGlDtctx8SG+qi0heHYi0xgVx1udrsI1WdEIyywe3cGIzVuL5w/CZ
 aa+457vDKmY3sadYCWAXMCUujFqbTw5e3bSDQBAAMq7xTLsCOw5NfBYmSl9zo9cxcK+7ct9m
 DZjxf0j5/Dj9iXwgLRvlWjlqh+t8DmzrJ4damxo+gTbg7hkwO5ILlmMofyxgwdhMGKxBIUnM
 LXoxEmVv4DmE/5Wm2uuxPi103B/V8Vmgff4GSVi3fivsD1LQhSY6Eq6PM7A3mpnnYIh91y3L
 lG2GiUrfNsfG79tR/w+sTSUFVSnle0yEBS4dI7tWBVUocVddZq3Ooi1X5Sea1weB7S2cQMFe
 ljC9zk//BGcV+WRGCxhBgf/PWcGls0BRuIWU4Ep4i81CVXhmlwyw8iyNUYhWpozuNzd7B0o8
 D/doh4nrBHScEbKYp7Gec6WMOyTkjAWwjFPm6+KUnufZt3dU7lmtrS2vEY9euqcJsHwN8Zg5
 LaSm5VsmY0ZgbHFdCO9IcjyGGPfEyNGRDWju1O7ZlwvbPxAJDxNzeYdVwom8y8590CH8zgXe
 qpMp4+OY6iEULeXaJymyHuUZhbLncTFOcPvMwgZl6IqsXXbqLwsOj2d+vSOarNHT4oVniXOA
 pHYBHDYOF7qmy7UH7xhxbcH1n3fFbkwJ52GK/Gu8gfobJ9crFkg0wwsxCU98uLITpNvugdZ0
 1lOo7qlau9uC2T9WbM5GN5BwpFAi9ukfLdekIPgTVPH1L/cL4FtdnaU3tVxmG7Khh2SN6TNw
 JDuVJt++aSI4aLzS4vT/KrW1jqzkc7lTavddMxi6eD7cDqdtcTFZA9QpF8Eg3NClhSggZlqG
 BKbSceXU/BHjbSiaGo5aZkRt33Rp1ZukOGMMRUoXXQuQG3vsc0XEYWWDaoTIqqmwo0fiFVgV
 dw6qcbp7KFlV+UWC0CqdV9FGcJRHWcAbpAAgjAQIlPgLjkdDt9SnqwiSWAhws+fXfr8Esuln
 XsRBfkC83jMx54gDR1w6zq+FR7eiGmc0V8ZmtTnKd9GW7F00wDm9OjV+6W6S+8e1ECyuYSPH
 X5ejMUOBpp3M3y/gWSgiy+GXIvwYgOMuTRAK84Saza3mqgJeSz5Pg7Ns4R2KwgGMHls+cNX+
 7aRhScKyngDfg1nyOSvXQoNUBP2TAZuMKt/Cegyme23HQyW6WPZHtnQqwWONGa4SzPQe2S3J
 BwkNIyuq+RPwzKG6m74JCSSwQGDBXZ5VOSZaUPj7t/uKoprrt9H5XBS1LzpTp69SR7CP2xrV
 8URaRw3avINYBudfEDYi4xxCtcqP2/aG8Q9jHsCuAwfVsRn2bWEtOA7b3Ps6cuCCS61X3NEG
 ja1yVc+vvfNhHzroIyOuYVIW5MblI752kn1OSed5fIAAHCTZAPwHOKdlu8eqRaUq6LBPE5qQ
 t7+ciBm6uyezDj0A7d+Rt9LaQmyRfqfeqCRCaNE/VP6dq0JBClhbar+te6iHPPcgSAAn5ozb
 FtRAg3dcRMij4rkY0x3GyTc8XM0zwYumobxypmmF7r0pWh+0HBEyh9QFXkvqk=
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="44331678"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jkBWrQJskZdbF3bwRGFqRxUm4BUhF5+duVbTnaV8lC9uHbfC4w7l8dZi7sodtOyzmG1D8oySR+Tfy2b7w0GBMTvxk+YVje8AkE9UVyyoVemUrqBPG8IqLyJfL8K7wUs3XrA9JKUpPNSlcwxMYMd1WScnbDjaUbAzfBBYQ1seMmww/0CI/Wo3waMxRIps0vOXQqQ5syFBhmKhCxhkKjPNiYaxhaDEtWfYfNJ68HI446ZAQl9m8KAtOxPvZzunMzQLYH6BJICT+ZJwH2Gi+Hq72pLNhDn7bOGdRr1IcQiL1ldhGSHhGwotVhhbU2HZBpp2doODRY8D20YIWTXu9/ePmg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Qgb30KFYcBaUuDasLfF1eBFyIimrl8aSOAVxfb7Zs3E=;
 b=WjJx4oZy6hRLrLgo1lK2iX4xx/iR75htJThriuiY08Ld4Mgct0b0sKDRFoqTnZGrIZSltfWbd/zW81OHCbQOIkLDEdQSuH+bUJ4JGzgE0ksNe7QUzt62FE3Cfsa2xLhLPKjbprlcwTt/zofIIAXcyN5++ifT4pmK2v/V7IdZiAiR8c/EkPsStyULR0zVg9AFspA6uiN9X6varaxn8MzI77Vi6OEFNA2+wMQGUZJn/b+MuFnuQ6Zwwr3Hxk4LJRPE7+lzqRnPKVM47BcI0dlbZ/0OOq5cQIBlil+GwMxaGiGIqyXNyDwKK4Y1ZXbuehd1zvwgY2VeuOEXDXGHBwGQmw==
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=Qgb30KFYcBaUuDasLfF1eBFyIimrl8aSOAVxfb7Zs3E=;
 b=rX7iDPuu3pLc6HmZAvYxcyCJaXl+xcdEYkUxS5bx67c8mVLzLHGNL64J8gMn23ZHZT5VOu0L/fftApZyuKBWZPoWvjQUuQKfWgJX7mZS2wox6WkdYgZRnR5T7liZ7waHB1ZDGv8vc0mJjveyjANN1j50dW2zTZOoQSadssi7jmk=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Jan Beulich
	<jbeulich@suse.com>
Subject: [PATCH v3 01/13] libxl: don't ignore the return value from xc_cpuid_apply_policy
Date: Fri, 30 Apr 2021 17:51:59 +0200
Message-ID: <20210430155211.3709-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR1P264CA0030.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2f::17) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3f5d6a9b-15ad-4092-de43-08d90bf01d65
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2923702E9408595AD199409D8F5E9@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: mBoySspwKzEnKdv8wZig951N1yfvuUMCFO8N19jCqTWGwPJ9MwM2LhoAUZ0C8fBHMFmjmf50HeoBBhx1NEuXJiR8eH4Je/EeLmi9cmIlhfnkGEJlYDb8cYLGQOnMHLqqSatHQfXVr/MnljaDtL0juo8giIm6UnLmo+DMafnffx18FMWU9oJajA/kCmYOViHybNt27yaDwsFza7cu58WsW2RyMSQmRmVZNwP677DJ84ZtJ4hgg+CbaA98EzV4iEiiin6C9fpRYq9gKKmVu/4V7ewL4g1C8DWNphTn324PfkDSl02XP93d/Og9gvfNoMP/WeeHejkgfr5PjKKcV44narkC/sk23+4MMSduyH4EilVcHggNOTnpfjqFvL2CJAeQjTQCbAUf4L0G3nYNb2TTRKwcMqbXVHAT6zr0mOgnDNmh14WjD3kgpRWFWQoUFoHJIY0kTiAkSefRwFP1A9/Ja/A4y4B3jpmhv+RyV9cW76l8bP29qrvy8Tw1Hw+oFR6/JrB69it+QFJDF1mwbcgQ9mZrZa50bnJH+drwyg1Gu3IqFQmGao0vzBxD0j8FJ9KQ2HMSxmj+Y5q6W7OYk7BdCNAhUEK6XzU0PzW7/ZMmAoo=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(956004)(186003)(16526019)(86362001)(4326008)(8936002)(1076003)(6486002)(2906002)(5660300002)(26005)(66946007)(316002)(2616005)(38100700002)(66476007)(478600001)(83380400001)(6496006)(66556008)(6916009)(36756003)(6666004)(54906003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?BF06MdsqccBx9RcbRxd0dHCsD/Jhws4XyNHcVwf?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3f5d6a9b-15ad-4092-de43-08d90bf01d65
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:53:36.4052
 (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: 93V7NCGb8vxD3WefAtltGzc+FJcV16TnQWKHOjYT4barX0uOkAQ6mgLXWMnHoyxO1GqHJ3e4ORh4/kKjGOoKXw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

Also change libxl__cpuid_legacy to propagate the error from
xc_cpuid_apply_policy into callers.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
Changes since v2:
 - Use 'r' for xc_cpuid_apply_policy return value.
 - Use LOGEVD to print error message.

Changes since v1:
 - Return ERROR_FAIL on error.
---
 tools/libs/light/libxl_cpuid.c    | 15 +++++++++++----
 tools/libs/light/libxl_create.c   |  5 +++--
 tools/libs/light/libxl_dom.c      |  2 +-
 tools/libs/light/libxl_internal.h |  4 ++--
 tools/libs/light/libxl_nocpuid.c  |  5 +++--
 5 files changed, 20 insertions(+), 11 deletions(-)

diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index f32c5d3a6f6..eb6feaa96d1 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -426,11 +426,13 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
     return 0;
 }
 
-void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
-                         libxl_domain_build_info *info)
+int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
+                        libxl_domain_build_info *info)
 {
+    GC_INIT(ctx);
     bool pae = true;
     bool itsc;
+    int r;
 
     /*
      * Gross hack.  Using libxl_defbool_val() here causes libvirt to crash in
@@ -469,8 +471,13 @@ void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
     itsc = (libxl_defbool_val(info->disable_migrate) ||
             info->tsc_mode == LIBXL_TSC_MODE_ALWAYS_EMULATE);
 
-    xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0,
-                          pae, itsc, nested_virt, info->cpuid);
+    r = xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0,
+                              pae, itsc, nested_virt, info->cpuid);
+    if (r)
+        LOGEVD(ERROR, -r, domid, "Failed to apply CPUID policy");
+
+    GC_FREE;
+    return r ? ERROR_FAIL : 0;
 }
 
 static const char *input_names[2] = { "leaf", "subleaf" };
diff --git a/tools/libs/light/libxl_create.c b/tools/libs/light/libxl_create.c
index 43e9ba9c634..e356b2106d4 100644
--- a/tools/libs/light/libxl_create.c
+++ b/tools/libs/light/libxl_create.c
@@ -1434,6 +1434,7 @@ int libxl__srm_callout_callback_static_data_done(unsigned int missing,
 
     libxl_domain_config *d_config = dcs->guest_config;
     libxl_domain_build_info *info = &d_config->b_info;
+    int rc = 0;
 
     /*
      * CPUID/MSR information is not present in pre Xen-4.14 streams.
@@ -1443,9 +1444,9 @@ int libxl__srm_callout_callback_static_data_done(unsigned int missing,
      * stream doesn't contain any CPUID data.
      */
     if (missing & XGR_SDD_MISSING_CPUID)
-        libxl__cpuid_legacy(ctx, dcs->guest_domid, true, info);
+        rc = libxl__cpuid_legacy(ctx, dcs->guest_domid, true, info);
 
-    return 0;
+    return rc;
 }
 
 void libxl__srm_callout_callback_restore_results(xen_pfn_t store_mfn,
diff --git a/tools/libs/light/libxl_dom.c b/tools/libs/light/libxl_dom.c
index 842a51c86cb..e9f58ee4b2b 100644
--- a/tools/libs/light/libxl_dom.c
+++ b/tools/libs/light/libxl_dom.c
@@ -384,7 +384,7 @@ int libxl__build_pre(libxl__gc *gc, uint32_t domid,
      * being migrated-in/restored have CPUID handled during the
      * static_data_done() callback. */
     if (!state->restore)
-        libxl__cpuid_legacy(ctx, domid, false, info);
+        rc = libxl__cpuid_legacy(ctx, domid, false, info);
 
     return rc;
 }
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index c6a4a187f5b..44a2f3c8fe3 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -2052,8 +2052,8 @@ typedef yajl_gen_status (*libxl__gen_json_callback)(yajl_gen hand, void *);
 _hidden char *libxl__object_to_json(libxl_ctx *ctx, const char *type,
                                     libxl__gen_json_callback gen, void *p);
 
-_hidden void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool retore,
-                                 libxl_domain_build_info *info);
+_hidden int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool retore,
+                                libxl_domain_build_info *info);
 
 /* Calls poll() again - useful to check whether a signaled condition
  * is still true.  Cannot fail.  Returns currently-true revents. */
diff --git a/tools/libs/light/libxl_nocpuid.c b/tools/libs/light/libxl_nocpuid.c
index f47336565b9..0630959e760 100644
--- a/tools/libs/light/libxl_nocpuid.c
+++ b/tools/libs/light/libxl_nocpuid.c
@@ -34,9 +34,10 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
     return 0;
 }
 
-void libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
-                         libxl_domain_build_info *info)
+int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
+                        libxl_domain_build_info *info)
 {
+    return 0;
 }
 
 yajl_gen_status libxl_cpuid_policy_list_gen_json(yajl_gen hand,
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:53:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:53:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120599.228105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVSk-0000es-LX; Fri, 30 Apr 2021 15:53:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120599.228105; Fri, 30 Apr 2021 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 1lcVSk-0000eh-I8; Fri, 30 Apr 2021 15:53:54 +0000
Received: by outflank-mailman (input) for mailman id 120599;
 Fri, 30 Apr 2021 15:53:52 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVSi-0000cv-OZ
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:53:52 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 383de63e-048e-4b57-b395-a2ed92b46ed9;
 Fri, 30 Apr 2021 15:53:51 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 383de63e-048e-4b57-b395-a2ed92b46ed9
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798031;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=3QI6nIHICm7IiETY4sabstkRIAffc6tHvTWeY2+r5kw=;
  b=Bjbn7xNSZyDmgG7BKVjdfIjwwiuWTknYp0iW8RcyzUy/mUXraxbVj54U
   CtdNvgVIjRZyaVl0XNQ+KG4GN0nEtqzzUhXAlhjjJyszAnUSh0bSQ63gl
   BB2Z/e6XeNV+gPYY/cWU+uiIIUz1NjyhwdWDWk2H7Gt4TwxqPBHLv9sRf
   s=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: b+jLvBzF4coDP6O8VQIKJdH7/COxxvA8D13kuMeQ0d+c6M7BfrpeMEwgQ/08XK+eXFAqODhGBs
 w4iLc93OKiJRqHpXlDvJGOdNTvtQ92K5oSifGwK65VkDRGYaFXfVZpEfN7LtOBH7laHVRe4sVC
 nmr3yJlNVCejG1FcC+KOTlPaGF3DhiReFMODiZYVYwOqhw9DrxCSMoLi0o97IvNPm0KtNXATeu
 y0aZ5dVT+T+SBab/yPAy8oO9CeTW7mh/vAX6gc3ghWbbP3BI3d53eZZ9fXq05+cS5x93womncf
 t2A=
X-SBRS: 5.1
X-MesageID: 43199232
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:4mjqk6zUzNbHoIIWf9mMKrPxvu4kLtp033Aq2lEZdDV8Sebdv9
 yynfgdyB//gCsQXnZlotybJKycWxrnmKJdybI6eZOvRhPvtmftFoFt6oP+3ybtcheVysd07o
 0lSaR3DbTLZmRSpczx7BCkV/Mpx9ea+K6l7N2utktFZwdsdq1m8kNdAgGUDkV5SGB9dOIEPb
 Cb4ddKoCflRGQPYq2AdzI4dsXKutGjruOCXTcoHBgigTPhsRqJ7/rAHwGczlMiVVp0sNEf2E
 zktyC82am5qfG8zXbnpiXuxrBbgsHoxNcGJOHksLlwFhzWhgylZJtsVtS51VhYz92H01oknM
 LBpB0tJa1ImhTsV1uoqhjg0RSI6lYTwkLi0lORjD/CpsH0VVsBeqh8rL9ZaRfQ5g4cush92s
 twrgGknqdQZCmgoA3No/zzEz16nEu9pnQv1cQJiWZEbIcYYLhN6aQC4UJ8Cv47bW7HwbFiNN
 MrINDX5f5Qf1/fRWvepHNTzNulWWl2NguaQ3IFptee31Ft7T9E5npd4PZasmYL9Zo7RZUBzf
 /DKL5UmLZHSdJTSq5hGuEbQ4+SBnbWSRzBdEKeSG6XWp0vCjbokdra8b817OaldNgj150pgq
 nMV1teqCo8YETrBcqS3IBa8xzETWmnNA6div121txcgPnRVbDrOSqMRBQFiM27ucgSBcXdRr
 KyNfttcrzeBFqrPbwM8xz1WpFUJ3VbetYSoMwHV1WHpd+OLoXrs+fcYevCPbaFK0dnZkrPRl
 84GBTjLsRJ6U6mHlXihgLKZn/rckvjuZRqEKbb+OAXwJMXNpJFtxUUjVjR3LDLFRRy9ogNOG
 duKrLula224UOs+3zT0mlvMh1BSlpO7K74SHNMrw8SO0byebIO0u/vPFx67T+iHFtSXsnWGA
 lQqxBL4qqxNYWX3j1nIcmgKHimg3wao2+qQ58QlraY39rsfoo1A/8dKehMPDSOMyYwuA5x7E
 9fdQcPRybkZ0jToJTgqKZROcbyWJ1XhhyxLctdtHTF3H/s3/0Hdz88RD6hUcmenAA0YSFb72
 cBvpM3iKacmDqpNGs0iPk5NloJc2iMHLdaFm2+Ffhps6GudwdqQWiQgzuGzxk1Z2rx7k0Xwn
 fsNCuOZJjwcxNgk2Ed1qbh61VvcGqBO0p2d3BhqIV4fF62zUpbwKuOZqCp1XGWZUZHyuYBMC
 vdaT9XJg913di42FqUnzmFfE9WsKkGL6jYDL45davU1W7oIIqUlbseF/sR5Y17LrnVw5w2eP
 PafxXQICLzCusv1QDQrnE5ODNsoH1hlf/zwhXq4GWxwXZXO4ubHH12A7UAZ92M5WntQPiFlI
 90it84puO8OGT8YNzu89CiUxdTbhfI5WKmReAhrp5Z+b8ovLxoBp/BTH/G0mpE0BhWFraFqG
 oOBKBgpLbPNY9kc5ZMJ2ZX/l81mM+OK0VuuArsGeM6dUwsiXieP97h2cu3lZM/Rkma4A33Mh
 2D9icY+fHPVS6Kz6QbBKI9On4+UjlI1F1yuOeZM5TNAwCrffxZ9FW0MnWhYKZQIZL1Zok4v1
 J/+ZWUhOeZeCrzxRDIsTZ6KqxI9Xy7QcnaOnP8JcdYt9qgOVqNhaO24Mm8yDfvIAHLF3gwlM
 lCaVEaaNhFh30rkJA3uxLCOJDKng==
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="43199232"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gx8PbYQeGFznCJLGvd1TDRysETJAgN+yBr/NvxucF2bquHkGsB1zocYjqwEVGWfnu5wu1XC2y5JsnB0AM6L66yNKAyjPFH6O/XErj1aj/xDyIcyhhEKd1LsqnL/2tsWEpuSnHVL/Spb6q9CaLqewvQzDpqWywemkCKreitEe8eqxeAeqOQzbaGkUGmOkHhazEfeTk/p/shypTxCzcFXaJAUTuvCeOTlqbr7rJh9THMTnlvfYysXvyXHZWrICC+9N1lgGHyDVcwhLUFRPMgICZZfrawI+OKG4K8hqL/N+L/rr3XYSfM+37SDHahkclrZJzE388C3PX7sLtUlSC8C10A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ReYtIhfneceED5ekYrJYnGrommG0WKr3NQgh92cs/8w=;
 b=icTsCbe+UVNYdBLCQTWMeQKJm0/psLBXHZEaeNYx49KVLkZ9ButF0GYANcvuASYmSuy1S9YVb9oVo0nyA4d7G8ncdkQJ2DNcxJEzJCoQZ6QtK5K7uPFzxW3DLz39vfuICKIctSDZdJnmQdRQoH9xIqSNcsQD7AXIegFNZwAq0sg9m2AeAyMHq7XRfw+sH9irRtbN+CB7JINZ1v52L8QkdhnvUGYqEss7mJYM1UH8g0w/OjExwn+C+6iqNxC7R1pUgjAs8Qmnz0GcCMy7ldJjqOIatHVOaBm6ZhiRcqEfzs7BYziOKGoGP0s4xmsv+PxYY1pMWooATMaMBvO8WGiZpA==
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=ReYtIhfneceED5ekYrJYnGrommG0WKr3NQgh92cs/8w=;
 b=OIFBmtJH+57JqD5P/CZIXmTSH6PzLn8Xft847pmnZWwSS6tH3ZxPLq0bUGRgcnaaumgHUniqlTZ8p+zS6T0+Ad4NN2Y39A5VC0MVnLCfZ2i6xXVcKnHJM4vIF1FNTsMh8kZgwlcg4RVA1VbRshmqXip+Wiue4VQfzkXGVxFW4OY=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 03/13] libs/guest: allow fetching a specific MSR entry from a cpu policy
Date: Fri, 30 Apr 2021 17:52:01 +0200
Message-ID: <20210430155211.3709-4-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0017.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::29) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 20912c23-6269-496a-e325-08d90bf02424
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2923FDF6DAC9FF511B9C04158F5E9@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: m5aITIx3FG28L2Et90HdUdi94T6lHdCsO+sUeQ95p0vyieQ/EPjFmrAE+xy02rpbJZ3EfgjM3D24SMwgvOfSgOm7EeTmnA+fXqzpgfgJqCWZAhAT5ojw8I9U1PU8CxQ1o4J1VFIen3nkVjPYBZSayHyZcUYo6WB7pmyUfybyLqzzwDxDIqyVK+W/U9SCSUhZLtUpJsj2P5J22GOkezc6/r5ddkXQtYi+FXa9X1TDHNSJ0GJlIUfTHSe7U7SWbGx4/j7ZT+QioAi2esa0dG+m/NPyw6Yjem0rwwkyuk9yuvc5Y8ATkd5I3wvGJZdLXIS0lfolNpfwi96x5bKe6W76tg+c09DYo4p5xiPyIgksmgvT20MpYzyWtQaiAk8+QO5kXhScMcEvoiXOT+i0x9bkKsySVBKl9pjM9JPvs7tTxl8vP16pcMlcjKH9fnkpj+RAE36ER5os5CQyel8QX+QLyKD1o7YfAuAm6IZ+FEykKR3P7WjUgjAtAnZ1yF2nHM+Et1W6BzCKgwmdZs3gJuMdMIuVPzHNpebT2vJ98WNk50TGeMpbAg19fLNsgZkIMfJKK6bhooMWv7YASKz7Tn+1iXBjIEiacV0mzmXaXamm198=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(956004)(186003)(16526019)(86362001)(4326008)(8936002)(1076003)(6486002)(2906002)(5660300002)(26005)(66946007)(316002)(2616005)(38100700002)(66476007)(478600001)(6496006)(66556008)(6916009)(36756003)(6666004)(54906003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?MddXE/3vQuhJvaBIFocTp9rkROrBjgoTxzxzWUA?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 20912c23-6269-496a-e325-08d90bf02424
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:53:47.7981
 (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: j6jBqpnSLD/DNbJEGZagIN2YG8DEMk0Yxf5BeeaSySkK4ft3RQvEwyPmYF+2xLxpqtHgeTFQojS+0h9ozOyNUA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

Introduce an interface that returns a specific MSR entry from a cpu
policy in xen_msr_entry_t format. Provide a helper to perform a binary
search against an array of MSR entries.

This is useful to callers can peek data from the opaque
xc_cpu_policy_t type.

No caller of the interface introduced on this patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Introduce a helper to perform a binary search of the MSR entries
   array.
---
 tools/include/xenctrl.h         |  2 ++
 tools/libs/guest/xg_cpuid_x86.c | 42 +++++++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index cbca7209e34..605c632cf30 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2611,6 +2611,8 @@ int xc_cpu_policy_serialise(xc_interface *xch, const xc_cpu_policy_t policy,
 int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
                             uint32_t leaf, uint32_t subleaf,
                             xen_cpuid_leaf_t *out);
+int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
+                          uint32_t msr, xen_msr_entry_t *out);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index de27826f415..9e83daca0e6 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -850,3 +850,45 @@ int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
     *out = *tmp;
     return 0;
 }
+
+static int compare_entries(const void *l, const void *r)
+{
+    const xen_msr_entry_t *lhs = l;
+    const xen_msr_entry_t *rhs = r;
+
+    if ( lhs->idx == rhs->idx )
+        return 0;
+    return lhs->idx < rhs->idx ? -1 : 1;
+}
+
+static xen_msr_entry_t *find_entry(xen_msr_entry_t *entries,
+                                   unsigned int nr_entries, unsigned int index)
+{
+    const xen_msr_entry_t key = { index };
+
+    return bsearch(&key, entries, nr_entries, sizeof(*entries), compare_entries);
+}
+
+int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
+                          uint32_t msr, xen_msr_entry_t *out)
+{
+    unsigned int nr_entries = ARRAY_SIZE(policy->entries);
+    xen_msr_entry_t *tmp;
+    int rc;
+
+    rc = xc_cpu_policy_serialise(xch, policy, NULL, 0,
+                                 policy->entries, &nr_entries);
+    if ( rc )
+        return rc;
+
+    tmp = find_entry(policy->entries, nr_entries, msr);
+    if ( !tmp )
+    {
+        /* Unable to find a matching MSR. */
+        errno = ENOENT;
+        return -1;
+    }
+
+    *out = *tmp;
+    return 0;
+}
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:53:54 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:53:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120596.228068 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVSV-0000VV-K9; Fri, 30 Apr 2021 15:53:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120596.228068; Fri, 30 Apr 2021 15:53: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 1lcVSV-0000VO-HC; Fri, 30 Apr 2021 15:53:39 +0000
Received: by outflank-mailman (input) for mailman id 120596;
 Fri, 30 Apr 2021 15:53:37 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVST-0000Uy-FP
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:53:37 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id d3d89862-0dae-4dfc-b2c7-b3bc4ff36182;
 Fri, 30 Apr 2021 15:53:35 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d3d89862-0dae-4dfc-b2c7-b3bc4ff36182
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798015;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=wjV7ebxtK0uP+q4vxYvlR5zF4mPzAmFR4kAEUmMMWTA=;
  b=dX+fPy5g2j0KsYgrhwmJD2UKCbQKBXJ0PrV0XuSy7Q3QvvVN4lXslS00
   lDM/23/f55ltqaYbWVjDa4ppIcO+8i3Y6/liMw+05KeaLDjLPjWdpZAfr
   cpMjYDKd4p1nrAKgst66iHlDzq5u4GHZw6yNUKUzxRSMA8ruVH1e4oD7s
   s=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: VpQ7Su9F3sZBWN8ydXp0kJutSVCOs5pFf7hWUSsSHULjWRqS1yzWqNuf04QYb/id9uqoNXOtBU
 ty+2iuJ7f0+68I4v1Vfi24oSJxpjU4tZEjZZVNvZNvoTlCGu1BTeLdrsSNnJ8MKWn8JqQW0gjO
 p8Uq5LXQGPQn0WrPmIlI9Wwy/SOa32eIZhBRZ5X6WjA3A1wpnfjaS6rRs8wtwFZ072EucOq80P
 yg/6rhgRwv5PTwedHbHheHebU0Vp28OqGhWxBCk7rKaEwWTuSw6c91sthZ0cVEXJFx+XR0CQc6
 xVQ=
X-SBRS: 5.1
X-MesageID: 42829620
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:8P77LahSVFrcUOYBrPgZDcSER3BQXk8ji2hD6mlwRA09T+Wzkc
 eykPMHkSLugDEKV3063fyGMq+MQXTTnKQFhLU5F7GkQQXgpS+UPJhvhLGSoQHINg/f0qpz1a
 J8f7MWMrfNJHVZreK/2gm3FN483MKKmZrEuc7yx2pgJDsaD51IwBx+Dm+gfnFeYCljKd4HGI
 GH5sxBzgDQGkg/SsigHHEKU6ziirTw9a7OWhINCx455ATmt1rB1JfAHwGczlMiVVp0rosKy3
 TPkADy+8yY082T9xm07QHuxqUTvOHBo+EpOPCx
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42829620"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KE/O9yJgxjPbnTGY+viRy7X+iFw1HLrjUHLuevCOZMvOtycfVwWZxCMPPqJH/qjquIzTvDkWP75i6sKm08dyU1lo0VMtnHd0omRAxfyvWQW2z+ZZYHJmTEs22gBrkqUZY9WgBjyprsuFEHNz4wBWO3cgjAPNGPUx39NrT0smamt2Yv+0ECv5bG085TDgTkhEPGwkhERrCqedAR24I9tr5T9C0qJOnHfq6lDFiIe52ZlpN4EDcAApTqSfyfY2oc1Lt2xiMjEqEdkHI6SqMpFLV8UXVWzMC1weU0wz4pakppwXoNi+9R047NftOLY5ineBfte8H/GrgwFRz8ZhqbDn6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EY6MmV3Lly/+H2Zssd+ZQFW2+lQksSIYRPGLPmNTCOw=;
 b=NB5cZBCdeTR4wIjPtbHvycjugIYyMDGRhwENXeCADQpWe5UzSXkAGQkGH0Q7S5LUwJfWVHP+f+zKBEDvjkNYCSlJLJYoJOtUU3BSl0SVI3pbtyek+7KNZ+HJejY8H5X2j/XgftaPP724tCVBqun5xAN3OI3A7N4Lgm0k7VU6u4gtCTCXcGUVRkeBtA1GofLxGsYIlrVknWLSIjntCr5clPWthMCzWgXtAdw+RbiJeLLd1yXww6746rzTvN1t+rk+Xgiw8wzrCgjJQT5G6DUTFENr/gL6UToig7hZWYu2KC2XxjV5hdJqF55l8i/QB7BAY7vtKVhucEVGw+gQILiCvA==
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=EY6MmV3Lly/+H2Zssd+ZQFW2+lQksSIYRPGLPmNTCOw=;
 b=MitmPq+a/XiR2M3gT7gDA7Vny/KJtGFG2mm4C33/3w/eMwChuR0FYTRi5uH4CRY+WntnExjmSIjtdUpiuLW6j+9W/lpGQVosngAAt1mMkRnw2PcTITzrXMAqFyHn8znNgtn/NbMkjpw88XuQW3ZnA2FA2zm9ildK17VOn+U/hdc=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v3 00/13] libs/guest: new CPUID/MSR interface
Date: Fri, 30 Apr 2021 17:51:58 +0200
Message-ID: <20210430155211.3709-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0062.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::26) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 3717d5ca-dafa-4080-43ee-08d90bf019e3
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2923C4583CDD7564F3DAC0A08F5E9@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: V9ogXIjLseEfOkq/TnzxM8xFIE5DY/FLVHbjvNOns3uEg2yWJwpBfxYuvMTplo2Wdnmf71NWchRaVHZ3JrPephAY3jADLpBELHWDd43U5aaeXVmvu6r0vJr1LIjznSytl+lILW5sf67o8LtHyhfX5JXLul8TokI+xXjXI74nN/Zrc7iLEBAjt+Ulag8M9Pi+LrInM8/VMBqJAWnsQZz2wnYlg3D7DeAhU54pt7ZYCbKAscS5sXP2U+dda/SHQNrqLesYbsFkPB00CtITkAS+rLOg7bXSIf+dH/iztymo17NBzY5cypLmU2YWhWoFpuy8pD44GVyqpno68Kp9s5nXpwUZcse+KRxXDy3J7XzxO6RPYAbeMwMXFCzALxwkfa/mMp/L+Q5b/W8BSbb2FRmu+hAAKjyDS5drEsQ5vhQG65GUXYKGHGN/SBzrQi3xzuFlqoUREvucyWXGulHTbhLzUu958zjM4KOqQ34BAx3dZ/ACvSNgTzd6CQ0ILVoybWm82oI6ibA66i1x7Ue+L9tdMVL6jKkOkbyQuEWyhcl2Zjb96rGwffGIjYtXaPKtcxbYJ/iWlAqePMoMY1m40IWfAirJ13zMYZqzgQUf334dO/8=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(956004)(186003)(16526019)(86362001)(4326008)(8936002)(1076003)(6486002)(2906002)(5660300002)(26005)(66946007)(316002)(2616005)(38100700002)(66476007)(478600001)(83380400001)(107886003)(6496006)(66556008)(6916009)(36756003)(6666004)(54906003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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/qDdU?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3717d5ca-dafa-4080-43ee-08d90bf019e3
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:53:30.5948
 (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: h+gqBqXdsxF5wNW+bIlkCijGKo3Cy1r6Bmg0X+aEbfyL5MFxJ0b0WsGAdn6UrfS0/eVAOjqJXWJ4K6YCAcfsiA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

Hello,

The following series introduces a new CPUID/MSR interface for the
xenguest library. Such interface handles both CPUID and MSRs using the
same opaque object, and provides some helpers for the user to peek or
modify such data without exposing the backing type. This is useful for
future development as CPUID and MSRs are closely related, so it makes
handling those much easier if they are inside the same object (ie: a
change to a CPUID bit might expose or hide an MSR).

In this patch series libxl and other in tree users have been switched to
use the new interface, so it shouldn't result in any functional change
from a user point of view.

Note there are still some missing pieces likely. The way to modify CPUID
data is not ideal, as it requires fetching a leaf and modifying it
directly. We might want some kind of interface in order to set specific
CPUID features more easily, but that's to be discussed, and would be
done as a follow up series.

Thanks, Roger.

Roger Pau Monne (13):
  libxl: don't ignore the return value from xc_cpuid_apply_policy
  libs/guest: allow fetching a specific CPUID leaf from a cpu policy
  libs/guest: allow fetching a specific MSR entry from a cpu policy
  libs/guest: allow updating a cpu policy CPUID data
  libs/guest: allow updating a cpu policy MSR data
  libs/guest: introduce helper to check cpu policy compatibility
  libs/guest: obtain a compatible cpu policy from two input ones
  libs/guest: make a cpu policy compatible with older Xen versions
  libs/guest: introduce helper set cpu topology in cpu policy
  libs/guest: rework xc_cpuid_xend_policy
  libs/guest: apply a featureset into a cpu policy
  libs/{light,guest}: implement xc_cpuid_apply_policy in libxl
  libs/guest: (re)move xc_cpu_policy_apply_cpuid

 tools/include/libxl.h             |   6 +-
 tools/include/xen-tools/libs.h    |   5 +
 tools/include/xenctrl.h           |  75 ++-
 tools/libs/guest/Makefile         |   2 +-
 tools/libs/guest/xg_cpuid_x86.c   | 832 ++++++++++++++++--------------
 tools/libs/light/libxl_cpuid.c    | 231 ++++++++-
 tools/libs/light/libxl_create.c   |   5 +-
 tools/libs/light/libxl_dom.c      |   2 +-
 tools/libs/light/libxl_internal.h |  32 +-
 tools/libs/light/libxl_nocpuid.c  |   5 +-
 10 files changed, 744 insertions(+), 451 deletions(-)

-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:54:04 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:54:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120606.228117 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVSu-0000mo-70; Fri, 30 Apr 2021 15:54:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120606.228117; Fri, 30 Apr 2021 15: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 1lcVSu-0000mg-3M; Fri, 30 Apr 2021 15:54:04 +0000
Received: by outflank-mailman (input) for mailman id 120606;
 Fri, 30 Apr 2021 15:54:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVSs-0000lG-VX
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:54:03 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 842897c2-1b0e-4e67-9d4b-837ef2fc8b91;
 Fri, 30 Apr 2021 15:54: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: 842897c2-1b0e-4e67-9d4b-837ef2fc8b91
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798042;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=JO3corwwH7CRtk0Hj71DwiqJkvyHqQxAbPsRbBGQKto=;
  b=NkM9NtR3SkEWADHCKIpCybbAGrwZPeglH3tufxEO3LhTnHQbvVDtMYRC
   dXx8OSOQtqIn19V/TBu0kRLScfhiBFke0xpo0E/bKHGTq7CjYoFecRFiE
   9CU4oyVBNnz7pfiw/Awv0MS55TqI3mRhfEVGfn0r2n0iptOsDVL4TxFws
   w=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 8xIh4amYL5gHTXVoWaHJlUQ1bsKzWDhxeYN3cucW6wnbUy70IEd/5WHW94p+53S0ss9jPxzo5T
 H9//bQWE/5jnSplsY3ZTvD5turiAsrfx1BxTA5ZppzBggYgdrSl78wyHzj6Bk8uEJdk0A7AqmT
 HNW+uqhV1Nuva0CdeZ+xQr9a5CYgD0SZo+ORkyHq7THvpY6992RKMK+JARU9TeLLHXc3SaujqW
 xjkojvYqCl4nTd8zYFspN6qj8nApRkni6ySWFwosQQ2RqGbZsivecTrSZIx+CpcWNZJczCneJh
 mas=
X-SBRS: 5.1
X-MesageID: 44331706
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:3UPkQqnmmKSNMLge4myFAzn/EjnpDfO+j2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN9AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 1dWoBEIpnLAVB+5PyQ3CCRGdwt2cTC1aiui/vXwXsFd3ASV4hL6QBlBgGHVmh/QwdbDZQ0fa
 DsnvZvjTymZHgRc4CHFmAINtKz7OHjuZr6bXc9dnsawSaUizfA0tDHOjiemiwTSjZehYolmF
 K19TDRwoWGn7WFxgTH12nVhq4m0ufJ7tdYHsSDhow0B1zX+2KVTb9sUbGDozw5ydvHgDpErP
 D2rxgtJMh14X/KF1vFxifF4RXq0zol9hbZqWOwvHr5rcT1ABI8BsZR7LgpECfx1ks6sNlwlJ
 9MxmKS3qAnbi/ooSKV3bn1fiAvsnDxjWspkOYVgXAae5AZcqVtoYsW+14QOIscHQrhgbpXXN
 VGPYX53rJ7YFmaZ3fWsi1E29q3REk+GR+AXwwrptGV6T5Lh3p0pnFoi/A3rzMlztYQWpNE7+
 PLPuBDj7dVVPIbaqp7GaMnTdaoDHfOBTbBKnibL1iiNKxvAQOCl7fHpJEOoM26cp0By5U/3L
 7bVklDiGI0c0XyTcKU2plG9Q3MXXW9UTzhxto23ek4hpTMAJ7QdQGTQlEnlMWt598FBNfAZv
 q1MJVKR//vRFGeWrph7knbYd1/OHMeWMoatpIQQFSVuP/GLYXsq6jeePbXL7z9DCY8VgrEcz
 k+dQm2AP8FwlGgW3f+jhSUcWjqYFbD8ZV5F7Wf+fMSxogLPohFqRMUlly9+8GOJVR5w+0LVX
 o7BImivrKwpGGw82qNxX5uIABhAkFc56ilT2lHvhYQM0T/ca8KvtKWfWw65grDGjZPC+ftVC
 JPrVV+/qy6a6GKzSc5EtS9LyaxlH0Ivk+HSJ8ah4yO7croYYkDE54jQaB9fD+7UyBdqEJPki
 NjYBVBblLDHjnu4J/V96A8NaX6TZ1ApyuFZeRTsmnSsE2Ao9pHfApgYxeeFeiNgQgvQDJIgE
 ZW6KF3usvMpR+mNXY/jOMkMFdFdWSQB/ZcAB6YYZhP84qbBT1YXCOEgyeXhAo0fXev/0IOhn
 b5JSnRYv3TBEFB00oom5rC4Rdxdm+HeVh3ZW0/uYphFX7esnIb6579WoOjl2+QYEAF2OcTLX
 XMZiYTOBpnw5Sy2ASOkDiPUXUgyZNGBJ2qMJ0zN7XS0GiqMouGiOUPGOJV5o9sMJT2qfAQON
 jvCDO9PXf9EackygaVrnEqNG19r2Qli+rh3Fng4HKj1HAyDPLOKD1dNvkmCsDZ63KhS+eD0Z
 1/g95wp+e2P2nrYtONyK3cbVd4W2fuiH/zS/ttpYFfvKo0urc2AoLSViHQ0mpbmBo5N8X5mS
 olMdRGyaGEPpUqecMceyhUpAV00NuOKVYmqQzwDKs1e0o3g3rSItOO5P7JpNMUczO8jRq1PU
 Pa9StXu+rBVW+E07URDqorO2RYaEQm8h1ZjZa/XpyVDB/vbv1J+VqxL2S0f7BcQrWUALl4lG
 cE3/iY2+uMMzfi0A/evTFnMrtD/mauT8S1Gh+NE4dzgq2HEEXJhLCr7s61hCr2TjX+a11wv/
 w4SWUAKsJelzIlkIo7liCvV62fmDNWr2dj
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="44331706"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RorquNSTBsfgsLMkm0Anag3Yp5OPbuWQNAqMmUbDPHcZG2G8krTo/qsPumFNoHooh3qRq/nfurK1Rvw57Wtms+gsxWjePQXhyU/PYAMy87o9Hlu0nYx2ZzZS1pkuHmXbJfP9PBYyBeW8GFMRwx+4NA+mGoqEJcWD8ZBxN3Hk8tum950cuqLqgQxrNlCQLUUtDwXw50a/IXWgxr01NIBDRs+IQ5rwcN+Zp+CwrV8cya2FX3e3Td2EgcRgrJCQc/O7gVqEljGZgXncMKguIshw2MrzsAksct8d0oF60sMQB3nFyOfIdT07T4mDuAZ16x0Bj/XlhEH3Ah3U+hoVFY9gQA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KrqI6833NbHxFCO57sSX2aG8FrkbJegAmboNZQJdf7M=;
 b=No8HaK2DuEFNeR0ANtDMOwCsHi5AqjjxSVcni+U8VFXPElmfMLkLsSXvLHf+be2xXTrnjaVqM9Wy9+Qi9qh5LR1zPYYl5AbrmweW4AdJoJNK7LkpvkU2znW7KTKei/SBKRmC6rbm5I1JkfFctWeZoVh9EwY1oG3EzAlEbdaCtHv6F7in1zl5PNQYBX3ZK4nAIK0plEXvRjjOtuXZZV/c9On8fgovkm8AUtg9DzYE7o7jyakYMzCFfmdqHgfoCB7PIsLBlZ7fUA7xWzDprADsWx27Ct/4XFhq05Czc4nobawTk/q/PvNXAI3SASvHehZSHDZ2pWlFLJr2zK9WwAEdjA==
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=KrqI6833NbHxFCO57sSX2aG8FrkbJegAmboNZQJdf7M=;
 b=wVtYyY7eF+4J5bTiTZytIvRidnLwmQ+DTpn6pyDtIVZo4i/DdlLUwN6MxPVjFVn9YZrES6uFT6Bwa0y4J+HAAmUMwhg9hsFNirpSF91PNg10o4BzUBUl/zDiLVJYPXMAJ6ofRC0XbRFRRy85Ti/7TETAc6cOwZDBlp3X0dOieuc=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 04/13] libs/guest: allow updating a cpu policy CPUID data
Date: Fri, 30 Apr 2021 17:52:02 +0200
Message-ID: <20210430155211.3709-5-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0013.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::25) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: ccc9d339-1e0f-4931-4466-08d90bf02ab5
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2923AC184E30640328759F018F5E9@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: JRxiHCRp82z51yuHbU7uDUgzM7ll/Vx+i1nwXdPkm828eavuk5vsvK3D4m2HU9wOTF/pEwL9KTCPBizhM766T0GcCsd3+H9KDX9kAVEs/+B5vflWL1WRhw4xudTEhaJGmylRocf/6UtNAYaXY3QGZolcAR6dAdyj7EM44l9Tut7ZJzjbFOq7QNOwQyNNcB5BngoEEtuOyzF5K90DCTqYiR9s3q1X5iSuiGPfvZdGNmXaRcfZm5kHHHr6mTcsLpEJL183YrZEruJ7QTYLJwrk/ibhx6Wi1X9K1D0Yf5NBQ9ER27R6dcM3ebLwOF2F2OzMEIVgcltTrFY4HZhxu4a1k7U6JBCxiA1KaarcKtqsmQsfGdZ0Wl/w9tC87Qw7HWd1XQSItG/QBZwL6BjW81Pct4tb9oV+qHCZWE1OZ03vjz81CI9KUMXXA5FnMOT9vqD0yNAFAlVUqnD1wQ0UZwUao971VPdeLUwePV5kRFVu7Gci6jISlLNFQvYS4H7RMal7+T735Jdm4Prg+Tbz5SgiWWGKwZnH8u3Su+hWRsD4khR9LndkuLkRPbgkz/1yT9zaPNb+dJj8sf0wsfQh/KwwkltvCovYEj+0uRsEDi+P9h0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(956004)(186003)(16526019)(86362001)(4326008)(8936002)(1076003)(6486002)(2906002)(5660300002)(26005)(66946007)(316002)(2616005)(38100700002)(66476007)(478600001)(83380400001)(6496006)(66556008)(6916009)(36756003)(6666004)(54906003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: ccc9d339-1e0f-4931-4466-08d90bf02ab5
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:53:58.8046
 (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: oYm2ke5gqREQm/UtyUgQHNRB1cMllabo7lOJLRru/8QWv9XQXJZR+dJVeRV+U2LGjfdsXBwS6Dy0oYLwjKAMrA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

Introduce a helper to update the CPUID policy using an array of
xen_cpuid_leaf_t entries. Note the leaves present in the input
xen_cpuid_leaf_t array will replace any existing leaves on the policy.

No user of the interface introduced on this patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Don't use memcpy.
 - Drop logic to update the leaf manually - x86_cpuid_copy_from_buffer
   already does it.
 - Only print a failure message if err_leaf != -1.
---
 tools/include/xenctrl.h         |  3 +++
 tools/libs/guest/xg_cpuid_x86.c | 20 ++++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 605c632cf30..49f919f16a7 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2613,6 +2613,9 @@ int xc_cpu_policy_get_cpuid(xc_interface *xch, const xc_cpu_policy_t policy,
                             xen_cpuid_leaf_t *out);
 int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
                           uint32_t msr, xen_msr_entry_t *out);
+int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
+                               const xen_cpuid_leaf_t *leaves,
+                               uint32_t nr);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 9e83daca0e6..a38e75f8fb1 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -892,3 +892,23 @@ int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
     *out = *tmp;
     return 0;
 }
+
+int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
+                               const xen_cpuid_leaf_t *leaves,
+                               uint32_t nr)
+{
+    unsigned int err_leaf = -1, err_subleaf = -1;
+    int rc = x86_cpuid_copy_from_buffer(&policy->cpuid, leaves, nr,
+                                        &err_leaf, &err_subleaf);
+
+    if ( rc )
+    {
+        if ( err_leaf != -1 )
+            ERROR("Failed to update CPUID (err leaf %#x, subleaf %#x) (%d = %s)",
+                  err_leaf, err_subleaf, -rc, strerror(-rc));
+        errno = -rc;
+        rc = -1;
+    }
+
+    return rc;
+}
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:54:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:54:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120609.228129 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVSz-0000rQ-IH; Fri, 30 Apr 2021 15:54:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120609.228129; Fri, 30 Apr 2021 15: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 1lcVSz-0000rE-DG; Fri, 30 Apr 2021 15:54:09 +0000
Received: by outflank-mailman (input) for mailman id 120609;
 Fri, 30 Apr 2021 15:54:08 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVSy-0000lG-1l
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:54:08 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a8110f1c-f9fc-47bd-961a-05df22b7e5a6;
 Fri, 30 Apr 2021 15:54: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: a8110f1c-f9fc-47bd-961a-05df22b7e5a6
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798046;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=TQdtl7OR1654V6RadoMtlKC18LBsP9bJIIWv024exN8=;
  b=IZmi4eqfpG6mwFSPT9ZoWIQaanfuM4Ni6Kj7MAAxqt7+ksrKkkZS9+73
   usMpUequOFxsCJR4kMhWF38UEZ7Q5nnnZVx6+vofzHRifpYDPnVwviNgt
   bQuYF7SsVomsjl+A7X9qsaIqRrWK5FSapnH2oz4RO/GfqTQOyFRPgv3N9
   w=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 18pnHwUAczDGT26EsQfJH/KotBR3rTuhXfzsOyzVhSXlY1jyinf3+fA0I24SRA7lLfcMIphpTf
 DjG8Y1WoUQ3BF9rL8TVeK1bEs/rYrzHH+cTFrJ/COY951CGcPK2rTD7k3sSMOa31JwJvR+fdab
 ZLXDbzdGUvsSJ7qP1qlAg9Nyha35px0kt18U2Bd1zCYXoSyHQiOyuVoYqT9zHTUP2JaZXT3NiT
 0hBQH+J+Xa3Cc2wkng9KG+hO6aG4Fs+I8w4I+iGaOqPqyKIkzPGnwDgiZP5IvlmWwZmefvBAPA
 lqY=
X-SBRS: 5.1
X-MesageID: 42930044
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:z/PZ865USRftBEWMlwPXwU+EI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoex3h3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdBHW3tV2kZ
 1te60WMrHNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2FXQotLhj0JbTqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+Lpf+jvfMk4/rZgNDOg4/5GC1/E+VwZPZMzzd5BcRVDtT3awvmF
 KlryXV7riu2svLsyP0+HTU6/1t6b7c4/tFQPeBk80Ebgjr4zzYHrhJf52nkHQLrPq06FAs+e
 O80CsIG8ho8XveciWUjHLWqnHd+Q0j4XPj1lOU6EGLyaeSKUNYeqgx8L5xSRfX51Etu9txys
 twrh+knqFaEA/am2DF78XIPisa5nacm2YokuIYkhVkIO0jQYJWxLZvmH99IdMrGSL3750fC+
 9+DM3Qz+Y+SyLqU1np+kZo29CiRXI1A1OvRVUDoNWc13xskGl+1FZw/r1Rol4wsLYGD7VU7e
 XNNapl0JlIU88tdKp4QMMMW9G+BGDhSQ/FWVjib2jPJeUiATbgupT36LI66KWBY5oT1qY/n5
 zHTRdxqXMyU1iGM7zM4LR7tjT2BEmtVzXkzc9To7JjvKfnebbtOSqfDHgzjsqbpekFCMGzYY
 fyBLtmR9vYaUf+E4dA2APzH7NIL2MFbcETstEnH32UpMbmLZDrq/z7fP7fKKGFK0dgZkrPRl
 84GBTjLsRJ6U6mHlXihgLKZn/rckvjubJ8eZKqu9Q7+cwoDMlhowIVgVO26oWgMjtZqJE7e0
 N4PffCmqO/rm+mwHbQ4wxSS11gJ3cQxI+lf2JBpAcMPU+xW60Eoc+jdWdb22bCARNjUcXMEk
 p6q05s8ay6a7ycrBpSSu6PAya/tT8+tXiKR5ATlumo/sH+YK41CZ4gRehWDgXEFxt8nC5ws2
 ddYAo4RkvSfwmey5mNvdgxPqXyZtN8iACkLYp/snTEr3iRoskpWz8mRTK0aNWWhgwvXjJQoV
 V0/8Yk8fy9sAfqDVF6rPUzMVVKZmjSJL5dFgyKaL9Zna3RdBhqQX2HgiGbjB8PanPnnn9i9F
 DJHGmxQ7XmE1BdsndX3uLR/FR4en60UmhwZnp52LcNX1juizJW66umd6Cz22yeZh8+2ekbKi
 jCeiZXCBhp3cqL2BmcnyuiGX0qyo41BPHUCK0uftjoqyqQAbzNsZtDM+5f/Z5jOtyrj/QCVv
 iHfRSJaBz/EOEk1mWu1z8YERgxjENht/zm2BfotjflmFE+BOffO1RgSfUwJcqG423tWvaP19
 FYgLsOzJyNG1S0TuTD76fdKwNnAFf0h0WdSukzs5Bava4ortJIbtLmeAqN8EsC5Qk0Kcf/qV
 gXT6t66o3QI4MHRb1nRwtpun4S0OmVJEQlsgbKEvYzUFEkgXjcJc6I6dPz2MwSK3zEgAPxPF
 WFmhcthMvtbm+m1bQADbg3LnkTQE8g6G569OfqTfycNCyaM8VC9kG9KHmzbft0T7WEA6wZql
 Jf78uTl+GaMwr+1wa4h0o2Hot+t0KmS9i1GgSCBKph9MG7I02Fhu+S2/GI5Q2HAQeTWgA/no
 1KdUsZc8RFhH0DteQMo1aPY52yhFkknVtY6SxgjXj31OGdkT/mIX0=
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42930044"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=S9EKOUdCICyu4J85Frh4q+oWndFCFRm4/Jlx5A+gSBwbzF+sGZqNzeKwhx/tOOVszOVbk8pZtHq6+dthZ/bu2+v1dY/R1nEtD7AKM6PQsE5gOAprDNHbROD6Rr+35nbKvXEh/1iVspJ2bqKnXbxK07Nxkm8G5ACX88midt5Hxc4MgHTz/7it1lyEeKfHpy3ABgs2GmN9m2DItNZ77TWj79UR6qyoqyieQhmCspNb3sb2QAV+zogjc3Evie8c+QRmi4Jtt65+2r8fKggMveUj+ZvX57DxH3TQX+m8/ItYooT8W8KEy8/3YKF440zSsTzLrguEbme3ellJDYw3aKZzOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+LhKndnVfulc+pPE8LZrgUCySKsih4Prcl9DAfyw9Zg=;
 b=Idra5N9U5bMRCe2p81Vp0EXtJ9dSRh4YIfNsGsgN+9oTN5NF1Ss/SEN0klvz9rq2Po3wHcevF0Z+U2g4cTSlF5N357EKQr3JVc68EXqTbpXvlyi+uK/k1xw1lhMPGvWmcfjud1WoLNTCk6xp+q/cooX+6WK4QfoRRGDszmJFGi1lqoqoj3S4YMLIEea8HjTSy9NnV8pPRKjN7pja0vbolmLF/XvaAKulW92X2X5+91+q67WTTUZN8blEf6AxlsXozLjE1ns3v8WnMnbYefc1izrPSujKCwD/gZccvDAKO+cjSP7od5BEvny5zxNfo7V2LlTNuZfX6UlOs6Xp5H40GQ==
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=+LhKndnVfulc+pPE8LZrgUCySKsih4Prcl9DAfyw9Zg=;
 b=HcGWS7t69i6xqBdruDRe2WbPB96yQWT/UwF8cWCt/GxlGCC5Ow9TDpD40IESIQBRwnVupRU3/svANhvfxIRSZtG0CD2E1VkxhEE7vNMOPJUzIuaQgYKGXTsWaBy7IX/T0aJkPjdJTW6zj1zEtqSzYahttNBtlyYWH9tHp2M+KXc=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 05/13] libs/guest: allow updating a cpu policy MSR data
Date: Fri, 30 Apr 2021 17:52:03 +0200
Message-ID: <20210430155211.3709-6-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0095.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::35) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: e07b9057-25e3-409f-c606-08d90bf02dfc
X-MS-TrafficTypeDiagnostic: DM6PR03MB4218:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB42185369435A8B1D697BE3428F5E9@DM6PR03MB4218.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Luk8HRbr+JX7eyJZHqEZYqVy+wXNtC34+TN2WUO8uFaPBPGXFI3Y98hPzpWPgGvynIWpMyAaPtqAz2p2k6LTOWDT3R2cOL7Vgw6slX9bMmIYwjcO18oBbqio0YcBd8fz3mUCJKc4nsBXGKrIE/EXB/EFUQU+jE9c3SkjOSsjc8byHoSSS24oHrnat/TSNPBzMFLLwqiTY4m1AbvorHzqEhRoPeHbG/0TKps1hf2o1sO7JAYtr3FsKdCLPIkdrMb4ElsCIRAImAV4CR5owlpwsjeeYxO8WmfzI/emxdeDmpk1bZlKJr4jq+0suh6mVupebw3j4Bh9b9ZH2hVUtSVU7JKpQMsCb1/pJK1PRopOqYV7kL5CRNdPikWyGqdWQN5Buz0dqxut8+IIXcbV+KrRIAgJAoTxwad2Jv5aaazb9+XqAK9OJDqnHQoisBtUpIK3XQdAzgeSY9PUZC8G9rpHcXJIVk0Nu5HPF6xbOWtVzmJB8yg2zyAXO0Bj/nTDwpQs/IMZyVvtuBw3bfBIMhexbdY7OnYld/7s52D0KNBPq/ZUB2zWW9XuzKpKO7ELl2We4G8Cr2rS4Vmbo5PT7qKzUg==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(136003)(39860400002)(346002)(376002)(478600001)(54906003)(36756003)(316002)(186003)(26005)(66476007)(6496006)(4326008)(83380400001)(1076003)(2616005)(66556008)(2906002)(8936002)(66946007)(38100700002)(6916009)(6486002)(956004)(5660300002)(16526019)(8676002)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?DQiiMKUoXaCD/fx39wR9OLLQYzyV/kZo1CtZBJ+?=
X-MS-Exchange-CrossTenant-Network-Message-Id: e07b9057-25e3-409f-c606-08d90bf02dfc
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:04.3234
 (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: UKvG0EtRl6nnrIPXeYoxuT50vBcRJNL2tUMGYDILDUUEf0p3YE8RVo7A8oNMmMgVz6Z2C9n3kxzDhy4XhipS6Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4218
X-OriginatorOrg: citrix.com

Introduce a helper to update the MSR policy using an array of
xen_msr_entry_t entries. Note the MSRs present in the input
xen_msr_entry_t array will replace any existing entries on the
policy.

No user of the interface introduced on this patch.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Drop logic to update entries manually.
 - Only print failure message if err_msr != -1.
---
 tools/include/xenctrl.h         |  2 ++
 tools/libs/guest/xg_cpuid_x86.c | 18 ++++++++++++++++++
 2 files changed, 20 insertions(+)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 49f919f16a7..9a6d1b126d8 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2616,6 +2616,8 @@ int xc_cpu_policy_get_msr(xc_interface *xch, const xc_cpu_policy_t policy,
 int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
                                const xen_cpuid_leaf_t *leaves,
                                uint32_t nr);
+int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
+                              const xen_msr_entry_t *msrs, uint32_t nr);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index a38e75f8fb1..37e55279ffe 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -912,3 +912,21 @@ int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
 
     return rc;
 }
+
+int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
+                              const xen_msr_entry_t *msrs, uint32_t nr)
+{
+    unsigned int err_msr = -1;
+    int rc = x86_msr_copy_from_buffer(&policy->msr, msrs, nr, &err_msr);
+
+    if ( rc )
+    {
+        if ( err_msr != -1 )
+            ERROR("Failed to deserialise MSRS (err index %#x) (%d = %s)",
+                  err_msr, -rc, strerror(-rc));
+        errno = -rc;
+        rc = -1;
+    }
+
+    return rc;
+}
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:54:16 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:54:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120615.228141 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVT5-0000xc-Ry; Fri, 30 Apr 2021 15:54:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120615.228141; Fri, 30 Apr 2021 15: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 1lcVT5-0000xS-Oc; Fri, 30 Apr 2021 15:54:15 +0000
Received: by outflank-mailman (input) for mailman id 120615;
 Fri, 30 Apr 2021 15:54:14 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVT4-0000wV-7X
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:54:14 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 7fd02742-d0ab-4975-80cf-ed15e4814c4c;
 Fri, 30 Apr 2021 15:54: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: 7fd02742-d0ab-4975-80cf-ed15e4814c4c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798052;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=dLIQdWJ/rQq9cDoz+VNpuFqWNGmZaFJFYqKXFPnGBS8=;
  b=cp0G8zCIEYZcxYNrXsZcbu3Q4yqWENgiRsfabbw35MWAhrZX9pnRUW5W
   vKn3D78UTrlAbUS2lIxzhEejWJEBKvKBTrin9esQsuuSMwVhC5+bkily2
   E+rJlLo7meHMZXd80LKELaWvleDmptQX1w8zywke9noSKDEMwRm+N0G0j
   Q=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: GXDbTmUi5a8h5yVbRaks+E/+qwLElnwWb7+Cnm6AuJvx5JNX8mk3Rqo8KxeBQ5taRBDlAFuP6V
 TOEb+ha2huWJzOGZNwjZQos1ZLq4U6uT6IoyPfFRkwsLm6ACvousNU5X7B9uznU6MtprQ36h0Z
 c3lPLnN6zR2vKUxn5UUpDulMU4C24uCk4nxOjOaHW/6MdKXdWwsZCm8TErNJzGUloVWNLbiy9O
 nRWujPiwxKnV2IhmmoI5MR65uIXJBnHT+35KGmqR54LsKdk8xyu4Ms/5yOYIQxzkCWJ54C+8h+
 k2g=
X-SBRS: 5.1
X-MesageID: 42810466
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Gjb25q3sLNzHGcVMVP0NJgqjBFUkLtp033Aq2lEZdDV+dMuEm8
 ey2MkB3RjvhzoLHF0mk9aMOK6PKEmslqJdy48XILukQU3aqHKlRbsD0aLOyyDtcheRysdzzq
 FlGpITNPTVLXxXyfn3+xO5FdFI+rS62YSln/3XwXsobSwCUdAD0y5DBgyWElJ7SWB9bPJTfq
 a03cZbuyGmPU0ec8XTPAhgY8H4u9bJmJj6CCRmOzcb7mC14g+A2frdCBiX3hAXVhtV2rc8+W
 35kwj0j5/T1s2G9g==
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42810466"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=i4jbpHFmQOSJ0EwigzyZ3kF3kYDDV2PF9e7ekH57NEtBB+AYUnNSBQ3J7ikHshLKtP1KWIIABnet19YeP6/X/XC8ynOd9CzJPA4CAzyjid0eZgc4tQ3PrbCi652Ttr+Uk08K7wng5P3rewtpQBzX2lHVqsOjw5lks9rCxsLZ2jPU6XMjjSI4shId1L7TuFPObrdcX28mmMine/cKnGd0tWDuDbc6P8UsSMnj+Yw49AX8KEbr8nXj9JA2WRxMUBG1KxzgIUN58pI3145RVqgt+IQusAnckmoUPLXo/XE9mgNfFvKEcecYGoML2lXkUHN5vvdBM8kZK8ZjlKEhU07uEg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=V3o2QvcoZ6aVqm325GW0WaeCjiv2jnbCGTc6SoBmmbE=;
 b=ZDOhf/CnobaI/sHY4v/HWSFP7AI+quIGyMIPh89cS+ts9KM9kVv+Xnx/OmpVsYkjPpXAkr799q9TbYLZu0b8+yjwdUjJm5yLc086nfObykT/SIenOJ5ZpAAa0QIyiHNP0zzJMM5m5opwnYAjpTEJhr+PZeEvben5RnClvX/3c+ZEkv+1btekXhVKIxw0IqVu62du16Rjpd3qWIVK1aukkJi3wlq3bSvZ22/kNF0pwYNGsupApnm4X2Ob6wH3/oRhcwsCeR1z1ht2ACwQsKy++qzgGy8UUG+wgrwfAtJqDy4MuCLAd8iOJycP6AaY+plFthvJW0hyzRyoFcT3rqosmg==
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=V3o2QvcoZ6aVqm325GW0WaeCjiv2jnbCGTc6SoBmmbE=;
 b=snApkINHTQZsUTWq6Oz2mccat3V2G4Rf9Tz+b+NKO6j2doa3uulLY4P0WWty+0yJduQMWEjHj2jRRfF0WLsHSs1rRM0JwPJDc1GpZupVVolUat5pxpMyWNfG9zEoT/VnwpED42tqGgQReX+QgSYd/wcnjtpKCAOobEDP8G6DbHM=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 06/13] libs/guest: introduce helper to check cpu policy compatibility
Date: Fri, 30 Apr 2021 17:52:04 +0200
Message-ID: <20210430155211.3709-7-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0015.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::27) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 857750d9-21da-4aaa-d6cd-08d90bf03154
X-MS-TrafficTypeDiagnostic: DM6PR03MB4218:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4218D7E60D7F26D4E1DDE3B88F5E9@DM6PR03MB4218.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3513;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 85htbtuOZalFc37kbvL2rPXTedPrHMsTtSlWO4jWSruLnycgBuQUc1YOuOjlvHknMehxyhwY40xCyKbDecZzwNUBBJmDU6+71d4GpDuNyDXvyYwxAr4OJegb0nIlhCKR/zNtesOsj4NAhJXuDtJvHwS96q57cCnvPsaF9K34r2NrYmM41uJXZZm3wQrMe6kkPqPrdU4IHdc4A1x+KASnd+tPZQWI5znj07/UTJWCp4JPSrIkKnq0S37QETNnkG07Oy50E2uTgsi+WfMRFEnwzEvNmb+WnPVM/D87s1AjZVx+88itz1ThDcLpdn5JfhdW0U3UsBJflxMJWMRxrmxnRkWmjQU1WViKbibuZrWTTVQBAZWX0vtm/q//6yS2W9PQn2K3XZdtRIzpF/rEO6r0Nm49g7kkCg1NPsPqKxKLmRTh9nyWmxs7fhljhsrBIKJvsS9F7rQJhk2aR744s/jb9O8X2n/VOgbm9g/RftBCOv58MIcHZNVxADdZHULqnMVRpjQbKIaAk5t3+9OqoWBczCe/YxmdHJKpDg/R3JEGoRLTLNMDBAG51W4tEBFORaDgC8QZpK2NaMnzM96laQJeI/qYIxrSkAxNcdT+08azFCw=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(136003)(39860400002)(346002)(376002)(478600001)(54906003)(36756003)(316002)(186003)(26005)(66476007)(6666004)(6496006)(4326008)(83380400001)(1076003)(2616005)(66556008)(2906002)(8936002)(66946007)(38100700002)(6916009)(6486002)(956004)(5660300002)(16526019)(8676002)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 857750d9-21da-4aaa-d6cd-08d90bf03154
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:09.9277
 (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: /3IJ6of9v+s+6DZ0YbqhjWmA+ua7V7glEQbpOOcbdcjP3dHnWyk/BJFpDH9+BeB6losb1ke7BAVE9N91Hy09hg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4218
X-OriginatorOrg: citrix.com

Such helpers is just a wrapper to the existing
x86_cpu_policies_are_compatible function. This requires building
policy.c from libx86 on user land also.

No user of the interface introduced.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Initialize err.
 - Explicitly name parameters as host and guest.
---
 tools/include/xenctrl.h         |  4 ++++
 tools/libs/guest/Makefile       |  2 +-
 tools/libs/guest/xg_cpuid_x86.c | 19 +++++++++++++++++++
 3 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 9a6d1b126d8..5f699c09509 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2619,6 +2619,10 @@ int xc_cpu_policy_update_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
 int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
                               const xen_msr_entry_t *msrs, uint32_t nr);
 
+/* Compatibility calculations. */
+bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
+                                 const xc_cpu_policy_t guest);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/Makefile b/tools/libs/guest/Makefile
index 604e1695d6a..6d2a1d5bbc0 100644
--- a/tools/libs/guest/Makefile
+++ b/tools/libs/guest/Makefile
@@ -40,7 +40,7 @@ $(patsubst %.c,%.opic,$(ELF_SRCS-y)): CFLAGS += -Wno-pointer-sign
 ifeq ($(CONFIG_X86),y) # Add libx86 to the build
 vpath %.c ../../../xen/lib/x86
 
-SRCS-y                 += cpuid.c msr.c
+SRCS-y                 += cpuid.c msr.c policy.c
 endif
 
 # new domain builder
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 37e55279ffe..6b8bae00334 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -930,3 +930,22 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
 
     return rc;
 }
+
+bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
+                                 const xc_cpu_policy_t guest)
+{
+    struct cpu_policy_errors err = INIT_CPU_POLICY_ERRORS;
+    struct cpu_policy h = { &host->cpuid, &host->msr };
+    struct cpu_policy g = { &guest->cpuid, &guest->msr };
+    int rc = x86_cpu_policies_are_compatible(&h, &g, &err);
+
+    if ( !rc )
+        return true;
+
+    if ( err.leaf != -1 )
+        ERROR("Leaf %#x subleaf %#x is not compatible", err.leaf, err.subleaf);
+    if ( err.msr != -1 )
+        ERROR("MSR index %#x is not compatible", err.msr);
+
+    return false;
+}
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:54:23 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:54:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120621.228153 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVTD-00016m-GP; Fri, 30 Apr 2021 15:54:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120621.228153; Fri, 30 Apr 2021 15: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 1lcVTD-00016a-9x; Fri, 30 Apr 2021 15:54:23 +0000
Received: by outflank-mailman (input) for mailman id 120621;
 Fri, 30 Apr 2021 15:54:22 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVTC-0000lG-K5
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:54:22 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1068a7e3-4ec3-4342-bda4-5b4644f72d2b;
 Fri, 30 Apr 2021 15:54: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: 1068a7e3-4ec3-4342-bda4-5b4644f72d2b
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798058;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=yCoyPCVGCFESZfxZk+zm8lKADgKfPH1an+DD+K5jasU=;
  b=Sa36rw0cD1LSYyV4X6Abdt373uNDniFNsBXcBmkBAr+8xA+slxsUlZg3
   mqGgHPf8zgZLCRzprPs3nQuu3PnEu/b8r4OwUrw0i+EkdzBL/NaP0jNoX
   ZfG4dHL9RkpxLo2/naNliNS0NdwAal/r+dkFe6pW1mPju6IsFOyJfBLue
   A=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: H0k3LhR/vJx7/Lnl4HN4xlu6fAWOYGa8wdMDQ3zlbYoQALrKsctKSvEl/6uL4WRfs/nx3DqSte
 Qfoi/CTCPDGvbUJpV+B10xrEuqxnXQi0otSqrvt98ucr54b2jX8SFn9p31fGEckYEbKJYS52hS
 EC9zzYNmGP3/vHsbsiGDGY6iHY1WsvlHPcUtlI0mMwWqJI8heJ+PSuaQXION31LxXlUpSpFgBq
 ldsRGtQc+rcOflbMeWYS48ivwZ281YliPGC4Mwmg8ViXkQRummvQ3XgCfT2M9NfYcfolv0iijo
 g8k=
X-SBRS: 5.1
X-MesageID: 43199272
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:e9XNhKi8I2ic2ZpxYRQOxFmxJ3BQX0hw3DAbvn1ZSRFFG/Gwv/
 uF2NwGyB75jysQUnk8mdaGfJKNW2/Y6IQd2+QsFJ+Ydk3DtHGzJI9vqbHjzTrpBjHk+odmv5
 tIW5NVTOf9BV0St63HySGzGdo43Z2j+Kenme/Rwx5WPHhXQotn6Bp0DRveN0VwShVPC5ZRLu
 vl2uNsoT28dXMLKvmqH3VtZZmJm/TnnI/rCCR2YiIPxxKJiVqThoLSMx/d5RsGViMK/LFKyx
 miryXcxoGO98620QXd0Wi71eUdpPLExsFYDMKBzug5Qw+c7jqAX4hqV72csD1dmojGhDkXue
 LBrBs6M8N452m5RBDTnTLWxwLi3DwygkWD9XakgGDuqcG8ZDU2B9spv/M6TjLl6lEttNw57a
 RT32jxjes1MTr8mk3GhuTgZlVPrA6ZsHAimekcgzh0So0FcoJcqoQZ4Qd8DIoANDiS0vFqLM
 BeSOXnoNpGe1KTaH7U+kN1xsa3Y3g1FhCaBmAfp82u1SRMlnwR9TpW+OUv2lM7sL4tQZhN4O
 rJdo5ykqtVc8MQZaVhQMAMXNWwEW6IZR7XKmqdLRDGGcg8Sjzwgq+yxI9wyPCheZQOwpd3so
 /GSklkuWk7fF+rBtaJ2JFN7xDRUGSwVTng0ahllthEk4y5YICuHTyISVgoncflie4YGNfnV/
 G6P48TA/KLFxqsJa95mynFH7VCI3gXV8MY/vwhXUiVn87NIor28ujScPPZIqvxAS8pM1mPQE
 crbXzWHoFt/0qrUnj3jFz6QHX2YHHy+pp2Dezd5OgcyI8EM4VWqQgLgVGl5sWGQAcy85AeTQ
 9bGvfKg6m7rW658SLj9GNyICdQCU5T/fH9SX9QvBQLNEn1aL4HvN2adQlprT66Dy46a/mTPB
 9Uplxx967yEoeZwjo6Dcm7dkiAiWEImX6MR5AAu6GK6Mv/YKkkBpI+VKEZL3SOKzVF3SJR7E
 ZKckstW1LWHDKGs9TfsLUkQMXkM+RarCjuC8hOsn7bvVibvqgUNwEmdg/rd9WWjwYoTydTnX
 tr/cYk8fe9sD6yNGoyh/k5OlVQaGKRRKlLFhiBeZ88oMGXRChgCWiNnjCUkBc1Zy7j8FgTnH
 XoKWmOdejMGUc1gAEQ7o/6tFd1fH6aZUR+dzRztpB8D33Pvh9IoJi2T7v212uacV0ZxO4BdD
 nDfDsJOwtrg9S6zgScljrHFXIowPwVT5rgJaVmd7HYwXW2LoKU0akAAv9P5Z5gcMn0rfVja5
 PtRyaFaDfjT+850Q2coXgofCFytXk/iPvtnBno9nKx0nIzCefbSW4WD40zMpWZ9SzpVvyI2J
 J2gZYusey8Pn74Z9SGxavUBgQzXi/7sCqzVaUluJpUtaU9uP9vBJHdSyLPz2wC0xMkLsv4/X
 luMJhT8fTEIMtocMMTcS4CoQZsm9SLMUcxsgv5RuU5ZkoginfHP9WPp7rEwIBffHGptU/1Ix
 2Y9SYY4vLOGy2E3rQeA7grIWtXZFMngU4Sid+qZsnVEkGya+pH/FCmKXezf79WVbidFdwr32
 lHysDNm/XSajHx1w/RtyZqO65C826oRsWpHQKHcNQ4guCSKBCLmaul4Mm6kTfxR3+6ci0j9P
 F4XF1VaNhfgT8/i4By2jSuS8XM0zAYr2c=
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="43199272"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ojt4ltiOBhCVhLDbT0cNZUsJFhC6jPvTAD6k8OEsueM3tfJmo3mzS9Ayn2zhs78lfqZLORL+ZQ1KowmA9rAeD4B37l3lkXxHTESArur9jMup0S1h3dwuzJM3K97ygC8O4TnlQxuORl3WPpeAwEekyf2zB47nIxB+OePOp05rmQGX6sJzy0OHGqudt3vrwGgF1iIb/sC/kIJjIx/qgKvapKXRBkyr3T9izSfx+zm4OAk2KLYEh846nvhnLUrjSQTmsIzC2KrZaQu6v0LpikB9P7lDmganP1rQy2kmdYsXWDlIE9zc1vmZsdGkUX6IRsNLN/pN+/JNUWim53KKNKhimw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bSU9iAR9gJn2F5NIkLs9bGfJT3MYOFmgJtTRnRYEooQ=;
 b=oQj8IoWi5UigYuNu9u+X1w9pXAKIR9JEbRhGsN0hyEvs4sgTLgjNuytjxcCk2R8K6LOZJWqnZo4cb1o0RlhSwlaH5S/zIn9W5oszvIrEfTcL+k+v2SUnjD+2WHub03yQuKp/t/N9CYjesweYy4P/nyoJF2VKC0SLRLjm5MjOVp6WchZ4TXo6pVrTHrx2soLBX6gwspnwkHmpmUKWHGpS+qmDUUMcm1mJgG4a5p3kilD9+DPbVGs1JD1KTeZHEn6RJdmW3ypHBg1tUPkrRz4+CiM2By6rKtnb8fx7ZIm6/REEBWaN8rG2rmiu1UTvABdNtVB6MFFyTdiP7GyEntdFFw==
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=bSU9iAR9gJn2F5NIkLs9bGfJT3MYOFmgJtTRnRYEooQ=;
 b=UB9wij/eUsGk5BbRFCHdvk8/qFa0Y1U3rX067cYOtRsGRavu5ixZbxXNM0YPMOAMBHzNNh9OomcQAW4zq6Y/2xdOcENpNM6m+qh3eWnbVYW46x4v7hZSOW0jYCtbz+Lk0/E2+1rprpUYP2CNDe2B+a3BNSGSyq6gBrWOP9P2Gro=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v3 07/13] libs/guest: obtain a compatible cpu policy from two input ones
Date: Fri, 30 Apr 2021 17:52:05 +0200
Message-ID: <20210430155211.3709-8-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0007.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::19) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 74d06c06-1b48-457f-ad0d-08d90bf034a6
X-MS-TrafficTypeDiagnostic: DM6PR03MB4218:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB421802AE3363ED3D4A68E3768F5E9@DM6PR03MB4218.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:10000;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 8Iwq4PLJdAehNBIAdgRq8Z1my3MLt6sw4qV21KwlrVDlCLHoYSKoS2/6ayN8BpVkjeKx7r95x6EllVdbIwu479Q/rxL3W6/U2F5MCU7A7Pt0Coe/5oN9k9YTyKh1iGTyfO/nS19hZ2j19a/wmp6CkbEMaNq+SEkq5DxOxJZ6ez4vj8MK2oB332GF6NMxO6LU6nHrYGuwOWkEFY3BfI7nFqAYKtJQcMR8ErgbyLDsGibpH7P5zuA5VNekzNCA+U77iCjXwdc7eC/YwKUu0YQubyYxBXNLNyQMFgD+KuYGnahOcNoXeRtYn8zi2OrnyoMnpxiVbAKcbT2vw3wIzTO+ec4Zpjg4JPTKI4s/3MsNPe/k0uKUgySXa2HnFSEHL0QB2atYqIJMS0uWLiCCVSnckIZbfavZlGmqxVB5ht8mnPY1R2zp+29tEotsNQYOI3nTF9pS0bPHqYGWOR078Uw1jsf2OdEoPTMONpZXAM5sYNwLdf9DRUGb2Pt2dR94NwDi00tg9/q4y97UclTV5KOhxgHPpOEiBZIgeB8s1644WlbCBspP9U63HNmyQAaI+8vDOlS25eBSCWmfW00z2HDyKoiu7WaIb8m4TqJuH3O4qUg=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(136003)(39860400002)(346002)(376002)(478600001)(54906003)(36756003)(316002)(186003)(26005)(66476007)(6666004)(6496006)(4326008)(83380400001)(1076003)(2616005)(66556008)(107886003)(2906002)(8936002)(66946007)(38100700002)(6916009)(6486002)(956004)(5660300002)(16526019)(8676002)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?3fgn3D2Fk1NxcKVqKcWYfOv6s/GGntsHcvrIkyM?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 74d06c06-1b48-457f-ad0d-08d90bf034a6
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:15.4205
 (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: 5mnHnpc5o5PaY7FJNs+9MVJ6I4Tmvrv0Wzq1DmrTNgDM1h8y4MKSQyrfI4KrwRzhlGloiCpzUtCp54leFtqZgQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4218
X-OriginatorOrg: citrix.com

Introduce a helper to obtain a compatible cpu policy based on two
input cpu policies. Currently this is done by and'ing all CPUID
feature leaves and MSR entries, except for MSR_ARCH_CAPABILITIES which
has the RSBA bit or'ed.

The _AC macro is pulled from libxl_internal.h into xen-tools/libs.h
since it's required in order to use the msr-index.h header.

Note there's no need to place this helper in libx86, since the
calculation of a compatible policy shouldn't be done from the
hypervisor.

No callers of the interface introduced.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v2:
 - Add some comments.
 - Remove stray double semicolon.
 - AND all 0x7 subleaves (except 0.EAX).
 - Explicitly handle MSR indexes in a switch statement.
 - Error out when an unhandled MSR is found.
 - Add handling of leaf 0x80000021.

Changes since v1:
 - Only AND the feature parts of cpuid.
 - Use a binary search to find the matching leaves and msr entries.
 - Remove default case from MSR level function.
---
 tools/include/xen-tools/libs.h    |   5 ++
 tools/include/xenctrl.h           |   4 +
 tools/libs/guest/xg_cpuid_x86.c   | 137 ++++++++++++++++++++++++++++++
 tools/libs/light/libxl_internal.h |   2 -
 4 files changed, 146 insertions(+), 2 deletions(-)

diff --git a/tools/include/xen-tools/libs.h b/tools/include/xen-tools/libs.h
index a16e0c38070..b9e89f9a711 100644
--- a/tools/include/xen-tools/libs.h
+++ b/tools/include/xen-tools/libs.h
@@ -63,4 +63,9 @@
 #define ROUNDUP(_x,_w) (((unsigned long)(_x)+(1UL<<(_w))-1) & ~((1UL<<(_w))-1))
 #endif
 
+#ifndef _AC
+#define __AC(X,Y)   (X##Y)
+#define _AC(X,Y)    __AC(X,Y)
+#endif
+
 #endif	/* __XEN_TOOLS_LIBS__ */
diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 5f699c09509..c41d794683c 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2622,6 +2622,10 @@ int xc_cpu_policy_update_msrs(xc_interface *xch, xc_cpu_policy_t policy,
 /* Compatibility calculations. */
 bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
                                  const xc_cpu_policy_t guest);
+int xc_cpu_policy_calc_compatible(xc_interface *xch,
+                                  const xc_cpu_policy_t p1,
+                                  const xc_cpu_policy_t p2,
+                                  xc_cpu_policy_t out);
 
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 6b8bae00334..be2056469aa 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -32,6 +32,7 @@ enum {
 #include <xen/arch-x86/cpufeatureset.h>
 };
 
+#include <xen/asm/msr-index.h>
 #include <xen/asm/x86-vendors.h>
 
 #include <xen/lib/x86/cpu-policy.h>
@@ -949,3 +950,139 @@ bool xc_cpu_policy_is_compatible(xc_interface *xch, const xc_cpu_policy_t host,
 
     return false;
 }
+
+static bool level_msr(const xen_msr_entry_t *e1, const xen_msr_entry_t *e2,
+                      xen_msr_entry_t *out)
+{
+    *out = (xen_msr_entry_t){ .idx = e1->idx };
+
+    switch ( e1->idx )
+    {
+    case MSR_INTEL_PLATFORM_INFO:
+        out->val = e1->val & e2->val;
+        return true;
+
+    case MSR_ARCH_CAPABILITIES:
+        out->val = e1->val & e2->val;
+        /*
+         * Set RSBA if present on any of the input values to notice the guest
+         * might run on vulnerable hardware at some point.
+         */
+        out->val |= (e1->val | e2->val) & ARCH_CAPS_RSBA;
+        return true;
+    }
+
+    return false;
+}
+
+/* Only level featuresets so far. */
+static bool level_leaf(const xen_cpuid_leaf_t *l1, const xen_cpuid_leaf_t *l2,
+                       xen_cpuid_leaf_t *out)
+{
+    *out = (xen_cpuid_leaf_t){
+        .leaf = l1->leaf,
+        .subleaf = l2->subleaf,
+    };
+
+    switch ( l1->leaf )
+    {
+    case 0x1:
+    case 0x80000001:
+        out->c = l1->c & l2->c;
+        out->d = l1->d & l2->d;
+        return true;
+
+    case 0xd:
+        if ( l1->subleaf != 1 )
+            break;
+        /*
+         * Only take Da1 into account, the rest of subleaves will be dropped
+         * and recalculated by recalculate_xstate.
+         */
+        out->a = l1->a & l2->a;
+        return true;
+
+    case 0x7:
+        if ( l1->subleaf )
+            /* subleaf 0 EAX contains the max subleaf count. */
+            out->a = l1->a & l2->a;
+        out->b = l1->b & l2->b;
+        out->c = l1->c & l2->c;
+        out->d = l1->d & l2->d;
+        return true;
+
+    case 0x80000007:
+        out->d = l1->d & l2->d;
+        return true;
+
+    case 0x80000008:
+        out->b = l1->b & l2->b;
+        return true;
+
+    case 0x80000021:
+        out->a = l1->a & l2->a;
+        return true;
+    }
+
+    return false;
+}
+
+int xc_cpu_policy_calc_compatible(xc_interface *xch,
+                                  const xc_cpu_policy_t p1,
+                                  const xc_cpu_policy_t p2,
+                                  xc_cpu_policy_t out)
+{
+    unsigned int nr_leaves, nr_msrs, i, index;
+    unsigned int p1_nr_leaves, p2_nr_leaves;
+    unsigned int p1_nr_entries, p2_nr_entries;
+    int rc;
+
+    p1_nr_leaves = p2_nr_leaves = ARRAY_SIZE(p1->leaves);
+    p1_nr_entries = p2_nr_entries = ARRAY_SIZE(p1->entries);
+
+    rc = xc_cpu_policy_serialise(xch, p1, p1->leaves, &p1_nr_leaves,
+                                 p1->entries, &p1_nr_entries);
+    if ( rc )
+        return rc;
+    rc = xc_cpu_policy_serialise(xch, p2, p2->leaves, &p2_nr_leaves,
+                                 p2->entries, &p2_nr_entries);
+    if ( rc )
+        return rc;
+
+    index = 0;
+    for ( i = 0; i < p1_nr_leaves; i++ )
+    {
+        xen_cpuid_leaf_t *l1 = &p1->leaves[i];
+        xen_cpuid_leaf_t *l2 = find_leaf(p2->leaves, p2_nr_leaves,
+                                         l1->leaf, l1->subleaf);
+
+        if ( l2 && level_leaf(l1, l2, &out->leaves[index]) )
+            index++;
+    }
+    nr_leaves = index;
+
+    index = 0;
+    for ( i = 0; i < p1_nr_entries; i++ )
+    {
+        xen_msr_entry_t *e1 = &p1->entries[i];
+        xen_msr_entry_t *e2 = find_entry(p2->entries, p2_nr_entries, e1->idx);
+
+        if ( !e2 )
+            continue;
+        if ( !level_msr(e1, e2, &out->entries[index++]) )
+        {
+            ERROR("Unable to level MSR index %#x", e1->idx);
+            return -EINVAL;
+        }
+    }
+    nr_msrs = index;
+
+    rc = deserialize_policy(xch, out, nr_leaves, nr_msrs);
+    if ( rc )
+    {
+        errno = -rc;
+        rc = -1;
+    }
+
+    return rc;
+}
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index 44a2f3c8fe3..5709bcb93fa 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -126,8 +126,6 @@
 #define PVSHIM_CMDLINE "pv-shim console=xen,pv"
 
 /* Size macros. */
-#define __AC(X,Y)   (X##Y)
-#define _AC(X,Y)    __AC(X,Y)
 #define MB(_mb)     (_AC(_mb, ULL) << 20)
 #define GB(_gb)     (_AC(_gb, ULL) << 30)
 
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:54:28 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:54:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120625.228165 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVTI-0001D0-PX; Fri, 30 Apr 2021 15:54:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120625.228165; Fri, 30 Apr 2021 15:54: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 1lcVTI-0001Ct-LA; Fri, 30 Apr 2021 15:54:28 +0000
Received: by outflank-mailman (input) for mailman id 120625;
 Fri, 30 Apr 2021 15:54:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVTH-0000lG-KM
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:54:27 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 491a00e0-6dde-4df9-8c22-cc4ba78e87ed;
 Fri, 30 Apr 2021 15:54: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: 491a00e0-6dde-4df9-8c22-cc4ba78e87ed
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798064;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=VgksK4tHss3xtKOhq6faeaUH0m3du7BNxGNFsPIw5pk=;
  b=RQJXQeNIW9wJmHBu0h2bI/O/yWPRaPRPAcfH4j0Bp5j4lLhnAT2C7CFx
   UM1dLmH2kjTZ7OYTVcFWb1p89Uzz+3XYnw0wd1YvVLtMt54E4DI8i0UhT
   pUjhMIAf5qmxpZkCGbSKEtJWZpL/BTqqzigtwsxkSkQiBoD3QYNF+giNk
   4=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: AilAOLpV6aGIW/46Rr7DzUdKCcHRH2MYhV3ruAHeRKc4J/P92V6jTBD0gVzJVcw9YcdrRlf8xW
 HRByVwt9JYN3o18B5v9/SRZhDqoynXQuOVbm1ZC42IU9N4njNKt/4c4XyGuGfkkjSn6Pc3VVdL
 LNyQ47wA3EzaJsuBV2ONaGt1wfm/6/jx9msCYIzVbUQGD9TeRyjwOEgPUn0ObYXuM6hYwihmNp
 tBXzP5l/L4kzoRLblpcpLAuGJje1dBXjCoAH2KYh16ixQqp9iveMHjhOM4lOGIdxV/sfCTTcGe
 iXw=
X-SBRS: 5.1
X-MesageID: 44331736
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:dyAjk63JNZhJmjq0X4LqMwqjBSB3eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFnNJ1/Z
 xLN5JzANiYNzNHpO7x6gWgDpIEyN6I7KiniY7lvg5QZCttbLxt6Bo8Lw6dHFF/SgUuP+tAKL
 O34M1bqz28PUkGd8jTPAhPY8Hvr8DG/aiWBCIuKAUg7GC14w+AyLm/KBSA2wdbbjUn+8ZFzU
 HgsyjUopquqOu6zBi07R6Y071zlMH6wtVOQOyg4/JlTgnEsQqjaIR/V7DqhllczI6SwW0nn9
 XWrxArM94b0QK3QkiOvRDv1wP8uQxP11beyESViXamgcv1SCNSMbsiuatlcwDU40dlgddk0K
 gj5RP7i7NrC3r7/RjV1pztbVVHh0C0qX0tnao4lHpES7YTb7dXsMg24F5VOI1oJlO31KkXVM
 1VSO3M7vdfdl2XK1rDuHN0/dCqVnMvWj+bX0k5vNCP2TQ+pgE382IogOgk2lsQ/pM0TJdJo8
 7eNL5zqb1IRsgKKYVwGfkGWsnyLmDWWxrDPCazLD3cZe86EkOIj6SyzKQ+5emsdpBN5oA1go
 79XFRRsnN3dFnpDcGIwZ1X4hHASGiwRl3Wu4Fjzqk8noe5aKvgMCWFRlxrudCnue8jDsrSXO
 v2OJ8+OY6hEULeXaJymyHuUZhbLncTFOcPvMwgZl6IqsXXbonjtunRdufPNKPgeAxUGF/XMz
 8mZnzeNc9A5kekVjvTmx7KQU7gfUT54NZ3C6jV/+8azYAXLY1Sug0JiVC0j/v7aAFqg+gTRg
 9TMbnnmqS0qS2d5mDT9VhkPRJbEwJI+rn6SmhLogULKkvwdr4Gt7ykCCVv9UrCAiU6Y9LdEQ
 ZZqVgyxLm+KIaIwzs+T/i9NHiBsncVrHWWbpsVl6GZ//35cpcgAptOYt00KSz7UzhO3Sdjsi
 NqdRINTE63LEKUtYyVyLgvQNz5W/Y5qgGxOsJQoW/Yriyn1LsSb0peeSWvX86RiRspXBxOiD
 RKguIiqbKdhDeiLnY+iuwkMFtKLH+aGq5CER7tXvQoppn7PA53VmuEnjqcllU6fXfr7Vwbgi
 j7ITSTYuyjOCsVhllIlqLr+khzbGOTYgZ5bW17q5R0EQ39ywFO+P7OYqq4yG2KbFQehukbLT
 HeeDMXZgdj3cq+2hLQmDGMExwdt+MTF/2YCLQoaLfI3HyxbIWOiKEdBvdRuI9/K8qGiJ55bc
 uPPwuOaD/oAeIg3AKY4n4jJSlvsXEh1fflwgfs4mS01GM2aMCiaGhOVvUeOZWR/mLkT/GH3N
 FigdU5sfC5P2/xZtSFoJunGwJrO1fWuyq7XusooZdbseYur7N1BYDcSiaN23dd3hkyRf2E5H
 82UeB++vTGNYBudcBJJH4c8VotidiVLEwk9gbxGfQzeFkxj3nde9OFioC414YHEwmEvk/3P1
 La7ihWu/HCVCGH3aQBC60xLX9NAXJMnUhK7aeHbcnIFA6ud+tf51K0PX+2ba9FRMG+aMothw
 c/58vNgvSeeCX50h3BpDd3IqpB9GC8XMO5aTj8aNJg4pi9IlSDgqyj/c61gnP2UFKAGjglrJ
 wAc1AMZcJejTRnhJEr00GJO97Knn4=
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="44331736"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HiOEbu8uIjU8gunSS1hMZJoOcAj/iSbA6VLcmNeHj8zeSx54GBhxpl7/XOwqwncwOae84YEBiSPVkXwu/bIC7oUgK2zoRQWK/C0M+XW4Jkv3af2TKK3zIsCD7+aS4lszM0gasS9LUIb/o90KOdiCQhnALS3FXsoPMnFr9aovX0Bxo6tuv/z2zBqw+stC3uJaxsQJ+asflXUgxfawFnufU58KbcTndZrLho+tx05vS8iVT2mWpiJdn5ScJCoZ6qWzCCtDqnapiwk3dc/UKEUjsbr38Ba1r0YuUGoBKt211Hht5iyxMd7ipwLwa1MjtstBXTFPxaes3NmOny0hdN7cNg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ny+lyu/S5v+lbPlL8rnvx4QtBe2dSkn0/l6+PnoTvYM=;
 b=kVTHHtA+P9Xx+2ZSjfoH1LejWKFIWyk/CBBHK/TtNlbObdW+cI3K7m3wW+g90Z32yCPucKpf0moeBt/6/cbZPXdUylGoJM9X1rEfld53XwxI7XdcvQMa+x9cXLzHstAk79BLKwNC1YSqsLWL61JDNL2uB1CSzR9VizRJoeLbvowi6NwdF2yftkcwR2L9qhs3xejGRySGpidC4LzZi2md1kHGUK8ZGHuTxyZI1E4tXWjJvAKFlrMGPwo0IQpFKetsm1s9WRc3PxtPi7mSJuR6WjcBGPhXZ8Kro0qf4pZ/UYhDL8rOUoY8zGH3v+ue+JTpLBlbivLDqavcdQex9pO8sA==
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=Ny+lyu/S5v+lbPlL8rnvx4QtBe2dSkn0/l6+PnoTvYM=;
 b=Dvce4jOfKjqg2sF71lmO2XMxm3XPSM3Bw0QdqUGlwfx5cl7CrCHuOa1XZb0j2cd2x40iyzIuzN1M/rG21/Em6SmYuNjbDUamk/oXpyC2mZz6kzAxKXQQAVCCer4/R36mGnKzoxvEa/eV5RC22IsUUPF0Rp1L1UoRwKb9otVMmJA=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 08/13] libs/guest: make a cpu policy compatible with older Xen versions
Date: Fri, 30 Apr 2021 17:52:06 +0200
Message-ID: <20210430155211.3709-9-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0018.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 021b9f80-ecae-4de7-3e04-08d90bf03832
X-MS-TrafficTypeDiagnostic: DM6PR03MB4218:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4218CBE35129181273973FC48F5E9@DM6PR03MB4218.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:3513;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: C8JoGvBBRnntcIaSCDbMGdpcjWIYAufPqmXIjCYVjma285FnQqPCmw3nr43OjHjmiBPglZTY/OqG9rq3E9e1vuWHovpQ9sTzjr04E1BIX6KtWutI0ubWElBf9ikfmffGjpInjTBh8/1Mx7cs//69czgk54oh3t53gECGc8qcOlsYibQs02lLwC2SjgkUeCJTo9rsfb7mZFTbZEv6KuPLrkatpyjSUkzJXYfNvZ0a7lsckYob17bK8CuTTd8jbu7bfd4J8GOQ+wWWbDF+vQicPexFL7w1GlUMjeVyvkH3AL4p5zH1wAVOFbggifqLTt5mS5nD1K8xirPhCBniVcnzJ6ythBjmqyVN410qDIwK21Ne+DuCr7GAXs/7Ie8eYxKFAKITeQ72E6xbTn503k6+yE/6RubI5EOU+nRUIXSGnqZrPIaZJZzM7wvw+XXNF88PPoXwv6CvrnaVZb6t9wWFibrgSwICFwOCPlT1sLP01jq+K9k+gaOjEF9qQEh+2VsYmJahw1Cty/fQOXS3Hj7AaRUBxoRMwdtkOfBiNCDe4Dzc4WNEQ5vpsYURxgel41FI9DTFI4m8LEW1Wa9Y5l64CFvPly0F7WdmO2eqxSKqrf8=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(136003)(39860400002)(346002)(376002)(478600001)(54906003)(36756003)(316002)(186003)(26005)(66476007)(6666004)(6496006)(4326008)(83380400001)(1076003)(2616005)(66556008)(2906002)(8936002)(66946007)(38100700002)(6916009)(6486002)(956004)(5660300002)(16526019)(8676002)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?hMJJeXDjuXiG7/YlZz18VwpwOHUtxMpm+rbYM/6?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 021b9f80-ecae-4de7-3e04-08d90bf03832
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:21.4420
 (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: oAm/6gzXIVqjFoEN3IEUAjdu8WwFhwFm3foX32K5qsTmLNpwgZRM1y62B0rt+Td24tjw3MsdAycP77vbwqRi8g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4218
X-OriginatorOrg: citrix.com

Older Xen versions used to expose some CPUID bits which are no longer
exposed by default. In order to keep a compatible behavior with
guests migrated from versions of Xen that don't encode the CPUID data
on the migration stream introduce a function that sets the same bits
as older Xen versions.

This is pulled out from xc_cpuid_apply_policy which already has this
logic present.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Move comments and explicitly mention pre-4.14 Xen.
---
 tools/include/xenctrl.h         |  4 +++
 tools/libs/guest/xg_cpuid_x86.c | 58 ++++++++++++++++++++++++---------
 2 files changed, 47 insertions(+), 15 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index c41d794683c..89a73fd6823 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2627,6 +2627,10 @@ int xc_cpu_policy_calc_compatible(xc_interface *xch,
                                   const xc_cpu_policy_t p2,
                                   xc_cpu_policy_t out);
 
+/* Make a policy compatible with pre-4.14 Xen versions. */
+int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
+                                  bool hvm);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index be2056469aa..855d252e067 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -446,6 +446,7 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
     unsigned int i, nr_leaves, nr_msrs;
     xen_cpuid_leaf_t *leaves = NULL;
     struct cpuid_policy *p = NULL;
+    struct xc_cpu_policy policy = { };
     uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
     uint32_t host_featureset[FEATURESET_NR_ENTRIES] = {};
     uint32_t len = ARRAY_SIZE(host_featureset);
@@ -510,21 +511,9 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
 
     if ( restore )
     {
-        /*
-         * Account for feature which have been disabled by default since Xen 4.13,
-         * so migrated-in VM's don't risk seeing features disappearing.
-         */
-        p->basic.rdrand = test_bit(X86_FEATURE_RDRAND, host_featureset);
-
-        if ( di.hvm )
-        {
-            p->feat.mpx = test_bit(X86_FEATURE_MPX, host_featureset);
-        }
-
-        /* Clamp maximum leaves to the ones supported on 4.12. */
-        p->basic.max_leaf = min(p->basic.max_leaf, 0xdu);
-        p->feat.max_subleaf = 0;
-        p->extd.max_leaf = min(p->extd.max_leaf, 0x1cu);
+        policy.cpuid = *p;
+        xc_cpu_policy_make_compatible(xch, &policy, di.hvm);
+        *p = policy.cpuid;
     }
 
     if ( featureset )
@@ -1086,3 +1075,42 @@ int xc_cpu_policy_calc_compatible(xc_interface *xch,
 
     return rc;
 }
+
+int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
+                                  bool hvm)
+{
+    xc_cpu_policy_t host;
+    int rc;
+
+    host = xc_cpu_policy_init();
+    if ( !host )
+    {
+        errno = ENOMEM;
+        return -1;
+    }
+
+    rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host);
+    if ( rc )
+    {
+        ERROR("Failed to get host policy");
+        goto out;
+    }
+
+    /*
+     * Account for features which have been disabled by default since Xen 4.13,
+     * so migrated-in VM's don't risk seeing features disappearing.
+     */
+    policy->cpuid.basic.rdrand = host->cpuid.basic.rdrand;
+
+    if ( hvm )
+        policy->cpuid.feat.mpx = host->cpuid.feat.mpx;
+
+    /* Clamp maximum leaves to the ones supported on 4.12. */
+    policy->cpuid.basic.max_leaf = min(policy->cpuid.basic.max_leaf, 0xdu);
+    policy->cpuid.feat.max_subleaf = 0;
+    policy->cpuid.extd.max_leaf = min(policy->cpuid.extd.max_leaf, 0x1cu);
+
+ out:
+    xc_cpu_policy_destroy(host);
+    return rc;
+}
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:54:34 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:54:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120629.228177 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVTO-0001Ix-6d; Fri, 30 Apr 2021 15:54:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120629.228177; Fri, 30 Apr 2021 15:54:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVTO-0001Io-2V; Fri, 30 Apr 2021 15:54:34 +0000
Received: by outflank-mailman (input) for mailman id 120629;
 Fri, 30 Apr 2021 15:54:32 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVTM-0001HD-1q
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:54:32 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a5139e80-954e-4ae4-89da-6d7871d49a3f;
 Fri, 30 Apr 2021 15:54: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: a5139e80-954e-4ae4-89da-6d7871d49a3f
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798070;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=oc4vJ9FpsItMZ9oM+720ChbMm7Y8/Upo9eZYs7rpJ94=;
  b=fzSbAxMgzZHpLzrn3mDqYrbl1xHA//5gv5qJ92xR18Sb3EKyZ2ZQtZz+
   3XfYWro2fw53bBcAzqHrj7jMxaTUybsH2fsxKlBnm+iYXP77pzZ1GXE7q
   FZ2gvgBRK5ivYd49qTKYH0CwQ6HdBCbgtvm/wzQlkxA9CoaXNu26kanoZ
   U=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: Mcrl3ekkTHGoFBoh2GtV1viL2f35URWjUhtUJ8N5Cyxc4FZk7HHxdY7jpHTdmsS9UnXM59wGX7
 /Y5/87B5a0nec6SFTpOdvJJ2/g2YajZmMBtBrz8J3jcPu15rvuaW9J0GGql7P6RrPCgXfFJ1yX
 oznKXaClKimNPHx4Fbw5m612CZucaxbYLEfF2nr8VHAQIPCVVThQdLjvPqA/pAXuA+4u9Pq8oS
 2KXd7u7ln3lOJ34h4pFK3n9TOaoB0IgGZ0VJ5sksYdIUdDbXmmTlvPHnIb6kwD4NjEr69yF+Mw
 IZs=
X-SBRS: 5.1
X-MesageID: 42625713
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:5XK9O6nu9HmyU6Quw34nC0Wl0MHpDfOrj2dD5ilNYBxZY6Wkvu
 iUtrAyyQL0hDENWHsphNCHP+26TWnB8INuiLN+AZ6LZyOjnGezNolt4c/ZwzPmEzDj7eI178
 hdWoBEIpnLAVB+5PyX3CCRD8sgzN6b8KqhmOfZyDNXQRt3brx7hj0YNi+wOCRNNW57LLA+E4
 eR4dcCmiGpfm4ZYt/+Kn4OWeXCoNOjruOYXTctARk75A6SyQ658bKSKWnl4j4ycRNqhY0j/2
 /MjhDj6syY0s2T5xfA2wbonu1rsfT7zN8rPr3otuE0LXHWhh+sdMBdXdS5zUoIicWOzHpvr9
 XWuRcnOK1ImgDsV0W4uwHk1QWl8BtG0Q6b9XaijXHuodP0SVsBYqIr7+8pEWq6mj8dlepx36
 5R02WSu4A/N2K8oA3H68XVTBYvr0KooBMZ4J4upkZCWogTYqI5l/14wGppFv47bUbHwbFiOu
 xvAMbA3e1RYFOXYlvI11MfseCEbzAdGAyLTVMFvdHQ+z9KnGphx09d/8AHmGwcnahNBKVs1q
 DhCOBFhbtORsgZYeZUA/oAe9K+DijoTQjXOGyfDFz7HMg8Sjzwgq+yxI9wyPCheZQOwpd3so
 /GSklkuWk7fF+rIdGS3bVQmyq9A1mVbHDI8IVz9pJ5srrzSP7AKiuYUm0jlMOmvrE2HtDbYf
 CuI5hbasWTbVfGKMJs5UnTSpNSIX4RXIk+odAgQW+DpcrNN8nErereXPHPJKf8MDotV2/la0
 FzGQTbFYFl1ASGS3X4iB/eVzfGYUrk5699F6Dc4qwyxeE2R8lxmzlQrW78ytCAKDVEvKBzVl
 B5OqnbnqSyonTz2W7J6m5uKydMF0o92sSmb1p64Ssxd2/ke7cKvNuSPUpI2mGcGxN5R8TKVC
 lSukpw4qDyC5CL3ygtB5aGPwuh/joujUPPa61ZtryI5M/jdJ99JI0hQrZNGQLCEAEwvx1rpm
 dFYAotXVTeCTvqtKWggPUvdaPiXug5pD3uDd9fqHrZu0nZj9ooXGEnUzmnVtPSvRwjXANOhl
 p687YWhZ2JnTrHExp4vM0IdHl3LEiHCrNPCwqIIKFZgKridg1LQWCWvjCCkB0odm3290Idu3
 z5IUSvCIP2K2sYnkod/rfh8VtyeGnYRU52Z3xgmaBWFGjNuB9IoKW2T5v291HURkoJw+kbPj
 2AXCAbJRl2wcurkDSPniyZKHkgzpIyH+DUAbg5aYvP0ne1JIDgr9BeI9ZkuLJecPz+uO4CVu
 ySPzKPJDTjEuUzxki7oG0mNCQckghsrdrYnDneqE620340DaCMfBBIR7QHL8qd6GahbfCSy5
 l9hc80u+z1EmiZUK/w9YjnKxp4bjXUqiqKasttj7Z+l6c7rqFyEJnWSiGg7gAN4DwOaOPP0H
 oDS6F66o3bMoBhf8YuaztUl2BZ4OinHQ8OiEjKGecwclEmsm/DM/6I67TOr6AzAkfpnnqHBX
 CvtwlU//LIREK4pMUnIpN1BWRdc04n7nt+uMuEao3LEQ2vHtszsWaSAzuYcLVHTrKCFqhVhh
 Fm48uQl+vSUybjwgjfsX9aJa1JmlzXDf+aMUapGeRS9ca9NknJqqy24NSrhDOycACFUS0j9M
 V4XH1VSN9ChDkkhJA21Sb3apWfmDNar3JupRd9llDs3YC65nz8Bk8uC3yAvqlr
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42625713"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nxUs+zcBaXCyCH6+sFio+wyI4jMjQaIm7PWI0vR5dumin7kdn6HNZ3GTHjizLRO3rWuypxug+iBRc09bfKV345wVyvzkXABY8uHfsWZGH5piJdjP8CJsJMjrOwIFypc6WSa3uBBkNFRPOGUFRAR/cOmDM1XeK1kaNEpKwuaM1N2kKqOeXWmKC5e0kXMuEmCucpcM/DyNvyGGmyj7DtdlQ5mS1K3xtFzska1Sm9ajZZGXM2vicp5ElSNAwm0s1jQIEvDMDBGjMgpxdPu3/r4qbRqOxA5lpMDdGwn6sfRuloleZTvhCBAZwY87MC3ENMeXlVA0Xn9IPEKUxBd8OY06jA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ea2OyWmpWeWANsLogJ31RjsyaXJdLUB3QXTZ/zC3WVM=;
 b=HqI+nBPQxOgqxSiaP4jXZny3faXwKjlRxDGigd3foODLORdiy8dcNNKEi44hBUZVnPLIESeWBBdrY1a2fNhzpx5IUq1QPaDj/sjSpPH04qZ9iZvTal5VPlK17NQZThwzFgkb3mhGco6WiENHS3fkmnuRhIb0nev9TN62yiOHWXHRfnKNkdW9qNpN+carTQ5/dfgBxplcV3VtK/1x/nb2TE9eSxOQUT7dHnXZb2U9ztfGwsfj/RzAIWxY4ryKX6Ymbtj67hCNDrbpPI/KBsTdoz/Y6OhF4WPXPUDSayWnyDzKNzxai89AWwQgQXpe9wLoVFE/eBGATWJOQlt3PaSBsw==
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=ea2OyWmpWeWANsLogJ31RjsyaXJdLUB3QXTZ/zC3WVM=;
 b=gZRllac2G+iqsgaFzBQr92epK8lM6BuOr04NP8Q3fItq4BYPB5BBfOPxkxrWH7nOY5p0LxDhybl4KqtFTreURxdSZhM1pPrvFEK8JyrefozLEow+xpXjJS0Cgu/T6UPZeq+pixANIrSZbuAN5WUbhOwYYAC5eE/UW+eBuGVC1xk=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 09/13] libs/guest: introduce helper set cpu topology in cpu policy
Date: Fri, 30 Apr 2021 17:52:07 +0200
Message-ID: <20210430155211.3709-10-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0010.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::22) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 7f7c8eed-39a8-401e-6040-08d90bf03baf
X-MS-TrafficTypeDiagnostic: DM6PR03MB4218:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4218A150493697B087CA4BAD8F5E9@DM6PR03MB4218.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:1169;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: NexlH798I11O0XMu7kvnHnqCExwGNssKX9lJyFejlnmflMyaZjIqIZwCR5A+C/CHkOBVJJAua8klLS4FnrRIDewgCQUmfrsLBKwyF/Q75VMjsP8TRCkKphIH+ICtpWzOMzxI3Hgk+aoI14ibWpgULahIJfVjf6sHdGX/8BSUJU588VRGR4MCl5owMFVLEQ4R0tAPhlSlqGxYlG39t/XZ7Sh1GwWxAJvV4LEHnvgjaJf5W9977X0qOvQ7yp80HajOX4ues/2/U6rGIZDYlND5HuKFI+O3bykiZHVavTpw3wY2ozOoz8ghQhPaFcyESEpODQdN/ZoyrjnwXqxtvFomhQRIcRheYwEIYN331DQHfBLmJJHLEt0jfpEhkBi1AT1DcL7m6KgLyYkGrCObdqPorAQyWeWVnwkpzl3m/6zKnNWrnPQPm7tpgNeP2X0ZE1VeEE5ZrIn2ijLR7dUBzrUM8irDS7YjzKBYE0tuEgxMO+7zDwxkMTtGges9vs6qtU5vyNFygvoVCBFHA+WS79Ob32uzlGhRXV1yexQUkjvSrBBTaA0GDyfFDV0IEi4BRBGqmyXPt4BPuU5BaB6+v2Yeh2RLhNVdnWUmbPNqTevflts=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(136003)(39860400002)(346002)(376002)(478600001)(54906003)(36756003)(316002)(186003)(26005)(66476007)(6666004)(6496006)(4326008)(83380400001)(1076003)(2616005)(66556008)(2906002)(8936002)(66946007)(38100700002)(6916009)(6486002)(956004)(5660300002)(16526019)(8676002)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 7f7c8eed-39a8-401e-6040-08d90bf03baf
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:27.2096
 (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: lkTcfXjmbOjQnbRFG93ULT3/UUBR0LP3EzrhzTqFMS/EtciQAV4pgPZ5H31RWkPaL/j96kupHIJcLouh4SE0Jw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4218
X-OriginatorOrg: citrix.com

This logic is pulled out from xc_cpuid_apply_policy and placed into a
separate helper. Note the legacy part of the introduced function, as
long term Xen will require a proper topology setter function capable
of expressing a more diverse set of topologies.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 - s/xc_cpu_policy_topology/xc_cpu_policy_legacy_topology/
---
 tools/include/xenctrl.h         |   4 +
 tools/libs/guest/xg_cpuid_x86.c | 182 +++++++++++++++++---------------
 2 files changed, 103 insertions(+), 83 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 89a73fd6823..ec184bccd3f 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2631,6 +2631,10 @@ int xc_cpu_policy_calc_compatible(xc_interface *xch,
 int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
                                   bool hvm);
 
+/* Setup the legacy policy topology. */
+int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
+                                  bool hvm);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index 855d252e067..dbf2ef67ee0 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -443,13 +443,11 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
 {
     int rc;
     xc_dominfo_t di;
-    unsigned int i, nr_leaves, nr_msrs;
+    unsigned int nr_leaves, nr_msrs;
     xen_cpuid_leaf_t *leaves = NULL;
     struct cpuid_policy *p = NULL;
     struct xc_cpu_policy policy = { };
     uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
-    uint32_t host_featureset[FEATURESET_NR_ENTRIES] = {};
-    uint32_t len = ARRAY_SIZE(host_featureset);
 
     if ( xc_domain_getinfo(xch, domid, 1, &di) != 1 ||
          di.domid != domid )
@@ -472,22 +470,6 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
          (p = calloc(1, sizeof(*p))) == NULL )
         goto out;
 
-    /* Get the host policy. */
-    rc = xc_get_cpu_featureset(xch, XEN_SYSCTL_cpu_featureset_host,
-                               &len, host_featureset);
-    if ( rc )
-    {
-        /* Tolerate "buffer too small", as we've got the bits we need. */
-        if ( errno == ENOBUFS )
-            rc = 0;
-        else
-        {
-            PERROR("Failed to obtain host featureset");
-            rc = -errno;
-            goto out;
-        }
-    }
-
     /* Get the domain's default policy. */
     nr_msrs = 0;
     rc = get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
@@ -571,70 +553,11 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         }
     }
 
-    if ( !di.hvm )
-    {
-        /*
-         * On hardware without CPUID Faulting, PV guests see real topology.
-         * As a consequence, they also need to see the host htt/cmp fields.
-         */
-        p->basic.htt       = test_bit(X86_FEATURE_HTT, host_featureset);
-        p->extd.cmp_legacy = test_bit(X86_FEATURE_CMP_LEGACY, host_featureset);
-    }
-    else
-    {
-        /*
-         * Topology for HVM guests is entirely controlled by Xen.  For now, we
-         * hardcode APIC_ID = vcpu_id * 2 to give the illusion of no SMT.
-         */
-        p->basic.htt = true;
-        p->extd.cmp_legacy = false;
-
-        /*
-         * Leaf 1 EBX[23:16] is Maximum Logical Processors Per Package.
-         * Update to reflect vLAPIC_ID = vCPU_ID * 2, but make sure to avoid
-         * overflow.
-         */
-        if ( !(p->basic.lppp & 0x80) )
-            p->basic.lppp *= 2;
-
-        switch ( p->x86_vendor )
-        {
-        case X86_VENDOR_INTEL:
-            for ( i = 0; (p->cache.subleaf[i].type &&
-                          i < ARRAY_SIZE(p->cache.raw)); ++i )
-            {
-                p->cache.subleaf[i].cores_per_package =
-                    (p->cache.subleaf[i].cores_per_package << 1) | 1;
-                p->cache.subleaf[i].threads_per_cache = 0;
-            }
-            break;
-
-        case X86_VENDOR_AMD:
-        case X86_VENDOR_HYGON:
-            /*
-             * Leaf 0x80000008 ECX[15:12] is ApicIdCoreSize.
-             * Leaf 0x80000008 ECX[7:0] is NumberOfCores (minus one).
-             * Update to reflect vLAPIC_ID = vCPU_ID * 2.  But avoid
-             * - overflow,
-             * - going out of sync with leaf 1 EBX[23:16],
-             * - incrementing ApicIdCoreSize when it's zero (which changes the
-             *   meaning of bits 7:0).
-             *
-             * UPDATE: I addition to avoiding overflow, some
-             * proprietary operating systems have trouble with
-             * apic_id_size values greater than 7.  Limit the value to
-             * 7 for now.
-             */
-            if ( p->extd.nc < 0x7f )
-            {
-                if ( p->extd.apic_id_size != 0 && p->extd.apic_id_size < 0x7 )
-                    p->extd.apic_id_size++;
-
-                p->extd.nc = (p->extd.nc << 1) | 1;
-            }
-            break;
-        }
-    }
+    policy.cpuid = *p;
+    rc = xc_cpu_policy_legacy_topology(xch, &policy, di.hvm);
+    if ( rc )
+        goto out;
+    *p = policy.cpuid;
 
     rc = x86_cpuid_copy_to_buffer(p, leaves, &nr_leaves);
     if ( rc )
@@ -1114,3 +1037,96 @@ int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
     xc_cpu_policy_destroy(host);
     return rc;
 }
+
+int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
+                                  bool hvm)
+{
+    if ( !hvm )
+    {
+        xc_cpu_policy_t host;
+        int rc;
+
+        host = xc_cpu_policy_init();
+        if ( !host )
+        {
+            errno = ENOMEM;
+            return -1;
+        }
+
+        rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host);
+        if ( rc )
+        {
+            ERROR("Failed to get host policy");
+            xc_cpu_policy_destroy(host);
+            return rc;
+        }
+
+
+        /*
+         * On hardware without CPUID Faulting, PV guests see real topology.
+         * As a consequence, they also need to see the host htt/cmp fields.
+         */
+        policy->cpuid.basic.htt = host->cpuid.basic.htt;
+        policy->cpuid.extd.cmp_legacy = host->cpuid.extd.cmp_legacy;
+    }
+    else
+    {
+        unsigned int i;
+
+        /*
+         * Topology for HVM guests is entirely controlled by Xen.  For now, we
+         * hardcode APIC_ID = vcpu_id * 2 to give the illusion of no SMT.
+         */
+        policy->cpuid.basic.htt = true;
+        policy->cpuid.extd.cmp_legacy = false;
+
+        /*
+         * Leaf 1 EBX[23:16] is Maximum Logical Processors Per Package.
+         * Update to reflect vLAPIC_ID = vCPU_ID * 2, but make sure to avoid
+         * overflow.
+         */
+        if ( !(policy->cpuid.basic.lppp & 0x80) )
+            policy->cpuid.basic.lppp *= 2;
+
+        switch ( policy->cpuid.x86_vendor )
+        {
+        case X86_VENDOR_INTEL:
+            for ( i = 0; (policy->cpuid.cache.subleaf[i].type &&
+                          i < ARRAY_SIZE(policy->cpuid.cache.raw)); ++i )
+            {
+                policy->cpuid.cache.subleaf[i].cores_per_package =
+                  (policy->cpuid.cache.subleaf[i].cores_per_package << 1) | 1;
+                policy->cpuid.cache.subleaf[i].threads_per_cache = 0;
+            }
+            break;
+
+        case X86_VENDOR_AMD:
+        case X86_VENDOR_HYGON:
+            /*
+             * Leaf 0x80000008 ECX[15:12] is ApicIdCoreSize.
+             * Leaf 0x80000008 ECX[7:0] is NumberOfCores (minus one).
+             * Update to reflect vLAPIC_ID = vCPU_ID * 2.  But avoid
+             * - overflow,
+             * - going out of sync with leaf 1 EBX[23:16],
+             * - incrementing ApicIdCoreSize when it's zero (which changes the
+             *   meaning of bits 7:0).
+             *
+             * UPDATE: I addition to avoiding overflow, some
+             * proprietary operating systems have trouble with
+             * apic_id_size values greater than 7.  Limit the value to
+             * 7 for now.
+             */
+            if ( policy->cpuid.extd.nc < 0x7f )
+            {
+                if ( policy->cpuid.extd.apic_id_size != 0 &&
+                     policy->cpuid.extd.apic_id_size < 0x7 )
+                    policy->cpuid.extd.apic_id_size++;
+
+                policy->cpuid.extd.nc = (policy->cpuid.extd.nc << 1) | 1;
+            }
+            break;
+        }
+    }
+
+    return 0;
+}
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:54:41 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:54:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120635.228189 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVTV-0001Q7-Fz; Fri, 30 Apr 2021 15:54:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120635.228189; Fri, 30 Apr 2021 15: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 1lcVTV-0001Px-CO; Fri, 30 Apr 2021 15:54:41 +0000
Received: by outflank-mailman (input) for mailman id 120635;
 Fri, 30 Apr 2021 15:54:39 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVTT-0001HD-6X
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:54:39 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9cb1a7ef-8314-414a-a12f-6e0fca40efc5;
 Fri, 30 Apr 2021 15: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: 9cb1a7ef-8314-414a-a12f-6e0fca40efc5
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798075;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=Z6rM4sPpyB5WFE0aM6KS6fS53aeoShZ4p2FpkyddptI=;
  b=UBiJuYzwdVIdJu1kuPonAWpo5MeZiZ7yht20Kr+QO6LfH4+NIUESguW0
   9liYWOFipVzexzDmgn0dXEwVCSPvAhfNbgteOeH61JNeZlMRiasr8q8id
   vfj8BWXyGM9SB81EIz4NZtZvzCMXw0B+GGYGH+HM8jiU5t4RGeCl+ShQH
   8=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: fMD9tSFRe1Dhctu5MtT3XvJvvwXbQn91vi4L3QiHMXW1AcHWpaJcrNSndXzpdv2eVQ+UB/MyC7
 0v+oyb3QpqpSdWxlOixQuYvYQoQibccHk01xKP1lMOv/NI1nprOnqfT5ODLI5Ruc4yPUyks1RM
 Ofo4rQv2+ykzB20Owym7xpnlYV+xpcYpVLwlS8chK3VWLMwBw+pPd0ZMFfYK1s1kqwJLIf97hW
 UFRHn3jsuskz1d7yMjc/OTe54KJdodSLKNoiWUwU23lui+pwoUsam6w3YytItKX+vdmlbusggG
 OvE=
X-SBRS: 5.1
X-MesageID: 42930075
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:f6cJ6a7sgggeMORbnAPXwU2EI+orLtY04lQ7vn1ZYSd+NuSFis
 Gjm+ka3xfoiDAXHEotg8yEJbPoexzh3LZPy800Ma25VAfr/FGpIoZr8Jf4z1TbdxHW3tV2kZ
 1te60WMrDNJHBnkMf35xS5Gd48wN+BtJuln/va0m0Fd2BXQotLhj0JbjqzOEtwWQVAGN4FD5
 Ka/MVKvH6Nfn4QY8S9CBA+LpT+jvfMk4/rZgNDOg4/5GC1/E6VwZPZMzzd5BcRVDtT3awvmF
 KqryXV7riu2svLrCP0+HTU6/1t6bnc4/tFQPeBk80Ebgjr4zzYH7hJf52nkHQLrPq06FAs+e
 O80ysIG8ho8XveciWUjHLWqnDd+Q0j4XPj1lOU6EGLyaeSJENYerh8rLlUfRfD500rsMsU6t
 Mw40uju4dKFhSFpSzh5rHzJmBXv3Cpqnkvm/N7tQ05baIibtZq3Oki1XIQOpIBECXm0ZsgAe
 ljAerNjcwmD2+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoiPA3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QS2vCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSfGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erGs
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdUwoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYe3n1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQsBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtG4fIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3DToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5ZvJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjYvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMZAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCU5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3iml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NAgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso6I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfCvA6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu+lZMfRmmIpA79Ij
 CkglVg1saAeyuIzrgBDa0sZUxQdUgn8XxnldnyPbH4OUGPd+tZ+kC9PWL4WLhBSLKdEbFVih
 ph+dmHk6u2cCX/sTqg8AdTE+Zr82y9R9m1Dx/JMelU88aiMVDJu5CU2qeI/X7KYAr+TV8Zi4
 1DfVERacoGqgBKtvxJ7gGCDortokwklFNC5ypAjVCF4Pn+3Fvm
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42930075"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AVozkcNqy1O0lDtWH/quK2qUi2V12PLKqAmRDDuzWcMaiVfJ0dy9xGaJEIO5PmtR9ifBJ3orTpbWhh9DWS5Q972JojUowNTfRHaDWk3GsSY8Sk+woMga62Nn8Tt0nUrGvbv6qV+C9sRpEm8+8PpxSYNlcPyCkfW4g1nvTtxjwS7MskVxGCThcvWy0BZg+E0H91GPO/2CO52kmcXlAGWtxJoHX+AUuYtMwU+03Bz2uo0aTbDnQhvnEHJBRjr3BDIirNN/WPGnh33N61hgcgUODw+rrrKJ/APEArY69BZipUp2PsQkbmFLT4LnIyV1hbNSG3+pMe4O4Bsy8ypOSnbQjQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1a5L+d5za5DWdudCEWDZUtzQrAZyeZPsBE0hIe9r1IU=;
 b=FP3rGVzfQ1kk6X/A8EOzbu2e1IJtEnFdfaYYqxAo4uDr2HMrPdDi7SGieN7Q++7IXKb7xf2tNs3jR60YehfrEQBsFKlv2GaOONuyfi95MP/8hOSrvn9Qxty81oSlu6HjSE7GGKu0/s/Rioc5nTahRIXVSo3FR9ZPIUNe3gRAS2WDdfi3Syt9NxIRoTOqW+T+oU5TimUNiuvsW5fLRHnvPh6QdKaRfkTCLp/7zmL361dAqsr1uQtGq+K5hgr6oziOmFG5ABj5qOj2BukTzoUdUH+ddFD8VkzvO6u5wVfzaO+8T1iE87yH/bUXNBj6Ak+mzIPEIH+Rleecsa16+P5jFA==
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=1a5L+d5za5DWdudCEWDZUtzQrAZyeZPsBE0hIe9r1IU=;
 b=jiDhTKTVcCw8bAJzJ6hPes3f63IyJB8G8Vi1k09Kk6QVZfTiwdQFtMzJFtyxKbVVXPaop45I4uTNbgm0Q9DAIEwP8BSQaM7a9mu0K21/DrmRxj+U1khGLWRZrq08mM7vFTX+uhj+is9EPEvkm72EXGbmOQWirRGBdWdZER1e7lg=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 10/13] libs/guest: rework xc_cpuid_xend_policy
Date: Fri, 30 Apr 2021 17:52:08 +0200
Message-ID: <20210430155211.3709-11-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0020.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::32) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 477b2cb1-6298-4fe6-a98a-08d90bf03ed1
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2923F6DBDB6D1F81E8C4AD4F8F5E9@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:65;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 2DWjIn5q6ZKtznP5rPpIuXJt8ah8wBVuvSZKAvC16YTkoQwyEU36orkDQ9ANOwwHG/voVfCuHmx66yeDoyvn7AygBGbxgoV+66cBzegqiz7uwlkVZrITxTg0jgs+8+NrqYKIV1hMghtkJ2gcSsnPB0UvsZXAJLDsILZMqeoOg2A/MHLQHWLhO8BbiuSPeXPIueZIeMS6YfDwFQ/07PdHRtYtUkilBi5gkJ2+iJrPGWe9fMyO3jRZ21V0I2aXDlcNLKUyMh52OsqPkuByNn+f4goZXuz3Gae046b/vrScGlvycv2m1Z3gdDeej3lQvYRj2w/yOcPqi7ej/TuF3kCB0RrQANOVrrr+pXdiOuOKDkKvTAMlOYYxBGHSEau0VT+DfPnCjPOWOz5UbkG31r/P6XKzsfr1nhAvSdJUogPXarTQb3YGIdsCqCqsiYko28EDycD4y53QngprvveFAwu8xAkD/xdznfViSXQMVRvidB9Wb9nPAsSdz+Z2nA15IDPgwS1j6NGllERKHNAJ4NLpTf8hOctNLclbkyoRjhYV/6zT3hjUXjkO0IHqfjhPIJ4GTOX+E8yPw256lQ7XmJTPrmChMH5LIJm013pwnMUiF3M=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(956004)(186003)(16526019)(86362001)(4326008)(8936002)(1076003)(6486002)(2906002)(5660300002)(26005)(66946007)(316002)(2616005)(38100700002)(66476007)(478600001)(83380400001)(6496006)(66556008)(6916009)(36756003)(6666004)(54906003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 477b2cb1-6298-4fe6-a98a-08d90bf03ed1
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:32.4645
 (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: OWdibR6sUlzYZNpQzqBLxCoApewI3mb+qAPmnberdVK01TyYdsD4JL8cEzurif6HhgUgwnyjsAXOY7wELIIyZQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

Rename xc_cpuid_xend_policy to xc_cpu_policy_apply_cpuid and make it
public. Modify the function internally to use the new xc_cpu_policy_*
set of functions. Also don't apply the passed policy to a domain
directly, and instead modify the provided xc_cpu_policy_t. The caller
will be responsible of applying the modified cpu policy to the domain.

Note that further patches will end up removing this function, as the
callers should have the necessary helpers to modify an xc_cpu_policy_t
themselves.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/xenctrl.h         |   4 +
 tools/libs/guest/xg_cpuid_x86.c | 182 ++++++++++++++------------------
 2 files changed, 84 insertions(+), 102 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index ec184bccd3f..ce0785f7654 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2635,6 +2635,10 @@ int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
 int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
                                   bool hvm);
 
+/* Apply an xc_xend_cpuid object to the policy. */
+int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
+                              const struct xc_xend_cpuid *cpuid, bool hvm);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index dbf2ef67ee0..d313a093af6 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -288,124 +288,107 @@ static xen_cpuid_leaf_t *find_leaf(
     return bsearch(&key, leaves, nr_leaves, sizeof(*leaves), compare_leaves);
 }
 
-static int xc_cpuid_xend_policy(
-    xc_interface *xch, uint32_t domid, const struct xc_xend_cpuid *xend)
+int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
+                              const struct xc_xend_cpuid *cpuid, bool hvm)
 {
     int rc;
-    xc_dominfo_t di;
-    unsigned int nr_leaves, nr_msrs;
-    uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
-    /*
-     * Three full policies.  The host, default for the domain type,
-     * and domain current.
-     */
-    xen_cpuid_leaf_t *host = NULL, *def = NULL, *cur = NULL;
-    unsigned int nr_host, nr_def, nr_cur;
-
-    if ( xc_domain_getinfo(xch, domid, 1, &di) != 1 ||
-         di.domid != domid )
-    {
-        ERROR("Failed to obtain d%d info", domid);
-        rc = -ESRCH;
-        goto fail;
-    }
-
-    rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
-    if ( rc )
-    {
-        PERROR("Failed to obtain policy info size");
-        rc = -errno;
-        goto fail;
-    }
+    xc_cpu_policy_t host = NULL, def = NULL;
 
-    rc = -ENOMEM;
-    if ( (host = calloc(nr_leaves, sizeof(*host))) == NULL ||
-         (def  = calloc(nr_leaves, sizeof(*def)))  == NULL ||
-         (cur  = calloc(nr_leaves, sizeof(*cur)))  == NULL )
-    {
-        ERROR("Unable to allocate memory for %u CPUID leaves", nr_leaves);
-        goto fail;
-    }
-
-    /* Get the domain's current policy. */
-    nr_msrs = 0;
-    nr_cur = nr_leaves;
-    rc = get_domain_cpu_policy(xch, domid, &nr_cur, cur, &nr_msrs, NULL);
-    if ( rc )
+    host = xc_cpu_policy_init();
+    def = xc_cpu_policy_init();
+    if ( !host || !def )
     {
-        PERROR("Failed to obtain d%d current policy", domid);
-        rc = -errno;
-        goto fail;
+        PERROR("Failed to init policies");
+        rc = -ENOMEM;
+        goto out;
     }
 
     /* Get the domain type's default policy. */
-    nr_msrs = 0;
-    nr_def = nr_leaves;
-    rc = get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
+    rc = xc_cpu_policy_get_system(xch, hvm ? XEN_SYSCTL_cpu_policy_hvm_default
                                            : XEN_SYSCTL_cpu_policy_pv_default,
-                               &nr_def, def, &nr_msrs, NULL);
+                                  def);
     if ( rc )
     {
-        PERROR("Failed to obtain %s def policy", di.hvm ? "hvm" : "pv");
-        rc = -errno;
-        goto fail;
+        PERROR("Failed to obtain %s def policy", hvm ? "hvm" : "pv");
+        goto out;
     }
 
     /* Get the host policy. */
-    nr_msrs = 0;
-    nr_host = nr_leaves;
-    rc = get_system_cpu_policy(xch, XEN_SYSCTL_cpu_policy_host,
-                               &nr_host, host, &nr_msrs, NULL);
+    rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host);
     if ( rc )
     {
         PERROR("Failed to obtain host policy");
-        rc = -errno;
-        goto fail;
+        goto out;
     }
 
     rc = -EINVAL;
-    for ( ; xend->leaf != XEN_CPUID_INPUT_UNUSED; ++xend )
+    for ( ; cpuid->leaf != XEN_CPUID_INPUT_UNUSED; ++cpuid )
     {
-        xen_cpuid_leaf_t *cur_leaf = find_leaf(cur, nr_cur,
-                                               xend->leaf, xend->subleaf);
-        const xen_cpuid_leaf_t *def_leaf = find_leaf(def, nr_def,
-                                                     xend->leaf, xend->subleaf);
-        const xen_cpuid_leaf_t *host_leaf = find_leaf(host, nr_host, xend->leaf,
-                                                      xend->subleaf);
-
-        if ( cur_leaf == NULL || def_leaf == NULL || host_leaf == NULL )
+        xen_cpuid_leaf_t cur_leaf;
+        xen_cpuid_leaf_t def_leaf;
+        xen_cpuid_leaf_t host_leaf;
+
+        rc = xc_cpu_policy_get_cpuid(xch, policy, cpuid->leaf, cpuid->subleaf,
+                                     &cur_leaf);
+        if ( rc )
         {
-            ERROR("Missing leaf %#x, subleaf %#x", xend->leaf, xend->subleaf);
-            goto fail;
+            ERROR("Failed to get current policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            goto out;
+        }
+        rc = xc_cpu_policy_get_cpuid(xch, def, cpuid->leaf, cpuid->subleaf,
+                                     &def_leaf);
+        if ( rc )
+        {
+            ERROR("Failed to get def policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            goto out;
+        }
+        rc = xc_cpu_policy_get_cpuid(xch, host, cpuid->leaf, cpuid->subleaf,
+                                     &host_leaf);
+        if ( rc )
+        {
+            ERROR("Failed to get host policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            goto out;
         }
 
-        for ( unsigned int i = 0; i < ARRAY_SIZE(xend->policy); i++ )
+        for ( unsigned int i = 0; i < ARRAY_SIZE(cpuid->policy); i++ )
         {
-            uint32_t *cur_reg = &cur_leaf->a + i;
-            const uint32_t *def_reg = &def_leaf->a + i;
-            const uint32_t *host_reg = &host_leaf->a + i;
+            uint32_t *cur_reg = &cur_leaf.a + i;
+            const uint32_t *def_reg = &def_leaf.a + i;
+            const uint32_t *host_reg = &host_leaf.a + i;
 
-            if ( xend->policy[i] == NULL )
+            if ( cpuid->policy[i] == NULL )
                 continue;
 
             for ( unsigned int j = 0; j < 32; j++ )
             {
                 bool val;
 
-                if ( xend->policy[i][j] == '1' )
+                switch ( cpuid->policy[i][j] )
+                {
+                case '1':
                     val = true;
-                else if ( xend->policy[i][j] == '0' )
+                    break;
+
+                case '0':
                     val = false;
-                else if ( xend->policy[i][j] == 'x' )
+                    break;
+
+                case 'x':
                     val = test_bit(31 - j, def_reg);
-                else if ( xend->policy[i][j] == 'k' ||
-                          xend->policy[i][j] == 's' )
+                    break;
+
+                case 'k':
+                case 's':
                     val = test_bit(31 - j, host_reg);
-                else
-                {
+                    break;
+
+                default:
                     ERROR("Bad character '%c' in policy[%d] string '%s'",
-                          xend->policy[i][j], i, xend->policy[i]);
-                    goto fail;
+                          cpuid->policy[i][j], i, cpuid->policy[i]);
+                    goto out;
                 }
 
                 clear_bit(31 - j, cur_reg);
@@ -413,25 +396,19 @@ static int xc_cpuid_xend_policy(
                     set_bit(31 - j, cur_reg);
             }
         }
-    }
 
-    /* Feed the transformed currrent policy back up to Xen. */
-    rc = xc_set_domain_cpu_policy(xch, domid, nr_cur, cur, 0, NULL,
-                                  &err_leaf, &err_subleaf, &err_msr);
-    if ( rc )
-    {
-        PERROR("Failed to set d%d's policy (err leaf %#x, subleaf %#x, msr %#x)",
-               domid, err_leaf, err_subleaf, err_msr);
-        rc = -errno;
-        goto fail;
+        rc = xc_cpu_policy_update_cpuid(xch, policy, &cur_leaf, 1);
+        if ( rc )
+        {
+            PERROR("Failed to set policy leaf %#x subleaf %#x",
+                   cpuid->leaf, cpuid->subleaf);
+            goto out;
+        }
     }
 
-    /* Success! */
-
- fail:
-    free(cur);
-    free(def);
-    free(host);
+ out:
+    xc_cpu_policy_destroy(def);
+    xc_cpu_policy_destroy(host);
 
     return rc;
 }
@@ -439,7 +416,7 @@ static int xc_cpuid_xend_policy(
 int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
                           const uint32_t *featureset, unsigned int nr_features,
                           bool pae, bool itsc, bool nested_virt,
-                          const struct xc_xend_cpuid *xend)
+                          const struct xc_xend_cpuid *cpuid)
 {
     int rc;
     xc_dominfo_t di;
@@ -559,6 +536,10 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         goto out;
     *p = policy.cpuid;
 
+    rc = xc_cpu_policy_apply_cpuid(xch, &policy, cpuid, di.hvm);
+    if ( rc )
+        goto out;
+
     rc = x86_cpuid_copy_to_buffer(p, leaves, &nr_leaves);
     if ( rc )
     {
@@ -576,9 +557,6 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
         goto out;
     }
 
-    if ( xend && (rc = xc_cpuid_xend_policy(xch, domid, xend)) )
-        goto out;
-
     rc = 0;
 
 out:
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:54:51 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:54:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120642.228201 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVTf-0001aF-43; Fri, 30 Apr 2021 15:54:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120642.228201; Fri, 30 Apr 2021 15: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 1lcVTe-0001a1-VT; Fri, 30 Apr 2021 15:54:50 +0000
Received: by outflank-mailman (input) for mailman id 120642;
 Fri, 30 Apr 2021 15:54:49 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVTd-0001HD-6r
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:54:49 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 29d17a9e-6d03-4399-8ff1-4f1fadecb34e;
 Fri, 30 Apr 2021 15:54: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: 29d17a9e-6d03-4399-8ff1-4f1fadecb34e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798080;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=6KYEvnOb+R8RyMpBSvOpf5DodPRKSrhAh2PIRCR9EUU=;
  b=HjEkDUWsNx4XbkoAumS/HFtRtVXpd9oYpJKyvbgAxROOVsNWWFnrwmKl
   zktO0Rk4dX9ebSp//cHbV6Pji9c2UiTOlt5QH3/2Qt6Qni6jwIfewmvzj
   VEw5QaxJFsxyrdIdLm5ssw8mcaz0MYZ/Zo/FY/oIG0DBi75RRLAxVO+6u
   Q=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: c8XXl83P3HhuQChV5RhRl69Ri+TU+KIdATO8t100zCY/t29fDzmz5Eomlqparv7K/5B5tAVt/d
 tKA0jmQpvzHetQRq0URJbvJcujpH0GzQkpdlU3lqtBodkPZHllqN+qWV6PlGoc6aTFWJNutrDQ
 oflyXgY+AFDqylKWxheoGu5je2sWLeAbBJyxi5cPJ91uBcCrusArKMwrcCnMO7wLpfnnuIlqsR
 wK+j6XQ8ZKjSs+Tb4ngzVflzn9FjneWz/yo2DmoK9MzB9qfYyuYXSO56zktGVWIIgB+KwevOZz
 lv4=
X-SBRS: 5.1
X-MesageID: 42810498
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:qQR6t60fTFxk1sdjP4I+XwqjBTV3eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/BIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFmdJ1/Z
 xLN5JzANiYNzRHpO7n/Qi1FMshytGb8KauwdzT1WtpUBsCUcFdxi1SYzzrdXFebg9AGJY/Cd
 6g/cJBvTWtYjA6ac68C3kDUYH41qL2vbjhZgMLAANi1RmWgVqTmcLHOjW7/jNbaTNAxr8+7X
 PI+jaZ2oyPu+y2oyWsrlP7wI9RnLLau75+LeyKzvMYMzD9zjuvDb4RIYGqmBAQjKWR5E0xkN
 /Kyi1QTPhbz3/KZGm6rV/M9mDboU4TwkTvw1OZnnfvyPaRLFlRZrsj9OApByfx0EYusMpx16
 hGxQuixudqJCjNgTjn4JzwXwxq/3DE0UYKq/IZjHBUTOIlGdlshLEYlXkldKsoLWbR7YAqF/
 RWF8fM5PpaWkPyVQGpgkBfhPOrRXg9BRGAXwwrvdGUySFfmDRDw1If39F3pAZOyLsND71/o8
 jUOKVhk79DCucQcKJGHe8EBe+6EHbETx7gOH+bSG6XWp0vCjbokdra8b817OaldNgj150pgq
 nMV1teqCobZ1/uIdfm5uwJzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQkBNHBUf
 rbAuMXP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5u3RLInHsfHabebzKLLhHS1MYBK7Pl
 IzGBzIYOlQ5EGiXXH1xDLLXWn2R0D59ZVsVIjWltJjjLQlB8lpiEw4mF657saEJXlpqaotZn
 ZzJ7vhj+eerWmy9mDY0nVxNnNmfwFoyYSld0kPiR4BMkvyf7pGkc6YY3pu0HyOIQI6aM/KDg
 hFpRBS9bisJ5KdgQAuYujXc16yvj82njanXp0ckqqM6YPOYZUjFKsrX6R3CEHsDBx6mQFjrU
 9Zcw8aTkrjFjfj4J/VzqA8NaX6TZ1RkQ2rKclbpTb0rkOHv/wiQXMdQnqTS8KNuB0vQDBVn1
 V11KcajNO76HCSAFp6pN59HExHaWyRDr4DKAiefo1blormfxxKQX6QiSaXjAwyfWTW51wf71
 aRXxG8SLXuOB5wq3pY2qHl/BdPemKRc1lZR1p6vYd+fF628Epb4KuuXO6ewmGRYlwNzqUhKz
 nDeyIVOR4r7cuwzgSplDGLEmgGyp0iMvfGNqkqd6je1xqWWdS1vJBDO8UR0IduNdjovONObP
 mWfBWNKijkT8wuwA6Yqx8eSWBJgUhhtcmt/hLr7GK1hiFiRdXTJUlrXLEdLZW36XP+S/OBzZ
 V+ipYUsIKLQxLMQ+/D7ZuSSThJbi73iyqRacoDrJhPp6I8tLdpBfDgIHD1/UAC+C97Fdv+kU
 MVfb9y77/AMLJ+ZsB6QVMswnMZ0PC0aHYxugP4AuUCbUggon/SMdSO+afJo9MUczu8jTq1HV
 Ge9iFHls21JBer5Po/C6gqJ35RZ1V5wHN+/Pmaf4m4MnTmS8hzuH67OGS6arlTVeysHqgRtA
 9z55Wtk/WMfyT1nCDWsj0TGNMDz0+XBeezChmLA+hG7piTPkmNmLKj5IqLtwjMIAHLI3gwtM
 libkwfbsNKlzkkgskW60GJO9LKi3NgtUBf7zFhnkPqwa687g7gbBl7DTE=
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42810498"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fdnJhT2J92B9GqnWddqUg69BaP7eiOvqRLUY8P8HxD8rBjL7e6vHR8YVUPB/nQiR+vqmYYarvDMIZWjnmPF21DtIT/TEqTb/hP9Zx52VncJmPAl/yX/xWErKAFm2o5wWy+SmaJC3CMC6lvTJeVUR3B+LwpAaHioW7ENmHadcRsBfSawb3az9zZ4cOAp7XcIndrtDoM59cqb4VwU8SX0N4qGLeNQPU1LDDqh2jdoyZLrt2gqLjitcRYKfnNRS/TbgtwN7FBwaZjciI35TmdNgcbSZCxpbwnvtF/MqsGijJWxEwbVhJ1hPjEh1NK3OGlcYQKfSriQCDiteyXtZYszZqQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OI1adWYY6QWjkd1MdeyydMXNw87PB1TRtgvlJoP2W4k=;
 b=S+3lUaT7Gael4mYTXpOl0Pet7YyHf/HrrexAQHaFUx7mW/SAkNB1Y6318xX2Hyq/vMuFEpgFTSC5fHnJyenP5S2pREAwr30zpqkfrg8+2X/fMYwnBWTTxDdsHfj7p40YHh2otEiOdLzu0Wj5zDMKT9exElgi3eHEB+vUOj8NSxElSKXgv1NZoS1vizkOLCDRUsZ/WpLSGwpfeMCCY9vAyqyU6kyHYKgFtbemdZrbFH2xNscUhkUAMU5d7wjjRLE7tpj+VJ9cuZ60m64vCFSno6QL610lbxRjBaTa+eMFEpXmQzwyUochhK7GhLjw4/oc1hNM+PysQLhbtUhpkI40fA==
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=OI1adWYY6QWjkd1MdeyydMXNw87PB1TRtgvlJoP2W4k=;
 b=fPGU4FyzAljAgz1Q9kLHHWy7JPURE7UXwcuw9E5zeaWRcFB/YzYwNOic92ru5DhNt2NPwSwojSEjon88xHEY/ddZlV8tb3A5sp0PO587HfYfZfSdUfS+19lWHC7j8epSmZmG+ZjGSwjduGNCyIUtgQkErJwnMdOit+lYcMsNf6U=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v3 11/13] libs/guest: apply a featureset into a cpu policy
Date: Fri, 30 Apr 2021 17:52:09 +0200
Message-ID: <20210430155211.3709-12-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MRXP264CA0002.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::14) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 92d9fa90-5073-409d-3659-08d90bf041e5
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB292314A8F0E885B99D813F268F5E9@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7219;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: bOY9qY+wwNnt5l7QDQcYVH0XHBAIqyU/Dx+UTXKp4G0hBuCTnRyaf/O0xTmi6KVdPCj0rZ0mjy4jBR+8kI1UeoXE5Pv2XHhUJnuyb0vhZ8B22lZbEXfdnRBCyZ0oeltCL8eEAI3Mz8e1ArNY666qqcpu2V1luxPuCXn19fZkEhAP6WHEJgsRxO/ITv1CR3XQtX6+bb79o1Bparv7qJaz6Q2M5dJk0YZIt/1qS8wMCE85IX1ui4l21rWVR9+YXOHr81hhYUUiORf/YYGAiAKPQDkila9LW9UAleOnB1aD2ITj9mQGXEUkDjQMqMq4P3LUWSyZrdRrHiOfyZlLD+D9MdFWSKhHmK6ns3SVZWX/pma/1m/10k8JjlXhGNRa67CW0oCdUqzlzUNbEJ8vMHaJGrD4s8IxC0Ap3TMqPJBjxUh7w25/bwVw4A7NASpLSMqrfqBYiTrw7qaLgKogKy0adOUwBOj+y6KJ154DM/sKJpk3/49guZ1+/S9S/WscddoubuQ1Rl6xBOlBkXm8AtsqZz0hq1AcsQsDbW7BuDsAMMOxAC1uOWxUQ28ScUbHgLWZy0IOGMukgQRRKHI6+uHPhjlez2+pMuk7LXL7OK9gDS0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(956004)(186003)(16526019)(86362001)(4326008)(8936002)(1076003)(6486002)(2906002)(5660300002)(26005)(66946007)(316002)(2616005)(38100700002)(66476007)(478600001)(83380400001)(6496006)(66556008)(6916009)(36756003)(6666004)(54906003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 92d9fa90-5073-409d-3659-08d90bf041e5
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:37.6646
 (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: TwPfHngVCo3JTo1R24hiY0Io+yoWp8eamHGMG2C2+Bh5nC1hFfBJV4qXgbu9UZj8huKQjY3U/sQY6RDiM99Nig==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

Pull out the code from xc_cpuid_apply_policy that applies a featureset
to a cpu policy and place it on it's own standalone function that's
part of the public interface.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 tools/include/xenctrl.h         |  5 ++
 tools/libs/guest/xg_cpuid_x86.c | 95 ++++++++++++++++++++-------------
 2 files changed, 62 insertions(+), 38 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index ce0785f7654..3fef954d1d1 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2639,6 +2639,11 @@ int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
 int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
                               const struct xc_xend_cpuid *cpuid, bool hvm);
 
+/* Apply a featureset to the policy. */
+int xc_cpu_policy_apply_featureset(xc_interface *xch, xc_cpu_policy_t policy,
+                                   const uint32_t *featureset,
+                                   unsigned int nr_features);
+
 int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps);
 int xc_get_cpu_featureset(xc_interface *xch, uint32_t index,
                           uint32_t *nr_features, uint32_t *featureset);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index d313a093af6..e2237e33709 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -477,46 +477,15 @@ int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
 
     if ( featureset )
     {
-        uint32_t disabled_features[FEATURESET_NR_ENTRIES],
-            feat[FEATURESET_NR_ENTRIES] = {};
-        static const uint32_t deep_features[] = INIT_DEEP_FEATURES;
-        unsigned int i, b;
-
-        /*
-         * The user supplied featureset may be shorter or longer than
-         * FEATURESET_NR_ENTRIES.  Shorter is fine, and we will zero-extend.
-         * Longer is fine, so long as it only padded with zeros.
-         */
-        unsigned int user_len = min(FEATURESET_NR_ENTRIES + 0u, nr_features);
-
-        /* Check for truncated set bits. */
-        rc = -EOPNOTSUPP;
-        for ( i = user_len; i < nr_features; ++i )
-            if ( featureset[i] != 0 )
-                goto out;
-
-        memcpy(feat, featureset, sizeof(*featureset) * user_len);
-
-        /* Disable deep dependencies of disabled features. */
-        for ( i = 0; i < ARRAY_SIZE(disabled_features); ++i )
-            disabled_features[i] = ~feat[i] & deep_features[i];
-
-        for ( b = 0; b < sizeof(disabled_features) * CHAR_BIT; ++b )
+        policy.cpuid = *p;
+        rc = xc_cpu_policy_apply_featureset(xch, &policy, featureset,
+                                            nr_features);
+        if ( rc )
         {
-            const uint32_t *dfs;
-
-            if ( !test_bit(b, disabled_features) ||
-                 !(dfs = x86_cpuid_lookup_deep_deps(b)) )
-                continue;
-
-            for ( i = 0; i < ARRAY_SIZE(disabled_features); ++i )
-            {
-                feat[i] &= ~dfs[i];
-                disabled_features[i] &= ~dfs[i];
-            }
+            ERROR("Failed to apply featureset to policy");
+            goto out;
         }
-
-        cpuid_featureset_to_policy(feat, p);
+        *p = policy.cpuid;
     }
     else
     {
@@ -1108,3 +1077,53 @@ int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
 
     return 0;
 }
+
+int xc_cpu_policy_apply_featureset(xc_interface *xch, xc_cpu_policy_t policy,
+                                   const uint32_t *featureset,
+                                   unsigned int nr_features)
+{
+    uint32_t disabled_features[FEATURESET_NR_ENTRIES],
+        feat[FEATURESET_NR_ENTRIES] = {};
+    static const uint32_t deep_features[] = INIT_DEEP_FEATURES;
+    unsigned int i, b;
+
+    /*
+     * The user supplied featureset may be shorter or longer than
+     * FEATURESET_NR_ENTRIES.  Shorter is fine, and we will zero-extend.
+     * Longer is fine, so long as it only padded with zeros.
+     */
+    unsigned int user_len = min(FEATURESET_NR_ENTRIES + 0u, nr_features);
+
+    /* Check for truncated set bits. */
+    for ( i = user_len; i < nr_features; ++i )
+        if ( featureset[i] != 0 )
+        {
+            errno = EOPNOTSUPP;
+            return -1;
+        }
+
+    memcpy(feat, featureset, sizeof(*featureset) * user_len);
+
+    /* Disable deep dependencies of disabled features. */
+    for ( i = 0; i < ARRAY_SIZE(disabled_features); ++i )
+        disabled_features[i] = ~feat[i] & deep_features[i];
+
+    for ( b = 0; b < sizeof(disabled_features) * CHAR_BIT; ++b )
+    {
+        const uint32_t *dfs;
+
+        if ( !test_bit(b, disabled_features) ||
+             !(dfs = x86_cpuid_lookup_deep_deps(b)) )
+            continue;
+
+        for ( i = 0; i < ARRAY_SIZE(disabled_features); ++i )
+        {
+            feat[i] &= ~dfs[i];
+            disabled_features[i] &= ~dfs[i];
+        }
+    }
+
+    cpuid_featureset_to_policy(feat, &policy->cpuid);
+
+    return 0;
+}
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:55:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:55:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120652.228213 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVTt-0001kG-EI; Fri, 30 Apr 2021 15:55:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120652.228213; Fri, 30 Apr 2021 15: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 1lcVTt-0001k9-9v; Fri, 30 Apr 2021 15:55:05 +0000
Received: by outflank-mailman (input) for mailman id 120652;
 Fri, 30 Apr 2021 15:55:03 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVTr-0001jX-R6
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:55:03 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e17ed7e9-646d-4094-a0fa-63fc2e859e13;
 Fri, 30 Apr 2021 15:55: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: e17ed7e9-646d-4094-a0fa-63fc2e859e13
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798102;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=t20EnpqKBlUzjHM5i+zlh4pmJDciRR7qXb3GX4KHcTE=;
  b=LWytefZxYqDf93BAww++kAAYT5UbM0vrvUcorKEwsPlx+W2HzWQqAELz
   CvqwJHFORo5t/y+Edvkxt0uW36dkRLq+/c6FiF4jeqf6q4htF3ttoMlSz
   cubX/Xuoe8UogUfYgNBc6PM/NgDyeL1ZEp0/1qvBkklMu5zVRmvsaFZEg
   s=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: XmvZSEfulV3vHW9Ck+CzUz6k4wE/Gtdcw79Wf5aNNZ8NuU4pNIG6/88Cje98wbVdh8AMnoHOCN
 dRrSYoG6szqblOVB+seXyFTgCX7qabNBGHZ3z46wVV9EKcwl0d2S9QRFc81FL1Yp9W/9NTY5X0
 vXnVt8TP70tXkM3qSTRNLs3WjkVQ/FeaRt1TN5niJXUtq+fG7pyZef+wJpZjr1OKlgG7i+aMHj
 5eGRNaTJpilptdc32IJUdFUKozb36buq2pgKiuyWmnw4vZ4zQinpSdCeTVzRFZJt9m782/ooiB
 xOw=
X-SBRS: 5.1
X-MesageID: 44331764
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:UlZV3aDt1GAGz5PlHegrtMeALOonbusQ8zAX/mhLY1h8btGYm8
 eynP4SyB/zj3IrVGs9nM2bUZPvfVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VLdMgXE3Kpm2a
 9kGpITNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0McShBQchbnmBEIyycFVB7QxQDOIEwE4
 CS6tECiz2rf3kWacrTPAh7Y8HoodrXmJX6JSMXHhJP0njzsRqEyp7fVyKZ0BAXTi9Vzd4ZkF
 TtvgTl6syYwoiG4zDG0Wu71eUypPLAzZ95CNWImowpLFzX+3yVTaBAf5HHgzwvuuGo7z8R4a
 rxijMtJd565X+UXkzdm2qU5yDa3Dwj62DvxDaj6BOJy6GJJ0NZer98rLlUfRfD500rsMsU6t
 M340uju4dKFhSFpSzh5rHzJmFXv3Cpqnkvm/N7tQ04baIibtZq3Ogi1XIQOpIBECXm0ZsgAe
 ljAerNjcwmAG+yXjT3uHJiz8erWWl2NhCaQlIassjQ6DROmmtlpnFoi/A3rzMlztYQWpNE7+
 PLPuBBk6xPdNYfaeZYCP0aScW6J2TRSXv3QSyvCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtEYpEnieSvGm7dluyFTgUW+9VTPixoV1/J5ioIDxQ7LtLGmqVE0uqc29uP8Sa/erG8
 qbCdZzObvOPGHuEYFG00nVQJ9JM0QTV8UTp5IVQFSLjsXXKpD7l+DSffrJTYCdVAoMayfaOD
 8uTTLzLMJP4gSAQXnjmiXcXHvrZwje8PtLYezn1tlW7LJIGpxHswATh1j8zNqMMyd+vqs/e1
 Y7BLvml6i8tFSn5Gqg1RQvBjNtSmJupJnwWXJDogEHd2nud6wYhtmZcWdOmFyKOwF4VMGTNA
 JEvVx49eaWIvWrtGEfIuPiFljfo2oYpXqMQZtZsLaE/93ZdpQxCYtjfrdwGwXNHxlcgh1rt2
 9HVQ8BSibkZ3HToJTgqKZRKPDUdtF6jgvuC9VTs2jjuUKVotxqemEWRAe0UcmcgR8nQh1dgl
 EZyd5YvJOw3RKUbUcviuUxN1NBLECaGqhPAgi+aIJIobzzYw1rQWCWhTuVtgErdgPRhjcvr1
 2kCRfRVeDAA1JbtHwd6Krs/V9uXki2fk57aBlBwMdAPFWDnkw2/f6AZ6K13WfUV0ALxfsFNi
 rZJREIJBl1+tyx3BmJuTqLGHk83K8yNujFALlLScCL5lqdbKmz0Y0WFf5d+5hocO30uugQSO
 SFZku7Kij7B+5B4X3dml8VfA1P7F8qnvPj1Ee7sCyW3HsjDeHTJ1ojbbcBON2Y53XlQfHN8J
 gRt6NDgcKAdkHKLviBwuXrShQGDDX5i2u/VfspppBZprhajso5I7DrFR/zkEha1xA/JvrunE
 wQQK5H8KnMU7UfC/A6SmZ8xB4Vj9yBI0sgjxzuDsI/dV8riWXHP9nh2cu/lZMfRmmIpA79Ij
 CkglZg1saAeyuIzrgBDa0sZUxQdUgn8XxnldnyOrH4OUGPd+tZ+kC9PWL4WLhBSLKdEbFVih
 ph+dmHk6u2cCX/sTqg8QdTE+Zr82y9R9m1Dx/JMelU88aiMVDJu5CU2qeI/X/KYAr+TV8Zi4
 1DfVERacoGqgBKtvxI7gGCDortokwklFNC5ypAjVCF4Pn/3Fvm
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="44331764"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NVIDwR4oCD7Gwg/fgtdKqdN11Sf4qzymaKYRYAMbKfxzaADeox2SKltoYn26gWr1TxhN/B3mm/kScuB4Djkf0Rlg+VQjhA8d8RbR3/YIC6BKZOFcd2whm4UpmjsQTkVh1Tmcm+fG5y7mhq5XA79t2cFNdrl429No330SzhQdQUGXWC7+TS06J/VMCQwMFxPIwLKyJ4o6gz+8DcDClIrSwWtFLQGugpOQqEUK5qUSeZyAecksQyaxVDCfEyom5CcoqxDNbGLwoXpDK+OHYNHrl2lr4W8qB3nEBTvAPfNbgFkosv4hP27Ff61axELVHB/h1xhiak9z4a6Gs+dAlA2FUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yN5vLdUrRPJsQKL4S9ockz5uFH49rwlndHZPbJDf0P0=;
 b=DCy43dh/j8yUkPwpn4sCkGammSg5LXvUS5y/QHsSeG5Oxn9GzmucQY0uxVjb9+tq/PHnmjd52nbJ7/64L/hPHlO2Mvn8w/Gu3N+FgINb7GVIoat2SWuk4GbvagTVoKt7/606HXcrxwoYw0mWKgTyTVrG98ibi7WqK/PEC+LgzJhHkmp5G5Qr6rxhmEeKZiXD6U+OVH2Q+EKR3lDS24Pibjt3OyzMdVOX1GngTBmRl8M8PfuDkvHHEXzY3b0pqjMVy2jrLLUIU5E5KZHD+XnXv/tkoEwUspBQFe442EkKYp9D7o9Pe2TroVDwGOABeC2ccsDUDBjgKvgnZfaQEtu30w==
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=yN5vLdUrRPJsQKL4S9ockz5uFH49rwlndHZPbJDf0P0=;
 b=If739HcVR2x1/PB0vYwBhFAEY6ypAhGGKzYxJyxOL0sRorijVFNoo0x5nZyIoXa6PIJcMw/h0iCRXtGEh6yqudgQpwi8nCh7H8US+n7cVl4UCoK4WPXyu8O2SyCYfFZGeW8yQAtUbKjCAPuvN8LDQpRBeFsPv1pu9e0eXuYplxI=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v3 12/13] libs/{light,guest}: implement xc_cpuid_apply_policy in libxl
Date: Fri, 30 Apr 2021 17:52:10 +0200
Message-ID: <20210430155211.3709-13-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0114.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:33::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 0d7518d8-e2b7-46ea-e2a5-08d90bf04598
X-MS-TrafficTypeDiagnostic: DM5PR03MB2923:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM5PR03MB2923806B49F873A430E615568F5E9@DM5PR03MB2923.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:164;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: iKDMDn49+8BeMrcMfaxgvCw8GKx/Gh6pKGcrXdmuxJYEw9e38aC9X+WYJXnWc7ACspyUJDuQC6hw+MJ8O8qvbRrMmvAz8sg379QgjQR6EuEsElZonYbga3XELZcWBGA0thIf0d32QaWv6BSnaVWatik4Z7QcbNiFk45fyeh8ChQEwPP195yNB+9Ksk29iRAPidIYIHnOqc+jJ+sdmMKHnvN0xgBLMsndze303kCgGAaPvldUKuVvmjF4bNKGkGSJNZZLU4onn7X88CMNbRcIWaDIY4ZnT/T951y3+l4Y6EUIcBic3IoXL47c2+s0V1r0Dia04S7ZjPDs0dPTDLG0tYPTLjbKBndmZMNxpU+jfItNCipuEW+PD9LP8LphqiPp5cyJLLbv+2edr8ggubptA3OtdQ2zOnF9vAkHZjB1NWuJ3QsYqjogFH+CY1LXq3J0tsFi70UUKBIDplrgEvoE6ft14+oaBPDpJ7s/TDmLqhnuJkyhcVDf6h2rXE9x6Okf8rlxfcWqWI+x6emu2cIqPRHjdw2TRLXv2nT83pRe6KDrG9Po5F2wJcogh7O0uRxxQh2TEkTrx3cmb3z4Q5cGsnsYWu4J68ZMsmKNogQwaA0=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(396003)(346002)(376002)(39860400002)(956004)(186003)(16526019)(86362001)(4326008)(8936002)(1076003)(6486002)(2906002)(5660300002)(26005)(66946007)(316002)(2616005)(38100700002)(66476007)(478600001)(83380400001)(107886003)(6496006)(66556008)(6916009)(36756003)(6666004)(54906003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
X-MS-Exchange-CrossTenant-Network-Message-Id: 0d7518d8-e2b7-46ea-e2a5-08d90bf04598
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:43.8853
 (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: feTmyoWg0YPWjwPWCUveQ+5hlw8vJNx0orBe21RsS9WHnjp6bAFuYetGYgx1PqoKsPlToP/Q6QA1UN+XsDAMhQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2923
X-OriginatorOrg: citrix.com

With the addition of the xc_cpu_policy_* now libxl can have better
control over the cpu policy, this allows removing the
xc_cpuid_apply_policy function and instead coding the required bits by
libxl in libxl__cpuid_legacy directly.

Remove xc_cpuid_apply_policy.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v2:
 - Use 'r' for libxc return values.
 - Fix comment about making a cpu policy compatible.
 - Use LOG*D macros.
---
 tools/include/xenctrl.h         |  18 -----
 tools/libs/guest/xg_cpuid_x86.c | 122 --------------------------------
 tools/libs/light/libxl_cpuid.c  |  94 ++++++++++++++++++++++--
 3 files changed, 87 insertions(+), 147 deletions(-)

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 3fef954d1d1..c6ee1142e8e 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -1890,24 +1890,6 @@ struct xc_xend_cpuid {
     char *policy[4];
 };
 
-/*
- * Make adjustments to the CPUID settings for a domain.
- *
- * This path is used in two cases.  First, for fresh boots of the domain, and
- * secondly for migrate-in/restore of pre-4.14 guests (where CPUID data was
- * missing from the stream).  The @restore parameter distinguishes these
- * cases, and the generated policy must be compatible with a 4.13.
- *
- * Either pass a full new @featureset (and @nr_features), or adjust individual
- * features (@pae, @itsc, @nested_virt).
- *
- * Then (optionally) apply legacy XEND overrides (@xend) to the result.
- */
-int xc_cpuid_apply_policy(xc_interface *xch,
-                          uint32_t domid, bool restore,
-                          const uint32_t *featureset,
-                          unsigned int nr_features, bool pae, bool itsc,
-                          bool nested_virt, const struct xc_xend_cpuid *xend);
 int xc_mca_op(xc_interface *xch, struct xen_mc *mc);
 int xc_mca_op_inject_v2(xc_interface *xch, unsigned int flags,
                         xc_cpumap_t cpumap, unsigned int nr_cpus);
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index e2237e33709..d00be5f757d 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -413,128 +413,6 @@ int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
     return rc;
 }
 
-int xc_cpuid_apply_policy(xc_interface *xch, uint32_t domid, bool restore,
-                          const uint32_t *featureset, unsigned int nr_features,
-                          bool pae, bool itsc, bool nested_virt,
-                          const struct xc_xend_cpuid *cpuid)
-{
-    int rc;
-    xc_dominfo_t di;
-    unsigned int nr_leaves, nr_msrs;
-    xen_cpuid_leaf_t *leaves = NULL;
-    struct cpuid_policy *p = NULL;
-    struct xc_cpu_policy policy = { };
-    uint32_t err_leaf = -1, err_subleaf = -1, err_msr = -1;
-
-    if ( xc_domain_getinfo(xch, domid, 1, &di) != 1 ||
-         di.domid != domid )
-    {
-        ERROR("Failed to obtain d%d info", domid);
-        rc = -ESRCH;
-        goto out;
-    }
-
-    rc = xc_cpu_policy_get_size(xch, &nr_leaves, &nr_msrs);
-    if ( rc )
-    {
-        PERROR("Failed to obtain policy info size");
-        rc = -errno;
-        goto out;
-    }
-
-    rc = -ENOMEM;
-    if ( (leaves = calloc(nr_leaves, sizeof(*leaves))) == NULL ||
-         (p = calloc(1, sizeof(*p))) == NULL )
-        goto out;
-
-    /* Get the domain's default policy. */
-    nr_msrs = 0;
-    rc = get_system_cpu_policy(xch, di.hvm ? XEN_SYSCTL_cpu_policy_hvm_default
-                                           : XEN_SYSCTL_cpu_policy_pv_default,
-                               &nr_leaves, leaves, &nr_msrs, NULL);
-    if ( rc )
-    {
-        PERROR("Failed to obtain %s default policy", di.hvm ? "hvm" : "pv");
-        rc = -errno;
-        goto out;
-    }
-
-    rc = x86_cpuid_copy_from_buffer(p, leaves, nr_leaves,
-                                    &err_leaf, &err_subleaf);
-    if ( rc )
-    {
-        ERROR("Failed to deserialise CPUID (err leaf %#x, subleaf %#x) (%d = %s)",
-              err_leaf, err_subleaf, -rc, strerror(-rc));
-        goto out;
-    }
-
-    if ( restore )
-    {
-        policy.cpuid = *p;
-        xc_cpu_policy_make_compatible(xch, &policy, di.hvm);
-        *p = policy.cpuid;
-    }
-
-    if ( featureset )
-    {
-        policy.cpuid = *p;
-        rc = xc_cpu_policy_apply_featureset(xch, &policy, featureset,
-                                            nr_features);
-        if ( rc )
-        {
-            ERROR("Failed to apply featureset to policy");
-            goto out;
-        }
-        *p = policy.cpuid;
-    }
-    else
-    {
-        p->extd.itsc = itsc;
-
-        if ( di.hvm )
-        {
-            p->basic.pae = pae;
-            p->basic.vmx = nested_virt;
-            p->extd.svm = nested_virt;
-        }
-    }
-
-    policy.cpuid = *p;
-    rc = xc_cpu_policy_legacy_topology(xch, &policy, di.hvm);
-    if ( rc )
-        goto out;
-    *p = policy.cpuid;
-
-    rc = xc_cpu_policy_apply_cpuid(xch, &policy, cpuid, di.hvm);
-    if ( rc )
-        goto out;
-
-    rc = x86_cpuid_copy_to_buffer(p, leaves, &nr_leaves);
-    if ( rc )
-    {
-        ERROR("Failed to serialise CPUID (%d = %s)", -rc, strerror(-rc));
-        goto out;
-    }
-
-    rc = xc_set_domain_cpu_policy(xch, domid, nr_leaves, leaves, 0, NULL,
-                                  &err_leaf, &err_subleaf, &err_msr);
-    if ( rc )
-    {
-        PERROR("Failed to set d%d's policy (err leaf %#x, subleaf %#x, msr %#x)",
-               domid, err_leaf, err_subleaf, err_msr);
-        rc = -errno;
-        goto out;
-    }
-
-    rc = 0;
-
-out:
-    free(p);
-    free(leaves);
-
-    return rc;
-}
-
 xc_cpu_policy_t xc_cpu_policy_init(void)
 {
     return calloc(1, sizeof(struct xc_cpu_policy));
diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index eb6feaa96d1..2489ceb49b8 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -430,9 +430,11 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
                         libxl_domain_build_info *info)
 {
     GC_INIT(ctx);
+    xc_cpu_policy_t policy = NULL;
+    bool hvm = info->type == LIBXL_DOMAIN_TYPE_HVM;
     bool pae = true;
     bool itsc;
-    int r;
+    int r, rc = 0;
 
     /*
      * Gross hack.  Using libxl_defbool_val() here causes libvirt to crash in
@@ -443,6 +445,41 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
      */
     bool nested_virt = info->nested_hvm.val > 0;
 
+    policy = xc_cpu_policy_init();
+    if (!policy) {
+        LOGED(ERROR, domid, "Failed to init CPU policy");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    r = xc_cpu_policy_get_domain(ctx->xch, domid, policy);
+    if (r) {
+        LOGED(ERROR, domid, "Failed to fetch domain CPU policy");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    if (restore) {
+        /*
+         * Make sure the policy is compatible with pre Xen 4.13. Note that
+         * newer Xen versions will pass policy data on the restore stream, so
+         * any adjustments done here will be superseded.
+         */
+        r = xc_cpu_policy_make_compatible(ctx->xch, policy, hvm);
+        if (r) {
+            LOGED(ERROR, domid, "Failed to setup compatible CPU policy");
+            rc = ERROR_FAIL;
+            goto out;
+        }
+    }
+
+    r = xc_cpu_policy_legacy_topology(ctx->xch, policy, hvm);
+    if (r) {
+        LOGED(ERROR, domid, "Failed to setup CPU policy topology");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
     /*
      * For PV guests, PAE is Xen-controlled (it is the 'p' that differentiates
      * the xen-3.0-x86_32 and xen-3.0-x86_32p ABIs).  It is mandatory as Xen
@@ -453,8 +490,15 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
      *
      * HVM guests get a top-level choice of whether PAE is available.
      */
-    if (info->type == LIBXL_DOMAIN_TYPE_HVM)
+    if (hvm)
         pae = libxl_defbool_val(info->u.hvm.pae);
+    rc = libxl_cpuid_parse_config(&info->cpuid, GCSPRINTF("pae=%d", pae));
+    if (rc) {
+        LOGD(ERROR, domid, "Failed to set PAE CPUID flag");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
 
     /*
      * Advertising Invariant TSC to a guest means that the TSC frequency won't
@@ -470,14 +514,50 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
      */
     itsc = (libxl_defbool_val(info->disable_migrate) ||
             info->tsc_mode == LIBXL_TSC_MODE_ALWAYS_EMULATE);
+    rc = libxl_cpuid_parse_config(&info->cpuid, GCSPRINTF("invtsc=%d", itsc));
+    if (rc) {
+        LOGD(ERROR, domid, "Failed to set Invariant TSC CPUID flag");
+        rc = ERROR_FAIL;
+        goto out;
+    }
 
-    r = xc_cpuid_apply_policy(ctx->xch, domid, restore, NULL, 0,
-                              pae, itsc, nested_virt, info->cpuid);
-    if (r)
-        LOGEVD(ERROR, -r, domid, "Failed to apply CPUID policy");
+    /* Set Nested virt CPUID bits for HVM. */
+    if (hvm) {
+        rc = libxl_cpuid_parse_config(&info->cpuid, GCSPRINTF("vmx=%d",
+                                                              nested_virt));
+        if (rc) {
+            LOGD(ERROR, domid, "Failed to set VMX CPUID flag");
+            rc = ERROR_FAIL;
+            goto out;
+        }
+
+        rc = libxl_cpuid_parse_config(&info->cpuid, GCSPRINTF("svm=%d",
+                                                              nested_virt));
+        if (rc) {
+            LOGD(ERROR, domid, "Failed to set SVM CPUID flag");
+            rc = ERROR_FAIL;
+            goto out;
+        }
+    }
+
+    /* Apply the bits from info->cpuid if any. */
+    r = xc_cpu_policy_apply_cpuid(ctx->xch, policy, info->cpuid, hvm);
+    if (r) {
+        LOGEVD(ERROR, domid, -r, "Failed to apply CPUID changes");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    r = xc_cpu_policy_set_domain(ctx->xch, domid, policy);
+    if (r) {
+        LOGED(ERROR, domid, "Failed to set domain CPUID policy");
+        rc = ERROR_FAIL;
+    }
 
+ out:
+    xc_cpu_policy_destroy(policy);
     GC_FREE;
-    return r ? ERROR_FAIL : 0;
+    return rc;
 }
 
 static const char *input_names[2] = { "leaf", "subleaf" };
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:55:09 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:55:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120657.228225 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVTx-0001oT-Rt; Fri, 30 Apr 2021 15:55:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120657.228225; Fri, 30 Apr 2021 15: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 1lcVTx-0001oK-O9; Fri, 30 Apr 2021 15:55:09 +0000
Received: by outflank-mailman (input) for mailman id 120657;
 Fri, 30 Apr 2021 15:55:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jCGG=J3=citrix.com=roger.pau@srs-us1.protection.inumbo.net>)
 id 1lcVTx-0001HD-7Y
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:55:09 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id aeafd958-da13-4b82-84db-b27d68e2283d;
 Fri, 30 Apr 2021 15:54: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: aeafd958-da13-4b82-84db-b27d68e2283d
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619798092;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=a+brw/ab4WDrji72+dgrWoVFuLwkt3UX6eVY6D2foKw=;
  b=VTmn3r2W+kgglWPV2RpA9hvgqkpfofzcjYnPWw6pLegt1pW+JmkP8Q1k
   e0glNZk4jMIr34rO3VBM2VmrogEuQggQYKz7swuJ8Czlxy7A0MUiL0FoT
   dJSuvITT0c+lbVwTZzFpBveCBVi2oSUGRqOKDxAXkA8zT5foGlMR7BHjV
   I=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: WTLBaoxEGsEnXTK0lfhgGcsqomh5xsR3+B745OH30UwKJiOt0gpggCEM3Fc18LuMQjuacZ03sZ
 jLBYYbeoB42fciKgXG3am0vbxDbG0mrvPcc+5wczB43QgwQrfwDcKwP8xySRsY3X793RCeCnv2
 ZhTK3/u+IhHT4bmnurcBdDj9Om9tPTxzfdY9U4lpAvETOG6KgP9SEBiUtYZN/QbjcXkLWmQKuB
 S04j19dDHlbT1u+ZjiJu2gvbAMhPpHJ6TCNFWl2zA/YK4JwJMc38b4JfiEcx0qWtYxKkKiypWq
 8Cs=
X-SBRS: 5.1
X-MesageID: 42625739
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:eJ1P663JA78c9QM3qH3b5gqjBSB3eYIsi2QD101hICF9Wvez0+
 izgfUW0gL1gj4NWHcm3euNIrWEXGm0z/NIyKErF/OHUBP9sGWlaLtj44zr3iH6F0TFnNJ1/Z
 xLN5JzANiYNzNHpO7x6gWgDpIEyN6I7KiniY7lvg5QZCttbLxt6Bo8Lw6dHFF/SgUuP+tAKL
 O34M1bqz28PUkGd8jTPAhPY8Hvr8DG/aiWBCIuKAUg7GC14w+AyLm/KBSA2wdbbjUn+8ZFzU
 HgsyjUopquqOu6zBi07R6Y071zlMH6wtVOQOyg4/JlTgnEsQqjaIR/V7DqhllczI6SwW0nn9
 XWrxArM94b0QK3QkiOvRDv1wP8uQxP11beyESViXamgcv1SCNSMbsiuatlcwDU40dlgddk0K
 gj5RP7i7NrC3r7/RjV1pztbVVHh0C0qX0tnao4lHpES7YTb7dXsMg24F5VOI1oJlO31KkXVM
 1VSO3M7vdfdl2XK1rDuHN0/dCqVnMvWj+bX0k5vNCP2TQ+pgE382IogOgk2lsQ/pM0TJdJo8
 7eNL5zqb1IRsgKKYVwGfkGWsnyLmDWWxrDPCazLD3cZe86EkOIj6SyzKQ+5emsdpBN5oA1go
 79XFRRsnN3dFnpDcGIwZ1X4hHASGiwRl3Wu4Fjzqk8noe5aKvgMCWFRlxrudCnue8jDsrSXO
 v2OJ8+OY6hEULeXaJymyHuUZhbLncTFOcPvMwgZl6IqsXXbonjtunRdufPNKPgeAxUGF/XMz
 8mZnzeNc9A5kekVjvTmx7KQU7gfUT54NZ3C6jV/+8azYAXLY1Sug0JiVC0j/v7aAFqg+gTRg
 9TMbnnmqS0qS2d5mDT9VhkPRJbEwJI+rn6SmhLogULKkvwdr4Gt7ykCCVv9UrCAiU6Y9LdEQ
 ZZqVgyxLm+KIaIwzs+T/i9NHiBsncVrHWWbpsVl6GZ//35cpcgAptOYt00KSz7UzhO3Sdjsi
 NqdRINTE63LEKUtYyVyLgvQNz5W/Y5qgGxOsJQoW/Yriyn1LsSb0peeSWvX86RiRspXBxOiD
 RKguIiqbKdhDeiLnY+iuwkMFtKLH+aGq5CER7tXvQoppn7PA53VmuEnjqcllU6fXfr7Vwbgi
 j7ITSTYuyjOCsVhllIlqLr+khzbGOTYgZ5bW17q5R0EQ39ywFO+P7OYqq4yG2KbFQehukbLT
 HeeDMXZgdj3cq+2hLQmDGMExwdt+MTF/2YCLQoaLfI3HyxbIWOiKEdBvdRuI9/K8qGiJ55bc
 uPPwuOaD/oAeIg3AKY4n4jJSlvsXEh1fflwgfs4mS01GM2aMCiaGhOVvUeOZWR/mLkT/GH3N
 FigdU5sfC5P2/xZtSFoJunGwJrO1fWuyq7XusooZdbseYur7N1BYDcSiaN23dd3hkyRf2E5H
 82UeB++vTGNYBudcBJJH4c8VotidiVLEwk9gbxGfQzeFkxj3nde9OFioC414YHEwmEvk/3P1
 La7ihWu/HCVCGH3aQBC60xLX9NAXJMnUhK7aeHbcnIFA6ud+tf51K0PX+2ba9FRMG+aMothw
 c/58vNgvSeeCX50h3BpDd3IqpB9GC8XMO5aTj8aNJg4pi9IlSDgqyj/c61gnP2UFKAGjglrJ
 wAc1AMZcJejTRnhJEr00GJO97Knn4=
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42625739"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dZx7wlsr9SzmGn7ouRzpMDuSdlCSjkktwgSxn8JE/QWnOA4tKEoaurk/hEOfdZf9Fu2gA9CcTwXxzYkXwb46jpeUCtMrSnETCLaf2v/e5A2665WrCnw3A5hTRUT9+8S6YzeZciC8OFfPlnVOXokE7gqujqM5QrCjZEvTm9NEwOcCY9o5Ehi2wPf+7f5r40NvfrLRpVnd0FtDKtFGmlk0p+EtD1COVvbFDOPnJB8iazGEPp7wwvejxVr/xD06Ehh4TMcg2hGU6/7SJYp7beEZLhE6lyn0Y9NIIF+aou39vByIznQ+KGafKZU43+yaVlProb7gWbqIeHOkJDRDiXj5KQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=m8dPs554Z+qKHV0aj5xYX+zXPIW+eM8kD/rIFlYebrw=;
 b=Cz3e2ABM4AMpwkXfO0sMvckAxGxnKLkJOP6u3vfFgUaKjyjhoghSxPdWKP34YWOFgbL+7MaxNM1519L8J+mMoqNaQv6RDGAEdzrnvNzXWXuqvSxet2VmZq1S8/HkQFiGl/91/8418FHBi18YF/r1wHiwhsrrn6T9RBV4sT+6Tx+0C8eHz19mINhF8ER8pW7q2ShH83AGuJEy9Dq9nYsOa5LZ4x1dzulefdugXXMxsDfU3d3znqEkl8BrM/2H/G1DJYcUIIvyVPKmR2z2JUVsdBMLYt7Kts0phFvyYRiBwhMLMu2tRjIDVocwMRGlCay8fijr9To4C905P/vNr54chw==
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=m8dPs554Z+qKHV0aj5xYX+zXPIW+eM8kD/rIFlYebrw=;
 b=hhqs7oIEqqkh9rbSLkkJQ7dCTh1kOLj2Nc4uZowHCy3vpKh21WIlXopPTdQZDqV0p9LlrcN+ucfZ6eR5YyCuap4dh9CeDW6r2tH1lLrphqbtsyConMr8BuZnTbtfAwL8DG3DzimyEknirV8hfdv/9jIr9Z0qCVaMg5UYDf6KHGQ=
From: Roger Pau Monne <roger.pau@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Roger Pau Monne
	<roger.pau@citrix.com>, Ian Jackson <iwj@xenproject.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v3 13/13] libs/guest: (re)move xc_cpu_policy_apply_cpuid
Date: Fri, 30 Apr 2021 17:52:11 +0200
Message-ID: <20210430155211.3709-14-roger.pau@citrix.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <20210430155211.3709-1-roger.pau@citrix.com>
References: <20210430155211.3709-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: MR2P264CA0138.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:30::30) To DS7PR03MB5608.namprd03.prod.outlook.com
 (2603:10b6:5:2c9::18)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: d1ef60f8-222a-43c5-cf22-08d90bf048dd
X-MS-TrafficTypeDiagnostic: DM6PR03MB4602:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <DM6PR03MB4602AA485B5055AEBEA317F78F5E9@DM6PR03MB4602.namprd03.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:272;
X-MS-Exchange-SenderADCheck: 1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: Fpj7HFBK61WU/LIKGHehygfyoLz31GQWq1NJFQIwiztR8lpL2hFyX5ihQajvLatYrXk9WqGB6YUEYWU/CJtAHWIoKCzyImJUoz/c+blEJi3ak0JybLwI++oo+7sRSQTQ6Drs2YL2MS2SOzCKiNEDZ5q4g+6mrMiWapfiDTPZSRVAwK+Vc8x9g+r6KHVBGVzqa5IqaNqP5HHROqvfCRltvMiNCzGkvgsHQgPlHGUd6bn7SVAN5cWn7qHnsZ0O2k6C9vpUCH2+bRr4/dy4KTNk5V35wkNvgyFxOcwlrTo/JX3ZEi+LUCCiUNS6zgVyT6+GNoIMg2Zv1K7Q9ObxW2deyyJBsljCcJOSdEVK2C4p6CqZqEUcLzSVGdmVhQuZ0yjP6ulJd0R3WqnHhqcbOCw3raPQ+fMAaSzSAzhvAXleWC2FZh3BPvB/6f3Tu0JZnGsrt9EncC87tvK34XLsPnbx6gL4M/36eSSIvQuthugQr3u9x7ir/f7zIxFJmadYt0E5WYlWq12Gs6FcUajht0tunIYauk9hU22oeaKQKc4GWHnr13yAHYBtlSm/Y/nsPnT7J2D9RgXR5jwDOv1fTFOh3EnoztJBer5y/Q4zq8vEPJ4=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(39860400002)(376002)(396003)(366004)(346002)(83380400001)(107886003)(54906003)(66556008)(36756003)(1076003)(38100700002)(6916009)(4326008)(66476007)(8676002)(2616005)(26005)(2906002)(6496006)(6486002)(8936002)(6666004)(186003)(86362001)(16526019)(316002)(30864003)(66946007)(478600001)(956004)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData: 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
 =?utf-8?Q?qm8JVGWqULJqSxi/VT0LQqkitm0kXDvGQBbYQhC?=
X-MS-Exchange-CrossTenant-Network-Message-Id: d1ef60f8-222a-43c5-cf22-08d90bf048dd
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2021 15:54:49.4129
 (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: qPACY8ZNie7KxIh1iQZqkkvk8aFlTuFgrz+gudkqAY7yueQUbvEJACEek5XUBkyu6g2NL/dDNV4pQz+7YRRMyA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4602
X-OriginatorOrg: citrix.com

Move the logic from xc_cpu_policy_apply_cpuid into libxl, now that the
xc_cpu_policy_* helpers allow modifying a cpu policy. By moving such
parsing into libxl directly we can get rid of xc_xend_cpuid, as libxl
will now implement it's own private type for storing CPUID
information, which currently matches xc_xend_cpuid.

Note the function logic is moved as-is, but requires adapting to the
libxl coding style.

No functional change intended.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v2:
 - Use LOG*D.
 - Pass a gc to apply_policy.
 - Use 'r' for libxc return values.
---
 tools/include/libxl.h             |   6 +-
 tools/include/xenctrl.h           |  30 -------
 tools/libs/guest/xg_cpuid_x86.c   | 125 --------------------------
 tools/libs/light/libxl_cpuid.c    | 142 ++++++++++++++++++++++++++++--
 tools/libs/light/libxl_internal.h |  26 ++++++
 5 files changed, 165 insertions(+), 164 deletions(-)

diff --git a/tools/include/libxl.h b/tools/include/libxl.h
index ae7fe27c1f2..150b7ba85ac 100644
--- a/tools/include/libxl.h
+++ b/tools/include/libxl.h
@@ -1375,10 +1375,10 @@ void libxl_bitmap_init(libxl_bitmap *map);
 void libxl_bitmap_dispose(libxl_bitmap *map);
 
 /*
- * libxl_cpuid_policy is opaque in the libxl ABI.  Users of both libxl and
- * libxc may not make assumptions about xc_xend_cpuid.
+ * libxl_cpuid_policy is opaque in the libxl ABI. Users of libxl may not make
+ * assumptions about libxl__cpuid_policy.
  */
-typedef struct xc_xend_cpuid libxl_cpuid_policy;
+typedef struct libxl__cpuid_policy libxl_cpuid_policy;
 typedef libxl_cpuid_policy * libxl_cpuid_policy_list;
 void libxl_cpuid_dispose(libxl_cpuid_policy_list *cpuid_list);
 int libxl_cpuid_policy_list_length(const libxl_cpuid_policy_list *l);
diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index c6ee1142e8e..044d05321a3 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -1864,32 +1864,6 @@ int xc_domain_debug_control(xc_interface *xch,
 
 #if defined(__i386__) || defined(__x86_64__)
 
-/*
- * CPUID policy data, expressed in the legacy XEND format.
- *
- * Policy is an array of strings, 32 chars long:
- *   policy[0] = eax
- *   policy[1] = ebx
- *   policy[2] = ecx
- *   policy[3] = edx
- *
- * The format of the string is the following:
- *   '1' -> force to 1
- *   '0' -> force to 0
- *   'x' -> we don't care (use default)
- *   'k' -> pass through host value
- *   's' -> legacy alias for 'k'
- */
-struct xc_xend_cpuid {
-    union {
-        struct {
-            uint32_t leaf, subleaf;
-        };
-        uint32_t input[2];
-    };
-    char *policy[4];
-};
-
 int xc_mca_op(xc_interface *xch, struct xen_mc *mc);
 int xc_mca_op_inject_v2(xc_interface *xch, unsigned int flags,
                         xc_cpumap_t cpumap, unsigned int nr_cpus);
@@ -2617,10 +2591,6 @@ int xc_cpu_policy_make_compatible(xc_interface *xch, xc_cpu_policy_t policy,
 int xc_cpu_policy_legacy_topology(xc_interface *xch, xc_cpu_policy_t policy,
                                   bool hvm);
 
-/* Apply an xc_xend_cpuid object to the policy. */
-int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
-                              const struct xc_xend_cpuid *cpuid, bool hvm);
-
 /* Apply a featureset to the policy. */
 int xc_cpu_policy_apply_featureset(xc_interface *xch, xc_cpu_policy_t policy,
                                    const uint32_t *featureset,
diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index d00be5f757d..139aa91dd11 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -288,131 +288,6 @@ static xen_cpuid_leaf_t *find_leaf(
     return bsearch(&key, leaves, nr_leaves, sizeof(*leaves), compare_leaves);
 }
 
-int xc_cpu_policy_apply_cpuid(xc_interface *xch, xc_cpu_policy_t policy,
-                              const struct xc_xend_cpuid *cpuid, bool hvm)
-{
-    int rc;
-    xc_cpu_policy_t host = NULL, def = NULL;
-
-    host = xc_cpu_policy_init();
-    def = xc_cpu_policy_init();
-    if ( !host || !def )
-    {
-        PERROR("Failed to init policies");
-        rc = -ENOMEM;
-        goto out;
-    }
-
-    /* Get the domain type's default policy. */
-    rc = xc_cpu_policy_get_system(xch, hvm ? XEN_SYSCTL_cpu_policy_hvm_default
-                                           : XEN_SYSCTL_cpu_policy_pv_default,
-                                  def);
-    if ( rc )
-    {
-        PERROR("Failed to obtain %s def policy", hvm ? "hvm" : "pv");
-        goto out;
-    }
-
-    /* Get the host policy. */
-    rc = xc_cpu_policy_get_system(xch, XEN_SYSCTL_cpu_policy_host, host);
-    if ( rc )
-    {
-        PERROR("Failed to obtain host policy");
-        goto out;
-    }
-
-    rc = -EINVAL;
-    for ( ; cpuid->leaf != XEN_CPUID_INPUT_UNUSED; ++cpuid )
-    {
-        xen_cpuid_leaf_t cur_leaf;
-        xen_cpuid_leaf_t def_leaf;
-        xen_cpuid_leaf_t host_leaf;
-
-        rc = xc_cpu_policy_get_cpuid(xch, policy, cpuid->leaf, cpuid->subleaf,
-                                     &cur_leaf);
-        if ( rc )
-        {
-            ERROR("Failed to get current policy leaf %#x subleaf %#x",
-                  cpuid->leaf, cpuid->subleaf);
-            goto out;
-        }
-        rc = xc_cpu_policy_get_cpuid(xch, def, cpuid->leaf, cpuid->subleaf,
-                                     &def_leaf);
-        if ( rc )
-        {
-            ERROR("Failed to get def policy leaf %#x subleaf %#x",
-                  cpuid->leaf, cpuid->subleaf);
-            goto out;
-        }
-        rc = xc_cpu_policy_get_cpuid(xch, host, cpuid->leaf, cpuid->subleaf,
-                                     &host_leaf);
-        if ( rc )
-        {
-            ERROR("Failed to get host policy leaf %#x subleaf %#x",
-                  cpuid->leaf, cpuid->subleaf);
-            goto out;
-        }
-
-        for ( unsigned int i = 0; i < ARRAY_SIZE(cpuid->policy); i++ )
-        {
-            uint32_t *cur_reg = &cur_leaf.a + i;
-            const uint32_t *def_reg = &def_leaf.a + i;
-            const uint32_t *host_reg = &host_leaf.a + i;
-
-            if ( cpuid->policy[i] == NULL )
-                continue;
-
-            for ( unsigned int j = 0; j < 32; j++ )
-            {
-                bool val;
-
-                switch ( cpuid->policy[i][j] )
-                {
-                case '1':
-                    val = true;
-                    break;
-
-                case '0':
-                    val = false;
-                    break;
-
-                case 'x':
-                    val = test_bit(31 - j, def_reg);
-                    break;
-
-                case 'k':
-                case 's':
-                    val = test_bit(31 - j, host_reg);
-                    break;
-
-                default:
-                    ERROR("Bad character '%c' in policy[%d] string '%s'",
-                          cpuid->policy[i][j], i, cpuid->policy[i]);
-                    goto out;
-                }
-
-                clear_bit(31 - j, cur_reg);
-                if ( val )
-                    set_bit(31 - j, cur_reg);
-            }
-        }
-
-        rc = xc_cpu_policy_update_cpuid(xch, policy, &cur_leaf, 1);
-        if ( rc )
-        {
-            PERROR("Failed to set policy leaf %#x subleaf %#x",
-                   cpuid->leaf, cpuid->subleaf);
-            goto out;
-        }
-    }
-
- out:
-    xc_cpu_policy_destroy(def);
-    xc_cpu_policy_destroy(host);
-
-    return rc;
-}
-
 xc_cpu_policy_t xc_cpu_policy_init(void)
 {
     return calloc(1, sizeof(struct xc_cpu_policy));
diff --git a/tools/libs/light/libxl_cpuid.c b/tools/libs/light/libxl_cpuid.c
index 2489ceb49b8..318f3bd8599 100644
--- a/tools/libs/light/libxl_cpuid.c
+++ b/tools/libs/light/libxl_cpuid.c
@@ -298,7 +298,7 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list *cpuid, const char* str)
     char *sep, *val, *endptr;
     int i;
     const struct cpuid_flags *flag;
-    struct xc_xend_cpuid *entry;
+    struct libxl__cpuid_policy *entry;
     unsigned long num;
     char flags[33], *resstr;
 
@@ -376,7 +376,7 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
     char *endptr;
     unsigned long value;
     uint32_t leaf, subleaf = XEN_CPUID_INPUT_UNUSED;
-    struct xc_xend_cpuid *entry;
+    struct libxl__cpuid_policy *entry;
 
     /* parse the leaf number */
     value = strtoul(str, &endptr, 0);
@@ -426,6 +426,137 @@ int libxl_cpuid_parse_config_xend(libxl_cpuid_policy_list *cpuid,
     return 0;
 }
 
+static int apply_cpuid(libxl__gc *gc, xc_cpu_policy_t policy,
+                       libxl_cpuid_policy_list cpuid, bool hvm, domid_t domid)
+{
+    int r, rc = 0;
+    xc_cpu_policy_t host = NULL, def = NULL;
+
+    host = xc_cpu_policy_init();
+    def = xc_cpu_policy_init();
+    if (!host || !def) {
+        LOGD(ERROR, domid, "Failed to init policies");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    /* Get the domain type's default policy. */
+    r = xc_cpu_policy_get_system(CTX->xch,
+                                 hvm ? XEN_SYSCTL_cpu_policy_hvm_default
+                                     : XEN_SYSCTL_cpu_policy_pv_default,
+                                 def);
+    if (r) {
+        LOGED(ERROR, domid, "Failed to obtain %s def policy",
+              hvm ? "hvm" : "pv");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    /* Get the host policy. */
+    r = xc_cpu_policy_get_system(CTX->xch, XEN_SYSCTL_cpu_policy_host, host);
+    if (r) {
+        LOGED(ERROR, domid, "Failed to obtain host policy");
+        rc = ERROR_FAIL;
+        goto out;
+    }
+
+    for (; cpuid->leaf != XEN_CPUID_INPUT_UNUSED; ++cpuid) {
+        xen_cpuid_leaf_t cur_leaf;
+        xen_cpuid_leaf_t def_leaf;
+        xen_cpuid_leaf_t host_leaf;
+
+        r = xc_cpu_policy_get_cpuid(CTX->xch, policy, cpuid->leaf,
+                                    cpuid->subleaf, &cur_leaf);
+        if (r) {
+            LOGED(ERROR, domid,
+                  "Failed to get current policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            r = ERROR_FAIL;
+            goto out;
+        }
+        r = xc_cpu_policy_get_cpuid(CTX->xch, def, cpuid->leaf, cpuid->subleaf,
+                                    &def_leaf);
+        if (r) {
+            LOGED(ERROR, domid,
+                  "Failed to get def policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+        r = xc_cpu_policy_get_cpuid(CTX->xch, host, cpuid->leaf,
+                                    cpuid->subleaf, &host_leaf);
+        if (r) {
+            LOGED(ERROR, domid,
+                  "Failed to get host policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+
+        for (unsigned int i = 0; i < ARRAY_SIZE(cpuid->policy); i++) {
+            uint32_t *cur_reg = &cur_leaf.a + i;
+            const uint32_t *def_reg = &def_leaf.a + i;
+            const uint32_t *host_reg = &host_leaf.a + i;
+
+            if (cpuid->policy[i] == NULL)
+                continue;
+
+#define test_bit(i, r) !!(*(r) & (1u << (i)))
+#define set_bit(i, r) (*(r) |= (1u << (i)))
+#define clear_bit(i, r)  (*(r) &= ~(1u << (i)))
+            for (unsigned int j = 0; j < 32; j++) {
+                bool val;
+
+                switch (cpuid->policy[i][j]) {
+                case '1':
+                    val = true;
+                    break;
+
+                case '0':
+                    val = false;
+                    break;
+
+                case 'x':
+                    val = test_bit(31 - j, def_reg);
+                    break;
+
+                case 'k':
+                case 's':
+                    val = test_bit(31 - j, host_reg);
+                    break;
+
+                default:
+                    LOGD(ERROR, domid,
+                         "Bad character '%c' in policy[%d] string '%s'",
+                         cpuid->policy[i][j], i, cpuid->policy[i]);
+                    rc = ERROR_FAIL;
+                    goto out;
+                }
+
+                clear_bit(31 - j, cur_reg);
+                if (val)
+                    set_bit(31 - j, cur_reg);
+            }
+#undef clear_bit
+#undef set_bit
+#undef test_bit
+        }
+
+        r = xc_cpu_policy_update_cpuid(CTX->xch, policy, &cur_leaf, 1);
+        if (r) {
+            LOGED(ERROR, domid, "Failed to set policy leaf %#x subleaf %#x",
+                  cpuid->leaf, cpuid->subleaf);
+            rc = ERROR_FAIL;
+            goto out;
+        }
+    }
+
+ out:
+    xc_cpu_policy_destroy(def);
+    xc_cpu_policy_destroy(host);
+    return rc;
+}
+
 int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
                         libxl_domain_build_info *info)
 {
@@ -541,10 +672,9 @@ int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool restore,
     }
 
     /* Apply the bits from info->cpuid if any. */
-    r = xc_cpu_policy_apply_cpuid(ctx->xch, policy, info->cpuid, hvm);
-    if (r) {
-        LOGEVD(ERROR, domid, -r, "Failed to apply CPUID changes");
-        rc = ERROR_FAIL;
+    rc = apply_cpuid(gc, policy, info->cpuid, hvm, domid);
+    if (rc) {
+        LOGD(ERROR, domid, "Failed to apply CPUID changes");
         goto out;
     }
 
diff --git a/tools/libs/light/libxl_internal.h b/tools/libs/light/libxl_internal.h
index 5709bcb93fa..d130c073ac4 100644
--- a/tools/libs/light/libxl_internal.h
+++ b/tools/libs/light/libxl_internal.h
@@ -2050,6 +2050,32 @@ typedef yajl_gen_status (*libxl__gen_json_callback)(yajl_gen hand, void *);
 _hidden char *libxl__object_to_json(libxl_ctx *ctx, const char *type,
                                     libxl__gen_json_callback gen, void *p);
 
+/*
+ * CPUID policy data, expressed in the internal libxl format.
+ *
+ * Policy is an array of strings, 32 chars long:
+ *   policy[0] = eax
+ *   policy[1] = ebx
+ *   policy[2] = ecx
+ *   policy[3] = edx
+ *
+ * The format of the string is the following:
+ *   '1' -> force to 1
+ *   '0' -> force to 0
+ *   'x' -> we don't care (use default)
+ *   'k' -> pass through host value
+ *   's' -> legacy alias for 'k'
+ */
+struct libxl__cpuid_policy {
+    union {
+        struct {
+            uint32_t leaf, subleaf;
+        };
+        uint32_t input[2];
+    };
+    char *policy[4];
+};
+
 _hidden int libxl__cpuid_legacy(libxl_ctx *ctx, uint32_t domid, bool retore,
                                 libxl_domain_build_info *info);
 
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 15:56:37 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 15:56:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120668.228237 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVVM-0002At-8e; Fri, 30 Apr 2021 15:56:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120668.228237; Fri, 30 Apr 2021 15:56: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 1lcVVM-0002Am-5C; Fri, 30 Apr 2021 15:56:36 +0000
Received: by outflank-mailman (input) for mailman id 120668;
 Fri, 30 Apr 2021 15:56:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T1Xz=J3=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1lcVVL-0002Ag-AT
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 15:56:35 +0000
Received: from mx2.suse.de (unknown [195.135.220.15])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1e8e0e01-b282-4c51-92d0-2ac14970d358;
 Fri, 30 Apr 2021 15:56:34 +0000 (UTC)
Received: from relay2.suse.de (unknown [195.135.221.27])
 by mx2.suse.de (Postfix) with ESMTP id D13D8B007;
 Fri, 30 Apr 2021 15:56: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: 1e8e0e01-b282-4c51-92d0-2ac14970d358
X-Virus-Scanned: by amavisd-new at test-mx.suse.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1619798193; 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:
	 in-reply-to:in-reply-to:references:references;
	bh=mkBape74zVUpcS65tnzYtaaB194g47tkPchyQMWnsjw=;
	b=b+vnFQpMsjmmKV5cbSPQO6S2NEBjisYLyHSRgmH0mT3CP/ma553c6OmzIH7WJJxKS+RFZS
	Bm9D2DXwVpyXTJ9enZeThlVJCe5drShrDb/MtPgCVeVMMTK2niRrwm/zcRVUokIq9d1FyC
	yYsCnSj1TU6Y/OUjdetd2uUhRnjM3gE=
Subject: Re: [PATCH] x86: Always have CR4.PKE set in HVM context
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20210429221223.28348-1-andrew.cooper3@citrix.com>
 <4781e8f1-d70b-2736-364c-eeed61869031@suse.com>
 <5b1938c7-408a-5912-7e66-b5e207e268bd@citrix.com>
 <1150e1b5-c6a1-7685-8775-0e4039dbc903@suse.com>
 <d7628aff-78e5-c557-0498-b7a60a756b89@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Message-ID: <7592b233-2425-f4e9-5677-2dc03d39b65d@suse.com>
Date: Fri, 30 Apr 2021 17:56:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <d7628aff-78e5-c557-0498-b7a60a756b89@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit

On 30.04.2021 16:37, Andrew Cooper wrote:
> On 30/04/2021 11:42, Jan Beulich wrote:
>> On 30.04.2021 12:21, Andrew Cooper wrote:
>>> If I do the rebase, are you happy for this patch to stay as it is (so
>>> the complicated change concerning context switching doesn't get more
>>> complicated), and so we're not knowingly adding new constructs which
>>> need immediate changes?
>> Well, the answer is not just "yes", but in reality I wouldn't mind
>> doing the rebasing myself, if only I knew it wasn't for the purpose of
>> waiting another half year for an ack (or otherwise).
> 
> The patch itself looks entirely fine.  Reviewed-by: Andrew Cooper
> <andrew.cooper3@citrix.com>

Thanks.

> The only observation I've got is that the other instructions in Grp7
> probably want a blanket conversion from generate_exception_if(vex.pfx,
> EXC_UD); to use the unimplemented_insn path instead, but that's clearly
> further work.

Since this is highly inconsistent at present, we first need to put
down a scheme, as I don't think we want _all_ #UD raising converted
to "goto unimplemented_insn". I've been thinking about where to draw
the line every time I've been adding new insns half-way recently,
but I didn't come to any good conclusion yet.

> I'll commit this patch, and the rebase delta on yours ought to just be
> the naming of the helpers.

Plus the dropping of the CR4 writes in write_pkru().

Jan


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 16:05:02 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 16:05:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120691.228249 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVdT-0003le-40; Fri, 30 Apr 2021 16:04:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120691.228249; Fri, 30 Apr 2021 16:04:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcVdT-0003lX-15; Fri, 30 Apr 2021 16:04:59 +0000
Received: by outflank-mailman (input) for mailman id 120691;
 Fri, 30 Apr 2021 16:04: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 1lcVdR-0003lN-Hi; Fri, 30 Apr 2021 16:04: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 1lcVdR-0006L5-8v; Fri, 30 Apr 2021 16:04: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 1lcVdR-0007JP-14; Fri, 30 Apr 2021 16:04:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcVdR-00044V-0Z; Fri, 30 Apr 2021 16: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=gO2FNjcpUchPw/11FtgTupohWBlW/naMGBp4DLKKmbo=; b=sjzH13PK/NjpaIxgjcvaImk/fj
	igDqf551sTmD8jM2gciQ3lUQ6pHwSrhvJNZD3G+8Kns1mIzPBTh0FFClu5MvAYbdPeEa6EFMryO3K
	G7yFpPbnNNwRFl3aB1Nq+Bfz5Q7QbODOokCDbFxQphfucUCHrpV6YM73W8c9Sa45yb18=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161540-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 161540: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-i386:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-freebsd10-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-pair:guest-start/debian:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-xsm:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:debian-hvm-install/l1/l2:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-armhf-armhf-libvirt:guest-start:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:debian-hvm-install:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-saverestore:fail:regression
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=609d7596524ab204ccd71ef42c9eee4c7c338ea4
X-Osstest-Versions-That:
    qemuu=1d806cef0e38b5db8347a8e12f214d543204a314
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 16:04:57 +0000

flight 161540 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161540/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-libvirt      14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-libvirt-xsm  14 guest-start              fail REGR. vs. 152631
 test-amd64-amd64-qemuu-freebsd12-amd64 16 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-freebsd10-i386 16 guest-saverestore      fail REGR. vs. 152631
 test-amd64-i386-freebsd10-amd64 16 guest-saverestore     fail REGR. vs. 152631
 test-amd64-amd64-libvirt-pair 25 guest-start/debian      fail REGR. vs. 152631
 test-amd64-i386-libvirt-pair 25 guest-start/debian       fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ovmf-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-arm64-arm64-libvirt-xsm 14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-qemuu-nested-intel 20 debian-hvm-install/l1/l2 fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-debianhvm-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-armhf-armhf-libvirt     14 guest-start              fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-win7-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 12 debian-hvm-install fail REGR. vs. 152631
 test-amd64-i386-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631
 test-amd64-amd64-xl-qemuu-ws16-amd64 15 guest-saverestore fail REGR. vs. 152631

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152631
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 152631
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152631
 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-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 16 saverestore-support-check    fail never pass
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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          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:
 qemuu                609d7596524ab204ccd71ef42c9eee4c7c338ea4
baseline version:
 qemuu                1d806cef0e38b5db8347a8e12f214d543204a314

Last test of basis   152631  2020-08-20 09:07:46 Z  253 days
Failing since        152659  2020-08-21 14:07:39 Z  252 days  462 attempts
Testing same since   161540  2021-04-30 03:02:18 Z    0 days    1 attempts

------------------------------------------------------------
478 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           fail    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 fail    
 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-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 test-amd64-amd64-qemuu-freebsd11-amd64                       fail    
 test-amd64-amd64-qemuu-freebsd12-amd64                       fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 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                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      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                                fail    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-arm64-arm64-xl-seattle                                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 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-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 143048 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 16:35:11 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 16:35:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120706.228281 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcW6b-0006RQ-Vh; Fri, 30 Apr 2021 16:35:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120706.228281; Fri, 30 Apr 2021 16:35:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcW6b-0006RJ-Sp; Fri, 30 Apr 2021 16:35:05 +0000
Received: by outflank-mailman (input) for mailman id 120706;
 Fri, 30 Apr 2021 16:35:04 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=BSS5=J3=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lcW6a-0006RE-TL
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 16:35:04 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 6688be77-238f-49dc-928e-29cddfd5692e;
 Fri, 30 Apr 2021 16:35: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: 6688be77-238f-49dc-928e-29cddfd5692e
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619800503;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=nuzFdV0QUWkg3W9rmcl5jJaiMd5QRUHMmTZ+jdAfApE=;
  b=EUYzdKNIy+kZlR36Vq6ygqiLGWm8YG/ru4siCkf5kfn9Zo4MGMakowU+
   Mb4L3Tn2UN58LAji2ha6AuyaUxl3T357p/Tv0xHHlKL2515FcqItT5/OQ
   NQEdJcD3w9hE84rpznf+UuFD0KQ/pXosojlFFqgtyNz4hhWWr6Qods5mT
   4=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: igWuJsrqlCI9Of4M0spP8n5YBZ9E8QnoSwW2sgtj2zvUMrgmiA91yOwVrZ/ocIB4lULTxBkzOM
 0rhlKQ/InPzoIOMh8LPld722hKkPOa3kiONqAqoI7IyAb/Gbed2+2IrNINtnXNtZ8woTYad27G
 bIg7uvtl/UggzugCH3G8pGOT63sLSUYvOeb0swKcNkEJU5OyuOrEv4Pf4hQn/gaDDW1Aqzj0hD
 ghO1vPTkGn8lT+LoefDQ5PtNLJ0vWG+xVzSrUB10GxYBdsEfixVe1Rbhbz1ubrcLJSytiWjXag
 tlA=
X-SBRS: 5.1
X-MesageID: 44335315
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:EsZLaq+pZ1uLW4KgT/9uk+A8I+orLtY04lQ7vn1ZYzY9SKKlvu
 qpm+kW0gKxtS0YX2sulcvFFK6LR37d8pAd2/h0AZ6JWg76tGy0aLxz9IeK+UyHJwTS/vNQvJ
 0BT4FQE9v1ZGIXse/fwC2VV+kt28OG9qfAv5a6815IQRtxY69tqydVYzzrcXFefwVNCZonGJ
 f03KMuzFDMRV0tYtmmHX5AZuDfprTw5fXbSCQbDB0q4hTmt1KVwYP9eiL24j4uFxdGwbIv6g
 H+4m7E2pk=
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="44335315"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <qemu-devel@nongnu.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Paul Durrant <paul@xen.org>, Kevin Wolf
	<kwolf@redhat.com>, Max Reitz <mreitz@redhat.com>,
	<xen-devel@lists.xenproject.org>, <qemu-block@nongnu.org>
Subject: [PATCH] xen-block: Use specific blockdev driver
Date: Fri, 30 Apr 2021 17:34:32 +0100
Message-ID: <20210430163432.468894-1-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

From: Anthony PERARD <anthony.perard@citrix.com>

... when a xen-block backend instance is created via xenstore.

Following 8d17adf34f50 ("block: remove support for using "file" driver
with block/char devices"), using the "file" blockdev driver for
everything doesn't work anymore, we need to use the "host_device"
driver when the disk image is a block device and "file" driver when it
is a regular file.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 hw/block/xen-block.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index 83754a434481..674953f1adee 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -728,6 +728,8 @@ static XenBlockDrive *xen_block_drive_create(const char *id,
     XenBlockDrive *drive = NULL;
     QDict *file_layer;
     QDict *driver_layer;
+    struct stat st;
+    int rc;
 
     if (params) {
         char **v = g_strsplit(params, ":", 2);
@@ -761,7 +763,17 @@ static XenBlockDrive *xen_block_drive_create(const char *id,
     file_layer = qdict_new();
     driver_layer = qdict_new();
 
-    qdict_put_str(file_layer, "driver", "file");
+    rc = stat(filename, &st);
+    if (rc) {
+        error_setg_errno(errp, errno, "Could not stat file '%s'", filename);
+        goto done;
+    }
+    if (S_ISBLK(st.st_mode)) {
+        qdict_put_str(file_layer, "driver", "host_device");
+    } else {
+        qdict_put_str(file_layer, "driver", "file");
+    }
+
     qdict_put_str(file_layer, "filename", filename);
     g_free(filename);
 
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 16:44:18 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 16:44:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120711.228294 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcWFR-0007Lt-Tx; Fri, 30 Apr 2021 16:44:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120711.228294; Fri, 30 Apr 2021 16:44: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 1lcWFR-0007Lm-Qp; Fri, 30 Apr 2021 16:44:13 +0000
Received: by outflank-mailman (input) for mailman id 120711;
 Fri, 30 Apr 2021 16:44:12 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=BSS5=J3=citrix.com=anthony.perard@srs-us1.protection.inumbo.net>)
 id 1lcWFQ-0007Lf-67
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 16:44:12 +0000
Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 1e71f58f-8a63-4e42-8d4b-e313e17a0d16;
 Fri, 30 Apr 2021 16:44: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: 1e71f58f-8a63-4e42-8d4b-e313e17a0d16
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1619801049;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=e1KPcgRLFVQq5UZPI+bESTLR9EztIF3MH6R2OTRSZm8=;
  b=JIEYHmS/CWvUnAGWY19Yz8AB6GkeNEmREJ72VIE2DbdyyacWtG33ymvP
   vsjUkeR0XYjPZ024CdhcIo9OAkq576KYZXWjvsOPHDTZPfsHx8ssPNdbd
   CnGxKv7IzhdaVs/bpxQEl6bOZNt67q9ulSgjw2V3nPvefrT46e5NAt4aF
   A=;
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: ajdkoYHch+jGte0LjBFzdAYVx8ARTXSnIvuO0PKRTJ3IFxUdXd1pQIuQayVN8G6AX+QSf/nRiz
 78ELuRJgdxB0EiCVec9bghLLdUYCnaIB80tD66ebuDJwC70HJj8znYcc94XSuYkxT81LPfJTgI
 5uz/QvTFujSXq9yMSl+l1PujZWb7DKkjg6Z9JBmiBrdYSZ1cAHraTNp0LNpfN/NM3UpIPKskmn
 ZUtXFkQnLxpMd/2T5k4GGOiRR2O81RORlPrh7WgDzVQ+bXGmcvOEw/yXqzwaIKSjEVHQeVjHNm
 AOc=
X-SBRS: 5.1
X-MesageID: 42934256
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Gk9oB6BdXmLW4fblHeh2sceALOonbusQ8zAX/mhsVB1YddGZnc
 iynPIdkST5kioVRWtIo729EYOHRm7R8oMw3JkJMd6ZLWzbkUaLDKUn14vtxDX8Bzbzn9Q26Y
 5Me7VzYeeeMXFUlsD/iTPXL/8F4P2qtJ+lnv3fyXAFd3AJV4hF4x1iAgiWVm1aLTMnObMDGJ
 CR5tVKqlObEBx6Uu2BCmQYRO+GntXXlfvdCiIuPQIt6wWFkFqTmd3HOiWfty1+bxp/hY0M3E
 KAuAz/66WlvZiAu2Xh/l6W1bt6sp/MztNCAeaFl8QaLC794zzYGbhJavm5kx0e5M2p9VY2gP
 nAyi1QQ/hb2jfqUUye5TvrxgX63z4l5xbZuCClqEqmm+PVbnYeKaN69OZkWyqc0WUMlpVA9Z
 gO+GSju59eHXr77VzAzumNbT5GvA6Ju3Y4+NRj6EB3YM8lR5J6i5cQx09RGIdoJlOA1KkXVN
 NjC8zR/59tADWnRkGcumFuxeqlVWgoEiGHRVAfuteU3yI+pgEB83cl
X-IronPort-AV: E=Sophos;i="5.82,263,1613451600"; 
   d="scan'208";a="42934256"
From: Anthony PERARD <anthony.perard@citrix.com>
To: <qemu-devel@nongnu.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant <paul@xen.org>,
	<xen-devel@lists.xenproject.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH] xen: Free xenforeignmemory_resource at exit
Date: Fri, 30 Apr 2021 17:37:42 +0100
Message-ID: <20210430163742.469739-1-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.31.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

From: Anthony PERARD <anthony.perard@citrix.com>

Because Coverity complains about it and this is one leak that Valgrind
reports.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 hw/i386/xen/xen-hvm.c       | 9 ++++++---
 include/hw/xen/xen_common.h | 6 ++++++
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
index 7ce672e5a5c3..47ed7772fa39 100644
--- a/hw/i386/xen/xen-hvm.c
+++ b/hw/i386/xen/xen-hvm.c
@@ -109,6 +109,7 @@ typedef struct XenIOState {
     shared_iopage_t *shared_page;
     shared_vmport_iopage_t *shared_vmport_page;
     buffered_iopage_t *buffered_io_page;
+    xenforeignmemory_resource_handle *fres;
     QEMUTimer *buffered_io_timer;
     CPUState **cpu_by_vcpu_id;
     /* the evtchn port for polling the notification, */
@@ -1254,6 +1255,9 @@ static void xen_exit_notifier(Notifier *n, void *data)
     XenIOState *state = container_of(n, XenIOState, exit);
 
     xen_destroy_ioreq_server(xen_domid, state->ioservid);
+    if (state->fres != NULL) {
+        xenforeignmemory_unmap_resource(xen_fmem, state->fres);
+    }
 
     xenevtchn_close(state->xce_handle);
     xs_daemon_close(state->xenstore);
@@ -1321,7 +1325,6 @@ static void xen_wakeup_notifier(Notifier *notifier, void *data)
 static int xen_map_ioreq_server(XenIOState *state)
 {
     void *addr = NULL;
-    xenforeignmemory_resource_handle *fres;
     xen_pfn_t ioreq_pfn;
     xen_pfn_t bufioreq_pfn;
     evtchn_port_t bufioreq_evtchn;
@@ -1333,12 +1336,12 @@ static int xen_map_ioreq_server(XenIOState *state)
      */
     QEMU_BUILD_BUG_ON(XENMEM_resource_ioreq_server_frame_bufioreq != 0);
     QEMU_BUILD_BUG_ON(XENMEM_resource_ioreq_server_frame_ioreq(0) != 1);
-    fres = xenforeignmemory_map_resource(xen_fmem, xen_domid,
+    state->fres = xenforeignmemory_map_resource(xen_fmem, xen_domid,
                                          XENMEM_resource_ioreq_server,
                                          state->ioservid, 0, 2,
                                          &addr,
                                          PROT_READ | PROT_WRITE, 0);
-    if (fres != NULL) {
+    if (state->fres != NULL) {
         trace_xen_map_resource_ioreq(state->ioservid, addr);
         state->buffered_io_page = addr;
         state->shared_page = addr + TARGET_PAGE_SIZE;
diff --git a/include/hw/xen/xen_common.h b/include/hw/xen/xen_common.h
index 82e56339dd7e..a8118b41acfb 100644
--- a/include/hw/xen/xen_common.h
+++ b/include/hw/xen/xen_common.h
@@ -134,6 +134,12 @@ static inline xenforeignmemory_resource_handle *xenforeignmemory_map_resource(
     return NULL;
 }
 
+static inline int xenforeignmemory_unmap_resource(
+    xenforeignmemory_handle *fmem, xenforeignmemory_resource_handle *fres)
+{
+    return 0;
+}
+
 #endif /* CONFIG_XEN_CTRL_INTERFACE_VERSION < 41100 */
 
 #if CONFIG_XEN_CTRL_INTERFACE_VERSION < 41000
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Apr 30 18:45:25 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 18:45:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120718.228309 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcY8T-0000fm-Ly; Fri, 30 Apr 2021 18:45:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120718.228309; Fri, 30 Apr 2021 18:45:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcY8T-0000ff-Is; Fri, 30 Apr 2021 18:45:09 +0000
Received: by outflank-mailman (input) for mailman id 120718;
 Fri, 30 Apr 2021 18:45:07 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=l7kq=J3=xen.org=tim@srs-us1.protection.inumbo.net>)
 id 1lcY8R-0000fa-Md
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 18:45:07 +0000
Received: from deinos.phlegethon.org (unknown [2001:41d0:8:b1d7::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5a41451c-8938-46b4-baa7-3fcd779f0fd8;
 Fri, 30 Apr 2021 18:45:06 +0000 (UTC)
Received: from tjd by deinos.phlegethon.org with local (Exim 4.92.3 (FreeBSD))
 (envelope-from <tim@xen.org>)
 id 1lcY8O-000Al7-HQ; Fri, 30 Apr 2021 18:45: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: 5a41451c-8938-46b4-baa7-3fcd779f0fd8
Date: Fri, 30 Apr 2021 19:45:04 +0100
From: Tim Deegan <tim@xen.org>
To: Costin Lupu <costin.lupu@cs.pub.ro>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>
Subject: Re: [PATCH 1/5] tools/debugger: Fix PAGE_SIZE redefinition error
Message-ID: <YIxQMCOsy7snOFJ0@deinos.phlegethon.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <0cd234096c9bfa8d29eac9906553af79d378733e.1619524463.git.costin.lupu@cs.pub.ro>
 <YIsP5z1ejJbUhmPc@deinos.phlegethon.org>
 <128f6672-eec7-fc8b-d43c-1e53d93d93b0@cs.pub.ro>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <128f6672-eec7-fc8b-d43c-1e53d93d93b0@cs.pub.ro>
X-SA-Known-Good: Yes
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: tim@xen.org
X-SA-Exim-Scanned: No (on deinos.phlegethon.org); SAEximRunCond expanded to false

At 14:36 +0300 on 30 Apr (1619793419), Costin Lupu wrote:
> Hi Tim,
> 
> On 4/29/21 10:58 PM, Tim Deegan wrote:
> > Hi,
> > 
> > At 15:05 +0300 on 27 Apr (1619535916), Costin Lupu wrote:
> >> If PAGE_SIZE is already defined in the system (e.g. in
> >> /usr/include/limits.h header) then gcc will trigger a redefinition error
> >> because of -Werror. This commit also protects PAGE_SHIFT definitions for
> >> keeping consistency.
> > 
> > Thanks for looking into this!  I think properly speaking we should fix
> > this by defining KDD_PAGE_SHIFT and KDD_PAGE_SIZE in kdd.h and using
> > those everywhere we currently use PAGE_SIZE/PAGE_SHIFT. in kdd.c and
> > kdd-xen.c.  If for some reason we ever ended up with a system-defined
> > PAGE_SIZE that wasn't 4096u then we would not want to use it here
> > because it would break our guest operations.
> 
> As discussed for another patch of the series, an agreed solution that
> would apply for other libs as well would be to use XC_PAGE_* macros
> instead of PAGE_* macros. I've just sent a v2 doing that. Please let me
> know if you think it would be better to introduce the KDD_PAGE_*
> definitions instead.

Sorry to be annoying, but yes, please do introduce the KDD_ versions.
All the xen-specific code in KDD lives in kdd-xen.c; kdd.c shouldn't
include any xen headers.

Cheers,

Tim.


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 19:15:30 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 19:15:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120725.228324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcYbl-0003Hn-4v; Fri, 30 Apr 2021 19:15:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120725.228324; Fri, 30 Apr 2021 19: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 1lcYbl-0003Hg-1J; Fri, 30 Apr 2021 19:15:25 +0000
Received: by outflank-mailman (input) for mailman id 120725;
 Fri, 30 Apr 2021 19:15: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 1lcYbk-0003HY-B5; Fri, 30 Apr 2021 19:15: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 1lcYbk-000143-3W; Fri, 30 Apr 2021 19:15: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 1lcYbj-0008T8-P4; Fri, 30 Apr 2021 19:15:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcYbj-0000ML-O2; Fri, 30 Apr 2021 19:15:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=H4g9EW1GWj3oWI/5d0e7QKPn2d7LkXS9fdmLod3o7N0=; b=MjWEm/9VkU0Ct7TMA/cWq8HnZ5
	UZ3hRIo7wnjRy51MC3ypbP2FulVZSLcRmYo3vpj7JOmmUTQa/8r3QhClHq88F2ps2HUhkx139ucqA
	VHLtDbz6SKGEZFT/VqJf/bmHUQe5Tduq/IOyaQTRmNTavz5PwrBvy2dRkLnZhFi6/1nw=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161545-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.12-testing test] 161545: regressions - FAIL
X-Osstest-Failures:
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-localmigrate/x10:fail:regression
    xen-4.12-testing:test-amd64-amd64-xl-qcow2:guest-saverestore.2:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.12-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-seattle:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-cubietruck:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.12-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5b280a59c4dd8dad6cc8da28db981b193d10acee
X-Osstest-Versions-That:
    xen=4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 19:15:23 +0000

flight 161545 xen-4.12-testing real [real]
flight 161557 xen-4.12-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/161545/
http://logs.test-lab.xenproject.org/osstest/logs/161557/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qcow2    19 guest-localmigrate/x10   fail REGR. vs. 159418

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qcow2 18 guest-saverestore.2 fail in 161522 pass in 161545
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 161522

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 159418
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 159418
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 159418
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 159418
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 159418
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 159418
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 159418
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 159418
 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-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  16 saverestore-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-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-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-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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     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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5b280a59c4dd8dad6cc8da28db981b193d10acee
baseline version:
 xen                  4cf5929606adc2fb1ab4e2921c14ba4b8046ecd1

Last test of basis   159418  2021-02-16 15:06:11 Z   73 days
Failing since        160128  2021-03-18 14:36:18 Z   43 days   57 attempts
Testing same since   160150  2021-03-20 04:11:48 Z   41 days   55 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Christian Lindig <christian.lindig@citrix.com>
  Edwin Török <edvin.torok@citrix.com>
  Igor Druzhinin <igor.druzhinin@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Olaf Hering <olaf@aepfle.de>
  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-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-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-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-armhf-armhf-xl-cubietruck                               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-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-amd64-pvgrub                                pass    
 test-amd64-amd64-i386-pvgrub                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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-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 311 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 19:28:03 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 19:28:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120734.228338 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcYnu-0004GB-DT; Fri, 30 Apr 2021 19:27:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120734.228338; Fri, 30 Apr 2021 19:27: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 1lcYnu-0004G4-AU; Fri, 30 Apr 2021 19:27:58 +0000
Received: by outflank-mailman (input) for mailman id 120734;
 Fri, 30 Apr 2021 19:27:56 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=t0FU=J3=starlab.io=scott.davis@srs-us1.protection.inumbo.net>)
 id 1lcYns-0004Fz-Hi
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 19:27:56 +0000
Received: from GCC02-BL0-obe.outbound.protection.outlook.com (unknown
 [40.107.89.129]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2fdce44b-a22f-462f-8a23-1cccbefe3198;
 Fri, 30 Apr 2021 19:27:55 +0000 (UTC)
Received: from MN2PR09MB5258.namprd09.prod.outlook.com (2603:10b6:208:220::11)
 by BLAPR09MB6868.namprd09.prod.outlook.com (2603:10b6:208:2a1::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.35; Fri, 30 Apr
 2021 19:27:52 +0000
Received: from MN2PR09MB5258.namprd09.prod.outlook.com
 ([fe80::2939:7b58:8863:9a07]) by MN2PR09MB5258.namprd09.prod.outlook.com
 ([fe80::2939:7b58:8863:9a07%7]) with mapi id 15.20.4087.035; Fri, 30 Apr 2021
 19:27: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: 2fdce44b-a22f-462f-8a23-1cccbefe3198
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h9EqO64FmF4VTyeVNVQu+T2rL9WmO6w8S/94yHA9TGwUc9yGFqe9SRFFQr3XsZLJXYPufhM0IoZ/Yp79o2vsY6tcOjG/GpIFPXHcuFGvk/Xbeu8bXebRmeto0cEtRQlyCtQH1gyoEDyVMow47ug1NDc88rTGb4dCv95iTZzNXPSCOua38Z9GP0g65O1XJ+bnkmUMjGGGlNEUjZ8/l0EwEh1V1Q7DV3z1029nDHOjW94aNkmhIMiFPyw4QZ8NzK3JZlKwf4Ko0eB5WtYm8PvID/G4ySfrxlgEBqaZKAMMmnv2CcAfofVA3ihFfcGj8QV0RPLAal6JxWTWwiFKqVGL9A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZDVVTGrRgGXLdbJMbXSDP6eLgKQ1xo8wwryytqD0tmU=;
 b=eZAuQyeUruN++txJ8fLNZpIuyylUC702A7qZn4G3UYfTdR2572KtMQPlRW5hwvGH4ac/YgRS/COOaBEvvqYyxElHop6zQXGahuyW43seLqV6tazKE/dn+RjhaOX8O2jzD44rzRPq135P69Hw7gBxjr5LVCtDqy40JZWrdyXxdBqZcm/Mx8q/hfEWoT/AzPECIk6TDSYKXOmsgV7CymKhAX2ULHv2CJhxeZT0130FNhsBwFYDOvAfv4j13JRjR8yGaC+Elkds32PwZIkywYSD8dqkWtNjCqzYu09/uJty7sxoVk1phEqmYRmX1WJo+Ky9YnOLFEMJcX+jE3tWiNbUaQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=starlab.io; dmarc=pass action=none header.from=starlab.io;
 dkim=pass header.d=starlab.io; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=starlab.io;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZDVVTGrRgGXLdbJMbXSDP6eLgKQ1xo8wwryytqD0tmU=;
 b=AuqfdAo7dCmdio7fkReCsD8HY/aPaXyr//6u+uNYWY+Ri1MiO+5F9o6aq/K1efgwO2v1ib8SmtkdOrcrrKuZl/CMbW11IJskTsk80YMq5i+dHuYFDcZf/Vhk21hRnWMN6NmQytleAxPsok0O5n8P+VNPqcDMg0WRoQC60fGebUQ=
From: Scott Davis <scott.davis@starlab.io>
To: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Ian Jackson <ian.jackson@eu.citrix.com>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>, "paul@xen.org" <paul@xen.org>
Subject: Re: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
Thread-Topic: [RFC PATCH] iommu: make no-quarantine mean no-quarantine
Thread-Index:
 AQHXOsEjPlXZorMQi0Kt8384oCpmdqrH72EAgAC5poCAAM1cAIAAEeQAgAI1xoCAAO20gIAAiYCA
Date: Fri, 30 Apr 2021 19:27:51 +0000
Message-ID: <52860A0A-D1D0-427D-ADE6-0876FC0897D3@starlab.io>
References:
 <0a292d952ff71dbfed5234d27b42a05f7b49a1fe.1619451434.git.scott.davis@starlab.io>
 <cea1d2d0-fd69-a4cd-6653-dd881d07b96a@suse.com>
 <56F61E81-511E-4ECA-B2A0-B91F250804D7@starlab.io>
 <237ad45b-b68d-9d31-0fbc-1af52dfca808@suse.com>
 <dc6556ae-c653-8519-1a81-9524e4472f26@xen.org>
 <2A65573D-2DD6-49C7-B34C-27B15FD620B2@starlab.io>
 <ec0cc346-3d56-afec-7414-bce81e9eea1d@suse.com>
In-Reply-To: <ec0cc346-3d56-afec-7414-bce81e9eea1d@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: suse.com; dkim=none (message not signed)
 header.d=none;suse.com; dmarc=none action=none header.from=starlab.io;
x-originating-ip: [73.133.107.223]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: af3ed640-85f4-4006-8687-08d90c0e0bfc
x-ms-traffictypediagnostic: BLAPR09MB6868:
x-microsoft-antispam-prvs:
 <BLAPR09MB686874EBE075B15B74C84C4D915E9@BLAPR09MB6868.namprd09.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8273;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 Jo47KMwpMR45hTr7ggchUqSgPy08A/uE8kr+bOUlYeQ7gkBVicLqgx11HfO7nENI7BbfNgB9LsTCjAL4iD1Qi7qVYS/1KujDZqSGJfue1X51c3+28YlGIcgVwX1Q+W7+iaRmOHM1WuRUpfVgv7UuAz2pyLcMz+AFcQ/g8O8ChHUAa0oVwEermRJLSsRU/JVpz3646v07RCtkXhrogB5915/bKzaB4V+GjQsRGqzA6lZFwo0O/okkGTEyTEazjiJdmHRTukKzKxBJWCzin2YywZMzTnsrg/t/LUXU886cPfWoBr0Ztc4nti/tMmVQGUYHyNk6jQjlg3dp1bYoeFH6225tZY+gotk1u27/qiEpJYLtsBxWJ46upBSIfZzpD7KFRC+Nb93AvVP9yGeicsutf9zy50eLb6hcMTxJtT/veeO0xU/MXKZz9SWkIFMHCRtZEehm0maK+xvuYwA+0kH6I1aQwPtXjMH0YdzXO+zJNCei+3p/cj6kLm6FZ23EVHSlmvjtaH/tCKXslOhqECWNJR280DM67zISG8LFN2ZabzZV5LE4vT7uJ6pO43a+3X/z6bggUqYITvT/7WWvzs35L5Cpc2lmejRk3vhVsY2IPd3svi8rumFIZTTrbf7EyP5lwR6sG2ofAYX6tXnmL4N43w==
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR09MB5258.namprd09.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(136003)(346002)(396003)(39830400003)(366004)(6916009)(76116006)(5660300002)(478600001)(44832011)(6486002)(66446008)(64756008)(66476007)(66556008)(71200400001)(66946007)(83380400001)(6506007)(186003)(38100700002)(36756003)(6512007)(33656002)(4326008)(2616005)(86362001)(26005)(8936002)(122000001)(8676002)(54906003)(316002)(53546011)(2906002)(45980500001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata:
 =?utf-8?B?WnhXZHlvTyt1WE1HclBoRGJpZ1RSQkJSVW5RNXNkUDl3SkJ1ZGxncUViQlY2?=
 =?utf-8?B?cHNMQlFXdTRsQXpURlkrUjNnNmp2WmE2M09HbnRYYmVFdnN1bTdVMWxtcStS?=
 =?utf-8?B?RnN6Wk80OGlyeXQyODVQZVRKY3FLVllETSt4VjBnZlphbDZjOU91aXVwaTVi?=
 =?utf-8?B?ejRBNmhrVWNRT0UxNDV1M3djazlCcUR4ek9HU3hRQ0ZwbXFSZ3dHKzZBWHdu?=
 =?utf-8?B?V09WckU3eVBjREpDVTFTdWF2ZHQyM3Fnamt0NW1NZ2Y2bTFZd0FrRHhCTWp1?=
 =?utf-8?B?cEFsa2JhNVBYMDg0bWVabVBuaUNQa21ONFlVellERWV1bTJsNEEraHZqclp2?=
 =?utf-8?B?S0MxNFRXYXVtVXQ0RDZxR3FZSWtjZW1zVHNtaUdIaTZHb3BWQkhmdTNPeGt5?=
 =?utf-8?B?cm9wYWRjaE5pUnlFNXQrbHZyRTJVSk1keCszYURQalNJaGVkenNkdjAzWWRp?=
 =?utf-8?B?UnA5WkdvdmM4aXlzOHZ2Tyt3RW1La2RoUmxuV0RHVk1qYXhiK2x3MXc4M0Vj?=
 =?utf-8?B?ZlQ1ZVVaV1VUMWdvL2RKL0I1eDVKcTZ2U1RnaHZSblJhL25WMk82RDRXemsz?=
 =?utf-8?B?ZUd0aEJQYnZJelNyY2pBK1NDTUc5aHRrT1lETmx1ejQrNXppK2tUYlNzZU9w?=
 =?utf-8?B?dXl1dzY2eW55RGpSclpKT29JSHppTGp6LzZQelJMQ3lTZ1VZU3RJdWdSWnA4?=
 =?utf-8?B?UEZQWHp6ZDQ2bkc2RFRPdVRBenNMV0F5Q1QwYXJha09mQmVTbVZHb2VUVGV1?=
 =?utf-8?B?SE03QU5CWFBsUzJyOE55cnpod0NDVUxHTXZaRWQvb2FnQTVwcXczNVdtNDcz?=
 =?utf-8?B?YXI3V0xMQkM0YzZSRlRsbjh2ejcvOUdPcVJhY09nbFlpRXBFRjQ4Uk9WMk1t?=
 =?utf-8?B?a28wQWNLOUNMSk1vRTc3YzFtSmFBR2FNSmFqQ2w2OE1Jcys4RHJIR0xqYTVl?=
 =?utf-8?B?bVR2RHY4anF5WmlXekgvdUl2enY1b0JtWmRwN2dRS3VFZGRQZktMY2hTZFB6?=
 =?utf-8?B?T2VVQnhhM0oyUTFWTWNseEN2b1F5aE1DNG1uUzdyV0thUmVKMElGNzBwSWk5?=
 =?utf-8?B?YXVSRUsrYXdrak84YVQwdnlJSDd5RG4xOXl2eVF3VG5mbks2Ry8reWdZUmsv?=
 =?utf-8?B?ZGFicXpCQmRPbCtGT1hOQkVJZUR5WUtLZVRhYWtOeEc3Qy91OURjTzN0M1Y0?=
 =?utf-8?B?Rzd2UlQvZEtGUVhWWTJ3Z1oyeldRNWxTRU50QUxnL2puOUdBcjIzcm9Ib0hR?=
 =?utf-8?B?a3RvdWFaTlNiOHZmUU85Zlcyb3N0VUJhaytob2lSbndTWkdCT3BlVHh5Zi9L?=
 =?utf-8?B?eGhwSlJ2TWtqT2tGVnhmZlFsTjFaMVFvL0taQXpYbjEwSDh4dnlrS1lBRmdI?=
 =?utf-8?B?SDF1TElkSFV1Mm5DYmI3WjlSeFRZYWVOVnV0UTNOTU0rWEdXcU9kcURTcTNV?=
 =?utf-8?B?eHF5eU9xdkZIUVRWemJWMTRpVndON01yTHNZM1R5YVlQVnQzMjdUSGZFVUNv?=
 =?utf-8?B?YjNVTDBqZXFsd3dwNEhmMVZHVmFUS290d0IzdmtTN1NJQjVYTTBua2l2MkZx?=
 =?utf-8?B?VFIzczdVekNablRVM0VMQnRua3hVT1NzV1RVVWtTaWR4TmUrODN2azU5Y2NP?=
 =?utf-8?B?blJMY2d0Y0J3T0ppSjNQR1YybGF6QXdBeTdWZXZ3b3REVkh3bFlJWVNuaWw0?=
 =?utf-8?B?NnhRY1l1c092dnJqRG55a2VWT0t0SzJLTVVHaHBIUHQwVHltRXdQZ01jN0lC?=
 =?utf-8?Q?IJWY8TUPkUNbeMmV7bP+8bEDUP2j7R3hNZ6uddV?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <49904EE525E10246AE2A518ED9E90E0C@namprd09.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: starlab.io
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MN2PR09MB5258.namprd09.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: af3ed640-85f4-4006-8687-08d90c0e0bfc
X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Apr 2021 19:27:51.7639
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5e611933-986f-4838-a403-4acb432ce224
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR09MB6868

T24gNC8zMC8yMSwgMzoxNSBBTSwgSmFuIEJldWxpY2ggd3JvdGU6DQo+IFNvIGZhciB5b3UgZGlk
bid0IHRlbGwgdXMgd2hhdCB0aGUgYWN0dWFsIGNyYXNoIHdhcy4gSSBndWVzcyBpdCdzIG5vdA0K
PiBldmVuIGNsZWFyIHRvIG1lIHdoZXRoZXIgaXQncyBYZW4gb3IgcWVtdSB0aGF0IGRpZCBjcmFz
aCBmb3IgeW91LiBCdXQNCj4gSSBoYXZlIHRvIGFsc28gYWRtaXQgdGhhdCB1bnRpbCBub3cgaXQg
d2Fzbid0IHJlYWxseSBjbGVhciB0byBtZSB0aGF0DQo+IHlvdSByYW4gWGVuIF91bmRlcl8gcWVt
dSAtIGluc3RlYWQgSSB3YXMgYXNzdW1pbmcgdGhlcmUgd2FzIGFuDQo+IGludGVyYWN0aW9uIHBy
b2JsZW0gd2l0aCBhIHFlbXUgc2VydmluZyBhIGd1ZXN0Lg0KDQpJIGV4cGxhaW5lZCB0aGlzIGlu
IG15IE9QLCBzb3JyeSBpZiBpdCB3YXMgbm90IGNsZWFyOg0KDQo+IEJhY2tncm91bmQ6IEkgYW0g
c2V0dGluZyB1cCBhIFFFTVUtYmFzZWQgZGV2ZWxvcG1lbnQgYW5kIHRlc3RpbmcgZW52aXJvbm1l
bnQNCj4gZm9yIHRoZSBDcnVjaWJsZSB0ZWFtIGF0IFN0YXIgTGFiIHRoYXQgaW5jbHVkZXMgZW11
bGF0ZWQgUENJZSBkZXZpY2VzIGZvcg0KPiBwYXNzdGhyb3VnaCBhbmQgaG90cGx1Zy4gSSBlbmNv
dW50ZXJlZCBhbiBpc3N1ZSB3aXRoIGB4bCBwY2ktYXNzaWduYWJsZS1hZGRgDQo+IHRoYXQgY2F1
c2VzIHRoZSBob3N0IFFFTVUgdG8gcmFwaWRseSBhbGxvY2F0ZSBtZW1vcnkgdW50aWwgZ2V0dGlu
ZyANCj4gT09NLWtpbGxlZC4NCg0KQXMgc29vbiBhcyBYZW4gd3JpdGVzIHRoZSBJUVQgcmVnaXN0
ZXIsIHRoZSBob3N0IFFFTVUgcHJvY2VzcyBsb2NrcyB1cCwNCnN0YXJ0cyBhbGxvY2F0aW5nIHNl
dmVyYWwgaHVuZHJlZCBNQi9zZWMsIGFuZCBpcyBzb29uIE9PTS1raWxsZWQgYnkgdGhlDQpob3N0
IGtlcm5lbC4NCg0KT24gNC8zMC8yMSwgMzoxNSBBTSwgSmFuIEJldWxpY2ggd3JvdGU6DQo+IElu
dGVyZXN0aW5nLiBUaGlzIHRoZW4gbGVhdmVzIHRoZSBxdWVzdGlvbiB3aGV0aGVyIHdlIHN1Ym1p
dCBhIGJvZ3VzDQo+IGNvbW1hbmQsIG9yIHdoZXRoZXIgcWVtdSBjYW4ndCBkZWFsIChjb3JyZWN0
bHkpIHdpdGggYSB2YWxpZCBvbmUgaGVyZS4NCg0KSSBkaWQgc29tZSBleHRyYSBkZWJ1Z2dpbmcg
dG8gaW5zcGVjdCB0aGUgaW5kZXggdmFsdWVzIGJlaW5nIHdyaXR0ZW4gdG8NCklRVCBhcyB3ZWxs
IGFzIHRoZSBpbnZhbGlkYXRpb24gZGVzY3JpcHRvcnMgdGhlbXNlbHZlcyBhbmQgZXZlcnl0aGlu
Zw0KYXBwZWFyZWQgZmluZSB0byBtZSBvbiBYZW4ncyBlbmQuIEluIGZhY3QsIHRoZSBkZXNjcmlw
dG9yIHdyaXR0ZW4gYnkNCnF1ZXVlX2ludmFsaWRhdGVfY29udGV4dF9zeW5jIHVwb24gbWFwIGlu
dG8gZG9tX2lvIGlzIGVudGlyZWx5IGlkZW50aWNhbA0KdG8gdGhlIG9uZSBpdCB3cml0ZXMgdXBv
biB1bm1hcCBmcm9tIGRvbTAsIHdoaWNoIHdvcmtzIHdpdGhvdXQgaXNzdWUuDQpUaGlzIHBvaW50
IHRvd2FyZHMgYSBRRU1VIGJ1ZyB0byBtZToNCg0KKGdkYikgYw0KVGhyZWFkIDEgaGl0IEJyZWFr
cG9pbnQgNCwgcXVldWVfaW52YWxpZGF0ZV9jb250ZXh0X3N5bmMgKC4uLikgYXQgcWludmFsLmM6
MTAxDQooZ2RiKSBidA0KIzAgIHF1ZXVlX2ludmFsaWRhdGVfY29udGV4dF9zeW5jICguLi4pIGF0
IHFpbnZhbC5jOjg1DQojMSAgZmx1c2hfY29udGV4dF9xaSAoLi4uKSBhdCBxaW52YWwuYzozNDEN
CiMyICBpb21tdV9mbHVzaF9jb250ZXh0X2RldmljZSAoLi4uKSBhdCBpb21tdS5jOjQwMA0KIzMg
IGRvbWFpbl9jb250ZXh0X3VubWFwX29uZSAoLi4uKSBhdCBpb21tdS5jOjE2MDYNCiM0ICBkb21h
aW5fY29udGV4dF91bm1hcCAoLi4uKSBhdCBpb21tdS5jOjE2NzENCiM1ICByZWFzc2lnbl9kZXZp
Y2Vfb3duZXJzaGlwICguLi4pIGF0IGlvbW11LmM6MjM5Ng0KIzYgIGludGVsX2lvbW11X2Fzc2ln
bl9kZXZpY2UgKC4uLikgYXQgaW9tbXUuYzoyNDc2DQojNyAgYXNzaWduX2RldmljZSAoLi4uKSBh
dCBwY2kuYzoxNTQ1DQojOCAgaW9tbXVfZG9fcGNpX2RvbWN0bCAoLi4uKSBhdCBwY2kuYzoxNzMy
DQojOSAgaW9tbXVfZG9fZG9tY3RsICguLi4pIGF0IGlvbW11LmM6NTM5DQouLi4NCihnZGIpIHBy
aW50IGluZGV4DQokMiA9IDU1Mg0KKGdkYikgcHJpbnQgcWludmFsX2VudHJ5LT5xLmNjX2ludl9k
c2MNCiQzID0gew0KICBsbyA9IHsNCiAgICB0eXBlID0gMSwNCiAgICBncmFudSA9IDMsDQogICAg
cmVzXzEgPSAwLA0KICAgIGRpZCA9IDAsDQogICAgc2lkID0gMjU2LA0KICAgIGZtID0gMCwNCiAg
ICByZXNfMiA9IDANCiAgfSwNCiAgaGkgPSB7DQogICAgcmVzID0gMA0KICB9DQp9DQooZ2RiKSBj
DQpUaHJlYWQgMSBoaXQgQnJlYWtwb2ludCA1LCBxaW52YWxfbmV4dF9pbmRleCAoLi4uKSBhdCBx
aW52YWwuYzo1OA0KKGdkYikgYnQNCiMwICBxaW52YWxfbmV4dF9pbmRleCAoLi4uKSBhdCBxaW52
YWwuYzo1OA0KIzEgIHF1ZXVlX2ludmFsaWRhdGVfd2FpdCAoLi4uKSBhdCBxaW52YWwuYzoxNTkN
CiMyICBpbnZhbGlkYXRlX3N5bmMgKC4uLikgYXQgcWludmFsLmM6MjA3DQojMyAgcXVldWVfaW52
YWxpZGF0ZV9jb250ZXh0X3N5bmMgKC4uLikgYXQgcWludmFsLmM6MTA2DQouLi4NCihnZGIpIHBy
aW50IHRhaWwNCiQ0ID0gNTUzDQooZ2RiKSBjDQpUaHJlYWQgMSBoaXQgQnJlYWtwb2ludCA1LCBx
aW52YWxfbmV4dF9pbmRleCAoLi4uKSBhdCBxaW52YWwuYzo1OA0KKGdkYikgYnQNCiMwICBxaW52
YWxfbmV4dF9pbmRleCAoLi4uKSBhdCBxaW52YWwuYzo1OA0KIzMgIHF1ZXVlX2ludmFsaWRhdGVf
aW90bGJfc3luYyAoLi4uKSBhdCBxaW52YWwuYzoxMjANCiM0ICBmbHVzaF9pb3RsYl9xaSAoLi4u
KSBhdCBxaW52YWwuYzozNzYNCiM1ICBpb21tdV9mbHVzaF9pb3RsYl9kc2kgKC4uLikgYXQgaW9t
bXUuYzo0OTkNCiM2ICBkb21haW5fY29udGV4dF91bm1hcF9vbmUgKC4uLikgYXQgaW9tbXUuYzox
NjExDQojNyAgZG9tYWluX2NvbnRleHRfdW5tYXAgKC4uLikgYXQgaW9tbXUuYzoxNjcxDQouLi4N
CihnZGIpIHByaW50IHRhaWwNCiQ1ID0gNTU0DQooZ2RiKSBjDQpUaHJlYWQgMSBoaXQgQnJlYWtw
b2ludCA1LCBxaW52YWxfbmV4dF9pbmRleCAoLi4uKSBhdCBxaW52YWwuYzo1OA0KKGdkYikgYnQN
CiMwICBxaW52YWxfbmV4dF9pbmRleCAoLi4uKSBhdCBxaW52YWwuYzo1OA0KIzEgIHF1ZXVlX2lu
dmFsaWRhdGVfd2FpdCAoLi4uKSBhdCBxaW52YWwuYzoxNTkNCiMyICBpbnZhbGlkYXRlX3N5bmMg
KC4uLikgYXQgcWludmFsLmM6MjA3DQojMyAgcXVldWVfaW52YWxpZGF0ZV9pb3RsYl9zeW5jICgu
Li4pIGF0IHFpbnZhbC5jOjE0Mw0KLi4uDQooZ2RiKSBwcmludCB0YWlsDQokNiA9IDU1NQ0KKGdk
YikgYw0KVGhyZWFkIDEgaGl0IEJyZWFrcG9pbnQgNSwgcWludmFsX25leHRfaW5kZXggKC4uLikg
YXQgcWludmFsLmM6NTgNCihnZGIpIGJ0DQojMCAgcWludmFsX25leHRfaW5kZXggKC4uLikgYXQg
cWludmFsLmM6NTgNCiMxICBxdWV1ZV9pbnZhbGlkYXRlX2NvbnRleHRfc3luYyAoLi4uKSBhdCBx
aW52YWwuYzo4Ng0KIzIgIGZsdXNoX2NvbnRleHRfcWkgKC4uLikgYXQgcWludmFsLmM6MzQxDQoj
MyAgaW9tbXVfZmx1c2hfY29udGV4dF9kZXZpY2UgKC4uLikgYXQgaW9tbXUuYzo0MDANCiM0ICBk
b21haW5fY29udGV4dF9tYXBwaW5nX29uZSAoLi4uKSBhdCBpb21tdS5jOjE0MzYNCiM1ICBkb21h
aW5fY29udGV4dF9tYXBwaW5nICguLi4pIGF0IGlvbW11LmM6MTUxMA0KIzYgIHJlYXNzaWduX2Rl
dmljZV9vd25lcnNoaXAgKC4uLikgYXQgaW9tbXUuYzoyNDEyDQouLi4NCihnZGIpIHByaW50IHRh
aWwNCiQ3ID0gNTU2DQooZ2RiKSBjDQpUaHJlYWQgMSBoaXQgQnJlYWtwb2ludCA0LCBxdWV1ZV9p
bnZhbGlkYXRlX2NvbnRleHRfc3luYyAoLi4uKSBhdCBxaW52YWwuYzoxMDENCihnZGIpIHByaW50
IGluZGV4DQokOCA9IDU1Ng0KKGdkYikgcHJpbnQgcWludmFsX2VudHJ5LT5xLmNjX2ludl9kc2MN
CiQ5ID0gew0KICBsbyA9IHsNCiAgICB0eXBlID0gMSwNCiAgICBncmFudSA9IDMsDQogICAgcmVz
XzEgPSAwLA0KICAgIGRpZCA9IDAsDQogICAgc2lkID0gMjU2LA0KICAgIGZtID0gMCwNCiAgICBy
ZXNfMiA9IDANCiAgfSwNCiAgaGkgPSB7DQogICAgcmVzID0gMA0KICB9DQp9DQooZ2RiKSBjDQpD
b250aW51aW5nLg0KUmVtb3RlIGNvbm5lY3Rpb24gY2xvc2VkDQoNCldpdGggb3V0cHV0IGZyb20g
ZG9tMCBhbmQgWGVuIGxpa2U6DQoNClsgICAzMS4wMDIyMTRdIGUxMDAwZSAwMDAwOjAxOjAwLjAg
ZXRoMTogcmVtb3ZlZCBQSEMNClsgICAzMS42OTQyNzBdIGUxMDAwZTogZXRoMSBOSUMgTGluayBp
cyBEb3duDQpbICAgMzEuNzE3ODQ5XSBwY2liYWNrIDAwMDA6MDE6MDAuMDogc2VpemluZyBkZXZp
Y2UNClsgICAzMS43MTk0NjRdIEFscmVhZHkgc2V0dXAgdGhlIEdTSSA6MjANCihYRU4pIFsgICA4
My41NzI4MDRdIFtWVC1EXWQwOlBDSWU6IHVubWFwIDAwMDA6MDE6MDAuMA0KKFhFTikgWyAgODA4
LjA5MjMxMF0gW1ZULURdZDMyNzUzOlBDSWU6IG1hcCAwMDAwOjAxOjAwLjANCg0KR29vZCBkYXks
DQpTY290dA0KDQo=


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 19:33:14 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 19:33:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120739.228350 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcYsv-00057e-1F; Fri, 30 Apr 2021 19:33:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120739.228350; Fri, 30 Apr 2021 19: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 1lcYsu-00057X-UW; Fri, 30 Apr 2021 19:33:08 +0000
Received: by outflank-mailman (input) for mailman id 120739;
 Fri, 30 Apr 2021 19:33:07 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ll2C=J3=cs.pub.ro=costin.lupu@srs-us1.protection.inumbo.net>)
 id 1lcYss-00057S-W3
 for xen-devel@lists.xenproject.org; Fri, 30 Apr 2021 19:33:07 +0000
Received: from mx.upb.ro (unknown [141.85.13.200])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9330d184-cde3-4af2-afff-fdf45d01dbbe;
 Fri, 30 Apr 2021 19:33:05 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 4C6C7B56006A;
 Fri, 30 Apr 2021 22:33:04 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id qwi_VDOIRYLe; Fri, 30 Apr 2021 22:33:02 +0300 (EEST)
Received: from localhost (localhost [127.0.0.1])
 by mx.upb.ro (Postfix) with ESMTP id 6ED13B56007A;
 Fri, 30 Apr 2021 22:33:02 +0300 (EEST)
Received: from mx.upb.ro ([127.0.0.1])
 by localhost (mx.upb.ro [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id ZmGTByysu8Uy; Fri, 30 Apr 2021 22:33:02 +0300 (EEST)
Received: from [192.168.1.35] (unknown [188.25.174.245])
 by mx.upb.ro (Postfix) with ESMTPSA id A5F42B56006A;
 Fri, 30 Apr 2021 22:33:01 +0300 (EEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9330d184-cde3-4af2-afff-fdf45d01dbbe
X-Virus-Scanned: amavisd-new at upb.ro
Subject: Re: [PATCH 1/5] tools/debugger: Fix PAGE_SIZE redefinition error
To: Tim Deegan <tim@xen.org>
Cc: xen-devel@lists.xenproject.org, Ian Jackson <iwj@xenproject.org>,
 Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>
References: <cover.1619524463.git.costin.lupu@cs.pub.ro>
 <0cd234096c9bfa8d29eac9906553af79d378733e.1619524463.git.costin.lupu@cs.pub.ro>
 <YIsP5z1ejJbUhmPc@deinos.phlegethon.org>
 <128f6672-eec7-fc8b-d43c-1e53d93d93b0@cs.pub.ro>
 <YIxQMCOsy7snOFJ0@deinos.phlegethon.org>
From: Costin Lupu <costin.lupu@cs.pub.ro>
Message-ID: <3e7f6771-1f1a-eb00-95f8-5ef6998091be@cs.pub.ro>
Date: Fri, 30 Apr 2021 22:33:01 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.0
MIME-Version: 1.0
In-Reply-To: <YIxQMCOsy7snOFJ0@deinos.phlegethon.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 4/30/21 9:45 PM, Tim Deegan wrote:
> At 14:36 +0300 on 30 Apr (1619793419), Costin Lupu wrote:
>> Hi Tim,
>>
>> On 4/29/21 10:58 PM, Tim Deegan wrote:
>>> Hi,
>>>
>>> At 15:05 +0300 on 27 Apr (1619535916), Costin Lupu wrote:
>>>> If PAGE_SIZE is already defined in the system (e.g. in
>>>> /usr/include/limits.h header) then gcc will trigger a redefinition error
>>>> because of -Werror. This commit also protects PAGE_SHIFT definitions for
>>>> keeping consistency.
>>>
>>> Thanks for looking into this!  I think properly speaking we should fix
>>> this by defining KDD_PAGE_SHIFT and KDD_PAGE_SIZE in kdd.h and using
>>> those everywhere we currently use PAGE_SIZE/PAGE_SHIFT. in kdd.c and
>>> kdd-xen.c.  If for some reason we ever ended up with a system-defined
>>> PAGE_SIZE that wasn't 4096u then we would not want to use it here
>>> because it would break our guest operations.
>>
>> As discussed for another patch of the series, an agreed solution that
>> would apply for other libs as well would be to use XC_PAGE_* macros
>> instead of PAGE_* macros. I've just sent a v2 doing that. Please let me
>> know if you think it would be better to introduce the KDD_PAGE_*
>> definitions instead.
> 
> Sorry to be annoying, but yes, please do introduce the KDD_ versions.
> All the xen-specific code in KDD lives in kdd-xen.c; kdd.c shouldn't
> include any xen headers.

No worries, will do. I imagined that might be the case for kdd.c, but I
wasn't sure.

Cheers,
Costin


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 20:42:05 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 20:42:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120758.228369 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcZxD-0002bo-C0; Fri, 30 Apr 2021 20:41:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120758.228369; Fri, 30 Apr 2021 20: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 1lcZxD-0002bh-8W; Fri, 30 Apr 2021 20:41:39 +0000
Received: by outflank-mailman (input) for mailman id 120758;
 Fri, 30 Apr 2021 20:41: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 1lcZxC-0002bZ-Ag; Fri, 30 Apr 2021 20:41: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 1lcZxC-0002XT-4U; Fri, 30 Apr 2021 20:41: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 1lcZxB-0004dM-Ol; Fri, 30 Apr 2021 20:41:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcZxB-0005ZY-OH; Fri, 30 Apr 2021 20:41: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=WUQDCqv/vN9R0+JMXvB4wJ1hSuAmPRzdM6lRuvM7Zjw=; b=R+0lMgDDkEuYVZgx8sy7a7yxZ5
	hWD4l7tQC4ZA6CiqpSUwiPM9s/VIKHFCpPi1zBllo+fOn4KaKSjjT4RCo9QM9gY8KGmUsUlJY2vVj
	O46lNz0rn2yrRAm377fOumWADgKwYHGRxH3G9g7jv2IPcs3DfXovzeotnz22Kw0owbFI=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161556-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 161556: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-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
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=1f8ee4cb430e5a9da37096574c41632cf69a0bc7
X-Osstest-Versions-That:
    xen=b8e53a81ba538849b98b0d417436f8be653fa1ff
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 20:41:37 +0000

flight 161556 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161556/

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-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-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

version targeted for testing:
 xen                  1f8ee4cb430e5a9da37096574c41632cf69a0bc7
baseline version:
 xen                  b8e53a81ba538849b98b0d417436f8be653fa1ff

Last test of basis   161533  2021-04-29 21:03:42 Z    0 days
Testing same since   161556  2021-04-30 17:01:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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
   b8e53a81ba..1f8ee4cb43  1f8ee4cb430e5a9da37096574c41632cf69a0bc7 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Apr 30 20:56:13 2021
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 30 Apr 2021 20:56:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.120766.228384 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcaBD-0003bI-LE; Fri, 30 Apr 2021 20:56:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 120766.228384; Fri, 30 Apr 2021 20:56:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1lcaBD-0003bB-Hz; Fri, 30 Apr 2021 20:56:07 +0000
Received: by outflank-mailman (input) for mailman id 120766;
 Fri, 30 Apr 2021 20:56: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 1lcaBC-0003b3-GH; Fri, 30 Apr 2021 20:56: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 1lcaBB-0002mE-Rm; Fri, 30 Apr 2021 20:56: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 1lcaBB-00057H-HG; Fri, 30 Apr 2021 20:56:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1lcaBB-0006Rb-Go; Fri, 30 Apr 2021 20:56: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=93Oa14HJ8KFAnHzSBJHD4bfTBm+6l1wB91jsdDkzOf4=; b=Rt/T1sHGkDAO96IaKBVxdDq2SF
	qIoxZfN3cLOLsf2TzkKoNTw/krFsf62tjB5loZmBOE2rcsEWkymiQVgvZcRVQ+ZNMypgagEpd92ak
	bQa0DDo3Eqxf41Rw3wmCoepLW3/1Aga0S9oCF0L66t5Fh/rlkDG/K33xeeeG6ko+5T6k=;
To: xen-devel@lists.xenproject.org,
    osstest-admin@xenproject.org
Message-ID: <osstest-161549-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 161549: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-i386-qemut-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-i386-examine:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-ws16-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    linux-linus:test-amd64-coresched-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-qemuu-rhel6hvm-intel:xen-install:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-i386-xl-raw:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-shadow:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-pvshim:xen-install:fail:regression
    linux-linus:test-amd64-i386-freebsd10-i386:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemuu-win7-amd64:xen-install:fail:regression
    linux-linus:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    linux-linus:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:regression
    linux-linus:test-amd64-amd64-i386-pvgrub:guest-localmigrate/x10:fail:regression
    linux-linus:test-amd64-amd64-amd64-pvgrub:guest-stop:fail:regression
    linux-linus:test-amd64-amd64-xl-qcow2:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-vhd:guest-start:fail:regression
    linux-linus:test-armhf-armhf-xl-vhd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-seattle:saverestore-support-check: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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-cubietruck: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-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=8ca5297e7e38f2dc8c753d33a5092e7be181fff0
X-Osstest-Versions-That:
    linux=deacdb3e3979979016fcd0ffd518c320a62ad166
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 30 Apr 2021 20:56:05 +0000

flight 161549 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/161549/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-qemut-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-i386-examine       6 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-ws16-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 152332
 test-amd64-coresched-i386-xl  7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl            7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-xsm   7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install  fail REGR. vs. 152332
 test-amd64-i386-qemuu-rhel6hvm-intel  7 xen-install      fail REGR. vs. 152332
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-i386-xl-raw        7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-amd64  7 xen-install           fail REGR. vs. 152332
 test-amd64-i386-xl-shadow     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-xl-pvshim     7 xen-install              fail REGR. vs. 152332
 test-amd64-i386-freebsd10-i386  7 xen-install            fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemuu-win7-amd64  7 xen-install       fail REGR. vs. 152332
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 152332
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host     fail REGR. vs. 152332
 test-amd64-amd64-i386-pvgrub 19 guest-localmigrate/x10   fail REGR. vs. 152332
 test-amd64-amd64-amd64-pvgrub 20 guest-stop              fail REGR. vs. 152332
 test-amd64-amd64-xl-qcow2    13 guest-start              fail REGR. vs. 152332
 test-amd64-amd64-libvirt-vhd 13 guest-start              fail REGR. vs. 152332
 test-armhf-armhf-xl-vhd      13 guest-start              fail REGR. vs. 152332

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 152332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 152332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 152332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 152332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 152332
 test-arm64-arm64-xl-seattle  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-seattle  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-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-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  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-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 15 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 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-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

version targeted for testing:
 linux                8ca5297e7e38f2dc8c753d33a5092e7be181fff0
baseline version:
 linux                deacdb3e3979979016fcd0ffd518c320a62ad166

Last test of basis   152332  2020-07-31 19:41:23 Z  273 days
Failing since        152366  2020-08-01 20:49:34 Z  272 days  455 attempts
Testing same since   161549  2021-04-30 09:36:21 Z    0 days    1 attempts

------------------------------------------------------------
5841 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 fail    
 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         fail    
 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                  fail    
 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                                       fail    
 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                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              fail    
 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-armhf-armhf-xl-cubietruck                               pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      fail    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         fail    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      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                                 fail    
 test-amd64-amd64-amd64-pvgrub                                fail    
 test-amd64-amd64-i386-pvgrub                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-xl-raw                                       fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-arm64-arm64-xl-seattle                                  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                                    fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 fail    
 test-armhf-armhf-xl-vhd                                      fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 1550766 lines long.)


